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
ArkEdge LT #1 dalance
Search
dalance
June 08, 2023
Programming
3
660
ArkEdge LT #1 dalance
dalance
June 08, 2023
Tweet
Share
More Decks by dalance
See All by dalance
RTL talk #18 dalance
dalance
0
320
OSS Silicon EDA #1
dalance
0
230
Make CPU #3 dalance
dalance
1
790
RTL talk #17 dalance
dalance
0
780
Shinjuku.rs #8 dalance
dalance
2
800
RTL talk #16 dalance
dalance
1
1k
Rust LT #3 dalance
dalance
1
970
Other Decks in Programming
See All in Programming
社内オペレーション改善のためのTypeScript / TSKaigi Hokuriku 2025
dachi023
1
130
Reactive Thinking with Signals and the new Resource API
manfredsteyer
PRO
0
120
AI 時代だからこそ抑えたい「価値のある」PHP ユニットテストを書く技術 #phpconfuk / phpcon-fukuoka-2025
shogogg
1
580
『実践MLOps』から学ぶ DevOps for ML
nsakki55
2
470
Agentに至る道 〜なぜLLMは自動でコードを書けるようになったのか〜
mackee
5
2k
Flutterアプリ運用の現場で役立った監視Tips 5選
ostk0069
1
510
OSS開発者の憂鬱
yusukebe
12
6k
開発生産性が組織文化になるまでの軌跡
tonegawa07
0
190
無秩序からの脱却 / Emergence from chaos
nrslib
1
8.3k
GraalVM Native Image トラブルシューティング機能の最新状況(2025年版)
ntt_dsol_java
0
170
JJUG CCC 2025 Fall: Virtual Thread Deep Dive
ternbusty
3
480
スタートアップを支える技術戦略と組織づくり
pospome
8
11k
Featured
See All Featured
Designing for Performance
lara
610
69k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Writing Fast Ruby
sferik
630
62k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.6k
Fireside Chat
paigeccino
41
3.7k
A Tale of Four Properties
chriscoyier
162
23k
Balancing Empowerment & Direction
lara
5
760
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
1
46
Navigating Team Friction
lara
190
16k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
680
Transcript
RustでLSI開発 PEZY Computing 初田 直也
自己紹介 名前:初田 直也 dalance @ GitHub 所属:PEZY
Computing スーパーコンピュータ向けのプロセッサLSIの設計 LSI設計のサポートにRustを使っている
Rustの使いどころ SystemVerilog周りのツール SystemVerilog:ハードウェア記述言語の1つ ツールサポートが弱い → 自作するしかない
プロセッサの命令セット周りの自動化ツール 独自プロセッサなのでコンパイラからドキュメントまで自作する必要あり ハードウェアの検証サポート
SystemVerilog周りのツール sv-parser/svlint/svls RustでSystemVerilogのパーサを作成 作成したパーサを使ってlinterとlanguage serverを作成 社内リポジトリでのCIチェックなどで使用中
OSSとしてGitHubで公開 https://github.com/dalance/sv-parser https://github.com/dalance/svlint https://github.com/dalance/svls Veryl SystemVerilogを改善するために新しい言語を作る試み 次のプロジェクトで実戦投入したい https://github.com/dalance/veryl
命令セット周りのツール scx_isa TOMLで命令セットを定義して、いろいろなものを自動生成するツール 生成できるもの 命令をデコードするSystemVerilogのソースコード
命令をデコードするRustのソースコード RestructuredText形式のドキュメント scx_random ↑のTOMLを読み込んで、ランダム検証用のアセンブリを生成するツール 2021年に夏季インターン(2名 x 2か月)で作ってもらった
検証サポート 命令セットシミュレータ プロセッサの挙動をソフトで書いて、SystemVerilog記述との一致を確認する ハードウェア設計中にソフトウェアエンジニアがプロセッサの挙動を確認する scx_forest_rs
メニーコアプロセッサ(~4096コア)の挙動をマルチスレッドで高速に実行する 昔はC++実装だったがマルチスレッドがなかなか安定しなかったのでRustに移行