SDIO(Secure Digital lnput and Output),即安全數(shù)字輸入輸出接口。SDIO總線協(xié)議是由SD協(xié)議演化而來(lái),它主要是對(duì)SD協(xié)議進(jìn)行了一些擴(kuò)展。
SDIO總線主要是為SDIO卡提供一個(gè)高速的I/O能力,并伴隨著較低的功耗。SDIO總線不但支持SDIO卡,而且還兼容SD內(nèi)存卡。支持SDIO的設(shè)備比如手機(jī)和相機(jī)不僅能支持SD卡,TF卡,隨著SDIO硬件設(shè)備的擴(kuò)充SDIO總線的外圍能夠支持更多的SDIO設(shè)備比如Bluetooth,WIFI,GPS,Camera sensor等,它們的識(shí)別過(guò)程跟SD卡類(lèi)似,主要差別是在SD協(xié)議的基礎(chǔ)上做了些擴(kuò)展。
圖1 SDIO總線通信原理
國(guó)產(chǎn)ARM + FPGA架構(gòu)介紹與優(yōu)勢(shì)
近年來(lái),隨著中國(guó)新基建、中國(guó)制造2025規(guī)劃的持續(xù)推進(jìn),單ARM處理器越來(lái)越難勝任工業(yè)現(xiàn)場(chǎng)的功能要求,特別是如今能源電力、工業(yè)控制、智慧醫(yī)療等行業(yè),往往更需要ARM + FPGA架構(gòu)的處理器平臺(tái)來(lái)實(shí)現(xiàn)例如多路/高速AD采集、多路網(wǎng)口、多路串口、多路/高速并行DI/DO、高速數(shù)據(jù)并行處理等特定功能,因此ARM + FPGA架構(gòu)處理器平臺(tái)愈發(fā)受市場(chǎng)歡迎。
因此,創(chuàng)龍科技一年前正式推出了基于全志T3 + 紫光同創(chuàng)Logos處理器設(shè)計(jì)的ARM + FPGA全國(guó)產(chǎn)工業(yè)核心板,國(guó)產(chǎn)化率達(dá)100%。
全志T3為準(zhǔn)車(chē)規(guī)級(jí)芯片,四核ARM Cortex-A7架構(gòu),主頻高達(dá)1.2GHz,支持雙路網(wǎng)口、八路UART、SATA大容量存儲(chǔ)接口,同時(shí)支持4路顯示、GPU以及1080P H.264視頻硬件編解碼。另外,創(chuàng)龍科技已在T3平臺(tái)適配國(guó)產(chǎn)嵌入式系統(tǒng)翼輝SylixOS,真正實(shí)現(xiàn)軟硬件國(guó)產(chǎn)化。 紫光同創(chuàng)Logos PGL25G/PGL50G FPGA在工業(yè)領(lǐng)域應(yīng)用廣泛,邏輯資源分別為27072/51360,與國(guó)外友商產(chǎn)品pin to pin兼容,主要用于多通道/高速AD采集或接口拓展。因其價(jià)格低、質(zhì)量穩(wěn)定、開(kāi)發(fā)環(huán)境易用等優(yōu)點(diǎn),受到工業(yè)用戶的廣泛好評(píng)。尤其是開(kāi)發(fā)環(huán)境,最快3天可完成從國(guó)外友商產(chǎn)品到紫光同創(chuàng)產(chǎn)品的切換。
圖2 ARM + FPGA典型應(yīng)用場(chǎng)景
國(guó)產(chǎn)ARM + FPGA的SDIO通信案例介紹 本章節(jié)主要介紹全志科技T3與紫光同創(chuàng)Logos基于SDIO的ARM + FPGA通信方案,使用的硬件平臺(tái)為:創(chuàng)龍科技TLT3F-EVM工業(yè)評(píng)估板。最終實(shí)測(cè)寫(xiě)速率為5.678MB/s,讀速率為5.744MB/s,誤碼率為0。 案例功能 該案例實(shí)現(xiàn)T3(ARM Cortex-A7)與FPGA的SDIO通信功能。 ARM端sdio_test案例實(shí)現(xiàn)SDIO Master功能,具體如下: (1)打開(kāi)SDIO設(shè)備節(jié)點(diǎn),如:/dev/generic_sdio0; (2)發(fā)送數(shù)據(jù)至SDIO總線,以及從SDIO總線讀取數(shù)據(jù); (3)校驗(yàn)數(shù)據(jù),然后打印讀寫(xiě)速率、誤碼率。 FPGA端dram_sdio案例實(shí)現(xiàn)SDIO Slave功能,具體如下: (1)FPGA將SDIO Master發(fā)送的數(shù)據(jù)保存至DRAM; (2)SDIO Master發(fā)起讀數(shù)據(jù)時(shí),F(xiàn)PGA從DRAM讀取數(shù)據(jù),并通過(guò)SDIO總線傳輸至SDIO Master。
圖3 ARM端程序流程圖
案例演示 評(píng)估板上電后,請(qǐng)先固化FPGA案例dram_sdio_xxx.sfc可執(zhí)行程序至FPGA端,F(xiàn)PGA需在ARM驅(qū)動(dòng)加載前完成初始化。再將ARM端可執(zhí)行文件sdio_test、"driver\bin\generic_sdio.ko"驅(qū)動(dòng)拷貝至評(píng)估板文件系統(tǒng)任意目錄下。 評(píng)估板上電啟動(dòng),在generic_sdio.ko驅(qū)動(dòng)所在路徑下,執(zhí)行如下命令加載驅(qū)動(dòng)。 Target#insmod -f generic_sdio.ko
圖4
執(zhí)行如下命令,可查看設(shè)備節(jié)點(diǎn)。 Target#ls /dev/generic_sdio0
圖5 執(zhí)行如下命令,可查詢程序命令參數(shù)。
Target#./sdio_test -h
圖6
執(zhí)行如下命令,ARM通過(guò)SDIO總線寫(xiě)入隨機(jī)數(shù)據(jù)至FPGA DRAM,然后讀出數(shù)據(jù)、進(jìn)行數(shù)據(jù)校驗(yàn),同時(shí)打印SDIO總線讀寫(xiě)速率和誤碼率,如下圖所示。
Target#./sdio_test -d /dev/generic_sdio0 -s 1024
參數(shù)解析: -d:設(shè)備節(jié)點(diǎn)路徑; -s:設(shè)置傳輸數(shù)據(jù)大小,單位為Byte。
圖7
本次測(cè)試SDIO總線通信時(shí)鐘頻率為最高50MHz,則理論通信速率為:(50 x 4 / 8)MB/s = 25MB/s。從上圖可知,則可以清晰看到實(shí)測(cè)速率結(jié)果。 備注:實(shí)測(cè)速率相比理論速率偏低,與ARM端驅(qū)動(dòng)和FPGA端邏輯實(shí)現(xiàn)、IP核配置有關(guān)。
|