Минаев Е.И. - Основы радиоэлектронники (1266569), страница 75
Текст из файла (страница 75)
15.19. Формат команды безус- ловного перехода 374 ших. Например, первоначальное число 11101101 при циклическом сдвиге вправо на две позиции становится равным 01111011. Команды перехода и вызова подпрограмм. Такие команды расширяют возможности микропроцессора, так как позволяют изменять последовательность выполнения команд программы 124). Простейшей командой управления программой является команда безусловного перехода ((МР).
Формат показан на рис. 15.10. По команде в регистр адреса команд ЦП автоматически загружается адрес ячейки памяти, указанный в команде, и происходит переход в другую точку программы. По указанному адресу производятся выборка команды и ее выполнение. Одна за другой выполняются команды новой последовательности до тех пор, пока не будет задана команда нового перехода или возврата кпрежней программе. Кроме команды безусловного перехода в микропроцессорных системах применяются команды условного перехода, Они определяют последующее направление выполнения программы при выполнении заданного командой условия.
Это условие задается кодом операции команды. Пример команды: осуществить переход в другую точку программы после проверки результата на нуль, отрицательное число или при наличии переноса или займа. Формат команды условного перехода аналогичен указанному на рис.
15.14, во в поле кода операции вместо 4МР указывается команда с соответствующим условием перехода. Команда перехода не позволяет вернуться к главной программе без соответствующей новой команды перехода. Для возврата к точке программы, от которой произошел переход, нужно адрес этой точки запомнить. При использовании команды вызова подпрограммы возврат к главной программе осуществляется автоматически. Мнемоническая запись команд.
Команда микропроцессора является двоичным числом, длина которого может равняться одному или нескольким байтам. Для кратности команду можно записать в восьмеричном или шестнадцатеричном коде. Однако и в этом случае программисту трудно запомнить числа. Для удобства запоминания при программировании применяют мнемоническую запись команд с помощью сокращения английских слов. Ранее в тексте уже встречались мнемонические записи команд: МОЧ от английского слова шоте (двигать, пересылать) и ЛМР от слова !шпр (прыгать, переходить). Широко применяются и другие мнемонические обозначения.
Например, С1К от слова с!еаг (очистить), Н1 Т вЂ” па!! (остановить), 1ХС вЂ” 1псгегпеп1 (положительное приращение), РЕС вЂ” бесгещеп! (отрицательное приращение). !5Л. СПОСОБЫ АДРЕСАЦИИ При выполнении программ многие команды являются командами с обращением к памяти. При объеме памяти, например, 64К слов команды получаются очень длинными, так как только адресная часть команды оудет иметь 16 бит, а в команде еще 375 должны быть поле кода операции и поле адреса регистра микропроцессора.
В 16-разрядных микропроцессорах обычно применяют формат команды общей длиной в 16 бит [231. При такой ограниченной длине всей команды и ограниченном числе битов для записи адреса приходится либо использовать не все ячейки памяти, либо воспользоваться информацией адресных полей команды для «вычисления» (формирования) исполнительного (эффективного) адреса.
В микропроцессорах применяются разные способы адресации в зависимости от конкретных команд. Ниже описываются способы адресации, наиболее широко применяемые в микропроцессорных системах [23, 24) . Прямая адресация. В адресное поле команды помещают исполнительный адрес.
Преимуществом такой адресации является ее простота — не требуется вычисление исполнительного адреса. Недостаток — малое число битов для адреса, а следовательно, возмо>кность доступа лишь к малой части адресного пространства памяти. Косвенная адресация, Адресное поле команды указывает не адрес операнда, а лишь адрес ячейки, в которой хранится косвенный адрес, по которому можно получить операнд. Преимущество косвенной адресация перед прямой в том, что косвенный адрес операнда содержит больше битов, нежели число битов в адресном поле команды.
Недостатком косвенной адресации является увеличение времени для извлечения операнда по сравнению с прямой адресацией. Регистровая косвенная адресация. Косвенный адрес содержится в одном из регистров центрального процессора. Так как не требуется двукратное обращение к памяти, то быстродействие приближается к прямой адресации. Автоинкрементная и автодекрементная адресация. Исполнительный адрес вычисляется так же, как и при регистровой косвенной адресации, а следующий исполнительный адрес получается увеличением или уменьшением адреса операнда на определенную величину после каждой обработки адреса. Такая адресация удобна, когда операнды расположены в памяти в виде списков (файлов) или таблиц.
Относительная адресация. Исполнительный адрес получается сложением адресного поля команды с содержимым базового регистра процессора. Это сложение производится в специальном сумматоре. В частности, такой способ адресации применяется для команд перехода. Непосредственная адресация. Если данные включены в команду, то, собственно, никакой адресации для обращения к памяти не требуется, Такая адресация называется непосредственной. Исполнение команд с непосредственной адресацией является быстрым и применимо, как правило, для операций, предусматривающих действия с константами. ата НЬЗ. СИНХРОНИЗДЦИИ МИКРОПРОЦВССОРД Все микропроцессоры являются синхронизированными систе. мами.
Все процессы в них'синхронизируются последовательностями тактовых импульсов. Обычно тактовые импульсы, показанные на рис. 15.11 и обозначенные С!.К, получаются делением частоты генератора, стабилизированного кварцем. Например, в микропроцессоре КМ1810ВМ86 частота тактовых импульсов 5 МГц получается делением частоты генератора с кварцем иа частоту 1=15 МГц. На рис. 15.11 показаны временные диаграммы работы микропроцессора КМ18!ОВМ86 при записи. Цикл записи образуют такты Т1 — Т4. Сигнал М(10 указывает, какое из устройств; память М или устройство ввода-вывода 10 — используется в данном цикле. Из рисунка видно, что цикл записи начинается с выработки стробируюшего сигнала адреса Л1.Е, который служит для занесения адреса в адресный регистр. В такте Т1 на выводы процессора выставляется адрес.
За время Т2 устанавливаются данные. Они остаются истинными на шине данных до окончания такта Т4. Сигнал записи %К вырабатывается в начале такта Т2 и сохраняется до начала такта Т4. Передача данных, установившихся в такте Т2, в основном происходит в такты ТЗ и Т4.
В цикл считывания из памяти или из устройства ввода вместо сигнала %К подается сигнал КР. В остальном временная диаграмма аналогична показанной на рис. !5.11. Синхронизация подтверждением готовности. Часто периферийные устройства имеют меньшее быстродействие, нежели центральный микропроцессор. В атом случае микропроцессор переходит в режим ожидания готовности в момент ТЮ между тактами ТЗ и Т4 и записывает выполнение команды после поступления сигнала готовности КЕАРУ от периферийяого устройства. гсгг веялку Рпс.
15.11. Временвйе диаграммы работы макропроцессора в режиме заноса 377 16.7. ИНТЕРФЕЙСЫ Интерфейсами называются устройства, связывающие системную шину микрокомпьютера с периферийными устройствами. На рис. 15.12 показана схема подключения периферийных устройств с помощью интерфейсов 1211. Иа рисунке некоторые интерфейсы названы контроллерами. Четкого различия между контроллером и интерфейсом нет. Параллельный интерфейс. Простейшая схема реализации параллельного интерфейса для связи периферийного устройства с шиной данных компьютера показана на рис.
15.13. Соединения Лихая сааза Рис. 15.12 Схема подключения периферийных устройств к системной шанекомпьютера Рис. 15.13. Подключение периферийного устройства к системной шине компью тера через порты входа-выхода параллельного интерфейса 37В осуществляются через порты входа-выхода периферийного уст. ройства. Порт входа представляет собой ряд тристабильных вен.
тилей, а порт выхода является регистром. Тристабильные вентили и триггеры регистра управляются сигналами И) и %К. Сигналы из псриферийного устройства поступают на шину через порт входа. Все сигналы, которые компьютер должен передать периферийному устройству, выводятся из шины через порт выхода. Обычно параллельные интерфейсы являются частью одной из БИС, входящих в микропроцессорный комплект. При параллельном вводе-выводе между интерфейсом и периферийным устройством одновременно передается 8 или 16 бит.
Кроме самих данных между интерфейсом и периферийным устройством передаются сигналы готовности КЕАРУ, стробирующие сигналы ЯТКОВ и сигнал подтверждения ЛСК. Последовательный интерфейс. Последовательный интерфейс является интерфейсом синхронной или асинхронной последовательной связи. Наиболее распространена асинхронная передача данных. Например с клавиатуры ввод данных производится нерегулярно и возможна лишь асинхронная связь. При последовательной связи параллельно передаваемые данные сначала записываются в сдвиговый регистр, из которого передаются поочередно бит за битом.