セットアソシアティブ方式とは?せっとあそしあてぃぶほうしき
セットアソシアティブ方式とは、キャッシュの割付け方式の一つで、主記憶のブロックを、アドレスから決まるセットの中の複数のライン(ウェイ)のどこへでも置ける。1か所へ固定するダイレクトマップと、どこへでも置けるフルアソシアティブの中間にあたり、競合ミスと比較回路の量を折り合わせる。
最終更新:2026-10-06
この語が出る過去問を解く →背景
ダイレクトマップは比較器が1つで済む代わり、同じセットへ写像されるブロックを交互に使うだけでミスが続く。フルアソシアティブは競合しないが、全ラインを同時に比較する回路が現実的でない。実装コストとヒット率の妥協点として、セット内だけを連想検索する方式が採られた。ウェイ数はヒット率と回路量の折り合いで決める設計変数になる。
具体例
4ウェイセットアソシアティブなら、同じセットに写像されるブロックを4本まで同時に保持でき、比較器も4個で足りる。現在のCPUのL1・L2キャッシュは、おおむね4〜16ウェイの構成をとる。
試験での引っ掛け
ウェイ数とセット数の取り違えが定番。4ウェイは「同じセットに4本まで置ける」であって、セットが4つあるという意味ではない。1ウェイがダイレクトマップ、セットが1つならフルアソシアティブという両端の関係、ウェイを増やすとヒット率は上がるが同時比較の回路が増えてコストと遅延が増す関係も問われる。
関連用語
出た過去問
出典:令和7年度 春期 システムアーキテクト試験 午前Ⅱ 問20(IPA)
キャッシュメモリにおけるセットアソシアティブ方式の説明として,適切なものはどれか。
正解:主記憶のある一つのメモリブロックを,キャッシュメモリ内の単一又は複数の配置可能なロケーションに対応付ける。
要点:ブロックをセット内の複数位置に対応付けるのがセットアソシアティブ
セットアソシアティブ方式は、キャッシュを複数のブロックから成るセットに区切り、主記憶の各ブロックを対応するセット内のいずれかの位置に格納する方式である。格納先を1か所に固定するダイレクトマップ方式と、どこにでも置けるフルアソシアティブ方式の中間で、競合の起きにくさと検索回路の簡潔さを両立させている。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。