一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

ZU+RFSoC之RFDC API介紹和使用

Comtech科通 ? 來源:FPGA FAE技術(shù)分享選集 ? 2025-04-16 10:05 ? 次閱讀

來源:FPGA FAE技術(shù)分享選集

RF Data Converters驅(qū)動APIAMD Xilinx為RFSoC提供的一套軟件接口,用于控制Data Converters(RF-ADC和RF-DAC)的硬件功能。它作為用戶應(yīng)用程序與底層硬件寄存器之間的抽象層,封裝了復(fù)雜的配置流程和時序控制,使開發(fā)者能夠通過函數(shù)調(diào)用直接管理射頻信號鏈的關(guān)鍵參數(shù)。

RF Data Converters驅(qū)動API在絕大多數(shù)實際應(yīng)用場景中是必須的,尤其是在需要動態(tài)控制、多設(shè)備同步或復(fù)雜校準(zhǔn)的場景。雖然理論上系統(tǒng)參數(shù)完全靜態(tài)不變(例如僅需一次初始化且無需動態(tài)調(diào)整)或者通過直接寄存器操作可以不用API,但缺點是代碼可維護(hù)性差、無法適應(yīng)需求變更、且同步功能難以實現(xiàn),顯著增加開發(fā)難度、調(diào)試風(fēng)險和后期維護(hù)成本。對于基于RFSoC的射頻系統(tǒng)開發(fā),掌握并合理使用驅(qū)動API是高效、可靠實現(xiàn)設(shè)計目標(biāo)的必要前提。

RFDC API介紹

AMD Xilinx的RFDC驅(qū)動API提供了高度靈活的配置能力,涵蓋混頻器、QMC、時鐘同步等關(guān)鍵功能,支持動態(tài)更新與多設(shè)備同步。RFDC驅(qū)動基于libmetal構(gòu)建,裸機(jī)和Linux使用相同的驅(qū)動程序。兩個軟件平臺的驅(qū)動程序都在AMD提供的libmetal軟件層上運行。這種設(shè)計選擇帶來了多方面的技術(shù)優(yōu)勢,尤其在異構(gòu)計算平臺(如RFSoC的ARM + FPGA架構(gòu))中體現(xiàn)得尤為明顯:可以統(tǒng)一硬件抽象層,適配多操作系統(tǒng)(Linux/RTOS/裸機(jī))及Xilinx異構(gòu)平臺(如RFSoC、Versal),降低移植成本,簡化中斷處理,內(nèi)存與緩存的一致性,與OpenAMP深度集成,支持復(fù)雜異構(gòu)系統(tǒng)架構(gòu)等等。

7735e482-18e6-11f0-9310-92fbcf53809c.png

驅(qū)動程序由以下文件組成:

?API

xrfdc.c :此文件中實現(xiàn)了用戶接口API函數(shù)。

xrfdc.h :此文件中提供了用戶接口API原型。該文件提供了驅(qū)動程序?qū)嵗Y(jié)構(gòu)的原型,以及API中使用的所有其他結(jié)構(gòu)的原型。該文件實現(xiàn)了實用的內(nèi)聯(lián)函數(shù)用于訪問驅(qū)動程序和IP中的各種數(shù)據(jù)。

xrfdc_mts.c :該文件實現(xiàn)了多Tile同步API函數(shù)。

xrfdc_mixer.c :該文件實現(xiàn)了混頻器API函數(shù)。

xrfdc_clock.c :該文件實現(xiàn)了與時鐘相關(guān)的API函數(shù)。

xrfdc_mb.c :該文件實現(xiàn)了多頻段API函數(shù)。

xrfdc_ap.c :該文件實現(xiàn)了模擬路徑API函數(shù)。

xrfdc_dp.c :該文件實現(xiàn)了數(shù)字路徑API函數(shù)。

xrfdc_sinit.c :該文件實現(xiàn)了初始化API函數(shù)。

?硬件寄存器映射

xrfdc_hw.h :該文件提供了硬件寄存器映射的定義。同時,該文件還

提供了Zynq UltraScale+ RFSoC寄存器接口中各相關(guān)字段的掩碼。

?中斷處理

xrfdc_intr.c :實現(xiàn)了處理IP核各類中斷和錯誤的函數(shù)。

關(guān)于RFDC的API函數(shù)、數(shù)據(jù)結(jié)構(gòu)等詳細(xì)介紹可以參考Xilinx的PG269文檔。

RFDC API使用

在大規(guī)模MIMO通信、相控陣?yán)走_(dá)、多芯片級聯(lián)擴(kuò)展等應(yīng)用中需要多Tile的ADC、DAC嚴(yán)格對齊同步。在RF Data Converters啟動時,同一Tile內(nèi)的轉(zhuǎn)換器始終是對齊的,但不能保證確定的延時。在多Tile系統(tǒng)中,不能保證具有確定的延時,甚至不能保證跨Tile的延時對齊。這需要我們必須提供一種機(jī)制來對齊這些Tile。RFSoC多Tile同步通過硬件時鐘信號SYSREF與驅(qū)動API共同實現(xiàn),確??鏣ile/芯片的時鐘與數(shù)據(jù)嚴(yán)格對齊。這里我們以實現(xiàn)多個Tile之間的同步為例來介紹RFDC API的使用。

1.參照前面RFDC IP設(shè)計文章,在Vivado里配置好RFDC IP后生成bit文件,然后導(dǎo)出xsa文件;

2.在Vitis里選擇Vivado設(shè)計生成的xsa新建一個平臺項目,選擇standalone,處理器選cortexa53,然后單擊完成;

77438308-18e6-11f0-9310-92fbcf53809c.png

3. 修改平臺BSP的設(shè)置,勾選libmetal庫,然后單擊OK;

775063b6-18e6-11f0-9310-92fbcf53809c.png

4. 選擇剛剛創(chuàng)建的平臺新建一個空的應(yīng)用程序;

77608fe8-18e6-11f0-9310-92fbcf53809c.png

5.將Vitis安裝路徑data/embeddedsw

/XilinxProcessorIPLib/drivers/rfdc_v11_1/examples文件夾下的xrfdc_mts_example.c導(dǎo)入到應(yīng)用程序中;

776dfc46-18e6-11f0-9310-92fbcf53809c.png

6.由于是裸機(jī)工程,在剛剛導(dǎo)入的xrfdc_mts_example.c中添加宏定義:#define __BAREMETAL_;

7.Build工程,連接板子加載程序調(diào)試看是否打印了Successfully ran MTS Example,打印了說明多tile同步成功。然后可以去觀察硬件adc、dac的延時對齊效果了。

Petalinux操作系統(tǒng)中RFDC API使用跟裸機(jī)步驟差不多,但是要注意的是在進(jìn)行debug時要是出現(xiàn)SDK hangs when it attempts to run metal_init時,網(wǎng)上有通過加驅(qū)動庫的方式來解決,但是還會出現(xiàn)如下報錯:

777afc16-18e6-11f0-9310-92fbcf53809c.png

其實只要不勾選Auto-attach Process children就能解決該問題。

778872f6-18e6-11f0-9310-92fbcf53809c.png

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

    關(guān)注

    25

    文章

    5539

    瀏覽量

    135601
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    8885

    瀏覽量

    152964
  • Xilinx
    +關(guān)注

    關(guān)注

    73

    文章

    2179

    瀏覽量

    123908
  • 射頻系統(tǒng)
    +關(guān)注

    關(guān)注

    0

    文章

    121

    瀏覽量

    13485
  • RFSoC
    +關(guān)注

    關(guān)注

    0

    文章

    33

    瀏覽量

    2845

原文標(biāo)題:ZU+RFSoC之RFDC API介紹和使用

文章出處:【微信號:comtech_inc,微信公眾號:Comtech科通】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    Stream API原理介紹

    原理介紹 Stream API 的核心是 Stream 接口,它表示一組元素的序列,可以按需進(jìn)行計算。Stream 接口提供了大量的中間操作和終端操作,可以用于過濾、映射、排序、聚合等各種操作。 Stream API 的實現(xiàn)原
    的頭像 發(fā)表于 09-30 15:31 ?886次閱讀

    Power Optimization SDK介紹Static API

    一.前言 近期關(guān)注到高通在介紹他們推出的Power Optimization SDK,于是便抽個口去了解一波。高通推出該款SDK旨在開發(fā)者可以通過該SDK去控制CPU,GPU的功耗和性能,從芯片層級
    發(fā)表于 09-27 11:58

    MLDLAPI:關(guān)于各國內(nèi)外大平臺API簡介、使用方法詳細(xì)攻略

    MLDLAPI:關(guān)于各國內(nèi)外大平臺API簡介、使用方法詳細(xì)攻略
    發(fā)表于 12-19 17:00

    ZU7EV板卡設(shè)計資料第526篇:基于ZU7EV的FMC 通用PCIe卡

    基于ZU7EV的FMC 通用PCIe卡一、板卡簡介 基于3U PXIe的ZU11EG/ZU7EG/ZU7EV的通用 ,實現(xiàn)FMC的數(shù)據(jù)接口和主控計算,廣泛應(yīng)用于工業(yè)控制,檢測,視覺處理
    發(fā)表于 03-16 10:40

    Xilinx ZYNQ UltraScale+RFSoCZU27DR 開源RFSOC算法驗證評估板

    / O 端口和DDR4 內(nèi)存,適用于 各種不同的可編程應(yīng)用,帶有ZU27DR FPGA 的ZXB-RFSOC-2T2R 由 4 路12 位,采樣率 4.0GSPS ADC 和 4 路14 位,采樣率
    發(fā)表于 08-25 15:11

    python代碼示例基于Python的日歷api調(diào)用代碼實例

    本文檔的主要內(nèi)容詳細(xì)介紹的是python代碼示例基于Python的日歷api調(diào)用代碼實例。
    發(fā)表于 09-06 14:25 ?42次下載
    python代碼示例<b class='flag-5'>之</b>基于Python的日歷<b class='flag-5'>api</b>調(diào)用代碼實例

    Zynq USP RFSoC產(chǎn)品選擇指南資料免費下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是Zynq USP Rfsoc產(chǎn)品選擇指南資料免費下載。
    發(fā)表于 02-15 11:51 ?17次下載
    Zynq USP <b class='flag-5'>RFSoC</b>產(chǎn)品選擇指南資料免費下載

    zu plus RFSoC頻率規(guī)劃器的詳細(xì)資料說明

    本文檔的主要內(nèi)容詳細(xì)介紹的是zu plus RFSoC頻率規(guī)劃器的詳細(xì)資料說明。
    發(fā)表于 02-15 14:42 ?11次下載
    <b class='flag-5'>zu</b> plus <b class='flag-5'>RFSoC</b>頻率規(guī)劃器的詳細(xì)資料說明

    REST API是什么,如何使用REST端口

    REST API。知行橋中的API端口主要支持對象就是REST API。 什么是REST API? 首先,REST是一種架構(gòu)風(fēng)格。REST
    的頭像 發(fā)表于 02-17 18:00 ?9759次閱讀
    REST <b class='flag-5'>API</b>是什么,如何使用REST端口

    ZXB-RFSOC-2T2R驗證評估板手冊

    / O 端口和DDR4 內(nèi)存,適用于 各種不同的可編程應(yīng)用,帶有ZU27DR FPGA 的ZXB-RFSOC-2T2R 由2 路12 位,采樣率 4.0GSPS ADC 和2 路14 位,采樣率6.554 GSPS DAC 端口提供支持。
    發(fā)表于 08-02 16:31 ?4次下載

    ZU7EV卡設(shè)計原理圖536篇:基于ZU7EV的FMC 通用PCIe卡

    基于3U PXIe的ZU11EG/ZU7EG/ZU7EV的通用 ,實現(xiàn)FMC的數(shù)據(jù)接口和主控計算,廣泛應(yīng)用于工業(yè)控制,檢測,視覺處理。支持工業(yè)級溫度工作。
    的頭像 發(fā)表于 01-13 11:05 ?1660次閱讀
    <b class='flag-5'>ZU</b>7EV卡設(shè)計原理圖536篇:基于<b class='flag-5'>ZU</b>7EV的FMC 通用PCIe卡

    Zynq UltraScale+ RFSoC器件介紹

    介紹一下Xilinx公司的新一代Zynq UltraScale+ RFSoC器件,可用于LTE、5G、SDR、衛(wèi)星通信等無線平臺。
    的頭像 發(fā)表于 05-22 10:38 ?6482次閱讀
    Zynq UltraScale+ <b class='flag-5'>RFSoC</b>器件<b class='flag-5'>介紹</b>

    PyTorch教程19.2超參數(shù)優(yōu)化API

    電子發(fā)燒友網(wǎng)站提供《PyTorch教程19.2超參數(shù)優(yōu)化API.pdf》資料免費下載
    發(fā)表于 06-05 10:27 ?0次下載
    PyTorch教程19.2<b class='flag-5'>之</b>超參數(shù)優(yōu)化<b class='flag-5'>API</b>

    PyTorch教程23.8API

    電子發(fā)燒友網(wǎng)站提供《PyTorch教程23.8API.pdf》資料免費下載
    發(fā)表于 06-05 17:48 ?0次下載
    PyTorch教程23.8<b class='flag-5'>之</b><b class='flag-5'>API</b>

    國產(chǎn)RFSoC 47DR/28DR/27DR核心板

    采用FDW復(fù)旦微電子FMZQ28DR- RFSoC處理器,兼容Gen1 ZU28/27、Gen3 ZU48/47DR RFSoC,擁有8個RF-ADC、8個RF-DAC通道。提供完整的
    的頭像 發(fā)表于 09-03 17:08 ?1923次閱讀
    國產(chǎn)<b class='flag-5'>RFSoC</b> 47DR/28DR/27DR核心板