self-test architectures are provided to implement data column and row redundancy with a totally integrated self-test and repair capability in a random access memory (RAM), either a Dynamic RAM (DRAM) or a Static Ram (SRAM), and are particularly applicable to compileable memories and to embedded RAM within microprocessor or logic chips. The invention uses two passes of self-test of a memory. The first pass of self-test determines the worst failing column, the column with the largest number of unique failing row addresses. After completion of the first pass of self-test, the spare column is allocated to replace the worst failing column. In the second pass of self-test, the BIST (Built In self-Test) collects unique failing row addresses as it does today for memories with spare rows only. At the completion of the second pass of self-test, the spare rows are then allocated. Once the second pass of self-test is completed, the column and unique failing row addresses are transported to the e-fuse macros and permanently stored in the chip.
|
1. A method for self-testing, allocating and repairing a random access memory (RAM) using a spare data column and spare rows, comprising:
performing first and second passes of self-test on the RAM memory;
in the first pass of self-test, determining a worst failing column of the RAM memory by testing one data column at a time while counting the number of unique failing row addresses of the tested data column by masking all data columns except the tested data column, such that only the un-masked tested data column produces an error in a data-out comparator;
after completion of the first pass of self-test, allocating the spare column to replace the worst failing column;
in the second pass of self-test, determining unique failing row addresses in the memory;
after completion of the second pass of self-test, allocating the spare rows to replace the failing rows.
2. The method of
3. The method of
4. The method of
5. The method of
6. The method of
7. The method of
8. The method of
9. The method of
10. The method of
11. The method of
12. The method of
13. The method of
14. The method of
15. The method of
|
1. Field of the Invention
The present invention relates generally to self-test architectures to implement data column redundancy in a Random Access Memory (RAM), either a Dynamic RAM (DRAM) or a Static RAM (SRAM), and is particularly applicable to compileable memories which are memories designed and compiled from basic building blocks termed kernels. The present invention is also particularly applicable to embedded RAM (eRAM) within microprocessor or logic chips, although it also has applicability to stand alone RAM chips.
More particularly, the subject invention pertains to self-test architectures to implement data column redundancy in a RAM memory that uses column and row redundancy with a totally integrated self-test and repair capability. A specific embodiment of a compileable 1-port SRAM is disclosed, although as noted the present invention has wider applicability to RAM memories in general, and in SRAM memories has wider applicability to dual-port or multi-port SRAM memories.
2. Discussion of the Prior Art
Compileable memories are memories which are custom designed and compiled from basic building blocks termed kernels. Compileable memories are designed or specified to have designated parameters of number of words, word width, and number of bitlines. With those parameters being specified, the design of the compileable memory is then assembled from the building block kernels.
The prior art has used many implementations of redundancy in embedded memories using both spare rows and spare columns. When using both row and column redundancy, a circuit designer must decide how best to implement the repair solution, such that the repair makes optimum use of the spare rows and columns. Some compileable memories have offered spare columns, but have offered no support for self-test, redundancy allocation or steering multiplexors. These memories simply compile an additional data column. For example, if a customer orders a 128K×32 memory, the compiler actually gives the customer a 128K×33 memory. The customer then has to figure out how to test and find the bad column, and also has to implement the steering logic as well as the fusing support circuits.
The prior art has also provided recent developments within ASICs to include row redundancy in compileable memories.
The present invention relates generally to self-test architectures to implement data column redundancy in a Random Access Memory (RAM), either a Dynamic RAM (DRAM) or a Static RAM (SRAM), and is particularly applicable to compileable memories and to embedded RAM (eRAM) within microprocessor or logic chips. Two passes of self-test are used on a memory. The first pass of self-test determines the worst failing column, the column with the largest number of unique failing row addresses, after which the spare column is allocated to replace the worst failing column. In the second pass of self-test, the BIST (Built In Self-Test) collects unique failing row addresses. At the completion of the second pass of self-test, the spare rows are allocated. Once the second pass of self-test is completed, the column and unique failing row addresses are transported to the e-fuse macros and permanently stored in the chip.
The foregoing objects and advantages of the present invention for self-test architecture to implement data column redundancy in a RAM may be more readily understood by one skilled in the art with reference being had to the following detailed description of several embodiments thereof, taken in conjunction with the accompanying drawings wherein like elements are designated by identical reference numerals throughout the several views, and in which:
The present invention provides a new approach to self-testing, allocating and repairing RAM memories and particularly compileable memories using both spare rows and columns.
The new approach of the subject invention uses two passes of self-test of a memory. The first pass of self-test determines the worst failing column, the column with the largest number of unique failing row addresses. At the completion of the first pass of self-test, the spare column is allocated to replace the worst failing column. In the second pass of self-test, the BIST (Built In Self-Test) collects unique failing row addresses as it does today for memories with spare rows only. At the completion of the second pass of self-test, the spare rows are then allocated. Once the second pass of self-test is completed, the column and unique failing row addresses are transported to the e-fuse macros and permanently stored in the chip.
The BIST generates a column address signal designating a particular column in memory to be selected and tested, which is input to a first register 11. During BIST column testing, the first register outputs the column address signal through a multiplexer 12 to the decoder 10 to select the particular column to be tested. The first register 11 also outputs a worst tested column address signal to a second repair register 13, and in normal operation, the second repair register 13 outputs the stored worst column address signal through the multiplexer 12 which is decoded by the same decoder 10 to implement the redundant data column in place of the worst tested column.
During the first pass of self-test, all columns except the selected tested column are masked or deselected such that only the un-masked or selected column can produce an error in a data-out comparator 14. The pass/fail signal from the dataout comparator 14 is then used to enable the Failing Address Register (FAR) 15 for the selected data column to store each unique failing row address, provided it has not already been stored. The FAR register includes a register entry for row address 0, row address 1 . . . row address n, as indicated schematically in FIG. 1. As the unique failing row addresses are stored, a failing row counter 16 is enabled through an OR gate 17 to count the number of unique failing row addresses for the unmasked column.
At the end of testing of the unmasked column, the count value in the counter 16 for the unmasked column is compared in comparator 18 with a worst count value from previously tested columns stored in an error count register 19. If the count value in the counter 16 for the unmasked column exceeds the previously stored worst count value from previously tested columns, then the unmasked column is determined to be the worst column tested so far. The new count value for the unmasked register is then stored in the error count register 19, and the bit-address of the unmasked data column is stored in the repair register 13. The bit-address is the binary value sent from the self-test circuit to the decoder, such that the decoder's output provides a means to identify and select the un-masked column. The stored count value in register 19 is subsequently compared to the next column's count value after testing is completed on the next column. After testing of each column, the FAR 15 and failing row counter 16 are cleared before testing the next column. At the completion of testing of all columns individually, the worst column's bit-address is stored and saved.
In an alternative embodiment, a circuit could also be implemented that does not allow the use of the spare column unless the worst column's count value exceeds a given threshold value, for example 2.
In embodiments implemented in wide RAMs, the RAM can be divided into sections of adjacent columns, with each section having its own redundant column to replace a worst column in that section, and each section can be tested in parallel with other sections of columns.
In some embodiments, when the number of unique failing row addresses in two columns exceeds the number of redundant rows in the RAM, the RAM is designated as unrepairable. For instance, a flag can be set when the number of unique failing rows in a given column exceeds the number of redundant rows in the RAM, and if a second column exceeds the number of redundant rows in the RAM, and the flag is already set, then the RAM is designated as unrepairable.
The stored bit-address value stored in the repair register 13 at the end of the first pass of self-test is then used to enable the spare column, prior to the second pass of the self-test. The same decoder 10 that was used to mask/unmask is then also used to select the steering multiplexors for implementing the spare column, as illustrated in FIG. 2.
Memory cells within the spare column are tested during the second pass during which the FAR is used to collect failing row addresses. At the end of the second pass of self-test, the FAR values are used to allocate and implement the spare rows.
The system then exits the first pass of self-test, the column test mode, and proceeds at 54 to the second pass of self-test, to test the memory with usual row test patterns, after which at 56 the results of the column and row testing are permanently implemented and recorded by blowing fuses corresponding to the test results.
While several embodiments and variations of the present invention for self-test architecture to implement data column redundancy in a RAM are described in detail herein, it should be apparent that the disclosure and teachings of the present invention will suggest many alternative designs to those skilled in the art.
Mondal, Krishnendu, Ouellette, Michael R., Eustis, Steven M., Rowland, Jeremy P.
Patent | Priority | Assignee | Title |
10025593, | Jan 07 2015 | U S BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT | Generating and executing a control flow |
10061590, | Jan 07 2015 | U S BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT | Generating and executing a control flow |
10665316, | Jun 15 2018 | Winbound Electronics Corp. | Memory device |
10782980, | Jan 07 2015 | Micron Technology, Inc. | Generating and executing a control flow |
11081202, | Oct 01 2019 | International Business Machines Corporation | Failing address registers for built-in self tests |
11221794, | Feb 20 2019 | International Business Machines Corporation | Memory array element sparing |
11334362, | Jan 07 2015 | Micron Technology, Inc. | Generating and executing a control flow |
11726791, | Jan 07 2015 | Micron Technology, Inc. | Generating and executing a control flow |
7251757, | Dec 02 2003 | International Business Machines Corporation | Memory testing |
7386769, | Sep 16 2003 | Infineon Technologies AG | On chip diagnosis block with mixed redundancy |
7565585, | Jan 13 2004 | International Business Machines Corporation | Integrated redundancy architecture and method for providing redundancy allocation to an embedded memory system |
7627792, | Feb 12 2003 | Infineon Technologies AG | Memory built-in self repair (MBISR) circuits/devices and method for repairing a memory comprising a memory built-in self repair (MBISR) structure |
7644323, | Nov 30 2004 | Industrial Technology Research Institute | Method and apparatus of build-in self-diagnosis and repair in a memory with syndrome identification |
7773438, | Jun 06 2008 | Polaris Innovations Limited | Integrated circuit that stores first and second defective memory cell addresses |
7936622, | Jul 13 2009 | Seagate Technology LLC | Defective bit scheme for multi-layer integrated memory device |
7940582, | Jun 06 2008 | Polaris Innovations Limited | Integrated circuit that stores defective memory cell addresses |
8281190, | Aug 02 2009 | BROADCOM INTERNATIONAL PTE LTD | Circuits and methods for processing memory redundancy data |
8392777, | Aug 27 2009 | Advanced Micro Devices, Inc.; Advanced Micro Devices, INC | Centralized MBIST failure information |
8400865, | Sep 08 2010 | Taiwan Semiconductor Manufacturing Co., Ltd. | Memory macro configuration and method |
8837249, | Sep 08 2010 | Taiwan Semiconductor Manufacturing Co., Ltd. | Memory macro configuration and method |
9136014, | Dec 23 2013 | STORART TECHNOLOGY SHENZHEN CO , LTD | Method for replacing the address of some bad bytes of the data area and the spare area to good address of bytes in non-volatile storage system |
9431075, | Sep 08 2010 | Taiwan Semiconductor Manufacturing Co., Ltd. | Memory macro configuration and method |
Patent | Priority | Assignee | Title |
4460997, | Jul 15 1981 | PACIFIC WESTERN SYSTEMS, INC | Memory tester having memory repair analysis capability |
4701887, | Aug 14 1984 | Fujitsu Limited | Semiconductor memory device having a redundancy circuit |
5337318, | Sep 20 1990 | Kabushiki Kaisha Toshiba | Memory IC testing apparatus with redundancy circuit |
5355340, | Dec 14 1990 | SGS-Thomson Microelectronics, Inc. | Semiconductor memory with multiplexed redundancy |
5469389, | Mar 31 1993 | Micron Technology, Inc | Semiconductor memory with memory matrix comprising redundancy cell columns associated with single matrix sectors |
5506807, | Sep 08 1992 | Thomson-CSF Semiconducteurs Specifiques | Memory circuit with redundancy |
5621691, | Aug 25 1994 | Samsung Electronics Co., Ltd. | Column redundancy circuit and method of semiconductor memory device |
5831915, | Jun 06 1996 | U S BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT | Memory device with clocked column redundancy |
5896328, | Sep 10 1997 | Mitsubishi Denki Kabushiki Kaisha | Semiconductor memory device allowing writing of desired data to a storage node of a defective memory cell |
5999450, | May 09 1996 | U S BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT | Electrically erasable and programmable non-volatile memory device with testable redundancy circuits |
6115300, | Nov 03 1998 | Altera Corporation | Column redundancy based on column slices |
6134142, | Mar 25 1998 | Sharp Kabushiki Kaisha | Redundancy method and a device for a non-volatile semiconductor memory |
6327197, | Sep 13 2000 | Silicon Access Networks, Inc. | Structure and method of a column redundancy memory |
6366508, | Dec 04 2000 | BROADCOM INTERNATIONAL PTE LTD | Integrated circuit memory having column redundancy with no timing penalty |
6373758, | Feb 23 2001 | HEWLETT-PACKARD DEVELOPMENT COMPANY, L P | System and method of operating a programmable column fail counter for redundancy allocation |
6408401, | Nov 13 1998 | SAMSUNG ELECTRONICS CO , LTD | Embedded RAM with self-test and self-repair with spare rows and columns |
6426902, | Sep 07 1999 | SAMSUNG ELECTRONICS CO , LTD | Semiconductor memory device having redundancy circuit capable of improving redundancy efficiency |
6445626, | Mar 29 2001 | IBM Corporation | Column redundancy architecture system for an embedded DRAM |
6477662, | Apr 22 1997 | Micron Technology, Inc. | Apparatus and method implementing repairs on a memory device |
6496947, | Oct 25 1999 | AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED | Built-in self repair circuit with pause for data retention coverage |
6571348, | Apr 06 1999 | HANGER SOLUTIONS, LLC | Method of and apparatus for providing look ahead column redundancy access within a memory |
6691252, | Feb 23 2001 | SAMSUNG ELECTRONICS CO , LTD | Cache test sequence for single-ported row repair CAM |
6795942, | Jul 06 2000 | AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED | Built-in redundancy analysis for memories with row and column repair |
20020108073, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Aug 22 2003 | OUELLETTE, MICHAEL R | International Business Machines Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 014483 | /0974 | |
Aug 22 2003 | MONDAL, KRISHNENDU | International Business Machines Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 014483 | /0974 | |
Aug 22 2003 | EUSTIS, STEVEN M | International Business Machines Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 014483 | /0974 | |
Aug 26 2003 | ROWLAND, JEREMY P | International Business Machines Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 014483 | /0974 | |
Sep 09 2003 | International Business Machines Corporation | (assignment on the face of the patent) | / | |||
Jun 29 2015 | International Business Machines Corporation | GLOBALFOUNDRIES U S 2 LLC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 036550 | /0001 | |
Sep 10 2015 | GLOBALFOUNDRIES U S 2 LLC | GLOBALFOUNDRIES Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 036779 | /0001 | |
Sep 10 2015 | GLOBALFOUNDRIES U S INC | GLOBALFOUNDRIES Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 036779 | /0001 | |
Nov 27 2018 | GLOBALFOUNDRIES Inc | WILMINGTON TRUST, NATIONAL ASSOCIATION | SECURITY AGREEMENT | 049490 | /0001 | |
Oct 22 2020 | GLOBALFOUNDRIES Inc | GLOBALFOUNDRIES U S INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 054633 | /0001 | |
Nov 17 2020 | WILMINGTON TRUST, NATIONAL ASSOCIATION | GLOBALFOUNDRIES U S INC | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 056987 | /0001 | |
Nov 17 2020 | WILMINGTON TRUST, NATIONAL ASSOCIATION | GLOBALFOUNDRIES Inc | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 054636 | /0001 |
Date | Maintenance Fee Events |
Jun 21 2005 | ASPN: Payor Number Assigned. |
Jan 22 2009 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Mar 25 2013 | REM: Maintenance Fee Reminder Mailed. |
Jul 30 2013 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Jul 30 2013 | M1555: 7.5 yr surcharge - late pmt w/in 6 mo, Large Entity. |
Jan 26 2017 | M1553: Payment of Maintenance Fee, 12th Year, Large Entity. |
Date | Maintenance Schedule |
Aug 09 2008 | 4 years fee payment window open |
Feb 09 2009 | 6 months grace period start (w surcharge) |
Aug 09 2009 | patent expiry (for year 4) |
Aug 09 2011 | 2 years to revive unintentionally abandoned end. (for year 4) |
Aug 09 2012 | 8 years fee payment window open |
Feb 09 2013 | 6 months grace period start (w surcharge) |
Aug 09 2013 | patent expiry (for year 8) |
Aug 09 2015 | 2 years to revive unintentionally abandoned end. (for year 8) |
Aug 09 2016 | 12 years fee payment window open |
Feb 09 2017 | 6 months grace period start (w surcharge) |
Aug 09 2017 | patent expiry (for year 12) |
Aug 09 2019 | 2 years to revive unintentionally abandoned end. (for year 12) |