我的 RISC-V 视频 AI SoC 验证环境
我的 SoC 验证环境

🆔 第 1 部分 引言
SoC 验证是 SoC 开发和验证中非常至关重要的一个环节,无论是 IP 的互联测试,CPU 的主控测试,视频输入输出数据通路的验证,系统内存访问性能场景的验证等等,都非常需要 SoC 验证来带动系统的联动测试,可以说,没有 SoC 验证,IP 与 IP 之间的功能联动就无法保障,缺少了充分的集成验证,就没有足够的信心去投资流片,而这里,如何搭建好一个高效的数据激励,自动化的数据监控,大量精确的数据对比的 UVM SoC 验证环境,是完成充分的 SoC 验证的关键前提
NOTES:本文来自《新芯设计》技术专栏
🆔 第 2 部分 正文
- 生成时钟激励,完成复位释放:时钟和复位就是 SoC 的心脏和血液,只有提供了正确的时钟和复位,SoC 才能够正常工作

- 设置本次仿真的宏定义,以及层次定义:例如可以通过宏定义,切换设计电路和仿真环境,可以通过层次定义,来简化整个验证环境的信息



- VCS 和 VERDI:设置最大仿真持续时长(不同模块验证的时长可能是不一样的),设置波形产生机制(DUMP 波形的名字和层次)

- 产生输入激励,可以通过模拟输入激励的行为(TASK),或者 FORCE,或者通过后门的方式 LOAD 特定的数据文件到存储器中



- 例化本次的设计单元,这是必不可少的操作

- 监控内部数据:实时监控内部数据变化,打印各个节点的内部数据,输出到指定的文件中(便于观测)


- 数据自动对比机制:若是存在正确的数据结果,可通过脚本完成大量的数据的自动对比,同时输出对比结果

-
智能 DISPLAY 关键节点信息,便于清晰当前的仿真情况(仿真节点以及是否仿真程序符合预期)
-
智能结束机制,智能检测 PASS/FAIL 机制:通过判断关键信号,自动识别本次仿真是否 PASS 还是 FAIL,若是 PASS 就直接结束仿真,若是 FAIL 就提前结束仿真(对于结束机制,还有超时结束机制,即仿真超过指定的时间即可自动结束仿真;以及还有错误结束机制,即仿真过程中爆出相关指定信号的错误发生,也会自动结束本次仿真,及时通知设计者来查看错误信息)

- 可支持自动完成覆盖率收集(完备的 VCS 环境设置,支持行覆盖率,条件覆盖率,跳转覆盖率,状态机覆盖率,分支覆盖率的收集和查看)
🆔 第 3 部分 后续
本次的 RISC-V 视频 AI SoC 工程的系统验证(XILINX FPGA 验证,ALTERA FPGA 验证,SoC 验证)环境已经全部搭建完毕!当然,每个子系统,子 IP 单独的 DUT 验证环境也是融入于 SoC 验证环境中的(由宏定义来打开即可)
下一期会着重于设计本身,输出详细的数字 IP 设计报告,一份详细的数字 IP 设计报告,不仅是学术论文的重要组成部分之一,同时一名高级数字芯片设计工程师的核心绩效所在,更是一家数字芯片设计公司必须积累的财富
欢迎关注新芯设计公众号,一个只专注于数字芯片设计的公众号
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)