一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

RISC-V架構(gòu)師從過(guò)去指令集設(shè)計(jì)的錯(cuò)誤中吸取的教訓(xùn)

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

過(guò)去的錯(cuò)誤

RV32I吸取的經(jīng)驗(yàn)教訓(xùn)

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

RISC-V架構(gòu)師從過(guò)去指令集設(shè)計(jì)的錯(cuò)誤中吸取的教訓(xùn)。通常的教訓(xùn)是避免過(guò)去的ISA“優(yōu)化”。經(jīng)驗(yàn)和教訓(xùn)按照第一章中提出的七個(gè)ISA指標(biāo)進(jìn)行分類。在成本,簡(jiǎn)單性和性能下列出的許多指令集特性可以互換,因?yàn)檫@只是設(shè)計(jì)的偏好問(wèn)題,但不管它們出現(xiàn)在哪里,它們都很重要。

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


審核編輯黃宇

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

    關(guān)注

    0

    文章

    47

    瀏覽量

    4729
  • RISC-V
    +關(guān)注

    關(guān)注

    46

    文章

    2461

    瀏覽量

    48026
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    RISC-V核低功耗MCU指令集架構(gòu)(ISA)特點(diǎn)

    RISC-V核低功耗MCU通過(guò)開(kāi)源生態(tài)、模塊化架構(gòu)與能效優(yōu)化技術(shù),成為物聯(lián)網(wǎng)、穿戴設(shè)備等領(lǐng)域的理想選擇?。 一、?開(kāi)源與可定制性? 完全開(kāi)源免費(fèi)?:RISC-V ISA無(wú)需專利授權(quán)費(fèi)用,允許開(kāi)發(fā)者
    的頭像 發(fā)表于 04-23 10:01 ?175次閱讀

    RISC-V架構(gòu)及MRS開(kāi)發(fā)環(huán)境回顧

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

    RISC-V指令集概述

    RISC-V就是RISC的第五代指令集架構(gòu)。而RISC-V目標(biāo)就是“成為一種完全開(kāi)放的指令集
    發(fā)表于 11-30 23:30

    關(guān)于RISC-V學(xué)習(xí)路線圖推薦

    一個(gè)號(hào)的RISC-V學(xué)習(xí)路線圖可以幫助學(xué)習(xí)者系統(tǒng)地掌握RISC-V架構(gòu)的相關(guān)知識(shí)。比如以下是一個(gè)較好的RISC-V學(xué)習(xí)路線圖: 一、基礎(chǔ)知識(shí)準(zhǔn)備 計(jì)算機(jī)體系結(jié)構(gòu)基礎(chǔ) : 了解計(jì)算機(jī)的基
    發(fā)表于 11-30 15:21

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

    需要一種更加開(kāi)放的指令集架構(gòu),以便更多的公司和個(gè)人可以參與到處理器的設(shè)計(jì)和開(kāi)發(fā)。這也是為什么RISC-V采用BSD開(kāi)源協(xié)議,可以自由地使用和分發(fā)。 靈活性:傳統(tǒng)的
    發(fā)表于 11-16 16:14

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

    在學(xué)習(xí)RISC-V指令集過(guò)程指令位寬大多是32位和64的,它并不像其它指令集,還有8位的古老指令集
    發(fā)表于 10-31 22:05

    RISC-V和arm指令集的對(duì)比分析

    、開(kāi)放性 RISC-VRISC-V指令集架構(gòu)規(guī)范公開(kāi),可以免費(fèi)使用。任何人都可以基于RISC-V架構(gòu)
    發(fā)表于 09-28 11:05

    ISA ARM 對(duì)比 RISC-V

    ARM和RISC-V同為精簡(jiǎn)指令集RISC架構(gòu),這意味著它們都基于相似的設(shè)計(jì)理念:通過(guò)簡(jiǎn)化指令集來(lái)提高處理器的效率和執(zhí)行速度。然而,即使
    的頭像 發(fā)表于 09-10 09:26 ?1313次閱讀

    RISC-V指令集的特點(diǎn)總結(jié)

    開(kāi)源 定義:RISC-V 是完全開(kāi)源的指令集架構(gòu)(ISA),意味著任何人都可以查看、使用、修改以及分發(fā)其設(shè)計(jì),而無(wú)需支付版權(quán)費(fèi)用。 優(yōu)勢(shì):這種開(kāi)源特性促進(jìn)了全球性的創(chuàng)新和合作。 社區(qū)化 定義
    發(fā)表于 08-30 22:05

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

    調(diào)用四條單CPU周期指令完成兩數(shù)相乘:內(nèi)存 a加載到寄存器,內(nèi)存b加載到寄存器,兩個(gè)寄存器數(shù)相乘,寄存器結(jié)果存入內(nèi)存a。按照此思路,早期的設(shè)計(jì)出的RISC 指令集,
    發(fā)表于 07-30 17:21

    risc-v的發(fā)展歷史

    了基于RISC-V指令集的服務(wù)器處理器,安謀科技也推出了RISC-V MCU等產(chǎn)品。 學(xué)術(shù)界與開(kāi)源社區(qū):RISC-V架構(gòu)在學(xué)術(shù)界和開(kāi)源社區(qū)
    發(fā)表于 07-29 17:20

    RISC-V基礎(chǔ)整數(shù)指令集

    RISC-V的出現(xiàn)比過(guò)去的ISA晚了一 個(gè)世紀(jì),這使它的設(shè)計(jì)者得以實(shí)踐Santayana的建議 ,即借用之前指令集中好的設(shè)計(jì),但不重復(fù)它們不好的瑕疵,包括RISC-I
    發(fā)表于 07-27 22:25

    為什么要有RISC-V

    在于它是一個(gè)開(kāi)源的指令集架構(gòu)。與幾乎所有的舊架構(gòu)不同,它的未來(lái)不受任何單一公司的浮沉或一時(shí)興起的決定的影響(這一點(diǎn)讓許多過(guò)去指令集
    發(fā)表于 07-27 15:05

    RISC-V的MCU與ARM對(duì)比

    RISC-V的MCU與ARM在多個(gè)方面存在顯著的區(qū)別,以下是兩者的對(duì)比: 開(kāi)源與專有 RISC-VRISC-V是一種開(kāi)源的指令集架構(gòu)(I
    發(fā)表于 05-27 15:58

    RISC--V架構(gòu)的特點(diǎn)

    選擇適合指令集指令集架構(gòu)。基于RISC-V 指令集架構(gòu)可以設(shè)計(jì)服務(wù)器CPU,家用電器CPU,工
    發(fā)表于 05-24 08:01