Notes for next year (Digital Systems)

From Spivey's Corner
Jump to: navigation, search
  • Delete calls to set_priority, and allow all interrupts to have the priority 0 (the highest configurable priority) that is established on reset.
  • Notwithstanding that, change priorities so that they are in the portable range 0..255 instead of the implemented range 0..3. [Done]
  • Rename one of set_prio (sets priority of Phōs process) and set_priority (sets interrupt priority). [Done: it's irq_priority and priority]
  • Invent new names for the 4+ instruction fields that can name registers – avoiding confusion with the names used in ARM documentation.
  • Delegate all management of the NVIC to Phōs by folding interrupt configuration into connect, and providing a function reactivate (or rearm or reset or reconnect) to clear and reenable the interrupt from the server process. [Done: it's reconnect]
  • Express all times in millisec: the timer process now expects some arguments in microsec. [Done]

(Nested Vector Interrupt Controller). An ARM processor component that is able to assign priorities to external interrupts (as opposed to those generated by internally by the processor) and control the servicing of interrupts. As the name indicates, it is able to cope with nested interrupts, where servicing of one interrupt is itself interrupted by another with higher priority. Note that, according to ARM conventions, higher priorities are indicated by lower numbers.