1.算法仿真效果
本系统进行了Vivado2019.2平台的开发,其中Vivado2019.2仿真结果如下:
将FPGA的仿真结果导入到matlab中,显示星座图,结果如下所示:
2.算法涉及理论知识概要
在现代通信系统中,调制技术是实现高速数据传输和频谱效率优化的重要手段。其中,64QAM调制技术是一种常见的高阶调制技术,可以实现每个符号传输6个比特的信息,从而提高数据传输速率。然而,在实际应用中,调制信号往往会受到各种干扰和失真的影响,导致传输错误率增加。因此,相位估计和补偿技术是调制信号解调和恢复的关键环节之一。介绍一种用于带相位偏差64QAM调制信号相位估计和补偿的VV算法,并详细阐述其实现步骤和数学原理。
3.Verilog核心程序
module TEST; reg clk; reg rst; reg start; wire [5:0] parallel_data; wire [15:0]sin; wire [15:0]cos; wire signed[19:0] I_com; wire signed[19:0] Q_com; wire signed[19:0] I_com2; wire signed[19:0] Q_com2; wire signed[15:0]I_comcos; wire signed[15:0]Q_comsin; // DUT tops_64QAM_mod top( .clk(clk), .rst(rst), .start(start), .parallel_data(parallel_data), .sin(sin), .cos(cos), .I_com(I_com), .Q_com(Q_com), .I_com2(I_com2), .Q_com2(Q_com2), .I_comcos(I_comcos), .Q_comsin(Q_comsin) ); wire signed[23:0]I_comcos2; wire signed[23:0]Q_comsin2; wire signed[7:0]o_Ifir; wire signed[7:0]o_Qfir; wire signed[15:0]o_Ifir_phase; wire signed[15:0]o_Qfir_phase; wire signed[31:0]o_phase; tops_64QAM_phase_est top2( .clk(clk), .rst(rst), .start(start), .I_comcos(I_comcos), .Q_comsin(Q_comsin), .I_comcos2(I_comcos2), .Q_comsin2(Q_comsin2), .o_Ifir(o_Ifir), .o_Qfir(o_Qfir), .o_I_phase(o_Ifir_phase), .o_Q_phase(o_Qfir_phase), .o_phase(o_phase) ); initial begin clk = 0; rst = 0; start = 1; #10; rst = 1; end always #5 clk <= ~clk; reg writeen; initial begin writeen = 1'b0; #150000 writeen = 1'b1; end
标签:64QAM,wire,FPGA,相位,clk,signed,rst,phase,调制 From: https://www.cnblogs.com/51matlab/p/17558730.html