キャッシュメモリ
(cache memory)
CPUを高速に実行するには、CPUがアクセスするメモリデバイスが高速であればあるほど良い。ただし高速なメモリは高価で容量も少ないものが多いので、それを補うためにキャッシングというシステムを使う。キャッシングには、キャッシュメモリという高速で小容量のメモリを補助的に使う。このキャッシュメモリに対して実際にプログラムなどが収められているメモリをメインメモリという。CPUがアクセスしようとしたプログラムがキャッシュメモリ上に無いと、メインメモリからそのプログラムをキャッシュメモリにDMA転送し、それを実行させる。キャッシュメモリは高速なメモリなので、CPUは高速な実行が可能となる。ただし、このキャッシュメモリは、容量が少ないので、キャッシュメモリ上に無いプログラムが度々発生する。このプログラムが無い状態を、ミスキャッシュしたという。この時、またメインメモリからDMAでミスキャッシュしたプログラムをキャッシュメモリに転送して実行させる。近年、キャッシュメモリはCPUに内蔵されているものもある。内蔵されていないものを外部キャッシュメモリという。CPUを高速に実行させ続けるにはミスキャッシュをなるべく少なくする事が重要である。そのために、どのようにミスキャッシュを防ぐかなどに各種アルゴリズムやキャッシング回路技術がある。(株式会社Sohwa&Sophia Technologiesの用語集より)
参考記事:「車載マイクロコンピュータの基礎~車載システムを支える頭脳」
マイクロコンピュータの高速化技術として、キャッシュメモリの図解がある。