QPSK_Verilog

 输入32bits 并行数据,输出 8bits 数据

CLK2 是CLK的150倍分频;  将并转串  ,每CLK2周期传1 bit

 

 

产生-sin  (因为QPSK调制方式等效于两个BPSK相加 即 Acoswt - Bsinwt

产生 sin , 与上面的sin 同频反相

 同理是cos 和 -cos

 为了产生相差半个周期的时钟,受t 控制:

 把第二位赋值第三位

 

 

 选择器:

信息比特是1:cos  0:-cos  等效于调制。

 

最后是相加:

    adder a1(In,Qp,QPSKoutput);

 

波形:

 

 

 资源下载:

(31条消息) QPSK-using-VERILOG-HDL-master.rar资源-CSDN文库

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
QPSK调制是一种常见的数字调制方式,用于在数字通信中传输数字信号。在Verilog HDL中实现QPSK调制需要以下步骤: 1. 定义输入信号和输出信号的位宽。输入信号可以是一个二进制序列,输出信号是一个模拟信号。 ``` module qpsk_mod(input [7:0] in, output [15:0] out); ``` 2. 定义正弦和余弦信号的频率和幅值。这些信号用于将二进制数据转换为模拟信号。 ``` parameter FREQ = 100000; // 正弦和余弦信号的频率 parameter AMP = 32767; // 正弦和余弦信号的幅值 reg [15:0] sin_out; reg [15:0] cos_out; always @(posedge clk) begin sin_out <= (AMP * sin((2 * $pi * FREQ * t) + (3 * $pi / 4))) >> 15; cos_out <= (AMP * cos((2 * $pi * FREQ * t) + (3 * $pi / 4))) >> 15; end ``` 3. 将输入信号转换为I / Q信号。I / Q信号是QPSK调制的关键,它将二进制数据转换为基带信号。 ``` reg [7:0] i_data; reg [7:0] q_data; always @(posedge clk) begin i_data <= in[7:4]; q_data <= in[3:0]; end ``` 4. 将I / Q信号与正弦和余弦信号相乘,并将结果相加以获得QPSK调制的输出信号。 ``` reg [15:0] i_out; reg [15:0] q_out; always @(posedge clk) begin i_out <= i_data * cos_out; q_out <= q_data * sin_out; out <= i_out + q_out; end ``` 完整的Verilog HDL代码如下: ``` module qpsk_mod(input clk, input [7:0] in, output [15:0] out); parameter FREQ = 100000; parameter AMP = 32767; reg [15:0] sin_out; reg [15:0] cos_out; reg [7:0] i_data; reg [7:0] q_data; reg [15:0] i_out; reg [15:0] q_out; always @(posedge clk) begin sin_out <= (AMP * sin((2 * $pi * FREQ * t) + (3 * $pi / 4))) >> 15; cos_out <= (AMP * cos((2 * $pi * FREQ * t) + (3 * $pi / 4))) >> 15; i_data <= in[7:4]; q_data <= in[3:0]; i_out <= i_data * cos_out; q_out <= q_data * sin_out; out <= i_out + q_out; end endmodule ```

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值