传统ADSL技术的下载速率是8~12Mbps,传输最大距离可达6~7公里。另一种DSL技术──VDSL,其最大下载速率是52Mbps,传输最大距离约1公里。虽然VDSL的传输速率很快,但是传输距离却很短。经过国外业者的研究与妥协,在2003年制定了G.992.5标准,也就是所谓的ADSL2+。它使ADSL的带宽增加,传输距离在1~3公里以内时,其最大的下载速率可达24Mbps。
ADSL2+的优点
ADSL2+可以弥补传统ADSL和VDSL的缺点,在应用上,它们之间是互补的关系。全球VDSL的市场只有ADSL市场的几十分之一,ADSL2+技术是ADSL的革新版,而且它不是VDSL的竞争者,VDSL在短距离的传输应用,具有绝对的优势。在1~3公里范围内,ADSL2+的传输速率比VDSL和传统ADSL优异;但超过3公里以后,ADSL2+的传输速率与传统ADSL很接近。
传统ADSL采用离散多频道调变(Discrete Multi-Tone modulation;DMT)技术,它的1.1MHz带宽被分成255个子频道(tone),每个子频道使用4.3125KHz的带宽。子频道6至31为上载传输,子频道33至255为下载传输。子频道最多可进行1-bit的位图(bitmap)调变,所以,在理论上,传统ADSL的下载传输速率约为14.4MHz(4.3125KHzX(255-33+1)X15)。此外,由于每个子频道可以进行独立的调变和传输,因此,它具有很强的抗噪声能力。
如(图一)所示
《图一 传统ADSL和ADSL2+的带宽》 |
ADSL2+采用与传统ADSL相同的调变技术,但将传输带宽增加至2.2MHz,共有511个子频道,这使得传输速率加倍。ADSL2+的24Mbps下载速率,最多可支持三个视讯流同时传输。除了传输速率增加以外,ADSL2+还有另一个优点,就是可以减少传输线路的串音(crossover)干扰。
ADSL2+调制解调器的架构
(图二)是典型的ADSL2+调制解调器的内部架构,它和传统的ADSL调制解调器类似。一般而言,它包含了网络处理器、DMT引擎、模拟前端(analog front end;AFE)、内存单元。图二中有附一个UTOPIA-II接口,当内建的DMT引擎之规格不符需求时,可以选择连接一个外部的DMT数字信号处理器。
《图二 ADSL2+调制解调器的架构》 |
DMT引擎(或DMT处理单元)可能是一颗DSP,或是可程序的硬件线路(FPGA或CPLD)。在理论上,若使用DSP,将会比较有弹性,能够适应ADSL规格和市场需求的演变;但是,在实务上,大部份的设计改变,可以使用FPGA或CPLD透过组态重新设定达到。
主控制器(host controller)可能内建有独立的网络处理器或通讯处理器,负责处理所有的封包,也包含ATM SAR封包在内。它们内部的CPU大多数是ARM或MIPS。Broadcom、Conexant、LSI Logic的网络处理器内部还包含AAL2 SAR单元,可以支持压缩过的语音。大多数的网络处理器内部都支持AAL5 SAR功能,可以将接收到的ATM封包(cell)转换成以太封包。
比较新型的网络处理器内部,还包含一个防火墙(firewall)的功能,这是现代网络网关非常需要的功能之一。而将此功能整合到ADSL2+调制解调器中,还可以降低宽带存取系统的总开发成本。
主控制器(或网络处理器)和DMT DSP之间的数据传输,是经由对信箱区(mailbox)进行读写完成的。信箱区是公用的内存区域,它被区分为数个频道(channel),每一个频道具有数个读写数据时所必需的缓存器;此外,还有一些供给所有频道共享的缓存器,这些缓存器提供之功能包括:主控制器组态之设定、中断遮蔽(interupt mask)之设定、主控制器的中断状态、DSP频率控制。信箱区缓存器是全部映像至主控制器的主存储器地址中,因此,主控制器内的嵌入式软件或操作系统可以直接操控信箱区的数据传输。
DSP韧体
DSP韧体是ADSP2+调制解调器的核心,它控制和设定所有的硬件加速器,并执行大部份的数据处理工作。如图二所示,此韧体是在DMT DSP内运行。开机以后,此韧体必须下载至DMT DSP的内建内存储存,为了支持此韧体的下载,主控制器内部ROM(或外部FLASH)必须具有基本的下载程序。
ADSL2+调制解调器可以被视为一个状态机器(state machine),其状态和状态之间的转换是由韧体控制的。ADSL2+调制解调器的最初状态是禁能(dusable)状态,(图三)的流程表示如何将ADSL2+调制解调器的DMT DSP初始化,并让它进入禁能状态。
《图三 启动调制解调器韧体的流程》 |
若不使用内建的晶体(crystal),而使用外部晶体时,则必须对主控制器组态缓存器做设定。软重置(soft-reset)是由此组态缓存器发出的。韧体是从主控制器下载至DMT DSP,这是利用讯息(message)来传递的,且需要一些缓存器来控制。「设定ATM」也是利用讯息传送来完成的。「设定模式」是为了设定讯息的工作模式。当上述程序都完成后,便可送出连接控制(connect control)的讯息,以开启调制解调器。
讯息格式
信箱区的讯息格式包含有:命令字段、长度字段、次类型(subtype)、数据字段。后两者可依需要决定是否要使用,如(图四)所示。长度字段内的值是次类型和数据字段的总长度,不包括命令和长度字段的大小。
《图四 讯息格式》 |
当传输的数据很大时,在一个信箱区大小和传输时段之内,数个讯息可以连接起来一起传输此笔大数据。不过,在一个信箱缓冲区内的最后一个讯息的最后一行字段必须全部都是0,用以表示此次信箱区传输的终结。如果没有任何数据要传输,仍然要在信箱缓冲区的第一行地址上写入16个0。
嵌入式软件
大体而言,传统ADSL调制解调器的软件堆栈,如(图五)所示,是可以适用于ADSL2+调制解调器的。不过,由于各厂商的SoC芯片和硬件接口之不同,底层的驱动程序或韧体设计可能会不一样。
《图五 ADSL的软件堆栈》 |
基本上,除了嵌入式操作系统以外,ADSL2+调制解调器的主控制器之嵌入式软件还应该要包含:启动加载程序(boot loader或boot codes)、硬件驱动程序、核心层(或传输层)的通讯协议堆栈、应用层的通讯协议堆栈、应用程序。
ATM传输汇集(Transmission Convergence;TC)、作业和维持(operation and maintenance control;OAM)算是传统ADSL和ADSL2+标准特有的功能,前者可藉由驱动程序呼叫特定的命令讯息,来设定ATM TC的参数和UTOPIA的实体地址来达到;OAM功能则要看ADSL2+芯片(DMT DSP)是否有支持。
如前面所介绍的,为简化和方便程序的设计,现代的ADSL2+驱动程序大都是呼叫命令讯息来控制内部的DMT DSP。但若是使用外部的DMT DSP时,则必须启动ATM TC和UTOPIA的功能,这和传统的ADSL驱动程序类似。在PPPoA、IPoA、PPPoE、RFC1483/ RFC 2684下方仍然需要ATM SAR(AAL5)驱动程序,用来控制主控制器的ATM SAR单元,在ATM封包与以太封包之间做转换。
开发工具
一般而言,在开发ADSL2+调制解调器时,需要下列的工具:
●操作系统的监控工具(console):是PC主机和目标板(target board)之间的通讯接口,透过它,开发者可以监控与观察硬件或软件的行为,这包含执行驱动程序和FPGA/CPLD程序,并查看其输出结果。
●嵌入式软件的开发工具:这包含编译程序(compiler)、组译器、除错器、FLASH刻录器、加载器(loader)、线路仿真器(ICE)等等。
●FPGA/CPLD开发工具:包含编译程序、仿真器、除错器、加载器和监控平台。
●所有必需的源代码(或样本程序)、执行档、映像档(image file):供程序设计、修改、建制(build)、测试、除错之用。
此外,在使用这些工具之前,还需要有正式授权的版权码或档案才行。
此外,在使用这些工具之前,还需要有正式授权的版权码或档案才行。