Interrupt controller and a method of controlling processing of interrupt requests by a plurality of processing units

US9575911B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9575911-B2
Application numberUS-201414246832-A
CountryUS
Kind codeB2
Filing dateApr 7, 2014
Priority dateApr 7, 2014
Publication dateFeb 21, 2017
Grant dateFeb 21, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

An interrupt controller for controlling processing of interrupt requests by a plurality of processing units. The processing units have at least two modes: an active mode and an inactive mode. The interrupt controller comprises a controller input, an interrupt router coupled to the controller input and a monitoring unit. The monitoring unit outputs a routing change signal to the interrupt router if it determines that a selected processing unit, to which, in response to a received interrupt request, an execution of an interrupt service routine was initially routed, is in inactive mode while a preselected one is in the active mode. The interrupt router reroutes the execution of the interrupt service routine to the preselected processing unit.

First claim

Opening claim text (preview).

The invention claimed is: 1. An interrupt controller for controlling processing of interrupt requests by a plurality of processing units, the processing units having at least two modes, said mode comprising an active mode and an inactive mode, the interrupt controller comprising: a controller input for receiving an interrupt request; an interrupt router coupled to the controller input arranged to route a received interrupt request, to a selected processing unit out of the plurality of processing units, in response to which the selected processing unit initiates execution of an interrupt service routine, comprising a sequence of operations, the interrupt router comprising a router input for receiving a routing change signal, the interrupt router arranged to route the execution of the interrupt service routine from the selected processing unit to another preselected processing unit of the plurality of processing units in response to receiving the routing change signal; a monitoring unit comprising a monitoring input coupled to the plurality of the processing units to monitor the mode of the processing units, and a monitoring output coupled to the router input arranged to provide the routing change signal when the monitoring unit determines that the selected processing unit has changed to said inactive mode subsequent to initiation of execution of the interrupt service routine while the preselected one of the plurality of the processing units is in said active mode, and the interrupt request associated with the interrupt service routine has a priority level above a predetermined priority threshold. 2. An interrupt controller as claimed in claim 1 comprising a priority controller arranged to assign the priority level to the received interrupt request. 3. An interrupt controller as claimed in claim 1 , wherein the interrupt router is further arranged to suspend the execution of the interrupt service routine if the associated interrupt request has a priority level lower than a predetermined priority threshold when the selected processing unit goes into inactive mode. 4. An interrupt controller as claimed in claim 1 , wherein the interrupt router is further arranged to route all the interrupt requests from the selected one of the processing units to the preselected one. 5. An interrupt controller as claimed in claim 1 , wherein the interrupt router is further arranged to preselect a specific processing unit of the plurality when the selected processing unit is in the active mode or upon one or more of the group comprising: start-up, interrupt controller reset, and processing unit reset, and to reroute to the preselected processing unit in response to receiving the routing change signal. 6. An interrupt controller as claimed in claim 1 , wherein the monitoring unit outputs the routing change signal in response to a software failure or to a hardware failure in the selected processing unit, or when the selected processing unit out of the plurality of processing units has changed of state. 7. An interrupt controller according to claim 1 , wherein each one of plurality of the processing units is further arranged, when operating in lockstep, to simultaneously execute a same sequence of operations in parallel with a second corresponding partner processing unit, wherein the monitoring unit is a lockstep monitoring unit for monitoring a difference in the executing of the same sequence of operations between each processing unit and the respective partner processing unit to detect a processing error, and wherein the monitoring output is arranged to provide the routing change signal if the lockstep monitoring unit detects the processing error. 8. An interrupt controller according to claim 1 , wherein the interrupt request is a non-maskable interrupt request. 9. An interrupt controller according to claim 1 , wherein the monitoring unit is further arranged to monitor one or more of a hardware failure, a software failure, or change of mode of the plurality of processing units in response to which the monitoring unit is arranged to output the routing change signal via the monitoring output. 10. An interrupt controller as claimed in claim 9 wherein the monitoring unit is a watchdog timer. 11. An interrupt controller as claimed in claim 1 wherein the monitoring unit further comprises a fault collection unit arranged to store the routing change signal. 12. A microprocessor comprising the interrupt controller according to claim 1 , and the plurality processing units. 13. A microprocessor comprising the interrupt controller according to claim 1 , and further comprising the plurality of processing units and the corresponding partner processing unit, arranged to operate in lockstep with the plurality of processing units. 14. An automotive vehicle comprising the interrupt controller as claimed in claim 1 . 15. A method of controlling processing of interrupt requests by a plurality of processing units, the processing units having at least two modes, said modes comprising an active and an inactive mode, the method comprising: receiving an interrupt request, routing the received interrupt request to a selected processing unit of the plurality, initiating execution of an interrupt service routine comprising a sequence of operations at the selected processor in response to routing the received interrupt request, monitoring the mode of the processing units to obtain a routing change signal from the selected processor when the selected processing unit has changed to said inactive mode subsequent to initiating execution of the interrupt service routing, routing the executing of the interrupt service routine from the selected processing unit to another processing unit that is in said active mode in response to the obtained routing change state when the executing interrupt service routing has a priority level above a predetermined priority threshold. 16. The method of claim 15 further comprising before routing: assigning the priority level to the received interrupt request. 17. The method of claim 16 further comprising after assigning: suspending the execution of the interrupt service routine if the associated interrupt request has a priority level below a predetermined priority threshold. 18. A device comprising: a plurality of processing units including a first processing unit and a second processing unit, each of the plurality of processors having a plurality of modes including a first mode, and an inactive mode; a monitoring unit coupled to the plurality or processors to provide a change indicator that indicates the first processing unit has changed state from the first mode to the inactive mode; an interrupt router coupled to the output of the monitoring unit and to the plurality of processors, the interrupt router to initiate execution of an interrupt service routing by the first processor in response to receiving an interrupt request and in response to the first processor being in the first mode, and, when the interrupt request has a priority level above a predetermined priority level, the interrupt router further arranged to route the execution of the interrupt service routine from the first processing unit to the second processing unit in response to receiving the change indicator after execution of the interrupt service routine has been initiated at the first processing unit.

Assignees

Inventors

Classifications

  • Techniques of failing over between control units · CPC title

  • Management of state, configuration or failover · CPC title

  • Real-time · CPC title

  • Redundant storage or storage space (G06F11/2056 takes precedence) · CPC title

  • G06F13/26Primary

    with priority control · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9575911B2 cover?
An interrupt controller for controlling processing of interrupt requests by a plurality of processing units. The processing units have at least two modes: an active mode and an inactive mode. The interrupt controller comprises a controller input, an interrupt router coupled to the controller input and a monitoring unit. The monitoring unit outputs a routing change signal to the interrupt router…
Who is the assignee on this patent?
Mcmenamin David, Scobie James Andrew Collier, Nxp Usa Inc
What technology area does this patent fall under?
Primary CPC classification G06F13/26. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 21 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).