Patent · US Expired

Multi-processor DRAM controller that prioritizes row-miss requests to stale banks

US5745913A · kind A · utility

131Cited by
22References
19Claims
0Family size

Assignee

Inventors

Key dates

Filing dateAug 5, 1996
Grant dateApr 28, 1998
Priority date
Expiry dateAug 5, 2016

Classification

  • Technology area (CPC G)Physics
  • CPC primaryG06F12/0215
  • WIPO fieldComputer technology
  • WIPO sectorElectrical engineering

Abstract

Memory requests from multiple processors are re-ordered to maximize DRAM row hits and minimize row misses. Requests are loaded into a request queue and simultaneously decoded to determine the DRAM bank of the request. The last row address of the decoded DRAM bank is compared to the row address of the new request and a row-hit bit is set in the request queue if the row addresses match. The bank's state machine is consulted to determine if RAS is low or high, and a RAS-low bit in the request queue is set if RAS is low and the row still open. A row counter is reset for every new access but is incremented with a slow clock while the row is open but not being accessed. After a predetermined count, the row is considered "stale". A stale-row bit in the request queue is set if the decoded bank has a stale row. A request prioritizer reviews requests in the request queue and processes row-hit requests first, then row misses which are to a stale row. Lower in priority are row misses to non-stale rows which have been more recently accessed. Requests loaded into the request queue before the cache has determined if a cache hit has occurred are speculative requests and can open a new row when the…

Source: USPTO / EPO open patent data. Objective bibliographic and citation counts.