91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于DDS原理設計信號發(fā)生器的方案

454398 ? 來源:博客園 ? 作者:Apollo-Mao ? 2020-10-19 11:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

信號發(fā)生器又稱信號源或振蕩器,在生產(chǎn)實踐和科技領(lǐng)域中有著廣泛的應用。能夠產(chǎn)生多種波形,如三角波、鋸齒波、矩形波(含方波)、正弦波的電路被稱為函數(shù)信號發(fā)生器。函數(shù)信號發(fā)生器的實現(xiàn)方法通常是采用分立元件或單片專用集成芯片,但其頻率不高,穩(wěn)定性較差,且不易調(diào)試,開發(fā)和使用上都受到較大限制。隨著可編程邏輯器件(FPGA)的不斷發(fā)展,直接頻率合成(DDS)技術(shù)應用的愈加成熟,利用DDS原理在FPGA平臺上開發(fā)高性能的多種波形信號發(fā)生器與基于DDS芯片的信號發(fā)生器相比,成本更低,操作更加靈活,而且還能根據(jù)要求在線更新配置,系統(tǒng)開發(fā)趨于軟件化、自定義化。本文研究了基于 FPGA的DDS信號發(fā)生器設計,實現(xiàn)了滿足預定指標的多波形輸出。

DDS建立在采樣定理基礎(chǔ)上,首先對需要產(chǎn)生的波形進行采樣,將采樣值數(shù)字化后存入存儲器作為查找表,然后通過查表讀取數(shù)據(jù),再經(jīng)D/A轉(zhuǎn)換器轉(zhuǎn)換為模擬量,將保存的波形重新合成出來。DDS基本原理框圖如圖1所示。

除了濾波器(LPF)之外,DDS系統(tǒng)都是通過數(shù)字集成電路實現(xiàn)的,易于集成和小型化。系統(tǒng)的參考時鐘源通常是一個具有高穩(wěn)定性的晶體振蕩器,為各組成部分提供同步時鐘。頻率控制字(FSW)實際上是相位增量值(二進制編碼)作為相位累加器的累加值。相位累加器在每一個參考時鐘脈沖輸入時,累加一次頻率字,其輸出相應增加一個步長的相位增量。由于相位累加器的輸出連接在波形存儲器(ROM)的地址線上,因此其輸出的改變就相當于查表。這樣就可以通過查表把存儲在波形存儲器內(nèi)的波形抽樣值(二進制編碼)查找出來。ROM的輸出送到D/A轉(zhuǎn)換器,經(jīng)D/A轉(zhuǎn)換器轉(zhuǎn)換成模擬量輸出。

設計功能及端口

1.設計實現(xiàn)的功能

用一個8×128的ROM完成對所要顯示正弦波形數(shù)據(jù)的存儲,即生成正弦波的波形數(shù)據(jù)查找表,通過VerilogHDL編寫DDS直接數(shù)字頻率合成代碼,在Quartus II與modelsim工具軟件的環(huán)境中進行設計和仿真,要求能根據(jù)相位累加產(chǎn)生的地址并按照不同的頻率控制信號(freq)讀取ROM波形查找表中的數(shù)值做為輸出,并正確顯示波形。同時還可通過改變相移變量(pha)控制程序從不同的位置開始讀取ROM波形查找表中的數(shù)據(jù)。

2.輸入輸出端口

input wire clk; //時鐘

input wire rst;//復位信號(低電平有效)

input wire [6 : 0] freq;//頻率控制信號

input wire [6 : 0] pha;//相移變量信號

input wire key; //使能開關(guān)信號(高電平有效)

output wire [7 : 0] data; //ROM查找表數(shù)據(jù)

功能介紹

1.設計功能模塊介紹:

本次設計總體實現(xiàn)的是一個能產(chǎn)生正弦波形的DDS信號發(fā)生器,該

DDS信號發(fā)生器的程序代碼模塊主要有以下內(nèi)容:

(1)ROM地址產(chǎn)生:

當時鐘的上升沿到來時,如果復位信號有效,則把地址變量addr清零;否則當使能開關(guān)信號key有效時,則將頻率控制字寫到內(nèi)部寄存器里,再將頻率控制字和上一時刻的地址變量進行相加,將加的結(jié)果作為地址輸出。另外,還可通過頻率控制信號freq控制讀取頻率,通過相移變量信號pha控制初始讀取位置。

(2)ROM查找表:

當時鐘的上升沿到來時,如果復位信號有效,則把輸出置為零;否則根據(jù)ROM地址產(chǎn)生模塊產(chǎn)生的地址讀取ROM中存儲的數(shù)值。

另外需通過C語言生成ROM正弦波查找表數(shù)據(jù),C語言程序代碼如下: #include “stdio.h”

#include “conio.h”

#include “math.h”

main()

{

int i;

float j;

int y;

FILE *fp;

if((fp = fopen(“rom.mif”, “wa”)) == NULL)

exit(1);

for(i = 0; i 《 128; i++)

{

y = 128 * sin(j) + 128;

fprintf(fp, “%d:%d;\n”, i, y);

j += 2 * 3.1416 / 128;

}

fclose(fp);

printf(“Hello, world\n”);

getch();

}

2.系統(tǒng)結(jié)構(gòu)框圖:

設計源代碼

1.設計源代碼:

module DDS(clk,rst,freq,pha,key,data);

input wire clk; //時鐘 input wire rst; //復位信號(低電平有效) input wire [6 : 0] freq; //頻率控制信號 input wire [6 : 0] pha; //相移變量信號 input wire key; //使能開關(guān)信號(高電平有效) output wire [7 : 0] data; //ROM查找表數(shù)據(jù)

reg [6 : 0] addr; reg [6 : 0] phase; reg [6 : 0] frequency;

always @(posedge clk) begin if(key == 1) begin phase 《= pha; //將相移變量值賦給寄存器phase frequency 《= freq; //將頻率控制變量值賦給frequency end end always @(posedge clk or negedge rst) begin if(!rst) begin addr 《= 0; //復位 end else begin if(key == 1) addr 《= phase; //將寄存器phase存儲的相值賦給addr else addr 《= addr + frequency; //ROM地址產(chǎn)生 end end rom1 rom_1( .address(addr), .clock(clk), .q(data) ); //實例化調(diào)用rom1波形查找表endmodule

驗證方案和仿真激勵:

`timescale 1 ns/ 100 ps //設置仿真的時間單位和時間精度

module stimulus;

reg clk,rst;

reg[6:0]freq,pha;

reg key;

wire [7:0] data;

initial

begin

freq=7‘d2;

pha=7’d0;

key=1‘b0;

#20 key=1’b1;

#100 key=1‘b0;

end

initial

begin

clk=1’b0;

rst=1‘b1;

#40 rst=1’b0;

#40 rst=1‘b1;

end

always #10 clk=~clk; //時鐘翻轉(zhuǎn)

DDS

LXC(.clk(clk),.rst(rst),.freq(freq),.pha(pha),.key(key),.data(data));

endmodule

功能仿真

(1)在ModelSim 中對電路設計進行功能仿真

仿真波形如下:

(2)在Quartus II 中對電路設計進行功能和時序仿真 仿真波形如下:

時序仿真波形如下:

仿真分析:通過觀察在ModelSim和Quartus II中的仿真波形,分析其完成的功能與設計預期一致,說明本設計能較好的完成設計所需達到的目標。

綜合布線與電路圖

綜合與布局布線:

1、下圖為綜合完并且成功后小窗口上生成的報告,報告中顯示出了綜合的工程名、引腳及所用的芯片的類型和型號。

綜合完后生成的電路圖如下:

綜合布局布線報告

綜合完后在Quartus生成了一個名為“DDS.map.rpt”的文件,即為綜合布局布線報告。

下載代碼和引腳分布報告

下載代碼

后仿完后在仿真目錄下的\simulation\modelsim路徑下生成了一個“ DDS_v.sdo”其即為下載代碼文件。

引腳分布

綜合完后在工程目錄下生成了一個“top.pin”文件,其即為引腳分布。
編輯:hfy

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 濾波器
    +關(guān)注

    關(guān)注

    162

    文章

    8411

    瀏覽量

    185681
  • 存儲器
    +關(guān)注

    關(guān)注

    39

    文章

    7738

    瀏覽量

    171650
  • DDS
    DDS
    +關(guān)注

    關(guān)注

    22

    文章

    684

    瀏覽量

    156581
  • 信號發(fā)生器
    +關(guān)注

    關(guān)注

    28

    文章

    1700

    瀏覽量

    113395
  • 晶體振蕩器
    +關(guān)注

    關(guān)注

    9

    文章

    749

    瀏覽量

    33238
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    函數(shù)信號發(fā)生器和任意波形信號發(fā)生器區(qū)別詳解

    函數(shù)發(fā)生器提供了一個預置列表,里面列出了它可以生成的波形或碼型。 在函數(shù)發(fā)生器中,用戶可以更改頻率、幅度和偏移等波形參數(shù),還可添加簡單的失真。 任意波形發(fā)生器更為復雜,能夠仿真真實世界中的信號
    的頭像 發(fā)表于 02-09 16:24 ?143次閱讀
    函數(shù)<b class='flag-5'>信號</b><b class='flag-5'>發(fā)生器</b>和任意波形<b class='flag-5'>信號</b><b class='flag-5'>發(fā)生器</b>區(qū)別詳解

    智能化的函數(shù)任意波形信號發(fā)生器 信號發(fā)生器品牌 任意波形信號發(fā)生器

    信號發(fā)生器
    知道點啥
    發(fā)布于 :2026年01月30日 10:26:14

    可編程的多路脈沖信號發(fā)生器 高速脈沖信號發(fā)生器 1hz脈沖信號發(fā)生器

    信號發(fā)生器
    知道點啥
    發(fā)布于 :2026年01月30日 10:24:38

    雙通道函數(shù)信號發(fā)生器 標準時間間隔發(fā)生器

    信號發(fā)生器
    知道點啥
    發(fā)布于 :2026年01月30日 10:18:51

    三角波方波正弦波函數(shù)發(fā)生器 標準信號發(fā)生器 dds函數(shù)信號發(fā)生器

    信號發(fā)生器
    知道點啥
    發(fā)布于 :2026年01月28日 19:27:31

    dds功率放大器 數(shù)字函數(shù)信號發(fā)生器 智能信號發(fā)生器

    信號發(fā)生器
    知道點啥
    發(fā)布于 :2026年01月28日 19:23:28

    數(shù)字延遲脈沖發(fā)生器 脈沖延遲信號發(fā)生器 多通道脈沖信號發(fā)生器

    信號發(fā)生器
    jf_47371611
    發(fā)布于 :2026年01月26日 13:54:25

    信號發(fā)生器的構(gòu)成和工作原理

    信號發(fā)生器作為現(xiàn)代電子測試與測量領(lǐng)域中的關(guān)鍵設備,其精密的構(gòu)造和巧妙的工作原理使之能夠產(chǎn)生各種所需的電信號。本文將深入探討信號發(fā)生器的構(gòu)成及
    的頭像 發(fā)表于 11-13 11:45 ?393次閱讀
    <b class='flag-5'>信號</b><b class='flag-5'>發(fā)生器</b>的構(gòu)成和工作原理

    國產(chǎn)射頻信號發(fā)生器好在哪

    信號發(fā)生器
    西安同步電子科技有限公司
    發(fā)布于 :2025年11月12日 16:52:27

    微波信號發(fā)生器介紹

    信號發(fā)生器
    西安同步電子科技有限公司
    發(fā)布于 :2025年11月06日 16:01:44

    可延遲信號發(fā)生器介紹

    gps信號發(fā)生器
    西安同步電子科技有限公司
    發(fā)布于 :2025年10月28日 10:36:45

    高頻信號發(fā)生器怎么用

    信號發(fā)生器
    西安同步電子科技有限公司
    發(fā)布于 :2025年10月21日 17:48:58

    普源信號發(fā)生器DG5000直接數(shù)字合成(DDS

    在電子測試與測量領(lǐng)域,信號發(fā)生器的核心技術(shù)決定了輸出信號的精度與穩(wěn)定性。普源精電DG5000系列函數(shù)/任意波形發(fā)生器采用先進的直接數(shù)字合成(DDS
    的頭像 發(fā)表于 10-17 11:27 ?491次閱讀
    普源<b class='flag-5'>信號</b><b class='flag-5'>發(fā)生器</b>DG5000直接數(shù)字合成(<b class='flag-5'>DDS</b>)

    看看我們維修工程師新修了哪些信號發(fā)生器#信號發(fā)生器#修理儀器

    信號發(fā)生器
    安泰儀器維修
    發(fā)布于 :2025年07月10日 17:32:48