双核不可阻挡!首款双核处理器Tegra2详解
原文出處:http://www.3533.com/news/2011/3/31/125820.htm
智能手機 的興起帶動了整個手機軟硬件的發(fā)展和升級,當(dāng)我們驚呼1Ghz高頻手機處理器的出現(xiàn)并成為主流的時候,卻又發(fā)現(xiàn)即使這樣還是無法滿足我們對智能手機的無限追求;并且在移動互聯(lián)網(wǎng)蓬勃發(fā)展的今天,越來越多的應(yīng)用需要用到更高的硬件處理性能,以滿足之前只能在PC上實現(xiàn)而現(xiàn)在需要在智能手機上實現(xiàn)的功能。
當(dāng)一切顯示出需要一款比1Ghz更強勁的手機處理器出現(xiàn)時,于是我們看到了潛伏在手機芯片研發(fā)多年的NVIDIA開始爆發(fā),一款基于ARM Cortex A9架構(gòu)設(shè)計,具備兩個ARM Cortex A9處理器同時還搭配8顆Geforce核心的超級手機處理器誕生了——NVIDIA Tegra 2。
Tegra 2開手機雙核處理器先河
對于Tegra 2來說其雙核心設(shè)計毫無疑問開創(chuàng)了手機業(yè)界先河,并且兩顆1Ghz頻率的處理器也達到了手機性能的一個空前高度。不過,Tegra 2的強悍不僅于兩顆1Ghz的處理器,還有八顆Geforce圖形核心,要知道在圖形核心領(lǐng)域NVIDIA可是一直處于全球領(lǐng)先的位置。因此具備了如此高硬件規(guī)格的Tegra 2在今年的CES大放光彩也就并不意外了。
在可以預(yù)見的未來,雙核手機勢必會逐漸增加并且取代單核成為主流(至少是高端機主流配置),作為開手機雙核處理器先河的Tegra 2,我們或許知道它擁有兩個ARM架構(gòu)處理器也知道它具備非常出眾的3D性能,但是對于這款處理器的更為詳細的介紹我們或許并不一定知道,在基于Tegra 2處理器手機越來越多的時下,我們不妨先來全面了解一下有關(guān)Tegra 2的詳細介紹。
Tegra 2處理器核心架構(gòu)圖
Tegra 2處理器采用的是異構(gòu)多核架構(gòu)設(shè)計,所謂異構(gòu)多核架構(gòu)簡單的說就是將不同類型的內(nèi)核集成在一起,每個核心獨立進行不同的任務(wù),而不再只是是CPU進行全部的處理。從NVIDIA的官方資料中可以得知Tegra 2處理器的面積只有1/4個硬幣大小,而就是在這個僅1/4硬幣大小的面積上,Tegra 2集成了8個獨立的處理器單元,相比第一代多了一個處理器單元,因為Tegra 2處理器采用的雙核心設(shè)計。
七個處理器獨立處理任務(wù)
Tegra 2的七個獨立處理器分別是兩顆ARM Cortex-A9處理器、一顆8核心的Geforce GPU處理器以及高清視頻解碼器、音頻解碼器、圖像處理器和ARM7控制核心。七顆獨立的處理器讓Tegra 2無論在上網(wǎng)、音視頻播放、圖像處理器以及3D游戲的Flash加速方面都能得心應(yīng)手。下面我們?yōu)榇蠹曳謩e介紹這幾顆核心在Tegra 2中的作用。
ARM Cortex-A9處理器相關(guān)介紹
Cortex-A9處理器基于先進的推測型八級流水線,該流水線具有高效、動態(tài)長度、多發(fā)射超標(biāo)量及無序完成特征,這款處理器的性能、功效和功能均達到了前所未有的水平,能夠滿足消費、網(wǎng)絡(luò)、企業(yè)和移動應(yīng)用等領(lǐng)域產(chǎn)品的要求。
Cortex-A9微架構(gòu)可提供兩種選項:可擴展的Cortex-A9 MPCoreTM多核處理器和較為傳統(tǒng)的Cortex-A9單核處理器。可擴展的多核處理器和單核處理器,支持16、32或64KB四路組相聯(lián)一級緩存的配置,具有無與倫比的靈活性,皆能達到特定應(yīng)用和市場的要求。
ARM Cortex- A9架構(gòu)
?特定應(yīng)用優(yōu)化?:Cortex-A9和Cortex-A9 MPCore應(yīng)用級處理器都擁有豐富的功能,同時也承襲了ARMv7 架構(gòu)的強大優(yōu)勢,為特定應(yīng)用和通用設(shè)計提供了高性能、低功耗的解決方案。
?先進的微架構(gòu)?:Cortex- A9微架構(gòu)的設(shè)計不但著眼于解決超高頻設(shè)計的效率低下問題,而且把目標(biāo)定為在不增加嵌入式設(shè)備硅成本的前提下最大限度地提升處理效率。通過綜合技術(shù),這種 處理器設(shè)計能使設(shè)備的時鐘頻率超過1GHz,而且提供了較高的功效水平,滿足了長時間電池供電工作的要求。
ARM Cortex- A9架構(gòu)的諸多優(yōu)勢
?流水線性能?:Cortex- A9處理器最主要的流水線性能包括以下幾條:第一,先進的取指及分支預(yù)測處理,可避免因訪問指令的延時而影響跳轉(zhuǎn)指令的執(zhí)行;第二,最多支持四條指令 Cache Line預(yù)取掛起,這可進一步減少內(nèi)存延時的影響,從而促進指令的順利傳輸;第三,每個周期內(nèi)可連續(xù)將兩至四條指令發(fā)送到指令解碼,確保充分利用超標(biāo)量流 水線性能。Fast-loop模式:執(zhí)行小循環(huán)時提供低功耗運行;第四,超標(biāo)量解碼器可在每個周期內(nèi)完成兩條完全指令的解碼;第五,支持指令預(yù)測執(zhí)行:通 過將物理寄存器動態(tài)地重新命名至虛擬寄存器池來實現(xiàn)。
第六,提升了流水線的利用效率,消除了相鄰指令之間的數(shù)據(jù)依賴性,減少 了中斷延時;第七,支持寄存器的虛擬重命名:以一種有效的、基于硬件的循環(huán)展開方法,提高了代碼執(zhí)行效率,而不會增加代碼大小和功耗水平;第八,四個后續(xù) 流水線中的任何一個均可從發(fā)射隊列中選擇執(zhí)行指令—提供了無序分配,進一步提高了流水線利用效率,無需借助于開發(fā)者或編譯器指令調(diào)度。確保專為上一代處理 器進行優(yōu)化的代碼能夠發(fā)揮最大性能,也維護了現(xiàn)有軟件投資。
第九,每周期支持兩個算術(shù)流水線、加載-存儲(load- store)或計算引擎以及分支跳轉(zhuǎn)的并行執(zhí)行;第十,可將有相關(guān)性load-store指令提前傳送至內(nèi)存系統(tǒng)進行快速處理,進一步減少了流水線暫停, 大幅提高了涉及存取復(fù)雜數(shù)據(jù)結(jié)構(gòu)或C++函數(shù)的高級代碼的執(zhí)行效率;第十一,支持四個數(shù)據(jù)Cache Line的填充請求:而且還能通過自動或用戶控制預(yù)取操作,保證了關(guān)鍵數(shù)據(jù)的可用性,從而進一步減少了內(nèi)存延時導(dǎo)致的暫?,F(xiàn)象;第十二,支持無序指令完成 回寫:允許釋放流水線資源,無需受限于系統(tǒng)提供所需數(shù)據(jù)的順序。
Cortex-A9 MPCore技術(shù)
Cortex-A9 MPCore多核處理器是一種設(shè)計定制型處理器,以集成緩存一致的方式支持1到4個CPU內(nèi)核??蓡为毰渲酶魈幚砥?#xff0c;設(shè)定其緩存大小以及是否支持FPU、 MPE或PTM接口等。
Cortex-A9多核處理器
此外,無論采用何種配置,處理器都可應(yīng)用一致性加速口,允許其他無緩沖的系統(tǒng)控制外設(shè)及加速器(如DMA引擎或加密加速器)核與一 級處理器緩存保持緩存一致。另外還集成了一種符合GIC架構(gòu)的綜合中斷及通信系統(tǒng),該系統(tǒng)配有專用外設(shè),其性能和軟件可移植性都更上一層樓,適當(dāng)配置后, 可支持0(legacy bypass 模式)到224個獨立中斷資源。這種處理器可支持單個或兩個64位AMBA3 AXITM互聯(lián)接口。
ARM MPCore靈活和先進的功耗管理技術(shù)
利用ARM MPCore技術(shù)的設(shè)計靈活性和先進的功耗管理技術(shù),Cortex-A9 MPCore的針對性應(yīng)用能夠在有限的功耗下維持移動設(shè)備的正常運轉(zhuǎn),從而為移動設(shè)備帶來優(yōu)于現(xiàn)有解決方案的峰值性能。這種處理器充分利用了可擴展峰值性能,在性能上超越了現(xiàn)有的同等高端嵌入式設(shè)備,并在更為廣闊的市場中維持了持續(xù)穩(wěn)定的軟件投資。
偵測控制單元(SCU)
SCU 是ARM多核技術(shù)的中央情報局,負責(zé)為支持MPCore技術(shù)的處理器提供互聯(lián)、仲裁、通信、緩存間及系統(tǒng)內(nèi)存?zhèn)鬏敗⒕彺嬉恢滦约捌渌嗪斯δ艿墓芾怼?/p>
同時,Cortex-A9 MPCore處理器還率先向其他系統(tǒng)加速器及無緩沖的DM A驅(qū)動控制外設(shè)開啟此類功能,通過處理器緩存層次的共享,有效地提高了性能、減少了整個系統(tǒng)的功耗水平。不僅如此,利用這種系統(tǒng)來維持每個操作系統(tǒng)驅(qū)動中 的軟件一致性,軟件復(fù)雜性就大大降低了。
加速器鏈接埠
這個與AMBA 3 AXI兼容的Slave接口位于SCU之上,為多種系統(tǒng)Master接口提供了一個互聯(lián)接口;出于總體系統(tǒng)性能、功耗或軟件簡化等方面的考慮,最好直接將 這些Master接口與Cor tex-A9 MPCore處理器相連。這是個標(biāo)準(zhǔn)的AMBA 3 AXI Slave接口,支持所有標(biāo)準(zhǔn)讀寫事務(wù),對所接部件無任何附加一致性要求。
加速器鏈接埠
然而,指向某個一致內(nèi)存區(qū)的讀取事務(wù)要與SCU發(fā)生作用,以檢測所需信息是否已經(jīng)存儲在處理器的一級緩存之中。若檢 測出確已存儲,相應(yīng)信息將被直接返回給發(fā)出請求的組件。如果一級緩存中不存在該信息,在最終傳給主內(nèi)存之前也可能檢測二級緩存。對于指向一致內(nèi)存區(qū)的寫入 事務(wù),SCU會在把寫入事務(wù)傳送至內(nèi)存系統(tǒng)之前強制確保一致性。也可選擇性地將事務(wù)分配給二級緩存,以避免直接寫入片外內(nèi)存所帶來的功耗及性能影響。
通用中斷控制器(GIC)
該 GIC采用了最近標(biāo)準(zhǔn)化和架構(gòu)的中斷控制器,為處理器間通信及系統(tǒng)中斷的 路由 選擇及優(yōu)先級的確定提供了一種豐富而靈活的解決辦法。最多支持224個獨立中 斷,通過軟件控制,可在整個CPU中對每個中斷進行分配、確定其硬件優(yōu)先級并在操作系統(tǒng)與信任區(qū)軟件管理層之間進行路由。這種路由靈活性加上對中斷虛擬進 入操作系統(tǒng)的支持,是進一步提升基于半虛擬化管理器解決方案功能的關(guān)鍵因素之一。
先進的總線接口單元
Cortex-A9 MPCore處理器增強了處理器與系統(tǒng)互聯(lián)之間的接口性能,其先進特色功能最大限度地提高了系統(tǒng)性能,為各種系統(tǒng)集成芯片設(shè)計理念創(chuàng)造了更大的靈活性。
這種處理器支持單個或兩個64-b i t AMBA 3 AXI Master接口的設(shè)計配置,可以按CPU的速度全負荷地將事務(wù)傳送至系統(tǒng)互聯(lián)之中,最高速度可達12G B/s以上。另外,第二接口也可定義某種事務(wù)過濾,只處理全局地址空間的一部分;也就是說,可在處理器內(nèi)部直接對地址空間進行切分,進一步加強了系統(tǒng)設(shè)計 的靈活性。
而且每個接口還支持不同的CPU-總線頻率比(包括同步半時鐘比),不但提高了設(shè)計靈活性,而且為需要考慮DVFS或高速集成內(nèi)存的設(shè)計增加了系統(tǒng)帶寬。同時為完整的A RM智能能量管理 (IEM)功能提供了良好的支持。
特定應(yīng)用的計算引擎加速
處理器不但擁有優(yōu)化的標(biāo)準(zhǔn)架構(gòu)特色,而且還可增加以下任一設(shè)計功能:
?先進二級緩存控制器?:ARM二級緩存控制器( Prime Cell PL310)與Cortex-A9系列處理器同步設(shè)計,旨在提供一種能匹配Cortex-A9處理器性能和吞吐能力的優(yōu)化二級緩存控制器。PL310最多可為每個接口提供8項AXI事務(wù)支持,支持按Master接口進行鎖定;這樣一來,即通過將PL310用作加速器與處理器之間的緩沖器,充分利用一致性加速口,實現(xiàn)多個CPU或組件之間的可控共享,既提升了系統(tǒng)性能,也降低了相關(guān)功耗水平。
另外,PL310不但具有Cortex-A9先進總線接口單元的各項功能,支持同步1/2時鐘比,有助于減少高速處理器設(shè)計中的延時現(xiàn)象,而且能夠?qū)Φ诙﨧asterAXI 接口設(shè)置地址過濾,分割地址和頻率域、以及集成片上內(nèi)存的快速存取提供了支持。PL310最高可支持2MB的四至十六路組相聯(lián)二級緩存,可與奇偶校驗及支持E C C的R A M集成,而且運行速率能夠與處理器保持一致。而先進的鎖定技術(shù)也提供了必要的機制,從而將緩存用作相關(guān)性加速器和處理器之間的傳輸RAM。
Cortex-A9 程序跟蹤宏單元(PTM):Cortex-A9 PTM為兩款Cortex-A9處理器提供了兼容ARM CoreSight技術(shù)的程序流跟蹤功能,能夠?qū)μ幚砥髦械膶嶋H指令流實現(xiàn)完全可視化的管理。Cortex-A9 PTM通過周期計數(shù)實施性能分析,可對所有代碼分支和程序流變動進行跟蹤管理。
Tegra 2 GeForce處理內(nèi)核相關(guān)介紹
Tegra 2之所以強大除了采用兩顆頻率高達1Ghz的Cortex-A9處理器之外,另外一個非常重要的原因就是它在手持設(shè)備中引入了強大的Geforce處理器,借助于Geforce處理器的強大性能,可以為Tegra 2提升3D圖形性能以及加速網(wǎng)頁瀏覽等諸多功能。下面我們就來說說Tegra 2里面非常重要也非常強大的Geforce處理器。
八個核心構(gòu)成GeForce處理器
Tegra 2的GeForce內(nèi)核實現(xiàn)了功能強勁的管線頂點和像素處理架構(gòu),可通過各種特性降低功耗和提高圖形質(zhì)量,支持下一代移動 3D 游戲、流暢的高清視頻播放、在線 Flash 游戲性能和高度響應(yīng)的移動 GPU 加速用戶界面,而不會影響 移動電源 預(yù)算。
OpenGL ES 2.0 圖形處理管線
OpenGL ES 是一個標(biāo)準(zhǔn)的應(yīng)用程序編程接口 (API),開發(fā)人員可使用它為智能電話、平板設(shè)備和便攜式游戲設(shè)備等移動設(shè)備編寫圖形應(yīng)用程序。OpenGL ES API是桌面OpenGL API 規(guī)范的一個子集,并且在圖形應(yīng)用程序和 GPU 硬件之間定義了一個靈活而強大的低級接口。最新的 OpenGL ES 2.x 規(guī)范針對完全可編程的 現(xiàn)代 GPU 管線,并將 API 的所有固定函數(shù)元素替換為可編程著色。大多數(shù)移動 GPU 架構(gòu)均采用OpenGL ES API 標(biāo)準(zhǔn),并且主要根據(jù)OpenGL ES API 的定義來實現(xiàn)邏輯處理管線。
OpenGL ES 2.0 邏輯圖形處理管線
為了顯示游戲或圖形應(yīng)用程序中定義的場景,應(yīng)用程序開發(fā)人員必須先使用3D建模軟件創(chuàng)建各種3D對象和角色模型。每個對象和角色都可以由數(shù)百、數(shù)千甚至數(shù)百萬個相互連接的三角形網(wǎng)格構(gòu)成,具體取決于所需的幾何真實水平。
三維圖像上的三角網(wǎng)格
接下來3D游戲軟件或其他3D應(yīng)用程序可以使用這些模型,并將它們置于模擬的3D場景或“3D世界”中。3D世界通過XYZ坐標(biāo)系定義,并且3D對象或角色將放置在3D世界的特定位置上。對象中的每個三角形都由它的三個頂點定義,并且每個頂點都由代表其屬性的一組數(shù)值構(gòu)成,這些屬性包括在3D世界中的XYZ位置、顏色值 (RGB)、阿爾法透明度、紋理坐標(biāo)、法線等。隨后,定義對象特定部分的頂點集將分組到一個頂點緩沖區(qū)中,后者類似于原始頂點流。
3D軟件會向GPU驅(qū)動程序發(fā)起一個OpenGL ES調(diào)用,指向共享系統(tǒng)內(nèi)存中的頂點緩沖區(qū)位置,從而允許 GPU 直接訪問和處理數(shù)據(jù)。OpenGL管線的原型處理階段發(fā)生在GPU中,并且會將傳入頂點數(shù)據(jù)轉(zhuǎn)換為可供GPU使用的格式和組織。隨后,頂點會傳遞至Vertex著色器;這時,頂點著色器程序可以運行各種矩陣轉(zhuǎn)換和光照計算,以便將頂點移至新的X、Y和Z位置,或者改變燈光值等屬性。
轉(zhuǎn)換后的頂點將被組裝為原型, 然后光柵化階段會將原型轉(zhuǎn)換為像素片段,為像素著色器階段做準(zhǔn)備?,F(xiàn)在,像素片段處于2D屏幕空間格式。像素著色階段將運行像素著色器程序來處理每一個像素,并且可能會應(yīng)用新的照明或顏色值、應(yīng)用紋理或者執(zhí)行各種其他操作來計算應(yīng)用于像素的最終顏色值。
在典型的OpenGL管線中,隨后會對各個像素運行Z緩沖測試,以確定是否比幀緩沖區(qū)中的相同屏幕位置中的已有像素更加接近觀眾的眼睛。如果確定新像素更加接近觀眾,它會取代幀緩沖區(qū)中的已有像素值,但如果它在已有像素后面,則會被丟棄。(注意:幀緩沖區(qū)可能位于與CPU共享的系統(tǒng)內(nèi)存空間中,或者可能位于專用內(nèi)存中,比如大多數(shù)獨立 顯卡 所使用的內(nèi)存)。
如果可見像素的 Alpha 值指示它是部分透明的,那么它將與相同屏幕位置的幀緩沖區(qū)中的已有像素相混合。如果啟用了抗鋸齒,那么可以通過修改像素的顏色值來創(chuàng)建更加平滑的邊緣,以便在寫入幀緩沖區(qū)中之前減少鋸齒效果。
Tegra 2 GeForce處理架構(gòu)及功耗介紹
?雙核處理器或許讓消費者對于Tegra 2的功耗問題比較擔(dān)心,而雙核處理器再加上GeForce內(nèi)核,頓時讓很多人對于Tegra 2的功耗問題更加懷疑和關(guān)注。的確,現(xiàn)在手機續(xù)航時間短已經(jīng)成為 智能手機 的一個普遍現(xiàn)象,而Tegra 2同樣也繞不開功耗的問題,下面我們就來看看Tegra 2中的GeForce內(nèi)核架構(gòu)以及它如何實現(xiàn)功耗的控制。
GeForce架構(gòu)是一種固定函數(shù)管線架構(gòu),包括完全可編程的像素和頂點著色器,以及一個先進的紋理單元,可支持高品質(zhì)的各向異性過濾。
Tegra 2處理器中的GeForce架構(gòu)
GeForce包含四個像素著色器內(nèi)核和四個頂點著色和內(nèi)核,專用于高速頂點和像素處理。GPU管線在像素管線中使用FP20數(shù)據(jù)精度的80位RBGA像素格式,在頂點管線中則使用FP32 精度的80位RBGA像素格式。它還實現(xiàn)了一種獨一無二和專有的各向異性過濾 (AF) 算法,該算法優(yōu)于許多 臺式機 GPU所使用的AF技術(shù)。該架構(gòu)支持各種高級特性,例如高動態(tài)范圍 (HDR) 照明、多重渲染目標(biāo) (MRT),并且兩種紋理支持均不會帶來功耗。該架構(gòu)同時支持 DXT 和 ETC 紋理格式。
雖然GeForce架構(gòu)是一種類似于OpenGL ES 2.0標(biāo)準(zhǔn)定義的管線架構(gòu),但它還包含一些特殊特性和自定義功能,可顯著降低功耗并提供更高的性能和圖形質(zhì)量。Tegra 2移動處理器中實現(xiàn)的一些獨特特性包括:
1、Early‐Z 支持,專用于過濾掉不可見的像素。
2、集成像素著色器 (Pixel Shader) 和混合單元 (Blend Unit),可實現(xiàn)編程靈活性和更高的性能。
3、像素緩存、紋理緩存、頂點和屬性緩存,可減少內(nèi)存操作。
4、獨特的 5 倍覆蓋采樣抗鋸齒 (CSAA) 技術(shù),可在更低的內(nèi)存帶寬下實現(xiàn)更高的圖像質(zhì)量。
5、高級各向異性過濾 (AF),可實現(xiàn)高細節(jié)紋理。
6、內(nèi)部開發(fā)的自定義內(nèi)存控制器,可提高 GPU 性能和降低功耗。
7、實現(xiàn)超低功耗的眾多電源管理功能。
Early–Z 技術(shù)
現(xiàn)代 GPU使用Z緩沖(也稱作深度緩沖)來跟蹤該場景中的可見但由于被其他像素遮擋而不需要顯示的像素。每個像素在Z緩沖中都有相應(yīng)的Z信息。單一3D幀會經(jīng)過處理并轉(zhuǎn)換為2D圖像,以便在 顯示器 上顯示。該幀由從主機發(fā)送至GPU的頂點順序流構(gòu)成。多邊形將由頂點流組配而成,并且會生成和呈現(xiàn)2D屏幕空間像素。
在指定時間單元(如1/60秒)內(nèi)構(gòu)建單一2D幀的過程中,多個多邊形及其相應(yīng)像素可能會覆蓋相同的基于2D屏幕的像素位置。這經(jīng)常被稱作深度復(fù)雜性,并且現(xiàn)代游戲的深度復(fù)雜性可能達到 3、4 或者更高,即在覆蓋相同 2D 屏幕位置的幀中呈現(xiàn) 3 個、4 個或更多像素。
想象首次在頂點流中處理構(gòu)成某塊墻的多邊形(和由此產(chǎn)生的像素),以構(gòu)建場景。接下來,處理位于墻前面的一把椅子的多邊形和像素。對于特定的2D屏幕像素位置,觀眾最終只能看到一個像素,即椅子的像素或墻的像素。椅子離觀眾更近,因此會顯示它的像素。(請注意,某些對象可能是透明的,并且透明對象的像素可以與背景中已有的不透明或透明像素相混合,或者與之前幀的幀緩沖區(qū)中的已有像素相混合)。
緩沖示例
OpenGL ES2.0 邏輯管線定義的針對各像素數(shù)據(jù)的 Z 比較會在像素經(jīng)過像素著色器處理之后執(zhí)行。在像素著色處理之后評估像素的問題在于,像素必須遍歷幾乎整個管線才能最終確定堵塞且需要丟棄的像素。對于擁有數(shù)百或數(shù)千處理步驟的復(fù)雜著色器程序,所有處理都浪費在永遠不會顯示的像素上! 更重要的是,在移動設(shè)備中,處理這些像素涉及 GPU 和共享系統(tǒng)內(nèi)存之間大量事務(wù)。由于系統(tǒng)內(nèi)存位于片外,因此內(nèi)存操作會顯著消耗電源并且會迅速耗盡電池電量。
GeForce中的Early‐Z實現(xiàn)是高端臺式GeForce中所使用的實現(xiàn)的優(yōu)化版本。Early‐Z操作會測試所有像素的Z深度并僅將可見像素傳遞給像素著色器塊。通過執(zhí)行Early‐Z操作,GeForce架構(gòu)會僅獲取通過Z測試的可用像素的Z值、顏色和紋理數(shù)據(jù)。Early‐Z效率極高,可準(zhǔn)確檢測出和丟棄隱藏像素。
Early‐Z處理的主要優(yōu)勢在于它不僅可通過減少GPU與片外系統(tǒng)內(nèi)存之間的內(nèi)存流量來顯著降低功耗,而且速度也要快于其他 Z 比較算法。大多數(shù)情況下,高效的Early‐Z都可以識別和丟棄隱藏像素。但在極少數(shù)情況下,對于一些特殊場景程序員可能需要在像素著色完成之后隱藏像素。對于這些極少數(shù)的情況,GeForce管線實現(xiàn)了一種后期階段深度計算,并混合于集成像素著色器和混合單元中。
像素和紋理緩存可減少內(nèi)存操作
傳統(tǒng)的OpenGL GPU管線指定紋理、深度、顏色等像素信息存儲在系統(tǒng)內(nèi)存(或幀緩沖存儲器)中。在像素處理階段,像素信息會在內(nèi)存之間來回移動。這就需要在片外系統(tǒng)執(zhí)行大量內(nèi)存操作,從而消耗大量電能。GeForce架構(gòu)實現(xiàn)了片上像素、紋理和屬性緩存,以及獨特的緩存管理算法,不僅可減少系統(tǒng)內(nèi)存操作,而且還可以最大限度地利用這些緩存。
像素緩存用于存儲像素的片上Z值和顏色值,并且適應(yīng)于所有重復(fù)訪問的像素,比如用戶界面組件。此外,由于像素顏色和深度數(shù)據(jù)在許多其他圖形場景圖像中的良好空間及時間局部性,像素緩存可提供非常理想的緩存命中率,并且可降低訪問系統(tǒng)內(nèi)存的需要。
紋理數(shù)據(jù)具有良好的空間和時間局部性。 特定像素通常會在雙線性過濾等紋理過濾操作過程中使用許多相同的紋理元素(像素)作為相鄰像素,并且紋理經(jīng)常在圖像的至少一些幀中保持相同。因此,在片上緩存紋理數(shù)據(jù)有助于重用紋理數(shù)據(jù)以及顯著減少通過訪問系統(tǒng)內(nèi)存來獲取紋理數(shù)據(jù)。
覆蓋面采樣抗鋸齒
鋸齒是出現(xiàn)在圖像上的鋸齒狀邊緣,而這些區(qū)域本應(yīng)顯示為流暢的線條或邊緣;抗鋸齒 (AA)技術(shù)在計算機圖形中用于讓這些鋸齒線條更加平滑。當(dāng)高清晰度圖像在較低分辨率的 顯示器 上顯示時,或者當(dāng)較高分辨率的圖像轉(zhuǎn)換為較低分辨率的圖像時便會出現(xiàn)鋸齒效果。
通常,GPU使用多重采樣抗鋸齒(MSAA)和超級采樣抗鋸齒(SSAA)技術(shù)減少鋸齒效果。在之前的抗鋸齒技術(shù)中,覆蓋面始終與“實際”采樣類型相關(guān)聯(lián),而覆蓋面采樣與此不同。在SSAA中,每個實際采樣都有其獨特的顏色和Z值,并且在4xAA的情況下,著色器程序會運行四次,并獲取四個紋理 ‐ 每個樣本一個紋理(或者在多紋理的情況會更多)。采用4xAA時,幀緩沖區(qū)要比未使用抗鋸齒時大四倍,并且會經(jīng)過向下過濾,以創(chuàng)建最終像素顏色。
CSAA可以將簡單的覆蓋面采樣從顏色/z/模板/覆蓋面采樣中解耦出來,進一步優(yōu)化抗鋸齒流程,從而較 MSAA和SSAA減少帶寬和存儲成本。CSAA 使用更多覆蓋面樣本來計算指定像素區(qū)域中的多邊形的覆蓋面水平,從而實現(xiàn)更高質(zhì)量的抗鋸齒效果,而不會由于處理額外的實際顏色和Z樣本而產(chǎn)生內(nèi)存和功耗成本。
高級各向異性過濾
各向異性過濾是一種用于提高表面上處于斜視角的紋理的圖像質(zhì)量的技術(shù)。 通常,屏幕上的每個像素都需要從內(nèi)存的紋理貼圖中獲取多個紋理元素,經(jīng)過過濾并應(yīng)用于像素以改變其顏色。從正面看表面時(垂直于鏡頭或觀眾),通常會使用方形采樣模式為每個像素采樣同等數(shù)量的紋理元素。但是,在極端視角下(即屏幕上的圖像從一個軸延伸至另一軸),從紋理貼圖中為每個軸提取相同數(shù)量的樣本會導(dǎo)致紋理沿延伸至水平方向的軸出現(xiàn)模糊。
通過各向異性過濾得到改善的紋理質(zhì)量
可以看到接近地平線處的跑道部分的紋理細節(jié)出現(xiàn)了模糊。 各向異性過濾技術(shù)可以智能地沿該延伸軸采集更多的紋理樣本,并保留沿該軸的紋理細節(jié)。GeForce支持高達16倍各向異性過濾。它采用自適應(yīng)過濾算法和高效紋理緩存管理技術(shù)來提供高紋理質(zhì)量,同時不會顯著增加內(nèi)存操作。
優(yōu)化的內(nèi)存控制器
Tegra 2)處理器包括經(jīng)過全新設(shè)計的GPU和內(nèi)存控制器(MC)內(nèi)核,GPU內(nèi)核的性能極度依賴于MC交付帶寬的效率以及圖形處理延遲要求。由于GPU和MC均采用了內(nèi)部開發(fā),因此MC針對GeForce的特定需求進行了高度調(diào)優(yōu),同時還增強了GPU性能和降低了功耗。
MC控制器設(shè)計的一些關(guān)鍵優(yōu)化包括:
?動態(tài)時鐘速度控制(DCSC):?DCSC支持內(nèi)存控制器迅速提高工作頻率以響應(yīng)來自GPU內(nèi)核的高級指標(biāo)便于系統(tǒng)內(nèi)存訪問,以及在 GPU 完成其內(nèi)存訪問后將工作頻率迅速降低至節(jié)能水平。由于采用了嚴(yán)密的內(nèi)部設(shè)計流程,因此MC可以直接接入GPU內(nèi)核硬件,主動預(yù)測GPU需求和管理其工作水平,以滿足GPU需求。
?以GPU為中心的內(nèi)存仲裁:?系統(tǒng)內(nèi)存是移動處理器中最寶貴的資源之一。CPU、GPU、視頻和音頻等各種內(nèi)核都需要能夠以高帶寬、高度響應(yīng)性的形式訪問系統(tǒng)內(nèi)存。MC實現(xiàn)了高級仲裁機制,可有效確保多個客戶端訪問系統(tǒng)內(nèi)存。
MC內(nèi)核具有關(guān)于來自GPU客戶端的內(nèi)存訪問請求的類型和緊急性的深入信息,并且實現(xiàn)了一種高度優(yōu)化的仲裁機制,可滿足呈現(xiàn)器和幾何請求對帶寬的苛刻要求,以及滿足對服務(wù)高優(yōu)級級延遲敏感的顯示和CPU請求在低延遲方面的苛刻要求。MC還掌握GPU內(nèi)核生成的各請求的優(yōu)先級的信息,并且可進一步優(yōu)化其性能以滿足這些請求的需求。
?GPU請求分組:?片外系統(tǒng)內(nèi)存設(shè)備在任何特定時間都只能打開特定數(shù)量的內(nèi)存條。當(dāng)內(nèi)存的請求訪問區(qū)不包含在當(dāng)前打開的內(nèi)存條中時,MC需要關(guān)閉當(dāng)前打開的內(nèi)存條,然后激活包含所需內(nèi)存單元或區(qū)域的新內(nèi)存條。這一過程不僅會影響延遲和帶寬,同時對功耗的需要也較高。
GeForce掌握當(dāng)前的系統(tǒng)配置,并且會對訪問模式進行優(yōu)化,而不會發(fā)起多個不同的訪問內(nèi)存子系統(tǒng)的不同部分中的隨機內(nèi)存條的內(nèi)存請求。GPU可以將訪問相同內(nèi)存條的內(nèi)存請求組合在一起。MC控制器還可以根據(jù)內(nèi)存條訪問模式對獨立內(nèi)存請求進行重新排序。這些功能可以提供更加高效的內(nèi)存訪問,并通過限制頻繁的內(nèi)存條切換來降低功耗。
高級電源管理
GeForce內(nèi)核實現(xiàn)了一些可降低功耗的高級電源管理技術(shù),包括:
?多層頻率門控:?GPU實現(xiàn)了多層頻率門控,可在空閑狀態(tài)下關(guān)閉頻率。它使用一種系統(tǒng)級功率控制算法來控制Tegra 2處理器中的所有8個內(nèi)核的功率和頻率。當(dāng)功率控制邏輯檢測到空閑狀態(tài)的GPU內(nèi)核時,它會通過頻率門來控制送入GPU的主干線頻率,從而將GPU的動態(tài)功耗有效限制至接近零毫瓦特的水平。當(dāng)功率控制器檢測到系統(tǒng)處于待機模式時,它會通過功耗門來控制GPU內(nèi)核,從而將其功耗降低至接近零的水平。
?本地電源管理功能:?GPU內(nèi)核具有一些電源管理功能,可進一步降低功耗。它實現(xiàn)了一些功能級頻率門控機制,可通過頻率門來控制GPU內(nèi)核中的各種不同的空閑塊。例如,當(dāng)管線未執(zhí)行任何頂點著色任務(wù)時,頂點著色器會采用頻率門控并處于低功耗狀態(tài),直到接收到下一個頂點著色命令為止。同樣,當(dāng)像素著色器正在處理數(shù)學(xué)計算等不需要獲取紋理的任務(wù)時,紋理單元可采用頻率門控。此外,如果 GPU 僅僅刷新設(shè)備顯示而非積極呈現(xiàn),內(nèi)存控制器可以借機將系統(tǒng)內(nèi)存置于低功耗狀態(tài)。
?顯示請求分組:?GPU會對多個顯示請求進行分組,并按批次向系統(tǒng)內(nèi)存發(fā)出這些要求。然后,GPU 向內(nèi)存控制器(通過計時器)通知下一個請求的時間。在發(fā)送GPU顯示請求之間的空閑期,內(nèi)存控制器會積極尋找機會將系統(tǒng)內(nèi)存置于低功耗狀態(tài)。
?功耗優(yōu)化的晶體管設(shè)計:?GeForce內(nèi)核還在晶體管級針對超低功耗進行了優(yōu)化。非計時敏感的塊使用了低漏晶體管,而需要高速運作的關(guān)鍵路徑則采用了速度更高的晶體管。因此GeForce內(nèi)核可以在不影響性能同時實現(xiàn)低功耗。
?動態(tài)電壓和頻率縮放(DVFS):?Tegra 2處理器還實現(xiàn)了一個先進的芯片級DVFS技術(shù),該技術(shù)在任何時候都可以控制六個主要系統(tǒng)時鐘的時鐘頻率,以及最多兩個電壓軌的電壓水平??梢允褂密浖刂频脑O(shè)置來選擇在DVFS控制下的時鐘及電壓軌。
DVFS的基本原理是為各種處理單元采用不同的內(nèi)核頻率和電壓,從而控制功耗。半導(dǎo)體芯片的功耗與工作頻率成正比關(guān)系,同時也與工作電壓的平方成正比關(guān)系。當(dāng)處理器未處理任何任務(wù)時,頻率和電壓可降至較低水平,從而大大降低空閑功耗。當(dāng)Tegra 2中的8個內(nèi)核中的任何一個檢測到傳入任務(wù)時,該事件將被報告給全局DVFS控制塊,并且頻率和電壓會立即提高至合適的水平,以確保更高的性能。
DVFS 軟件會智能地將電壓和頻率提高至最適合的水平,以滿足應(yīng)用程序的性能需求。DVFS算法可以非常精細地控制頻率水平,并且可以按1MHz的增量來增加或降低頻率。
Tegra 2其它處理核心介紹
2007年的時候NVIDIA花費3億多美元收購了為 蘋果 提供音頻處理器的PortalPlayer公司,有了PortalPlayer公司強大的技術(shù)支持,NVIDIA為Tegra 2提供了更優(yōu)秀的音頻解碼器,這一點從微軟采用Tegra平臺來打造Zune播放器也能看出來。
采用Tegra處理器的Zune播放器
第一代Tegra只能實現(xiàn)720P高清視頻的編解碼,而Tegra 2分別采用了獨立的視頻編碼器和視頻解碼器設(shè)計。Tegra 2的視頻編碼處理單元可以實現(xiàn)每秒10幀的1080P H.264加速能力。NVIDIA稱Tegra 2在1080P解碼時,其功耗低于100毫瓦,并且聲稱其它1080P解碼方案,在功耗方面至少需要1W,因為許多運算要依賴于CPU完成,這對于整個系統(tǒng)來說會有許多額外的附加運算。
獨立的第三代圖像處理器支持 1200萬像素 的圖像傳感器,可以給手持設(shè)備帶來非常強悍的圖片和圖像功能。Tegra 2采用的ARM 7控制芯片則負責(zé)處理器數(shù)據(jù)和電源管理。
PConline 評測 室總結(jié)
當(dāng)年第一代Tegra出現(xiàn)的時候,我們苦于在市場上找不到基于Tegra的產(chǎn)品,甚至不覺得Tegra能在移動設(shè)備領(lǐng)域找到屬于自己的空間。然而,當(dāng)Tegra 2再次來到我們眼前的時候,卻是以一種幾乎席卷整個移動設(shè)備的姿態(tài)出現(xiàn)。的確,目前不僅在手機方面能夠看到越來越多的Tegra 2產(chǎn)品,在平板電腦等其他移動終端設(shè)備上也有越來越多的產(chǎn)品出現(xiàn),可以說Tegra 2不僅開創(chuàng)了手機雙核的先河,也開創(chuàng)了屬于NVIDIA的一個嶄新的面貌。
基于Tegra 2處理器的移動設(shè)備越來越多應(yīng)用也越來越廣
不可否認的是借助于Tegra 2強大的性能,帶來的Flash、高清視頻以及3D游戲的加速,不僅可以讓我們體驗到更加暢快的應(yīng)用體驗,同時也能更加豐富和真實化我們的應(yīng)用,目前NVIDIA推出了適用于Tegra 2處理器的Tegra Zone平臺,相信隨著Tegra 2設(shè)備的增加類似于Tegra Zone平臺上的應(yīng)用將會更多,而手機勢必也將會成為全方位的移動多媒體設(shè)備。
Tegra 2(實際型號Tegra 250)基于臺積電40nm工藝制造,共包含2.6億個晶體管,核心尺寸約為49mm2,8.8mm BGA封裝。按照NVIDIA的說法,Tegra 2共有8個獨立的處理器核心(第一代Tegra為7個)。不過這8個核心并非我們在Intel/AMD CPU中看到的那些傳統(tǒng)意義上的處理器核心,而是各自有其專門用途。
首先的兩個核心,實際上來自于一顆雙核ARM Cortex-A9處理器,最高頻率1GHz。在第一代Tegra中,NVIDIA使用的是單核心的ARM 11,而此次則跳過了Cortex-A8這一代,直接升級雙核版Cortex-A9,性能備受期待。NVIDIA表示,該處理器的性能是現(xiàn)有智能手機的10倍,上代Tegra的4倍。
余下的六顆核心,則分別對應(yīng)不同的多媒體應(yīng)用。包括一個音頻解碼核心,一個支持1080p H.264硬件加速的視頻解碼核心,一個高清視頻編碼核心,一個最高支持1200萬像素攝像頭的圖片/照片處理核心,一個GeForce 2D/3D圖形核心以及一個用于芯片內(nèi)部數(shù)據(jù)/功耗管理的ARM 7處理器核心。
總結(jié)
以上是生活随笔為你收集整理的双核不可阻挡!首款双核处理器Tegra2详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: glassfish插件_Eclipse4
- 下一篇: LDT