那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

RISC-V架構師從過去指令集設計的錯誤中吸取的教訓

華仔的編程隨筆 ? 來源: 華仔的編程隨筆 ? 作者: 華仔的編程隨筆 ? 2023-05-24 09:04 ? 次閱讀

過去的錯誤

RV32I吸取的經驗教訓

ARM-32 (1986) MIPS-32 (1986) X86-32(1978)
成本 必須支持整數乘除法 必須支持整數乘除法 8 位以及 16 位操作、必須支持整數乘除法 無 8 位、16 位操作、可選的整數乘除法支持(RV32M)
簡潔性 無零寄存器、條件指令執行、復雜的尋址模式、棧操作指令(push/pop)、算術/邏輯指令中存在的移位 立即數支持零擴展及符號擴展、一些算術指令會造成溢出異常 無零寄存器、復雜的過程調用指令(enter/leave)棧指令(push/pop)、復雜尋址模式、循環指令 寄存器x0專門用于存放常數0、立即數只進行符號擴展、一種數據尋址模式、沒有條件執行、沒有復雜的函數調用指令以及棧指令、算術指令不拋異常、使用單獨的移位指令來處理移位操作
性能 分支指令使用條件碼、在不同格式的指令中,源和目的寄存器的位置不同、加載多個計算得到的立即數、PC是一個通用寄存器 在不同格式的指令中,源和目的寄存器的位置不同 分支指令使用條件碼、每個指令中最多只能使用兩個寄存器 使用同一條指令實現比較及跳轉(不使用條件碼)、每條指令三個寄存器、不能一次load多個數據、不同指令格式中,泊及目的寄存器字段位置固定、立即數是常數(不是由計算得出的)、PC不是通用寄存器
架構和具體實現 將PC像普通寄存器一樣讀寫,這樣暴露了流水線長度 分支指令延遲槽Load指令延遲槽、乘除法使用單獨的HI、LO寄存器 寄存器不是通用的(AX,CX,DX,DI,SI有特殊用途) 分支指令沒有延遲槽、Load指令無延遲槽、通用寄存器
增長空間 有限的指令碼空間 有限的指令碼空間 大量可用的指令碼空間
程序大小 僅有32bit指令(Thumb-2是作為一個獨立的ISA) 僅32bit指令(microMIPS是作為一個獨立的ISA) 指令長度可用是不同字節,但這是一個很不好的選擇。 32位指令+16位RV32C擴展
易于編程/編譯/鏈接 僅15個寄存器內存數據必須對齊、不規則的數據尋址模式、不一致的性能計數器 內存數據必須對齊、不規則的數據尋址模式、不一致的性能計數器 僅15個寄存器中內存數據必須對齊、不規則的數據尋址模式、不一致的性能計數器 31個寄存器、數據可用不對齊、PC相對的數據尋址模式、對稱的數據尋址模式、定義在加構中的性能計數器

RISC-V架構師從過去指令集設計的錯誤中吸取的教訓。通常的教訓是避免過去的ISA“優化”。經驗和教訓按照第一章中提出的七個ISA指標進行分類。在成本,簡單性和性能下列出的許多指令集特性可以互換,因為這只是設計的偏好問題,但不管它們出現在哪里,它們都很重要。

摘自《RISC-V-Reader》中文版


審核編輯黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 架構師
    +關注

    關注

    0

    文章

    47

    瀏覽量

    4652
  • RISC-V
    +關注

    關注

    45

    文章

    2322

    瀏覽量

    46586
收藏 人收藏

    評論

    相關推薦

    RISC-V架構及MRS開發環境回顧

    RISC-V是一種特定指令集架構。RISC-V指令集類似于INTEL的X86、ARM指令集,是
    發表于 12-16 23:08

    RISC-V指令集概述

    RISC-V就是RISC的第五代指令集架構。而RISC-V目標就是“成為一種完全開放的指令集
    發表于 11-30 23:30

    關于RISC-V學習路線圖推薦

    一個號的RISC-V學習路線圖可以幫助學習者系統地掌握RISC-V架構的相關知識。比如以下是一個較好的RISC-V學習路線圖: 一、基礎知識準備 計算機體系結構基礎 : 了解計算機的基
    發表于 11-30 15:21

    什么是RISC-V?以及RISC-V和ARM、X86的區別

    需要一種更加開放的指令集架構,以便更多的公司和個人可以參與到處理器的設計和開發。這也是為什么RISC-V采用BSD開源協議,可以自由地使用和分發。 靈活性:傳統的
    發表于 11-16 16:14

    RISC-V指令集位寬的幾點學習心得

    在學習RISC-V指令集過程指令位寬大多是32位和64的,它并不像其它指令集,還有8位的古老指令集
    發表于 10-31 22:05

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

    、開放性 RISC-VRISC-V指令集架構規范公開,可以免費使用。任何人都可以基于RISC-V架構
    發表于 09-28 11:05

    RISC-V指令集的特點總結

    開源 定義:RISC-V 是完全開源的指令集架構(ISA),意味著任何人都可以查看、使用、修改以及分發其設計,而無需支付版權費用。 優勢:這種開源特性促進了全球性的創新和合作。 社區化 定義
    發表于 08-30 22:05

    CISC(復雜指令集)與RISC(精簡指令集)的區別  

    調用四條單CPU周期指令完成兩數相乘:內存 a加載到寄存器,內存b加載到寄存器,兩個寄存器數相乘,寄存器結果存入內存a。按照此思路,早期的設計出的RISC 指令集,
    發表于 07-30 17:21

    risc-v的發展歷史

    了基于RISC-V指令集的服務器處理器,安謀科技也推出了RISC-V MCU等產品。 學術界與開源社區:RISC-V架構在學術界和開源社區
    發表于 07-29 17:20

    RISC-V基礎整數指令集

    RISC-V的出現比過去的ISA晚了一 個世紀,這使它的設計者得以實踐Santayana的建議 ,即借用之前指令集中好的設計,但不重復它們不好的瑕疵,包括RISC-I
    發表于 07-27 22:25

    為什么要有RISC-V

    在于它是一個開源的指令集架構。與幾乎所有的舊架構不同,它的未來不受任何單一公司的浮沉或一時興起的決定的影響(這一點讓許多過去指令集
    發表于 07-27 15:05

    RISC--V架構的特點

    選擇適合指令集指令集架構。基于RISC-V 指令集架構可以設計服務器CPU,家用電器CPU,工
    發表于 05-24 08:01

    RISC-V指令集說明哪里有?

    RISC-V指令集說明哪里有?匯編指令文檔哪有?
    發表于 04-30 17:44

    RISC-V開源指令集全面指南與解析

    它應該是穩定的,基礎的指令集架構不應該改變。更重要的是,它不能像以前的專有指令集架構一樣被棄用,例如AMD Am29000、Digital Alpha、Digital VAX、Hewl
    的頭像 發表于 03-13 09:41 ?839次閱讀
    <b class='flag-5'>RISC-V</b>開源<b class='flag-5'>指令集</b>全面指南與解析

    什么是RISC-V?RISC-V指令集的優勢

    CPU 支持的所有指令指令的字節級編碼就是這個 CPU 的指令集架構(Instruction Set Architecture,ISA),指令集
    發表于 03-05 10:31 ?963次閱讀
    什么是<b class='flag-5'>RISC-V</b>?<b class='flag-5'>RISC-V</b><b class='flag-5'>指令集</b>的優勢
    360棋牌大厅| 火箭百家乐官网的玩法技巧和规则 | 百家乐官网庄89| 百家乐导航| 淘宝博百家乐官网的玩法技巧和规则| 金鼎百家乐官网局部算牌法| 澳门百家乐官网鸿运| 百家乐官网电投网站| 金博士百家乐官网娱乐城| 百家乐官网群1188999| 678百家乐官网博彩娱乐场| ea百家乐官网打水| 百家乐官网五湖四海娱乐场开户注册 | 百家乐官网烫金筹码| 皇冠网百家乐官网平台| 百家乐官网必胜密| 天博百家乐官网的玩法技巧和规则| 个体老板做生意的风水| 百家乐游戏教程| 大世界百家乐的玩法技巧和规则 | 解析百家乐官网投注法| 澳门百家乐官网怎赌才能赚钱| 极速百家乐官网真人视讯| 百家乐官网送钱平台| 百乐坊百家乐娱乐城| 大发888大发娱乐城| 百家乐过滤软件| 88娱乐城2官方网站| 百家乐官网二代皇冠博彩| 百家乐官网怎样概率大| 百家乐官网规律打法| 百家乐翻天粤语下载| 威尼斯人娱乐网上百家乐的玩法技巧和规则 | 百家乐官网诀| 百家乐声音不印网| 康莱德百家乐的玩法技巧和规则| 水果老虎机游戏下载| 百家乐赌场| bet365官方| 赌博百家乐官网下载| 百家乐视频游戏冲值|