第3回 CPU の役割と仕組み1
CPU の仲間、命令形態、外部との接続
@ DENGINEER
明星大学 情報学科 2010 年度後期 コンピュータ設計論
本日 の メニュー
1. CPU とその仲間
2. CPU の役割
3. CPU の命令形態
4. CPU と外部との接続
1. CPU とその仲間(1)
CPU ( Central Processing Unit )
中央演算処理装置
Z80 CPU (ザイログ社)
40 ピンDIPパッケージ
1. CPU とその仲間(2)
CPU ( Central Processing Unit )
Core i7 (インテル社) 1366 ピンLGA パッケージ
1. CPU とその仲間(3)
ワンチップマイコン
CPU 、メモリ、入出力 I/F を内蔵
小規模な装置のインテリジェント化に貢献
(キーボード、リモコン、家電 等)
( 1chip Micro Computer )
1. CPU とその仲間(4)
ワンチップマイコンPICシリーズ(マイクロチップ テクノロジー社)
40 ピン DIP18 ピン DIP20 ピン SSOP 6 ピン SOT-23
1. CPU とその仲間(5)
DSP ( Digital Signal Processor )
信号処理用に 乗算、 FFT 、実数演算、
メモリコントロールについて 高速処理するように特化している。
CPU の著しい性能向上で、高速性能が押され気味
1. CPU とその仲間(6)
GPU ( Graphics Processing Unit )
3 次元グラフィックス用に 行列、ベクトル、繰り返し の
各演算について、並列処理などで 高速処理するように特化している。
余剰気味なパワーを活かし、データ処理にも活用されてきている。
2. CPU の役割(1)
システムの中心となり、演算を主体としてシステムの各要素をコントロールする。
ノイマン型アーキテクチャ
・プログラム格納方式・逐次制御方式
2. CPU の役割(2)
ノイマン型アーキテクチャ
・逐次制御方式
・プログラム格納方式プログラムをいったん主記憶装置に読み込んで、命令を実行する方式。
主記憶装置に記憶された命令を1つずつ取り出して解釈し、順に実行する方式。
2. CPU の役割(3)
CPU の構成
入力装置入力装置
CPUCPU
制御装置制御装置
演算装置( ALU )
出力装置出力装置
補助記憶装置補助記憶装置
データの流れ
制御の流れ
主記憶装置主記憶装置
3. CPU の命令形態(1)
CISC(Complicated Instruction Set Computer)
複雑な 命令セット コンピュータ
RISC ( Reduced Instruction Set Computer)
縮小した 命令セット コンピュータ
3. CPU の命令形態(2)
CISC と RISC の比較CISC RISC
機械語命令の実現 マイクロプログラム ワイヤードロジック
機械語命令の種類 複雑で便利な命令が多数 単純な命令 が 少数
機械語命令の長さ 命令により違う すべて同じ長さ
演算対象 レジスタとメモリ レジスタ
プログラム容量小さくてすむ 1 つの命令で 複雑なことができる
大きくなる 単純な命令を 複数組み合わせる
パイプライン 実行効率は よくない 実行効率が よい
3. CPU の命令形態(3)
機械語命令について
・ワイヤードロジック
・マイクロプログラム
論理回路を制御する小さな命令を 組み合わせて、機械語命令を実現する
論理回路の結線のみで、 機械語命令を実現する
4. CPU のと外部との接続(1)
信号線の種類
・データバス
・アドレスバス
・制御線
4. CPU のと外部との接続(2)
アドレスバス
対象となるデバイスの
場所を特定する信号線
0アドレス データ
123::
::
100101102103
::
::
ABC
¥ 0
基本的にはCPU ⇒ 周辺デバイス単方向のバス
4. CPU のと外部との接続(3)
データバスデバイス間で
データをやり取りする
信号線
0アドレス データ
123::
::
100101102103
::
::
ABC
¥ 0
CPU ⇔ 周辺デバイス双方向のバス
Z80CPU での例
4. CPU のと外部との接続(4)
制御線各デバイスの 様々な
コントロールをするため の信号線
機能ごとに独立した専用の信号線
4. CPU のと外部との接続(5)
主な制御線・クロック ・・・動作のペースメーカ
・リセット ・・・システムの初期化
・読み出し ・・・周辺デバイス ⇒ CPU
・書き込み ・・・ CPU ⇒ 周辺デバイス
・メモリリクエスト・・・メモリへのアクセス
・ I/O リクエスト ・・・ I/O へのアクセス
4. CPU のと外部との接続(6)
バス接続
信号線を共有して使えるようにする仕組み
バス( BUS )・・・乗り合い
複数のデバイスを扱うとしても、逐次制御方式の原則から、
同時にやり取りするのは1つだけ
共通化できるところをまとめて、資源の有効利用
4. CPU のと外部との接続(6)
バス接続をしない場合
CPU
ROM RAM
4. CPU のと外部との接続(6)
バス接続をした場合
CPU
ROM RAM
4. CPU のと外部との接続(7)
3 -State Gate
信号線を共有して使えるようにする仕組み
3つの状態がある出力
H レベル
L レベル
OFF
4. CPU のと外部との接続(8)
3 -State Gate に しないと。。。
出力どうしがショートしてしまう!
4. CPU のと外部との接続(9)
3 -State Gate を 使うと。。。
基本は出力が OFF
OFF
4. CPU のと外部との接続(9)
3 -State Gate を 使うと。。。
左のデバイスが H を出力すると バスは H
H レベル
4. CPU のと外部との接続(9)
3 -State Gate を 使うと。。。
用事が済んだら OFF に戻す
OFF
4. CPU のと外部との接続(9)
3 -State Gate を 使うと。。。
右のデバイスが L を出力すると バスは L
L レベル
4. CPU のと外部との接続( 10 )
制御信号のタイミング
クロック信号
4. CPU のと外部との接続( 10 )
制御信号のタイミング
アドレスバス信号
4. CPU のと外部との接続( 10 )
制御信号のタイミング
メモリリクエスト信号
4. CPU のと外部との接続( 10 )
制御信号のタイミング
読み出し信号
4. CPU のと外部との接続( 10 )
制御信号のタイミング
書き込み信号
4. CPU のと外部との接続( 10 )
制御信号のタイミング
データバス信号
4. CPU のと外部との接続( 10 )
制御信号のタイミング
ウェイト信号(デバイス側が必要に応じて発行)
4. CPU のと外部との接続( 10 )
制御信号のタイミング
OFF状態( H でも L でもない)
4. CPU のと外部との接続( 10 )
制御信号のタイミング
RD を受け、メモリがデータバスにデータを出す
このタイミングで、CPU がデータを読み出す
4. CPU のと外部との接続( 10 )
制御信号のタイミング
CPU が、データバスにデータを出す
WR の立ち上がりで、メモリにデータを書き込む
@