(九)数字后端之静态时序分析STA 您所在的位置:网站首页 数字后端WNS查看路径 (九)数字后端之静态时序分析STA

(九)数字后端之静态时序分析STA

2023-07-15 11:58| 来源: 网络整理| 查看: 265

STA:Static timing analysis 目的: 在不采用动态激励的情况下,通过静态分析delay并检查时序是否满足。STA贯穿在整个后端流程中,逻辑综合阶段和RouteOPT阶段,STA引擎被嵌入在相应的工具中,到了Signoff阶段的STA,会使用专门的STA工具。前者使用估算的RC信息(TLU+),后者使用准确的RC信息(NXTGRD)。Signoff阶段的STA使用signoff标准约束,指的是SDC。

STA针对的是数字电路,和模拟电路相关的路径无法用STA进行验证

工具:

Synopsys PT(PrimeTime)(主流)

Cadence ETS

Input文件:

1,SDC约束文件

2,RC抽取得到的netlist.spef

3,PnR之后导出的.v文件

4,lib/db library

Output文件: 1,Report 2,Lib 3,SDF(用于反标)

SDF(Standard delay file): 把PnR过程中cell delay和net delay的信息保留下来,据此就可以在路径时序分析时将整个路径的时序计算出来,再判断时序约束条件就能知道是否满足时序要求了。但是为啥是STA的输出呢?不应该是STA的输入吗?

Path的分类

Start point:  A: register clock pin        B: input ports

End point:C: all input pins of register Non Clock pin        D: output ports

共四种path:

Reg-reg Path: A->C    

Output Path:A->D

Input Path:B->C

Combo Path:B->D    

STA分析的三大步骤 1, 将电路分解为多条timing path

(按照上面介绍的path的分类进行分解吗?)

同时根据control endpoint的clock将所有的timing path进行group,也可以人为创建path group(group_path)

2,计算每条timing path上的delay

把每条timing path打断成无数个时序弧(timing Arc), 计算每条时序弧的delay,就可以得到timing path的delay?

timing arc的delay由cell delay和net delay组成。

 

Cell delay cell delay的计算模型由Foundry提供的library中定义。可能是NLDM(Non-Linear-delay-model)模型,可能是LDM(Linear-delay-model)模型。在二维NLDM模型中,input transition和output loading决定了cell delay和output transition。 Output transition会成为下一个cell的input transition每个cell都有其对应的NLDM模型table,也叫查找表。

在library的.lib/.db文件中是如下体现的:(但是怎么区分cell delay和output transition呢?)index_1:  input transition?index_2: output load?

 Net Delay

Net delay的计算模型包括wire-load-model,TLU+,NXTGRD

3, 检查delay是否满足时序约束   Setup time:数据在时钟到来之前保持稳定所需要的时间。

 

Setup Slack = (Dcapture_clk + Tclk_period) - (Dlaunch_clk + Ddata + Tsetup + Tunc)

Setup Slack >= 0 ,才能够保证这一拍从FFa出发的数据,下一拍能够在FFb被采到

Hold time:在时钟到来之后数据需要保持稳定的时间

 

 

Hold Slack = ( Dlaunch_clk + Ddata ) - (Dcapture_clk + Thold + Tunc) 

Hold Slack >= 0 ,才能够保证这一拍从FFa出发的数据,只有等到下一拍才能被采到

具体脚本:

read_verilog ***.v

current_design ***

set link_path "* ***.db"

link_design

read_parasitics -format SPEF ***.spef

read_sdc -echo ***.sdc

check_timing -verbose

update_timing

report_timing

save_session

如何启动:

pt_shell



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有