【硬件片内测试】基于FPGA的BPSK扩频通信链路测试,包含帧同步,定时点,扩频伪码同步,信道,误码统计

目录

1.引言

2.算法测试效果

3.算法涉及理论知识概要

[3.1 扩频](#3.1 扩频)

[3.2 插入导频](#3.2 插入导频)

[3.3 BPSK调制](#3.3 BPSK调制)

[3.4 BPSK解调](#3.4 BPSK解调)

[3.5 帧同步](#3.5 帧同步)

[3.6 基于相关峰的定时点提取](#3.6 基于相关峰的定时点提取)

[3.7 采样判决](#3.7 采样判决)

[3.8 解扩](#3.8 解扩)

4.Verilog核心接口

5.开发板使用说明和如何移植不同的开发板

6.参考文献

7.完整算法代码文件获得


1.引言

基于FPGA的BPSK通信链路实现,系统包括BPSK调制模块,BPSK相干解调模块,AWGN信道模块,误码统计模块,数据源模块,基于相关峰提取的帧同步和定时点提取模块,扩频解扩等。

2.算法测试效果

本系统是

https://blog.csdn.net/hlayumi1234567/article/details/157187814?spm=1001.2014.3001.5502

硬件测试版本。

在系统在仿真版本基础上增加了ila在线数据采集模块,vio在线SNR设置模块,数据源模块。硬件ila测试结果如下:(完整代码运行后无水印):

vivado2022.2测试

设置SNR=15db

设置SNR=2db

设置SNR=-5db

3.算法涉及理论知识概要

整体系统结构如下所示:

3.1 扩频

用伪随机码(伪码)c(k)(周期为N,c(k)∈{+1,−1} )扩展信号带宽,实现抗干扰。扩频后信号

3.2 插入导频

插入已知导频序列p(t) ,用于接收端帧同步。导频序列为PN序列,插在数据帧的前面。

3.3 BPSK调制

BPSK信号与2ASK信号的时域表达式在形式上是完全相同的,所不同的只是两者基带信号s(t)的构成,一个由双极性NRZ码组成,另一个由单极性NRZ码组成。因此,求BPSK信号的功率谱密度时,也可采用与求2ASK信号功率谱密度相同的方法。

(1)当双极性基带信号以相等的概率(p=1/2)出现时,BPSK信号的功率谱仅由连续谱组成。BPSK信号的功率谱由连续谱和离散谱两部分组成。其中,连续谱取决于数字基带信号s(t)经线性调制后的双边带谱,而离散谱则由载波分量确定。

(2)BPSK的连续谱部分与2ASK信号的连续谱基本相同(仅差一个常数因子)。因此,BPSK信号的带宽、频带利用率也与2ASK信号的相同。

3.4 BPSK解调

​二进制相移键控(BPSK)信号进行相干解调的系统,其包括:用于从所述BPSK信号中恢复出频率为2F的载波信号(C)的装置;用于将频率为2F的所述信号注入到注入锁定振荡器(ILO)中的装置,该注入锁定振荡器的固有谐振频率为fr,该fr大致等于f,该注入锁定振荡器提供用于恢复具有(θe-k)/2相移的原始载波的差分输出(op、on)信号,其中θ=arcsin(f\[r-r)/αAif],其中α和k是取决于所述注入锁定振荡器(ILO)中的主要非线性的类型的参数,而Ai是所恢复的频率为2f的载波信号的幅值,以及用于将所述差分输出(op、on)信号与所述输入BPSK信号的副本进行组合,以产生解调信号(DEMOD)的装置。

3.5 帧同步

在数字通信中,信息通常是以帧为单位进行组织和传输的。帧同步的目的是确定每一帧的起始位置,以便接收端能够正确地解调出每帧中的数据。

设发送的帧结构为:帧同步码 + 信息码元序列 。帧同步码是具有特定规律的码序列,用于接收端识别帧的起始。

帧同步的过程就是在接收序列中寻找与帧同步码匹配的位置,一旦找到匹配位置,就确定了帧的起始位置,后续的码元就可以按照帧结构进行正确的划分和处理。

3.6 基于相关峰的定时点提取

在接收信号中,通过寻找与本地已知序列(如训练序列或导频序列)的相关峰来确定定时点。具体来说,将接收信号与本地序列进行相关运算,当两者的相位和时间对齐时,相关值会出现峰值,这个峰值点对应的位置就是最佳的定时点,用于确定信号的采样时刻,以保证后续信号处理的准确性。

3.7 采样判决

在确定了定时点后,对接收信号进行采样,将采样值与预设的判决门限进行比较,根据比较结果确定接收信号的电平值,从而恢复出原始的二进制比特流。

3.8 解扩

用与发射端同步的伪码压缩带宽,恢复原始数据。伪码同步后,解扩输出:

在本课题中,伪码同步采用的是伪码峰值判决的方法,当出现峰值时,说明此时伪码同步。

4.Verilog核心接口

5.开发板使用说明和如何移植不同的开发板

注意:硬件片内测试是指发射接收均在一个板子内完成。

在本课题中,使用的开发板是:

如果你的开发板和我的不一样,可以参考代码包中的程序移植方法进行移植:

6.参考文献

1程晓畅,苏绍景,王跃科,等.伪随机码超声扩频测距系统设计与算法J.测试技术学报, 2007, 21(1):5.DOI:10.3969/j.issn.1671-7449.2007.01.016. 2杜勇.数字调制解调技术的MATLAB与FPGA实现M.电子工业出版社,2014.0sj5_006m

7.完整算法代码文件获得

完整程序见博客首页左侧或者打开本文底部GZH名片

(V关注后回复码:X118)

(或者回复:BPSK扩频硬件)

V

相关推荐
坏孩子的诺亚方舟14 天前
FPGA系统架构设计实践15_高云Arora V系列时钟体系
fpga开发·系统架构
FPGA小徐14 天前
入门 CNN 结构全解析|从流程图理论到 FPGA Verilog 硬件实现(含习题带讲解)
fpga开发
FPGA小徐14 天前
FPGA 数字信号处理:并行 FIR 与串行滤波器设计原理、对比与完整 Verilog 实现
fpga开发
Saniffer_SH15 天前
【高清视频】Gen6 服务器还没到,Gen6 SSD 怎么测?Emily 现场演示三种测试环境
人工智能·驱动开发·测试工具·缓存·fpga开发·计算机外设·压力测试
zlinear数据采集卡15 天前
双核架构深度解析:ARM+FPGA如何让数据采集卡实现500Ksps高性能?
arm开发·fpga开发·架构
9527华安15 天前
FPGA实现GTH Transceivers Wizard传输2路视频,基于aurora 8b10b编解码架构,提供4套工程源码和技术支持
fpga开发·gth·aurora 8b10b·transceivers
FPGA小徐16 天前
FPGA 数字信号处理(二):并行 FIR 滤波器的 Verilog 全流程设计与实现
fpga开发
国科安芯16 天前
基于AS32S601ZIT2型抗辐照MCU的商业航天卫星姿态确定与控制系统研究
单片机·嵌入式硬件·安全·fpga开发·架构·risc-v
ALINX技术博客16 天前
【黑金云课堂】FPGA技术教程FPGA基础:I2C 总线通信技术
fpga开发·i2c
Hello-FPGA16 天前
Xilinx KU040 FPGA Camera Link 图像采集
c++·fpga开发