IS-95前向链路系统误码率matlab仿真,包括扩频调制,匹配滤波,RAKE接收

简介: IS-95前向链路系统误码率matlab仿真,包括扩频调制,匹配滤波,RAKE接收

1.算法描述

   前向链路指由基站发往移动台的无线通信链路,也称作下行链路。IS-95系统前向链路最多可以有64个同时传输的信道,它们是在PN序列上再采用正交的Walsh码进行区分的信道,采用同一个射频载波发射。而来自不同基站的前向链路信号则是通过PN短码的不同偏置来区分。

   前向链路的码分物理信道采用的正交码为64阶的Walsh函数,即生成的Walsh序列长度为64个码片。正交信号共有64个Walsh码型。因此,可提供的码分物理信道共64个。利用码分物理信道可以传送不同功能的信息,按照所传送信息功能的不同而分类的信道称为逻辑信道。前向链路中的逻辑信道包括以下几种:

(1)导频信道(PilotChannel)导频信道用于发送导频信息,供移动台识别基站,并提取相干载波以进行相干解调。

(2)同步信道(SynchronizingChannel)同步信道用于发送同步信息,供移动台建立与系统之间的同步。

(3)寻呼信道(PagingChannel)寻呼信道供基站在呼叫建立阶段发送相关的控制信息。

(4)前向业务信道(ForwardTrafficChannel)

扩频调制

扩频基本结构如下:
image.png

匹配滤波

    匹配滤波(matched filtering)是最佳滤波的一种,当输入信号具有某一特殊波形时,其输出信噪比达到最大。在形式上,一个匹配滤波器由以按时间反序排列的输入信号构成。且滤波器的振幅特性与信号的振幅谱一致。因此,对信号的匹配滤波相当于对信号进行互相关运算。地震勘探使用可控震源时,对得到的记录所进行的变换就是匹配滤波的实例。

RAKE接收

  RAKE接收(Rake Receive):其基本原理是将无线通信系统中,幅度明显大于噪声背景的多径分量取出,对其进行延时和相位校正,使之在某一时刻对齐,并按一定的规则进行合并,变矢量合并为代数求和,有效地利用多径分量,提高多径分集的效果。

   RAKE接收机是一种能分离多径信号并有效合并多径信号能量的最终接收机。RAKE接收技术是第三代CDMA移动通信系统中的一项重要技术。在CDMA移动通信系统中,由于信号带宽较宽,存在着复杂的多径无线电信号,通信受到多径衰落的影响。RAKE接收技术实际上是一种多径分集接收技术,可以在时间上分辨出细微的多径信号,对这些分辨出来的多径信号分别进行加权调整、使之复合成加强的信号。由于该接收机中横向滤波器具有类似于锯齿状的抽头,就像耙子一样,故称该接收机为RAKE接收机。

image.png

2.仿真效果预览
matlab2022a仿真结果如下:

image.png

3.MATLAB核心程序

Gs_ind = [42, 35, 33, 31, 27, 26, 25, 22, 21, 19, 18, 17, 16, 10, 7, 6, 5, 3, 2, 1, 0]'; 
Gs = zeros(43, 1); 
Gs(43-Gs_ind) = ones(size(Gs_ind)); 
Zs = [zeros(length(Gs)-1, 1); 1];          
% 长序列生成器的初始状态
%++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
%++++++++++++++++++++++AWGN信道++++++++++++++++++++++++ 
EbEc = 10*log10(ChipRate/BitRate); 
EbEcVit = 10*log10(L); 
EbNo = [0 : 0.5 : 3.5];         %仿真信噪比范围(dB)    
%++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
%------------------------------------------------------
 
%-------------------------主程序-------------------------
 
ErrorsB = []; ErrorsC = []; NN = []; 
if (SD == 1) 
   fprintf('\n SOFT Decision Viterbi Decoder\n\n'); 
else 
   fprintf('\n HARD Decision Viterbi Decoder\n\n'); 
end 
 
for i=1:length(EbNo) 
   fprintf('\nProcessing %1.1f (dB)', EbNo(i)); 
   iter = 0;    ErrB = 0; ErrC = 0; 
   while (ErrB <300) & (iter <150) 
      drawnow; 
       
      %++++++++++++++++++++++发射机+++++++++++++++++++++++ 
      TxData = (randn(N, 1)>0);        
      % 速率为19.2Kcps
      [TxChips, Scrambler] = PacketBuilder(TxData, G_Vit, Gs); 
      % 速率为1.2288Mcps
      [x PN MF] = Modulator(TxChips, MFType, Walsh);   
      %++++++++++++++++++++++++++++++++++++++++++++++++++++++
       
      %++++++++++++++++++++++++信道+++++++++++++++++++++++++++ 
      noise = 1/sqrt(2)*sqrt(R/2)*( randn(size(x)) + j*randn(size(x)))*10^(-(EbNo(i) - EbEc)/20); 
      r = x+noise; 
      %++++++++++++++++++++++++++++++++++++++++++++++++++++++ 
      
      %+++++++++++++++++++++++++接收机++++++++++++++++++++++++ 
      RxSD = Demodulator(r, PN, MF, Walsh); %软判决,速率为19.2 Kcps 
      RxHD = (RxSD>0);                         % 定义接收码片的硬判决
      if (SD)  
        [RxData Metric]= ReceiverSD(RxSD, G_Vit, Scrambler); %软判决
      else 
        [RxData Metric]= ReceiverHD(RxHD, G_Vit, Scrambler); %硬判决
      end 
     %++++++++++++++++++++++++++++++++++++++++++++++++++++++  
       
      if(show) 
         subplot(311); plot(RxSD, '-o'); title('Soft Decisions'); 
         subplot(312); plot(xor(TxChips, RxHD), '-o'); title('Chip Errors'); 
         subplot(313); plot(xor(TxData, RxData), '-o');  
         title(['Data Bit Errors. Metric = ', num2str(Metric)]); 
         pause; 
      end         
A126
相关文章
|
1天前
|
算法 数据挖掘 vr&ar
基于ESTAR指数平滑转换自回归模型的CPI数据统计分析matlab仿真
该程序基于ESTAR指数平滑转换自回归模型,对CPI数据进行统计分析与MATLAB仿真,主要利用M-ESTAR模型计算WNL值、P值、Q值及12阶ARCH值。ESTAR模型结合指数平滑与状态转换自回归,适用于处理经济数据中的非线性趋势变化。在MATLAB 2022a版本中运行并通过ADF检验验证模型的平稳性,适用于复杂的高阶自回归模型。
|
1天前
|
机器学习/深度学习 算法
基于心电信号时空特征的QRS波检测算法matlab仿真
本课题旨在通过提取ECG信号的时空特征并应用QRS波检测算法识别心电信号中的峰值。使用MATLAB 2022a版本实现系统仿真,涵盖信号预处理、特征提取、特征选择、阈值设定及QRS波检测等关键步骤,以提高心脏疾病诊断准确性。预处理阶段采用滤波技术去除噪声,检测算法则结合了一阶导数和二阶导数计算确定QRS波峰值。
|
1天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于PSO粒子群优化的GroupCNN分组卷积网络时间序列预测算法matlab仿真
本项目展示了一种结合粒子群优化(PSO)与分组卷积神经网络(GroupCNN)的时间序列预测算法。该算法通过PSO寻找最优网络结构和超参数,提高预测准确性与效率。软件基于MATLAB 2022a,提供完整代码及详细中文注释,并附带操作步骤视频。分组卷积有效降低了计算成本,而PSO则智能调整网络参数。此方法特别适用于金融市场预测和天气预报等场景。
|
5天前
|
算法 5G 数据安全/隐私保护
SCM信道模型和SCME信道模型的matlab特性仿真,对比空间相关性,时间相关性,频率相关性
该简介展示了使用MATLAB 2022a进行无线通信信道仿真的结果,仿真表明信道的时间、频率和空间相关性随间隔增加而减弱,并且宏小区与微小区间的相关性相似。文中介绍了SCM和SCME模型,分别用于WCDMA和LTE/5G系统仿真,重点在于其空间、时间和频率相关性的建模。SCME模型在SCM的基础上进行了扩展,提供了更精细的参数化,增强了模型的真实性和复杂度。最后附上了MATLAB核心程序,用于计算不同天线间距下的空间互相关性。
10 0
|
1月前
|
安全
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
本文介绍了2023年高教社杯数学建模竞赛D题的圈养湖羊空间利用率问题,包括问题分析、数学模型建立和MATLAB代码实现,旨在优化养殖场的生产计划和空间利用效率。
106 6
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
|
1月前
|
存储 算法 搜索推荐
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
本文提供了2022年华为杯数学建模竞赛B题的详细方案和MATLAB代码实现,包括方形件组批优化问题和排样优化问题,以及相关数学模型的建立和求解方法。
79 3
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
|
1月前
|
数据采集 存储 移动开发
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
本文介绍了2023年五一杯数学建模竞赛B题的解题方法,详细阐述了如何通过数学建模和MATLAB编程来分析快递需求、预测运输数量、优化运输成本,并估计固定和非固定需求,提供了完整的建模方案和代码实现。
62 0
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
|
4月前
|
数据安全/隐私保护
耐震时程曲线,matlab代码,自定义反应谱与地震波,优化源代码,地震波耐震时程曲线
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
基于混合整数规划的微网储能电池容量规划(matlab代码)
基于混合整数规划的微网储能电池容量规划(matlab代码)
|
4月前
|
算法 调度
含多微网租赁共享储能的配电网博弈优化调度(含matlab代码)
含多微网租赁共享储能的配电网博弈优化调度(含matlab代码)