一种基于FPGA的OTFS低复杂度GAMP检测算法IP核实现方法技术

技术编号:38096565 阅读:40 留言:0更新日期:2023-07-06 09:11
本发明专利技术公开了一种基于FPGA的OTFS低复杂度GAMP检测算法IP核实现方法。首先从原理上阐述了算法软件仿真的优势,提出了一种更易于硬件实现的OTFS检测算法,其次针对算法部分提出了合理的硬件实现架构,并依次进行硬件模块设计。该方法采用Vivado开发平台进行硬件设计,并在XC7A200TFPGA上进行仿真验证。在OTFS接收机的早期研发阶段,可以加速数字基带链路的开发进度,在6G的关键技术研究中,为后续OTFS原理样机的设计能够提供很好的参考价值。理样机的设计能够提供很好的参考价值。理样机的设计能够提供很好的参考价值。

【技术实现步骤摘要】
一种基于FPGA的OTFS低复杂度GAMP检测算法IP核实现方法


[0001]本专利技术属于电子通信
,具体提供了一种基于FPGA的OTFS低复杂度GAMP检测算法IP核实现方法。

技术介绍

[0002]正交时频空(OrthogonalTimeFrequencySpace,OTFS)调制作为一种新型的二维调制技术,可以有效抑制多普勒频移和多径效应对通信系统的影响,相较于传统的正交频分复用(OrthogonalFrequencyDivisionMultiplexing,OFDM)技术更加适用于高动态场景,因此研究其性能非常重要。针对OTFS接收机的设计也是目前研究的一大热点。
[0003]对OTFS而言,其时延多普勒域上信道的稀疏性为接收机检测带来了特有的优势。很多学者从通信的角度设计了一些误码率性能较优的OTFS检测以及均衡的方法,但是在硬件实现上依然存在复杂度高以及系统难优化等问题。并且OTFS发射机、接收机设计的相关研究目前很少有较好的方案提出。
[0004]FPGA器件属于专用集成电路中的一种半定制电路,在无线通信方面,FPGA可以解决复杂的通信协议,并且发挥其自身可编程逻辑电路的优势能快速对通信物理层进行设计和仿真,以及在算法复杂度和系统性能之间取得合理折中。

技术实现思路

[0005]本专利技术的目的在于提供一种基于FPGA的OTFS低复杂度GAMP检测算法IP核实现方法。
[0006]本专利技术的目的通过如下技术方案来实现:
[0007]一种基于FPGA的OTFS低复杂度GAMP检测算法IP核实现方法,步骤为:
[0008]步骤1:在OTFS数字基带链路的接收端中对GAMP检测进行优化;
[0009]步骤2:对算法系统架构进行设计;
[0010]步骤3:信道矩阵存储设计;
[0011]步骤4:对模块传输端口进行设计;
[0012]步骤5:算法调用的乘除法器模块设计;
[0013]步骤6:低复杂度GAMP算法IP核接口设计。
[0014]进一步地,所述步骤1将时延多普勒域矩阵从复数域转换到实数域,基于矩阵的实对称性和稀疏性,在不影响误码率的前提下进一步对接收信号进行匹配滤波从而加强矩阵对角线元素的幅值。
[0015]进一步地,所述步骤2将算法细分为五个模块,顶层由状态机控制不同状态的跳转,当进行到终止判决模块时,通过比较当前输出向量与初始向量的差值和迭代收敛阈值的大小来决定是否需要重新进行一次状态循环跳转。
[0016]进一步地,所述步骤2具体为:
[0017]步骤2.1:具体GAMP算法模块;
[0018]初始化:没有外部信息输入时,此时检测处于空闲状态,即IDLE状态,此时检测IP无操作;外部信息输入时,此时信息输入有效信号in_valid由低电平变为高电平,开始对一帧信号开始检测,对符号点的初始概率以及均值方差进行初始化赋值,当赋值结束输出idle_done信号为1;此时状态机跳转至观测节点更新模块;
[0019]观测节点更新模块:负责观测节点均值方差值的更新,当此模块完成工作后,将one_done信号拉高;状态机检测到该信号拉高后跳转至变量节点更新模块,下一个模块开始工作;
[0020]变量节点更新模块:负责变量节点均值方差值的更新,此模块更新完成后,将two_done信号拉高,状态机跳转至概率质量函数更新模块,下一个模块开始工作;
[0021]概率质量函数更新模块:用于计算每个初始映射点可能性概率;此模块工作完成后同时输出three_done信号为1和x信号的更新值,状态机跳转至终止判决模块,下一个模块开始工作;
[0022]终止判决模块:通过比较符号点的概率大小信息判决输出最终检测的x向量;通过比较x更新前后的差值来确定系统迭代是否结束,若未结束则状态机重新进入观测节点更新模块开始工作;若满足检测输出条件,则输出全部检测结果及错误比特个数,结束当前一帧信号的检测;并跳转到初始化状态,等待下一帧信号进入检测;
[0023]步骤2.2:观测节点、变量节点、概率质量函数模块都需要用到事先存在ROM中的信道矩阵值信息,考虑资源占用问题,此三个模块依次在用到ROM值时发送对应使能有效信号;
[0024]步骤2.3:当状态机跳转到下一个状态时候会输出一个fsm_begin信号,每个模块检测fsm_begin信号的上升沿来产生本模块的起始信号,在逻辑控制中通过计数产生使能信号来对应实现内部模块计算。
[0025]进一步地,步骤3具体为:
[0026]步骤3.1:将信道抽象成表示,检测算法目的则是通过接收信号y
r
和信道矩阵H
r
高效检测出发送信号x
r
,研究发现OTFS信道矩阵具有特有的稀疏性,公式左边均乘以得到新的输入与输出关系其中
[0027]步骤3.2:设计GAMP检测算法合理的硬件架构;设M=8、N=8,则信道矩阵是64*64的复数矩阵,利用公式将其转变为128*128大小的实数矩阵;
[0028]步骤3.3:将信道矩阵参数按照2N*2MN大小划分成8个block,将每个新矩阵块按行展开后取出非0值,然后将取出的值乘以2^22倍来保证小数点后6位的精度;
[0029]步骤3.4:将放大后的数据依次存储到单端口ROM中,分别对应ROM1~ROM8;通过在程序逻辑中控制ROM的读出顺序来实现矩阵和向量相乘。
[0030]进一步地,步骤4具体为:
[0031]步骤4.1:对不同模块之间的数据传输统一采用wire[M*N*2*20

1:0]定义,在经过实数域转换后,算法中每个向量的长度为M*N*2,每个元素在硬件中使用20位定点数表示;
[0032]步骤4.2:将符号数M和子载波数N做parameter处理,所有软件中的小数在硬件中对应20位宽定点数处理,对于有符号数定义1位符号位,3位整数位,16位小数位;无符号数
则对应4位整数位,16位小数位。
[0033]进一步地,步骤5具体为:
[0034]步骤5.1:在算法中涉及有符号向量与无符号向量除法,在调用Xilinx除法器IP时候选择输出为整数+小数模式,小数部分的位宽定义成16位;算法中的有符号向量除法运算,在输入端先行判断符号数的正负,操作数全部取正数在做除法运算;在输出根据最初的判断调整结果的正负;小数部分的符号位去0处理;
[0035]步骤5.2:在矩阵向量和向量与向量乘法中调用Xilinx自带的乘法器IP用于有符号数乘法运算,选用面积优先的两流水线模式;最后对输出的结果右移保留16位小数部分。
[0036]进一步地,步骤6编写仿真激励测试文件,硬件输出解调之后的数据与输入随机数进行对比统计,输出最终错误的比特数;当前状态机进入到迭代终止判决模块且收敛条件成立时,则输出detec_done信号为1来表示检测行为结束。
[0本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于FPGA的OTFS低复杂度GAMP检测算法IP核实现方法,其特征在于:步骤1:在OTFS数字基带链路的接收端中对GAMP检测进行优化;步骤2:对算法系统架构进行设计;步骤3:信道矩阵存储设计;步骤4:对模块传输端口进行设计;步骤5:算法调用的乘除法器模块设计;步骤6:低复杂度GAMP算法IP核接口设计。2.根据权利要求1所述的一种基于FPGA的OTFS低复杂度GAMP检测算法IP核实现方法,其特征在于:所述步骤1将时延多普勒域矩阵从复数域转换到实数域,基于矩阵的实对称性和稀疏性,在不影响误码率的前提下进一步对接收信号进行匹配滤波从而加强矩阵对角线元素的幅值。3.根据权利要求1所述的一种基于FPGA的OTFS低复杂度GAMP检测算法IP核实现方法,其特征在于:所述步骤2将算法细分为五个模块,顶层由状态机控制不同状态的跳转,当进行到终止判决模块时,通过比较当前输出向量与初始向量的差值和迭代收敛阈值的大小来决定是否需要重新进行一次状态循环跳转。4.根据权利要求3所述的一种基于FPGA的OTFS低复杂度GAMP检测算法IP核实现方法,其特征在于:所述步骤2具体为:步骤2.1:具体GAMP算法模块;初始化:没有外部信息输入时,此时检测处于空闲状态,即IDLE状态,此时检测IP无操作;外部信息输入时,此时信息输入有效信号in_valid由低电平变为高电平,开始对一帧信号开始检测,对符号点的初始概率以及均值方差进行初始化赋值,当赋值结束输出idle_done信号为1;此时状态机跳转至观测节点更新模块;观测节点更新模块:负责观测节点均值方差值的更新,当此模块完成工作后,将one_done信号拉高;状态机检测到该信号拉高后跳转至变量节点更新模块,下一个模块开始工作;变量节点更新模块:负责变量节点均值方差值的更新,此模块更新完成后,将two_done信号拉高,状态机跳转至概率质量函数更新模块,下一个模块开始工作;概率质量函数更新模块:用于计算每个初始映射点可能性概率;此模块工作完成后同时输出three_done信号为1和x信号的更新值,状态机跳转至终止判决模块,下一个模块开始工作;终止判决模块:通过比较符号点的概率大小信息判决输出最终检测的x向量;通过比较x更新前后的差值来确定系统迭代是否结束,若未结束则状态机重新进入观测节点更新模块开始工作;若满足检测输出条件,则输出全部检测结果及错误比特个数,结束当前一帧信号的检测;并跳转到初始化状态,等待下一帧信号进入检测;步骤2.2:观测节点、变量节点、概率质量函数模块都需要用到事先存在ROM中的信道矩阵值信息,考虑资源占用问题,此三个模块依次在用到ROM值时发送对应使能有效信号;步骤2.3:当状态机跳转到下一个状态时候会输出一个fsm_begin信号,每个模块检测fsm_...

【专利技术属性】
技术研发人员:方斌贾皓翔赵旦峰
申请(专利权)人:哈尔滨工程大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1