当前位置:网站首页>接口interface
接口interface
2022-07-23 07:50:00 【狮驼岭上的小钻风】
接口定义
接口可以用作设计,也可以用作验证,在验证环境中,接口可以使得连接变得简洁而不易出错
interface和module的使用性质很像。它可以定义端口,也可以定义双向信号;它可是使用initial和always,也可以定义function和task
interface可以在硬件环境和软件环境中传递,例如作为module的端口列表(不用说明方向),也可以作为软件方法的形式参数(声明时要加virtual)
初学者可以将interface看作一个“插排”,而DUT与TB之间的数据驱动关系可使用interface这个插排来完成
在interface的端口列表中只需要定义时钟、复位等公共信号,或者不定义任何端口信号,转而在变量列表中定义各个需要跟DUT和TB连接的logic变量。为了简单易用,我们推荐使用logic来定义变量。
interface也可以依靠参数化方式提高复用性。
interface在例化时,同module的例化方式一样。对于有对应interface的DUT和TB组件(例如stimulator),在其例化时,也只需要传递匹配的interface变量名即可完成interface的变量传递。(模块里可以例化模块和接口,接口里可以例化接口,不能例化模块)
module top;
bit clk;
always #5 clk=~clk;
arb_if arbif(clk);
arb_a1 a1(arbif); //例化时,接口作为参数引入
test t1(arbif);
endmodule:top接口的优势
- 将有关信号封装在同一个接口中,对于设计和验证环境都便于维护和使用。如果你需要新添加信号,只需要在接口中定义这个信号,而在使用这个接口的模块或者验证环境中做出相应修改。
- 由于接口既可以在硬件世界(module)中使用,又可以在软件世界(class)中使用,interface作为SV中唯一的硬件和软件环境的媒介交互
- 接口由于可以例化的特性,使得对于多组相同的总线,在例化和使用时变得更加灵活,不仅使得代码变得简洁,也更易于验证环境的管理和维护
- 每个slave initiator的端口列表中只需要一个slave_if接口即可,不再需要分散的端口arbiter responder也只需要一个arb_if接口
- 顶层在例化时,只需要罗列出接口的数量,不再需要分散的变量作为TB与DUT之间的连线。stimulator驱动数据只需要借助对应的interface即可,易于操作和管理。
边栏推荐
猜你喜欢

Excel essay record

How can Creo 9.0 quickly modify CAD coordinate system?

配置firecracker流程即踩坑记录

酷睿i7 1165g7相当于什么水平 i71165g7属于哪个档次

Notes du jour 5

天玑1100相当于骁龙多少处理器 天玑1100相当于骁龙多少 天玑1100怎么样

Network security note 1 - Security of Internet Protocol

kafka消费报错coordinator unavailable.Rediscovery will be attempt redisCovery

记一次Vulnhub靶机练习成功拿下root权限

BERT 文章翻译
随机推荐
容器网络原理
T-SEDA编码
头部产品创收25亿,SLG赛道也被黑产盯上了
Principle of container network
Notes du jour 5
GRE,MGRE的详细了解;OSPF基础配置知识
excel随笔记录
第七天笔记
MGRE experiment
Day108.尚医通:医院模拟系统接口对接 - 医院|科室|排班 增删改分页条件查询
酷睿i7 1165g7相当于什么水平 i71165g7属于哪个档次
LeetCode_ 52_ Queen n II
子组件向父组件传参的几种方法
200 lines of code, in-depth analysis of the principle and implementation of dynamic calculation diagram
SDF refraction and reflection effect recording
Notes on the ninth day
How to ensure the reliable transmission of messages? What if the message is lost
MYSQL练习题:向CEO汇报的所有员工
【微信小程序】案例 - 本地生活
MATLAB:将PNG图片转成txt文件