新闻动态   News
你的位置:大功率电感 > 技术

EDA四选一多路选择器的设计

时间:2022-09-03 06:07:06  来源:  作者: 点击统计:

多路选择器(又称为数据选择器)①功能在选择变量控制下,从多路输入数据中选中某一路数据送至输出端。

对于一个具有2n个输入和1个输出的多路选择器,有n个选择变量。

②典型芯片典型中规模多路选择器有双4路数据选择器74153,其引脚排列图和逻辑符号如图1(a)、(b)所示。

数据选择器74153芯片含两个4路数据选择器,每个选择器接收4路数据输入,产生一个输出,两个4路数据选择器共用两个选择变量。

芯片有16条引线,其中1D0~1D3,2D0~2D3为8条数据输入线,A1和A0为选择输入线,1Y、2Y为2条输出线,1G、2G为使能控制端,另外有1条电源线和1条地线。

4路数据选择器的输出函数表达式为式中,mi为选择变量构成的最小项。

③应用多路选择器除完成对多路数据进行选择的基本功能外,还可用来实现数据的并-串转换、序列信号产生以及实现各种逻辑函数功能。

例如采用4路选择器74153实现如下逻辑函数的功能解给定函数为一个3变量函数,由于4路选择器具有2个选择控制变量,所以用来实现3变量函数功能时,应该首先从函数的3个变量中任选2个作为选择控制变量,然后再确定选择器的数据输入。

假定选A、B与选择控制端A1、A0相连,则可将函数F的表达式表示成如下形式:显然,要使4路选择器的输出Y与函数F相等,只需:。

据此,可画出逻辑电路如图2所示。

类似地,也可以选择A、C或B、C作为选择控制变量,选择控制变量不同,数据输入也不同。

4选1数据选择器的设计1、设计背景和设计方案设计背景:该设计是以数字电子技术为基础,实现数据从四位数据中按照输入的信号选中一个数,来实现所期望的逻辑功能。

设计方案:用拨码开关作四位数据及两位控制端的输入,LED作输出,通过拨码开关组成控制输入端s1和s0不同组合,观察LED与数据输入端a,b,c,d的关系,验证四选一数据选择器设计的正确性。

使用逻辑门电路与、或、非的组合来表达4选1数据选择器,通过控制输入的信号来控制输出的信号值。

其逻辑电路如下图:其示意框图如下:其中输入数据端口为DO、D1、D2、D3,A、A为控制信号,Y为输出。

令AA‘=“OO”时,输出Y=D0;令AA’=“01”时,输出Y=D1;令AA‘=“10”时,输出Y=D2;令AA’=“11”时,输出Y=D3;真值表如下:2、方案实施(1)设计思路四选一多路选择器设计时,定义输入s为标准以内漏记为SIDLOGIC输出的信号Z的数据类型定义为2位标准逻辑矢量位STD_LOGIC_VECTOR(1DOWNTO0)。

使用LBRATY语句和USE语句,来打开IEEE库的程序包STDLOGIC_1164.ALL。

当输入信号时,程序按照输入的指令来选择输出,例如输入信号为“OO”时,将a的值给z,进而输出z的值,输入信号为“11”是,将a的值给z,进而输出z的值。

若输入信号是已经定义的四个信号之外的值时(即当正条件语句不满足时),输出值为x,并将x的值给输出信号Z。

这样即可实现四选一数据选择的功能。

程序LIBRARY正EE:USEIEEE.STD_LOGIC_1164.ALL:ENtiTYmux41isPORT(a,b.c.d:NSTD_LOGIC:INSTD_LOGIC_VECTOR(1DOWNTO0):STD_LOGIC):OUTENDmux41:ISARCHITECTUREoneOFmux41BEGINPROCESS(s,a.b.c.d)BEGINISCASESWHEN“00”=》z《=a:WHEN“01”=》z《=b:WHEN“10”=》z《=c:WHEN“11”=》z《=d:WHENOTHERS=》z《-=null:ENDCASE;ENDPROCESS:ENDone;运行结果当输入信号“OO”时,输出信号z的值为‘a’:当输入信号“01”时,输出信号z的值为‘b’;当输入信号“10”时,输出信号z的值为‘c’:当输入信号“11”时,输出信号z的值为‘d’:波形仿真及描述输入:的波形周期为10ns,b的波形周期为5ns,c的波形周期为15ns,d的波形周期为8nsos[1]的波形周期为5ns.s的波形周期为10ns。

(2)设计思路定义6个输入信号,一个输出信号,当控制信号A=‘1’时,muxval 的值加1,即muxval=muxva1+1当控制信号 B= ‘1’时muxval的值加2,即muxval-muxval+2。

当输入值为‘i0’时,输出q的值为0,当输入的值为“i1’时,输出q的值为1,当输入值为‘i2’时,输出q的值为2,当输入值为‘i3’时,输出q的值为3。

程序USE 正EE.STD LOGIC 1164.ALL;ENTITY mus41IS(i0ji1,i2,i3,a,b :N STD_LOGIC;PORT:OUTSTD_LOGIC );ENS mux4;OFmux4 ISARCH ITE CT URE b_mux4BE G NProcess (i0,il,i2,i3,a,)Variable0;downtomusval:integer rangBeginm uxv al :=0;if (a=‘l’)musval:muxval+ l; end if;thenif (b=‘I’) thenmuxval :muxwal + 2; endif;ismuxvalcasew hen 0= 》 q 《= i0;when l= 》 q 《= il;when2=》q《=2;when3=》q《=i3;others= 》null;Whenendca se;end process;END b_mux4;运行结果当输入信号“OO”时,输出信号z的值为‘i0’:当输入信号“01”时,输出信号z的值为‘i1’:当输入信号“10”时,输出信号z的值为‘i2’:当输入信号“11”时,输出信号z的值为‘i3’;波形仿真及描述a的波形周期为20ns,b 的波形周期为15ns,c 的波形周期为20ns,d 的波形周期为15ns,s的波形周期为8ns,s的波形周期为16ns。

输出略做了解一下

  • 疯壳AI开源无人机OPENMV脚本烧写
    疯壳AI开源无人机OPENMV脚本烧写[复制链接]OPENMV脚本烧写OPENMV脚本的烧写比较简单,主要是要借助前面安装的OPENMVIDE,具体步骤如下:打开openmvdie,如下图所示。 打开提供的python源码,直接把mvCtrl.py拖到openmvdie中即可。  中途可能会出现要求更新,激活等,无需理会,点“否”。 使用USB数据线连接视觉模组的USB口,并插上电脑的USB...
  • 第二步:电源立项,从零开始DIY高效率双向DC-DC变换器!
    第二步:电源立项,从零开始DIY高效率双向DC-DC变换器![复制链接]关于活动:嵌入式系统工程师出身的我们,很多时候都被电源设计掣肘,想要提升电源设计技能的想法几乎时时存在,但是又不知从哪儿着手。 于是我们就组织了这次:“从零开始,跟着电源达人一起制作高效率双向DC-DC变换器”活动。 想要报名的网友,可以>>跟帖报名 并添加管理员okh...
  • 专辑资料整理:电源仿真,需要的入!
    专辑资料整理:电源仿真,需要的入![复制链接]为了使电源系统的性能达到最佳状态,通常在电源设计方案确定后,对其进行仿真分析,已验证设计方案的准确性和可行性,特别是电源的计算机仿真技术,彻底颠覆了靠人工计算、实验、调试的传统设计方法,成为现代电源系统设计的关键技术之一。 本文集涵盖了电源仿真分析方法学习和仿真软件应用资源,...