CPU創ってみた
タイトルでお察しかと思いますが、名著「CPUの創りかた」の4bitCPUである「TD4」を実際に創ってみたという記事になります。
n番煎じどころではないのですが、一応記録としてブログにも残しておこうと思います。(ツイート貼っただけですが)
今更ながらCPU創るよ
— rpy (@rpyjp) 2019年11月4日
ユニバーサル基板で組み立てる根性はないので、技術書典にて @dip_factory 様のプリント基板を購入させて頂きました🙇 #TD4 pic.twitter.com/UVOspMrwoW
まずはクロック&リセット回路
— rpy (@rpyjp) 2019年11月4日
丁度1Hzくらい出てていい感じ pic.twitter.com/nd6SrbwW4o
続いてプログラムカウンタ、と思ったら早速問題発生
— rpy (@rpyjp) 2019年11月4日
手動クロックだと上手くいくのに自動クロックでは正しくカウントされない
原因が分からん... pic.twitter.com/CmpBNWU8IQ
R12の値を大きくすることで一時的に解決した
— rpy (@rpyjp) 2019年11月4日
E12系列だと470Ω以上にすればちゃんと動くっぽい(?) pic.twitter.com/E4u1MLAOWf
気を取り直してデコーダとROM横のLEDを実装
— rpy (@rpyjp) 2019年11月4日
カメラが小刻みに震えてるのは作るのに夢中で昼飯食べ忘れたから pic.twitter.com/YtKEySoXVY
2step分のROMとインバータ付けた!
— rpy (@rpyjp) 2019年11月4日
ちゃんとROMの内容読めてるぽい pic.twitter.com/ngYrpwaLpF
命令デコーダを実装した
— rpy (@rpyjp) 2019年11月5日
一通り命令を入力して正しくデコード出来ていることを確認 pic.twitter.com/eHvKls2BfD
レジスタA, Bを取り付けてIN A, IN B命令の動作を確認
— rpy (@rpyjp) 2019年11月5日
LEDも増えてきてそれっぽくなってきた(?) pic.twitter.com/E16X35UK1H
ALUが付いてJNC以外の全ての命令を実行出来るようになった
— rpy (@rpyjp) 2019年11月6日
カラフルなLEDとDIPのICにロマンを感じる pic.twitter.com/7SdxQSlHnX
出力となるLEDも付けたので残すは最後の砦であるROMの実装のみ
— rpy (@rpyjp) 2019年11月6日
長引きそうなので今日はここまで pic.twitter.com/5sARTWrWd6
自作CPUついに完成!🎉
— rpy (@rpyjp) 2019年11月7日
最後は計128個のダイオードと16個のdipスイッチをひたすら取り付ける作業でなかなか苦労した
動画はさっそくラーメンタイマーのプログラムを実行してる様子
人生で一番美味しいカップ麺になるだろう#TD4 pic.twitter.com/tQLX45OoeX