IP Library Granted Patent US 12,488,852
Granted Patent B2
US 12,488,852 · App. 18/273,059 · Granted Dec 2, 2025

Read-only memory diagnosis and repair

Inventors: Benoit Nadeau-Dostie (Gatineau, CA); Jongsin Yun (Portland, OR)
Assignee: Siemens Industry Software Inc.
G11C29/38G11C29/4401
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 12,488,852
App. No.
18/273,059
Granted
Dec 2, 2025
Kind
B2
Abstract

A testing circuit configured to test and diagnose a read-only memory comprises two multiple-input signature registers configured to generate two sets of signatures for multiple iterations of reading some or all of words stored in the read-only memory, control circuitry configured to control, according to a test algorithm, from which of the outputs of the read-only memory each of the two multiple-input signature registers receives test response signal bits for each of the reading operations during each of the iterations, and a faulty element location determination device configured to generate a faulty element location signal for the read-only memory based on results of comparing the two sets of signatures with reference signatures.

Claims (63)

1 . A testing circuit in a circuit configured to test a read-only memory in the circuit, the testing comprising iterations of reading some or all of words stored in the read-only memory, the testing circuit comprising:

a first multiple-input signature register configured to generate a first test response signature for each of the iterations based on test response signal bits received from outputs of the read-only memory during the each of the iterations;

a second multiple-input signature register configured to generate a second test response signature for each of the iterations based on test response signal bits received from outputs of the read-only memory during the each of the iterations;

control circuitry configured to control, according to a test algorithm, from which of the outputs of the read-only memory each of the first multiple-input signature register and the second multiple-input signature register receives the test response signal bits for each of the reading operations during each of the iterations;

a first comparator configured to generate a first pass-fail signal based on comparing the first test response signature with first reference test response signatures;

a second comparator configured to generate a second pass-fail signal based on comparing the second test response signature with second reference test response signatures; and

a faulty element location determination device configured to generate a faulty element location signal for the read-only memory based on values of the first pass-fail signal and the second pass-fail signal for each of the iterations.

2 . The testing circuit recited in claim 1 , further comprising:

a fail status device configured to generate a fail status signal indicating status of the read-only memory based on the first fail signal and the second fail signal, the status comprising fault-free, repair-needed, and non-repairable.

3 . The testing circuit recited in claim 1 , wherein the control circuitry comprises enable circuitry configured to generate an enable signal to enable either the first multiple-input signature register or the second multiple-input signature register, gating circuitry configured to allow the test response signal bits to be received by either the first multiple-input signature register or the second multiple-input signature register, or both of the enable circuitry and the gating circuitry.

4 . The testing circuit recited in claim 1 , wherein the test algorithm comprises:

performing M=log 2 N iterations of reading N elements from the read-only memory, wherein in a K th iteration of the M=log 2 N iterations (K=1 to M), the first multiple-input signature register and the second multiple-input signature register alternatively receive the test response signal bits for every 2 K-1 consecutive elements in the N elements, an element being a word, a row of words, a row block of words, a column of words, or a column block of words.

5 . The testing circuit recited in claim 1 , wherein the test algorithm comprises:

performing P=log 2 Q iterations of reading W words from the read-only memory, Q being a number of the outputs of the read-only memory, wherein in a J th iteration of the P=log 2 Q iterations (J=1 to P), the first multiple-input signature register receives the test response signal bits from every 2 J-1 other consecutive outputs while the second multiple-input signature register receives the test response signal bits from rest of the outputs of the read-only memory.

6 . The testing circuit recited in claim 5 , wherein the test algorithm further comprises:

performing U=log 2 W iterations of reading the W words, wherein in a K th iteration of the U=log 2 W iterations (K=1 to U), the first multiple-input signature register and the second multiple-input signature register alternatively receive the test response signal bits for every 2 K-1 consecutive words.

7 . The testing circuit recited in claim 6 , further comprising:

bit repair circuitry, the bit repair circuitry comprising:

XOR gates, a number of the XOR gates being equal to Q,

a decoder configured to generate Q bits representing pass or fail based on a faulty output location signal derived based on the P=log 2 Q iterations, two inputs for each of the XOR gates being coupled to one of the outputs of the read-only memory and one of outputs of the decoder, respectively, and

a comparator configured to generate an enable signal to enable or disenable the decoder based on comparing a functional address signal received by the read-only memory with a faulty word location signal derived based on the U=log 2 W iterations,

wherein the faulty element location signal comprises the faulty word location signal and the faulty output location signal.

8 . The testing circuit recited in claim 1 , further comprising:

repair circuitry configured to replace bits outputted from the read-only memory in response to a reading operation with bits stored in the circuit as output bits of the read-only memory when an address for the reading operation matches an address for an faulty element or one of addresses for faulty elements represented by the faulty element location signal, the faulty element being a faulty word, and the faulty elements being a faulty row of words or a faulty row block of words.

9 . A method for testing a read-only memory in a circuit, the circuit comprising a first multiple-input signature register and a second multiple-input signature register, the method comprising:

performing M=log 2 N iterations of reading N elements from the read-only memory, wherein in a K th iteration of the M=log 2 N iterations (K=1 to M), the first multiple-input signature register and the second multiple-input signature register alternatively receive test response signal bits from the read-only memory for every 2 K-1 consecutive elements in the N elements, an element being a word, a row of words, a row block of words, a column of words, or a column block of words;

outputting a first test response signature from the first multiple-input signature register and a second test response signature from the second multiple-input signature register for each of the M=log 2 N iterations;

generating a first pass-fail signal by comparing the first test response signature with first reference test response signatures and a second pass-fail signal by comparing the second test response signature with second reference test response signatures; and

generating a faulty element location signal for the read-only memory based on values of the first pass-fail signal and the second pass-fail signal for each of the M=log 2 N iterations.

10 . The method recited in claim 9 , further comprising:

performing P=log 2 Q iterations of reading words from the read-only memory, Q being a number of outputs of the read-only memory, wherein in a J th iteration of the P=log 2 Q iterations (J=1 to P), the first multiple-input signature register receives the test response signal bits from every 2 J-1 other consecutive outputs while the second multiple-input signature register receives the test response signal bits from rest of the outputs of the read-only memory;

outputting a third test response signature from the first multiple-input signature register and a fourth test response signature from the second multiple-input signature register for each of the P=log 2 Q iterations;

generating a third pass-fail signal by comparing the third test response signatures with third reference test response signatures and a fourth pass-fail signal by comparing the fourth test response signatures with fourth reference test response signatures; and

generating a faulty output location signal for the read-only memory based on values of the third pass-fail signal and the fourth pass-fail signal for each of the P=log 2 Q iterations.

11 . A method for testing a read-only memory in a circuit, the circuit comprising a first multiple-input signature register and a second multiple-input signature register, the method comprising:

performing P=log 2 Q iterations of reading words from the read-only memory, Q being a number of outputs of the read-only memory, wherein in a J th iteration of the P=log 2 Q iterations (J=1 to P), the first multiple-input signature register receives the test response signal bits from every 2 J-1 other consecutive outputs while the second multiple-input signature register receives the test response signal bits from rest of the outputs of the read-only memory;

outputting a first test response signature from the first multiple-input signature register and a second test response signature from the second multiple-input signature register for each of the P=log 2 Q iterations;

generating a first pass-fail signal by comparing the first test response signature with first reference test response signatures and a second pass-fail signal by comparing the second test response signature with second reference test response signatures; and

generating a faulty output location signal for the read-only memory based on values of the first pass-fail signal and the second pass-fail signal for each of the P=log 2 Q iterations.

12 . One or more computer-readable media storing computer-executable instructions for causing a computer to perform a method, the method comprising:

creating, in a circuit design, a testing circuit, the test circuit comprising:

a first multiple-input signature register configured to generate a first test response signature for each of the iterations based on test response signal bits received from outputs of the read-only memory during the each of the iterations;

a second multiple-input signature register configured to generate a second test response signature for each of the iterations based on test response signal bits received from outputs of the read-only memory during the each of the iterations;

control circuitry configured to control, according to a test algorithm, from which of the outputs of the read-only memory each of the first multiple-input signature register and the second multiple-input signature register receives the test response signal bits for each of the reading operations during each of the iterations;

a first comparator configured to generate a first pass-fail signal based on comparing the first test response signature with first reference test response signatures;

a second comparator configured to generate a second pass-fail signal based on comparing the second test response signature with second reference test response signatures; and

a faulty element location determination device configured to generate a faulty element location signal for the read-only memory based on values of the first pass-fail signal and the second pass-fail signal for each of the iterations.

13 . The one or more computer-readable media recited in claim 12 , wherein the test circuit further comprises:

a fail status device configured to generate a fail status signal indicating status of the read-only memory based on the first fail signal and the second fail signal, the status comprising fault-free, repair-needed, and non-repairable.

14 . The one or more computer-readable media recited in claim 12 , wherein the control circuitry comprises enable circuitry configured to generate an enable signal to enable either the first multiple-input signature register or the second multiple-input signature register, gating circuitry configured to allow the test response signal bits to be received by either the first multiple-input signature register or the second multiple-input signature register, or both of the enable circuitry and the gating circuitry.

15 . The one or more computer-readable media recited in claim 12 , wherein the test algorithm comprises:

performing M=log 2 N iterations of reading N elements from the read-only memory, wherein in a K th iteration of the M=log 2 N iterations (K=1 to M), the first multiple-input signature register and the second multiple-input signature register alternatively receive the test response signal bits for every 2 K-1 consecutive elements in the N elements, an element being a word, a row of words, a row block of words, a column of words, or a column block of words.

16 . The one or more computer-readable media recited in claim 12 , wherein the test algorithm comprises:

performing P=log 2 Q iterations of reading W words from the read-only memory, Q being a number of the outputs of the read-only memory, wherein in a J th iteration of the P=log 2 Q iterations (J=1 to P), the first multiple-input signature register receives the test response signal bits from every 2 J-1 other consecutive outputs while the second multiple-input signature register receives the test response signal bits from rest of the outputs of the read-only memory.

17 . The one or more computer-readable media recited in claim 16 , wherein the test algorithm further comprises:

performing U=log 2 W iterations of reading the W words, wherein in a K th iteration of the U=log 2 W iterations (K=1 to U), the first multiple-input signature register and the second multiple-input signature register alternatively receive the test response signal bits for every 2 K-1 consecutive words.

18 . The one or more computer-readable media recited in claim 17 , wherein the test circuit further comprises:

bit repair circuitry, the bit repair circuitry comprising:

XOR gates, a number of the XOR gates being equal to Q, a decoder configured to generate Q bits representing pass or fail based on a faulty output location signal derived based on the P=log 2 Q iterations, two inputs for each of the XOR gates being coupled to one of the outputs of the read-only memory and one of outputs of the decoder, respectively, and

a comparator configured to generate an enable signal to enable or disenable the decoder based on comparing a functional address signal received by the read-only memory with a faulty word location signal derived based on the U=log 2 W iterations,

wherein the faulty element location signal comprises the faulty word location signal and the faulty output location signal.

19 . The one or more computer-readable media recited in claim 12 , wherein the test circuit further comprises:

repair circuitry configured to replace bits outputted from the read-only memory in response to a reading operation with bits stored in the circuit as output bits of the read-only memory when an address for the reading operation matches an address for an faulty element or one of addresses for faulty elements represented by the faulty element location signal, the faulty element being a faulty word, and the faulty elements being a faulty row of words or a faulty row block of words.

Assignments (4)
MERGER AND CHANGE OF NAME Recorded Nov 11, 2025
From: MENTOR GRAPHICS CORPORATION; SIEMENS INDUSTRY SOFTWARE INC.
To: SIEMENS INDUSTRY SOFTWARE INC.
Reel/Frame 072858/0008 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 20, 2023
From: YUN, JONGSIN
To: SIEMENS INDUSTRY SOFTWARE INC.
Reel/Frame 064321/0239 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 20, 2023
From: MENTOR GRAPHICS (CANADA) ULC
To: SIEMENS INDUSTRY SOFTWARE INC.
Reel/Frame 064321/0498 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 19, 2023
From: NADEAU-DOSTIE, BENOIT
To: MENTOR GRAPHICS (CANADA) ULC
Reel/Frame 064313/0525 →
Continuity (1)
Related Publication 20240087665A1 · Mar 14, 2024
References Cited (15)
US 4601031A · Walker et al. · 1986 [cited by applicant]
US 5208780A · Iwase et al. · 1993 [cited by applicant]
US 6031771A · Yiu et al. · 2000 [cited by applicant]
US 6097206A · Takano · 2000 [cited by examiner]
US 6192495B1 · Totorica · 2001 [cited by examiner]
US 8612814B1 · Ang et al. · 2013 [cited by applicant]
US 8839054B2 · Braceras et al. · 2014 [cited by applicant]
US 9003251B2 · Prakash · 2015 [cited by applicant]
US 9460811B2 · Braceras et al. · 2016 [cited by applicant]
US 20070050693A1 · Kiryu · 2007 [cited by applicant]
US 20110241741A1 · Batenburg et al. · 2011 [cited by applicant]
US 20140351662A1 · Braceras et al. · 2014 [cited by applicant]
US 20190244672A1 · Okayama · 2019 [cited by examiner]
N. Muklherjee et al., “BIST-Based Fault Diagnosis for Read-Only Memories,” IEEE Transactions On Computer-Aided Design of Integrated Circuits and Systems, vol. 30, No. 7, Jul. 2011. [cited by applicant]
N. Muklherjee et al., “Fault Diagnosis for Embedded Read-Only Memories,” 2009 International Test Conference. [cited by applicant]