中文引用格式: 韋凱,洪澤. 針對(duì)VLIW DSP編譯器弊端及異常處理方案[J]. 電子技術(shù)應(yīng)用,2026,52(1):92-95.
英文引用格式: Wei Kai,Hong Ze. Aiming at VLIW DSP compiler defect and exception handling method[J]. Application of Electronic Technique,2026,52(1):92-95.
引言
隨著高性能處理器的飛速發(fā)展,在處理器內(nèi)核并行等方面也出現(xiàn)了VLIW(超長(zhǎng)指令字)和超標(biāo)量等多種架構(gòu)[1],其中編譯器如何高效發(fā)揮處理器性能也成了重重之重。其中高性能DSP通常采用VLIW構(gòu)架開(kāi)發(fā)[2-4]。目前許多公司和機(jī)構(gòu)開(kāi)始研發(fā)新型高性能DSP,如TI公司的C6678 DSP、Tensilica公司的ConnX545CK8-MAC處理器、CEVA的SensPro專用處理器[5-7]等。VLIW構(gòu)架利用編譯器可以將多條互相獨(dú)立的指令進(jìn)行打包(Pack)達(dá)到指令級(jí)別并行(ILP),而超標(biāo)量架構(gòu)需要增加亂序設(shè)計(jì)等硬件復(fù)雜度來(lái)保證指令的并行性。因此VLIW構(gòu)架的處理器對(duì)編譯器的性能要求更高。
VLIW架構(gòu)硬件設(shè)計(jì)簡(jiǎn)單,但是編譯器的工作量大大增加。編譯器需要實(shí)現(xiàn)靜態(tài)調(diào)度、流水優(yōu)化去找到N條互相獨(dú)立的指令組成指令包,進(jìn)而實(shí)現(xiàn)應(yīng)用程序并行化優(yōu)化[8]。程序并行優(yōu)化主要有循環(huán)展開(kāi)、軟件流水等手段。而循環(huán)展開(kāi)因子過(guò)小會(huì)導(dǎo)致部分硬件資源被閑置無(wú)法效率最大化,循環(huán)展開(kāi)因子過(guò)大又可能會(huì)導(dǎo)致資源沖突等問(wèn)題[9]。
針對(duì)VLIW程序并行優(yōu)化問(wèn)題,目前很多人提出了很多方法,例如:賀春林等人[10]提出的正確性粗細(xì)粒度差異化分析技術(shù),可快速準(zhǔn)確定位出測(cè)試用例的關(guān)鍵優(yōu)化選項(xiàng);池昊宇等人[11]提出的基于機(jī)器學(xué)習(xí)的編譯優(yōu)化方法,提升程序性能;趙宵磊等人[12]實(shí)現(xiàn)的面向飛騰邁創(chuàng)數(shù)字處理器代碼自動(dòng)生成框架,可提高代碼并行度。這些方法雖然有效,但依然不能完全保證編譯器編出的正確性。
本文將以TMS320C6000系列DSP為例進(jìn)行分析,針對(duì)VLIW編譯器的弊端提出一種結(jié)合內(nèi)核異常處理方案,在提升代碼優(yōu)化的同時(shí)保證運(yùn)行的正確性。其中TMS320C6000系列DSP采用VLIW構(gòu)架進(jìn)行設(shè)計(jì),具有8個(gè)并行操作的功能單元(L1、S1、D1、M1、L2、S2、D2、M2),最高可以完成單周期八指令并行運(yùn)算。
本文詳細(xì)內(nèi)容請(qǐng)下載:
http://m.ihrv.cn/resource/share/2000006919
作者信息:
韋凱,洪澤
(中國(guó)電子科技集團(tuán)公司第五十八研究所,江蘇 無(wú)錫 214035)

