欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

空间调制(SM)代码实现

发布时间:2024/3/24 编程问答 66 豆豆
生活随笔 收集整理的这篇文章主要介绍了 空间调制(SM)代码实现 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

空间调制技术

      • 1. 空间调制的原理
      • 2. 空间调制代码实现
        •  2.1 代码实现条件
        •  2.2 调制实现流程
        •  2.3 最大似然检测
        •  2.3 结果展示

1. 空间调制的原理

  空间调制是将待发送的比特信息分成两部分,一部分用于进行数字调制符号的映射,另一部分则用于选择发射天线
  假设在传输信息的过程中,某个时隙的信息比特序列为u(1×N)∈Ru_{(1\times N)}\in\Ru(1×N)R。经过比特分割后得到u1(1×N1)∈Ru_{1(1\times N_1)}\in\Ru1(1×N1)R,用于选择天线,其中N1N_1N1为用于选择天线的比特数;u2(1×(N−N1))∈Ru_{2(1\times (N-N_1))}\in\Ru2(1×(NN1))R,用于调制符号的映射。空间调制系统模型如图1-1所示。

图1-1 空间调制模型框图

  若发射机配有NtN_tNt根发射天线,接收机配有NrN_rNr根接收天线,将信号传输的信道矩阵记为HHH,则HHH 是一个Nt×NrN_t\times N_rNt×Nr的复数矩阵。则每个时隙用于天线选择的比特数N1N_1N1NtN_tNt之间的关系为N1=log2(Nt)N_1=log_2(N_t)N1=log2(Nt) 。某时隙的信息序列 通过空间调制映射后(假设此时激活第nnn根天线,n∈[1,Nt]n\in[1,N_t]n[1,Nt]) ,将生成一个Nt×1N_t\times 1Nt×1维的传输矩阵 sss,其形式如下,sNt×1=[0...0sn0...0]\textbf{s}_{N_{t}\times1}=[0\ ...\ 0\ s_n\ 0\ ...\ 0]sNt×1=[0 ... 0 sn 0 ... 0]  在接收端,接收天线接收到的信号为Nr×1N_r\times 1Nr×1的复数矩阵yyy,则y=Hs+ny=Hs+ny=Hs+n其中,nnnNr×1N_r\times 1Nr×1噪声矩阵。
  为了加深印象,我们在这里举个简单的栗子:Nt=2,Nr=2,u=[010]N_t=2,N_r=2,u=[0\ 1\ 0]Nt=2Nr=2,u=[0 1 0],因为仅有两根接收天线,故用1bit1bit1bit(由公式N1=log2(Nt)由公式N_1=log_2(N_t)N1=log2(Nt)计算) 信息控制选择天线的开关。故用于选择天线的bit信息,u1=[0]u_1=[0]u1=[0];其余2bit2bit2bit信息用于QPSKQPSKQPSK调制。故,u2=[10]u_2=[1\ 0]u2=[1 0]经过QPSKQPSKQPSK调制后得到s1s_1s1,如下所示。sn=22cos(ωct)+22sin(ωct)s_n=\frac{\sqrt{2}}{2}cos(\omega_ct)+\frac{\sqrt{2}}{2}sin(\omega_ct)sn=22cos(ωct)+22sin(ωct)发射端天线发射的信息矩阵sss,如下所示:
s=[sn0]s=[s_n\ 0]s=[sn 0]接收端接收到的信号y=Hs+ny=Hs+ny=Hs+n,经过空间解调后得到s=[sn0]s=[s_n\ 0]s=[sn 0]再通过QPSKQPSKQPSK解调后恢复出原始信息u(n)u(n)u(n)

2. 空间调制代码实现

 2.1 代码实现条件

 2.2 调制实现流程

 2.3 最大似然检测

  • 假设信道已知:
    H4×4=[h11h12h13h1×Nrh21h22h23h2×Nrh31h32h33h3×Nrh41h42h43h4×Nr]H_{4\ \times 4}=\begin{bmatrix} h_{11} & h_{12}&h_{13}&h_{1\times N_r} \\ h_{21} & h_{22}&h_{23}&h_{2\times N_r} \\h_{31} & h_{32}&h_{33}&h_{3\times N_r} \\h_{41} & h_{42}&h_{43}&h_{4\times N_r} \end{bmatrix}\quadH4 ×4=h11h21h31h41h12h22h32h42h13h23h33h43h1×Nrh2×Nrh3×Nrh4×Nr

  • 假设天线发送的矩阵数据:Tx_data4×1=[00s0]Tx\_data_{4\times 1}=\begin{bmatrix} 0 \\ 0 \\ s\\0 \end{bmatrix}\quadTx_data4×1=00s0

  若不考虑信道噪声,则H4×4⋅Tx_data4×1=[h11h12h13h1×Nrh21h22h23h2×Nrh31h32h33h3×Nrh41h42h43h4×Nr]×[00s0]=[h13h23h33hNt×3]×sH_{4\ \times 4}\cdot Tx\_data_{4\times 1}=\begin{bmatrix} h_{11} & h_{12}&h_{13}&h_{1\times N_r} \\ h_{21} & h_{22}&h_{23}&h_{2\times N_r} \\h_{31} & h_{32}&h_{33}&h_{3\times N_r} \\h_{41} & h_{42}&h_{43}&h_{4\times N_r} \end{bmatrix}\quad\times\begin{bmatrix} 0 \\ 0 \\ s\\0 \end{bmatrix}\quad=\begin{bmatrix} h_{13} \\ h_{23} \\ h_{33}\\h_{Nt\times 3} \end{bmatrix}\quad \times sH4 ×4Tx_data4×1=h11h21h31h41h12h22h32h42h13h23h33h43h1×Nrh2×Nrh3×Nrh4×Nr×00s0=h13h23h33hNt×3×s

  因此,信道矩阵中的对应天线的索引信息

  • 检测步骤如下图所示:

  得到的kkkkkk为天线索引,QPSK_Symbol(jj)QPSK\_Symbol(jj)QPSK_Symbol(jj)为检测到的调制符号。

 2.3 结果展示

  SNR=-10:2:6,每个信噪比下跑1000次消除随机误差,得到结果如下所示。

总结

以上是生活随笔为你收集整理的空间调制(SM)代码实现的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。