Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Блок управления и синхронизации




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

Новые состояния определяются комбинационными схемами по текущим состояниям триггеров и флажков, а также по значениям внешних сигналов. Общая схема работы показана на рис. 4.3.

Комби­национные схемы выполняют функции, связанные с передачей дан­ных между регистрами, с обработкой данных, формированием инфор­мации о состоянии, выбором пути при передачах управления и т. п.

 

Рис.4.3. Общая схема работы микропроцессора

 

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

На рис. 4.3. показаны также и внешние по отношению к микро­процессору компоненты. В их число входят запоминающие устройства и устройства ввода/вывода. Информация между внешними компонен­тами и микропроцессором передается по шинам также в синхронном режиме.

В нашем микропроцессоре частота от тактового генератора по­дается на входную управляющую линию «такт». На обмен данными с внешним устройством уходит два такта, т. е. два периода импульсов синхронизации. В них входит и время срабатывания шин, и время отклика внешней компоненты. Поскольку шины участвуют во всех внешних обменах, именно они фактически оказываются «узким мес­том», ограничивающим быстродействие микропроцессора. Поэтому вся синхронизация в микропроцессоре строится вокруг внешних обме­нов.

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

При всех внешних обменах используются шины адресов и данных. Передачи данных делятся на два класса: входные и выходные (по от­ношению к микропроцессору). Каждый класс характеризуется своими временными диаграммами сигналов на шинах. Выходные обмены бывают двух типов. Обмены первого типа, в которых участвует глав­ная память, называются записью; второго, - в которых участвует устройство вывода, называются выводом. В классе входных обменов три типа. Два из них называются чтением и вводом, и в них участвуют соответственно главная память и устройство ввода. Третий тип свя­зан с прерываниями.

Четыре выходные управляющие шины — «запись», «вывод», «чте­ние» и «ввод» — служат для задания типа и момента обмена. На рис. 4.4 (а) приведены временные диаграммы сигналов за машинный цикл, в котором выполняется выходной обмен.

Микропроцессор за­дает как состояние адресной шины, подавая на нее либо 16-разрядный адрес памяти для операции записи, либо 8-разрядный код устройства для операции вывода, так и состояние шины данных.

 

 

Рис.4.4 Временные диаграммы обменов в иллюстративном микропроцессоре, (а) Диа­грамма выходных обменов,

(б) Диаграмма входных обменов

 

Предполагается, что информация на шинах правильно установ­лена и неизменна, от переднего фронта импульса T1 до переднего фронта импульса Тз). При операции записи импульс на управляющую линию «запись» подается одновременно с Т2, и он используется для стробирования передачи содержимого шины данных в ячейку главной памяти с адресом, заданным на адресной шине. При операции вывода импульс, также одновременно с Т2, подается на управляющую ли­нию «вывод» и используется для стробирования передачи содержимого шины данных в регистр устройства вывода, код которого задан на младшей половине адресной шины.

На рис. 4.4(б) показаны временные диаграммы для входных обме­нов. Содержимое адресной шины задается в те же моменты и теми же способами, что и для выходных обменов. Содержимое шины данных на этот раз определяется внешним компонентом. Микропроцессор в интервале между задним фронтом Т1 и передним фронтом Т3 уста­навливает логическую 1 на управляющую линию «чтение» или «ввод», и это служит запросом к внешнему компоненту поместить данные на шину данных.

Линия «чтение» используется главной памятью, а линия «ввод» — устройствами ввода. В обоих случаях предполагается, что информация на шине данных достоверна между передними фронтами импульсов Т2 и Т3, и стробирование передачи ее на соответствующий регистр микропроцессора выполняется одновременно с задним фронтом Т2.

Кроме рассмотренных выше управляющих линий, существует еще восемь: Пуск, Сброс, Стоп, Синхр, Прер, ППрер, ПДП и ППДП. Четыре последние относятся к прерываниям программы и прямому доступу в память. Здесь мы остано­вимся на первых четырех. «Пуск» — это входная линия, которая устанавливает режим автоматической работы микропроцессора. А именно, появление импульса в этой линии приводит к тому, что про­цессор по первому же синхроимпульсу начнет выполнять программу с той команды, адрес которой находился на счетчике команд.

«Сброс» — это входная линия, с помощью которой микропроцессор устанавливается в начальное состояние. В частности, по импульсу в линии «сброс» прекращается выполнение программы, счетчик команд устанавливается в нуль, а флажки прерываний сбрасыва­ются. «Стоп» — это выходная линия, на которой поддерживается состояние логической 1 все время, пока микропроцессор не выполняет программы (остановлен). И наконец, «Синхр» — это выходная линия, на которую подается импульс одновременно с третьим синхроимпуль­сом каждого машинного цикла и которая используется в некоторых случаях для согласования работы некоторых внешних компонентов с внутренним машинным циклом микропроцессора.

 

 

Система команд

Обычно микропроцессор выполняет команды из некоторого фик­сированного набора, называемого системой команд. Разные микро­процессоры имеют различные системы команд. Детальное описание системы команд нашего иллюстративного микропроцессора приведено в табл. 4.1 и 4.2. Для каждой команды приводится ее символическое обозначение, формат, а также символическое и словесное описание выполняемого действия. Никаких других команд наш микропроцес­сор выполнять не может, следовательно, решение любой задачи должно быть представлено в виде последовательности этих команд.

Формат каждой команды в табл. 4.2 полностью определяет пред­ставление команды в памяти компьютера. Таким образом, команда в памяти хранится как последовательность из нулей и единиц. С дру­гой стороны, для человека много удобнее символические обозначения. Поэтому при написании программ можно пользоваться символиче­ской формой, преобразуя ее в машинный двоичный формат непосредст­венно перед вводом в машину. Во всех наших описаниях мы также для удобства будем пользоваться символической формой представле­ния команд.

 

 

Фаза выборки и дешифрации

Обычно команды выполняются в последо­вательном порядке. Будем предполагать, что все программы начи­наются с команды в ячейке 000016. Время, нужное, чтобы прочитать команду из памяти, декодировать ее и выполнить, называется командным циклом. Ввиду того что команды могут состоять из одного, двух и трех байтов и что время их выполнения может быть разным, команд­ный цикл не является постоянной величиной. Следовательно, нам необходима.некоторая меньшая единица времени. В предыдущем разделе такая единица была введена в виде машинного цикла, состоя­щего из трех тактов синхронизации.

Таблица 4.1

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...