RISC 和 CISC 是 CPU 從指令集的特點上可以分為兩類 :CISC 和 RISC 。 RISC 是英文 Reduced Instruction Set Computing 的縮寫 , 就是 " 精簡指令運算集 ” 。 CISC 就是 " 復雜指令運算集 " 。
RISC 的指令系統相對簡單,它只要求硬件執行很有限且最常用的那部分指令,大部分復雜的操作則使用成熟的編譯技術,由簡單指令合成。目前在中高檔服務器中普遍采用這一指令系統的 CPU ,特別是高檔服務器全都采用 RISC 指令系統的 CPU 。在中高檔服務器中采用 RISC 指令的 CPU 主要有 Compaq (康柏,即新惠普)公司的 Alpha 、 HP 公司的 PA-RISC 、 IBM 公司的 Power PC 、 MIPS 公司的 MIPS 和 SUN 公司的 Spare 。
CPU
執行運算速度受三個因素的影響
(1)
程序中指令數
I
,
(2)
每條指令執行所用周期數
CPI
,
(3)
周期時間
T
。這三者又有:程序執行時間
=I
*
CPI
*
T
,因此,從這個等式可看出減小其中任一個都可提高
CPU
的速度,因此
RISC
技術就從這三方面下手,對
I
、
CPI
、
T
進行優化改良,其措施如下:
1
、采用多級指令流水線結構
采用流水線技術可使每一時刻都有多條指令重疊執行,以減小
CPI
的值,使
CPU
不浪費空周期。實例:
Pentium
Ⅱ
/Pro/Celeron
可同時發出執行五條指令,
AMD
-
K6/K6
-
2
可同時發出六條指令。
2
、選取機器中使用頻率最高的簡單指令及部分復雜指令
這樣可減小時鐘周期數量,提高
CPU
速度,其實質是減小
CPI
下的值實現。實例:選取運算指令、加載、存儲指令和轉移指令作主指令集。
3
、采用加載
(Load)
、存儲
(Store)
結構
只允許
Load
和
Store
指令執行存儲器操作,其余指令均對寄存器操作。實例:
Amd
-
K6/K6
-
2
、
P
Ⅱ
/Celeron/Pro
均支持對寄存器的直接操作和重新命名,并大大增加通用寄存器的數量。
4
、延遲加載指令和轉移指令
由于數據從存儲器到寄存器存在二者速度差、轉移指令要進行入口地址的計算,這使
CPU
執行速度大大受限,因此,
RISC
技術為保證流水線高速運行,在它們之間允許加一條不相關的可立即執行的指令,以提高速度。
實例:主要體現于預測執行、非順序執行和數據傳輸等方面,除
Intel P54/55C
不支持,像
K6
-
2
、
P
Ⅱ均支持。
5
、采用高速緩存
(cache)
結構
為保證指令不間斷地傳送給
CPU
運算器,
CPU
設置了一定大小的
Cache
以擴展存儲器的帶寬,滿足
CPU
頻繁取指需求,一般有兩個獨立
Cache
,分別存放“指令+數據”。
實例: P Ⅱ /Celeron:16K + 16K , AMD - K6/K6 - 2 為 32K + 32K , Cyrix M Ⅱ :64K( 實也為 2 個 32K Cache ,此作共享 Cache) , P Ⅱ還加了 L2 Cache ,更是大幅提高了 CPU 速度。


