第1章 マイコン・システムの構成と機能

マイコン・システムの構成と機能

 次に,マイコンの原点ともいわれる8080で構成しているマイコン・システムのブロック図図1-3を使い,各パートの説明を行います.
  

<図1-3>マイコン・システムのブロック図            

(約14Kバイト)

 余談ですが,インテル社の8080は本格的に量産実用化されたマイクロコンピュータ・チップの第1号です.Z80のお父さんであり,Pentiumから数代さかのぼるお祖父さんです.

 実際にインテル社の16ビットCPU 8086には,8080モードというプログラミング・モードがありました.それ以後の80186,80286,80386,80486そしてPentiumに至るまで,必ず上位互換となっていますから,今でも8080のコンセプトは継承されています.

 マイコン・システムは,図1-4のようにCPU部分とメモリおよびシステムの手足であるI/O部分から構成されます.図1-2図1-3も参照してください.
  

<図1-4>メモリ,I/Oの接続

              (約7Kバイト)

 I/O(Input Output)

 I/Oとは,コンピュータと外部を接続するものの総称です.例を挙げると,CRT表示用のCRTコントローラ,キーボードを接続するキーボード・インターフェース,シリアルI/O,パラレルI/Oなどです.

 I/OもメモリもCPUにデータ・バス,アドレス・バス,コントロール・バスで接続しますが,I/Oは外部への接続端子をもっています.

メモリ

 8ビット幅メモリであれば8個に仕切られた引き出しのようなものです.その仕切り内に物が入っていれば‘1’,なければ‘0’です.

 8ビット(8区画)の仕切り内に物が「あり」,「なし」の組み合わせで256通りの表現ができます.

 この引き出し一つが1バイトです.1Kバイトのメモリであれば,この引き出しが1024個並んだものです.

プログラム・カウンタ

 引き出しを番地の若い順に開けて,その内容をインストラクション・デコーダに知らせます.

 プログラム・カウンタは,現在実行中の次の番地を保持します.命令実行により通常1番地ずつ繰り上がりますが,ジャンプ命令,コール命令などを実行すると,その指定先番地の値になります.

インストラクション・デコーダ

 現場監督のような役割で,プログラム・カウンタから渡された命令を解読し,ALUやアキュムレータなどに指示します.

 実際は,CPUコントローラというロジックを経由してすべての制御が行われます.

CPUコントローラ

 CPU内の動作タイミングのリード(RD),ライト(WR),割り込み(INT)などのコントロール・バスを制御するロジックです.

 CPU内部は,すべてCPUコントローラからの指令で動作していますが,CPUのハード設計,ソフト設計を行うにあたり,CPUコントローラの存在はあまり意識しなくても済みます.

ALU

 Arithmetic Logic Unitの略で,計算する所です.

 CPUのビット幅の決め方に明確な基準はありませんが,例えば32ビットCPUという場合,少なくともALUは32ビット幅になっています.

アキュムレータ&レジスタ

 計算の結果を置いたり,処理途中のメモ用紙であったり,いろいろな用途に使われる作業台です.

 8080やZ80はAレジスタをアキュムレータと呼び,アキュムレータ中心の命令体系になっていました.

 最近のCPUはすべてのレジスタがアキュムレータとして使える汎用レジスタ仕様になっています.

フラグ・レジスタ

 AFレジスタのF部分です.

 キャリ・フラグ,ゼロ・フラグなど演算命令の結果によりフラグがセットされます.

 8080の場合,Z,C,S,P,CY4,SUBの6ビットのフラグが用意されています.

 


Copyright 2000 武下 博彦

新刊のご案内


Copyright 1997-2001 CQ Publishing Co.,Ltd.