RISC-V(リスク ファイブ)はカリフォルニア大学バークレー校で開発されオープンソースで提供されている命令セットアーキテクチャ: instruction set architecture、ISA)である[2]

RISC-Vのロゴ
RISC-V
開発者 カリフォルニア大学バークレー校
ビット数 32, 64, 128
発表 2015年 (9年前) (2015)[1]
バージョン 2.2
デザイン RISC
タイプ Load-store
エンコード Variable
ブランチ Compare-and-branch
エンディアン Little
拡張 M, A, F, D, Q, C, P
オープン Yes
レジスタ
汎用 16, 32 (ゼロ・レジスタを1つ含む)
浮動小数点 32 (オプション)
2013年1月に製造されたRISC-Vプロセッサのプロトタイプ

本稿ではISAであるRISC-Vの実装(RISC-Vコア)およびエコシステム(対応OS、開発ツール)を含めて解説する。

概要

編集

オープンソースライセンス

編集

他の多くの命令セットアーキテクチャ(ISA)設計とは異なり、RISC-V ISAは、使用料のかからないオープンソースライセンスで提供されている。多くの企業がRISC-Vハードウェアを提供したり、発表したりしており、RISC-Vをサポートするオープンソースのオペレーティングシステムが利用可能であり、いくつかの一般的なソフトウェアツールチェーンで命令セットがサポートされている。

命令セット(ISA)がRISC

編集

RISC-V (RISC) RISC-V ISA[3][4]CPUIEEE 75432641283319

命令セットスペースの拡張

編集

ISAの128ビット伸張版の命令セットスペースが確保されたのは、60年にわたる業界の経験から、最も回復不可能な命令セット設計上の誤りはメモリに対するアドレス空間の不足であることが示されているからである。2016年時点で、128ビットISAは意図的に未定義のままであるが、これは、このような大規模なメモリシステムでの実用的な経験がまだほとんどないためである。

実用的な使用に使える設計

編集

2010RISC-V使

20196ISA2.2ISA1.110.13.2[5] 

開発動機

編集

オープンなISA

編集

ISA/使使[6]

ISAARM[7]ISAIPISAISAISA

RISC-VISAGNU General Public LicenseGPL使RISC-VCPUBSDBSDRISC-VRISC-V

実用可能かつシンプルなISA

編集

彼らの主張によれば、命令セットの設計では新しい設計原理が現れることはほとんどなく、過去40年の中で最も成功した設計はますます似通って来ている。失敗した設計のほとんどは、出資した企業が商業的に失敗したのであり、命令セットが技術的に劣っていたからではない。よって、よく設計されたオープンな命令セットが、十分に確立された設計原理を用いて設計されれば、多くのベンダーが長期間に渡ってサポートする気になるだろう[6]

他の学術目的の設計とは異なり、RISC-V命令セットは、研究内容の説明のための簡略化に最適化するのではなく、実用的なコンピュータに最適化した簡略化にすると宣言されている。この簡略化はコンピュータの速度向上を目的とするが、コストや電力使用量も削減される。この命令セットに含まれるものは、ロード/ストア アーキテクチャ、CPU内部のマルチプレクサを単純化するビット・パターン、簡略化された標準に基いた浮動小数点、アーキテクチャに中立な設計、および、最上位の符号ビットを固定とすることによる符号拡張の高速化である。符号拡張は、しばしば、クリティカル・タイミング・パスになると言われている。

命令セットは3種類のワード幅

編集

命令セットは、幅広い層のユーザー向けに設計されている。32-、64-、128-ビットの3つのワード幅、様々なサブセットをサポートする。各サブセットの定義は、3つワード幅間で、わずかに変化する。サブセットは、小さな組み込みシステムパーソナルコンピュータ、ベクタプロセッサを持つスーパーコンピュータ、および、ウェアハウス・スケールのラック・マウント型並列計算マシンをサポートする。

命令セットは可変長幅

編集

命令セットは、可変長幅で、拡張可能であるため、より多くのエンコード・ビットが追加可能である。ISAには128ビットまで拡張されたバージョンまで予約されている。これは、過去60年の業界の歴史の中で、過去の命令セットでメモリアドレス空間が不足していたことが原因で、取り返しのつかない失敗が起きたことを反映している。2016年現在、128-ビットのISAは、その巨大なメモリシステムに関する知見がほとんどないために、意図的に未定義にされている。

教育上も有効

編集

RISC-VISAISA[8]OS[9]RISC-V[8]

歴史

編集

先行開発

編集

RISC1980[10]

RISCDLX1990 RISC-VDLXDLXFPGA使

ARM CPU2GNUISA3[11][12]

OpenRISCDLXISARISC1OpenRISCGCCLinux

RISC-VRISC ISA5[8]RISC-V4RISC-I[13]RISC-II[14]SOAR[15]SPUR[16]

RISC-V財団とRISC-V International

編集

20103RISC-V[6]RISCRISC-VRISC-VDARPA[8]

RISC-V2015[1]RISC-V[17]Andes Technology[18]BAEBerkeley Architecture ResearchBluespec, Inc.CortusGoogleGreenWaves TechnologiesIBMImperas SoftwareIIT MadrasMellanox TechnologiesMicrosemiNVIDIANXPCryptography ResearchSiFive[19][20][21]

201911RISC-V貿[22]20203RISC-V International[1]

RISC-V InternationalRISC-VRISC-VRISC-V InternationalRISC-V Compatible使[23]

表彰

編集
  • 2017年、Linley Groupにより、ベスト・テクノロジー(命令セット)賞に選定された。

実装

編集

RISC-Vオーガニゼーションは、RISC-VのCPUとSoCの実装リストを管理している[24]

既存

編集



Xuantie-910: 20197[25] (T-Head) 2.5GHz 1664(RV64GCV)202110T-Head4 (C910[26], C906[27], E906[28], E902[29]) 

N25/NX25: 2017RISC-V InternationalAndes Technology Corporation[30]

CodasipUltraSoCCodasipRISC-VIPUltraSoCRISC-VSOC[31]

GD32V: GigaDevice[32]RV32IMACSipeedLongan Nano[33]

GAP8: 20182GreenWaves Technologies321832SoCRV32IMCGAPuino GAP820185[34][35][36]

SCR1: SyntacoreRV32I/E[MC] 

UltraSOC

SweRV Core: 201812Western Digital29WDSweRVSSD20191[37][38][39]

ESP32-S2 ULP: Espressif

開発環境

編集

IAR SystemsRV32 32RISC-VIAR Embedded Workbench for RISC-V64RV32E

SEGGERJ-Link[40]Embedded Studio[41]RTOSembOSRISC-V[42]

FPGASoCRISC-VC++RISC-VSystem On Chip

開発会社

編集

RISC-VSiFive2017[43][44]LinuxOS64RV64GCSoC[45]

CloudBEARRISC-VIP[46]

Syntacore[47]RISC-V InternationalRISC-V IP12015RISC-V IP2018SCR183264[48]2016Syntacore IPSoC[49]

開発中

編集

ASTCICRISC-V CPU[50]

Centre for Development of Advanced Computing, India(C-DAC)64RISC-V[51]

Cobham GaislerNOEL-V 64[52]

FreeBSD64RISC-V使

Esperanto TechnologiesRISC-VET-MaxionET-MinionET-Graphics3[53]

IoTPULPRISC-V PULPino[54]

European Processor InitiativeEPIRISC-V Accelerator Stream [55][56]

IoT32CPURapidIOHybrid Memory Cube64CPU66RISC-VCPU

lowRISC64RISC-V ISASoC

NvidiaGeForceFalconRISC-V使[57]

SiFiveRISC-VCPUU8IP[58]

オープンソース

編集

以下のように多くのオープンソースのRISC-V CPUの設計(IP)がある。

表. オープンソースRISC-V IP
名称 開発者 ISA 用途 開発ツール リンク
Rocket[59] バークレー RV64? 小型/低消費電力の中間的コンピュータ Chisel [60]
BOOM バークレー RV64GC 個人用、スパコン、倉庫規模 Chisel [61]
Sodor[62] バークレー RV32? [63]
picorv32 Claire Wolf RV32IMC MCU Verilog [64]
scr1 Syntacore RV32IMC MCU Verilog [65]
PULPino チューリヒ工科大学 / ボローニャ大学 RV32IMC/RV32IMFC MCU・DSPカスタム [66]
mmRISC-1 Munetomo Maruyama RV32IM[A][F]C MCU Verilog [67]

ソフトウェア

編集

CPU2使[12]RISC-V[vague]

CPU[]

RISC-V

GNU Compiler CollectionGCCGDB)

LLVM

OVPsim simulatorRISC-V Fast Processor Models

Spike simulator

QEMU

UEFIv2.7RISC-VtianocoreHPEseL4[68][69]RISC-V LinuxJavaScript[70]

OSサポート

編集

RISC-VOSOSLinuxFreeBSDNetBSD2019314 (2019-03-14)[71]RISC-VFreeBSD20162FreeBSD 11.0[72][73]Debian[74]Fedora[75]Das U-Boot[76]

脚注

編集


(一)^ abcHistory (). RISC-V International. 2023929

(二)^ "RISC-V is an open standard Instruction Set Architecture (ISA) enabling a new era of processor innovation through open collaboration" RISC-V International. About RISC-V. 2023-06-17.

(三)^ Insider's Computer Dictionary  - IT. atmarkit.itmedia.co.jp. 2024329

(四)^  - . mix.kumikomi.net. 2024329

(五)^ Privileged ISA Specification - RISC-V International

(六)^ abcInstruction Sets Should be Free. U.C. Berkeley Technical Reports. Regents of the University of California. 20161115

(七)^ Demerjian, C. (2013). A long look at how ARM licenses chips: Part 1. SemiAccurate. 2018721How ARM licenses its IP for production: Part 2. 2018721

(八)^ abcdThe RISC-V Instruction Set Manual, Volume I: Base User-Level ISA version 2.2. University of California, Berkeley. 2017525

(九)^ Draft Privileged ISA Specification 1.9. RISC- V. RISC-V Foundation. 2016830

(十)^ Patterson, David A; Ditzel, David R. (October 1980). The Case for the Reduced Instruction Set Computer. ACM SIGARCH Computer Architecture News 8(6): 25. doi:10.1145/641914.641917. http://dl.acm.org/citation.cfm?id=641917. 

(11)^ Amber ARM-compatible core. OpenCores. OpenCores. 2014826

(12)^ ARM4U. OpenCores. OpenCores. 2014826

(13)^ Patterson, David A.; Sequin, Carlo H. (1981). RISC I: A reduced instruction set VLSI computer. ISCA: 443-458. 

(14)^ Katevenis, Manolis G.H.; Sherburne, Jr., Robert W.; Patterson, David A. (August 1983). The RISC II micro-architecture. Proceedings VLSI 83 Conference. 

(15)^ Ungar, David; Blau, Ricki; Foley, Peter; Samples, Dain; Patterson, David (1984). Architecture of SOAR: Smalltalk on a RISC. ISCA: 188197. doi:10.1145/800015.808182. https://doi.org/10.1145/800015.808182. 

(16)^ Lee, D.D.; Kong, S.I.; Hill, M.D.; Taylor, G.S.; Hodges, D.A.; Katz, R.H.; Patterson, D.A. (1989). A VLSI chip set for a multiprocessor workstation. I. An RISC microprocessor with coprocessor interface and support for symbolic processing. IEEE Journal of Solid-State Circuits 24(6): 1688-1698. doi:10.1109/4.45007. https://doi.org/10.1109/4.45007 20231128. 

(17)^ Finley, Klint. Turing Prize Winners Paved Way to Smartphone Chips. Wired.com. 2018321

(18)^ AndeStar Architecture. Andes Technology. 2018719 Andes is a founding member of the RISC-V Foundation

(19)^ Google, Oracle and HP Join RISC-V. EE Times. UBM. 2016211

(20)^ Members at a Glance. riscv.org. 201812

(21)^ HPERISCRISC-V. @IT. (201615). https://atmarkit.itmedia.co.jp/ait/articles/1601/05/news090.html 20161025 

(22)^ U.S.-based chip-tech group moving to Switzerland over trade curb fears (). Reuters. (20191125). https://www.reuters.com/article/us-usa-china-semiconductors-insight-idUSKBN1XZ16L 2023117 

(23)^ Branding Guidelines (). RISC-V International. 2023117

(24)^ RISC-V Cores and SoC Overview. RISC-V (2019925). 2019105

(25)^ China's Alibaba is making a 16-core, 2.5 GHz RISC-V processor. www.techspot.com. 2019730

(26)^ T-Head Semiconductor (20211019). openc910. GitHub. 20211030

(27)^ T-Head Semiconductor (20211019). openc906. GitHub. 20211030

(28)^ T-Head Semiconductor (20211019). opene906. GitHub. 20211030

(29)^ T-Head Semiconductor (20211019). opene902. GitHub. 20211030

(30)^ Andes Technology. RISC-V International. 2018710

(31)^ Manners (20161123). Codasip and UltraSoC Combine on RISC-V. Electronics Weekly. Metropolis International Group, Ltd.. 20161123

(32)^ GigaDevice Unveils The GD32V Series With RISC-V Core in a Brand New 32-bit General Purpose Microcontroller. www.gigadevice.com. 2019829

(33)^ Sipeed Longan Nano - RISC-V GD32VF103CBT6 Development Board (). www.seeedstudio.com. 2019829

(34)^ GreenWaves GAP8 is a Low Power RISC-V IoT Processor Optimized for Artificial Intelligence Applications. CNXSoft: Embedded Systems News (2018227). 201834

(35)^ Yoshida, Junko (2018226). AI Comes to Sensing Devices. EE Times. https://www.eetimes.com/document.asp?doc_id=1333003 2018710 

(36)^ "GreenWaves Technologies Announces Availability of GAP8 Software Development Kit and GAPuino Development Board" (Press release). 22 May 2018.

(37)^ Shilov. Western Digital Reveals SweRV RISC-V Core, Cache Coherency over Ethernet Initiative. www.anandtech.com. 2019523

(38)^ Western Digital Releases SweRV RISC-V Core Source Code (). AB Open (2019128). 20195212019102

(39)^ Cores-SweRV - GitHub

(40)^ SEGGER Adds Support for SiFive's Coreplex IP to Its Industry Leading J-Link Debug Probe. 2017919

(41)^ PR: SEGGER Embedded Studio supports RISC-V architecture. 20171123

(42)^ PR: SEGGER presents RTOS, stacks, middleware for RISC-V. 2017128

(43)^ HiFive1. SiFive. 2018710

(44)^ SiFive. Hi-Five1: Open-source Arduino-Compatible Development Kit. Crowd Supply. 2016122

(45)^ FU540 SoC CPU. SiFive. 20181024

(46)^ CloudBEAR. 20181016

(47)^ Syntacore. 20181211

(48)^ SCR1, open-source RISC-V core. 20181211

(49)^ RISC-V workshop proceedings (20161211). 20181211

(50)^ "Re: [isa-dev] RISC V ISA for embedded systems" (Mailing list). 20161110

(51)^ C-DAC announces Tech Conclave 2019. The Times of India. 2019412

(52)^ NOEL-V Processor. Cobham Gaisler. 2020114

(53)^ Esperanto exits stealth mode, aims at AI with a 4,096 core 7nm RISC-V monster. wikichip.org (20181). 201812

(54)^ PULPino GitHub project. GitHub. 201822

(55)^ Accelerator Stream. European Processor Initiative (EPI). 2020222

(56)^ Redmond (2019820). How the European Processor Initiative is Leveraging RISC-V for the Future of Supercomputing. RISC-V International News. RISC-V International. 202049

(57)^ Xie, Joe (July 2016). NVIDIA RISC V Evaluation Story. 4th RISC-V Workshop. Youtube.

(58)^ Andrei Frumusanu (20191030). SiFive Announces First RISC-V OoO CPU Core: The U8-Series Processor IP. Anandtech. 20191114

(59)^ 

(60)^ Asanović. rocket-chip. GitHub. RISC-V International. 20161111

(61)^ Celio. riscv-boom. GitHub. Regents of the University of California. 2020329

(62)^ 

(63)^ Celio. ucb-bar/riscv-sodor. github. Regents of the University of California. 20191025

(64)^ Wolf. picorv32. GitHub. 2020227

(65)^ scr1. GitHub. Syntacore. 2020113

(66)^ Traber. PULP: Parallel Ultra Low Power. ETH Zurich, University of Bologna. 201685

(67)^ Maruyama, Munetomo (2023-05-11), mmRISC-1 : RISC-V RV32IMAFC Core for MCU, https://github.com/munetomo-maruyama/mmRISC-1 2023628 

(68)^ Almatary, Hesham. RISC-V, seL4. seL4 Documentation. Commonwealth Scientific and Industrial Research Organisation (CSIRO). 2018713

(69)^ Almatary, Hesham. heshamelmatary. GitHub. 2018713

(70)^ [JavaScript ANGEL is a Javascript RISC-V ISA (RV64) Simulator that runs riscv-linux with BusyBox.]. RISCV.org. 2019117

(71)^ Waterman, Andrew. Draft Privileged ISA Specification 1.9. RISC-V. RISC-V Foundation. 2016830

(72)^ "FreeBSD Wiki: RISC-V".

(73)^ "FreeBSD Foundation: Initial FreeBSD RISC-V Architecture Port Committed".

(74)^ Montezelo, Manuel. Debian GNU/Linux port for RISC-V 64. Google Groups. Google. 2018719

(75)^ Architectures/RISC-V. Fedora Wiki. Red Hat. 2016926

(76)^ Begari, Padmarao. U-Boot port on RISC-V 32-bit is available. Google Groups. Microsemi. 2017215

公開資料、解説書

編集
  • RISC-V Publications
  • David Patterson & John Hennessy: "Computer Organization and Design (RISC-V Edition)", Morgan Kaufmann, ISBN 978-0128122754 (Apr. 27th, 2017).
  • David Patterson & Andrew Waterman: "RISC-V reader: an open architecture atlas", Strawberry Canyon, ISBN 978-0-9992491-1-6 (Sep. 10th, 2017).
  • John Hennessy & David Patterson: "Computer Architecture (6th Edition)", Morgan Kaufmann, ISBN 978-0128119051 (Dec, 7th, 2017).
  • デイビッド・パターソン、アンドリュー・ウォーターマン、成田 光彰 (訳):「RISC-V原典 オープンアーキテクチャのススメ」、日経BP社、ISBN 978-4822292812(2018年10月18日)。

関連項目

編集

外部リンク

編集