RM3 CDMA的性能:误码率,能量控制和容量估计

误码率 Error Probability


噪音 Noise


在信号传输过程中需要考虑噪音的影响。对于单用户在高斯信道上的传输(我们稍后考虑CDMA场景),可假设:

  • 在时间 \(k\) 传输的信号记为 \(x_k\)
  • 在时间 \(k\) 接收的信号为:\(y_k = x_k + n_k\)
  • 为简单起见,假设 \(x_k\) 仅能取两个值 \(A\)\(-A\)

其中,其中,\(n_k\) 是接收端的噪声。

  • 噪声通常建模为均值为零的高斯变量。
  • 噪声的方差对信号检测有影响:方差越大,检测中的错误越多。

信噪比(SNR)


信噪比是评估接收信号质量的指标,定义为接收功率与噪声功率的比值。SNR高时,误码率低;SNR低时,误码率高。

对于方差为\(\sigma^2\)的噪音和上述传输信号的建模,有:

\[ S N R=\frac{A^2}{\sigma^2} \]


  • 考虑一个简单的信道,该信道在接收端受到高斯噪声的干扰。
  • 假设发送端发送了一组比特序列:\(1 -1 1 1 -1……\) 每个比特/符号的幅度为 \(A\),因此序列 \(x_k\)\(A, -A, A, A, -A, \dots\)
  • 接收信号为:\(y_k = x_k + n_k\)。其中,\(n_k\) 是接收端的噪声(建模为均值为零、方差为 \(\sigma^2\) 的高斯变量)。
  • 检测规则:
    • 如果 \(y_k > 0\),则认为接收信号的最接近值是 \(A\),即 \(\hat{x}_k = A\)
    • 如果 \(y_k \leq 0\),则认为接收信号的最接近值是 \(-A\),即 \(\hat{x}_k = -A\)

误码率的简单建模


误码概率(BER):

\[  p = P(\hat{x}_k \neq x_k) = P(\hat{x}_k = A | x_k = -A)P(x_k = -A) + P(\hat{x}_k = -A | x_k = A)P(x_k = A) \]

考虑到\(n_k\)是一个方差为\(\sigma^2\)的高斯向量:

\[ \begin{gathered}P\left(\hat{x}_k=A \mid x_k=-A\right)=P\left(n_k>A\right)=\frac{1}{\sqrt{2 \pi}} \int_A^{\infty} e^{-\frac{t^2}{2 \sigma^2}} d t \\P\left(\hat{x}_k=-A \mid x_k=A\right)=P\left(n_k \leq-A\right)=\frac{1}{\sqrt{2 \pi}} \int_{-\infty}^{-A} e^{-\frac{t^2}{2 \sigma^2}} d t\end{gathered} \]

根据高斯分布性质,有:

\[ \frac{1}{\sqrt{2 \pi}} \int_A^{\infty} e^{-\frac{t^2}{2 \sigma^2}} d t=\frac{1}{\sqrt{2 \pi}} \int_{-\infty}^{-A} e^{-\frac{t^2}{2 \sigma^2}} d t=\frac{1}{\sqrt{2 \pi}} \int_{\frac{A}{\sigma}}^{\infty} e^{-\frac{t^2}{2}} d t=Q\left(\frac{A}{\sigma}\right)=\mathrm{Q}(\sqrt{S N R}) \]

由此得:

\[ p=2\times\frac{1}{2}\times Q\left(\frac{A}{\sigma}\right) = Q(\sqrt{SNR}) \]

单用户CDMA系统的误码率


首先考虑单用户的 CDMA 系统,假设接收端存在高斯噪声,不考虑多径信道的影响。

用户 \(i\) 的发射 CDMA 信号为:

$$ x_k^i c_0^i, x_k^i c_1^i, , x_k^i c_{L-1}^i, x_{k+1}^i c_0^i, x_{k+1}^i c_1^i, , x_{k+1}^i c_{L-1}^i,

$$

每个符号 \(x_k\) 的接收信号为:

\[ \underbrace{x_k^i c_0^i+n_{0, k}}_{y_{0, k}^i}, \underbrace{x_k^i c_1^i+n_{1, k}}_{y_{1, k}^i}, \ldots, \underbrace{x_k^i c_{L-1}^i+n_{L-1, k}}_{y_{L-1, k}^i} \]

在接收端,我们将接收信号与码进行相乘:

\[ \begin{aligned}& \frac{1}{L}\left[c_0^i, c_1^i, \ldots, c_{L-1}^i\right]\left[\begin{array}{c}x_k^i c_0^i+n_{0, k} \\\vdots \\x_k^i c_{L-1}^i+n_{L-1, k}\end{array}\right]=\frac{1}{L} x_k \sum_{l=0}^{L-1} c_l^i c_l^i+ \\& \frac{1}{L} \sum_{l=0}^{L-1} c_l^i n_{l, k}=x_k+\frac{1}{L} \sum_{l=0}^{L-1} c_l^i n_{l, k}\end{aligned} \]

考虑项:

\[ \frac{1}{L} \sum_{l=0}^{L-1} c_l^i n_{l,k} = n_k \]

  • \(n_{l,k}\) 是零均值、方差为 \(\sigma'^2\) 的独立同分布高斯随机变量。
  • 可以证明,\(\frac{1}{L} \sum_{l=0}^{L-1} c_l^i n_{l,k}\) 是一个高斯变量,其:
    • 均值:\(\mathbb{E} \left( \frac{1}{L} \sum_{l=0}^{L-1} c_l^i n_{l,k} \right) = \frac{1}{L} \sum_{l=0}^{L-1} c_l^i \mathbb{E}(n_{l,k}) = 0\)

    • 方差:

      \[ \begin{aligned} & \mathbb{E}\left(\left(\frac{1}{L} \sum_{l=0}^{L-1} c_l^i n_{l, k}\right)^2\right)-\left(\mathbb{E}\left(\frac{1}{L} \sum_{l=0}^{L-1} c_l^i n_{l, k}\right)\right)^2=\mathbb{E}\left(\left(\frac{1}{L} \sum_{l=0}^{L-1} c_l^i n_{l, k}\right)^2\right)= \\ & \frac{1}{L^2} \sum_{l=0}^{L-1} \sum_{l^{\prime}=0}^{L-1} c_l^i c_{l^{\prime}}^i \mathbb{E}\left(n_{l^{\prime}, k} n_{l, k}\right)=\frac{1}{L^2} \sum_{l=0}^{L-1}\left(c_l^i\right)^2 \mathbb{E}\left(\left(n_{l, k}\right)^2\right)=\frac{1}{L} \sigma^{\prime 2} \end{aligned} \]

也就是说:

\[ \frac{1}{L} [c_0^i, c_1^i, \ldots, c_{L-1}^i] \begin{bmatrix} x_k^i c_0^i + n_{0,k} \\ \vdots \\ x_k^i c_{L-1}^i + n_{L-1,k} \end{bmatrix} = x_k + \frac{1}{L} \sum_{l=0}^{L-1} c_l^i n_{l,k} = x_k + n_k \]

  • \(n_k\) 是一个零均值、方差为 \(\frac{1}{L} \sigma'^2\) 的高斯随机变量。

检测规则与无 CDMA 情况下相同:

  • 如果 \(z_k > 0\),则 \(\hat{x}_k = A\)
  • 如果 \(z_k \leq 0\),则 \(\hat{x}_k = -A\)

由于形式与无CDMA情况相同:\(z_k = x_k + n_k\)

  • 误码率与无 CDMA 情况相同(但此时噪声的方差为 \(\frac{1}{L} \sigma'^2\))。

  • 误码率为:

    \[ P_e = Q\left(\sqrt{\text{SNR}}\right), \quad \text{其中 } \text{SNR} = \frac{L A^2}{\sigma'^2} \]

  • 值得注意的是,\(A^2\) 是信号的功率,记为 \(P\)


但是,虽然看起来我们的SNR增大了\(L\)倍,这是不真实的。

在 CDMA 系统中,所占带宽 \(B'\)\(\frac{1}{T_c} = \frac{L}{T_s}\) 成正比,即带宽 \(B'\) 被扩展为 \(B' = L B\),其中 \(B\) 是应用 CDMA 之前原始信号的带宽。

  • 每个 \(n_{l,k}\) 的方差为 \(\sigma'^2 = \frac{N_0}{2} \times B'\),其中 \(B'\) 是占用带宽,\(N_0\) 是噪声功率谱密度。
  • 因此,方差 \(\sigma'^2\) 比窄带信号中的噪声方差 \(\sigma^2\)\(L\) 倍。此时信噪比为 \(L \frac{A^2}{\sigma'^2}\),但分母比原始窄带信号高 \(L\) 倍。因此,CDMA 在单用户情况下,当噪声是大带宽噪声(例如白噪声)时,并未带来任何增益。


在噪声不是大带宽噪声的情况下(即噪声仅出现在信号带宽的一小部分上):

每个 \(n_{l,k}\) 的方差为 \(\sigma'^2 = \frac{N_0}{2} \times B'\),其中 \(B'\) 是噪声占用的带宽(为窄带,且 \(B' \approx B\)),\(N_0\) 是噪声功率谱密度。

  • 因此,方差 \(\sigma'^2\) 在这种情况下等于窄带信号中的噪声方差(即没有 CDMA 的情况)。

  • 信噪比为:

    \[ L \frac{A^2}{\sigma'^2} \approx L \frac{A^2}{\sigma^2} \]

  • 这意味着信噪比是没有 CDMA 的系统的 \(L\) 倍。因此,CDMA 在单用户情况下,当噪声为窄带时会带来增益。

多用户CDMA系统的误码率


现在让我们考虑 \(N\) 个用户的多用户场景。

  • 假设 CDMA 码是随机独立同分布(i.i.d.)的:即每个码 \(c_l^i\) 的元素是随机生成的,服从均值为零、方差为 1 的 i.i.d. 分布。
    • 即不同的码是独立的,每个码的不同元素也相互独立。
  • 假设简单的高斯信道模型:即没有多径,信道的影响在接收端简化为高斯噪声。

时刻 \(k\) 的接收信号为:

\[ \underbrace{\sum_{i=1}^N x_k^i c_0^i+n_{0, k}}_{V_{0, k}}, \underbrace{\sum_{i=1}^N x_k^i c_1^i+n_{1, k}}_{y_{1, k}}, \ldots, \underbrace{\sum_{i=1}^N x_k^i c_{L-1}^i+n_{L-1, k}}_{y_{L-1, k}} \]

在接收端,为解码用户 \(i\) 的信号,将接收信号与码 \(c^i\) 相乘:

\[ \begin{aligned}& \frac{1}{L}\left[c_0^i, c_1^i, \ldots, c_{L-1}^i\right]\left[\begin{array}{c}\sum_{i=1}^N x_k^i c_0^i+n_{0, k} \\\vdots \\\sum_{i=1}^N x_k^i c_{L-1}^i+n_{L-1, k}\end{array}\right]=\frac{1}{L} x_k^i \sum_{l=0}^{L-1} c_l^i c_l^i+ \\& \frac{1}{L} \sum_{j \neq i}^N x_k^j \sum_{l=0}^{L-1} c_l^i c_l^j+ \frac{1}{L} \sum_{l=0}^{L-1} c_l^i n_{l, k}=x_k^i+\frac{1}{L} \sum_{j \neq i}^N x_k^j \sum_{l=0}^{L-1} c_l^i c_l^j+\frac{1}{L} \sum_{l=0}^{L-1} c_l^i n_{l, k}\end{aligned} \]

其中,\(\frac{1}{L} \sum_{l=0}^{L-1} c_l^i n_{l,k}\) 已证明服从均值为 \(0\)、方差为 \(\frac{\sigma'^2}{L}\) 的高斯分布。

假设干扰被视为高斯变量(因为它是独立同分布随机变量之和)。

干扰的均值和方差如下:

  • 均值:

    \[ E\left(\frac{1}{L} \sum_{j \neq i}^N x_k^j \sum_{l=0}^{L-1} c_l^i c_l^j\right)=\frac{1}{L} \sum_{j \neq i}^N E\left(x_k^j\right) \sum_{l=0}^{L-1} E\left(c_l^i\right) E\left(c_l^j\right)=0 \]

  • 方差:

\[ \begin{aligned}& E\left(\left(\frac{1}{L} \sum_{j \neq i}^N x_k^j \sum_{l=0}^{L-1} c_l^i c_l^j\right)^2\right)-\left(E\left(\frac{1}{L} \sum_{j \neq i}^N x_k^j \sum_{l=0}^{L-1} c_l^i c_l^j\right)\right)^2=E\left(\left(\frac{1}{L} \sum_{j \neq i}^N x_k^j \sum_{l=0}^{L-1} c_l^i c_l^j\right)^2\right)= \\& \frac{1}{L^2} \sum_{j \neq i}^N E\left(\left(x_k^j\right)^2\right) \sum_{l=0}^{L-1} E\left(\left(c_l^i\right)^2\right) E\left(\left(c_l^j\right)^2\right)=\frac{1}{L} \sum_{j \neq i}^N A^2\end{aligned} \]

  • 其中 \(A^2\) 是用户 \(j\) 的信号功率,一般可写为:\(\frac{1}{L} \sum_{j \neq i} p_j\),其中 \(p_j\) 是用户 \(j\) 的信号功率。

因此,经过码 \(c^i\) 处理后,信号可写为:\(z_k = x_k + n_k\)

其中 \(n_k\) 是干扰和噪声之和,其服从均值为 0、方差为:\(\frac{1}{L} \sum_{j \neq i} A^2 + \frac{\sigma'^2}{L}\)

  • 误码率为:

\[ P_e=Q(\sqrt{S I N R}),S I N R=\frac{A^2}{\frac{1}{L} \sum_{j \neq i}^N A^2+\frac{\sigma^2}{L}} \]

其中SINR可以称为信干噪比。


考虑不同\(E_b/N_0\)和不同用户数量下的比特误码率BER。其中,\(E_b=A^2 T_S\):每比特的能量;\(N_0\):噪声谱密度。

方差:\(\sigma'^2 = \frac{N_0}{2} B' = \frac{N_0}{2} \frac{L}{T_s}\),只考虑正带宽所以除以\(2\)

\[ \operatorname{SINR} =\frac{A^2}{\frac{1}{L} \sum_{j \neq i}^N A^2+\frac{\sigma^2}{L}}=2 \frac{E_b}{N_0} \frac{1}{2 \frac{N-1 E_b}{L N_0}+1} \]

能量控制和容量估计


CDMA系统容量


系统容量定义为小区中可以同时活动的用户/码的数量。

我们已经看到用户数量不能超过 \(L\)

除此之外,当用户的速率不同(即不同的码长度 \(L_i\))时,用户数量受到以下不等式的限制

\[ \sum_{i=1}^G \frac{K_i}{L_i} \leq 1 \]

其中,\(K_i\) 是使用码长度为 \(L_i\) 的用户数,\(G\) 是使用的 CDMA 码长度的种类数。

实际中(如 3G),容量通常不受上述不等式的限制,而是受到用户之间干扰的限制。

  • 如前所述,干扰是由于码之间的正交性在实践中会丧失(例如,由于多径信道)。
  • 为了分析容量,我们需要首先在 CDMA 蜂窝系统中考虑一个功率控制问题,通过解决该问题,找到提供系统容量的条件。

功率控制问题建模


假设一个蜂窝网络由一个半径为 \(r\) 的小区组成,\(K\) 个用户随机分布在小区中。

考虑上行链路,用户使用正交 CDMA 码同时传输数据。正如之前所述,接收信号之间存在干扰。

  • 每个用户以功率 \(p_i\) 发送信号。用户 \(i\) 的信号以功率 \(p_{r,i} = p_i g_i\) 被接收,其中 \(g_i\) 是用户 \(i\) 和基站之间的信道系数。

  • 用户 \(i\) 信号的干扰由以下公式给出:

    \[ \theta \sum_{j \neq i} p_j g_j \]

    其中,\(\theta\) 是一个表示 CDMA 码正交性丧失的因子。

接收的每比特信干噪比 (SINR) 为:

\[ \operatorname{SINR}_i=\frac{W}{R_i} \frac{p_i g_i}{\theta \sum_{j \neq i}^K p_j g_j+\sigma^2} \quad \text { for } i=1, \ldots, K \]

  • 其中:
    • \(W = 3.84 \, \text{Mchip/s}\) 是码片速率
    • \(R_i\) 是比特率
    • \(\sigma^2\) 是噪声功率
    • 可以看出 \(\frac{W}{R_i} = \frac{T_c}{T_s} = L\)

如果用户 \(i\) 接收到的 SINR 高于或等于预定义阈值 \(\gamma_i\),则基站能够以可接受的比特错误率 (BER) 解码信号。


观察到以下特点。

  • 信噪比 (SNR) 或信干噪比 (SINR) 与 BER 之间存在关系。
  • 从 SINR 表达式可以看出,如果用户 \(i\) 的功率增加,其 SINR 增加,但对其他用户施加的干扰也会增加,从而降低其他用户的 SINR。

功率控制的目标:为每个用户分配适当的功率,使所有用户的 SINR 等于预定义目标 \(\gamma_i\)

  • 该问题可表述为:

\[ \operatorname{SINR}_i=\frac{W}{R_i} \frac{p_i g_i}{\theta \sum_{j \neq i}^K p_j g_j+\sigma^2}=\gamma_i \text { for } i=1, \ldots, K \]

这可写为一组线性方程:

\[ p_i g_i=\frac{R_i \gamma_i}{W}\left(\theta \sum_{j \neq i}^K p_j g_j+\sigma^2\right) . \]

功率控制框架


前述方程组可以用矩阵形式表示为:

\[ (I-F) P=u \text { where } P=\left[p_1, \ldots, p_K\right]^T ; \mathbf{u}=\left[\frac{R_1 \gamma_1 \sigma^2}{W g_1}, \ldots, \frac{R_K \gamma_K \sigma^2}{W g_K}\right]^T \]

  • \(I\) 是单位矩阵

  • \(F\)被如下定义:

    \[ F_{i j}=\left\{\begin{array}{cc}0 & \text { for } i=j \\\theta \frac{R_i \gamma_i g_j}{W g_i} & \text { for } i \neq j\end{array}\right. \]

  • 可以看出 \(F\) 是一个不可约矩阵)。

如果 \(F\) 是非负不可约矩阵,则方程 \((I - F)P = u\) 有解,当且仅当 \(\rho(F) < 1\),其中 \(\rho(F)\) 是矩阵 \(F\) 的谱半径(即特征值的最大绝对值): 解为:

\[ P=(I-F)^{-1} u \]

关于不可约矩阵 isIrreducible

  • 一个 \(n \times n\) 矩阵 \(F\) 被称为可约矩阵,当且仅当存在一个置换矩阵 \(P\),使得矩阵 \(P^T F P\) 是块上三角形式

\[ P^T F P = \begin{pmatrix} F_1 & F_2 \\ 0 & F_3 \end{pmatrix} \]

  • 如果一个方阵不可约,则称其为不可约矩阵。
  • 满足以下条件的 \(n \times n\) 矩阵 \(F\) 是等价的:
    • \(F\) 是不可约矩阵;
    • \(F\) 相关联的有向图(digraph)是强连通的;
    • 对任意 \(i\)\(j\),存在 \(k\) 使得 \((F^k)_{ij} > 0\)


功率控制问题的可行性决定了 CDMA 的容量。

  • 如果 \(\rho(F) \geq 1\),则系统不可行,即至少有部分用户的 SINR 无法高于或等于目标值 \(\gamma_i\)。 因此,需要减少用户数量或降低 \(\gamma_i\)

也就是说,条件 \(\rho(F) < 1\) 决定了系统容量。


迭代求解方法

  • 使用前述功率控制框架分配功率的公式为:

\[ P = (I - F)^{-1}u \]

  • 这需要对一个 \(K \times K\) 的矩阵进行求逆运算(当用户数量 \(K\) 较大时,复杂度较高)。

  • 因此,可以采用以下迭代方法(\(t\) 为迭代次数索引):

    \[ p_i(t+1) = \frac{R_i \gamma_i}{W g_i} \left( \theta \sum_{j \neq i} p_j(t) g_j + \sigma^2 \right), \quad \forall i \]

  • 该方法收敛于以下固定点:

    \[ p_i = \frac{R_i \gamma_i}{W g_i} \left( \theta \sum_{j \neq i} p_j g_j + \sigma^2 \right), \quad \forall i \]

  • 这与以下目标 SINR 表达式等价:

\[ \operatorname{SINR}_i=\frac{W}{R_i} \frac{p_i g_i}{\theta \sum_{j \neq i}^K p_j g_j+\sigma^2}=\gamma_i \quad \forall i \]

参见可能会有的TP笔记。

3G中的功率控制


  • 从前述可以看出,迭代算法通过以下方式调整功率:
    • 如果实际 SINR 小于目标值,则增加功率;
    • 如果实际 SINR 大于目标值,则减少功率。
  • 实际应用中使用类似的功率控制方法:
    • 每个用户以功率 \(P(t)\) 发送信号;
    • 接收端比较 \(\text{SINR}(t)\) 和目标值 \(\text{SINR}_{\text{target}}\)
    • 发送端根据比较结果调整分配功率 \(P(t) \pm \Delta_{\text{TPC}}\)
  • 接收端估计接收功率和当前频段的总干扰,生成信干噪比 (SINR):

\[ \text{SINR}_{\text{est}} = \text{SINR}(t) \]

  • 每隔 \(0.667 \, \text{ms}\)(即一个时隙),接收端生成 TPC(传输功率控制)指令:
    • \(\text{SINR}{\text{est}} < \text{SINR}{\text{target}}\),则 \(\text{TPC} = 0\)
    • \(\text{SINR}{\text{est}} > \text{SINR}{\text{target}}\),则 \(\text{TPC} = 1\)
  • 发射端根据 TPC 指令调整专用物理信道的功率:
    • 如果 \(\text{TPC} = 1\),则降低功率 \(P - \Delta_{\text{TPC}}\)
    • 如果 \(\text{TPC} = 0\),则增加功率 \(P + \Delta_{\text{TPC}}\)
  • \(\Delta_{\text{TPC}}\) 的步长可以根据小区不同而变化,典型范围为:\(\Delta_{\text{TPC}} \in [0.25, 1.5] \, \text{dB}\)