在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

基于Xilinx Zynq UltraScale+ RFSoC ZCU216評估套件詳細內容介紹

FPGA技術江湖 ? 來源:賽靈思產工程師 ? 作者:Shengjie Li ? 2022-07-04 10:55 ? 次閱讀

Zynq UltraScale+ RFSoC 是業界首款單芯片自適應無線電平臺,在一款芯片內集成射頻直采數據轉換器、單芯片軟決策前向糾錯核(SD-FEC)、FPGA邏輯、完整的ARM處理器子系統和高速收發器等。

第三代RFSoC器件與前幾代產品相比,射頻輸入輸出頻率響應已擴展至全面支持6GHz以下頻段,可幫助用戶開發尖端RF設計,例如大規模MIMO無線電、5G基帶、固定無線接入、測試測量與相控陣雷達等等。第三代器件14bit分辨率ADC最大采樣速率增加到5.0GSPS,14bit分辨率DAC最大采樣速率增加到10.0GSPS。用戶可以參考XMP105詳細了解Zynq RFSoC系列產品具體參數及選型指南。

本次將分上下篇介紹基于Xilinx Zynq UltraScale+ RFSoC ZCU216評估套件的詳細內容:

1. 第三代RFSoC 器件時鐘轉發特性。

2. ZCU216時鐘結構及可行的時鐘設計方案。

3. 在Vivado中創建基于IP集成器(IP Integrator)的設計。

4. 在Vitis中創建基于ARM的BareMetal程序設計。

5. 代碼簡要分析。

6. 硬件環境及測試結果。

本文用于示例的軟件工具、驅動版本、硬件版本及文檔版本如下:

1. ZCU216 Rev-A02(Engineer Sample)

2. CLK104

3. Vivado 2021.2 + Vitis 2021.2

4. PG269 V2.6 October 27, 2021

5. Software Driver: rfdc v11.0

1. 第三代RFSoC 器件時鐘轉發特性:

RFSoC在芯片內集成了數據轉換器,第三代RFSoC系列器件均包含4個ADC Tile和4個DAC Tile,每個ADC和DAC Tile內可能包含1個(ZU43DR)或2個(ZU47DR/48DR)或者4個(ZU49DR)Channel,這取決于芯片型號。以ZCU216開發板上的芯片為例,ZU49DR的每個ADC Tile內包含4路ADC,每個DAC Tile內包含4路DAC。

每個Tile都可以獨立配置,工作在不同的采樣時鐘頻率上,采樣時鐘可以來自于外部高頻時鐘輸入,可以來自于每個Tile內部PLL倍頻后的時鐘,也可以來自于其他Tile分發的參考時鐘。

第三代RFSoC器件相比之前幾代產品引入了時鐘轉發特性,不再需要為每個Tile都提供獨立的采樣時鐘,節省了引腳數量,降低了外圍電路的復雜度。

時鐘轉發的方式共分為兩種,一種是參考時鐘轉發,一種是采樣時鐘轉發。

所謂參考時鐘轉發,是指外部時鐘芯片提供低噪聲低頻時鐘到一個ADC/DAC Tile的專用時鐘管腳,該時鐘將在Tile間轉發,通過每個Tile內的PLL倍頻出所需的采樣時鐘;

f77e3dd0-e62e-11ec-ba43-dac502259ad0.png

而采樣時鐘轉發有兩種途徑,一是從外部時鐘芯片直接提供低噪聲高頻的采樣時鐘到一個ADC/DAC Tile的專用時鐘管腳,采樣時鐘將在Tile間分發,無需通過內部PLL倍頻,直接提供給ADC/DAC Channel作為采樣時鐘;

f7cf8b7c-e62e-11ec-ba43-dac502259ad0.png

時鐘芯片提供低噪聲低頻時鐘到一個ADC/DAC Tile的專用時鐘管腳,該時鐘在此Tile內通過PLL倍頻到采樣頻率,隨后將此采樣時鐘在Tile間分發。

f7ff3a3e-e62e-11ec-ba43-dac502259ad0.png

以上僅為時鐘分發方式的簡化解釋,會有一些使用的限制和建議,建議用戶參考PG269 Chapter 4 Clocking-On-chip Clock Distribution章節閱讀。

用戶也可以打開Vivado,選擇器件型號后在RF Data Converter IP內根據原理圖和目標設計進行配置,如果時鐘設計存在問題,工具會給予一定的報警和提示。

值得注意的是,RF Data Converter IP內的選項和上述的兩種分發方式不是完全匹配的。當使用采樣時鐘分發方式時,在IP內需要勾選的是Input Refclk。ADC Tile 1(Tile 225)和DAC Tile 1(Tile 229)作為采樣時鐘輸入源,其他的ADC和DAC Tile選擇Tile 1作為時鐘源。

f83b639c-e62e-11ec-ba43-dac502259ad0.png

2. ZCU216時鐘結構及可行的時鐘設計方案:

本節僅覆蓋ZCU216開發板與RF數據轉換器相關的時鐘部分,這部分時鐘均由擴展子卡CLK104提供。

f8644eec-e62e-11ec-ba43-dac502259ad0.png

如下所示為CLK104板上的功能示意圖:

f8af68dc-e62e-11ec-ba43-dac502259ad0.png

通過一個時鐘芯片為DAC提供接近10GSPS的低噪聲采樣時鐘是很難實現的,CLK104板采用兩級PLL方案。

第一級LMK04828B是一個雙環路抖動清除器和時鐘發生器,一級回路的參考輸入可為板上的10MHz TCXO、外部參考時鐘(比如從SMA100B輸出低噪聲時鐘),或SFP恢復時鐘。二級回路的參考輸入為板上的160MHz VCXO,可輸出低相噪的時鐘、同步信號。其中DAC_REFCLK和ADC_REFCLK可作為ADC/DAC低頻參考時鐘輸入;PL_CLK,AMS_SYSREF和PL_SYSREF均用作MTS(Multi-Tile Synchronization)應用,我們將在未來博客中詳細描述MTS相關應用;

第二級LMX2594接收第一級輸出時鐘,將其倍頻到采樣頻率,直接輸出到ADC/DAC Tile。

這三顆時鐘芯片均由SPI接口控制,板上有一顆IIC to SPI橋接芯片,FPGA通過IIC接口對此轉換芯片進行控制,進而控制三顆時鐘芯片。除此以外還有一種更為簡單的方式,ZCU216板上帶有一顆TI的MSP430 MCU,其IIC接口通過IIC Switch也可以連接到這幾顆時鐘IC上,用戶可以參考XTP580,使用BoardUI實現對時鐘的配置。

ZCU216上的芯片型號為ZU49DR,其4個ADC Tile和4個DAC Tile都有專用的模擬時鐘輸入管腳,但只有兩個ADC Tile(Bank 225/226)和兩個DAC Tile(Bank 229/230)的時鐘管腳被引出。如下表所示為詳細連接關系:

f8e63394-e62e-11ec-ba43-dac502259ad0.png

本文后續將會展示以下的時鐘方案配置:

使用LMX2594輸出高頻采樣時鐘分發方式,從ADC Tile1和DAC Tile1輸入。設定ADC 采樣頻率為2000MHz,DAC采樣頻率為6400MHz。

f9147e48-e62e-11ec-ba43-dac502259ad0.png

3. 在Vivado中創建基于IP集成器

(IP Integrator)的設計

本節需要讀者對基于Vivado的IPI設計比較熟悉,將不會對較簡單的操作步驟進行詳述。如何使用此Blog提供的TCL文件重建Vivado工程請參考附錄。

? 打開Vivado 2021.2,新建工程,名為rfsoc_zcu216_clocking。

? 選擇板卡ZCU216 EVB或ZCU216 ES EVB,根據板卡型號決定,二者bitstream不兼容。

? 在工程界面內創建Block Design,默認名為design_1。

?添加Zynq UltraScale+ MPSoC IP,Run Block automation,使用板卡默認配置。

? 修改Zynq配置,PS-PL Configuration界面下將AXI HPM0/1 FPD接口關閉,勾選AXI HPM0 LPD,其他保持默認。

? 添加Zynq UltraScale+ RF Data Converter IP。

? 修改RF Data Converter配置。

1. 切換Converter Setup為Advanced模式。

2. 使能全部ADC和DAC的每個Channel,其他所有配置大多數都是可以通過API修改的,保持默認即可,后續將會介紹如何通過API修改。

3. 修改全部ADC的Samples per AXI4-Stream Cycle為8,DAC為16,這是為了避免AXI-Stream接口時鐘頻率超出器件頻率上限。

f95c7f86-e62e-11ec-ba43-dac502259ad0.png

4.在System Clocking界面按下圖配置,如上一節所示,我們將先按ADC 2GSPS,DAC 6.4GSPS進行配置,使用采樣時鐘分發方式。IP的輸出時鐘可以用于倍頻產生AXI4-Stream數據接口的時鐘,因此我們先保持和Fabric clock 頻率8分頻的關系進行配置。

f98044ca-e62e-11ec-ba43-dac502259ad0.png

5. Advanced界面保持默認,無需勾選。

? Run Block Automation,將RFDC IP AXI-Lite接口通過Interconnect連接到Zynq LPD接口實現地址映射。

? 為AXI4-Stream接口提供合適的時鐘和復位。

1. 點擊BD界面上方Run Block Automation。

2. 由于所有ADC/DAC采樣率是一致的,可以使用一個MMCM產生ADC/DAC所需的數字時鐘。在彈出界面中勾選ADC 0-3的時鐘源為ADC0,DAC0-3的時鐘源為DAC0。

f9a39362-e62e-11ec-ba43-dac502259ad0.png

3. 工具將會自動例化兩個Clocking Wizard IP,adc0_clk_wiz使用IP輸出的31.25MHz的時鐘作為輸入,倍頻輸出200MHz時鐘供給Master接口。Dac0_clk_wiz使用IP輸出的50MHz時鐘作為輸入,倍頻輸出400MHz時鐘供給給Slave接口。

f9f46be8-e62e-11ec-ba43-dac502259ad0.png

4. 修改clocking wizard復位極性為低電平有效。

fa1b0c80-e62e-11ec-ba43-dac502259ad0.png

5.例化兩個Processor System Reset IP,并連接peripheral_aresetn到RFDC IP的s/m_axis_aresetn管腳上。其中Slave AXI-Stream接口是DAC的數字接口,Master AXI-Stream是ADC的數字接口。

6. 例化一個AXI GPIO IP,用于控制時鐘板CLK104上的SPI SDO選通。設定為輸出,位寬為2,初始值設定為0x0。

fa8bfc42-e62e-11ec-ba43-dac502259ad0.png

7. 引出AXI GPIO IP,命名為spi_mux。

fab22fd4-e62e-11ec-ba43-dac502259ad0.png

? 完整的Block Design大致如下:

faf3c2dc-e62e-11ec-ba43-dac502259ad0.png

? 在BD中右鍵Validate design,確保沒有報錯。

fb2626be-e62e-11ec-ba43-dac502259ad0.png

? 創建頂層文件,右鍵BD,Create HDL Wrapper,選擇Let Vivado manage wrapper and auto-update。

fb418c60-e62e-11ec-ba43-dac502259ad0.png

? 添加管腳約束,RFDC相關管腳為專有管腳,IP內包含管腳約束,用戶無需為此添加。

fb742e0e-e62e-11ec-ba43-dac502259ad0.png

? 生成bitstream,檢查工程是否有時序違例。

? 導出工程XSA文件,File-Export-Export Hardware,勾選Include Bitstream,選擇導出目錄。

fbe112d0-e62e-11ec-ba43-dac502259ad0.png

在Vitis中創建基于ARM的BareMetal程序設計:

詳細流程:

? 打開Vitis,選擇一個Vitis工作目錄。

? Create Application,選擇一個新的XSA文件,導入從Vivado獲得的XSA文件。

fc59db66-e62e-11ec-ba43-dac502259ad0.png

?為工程取一個名,以Empty Application(C)為模板新建工程。

fc7164b6-e62e-11ec-ba43-dac502259ad0.png

?勾選BSP中的庫,雙擊platform.spr,選中standalone_psu_cortexa53_0下的Board Support Package,選擇Modify BSP Settings,勾選libmetal庫,保存。

fc993126-e62e-11ec-ba43-dac502259ad0.png

? 導入源碼,從附件中找到main.c,可以直接拷貝到工程src目錄下,或者右鍵src目錄選擇Import sources。

fcd14b9c-e62e-11ec-ba43-dac502259ad0.png

? 添加工程Symbol。右鍵工程選擇C/C++ build settings,在Symbols中添加__BAREMETAL__。

fd002a70-e62e-11ec-ba43-dac502259ad0.png

fd358652-e62e-11ec-ba43-dac502259ad0.png

? 編譯工程,如果有宏定義相關報錯,應該是底層IP命名問題,可以在xparameters.h中找到實際的宏定義。

fd50b81e-e62e-11ec-ba43-dac502259ad0.png

如何添加metal log:

Libmetal庫提供了metal_log API以便于用戶調試,用戶可以參考AR#71068使能打印功能:

https://support.xilinx.com/s/article/71068

Metal_log提供了8個等級的打印信息,用戶可以根據項目所處的不同階段決定開啟哪一個等級的調試信息。

fd65eafe-e62e-11ec-ba43-dac502259ad0.png

代碼簡要分析:

整體流程大致如下:

1. Libmetal初始化。

2. RFDC IP初始化。

3. IIC/GPIO/SPI Mux初始化。

4. CLK104時鐘IC復位。

5. CLK104時鐘配置。

6. 設置RFDC Clock Distribution。

7. 查看RFDC IP狀態。

這里主要強調一下三個部分,一是時鐘配置,二是Clock Distribution,三是狀態檢查。

如前面章節所說,FPGA通過IIC接口與IIC to SPI橋接芯片進行交互,橋接芯片通過SPI接口控制時鐘IC。配置數據在本案例中是記錄在數組中的,數據來源于TI的TICS Pro軟件。用戶需要根據實際的需求,在軟件中選擇時鐘IC的輸入輸出頻率和管腳復用,由軟件導出一組針對此時鐘IC的寄存器數值。

fd7f8612-e62e-11ec-ba43-dac502259ad0.png

Clock Dsitribution部分,IP驅動提供了相關的結構體和API,具體組成部分可以參考PG269文檔相關部分。以下是DAC Tile的時鐘分發網絡配置代碼:

fda8cb76-e62e-11ec-ba43-dac502259ad0.png

在我們目前的設計中,使用LMX2594產生的高頻參考時鐘輸入到DAC Tile1,因此結構體中指定source tile為XRFDC_TILE_ID1;此時鐘分發組內最北的是DAC Tile3,最南的是DAC Tile0;分發類型是參考鐘分發,因此選擇XRFDC_DIST_OUT_RX;參考鐘頻率為6400,采樣率為6400;將此結構體傳入到XRFdc_SetClkDistribution函數中,函數內部會檢查當前配置是否有效,并在配置結束以后啟動tile。

檢查IP狀態是最后一步,IP啟動過程共有15個階段,只有當Tile狀態達到0xf的時候說明此Tile正常啟動,接下來可以正常工作,如果發現Tile狀態停在某一步,可以對照PG269 Power-on Sequence Steps章節查找原因。

fde36ede-e62e-11ec-ba43-dac502259ad0.png

硬件環境及測試結果:

建議按照XTP587完成板子硬件環境setup:

1. 連接電源USB-JTAG。

2. 安裝CLK104時鐘板。

3. 使用出廠自帶的CARLISLE連接線,將CLK104 ADC/DAC參考鐘接到板上。

4. 設置啟動模式為JTAG。

fe086d88-e62e-11ec-ba43-dac502259ad0.png

測試結果:

由打印的IP status對比可見,時鐘成功配置,所有DAC和ADC Tile均進入到狀態0xf。

fe441054-e62e-11ec-ba43-dac502259ad0.png

附錄:

此文章提供重建工程TCL腳本,用戶可以下載附件,按照如下步驟重建Vivado工程:

1. 打開Vivado 2021.2。

-對Windows系統,雙擊桌面Vivado圖標或到此目錄尋找執行文件C:XilinxVivado2021.2invivado.bat。

- 對Linux系統,source/settings64.sh。

2. 在Vivado console中,將當前目錄更換到下載的附件目錄。Cd。

3. Source 。/vivado_project.tcl。

Vitis工程需要用戶自行創建,本文會提供測試源代碼。

原文標題:開發者分享|第三代Zynq RFSoC器件射頻數據轉換器應用: 時鐘設計

文章出處:【微信公眾號:FPGA技術江湖】歡迎添加關注!文章轉載請注明出處。

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

    關注

    1629

    文章

    21736

    瀏覽量

    603385
  • 單芯片
    +關注

    關注

    3

    文章

    419

    瀏覽量

    34574
  • Xilinx
    +關注

    關注

    71

    文章

    2167

    瀏覽量

    121410
  • 數據轉換器
    +關注

    關注

    1

    文章

    363

    瀏覽量

    28010

原文標題:開發者分享|第三代Zynq RFSoC器件射頻數據轉換器應用: 時鐘設計

文章出處:【微信號:HXSLH1010101010,微信公眾號:FPGA技術江湖】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    適用于板載Zynq UltraScale+ZCU102評估板的vivado版本

    我們最近買了(登上Zynq UltraScale + ZCU102評估板(xczu9eg-ffvb1156-2-i))。我們需要知道合適的vivado版本。它有什么特殊的工具嗎?我們反
    發表于 12-26 11:34

    如何調試Zynq UltraScale+ MPSoC VCU DDR控制器

    Xilinx DDR 控制器。  DDR PHY 與電路板調試:  Zynq UltraScale+ MPSoC VCU DDR 控制器采用 MIG PHY。  這意味著您可以使用標準 MIG 示例設計來驗證您
    發表于 01-07 16:02

    如何使用ZCU102評估板來運行應用

    的教程。這些視頻是使用 Vivado? Design Suite 2019.1 版和賽靈思軟件開發套件 (SDK) 創建的。其中所含示例均為針對 Zynq? UltraScale+? MPSoC
    發表于 12-23 06:53

    Zynq UltraScale+ MPSoC ZCU102評估套件解決方案

    Zynq UltraScale+ MPSoC ZCU102 評估套件使用 MAX15301 及 MAX15303 PMBus 穩壓器以及 M
    的頭像 發表于 07-04 14:19 ?8833次閱讀

    Xilinx基于ARM的Zynq-7000和Zynq UltraScale+ MPSoC及RFSoC器件是否存在安全漏洞

    本文試圖搞清楚在 Xilinx 基于 ARM 的 Zynq-7000、Zynq UltraScale+ MPSoC 和 Zynq
    發表于 06-28 15:53 ?2674次閱讀

    賽靈思推出同類首創的Zynq UltraScale+RFSoC ZCU111評估套件

    賽靈思推出了新款 Zynq UltraScale+ RFSoC ZCU111 評估套件,用于支持
    的頭像 發表于 08-26 11:08 ?8694次閱讀

    Zynq UltraScale+ RFSoC的功能特點與應用

    在本演示視頻中,Xilinx討論了其Zynq?UltraScale+?RFSoC系列的產品詳細信息。
    的頭像 發表于 11-21 06:07 ?6376次閱讀

    Zynq UltraScale+ MPSoC的發售消息

    Zynq?UltraScale+?MPSoC,現已開始發售。視頻向您重點介紹Xilinx UltraScale +產品組合的第一位成員
    的頭像 發表于 11-27 06:47 ?3601次閱讀

    Zynq UltraScale+ MPSoC的ZCU102開發套件的開發流程

    使用Zynq UltraScale + MPSoC的ZCU102開發套件,該視頻展示了使用SDSoC開發環境的開發流程。
    的頭像 發表于 11-27 06:29 ?4877次閱讀

    上新:Zynq UltraScale+ RFSoC ZCU111 評估套件

    上新:Zynq UltraScale+ RFSoC ZCU111 評估套件
    的頭像 發表于 07-02 12:04 ?4170次閱讀

    賽靈思與三星聯手全球 5G 商用部署

    ZCU216 套件搭載了 Zynq UltraScale+ RFSoC ZCU49DR 器件,提
    發表于 07-08 15:11 ?1030次閱讀

    Zynq UltraScale+ RFSoC器件介紹

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

    Zynq UltraScale+射頻ZCU216射頻數據轉換器評估工具

    電子發燒友網站提供《Zynq UltraScale+射頻ZCU216射頻數據轉換器評估工具.pdf》資料免費下載
    發表于 09-15 10:49 ?5次下載
    <b class='flag-5'>Zynq</b> <b class='flag-5'>UltraScale+</b>射頻<b class='flag-5'>ZCU216</b>射頻數據轉換器<b class='flag-5'>評估</b>工具

    ZCU216評估板用戶指南

    電子發燒友網站提供《ZCU216評估板用戶指南.pdf》資料免費下載
    發表于 09-15 10:54 ?8次下載
    <b class='flag-5'>ZCU216</b><b class='flag-5'>評估</b>板用戶指南

    AMD/Xilinx Zynq? UltraScale+ ? MPSoC ZCU102 評估套件

    AMD/Xilinx Zynq? UltraScale+ ? MPSoC ZCU102 評估套件
    的頭像 發表于 11-20 15:32 ?344次閱讀
    AMD/<b class='flag-5'>Xilinx</b> <b class='flag-5'>Zynq</b>? <b class='flag-5'>UltraScale+</b> ? MPSoC <b class='flag-5'>ZCU</b>102 <b class='flag-5'>評估</b><b class='flag-5'>套件</b>
    主站蜘蛛池模板: 涩综合| 亚洲免费毛片| 久久精品国产精品亚洲精品| 色偷偷免费| 国产啊v在线观看| 国产巨大bbbb天美| 中文天堂在线最新版在线www| 拍真实国产伦偷精品| 最近最新中文字幕在线第一页| 4399一级成人毛片| 亚洲国产成人久久一区www| 久久国产高清视频| 六月丁香综合网| bl 高h文| 久久a毛片| 国产视频国产| 亚洲人成电影在线小说网色| 国产一级做a爱免费视频| 国产亚洲情侣久久精品| 亚洲人成在线精品| 国产欧美视频在线| 最新在线视频| 色多多在线观看| 天天综合天天操| 老师你好滑下面好湿h | 国产三级日产三级日本三级| 黄色www网站| 亚洲伊人tv综合网色| 国产成人精品本亚洲| 国产大片黄在线看免费| 全色网站| 国产成人午夜片在线观看| 午夜宅男在线| 午夜视频观看| bl高h文| a理论片| 免费一区在线观看| 69xxxxxxxxxhd日本| 完整日本特级毛片| 亚洲va国产日韩欧美精品色婷婷| 性做久久久久|