add demux and testbench
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
module demux(y, z, a, sel);
|
||||
input a, sel;
|
||||
output y, z;
|
||||
wire notSel;
|
||||
|
||||
not(notSel, sel);
|
||||
and(z, a, sel);
|
||||
and(y, a, notSel);
|
||||
endmodule
|
||||
@@ -0,0 +1,18 @@
|
||||
module demux_tb();
|
||||
reg a,b, sel;
|
||||
output y;
|
||||
demux dut(y, z, a, sel);
|
||||
initial begin
|
||||
a = 0; sel = 0;
|
||||
$monitor("IN: %b ",a, "SEL: ",sel, " OUT: a: %b, b: %b", y, z);
|
||||
#5;
|
||||
a = 1;sel = 0;
|
||||
$monitor("IN: %b ",a, "SEL: ",sel, " OUT: a: %b, b: %b", y, z);
|
||||
#5;
|
||||
a = 0; sel = 1;
|
||||
$monitor("IN: %b ",a, "SEL: ",sel, " OUT: a: %b, b: %b", y, z);
|
||||
#5;
|
||||
a = 1; sel = 1;
|
||||
$monitor("IN: %b ",a, "SEL: ",sel, " OUT: a: %b, b: %b", y, z);
|
||||
end
|
||||
endmodule
|
||||
Reference in New Issue
Block a user