Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
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
400
LiteXとオレオレCPUで作る自作SoC奮闘記
msyksphinz
0
1.9k
ハイパフォーマンスCPUの作り方_アーカイブ用.pdf
msyksphinz
0
67
作って学ぶ コンピュータアーキテクチャ 出版にあたっての経験談
msyksphinz
1
1.8k
次世代を担うオープン命令セットアーキテクチャRISC-Vの最新動向
msyksphinz
3
5.6k
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.7k
Other Decks in Technology
See All in Technology
小さく始める AI 活用推進 ― 日経電子版 Web チームの事例/nikkei-tech-talk47
nikkei_engineer_recruiting
0
310
現地で盛り上がった WWDC26 Keynote
zozotech
PRO
1
270
2026 TECHFRESH 畢業分享會 - AI-Native 重塑軟體工程與虛擬講師
line_developers_tw
PRO
0
1.3k
サイバーエージェントにおけるAI推進戦略と変革への取り組み
shotatsuge
0
220
マルチアカウント環境での コーディングエージェントを使った障害調査が大変なので AIエージェントにReadOnly権限を付与してみた / ReadOnly AI Agents for Multi-Account AWS Incident Response
yamaguchitk333
2
110
不要なレビューをAIにまかせて AIコーディングの環境改善を加速した
shoota
1
230
AIのReact習熟度を測る
uhyo
2
660
2026 TECHFRESH 畢業分享會 - 開發日常大解密!從領域驅動到企業級上線
line_developers_tw
PRO
0
1.3k
When Platform Engineering Meets GenAI
sucitw
0
130
【セミナー資料】Claude Code をセキュアに使うための考え方と設定の勘どころ / Claude Code Webinar 20260616
masahirokawahara
2
420
10年間のブログ発信を振り返って見えたWebアプリケーションエンジニアとしての軌跡
stefafafan
0
170
スタートアップにAmazon EKSは早すぎる? マルチプロダクト戦略を加速する Platform Engineeringの実践 / Is Amazon EKS Too Soon for Startups? Practical Platform Engineering to Accelerate a Multi-Product Strategy
elmodev09
1
500
Featured
See All Featured
Everyday Curiosity
cassininazir
0
230
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
360
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
530
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Chasing Engaging Ingredients in Design
codingconduct
0
220
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
850
Code Review Best Practice
trishagee
74
20k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.4k
Optimising Largest Contentful Paint
csswizardry
37
3.7k
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はもっと面白くなります