Method and system for fast data access using a memory array
AssigneeBroadcom Corporation
InventorRobert Beat
Life of this patent
Estimating the term…
Loading patent…
AssigneeBroadcom Corporation
InventorRobert Beat
Estimating the term…
First and second address-selection information, as well as first and second read/write information, is contemporaneously provided to various enabling circuits. The enabling circuits can then enable one or more first memory cells based on the first address-selection and first read/write information, and further enable the one or more second memory cells based on the second address-selection information and read/write information. Data can then be written to, or read from, the enabled memory cells in a single memory-access cycle.
A method for reading a misaligned data variable from an array of memory cells, wherein a first portion of the misaligned data variable resides in one or more first memory cells relating to a first address, and wherein a second portion of the misaligned data variable resides in one or more second memory cells relating to a second address, the method comprising:
A method for writing a misaligned data variable to an array of memory cells, wherein a first portion of the misaligned data variable is directed to one or more first memory cells relating to a first address, and wherein a second portion of the misaligned data variable is directed to one or more second memory cells relating to a second address, the method comprising:
A memory system that can read a misaligned data variable from an array of memory cells, comprising:
A memory system that can write a misaligned data variable to an array of memory cells, comprising:
A memory system for performing single-cycle accesses of data variables held in a memory array;
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
From the US filing history. Foreign family members aren’t listed.
Arrangements for writing information into, or reading information out from, a digital store: read-write [R-W] timing or clocking circuits;…
Being a memory bus: with synchronous protocol
Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers: data managing, e.g. manipulating data before…
Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers: data output circuits, e.g. read-out amplifiers,…
Term ended 15 Dec 2022 (estimated)
1. Field of the Invention
This invention relates to methods and systems for fast access of computer-based memories.
2. Related Art
The invention is described in detail with regard to the following figures, wherein like numerals reference like elements, and wherein:
FIG. 1 is a block diagram of an exemplary system capable of accessing misaligned data in a single memory-access cycle;
FIG. 2 depicts the location-enable device of the system of FIG. 1;
A frequent problem that arises with modem computer-based systems is that, while the widths of an available physical memory are fixed, the widths of various data types can vary. For example, a particular microcomputer may have a thirty-two bit-wide memory, but may be required to access and manipulate eight-bit, sixteen-bit and thirty-two bit data. One problem that can arise with such systems is that different variables can become misaligned with the address boundaries of the physical memories.
For instance, a first data variable in a block of thirty-two bit-wide RAM may be a byte-wide variable while a second data variable may be a four-byte variable. As a result, the first data variable will occupy the first byte of a first memory location, while the second data variable will occupy the remaining three bytes of the first memory location plus the first byte of the next memory location. One unfortunate consequence of this situation is that a computer accessing the second data variable can take two separate memory-access cycles to either read or write the second variable.
However, by providing a memory array that allows contemporaneous access to two consecutive memory locations, e.g., the first and second memory locations, and that can simultaneously receive an array of read/write enable signals for the various bytes of both the even and odd memory addresses of the memory array, the misaligned data variable can be written to or read from the memory array in a single memory-access cycle. Using the example immediately above, the second data variable (represented by data bytes {d3, d2, d1, d0}) is misaligned such that the low three data variable bytes {d2, d1, d0} must be written to or read from the high three bytes {b03, b02, b01} of memory location zero and the low data variable byte {d0} must be written to or read from to the low byte {b10} of memory location one. That is, data variable bytes {d3, d2, d1, d0} must be written to or read from memory bytes {b10, b03, b02, b01} respectively.