来自Wi-Fi专家的声音

 

调制的话题(1)

撰写于:2013年3月25日
作者:silex Wi-Fi专家

无线局域网是将数字数据通过电波传输的系统。但是,“0”和“1”的数据是如何变成电波传播出去的呢?这次我想尽可能简单地介绍一下此原理。

ASK(OOK)
那么,怎样才能“用电波发射0,1”呢?谁都能想到的最简单的方式,就是位“1”的时候发出电波,位“0”的时候不发出电波就可以了。其实这种方式有个很好的名字,叫幅度调制(ASK:Amplitude Shift Keying)。在ASK中,通过“发出信号或不发出信号”进行控制的被称为OOK (On Off Keying)。

ASK/OOK虽然简单,但也存在几个问题。例如,当连续出现相同bit时,例如连续出现全是“0”的信息时,会持续一段时间“没有信号”,但接收方不清楚此信号是“连续的零信息”,还是“信号中断”信息。反之,当接收到连续的“1”时,即使电波因一瞬间的干扰而中断,也会认为这不是“干扰”,而是“0”的信息。

由此,单调的OOK并没有什么实用性。所以,不能直接将“信号的有无”作为信息,而要将“信号的种类”分配给信息,从而提高信息的传达性。而最有名的例子是摩尔斯电码,它将“信号为ON的长度”分为短音和长音两种,通过组合来传输信息。这也被称为脉冲宽度调制(PWM:Pulse Width Modulation),即使是在摩尔斯电码逐渐淡出视线的现在,也在电视的红外线遥控器等处被使用。

摩尔斯电码(PWM)的缺点是传输效率低。首先,作为位(符号)的分割,必须插入一定的无信号区间,而且长音侧的符号如果持续传输的话,传达也会花费更多时间。摩尔斯电码通过一种霍夫曼压缩来缓解后者的缺点,即给英文中常用的字母分配更多的短音。但是,这对于直接传达日常会话中使用的文章的明文传输很有效,但是对于压缩信息和密文的传输,由于字母分布均匀(注),所以效果不佳。
(※注)在信息工学中称为「熵增」。

FSK
综上所述,OOK虽然简单,但存在可靠性和效率低下的缺点。那么接下来该怎么做呢?不是把“0”和“1”分配给“有无信号”或“信号长度”,而是分配给“不同种类的电波”。例如,“0”表示1MHz,“1”表示2MHz。这样一来,就可以将“有信号”“无信号”的状态和“信号的0到1”分别理解,也不需要像PWM那样在符号之间进行分隔。它也有个好听的名字,叫做频率调制FSK (Frequency Shift Keying)。蓝牙BDR使用的GFSK(Gaussian FSK),虽然是在频率切换时的转变上下功夫抑制不必要辐射的方式,不过,基本原理和FSK一样。

比起电波领域,FSK在有线通信领域的应用更为广泛。300bps的声音耦合器(调制解调器的前身)发出“哔、叽、叽、叽”的声音是因为“哔(2400Hz)”声音和“啵(1200Hz)”是对应了0/1位FSK变调的原因。把它调到短波上,就变成了电传打字机(tty的词源),8bit时代的电脑可以直接把它录到磁带里保存数据。但是,这样的话题已经是过去的事了。

PSK
FSK调制的缺点是传输效率低(虽说比PWM好)。以刚才提到的声音耦合器为例,1200Hz的低频就决定了通信速度的上限。如果给1位(1个符号)分配1个循环的波,如果是2400Hz的话循环2个周期的时间,而在同样的时间内1200Hz的信号只能循环1个周期。在传输线的频带被确保为2400Hz的情况下,特意在那里放低频率的信号是很浪费的。另外,在无线通信中使用FSK时,由于占用了2个频域,所以频率利用效率变差(在有限的频带内能够容纳的电台数量减少)。使两个频率接近的话,虽然效率会提高,但是由于频率位移而出现选择“0”“1”错误的概率也会提高,所以也导致了可靠性的下降。
为了解决这些缺点,开发了相位调制,PSK(Phase Shift Keying)。PSK是将相同频率的载波根据传输信号的“0”和“1”移动相位。例如180度的相位调制,根据“0”和“1”波形的峰值和低谷来变换。这种情况是使用两个相位,也被称为BPSK(Binary Phase Shift Keying)。ASK和FSK是直观容易理解的,但是PSK是难以直观理解的。

 

n-PSK
PSK之所以会变得更加难以判断,是因为前面会出现使用4个相位的QPSK(Quarter Phase Shift Keying)之类的东西。因为相位调制角是以90度为单位,所以传输波形可以取4个相位。也就是说,1单位的波不再对应“0”“1”这2种状态,而是对应“00”“01”“10”“11”这4种状态。那么,每个波形可以传输2bit的数据,这样传输效率也一下子提高了2倍。在这种情况下,“调制模式”和“调制模式表示的位数”不一定是1:1对应,所以调制模式被称为“符号”,表现为“1个符号2位”。

PSK 调制的描绘多数情况是用相位图来描绘。单位相用360度...2π来表示的话,单符文的位相是指在BPSK中的0和2π两点,如果是QPSK的话是0,1/2π, π、 3/2 π的四点。而我们把这种位相图称为Constellation。Constellation可翻译为星座。我们发现无线通信或信息工学中常常会出现各种各样的难解的式子或词语,而反观这个Constellation是有点浪漫的词语啊。

QAM
如果用PSK减小相位变化的幅度的话,可以像8-PSK(3bit/符号)和16-PSK(4bit/符号)那样,增加每个符号的bit数。但是,如果Constellation点过于近的话,就很难分离准确,可靠性就会下降,而信息量却不会有太大的提高(相位角每减半就只增加1bit/符号),所以8-PSK也是被称为实用上限。因此,为了每个符号中可以添加更多的信息密度,开发了直角相位振幅调制技术,QAM(Quadrature Amplitude Modulation) 。
QAM是在QPSK调制中引入「振幅」概念,可以让一个1个符文增加更多的信息量。作为例子,让我们思考一下QPSK调制中的包含了「波形的大小」的另一个变化(1bit的信息)的调制方式(4-APSK:Amplitude 4-Phase Shift Keying)。由此可以生产8个点的Constellation,也就是1个符文变得可以传递3bit的信息量了

而实际使用的QAM不是同心圆,而是Constellation变成格子状的矩形QAM(Rectangular QAM),是4 × 4点的16QAM (4bit/码元)或8 × 8点的64QAM (6bit/符号)被主要使用。特别在需要高速的用途上16 × 16点的256QAM (8bit/符号)也被使用(注),但是由于256QAM的Constellation是非常高密度的,所以对噪声和波形的失真比较敏感,如果不能确保传输质量,就无法发挥其性能,所以在无线通信中的用途受到限制。
(※注):使用12x12=144个点的星座中的128个点来传递信息的144QAM (7bit/符号)似乎也不错,但据我所知,除了2^n以外QAM还没有被实用化。

QAM的Constellation图…例如,看到64QAM,很容易误以为是64个0/1信息并行发送,但请注意不要误解。Constellation图显示“在某个时间内,无线电波的状态指向64点中的某一点”,因此表示可以一次性发送log2(64)=6bit的信息。

QAM 和傅里叶变换
QAM 的传输回路是需要一种傅里叶变换的数学操作。发送端需要从01的罗列中制作Constellation,并进行逆傅里叶转换算出正弦波(实相分量,Real)和余弦波(虚相分量,Imaginary)的系数。而接受方会把接受的信号分离为正弦波和余弦波,并从获得的系数中算出Constellation。用模拟回路实现傅里叶变换这种数学操作是比较困难的,且QAM的原理虽然被广为人知但是一直不怎么被使用。但是随着数字信号处理器(DSP:Digital Signal Processor)的实现,能够在高速、高集成的半导体上进行高速傅里叶变换,所以QAM调制也变得一口气普及起来了。

总结
以上介绍了从ASK到QAM的调制方式。要用电波传达信息,只要理解“将电波以某种形式(幅度、频率、频率)变形=调制”,“调制的单位称为符号”,“1符号不一定等于1bit,只要增加每个符号的比特数,信息效率就会提高”这几项就可以。

下次将讲解高速数字无线通信的事实标准,直观上难以理解的OFDM(正交频分多路调制)。

嵌入式无线LAN模块产品介绍页面