微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC验证交流 > Systemverilog interface与clocking定义的问题

Systemverilog interface与clocking定义的问题

时间:10-02 整理:3721RD 点击:

interface bus_A (input clk);//定义interface的外部接口

logic [15:0] data;

logic write;

modport test (input data, output write);

modport dut (output data, input write);

endinterface

interface bus_B (input clk);//定义interface的外部接口

logic [8:1] cmd;

logic enable;

modport test (input enable);

modport dut (output enable);

endinterface

program test( bus_A.testa, bus_B.test b );//例化interface分别为a,b

clocking cd1 @(posedge a.clk);(声明时钟块,其中的信号是此时钟域里的同步信号)

input a.data;

output a.write;

inout state = top.cpu.state;

endclocking

clocking cd2 @(posedge b.clk);

input #2 output #4psb.cmd;// ?(这一句是什么意思?有谁能给我解释一下吗?)

input b.enable;

endclocking


initialbegin
// program begins here
...
// user can access cd1.a.data , cd2.b.cmd , etc…
end
endprogram

The testmodule can be instantiated and connected as before:
module top;

logic phi1, phi2;

bus_A a(phi1);

bus_B b(phi2);

test main( a, b );

cpu cpu1( a );

mem mem1( b );

endmodule


红色的部分是我不太明白的,有谁能给我点启发吗?谢谢。

输入输出采样点。

能不能简单给我解释一下?psb是什么意思?
整句的意思是两个周期采样input,再过四个周期采样output?
谢谢!

input #2 output #4psb.cmd;

input #2 output #4psb.cmd;
这是设置输入输出歪斜(skews)的,#2和#4不是代表周期,是timescale中设置的时间单位;
代表采样和驱动的时间。

4psb.cmd是不是4ps b.cmd?是的话可以理解了

对的,原句就是“input #2 output #4ps cmd=b.cmd”

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top