tag 标签: mux

相关博文
  • 热度 20
    2014-3-3 14:10
    2258 次阅读|
    0 个评论
            隐含式多路复用器          利用ALTERA器件内部逻辑结构可以实现一些隐式多路复用器,比如在我们使用同步复位、同步加载以及时钟使能的时候,或许就会被综合成这种隐式多路复用器。由于同步加载、清零以及使能在一个LAB内部都是共用的,所以只有在LAB内所有LE使用相同加载、清零或使能的时候这些信号才非常有用,而实际上这种情况也经常发生。            前面我们知道一个2:1多路复用器就要消耗一个LE,下面我们给出隐式多路复用器如何在一个LE中实现3:1和4:1等多路复用器的。   图1:使用单个LE实现3:1多路复用器            如图1所示,就是使用一个LE实现了3:1多路复用器,其中查找表实现了2:1,另外一个输入从DATA3进行,使用同步加载来实现选择线功能。   图2:只用一个LE实现4:1多路复用器            如图2所示,只使用了一个LE就实现一个4:1多路复用器。我们从图17就可以看到查找表的所有输入已经都被占用了,所以这时候无法再提供额外的输入。但是如果多路复用器如果有某个输入固定为0,那么如图2所示,就可以使用同步清零作为这个输入,如此就只用一个LE实现了一个4:1多路复用器。            最后我们来一种在单个LE实现的5:1多路复用器,其VHDL代码如下所示: PROCESS (clk, reset) BEGIN IF reset=’1’ THEN   z = 0; ELSIF rising_edge(clk) THEN   IF enable=’1’ THEN     IF sclear THEN       z = 0;     ELSIF sload THEN       z = d2;     ELSE       IF sel=’1’ THEN         z = d1;       ELSE z = d0;       END IF;     END IF;   END IF; END IF; END PROCESS;         上述代码中使用了IF-ELSE语句实现异步复位、同步时钟使能以及同步清零和同步加载,剩下的核心就是一个2:1多路复用选择器。根据前面的分析,同步加载和清零可以综合成多路复用器,所以至少可以得到前面博文所示的4:1多路复用器,那么综合器最后会如何处理时钟使能呢?答案是实现一个5:1多路复用器,而且只需使用一个LE,实现的结构如图3所示。   图3:使用单个LE实现5:1多路复用器            需要注意的是和图2一样,该多路复用器有一个输入固定为0,而且在时钟使能为0时,复用器的输出反馈到第五个输入。            接下来我们来看看如何使用这类多路复用器,图4展示了利用上述3:1多路复用器可以更有效地实现更大的12:1多路复用器,效率和使用之前介绍的线性多路复用器相当。   图4:利用3:1多路复用器更有效地实现更大多路复用器            图4是采用了同步加载端口,如果同时还采用同步复位端口,那么我们就可以实现如图5所示的12:1多路复用器。这种结构中,所有3:1复用器是同时复位,而不是单独某一个,这样可以使用一个或门来组合最终输出,而不像图20那样需要使用一个4:1多路复用器。一个或门可以放置到一个LE中,而一个4:1多路复用器则需要两个LE,这样图21所示的12:1多路复用器就只需5个LE。这个效率甚至高于之前讨论的线性Mux,相比二进制Mux则更是节约了38%的资源。   图5:采用同步复位实现更有效实现多路复用器            当然,要实现图5所示的多路复用器,设计者必须要将意图体现在代码中。通过上面分析,建议大家多使用上述这种所谓的隐含多路复用器,原因在于这种多路复用器依赖于寄存器功能,当多路复用器的输出经过寄存后,就非常利于使用。
  • 热度 16
    2014-2-14 12:25
    1965 次阅读|
    0 个评论
      一种改进型多路复用器实现:线性多路复用器            所谓的线性多路复用器,如图1所示,个人感觉就是多路复用器级联。使用这种结构可以组成大型多路复用器,前面我们知道4:1多路复用器消耗0.5N个LE(即2个),而且我们还知道前面最好的情况是消耗0.66N个LE,而图11所示的结构只需0.5N个LE,面积减少了25%。   图1:线性多路复用器          那么它是如何工作的呢?如图2所示,每个LUT像我们前面介绍的4:1多路复用器那样被配置成两个MUX。选择线由原始选择输入信号产生,奇偶选择线用于选择每一对MUX中一个多路复用器作为输出,而选择MUX对的选择线只能有一个为高。   图2:线性多路复用器工作          根据以上分析,我们给出该多路复用器某次具体工作的示意图,如图3所示,此时输入d4被选择作为整个多路复用器的输出,因为只有它的选择线为“1”,而且同时它位于偶数位置。   图3:线性多路复用器工作展示          此外,这种结构可以非常简单地实现对其置位和复位,如图4所示,这种结构的复位或置位并不需要额外特别的逻辑资源。选择线可以驱动总线上这些多路复用器,一根选择线即可使得所有这些多路复用器输出为0或1。   图4:异步置位复位的实现          那么我们来看这种结构的时序延时情况,如图15所示为该结构的局部示意。图5是一种最好情况,因为如图3所示,有时候复用器分解后从输入到输出可能需要不止两个4输入LUT。     图5:无需优化树形LUT的延时          根据ALTRA的信息,四输入LUT四个输入端口中A输入最慢,D输入最快。而多路复用器必然会有一个输入是从A端口输入。那么具体这些端口之间的延时差异如何呢?我们以Stratix-6速度为例进行说明,该系列器件中LUT从D输入端口到COMB输出的延时是87ps,从A输入到COMB输出的延时450ps(B大约为300ps,C大约为200ps),所以比从D输入要慢了大概5倍。图5显示了关键路径布线延时至少达到了0.4ns。          前面我们也提到了,可以使用级联线来减少布线延时,从Cyclone和Stratix开始逻辑资源中分布有丰富的,速度特快的布线链,即级联链。可以让最慢的输入(关键路径)连接到级联输入,并让其驱动最快的LUT输入端口,即D输入端口,如图6所示。   图6:级联逻辑速度更快
  • 热度 16
    2014-2-10 14:24
    2563 次阅读|
    0 个评论
       综合时如何实现多路复用器            首先二进制多路复用器可以直接使用ALTERA的lpm_mux函数,我们来看4:1多路复用器如何使用四输入查找表来实现,前面我们已经提到实现这种多路复用器需要两个LE,如图1所示。   图1: 4:1多路复用器实现   图2:4:1多路复用器是如何工作的          如图2所示显示4:1多路复用器是如何工作的,S0选择复用器的输出是从A/B还是C/D之中产生,即S0等于0意味着C或D被选择输出。S1再在A/B和C/D中选择最终的输出。如图2所示,我们可以利用级联线来实现高速互联,而且这种级联线是一种比较正常的布线资源。          前面我们提到大的多路复用器,会被综合工具分解成小的多路复用器。现在我们来看如何使用树形2:1多路复用器来组成N:1多路复用器,如图3所示。   图3:树形2:1多路复用器组成N:1多路复用器          图3所示为创建较大多路复用器的标准技术,ASIC中也常用此技术。每一个2:1多路复用器使用了一个查找表,所以N:1多路复用器大体上要消耗N个LE(如果你仔细去数,实际上应该消耗了N-1个LE,这里我们只做大致估算)。如果将图3顶部从左手边开始,按照前面介绍的4:1多路复用器来实现,那么一个4:1多路复用器需要2个LE,那么结果就会如图4所示。   图4:树形4:1多路复用器组成N:1多路复用器          如图4所示,一个4:1消耗2个LE,因为中间合成需要消耗资源,所以N:1总体LE消耗大概是0.66N个LE。          对于多路复用选择器的实现,前面我们提到选择器就是一个树形的与门和或门,如图5所示,虚线框中为一个LE。该结构实现的N:1多路复用器消耗的LE资源应该也在N的三分之二左右,只是实际上这种结构比起前面的4:1结构要稍微多消耗一点点。   图5:多路复用选择器的实现          最后,对于带优先级多路复用器的实现,我们来看如图6所示的结构,这种实现结果来自于IF-THEN-ELSE代码结构。图中,每个2:1消耗一个LE,所以N:1总共需要N个LE(实际也是N-1个)。需要注意的是,前面也提到过,这种结构的时序延时比较差。   图6:带优先级多路复用器实现          不过,Quartus II可以对图6中结构进行优化,优化后的结构如图7所示。优化后,总体树形结构并未变得更大或更小,但是路径延时变得更小。如果设计中确实需要优先级多路复用器,那么Quartus II会以这种方式来实现。   图7:Quartus II对优先级多路复用器的优化          如图7所示,只要最前面四个选择线中任何一个为高,即选择左手边数据作为输出,否则选择右手边数据作为输出,在其它每两个MUX之间也是按照同样的道理进行选择。Sel 0具有最高的优先级。如此优化之后,LE的消耗没有发生变化,但是却减少了逻辑深度,优化了逻辑延时。
  • 热度 23
    2014-2-8 16:18
    3808 次阅读|
    0 个评论
    多路复用器背景            在很多FPGA设计中都使用了多路复用器,通过优化设计中的多路复用器逻辑,可以确保在ALTERA器件中得到一个最有效的逻辑实现。本文开始我们介绍多路复用器的背景以及不同的结构。   多路复用器分类   那么到底多路复用器是怎么产生的呢?我们首先来看ALTERA对于逻辑设计中多路复用器种类的划分,如下 所示,ALTERA将多路复用器分为三种,综合工具为根据对用户HDL代码的编译自行选择实现哪种多路复用器。 l  二进制多路复用器 n  CASE语句 l  多路复用选择器 n  CASE语句 n  状态机 n  IF语句 l  带优先级多路复用器 n  IF语句          从上述划分我们知道,不同HDL结构会产生不同类型的多路复用器,所以理解多路复用器是如何从HDL代码产生的,以及在综合的时候如何实现是我们优化多路复用器的第一步。            图1:二进制多路复用器示例          所谓二进制多路复用器,是其选择输入基于二进制编码选择位,如图1所示。Stratix系列从Stratix II开始采样了6-输入查找表结构,这种结构非常适合实现4:1多路复用器(4个数据和2个选择输入)。对于那些逻辑单元是4-输入查找表结构的器件,实现上述4:1二进制多路复用器需要两个4-输入查找表。更大的多路复用器一般由综合工具分解成4:1多路复用器块,有时也会在顶部产生一个2:1多路复用器。            第二种多路复用器叫多路复用选择器,这种复用器每一个选择线对应一个输入数据。这种多路复用器的选择线编码采样独热编码风格,如以下代码所示。   case (sel) 4'b0001: z = a; 4'b0010: z = b; 4'b0100: z = c; 4'b1000: z = d; default: z = 1'bx; endcase          多路复用选择器通常被创建成一组树形与门和或门。一个N输入多路复用选择器的结构一般效率低于相同结构的二进制多路复用器。然而,很多情况下,选择信号来自解码器的输出,此时Quartus II综合工具会尝试将选择器和解码器组合成一个二进制多路复用器。            从以上分类可知,这两种多路复用器都可由case语句综合而来,Quartus II如何判断生成二进制还是选择器复用器呢?可以基于以下两点来判断: l  选择输入是否基于一个状态机的状态 l  选择输入是否只覆盖不到所有可能的八分之一          基于以上两点,如果答案是肯定,那么Quartus II会综合成多路复用选择器,剩下的case综合成二进制多路复用器。需要注意的是,Synplicity总是选择综合成多路复用选择器。            最后一种是有优先级的多路复用器,也即选择逻辑解码的时候带有优先级。选择信号选择当前输出一定是要安照一定的顺序来指定,这种结构通常是在VHDL或者Verilog里使用IF,ELSE,WHEN,SELECT和?:这些语句,如图2所示。            正如图2右侧所示,根据复用路数的多少,通过该结构链路的延时可能会很大。为了提升设计时序,在没有优先级要求的情况尽量避免使用优先级多路复用器。如果选择的顺序并不重要,那么推荐使用case语句来实现二进制多路复用器或多路复用选择器。     图2:带优先级多路复用器代码示例以及结构  
相关资源
  • 所需E币: 4
    时间: 2019-12-25 16:19
    大小: 120.06KB
    上传者: 978461154_qq
    VxWorks网络协议栈的MUX接口维普资讯http://www.cqvip.com专题论述VxWorks网络协议栈的HUX曩口一中国矿业大学张晓华李智涛徐钊VxWorks是美国WindRiverSystem公司f风河公司)推出的一个运行在目标机上的高性能、可裁减的嵌入式实时操作系统。它以其良好的……
  • 所需E币: 3
    时间: 2019-12-25 16:20
    大小: 448.55KB
    上传者: 二不过三
    基于VxWorks的WindNetPPPoE协议栈的研究和实现维普资讯http://www.cqvip.com宋婷,张宏科(北京交通大学电子信息学院.北京市100044)摘要介绍了基于VxWorks的WindNetPPP0E协议栈和远程接入框架(……
  • 所需E币: 4
    时间: 2019-12-24 22:21
    大小: 89.02KB
    上传者: 2iot
    Abstract:Multichannelanalog-to-digitalconverters(ADCs)typicallyconverteachinputchannelsequentiallyusinganinputmultiplexer.Certainapplicationsrequiresimultaneousconversions,especiallywhenphaseinformationexistsbetweendifferentchannels.Forexample,wirelessapplicationsrequireIandQchannelstobeconvertedatthesameinstance,motorcontrolandpowermonitoringrequiresvoltageandcurrentmeasurementsandthephaseanglebetweenthem.Inthepast,simultaneoussamplingmeantthedesignerhadtousemultipleADCs,andperformparallelconversionsoneachchannel.SimultaneoussamplingADCsnowperformthetaskusingmultipleT/Htosampletheinputsatthesameinstant,thenperformtheconversionforeachchannel.Maxim>AppNotes>A/DandD/ACONVERSION/SAMPLINGCIRCUITSKeywords:simultaneoussamplingADC,analogtodigitalconverters,ADCs,analogdigital,MAX126,MAX126,Oct01,2000MAX115,MAX116,T/H,MUX,simultaneoussampling,motorcontrol,I/Qsampling,wireless,I/Q,Coriolis,Mass-flow,powerfaultAPPLICATIONNOTE290ADCsforSimultaneousSamplingAbstract:Multichannelanalog-to-digitalconverters(ADCs)typicallyconverteachinputchannelsequentiallyusinganinputmultiplexer.Certainapplicationsrequiresimultaneousconversions,especiallywhenphaseinformationexistsbetweendifferentchannels.Forexample,wirelessapplicationsrequireIandQchannelstobeconvertedatthesameinstance,motorcontrolandpowermonitoringrequiresvoltageandcurrentmeasurementsan……
  • 所需E币: 4
    时间: 2019-12-24 20:20
    大小: 81.13KB
    上传者: wsu_w_hotmail.com
    摘要:IC开关和多路复用增殖,得益于近的不断进步,在降低电源电压,结合故障保护输入,输出钳位电压,降低开关电阻。最新的这些进展是精密电阻列入允许两点校准增益和偏移的精密数据采集系统。Maxim>Designsupport>Appnotes>A/DandD/AConversion/SamplingCircuits>APP261Maxim>Designsupport>Appnotes>AnalogSwitchesandMultiplexers>APP261Keywords:calibration,multiplexers,switch,mux,multiplexer,data-acquisition,ICswitches,CMOSOct05,1999APPLICATIONNOTE261Calibration-MultiplexersEaseSystemCalibrationAbstract:ICswitchesandmultiplexersareproliferating,thankstonear-continualprogressinloweringthesupplyvoltage,incorporatingfault-protectedinputs,clampingtheoutputvoltage,andreducingtheswitchresistances.Thelatestoftheseadvancesistheinclusionofprecisionresistorstoallowtwo-pointcalibrat……
  • 所需E币: 3
    时间: 2019-12-24 19:51
    大小: 29.71KB
    上传者: wsu_w_hotmail.com
    简单的双向模拟开关(MAX4525)在电路编程通过提供促进双服务为两行(SDA和沙田至中环线)可编程的设备上:正常操作,它们连接到其他的电路和编程模式,它们连接到编程的标头。Maxim>AppNotes>AnalogSwitchesandMultiplexersAutomaticTestEquipment(ATE)Keywords:in-circuitprogramming,serialbus,I2C,analogswitches,multiplexer,muxAug05,2010APPLICATIONNOTE4484In-CircuitProgrammingSwitchBy:EricSchlaepfer,ApplicationsEngineerAbstract:Asimplebidirectionalanalogswitch(MAX4525)facilitatesin-circuitprogrammingbyprovidingdualservicefortwolines(SDAandSCL)ontheprogrammabledevice:fornormaloperationtheyconnecttoothercircuitry,andforprogrammingmodetheyconnecttotheprogrammingheader.AsimilarversionofthisarticleappearedintheOctober21,2008issueofElectronicDesignmagazine.Manydevicesnowavailablerequireprogrammingthrougha……
  • 所需E币: 3
    时间: 2019-12-24 18:13
    大小: 53.48KB
    上传者: givh79_163.com
    摘要:LED文字显示在通信状态信息或经营方向的产品用户是有价值的。然而,7段LED显示器是不能够显示所有的字母。本应用笔记详细显示文字使用两种常见的正极,7段LED显示驱动电路。Maxim>Designsupport>Appnotes>DisplayDrivers>APP1004Keywords:LED,display,shutdown,mux,commoncathode,LEDdriverMar18,2002APPLICATIONNOTE1004MultiplexingShutdownAllowsTexttobeDisplayedBy:TedSalazar,ApplicationsEngineeringManagerAbstract:AnLEDtextdisplayisvaluableincommunicatingstatusinformationoroperatingdirectionstoaproductuser.However,7-segmentLEDdisplaysarenotcapableofdisplayingallthelettersofthealphabet.Thisapplicationnotedetailsacircuitthatdisplaystextusingtwocommon-cathode,7-segment,LED-displaydrivers.Presentingnumbersona7……
  • 所需E币: 3
    时间: 2019-12-24 17:08
    大小: 52.06KB
    上传者: 微风DS
    摘要:铁路分裂是一个人造的虚拟接地作为参考电压。它是用来设置信号匹配运算放大器的“甜蜜点”。运算放大器具有最线性,无失真的品质,甜蜜点。通常情况下,甜蜜点附近发生单电源轨和地面之间的中心。在信号的情况下,虚拟的地面控制复或开关信号时,通道的DC错误。Maxim>AppNotes>AudioCircuitsGeneralEngineeringTopicsPower-SupplyCircuitsKeywords:OpAmps,VirtualGround,RailSplitter,multiplexer,MUX,voltagedivider,sensorconditioning,Dec19,2008precisionresistor,digitalpots,potentiometer,resistance,singlepowersupply,center,matching-bias,reference,channeloffset,settlingtime,errorAPPLICATIONNOTE4344RailSplitter,fromAbrahamLincolntoVirtualGroundBy:BillLaumeisterAbstract:Railsplittingiscreatinganartificialvirtualgroundasareferencevoltage.Itisusedtosetthesignaltomatchtheopamp's"sweetspot."Anopamphasthemostlinear-anddistortion-freequalitiesatthatsweetspot.Typically,thesweetspotoccursnearthecenterbetweenthesinglepowerrailandground.Inthecase……
  • 所需E币: 3
    时间: 2019-12-28 23:59
    大小: 35KB
    上传者: 978461154_qq
    ApplicationNote3344showshowtoconfigurethehardwareconnectionsthatcanbeutilizedwithvariousDallasSemiconductordevices.ItincludestheHDLCController,Framer,MUXandLineInterfaceUnit.……
  • 所需E币: 5
    时间: 2019-12-24 17:03
    大小: 23.85KB
    上传者: 238112554_qq
    摘要:MAX3831多路复用器(mux)及解复用器(分接)有一通道分配功能,使它能够适当地将产出分配给正确的渠道。当启用此功能只适用装裱SDH/SONET数据信号。此设计备注讨论如何禁用该信道分配功能,对于这些应用程序在用户想要执行下游的频道分配或非SDH/SONET应用程序。ApplicationNote:HFDN-1.0Rev.1;04/08DisablingtheChannel-AssignmentFeatureoftheMAX3831MaximIntegratedProductsDisablingtheChannel-AssignmentFeatureoftheMAX3831I.OverviewSDH/SONETheaders.TheMAX3831invertschannel4atthemultiplexerandtheninvertschannel4againTheMAX3831Mux/Demuxhasachannelassignmentatthedemultiplexer.Ifthechannelsareproperlyfeaturethatallowsittoproperlyassigntheout……