Built-in redundancy architecture for computer memories

Information

  • Patent Grant
  • 6222783
  • Patent Number
    6,222,783
  • Date Filed
    Wednesday, April 26, 2000
    24 years ago
  • Date Issued
    Tuesday, April 24, 2001
    23 years ago
Abstract
A computer main memory is divided into multiple physically-separated arrays of memory cells. Each array has associated with it an array of spare memory cells. The array of spare memory cells is located adjacent to its associated main memory cell array. The rows in the spare memory cell array are aligned with the rows in the associated main memory cell array. The main memory blocks are divided into subblocks. Within each subblock, all columns are addressed by a single multiplexer unique to that subblock. A data input bus and a data output bus is provided corresponding to each subblock in the main memory block. Each data input bus and data output bus is electrically coupled to a main memory bus, and each spare memory block. Data can therefore be readily directed either to one of the subblocks in the main memory or to one of the spare memory blocks.
Description




FIELD OF THE INVENTION




This invention relates to architectures for computer memories, and in particular to the architecture of computer memories provided with a main memory and a spare memory.




BACKGROUND OF THE INVENTION




Computer memories, such as static random access memories (SRAMs), include large arrays of physical memory cells. In the manufacture of chips bearing large arrays of physical memory cells, a very large percentage, if not all, of the chips will have a defect in at least one of the memory cells. A defect in at least one of the cells is unacceptable. In the past, for SRAMs, it has been impractical to discard all but those chips that contain no defective cells. In DRAMs, which are generally much larger arrays, discarding all chips with defects results in unacceptably low yields. As a result, memories are manufactured with both a main memory and a spare memory. The spare memory is specifically provided to replace defective memory cells in the main memory.




In a conventional memory, all of the cells on a single chip are disposed in a single block memory array. Devices for accessing the cells are arranged on two sides of the block memory array. For example,

FIG. 1

depicts a prior art memory


10


including block memory array


12


. Memory


10


may be a 64 K memory having 512 rows by 128 columns of cells. The rows are selected by block row decoders


14


, physically located on one side of block memory array


12


, adjacent the ends of the row lines. Each row line is electrically connected to block row decoders so that appropriate signals can be received and transmitted. The columns arc connected to 8 input/outputs through a series of devices. At the end of each column line, there are line precharges


16


, corresponding in size, in bits, to the number of columns. Physically adjacent line precharges


16


, and appropriately electrically connected, are read/write multiplexers


18


. In the example of

FIG. 1

, with a block memory array


12


having 128 columns, there are eight 16 channel read/write multiplexers


18


. Adjacent read/write multiplexers


18


are column decoders


19


and read/write circuits


20


, which are electrically connected to input/outputs (not shown). Block controls


22


are located along an edge of the line precharges, the multiplexers, and the column decoders and read/write circuits, and along an edge of the block row decoders, to provide appropriate controls.




Conventionally, when a bad cell is detected, physical connections are laser burned for the row and column lines from the bad cell to a cell in a spare memory block.




In an application filed simultaneously herewith, a method and system have been developed for avoiding the need for creating physical connections. Rather, a look up table is maintained with the address of each bad cell, and a corresponding address of the corresponding cell in the spare memory block.




SUMMARY OF THE INVENTION




In one aspect of the invention, there is provided a computer memory having a selected number of main memory cells, which memory cells are located on a single substrate but in a plurality of physically separated arrays. Each array has associated with it an array of spare memory cells. The array of spare memory cells is located adjacent to its associated main memory cell array. In particular, the rows in the spare memory cell array are aligned with the rows in the associated main memory cell array. The main memory blocks are divided into subblocks. Within each subblock, all columns are addressed by a single multiplexer unique to that subblock.




In another aspect of the invention, a computer memory has one or more main memory blocks and a spare memory block corresponding to each main memory block. Each main memory block has a main memory input/output bus coupled to the main memory block. A data input bus and a data output bus is provided corresponding to each subblock in the main memory block. Each data input bus and data output bus is electrically coupled to a main memory bus, and each spare memory block. Data can therefore be readily directed either to one of the subblocks in the main memory or to one of the spare memory blocks.











BRIEF DESCRIPTION OF THE FIGURES





FIG. 1

is a partially schematic diagram of an exemplary prior art memory.





FIG. 2

is a partially schematic diagram of a memory block according to the invention.





FIG. 3

is a partially schematic diagram of one-half of a memory block of FIG.


2


.





FIG. 4

is a partially schematic diagram of a spare block in a memory block of FIGS.


2


and


3


.











DETAILED DESCRIPTION OF A PREFERRED EMBODIMENT




Referring now to

FIG. 2

, there is shown a partially schematic view of the architecture of a computer memory


100


in accordance with the invention. Computer memory


100


may be an embedded memory, i.e., a memory that is supplied with other devices, such as logic devices or circuits other than memory circuits. Memory


100


is disposed on a substrate of conventional materials, such as silicon. It will be understood that memory


100


includes a large number of memory cells, each of which is defined by the intersection of a row and column. Memory


100


is not disposed in a single array of cells but is divided into multiple subarrays


104


and


108


. Subarray


104


has associated with it input/output devices generally indicated by block


117


. Similarly, subarray


108


has associated there with input/output devices generally indicated by block


113


. Input/output devices at blocks


112


,


113


are coupled to address decoder block, input data latches, and output buffers, in a conventional manner, as well as to built-in self-test and built-in self-repair circuits on the substrate. Subarray


104


is further divided into multiple blocks, and in particular, eight blocks


116


, indicated as Block


8


through Block


15


in FIG.


2


. Each block has the same number of rows and columns. A single block of main row decoders


120


is provided physically along the ends of rows and intermediate two of blocks


116


, and in particular intermediate Block


11


and Block


12


. Main row decoders


120


are adapted to provide row signals in accordance with well-known techniques.




Subarray


108


has defined at one end thereof spare block


124


. Spare block


124


includes one or more spare arrays, and associated controls, as described in more detail below. Spare block


124


and blocks


118


are arranged in a substantially continuous array. The array is not entirely continuous, as main row decoders


126


are disposed among blocks


118


. In addition, controls in spare block


124


are disposed intermediate the spare array and blocks


118


.




Referring now to

FIG. 3

, there is shown the architecture of subarray


104


in more detail. As is conventional in memory architectures, there are a series of data input busses


130


and a series of data output busses


132


. As is conventional, busses


130


and


132


are coupled through data lines to devices external to memory


100


. In a one megabyte SRAM, there may be eight of each bus, each one corresponding to one of the main memory blocks


116


. Each data input bus


130


has a main output


134


and one output


136


corresponding to each spare block. In the illustrated embodiment, there are two spare blocks


140


,


142


. Each main output


134


is coupled to main input/output bus


144


. Main input/output bus


144


is in turn coupled to each of main blocks


116


. Each main block


116


includes a write/read circuit


117


and multiplexers


118


, as is conventional. In a megabyte SRAM, each main block


116


may have a 64 Kb capacity.




Data output busses


132


each have a main input


146


and spare inputs


148


corresponding to each spare block. In the embodiment illustrated in

FIG. 4

, there are two spare inputs


148


. Each main input


146


is coupled to main input/output bus


144


. Each spare input


148


is coupled to one of the spare blocks.




Each input bus


130


and each output bus


132


is coupled to a receive a spare control signal from a spare control decoder


150


. The spare control signal identifies whether or not the main output or input or one of the spare outputs or inputs is to be enabled. The spare control signal also indicates which internal data bus is to be used, which subarray of the spare array, and which column in the spare array are to be addressed.




Referring now to

FIG. 4

, there is shown a schematic diagram of the architecture of a spare memory block according to the invention. Spare memory block


125


has two blocks


126


, each of which includes a spare block memory array


154


, line precharges


156


coupled to the spare block memory array; a read/write multiplexer


158


, and a read/write circuit


160


. Line precharges


156


, read/write multiplexer


158


, and read/write circuit


160


are controlled by spare block control


162


. Details of the foregoing components are well-known in the art. The memory arrays are arranged in column, or bit lines, intersected by row, or word lines. Spare block row decoders


164


and spare block controls


166


are provided in a conventional manner for row decoders and block controls in SRAM memory arrays.




Numerous advantages are obtained by the foregoing architecture. As the spare blocks are physically associated with the main memory blocks, there are no delays in access time to the spare blocks. By using the same input/output busses, duplication of devices to accommodate both spare and main memory blocks is minimized. By splitting the main memory into multiple separate blocks, spare blocks can more readily be located physically adjacent a corresponding portion of the main memory block, thereby eliminating delays in access time.




While a method and apparatus of the claimed invention have been described with respect to a preferred embodiments, variations within the spirit of the invention will be readily apparent to those of skill in the art.



Claims
  • 1. A computer memory architecture, comprising:a first main memory block, a first spare memory block, a main memory input/output bus coupled to said first main memory block, a first memory data input bus comprising a main output and a first spare output, said main output being coupled to said main memory input/output bus, and said first spare output being coupled to said first spare memory block, a first memory data output bus comprising a main input and a first spare input, said main input being coupled to said main memory input/output bus, and said first spare input being coupled to said first spare memory block.
  • 2. The apparatus of claim 1, further comprising:a second main memory block coupled to said main memory input/output bus, a second memory data output bus comprising a main output and a first spare output, said main output being coupled to said main memory input/output bus, and said first spare output being coupled to said first spare memory block, and a second memory data input bus comprising a main input and a first spare input, said main input being coupled to said main memory input/output bus, and said first spare input being coupled to said first spare memory block.
  • 3. The apparatus of claim 2, further comprising a second spare memory block, said first main memory data input bus further comprising a second spare output, said second spare output being coupled to said second spare memory block, said first main memory data output bus further comprising a second spare input, said second spare input being coupled to said second spare memory block, said second main memory data input bus further comprising a second main memory data input bus second spare output, said second main memory data input bus second spare output being coupled to said second spare memory block, said second main memory data output bus further comprising a second main memory data output bus second spare input, said second main memory data output bus second spare input being coupled to said second spare memory block.
  • 4. The apparatus of claim 1, further comprising a second spare memory block, said first main memory data input bus further comprising a second spare output, said second spare output being coupled to said second spare memory block, said first main memory data output bus further comprising a second spare input, and said second spare input being coupled to said second spare memory block.
  • 5. The apparatus of claim 1, further comprising spare control decoders, and wherein said first spare memory block further comprises a multiplexor, said spare control decoders having a first output coupled to said multiplexor.
  • 6. The apparatus of claim 1, further comprising spare control decoders, said spare control decoders having an output coupled to said first data output bus and said first data input bus.
Parent Case Info

This application is a divisional of copending U.S. application Ser. No. 09/102,499, filed on Jun. 22, 1998 U.S. Pat. No. 6,072,735.

US Referenced Citations (9)
Number Name Date Kind
5246607 Ishobashi Sep 1993
5379259 Fryita Jan 1995
5416740 Fyita et al. May 1995
5459690 Rieger et al. Oct 1995
5914907 Kobayashi et al. Jun 1999
6072735 Komoriya et al. Jun 2000
6084818 Ooishi Jul 2000
6144577 Hidaka Nov 2000
6144591 Vlasenko et al. Nov 2000