1.4.1 流水線技術
流水線(Pipeline)技術是一種將每條指令分解為多步,并使不同指令的各步重疊操作,以實現幾條指令并行操作,加速程序的執行速度的一種技術。
采用流水線技術后,并沒有加速單條指令的執行,每條指令的操作步驟也沒有減少,只是多條指令同時執行,因而從總體上加快了指令執行的速度。
例如,80486采用六級流水線結構,即同時有6條指令并行操作。若每條指令需要6個步驟,每個步驟需要一個時鐘周期的時間,那么經過6個時鐘后,每個 時鐘就有一條指令執行完畢。Pentium采用由“U”和“V”兩條并行指令流水線構成的超標量流水線結構,可大大提高指令的執行速度。
流水線的實現是通過增加計算機硬件來實現的。通常一條指令的執行分為預取指令、譯碼、地址生成、取操作數、執行指令等多個步驟,每個步驟都需要有相應的硬件電路支持,才能實現流水線作業。
1.4.2 高速緩沖存儲器技術
在80386以后的微型機中,為了加快運算速度,都增設一級或二級的高速小容量存儲器,稱之為高速緩沖存儲器(Cache)。高速緩沖存儲器的存取速度比微機中的主存儲器要快一個數量級,大體和CPU的處理速度相當。
由于程序中相關數據塊一般都按順序存放,并且大都存于相鄰的存儲單元,而程序常常重復使用同一代碼和數據塊,利用程序執行的這些重要特征,可采用 Cache保存這些經常重復使用或當前將要使用的指令和數據。CPU在對一條指令或操作數尋址時,首先到Cache中去查找,在一般正常情況下,CPU對 Cache的存取命中率可達95%以上,從而大大提高了程序的執行速度。
Cache技術和設計是一個復雜的課題,一般而 言,Cache容量大,有較高的命中率,則說明系統的性能較好。Cache和與它配合的高速緩沖控制器都由硬件實現,80486以后的微處理器中將 Cache和高速緩沖控制器集成在CPU芯片中,因此對用戶說是透明的,不需要用戶自己去控制或操作。
1.4.3 虛擬存儲器技術
虛擬存儲技術是在內存儲器和外存儲器(軟盤、硬盤或光盤)之間增加一定的硬件和軟件支持,使內存和外存形成一個有機的整體。操作時,將程序預先放在外存 儲器中,由系統軟件(操作系統)統一管理和調度,按照某種置換算法將外存的內容依次調入內存中被CPU執行。這樣,對使用者說,從CPU看到的是一個速度 接近內存而容量卻與外存相當的假想存儲器,稱為虛擬存儲器,使編程人員在編寫程序時可以不考慮內存容量的限制。在采用虛擬存儲器的計算機系統中,存在著虛 地址空間和實地址空間兩個地址不同的空間。虛地址空間是程序可用的空間,而實地址空間是CPU可訪問的內存空間。例如,在80486中,實地址空間為 232B4GB,而虛地址空間為246B64TB。
1.4.4 RISC技術
精簡指令集計算(Reduced Instruction Set Computing)技術簡稱RISC技術,其主導思想是精簡CPU芯片中指令的數目,簡化芯片的復雜程度,使指令的執行速度更快。
傳統的計算機都采用CISC(Complex Instruction Set Computing)處理器,如現在常用的Intel 80x86,其 指令集中有許多指令非常復雜。用編譯器對程序編譯的結果證明,大多數復雜的指令很少被使用,編譯器生成的總代碼的90%以上是只占CISC指令集中不足 10%的指令。要設計更好的編譯器是困難的;而可行的方法是,構筑一種簡單的計算機,使它只有少數指令、大的寄存器陣列、對主存的簡單裝入/存儲訪問,并 且大多數指令執行只需要一個時鐘周期,這就是RISC處理器組成的計算機。
RISC處理器的主要特征表現在下列方面:
(1)采用統一的指令長度,以簡化相應的邏輯電路;
(2)全64位實現,高流水線執行單元,很高的內部時鐘速度(>200MHz);
(3)內置高性能浮點運算部件和大容量指令/數據Cache;
(4)采用調入/存儲體系結構,將內存中的數據預先調入內部寄存器,以減少訪問內存的指令數;
(5)支持多媒體和DSP的新指令。
RISC處理器的優點早就為人所知,但其執行中需要大容量的存儲器和昂貴的Cache,因此RISC技術的推廣遇到了很大的阻力。目前RISC技術已逐漸在消費者和商業領域獲得認同和應用。