Й.Янсен Курс цифровой электроники. Том 4. Микрокомпьютеры (1987) (1092084), страница 15
Текст из файла (страница 15)
Был рассмотрен ряд специальных терминов, которые связаны с этими структурами и становятся более содержательными при переходе к детальному описанию конкретных микроЭВМ. В качестве примера был выбран микропроцессор (МП) 8085А, разработанный фирмой 1п1е1. В настоящее время он изготавливается и поставляется на рынок большим числом различных фирм. На рис. 2.7 приведена блок-схема этого МП. Из нее видно, что основным модулем МП является АЛУ, т. е.
арифметико-логическое устройство, выполняющее различные операции по обработке данных. Ввод данных осуществляется с помощью аккумулятора А и регистра временного хранения. В процессе обработки чаще всего участвуют две величины, которые вводятся в два вышеуказанных регистра, находящиеся на входе АЛУ. Результат вычисления возвращается в аккумулятор А. Оба входных регистра могут загружаться из источника данных,присоединенного к шине данных.
Таким источником могут быть ы / МГ О о Ю С ~С х а с -~ Ю ь 'Ю а о С~ Ф Ю Ы о л Ю С4 ог с> а х ~о~ фо СР Е М й Ю з Е ~й Глава 2 внутренние регистры В, С, Р, Е, Н и Ь, устройство ввода-вывода и внешнее ЗУ. Внутренние регистры предназначены для хранения промежуточных результатов вычислений, т. е. выполняют роль стеллажей, используемых в организационно-производственных аналогах. Как данные, так и команды вводятся через шину данных.
Команды передаются во время цикла ввода команд и используются для обработки данных в течение исполнительного цикла. Требуемый порядок следования этих операций обеспечивает устройство управления, или контроллер МП. Команды, необходимые для передачи данных, находятся в наборе команд, применяемых в конкретном МП. Устройство управления не только управляет работой МП, но и запускает в определенные моменты времени ряд внешних устройств. К ним относятся внешнее ЗУ и порты ввода-вывода информации.
Например, если с помощью какой-либо команды требуется записать или прочитать информацию, находящуюся в определенной ячейке внешнего ЗУ, то устройство управления для выполнения соответствующей команды выбирает «подходящий» момент времени. Такие операции осуществляются с помощью команд ЮК(Ь) (запись) или КР(Ь) (чтение), одновременно с которыми на адресную шину поступает код адреса для поиска требуемой ячейки ЗУ.
Сигнал МП 10(Н)/М(Ь) сообшает, имеет ли отношение передача данных к ЗУ (М) или к портам ввода-вывода (1/0). Мы говорим о «подходящем» моменте времени, так как обращаемся к ЗУ не только для того, чтобы извлечь необходимые данные. Ряд других операций обращения к ЗУ будет рассмотрен ниже более подробно. С помощью внешнего сигнала Н01 Р(Н) (захват шины) можно «предписать» МП не пользоваться шинамиданных, адресов и управления, потому что мы хотим применить их для других целей. В результате буферы данных, адресов и управления освобождаются и МП переводится в состояние ожидания до тех пор, пока эти буферы не освободятся снова для передачи данных. МП всегда заканчивает команду НОЕВ сигналом Н1.РА(Н) (подтверждение захвата шин).
После приема запроса о передаче данных в ЗУ или в порты ввода-вывода МП находится в состоянии ожидания до тех пор, пока не получит сообщение о том, что требуемый регистр перешел в состояние готовности нли что требуемый адрес найден в ЗУ. Сообщение об этом поступает в МП через соответствующий управляемый вход в виде сигнала КЕАРУ(Н) (готовность). Этот вход связывает медленное внешнее ЗУ с быстрым МП, так как сигнал ЯЕАРУ заставляет МП ждать до тех пор, пока в ЗУ не закончится процесс выборки адресов. Время выборкинз 7З ЗУ можно всегда увеличить, чтобы успеть записать данные из ЗУ на соответствующую шину.
Кроме того, сигнал КЕАРУ сообщает об операции регенерации при использовании динамических ЗУПВ. Сигнал КЕЗ1Н (внутренний сброс) позволяет установить счетчик команд в нулевое состояние. В этом случае программа будет автоматически начинаться снова, если не приостановить повторный старт, например, с помощью внешнего сигнала НО-КЕАРУ. Сигнал сброса КЕЗ1Н после использования в МП преобразуется на выходе устройства управления в сигнал КЕЯОЫТ (внешний сброс) и его можно использовать, например, для сброса в нулевое состояние периферийных схем и внешних регистров. К входам Х1 и Х2 можно подключить кристалл кварца с собственной частотой порядка б МГц. Генератор синхросигналов, связанный с контроллером или устройством управления, определяет реальное быстродействие МП.
Этот генератор вырабатывает синхросигналы, необходимые для последовательного выполнения внутренних операций. МП снабжен внешними выводами, к которым вместо кристалла кварца можно присоединить КС-цепочку в качестве элемента, задающего требуемую частоту тактирования. Разумеется, длительность операций при использовании ЯС-цепочки фиксируется менее точно, однако для ряда применений это обстоятельство не создает особых затруднений.
Далее рассмотрим еще один выходной управляющий сигнал А1.Е(Н) (Аббгезз Ьа1сп ЕпаЫе — разрешение адресного режима). С помощью А1.Е часть информации шины адресов, а именно биты от АО до А7 включительно, выводится из МП по шинеданных. Это делается для более эффективного использования внешних выводов корпуса МП. Временное разделение (мультиплексирование) с помощью А(.Е позволяет выдать всю адресную информацию через шины адресов и данных с тем, чтобы по окончании действия АЬЕ снова использовать шину данных для передачи данных. Сигналы состояния ЗО(Н) и 81(Н) содержат информацию о состоянии МП.
Из таблицы, приведенной на рис. 2.8, видно, какие значения имеют сигналы 50 и 81, когда МП находится в различных рабочих состояниях. Эти сигналы в действительности указывают, в какой фазе находится устройство управления (контроллер) МП. Прерывание производится с помощью команды 1НТК(Н). Если МП закончил выполнение текущей команды, то он ответит на прерывание сигналом 1НТА(Ь) (подтверждение прерывания). Через линию КЗТ (повторный запуск) может поступить и внешний запрос на прерывание. Если МП подтвердит этот запрос, то одновременно с генерацией сигнала 1НТА произойдет ® переход к требуемой подпрограмме, т.
е. подпрограмме обслуживания соответствующего периферийного устройства для последующей обработки запроса прерывания. С другой стороны, чгсккс ~ и сигнал прерывания ТЙАР(Н) (преры- вание в непредвиденной ситуации) ныколкд ~ т обычно не маскируется, т. е. соответсткоманды вующий вход МП всегда находится в состоянии разрешения прерывания. Рис. 2.8. ИнфонманиЯ о сос- Прн наличии сигнала ТИАР могут тоянии, подаваемая на выводы со и я1 быть выполнены действия, необходимые, например, для сохранения результатов и перевода МП в режим НАСТ (останова). Таким образом, в случае появления сигнала ТИАР команда «разрешение прерывания» не требуется.
В нормальном режиме запроса на прерывание МП обычно находится в состоянии ожидания, которое можно инициировать командой Е1 (разрешение прерывания). Вывести МП из состояния ожидания можно с помощью команды И (запрет прерывания). МП 8085А располагает набором внешних контактов последовательного ввода и вывода информации, которые позволяют с помощью специальной программы вывести последовательно из МП параллельный набор битов или ввести в МП последовательный набор битов и преобразовать его в параллельный набор.
Такое преобразование требуется, если необходимо передавать данные по одной линии, например, в процессе обмена данными (см. т. 3, гл. 4). Для этой цели служат выводы МП 8085А, обозначенные 81Р (Н) и БОР (Н). Связь МП с внешними схемами осуществляется через буферы, которые обеспечивают эффективное управление схемами типа ТТЛШ. Кроме указанных выше регистров для временного хранения данных, в структурной схеме МП имеются регистр указателя стека и счетчик программ. Указатель стека сообщает, по какому адресу стекового ЗУ, т.
е. в зарезервированной части ЗУПВ, записан последний байт. Стековое ЗУ используетсядля быстрого извлечения одного нли нескольких байтов, не прибегая к явной адресации. В счетчике программ производится подсчет адресов команд программы во время выполнения вычислений. Инкрементор (декрементор) осуществляет автоматическое увеличение (уменьшение) содержимого указателя стека в зависимости от номера выполняемой команды. С регистром команд соединен дешифратор, предназначенный для выбора источников и прнемни- эвм Ч5 ков, а также операций АЛУ, которое управляется соответствующими тактовыми сигналами (машинными циклами), вырабатываемыми в устройстве управления.
2.10. Тактирование Команды МП (макрокоманды) состоят из различных «внутренних» специальных команд — микрокоманд, порядок выполнения которых зависит от типа команды. Этот порядок определяется внутренней управляющей схемой (контроллером), т. е. управляющим органом, реализованным в виде двоичного счетчика, который обычно работает в коде Грея, т.