开篇闲聊:我的DDR3“启蒙”故事
坦白说,我第一次接触DDR3的时候,整个人是懵的。
什么“AXI总线时序”、什么“地址映射”、什么“性能指标”……这些词每个字都认识,连在一起就不知道在说什么。只记得项目工期压得紧,组长天天追问进度,那种又急又慌的感觉,现在还记得。
幸亏当时有位同事,看我实在没头绪,耐心地给我画了张“路线图”。他没讲太多高深理论,就告诉我:“别慌,你先弄懂这个,再去做那个,一步一步来。”
这个专栏,就是想把我当年得到的那份帮助,连同我自己后来摸爬滚打总结的经验,一起传递给你。它不是什么高深的架构师秘籍,就是一份能让大家在遇到实际项目的时候能快速上手的“实战路线图”。
专栏文章路线图(就按这个顺序看,准没错)
第一站:读懂IP核与总线
文章1:FPGA DDR3实战(一):详解Xilinx MIG IP核配置
文章2:FPGA DDR3实战(二):手把手教你仿真DDR3(MIG IP核)
如果对AXI4总线不是很了解的,可以看下面这一篇,熟悉的朋友就可以跳过了
【FPGA数据总线】详解AXI4-FULL总线:解锁高性能数据传输的完整潜能-优快云博客
第二站:不考虑工程环境,自己先尝试驱动DDR3,让它进行基础的读写操作
文章3:FPGA DDR3实战(三):使用AXI VIP作为主设备进行DDR3工程级仿真-优快云博客
如果对AXI_VIP不是很了解,可以看一下这两篇
AXI_VIP学习:FPGA验证利器:全方位解析AXI Verification IP (AXI VIP)-优快云博客
AXI_VIP使用例程:AXI VIP实战:手把手教你用AXI_VIP驱动AXI BRAM-优快云博客
第三站:实际项目,领导说,你把这个板子上的DDR3测一下,怎么测?测什么?
功能测试:
文章4:FPGA DDR3实战(四):DDR地址映射自动化测试(1)—— 测试程序设计与代码逻辑-优快云博客
文章5:FPGA DDR3实战(五):实现高效的DDR3自动化测试----AXI_data_generate仿真-优快云博客
文章6:FPGA DDR3实战(六):DDR3地址Mapping自动化测试-优快云博客
性能测试:
文章7:FPGA DDR3实战(七):Xilinx FPGA DDR3性能深度测试----吞吐率与延迟精准分析-优快云博客
这里面会用到几个不常见的ip核,一个是产生高吞吐数据流用的ATG,还有总线性能监控的APM,不熟悉的朋友可以看一下这两篇
ATG:详解Xilinx AXI Traffic Generator IP核:AXI4总线性能验证利器-优快云博客
APM:详解AXI Performance Monitor IP核:精准测量AXI总线性能的利器-优快云博客
说完了这些,以上我们都是建立在使用AXI4接口的基础使用DDR3,当然这也是DDR3 90%的用法,也就是说,熟悉上面的文章,你就可以应对DDR3 90%的应对场景了,给领导交差那是没问题了,嘻嘻嘻
不过在实际工程中,我们还是会遇到一种情况,就是持续数据量很大的实时任务,对内存访问延迟要求比较高的项目,这类情况下,我们会需要使用DDR3的原生MIG接口
文章8:FPGA DDR3实战(八):深入探索Xilinx FPGA中DDR3的原生MIG接口及其关键时序-优快云博客
接下来我们会用一个实际的项目,来说明一下原生MIG接口的使用。
文章9:FPGA DDR3实战(九):基于DDR3的高速故障录播系统(一)—— 需求分析与架构设计-优快云博客
文章10:FPGA DDR3实战(十):基于DDR3的高速故障录播系统(二)—— 数据流转换与时钟域设计-优快云博客
文章11:
FPGA DDR3实战(十一):基于DDR3的高速故障录播系统(三)—— 地址管理与故障定位机制-优快云博客
文章12:
FPGA DDR3实战(十二):基于DDR3的高速故障录播系统(四)——原生MIG接口实战编程-优快云博客
最后想对你说
技术这条路,一个人摸索确实很辛苦。我很幸运,在迷茫时遇到了肯指点我的引路人。现在,我希望通过这个专栏,能为你扮演一次类似的角色。
专栏里的所有内容,都源于我真实踩过的坑和填坑的经验。它想做到的,就是让你在面对DDR3时,不再不知所措,而是能一步步地、心中有数地完成从硬件对接到性能优化的全过程。
希望这份“路线图”,能帮你少走一些弯路。
祝你调试顺利!
FPGA DDR3实战入门指南

被折叠的 条评论
为什么被折叠?



