微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > XILINX FPGA 调用大RAM 时序不过 如何解决

XILINX FPGA 调用大RAM 时序不过 如何解决

时间:10-02 整理:3721RD 点击:
XILINX FPGA 调用大RAM 时序不过 如何解决?调用了一个较大的IPCORE,用了200多个的ram18。
现在的读使能和读地址,时序不过。
应该是扇出都太大,而FPGA的ram位置是固定的。
已经添加了约束扇出最大20(maxfanout=20)和寄存器复制(register duplication)
仍然不行。
还有什么好办法吗?
ram的大小没法减小,设计需要。
Virtex6 系列器件

如果只是读使能和读地址时序不过,需要看看读使能和读地址的关键路径,逻辑延时和布线延时各占多少,增加流水线,减少逻辑延时会改善时序



    不是读地址使能的时序 是这两个信号去ram端口不过 扇出大



   1.增加流水级数   2.尝试关闭trim功能,打开寄存器复制功能,可以看map结果是否复制成功
   3.还不行的话将ram操作拉长为2周期,设置多周期约束



    复制寄存器已经使能了
ram输出流水已经2级了
没什么用

其实也可以考虑曲线解决
把ram模块分为多个控制器,每个控制器本身做好时序控制
然后把多个控制器集合到一起使用,也控制好时序,我觉得应该没问题
主频需要多高?ram实际操作带宽有多大?

约束时序一般是用来解决不常有的软件抽风的,时序约束加得越多,会让系统越脆弱,毕竟每一次布局布线的难度增加了,也许解决了这个,另外一个又没有约束到。
关键还是代码,按照常用的时序挑战方式去修改代码把,问题应该不大

学习学习

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top