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
570
思いたちから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
AWS Summit Japan 2025 Community Stage - App workflow automation by AWS Step Functions
matsuihidetoshi
1
150
プロダクトエンジニアリング組織への歩み、その現在地 / Our journey to becoming a product engineering organization
hiro_torii
0
110
キャディでのApache Iceberg, Trino採用事例 -Apache Iceberg and Trino Usecase in CADDi--
caddi_eng
0
170
解析の定理証明実践@Lean 4
dec9ue
0
110
あなたの声を届けよう! 女性エンジニア登壇の意義とアウトプット実践ガイド #wttjp / Call for Your Voice
kondoyuko
1
180
ObsidianをMCP連携させてみる
ttnyt8701
2
140
A2Aのクライアントを自作する
rynsuke
1
150
AIエージェントの継続的改善のためオブザーバビリティ
pharma_x_tech
6
1.4k
本部長の代わりに提案書レビュー! KDDI営業が毎日使うAIエージェント「A-BOSS」開発秘話
minorun365
PRO
14
2.3k
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
180
rubygem開発で鍛える設計力
joker1007
1
130
Agentic Workflowという選択肢を考える
tkikuchi1002
1
400
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
134
9.3k
Done Done
chrislema
184
16k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
Being A Developer After 40
akosma
90
590k
Stop Working from a Prison Cell
hatefulcrawdad
270
20k
Designing for Performance
lara
609
69k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
20k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Making Projects Easy
brettharned
116
6.3k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
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がかっこいい
課題 • やろうと思っているけど手を付けられない • 途中で諦めそう • 本読むだけで良くない?
実際に製作してよかったこと • 本を読んで疑問に思わなかったことに着目できる • テンションが上がる
デメリット • 費用がかさむ
実際に製作してよかったこと • 本を読んで疑問に思わなかったことに着目できる • テンションが上がる
ポイント • 最初の一歩で大胆な行動 • 完成にこだわる • 「分からなかったらやってみる」ハードウェアでも有効