Top Level Implementation-ETM 2

上一篇说了如何在FC/ICC2 产生ETM,本文说一下如何在PrimeTime 产生。说之前先之前漏说的几点:

1,PT 抽取时会把每个port的timing信息都保留下来,block内部的各种信息不会保留;

2,input port 到reg 这种path, 这段input port 与 reg CK pin 之间的 setup/hold timing arc 是会被保留的。以setup 为例,这个arc 中包含两种setup 信息,一种是input to D 的delay信息(setup arc保留最慢的delay,hold arc 保留最快的delay),一种是这个reg 的lib setup timing。。reg lib setup time是 通过data input transition(index1)和 clock input transition(index2)查表而来,所以本质上存储的还是 transition 信息;

3,input to output这种 path,会存两个delay arc,一个是两个pin 之间的最短delay arc,一个是最长 delay arc,这种arc 是input trans与output load 查出来的;

4,reg to output path 也是一样的,包含reg ck pin 到 output 的delay arc。一般情况下,对于unconstrained paths 不会抽取(比如设置了set_false_path),但是如果有以下情况也会被抽取:

• No set_output_delay -clock clock defined for the port

• set_clock_group -asynchronous relationship between the register clock and the set_output_delay -clock clock

5,此外,ETM model里还会保存很多内容,比如

Design rule(max fanout, max_transition, max_cap)与Clocks(包括create_clock和generate clock),以及Path Exceptions, case constant等信息

block 产生ETM流程:

set link_path ...set search_path ...read_verilog ...read_parasitics ...load_upf ...read_sdc block.sdcupdate_timingset hier_modeling_version 2.0extract_model ... -validate timing

-validate timing 会把timing 的信息打印出来,方便检查与验证

top level 读入 flow:

set link_path ...lappend link_path mod_lib.dbset search_path ...read_verilog topread_db $::pt_model_dir/ETM/modname/mod_lib.dbcurrent_design topread_parasitics top.spefread_sdc top.sdcsource mod_inst.pt.gzupdate_timing

上面的mod_inst.pt 里面包含timing derating, timing exception on specific pins, and case analysis

生成ETM 时需要注意的几点:

1,读取Parasitics 和Constraints时,检查反标与error/warning,以免影响精度与质量;

2,注意timing 情况(report_constraint),top 是看不到block 内部timing 情况的。

如何产生NDM

对每个scn 创建 ETM 之后,需要读取物理信息frame view,生成ndm:

# Create a library work spacecreate_workspace -flow etm_moded AMS_BLK# Read the physical data (frame view)read_ndm -views frame AMS_BLK.ndm# Read the ETMs for every scenarioread_db -mode_label m1 AMS_BLK_m1_c1.dbread_db -mode_label m1 AMS_BLK_m1_c2.dbread_db -mode_label m1 AMS_BLK_m1_c3.dbread_db -mode_label m2 AMS_BLK_m2_c1.dbread_db -mode_label m2 AMS_BLK_m2_c2.dbread_db -mode_label m2 AMS_BLK_m2_c3.db# Check the compatibility of the libraries you read incheck_workspace# Generate cell librarycommit_workspace -output AMS_BLK_ETM.ndm
  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

东坡ju士

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值