キャッシュメモリ
Cache Memory
きゃっしゅめもり
他の資格での定義
CPUと主記憶装置の間に配置される高速な半導体メモリ。使用頻度の高いデータを一時的に蓄えることで、CPUの処理速度と主記憶の速度差を埋め、全体の処理性能を向上させる。
CPUと主記憶装置の間に配置される高速な記憶装置。頻繁にアクセスされるデータを一時的に保持し、メモリアクセスの高速化を実現する。L1キャッシュ、L2キャッシュなど階層構造を持つ。
CPUとメインメモリの間に配置される高速な小容量メモリ。頻繁にアクセスされるデータやプログラムを保持し、メモリアクセスの高速化を図る。組込みシステムではキャッシュのヒット率やフラッシュ制御がリアルタイム性能に影響する。
関連キーワードの用語
命令の実行をフェッチ、デコード、実行、メモリアクセス、ライトバックなどのステージに分割し、複数の命令を重ね合わせて並行処理する高速化技術。ステージ数をnとすると理想的にはn倍の高速化が可能。パイプラインハザードへの対処が課題。
パイプライン処理において命令の実行が妨げられる状況。データハザード(前の命令の結果を待つ)、制御ハザード(分岐命令による予測失敗)、構造ハザード(ハードウェア資源の競合)の3種類がある。フォワーディングや分岐予測で対策する。
複数の命令を同時に発行・実行できるプロセッサアーキテクチャ。複数の実行ユニット(演算器)を備え、依存関係のない命令を並列に処理する。命令レベル並列性(ILP)を活用して性能を向上させる。
1つの長い命令語に複数の演算を同時に指定するプロセッサアーキテクチャ。コンパイラが命令の並列性を解析してスケジューリングするため、ハードウェアの制御が単純になる。DSPや組込み分野で使用される。
1つのプロセッサチップに複数のCPUコアを搭載したプロセッサ。各コアが独立して命令を実行し、マルチスレッドプログラムの並列実行により性能を向上させる。消費電力を抑えつつ処理能力を高められる。
任意のアドレスに対して同じ速度で読み書きできる揮発性メモリ。DRAM(コンデンサに電荷を蓄積、要リフレッシュ、主記憶に使用)とSRAM(フリップフロップで記憶、高速だが高コスト、キャッシュメモリに使用)がある。