Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
RISC-Vエコシステムを 構成する技術と立役者たち
Search
msyksphinz
October 18, 2018
Technology
4k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
RISC-Vエコシステムを 構成する技術と立役者たち
msyksphinz
October 18, 2018
More Decks by msyksphinz
See All by msyksphinz
オープンソースでどこまでできる?フォーマル検証チャレンジ
msyksphinz
0
460
LiteXとオレオレCPUで作る自作SoC奮闘記
msyksphinz
0
2.1k
ハイパフォーマンスCPUの作り方_アーカイブ用.pdf
msyksphinz
0
89
作って学ぶ コンピュータアーキテクチャ 出版にあたっての経験談
msyksphinz
1
1.8k
次世代を担うオープン命令セットアーキテクチャRISC-Vの最新動向
msyksphinz
3
5.7k
Rustで作るフルスクラッチQEMU型エミュレータ
msyksphinz
8
4.9k
ハードウェア記述言語Chiselを もっと活用するためのDiplomacy概説
msyksphinz
1
1.9k
ますます注目される オープンCPUアーキテクチャ RISC-Vの最新動向
msyksphinz
2
2.9k
オープンソースCPUアーキテクチャ 「RISC-V」を中心に変わる半導体の世界
msyksphinz
1
2.8k
Other Decks in Technology
See All in Technology
深夜のクラウド懺悔室 1:29:300 or 1:0:0
kazzpapa3
1
230
Reactの設計論
uhyo
14
7.7k
AI時代のAPI品質を支えるガードレール / API Guardrails for API quality in the AI era
yokawasa
1
210
Tab5をRubyで動くパソコンにする
kishima
2
300
#jawssonic2026 あの時代が悪かった ~動かなかったSageMakerと共に迎えたイベント当日~
ktkn1129
0
140
クロスボーダーM&AのValue Upを支えるプロダクト開発。日米チームのハブになったプロダクトエンジニアの実践 / Product Engineering Conference 2026
genda
0
110
The Agent Builder Loop from Daily Work to OSS
minorun365
PRO
3
120
10分で知る最近のOmarchy
komagata
0
240
Deploying a Full-Stack Bun-Native Framework on Cloudflare Workers
7nohe
0
130
Sigmaユーザーのための有用リソース一挙公開 & Sigmaで使えるMCP #sigma_ucj /useful-resources-for-sigma-computing-users-and-mcps-with-sigma
shinyaa31
0
180
幾何アルゴリズムで なめらかなピン操作を / iOSDC Japan 2026 / smoothpin
kazumanagano
0
250
AI時代だからこそ、スケールしないことをやろう
yutashigemura
1
130
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
730
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.9k
The Language of Interfaces
destraynor
162
27k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Designing Powerful Visuals for Engaging Learning
tmiket
1
540
AI: The stuff that nobody shows you
jnunemaker
PRO
9
980
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
590
Transcript
RISC-Vエコシステムを 構成する技術と立役者たち Introduction of Technologies and People Supporting RISC-V Ecosystem
RISC-V Day Tokyo 2018 Thursday, 18 October 2018 09:40 - 09:55 FPGA開発日記 著者 @msyksphinz_dev http://msyksphinz.hatenablog.com
RISC-Vを支えるオープンソース それを支える技術の紹介 • RISC-Vは、さまざまな人々により支えられている • ソフトウェアエコシステム • ハードウェアエコシステム • RISC-Vを支えているコミュニティ、ツール、エコシステム
について紹介
RISC-Vをはじめとした Open-Hardwareの目指すところ • ハードウェア設計・CPUアーキテクチャをオープンに 議論できる環境を構築する • 例: Meltdown / Spectre
• 例: Memory Consistency Model of RISC-V • RISC-Vのメモリコンシステンシモデルのバグを大学が発見 • 2018年はハードウェアを含め、セキュリティ界隈の話が多い • RISC-Vをベースにオープンなセキュリティプラットフォームの 構築を目指すKeystone 多くの人が開発に参加できるように 多くの人が議論に参加できるように ハードウェア開発の参入障壁が下がる ハードウェア開発に関わる人が増える ハードウェア開発者のすそ野が広がる
RISC-Vのオープンソースハードウェアは 半導体業界にとってチャンス • CPUは強者による2強の時代に(x86, Arm) • しかしライセンス費は馬鹿にならず、最先端プロセスは巨大企業しか追従できない • IP, EDA,
ウェハ製造費, パッケージ費 … • より多くの選択肢が登場することは良いこと。 • 自社の中核になる技術に注力したい。それ以外の部分(SoCや制御CPUなど)にはあまり時間をかけ たくない • 自社独自コアを持っているが、メンテナンスに手が回らない場合 • ソフトウェアエコシステムを含めてRISC-Vを導入することによりコストを削減する • 独自開発したことによる特許の問題が心配な場合 • CPUというSoCの中心部の、実装コストを最小化させる • CPU以外にもチップ内で注力したい部分はたくさんあるはず。 • だったら、CPUはアリモノで早く作って「本当に価値のあるところ」に注力したい
“RISC-V 命令セットアーキテクチャ”を支えるエコシステム RISC-V Foundation Working Group GCC Binutils LLVM Linux
QEMU ISS BOOM Rocket- Chip Freedom SoC HiFive1 HiFive Unleashed ボード・ プラットフォーム SIMD拡張 Privileged Spec セキュリティ メモリモデル ソフトウェア ツールチェイン Board of Directorsを中心に、ISAの各分野でWorking Groupが存在している。 … Linux パッケージメンテナ 有志によるOS 移植 Foundation 加入 メンバによるメンテ Foundation 加入 メンバによる開発 Board of Directors RISC-V ISA Manual
RISC-Vを支えるソフトウェアエコシステム ◼各種ツールチェインはほぼ整備完了 ◼ GCC 7.1でRISC-VがMainstreamに取り込まれた ◼ LLVM/ClangのRISC-Vサポートが lowRISCプロジェクトにより進行中 ◼ LinuxカーネルはVersion
4.15に対応済み ◼ 各種LinuxディストリビューションがRISC-Vのサポート進行中 ◼ RedHat / Debian ◼ FreeBSD : RISC-Vのサポート進行中 ◼ QEMU v2.12 よりRISC-V向けビルドをサポート ◼RISC-Vの仕様に準拠しているかを試す コンプライアンステスト ◼これらのテストがPassしていれば、だいたいOK • riscv-tests (https://github.com/riscv/riscv-tests) • riscv-torture (https://github.com/ucb-bar/riscv-torture)
RISC-Vを支えるエンジニアコミュニティ • RISC-Vコミュニティには誰でも参加できる • Google Groups(Mailing List) • 質問すると結構な頻度で返信が来る。 Announcements
Academic Community Software Developers Hardware Developers ISA Developers Debug • Stack Overflow でもRISC-V Tagが作られている。 • SiFive Forum • SiFiveの製品・仕様についての コミュニティ https://stackoverflow.com/questions/tagged/riscv https://forums.sifive.com https://riscv.org/mailing-lists/
RISC-Vを支えるGitHub Repositories • ソフトウェアツールチェイン・ハードウェアツールチェイン ※ https://riscv.org/software-status, https://riscv.org/risc-v-cores/に詳しくまとめられている riscv-tools riscv-openocd riscv-fesvr
riscv-gnu-toolchain riscv-isa-sim riscv-opcodes riscv-tests riscv-pk RISC-Vデバッグ用のOpenOCD実装 シミュレーション用のフロントエンドサーバ コンパイラやライブラリなど 命令セットシミュレータ RISC-Vテストパタン RISC-Vのプロキシカーネル https://github.com/riscv/riscv-tools https://github.com/esperantotech/boom-template https://github.com/ucb-bar/project-template
ハードウェアエコシステム : Rocket-Chip/BOOM ZC706 ZedBoard Rocket-Chip BOOM Freedom-SoC HiFive1 HiFive
Unleashed ASIC 4+1Core RV64 1GHz Arduino RV32 320MHz FPGA AWS
RISC-V Open Ecosystemの凄さ: LinuxがブートするRISC-Vシミュレータを作る • RISC-VのISAをしっかり理解したい • マニュアルを読むだけでは何が何だか分からないことが多い。 RISC-Vシミュレータを 自作する
目標1. コンプライアンステストをPassさせる 目標2. Linuxをブートさせる 使用したRISC-V Linux : Freedom-U-SDKで公開されているLinuxバイナリ buildrootで1つのバイナリにまとめられている。Kernel v4.15 https://github.com/sifive/freedom-u-sdk で公開されており、ビルドできます。 ※ 上記に限らず、RISC-V向けにビルドしたLinuxディストリビューションは各種公開されている。 RedHat, Debian, … 今回はディスクイメージが1つにまとめられているので上記を使用。
RISC-V Open Ecosystemの凄さ: RISC-Vの命令セットシミュレータを作った pk (proxy kernel) RISC-V Instruction Set
Simulator dtb Device Tree Blob Target Program Elf Log Files x86 Host Linux 参考にしたもの ※ pk(proxy kernel) RISC-Vのプログラムを動かすにあたり、システムコールを代わりに処理してくれる仕組み。 printf()やら、ファイルアクセスなどを代行できる (Linuxの起動には使用しません)。 RISC-V ISA Spec Manual RISC-V Privileged Manual riscv-isa-sim 実装!! マニュアル見て意味が分からなかった ら実装を見るのがおすすめ RISC-Vの仕様を、C++の実装で ほぼ忠実に再現してある。 GitHub公開中 : http://github.com/msyksphinz/swimmer_riscv Rocket-Chipを含め、多くの RISC-V実装は最初に Device Tree を読み込む
Linuxをブートしながら学んだRISC-Vのすごいところ ◼ ツールがすべて公開されているので、デバッグが容易 ◼ https://github.com/riscv/riscv-tools を参照のこと ◼ テストセットもすべて公開されている ◼ ISAのテストパタン
riscv-tests / riscv-torture ◼ ~な高速化技法試してみようかな→ 一旦テストセットで全部リグレッションを動かして確認 ◼ RISC-Vの仕様に準拠しているかを試す コンプライアンステスト ◼ これらのテストがPassしていれば、だいたいOK ◼ riscv-tests (https://github.com/riscv/riscv-tests) ◼ riscv-torture (https://github.com/ucb-bar/riscv-torture)
まとめ: RISC-Vコミュニティは誰でも参加できます • オープンソースのデザインでRISC-Vをトライ • お金が無くてもRISC-Vを試行できる • ハードウェア・ソフトウェアのRISC-V対応は着実に 進んでいる。 •
いろんな手段が用意されている • FPGAボードを使う : カスタムデザインでゴリゴリに最適化 • 評価ボードを買う : 簡単にアプリケーション評価可能 • 誰にでもチャンスがあります • RISC-Vを使ってみたいけど~が無い!と思ったら、自分でやってみてください。 GitHubに公開したら、それでコミュニティの仲間入りです。 少しでも興味があれば、自分で積極的に参加することができます 多くの人が参加すれば、RISC-Vはもっと面白くなります