приветствую создателей курса и благодарю за доступ к информации! понимаю, что это уже никто не исправит, но, возможно, будут следующие версии и было бы неплохо дать расшифровку сокращений имен регистров итд, дабы закрепить понимание их роли в общем процессе. |
Лекция 2: Регистровая структура универсального микропроцессора
Системные регистры
Системные регистры управляют функционированием микропроцессора в целом и режимами работы отдельных его блоков. Эти регистры доступны только в защищенном режиме для программ, имеющих максимальный уровень привилегий. Они включают в свой состав 2 группы регистров:
Регистр управления CR0 содержит биты, определяющие режим работы процессора:
- PE - разрешение защиты: установка PE = 1 переводит микропроцессор в защищенный режим;
- PG - включение страничной адресации памяти (при PG = 1 страничный механизм включен);
- CD, NW - управление режимами работы внутренней кэш-памяти ( CD = 1 - запрещение заполнения кэш-памяти; NW = 1 - запрет сквозной записи).
Ряд бит ( MP, EM, TS, NE ) управляют режимами работы FPU.
Регистр CR1 был зарезервирован для последующего развития. Однако начиная с МП Pentium в микропроцессорах появился регистр управления CR4, а регистр CR1 так и остался зарезервированным.
Регистр CR2 содержит линейный адрес, который вызвал страничную ошибку, например, отсутствие страницы в оперативной памяти или недостаточный уровень привилегий.
В регистре CR3 находится базовый адрес каталога таблицы страниц (старшие 20 разрядов), а также биты PCD и PWT, управляющие работой кэш-памяти при страничной адресации (при PCD = 1 загрузка содержимого страницы в кэш-память запрещена; при PWT = 1 реализуется режим сквозной записи, а при PWT = 0 - обратной записи).
Регистр CR4 содержит биты, обеспечивающие расширение функциональных возможностей микропроцессора, начиная с Pentium. В частности, он содержит следующие управляющие разряды:
- VME, PVI - управляют работой виртуальных прерываний;
- PAE - обеспечивает расширение физического адреса до 36 разрядов (при PAE = 1 ); PGE - определяет некоторые страницы (часто используемые или используемые несколькими процессорами) как глобальные (при PGE = 1 );
- PSE - расширяет размер адресуемых страниц до 4 Мбайт (при PSE = 1 ), при PSE = 0 сохраняет размер страницы 4 Кбайт.
Регистры системных адресов и системных сегментов представлены на рис. 2.4.
В их число входят GDTR - регистр глобальной таблицы дескрипторов и IDTR - регистр таблицы дескрипторов прерываний. В этих регистрах определяются базовый адрес и размер соответствующей таблицы. К
К этой группе относятся также LDTR - регистр локальной таблицы дескрипторов и TR - регистр задач. Регистры LTDR и TR представляют собой селекторы, которые указывают на положение дескрипторов, описывающих соответственно сегмент, содержащий локальную таблицу дескрипторов, и сегмент состояния задачи (Task State Segment - TSS).
Использование этих регистров в дальнейшем будет рассмотрено более подробно.
Регистры отладки и тестирования
32-разрядные регистры отладки ( DR0...DR7 ) имеют следующее назначение:
- DR0...DR3 - содержат линейные адреса 4 контрольных точек останова при отладке;
- DR4 и DR5 зарезервированы;
- DR6 - регистр состояния: показывает текущее состояние МП при останове в этих точках;
- DR7 - регистр управления: задает условия останова в контрольных точках. Регистры DR4 и DR5 не используются.
Регистры тестирования ( TR3...TR7 ) используются при тестировании кэш-памяти и буфера ассоциативной трансляции адресов страниц ( TLB ).
По мере развития архитектуры микропроцессора их количество расширилось и дополнилось новым содержанием. В частности, с помощью регистра TR12 можно запретить предсказание и трассировку ветвлений, параллельное выполнение инструкций и выполнить некоторые другие действия.
Краткие итоги. В лекции рассмотрены назначение и состав регистровой структуры универсального микропроцессора, во многом определяющие архитектурные особенности микропроцессора.