Altera External Memory PHY Interface User Manual
Page 62

3–46
Chapter 3: Functional Description—ALTMEMPHY (nonAFI)
Design Considerations
External Memory PHY Interface (ALTMEMPHY) (nonAFI) Megafunction User Guide
© January 2010
Altera Corporation
■
ctl_mem_cs_n_h
■
ctl_mem_ras_n_h
■
ctl_mem_we_n_h
■
ctl_mem_odt_h
As can be seen in the waveform (
), the sequence of commands are
PreCharge (PCH), ACT, and NOP, followed by a series of write commands.
1. The controller puts the five consecutive write commands with a starting address of
0 × with increments of four (0000, 0004, 0008, 000c, 0010), see the top of
under the PHY Command Input label.
2. The controller generates the following signals two clock cycles after
ctl_mem_wdata_valid
and must supply the data ctl_mem_wdata along with
these two clock cycles. Refer to
under the PHY Write Data Input label.
3. The ALTMEMPHY megafunction generates the write command at the memory
interface after five-to-seven memory clock (mem_clk) cycles (to accommodate the
write delay). In this example, the address and commands are generated using the
negative edge of the memory clock, see
under the PHY Command
Output
label.
4. The address and commands are of 2T period and the chip select is of 1T period.
5. The data (mem_dq) at the memory interface is presented after two memory clock
cycles of write latency. The write latency is equal to the CAS latency -1 for DDR2
SDRAM only (for DDR SDRAM it is always 1). For this example, CAS latency is
equal to three.
6. The generation of DQS signals is controlled using the
control_mem_wdata_valid
signal, which is very important as the generation
of the DQS signal is also dependent on the CAS latency parameter.
shows that the controller state machine asserts the
ctl_mem_wdata_valid
signal to perform a write transaction. The write data
(ctl_mem_wdata) should be available at the same time when the signal is asserted
high. The ctl_mem_wdata_valid signal is asserted for five clock cycles (phy_clk)
or ten clock cycles (mem_clk) to transfer five data transfers. The write data is only
valid when the ctl_mem_wdata_valid is asserted high and is held in the wdata
registers until the write occurs. In
, the write data bus ctl_mem_wdata is
of width 64 and each burst transfer is of the length four. The 64-bit wide data is
transferred to the memory as four 16-bit wide data, as shown by mem_dq. The DQS
clock is twice the frequency of the clock that clocks the ctl_mem_wdata and the DQ
data is transferred during both the edges of DQS.