電子工程網
標題: 全國產RK3568J + FPGA的PCIe、FSPI通信實測數據分享! [打印本頁]
作者: Tronlong-- 時間: 2024-5-30 13:59
標題: 全國產RK3568J + FPGA的PCIe、FSPI通信實測數據分享!
測試數據匯總
| | | |
| | | 讀速率:67.452MB/s 寫速率:52.638MB/s |
| | | 讀速率:595.24MB/s 寫速率:791.14MB/s |
備注:
(2)當TLP header size =12Byte時,PCIe理論傳輸速率為:803.09MB/s;
FSPI、PCIe總線介紹
[color=rgba(0, 0, 0, 0.9)](1)支持串行NOR FLASH、串行NAND FLASH;
(2)支持SDR模式;
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]圖1 FSPI數據傳輸波形圖
[color=rgba(0, 0, 0, 0.9)]PCIe,即PCI-Express(peripheral component interconnect express)是一種高速串行計算機擴展總線標準。主要用于擴充計算機系統總線數據吞吐量以及提高設備通信速度。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]
圖2 PCIe數據傳輸圖
硬件平臺介紹
[color=rgba(0, 0, 0, 0.9)]硬件方案:創龍科技TL3568F-EVM評估板(瑞芯微RK3568J + 紫光同創Logos-2)。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]TL3568F-EVM評估板簡介:
[color=rgba(0, 0, 0, 0.9)]創龍科技TL3568F-EVM是一款基于瑞芯微RK3568J/RK3568B2四核ARM Cortex-A55處理器 + 紫光同創Logos-2 PG2L50H/PG2L100H FPGA設計的異構多核國產工業評估板,由核心板和評估底板組成,ARM Cortex-A55處理單元主頻高達1.8GHz/2.0GHz。核心板ARM、FPGA、ROM、RAM、電源、晶振、連接器等所有元器件均采用國產工業級方案,國產化率100%。同時,評估底板大部分元器件亦采用國產工業級方案。
[color=rgba(0, 0, 0, 0.9)]RK3568J + FPGA典型應用場景
[color=rgba(0, 0, 0, 0.9)]RK3568J + FPGA應用場景十分廣泛,涵蓋小電流選線、繼電保護測試儀、運動控制器、醫療內窺鏡、血液分析儀、目標識別跟蹤等領域,可滿足多種工業應用要求。
[color=rgba(0, 0, 0, 0.9)]
圖3
案例測試
[color=rgba(0, 0, 0, 0.9)]下文主要介紹基于瑞芯微RK3568J與紫光同創Logos-2(硬件平臺:創龍科技TL3568F-EVM評估板)的FSPI、PCIe通信案例,按照創龍科技提供的案例用戶手冊進行操作得出測試結果。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]基于RK3568J + FPGA的FSPI通信案例
[color=rgba(0, 0, 0, 0.9)](1)案例說明
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]ARM端運行Linux系統,基于FSPI總線對FPGA DRAM進行讀寫測試。
[color=rgba(0, 0, 0, 0.9)]
圖4 ARM端程序流程圖
[color=rgba(0, 0, 0, 0.9)]ARM端實現SPI Master功能,原理說明如下:
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]a)打開SPI設備節點,如:/dev/spidev4.0。
[color=rgba(0, 0, 0, 0.9)]b)使用ioctl配置FSPI總線,如FSPI總線極性和相位、通信速率、數據長度等。
[color=rgba(0, 0, 0, 0.9)]c)選擇模式為單線模式、雙線模式或四線模式。當設置FSPI為四線模式時,發送數據為四線模式,接收數據為四線模式。
[color=rgba(0, 0, 0, 0.9)]d)發送數據至FSPI總線,以及從FSPI總線讀取數據。
[color=rgba(0, 0, 0, 0.9)]e)校驗數據,然后打印讀寫速率、誤碼率。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]FPGA端實現SPI Slave功能,原理說明如下:
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]a)FPGA將SPI Master發送的數據保存至DRAM。
[color=rgba(0, 0, 0, 0.9)]b)SPI Master發起讀數據時,FPGA從DRAM讀取數據通過FSPI總線傳輸至SPI Master。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)](2)測試結果
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]ARM通過FSPI總線(四線模式)寫入2048Byte隨機數據至FPGA DRAM,然后讀出數據、進行數據校驗,同時打印FSPI總線讀寫速率和誤碼率。
[color=rgba(0, 0, 0, 0.9)]從下圖可知,本次實測寫速率為11.035MB/s,讀速率為24.414MB/s,誤碼率為0.00%。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]圖5
[color=rgba(0, 0, 0, 0.9)]若設置FSPI總線通信時鐘頻率為150MHz,ARM通過FSPI總線寫入1MByte隨機數據至FPGA DRAM,然后讀出數據,循環100次,不做數據檢驗,最后打印FSPI總線讀寫速率和誤碼率。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]最終,本次測試設置FSPI總線通信時鐘頻率為150MHz,則FSPI四線模式理論通信速率為:(150000000 / 1024 / 1024 / 8 x 4)MB/s ≈ 71.53MB/s。從下圖可知,本次實測寫速率為52.638MB/s,讀速率為67.452MB/s,比較接近理論通信速率。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]備注:本案例設計FPGA BRAM大小2048Byte,一次寫入1MByte數據量會導致BRAM數據溢出,因此誤碼率較高。配置一次寫入1MByte數據量只是為了驗證FSPI的最大通信速率,不考慮誤碼率。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]圖6
[color=rgba(0, 0, 0, 0.9)]基于RK3568J + FPGA的PCIe通信案例
[color=rgba(0, 0, 0, 0.9)](1)案例說明
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]ARM端基于PCIe總線對FPGA DRAM進行讀寫測試。應用程序通過ioctl函數發送命令開啟DMA傳輸數據后,等待驅動上報input事件;當應用層接收到input事件,說明DMA傳輸數據完成。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]
圖7 程序流程圖
[color=rgba(0, 0, 0, 0.9)]ARM端原理說明如下:
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]a)采用DMA方式;
[color=rgba(0, 0, 0, 0.9)]b)將數據寫至dma_memcpy驅動申請的連續內存空間(位于DDR);
[color=rgba(0, 0, 0, 0.9)]c)配置DMA,如源地址、目標地址、傳輸的數據大小等;
[color=rgba(0, 0, 0, 0.9)]d)寫操作:通過ioctl函數啟動DMA,通過PCIe總線將數據搬運至FPGA DRAM;
[color=rgba(0, 0, 0, 0.9)]e)程序接收驅動上報input事件后,將通過ioctl函數獲取DMA搬運數據耗時,并計算DMA傳輸速率(即寫速率);
[color=rgba(0, 0, 0, 0.9)]f)讀操作:通過ioctl函數啟動DMA,通過PCIe總線將FPGA DRAM中的數據搬運至dma_memcpy驅動申請的連續內存空間(位于DDR);
[color=rgba(0, 0, 0, 0.9)]g)程序接收驅動上報input事件后,將數據從內核空間讀取至用戶空間,然后校驗數據,同時通過ioctl函數獲取DMA搬運數據耗時,并計算DMA傳輸速率(即讀速率)。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]FPGA端原理說明如下:
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]a)實現PCIe Endpoint功能;
[color=rgba(0, 0, 0, 0.9)]b)處理PCIe RC端發起的PCIe BAR0空間讀寫事務;
[color=rgba(0, 0, 0, 0.9)]c)將PCIe BAR0讀寫數據緩存至FPGA DRAM中。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)](2)測試結果
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]將隨機數據先寫入FPGA DRAM,再從FPGA DRAM讀出。測試完成后,程序將會打印最終測試結果,包含讀寫平均傳輸耗時、讀寫平均傳輸速率、讀寫錯誤統計等信息。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]圖8
[/td][/tr]
[/table]
歡迎光臨 電子工程網 (http://m.qingdxww.cn/) |
Powered by Discuz! X3.4 |
主站蜘蛛池模板:
正在播放久久|
欧洲毛片真人|
欧美性xxxxbbbb|
我想看一级毛片免费的|
中文字幕在线播放不卡|
亚洲一区二区精品视频|
韩国免费啪啪漫画无遮拦健身教练|
亚洲人成77777|
特级av毛片免费观看|
日本另类αv欧美另类aⅴ|
深夜在线小视频|
在线观看播放视频www|
国内自拍 在线 亚洲 欧美|
伊人精品久久久大香线蕉99|
日本福利在线观看|
永久视频免费|
91九色porny蝌蚪|
日韩欧美成人免费中文字幕|
香港三级韩国三级日本三级|
凸凹在线视频|
一女被九男前后双龙小说|
久久内在线视频精品mp4|
亚洲伊人久久网|
人人干人人爱|
四虎永久免费影院|
亚洲视频国产精品|
国产乱码免费卡1卡二卡3卡四卡|
三级黄在线播放|
日韩专区第一页|
日韩欧美亚洲乱码中文字幕
|
夜夜躁婷婷AV蜜桃视频|
亚洲国产天堂在线mv网站|
王者天下第五季在线观看|
一级免费大片|
牛牛在线视频|
亚洲精品一|
亚洲精品欧美综合|
亚洲综合日韩|
国产在线综合色视频|
亚洲免费网站在线观看|
四虎国产精品4hu永久|