Slide 1

Slide 1 text

思い立ちからCPUを完成させるには
 2020-10-25 OSC2020 Online/Aizu


Slide 2

Slide 2 text

だれ?
 吉川 祥大 @anoriqq
 2020.10- Cluster, Inc. でインターン
 低レイヤ/セキュリティ専門外
 最近Apex始めた


Slide 3

Slide 3 text

ポイント
 ● 最初の一歩で大胆な行動
 ● 完成にこだわる
 ● 「分からなかったらやってみる」ハードウェアでも有効


Slide 4

Slide 4 text

CPUつくるか~


Slide 5

Slide 5 text

どうしてそうなった 『珠玉のプログラミング』の課題をCで解いていたとき、いまいちメモリ操作のイメージが つかめてなくて辛かった。ソフトウェアを書く人がコンピュータのやっていることを理解し ていたほうが良いソフトウェアが書けるのではないかと考えた。C言語にはメモリはどん なふうに見えているのか。そもそもコンピュータの上でプログラミング言語はどうやって動 いているんや。OSの勉強すればいいのか。それとも自作言語に足を踏み入れるのか。 そういえば低レイヤのこと全然しらないな。何もわかないときは先人の知恵を借りよう。 なになに。コンピューターサイエンスの勉強には色々な教材があるんだな。お、体験談 が上がってるぞ。!!!!!CPUってつくれるのか!!!めっちゃ光っててかっこいい ぞっ!そしてちょっと古いけど良さそうな本も売ってるぞ!そうだ、CPUをつくろう。

Slide 6

Slide 6 text

CPUつくるか~


Slide 7

Slide 7 text

どうしてそうなった 『珠玉のプログラミング』の課題をCで解いていたとき、いまいちメモリ操作のイメージが つかめてなくて辛かった。ソフトウェアを書く人がコンピュータのやっていることを理解し ていたほうが良いソフトウェアが書けるのではないかと考えた。C言語にはメモリはどん なふうに見えているのか。そもそもコンピュータの上でプログラミング言語はどうやって動 いているんや。OSの勉強すればいいのか。それとも自作言語に足を踏み入れるのか。 そういえば低レイヤのこと全然しらないな。何もわかないときは先人の知恵を借りよう。 なになに。コンピューターサイエンスの勉強には色々な教材があるんだな。お、体験談 が上がってるぞ。!!!!!CPUってつくれるのか!!!めっちゃ光っててかっこいい ぞっ!そしてちょっと古いけど良さそうな本も売ってるぞ!そうだ、CPUをつくろう。

Slide 8

Slide 8 text

課題
 ● やろうと思っているけど手を付けられない
 ● 途中で諦めそう
 ● 本読むだけで良くない?
 


Slide 9

Slide 9 text

思い立ったらやること


Slide 10

Slide 10 text

思い立ったらやること
 ● 『CPUの創りかた』を買う
 ● 材料のリストを作る
 ● 材料を買う
 → CPUが出来上がる


Slide 11

Slide 11 text

思い立ったらやること ためらわないことが大切
 間違えても大丈夫!


Slide 12

Slide 12 text

作業
 1. 書籍を通読
 2. 必要なものを揃える
 3. 回路図をもとに実装
 4. 動作確認と修正
 5. CPUを眺めて満足感に浸る


Slide 13

Slide 13 text

作業の反省点
 ● パーツを作業途中で再調達した
 ● 回路設計ソフト作業の保存頻度


Slide 14

Slide 14 text

課題
 ● やろうと思っているけど手を付けられない
 ● 途中で諦めそう
 ● 本読むだけで良くない?
 


Slide 15

Slide 15 text

CPUをつくるモチベーション ● 目的は人それぞれ ● 「CPUつくったことある」って言いたい ● ICがかっこいい

Slide 16

Slide 16 text

課題
 ● やろうと思っているけど手を付けられない
 ● 途中で諦めそう
 ● 本読むだけで良くない?
 


Slide 17

Slide 17 text

実際に製作してよかったこと ● 本を読んで疑問に思わなかったことに着目できる ● テンションが上がる

Slide 18

Slide 18 text

デメリット ● 費用がかさむ

Slide 19

Slide 19 text

実際に製作してよかったこと ● 本を読んで疑問に思わなかったことに着目できる ● テンションが上がる

Slide 20

Slide 20 text

ポイント
 ● 最初の一歩で大胆な行動
 ● 完成にこだわる
 ● 「分からなかったらやってみる」ハードウェアでも有効