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
思いたちからCPUを完成させるには
Search
Shota Yoshikawa
October 25, 2020
Technology
0
590
思いたちからCPUを完成させるには
OSC2020 Online/Aizu 低レイヤ・OS・セキュリテイ LT大会
https://ospn.connpass.com/event/186393/
Shota Yoshikawa
October 25, 2020
Tweet
Share
Other Decks in Technology
See All in Technology
マウントとるやつ、リリースするやつ
otsuki
1
120
Black Hat USA 2025 Recap ~ クラウドセキュリティ編 ~
kyohmizu
0
520
CDKの魔法を少し解いてみる ― synth・build・diffで覗くIaCの裏側 ―
takahumi27
1
120
QAセントラル組織が運営する自動テストプラットフォームの課題と現状
lycorptech_jp
PRO
0
350
Flutterコントリビューションのススメ
d_r_1009
1
340
探求の技術
azukiazusa1
5
1.1k
[mercari GEARS 2025] Keynote
mercari
PRO
0
160
[JDDStudy #10] 社内Agent勉強会の取り組み紹介
yp_genzitsu
1
130
Amazon ECS デプロイツール ecspresso の開発を支える「正しい抽象化」の探求 / YAPC::Fukuoka 2025
fujiwara3
9
1.6k
Flutterで実装する実践的な攻撃対策とセキュリティ向上
fujikinaga
1
320
これからアウトプットする人たちへ - アウトプットを支える技術 / that support output
soudai
PRO
16
5.2k
コード1ミリもわからないけど Claude CodeでFigjamプラグインを作った話
abokadotyann
1
160
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
33
1.8k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Unsuck your backbone
ammeep
671
58k
Producing Creativity
orderedlist
PRO
348
40k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
24
1.5k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
11
920
GitHub's CSS Performance
jonrohan
1032
470k
The Pragmatic Product Professional
lauravandoore
36
7k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
Raft: Consensus for Rubyists
vanstee
140
7.2k
BBQ
matthewcrist
89
9.9k
Fireside Chat
paigeccino
41
3.7k
Transcript
思い立ちからCPUを完成させるには 2020-10-25 OSC2020 Online/Aizu
だれ? 吉川 祥大 @anoriqq 2020.10- Cluster, Inc. でインターン 低レイヤ/セキュリティ専門外 最近Apex始めた
ポイント • 最初の一歩で大胆な行動 • 完成にこだわる • 「分からなかったらやってみる」ハードウェアでも有効
CPUつくるか~
どうしてそうなった 『珠玉のプログラミング』の課題をCで解いていたとき、いまいちメモリ操作のイメージが つかめてなくて辛かった。ソフトウェアを書く人がコンピュータのやっていることを理解し ていたほうが良いソフトウェアが書けるのではないかと考えた。C言語にはメモリはどん なふうに見えているのか。そもそもコンピュータの上でプログラミング言語はどうやって動 いているんや。OSの勉強すればいいのか。それとも自作言語に足を踏み入れるのか。 そういえば低レイヤのこと全然しらないな。何もわかないときは先人の知恵を借りよう。 なになに。コンピューターサイエンスの勉強には色々な教材があるんだな。お、体験談 が上がってるぞ。!!!!!CPUってつくれるのか!!!めっちゃ光っててかっこいい ぞっ!そしてちょっと古いけど良さそうな本も売ってるぞ!そうだ、CPUをつくろう。
CPUつくるか~
どうしてそうなった 『珠玉のプログラミング』の課題をCで解いていたとき、いまいちメモリ操作のイメージが つかめてなくて辛かった。ソフトウェアを書く人がコンピュータのやっていることを理解し ていたほうが良いソフトウェアが書けるのではないかと考えた。C言語にはメモリはどん なふうに見えているのか。そもそもコンピュータの上でプログラミング言語はどうやって動 いているんや。OSの勉強すればいいのか。それとも自作言語に足を踏み入れるのか。 そういえば低レイヤのこと全然しらないな。何もわかないときは先人の知恵を借りよう。 なになに。コンピューターサイエンスの勉強には色々な教材があるんだな。お、体験談 が上がってるぞ。!!!!!CPUってつくれるのか!!!めっちゃ光っててかっこいい ぞっ!そしてちょっと古いけど良さそうな本も売ってるぞ!そうだ、CPUをつくろう。
課題 • やろうと思っているけど手を付けられない • 途中で諦めそう • 本読むだけで良くない?
思い立ったらやること
思い立ったらやること • 『CPUの創りかた』を買う • 材料のリストを作る • 材料を買う → CPUが出来上がる
思い立ったらやること ためらわないことが大切 間違えても大丈夫!
作業 1. 書籍を通読 2. 必要なものを揃える 3. 回路図をもとに実装 4. 動作確認と修正 5.
CPUを眺めて満足感に浸る
作業の反省点 • パーツを作業途中で再調達した • 回路設計ソフト作業の保存頻度
課題 • やろうと思っているけど手を付けられない • 途中で諦めそう • 本読むだけで良くない?
CPUをつくるモチベーション • 目的は人それぞれ • 「CPUつくったことある」って言いたい • ICがかっこいい
課題 • やろうと思っているけど手を付けられない • 途中で諦めそう • 本読むだけで良くない?
実際に製作してよかったこと • 本を読んで疑問に思わなかったことに着目できる • テンションが上がる
デメリット • 費用がかさむ
実際に製作してよかったこと • 本を読んで疑問に思わなかったことに着目できる • テンションが上がる
ポイント • 最初の一歩で大胆な行動 • 完成にこだわる • 「分からなかったらやってみる」ハードウェアでも有効