zoukankan      html  css  js  c++  java
  • (转)时序分析基本概念

    http://blog.sina.com.cn/s/blog_677db1cb0100pht1.html 

    以下内容译自Quartus II Version 7.0 Handbook, Volume 3:Verification的6-13:Timing Analysis Overview部分。  riple

        TimeQuest需要读入布局布线后的网表才能进行时序分析。读入的网表是由以下一系列的基本单元构成的: riple

        1. Cells:Altera器件中的基本结构单元。LE可以看作是Cell。 riple

        2. Pins:Cell的输入输出端口。可以认为是LE的输入输出端口。注意:这里的Pins不包括器件的输入输出引脚,代之以输入引脚对应LE的输出端口和输出引脚对应LE的输入端口。 riple

        3. Nets:同一个Cell中,从输入Pin到输出Pin经过的逻辑。特别注意:网表中连接两个相邻Cell的连线不被看作Net,被看作同一个点,等价于Cell的Pin。还要注意:虽然连接两个相邻Cell的连线不被看作Net,但是这个连线还是有其物理意义的,等价于Altera器件中一段布线逻辑,会引入一定的延迟(IC,Inter-Cell)。 riple

        4. Ports:顶层逻辑的输入输出端口。对应已经分配的器件引脚。 riple

        5. Clocks:约束文件中指定的时钟类型的Pin。不仅指时钟输入引脚。 riple

        6. Keepers:泛指Port和寄存器类型的Cell。 riple

        7. Nodes:范围更大的一个概念,可能是上述几种类型的组合,还可能不能穷尽上述几种类型。 riple

        下面这幅图给出了一个时序网表的示例,展示了基本单元中的一部分。 riple

       

        有了网表的基本单元,我们就可以描述TimeQuest进行时序分析的对象:Edges。 riple

        Edges:Port-Pin,Pin-Pin,Pin-Port的连接关系都是Edges。注意,这里的Pin-Pin连接关系既包括Cell内部的连接(Net),也包括相邻Cell外部的Pin-Pin连接。 riple

        Edges根据起止路径分为三类。 riple

        1. Clock paths:从Clock Port或内部生成的clock Pin到寄存器Cell的时钟输入Pin。 

        2. Data paths:从输入Port到寄存器Cell的数据输入Pin,或从寄存器Cell的数据输出Pin到另一个寄存器Cell的数据输入Pin。 

        3. Asynchronous paths:从输入Port到寄存器Cell的异步输入Pin,或从寄存器Cell的数据输出Pin到另一个寄存器Cell的异步输入Pin。

    下面这幅图给出了三种不同的Edges。 

    还要注意这样一组概念,这里的edge指的是时钟沿:

    1. Launch Edge:前级寄存器发送数据对应的时钟沿,是时序分析的起点。

    2. Latch Edge:后级寄存器捕获数据对应的时钟沿,是时序分析的终点。

    下面这幅图给出了发送、捕获时钟沿的示意图。

    有了上述的诸多概念,我们就可以得到时序分析公式的基本项了: 

    1. Data Arrival Time:Launch Edge + 前级寄存器Clock path的延时 + 前级寄存器Cell从时钟Pin到数据输出Pin的Net延时(uTco) + Data path的延时。 riple

    2. Data Required Time:Latch Edge + 后级寄存器Clock path的延时 (+ uTh)或(- uTsu)。 

    3. Clock Arrival Time:Latch Edge + 后级寄存器Clock path的延时。 

    下一篇分析建立时间和保持时间时,就必须用到上述三个概念。

  • 相关阅读:
    SpringBoot启动报错 java.lang.NoClassDefFoundError: javax/validation/ValidationException
    Java String类创建对象问题
    Java代码执行顺序
    Java抽象类与接口(2) ------接口
    Java抽象类与接口(1) ------抽象类
    Manjaro kde2020 使用记录
    生活常用小插件
    技术汇总
    Vue中使用websocket的正确使用方法
    js封装一个websocket
  • 原文地址:https://www.cnblogs.com/winkle/p/3151421.html
Copyright © 2011-2022 走看看