使用python自动化生成TB 中 interface

本文介绍了在搭建UVM测试平台时,如何使用Python脚本自动化生成不同类型的interface,包括AMBA、NOC和cache接口。通过统一的格式定义接口初始文件,结合sys、os、getopt等模块处理命令行参数,实现clocking block的自动生成,简化了TB开发中的重复工作。
摘要由CSDN通过智能技术生成

在搭建UVM TB的时候,要根据DUT interface分类的不同,比如有下面的接口类型
AMBA<--------------------->DUT BUS interface
DUT<-------------------->NOC interface
DUT<-------------------->cache interface
等等一系列 interface
根据interface 的不同,划分不同的agent,不同的transaction等
因此在生成多个不同的interface带的时候,会存在重复性工作,这个时候就要想到使用脚本来处理,本文给出使用python处理的思想

interface作为连接静态硬件DUT和动态软件TB的中间桥梁,通过interface TB 将transaction driver到DUT 接口上,TB monitor 接口 用作TB的别的操作。

下面介绍使用python 生成通用interface 的方法。这里用到python 下面的几个模块
re :: 正则表达式相关,有关正则表达式自行学习
sys:: python 系统参数相关
os :: 输入输出相关
getopt :: 命令行args解析相关
python 模块库见下面的网站
https://docs.python.org/3/library/
逻辑1 在定义interface 要统一规范,使用统一的格式来定义interafce 的初始文件

interface  thread (
           clock_domain     clk;
         
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值