Полностью ассоциативное распределение.

При таком способе размещения данных каждая строка основной памяти может быть размещена на месте любой строки кэш-памяти. Структура кэш-памяти с полностью ассоциативным распределением выглядит как показано на рис 8.20.

 

Рис. 8.20. Структура кэш-памяти с полностью ассоциативным распределением

При полностью ассоциативном распределении механизм преобразования адресов должен давать ответ на вопрос, существует ли копия строки с произвольным адресом в кэш-памяти, и, если существует, то по какому адресу. Для этого необходимо, чтобы теговая память являлась ассоциативной памятью. Входной информацией для ассоциативной памяти тегов является тег А (14-ти разрядный адрес строки), а выходной информацией – адрес строки внутри кэш-памяти (С). Каждое слово теговой памяти состоит из 14-разрядного тега и 7-разрядного адреса С строки внутри кэш-памяти. Ключом для поиска адреса строки внутри кэш-памяти является тег А (старшие 14 разрядов адреса основной памяти). При совпадении ключа А с одним из тегов Т теговой памяти (случай попадания) происходит выборка соответствующих данному тегу адреса С и обращение к памяти данных. Входной информацией для памяти данных является 11-ти разрядное слово ВС (7 бит адреса строки В + 4 бита адреса слова в данной строке С). В случае несовпадения ключа ни с одним из тегов теговой памяти (случай промаха) формируется запрос к основной памяти на выборку строки с соответствующим адресом и считывание этой строки. По этому способу при замене строк кандидатом на удаление могут быть все строки в кэш-памяти.