Flexible cache architecture using modular arrays
First Claim
1. A method of implementing a flexible memory architecture within an integrated circuit, said method comprising:
- establishing at least 20 independent sub-arrays of memory within an integrated circuit, wherein each of said independent sub-arrays of memory includes its own decode circuitry for decoding a requested address and its own I/O circuitry;
establishing at least one of said independent sub-arrays of memory as a redundant sub-array of memory, wherein said at least one redundant sub-array of memory is usable to effectively repair a defect within at least one other of said independent sub-arrays of memory; and
distributing said independent sub-arrays around a core of said integrated circuit that comprises an irregularly shaped boundary, wherein said independent sub-arrays are distributed about said irregularly shaped boundary of said core in a manner that manages white space present on said integrated circuit in a desired manner.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method which implement a memory component of an integrated circuit as multiple, relatively small sub-arrays of memory to enable great flexibility in organizing memory within the integrated circuit are provided. In a preferred embodiment, the memory component of an integrated circuit is implemented as multiple, relatively small sub-arrays of memory, which enable a designer great flexibility in arranging such sub-arrays within an integrated circuit. Also, in a preferred embodiment, the memory component of an integrated circuit is implemented as multiple memory sub-arrays that are each independent. For example, in a preferred embodiment, each memory sub-array comprises its own decode circuitry for decoding memory addresses that are being requested to be accessed by an instruction, and each memory sub-array comprises its own I/O circuitry. In one implementation of a preferred embodiment, each of the independent memory sub-arrays implemented in an integrated circuit comprises no more than approximately five percent of the total memory implemented on the integrated circuit. In another implementation, each of the independent memory sub-arrays on an integrated circuit is no larger than approximately the average size of other non-memory components implemented on the integrated circuit. Additionally, in further implementation, the memory component of an integrated circuit comprises at least a 20 independent memory sub-arrays. Therefore, in a preferred embodiment, each independent sub-array is relatively small in size to enable great flexibility in organizing the memory on an integrated circuit. Furthermore, because each sub-array is independent, greater flexibility is available in repairing defects through redundancy.
23 Citations
18 Claims
-
1. A method of implementing a flexible memory architecture within an integrated circuit, said method comprising:
-
establishing at least 20 independent sub-arrays of memory within an integrated circuit, wherein each of said independent sub-arrays of memory includes its own decode circuitry for decoding a requested address and its own I/O circuitry;
establishing at least one of said independent sub-arrays of memory as a redundant sub-array of memory, wherein said at least one redundant sub-array of memory is usable to effectively repair a defect within at least one other of said independent sub-arrays of memory; and
distributing said independent sub-arrays around a core of said integrated circuit that comprises an irregularly shaped boundary, wherein said independent sub-arrays are distributed about said irregularly shaped boundary of said core in a manner that manages white space present on said integrated circuit in a desired manner. - View Dependent Claims (2, 3, 4, 5, 6, 7, 16, 17, 18)
routing data from a defective independent sub-array of memory to said redundant sub-array of memory in order to effectively repair said defective independent sub-array of memory.
-
-
7. The method of claim 6 wherein said routing data step enables repairing at least one defect selected from the group consisting of:
- memory cell defect, decode circuitry defect, and input/output circuitry defect.
-
16. The method of claim 1 wherein said sub-arrays are distributed to form a memory array having an irregularly shaped boundary.
-
17. The method of claim 16 wherein said memory array comprises at least one row of sub-arrays that has more sub-arrays than at least one other row.
-
18. The method of claim 16 wherein said memory array comprises at least one column of sub-arrays that has more sub-arrays than at least one other column.
-
8. An integrated circuit comprising:
-
a core comprising a plurality of non-memory components; and
a memory component that is implemented as multiple independent memory sub-arrays that are each no larger in size than approximately the average size of said plurality of non-memory components, wherein said multiple independent memory sub-arrays form a memory array having an irregularly shaped boundary. - View Dependent Claims (9, 10, 11, 14)
-
-
12. A computer system comprising:
-
a core that comprises a processor that executes instructions, said core comprising a width and a length; and
a cache structure accessible by said processor to satisfy memory access requests, wherein said cache structure includes multiple independent sub-arrays of memory that each includes no more than five percent of said cache structure and that each arc no wider than 33 percent of said width of said core and are no longer than 33 percent of said length of said core, wherein said multiple independent sub-arrays of memory form a memory array having an irregularly shaped boundary. - View Dependent Claims (13, 15)
-
Specification