IP Library Granted Patent US 7,409,654
Granted Patent B2
US 7,409,654 · App. 11/252,064 · Granted Aug 5, 2008

Method and apparatus for performing test pattern autograding

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,409,654
App. No.
11/252,064
Granted
Aug 5, 2008
Kind
B2
Abstract

A method, computer program product, and data processing system for minimizing the number of test sequences needed to achieve a desired level of coverage of events in testing a semiconductor design is disclosed. Test patterns are randomly generated by one or more “frontend” computers. Results from applying these patterns to the design under test are transmitted to a “backend” computer for processing. A determination is made as to which test sequences trigger events not already triggered by previously-considered test sequences. An autograde data structure is generated which further reduces the number of test sequences. A preferred embodiment of the present invention may be used to reduce the number of test sequences required, but may also be used to provide test engineers a basis for devising manually-created test sequences to test related events.

Claims (51)

1. A method comprising:

obtaining a set of results corresponding to a plurality of test patterns and a plurality of events, wherein the set of results reflects a relationship in which at least one of the plurality of test patterns triggers at least one of the plurality of events;

organizing the set of results to form ordered results based upon an ordering of corresponding test patterns; and

creating a subset of the plurality of test patterns based upon the ordered set of results, wherein each test pattern in the subset triggers at least one event not triggered by any previous test pattern in the ordering.

2. The method of claim 1 , further comprising:

defining a relation wherein events from the plurality of events are associated with corresponding designated triggering test patterns from the plurality of test patterns.

3. The method of claim 2 , further comprising:

in response to identifying a test pattern triggering at least one event not triggered by test patterns occurring prior to the identified test pattern according to the ordering, designating the identified test pattern as a corresponding designated triggering test pattern for each event triggered by the identified test pattern.

4. The method of claim 3 , further comprising:

identifying a second subset of the plurality of test patterns, wherein the second subset contains only those test patterns occurring in the relation, as defined after considering all test patterns.

5. The method of claim 4 , further comprising:

applying the second subset to a design under test, whereby all events triggered by the plurality of test patterns are triggered by applying only the second subset.

6. The method of claim 2 , wherein the relation is defined as an array of test pattern labels indexed by event.

7. The method of claim 1 , further comprising:

renaming each of the test patterns in the subset of test patterns so as to obtain a continuous sequence of named test patterns in the subset.

8. The method of claim 7 , further comprising:

identifying a non-covered event, wherein the non-covered event is not triggered by any of the subset of test patterns; and

identifying a relationship between the non-covered event and a related covered event, wherein the related covered event is triggered by a triggering test pattern from subset of test patterns.

9. The method of claim 8 , further comprising:

generating a new test pattern based on the triggering test pattern.

10. The method of claim 9 , wherein the new test pattern is generated so as to trigger the non-covered event.

11. The method of claim 1 , wherein the set of results is obtained by applying the plurality of test patterns to a design under test.

12. The method of claim 11 , wherein the design under test is an electronic circuit.

13. The method of claim 11 , wherein the ordering is determined according to an order in which the set of results is acquired from applying the plurality of test patterns to the design under test.

14. The method of claim 1 , further comprising:

saving for subsequent use only those test patterns from the plurality of test patterns that are contained in the subset; and

discarding all test patterns in the plurality of test patterns that are not contained in the subset.

15. A computer program product in a computer-readable storage medium, comprising functional descriptive material that, when executed by a computer, causes the computer to perform actions that include:

obtaining a set of results corresponding to a plurality of test patterns and a plurality of events, wherein the set of results reflects a relationship in which at least one of the plurality of test patterns triggers at least one of the plurality of events;

organizing the set of results to form ordered results based upon an ordering of corresponding test patterns; and

creating a subset of the plurality of test patterns based upon the ordered results, wherein each test pattern in the subset triggers at least one event not triggered by test patterns occurring previous to that test pattern according to the sequential ordering.

16. The computer program product of claim 15 , comprising additional functional descriptive material that, when executed by the computer, directs the computer to perform actions of:

defining a relation wherein events from the plurality of events are associated with corresponding designated triggering test patterns from the plurality of test patterns.

17. The computer program product of claim 15 , comprising additional functional descriptive material that, when executed by the computer, directs the computer to perform actions of:

in response to identifying a test pattern triggering at least one event not triggered by test patterns occurring prior to the identified test pattern according to the ordering, designating the identified test pattern as a corresponding designated triggering test pattern for each event triggered by the identified test pattern.

18. The computer program product of claim 17 , comprising additional functional descriptive material that, when executed by the computer, directs the computer to perform actions of:

identifying a second subset of the plurality of test patterns, wherein the second subset contains only those test patterns occurring in the relation, as defined after considering all test patterns.

19. The computer program product of claim 15 , wherein the relation is defined as an array of test pattern labels indexed by event.

20. The computer program product of claim 15 , comprising additional functional descriptive material that, when executed by the computer, directs the computer to perform actions of:

renaming each of the test patterns in the subset of test patterns so as to obtain a continuous sequence of named test patterns in the subset.

21. A data processing system comprising:

at least one processor;

at least one data store accessible to the at least one processor; and

a set of instructions in the at least one data store, wherein the at least one processor executes the set of instructions to perform actions of:

obtaining a set of results corresponding to a plurality of test patterns and a plurality of events, wherein the set of results reflects a relationship in which at least one of the plurality of test patterns triggers at least one of the events;

organizing the set of results to form ordered results based upon an ordering of corresponding test patterns; and

creating a subset of the plurality of test patterns based upon the ordered results, wherein each test pattern in the subset triggers at least one event not triggered by test patterns occurring prior to that test pattern according to the ordering.

22. The data processing system of claim 21 , wherein the at least one processor executes the set of instructions to perform an additional action of:

defining a relation wherein events from the plurality of events are associated with corresponding designated triggering test patterns from the plurality of test patterns.

23. The data processing system of claim 22 , wherein the at least one processor executes the set of instructions to perform an additional action of:

in response to identifying a test pattern triggering at least one event not triggered by test patterns occurring previous to the identified test pattern according to the sequential ordering, designating the identified test pattern as a corresponding designated triggering test pattern for each event triggered by the identified test pattern.

Assignments (20)
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 OF ASSIGNOR'S INTEREST Recorded Feb 4, 2016
From: FREESCALE SEMICONDUCTOR, INC.
To: NORTH STAR INNOVATIONS INC.
Reel/Frame 037694/0264 →
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/0757 →
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 →
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 Dec 9, 2008
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A.
Reel/Frame 021936/0772 →
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 Oct 17, 2005
From: WOOD, GEORGE W.; BHINGE, AMOL V.
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 017102/0866 →