русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Структура кеша


Дата добавления: 2015-06-12; просмотров: 510; Нарушение авторских прав


Кеш представляет собой четырехканальную ассоциативную по наборам данных память. Это означает, что блок данных из заданной позиции главной памяти может быть записан в любую из четырех позиций кеша. Четырехканальная ассоциация - это компромисс между скоростью поиска в кеше с прямым отображением и высоким соотношением удачных нахождений при поиске в полностью ассоциативном кеше. Это позволяет осуществлять быстрый поиск в кеше для нахождения данных, обеспечивая при этом высокую пропорцию нахождений данных в кеше.

Блок Блок Блокдосто- тега данныхверности/LRU Канал0Канал1Канал2Канал3 Канал0Канал1Канал2Канал3----- ------------------------- -------------------------| | | | | | | | Набор0| | | | ||-|-| |-----|-----|-----|-----| |-----|-----|-----|-----|| | | | | | | | Набор1| | | | ||-|-| |-----|-----|-----|-----| |-----|-----|-----|-----|| | | | | | | | Набор2| | | | ||-|-| |-----|-----|-----|-----| |-----|-----|-----|-----|| | | | | | | | | | | | || | | | | | | | | | | | || | | | | | | | | | | | || | | | | | | | | | | | || | | | | | | | | | | | ||-|-| |-----|-----|-----|-----| |-----|-----|-----|-----||///| | |/////| | |<-->НаборN| |/////| | ||-|-| |-----|-----|-----|-----| | |-----|-----|-----|-----|| | | | | | | | | | | | | || | | | | | | | | | | | | || | | | | | | | | | | | | || | | | | | | | | | | | | || | | | | | | | | | | | | ||-|-| |-----|-----|-----|-----| | |-----|-----|-----|-----|| | | | | | | | | Набор | | | | ||-|-| |-----|-----|-----|-----| | 126 |-----|-----|-----|-----|| | | | | | | | | Набор | | | | |----- ------------------------- | 127 ------------------------- | | |------------------- ------------ | -----------------|LRU|Достоверность| |Тег-21 бит| | -->|Данные-16 битов|------------------- ------------ | | ----------------- ^ ^ Индекс | | | равен N | \/ Совпадение | Выбирает байт X 1 X X | | | Строка достоверна 31 \/ 11 \/ 4 | 0 ----------------------------- |Поле тега|Поле индекса|XXXX| ----------------------------- Физический адрес LRU = признак наиболее давнего использования для алогоритма "удалениястариков" Рисунок 10-5. Структура кеша

Кеш состоит из трех блоков:



  • Блок данных - содержит до 8Кбайт данных и команд. Блок данных делится на четыре массива, каждый из которых содержит 128 строк кеша. Каждая строка кеша содержит данные из 16 последовательно расположенных адресов памяти, начинающихся с адреса, кратного 16. каждому 7-разрядноиу индексу массивов блока данных соответствует четыре строки кеша, по одной из каждого массива. Четыре строки кеша с одинаковым индексом называются набором.
  • Блок тега - содержит один 21-разрядный тег для каждой строки данных в кеше. Блок тега также, следовательно, делится на четыре массива, каждый из которых содержит 128 тегов. Тег состоит из старших 21 битов физического адреса данных, хранимых в соответствующей строке кеша.
  • Блок достоверности и LRU ("признак наиболее давнего использования, учитываемый при поиске кандидата на удаление из кеша") - содержит одно 7-разрядное значение для каждого из 128 наборов строк кеша. Четыре бита служат для того, чтобы пометить отдельно строки набора как достоверные или недостоверные. Остальные три бита отслеживают использование данных в наборе и проверяются при необходимости заполнения строки кеша (когда при этом ни одна из строк в кеше не является недостоверной). Как и для TLB, используется алгоритм замены кеша псевдо-LRU. Адресация кеша выполняется путкм разделения старших 28 битов физического адреса на две части. Из них 21 старший бит представляет собой поле тега и используется для различения кешированных данных от любой другой 16-битовой строки данных, которая могла храниться в том же наборе. Следующие старшие 7 битов называются полем индекса и определяют набор, в котором могут храниться данные.


<== предыдущая лекция | следующая лекция ==>
Тестовые регистры | Тестовые регистры


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.272 сек.