Transcript パート12

コンピュータアーキテクチャ
第 12 回
1
各種メモリ・レジスタ間命令

COMETⅡの命令の分類
–
–
–
–
–
–
–

ロード,ストア,ロードアドレス命令 :LD, ST, LAD
算術,論理演算命令:ADDA, ADDL, SUBA, SUBL, AND, OR, XOR
比較演算命令: CPA, CPL
シフト演算命令: SLA, SRA, SLL, SRL
分岐命令: JPL, JMI, JNZ, JZE, JOV, JUMP
スタック操作命令: PUSH, POP
コール,リターン命令: CALL, RET
今回の内容1
– PUSH・POP命令の実行制御

今回の内容2
–
–
–
–
割り込み
入出力アーキテクチャ
積み残しの話題
授業アンケート
2
プッシュ命令の制御信号とデータの流れ(1)
(実効アドレス計算のサイクル Dec-Ea は省略)
bA bB
A/S_op
F
bC
Mem
IAa BPAbSD c0123aLR Fcn GiPAmDdSsD srw
Push0:
*
; SDR←MAR, SP←SP-1
3
プッシュ命令の制御信号とデータの流れ(2)
bA bB
A/S_op
F
bC
Mem
IAa BPAbSD c0123aLR Fcn GiPAmDdSsD srw
Push1:
*
; mem(SP)←SDR
4
POP命令の実行制御状態
*
*
5
ポップ命令の制御信号とデータの流れ(1)
bA bB
A/S_op
F
bC
Mem
IAa BPAbSD c0123aLR Fcn GiPAmDdSsD srw
Dec-Pop0:
*
; if POP = 1
then {SDR←mem(SP),
6
SP←SP+1}
ポップ命令の制御信号とデータの流れ(2)
bA bB
A/S_op
F
bC
Mem
IAa BPAbSD c0123aLR Fcn GiPAmDdSsD srw
Pop1:
; GRA←SDR, PR←PR+1
*
7
ポップ命令の実行ステップの
タイムチャート
*
bA
IAa
Dec-Pop0:000
Pop1:000
bB
BPAbSD
000010
000001
A/S_op
c0123aLR
10111000
00010000
F
Fcn
000
000
bC
GiPAmDdSsD
0000000111
1110000000
Mem
srw
110;
000;
8
割り込み(interrupt)

割り込み:
*

割り込みの種類
– 内部割り込み(internal interrupt)
– 外部割り込み(external interrupt)
9
内部割り込み
*
発生する
割り込み(割り出し,ソフトウェア割り込みともいう)
演算例外

*
–
不正命令違反

–
定義されていない命令コードの使用
メモリ保護違反

–
SVC (supervisor call)

–

*
ユーザプログラムから OS へ処理を依頼
その他
10
外部割り込み
*
割り込み(ハードウェア割り込みとも言う)

マシンチェック割り込み
–

*
入出力割り込み
–
入出力装置からの動作終了通知,異常通知など
11
割り込み処理の実行制御
PSW (program status word) の退避

–
–


*
ユーザプログラムが使用しているメモリの内容
割り込み処理
PSW の回復

サブルーチンの実行制御に類似
12
COMETⅡの SVC 命令

SVC adr [,x]
*

<例>:
– データの入力: SVC 1
– データの出力: SVC 2

命令実行後の汎用レジスタとフラグレジスタの内
容は不定
13
SVC 命令を含めた実行制御を表す状態図
SVC命令の実効アドレス計算の後に要するステップ数は

–
データ転送方式に依存
*
14
入出力アーキテクチャ

入出力命令や入出力装置の構成・仕様
– 多様な方式あり
– コンピュータシステムの規模による違い大



*
*
重要な二つの視点
– 入出力命令の実現方式
– データ転送方式
15
入出力命令の実現方式による分類

入出力専用命令による入出力(I/O mapped I/O)
–
–

*
命令セットアーキテクチャの設計から考慮
メモリマップド入出力 (memory mapped I/O)
–
–
–
–
–
*
Load 命令,Store 命令などでデータ転送
ハードウェア量小
拡張性大
現在の PC, WS で採用
16
データ転送方式による分類

プログラム制御入出力(programmed I/O)
–
–
–

*
入出力動作がプロセッサの性能に影響
少量のデータ転送向け
DMA (Direct Memory Access)
–
–
–
–
*
メモリと入出力装置間のデータ転送が
プロセッサと非同期
*
転送終了後プロセッサへ
データのバースト転送(大量転送)
17
プログラム制御入出力方式と DMA 方式
18
本講義の積み残しの話題

メモリアーキテクチャ
–
– 仮想メモリ

*
ネットワークアーキテクチャ
*
–
– 各種プロトコル
その他
19