2.2 数据编码技术
用二进制数表示的数据采用基带信号传输是计算机网络中最合适的通信方式,但数字通信对物理链路的频率特性有较高要求,要求物理链路有较高的带宽,并不是所有实际使用的物理链路都能达到传输高速基带信号所要求的频率特性,如果勉强在用户线上直接传输基带信号,可能产生传输速率很低、传输距离因为信号失真受到限制或受到外部噪声的影响等结果,从而使最大传输速率和传输距离受到影响。因此,在这样的物理链路上,直接传输基带信号不合适,需要对基带信号调制成频带信号。
数据编码技术是指将需要加工处理的数据信息表示成某种适合信道传输的信号形式以便进行可靠传输的一种技术,主要有模拟数据编码技术和数字数据编码技术两大类。
2.2.1 模拟数据编码技术
模拟数据编码是指将所传输的数字信号调制成适合通信信道需要的模拟(频带)信号的过程,这种技术称为模拟数据编码技术,又称调制技术。调制过程是指将基带信号表示的二进制数变成用带宽范围内的正弦信号表示的过程;解调是调制的反过程,将用带宽范围内的正弦信号表示的二进制还原成用基带信号表示的方式。
调制过程通过改变正弦信号的特性,使其具有表示不同的二进制数的功能。正弦信号的特性有幅度、频率和相位,对应这3种特性的有调幅、调频、调相技术。
基本的模拟数据编码技术主要包括幅移键控调制技术(Amplitude Shift Keying,ASK)、频移键控调制技术(Frequency Shift Keying,FSK)和相移键控调制技术(Phase Shift Keying,PSK)。
1.幅移键控调制技术(ASK)
幅移键控调制技术(ASK)用两种不同幅度的载波信号来表示两个不同的二进制数,通常一种载波的幅度为0,另一种载波的幅度用正常值表示。ASK的调制过程如图2-8所示。ASK是一种效率较低的调制技术,在语音频率范围内,数据传输速率只能达到1.2kbit/s。
图2-8 ASK调制过程
2.频移键控调制技术(FSK)
频移键控调制技术(FSK)采用两种不同频率的信号来表示两个不同的二进制数,FSK的调制过程如图2-9所示。FSK的数据传输速率也只能在1.2kbit/s左右。
图2-9 FSK调制过程
3.相移键控调制技术(PSK)
相移键控调制技术(PSK)通过改变载波的相位来表示不同的二进制数,图2-10是一个具有两种不同相位的系统,在这样一个系统中,二进制0由和前面信号相同相位的载波信号表示,二进制1由和前面信号相反相位(相差180°)的载波信号表示,这种调制技术称为差分PSK(DPSK),移相值参考前一位二进制数发送的载波信号,而不是根据固定的参考信号,相位相对前一位二进制数的信号确定。
图2-10 PSK调制过程
2.2.2 数字数据编码技术
数字数据编码是指在基本不改变数字信号频带(即波形)的情况下将数字信号或模拟信号变换成合适的数字数据的过程,这种变换技术称为数字数据编码技术。数字数据编码分为数字-数字数据编码和模拟-数字数据编码两类。
1.数字-数字数据编码
数字-数字数据编码是指将数字信号变换成适合传输的数字信号。常见的数字-数字数据编码类型有3类:不归零编码(Non-Return to Zero code,NRZ)、归零编码(Return to Zero code,RZ)和双相位编码。不归零编码和归零编码又可分为单极性编码和双极性编码。双相位编码分为曼彻斯特编码(Manchester Encoding,ME)和差分曼彻斯特编码(Difference Manchester Encoding,DME)。
(1)不归零编码(NRZ)
不归零编码用低电平表示“0”,用高电平表示“1”。不归零编码有单极性编码和双极性编码之分。在单极性不归零编码中,以无电平表示比特“0”,以恒定的正电平表示比特“1”,如图2-11a所示。在双极性不归零编码中,以恒定的负电平表示比特“0”,以恒定的正电平表示比特“1”,如图2-11b所示。
图2-11 不归零编码(NRZ)方案
a)单极性不归零编码 b)双极性不归零编码
(2)归零编码(RZ)
归零编码是指在一个比特时间内,非零电平持续时间小于比特间隙的时间,即一个比特时间内,后半部分电平总是归于零。归零编码也有单极性编码和双极性编码之分,归零编码与不归零编码相同,采用低电平表示“0”,用高电平表示“1”。归零编码解决了不归零编码接收双方无法保持同步的问题。归零编码如图2-12a、b所示。
图2-12 归零编码(RZ)方案
a)单极性归零编码 b)双极性归零编码
(3)曼彻斯特编码
曼彻斯特编码使用电平跳变来表示比特“0”或“1”,在每个比特中间均有一个跳变。这种跳变有双重作用,既作为接收端的时钟信号,从而保证收发双方的同步,也作为数据信号,电平不发生变化的位称为非数据位,常用做传输数据块的控制符。
一般规定:从高电平到低电平的跳变表示比特“1”,低电平到高电平的跳变表示比特“0”。曼彻斯特编码如图2-13a所示。曼彻斯特编码是目前使用非常广泛的一种编码类型,主要用于以太局域网中。
在曼彻斯特编码中,也可以使用相反的电平跳变策略来定义比特“0”和比特“1”。即曼彻斯特编码采用从低电平到高电平的跳变表示比特“1”,高电平到低电平的跳变表示比特“0”。
(4)差分曼彻斯特编码
差分曼彻斯特编码又称为相对码,它是对曼彻斯特编码的改进,每个比特中间的跳变仅做双方时钟同步之用,每个比特取值为“0”或“1”则根据其起始时刻(起始边界)是否存在跳变来决定。一般规定:每个比特起始时刻有跳变表示比特“0”,无跳变则表示比特“1”。差分曼彻斯特编码如图2-13b所示。差分曼彻斯特编码主要用于令牌环局域网中。
图2-13 曼彻斯特编码和差分曼彻斯特编码编码方案
a)曼彻斯特编码 b)差分曼彻斯特编码
曼彻斯特编码和差分曼彻斯特编码的特点是每个比特均用不同电平的两个半位来表示,因而始终能保持直流的平衡,而且可以避免连续比特“0”或比特“1”信号的误判。其最大优点是将时钟和数据包含在信号数据流中,只要有信号,在线路上就存在电平跳变,易于被检测。在传输代码信息的同时,也将时钟同步信号一起传输到对方,因此,具有自同步功能,称为自同步编码。但其缺点也很明显,就是编码效率低,例如当数据传输速率为100Mbit/s时,需要200MHz的脉冲。
曼彻斯特编码和差分曼彻斯特编码是自带同步时钟的编码。
2.模拟-数字数据编码
模拟-数字数据编码是将模拟信号变换为适合传输的数字信号。数字信号传输失真小、误码率低、数据传输速率高,因此在计算机网络中除计算机直接产生的数字信号外,语音、图像等信息采用数字信号传输已成为发展的必然趋势。脉冲编码调制(Pulse Code Modulation,PCM)是模拟数据数字化的主要方法。PCM技术的典型应用是语音数字化。语音可以用模拟信号的形式通过电话线路传输,但是要将语音与计算机产生的数字、文字、图像同时传输,就必须首先将语音信号数字化。发送端通过PCM编码器将语音信号转换为数字信号,通过通信信道传送到接收端,接收端通过PCM解码器将它还原成语音信号。数字化语音数据的传输速率高、失真小,可以存储在计算机中,并且进行必要的处理。PCM操作包括采样、量化与编码3部分内容。
(1)采样
模拟信号数字化的第一步是采样。模拟信号是电平连续变化的信号。采样是指在间隔固定长度的时间点上抽取模拟数据的瞬时值,作为从这一次采样到下一次采样之间该模拟数据的代表值。将时间上连续的模拟数据变成时间上离散的采样数据。根据采样时间间隔是否相同,采样可分为均匀采样和非均匀采样。采样时,必须遵循奈奎斯特采样定理,即采样的频率f应满足:f≥2B或f=1/T≥2fmax,研究结果表明,这样所获得的样本可以包含足以重构原模拟信号的所有信息。
(2)量化
量化是将采样信号的无限多个数值用有限个数值替代的过程,即将采样取得的电平幅值按照一定的分级标度转换为对应的数字值,并取整数,从而将时间上离散、幅值上连续的模拟数据变成时间和幅值上都离散的数字数据。根据量化间隔是否相同,量化可分为均匀量化和非均匀量化。
(3)编码
编码是将量化后的数值(数字数据)按规则转换为对应的位数固定的二进制编码的过程。如果有k个量化级,则二进制的位数为log2k。例如,如果量化级有16个,就需要4位编码。图2-14和表2-2给出了模拟信号到数字信号的PCM编码过程。图2-14描述了模拟信号的采样过程,图中设置了8个均匀采样点D1~D8。
图2-14 模拟信号的采样过程
表2-2给出了对应采样点的信号幅值、量化值及二进制编码。量化时,将0~6V区间均匀划分成128个区间(量化值),量化值=128/(6-0)×采样点幅值。编码采用7位(log2128=7)二进制码。
表2-2 模拟信号量化及数字化