里之行,始于足下。
大家好,歡迎來到今天的電腦知識分享,今天有小亮繼續(xù)給大家分享一點電腦硬件知識。今天咱們要聊的就是關于電腦中心處理器的知識。
cpu概念圖
CPU是英文“Central Processing Unit”的首字母縮寫,翻譯為中文,意思就是“中央處理器”,簡稱“處理器”。這個名字相信大家都很熟悉,但是對于各種命名方式及性能劃分可能沒有那么清楚。例如常見的 i7-4770K、R9 3900XT這樣的命名。今天我們便來說一說CPU的功能、以及主流廠商和它數(shù)字+字母的命名代表的含義。
首先是CPU的功能,關于這點我們可以從它的名稱上簡單理解。“處理器”,當然就是做處理工作的,對電腦來說就是處理信息,電腦指令、負責數(shù)據(jù)運算等。我們所有對電腦操作的信息都要經(jīng)過CPU處理,比如用鼠標打開電腦中的文件,從鍵盤上輸入一個字母,這些都要經(jīng)過CPU的處理。此外,所有電腦中的資源都由CPU指揮調(diào)度安排,它相當于人類的大腦,是電腦中的最最核心配件。一般來說,一臺電腦的性能怎么樣,速度快不快,主要就看CPU。
由于CPU具有積小,集成度高的特點(一小塊中就有十幾億個晶體管)。因此能夠生產(chǎn)出CPU的廠家可謂是鳳毛麟角。在經(jīng)過殘酷的市場競爭后,目前只有兩家公司為普通用戶提供電腦CPU了,一家是1968年成立的英特爾集成電子公司(Integrated Electronics Corporation),英文簡稱Intel,另一家是成立于1969年的美國超威半導體公司(Advanced Micro Devices),英文簡稱AMD。
Inter,制造了史上第一個CPU,作為CPU界的老大哥,它占有了大部分的市場份額。不過近幾年AMD的強勢發(fā)展,對它也產(chǎn)生了一定的影響。英特爾目前的主力CPU叫智能酷睿簡稱“酷睿”,英文為Corei,分為酷睿i3/i5/i7/i9,數(shù)字越大表示性能越強、價格越貴、定位越高。以酷睿i7-8700K為例,i7表示該CPU型號,8700中的第一個數(shù)字「8」表示它是第八代產(chǎn)品,后面的三位數(shù)字「700」是CPU的型號代號,數(shù)字越大代表CPU的頻率越高,性能也越好。字母后綴代表CPU的特殊能力,這里的K表示可以配合主板進行超頻。
AMD,目前唯一一家可以和Intel相提并論的公司。其專門為計算機、通信和消費電子行業(yè)設計和制造各種創(chuàng)新的微處理器、閃存和低功率處理器解決方案。同時,AMD還是目前業(yè)內(nèi)唯一一個可以提供高性能CPU、高性能獨立顯卡GPU、主板芯片組三大組件的半導體公司。AMD 有超過70% 的收入都來自于國際市場,是一家真正意義上的跨國公司。目前AMD的主力產(chǎn)品為銳龍,命名為Ryzen,也分為銳龍3/5/7/9,與英特爾i3/i5/i7/i9的定位、性能基本上是一一對應的。R3、R5、R7,數(shù)值越大性能越好。比如R5 1500X,1代表第幾代,5代表性能越高越好,X代表支持完整的XFR技術(帶X的超頻能力更強,而且超頻是全自動智能的)。
CPU概念圖
好了,CPU命名的常見規(guī)則就說到這里了,在我們選購電腦時可以通過CPU的命名方式、大概權衡電腦的價值、對于CPU命名中的一些專有字母表示所特有的含義,這里就不一一描述了,如果您對本文聊的問題還有什么疑問,歡迎大家在評論區(qū)。
PU是電腦的中央處理器,作為計算機的運算與控制核心,它的作用就好比我們的大腦一樣,處理信息與支配其它硬件工作的指揮中樞,所以它的重要性就不言而喻了,目前市場上的CPU主要分為兩大類,一類是AMD,一類是Intel,很多朋友在選擇CPU的時候就開始陷入了糾結,因為CPU除了牌子的分別,還有一些后綴字母,比如K、F、G、X等,而且還有代數(shù)等等參數(shù)的講究,很多朋友看到這里就暈了,最近有好多買電腦的朋友問到了我這些問題,今天我就來跟大家分享一下CPU的相關知識,希望對大家有所幫助!
Intel與AMD兩種CPU。
說到CPU我們首先要做個簡單的區(qū)分,以我們現(xiàn)在的主流型號為準,筆記本電腦上面的處理器與組裝電腦上面的CPU是不能混用的,當然經(jīng)過魔改的主板可以實現(xiàn)混用,這種我們見的少,在這里就不做過多討論了,AMD的CPU與Intel 的CPU也是不能混用的,因為兩種U的針腳是完全不同的,每種品牌內(nèi)的CPU針腳也有區(qū)分,比如AMD系列的CPU有AM4與FM2兩種接口,Intel主要分為1200針、1155針、1150針、1151針四種針腳,與此同時,就算是針腳一樣,放在不同的主板上也并不一定能正常使用,所以這里面的學問還是很深的,了解這些基本的規(guī)則之后,我們就開始說常見的CPU后綴含義了,介紹如下:
X:代表至尊,是最好的CPU,X指的是同一代數(shù)CPU當中最好的CPU,比如I9-9900X這款CPU,它的性能就要比I9-9900K性能強。
K:代表超頻,這種CPU也是我們生活中主流,很多游戲玩家的不二之選,可以自由調(diào)節(jié)超頻,可以說除了X之外,帶有K的CPU就是同一代數(shù)中最強的CPU,比如I7-8700K性能就要強于I7-8700K。
C:這種后綴比較少見,主要代表就是5代處理器了,現(xiàn)在已經(jīng)很少見到了,在這里不做過多的描述。
S/T:S代表65W功耗的節(jié)能版,T代表45W節(jié)能版,性能低,現(xiàn)在也很少見。
F:指的是不含有核顯的處理器,安裝這款處理器需要使用獨立顯卡才可以正常使用,比如Intel I5-9400與I5-9400F。
臺式機帶有F的后綴CPU。
X:與組裝電腦類似,也是筆記本當中代數(shù)最高的CPU,表示性能高。
L:低電壓版的處理器,主要適用于辦公。
U:超低電壓版CPU,功耗比L系列的還要低。
Q:四核處理器的代表,也只有筆記本電腦會有Q的后綴。
Y:超低功耗版CPU,很少見,常用于超極本電腦。
HQ:直接焊接在主板上的四核CPU,主要用于游戲本。
H:使用BGA封裝的CPU。
MQ:BGA封裝的四核CPU,CPU可以自行更換。
筆記本含有HQ后綴的處理器。
X:含有X后綴的是代表增強版性能,舉個例子銳龍R5-3600X的性能要強于R5-3600。
G:含有字母G是代表有核顯,不含有G說明沒有核顯,需要搭配獨立顯卡才可以正常使用。
W:工業(yè)級的CPU,主要針對設計領域的工作者使用。
WX:是AMD端的最高端CPU,不僅價格貴,而且性能也是最好的。
含有X的AMD臺式機處理器。
以上就是關于CPU后綴的含義了,總體來說,INTEL平臺的處理器性能強,單核能力強,功耗低,但是它的價格高,而AMD平臺的處理器功耗高,爆發(fā)力強,功耗高,但是它的價格便宜,如果我們是為了單純玩游戲,我們優(yōu)選Intel,如果是單純畫圖設計,首選AMD,當然Intel平臺的處理器也可以畫圖設計,AMD平臺的處理器也可以玩游戲,只是它們的擅長領域不一樣!
知道了上面的這些CPU后綴信息指揮輔助我們?nèi)チ私釩PU,要是想要買到稱心如意的CPU,還得要看主板支持的CPU種類代數(shù)接口,當然還得要考慮自己的預算與使用要求,只有這樣才能買好,買對CPU!不知道大家是不是這么認為的?歡迎留言評論!
原創(chuàng)作品,版權所有,未經(jīng)允許,禁止盜用!文章、圖片均原創(chuàng),原創(chuàng)作者:朱虎!本人專注分享簡單易懂數(shù)碼科技類防坑防騙的知識,與大家互相學習,一起進步!感謝大家點贊與關注!下期我們再見!
源:內(nèi)容由半導體行業(yè)觀察(icbank)編譯自「techspot」,謝謝。
CPU通常被稱為計算機的大腦,就像人的大腦一樣,它由幾個部分組成,其中包括接收信息的部分,存儲信息的部分,處理信息的部分,幫助輸出信息的部分等等。這些部分協(xié)同工作以處理信息。
在今天的解文章中,我們將介紹構成CPU的關鍵元素以及它們?nèi)绾喂餐瑸橛嬎銠C提供動能。
分析任何CPU時,您首先遇到的就是指令集體系結構(ISA)。這是有關CPU如何運行以及所有內(nèi)部系統(tǒng)如何交互的圖形化藍圖。就像同一物種中有許多品種的狗一樣,可以在CPU上構建許多不同類型的ISA。兩種最常見的類型是x86(在臺式機和筆記本電腦中找到)和ARM(在嵌入式和移動設備中找到)。
還有其他一些像MIPS,RISC-V和PowerPC這樣的小眾應用程序。ISA將指定CPU可以處理哪些指令,如何與內(nèi)存和緩存交互,如何在多個處理階段劃分工作等等。
為了覆蓋CPU的主要部分,我們將遵循一條指令在執(zhí)行時所采用的路徑。不同類型的指令可能遵循不同的路徑,并使用CPU的不同部分,但在這里我們將進行概括以涵蓋最大部分。我們將從單核處理器的最基本設計開始,并隨著我們朝著更現(xiàn)代的設計逐步增加復雜性。
CPU可以分為兩部分:控制單元和數(shù)據(jù)路徑。想象一輛火車。引擎是火車的動力來源,但指揮員卻在幕后拉動操縱桿并控制引擎的各個方面。CPU是相同的方式。
數(shù)據(jù)路徑就像引擎一樣,顧名思義,是數(shù)據(jù)在處理過程中流動的路徑。數(shù)據(jù)路徑接收輸入,處理它們,并在完成后將它們發(fā)送到正確的位置。控制單元告訴數(shù)據(jù)路徑如何工作。根據(jù)指令,數(shù)據(jù)路徑會將信號路由到不同的組件,打開和關閉數(shù)據(jù)路徑的不同部分,并監(jiān)視CPU的狀態(tài)。
我們的CPU必須做的第一件事是弄清楚下一步要執(zhí)行什么指令,然后將它們從內(nèi)存轉(zhuǎn)移到CPU中。指令由編譯器產(chǎn)生,并且特定于CPU的ISA。ISA將共享最常見的指令類型,例如加載,存儲,加法,減法等,但是每個特定ISA都有許多其他特殊類型的指令。對于每種類型的指令,控制單元將知道需要將哪些信號路由到何處。
例如,當您在Windows上運行.exe時,該程序的代碼將移入內(nèi)存,并且告訴CPU第一條指令的起始地址。CPU始終維護一個內(nèi)部寄存器,該寄存器保存要執(zhí)行的下一條指令的存儲器位置。這稱為程序計數(shù)器(PC)。
一旦知道從哪里開始,指令周期的第一步就是獲取該指令。這會將指令從存儲器移到CPU的指令寄存器中,這稱為提取階段。實際上,指令可能已經(jīng)在CPU的高速緩存中,這個我們在后續(xù)再介紹。
當CPU有一條指令時,它需要專門弄清楚它是什么類型的指令。這稱為解碼階段。每個指令將具有一組稱為操作碼的特定位,該“位”告訴CPU如何解釋它。這類似于如何使用不同的文件擴展名告訴計算機如何解釋文件。例如,.jpg和.png都是圖像文件,但是它們以不同的方式組織數(shù)據(jù),因此計算機需要知道類型才能正確解釋它們。
根據(jù)ISA的復雜程度,CPU的指令解碼部分可能會變得復雜。像RISC-V這樣的ISA可能只有幾十條指令,而x86有數(shù)千條指令。在典型的Intel x86 CPU上,解碼過程是最具挑戰(zhàn)性的過程之一,并且占用大量空間。CPU將解碼的最常見的指令類型是存儲器,算術或分支指令。
存儲指令可能類似于“將值從存儲地址1234讀入值A”或“將值B寫入存儲地址5678”。算術指令可能類似于“將值A添加到值B并將結果存儲到值C”。分支指令可能類似于“如果C值為正,則執(zhí)行此代碼;如果C值為負,則執(zhí)行彼代碼”。一個典型的程序可能將它們鏈接在一起,以產(chǎn)生類似“將結果為肯定的內(nèi)存地址1234的值添加到內(nèi)存地址5678的值,并將其存儲在內(nèi)存地址4321的結果,如果結果為負的則存儲在地址8765的東西” 。
在開始執(zhí)行剛剛解碼的指令之前,我們需要暫停片刻以討論寄存器。
CPU具有一些很小但非常快的存儲器,稱為寄存器。在64位CPU上,每個將容納64位,并且內(nèi)核可能只有幾十個。這些用于存儲當前正在使用的值,可以將其視為類似于L0緩存的值。在上面的指令示例中,值A,B和C都將存儲在寄存器中。
現(xiàn)在回到執(zhí)行階段。對于我們上面討論的3種類型的指令,這將有所不同,因此我們將分別介紹每一種。
從算術指令開始,因為它們最容易理解。這些類型的指令被送入算術日志單元(ALU)進行處理。ALU是一種通常具有兩個輸入和控制信號并輸出結果的電路。
想象一下您在中學時期使用的基本計算器。要執(zhí)行操作,請輸入兩個輸入數(shù)字以及要執(zhí)行的操作類型。計算器進行計算并輸出結果。對于我們的CPU的ALU,操作類型由指令的操作碼決定,控制單元會將其發(fā)送給ALU。除了基本的算術運算之外,ALU還可以執(zhí)行AND,OR,NOT和XOR之類的bitwise運算。ALU還將為控制單元輸出一些有關其剛剛完成的計算的狀態(tài)信息。這可能包括諸如結果是肯定的,否定的,零的還是溢出的事情。
ALU與算術運算最相關,但是它也可以用于存儲器或分支指令。例如,CPU可能需要計算作為先前算術運算結果給出的內(nèi)存地址。它還可能需要計算偏移量,以添加到分支指令所需的程序計數(shù)器中。諸如“如果先前的結果是否定的,則向前跳20條指令”。
對于內(nèi)存指令,我們需要了解一個稱為“ 內(nèi)存層次結構”的概念。這代表了高速緩存,RAM和主存儲之間的關系。當CPU接收到一條內(nèi)存指令,該指令針對尚未在其寄存器本地存儲的數(shù)據(jù)時,它將沿內(nèi)存層次結構下降,直到找到它為止。大多數(shù)現(xiàn)代CPU包含三級緩存:L1,L2和L3。CPU首先要檢查的地方是L1緩存。這是三級緩存中最小和最快的。L1高速緩存通常分為用于數(shù)據(jù)的部分和用于指令的部分。請記住,指令需要像數(shù)據(jù)一樣從內(nèi)存中獲取。
典型的L1緩存可能為數(shù)百KB。如果CPU在L1緩存中找不到所需的內(nèi)容,它將檢查L2緩存。這可能約為幾MB。下一步是L3緩存,它可能是幾十MB。如果CPU在三級緩存中找不到所需的數(shù)據(jù),它將進入RAM,最后進入主存儲器。當我們沿著每一步走時,可用空間大約增加一個數(shù)量級,但是等待時間也增加。
CPU找到數(shù)據(jù)后,它將調(diào)出層次結構,以便將來如有需要,CPU可以快速訪問它。這里有很多步驟,但是可以確保CPU快速訪問所需的數(shù)據(jù)。例如,CPU可以在一個或兩個周期內(nèi)讀取其內(nèi)部寄存器,在幾個周期中讀取L1,在十個左右周期中讀取L2,在幾十個周期中讀取L3。如果需要進入內(nèi)存或主存儲,則可能要花費數(shù)萬甚至數(shù)百萬個周期。根據(jù)系統(tǒng)的不同,每個核心可能會擁有自己的私有L1緩存,與另一個核心共享一個L2,并在四個或更多核心的組之間共享一個L3。我們將在本文后面詳細討論多核CPU。
三種主要指令類型中的最后一種是分支指令。現(xiàn)代程序始終無休止地跳來跳去,CPU很少執(zhí)行沒有分支的連續(xù)指令。分支指令來自諸如if語句,for循環(huán)和return語句之類的編程元素。這些都用于中斷程序執(zhí)行并切換到代碼的不同部分。也有跳轉(zhuǎn)指令,這些跳轉(zhuǎn)指令是始終采用的分支指令。
條件分支對于CPU尤其棘手,因為它可能一次執(zhí)行多個指令,并且可能直到分支開始執(zhí)行后續(xù)指令后才能確定分支的結果。
為了完全理解為什么這是一個問題,我們需要進行另一種轉(zhuǎn)移,并討論流水線。指令周期中的每個步驟可能需要幾個周期才能完成。這意味著在提取指令時,ALU否則將處于空閑狀態(tài)。為了最大化CPU的效率,我們在稱為流水線的過程中劃分每個階段。
理解這一點的經(jīng)典方法是以洗衣服為對比。您有兩個東西要洗,洗滌和干燥個需要一個小時。您可以將第一個物件放入洗衣機中,然后在烘干機中放入,等烘干之后后再開始洗第二個產(chǎn)品。這將花費四個小時。但是,如果您劃分工作并在第一個產(chǎn)品干燥的同時開始第二個洗滌,則可以在三個小時內(nèi)完成兩個裝載。一小時減少量取決于您的要洗的東西數(shù)量以及洗衣機和烘干機的數(shù)量。洗烘每個東西仍然需要兩個小時,但是如果計算重疊,則將總吞吐量從0.5個產(chǎn)品/小時增加到0.75個產(chǎn)品/小時。
CPU使用相同的方法來提高指令吞吐量。現(xiàn)代的ARM或x86 CPU可能具有20多個流水線級,這意味著在任何給定點,該內(nèi)核一次都可以處理20多個不同的指令。每種設計都是唯一的,但是一個樣本劃分可能是4個周期用于讀取,6個周期用于解碼,3個周期用于執(zhí)行以及7個周期將結果更新回內(nèi)存。
回到分支機構,希望您可以開始看到此問題。如果直到周期10才知道一條指令是分支,那么我們將已經(jīng)開始執(zhí)行9條新指令,如果采用該分支,這些指令可能無效。為了解決這個問題,CPU具有非常復雜的結構,稱為分支預測器。他們使用機器學習中的類似概念來嘗試猜測是否將采用分支。分支預測變量的復雜性遠遠超出了本文的范圍,但是在基本級別上,它們跟蹤先前分支的狀態(tài),以了解是否可能采用即將到來的分支。現(xiàn)代分支預測器可以具有95%或更高的準確性。
一旦確定分支的結果(已完成流水線的該階段),程序計數(shù)器將被更新,CPU將繼續(xù)執(zhí)行下一條指令。如果分支的預測錯誤,則CPU將在分支錯誤地開始執(zhí)行后拋出所有指令,然后從正確的位置重新啟動。
現(xiàn)在,我們知道如何執(zhí)行三種最常見的指令類型,讓我們看一下CPU的一些更高級的功能。實際上,所有現(xiàn)代處理器實際上并沒有按接收順序執(zhí)行指令。等待執(zhí)行其他指令時,可以使用稱為亂序執(zhí)行的范例來最大程度地減少停機時間。
如果CPU知道即將到來的指令,但所需的數(shù)據(jù)并不能及時準備,這時候它可以在等待時切換指令順序并從程序的后面引入一條獨立的指令。該指令重新排序是一種功能非常強大的工具,但它遠非CPU使用的唯一技巧。
另一個提高性能的功能稱為預取。如果您要花時間從頭到尾完成一條隨機指令需要多長時間,您會發(fā)現(xiàn)內(nèi)存訪問大部分時間都用完了。預取器是CPU中的一個單元,它試圖預見將來的指令以及它們將需要什么數(shù)據(jù)。如果發(fā)現(xiàn)需要CPU尚未緩存的數(shù)據(jù),它將到達RAM并將該數(shù)據(jù)提取到緩存中。因此它的名稱叫做預取。
在CPU中,另一個正在增加的主要功能是對于特定任務的加速。這些電路的全部工作是盡可能快地完成一項小任務。這可能包括加密,媒體編碼或機器學習。
CPU可以自己完成這些事情,但是擁有專用于它們的單元會大大提高效率。專用GPU就是一個很好的例子。CPU當然可以執(zhí)行圖形處理所需的計算,但是為它們配備專用單元可以提供更好的性能數(shù)量級。隨著加速器的興起,CPU的實際核心可能只占芯片的一小部分。
下圖顯示了幾年前的Intel CPU。大部分空間被內(nèi)核和緩存占用。下面的第二張圖片是新的AMD芯片。那里的大部分空間都由核心以外的組件占用。
最后要介紹的主要功能是如何將一堆單獨的CPU連接在一起以形成多核CPU。這不只是簡單地放入我們之前討論的單核設計的多個副本那樣簡單。就像沒有簡單的方法將單線程程序轉(zhuǎn)換為多線程程序一樣,相同的概念也適用于硬件。問題來自核心之間的依賴性。
例如,對于4核設計,CPU需要能夠以4倍的速度發(fā)出指令。它還需要四個單獨的內(nèi)存接口。由于多個實體可能會處理相同的數(shù)據(jù),因此必須解決諸如一致性和非一致性之類的問題。如果兩個內(nèi)核都使用相同的數(shù)據(jù)來處理指令,那么他們?nèi)绾沃勒l擁有正確的價值?如果一個內(nèi)核修改了數(shù)據(jù)但又沒有及時到達另一個內(nèi)核執(zhí)行該怎么辦?由于它們具有可存儲重疊數(shù)據(jù)的單獨緩存,因此必須使用復雜的算法和控制器來消除這些沖突。
隨著CPU中內(nèi)核數(shù)量的增加,正確的分支預測也非常重要。內(nèi)核一次執(zhí)行的指令越多,其中一個處理分支指令的可能性就越高。這意味著指令流可能隨時更改。
通常,單獨的內(nèi)核將處理來自不同線程的指令流。這有助于減少內(nèi)核之間的依賴性。這就是為什么如果您檢查“任務管理器”,您會經(jīng)常看到一個核心在努力工作,而其他核心卻在工作。許多程序不是為多線程設計的。在某些情況下,讓一個核心來完成工作比支付試圖分工的開銷要高得多。
本文的大部分內(nèi)容都集中在CPU的體系結構設計上,因為這是大多數(shù)復雜性所在。但是,所有這些都需要在現(xiàn)實世界中創(chuàng)建,這又增加了另一層次的復雜性。
為了使整個處理器中的所有組件同步,使用了時鐘信號。現(xiàn)代處理器通常在3.0GHz和5.0GHz之間運行,并且在過去十年中似乎沒有改變。在每個周期中,芯片內(nèi)部數(shù)十億個晶體管處于導通和截止狀態(tài)。
時鐘對于確保在流水線的每個階段前進時,所有值在正確的時間顯示都是至關重要的。時鐘確定CPU每秒可以處理多少條指令。通過超頻提高其頻率將使芯片速度更快,但也會增加功耗和熱量輸出。
熱量是CPU的最大敵人。隨著數(shù)字電子設備的升溫,微觀晶體管可能開始退化。如果不清除熱量,可能會導致芯片損壞。這就是為什么所有CPU都帶有散熱器的原因。CPU的實際硅芯片可能僅占物理設備表面積的20%。占用空間的增加允許熱量更均勻地散布到散熱器。它還允許更多的引腳用于與外部組件的接口。
現(xiàn)代CPU的背面可以有數(shù)千個或更多的輸入和輸出引腳。由于大多數(shù)計算部件都在芯片內(nèi),因此移動芯片可能只有幾百個引腳。不管采用哪種設計,其中約有一半專門用于供電,其余用于數(shù)據(jù)通信。這包括與RAM,芯片組,存儲,PCIe設備等的通信。
隨著高性能CPU在滿負載下汲取100安培或更高的電流,它們需要數(shù)百個引腳才能平均分散電流消耗。引腳通常鍍金以提高導電性。不同的制造商在其許多產(chǎn)品線中使用不同的銷釘布置。
總結一下,我們將快速介紹一下Intel Core 2 CPU的設計。這是從2006年開始的,因此某些零件可能已過時,但是尚無有關較新設計的詳細信息。
從頂部開始,我們有指令緩存和ITLB。轉(zhuǎn)換后備緩沖區(qū)(TLB)用于幫助CPU知道存儲器中要查找所需指令的位置。這些指令存儲在L1指令緩存中,然后發(fā)送到預解碼器中。x86體系結構極其復雜且密集,因此有許多解碼步驟。同時,分支預測器和預取器都在期待由傳入指令引起的任何潛在問題。
從那里,指令被發(fā)送到指令隊列。回顧一下無序設計如何使CPU執(zhí)行指令并選擇最及時的指令來執(zhí)行。該隊列保存CPU正在考慮的當前指令。一旦CPU知道哪一條指令將是最佳執(zhí)行方式,它將進一步解碼為微操作。雖然一條指令可能包含CPU的復雜任務,但微操作是精細的任務,CPU可以更輕松地對其進行解釋。
然后,這些指令進入“注冊表”,“ ROB”和“保留站”。這三個組成部分的確切功能有些復雜(請考慮研究生水平的大學課程),但是它們在亂序過程中用于幫助管理指令之間的依賴關系。
一個“核心”實際上將具有許多ALU和內(nèi)存端口。將傳入的操作放入預留站,直到可以使用ALU或內(nèi)存端口。一旦所需的組件可用,該指令將在L1數(shù)據(jù)緩存的幫助下進行處理。輸出結果將被存儲,并且CPU現(xiàn)在準備從下一條指令開始。就是這樣!
雖然本文并不是要確切地指導每個CPU的工作方式,但是它應該使您對它們的內(nèi)部工作原理和復雜性有一個很好的了解。坦白說,AMD和Intel之外的人實際上都不知道他們的CPU如何工作。本文的每個部分都代表了整個研究和開發(fā)領域,因此此處提供的信息只是從頭開始。
*點擊文末閱讀原文,可閱讀英文原文。
*免責聲明:本文由作者原創(chuàng)。文章內(nèi)容系作者個人觀點,半導體行業(yè)觀察轉(zhuǎn)載僅為了傳達一種不同的觀點,不代表半導體行業(yè)觀察對該觀點贊同或支持,如果有任何異議,歡迎聯(lián)系半導體行業(yè)觀察。
今天是《半導體行業(yè)觀察》為您分享的第2278期內(nèi)容,歡迎關注。
★疫情下的半導體眾生相
★本土低功耗藍牙芯片發(fā)展提速
★芯片“備胎”計劃
NAND Flash|華為|CMOS|藍牙|FPGA|晶圓|蘋果|射頻|日本