【Xilinx FPGA】DDR3 MIG IP 仿真

这篇具有很好参考价值的文章主要介绍了【Xilinx FPGA】DDR3 MIG IP 仿真。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Memory Interface Generator (MIG 7 Series)是 Xilinx 为 7 系列器件提供的 Memory 控制器 IP,使用该 IP 可以很方便地进行 DDR3 的读写操作。本文主要记录 Xilinx DDR3 MIG IP 的仿真过程,包括 IP 配置和 DDR3 读写仿真两部分内容。

目录

1 MIG IP 配置

2 DDR3 读写仿真


1 MIG IP 配置

        在 Vivado 开发平台 IP Catelog 中,输入 mig,然后选择 Memory Interface Generator (MIG 7 Series),打开 IP 向导。

ddr3 mig,Xilinx FPGA 开发,fpga开发

ddr3 mig,Xilinx FPGA 开发,fpga开发

        Component Name 可自行定义,这里填写 ddr3_controller。

ddr3 mig,Xilinx FPGA 开发,fpga开发

        Memory 类型选 DDR3 SDRAM。

ddr3 mig,Xilinx FPGA 开发,fpga开发

        时钟周期根据 FPGA 速度等级,和速率要求进行选择。这里选了 2500 ps,对应频率为 400MHz。

ddr3 mig,Xilinx FPGA 开发,fpga开发

        Input Clock 是 MIG 内部 PLL 所需要的输入时钟,板卡带了 100M 外部晶振,因此这里选 10000ps(100MHz).

ddr3 mig,Xilinx FPGA 开发,fpga开发

        Memory 地址排序选 BANK -> ROW -> COLUMN.

ddr3 mig,Xilinx FPGA 开发,fpga开发

        System Clock 其实是前面的 Input Clock,这里用了外部时钟信号,所以选 Single-Ended;Reference Clock 是 FPGA PLL 生成的时钟(频率为 200MHz),这里配置为 No Buffer。

ddr3 mig,Xilinx FPGA 开发,fpga开发

        根据硬件原理图,分配 DDR3 管脚。

ddr3 mig,Xilinx FPGA 开发,fpga开发

ddr3 mig,Xilinx FPGA 开发,fpga开发

2 DDR3 读写仿真

        IP 配置完成后,右键点击 ddr3_controller IP,选择 “Open IP Example Design... ”,在弹出的窗口中选择参考工程路径,确认后等待打开参考工程。

ddr3 mig,Xilinx FPGA 开发,fpga开发

        在仿真之前,需要确认仿真器。在 Setting -> Simulation 中,选择 Target simulator 为想要的仿真器,这里选择 Modelsim Simulator。

ddr3 mig,Xilinx FPGA 开发,fpga开发

        确定仿真器之后,点击左侧 Flow Navigator 的 Run Simulation,等待片刻,就会打开 Modelsim 并编译设计文件。

ddr3 mig,Xilinx FPGA 开发,fpga开发

ddr3 mig,Xilinx FPGA 开发,fpga开发

        修改 xsim.tcl 文件,将 traffic_gen 文件替换为用户设计文件,仿真自己编写的模块。

#Copyright 1991-2017 Mentor Graphics Corporation
#
#All Rights Reserved.
#
#THIS WORK CONTAINS TRADE SECRET AND PROPRIETARY INFORMATION WHICH IS THE PROPERTY OF 
#MENTOR GRAPHICS CORPORATION OR ITS LICENSORS AND IS SUBJECT TO LICENSE TERMS.
# Simulation script

onbreak {resume}

# create library
if [file exists work] {
   file delete -force work
}
vlib work
vmap work ./work

# Compile MIG IP design files
vlog -incr "./src/ddr3_controller/rtl/clocking/*.v"
vlog -incr "./src/ddr3_controller/rtl/controller/*.v"
vlog -incr "./src/ddr3_controller/rtl/ecc/*.v"
vlog -incr "./src/ddr3_controller/rtl/ip_top/*.v"
vlog -incr "./src/ddr3_controller/rtl/phy/*.v"
vlog -incr "./src/ddr3_controller/rtl/ui/*.v"

vcom "./src/ddr3_controller/rtl/phy/*.vhd"

vcom "./src/ddr3_controller/rtl/ddr3_controller_mig_sim.vhd"
vcom "./src/ddr3_controller/rtl/ddr3_controller.vhd"

vlog -incr "./src/ddr3_controller/ddr3/glbl.v"
vlog -incr "./src/ddr3_controller/ddr3/wiredly.v"

vlog -sv +define+x2Gb +define+sg125 +define+x16 "./src/ddr3_controller/ddr3/ddr3_model.sv"

# Compile user design files
# ...


# Start simulation
vsim -voptargs=+acc +notimingchecks work.ddr_scheduler_tb -L unisims_ver -L secureip -t 1fs glbl

        ddr_scheduler 设计了 2 个写通道和 2 个读通道,读/写通道命令按照优先级分别写入 wr_cmd fifo 和 rd_cmd fifo。

ddr3 mig,Xilinx FPGA 开发,fpga开发

 ddr3 mig,Xilinx FPGA 开发,fpga开发

        从 pstate 的状态跳转可以看出,写命令优先级高于读命令。

ddr3 mig,Xilinx FPGA 开发,fpga开发文章来源地址https://www.toymoban.com/news/detail-701337.html

到了这里,关于【Xilinx FPGA】DDR3 MIG IP 仿真的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【FPGA】十三、Vivado MIG IP核实现DDR3控制器(1)

    文章目录 前言 一、DDR3基础知识 二、MIG  IP核的配置 三、DDR3 IP核用户端接口时序 1、DDR3 IP核接口说明 2、DDR3 IP核读写时序 ① 写命令时序:  ② 写数据时序:  ③ 读数据时序: 总结         我们在进行FPGA开发应用当中,经常会用到存储器来保存数据,常用的存储器有RO

    2024年02月16日
    浏览(65)
  • 到中流击水—XILINX (MIG) DDR3 UI接口

    1.DDR3内核时钟:DDR3内部逻辑部分使用的时钟,用户侧无需关心,跟DDR3芯片内核性能相关。 2.DDR3接口时钟:DDR3与外界通信实际使用的时钟(实际时钟),跟DDR3芯片接口性能相关。 3.DDR3等效时钟:DDR3与外界通信实际的有效时钟(双倍速率)。 1.FPGA参考时钟:FPGA用于MIG IP数据

    2024年02月06日
    浏览(46)
  • 【FPGA】MIG DDR3读写逻辑测试

            笔者在之前通过microblaze软核的方式实现了DDR3芯片的读写测试,当时对于Xilinx MIG DDR控制器的理解还比较肤浅。还是想通过控制用户接口时序的方式来读写DDR,扩展和加深自己对DDR的理解。 MIG IP核配置请看我的前一篇文章 【FPGA测试】Microblaze测试DDR读写_microblaze

    2024年01月22日
    浏览(32)
  • 使用MIG IP 核实现DDR3读写测试学习

    1、简介         DDR3 SDRAM(Double-Data-Rate Three Synchronous Dynamic Random Access Memory)是 DDR SDRAM 的第三代产品,相较于 DDR2,DDR3 有更高的运行性能与更低的电压。DDR SDRAM 是在 SDRAM 技术的基础上发展改进而来的,同 SDRAM 相比,DDR SDRAM 的最大特点是双沿触发,即在时钟的上升沿和

    2024年01月16日
    浏览(35)
  • DDR3 控制器 MIG IP 详解完整版 (VIVADO&Verilog)

    DDR系列文章分类地址: (1)DDR3 基础知识分享 (2)DDR3 控制器 MIG IP 详解完整版 (AXI4VivadoVerilog) (3)DDR3 控制器 MIG IP 详解完整版 (nativeVivadoVerilog) (4)基于 DDR3 的串口传图帧缓存系统设计实现 (5)基于 DDR3 的native接口串口局部传图缓存系统设计实现 (6)基于 DDR3 的

    2024年02月06日
    浏览(70)
  • 超详细的FPGA使用MIG调用SODIMM DDR3内存条接口教程

    SODIMM 接口DDR3适配额外的内存条才能满足数据缓存的需求,这种需求一般用于高端项目,DDR3 SDRAM 常简称 DDR3, 是当今较为常见的一种储存器, 在计算机及嵌入式产品中得到广泛应用,特别是应用在涉及到大量数据交互的场合。 本文以XC7K325T-FFG900-2L为例,记录MIG的配置过程,

    2024年02月02日
    浏览(35)
  • DDR3 控制器 MIG IP 详解完整版 (native&VIVADO&Verilog)

    DDR系列文章分类地址: (1)DDR3 基础知识分享 (2)DDR3 控制器 MIG IP 详解完整版 (AXI4VivadoVerilog) (3)DDR3 控制器 MIG IP 详解完整版 (nativeVivadoVerilog) (4)基于 DDR3 的串口传图帧缓存系统设计实现 (5)基于 DDR3 的native接口串口局部传图缓存系统设计实现 (6)基于 DDR3 的

    2024年02月13日
    浏览(55)
  • DDR3 控制器 MIG IP 详解完整版 (AXI4&VIVADO&Verilog)

    DDR系列文章分类地址: (1)DDR3 基础知识分享 (2)DDR3 控制器 MIG IP 详解完整版 (AXI4VivadoVerilog) (3)DDR3 控制器 MIG IP 详解完整版 (nativeVivadoVerilog) (4)基于 DDR3 的串口传图帧缓存系统设计实现 (5)基于 DDR3 的native接口串口局部传图缓存系统设计实现 (6)基于 DDR3 的

    2024年02月11日
    浏览(34)
  • Xilinx FPGA DDR3设计(三)DDR3 IP核详解及读写测试

    引言 :本文我们介绍下Xilinx DDR3 IP核的重要架构、IP核信号管脚定义、读写操作时序、IP核详细配置以及简单的读写测试。 7系列FPGA DDR接口解决方案如图1所示。 图1、7系列FPGA DDR3解决方案 1.1 用户FPGA逻辑(User FPGA Logic) 如图1中①所示,用户FPGA逻辑块是任何需要连接到外部

    2024年02月06日
    浏览(41)
  • 使用VIVADO中的MIG控制DDR3(AXI接口)一——AXI简介

            最近,因为需要,学习了AXI总线协议和DDR3相关的知识,花了很多的时间去找各种相关的资料,深刻明白查资料的不容易,这里将所学到的东西做一个总结,同时给需要的人提供一些便利,有问题的欢迎一起讨论学习、共同进步。          首先来说一下有关AXI总

    2024年02月08日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包