Прямое сопоставление кэша Hit & Miss
4-битный адрес
тег 1-битный
индекс 2-битный
смещение 1 бит
2 байта на блок
4 комплекта (1 блок на комплект)
Я пытаюсь определить, являются ли следующие адреса попаданиями или промахами. Я представляю информацию, которую я приобрел до сих пор. (весь кредит будет отдан переполнению стека)
Адреса
14
набор 3
v = 0
tag = 1
смещение = 0
9
установить 0
v = 0
tag = 1
смещение = 1
2
набор 1
v = 0
tag = 0
смещение = 0
6
набор 3
v = 1
tag = 0
смещение = 0
3
набор 1
v = 1
tag = 0
смещение = 1
1 ответ
Поскольку это кэш с прямым отображением, и он имеет 4 набора, это означает, что он имеет емкость для 4 блоков.
1) Адрес 14 в двоичном виде: 1110
Предполагая, что в начале кеш пуст, мы получили ошибку и сохраняем это слово в кеше. Тег 1, в наборе № 3.
2) Адрес 9 в двоичном виде: 1001
Tag 1, Set # 0, мы получили мисс. Поэтому мы храним его на множестве 0.
3) адрес 2 в двоичном виде; 0010
этот блок идет на множестве 1 и он пуст. Мы получили мисс и храним это. С тегом 0
4) Адрес 6 в двоичном виде: 0110 Поскольку мы уже сохранили блок в наборе 3, мы сравним его. Поскольку их теги отличаются. Тег 0!= Тег 1, мы исключаем предыдущий и сохраняем новый. скучать
5) Адрес 3 в двоичном виде: 0011 этот блок входит в набор 1, и, поскольку у нас уже был блок в наборе 1, мы сравниваем его. Поскольку их теги равны 0 = 0, мы получили ХИТ.