Resources Contact Us Home
Multi-processor DRAM controller that prioritizes row-miss requests to stale banks

Image Number 2 for United States Patent #5745913.

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 old row is stale or closed.

  Recently Added Patents
Communication system including a switching section for switching a network route, controlling method and storage medium
Adjustable box extender
System, method and computer program product for monitoring and controlling network connections from a supervisory operating system
Method and system of extending battery life of a wireless microphone unit
Level-shift circuit, electro-optical device, and level shift method
System for presenting media services
Monitoring cloud-runtime operations
  Randomly Featured Patents
Liquid crystal display elements with opposite twist domains aligned in the same direction on one substrate
Vehicle remote operation system and on-board device
Knowledge based method of controlling an injection molding machine
Device and method for intravaginal, barrier-type prevention of conception and infection
Film with substrate layer containing antiblocking agent
Aircraft fuselage lining system
Treatment apparatuses and methods using proton
Electrostatic discharge protection circuit
Floor and bounded surface sweeper machine
Device for attaching to a vehicle to form a fork lift