0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

精簡指令集的特點_精簡指令集有哪些指令

姚小熊27 ? 來源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2020-08-10 11:26 ? 次閱讀

精簡指令集的特點

精簡指令集計算機RISC的特點是指令及其格式精少,操作和控制簡捷。具體有下列幾個方面。

精簡指令集

RISC結(jié)構(gòu)采用精簡的,長短劃一的指令集,使大多數(shù)的操作獲得了盡可能高的效率。某些在傳統(tǒng)結(jié)構(gòu)中要用多周期指令實現(xiàn)的操作,在RISC結(jié)構(gòu)中,通過機器語言編程,就代之以多條單周期指令了。精簡的指令集大大改善了處理器的性能,并推動了RISC的設(shè)計。對于到底精簡到什么程度的問題,沒有一定的回答。將現(xiàn)有RISC系統(tǒng)與CISC系統(tǒng)作一對比,便可見大概。通常,對RISC而言:

指令數(shù)少,不超過128條。

尋址方式少,不超過4種。

指令格式少,不超過4種。

處理關(guān)于擴充指令集的建議是非常慎重的,要經(jīng)過認真的權(quán)衡,驗證,在看它們是否真正提高計算機的性能。例如,MIPS采用了一條規(guī)則:增加一條指令必須使性能在一定的應(yīng)用范圍內(nèi)得到1%的增益,否則這條指令將被拒絕。

指令時鐘周期,指令長度相等

如果每一條指令要執(zhí)行的任務(wù)既簡單又明了,則執(zhí)行每一條指令所的時間可以被壓縮周期數(shù)也可減少。RISC的設(shè)計目標是實現(xiàn)一個機器周期執(zhí)行一條指令,使得系統(tǒng)操作更加有效。接近這個目標的技術(shù)包括指令流水線及特定的裝/存結(jié)構(gòu)等。典型的指令可包括取指、譯碼、執(zhí)行和存裝果等階段。單周期指可通過讓所有指令為標準長短來實現(xiàn)。標準指令長短應(yīng)與計算機系統(tǒng)的基本字長相等,通常與系統(tǒng)中數(shù)據(jù)線數(shù)相等。

在任何取指周期,完整的單個指令要傳給CPU。例如,如果基字長是32位,且系統(tǒng)總線的數(shù)據(jù)部分是32線,則標準指令長度是32位。要讓所有指令的執(zhí)行時間一致較困難。有些指令,包含簡單的在CPU寄存器上的邏輯操作(清寄存器等),則可容易地在一個CPU時鐘周期內(nèi)執(zhí)行;其它指令可能包含內(nèi)存存?。▽?nèi)存的讀寫、取數(shù)等)或多周期操作(乘、除等),可能無法在單周期內(nèi)執(zhí)行。這給設(shè)計者提出了這樣的要求;讓大多數(shù)經(jīng)常使用的指令得以在一個單周期內(nèi)執(zhí)行。

指令流水線

減少執(zhí)行一條指令所需周期數(shù)的方法是重疊執(zhí)行多條指令。指令流水線采用這樣的工作方式:將每條指令的執(zhí)行分為幾個離散部分,然后同時執(zhí)行多條指令。任何指令的取指和執(zhí)行階段占據(jù)相同時間,理想的是一個單周期。這可說是RISC最重要的一條設(shè)計原則。所有從內(nèi)存到CPU執(zhí)行的指令,都遵循一種恒定的流的形式。每條指令都以同樣的步調(diào)執(zhí)行,無等待的指令。CPU始終是忙的。達到流水線操作的必要條件是:

標準的,固定長短的指令,它與計算機字長和數(shù)據(jù)線的字長相等。

所有指令的標準執(zhí)行時間,最好在一個單CPU周期內(nèi)。

例SPARC芯片等采用了取指、譯碼、執(zhí)行和寫入結(jié)果四級流水線結(jié)構(gòu),以最大限度來提高處理器性能。在每一個時鐘周期的頭上,都可以開始執(zhí)行一條新的指令,這就保證了每個機器周期從存貯器平均取出一條新的指令,從而,總體看,大多數(shù)指令能在單周期內(nèi)實現(xiàn)。指令流水線技術(shù)可以比作一條裝配線—指令象是被加工的產(chǎn)品一樣,從一道工序流到下一道工序,一直到它執(zhí)行完為止。

因此,指令流水線利用一個等于其流水線深度的因子,來減少指令周期數(shù)是可能的,但這樣的話,要求流水線始終充滿有用指令且沒有任何東西阻礙指令通過流水線,這樣的需求給結(jié)構(gòu)增加了一定的負擔。例如,對于ALU等資源的競爭,阻止了流水線中指令的流動。長短不一的執(zhí)行時間所引起的不良后果更是顯而易見,這也是為什么RISC要定義一個有前面所述特點的指令集的原因。

裝入和存數(shù)(LOAD/Store)結(jié)構(gòu)

執(zhí)行與內(nèi)存有關(guān)的操作指令,不是要求增加每個周期的時間,就是要求增加指令的周期數(shù),二者必取其一。因為這些指令要計算操作數(shù)的地址,將所需的操作數(shù)從內(nèi)存中讀出,計算得出結(jié)果,再把結(jié)果送回內(nèi)存,所以它們執(zhí)行的時間就長得多。為了消除這種指令的負作用,RISC采用了這樣的裝入和存數(shù)結(jié)構(gòu):只有裝入(Load)和存數(shù)(Store)指令才去訪間內(nèi)存,所有其它操作只訪問保存在處理器寄存器中的操作數(shù)。其優(yōu)點在于:

減少訪問內(nèi)存的次數(shù),降低了對內(nèi)存帶寬的要求。

將所有的操作限制于只針對寄存器,幫助了指令集的簡化。

取消內(nèi)存操作可使編釋器優(yōu)化寄存的分配更容易—這種特性減少對內(nèi)存的存取,同時也減少了每一任務(wù)的指令數(shù)。

所有這些都有助于RISC實現(xiàn)的每個周期執(zhí)行一條指令的目標。盡管如此,裝入和存數(shù)指令仍阻礙著IRSC設(shè)計目標的實現(xiàn)。用優(yōu)化編譯技術(shù)處理裝入指令和分支指令的延遲,有助問題的解決。優(yōu)化編譯技術(shù)雖不是專門面向RISC結(jié)構(gòu)的,但優(yōu)化編譯器依賴于RISC結(jié)構(gòu)完成其出色的任務(wù),RISC結(jié)構(gòu)又依賴于優(yōu)化編譯器得到它們更完善的性能。編釋器要能分析數(shù)據(jù)和控制流,并在此基礎(chǔ)上調(diào)整指令的執(zhí)行順序,巧妙安排寄存器的用法。前一種作用可減少CPU的空閑時間,后一種作用可以提高寄存器中所保存的數(shù)據(jù)的可再用率,減少訪存次數(shù),縮短數(shù)據(jù)通路的長度。

擁有較大寄存器組

為了便于實現(xiàn)多數(shù)指令在寄存器之間的操作,即所謂的寄存器到寄存器操作,必須有足夠量的CPU通用寄存器。足量的寄存器使得在隨后操作中需作為操作用的中間結(jié)果暫存在CPU寄存器中,因而就減少了對內(nèi)存的裝入和存數(shù),加快了運行速度。工業(yè)化RISC系統(tǒng)中至少采用32個通用CPU寄存器。

采用硬連線控制

由于微程序設(shè)計給設(shè)計者提供的靈活性,許多CISC系統(tǒng)是微程序控制的。不同的指令通常具有不同長度的微程序,這意味著每條指令執(zhí)行的周期數(shù)不一樣,這與所有指令一致的、流線的處理原則相矛盾。但這可由硬連線控制來解決,而且速度會更快。因此RISC應(yīng)該是硬連接線控制的。當每條指令與一單條微指令有一對一相相符合的關(guān)系時可有例外,也就是每個微程序由一單個控制字組成。這種設(shè)計可與用硬連線控制一樣快,一樣高效,并使設(shè)計者得益于微程序設(shè)計的優(yōu)越性。采用硬連線控制,可使RISC系統(tǒng)控制器簡單。設(shè)計的簡單又使機器的布局更加合理,使得設(shè)計者可以集中精力去優(yōu)化那些剩下的,為數(shù)不多的,但又很關(guān)鍵的處理器特性。簡化的結(jié)構(gòu)使芯片上面積資源緊張的狀態(tài)得以緩解,一些對性能至關(guān)重要的結(jié)構(gòu),象大的寄存器元件,轉(zhuǎn)換查找緩存(TLB)S協(xié)處理器和乘除單元都可以裝在同一塊芯片上。這些附加的資源又使處理器增加了很大的性能優(yōu)勢。事實上,RISC并非一定嚴格地完全具備上述特點,有些稱作RISC型的系統(tǒng)甚至違背了上述某方面。上述特點應(yīng)被當作一種指導(dǎo)原則來解釋RISC的性質(zhì)。放寬點講,滿足大部分這些特點的系統(tǒng)就能被看作RISC。

精簡指令集有哪些指令

精簡指令集 精簡指令集,計算機CPU的一種設(shè)計模式,也被稱為RISC(Reduced Instruction Set Computing 的縮寫)。常見的精簡指令集微處理器包括AVR、PIC、ARM、DEC Alpha、PA-RISC、SPARC、MIPS、Power架構(gòu)等。早期,這種CPU指令集的特點是指令數(shù)目少,每條指令都采用標準字長、執(zhí)行時間短、CPU的實現(xiàn)細節(jié)對于機器級程序是可見的等等。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • RISC
    +關(guān)注

    關(guān)注

    6

    文章

    462

    瀏覽量

    83734
  • 精簡指令集
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    2428
收藏 人收藏

    評論

    相關(guān)推薦

    《RISC-V 體系結(jié)構(gòu)編程與實踐(第2版)》指令集

    本書的指令集基于rv64i mafdcsiu 屬于精簡指令集。 閱讀本章可以指令集不多,都是最基礎(chǔ)的功能點。 分為6個部分 加載保存指令 跳轉(zhuǎn)指令
    發(fā)表于 12-07 18:36

    RISC-V指令集概述

    的一大特點。 RISC-V指令集RV32I、RV32E、RV64I、RV64E、RV64I等等,RV代表RISC-V,32/64代表32位或64位,I和E都是基本指令集,在I和E的基
    發(fā)表于 11-30 23:30

    RISC-V的指令集位寬的幾點學(xué)習(xí)心得

    ,實際上,RISC-V指令集的位寬具有更大的靈活性。 RISC-V指令集的位寬多樣性 RISC-V是一種基于精簡指令集(RISC)的開放式指令集架構(gòu)(ISA),其設(shè)計簡潔且靈活,適用于
    發(fā)表于 10-31 22:05

    RISC-V和arm指令集的對比分析

    。 ARM :ARM的設(shè)計理念是在保持指令集精簡性的同時,增加一些特殊指令和寄存器,以提高特定應(yīng)用場景下的性能。ARM的指令集設(shè)計更加復(fù)雜和靈活,包含了更多的
    發(fā)表于 09-28 11:05

    RISCV的主流指令集哪些?

    如題,就像X86中指令集MMX,SSE,SSE2等,就像ARM指令集ARM和Thumb等,但是總是感覺RISCV特別亂,可能是廠商比較多的緣故吧,我知道的
    發(fā)表于 08-29 13:49

    復(fù)雜指令集精簡指令集什么區(qū)別

    復(fù)雜指令集(CISC,Complex Instruction Set Computer)和精簡指令集(RISC,Reduced Instruction Set Computer)是微處理器設(shè)計中
    的頭像 發(fā)表于 08-22 11:00 ?3308次閱讀

    RM46Lx40 16/32位精簡指令集計算機(RISC)閃存微控制器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《RM46Lx40 16/32位精簡指令集計算機(RISC)閃存微控制器數(shù)據(jù)表.pdf》資料免費下載
    發(fā)表于 08-08 10:58 ?0次下載
    RM46Lx40 16/32位<b class='flag-5'>精簡指令集</b>計算機(RISC)閃存微控制器數(shù)據(jù)表

    RM46L852 16/32位精簡指令集計算機(RISC)閃存微控制器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《RM46L852 16/32位精簡指令集計算機(RISC)閃存微控制器數(shù)據(jù)表.pdf》資料免費下載
    發(fā)表于 08-08 10:57 ?0次下載
    RM46L852 16/32位<b class='flag-5'>精簡指令集</b>計算機(RISC)閃存微控制器數(shù)據(jù)表

    RM46Lx50 16/32位精簡指令集計算機(RISC)閃存微控制器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《RM46Lx50 16/32位精簡指令集計算機(RISC)閃存微控制器數(shù)據(jù)表.pdf》資料免費下載
    發(fā)表于 08-08 10:44 ?0次下載
    RM46Lx50 16/32位<b class='flag-5'>精簡指令集</b>計算機(RISC)閃存微控制器數(shù)據(jù)表

    RM46Lx30 16/32位精簡指令集計算機(RISC)閃存微控制器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《RM46Lx30 16/32位精簡指令集計算機(RISC)閃存微控制器數(shù)據(jù)表.pdf》資料免費下載
    發(fā)表于 08-08 10:43 ?0次下載
    RM46Lx30 16/32位<b class='flag-5'>精簡指令集</b>計算機(RISC)閃存微控制器數(shù)據(jù)表

    TMS470MF06607 16/32位精簡指令集計算機(RISC)閃存微控制器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《TMS470MF06607 16/32位精簡指令集計算機(RISC)閃存微控制器數(shù)據(jù)表.pdf》資料免費下載
    發(fā)表于 08-07 11:04 ?0次下載
    TMS470MF06607 16/32位<b class='flag-5'>精簡指令集</b>計算機(RISC)閃存微控制器數(shù)據(jù)表

    TMS570LS系列16/32位精簡指令集計算機(RISC)閃存微控制器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《TMS570LS系列16/32位精簡指令集計算機(RISC)閃存微控制器數(shù)據(jù)表.pdf》資料免費下載
    發(fā)表于 08-06 14:16 ?0次下載
    TMS570LS系列16/32位<b class='flag-5'>精簡指令集</b>計算機(RISC)閃存微控制器數(shù)據(jù)表

    TMS570LS系列16/32位精簡指令集(RISC)閃存微控制器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《TMS570LS系列16/32位精簡指令集(RISC)閃存微控制器數(shù)據(jù)表.pdf》資料免費下載
    發(fā)表于 08-01 11:37 ?0次下載
    TMS570LS系列16/32位<b class='flag-5'>精簡指令集</b>(RISC)閃存微控制器數(shù)據(jù)表

    CISC(復(fù)雜指令集)與RISC(精簡指令集)的區(qū)別  

    Instruction Set Computers,復(fù)雜指令集計算)和RISC(Reduced Instruction Set Computers)是兩大類 主流的CPU指令集類型,其中CISC以Intel,AMD
    發(fā)表于 07-30 17:21

    什么是RISC-V?RISC-V指令集的優(yōu)勢

    CPU 支持的所有指令指令的字節(jié)級編碼就是這個 CPU 的指令集架構(gòu)(Instruction Set Architecture,ISA),指令集在計算機軟件和硬件之間搭起了一座橋梁。
    發(fā)表于 03-05 10:31 ?868次閱讀
    什么是RISC-V?RISC-V<b class='flag-5'>指令集</b>的優(yōu)勢