![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Блок управления и синхронизации
Вообще говоря, микропроцессор состоит из триггеров и комбинационных вентилей и работает как синхронная последовательностная схема. Триггеры всех регистров и флажков микропроцессора получают синхроимпульсы по общей линии от внешнего генератора. Поэтому любые изменения содержимого регистров или флажков могут происходить лишь в строго определенные моменты времени. Новые состояния определяются комбинационными схемами по текущим состояниям триггеров и флажков, а также по значениям внешних сигналов. Общая схема работы показана на рис. 4.3. Комбинационные схемы выполняют функции, связанные с передачей данных между регистрами, с обработкой данных, формированием информации о состоянии, выбором пути при передачах управления и т. п.
Рис.4.3. Общая схема работы микропроцессора
Поскольку некоторые из этих функций довольно сложны, реализующие их комбинационные схемы оказываются многоуровневыми и, следовательно, дают заметные задержки при распространении сигнала. Частота синхроимпульсов выбирается такой, чтобы в интервале между импульсами успевали переключиться триггеры и сработать комбинационные схемы в расчете на самую большую задержку. На рис. 4.3. показаны также и внешние по отношению к микропроцессору компоненты. В их число входят запоминающие устройства и устройства ввода/вывода. Информация между внешними компонентами и микропроцессором передается по шинам также в синхронном режиме. В нашем микропроцессоре частота от тактового генератора подается на входную управляющую линию «такт». На обмен данными с внешним устройством уходит два такта, т. е. два периода импульсов синхронизации. В них входит и время срабатывания шин, и время отклика внешней компоненты. Поскольку шины участвуют во всех внешних обменах, именно они фактически оказываются «узким местом», ограничивающим быстродействие микропроцессора. Поэтому вся синхронизация в микропроцессоре строится вокруг внешних обменов. Последовательность синхронизирующих импульсов разбивается на так называемые машинные циклы, по три такта в каждом цикле. При работе микропроцессора в каждом машинном цикле происходит один внешний обмен. Первый и второй такты тратятся на обмен и иногда на обработку данных; третий такт весь выделяется для той переработки данных, которую нужно выполнить между последовательными внешними обменами. При всех внешних обменах используются шины адресов и данных. Передачи данных делятся на два класса: входные и выходные (по отношению к микропроцессору). Каждый класс характеризуется своими временными диаграммами сигналов на шинах. Выходные обмены бывают двух типов. Обмены первого типа, в которых участвует главная память, называются записью; второго, - в которых участвует устройство вывода, называются выводом. В классе входных обменов три типа. Два из них называются чтением и вводом, и в них участвуют соответственно главная память и устройство ввода. Третий тип связан с прерываниями. Четыре выходные управляющие шины — «запись», «вывод», «чтение» и «ввод» — служат для задания типа и момента обмена. На рис. 4.4 (а) приведены временные диаграммы сигналов за машинный цикл, в котором выполняется выходной обмен. Микропроцессор задает как состояние адресной шины, подавая на нее либо 16-разрядный адрес памяти для операции записи, либо 8-разрядный код устройства для операции вывода, так и состояние шины данных.
Рис.4.4 Временные диаграммы обменов в иллюстративном микропроцессоре, (а) Диаграмма выходных обменов, (б) Диаграмма входных обменов
Предполагается, что информация на шинах правильно установлена и неизменна, от переднего фронта импульса T1 до переднего фронта импульса Тз). При операции записи импульс на управляющую линию «запись» подается одновременно с Т2, и он используется для стробирования передачи содержимого шины данных в ячейку главной памяти с адресом, заданным на адресной шине. При операции вывода импульс, также одновременно с Т2, подается на управляющую линию «вывод» и используется для стробирования передачи содержимого шины данных в регистр устройства вывода, код которого задан на младшей половине адресной шины. На рис. 4.4(б) показаны временные диаграммы для входных обменов. Содержимое адресной шины задается в те же моменты и теми же способами, что и для выходных обменов. Содержимое шины данных на этот раз определяется внешним компонентом. Микропроцессор в интервале между задним фронтом Т1 и передним фронтом Т3 устанавливает логическую 1 на управляющую линию «чтение» или «ввод», и это служит запросом к внешнему компоненту поместить данные на шину данных. Линия «чтение» используется главной памятью, а линия «ввод» — устройствами ввода. В обоих случаях предполагается, что информация на шине данных достоверна между передними фронтами импульсов Т2 и Т3, и стробирование передачи ее на соответствующий регистр микропроцессора выполняется одновременно с задним фронтом Т2. Кроме рассмотренных выше управляющих линий, существует еще восемь: Пуск, Сброс, Стоп, Синхр, Прер, ППрер, ПДП и ППДП. Четыре последние относятся к прерываниям программы и прямому доступу в память. Здесь мы остановимся на первых четырех. «Пуск» — это входная линия, которая устанавливает режим автоматической работы микропроцессора. А именно, появление импульса в этой линии приводит к тому, что процессор по первому же синхроимпульсу начнет выполнять программу с той команды, адрес которой находился на счетчике команд. «Сброс» — это входная линия, с помощью которой микропроцессор устанавливается в начальное состояние. В частности, по импульсу в линии «сброс» прекращается выполнение программы, счетчик команд устанавливается в нуль, а флажки прерываний сбрасываются. «Стоп» — это выходная линия, на которой поддерживается состояние логической 1 все время, пока микропроцессор не выполняет программы (остановлен). И наконец, «Синхр» — это выходная линия, на которую подается импульс одновременно с третьим синхроимпульсом каждого машинного цикла и которая используется в некоторых случаях для согласования работы некоторых внешних компонентов с внутренним машинным циклом микропроцессора.
|