微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC后端设计交流 > 后端面试--每日一题(006)

后端面试--每日一题(006)

时间:10-02 整理:3721RD 点击:

During the synthesis, what type of wire load model are often used?
做RTL综合时,经常使用的wire load model有哪几种?
难度:2
注意:问题是wire load model,不是wire load mode,也不是delay model

top/enclosed

小编问的好像是model 不是mode
一般采用slow库的model,选取要根据设计规模来吧,越大越悲观

我只知道一个ZeroWireLoad 无导线延迟信息来报timing。
其他不确定

NLDM module

注意:问题是wire load model,不是wire load mode,也不是delay model

刚用report_design看了下,综合自动选择的是最大的那个model,应该是为了最大化setup violation

TLU+ ?

这里问的“有哪几种wire load model?”,并不是问你用的.lib里面有多少个WLM,分别叫什么名字。
而是常用的WLM有多少种类?4楼说的zero wire load model算是一种,.lib里面那些非zero wire load model是另一种,还有一种用得比较多的是什么?

CWLM (customer WLM)

求指教

求指导~我好像题目没怎么理解

DC默认的应该是zero wire load model,当然也会根据design 的大小选择不同K值的wire model,
nldm(非线性负载模型)
CCS(synopsys)和ecsm(cadence)都是电流源模型,精细度更高,
这三种模型是对cell delay的计算方式的不同区分;
PVT(process voltage temperature)条件
就是我们平时做时序分析的wcl、wc、lt、tc、ml等corner设置work condition
一般情况下wcl下修复setup
lt下修复hold、ml下查看leakage
详细的信息可以查看lib文件,希望有所帮助
tiger_lein

在DC中,有一个变量叫auto_select_wire_load_model,
这个变量设置为True的话,那么DC在综合过程中,就会自动选择线负载模型,来做综合,分析Timing。
而同时,可以设置set_wire_load_mode [top|segmented|encolse],这三个不同的值设置上之后,DC在综合的过程中,就会根据一定的算法来选择不同负载模型了。
不同线负载模型的选择,对综合出来的Netlist 的QoR有很大的影响。主要体现在Chip的面积上。
约束得过紧,对于后端来说是一件好事,因为相当于预留了不少的Margin,如果约束过松,后端就是辛苦了。
一般的做法是选择负载最小的那个模型,来做综合。
或者用自动选择线负载模型,然后
set_wire_load_mode -segmented.来做。
这个是我个人的理解,陈小编,不知道我答对了多少。还是全错。

tiger_lein小编把我下一个要问的问题提前给答了。
What types of delay model are used in digital design? (数字IC设计中有多少种类型的delay model)
答案就是你说的“NLDM,CCS,和ECSM”,还有一个现在基本不用了的--LDM
回来讲wire load model,在综合时,除了用ZWLM,或者不同K值的wire load model以外,还有一个基于物理位置(距离)的wire load model,在Cadence的RC中叫PLE,Synopsys叫DC Ultra Topographical

呵呵,期待大家更激烈的讨论,谢谢陈涛
1、Synopsys叫DC Ultra Topographical,就是我们平时所说的DCT吗?如是这样好像需要导入def文件来细化
2、auto选择wire load model我想问个问题,针对不同的模块我是不是可以选择不同k值的wire load model呢,如果可以我怎么设置来实现这个功能呢?求解

基本上就是14#说的方法,auto_select_wire_load_model + set_wire_load_mode [top|segmented|enclose]
但是我猜大部分的公司不让这么用,因为这种用法对于小模块来讲,会自动选用很小的WLM,而实际P&R时,你无法保证这个模块就一定摆得非常近

应该选择slow corner 的,然后根据面积大小选择 model。

The wire_load_model is used to model the interconnect parasitics, which can be modeled with RLC model. Since L can be neglected for on-chip pre-layout analysis, it becomes an RC network. Base on the block size and fanout, wlm_light, wlm_conservative, and wlm_aggresive fall into awire_load_model_selection_table that we can specify. For wire_load_model to model the interconnect parasitics, best_case rc tree, balanced rc tree and worst_case rc tree can be used to represent to above three models respectively. The wire_load_model_selection_table should be in the lib file a std cell lib, but I don't have it, I also don't know how to get it into .lib during characterization.
Can someone tell more about K? Something I don't quite agree is K-value is not used here to specify any wire_load_model, it is used to multiply the far-end capacitance for calculation ofthe effective capacitance when doing delay calculation. K should range within 0 and 1.
Thanks

线负载模型是用来计算连线的延时的,一般根据面积的不同选择不同的线负载模型,面积越大的芯片线负载模型中定义的单位长度的电阻电容也越大。
当需要估算连接不同模块的连线的延时时需要设主席set_wire_load_mode选项:有三种 enclosed(用包围两个子模块的模块的线负载模型估算连接它们的连线的延时) ,top,(用包含所有模块的顶层模块的线负载模型来估算),segment(分别根据穿过的三段模型估算之后相加得到)

顶一个,学习中啊

DC Ultra Topographical

WLM
CCS
NLDM

追加一个
ECSM

太全面了
能不能分别说说这几个具体代表啥意思啊
谢谢宋大牛

但是DC时一般都这么做:auto_select_wire_load_model + set_wire_load_mode top

太全面了.....

DC Ultra Topographical

来学习的..

百花齐放,好东西!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top