关于提高FPGA工作速度。
时间:10-02
整理:3721RD
点击:
各位XDJM,我现在设计的控制逻辑,综合完之后我看到2个触发器之间的门电路数量最多达到了6个,而我要求其要工作到大于200M,一个周期大概要4个ns,左右,然后这些门电路会造成timing问题,请问我该如何处理呢,我也想在通路上加pipeline,但不知如何改变编程代码才能实现。
这是由于两个触发器之间有组合逻辑造成的,需要优化一下这些组合逻辑,最好能够把你的设计贴出来一部分
恩。就是这样的。组合逻辑太多了。
我的设计就是有个信号ctrl,当它取不同值时,分别从blockram中取出不同的数据。
简单的来说就是从blockram中读取系数重新配置CIC补偿滤波器。
不知道有没有什么优化的算法。
谢谢!
1:如果可能,所有always和process块改成时序逻辑。
2:加法和乘法调用FPGA的库函数。
3:尽量不用超过256值的计数器。
4:实在不行,用FloorPlaner(FPGA Editor)观察最长的组合路径,然后在中间加寄存器。
目前基本上不存在乘法的问题,加法倒是有的。
计数器我最大的都达到了700多了。可能要优化下了。
FloorPlaner?是什么。不好意思哈。我刚开始用。这个工具在哪里可以打开的。
