EDA四选一选择器设计.doc
- 文档编号:2486710
- 上传时间:2022-10-30
- 格式:DOC
- 页数:5
- 大小:461.50KB
EDA四选一选择器设计.doc
《EDA四选一选择器设计.doc》由会员分享,可在线阅读,更多相关《EDA四选一选择器设计.doc(5页珍藏版)》请在冰豆网上搜索。
4选1数据选择器
1·设计背景和设计方案
1·1设计背景
该设计是以数字电子技术为基础,实现数据从四位数据中按照输入的信号选中一个数,来实现所期望的逻辑功能。
1·2设计方案
用拨码开关作四位数据及两位控制端的输入,LED作输出,通过拨码开关组成控制输入端s1和s0不同组合,观察LED与数据输入端a,b,c,d的关系,验证四选一数据选择器设计的正确性。
使用逻辑门电路与、或、非的组合来表达4选1数据选择器,通过控制输入的信号来控制输出的信号值。
其逻辑电路图如下:
其示意框图如下:
其中输入数据端口为D0、D1、D2、D3,A、A’为控制信号,Y为输出。
令AA’=“00”时,输出Y=D0;
令AA’=“01”时,输出Y=D1;
令AA’=“10”时,输出Y=D2;
令AA’=“11’时,输出Y=D3;
4选1
数据选择器
D0
输入D1Y
数据D2
D3
AA′
真值表如下:
输入
输出
DA1A0
Y
D000
D0
D101
D1
D210
D2
D311
D3
2·方案实施
1)程序1
2·1·1
设计思路
四选一多路选择器设计时,定义输入S为标准以内漏记为STD_LOGIC,输出的信号Z的数据类型定义为2位标准逻辑矢量位STD_LOGIC_VECTOR(1DOWNTO0).使用LIBRATY语句和USE语句,来打开IEEE库的程序包STD_LOGIC_1164.ALL。
当输入信号时,程序按照输入的指令来选择输出,例如输入信号为“00”时,将a的值给z,进而输出z的值,输入信号为“11”是,将a的值给z,进而输出z的值。
若输入信号是已经定义的四个信号之外的值时(即当IF条件语句不满足时),输出值为x,并将x的值给输出信号z。
这样即可实现四选一数据选择的功能。
2·1·2
程序
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
ENTITYmux41is
PORT(a,b,c,d:
INSTD_LOGIC;
s:
INSTD_LOGIC_VECTOR(1DOWNTO0);
z:
OUTSTD_LOGIC);
ENDmux41;
ARCHITECTUREoneOFmux41IS
BEGIN
PROCESS(s,a,b,c,d)
BEGIN
CASEsIS
WHEN"00"=>z<=a;
WHEN"01"=>z<=b;
WHEN"10"=>z<=c;
WHEN"11"=>z<=d;
WHENOTHERS=>z<=null;
ENDCASE;
ENDPROCESS;
ENDone;
2·1·3
运行结果
当输入信号“00”时,输出信号z的值为‘a’;
当输入信号“01”时,输出信号z的值为‘b’;
当输入信号“10”时,输出信号z的值为‘c’;
当输入信号“11”时,输出信号z的值为‘d’;
2·1·4
波形仿真及描述
输入:
a的波形周期为10ns,b的波形周期为5ns,c的波形周期为15ns,d的波形周期为8ns。
s[1]的波形周期为5ns,s[2]的波形周期为10ns。
输出:
2)程序2
2·2·1
设计思路
定义6个输入信号,一个输出信号,当控制信号A=‘1’时,muxval的值加1,即muxval=muxval+1;当控制信号B=‘1’时muxval的值加2,即muxval=muxval+2。
当输入值为‘i0’时,输出q的值为0,当输入的值为‘i1’时,输出q的值为1,当输入值为‘i2’时,输出q的值为2,当输入值为‘i3’时,输出q的值为3。
2·2·2程序
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
ENTITYmux41IS
PORT(i0,i1,i2,i3,a,b:
INSTD_LOGIC;
q:
OUTSTD_LOGIC);
ENSmux4;
ARCHITECTUREb_mux4OFmux4IS
BEGIN
Process(i0,i1,i2,i3,a,b)
Variablemuxval:
integerrang7downto0;
Begin
muxval:
=0;
if(a='1')thenmuxval:
muxval+1;endif;
if(b='1')thenmuxval:
muxval+2;endif;
casemuxvalis
when0=>q<=i0;
when1=>q<=i1;
when2=>q<=i2;
when3=>q<=i3;
Whenothers=>null;
endcase;
endprocess;
ENDb_mux4;
2·2·3
运行结果
当输入信号“00”时,输出信号z的值为‘i0’;
当输入信号“01”时,输出信号z的值为‘i1’;
当输入信号“10”时,输出信号z的值为‘i2’;
当输入信号“11”时,输出信号z的值为‘i3’;
2·2·4
波形仿真及描述
输入:
a的波形周期为20ns,b的波形周期为15ns,c的波形周期为20ns,d的波形周期为15ns,s[1]的波形周期为8ns,s[2]的波形周期为16ns。
输出:
3·结果和结论
经过对以上程序的运行和编译,可得出以下仿真图结论和所设计一致。
4·参考文献
[1]余孟尝主编《数字电子技术基础简明教程》,1998-12。
[2]潘松黄继业编著《EDA技术使用个教程》,2006-9。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EDA 四选一 选择器 设计