多路复用器

发布时间:2024-05-15 13:49:55 作者:汉语成语

多路复用器是利用多路复用技术将多个终端的多路低速或窄带数据加载到一根高速或宽带的通信线上传输的设备。多路复用器的作用通俗的说,就是用来选择数字信号通路的,所以有时也称为数据选择器。

意义

使用多路复用器的目的是为了充分利用通信信道的容量,大大降低系统的成本。例如,对于一对电话线来说,它的通信频带一般在100kHz以上,而每一路电话信号的频带一般限制在4kHz以下。此时,信道的容量远大于一路电话的信息传送量。

作用

采用多路复用器,可使多路数据信息共享一路信道。当复用线路上的数据流连续时,这种共享方式可取得良好效果。显然,这样做比每台终端各用一根通信线路传送也更为经济。多路复用器总是成对使用的。一个连续终端,另一个在主机附近,它的作用是将接收的复合数据流,依照信道分离数据,并将它们送到对应的输出线上,故称为解多路复用器。

基本原理

多路复用器即数据选择器,用来将N个输入通道的数据复用到一个输出通道上,多路复用器在数字系统中有着非常重要的应用。4选1多路复用器的实现结构如图所示:

图中有四路数据C0~C3,通过选择控制信号S2、S1(地址码)从四路数据中选中一路数据送至输出端z。

数据选择器的真值表如表所示:

源程序代码

以4选1多路复用器为例:libraryIEEE;useIEEE.STD_LOGIC_1164.ALL;useIEEE.STD_LOGIC_ARITH.ALL;useIEEE.STD_LOGIC_UNSIGNED.ALL;entityMUX4_1isPort(c0:inSTD_LOGIC;c1:inSTD_LOGIC;c2:inSTD_LOGIC;c3:inSTD_LOGIC;s:inSTD_LOGIC_VECTOR(1downto0);z:outSTD_LOGIC);endMUX4_1;architectureBehavioralofMUX4_1isbeginprocess(s)--if语句描述beginif(s="00")thenz<=c0;elsif(s="01")thenz<=c1;elsif(s="10")thenz<=c2;elsez<=c3;endif;endprocess;--process(s)--case语句描述--begin--casesis--when"00"=>z<=c0;--when"01"=>z<=c1;--when"10"=>z<=c2;--whenothers=>z<=c3;--endcase;--endprocess;endBehavioral;