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