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

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

Александров Е.К., Грушвицкий Р.И., Купрянов М.С., Мартынов О.Е. Микропроцессорные системы — Спб.: Политехника, 2002. — 935 c.
ISBN 5-7325-0516-4
Скачать (прямая ссылка): mikroprocessorniesistemi2002.djvu
Предыдущая << 1 .. 116 117 118 119 120 121 < 122 > 123 124 125 126 127 128 .. 528 >> Следующая

статический (при Н29 = 0) или динамический (при Н29 = 1) способ
предсказания дальнейшего хода программы.
Регистр PVR содержит коды, указывающие тип микропроцессора и его
модификацию, которые записываются в процессе изготовления микросхемы и
затем могут только считываться.
0 12 13 14 15
Резервировано | PUW I - I ele
- I PR I FP J ME I FEO I SE I BE I FE1 I - I EP | IT | DT | PM |
RE | LE
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Рис. 2.69. Формат содержимого регистра управления процессора MSR
ПРОЦЕССОРЫ ОБЩЕГО НАЗНАЧЕНИЯ И СИСТЕМЫ НА ИХ ОСНОВЕ
Отдельная группа регистров используется в процессе обслуживания
исключений. В эту группу входят регистры: DAR, хранящий адрес операнда,
выборка которого вызвала исключение; DSISR, содержащий код команды,
вызвавшей исключение; SRRO, SRR1, в которые заносятся адрес следующей
команды и текущее содержимое регистра MSR для возврата к основной
программе после обслуживания исключения. Микропроцессор имеет также
четыре регистра SPRGO-4, которые обычно служат для хранения адресов,
используемых подпрограммой обработки исключения.
К фуппе вспомогательных регистров относятся регистры: декремента DEC,
базового времени ТВ, адресов останова в контрольной точке IABR, DABR,
идентификации PIR, а также регистр EAR, используемый для обращения к
внешним устройствам с помощью специальных команд eciwx, ecowx.
Регистр DEC работает как вычитающий счетчик с частотой, равной 1/4 от
тактовой частоты Ft. Когда его содержимое становится равным нулю,
формируется запрос исключения. Таким образом, можно использовать регистр
DEC для реализации периодических прерываний.
Регистр PIR содержит 4-разрядный код идентификации PID, определяющий
номер микропроцессора в мультипроцессорных системах.
Таймер базового времени ТВ представляет собой 64-разрядный счетчик,
переключающийся с частотой Ft. Его содержимое может записываться и
считываться путем обращения к 32-разрядным регистрам TBU (младшие 32
разряда) и TBL (старшие 32 разряда). Отметим, что этот регистр доступен
также в режиме пользователя, но только для чтения его содержимого.
Регистр IABR содержит адрес команды, а регистр DABR - адрес операнда, при
обращении к которым реализуется исключение останова в контрольной точке.
Кроме того, в состав модели супервизора входят пять регистров (MMCRO,
РМС1, РМС2, SDA, SIA), которые используются для контроля эффективности
работы микропроцессора. В зависимости от значения битов PM, PR в MSR и
содержимого регистра управления MMCR0 в регистры РМС1, РМС2 при работе
процессора заносятся такие показатели, как число выполненных циклов,
число команд, завершившихся в данном цикле, общее количество выполненных
ветвлений, число неправильно предсказанных ветвлений, число кэш -
промахов и др. Общее число таких контролируемых параметров составляет 46.
Эти данные позволяют программисту оценить эффективность программного
обеспечения и оптимизировать его в процессе отладки.
При возникновении исключений их вектора (начальные адреса подпрограмм
обслуживания) выбираются из таблицы, базовый адрес которой определяется
значением бита ЕР в регистре MSR (рис. 2.68, а). Виды исключений и
относительные адреса соответствующих векторов приведены в табл. 2.64.
Отдельные виды исключений маскируются путем установки в нуль битов ЕЕ,
SE, BE, ME в регистре MSR. При реализации большинства исключений в
регистр SRR0 заносится адрес следующей команды программы, обеспечивающий
возврат к ее выполнению после обслуживания исключения, а в регистр SRR1 -
текущее содержимое MSR. После выполнения подпрограммы обслуживания
команда возврата из исключения rfi производит восстановление содержимого
программного счетчика и регистра состояния MSR из SRRO, SRR1.
При исключениях типа "системный сброс", "контроль процессора" в регистре
SRR0 сохраняется ранее записанное содержимое. Поэтому после их
обслуживания можно обеспечить переход к заданной команде, адрес которой
предварительно заносится в SRR0. В регистре SRR1 при исключении "контроль
процессора" отдельные биты указывают на поступление сигналов ТЕМ = О,
MCF*# = 0, нарушение четности при обращениях к кэшам команд или данных,
при выборке команд или данных из внешней памяти. Анализ содержимого SRR1
RISC-МИКРОПРОЦЕССОРЫ И RISC-МИКРОКОНТРОЛЛЕРЫ СЕМЕЙСТВ POWERPC И COLDFIRE
позволяет в этом случае определить причину исключения. Если исключение
"контроль процессора" замаскировано (в регистре MSR бит ME = 0), то
микропроцессор останавливает свою работу, выдавая внешний сигнал
контрольной остановки CKSTP - OUT# = 0. При исключениях типа "ошибка
выбора данных", "нарушение выравнивания" в регистр DAR заносится код
выполнявшейся команды, а в регистр DSISR - адрес операнда, выборка
которого вызвала исключение.
Микропроцессор МРС604 имеет суперскалярную структуру (рис. 2.70), которая
содержит шесть параллельно работающих исполнительных устройств: блок
обработки ветвлений BPU, два устройства для выполнения простых
Предыдущая << 1 .. 116 117 118 119 120 121 < 122 > 123 124 125 126 127 128 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

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

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed