vcs initreg 小记

vcs 的initreg功能是为了给reg变量一个初始值,以免不定态的变量值在dut内部传播,导致dut出现挂死。

setenv VCS_PRINT_INITREG_INITIALIZATION 1

设置这个环境变量后,vcs会把0时刻顶层目录下的所有信号的初始值打印到仿真目录下的一个文件里面。

 

initreg用法分为两步:编译选项为

+vcs+initreg+random

仿真选项为

复制代码
+vcs+initreg+0
//intialize to value 0
+vcs+initreg+1
//initialize to value 1

+vcs+initreg+x

//intialize to value x
+vcs+initreg+z
//initialize to value z

+vcs+initreg+random
//initialize to value 0 or 1 with default random seed
+vcs+initreg+seed 
//initialize to value 0 or 1 with user-defined seed
+vcs+initreg+config+initfile
//follow below text
复制代码

 initfile内部的语法规则:

1
tree tb.dut.inst 0  0

第一个0代表层次关系,0代表当前level以及下面的所有level; 1当前level;2当前level以及下一级level

第二个0代表初始值为0;可以是0|1|x|z

1
module dev 1

所有例化了dev的模块值都初始化为1

1
modtree dev 0 1

对dev及其下面所有的模块值初始化为1

posted @   学号党  阅读(2948)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示