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

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

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

другой бит в регистре DR6.
BD - отказ при обращении к регистрам отладки при установленном бите GD в
регистре DR7. Значение BD = 1 устанавливается, если исключение #DB
происходит из-за попытки обратиться к регистрам отладки, когда установлен
бит GD в регистре управления отладкой DR7. Перед передачей управления
обработчику исключения #DB бит GD в регистре управления отладкой DR7
сбрасывается в "О". Это дает возможность обработчику исключения #DB
обращаться к регистрам отладки.
В/ - останов в i-й контрольной точке. Четыре бита индикации останова
соответствуют четырем регистрам DR0-DR3. Значение В/ = 1 устанавливается
при выполнении условий, определенных регистром DR/ и полями LEN/, R/W/ в
регистре DR7. Биты В/ устанавливаются в "1" даже в том случае, когда
соответствующая точка останова не разрешена с помощью битов UIGi в
регистре DR7. Если одновременно выполняются условия для нескольких точек
останова и хотя бы одна из этих точек останова разрешена, то реализуется
исключение #DB. При этом значения битов В/ = 1 будут установлены для всех
точек останова.
Биты регистра DR6 устанавливаются в "1" аппаратно при реализации
соответствующих исключений. Сброс этих битов в нулевое значение
выполняется программно, путем загрузки нового содержимого в регистр DR6.
Эта процедура осуществляется программой обработки исключения #DB, которая
перед возвратом к исходной программе должна очистить регистр DR6,
установив значение "О" для всех битов.
Поддержка отладки с помощью MSR-регистров. Процессоры семейства Р6
содержат пять MSR регистров, которые предоставляют дополнительные
возможности отладки: DebugCtlMSR (адрес 1D9h), LastBranchTolP (адрес
1DCh), LastBranchFromlP (адрес 1DBh), LastExceptionTolP (адрес 1DEh) и
LastExceptionFromlP (адрес 1DDh).
На рис. 2.64 приведен формат содержимого регистра DebugCtlMSR, с помощью
которого производится управление режимом отладки. Его отдельные биты
имеют следующее назначение:
BTF-бит разрешения пошаговых ветвлений. Когда значение BTF = 1, процессор
интерпретирует значение признака TF = 1 в регистре EFLAGS как "пошаговые
ветвления", а не "пошаговые команды". Это означает, что исключение #DB
будет генерироваться только при обнаружении ветвления, прерывания или
исключения. Бит BTF автоматически устанавливается в "О" перед передачей
управления обработчику исключения #DB.
31 7 6 5 4 3 2 1 0
Резервировано TR PB3 РВ2 РВ1 РВО BTF LBR
Рис. 2.64. Формат содержимого регистра DebugCtlMSR
РЕАЛИЗАЦИЯ ПРЕРЫВАНИЙ И ИСКЛЮЧЕНИЙ. ОБЕСПЕЧЕНИЕ ТЕСТИРОВАНИЯ И ОТЛАДКИ
PBi - биты разрешения выдачи внешних сигналов при останове в контрольных
точках. Когда бит Pbi = 1, то на соответствующем выходе процессора
устанавливается сигнал BPi# = 0 при останове в контрольной точке,
определенной регистром DRi. Когда значение битов PBi = 0, то выводы BPi#
используются для вывода данных о мониторинге производительности
процессора.
TR - бит разрешения выдачи сообщений о трассировке ветвлений. Если
установлено значение TR=1, то процессор при выполнении ветвления,
прерывания или исключения выдает на системную шину адрес исходной команды
и команды, которой передается управление. Трассировка ветвлений приводит
к снижению производительности процессора, так как о каждом ветвлении
выполняется сообщение по системной шине.
LBR - бит разрешения записи информации о ветвлениях. При установке
значения LBR = 1 процессор фиксирует все передачи управления. Когда
происходит ветвление, процессор заносит в регистр LastBranchFromlP адрес
команды ветвления, а в регистр LastBranchTolP - адрес самого перехода.
Если реализуется прерывание или исключение (кроме исключения #DB),
процессор копирует значение регистров LastBranchFromlP и LastBranchTolP в
регистры LastExceptionFromlP и LastExceptionTolP соответственно. Затем
адрес прерванной команды заносится в регистр LastBranchFromlP, а адрес
вызываемого обработчика - в регистр LastBranchTolP. Бит LBR автоматически
устанавливается в "О" перед передачей управления обработчику исключения
#DB.
Таким образом, использование отладочных MSR-регистров обеспечивает
дополнительные возможности контроля выполнения программы в процессе ее
отладки.
Режим зондовой отладки. Этот способ отладки реализуется с помощью
тестового пор-, та ТАР, который служит для тестирования процессора и
подключенных к нему устройств системы. Специальный режим "зондовой"
отладки (Probe Mode) позволяет использовать порт ТАР для ввода команд и
данных, чтения и записи содержимого всех внутренних регистров процессора.
С помощью этого режима можно обеспечить выполнение отлаживаемой
программы, контролируя и корректируя содержимое регистров.
2.8.4. РЕАЛИЗАЦИЯ ТЕСТИРОВАНИЯ И КОНТРОЛЯ ФУНКЦИОНИРОВАНИЯ
Характерной особенностью современных процессоров является размещение на
кристалле специальных средств, облегчающих процедуру их тестирования и
контроля. Для процессоров семейства Р6 реализуются следующие варианты
тестирования и контроля:
Предыдущая << 1 .. 110 111 112 113 114 115 < 116 > 117 118 119 120 121 122 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

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

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed