1. Field
The present disclosure relates to processors. More particularly, this invention is directed toward a processing of an interrupt collecting and reporting.
2. Description of Related Technology
During a processor's operation, an interrupt may be received at the processor. An interrupt is a signal originated by a hardware or a software entity, which alerts the processor to an event that needs the processor's immediate attention. In response, the processor suspends current operation, saves the state of the operation, and executes an interrupt handler program. After the interrupt handler finishes attending to the interrupt, the processor resumes execution of the interrupted operation.
The interrupt may be received as a change in a level of a signal or a change of an edge of a signal on a wire. The disadvantage of such a solution is a potentially large implementation costs, as a wire is required for each of the hardware or the software entity. Furthermore, generated plurality of interrupts may be written into a wide register with bits for all possible interrupts, or into a tree of such registers; consequently, the processor needs to spend resources and time to search through the wide register or the tree of such registers to determine hardware or a software entity that originated the interrupt.
In another method a software entity, e.g., a kernel, programs a “vector number” into each of the hardware or the software entities originating interrupt(s), and the hardware or the software entity signals via a message, e.g., a Direct Memory Access (DMA) write, when an interrupt occurs. The disadvantage of such a method is an implementation cost because each of the hardware or the software entities needs to store an interrupt number for each vector number, and the programming software entity needs to configure this information. Furthermore, level sensitive interrupts are generally not supported.
Accordingly, there is a need in the art for interrupt collecting an reporting, providing a solution to the above identified problems, as well as additional advantages.