基于FPGA的DDS设计,并通过DDS实现ASK,FSK,PSK三种调制

本文涉及的产品
函数计算FC,每月15万CU 3个月
简介: 基于FPGA的DDS设计,并通过DDS实现ASK,FSK,PSK三种调制

1.算法仿真效果
matlab2013b+QUARTUS 7.2仿真结果如下:

1063d767916616838324c6af5248001b_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.png
fd829e324bef861300a7dd34d32f351a_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.png
6fab78c182c7a15e7f2da5ada0b57a84_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.png
5bf7e28d78de99a18348dfe2c8337f61_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.png

然后使用DDS产生的sin曲线进行ASK,FSK,PSK调制,结果如下:

f321dbc0346151a4193e09c21f289a68_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.png
a3c590d0cc1c9dcb3e2257a23928c491_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.png
image.png

2.算法涉及理论知识概要

    随着现代电子技术的不断发展,很多应用领域对信号的频率的准确度和稳定性要求越来越高,不仅需要单一的固定频率,还需要多点频率,如短波通信接收机要求在2~30MHz的范围内提供以100Hz为间隔的280000个通信频道。一般的振荡器已不能满足要求,于是出现了高稳定和高准确的晶体振荡器。但晶体振荡器产生的只是单一频率的信号或只能在很小范围内微调。然而,在通信、雷达、仪表、宇航等领域往往需要在一定频率范围内提供一系列稳定和准确的频率,为了解决既要频率稳定准确,又要频率能在很大范围内变化的问题,于是产生了频率合成技术。

   直接数字频率合成技术 (Direct Digital Synthesis)完全不同于我们己经熟悉的直接频率合成技术和锁相环频率合成技术。直接数字频率合成技术(简称DDS)的理论早在七十年代就被提出。它的基本原理就是利用采样定理,通过查表法产生波形,由于硬件技术的限制,DDS技术当时没能得到广泛应用。随着大规模集成电路技术的飞速发展,DDS技术的优越性己逐步显现出来。不少学者认为,DDS是产生信号和频率的一种理想方法,发展前景十分广阔。与其他频率合成方法相比较,直接数字频率合成技术的主要优点是易于程控,相位连续,输出频率稳定度高,分辨率高。其频率分辨率可以达到10-3。而且频率转换速度快,可小于100ns,特别适宜用在跳频无线通信系统。其相位噪声主要决定于参考时钟振荡器。

   DDS(Direct Digital frequency Synthesis)即直接数字频率合成器,是一种新型的频率合成技术,具有较高的频率分辨率,快速的频率切换,稳定性好,可灵活产生多种信号的优点。因此,在现代电子系统及设备的频率源设计中,尤其在通信领域,直接数字频率合成器的应用越来越广泛。在数字化的调制解调模块中。DDS取代了VCO(模拟的压控振荡器),被大量应用。这种合成技术是一种利用数字技术来控制信号的相位增量的技术,它采用插值取样的方式,将要合成的正弦波波形用若干个采样点的取值来代替,然后依次等时间间隔输出这些取值,每个采样点的值由预先存储的数字值经D/A转换后得到。

   DDS工作原理框图如图1所示。其基本结构包括:相位累加器PA、波形查询表ROM、数模转换器DAC及低通滤波器。

0069028ef74404628b8890c2adfcba53_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.png

    DDS的工作过程为:在参考时钟fc的作用下,相位累加器对频率控制字FCW(Frequency Control Word)进行线性累加,将其高W位作为地址码通过波形查值表ROM变换,产生D位对应信号波形的数字序列,再由数模转换器DAC将其转化为阶梯模拟电压波形后由具有内插作用的低通滤波器LPF将其平滑为连续的正弦波形作为输出。

7a159b0f12b9ae2ed75adb373f776182_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.jpg

    一个N位的相位累加器对应相位圆2N上个相位点,其最低相位分辨率为θmin=Δθ=2π/2N。在图2中N为4,则有16个相位值和16个幅度码相对应。该幅度存储于波形存储器中,在频率控制字FCW的作用下,相位累加器给出不同的相位码,对波形存储器寻址,完成相位--幅度变换,经DAC变成阶梯正弦波信号,再通过低通滤波器平滑,便得到模拟正弦波输出。

   自第一部正弦波发生器问世以来,函数发生器的设计已经发生了多次演进,在当前数字领域中,大多数新型函数发生器都在采用直接数字频率合成技术。DDS在大部分操作中使用数字电路,从而提供了数字操作拥有的许多优势。

第一,输出信号的频率精度可以达到作为发生器参考信号使用的晶体控制振荡器的水平。如果想实现更高的精度,也可以采用函数发生器本身的温度补偿晶体振荡器产生。

第二,DDS信号发生器的数字电路可以实现与数字电路相同的频率精度。

第三,如果拥有RAM波形存储器,那么DDS函数发生器可以重现几乎任何波形。因此,函数发生器现在的功能要远远超过传统函数发生器。对称性可变的波形现在已经是标配功能,另外还可以内置各种不常见的波形,如指数上升和下降型波形或正弦脉冲型波形等。但由于DDS的全数字结构,使得直接数字频率合成器不可避免的拥有以下两个缺点。

第一,其杂散分量丰富。这些杂散分量主要由相位舍位、幅度量化和DAC的非理想特性所引起。

第二,输出频带受限。由于DDS内部DAC和ROM的工作速度限制,使得DDS输出的最高频率受到极大的限制。

3.MATLAB/Verilog核心程序

i=10;
j=5000;
t=linspace(0,5,j);
fc=10;
fm=i/5;
B=2*fc;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%产生基带信号
a=round(rand(1,i));%随机序列
 
st=t;
for n=1:10
    if a(n)<1;
        for m=j/i*(n-1)+1:j/i*n
            st(m)=0;
        end
    else
        for m=j/i*(n-1)+1:j/i*n
            st(m)=1;
        end
    end
end
figure(1);
subplot(131);
plot(t,st);
axis([0,5,-1,2]);
title('基带信号');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%载波
s1=cos(2*pi*fc*t);
subplot(132);
plot(s1);
title('载波信号');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%调制
e_2ask=st.*s1;
subplot(133);
plot(t,e_2ask);
title('已调信号');
相关文章
|
5月前
|
算法 5G 数据处理
m基于FPGA的PPM光学脉位调制解调系统verilog实现,包含testbench
m基于FPGA的PPM光学脉位调制解调系统verilog实现,包含testbench
91 0
|
11月前
|
算法 网络架构 异构计算
m基于FPGA的8FSK调制解调系统verilog实现,包含testbench测试文件
m基于FPGA的8FSK调制解调系统verilog实现,包含testbench测试文件
55 1
|
11月前
|
算法 测试技术 开发工具
m基于FPGA的2ASK调制解调系统verilog实现,包含testbench测试文件
m基于FPGA的2ASK调制解调系统verilog实现,包含testbench测试文件
118 0
|
16天前
|
算法 数据安全/隐私保护 异构计算
基于FPGA的2ASK调制解调系统,包含testbench,高斯信道模块,误码率统计模块,可以设置不同SNR
本项目基于Vivado 2019.2实现了2ASK调制解调系统,新增高斯信道及误码率统计模块,验证了不同SNR条件下的ASK误码表现。2ASK通过改变载波振幅传输二进制信号,其调制解调过程包括系统设计、Verilog编码、仿真测试及FPGA实现,需考虑实时性与并行性,并利用FPGA资源优化非线性操作。
27 0
|
3月前
|
算法 数据安全/隐私保护 异构计算
基于FPGA的MSK调制解调系统verilog开发,包含testbench,同步模块,高斯信道模拟模块,误码率统计模块
升级版FPGA MSK调制解调系统集成AWGN信道模型,支持在Vivado 2019.2中设置不同SNR仿真误码率。示例SNR值从0到15,结果展示解调质量随SNR提升。MATLAB仿真验证了MSK性能,图片显示了仿真结果。 ### 理论概要 研究聚焦于软件无线电中的MSK调制解调,利用Verilog实现。MSK是一种相位连续、恒包络的二进制调制技术,优点包括频谱效率高。系统采用无核设计,关键模块包括调制器、解调器和误码检测。复位、输入数据、中频信号等关键信号通过Verilog描述,并通过Chipscope在线观察。
75 6
基于FPGA的MSK调制解调系统verilog开发,包含testbench,同步模块,高斯信道模拟模块,误码率统计模块
|
2月前
|
算法 数据安全/隐私保护 异构计算
基于FPGA的2FSK调制解调系统,包含testbench,高斯信道模块,误码率统计模块,可以设置不同SNR
本系统基于FSK调制解调,通过Vivado 2019.2仿真验证了不同信噪比(SNR)下的误码率表现。加入高斯信道与误码统计模块后,仿真结果显示:SNR=16dB时误码极少;随SNR下降至0dB,误码逐渐增多。FSK利用频率变化传输信息,因其易于实现且抗干扰性强,在中低速通信中有广泛应用。2FSK信号由连续谱与离散谱构成,相位连续与否影响功率谱密度衰减特性。Verilog代码实现了FSK调制、加性高斯白噪声信道及解调功能,并计算误码数量。
46 5
|
5月前
|
存储 算法 数据处理
m基于FPGA的8PSK调制解调系统verilog实现,包含testbench测试文件
m基于FPGA的8PSK调制解调系统verilog实现,包含testbench测试文件
94 0
|
11月前
|
存储 算法 测试技术
m基于FPGA的8ASK调制解调系统verilog实现,包含testbench测试文件
m基于FPGA的8ASK调制解调系统verilog实现,包含testbench测试文件
101 0
|
11月前
|
算法 异构计算
m基于FPGA的4ASK调制解调系统verilog实现,包含testbench测试文件
m基于FPGA的4ASK调制解调系统verilog实现,包含testbench测试文件
105 0
|
5月前
|
机器学习/深度学习 算法 异构计算
m基于FPGA的多通道FIR滤波器verilog实现,包含testbench测试文件
本文介绍了使用VIVADO 2019.2仿真的多通道FIR滤波器设计。展示了系统RTL结构图,并简述了FIR滤波器的基本理论,包括单通道和多通道的概念、常见结构及设计方法,如窗函数法、频率采样法、优化算法和机器学习方法。此外,还提供了Verilog核心程序代码,用于实现4通道滤波器模块,包含时钟、复位信号及输入输出接口的定义。
138 7

热门文章

最新文章

下一篇
无影云桌面