微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC后端设计交流 > 做upf,dc综合出来的netlist,替换了一个level shift,formality还是过了

做upf,dc综合出来的netlist,替换了一个level shift,formality还是过了

时间:10-02 整理:3721RD 点击:
现在有3个netlist
A: 综合前的原始netlist
B:综合后的netlist
C:把B里面的一个H to L的level shift cell手动改成L to H
做formality,A和B,A和C,B和C,3种情况验证都是相同的。
是不是用选项可以验证leve shift cell?不然的话,做upf flow怎么去确认这些cell没被改错?

你要读入upf吧,fm,

upf有读入
但upf里面没有add power state,原因是不是这个呢

加了也不行
有人做过类似的测试吗

check_mv_design 有什么问题么,
通常要加upf,否则lvl cell从功能上和buffer没什么区别,一般的fm是可以过的

dc综合出来的netlist要不要有power 和ground?
write_file -pg -format verilog
upf加了也还是会过,但现在是希望不过

是不是对某些cell设置了dont_care?

不用的, 给后端网表不需要带pg的,所有power intent通过upf传递,
因此你的set_level_shifter_control 等写好了么,

我的upf如下:
set_design_attributes -attribute suppress_iss "PD wfifo/PD"
create_power_domain PD -elements wfifo -scope wfifo
create_supply_net VDDL -domain wfifo/PD
create_supply_net VSS -domain wfifo/PD
set_domain_supply_net wfifo/PD -primary_power_net wfifo/VDDL -primary_ground_net wfifo/VSS
create_supply_port wfifo/VDDL -direction in
create_supply_port wfifo/VSS -direction in
connect_supply_net wfifo/VDDL -ports wfifo/VDDL
connect_supply_net wfifo/VSS -ports wfifo/VSS
create_supply_port VDD -direction in
create_supply_port VDD2 -direction in
create_supply_port VSS -direction in
create_power_domain PD -include_scope
create_supply_net VN1 -domain PD
connect_supply_net VN1 -ports VDD
create_supply_net VN2 -domain PD
connect_supply_net VN2 -ports [list VDD2 wfifo/VDDL]
create_supply_net GN -domain PD
connect_supply_net GN -ports [list VSS wfifo/VSS]
set_domain_supply_net PD -primary_power_net VN1 -primary_ground_net GN
dc里面的一些设定:
set_operating_conditions -analysis_type bc_wc \
-max ss0p945v0c \
-max_library tcbn28lpbwp40p140ss0p945v0c.db:tcbn28lpbwp40p140ss0p945v0c \
-min ff1p155v0c \
-min_library tcbn28lpbwp40p140ff1p155v0c.db:tcbn28lpbwp40p140ff1p155v0c

set_voltage0.945 -object_list {VN1}
set_voltage0.765 -object_list {VN2}
set_voltage 0.0 -object_list {GN}
之后check_mv_design:
--------------------------------------------------------------------------------
Level Shifter Checks Summary
--------------------------------------------------------------------------------
Warning: Found 10 level shifter(s) not conforming to level shifter insertion strategy. (MV-213)
Warning: Level shifter 'dout_0__UPF_LS' has violations(s): operating condition mismatch. (MV-232f)
..................
..................
再report_level_shifter:
===================================================================================================================================================
Level ShifterReferenceInput P/GOutput P/GMain P/GViolationReasonVoltageType
Net Info(Volt) Net Info(Volt) Net Info(Dir.)
===================================================================================================================================================
dout_0__UPF_LSLVLLHD8BWP40P140
wfifo/VDDL(0.76)
VN1(0.94)VN1(Output)TRUEoperating condition mismatch
GN(0.00)GN(0.00)---(0.765,1.155)HL_LH
.....................
.....................
.....................
fm里面用netlist和netlist去verify还是不行,换了level shift cell 还是会过
尝试ddc和改过的netlist比较,换input 的level shifter,fm可以检查到改动,但换output的,还是会过
是不是上面哪里设置不对?请大家帮下忙

你upf里面连 set_level_shifter 语句都没有,怎么谈得上控制呢?

set_level_shifter in2 -domain wfifo/PD -applies_to inputs -rule high_to_low -location self
set_level_shifter out2 -domain wfifo/PD -applies_to outputs -rule low_to_high -location parent
加了这两句还是报一样的warning

UPF不熟,但是记得level shift不是根据电压定义自己加的么,不像isolation什么的还需要设置啊

加了这个 ,再做fm 试验,结果如何呢,

和不加一样
netlist和netlist的比较还是会过
而用ddc的话,换input的level shift可以检测到错误,不过换output的还是检测不到错误
两种比较都有load upf

有可能是mvrc, mvsim这种工具才有差别吧,
当然我觉得fm也该有差别的,因为毕竟fm好用些

会不会是fm不用读library,所以没有cell的power信息呢
而ddc里面有dc做综合的设置,有保留library的信息

这个问题不是formaility干的事情。 这属于结构性检查。需要用cadence的clp 或者synopsys的mvrc

fomality是不是认为level shifter为buf,所以检查不出来区别

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

网站地图

Top