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