如何在verilog中通过一个输入处理输出和输入总线传输?
我想用verilog制作一个简单的模块 计划是这样的如何在verilog中通过一个输入处理输出和输入总线传输?,verilog,Verilog,我想用verilog制作一个简单的模块 计划是这样的 If(en) A=B; else B=A; 我想实现没有时钟的verilog 能否实现上述逻辑 更新 我想要两个输入输出端口的总和。 但我不知道怎么做。您能告诉我如何计算两个输入输出端口的总和吗 Module test1( en, A, B, C ); input en; inout [1:0] A; inout [1:0] B; output [3:0] C; ... What can I do ? .
If(en)
A=B;
else
B=A;
我想实现没有时钟的verilog
能否实现上述逻辑
更新
我想要两个输入输出端口的总和。
但我不知道怎么做。您能告诉我如何计算两个输入输出端口的总和吗
Module test1(
en,
A,
B,
C
);
input en;
inout [1:0] A;
inout [1:0] B;
output [3:0] C;
...
What can I do ?
...
endmodule
如果(英文)
A=B;
其他的
B=A
您不能将两个输入输出端口A
和B
相加<代码>en确定方向。
考虑这个代码:
assign A = (en) ? B : 1'bz;
assign B = (~en) ? A : 1'bz;
当en
较低时,B
将作为您的输出,A
将作为您的输入
当en
处于高位时,A
将作为您的输出,B
将作为您的输入
当您分配A
和B
之和时,您的输出C
将是未定义的,因为任何一个输入都是1'bz
assign C = A + B; // will cause undefined behavior
将其声明为
inout
并使用类似于assigna=(en==1)?b:1'bz assign b=(en==0)?a:1'bz代码>可能有帮助。输入输出端口a是什么?B或者两者都有?为了帮助您改进问题,请在vhdl和verilog之间进行选择。不是两者都有。@e19293001我想是verilog。请