摘 要: V.34数据传输协议由国际电信联盟提出,采用了壳状映射、超星座图及四维网格编码等关键技术,可以在远 距离数据传输时支持高达33.6kbps的数据传输速率。本文提出一种基于数字信号处理器(DSP)的V.34
协议 调制解调器(Modem)的实现方案,从硬件平台和软件协议编程分别作了阐述,并对其实时性作了分析。
关 键 词: V.34协议; 数字信号处理器;数据调制解调器
V.34数据传输协议由国际电信联盟ITU-T在1994年提出,用于通用电话网络或点到点的2线电话类型电路中的数据传输时的调制解调。该协议主要应用于远距离通信,并且其数据传输速率可以达到28.8kbps;随后推出的V.34bis则达到33.6kbps。采用V.34协议除了可以获得较高的传输速率,在传送普通数据信息的同时,还可传送语音及图像信号。因为该协议应用了较新的调制技术,在传输容量、智能化与自适应性上提供了更多的选择空间。
实现V.34协议数据调制解调器(Modem)的软硬件系统完全可利用通用AD-DSP-DA平台搭建,因此其成本极其低廉,市场价值较高。本文即介绍基于TI定点DSP芯片TMS320C54XX(以下简称为C54xx)系列实现V.34协议Modem,同时也通过介绍该实现方案给出一个DSP项目开发的工程案例。
V.34协议采用的关键技术
自适应带宽
V.34提供六种不同的符号速率,每个符号速率有两个载波频率可供选择,其对应关系如表1所示。在建立连接的过程中,发送线路探测信号确定信道的特性,诸如信噪比、可用带宽、冲击响应等等。从而确ㄊ莘怕视朐夭ㄆ德省?br>
表中,a,b,c,d是正整数,符号率S=a/b 2400(Baud),载波频率为 c=c/d S(Hz)。
自适应的数据传输速率
V.34输出数据最小单元为一个映射帧,根据符号率和载波频率的不同,映射帧的大小也有所不同。每个符号率存在一个最高数据传输速率,如表2所示。
表1 V.34中的符号率和载波频率(略)
表2 最高速率传输速率与符号率的关系(略)
四维网格编码
与二维编码相比,采用四维网格编码,减小了星座图的扩展,同时提高了编码增益。V.34中可以采用16状态、32状态或64状态编码中的任一种,其对应的卷积编码器的比率分别取为2/3、3/4、4/5,有效编码增益分别提高到4.2dB、4.5dB和4.7dB。
整形技术与壳状映射
为了减小同样传输速率时的平均功率,需要对星座图的形状加以整形。减小的平均功率称作整形增益。整形技术使信号传输时的平均能量降低,信号空间中的信号点更靠近坐标原点。高速传输时,编码增益与整形增益独立可加。编码增益在经过最初的3~4dB后,每增加0.4dB,译码复杂度就要增加1倍,而采用不太复杂的整形技术,即可获得1dB左右的整形增益。这正是V.34建议采用整形技术的原因。
理论上的最佳整形是多维球体,壳状映射(Shell Mapping)技术是一种在多维有限QAM星座扩展中,可实现近球体星座形状的算法。这种算法与成帧和交换技术结合,将支持V.34中规定的所有符号速率与数据传输速率的组合。
超星座图技术
V.34利用了一类造星座图的方法,把壳状映射器和网格编码器信号星座的映射融为一体。V.34中所用到信号星座图最大为960点,可以由一个240点的超星座图四分之一子图分别旋转0度、90度、270度和360度合成得到。壳状映射器把星座图划分为M个等面积的圆环。每一个圆环用它的环标值m(i)表示,0≤i≤M,环标值m(i)近似为圆环上星座点的平均能量。M个圆环上的平均能量呈递增关系。星座图上总点数L=4
M 2q。通过选用不同的映射帧周期b控制星座图的大小。四维16状态编码信号划分为16个四维类型、8个四维子集。其它高维网格编码情况,依此类推。
均衡和预编码
为了克服码间干扰,充分利用带宽,包括接近带宽边缘的频率,在V.34的发射机中,提供了一种简单的三抽头预测滤波器,其系数在启动时通过对信道特性的测试来确定。这种反馈滤波器使信道衰减失真得到预先补偿,这种技术称作预测均衡器或预测编码器。
非线性编码
非线性畸变时的星座图外围点比内部点功率明显减少,为了克服这种影响,非线性编码将外围点的平均距离增大、内部点平均距离减小。
V.34协议Modem在TMS320C54XX上的实现方案
基于上述关键技术,采用TI定点DSP芯片TMS320C54XX系列来实现V.34协议数据调制解调器(Modem)。下面从硬件平台和V.34协议的软件编程两个方面分别加以介绍。
硬件平台
V.34协议Modem硬件平台结构为通用AD-DSP-DA平台,主要包括语音数据通路模块、计算机数据通路模块、以DSP为核心的主控模块和与信道传输相关的下级处理模块,系统功能框图如图1所示。
作为该V.34协议Modem的主控DSP,可以采用TI定点DSP芯片TMS320C54XX系列任意一款,如TMS320VC5409,TMS320VC5410等,其指令速度均可以达到100MIPS,并且均集成有多通道缓冲串口(McBSP),该串口可以灵活配置成多种工作模式,如SPI、TDM等,给硬件电路设计带来很多方便。
如图1所示,该V.34协议Modem可以处理两种类型数据,包括计算机数据和经过AD转换的数字语音。该Modem发送数据的信号流程是:模拟的语音信号经过AD采样后得到数字语音数据,通过DSP的多通道缓冲串口(McBSP)进入DSP内部存储器;计算机数据则通过通用异步串口(UART)送入DSP内部存储器,两类数据统一在DSP内部按V.34协议进行编码及调制后,再通过McBSP送到DA转换器,滤波后送入2线电话类型的信道传输。接收数据的信号流程与发送相反:来自2线电话类型信道的模拟信号经AD采样后得到已编码调制的数字信号,经McBSP送入DSP,DSP将其按V.34协议进行解调及解码后再分别送到DA转换器还原语音或直接送到UART与PC机完成数据通信。
软件协议编程
基于上述硬件平台,在V.34协议的软件编程实现环节上,需要遵循V.34协议的调制与解调传输规范,包括下述两个主要过程:建立连接的握手过程与数据传输过程。
握手过程
本地Modem与远端Modem在相互传送数据之前需要建立起可靠连接,通过握手过程来实现。包括以下4个步骤:
步骤1: 网络交互
网络的信号交换,指示开始本次通信。传送ANSam、CI、CM、CJ和JM等握手信号;
步骤2: 探测/测距
发送以下固定序列以确定信道特性:首先发送INFO0c和INFO0a,交换符号速率、载波、时钟等参数;接下来交替发送和接收单音A、B、A和B,计算本地Modem与远端Modem的往返行程延时;然后,发送和接收线路探测信号L1和L2,用来分析信道特征;最后交换INFO1c和INFO1a,确定信号功率、MD的长度以及最终的符号率;
步骤3: 均衡器和回波抵消器训练
首先发送S和S,接下来发送MD、PR、TRN等训练序列,中间穿插S和S信号,最后发送J信号结束步骤3,接收方与发送方一致;
步骤4: 最终训练
交换MP和MP',包括信令速率,格形码选择,辅助信道使能,星座形状和数量等参数;E信号结束MP过程,B1信号结束该步骤和整个的握手过程。
至此,握手过程完成,两端的Modem已经建立起连接,可以开始进行数据的传输。
数据传输过程
数据的传输过程又分为发送与接收两部分。
1 发送部分
V.34协议Modem的发送部分的主要任务是将输入的二进制数据映射为二维信号序列,经过正交幅度调制到特定的载波频率上,然后通过模拟信道进行传输。输出的二维信号序列由映射帧组成,结构如图2:
图1 V.34协议Modem系统工能框图(略)
发送部分由四个单元构成:分解(Parse)、选点(Point-Select)、预编码(Precode)和调制(Modulation),如图3所示。
每个单元对数据处理过程如下所述:
a) 分解单元(Parse)
该单元又包括扰码和数据分解两部分。
●扰码
V.34协议中,扰码采用一个线性反馈移位寄存器,对应的特征多项式如下:
(GP)=1+x-18+x-23
图4为扰码器的线性反馈移位寄存器。
●数据分解
这一步将数据分解为不同的组,以供后续的处理。分解后数据的形式如下:
(Si,1,Si,2,...,Si,k),
(Ili,0,I2i,0,I3i,0),(Qi,0,0,1,Qi,0,0,2,...,Qi,0,0,q),(Qi,0,1,1,Qi,0,1,2,...,Qi,0,1,q),
(Ili,1,I2i,1,I3i,1),(Qi,1,0,1,Qi,1,0,2,...,Qi,1,0,q),(Qi,1,1,1,Qi,1,1,2,...,Qi,1,1,q),
(Ili,2,I2i,2,I3i,2),(Qi,2,0,1,Qi,2,0,2,...,Qi,2,0,q),(Qi,2,1,1,Qi,2,1,2,...,Qi,2,1,q),
(Ili,3,I2i,3,I3i,3),(Qi,3,0,1,Qi,3,0,2,...,Qi,3,0,q),(Qi,3,1,1,Qi,3,1,2,...,Qi,3,1,q).
分解后的几组数据分别送入壳状映射、差分编码参与选点。
b) 选点单元(Point-Select)
V.34使用的超星座图共有960点。选点单元即从超星座图中选出二维信号点。一个子星座图包含240个点,完整的星座图是由子星座图旋转0、90、180和270度组合得到的。每一个数据传输速率与符号率的结合都对应到其中一个子星座图。
这一单元包括壳状映射(shell mapping)、差分编码和映射三部分。壳状映射从星座图上多个同心圆环中选出一个能够获得较大的整形增益,使发射信号的功率达到最小的圆环序列;映射就是在选定的壳中,根据输入的未编码的八组Q比特确定一个信号点;差分编码确定某一个四分之一子图,得到最后的信号点。
c) 预编码单元(Precode)
预编码包括非线性编码和网格编码两部分。这两部分的结合是V.34的一个创新。网格编码的反馈结构能够补偿接收端的白噪声预测误差滤波器,并且保持壳状映射的整形增益。网格编码中包括卷积编码,采用16状态编码方式,输入2比特,输出3比特,约束长度K为4。
d) 调制单元(Modulation)
V.34协议采用正交幅度调制(QAM),提供六种符号率,每个符号率对应有两个载波频率可供选择,如表1所示。在握手过程中确定符号率和载波频率,数据经过前面单元的选点及编码,在本单元经过滤波及调制后发送到模拟信道进行传输。
2 接收部分
V.34协议Modem接收部分的主要任务是将接收到的二维数据进行解调制后,再进行解码,正确恢复出发送端发送的数据,其工作流程如框图5所示。
图2 映射帧结构(略)
图3 发送部分框图(略)
图4 扰码器(略)
图5 接收部分框图(略)
但实际上,接收机往往无法正确恢复出信号。主要的原因有两点:第一,接收机的采样频率不能够与发射机的采样频率完全相等;第二,接收到的信号波形与发送出来的信号不能够完全匹配。第一个问题由发射机与接收机之间的环境的细微差别引起,
诸如温度、晶振时钟以及其他环境因素造成的收发两端采样频率不一致。引起第二个问题的原因则主要是信道失真。信号传输时信道的这些特性的变化都是不确定的。
V.34协议Modem的接收部分前端,即解调单元,为了在采样信号点时尽量减小上述误差的产生,应用了如下方案:解决上述第一个问题采用了符号时钟恢复机制。在这个过程中,主要是调整接收机的采样频率,以达到与发射机的采样频率匹配。接收机的采样频率应该是7200Hz,一个符号采样三次。符号时钟恢复机制通过估计时钟误差调整采样频率。解决上述第二个问题则采用144阶自适应均衡器,能够很好补偿不可预测的信道失真。
V.34协议Modem的接收部分后端,是对解调后的二维信号进行解码。这一单元的主要部分就是维特比译码。维特比译码是对前端解调的信号进行最大似然估计恢复信号的算法。只要确定了最大似然序列,反映射与反壳状映射就能够将信号点恢复出来。
实时性分析
在实现如图1所示的V.34协议Modem软硬件系统后,分析其实时性如下,配置其AD转换器的采样频率为7.2kHz, DSP工作时钟倍频到100MHz,则两个采样点之间可以允许的时钟周期数n为:
n={1/(7.2 10^3)}\over{1/(100 10^6)}=13888
在TI公司的DSP集成开发环境Code Composer Studio(CCS)下,通过CCS中的探针工具(Profiler)观察执行代码的时钟周期。每得到4个采样值并对其进行V.34协议编码、调制,然后输出一个映射帧数据,DSP需要运行6154个时钟周期;所以DSP的负载程度为:
Load=\frac{6154}{13888 4}=11.1%
可以看出,DSP大部分时间是处于空闲状态,完全能够满足系统实时处理的要求,实现远程数据传输。
|