在工業(yè)通信領(lǐng)域,技術(shù)革新與突破始終是推動(dòng)行業(yè)發(fā)展的核心動(dòng)力。今天,為大家?guī)?lái)基于DSMC/FlexBus并口的RK3576J與FPGA通信方案,核心板國(guó)產(chǎn)化率高達(dá)100%,為工控場(chǎng)景帶來(lái)高效、穩(wěn)定的通信新體驗(yàn)。
開發(fā)環(huán)境與測(cè)試數(shù)據(jù)
本文主要介紹RK3576J與FPGA的通信案例,適用開發(fā)環(huán)境如下:
Windows開發(fā)環(huán)境:Windows 7 64bit、Windows 10 64bit
Linux開發(fā)環(huán)境:VMware16.2.5、Ubuntu22.04.5 64bit
U-Boot:U-Boot-2017.09
Kernel:Linux-6.1.115
Buildroot文件系統(tǒng)版本:Buildroot-2024.02
LinuxSDK:LinuxSDK-[版本號(hào)](基于rk3576_linux6.1_release_v1.1.0)
硬件平臺(tái):創(chuàng)龍科技TL3576-EVM工業(yè)評(píng)估板(基于瑞芯微RK3576J)
通過(guò)實(shí)測(cè)我們發(fā)現(xiàn),基于DSMC和FlexBus的通信方案具備了出色性能,數(shù)據(jù)如下表所示:

FPGA數(shù)采模塊簡(jiǎn)介
創(chuàng)龍科技TL-AD-PGL25G是一款基于紫光同創(chuàng)Logos PGL25G FPGA與芯熾科技SC1467/核芯互聯(lián)CL1606/ADI AD7606 ADC設(shè)計(jì)的數(shù)據(jù)采集模塊,支持8通道、200KSPS串行/并行采樣,可與ARM端通過(guò)DSMC、FlexBus、Local Bus、SPI等總線進(jìn)行通信,滿足客戶多樣化數(shù)據(jù)采集需求。
TL-AD-PGL25G模塊正面圖
DSMC與FlexBus并口簡(jiǎn)介
專為工業(yè)應(yīng)用設(shè)計(jì),DSMC(Double Data Rate Serial Memory Controller)作為高速并行總線接口,兼容多種傳輸協(xié)議,包括HyperBus PSRAM、Xccela PSRAM和Local Bus。對(duì)于RK3576J處理器,DSMC接口若使用Local Bus協(xié)議,從設(shè)備需使用瑞芯微開發(fā)的slave模型,或者傳輸協(xié)議相同。DSMC接口支持8/16bit串行傳輸模式,時(shí)鐘速率高達(dá)100MHz,可實(shí)現(xiàn)FPGA低成本連接,具有低延遲、高帶寬和靈活配置的特點(diǎn),廣泛應(yīng)用于需要高速通信的工業(yè)控制領(lǐng)域。
FlexBus是一個(gè)高度靈活的并行總線接口,可模擬標(biāo)準(zhǔn)或不規(guī)則的協(xié)議,能夠適應(yīng)各種復(fù)雜的通信場(chǎng)景。對(duì)于RK3576J處理器,F(xiàn)lexBus支持2/4/8/16bit并行傳輸,時(shí)鐘速率高達(dá)100MHz,可實(shí)現(xiàn)高速AD/DA拓展,可以在保障數(shù)據(jù)穩(wěn)定性的同時(shí)實(shí)現(xiàn)高效、低延遲的數(shù)據(jù)交互。這一特性使其在高速數(shù)據(jù)采集場(chǎng)景中具有顯著優(yōu)勢(shì)。
RK3576J典型應(yīng)用場(chǎng)景

基于DSMC的ARM與FPGA通信案例
案例說(shuō)明
ARM端運(yùn)行Linux系統(tǒng),基于DSMC總線對(duì)FPGA DRAM進(jìn)行讀寫測(cè)試。
程序原理說(shuō)明如下:
ARM端:
ARM端使用CPU DMA通過(guò)DSMC總線(作為L(zhǎng)ocal Bus Master)來(lái)對(duì)FPGA DRAM進(jìn)行讀寫測(cè)試。
通過(guò)參數(shù)設(shè)置數(shù)據(jù)包大小(數(shù)據(jù)包數(shù)據(jù)每次循環(huán)均為新的隨機(jī)數(shù))、數(shù)據(jù)傳輸?shù)难h(huán)次數(shù)。
對(duì)讀寫的數(shù)據(jù)進(jìn)行校驗(yàn),并打印誤碼率和讀寫速率。
FPGA端:
實(shí)現(xiàn)Local Bus Slave功能。
將Local Bus Master(ARM)發(fā)送的64KByte數(shù)據(jù)保存到DRAM。
當(dāng)Local Bus Master(ARM)讀取64KByte數(shù)據(jù)時(shí),F(xiàn)PGA從DRAM讀取64KByte數(shù)據(jù)發(fā)送至Local Bus。


案例演示
請(qǐng)將創(chuàng)龍科技TL-AD-PGL25G模塊連接至評(píng)估板EXPORT接口,如下圖所示。
TL-AD-PGL25G模塊連接圖
請(qǐng)參考產(chǎn)品資料用戶手冊(cè)完成內(nèi)核鏡像替換,將FPGA可執(zhí)行程序固化至SPI FLASH,并加載驅(qū)動(dòng)。
執(zhí)行如下命令運(yùn)行程序,ARM通過(guò)DSMC總線寫入65536Byte隨機(jī)數(shù)據(jù)至FPGA DRAM,然后讀出數(shù)據(jù)、進(jìn)行數(shù)據(jù)校驗(yàn),同時(shí)打印DSMC總線讀寫速率和誤碼率,如下圖所示。
Target#./dma_memcpy_demo -a 0x10000000 -s 65536 -c 1000 -d /dev/input/event7

上圖可知,本次實(shí)測(cè)平均寫速率約為280MB/s,平均讀速率約為216MB/s,誤碼率為0.00%。
基于FlexBus的ARM與FPGA通信案例
案例說(shuō)明
案例功能:ARM端運(yùn)行Linux系統(tǒng),基于FlexBus總線對(duì)FPGA DRAM進(jìn)行讀寫測(cè)試。
程序原理說(shuō)明如下:
ARM端:
通過(guò)FlexBus總線對(duì)FPGA DRAM進(jìn)行讀寫測(cè)試。
支持通過(guò)參數(shù)設(shè)置數(shù)據(jù)包大小(每次循環(huán)數(shù)據(jù)包的數(shù)據(jù)均為新的隨機(jī)數(shù))、數(shù)據(jù)傳輸?shù)难h(huán)次數(shù)。
對(duì)讀寫的數(shù)據(jù)進(jìn)行校驗(yàn),并打印誤碼率和讀寫速率。
FPGA端:
實(shí)現(xiàn)FlexBus Slave功能。
默認(rèn)將FlexBus Master(ARM)發(fā)送的64KByte數(shù)據(jù)保存到FPGA DRAM。
FlexBus Master(ARM)讀取64KByte數(shù)據(jù)時(shí),F(xiàn)PGA從DRAM讀取64KByte數(shù)據(jù)通過(guò)FlexBus傳輸給FlexBus Master(ARM)。


案例演示
請(qǐng)將創(chuàng)龍科技TL-AD-PGL25G模塊連接至評(píng)估板EXPORT接口,如下圖所示。
TL-AD-PGL25G模塊連接圖
請(qǐng)參考產(chǎn)品資料用戶手冊(cè)完成內(nèi)核鏡像替換,并將FPGA可執(zhí)行程序固化至SPI FLASH。
執(zhí)行如下命令運(yùn)行程序,ARM通過(guò)FlexBus總線寫入65536Byte隨機(jī)數(shù)據(jù)至FPGA DRAM,然后讀出數(shù)據(jù)、進(jìn)行數(shù)據(jù)校驗(yàn),同時(shí)打印FlexBus總線讀寫速率和誤碼率,如下圖所示。
Target#./flexbus_rw -d /dev/spidev7.0 -s 100000000 -S 65536 -c 1000

從上圖可知,本次實(shí)測(cè)平均寫速率約為165MB/s,平均讀速率約為166MB/s,誤碼率為0.00%。
想要查看瑞芯微RK3576J更多案例演示,可前往創(chuàng)龍科技官網(wǎng)或微信公眾號(hào)。
審核編輯 黃宇
-
通信
+關(guān)注
關(guān)注
18文章
6391瀏覽量
140038 -
瑞芯微
+關(guān)注
關(guān)注
27文章
792瀏覽量
54296 -
并口
+關(guān)注
關(guān)注
0文章
34瀏覽量
18133
發(fā)布評(píng)論請(qǐng)先 登錄
實(shí)測(cè)2778MB/s,AMP核間通信“快如閃電”,瑞芯微RK3576
基于米爾RK3576的環(huán)視實(shí)時(shí)性方案解析
迅為如何在RK3576上部署YOLOv5;基于RK3576構(gòu)建智能門禁系統(tǒng)
【作品合集】米爾RK3576開發(fā)板測(cè)評(píng)
【作品合集】靈眸科技EASY EAI Orin Nano(RK3576)開發(fā)板測(cè)評(píng)
瑞芯微RK3576平臺(tái)FFmpeg硬件編解碼移植及性能測(cè)試實(shí)戰(zhàn)攻略 觸覺(jué)智能RK3576開發(fā)板演示
瑞芯微RK3576與RK3576S有什么區(qū)別,性能參數(shù)配置與型號(hào)差異解析
RK這2款旗艦芯片RK3588 PK RK3576,誰(shuí)是最優(yōu)選
Mpp支持RK3576么
RK3576 vs RK3588:為何越來(lái)越多的開發(fā)者轉(zhuǎn)向RK3576?
RK3576+紫光同創(chuàng)FPGA并口通信方案 基于DSMC/FlexBus并口的RK3576J與FPGA通信方案
RK3576 + FPGA并口通信方案,實(shí)測(cè)高達(dá)280MB/s
評(píng)論