處理器

From upnb游本网--笔记本电脑知识库(笔记本wiki)--您身边的电脑词典

Jump to: navigation, search

中央處理器Template:LangTemplate:Lang),或简称为处理器,是-{A|zh-tw:電腦;zh-cn:電子計算機;}-(電腦)的主要設備之一。其功能主要是解译计算机指令instruction)以及处理计算机-{A|zh-cn:软件;zh-tw:軟體;}-中的数据。CPU为電子計算機设计提供了基本的数字计算特性。CPU、存储设备输入/输出设备是现代微型电脑的三大核心部件。由-{A|zh-cn:集成电路; zh-tw:積體電路;}-制造的CPU通常称为-{A|zh-cn:微型处理器;zh-tw:微處理機;}-。从20世纪70年代中期开始,单芯片微型处理器几乎取代了所有其他类型的CPU,今天CPU这个术语几乎成为了所有微型处理器的代称。

“中央处理器”这个名称,常规上来讲,用来描述一係列可以执行复杂的电脑程序的逻辑機械。這個空泛的定义很容易的將在“CPU”这个名称被普遍使用之前的早期的计算机也包括在內。无论如何,至少从20世纪60年代早期开始Template:Ref harvard,这个名称及其缩写已开始在电子计算机产业中得到广泛应用。尽管与早期相比,“中央处理器”在物理形态,设计制造和具体任务的执行上有了戏剧化的发展,但是其基本的操作原理一直没有改变。

早期的中央处理器通常是为大型及特定應用的计算机(港譯-電腦)而訂製。但是,这种昂贵为特定应用定制CPU的方法很大程度上已经让位于开发便宜、标准化、适用于一个或多个目的的处理器类。这个标准化趋势始于由單個晶体管組成的大型机微机年代,随着集成电路(英文integrated circuit(IC)的出現而加速。IC使得更为复杂的CPU可以在很小的空间中设计和制造(在微米的量级)。CPU的标准化和小型化都使得這一類数字设备(港譯-電子零件)在现代生活中的出现频率远远超过有限应用专用的计算机。现代微处理器出现在包括从汽车手机到儿童玩具在内的各种物品中。

CPU運作原理

CPU的主要運作原理,不論其外觀,都是執行儲存於被稱為程式裡的一系列指令。在此討論的是遵循普遍的馮·諾伊曼架構設計的裝置。程式以一系列數字儲存在電腦記憶體中。差不多所有的馮·諾伊曼CPU的運作原理可分為四個階段:提取(fetch)解碼(decode)執行(execute)寫回(writeback)

第一階段,提取,從程式記憶體中檢索指令(為數值或一系列數值)。由程式計數器(PC)指定程式記憶體的位置,程式計數器保存供識別目前程式位置的數值。換言之,程式計數器記錄了CPU在目前程式裡的蹤跡。提取指令之後,PC根據指令式長度增加記憶體單元Template:Ref。指令的提取常常必須從相對較慢的記憶體尋找,導致CPU等候指令的送入。這個問題主要被論及在現代處理器的快取和管線化架構(見下)。

CPU根據從記憶體提取到的指令來決定其執行行為。在解碼階段,指令被拆解為有意義的片斷。根據CPU的指令集架構(ISA)定義將數值解譯為指令Template:Ref。一部分的指令數值為運算碼(opcode),其指示要進行哪些運算。其它的數值通常供給指令必要的資訊,諸如一個加法(addition)運算的運算目標。這樣的運算目標也許提供一個常數值(即立即值),或是一個空間的定址值:暫存器記憶體位址,以定址模式決定。在舊的設計中,CPU裡的指令解碼部分是無法改變的硬體裝置。不過在眾多抽象且複雜的CPU和ISA中,一個微程式時常用來幫助轉換指令為各種形態的訊號。這些微程式在已成品的CPU中往往可以重寫,方便變更解碼指令。

在提取和解碼階段之後,接著進入執行階段。該階段中,連接到各種能夠進行所需運算的CPU部件。例如,要求一個加法運算,算數邏輯單元(ALU,arithmetic logic unit)將會連接到一組輸入和一組輸出。輸入提供了要相加的數值,而且在輸出將含有總和結果。ALU內含電路系統,以於輸出端完成簡單的普通運算和邏輯運算(比如加法和位元運算)。如果加法運算產生一個對該CPU處理而言過大的結果,在標誌暫存器裡,運算溢出(arithmetic overflow)標誌可能會被設置(參見以下的數值精度探討)。

最終階段,寫回,以一定格式將執行階段的結果簡單的寫回。運算結果極常被寫進CPU內部的暫存器,以供隨後指令快速存取。在其它案例中,運算結果可能寫進速度較慢,但容量較大且較便宜的主記憶體。某些類型的指令會操作程式計數器,而不直接產生結果資料。這些一般稱作「跳轉」(jumps)並在程式中帶來循環行為、條件性執行(透過條件跳轉)和函式Template:Ref。許多指令也會改變標誌暫存器的狀態位元。這些標誌可用來影響程式行為,緣由於它們時常顯出各種運算結果。例如,以一個「比較」指令判斷兩個值的大小,根據比較結果在標誌暫存器上設置一個數值。這個標誌可籍由隨後的跳轉指令來決定程式動向。

在執行指令並寫回結果資料之後,程式計數器的值會遞增,反覆整個過程,下一個指令周期正常的提取下一個順序指令。如果完成的是跳轉指令,程式計數器將會修改成跳轉到的指令位址,且程式繼續正常執行。許多複雜的CPU可以一次提取多個指令、解碼,並且同時執行。這個部分一般涉及「經典RISC管線」,那些實際上是在眾多使用簡單CPU的電子裝置中快速普及(常稱為微控制器(microcontrollers))Template:Ref

設計與實作

Template:Prerequisites header Template:Main !電腦架構 |- !數位電路

Personal tools
upnb RSS | 常见问题 | 服务条款 | 隐私权政策 | 合作与广告 | 关于我们
Copyright©2003--2007 upnb.com