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

 找回密码
 注册

手机号码,快捷登录

手机号码,快捷登录

搜帖子
查看: 1356|回复: 6

[求助] UVM的绝对路径访问问题

[复制链接]
发表于 2025-2-27 15:11:48 | 显示全部楼层 |阅读模式

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

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

×
假设我在monitor中使用了绝对路径检测TPTC0模块中的状态机的状态state_uvm=top_tb.EDMA.TPTC0.state,但是在经过代码混淆后,除了顶层,其他子模块及接口都会被混淆成随机的字符串(混淆后不会改变DUT的功能),如果此时将混淆后的代码放到UVM中跑,由于模块名和接口都被混淆了,所以绝对路径必须跟着改,如果绝对路径引用的多那就会很麻烦,请问有没有什么解决办法呢?

望大佬们指点!谢谢!
发表于 2025-2-27 16:17:00 | 显示全部楼层
如果混淆后的代码是工具生成的,确定不会改变代码功能,为什么不能只跑混淆前的代码?
如果确实有这样的需求,或许可以考虑用宏:
假如代码混淆后EDMA变成了aaaa,TPTC0变成了bbbb
`ifdef HUNXIAO //运行混淆后的代码,则定义这个宏
    `define TB_EDMA_NAME aaaa
    `define TB_TPTC0_NAME bbbb
`else
    `define TB_EDMA_NAME EDMA
    `define TB_TPTC0_NAME TPTC
`endif
然后在需要使用的地方:state_uvm=top_tb.`TB_EDMA_NAME.`TB_TPTC0_NAME...
回复 支持 反对

举报

发表于 2025-2-27 17:17:44 | 显示全部楼层
代码混淆是啥意思
回复 支持 反对

举报

发表于 2025-2-28 10:05:00 | 显示全部楼层


   
encounter_alpha 发表于 2025-2-27 17:17
代码混淆是啥意思


It is a technique that flatten the code and replace all identifier in code by the unmeaningful name. The encrypted code can be decrypted but the obfuscation code almost be unreversable
回复 支持 反对

举报

 楼主| 发表于 2025-3-4 16:23:06 | 显示全部楼层


   
tcz226 发表于 2025-2-27 16:17
如果混淆后的代码是工具生成的,确定不会改变代码功能,为什么不能只跑混淆前的代码?
如果确实有这样的需 ...


首先感谢您的回复,我现在希望在top_tb中定义宏(因为可能多个地方需要该宏),然后在monitor中使用该宏,仿真会直接报错。但是我直接将宏写在monitor的class中,那么就可以直接使用该宏。为什么在top中定义的宏,此处monitor不能直接使用该宏呢,难道也要用config_db机制传送到monitor中才能使用吗?如果是这样的话,宏的使用可能就没那么简便了。
回复 支持 反对

举报

 楼主| 发表于 2025-3-4 16:25:12 | 显示全部楼层


   
encounter_alpha 发表于 2025-2-27 17:17
代码混淆是啥意思


就是将代码中的所有信号都乱码,但整体功能不变,增强保密性。也就是别人只能看到我乱码的代码,但使用起来功能无误。
回复 支持 反对

举报

 楼主| 发表于 2025-3-4 17:27:49 | 显示全部楼层


   
tcz226 发表于 2025-2-27 16:17
如果混淆后的代码是工具生成的,确定不会改变代码功能,为什么不能只跑混淆前的代码?
如果确实有这样的需 ...


不用您帮忙啦,我已经找到解决方法了,直接定义一个define.svh文件,然后在top_tb中`include该宏文件,然后底层组件就可以直接引用宏了。

谢谢您!
回复 支持 反对

举报

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

本版积分规则

关闭

站长推荐

奖励300信元 | 下载SoC设计技术(视频+PDF资料)
奖励300信元 | 下载SoC设计技术(视频+PDF资料)
元 | 下载SoC设计技术(视频+PDF资料) 奖励300信元

查看 »

X

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

GMT+8, 2025-7-26 16:34 , Processed in 0.150236 second(s), 3 queries , Gzip On, Redis On.

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