Claims
- 1. A memory comprising:
one or more memory elements; one or more redundant memory elements; and programmable replacing circuit for replacing a selected memory element with a selected one of the redundant memory elements, the programmable replacing circuit including a non-volatile memory element for storing a value, and controlled at least in part by the value stored in the non-volatile memory element wherein the non-volatile memory element is configured into a scan chain with other non-volatile memory elements, wherein the value stored in the non-volatile memory element is programmable by scanning the value into the scan chain, and wherein the programmable replacing circuit uses the value stored in the non-volatile memory element to determine which of the memory elements is selected for replacement by the selected one of redundant memory element.
- 2. A memory according to claim 1, wherein the selected memory element is defective.
- 3. A memory according to claim 1, wherein the value stored by the non-volatile memory element includes one or more data bits.
- 4. A memory according to claim 1, wherein the one or more memory elements are arranged into a number of rows and a number of columns, the number of rows being addressed by a provided row address.
- 5. A memory according to claim 4, wherein the value stored in the non-volatile memory element is a row address that corresponds to a selected row of the memory elements.
- 6. A memory according to claim 5, wherein the programmable replacing circuit includes:
a comparator for comparing the row address stored in the non-volatile memory element with the provided row address; and providing means for providing one or more signals that cause the selected memory element to be replaced with the selected one of the redundant memory elements when the row address stored in the non-volatile memory element matches the provided row address.
- 7. A memory according to claim 5, wherein the non-volatile memory element includes a lookup table that has a number of addressable locations, where the addressable locations are addressed by the provided row address, the lookup table providing one or more signals that cause the selected memory element to be replaced with the selected one of the redundant memory elements when the provided row address corresponds to a row that includes the selected memory element.
- 8. A memory comprising:
one or more memory elements arranged in a number of columns; one or more redundant columns; a number of multiplexers, one for each of the number of columns, each of the multiplexers selecting between the corresponding column and the one or more redundant columns; and the programmable replacing means coupled to each of the number of multiplexers for causing each multiplexer to select either the corresponding column or one of the redundant columns such that a selected one of the columns is replaced with a selected one of the redundant columns, the programmable replacing means including a number of non-volatile memory elements for storing values, one non-volatile memory element for each multiplexer, the programmable replacing means controlled at least in part by the values stored in the non-volatile memory elements, wherein each of the number of non-volatile memory elements is configured into a scan chain such that the non-volatile memory elements are programmable by scanning values into the scan chain, and wherein the programmable replacing means uses a value stored in a non-volatile memory element to determine which of the redundant columns is selected to replace the corresponding column.
- 9. A memory according to claim 8, wherein each column has two or more rows of memory elements.
- 10. A memory according to claim 8, wherein the selected column includes at least one memory element that is defective.
- 11. A memory comprising:
one or more memory elements arranged in a number of rows; one or more redundant rows; and programmable replacing means for replacing a selected one of the rows with a selected one of the redundant rows, the programmable replacing means including a non-volatile memory element for storing a value, and controlled at least in part by the value stored in the non-volatile memory element wherein the non-volatile memory element is configured into a scan chain with other non-volatile memory elements, wherein the value stored in the non-volatile memory element is programmable by scanning the value into the scan chain, and wherein the programmable replacing means uses the value stored in the non-volatile memory element to determine which row is selected for replacement by the selected redundant row.
- 12. A memory according to claim 11, wherein each row has two or more columns of memory elements.
- 13. A memory according to claim 11, wherein the selected row includes at least one memory element that is defective.
- 14. A memory according to claim 11, wherein the number of rows are addressed by a provided row address.
- 15. A memory according to claim 14, wherein the programmable replacing means enables the selected redundant row when the provided address corresponds to the selected row.
- 16. A memory according to claim 15, wherein the programmable replacing means disables the selected row when the provided address corresponds to the selected row.
- 17. A memory according to claim 14, wherein the value stored in the non-volatile memory element is a row address that corresponds to the selected row of the memory elements.
- 18. A memory according to claim 17, wherein the programmable replacing means includes:
a comparator for comparing the row address stored in the non-volatile memory element with the provided row address; and providing means for providing one or more signals that cause the selected row to be replaced with the selected redundant row when the row address stored in the non-volatile memory element matches the provided row address.
- 19. A memory according to claim 18, wherein the programmable replacing means further includes:
disabling means for disabling the selected row when the row address stored in the non-volatile memory element matches the provided row address.
- 20. A method for replacing a selected memory element of a memory with a redundant memory element, the method comprising the steps of:
storing a value in a non-volatile memory, wherein the non-volatile memory element is configured into a scan chain with other non-volatile memory elements, and wherein the value is stored in the non-volatile memory element by scanning the value into the scan chain; and replacing the selected memory element with the redundant memory element if the value stored in the non-volatile memory matches a first predetermined value.
- 21. A method according to claim 20, wherein the replacing step does not replace the selected memory element with the redundant memory element if the value stored in the non-volatile memory does not match the first predetermined value.
- 22. A method according to claim 20, wherein the memory includes two or more memory elements, each memory element addressable by a provided address.
- 23. A method according to claim 22, wherein the value stored in the non-volatile memory is an address that corresponds to the selected memory element.
- 24. A method according to claim 23, wherein the first predetermined value corresponds to the provided address.
- 25. A method according to claim 22, wherein the two or more memory elements are arranged into a number of rows and a number of columns, each of the number of rows being addressed by a provided row address.
- 26. A method according to claim 25, wherein the value stored in the non-volatile memory is a row address that corresponds to a selected row of memory elements.
- 27. A method according to claim 26, wherein the replacing step includes the steps of:
comparing the row address stored in the non-volatile memory with the provided row address; and providing one or more signals that cause the selected row of memory elements to be replaced with a redundant row of memory elements when the row address stored in the non-volatile memory matches the provided row address.
- 28. A method according to claim 26, wherein the non-volatile memory includes a lookup table that has a number of addressable locations, where the addressable locations are addressed by the provided row address, the method further comprising the steps of:
loading a value into a location in the lookup table that is addressed by a row address that corresponds to the selected row of memory elements, the value causing the selected row of memory elements to be replaced with the redundant row of memory elements when accessed; and accessing the location in the lookup table when the provided row address matches the row address of the selected row of memory elements.
- 29. The memory according to claim 1, wherein the programmable replacing circuit is configured to permit programming of the non-volatile memory elements after packaging of the memory.
- 30. The memory according to claim 8, wherein the programmable replacing means is configured to permit values to be scanned into the scan chain after packaging of the memory.
- 31. The memory according to claim 11, wherein the scan chain is accessible for programming after packaging of the memory.
- 32. The method according to claim 20, further comprising storing the value in the non-volatile memory in response to a self-test routine after installation of the memory in a system.
RELATED APPLICATION
[0001] This application is a continuation of U.S. patent application Ser. No. 09/618,492, filed on Jul. 18, 2000 and claims priority to that application.
Continuations (1)
|
Number |
Date |
Country |
Parent |
09618492 |
Jul 2000 |
US |
Child |
10685297 |
Oct 2003 |
US |