透過DSP系統(tǒng)模型建立和設(shè)定實現(xiàn)最佳模擬
CEVA-X系列采用的創(chuàng)新架構(gòu),充分利用可能的設(shè)計變數(shù)來控制整體性能。CEVA-X1620是CEVA-X核心系列的第一款產(chǎn)品,具有先進(jìn)的平行架構(gòu)(Parallel Architecture),在一個機器周期中可執(zhí)行多達(dá)八條指令。對于這類先進(jìn)架構(gòu),高效能及有效的硬件資源使用更是格外重要。此外,CEVA-X整合了完整的存儲器系統(tǒng),負(fù)責(zé)階層(Hierarchy)存儲器管理,包括直接存儲器存?。―MA)控制器、板上(On Board)快取存儲器、寫入緩沖器、內(nèi)部及外部存儲器、存儲器管理及仲裁器。利用這種廣泛的功能集,透過完整精確的模擬環(huán)境和先進(jìn)的設(shè)定(Profiling)能力,即可簡易地最佳化軟件應(yīng)用。
透過模擬減少時間、降低成本、提
高性能
對基于DSP/即時(Real Time)軟件發(fā)展而言,模擬環(huán)境非常重要,有幾項效益如下:
■可見性/透明性
硬件內(nèi)部構(gòu)件和硬件邏輯的工作可被監(jiān)控,即使它們不是硬件介面的一部分,但是這在實際的硬件環(huán)境中往往是不可見的。瞭解背后的情況是解決問題和提高性能的關(guān)鍵。
■除錯
模擬環(huán)境提供了硬件本身不支援的額外除錯功能。因此,在只提供有限可見性的硬件上運行所有程序(在缺乏精確模擬環(huán)境時),意味著不得不利用更多的資源及更長的除錯時間。
■靈活性
亦即在提交給最終系統(tǒng)架構(gòu)之前檢查若干系統(tǒng)佈局(Layout)和場景(Scenario)的能力。要實現(xiàn)最佳性能,全都是利用硬件環(huán)境參數(shù)及運行其上的軟件進(jìn)行反覆試驗的結(jié)果。對于所選擇的具體裝置,不可能總是準(zhǔn)確預(yù)測到對系統(tǒng)的影響。
■時間
在能夠執(zhí)行所有實際測試(run-time)之前,不用損失時間和增加特殊硬件費用,就能實現(xiàn)平行硬件和軟件的開發(fā)。
預(yù)先計畫 即時模擬
CEVA開發(fā)出的模擬和設(shè)定環(huán)境,完全採用軟件建立模型,再加上廣泛的設(shè)定能力,可應(yīng)用于諸多設(shè)計領(lǐng)域,對系統(tǒng)架構(gòu)師和DSP軟件發(fā)展人員提供很大幫助。這種方法和環(huán)境可顯著地提高系統(tǒng)性能,減少開發(fā)時間。全面的模型建立環(huán)境,意味著CEVA-X1620實現(xiàn)方案能夠以多種模式用于不同的開發(fā)階段或不同開發(fā)目的。
圖一:CEVA的模擬環(huán)境除錯工具
ISS和CAS模擬模式
最初支援的是類似于標(biāo)準(zhǔn)模擬解決方案的基本指令集模擬(Instruction Set Simulation,ISS)模式。在這種模式中,每一條指令都被當(dāng)作不可分割的階段來執(zhí)行。該模式執(zhí)行速度非???,便于軟件發(fā)展。
周期精確模擬(CAS)是更先進(jìn)的模擬模式。在這種模式中,架構(gòu)的行為被完全模擬,包括所有的管線級。在檢查精度或硬件驗證時,該模式對完整的系統(tǒng)模擬非常重要,屆時模擬器可以當(dāng)作內(nèi)核模組,很方便地模擬真實硬件的功能。除了周期精確能力之外,全部存儲器子系統(tǒng)(MSS)都被建立成模型,可對整個系統(tǒng)進(jìn)行共同模擬。這樣一來,由于軟件與硬件的交互作用,便能夠?qū)崿F(xiàn)軟件行為的真實精確的模擬。因這種模式包括了所有的MSS模組,故可對所有的存儲器層次進(jìn)行除錯,包括快取存儲器、寫入緩沖器、內(nèi)部外部存儲器??稍谀M中分析不同存儲器的布局情況,從而觀察在每一種情況下,在演算法執(zhí)行期間存儲器的存取和沖突情形。
完整設(shè)定 針對模擬環(huán)境自動分析
除了上述的模擬能力之外,CEVA還提供針對C-level導(dǎo)向的應(yīng)用程式及存儲器的設(shè)定器。這種設(shè)定器可對整個模擬環(huán)境進(jìn)行自動分析。
第一個功能是在基本的ISS模式中提供完整的C-level設(shè)定。經(jīng)由找出潛在的問題,比如應(yīng)用核心、瓶頸和最耗費程式碼執(zhí)行的部分,藉此有效提高軟件性能。這項工具能夠減少關(guān)鍵功能的時脈消耗和非關(guān)鍵功能的程式碼大小。應(yīng)用程式設(shè)定在C函數(shù)上來自動執(zhí)行,不需要修改任何代碼,同時還可用于組合語言程式。
接下來,應(yīng)用程式設(shè)定可依據(jù)CAS和MSS模擬器來被執(zhí)行,以便根據(jù)每一個功能的存儲器映射和存儲器沖突來獲得它真正的應(yīng)用性能。
最后,在應(yīng)用程式以CAS和MSS模式被設(shè)定及有關(guān)功能已被確定后,設(shè)定器給出了完整的存儲器使用資訊,其中包括快取存儲器使用和沖突、每項功能的停滯概要、代碼存儲器停滯、資料存儲器停滯、代碼存儲器沖突及資料存儲器沖突的相關(guān)資訊。這種全面的MSS設(shè)定資訊,可指導(dǎo)使用者針對應(yīng)用中的每一項特定功能最佳化存儲器使用。
目前CEVA的多媒體和音頻開發(fā)團(tuán)隊,已成功利用上述模型建立和設(shè)定流程來精簡某些演算法功能的時脈消耗和程式碼,同時也協(xié)助采用此核心的客戶晶片組設(shè)計提升效能。
評論