二进制相移键控
二进制相移键控(BPSK)
基础
BPSK的时域表达式是
:待发送的二进制信息 :符号周期 :成型滤波器的冲激响应 :载波中心频率
:未必整数倍
MATLAB仿真
按照上图流程进行MATLAB仿真
调制与解调
设定参数:系统时钟频率为
,根升余弦滤波器滚降系数 ,其它参数可修改
1
2
3
4
5
6
7 sys_clk = 160e6;
Rb = 5e6; % //FIXME
Rs = Rb; Ts = 1 / Rs;
usmp_rate = sys_clk / Rs; % //FIXME
fc = 20e6; % //FIXME
hrc = 'rrc'; % //FIXME
- 随机生成
num
个二进制数,并对极化处理:
1 | num = round(100000 * 10 ^ (EbNo / 10)); |
- 成型滤波,并去除延迟:
1 | switch hrc |
- 载波调制
1 | phase = 2 * pi * rand; |
- 经过高斯白噪声信道
与 的关系:
1 | SNR = EbNo - 10 * log10(usmp_rate / 2); |
- 相干解调
1 | local_carrier = 2 * carrier; |
- 匹配滤波与抽样判决
1 | mf_dout = conv(received_signal, fliplr(h)); |
仿真结果
将仿真得到的误比特率曲线与理论误比特率曲线比较,基本重合
理论分析
载波频率对误比特率的影响
带通采样定理:
频带信号如图所示,为了保证被采样后不会发生混叠,需要满足条件:
则
在采样频率、码元速率一定时,由带通采样定理可以推导出载波频率
内插系数对误比特率的影响
当
接收机采样点位置对误比特率的影响
由仿真结果可以看出,在最佳的接收机采样点处采样,误比特率最低,距离该点越远,误比特率越高。
成型滤波器对误比特率的影响
几乎无影响。
FPGA仿真(调制)
设定参数:系统时钟频率为
,传输速率 ,发送比特数为 位。
1 | reg [14:0] counter = 15'd0; |
由系统时钟频率和传输速率可以得到内插系数为reg [14:0] counter
,每计数counter
的高
存储数据、成型滤波、载波调制等过程通过IP核实现:
功能 | IP 核 |
---|---|
存储数据 | Block Memory Generator |
成型滤波 | FIR Compiler |
生成载波 | DDS Compiler |
载波调制 | Multiplier |
生成系统时钟 | Clock Wizard |
仿真波形如下图
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 科海拾零!