[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
gEDA: Verilog: ternary test code
Might as well post this---maybe it will save some typing.
Possibly there is a cleverer for-loop-based version, sigh.
module main;
wire out;
reg cond,a,b;
assign out = cond ? a : b;
initial begin
cond = 1'b0; a = 1'b0; b = 1'b0; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b0; a = 1'b0; b = 1'b1; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b0; a = 1'b0; b = 1'bx; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b0; a = 1'b0; b = 1'bz; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b0; a = 1'b1; b = 1'b0; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b0; a = 1'b1; b = 1'b1; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b0; a = 1'b1; b = 1'bx; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b0; a = 1'b1; b = 1'bz; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b0; a = 1'bx; b = 1'b0; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b0; a = 1'bx; b = 1'b1; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b0; a = 1'bx; b = 1'bx; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b0; a = 1'bx; b = 1'bz; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b0; a = 1'bz; b = 1'b0; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b0; a = 1'bz; b = 1'b1; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b0; a = 1'bz; b = 1'bx; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b0; a = 1'bz; b = 1'bz; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b1; a = 1'b0; b = 1'b0; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b1; a = 1'b0; b = 1'b1; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b1; a = 1'b0; b = 1'bx; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b1; a = 1'b0; b = 1'bz; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b1; a = 1'b1; b = 1'b0; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b1; a = 1'b1; b = 1'b1; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b1; a = 1'b1; b = 1'bx; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b1; a = 1'b1; b = 1'bz; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b1; a = 1'bx; b = 1'b0; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b1; a = 1'bx; b = 1'b1; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b1; a = 1'bx; b = 1'bx; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b1; a = 1'bx; b = 1'bz; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b1; a = 1'bz; b = 1'b0; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b1; a = 1'bz; b = 1'b1; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b1; a = 1'bz; b = 1'bx; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'b1; a = 1'bz; b = 1'bz; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bx; a = 1'b0; b = 1'b0; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bx; a = 1'b0; b = 1'b1; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bx; a = 1'b0; b = 1'bx; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bx; a = 1'b0; b = 1'bz; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bx; a = 1'b1; b = 1'b0; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bx; a = 1'b1; b = 1'b1; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bx; a = 1'b1; b = 1'bx; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bx; a = 1'b1; b = 1'bz; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bx; a = 1'bx; b = 1'b0; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bx; a = 1'bx; b = 1'b1; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bx; a = 1'bx; b = 1'bx; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bx; a = 1'bx; b = 1'bz; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bx; a = 1'bz; b = 1'b0; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bx; a = 1'bz; b = 1'b1; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bx; a = 1'bz; b = 1'bx; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bx; a = 1'bz; b = 1'bz; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bz; a = 1'b0; b = 1'b0; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bz; a = 1'b0; b = 1'b1; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bz; a = 1'b0; b = 1'bx; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bz; a = 1'b0; b = 1'bz; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bz; a = 1'b1; b = 1'b0; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bz; a = 1'b1; b = 1'b1; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bz; a = 1'b1; b = 1'bx; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bz; a = 1'b1; b = 1'bz; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bz; a = 1'bx; b = 1'b0; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bz; a = 1'bx; b = 1'b1; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bz; a = 1'bx; b = 1'bx; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bz; a = 1'bx; b = 1'bz; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bz; a = 1'bz; b = 1'b0; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bz; a = 1'bz; b = 1'b1; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bz; a = 1'bz; b = 1'bx; #1; $display("%b %b %b %b",out,cond,a,b);
cond = 1'bz; a = 1'bz; b = 1'bz; #1; $display("%b %b %b %b",out,cond,a,b);
end
endmodule