IP Library Granted Patent US 10,073,797
Granted Patent B2
US 10,073,797 · App. 12/035,967 · Granted Sep 11, 2018

Data processor device supporting selectable exceptions and method thereof

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 10,073,797
App. No.
12/035,967
Granted
Sep 11, 2018
Kind
B2
Abstract

A processor begins exception processing in response to an exception event. Exception processing by the processor is halted during exception processing to facilitate debugging. The exception event can be a reset exception event or an interrupt exception event. Normal exception processing by the data processor can be resumed after debugging, or exception processing by the data processor can be aborted to allow the normal execution of instructions by the data processor to resume. An exception event can be selectively treated as an interrupt or a reset.

Claims (40)

1. A method of an integrated data processor processing exception events comprising:

storing a logic value at a bit of a programmable storage location prior to receipt of a selectable exception, the logic value indicative as to whether selectable exceptions are to be processed as interrupt exceptions or as reset exceptions;

receiving via a first node the selectable exception indicative of an occurrence of a specific selectable exception event;

in response to receiving the selectable exception, invalidating a program counter of the data processor, determining if the selectable exception is to be processed as a reset exception or as an interrupt exception based upon the logic value of the bit stored at the programmable storage location, wherein in response to the logic value being a first value processing the selectable exception as a reset exception, otherwise, in response to the logic value stored at the programmable storage location being a second value processing the selectable exception as an interrupt exception;

receiving via a second node a fixed reset exception indicative of an occurrence of a specific reset exception event; and

processing the fixed reset exception without regards as to the logic value of the bit stored at the programmable storage location.

2. The method of claim 1 wherein processing the selectable exception as the reset exception and processing the selectable exception as the interrupt exception both include invalidating a first set of state information associated with a pipeline of the data processor.

3. The method of claim 2 wherein processing the selectable exception as the reset exception and processing the selectable exception as the interrupt exception both include determining a destination value to be stored at the program counter based upon an interrupt vector associated with the selectable exception.

4. The method of claim 3 wherein processing the selectable exception as the reset exception includes saving at least one of the vector of the selectable exception event or the destination value.

5. The method of claim 2 , wherein processing the selectable exception as the reset exception includes saving a second set of state information associated with the pipeline that is not saved when processing the selectable exception as the interrupt exception.

6. The method of claim 1 wherein upon completion of processing the selectable exception as the reset exception, a portion of the data processor is set at a non-programmable defined state, wherein the data processor is not set at the non-programmable defined state upon completion of processing the selectable exception event as the interrupt exception.

7. The method of claim 6 , further comprising:

in response to completing processing of the selectable exception as the reset exception, beginning processing of application instructions at an address based upon the non-programmable defined state.

8. The method of claim 1 further comprising:

changing the logic value at the bit stored at the programmable storage location subsequent to processing the selectable exception as the reset exception or the interrupt exception, and

repeating receiving via the first node the selectable exception and the said events in response to receiving the selectable exception.

9. A method comprising:

storing a logic value at a bit of a programmable storage location of a data processor;

receiving, via a first node of the data processor, a selectable exception indicative of occurrence of a specific selectable exception event;

determining a first destination address based on the selectable exception;

storing the first destination address at a program counter of the data processor; and

after storing the destination address, processing the selectable exception as a reset exception if the logic value of the bit stored at the programmable storage location has a first value, otherwise, processing the selectable exception as an interrupt exception if the logic value of the bit stored at the programmable storage location has a second value.

10. The method of claim 9 further comprising:

receiving a fixed interrupt exception indicative of an occurrence of a specific fixed interrupt event;

processing the fixed interrupt exception as an interrupt exception without regards as to the logic value of the bit stored at the programmable storage location by executing an interrupt processing routine.

11. The method of claim 9 wherein processing the selectable exception further includes: determining the first destination address based upon an interrupt vector associated with the exception.

12. The method of claim 9 wherein processing the selectable exception further includes: determining the destination address based upon an interrupt vector associated with the selectable exception.

13. The method of claim 9 further comprising:

receiving, via a second node of the data processor, a fixed reset exception indicative of an occurrence of a fixed reset exception; and

processing the fixed event as a reset exception without regards as to the bit value stored at the bit storage location by executing a reset processing routine.

14. The method of claim 9 further comprising:

invalidating the program counter after storing the first destination address if the bit value stored at the bit indicator storage location has a first logic value.

15. The method of claim 9 , wherein of the processing selective exception as a reset exception occurs without regards to the destination address, and processing of the selective exception as an interrupt exception returns control to the pipeline at the destination address.

16. A data processing device comprising:

a bit storage location to store a logic value;

a program counter to store a location of a next address to be executed by a pipeline of a data processor; and

an exception processing module coupled to the storage location, the exception processing module comprising:

a reset exception processing module configured to receive a fixed reset exception at a first node to cause the reset exception processing module to process the reset exception as a fixed reset exception, including setting the program counter to a reset address;

an interrupt exception processing module to set the program counter to an interrupt return address; and

a selectable exception processing module configured to receive a selectable exception at a second node, and to cause the reset exception processing module to process the selectable exception as the reset exception in response to the logic value stored at the bit storage location having a first value, otherwise the selectable exception processing module is to cause the interrupt exception possessing module to process the selectable exception as an interrupt exception in response to the logic value having a second logic value.

Assignments (31)
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040925 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Feb 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP, B.V. F/K/A FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 052917/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040928 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Jan 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 052915/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 037486 FRAME 0517. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS. Recorded Dec 10, 2019
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 053547/0421 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 042762 FRAME 0145. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051145/0184 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051030/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 042985 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051029/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 039361 FRAME 0212. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051029/0387 →
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 050745/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 050744/0097 →
CORRECTIVE ASSIGNMENT TO CORRECT THE TO CORRECT THE APPLICATION NO. FROM 13,883,290 TO 13,833,290 PREVIOUSLY RECORDED ON REEL 041703 FRAME 0536. ASSIGNOR(S) HEREBY CONFIRMS THE THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS.. Recorded Feb 20, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: SHENZHEN XINGUODU TECHNOLOGY CO., LTD.
Reel/Frame 048734/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12681366 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded May 9, 2017
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 042985/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12681366 PREVIOUSLY RECORDED ON REEL 039361 FRAME 0212. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded May 9, 2017
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 042762/0145 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENTS 8108266 AND 8062324 AND REPLACE THEM WITH 6108266 AND 8060324 PREVIOUSLY RECORDED ON REEL 037518 FRAME 0292. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS. Recorded Feb 1, 2017
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 041703/0536 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NATURE OF CONVEYANCE PREVIOUSLY RECORDED AT REEL: 040626 FRAME: 0683. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER AND CHANGE OF NAME EFFECTIVE NOVEMBER 7, 2016. Recorded Jan 12, 2017
From: NXP SEMICONDUCTORS USA, INC. (MERGED INTO); FREESCALE SEMICONDUCTOR, INC. (UNDER)
To: NXP USA, INC.
Reel/Frame 041414/0883 →
CHANGE OF NAME Recorded Nov 16, 2016
From: FREESCALE SEMICONDUCTOR INC.
To: NXP USA, INC.
Reel/Frame 040626/0683 →
RELEASE OF SECURITY INTEREST Recorded Nov 7, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 040928/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 21, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP, B.V., F/K/A FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 040925/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12092129 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Jul 14, 2016
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 039361/0212 →
SUPPLEMENT TO THE SECURITY AGREEMENT Recorded Jun 16, 2016
From: FREESCALE SEMICONDUCTOR, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 039138/0001 →
SECURITY AGREEMENT SUPPLEMENT Recorded Mar 7, 2016
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 038017/0058 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 13, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037518/0292 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 12, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037486/0517 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037356/0143 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037354/0688 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037356/0553 →
SECURITY AGREEMENT Recorded Nov 6, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 031591/0266 →
SECURITY AGREEMENT Recorded Jun 18, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 030633/0424 →
SECURITY AGREEMENT Recorded May 13, 2010
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 024397/0001 →
SECURITY AGREEMENT Recorded Mar 15, 2010
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A.
Reel/Frame 024085/0001 →
SECURITY AGREEMENT Recorded Jul 7, 2008
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A.
Reel/Frame 021194/0593 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 1, 2008
From: CIRCELLO, JOSEPH C.; MALWADE, UJWALA R.; MCCARTHY, DANIEL M.
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 020731/0758 →