RISC技术
RISC技術
RISC 精簡指令集計算機
CISC復雜指令集計算機
早期的計算機是用復雜指令集,但是在最早的時候,一定不是用復雜指令集。是在計算機發展的過程當中,CPU的設計人員,指令集體系結構的設計人員,為了適用應用的發展,為了面相目標程序進行優化,面相高級語言進行優化,面相操作系統進行優化,把目標程序當中,經常用到的一些操作,把它變成計算機的指令,來加快這些應用,指令集開始變得復雜。甚至有的指令集甚至300條指令甚至400條指令,但是這么多條指令是不是真的有必要呢。在70年代末在80年代初的時候,就有人開始考慮,指令集是不是越龐大越好,指令的條數是不是越多越好,指令的功能是不是越強越好,對此人們做了分析。分析的結果人們得到了一個80%和20%的規律。在典型的程序當中,80%的語句,僅僅使用了指令集當中20%的指令。人們在處理機當中加入了很多很復雜的指令,導致計算機系統的控制器設計起來很復雜,甚至只能用微程序的方式來進行設計。這也導致了20%的指令,在復雜指令集中被拖慢。所以人們就想到,是不是可以只用那些常用的簡單的20%的指令來設計指令集。而復雜的指令不用硬件來實現,是否能通過簡單指令集組合的方式來實現復雜的指令的功能。這樣的結果使CPU控制器控制起來非常快。
指令長度固定,指令格式種類少,尋址方式少,那么譯碼就很簡單。甚至操作碼的位置固定,操作數的位置固定,那么在譯碼的同時也可以進行操作數的讀取。
另外采用LOAD/STORE這種指令集結構,只有這兩條指令可以訪存,其他指令都不能進行訪存。那么其他指令所進行的傳輸操作,或者算數運算操作或者邏輯運算操作,只能在寄存器和寄存器之間進行,并且結果保存在寄存器當中。那么這樣的話,CPU里有比較多的通用寄存器來支持這些操作。另外指令比較簡單,指令之間的關系沒有那么復雜。所以精簡指令集計算機都是采用流水線的方式來做的,而且特別關注提高流水線的效率。在一個時鐘周期要完成一個指令。這是一條簡單的流水線。另外為了提高速度,所有的精簡指令集的處理器都是采用組合邏輯的方式,也就是硬鏈的方式組合在一起,讓他們的速度更快。
CISC 復雜指令集計算機
指令系統非常龐大,各種指令使用頻度相差大
指令長度不固定,指令格式種類多,尋址方式多,所以譯碼方式也就很復雜。
訪存指令不受限制
CPU當中有專用的寄存器
大多數指令需要多個時鐘周期執行完畢
采用為程序控制器
兩者比較
1RISC 指令簡單 控制器在CPU上占用的面積會非常小,剩余的硬件資源可以用做存儲,提高2RISC 更能提高計算機運算速度,指令數,指令格式,尋址方式少,寄存器多,采用組合邏輯,便于實現指令流水
3.RISC 便于設計,可降低成本,提高可靠性。
4.RISC不易實現指令系統兼容
總結
- 上一篇: C语言编程>第十八周 ⑧ 给定程
- 下一篇: STM32Cube配置等精度测频和测相位