sumanthhv
Newbie level 4
dear forum members,
here's the code i'm currently simulating:
module tsbuf (dataout, data, datain, rw);
input [15:0] dataout; // data out from the CPU
inout [15:0] data; // data in from the outside to the CPU
output [15:0] datain; // external bidirectional bus
input rw; // 1 indicates read
assign data = rw ? 16'bz : dataout;
assign datain = data;
endmodule
and here's the testbench i've written for the same:
module tsbuf (dataout, data, datain, rw);
input [15:0] dataout; // data out from the CPU
inout [15:0] data; // data in from the outside to the CPU
output [15:0] datain; // external bidirectional bus
input rw; // 1 indicates read
assign data = rw ? 16'bz : dataout;
assign datain = data;
endmodule
When rw = 1, the behaviour is as expected i.e, datain is driven by data. However when rw = 0, data, which acts as output port in this case is not driving dataout.
thanks for your help in advance,
Sumanth
here's the code i'm currently simulating:
module tsbuf (dataout, data, datain, rw);
input [15:0] dataout; // data out from the CPU
inout [15:0] data; // data in from the outside to the CPU
output [15:0] datain; // external bidirectional bus
input rw; // 1 indicates read
assign data = rw ? 16'bz : dataout;
assign datain = data;
endmodule
and here's the testbench i've written for the same:
module tsbuf (dataout, data, datain, rw);
input [15:0] dataout; // data out from the CPU
inout [15:0] data; // data in from the outside to the CPU
output [15:0] datain; // external bidirectional bus
input rw; // 1 indicates read
assign data = rw ? 16'bz : dataout;
assign datain = data;
endmodule
When rw = 1, the behaviour is as expected i.e, datain is driven by data. However when rw = 0, data, which acts as output port in this case is not driving dataout.
thanks for your help in advance,
Sumanth