欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

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

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

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

在AMD FPGA上簡(jiǎn)單實(shí)現(xiàn)Xilinx DDS IP

OpenFPGA ? 來(lái)源:OpenFPGA ? 2023-01-09 09:31 ? 次閱讀

介紹

直接數(shù)字合成器 (DDS) 是軟件定義無(wú)線電和數(shù)字通信系統(tǒng)中的關(guān)鍵工具,因?yàn)樗鼈兲峁┝艘环N在數(shù)字域中生成復(fù)雜信號(hào)的方法,該信號(hào)也是可變的。

雖然 DDS 背后的理論相當(dāng)簡(jiǎn)單,但第一次在 FPGA 中實(shí)現(xiàn)它可能有點(diǎn)挑戰(zhàn),這就是為什么我想創(chuàng)建這個(gè)項(xiàng)目作為一個(gè)簡(jiǎn)單的示例,說(shuō)明如何使用Xilinx DDS Compiler IP并把它運(yùn)行在 Ultra96 板上的可編程邏輯中。

DDS 也稱為數(shù)控振蕩器 (NCO),包含正弦波數(shù)據(jù)值的查找表,該表接收給定的相位值并輸出正弦波的適當(dāng)數(shù)據(jù)/幅度值。

該輸入值決定了輸出波形的頻率,值越小,DDS 通過正弦查找表的步進(jìn)越慢,輸出波形的頻率越低。

相反,輸入值越高,DDS 步進(jìn)查找表的速度越快,輸出波形的頻率也越高。此輸入值通常稱為調(diào)諧字,但在 Xilinx DDS Compiler IP 中,它稱為相位增量。

c0e2bcac-8fba-11ed-bfe3-dac502259ad0.gif

c1100356-8fba-11ed-bfe3-dac502259ad0.png

如上圖所示,此相位增量值 (Δθ) 越大,DDS 圍繞表示復(fù)雜波形的單位圓的步進(jìn)速度越快。當(dāng) M 加倍時(shí),生成的復(fù)雜波形的頻率也加倍,因?yàn)樗@單位圓的步進(jìn)速度是原來(lái)的兩倍。與該單位圓的相位值相關(guān)的數(shù)據(jù)點(diǎn)存儲(chǔ)在 DDS 的查找表中。

在這一點(diǎn)上,我們可以看到 DDS 的主要優(yōu)勢(shì)之一:我們可以快速、平滑地改變輸出波形的頻率,只需告訴 DDS 多快步進(jìn)查找表的輸入值(又名 - 多快繞單位圓移動(dòng))。

輸入相位增量值不斷添加到自身 (A1 & D1) 以生成所需輸出波形的每個(gè)瞬時(shí)值,從而從查找表 (T1) 中獲得該瞬時(shí)相位值的適當(dāng)數(shù)據(jù)值/幅度。

c1263298-8fba-11ed-bfe3-dac502259ad0.png

為了演示 DDS 及其輸出波形頻率變化的難易程度,我決定使用簡(jiǎn)單的線性調(diào)頻波形比較合適。線性調(diào)頻是指正弦波以一個(gè)頻率開始,然后在一段時(shí)間內(nèi)線性增加或減少(有時(shí)也稱為掃描)。

c13a2abe-8fba-11ed-bfe3-dac502259ad0.png

決定在 26 us的時(shí)間內(nèi)以 1MHz 的步長(zhǎng)從 1MHz 到 25MHz 進(jìn)行簡(jiǎn)單的線性調(diào)頻(時(shí)鐘是 100MHz,每個(gè)時(shí)鐘周期 10 ns,我隨機(jī)選擇讓 DDS 編譯器輸出每個(gè)頻率 1 us只是為了在邏輯分析器窗口中容易看到它)。

c16e3052-8fba-11ed-bfe3-dac502259ad0.png

通過遞歸地將 1MHz 的相位增量值添加到自身,然后將其作為輸入提供給 Xilinx DDS Compiler IP ,這實(shí)現(xiàn)了從 1MHz 到 FPGA 結(jié)構(gòu)時(shí)鐘一半的線性調(diào)頻(在 ILA 中采樣時(shí)保留奈奎斯特規(guī)則)以 1MHz 為步長(zhǎng)。選擇只提高到 25MHz,這樣整個(gè) chirp 就可以立即顯示在我的屏幕上進(jìn)行截圖,但我的結(jié)構(gòu)時(shí)鐘設(shè)置為 100MHz,所以可以降低到 50MHz。

使用 PG141 中的以下等式為 B 列中的每個(gè)輸出波形頻率計(jì)算了 C 列中的相位增量值:

c1bf42c6-8fba-11ed-bfe3-dac502259ad0.png

然后我將 C 列中的相位增量值轉(zhuǎn)換為十六進(jìn)制以去除小數(shù)位,因?yàn)槲沂窃?Verilog 中編寫此代碼的。我創(chuàng)建了 E 列和 F 列以表明相位增量的差異確實(shí)導(dǎo)致了與 1MHz 相同的十六進(jìn)制值。

接下來(lái)就是搭建工程進(jìn)行驗(yàn)證,詳細(xì)的搭建過程就不展示了,可以在最后的工程中找到,在工程中主要有以下IP:

1 - Xilinx DDS Compiler IP;

2 - 連接 DDS 的 AXI Stream 從設(shè)備和主設(shè)備的邏輯;

3 - 一個(gè)集成邏輯分析儀 (ILA) IP,用于查看 DDS 的輸出波形。

在 Vivado 的 Flow Navigator 列下,打開 IP 庫(kù)并搜索“DDS”。當(dāng) DDS Compiler IP 出現(xiàn)在 IP 存儲(chǔ)庫(kù)的列表中時(shí)雙擊它,將彈出一個(gè)對(duì)話框。單擊“Customize IP”按鈕,將出現(xiàn) DDS 編譯器的配置窗口。

c1db44f8-8fba-11ed-bfe3-dac502259ad0.png

在如上所示的第一個(gè)選項(xiàng)卡中,為了我們的目的,保留所有默認(rèn)設(shè)置。

在第二個(gè)選項(xiàng)卡下,為相位增量和偏移可編程性選擇AXI Stream 接口。

c1f6d402-8fba-11ed-bfe3-dac502259ad0.png

同樣關(guān)于 DDS 編譯器的 AXI Stream 接口,在詳細(xì)實(shí)施選項(xiàng)卡下,選中“Output TREADY”框。在處理 AXI Stream 時(shí),TREADY 信號(hào)是一個(gè)必要的信號(hào)。

c2143a7e-8fba-11ed-bfe3-dac502259ad0.png

在加ILA的時(shí)候,一共加了4個(gè)探頭監(jiān)測(cè)DDS從接口的輸入相位增量值和DDS主接口的輸出數(shù)據(jù)和相位值。將芯片的深度設(shè)置為 65536。

c23584d6-8fba-11ed-bfe3-dac502259ad0.png

實(shí)例化 ILA 和 DDS IP 后,編寫了簡(jiǎn)單狀態(tài)機(jī)來(lái)創(chuàng)建 AXI Stream 接口,將相位增量值輸入到 DDS,然后等待 1 us,然后將 1MHz 步長(zhǎng)添加到相位增量值并將其輸入到DDS。

該狀態(tài)機(jī)還保持計(jì)數(shù),在達(dá)到 25MHz 的相位增量值后,在下一次迭代中從 1MHz 開始返回。

這個(gè)簡(jiǎn)單的 AXI Stream 接口狀態(tài)機(jī)在許多不同的應(yīng)用程序中都非常方便。主要邏輯步驟是:

1 - 設(shè)置初始值。

2 - 在目標(biāo) IP 的從屬接口上將 Tvalid 信號(hào)設(shè)置為高電平。

3 - 設(shè)置要在目標(biāo) IP 的從接口上輸入的數(shù)據(jù)值(DDS 的相位增量值)。

4 - 檢查來(lái)自目標(biāo) IP 從接口的 Tready 信號(hào),驗(yàn)證它已準(zhǔn)備好接收下一個(gè)數(shù)據(jù)值。

c2569630-8fba-11ed-bfe3-dac502259ad0.png

生成新的比特流后,打開 FPGA 開發(fā)板的電源并連接到其 JTAG 端口

在 Vivado 的 Flow Navigator 中,選擇Open Hardware Manager ,然后選擇Open Target和Autodetect選項(xiàng)。Hardware Manager與 FPGA 建立連接后,選擇Program Device選項(xiàng)并指定剛剛生成的比特流。

成功下載后,ILA 窗口將出現(xiàn),單擊即時(shí)捕獲按鈕(帶有 >> 字符的藍(lán)色按鈕),將看到 DDS 的波形。

c28604e2-8fba-11ed-bfe3-dac502259ad0.png

ILA 頂部的圖是 DDS 輸出的實(shí)際正弦波形,下面的圖是它的瞬時(shí)相位值。第三張圖是輸入到 DDS 的相位增量值。

底部的十六進(jìn)制值只是狀態(tài)機(jī)狀態(tài),用于演示每個(gè)狀態(tài)如何與 DDS 控制關(guān)聯(lián)。

c2a8a5ec-8fba-11ed-bfe3-dac502259ad0.png







審核編輯:劉清

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

    關(guān)注

    1630

    文章

    21799

    瀏覽量

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

    關(guān)注

    21

    文章

    636

    瀏覽量

    152952
  • NCO
    NCO
    +關(guān)注

    關(guān)注

    0

    文章

    22

    瀏覽量

    24703
  • 數(shù)字合成器
    +關(guān)注

    關(guān)注

    1

    文章

    9

    瀏覽量

    7502

原文標(biāo)題:Xilinx DDS Compiler IP 使用教程

文章出處:【微信號(hào):Open_FPGA,微信公眾號(hào):OpenFPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    AMD Xilinx 7系列FPGA的Multiboot多bit配置

    Multiboot是一種AMD Xilinx 7系列FPGA實(shí)現(xiàn)雙鏡像(或多鏡像)切換的方案
    的頭像 發(fā)表于 02-25 10:54 ?1383次閱讀
    <b class='flag-5'>AMD</b> <b class='flag-5'>Xilinx</b> 7系列<b class='flag-5'>FPGA</b>的Multiboot多bit配置

    #硬聲創(chuàng)作季 #FPGA Xilinx入門-22B DDS結(jié)構(gòu)的FPGA實(shí)現(xiàn)-2

    fpgaXilinxDDS
    水管工
    發(fā)布于 :2022年10月09日 02:07:56

    SoPC實(shí)現(xiàn)的波形發(fā)生器

    基于FPGA的嵌入式系統(tǒng)的開發(fā)工具包。本文介紹基于SoPC的波形發(fā)生器EDK工具包下的設(shè)計(jì)與實(shí)現(xiàn)。本設(shè)計(jì)采用嵌入式軟處理器核 MicroBlaze以及自主編寫的包括實(shí)現(xiàn)
    發(fā)表于 06-25 08:12

    如何使用Xilinx DDS Compiler IP并把它運(yùn)行在Ultra96板的可編程邏輯中?

    實(shí)現(xiàn)它可能有點(diǎn)挑戰(zhàn),這就是為什么我想創(chuàng)建這個(gè)項(xiàng)目作為一個(gè)簡(jiǎn)單的示例,說(shuō)明如何使用Xilinx DDS Compiler IP并把它運(yùn)行在
    發(fā)表于 02-08 15:39

    基于FPGADDS信號(hào)源設(shè)計(jì)與實(shí)現(xiàn)

    基于FPGADDS信號(hào)源設(shè)計(jì)與實(shí)現(xiàn) 利用DDSFPGA 技術(shù)設(shè)計(jì)一種信號(hào)發(fā)生器.介紹了該信號(hào)發(fā)生器的工作原理、 設(shè)計(jì)思路及
    發(fā)表于 02-11 08:48 ?225次下載

    Xilinx_FPGA快速實(shí)現(xiàn)_JESD204B協(xié)議

    Xilinx FPGA快速實(shí)現(xiàn) JESD204B
    發(fā)表于 01-04 18:03 ?0次下載

    Xilinx TCP_IP協(xié)議實(shí)現(xiàn)

    Xilinx FPGA工程例子源碼:Xilinx TCP_IP協(xié)議實(shí)現(xiàn)
    發(fā)表于 06-07 14:54 ?32次下載

    FPGA實(shí)現(xiàn)CRC算法的程序

    Xilinx FPGA工程例子源碼:FPGA實(shí)現(xiàn)CRC算法的程序
    發(fā)表于 06-07 15:07 ?28次下載

    基于TCP/IP通信技術(shù)Xilinx FPGA實(shí)現(xiàn)

    研究了TCP/IP通信協(xié)議棧Xilinx 公司現(xiàn)場(chǎng)可編程門陣列FPGA實(shí)現(xiàn),介紹了其軟硬件
    發(fā)表于 09-04 09:24 ?9次下載
    基于TCP/<b class='flag-5'>IP</b>通信技術(shù)<b class='flag-5'>在</b><b class='flag-5'>Xilinx</b> <b class='flag-5'>FPGA</b><b class='flag-5'>上</b>的<b class='flag-5'>實(shí)現(xiàn)</b>

    FPGA VI中不同的Xilinx內(nèi)核生成器IP設(shè)計(jì)實(shí)現(xiàn)與子模板說(shuō)明

    。 使用Xilinx內(nèi)核生成器IP函數(shù)實(shí)現(xiàn)FPGA VI中不同的Xilinx內(nèi)核生成器IP。La
    發(fā)表于 11-18 05:54 ?1493次閱讀

    Xilinx Logicore IP直接數(shù)字合成器DDS的用戶手冊(cè)免費(fèi)下載

    Xilinx Logicore IP直接數(shù)字合成器(DDS)編譯核心采用Axi4流兼容接口,實(shí)現(xiàn)高性能、優(yōu)化的相位生成和相位-正弦電路。
    發(fā)表于 09-09 08:00 ?20次下載
    <b class='flag-5'>Xilinx</b> Logicore <b class='flag-5'>IP</b>直接數(shù)字合成器<b class='flag-5'>DDS</b>的用戶手冊(cè)免費(fèi)下載

    關(guān)于XilinxDDS IP的運(yùn)用與講解

    本次項(xiàng)目我們主要是為了講解DDS,所以我們使用了混頻這個(gè)小項(xiàng)目來(lái)講解。DDS自己手寫是比較簡(jiǎn)單且靈活,但是Xilinx給我們提供了相應(yīng)的IP
    的頭像 發(fā)表于 04-27 16:00 ?6795次閱讀
    關(guān)于<b class='flag-5'>Xilinx</b>中<b class='flag-5'>DDS</b> <b class='flag-5'>IP</b>的運(yùn)用與講解

    關(guān)于Ultra96的Xilinx DDS編譯器IP教程

    電子發(fā)燒友網(wǎng)站提供《關(guān)于Ultra96的Xilinx DDS編譯器IP教程.zip》資料免費(fèi)下載
    發(fā)表于 12-13 10:17 ?1次下載
    關(guān)于Ultra96的<b class='flag-5'>Xilinx</b> <b class='flag-5'>DDS</b>編譯器<b class='flag-5'>IP</b>教程

    Xilinx Vivado DDS IP使用方法

    DDS(Direct Digital Frequency Synthesizer) 直接數(shù)字頻率合成器,本文主要介紹如何調(diào)用XilinxDDS IP核生成某一頻率的Sin和Cos信號(hào)
    的頭像 發(fā)表于 07-24 11:23 ?5220次閱讀
    <b class='flag-5'>Xilinx</b> Vivado <b class='flag-5'>DDS</b> <b class='flag-5'>IP</b>使用方法

    Xilinx DDS IP核的使用和參數(shù)配置

    用RAM實(shí)現(xiàn)一個(gè)DDS,從原理上來(lái)說(shuō)很簡(jiǎn)單,實(shí)際使用的時(shí)候,可能沒有直接使用官方提供的IP核來(lái)的方便。這個(gè)博客就記錄一下,最近使用到的這個(gè)
    的頭像 發(fā)表于 10-25 16:54 ?1390次閱讀
    <b class='flag-5'>Xilinx</b> <b class='flag-5'>DDS</b> <b class='flag-5'>IP</b>核的使用和參數(shù)配置