首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

专家秘笈连载十六:在Zynq上用MIG扩展内存(3终)-Vivado篇(2)

专家秘笈连载十六:在Zynq上用MIG扩展内存(3终)-Vivado篇(2)

硬件平台:ZC706开发板
软件工具:Vivado 2013.2

上一篇文章提供了一个在Zynq上使用MIG的设计,其配置为:MIG的AXI端口工作在200MHz, 32bit;DDR3 Memory接口工作在800MHz(1600Mbps), 64bit;MIG工作在4:1模式。实际上对于XC7Z045来说,FPGA侧DDR3 PHY最高可以工作在1866Mbps上,不过因为ZC706板载的SODIMM内存条只能支持到1600Mbps,所以实际使用的是这个配置。
在这种配置下,MIG DDR3 Memory接口工作频率比较高,如果从FPGA IP访问PL DDR3的数据流量比较大,这个设计比较有优势。如果从CPU访问PL DDR3的数据流量比较大,GP端口的吞吐率(或者说工作频率)就成为关键了。在实践中,GP端口的工作频率可以达到250MHz,这样软件访问PL DDR3的性能就会得到明显的改善。不过如果GP端口工作在250MHz,MIG就只能工作在2:1模式下了。
下面描述的设计,其配置为:MIG的AXI端口工作在250MHz, 32bit;DDR3 Memory接口工作在500MHz(1000Mbps), 64bit;MIG工作在2:1模式。
相比之前的设计,主要的差异为:
Step 3: 配置MIG
在Controller Options页,配置Clock Period为2000ps,配置PHY to Controller Clock Ratio为2:1;配置Memory Type=SODIMMS; Memory Part=MT8JTF12864HZ-1G6。

因为GP端口工作频率比较高,IP和Vivado工具要进一步的配置:
1. 使能AXI Interconnect的Enable Slice Register
2. 在Implementation Settings中
使能opt design,修改directive为explore
使能phys opt design,修改directive为aggressiveExplore

重新生成Bitstream文件,导出到SDK,即可在SDK中测试新设计的性能。
Credit:
Thanks to Ricky’s and Chandler’s help on tools.
记录学习中的点点滴滴,让每一天过的更加有意义!
返回列表