Механизм ассоциативной памяти в современных системах кэширования работает следующим образом: books.ifmo.ru
- ЦП генерирует полный адрес необходимых данных и посылает его кэш-контроллеру. books.ifmo.ru
- Кэш-контроллер сравнивает старшие биты адреса со адресными тэгами всех строк кэша одновременно (для этого имеется отдельный компаратор адреса для каждой строки). books.ifmo.ru
- Если значения с каким-либо из тэгов совпадают, то происходит попадание, и кэш-контроллер определяет номер строки кэша, данные из которой должны быть считаны для ЦП. books.ifmo.ru
- Используя этот номер строки и поле смещения для выбора нужного байта, данные считываются из сегмента данных и передаются в ЦП. books.ifmo.ru
- Если значение тэгов во всех строках кэша и старших битов адреса от ЦП не совпадают, то происходит промах, и данные должны быть загружены из основной памяти в одну из строк кэш-памяти. books.ifmo.ru ЦП должен остановиться и ждать, пока требуемые данные будут загружены в кэш из основной памяти. books.ifmo.ru
- Затем ЦП должен считать данные, на доступе к которым произошёл промах, и, завершив исполнение этой команды, продолжить нормальную последовательность работы. books.ifmo.ru
Ассоциативный механизм обеспечивает возможность связать каждую строку кэш-памяти с любым блоком оперативной памяти. intuit.ru Это наиболее гибкий механизм, но его аппаратная реализация является дорогостоящей и потребляет много энергии. intuit.ru