よみもの:CPUのしくみ

出典: 謎の百科事典もどき『エンペディア(Enpedia)』
ナビゲーションに移動 検索に移動
エンペたん看板 Welcome.png よみものページ
この「よみもの」は、N.Kが作成したものです。
他ユーザーの編集も歓迎いたします。

CPUのしくみ。記事とは違った説明をしたいなと思っている。

なんとなくの説明です。厳密な解釈が欲しい方は他を当たってください。

CPUと聞いてパソコンやケータイの部品を思い浮かべたかもしれませんが、ここではマイコンの話をします。

そもそもCPUの定義は?[編集]

曖昧である。

大体の定義:メモリから命令を読み込み、その処理を実行し、必要に応じて外部に出力するハードウェア。

動作の順番[編集]

  1. クロックが立ち上がる。
  2. プログラムカウンタをカウントアップする。
  3. プログラムカウンタを参照し、メモリから該当の命令を読み込む。
  4. データセレクタやACUなどにデコーダから指示が飛ぶ。
  5. 命令に従って処理を実行する。
  6. フラグ[1]などがあればそれも記憶する。
  7. 始めへもどる。

クロック[編集]

それぞれの装置が、タイミングを合わせて動くようにするもの。人間でいう手拍子。

リセット[編集]

強制的に初期状態に戻す信号。本来は起動時にも必要。

メモリ[編集]

そのまま。命令が格納されている。実は、一度に全て読み出せるわけではなく、64bitなら64バイト分しか読み出せない。

命令体系[編集]

オペレーションコード[2]のあとにイミディエイトデータ[3]がつく。

プログラムカウンタ[編集]

今現在何番目の命令を実行しているか記憶する装置。ジャンプ命令の時はこれの数値を書き換える。

余談:CPU自作[編集]

筆者もしたことないので保証はできないが、74シリーズのICがあればマイコン自作も可能である。

実際にそのような本も出版されている。 渡波 郁CPUの創りかた』 マイナビ出版、2003年9月。ISBN 978-4-8399-0986-4

  1. 処理結果の付加情報。「結果がマイナスです」など。
  2. どんな命令を実行するのか指定するコード。
  3. 例えば、Aレジスタに「0101」を書き込みたいとする。この0101を指定するのがイミディエイトデータ。