☰
CDMA码分多址原理详解:扩频、正交码与功率控制工程实践
2026/10/15 22:00:01 网站建设 项目流程

1. 从一个生活场景理解CDMA到底在解决什么问题

第一次接触码分多址(CDMA)这个概念,很多人会被“码分”“多址”这几个字绕晕。我换个方式讲:假设你在一间很大的会议室里,同时有几十个人在说话,每个人说的语言不一样——有人说中文,有人说英语,有人说日语。如果你只懂中文,那么即使房间里很吵,你也能从一片嘈杂中准确捕捉到那个说中文的人讲的内容,其他人的声音对你来说就像背景噪音。CDMA干的就是这件事:让多个用户同时、同频段地发送信号,靠“语言”(编码方式)来区分彼此,而不是靠“时间段”或“频率段”来区分。

这个思路和传统的多址方式有本质区别。频分多址(FDMA)是把频谱切成若干份,每人分一段,像把一条高速公路分成多条车道,各走各的;时分多址(TDMA)是把时间切成若干份,每人轮流用,像单车道轮流放行。而CDMA是所有人同时上路,每人开一辆“声音特征不同”的车,接收端只认自己关心的那个声音特征。这个“声音特征”在通信里就是扩频码。

CDMA的核心价值在于三点:第一,频谱利用率高,因为所有用户共享同一频段,不需要预留保护间隔;第二,抗干扰能力强,窄带干扰在解扩过程中会被“摊薄”;第三,软容量特性,用户数不是硬性上限,而是随着用户增加,背景噪声逐渐升高,通话质量平滑下降,不会像FDMA/TDMA那样一旦满了就直接拒绝接入。

这套机制最早在军事通信中被重视,因为它的信号功率可以压得很低,甚至低于背景噪声,不容易被截获。后来民用移动通信把它发扬光大,成为3G时代的主流技术之一。今天你手机里的GPS、某些卫星通信、甚至Wi-Fi的某些机制,都能看到CDMA思想的影子。所以不管你是通信专业的学生、刚入行的网络优化工程师,还是单纯对“为什么手机能同时打电话”好奇的技术爱好者,把CDMA搞明白,对理解整个无线通信体系都很有帮助。

2. 核心原理拆解:扩频、正交码与解扩的数学直觉

2.1 为什么“扩频”是CDMA的灵魂

CDMA最底层的操作叫扩频。简单说,就是把一个窄带信号(比如语音信号,带宽只有几千赫兹)乘以一个高速率的伪随机码序列,结果信号的带宽被“撑”得很宽,可能达到几兆赫兹。这个过程就像你把一小撮盐撒进一大锅汤里——盐还是那些盐,但分布到了更大的空间里。

为什么要这么做?因为扩频之后,信号功率被分散到很宽的频带上,单位频带内的功率极低,甚至可以低于热噪声电平。接收端只要用相同的伪随机码去做相关运算,就能把这撮“盐”重新聚拢回来,恢复出原始信号。而其他用户的信号因为用的是不同的码,相关运算后仍然是一盘散沙,落在噪声里。

这里有个关键参数叫扩频增益,计算公式是:

扩频增益 = 10 × log10(扩频带宽 / 原始信号带宽)

举个例子,原始语音信号带宽按4kHz算,扩频后带宽按1.2288MHz算(这是某典型CDMA系统的码片速率),那么扩频增益大约是10×log10(1228800/4000)≈24.9dB。这意味着,即使信号功率比噪声低20多dB,接收端仍然能把它解出来。这就是CDMA“藏在噪声里”的能力来源。

2.2 正交码:让不同用户“互不干扰”的数学基础

CDMA区分用户靠的是码的正交性。所谓正交,用最通俗的话说就是:两个码序列相乘再累加,结果为零。就像两个人一个只会点头一个只会摇头,你问“同意吗”,点头的人给出+1,摇头的人给出-1,你把所有回答加起来,正好抵消。

在实际系统中,常用的正交码是Walsh码。Walsh码的长度通常是2的幂次,比如64位。一个64位的Walsh码集合里,有64个互相正交的码字。每个用户分配一个不同的Walsh码,发送时用自己的码去乘信号,接收时用同样的码去乘回来再积分,就能只提取自己的信号。

但这里有个现实问题:无线信道不是理想的,多径传播会让码的正交性被破坏。你发出的信号经过不同路径到达接收端,时间上错开了,原本正交的码可能变得不正交,产生多址干扰(MAI)。所以实际CDMA系统里,除了Walsh码做信道区分,还会用**伪随机码(PN码)**做扰码,进一步降低用户间的相关性。PN码的特点是看起来像随机噪声,但接收端可以复现,它的自相关性强、互相关性弱,适合用来做“区分不同基站”或“区分不同用户”的标识。

2.3 解扩过程:从噪声中“捞”出有用信号

解扩是扩频的逆操作。接收端收到的是所有用户信号叠加在一起的混合波形,加上各种噪声和干扰。解扩时,用本地产生的、与目标用户完全一致的扩频码去乘接收信号,然后在一个码周期内积分。

数学上可以这样理解:假设用户A的信号是S_A乘以码C_A,用户B的信号是S_B乘以码C_B。接收端用C_A去乘总信号:

(S_A·C_A + S_B·C_B + 噪声) × C_A = S_A·C_A·C_A + S_B·C_B·C_A + 噪声·C_A

因为C_A·C_A=1(自相关为1),C_B·C_A=0(互相关为0),所以结果就剩下S_A加上一些残余噪声。积分器就像一个“投票器”,把有用信号累加起来,把不相关的成分平均掉。

实际工程中,由于码不可能完全正交、信道有时延扩展,残余的多址干扰仍然存在。所以CDMA系统是干扰受限的,不是带宽受限的。用户越多,干扰越大,信噪比越低,直到无法解调。这也是为什么CDMA系统需要功率控制——让每个用户到达基站的功率尽量相等,避免某个强信号用户把弱信号用户“淹没”。

3. 实操视角:CDMA系统里几个关键环节的工程实现

3.1 功率控制:CDMA的“生命线”

如果你问一个做过CDMA网络优化的工程师,最头疼的是什么,十有八九会说是功率控制。在FDMA/TDMA系统里,一个用户发射功率大一点,最多影响自己那个频段或时隙。但在CDMA里,所有用户共享同一频段,任何一个用户功率过高,都会抬高整个小区的背景噪声,直接压缩其他用户的容量。

功率控制分两条链路:前向功率控制(基站到手机)和反向功率控制(手机到基站)。反向功率控制尤其关键,因为它要解决“远近效应”——离基站近的手机信号强,离得远的信号弱,如果不加控制,近处手机的信号会盖住远处手机的信号。

反向功率控制通常分三步走:

  1. 开环功率控制:手机根据接收到的基站信号强度,粗略估计路径损耗,设定初始发射功率。这一步快但不准,因为前向和反向链路的衰落特性不完全一致。
  2. 闭环功率控制:基站每1.25ms测量一次接收到的手机信号信噪比,如果高于目标值,就通过前向信道发一个“降低功率”指令;低于目标值就发“提高功率”指令。手机收到指令后调整发射功率,调整步长通常是1dB。
  3. 外环功率控制:根据误帧率动态调整闭环功率控制的目标信噪比。如果误帧率偏高,就提高目标信噪比;误帧率很低,就降低目标信噪比,避免过度发射浪费容量。

实操心得:在做CDMA网络优化时,外环功率控制的目标信噪比设置非常讲究。设高了,用户发射功率普遍偏大,小区容量下降;设低了,边缘用户误帧率飙升,通话质量差。通常需要结合路测数据反复调整,找到容量和质量的平衡点。

3.2 软切换:CDMA独有的“先连后断”

在FDMA/TDMA系统里,手机从一个基站切换到另一个基站,通常是“先断后连”——先断开旧基站,再连接新基站,中间会有一个短暂的中断。CDMA因为所有基站使用相同的频段,手机可以同时与多个基站保持连接,这就是软切换。

软切换的过程是这样的:手机在移动过程中,检测到来自多个基站的导频信号强度。当某个新基站的导频强度超过一定阈值,手机就把它加入“候选集”,并通过原基站通知网络。网络协调新基站分配资源,然后手机同时与新旧基站通信。当旧基站的导频强度降到阈值以下,再把它从激活集中移除。

软切换的好处是无缝切换,用户几乎感觉不到中断。而且因为同时与多个基站连接,信号经过不同路径到达,接收端可以做分集合并,反而提升了信号质量。但代价是占用更多网络资源,因为同一份信息要在多条链路上传输。

注意:软切换只适用于基站之间同步的情况。如果基站之间不同步,就需要更软切换(同一基站不同扇区之间)或硬切换(不同频段或不同系统之间)。实际部署中,软切换比例通常控制在30%~40%,过高会浪费前向容量,过低则切换成功率下降。

3.3 地址码与扰码的分工

CDMA系统里有两类码:信道化码和扰码。信道化码用Walsh码,负责区分同一小区内不同用户或不同信道;扰码用PN码,负责区分不同小区或不同基站。

为什么需要两类码?因为Walsh码的数量有限,一个64阶的Walsh码只有64个码字,如果所有小区都用同一套Walsh码,相邻小区的用户就会互相干扰。所以每个小区用一个不同的PN码偏移做扰码,把信号“搅乱”成看起来不一样的形式。接收端先用对应的PN码解扰,恢复出本小区的信号,再用Walsh码解出具体用户。

PN码的偏移量设计也有讲究。某典型系统里,PN码周期是32768个码片,分成512个偏移,每个偏移间隔64个码片。相邻基站分配不同的偏移,偏移间隔要足够大,保证即使有时延扩展,解扰时也不会混淆。这个偏移规划是网络规划阶段的重要工作,规划不好会导致导频污染——某个区域收到多个强度相近的导频,手机无法确定该跟哪个基站。

4. 常见问题与排查技巧实录

4.1 为什么CDMA系统里“用户越多,通话质量越差”是正常现象?

这是CDMA的软容量特性决定的。在FDMA/TDMA里,信道数是硬性上限,满了就阻塞。CDMA里没有硬上限,每增加一个用户,就多一份干扰,所有用户的信噪比都下降一点。当用户数超过设计容量,误帧率上升,通话质量下降,但不会突然断掉。

排查这类问题时,重点看两个指标:反向噪声抬升和前向发射功率。如果反向噪声抬升超过某个门限(比如6dB),说明小区已经过载,需要采取负载控制措施,比如拒绝新用户接入、降低某些用户的数据速率、或者调整导频功率让边缘用户切换到相邻小区。

实操技巧:在网优后台,可以设置一个“反向噪声抬升门限”,当实时值超过门限时自动触发拥塞控制。这个门限不能设得太低,否则频繁触发会影响用户感知;也不能太高,否则基站接收机可能饱和。通常建议设在5~7dB之间,具体看设备性能和业务模型。

4.2 导频污染怎么判断和解决?

导频污染是CDMA网络里很常见的问题,表现为:某区域收到多个导频信号,强度都差不多,但没有一个明显占主导。手机在这种情况下会频繁切换,或者无法解调前向信道,导致掉话或接入失败。

判断方法很简单:用路测设备扫频,看激活集导频数和Ec/Io。如果激活集里导频数超过3个,且最强导频的Ec/Io低于-12dB,基本可以判定为导频污染。

解决思路分三步:

  1. 调整天线方位角和下倾角:让某个基站的信号在该区域明显强于其他基站,形成主导导频。
  2. 调整导频功率:适当提高目标基站的导频功率,或降低干扰基站的导频功率。
  3. 增加新基站或射频拉远单元:如果调整天线无法解决,说明该区域覆盖结构不合理,需要补点。

踩过的坑:有一次在某密集城区做优化,导频污染导致整片区域掉话率偏高。一开始只调了天线,效果不明显。后来发现是两个基站的天线挂高太高,信号越过目标区域覆盖到了对方区域。把挂高降了5米,问题迎刃而解。所以调天线不能只看方位角和下倾角,挂高也是关键变量。

4.3 常见问题速查表

问题现象可能原因排查手段解决措施
反向噪声抬升过高用户过多、外部干扰、功率控制失效查看基站反向RSSI、检查功率控制指令负载控制、排查干扰源、校准功率控制
导频污染基站布局不合理、天线参数不当路测扫频、分析激活集导频数调天线、调功率、补点
软切换比例过高切换门限设置过松、导频功率不均衡统计软切换比例、分析切换日志调整切换门限、优化导频功率
接入失败率高前向覆盖不足、接入信道冲突检查前向Ec/Io、接入信道负载调整导频功率、优化接入参数
掉话率高导频污染、切换失败、功率控制异常路测+后台信令跟踪综合优化,优先解决导频污染

5. 从CDMA到现代通信:思想延续与工程启示

5.1 CDMA思想在后续技术中的影子

虽然3G之后,主流移动通信转向了OFDMA(正交频分多址),但CDMA的核心思想并没有消失。比如:

  • GPS:每颗卫星用不同的伪随机码扩频,接收机用对应的码解扩,本质上就是CDMA。
  • Wi-Fi的CSMA/CA:虽然不是扩频,但“先监听再发送”的冲突避免思路,和CDMA的干扰管理有相通之处。
  • 5G的免调度传输:某些场景下,多个用户共享同一时频资源,靠不同的解调参考信号区分,这也是“码分”思想的变种。
  • 扩频通信在物联网中的应用:LoRa就是典型的扩频技术,用不同的扩频因子区分用户,牺牲速率换覆盖和抗干扰。

所以学CDMA不只是学一个过时的技术,而是理解一种用编码维度换取容量和抗干扰能力的思维方式。这种思维在频谱越来越拥挤的今天,反而更有价值。

5.2 给刚入行朋友的几点建议

如果你正在学习无线通信,或者刚进入网优行业,我有几个实在的建议:

第一,别死记公式,先建立直觉。扩频增益、正交性、功率控制这些概念,用生活类比理解一遍,比背十遍公式管用。比如功率控制就是“让每个人说话声音一样大”,软切换就是“换座位时先坐新座位再离开旧座位”。

第二,动手做仿真。用MATLAB或Python写一个简单的CDMA收发链路:生成两个用户的随机比特,分别用两个Walsh码扩频,叠加后加噪声,再用对应码解扩。你会直观看到:即使用户2的信号功率比用户1高很多,只要码是正交的,用户1仍然能解出来。但如果你加入多径时延,正交性被破坏,误码率就会上升。这个仿真做一遍,比看十篇论文都深刻。

第三,关注实际网络数据。如果你能接触到网优后台,多看看反向噪声、导频Ec/Io、软切换比例这些指标。理论上的CDMA和实际网络里的CDMA差距很大,实际网络里充满了不理想因素:天线方向图不完美、建筑物遮挡、用户分布不均匀。理解这些“不完美”,才是工程能力的体现。

第四,学会用工具。路测软件、频谱仪、信令分析工具,这些是网优工程师的吃饭家伙。不用怕操作复杂,找一个测试场景,从头到尾跟一遍:扫频、分析导频、看切换信令、定位问题、调整参数、复测验证。跟完一个完整流程,比看手册学得快得多。

5.3 一个值得深思的工程取舍

CDMA系统里有一个很经典的取舍:容量与质量的平衡。在FDMA/TDMA里,容量是“硬”的,要么接入要么阻塞,用户感知是二元的。在CDMA里,容量是“软”的,用户多的时候大家质量都下降一点,但不会突然断掉。这种“优雅降级”的设计哲学,其实在很多系统里都有借鉴意义。

比如现在的云计算平台,资源超卖就是类似的思路:不硬性限制每个用户能用多少,而是让大家共享资源池,高峰期大家性能都降一点,但不会直接拒绝服务。再比如交通系统,高速公路不设硬性车流量上限,而是通过匝道控制、可变限速来平滑流量,避免突然拥堵。

所以CDMA给我的最大启发不是某个具体技术,而是一种系统设计思维:当资源无法硬性分割时,如何通过编码、调度、功率控制等手段,让多个用户“和平共处”,并且在过载时优雅降级而不是崩溃。这种思维,在任何一个资源受限的系统里都用得上。

最后再分享一个小技巧:如果你要给别人讲CDMA,别一上来就画扩频框图。先带他做一个“多人同时说话”的游戏——让三个人同时用不同节奏拍手,你只跟着其中一个人的节奏拍,你会发现你仍然能跟上。这就是码分多址的直觉。有了这个直觉,再讲Walsh码、PN码、功率控制,他就容易理解了。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询