グループストレージシステム:6。キャッシュ-メインメモリマッピングモード(完全接続マッピング、直接マッピング、グループ接続マッピング)

マインドマッピング

ここに画像の説明を挿入します

解決すべき問題

ここに画像の説明を挿入します

3つのキャッシュメインメモリマッピング方法

ここに画像の説明を挿入します

1.完全に接続されたマッピング:自由に配置
2.直接マッピング:0%8 = 0、8%8 = 0;したがって、キャッシュのブロック0は0、8、16 ...を格納します
3.グループ接続されたマッピング:0%4 = 0、4%4 = 0;したがって、キャッシュの0グループは0、4、8 ...
4を格納しますどのメインメモリブロックがキャッシュに格納されているかを区別する方法は?
最初の反応は、キャッシュの各ブロックにマークビットを追加してメインメモリのブロック番号を格納することですが、コンピュータハードウェアは0と1しか格納できません。デフォルトのマークが0の場合、データはキャッシュに格納されません。 、ただし、キャッシュにアクセスすると、メインメモリのブロック0のデータを入れたと思うかもしれませんが、実際にはキャッシュが空なので、有効なビットを追加する必要があります。

完全に連想的なマッピング(自由に配置)

ここに画像の説明を挿入します

メモリアクセス手順:
1。メインメモリアドレスの最初の22ビット、1。キャッシュ内のすべてのブロック2のタグを比較します
。2。タグが一致し、有効なビット= 1の場合、キャッシュがヒットし、アクセスブロックは2 !!-3001110ユニットです。

直接マッピング(固定位置にのみ配置できます)

ここに画像の説明を挿入します

1.完全に接続されたマッピングと比較して、メインメモリアドレスの分析は、キャッシュのブロック番号がメインメモリアドレスの最後の3つとまったく同じであることを示しています(キャッシュブロックの総数は8です)。 、これらの3ビットをマークする必要がないため、元の22ビットは19ビットになります
。2。メモリアクセス手順:メインメモリブロック番号の最後の3ビットに従ってキャッシュラインを決定します。メインメモリのブロック番号はキャッシュマークと一致し、有効です。ビット= 1、ブロック内のアドレス001110のユニットが最後にアクセスされます。

グループ連想マッピング(特定のグループに配置できます)

ここに画像の説明を挿入します

1.直接マッピングと同様に、2ブロックはグループであり、4つのグループに分割すると、次の2桁はグループ番号を直接反映するため、保存する必要はありません。したがって、タグビットは20桁を保存できます
。2。メモリアクセスステップ:最初にメインメモリブロック番号の最後の12桁に従ってグループ番号を決定します。次に、メインメモリブロック番号の最初の20桁がグループ内のタグと一致し、有効なビット= 1の場合、キャッシュヒット;アドレスが001110であるブロック内のユニットへの最後のアクセス。

さまざまなマッピングの長所と短所:

マインドマップを見る

おすすめ

転載: blog.csdn.net/qq_41587740/article/details/109104899