左移寄存器vhdl_vhdl - VHDL中移位寄存器的结构设计 - 堆栈内存溢出

该博客探讨了VHDL中左移寄存器的设计问题,指出原始设计使用4个输入与非门的不足,并建议使用2:1多路复用器替代。通过详细解释如何利用3个2输入NOR门构建多路复用器,解决了在移位寄存器中LSB选择的问题,确保数据正确左移。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

您的负载(WriteShift ='1'和en ='1')也不起作用。

有一个设计缺陷,您使用4个输入与非门,您需要一个2:1多路复用器来为移位寄存器中的四个LSB在Din和q位之间进行选择。

通过使用三个2个输入NOR门创建2:1多路复用器,可以解决此问题:

architecture behavioral of shiftregis is

component notgate

port (

in0: in std_logic;

out0: out std_logic

);

end component;

-- component nand4gate

-- port (

-- i0: in std_logic;

-- i1: in std_logic;

-- i2: in std_logic;

-- i3: in std_logic;

-- bitout: out std_logic

-- );

-- end component;

component nor2gate

port (

i0: in std_logic;

i1: in std_logic;

bitout: out std_logic

);

end component;

component d_flipflop

port (

din: in std_logic;

en: in std_logic;

q: out std_logic;

reset: in std_logic;

clk: in std_logic

);

end component;

signal q4, q3, q2, q1, i

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值