概念
代表一捆智能的连线(将连线捆绑成一个接口),这捆线连接模块-模块/tb,具有智能同步和连接的功能,既可以像模块那样被例化,又可作为端口
功能
- 可定义端口,可使用过程语句块,可定义function task
- module声明接口时,可把接口看作是一个特殊的端口,在module的端口列表里声明,不需声明方向
- 允许多个信号被整合到一块表示一个单一的抽象接口,便于维护和使用
- 多个模块可以索引同一个接口内的信号
- tb可以通过接口把数据驱动给DUT,dut也可以通过接口把数据反馈给tb
优势
- Verilog中端口在遇到模块中增加新信号时,改动较为繁琐,接口解决了这一问题
- stimulator驱动数据只需借助对应的接口,易于操作
- 接口是SV中唯一的硬件和软件环境交互的媒介,要熟练掌握用接口做数据的驱动和采样(在DUT中做数据驱动只能通过接口)
接口的声明
接口的例化
使用
- 接口中定义变量建议使用logic类型
- 接口的例化方式和module一样
- 接口可例化接口,不可例化module
- 接口中使用modport能够使信号分组并指明方向
每个channel对应一个接口的好处在于,如果要增加一个channel,只需要再例化一个接口,易于操作
题目
1.ABCD