Timing Summary:
---------------
Speed Grade: -4
Minimum period: 34.092ns (Maximum Frequency: 29.332MHz)
Minimum input arrival time before clock: 4.573ns
Maximum output required time after clock: 5.195ns
Maximum combinational path delay: 6.559ns
=========================================================================
以上是某工程综合后的报告; 最大频率显示为29.332M,明显已经不满足实际需要了。
怎样可以使这个“可跑最大频率”提高啊??
谢谢 。。。



最新回复
fei.ying (2008-10-04 15:11:56)
savagezp (2008-10-04 16:10:37)
布局布线后,,,会不会更低啊??
shaweikang1984 (2008-10-04 17:17:20)
savagezp (2008-10-05 11:41:30)
提高“可跑最高频率”的方法:
用时钟约束?? 不会做。。。
ericflying (2008-10-05 12:20:18)
缩短建立时间的的方法一般有:
1、在关键路径中插入寄存器,使用流水线的处理方法。
2、将导致关键路径延时大的信号从关键路径中剥离出来单独处理。
dongdong214 (2008-10-05 12:53:55)
dongdong214 (2008-10-05 14:08:15)
nongfuxu (2008-10-05 16:09:36)
据我所知,提高时钟时钟频率首先得从添加时序约束开始, 其中之一是对要达到的工作频率作120%过约束,然后对多周期作约束,再对与时钟无关的像控制线那样的path进行松绑....
如果经过上述努力后,Fmax还是相差许多,那就得考虑另选速度快的芯片了.
若相差不多,可考虑用groupping将关键路径打包再来几次...
[ 本帖最后由 nongfuxu 于 2008-10-5 16:13 编辑 ]
savagezp (2008-10-06 11:46:20)
QUOTE:
感觉比较抽象,,,,,自己没做过,所以。。。嗯,,,先看看关于约束的文档先。。。
谢谢!!
savagezp (2008-10-06 11:47:48)
QUOTE:
谢谢,,,,我从没做过这些,约束就只做了管脚分配。。。。。
实际当中,这些时钟约束管用么?? 总感觉好抽象。。。
你给了它约束,它自动就把频率提高了???
huhoo (2008-10-06 17:39:40)
1.选好的器件,资源比较宽松;
2.良好的代码风格,大家都提到的关键路径,实际上通常是代码写的不好,如果你用syplify pro分析,你通常会发现是一个大的组合逻辑,或者一个大的比较器,或者Latch等等导致的。
3.在一个系统里,如果只用一个时钟就能实现所有的逻辑功能,就不要用两个时钟,这不太容易做到,但这样能避免很多异步问题。
nongfuxu (2008-10-06 18:16:57)
是的,关于速度主要弄明白限制FPGA速度的因素有哪些?
FPGA速度的因素:
1/ FPGA中固有的宏,嵌入块的速度,它是由所选器件所决定的, 这个你没有办法优化它,除了另选芯片...
2/ 布局后布线route带来的延迟, 这是优化FPGA设计的主要目的之一.
再明确一点,好的布局布线,可以大幅度减少route带来的延迟.
要让软件减少route 延迟,只有增益约束,多布几次,找出最好的.
fei.ying (2008-10-07 20:10:15)
想问下,fpga上面的晶振的时钟频率很低,有方法将其调高么?
fei.ying (2008-10-07 20:11:10)
savagezp (2008-10-08 10:28:41)
QUOTE:
谢谢..学习了,学习了,
得好好看看关于约束的文档了..... 要不贻笑大方了.....
savagezp (2008-10-08 10:30:58)
QUOTE:
俺的愚见,,,一个系统里,只能有一个主时钟吧.
如果有两个时钟的话,岂不是乱套了,
这两个时钟之间又是什么关系呢???
savagezp (2008-10-08 10:33:03)
QUOTE:
晶振只是一个源头吧 ,,,我们可以用分频,倍频,生成我们需要的其他时钟,但都是以晶振为基础的.
是这样么?
huhoo (2008-10-08 10:45:20)
QUOTE:
一个系统当然可以有多个时钟存在,比如异步FIFO的读写时钟就可以不同,再比如PCI接口的时钟和DDR controller 的时钟也是不同的。只是异步时钟域之间在传递控制信号时有可能会产生亚稳态等问题,这涉及到MTBF,但并不会乱套。关于亚稳态,那是另外一个经常讨论的主题。qinxg (2008-10-08 11:18:58)
2. 看看*.syr文件, (在文件的最后面)里面有时钟里延时最大路径的描述. 就是为什么最大时钟为29.332MHz. 对这个最大路径添加流水线,可以"明确"的提高最大时钟.
fei.ying (2008-10-08 15:17:10)