找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 588|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

全國(guó)產(chǎn)RK3568J + FPGA的PCIe、FSPI通信實(shí)測(cè)數(shù)據(jù)分享!

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:336245 發(fā)表于 2024-7-17 14:06 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
本帖最后由 Tronlong 于 2024-7-22 10:48 編輯

測(cè)試數(shù)據(jù)匯總

備注:
(1)當(dāng)TLP header size =16Byte時(shí),PCIe理論傳輸速率為:782.50MB/s;
(2)當(dāng)TLP header size =12Byte時(shí),PCIe理論傳輸速率為:803.09MB/s;
FSPI、PCIe總線介紹
FSPI(Flexible Serial Peripheral Interface)是一種高速、全雙工、同步的串行通信總線,在RK3568J處理器中就有FSPI控制器,可用來連接FSPI設(shè)備。它具備如下特點(diǎn):
(1)支持串行NOR FLASH、串行NAND FLASH;
(2)支持SDR模式;
(3)支持單線、雙線以及四線模式。
圖1 FSPI數(shù)據(jù)傳輸波形圖
PCIe,即PCI-Express(peripheral component interconnect express)是一種高速串行計(jì)算機(jī)擴(kuò)展總線標(biāo)準(zhǔn)。主要用于擴(kuò)充計(jì)算機(jī)系統(tǒng)總線數(shù)據(jù)吞吐量以及提高設(shè)備通信速度。
圖2 PCIe數(shù)據(jù)傳輸圖
硬件平臺(tái)介紹
硬件方案:創(chuàng)龍科技TL3568F-EVM評(píng)估板(瑞芯微RK3568J + 紫光同創(chuàng)Logos-2)。
TL3568F-EVM評(píng)估板簡(jiǎn)介:
創(chuàng)龍科技TL3568F-EVM是一款基于瑞芯微RK3568J/RK3568B2四核ARM Cortex-A55處理器 + 紫光同創(chuàng)Logos-2 PG2L50H/PG2L100H FPGA設(shè)計(jì)的異構(gòu)多核國(guó)產(chǎn)工業(yè)評(píng)估板,由核心板和評(píng)估底板組成,ARM Cortex-A55處理單元主頻高達(dá)1.8GHz/2.0GHz。核心板ARM、FPGA、ROM、RAM、電源、晶振、連接器等所有元器件均采用國(guó)產(chǎn)工業(yè)級(jí)方案,國(guó)產(chǎn)化率100%。同時(shí),評(píng)估底板大部分元器件亦采用國(guó)產(chǎn)工業(yè)級(jí)方案。


RK3568J + FPGA典型應(yīng)用場(chǎng)景
RK3568J + FPGA應(yīng)用場(chǎng)景十分廣泛,涵蓋小電流選線、繼電保護(hù)測(cè)試儀、運(yùn)動(dòng)控制器、醫(yī)療內(nèi)窺鏡、血液分析儀、目標(biāo)識(shí)別跟蹤等領(lǐng)域,可滿足多種工業(yè)應(yīng)用要求。
圖3
案例測(cè)試
下文主要介紹基于瑞芯微RK3568J與紫光同創(chuàng)Logos-2(硬件平臺(tái):創(chuàng)龍科技TL3568F-EVM評(píng)估板)的FSPI、PCIe通信案例,按照創(chuàng)龍科技提供的案例用戶手冊(cè)進(jìn)行操作得出測(cè)試結(jié)果。
基于RK3568J + FPGA的FSPI通信案例
(1)案例說明
ARM端運(yùn)行Linux系統(tǒng),基于FSPI總線對(duì)FPGA DRAM進(jìn)行讀寫測(cè)試。
圖4 ARM端程序流程圖
ARM端實(shí)現(xiàn)SPI Master功能,原理說明如下:
a)打開SPI設(shè)備節(jié)點(diǎn),如:/dev/spidev4.0。
b)使用ioctl配置FSPI總線,如FSPI總線極性和相位、通信速率、數(shù)據(jù)長(zhǎng)度等。
c)選擇模式為單線模式、雙線模式或四線模式。當(dāng)設(shè)置FSPI為四線模式時(shí),發(fā)送數(shù)據(jù)為四線模式,接收數(shù)據(jù)為四線模式。
d)發(fā)送數(shù)據(jù)至FSPI總線,以及從FSPI總線讀取數(shù)據(jù)。
e)校驗(yàn)數(shù)據(jù),然后打印讀寫速率、誤碼率。
FPGA端實(shí)現(xiàn)SPI Slave功能,原理說明如下:
a)FPGA將SPI Master發(fā)送的數(shù)據(jù)保存至DRAM。
b)SPI Master發(fā)起讀數(shù)據(jù)時(shí),F(xiàn)PGA從DRAM讀取數(shù)據(jù)通過FSPI總線傳輸至SPI Master。
(2)測(cè)試結(jié)果
ARM通過FSPI總線(四線模式)寫入2048Byte隨機(jī)數(shù)據(jù)至FPGA DRAM,然后讀出數(shù)據(jù)、進(jìn)行數(shù)據(jù)校驗(yàn),同時(shí)打印FSPI總線讀寫速率和誤碼率。
從下圖可知,本次實(shí)測(cè)寫速率為11.035MB/s,讀速率為24.414MB/s,誤碼率為0.00%。
圖5
若設(shè)置FSPI總線通信時(shí)鐘頻率為150MHz,ARM通過FSPI總線寫入1MByte隨機(jī)數(shù)據(jù)至FPGA DRAM,然后讀出數(shù)據(jù),循環(huán)100次,不做數(shù)據(jù)檢驗(yàn),最后打印FSPI總線讀寫速率和誤碼率。
最終,本次測(cè)試設(shè)置FSPI總線通信時(shí)鐘頻率為150MHz,則FSPI四線模式理論通信速率為:(150000000 / 1024 / 1024 / 8 x 4)MB/s ≈ 71.53MB/s。從下圖可知,本次實(shí)測(cè)寫速率為52.638MB/s,讀速率為67.452MB/s,比較接近理論通信速率。
備注:本案例設(shè)計(jì)FPGA BRAM大小2048Byte,一次寫入1MByte數(shù)據(jù)量會(huì)導(dǎo)致BRAM數(shù)據(jù)溢出,因此誤碼率較高。配置一次寫入1MByte數(shù)據(jù)量只是為了驗(yàn)證FSPI的最大通信速率,不考慮誤碼率。
圖6
基于RK3568J + FPGA的PCIe通信案例
(1)案例說明
ARM端基于PCIe總線對(duì)FPGA DRAM進(jìn)行讀寫測(cè)試。應(yīng)用程序通過ioctl函數(shù)發(fā)送命令開啟DMA傳輸數(shù)據(jù)后,等待驅(qū)動(dòng)上報(bào)input事件;當(dāng)應(yīng)用層接收到input事件,說明DMA傳輸數(shù)據(jù)完成。
圖7 程序流程圖
ARM端原理說明如下:
a)采用DMA方式;
b)將數(shù)據(jù)寫至dma_memcpy驅(qū)動(dòng)申請(qǐng)的連續(xù)內(nèi)存空間(位于DDR);
c)配置DMA,如源地址、目標(biāo)地址、傳輸?shù)臄?shù)據(jù)大小等;
d)寫操作:通過ioctl函數(shù)啟動(dòng)DMA,通過PCIe總線將數(shù)據(jù)搬運(yùn)至FPGA DRAM;
e)程序接收驅(qū)動(dòng)上報(bào)input事件后,將通過ioctl函數(shù)獲取DMA搬運(yùn)數(shù)據(jù)耗時(shí),并計(jì)算DMA傳輸速率(即寫速率);
f)讀操作:通過ioctl函數(shù)啟動(dòng)DMA,通過PCIe總線將FPGA DRAM中的數(shù)據(jù)搬運(yùn)至dma_memcpy驅(qū)動(dòng)申請(qǐng)的連續(xù)內(nèi)存空間(位于DDR);
g)程序接收驅(qū)動(dòng)上報(bào)input事件后,將數(shù)據(jù)從內(nèi)核空間讀取至用戶空間,然后校驗(yàn)數(shù)據(jù),同時(shí)通過ioctl函數(shù)獲取DMA搬運(yùn)數(shù)據(jù)耗時(shí),并計(jì)算DMA傳輸速率(即讀速率)。
FPGA端原理說明如下:
a)實(shí)現(xiàn)PCIe Endpoint功能;
b)處理PCIe RC端發(fā)起的PCIe BAR0空間讀寫事務(wù);
c)將PCIe BAR0讀寫數(shù)據(jù)緩存至FPGA DRAM中。
(2)測(cè)試結(jié)果
將隨機(jī)數(shù)據(jù)先寫入FPGA DRAM,再從FPGA DRAM讀出。測(cè)試完成后,程序?qū)?huì)打印最終測(cè)試結(jié)果,包含讀寫平均傳輸耗時(shí)、讀寫平均傳輸速率、讀寫錯(cuò)誤統(tǒng)計(jì)等信息。
圖8
表 2 測(cè)試結(jié)果說明


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表