
SV
文章平均质量分 59
weixin_41994704
这个作者很懒,什么都没留下…
展开
-
验证环境发生卡死(stuck),如何调试
调试方法ctrl+c 进入到ucli 界面输入:run 1ns查看程序运行在哪里?输入:step查看程序的运行。stuck 的原因rtl的组合逻辑形成了闭环,一直在运行,tb的while(1)。UVM_TIMEOUT是仿真时间一直在走,不能退出的stuck,到达设置的仿真时间退出。...原创 2022-03-17 13:15:41 · 1649 阅读 · 1 评论 -
纯虚类(virtual class)和纯虚方法(pure virtual function)
具体内容参加绿皮书,virtual methodclass Transaction; rand bit[31:0] src,dst,data[8]; bit[31:0]crc; virtual function void calc_crc(); crc=src^dst^data.xor; endfunctionendclass :Transaction class BadTr extends Transaction; rand bit bad_翻译 2021-11-11 17:10:37 · 2597 阅读 · 0 评论 -
通过DPI集成C++ model
DPI:direct program interface在仿真环境中集成C, C++模型是一个遇见的问题,下面展示如何集成C++ model.虽然项目环境是E-language的,但是顶层文件tb.sv 是SV语言,这里是在tb.sv中通过DPI集成C++的方式。在这里插入图片描述...原创 2021-10-22 19:26:52 · 864 阅读 · 3 评论 -
【SV】中$cast 的用法
常见$cast, 但对其功能(向下类型转换)和具体应用场景却一知半解, 现将一点心得记录在此。类型向下转换 :将父类句柄(father_handle) 赋给 扩展类(child_handle)child_handle = father_handle类型向上转换: 将扩展类句柄(child_handle) 赋给 基类(father_handle)father_handle = child_handle下面插入SV绿皮书 8.3.1 中的代码, 又加入了print()来说明virtual原创 2021-05-14 15:29:05 · 8397 阅读 · 5 评论