CPU工作原理是怎么樣的
CPU工作原理是怎么樣的
相信大家對(duì)cpu都不陌生那么,你知道CPU工作原理嗎?跟著學(xué)習(xí)啦小編一起學(xué)習(xí)了解CPU工作原理吧。
簡(jiǎn)單的說(shuō)cpu就像是一個(gè)大的存放開(kāi)關(guān)的工廠,每個(gè)晶體管就是一個(gè)開(kāi)關(guān),關(guān)的時(shí)候表示0,開(kāi)的時(shí)候表示1,
晶體管越多,開(kāi)關(guān)也越多,在處理同一個(gè)問(wèn)題的時(shí)候走的線路也就越多。這就像是你以前學(xué)初中物理時(shí)的并聯(lián)
電路,之路越多流通的線路也越多。同樣,cpu的晶體管越多,單位時(shí)間內(nèi)可以流過(guò)的電流的支路也就越多反
映在宏觀上就是你在一顆cpu上能同時(shí)處理的數(shù)據(jù)也就越多,機(jī)器也就越快。
更現(xiàn)實(shí)生活一樣,人多力量大
晶體管有的組成CPU內(nèi)部數(shù)字開(kāi)關(guān),有的組成CPU內(nèi)部的緩存;人多當(dāng)然力量大,做的事情多,速度肯定快
CPU工作原理揭秘
眾所周知,CPU是電腦的“心臟”,是整個(gè)微機(jī)系統(tǒng)的核心,因此,它也往往成了各種檔次微機(jī)的代名詞,如昔日的286、386、486,奔騰、PII、K6到今天的PIII、P4、K7等。回顧
CPU發(fā)展歷史,CPU在制造技術(shù)上已經(jīng)獲得了極大的提高,主要表現(xiàn)在集成的電子元件越來(lái)越多,從開(kāi)始集成幾千個(gè)晶體管,到現(xiàn)在的幾百萬(wàn)、幾千萬(wàn)個(gè)晶體管,這么多晶體管,它們
是如果處理數(shù)據(jù)的呢?
◆ CPU的原始工作模式在了解CPU工作原理之前,我們先簡(jiǎn)單談?wù)凜PU是如何生產(chǎn)出來(lái)的。CPU是在特別純凈的硅材料上制造的。一個(gè)CPU芯片包含上百萬(wàn)個(gè)精巧的晶體管。人們?cè)谝粔K
指甲蓋大小的硅片上,用化學(xué)的方法蝕刻或光刻出晶體管。因此,從這個(gè)意義上說(shuō),CPU正是由晶體管組合而成的。簡(jiǎn)單而言,晶體管就是微型電子電子開(kāi)關(guān),它們是構(gòu)建CPU的基石
,你可以把一個(gè)晶體管當(dāng)作一個(gè)電燈開(kāi)關(guān),它們有個(gè)操作位,分別代表兩種狀態(tài):ON(開(kāi))和OFF(關(guān))。這一開(kāi)一關(guān)就相等于晶體管的連通與斷開(kāi),而這兩種狀態(tài)正好與二進(jìn)制中的
基礎(chǔ)狀態(tài)“0”和“1”對(duì)應(yīng)!這樣,計(jì)算機(jī)就具備了處理信息的能力。但你不要以為,只有簡(jiǎn)單的“0”和“1”兩種狀態(tài)的晶體管的原理很簡(jiǎn)單,其實(shí)它們的發(fā)展是經(jīng)過(guò)科學(xué)家們多
年的辛苦研究得來(lái)的。在晶體管之前,計(jì)算機(jī)依靠速度緩慢、低效率的真空電子管和機(jī)械開(kāi)關(guān)來(lái)處理信息。后來(lái),科技人員把兩個(gè)晶體放置到一個(gè)硅晶體中,這樣便創(chuàng)作出第一個(gè)集
成電路,再后來(lái)才有了微處理器。 看到這里,你一定想知道,晶體管是如何利用“0”和“1”這兩種電子信號(hào)來(lái)執(zhí)行指令和處理數(shù)據(jù)的呢?其實(shí),所有電子設(shè)備都有自己的電路和開(kāi)
關(guān),電子在電路中流動(dòng)或斷開(kāi),完全由開(kāi)關(guān)來(lái)控制,如果你將開(kāi)關(guān)設(shè)置微OFF,電子將停止流動(dòng),如果你再將其設(shè)置為ON,電子又會(huì)繼續(xù)流動(dòng)。晶體管的這種ON與OFF的切換只由電子
信號(hào)控制,我們可以將晶體管稱之為二進(jìn)制設(shè)備。這樣,晶體管的ON狀態(tài)用“1”來(lái)表示,而OFF狀態(tài)則用“0”來(lái)表示,就可以組成最簡(jiǎn)單的二進(jìn)制數(shù)。眾多晶體管產(chǎn)生的多個(gè)“1”
與“0”的特殊次序和模式能代表不同的情況,將其定義為字母、數(shù)字、顏色和圖形。舉個(gè)例子,十進(jìn)制位中的1在二進(jìn)制模式時(shí)也是“1”,2在二進(jìn)制位模式時(shí)是“10”,3是“11”
,4是“100”,5是“101”,6是“110”等等,依此類推,這就組成了計(jì)算機(jī)工作采用的二進(jìn)制語(yǔ)言和數(shù)據(jù)。成組的晶體管聯(lián)合起來(lái)可以存儲(chǔ)數(shù)值,也可以進(jìn)行邏輯運(yùn)算和數(shù)字運(yùn)算
。加上石英時(shí)鐘的控制,晶體管組成就像一部復(fù)雜的機(jī)器那樣同步地執(zhí)行它們的功能。
◆ CPU的內(nèi)部結(jié)構(gòu)現(xiàn)在我們已經(jīng)大概知道CPU是負(fù)責(zé)些什么事情,但是具體由哪些部件負(fù)責(zé)處理數(shù)據(jù)和執(zhí)行程序呢? 1.算術(shù)邏輯單元ALU(Arithmetic Logic Unit) ALU是運(yùn)算器的
核心。它是以全加器為基礎(chǔ),輔之以移位寄存器及相應(yīng)控制邏輯組合而成的電路,在控制信號(hào)的作用下可完成加、減、乘、除四則運(yùn)算和各種邏輯運(yùn)算。就像剛才提到的,這里就相
當(dāng)于工廠中的生產(chǎn)線,負(fù)責(zé)運(yùn)算數(shù)據(jù)。 2.寄存器組RS(Register Set或Registers) RS實(shí)質(zhì)上是CPU中暫時(shí)存放數(shù)據(jù)的地方,里面保存著那些等待處理的數(shù)據(jù),或已經(jīng)處理過(guò)的數(shù)據(jù)
,CPU訪問(wèn)寄存器所用的時(shí)間要比訪問(wèn)內(nèi)存的時(shí)間短。采用寄存器,可以減少CPU訪問(wèn)內(nèi)存的次數(shù),從而提高了CPU的工作速度。但因?yàn)槭艿叫酒娣e和集成度所限,寄存器組的容量不
可能很大。寄存器組可分為專用寄存器和通用寄存器。專用寄存器的作用是固定的,分別寄存相應(yīng)的數(shù)據(jù)。而通用寄存器用途廣泛并可由程序員規(guī)定其用途。通用寄存器的數(shù)目因微
處理器而異。 3.控制單元(Control Unit)正如工廠的物流分配部門,控制單元是整個(gè)CPU的指揮控制中心;由指令寄存器IR(Instruction Register)、指令譯碼器ID
(Instruction Decoder)和操作控制器OC(Operation Controller)三個(gè)部件組成,對(duì)協(xié)調(diào)整個(gè)電腦有序工作極為重要。它根據(jù)用戶預(yù)先編好的程序,依次從寄存器中取出各條指令
,放在指令寄存器IR中,通過(guò)指令譯碼(分析)確定應(yīng)該進(jìn)行什么操作,然后通過(guò)操作控制器OC,按確定的時(shí)序,向相應(yīng)的部件發(fā)出微操作控制信號(hào)。操作控制器OC中主要包括節(jié)拍
脈沖發(fā)生器、控制矩陣、時(shí)鐘脈沖發(fā)生器、復(fù)位電路和啟停電路等控制邏輯 4.總線(Bus)就像工廠中各部位之間的聯(lián)系渠道,總線實(shí)際上是一組導(dǎo)線,是各種公共信號(hào)線的集合,
用于作為電腦中所有各組成部分傳輸信息共同使用的“公路”。直接和CPU相連的總線可稱為局部總線。其中包括:數(shù)據(jù)總線DB(Data Bus)、地址總線AB(Address Bus)、控制總
線CB(Control Bus)。其中,數(shù)據(jù)總線用來(lái)傳輸數(shù)據(jù)信息;地址總線用于傳送CPU發(fā)出的地址信息;控制總線用來(lái)傳送控制信號(hào)、時(shí)序信號(hào)和狀態(tài)信息等。
◆ CPU的工作流程由晶體管組成的CPU是作為處理數(shù)據(jù)和執(zhí)行程序的核心,其英文全稱是:Central Processing Unit,即中央處理器。首先,CPU的內(nèi)部結(jié)構(gòu)可以分為控制單元,邏輯
運(yùn)算單元和存儲(chǔ)單元(包括內(nèi)部總線及緩沖器)三大部分。CPU的工作原理就像一個(gè)工廠對(duì)產(chǎn)品的加工過(guò)程:進(jìn)入工廠的原料(程序指令),經(jīng)過(guò)物資分配部門(控制單元)的調(diào)度分
配,被送往生產(chǎn)線(邏輯運(yùn)算單元),生產(chǎn)出成品(處理后的數(shù)據(jù))后,再存儲(chǔ)在倉(cāng)庫(kù)(存儲(chǔ)單元)中,最后等著拿到市場(chǎng)上去賣(交由應(yīng)用程序使用)。在這個(gè)過(guò)程中,我們注意
到從控制單元開(kāi)始,CPU就開(kāi)始了正式的工作,中間的過(guò)程是通過(guò)邏輯運(yùn)算單元來(lái)進(jìn)行運(yùn)算處理,交到存儲(chǔ)單元代表工作的結(jié)束。
◆ 數(shù)據(jù)與指令在CPU中的運(yùn)行剛才已經(jīng)為大家介紹了CPU的部件及基本原理情況,現(xiàn)在,我們來(lái)看看數(shù)據(jù)是怎樣在CPU中運(yùn)行的。我們知道,數(shù)據(jù)從輸入設(shè)備流經(jīng)內(nèi)存,等待CPU的處理
,這些將要處理的信息是按字節(jié)存儲(chǔ)的,也就是以8位二進(jìn)制數(shù)或8比特為1個(gè)單元存儲(chǔ),這些信息可以是數(shù)據(jù)或指令。數(shù)據(jù)可以是二進(jìn)制表示的字符、數(shù)字或顏色等等。而指令告訴
CPU對(duì)數(shù)據(jù)執(zhí)行哪些操作,比如完成加法、減法或移位運(yùn)算。我們假設(shè)在內(nèi)存中的數(shù)據(jù)是最簡(jiǎn)單的原始數(shù)據(jù)。首先,指令指針(Instruction Pointer)會(huì)通知CPU,將要執(zhí)行的指令放
置在內(nèi)存中的存儲(chǔ)位置。因?yàn)閮?nèi)存中的每個(gè)存儲(chǔ)單元都有編號(hào)(稱為地址),可以根據(jù)這些地址把數(shù)據(jù)取出,通過(guò)地址總線送到控制單元中,指令譯碼器從指令寄存器IR中拿來(lái)指令
,翻譯成CPU可以執(zhí)行的形式,然后決定完成該指令需要哪些必要的操作,它將告訴算術(shù)邏輯單元(ALU)什么時(shí)候計(jì)算,告訴指令讀取器什么時(shí)候獲取數(shù)值,告訴指令譯碼器什么時(shí)
候翻譯指令等等。假如數(shù)據(jù)被送往算術(shù)邏輯單元,數(shù)據(jù)將會(huì)執(zhí)行指令中規(guī)定的算術(shù)運(yùn)算和其他各種運(yùn)算。當(dāng)數(shù)據(jù)處理完畢后,將回到寄存器中,通過(guò)不同的指令將數(shù)據(jù)繼續(xù)運(yùn)行或者
通過(guò)DB總線送到數(shù)據(jù)緩存器中。基本上,CPU就是這樣去執(zhí)行讀出數(shù)據(jù)、處理數(shù)據(jù)和往內(nèi)存寫數(shù)據(jù)3項(xiàng)基本工作。但在通常情況下,一條指令可以包含按明確順序執(zhí)行的許多操作,CPU
的工作就是執(zhí)行這些指令,完成一條指后,CPU的控制單元又將告訴指令讀取器從內(nèi)存中讀取下一條指令來(lái)執(zhí)行。這個(gè)過(guò)程不斷快速地重復(fù),快速地執(zhí)行一條又一條指令,產(chǎn)生您在顯
示器上所看到的結(jié)果。我們很容易想到,在處理這么多指令和數(shù)據(jù)的同時(shí),由于數(shù)據(jù)轉(zhuǎn)移時(shí)差和CPU處理時(shí)差,肯定會(huì)出現(xiàn)混亂處理的情況。為了保證每個(gè)操作準(zhǔn)時(shí)發(fā)生,CPU需要一
個(gè)時(shí)鐘,時(shí)鐘控制著CPU所執(zhí)行的每一個(gè)動(dòng)作。時(shí)鐘就像一個(gè)節(jié)拍器,它不停地發(fā)出脈沖,決定CPU的步調(diào)和處理時(shí)間,這就是我們所熟悉的CPU的標(biāo)稱速度,也稱為主頻。主頻數(shù)值越
高,表明CPU的工作速度越快。
◆ 如何提高CPU工作效率既然CPU的主要工作是執(zhí)行指令和處理數(shù)據(jù),那么工作效率將成為CPU的最主要內(nèi)容,因此,各CPU廠商也盡力使用CPU處理數(shù)據(jù)的速度更快。根據(jù)CPU的內(nèi)部運(yùn)
算結(jié)構(gòu),一些制造廠商在CPU內(nèi)增加了另一個(gè)算術(shù)邏輯單元(ALU),或者是另外再設(shè)置一個(gè)處理非常大和非常小的數(shù)據(jù)浮點(diǎn)運(yùn)算單元(Floating Point Unit,F(xiàn)PU),這樣就大大加
快了數(shù)據(jù)運(yùn)算的速度。而在執(zhí)行效率方面,一些廠商通過(guò)流水線方式或以幾乎并行工作的方式執(zhí)行指令的方法來(lái)提高指令的執(zhí)行速度。剛才我們提到,指令的執(zhí)行需要許多獨(dú)立的操
作,諸如取指令和譯碼等。最初CPU在執(zhí)行下一條指令之前必須全部執(zhí)行完上一條指令,而現(xiàn)在則由分布式的電路各自執(zhí)行操作。也就是說(shuō),當(dāng)這部分的電路完成了一件工作后,第二
件工作立即占據(jù)了該電路,這樣就大大增加了執(zhí)行方面的效率。另外,為了讓指令與指令之間的連接更加準(zhǔn)確,現(xiàn)在的CPU通常會(huì)采用多種預(yù)測(cè)方式來(lái)控制指令更高效率地執(zhí)行。
PU工作原理是怎么樣的相關(guān)文章: