Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник Микропроцессоры.doc
Скачиваний:
530
Добавлен:
13.05.2015
Размер:
2.99 Mб
Скачать
      1. Программируемые интервальные таймеры

На структурной схеме Рис. 9 .58показаны четыре 16-разрядных программируемых таймера контроллера 82380. По функционированию все таймеры идентичны своему предшественнику 82С54. Каждый таймер может работать в любом из шести различ­ных режимов несмотря на то, что для всех четырех таймеров используется один об­щий тактовый вход. Этот вход может быть не зависящим от системной тактовой ча­стоты. Микропроцессор 80386 может устанавливать и считывать текущее содержимое счетчика таймера в любой момент времени независимо от режима работы таймера. Выходы таймеров могут быть подключены к каким-нибудь системным функциональ­ным устройствам, что в целом может способствовать упрощению структуры системы.

Таймер 0 занимает особое положение. Он обычно служит для формирования прерываний по времени, и его выход заводится непосредственно на вход контрол­лера прерываний. Этот таймер не имеет выхода из контроллера 82380. С помощью таймера 1 ведется отсчет времени для формирования цикла регенерации.

Рис.9.58. Структура программируемых интервальных таймеров

Выход таймера 2 соединяется с каким-либо входом запроса прерывания для обеспечения других функций таймера. Выходы таймеров 1 и 2 могут использоваться для спе­циальных целей, а также для обобщенных целей таймера и счетчика.

      1. Контроллер регенерации динамического озу

На Рис. 9 .59 приведена структурная схема контроллера регенерации динамиче­ского ОЗУ 82380, в состав которого входят 24-разрядный счетчик адреса регенера­ции и логические схемы арбитража. Типовой цикл регенерации для шины микро­процессора 80386 включает только шесть тактов. На выходе таймера 1 периодиче­ски появляются запросы цикла регенерации, по которым контроллер выставляет за­прос доступа к системной шине с помощью сигнала HOLD. Если после этого мик­ропроцессор или другое ведущее устройство на шине подтверждает запрос, то кон­троллер регенерации динамического ОЗУ выполняет операцию чтения из памяти по адресу, содержащемуся на этот момент в регистре адреса регенерации. Одно­временно активизируется сигнал REF#, вызывающий выполнение регенерации вме­сто обыкновенного чтения памяти. Управление шиной возвращается микропроцес­сору в конце описанного цикла.

Запрос на доступ к шине от контроллера регенерации динамического ОЗУ имеет высший приоритет, поэтому он может прервать любой активный процесс, проис­ходящий с использованием ПДП.

Рис.9.59. Контроллер регенерации динамического ОЗУ

Такая организация работы позволяет контроллеру ПДП пересылать большие блоки данных, не влияя на функции по регенерации памяти. Это достигается тем, что контроллер регенерации динамического ОЗУ не целиком захватывает управление шиной, а как бы "скрадывает" циклы шины из процесса ПДП. При этом 24-разрядный счетчик адреса регенерации может увели­чиваться программно, чтобы изменялись используемая разрядность шины и способ организации памяти в виде банков.

      1. Генератор с состоянием ожидания

Структурная схема программируемого генератора 82380 с выходным сигналом READY (готовность) для шины микропроцессора 80386, называемого генератором с состоянием ожидания, представлена на Рис. 9 .60. Генератор с состоянием ожи­дания может быть активизирован любым периферийным устройством, в цикл ра­боты которого требуется ввести такты ожидания. По таким запросам генератор под­держивает входной сигнал READY микропроцессора в неактивном состоянии в те­чение предварительно определенного числа тактов шины. В генераторе имеется шесть программно доступных регистров состояния ожидания – по три для доступа к памяти и обращения к устройствам ввода-вывода. Любой из этих шести регистров может быть выбран с помощью двухразрядного сигнала выбора состояния ожидания и сигнала M/IO# от ведущего устройства на шине. В четырехразрядные регистры состояния ожидания могут быть записаны коды номеров состояний ожидания 0 – 15. Независимо от того, активный или нет генератор с состояниями ожидания, он постоянно отслеживает состояние микропроцессора или другого ведущего в данный момент устройства на шине.

Если ведущее устройство на шине находится в режиме конвейерной работы, то генератор вводит такты ожидания, число которых равно значению, записанному в один из шести выбранных регистров состояний ожидания. Если же ведущее уст­ройство работает в неконвейерном режиме, то в цикл шины вводится один такт ожидания. После сброса во все шесть регистров оказывается загружено значение FFH (разряды D7 — D4 и D3 — D0), что задает максимально возможное число тактов ожидания.

Любое периферийное устройство, которое может формировать свой собственный сигнал READY, может также запретить работу генератора с состояниями ожидания 82380, установив оба сигнала выбора регистров в состояние высокого уровня. Од­нако это не лишит генератор 82380 способности определить по состоянию конвей­ера число тактов ожидания в последующих циклах шины.