我们只需关注与IP核交互的部分信号即可,IP核与DDR4交互的部分不用关心。下图框出的部分即需要关注的信号。

框起来的信号的详细用法,具体可以参考官方给的 example design,此文章主要总结用法,可能并不详细。

关于写:

c0_ddr4_app_wdf_wren= 1 时数据写入DDR, 数据写入成功必须满足的条件是:

    c0_ddr4_app_cmd= 0;
    c0_ddr4_app_en = 1;
    c0_ddr4_app_rdy= 1;
    c0_ddr4_app_wdf_rdy= 1;
    c0_ddr4_app_addr 地址配置无误;

以上条件必须严格满足,否则会出现丢数甚至DDR卡死等情况。 本人测试过程中存储的数据量巨大,会一直重复覆盖读写DDR,上述条件有一个时序的错位,导致DDR在存数过程中卡死。

关于读:

c0_ddr4_app_cmd= 1 时从DDR中读取数据, 读取数据只要保证 c0_ddr4_app_addr 和 c0_ddr4_app_en 同时在 c0_ddr4_app_rdy =1 时有效即可。 读出数据与读命令之间会有接近30个时钟周期的延迟。

DDR4 SDRAM (MIG) IP 核用法相关推荐

  1. XIlinx MIG 控制DDR3 SO-DIMM内存条(二):MIG IP核学习

    目录 1 简介 2 IP核自定义 2.1 设置IP核参数 2.1.1 Pin Compatible FPGAs 2.1.2 Memory Selection 2.1.3 Controller Opti ...

  2. 如何魔改Xilinx Vivado 的MIG IP核

    出于科研需求,需要修改DDR4控制器的物理层(PHY Layer).DDR4控制器代码虽然好找,但是不一定能适配手上的ZCU104:从头开始写一个DDR4控制器工程量太大了,于是决定魔改一下Xilin ...

  3. Xilinx FPGA平台DDR3设计保姆式教程(3)MIG IP核使用教程及DDR读写时序

    干货来了,用DDR搬砖,只需要会用IP就好,Xilinx官方YYDS! ---------------------------------------------------------------- ...

  4. vfifo控制mig_Xilinx MIG IP核的研究及大容量数据缓冲区的实现

    摘要:为了使DDR3 SDRAM更方便.多样地用于工程开发中,本文对XILINX公司DDR3 SDRAM提供的MIG核进行了分析研究,并在此基础上实现了大容量数据缓冲区的逻辑设计.通过对系统中各模块的 ...

  5. vfifo控制mig_基于MIG IP核的DDR3控制器(一)

    最近学习了DDR3控制器的使用,也用着DDR完成了一些简单工作,想着以后一段可能只用封装过后的IP核,可能会忘记DDR3控制器的一些内容,想着把这个DDR控制器的编写过程记录下来,便于我自己以后查看吧 ...

  6. 【DDR3 控制器设计】(1)MIG IP 核的详解与配置

    写在前面 本系列为 DDR3 控制器设计总结,此系列包含 DDR3 控制器相关设计:认识 MIG.初始化.读写操作.FIFO 接口等.通过此系列的学习可以加深对 DDR3 读写时序的理解以及 FIFO ...

  7. Xilinx MIG IP核使用

    Xilinx MIG IP核使用 Clock Period:选择ddr芯片的工作时钟(这个时钟是从FPGA接口到DDR的时钟,ddr芯片会以这个时钟采数据) PHY to Controller Clo ...

  8. Xilinx DDR3 —— MIG IP核的原理(APP接口)

    DDR3 SDRAM(Double-Data-Rate Three Synchronous Dynamic Random Access Memory)是 DDR SDRAM的第三代产品,DDR SDR ...

  9. FPGA中DDR3 MIG ip核使用说明

    此篇是我在学习中做的归纳与总结,其中如果存在版权或知识错误请直接联系我,欢迎留言. PS:本着知识共享的原则,此篇博客可以随意转载,但请标明出处! 目录 1.DDR3工作原理 简介: DDR基础操作步 ...

最新文章

  1. 【干货】3种常见用户体验错误将扼杀好设计
  2. idea+springboot+mongodb的实战使用分享
  3. python 死循环插曲变量_FishC03 讲:python小插曲之变量和字符串
  4. 针对xml文件做提取与写入的操作
  5. java 中鼠标事件_[Java教程]js中鼠标事件总结
  6. 最近学习mpvue框架开发微信小程序,把wepy框架的项目实现到mpvue中,知道其中的一些两者之间的区别...
  7. Python面向对象模型概述
  8. 网络收包流程-软中断中process_backlog和poll方式处理流程(二)
  9. java 常量pi_Java-常量
  10. [转载]乔布斯十大经典语录
  11. QuartusII 15.0 中解决仿真报错 Error : vism-19 Faild to access library问题
  12. 怎么选择自己合适的LED驱动IC?
  13. java娘_如何调教Java娘来优化MC!
  14. 如果我恨一个人,我就领他到中关村买相机。
  15. Android Studio 模拟器重启(解决模拟器卡死问题)
  16. 《东周列国志》第五十二回 公子宋尝鼋构逆 陈灵公衵服戏朝
  17. 避坑外连腾讯云服务器redis 6379
  18. java弹力球游戏_小班弹力球游戏教案
  19. 连续性方程_连续性方程表示什么守恒
  20. Django restframework中 Serializer 序列化方法详细介绍

热门文章

  1. 两个字符串连接程序C语言,写一个函数,将两个字符串连接。 C语言
  2. CASE WHEN 和CASE ** WHEN
  3. 关于富顺豆花及其经营的调查报告
  4. 【Java 实现微信支付、Native 支付流程】,从编写代码到支付成功,一步到位!
  5. Naoqi机器人学习
  6. python读取图片路径_Python小列子-读取照片位置
  7. mplayer linux arm,【嵌入式】交叉编译移植 Mplayer 到 ARM开发板
  8. [CODEVS1537] 血色先锋队 - BFS
  9. anyRTC Flutter SDK :全面实现跨平台音视频互动
  10. linux使用wget 批量下载PDB文件