DYNAMIC FAULT CLUSTERING METHOD AND APPARATUS
20230317198 · 2023-10-05
Inventors
- Jong Sun Park (Seoul, KR)
- Kwan Ho BAE (Seoul, KR)
- Jin Ho JEONG (Yongin, KR)
- Seung Hwan BANG (Seoul, KR)
Cpc classification
International classification
G11C29/00
PHYSICS
Abstract
A dynamic fault clustering method and apparatus for efficiently managing redundancy in semiconductor memories performs a collection operation of searching for and detecting a fault and an operation of appropriately clustering the fault at the same time, which reduces an amount of time spent performing Built-In Redundancy Analysis (BIRA).
Claims
1. A dynamic fault clustering method comprising: starting a self-test of a memory cell array divided into layers; performing a search for a new fault in the memory cell array; in response to the search finding the new fault, performing a check of whether a row address or a column address of the new fault matches a row address or a column address of a previously detected fault stored in an address storage device; setting a layer number to which the new fault belongs when the check determines that the row address or the column address of the new fault matches the row address or the column address of the previously detected fault; determining whether to perform a row-must or column-must repair when the check determines that 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; storing information on the row-must or column-must repair in a redundancy storage device when it is determined to perform the row-must or column-must repair; determining whether to cluster the new fault from a layer to which the new fault belongs to another layer when it is determined not to perform the row-must or column-must repair; storing corresponding layer information in the address storage device when it is determined that the fault is to be clustered; and of storing corresponding layer information in the redundancy storage device when it is determined that the fault is not to be clustered.
2. The dynamic fault clustering method of claim 1, wherein storing the corresponding layer information in the redundancy storage device includes storing information indicating row-wise clustering or column-wise clustering in the redundancy storage device.
3. The dynamic fault clustering method of claim 1, wherein the redundancy storage device is a content addressable memory.
4. The dynamic fault clustering method of claim 1, wherein the address storage device is a content addressable memory.
5. The dynamic fault clustering method of claim 1, wherein the redundancy storage device includes the row address, the column address, and a layer address of the new fault.
6. The dynamic fault clustering method of claim 1, wherein the redundancy storage device includes a space for storing a flag signal indicating whether to apply row repair or column repair to the new fault.
7. The dynamic fault clustering method of claim 1, wherein the redundancy storage device includes a mapped address for clustering.
8. The dynamic fault clustering method of claim 1, wherein the address storage device includes a space for storing a flag signal indicating whether the clustered fault corresponds to a row-wise exchange or a column-wise exchange.
9. The dynamic fault clustering method of claim 1, wherein performing the search for the new fault and the determining whether to cluster the new fault are performed at the same time.
10. A dynamic fault clustering apparatus comprising: 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 layers; 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 search for the fault and to determine whether to cluster the fault from a layer to which the fault belongs to another layer.
11. The dynamic fault clustering apparatus of claim 10, wherein when the redundancy analyzer determines to cluster the fault, the redundancy analyzer determines whether to cluster the fault using row-wise clustering or column-wise clustering.
12. The dynamic fault clustering apparatus of claim 10, wherein the redundancy storage device is a content addressable memory.
13. The dynamic fault clustering apparatus of claim 10, wherein the address storage device is a content addressable memory.
14. The dynamic fault clustering apparatus of claim 10, wherein the redundancy storage device includes a row address, a column address, and a layer address of a new fault.
15. The dynamic fault clustering apparatus of claim 10, wherein the redundancy storage device includes a mapped address to which the new fault is moved for clustering.
16. The dynamic fault clustering apparatus of claim 10, wherein the redundancy analyzer performs the search for the fault and the determination of whether to cluster the fault at the same time.
17. The dynamic fault clustering apparatus of claim 10, wherein the redundancy storage device includes a space for storing flag signals indicating whether to apply row repair or column repair to the new fault.
18. The dynamic fault clustering apparatus of claim 17, wherein values of the flag signals are set when the clustering is performed.
19. The dynamic fault clustering apparatus of claim 18, wherein the setting of the flag signals is performed by an analysis operation of the redundancy analyzer.
20. The dynamic fault clustering apparatus of claim 10, wherein the redundancy storage device stores some or all of a layer number to which the new 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.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0016]
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
DETAILED DESCRIPTION
[0027] 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.
[0028] 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.
[0029] 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.
[0030] 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’.
[0031] 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.
[0032] 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.
[0033]
[0034] The characteristics of the present disclosure will be described in more detail with reference to
[0035] As indicated by arrows in
[0036] 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.
[0037] In the next step, when third fault #3 is detected at the position of (RA,CA)=(3,2) of layer 2 as illustrated in
[0038] 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
[0039] 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
[0040] 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.
[0041]
[0042]
[0043] 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).
[0044]
[0045] 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).
[0046] 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.
[0047] 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.
[0048] 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.
[0049] 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.
[0050] 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.
[0051]
[0052] Referring to
[0053] 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
[0054] In another simulation result of redundancy analysis time performed under different conditions, as illustrated in
[0055] 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.