色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

教你如何利用verilog輕松實現高分辨率DDS

冬至子 ? 來源:玩兒轉FPGA ? 作者:東哥 ? 2023-06-28 10:36 ? 次閱讀

DDS基本原理

1.原理框圖

圖片

圖1. FPGA產生DDS框圖

上圖就是DDS的的FPGA實現框圖,完整的DDS還應該在外面有DAC和低通濾波器的,然而很多時候我們是不需要這兩個的,因為上圖的DDS輸出的信號就在數字域,凡是數學域的信號都可以用它參與處理了,所以正弦ROM查找表出來后的信號可以直接給到其他的邏輯使用。只有要在模擬域參與處理才會把DDS的數字信號用DAC和低通濾波變換成模擬信號。

2.DDS正弦波產生原理

正弦ROM查找表里面就是按地址存放的一個周期的正弦波,可以根據幅值精度要求分成256,1024,等點數,點數越多,波形越精細,越接近真實的模擬正弦波。但是由于FPGA資源有限,選擇一個能夠滿足要求的點數就足夠了。

相位調整器是控制輸出波形的初相位,也就是波形輸出起點從哪里開始。

相位累加器是控制ROM地址跳變的。相位累加器在每個時鐘脈沖輸入時,把頻率控制字累加一次,相位累加器的輸出數據就是信號的相位,也就是ROM的地址。由于相位累加器字長的限制,相位累加器累加到一定值后,其輸出將會溢出,這樣波形存儲器的地址就會循環一次,即意味著輸出波形循環一周。故改變頻率控制字即相位增量,就可以改變相位累加器的溢出時間,在時鐘頻率不變的條件下就可以改變輸出頻率。改變查表尋址的時鐘頻率,同樣也可以改變輸出波形的頻率。

也就是說通過相位調整器和相位累加器就可以控制你輸出波形的相位和頻率!

DDS實例說明

1.16點DDS舉例

下圖是一個16點的DDS ROM存取示意圖,橫軸是二進制的ROM地址,縱軸是每個地址對應的幅值。

如果頻率控制字K=1,相位控制字是0,那么ROM輸出就是從0開始+1,一直到15再次歸0,如此循環。如果DDS工作時鐘是Fc,那么這種情況下,輸出正弦波頻率Fout就是Fc/(2^4)=Fc/16。如果K=2,輸出則是一半的時間就輸出完成整個周期所以是Fc/(2^4)*2=Fc/8。以此類推可以得到如下公式,N是ROM地址位寬,也就是頻率控制字的二進制位寬:

圖片

......公式1

圖片

圖2. DDS輸出 波形示意圖

頻率分辨率,也就是頻率控制字每變化1,頻率變化的大小,公式如下:

圖片

......公式2

本質上也就是K=1和0的時候的輸出頻率之差,這個計算起來是最簡單的。

2.提高頻率分辨率的方法

根據公式2我們可以得到:N越大,也就是頻率控制字位寬越大,那么分辨率越高,我們設置的任意頻率都可以做到更接近,頻譜上就越看不出差別。而且我們可以知道,這和輸出波形的位寬是無關的,輸出位寬只和幅值精度有關。也就是說,我們可以用一個ROM存1024個點,每個點16bit精度,但是頻率控制字是32bit,累加結果只用最高10bit,這樣,就可以讓ROM存儲少,但是頻率分辨率確很高。這種方法在實際中也是很實用的方法。

仿真結果說明

如下圖所示,rst為高電平時復位整個模塊,en為高電平整個模塊才會工作,dout_vld為高電平的時候輸出數據才是有效的點。所以輸出可以根據dout_vld為1的時候打印到文件里面,用matlab分析頻譜。由于輸出數字信號一定是離散的所以一定會有高頻分量,只是占比多少的問題,后面的模擬濾波器如果設置合理是可以把基頻分量取出來的,這樣就可以實現DA功能。DDS輸出頻率越高,三角函數畸變也就越嚴重,但是實際處理過程中往往不需要他的波形多么接近正弦波,只要頻譜的譜線足夠干凈就可以。詳見下一節MATLAB分析。

圖片

matlab結果說明

tb默認設置DDS工作在100M時鐘下,產生4M正弦波,輸出2048點后用這些點去做FFT,結果如下圖所示,結果顯示正弦波頻率是4.035M,和理論預測相差35KHz,準確度為0.875%。然而按照32bit的位寬精度應該比這個精確的多的。那么為什么會有這種差距呢?原因是100M的采樣率,1024點FFT分辨率只有0.1M左右,遠遠大于DDS的輸出頻率分辨率,所以,即便DDS輸出頻率很準確,FFT也不會認為有那么準確,必須要FFT分辨率大于DDS分辨率的時候才能準確的計算出DDS的頻譜。

圖片

那么按照以上理論,只需要提高FFT點數,DDS的結果應該更接近理想結果,于是我們輸出131072點之后我們做FFT,結果如下:

圖片

頻譜顯示為4.001MHz,準確度為0.025%,確實比2048點精準了很多倍。然而這里的FFT分辨率其實還是不夠的,只不過輸出太多點數需要花時間,有興趣的讀者可以繼續增大點數看看分辨率究竟有多高,可能會讓你嚇一跳哦!

這里其實也體現了DDS的優點,輸出頻率精度非常高,而且相位穩定可靠,消耗資源又少!

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA設計
    +關注

    關注

    9

    文章

    428

    瀏覽量

    26552
  • ROM
    ROM
    +關注

    關注

    4

    文章

    575

    瀏覽量

    85829
  • 低通濾波器
    +關注

    關注

    14

    文章

    474

    瀏覽量

    47451
  • DDS
    DDS
    +關注

    關注

    21

    文章

    634

    瀏覽量

    152728
  • 相位累加器
    +關注

    關注

    0

    文章

    10

    瀏覽量

    9199
收藏 人收藏

    評論

    相關推薦

    增強高分辨率圖像捕獲的選擇

    可能有一連串的妥協,但有時只有最好的。工業成像也如此。有時,一個應用的要求相當重要而不能更換。分辨率是個很好的例子-如果您的應用需要高分辨率捕獲,您不能用這換取其它性能,如更高的幀速率或更小的攝像機尺寸
    發表于 10-25 09:04

    如何利用單片機內置ADC實現高分辨率采樣

    相信ADC的應用或多或少都會用到,在很多場合都有分辨率要求,要實現高分辨率時,第一時間會想到采用一個較高位數的外置ADC去實現。可是高分辨率
    發表于 01-28 07:37

    ADC信噪比要怎么分析?高速高分辨率ADC電路要怎么實現

    實際分辨率受器件自身誤差和電路噪聲的影響很大。ADC信噪比要怎么分析?高速高分辨率ADC電路要怎么實現
    發表于 04-14 06:16

    如何設計高速高分辨率ADC電路?

    影響ADC信噪比因素有哪些?如何設計高速高分辨率ADC電路?基于AD6644AST一65的高速高分辨率ADC電路設計實例
    發表于 04-23 06:01

    如何實現DCP的高分辨率控制?

    實現高分辨率的原理是什么如何使用X9241實現高分辨率
    發表于 04-27 06:54

    如何實現連續脈沖信號的高分辨率延遲?

    如何實現連續脈沖信號的高分辨率延遲?
    發表于 04-30 06:07

    如何利用先進的熱電偶和高分辨率Δ-ΣADC實現高精度溫度測量?

    如何利用先進的熱電偶和高分辨率Δ-ΣADC實現高精度溫度測量?
    發表于 05-12 07:01

    單片機內置ADC實現高分辨率采樣的方法

    關注、星標嵌入式客棧,精彩及時送達[導讀] 相信ADC的應用或多或少都會用到,在很多場合都有分辨率要求,要實現高分辨率時,第一時間會想到采用一個較高位數的外置ADC去實現。可是
    發表于 12-08 07:03

    高速高分辨率數據采集系統

    高速高分辨率數據采集系統
    發表于 04-30 13:44 ?45次下載

    超低頻高分辨率信號源的設計

    本文針對過套管電阻測井技術,提出利用直接數字頻率合成技術,合成產生超低頻率、高穩定度、高分辨率的正弦信號。設計實現了信號源的單片機控制模塊、DDS
    發表于 12-26 11:40 ?16次下載

    如何優化高分辨率DAC的DC測量

    如何優化高分辨率DA
    發表于 01-09 12:13 ?43次下載
    如何優化<b class='flag-5'>高分辨率</b>DAC的DC測量

    verilog輕松實現高分辨率DDS

    根據公式2我們可以得到:N越大,也就是頻率控制字位寬越大,那么分辨率越高,我們設置的任意頻率都可以做到更接近,頻譜上就越看不出差別。而且我們可以知道,這和輸出波形的位寬是無關的,輸出位寬只和幅值精度有關。
    的頭像 發表于 02-04 15:35 ?5822次閱讀
    <b class='flag-5'>verilog</b><b class='flag-5'>輕松</b><b class='flag-5'>實現</b><b class='flag-5'>高分辨率</b><b class='flag-5'>DDS</b>

    結合CLC和NCO實現高分辨率PWM

    雖然許多應用可以使用分辨率低于8位的PWM,但是有一些應用(例如燈具調光)由于人眼靈敏度的原因需要較高分辨率
    發表于 04-01 16:06 ?17次下載
    結合CLC和NCO<b class='flag-5'>實現</b><b class='flag-5'>高分辨率</b>PWM

    高分辨率數字調光器

    高分辨率數字調光器
    發表于 11-15 19:36 ?3次下載
    <b class='flag-5'>高分辨率</b>數字調光器

    寬帶視頻開關解決高分辨率視頻設計挑戰

    寬帶視頻開關解決高分辨率視頻設計挑戰
    發表于 11-15 19:56 ?0次下載
    寬帶視頻開關解決<b class='flag-5'>高分辨率</b>視頻設計挑戰
    主站蜘蛛池模板: www.久艹| 国产乱子影视频上线免费观看| 脱jk裙的美女露小内内无遮挡| 久久草福利自拍视频在线观看| 久久视频在线视频观品15 | 2021久久精品免费观看| 99热久久这里只有精品| AV天堂午夜精品蜜臀AV| 内射一区二区精品视频在线观看| 人妻久久久精品99系列AV| 午夜福利免费体检区| 99E久热只有精品8在线直播| 国产成人在线免费| 男助理憋尿PLAY灌尿BL出去| bt成人种子| 龙腾亚洲人成电影网站| 午夜在线观看免费完整直播网 | 亚洲免费福利在线视频| 成人在线视频免费观看| 久久一er精这里有精品| 无码乱人伦一区二区亚洲一| 国产麻豆精品久久一二三| 伊人久久大香网| 和老外3p爽粗大免费视频| 欧美 亚洲综合在线一区| 野花日本高清在线观看免费吗| 国产av在在免费线观看美女| 嫩草AV久久伊人妇女| 国产精品成人网| 日日天干夜夜狠狠爱| 爱啪国产精品视频在线| 妙玉被肉干高H潮文| 99久久无码热高清精品| 午夜福利电影| 年轻老师毛茸茸自由性| 国精产品999一区二区三区有限| 午夜精品久久久久久久99蜜桃| 老板吻我下身好爽到高潮| 国产三级在线观看视频| 亚洲成AV人电影在线观看| 黄色网址在线免费观看|