計算機アーキテクチャ2009
このサイトを検索
近畿大学 産業理工学部 「計算機アーキティクチャ」
講義の概要・講義の予定
年表
第10回講義資料 2009/10/27
第11回講義資料 2009/12/04
第12回講義資料 2009/12/11
第13回講義資料 2009/12/17
第1回講義資料 2009/09/18
第2回講義資料 2009/09/25
第3回講義資料 2009/10/02
第4,5回講義資料 2009/10/09, 2009/10/16
第6回講義資料 2009/10/23
第7回講義資料 2009/11/06
第8回講義資料 2009/11/13
第9回講義資料 2009/11/20
サイトマップ
第7回講義資料 2009/11/06
CPUの実現方式
内部アーキテクチャ
CPU内部の実現方式
外部アーキテクチャの実現のためのしくみ
マイクロアーキテクチャとも呼ぶ
命令は同じでも異なるハードウェア方式
ソフトウェア互換、ハードウェア互換
x86アーキテクチャ(同じ外部アーキテクチャ、異なる内部アーキテクチャ)
Intel
i80386
i486
Pentium
Pentium Pro
Pentium II
Celeron
Pentium III
Pentium 4
Pentium M
Core
Core 2
Core i7
Core i5
Atom
AMD
Am386(80386ピン互換)
Am486 (i486ピン互換)
Am5x86 (i486ピン互換)
K5 (Pentiumピン互換)
K6
K6-2
K6 III
Athlon
Duron
Athlon MP
Athlon XP
Opteron
Athlon 64
Athlon 64 X2
Turion 64
Turion 64 X2
Phenom
Phenom II
Athlon II
Sempron
Geode
Cyrix
Cx5x86 (i486ピン互換)
6x86(Pentiumピン互換)
Cyrix MII
Cyrix MIII
CPU実現の基本
バス(共通線)アーキテクチャ
共通線を利用し、タイミングを合わせてアクセス
バス
アドレスバス - メモリやI/Oのアドレスを選択
データバス - メモリやI/Oのデータを転送
その他
タイミング選択ライン
割り込み信号
クロック信号
CPUの基本機能
フェッチ
デコード
実行(演算、メモリリード)
ライトバック
CPUの基本構造
命令フェッチユニット
命令でコードユニット
レジスタユニット
演算ユニット(ALU)
メモリアクセスユニット
命令フェッチ
プログラムカウンタが指すアドレスをアクセス
命令レジスタへの読み込み
デコード
命令コードをデコード
オペランドをデコード
各ユニット動作を設定
レジスタ
データを保持
各ユニットへのデータ転送
演算
アドレスデータの生成
演算ユニット
演算命令の実行
整数演算ユニット
浮動小数点数演算ユニット
メモリアクセスユニット
データの読み込み
データのライトバック
実現方式
ワイヤードロジック方式
命令制御をハードウェアロジックで実現
マイクロプログラム方式
命令制御を内部のマイクロプログラム制御で実現
内部ユニットを制御するマイクロコードを解釈実行
ワイヤードロジック方式
すべて配線により実現する方式
処理は高速
複雑な命令の処理は構造を複雑化(限界性能に影響)
現在のマイクロプロセッサはワイヤードロジック
マイクロプログラム方式
CPU内部のユニットを制御をマイクロプログラムで制御
IBM System360の下位機種の実現
上位機種の命令セットをマイクロプログラムで実現
性能は低いが簡単な構造で高機能を実現
マイクロプログラムの方式
水平型マイクロプログラム
機能指定を各ユニットごと命令のビットにマップ
垂直型マイクロプログラム
一般の機械語に似た命令(デコードが必要)
ダイナミックアーキテクチャ
マイクロプログラムで命令をダイナミックに定義可能
頻繁に利用される処理をマイクロプログラムで命令化
高機能プロセッサ
高級言語の機能を機械語命令で実現
人間がプログラムしやすい機械語命令(アセンブリ言語)
CISC:Complex Instruction Set Computer
マイクロプログラムを駆使した高機能化
ループ命令
メモリーメモリ演算命令
多倍長演算命令
複数の命令を組み合わせて1つの命令として実現
マイクロプログラムの応用
命令アーキテクチャの共通化
下位互換性の実現
命令の拡張
ダイナミックに命令を定義
高級言語プロセッサ
Lispプロセッサ
Prologプロセッサ
マイクロプログラムの問題
高速化への障害
マイクロプログラムの高速実行の課題
高度な命令の必要性に疑問?
コンパイラが利用しない命令
コンパイラにとって不要な機能
高性能コンパイラ作成の障壁
命令の実行速度を予測できない
コード生成の複雑化
RISCマシンの登場
ワイヤードロジックによる性能向上を重視
コンパイラによる最適化
高性能から高速プロセッサへ
高機能プロセッサのメリット
プログラムステップ数の短縮
プログラムの記述しやすさ
高機能プロセッサのデメリット
ワイヤードロジックによる実現が難しい
クロックの高速化が難しい
コンパイラが生成できない命令が多く存在
RISCアプローチ
ワイヤードロジック化
1クロック実行
レジスタ間演算
転送命令と演算命令の分離
命令数の縮小
コンパイラによる最適化を前提
遅延分岐による最適化
CISCのRISC化
CISC命令の高速化の必要性
互換性からRISC化できないCPU, x86
RISC陣営の追い上げ
RISCのテクノロジーの導入
内部での命令変換(命令の細分化)
レジスタリネーミング(レジスタ多重化)
アーキテクチャは性能重視へ
プログラムの生産性より速度
外部アーキテクチャは互換性
内部アーキテクチャは高速化
コンピュータの命令は人の目にふれないものに...
Č
Updating...
Ċ
計算機アーキテクチャ2009_11_06.pdf
(2506k)
Hideto Sazuka,
2009/11/05 6:56
v.1
ď
Comments