IP Library Granted Patent US 7,444,568
Granted Patent B2
US 7,444,568 · App. 11/355,681 · Granted Oct 28, 2008

Method and apparatus for testing a data processing system

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 7,444,568
App. No.
11/355,681
Granted
Oct 28, 2008
Kind
B2
Abstract

A method for testing at least one logic block of a processor includes, during execution of a user application by the processor, the processor generating a stop and test indicator. In response to the generation of the stop and test indicator, stopping the execution of the user application and, if necessary, saving a state of the at least one logic block of the processor. The method further includes applying a test stimulus for testing the at least one logic block of the processor. The test stimulus may be shifted into scan chains so as to perform scan testing of the processor during normal operation, such as during execution of a user application.

Claims (31)

1. A method for testing at least one logic block of a processor, comprising:

during execution of a user application by the processor, the processor generating a stop and test indicator, in response to the generation of the stop and test indicator stopping the execution of the user application and, if necessary, saving a state of the at least one logic block of the processor; and

applying a test stimulus for testing the at least one logic block of the processor.

2. The method of claim 1 further comprising decoding a stop and test instruction by the processor to generate the stop and test indicator.

3. The method of claim 2 further comprising decoding the stop and test instruction to determine a scan chain configuration prior to applying the test stimulus.

4. The method of claim 1 , wherein applying the test stimulus further comprises shifting in the test stimulus into at least one scan chain for a plurality of clock cycles.

5. The method of claim 4 wherein the at least one scan chain corresponds to the at least one logic block of the processor.

6. The method of claim 4 further comprising resetting the at least one logic block of the processor before shifting in the test stimulus.

7. The method of claim 4 further comprising shifting out a first set of test results corresponding to a first check point out of the at least one scan chain and receiving the first set of test results into a signature analyzer to generate a first signature corresponding to the first set of test results, wherein the first checkpoint corresponds to a first plurality of clock cycles, and comparing the first signature to a first expected signature.

8. The method of claim 7 further comprising shifting out a second set of test results corresponding to a second check point out of the at least one scan chain and receiving the second set of test results into the signature analyzer to generate a second signature corresponding to the second set of test results, wherein the second checkpoint corresponds to a second plurality of clock cycles, and comparing the second signature to a second expected signature.

9. The method of claim 4 , wherein the at least one scan chain comprises at least a first memory element, a chain of memory elements, and a second memory element, wherein an output of the first memory element is connected to an input of the chain of memory elements and to an input of at least one logic gate, and an output of the at least one logic gate is connected to an input of the second memory element.

10. The method of claim 9 , wherein the at least one logic gate is at least one of an exclusive-OR gate or an exclusive-NOR gate.

11. The method of claim 1 further comprising operating the at least one logic block of the processor using the test stimulus.

12. The method of claim 1 further comprising in response to a receipt of an interrupt, executing the user application on the processor.

13. The method of claim 12 , wherein executing the user application includes executing the user application beginning at a restore vector.

14. The method of claim 13 , wherein executing the user application further comprises restoring the state of the at least one logic block of the processor, if the state of the at least one logic block of the processor was saved.

15. The method of claim 1 , wherein the plurality of clock cycles has at least one of a predetermined maximum value and a predetermined minimum value.

16. The method of claim 1 further comprising shifting out test results out of the at least one scan chain and receiving the test results into a signature analyzer to generate at least one signature corresponding to the test results.

17. The method of claim 16 further comprising comparing the at least one signature to a corresponding expected signature.

18. An apparatus for testing at least one logic block of a processor, comprising:

a test controller configured to, during execution of a user application by the processor, generate a stop and test indicator, in response to the generation of the stop and test indicator stop the execution of the user application and, if necessary, save a state of the at least one logic block of the processor;

at least one scan chain, wherein the test controller is further configured to input a test stimulus for testing the at least one logic block of the processor into the at least one scan chain for a plurality of clock cycles and output test results out of the at least one scan chain;

a pattern generator configured to generate the test stimulus; and

a signature analyzer configured to generate at least one signature corresponding to the output results and comparing the at least one signature to a corresponding expected signature.

19. The apparatus of claim 18 further comprising a test results register configured to store at least one value indicating test success or failure.

20. The apparatus of claim 19 , wherein the test results register is further configured to store a value quantifying the plurality of clock cycles.

21. The apparatus of claim 19 , wherein the test results register is further configured to store a value corresponding to a number of clock cycles for a last completed checkpoint.

22. The apparatus of claim 18 further comprising a test results register configured to store a plurality of values indicating test success or failure, wherein each one of the plurality of values corresponds to a checkpoint.

23. The apparatus of claim 18 , wherein the test controller is further configured to generate a forced error signal causing the at least one signature to not match the corresponding expected signature.

24. The apparatus of claim 23 , wherein the forced error signal causes a variation in an output of the pattern generator.

25. The apparatus of claim 18 further comprising setting registers of the at least one logic block of the processor to a predetermined value prior to the generation of the stop and test indicator.

Assignments (23)
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 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 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 →
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 →
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 037354/0225 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037354/0807 →
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 037356/0553 →
RELEASE OF SECURITY INTEREST Recorded Jan 23, 2015
From: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 034799/0388 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2015
From: FREESCALE SEMICONDUCTOR, INC.
To: INTEL CORPORATION
Reel/Frame 034802/0847 →
RELEASE OF SECURITY INTEREST Recorded Jan 23, 2015
From: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 034799/0777 →
RELEASE OF SECURITY INTEREST Recorded Jan 23, 2015
From: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 034799/0664 →
RELEASE OF SECURITY INTEREST Recorded Jan 23, 2015
From: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 034799/0554 →
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 Feb 2, 2007
From: FREESCALE SEMICONDUCTOR, INC.; FREESCALE ACQUISITION CORPORATION; FREESCALE ACQUISITION HOLDINGS CORP.; FREESCALE HOLDINGS (BERMUDA) III, LTD.
To: CITIBANK, N.A. AS COLLATERAL AGENT
Reel/Frame 018855/0129 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 16, 2006
From: MORRISON, GARY R.; LYON, JOSE A.; MOYER, WILLIAM C.; REIPOLD, ANTHONY M.
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 017597/0891 →