传奇私服赌博数据:基于ROM的任意波形发生器(DDS)

FPGA学习交流 ? 2018-06-18 19:24 ? 次阅读

揭秘微信赌博群 www.b03i.com.cn 设计背景: 

    DDS(Direct Digital Synthesizer)直接数字式频率合成器,是一种新型频率合成技术,具有低成本、低功耗、高分辨率、相对带宽大和频率转换时间短等优点。较容易实现频率、相位以及幅度的数控调制,广泛应用在电信与电子仪器和通信领域。波形发生器是一种数据信号发生器,在调试硬件时,常常需要加入一些信号,以观察电路工作是否正常。加入的信号有:正弦波、三角波、方波和任意波形等。

设计原理: 

    相位(phase)是对于一个波,特定的时刻在它循环周期中的位置:一种它是否在波峰、波谷或它们之间的某点的标度。相位描述信号波形变化的度量,通常以度 (角度)作为单位,也称作相角。 当信号波形以周期的方式变化,波形循环一周即为360°。那么相位可调也可以简单的理解为:改变初始相位。

    频率,是单位时间内完成周期性变化的次数,是描述周期运动频繁程度的量,常用符号fν表示,单位为秒分之一,符号为s-1。频率可调也就是改变单位时间内完成周期性变化的次数。

    本设计采用DDS技术设计相位频率可调的波形发生器,已经知道了相位和频率可调分别代表什么,那么接下来就要知道怎样依靠DDS技术实现波形发生器,并且相位和频率可以调控。DDS的基本结构如下图所示:

    image.png

    根据上图可以看出:DDS主要由相位累加器、波形数据表(ROM)、D/A转换器构成,本设计暂时不涉及D/A转换部分。相位累加器位宽为N,波形数据表的大小为2^P,累加器的高P位则用于寻址波形数据表,即ROM,从ROM中输出的数据则是产生的波形。如果累加器在系统时钟(CLOCK)的作用下,以步进为M累加直至溢出,则M为频率控制字(即图中的FWORD),相位控制字(PWORD)则作为累加器的输入初始值。这里的累加器,也可以理解为ROM的地址发生器。

    上段所述我们可具体理解为:改变地址的初值(PWORD)就可以改变初始的相位,由于我们设计中,ROM的数据为256,所以PWORD 的值在0~255之间,PWORD= 256*(初始相位/360度)。

    我们设计的系统时钟(CLOCK)为50MHz,周期为20ns,而正弦波被分成了256个点,波形发生器的频率就是195.31KHz。若想要输出别的频率,则可通过改变输出的点的个数,即改变有效地址的数量。我们用位宽为N位的累加器,假设FWORD为1,要产生一个完整波形的周期则为20ns*2^N,则产生波形的频率=系统时钟/2^N,即Fout = Fclk/2^N,如果FWORD为B,每次步进的间隔提高了B倍,所以计满一个波形周期的时间就缩小了B倍,即频率就提高了B倍。则波形频率的公式为:Fout = B*(Fclk/2^N)。之后我们取累加器的高8位,去寻址波形数据,对应点的还是个数一样的。本设计中我们将N取为32,当B=1,Fout约为0.012Hz,0.012就相当于最小精度,所以我们就实现了频率为0.012倍数的调制,但因为0.012值很小了,所以可以说基本实现了所有频率的调制。

设计架构图: 

    根据上述的原理图分析,本设计的架构如下图:

      image.png

    

    架构图中的端口功能描述如下表:

    image.png

    

    dds_addr??槭鞘迪窒辔焕奂悠鞯哪??,这里用参数来调制FWORD和PWORD的值,累加之后,将地址高八位(addr_out)输出到rom???,从而产生波形数据。

 

设计代码: 

    在具体写代码之前,我们需要先制作载有波形数据的mif文件,这时需要一个小软件(Mif_Maker2010),软件的链接如下:

    链接://pan.baidu.com/s/1gfzcOzL 密码:ietw

    具体操作步骤如下

    打开Mif_Maker2010,在查看中点击全局参数,如下图:

    image.png

    将全局参数设置如下图:数据长度为256,数据位宽为8,数据格式为无符号10进制,采样频率为1000。

    image.png

    点击设定波形,选择想要生成的波形,这里我们以正弦波为例,如需要其他波形,都可进行修改:

    image.png

    

    之后点击保存,则可生成mif文件,这里我们命名为sin.mif。打开sin.mif后,如下图所示:

    image.png

    

    dds_addr??榇耄?/span>

    这里我们以初始相位为180度,频率为5KHz为例:

    

0   module dds_addr (clk, rst_n, addr_out);

1 

2       input clk, rst_n;   //系统时钟复位

3       output [7:0] addr_out;  //输出的地址,对应到ROM内的数据

4        

5       parameter N = 32;

6       parameter PWORD = 128;  //相位控制字 (x/360)*256

7       parameter FWORD = 429497; //频率控制字F_out=B*(F_clk/2**32),fword=B

8       //5KHZ

9       reg [N-1:0] addr;  //32位累加器

10      

11      always @ (posedge clk or negedge rst_n)

12      begin

13          if (!rst_n)

14              begin

15                  addr <= 0;  

16              end

17          else

18              begin

19      /*每隔fword的大小,输出一位地址,若频率控制字FWORD等于2,那么地址计数器输出的就依次是0,2,4.....*/       

20                  addr <= addr + FWORD;

21              end     

22      end 

23      /*将累加器器的地址的高八位赋值给输出的地址(ROM的地址*/

24      assign addr_out = addr[N-1:N-8] + PWORD;

25

26  endmodule 

    rom??槲饔玫腎P核,该rom IP核中存储了sin.mif的数据。

    dds顶层??榇耄?/span>

    

0   module dds (clk, rst_n, q);

1 

2       input clk, rst_n;   //系统时钟复位

3       output [7:0] q;     //输出波形数据

4       

5       wire [7:0] addr_out;  //8位地址,对应到ROM内的数据

6       

7       /*****相位累加器???/span>*****/

8       dds_addr dds_addr_inst(

9           .clk(clk), 

10          .rst_n(rst_n),

11          .addr_out(addr_out)

12      );

13      

14      /*****波形数据???/span>*****/

15      rom rom_inst (

16          .address ( addr_out ),

17          .clock ( clk ),

18          .q ( q )

19      );

20

21  endmodule 

    dds_tb顶层??榈牟馐阅?椋?/span>

0   `timescale 1ns/1ps

1 

2   module dds_tb;

3 

4       reg clk, rst_n;

5       wire [7:0] q;

6       

7       initial begin

8           clk = 1;

9           rst_n = 0;

10          #200.1

11          rst_n = 1;

12          

13          #50_000_000 $stop;

14      end 

15

16      dds dds_dut(

17          .clk(clk), 

18          .rst_n(rst_n),

19          .q(q)

20      );

21      

22      always #10 clk = ~clk;

23

24  endmodule 

仿真图:

image.png

    根据上图可知,我们的设计正确。并且可以实现相位和频率可调。

收藏 人收藏
分享:

评论

相关推荐

DDS 架构的各要素

前几篇博文 DDS or PLL? DDS 与 PLL 的细微差别 PLL 相比于 DDS 所拥有的典型优势…… 讨论了何时、...

发表于 08-01 07:29 ? 25次 阅读
DDS 架构的各要素

请教关于DDS扫频周期、扫频带宽、扫频步进、步进间隔时间与测距量程、测距分辨率之间关系的疑问

发表于 07-30 08:20 ? 87次 阅读
请教关于DDS扫频周期、扫频带宽、扫频步进、步进间隔时间与测距量程、测距分辨率之间关系的疑问

请问有能够输出正负方波的DDS芯片吗?

有没有能够输出正负方波的DDS芯片,要求其频率、幅值、占空比和边沿时间连续可调?...

发表于 07-27 09:13 ? 24次 阅读
请问有能够输出正负方波的DDS芯片吗?

以FPGA为基础的DDS控制电路设计方案详解

频率合成主要有三种方法:直接模拟合成法、锁相环合成法和直接数字合成法(Direct Digital....

发表于 07-14 09:46 ? 64次 阅读
以FPGA为基础的DDS控制电路设计方案详解

Vivado软件仿真DDS核的过程中应该注意的问题

本人需要利用Vivado软件中的DDS核生成一个正弦信号。由于后期还要生成线性调频信号,如果直接编写....

发表于 07-13 08:32 ? 123次 阅读
Vivado软件仿真DDS核的过程中应该注意的问题

关于以FPGA为核心,DDS为原理的数控信号源的方案设计详解

信号源输出信号可作为标准信号和用户自定义信号而成为电气电子各领域,如自动控制、通信电子、电子对抗、....

发表于 07-13 08:10 ? 33次 阅读
关于以FPGA为核心,DDS为原理的数控信号源的方案设计详解

VHDL语言DDS正弦信号发生器设计

[table] [tr][td] Quartus ||         全部资料51hei下载地址:        ...

发表于 07-03 11:39 ? 73次 阅读
VHDL语言DDS正弦信号发生器设计

基于FPGA的DDS频率合成器设计视频教程与源码下载

[table] [tr][td] FPGA dds的全套设计资料分享给51hei的朋友们,有需要可以下载学习。 下面是DDS频率合成器视频教程...

发表于 07-03 06:06 ? 122次 阅读
基于FPGA的DDS频率合成器设计视频教程与源码下载

关于基于DDS技术的杂散抑制和正弦信号源的实现

在设备检测和电子测量技术中,常常需要一个高精度、频率可变的信号源,信号源的稳定往往关系到这些系统工作....

的头像 电子设计 发表于 06-29 14:00 ? 286次 阅读
关于基于DDS技术的杂散抑制和正弦信号源的实现

新外设的技巧与诀窍之互补波形发生器和可配置逻辑单元及数控振荡器

本文主要介绍了新外设的技巧与诀窍之互补波形发生器(CWG)和可配置逻辑单元(CLC)及数控振荡器(N....

发表于 06-27 07:25 ? 24次 阅读
新外设的技巧与诀窍之互补波形发生器和可配置逻辑单元及数控振荡器

NI SourceAdapt技术使测量更快更稳定

观看Charles Schroeder和Rolando Ortega介绍配合NI SourceAda....

的头像 NI视频 发表于 06-25 05:47 ? 143次 观看
NI SourceAdapt技术使测量更快更稳定

AD9833低功率可编程波形发生器的详细资料免费下载

AD9833是一种低功率可编程波形发生器,能够产生正弦、三角形和方波输出。在各种类型的传感、致动和时....

发表于 06-19 08:00 ? 80次 阅读
AD9833低功率可编程波形发生器的详细资料免费下载

AD9853数字调制器的详细英文原版数据手册免费下载

AD9853将高速直接数字合成器(DDS)、高性能、高速数模转换器(DAC)、数字滤波器和其他DSP....

发表于 06-19 08:00 ? 76次 阅读
AD9853数字调制器的详细英文原版数据手册免费下载

AD9854数字合成器的详细英文数据手册免费下载

 AD9854数字合成器是一种高度集成的器件,它采用了先进的DDS技术,结合了两个内部高速、高性能的....

发表于 06-19 08:00 ? 62次 阅读
AD9854数字合成器的详细英文数据手册免费下载

AD9951直接数字合成器的详细数据手册免费下载

AD9951是一种直接数字合成器(DDS),具有14位DAC的运行,最高可达400 MSPS。AD9....

发表于 06-19 08:00 ? 67次 阅读
AD9951直接数字合成器的详细数据手册免费下载

ADI DDS系列产品的介绍和直接数字式频率合成器DDS的详细资料概述

直接数字式频率综合器 DDS(Direct Digital Synthesizer),实际上是一种分....

发表于 06-19 08:00 ? 468次 阅读
ADI DDS系列产品的介绍和直接数字式频率合成器DDS的详细资料概述

基于DDS器件设计的高精度、高稳定度、高分辨率射频正弦波信号发生器

控制器主要实现与计算机的通讯,控制正弦波发生器的频率、幅度和放大器的数字增益。采用RS232 与计算....

发表于 06-15 08:39 ? 69次 阅读
基于DDS器件设计的高精度、高稳定度、高分辨率射频正弦波信号发生器

能在很短时间内快速构建任意波形的FPGA

DDS频率合成器具有频率分辨率高,输出频点多,可达2N个频点(假设DDS相位累加器的字长是N);频率....

的头像 电子发烧友网工程师 发表于 06-11 09:49 ? 393次 阅读
能在很短时间内快速构建任意波形的FPGA

互补波形发生器的基本操作

我们将要讲到的是:互补波形发生器的基本操作。

的头像 EE techvideo 发表于 06-06 02:45 ? 195次 观看
互补波形发生器的基本操作

AD9910数字合成器详细英文数据手册详细资料(免费下载)

AD9910是一种直接数字合成器(DDS),具有集成的14位DAC和支持采样率高达1 GSP。AD9....

发表于 06-05 11:16 ? 69次 阅读
AD9910数字合成器详细英文数据手册详细资料(免费下载)

ADISim DDS在线设计工具

利用ADISim DDS来仿真DDS产品的频谱特性

的头像 EE techvideo 发表于 06-03 01:46 ? 286次 观看
ADISim DDS在线设计工具

STM32的AD9854 DDS??榈魇宰芙?/a>

本文首先介绍了DDS的基本原理和特点,其次介绍了DDS芯片AD9854的概念,最后详细介绍了STM3....

发表于 05-16 16:43 ? 711次 阅读
STM32的AD9854 DDS??榈魇宰芙? />    </a>
</div><div class=

通过基准电压和数字码可以影响模拟输出

借助相应的接线,??榭梢允涑龇糯?、衰减或反转的信号(相对于基准信号而言)。因此,其应用领域包括波形发....

的头像 面包板社区 发表于 05-16 15:00 ? 915次 阅读
通过基准电压和数字码可以影响模拟输出

14位分辨率高速数模转换器DAC5674的详细英文资料免费下载

DAC5674是一个14位分辨率,高速,数模转换器(DAC)与集成4X内插滤波器,机载时钟乘法器,片....

发表于 05-15 09:57 ? 75次 阅读
14位分辨率高速数模转换器DAC5674的详细英文资料免费下载

直接数字频率合成知识点汇总(原理_组成_优缺点_实现)

本文开始介绍了直接数字频率合成的概念与原理,其次介绍了直接数字频率合成优缺点与构成,最后介绍了直接数....

发表于 04-28 16:44 ? 888次 阅读
直接数字频率合成知识点汇总(原理_组成_优缺点_实现)

基于单片机的直接数字频率合成详解

频率合成技术迄今已经历了三代:直接频率合成技术、锁相环频率合成技术、直接数字式频率合成技术。直接数字....

发表于 04-28 09:24 ? 315次 阅读
基于单片机的直接数字频率合成详解

MSP430单片机和DDS技术的频率特性测试仪的设计详析

为克服传统的模拟式频率特性测试仪价格昂贵、操作不便和性能指标易受温漂因素影响等不足,通过采用数字技术....

发表于 04-26 14:11 ? 80次 阅读
MSP430单片机和DDS技术的频率特性测试仪的设计详析

工业物联网采用的云端解决方案_从云端转向雾计算

工业物联网(IIoT)将原本独立编程的各种装置,全结合在同一个智能网络系统。这些系统通常具备实时运算....

发表于 04-26 03:42 ? 514次 阅读
工业物联网采用的云端解决方案_从云端转向雾计算

基于混合信号可编程芯片PSoC的多用手持示波表研制

本设计研制的多用手持示波表基于美国赛普拉斯公司生产的混合信号可编程芯片PSoC平台。该芯片内不仅集成....

发表于 03-28 15:12 ? 159次 阅读
基于混合信号可编程芯片PSoC的多用手持示波表研制

DDS+PLL频率合成技术与应用

在现代电子测量、雷达、通信系统、电子对抗等技术领域中,具有频率范围宽,分辨率高,转换快速的多种模式的....

的头像 电子发烧友网工程师 发表于 03-17 11:18 ? 708次 阅读
DDS+PLL频率合成技术与应用

用FPGA通过DDS可以输出正弦波信号,但是不能输出连续电平

FPGA都是与DA芯片直接相连,只是把ROM里边的数据改了一下,别的程序什么的都一样,为什么存正弦波信号就有输出,存电平...

发表于 03-13 15:33 ? 548次 阅读
用FPGA通过DDS可以输出正弦波信号,但是不能输出连续电平

基于单片机的简易波形发生器(采用ICL8038函数发生器)

发表于 01-08 16:07 ? 321次 阅读
基于单片机的简易波形发生器(采用ICL8038函数发生器)

任意波形发生器_DDS任意波形发生器的设计

任意波形发生器既具有其他信号源的信号生成能力,又可以通过各种编辑手段产生任意的波形采样数据,方便地合....

发表于 01-08 11:44 ? 1333次 阅读
任意波形发生器_DDS任意波形发生器的设计

基于DSP+DDS结构的可编程调制器的硬件平台设计

本文提出了一种软件无线电通用信号发生器的设计方案,包括硬件构成和软件算法的实现。该信号发生器为软件无....

发表于 12-13 10:41 ? 237次 阅读
基于DSP+DDS结构的可编程调制器的硬件平台设计

回收安捷伦33250A波形发生器

回收安捷伦33250A波形发生器 诚信电子仪器仪表有限公司 全国上门回收/收购仪器仪表 回收热线;陈生 13556681937【微信...

发表于 12-12 18:13 ? 331次 阅读
回收安捷伦33250A波形发生器

基于AT89C51的波形发生器的设计

波形发生器也称函数发生器,作为实验信号源,是现今各种电子电路实验设计应用中必不可少的仪器设备之一。目....

发表于 12-11 08:56 ? 218次 阅读
基于AT89C51的波形发生器的设计

业界最具通用性的信号发生解决方案

中国 北京 - 2010 年 9 月 1 7 日 ---全球示波器市场的领导厂商---泰克公司日前宣....

发表于 12-11 01:57 ? 109次 阅读
业界最具通用性的信号发生解决方案

信号发生器的实现方法与基于单片机的波形发生器的设计

信号发生器的实现方法通常有以下几种: 方案一:用分立元件组成的函数发生器:通常是单函数发生器且频率不....

发表于 12-10 11:08 ? 177次 阅读
信号发生器的实现方法与基于单片机的波形发生器的设计

基于FPGA的DDS信号发生器设计方案解析

将虚拟仪器技术同FPGA技术结合,设计了一个频率可控的DDS任意波形信号发生器。在阐述直接数字频率合....

发表于 12-04 11:40 ? 281次 阅读
基于FPGA的DDS信号发生器设计方案解析

一种基于FPGA的QPSK信号源的设计

本文介绍了一种通过FPGA实现QPSK或更高阶PSK信号的方法,可灵活地通过上位机的PCI总线控制参....

发表于 11-24 17:09 ? 370次 阅读
一种基于FPGA的QPSK信号源的设计

基于FPGA用VerilogHDL设计实现DDS直接频率合成的方法

DDS的具体工作过程如图1所示。N位相位累加器由N位加法器和N位累加寄存器组成。每来一个时钟脉冲,N....

发表于 11-24 15:06 ? 664次 阅读
基于FPGA用VerilogHDL设计实现DDS直接频率合成的方法

基于单片机和FPGA的频率特性测试仪的设计

这里提出了基于单片机和FPGA的频率特性测试仪的设计方案,可使学生在实践中真正观察和测试信号的频率特....

发表于 11-24 14:59 ? 383次 阅读
基于单片机和FPGA的频率特性测试仪的设计

基于FPGA的三相正弦DDS电路的设计与实现

直接数字频率合成器(DDS)技术,是根据相位的概念出发直接合成所需的波形的一种 新的频率合成原理,是....

发表于 11-23 11:28 ? 296次 阅读
基于FPGA的三相正弦DDS电路的设计与实现

波形发生器原理图+电路图+程序

波形发生器原理图+电路图+程序

发表于 11-23 09:13 ? 221次 阅读
波形发生器原理图+电路图+程序

基于FPGA的线性调频雷达各体制信号源的设计与实现

介绍了直接数字频率合成(DDS)的基本原理,并基于Xilinx公司的FPGA设计出产生连续波、重频参....

发表于 11-18 12:50 ? 598次 阅读
基于FPGA的线性调频雷达各体制信号源的设计与实现

dds通过增加幅度控制等配合依托MCU的交互界面和功放实现所需要的波形

dds通过增加幅度控制、正交调制、载波相乘、触发控制等配合依托MCU的交互界面和功放,就变成了一个复....

发表于 11-17 19:57 ? 211次 阅读
dds通过增加幅度控制等配合依托MCU的交互界面和功放实现所需要的波形

计算特定相位截断杂散的频率和幅度的方法

现代直接数字频率合成器(DDS)通常利用累加器和数字频率调谐字(FTW)在累加器输出端产生周期性的N....

发表于 11-16 19:26 ? 422次 阅读
计算特定相位截断杂散的频率和幅度的方法

DDS工作原理及基于AD9854的信号发生器的设计

介绍了用数字方式实现频率合成技术的基本原理和 DDS 芯片 AD9854 的内部结构及工作模式。设计....

发表于 11-16 14:49 ? 252次 阅读
DDS工作原理及基于AD9854的信号发生器的设计

波形发生器AFG3021B说明,回收33522A

波形发生器AFG3021B说明,回收33522A AFG3021回收,AFG3021维修, AFG3021租赁,AFG3021销售,AFG30...

发表于 11-16 09:14 ? 285次 阅读
波形发生器AFG3021B说明,回收33522A

16个信号源设计汇总

信号发生器是一种能提供各种频率、波形和输出电平电信号的设备。在测量各种电信系统或电信设备的振幅特性、....

发表于 11-15 13:59 ? 220次 阅读
16个信号源设计汇总

基于DDS驱动PLL结构的Ka波段频率综合器设计方案

1 引言 毫米波系统在雷达与制导、电子对抗、毫米波通信、遥感遥测等领域中有广泛的应用。作为毫米波系统....

发表于 11-14 15:46 ? 155次 阅读
基于DDS驱动PLL结构的Ka波段频率综合器设计方案

dds系统的那些原理和知识

DDS架构基本原理随着数字技术在仪器仪表和通信系统中的广泛使用,可从参考频率源产生多个频率的数字控制....

的头像 电子工程专辑 发表于 11-14 10:00 ? 2512次 阅读
dds系统的那些原理和知识

dds系统在仪器仪表和通信系统中的原理和作用

随着数字技术在仪器仪表和通信系统中的广泛使用,可从参考频率源产生多个频率的数字控制方法诞生了,即直接....

的头像 EDN电子技术设计 发表于 11-13 14:34 ? 2002次 阅读
dds系统在仪器仪表和通信系统中的原理和作用

深挖物联网大数据背后的六大通信协议,DDS/MQTT/CoAP谁更强

那么物联网都有哪些通信协议? 你都了解吗? 他们适用的环境又是如何? 与互联网时代TCP/IP,HT....

发表于 11-12 11:11 ? 342次 阅读
深挖物联网大数据背后的六大通信协议,DDS/MQTT/CoAP谁更强

如何预测直接数字频率合成器(DDS)输出频谱中主相位截断杂散的频率和幅度

现代直接数字频率合成器(DDS)通常利用累加器和数字频率调谐字(FTW)在累加器输出端产生周期性的N....

发表于 11-10 15:49 ? 139次 阅读
如何预测直接数字频率合成器(DDS)输出频谱中主相位截断杂散的频率和幅度

深入了解扫描阵列雷达信号处理

主动电扫描阵列 (AESA) 雷达是当今先进武器系统的关键组成 , 特别是机载作战系统。而其体系结构....

发表于 11-09 10:36 ? 127次 阅读
深入了解扫描阵列雷达信号处理

基于DDS的短波射频频率源设计方案解析

介绍了直接数字频率合成(DDS)的结构和原理,并将DDS技术应用于短波射频通信频率源中。实现了一种基....

发表于 11-08 14:39 ? 194次 阅读
基于DDS的短波射频频率源设计方案解析

dds生物电治疗仪原理和作用

生物电疗法是电疗师应用“生物电疗仪”将输出的电能经过操作者身体作用到受试者身上。

发表于 11-06 09:03 ? 5522次 阅读
dds生物电治疗仪原理和作用

。

这是ad9850出来的波形,频率是40Khz,峰峰值为1v,但是用示波器测量时候,发现波形如图所示,不知道这种情况一般是什么原因导...

发表于 09-18 19:07 ? 503次 阅读
。

请问怎么用Verilog写一个DDS产生Chirp线性调频信号

有没有前辈用Verilog写一个DDS产生Chirp线性调频信号,方便的话能不能给个代码,我的邮箱是[email][email protected][/email...

发表于 09-11 17:35 ? 1050次 阅读
请问怎么用Verilog写一个DDS产生Chirp线性调频信号
398| 512| 719| 595| 672| 187| 963| 397| 946| 953|