设计模块描述了一个可综合的数据比较器, 功能是比较数据a和数据b的结果,如果两个数据相同,则输出结果为1,否则给出结果0。
模块设计方法一:
module compare(equal, a, b);
input a, b;
output equal;
assign equal = (a == b) ? 1 : 0;
endmodule
模块设计方法二:
module compare(equal, a, b);
input a, b;
output equal;
reg equal;
always@(a or b)
if (a == b)
equal = 1;
else
equal = 0;
endmodule
测试模块设计方法之一:
`timescale 1ns/1ns
`include "./simple.v"
module simple_tb();
reg a, b;
wire equal;
initial begin
a = 0; b = 0;
#100 a = 0; b = 1;
#100 a = 1; b = 1;
#100 a = 1; b = 0;
#100 a = 0; b = 0;
#100 $stop;
end
simple simple_t0(
.equal(equal),
.a(a),
.b(b)
);
endmodule
Schematic
Simulation