原创 【博客大赛】时序违规的常见原因及解决办法分享

2015-1-30 14:12 1175 10 10 分类: 工程师职场

上一篇博文中谈到<时序约束的一些经验>,这一节中将谈论添加约束后进行综合,如果出现时序违规,会是哪类情况以及该如何去解决。

通常来讲,一项芯片或者FPGA项目工程走到综合这一步说是到了尾声,其实恰恰才是刚刚开始,后面还有很多很多的流程和路要走,所以解决时序违规问题十分重要,如果这个问题解决不好,后面的流程就没法往下走,整个项目可能停滞不前,甚至打回到最开始重新进行coding,如果在不幸运的话有可能整个项目就会fail,所以时序分析及解决违规问题则是必须攻克的一个难题。

20150129220035188001.jpg

其实所有的时序问题都可以归结为常见的两类问题:建立时间(setup time)和保持时间(hold time)的问题,关于他们的定义大家可以百度一下。

1)一般呢,建立时间不满足往往是由于组合逻辑团太大的原因造成的;保持时间不满足往往是由于组合逻辑团太小的原因造成的;建立时间和保持时间都不满足的情况往往是出现在异步时钟域中。

2)解决建立时间不满足的方法有如下:加强约束,重新进行综合,对违规的路劲进行进一步的优化,但是一般效果可能不是很明显;降低时钟的频率或者提高电路的电压,但是这个一般是在项目最初的时候决定的,这个时候很难再改变;拆分组合逻辑团插入寄存器,增加流水线,这个是常用的方法;尽量减小传输的延时;换用先进的工艺,但是这个一般也不太现实。所以流水线是常用的方法。

3)解决保持时间不满足的方法有如下:增加逻辑团的延时,一般就是在后端的时候插入buffer;减小时钟的延时。相比建立时间,保持时间的问题一般比较好解决。

4)异步时钟域的问题:这个一般要单独依靠异步时钟域(CDC)处理的方法来解决。

所以整体而言,处理时钟问题其实就是在处理建立时间,保持时间,异步时钟等相关的问题,把这些解决好,后面才能顺利的进行。

在后续中,我会更为详细的,图文并茂的介绍如何处理建立时间和保持时间的方法,如何处理CDC的问题。

文章评论0条评论)

登录后参与讨论
相关推荐阅读
sunyzz 2017-08-19 10:38
【博客大赛】AVALON总线介绍
1、AVALON总线简介Avalon总线是一种协议较为简单的片内总线,是ALTERA公司定义的片上互联总线,该总线可以将诸如NIOS II的CPU与其他外设连接起来,进而进行数据交换。AVALON总线...
sunyzz 2017-08-17 21:36
【博客大赛】不要轻易做职场滥好人
小A毕业于国内普通高校,但是他聪明,勤奋,能干,动手能力强,可是即便有这些优点也不能让小A轻轻松松找到一份好工作。这不,去年9月份小A好不容易找到一份工作,然后立马就入职了C公司,生怕C公司过两天不要...
sunyzz 2017-08-16 21:15
【博客大赛】IC设计低功耗技术四
五:工艺层面的降低功耗前面几节都是在讨论设计人员如何在前期阶段,中期阶段降低功耗,涉及到软件层面的,硬件层面的,这些技巧基本都是前辈总结出来的,或者根据理论推论出来的。但是到了后期,想降低功耗基本就要...
sunyzz 2017-08-14 22:35
【博客大赛】IC设计之低功耗技术三
四:RTL(寄存器传输)级的低功耗设计4.1 状态机的设计状态机编码中一般有两种方式,普通的二进制编码,特殊的格雷码,格雷码的特点是两个数据之间的跳变时只会有一个bit在toggle,显然比起多bit...
sunyzz 2017-08-12 16:51
【博客大赛】IC设计之低功耗技术二
三、架构层面的降低功耗系统的实现有很多的方式,每种方式对功耗的影响都不相同,本节主要介绍架构对功耗的影响。3.1 高级门口电路 在同步电路系统中,时钟占据了大部分的动态功耗,因而在一些情况下,如果有些...
sunyzz 2017-08-12 10:37
【博客大赛】IC 设计之低功耗技术一
一、前言随着计算机技术和微电子技术的迅速发展,嵌入式系统应用领域越来越广泛。节能是全球化的热潮,如计算机里的许多芯片过去用5V供电,现在用3.3V,1.8V,甚至更低的电压。目前的低功耗设计主要从芯片...
我要评论
0
10
1
2
3
4
5
6
7
8
9
0
关闭 热点推荐上一条 /4 下一条