多协议串行通信接口的设计方法

随着通信网技术的进一步发展,越来越多的互连网设备(如路由器、开关、网关、存取装置)中的串行接口在广域网(wideareanetwork)中被设计成能够支持多种物理接口协议或标准。广域网串行口协议包括rs-232,rs-449,eia-530,v.35,v.36以及x.21等。图1所示是一个简单的串行通信接口示意图。由图可知,实现多协议串口通信的关键是将连接器送来的不同传输方式平衡、非平衡 和不同电气信号通过收发器转换为终端能够识别并处理的、具有ttl电平的信号。
1传统多协议通信的特点和问题
1.1“子板”方式
广域网串口应用中的通用实现方法是为所需的每一种物理协议提供一个独立的子板。一个支持eia-232,eia-449及v.35协议的系统,通常需要三个独立的子板以及三个不同的连接器。这种方法由于每种协议要求配置一块子板,因此系统需要对pcb子板、收发器芯片、连接器等进行管理,这样既浪费资源,又会使管理工作复杂化。
1.2通用连接器方式
为解决“子板”方式的缺点,可使用一块母板及通用连接器。一个母板上有多种收发器芯片,可以满足多串口协议的要求,并可共用一些通用器件,同时可减少资源的浪费。在配置中,应注意因连接器的管脚较少而带来的问题,较好的办法是根据信号而不是根据协议来分配管脚,即给每一个信号分配一个通用管脚,而不管其物理协议如何定义。如对eia-232,eia-449,eia-530,v.35和v.36来说,其txd信号可连至连接器相同的管脚。即sda 信号连接到管脚2,sdb 信号连接到管脚14。然后利用这对管脚来描述所有协议的发送信号txd。
这种方法同样也会带来一个问题,即所有收发器的i/o线至通用连接器的管脚必须彼此共用。例如,一个v.28驱动器芯片中的发送数据信号线的接连接器db-25的管脚2;同时,一个v.11驱动器芯片中的发送数据信号线要接至连接器的管脚2和14;而v.35驱动器芯片中发送数据信号线也会接至连接器的管脚2和14。这样,通用连接器的管脚2将同时接有三根信号线,管脚14接有两根信号线。这样,在这一配置中,所有的驱动器都必须具有三态特性,以禁止不必要的输出。若收发器没有三态特性,则需要使用一个多路复用器来选择相应的输出端。由此带来的另一个问题是收发器在禁止使用时会产生漏电电流。如果选择了v.28协议,其输出电压理论值为15v。此时对于v.11协议的驱动器会被禁用,而处于三态时,其输出漏电电压就必须足够低,才能使得连在同一连接器管脚的v.28协议的驱动器信号不受影响。如果在发送器与接收器之间有隔断开关,则开关也要考虑漏电情况。
1.3串口的dte/dce模式切换
dte/dce的切换可通过选择不同的连接器转换电缆来实现,这样,在实现dte/dce转换时可最大程度地减小收发器的复杂性,但缺点是需要更换电缆,尤其是设备放置位置不便或dte/dce需要频繁切换时这一点尤为突出。
如果保持传输电缆不变,则可将收发器配置为两套以分别支持dte、dce方式。而将dte收发器的驱动器输出与dce收发器的接收器输入相连,而将接收器输入端与dce收发器的驱动器输出相连。为了控制dte或dce方式,驱动器或接收器的输出必须为三态。当选择为dte方式时,dce芯片禁止,其驱动器和接收器处于三态,反之亦然。
该方法虽然解决了对电缆的频繁更换问题,但由于多用了一套收发器而使得设计成本大为提高,且串口板的体积也大了很多。
2 多协议串口通信的实现原理
传统设计中,针对某种协议通常应选择相应的收发芯片,如对于rs-232协议,常用ds-1488/ds-1489、max232或sp208等收发器芯片;而对于rs-449协议,则常使用sn75179b、max488、max490等收发器芯片。当同时使用rs-232、rs-422和v.35协议时,就需要多个收发器芯片来支持不同的协议。
现在,一些收发器的生产厂商研制出了多协议收发器芯片。sipex是第一家生产出rs-232/rs-422软件可选择协议芯片sp301的公司。这种芯片可将rs-232和rs-422收发器的电气特性综合到一个芯片中实现。其中sp50x系列产品最多可支持8种协议标准。其它生产厂家如linear公司生产的ltc154x系列、ltc284x系列芯片也具有以上功能。用户可根据自己的需要选择适当的芯片。
图2为采用分立的收发器芯片与采用一片多协议收发器芯片实现多协议串口通信的通信卡。从图可知,前者实现的复杂度要远远大于后者,具体的性能比较如表1所列。
表1两种方法实现串口通信的性能比较
分立器件板 综合器件板
供电电压 +5v,-5v,+12v,-12v +5v
所需收发器芯片数 12 1
支持的物理层协议 rs-232,rs-422,rs-449,eia-530,v.35,v.36 rs-232,rs-422,rs-449,rs-485,eia-530,eia-530a,v.35,v.36
协议选择方式 跳线或开关 软件或硬件(通过内部译码)
串口板大小 除了15个收发器芯片外还需其它硬件支持 非常小
功耗 大约1w 大约100mw~250mw
除此之外,与分立收发器芯片相比,多协议收发器对驱动器使能控制和对输出漏电电流的处理要容易得多。当通过软件或硬件方法选择某一协议时,驱动器和接收器的电气参数将调整至适当的大小,电路内部将自动控制驱动器的输出电平、接收器的输入门限、驱动器和接收器的阻抗值以及每一物理层协议的常用模式范围。
另外,由于外部网络终端对v.35的需求,使得与v.35收发器的连接不能象其它协议那么简单。当使用分立收发器芯片时,常常通过采用昂贵的继电器开关电阻在选择其它协议接口时将v.35网络终端断开,或者要求用户每选择一个新的接口标准就改变一次终端模块,这样既浪费资源又会使接口电路变得复杂,因而不是一种理想的实现方法。而多协议串口芯片则自动提供适当的终端和片上开关来符合v.10、v.11、v.28和v.35电气协议,从而解决了电缆终端转换问题。
3基于ltc1546/44的多协议通信
为了说明多协议串口芯片的工作原理,现以linear公司的ltc1546/1544芯片为例进行分析。
3.1ltc1546/ltc1544的性能
ltc1546芯片是一个3驱动器/3接收器的收发器,其主要特点如下:
●带有软件可选的收发器可支持rs232、rs449、eia530、eia530a、v.35、v.36和x.21协议
●可提供片上电缆终端
●与ltc1543引脚兼容
●与ltc1544配合可完成完整的dte或dce
●工作在5v单电源
●占位面积小。
ltc1544芯片是一个4驱动器/4接收器的收发器,其主要特点有:
●软件可选的收发器支持rs232、rs449、eia530、eia530a、v.35、v.36和x.21协议
●采用ltc1344a作为软件可选的电缆终端
●采用ltc1543、ltc1544a或ltc1546可实现完整的dte或dce端口
●与ltc1543同样工作于5v单电源。
这两种芯片均采用28引线ssop表面贴封装,图3所示为其引脚排列。
由ltc1546/ltc1544可组成一套完整的软件可选择dte或dce接口,以应用于数据网络、信息业务单元csu 和数据业务单元(dsu)或数据路由器中,它支持多种协议,电缆终端可在片上提供,因此不再需要单独的终端设计。其中,ltc1546每个端口的一半用来产生和适当终止时钟和数据信号。ltc1544则用来产生控制信号及本地环路返回信号(localloop-back,ll)。接口协议通过模式选择引脚m0、m1和m2来决定,具体选择方式见表2。
表2通信协议的模式选择
ltc1546模式名称 m2 m1 m0 dce/dte d1 d2 d3 r1 r2 r3
未用(缺省v.11) 0 0 0 0 v.11 v.11 v.11 v.11 v.11  
rs530a 0 0 1 0 v.11 v.11 z v.11 v.11 v.11
rs530 0 1 0 0 v.11 v.11 z v.11 v.11 v.11
x.21 0 1 1 0 v.11 v.11 z v.11 v.11 v.11
v.35 1 0 0 0 v.35 v.35 z v.35 v.35 v.35
rs449/v.36 1 0 1 0 v.11 v.11 z v.11 v.11 v.11
v.28/rs232 1 1 0 0 v.28 v.28 z v.28 v.28 v.28
无电缆 1 1 1 0 z z z z z z
未用(缺省v.11) 0 0 0 1 v.11 v.11 v.11 z v.11 v.11
rs530a 0 0 1 1 v.11 v.11 v.11 z v.11 v.11
rs530 0 1 0 1 v.11 v.11 v.11 z v.11 v.11
x.21 0 1 1 1 v.11 v.11 v.11 z v.11 v.11
b.35 1 0 0 1 v.35 v.35 v.35 z v.35 v.35
rs449/v.36 1 0 1 1 v.11 v.11 v.11 z v.11 v.11
v.28/rs232 1 1 0 1 v.28 v.28 v.28 z v.28 v.28
无电缆 1 1 1 1 z z z z z z
由表2可知,如果将端口设置为v.35模式,模式选择引脚应当为m2=1,m1=0,m0=0。此时,对于控制信号,驱动器和接收器将工作在v.28(rs232)模式;而对于时钟和数据信号,驱动器和接收器将工作在v.35模式。
模式选择可通过控制电路或利用跳线将模式引脚接至地或vcc 来实现对引脚m0、m1和m2的控制,也可通过适当的接口电缆插入到连接器上实现外部选择控制。若选用后者,则当移开电缆时,全部模式引脚均不连接,即m0=m1=m2=1,此时ltc1546/ltc1544进入无电缆模式。在这种模式中,ltc1546/1544的供电电流将下降到500μa以下,并且ltc1546/ltc1544驱动器输出将被强制进入高阻状态。同时,ltc1546的r2和r3接收器应当分别用103ω端接,而ltc1546和ltc1544上的其它接收器则应通过30kω电阻接到地。
通过dce/dte引脚可使能ltc1546中的驱动器3/接收器1、ltc1544中的驱动器3/接收器1和驱动器4/接收器4;ltc1544中的invert信号对驱动器4/接收器4起使能作用。可以通过下面两种方法中的一种将ltc1546/ltc1544设置为dte或dce工作模式:一种是将专门配有适当极性的连接器接至dte或dce端;另一种是通过专用dte电缆或专用dce电缆发送信号给ltc1546/ltc1544,同时使用一个连接器构成一种既适合dte又适合dce的工作模式。
3.2典型应用
图4为一个带有db-25连接器端口并可被设置为dte或dce工作模式的多协议串口通信电路,图中ltc1546/ltc1544芯片一边与连接器相连,另一边接至hdlc芯片,m0、m1、m2及dce/dte引脚接至epld硬件控制电路以实现对通信协议和工作模式的选择。其中dte或dce工作模式需要连接对应的电缆以保证正确的信号发送。例如,在dte模式中,txd信号通过ltc1546的驱动器1发送到引脚2和14。在dce模式中,驱动器则将rxd信号发送到引脚2和14。
图4中,ltc1546采用一个内部容性充电泵来满足vdd和vee。其中,vdd为符合v.28的正电源电压端,该端应连接一只1f的电容到地;vee为负电源电压端。一个电压倍增器在vdd上将产生大约8v电压,而电压反相器则将在vee上产生大约-7.5v的电压。四只1μf电容均为表面贴装的钽或陶瓷电容,vee端的电容最小应为3.3μf。所有电容耐压均应为16v,同时应尽可能放置在ltc1546的附近以减少emi干扰。
在v.35模式中,ltc1546中的开关s1和s2将导通,同时应连接一个t型网络阻抗,以将接收器的30kω输入阻抗与t网络终端并联起来,但不会显著影响总输入阻抗,因此对于用户来说,这种模式下的电路设计与其它模式下完全相同。
由于ltc1546是3驱动器/3接收器的收发器,ltc1546是4驱动器/4接收器的收发器,所以如果同时采用rl、ll和tm信号,则ltc1546/ltc1544就没有足够的驱动器和接收器。因此,可用ltc1545来替换ltc1544。ltc1545为5驱动器/5接收器的收发器,它能够处理多个可选的控制信号,如tm和rl。
所有ltc1546/ltc1544接收器在全部模式下都具有失效保护功能。如果接收器输入浮置或通过一个终端电阻短接在一起,那么,接收器的输出将永远被强制为一个逻辑高电平。
4 结束语
实现多协议串口通信的方法很多,不同厂家提供有功能各不相同的串口芯片。设计者可根据自己的需求来选择。当设计一个支持各种物理层协议的复杂dte/dce模式时,和使用许多分立的元器件相比,选择一个单片多协议串行收发器将会简化配置,同时所设计的电路也会更灵活、方便和简单。