您现在的位置:首页 >> 通信 >> 内容

【硬件测试】基于FPGA的16PSK+帧同步系统开发与硬件片内测试,包含高斯信道,误码统计,可设置S

时间:2025/3/14 5:54:17 点击:

  核心提示:0sj2_067m,包含操作视频,参考文献...

1.完整项目描述和程序获取

>面包多安全交易平台:https://mbd.pub/o/bread/aJaUmJ5q

>如果链接失效,可以直接打开本站店铺搜索相关店铺:

点击店铺

>如果链接失效,程序调试报错或者项目合作可以加微信或者QQ联系。

2.部分仿真图预览


3.算法概述

   十六进制相位移键控(16PSK, 16-Phase Shift Keying)是一种数字调制技术,它通过改变载波相位来传输信息。16PSK能够在一个符号时间内传输4比特的信息,因此在高速数据传输中得到了广泛应用。

   16PSK是一种相位调制技术,其中载波信号的相位根据要传输的信息发生改变。在16PSK中,一个符号可以表示4比特的信息,即每个符号有16种不同的相位状态。在16PSK中,每个符号可以表示16种不同的相位状态,这16个状态均匀分布在单位圆上,形成一个16点的星座图。

4.部分源码

`timescale 1ns / 1ps

//

// Company: 

// Engineer: 

// 

// Create Date: 2025/03/12 19:09:01

// Design Name: 

// Module Name: tops_hdw

// Project Name: 

// Target Devices: 

// Tool Versions: 

// Description: 

// 

// Dependencies: 

// 

// Revision:

// Revision 0.01 - File Created

// Additional Comments:

// 

//

 

 

module tops_hdw(

 

input i_clk,

input i_rst,

output reg [3:0] led

);

 

 

 

wire o_msg;

wire[1:0]o_en;

signal signal_u(

.i_clk (i_clk),

.i_rst (~i_rst),

.o_bits(o_msg),

.o_en  (o_en)

);

 

//设置SNR

wire signed[7:0]o_SNR;

vio_0 your_instance_name (

  .clk(i_clk),                // input wire clk

  .probe_out0(o_SNR)  // output wire [7 : 0] probe_out0

);

 

 

 

reg signed[7:0]i_SNR;

wire[3:0]o_ISET;

wire signed[15:0]o_I16psk;

wire signed[15:0]o_Q16psk;

wire signed[15:0]o_Ifir_T;

wire signed[15:0]o_Qfir_T;

wire signed[31:0]o_mod_T;

wire signed[15:0]o_Nmod_T;

wire signed[31:0]o_modc_R;

wire signed[31:0]o_mods_R;

wire signed[31:0]o_Ifir_R;

wire signed[31:0]o_Qfir_R;

wire  [3:0]o_wbits;

wire       o_bits;

wire [1:0]o_bits_head;

wire [7:0]o_peak;

wire  o_en_data;

wire  o_en_pn;

wire  o_frame_start;

wire signed[31:0]o_error_num;

wire signed[31:0]o_total_num;  

TOPS_16PSK TOPS_16PSK_u(

.i_clk        (i_clk),

.i_rst        (~i_rst),

.i_SNR        (o_SNR),

.i_en         (o_en),

.i_dat        (o_msg),

.o_ISET       (o_ISET),

.o_I16psk     (o_I16psk),

.o_Q16psk     (o_Q16psk),

.o_Ifir_T     (o_Ifir_T),

.o_Qfir_T     (o_Qfir_T),

.o_mod_T      (o_mod_T),

.o_Nmod_T     (o_Nmod_T),

 

.o_modc_R     (o_modc_R),

.o_mods_R     (o_mods_R),

.o_Ifir_R     (o_Ifir_R),

.o_Qfir_R     (o_Qfir_R),

.o_wbits      (o_wbits),

.o_bits       (o_bits),

.o_bits_head  (o_bits_head),

.o_peak       (o_peak),

.o_en_data    (o_en_data),

.o_en_pn      (o_en_pn),

.o_frame_start(o_frame_start),

.o_error_num  (o_error_num),

.o_total_num  (o_total_num)

);

 

 

 

//ila篇内测试分析模块140

//ila篇内测试分析模块140

ila_0 ila_u (

.clk(i_clk), // input wire clk

.probe0({ 

        o_msg,o_SNR,o_I16psk[15:6],o_Q16psk[15:6],//30

        o_Nmod_T,o_Ifir_R[27:14],o_Qfir_R[27:14],o_wbits,//48

        o_error_num[15:0],o_total_num[23:0],//40

        //28

            o_en_pn,

            o_en_data,

            o_peak,

            o_bits_head,

            o_bits

         })

);

 

 

endmodule

0sj2_067m

---

作者:我爱C编程 来源:我爱C编程
本站最新成功开发工程项目案例
相关文章
相关评论
发表我的评论
  • 大名:
  • 内容:
本类固顶
  • 没有
  • FPGA/MATLAB商业/科研类项目合作(www.store718.com) © 2025 版权所有 All Rights Reserved.
  • Email:1480526168@qq.com 站长QQ: 1480526168