0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

CPU(中央處理器)的組成部分及工作原理

Dbwd_Imgtec ? 來(lái)源:CSDN ? 作者:CSDN ? 2022-03-21 17:54 ? 次閱讀

導(dǎo)讀

CPU(中央處理器),也被稱(chēng)為微處理器,是計(jì)算機(jī)的心臟和/或大腦。本文讓我們一起深入了解計(jì)算機(jī)的核心,以幫助我們高效地編寫(xiě)計(jì)算機(jī)程序。

以下為譯文:

“工具通常比機(jī)器簡(jiǎn)單,通常用手來(lái)使用,而機(jī)器通常由動(dòng)物或蒸汽動(dòng)力驅(qū)動(dòng)?!?/p>

——查爾斯·巴貝奇

計(jì)算機(jī)是一種機(jī)器,主要由電力驅(qū)動(dòng),但其靈活性和可編程性幫助實(shí)現(xiàn)了其作為一種工具的簡(jiǎn)單性。CPU是計(jì)算機(jī)的心臟和/或大腦。負(fù)責(zé)執(zhí)行提供給它們的指令。它的主要任務(wù)是執(zhí)行算術(shù)和邏輯運(yùn)算,并將指令協(xié)調(diào)在一起。在深入到本文的主要部分之前,讓我們先看看CPU的主要組成部分,以及它們的作用分別是什么。

1、CPU的兩個(gè)主要組成部分

控制單元?—?CU控制單元(CU)是CPU的一部分,它幫助協(xié)調(diào)指令的執(zhí)行。它告訴CPU應(yīng)該做什么。它的主要職責(zé)是根據(jù)指令,幫助激活連接CPU和計(jì)算機(jī)其他不同部件(包括ALU)的線(xiàn)路??刂茊卧荂PU的第一個(gè)接收處理指令的部件。

控制單元有兩種類(lèi)型:

硬接線(xiàn)控制單元。

微型可編程(微編程)控制單元。

硬接線(xiàn)控制單元是一種硬件,它需要在硬件上進(jìn)行更改以實(shí)現(xiàn)對(duì)其工作方式的修改,而微型可編程控制單元?jiǎng)t可以進(jìn)行編程以更改其工作方式。硬接線(xiàn)控制單元在處理指令方面更快,而微型可編程控制單元?jiǎng)t更靈活。算術(shù)邏輯單元 —? ALU算術(shù)邏輯單元(ALU),顧名思義,就是負(fù)責(zé)所有的算術(shù)和邏輯運(yùn)算。算術(shù)邏輯單元執(zhí)行加法運(yùn)算,減法運(yùn)算等操作。算術(shù)邏輯單元是由執(zhí)行這些操作的邏輯電路或邏輯門(mén)組成。大多數(shù)邏輯門(mén)接受兩個(gè)輸入并產(chǎn)生一個(gè)輸出。下面是一個(gè)半加法器電路的例子,它接受兩個(gè)輸入并輸出結(jié)果。這里A和B是輸入,S是輸出,C是進(jìn)位。

CPU(中央處理器)的組成部分及工作原理

半加法器電路圖

2、存儲(chǔ) - 寄存器和存儲(chǔ)器

CPU的主要任務(wù)是執(zhí)行提供給它的指令。在大多數(shù)情況下,為了處理這些指令,它需要數(shù)據(jù)。有些數(shù)據(jù)是中間數(shù)據(jù),有些是輸入,另一些是輸出。這些數(shù)據(jù)連同指令一起存儲(chǔ)在下列存儲(chǔ)器中:寄存器寄存器是一組可以存儲(chǔ)數(shù)據(jù)的小地方。寄存器是鎖存器(Latches)的組合。鎖存器也稱(chēng)為觸發(fā)器(flip-flops),是存儲(chǔ)1位信息的邏輯門(mén)的組合。鎖存器有一條輸入線(xiàn),一條寫(xiě)入和輸入線(xiàn),和一條輸出線(xiàn)。我們可以啟用寫(xiě)入線(xiàn)對(duì)存儲(chǔ)的數(shù)據(jù)進(jìn)行更改。當(dāng)寫(xiě)入線(xiàn)被禁用時(shí),輸出始終保持不變。

CPU(中央處理器)的組成部分及工作原理

SR鎖存器,由一對(duì)交叉耦合的或非門(mén)(NOR Gates)構(gòu)成。CPU由寄存器來(lái)存儲(chǔ)輸出數(shù)據(jù)。由于是中間數(shù)據(jù),它們被發(fā)送到主存儲(chǔ)器(RAM)的速度會(huì)慢。這些數(shù)據(jù)被發(fā)送到由總線(xiàn)連接的其它寄存器。寄存器可以存儲(chǔ)指令、輸出數(shù)據(jù)、存儲(chǔ)地址或任何類(lèi)型的數(shù)據(jù)。存儲(chǔ)器(RAM)RAM - 隨機(jī)存取存儲(chǔ)器是寄存器的集合,它們以?xún)?yōu)化的方式排列和壓縮在一起,以便存儲(chǔ)更多的數(shù)據(jù)。隨機(jī)存取存儲(chǔ)器(RAM)是易失性的,當(dāng)我們關(guān)閉電源時(shí),它存儲(chǔ)的數(shù)據(jù)會(huì)丟失。由于RAM是用于讀/寫(xiě)數(shù)據(jù)的寄存器的集合,因此RAM可以用于存儲(chǔ)8位地址的輸入、用于存儲(chǔ)實(shí)際數(shù)據(jù)的數(shù)據(jù)輸入,和用于儲(chǔ)存最后的和鎖存器一樣工作的讀寫(xiě)啟用碼。

3、什么是指令

指令是計(jì)算機(jī)可以執(zhí)行的最小粒度運(yùn)算。CPU可以處理各種類(lèi)型的指令

指令類(lèi)型包括:

算術(shù)運(yùn)算指令,如加法和減法運(yùn)算

邏輯運(yùn)算指令,如邏輯與(AND)、邏輯或(OR)和邏輯非(NOT)運(yùn)算

數(shù)據(jù)傳送指令,如數(shù)據(jù)移動(dòng)、輸入、輸出、加載和存儲(chǔ)

程序控制指令,如條件/無(wú)條件轉(zhuǎn)移指令(if…goto,goto),轉(zhuǎn)子指令和轉(zhuǎn)移指令(call,return)

通知CPU程序已結(jié)束的Halt指令

指令通過(guò)以下方式提供給計(jì)算機(jī):使用匯編語(yǔ)言直接提供,或由編譯器生成,或用某些高級(jí)語(yǔ)言解釋給出。這些指令在CPU內(nèi)部是硬連線(xiàn)的。算術(shù)和邏輯運(yùn)算指令包括在ALU(算術(shù)邏輯單元)中,而程序控制指令由CU(控制單元)管理。通常在一個(gè)時(shí)鐘周期(clock cycle)內(nèi),計(jì)算機(jī)可以執(zhí)行一個(gè)指令,但是現(xiàn)代的計(jì)算機(jī)可以同時(shí)執(zhí)行多個(gè)指令。計(jì)算機(jī)可以執(zhí)行的一組指令稱(chēng)為指令集。

4、CPU時(shí)鐘

時(shí)鐘周期計(jì)算機(jī)的速度由其時(shí)鐘周期(Clock cycle)衡量。它是指計(jì)算機(jī)每秒工作的時(shí)鐘周期數(shù)。單個(gè)時(shí)鐘周期非常小,大約250*10^(-12)秒。每秒時(shí)鐘周期數(shù)越高,處理器速度越快。CPU時(shí)鐘頻率(clock rate)的測(cè)量單位為GHz(千兆赫茲)。1Ghz等于10 ?Hz(赫茲)。一赫茲意味著一秒鐘。所以一千兆赫茲意味著每秒10 ?個(gè)時(shí)鐘周期。時(shí)鐘周期越小,CPU可以執(zhí)行的指令數(shù)量越多。時(shí)鐘周期等于時(shí)鐘頻率的倒數(shù),而CPU時(shí)間=時(shí)鐘周期數(shù)/時(shí)鐘頻率這意味著為了改進(jìn)(減少)CPU時(shí)間,我們可以通過(guò)提高時(shí)鐘頻率,或優(yōu)化我們提供給CPU的指令來(lái)減少指令需要的時(shí)鐘周期的數(shù)量。一些處理器提供了提高時(shí)鐘頻率的能力,但由于這是一個(gè)物理變化,可能會(huì)出現(xiàn)過(guò)熱,甚至冒煙/起火。

5、指令是如何執(zhí)行的

指令按順序存儲(chǔ)在隨機(jī)存取存儲(chǔ)器(RAM)上。對(duì)于一個(gè)假設(shè)的CPU指令,它由操作碼(OP code)和存儲(chǔ)器或寄存器地址組成。控制單元(CU)內(nèi)有兩個(gè)寄存器:用于加載指令操作碼的指令寄存器(IR),和用于加載當(dāng)前正在執(zhí)行的指令地址的指令地址寄存器。CPU中還有其他寄存器,用于存儲(chǔ)一個(gè)指令的最后4位的地址中存儲(chǔ)的值。讓我們以一組實(shí)現(xiàn)兩個(gè)數(shù)字相加操作的指令為例。下面是這些指令及其說(shuō)明:第一步 - LOAD_A 8該指令最初保存在RAM中,比如說(shuō)指令<1100 1000>。它的前4位是操作碼。這決定了這個(gè)指令要做什么。然后該指令被讀取到控制單元的指令寄存器(IR)中。指令被譯碼為load_A,這意味著它需要加載地址1000中的數(shù)據(jù),地址1000是存儲(chǔ)在寄存器A中的指令的后4位。第二步 - LOAD_B 2與上面類(lèi)似,它將內(nèi)存地址2(0010)中的數(shù)據(jù)加載到CPU的寄存器B中。第三步 – ADD B A接下來(lái)的這條指令是把這兩個(gè)數(shù)字相加。在這里,控制單元(CU)告訴算術(shù)邏輯單元(ALU)執(zhí)行加法操作并將結(jié)果保存回寄存器A中。第4步 – STORE_A 23將結(jié)果保存回寄存器A中。這是一組非常簡(jiǎn)單的指令,實(shí)現(xiàn)了兩個(gè)數(shù)字的相加操作?,F(xiàn)在,我們成功地得到了兩個(gè)數(shù)字相加的和值!總線(xiàn)CPU,寄存器,存儲(chǔ)器和IO設(shè)備之間的所有數(shù)據(jù)都通過(guò)總線(xiàn)傳輸。要將剛才兩數(shù)相加得到的和數(shù)保存到存儲(chǔ)器中,CPU將存儲(chǔ)器地址放入地址總線(xiàn),將得到的結(jié)果(和數(shù))放入數(shù)據(jù)總線(xiàn),然后在控制總線(xiàn)中啟用正確的信號(hào)。這樣,數(shù)據(jù)在總線(xiàn)的幫助下被保存到存儲(chǔ)器中。

CPU(中央處理器)的組成部分及工作原理

計(jì)算機(jī)系統(tǒng)總線(xiàn)緩存CPU還具有將指令預(yù)取到其緩存中的機(jī)制。我們知道,一個(gè)處理器可以在一秒鐘內(nèi)完成數(shù)百萬(wàn)條指令。這意味著從存儲(chǔ)器(RAM)中獲取指令所花費(fèi)的時(shí)間比執(zhí)行指令所花費(fèi)的時(shí)間要多。所以CPU會(huì)預(yù)取一些指令和數(shù)據(jù)到其緩存中,以加快執(zhí)行速度。如果緩存中的數(shù)據(jù)和操作內(nèi)存中的數(shù)據(jù)不同,則將數(shù)據(jù)標(biāo)記為臟位(dirty bit)。指令流水線(xiàn)現(xiàn)代CPU在指令執(zhí)行中采用指令流水線(xiàn)技術(shù)實(shí)現(xiàn)取指(FI)、譯碼(DI)、執(zhí)行(EI)的并行化。當(dāng)一條指令完成“取指”后進(jìn)入“譯碼”的同時(shí),下一條指令就可以進(jìn)行“取指”了,這樣就提高了指令的執(zhí)行效率。

CPU(中央處理器)的組成部分及工作原理

指令流水線(xiàn)技術(shù)然而,當(dāng)一條指令和另一條指令有依賴(lài)關(guān)系時(shí),這種技術(shù)會(huì)產(chǎn)生問(wèn)題。所以,指令流水線(xiàn)技術(shù)只能夠讓處理器以不同的順序執(zhí)行相互之間沒(méi)有依賴(lài)關(guān)系的指令。多核計(jì)算機(jī)它基本上是有不同的CPU,但是有一些共享資源,比如緩存等。

6、性能

CPU的性能取決于它的執(zhí)行時(shí)間。性能=1/執(zhí)行時(shí)間假設(shè)一個(gè)程序執(zhí)行需要20毫秒。CPU性能為1/20=0.05ms。相對(duì)性能=執(zhí)行時(shí)間1/執(zhí)行時(shí)間2影響CPU性能的因素是指令執(zhí)行時(shí)間和CPU的時(shí)鐘速度(時(shí)鐘頻率)。因此,為了提高程序的性能,我們要么提高CPU的時(shí)鐘速度(時(shí)鐘頻率),要么減少程序中的指令數(shù)量。處理器的速度有限,現(xiàn)代多核計(jì)算機(jī)每秒可以支持?jǐn)?shù)百萬(wàn)條指令。但是,如果我們編寫(xiě)的程序有太多的指令,就將導(dǎo)致整體性能的降低。大O符號(hào)(Big O notation)計(jì)算方法可以用來(lái)確定在給定輸入的情況下CPU的性能將如何受到影響。為了盡可能地提高CPU的速度,很多優(yōu)化工作已經(jīng)在CPU中進(jìn)行。而我們?cè)诰帉?xiě)任何程序時(shí),都需要考慮如何盡可能地減少我們提供給CPU的指令數(shù)量,以提高計(jì)算機(jī)程序的性能。

原文標(biāo)題:CPU 是如何工作的?

文章出處:【微信公眾號(hào):Imagination Tech】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    19100

    瀏覽量

    228814
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    10804

    瀏覽量

    210843
  • 計(jì)算機(jī)
    +關(guān)注

    關(guān)注

    19

    文章

    7360

    瀏覽量

    87633

原文標(biāo)題:CPU 是如何工作的?

文章出處:【微信號(hào):Imgtec,微信公眾號(hào):Imagination Tech】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    益陽(yáng)回收2DP中央處理器模組CPU模塊西門(mén)子314模塊

    本帖最后由 龍收購(gòu)西門(mén)子模塊 于 2020-5-7 13:20 編輯 益陽(yáng)回收2DP中央處理器模組CPU模塊西門(mén)子314模塊 西門(mén)子CPU412-2DP中央處理器模組西門(mén)子
    發(fā)表于 09-23 11:17

    上?;厥瘴鏖T(mén)子中央處理器_回收plc模塊,回收西門(mén)子中央處理器CPU模塊

    上?;厥瘴鏖T(mén)子中央處理器_回收plc模塊,回收西門(mén)子中央處理器CPU模塊,常年回收西門(mén)子PLC模塊,高價(jià)回收西門(mén)子PLC模塊,回收西門(mén)子直流調(diào)速,回收西門(mén)子觸摸屏 ,專(zhuān)業(yè)回收西門(mén)子p
    發(fā)表于 05-21 08:50

    什么是中央處理器

    什么是中央處理器 處理器處理器(Center Processing Unit,簡(jiǎn)稱(chēng)CPU)是手機(jī)的核心部件,手機(jī)中的微處理器類(lèi)似計(jì)算
    發(fā)表于 06-17 07:44 ?6949次閱讀

    中央處理器cpu性能排名

    CPU是Central Processing Unit(中央處理器)的縮寫(xiě),CPU一般由邏輯運(yùn)算單元、控制單元和存儲(chǔ)單元組成。在邏輯運(yùn)算和控制單元中包括一些寄存
    發(fā)表于 03-21 13:55 ?2w次閱讀

    中央處理器是怎樣的架構(gòu)

    中央處理單元(CPU)主要由運(yùn)算、控制、寄存部分組成,從字面意思看運(yùn)算
    發(fā)表于 10-23 09:31 ?1500次閱讀

    CPU中央處理器操作原理及應(yīng)用

    中央處理器 (英語(yǔ):Central Processing Unit,縮寫(xiě):CPU),是計(jì)算機(jī)的主要設(shè)備之一,功能主要是解釋計(jì)算機(jī)指令以及處理計(jì)算機(jī)軟件中的數(shù)據(jù)。計(jì)算機(jī)的可編程性主要是指對(duì)中央處
    發(fā)表于 06-15 09:30 ?1706次閱讀

    中央處理器的作用及其工作原理的簡(jiǎn)介

    中央處理器cpu)作為計(jì)算機(jī)系統(tǒng)的運(yùn)算和控制核心,是信息處理、程序運(yùn)行的最終執(zhí)行單元。
    的頭像 發(fā)表于 02-03 10:10 ?5423次閱讀

    科思美ELF1802中央處理器

    電子發(fā)燒友網(wǎng)站提供《科思美ELF1802中央處理器.zip》資料免費(fèi)下載
    發(fā)表于 01-29 16:50 ?0次下載
    科思美ELF1802<b class='flag-5'>中央處理器</b>

    SH7086 中央處理器板 M3A-HS86 用戶(hù)手冊(cè)

    SH7086 中央處理器板 M3A-HS86 用戶(hù)手冊(cè)
    發(fā)表于 05-04 19:47 ?0次下載
    SH7086 <b class='flag-5'>中央處理器</b>板 M3A-HS86 用戶(hù)手冊(cè)

    中央處理器的性能結(jié)構(gòu)及工作原理

    中央處理器(Central Processing Unit,簡(jiǎn)稱(chēng)CPU)是計(jì)算機(jī)的主要部件之一,是負(fù)責(zé)執(zhí)行指令的計(jì)算機(jī)芯片。CPU是計(jì)算機(jī)系統(tǒng)中最為重要的組成部分,它的性能直接決定了計(jì)
    的頭像 發(fā)表于 06-01 10:26 ?2231次閱讀

    中央處理器的頻率為什么那么高?

    中央處理器的頻率為什么那么高?? 中央處理器(Central Processing Unit,縮寫(xiě)CPU)是計(jì)算機(jī)系統(tǒng)中最重要的組成部分之一。它被稱(chēng)為大腦,是計(jì)算機(jī)系統(tǒng)中起主要計(jì)算和控
    的頭像 發(fā)表于 09-02 15:06 ?846次閱讀

    什么是中央處理器中央處理器的性能結(jié)構(gòu)

    總體來(lái)說(shuō),中央處理器是計(jì)算機(jī)系統(tǒng)的核心部件,它的性能對(duì)整個(gè)系統(tǒng)的運(yùn)行效率有著至關(guān)重要的影響。不同的CPU具有不同的性能結(jié)構(gòu)和工作原理,根據(jù)實(shí)際需求選擇合適的CPU對(duì)于提高計(jì)算機(jī)系統(tǒng)的性
    的頭像 發(fā)表于 01-16 13:56 ?1643次閱讀

    中央處理器包括什么 中央處理器中的什么是整個(gè)指揮中心

    中央處理器CPU)是計(jì)算機(jī)系統(tǒng)中的主要組件之一,負(fù)責(zé)執(zhí)行指令、控制計(jì)算機(jī)的運(yùn)行狀態(tài)以及處理數(shù)據(jù)。它可以看作是計(jì)算機(jī)的“大腦”,負(fù)責(zé)整個(gè)系統(tǒng)的指揮和控制。 CPU包括許多不同的部件,每
    的頭像 發(fā)表于 01-18 10:04 ?1042次閱讀

    中央處理器工作原理及基本結(jié)構(gòu)

    中央處理器(Central Processing Unit,簡(jiǎn)稱(chēng)CPU),作為計(jì)算機(jī)系統(tǒng)的核心部件,其重要性不言而喻。CPU負(fù)責(zé)執(zhí)行計(jì)算機(jī)的指令和處理數(shù)據(jù),是計(jì)算機(jī)系統(tǒng)中不可或缺的一
    的頭像 發(fā)表于 05-12 17:39 ?1930次閱讀

    中央處理器有哪些種類(lèi)和特點(diǎn)

    中央處理器CPU)作為計(jì)算機(jī)系統(tǒng)的核心組件,負(fù)責(zé)執(zhí)行各種算術(shù)、邏輯、控制和輸入/輸出操作,是計(jì)算機(jī)運(yùn)算和控制的關(guān)鍵。CPU的種類(lèi)繁多,各具特色,下面將從多個(gè)角度詳細(xì)介紹CPU的種類(lèi)及
    的頭像 發(fā)表于 08-22 14:25 ?873次閱讀