Professional Documents
Culture Documents
read_fifo_rd_en
DDR4 IP Core
422
Authorized licensed use limited to: Northrop Grumman Space Systems. Downloaded on June 11,2023 at 03:46:29 UTC from IEEE Xplore. Restrictions apply.
B. Write Status is ready, and app_wdf_rdy is a ready signal for the user data
When the IP core is initialized and the FIFO fifo_prog_full interface. Only when the write address and write data are valid,
signal is pulled high, the read and write control logic enters the the data is written into the correct address. As shown in the
write state until the write FIFO fifo_prog_empty is pulled high following write timing diagram, the write address is valid only
to stop writing. During the writing process, DDR4 SDRAM when the app_rdy signal and app_en signal are both high.
cannot be full. For the IP core, when the IP core is given a When app_wdf_rdy and app_wdf_wren both go high, the write
write command and the app_rdy and app_wdf_rdy signals are data is valid. However, writing addresses and writing data does
both high, it indicates that the IP core is ready to write. The not require that it was valid at the same time, and can differ by
app_rdy signal is an indication that user interface of the IP core a few clock cycles.
wr_fifo_prog_full &&!ddr_full
wr_fifo_prog_empty ||
ddr_full
wr_fifo_prog_full || rd_fifo_prog_full
|| cnt <= low_cnt
When designing the write state in this paper, write address control logic enter the read state. When writing a state, the
and write data is controlled to be valid at the same time in amount of data required to be read out should be less than the
order to prevent the clock cycle of writing address and write amount of data written. The read state stops until the
data onto exceeding the valid value. That is, both app_rdy and fifo_prog_full signal of the FIFO is pulled up, or the FIFO is
app_wdf_rdy are simultaneously written with valid addresses read, or the remaining unread data onto memory is less than
and valid data. Other clock cycles pull down the address valid low_cnt.
signal app_en and the data valid signal app_wdf_wren.
For the IP core, when the IP core is given a read command
and the app_rdy signal is pulled high, it indicates that the IP
clk core is ready to read. When the read address is valid, the data
corresponding to the address in DDR4 will be read out after
app_cmd WRITE WRITE WRITE several cycles. When the read and write control logic are in the
app_addr Addr a Addr b Addr c
read state, and when the app_rdy signal is high, the effective
read address is written, and the address effective signal app_en
app_en is pulled down in other clock cycles.
app_rdy
app_wdf_rdy
clk
app_wdf_wren app_en
app_wdf_end
app_rdy
423
Authorized licensed use limited to: Northrop Grumman Space Systems. Downloaded on June 11,2023 at 03:46:29 UTC from IEEE Xplore. Restrictions apply.
IV. READING AND WRITING EFFICIENCY TEST AND efficiency is the read-write efficiency of the read-write control
ANALYSIS module.
Because the activation command and PRECHARGE In order to test the read-write controller module, the
command will be activated when the row address is refreshed memory capacity of DDR4 SDRAM used in this paper is 8GB
in BANK. When DDR4 SDRAM read and write data, there and the maximum communication speed is 2400MT/s. IP core
will be some time gaps. Therefore, reading and writing control user interface data width is 512 bits, and the interface clock
modules need to be read and write efficiency test. rate is 300MHz. The steady reading and writing efficiency of
First, in the actual test, an error checking module was added the final test results is 90%. According to the formula, the final
to the DDR4 read-write controller. This article gives the actual data rate can be calculated to be 8.64GB/s, which fully meets
signal waveform captured by the ILA, as shown in Fig. 6: the data rate requirements of the DDR4 SDRAM cache part in
the ultra-high speed acquisition and processing system.
V. CONCLUSIONS
This paper analyzes the DDR4 SDRAM operation principle,
and analyzes, designs and realizes the DDR4 read-write
controller logic based on the Virtex UltraScale DDR4_v2.2 IP
core. In order to make the module easier to use, the read-write
controller is packaged as a FIFO. Finally, this paper tested read
and write efficiency in a Virtex UltraScale series of FPGAs.
After testing, the controller has the advantages of stable work,
high efficiency, simple interface and good portability.
REFERENCES
[1] To Thoma, Niu Penglin; Wang, Juan, Su Changyi, Khoo Chong Lin,
Sharma, Ajay Kumar, Klokotov, Dmitry, Liu Wei, and Wang Yong,
Ultrascale FPGA DDR4 2400 Mbps system level design optimization
and validation, 2015.
[2] ZHANG Gang, JIA Jianchao, and ZHAO Long, “Design and realization
of DDR3 SDRAM Controller Based on FPGA ,” Electronic Sci. &Tech.,
vol. 27, issue 1, pp. 70-73, 2014.
[3] Tao Yue, “Digital Test System Design and Realization Based on
DDR3,” Applied Mechanics and Materials, vol. 543, issue 3082,pp.
Fig. 6. DDR4 read and write operation test diagram
1128-1131, 2014.
[4] Anonymous,JEDEC Solid State Technology Association; JEDEC
As you can see in Fig. 6, when reading and writing, the Announces Key Attributes of Upcoming DDR4 Standard. Electronics
error signal has been low, and the error is not caught. Business Journal, 2011.
Second, the data rate calculation formula for DDR4 read- [5] Pham.N.; DrepsD.; Mandrekar.R.; Na.N., “Driver design for DDR4
memory subsystems,” IEEE 19th Electrical Performance of Electronic
write controller is given. Packaging and Systems (EPEPS), pp. 297-300, 2010.
1 [6] SONG Ming, ZHAO Yingxiao, and LIN Qianqiang, “Design and
Data rate width u clk u efficiency u (1) Optimization of DDR3 SDRAM Controller Based on FPGA,” Electronic
2 Sci. & Tech., vol. 29, issue 11, pp. 47-50, 2016.
Where, width is the data bit width of the IP core user
interface, clk is the clock rate of the user interface, and
424
Authorized licensed use limited to: Northrop Grumman Space Systems. Downloaded on June 11,2023 at 03:46:29 UTC from IEEE Xplore. Restrictions apply.