This application claims priority under 35 U.S.C. § 119 to Korean Patent Application No. 10-2022-0041215 filed on Apr. 1, 2022, which is incorporated herein by reference in its entirety.
Illustrative embodiments relate to a dynamic fault clustering method and apparatus for searching for and detecting a fault when the fault has occurred in a semiconductor memory cell for storing binary information, and are for more effectively performing clustering before all faults are detected.
As a process technology for making semiconductor integrated circuits is continuously developed, the degree of integration of semiconductor memory products has also been significantly improved. The number of errors (faults) occurring in a memory cell for storing binary information has significantly increased in proportion to the high integration, resulting in an increase in test cost. A technology of replacing a fault cell with an appropriate spare cell in order to cure a fault has been used for a long time, but it also becomes more and more complicated as the degree of integration increases.
In a technology of detecting a fault cell and appropriately repairing the fault cell in order to improve the yield of memory products, particularly, an area of redundancy for efficiently using a semiconductor area, consumption of time for repair, efficiency of repair, and the like are used as indicators affecting the productivity of semiconductor memories.
When a read or write operation on a memory cell fails to complete, the cell may be defined as an erroneous cell. Depending on the type of error, an error in which one bit of cell is defective may be called a single fault.
Extra cells prepared to replace erroneous cells are called spare cells or redundancies, and they are dedicated to each array, each block, each sector, or each layer of a memory cell. The terms array, block, sector, layer, and the like may refer to a division of the total number of cells existing in a memory chip by an appropriate capacity, or may also mean a set of memory cells belonging to each chip in an element, such as a high bandwidth memory (HBM), in which several memory chips are stacked and connected by, for example, through-silicon vias (TSVs).
The redundancies are divided into row redundancy and column redundancy, redundancy prepared for each layer is called local redundancy, and redundancy prepared so that a fault can be repaired without distinguishing between rows and columns is called global redundancy.
A method of providing such redundancy in a semiconductor memory, analyzing an error, and then using the redundancy to repair the error is called built-in redundancy analysis (BIRA), and a circuit operation performed in a memory chip in order to detect an error is called a built-in self-test (BIST).
Among the methods of BIRA, it may be necessary to move repair of an error occurring in one layer to another layer in order to more efficiently use redundancy. This is called clustering.
Among the techniques used for BIRA that employ clustering, selecting an appropriate repair method after detecting all the faults in a memory layer is called static fault clustering, and selecting the appropriate repair method for a fault at the same time as detecting the fault is called dynamic fault clustering.
A memory layer in which a fault has occurred is called a mapping layer, and a layer to which responsibility for repairing the fault is to be moved for clustering is called a mapped layer. In the related art, when a fault occurs, the fault is analyzed, a mapping layer and a mapped layer are determined, and then a direction of mapping or a direction of clustering is also determined.
Various embodiments are directed to allowing a semiconductor memory for storing binary information to improve a repair rate, shorten repair time, and the like by performing appropriate clustering even before all faults are detected, in a fault clustering technology.
A dynamic fault clustering method of a semiconductor memory in accordance with an embodiment of the present disclosure includes: a step of starting a self-test in a memory cell array divided into layers; a step of checking whether a row address or a column address of a new fault matches a row address or a column address of a previously detected fault from an address storage device when the new fault is searched for; a step of correcting a layer number to which the new fault belongs when the row address or the column address of the new fault matches the row address or the column address of the previously detected fault as a result of the check; a step of determining whether to perform must repair when the row address or the column address of the new fault does not match the row address or the column address of the previously detected fault as a result of the check; a step of storing information on the must repair in a redundancy storage device when it is determined to perform the must repair; a step of checking whether the fault is clustered from a layer, to which the fault belongs, to another layer when it is determined not to perform the must repair; a step of storing corresponding layer information in the address storage device when it is determined that the fault is clustered; and a step of storing corresponding layer information in the redundancy storage device when it is determined that the fault is not clustered.
A dynamic fault clustering apparatus of a semiconductor memory in accordance with an embodiment of the present disclosure includes: a semiconductor memory cell array including a plurality of layers and configured to store binary information; a global redundancy including extra cells provided to replace a fault occurring in the layer; a redundancy storage device configured to store a layer number, a row address, and a column address for the fault; an address storage device configured to store whether to perform row repair or column repair for the fault; a multiplexer configured to select binary information from one of the layer and the global redundancy; and a redundancy analyzer configured to perform analysis for clustering from a layer, to which the fault belongs, to another layer.
In accordance with the present disclosure, a collection operation for searching for and detecting a fault and a clustering operation can be performed at the same time so that redundancy of a semiconductor memory can be performed more effectively, which makes it possible to minimize the time required for repair and providing a more efficient search and determination method.
Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings so that the present disclosure can be easily carried out by those skilled in the art to which the present disclosure pertains. The same reference numerals among the reference numerals in each drawing indicate the same elements.
In the description of the present disclosure, when it is determined that detailed descriptions of related publicly-known technologies may obscure the subject matter of the present disclosure, the detailed descriptions thereof will be omitted.
The terms such as first and second may be used to describe various components, but the components are not limited by the terms, and the terms are used only to distinguish one component from another component.
Hereinafter, in the specification of the present disclosure, faults may be indicated by symbol X in a memory cell, may be indicated by a number such as #1 or #2 in order to emphasize a search order, or may be sometimes indicated as ‘1’ in order to indicate the occurrence of a fault or the presence of a fault, and it is noted that this does not indicate binary information ‘1’.
Furthermore, in the specification of the present disclosure, clustering means an operation of moving responsibility for repairing faults to redundancies associated with an appropriate layer, which layer that may not be the same layer that the fault occurred in, and collecting the faults for effective repair, and is sometimes used interchangeably with a mapping operation. In the clustering, a layer to which repair of a fault is to be moved is called a mapped layer, and an original layer where the fault has occurred is called a mapping layer. The process of moving responsibility for handling a fault from the mapping layer to the mapped layer may be referred to herein as simply “moving the fault to the mapped layer,” though of course the actual fault memory cell does not move.
Furthermore, repair means a repair operation of replacing operations intended to use a fault memory cell with analogous operations that instead use an extra memory cell, and the extra memory cells are called redundant cells, spare cells, or redundancy.
The characteristics of the present disclosure will be described in more detail with reference to
As indicated by arrows in
In order to facilitate the understanding of the characteristics of the present disclosure, a redundancy method of the present disclosure will be described with an example in which faults exist in each of two layers.
In the next step, when third fault #3 is detected at the position of (RA,CA)=(3,2) of layer 2 as illustrated in
In the next step, when fourth fault #4 is detected at the position of (RA,CA)=(2, 2) of the layer 1 as illustrated in
In the last step, when fifth fault #5 is detected at the position of (RA,CA)=(2,3) of the layer 2 as illustrated in
When the clustering method of the present disclosure is compared with the static clustering method in the related art, the advantages of the present disclosure become more apparent. In the case of the static clustering in the related art, proper clustering is started only after all faults are detected. Therefore, in a first step, the faults #1 and #2 are determined to be repaired using a row redundancy only after five faults #1 to #5 are stored in the redundancy storage device (RCAM), and in a second step, the fault #3 is clustered to layer 1. Then, in a third step, the faults #3 and #4 are determined to be repaired using a column redundancy, and in a fourth step, it is determined whether to repair the fault #5 using a row redundancy or a column redundancy. Therefore, unlike the present disclosure, in the related art, since a series of processes from the first step to the fourth step are additionally required after all the faults are stored, additional time for the processes is also required.
When the built-in self-test (BIST) for a semiconductor memory has started or has not ended yet (step S110, branch “No”), it is searched whether there is a new fault (step S120), and if the self-test is ended (step S110, branch “Yes”), fault clustering is terminated and an operation of replacing a fault cell with a redundant cell is started. Whether a row address or a column address of a newly detected fault matches that of a previously detected fault is checked in the address storage device ACAM (S130). As a result of the check, when the row address or the column address of the newly detected fault matches that of the previously detected fault, a layer number ML of the new fault is manipulated (S140), and when the row address or the column address of the newly detected fault does not match that of the previously detected fault, whether to perform a row-must or column-must repair is determined (S150). When it is determined to perform the a row-must or column-must repair, corresponding information is set in the redundancy storage device (RCAM), that is, in the entry of the RCAM corresponding to the fault, the value of RMF is set to ‘1’ or the value of CMF is set to ‘1’ (S170). When it is determined not to perform the row-must or column-must repair, it is checked whether the fault is to be clustered from a layer to which the fault belongs to another layer (S160). As a result of the check, when the clustering operation is possible, corresponding layer information is stored in the address storage device ACAM (S180). In step S180, the changed layer number is stored in the mapped layer number ML, and R/CEF is written as 0 in the case of row-wise clustering and R/CEF is written as 1 in the case of column-wise clustering. When the clustering operation is not possible in step S160, corresponding information is stored in the redundancy storage device (RCAM) (S190).
The array 350 includes a plurality of layers, and each layer may correspond to dividing a total number of cells in a memory chip by an appropriate capacity, or each layer may correspond to a set of memory cells belonging to each chip in a device, such as a high bandwidth memory (HBM) in which several memory chips are stacked and connected by through-silicon vias (TSVs).
The global redundancy 340 may be a set of extra memory cells provided to replace a fault memory cell, and may replace a fault memory cell without distinguishing between row-wise repair or column-wise repair.
The redundancy CAM 330 may store information on a fault memory cell, that is, faults, and may store some or all of a layer number to which each fault belongs, a row address, a column address, a mapped layer number for mapping, a row-must flag indicating whether row-wise repair is required, and a column-must flag indicating whether column-wise repair is required. Preferably, as the redundancy CAM 330, a content addressable memory (CAM) or a storage device similar to the CAM may be used.
The address CAM 320 stores information on which a detected fault is layer-mapped through clustering, and is configured to store, for each fault, a layer number to which the fault belongs, a row address, a column address, a mapped layer number for mapping, and whether clustering is row-wise clustering or column-wise clustering. Preferably, as the address CAM 320, a content addressable memory (CAM) or a storage device similar to the CAM may be used.
The redundancy analyzer 310 is configured to perform a series of analysis processes according to the present disclosure, and may be implemented as a combination of logic circuits. In embodiments, the redundancy analyzer 310 may include a processor or microcontroller that contributes to the performance of one or more of the analysis processes by executing instructions stored in a non-transitory computer-readable media.
The multiplexer 360 is configured to selectively operate so that binary information may be inputted/outputted to/from the array 350 in the case of a normal memory cell and binary information may be inputted/outputted to/from the global redundancy 340 that is replacing a fault memory cell.
Referring to
In order to further verify the advantage that accrues when a fault clustering technology of the present disclosure is applied, including that analysis time is saved and there is little reduction in the repair rate, verification was attempted while the types of faults were changed to have various ratios. For example, even when simulations were performed while the size of the memory cells is fixed to 2,048×512 and the ratio of single faults, row-wise faults, and column-wise faults are changed from (0.6, 0.2, 0.2) to (0.6, 0.35, 0.05) and (0.6, 0.05, 0.35), no significant reduction in the repair rate occurs, as illustrated in
In another simulation result of redundancy analysis time performed under different conditions, as illustrated in
Although the present disclosure has been described with reference to the embodiments illustrated in the drawings, the embodiments of the disclosure are for illustrative purposes only, and those skilled in the art will appreciate that various modifications and equivalent other embodiments are possible from the embodiments. Thus, the true technical scope of the present disclosure should be defined by the following claims.
Number | Date | Country | Kind |
---|---|---|---|
10-2022-0041215 | Apr 2022 | KR | national |