學(xué)習(xí)啦>學(xué)習(xí)電腦>電腦硬件知識>硬件知識>

關(guān)于CPU、指令集、架構(gòu)、芯片的科普

時(shí)間: 捷鋒774 分享

  什么是CPU、指令集、架構(gòu)、芯片呢,下面是學(xué)習(xí)啦小編帶來的關(guān)于關(guān)于CPU、指令集、架構(gòu)、芯片的科普:的內(nèi)容,歡迎閱讀!

  關(guān)于CPU、指令集、架構(gòu)、芯片的科普:

  隨著智能設(shè)備的廣泛普及,這幾年媒體上越來越多的出現(xiàn)關(guān)于“架構(gòu)”“ARM vs x86”“芯片研發(fā)”的相關(guān)內(nèi)容。很多消費(fèi)者和愛好者面對這些以往不太常見的信息時(shí)就會迷惑甚至產(chǎn)生誤解。其中一組比較容易被混淆的概念就是CPU、架構(gòu)、指令集與芯片。本文試圖用較淺顯的文字闡明它們的關(guān)系與區(qū)別,糾正一些常見的錯(cuò)誤認(rèn)識與觀點(diǎn)。

  學(xué)過計(jì)算機(jī)基礎(chǔ)知識的朋友都知道CPU的含義,亦即中央處理器,是負(fù)責(zé)計(jì)算機(jī)主要運(yùn)算任務(wù)的組件。一般習(xí)慣把CPU比喻為人的大腦。而了解略深的用戶會聽說CPU有x86、ARM等分類,前者主要用于PC而后者主要用于手機(jī)平板等設(shè)備。那么這里的x86、ARM指的是什么呢?

  CPU執(zhí)行計(jì)算任務(wù)時(shí)都需要遵從一定的規(guī)范,程序在被執(zhí)行前都需要先翻譯為CPU可以理解的語言。這種規(guī)范或語言就是指令集(ISA,Instruction Set Architecture)。程序被按照某種指令集的規(guī)范翻譯為CPU可識別的底層代碼的過程叫做編譯(compile)。x86、ARM v8、MIPS都是指令集的代號。指令集可以被擴(kuò)展,如x86增加64位支持就有了x86-64。廠商開發(fā)兼容某種指令集的CPU需要指令集專利持有者授權(quán),典型例子如Intel授權(quán)AMD,使后者可以開發(fā)兼容x86指令集的CPU。

  CPU的基本組成單元即為核心(core)。多個(gè)核心可以同時(shí)執(zhí)行多件計(jì)算任務(wù),前提是這些任務(wù)沒有先后順序。

  核心的實(shí)現(xiàn)方式被稱為微架構(gòu)(microarchitecture)。微架構(gòu)的設(shè)計(jì)影響核心可以達(dá)到的最高頻率、核心在一定頻率下能執(zhí)行的運(yùn)算量、一定工藝水平下核心的能耗水平等等。此外,不同微架構(gòu)執(zhí)行各類程序的偏向也不同,例如90年代末期Intel的P6微架構(gòu)就在浮點(diǎn)類程序上表現(xiàn)優(yōu)異,但在整數(shù)類應(yīng)用中不如同頻下的對手。

  常見的代號如Haswell、Cortex-A15等都是微架構(gòu)的稱號。注意微架構(gòu)與指令集是兩個(gè)概念:指令集是CPU選擇的語言,而微架構(gòu)是具體的實(shí)現(xiàn)。i7-4770的核心是Haswell微架構(gòu),這種微架構(gòu)兼容x86指令集。對于兼容ARM指令集的芯片來說這兩個(gè)概念尤其容易混淆:ARM公司將自己研發(fā)的指令集叫做ARM指令集,同時(shí)它還研發(fā)具體的微架構(gòu)如Cortex系列并對外授權(quán)。但是,一款CPU使用了ARM指令集不等于它就使用了ARM研發(fā)的微架構(gòu)。Intel、高通、蘋果、Nvidia等廠商都自行開發(fā)了兼容ARM指令集的微架構(gòu),同時(shí)還有許多廠商使用ARM開發(fā)的微架構(gòu)來制造CPU。通常,業(yè)界認(rèn)為只有具備獨(dú)立的微架構(gòu)研發(fā)能力的企業(yè)才算具備了CPU研發(fā)能力,而是否使用自行研發(fā)的指令集無關(guān)緊要。微架構(gòu)的研發(fā)也是IT產(chǎn)業(yè)技術(shù)含量最高的領(lǐng)域之一。

  數(shù)年前國產(chǎn)龍芯CPU獲得MIPS授權(quán)的消息曾引起一陣風(fēng)波,龍芯相關(guān)負(fù)責(zé)人還曾出來解釋。龍芯是兼容MIPS指令集,微架構(gòu)部由中科院自主研發(fā)的CPU系列。過去中科院資金不足所以沒有MIPS指令集授權(quán),但是指令集的實(shí)現(xiàn)方式是公開的,因而中科院可以在研發(fā)時(shí)選擇兼容該指令集。待資金充足買下授權(quán)后,龍芯就可以合法在市面銷售。從這里我們可以知道,廠商研發(fā)CPU時(shí)并不需要獲得指令集授權(quán)就可以獲得指令集的相關(guān)資料與規(guī)范,指令集本身的技術(shù)含量并不是很高。獲得授權(quán)主要是為了避免法律問題。然而微架構(gòu)的設(shè)計(jì)細(xì)節(jié)是各家廠商絕對保密的,而且由于其技術(shù)復(fù)雜,即便獲得相應(yīng)文檔也難以山寨。不同廠商的微架構(gòu)設(shè)計(jì)水平也有較大差異,典型如Intel與AMD的對比,前者在最近幾年明顯技高一籌。

  微架構(gòu)研發(fā)完成,或者說核心研發(fā)完成,接下來就是將其組裝為芯片了。過去的芯片僅僅包括CPU部分,如今大量的芯片集成了CPU、GPU、IO等多種不同的功能組件,此時(shí)這種芯片就不是傳統(tǒng)意義上的“CPU”了。將各種功能組件組裝為芯片的技術(shù)含量相比微架構(gòu)研發(fā)來說是較低的,因而業(yè)界能做此類工作的企業(yè)也數(shù)量較多。

  在PC時(shí)代,幾大主要的CPU研發(fā)廠商都只是自己研制微架構(gòu)自己用。到了智能設(shè)備時(shí)代,ARM公司的微架構(gòu)授權(quán)模式興起。ARM自己開發(fā)微架構(gòu)后將它們上架出售,其他廠商可以拿這些核心組裝為芯片來使用或銷售。由于這種模式對第三方的技術(shù)能力要求很低,加上ARM的微架構(gòu)在低功耗領(lǐng)域表現(xiàn)優(yōu)異,這種模式獲得了廣泛成功。如果你發(fā)現(xiàn)某款芯片標(biāo)明使用了Cortex系列核心,則一定是這種模式的產(chǎn)物。如前所述,僅僅從ARM購買微架構(gòu)來組裝芯片的廠商是不能被稱作CPU研發(fā)企業(yè)的,這些芯片也不能被稱為“xx廠商研發(fā)的CPU”。典型如華為的海思920、三星Exynos 5430,只能說是“使用ARM Cortex-A15核心的芯片”。但是如果一款兼容ARM指令集的芯片使用了廠商自主研發(fā)的微架構(gòu)情況就不同了。高通驍龍800、蘋果A7就是這樣的例子--它們分別使用了高通、蘋果自主研發(fā)的CPU。

  隨著智能設(shè)備市場不斷擴(kuò)大,ARM陣營也不斷壯大。占領(lǐng)智能設(shè)備領(lǐng)域后,ARM陣營開始進(jìn)入PC、服務(wù)器與高性能計(jì)算領(lǐng)域。先是ARM發(fā)布了ARM v8 64位指令集規(guī)范,接著是各大廠商紛紛開始研發(fā)基于ARM v8的高性能微架構(gòu)。有人會問,ARM指令集不是為低功耗設(shè)備研發(fā)的嗎?怎么現(xiàn)在又開始做高性能CPU了呢?多年以前這樣的懷疑是很有道理的,因?yàn)楸藭r(shí)不同指令集對微架構(gòu)的影響還比較大,ARM適合低功耗,x86適合PC,Power適合小型機(jī)……這類區(qū)分是存在的。但是隨著技術(shù)進(jìn)步,指令集對微架構(gòu)的影響已經(jīng)小到可以忽略,任何指令集都可以做出適合不同領(lǐng)域的優(yōu)秀微架構(gòu)來。因此用戶看到x86指令集的手機(jī)cpu或是ARM指令集的服務(wù)器CPU都無需驚訝,這是技術(shù)發(fā)展的自然結(jié)果。

  那么,現(xiàn)在各家CPU研發(fā)廠商選擇指令集的標(biāo)準(zhǔn)又是什么呢?業(yè)界除了x86和ARM、MIPS,其實(shí)還有一大堆各種各樣的指令集。比如小型主機(jī)領(lǐng)域的Sparc、Alpha、Power等。國內(nèi)幾家研CPU的科研機(jī)構(gòu)就分別選擇了x86、MIPS、Sparc、Alpha、ARM指令集,早年甚至有機(jī)構(gòu)選擇Intel沒落的Itanium使用的EPIC指令集的。一般來說大家傾向于選擇軟件生態(tài)較好的指令集--前面說過,軟件必須編譯后才能在某種指令集平臺上運(yùn)行,而編譯是很復(fù)雜的事情,絕大多數(shù)閉源軟件僅僅會對少數(shù)一兩個(gè)平臺編譯。因而支持某種指令集的軟件應(yīng)用越多,這種指令集也就越有市場優(yōu)勢--新開發(fā)的微架構(gòu)只需要兼容某種指令集,那么就可以很容易運(yùn)行大量為其開發(fā)的軟件。早年因?yàn)槲④浀膹?qiáng)勢與Wintel聯(lián)盟的推動,x86指令集成了最受歡迎的角色,幫助Intel用彼時(shí)性能相對落后的微架構(gòu)在PC平臺擠跑了一眾對手。后PC時(shí)代由于蘋果谷歌的兩大操作系統(tǒng)平臺的推動,ARM指令集又取得了絕對的市場優(yōu)勢。但對于新的CPU研發(fā)單位來說,他們想獲得熱門指令集的兼容授權(quán)是很困難的事情。以前x86與ARM的指令集授權(quán)是拿錢買不到的,想要得到都需要進(jìn)行高水平專利交換。拿到x86授權(quán)的幾家廠商要么是拿的早(AMD、Cyrix、IDT),要么是有高水平技術(shù)與Intel交易(Transmeta,以功耗控制技術(shù)同Intel交易)。后來Nvidia想要研發(fā)自己的CPU,找Intel軟磨硬泡后者就是不給,搞得Nvidia相當(dāng)無奈。國內(nèi)的研發(fā)單位當(dāng)年開始研究時(shí)自知不可能拿到x86授權(quán),于是各自去找關(guān)系好些的其他授權(quán)方解決問題了。ARM這邊也一直對指令集授權(quán)卡的很死,之前只有高通、博通和Intel得到,也是通過技術(shù)交換的形式。08年蘋果喬幫主被Intel甩臉色后決定自己搞CPU,最后也拿到了ARM的許可,想來彼時(shí)老喬也是威逼利誘,硬是讓ARM屈服了(畢竟指令集多授權(quán)一家就多個(gè)對手啊)。后來ARM對指令集授權(quán)也放松了,去年三星與華為也分別得到了授權(quán),他們的自研CPU預(yù)計(jì)也將在未來一兩年面世。

  本文總結(jié)下來的內(nèi)容很簡單:指令集與微架構(gòu)是不同的概念,不可混淆;CPU研發(fā)指的是微架構(gòu)研發(fā);如今指令集不再有“最適合領(lǐng)域”的說法。希望這篇文章能幫助被這些問題困擾的朋友,也希望媒體在提及這些概念時(shí)多做一些科普與澄清。

關(guān)于CPU、指令集、架構(gòu)、芯片的科普

什么是CPU、指令集、架構(gòu)、芯片呢,下面是學(xué)習(xí)啦小編帶來的關(guān)于關(guān)于CPU、指令集、架構(gòu)、芯片的科普:的內(nèi)容,歡迎閱讀! 關(guān)于CPU、指令集、架構(gòu)、芯片的科普: 隨著智能設(shè)備的廣泛普及,這幾年媒體上越來越多的出現(xiàn)關(guān)于架構(gòu)ARM vs x86芯
推薦度:
點(diǎn)擊下載文檔文檔為doc格式

精選文章

  • CPU風(fēng)扇的安裝教程
    CPU風(fēng)扇的安裝教程

    隨著處理器的不斷升級發(fā)熱量也在逐漸的增加,不少最新高端處理器甚至使用了水冷散熱等散熱技術(shù),并且隨著cpu散熱的加強(qiáng),目前不少電腦的cpu風(fēng)扇的安

  • cpu溫度高怎么辦呢
    cpu溫度高怎么辦呢

    經(jīng)常玩游戲的時(shí)候,夏天的時(shí)候,CPU總是溫度過高,應(yīng)該怎么辦呢,下面讓我們一起看看。 cpu溫度高怎么辦: cpu溫度高怎么辦?夏天還沒來到,可是今天的

  • cpu的風(fēng)扇轉(zhuǎn)速調(diào)節(jié)怎么調(diào)
    cpu的風(fēng)扇轉(zhuǎn)速調(diào)節(jié)怎么調(diào)

    如果電腦長期使用時(shí),溫度會升高,為了防止cpu被燒壞,讓cpu風(fēng)扇轉(zhuǎn)速保持正常是十分必要的,不然無法達(dá)到很好的降溫效果,會使電腦遭到損壞。那么,

  • cpu風(fēng)扇轉(zhuǎn)速調(diào)節(jié)怎么調(diào)
    cpu風(fēng)扇轉(zhuǎn)速調(diào)節(jié)怎么調(diào)

    CPU的轉(zhuǎn)速大家是不是看得眼花繚亂,其實(shí)CPU轉(zhuǎn)速是一門學(xué)問,下面就讓小編來給你們介紹下。 cpu風(fēng)扇轉(zhuǎn)速調(diào)節(jié)怎么調(diào): CPU風(fēng)扇的轉(zhuǎn)速在系統(tǒng)里面可以用第

602876