A semiconductor device in which at least one bit of data bits configuring data read out from a memory is supplied to a pseudo error generating circuit in a test mode to generate a pseudo error bit which is supplied to an ecc (error connection code) circuit together with remainder bits of the data bits to obtain an error-corrected data which is then supplied to a BIST (Built-In-Self-test) circuit for testing the error-corrected data obtained from the ecc circuit.
|
1. A semiconductor device comprising:
a memory which stores data configured with data bits;
an ecc circuit which corrects a bit error of the data read out from the memory and generates correction data bits;
a memory test circuit which receives all data bits read out from the memory including the correction data bits and tests whether a read operation of all the data bits with respect to the memory is performed correctly;
a mode setting circuit for setting the ecc circuit and the memory test circuit to a test mode;
a pseudo error generator circuit which generates a pseudo error for at least one bit configuring the data bits read out from the memory in a test mode; and
a supplying circuit for supplying the data bits including the pseudo error bit generated in the pseudo error generator circuit to the ecc circuit for obtaining error-corrected data bits including a corrected bit corresponding to the pseudo error bit,
whereby testing whether the read operation of all the data bits with respect to the memory is performed correctly by supplying the error-corrected data bits including the corrected bit corresponding to the pseudo error bit to the memory test circuit, and testing whether data correction in the ecc circuit is performed correctly by supplying the data bits including the pseudo error bit to the ecc circuit in the test mode.
18. A test method for a semiconductor device comprising:
storing data bits and ecc code bits into a memory when an ecc circuit is set in an operative state;
writing the data bits and ecc code bits into the memory in a normal operative mode via an ecc circuit for correcting a data bit error in the data bits and a code bit error in the ecc code bits read out from the memory to generate correction data;
testing in a memory test circuit all the data bits including the correction data from the ecc circuit whether a data reading operation of all the data bits at the memory is correctly performed;
setting the ecc circuit and the memory test circuit into a test mode and setting the ecc circuit into a non-operative state in the test mode;
overwriting the data bits and ecc code bits into the memory while the ecc circuit is set in the non-operative state in the test mode; and
reading out the data bits written in the memory in the non-operative state at the test mode and the ecc code bits from the memory written in the normal operation mode and for supplying the bits to the ecc circuit; and
supplying correction data output from the ecc circuit to the memory test circuit;
wherein, in the test mode, the data bits written into the memory via the ecc circuit set in the non-operative state and the ecc code bits written at the normal operation mode are supplied to the ecc circuit set at the normal operation mode for correcting a bit error, the error-corrected data bits are supplied to the memory test circuit for testing whether the read operation of the data bits with respect to the memory is performed correctly, and the data bits written in the memory via the ecc circuit set at the non-operative state are read from the memory for supplying to the ecc circuit set at the operative state to verify whether data correction in the ecc circuit is performed correctly.
16. A semiconductor device comprising:
a memory which stores data bits and ecc code bits;
an ecc circuit which is connected to the memory for supplying the data bits and ecc code bits to write into the memory in a normal operation mode and corrects a bit error of one bit in the data and a code bit in the ecc code bits read out from the memory and generates correction data;
a memory test circuit which receives all the data bits and the ecc code bits including a correction data output of the ecc circuit for testing whether a data reading operation of all the data bits and the ecc code bits at the memory is correctly performed;
a first set circuit configured to set the ecc circuit and the memory test circuit into a test mode;
a second set circuit configured to set the ecc circuit into a non-operative state in the test mode;
a write circuit configured to write the data bits and the ecc code bits into the memory via the ecc circuit set in the non-operative state; and
a read circuit configured to read out the data bits written in the memory in the non-operative state at the test mode and the ecc code bits written at the normal operation mode for supplying to the ecc circuit;
wherein, in the test mode, the data bits written into the memory via the ecc circuit set in the non-operative state and the ecc code bits written at the normal operation mode are supplied to the ecc circuit set at the normal operation mode for correcting a bit error, all the data bits and the ecc code bits including the error-corrected data bits obtained from the ecc circuit are supplied from the memory to the memory test circuit for testing whether the read operation of the data bits with respect to the memory is performed correctly, and the data bits written in the memory via the ecc circuit set at the non-operative state are read from the memory for supplying to the ecc circuit set at the operative state to verify whether data correction in the ecc circuit is performed correctly.
2. The semiconductor device according to
3. The semiconductor device according to
4. The semiconductor device according to
5. The semiconductor device according to
6. The semiconductor device according to
8. The semiconductor device according to
9. The semiconductor device according to
10. The semiconductor device according to
11. The semiconductor device according to
12. The semiconductor device according to
13. The semiconductor device according to
14. The semiconductor device according to
15. The semiconductor device according to
17. The semiconductor device according to
|
This application is based upon and claims the benefit of priority from the prior Japanese Patent Application No. 2003-308839, filed Sep. 1, 2003, the entire contents of which are incorporated herein by reference.
1. Field of the Invention
This invention relates to a semiconductor device and more particularly to a semiconductor device having an ECC circuit which corrects an error in output data from a memory.
2. Description of the Related Art
The operation speed of semiconductor devices is enhanced more and more and the integration density of elements of the devices is also extremely enhanced with the development of the semiconductor device technology. As a result, an influence by not only the degradation-fault but also the delay-fault as the fault mode of the device increases and a serious problem occurs. Therefore, the actual speed test, that is, at-speed test in the initial stage of the device manufacturing process becomes important. Particularly, a memory in the chip acts as a critical path of the whole chip in many cases, and therefore, a self-test circuit called a BIST (Built-In-Self Test) circuit is mounted on the chip and the at-speed test for the memory is made in the wafer stage.
The capacity of storage nodes of cells configuring the memory is reduced with shrinkage of elements, and therefore, a soft error of the memory develops into a major problem. As a measure to prevent occurrence of the soft error, an ECC (Error Correcting Code) circuit is mounted on the memory in the chip in many cases. The memory having the ECC circuit mounted thereon stores code bits for testing in addition to normal data bits. The ECC circuit detects the presence or absence of an error in the data bits based on the value of the code bits, detects one of the bits in which the error occurs, corrects the error and outputs the corrected bits to the exterior. The number of error bits in the same word which can be corrected is determined according to a code used by the ECC circuit. Generally, a one-bit error correction code or a SEC-DED code which is capable of performing a single error correction and two or more error detection is often used.
The block configuration of a conventional memory device used when the memory having the ECC circuit mounted thereon is tested by use of a BIST circuit is shown in
However, since the frequency of occurrence of soft errors is extremely low, the critical path hardly appears at the time of at-speed test. Therefore, in this case, the critical path is not dealt with as an object of the at-speed test.
For example, in Jap. Pat. Appln. KOKAI Publication Disclosure No. 2003-36697, a test circuit for a semiconductor memory is disclosed. The test circuit has a pseudo error signal generating circuit between a memory circuit and a BIST circuit, converts output data from the memory circuit according to a set signal and generates a pseudo error signal necessary for checking the operation of the BIST circuit.
However, since no ECC circuit is provided in the test circuit of the semiconductor memory disclosed in this Jap. Pat. Appln. KOKAI Publication Disclosure No. 2003-36697, no measure to cope with a soft error of the memory is taken.
A semiconductor device according to an aspect of the present invention comprises a memory which stores data, an ECC circuit which corrects a bit error of data read out from the memory and generates correction data, a BIST circuit which tests the correction data output from the ECC circuit, and a pseudo error generating circuit which generates a pseudo error for at least one bit configuring the data read out from the memory and supplies the pseudo error to the ECC circuit in a test mode.
There will now be described embodiments of this invention in detail with reference to the accompanying drawings.
First, a first embodiment of this invention is explained with reference to
The data input port In1 of the memory array 11 is connected to a first output port Out2 of an ECC circuit 12 via a data path and the data output port Out1 is connected to a first input port In2 via another data path. The same clock CLK as that supplied to the memory array 11 is supplied to a clock input port C12. The ECC circuit 12 further includes a data input port In3 and data output port Out3 and is connected to a BIST circuit 13 via the above ports. The BIST circuit 13 includes a clock input port C13 and is supplied with the same clock CLK as that supplied to the memory 11 and ECC circuit 12. A test output indicating the test result of the BIST circuit 13 is output via a Pass/Fail terminal.
The BIST circuit 13 further includes an EN signal input terminal EN and is configured to be supplied with a test enable signal TESTEN and activated.
Further, a pseudo error generator circuit 14 is connected to the data path connected between the data output port Out1 of the memory array 11 and the data input port In2 of the ECC circuit 12. The pseudo error generator circuit 14 includes a pseudo random pulse generator circuit (which is hereinafter referred to as a PRPG circuit) 14A which receives a test enable signal TESTEN and clock CLK, a decoder 14B which decodes n-bit random pulse data output from the PRPG circuit 14A and generates 2n decode outputs, an AND circuit 14C to which an output of the decoder 14B and the test enable signal TESTEN are input, and an EXOR circuit 14D which is supplied with an output of the AND circuit 14C at one input terminal. The EXOR circuit 14D further receives a data bit from the output port Out1 of the memory array 11 at the other input terminal.
Next, one example of the concrete circuit of the PRPG circuit 14A is explained with reference to
In the circuit of
In this state, when the TESTEN signal is set to an “H” level, output signals are output at a given timing corresponding to the clock CLK. At this time, the output S7 of the final-stage shift register SR8 is fed back to the first-stage shift register SR1 via the feedback line FL and is also fed back to the intermediate shift registers SR2, SR6, SR7 via the three EXOR circuits EX1, EX2, EX3. Therefore, outputs S0 to S7 of eight bits from the shift registers SR1 to SR8 represent a pseudo random number data.
The outputs S6 to S0 (n=7) of seven bits except the final-stage output S7, for example, among the pseudo random pulses of eight bits are supplied to the decoder 14B and a selected one of 27 1-bit decode outputs is supplied to one input terminal of the AND circuit 14C, while the test enable signal TESTEN is supplied to the other input terminal of the AND circuit 14C.
The AND circuit 14C supplies an “H” level signal to the EXOR circuit 14D only when the test enable signal TESTEN is “H” and the 1-bit decode output from the decoder 14B is “H”. Therefore, an output from the EXOR circuit 14D is set to “H” or “L” when a data bit from the output port Out1 of the memory array 11 is “L” or “H”, respectively. Thus, an inverted data bit or code bit is supplied as a pseudo soft error to the ECC circuit 12 from the EXOR circuit 14D.
The ECC circuit 12 detects the pseudo soft error and is activated to generate and supply correction data to the BIST circuit 13. As a result, the at-speed test for the memory array 11 and ECC circuit 12 is made by the BIST circuit 13, thereby making it possible to perform the screening for the critical path of the memory array 11.
In the embodiment of
However, when it is sufficient if the test for the data bits is made, it is satisfactory to perform the error correction process for the data bits. In this case, only the data bits may be supplied to the ECC circuit 12 via the pseudo error generator circuit 14.
In the embodiment of
In the embodiment of
In the embodiment of
In the embodiment of
However, in a normal test circuit which does not use the pseudo error generator circuit 14, only the 1-bit error is supplied to an ECC circuit. Therefore, the 1-bit error can be corrected by the ECC circuit 12 and a “pass” output can be attained as the test output. In a case where the probability that a 1-bit error occurs in one word is extremely small, it is preferable to determine that the chip of a to-be-tested semiconductor device is a “pass” when taking it into consideration that the soft error test can be made.
An embodiment of
In the embodiment of
A BIST circuit 13A includes a BIST circuit section 13A-1 which receives an error correction output from the ECC circuit 12B, an OR circuit 13A-2 which receives a Pass/Fail output of “H” or “L” level of the BIST circuit section 13A-1 at one input terminal, and a latch circuit 13A-3 which latches an output of the OR circuit 13A-2. A detection signal of “H” or “L” level indicating the 2-bit error detection output from the terminal DED is supplied to the other input terminal of the OR circuit 13A-2.
In
Further, in
In the embodiment of
However, when it is sufficient if the test for the data bits is made, it is satisfactory to perform the error correction process for the data bits. In this case, only the data bits including a data bit via the pseudo error generator circuit 14 may be supplied to the ECC circuit 12B.
In the embodiment of
In the embodiment of
In the embodiment of
In the embodiments of
In
Outputs S0 to S7 from the shift registers SR1 to SR7 are respectively supplied to the next-stage circuits and are supplied to the final-stage shift register SR8 of the EXOR circuit. In this case, the output S7 of the final-stage shift register SR8 is supplied to the EXOR circuit EX18 and fed back to the input terminal of the first-stage shift register SR1. via a feedback circuit FL. Further, a test enable signal TESTEN is supplied to the reset terminals of the shift registers SR1 to SR8 and a clock CLK is supplied to the clock terminals thereof.
In the circuit of
After this, if the clock CLK is supplied while the test enable signal TESTEN is kept in the “H” state, for example, the output signal S1 of the shift register SR2 is set to the “H” level at the timing of a rise of the “H” level of the clock CLK. Then, the output signal S1 is supplied to the EXOR circuit EX12. At this time, if a data bit which is read out from the memory array 11 and supplied to the EXOR circuit EX12 is set at the “L” level, the output Out<1> of the EXOR circuit EX12 is inverted to “H” and supplied to the ECC circuit 12 as a pseudo error bit. On the contrary, if the data bit is “H”, it is inverted to “L” and also supplied to the ECC circuit 12 as a pseudo error bit.
The outputs of the shift registers SR3, SR4, . . . are sequentially set to “H” each time the clock CLK is supplied while the signal TESTEN is kept in the “H state. Then, a pseudo soft error of 1-bit/word is sequentially supplied from a corresponding one of the EXOR circuits EX12, EX13, . . . in response to the output of the memory array 11.
The ECC circuit 12 detects a pseudo soft error and is activated to generate and supply correction data to the BIST circuit. As a result, the at-speed test for the memory array 11 and ECC circuit 12 is made by the BIST circuit of the following stage, thereby making it possible to perform the screening process for the critical path of the memory array 11. In the explanation for
In each of the first to fifth embodiments described above, a pseudo soft error is generated for a given data bit. However, the same effect can be attained even if a bit which causes a pseudo error to be generated is fixed.
In the circuit of
In each of the first to sixth embodiments, a pseudo soft error is generated by use of the EXOR circuit provided on the bit path from the memory array to the ECC circuit. Thus, the EXOR circuit provided on the bit path may cause the operation speed of the test circuit to be lowered in some cases.
The ECC circuit 12C has a 2-bit error detection terminal DED and enable signal input terminal ECCEN. The ECCEN terminal receives a control output from a control circuit 13B-4 provided in a BIST circuit 13B-1. A control output of the control circuit 13B-4 is supplied to the ECCEN terminal of the ECC circuit 12C. The ECC circuit 12C is selectively set into one of two operation modes according to a level of the control output of the control circuit 13B-4 of the BIST circuit 13B-1.
First, when an ECCEN signal is at the “H” level, the ECC circuit 12C is set in the normal mode. Therefore, when data bits are written into a memory array 11A at the data write time, corresponding error correction code bits are written into a memory array 11B.
When the ECCEN signal is at the “L” level, the ECC circuit 12C is set in a non-operative mode and is thus set in a state in which it does not function as an ECC circuit. Therefore, when data bits are written into the memory array 11A at the data write time, corresponding error correction code bits are not written into the memory array 11B.
Like the embodiment of
Next, the operation of the embodiment of
After this, the ECCEN signal is set to the “L” level in the step S3. Then, data bits including one inverted bit obtained by inverting one bit of data bits written into the same address of the memory array 11A in the step S2 is written into the memory array 11A in the step S4. At this time, code bits corresponding to the data are not written into the memory array 11B. Therefore, data containing a one-bit/word error is written as combined data of the data of the memory array 11A and the code of the memory array 11B.
In this state, a signal to the terminal ECCEN is set to the “H” level again in the step S5 and the ECC circuit 12C is set into the normal operation mode. Further, if a test to read out data stored in the memory arrays 11A and 11B is made in the step S6 in this state, the ECC circuit 12C detects the error and is activated to output an error correction output to the BIST circuit section 13B. In the case of a 1-bit error, the BIST circuit 13B-1 outputs a “pass” signal of “H” level to the OR circuit 13B-2. At this time, the DED signal is set at the “L” level, but an output of the OR circuit 13B-2 is set to the “H” level. Therefore, a final “pass” output is output via the latch circuit 13B-3.
When a 2-bit error is detected by the ECC circuit 12C, the DED signal is set to the “H” level. Further, an output of the BIST circuit 13B-1 becomes a “fail” of “L” level, but like the embodiment of
According to the embodiments of this invention, the semiconductor device having the memory, ECC circuit and BIST circuit is so configured that an error correction can be made without fail by the ECC circuit at the test time in a state in which the ECC circuit and BIST circuit are activated. Thus, the semiconductor device capable of performing the satisfactory screening process for critical paths of the ECC circuit and memory, for example, can be provided.
Additional advantages and modifications will readily occur to those skilled in the art. Therefore, the invention in its broader aspects is not limited to the specific details and representative embodiments shown and described herein. Accordingly, various modifications may be made without departing from the spirit or scope of the general inventive concept as defined by the appended claims and their equivalents.
Patent | Priority | Assignee | Title |
10389379, | May 12 2017 | Qualcomm Incorporated | Error correcting code testing |
10453549, | Dec 08 2016 | Samsung Electronics Co., Ltd. | Memory device including virtual fail generator and memory cell repair method thereof |
10706951, | Mar 23 2018 | Kabushiki Kaisha Toshiba; Toshiba Electronic Devices & Storage Corporation | Semiconductor integrated circuit including a memory macro |
11804276, | Mar 11 2021 | Samsung Electronics Co., Ltd. | Built-in-self-test logic, memory device with same, and memory module testing method |
7564770, | Jan 19 2005 | VIA Technologies, Inc. | Test optical disk and manufacturing method thereof |
7681107, | Oct 28 2004 | SOCIONEXT INC | Semiconductor device |
7917828, | Dec 28 2006 | Intel Corporation | Providing error correction coding for probed data |
8176372, | Mar 31 2008 | Kabushiki Kaisha Toshiba | Semiconductor integrated circuit |
8918707, | Jun 26 2012 | SHENZHEN XINGUODU TECHNOLOGY CO , LTD | Codeword error injection via checkbit modification |
Patent | Priority | Assignee | Title |
4891809, | Feb 16 1987 | NEC Corporation | Cache memory having self-error checking and sequential verification circuits |
6070255, | May 28 1998 | International Business Machines Corporation | Error protection power-on-self-test for memory cards having ECC on board |
20020162069, | |||
20030065996, | |||
20030204795, | |||
JP1256100, | |||
JP200336697, | |||
JP4101253, | |||
JP62226353, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Dec 19 2003 | Kabushiki Kaisha Toshiba | (assignment on the face of the patent) | / | |||
Jan 23 2004 | HIRABAYASHI, OSAMU | Kabushiki Kaisha Toshiba | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 015374 | /0513 |
Date | Maintenance Fee Events |
Feb 10 2011 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Apr 17 2015 | REM: Maintenance Fee Reminder Mailed. |
Sep 04 2015 | EXP: Patent Expired for Failure to Pay Maintenance Fees. |
Date | Maintenance Schedule |
Sep 04 2010 | 4 years fee payment window open |
Mar 04 2011 | 6 months grace period start (w surcharge) |
Sep 04 2011 | patent expiry (for year 4) |
Sep 04 2013 | 2 years to revive unintentionally abandoned end. (for year 4) |
Sep 04 2014 | 8 years fee payment window open |
Mar 04 2015 | 6 months grace period start (w surcharge) |
Sep 04 2015 | patent expiry (for year 8) |
Sep 04 2017 | 2 years to revive unintentionally abandoned end. (for year 8) |
Sep 04 2018 | 12 years fee payment window open |
Mar 04 2019 | 6 months grace period start (w surcharge) |
Sep 04 2019 | patent expiry (for year 12) |
Sep 04 2021 | 2 years to revive unintentionally abandoned end. (for year 12) |