發展歷史 CPU發展已經有50多年的歷史了。我們通常將其分成六個階段。
(3)第三階段(1978年-1984年)。這是16位微處理器的時代,代表產品是
Intel 8086 。相對而言已經比較成熟了。
1989 年發布的
80486 處理器實現了5級
標量流水線 ,標誌著CPU的初步成熟,也標誌著傳統處理器發展階段的結束。
(5)第五階段(1993年-2005年)。這是
奔騰 系列微處理器的時代。
工作原理 取指令(IF,instruction fetch),即將一條指令從
主存儲器 中取到
指令暫存器 的過程。
程式計數器 中的數值,用來指示當前指令在主存中的位置。當一條指令被取出後,
程式計數器 (PC)中的數值將根據指令字長度自動遞增。
指令解碼階段(ID,instruction decode),取出指令後,
指令解碼器 按照預定的
指令格式 ,對取回的指令進行拆分和解釋,識別區分出不同的指令類別以及各種獲取運算元的方法。現代CISC處理器會將拆分已提高並行率和效率。
執行指令階段(EX,
execute ),具體實現指令的功能。CPU的不同部分被連線起來,以執行所需的操作。
訪存取數階段(MEM,memory),根據指令需要訪問主存、讀取運算元,CPU得到運算元在主存中的地址,並從主存中讀取該運算元用於運算。部分指令不需要訪問主存,則可以跳過該階段。
結果
寫回 階段(WB,write back),作為最後一個階段,結果寫回階段把執行指令階段的運行結果數據“寫回”到某種存儲形式。結果數據一般會被寫到CPU的內部暫存器中,以便被後續的
指令 快速地存取;許多指令還會改變
程式狀態字暫存器 中標誌位的狀態,這些標誌位標識著不同的操作結果,可被用來影響程式的動作。
在指令執行完畢、結果數據寫回之後,若無
意外事件 (如結果溢出等)發生,計算機就從
程式計數器 中取得下一條指令地址,開始新一輪的循環,下一個
指令周期 將順序取出下一條指令。許多複雜的CPU可以一次提取多個
指令 、
解碼 ,並且同時執行。
簡介 中央處理器(CPU),是電子
計算機 的主要設備之一,電腦中的核心配件。其功能主要是解釋
計算機指令 以及處理計算機軟體中的數據。CPU是計算機中負責讀取指令,對指令解碼並
執行指令 的核心部件。中央處理器主要包括兩個部分,即控制器、
運算器 ,其中還包括
高速緩衝存儲器 及實現它們之間聯繫的
數據 、控制的
匯流排 。電子計算機三大核心部件就是CPU、
內部存儲器 、輸入/
輸出設備 。中央處理器的功效主要為處理指令、執行操作、控制時間、處理數據。
在
計算機體系結構 中,CPU是對計算機的所有硬體資源(如
存儲器 、輸入輸出單元) 進行控制調配、執行通用運算的核心硬體單元。CPU是
計算機 的運算和控制核心。
計算機系統 中所有軟體層的操作,最終都將通過
指令集 映射為CPU的操作。
性能結構 性能衡量指標 對於CPU而言,影響其性能的指標主要有
主頻 、 CPU的位數、CPU的快取
指令集 、
CPU核心 數和IPC(
每周期指令數 )。所謂CPU的
主頻 ,指的就是
時鐘頻率 ,它直接的決定了CPU的性能,可以通過
超頻 來提高CPU主頻來獲得更高性能。而CPU的位數指的就是處理器能夠一次性計算的
浮點數 的位數,通常情況下,CPU的位數越高,CPU進行運算時候的速度就會變得越快。21世紀20年代後
個人電腦 使用的CPU一般均為64位,這是因為64位處理器可以處理範圍更大的數據並原生支持更高的
記憶體定址 容量,提高了人們的
工作效率 。而CPU的快取指令集是存儲在CPU內部的,主要指的是能夠對CPU的運算進行指導以及最佳化的硬程式。一般來講,CPU 的快取可以分為
一級快取 、
二級快取 和
三級快取 ,快取性能直接影響CPU處理性能。部分特殊職能的CPU可能會配備四級快取。
CPU結構 通常來講,CPU的結構可以大致分為運算
邏輯部件 、
暫存器 部件和控制部件等。所謂運算邏輯部件,主要能夠進行相關的
邏輯運算 ,如:可以執行移位操作以及
邏輯操作 ,除此之外還可以執行定點或
浮點 算術運算 操作以及地址運算和轉換等命令,是一種多功能的
運算單元 。而
暫存器 部件則是用來暫存指令、數據和
地址 的。控制部件則是主要用來對指令進行分析並且能夠發出相應的
控制信號 。
對於中央處理器來說,可將其看作一個規模較大的
積體電路 ,其主要任務是加工和處理各種數據。
傳統計算機 的儲存容量相對較小,其對大規模數據的處理過程中具有一定難度,且處理效果相對較低。隨著我國信息技術水平的迅速發展,隨之出現了高配置的處理器計算機,將高配置處理器作為
控制中心 ,對提高計算機CPU的
結構功能 發揮重要作用。中央處理器中的核心部分就是控制器、運算器,其對提高計算機的整體功能起著重要作用,能夠實現暫存控制、邏輯運算、信號收發等多項功能的擴散,為提升計算機的性能奠定良好基礎。
積體電路在計算機內起到了調控信號的作用,根據用戶
操作指令 執行不同的指令任務。中央處理器是一塊超大規模的積體電路。它由
運算器 、
控制器 、
暫存器 等組成,如下圖,關鍵操作在於對各類數據的加工和處理。
中央處理器結構
傳統計算機
存儲容量 較小,面對大規模
數據集 的操作效率偏低。新一代計算機採用高配置處理器作為控制中心,CPU在結構功能方面有了很大的提升空間。中央處理器以運算器、控制器為主要裝置,逐漸擴散為邏輯運算、暫存控制、程式編碼、信號收發等多項功能。這些都加快了CPU調控性能的最佳化升級。
CPU匯流排 CPU匯流排是在計算機系統中最快的匯流排,同時也是
晶片組 與主機板的核心。人們通常把和CPU直接相連的
局部匯流排 叫做
CPU匯流排 或者稱之為
內部匯流排 ,將那些和各種通用的
擴展槽 相接的局部匯流排叫做
系統匯流排 或者是
外部匯流排 。在內部結構比較單一的CPU中,往往只設定一組
數據傳送 的匯流排即CPU內部匯流排,用來將CPU內部的暫存器和算數邏輯運算部件等連線起來,因此也可以將這一類的匯流排稱之為
ALU 匯流排。而部件內的匯流排,通過使用一組匯流排將各個晶片連線到一起,因此可以將其稱為部件
內匯流排 ,一般會包含
地址線 以及數據線這兩組線路。系統匯流排指的是將系統內部的各個組成部分連線在一起的線路,是將
系統 的整體連線到一起的基礎;而系統外的匯流排,是將計算機和其他的設備連線到一起的基礎線路。
核心部分 運算器 (1)算術邏輯單元(
ALU )。
算術邏輯單元 是指能實現多組
算術運算 與邏輯運算的
組合邏輯電路 ,其是中央處理中的重要組成部分。算術邏輯單元的運算主要是進行二位元算術運算,如加法、減法、乘法。在運算過程中,算術邏輯單元主要是以
計算機指令 集中執行算術與
邏輯操作 ,通常來說,ALU能夠發揮直接讀入讀出的作用,具體體現在處理器控制器、記憶體及
輸入輸出設備 等方面,輸入輸出是建立在匯流排的基礎上實施。輸入指令包含一 個
指令字 ,其中包括
操作碼 、格式碼等。
(2)中間
暫存器 (
IR )。其長度為 128 位,其通過
運算元 來決定實際長度。IR 在“
進棧 並取數”指令中發揮重要作用,在執行該指令過程中,將
ACC 的內容傳送於IR,之後將運算元取到ACC,後將IR內容進棧。
(3)運算
累加器 (
ACC )。當前的
暫存器 一般都是單累加器,其長度為128位。對於ACC來說,可以將它看成可變長的累加器。在敘述指令過程中,ACC長度的表示一般都是將ACS的值作為依據,而ACS長度與 ACC 長度有著
直接聯繫 ,ACS長度的加倍或減半也可以看作ACC長度加倍或減半。
(4)描述字暫存器(DR)。其主要套用於存放與修改描述字中。DR的長度為64位,為了簡化
數據結構 處理,使用描述字發揮重要作用。
(5)B暫存器。其在指令的修改中發揮重要作用,B 暫存器長度為32位,在修改地址過程中能保存地址修改量,
主存 地址只能用描述字進行修改。指向數組中的第一個元素就是描述字, 因此,訪問數組中的其它元素應當需要用修改量。對於數組成員來說,其是由大小一樣的數據或者大小相同的
元素組成 的,且連續存儲,常見的訪問方式為向量描述字,因為向量描述字中的地址為位元組地址,所以,在進行換算過程中,首先應當進行基本地址 的相加。對於換算工作來說,主要是由
硬體 自動實現,在這個過程中尤其要注意對齊,以免越出數組界限。
控制器 控制器是指按照預定順序改變
主電路 或控制電路的接線和 改變電路中電阻值來控制電動機的啟動、調速、制動與反向的主令裝置。控制器由程式
狀態暫存器 PSR,系統狀態暫存器SSR,
程式計數器 PC,
指令暫存器 等組成,其作為“
決策機構 ”,主要任務就是發布命令,發揮著整個
計算機系統 操作的協調與指揮作用。 控制的分類主要包括兩種,分別為組合邏輯控制器、
微程式控制器 ,兩個部分都有各自的優點與不足。其中組合
邏輯控制器 結構相對較複雜,但優點是速度較快;
微程式 控制器設計的結構簡單,但在修改一條
機器指令 功能中,需對微程式的全部重編。
品牌介紹 “龍芯”系列晶片 龍芯2號系列是面向桌面和高端嵌入式套用的64位高性能
低功耗處理器 。龍芯2號產品包括
龍芯2E 、2F、2H和2K1000等晶片。龍芯2E首次實現對外生產和銷售授權。
龍芯2F 平均性能比龍芯 2E高20%以上,可用於個人計算機、行業終端、工業控制、數據採集、網路安全等領域。龍芯2H於2012年推出正式產品,適用計算機、
雲終端 、
網路設備 、消費類電子等領域需求,同時可作為
HT 或者
PCI-e 接口的全功能套片使用。2018年,龍芯推出
龍芯2K1000 處理器,它主要是面向網路安全領域及
移動智慧型 領域的雙核處理晶片,主頻可達1
GHz ,可滿足
工業物聯網 快速發展、
自主可控 工業安全體系的需求。
龍芯3號系列是面向
高性能計算機 、伺服器和高端桌面套用的
多核處理器 ,具有高頻寬,高性能,低功耗的特徵。龍芯3A3000/3B3000處理器採用自主
微結構 設計,主頻可達到1.5
GHz 以上;計畫2019年面向市場的
龍芯3A4000 為龍芯第三代產品的首款四核晶片,該晶片基於28nm工藝,採用新研發的GS464V 64位高性能處理器核架構,並實現 256位
向量指令 ,同時最佳化片內互連和訪存通路, 集成64位
DDR3 /4
記憶體控制器 ,集成片內安全機 制,主頻和性能將再次得到大幅提升。
Intel
AMD 根據
AMD 產品線規劃,截至2021年AMD
銳龍 5000系列處理器有Ryzen 9/Ryzen 7/Ryzen 5/Ryzen 3四個消費級產品線。此外還有面向
伺服器 市場的第三代霄龍EPYC處理器和面向HEDT平台的執行緒撕裂者系列。
上海兆芯 上海兆芯積體電路有限公司 是成立於2013年的國資控股公司,其生產的處理器採用
x86架構 ,產品主要有開先ZX-A、ZX-c/ZX-C+、 ZX-D、開先KX一 5000和KX一6000;開勝ZX—C+、ZX—D、KH一20000 等。其中開先KX一5000系列處理器採用28 nm工藝,提供4核或8核兩種版本,整體性能較上一代產品提升高達140%,達到國際主流通用
處理器性能 水準,能夠全面滿足黨政桌面辦公套用,以及包括
4K 超高清 視頻觀影等多種娛樂套用需求。開勝KH-20000系列處理器是兆芯面向伺服器等設備推出的CPU產品。開先KX-6000系列
處理器主頻 高達3.0 GHz,兼容全系列
Windows作業系統 及中科方德、
中標麒麟 、普華等國產自主可控作業系統,性能與
Intel 第七代的
酷睿i5 相當。
上海申威 申威處理器 簡稱“Sw處理器”,出自於DEC的Alpha 21164,採用
Alpha 架構,具有完全自主智慧財產權,其產品有單核Sw-1、雙核Sw-2、四核Sw-410、十六核SW-1600/SW-1610等。
神威藍光 超級計算機 使用了8704片SW一1600,搭載
神威睿思作業系統 ,實現了軟體和硬體全部國產化。而基於Sw-26010構建的“
神威·太湖之光 ”超級計算機自2016 年6月發布以來,已連續四次占據世界超級計算機TOP 500榜單第一,“神威·太湖之光”上的兩項千萬核心整機套用包攬了2016、2017年度世界
高性能計算 套用領域最高獎“
戈登·貝爾 ”獎。
分類 指令集的方式 嵌入式系統CPU 傳統的嵌入式領域所指範疇非常廣泛,是處理器除了伺服器和PC領域之外的主要
套用領域 。所謂“嵌入式”是指在很多晶片中,其所包含的處理器就像嵌入在裡面不為人知一樣。
近年來隨著各種新技術新領域的進一步發展,嵌入式領域本身也被發展成了幾個不同的子領域而產生了分化。
首先是隨著
智慧型手機 (Mobile Smart Phone)和
手持設備 (Mobile Device)的發展,移動(Mobile)領域逐漸發展成了規模匹敵甚至超過PC領域的一個獨立領域。由於Mobile領域的處理器需要載入
Linux 作業系統,同時涉及複雜的軟體生態,因此,其具有和PC領域一樣對軟體生態的嚴重依賴。
其次是實時(Real Time)嵌入式領域。該領域相對而言沒有那么嚴重的軟體
依賴性 ,因此沒有形成絕對的壟斷,但是由於
ARM 處理器IP商業推廣的成功,目前仍然以ARM的處理器架構占大多數
市場份額 ,其他處理器架構譬如
Synopsys ARC等也有不錯的市場成績。
最後是深嵌入式領域。該領域更像前面所指的傳統嵌入式領域。該領域的
需求量 非常之大,但往往注重
低功耗 、低成本和高
能效比 ,無須載入像
Linux 這樣的大型套用作業系統,軟體大多是需要定製的
裸機 程式或者簡單的
實時作業系統 ,因此對軟體生態的依賴性相對比較低。
大型機CPU 大型機 ,或者稱大型主機。大型機使用專用的處理器指令集、作業系統和套用軟體。大型機一詞,最初是指裝在非常大的帶框鐵盒子裡的大型計算機系統,以用來同小一些的
小型機 和
微型機 有所區別。
減少大型機CPU消耗是個重要工作。節約每個
CPU周期 ,不僅可以延緩硬體升級,還可以降低基於使用規模的
軟體授權 費。
大型機
體系結構 主要包括以下兩點:高度虛擬化,
系統資源 全部共享。大型機可以整合大量的負載於一體,並實現資源
利用率 的最大化;異步
I/O操作 。即當執行
I/O 操作時CPU將
I/O指令 交給I/O
子系統 來完成,CPU自己被釋放執行其它指令。因此主機在執行繁重的I/O任務的同時,還可以同時執行其它工作。
控制技術形式 中央處理器強大的數據處理功有效提升了計算機的
工作效率 ,在
數據加工 操作時,並不僅僅只是一項簡單的操作,中央處理器的操作是建立在計算機使用人員下達的指令任務基礎上,在
執行指令 任務過程中,實現用戶輸入的
控制指令 與CPU的相對應。隨著我國信息技術的快速發展,計算機在人們生活、工作 以及企業辦公自動化中得到廣泛套用,其作為一種主控設備,為促進電子商務網路的發展起著
促進作用 ,使 CPU 控制性能的升級進程得到很大提高。指令控制、
實際控制 、操作控制等就是計算機CPU
技術套用 作用表現。
(1)選擇控制。集中處理模式的操作,是建立在具體程式指令的基礎上實施,以此滿足計算機使用者的需求,CPU 在操作過程中可以根據實際情況進行選擇,滿足用戶的
數據流程 需求。 指令
控制技術 發揮的重要作用。根據用戶的需求來擬定運算方式,使
數據指令 動作的有序制定得到良好維持。CPU在執行當中,程式各指令的實施是按照順利完成,只有使其遵循一定順序,才能保證計算機使用效果。CPU主要是展開
數據集 自動化處理,其 是實現
集中控制 的關鍵,其核心就是指令控制操作。
(2)插入控制。CPU 對於操作
控制信號 的產生,主要是通過指令的功能來實現的,通過將指令發給相應部件,達到控制這些部件的目的。實現一條
指令功能 ,主要是通過計算機中的部件執行一序列的操作來完成。較多的小
控制元件 是構建集中處理模式的關鍵,目的是為了更好的完成CPU數據處理操作。
與GPU比較 GPU GPU 即
圖像處理器 ,CPU和GPU的
工作流程 和
物理結構 大致是類似的,相比於CPU而言,
GPU 的工作更為單一。在大多數的
個人計算機 中,GPU僅僅是用來繪製
圖像 的。如果CPU想畫一個二維圖形,只需要發個指令給GPU,GPU就可以迅速計算出該圖形的所有
像素 ,並且在
顯示器 上指定位置畫出相應的圖形。由於GPU會產生大量的熱量,所以通常
顯示卡 上都會有獨立的散熱裝置。
設計結構 CPU有強大的算術
運算單元 ,可以在很少的
時鐘周期 內完成算術計算。同時,有很大的
快取 可以保存很多數據在裡面。此外,還有複雜的邏輯
控制單元 ,當程式有多個分支的時候, 通過提供
分支預測 的能力來降低延時。GPU是基於大的
吞吐量 設計,有很多的算術
運算單元 和很少的快取。同時GPU支持大量的
執行緒 同時運行,如果他們需要訪問同一個數據,快取會合併這些訪問,自然會帶來延時的問題。儘管有延時,但是因為其算術運算單元的數量龐大,因此能夠達到一個非常大的
吞吐量 的效果。
使用場景 顯然,因為CPU有大量的快取和複雜的
邏輯控制 單元,因此它非常擅長邏輯控制、串列的運算。相比較而言,GPU因為有大量的算術運算單元,因此可以同時執行大量的計算工作,它所擅長的是大規模的
並發計算 , 計算量大但是沒有什麼
技術含量 ,而且要重複很多次。這樣一說,我們利用GPU來提高程式
運算速度 的方法就顯而易見了。使用CPU來做複雜的邏輯控制,用GPU來做簡單但是量大的算術運算,就能夠大大地提高程式的
運行速度 。
安全問題 CPU 蓬勃發展的同時也帶來了許多的
安全問題 。1994 年出現在
Pentium 處理器上的 FDIV
bug (奔騰
浮點除 錯誤)會導致
浮點數 除法出現錯誤;1997年
Pentium 處理器上的F00F異常指令可導致CPU
當機 ;2011年Intel處理器
可信執行技術 (TXT,trusted execution technology)存在
緩衝區溢出 問題,可被攻擊者用於許可權提升;2017年 Intel管理引擎(
ME ,management engine)組件中的漏洞可導致遠程非授權的任意
代碼 執行;2018年,Meltdown 和
Spectre 兩個CPU漏洞幾乎影響到過去20年製造的每一種計算設備,使得存儲在數十億設備上的隱私信息存在被泄露的風險。這些安全問題嚴重危害國家
網路安全 、關鍵基礎設施安全及重要行業的
信息安全 ,已經或者將要造成巨大損失。
未來發展 通用中央處理器(CPU)晶片是
信息產業 的基礎部件,也是
武器裝備 的核心器件。我國缺少具有
自主智慧財產權 的CPU技術和產業,不僅造成信息 產業受制於人,而且
國家安全 也難以得到全面保障。 “十五”期間,國家“
863計畫 ”開始支持自主研發CPU。“十一五”期間,“核心
電子器件 、
高端通用晶片 及基礎
軟體產品 ”(“
核高基 ”)重大專項將“863計畫”中的CPU成果引入產業。從“十二五”開始,我國在多個領域進行自主研發CPU的套用和
試點 ,在一定範圍內形成了自主技術和產業體系,可滿足武器裝備、
信息化 等領域的套用需求。但國外CPU壟斷已久,我國自主研發CPU產品和市場的成熟還需要一定時間。
研究成果 2024年7月,北京大學科研團隊在下一代晶片技術領域取得重大突破,成功研發出世界首個基於碳納米管的張量處理器晶片,可實現高能效的卷積神經網路運算。