mirror of
https://github.com/verilator/verilator.git
synced 2025-01-07 15:17:36 +00:00
52 lines
975 B
Verilog
52 lines
975 B
Verilog
// DESCRIPTION: Verilator: Verilog Test module
|
|
|
|
module t (/*AUTOARG*/
|
|
// Inputs
|
|
clk
|
|
);
|
|
input clk;
|
|
|
|
tri pad_io_h;
|
|
tri pad_io_l;
|
|
|
|
sub sub (.*);
|
|
|
|
endmodule
|
|
|
|
|
|
module sub (/*AUTOARG*/
|
|
// Inouts
|
|
pad_io_h, pad_io_l
|
|
);
|
|
|
|
parameter USE = 1'b1;
|
|
parameter DIFFERENTIAL = 1'b1;
|
|
parameter BIDIR = 1'b1;
|
|
|
|
inout pad_io_h;
|
|
inout pad_io_l;
|
|
|
|
wire [31:0] dqs_out_dtap_delay;
|
|
|
|
generate
|
|
if (USE) begin: output_strobe
|
|
wire aligned_os_oe;
|
|
wire aligned_strobe;
|
|
|
|
if (BIDIR) begin
|
|
reg sig_h_r = 1'b0;
|
|
reg sig_l_r = 1'b0;
|
|
always @* begin
|
|
sig_h_r = ~aligned_os_oe ? aligned_strobe : 1'bz;
|
|
if (DIFFERENTIAL)
|
|
sig_l_r = ~aligned_os_oe ? ~aligned_strobe : 1'bz;
|
|
end
|
|
assign pad_io_h = sig_h_r;
|
|
if (DIFFERENTIAL)
|
|
assign pad_io_l = sig_l_r;
|
|
end
|
|
end
|
|
endgenerate
|
|
|
|
endmodule
|