電子工程網
標題: 國產RK3568J基于FSPI的ARM+FPGA通信方案分享 [打印本頁]
作者: Tronlong-- 時間: 2024-1-30 15:29
標題: 國產RK3568J基于FSPI的ARM+FPGA通信方案分享
[color=rgba(0, 0, 0, 0.9)]近年來,隨著中國新基建、中國制造2025規劃的持續推進,單ARM處理器越來越難勝任工業現場的功能要求,特別是如今能源電力、工業控制、智慧醫療等行業,往往更需要ARM + FPGA架構的處理器平臺來實現例如多路/高速AD采集、多路網口、多路串口、多路/高速并行DI/DO、高速數據并行處理等特定功能,因此ARM + FPGA架構處理器平臺愈發受市場歡迎。
ARM + FPGA架構能帶來性能、成本、功耗等綜合比較優勢,ARM與FPGA既可各司其職,各自發揮原本架構的獨特優勢,亦可相互協作處理更復雜的問題。ARM + FPGA常見的通信方式有PCIe、FSPI、I2C、SDIO、CSI等,今天主要介紹基于FSPI的ARM + FPGA通信方式。FSPI總線特點介紹
[color=rgba(0, 0, 0, 0.9)]FSPI(Flexible Serial Peripheral Interface)是一種高速、全雙工、同步的串行通信總線,在RK3568處理器中就有ESPI控制器,可用來連接FSPI設備。它具備如下特點:
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]- 支持串行NOR FLASH、串行NAND FLASH
[color=rgba(0, 0, 0, 0.9)]- 支持SDR模式
[color=rgba(0, 0, 0, 0.9)]- 支持一線、二線以及四線模式
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]相比PCIe而言,FSPI可較好實現“小數據-低時延”、“大數據-高帶寬”要求。另外,在與FPGA通信的時候,用戶往往更喜歡選用FSPI接口還有如下原因:
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]- 使用低成本FPGA即可實現高速通信,而具備PCIe接口的FPGA成本則成倍增長。
具備PCIe接口的FPGA功耗往往較大,而低成本FPGA。一般而言,低功耗器件的使用壽命也將更長。[color=rgba(0, 0, 0, 0.9)]
基于FSPI的ARM + FPGA通信實測數據分享
[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)]實測數據:寫速率20MB/s+,最高24MB/s,誤碼率0%;讀速率26MB/s+,最高30MB/s,誤碼率0%。
[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)]硬件方案二:創龍科技TL3568-EVM評估板(RK3568) + TLA7-EVM評估板(Artix-7)
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]實測數據:寫速率52.563MB/s,讀速率67.387MB/s,誤碼率高。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]備注:由于該測試受限于飛線連接方式,因此在150MHz通信時鐘頻率下測得誤碼率過高,測試結果僅供參考。
基于FSPI的ARM + FPGA通信案例詳解
[color=rgba(0, 0, 0, 0.9)]下文主要介紹基于瑞芯微RK3568J(硬件平臺:創龍科技TL3568-EVM評估板)與Xilinx Artix-7(硬件平臺:創龍科技TLA7-EVM評估板)的FSPI通信案例,按照創龍科技提供的案例用戶手冊進行操作得出測試結果。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]同時基于Linux和Linux-RT系統進行測試,得到“小數據-低時延”、“大數據-高帶寬”的測試數據。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]spi_rw案例
[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 BRAM進行讀寫測試。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]ARM端實現SPI Master功能,原理說明如下:
[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總線為雙線模式時,發送數據為單線模式,接收數據為雙線模式;當設置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)]a)FPGA將SPI Master發送的數據保存至BRAM。
[color=rgba(0, 0, 0, 0.9)]b)SPI Master發起讀數據時,FPGA從BRAM讀取數據通過FSPI總線傳輸至SPI Master。
[color=rgba(0, 0, 0, 0.9)]
圖2 ARM端程序流程圖
[color=rgba(0, 0, 0, 0.9)](2)測試結果
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]ARM通過FSPI總線(四線模式)寫入4Byte隨機數據至FPGA BRAM,然后讀出數據、進行數據校驗,同時打印FSPI總線讀寫速率和誤碼率。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]最終,本次測試設置FSPI總線通信時鐘頻率為24MHz,則四線模式的理論通信速率為:(24000000 / 1024 / 1024 / 8 x 4)MB/s ≈ 11.44MB/s,從下圖可知,本次實測寫速率為0.048MB/s,讀速率為0.182MB/s,誤碼率為0%。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]圖3
[color=rgba(0, 0, 0, 0.9)]備注:以上案例硬件采用飛線方式進行連接,需將FSPI總線通信時鐘頻率設置為較低的24MHz,并且需設置較小的測試數據量(會導致實測速率偏低),否則會產生誤碼現象。如使用創龍科技TL3568F-EVM評估板(RK3568J + Logos-2)硬件平臺進行測試,則無誤碼的通信速率將大幅提升。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]圖4
[color=rgba(0, 0, 0, 0.9)]備注:由于本次測試受限于飛線連接方式,因此在150MHz通信時鐘頻率下測得誤碼率過高,測試結果僅供參考。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]rt_spi_rw案例
[color=rgba(0, 0, 0, 0.9)](1)案例說明
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]案例功能:ARM端運行Linux-RT系統,基于FSPI總線對FPGA BRAM進行讀寫測試。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]ARM端實現SPI Master功能,原理說明如下:
[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總線為雙線模式時,發送數據為單線模式,接收數據為雙線模式;當設置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)]a)將SPI Master發送的數據保存至BRAM。
[color=rgba(0, 0, 0, 0.9)]SPI Master發起讀數據時,FPGA從BRAM讀取數據通過FSPI總線傳輸至SPI Master。
[color=rgba(0, 0, 0, 0.9)]
圖5 ARM端程序流程圖
[color=rgba(0, 0, 0, 0.9)](2)測試結果
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]ARM通過FSPI總線寫入4Byte隨機數據至FPGA BRAM,然后讀出數據、進行數據校驗,同時打印FSPI總線讀寫速率和誤碼率。最終,本次測試設置FSPI總線通信時鐘頻率為24MHz,則SPI四線模式理論通信速率為:(24000000 / 1024 / 1024 / 8 x 4)MB/s ≈ 11.44MB/s。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]從下圖可知,本次實測寫速率為0.179MB/s,發送最大耗時為46us,最小耗時為20us,平均耗時為20us,誤碼率為0%;讀速率為0.187MB/s,發送最大耗時為46us,最小耗時為19us,平均耗時為40s,誤碼率為0%。
[color=rgba(0, 0, 0, 0.9)]
[color=rgba(0, 0, 0, 0.9)]
備注:以上案例硬件采用飛線方式進行連接,需將FSPI總線通信時鐘頻率設置為較低的24MHz,并且需設置較小的測試數據量(會導致實測速率偏低),否則會產生誤碼現象。如使用創龍科技TL3568F-EVM評估板(RK3568J + Logos-2)硬件平臺進行測試,則無誤碼的通信速率將大幅提升。[color=rgba(0, 0, 0, 0.9)]tronlong.tmall.com!
[color=rgba(0, 0, 0, 0.9)]瑞芯微RK3568J技術交流群:567208221,歡迎加入!
-
1.jpg
(59.48 KB)
下載附件
2024-1-30 15:28 上傳
歡迎光臨 電子工程網 (http://www.qingdxww.cn/) |
Powered by Discuz! X3.4 |
主站蜘蛛池模板:
91久久精品国产91性色tv
|
四虎影视在线影院www
|
久久黄色一级视频
|
亚洲男人天堂网
|
四虎影院毛片
|
精品国产欧美精品v
|
极品国产一区二区三区
|
色在线国产
|
综合亚洲欧美日韩一区二区
|
激情影院成人区免费观看视频
|
日韩亚洲欧洲在线com91tv
|
国产高清精品毛片基地
|
女人张开腿让男人桶免费最新
|
四虎影视4hu4虎成人
|
精品无人区乱码在线观看
|
麻豆爱爱
|
99精品网站
|
好爽毛片一区二区三区四
|
黄色毛片在线
|
国产老色批视频在线观看应用
|
厚颜无耻有字幕在线观看
|
久久精品一区二区
|
免费aⅴ在线
|
国产精品毛片在线完整版的
|
欧美精品va在线观看
|
久久久精品免费国产四虎
|
一二三四免费高清视频社区
|
紫黑色的巨大又粗又硬视频
|
玖玖青草
|
亚洲男人的性天堂
|
91精品最新国内在线播放
|
国产精品手机在线观看
|
一卡二卡四卡视频不卡
|
理论片免费欧美片
|
成人夜色香网站在线观看
|
四虎必出精品亚洲高清
|
日韩精品第1页
|
国产成人在线视频网站
|
五月综合激情网
|
欧美日韩高清观看一区二区
|
韩国美女一级片
|