女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

3天內不再提示

解析Vivado如何調用DDS的IP進行仿真

Hx ? 來源:FPGA探索者 ? 作者:FPGA探索者 ? 2021-04-27 16:33 ? 次閱讀

DDS(Direct Digital Synthesis,直接數字頻率合成),作為信號發生器使用,在Quartus中也叫NCO(Numerically Controlled Oscillator,數字控制振蕩器),是軟件無線電中的重要組成部分。

本次使用Vivado調用DDS的IP進行仿真,并嘗試多種配置方式的區別,設計單通道信號發生器(固定頻率)、Verilog查表法實現DDS、AM調制解調、DSB調制解調、可編程控制的信號發生器(調頻調相)。

使用System parameters和Hardware parameters分別配置,對比Standard Mode 標準模式和 Rasterized Mode柵格模式的不同,對比不同時鐘下同一個配置的不同。

一、新建工程

新建工程,新建原理圖BlockDesign,調用DDS的IP核,默認輸出信號時域波形和相位信息。

100063119-126419-01.png

100063119-126420-02.png

二、DDS 配置

第一頁:基礎配置

100063119-126421-03.png

1:配置選項

三種模式可選(相位發生器+sin/cos波形發生器、僅有相位發生器、僅有sin/cos波形發生器);

2:運行時鐘aclk;

100MHz工作時鐘,即100MHz采樣率。

3:通道個數;

設為1,單通道模式,通道的采樣頻率等于采樣時鐘100MHz,當設為多個通道時,每個通道的采樣率為工作時鐘/通道數,比如4通道100MHz時鐘,每個通道采樣率25MHz。

4:操作模式;

Standard標準模式(常用),Rasterized柵格模式。兩種情況下,輸出的頻率和頻率分辨率、相位增量等參量的計算方式不同,具體參見Xilinx的PG141第14~18頁。

Standard Mode 和 Rasterized Mode在實現指定頻率、幅度的信號時,輸出沒有太大的差別,兩者均能滿足要求,一般使用Standard配置方便。

主要的區別:

Standard模式下計算出來的相位增量可能是小數,而在FPGA中要對相位進行截斷取整,存在相位誤差,對噪聲要求較高的場合,可以使用8處的噪聲整形配置來彌補,使用相位抖動(Phase Dithering)或者泰勒級數糾正(Taylor Series Correct)來補償相位誤差;

Rasterized Mode配置下,相位增量一定是整數,不存在截斷效應,沒有Standard模式下的時間基抖動。

5:參數選項(System parameters、Hardware parameters)

(1) System parameters

(2) Hardware parameters

6、7、8處配置系統參數System parameters,其中:

6:配置SFDR無雜散動態范圍

SFDR(SpuriousFree Dynamic Range,無雜散動態范圍),對應幅度,對應M_AXIS_DATA通道,SFDR越大,用于表示幅度的數據的位寬越大;

如下圖所示計算輸出位寬,當使用SFDR= 96 dB,配置8處的噪聲整形位None或者Dithering時,輸出位寬位96/6=16位,向上取整后為16位;使用SFDR = 95 dB,95/6=15.83,向上取整為16位。

100063119-126422-04.png

7:配置頻率分辨率

對應相位的增量配置、位寬,對應M_AXIS_PHASE通道,頻率分辨率越小,用于表示相位的數據的位寬越大;

100063119-126423-05.png

8:配置噪聲整形

4處配置成Standard標準模式時才會使用噪聲整形,

Auto根據設計的SFDR參數自動選擇是否使用整形;

None不整形;

Phase Dithering相位抖動,在使用相位截斷技術時,產生隨機的噪聲來使得量化誤差隨機;

Taylor Series Correct 泰勒級數校正;

4處配置成Rasterized時,不存在相位誤差,只能配置None。

For virtually all applications, the preferred implementationis the dithered DDS.

對于絕大多數的應用,首選的是帶有相位抖動補償的DDS。

相位抖動用于提高SFDR,但代價是增加底噪。

6、7兩處的配置影響輸出數據的位寬,可以在原理圖中體現,也可以在“Summary”頁查看,如圖所示,在 100MHz 工作時鐘下,1 處表示要達到0.4Hz的頻率分辨率,需要輸出 28 位位寬的相位(有效位寬),由AXI_Stream接口輸出時,以 8 位位寬步進,所以28位有效位寬的相位信息通過高位補零達到 32 位位寬,m_axis_phase_tdata[27:0] 為有效的相位信息;2 處表示要達到 45 dB 的輸出信噪比,輸出的 sin 和 cos 波形數據各自需要 8 位,共計需要 16 位,其中高 8 位 m_axis_data_tdata[15:8] 表示 sin,低 8 位表示 cos;3 處表示按上述配置的輸出延時有 3 個時鐘周期,需要消耗 1 個18 Kbit 的 BRAM。

100063119-126424-06.png

100063119-126425-07.png

9:Hardware parameters

這種模式下直接配置輸出的位寬,但是具體輸出對應的SFDR和頻率分辨率會在Summary中體現,也可以自行計算。

100063119-126426-08.png

100063119-126427-09.png

第二頁:具體實現

100063119-126428-10.png

1處:相位增量是否支持可編程配置

Fixed是固定相位增量,DDS運行過程中不可更改,即對應不可變頻率;

Programmable可編程,選中后出現配置接口,可在DDS運行過程中隨時寫入頻率控制字改變輸出波形的頻率,用于偶爾改變頻率;

Streaming應用于頻繁改變頻率,或者FM頻率調制;

2處:相位偏移是否支持可編程配置

None不支持;

Fixed固定相位偏移;

Programmable可編程配置(偶爾改變);

Streaming經常改變,應用于相位調制;

3處:輸出波形選擇

Sine只輸出sin波形;Cosine輸出cos波形;兩個的位寬均為第一頁設置的數據位寬,Sine and Cosine同時輸出sin和cos波形,其中高位表示sin,低位表示cos,總的數據位寬加倍;

4處:極性選擇

sin和cos波形默認使用的是有符號數,勾選相應的選項后,正負取反;

5處:幅度模式

Full Range:全精度(全范圍),針對通信應用,需要最大振幅,但由于自動增益控制導致振幅的值不那么重要的場合,輸出幅度接近1;

Unit Cycle:單位圓,用于對DDS輸出振幅值要求很高的應用,比如產生FFT旋轉因子。單位圓時,DDS輸出幅值為半全量程(即取值范圍為01000.。(+ 0.5)。110000 。 .(-0.5))。

100063119-126429-11.png

6處:是否輸出相位信息

勾選后含有相位輸出通道,不勾選時只輸出幅度信息M_AXIS_DATA;

7處:使用的存儲資源類型

Auto由具體所需的資源決定,資源較少時使用DROM,資源多時選擇BROM;DistributeROM選擇分布式ROM(DROM),Block ROM選擇塊ROM資源(BROM);

8處:綜合優化策略

Area是面積優先,盡可能節省資源用量(LUT、FF等),Speed速度優先,盡可能提升性能;

9處:DSP48資源的使用策略

Minimal盡可能少用,節省資源,Maximal盡可能多用,提高性能;

第三頁:總線配置

單通道模式下,總線的配置只包含可選的輸出信號的Ready。多通道模式下,通道可選是否包含tlast等信號。

100063119-126430-12.png

1處:輸出ready信號

選中則輸出的2個通道中增加tready信號(可選),根據AXI_Stream總線協議的規則,由后級接收模塊輸入一個ready信號(高電平),表示已經準備好接收DDS輸出,此時DDS才能輸出;

2處:延時配置

第四頁 輸出頻率配置

配置各通道的輸出頻率,在第一頁中只使用了1個Channel,所以此處只能配置一個通道,直接配置輸出頻率,單位MHz,比如0.02MHz;

100063119-126431-13.png

第五頁:總結

資源使用較多時默認使用Block ROM,使用面積優先Area策略;單通道采樣頻率=時鐘頻率,100MHz,輸出波形16 bit,高8位為sin,低8位cos。

100063119-126432-14.png

三、仿真

按照上述配置,再配置一個2 MHz輸出頻率的DDS。

100063119-126433-15.png

將輸出的16位波形數據分割,高8位表示sin正弦信號,低8位表示cos余弦信號,相位為鋸齒狀,注意若輸出通道中包含了ready信號,根據AXI_Stream總線的要求,外部需要給ready信號,當ready有效時,DDS才會輸出,仿真中可以一直給高電平。

wire [7:0] sin_wave; wire [7:0] cos_wave; wire [7:0] sin_wave_2; wire [7:0] cos_wave_2; assign sin_wave = M_AXIS_DATA_0_tdata[15:8]; assign cos_wave = M_AXIS_DATA_0_tdata[7:0]; assign sin_wave_2 = M_AXIS_DATA_1_tdata[15:8]; assign cos_wave_2 = M_AXIS_DATA_1_tdata[7:0];

100063119-126434-16.png

編輯:lyn

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

    關注

    5

    文章

    1785

    瀏覽量

    151311
  • 仿真
    +關注

    關注

    51

    文章

    4240

    瀏覽量

    135314
  • DDS
    DDS
    +關注

    關注

    22

    文章

    671

    瀏覽量

    154041
  • Vivado
    +關注

    關注

    19

    文章

    829

    瀏覽量

    68233
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    基于 FPGA 的任意波形發生器+低通濾波器系統設計

    主瓣窄,旁瓣峰值小的窗函數。設置好以后將FIR濾波器系數導出,將生成好coe文件導入Vivado中FIR IP核中。撰寫TestBench文件進行波形仿真。 方法二利用
    發表于 05-07 15:34

    Vivado調用MIG產生DDR3的問題解析

    下面是調用的DDR3模塊的,模塊的倒數第二行是,模塊的時鐘輸入,時鐘源來自PLL產生的系統時鐘的倍頻。
    的頭像 發表于 05-03 10:21 ?441次閱讀
    在<b class='flag-5'>Vivado</b><b class='flag-5'>調用</b>MIG產生DDR3的問題<b class='flag-5'>解析</b>

    Vivado FIR IP核實現

    Xilinx的FIR IP核屬于收費IP,但是不需要像 Quartus那樣通過修改license文件來破解。如果是個人學習,現在網絡上流傳的license破解文件在破解Vivado的同時也破解
    的頭像 發表于 03-01 14:44 ?1456次閱讀
    <b class='flag-5'>Vivado</b> FIR <b class='flag-5'>IP</b>核實現

    使用DDS生成三個信號并在Vivado中實現低通濾波器

    本文使用 DDS 生成三個信號,并在 Vivado 中實現低通濾波器。低通濾波器將濾除相關信號。
    的頭像 發表于 03-01 14:31 ?1461次閱讀
    使用<b class='flag-5'>DDS</b>生成三個信號并在<b class='flag-5'>Vivado</b>中實現低通濾波器

    Vivado Design Suite用戶指南:邏輯仿真

    電子發燒友網站提供《Vivado Design Suite用戶指南:邏輯仿真.pdf》資料免費下載
    發表于 01-15 15:25 ?0次下載
    <b class='flag-5'>Vivado</b> Design Suite用戶指南:邏輯<b class='flag-5'>仿真</b>

    【教程】DNS域名解析服務systemd-resolved使用指南

    客戶端?DNS服務器?域名對應的IP地址DNS解析大致過程:?用戶在應用程序中使用域名?應用程序調用DNS客戶端申請域名解析?DNS客戶端向DNS服務器發送待
    的頭像 發表于 01-09 19:34 ?849次閱讀
    【教程】DNS域名<b class='flag-5'>解析</b>服務systemd-resolved使用指南

    AMD Vivado Design Suite 2024.2全新推出

    AMD Vivado Design Suite 2024.2 全新推出,使用 AMD Versal Adaptive SoC 進行設計的重大改進。此版本為 AMD Versal 自適應 SoC
    的頭像 發表于 11-22 13:54 ?928次閱讀

    域名解析是什么 為什么要進行域名解析

    云的官方網站,這個背后就是域名解析的過程。 域名解析換一種說法就是把域名轉換為IP地址。當我們對一個網站進行訪問的時候,實際上就是與一個IP
    的頭像 發表于 11-22 10:12 ?586次閱讀

    vivado導入舊版本的項目,IP核心被鎖。

    vivado導入其他版本的項目的時候,IP核被鎖,無法解開,請問該如何解決。 使用軟件:vivado 2019.2 導入項目使用版本:vivado 2018
    發表于 11-08 21:29

    Vivado中FFT IP核的使用教程

    本文介紹了Vidado中FFT IP核的使用,具體內容為:調用IP核>>配置界面介紹>>IP核端口介紹>>MATLAB生成測試數據>>測試verilogHDL>>TestBench
    的頭像 發表于 11-06 09:51 ?3400次閱讀
    <b class='flag-5'>Vivado</b>中FFT <b class='flag-5'>IP</b>核的使用教程

    Xilinx DDS IP核的使用和參數配置

    用RAM實現一個DDS,從原理上來說很簡單,在實際使用的時候,可能沒有直接使用官方提供的IP核來的方便。這個博客就記錄一下,最近使用到的這個DDS IP
    的頭像 發表于 10-25 16:54 ?3249次閱讀
    Xilinx <b class='flag-5'>DDS</b> <b class='flag-5'>IP</b>核的使用和參數配置

    Efinity FIFO IP仿真問題 -v1

    Efinity目前不支持聯合仿真,只能通過調用源文件仿真。 我們生成一個fifo IP命名為fifo_sim 在Deliverables中保留Testbench的選項。 在
    的頭像 發表于 10-21 11:41 ?1465次閱讀
    Efinity FIFO <b class='flag-5'>IP</b><b class='flag-5'>仿真</b>問題 -v1

    如何對海外住宅IP的質量進行測試

    IP
    jf_62215197
    發布于 :2024年07月18日 07:43:48

    基于 FPGA 的任意波形發生器+低通濾波器系統設計

    選擇主瓣窄,旁瓣峰值小的窗函數。設置好以后將FIR濾波器系數導出,將生成好coe文件導入Vivado中FIR IP核中。撰寫TestBench文件進行波形仿真。 方法二利用
    發表于 07-15 18:33

    esp32在靜態IP下,域名無法解析怎么解決?

    _info 1esp32使用dhcp,正常獲取IP連接網絡,可以解析域名. 2esp32使用靜態IP,正常獲取IP連接網絡,無法解析域名。
    發表于 06-25 07:56