Built-in self-test circuit and method for validating an associative data array
First Claim
1. A built-in self-test (BIST) circuit for testing the validity of storage locations in an N-way set associative data array of any processing device, comprising:
- a memory capable of storing a test program executable by said processing device, wherein said test program and is capable of testing the validity of said storage locations in said data array; and
a controller capable of copying said test program from said memory into first selected storage locations in a first way in said data array, wherein said controller retrieves at least a portion of said copied test program from said first selected storage locations and compares said retrieved portion to a corresponding portion of said test program in said memory to determine if said retrieved portion and said corresponding portion are identical.
2 Assignments
0 Petitions
Accused Products
Abstract
There is disclosed, for use in a processing device having an N-way set associative data array (such as an L1 cache), a built-in self-test (BIST) circuit for testing the validity of storage locations in the data array. The BIST circuit comprises 1) a memory capable of storing a test program executable by the processing device, wherein the test program is capable of testing the validity of the storage locations in the data array; and 2) a controller capable of copying the test program from the memory into first selected storage locations in a first way in the data array, wherein the processing device executes the copied test program stored in the first selected storage locations subsequent to the copying to thereby test the validity of second selected storage locations in at least one of the N ways.
113 Citations
22 Claims
-
1. A built-in self-test (BIST) circuit for testing the validity of storage locations in an N-way set associative data array of any processing device, comprising:
-
a memory capable of storing a test program executable by said processing device, wherein said test program and is capable of testing the validity of said storage locations in said data array; and
a controller capable of copying said test program from said memory into first selected storage locations in a first way in said data array, wherein said controller retrieves at least a portion of said copied test program from said first selected storage locations and compares said retrieved portion to a corresponding portion of said test program in said memory to determine if said retrieved portion and said corresponding portion are identical. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer system having any processing device for executing instructions and processing data stored in a system memory, said processing device comprising:
-
an N-way set associative cache for storing portions of said data or ones of said instructions; and
a built-in self-test (BIST) circuit for testing the validity of storage locations in said cache, said BIST circuit comprising;
a memory capable of storing a test program executable by said processing device wherein said test program is capable of testing the validity of said storage locations in said cache; and
a controller capable of copying said test program from said memory into first selected storage locations in a first way in said cache, wherein said controller retrieves at least a portion of said copied test program from said first selected storage locations and compares said retrieved portion to a corresponding portion of said test program in said memory to determine if said retrieved portion and said corresponding portion are identical. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method for testing the validity of storage locations in an N-way set associative data array of a processing device, comprising the steps of:
-
storing in a memory in the processing device a test program executable by the processing device, wherein the test program is capable of testing the validity of the storage locations in the data array;
copying the test program from the memory into first selected storage locations in a first way in the data array;
retrieving at least a portion of said copied test program from said first selected storage locations; and
comparing said retrieved portion to a corresponding portion of said test program in the memory to determine if said retrieved portion and said corresponding portion are identical. - View Dependent Claims (20, 21, 22)
-
Specification