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

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

Александров Е.К., Грушвицкий Р.И., Купрянов М.С., Мартынов О.Е. Микропроцессорные системы — Спб.: Политехника, 2002. — 935 c.
ISBN 5-7325-0516-4
Скачать (прямая ссылка): mikroprocessorniesistemi2002.djvu
Предыдущая << 1 .. 390 391 392 393 394 395 < 396 > 397 398 399 400 401 402 .. 528 >> Следующая

регистра LC - в SSL, откуда оно извлекается только после окончания цикла
по инструкции ENDDO.
При выборке инструкции по адресу, содержащемуся в LA, проверяется
содержимое LC Если содержимое LC не равно единице, оно декрементируется и
следующая инструкция выбирается по адресу, находящемуся в верхней ячейке
стека. В противном случае PC инкрементируется, флаг цикла сбрасывается,
регистры LA и LC восстанавливаются из стека и продолжается нормальное
выполнение программы.
Регистр LC программно доступен, и выполнение цикла может быть прекращено
программным путем. Регистр LC также используется в инструкции REP.
Системный стек (SS). SS - отдельная внутренняя память размером 15 х 32
бита, разделенная на два блока: SSL и SSH. SSH сохраняет содержимое
программного счетчика, SSL - регистра статуса при вызовах подпрограмм и
длительных прерываниях. В стеке сохраняются также значения LA и LC при
выполнении программных циклов. Стек обеспечивает выполнение 15 длинных
прерываний, семи циклов DO, 15 вызовов подпрограмм. Если стек
переполняется, возникает немаскируемое прерывание - ошибка стека.
Значение PC теряется, что приводит к ошибке программы, выполняющейся,
когда возникло прерывание по переполнению стека.
Указатель стека (SP). 6-битный указатель стека определяет последнюю
занятую ячейку стека и состояние стека (потеря содержимого, пустой,
полный, переполнение). Формат регистра SP указан на рис. 6.21.
Указатель стека (Р0,Р1,Р2-биты 0-3). Показывает последнюю используемую
ячейку стека. После аппаратного сброса все биты равны нулю, что означает
- стек пуст.
Флаг ошибки стека (SE-бит 4). Показывает возникновение ошибки стека. Если
стек заполнен, указатель стека равен 001111, и любая операция, вызывающая
запись в стек, приведет к возникновению ошибки стека, т. е. SP будет
равен 010000. Аналогично, если SP равен 0, любая операция чтения из стека
приведет к возникновению ошибки стека. Флаг ошибки стека остается равным
единице, пока пользователь не сбросит его в "0".
Флаг потери содержимого (UF-бит 5). Устанавливается при потере
содержимого стека. Сбрасывается в "0" пользователем.
Остальные биты стека зарезервированы для будущих разработок.
Состояния процессора
DSP всегда находится в одном из пяти состояний: нормальное, обработка
исключения, сброс, ожидание и останов.
Нормальное состояние процессора связано с выполнением инструкций.
Описание выполнения инструкций приведено в описании системы инструкций.
Инструкции выполняются с использованием трехуровневого конвейера.
Состояние обработки исключения связано с прерываниями, которые
генерируются как внутренними устройствами DSP, так и поступают от внешних
источников.
Состояние сброса возникает при появлении сигнала активного уровня на
контакте RESET. В этом состоянии происходит сброс внутренних периферийных
устройств; регистры модификации устанавливаются в $FFFF; регистр уровней
приоритета прерываний очищается; регистр BCR устанавливается в $FFFF, что
добавляет 15 состояний ожидания ко всем обращениям к внешней памяти;
указатель стека очищается; биты режима
693
ПРОЦЕССОРЫ ЦИФРОВОЙ ОБРАБОТКИ СИГНАЛОВ
масштабирования, режима трассировки, флаг цикла и биты условий в SR
сбрасываются, биты маски прерываний в SR устанавливаются в "1"; бит
разрешения ПЗУ данных, бит задержки и бит стробирования памяти
сбрасываются. DSP не выходит из состояния сброса, пока на контакте RESET
сохраняется сигнал активного уровня. После выхода из состояния сброса
биты операционного режима в OMR загружаются извне по линиям MODA, MODB и
выполнение программы начинается с адреса $Е000 в памяти программ в
нормальном расширенном режиме или с адреса $0000 в остальных операционных
режимах.
Состояние ожидания - это состояние пониженного энергопотребления, в
которое процессор переходит при выполнении инструкции WAIT. В состоянии
ожидания запрещена внутренняя синхронизация всех устройств на кристалле,
за исключением внутренней периферии (генератор частоты работает). Все
внутренние процессы остановлены до тех пор, пока не поступит
немаскируемое прерывание или не будет произведен сброс.
Состояние останова - это состояние самого низкого энергопотребления, в
которое процессор переходит при выполнении инструкции STOP. В этом
состоянии генератор частоты отключен. При переходе в состояние останова
кристалл сбрасывает все прерывания от периферийных устройств и внешние
прерывания. Уровни приоритетов прерываний остаются такими же, как перед
выполнением инструкции STOP. Процессор остановлен до тех пор, пока не
появится сигнал низкого логического уровня на контакте ->IRQA или на
контакте -.RESET. Эти события включают генератор, и после стабилизации
частоты включается синхронизация всех устройств на кристалле. Период
стабилизации частоты определяется битом SD в OMR.
6.2.2. ПОРТА
Порт А может использоваться для расширения памяти или обычного
ввода/вывода. Шина данных порта А имеет разрядность 24 бита, шина адреса
Предыдущая << 1 .. 390 391 392 393 394 395 < 396 > 397 398 399 400 401 402 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

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

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed