CPUについて
情報
実行アドレス 実際には、次の命令アドレスが入ってる場合が多い
IP = InstructionPointer
ProgramCounterとも呼ばれる
スタック領域のアドレス
関数のコールバックやgoto文はIPを書き換えている
int a = 10, b = 20, c = 30;
┏━━┓
┃ ┃←SPレジスタ
┣━━┫
┃c 30┃
┣━━┫
┃b 20┃
┣━━┫
┃a 10┃
┗━━┛
メモリ速度がCPUに比べて低速な時、利用する情報を先読みしCPU内に保存するメモリ。
SRAMで作られ高速に動作する。
よく利用する情報も保存し、メインメモリにアクセスせずキャッシュに情報があれば高速に処理が可能である。
- ALU(Arithmetic Logic Unit)
┏━━━┓アドレスバス┏━━━┓
┃CPU ┃───────▶┃メモリ┃
┃ ┃ ┃ ┃
┃ ┃データバス ┃ ┃
┃ ┃───────▶┃ ┃
┃ ┃ ┃ ┃
┃ ┃制御線 ┃ ┃
┃ ┃=====▶┃ ┃
┗━━━┛ ┗━━━┛
・読み書きの選択
・転送同期信号、転送開始
・メモリチップの選択
クロック周波数を上げる→排熱、電力効率の問題
↓
半導体の集積度向上により、同じ面積に複数のCPUを用意し、並列に利用する
現在のCPU負荷の中心→エンコード
エンコードは大量の単純変換→複数の多機能CPUよりも多数の単純CPUが必要
昔:CPU + 専用ハードウェア
今:CPU + GPU(CUDA、openGL)
CPU内部の余ったスペースに、数種のCPUが1つの半導体(パッケージ)の中にある
・Intel QSV(Quick Sync Video)
プロセッサ内GPUでエンコードを行う
CPU内の物理機能を並列利用し高速化を行う
・CPUの4動作
・フェッチ
・デコード
・実行
・ライトバック
最終更新:2012年07月09日 10:59