DDR IP多个例化

本文详细介绍了XILINX FPGA中DDR3控制器的设计问题,特别是当尝试实例化多个DDR3控制器时出现的IDELAYCTRL冲突错误。文章提供了两种解决方案:一是直接实例化两个控制器,二是修改DDR代码以避免冲突。同时,文章还讨论了不同bank下DDR3数据速率的差异及DDR IP自动生成的XDC约束文件可能带来的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

XILINX FPGA型号:xc7k325t  ffg900-2

工具版本:vivado 2016.4

DDR3:芯片数据位宽16bit,DDR工作频率533M;

需求是例化两个DDR3的控制器;每个控制器的数据位宽32bit,

1)  问题描述:

例化1个DDR3控制器,然后在顶层调用两次使用;在编译时报错如下:

[DRC 23-20] Rule violation (PLIDC-3)IDELAYCTRLs in same group have conflicting connections - IDELAYCTRLcells'u0_ddr_arbitrage/u0_ddr3_core/u_ddr3_core_mig/u_iodelay_ctrl/u_idelayctrl_200'and 'u1_ddr_arbitrage/u0_ddr3_core/u_ddr3_core_mig/u_iodelay_ctrl/u_idelayctrl_200'

have same IODELAY_GROUP'DDR3_CORE_IODELAY_MIG0' but their REFCLK signals are different

或此以下报错

[DRC 23-20] Rule violation (PLIDC-3)IDELAYCTRLs in same group have conflicting connections - IDELAYCTRL cells'u0_ddr_arbitrage/u0_ddr3_core/u_ddr3_core_mig/u_iodelay_ctrl/idelayctrl_gen_1.u_idelayctrl_300_400'and 'u1_ddr_arbitrage/u0_ddr3_core/u_ddr3_core_mig/u_iodelay_ctrl/idelayctrl_gen_1.u_idelayctrl_300_400'have same IODELAY_GROUP 'DDR3_CORE_IODELAY_MIG1' but their REFCLK signals aredifferent

 

问题原因:

2个DDR3控制器是重复调用,在每次调用时都会例化一次IODELAY_GROUP,但只有1个IODELAY_GROUP可供使用,故在编译时会爆冲突;

解决方法:

在例化DDR3控制器IP时,直接选择一次例化两个控制器,这样例化的话,工具就会自动只例化一个IODELAY_GROUP,两个DDR控制器共用;

如果只例化1个DDR3 控制器,想调用两次,也可以通过修改DDR的代码,把其中一个IODELAY_GROUP注销,把控制器的ready信号直接引入使用;

         注意此问题同样会出现在FPGA的节温控制模块调用;也需要做相同的修改才能不报错;

 

2)  这个型号的FPGA,DDR3的数据速率最高是1600M,但只能在HP BANK布线,就是FPGA的bank32、bank33和bank34;而使用HR BANK,数据速率最高只有1066M,在bank12、bank13、bank14、bank15、bank16、bank17和bank18;

5)  需注意在生成DDR IP时,IP会自动生成XDC约束文件,在编译过程中,vivado会调用此xdc文件进行布局布线;如果在工程使用的xdc文件中,对DDR相同的管脚进行约束,有时候会爆冲突的错误,或在生成bit文件时,爆出几个引脚无法分配,但实际是这几个管脚已经正确分配并布线完成。
--------------------- 
作者:Duncan_Lv 
来源:优快云 
原文:https://blog.youkuaiyun.com/Duncan_Lv/article/details/78077840 
版权声明:本文为博主原创文章,转载请附上博文链接!

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值