Проектирование соединения УСО с микропроцессором
Соединение УСО с микропроцессором представляет собой внутреннюю магистраль, состоящую из шины адреса, шины данных и шины управления. Проблема заключается в том, что во многих микропроцессорах шины адреса и данных мультиплексированы, то есть для передачи адреса и данных используются одни и те же линии с разделением во времени. На приведенной на рис. 1 временной диаграмме представлен цикл асинхронного обмена по мультиплексированной шине адреса данных (A/D).
Рис. 1.
Из временной диаграммы видно, что адрес и данные передаются в разные моменты времени по одним и тем же линиям A/D. Однако вспомогательные микросхемы, используемые в УСО, а также запоминающее устройство требуют присутствия адресной информации на своих входах в течение всего цикла обмена. К тому же они имеют различные входы для адреса и данных. Следовательно, необходимо выполнить "разделение" мультиплексированной шины адреса/данных на шину адреса (на которой адрес будет присутствовать в течение всего цикла обмена) и шину данных. Очевидно, этим должна заниматься специально разработанная схема, называемая схемой демультиплексирования (рис. 2).
Рис. 2.
Попытаемся понять, что должна делать схема демультиплексирования. С одной стороны, она должна "разделить" адрес и данные. То есть в момент, когда по мультиплексированной шине адреса-данных передается адрес (ALE=1), она должна быть соединена с шиной адреса, в момент передачи данных (DEN=0) — с шиной данных. Таким образом, схема демультиплексирования должна выполнять роль своеобразного "переключателя", подключающего мультиплексированную шину адреса-данных микропроцессора к шине адреса или шине данных. С другой стороны, адрес должен находиться на шине адреса в течение всего цикла обмена. Следовательно, он должен быть где-то "запомнен", например, в буферном регистре.
На рис. 3 представлена обобщенная функциональная схема схемы демультиплексирования.
Рис. 3.
Буферный регистр обеспечивает "формирование" шины адреса, запоминая (защелкивая) адрес по сигналу ALE. Шинный формирователь обеспечивает "формирование" шины данных, выполняя функции усилителя с возможностью отключения шины данных от микропроцессора на время передачи адреса. Рассмотрим функционирование схемы демультиплексирования более подробно.
Обратимся к рис. 1. В такте 1 цикла обмена происходит выдача адреса на мультиплексированную шину адреса-данных, что сопровождается стробирующим сигналом "разрешение защелкивания адреса" ALE. Сигнал ALE подается на вход STB буферного регистра, адрес поступает с мультиплексированной шины адреса-данных на входы буферного регистра (рис. 4).
Рис. 4.
Поскольку сигнал DEN все это время находится в неактивном состоянии (логической единицы), выходы шинного формирователя находятся в Z–состоянии и адрес не может пройти на шину данных.
По заднему фронту сигнала ALE (в конце 1-го такта) происходит запоминание адреса в буферном регистре.
В такте 3 цикла обмена (см. рис. 1) происходит собственно передача данных, то есть мультиплексированная шина адреса-данных должна быть "соединена" с шиной данных. Это происходит за счет того, что сигнал DEN, находящийся в этот момент в состоянии логического нуля, подается на вход OE шинного формирователя и "отпирает" его — шинный формирователь работает в режиме усилителя, направление передачи данных определяется сигналом DT/R, идущим от микропроцессора (рис. 5).
Рис. 5.
Обратите внимание, что все это время на шине адреса продолжает находиться адрес, "защелкнутый" в буферном регистре. Так как сигнал, подаваемый на вход буферного регистра, находится в состоянии логического нуля, передающиеся по мультиплексированной шины адреса-данных данные не поступают в буферный регистр и не "портят" находящуюся там адресную информацию.
Построенная по такому принципу схема демультиплексирования обеспечивает решение поставленной задачи: "разделение" адреса и данных и обеспечения наличия адреса на шине адреса в течение всего цикла обмена. Наличие разделенных шин адреса и данных позволяет выполнять подключение к ним устройств, входящих в УСО.
Дата добавления: 2019-02-08; просмотров: 570;