TI的處理器平臺AM57XX是多核異構結構的SOC,片上有一到兩個ARM核(ARM CORTEX-A15)和一到兩個DSP(C66x)核。AM57xx處理器是高度集成的器件,可用于實現(xiàn)高性能和多媒體應用。板載加速器提供加速視覺和深度學習功能,支持多個工業(yè)以太網(wǎng)協(xié)議和視頻處理。多核SOC的軟件相對單核系統(tǒng)比較復雜,TI的AM57XX的軟件包是processor sdk。
SDK默認ARM 跑LINUX系統(tǒng),DSP跑OPENCL Monitor。ARM通過OPENCL接口使用DSP,DSP起到加速運算的作用,如下圖所示:
圖1,基于OPENCL的工作方式
很多客戶希望自主使用DSP,不用OPENCL框架。TI也提供了基于IPC的ARM DSP工作框架,如下圖所示:
圖2,基于IPC的工作方式
本文介紹圖2的工作方式和操作步驟。本文編譯工作都是在一臺LINUX PC上操作,建議操作系統(tǒng)使用UBUNTU1604或者1804版本。本文基于Processor SDK 06.01.00.08版本操作,其他版本SDK操作步驟大致相似。分步驟操作如下:
1,安裝AM57XX RTOS SDK和LINUX SDK。LINUX SDK下載鏈接如下: http://software-dl.ti.com/processor-sdk-linux/esd/AM57X/latest/index_FDS.html
點擊下面鏈接下載LINUX SDK
在UBUNTU系統(tǒng)下,首先通過chmod +x ….給下載文件一個可執(zhí)行權限,然后./xxx執(zhí)行這個安裝包,根據(jù)提示安裝到默認目錄。
同理,安裝LINUX版本RTOS SDK ,鏈接如下:http://software-dl.ti.com/processor-sdk-rtos/esd/AM57X/latest/index_FDS.html
在UBUNTU系統(tǒng)下,首先通過chmod +x ….給下載文件一個可執(zhí)行權限,然后./xxx執(zhí)行這個安裝包,根據(jù)提示安裝到默認目錄。
RTOS SDK安裝好后會在/home/xxx/ti目錄下出現(xiàn)如下文件:
2,安裝LINUX版本CCS
最新版本CCS下載鏈接:http://www.ti.com/tool/download/CCSTUDIO
下載這個文件到UBUNTU系統(tǒng):
下載解壓后會得到如下文件:
在UBUNTU桌面系統(tǒng)中(注意要登錄桌面,不要遠程控制臺登錄),通過控制臺執(zhí)行./ ccs_setup_9.2.0.00013.bin,然后根據(jù)提示把CCS安裝到/home/xxx/ti目錄。
注意:第一次打開CCS會問是否需要導入RTOS安裝的一系列組件,選擇“是”。
3,新建開發(fā)板啟動SD卡,編譯kernel。
準備一張空白SD卡,插入USB轉SD工具,將工具插入UBUNTU PC USB口。然后通過控制臺進入ti-processor-sdk-linux-am57xx-evm-06.01.00.08bin,執(zhí)行./ create-sdcard.sh。根據(jù)提示選擇SD卡,最終得到一張可以用于啟動的SD卡。
把這張卡插入AM5728 IDK,上電可以正常啟動LINUX系統(tǒng)。
在ti-processor-sdk-linux-am57xx-evm-06.01.00.08路徑下,執(zhí)行make linux可以把LINUX kernel重新編譯。
4,編譯IPC EXAMPLE。本文要編譯的DEMO路徑是:tiipc_3_50_04_07examplesDRA7XX_linux_elf。首先到ipc_3_50_04_07目錄編輯products.mak
設置TOOLCHAIN_LONGNAME,TOOLCHAIN_INSTALL_DIR,TOOLCHAIN_PREFIX,KERNEL_INSTALL_DIR等參數(shù)。
進入processor_sdk_rtos_am57xx_6_01_00_08目錄,編輯makefile如下:
在processor_sdk_rtos_am57xx_6_01_00_08目錄執(zhí)行./setupenv.sh && make ipc_example,如果一切順利可以在ipc_3_50_04_07examplesDRA7XX_linux_elf目錄下獲得編譯好的DEMO binary文件。
5,本文測試ex02_messageq這個DEMO,在DRA7XX_linux_elf目錄下找到如下文件復制到開發(fā)板上LINUX系統(tǒng)。
App_host是ARM LINUX跑的軟件,server_xxx分別是在DSP1/2,IPU1/2上面跑到軟件。把server_xx這幾個文件復制到/lib/firmware下面。刪除現(xiàn)有的dra7-dsp1-fw.xe66,dra7-dsp2-fw.xe66,dra7-ipu1-fw.xem4,dra7-ipu2-fw.xem4軟連接。然后重新建立軟鏈接:
ln -s server_dsp1.xe66 /lib/firmware/dra7-dsp1-fw.xe66
ln -s server_dsp2.xe66 /lib/firmware/dra7-dsp2-fw.xe66
ln -s server_ipu1.xem4 /lib/firmware/dra7-ipu1-fw.xem4
ln -s server_ipu2.xem4 /lib/firmware/dra7-ipu2-fw.xem4
重啟系統(tǒng)。
分別執(zhí)行:./app_host DSP1(DSP2,IPU1,IPU2),可以獲得如下輸入打印,說明運行成功:
6,進一步開發(fā)。進入./ti/pdk_am57xx_1_0_16/packages目錄,執(zhí)行source ./pdksetupenv.sh。修改pdkProjectCreate.sh 文件中的CCS路徑如下:
執(zhí)行“./pdkProjectCreate.sh AM572x all little all all dsp”創(chuàng)建DSP DEMO的CCS工程。
一切順利可以在.tipdk_am57xx_1_0_16packagesMyExampleProjects目錄創(chuàng)建一些CCS工程如下:
這些是基于TI RTOS的一些外設接口的DEMO軟件,他們可以導入到CCS進行編譯和調(diào)試,讀者可以把需要的DEMO移植到IPC EXAMPLE里,從而實現(xiàn)自己DSP軟件。
總結:本文介紹了如何編譯測試AM57XX平臺IPC的DEMO。首先需要安裝UBUNTU操作系統(tǒng)的PC,并在UBUNTU下安裝RTOS和LINUX SDK,然后安裝LINUX版本CCS。軟件安裝完畢,需要修改編譯腳本,先編譯IPC EXAMPLE,然后創(chuàng)建基于CCS的DSP RTOS DEMO。后續(xù)需要讀者把RTOS DEMO移植到IPC EXAMPLE從而實現(xiàn)自己的DSP軟件。
審核編輯:郭婷
-
處理器
+關注
關注
68文章
19170瀏覽量
229185 -
dsp
+關注
關注
552文章
7962瀏覽量
348294 -
ARM
+關注
關注
134文章
9056瀏覽量
366847
發(fā)布評論請先 登錄
相關推薦
評論