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
680
3
Share
ArkEdge LT #1 dalance
dalance
June 08, 2023
More Decks by dalance
See All by dalance
RTL talk #18 dalance
dalance
0
400
OSS Silicon EDA #1
dalance
0
260
Make CPU #3 dalance
dalance
1
860
RTL talk #17 dalance
dalance
0
840
Shinjuku.rs #8 dalance
dalance
2
850
RTL talk #16 dalance
dalance
1
1.1k
Rust LT #3 dalance
dalance
1
1k
Other Decks in Programming
See All in Programming
AI 時代のソフトウェア設計の学び方
masuda220
PRO
18
7.2k
運用エージェントは "作る" から "育てる" へ - 記憶と自己進化の3層設計パターン / self-evolving-agents-three-layer-agent-design
gawa
11
2.5k
Skillは並べた。動かなかった。契約で繋いだ。— 65個のSkillから、自走する開発サイクルへ
junholee
0
730
Transactional Change Stream Processing With Debezium and Apache Flink
gunnarmorling
1
130
OCRを使ってゲームのアイテムをデータ化する
kishikawakatsumi
0
110
過去のレビュー知見をSkillsで資産化した話
pkshadeck
PRO
1
2.3k
バックエンドにElysiaJSを採用して気付いた、良い点・悪い点
wanko_it
1
170
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
6
1.5k
Swiftのレキシカルスコープ管理
kntkymt
0
190
開発とはなにか、Essenceカーネルで見えるもの
ukin0k0
0
210
新規プロダクトを高速で生み出すハーネスエンジニアリング
seanchas116
3
270
Agentic UI beyond Chats Architecture Patterns & Open Standards @ngMunich 05/2026
manfredsteyer
PRO
0
140
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
77
5.3k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
1
98
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
How Software Deployment tools have changed in the past 20 years
geshan
0
34k
Building Applications with DynamoDB
mza
96
7k
A Modern Web Designer's Workflow
chriscoyier
698
190k
Evolving SEO for Evolving Search Engines
ryanjones
0
200
Thoughts on Productivity
jonyablonski
76
5.2k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
380
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
700
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に移行