メモリーインターリーブ
読み:メモリーインターリーブ
外語:memory interleave
アクセスを重ね合わせる(インターリーブする)ことで、メモリーへのアクセス速度を高速化する技術のこと。
概要
様々な方法が考えられており、高速化のために広く使われている。
概念的には、メモリー全体をいくつかのブロック単位に分割して管理し、メモリーへのアクセスが行なわれたと同時に、次にアクセスされそうな別のブロックのアクセスの準備を開始することで、そのデータの転送が完了する頃には次のデータの転送が可能となり、遅延の無いデータ転送が実現される、というものである。
当然、アクセスされそうなブロックの予想が外れた場合にはCPUは待たされることになるため、この予想をより効率化するために様々なアルゴリズムが考案されている。
特徴
例えば、偶数アドレスと奇数アドレスで2ブロックに分けてインターリーブを行なうだけでも、CPUが順序よくメモリーアクセスした場合にはメモリーアクセスが効率化される。
この場合、2ブロックでインターリーブを行なっているため「2ウェイ・インターリーブ」と呼ばれる。
ブロック数を増やすほどインターリーブの効果は向上するが、予想が外れた場合のコストも比例して増加するので、単純にブロック数を増やしても高速にはならない。
パーソナルコンピューターで使われているものは主に2ウェイ・インターリーブで、メインメモリーやキャッシュメモリーで用いられている。
再検索