Затруднявам се да реша този въпрос, огледах се, но всички подобни въпроси са по-напреднали от моя, като се използват регистрационни файлове, това е по-напреднало, отколкото сме правили в нашия клас. Ето го въпроса:
Да предположим, че имате 4-посочен асоциативен кеш, който има общо 4096 байта кеш памет и всеки кеш ред е 128 байта. Колко комплекта има този кеш? Ако паметта е адресируема с байтове и адресите са 16 бита, тогава колко байта се използват за тага?
Ето какво имам досега:
4096/128 = num lines
4096/128/4 = 8 = num sets
(всеки набор е 4 реда в 4-посочен набор асоциативно)
И така, трябват 3 бита, за да изберете набор (2^3=8)
Остават ни 16-3 = 13 bits
за етикета и думата.
Тъй като въпросът гласи, че паметта е адресируема с байтове, мисля, че това означава, че думата е дълга 8 бита (= 1 байт) и следователно етикетът е 16-3-8 = 5
бита дълъг.
Въпреки че не съм съвсем сигурен в това. Някой има ли решение на този проблем?