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

标题: dc无法识别set_retention -save_signal {a posedge}如何解决 [打印本页]

作者: SGengiant    时间: 2023-10-31 17:11
标题: dc无法识别set_retention -save_signal {a posedge}如何解决
本帖最后由 SGengiant 于 2023-10-31 17:39 编辑

我的upf约束为:



set_retention rr_cell \
-domain pd_gala \
-retention_power_net VDD1 \
-retention_ground_net VSS \
-elements u_gala/U_Saturn/cnt_rr \
-save_signal {rr_save_restore posedge} \
-restore_signal {rr_save_restore negedge}


save和restore用同一个信号是为了和库原件相匹配,通过vclp检查
(这个可以看我上一个帖子:【新提醒】VCLP报错RET_MAP_MISMATCH - 后端讨论区 - EETOP 创芯网论坛 (原名:电子顶级开发网) -),
但是这里又不能用high和low区分,否则要retention的寄存器不是在save就是在restore,rtl内部逻辑无法再更新该寄存器,因此选择了posedge和negedge来做区分;

但是dc貌似不认识这个命令,报的错误是:
Error: Only senses"high" and "low" are supported for option '-save_signal'.(UPF-426)


现在要如何写retention约束才能同时通过vclp和dc呢(只能用一个信号控制retention)

作者: songzijian87    时间: 2023-10-31 17:25
提示里面写了,只能写high和low,不能写posedge和negedge
作者: SGengiant    时间: 2023-10-31 17:37


   
songzijian87 发表于 2023-10-31 17:25
提示里面写了,只能写high和low,不能写posedge和negedge


对,但是我如果用一个信号控制,那么不是high就是low,那我内部根本么办法控制整个寄存器,但是如果不是一个信号控制,那vclp检查又通过不了....就很是难受

作者: songzijian87    时间: 2023-10-31 19:01
本帖最后由 songzijian87 于 2023-10-31 19:02 编辑

你可以用set_retenion_control_pins -is_save_restore_pin试一下
作者: jasper0608    时间: 2023-11-1 08:38
提示一下,Save時內部邏輯可更新該寄存器
作者: SGengiant    时间: 2023-11-1 09:14


   
jasper0608 发表于 2023-11-1 08:38
提示一下,Save時內部邏輯可更新該寄存器


好的,多谢提醒

作者: SGengiant    时间: 2023-11-1 09:15


   
songzijian87 发表于 2023-10-31 19:01
你可以用set_retenion_control_pins -is_save_restore_pin试一下


ok,我试一下





欢迎光临 EETOP 创芯网论坛 (原名:电子顶级开发网) (https://bbs.eetop.cn/) Powered by Discuz! X3.5