如何解决在 Verilog 中,如何将模块的输入接地本质上是输入 = 0 值
所以我正在制作一个 ALU,它有一个 8to1 多路复用器,可以在不同的操作之间进行选择。然而,只需要 6 个操作,因此多路复用器的其他两个输入甚至不需要使用。那么有没有办法将它们本质上连接到gnd?基本上不为这些情况输出任何内容?
这里是参考/可视化的一般设计示意图。 https://i.gyazo.com/854f8acd904f9e7db2f950c3b4eab27d.png
这是我的 8to1 Mux 代码。 (不要认为我需要展示这个,但它可能会有所帮助。)
module eight_one_mux(D,S,out);
input [7:0] D;
input [2:0] S;
output reg [63:0] out;
always @(D or S)
begin
case(S)
0 : out = D[0]; //And
1 : out = D[1]; //Or
2 : out = D[2]; //Adder
3 : out = D[3]; //xor
4 : out = D[4]; //lefter
5 : out = D[5]; //righter
6 : out = D[6]; //GND
7 : out = D[7]; //GND
default : out = 1'bx;
endcase
end
endmodule
解决方法
您可以直接将它们设置为 0
6 : out = 1'b0; //GND
7 : out = 1'b0; //GND
(附带说明,如果这是一个多路复用器,您可能希望输出的位数与输入的位数相同)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。