【QPSK中频】基于FPGA的QPSK中频信号产生模块verilog设计

1.软件版本

matlab2013b+quartusii

2.本算法理论知识

QPSK信号可以表示为:

QPSK信号的组成方框图如图1所示。

 下面,我们将基于这个结构设计一个QPSK调制信号发送模块。

3.部分源码

`timescale 1ns / 1ps
module tops(
            i_clk,
            i_rst,
				o_signal,
				o_I,
				o_Q,
				o_I_filter,
				o_Q_filter,
				o_I_cos,
				o_Q_sin,
				o_R
            );

input              i_clk;
input              i_rst;
output             o_signal;
output signed[1:0] o_I;
output signed[1:0] o_Q;
output signed[15:0]o_I_filter;
output signed[15:0]o_Q_filter;
output signed[15:0]o_I_cos;
output signed[15:0]o_Q_sin;
output signed[15:0]o_R;

wire clk4m;
wire clk8m;
DCM DCM_u(
          .i_clk     (i_clk),
			 .i_rst     (i_rst),
			 .o_clk_8m1 (clk4m),
			 .o_clk_8m2 (clk8m)
          );
			  
signal signal_u(
              .i_clk (clk4m),
              .i_rst (i_rst),
				  .o_dout(o_signal)
              );

s2p s2p_u(
           .i_clk    (clk4m),
			  .i_clk2   (i_clk),
			  .i_rst    (i_rst),
			  .i_signal (o_signal),
			  .o_I      (o_I),
			  .o_Q      (o_Q)
          );

filter filter_u1(
                .i_clk (i_clk),
				    .i_rst (i_rst),
				    .i_din (o_I),
				    .o_dout(o_I_filter)
               );			 
			 
filter filter_u2(
                .i_clk (i_clk),
				    .i_rst (i_rst),
				    .i_din (o_Q),
				    .o_dout(o_Q_filter)
               );				 

					
					
wire signed[15:0]fsin;
wire signed[15:0]fcos;					 
					 
NCO_ip NCO_ip_u(
	         .phi_inc_i (16'd16384),
	         .clk       (i_clk),
	         .reset_n   (~i_rst),
	         .clken     (1'b1),
	         .fsin_o    (fsin),
	         .fcos_o    (fcos),
	         .out_valid ()
	         );

 
reg signed[31:0]r_I_cos;
reg signed[31:0]r_Q_sin; 				 
		
always @(posedge i_clk or posedge i_rst)
begin
     if(i_rst)
	  begin
	  r_I_cos <= 32'd0;
	  r_Q_sin <= 32'd0;
	  end
else begin
	  r_I_cos <= fcos*o_I_filter;
	  r_Q_sin <= fsin*o_Q_filter;
     end
end
assign o_I_cos = r_I_cos[29:14];
assign o_Q_sin = r_Q_sin[29:14];
		
assign o_R = o_I_cos + o_Q_sin;						
					
endmodule 

4.仿真效果

通过设计,整个系统的RTL结构图如下所示:

仿真结果如下所示:

A01-110

  • 4
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fpga和matlab

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值