IP Library Granted Patent US 8,688,964
Granted Patent B2
US 8,688,964 · App. 12/776,513 · Granted Apr 1, 2014

Programmable exception processing latency

View Patent ↗
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 8,688,964
App. No.
12/776,513
Granted
Apr 1, 2014
Kind
B2
Abstract

A digital processor with programmable exception processing latency, may have a central processing unit (CPU) of a digital processor, an exception controller coupled with the CPU, and a control register coupled with the CPU, wherein the control register is operable to set the operation mode of the CPU in at least one of two modes, wherein in the first mode the CPU has a fixed exception processing latency time, and in a second mode the CPU has a variable exception processing latency time.

Claims (30)

1. A digital processor having programmable exception processing latency, comprising:

a central processing unit (CPU) of a digital processor operable to execute instructions with variable execution times,

an exception controller coupled with said CPU, wherein when said CPU receives an exception signal a minimum exception latency time depends on an execution time of an instruction that needs to be executed before an exception can be served by the CPU,

a control register coupled with said CPU, wherein the control register is operable to set the operation mode of said CPU in at least one of two modes, wherein in a first mode the CPU has a fixed exception processing latency time, and in a second mode the CPU has a variable exception processing latency time depending on an execution time of a pending instruction which must be completed before serving the exception.

2. The digital processor according to claim 1 , wherein the exception controller is an interrupt controller.

3. The digital processor according to claim 1 , wherein the digital processor is a microcontroller or digital signal processor.

4. The digital processor according to claim 1 , wherein the control register comprises a latency selection bit which is programmable.

5. The digital processor according to claim 4 , wherein the latency selection bit in the control register is dynamically programmable depending upon a software application.

6. The digital processor according to claim 1 , wherein the second mode is only selected when a latency of an exception is less than or equal to a predefined threshold.

7. The digital processor according to claim 6 , wherein the predefined threshold is programmable.

8. The digital processor according to claim 6 , wherein the predefined threshold is stored in said control register.

9. The digital processor according to claim 1 , further comprising a counter operable to generate a signal for stalling an execution unit in said CPU.

10. A method for processing an exception in a processor, comprising a central processing unit (CPU) operable to execute instructions with variable execution times, wherein when said CPU receives an exception signal (Int) an minimum exception latency time depends on an execution time of an instruction that needs to be executed before an exception can be served by the CPU, the method comprising:

setting one of at least two operating modes for the processor;

receiving an exception by the CPU;

pre-processing the exception; and

executing an exception service routine;

wherein in a first mode the CPU has a fixed exception processing latency time, and in a second mode the CPU has a variable exception processing latency time which depends on an execution time of a pending instruction which must be completed before serving the exception.

11. The method according to claim 10 , wherein the step of setting one of at least two operating modes for the CPU is performed by programming a latency selection bit in a control register.

12. The method according to claim 11 , wherein the latency selection bit in the control register is dynamically programmed depending upon a software application.

13. The method according to claim 11 , wherein the second mode is only selected when a latency of an exception is less than or equal to a predefined threshold.

14. The method according to claim 13 , wherein the predefined threshold is programmable.

15. The method according to claim 14 , wherein the predefined threshold is stored in said control register.

16. The method according to claim 10 , wherein a pending instruction is executed before execution of the exception service routine, said pending instruction requires a specific number of processing cycles for execution and wherein the processor can execute a plurality of instructions which require for execution at least one of a minimum amount of processing cycles and a maximum amount of processing cycle.

17. The method according to claim 16 , wherein in the first mode a first number of processing cycles required by an instruction is extended to a maximum amount of processing cycles required by an instruction of an instruction set of the CPU which requires the most number of processing cycles.

18. The method according to claim 17 , wherein the first number of processing cycles is extended by inserting one or more no-operation instructions.

19. The method according to claim 17 , wherein the first number of processing cycles is extended by stalling said processor.

20. The method according to claim 17 , wherein the first number of processing cycles of an instruction is only extended by inserting one or more no-operation instructions up to a predefined number of cycles if the first number of processing cycles is less than the predefined number of cycles.

21. The digital processor according to claim 1 , wherein an instruction requires n cycles for execution, n being an integer greater than 0, and wherein an instruction set of the CPU includes at least two different types of instructions requiring a different number of cycles for execution.

22. The digital processor according to claim 1 , wherein the CPU is operable to execute a first set of instructions in one cycle and a second set of instructions in two cycles.

Assignments (14)
RELEASE OF SECURITY INTEREST Recorded Mar 14, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 060894/0437 →
RELEASE OF SECURITY INTEREST Recorded Mar 11, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059363/0001 →
RELEASE OF SECURITY INTEREST Recorded Mar 10, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059863/0400 →
RELEASE OF SECURITY INTEREST Recorded Mar 9, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059358/0001 →
RELEASE OF SECURITY INTEREST Recorded Feb 28, 2022
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED
Reel/Frame 059666/0545 →
RELEASE OF SECURITY INTEREST Recorded Feb 25, 2022
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059333/0222 →
SECURITY INTEREST Recorded Jun 4, 2021
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 057935/0474 →
SECURITY INTEREST Recorded Dec 24, 2020
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 055671/0612 →
SECURITY INTEREST Recorded Jun 5, 2020
From: MICROCHIP TECHNOLOGY INC.; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 053468/0705 →
RELEASE OF SECURITY INTEREST Recorded May 30, 2020
From: JPMORGAN CHASE BANK, N.A, AS ADMINISTRATIVE AGENT
To: MICROCHIP TECHNOLOGY INC.; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 053466/0011 →
SECURITY INTEREST Recorded Apr 24, 2020
From: MICROCHIP TECHNOLOGY INC.; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 053311/0305 →
SECURITY INTEREST Recorded Sep 18, 2018
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 047103/0206 →
SECURITY INTEREST Recorded Jun 25, 2018
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 046426/0001 →
SECURITY INTEREST Recorded Feb 10, 2017
From: MICROCHIP TECHNOLOGY INCORPORATED
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 041675/0617 →