ICDロゴ

2次キャッシュ (level 2 cache)

【ニジ・キャッシュ】

別名
L2キャッシュ (Level 2 cache) 【レベル・ツー・キャッシュ】
セカンダリ・キャッシュ (secondary cache)
外部キャッシュ (external cache) 【ガイブ・キャッシュ】

最終更新日: 2003/05/29

 マイクロプロセッサの性能を向上させるために、マイクロプロセッサの外部に用意されるキャッシュメモリ。

 マイクロプロセッサは、実行するための命令をロードしたり、命令の実行に必要なデータを読み書きしたりするために、メインメモリにアクセスする必要がある。マイクロプロセッサからメインメモリにアクセスするためには、メモリバスを通してデータを交換するのだが、このメモリバスのデータ転送能力は、マイクロプロセッサ内部のデータ転送能力に比較すると非常に性能が低い。このためマイクロプロセッサがメインメモリにアクセスする場合には、大きななウェイトが発生してしまう。特にプロセッサの外部クロック(システムクロック)の数倍の速度でマイクロプロセッサ内部を稼働させる技術(IntelのOverDriveテクノロジなど)が一般化するにつれ、メインメモリアクセスのためのオーバーヘッドが深刻になってきた。

 一般的なプログラムコードには、内部に多くのループ処理が含まれており、ある時点では、プログラムコードの一部分だけが繰り返し実行されることが多い。このような特徴から、高速なマイクロプロセッサと低速なメインメモリの間に介在して、いったんアクセスが行われたメインメモリの部分を一時的に高速なメモリ(通常はSRAM)に記録しておき、再度そのコードやデータをプロセッサが要求したら、低速なメインメモリアクセスを実行せずに、一時記憶のデータをプロセッサに渡すようにする。これがキャッシュの働きである。

 マイクロプロセッサが使用するキャッシュは、マイクロプロセッサ内部に用意されるものと(内部キャッシュ、プライマリキャッシュ、1次キャッシュ、L1キャッシュなどと呼ばれる)と、マイクロプロセッサの外部に用意されるもの(外部キャッシュ、セカンダリキャッシュ、2次キャッシュ、L2キャッシュと呼ばれる)に分類される。このうちL1キャッシュはマイクロプロセッサ内部に実装されるので、高速なアクセスが可能だが、プロセッサの製造コストなどの点から、大容量化が難しい。

 これに対しL2キャッシュはマイクロプロセッサの外部に用意されるので、さまざまな形式がありうる。たとえばi486やPentiumマイクロプロセッサの時代には、L2キャッシュメモリと、キャッシュメモリコントローラはマザーボードに実装されるのが一般的だった。しかしその後発表されたPentium IIでは、マイクロプロセッサのパッケージにS.E.C.(Single Edge Contact)が採用され、ファミコンカセット形状に似たカセット内の基板にプロセッサコアとL2キャッシュが実装された。さらにその後発表されたMendocino(開発コード名。MendocinoはCeleron-300AMHz/333MHz/366MHz/400MHzに搭載された)やMobile Pentium IIでは、L2キャッシュがプロセッサコア上に統合された。

Copyright (C) 2000-2007 Digital Advantage Corp.

アイティメディアの提供サービス

キャリアアップ