US8601331B2

Defective memory block remapping method and system, and memory device and processor-based system using same

Summary by NHIP

Iterative memory address remapping

The method offsets an input block address by summing sizes of non-functional blocks located between an initial address and the input address. It iteratively performs this calculation until a stored defective block address exceeds the current output address, using stored addresses ordered from lowest to highest.

Claim Score by NHIP

Read claim 1, the broadest

Abstract

A non-volatile memory device includes a block remapping system that offsets an input block address by the addresses of non-functional blocks to provide an output block address that is used to address the memory device. The system generates the output block addresses by, in effect, adding to the input block address the addresses of all non-functional blocks of memory that are between an initial address and the output block address. The system performs this function be comparing the input block address to the address of any defective block. If the address of the defective block is less than or equal to the input block address, the addresses of all defective blocks starting at the block address are added to the input block address. The system then iteratively performs this process using each output block address generated by the system in place of the input block address.

US8601331B2, drawing sheet 1
Sheet 1 of 9

Term

0.3 yearsleft in the term

Expires 22 January 2027.

  1. Priority and filed
  2. Granted
  3. Today
  4. Expires

20 claims: 4 independent, 16 dependent

  1. 1
    Broadest claimClaim Score 84, broad(NHIP)A method of addressing a memory, comprising:receiving an input address for access to the memory;determining a number of non-functional memory blocks between an initial address of the memory and the input address;incrementing the input address by the number of non-functional memory blocks to yield an output address;and accessing the memory using the output address.
  2. 7
    A method of replacing bad memory blocks of an array, comprising:mapping addresses for the bad memory blocks in the array to next available good memory blocks in the array;and storing the addresses and respective sizes of the bad memory blocks in the array, the stored addresses and respective sizes of the bad memory blocks used in calculating remapped block addresses for the next available good memory blocks in the array.
  3. 12
    A memory, comprising:an array of memory blocks;programmable memory configured to be programmed with addresses of bad memory blocks of the array and further configured to be programmed with respective sizes of bad memory blocks;a remapping circuit coupled to the programmable memory and configured to determine a number of bad memory blocks between a memory block to which an input address is mapped and an initial block of memory and further configured to calculate a remapped address for the input address to access the memory block to which the input address is mapped based, at least in part, on the programmed addresses and respective sizes.
  4. 18
    A memory, comprising:redundancy fuse sets configured to be programmed with block addresses for non functional memory blocks and block sizes for the non-functional memory blocks;a comparator coupled to the redundancy fuse sets and configured to compare an input block address with the block addresses programmed in the redundancy fuse sets;an adder configured to add to the input block address the block sizes for non-functional memory blocks having addresses not greater than the input block address to provide a mapped block address;and an address decoder coupled to the adder and configured to access a memory block corresponding to the mapped block address.