基于FPGA的正交相移键控(QPSK)实现Verilog代码ISE仿真

名称:基于FPGA的正交相移键控(QPSK)实现Verilog代码ISE仿真

软件:ISE

语言:Verilog

代码功能:

正交相移键控(QPSK)实现

在这个项目中,您需要在FPGA上实现QPSK调制器。您需要了解QPSK调制技术,并确定关键组件(例如,比特流转换器和三角函数生成器)才能实现它


FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com


演示视频:

设计文档:

QPSK设计文档.doc

1. 工程文件

2. 程序文件

3. 程序编译

4. Testbench

5. ISE自带仿真

6. Modelsim仿真


部分代码展示:

`timescale 1ns / 1ps
//////////////////////////////////////////////////////////////////////////////////
// Company: 
// Engineer: 
// 
// Create Date:    17:06:40 12/07/2019 
// Design Name: 
// Module Name:    QPSK 
// Project Name: 
// Target Devices: 
// Tool versions: 
// Description: 
//
// Dependencies: 
//
// Revision: 
// Revision 0.01 - File Created
// Additional Comments: 
//
//////////////////////////////////////////////////////////////////////////////////
module QPSK(
    input clk_in,//时钟
    input rst_p,//高电平复位
 input [1:0] data_in,//输入2bit调制信号
    output [7:0] QPSK_out//QPSK调制输出
    );
//clk_in的频率需要是data_in码速率的32N倍,因为一个正弦波周期32个点。
reg [4:0] phase_num=5'd0;//相位偏移值
always @(posedge clk_in or posedge rst_p)
if(rst_p)
phase_num<=5'd0;
else
  begin
     case (data_in)//输入2bit调制信号对应4个相位,分别如下
       2'b00:phase_num<=5'd3;//phase 45
       2'b01:phase_num<=5'd11;//phase 135
       2'b10:phase_num<=5'd19;//phase 225
       2'b11:phase_num<=5'd27;//phase 315
       default:;
     endcase
   end
 
//正弦波地址累加控制输出三角函数波形
reg [4:0] location=5'd0;
always @(posedge clk_in or posedge rst_p)
begin
if(rst_p)
location<=5'd0;
else//循环累加

代码文件(付费下载):



1、代码文件需要付费后才可见。
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 基于FPGA的正交相移键控(QPSK)实现Verilog代码ISE仿真

注册为本站会员,充值100得150,详情咨询客服

目前为止共有 *** 位优秀的会员加入! 立刻加入会员