UWSpace is currently experiencing technical difficulties resulting from its recent migration to a new version of its software. These technical issues are not affecting the submission and browse features of the site. UWaterloo community members may continue submitting items to UWSpace. We apologize for the inconvenience, and are actively working to resolve these technical issues.
 

A High Performance DDR4 Memory Controller on FPGA

Loading...
Thumbnail Image

Date

2024-02-22

Authors

Germchi, Danesh

Journal Title

Journal ISSN

Volume Title

Publisher

University of Waterloo

Abstract

We introduce a high-performance DDR4 SDRAM memory controller synthesizable design for AMD/Xilinx's FPGA devices. Due to limitations in operating frequency, the design on FPGA presents additional challenges compared to ASIC: in particular, the controller must be able to issue 4 DRAM commands in a single clock cycle. Utilizing Xilinx's memory controller (MIG) as a foundational framework, our design incorporates features such as the discrimination of received requests based on their origin and the implementation of the FR-FCFS arbitration scheme in the front-end scheduler. Additionally, our memory controller utilizes the Round Robin arbitration scheme in the back-end scheduler to optimize throughput through effective bank parallelism. Our memory controller is able to perform DRAM initialization, refresh, and calibration. Its design is extensible, allowing for further development of other types of DDR4 memory controllers and adaptation for various DDR4 speed grades. To evaluate the performance of our memory controller and Xilinx's MIG, we conducted extensive assessments using both realistic and synthetic traces in simulation. The obtained results provide a comprehensive comparison of their performance across various scenarios, offering valuable insights for further developments in the field.

Description

Keywords

DDR4, DDR4 Memory Controller, AMD Xilinx MIG, FPGA, High Performance Memory Controller

LC Keywords

Citation