IP Library Granted Patent US 9,842,014
Granted Patent B2
US 9,842,014 · App. 14/646,177 · Granted Dec 12, 2017

Data processing device, method of execution error detection and integrated circuit

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 9,842,014
App. No.
14/646,177
Granted
Dec 12, 2017
Kind
B2
Abstract

A data processing device provided with an error detection unit includes a processor arranged to support execution of an operation including a first sequence of instructions and execution of a second sequence of instructions implementing the operation, the first and second sequences of instructions generating, when in use, a first result and a second result, respectively. Configurable circuitry is also provided and arranged to support a repository to receive the first result and the second result following generation thereof. The configurable circuitry is configured as a function comparator unit arranged to compare the first and second results for consistency and to control further execution of the first implementation and the second implementation in response to a result of the comparison.

Claims (27)

1. A data processing device provided with an error detection unit, the device comprising:

a processor arranged to support execution of an operation and configured to execute a first sequence of instructions in accordance with a first implementation of the operation and a second sequence of instructions in accordance with a second implementation of the operation, the first and second sequences of instructions generating, when executed, a first result and a second result, respectively; and

configurable circuitry arranged to support a repository to receive the first result and the second result following generation thereof; wherein

the configurable circuitry is configured as a function comparator unit arranged to compare the first and second results for consistency and to control further execution of the first implementation and the second implementation in response to a result of the comparison, wherein the function comparator unit comprises a first watchdog timer unit arranged to police a first time period in response to an instruction to perform the operation, the first watchdog timer identifying an exception condition in response to elapse of the first time period without receipt by the repository of the first result, and the function comparator unit further comprising a second watchdog timer arranged to police a second time period in response to receipt by the repository of the first result, the second watchdog timer identifying an exception condition in response to elapse of the second time period without receipt by the repository of the second result.

2. A data processing device as claimed in claim 1 , wherein the function comparator unit is arranged to permit further execution of the first and second sequences of instructions in response to receipt by the repository of the first and second results before expiry of the first time period and the second time period, respectively.

3. A data processing device as claimed in claim 1 , wherein the processor comprises a core supporting sequential execution of the first sequence of instructions and the second sequence of instructions.

4. A data processing device as claimed in claim 3 , wherein the function comparator unit is arranged to set a duration of the second time period to be equal to a predetermined period of time in excess of the duration of the first time period.

5. A data processing device as claimed in claim 1 , wherein the processor comprises a first core supporting execution of the first sequence of instructions and a second core supporting execution of the second sequence of instructions.

6. A data processing device as claimed in claim 5 , wherein the first core has a first architecture associated therewith and the second core has a second architecture associated therewith, the first and second architectures being different.

7. A data processing device as claimed in claim 1 , wherein the first sequence of instructions is in accordance with a first implementation methodology and the second sequence of instructions is in accordance with a second implementation methodology.

8. A data processing device as claimed in claim 5 , wherein the processor comprises a third core supporting execution of a third sequence of instructions.

9. A data processing device as claimed in claim 5 , wherein the second core supports a third sequence of instructions.

10. A data processing device as claimed in claim 9 , wherein the third sequence of instructions is a second instantiation of the second implementation.

11. A data processing device as claimed in claim 9 , wherein the third sequence of instructions is arranged to generate a third result, the function comparator unit is arranged to compare the first, second and third results for consistency and to identify a majority of the first, second and third results that are consistent.

12. A data processing device as claimed in claim 11 , wherein the function comparator unit is arranged to identify an inconsistent result from the first, second and third results and to prevent further execution of the sequence of instructions from the first, second and third implementations of the operation associated with the inconsistent result.

13. A data processing device as claimed in claim 1 , wherein the first result and the second result are the results of a first input/output transaction request and a second input/output transaction request, respectively.

14. A data processing device as claimed in claim 13 , wherein the function comparator unit is arranged to execute the first and second input/output transaction request in response to the first and second input/output transaction requests being determined to be consistent.

15. A data processing device as claimed in claim 1 , wherein the comparison performed by the function comparator unit is relative to a predetermined threshold.

16. An integrated circuit comprising a data processing device as claimed in claim 1 .

17. A method of execution error detection comprising:

supporting execution of an operation comprising a first sequence of instructions in accordance with a first algorithmic implementation of the operation and execution of a second sequence of instructions in accordance with a second algorithmic implementation of the operation;

executing the first sequence of instructions to generate a first result;

executing the second sequence of instructions to generate a second result;

receiving the first result and the second result in a repository;

using a first watchdog timer, identifying an exception condition in response to elapse of a first time period without receipt by the repository of the first result;

using a second watchdog timer, identifying an exception condition in response to elapse of a second time period without receipt by the repository of the second result, wherein the second time period begins when the first result is received by the repository; and

comparing the first and second results for consistency and controlling further execution of the first implementation and the second implementation in response to a result of the comparison.

Assignments (24)
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 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 →
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 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 →
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 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 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 20, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037565/0510 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 20, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037565/0527 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037357/0859 →
SUPPLEMENT TO IP SECURITY AGREEMENT Recorded Aug 6, 2015
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 036284/0363 →
SUPPLEMENT TO IP SECURITY AGREEMENT Recorded Aug 6, 2015
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 036284/0339 →
SUPPLEMENT TO IP SECURITY AGREEMENT Recorded Aug 6, 2015
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 036284/0105 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 20, 2015
From: RALSTON, JOHN
To: FREESCALE SEMICONDUCTOR INC.
Reel/Frame 035680/0329 →