琐碎记录"/>
项目琐碎记录
项目琐碎记录
vcs打开assert的报告,需要把nopostpro关闭,否则没有报告
如何dump cell 模块?
请实施以下步骤:
1、编译选项添加 -debug_region+cell
2、ucli文件添加:-fsdb_opt +skip_cell_instance=0
如何dump 二维数组:
1、编译选项:+memcbk
2、ucli选项:+mda
本地建立git管理文件流程:
1、建立远程仓库文件夹,进入文件夹,然后使用git init --bare新建git仓库。
2、在你需要管理文件的目录下,设置远程仓库的url,并push一次
关于initreg问题
在调试xil_hbm+core仿真遇到:
解决问题:core需要initreg;HBM不需要initreg;故使用initreg+config的方式
开始指定了core的初始化,但是貌似hbm也会受到影响
解决办法是core初始为0和hbm不要初始化,即保持x;需要都把他显式的说明出来;
使用config的正常流程为:
1、在compile开启initreg功能;开启方式添加 +vcs+initreg+random或+vcs+initreg+config+config_file;必须添加以开启initreg,否则run阶段添加了initreg选项也无效
2、在run指定具体的初始化;若使用+config的方式,通过层次去初始化;需要注意的是如有有模块不要initreg对其生效;要对其声明 initreg为x
常见模块移植需要注意的点:
1、时钟\复位\使能
2、是否需要force
3、输入端口是否都有固定输入
4、是否需要添加initreg,需要将模块的内部初始为特定状态
define文件的编译顺序引起的错误
解决DDR初始化不成功的问题:DDR的define文件在etop之后编译,而etop中的DDR实例化使用到了DDR 的define文件,编译的先后顺序导致了错误。需要define先编译,etop后编译
如何解决的:对比V3中的能初始化的波形;主要是对比sdram的信号,信号数量不多,很快就对比出来了某些define未定义;
但是通过verdi的app来报告宏定义,发现有这个宏定义,即定义这个宏的文件也被编译到了,但是就是宏没有生效;后找出是文件编译顺序导致
更多推荐
项目琐碎记录
发布评论