多核軟件開發(fā)套件
圖3. 多個(gè)Linux 實(shí)例情況下的IPC 使用
本文引用地址:http://www.ex-cimer.com/article/148284.htm軟件開發(fā)工具
Linux MCSDK 可為用戶提供各種編譯器工具及調(diào)試選項(xiàng)。在編譯器方面,開源社區(qū)普遍使用的GCC 與二進(jìn)制工具可通過(guò)Mentor Embedded 提供給C66x 多核DSP。在信號(hào)處理代碼等應(yīng)用實(shí)例中,開發(fā)人員能夠使用TI 提供的編譯器獲得更高性能。另外,GCC 和TI 編譯器還具有互操作性,因此開發(fā)人員可選擇使用TI 編譯器或GCC 滿足不同部分的應(yīng)用代碼需求,而系統(tǒng)的其余部分則仍然使用GCC 構(gòu)建。這樣用戶就可高度靈活地進(jìn)行與代碼性能有關(guān)的利弊權(quán)衡。
在調(diào)試方面,用戶模式下的應(yīng)用可使用Mentor Embedded 提供的GDB。對(duì)內(nèi)核調(diào)試或者無(wú)操作系統(tǒng)的程序運(yùn)行,使用Mentor Embedded 提供的Debug Sprite 和TI 基于CCS 的調(diào)試器,就可實(shí)現(xiàn)基于JTAG 的調(diào)試。
TI C66x EVM 上的創(chuàng)造性演示體驗(yàn)
Linux MCSDK 的最后一個(gè)組件是創(chuàng)造性(OOB) 演示軟件與示例應(yīng)用。OOB 演示應(yīng)用包含Web 界面,可為用戶提供通過(guò)以太網(wǎng)連接PC 訪問(wèn)EVM 的控制面板,以便在啟動(dòng)后提供各種功能。在初期版本中,控制面板可提供一種簡(jiǎn)便的方法為用戶更新引導(dǎo)加載程序及內(nèi)核。后續(xù)版本將支持可展示和演示多核相關(guān)功能的其它基本功能,比如運(yùn)行BIOS 和/或Linux 的內(nèi)核間IPC 通信以及下載和引導(dǎo)多核應(yīng)用等。
BIOS MCSDK
BIOS 多核軟件開發(fā)套件(MCSDK) 以集成方式提供內(nèi)核基本構(gòu)建塊,可為在TI 高性能多核DSP 上使用SYS/BIOS 實(shí)時(shí)操作系統(tǒng)進(jìn)行應(yīng)用軟件開發(fā)提供便利。BIOS MCSDK 在統(tǒng)一可下載套件中綁定全部主要嵌入式軟件,并在TI 網(wǎng)站上免費(fèi)提供。BIOS MCSDK 配套提供的軟件均為預(yù)構(gòu)建庫(kù)源代碼,并按BSD 許可證進(jìn)行分銷。除了基礎(chǔ)軟件元素外,BIOS MCSDK 還提供使用這些組件的演示應(yīng)用,可展示客戶使用BIOS MCSDK 創(chuàng)建應(yīng)用的方法。
BIOS MCSDK 采用這種結(jié)構(gòu)進(jìn)行設(shè)計(jì)的驅(qū)動(dòng)因素之一,是為了簡(jiǎn)化各平臺(tái)間的設(shè)計(jì)流程以及對(duì)客戶在各個(gè)TI 器件之間進(jìn)行移植的考慮。TI 了解客戶可能有采用通用軟件支持不同器件的多種產(chǎn)品,因此移植策略應(yīng)重點(diǎn)考慮利用客戶在現(xiàn)有以及未來(lái)TI 器件上的軟件投資。例如,該流程可從在TI 評(píng)估平臺(tái)上運(yùn)行內(nèi)含TI 演示軟件開始,然后將該演示移植至客戶平臺(tái),最后在客戶平臺(tái)上導(dǎo)出客戶應(yīng)用。另外一個(gè)步驟就是將該應(yīng)用移植到新一代TI 架構(gòu)上(圖4)。
圖4. 將應(yīng)用移植到TI 新一代應(yīng)用SoC 平臺(tái)上
BIOS MCSDK 使用TI Code Composer StudioTM(CCS) 作為集成開發(fā)環(huán)境(IDE)。在軟件更新方面,BIOS MCSDK 使用Eclipse 的更新特性通過(guò)CCS 自動(dòng)發(fā)現(xiàn)并安裝新軟件。
軟件概覽
BIOS MCSDK 中的軟件組件(圖5)可分為下列類型:
.器件專用軟件驅(qū)動(dòng)器
.內(nèi)核目標(biāo)軟件
.平臺(tái)專用軟件
.演示與工具
圖5. BIOS MCSDK 的軟件組件
器件專用軟件驅(qū)動(dòng)器:該軟件套件包含芯片支持庫(kù)、低級(jí)驅(qū)動(dòng)器、平臺(tái)庫(kù)以及傳輸協(xié)議。該套件中的軟件重在簡(jiǎn)化對(duì)諸如加速器等器件硬件的訪問(wèn),并可作為應(yīng)用開發(fā)的最低層API。
平臺(tái)專用軟件:本軟件提供與TI 參考平臺(tái)配套使用的平臺(tái)專用功能的實(shí)施示例,其目的是用作客戶平臺(tái)開發(fā)活動(dòng)示例。
平臺(tái)庫(kù)可使用通用API 對(duì)平臺(tái)進(jìn)行抽象,簡(jiǎn)化各器件間的移植。它提供軟件實(shí)用程序來(lái)控制硬件部件(比如EEPROM、FLASH、UART)并完成平臺(tái)/器件初始化。
平臺(tái)庫(kù)API 由跨不同平臺(tái)的通用工具使用。這些工具包括EEPROM 寫入器、NAND/NOR 寫入器以及上電自檢等。因此,要為新器件或新平臺(tái)添加這些工具,應(yīng)隔離工作,以便添加專門用于該硬件的平臺(tái)庫(kù)。與其它組件一樣,該平臺(tái)庫(kù)具有單元測(cè)試應(yīng)用,可在將模塊移植到新平臺(tái)時(shí)使用。
內(nèi)核目標(biāo)內(nèi)容:該軟件集提供更高級(jí)功能,包括實(shí)時(shí)嵌入式操作系統(tǒng)、跨內(nèi)核以及跨器件通信的處理器間通信、基本網(wǎng)絡(luò)協(xié)議棧及協(xié)議、經(jīng)優(yōu)化的專用算法庫(kù)以及儀表工具等。
一項(xiàng)重要多核使能技術(shù)包含處理器間的通信,其不但可跨越使用共享存儲(chǔ)器的內(nèi)核及器件實(shí)現(xiàn)高效通信(內(nèi)核間通信),而且還可跨越SRIO 與PCIe 等外設(shè)實(shí)現(xiàn)器件間的通信。處理器間的通信機(jī)制和API 支持精細(xì)線程多核編程模型。此外,通用IPC 接口還可簡(jiǎn)化跨內(nèi)核和/或器件的應(yīng)用處理節(jié)點(diǎn)工作,滿足多核應(yīng)用設(shè)計(jì)與優(yōu)化的需求。
第二項(xiàng)重要使能技術(shù)是儀表工具,其對(duì)用戶掌控應(yīng)用執(zhí)行狀況具有至關(guān)重要的意義,可分析并優(yōu)化性能。BIOS MCSDK 包含系統(tǒng)分析器工具,其可定義一系列API,而API 則能夠以可移植方法將儀器代碼插入軟件,以便在各種TI 平臺(tái)中重復(fù)使用。某項(xiàng)應(yīng)用的圖形化輸出示例如下(圖6)
圖6. BIOS MCSDK 的系統(tǒng)分析器工具
演示與工具:該軟件集覆蓋多種器件,提供構(gòu)建于上述軟件的示例、演示以及工具。BIOS MCSDK 包含演示應(yīng)用,旨在作為示例展示如何使用基礎(chǔ)軟件構(gòu)建多核應(yīng)用。當(dāng)前版本中可供下載的演示包括用于展示BIOS MCSDK 部分重要組件的創(chuàng)造性應(yīng)用,以及用于顯示多核信號(hào)處理的影像處理應(yīng)用。
各種工具包括通用引導(dǎo)加載程序、FLASH 及EEPROM 寫入器、評(píng)估板上電自檢、多核/多影像引導(dǎo)工具,以及從不同模式(比如NAND/NOR、EMAC、SRIO)引導(dǎo)的簡(jiǎn)明示例等。
演示
創(chuàng)造性演示
BIOS MCSDK 的創(chuàng)造性演示是一種以CCS 項(xiàng)目方式提供的高性能DSP 實(shí)用程序應(yīng)用(HUA)。該演示可通過(guò)演示代碼及Web 頁(yè)面向用戶演示如何將自己的DSP 應(yīng)用連接至各種不同的BIOS MCSDK 軟件元素,其中包括SYS/BIOS、網(wǎng)絡(luò)開發(fā)套件(NDK)、芯片支持庫(kù)(CSL) 以及平臺(tái)庫(kù)。
評(píng)論