0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于QPSK数字调制解调的FPGA实现

电子工程师 来源:网络整理 作者:佚名 2018-02-20 07:50 次阅读

随着FPGA技术的发展,数字通信技术与FPGA的结合体现了现代数字通信系统发展的一个趋势。为了使高速通信系统更加紧凑、成本更低、减小功耗,特别是提高设备的可靠性,可采用Q P S K数字调制技术来实现,其具有频谱利用率高、频谱特性好、抗干扰性能强、传输速率快等特点。运用verilog编写在QPSK调制解调代码以及ISE自带的IP CORE在Xilinx公司的FPGA平台上测试,结果表明系统可完全实现调制解调功能,并具有集成度高和可软件升级等优点。

四相绝对移相键控(QPSK)技术以其抗干扰性能强、误码性能好、频谱利用率高等优点,广泛应用于数字通信系统。随着超大规模集成电路的出现,FPGA在数字通信系统中的应用日益广泛,目前已提出了多种基于FPGA实现QPSK的方法。本文基于FPGA实现直接数字频率合成(DDS),通过对DDS信号(载波信号)输出相位的控制实现调相,除DA转换外,其它过程均可以FPGA实现。QPSK调制信号是抑制载波的信号,无法用常规的锁相环或窄带滤波器直接提取参考载波,但它又不同于一些连续相位调制信号,其载波相位变化只能取有限的几个离散值,这就隐含了参考载波的相位信息。所以,可以通过非线性处理,消除信号中的调制信息,产生与原载波相位有一定关系的分量,然后再提纯该信号,恢复已被抑制的载波信号,进而完成信号的相干解调。本文所设计的QPSK调制解调器由于具有较好的频带利用率,具有体积小、功耗低、集成度高、软件可移植性强、扰干扰能力强的特点,符合未来通信技术设计的方向。

1.QPSK调制的基本原理

四相绝对移相键控QPSK是MPSK的一种特殊情况,它利用载波的四种不同相位来表征数字信息。由于每一种载波相位代表两个比特信息,故每个四进制码元又被称为双比特码元。我们把组成双比特码元的前一信息比特用a表示,后一比特信息用b表示。双比特码元中两个信息比特ab通常是按格雷码(即反射码)排列的,当ab为00时,载波相位为0°,当ab为01时,载波相位为90°,当ab为11时,载波相位为180°,当ab为10时,载波相位为270°。

QPSK信号的产生分为调相法和相位选择法。由于调相法比较常用,且实际操作性更强,故在本文中,选择调相法。用调相法产生QPSK信号的组成方框图如图1所示。图中,串/并变换器将输入的二进制序列依次分为两个并行的双极性序列。设两个序列中的二进制数字分别为a和b,每一对ab称为一个双比特码元。双极性的a和b脉冲通过两个平衡调制器分别对同相载波及正交载波进行二相调制。将ab两路输出叠加,得到四相移相信号,其相位编码逻辑关系为:当双比特码元ab为11时,输出相位为315°的载波;ab为01时,输出相位为225°的载波;ab为00时,输出相位为135°的载波;ab为10时,输出相位为45°的载波,相应的对照关系如下表所示。

数据与相位的对照关系

传统的QPSK模拟调制器结构,一般采用正交调制方法。全数字调制器的实现仍采用正交调制方法,只是将模拟处理单元采用数字信号处理的算法实。QPSK采用四种不同的载波相位来表示数字信息,每个载波相位代表2比特信息,其实现有两种方法,相位选择法与正交调制法,相位选择法又分为A、B两种方式。本文采用相位选择法B方式来实现QPSK信号,如图1所示。

图1 QPSK调制框图

2.QPSK调制的MATLAB仿真

QPSK调制的MATLAB仿真相关的代码网上有很多,本文作者自己编写了一段代码,可以简单的表示调制的原理,在此仅将代码罗列如下,相的注释已经很清楚,不再赘述。代码要综合解调部分一起研读。

clear all;

clc

M=4;

Ts=1;

fc=5;

N_sample=8;%每个正弦波采样点数

N_num=300;%I Q路分别100个bit

dt=1/fc/N_sample;

t=0:dt:N_num*Ts-dt;

T=dt*length(t);

Noise=(1/500)*randn(1,length(t))*32767;%加入噪声

py1f=zeros(1,length(t));

py2f=zeros(1,length(t));

for PL=1:1:700%加入噪声强度加大

d1=sign(randn(1,N_num));

d2=sign(randn(1,N_num));

d=[d1;d2];

D=reshape(d,1,[]);%D是输入的信息序列

gt=ones(1,fc*N_sample);

s1=sigexpand(d1,fc*N_sample);%此为符号位扩展函数,相关函数在原代码中可见

s2=sigexpand(d2,fc*N_sample);

b1=conv(s1,gt);

b2=conv(s2,gt);

s1=b1(1:length(s1));

s2=b2(1:length(s2));

st_qpsk_1=s1.*round(cos(2*pi*fc*t)*32767);

st_qpsk_2=s2.*round(sin(2*pi*fc*t)*32767);

st_qpsk=st_qpsk_1+st_qpsk_2;%定点量化后的数据

%-----------------------------------------------------------

% 发射信号的功率谱

%plot((abs(fft(st_qpsk,2048))).^2);

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1592

    文章

    21210

    浏览量

    592190
  • QPSK
    +关注

    关注

    2

    文章

    61

    浏览量

    26130
收藏 人收藏

    评论

    相关推荐

    通带数字调制解调-通信原理仿真实验

    通带数字调制解调-通信原理仿真实验
    发表于 10-11 09:04

    基于Labview的数字调制解调

    基于Labview的数字调制解调设计 内有文章和程序 发现网上很少有这发面的资料 故而发此文章
    发表于 05-17 19:37

    FPGA的2PSK数字调制解调代码

    谁有基于FPGA的2PSK数字调制解调Verilog代码,有的发份我学习下,谢啦!QQ:975406162
    发表于 07-23 19:38

    谁有基于FPGA数字调制器的程序啊

    谁有基于FPGA数字调制器的程序啊,急用啊ASK,PSK,.FSK,QPSK
    发表于 04-14 22:31

    数字调制系列:IQ调制解调简述

    IQ解调频谱变换示意图3. IQ调制解调实现方法有哪些?前面介绍调制解调过程时,默认是按
    发表于 07-01 11:15

    基于VHDL方式实现QPSK数字调制解调电路的设计

    本文基于VHDL方式实现QPSK数字调制解调电路的设计,通过QuartusII软件建模对程序进行仿真,并通过引脚锁定,下载到FPGA芯片E
    发表于 12-18 06:03

    如何采用FPGA实现QPSK调制器?

    QPSK调制的基本原理QPSK调制电路的FPGA实现
    发表于 04-08 06:01

    基于FPGAQPSK 调制解调电路设计与实现Design

    数字调制解调技术在数字通信中占有非常重要的地位,数字通信技术与FPGA的结合是现代通信系统发展的一个必然趋势。文中介绍了
    发表于 06-09 09:06 124次下载

    基于F PGA的QPS K调制解调电路设计与实现

    数字调制解调技术在数字通信中占有非常重要的地位,数字通信技术与FPGA的结合是现代通信系统发展的一个必然趋势。文中介绍了
    发表于 07-22 15:42 0次下载

    基于FPGAQPSK解调器的设计与实现

    根据软件无线电的思想,用可编程器件FPGA 实现QPSK 解调,采用带通采样技术对中频为70MHz 的调制信号采样,通过对采样后的频谱进行
    发表于 08-27 11:00 68次下载

    QPSK高性能数字调制器的FPGA实现

    本文提出了一种QPSK 高性能数字调制器的FPGA 实现方案,由Altera 的IP 核NCO2.3.0 提供QPSK高稳定度的
    发表于 09-26 08:56 43次下载

    FPGA在软件无线电中的工程应用之数字调制解调

    FPGA在软件无线电中的工程应用之数字调制解调
    发表于 02-09 11:14 60次下载
    <b class='flag-5'>FPGA</b>在软件无线电中的工程应用之<b class='flag-5'>数字调制</b><b class='flag-5'>解调</b>篇

    基于VHDL的QPSK调制解调系统设计与仿真

    文中详细介绍了QPSK技术的工作原理和QPSK调制解调的系统设计方案,并通过VHDL语言编写调制解调
    发表于 06-08 17:47 91次下载
    基于VHDL的<b class='flag-5'>QPSK</b><b class='flag-5'>调制</b><b class='flag-5'>解调</b>系统设计与仿真

    QPSK调制解调

    QPSK调制解调的整个过程的讲解和源代码,之后会长传在FPGA上的实现和调试
    发表于 12-12 21:36 71次下载

    LabVIEW实现数字调制解调及编程软件操作

    本文主要介绍了LabVIEW实现数字调制解调及编程软件基本操作。
    发表于 06-05 11:00 52次下载