複製鏈接
請複製以下鏈接發送給好友

微處理機結構

鎖定
微處理機(又稱為CPU或中央處理單元)是裝配在單顆芯片上的一個完整的計算引擎。第一顆微處理器是1971年問世的Intel 4004。微處理機能完成取指令、執行指令,以及與外界存儲器和邏輯部件交換信息等操作,是微型計算機的運算控制部分。它可與存儲器和外圍電路芯片組成微型計算機
中文名
微處理機結構
外文名
architecture of microprocessor
學    科
計算機科學與技術
簡    稱
TPU
主要類型
8086
特    點
微型

微處理機結構基本概念

在過去幾年裏,關於微處理機的大量報導和數以百計的微處理機的湧現,為設計者們進行有效設計提供了豐富的資料。這些產品的製造家提供了有關產品的詳細文獻。但不足的是,迄今還缺乏對微處理機全貌及其發展情況、趨向的論述。現有的資料多為以大量的圖表方式列出微處理機各種參數,諸如速度、指令數、尋址方式、寄存器組等。
早期的微處理機(TPU)是一種“半智能”單元,其程序靠CPU來編寫。微處理器(又稱為CPU或中央處理單元)是裝配在單顆芯片上的一個完整的計算引擎。第一顆微處理器是1971年問世的Intel 4004。

微處理機結構早期微處理機介紹

在TPU發展過程中,關鍵的一步是可編程序問題。早期的TPU是一種“半智能”單元,其程序靠CPU來編寫。比如用英特爾8257 DMA控制器。雖然一般情況下TPU是在CPU控制之下工作的,但其自身的發展逐漸引起了一種演變,使得通用TPU和通用CPU之間的區別被抹掉了。隨着引進英特爾8748/8048單片微處理機和8041/8741 TPU,這種區別就幾乎消失了。
8748是一個只用一種5V電源的單微處理機,主要由以下幾部分構成:
(1)CPU—8位,70條指令,21種條件轉移
(2)P/ROM—1 K x 8程序存儲器,帶有4K直接地址
(3)RAM—64 x 8隨機存儲器,包括8級程序計數器(PC)堆棧(可用來做數據存儲)。8對寄存器單元可做工作區和為向外擴展為256x8的直接尋址頁號
(4)時鐘—RC或晶體控制
(5)電源離合—提供時序電容的需要
(6)I/O線—27條和TTL相容
(7)控制線—5條,提供給yo和存儲器
(8)中斷—外部的:到單元3的向量,間隔時間計數器,為溢出而設的到單元7的向量
(9)邏輯“與”及“或”—直接連向I/O接口及在測試線上的條件轉移
8048是單5V微處理機,週期2.5微秒,可進行2進制及2~10進制算術運算。8728有一個可使用紫外線擦掉的P/ROM,一塊基片上裝有1k個單元。用它做8048的只讀存儲器(ROW)。
第一代微處理機的特點是低速P-MOS技術,在芯片上譯碼部份極少,結構簡單。英特爾8008就是一台典型的第一代8位微處理機。自從出現了第一台英特爾8080,N-MOS以後,它實現了在芯片上的譯碼和一套相應的指令系統,就清晰地畫出了從第一代發展到第二代微處理機的界限。但是,由於以功能來劃分類別的多樣化使得區分第二代與第三代微處理機就比較困難了。
如果撇開雙極(TTL)可編微程序系統不談,而只考慮單片微處理機時,那麼第二代—第三代的劃分就集中在多處理器的協調上,諸如National SC/MP和帶有P/ROM的英特爾8048,具有存儲器一存儲器結構的TI 9900,和功能集中的Mostek 3870單片微處理機。
隨着大面積封裝密度的增加,在CPU裏包含專用的TPU子系統的做法更為現實了。在CPU芯片上裝有電可改寫的ROM將加速取數時間,並去掉了CPU和存儲器之間的信息、通道,相形之下,比用連線方式來使用I/O要方便得多。進一步發展模擬一數字和數字一模擬技術將提供一種可以模擬I/O一些明顯功能的設備。正如早先講到的那樣,經濟因素預示着帶有P/ROM的超一聯結式的通用基片的發展可以提供一種在部分場所中使用的結構形式。速度的提高使得NWOS技術已超過了TTL而且其發展的極限還未達到。許多新技術的出現為微處理機的基礎系統設計提供了廣闊的前景 [1] 

微處理機結構結構

微處理器基本結構如圖1所示:
圖1 圖1
這是一個進行了最大程度簡化的微處理器。此微處理器具有:
(1)一條地址總線(總線寬度可以8位、16位或32位),用於向內存發送一個地址;
(2)一條數據總線(總線寬度可以是8位、16位或32位),能夠將數據發送到內存或從內存取得數據;
(3)一條RD(讀)和WR(寫)線路,告訴內存它是希望寫入某個地址位置還是獲得某個地址位置的內容;
(4)一條時鐘線路,將時鐘脈衝序列發送到處理器;
(5)復位線路,用於將程序計數器重置為零(或者其他內容)並重新開始執行。
微處理器執行一組機器指令,這組指令可向處理器告知應執行哪些操作。微處理器就會根據指令執行三種基本工作:
(1)通過使用ALU(算術/邏輯單元),微處理器可以執行數學計算。例如:加法、減法、乘法和除法。現代的微處理器包含完整的浮點處理器,它可以對很大的浮點數執行非常複雜的浮點運算。 
(2)微處理器可以將數據從一個內存位置移動到另一個位置。 
(3)微處理器可以做出決定,並根據這些決定跳轉到一組新指令。
微處理器能夠執行許多非常複雜的工作,但是所有工作都屬於這三種基本操作的範疇。

微處理機結構微處理器指令

雖然上面的微處理器非常簡單,但是它仍然可以執行相當多的指令。指令集通過位模式的方式實現,每一個位模式在加載到指令寄存器中後都有不同的含義。由於人們不能很好記住這些位模式,所以定義了一些簡短的單詞來表示不同的位模式。這些單詞的集合稱作處理器的彙編語言。彙編程序可以將這些單詞輕鬆翻譯成它們的位模式,然後會將彙編程序的輸出放在內存中供處理器執行。
例如以下彙編語言指令:

微處理機結構發展

可用晶體管的數量對處理器性能有巨大影響。在8088這樣的處理器中,通常要花費15個時鐘週期才能執行一條指令。由於乘法器的設計方式,在 8088上進行16位的乘法運算大約需要80個時鐘週期。而晶體管越多,就越有可能在一個週期中執行更多的乘法運算。
晶體管數量的增多還使我們能夠使用一種稱為流水線的技術。在流水線式的體系結構中,指令的執行過程是相互重疊的。所以,雖然需要花費5個時鐘週期來執行每條指令,但是可以同時執行5條指令的各個階段。這樣,表面看起來在每個時鐘週期內即可執行完一條指令。 許多現代的處理器具有多個指令解碼器,每一個都有自己的流水線。這樣便存在多個指令流,也就是説每個時鐘週期可以完成多條指令。但是這種技術實現起來非常複雜,因此需要使用大量的晶體管。
處理器設計的發展趨勢主要是:完全32位的ALU(內置快速浮點處理器)和多指令流的流水線式執行方式。處理器設計的最新進展是64位ALU,預計在下一個十年中家用PC就會用上這種處理器。此外,還存在為處理器添加可高效執行某些操作的特殊指令(例如MMX指令)的趨勢,以及在處理器芯片中增加硬件虛擬內存支持和L1緩存的趨勢。所有這些趨勢都進一步增加了晶體管的數量,導致現在的處理器包含數千萬個晶體管。而這些處理器每秒大約可以執行十億條指令。
參考資料
  • 1.    Edwin E. Klingman, 王振山. 微處理機體系結構的比較和發展趨向[J]. 計算機研究與發展, 1979(1):19-26.