sv 语言的一些特性和适用场景
- interface struct。interface 和 module 是一个逻辑层级,使用方式也相似。可以用来简化接口
interface xx_if (
input logic clk,
input logic rst
);
logic rdy;
logic valid;
logic [7:0] data;
modport master ( // 此处只需要定义方向,不需要定义数据类型和位宽
input clk,rst,rdy,
output valid ,data
);
modport slave ( // 此处只需要定义方向,不需要定义数据类型和位宽
input clk,rst,data,valid,
output rdy
);
### // 可以添加测试信号,测试激励。
endinterface
module top (
input logic clk,
input logic rst
);
###
endmodule
xx_if xx_if_inst(
.clk (clk),
.clk (rst)
);
// 引用方式
// xx_if_inst.master;
// xx_if_inst.slave;
// xx_if_inst.slave.rdy;
module master(
interface xx_if.master
);
###
endmodule
master master(
.xx_if.master (xx_if.mas