EDA两个二选一选择器串联

LIBRARY IEEE;							--调用库
USE IEEE.STD_LOGIC_1164.ALL;    --调用库
ENTITY selection IS                  --开始定义电路模块
PORT(a1,a2,a3,s0,s1 : IN STD_LOGIC;    --输入信号
					ou   : OUT STD_LOGIC);  --输出信号
END ENTITY selection;					--定义结束电路模块

ARCHITECTURE Muxk OF selection IS  --结构体
SIGNAL y1:STD_LOGIC;   --定义一个全局变量(信号),负责传输选择器1的结果
		BEGIN           --结构体开始
			Mux21a1:PROCESS(s0,a2,a3)  --要把所有定义的变量写在进程的括号内
			BEGIN				 --进程开始
				CASE s0 IS   --case语句开始
					WHEN '0' => y1<=a2;--如果s0为0则,y1为a的值
					WHEN '1' => y1<=a3;--如果s0为1则,y1为b的值
				END CASE;			  --case语句结束
			END PROCESS Mux21a1;
			Mux21a2:PROCESS(s1,a1,y1)		--要把所有定义的变量写在进程的括号内
			BEGIN									--进程开始
				IF(s1='0')   THEN ou<=a1;
				ELSIF(s1='1') THEN ou<=y1;
				END IF;
			END PROCESS Mux21a2;
		END ARCHITECTURE Muxk;

代码用的语言是VDHL。

上图为仿真波形图。

代码如有错误欢迎指正。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值