李鵬
摘 要:CPU的架構(gòu)就好比一座房子的框架,它決定了使用該架構(gòu)的處理器的整體性能。目前世界上有很多處理器,而處理器的架構(gòu)卻只有幾種,可見架構(gòu)作為中央處理器的基礎(chǔ),對于處理器的整體性能起到了決定性的作用。
關(guān)鍵詞:CPU;處理器架構(gòu);各個(gè)架構(gòu)的特點(diǎn)
中央處理器(CPU)是計(jì)算機(jī)中最重要的一個(gè)部分,其硬件主要由控制器、運(yùn)算器、存儲器、輸入設(shè)備和輸出設(shè)備五部分組成,而CPU的最重要基礎(chǔ)便是CPU架構(gòu)。對于CPU架構(gòu),簡單來說就是CPU核心的設(shè)計(jì)方案,不同架構(gòu)的處理器同主頻下,性能差距可以達(dá)到2-5倍,可見架構(gòu)對于CPU的重要性。
目前全球有四大處理器架構(gòu),分別為X86架構(gòu)、ARM架構(gòu) 、MIPS架構(gòu)和POWER架構(gòu),其中X86架構(gòu)屬于復(fù)雜指令集,而ARM架構(gòu) 、MIPS架構(gòu)、POWER架構(gòu)屬于精簡指令集。目前電腦上的CPU架構(gòu)基本上都是基于X86架構(gòu)設(shè)計(jì)的,而移動(dòng)通訊領(lǐng)域很多使用的是ARM架構(gòu)的處理器。ARM架構(gòu)廣泛地使用在許多嵌入式系統(tǒng)設(shè)計(jì)中,目前ARM架構(gòu)占了所有32位嵌入式處理器75%的比例,使它成為全世界使用最多的的32位架構(gòu)之一。MIPS架構(gòu)廣泛使用在網(wǎng)絡(luò)設(shè)備、個(gè)人娛樂裝置、電子產(chǎn)品以及商業(yè)裝置等小型設(shè)備上,最早的MIPS架構(gòu)是32位,最新的版本已經(jīng)變成64位,而且我國的龍芯使用的便是MIPS架構(gòu)。由于POWER架構(gòu)構(gòu)成的處理器具有結(jié)構(gòu)簡單和高效率的特點(diǎn),因此POWER架構(gòu)的處理器在各個(gè)領(lǐng)域被廣泛使用。
ARM架構(gòu)是一個(gè)32位精簡指令集(RISC)處理器架構(gòu),它有一些RISC所共有的特性,例如①固定的32 bits 操作碼長度,降低編碼數(shù)量所產(chǎn)生的耗費(fèi),減輕解碼和流水線化的負(fù)擔(dān)。②它的指令大多均為一個(gè)CPU周期執(zhí)行。③ARM架構(gòu)是讀取/儲存架構(gòu)。④它不支援地址不對齊內(nèi)存存取。⑤大量的16 × 32-bit 寄存器陣列⑥其指令集屬于正交指令集。
MIPS架構(gòu)是一種采用精簡指令集(RISC)的處理器架構(gòu),它的基本特點(diǎn)是:包含大量的寄存器、指令數(shù)和字符、可視的管道延時(shí)時(shí)隙,這些特性使MIPS架構(gòu)能夠提供最高的每平方毫米性能和當(dāng)今SoC設(shè)計(jì)中最低的能耗。
MIPS32架構(gòu)基于一種固定長度的定期編碼指令集,并采用導(dǎo)入/存儲數(shù)據(jù)模型。其算術(shù)和邏輯運(yùn)算采用三個(gè)操作數(shù)的形式,允許編譯器優(yōu)化復(fù)雜的表達(dá)式。而且它還帶有32個(gè)通用寄存器,讓編譯器能夠通過保持對寄存器內(nèi)數(shù)據(jù)的頻繁存取進(jìn)一步優(yōu)化代碼的生成性能。
POWER架構(gòu)是1991年由Apple、IBM、Motorola組成的AIM聯(lián)盟所發(fā)展出的微處理器架構(gòu)。它是IBM開發(fā)的一種基于RISC指令系統(tǒng)的架構(gòu),相對于X86架構(gòu)的處理器,采用POWER架構(gòu)的處理器具有結(jié)構(gòu)簡單和高效率的特點(diǎn)。POWER4,POWER5,POWER6以及POWER7處理器和其他廠商生產(chǎn)的POWER PC處理器都是采用這個(gè)架構(gòu)的。
1978年6月8日,Intel發(fā)布了新款16位微處理器8086,8086處理器采用了X86架構(gòu),這也是X86架構(gòu)首次應(yīng)用在CPU中,隨后X86架構(gòu)便廣泛應(yīng)用在Intel生產(chǎn)的各種CPU上。 X86指的是特定微處理器執(zhí)行的一些計(jì)算機(jī)語言指令集,定義了芯片的基本使用規(guī)則。由于X86構(gòu)架的處理器芯片在性能上比較強(qiáng)勁,善于執(zhí)行復(fù)雜工作,X86架構(gòu)比ARM架構(gòu)系統(tǒng)在性能方面要快得多、強(qiáng)得多。因此,當(dāng)Intel進(jìn)軍移動(dòng)市場領(lǐng)域后,只推出的雙核芯片就可以媲美ARM構(gòu)架的四核芯片性能。
個(gè)人電腦上的CPU架構(gòu),其實(shí)都是基于X86架構(gòu)設(shè)計(jì)的,近幾年比較著名的X86架構(gòu)有Intel的Netburst、Core、Nehalem,以及AMD的K8。下面詳細(xì)介紹一下Core架構(gòu)。
Core微架構(gòu)全部采用65nm制造工藝,晶體管數(shù)量達(dá)到2.91 億個(gè),核心尺寸為143平方毫米,性能提升40%,能耗降低40%,主流產(chǎn)品的平均能耗為65瓦特,頂級的X6800也僅為75瓦特,前端總線提升至1066Mhz(Conroe),1333Mhz(Woodcrest),800Mhz(Merom)。該架構(gòu)擁有雙核心、64bit令集、4發(fā)射的超標(biāo)量體系結(jié)構(gòu)和亂序執(zhí)行機(jī)制等技術(shù),支持包括SSE4在內(nèi)的Intel所有擴(kuò)展指令集。為了提高兩個(gè)核心的內(nèi)部數(shù)據(jù)交換效率采取共享式二級緩存設(shè)計(jì),2個(gè)核心共享4MB或2MB的 二級緩存,其內(nèi)核采用高效的14級有效流水線設(shè)計(jì),每個(gè)核心都內(nèi)建32KB一級指令緩存與32KB一級數(shù)據(jù)緩存,而且2個(gè)核心的一級數(shù)據(jù)緩存之間 可以直接傳輸數(shù)據(jù)。
一、Core架構(gòu)的特點(diǎn):
1、超強(qiáng)的四組指令編譯器。Core微架構(gòu)采用了四組指令編譯器,也就是四組解碼單元,這四組解碼單元由三組簡單解碼單元與一組復(fù)雜解碼單元組成。
2、流水線明顯縮短。我們都知道,流水線越長,頻率提升潛力越大,但是一旦分支預(yù)測失敗或者緩存不中的話,所耽誤的延遲時(shí)間越長。因此對于Conroe來說,14級流水線的效率要比Prescott核心的31級要高很多,延時(shí)卻要低得多。
3、更強(qiáng)大的內(nèi)存I/O能力。Core微架構(gòu)采用大容量的共享式二級緩存,這種設(shè)計(jì)不僅減少了緩存訪問延遲,提高了緩存的利用率,而且還可以使單個(gè)核心享用完全的4MB緩存。二、Core架構(gòu)相比于其他架構(gòu)所具有的優(yōu)勢:
1、高級智能快速緩存
Core架構(gòu)使用了雙核共享二級緩存的方案,它可以避免緩存作頻繁的同步更新,增強(qiáng)了雙核的協(xié)作效率。
2、智能電源管理
由于core采用了智能型電源管理,使Core架構(gòu)的產(chǎn)品有非常低的功耗表現(xiàn),Core架構(gòu)的智能電源管理具體來說有以下幾個(gè)方面。
①分離式前端總線。Core架構(gòu)引入分離式前端總線設(shè)計(jì),當(dāng)前端總線傳輸?shù)臄?shù)據(jù)并不多時(shí),前端總線只會(huì)開啟32位,另外32位暫時(shí)處于關(guān)閉狀態(tài),而當(dāng)傳輸數(shù)據(jù)較多時(shí),全部的傳輸線路又會(huì)被開啟,這有效減少了前端總線的無謂能源消耗。
②更精確的運(yùn)行溫度控制。Core架構(gòu)在CPU內(nèi)的數(shù)個(gè)熱點(diǎn)放置了數(shù)字熱量傳感器,通過專門的控制電路,CPU可以精確獲知當(dāng)前的發(fā)熱量并迅速調(diào)整好運(yùn)作模式。
③動(dòng)態(tài)激活/關(guān)閉功能單元。有時(shí)候CPU內(nèi)部的部分邏輯單元并沒有處于激活的狀態(tài),如果可以在需要的時(shí)候才讓它們運(yùn)轉(zhuǎn),不需要的時(shí)候讓它們暫時(shí)休眠一下,那么CPU就可以進(jìn)一步減少無意義的能源消耗。Core架構(gòu)的動(dòng)態(tài)激活/關(guān)閉功能單元就可以達(dá)到上述的目的,因而由Core架構(gòu)構(gòu)成的CPU就可以降低很多的功耗。
3、超寬動(dòng)態(tài)執(zhí)行單元
①超寬的解碼單元。在設(shè)計(jì)Core的架構(gòu)時(shí),Intel讓解碼器回歸到傳統(tǒng)的“簡單-復(fù)雜”專用體系,Core架構(gòu)的解碼器數(shù)量被提升至4個(gè),其中復(fù)雜解碼器仍為1個(gè),但簡單解碼器增至3個(gè)。
②強(qiáng)化的指令預(yù)取能力。Core架構(gòu)的指令預(yù)取單元每次可以從一級緩存中獲得6個(gè)X86指令,由此滿足了指令解碼器的需求。
③ 整數(shù)執(zhí)行單元的優(yōu)化。Core 微架構(gòu)所擁有的3個(gè)64bit的整數(shù)執(zhí)行單元并非完全相同。與解碼單元部分類似,3個(gè)整數(shù)執(zhí)行單元也分為1個(gè)復(fù)雜整數(shù)執(zhí)行單元和2個(gè)簡單整數(shù)執(zhí)行單元。
④浮點(diǎn)執(zhí)行單元的特殊設(shè)計(jì)。Core 微構(gòu)架擁有2個(gè)浮點(diǎn)執(zhí)行單元,位于端口0的浮點(diǎn)執(zhí)行單元負(fù)責(zé)加減等簡單的浮點(diǎn)運(yùn)算,而端口1的浮點(diǎn)執(zhí)行單元?jiǎng)t負(fù)責(zé)乘除等浮點(diǎn)運(yùn)算。
CPU的架構(gòu)是整個(gè)CPU設(shè)計(jì)的核心和靈魂,其設(shè)計(jì)涉及到很多的知識,運(yùn)行機(jī)制也很復(fù)雜。以上關(guān)于CPU架構(gòu)的介紹,僅是作者對CPU架構(gòu)的一點(diǎn)淺顯的認(rèn)識,不足之處,還請讀者批評指正。