RISC體系結構特點及其關鍵技術

2021-09-01 05:12:09 字數 1633 閱讀 8554

risc的英文全稱為「reduced instruction set computing」,中文即「精簡指令集」,它的指令系統相對簡單,它只要求硬體執行很有限且最常用的那部分指令,大部分複雜的操作則使用成熟的編譯技術,由簡單指令合成。

卡內基梅隆大學這樣定義risc的特點為:

1、大多數指令在單週期內完成

2、採用load/store結構。因為訪問儲存器指令所需要的時間比較長,在指令系統中要儘量減少這類指令,所以risc指令中只保留不可再少的load/store兩種儲存器訪問指令。

3、硬佈線控制邏輯。使得大多數指令在單週期內執行完成,以減少為程式技術中的指令解釋開銷。

4、減少指令和定址方式的種類

5、固定的指令格式

6、解碼優化

其實目前risc還具有以下特點

1、面向暫存器結構

2、注重提高流水線的執行效率,盡量讓減少流水線斷流,提高流水線效率

3、優化編譯技術

下面介紹一下risc中的關鍵技術

1、延時轉移技術:

在risc處理機中採用流水線工作方式,取指令和執行指令並行工作,那麼當遇到條件轉移指令時,流水線可能斷流。為了盡量保證流水線的執行效率,在轉移指令之後插入一條有效的指令,而轉移指令好像被延時了,這樣了技術即為延遲轉移技術。通常指令序列的調整由編譯器自動進行。需要注意的是:調整指令序列是不能改變原有程式的資料關係;被移動的指令不破壞機器的條件碼。

2、指令取消技術

由於採用指令延遲技術中,遇到條件轉移指令時,調整指令序列比較困難,採用了指令取消技術。所有轉移指令和資料變換指令都可以決定待執行指令是否應該取消。為了提高執行效率,採用取消規則為:如果向後轉移**移的目標位址小雨當前程式計數器pc值),則轉移不成功時取消下一條指令,否則執行下一條指令;如果向前轉移,則相反,在轉移不成功時執行下一條指令,否則取消。

3、重疊暫存器窗**術

由於risc的指令系統比較簡單,通常採用一段子程式來實現。因此risc中的call和return非常多,而且都需要通過堆疊操作儲存前一過程指標、資料等。為了儘量減少因為call和return操作訪問儲存器的量,提出了重疊暫存器窗**術。基本思想:在處理器中設定乙個數量較大的暫存器堆,並劃分成視窗。每個過程使用其中的三個視窗和乙個公共視窗,而在這些視窗中有乙個視窗式前乙個過程公用的,還有乙個視窗是與後乙個過程共用。與前一過程公用的視窗可以用來存放前一過程傳遞被本過程的引數。

4、指令流水調整技術

為了保持指令流水線高效率,不斷流,優化編譯器必須分析程式的資料流和控制流。當發現指令有斷流可能時,要調整指令順序。有些可以通過變數重新命名來消除的資料相關,要盡量消除。例如:

add r1,r2,r3; (r1)+(r2)->r3

add r3,r4,r5; (r3)+(r4)->r5

mul r6,r7,r3; (r6)*(r7)->r3

mul r3,r8,r9; (r3)*(r8)->r9

調整指令後

add r1,r2,r3; 

mul r6,r7,r0; 

add r3,r4,r5; 

mul r0,r8,r9; 

調整指令後,速度可以提高一倍

5、硬體為主韌體為輔

指令系統採用為程式實現的優點:便於實現複雜指令,便於修改指令系統,增加機器的靈活性,但是速度慢。所以risc一般採用硬體為主韌體為輔的方法實現指令。

計算機組成與體系結構 CISC與RISC(4)

指令系統方向發展 增強原有指令的功能,設定更為複雜的新指令實現軟體功能的硬化,這類機器稱為複雜指令系統計算機 cisc 典型的有採用x86 架構的計算機 減少指令種類和簡化指令功能,提高指令的執行速度,這類計算機稱為精簡指令系統計算機 risc 典型的有 arm mips 架構的計算機。cisc 複...

php學習筆記 Php 體系結構及其執行概述

php 體系結構及其執行概述 一 sapi 看似很高深的概念,其實說白了就是這樣乙個東西,伺服器程式 例如 apache,ngnix 和外圍程式定義了乙個約定,說咱們提供幾個函式,他們的函式名稱是 引數是 然後我們之間就可以正常呼叫 例如php,例如asp或者一些伺服器的外掛程式 例如如果是在lin...

OSI網路體系結構及其各層主要協議

為把在乙個網路結構下開發的系統與在另乙個網路結構下開發的系統互連起來,以實現更高一級的應用,使異種機之間的通訊成為可能,便於網路結構標準化,國際標準化組織 iso 於1983年形成了開放系統互連基本參考模osi open systems interconnection 簡稱osi 的正式檔案。所謂開...