Upgrade to Pro — share decks privately, control downloads, hide ads and more …

簡単な4bitCPUの作成

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on.
Avatar for mikiken mikiken
December 12, 2023

 簡単な4bitCPUの作成

Avatar for mikiken

mikiken

December 12, 2023

More Decks by mikiken

Other Decks in Programming

Transcript

  1. 「CPUの創りかた」―マイナビ出版 (2003) • 汎用ロジックICを用い、簡単な4bit CPU「TD4」†1を作る • アナログ回路の基礎から、丁寧に解説されている • 30刷以上重版 (技術書としては異例)

    †1 “とりあえず動作するだけの 4bitCPU” の略 3 https://www.google.co.jp/books/edition/CPU%E3%81%AE% E5%89%B5%E3%82%8A%E3%81%8B%E3%81%9F/2UbaDwA AQBAJ?hl=ja&gbpv=1&printsec=frontcover
  2. TD4の仕様 • • • • • • • • •

    • • • 5 • 命令長8bit • オペコード4bit, オペランド4bit • 表現できるアドレスの大きさも4bit = プログラムは16 Stepまで • 演算用レジスタは2つ
  3. どのような手順で作ったか • 基本的には本の記述に従って実装 • 具体的には • レジスタ → ALU†2 →

    プログラムカウンタ → 命令デコーダ → ROM の順 • ROMは実装方針に迷ったので後回しに †2 Arithmetic Logic Unit (算術論理演算装置). 大層な名前がついているが、今回のCPUの場合、ただの4bitの全加算器 6
  4. 8

  5. ROM (メモリ) クロック生成 ← プログラムカウンタ ALU (4bit FA) 命令デコーダ レジスタ

    データセレクタ 9 Aレジスタ → Bレジスタ → キャリーフラグ
  6. ROMの実現方法 • 書籍では、8bit DIP SW✕16個 でROMを表現 • 評価ボードのDIPスイッチが 足りない •

    Verilogで、各アドレスに対し 機械語命令を返す論理素子を 記述することでROMを表現 11