Task distribution is performed in hardware without the use of "division"
logic component to divide executions between task execution registers,
which advantageously require less silicon when implemented in hardware.
Instead, a remainder register is used as a temporary store for the number
of task executions yet to distributed to task execution registers. Task
execution registers are incremented with a value represented by the data
pattern of n MSBs of the number of executions required. Corresponding
increment and decrement operations occur until task executions,
represented by the data value stored in the remainder register, are
effectively distributed to task execution registers.