基于FPGA的MSK调制波形Verilog代码Quartus仿真
名称:基于FPGA的MSK调制波形Verilog代码Quartus仿真
软件:Quartus
语言:Verilog
代码功能:
基于FPGA的MSK调制波形
1、输入调制原始数据,输出MSK调制波形
2、包括差分编码模块,MSK调制模块,DDS模块,有符号乘法器模块等
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
演示视频:
设计文档:
1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. Testbench

6. 仿真图


差分编码模块

MSK调制模块

DDS模块

有符号乘法器模块


部分代码展示:
//这是MskMod.v文件的程序清单
module MskMod (
rst,clk,din,data_clk,
it,qt,MSK_out);
input rst; //复位信号,高电平有效
input clk; //数据采样时钟
input din; //调制原始数据
input data_clk;
output signed [14:0] it;
output signed [14:0] qt;
output signed [28:0] MSK_out;
wire din_diff;
wire data_a;
wire data_b;
//差分编码模块
differ i_differ(
. clk(data_clk),
. rst(rst),//复位
. a(din),//输入码
. D_a(din_diff)//输出差分码
);
//串并转换
sipo i_sipo(
. clk(data_clk),
. rst(rst),
. din(din_diff),
. data_a(data_a),
. data_b(data_b)
);
wire [14:0]sin_data ;
dds u0 (
.phi_inc_i (25'd320000),
.clk (clk),
.reset_n (!rst),
.clken (1),
.freq_mod_i ('d0),
.fsin_o (sin_data),
.fcos_o (),
.out_valid ());
wire signed [14:0]P_cos;
wire signed [14:0]Q_sin;
assign P_cos= (data_a==1)?$signed(sin_data):$signed(sin_data)*(-1);
assign Q_sin= (data_b==1)?$signed(sin_data):$signed(sin_data)*(-1);
wire signed [14:0]fsin_o;
wire signed [14:0]fcos_o;
dds u1 (
.phi_inc_i (25'd3200000),
.clk (clk),
.reset_n (!rst),
.clken (1),
.freq_mod_i ('d0),
.fsin_o (fsin_o),
.fcos_o (fcos_o),
.out_valid ());
//assign MSK_wave=signed(fsin_o)*signed(qt)+signed(fcos_o)*signed(it);
wire signed[29:0] result_sig_Q;
wire signed[29:0] result_sig_I;
mul_signed mul_signed_inst1 (
.dataa ( fsin_o ),
.datab ( Q_sin ),
.result ( result_sig_Q )
);
mul_signed mul_signed_inst2 (
.dataa ( fcos_o ),
.datab ( P_cos ),
.result ( result_sig_I )
);
assign MSK_out=$signed(result_sig_I)+$signed(result_sig_Q);
endmodule代码文件(付费下载):
![]()
1、代码文件需要付费后才可见。
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 基于FPGA的MSK调制波形Verilog代码Quartus仿真
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 基于FPGA的MSK调制波形Verilog代码Quartus仿真