《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于多核處理器的彈載計(jì)算機(jī)低功耗設(shè)計(jì)研究
基于多核處理器的彈載計(jì)算機(jī)低功耗設(shè)計(jì)研究
2016年微型機(jī)與應(yīng)用第10期
景德勝1,2
(1.中航工業(yè)西安航空計(jì)算技術(shù)研究所,陜西 西安 710068; 2.中國民航大學(xué) 適航學(xué)院,天津 300300)
摘要: 低功耗是嵌入式計(jì)算機(jī)的發(fā)展趨勢,是彈載計(jì)算機(jī)設(shè)計(jì)要解決的關(guān)鍵問題。以基于多核處理器的彈載計(jì)算機(jī)為例,介紹了功率消耗產(chǎn)生的原理,從處理器、軟件設(shè)計(jì)、Cache設(shè)計(jì)和可編程邏輯設(shè)計(jì)等方面對影響彈載計(jì)算機(jī)系統(tǒng)功耗的因素進(jìn)行了分析,并提出了低功耗設(shè)計(jì)的方法和技巧。
Abstract:
Key words :

  景德勝1,2

 ?。?.中航工業(yè)西安航空計(jì)算技術(shù)研究所,陜西 西安 710068;2.中國民航大學(xué) 適航學(xué)院,天津 300300)

  摘要低功耗是嵌入式計(jì)算機(jī)的發(fā)展趨勢,是彈載計(jì)算機(jī)設(shè)計(jì)要解決的關(guān)鍵問題。以基于多核處理器的彈載計(jì)算機(jī)為例,介紹了功率消耗產(chǎn)生的原理,從處理器、軟件設(shè)計(jì)、Cache設(shè)計(jì)和可編程邏輯設(shè)計(jì)等方面對影響彈載計(jì)算機(jī)系統(tǒng)功耗的因素進(jìn)行了分析,并提出了低功耗設(shè)計(jì)的方法和技巧。

  關(guān)鍵詞:多核;彈載計(jì)算機(jī);嵌入式系統(tǒng);低功耗

0引言

  彈載計(jì)算機(jī)是實(shí)時(shí)嵌入式系統(tǒng),用于接收、處理導(dǎo)引系統(tǒng)的信號,控制導(dǎo)彈飛行實(shí)現(xiàn)對攻擊目標(biāo)的檢測、捕獲和跟蹤,是導(dǎo)彈制導(dǎo)系統(tǒng)的關(guān)鍵組成部分。隨著技術(shù)的發(fā)展,新一代導(dǎo)彈要具備攻擊高速、高機(jī)動目標(biāo)的能力,具備全方位攻擊的能力,同時(shí)對導(dǎo)彈的探測能力、反隱身和抗干擾能力都提出了更高的要求,使得彈載計(jì)算機(jī)需要處理的數(shù)據(jù)復(fù)雜度越來越大、實(shí)時(shí)性要求越來越高。

  彈載計(jì)算機(jī)因應(yīng)用環(huán)境特殊,安裝在導(dǎo)彈狹小的制導(dǎo)艙內(nèi),發(fā)射后由導(dǎo)彈上電池供電,對系統(tǒng)功耗和產(chǎn)品尺寸提出了嚴(yán)格要求。高性能、低功耗成為實(shí)現(xiàn)彈載計(jì)算機(jī)功能需求的基礎(chǔ)?;趩纹悩?gòu)體系架構(gòu)的多核處理器以其優(yōu)越的處理性能、靈活高速的存儲結(jié)構(gòu)和豐富的對外接口很好地解決了彈載計(jì)算機(jī)對高性能的要求,因此如何通過改進(jìn)彈載計(jì)算機(jī)軟硬件設(shè)計(jì)降低系統(tǒng)功耗,成為系統(tǒng)設(shè)計(jì)中需要研究和解決的重要問題。

1影響功耗的因素

  低功耗設(shè)計(jì)技術(shù)大致可以分為兩類:靜態(tài)技術(shù)和動態(tài)技術(shù)。靜態(tài)技術(shù)是指從系統(tǒng)構(gòu)造、工作原理方面著手,降低系統(tǒng)功耗,如選用低功耗器件,采用異步電路體系設(shè)計(jì)等;動態(tài)技術(shù)是通過改變系統(tǒng)的運(yùn)行行為來達(dá)到降低系統(tǒng)功耗的目的,如在系統(tǒng)工作過程中,根據(jù)運(yùn)行狀況將器件從工作狀態(tài)轉(zhuǎn)入睡眠狀態(tài)。彈載計(jì)算機(jī)由印制電路板、元器件和軟件等組成,主要功耗由元器件中的集成電路產(chǎn)生。

  CMOS反相器[1]是集成電路的重要組成部分,是所有集成芯片設(shè)計(jì)的核心,邏輯門、加法器、乘法器和微處理器等比較復(fù)雜電路的電氣特性都可通過分析組成其CMOS反相器的特性得到,然后通過邏輯門和加法器等部件特性來分析處理器等的特性,CMOS反相器對分析集成電路延遲時(shí)間和功耗有重要意義。

001.jpg

  圖1是一個(gè)靜態(tài)CMOS反相器的電路圖,晶體管是一個(gè)具有無限關(guān)斷電阻和有限導(dǎo)通電阻的開關(guān)。當(dāng)Vin為高并等于VDD時(shí),NMOS管導(dǎo)通、PMOS管截止,見圖2(a)等效電路,此時(shí)輸出Vout為0 V;當(dāng)Vin為低等于0 V時(shí),PMOS管導(dǎo)通、NMOS管截止,見圖2(b)等效電路,此時(shí)輸出Vout為高電平VDD,由此達(dá)到反相器的功能。

002.jpg

  圖2CMOS反相器開關(guān)模型CMOS 反相器的功耗包括動態(tài)功耗、靜態(tài)功耗和短路功耗等三部分,總功耗組成見式(1)。

  P=PD+PSC+PS=α·CL·V2DD·f+ISC·VDD+Ileak·VDD(1)

  其中:PD是動態(tài)功耗,與電源電壓VDD、負(fù)載電容CL、工作頻率f 和開關(guān)活動率α 相關(guān);PSC是短路功耗,在輸入電平處于VTN至(VDD + VTP)范圍內(nèi)時(shí)會使CMOS電路中的PMOS和NMOS晶體管都導(dǎo)通,產(chǎn)生短路電流ISC,從而引起開關(guān)過程中的附加短路功耗,短路功耗與(VDD - 2VT)有強(qiáng)烈依賴關(guān)系;PS是靜態(tài)功耗,理想情況下CMOS電路的靜態(tài)功耗是零,但實(shí)際處于截止態(tài)的MOS晶體管存在泄漏電流Ileak,會引起一定靜態(tài)功耗。在集成電路中,動態(tài)功耗是整個(gè)CMOS集成電路功耗的主要組成部分,占到90%以上,靜態(tài)下漏電流所產(chǎn)生的功耗占總功耗的比例不足1%,幾乎可以忽略。

  除集成電路占主要功耗外,有源開關(guān)器件在狀態(tài)轉(zhuǎn)換時(shí),其純電阻元件上、非理想元件等效電阻和印制板中連線等在工作中也會消耗一定能量。

2低功耗設(shè)計(jì)技術(shù)

  以使用TI多核處理器TMS320C6678的彈載計(jì)算機(jī)為例[2]。TMS320C6678整個(gè)系統(tǒng)由TeraNet將8個(gè)內(nèi)核、網(wǎng)絡(luò)協(xié)處理器、共享存儲管理器、多核導(dǎo)航器、外設(shè)及其他功能部件連接起來,處理單元由8個(gè)相同的內(nèi)核組成,互連網(wǎng)絡(luò)TeraNet為分層結(jié)構(gòu)的總線形式,且內(nèi)核通過共享存儲管理器共享容量為4 MB的共享存儲器,從體系結(jié)構(gòu)上看類似于并行計(jì)算機(jī)中的對稱多處理機(jī)(SMP),該架構(gòu)支持8位、16位、32位、64位、128位和256位數(shù)據(jù),可根據(jù)功耗和性能等因素折中選擇。

  2.1軟件設(shè)計(jì)

  為了在有效發(fā)揮多核處理器系統(tǒng)的運(yùn)算處理和數(shù)據(jù)傳輸能力的前提下,降低功耗,獲得多核處理器實(shí)際應(yīng)用時(shí)的最佳性能,要根據(jù)實(shí)際任務(wù)需要,考慮每個(gè)內(nèi)核之間的任務(wù)分配和信息傳輸[3]。多核處理器任務(wù)執(zhí)行主要有兩種運(yùn)行方式:主從方式和數(shù)據(jù)流方式。主從方式即一個(gè)核管理主任務(wù),由主任務(wù)對其他核任務(wù)進(jìn)行管理;數(shù)據(jù)流方式即任務(wù)按照數(shù)據(jù)的傳輸來運(yùn)行,由一個(gè)任務(wù)推動另外一個(gè)運(yùn)行,見圖3。主從方式7各個(gè)內(nèi)核工作情況差異較大,在完成相同任務(wù)情況下,無法通過降低整個(gè)處理器的時(shí)鐘頻率來降低處理器功耗;數(shù)據(jù)流方式每個(gè)圖3基于多核處理器軟件工作方式內(nèi)核工作情況比較統(tǒng)一,實(shí)時(shí)性高,與主從方式相比可適當(dāng)選用較低的時(shí)鐘頻率,降低整個(gè)處理器的功耗,但數(shù)據(jù)流方式要求對整個(gè)任務(wù)的協(xié)同和并行工作流程非常清晰。

003.jpg

  軟件設(shè)計(jì)中盡量使用中斷方式代替查詢方式,中斷方式下處理器可以什么都不做,甚至可以進(jìn)入等待模式或停止模式。而在查詢方式下處理器必須不停地訪問寄存器,造成很多額外功耗。用宏代替子程序,讀RAM會比讀FLASH帶來更大功耗,處理器在調(diào)用子程序時(shí),需要先保存現(xiàn)場,調(diào)用完畢后再恢復(fù)現(xiàn)場,彈棧壓棧至少帶來2次對RAM的操作,在編譯宏時(shí)會展開,處理器執(zhí)行時(shí)只是順序執(zhí)行指令,避免了彈棧壓棧操作,且片內(nèi)FLASH的大小完全可以滿足編譯后代碼量的增加,編程時(shí)工作量幾乎相同,低功耗性能突出的ARM在處理器設(shè)計(jì)上僅允許一次子程序調(diào)用。對于非必須實(shí)時(shí)計(jì)算的參數(shù),使用常量或查表的方式替代處理器的實(shí)時(shí)計(jì)算。使用移位運(yùn)算來代替乘除法運(yùn)算等也可有效降低處理器的功耗。

  2.2Cache設(shè)計(jì)

  數(shù)據(jù)的時(shí)間和空間局部性是內(nèi)存系統(tǒng)優(yōu)化設(shè)計(jì)研究的重要部分[4],核心問題在于內(nèi)存結(jié)構(gòu)的優(yōu)化無法適應(yīng)每個(gè)應(yīng)用程序。不同研究者關(guān)于Cache參數(shù)對處理器性能及功耗影響的相同分析結(jié)論為:Cache面積增大會降低失效率,但功耗會隨之增大;減小Cache面積帶來的高失效率和較大時(shí)間延遲依然會使整個(gè)系統(tǒng)功耗上升;增加Cache組相聯(lián)度會增加Cache命中率,進(jìn)而可以降低功耗。因此采用相關(guān)優(yōu)化算法讓Cache在運(yùn)行時(shí)動態(tài)可重構(gòu),可取得較優(yōu)的效能。彈載計(jì)算機(jī)應(yīng)用程序一旦確定,執(zhí)行相對單一和固定,考慮到彈載計(jì)算機(jī)的可靠性和執(zhí)行任務(wù)的特點(diǎn),對不同Cache空間的大小和組數(shù)的執(zhí)行應(yīng)用程序進(jìn)行命中率仿真測試,根據(jù)仿真結(jié)果配置合適的Cache空間和組數(shù),可降低Cache消耗的功率。

  2.3可編程邏輯設(shè)計(jì)

  可編程器件的選擇對功耗影響較大[5],例如寄存器傳輸級(RTL)器件比門級器件可以減少更多的功耗。RTL級的轉(zhuǎn)換可以在一個(gè)周期內(nèi)判斷出電路正在計(jì)算結(jié)果的部分是否為有用操作,被判定為在一個(gè)時(shí)鐘周期內(nèi)進(jìn)行無用操作的時(shí)序或組合電路會被采用的門控時(shí)鐘或睡眠模式關(guān)閉??删幊踢壿嬙O(shè)計(jì)時(shí),降低邏輯電路的時(shí)鐘頻率,僅保留必須在高速時(shí)鐘域運(yùn)行的邏輯電路;保持較小的邏輯電路面積,對無速度要求的邏輯電路進(jìn)行優(yōu)化設(shè)計(jì);將電壓降低到數(shù)據(jù)手冊規(guī)定的最小值;避免I/O管腳上拉、下拉沖突等方法也可達(dá)到降低功耗的目的。

  2.4印制板設(shè)計(jì)

  印制電路板是電子元器件的支撐體,是電氣連接的提供者。為了降低在印制板上的功率耗散,印制板設(shè)計(jì)在滿足電氣連接的穩(wěn)定性、電磁兼容和布局合理等要求的前提下,要對信號的走向及電源和地線網(wǎng)絡(luò)進(jìn)行整體規(guī)劃,布線時(shí)要求走線盡可能短,線寬要根據(jù)器件本身和周邊器件的情況進(jìn)行考慮,盡量寬,走線拐角最好大于90°,盡量設(shè)計(jì)為具有一定尺寸的均勻圓弧線,相鄰兩面走線應(yīng)避免相互平行,以減少寄生電容耦合。

  2.5其他設(shè)計(jì)

  集成電路未使用引腳的處理方法也會影響功耗的差異[6],例如在集成電路未使用輸入引腳上極易產(chǎn)生電荷積累,根據(jù)公式U=Q/C,式中Q為電量,C為電容,U為電壓,當(dāng)累積電荷達(dá)到一定程度時(shí),就會產(chǎn)生影響輸入引腳狀態(tài)的電壓,輸入引腳邏輯狀態(tài)變得不可控,當(dāng)電平處在邏輯0和1的過渡區(qū)時(shí),CMOS反相器的NMOS管和PMOS管都會導(dǎo)通,這將帶來很大的功耗浪費(fèi),因此一定要對集成電路的未使用引腳進(jìn)行上拉或下拉處理,此種處理方法也可使未使用的引腳處于一個(gè)固定邏輯狀態(tài)。

3總結(jié)

  低功耗對彈載計(jì)算機(jī)十分重要,相關(guān)設(shè)計(jì)研究眾多,隨著處理器技術(shù)的發(fā)展,研究對象逐漸以基于多核處理器的彈載計(jì)算機(jī)為主。各種低功耗設(shè)計(jì)在彈載計(jì)算機(jī)上應(yīng)用形式多樣,但主要集中在體系架構(gòu)設(shè)計(jì)、低功耗元器件的選用、供電管理和軟件優(yōu)化幾個(gè)方面。體系架構(gòu)設(shè)計(jì)應(yīng)以異步設(shè)計(jì)為主,對性能和時(shí)序要求嚴(yán)格的部分采用同步設(shè)計(jì);選擇采用高K/金屬柵和動態(tài)閾值等技術(shù)的CMOS器件,是降低功耗的最直接辦法;選用具有電源調(diào)節(jié)或低功耗模式的處理器等器件,可在不增加太大工作量的情況下,通過供電管理的方式降低功耗;軟件的設(shè)計(jì)優(yōu)劣對整個(gè)彈載計(jì)算機(jī)的運(yùn)行十分重要,合理調(diào)節(jié)各個(gè)部件的運(yùn)行狀況,在滿足性能要求的情況下可通過減少電路的活動時(shí)間降低功耗。

  彈載計(jì)算機(jī)應(yīng)用對象特殊,對性能、可靠性和實(shí)時(shí)性等有非常嚴(yán)格的要求,彈載計(jì)算機(jī)是否能良好工作直接決定導(dǎo)彈執(zhí)行任務(wù)的成敗,因此設(shè)計(jì)者必須根據(jù)實(shí)際應(yīng)用要求剪裁使用低功耗設(shè)計(jì)技術(shù)。

  參考文獻(xiàn)

 ?。?] RABAEY J M.數(shù)字集成電路—電路、系統(tǒng)與設(shè)計(jì)[M].周潤德,譯.北京:電子工業(yè)出版社,2010.

 ?。?] 汪安民,張松燦.TMS320C6000DSP實(shí)用技術(shù)與開發(fā)案例[M].北京:人民郵電出版社,2008.

  [3] 王江.多核系統(tǒng)中提升啟動速度之策略[J].電子技術(shù)應(yīng)用,2014,40(3):2528.

 ?。?] 何勇,肖斌,陳章龍,等. 一種低功耗的動態(tài)可重構(gòu)Cache設(shè)計(jì)[J]. 計(jì)算機(jī)應(yīng)用與軟件,2009,26(8):247250.

 ?。?] 張偉棟,李濤.一種基于FPGA的高集成度技術(shù)研究設(shè)計(jì)[J].微型機(jī)與應(yīng)用,2015,34(4):1113,25.

  [6] 張興,杜剛,王源,等. 超低功耗集成電路技術(shù)[J].中國科學(xué),2012,42(12):15441558.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。