<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > X86指令集發(fā)展簡(jiǎn)史和不足

X86指令集發(fā)展簡(jiǎn)史和不足

作者: 時(shí)間:2018-08-27 來(lái)源:網(wǎng)絡(luò ) 收藏

  架構(The architecture)是微處理器執行的計算機語(yǔ)言指令集,指一個(gè)intel通用計算機系列的標準編號縮寫(xiě),也標識一套通用的計算機指令集合。

本文引用地址:http://dyxdggzs.com/article/201808/391155.htm

  的發(fā)展史

  1978年6月8日,Intel發(fā)布了新款16位微處理器“8086”,也同時(shí)開(kāi)創(chuàng )了一個(gè)新時(shí)代:x86架構誕生了。x86指的是特定微處理器執行的一些計算機語(yǔ)言指令集,定義了芯片的基本使用規則,一如今天的x64、IA64等。

  x86是一個(gè)intel通用計算機系列的標準編號縮寫(xiě),也標識一套通用的計算機指令集合,X與處理器沒(méi)有任何關(guān)系,它是一個(gè)對所有*86系統的簡(jiǎn)單的通配符定義,例如:i386, 586,奔騰(pentium)。由于早期intel的CPU編號都是如8086,80286來(lái)編號,由于這整個(gè)系列的CPU都是指令兼容的,所以都用X86來(lái)標識所使用的指令集合如今的奔騰,P2,P4,賽揚系列都是支持X86指令系統的,所以都屬于X86家族 。

  X86指令集是美國Intel公司為其第一塊16位CPU(i8086)專(zhuān)門(mén)開(kāi)發(fā)的,美國IBM公司1981年推出的世界第一臺PC機中的CPU--i8088(i8086簡(jiǎn)化版)使用的也是X86指令,同時(shí)電腦中為提高浮點(diǎn)數據處理能力而增加的X87芯片系列數學(xué)協(xié)處理器則另外使用X87指令,以后就將X86指令集和X87指令集統稱(chēng)為X86指令集。雖然隨著(zhù)CPU技術(shù)的不斷發(fā)展,Intel陸續研制出更新型的i80386、i80486直到今天的Pentium 4(以下簡(jiǎn)為P4)系列,但為了保證電腦能繼續運行以往開(kāi)發(fā)的各類(lèi)應用程序以保護和繼承豐富的軟件資源,所以Intel公司所生產(chǎn)的所有CPU仍然繼續使用X86指令集,所以它的CPU仍屬于X86系列。

  英特爾推出X86架構已滿(mǎn)40年了,同486相比,Pentium向前邁進(jìn)了一大步, 而PⅡ的前進(jìn)步伐則沒(méi)有這么大了,X86 CPU的發(fā)展似乎已到了盡頭。英特爾非常清楚,是X86指令集限制了CPU性能的進(jìn)一步提高,因此,他們正同惠普共同努力開(kāi)發(fā)下一代指令集架構(Instruction Set Architecture ,ISA): EPIC(Explicitly Parallel Instruction Computing,顯性并行指令計算)。

  對英特爾而言, IA-64(英特爾的64位架構)是下一個(gè)10到15年的架構。新的ISA將使英特爾擺脫X86架構的限制,從而設計出超越所有現有 CPU和X86 CPU的新型處理器。那么EPIC的先進(jìn)之處在什么地方呢?

  為什么英特爾會(huì )放棄使它成為芯片巨人的X86架構呢? IA-32的問(wèn)題,我們知道,工程師可以通過(guò)提高每個(gè)時(shí)鐘的指令執行數來(lái)提高性能,英特爾新的指令集的首要目的在于,讓指令更容易解碼,更容易并行執行。這樣就可以不受限制地開(kāi)發(fā)新型處理器。 但是,對工程師而言,兼容8086的X86指令集一直是必須完成的任務(wù)。畢竟,兼容前代產(chǎn)品是使英特爾成長(cháng)壯大起來(lái)的關(guān)鍵因素,而且還可以保護用戶(hù)原先的投資和使用數以百萬(wàn)計應用軟件。

  X86不足的地方

  1、可變的指令長(cháng)度X86指令的長(cháng)度是不定的,而且有幾種不同的格式,結果造成X86 CPU的解碼工作非常復雜,為了提高CPU的工作頻率,不得不延長(cháng)CPU中的流水線(xiàn),而過(guò)長(cháng)的流水線(xiàn)在分支預測出錯的情況下,又會(huì )帶來(lái)CPU工作停滯時(shí)間較長(cháng)的弊端。

  2、寄存器的貧乏 X86指令集架構只有8個(gè)通用寄存器,而且實(shí)際只能使用6個(gè)。這種情況同現代的超標量CPU極不適應,雖然工程師們采用寄存器重命名的技術(shù)來(lái)彌補這個(gè)缺陷,但造成了CPU過(guò)于復雜,流水線(xiàn)過(guò)長(cháng)的局面。

  3、內存訪(fǎng)問(wèn) X86指令可訪(fǎng)問(wèn)內存地址,而現代 CPU則使用LOAD/STORE模式,只有LOAD和STORE指令才能從內存中讀取數據到寄存器,所有其他指令只對寄存器中的操作數計算。在CPU的速度是內存速度的5倍或5倍以上的情況下,后一種工作模式才是正途。

  4、浮點(diǎn)堆棧 X87 FPU是目前最慢的FPU,主要的原因之一就在于X87指令使用一個(gè)操作數堆棧。如果沒(méi)有足夠多的寄存器進(jìn)行計算,你就不得不使用堆棧來(lái)存放數據,這會(huì )浪費大量的時(shí)間來(lái)使用FXCH指令(即把正確的數據放到堆棧的頂部)。

  5、4GB限制 這似乎不是問(wèn)題,但是,在2000年前,主流PC只有4MB內存,現在絕大部分PC裝備了2G以上的內存,是以前的512倍,所以,PC內存突破16GB絕對不會(huì )令人驚訝,大型服務(wù)器已經(jīng)使用了32GB以上的內存,突破64GB內存的情況已經(jīng)出現。

  6、芯片變大 所有用于提高X86 CPU性能的方法,如寄存器重命名、巨大的緩沖器、亂序執行、分支預測、X86指令轉化等等,都使CPU的芯片面積變得更大,也限制了工作頻率的進(jìn)一步提高,而額外集成的這些晶體管都只是為了解決X86指令的問(wèn)題。



關(guān)鍵詞: X86 RISC

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>