IP Library Patent Application 14751934
Patent Application
App. No. 14/751,934

INSTRUCTION AND LOGIC FOR REAL-TIME BEHAVIOR OF INTERRUPTS

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
14/751,934
Abstract

A processor includes a core and an interrupt control unit. The core includes logic to handle an interrupt. The interrupt control unit includes logic to receive another interrupt. Furthermore, the interrupt control unit includes logic to conditionally dispatch the new interrupt to the core based upon priority of the interrupts and time spent by the new interrupt waiting for dispatch to the core.

Claims (96)

1 . A processor, comprising:

a core including a first logic to handle a first interrupt;

an interrupt control unit circuit (ICU), including:

a second logic to receive a second interrupt; and

a third logic to conditionally dispatch the second interrupt to the core based upon a priority of the first interrupt, a priority of the second interrupt, and a time spent by the second interrupt waiting for dispatch to the core.

2 . The processor of claim 1 , wherein:

interrupts are associated with one of a plurality of priority levels;

the processor further comprises time threshold registers specifying a threshold time for each of the priority levels; and

the ICU further includes:

a fourth logic to compare the priority of first interrupt against the priority of the second interrupt; and

a fifth logic to wait for the threshold time of the priority level of the second interrupt specified in a corresponding time threshold register before dispatching the second interrupt to the core, based on a determination that the first interrupt priority is higher than the second interrupt priority.

3 . The processor of claim 1 , wherein:

the processor further comprises time threshold registers specifying a threshold time for each interrupt; and

the ICU further includes:

a fourth logic to compare the priority of first interrupt against the priority of the second interrupt; and

a fifth logic to wait for the threshold time of the second interrupt specified in a corresponding time threshold register before dispatching the second interrupt to the core, based on a determination that the first interrupt priority is higher than the second interrupt priority.

4 . The processor of claim 1 , wherein the ICU further includes:

a fourth logic to compare the priority of first interrupt against the priority of the second interrupt; and

a fifth logic to dispatch the second interrupt to the core to preempt the first interrupt after a determination that the priority of the second interrupt is lower than the priority of the first interrupt.

5 . The processor of claim 1 , wherein:

the processor further includes core affinity registers for each interrupt to specify a destination for each interrupt; and

the ICU further includes:

a fourth logic to wait for a threshold time of the second interrupt specified in a corresponding time threshold register;

a fifth logic to dispatch the second interrupt to a destination specified in a corresponding core affinity register upon expiration of the threshold time.

6 . The processor of claim 1 , wherein:

interrupts are associated with one of a plurality of priority levels;

the processor further comprises time threshold registers specifying a threshold time for each of the priority levels; and

the ICU further includes:

a fourth logic to compare the priority of first interrupt against the priority of the second interrupt;

a fifth logic to wait for the threshold time of the priority level of the second interrupt specified in a corresponding time threshold register before dispatching the second interrupt to the core, based upon a determination that the first interrupt priority is higher than the second interrupt priority; and

a sixth logic to dispatch the second interrupt to preempt the first interrupt after the threshold time has expired.

7 . The processor of claim 1 , wherein:

the processor further comprises time threshold registers specifying a threshold time for each interrupt; and

the ICU further includes:

a fourth logic to compare the priority of first interrupt against the priority of the second interrupt;

a fifth logic to wait for the threshold time of the second interrupt specified in a corresponding time threshold register before dispatching the second interrupt to the core, based upon a determination that the first interrupt priority is higher than the second interrupt priority; and

a sixth logic to dispatch the second interrupt to preempt the first interrupt after the threshold time has expired.

8 . A method, comprising:

processing a first interrupt at a core;

receiving a second interrupt; and

conditionally dispatching the second interrupt to the core based upon a priority of the first interrupt, a priority of the second interrupt, and a time spent by the second interrupt waiting for dispatch to the core.

9 . The method of claim 8 , wherein:

interrupts are associated with one of a plurality of priority levels; and

the method further comprises:

comparing the priority of first interrupt against the priority of the second interrupt; and

waiting for a threshold time of a priority level of the second interrupt specified in a corresponding time threshold register before dispatching the second interrupt to the core, based on a determination that the first interrupt priority is higher than the second interrupt priority.

10 . The method of claim 8 , further comprising:

comparing the priority of first interrupt against the priority of the second interrupt; and

waiting for a threshold time of the second interrupt specified in a corresponding time threshold register before dispatching the second interrupt to the core, based on a determination that the first interrupt priority is higher than the second interrupt priority.

11 . The method of claim 8 , further comprising:

comparing the priority of first interrupt against the priority of the second interrupt; and

dispatching the second interrupt to the core to preempt the first interrupt after a determination that a priority of the second interrupt is lower than the priority of the first interrupt.

12 . The method of claim 8 , further comprising:

waiting for a threshold time of the second interrupt specified in a corresponding time threshold register;

dispatching the second interrupt to a destination specified in a corresponding core affinity register upon expiration of the threshold time.

13 . The method of claim 8 , further comprising:

comparing the priority of first interrupt against the priority of the second interrupt;

waiting for a threshold time specified in a corresponding time threshold register before dispatching the second interrupt to the core, based upon a determination that the first interrupt priority is higher than the second interrupt priority; and

dispatching the second interrupt to preempt the first interrupt after the threshold time has expired.

14 . A system, comprising:

a processor including a first logic to handle a first interrupt;

an interrupt control unit circuit (ICU), including:

a second logic to receive a second interrupt; and

a third logic to conditionally dispatch the second interrupt to the processor based upon a priority of the first interrupt, a priority of the second interrupt, and a time spent by the second interrupt waiting for dispatch to the processor.

15 . The system of claim 14 , wherein:

interrupts are associated with one of a plurality of priority levels;

the system further comprises time threshold registers specifying a threshold time for each of the priority levels; and

the ICU further includes:

a fourth logic to compare the priority of first interrupt against the priority of the second interrupt; and

a fifth logic to wait for the threshold time of the priority level of the second interrupt specified in a corresponding time threshold register before dispatching the second interrupt to the processor, based on a determination that the first interrupt priority is higher than the second interrupt priority.

16 . The system of claim 14 , wherein:

the system further comprises time threshold registers specifying a threshold time for each interrupt; and

the ICU further includes:

a fourth logic to compare the priority of first interrupt against the priority of the second interrupt; and

a fifth logic to wait for the threshold time of the second interrupt specified in a corresponding time threshold register before dispatching the second interrupt to the processor, based on a determination that the first interrupt priority is higher than the second interrupt priority.

17 . The system of claim 14 , wherein the ICU further includes:

a fourth logic to compare the priority of first interrupt against the priority of the second interrupt; and

a fifth logic to dispatch the second interrupt to the processor to preempt the first interrupt after a determination that the priority of the second interrupt is lower than the priority of the first interrupt.

18 . The system of claim 14 , wherein:

the system further includes core affinity registers for each interrupt to specify a destination for each interrupt; and

the ICU further includes:

a fourth logic to wait for a threshold time of the second interrupt specified in a corresponding time threshold register, based on a determination that the first interrupt priority is higher than the second interrupt priority;

a fifth logic to dispatch the second interrupt to a destination specified in a corresponding core affinity register upon expiration of the threshold time.

19 . The system of claim 14 , wherein:

interrupts are associated with one of a plurality of priority levels;

the system further comprises time threshold registers specifying a threshold time for each of the priority levels; and

the ICU further includes:

a fourth logic to compare the priority of first interrupt against the priority of the second interrupt;

a fifth logic to wait for the threshold time of the priority level of the second interrupt specified in a corresponding time threshold register before dispatching the second interrupt to the processor, based upon a determination that the first interrupt priority is higher than the second interrupt priority; and

a sixth logic to dispatch the second interrupt to preempt the first interrupt after the threshold time has expired.

20 . The system of claim 14 , wherein:

the system further comprises time threshold registers specifying a threshold time for each interrupt; and

the ICU further includes:

a fourth logic to compare the priority of first interrupt against the priority of the second interrupt;

a fifth logic to wait for the threshold time of the second interrupt specified in a corresponding time threshold register before dispatching the second interrupt to the processor, based upon a determination that the first interrupt priority is higher than the second interrupt priority; and

a sixth logic to dispatch the second interrupt to preempt the first interrupt after the threshold time has expired.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 27, 2021
From: INTEL IP CORPORATION
To: INTEL CORPORATION
Reel/Frame 057338/0266 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 26, 2015
From: MALALANGARADASS, SAMPATH
To: INTEL IP CORPORATION
Reel/Frame 035915/0738 →