メモリは構造上、大容量になるほどアクセス速度が遅くなるので、アクセスを速くするためには容量を小さくする必要があります。そこで、命令やデータを一時的に保管するための「小容量だが高速アクセス可能なメモリ」(これをキャッシュと呼びます)をCPUのすぐ近くに配置して、1回でもアクセスされた主メモリの内容をコピーしておきます。次に同じ内容がアクセスされた場合は、主メモリではなくキャッシュにアクセスします。主メモリとキャッシュの内容は同じですので、CPUから見ると、主メモリの内容に高速でアクセスできることになります。
ただし、高速なのはキャッシュにコピーされている内容にアクセスする場合だけですので、その他の場合は、主メモリにアクセスしなければなりません。キャッシュのコピーにアクセスできる場合を「キャッシュにヒットした」と言います。また、コピーが存在しない場合は「ミスヒット」と言います。全体のアクセス中、ヒットする確率を「ヒット率」と言い、キャッシュの性能の指標になります。
キャッシュは満杯になると、古い内容から、またはアクセス回数の少ない内容から消去して、新しい内容を入れます。このキャッシュの内容を入れ替える方式や内部構成によって、ヒット率が変わってきます。
キャッシュを、取り扱う内容(命令/データ/アドレス)で分類すると次のようになります。
キャッシュの置かれる位置によって、CPUに近い順に1次キャッシュ、2次キャッシュのように呼びます。1次、2次をLevel 1、Level 2と称して、略号でL1キャッシュ、L2キャッシュと呼ぶこともあります。
Copyright © ITmedia, Inc. All Rights Reserved.