An efficient algorithm for spare allocation problems

The spare allocation problem in redundant RAM is to replace faulty rows/columns of memory cells with spare rows/columns. To solve the problem, comparison-based search tree structures were used in traditional exact algorithms. These algorithms are not efficient for large problems because significant amounts of data have to be retained and copied in order to generate new partial solutions. Many data may need to be compared for the removal of each redundant partial solution. To overcome these drawbacks, an efficient algorithm is proposed in this paper. The algorithm transforms a spare allocation problem into Boolean functions, and the renowned BDD is used to manipulate them. Experimental results indicate that the proposed algorithm is very efficient in terms of speed and memory requirements. It may also be useful for problems which can be modeled as constraint bipartite vertex cover problems.

[1]  ZVI GALIL,et al.  Efficient algorithms for finding maximum matching in graphs , 1986, CSUR.

[2]  Lynn Youngs,et al.  Mapping and Repairing Embedded-Memory Defects , 1997, IEEE Des. Test Comput..

[3]  Harry R. Lewis,et al.  Data structures & their algorithms , 1991 .

[4]  Jaejoo Ha,et al.  A fast BDD algorithm for large coherent fault trees analysis , 2004, Reliab. Eng. Syst. Saf..

[5]  Jeffrey Su,et al.  A dual-core 64-bit ultraSPARC microprocessor for dense server applications , 2004, IEEE Journal of Solid-State Circuits.

[6]  Sy-Yen Kuo,et al.  An efficient perfect algorithm for memory repair problems , 2004, 19th IEEE International Symposium on Defect and Fault Tolerance in VLSI Systems, 2004. DFT 2004. Proceedings..

[7]  D. M. Blough Performance evaluation of a reconfiguration-algorithm for memory arrays containing clustered faults , 1996, IEEE Trans. Reliab..

[8]  Harry R. Lewis,et al.  Data Structures and Their Algorithms , 1991 .

[9]  Randal E. Bryant,et al.  Efficient implementation of a BDD package , 1991, DAC '90.

[10]  John R. Day A Fault-Driven, Comprehensive Redundancy Algorithm for Repair of Dynamic RAMs , 1984, ITC.

[11]  Nany Hasan,et al.  Minimum fault coverage in reconfigurable arrays , 1988, [1988] The Eighteenth International Symposium on Fault-Tolerant Computing. Digest of Papers.

[12]  B. T. Murphy,et al.  Cost-size optima of monolithic integrated circuits , 1964 .

[13]  Hon Wai Leong,et al.  A New Class of Efficient Algorithms for Reconfiguration of Memory Arrays , 1996, IEEE Trans. Computers.

[14]  Israel Koren,et al.  A Unified Negative-Binomial Distribution for Yield Analysis of Defect-Tolerant Circuits , 1993, IEEE Trans. Computers.

[15]  Jin-Fu Li,et al.  Built-in redundancy analysis for memory yield improvement , 2003, IEEE Trans. Reliab..

[16]  John Day A Fault-Driven, Comprehensive Redundancy Algorithm , 1985, IEEE Design & Test of Computers.

[17]  Donald J. Patterson,et al.  Computer organization and design: the hardware-software interface (appendix a , 1993 .

[18]  David A. Patterson,et al.  Computer Organization And Design: The Hardware/Software Interface , 1993 .

[19]  W. Kent Fuchs,et al.  Probabilistic analysis and algorithms for reconfiguration of memory arrays , 1992, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[20]  M.E. Levitt Microprocessors Lead The Way In Complex Design , 1997, IEEE Design & Test of Computers.

[21]  N. Park,et al.  Repair of memory arrays by cutting , 1998, Proceedings. International Workshop on Memory Technology, Design and Testing (Cat. No.98TB100236).

[22]  Mohamed Rafiquzzaman Microprocessors and Microcomputer-Based System Design , 1990 .

[23]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

[24]  Sy-Yen Kuo,et al.  Efficient reconfiguration algorithms for degradable VLSI/WSI arrays , 1991, 1991 Proceedings, International Conference on Wafer Scale Integration.

[25]  Marc E. Levitt Designing UltraSparc for Testability , 1997, IEEE Des. Test Comput..

[26]  R. Rudell Dynamic variable ordering for ordered binary decision diagrams , 1993, ICCAD 1993.

[27]  Anton T. Dahbura,et al.  Increased Thoughput for the Testing and Repair of RAM's with Redundancy , 1991, IEEE Trans. Computers.

[28]  Fabrizio Lombardi,et al.  New approaches for the repairs of memories with redundancy by row/column deletion for yield enhancement , 1990, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[29]  Dhiraj K. Pradhan,et al.  Modeling Defect Spatial Distribution , 1989, IEEE Trans. Computers.

[30]  Richard M. Karp,et al.  A n^5/2 Algorithm for Maximum Matchings in Bipartite Graphs , 1971, SWAT.

[31]  W. Kent Fuchs,et al.  Efficient Spare Allocation in Reconfigurable Arrays , 1986, 23rd ACM/IEEE Design Automation Conference.

[32]  D. West Introduction to Graph Theory , 1995 .

[33]  Yoshiyasu Takefuji,et al.  A parallel algorithm for allocation of spare cells on memory chips , 1991 .

[34]  Beate Bollig,et al.  Improving the Variable Ordering of OBDDs Is NP-Complete , 1996, IEEE Trans. Computers.

[35]  Sy-Yen Kuo,et al.  An efficient algorithm for reconfiguring shared spare RRAM , 2004, IEEE International Conference on Computer Design: VLSI in Computers and Processors, 2004. ICCD 2004. Proceedings..

[36]  Balaram Sinharoy,et al.  IBM Power5 chip: a dual-core multithreaded processor , 2004, IEEE Micro.

[37]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[38]  Andrzej Pelc,et al.  A Clustered Failure Model for the Memory Array Reconfiguration Problem , 1993, IEEE Trans. Computers.

[39]  I. Koren,et al.  A Unified Approach to Yield Analysis of Defect Tolerant Circuits , 1990 .

[40]  James E. Smith,et al.  PowerPC 601 and Alpha 21064: a tale of two RISCs , 1994, Computer.

[41]  Fabrizio Lombardi,et al.  Spare cutting approaches for repairing memories , 1996, Proceedings International Conference on Computer Design. VLSI in Computers and Processors.

[42]  Dilip K. Bhavsar An algorithm for row-column self-repair of RAMs and its implementation in the Alpha 21264 , 1999, International Test Conference 1999. Proceedings (IEEE Cat. No.99CH37034).

[43]  S. Tam,et al.  A 130-nm triple-V/sub t/ 9-MB third-level on-die cache for the 1.7-GHz Itanium/spl reg/ 2 processor , 2005, IEEE Journal of Solid-State Circuits.

[44]  Hon Wai Leong,et al.  Minimum fault coverage in memory arrays: a fast algorithm and probabilistic analysis , 1996, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[45]  P.W. Wyatt,et al.  A Wafer-Scale Digital Integrator Using Restructurable VSLI , 1985, IEEE Journal of Solid-State Circuits.

[46]  Rolf Niedermeier,et al.  An Efficient Exact Algorithm for Constraint Bipartite Vertex Cover , 1999, J. Algorithms.

[47]  Ping Wang,et al.  A 4-MB on-chip L2 cache for a 90-nm 1.6-GHz 64-bit microprocessor , 2005, IEEE Journal of Solid-State Circuits.

[48]  Masahiko Oka,et al.  A Defect-Tolerant Design for Full-Wafer Memory LSI , 1983, ESSCIRC '83: Ninth European Solid-State Circuits Conference.

[49]  Jianer Chen,et al.  Constrained minimum vertex cover in bipartite graphs: complexity and parameterized algorithms , 2003, J. Comput. Syst. Sci..

[50]  Stefan Rusu,et al.  Itanium 2 processor 6M: higher frequency and larger L3 cache , 2004, IEEE Micro.

[51]  C. H. Stapper,et al.  On yield, fault distributions, and clustering of particles , 1986 .

[52]  W. Kent Fuchs,et al.  Efficient Spare Allocation for Reconfigurable Arrays , 1987 .

[53]  C.L. Liu,et al.  Fast search algorithms for reconfiguration problems , 1991, [Proceedings] 1991 International Workshop on Defect and Fault Tolerance on VLSI Systems.