ARM big.LITTLE系統(tǒng)技術(shù)應(yīng)用
摘要:詳述了ARM首款big.LITTLE系統(tǒng)。利用完全一致的系統(tǒng)結(jié)合Cortex-A15以及Cortex-A7,因而在現(xiàn)有的高性能移動平臺以外開啟了全新的可能。
本文引用地址:http://m.butianyuan.cn/article/147851.htm對于未來任何一種處理器,處理速度都將因?yàn)槭芟抻谏釂栴}而無法大幅躍進(jìn)。設(shè)備一旦達(dá)到熱障(thermal barrier)就會熔化,如果是移動電話,便會使設(shè)備的溫度上升造成用戶不適。除了物理層面的散熱問題外,能源效率也相當(dāng)差。若調(diào)校處理器使其速度加快,則所需耗能便會呈指數(shù)數(shù)增長,而為了增加最后一丁點(diǎn)的性能需要付出的成本非常高。過去,尺寸倍增代表著速度翻倍,但如今,面積倍增,速度卻只增加幾個百分點(diǎn),因此復(fù)雜度并不代表有效率,而這就是單一核心系統(tǒng)有所限制的原因之一。
如果無法加快單一核心的速度,那么就必須增加獨(dú)立核心的數(shù)量。這也有助于每個核心去應(yīng)對其被分配到的任務(wù)需求,而這也就是ARM big.LITTLE(大小核)處理器技術(shù)的貢獻(xiàn)所在。
big.LITTLE處理器技術(shù)要解決業(yè)界目前最嚴(yán)峻的挑戰(zhàn):通過提升性能和延長電池續(xù)航時間來拓展消費(fèi)者“始終在線、始終連接”的互聯(lián)移動體驗(yàn)。這種技術(shù)之所以能達(dá)成上述目標(biāo),是通過結(jié)合一個大(big)的多核心處理器與一個小(LITTLE)的多核心處理器,然后根據(jù)性能需求,以無縫的方式針對不同任務(wù)選擇合適的處理器。更重要的是這種動態(tài)選擇的動作,對于上層應(yīng)用軟件或中間件在處理器上的執(zhí)行絲毫沒有任何影響。
目前已應(yīng)用于市面上移動設(shè)備的 的big.LITTLE設(shè)計(jì),結(jié)合了高性能Cortex-A15多處理器集群與具有節(jié)能特色的Cortex-A7多處理器集群。這些處理器在架構(gòu)上是百分之百兼容且具有相同功能(均支持LPAE、虛擬化擴(kuò)充及NEON、VFP之類的運(yùn)作單元),無須另外調(diào)整即可讓針對其中一種處理器類型所編譯的軟件應(yīng)用程序順暢地應(yīng)用于另一款處理器上。
big.LITTLE 系統(tǒng)結(jié)構(gòu)
就高速緩存一致性(cache coherency)的維護(hù)而言,無論是同一處理器集群中的高速緩存、或是跨不同處理器集的高速緩存,皆保持了高速緩存數(shù)據(jù)的一致性。這種跨集群的一致性來自ARM CoreLink高速緩存一致性互連(CCI-400,也能提供ARM Mali-T604之類的圖形處理器﹝GPU﹞系統(tǒng)等組件的I/O一致性)。兩種集群的中央處理器,還可通過CoreLink GIC-400之類的共享中斷控制器互傳信號。
big.LITTLE 系統(tǒng)執(zhí)行模式
由于同一應(yīng)用程序不需要任何修改就可以同時在Cortex-A7和Cortex-A15上運(yùn)行,因此可以在隨機(jī)的情況下也能為某個應(yīng)用程序選擇正確的處理器。下列執(zhí)行模式便以此理論為基礎(chǔ):
● big.LITTLE轉(zhuǎn)移模式;
● big.LITTLE MP模式。
顧名思義,轉(zhuǎn)移模式支持不同類型處理器之間的內(nèi)容獲取和恢復(fù)。以中央處理器轉(zhuǎn)移來說,集群中每個中央處理器在另一個集群中都有對應(yīng)的中央處理器,而軟件內(nèi)容則以每個中央處理器為單位,隨機(jī)在不同的集群間轉(zhuǎn)移。如果集群中沒有正在運(yùn)轉(zhuǎn)中的中央處理器,便可關(guān)閉整個集群以及相關(guān)的二級緩存(L2 cache)電源。MP模式則將軟件堆棧分配到兩個集群中各個處理器上。所有的中央處理器可同時運(yùn)作,將系統(tǒng)性能提升到最高點(diǎn)。
big.LITTLE 轉(zhuǎn)移模式
轉(zhuǎn)移模式是動態(tài)電壓頻率調(diào)整(DVFS)等功耗/性能管理技術(shù)的延伸。轉(zhuǎn)移操作類似DVFS操作點(diǎn)的轉(zhuǎn)換。處理器上DVFS曲線的操作點(diǎn),會隨負(fù)載變化不同而來回移動。在當(dāng)前的處理器(或集群)已達(dá)到最高操作點(diǎn)時,如果軟件堆棧仍需要更高的性能,處理器(或集群)轉(zhuǎn)移就會發(fā)生。此時就會由另一個處理器(或集群)來執(zhí)行工作,這個處理器(或集群)的操作點(diǎn)也會隨著負(fù)載變化不同而來回變動。當(dāng)性能需求不再,可以再切換回之前的處理器(或集群)。
評論