在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 5150|回复: 11

[求助] 问两个大家都关心的问题:时序约束和Fmax

[复制链接]
发表于 2013-8-24 01:02:03 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 newaysoft 于 2013-8-24 01:21 编辑

一,关于时序约束
是不是当功能仿真和时序仿真都通过了,但下载到芯片后,芯片工作异常,这个时候才需要做时序约束,如果把程序下载到芯片后,整个系统已经能正常工作了,就不需要做时序约束了,是这样吗?


二.关于Fmax
1.看到很多搞FPGA的经常说自己的设计最高能跑多少多少MHZ,如果一个系统已经能正常工作了,还需要去想办法实现更快速度吗?
2.FPGA最高跑能多少MHZ,功能上具体体现在什么地方,能具体讲下吗?


最后请大家推荐一个能很好体现时序约束重要性的例程,就是不做的话,功能无法实现,必须做约束才能通过,我的学习板是1C6的,谢谢
发表于 2013-8-24 11:21:10 | 显示全部楼层
同问,等待结果
 楼主| 发表于 2013-8-25 10:48:11 | 显示全部楼层
哪位大虾能回答下本小 鸟的问题吗?
发表于 2013-8-25 12:40:49 | 显示全部楼层
对于第一个问题,系统工作异常应该跟时序约束没有必然的联系,也可能是你的设计本身有问题,只满足了逻辑功能要求,但不能满足时序要求,可能存在亚稳态或竞争冒险等;对于第二个问题,你的系统的运算速度应该是由系统频率和系统处理时延(处理一组输入所需要的周期数)共同决定的,一般一个设计都有一个指定的速度指标吧,如果没达到这个指标,你当然得想办法优化,提高速度了,如果到达了指标,进一步提高运算速度也是没有坏处的吧。我也是菜鸟,随便说说
发表于 2013-8-25 22:25:38 | 显示全部楼层
回复 1# newaysoft
一般系统能跑多少M是跟设计有关的,可能我现在设计的系统不需要跑太高时钟,
则在我不做时序约束的情况下达到要求,就没必要去做时序约束。

跑多快只是单纯对某个工程或者模块而言,这个需要结合你实际需要多高频率的时钟。
可能我设计一个过程,能跑很高的速度,这样别人拿我的工程直接用的时候,基本不需要再去约束。

FPGA最好跑多快,要看你的整个电路的延时,看是否有建立时间以及保持时间不满足的情况。
功能上怎么体现就主要看你的系统工作了,建议每次综合以及布线后看看时序报告。
 楼主| 发表于 2013-8-26 09:25:49 | 显示全部楼层
回复 4# 绿茶盖儿

这两天自己做了个小工程,遇到功仿和时仿都过了,下载到板子上,怎么都不运行,后来改了下几个模块触发方式,就解决了,实在搞不懂,既然触发方式有问题,为什么时仿的时候没出问题呢,那这么看来,为什么时序仿真也不完全可靠,必须下到板子上才能看到真的结果。
发表于 2013-8-26 15:06:44 | 显示全部楼层
1. 不是系统跑起来就算OK,可能里面有隐患你在当前用例下测不出来,还有宽约束下有很多随机性,现在跑的结果很好,下次难说。加约束的一大作用就是就是通过限制范围使随机性降低,一致性提高,提高健壮性与稳定性。

2. 不是约束就非得加,有些要求低的部分本来就可以不加,这样其它部分可得到更优先充分的满足,提高性能;同样,有时也可以加,将此部分限定低优先性与易于满足,让其它部分也能得到性能,这也是可能的。对于低于50M的信号不加约束一般跑来也没问题。

3. 约束的范围除了时钟频繁、相位、派生,输入输出脚管时序关系,IOB约束外,还有具体器件指定位置约束,上全局时钟,多周期,假路径,寄存器复制等多种,不是简单的一种加不加,也不是一句跑的速度更快这么简单,具体情况具体分析。

4. 一般一个工程里的时钟速率等都是由项目需求和系统设计时就定下来了的,在实现时满足需求就好,不会刻意地为了提高速度去提高时钟频率。但是反过去,系统设计之初是要考虑很多因素的,如使用高端还是低端、芯片容量、使用的RAM、MAC资源、工程的估算等,对时钟频率的设计也有影响。

比如定好设计都是50M,那基本很容量满足,要是定个125M或200M,那很容易有组合逻辑多点、级数长点的时序过不去,那就要注意查看原因、想办法解决了,从PR选项、约束条件、代码设计等多方面都可以下手。
发表于 2013-8-26 20:03:46 | 显示全部楼层
学习
感觉如果不会做时序约束,就还是把fpga当做程序来做,没有入门一样
我也想求教一下时序约束这方面的例程
 楼主| 发表于 2013-8-26 21:58:45 | 显示全部楼层
回复 7# eaglelsb

很感谢你的回复,明白了一些,能否提供一些做时序约束的小工程吗,比如不做的话功能很难实现,做了就会好了这种。
发表于 2013-8-27 09:32:19 | 显示全部楼层
这个手头没有,你想做的话,可以尝试下乘法器、加法器,比如十六位数据相乘再若干累积相加,频率跑200M,很容易出现时序问题,然后再想着加多周期约束、pipeline之类的解决。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-15 17:22 , Processed in 0.022651 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表