基于python的uvm仿真脚本

声明:本文中的大多数代码都来源于 张强 编著的 《UVM实战》,这本书是初入职场时导师买的一本书,也引导我走上了验证工程师之路,在这里向作者表示感谢,也谢谢我的导师。作者书中提供了源代码的下载地址:http://www.hzcourse.com/web/refbook/detail/5651/229,
首先演示一个比较简单的例子:本文的仿真软件为vcs,在linux系统上运行
环境的结构如下:
在这里插入图片描述
Dut里包含一个dut.sv,具体内容如下:
基于python的uvm仿真脚本_第1张图片
Filelist里包含一个dut_sim.f, 内容如下:
1:加入uvm源代码的地址
2:加入验证环境的地址
3:加入设计代码的地址
基于python的uvm仿真脚本_第2张图片
Verif里包含了一个my_driver.sv和一个top_tb.sv
My_driver.sv内容如下
基于python的uvm仿真脚本_第3张图片
Top_tb的内容如下:
基于python的uvm仿真脚本_第4张图片
Run.py中代码如下:
在这里插入图片描述
给run.py文件赋权限:
Chmod +x run.py
然后输入: ./run.py就可以了
最后的结果如下所示:
基于python的uvm仿真脚本_第5张图片
本节的代码主要来源于\src\ch2\section2.2\2.2.1
脚本中编译对应的选项的含义:
-sverilog 支持ieee制定的system Verilog标准
引入uvm_dpi.cc,是用来支持与c、c++等语言的交付
-CFLAGS 将配置选项传递给C编译器
-full64 使能够在64bit 的模式下编译和仿真
+v2k 使用verilog2001的语法规则
+libext+.sv+.v 指定编译器加载的文件的后缀名,
-P **.tab 编译用户自定义的PLI定义表文件
+vcs+lic+wait 告诉用户去等待网络许可证,如果没有的话

你可能感兴趣的:(仿真工具和脚本,python)