ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

芯动力——硬件加速设计方法 学习笔记 7.静态时序分析1

2021-09-05 18:04:24  阅读:263  来源: 互联网

标签:静态 time 笔记 时序 延时 寄存器 硬件加速 时钟


静态时序分析

为何要进行静态时序分析?

在综合阶段,我们需要已经进行了时序约束,也会产生一个时序分析的报告,但是当时也提到,由于我们没有生成时钟树,也没有进行布局布线的操作,所以这个时序分析的结果是不精确的,所以在我们的后端的各个其他环节中,均需要进行静态时序分析来判断时序是否满足约束。

那么静态时序分析的特点是什么呢?主要有以下几点:

  1. 速度快。静态时序分析仅仅针对寄存器,检查寄存器的翻转时间满足时序约束的要求即可,不需要看到每个寄存器的行为和波形,所以速度很快。
  2. 不需要测试向量。不用进行仿真。
  3. 只针对同步电路。异步电路由于没有时钟和寄存器,无法进行静态时序分析。

所以,其实静态时序分析理论上也是一种仿真的手段,只是他检查的功能点很特殊。所以如果动态的仿真(包括前仿和后仿)已经非常理想的覆盖了所有的应用场景和功能点,我们是可以不用进行静态时序分析的。但是这种情况非常理想,基本在实际中不会出现。

静态时序分析的基本概念

Setup Time

image-20210326184338907

时钟上升沿之前数据必须保持稳定的时间

Hold Time

image-20210326184439558

时钟上升沿之后数据依然保持稳定的时间

Time Slack

主要用来表示实际数据到达时间和setup time与hold time之间的差,裕量大于0就说明满足时序约束,数据能够被正确采样。

静态时序分析的四种路径

image-20210326190651317

path1:输入到寄存器

path2:寄存器到寄存器

path3:寄存器到输出

path4:输入到输出

reg2reg的建立时间的检查

image-20210409164436911

上面是一个典型的寄存器到寄存器的时序模型。 T l a u n c h T_{launch} Tlaunch​一般称为发射时间,是指时钟到第一个寄存器的延时, T c a p t u r e T_{capture} Tcapture​称为捕获时间,是指时钟到第二个寄存器的延时,他们之间的差值,一般称为 T s k e w T_{skew} Tskew​。 T c k 2 q T_{ck2q} Tck2q​是指第一个寄存器的CK到Q端的延时, T d p T_{dp} Tdp​是两个寄存器之间的组合逻辑的延时, T s e t u p T_{setup} Tsetup​就是指建立时间。

image-20210409171910643

那么,由上面这幅图就可以分析得出,寄存器到寄存器间的建立时间需要满足的公式:
T l a u n c h + T c k 2 q + T d p < T c a p t u r e + T c y c l e − T s e t u p T_{launch}+T_{ck2q}+T_{dp}<T_{capture}+T_{cycle}-T_{setup} Tlaunch​+Tck2q​+Tdp​<Tcapture​+Tcycle​−Tsetup​
左边的部分,就是第一个寄存器的延时总和,右边的部分前两项是数据被第二个寄存器捕获的延时值。

下面我们来看一个真实的时序分析的报告:

image-20210428211943982

这幅图对应发射路径,可以看到,时序检查的起点是UFF0,终点是UFF1,路径归属的时钟组为CLKM,一般来说,工具将时序检查的终点的时钟作为路径归属时钟组。

Path Type这一项标记为max,这是说在setup time检查中,由于可变的项基本只有 T d p T_{dp} Tdp​,也就是两个寄存器之间的组合逻辑延时,所以,在所有器件延时最大时,setup time仍然能够满足,就说明时间裕量是足够的。

反过来说,Path Type为max就是对setup time进行检查,为min就是对hold time进行检查。

image-20210428212016889

下面这张图可以看到最终的slack是9.41,是大于0的,所以这个时序是满足要求的,从这个时序报告中,我们也能找到我们上面公式所讲的所有延时值。第一幅图,就对应公式的左边,称为data arrival time,第二幅图,对应公式的右边,称为data required time,这两个值相减大于0,就说明建立时间满足时序要求。

arrival time,第二幅图,对应公式的右边,称为data required time,这两个值相减大于0,就说明建立时间满足时序要求。

标签:静态,time,笔记,时序,延时,寄存器,硬件加速,时钟
来源: https://blog.csdn.net/hp741852/article/details/120118540

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有