在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 1503|回复: 8

[求助] 关于case_analysis_propagate_through_icg的使用

[复制链接]
发表于 2023-8-21 11:15:43 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
case_analysis_propagate_through_icg 的description如下

When this variable is set to false (the default), constants propagating throughout the design will stop propagating when anintegrated clock gating cell is encountered. Regardless of whether the integrated clock gating cell is enabled or disabled, no logicvalues will propagate in the fanout of the cell.
When the value is true, constants propagated throughout the design will propagate through an integrated clock gating cell, providedthe cell is enabled. An integrated clock gating cell is enabled when its enable pin (or test enable pin) is set to a high logic value. Ifthe cell is disabled, then the disable logic value for the cell is propagated in its fanout. For example, for a latch_posedge ICG, whenit is disabled, it will propagate a logic 0 in its fanout.

那么在默认false的时候,无论enabled还是disabled,clk都会穿过ICG么
发表于 2023-8-21 11:33:20 | 显示全部楼层
对的
 楼主| 发表于 2023-8-21 14:15:35 | 显示全部楼层


针对下面这个case


    DFFXL A_reg (.D(IN1), .CK(clk_out), .Q(OUT1));
     TEST_GC3_pos_1 U_GC1 (.CK(CLK1), .TE(q22), .E(q22), .Q(clk_out));
     INVX1 U_INV (.A(IN_mode), .Y(q12));
     BUFX2 U_BUF (.A(IN_mode), .Y(q22));

IN_mode 设置了set_dft_signal ... -type Constant ... 0
会有violation   Clock input CK of DFF A_reg not active when clocks are set on.  (D9-1)
无论有没有set case_analysis_propagate_through_icg true, 都会有D9的 warning。 看上去好像clock没有穿过去

发表于 2023-8-21 15:25:45 | 显示全部楼层
对,你这个问题跟 case_analysis_propagate_through_icg 没有关系,这个变量作用的是 set_case_analysis

回到DFT的问题,IN_mode应该就按实际测试的模式设成1而不应该设成0啊
 楼主| 发表于 2023-8-21 16:35:11 | 显示全部楼层


zero_0 发表于 2023-8-21 15:25
对,你这个问题跟 case_analysis_propagate_through_icg 没有关系,这个变量作用的是 set_case_analysis

...


啊,我就想简单的做个变量控制U_GC1的通断。然后发现TE和E是0的时候一直是断的
 楼主| 发表于 2023-8-21 16:46:17 | 显示全部楼层


zero_0 发表于 2023-8-21 15:25
对,你这个问题跟 case_analysis_propagate_through_icg 没有关系,这个变量作用的是 set_case_analysis

...


我有试了set_case_analysis 1 U_BUF/A  但是这个值没有向后传,在U_BUF/Y上面没有值哎,
按理说这里U_GC应该导通了吧,但是还是有D9 的violation  好像没有导通
dc_shell> report_attribute U_BUF/A

****************************************
Report : Attribute
Date   : Mon Aug 21 16:41:39 2023
****************************************

Design          Object             Type      Attribute Name            Value
--------------------------------------------------------------------------------
top             U_BUF/A            pin       user_case_value           1

1
dc_shell> report_attribute U_BUF/Y

****************************************
Report : Attribute
Date   : Mon Aug 21 16:41:42 2023
****************************************

Design          Object             Type      Attribute Name            Value
--------------------------------------------------------------------------------

There are no attributes to be reported.

1


dc_shell> report_attribute U_GC1/TE

****************************************
Report : Attribute
Date   : Mon Aug 21 16:44:49 2023
****************************************

Design          Object             Type      Attribute Name            Value
--------------------------------------------------------------------------------
top             U_GC1/TE           pin       testdb_test_pin_violated  true

1
dc_shell> report_attribute U_GC1/E

****************************************
Report : Attribute
Date   : Mon Aug 21 16:44:53 2023
****************************************

Design          Object             Type      Attribute Name            Value
--------------------------------------------------------------------------------
top             U_GC1/E            pin       testdb_test_pin_violated  true



发表于 2023-8-21 17:28:08 | 显示全部楼层
你这将两个问题混在一起了:
1. STA检查时即使对 CG enable 设了 case disable, ICG 后默认依然有时钟检查时序,除非将 case_analysis_propagate_through_icg 设成 true

2. set_dft_signal 是指定DFT信号,用来引导工具插入DFT和fix drc, 如果这里将 enable 设成 disable也就是告诉工具 test的时候ICG关断,这样的话ICG下游的寄存器就测不到了。case_analysis_propagate_through_icg 在这没有任何控制作用

另外,report_attribute 好像只会列出很少的 attribute, 可以用 get_attribute 看看
get_attribute U_BUF/Y constant_value
 楼主| 发表于 2023-8-21 22:32:17 | 显示全部楼层


zero_0 发表于 2023-8-21 17:28
你这将两个问题混在一起了:
1. STA检查时即使对 CG enable 设了 case disable, ICG 后默认依然有时钟检查 ...


谢谢!
发表于 2023-8-22 10:48:42 | 显示全部楼层


zero_0 发表于 2023-8-21 17:28
你这将两个问题混在一起了:
1. STA检查时即使对 CG enable 设了 case disable, ICG 后默认依然有时钟检查 ...


学习了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

小黑屋| 手机版| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-2-22 17:29 , Processed in 0.021781 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表