Method and apparatus for reducing latency in a memory system by interleaving SRAM and DRAM accesses
AssigneeMosaid Technologies Incorporated
InventorNagi Nassief Mekhiel
Life of this patent
Estimating the term…
Abstract
A memory controller controls a buffer which stores the most recently used addresses and associated data, but the data stored in the buffer is only a portion of a row of data (termed row head data) stored in main memory. In a memory access initiated by the CPU, both the buffer and main memory are accessed simultaneously. If the buffer contains the address requested, the buffer immediately begins to provide the associated row head data in a burst to the cache memory. Meanwhile, the same row address is activated in the main memory bank corresponding to the requested address found in the buffer. After the buffer provides the row head data, the remainder of the burst of requested data is provided by the main memory to the CPU.
Claims12
A memory system comprising:
- at least one bank of memory;
- a memory controller;
- a buffer;
- and
- a buffer controller, wherein
- said memory controller controls the at least one bank of memory;
- said buffer contains a plurality of buffer entries, each buffer entry including an address portion and a data portion;
- and
- said address portion including an address referencing a plurality of memory locations in said at least one bank of memory and said data portion including a first portion of the data stored in the said plurality of memory locations.
A method of retrieving data from a memory system, said method comprising:
- (a) receiving a read request for data contents of a memory location;
- (b) searching a first memory block for a portion of said data contents;
- (c) substantially simultaneously with step (b), accessing a second memory block;
- (d) in the event that said portion of said data contents is stored in said first memory block, retrieving said portion from said first memory while substantially simultaneously retrieving a remaining portion of said data contents from said second memory block;
- and
- (e) in the event that said portion of said data contents is not stored in said first memory block, retrieving said portion and said remaining portion of said data contents from said second memory block.
Dependencies are inferred from the claim text.