个人电脑软体传输器系统 本发明系关于一种传输器系统,北种传输器系统具有如数据汲取、通信协定及数据压缩等数位信号处理(DSP)之功能,属计算机领域。
传统上,传输器所有或绝大多数的演算功能,在由国际电话电报顾问委员会(CCITT)所制订的标准规格之范围内,例如:V.32bis,v.32,v.22bis,v.22,v.23,v.21,v.17,v.29,v.27ter,v.21channel2,v.42,v.42bis,MNP1-6,T.30,T.4,Hays AT Command,FAX class 1及class 2等,并且,都是藉由专用的数位信号处理晶片组来加以实现,而其执行码就存放于随附的记忆体元件内。
本发明的目的是提供一种个人电脑软体传输器系统,使所有CCIT所制定的演算标准,都可藉由个人电脑或是其相容的电脑中央处理单元(CPU)来实行,而且其执行码可以存放于电脑之记忆体文件内,使传输器系统可以成为个人电脑的一个软体应用程式。
本发明的方案是:使传输器的演算功能藉由个人电脑的软体程式完成,其演算法程式码是由个人电脑的中央处理单元执行,其程式码则存放于个人电脑的记忆体内,传输器系统的硬体包括一驱动电路、一混合电路、一电话振铃信号电路、一分路电路以及一保护电路;驱动电路一左频道的出力啦叭,产生一3千赫的正弦波,混合电路将两个频道转换成一个频道的传送器与接收器;传输器介面,系藉由直接记忆存取(DMA)功能连接到声霸卡或传输卡,而传输器软体架构,系将此传输器演算法分成5个不同的协定层,控制流程从PC应用程式至通讯驱动程式和命令介面,命令介面呼叫协定层,协定层再呼叫数据压缩层和数据汲取层,每一层的状态以相反的方向传送;软体传输器分成视密驱动程式部分、命令介面部分、协定及错误更正部分、压缩及解压缩部分及数据汲取部分。
本发明的优点是,由于不设立专用地数位信号处理晶片组实现传输器的演算功能,使传输器的成本降低许多,同时还具有软体更新及再使用的优点,另一个优点是,可以使传输器成为个人电脑的一部份,个人电脑的制造商,可以将此传输器功能整合入电脑内,使用者并不需要做传输器的设定、组装甚至故障检测或排除等工作。
本发明有如下附图,并对附图作简要说明:
附图1是本发明作用系统图。
附图2是本发明的组成示意图。
附图3是本发明的接收器部份作用流程图。
附图4是本发明的传送器部份作用流程图。
附图5是v.22bis的星座图。
附图6是回音消除器部份的方框图。
附图7是本发明的硬体电路实施例电路图。
下面结合附图对本发明的原理及实施例作详细说明。
请参阅附图1,传输器是一种数位信号处理装置,它需要一类比到数位(A/D)元件及一数位到类比(D/A)元件来与外界类比相沟通;随著个人电脑领域内音效卡(audio card)例如声霸卡(sound blastcr)的广泛使用,本发明之软体传输器系统因此利用了音效卡或音效卡晶片上的A/D和D/A功能,更具体说,此软体传输器利用声霸卡的D/A和扩音器输出作为传输器的发送频道,而利用声霸卡的A/D和另一声音频道的线输入作为接收频道;需要注意的是,上述声音频道使用11.025或22.05或44.01千赫的取样频率来执行A/D和D/A的功能,而传输器的频道却是利用7.2或8.0或9.6千赫的取样频率〔依鲍率(baud rate)而定),为
了让此软体传输器能利用声霸卡工作,所需要的硬体仅是和连接至电话纲路的直接存取排列介面。
本发明之软体传输器系统,是在个人电脑的中央处理单元内,执行所有传输器的演算法则,并且藉由直接记忆体存取(DMA)的功能,连接至声霸卡或传输卡的A/D和D/A单元;传送单元和接收单元即时地并行执行其功能〔全双工(full duplex)〕;为了达到此目的,需要两个DMA的频道,而DMA的岔断作为每一个传送单元和接收单元的进入点,每一个DMA频道的岔断代表已经从A/D和D/A元件收集到取样数据的一缓冲图框,因此,此图框速率是依DMA的岔断速率(interrupt rate)而定,本发明实际的图框速率,对数据传输而言,设定在13.3333毫秒,而对传真传输器而言,则为39.9999毫秒;由于有发生磁碟存取(disk access)、纲路图框存取(network frame access)等潜在可能性,因此,每一个传送单元和接收单元都需要一多重伫列图框缓冲器(queue framebuffers),称作伫列缓冲器;当电脑忙于处理和磁碟存取等其他事情时,取样到的数据仍然可以被收入此图框缓冲器(为先进先出缓冲器),如此就可以保证数据的完整性;在本发明中,数据传输器配置了64个图框冲器,而真传传输器则配置了16个图框缓冲器(数据传输器和传真传输器并不一起执行工作),所有传输器演算法都依据图框速率而定,而每一个图框缓冲器都包括一个区块取样到的数据,对传送单元而言,从电脑接收到一个区块的数据(ASCII或传真像素)被处理形成一个区块的调变数据,然后拷贝至DMA的图框缓冲器,经过D/A转换后,输出到啦叭输出端;对接收单元而言,一个区块(图框)接收到的数据,经由接收单元的演算法处理后,转换成电脑可以读取及显示的数据,如图1所示。
请参阅图2,根据CCITT的标准,此软体传输器可以分成5个部份:
1,视窗驱动程式部份;
2,命令介面部份:Hays class 1及class 2;
3,协定及错误更正部份:MNP4,v.42,T30;
4,压缩及解压缩部份:MNP5,v.422bis,T4;
5,数据汲取部份:v.32bis,v.32,v.22bis,v.22,v.23,v.21,Bell212,Bell 103,v.29,v.27,v.27ter,v.21 channel 2。
软体传输器的组成乃如图2所示,所有5个有关软体传输部份都需要有具有即时处理的功能,此即表示它们都要在由通讯图框速率所定义的受限时框内,完成数据处理的工作,对数据汲取部份而言,因为它是数位信号处理导向的工作,需要执行许多乘法和积分的运算,所以此限制更为重要,真正需要技巧的演算法都在此部份内,因此我们将详细地解释这一部份,而只简单地说明其他部份。
根据CCITT的标准,对数据汲取而言,有各种不同的通讯演算法或方案,例如:v.32bis和v.32是具有回音消除及Trellis错误更正码的正交振调变(QAM);v.22bis,v.22和bell 212是QMA开频带调频;v.23,v.21和Bell 103是移频键控(FSK)调频;v.17是具有Trellis错误更正码的半双工QAM;v.29是半双工QAM;v.27ter是微分相移键控(DPSK)调变;v.21chnnael 2是半双工FDK调变。
由于有许多不同的通信标准,我们不打算说明每一演算法或方案,相反,我们将只描述一个典型的调变演算法。
请参阅图3,在接收单元部份,取样频率转换部份,将声音频道的11.025千赫的取样数据转变成7.2千赫或8千赫的取样数据(若使用声霸卡的声音线输入作为输入元件),以便于传输器处理,红过解调娈后,将通带取样数据转换成基带取样数据,同时利用低通及脉冲整形滤波器降低符号间干扰和带外噪音,上述滤波器也可当作匹配滤波器来匹配频道的响应,自动增益控制(AGC)部份调整接收到的信号至一个固定水平,功率量测部份则决定有无信号的状态,信号削频部份降低取样频率至特定调变法之鲍区间的倪奎斯频率,时序内插及循环迹部份在不因符号间干扰而恶化的情况下,调整并锁相至符号的时序,等化部份大大地减少因带限频道所引起的符号间干扰,载波回复部份复原由频道所引起的载波漂移及本地及远处传输器间的脉差,信号决策映射部份将接收到的符号转换成数据位元,这些数据位元接著经过微分解码及整理,产生最后可由电脑判别的数据,信号决策的映射是依据基准理想符号而定,然后计算出接收到的符号和基准符号间的误差,此误差向量可以用来更新等化器的系数,我们可以利用此更新过的等化器对下一个接收到的符号执行等化工作,等化器更新的演算法奠基于最小均方差演算法,而等化器系数的长度,因标准的不同而异。
请参阅图4,在传送器部份,拌码器使得数据元随机化以扩展最后调变的频谱,微分编码器重新安排编码位元的次序,使得相邻符号间具有最小的编码位元差,信号映射部份将编码位元转变成二维的成分一正交分量及振幅,低通滤波及脉冲整形部份被用来将经过调变后产生的高阶谐波除去,同时也可对符号脉冲进行整形,使得其响应匹配频道的脉冲响应,从符号频率到取样频率的信号内插过程也涵盖在上述滤波部份的范围之内,(对每一个标准,其频道的频率响应都由CCITT的规格所界定),调变部分将基带信号转变成电话频带的通带信号,取样频率转换部份将通信频道的7.2千赫或8千赫的取样频率转换成声音频道的11.025千赫的取样频率(若使用声霸卡作为输出元件),经过转换后,整个区块的信号数据被拷贝到DMA的图框缓冲器内,等待下一次的DMA岔断,其他的演算法,诸如协定层、压缩层及解压缩层、命令介面层等,在CCITT的规格v.42,v.42bis,T30,T4和Hays AT command中,都有很清楚的文件说明,其中,v.42是以具有HDLC连接成框来执行错误更正功能的X.25规格为基础;v.42bis是以Lempel-Ziv通用写码演算法为基础的数据压缩标住;T30和T4是传真传送的标准;30是具有HDLC成框的传真规格;而T4是奠基于扫描宽度赫夫曼写码演算法的数据压缩标准。Hays AT Command是使用者命令介面,同时也是实际上的标准。视窗驱动程式事实上是动态连接程式库(DLL),用来取代视窗通讯驱动程式comm.drv,此驱动程式会拦劫从使用程式来的命令和数据,同时它也会模拟至应用程式的命令反应和数据;此驱动程式是在软体安装时同时被安装入电脑内。
请参阅图2,它显示每一协定层间的关系,大体而言,控制流程是从PC应用程式至通讯驱动程式和命令介面,此命令介面呼叫协定层,此协定层再呼叫数据压缩层和数据汲取层;每一层的状态以相反的方向传送,赤即每一层皆向其上一层报告它本身的通讯状态,这些状态,其中一部分最后会到达PC应用程式;此种架构层的优点是使得每一标准成为一可分隔的模组,此种隔离性使得程式易于维护及升级,唯一的要求是必须清础地界定每一层模组(层)间的介面参数。
下面对附图作进一步说明:
请参阅附图4,电脑数据是随机化的,经微分编码过的,或经Trellis编码过的,并被分离进入同相频道和正交频道,在后面这些频道将被称作I频道和Q频道;经过适当的编码后,这些I和Q频道的数据符号会被输入到低通滤波器内,此滤波器和作为取样频率转换的滤波器,可以是横贯式的滤波器,包含一连串的延迟级和顺序地将许多分支乘上每一数据符号dl(j)和dQ(j)的方法,每一个分支系数都与某一延迟级相关,这些滤波器的分支可以具有固定的系数,而这些滤波器在和接收单元内类似的滤波器一起被调整后,就可以利用最少数目的分支提供系统最佳的性能,由这些乘法得到的乘积,被加起来作为此滤波器的输出,这些数位信号在各别的频道内,可以表示为下面二式:
wI(j)=∑dI(j+k)※gI(-k)
wQ(j)=∑dQ(j+k)※gI(-k)
其中gI(-k)是数位低通滤波器的分支值,某一特定的分支可以被指定为gI(o),在此情况下,此串列中位于其前连续的分支可以指定为gI(-1),gI(-2)……gI(-k1),而位于其后连续的分支就可以指定为gI(1),gI(2)……gI(k2)。对于在一理想的频道内,以倪奎斯频率,每秒传送2w个的符号而言,此滤波器可以被调整来提供合成的信号波形,其波形具有如下的特征:
H(W)=2 Tcos(tw)/2对(w)≤π/T及
H(W)=0对(w)>π
其中T代表符号周期。
在没有频道失真的情况下,此作法将使得整个系统具有下面的脉冲响应:
h(t)=4/π[cos(πt/T)/(1-4(t/T)(t/T))]
可以很明显示地看出在t=±T/2时,h(t)=1,而在所有其他的取样时间时,h(t)=0。
在经过适当的滤波后,在I和Q频道内的信号可以接著被以乘上从一正弦表中取出的数值之方式,载上一频率为1800赫兹(v.32)的载波,这些调变过的信号可以接著在一加法器内结合在一起,并在一数位至类比转换器内被转变成类比格式,用其类比格式,在电话线上传送的此信号可以表示成下式:
s(t)=wI(j)※cos(we(t))+wQ(j)※sin(wc(t))
其中wI(j)和wQ(j)是基带信号之同相和正交成分的第j个数据符号;而wc是正弦/余弦表的角频率,我们皆知,在电话线上传送的信号,或多或少都会被改变,而其改变的程度则依此电话线的品质而定,这些改变被称作信号恶化,例如频率偏移,相位偏移,相位颤动,对称或非对称性延迟,损耗失真,高斯和脉冲噪音等皆是;当然,我们期望接收单元能够补偿所有这些电话线之令人讨厌的特性,以使得接收到的信号和传送的信号之间的差异减到最少,接收单元的方块图如图3所示。
从电话线输入的类比信号,以声霸卡或传输卡的类比至数位转换器加以取样,经此转换后,接收单元所有部分的信号都是数位格式经由DMA频道,从A/D来的数位信号,若在使声霸卡的情况下,则必须将11.025千赫的频率,转换成7.2千赫或8千赫,这是因为声音频道的11.025(或22.05)千赫的取样频率,并不适合用来作传输器处理,传输器处理的取样频率必须是鲍率的整数倍,上述频率的转换是藉由一低通滤波器来执行,在取样频率转换后,数位信号可以被分别地乘上一载波(同时是利用查表法),利用此方式,信号就可以被解调和分离,并输入一同相频道和一正交频道内,在接收单元内,此两频道也将被称作I频道和Q频道,在I及Q频道内解调过的信号,可以经滤波及整形,成为基带信号,在滤波后,I及Q频道的基带信号可以经削频处理,以符合倪奎斯频率,例如:若使用v.22bis传输器时,因v.22is为鲍率600的传输器,其7200赫兹的取样率可以削频成1800赫兹,自动境增益控制及功率量测部分,是用来控制信号水平及有无信号存在的临界值,经过这些处理后,在I和Q频道内此两基带信号XI和XQ,各别地被引入等化滤波器内,此一滤波器对I频道及Q频道各具有一对的横贯式等化器,此一等化器可以修正电话线的对称或非对称性之延迟和衰减失真,在等化器的输出端,I和Q频道内的信号YI和YQ,可以表示成下面两式;
YI(J)=∑CI(n)※XI(j-n)-∑OQ(n)※CQ(j-n)
YQJ)=∑CI(n)※XQ(j-n)+∑OQ(n)※XI(j-n)
其中CI和CQ代表在各别频道内的等化器系数,而n则表示在每一等化器内乘法器的取大数目;YI和YQ必须乘上一相角Φ′以修正其相位,此一相角是在藉由依相角误差Φ而定的载波回复电路而产生,此等化过及修正相角过,在I和Q频道内的信号YI′及QI′,可以表示为下列二式:
YI′(j)=YI(j)※cosΦ′-YQ(j)※sinΦ′
YQ′(J)=YQ(j)※cosΦ′+YI(j)※sinΦ′
经等化及相角修正后,信号YI′及YQ′就成为从失真的YI及YQ信号对修复而得的信号对,这些信号YI′及YQ′可以被引入信号决策部分,此信号决策部分为一临界值侦测器,可以用来决定正确的接收符号为何,并将其解码成编码单位元;此解码是依据查表法来决定最接近理想基准符号点的近似符号,附图5描述了此决策过程。
请参阅附图5的v.22bis星座图,其中※代表在二维座标上的基准符号点,而·则代表在二维座标上的接收信号点,上述决策过程就是决定接收到的信号点·应该最接近那一基准点(RI(J),RQ(j)),j从1到16,因此,就可解码得到一编码位元,同时,也可计算得一误差,如下所示:
ErrI=YI′-RI
ErrQ=YQ′-RQ
此一误差信号可以被用来更新等化器及载波回复功能,特别重要的是,若利用此误差信号来作等化及相位修正,则接收单元就可以经修正来补偿输入信号的缺陷,经过具有上述特性之修正后,侦测得到的编码位元就可以被引入Trellis解码器、微分解码器及解拌器内,然后再引入解压缩层内。
对v.32和v.32bis传输器而言,因为传送单元及接收单元占用相同的信号频谱,所以需要一个回音消除器,接收到的信号频谱受到传送的信号(回音)的污染,所以,此回音消除器必须消除从近端及远端桥接岔路来的回音,从近端桥接岔路来的回音称作近端回音,而从远端侨接岔来的回音就称作远端回音,远端回音因信号在电话频道传导而有所延迟,称作往返延迟,并可能包含从卫星来的延迟信号,附图6显示回音消除器的方框图。
关于压缩/解压缩层和协定层的详细说明,请参考CCITT之v.42,v.42bis,MNP4,MNP5,T30和T4的文件。
在附图6中的回音消除器方框图中,记忆体储存是最大的延迟,并加长远端回音消除器的延迟,此延迟(以符号频率计算)是在CCITT v.32和v.32bis规格所限定的起动顺序期间内计算而得,近端及远端回音消除器,实际上为横贯式基带综合滤波器,而其分支系数,则藉由计算所得的误差信号而更新,对近端回音消除器而言,其系数的更新方法可以表示为下二式:
CI(j+1)=CI(j)+k※Re[Err(j)※S-1(j-n)]
CQ(J+1)=cQ(J)+K※Im[Err(j)※S-1(j-1)]
其中n代表分支的编号,j代表取样时间,-1代表共轭,Re代表复数数值的实数部分,而Im代表复数数值虚数部分,CI及QI为回音消除器的系数,Err代表在近端及远端回音消除器后之解调基带误差信号,如下式所示:
Err(j)=(S(j)-S′(j))※eWCT
其中S(N)是A/D接收到的信号,S′(n)是近端及远端回音的估计值,Wc是载波频率,T是符号频率,而S则代表符号数据向量,远端回音沿著电话频道传播而回到本地接收单元,此传回的回音信号也会受到频率偏移,相位偏移及相位颤动的影响,相位估计被设计用来估计上述的信号劣化的程度,以补偿电话线的缺陷,相位输出将产生一相位差Φ,用来旋转误差信号Err,如下所示:
Err(j+1)=Err(j)※Im(eWCT)
要注意的是,Err为一复数。
在双边交谈的情况下,亦即表示在起始训练阶段更新非常快的期间,更新系数K将被缩减至一非常小的数值,而在全双工通讯的阶段时,更新速率就会降低。
请参阅附图7,本发明硬体的架构是由一驱动电路1,混合电路2,电话振铃信号电路3,分路电路4以及保护电路5所构成;其中左频道的出力啦叭将产生一3千赫的正弦音调,以控制继电器K1,以便使线路中继(on hook),线路中断(off hook)并可供脉波拔号,此电路可将上述之正弦音调转换成一直流(DC)高或低位准,如果正弦音调产生,比较器U1A之第1脚即在高电位,晶体管Q1即闭路,使得电流流经继电器K1的线圈而中断(off hook),如果正弦音调未产生,U1A的第1脚即在低电位,晶体管Q1即开路,停止电流流动,此线路即在中继的情况下。
混合电路2系用来将两个频道转换成一个频道的传送器与接收器;右频道的出力啦叭系为从传送器转换至变压器的信号(即,转换至线上),从变压器线上所接收到的信号也将会走到声音程序设计装置(soundblaster)的线内的左频道。
电话振铃信号电路3则可将高电位的振铃信号转换至(低电位)的电话信号,以指示传输器有一电话打入。
在分路电路4中,电容C5、C6、C9、C10系用来将高频率信号分路,铁氧体(ferrit bead)是用来阻止高频传送到线上,而FB1、FB2、FB3、FB4当电路中没有高频组件,例如晶体(crystal)的时候,可以从图上移去。
保护电路5是用来保护变压器TI与混合电路2不会受到高压的电击,当一高交流电压通过继电器,其将会缩短通过此电路回到线上的时间。
所有的传输器装置都需要整合入此电路,才可以连接至公用电话网路,因为此DAA电路非常简单,故可将此作成PC介面卡型式或外部匣型式,甚至是小型模组(类似小型火柴盒)型式,若是采用小型火柴盒模组型式,就可将其直接安装在PC主机面板上面,因此,就可省下一个介面插槽(与使用PC介面卡型式比较),或一个RS-232串列埠(与使用外部匣型式比较)。
若使用者个人电脑上并未安装声霸卡,就可以使用一片具有A/D,D/A和DMA功能的专属传输卡(此传输卡是一片便宜的硬体卡),而与此传输卡介面的传输器软体,可以执行通讯功能。
因为本发明内的执行码是由个人电脑的中央处理单元来执行,所以,一部分中央处理单元的机器执行时间会被此软体传输器所占用,在DOS的环境下,并不会发生任何问题,而在Window环境下,此软体传输器将会降低其他应用程式的执行速度,但是,当数据传输结束后,这些应用程式就会回复到原先的执行速度,所以使者并不会感到该执行速度上的降低。