1. CDM
按码字将信道划分为N个码道,并行传输N路数据,这就是码分复用CDM,如下图所示。

2. CDMA
将N个码道动态分配给多个用户使用,就是码分多址CDMA,如下图所示。

3. 实现
无线通信系统中CDM/CDMA的实现原理,如图下图所示。

利用扩频技术,对多个用户的多路数据用不同码字进行扩频处理,即可实现CDM/CDMA。
3.1 什么是扩频
扩频就是指频谱扩展,顾名思义就是扩大信号的频谱带宽。
根据香农公式:
增大带宽B,可以在不改变信道容量的前提下降低对信噪比的要求。通过扩频可以在信号发射功率很低的情况下实现正常通信,便于隐藏自己,因此扩频通信最初被用于军事通信。
3.2 如何实现扩频和解扩
扩频:输入码流与扩频码相乘,将低速码流转换成高速码片流。
解扩:高速码片流与解扩码(与扩频码相同)相乘,求和,结果为正判决为0,结果为负判决为1,即可恢复出原始码流,如下图所示。
输入码流为0110,扩频码为0101,将0映射为+1,1映射成-1。扩频输入和输出信号波形如下图所示。

采用0101扩频码进行解扩,+4映射为0,-4映射为1,解扩输出:0110,如下图所示。

3.3 如何实现码分多址
为不同用户分配相互正交的扩频码,用户数据与各自的扩频码相乘再叠加,将低速码流转换成高速码片流,到了接收端通过解扩将各自的数据恢复出来,如下图所示。
接着前面的例子,发送端使用用户A的扩频码0101对码流0110进行扩频。扩频输入和输出信号波形如下图所示。

用户B接收到码片流后,使用自己的解扩码0011进行解扩。求和结果为0,用户B解扩无输出,如下图所示。

如果发送端同时使用用户B的扩频码0011对码流1101进行扩频。扩频输入和输出信号波形如图9-36所示。

用户A和B的码片流叠加结果如下图所示。

用户A解扩:输出0110,如下图所示。

用户B解扩:输出1101,如下图所示。

3.4 Walsh码的正交性
Walsh码的正交性体现在如下两方面:
两个相同的N阶Walsh码相乘,再求和,结果为N;
两个不同的N阶Walsh码相乘,再求和,结果为0。
正是因为Walsh码的正交性,才使得:用自身的扩频码可以解扩出信号,而用其他的扩频码无法解扩出信号。
以4阶Walsh码为例:
3.5 Walsh码的生成方法
a 哈达玛矩阵
如下图所示,通过哈达玛矩阵可以很容易地由N阶Walsh码得到2N阶Walsh码。

1阶哈达玛矩阵只有1个元素:0。由1阶哈达玛矩阵很容易得到2阶哈达玛矩阵:左上角、左下角、右上角都是0,右下角取反为1。用同样的方法可以得到4阶、8阶等哈达玛矩阵,如下图所示。

b Walsh码树
Walsh码树中不同分支的Walsh码,不论阶数是否相同,都互相正交,如下图所示。

利用Walsh码树的上述特点,可以方便地实现不同阶数Walsh码的灵活分配。

3.6 如何实现码同步
Walsh码的正交性有个前提:码必须是同步的,否则正交性无从谈起。如何实现码同步呢?一般使用PN码来实现。
a PN码
PN码,即伪随机码。
m序列是由n级线性移位寄存器产生的周期为2^n−1的码序列,是最长线性移位寄存器序列的简称。m序列具有很好的自相关性,一般使用m序列作为PN码。
以n=3为例,m序列的产生电路如下图所示。

假定寄存器的初始状态为:D1=0,D2=0,D3=1,输出a1=1。
第1个时钟脉冲到来后,状态演变为:D1=1,D2=0,D3=0,输出a2=0。
第2个时钟脉冲到来后,状态演变为:D1=0,D2=1,D3=0,输出a3=1。依次节拍状态如下表所示。

第7个状态又回到移位寄存器的初始状态,并不断循环。很明显,该m序列的周期为2^3−1=7,一个周期的序列为:1011100。
b 同步原理
m序列具有很好的自相关特性,可以用来实现同步。
自相关运算过程如下:
①本地产生一个m序列。
②移动1位,与接收到的m序列逐位相乘再求和。
③移动2位,与接收到的m序列逐位相乘再求和。
④依此类推,即可得到自相关运算结果。
注:计算之前要将0映射为+1,将1映射为-1。
接着n=3的m序列的例子。
如果本地产生的序列与接收序列刚好对齐,逐位相乘再求和的结果为7,如下图所示。

如果本地产生的序列与接收序列刚好对齐,逐位相乘再求和的结果为7,如下图所示。

如果本地产生的序列与接收序列错开2位,逐位相乘再求和结果为-1,如下图所示。

依此类推。将所有的计算结果画到一张图中,如下图所示。

可以发现如下规律:
如果本地产生的序列与接收到的序列刚好对齐,逐位相乘再求和的结果为:7。
如果本地产生的序列与接收到的序列没有对齐,逐位相乘再求和的结果为:-1。
根据m序列的自相关性,很容易实现m序列的同步,有了这个做基础,Walsh码的同步就不成问题了。
4. 应用
Walsh码和PN码在CDMA系统中的应用
4.1 Walsh码
CDMA系统前向信道采用了64阶Walsh码,也就是64个64位的Walsh码,分配给导频信道、同步信道、寻呼信道、业务信道使用,如下图所示
4.2 PN码
CDMA系统中用到了周期为215-1=32 767的m序列,又称短PN序列。
导频信道的实现原理如下图所示。

注:导频信道上调制的数据是全0,也是全0,映射后都是+1。从中可以看出导频信道的I路和Q路传输的数据都是短PN码。 通过导频信道发送短PN序列实现终端和小区的码同步。 以64为间隔,得到512个PN偏置,用于区分不同小区。