王時(shí)雨, 張盛兵, 黃小平, 常立博
(西北工業(yè)大學(xué) 計(jì)算機(jī)學(xué)院, 陜西 西安 710072)
近年來,隨著衛(wèi)星遙感成像技術(shù)以及深度學(xué)習(xí)技術(shù)的不斷發(fā)展,在軌遙感AI(artificial intelligence)平臺(tái)成為智能遙感領(lǐng)域的重要發(fā)展方向。星載合成孔徑雷達(dá)(SAR)系統(tǒng)中的SAR遙感圖像處理(GMTIm)和地面目標(biāo)指示(GMTI)在民用和軍事應(yīng)用中受到越來越多的關(guān)注[1]。
智能遙感圖像相關(guān)領(lǐng)域主要包括星載SAR實(shí)時(shí)成像和圖像的神經(jīng)網(wǎng)絡(luò)模型實(shí)時(shí)處理兩大任務(wù)模塊。目前,SAR成像的常用算法主要有CSA(chirp-scaling algorithm)[2]。CSA能夠確保成像的準(zhǔn)確度,而且可以適應(yīng)不同的雷達(dá)掃描模式,例如,聚束模式(spotlight)、條帶模式(stripmap)、掃描模式(scanSAR)[3]。并且CSA具有操作過程簡單,計(jì)算復(fù)雜度低,成像效率高的優(yōu)點(diǎn)。在SAR圖像目標(biāo)識(shí)別領(lǐng)域,深度學(xué)習(xí)表現(xiàn)出了突出的優(yōu)勢。卷積神經(jīng)網(wǎng)絡(luò)(CNN:convolution neural network)已廣泛應(yīng)用于在軌遙感平臺(tái)[4]。在分析遙感圖像的幾何、紋理和空間分布特征時(shí),CNN在計(jì)算效率和分類精度方面顯示出其突出的優(yōu)勢[5]。循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN:recurrent neural network)可用于時(shí)間變量相關(guān)的建模和預(yù)測,如LSTM(long short-term memory)[6]建立的水文模型。與此同時(shí),混合神經(jīng)網(wǎng)絡(luò)(H-NN:hybrid neural networks)結(jié)合了CNN和RNN 2種網(wǎng)絡(luò)模型特點(diǎn),優(yōu)勢更為明顯[7],并已經(jīng)在遙感領(lǐng)域取得了巨大的成就。
SAR成像算法經(jīng)過長期的發(fā)展基本已經(jīng)成熟穩(wěn)定,遙感領(lǐng)域中所應(yīng)用的神經(jīng)網(wǎng)絡(luò)模型也主要以CNN和RNN為主,或者H-NN模型結(jié)構(gòu)。針對(duì)遙感成像和智能處理中的大量并行計(jì)算,一般研究人員通常采用CPU+GPU的方案進(jìn)行計(jì)算加速[8],但是星上工作環(huán)境對(duì)在軌AI平臺(tái)低功耗的要求苛刻。根據(jù)多樣化計(jì)算任務(wù)和工作環(huán)境的應(yīng)用需求,我們借鑒領(lǐng)域?qū)S眉軜?gòu)(DSA:domain specific architecture)思想[9],將CSA與神經(jīng)網(wǎng)絡(luò)模型兩類計(jì)算任務(wù)和異步計(jì)算過程進(jìn)行統(tǒng)籌組織并協(xié)同處理,設(shè)計(jì)面向智能遙感圖像處理的領(lǐng)域?qū)S闷隙嗵幚砥魑⒓軜?gòu)(DS-CMP:domain specific chip multi-processors),實(shí)現(xiàn)CSA和神經(jīng)網(wǎng)絡(luò)模型的星上實(shí)時(shí)處理。目前,對(duì)于CSA和神經(jīng)網(wǎng)絡(luò)模型2類遙感任務(wù),研究人員只研究各分立計(jì)算的加速方案。印度空間研究組織(IRSO)開發(fā)了基于DSP多處理器的SAR成像專用處理器(NRTP),可實(shí)現(xiàn)SAR的近似實(shí)時(shí)成像[10]。JPL(jet propulsion laboratory)采用VLSI+SOC的硬件優(yōu)化方案,設(shè)計(jì)了機(jī)載SAR專用處理平臺(tái)[11]。
針對(duì)神經(jīng)網(wǎng)絡(luò)模型的專用加速研究中研究人員提出了眾多神經(jīng)網(wǎng)絡(luò)專用加速架構(gòu)。Eyeriss[12]是一種直接針對(duì)卷積運(yùn)算進(jìn)行優(yōu)化的神經(jīng)網(wǎng)絡(luò)加速器。ENVISION提出了一種基于DVAFS的能效可調(diào)CNN處理器[13]。DianNao處理器家族[14]包含了系列化的神經(jīng)網(wǎng)絡(luò)專用處理器:DianNao,DaDianNao,PuDianNao和ShiDianNao。DNPU[15]和Thinker[16]可用于H-NN專用加速。上述加速方案針對(duì)所屬應(yīng)用領(lǐng)域,各具優(yōu)勢,并且優(yōu)勢顯著。但在軌遙感AI平臺(tái)需要連續(xù)進(jìn)行SAR成像和圖像數(shù)據(jù)處理,此類分立加速方案并未考慮在軌智能系統(tǒng)中多遙感任務(wù)對(duì)系統(tǒng)級(jí)融合流水和同步并行計(jì)算的需求。
對(duì)SAR成像算法和神經(jīng)網(wǎng)絡(luò)模型的計(jì)算特征進(jìn)行分析,并以此設(shè)計(jì)了一款應(yīng)用于智能遙感AI平臺(tái)的領(lǐng)域?qū)S闷隙嗵幚砥魑⒓軜?gòu)DS-CMP(domain specific chip multi-processor)。DS-CMP芯片能夠高效處理CSA和神經(jīng)網(wǎng)絡(luò)模型的聯(lián)合計(jì)算任務(wù),并滿足星上在軌平臺(tái)的低功耗要求。
智能遙感系統(tǒng)主要包括SAR實(shí)時(shí)成像和神經(jīng)網(wǎng)絡(luò)實(shí)時(shí)圖像處理2類不同的計(jì)算任務(wù)。成像結(jié)束后,神經(jīng)網(wǎng)絡(luò)模型對(duì)生成圖像進(jìn)行處理,進(jìn)行實(shí)時(shí)圖像目標(biāo)識(shí)別分類。CSA成像算法精度較高,因此,本文將采用CSA作為DS-CMP架構(gòu)的主要研究對(duì)象。
chirp-scaling算法(CSA)是SAR成像領(lǐng)域廣泛使用的算法之一,該模型可以實(shí)現(xiàn)多種雷達(dá)掃描模式。FFT(IFFT)過程進(jìn)行16-bit量化操作,相位操作執(zhí)行單精度浮點(diǎn)運(yùn)算時(shí),與全過程單精度浮點(diǎn)成像相比精度損失極低[17]。
規(guī)模為A×R的SAR成像計(jì)算負(fù)載總量如公式1所示。
Lsum=10ARlog2A+10ARlog2R+18AR
(1)
如表1所示,我們對(duì)不同規(guī)模SAR成像過程的計(jì)算負(fù)載進(jìn)行統(tǒng)計(jì)。表中統(tǒng)計(jì)了A×R規(guī)模的SAR成像過程中各類計(jì)算負(fù)載和計(jì)算負(fù)載總量。
表1 A×R規(guī)模SAR成像計(jì)算負(fù)載統(tǒng)計(jì)
目前用于遙感領(lǐng)域的神經(jīng)網(wǎng)絡(luò)模型主要分為深度卷積神經(jīng)網(wǎng)絡(luò)(DCNN)[18]和循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)2類[6]。
表2列出了幾種常見CNN基礎(chǔ)模型的計(jì)算負(fù)載特征。從表4中可以看出,隨著CNN模型不斷加深,計(jì)算負(fù)載總量相差達(dá)到數(shù)十倍。
表2 CNN類計(jì)算負(fù)載統(tǒng)計(jì)
如表3所示,卷積神經(jīng)網(wǎng)絡(luò)模型中,隨著特征圖在模型中向后流動(dòng),卷積核及核內(nèi)通道數(shù)量迅速增加,特征圖尺寸急劇壓縮。
表3 VGG-11模型特征分析
對(duì)于RNN類網(wǎng)絡(luò),如表4所示,以LSTM為例,隨著網(wǎng)絡(luò)內(nèi)隱層數(shù)量的增加,計(jì)算負(fù)載總量差異達(dá)到十幾倍。
表4 LSTM計(jì)算負(fù)載統(tǒng)計(jì)(OPS)
從上述分析可知,星上智能遙感系統(tǒng)需要規(guī)劃多種計(jì)算資源和合理有效的計(jì)算調(diào)度策略,確保實(shí)時(shí)完成智能遙感領(lǐng)域的系統(tǒng)級(jí)多重聯(lián)合計(jì)算任務(wù)。
遙感智能系統(tǒng)需要進(jìn)行在軌實(shí)時(shí)成像和智能處理,領(lǐng)域?qū)S肅MP架構(gòu)需要高效支持成像處理和以DNN為代表的智能處理。除了大量的計(jì)算單元外,關(guān)鍵在于片上的數(shù)據(jù)組織和并行訪問。
星載遙感監(jiān)測往往需要對(duì)大尺寸(例如16 384×16 384)遙感圖像進(jìn)行特征提取。在以往SAR成像及目標(biāo)識(shí)別過程中,由于圖像尺寸很大,尤其是神經(jīng)網(wǎng)絡(luò)模型中各級(jí)特征圖規(guī)模逐級(jí)爆發(fā)式增長,片內(nèi)外數(shù)據(jù)訪存帶寬成為了智能系統(tǒng)多任務(wù)計(jì)算加速比的制約因素。
為了解決計(jì)算加速比天花板問題,本文提出邊成像邊處理的系統(tǒng)級(jí)流水處理方案,針對(duì)SAR圖像的多處理任務(wù)采用帶狀Tile化并行流水計(jì)算策略。
根據(jù)Tile化計(jì)算策略,SAR回波Tile的成像結(jié)果直接送入神經(jīng)網(wǎng)絡(luò)模型進(jìn)行處理,在神經(jīng)網(wǎng)絡(luò)模型中,多個(gè)圖像Tile在模型內(nèi)逐層流水處理,不需等待1幅完整圖像成像結(jié)束。將多個(gè)任務(wù)獨(dú)立的并行計(jì)算流水組織為系統(tǒng)級(jí)并行計(jì)算流水,建立SAR成像及圖像處理的系統(tǒng)級(jí)流水線。采用帶狀Tile化方案,多個(gè)連續(xù)SAR圖像Tile在DS-CMP內(nèi)并行流水處理,直至1幅SAR圖像的所有Tile在DS-CMP中成像及神經(jīng)網(wǎng)絡(luò)處理完畢。針對(duì)較大規(guī)模神經(jīng)網(wǎng)絡(luò),可靈活配置Tile尺寸或進(jìn)行行數(shù)據(jù)遞補(bǔ)方式以滿足神經(jīng)網(wǎng)絡(luò)后端對(duì)特征圖規(guī)模的計(jì)算需求。
采用帶狀Tile計(jì)算策略,可以將成像和神經(jīng)網(wǎng)絡(luò)處理打通,能夠有效地將成像以及深度神經(jīng)網(wǎng)絡(luò)層間的數(shù)據(jù)依賴關(guān)系隔離在Tile內(nèi),實(shí)現(xiàn)同一幅SAR圖像成像和處理流程的跨層并行流水計(jì)算。
如圖1所示,DS-CMP架構(gòu)內(nèi)主要包括SAR成像處理器(SIP:SAR imaging processor)、神經(jīng)網(wǎng)絡(luò)處理器(NCP:neurocomputing processor)、同步組織buffer陣列以及參數(shù)緩存、IO和存儲(chǔ)接口。在并行執(zhí)行SAR實(shí)時(shí)成像和遙感圖像智能處理的工作流程中,計(jì)算數(shù)據(jù)由SIP向NCP持續(xù)傳遞。為了確保成像輸出數(shù)據(jù)能夠并行流水送入NCP內(nèi),并避免數(shù)據(jù)交互過程中可能出現(xiàn)的數(shù)據(jù)秩序混亂,設(shè)計(jì)了數(shù)據(jù)緩存與組織可同步執(zhí)行的buffer網(wǎng)絡(luò)陣列以及多路buffer路由模塊,用來完成NCP計(jì)算前的數(shù)據(jù)準(zhǔn)備工作。設(shè)計(jì)了獨(dú)立的參數(shù)buffer,用來為計(jì)算過程提供相關(guān)計(jì)算參數(shù),從而保證計(jì)算單元的高效利用。
圖1 DS-CMP總體架構(gòu)框圖
SIP負(fù)責(zé)進(jìn)行SAR實(shí)時(shí)成像,頂層框架如圖2所示,主要由SAR數(shù)據(jù)計(jì)算陣列、數(shù)據(jù)混洗存儲(chǔ)buffer、指令寄存器和譯碼單元構(gòu)成,并行流水執(zhí)行SAR成像計(jì)算??紤]到精度和硬件效率,采用16位定點(diǎn)FFT運(yùn)算和單精度浮點(diǎn)相位校正運(yùn)算。陣列中設(shè)計(jì)了16×16規(guī)模的定點(diǎn)PE陣列用于FFT(IFFT)運(yùn)算、2×16規(guī)模的FPE用于單精度浮點(diǎn)相位校正計(jì)算。單個(gè)處理器內(nèi)設(shè)計(jì)有2個(gè)相同的異構(gòu)計(jì)算陣列,可同時(shí)執(zhí)行2個(gè)塊成像的計(jì)算任務(wù)。SIP內(nèi),針對(duì)成像處理的數(shù)據(jù)流特征,設(shè)計(jì)了專門的緩存結(jié)構(gòu)。成像結(jié)束后,圖像數(shù)據(jù)送入buffer網(wǎng)絡(luò)陣列中,進(jìn)行NCP計(jì)算前源數(shù)據(jù)的預(yù)組織處理。
圖2 SIP架構(gòu)框圖
NCP負(fù)責(zé)執(zhí)行神經(jīng)網(wǎng)絡(luò)模型計(jì)算,頂層框架如圖3所示。
圖3 NCP架構(gòu)框圖
主要包含3個(gè)關(guān)鍵部件:神經(jīng)計(jì)算陣列,處理器內(nèi)部buffer模塊和資源控制組件。設(shè)計(jì)了4個(gè)8×9的異構(gòu)PE神經(jīng)計(jì)算陣列,每個(gè)陣列內(nèi)包含4種異構(gòu)8-bit定點(diǎn)計(jì)算資源: PE、RPE、PPE和LPE。PE用于執(zhí)行神經(jīng)網(wǎng)絡(luò)中的MAC運(yùn)算,RPE用于對(duì)中間結(jié)果進(jìn)行累加并執(zhí)行ReLU激活操作。PPE在RPE的基礎(chǔ)上增加了池化計(jì)算單元。LPE是對(duì)PPE進(jìn)行功能擴(kuò)展,LPE可進(jìn)行中間值累加,ReLU函數(shù)運(yùn)算,池化操作以及查表運(yùn)算(Sigmoid和Tanh等)。通過對(duì)操作數(shù)線性量化后微調(diào),8-bit定點(diǎn)量化的網(wǎng)絡(luò)模型精度損失小于1%。以經(jīng)典混合神經(jīng)網(wǎng)絡(luò)LRCN為例分析,與16-bit定點(diǎn)量化方案相比,8-bit定點(diǎn)量化的LRCN網(wǎng)絡(luò)整體精度損失也僅有1.8%。NCP中設(shè)計(jì)了一種能夠?qū)υ磾?shù)據(jù)進(jìn)行靈活截取和拼接的多bank存儲(chǔ)結(jié)構(gòu),如圖4所示,每個(gè)bank用于緩存一行SAR圖像數(shù)據(jù)(即同一行流水?dāng)?shù)據(jù))。在FC和RNN計(jì)算過程中不需要進(jìn)行數(shù)據(jù)拼接。獲取計(jì)算指令后譯碼器對(duì)處理器內(nèi)各部件進(jìn)行調(diào)度。
智能遙感系統(tǒng)涉及的2類差異化工作任務(wù)中,數(shù)據(jù)流單向流動(dòng):SIP→NCP。我們?cè)O(shè)計(jì)了一個(gè)用于圖像Tile緩存和數(shù)據(jù)整合同步進(jìn)行的buffer陣列網(wǎng)絡(luò),如圖4所示,網(wǎng)絡(luò)內(nèi)包含5個(gè)buffer陣列通道。圖像數(shù)據(jù)通過橋梁送入NCP內(nèi)。單個(gè)Buffer通道結(jié)構(gòu)如圖4所示。bank分為拼接數(shù)據(jù)bank(BDB)和流水?dāng)?shù)據(jù)bank(SDB)。通過buffer內(nèi)的各種路由模塊負(fù)責(zé)數(shù)據(jù)訪存過程中的bank資源分配和數(shù)據(jù)拼接流水。
圖4 Chip buffer通道內(nèi)網(wǎng)絡(luò)結(jié)構(gòu)
SAR成像和神經(jīng)網(wǎng)絡(luò)計(jì)算整合處理過程作為系統(tǒng)級(jí)任務(wù)可進(jìn)行并行流水處理。SAR成像采用Tile化多行處理,行(列)間無數(shù)據(jù)依賴關(guān)系,可進(jìn)行多行(列)數(shù)據(jù)并行流水操作。成像輸出數(shù)據(jù)滿足神經(jīng)網(wǎng)絡(luò)特征圖的Tile分割需求時(shí),圖像數(shù)據(jù)即可送入NCP內(nèi)進(jìn)行處理,神經(jīng)網(wǎng)絡(luò)(如VGG-11模型)子任務(wù)計(jì)算過程中,計(jì)算結(jié)果逐級(jí)傳遞,由于存在池化操作,Tile長度逐漸縮短,單個(gè)Tile的數(shù)據(jù)規(guī)模減小,需進(jìn)行行間數(shù)據(jù)補(bǔ)償滿足卷積運(yùn)算需求。
進(jìn)行卷積神經(jīng)網(wǎng)絡(luò)計(jì)算過程時(shí),相鄰圖像數(shù)據(jù)塊之間涉及2-D數(shù)據(jù)重用,因此在圖像數(shù)據(jù)進(jìn)入NCP之前需進(jìn)行數(shù)據(jù)緩存以及Tile間數(shù)據(jù)拼接組織預(yù)處理,數(shù)據(jù)Tile拼接組織策略如圖5所示。SAR圖像規(guī)模為m×n,圖像矩陣逐行分段寫入同一個(gè)bank陣列內(nèi)。buffer網(wǎng)絡(luò)內(nèi)實(shí)現(xiàn)數(shù)據(jù)Tile的首尾數(shù)據(jù)重用,數(shù)據(jù)逐段送入同一bank中,根據(jù)重用需求,前一個(gè)數(shù)據(jù)段的最后2個(gè)數(shù)據(jù)需要拼接在后一個(gè)數(shù)據(jù)段的開頭后送入NCP內(nèi),確保卷積計(jì)算過程不會(huì)造成數(shù)據(jù)丟失。
圖5 圖像矩陣列間拼接緩存策略
例如圖5中,對(duì)第一行圖像數(shù)據(jù)進(jìn)行分段,第一段數(shù)據(jù)為(D0,y~D0,y+i),第二段數(shù)據(jù)為(D0,y+i+1~D0,y+j),以此類推進(jìn)行分段。2段數(shù)據(jù)按順序送入SDB的Bank0中,待拼接數(shù)據(jù)D0,y+i和D0,y+i-1送入BDB的Bank0中進(jìn)入拼接隊(duì)列。第一段數(shù)據(jù)送入NCP內(nèi),與其他相鄰bank內(nèi)的第一段數(shù)據(jù)完成行拼接,實(shí)現(xiàn)行數(shù)據(jù)重用后送入計(jì)算陣列;第二段數(shù)據(jù)送入NCP前將數(shù)據(jù)從拼接隊(duì)列中選取首尾拼接數(shù)據(jù)(D0,y+i和D0,y+i-1),與第二段數(shù)據(jù)路由拼接后(拼接后數(shù)據(jù):D0,y+i-1~D0,y+j)送入NCP內(nèi)buffer中,并與相鄰bank內(nèi)數(shù)據(jù)完成行拼接。后續(xù)數(shù)據(jù)訪存過程以此類推,直至計(jì)算結(jié)束。在FC/RNN計(jì)算過程中,數(shù)據(jù)訪存沒有重用過程,圖像數(shù)據(jù)分段后并行流水送入NCP內(nèi)進(jìn)行計(jì)算即可。
針對(duì)Tile化總體計(jì)算策略,以及對(duì)Tile規(guī)模有效性持續(xù)保持的需求,設(shè)計(jì)了一種帶狀Tile化的SAR圖像多處理任務(wù)并行流水計(jì)算策略,如圖6所示。
圖6 Tile化數(shù)據(jù)流組織及訪存策略
成像過程中,Tile規(guī)模為16×32,如圖7左上角部分所示,對(duì)回波Tile空間進(jìn)行逐行計(jì)算,首先對(duì)第一級(jí)首個(gè)連續(xù)的7個(gè)Tile進(jìn)行成像操作(IT-0-0~I(xiàn)T-0-6),第二次對(duì)第二行7個(gè)連續(xù)Tile進(jìn)行成像操作(IT-1-0~I(xiàn)T-1-6),直至最后一行Tile(IT-m-0~I(xiàn)T-m-6)成像處理完成,第一級(jí)成像計(jì)算結(jié)束,成像結(jié)果逐行送入數(shù)據(jù)預(yù)組織buffer陣列內(nèi);后續(xù)對(duì)第二級(jí)7個(gè)連續(xù)Tile(IT-0-7~I(xiàn)T-0-13)進(jìn)行成像操作,直至最后一行Tile(IT-m-7~I(xiàn)T-m-13)成像處理完成,第二級(jí)成像計(jì)算結(jié)束;以此類推,完成全部成像過程,各級(jí)成像結(jié)果逐行送入數(shù)據(jù)預(yù)組織buffer陣列內(nèi)。神經(jīng)網(wǎng)絡(luò)處理過程不需等待完整SAR圖像成像結(jié)束,對(duì)大規(guī)模SAR圖像數(shù)據(jù)采用Block化映射策略,當(dāng)前Block尺寸設(shè)為224×224(根據(jù)不同的應(yīng)用,Block可靈活劃分)。如圖7右半部分所示,預(yù)處理buffer內(nèi)的數(shù)據(jù)組織整理過程中,對(duì)SAR圖像Block進(jìn)行第二次Tile化,神經(jīng)網(wǎng)絡(luò)對(duì)Block內(nèi)多個(gè)數(shù)據(jù)Tile執(zhí)行層間流水處理,不需等待單個(gè)圖像Block數(shù)據(jù)全部緩存結(jié)束。以VGG-11為例,在神經(jīng)網(wǎng)絡(luò)模型Tile化流水計(jì)算過程中,第一級(jí)計(jì)算模塊的輸入數(shù)據(jù)劃分為28個(gè)帶狀Tile(尺寸為8×224);前3級(jí)輸入特征圖帶狀Tile劃分過程以此類推。由于不同卷積模塊級(jí)的輸入特征圖尺寸差異較大,因此每級(jí)輸入特征圖的帶狀Tile化方案不同。如圖7所示,第四級(jí)特征圖分為3個(gè)(2種尺寸)帶狀Tile,第五級(jí)輸入特征圖同理劃分。由于神經(jīng)網(wǎng)絡(luò)模型內(nèi)全部采用3×3規(guī)模的卷積窗口,因此Tile化卷積計(jì)算過程需要進(jìn)行Tile內(nèi)行間數(shù)據(jù)重用補(bǔ)償,Tile內(nèi)數(shù)據(jù)組織過程如圖8所示。
圖7 圖像處理Tile計(jì)算空間劃分
圖8 Tile內(nèi)數(shù)據(jù)組織過程
多個(gè)Tile能夠在多層網(wǎng)絡(luò)間進(jìn)行并行流水計(jì)算,并且Tile內(nèi)可并行執(zhí)行多卷核/多卷積通道運(yùn)算,從而實(shí)現(xiàn)SAR圖像在整個(gè)神經(jīng)網(wǎng)絡(luò)內(nèi)的并行流水處理過程。從表4中可以看出,網(wǎng)絡(luò)模型對(duì)特征圖進(jìn)行×2窗口規(guī)模進(jìn)行池化操作后,每級(jí)特征圖的輸出尺寸為原圖像尺寸的1/4。因此,Tile化流水計(jì)算過程中,經(jīng)過n(≥2)級(jí)池化后,特征圖未達(dá)到最后一級(jí),Tile尺寸已經(jīng)不能滿足計(jì)算要求。通過數(shù)據(jù)同步拼接,在整體計(jì)算過程中必須始終確保Tile規(guī)模的有效性。
在Synopsys仿真平臺(tái)下,采用28 nm工藝技術(shù),芯片額定1.0 V電壓條件下對(duì)DS-CMP進(jìn)行邏輯綜合和功耗分析。芯片仿真綜合數(shù)據(jù)如表5所示。在芯片性能評(píng)估過程中,系統(tǒng)工作頻率400 MHz,采用CSA成像算法以及VGG-11經(jīng)典網(wǎng)絡(luò)模型作為在軌遙感AI平臺(tái)的系統(tǒng)任務(wù)測試基準(zhǔn)。
表5 DS-CMP芯片綜合結(jié)果
在飽和工作狀態(tài)下,對(duì)多幅SAR圖像執(zhí)行并行流水處理過程,得出每幅圖像的平均處理時(shí)間,以及單幅圖像處理過程的平均吞吐率。
通過不同規(guī)模成像過程對(duì)SAR成像處理器性能進(jìn)行測試。成像過程采用Tile化流水計(jì)算過程,多行(列)回波數(shù)據(jù)并行處理。從表6中可以看出處理器的峰值吞吐率為115.2 GOPS,隨著成像規(guī)模的增加,成像加速效果明顯。16 384×16 384規(guī)模的SAR成像時(shí)間為8.2 s,常規(guī)雷達(dá)(例如:高分-三衛(wèi)星)執(zhí)行16 384×16 384規(guī)模的數(shù)據(jù)采集時(shí)間為8 s,因此所提出的處理器架構(gòu)方案能夠?qū)崿F(xiàn)SAR實(shí)時(shí)成像處理。
表6 成像處理器性能分析
表7統(tǒng)計(jì)了神經(jīng)網(wǎng)絡(luò)模型處理不同規(guī)模SAR圖像的完整計(jì)算時(shí)間。從表7中可以看出,由于目前針對(duì)神經(jīng)網(wǎng)絡(luò)處理,計(jì)算資源相對(duì)充裕,因此與成像過程相比,相同SAR圖像規(guī)模的神經(jīng)網(wǎng)絡(luò)處理時(shí)間要普遍稍小于SAR成像時(shí)間。
遙感圖像的多處理任務(wù)作為系統(tǒng)級(jí)任務(wù),實(shí)現(xiàn)實(shí)時(shí)計(jì)算過程需對(duì)整體系統(tǒng)任務(wù)進(jìn)行協(xié)同調(diào)度。根據(jù)表6和表7分析可以看出,在當(dāng)前的配置下,SAR成像時(shí)間主導(dǎo)系統(tǒng)的全部任務(wù)處理時(shí)間。如表8所示,針對(duì)16 384×16 384規(guī)模,多任務(wù)計(jì)算過程耗時(shí)8.6 s,滿足實(shí)時(shí)智能處理的需求。
表7 神經(jīng)網(wǎng)絡(luò)處理器陣列性能分析
表8 DS-CMP系統(tǒng)性能綜合分析
在星載SAR智能遙感處理過程中,面對(duì)不同的應(yīng)用需要選擇不同的神經(jīng)網(wǎng)絡(luò)模型,DS-CMP架構(gòu)需要具備可差異化擴(kuò)展實(shí)現(xiàn)的能力。本文采用CSA以及經(jīng)典型經(jīng)網(wǎng)絡(luò)模型VGG-11作為DS-CMP架構(gòu)的主要研究對(duì)象,同時(shí)也對(duì)規(guī)模較大或規(guī)模較小的神經(jīng)網(wǎng)絡(luò)模型(分別以VGG-19和AlexNet為例)進(jìn)行了分析。根據(jù)當(dāng)前DS-CMP架構(gòu)的配置方案,處理較小規(guī)模的神經(jīng)網(wǎng)絡(luò)模型,智能遙感系統(tǒng)任務(wù)的處理時(shí)間能夠滿足星載實(shí)時(shí)性的需求,如表9所示,SAR成像時(shí)間占主導(dǎo),但是架構(gòu)內(nèi)的神經(jīng)網(wǎng)絡(luò)處理器陣列處于不飽和工作狀態(tài),此時(shí)DS-CMP處理架構(gòu)的能效較低。相反,處理較大規(guī)模的神經(jīng)網(wǎng)絡(luò)模型,神經(jīng)網(wǎng)絡(luò)模型的處理時(shí)間成為系統(tǒng)任務(wù)處理時(shí)間的主導(dǎo)因素,此刻DS-CMP架構(gòu)的資源配置方案已無法滿足系統(tǒng)任務(wù)處理的實(shí)時(shí)性需求,如表10所示,表明需要增加NCP規(guī)模。不同神經(jīng)網(wǎng)絡(luò)模型的規(guī)模差異較大,因此可以根據(jù)不同神經(jīng)網(wǎng)絡(luò)模型的計(jì)算負(fù)載區(qū)間,在確保星上智能遙感任務(wù)實(shí)時(shí)性需求和芯片高能效的前提下,合理確定DS-CMP架構(gòu)內(nèi)的處理資源配置,實(shí)現(xiàn)DS-CMP處理器。在上述的差異化擴(kuò)展過程中,DS-CMP架構(gòu)、多任務(wù)間的數(shù)據(jù)組織和流水處理過程不需進(jìn)行重大調(diào)整。
表9 DS-CMP差異化擴(kuò)展分析(較小型神經(jīng)網(wǎng)絡(luò)模型)
表10 DS-CMP差異化擴(kuò)展分析(較大型神經(jīng)網(wǎng)絡(luò)模型)
本文提出了一種可執(zhí)行多任務(wù)協(xié)同并行處理的片上異構(gòu)多處理架構(gòu)(DS-CMP),該架構(gòu)用于航天領(lǐng)域在軌遙感AI平臺(tái)的多任務(wù)實(shí)時(shí)處理,如SAR成像和遙感圖像目標(biāo)識(shí)別。提出了一種針對(duì)分立計(jì)算任務(wù)Tile化的計(jì)算策略,支持在軌多任務(wù)同步并行流水計(jì)算,同一幅圖像的成像計(jì)算過程和神經(jīng)網(wǎng)絡(luò)模型計(jì)算過程可并行流水執(zhí)行。本文以目前星載SAR最常用的CSA成像算法以及VGG-11神經(jīng)網(wǎng)絡(luò)模型為例,對(duì)多任務(wù)協(xié)同處理架構(gòu)進(jìn)行評(píng)估,執(zhí)行規(guī)模為16 384×16 384的遙感成像與處理綜合計(jì)算任務(wù)耗時(shí)8.6 s,芯片整體功耗1.83 W,滿足在軌遙感AI平臺(tái)對(duì)實(shí)時(shí)性和低功耗的嚴(yán)格要求。
本文所設(shè)計(jì)的面向智能遙感領(lǐng)域的高能效DS-CMP架構(gòu),具有靈活的可擴(kuò)展性。針對(duì)不同的成像規(guī)模區(qū)間和神經(jīng)網(wǎng)絡(luò)算法模型,確定SAR成像子處理模塊和NCP陣列的合理規(guī)模,可以擴(kuò)展衍生出系列化的智能遙感處理芯片,DS-CMP架構(gòu)、多任務(wù)間的數(shù)據(jù)組織和流水處理過程不變。從而解決SAR成像模型和神經(jīng)網(wǎng)絡(luò)模型不同組合方式的處理需求。