题解 | #4位数值比较器电路#纯粹的门级电路与模块化
4位数值比较器电路
https://www.nowcoder.com/practice/e02fde10f1914527b6b6871b97aef86d
`timescale 1ns/1ns
module comparator_4(
input [3:0] A ,
input [3:0] B ,
output wire Y2 , //A>B
output wire Y1 , //A=B
output wire Y0 //A<B
);
wire [3:0]y0,y1,y2;
comp1 u_comp1_0(
.en(1),
.a(A[3]),
.b(B[3]),
.y2(y2[3]),
.y1(y1[3]),
.y0(y0[3])
);
genvar i;
generate
for(i=0;i<3;i=i+1)begin
comp1 u_comp1(
.en(y1[i+1]),
.a(A[i]),
.b(B[i]),
.y2(y2[i]),
.y1(y1[i]),
.y0(y0[i])
);
end
endgenerate
assign Y0=|y0;
assign Y1=&y1;
assign Y2=|y2;
endmodule
module comp1(
input en,
input a,
input b,
output y2,
output y1,
output y0
);
assign y2=en&a&(~b);
assign y0=en&(~a)&b;
assign y1=en&(~(y2|y0));
endmodule
查看34道真题和解析
OPPO公司福利 1114人发布