Научная литература
booksshare.net -> Добавить материал -> Физика -> Александров Е.К. -> "Микропроцессорные системы" -> 133

Микропроцессорные системы - Александров Е.К.

Александров Е.К., Грушвицкий Р.И., Купрянов М.С., Мартынов О.Е. Микропроцессорные системы — Спб.: Политехника, 2002. — 935 c.
ISBN 5-7325-0516-4
Скачать (прямая ссылка): mikroprocessorniesistemi2002.djvu
Предыдущая << 1 .. 127 128 129 130 131 132 < 133 > 134 135 136 137 138 139 .. 528 >> Следующая

Е (exclusive) - содержимое строки хранится только в этом кэше и ОЗУ;
S (shared) - содержимое строки хранится в данном кэше, ОЗУ и каком-либо
другом устройстве (кэше);
I (invalid) - недостоверное (аннулированное) содержимое строки.
Для идентификации состояния строки служат соответствующие биты состояния.
Для каждого состояния установлен определенный протокол обращения к
содержимому строки.
RISC-МИКРОПРОЦЕССОРЫ И RISC-МИКРОКОНТРОЛЛЕРЫ СЕМЕЙСТВ POWERPC И COLDFIRE
Таблица 2Л
Команды управления внутренней кэш-памятью
Синтаксис Ассемблера
Операция
dcbz
dcbst
dcbf
*dcbi
icbi
debt (st)
rA, rB rA, rB rA, rB rA, rB rA, rB rA, rB
0 -> (строка DC)
(строка DC) -> ОЗУ Аннулирование строки DC Аннулирование строк всех DC
Аннулирование строки 1C Строка из ОЗУ DC
*) DC - кэш данных; 1C - кэш команд.
При этом реализуется снупинг - возможность обращения к содержимому кэша
данных со стороны другого устройства (процессора в мультипроцессорной
системе). Установленный протокол обращения (MESI - протокол) с
применением снупинга обеспечивает соответствие данных, хранящихся в
различных кэшах мультипроцессорной системы, что позволяет избежать ошибок
из-за использования каким-либо из процессоров старых данных, которые были
модифицированы другим процессором.
Обращение к кэшу команд 1C производится устройством управления
микропроцессора (см. рис. 2.70), которое одновременно выбирает из строки
четыре команды (16 байт). Обращение к кэшу данных выполняется блоком LSU,
который одновременно выбирает два слова (8 байт). Оба кэша подключены к
общей шине через блок интерфейса BIU, который обеспечивает пересылку двух
слов (8 байт) в одном цикле. Пересылка содержимого кэшей в ОЗУ или в
обратном направлении выполняется с помощью пакетного обмена, при котором
реализуется четыре последовательных цикла для передачи содержимого строки
(32 байт).
Отдельные биты содержимого регистра конфигурации НЮО определяют режим
использования кэшей. Установкой значения "0" или "1" этих битов можно
обеспечить включение или отключение каждого кэша, его блокировку, при
которой кэш не используется, но его содержимое сохраняется, освобождение
кэша путем аннулирования содержимого его строк (перевод в недостоверное
состояние).
Обычно кэши работают в режиме обратной записи, который снижает нагрузку
на общую шину, обеспечивая повышение производительности системы. Однако
при обращении к отдельным блокам или страницам памяти возможна реализация
сквозной записи.
Изменение содержимого отдельных строк кэша IC или DC осуществляется с
помощью специальных команд (см. табл. 2.77). Эти команды производят
расчет адреса ЕА = (гА!0) + (гВ), а затем выбирают строку кэша, в которой
размещаются команды или данные с таким адресом. При выполнении операций
со строками кэша данных учитывается состояние их содержимого: М, Е, S или
I.
Команда dcbz записывает "О" во все байты выбранной строки, после чего для
нее устанавливается состояние М. Если перед этим строка имела состояние
S, то при выполнении команды производится обращение (снупинг) к кэшам
других устройств, содержащих данную строку, и содержимое аналогичных
строк аннулируется (для них устанавливается состояние I). Команда dcbst
выполняет запись в память содержимого выбранной строки кэша данных, если
она имеет состояние М. При других состояниях строки или при отсутствии в
кэше строки, содержащей данные с полученным адресом, эта команда не
производит каких-либо операций. Команда dcbf аннулирует содержимое
выбранной строки кэша данных, устанавливая для нее состояние I. Если
перед этим строка имела состояние М, то предварительно ее содержимое
переписывается в ОЗУ. При выполнении команды dcbi аннулируется содержимое
строк с аналогичным содержимым в кэшах данных всех устройств системы.
1
ПРОЦЕССОРЫ ОБЩЕГО НАЗНАЧЕНИЯ И СИСТЕМЫ НА ИХ ОСНОВЕ
Так как при этом могут быть потеряны модифицированные данные, хранящиеся
в кэшах других процессоров, то команда dcbi выполняется только в режиме
супервизора (привилегированная команда, помечена символом "*" в табл.
2.77). Команда icbi производит аннулирование содержимого строки кэша
команд. При выполнении команды debt (возможен вариант мнемокода dcbtst)
из ОЗУ в кэш данных загружается строка, для которой устанавливается
состояние Е или S (если эта строка уже присутствует в кэшах других
устройств системы).
Полная очистка (аннулирование содержимого всех строк) кэшей команд или
данных реализуется путем записи соответствующего содержимого в регистр
HID0, которая производится с помощью команды mtspr, выполняемой в режиме
супервизора (см. табл. 2.71).
Устройства управления памятью IMMU, DMMU осуществляют трансляцию адреса
при выборке команд и данных, обеспечивая возможность блочной, сегментной
и страничной организации памяти. Кроме того, DMMU позволяет реализовать
специальный протокол DS для многобайтного обмена данными с внешними
устройствами. Работа IMMU, DMMU обеспечивается с помощью 8 пар регистров
Предыдущая << 1 .. 127 128 129 130 131 132 < 133 > 134 135 136 137 138 139 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed