兼顧處理器效能與功耗 大小核設計架構突起
大小核(big.LITTLE)晶片設計架構正快速崛起。在安謀國際(ARM)力推下,處理器業(yè)者已開始大量導入big.LITTLE設計架構,期將不同運算任務分配到最合適的核心處理,藉此發(fā)揮最佳效能與節(jié)能效果,助力行動裝置制造商打造更吸晴的產(chǎn)品。
本文引用地址:http://butianyuan.cn/article/201609/303464.htmbig.LITTLE晶片設計架構將快速崛起。ARM與全球IC設計業(yè)者正積極合作推廣big.LITTLE技術,預期今年下半年將有大量基于此架構的行動處理器問世;其透過將各種運算任務分配到最合適的核心做處理,藉此發(fā)揮最佳效能與節(jié)能效果,有助打造下世代行動裝置。
近年行動領域出現(xiàn)重大變革,智慧型手機已成為消費者聯(lián)網(wǎng)生活的主要工具,然而,這其中涉及各種高效能運算任務如高速網(wǎng)頁瀏覽、導航與游戲,以及語音通話、社群網(wǎng)路和電子郵件服務等效能需求較低的「持續(xù)運作,永遠連線」后臺任務。
與此同時,平板裝置也正重新定義運算平臺,這些創(chuàng)新設計轉變均為消費者打造與內容互動的全新方式,將原本只限于網(wǎng)路共享裝置(Tethered Device)的功能導入行動領域,創(chuàng)造出真正的智慧型新世代運算。
兼顧晶片效能與功耗 big.LITTLE架構崛起
因應電子裝置快速變革,半導體摩爾定律(Moore’s Law)又將如何往下發(fā)展?過去預測晶片效能每隔18個月就會倍增,直到電晶體數(shù)量從數(shù)千增加到數(shù)十億個,但若仔細觀察單一處理器,就會發(fā)現(xiàn)效能幾乎停滯不前,這是因為系統(tǒng)能消耗的電量已達到高峰。
對于未來任何一種處理器,處理速度都將受限于散熱問題而無法大幅躍進。任何裝置一旦達到熱障(Thermal Barrier)就會開始融化,如果是行動電話,便會使裝置溫度上升造成使用者不適。除物理層面的散熱問題外,能源效率也會變得相當差,若調校處理器實作使其速度加快,則所需耗能便會倍數(shù)增長,而為增加最后這一丁點的效能,后續(xù)導熱設計的成本真的很高。
在過去,處理器核心面積倍增代表速度倍增,但是現(xiàn)在面積倍增,速度卻只增加幾個百分點,因此復雜度并不代表有效率,這就是單一核心系統(tǒng)有所限制的原因之一。如果無法加快單一核心速度,就必須增加獨立核心的數(shù)量,這也有助于每個核心去應對其被分配到的任務需求,有鑒于此,安謀國際(ARM)遂于2012 年提出big.LITTLE處理器架構(圖1)。
圖1 big.LITTLE系統(tǒng)結構示意圖
big.LITTLE主要目的在于解決IC設計業(yè)界眼前最大挑戰(zhàn),也就是同時提升晶片效能、并延長裝置續(xù)航力,以延伸消費者「持續(xù)運作,永遠連線」的行動體驗。該技術之所以能達成上述目標,系結合一個大(big)的高效能處理器核心與一個小(LITTLE)的低功耗處理器核心,然后根據(jù)效能需求,以無縫連接方式選擇合適的處理器。更重要的是,這種動態(tài)分配任務的動作,對于上層應用軟體或中介軟體在處理器上的執(zhí)行絲毫沒有任何影響。
目前已應用于市面上行動裝置的big.LITTLE設計,結合高效能Cortex-A15多處理器叢集(Cluster)與具有節(jié)能特色的 Cortex-A7多處理器叢集。這些處理器在架構上百分之百相容,且均支援40位元實體地址擴展LPAE、虛擬化擴充及NEON、VFP之類的運作單元,無須另外調整即可讓針對其中一種處理器類型所編譯的軟體應用程式,順利于另一款處理器上運作。
因應任務需求 處理器核心無縫切換
big.LITTLE系統(tǒng)結構就快取記憶體一致性(Cache Coherency)的維護而言,無論是同一處理器叢集中的快取記憶體,或是跨不同處理器叢集的快取記憶體,皆保持快取記憶體資料的一致性。這種跨叢集的一致性來自ARM CoreLink快取同調匯流架構(CCI-400,也能提供ARM Mali-T604之類的繪圖處理器(GPU)系統(tǒng)等元件的I/O一致性)。
兩種叢集的中央處理器,還可透過CoreLink GIC-400之類的共用中斷控制器互傳訊號。其中,系統(tǒng)包含big.LITTLE切換和big.LITTLE MP(Multiple-Processor)兩種執(zhí)行模式,由于同一應用程式可采用Cortex-A7或Cortex-A15而毋須調整,因此可將應用程式的任務隨機對應到正確的處理器上。
切換模式是讓不同處理器類型在切換時能進行軟體內容的擷取與回覆。以CPU切換來說,叢集中每個CPU在另一個叢集中都有對應的CPU,而軟體內容則以CPU為單位,隨機在不同的叢集間切換;如果叢集中沒有正在運轉的CPU,便可關閉整個叢集及相關的L2快取。
同時,此模式也是動態(tài)電壓頻率調整(DVFS)等能源/效能管理技術的延伸。切換動作類似DVFS操作點的轉換,由于處理器上DVFS曲線的操作點,會隨負載變化不同而來回變動,當既有的處理器(或叢集)已達到最高操作點,而軟體堆疊仍需更高效能,處理器切換動作就會發(fā)生,改由另一個處理器執(zhí)行工作,這個處理器的操作點也會隨著負載變化不同而來回變動(圖2)。當效能需求不再,可換回之前的處理器(或叢集)。
圖2 big.LITTLE切換模式DVFS曲線圖
顯而易見,一致性是達到加速切換所需時間的關鍵所在,因為它能讓已經(jīng)儲存在離埠處理器(Outbound Processor)的狀態(tài),在入埠處理器(Inbound Processor)上窺探與回覆,而不必透過主記憶體的存取。
此外,由于離埠處理器的L2有快取一致性的功能,當任務切換時,可以透過窺探資料值的方式,改善入埠處理器的快取暖機時間,此時L2快取記憶體仍然可以維持供電狀態(tài);不過,因為離埠處理器的L2快取無法提供新資料的快取配置,最后還是必須清除并關閉電源以節(jié)省耗電(圖3)。
圖3 big.LITTLE運算任務切換流程圖
由于LITTLE處理器叢集中,每個處理器都將對應一個big叢集的處理器,因此CPU乃成對配置(Cortex-A15及Cortex-A7處理器上都有CPU0, Cortex-A15及Cortex-A7處理器上都有CPU1,以此類推),不論何時每個配對中只有一個處理器可運轉;而系統(tǒng)則會主動偵測各處理器負載,在高負載時將內容執(zhí)行移到大核心(圖4)。當負載從離埠核心移到入埠核心,便會關閉其中一個核心,這種模式讓big與LITTLE核心組合能隨時運轉。
評論