29.12.2013 Views

Functional Description -- HPC II Controller, External Memory ... - Altera

Functional Description -- HPC II Controller, External Memory ... - Altera

Functional Description -- HPC II Controller, External Memory ... - Altera

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

5-6<br />

<strong>HPC</strong> <strong>II</strong> <strong>Controller</strong> Features<br />

Related Information<br />

• Avalon Interface Specifications<br />

• <strong>Functional</strong> <strong>Description</strong> - UniPHY<br />

emi_rm_004<br />

2013.12.16<br />

<strong>HPC</strong> <strong>II</strong> <strong>Controller</strong> Features<br />

The <strong>HPC</strong> <strong>II</strong> memory controller offers a variety of features.<br />

Data Reordering<br />

The controller implements data reordering to maximize efficiency for read and write commands. The<br />

controller can reorder read and write commands as necessary to mitigate bus turn-around time and reduce<br />

conflict between rows.<br />

Inter-bank data reordering reorders commands going to different bank addresses. Commands going to the<br />

same bank address are not reordered. This reordering method implements simple hazard detection on the<br />

bank address level.<br />

The controller implements logic to limit the length of time that a command can go unserved. This logic is<br />

known as starvation control. In starvation control, a counter is incremented for every command served. You<br />

can set a starvation limit, to ensure that a waiting command is served immediately, when the starvation<br />

counter reaches the specified limit.<br />

Pre-emptive Bank Management<br />

Data reordering allows the controller to issue bank-management commands pre-emptively, based on the<br />

patterns of incoming commands. The desired page in memory can be already open when a command reaches<br />

the AFI interface.<br />

Quasi-1T and Quasi-2T<br />

One controller clock cycle equals two memory clock cycles in a half-rate interface, and to four memory clock<br />

cycles in a quarter-rate interface. To fully utilize the command bandwidth, the controller can operate in<br />

Quasi-1T half-rate and Quasi-2T quarter-rate modes.<br />

In Quasi-1T and Quasi-2T modes, the controller issues two commands on every controller clock cycle. The<br />

controller is constrained to issue a row command on the first clock phase and a column command on the<br />

second clock phase, or vice versa. Row commands include activate and precharge commands; column<br />

commands include read and write commands.<br />

The controller operates in Quasi-1T in half-rate mode, and in Quasi-2T in quarter-rate mode; this operation<br />

is transparent and has no user settings.<br />

User Autoprecharge Commands<br />

The autoprecharge read and autoprecharge write commands allow you to indicate to the memory device<br />

that this read or write command is the last access to the currently open row. The memory device automatically<br />

closes or autoprecharges the page it is currently accessing so that the next access to the same bank is quicker.<br />

This command is useful for applications that require fast random accesses.<br />

Since the <strong>HPC</strong> <strong>II</strong> controller can reorder transactions for best efficiency, when you assert the<br />

local_autopch_req signal, the controller evaluates the current command and buffered commands to<br />

determine the best autoprecharge operation.<br />

<strong>Altera</strong> Corporation<br />

<strong>Functional</strong> <strong>Description</strong>—<strong>HPC</strong> <strong>II</strong> <strong>Controller</strong><br />

Send Feedback

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!