A semiconductor memory is partitioned into a predetermined number of sections. A first register stores dynamic values indicative of whether corresponding cells of the memory are defective, and includes an input terminal coupled to receive addresses from an associated address generator. A second register stores address mappings of corresponding pages in each of the partitioned sections, and includes an input terminal coupled to receive addresses from the address generator. A multiplexer includes first and second input terminals coupled to receive addresses from the address generator and mapped addresses from the second register, respectively, a control terminal coupled to receive the dynamic values from the first register, and an output terminal coupled to the address input lines of the memory. When the address generator generates a memory address in response to a request for instructions or data from an associated CPU, the first register checks whether the addressed memory location is defective. If the corresponding memory cell is not defective, information is read from or written to the corresponding memory cell. If, on the other hand, the corresponding memory cell is defective, the information is re-addressed to a corresponding cell of another partition of the memory array.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A structure for re-addressing memory locations between first and second partitioned sections of a memory, comprising: an address generator for generating an address corresponding to a memory cell within said first partitioned section of said memory in response to a request made by an associated CPU; a first register having an input port coupled to receive said address and having an output port, said first register storing information indicative of whether said memory cell is defective; a second register having an input port coupled to receive said address and having an output port, said second register storing cell address mappings between corresponding first and second partitioned sections of said memory; and a multiplexer having a first input terminal coupled to receive said address, a second input terminal coupled to said output terminal of said second register, a control terminal coupled to said output terminal of said first register, and an output terminal coupled to an address input line of said memory, said multiplexer forwarding either said address or one of said address mappings to said memory in response to said information indicative of whether said memory cell is defective.
2. The structure of claim 1, wherein said memory comprises a non-volatile memory.
3. The structure of claim 1, wherein said first register stores dynamic values indicative of whether said memory cell is defective.
4. The structure of claim 3, wherein said second register stores alternate addresses for said defective memory cell.
5. The structure of claim 1, wherein said first and second registers comprises look-up tables.
6. The structure of claim 1, wherein said address mapping information is user-selectable.
7. The structure of claim 1, wherein said address mapping information is dynamic and increments from a last available memory location in said second partitioned section of said memory.
8. An application-specific integrated circuit capable of re-addressing memory locations between first and second partitioned sections of a memory, comprising: an address generator for generating an address in response to a request made by an associated CPU, said address corresponding to a memory cell within said first partitioned section of said memory; a first register having an input port coupled to receive said address and having an output port, said first register storing information indicative of whether said memory cell is defective; a second register having an input port coupled to receive said address and having an output port, said second register storing cell address mappings between corresponding first and second partitioned sections of said memory; and a multiplexer having a first input terminal coupled to receive said address, a second input terminal coupled to said output terminal of said second register, a control terminal coupled to said output terminal of said first register, and an output terminal coupled to an address input line of said memory, said multiplexer forwarding either said address or one of said address mappings to said memory in response to said information indicative of whether said memory cell is defective.
9. The structure of claim 8, wherein said application-specific integrated circuit comprises said CPU.
10. The structure of claim 8, wherein said first register stores dynamic values indicative of whether said memory cell is defective.
11. The structure of claim 8, wherein said information indicative of whether said memory cell is defective is provided to said first register during power-up of said application-specific integrated circuit.
12. A method for re-addressing one or more cells of a memory, comprising: partitioning said memory into first and second sections; generating an address identifying a memory location in said first partitioned section of said memory; determining whether said memory location is defective; and providing to said memory, in response to said determining step, either said address or a mapped address identifying a memory location in said second partitioned section of said memory, to facilitate storing said data in said memory.
13. The method of claim 12, wherein said address is generated in response to a request made by a CPU.
14. The method of claim 13, wherein said memory is on-chip within a host application-specific integrated circuit.
15. The method of claim 14, wherein said application-specific integrated circuit comprises said CPU.
16. The method of claim 12, wherein information indicative of whether said memory location in said first partitioned section is defective is stored in a first register and said mapped address is stored in a second register.
17. The method of claim 12, wherein said providing step is implemented using a multiplexer having first and second input terminals coupled to receive said address and said mapped address, respectively, a control terminal coupled to receive said information from said first register, and an output terminal coupled to an address input line of said memory.
18. The method of claim 12, wherein said determining step is performed during power-up of said memory.
19. The method of claim 12, wherein said first and second partitioned sections of said memory are user-selectable.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
November 17, 1998
May 29, 2001
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.