无线信道四大参数:时延扩展、相干带宽与多普勒扩展、相干时间详解
2026/9/15 17:03:17 网站建设 项目流程

做无线通信的人,迟早会在某次外场测试里被同一个问题逼疯:发射功率明明很稳定,接收电平却像心电图一样剧烈起伏;窄带测试一切正常,一上宽带信号就满屏误块。这时候去翻教科书,总会撞上四个绕不开的名词——时延扩展、相干带宽、多普勒扩展、相干时间。它们被拆在不同章节里讲,乍看是四个独立概念,实际上是一张完整的四象限图:前一对描述信道在频率维度的“选择性”,后一对描述信道在时间维度的“选择性”,中间用傅里叶变换互相勾连。

这篇文章不打算复述教材。我会从物理场景出发,把这四个参数的物理含义、估算公式、典型量级、对系统设计的影响一次性串联起来,最后落到 OFDM 循环前缀、子载波间隔、导频密度、交织深度这些工程换算上。无论你是刚入行的射频或基带工程师、做链路仿真的算法同学,还是准备面试的通信专业学生,这套框架都能让你少走不少弯路。

1. 一条移动链路里的两个“破坏维度”:时间色散与频率色散

1.1 为什么简单的路径损耗模型解释不了实测数据

假设你在一座城市里做路测,车速 60 km/h,扫频仪显示某个频点的接收功率在十几米距离内跌掉 20 dB 以上,然后又弹回来。如果只用自由空间或 Okumura-Hata 路径损耗模型,根本解释不了这种剧烈抖动。真相是,接收机捕捉到的不是一条路径的信号,而是从四面八方绕射、反射、散射过来的几十条信号副本的叠加,它们各自的幅度、相位、延迟和到达角都不同。移动台一动,各路径之间的相位关系快速变化,某些频点恰好落入“反相相消”的位置,深衰落就出现了。

换句话说,无线信道不是一个简单的衰减器,而是一个时变的线性滤波器。发射信号经过这个滤波器后,在时间、频率两个维度都被改写了。时延扩展、相干带宽、多普勒扩展、相干时间,就是描述这个滤波器“坏到什么程度”的四个核心指标。

1.2 破坏维度一:多径引起的时间色散

如果我们发射一个极窄的脉冲,接收端看到的不会是干净的一个脉冲,而是一串到达时间不同的脉冲副本,这就是信道的冲激响应。由于各条路径长度不同,信号能量在时间轴上被“摊开”了,专业说法叫时间色散

时间色散的直接后果和体育馆里的回声类似:你在台上说一个字,后面跟着一串回声;当说话速度快到一定程度,前后内容就叠在一起,谁也听不清。数字通信里的“回声”就是前一符号的拖尾叠加到当前符号上,形成符号间干扰。关于这一点,我在第 2 节详细展开。

1.3 破坏维度二:相对运动引起的频率色散

再看另一个维度。收发两端有相对运动时,每条路径的相位变化速度不一样,因为信号从不同方向到达,沿运动方向的分量不同,于是每个路径副本都会叠加一个大小不同的多普勒频移。大量路径合在一起,接收信号的频谱就不再是发射频谱的简单搬移,而是被“摊”成了一个带,这叫频率色散

频率色散的直接后果是信道随时间快速变化:上一毫秒还算出来的信道状态,下一毫秒可能已经失效。这是高速移动场景里一切困难的根源。

1.4 四个参数的正确打开方式

把上面两个维度放到一起,就能看清楚四个参数的坐标位置:

  • 时间色散作用在时域/延迟域,它的频域投影是频率选择性衰落,用相干带宽来衡量;
  • 频率色散作用在频域/多普勒域,它的时域投影是时间选择性衰落,用相干时间来衡量。

所以时延扩展和相干带宽是一对,多普勒扩展和相干时间是一对。前一对回答“信道对不同频率的响应是否一致”,后一对回答“信道在不同时刻的响应是否一致”。后面所有工程决策,本质上都在跟这两对关系打交道。

2. 时延扩展:信号在时间轴上“拖出的影子”

2.1 从双径模型看懂“回声”

先从最简单的双径模型出发。发射信号为 s(t),接收信号可以写成:

r(t) = a₁·s(t − τ₁) + a₂·s(t − τ₂)

a₁、a₂ 是两条路径的幅度增益,τ₁、τ₂ 是对应的传播延迟。如果符号周期 Tₛ 远大于路径之间的时延差 Δτ = |τ₂ − τ₁|,那么前一个符号抵达后,迟到的副本不会影响当前符号的位置;但如果 Tₛ 已经小到与 Δτ 同一个量级,后面副本就会踩到前面符号上,ISI 就出现了。

这个模型的数学很简单,但它几乎是所有多径问题的起点。真实信道就是把这个双径模型扩展成几十条路径的加权和,延迟最远的路径和最近的路径之间的差值,决定了 ISI 的严重程度。

2.2 功率时延谱与 RMS 时延扩展的计算

实际工程里不会去数每一条路径,而是用功率时延谱来刻画信道的时间色散:横轴是相对第一条路径的额外延迟,纵轴是该延迟上接收到的平均功率。从这个谱里提取两个数:平均额外延迟μτ 和RMS 时延扩展στ。

计算公式为:

μτ = Σ(Pᵢ·τᵢ) / ΣPᵢ

E[τ²] = Σ(Pᵢ·τᵢ²) / ΣPᵢ

στ = √(E[τ²] − μτ²)

我举个手工可验算的例子。假设功率时延谱有三条路径:

路径相对功率额外延迟
10 dB0 ns
2−5 dB100 ns
3−10 dB250 ns

先把 dB 转成线性功率:1.000、0.316、0.100,总和 1.416。平均额外延迟 μτ = (0 + 31.6 + 25.0) / 1.416 ≈ 40.0 ns;二阶矩 E[τ²] = (0 + 3162 + 6250) / 1.416 ≈ 6646 ns²。于是 στ = √(6646 − 1600) ≈ 71 ns。

这个例子说明,哪怕是看起来“只有三条径”的信道,RMS 时延扩展也不是某一条径的延迟,而是整条功率时延谱的统计宽度。路径越多、拖得越远,στ 越大。

2.3 典型场景的量级参考

不同场景的时延扩展量级差别很大,直接影响系统参数设计:

场景RMS 时延扩展典型量级最大时延扩展
室内/微微小区10 ~ 100 ns小于 0.5 μs
城区宏站0.5 ~ 2 μs5 ~ 10 μs
恶化城区/密集高楼2 ~ 5 μs10 ~ 20 μs
山区/远距离镜面反射5 ~ 10 μs20 ~ 40 μs

这些数字背下来是很有用的。比如你拿到一张山区覆盖的链路预算,心里就该有个预期:这里的延时扩展可能十几微秒,普通循环前缀大概率不够,得考虑扩展循环前缀或者均衡器抽头数量。

2.4 时延扩展对系统的第一刀:均衡器与循环前缀

时延扩展造成的 ISI 必须在接收端处理掉。两类经典手段:

  • 均衡器:GSM 时代用判决反馈均衡器,均衡器的抽头时延范围必须覆盖最大时延扩展,所以 GSM 的均衡器设计要能消化十几微秒的延迟拖尾;
  • 循环前缀:OFDM 系统里给每个符号前面加一段 CP,只要 CP 长度大于最大时延扩展,前一个符号的拖尾就会被 CP“吃掉”,不污染当前符号。

提示:工程上 CP 不能只按最大时延扩展来取,还要加上时间同步误差和残余时偏的余量。我见过不少仿真里 CP 恰好等于信道最大时延,结果实测一有同步偏差,误码率立刻抬升。

3. 相干带宽:时域阴影投射到频域的“波纹”

3.1 频域传递函数为什么会“起波纹”

把冲激响应做傅里叶变换,就得到信道的频域传递函数:

H(f) = Σaᵢ·e^(−j2πfτᵢ)

这里有个很直观的几何关系:各条路径的相位随频率 f 旋转,旋转速度由各自延迟 τᵢ 决定。延迟越大的路径,相位随频率变化越快。多条路径的旋转矢量在不同频率上有时同相叠加(增强),有时反相抵消(陷波),于是 |H(f)| 在频率轴上呈现出周期性波纹。

用双径模型看得更清楚。若两条径延迟差为 Δτ,则幅度响应里会出现间隔为 1/Δτ 的周期性陷波。假设 Δτ = 1 μs,陷波就每隔 1 MHz 出现一个。路径延迟差越大,频域波纹越密,说明信道对相邻频率的响应差异越大。

3.2 相干带宽的估算公式与两种口径

相干带宽 Bc定义为信道频域响应保持强相关的频率范围,即在这个带宽内,任意两个频率点的信道响应可以认为近似相同。它的估算与相关门限有关,常见有两种口径:

  • 50% 频率相关:Bc ≈ 1 / (5·στ)
  • 90% 频率相关:Bc ≈ 1 / (50·στ)

同一个信道用两个公式算出来的数相差十倍,这不是矛盾,而是因为定义里的“强相关”标准不同。工程交流时一定要问清楚对方用的是哪个口径,否则很容易出现“你为什么说我导频间距不够,我算出来够啊”的扯皮。

回到刚才 71 ns 的例子:Bc(50%) ≈ 2.82 MHz,Bc(90%) ≈ 282 kHz。如果这是一个 20 MHz 的 LTE 信号,那么这个信道对信号而言肯定是频率选择性的。城区宏站 στ 约 1 μs 时,Bc(50%) 只有 200 kHz 左右,更不用说 90% 口径下只有 20 kHz。这就是为什么宽带蜂窝系统必须面对频率选择性衰落。

3.3 平坦衰落与频率选择性衰落:适配问题而非好坏问题

把信号带宽 W 和相干带宽 Bc 比较:

  • W ≪ Bc:平坦衰落。信号内所有频率成分经历几乎相同的衰减,整体一起深衰落、一起恢复。好处是接收机不需要复杂的频域均衡,坏处是深衰落一旦发生就是全带宽一起完蛋;
  • W ≫ Bc:频率选择性衰落。信号内不同频率成分独立衰落,信道的频域响应坑坑洼洼。坏处是需要均衡或 OFDM 等手段应对 ISI,好处是提供了频率分集:一部分频率陷入深衰落时,另一部分频率可能还很好。

我在实际项目里经常提醒算法组的同事:频率选择性衰落不是洪水猛兽。配合交织和纠错编码,它反而能让系统利用频率分集,比“干净的平坦衰落”更稳。反倒是窄带系统在平坦衰落里一旦落入深 null,没有任何频率可以救援,只能靠时间分集和重传硬扛。

3.4 宽带系统为什么普遍转向 OFDM

OFDM 的思路是把宽频带切成大量窄子载波,让每个子载波带宽 Δf 远小于 Bc。这样每个子载波上的信道都近似平坦衰落,接收端只需要在每个子载波上用单个复数系数完成信道均衡,就把“频率选择性信道均衡”这个难题转化成了“一堆平坦信道均衡”的简单问题。代价是引入了 CP 开销和峰均比问题。

这也是为什么 LTE 和 5G NR 都不约而同地选择了 OFDM 家族:本质上是在用“把宽带变窄带”的方式回避频率选择性。

4. 多普勒扩展:动起来之后频谱被“摊饼”

4.1 多普勒频移的计算与一个算例

单条路径的多普勒频移公式:

f_d = (v / λ)·cosθ = (v·f_c / c)·cosθ

其中 v 是移动速度,λ 是载波波长,f_c 是载波频率,θ 是来波方向与运动方向的夹角。最大多普勒频移发生在 θ = 0°,即正对运动方向:

f_m = v·f_c / c

算一个典型值:2 GHz 载频、120 km/h 车速,v = 33.3 m/s,所以 f_m = 33.3 × 2×10⁹ / 3×10⁸ ≈ 222 Hz。这个数字意味着什么?一个纯正弦载波经过这个移动信道后,接收频谱不再是一根谱线,而是分布在 ±222 Hz 范围内的一个带。

4.2 为什么是“扩展”而不是单纯频移:Jakes 谱

如果只有一条来波,接收信号确实只是单纯搬移一个频点。但真实环境中散射体分布在四面八方,每条路径的到达角不同,对应的多普勒频移也不同,于是各条路径叠加的结果是:接收频谱从一根线被拉成一个带。调制信号带宽为 W 时,经过信道后的等效带宽大约变成 W + 2f_m。

经典的 Jakes 谱给出了二维各向同性散射下的多普勒功率谱形状:

S(f) = 1 / [π·f_m·√(1 − (f/f_m)²)],|f| < f_m

这个谱是 U 形的,两端 f = ±f_m 处功率密度最大。直觉解释是:来波角度 θ 在圆周上均匀分布时,f_d = f_m·cosθ 是 cos 函数,θ 接近 0° 和 180° 时频率随角度变化缓慢,大量角度集中映射到接近 ±f_m 的位置,所以两端能量堆积。

4.3 多普勒扩展造成的三个直接问题

多普勒扩展不是“测速仪”,它对系统的伤害体现在三个方面:

  • 时间选择性衰落:各路径的相对相位随移动快速变化,信道冲激响应在短时间内面目全非。送出一个符号时,符号期间信道可能已经变了几轮;
  • OFDM 子载波间干扰:子载波本来是理想正交的,但多普勒扩展让每个子载波的频谱展宽,能量泄漏到相邻子载波,破坏正交性,这就是 ICI;
  • 信道估计和 CSI 失效:信道变化太快时,一次信道估计算出的结果只对很短的时间窗口有效,调度、预编码和波束方向都可能拿到过期的信道信息。

提示:判断多普勒影响时,不要只看移动速度,还要看载波频率。同样的 120 km/h,在 2 GHz 下 f_m 约 222 Hz,到 3.5 GHz 就变成约 389 Hz,到 28 GHz 毫米波频段就是 3.1 kHz。这就是为什么高频系统对相位噪声和多普勒鲁棒性要求苛刻得多。

5. 相干时间:信道“翻脸”的时间尺度

5.1 相干时间的定义与估算公式

相干时间 Tc是信道冲激响应保持强相关的时间长度,也就是信道“看起来没怎么变”的时间窗口。它与多普勒扩展成反比,典型估算公式:

Tc ≈ 0.423 / f_m

这个 0.423 是怎么来的?在 Jakes 谱假设下,信道时间相关性由第一类零阶贝塞尔函数 J₀(2πf_m·Δt) 描述,当 J₀ 的值下降到 0.5 时,对应的 Δt ≈ 0.423 / f_m。工程上为了好记,有时直接用 0.5 / f_m 甚至 1 / f_m 做量级估算。做系统级仿真时我建议统一用 0.423,至少项目内部的对照不会乱。

5.2 从步行到高铁:一组真实的数值对比

以 2 GHz 载频为例,把移动速度换算成多普勒频移和相干时间:

移动场景速度f_mTc ≈ 0.423/f_m
步行3.6 km/h6.7 Hz63 ms
城区行车60 km/h111 Hz3.8 ms
高速120 km/h222 Hz1.9 ms
高铁300 km/h556 Hz0.76 ms

再看一个 5G 高频加高铁的极端组合:3.5 GHz、350 km/h,f_m ≈ 1134 Hz,Tc 只有约 0.37 ms。这意味着信道在半毫秒内就可能彻底换一副面孔,导频和 CSI 的更新速度都必须跟着提上来。

5.3 快衰落与慢衰落的判定陷阱

快衰落和慢衰落有两种语境,工程上经常被混用,需要特别小心。

第一种语境是物理机制上的分类:多径叠加导致的瑞利衰落叫快衰落,楼宇遮挡、地形起伏造成的阴影衰落(对数正态分布)叫慢衰落。这个分类与速度关系不大。

第二种语境是符号周期与相干时间的比较:当符号周期 Tₛ ≪ Tc 时,一个符号期间信道基本不变,属于慢衰落(时间平坦);当 Tₛ 接近或大于 Tc 时,信道在一个符号内就已经变化,属于快衰落(时间选择性)。

同一个信道,对慢速窄带系统可能是慢衰落,对高速宽带系统就是快衰落。“快”和“慢”是相对符号速率而言的,不是绝对速度。面试里我常考这个点,能答清楚的候选人基础一般都不差。

再补一个反直觉经验:低速场景未必比高速好做。3 km/h 时 Tc 约 63 ms,一次深度衰落可能持续几十毫秒,交织器如果没有足够的时域跨度,根本无法打散这种连续错误块;HARQ 重传也要等很久才能等到信道变好。反倒是中高速场景信道在时域变化快,时间分集吃得满,重传成功率更高。所以涉及低速移动的业务,交织深度和重传策略的设计更考验功夫。

6. 对偶框架与工程落地换算

6.1 一张表看懂四参数的对偶关系

把四个参数放在同一张表里,关系立刻清楚:

物理现象作用域参数对偶参数决定的选择性
多径时延扩展时域/延迟域στ相干带宽 Bc ≈ 1/(5στ)频率选择性
多普勒扩展频域/多普勒域f_m相干时间 Tc ≈ 0.423/f_m时间选择性

如果再往上抽象一层,就是在 WSSUS(广义平稳非相关散射)信道模型下,散射函数在延迟-多普勒平面上的两个轴分别展宽:延迟轴方向展得越宽,频域相关性越差,Bc 越小;多普勒轴方向展得越宽,时域相关性越差,Tc 越小。一组对偶在频域,一组对偶在时域,它们互相正交,谁也不能替代谁。

6.2 工程中最常见的六个误区

  • 把时延扩展和多普勒扩展当同类参数直接比大小,其实是两个维度的事;
  • 以为相干带宽是“信道带宽”或者“信号带宽”,实际它是信道频率相关性的一个统计尺度;
  • 把 Tc = 1/f_m 当精确公式,实际它只是量级估计,精确值取决于相关门限;
  • 以为平坦衰落意味着“信号好”,实际平坦衰落一旦深衰落就是全带宽一起挂,没有频率分集可用;
  • 设计导频时忽略移动速度,导致高速场景信道估计跟不上;
  • 看到“高速移动”就无脑加大子载波间隔,忽略了大 SCS 带来的 CP 开销和覆盖收缩。

6.3 OFDM 参数怎么定:循环前缀和子载波间隔的换算

OFDM 设计里两个最核心的参数,恰好分别由前两对关系约束:

  • 循环前缀 CP:必须大于最大时延扩展,再加同步误差余量。城宏站最大时延扩展 5 μs,普通 CP 4.7 μs 偏紧,所以 LTE 才设计了 16.7 μs 的扩展 CP 给大覆盖场景;室内最大时延扩展只有几百纳秒,普通 CP 绰绰有余;
  • 子载波间隔 Δf:必须远大于最大多普勒频移,工程上至少 Δf > 10·f_m,否则 ICI 会明显抬升误码率。LTE 的 15 kHz 子载波间隔,对应 f_m = 222 Hz(120 km/h @ 2 GHz)时余量约 68 倍,够用;到 350 km/h 的高铁场景,如果载频再高一些,15 kHz 就有点捉襟见肘,所以 5G NR 提供了 30 kHz、60 kHz、120 kHz 等多套 numerology 来适配不同速度。

这里有一个始终存在的取舍:加大子载波间隔会让符号变短、对多普勒更鲁棒,但 CP 是按时间长度设计的,符号变短后 CP 开销占比上升,同时大间隔 SCS 常用于高频小覆盖小区,延迟扩展本身也小,所以 CP 可以同步缩短。参数选型时要把“覆盖半径、延迟扩展、移动速度、开销预算”放在一起权衡,而不是只盯着其中一个指标。

6.4 导频密度与交织深度的经验法则

导频图案的设计也直接从 Bc 和 Tc 出发:

  • 频域导频间距:通常取 Δf_pilot ≤ Bc/2,也就是至少按奈奎斯特条件在一个相干带宽内放两个导频。以 στ = 0.5 μs 为例,Bc(50%) 约 400 kHz,导频间距不要超过 200 kHz。LTE 的 CRS 每隔 6 个子载波放一个参考信号,对应 90 kHz 间距,在这个信道下是安全的;
  • 时域导频间距:通常取 Δt_pilot ≤ Tc/2,实际设计留 3 到 5 倍余量更稳。120 km/h 时 Tc 约 1.9 ms,导频间隔 ≤ 0.95 ms,LTE 每时隙 0.5 ms 放一个 DMRS,满足要求;300 km/h 时 Tc 降到 0.76 ms,0.5 ms 的导频间隔已经踩在奈奎斯特边缘,所以高速场景要用更密集的导频或更大的子载波间隔;
  • 交织器深度:深度衰落一般持续约一个相干时间,交织器时域跨度最好覆盖 5 ~ 10 倍 Tc,才能把突发错误打散成独立随机错误。低速场景 Tc 很大,这时交织深度不够的话,时间分集基本吃不到。

6.5 一个可以直接抄作业的估算脚本

做链路仿真时,拿到实测信道冲击响应后,第一步通常是算 RMS 时延扩展和相干带宽。下面这段 Python 代码可以拿来直接用:

import numpy as np def channel_stats(power_db, delay_s, corr=0.5): """从功率时延谱估算 RMS 时延扩展和相干带宽。 power_db: 各路径功率,单位 dB delay_s: 各路径额外延迟,单位 s corr: 相干带宽对应的相关系数门限,0.5 或 0.9 """ p = 10 ** (np.array(power_db) / 10.0) tau = np.array(delay_s) p = p / np.sum(p) # 归一化功率 mu_tau = np.sum(p * tau) tau2 = np.sum(p * tau ** 2) rms_tau = np.sqrt(tau2 - mu_tau ** 2) if corr >= 0.9: bc = 1 / (50 * rms_tau) else: bc = 1 / (5 * rms_tau) return rms_tau, bc power_db = [0, -5, -10] delay_s = [0e-9, 100e-9, 250e-9] rms, bc = channel_stats(power_db, delay_s) print(f"RMS delay spread = {rms*1e9:.1f} ns") print(f"Coherence bandwidth (50%) = {bc/1e3:.1f} kHz")

输出为 RMS delay spread ≈ 71.0 ns,Coherence bandwidth ≈ 2817 kHz。把脚本里的功率时延谱换成实测数据或标准信道模型的抽头参数,就能快速评估一个场景下的参数余量。

最后分享一个我自己的习惯:拿到陌生场景的链路需求时,第一件事不是急着看信噪比,而是先估算四个数——στ、Bc、f_m、Tc。四个数一出来,方案轮廓基本就定了:CP 选多长、子载波间隔用多大、导频放多密、交织做多深,全是这四个数的函数。这套思考方式帮我避开了不少“仿真很好、外场翻车”的尴尬,建议你也试试。

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

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

立即咨询