スポンサーリンク

CPUを1から自分で作る! vol.1 企画概要

CPU自作
スポンサーリンク

どうも,ておておです!

今回から「CPUを1から自分で作る!」というシリーズ企画を始動させたいと思います!

今回の記事はこの企画の第1回の記事となります.

スポンサーリンク

企画概要

この企画はその名の通りCPUを自分で1から作ろうという企画になります.

渡波郁様が執筆された「CPUの創りかた」という本で説明されている「TD4」1というCPUを参考にして設計していこうと思います.

部品は普通の電子部品屋で買えるような部品(抵抗器・コンデンサー・汎用ロジックICなど)を使用します.

どんなCPUを作るの?

CPUとして動作するために必要な回路を次の4つに大きく分けて作成していきます.

  • クロックジェネレータ
  • リセット回路
  • 不揮発性メモリ(ROM)
  • CPU本体部(レジスタ[汎用・フラグ]・ALU・プログラムカウンタ・命令デコーダ・IOポート等)

それぞれの回路について軽く説明します.

クロックジェネレーター

クロックジェネレーターとは一定の間隔でHIGHとLOWの電圧を出力する回路です.CPU内のほぼすべての回路はクロックジェネレーターで生成された一定周期の電圧にタイミングを合わせて動作します.

今回はコンデンサーとシュミットトリガインバータを用いた発信回路をクロックジェネレーターとして使用します.

クロック周波数は1Hz・10Hz・手動の3つの中から選ぶことが出来るようにします.

リセット回路

その名の通り,リセットするために使用する回路です.初期状態に戻したいときに使用します.

少し詳しく解説すると,リセット回路を作動させると,汎用レジスタ・プログラムカウンタの値が0になります.

今回はタクトスイッチを押すことでリセットされるような回路にします.

タクトスイッチ

不揮発性メモリ(ROM)

ROMは実行したいプログラムを保存しておくためのメモリーです.

DIPスイッチを使用し,そのスイッチのON/OFFで0か1かを表現します.

DIPスイッチ

8bit長の命令を16ステップ,合計で16byteの情報を記憶することが出来るようにします.

CPU本体部

CPU本体部はROMに保存されているプログラムを実行する回路です.

作成するCPUは4bitのCPUなので,演算やデータ移動は4bit単位で行われます.

また,ALUでの演算は4bitの加算のみ可能です.

参考文献

先ほど述べた通り,この企画で参考にさせていただく書籍は渡辺郁様が執筆された「CPUの創りかた」という本です.

この本では「TD4」というCPUを設計することを通じてCPUがどのような仕組みで動いているのかを解説している本です.

この本については,以下の記事でも紹介しているので,ぜひそちらの記事もご覧ください!

最後に

今回は「CPUを1から自分で作る!」シリーズの第1回目ということで,作成するCPUの大まかな概要を説明しました.

次回から,実際に作成する様子を記事にしていきたいと思います!

お楽しみに!

脚注

  1. 「とりあえず動作するだけの4bitCPU」の略らしいです.面白い名前ですね笑

コメント

タイトルとURLをコピーしました