mirror of https://github.com/zachjs/sv2v.git
33 lines
637 B
Systemverilog
33 lines
637 B
Systemverilog
typedef struct packed { logic x; } T;
|
|
|
|
interface Interface;
|
|
integer x;
|
|
function z;
|
|
input x;
|
|
z = ~x;
|
|
endfunction
|
|
endinterface
|
|
|
|
module Module(interface y);
|
|
function z;
|
|
input T y;
|
|
z = y.x;
|
|
endfunction
|
|
integer x = 0;
|
|
initial begin
|
|
#1;
|
|
$display("x = %b", x);
|
|
$display("z(x) = %b", z(x));
|
|
$display("y.x = %b", y.x);
|
|
$display("y.z(x) = %b", y.z(x));
|
|
$display("y.z(y.x) = %b", y.z(y.x));
|
|
$display("y.z(z(y.x)) = %b", y.z(z(y.x)));
|
|
end
|
|
endmodule
|
|
|
|
module top;
|
|
Interface x();
|
|
initial x.x = 1;
|
|
Module y(x);
|
|
endmodule
|