HDL 中的多路复用器(8 位输入和 4 位输出)
Posted
技术标签:
【中文标题】HDL 中的多路复用器(8 位输入和 4 位输出)【英文标题】:Mux(8-bits input and 4-bits output) in HDL 【发布时间】:2019-11-24 16:34:58 【问题描述】:如果 sel = false,则 out 应包含 in 的低 4 位(即 in[0]、in[1]、in[2]、in[3]) 如果 sel = true,则 out 应包含 in 的高 4 位(即 in[4]、in[5]、in[6]、in[7])
这是我的代码以及如何修改它....?
CHIP NewMux
IN in[8], sel;
OUT out[4];
PARTS:
Mux4(sel=sel, a=in[0], b=false, out=out[0]);
Mux4(sel=sel, a=in[1], b=false, out=out[1]);
Mux4(sel=sel, a=in[2], b=false, out=out[2]);
Mux4(sel=sel, a=in[3], b=false, out=out[3]);
Mux4(sel=sel, a=in[4], b=true, out=out[0]);
Mux4(sel=sel, a=in[5], b=true, out=out[1]);
Mux4(sel=sel, a=in[6], b=true, out=out[2]);
Mux4(sel=sel, a=in[7], b=true, out=out[3]);
【问题讨论】:
【参考方案1】:您不能让多个组件生成相同的输出。您有 4 条输出线,因此您需要使用 4 个简单的 1 位多路复用器。每个都将 sel 值和两个 in 行作为输入,并生成一个 out 行。
【讨论】:
以上是关于HDL 中的多路复用器(8 位输入和 4 位输出)的主要内容,如果未能解决你的问题,请参考以下文章
怎样把异步FIFO的Verilog hdl 代码中的parameter DSIZE = 8; parameter ASIZE = 4;改为宽度为16位,谢谢!
使用74LS83构成4位二进制全加\全减器。 具体要求:1)列出真值表; 2)画出逻辑图; 3)用Verilog HDL仿真