DDR3/4MIGIP核应用--vivado

FPGA开源工作室 2022-01-21 11:15

来源:网络素材

参考资料:

《pg150-ultrascale-memory-ip》

以该手册的脉络为主线,对DDR3/4控制器进行探讨。

1.IP核结构

根据官方提供的资料,IP核主要划分为三个部分,分别是用户接口,内存控制器以及物理层接口。对于用户来说,我们需要研究清楚的是用户接口部分内容,其余两部分只需了解即可,这里就不展开论述。

读写效率

X8是表示,该内存颗粒的数据总线为8bit。常见的还有x4/x16。


2.读写时序userinterface操作


整个DDR的IP核应用,主要都是围绕这以下几个路径进行,开发者直接打交道的是IP_core的userinterface。其他物理底层的内容,由IP自行完成。主要指令路径包括:Command Path、write_Path、read_Path以及维护指令(Maintenance Commands)。


 


Command Path

顾名思义,就是读写操作指令写入的路径。当app_rdy与app_en都有效的时候,新的指令才能写入命令FIFO里,并被执行。

  • Write Path

数据内容写入IP核的路径。

从上述的时序图看来,与写入路径相关的信号有app_adf_data、app_wdf_wren以及app_wdf_end。虽然说,写入的数据路径与指令路径可以不对齐,但实际应用过程中,建议还是对齐操作,要不然容易出问题(后续调试测试的内容有提到)。

pp_wdf_end为高,表示该数据这次写入请求的最后一个数。以上图为例,4:1mode是指用户接口时钟与物理层驱动DDR的时钟之比为1:4。比如用户接口的数据总线为64bit,物理层驱动DDR芯片位宽为8bit ,BL=8, 在4:1mode下,那么正好一个用户clk可以执行完一次突发传输(DDR是在时钟上升沿和下降沿都传输数据)。所以在执行传输的过程中,app_wdf_end为高。


Read Path

数据从IP核中读出来的路径。

Maintenance Commands(维护指令)

这里可以解析为什么读写效率不能够达到百分百,由于ddr需要刷新等导致。其中启动刷新有两种模式,一种是自动刷新,即IP核自己产生满足时序的刷新请求,另外一种是通过选中“启用用户刷新和ZQCS输入”选项来启用用户模式。在此模式下,当init_calib_complete有效之后,由用户负责发出Refresh和ZQCS命令以满足DRAM组件规范所要求的速率。ZQCS是用于ZQ 校准,这个与ODT相关。


扩展一下:

ODT(On-Die Termination),是从DDR2 SDRAM时代开始新增的功能。其允许用户通过读写MR1寄存器,来控制DDR3 SDRAM中内部的终端电阻的连接或者断开。


为什么要用ODT?一个DDR通道,通常会挂接多个Rank,这些Rank的数据线、地址线等等都是共用;数据信号也就依次传递到每个Rank,到达线路末端的时候,波形会有反射,从而影响到原始信号;因此需要加上终端电阻,吸收余波。之前的DDR,终端电阻做在板子上,但是因为种种原因,效果不是太好,到了DDR2,把终端电阻做到了DDR颗粒内部,也就称为On Die Termination,Die上的终端电阻,Die是硅片的意思,这里也就是DDR颗粒。


所以,使用ODT的目的很简单,是为了让DQS、RDQS、DQ和DM信号在终结电阻处消耗完,防止这些信号在电路上形成反射,进而增强信号完整性。

3.对IP核进行二次封装


建议对IP核的User_interface再封装一层,对外只需预留例如wr_en/wr_data以及rd_en/rd_data等信号,类似于读写FIFO的端口,提高模块的后期复用。

4.调试与测试记录

手册梳理得差不多了,写个简单的程序仿真测试。期间碰到了些问题,分享出来记录一下。

  •  cmd_path与write_path没对齐。

图中所示,app_rdy为低,但是wdf_wren仍然为高,短期的话应该没有什么问题,但是如果持续一段时间,必然会导致IP核中fifo被写满,导致异常。

解决办法:


       令指令与数据路径命令对齐。在写入的时候,当app_rdy与app_wdf_rdy都有效的时候,才触发相应的动作。


数据没有写入,导致回读出来的数据不对。

从时序上来看,写入没有问题。但是我当初忽略了app_wdf_mask,这个没有赋值(正常应该赋0),导致仿真的时候,该信号一致显示高阻态。然后发现ddr4_dm_dbi_n(双向信号)信号异常。

读出来的数据一直是0.

修改过来后,问题解决。

读写效率测试


Wr:

Rd:

MEM_ADDR_ORDER        = "ROW_COLUMN_BANK";

Wr:

Rd:

仔细的话,可以观察clk与app_rdy之间的关系,不难发现为什么两者的读写效率会相差这么大。不同的地址排列,在每次读写过程中,IP的效率有很大的关系,这个与DDR的实现机制有关。详细情况在PG150里有相关说明。

*声明:本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜。

‧  END  

FPGA_IC设计课程推广

对数字IC/FPGA设计更加感兴趣的同学,可以关注由15年前端经验的工程师SKY带来的数字IC设计入门课程。已有数家IC公司用该课程做新人培训。

详情请点击下面的链接了解:数字IC/FPGA设计_从入门到精通

或点击阅读原文链接直通设计课程。

拿不到offer,几乎退全款。

更多精彩推荐,请关注我们


FPGA开源工作室 知识,创新,创艺,FPGA,matlab,opencv,数字图像,数字信号,数字世界。传递有用的知识,传递创艺的作品。FPGA开源工作室欢迎大家的关注。
评论
  • 一、SAE J1939协议概述SAE J1939协议是由美国汽车工程师协会(SAE,Society of Automotive Engineers)定义的一种用于重型车辆和工业设备中的通信协议,主要应用于车辆和设备之间的实时数据交换。J1939基于CAN(Controller Area Network)总线技术,使用29bit的扩展标识符和扩展数据帧,CAN通信速率为250Kbps,用于车载电子控制单元(ECU)之间的通信和控制。小北同学在之前也对J1939协议做过扫盲科普【科普系列】SAE J
    北汇信息 2024-12-11 15:45 110浏览
  • 应用环境与极具挑战性的测试需求在服务器制造领域里,系统整合测试(System Integration Test;SIT)是确保产品质量和性能的关键步骤。随着服务器系统的复杂性不断提升,包括:多种硬件组件、操作系统、虚拟化平台以及各种应用程序和服务的整合,服务器制造商面临着更有挑战性的测试需求。这些挑战主要体现在以下五个方面:1. 硬件和软件的高度整合:现代服务器通常包括多个处理器、内存模块、储存设备和网络接口。这些硬件组件必须与操作系统及应用软件无缝整合。SIT测试可以帮助制造商确保这些不同组件
    百佳泰测试实验室 2024-12-12 17:45 32浏览
  • 时源芯微——RE超标整机定位与解决详细流程一、 初步测量与问题确认使用专业的电磁辐射测量设备,对整机的辐射发射进行精确测量。确认是否存在RE超标问题,并记录超标频段和幅度。二、电缆检查与处理若存在信号电缆:步骤一:拔掉所有信号电缆,仅保留电源线,再次测量整机的辐射发射。若测量合格:判定问题出在信号电缆上,可能是电缆的共模电流导致。逐一连接信号电缆,每次连接后测量,定位具体哪根电缆或接口导致超标。对问题电缆进行处理,如加共模扼流圈、滤波器,或优化电缆布局和屏蔽。重新连接所有电缆,再次测量
    时源芯微 2024-12-11 17:11 109浏览
  • 习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记
    youyeye 2024-12-11 17:58 83浏览
  • 铁氧体芯片是一种基于铁氧体磁性材料制成的芯片,在通信、传感器、储能等领域有着广泛的应用。铁氧体磁性材料能够通过外加磁场调控其导电性质和反射性质,因此在信号处理和传感器技术方面有着独特的优势。以下是对半导体划片机在铁氧体划切领域应用的详细阐述: 一、半导体划片机的工作原理与特点半导体划片机是一种使用刀片或通过激光等方式高精度切割被加工物的装置,是半导体后道封测中晶圆切割和WLP切割环节的关键设备。它结合了水气电、空气静压高速主轴、精密机械传动、传感器及自动化控制等先进技术,具有高精度、高
    博捷芯划片机 2024-12-12 09:16 82浏览
  • 在智能化技术快速发展当下,图像数据的采集与处理逐渐成为自动驾驶、工业等领域的一项关键技术。高质量的图像数据采集与算法集成测试都是确保系统性能和可靠性的关键。随着技术的不断进步,对于图像数据的采集、处理和分析的需求日益增长,这不仅要求我们拥有高性能的相机硬件,还要求我们能够高效地集成和测试各种算法。我们探索了一种多源相机数据采集与算法集成测试方案,能够满足不同应用场景下对图像采集和算法测试的多样化需求,确保数据的准确性和算法的有效性。一、相机组成相机一般由镜头(Lens),图像传感器(Image
    康谋 2024-12-12 09:45 74浏览
  • 全球智能电视时代来临这年头若是消费者想随意地从各个通路中选购电视时,不难发现目前市场上的产品都已是具有智能联网功能的智能电视了,可以宣告智能电视的普及时代已到临!Google从2021年开始大力推广Google TV(即原Android TV的升级版),其他各大品牌商也都跟进推出搭载Google TV操作系统的机种,除了Google TV外,LG、Samsung、Panasonic等大厂牌也开发出自家的智能电视平台,可以看出各家业者都一致地看好这块大饼。智能电视的Wi-Fi连线怎么消失了?智能电
    百佳泰测试实验室 2024-12-12 17:33 41浏览
  • 首先在gitee上打个广告:ad5d2f3b647444a88b6f7f9555fd681f.mp4 · 丙丁先生/香河英茂工作室中国 - Gitee.com丙丁先生 (mr-bingding) - Gitee.com2024年对我来说是充满挑战和机遇的一年。在这一年里,我不仅进行了多个开发板的测评,还尝试了多种不同的项目和技术。今天,我想分享一下这一年的故事,希望能给大家带来一些启发和乐趣。 年初的时候,我开始对各种开发板进行测评。从STM32WBA55CG到瑞萨、平头哥和平海的开发板,我都
    丙丁先生 2024-12-11 20:14 68浏览
  • 习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记
    youyeye 2024-12-12 10:13 30浏览
  • 本文介绍瑞芯微RK3588主板/开发板Android12系统下,APK签名文件生成方法。触觉智能EVB3588开发板演示,搭载了瑞芯微RK3588芯片,该开发板是核心板加底板设计,音视频接口、通信接口等各类接口一应俱全,可帮助企业提高产品开发效率,缩短上市时间,降低成本和设计风险。工具准备下载Keytool-ImportKeyPair工具在源码:build/target/product/security/系统初始签名文件目录中,将以下三个文件拷贝出来:platform.pem;platform.
    Industio_触觉智能 2024-12-12 10:27 32浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦