Verilog 多位与一位 进行异或
作者:互联网
遇到一个有意思的问题
module t(
input [31:0]a,
input b,
output [31:0]c,
output [31:0]d
);
assign c = a^b;
assign d = b?~a:a;
endmodule
a与b进行异或得到的结果到底是什么?
我不信,就去试了试
这似乎和上面的结论不同
查资料,新增了一个e端口
module t(
input [31:0]a,
input b,
output [31:0]c,
output [31:0]d,
output [31:0]e
);
assign c = a^b;
assign d = b?~a:a;
assign e = {32{b}}^a;
endmodule
看来是进行了算数移位再进行异或
标签:多位,31,module,异或,Verilog,input,output,assign 来源: https://blog.csdn.net/Harry_CHL/article/details/120472874