ARM體系結(jié)構(gòu)研究
4)
從Intel投入的精力和一些列的動作我們可以看出Intel向彌補(bǔ)自己在移動計算領(lǐng)域缺席的決心,但是從時間上來看,intel同ARM相比起步晚太多了,所以至今為止,除了上網(wǎng)本有采用Atom架構(gòu)的處理器外其它移動計算設(shè)備很少有采用Atom處理器的(Nokia的MeeGo平臺也許算是一個吧)。Intel的Atom在移動計算市場上的劣勢還不僅僅存在于起步太晚上。
圖2.7Atom采用的16段流水線
這不是Atom處理器流水線的全部。Atom處理器還含有兩級預(yù)先譯碼部件(Predecoder)。因?yàn)閭鹘y(tǒng)的x86指令并不等長,而是16b~120b不等的,Predecoder部件的作用是劃分指令邊界,然后將其導(dǎo)入L1指令Cache。因此雖然Atom處理器L1指令Cache的大小為36KB,而實(shí)際可利用大小僅為32KB,剩余的4KB用來存放SOI(Start of Instruction),EOI(End of Instruction),等一些TAG信息。Atom處理器可以直接處理多數(shù)CISC指令,但是仍然有一些過于復(fù)雜的CISC指令被分解為若干個μops,再進(jìn)入指令流水線。但是Atom處理器的流水線并非沒有可取之處,這顆處理器可以直接執(zhí)行ALU/Memory指令。這類指令首先被分解為ALU和Memory兩個微操作,然后成對進(jìn)入流水線,雖然Memory操作仍不能先于ALU操作執(zhí)行完畢,也明顯提高了這類指令的執(zhí)行效率。為了彌補(bǔ)沒有使用亂序執(zhí)行的缺憾,Intel的設(shè)計人員采用了Intel一向很稱道的HT(Hyper-Threading)技術(shù),即超線程技術(shù),這種技術(shù)能夠顯著提升系統(tǒng)的響應(yīng)性。因?yàn)樗闹饕O(shè)計理念是,在一個物理CPU上實(shí)現(xiàn)了兩個邏輯的CPU,這兩個邏輯的CPU擁有自己獨(dú)立的寄存器組還擁有獨(dú)立的APIC(Advanced Programmable Interrupt Controller)等其它資源,但是它們共用一條流水線,在一條線程由于執(zhí)行某種耗時操作而掛起的時候,另一個線程的代碼可以使用這條流水線,同時它們可以同時跟蹤自己的中斷,而互不干擾。
Intel工程師們?yōu)榱藢?shí)現(xiàn)向前兼容,還不得不放棄很多最新的、優(yōu)秀的芯片設(shè)計方法。從而使得Atom處理器有一種背負(fù)歷史使命的厚重感,少了一些現(xiàn)代的輕盈與高效。但是我們也看到,Atom處理器最開始是跑上網(wǎng)本的,也正是由于其一直秉承的向前兼容理念使得上網(wǎng)本上可以安裝xp或者linux系統(tǒng),然而,在上網(wǎng)本上跑各種PC中的軟件卻讓人愈發(fā)感覺Atom處理速度的不足。Intel擁有著這個星球上最頂尖的芯片工程師,但是他們的才智卻被花在了解決x86那些乖張、荒謬的處理邏輯上。性能并不是Atom處理器的優(yōu)勢,并不出乎體系結(jié)構(gòu)專家的意外,在許多Benchmark程序下,Atom處理器落后于Cortex A9處理器,如圖2.8所示。而且Atom處理器的功耗與ARM處理器目前并沒有可比之處。
圖2.8 Atom與Cortex Benchmark性能測試對比
注釋:
【1】System-on-Chip技術(shù)是一種高度集成化、固件化的系統(tǒng)集成技術(shù),其核心是要把整個應(yīng)用電子系統(tǒng)全部集成在一個芯片中,它通過在單一芯片中嵌入軟件,實(shí)現(xiàn)多功能和高性能,以及對多種協(xié)議、多種硬件和不同應(yīng)用的支持。
一、
二、
1.
2.
3.
4.
5.
6.
7.
8.
評論