US20070226600A1 - Semiconductor integrated circuit with flip-flops having increased reliability - Google Patents
Semiconductor integrated circuit with flip-flops having increased reliability Download PDFInfo
- Publication number
- US20070226600A1 US20070226600A1 US11/505,447 US50544706A US2007226600A1 US 20070226600 A1 US20070226600 A1 US 20070226600A1 US 50544706 A US50544706 A US 50544706A US 2007226600 A1 US2007226600 A1 US 2007226600A1
- Authority
- US
- United States
- Prior art keywords
- flip
- error
- flops
- flop
- semiconductor integrated
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0411—Online error correction
Definitions
- the present invention generally relates to semiconductor integrated circuits, and particularly relates to a semiconductor integrated circuit having an error correction function.
- bits stored in memory cells are changed by electric charge resulting from ions that are generated by the collisions between high-energy neutrons resulting from cosmic rays and silicon atomic nucleus because the DRAM memory cells consist of minute capacitance.
- the HIGH/LOW logic state of nodes of a cross-coupling circuit stores data. Unlike the DRAM, thus, data is never inverted by such energy as small as that of neutrons resulting from cosmic rays.
- Patent Document 1 Japanese Patent Application Publication No. 2002-251898
- the invention provides a semiconductor integrated circuit which includes a plurality of flip-flop sets, and a logic circuit configured to consolidate error-detection signals output from the flip-flop sets into one output signal, wherein each of the flip-flop sets includes one or more flip-flops configured to latch input data in synchronization with a common clock signal, and an error detection-&-correction circuit configured to detect and correct an error in data stored in the flip-flops, and to produce one of the error-detection signals indicative of the detection of the error upon the detection of the error.
- an error detection-&-correction circuit is provided in each flip-flop set of the semiconductor integrated circuit to detect and correct an error occurring in the stored data, thereby improving the reliability of flip-flop data. Further, error-detection signals output from the flip-flop sets are consolidated into one signal, so that a controller internally provided or an apparatus separate from the semiconductor integrated circuit may be used to check the consolidated error-detection signal so as to detect the occurrence of error.
- FIG. 1 is a drawing showing an example of the configuration of a semiconductor integrated circuit according to the present invention
- FIG. 2 is a drawing showing an example of the configuration of a flip-flop set according to a first embodiment of the present invention
- FIG. 3 is a drawing showing an example of the configuration of a data-purpose flip-flop according to a second embodiment of the present invention
- FIG. 4 is a drawing showing an example of the configuration of a majority-voting-logic circuit
- FIG. 5 is a drawing showing a variation of the data-purpose flip-flop shown in FIG. 3 ;
- FIG. 6 is a drawing showing an example of the configuration of a flip-flop set according to a third embodiment of the present invention.
- FIG. 1 is a drawing showing an example of the configuration of a semiconductor integrated circuit according to the present invention.
- a semiconductor integrated circuit 10 shown in FIG. 1 includes flip-flop sets 11 - 1 through 11 - 3 and a plurality of OR gates 13 .
- the flip-flops of the flip-flop sets 11 - 1 through 11 - 3 are all the flip-flops that receive, latch, and output various signals such as data signals, control signals, clock signals, etc., for use in the operations of the semiconductor integrated circuit 10 .
- the semiconductor integrated circuit 10 includes various circuits that are connected to these flip-flop sets 11 - 1 through 11 - 3 . Namely, all the flip-flops provided in the semiconductor integrated circuit 10 are shown as the flip-flop sets 11 - 1 through 11 - 3 . Among these flip-flops, the flip-flops that are adjacently arranged to store data at the same timing in response to the same clock signal are grouped together to form one flip-flop set.
- the number of flip-flops included in one flip-flop set may be one or more. For the sake of convenience of illustration, only three flip-flop sets are shown here. In reality, however, tens of thousands or hundreds of thousands of such flip-flop sets may be in existence in a semiconductor integrated circuit, depending on the circuit scale.
- Each of the flip-flop sets 11 - 1 through 11 - 3 includes one or more data-purpose flip-flops F, an error-detection-purpose flip-flop E, and an error-detection-and-correction circuit 12 .
- the data-purpose flip-flops F latch input data, and output the latched data.
- the error-detection-and-correction circuit 12 detects and corrects an error included in the data stored in the flip-flops F by using ECC (error correcting codes), parity check, majority-voting logic, etc., as will later be described.
- ECC error correcting codes
- the error-detection-and-correction circuit 12 asserts its output that is an error detection signal (which is set to the HIGH-level output state for assertion in this example).
- the error detection signals output from the error-detection-and-correction circuits 12 of the flip-flop sets 11 - 1 through 11 - 3 are subjected to logical sum performed by the OR gates 13 so as to be consolidated into an error detection signal Eall, which is provided to the exterior of the semiconductor integrated circuit 10 .
- the consolidated error detection signal Eall may as well be supplied to a controller such as a CPU provided inside the semiconductor integrated circuit 10 .
- the error detection signal Eall may include two bits, one being a first error detection signal indicative of the presence of a correctable error and the other being a second error detection signal indicative of the presence of an uncorrectable error. The provision may be made such that the logical sum described above is performed separately for each of these two bits. Further, the error detection signal Eall does not have to be made by consolidating all the error detection signals from all the flip-flop sets 11 - 1 through 11 - 3 . For example, all the flip-flop sets may be divided into a first group and a second group, and a consolidated error detection signal may be output separately for each of these groups.
- the assertion of the consolidated error detection signal Eall indicates the occurrence of error in any one or more of the flip-flops provided in the semiconductor integrated circuit 10 .
- the error-detection-purpose flip-flop E is used.
- the error-detection-purpose flip-flop E has “1” stored therein by the error-detection-and-correction circuit 12 upon the detection of error by the error-detection-and-correction circuit 12 .
- the error-detection-purpose flip-flops E of the flip-flop sets 11 - 1 through 11 - 3 are connected in series such that the output of a given flip-flop is input into the flip-flop at the next stage, thereby forming a flip-flop chain 15 .
- the data of the flip-flops of the chain 15 are successively shifted to the next following stages, so that the contents of the error-detection-purpose flip-flops E are supplied to the exterior of the semiconductor integrated circuit 10 as an error scan signal Escan. From outside the semiconductor integrated circuit 10 , the position of the error can be located based on the contents of the error scan signal Escan that is read out from the semiconductor integrated circuit 10 .
- the data-purpose flip-flops F of the flip-flop sets 11 - 1 through 11 - 3 may be configured to form a chain.
- the data-purpose flip-flops F may be connected in series such that the output of a given flip-flop is input into the flip-flop at the next stage, thereby forming a flip-flop chain 16 .
- the data of the flip-flops of the chain 16 are successively shifted to the next following stages, so that the contents of the data-purpose flip-flops F are supplied to the exterior of the semiconductor integrated circuit 10 as a data scan signal Dscan. From outside the semiconductor integrated circuit 10 , detailed analysis such as the locating of an error bit position can be performed based on the contents of the data scan signal Dscan that is read out from the semiconductor integrated circuit 10 .
- the data-purpose flip-flops F have data-input/output paths used for the purpose of providing their intended functions as part of the operation of the semiconductor integrated circuit 10 , so that the chain 16 needs to be provided as a path separate from those paths.
- a selector may be provided in front of the input of each flip-flop so as to select one of the intended input of the flip-flop and the output of the preceding flip-flop in the chain. Provision may be made such that the intended input of the flip-flop is selected during the routine operation, and such that the output of the preceding flip-flop in the chain is selected during the scan operation.
- a flip-flop that has two input nodes, one for receiving routine data and the other for receiving scan input may be used.
- flip-flops separate from the original flip-flops may be provided as shadow registers in a duplicate manner, such that the original flip-flops are used to serve the intended purpose of the semiconductor integrated circuit, and such that the duplicated flip-flops are used for the scan operation.
- a scan operation can be performed while performing the routine operation of the semiconductor integrated circuit 10 .
- FIG. 2 is a drawing showing an example of the configuration of a flip-flop set according to a first embodiment of the present invention.
- the flip-flop set shown in FIG. 2 is one of the flip-flop sets 11 - 1 through 11 - 3 , and corresponds to an example in which the ECC is used for error correction and detection.
- the flip-flop set shown in FIG. 2 includes a plurality of data-purpose flip-flops 21 , a plurality of error-correction-code-purpose flip-flops 22 , an ECC generating circuit 23 , an ECC check-&-correction circuit 24 , and an error memory circuit 25 .
- the data-purpose flip-flops 21 correspond to the data-purpose flip-flops F shown in FIG. 1
- the error memory circuit 25 corresponds to the error-detection-purpose flip-flop E shown in FIG. 1 .
- error-correction-code-purpose flip-flops 22 the ECC generating circuit 23 , and the ECC check-&-correction circuit 24 together correspond to the error-detection-and-correction circuit 12 shown in FIG. 1 .
- a chain corresponding to the chain 16 shown in FIG. 1 is not illustrated.
- the data-purpose flip-flops 21 receive input data D 0 through D 3 , and load (latch) the input data D 0 through D 3 in synchronization with a clock signal CLK.
- the stored data (latched data) of the data-purpose flip-flops 21 are supplied to the ECC check-&-correction circuit 24 . If there is no error, the stored data of the data-purpose flip-flops 21 are transmitted as output data Q 0 through Q 3 without any data change.
- the ECC generating circuit 23 performs a predetermined computation on the input data D 0 through D 3 to derive an error correcting code.
- the derived error correcting code is stored in the error-correction-code-purpose flip-flops 22 in synchronization with the clock signal CLK.
- the ECC check-&-correction circuit 24 determines whether there is an error based on the data supplied from the data-purpose flip-flops 21 and the error correcting code supplied from the error-correction-code-purpose flip-flops 22 , and performs an error correction if error is present.
- the error-corrected data is then transmitted as the output data Q 0 through Q 3 . If the Hamming code is used for error correction, for example, error correction is possible if one-bit error occurs, while only error detection is possible if two-bit error occurs.
- an error correcting code is generated such that a total of 7 bits comprised of 4 bits of the data-purpose flip-flops 21 and 3 bits of the error-correction-code-purpose flip-flops 22 constitutes a Hamming code for which inter-code distance is three bits or more, for example.
- the presence/absence of error can be determined by checking whether the 7-bit output of the flip-flops has a bit pattern that is proper as a Hamming code. If error occurs in 1 bit, a difference between the 7-bit data and the Hamming code having the shortest Hamming distance from this 7-bit data is calculated, so that the 1 erroneous bit can be identified and corrected.
- the syndrome information of the Hamming code may be calculated.
- the syndrome information uniquely indicates the presence/absence of error and the position of the error.
- the ECC check-&-correction circuit 24 supplies to an exterior an error-detection signal indicative of the presence/absence of error upon the determination regarding the presence/absence of error as described above.
- This error-detection signal corresponds to the error-detection signal shown in FIG. 1 , and may include a correctable-error-detection signal indicating the presence of a correctable error and an uncorrectable-error-detection signal indicating the presence of an uncorrectable error.
- the ECC check-&-correction circuit 24 stores “1” in the error memory circuit 25 upon the detection of error.
- the ECC is applied to the flip-flop sets provided in the semiconductor integrated circuit 10 , so that error detection and error correction are possible upon the occurrence of a bit error. If the extended Hamming code is used, the correction of multiple failed bits becomes also possible. In this manner, the reliability of flip-flop data in the semiconductor integrated circuit 10 can be improved.
- FIG. 3 is a drawing showing an example of the configuration of a data-purpose flip-flop F according to a second embodiment of the present invention.
- an error correcting code is generated from the data input into the data-purpose flip-flops F so as to improve the reliability of flip-flop data.
- a majority voting rule is applied to each data-purpose flip-flop F to improve the reliability of data of each flip-flop.
- a data-purpose flip-flop 30 shown in FIG. 3 includes a plurality of latches 31 and a majority-voting-logic circuit 32 . Although three latches 31 are illustrated in FIG. 3 , the number of latches is not limited to three, and may be any number that is two or more (an odd number is preferable since the majority voting rule is used to determine the logic value).
- the input data D is supplied to the data-purpose flip-flop 30 , the input data D is supplied to all the latches 31 . All the latches 31 load (latch) the same input data in synchronization with the clock signal CLK.
- the majority-voting-logic circuit 32 receives outputs A, B, and C from the latches 31 , and computes a majority-voting-logic value. Namely, one of the logic value “0” and the logic value “1” that is found in larger number in the outputs A, B, and C is identified, and the majority-voting-logic circuit 32 produces this identified logic value as an output Q.
- the input data D may be “1”, for example. However, due to the effect of secondary cosmic-ray neutrons, data is inverted in one of the three latches 31 , so that the output B becomes “0”. Even in this case, the number of the logic value “1” accounts for a majority among the outputs A, B, and C, so that the majority-voting-logic circuit 32 can produces the correct data value “1”.
- the data-purpose flip-flop 30 may be prepared as a library cell for use in the circuit design. Provision of such a library cell makes it possible to place the cell in the same manner as placing a flip-flop, thereby eliminating unnecessary labor during the design process.
- FIG. 4 is a drawing showing an example of the configuration of the majority-voting-logic circuit 32 .
- the majority-voting-logic circuit 32 shown in FIG. 4 includes AND gates 41 through 43 and an OR gate 44 .
- all of the latch outputs A, B, and C are “1”, all the outputs of the AND gates 41 through 43 are “1”, so that the output Q of the OR gate 44 is “1”.
- all of the latch outputs A, B, and C are “0”, all the outputs of the AND gates 41 through 43 are “0”, so that the output Q of the OR gate 44 is “0”.
- two of the latch outputs A, B, and C are “1”, one of the outputs of the AND gates 41 through 43 is “1”, so that the output Q of the OR gate 44 is “1”.
- two of the latch outputs A, B, and C are “0”, all the outputs of the AND gates 41 through 43 are “0”, so that the output Q of the OR gate 44 is “0”.
- a majority-voting logic is implemented
- the error-detection-and-correction circuit 12 may be configured such that the error-detection signal output is asserted when all the outputs of the latches 31 are not the same with respect to any given data-purpose flip-flop 30 shown in FIG. 3 , for example.
- Such logic circuit can easily be implemented by combining XOR (exclusive-OR) gates and an OR gate, for example.
- the error detection signal is comprised of one type of an error-detection signal.
- a majority-voting rule is applied to each flip-flop provided in the semiconductor integrated circuit 10 , so that error detection and error correction are possible upon the occurrence of error.
- the reliability of flip-flop data in the semiconductor integrated circuit 10 can be improved. Since a simple majority voting rule is used, error correction can be performed at faster speed than when the ECC is used. Further, since bit-by-bit error correction is performed, reliability is high.
- FIG. 5 is a drawing showing a variation of the data-purpose flip-flop 30 shown in FIG. 3 .
- the same elements as those of FIG. 3 are referred to by the same numerals, and a description thereof will be omitted.
- a data-purpose flip-flop 30 A shown in FIG. 5 includes the plurality of latches 31 , a plurality of delay elements 33 , and the majority-voting-logic circuit 32 .
- the delay elements 33 serve to delay the clock signal CLK.
- the clock signals CLK supplied to the individual latches 31 have respective, different timings due to the delays incurred by the delay elements 33 .
- the input data D is supplied to the data-purpose flip-flop 30 A, the input data D is supplied to all the latches 31 .
- All the latches 31 load (latch) the input data in synchronization with the clock signals having respective, different timings.
- the load timing (latch timing) varies, so that even if there is a glitch such as a distortion of signal waveform at a rising edge of the input data D, all the data are not affected and incorrectly latched due to the glitch.
- the use of the majority-voting-logic circuit 32 serves not only to provide a reliable circuit capable of coping with soft errors, but also to provide a circuit capable of coping with errors resulting from a glitch.
- FIG. 6 is a drawing showing an example of the configuration of a flip-flop set according to a third embodiment of the present invention.
- the flip-flop set shown in FIG. 6 is one of the flip-flop sets 11 - 1 through 11 - 3 , and corresponds to an example in which a parity check is used for error correction and detection.
- the flip-flop set shown in FIG. 6 includes a parity generating circuit 50 , a plurality of data-purpose flip-flops 51 , a parity-bit-purpose flip-flop 52 , a parity-check circuit 53 , a plurality of data-purpose flip-flops 61 , a parity-bit-purpose flip-flop 62 , a parity-check circuit 63 , a plurality of selectors 71 , an AND circuit 72 , an error memory circuit 73 , and an error memory circuit 74 .
- the data-purpose flip-flops 51 and 61 correspond to the data-purpose flip-flops F shown in FIG.
- the error memory circuits 73 and 74 correspond to the error-detection-purpose flip-flop E shown in FIG. 1 .
- the parity generating circuit 50 , the parity-bit-purpose flip-flop 52 , the parity-check circuit 53 , the parity-bit-purpose flip-flop 62 , the parity-check circuit 63 , the selectors 71 , and the AND circuit 72 together correspond to the error-detection-and-correction circuit 12 shown in FIG. 1 .
- a chain corresponding to the chain 16 shown in. FIG. 1 is not illustrated.
- the data-purpose flip-flops 51 and 61 receive input data D 0 through D 3 , and load (latch) the input data D 0 through D 3 in synchronization with a clock signal CLK.
- the stored data (latched data) of the data-purpose flip-flops 51 are supplied to the selectors 71 , and are also supplied to the parity-check circuit 53 .
- the stored data (latched data) of the data-purpose flip-flops 61 are supplied to the selectors 71 , and are also supplied to the parity-check circuit 63 .
- the parity generating circuit 50 performs a predetermined computation on the input data D 0 through D 3 to derive a parity bit.
- the derived parity bit is stored in the parity-bit-purpose flip-flops 52 and 62 in synchronization with the clock signal CLK.
- the parity-check circuit 53 determines whether there is an error by performing a parity check based on the data supplied from the data-purpose flip-flops 51 and the parity bit supplied from the parity-bit-purpose flip-flop 52 . If there is an error, a parity-check signal P 1 is asserted (i.e., asserted to “1” in this example). The parity-check signal P 1 is sent out as a correctable error detection signal, and is also supplied to the selectors 71 , the AND circuit 72 , and the error memory circuit 73 .
- the parity-check circuit 63 determines whether there is an error by performing a parity check based on the data supplied from the data-purpose flip-flops 61 and the parity bit supplied from the parity-bit-purpose flip-flop 62 . If there is an error, a parity-check signal P 2 is asserted (i.e., asserted to “1” in this example). The parity-check signal P 2 is supplied to the AND circuit 72 and the error memory circuit 74 .
- the parity-check signal P 1 output from the parity-check circuit 53 is “0”.
- the selectors 71 select the data of the data-purpose flip-flops 51 for provision as output data Q 0 through Q 3 .
- the parity-check circuit 53 detects a parity error, and changes the parity-check signal P 1 to “1”.
- the selectors 71 select the data of the data-purpose flip-flops 61 for provision as output data Q 0 through Q 3 . Assuming that there is no error in the data-purpose flip-flops 61 , the selecting operation of the selectors 71 as described above can correct the error. Further, the parity-check signal P 1 being “1” is sent out as a correctable error detection signal, so that the correctable error detection signal is asserted.
- the parity-check signal P 2 output from the parity-check circuit 63 is “0”. In this case, the output of the AND circuit 72 is “0” regardless of the value of the parity-check signal P 1 .
- the parity-check signal P 1 output from the parity-check circuit 53 is “0”. In this case, the output of the AND circuit 72 is “0” regardless of the value of the parity-check signal P 2 .
- the parity-check signals P 1 and P 2 are both “1”.
- the output of the AND circuit 72 is “1”, asserting an uncorrectable error detection signal.
- the flip-flop set shown in FIG. 6 supplies to an exterior an error-detection signal indicative of the presence/absence of parity error upon the determination regarding the presence/absence of parity error as described above.
- This error-detection signal corresponds to the error-detection signal shown in FIG. 1 , and includes the correctable-error-detection signal indicating the presence of a correctable error and the uncorrectable-error-detection signal indicating the presence of an uncorrectable error.
- two bits are provided as the error-detection-purpose flip-flops E.
- the error memory circuit 73 corresponds to an error in the data-purpose flip-flops 51
- the error memory circuit 74 corresponds to an error in the data-purpose flip-flops 61 .
- a flip-flop set in the semiconductor integrated circuit 10 is comprised of a first flip-flop set and a second flip-flop set provided in a duplicate fashion, each of which is provided with a parity-check function.
- a parity error is detected, data of the flip-flop set that is not the flip-flop set suffering the parity error are output, thereby correcting an error upon the occurrence of parity error. In this manner, the reliability of flip-flop data in the semiconductor integrated circuit 10 can be improved.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
Description
- The present application is based upon and claims the benefit of priority from the prior Japanese Patent Application No. 2006-075003 filed on Mar. 17, 2006, with the Japanese Patent Office, the entire contents of which are incorporated herein by reference.
- 1. Field of the Invention
- The present invention generally relates to semiconductor integrated circuits, and particularly relates to a semiconductor integrated circuit having an error correction function.
- 2. Description of the Related Art
- During the days in which semiconductor technologies were not yet matured, the reliability of flip-flops inside semiconductor circuits were low, resulting in the destruction of data stored in the flip-flops in some cases. The reason why such data destruction occurred may be attributable to the low reliability of circuit operations, or may be attributable to radiation emitted from a metal contained in semiconductor packages. Since the possibility of data destruction in flip-flops was small, a countermeasure was taken by performing a parity check on the data of flip-flops so as to suspend the system upon error detection, for example.
- At the present day, the problem of having the data stored in flip-flops being destroyed is no longer in existence due to the development of semiconductor technology. Even with the semiconductor integrated circuits manufactured by use of the state-of-the-art semiconductor technology, however, the existence of the phenomenon called “soft error” is known in the case of DRAM, for example. This phenomenon is attributable to high-energy neutrons resulting from cosmic rays (i.e., neutrons as secondary particles generated upon reaction between positrons included in the cosmic rays and atomic nucleus contained in the atmosphere). In this phenomenon, bits stored in memory cells are changed by electric charge resulting from ions that are generated by the collisions between high-energy neutrons resulting from cosmic rays and silicon atomic nucleus because the DRAM memory cells consist of minute capacitance. In the case of flip-flops, however, the HIGH/LOW logic state of nodes of a cross-coupling circuit stores data. Unlike the DRAM, thus, data is never inverted by such energy as small as that of neutrons resulting from cosmic rays.
- In the future, the size of circuit elements and the width of cross-connects will be further reduced due to the development of semiconductor technology. As such progress is made, it is expected that flip-flops used in semiconductor integrated circuits may suffer data destruction due to high-energy neutrons resulting from cosmic rays. In this case, the frequency of such data destruction is expected to be relatively high, so that a countermeasure that suspends a system upon error detection will not be suitable.
- [Patent Document 1] Japanese Patent Application Publication No. 2002-251898
- Accordingly, there is a need for a semiconductor integrated circuit with flip-flops providing an increased data reliability.
- It is a general object of the present invention to provide a semiconductor integrated circuit that substantially obviates one or more problems caused by the limitations and disadvantages of the related art.
- Features and advantages of the present invention will be presented in the description which follows, and in part will become apparent from the description and the accompanying drawings, or may be learned by practice of the invention according to the teachings provided in the description. Objects as well as other features and advantages of the present invention will be realized and attained by a semiconductor integrated circuit particularly pointed out in the specification in such full, clear, concise, and exact terms as to enable a person having ordinary skill in the art to practice the invention.
- To achieve these and other advantages in accordance with the purpose of the invention, the invention provides a semiconductor integrated circuit which includes a plurality of flip-flop sets, and a logic circuit configured to consolidate error-detection signals output from the flip-flop sets into one output signal, wherein each of the flip-flop sets includes one or more flip-flops configured to latch input data in synchronization with a common clock signal, and an error detection-&-correction circuit configured to detect and correct an error in data stored in the flip-flops, and to produce one of the error-detection signals indicative of the detection of the error upon the detection of the error.
- According to at least one embodiment of the present invention, an error detection-&-correction circuit is provided in each flip-flop set of the semiconductor integrated circuit to detect and correct an error occurring in the stored data, thereby improving the reliability of flip-flop data. Further, error-detection signals output from the flip-flop sets are consolidated into one signal, so that a controller internally provided or an apparatus separate from the semiconductor integrated circuit may be used to check the consolidated error-detection signal so as to detect the occurrence of error.
- Other objects and further features of the present invention will be apparent from the following detailed description when read in conjunction with the accompanying drawings, in which:
-
FIG. 1 is a drawing showing an example of the configuration of a semiconductor integrated circuit according to the present invention; -
FIG. 2 is a drawing showing an example of the configuration of a flip-flop set according to a first embodiment of the present invention; -
FIG. 3 is a drawing showing an example of the configuration of a data-purpose flip-flop according to a second embodiment of the present invention; -
FIG. 4 is a drawing showing an example of the configuration of a majority-voting-logic circuit; -
FIG. 5 is a drawing showing a variation of the data-purpose flip-flop shown inFIG. 3 ; and -
FIG. 6 is a drawing showing an example of the configuration of a flip-flop set according to a third embodiment of the present invention. - In the following, embodiments of the present invention will be described with reference to the accompanying drawings.
-
FIG. 1 is a drawing showing an example of the configuration of a semiconductor integrated circuit according to the present invention. A semiconductor integratedcircuit 10 shown inFIG. 1 includes flip-flop sets 11-1 through 11-3 and a plurality ofOR gates 13. - The flip-flops of the flip-flop sets 11-1 through 11-3 are all the flip-flops that receive, latch, and output various signals such as data signals, control signals, clock signals, etc., for use in the operations of the semiconductor integrated
circuit 10. Although not illustrated, the semiconductor integratedcircuit 10 includes various circuits that are connected to these flip-flop sets 11-1 through 11-3. Namely, all the flip-flops provided in the semiconductor integratedcircuit 10 are shown as the flip-flop sets 11-1 through 11-3. Among these flip-flops, the flip-flops that are adjacently arranged to store data at the same timing in response to the same clock signal are grouped together to form one flip-flop set. The number of flip-flops included in one flip-flop set may be one or more. For the sake of convenience of illustration, only three flip-flop sets are shown here. In reality, however, tens of thousands or hundreds of thousands of such flip-flop sets may be in existence in a semiconductor integrated circuit, depending on the circuit scale. - Each of the flip-flop sets 11-1 through 11-3 includes one or more data-purpose flip-flops F, an error-detection-purpose flip-flop E, and an error-detection-and-
correction circuit 12. The data-purpose flip-flops F latch input data, and output the latched data. The error-detection-and-correction circuit 12 detects and corrects an error included in the data stored in the flip-flops F by using ECC (error correcting codes), parity check, majority-voting logic, etc., as will later be described. If an error is detected in the data stored in the flip-flops F, the error-detection-and-correction circuit 12 asserts its output that is an error detection signal (which is set to the HIGH-level output state for assertion in this example). The error detection signals output from the error-detection-and-correction circuits 12 of the flip-flop sets 11-1 through 11-3 are subjected to logical sum performed by theOR gates 13 so as to be consolidated into an error detection signal Eall, which is provided to the exterior of the semiconductor integratedcircuit 10. - The consolidated error detection signal Eall may as well be supplied to a controller such as a CPU provided inside the semiconductor integrated
circuit 10. The error detection signal Eall may include two bits, one being a first error detection signal indicative of the presence of a correctable error and the other being a second error detection signal indicative of the presence of an uncorrectable error. The provision may be made such that the logical sum described above is performed separately for each of these two bits. Further, the error detection signal Eall does not have to be made by consolidating all the error detection signals from all the flip-flop sets 11-1 through 11-3. For example, all the flip-flop sets may be divided into a first group and a second group, and a consolidated error detection signal may be output separately for each of these groups. - The assertion of the consolidated error detection signal Eall indicates the occurrence of error in any one or more of the flip-flops provided in the semiconductor integrated
circuit 10. In order to check which one of the flip-flop sets 11-1 through 11-3 suffers an error, the error-detection-purpose flip-flop E is used. - The error-detection-purpose flip-flop E has “1” stored therein by the error-detection-and-
correction circuit 12 upon the detection of error by the error-detection-and-correction circuit 12. The error-detection-purpose flip-flops E of the flip-flop sets 11-1 through 11-3 are connected in series such that the output of a given flip-flop is input into the flip-flop at the next stage, thereby forming a flip-flop chain 15. When the consolidated error detection signal Eall is asserted, the data of the flip-flops of thechain 15 are successively shifted to the next following stages, so that the contents of the error-detection-purpose flip-flops E are supplied to the exterior of the semiconductor integratedcircuit 10 as an error scan signal Escan. From outside the semiconductor integratedcircuit 10, the position of the error can be located based on the contents of the error scan signal Escan that is read out from the semiconductor integratedcircuit 10. - By the same token, the data-purpose flip-flops F of the flip-flop sets 11-1 through 11-3 may be configured to form a chain. Namely, the data-purpose flip-flops F may be connected in series such that the output of a given flip-flop is input into the flip-flop at the next stage, thereby forming a flip-
flop chain 16. When the consolidated error detection signal Eall is asserted, the data of the flip-flops of thechain 16 are successively shifted to the next following stages, so that the contents of the data-purpose flip-flops F are supplied to the exterior of the semiconductor integratedcircuit 10 as a data scan signal Dscan. From outside the semiconductor integratedcircuit 10, detailed analysis such as the locating of an error bit position can be performed based on the contents of the data scan signal Dscan that is read out from the semiconductor integratedcircuit 10. - The data-purpose flip-flops F have data-input/output paths used for the purpose of providing their intended functions as part of the operation of the semiconductor integrated
circuit 10, so that thechain 16 needs to be provided as a path separate from those paths. As is known as a technology for scan-chain configuration, a selector may be provided in front of the input of each flip-flop so as to select one of the intended input of the flip-flop and the output of the preceding flip-flop in the chain. Provision may be made such that the intended input of the flip-flop is selected during the routine operation, and such that the output of the preceding flip-flop in the chain is selected during the scan operation. Alternatively, a flip-flop that has two input nodes, one for receiving routine data and the other for receiving scan input, may be used. Alternatively, flip-flops separate from the original flip-flops may be provided as shadow registers in a duplicate manner, such that the original flip-flops are used to serve the intended purpose of the semiconductor integrated circuit, and such that the duplicated flip-flops are used for the scan operation. In this configuration, a scan operation can be performed while performing the routine operation of the semiconductor integratedcircuit 10. -
FIG. 2 is a drawing showing an example of the configuration of a flip-flop set according to a first embodiment of the present invention. The flip-flop set shown inFIG. 2 is one of the flip-flop sets 11-1 through 11-3, and corresponds to an example in which the ECC is used for error correction and detection. - The flip-flop set shown in
FIG. 2 includes a plurality of data-purpose flip-flops 21, a plurality of error-correction-code-purpose flip-flops 22, anECC generating circuit 23, an ECC check-&-correction circuit 24, and anerror memory circuit 25. The data-purpose flip-flops 21 correspond to the data-purpose flip-flops F shown inFIG. 1 , and theerror memory circuit 25 corresponds to the error-detection-purpose flip-flop E shown inFIG. 1 . Further, the error-correction-code-purpose flip-flops 22, theECC generating circuit 23, and the ECC check-&-correction circuit 24 together correspond to the error-detection-and-correction circuit 12 shown inFIG. 1 . For the sake of convenience of illustration, a chain corresponding to thechain 16 shown inFIG. 1 is not illustrated. - The data-purpose flip-
flops 21 receive input data D0 through D3, and load (latch) the input data D0 through D3 in synchronization with a clock signal CLK. The stored data (latched data) of the data-purpose flip-flops 21 are supplied to the ECC check-&-correction circuit 24. If there is no error, the stored data of the data-purpose flip-flops 21 are transmitted as output data Q0 through Q3 without any data change. - As the input data D0 through D3 are supplied to the data-purpose flip-
flops 21, theECC generating circuit 23 performs a predetermined computation on the input data D0 through D3 to derive an error correcting code. The derived error correcting code is stored in the error-correction-code-purpose flip-flops 22 in synchronization with the clock signal CLK. - The ECC check-&-
correction circuit 24 determines whether there is an error based on the data supplied from the data-purpose flip-flops 21 and the error correcting code supplied from the error-correction-code-purpose flip-flops 22, and performs an error correction if error is present. The error-corrected data is then transmitted as the output data Q0 through Q3. If the Hamming code is used for error correction, for example, error correction is possible if one-bit error occurs, while only error detection is possible if two-bit error occurs. - An example will be examined here in which an error correcting code is generated such that a total of 7 bits comprised of 4 bits of the data-purpose flip-
21 and 3 bits of the error-correction-code-purpose flip-flops flops 22 constitutes a Hamming code for which inter-code distance is three bits or more, for example. In this case, the presence/absence of error can be determined by checking whether the 7-bit output of the flip-flops has a bit pattern that is proper as a Hamming code. If error occurs in 1 bit, a difference between the 7-bit data and the Hamming code having the shortest Hamming distance from this 7-bit data is calculated, so that the 1 erroneous bit can be identified and corrected. Since the inter-code distance of the Hamming code is three, the presence of two-bit error allows only a determination to be made as to the presence/absence of error, but does not allow a determination to be made as to what Hamming code is a correct code. In practice, the syndrome information of the Hamming code may be calculated. The syndrome information uniquely indicates the presence/absence of error and the position of the error. - The ECC check-&-
correction circuit 24 supplies to an exterior an error-detection signal indicative of the presence/absence of error upon the determination regarding the presence/absence of error as described above. This error-detection signal corresponds to the error-detection signal shown inFIG. 1 , and may include a correctable-error-detection signal indicating the presence of a correctable error and an uncorrectable-error-detection signal indicating the presence of an uncorrectable error. The ECC check-&-correction circuit 24 stores “1” in theerror memory circuit 25 upon the detection of error. - According to the first embodiment as described above, the ECC is applied to the flip-flop sets provided in the semiconductor integrated
circuit 10, so that error detection and error correction are possible upon the occurrence of a bit error. If the extended Hamming code is used, the correction of multiple failed bits becomes also possible. In this manner, the reliability of flip-flop data in the semiconductor integratedcircuit 10 can be improved. -
FIG. 3 is a drawing showing an example of the configuration of a data-purpose flip-flop F according to a second embodiment of the present invention. In the first embodiment shown inFIG. 2 , an error correcting code is generated from the data input into the data-purpose flip-flops F so as to improve the reliability of flip-flop data. In the second embodiment shown inFIG. 3 , a majority voting rule is applied to each data-purpose flip-flop F to improve the reliability of data of each flip-flop. - A data-purpose flip-
flop 30 shown inFIG. 3 includes a plurality oflatches 31 and a majority-voting-logic circuit 32. Although threelatches 31 are illustrated inFIG. 3 , the number of latches is not limited to three, and may be any number that is two or more (an odd number is preferable since the majority voting rule is used to determine the logic value). - As input data D is supplied to the data-purpose flip-
flop 30, the input data D is supplied to all thelatches 31. All thelatches 31 load (latch) the same input data in synchronization with the clock signal CLK. - The majority-voting-
logic circuit 32 receives outputs A, B, and C from thelatches 31, and computes a majority-voting-logic value. Namely, one of the logic value “0” and the logic value “1” that is found in larger number in the outputs A, B, and C is identified, and the majority-voting-logic circuit 32 produces this identified logic value as an output Q. The input data D may be “1”, for example. However, due to the effect of secondary cosmic-ray neutrons, data is inverted in one of the three latches 31, so that the output B becomes “0”. Even in this case, the number of the logic value “1” accounts for a majority among the outputs A, B, and C, so that the majority-voting-logic circuit 32 can produces the correct data value “1”. - Here, the data-purpose flip-
flop 30 may be prepared as a library cell for use in the circuit design. Provision of such a library cell makes it possible to place the cell in the same manner as placing a flip-flop, thereby eliminating unnecessary labor during the design process. -
FIG. 4 is a drawing showing an example of the configuration of the majority-voting-logic circuit 32. The majority-voting-logic circuit 32 shown inFIG. 4 includes ANDgates 41 through 43 and anOR gate 44. When all of the latch outputs A, B, and C are “1”, all the outputs of the ANDgates 41 through 43 are “1”, so that the output Q of theOR gate 44 is “1”. When all of the latch outputs A, B, and C are “0”, all the outputs of the ANDgates 41 through 43 are “0”, so that the output Q of theOR gate 44 is “0”. When two of the latch outputs A, B, and C are “1”, one of the outputs of the ANDgates 41 through 43 is “1”, so that the output Q of theOR gate 44 is “1”. When two of the latch outputs A, B, and C are “0”, all the outputs of the ANDgates 41 through 43 are “0“, so that the output Q of theOR gate 44 is “0”. In this manner, a majority-voting logic is implemented. - When the data-purpose flip-
flop 30 is used in the flip-flop sets 11-1 through 11-3 shown inFIG. 1 , the error-detection-and-correction circuit 12 may be configured such that the error-detection signal output is asserted when all the outputs of thelatches 31 are not the same with respect to any given data-purpose flip-flop 30 shown inFIG. 3 , for example. Such logic circuit can easily be implemented by combining XOR (exclusive-OR) gates and an OR gate, for example. In this case, the error detection signal is comprised of one type of an error-detection signal. - According to the second embodiment as described above, a majority-voting rule is applied to each flip-flop provided in the semiconductor integrated
circuit 10, so that error detection and error correction are possible upon the occurrence of error. In this manner, the reliability of flip-flop data in the semiconductor integratedcircuit 10 can be improved. Since a simple majority voting rule is used, error correction can be performed at faster speed than when the ECC is used. Further, since bit-by-bit error correction is performed, reliability is high. -
FIG. 5 is a drawing showing a variation of the data-purpose flip-flop 30 shown inFIG. 3 . InFIG. 5 , the same elements as those ofFIG. 3 are referred to by the same numerals, and a description thereof will be omitted. - A data-purpose flip-
flop 30A shown inFIG. 5 includes the plurality oflatches 31, a plurality ofdelay elements 33, and the majority-voting-logic circuit 32. Thedelay elements 33 serve to delay the clock signal CLK. The clock signals CLK supplied to the individual latches 31 have respective, different timings due to the delays incurred by thedelay elements 33. - As input data D is supplied to the data-purpose flip-
flop 30A, the input data D is supplied to all thelatches 31. All thelatches 31 load (latch) the input data in synchronization with the clock signals having respective, different timings. In this case, the load timing (latch timing) varies, so that even if there is a glitch such as a distortion of signal waveform at a rising edge of the input data D, all the data are not affected and incorrectly latched due to the glitch. Accordingly, the use of the majority-voting-logic circuit 32 serves not only to provide a reliable circuit capable of coping with soft errors, but also to provide a circuit capable of coping with errors resulting from a glitch. -
FIG. 6 is a drawing showing an example of the configuration of a flip-flop set according to a third embodiment of the present invention. The flip-flop set shown inFIG. 6 is one of the flip-flop sets 11-1 through 11-3, and corresponds to an example in which a parity check is used for error correction and detection. - The flip-flop set shown in
FIG. 6 includes aparity generating circuit 50, a plurality of data-purpose flip-flops 51, a parity-bit-purpose flip-flop 52, a parity-check circuit 53, a plurality of data-purpose flip-flops 61, a parity-bit-purpose flip-flop 62, a parity-check circuit 63, a plurality ofselectors 71, an ANDcircuit 72, anerror memory circuit 73, and an error memory circuit 74. The data-purpose flip- 51 and 61 correspond to the data-purpose flip-flops F shown inflops FIG. 1 , and theerror memory circuits 73 and 74 correspond to the error-detection-purpose flip-flop E shown inFIG. 1 . Further, theparity generating circuit 50, the parity-bit-purpose flip-flop 52, the parity-check circuit 53, the parity-bit-purpose flip-flop 62, the parity-check circuit 63, theselectors 71, and the ANDcircuit 72 together correspond to the error-detection-and-correction circuit 12 shown inFIG. 1 . For the sake of convenience of illustration, a chain corresponding to thechain 16 shown in.FIG. 1 is not illustrated. - The data-purpose flip-
51 and 61 receive input data D0 through D3, and load (latch) the input data D0 through D3 in synchronization with a clock signal CLK. The stored data (latched data) of the data-purpose flip-flops flops 51 are supplied to theselectors 71, and are also supplied to the parity-check circuit 53. The stored data (latched data) of the data-purpose flip-flops 61 are supplied to theselectors 71, and are also supplied to the parity-check circuit 63. - As the input data D0 through D3 are supplied to the data-purpose flip-
51 and 61, theflops parity generating circuit 50 performs a predetermined computation on the input data D0 through D3 to derive a parity bit. The derived parity bit is stored in the parity-bit-purpose flip- 52 and 62 in synchronization with the clock signal CLK.flops - The parity-
check circuit 53 determines whether there is an error by performing a parity check based on the data supplied from the data-purpose flip-flops 51 and the parity bit supplied from the parity-bit-purpose flip-flop 52. If there is an error, a parity-check signal P1 is asserted (i.e., asserted to “1” in this example). The parity-check signal P1 is sent out as a correctable error detection signal, and is also supplied to theselectors 71, the ANDcircuit 72, and theerror memory circuit 73. - The parity-
check circuit 63 determines whether there is an error by performing a parity check based on the data supplied from the data-purpose flip-flops 61 and the parity bit supplied from the parity-bit-purpose flip-flop 62. If there is an error, a parity-check signal P2 is asserted (i.e., asserted to “1” in this example). The parity-check signal P2 is supplied to the ANDcircuit 72 and the error memory circuit 74. - When there is no error in the data stored in the data-purpose flip-
flops 51, the parity-check signal P1 output from the parity-check circuit 53 is “0”. In this case, theselectors 71 select the data of the data-purpose flip-flops 51 for provision as output data Q0 through Q3. - When one of the data bits stored in the data-purpose flip-
flops 51 is changed due to soft error, the parity-check circuit 53 detects a parity error, and changes the parity-check signal P1 to “1”. In this case, theselectors 71 select the data of the data-purpose flip-flops 61 for provision as output data Q0 through Q3. Assuming that there is no error in the data-purpose flip-flops 61, the selecting operation of theselectors 71 as described above can correct the error. Further, the parity-check signal P1 being “1” is sent out as a correctable error detection signal, so that the correctable error detection signal is asserted. - When there is no error in the data stored in the data-purpose flip-
flops 61, the parity-check signal P2 output from the parity-check circuit 63 is “0”. In this case, the output of the ANDcircuit 72 is “0” regardless of the value of the parity-check signal P1. When there is no error in the data stored in the data-purpose flip-flops 51, the parity-check signal P1 output from the parity-check circuit 53 is “0”. In this case, the output of the ANDcircuit 72 is “0” regardless of the value of the parity-check signal P2. When there is error in both the data stored in the data-purpose flip-flops 51 and the data stored in the data-purpose flip-flops 61, the parity-check signals P1 and P2 are both “1”. In this case, the output of the ANDcircuit 72 is “1”, asserting an uncorrectable error detection signal. - The flip-flop set shown in
FIG. 6 supplies to an exterior an error-detection signal indicative of the presence/absence of parity error upon the determination regarding the presence/absence of parity error as described above. This error-detection signal corresponds to the error-detection signal shown inFIG. 1 , and includes the correctable-error-detection signal indicating the presence of a correctable error and the uncorrectable-error-detection signal indicating the presence of an uncorrectable error. In this embodiment, two bits are provided as the error-detection-purpose flip-flops E. Theerror memory circuit 73 corresponds to an error in the data-purpose flip-flops 51, and the error memory circuit 74 corresponds to an error in the data-purpose flip-flops 61. - According to the third embodiment as described above, a flip-flop set in the semiconductor integrated
circuit 10 is comprised of a first flip-flop set and a second flip-flop set provided in a duplicate fashion, each of which is provided with a parity-check function. When a parity error is detected, data of the flip-flop set that is not the flip-flop set suffering the parity error are output, thereby correcting an error upon the occurrence of parity error. In this manner, the reliability of flip-flop data in the semiconductor integratedcircuit 10 can be improved. - Further, the present invention is not limited to these embodiments, but various variations and modifications may be made without departing from the scope of the present invention.
Claims (9)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006075003A JP4899556B2 (en) | 2006-03-17 | 2006-03-17 | Semiconductor integrated circuit |
| JP2006-075003 | 2006-03-17 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| US20070226600A1 true US20070226600A1 (en) | 2007-09-27 |
| US7702992B2 US7702992B2 (en) | 2010-04-20 |
Family
ID=38535047
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US11/505,447 Expired - Fee Related US7702992B2 (en) | 2006-03-17 | 2006-08-17 | Semiconductor integrated circuit with flip-flops having increased reliability |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US7702992B2 (en) |
| JP (1) | JP4899556B2 (en) |
Cited By (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20090094504A1 (en) * | 2007-10-04 | 2009-04-09 | Hiroyuki Sadakata | Semiconductor memory device |
| US20090243686A1 (en) * | 2008-03-26 | 2009-10-01 | Fujitsu Microelectronics Limited | Latch circuit and electronic device |
| US8856700B1 (en) * | 2007-03-17 | 2014-10-07 | Cadence Design Systems, Inc. | Methods, systems, and apparatus for reliability synthesis |
| US20160162351A1 (en) * | 2014-12-05 | 2016-06-09 | SK Hynix Inc. | Parity check circuit and memory device including the same |
| US9460814B2 (en) * | 2014-05-02 | 2016-10-04 | Globalfoundries Inc. | Memory tester design for soft error rate (SER) failure analysis |
| US10325049B2 (en) * | 2017-01-18 | 2019-06-18 | International Business Machines Corporation | Placement-driven generation of error detecting structures in integrated circuits |
| US11451232B2 (en) | 2020-12-21 | 2022-09-20 | Kepler Computing Inc. | Majority logic gate based flip-flop with non-linear polar material |
| US11482990B1 (en) * | 2021-08-19 | 2022-10-25 | Kepler Computing Inc. | Vectored sequential circuit with ferroelectric or paraelectric material |
| GB2627525A (en) * | 2023-02-27 | 2024-08-28 | Imagination Tech Ltd | Data integrity checking |
Families Citing this family (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5021563B2 (en) * | 2008-06-02 | 2012-09-12 | 株式会社東海理化電機製作所 | Operation position detecting device and shift device |
| US8083947B2 (en) * | 2009-02-24 | 2011-12-27 | Eastman Kodak Company | Polymer-containing solvent purifying process |
| US8631292B2 (en) | 2011-08-29 | 2014-01-14 | Freescale Semiconductor, Inc. | Multi-threading flip-flop circuit |
| US9523736B2 (en) | 2014-06-19 | 2016-12-20 | Nuvoton Technology Corporation | Detection of fault injection attacks using high-fanout networks |
| US9397666B2 (en) | 2014-07-22 | 2016-07-19 | Winbond Electronics Corporation | Fault protection for clock tree circuitry |
| US9397663B2 (en) | 2014-07-22 | 2016-07-19 | Winbond Electronics Corporation | Fault protection for high-fanout signal distribution circuitry |
| US10013581B2 (en) | 2014-10-07 | 2018-07-03 | Nuvoton Technology Corporation | Detection of fault injection attacks |
| TWI550291B (en) * | 2014-11-19 | 2016-09-21 | 華邦電子股份有限公司 | Integrated circuit and the fault detection method thereof |
| JP6968608B2 (en) * | 2016-09-30 | 2021-11-17 | キヤノン株式会社 | Imaging devices, imaging systems, and moving objects |
| US12182260B2 (en) | 2017-12-18 | 2024-12-31 | Nuvoton Technology Corporation | System and method for detecting fault injection attacks |
| US11429478B2 (en) | 2019-06-05 | 2022-08-30 | Stmicroelectronics International N.V. | Robust soft error tolerant multi-bit D flip-flop circuit |
| US11366899B2 (en) | 2020-02-18 | 2022-06-21 | Nuvoton Technology Corporation | Digital fault injection detector |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20020124218A1 (en) * | 2001-03-01 | 2002-09-05 | Kazunori Kishimoto | Method of testing a semiconductor integrated circuit and method and apparatus for generating test patterns |
| US20040163018A1 (en) * | 2003-02-13 | 2004-08-19 | Matsushita Electric Industrial Co., Ltd. | Error portion detecting method and layout method for semiconductor integrated circuit |
| US20040183581A1 (en) * | 2003-03-20 | 2004-09-23 | Matsushita Electric Industrial Co., Ltd. | Semiconductor integrated circuit |
| US20050278588A1 (en) * | 2004-05-26 | 2005-12-15 | International Business Machines Corporation | A system and method of providing error detection and correction capability in an integrated circuit using redundant logic cells of an embedded fpga |
| US20060242541A1 (en) * | 2003-04-14 | 2006-10-26 | Gower Kevin C | High reliability memory module with a fault tolerant address and command bus |
| US7451370B2 (en) * | 1997-03-27 | 2008-11-11 | Texas Instruments Incorporated | Input/output buffer test circuitry and leads additional to boundary scan |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6419600A (en) * | 1987-07-13 | 1989-01-23 | Mitsubishi Electric Corp | Semiconductor integrated circuit device |
| JPH04132094A (en) * | 1990-09-20 | 1992-05-06 | Fujitsu General Ltd | Dynamic RAM control circuit |
| JPH04141745A (en) * | 1990-10-02 | 1992-05-15 | Mitsubishi Electric Corp | Semiconductor integrated circuit device |
| JP3895118B2 (en) * | 2001-02-23 | 2007-03-22 | 三菱電機株式会社 | Single event upset compensation circuit |
-
2006
- 2006-03-17 JP JP2006075003A patent/JP4899556B2/en not_active Expired - Fee Related
- 2006-08-17 US US11/505,447 patent/US7702992B2/en not_active Expired - Fee Related
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7451370B2 (en) * | 1997-03-27 | 2008-11-11 | Texas Instruments Incorporated | Input/output buffer test circuitry and leads additional to boundary scan |
| US20020124218A1 (en) * | 2001-03-01 | 2002-09-05 | Kazunori Kishimoto | Method of testing a semiconductor integrated circuit and method and apparatus for generating test patterns |
| US20040163018A1 (en) * | 2003-02-13 | 2004-08-19 | Matsushita Electric Industrial Co., Ltd. | Error portion detecting method and layout method for semiconductor integrated circuit |
| US20040183581A1 (en) * | 2003-03-20 | 2004-09-23 | Matsushita Electric Industrial Co., Ltd. | Semiconductor integrated circuit |
| US20060242541A1 (en) * | 2003-04-14 | 2006-10-26 | Gower Kevin C | High reliability memory module with a fault tolerant address and command bus |
| US20050278588A1 (en) * | 2004-05-26 | 2005-12-15 | International Business Machines Corporation | A system and method of providing error detection and correction capability in an integrated circuit using redundant logic cells of an embedded fpga |
Cited By (23)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8856700B1 (en) * | 2007-03-17 | 2014-10-07 | Cadence Design Systems, Inc. | Methods, systems, and apparatus for reliability synthesis |
| US20090094504A1 (en) * | 2007-10-04 | 2009-04-09 | Hiroyuki Sadakata | Semiconductor memory device |
| US8078949B2 (en) * | 2007-10-04 | 2011-12-13 | Panasonic Corporation | Semiconductor memory device |
| US20090243686A1 (en) * | 2008-03-26 | 2009-10-01 | Fujitsu Microelectronics Limited | Latch circuit and electronic device |
| US8072251B2 (en) | 2008-03-26 | 2011-12-06 | Fujitsu Semiconductor Limited | Latch circuit and electronic device |
| US9460814B2 (en) * | 2014-05-02 | 2016-10-04 | Globalfoundries Inc. | Memory tester design for soft error rate (SER) failure analysis |
| US20160162351A1 (en) * | 2014-12-05 | 2016-06-09 | SK Hynix Inc. | Parity check circuit and memory device including the same |
| US9577671B2 (en) * | 2014-12-05 | 2017-02-21 | SK Hynix Inc. | Parity check circuit and memory device including the same |
| US9923578B2 (en) * | 2014-12-05 | 2018-03-20 | SK Hynix Inc. | Parity check circuit and memory device including the same |
| US20190266305A1 (en) * | 2017-01-18 | 2019-08-29 | International Business Machines Corporation | Placement-driven generation of error detecting structures in integrated circuits |
| US10325049B2 (en) * | 2017-01-18 | 2019-06-18 | International Business Machines Corporation | Placement-driven generation of error detecting structures in integrated circuits |
| US10956637B2 (en) * | 2017-01-18 | 2021-03-23 | International Business Machines Corporation | Placement-driven generation of error detecting structures in integrated circuits |
| US11451232B2 (en) | 2020-12-21 | 2022-09-20 | Kepler Computing Inc. | Majority logic gate based flip-flop with non-linear polar material |
| US11616507B2 (en) | 2020-12-21 | 2023-03-28 | Kepler Computing Inc. | Ferroelectric based latch |
| US11611345B1 (en) | 2021-08-19 | 2023-03-21 | Kepler Computing Inc. | NAND based sequential circuit with ferroelectric or paraelectric material |
| US11545979B1 (en) | 2021-08-19 | 2023-01-03 | Kepler Computing Inc. | Compare logic based sequential circuit with ferroelectric or paraelectric material |
| US11509308B1 (en) | 2021-08-19 | 2022-11-22 | Kepler Computing Inc. | Sequential circuit without feedback or memory element |
| US11482990B1 (en) * | 2021-08-19 | 2022-10-25 | Kepler Computing Inc. | Vectored sequential circuit with ferroelectric or paraelectric material |
| US11777504B1 (en) | 2021-08-19 | 2023-10-03 | Kepler Computing Inc. | Non-linear polar material based latch |
| US12212321B1 (en) | 2021-08-19 | 2025-01-28 | Kepler Computing Inc. | Non-linear polar material based flip-flop |
| GB2627525A (en) * | 2023-02-27 | 2024-08-28 | Imagination Tech Ltd | Data integrity checking |
| GB2627525B (en) * | 2023-02-27 | 2025-05-07 | Imagination Tech Ltd | Data integrity checking |
| US12455316B2 (en) | 2023-02-27 | 2025-10-28 | Imagination Technologies Limited | Checking data integrity by comparing error-check signals generated on different clock cycles |
Also Published As
| Publication number | Publication date |
|---|---|
| JP4899556B2 (en) | 2012-03-21 |
| US7702992B2 (en) | 2010-04-20 |
| JP2007248378A (en) | 2007-09-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7702992B2 (en) | Semiconductor integrated circuit with flip-flops having increased reliability | |
| US8161367B2 (en) | Correction of single event upset error within sequential storage circuitry of an integrated circuit | |
| US7482831B2 (en) | Soft error tolerant flip flops | |
| US8516339B1 (en) | Method of and circuit for correcting adjacent bit errors in a memory | |
| US10263645B2 (en) | Error correction and decoding | |
| US20130086444A1 (en) | Error detection code enhanced self-timed/asynchronous nanoelectronic circuits | |
| EP3428665A1 (en) | Fault detection in registers | |
| She et al. | SEU tolerant latch based on error detection | |
| Xuan et al. | SEU hardened flip-flop based on dynamic logic | |
| CN103413571B (en) | Storer and utilize this storer to realize the method for error-detection error-correction | |
| Naeimi et al. | Fault secure encoder and decoder for memory applications | |
| Sahana et al. | Application of error detection and correction techniques to self-checking VLSI systems: An overview | |
| Namba et al. | A single-bit and double-adjacent error correcting parallel decoder for multiple-bit error correcting BCH codes | |
| GB2529017A (en) | Error detection in stored data values | |
| JP5481836B2 (en) | Counter circuit and counter circuit control method | |
| US8219864B2 (en) | Circuit arrangement | |
| JP2003316599A (en) | Integrated circuit | |
| Bhattacharryya et al. | An efficient class of SEC-DED-AUED codes | |
| JP3895118B2 (en) | Single event upset compensation circuit | |
| Lin et al. | A cost-efficient self-checking register architecture for radiation hardened designs | |
| US20140372837A1 (en) | Semiconductor integrated circuit and method of processing in semiconductor integrated circuit | |
| Bhanumathi et al. | VLSI Architecture for error detection and Correction based on XOR against multiple cell upsets with reduced redundant bits | |
| Dang et al. | 2D-PPC: A single-correction multiple-detection method for Through-Silicon-Via Faults | |
| RT et al. | Rectifying the Impact of Multiple Cell Upsets in Memory Devices | |
| Sadi et al. | Enhancing the Capability of Single Error Correction and Double Error Detection Method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| AS | Assignment |
Owner name: FUJITSU LIMITED, JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:OGAWA, TOSHIO;REEL/FRAME:018190/0097 Effective date: 20060728 Owner name: FUJITSU LIMITED,JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:OGAWA, TOSHIO;REEL/FRAME:018190/0097 Effective date: 20060728 |
|
| AS | Assignment |
Owner name: FUJITSU MICROELECTRONICS LIMITED, JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:FUJITSU LIMITED;REEL/FRAME:021977/0219 Effective date: 20081104 Owner name: FUJITSU MICROELECTRONICS LIMITED,JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:FUJITSU LIMITED;REEL/FRAME:021977/0219 Effective date: 20081104 |
|
| STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
| AS | Assignment |
Owner name: FUJITSU SEMICONDUCTOR LIMITED, JAPAN Free format text: CHANGE OF NAME;ASSIGNOR:FUJITSU MICROELECTRONICS LIMITED;REEL/FRAME:024982/0245 Effective date: 20100401 |
|
| FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
| FPAY | Fee payment |
Year of fee payment: 4 |
|
| AS | Assignment |
Owner name: SOCIONEXT INC., JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:FUJITSU SEMICONDUCTOR LIMITED;REEL/FRAME:035508/0469 Effective date: 20150302 |
|
| MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552) Year of fee payment: 8 |
|
| FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
| LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
| STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
| FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20220420 |