5941|10

6892

帖子

0

TA的资源

五彩晶圆(高级)

楼主
 

华山论剑:时序约束讨论 [复制链接]

时序约束是数字设计一个永恒的话题,  请各位高人华山论剑: 发表个人对时序约束的理解! 方便后来者
此帖出自FPGA/CPLD论坛

最新回复

异步时钟其实没那么可怕 。  详情 回复 发表于 2011-2-18 01:03
点赞 关注
个人签名一个为理想不懈前进的人,一个永不言败人!
http://shop57496282.taobao.com/
欢迎光临网上店铺!
 

回复
举报

5979

帖子

8

TA的资源

版主

沙发
 
  持续关注中 这个我也很想知道
此帖出自FPGA/CPLD论坛
个人签名生活就是油盐酱醋再加一点糖,快活就是一天到晚乐呵呵的忙
===================================
做一个简单的人,踏实而务实,不沉溺幻想,不庸人自扰
 
 

回复

27

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
我还停留在初始阶段,使用的才20M的系统时钟,用做编码器的数据采集接口。在Classic Timing Analysis setting 的 individual clock中对主要的几个时钟信号约束就可以了。 当抛砖引玉,请大家谈谈体验感受...
此帖出自FPGA/CPLD论坛
 
 
 

回复

699

帖子

0

TA的资源

五彩晶圆(中级)

4
 

原帖由 eeleader 于 2011-2-12 11:21 发表 时序约束是数字设计一个永恒的话题,  请各位高人华山论剑: 发表个人对时序约束的理解! 方便后来者

 

所谓时序约束是指你在使用自动编译工具前,指定设计电路中一个、几个或全部元件必须达到的最高时钟频率。对时序性能的指定可用两类不同的参数表示。当使用典型的时序分析工具时,通常用“timing requirement”来表示,而当使用TimeQuest工具进行分析时,应该用“timing constraints”或“timing exceptions”来表示。在设计编译时,您可以用这些指定的参数值来指导编译器对电路的布局布线进行优化,以图达到您规定的时序要求指标。您可以读时序分析报告了解编译器是否完成了您指定的任务。

 

1)用传统的时序分析工具的要求:

在Quartus 的顶层菜单按Assignments --- Timing Settings 可以指定项目的全局时序要求 :如 tSU, tH, tCO, tPD, fMAX, Minimum tCO, and Minimum tPD 。您也可以用Assignment Editor 为某个节点,部件,引脚指定其特定的时序要求。

 

若您指定项目全局或者个别部件的时序要求,并且使用时序驱动的编译,则布局布线工具会自动配置并优化逻辑元件的位置以图达到您要求达到的时序指标。编译结束时会产生报告告诉您是否已经达到您的要求。

 

2)用TimeQuset工具进行时序分析时:

 

略。。。

 

读者自己可以阅读Quartus上的帮助文件,了解各个参数的设置细节。

 

 

 

此帖出自FPGA/CPLD论坛
 
 
 

回复

699

帖子

0

TA的资源

五彩晶圆(中级)

5
 

原帖由 shinexqq 于 2011-2-15 20:16 发表 我还停留在初始阶段,使用的才20M的系统时钟,用做编码器的数据采集接口。在Classic Timing Analysis setting 的 individual clock中对主要的几个时钟信号约束就可以了。 当抛砖引玉,请大家谈谈体验感受...

 

如果时钟频率不太高,一般没有必要对时钟做约束,只要看一下编译报告,看一看全局时钟的频率是否达到自己的要求。当然,若逻辑比较复杂的话,除了RTL仿真必须做外,还应该做布局布线后的时序仿真,这个仿真需要用到器件库和元件级别的网表,在Quartus工具上是元件网表是用xxx. vo表示的,延迟文件是用xxx.sdf表示的,编译时选择了适当的仿真工具和语言,就可以找到这两个文件自动产生的后仿真文件。然后,再到ModelSim中以综合后的网表文件和延迟文件为被测试电路,用原RTL级测试模块,做一次网表元件代码的时序仿真,如果没有问题,则设计的电路应该很可靠;如果出现建立时间或者保持时间不满足的警告或者功能出现个别错误,则电路的时序或者逻辑可能存在问题,必须降低时钟频率再做一次。若问题继续,则可能存在逻辑设计问题。如果频率降低后,功能完全正常,也没有这些警告,说明逻辑设计正确,为了提高时钟频率,您可以做时序约束和优化。但若设计中电路结构考虑不周,时序约束产生的优化效果不会显著。所以关键还是对于数字电路的结构必须有清晰的理解。

此帖出自FPGA/CPLD论坛
 
 
 

回复

27

帖子

0

TA的资源

一粒金砂(初级)

6
 

回复 5楼 夏宇闻 的帖子

夏老师亲自解答真是感激不尽....
话说我们这边调试FPGA的程序仿真做的比较少,由于程序不大,资源有余,一般都是直接上板子用signaltap直接观察寄存器值。功能仿真我做过一些,时序仿真就没用过了。

这里,我搜索了下RTL仿真和布局布线后仿真的含义,一直都没搞清楚的。
前仿真,也称为RTL级仿真或功能仿真。通过HDL仿真器验证电路逻辑功能是否有效,在前仿真时,通常与具体的电路实现无关,没有时序信息。
后仿真也叫门级仿真、时序仿真、带反标的仿真,需要利用局部布线后获得的精确延迟参数和网表进行仿真、验证网表的功能和时序是否正确。

具体到quartus软件上就是Function simulation和Timing simulation ,以及RTL simulation 和 Gate level simulation 。
此帖出自FPGA/CPLD论坛
 
 
 

回复

699

帖子

0

TA的资源

五彩晶圆(中级)

7
 

原帖由 shinexqq 于 2011-2-16 15:04 发表 夏老师亲自解答真是感激不尽.... 话说我们这边调试FPGA的程序仿真做的比较少,由于程序不大,资源有余,一般都是直接上板子用signaltap直接观察寄存器值。功能仿真我做过一些,时序仿真就没用过了。 这里,我 ...

 

如果逻辑比较复杂,逻辑电路设计中很可能存在偶发隐患,用Singnaltap寻找这一类隐患非常麻烦,费时费力,劳而不功。只有用布局布线后仿真才能确认每个功能模块都是电路可实现的,而且线路延迟没有造成任何偶发的功能问题,电路在规定的时钟频率下确实与外部信号的交互功能已经完全正确,然后下载到FPGA中运行才是做较大设计的好习惯。这样做可以节省大量的调试时间,可很快诊断出系统偶发性不稳定的根源。这是设计人员技术水平的标志,万万不可藐视。

此帖出自FPGA/CPLD论坛
 
 
 

回复

27

帖子

0

TA的资源

一粒金砂(初级)

8
 

回复 7楼 夏宇闻 的帖子

恩,学习了,得引起重视!
此帖出自FPGA/CPLD论坛
 
 
 

回复

6892

帖子

0

TA的资源

五彩晶圆(高级)

9
 

时序约束最头疼的地方就是, 怎样设置更为合理? 特别是FPGA资源有限的情况下,这个特别麻烦!

此帖出自FPGA/CPLD论坛
个人签名一个为理想不懈前进的人,一个永不言败人!
http://shop57496282.taobao.com/
欢迎光临网上店铺!
 
 
 

回复

6892

帖子

0

TA的资源

五彩晶圆(高级)

10
 
还有如果两个设计的时钟不是同一系统时钟,而是异步时钟, 那就更没方法可寻了
此帖出自FPGA/CPLD论坛
个人签名一个为理想不懈前进的人,一个永不言败人!
http://shop57496282.taobao.com/
欢迎光临网上店铺!
 
 
 

回复

732

帖子

0

TA的资源

纯净的硅(高级)

11
 
原帖由 eeleader 于 2011-2-17 10:09 发表 还有如果两个设计的时钟不是同一系统时钟,而是异步时钟, 那就更没方法可寻了


异步时钟其实没那么可怕 。

此帖出自FPGA/CPLD论坛
个人签名学习的乐趣在于分享。
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表