Читаем Справочное пособие по цифровой электронике полностью

Стек работает по принципу «последний пришел — первый ушел» (LIFO). Данные включаются («проталкиваются») в стек, а затем извлекаются («выталкиваются») из него. Указатель стека SP следит за положением стека, т. е. содержит адрес последней использованной ячейки стека. В некоторых микропроцессорах, например в микропроцессоре 6809, имеются два независимых указателя стека — системный указатель стека SSP и пользовательский указатель стека USР.

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

Упрощенная внутренняя архитектура типичного 8-битного микропроцессора показана на рис. 5.1.

Рис. 5.1.Упрощенная внутренняя архитектура типичного 8-битного микропроцессора.

Отметим, что линии внешней шины управления изолированы от линий внутренней шины с помощью буферов и основные внутренние элементы связаны быстродействующей внутренней шиной данных.

5.2. Линии управления

Рассмотрим вкратце функции наиболее важных внешних линий управления, которые имеются в большинстве микропроцессоров.

Считывание/запись. На линии считывания/записи R/W¯ действует сигнал низкого уровня, когда микропроцессор выполняет операцию записи, и сигнал высокого уровня в операции считывания. В некоторых микропроцессорах, например в Z80, имеются отдельные линии считывания READ и записи WRITE.

Запрос прерывания. На входной линии запроса прерывания  или  внешнее устройство формирует сигнал низкого уровня, обращая «внимание» микропроцессора на этот сигнал. Если флажок прерывания сброшен (логический 0), запрос воспринимается и микропроцессор прерывает обычную обработку и переходит к выполнению нужной процедуры прерывания.

Немаскируемое прерывание. Реакция на обычный запрос прерывания ( или ) определяется флажком прерывания, поэтому прерывание может быть замаскировано. В программу вводятся команды, которые устанавливают и сбрасывают флажок прерывания и, следовательно, разрешают или запрещают прерывания. Такой способ позволяет гибко реагировать на прерывания — мы сами определяем, воспринимаются они или игнорируются. Однако в некоторых ситуациях требуется, чтобы прерывание обслуживалось независимо от текущих действий микропроцессора. Для этой цели предусмотрена отдельная линия немаскируемого прерывания . Когда на ней появляется сигнал низкого уровня, выполнение программы прерывается независимо от состояния флажка прерывания, т. е. независимо от того, разрешены прерывания или запрещены.

Сброс. Сигнал низкого уровня на входной линии сброса  применяется для инициализации системы, т. е. приведения ее в известное состояние, до обычного выполнения программы. При активном сигнале сброса программный счетчик PC переводится в определенное состояние (например, в него загружается нуль или конкретный адресный вектор) и прерывания запрещаются.

Выполняются и другие внутренние операции, зависящие от типа микропроцессора.

Синхронизация. Для упорядочивания передач данных внутри микропроцессора необходимо синхронизировать их специальными сигналами. Они формируются либо внешним генератором (рис. 5.2), либо аналогичным внутренним генератором. Для поддержания точности и стабильности сигналов синхронизации обычно применяется кварцевый осциллятор; диапазон частоты синхронизации составляет от 1 до 8 МГц.

Рис. 5.2.Типичная схема синхронизации.

Такт синхронизации (Т-состояние) является в микропроцессоре основным временным интервалом. Машинный цикл (М-цикл) — это минимальная неделимая единица действий микропроцессора. Обычно он состоит из 3–5 тактов синхронизации. Командный цикл, включающий в себя выборку, дешифрование и выполнение команды, обычно требует от 1 до 5 машинных циклов.

Оценим реальные временные интервалы, о которых идет речь. Предположим, что микропроцессор Z80 работает с частотой синхронизации 4 МГц. Тогда такт синхронизации (Т-состояние) соответствует 250 нс. Продолжительность машинного цикла (М-цикла) составляет от 0,75 до 1,25 мкс, а командного цикла (в зависимости от команды) — от 1,25 до 6,25 мкс. Другими словами, микропроцессор может выполнить от 160000 до 800 000 команд в секунду!

5.3. Микропроцессорные системы

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

Перейти на страницу:

Похожие книги

100 способов избежать аварии. Спецкурс для водителей категории В
100 способов избежать аварии. Спецкурс для водителей категории В

Сколько раз, сидя перед экраном телевизора, вы вздрагивали, услышав визг тормозов? К сожалению, со стороны пассажирского сиденья он звучит еще страшнее. Все мы прекрасно знаем, что, садясь за руль, мы несем ответственность не только за себя и своих спутников, но и за всех участников дорожного движения.Так как же вести себя, если вы понимаете, что ситуация вышла из-под контроля и велика вероятность аварии?Александр Каминский, изучив часто случающиеся аварии, на страницах своей книги поделился опытом и секретами, как их избежать, а также подробно описал экстренные действия во время нештатных ситуаций.Книга написана живым и доступным языком и предназначена для широкого круга автовладельцев с различным стажем вождения. Желаем вам приятного чтения и надеемся, что чужой опыт, описанный в этой интересной книге, никогда не станет вашим!

Александр Юрьевич Каминский

Автомобили и ПДД / Техника