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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
dalance
June 08, 2023
Programming
670
3
Share
ArkEdge LT #1 dalance
dalance
June 08, 2023
More Decks by dalance
See All by dalance
RTL talk #18 dalance
dalance
0
390
OSS Silicon EDA #1
dalance
0
250
Make CPU #3 dalance
dalance
1
840
RTL talk #17 dalance
dalance
0
820
Shinjuku.rs #8 dalance
dalance
2
840
RTL talk #16 dalance
dalance
1
1.1k
Rust LT #3 dalance
dalance
1
1k
Other Decks in Programming
See All in Programming
ローカルで稼働するAI エージェントを超えて / beyond-local-ai-agents
gawa
3
270
Linux Kernelの1文字のミスで 権限昇格ができた話
rqda
0
2.3k
夢の無限スパゲッティ製造機 -実装篇- #phpstudy
o0h
PRO
0
200
煩雑なSkills管理をSoC(関心の分離)により解決する――関心を分離し、プロンプトを部品として育てるためのOSSを作った話 / Solving Complex Skills Management Through SoC (Separation of Concerns)
nrslib
4
850
Swift Concurrency Type System
inamiy
0
440
年間50登壇、単著出版、雑誌寄稿、Podcast出演、YouTube、CM、カンファレンス主催……全部やってみたので面白さ等を比較してみよう / I’ve tried them all, so let’s compare how interesting they are.
nrslib
4
770
今こそ押さえておきたい アマゾンウェブサービス(AWS)の データベースの基礎 おもクラ #6版
satoshi256kbyte
1
240
一度始めたらやめられない開発効率向上術 / Findy あなたのdotfilesを教えて!
k0kubun
4
2.9k
Laravel Nightwatchの裏側 - Laravel公式Observabilityツールを支える設計と実装
avosalmon
1
330
Rethinking API Platform Filters
vinceamstoutz
0
11k
How Swift's Type System Guides AI Agents
koher
0
210
Radical Imagining - LIFT 2025-2027 Policy Agenda
lift1998
0
250
Featured
See All Featured
Amusing Abliteration
ianozsvald
1
150
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.3k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
290
Building an army of robots
kneath
306
46k
Building the Perfect Custom Keyboard
takai
2
730
Mind Mapping
helmedeiros
PRO
1
150
KATA
mclloyd
PRO
35
15k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
Marketing to machines
jonoalderson
1
5.2k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
64
54k
Why Our Code Smells
bkeepers
PRO
340
58k
Thoughts on Productivity
jonyablonski
76
5.1k
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に移行