静态时序分析相关

1.时钟约束修复

分析建立时间用慢速模型:高温、低压、慢速模型(最差情况)
分析保持时间用快速模型:低温、高压、快速模型(最好情况)

2.建立时间不满足,采用措施

降低时钟频率
采用流水线(组合逻辑延时减小)
提高工作电压,减少信号延迟
使用反应速度更快的D触发器(亚稳态窗口更小)

3.保持时间不满足,采用措施

插入Buffer缓冲器延时
做时钟树平衡
提高温度,降低电压(延时增大)
注意时钟频率无法解决,保持时间公式里没有T,与T无关。

4.clock skew和clock jitter

时钟抖动(Clock Jitter):指芯片的某一个给定点上时钟周期发生暂时性变化,是的时钟周期在不同的周期上可能加长或缩短。
时钟偏移(Clock Skew):是由于布线长度及负载不同引起的,导致同一个时钟信号到达相邻两个时序单元的时间不一致。
区别:Jitter 是在时钟发生器内部产生的,和晶振或者PLL内部电路有关,布线对其没有影响。Skew是由不同布线长度导致的不同路径的时钟上升沿到来的延时不同。

5.恢复、去除时间

恢复时间(Recovery time):异步信号在时钟来临之前有效稳定保持不变的时间。与同步电路中的建立时间类似。与寄存器的复位有关。
去除时间(Removal time):异步信号在时钟边沿之后输入数据有效且稳定不变的时间

6.如何时序收敛

时序收敛要保证建立时间和保持时间收敛。
方法:流水线、retiming重定时、逻辑复制、采用树型加法器、关键信号后移、消除优先级等解决方法。

1.流水线。时序不收敛是因为两个触发器之间的组合逻辑延时太大,采用流水线技术,将组合逻辑分解,降低了组合逻辑延时。
2.寄存器重定时。在不改变电路功能的情况下,将大块组合逻辑分成小块的组合逻辑,分布到寄存器之间,通过改变寄存器的位置来优化关键路径,减少组合逻辑最大延时,从而改变最高时钟频率。

注意1,2的区别:寄存器重定时是在不增加寄存器个数的前提下,通过改变寄存器的位置来优化关键路径。而流水线是增加了寄存器的个数。

3.逻辑复制。当信号扇出很大时,该信号到各个目的逻辑节点的路径变得很长。通过对寄存器进行复制来降低扇出,复制几个相同的寄存器来分担原来一个寄存器驱动模块的任务。

4.操作符平衡,将串行逻辑进行并行化处理。如树形乘法器,树形加法器。

5.关键信号后移,消除优先级。

6.代码风格上
不要使用多层嵌套的条件语句。
多层嵌套的代码被综合成具有优先级的电路。使用case综合并行结构,关键路径延时明显减小。

用寄存器对模块输入输出进行缓存
对异步电路,用寄存器缓存能减小亚稳态发生的概率,消除组合逻辑竞争冒险带来的毛刺。对同步电路,用寄存器缓存可以降低fanout被逻辑复制,但缓存占用资源,并带有一个时钟的延迟。

7.DC流程

在逻辑综合阶段,设置工作条件,包括温度、电压、工艺制程。最差情况用于建立时间的时序分析,最好情况用于保持时间的时序分析。
约束条件有时钟约束,设计规则约束,输入输出端口延时约束、面积约束、特别路径约束。
特别路径约束:
多周期路径:多周期路径是指两个触发器之间组合逻辑延时较大,使得数据无法在一个时钟周期内稳定下来,在多个时钟周期后才使用。
虚假路径:虚假路径是指由于逻辑功能,数据顺序等原因,从来不会被激活、不需要考虑的路径,存在但不起作用的路径。
从逻辑上考虑,与电路正常工作不相关的那些路径,比如测试逻辑,静态或准静态逻辑。
从时序上看,我们在综合时不需要分析的那些路径,比如跨越异步时钟域的路径。

8.时序路径

时序路径(timingpath)是指设计中数据信号传播过程中所经过的逻辑路径。每一条时序路径都存在与之对应的一个始发点和一个终止点。时序分析中定义的始发点可以分为两种:组合逻辑单元的数据输人端口和时序单元的时钟输人端口,如图时序分析中定义的终止点也可以分为两种:组合逻辑单元的数据输出端口和时序单元的数据输人端口。

时序路径根据始发点和终止点的不同可分为4种类型的时序路径:触发器到触发器(registertoregister)、触发器到输出(registertooutput)、输人端到触发器(inputtoregister)和输人端到输出端(input№output)。

在这里插入图片描述
见这篇文章时序分析基础知识

9.关键路径

关键路径即所有时序路径中延时最大的一条。

10.如何提高系统的最大频率

流水线设计
寄存器配平: 寄存器配平是使较长路径缩短,较短路径加长,使其达到平衡从而提高工作频率的一种技术。
关键路径法:指设计中从输入到输出经过的延时最长的逻辑路径。优化关键路径是提高设计工作速度的有效方法。
乒乓操作法:乒乓操作法是FPGA开发中的一种数据缓冲优化设计技术,可视作另一种形式的流水线技术。通过“输入数据流选择单元”和“输出数据流选择单元”按节拍、相互配合的切换,将经过缓冲的数据流“无缝”地送到“数据流运算处理模块
加法树法:若要实现A+B+C。首先实现A+B,将其和锁存一个时钟周期再与C相加。
关于系统设计优化可见这篇文章:数字电路基础:系统设计优化

11.multicycle path怎么设?

见这篇文章.multicycle path怎么设

12.为什么亚稳态发生在异步电路

在同步电路的设计中,我们可以了解到时钟和数据具有一定的时间关系。我们在设计中满足这种关系之后,同步电路的输出端在一定时间的传输延迟下会输出一个稳定的状态(电平),因为同步电路总是满足所需要的时间关系同时输出稳定的状态,所以在同步电路中不会产生亚稳态。

但是在异步电路的设计中,每个受不同时钟控制的电路在进行信号传输或者交互的时候,由于每个不同电路的时钟是没有任何关系的,所以信号在从一个时钟域传输到另一个时钟域的时候,信号和时钟可能就不会满足电路正常工作的时间要求,因为满足不了电路的正常工作要求,电路就可能会出现一些未定义的状态,电路处于的这种状态就被称为亚稳态。同时芯片内部的电路是互相连通的,所以一旦一个电路逻辑出现这种亚稳态的情况,那么这种亚稳态会持续传播到其他的电路,导致整个电路可能无法工作。

  • 4
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值