Error detection/correction and fault detection/recovery – Pulse or data error handling – Digital data error correction
Reexamination Certificate
1999-03-18
2002-04-16
Ton, David (Department: 2133)
Error detection/correction and fault detection/recovery
Pulse or data error handling
Digital data error correction
C714S763000, C714S764000
Reexamination Certificate
active
06374381
ABSTRACT:
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to a semiconductor memory device, and a method of checking the semiconductor device and a method of using the same, and more specifically to a semiconductor memory device having an error detection/ correction function, and a method of checking the semiconductor memory device and a method of using the same.
2. Description of the Related Art
Conventionally, a semiconductor device often includes an error checking and correcting circuit (hereinafter referred to ECC.) other than a semiconductor memory for storing data. Japanese Patent Laid-Open Publication No. Hei01-209552 discloses such a semiconductor memory device. In accordance with the semiconductor device, even if any error happens in data upon write and read operation of the data, the semiconductor memory device checks the data and corrects the error in itself to improve reliability thereof.
FIG. 10
 illustrates an example of such a semiconductor device as the type described above. The semiconductor memory device includes an address register 
101
, a write data register 
102
, an error correction code generation circuit 
103
, a memory circuit 
104
, a changeover circuit 
105
, an error detection circuit 
106
, an error detection flag register 
107
, an error correction circuit 
108
, a read data register 
109
, and a test mode register 
110
.
The semiconductor memory device includes an external device (not shown) connected thereto through a bus (not shown) connected with the address register 
101
, the write data register 
102
, the error detection flag register 
107
, the read data register 
109
, and the test mode register 
110
.
When the external device connected with the semiconductor memory device writes data in the memory circuit 
104
, a signal indicative of an ordinary mode is applied to a test mode register 
110
. The test mode register 
110
 after receiving the signal applies it to the switching circuit 
105
 as a control signal. The switching circuit 
105
 after receiving the control signal h
2
 indicative of the foregoing signal, it connects the memory circuit 
104
 to the error detection circuit 
106
 and the error correction circuit 
108
.
Thereafter, the external device applies the data to be written in the memory circuit 
4
 to the write data register 
102
. The write data register 
102
 after receiving the data applies the data to the error correction code generating circuit 
103
. The error correction code generation circuit 
103
 generates an error correction code for the foregoing data. Thereafter, the error correction code generation circuit 
103
 applies the generated error correction code to the foregoing data, and sends it to the memory circuit 
104
 as write data h
3
.
Upon writing data the external device applies a signal indicative of an instruction of read operation and of address. The address register 
101
 after receiving the foregoing signal applies it to the memory circuit 
104
 as an address signal h
1
. The memory circuit 
104
 after receiving the address signal hi stores write data h
3
 in an memory area corresponding to an address indicated by the address signal h
1
. Upon reading the data the external device applies the signal indicative of an instruction of read operation and of an address to the address register 
101
. The address register 
101
 after receiving the foregoing signal applies it to the memory circuit 
104
 as the address signal h
1
. The memory circuit 
104
 after receiving the address signal h
1
 reads the data from a memory area corresponding to the address indicated by the address signal h
1
, and sends the data to the switching circuit 
105
 as read data h
4
. The switching circuit 
105
 sends the read data h
4
 received from the memory circuit 
104
 to the error detection circuit 
106
 and the error correction circuit 
108
.
The error detection circuit 
106
 judges based upon an error correction code added to the read data h
4
 whether or not any error is existent in the red data h
4
. If the read data h
4
 has any error, then the error detection circuit 
106
 sends a flag indicative of error detection to the error detection flag resistor 
107
. The error detection flag register 
107
 holds the foregoing flag and informs the outside of happening of any error.
Simultaneously, the error detection circuit 
106
 sends a detection result indicative of the detection of any error to the error correction circuit 
108
. The error correction circuit 
108
 corrects the error in the read data h
4
 based upon the detection result. Thereafter, the error correction circuit 
108
 sends the read data h
4
 subject to the error correction to the read data register 
109
.
FIG. 11
 illustrates such an error detection circuit 
106
 and an error correction circuit 
108
. The illustrated error detection circuit 
106
 and error correction circuit 
108
 checks presence of any error, the number of error bits, position of any error bit based upon a parity check matrix H represented by a formula 1. The error detection circuit 
106
 includes a syndrome generation circuit 
106
-
1
 and a syndrome decode circuit 
106
-
2
 as illustrated in FIG. 
11
. 
H
=
❘
 
⁢
0
1
1
1
1
0
0
1
0
1
1
0
1
0
1
1
0
1
0
0
1
⁢
 
❘
(
1
)
The syndrome generation circuit 
106
-
1
 is to generate a syndrome value using the read data h
4
, an example of which is illustrated in FIG. 
12
. The syndrome generation circuit 
106
-
1
 includes EXOR (exclusive or) 
106
A to 
106
J. When the read data h
4
 comprises bits x
0
 to x
6
, the syndrome generation circuit 
106
-
1
 calculates syndrome values s
0
, s
1
 and s
2
 using the following formula. In the read data h
4
, x
0
 to x
3
 are information bits corresponding to the data, and x
4
 to x
6
 inspection bits corresponding to the error correction code.
s
0
=x
1
*x
2
*x
3
*x
4
s
1
=x
0
*x
2
*x
3
*x
5
s
2
=x
0
*x
1
*x
3
*x
6
Herein, a code “*” in the foregoing formulae represents logical sum. Thereafter, the syndrome generation circuit 
106
-
1
 outputs the calculated syndrome values s
0
, s
1
 and s
2
 from EXOR gates 
106
C, 
106
F and 
106
J to the syndrome decode circuit 
106
-
2
.
The syndrome decode circuit 
106
-
2
 decodes the syndrome values s
0
, s
1
 and s
2
 and calculates the presence of any error, the number of error bits and the position of the error bit, and so on. The syndrome decode circuit 
106
-
2
 includes inverters 
106
K to 
106
M, a NOR gate 
106
N, an inverter 
106
P and NAND gates 
106
Q to 
106
T.
The syndrome decode circuit 
106
-
2
 after receiving the syndrome values s
0
, s
1
 and s
2
 outputs an error detection signal EF as the foregoing flag from the inverter 
106
P using the following formulae and simultaneously generates bits y
0
 to y
6
 using the following formula together with the error correction circuit 
108
 including the EXOR gates 
108
A to 
108
D.
y
0
=x
0
*((−s
0
)·s
1
·s
2
)
y
1
=x
1
*(s)·(−s
1
)·s
2
)
y
2
=x
2
*(s
0
·s
1
·(−s
2
)
y
3
=x
3
*(s
0
·s
1
·s
2
)
y
4
=x
4
*(s
0
·(−s
1
)·(−s
2
))
y
5
=x
5
*((−s
0
)·s
1
·(−s
2
))
y
6
=x
5
*((−s
0
)·(−s
1
)·(−s
2
))
EF=s
0
+s
1
+s
2
In the foregoing eight formulae, a code “−” represents logical inversion and a code “+” represents logical sum. In 
FIG. 12
 an error correction circuit for bits y
4
 to y
6
 corresponding to check bits x
4
 to x
6
 is omitted.
The error detection circuit 
106
 sends the foregoing flag generated as such to the error detection flag register 
107
. If there is no error, then the foregoing flag indicates “0” while if there is any error, then the foregoing flag indicates “1”. The error correction circuit 
108
 sends the generated bits y
0
 to y
3
 to the read data register 
109
 as the read data h
4
. Such an error correction code generation circuit 
103
, error detection circuit 
106
 and error correction circuit 
108
 constitute the ECC circuit.
For checking whether or not the 
Foley & Lardner
Ton David
LandOfFree
Semiconductor memory device, and method of checking the... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Semiconductor memory device, and method of checking the..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Semiconductor memory device, and method of checking the... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2869544