分享一个VIVADO中DDR3 MIG使用的经验
时间:10-02
整理:3721RD
点击:
仿真阶段定制MIG时sys_clk使用的差分接口直接连到port(开发板VC709上硬件已连接),导入rdf0233的mig资料包xdc约束,此时IP使用完全正常。综合布局布线时IP core添加到工程中发现连RTL analysis都通不过,一直报顶层的IBUFGDS模块与ip中的此模块冲突,哪怕例化name不一样。这个问题困扰了一两天,中间经过无数次修改,本来想强行修改IP core源文件,把顶层转换后的单端时钟引入ip中,可是源文件在工程中一直read only(该问题仍没解决),即便在外部编辑器中修改保存,工程中仍忽略修改的内容。
后来发现在定制mig阶段sys_clk选择no buffer接口会将该clk信号默认为内部信号不拉到器件的port上,这样就可以从顶层拉单端时钟进来,完美避过IBUFGDS冲突和ip源文件不可修改的问题。
结论:MIG信号尽量不要和port直连,当然DDR3颗粒的信号除外。
后来发现在定制mig阶段sys_clk选择no buffer接口会将该clk信号默认为内部信号不拉到器件的port上,这样就可以从顶层拉单端时钟进来,完美避过IBUFGDS冲突和ip源文件不可修改的问题。
结论:MIG信号尽量不要和port直连,当然DDR3颗粒的信号除外。
学习了,谢分享
