Написать подпрограмму acache, которая вводит два числа: A (некоторый адрес в памяти), и T — тип эксплуатации кеша. Затем программа читает произвольные адреса в диапазоне A … A + 1024 (разумеется, не все) таким образом, чтобы:
При T < 0 самым эффективным алгоритмом кеширования оказался бы кеш прямого доступа (Direct Mapping) со стандартными настройками (LRU / 1 / 8 / 4 / 128)
При T > 0 самым эффективным алгоритмом кеширования оказался бы ассоциативный кеш (Fully Associative) с теми же настройками
При T == 0 самым эффективным алгоритмом кеширования оказался бы множественно-ассоциативный кеш (N-way Set Associative) с теми же настройками и количеством ассоциативных элементов в банке (Set size) 2
К программе будет приписан такой footer: VarCacheFooter.asm, а его вывод проверен программой моделирования кеша. Для проверки из RARS GUI вместо 0 в тесте можно использовать 268468224 (это $gp)
0 1
<ассоциативный кеш эффективнее>