Регистр состояния машины - Machine state register
А регистр состояния машины (MSR) является одним из трех регистров управления процессом, присутствующих в PowerPC архитектура процессора.
Процессоров
Детали реализации регистра состояния машины будут отличаться от модели к модели. Ниже представлены две типичные реализации: 32-разрядная версия. Freescale e200z3 Ядро PowerPC и 64-битный IBM PowerPC.
e200z3 PowerPC ядро
Использование регистра состояния машины
Этот 32-битный регистр контролирует и / или сообщает о нескольких важных состояниях процессора.
| Мнемонический | Описание |
|---|---|
| UCLE | Включает / отключает пространство пользователя исполнение тайник инструкции по блокировке |
| SPE | Включает / отключает векторные инструкции |
| МЫ | Включает / отключает управление питанием |
| CE | Включает / отключает критические прерывает |
| EE | Включает / отключает внешний прерывает |
| PR | Определяет, включен ли процессор супервизор или пользовательский режим |
| FP | Определяет доступность оборудования плавающая точка единица измерения |
| МНЕ | Включает / отключает проверка машины прерывает |
| FE0 | Устанавливает режим исключения с плавающей запятой |
| DE | Включение / отключение прерываний отладки |
| FE1 | Устанавливает режим исключения с плавающей запятой |
| ЯВЛЯЕТСЯ | Устанавливает адресное пространство инструкции |
| DS | Устанавливает адресное пространство данных |
Чтение и запись регистра состояния машины
Содержимое реестра можно прочитать с помощью перейти из регистра состояния машины (mfmsr) инструкция и может быть изменена путем выполнения вернуться из прерывания (РФИ, rfci, рфди), системный вызов (sc) и перейти в регистр состояния машины (mtmsr) инструкции.
PowerPC
Использование регистра состояния машины
Этот 64-битный регистр контролирует и / или сообщает о нескольких важных состояниях процессора.
| Мнемонический | Описание |
|---|---|
| SF | Выбирает 32-битный / 64-битный режим |
| HV | Выбирает состояние гипервизора |
| EE | Включение / отключение внешних прерываний |
| PR | Выбирает привилегированное или проблемное состояние |
| FP | Отчеты о доступности операций с плавающей запятой |
| МНЕ | Включает / отключает прерывания проверки машины |
| FE0 | Выберите режим исключения режима с плавающей запятой |
| SE | Включает / отключает пошаговую трассировку |
| БЫТЬ | Включает / отключает трассировку веток |
| FE1 | Выберите режим исключения с плавающей запятой |
| ИК | Включение / отключение трансляции адресов команд |
| DR | Включение / отключение трансляции адресов данных |
| PMM | Знак монитора производительности |
| RI | Перечисляет, можно ли (не) восстановить прерывание |
| LE | Выбирает режим с прямым порядком байтов или прямым порядком байтов (не G5 ) |
Чтение и запись регистра состояния машины
Регистр состояния машины можно прочитать с помощью mfmsr инструкция и изменена с помощью mtmsr [d], RFID и hrfid инструкции.
Путаница с регистром для конкретной модели
Регистр состояния машины найден в архитектуре PowerPC и регистры для конкретных моделей нашел в IA-32 и x86 64 архитектуры выполняют аналогичные функции, и инициализм "MSR" может относиться к любой из них, между ними есть важные различия. Регистр состояния машины, представляющий собой единый регистр, обеспечивает крупномасштабное управление небольшим количеством функций машины. Напротив, в последних архитектурах IA-32 и x86_64 существуют от десятков до сотен регистров, зависящих от модели, и обеспечивают гораздо более тонкую детализацию как отчетов, так и управления состоянием машины. Термин "регистр состояния машины" не встречается в Intel и AMD документация; аналогично "регистр для конкретной модели" не появляется в IBM и Freescale документация.