Mon May 21 08:32:40 EDT 2018

General "task" structure

PRU runs at 200MHz.  Main loop is at 10MHz.  There are 20 instructions
per loop.  Two are reserved for the general skeleton.  This leaves 18
instructions per tick.

Should scheduling be static or dynamic?

Conceptually, there are only two tasks:

- general sampling skeleton
- interleaved code to run at each tick

The sampling skeleton could provide the timing based on the cycle