Testbench
mux8to1.tv
DUT {
module MUX8TO1(input [2:0] SEL, input [7:0] I, output O);
[SEL, I] -> [O];
}
main() {
bit3 sel;
bit8 data;
for all data // cycles data from 0 to 255
for all sel { // cycles sel from 0 to 7
bit expected = data.(sel);
[sel, data] -> [expected];
}
}
This testbench can be used for all the mux8to1 code examples above. The expected output from the testbench is:
(Log) (20480 ns) 2048 vectors executed (2048 passes, 0 fails)