本期文章《基于AMD Versal器件實(shí)現(xiàn)PCle5 DMA功能》,誠邀您率先了解如何利用Versal強(qiáng)大性能實(shí)現(xiàn)高速數(shù)據(jù)傳輸!
序言
Versal是AMD 7nm的SoC高端器件,不僅擁有比16nm性能更強(qiáng)的邏輯性能,并且其PS系統(tǒng)中的CPM PCIe也較上一代MPSoC PS硬核PCIe單元強(qiáng)大得多。本節(jié)將基于AMD官方開發(fā)板展示如何快速部署PCIe5x8及DMA功能。
1測試環(huán)境
Vivado版本:2023.2/2024.2,在windows10或者ubuntu22.04
實(shí)驗(yàn)板卡:VPK120
上位機(jī)主板:EPYC9124超微主板
上位機(jī)系統(tǒng):Ubuntu20.04/24.04
2Vivado工程生成
File->Project->Open Example
選擇Versal CPM QDMA EP Design
選擇名稱以后,選擇器件,注意選擇MHP
打開CPM5 QDMA Gen5x8 MM Performance Design,然后finish即可
3BD工程介紹與配置
可以看到從CIPS IP中出現(xiàn)兩個CPM_PCIE_NOC口去訪問兩邊的DDR:
1)數(shù)據(jù)訪問架構(gòu):
在VPK120上有兩個CPM控制器0與1,控制器1訪問數(shù)據(jù)的路徑有以下三種:ST_CPM2PL、MM_CPM2NoC、MM_CPM2PL,本次示例用兩個MM_CPM2NoC,通過NoC直接從DDR中搬運(yùn)數(shù)據(jù)。
2)相關(guān)端口
為什么開兩個?
下圖是MM_CPM2NoC接口,看CPM2NoC接口的位寬與帶寬,由于走的是NoC,所以其單個接口的理論帶寬是128bit x 1000M(NoC運(yùn)行頻率)=16GB,而PCIe5x8的理論帶寬是32GB/s,為此至少需要兩個MM端口,又由于擔(dān)心DDR訪問影響,所以demo中兩個端口同時去訪問兩組DDR,保證帶寬盡量不受DDR的影響。
為什么選用MM接口,而不是ST接口?
根據(jù)ds959手冊以及PG347手冊,ST模式下由于只會有一組ST_CPM2PL接口,而且位寬是512bit,所以理論上要到達(dá)PCIe5x8的帶寬,是需要時鐘跑到500M,但由于器件限制,其時鐘最高是433M,實(shí)際綜合下來時序收斂挑戰(zhàn)很大。
3)細(xì)節(jié)配置
注意:CPM控制器0的數(shù)據(jù)路徑不如控制器1多,少了MM_CPM2PL,為此這里選擇控制器1。
如果要實(shí)現(xiàn)兩路PCIe5x8,則需要將棕色框兩個接口勾選上。
選擇QDMA模式下的AXI MM,根據(jù)硬件結(jié)構(gòu)選擇Lane翻轉(zhuǎn)。
選擇bar空間
1:是主要的數(shù)據(jù)路徑接口;
2:類似于之前XDMA掛載寄存器的方式。
轉(zhuǎn)向器選擇:這里默認(rèn)只選擇CPM2NoC0,這個后續(xù)通過Host profile來指定使用兩個CPM2NoC接口
4實(shí)際運(yùn)行配置
在配置完后,直接編譯后,進(jìn)入實(shí)操環(huán)節(jié)
安裝驅(qū)動
參考《pg347》的Using the Provided Software and Drivers章節(jié)
#下載驅(qū)動源碼,注意最好跟vivado版本對應(yīng)上,master是最新的,對應(yīng)vivado2024.1/2
git clone https://github.com/Xilinx/dma_ip_drivers.git
#如果之前已經(jīng)加載過驅(qū)動,則先刪除驅(qū)動
rmmod qdma_pf
rm -rf dma_ip_drivers
#清理+編譯
make clean & make
make install
modprobe qdma-pf #安裝驅(qū)動
lspci -vvv -d 10ee: #查看設(shè)備節(jié)點(diǎn)是否存在
配置host profile
參考《pg347》的Host profile章節(jié)以及下面的鏈接
https://adaptivesupport.amd.com/s/article/000035811?language=en_US
是通過相關(guān)設(shè)備節(jié)點(diǎn)配置寄存器
執(zhí)行CFG啟動測試
CFG相關(guān)參考:
https://adaptivesupport.amd.com/s/article/Understanding-the-Versal-CPM5-QDMA-Gen4x8-ST-Only-Performance-Design-CED-Example-in-Vivado-2023-2?language=en_US
可以看到能夠到25GB/s左右
5總結(jié)
AMD Versal器件CPM單元集成了硬核QDMA功能,只需使用少量邏輯便能實(shí)現(xiàn)PCIe Gen5高帶寬數(shù)據(jù)傳輸。同時官方也集成好了dma-perf等測試程序以及相關(guān)驅(qū)動,可以快速地進(jìn)行驗(yàn)證與產(chǎn)品化,但需要注意的是MM模式的優(yōu)劣以及性能影響因素,比如DDR、NoC帶寬等,不是所有應(yīng)用都適用,適當(dāng)在ST與MM模式下做選擇,可以幫助實(shí)現(xiàn)更高的性能。如果想在一個VP1202上實(shí)現(xiàn)兩個PCIe5x8 MM,如果想在一個VP1202上實(shí)現(xiàn)兩個PCIe5x8 MM,您可發(fā)送郵件至此郵箱尋求技術(shù)支持:AMD-xilinxchina@avnet.com。
關(guān)于安富利
安富利是全球領(lǐng)先的技術(shù)分銷商和解決方案提供商,在過去一個多世紀(jì)里一直秉持初心,致力于滿足客戶不斷變化的需求。通過遍布全球的專業(yè)化和區(qū)域化業(yè)務(wù)覆蓋,安富利可在產(chǎn)品生命周期的每個階段為客戶和供應(yīng)商提供支持。安富利能夠幫助各種類型的公司適應(yīng)不斷變化的市場環(huán)境,在產(chǎn)品開發(fā)過程中加快設(shè)計(jì)和供應(yīng)速度。安富利在整個技術(shù)價值鏈中處于中心位置,這種獨(dú)特的地位和視角讓其成為了值得信賴的合作伙伴,能夠幫助客戶解決復(fù)雜的設(shè)計(jì)和供應(yīng)鏈難題,從而更快地實(shí)現(xiàn)營收。
-
amd
+關(guān)注
關(guān)注
25文章
5577瀏覽量
136122 -
soc
+關(guān)注
關(guān)注
38文章
4362瀏覽量
222159 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
5620瀏覽量
103513 -
Vivado
+關(guān)注
關(guān)注
19文章
834瀏覽量
68476
原文標(biāo)題:基于AMD Versal器件實(shí)現(xiàn)PCIe5 DMA功能
文章出處:【微信號:AvnetAsia,微信公眾號:安富利】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
【ALINX 技術(shù)分享】AMD Versal AI Edge 自適應(yīng)計(jì)算加速平臺之 Versal 介紹(2)

《電子發(fā)燒友電子設(shè)計(jì)周報》聚焦硬科技領(lǐng)域核心價值 第16期:2025.06.16--2025.06.20
PCIe DMA設(shè)計(jì)實(shí)現(xiàn)
Versal CPM AXI Bridge模式的地址轉(zhuǎn)換

基于AMD FPGA的PCIE DMA邏輯實(shí)現(xiàn)

基于AMD FPGA的PCIE DMA邏輯實(shí)現(xiàn)

AMD Versal? Adaptive SoC CPM PCIE PIO EP設(shè)計(jì)CED示例

AMD Versal自適應(yīng)SoC CPM5 QDMA的Tandem PCIe啟動流程介紹

AMD第二代Versal自適應(yīng)SoC的主要特色
AMD推出第二代Versal Premium系列
第二代AMD Versal Premium系列產(chǎn)品亮點(diǎn)
AMD Versal自適應(yīng)SoC器件Advanced Flow概覽(上)

AMD Versal自適應(yīng)SoC器件Advanced Flow概覽(下)

評論