USPatent applicationPatented

Semiconductor memory and method of storing configuration data

Granted 7 Oct 2008 · 2 office actions

Current assignee: Microchip Technology · originally Actrans System Inc.

Law firm: Law firm · Log in to unlock

Attorney: Attorney · Log in to unlock

Inventors: Jonathan G. Pabustan, Chih-Chieh Wang, Ben Sheen · Examiner: Robert Beausoliel · AU 2113 · TC 2100

Life of the application

25 dated events
⤢ drag to zoom20062008201020122014201620182020202220242026ProsecutionOwnershipTerm & fees
ProsecutionOwnershipTerm & feeshover for detail · click to open

Abstract

Redundantly repaired semiconductor memory and method in which the configuration data for the memory is stored in an area of the main memory array which is known to be free of bad bits, along with a signature code which serves as a pointer and verifies the validity of the configuration data. In one disclosed embodiment, the data is stored in a configuration memory which is divided into a plurality of areas of equal size and known starting addresses. The number of areas is greater than the number of permitted repairs, and the areas which do not contain defects are available for storing configuration data including device settings, repair information, and the like.

Description

4 parts
›BACKGROUND OF THE INVENTION

1. Field of Invention

This invention pertains generally to semiconductor memory devices and, more particularly, to a semiconductor memory and method of storing configuration data for the memory.

2. Related Art

Configuration data for semiconductor memory devices is typically stored in fuses or other volatile or non-volatile devices, e.g. registers, which are outside the main memory array. Such data is generated during the testing of the devices and may, for example, include wafer information, wafer sorting information, failed addresses, option control information, and other information which is utilized during start-up of the devices.

In order to increase manufacturing yields, many semiconductor memory devices include redundant areas or cells which can be used to replace defective portions of the array. This technique is sometimes referred to as redundancy repair, and in memory devices utilizing it, the redundancy repair information is included in the configuration data. The repair information is stored after all repairs have been made, and when reading information from the memory, the repair information needs to be ready before the actual array read. If the configuration data were stored in the main memory array, there is a chance that it could be written into a repaired area, and that it could not be read out correctly because the repair information which needs to be known in order to read it would not be available yet.

›OBJECTS AND SUMMARY OF THE INVENTION

It is in general an object of the invention to provide a new and improved semiconductor memory and method of storing configuration data.

Another object of the invention is to provide a device and method of the above character in which the configuration data for the memory is stored in the main memory array.

These and other objects are achieved in accordance with the invention by storing the configuration data for a redundantly repaired semiconductor memory in an area of the main memory array which is known to be free of bad bits, along with a signature code which serves as a pointer and verifies the validity of the configuration data. In one disclosed embodiment, the data is stored in a configuration page which is divided into a plurality of areas of equal size and known starting addresses. The number of areas is greater than the number of permitted repairs, and the areas which do not contain bad bits are available for storing configuration data including device settings, repair information, and the like.

›BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating one embodiment of a semiconductor memory according to the invention.

FIG. 2 is a bit diagram of the configuration memory in the embodiment of FIG. 1 .

FIG. 3 is a flow chart of a routine for reading the configuration data out of the configuration memory of FIG. 2 .

FIG. 4 is a block diagram of a circuit for addressing the configuration memory to locate the configuration data.

FIG. 5 is a flow chart of a routine for locating an area for storing configuration data in the configuration memory of FIG. 2 .

›DETAILED DESCRIPTION

As illustrated in FIG. 1 , the memory has a main array 11 which can be of conventional design with a plurality of storage cells or bits which are organized by rows and columns. The memory is redundantly repairable in that it includes redundant cells or bits which can be used to replace defective portions of the array.

A configuration page or row 12 is included in the main memory array. This page is divided into a plurality of areas of equal size and known starting addresses, with the number of areas preferably being one greater than the number of repairs which can be made in the array. Configuration data is stored in one of the areas.

The organization of the configuration memory is illustrated in FIG. 2 . In this particular example, the number of repairs which can be made in the memory array is six, and the configuration page is divided into seven areas, each of which has room for a signature code X and the configuration data or testing information. The signature code is only programmed into the area which contains the configuration data, and it serves as a pointer and verifies the validity of that data. The signature code is chosen to be unique so that it will not be confused with other code, and its size depends upon the size of the area and the amount of information that needs to be stored in the area. It is typically a minimum of 4 bits.

As illustrated in FIG. 1 , the memory also includes configuration control logic 13 which reads the configuration data from the configuration page and delivers it to a latch 14 for the chip control and decoders which are represented generically by block 16 .

The manner in which the configuration data or test information is read out of the memory is illustrated in FIG. 3 . Starting with the address assigned to the internal address of the first area (area 1 in the example of FIG. 2 ), that area is checked for the signature code. If the signature code is found, the configuration data or test information in the cells immediately following it is read out and used. If the signature code is not found, the next area is checked, and the process continues until the signature code is found. If no signature code is found at any of the starting addresses, then the logic control stops at the last one, and the area starting at that address is used as a default area until a valid signature code has been defined. That usually happens only with a new chip with no data in the memory array.

A circuit for addressing the configuration memory to locate the configuration data is illustrated in FIG. 4 . This circuit includes an multiplexer 18 to which the starting address for each area is applied. Configuration area address control 19 steps the multiplexer through those addresses in response to a clock input, and when the signature code is found, it stops the multiplexer at that address. The address is applied to the address decoder for the memory, and the data following the signature code is delivered to the configuration latch 14 in FIG. 1 .

Since the configuration data must be known and must be valid in order to configure the memory, the configuration data is stored in an area which contains no bad bits and does not need to be repaired. The manner in which this is done in one presently preferred embodiment is illustrated in FIG. 5 . The entire memory array is first tested to identify all bad bits and the addresses at which they occur, and each area of the configuration memory is then checked for bad bits. This is done by setting an index I to zero and then testing the first area of the configuration memory for bad bits or a failed address. If a bad bit or failed address is found, the index is incremented and compared with the value Z which is the number of areas in the configuration memory. If an area I containing no bad bits is found, the entire configuration memory is erased, and the configuration data is programmed into the area with no bad bits. The data is then read out of that area, and if the read is successful, the program stops and the configuration data has been stored in an area which is known to be good.

If the count reaches Z and no good area has been found or if the data is not read successfully from an area in which it is stored, the chip is deemed to be defective and is discarded.

Alternatively, instead of using a configuration page which is divided into areas with predetermined starting addresses, the memory array can be searched for an area which does not need to be repaired, i.e. has no bad bits, and is large enough to store the configuration data and the signature code. If this is done, the configuration memory is scanned from the beginning until the signature code is found and the configuration data or test information can be read out. Although this process may have the disadvantage of taking longer to do the reading to find the signature code, it has the advantage of requiring a smaller page size than one which is divided into a plurality of areas with known addresses.

It is also possible to store the configuration data in a register which is outside the main memory. That register can either be divided into areas with known starting addresses, or it can have the signature code and configuration data stored in an another area of the array which is known to be good.

The invention has a number of important features and advantages, particularly when the configuration memory is part of the main memory array. In that case, the configuration or test information is programmed, erased and read in the same way as the rest of the array, and the configuration memory has the same quality and performance as the main array. It also eliminates the need to create a separate array outside the main memory for storing the configuration data.

It is apparent from the foregoing that a new and improved semiconductor memory and method of storing configuration data have been provided. While only certain presently preferred embodiments have been described in detail, as will be apparent to those familiar with the art, certain changes and modifications can be made without departing from the scope of the invention as defined by the following claims.

Claims as granted

15 claims

Log in to read the claims of this application.

Log in to unlock

Classifications

6 codes
IPC · International Patent Classification
Section G — Physics
  • G06F11/00
USPC · US Patent Classification
714/6714/5714/42714/8714/7

Claim changes

Soon
Coming soonHow the claims changed between publication and grant

See which claims were amended, added or cancelled during examination, with every added and removed word marked.

AmendedAddedCancelledUnchanged

The published claims of this application are not paired with the granted ones in what we hold.

File wrapper

⤢ drag to zoomJan 2005Jul 2005Jan 2006Jul 2006Jan 2007Jul 2007Jan 2008Jul 2008USPTOApplicantNon-final rejectionResponse after non-finalResponse after final
USPTOApplicanthover for detail · click to open
Pendency
3.6 y
1,323 days filing → grant
Office actions
2
non-final + final
Responses
2
no RCE
Examiner
Robert Beausoliel
art unit 2113 · TC 2100
Citations: 8 back · 0 forward

See the full prosecution history — every USPTO and applicant action on this file, in order.

Log in to unlock

Documents

Log in to open the documents of this file: the application as filed, every office action and response, the notice of allowance.

Log in to unlock

Chain of title

⤢ drag to zoom20062008201020122014201620182020202220242026Owner 2liens, releases & corrections
TitleLienReleasehover for detail · click to open

See the full assignment history — every owner this patent has passed through, with recordation dates and reel/frame numbers.

Log in to unlock