Дж.Хиллбурн, П.Джулич Микро-ЭВМ и микропроцессоры (1979) (1092080), страница 49
Текст из файла (страница 49)
Схема синхронизации имеет входы Ф1 и Фс (входы внешнего генератора двухфазных тактовых импульсов) 19 — 719 290 Глава у Ая Ал Беыля 4м Б» 4 ге Бо А ег Бо Ауь Уг Ае Юе Ае Бг 4г Бе Ае Бо Яе -ББ 4» СРрос Яе Внонерорна и! Прерыроние Аг Раьрегиение Фг Ае нрерыеиния Ае Фина Рамвме вжойоее мг РРее lдемве дивись Синеронаеаиин Фг 'ББ Ревтйржееное Бжн«верно Рис. 7.32.
Схема выводов корпуса микропроцессора 8080 с двукрвдиым располо- жением выводов. (С раарешеиив )п!е! Соер.) и четыре внутренних управляющих входа: «Готово», «Прерывание», «Сброс» и «Блокировка». Для внешнего управления памятью и устройствами ввода-вывода схема синхронизации и управления состоянием вырабатывает шесть сигналов: «Разрешение прерывания», «Подтверждение блокировки», «Шина данных на ввод», «Синхронизация», «Запись» и «Ожидание». 4. Буфер шины данных В качестве буфера шины данных используется 8-разрядный двунаправленный буфер с тремя устойчивыми состояниями, предназначенный для развязки внутренней шины процессора и шины данных внешних устройств (()о — г)е).
В режиме вывода данные по внутренней шине заносятся в 8-разрядный регистр временного хранения, который управляет выходным буфером шины данных. Буфер отключается на время ввода или выполнения операций, не связанных с пересылкой данных. В режиме ввода данные от шины данных внешних устройств передаются на внутреннюю шину. Корпус микропроцессора 8080 имеет 40 выводов (рис. 7.32). Н,НКл КОмАнды Машинный цикл микропроцессора 8080 состоит из трех, четырех или пяти состояний, причем протяженность каждого состояния включает один период колебаний генератора двухфазных тактовых импульсов.
Обычнотактовая частота равна 2МГц, а дли- Микропроцессоры и микро-'ЭВМ 291 Таблица 7.З Назначение разрядов состояний микропроцессора 0000 Разряд шаны данных Обозначение разряда Назначение 1)чТАг) Сигнал подтверждения прерывания на принятый запрос на прерывание. Предназначен для выдачи команды повторного запуска на шину данных при разрешающем уровне сигнала «Шина данных на ввод» Указание иа то, что выполняемая в текущем машинном цикле операция будет связана либо с записью в память, либо с выдачей данных (7КО=О). В противном случае будут выполняться операции чтения из памяти или ввода данных Сигнал помещения на шину адреса стена из указателя стека ЪЧО ЗТАСК Сигнал подтверждения получения команды ОСТАНОВ Указание на то, что на шине адреса находится адрес устройства вывода и на шине данных будут установлены выходные данные с появлением разрешающего уровня сигнала «Запись» Сигнал, определяющий выполнение цикла выборки первого байта команды центральным процессором, Указание на то, что на шине адреса находится адрес устройства ввода, а входные данные будут выданы на шину данных с появлением разрешающего уровня сигнала «Шина данных на ввод» Указывает, что шина данных будет использована для пересылки считываемых из памяти данных Ра Ра НА1.Т 011Т м 1 и') МЕМкз) ') Згог разряд состояний может использоваться для управления пересылкой данныл по шине данных мниропроцеосора.
1йа тельность состояния 0,5 мкс. Цикл команды включает от одного до пяти машинных циклов. В микропроцессоре 8080 предусмотрены девять различных машинных циклов: «Выборка», «Считывание из памяти», «Запись в память», «Загрузка стека», «Выборка из стека», «Ввод», «Вывод», «Прерывание> и «Блокировка». Ни один из циклов команд не включает более пяти таких циклов. Какие именно машинные циклы будут выполняться, зависит от конкретной команды, однако первым машинным циклом любого цикла команды всегда является «Выборкам Процессор идентифицирует выполняемый машинный цикл посредством выдачи 8-разрядного сигнала состояния на линии Ре — Рт шины данных во время действия сигнала «Синхронизация» (табл.
7.3). Эти данные можно запомнить и дешифрировать для управления схемами внешних устройств. 292 Глава 7 Рис. 7.33. Временная диаграмма машинного цикла выборки. (С разрешения 1п1е1 Согр.) Состояния микропроцессора 8080 Назначение Выдача адреса памяти или номера устройства ввода-вы- вода на шину адреса и информации о состоянии иа шину данных Выбор ((П входов «Готово» и «Блокировка» и проверка на команду ОСТАНОВ Процессор входит в состояние «Ожидание», если уровень сигнала «Готово» низкий или была выполнена команда ОСТАНОВ Т1 Т2 Т (дополнительнее) Пересылка из шины данных в ((П байта команды (цикл выборки), байта данных (циклы чтения из памяти, выборки из стека, ввода) или команды ПРЕРЫВАНИЕ (цикл прерывания) или выдача на шину данных из процессора байта данных (циклы записи в память, загрузки стека вывода) Этн состояния используются тогда, когда требуется выполнить конкретную команду, в противном случае процессор может пропустить одно иа них или оба одновременно.
Т4 и Тб имеют местр только при выполнении внутренних операций процессора Тз Т4, Тб (дополнительные) Типичная временная диаграмма машинного цикла выборки показана на рис. 7.33. Все машинные циклы обязательно включают три состояния: Т(, Т2, и ТЗ. Если процессор должен ожидать ответ от внешнего устройства, то в машинном цикле должны быть одно или более состояний ожидания Т . Во время первых трех состояний происходит пересылка данных в процессор или из него. Таблица 7.4 Микроироцессорм и микро-ЭВМ' 293 Рис.
7.34. Диаграмма состояний микропроцессора 80ЗО. гС разрешения 1п$е! Согр.) Переход нз состояния ТЗ в,состояння Т4 н Т5 зависит от типа выполняемой команды. (Назначение различных состояний указано в табл. 7.4.) Диаграмма состояний процессора приведена на рнс. 7.34. Кроме состояний Т1 — Т5 н Т, здесь показано нспользованне снгналов линий «Готово», «Блокировка» н «Прерыванне» в машинном цикле н нх влияние на основную последовательность состояний.
Прн М4' Глава 7 поступлении запроса на прерывание и при высоком уровне сигнала «Разрешение прерывания» триггер прерывания устанавливается в 1 во время последнего состояния того машинного цикла, в котором поступает запрос на прерывание. Это обеспечивает выполнение текущего цикла до конца. Цикл «Прерывание» выполняется как цикл «Выборка», при этом разряд кода состояния подтверждает прерывание. Содержимое счетчика команд во время состояния Т1 остается на линиях адреса, но его увеличения во время цикла не происходит. В состоянии ТЗ на шину данных выдается 8-разрядная команда прерывания. Для этого необходимо, чтобы логические схемы внешних устройств временно отключили память от процессора и передали управление шиной данных устройству прерывания.
Для обработки прерываний обычно используется специальная 1-байтовая команда обращения к подпрограмме (КЗТ). При помощи этой команды адресуется одна из восьми фиксированных ячеек памяти, что позволяет вызывать подпрограмму,. позволяющую сохранить в стеке содержимое счетчика команд, разрядов флажков и сверхоперативной памяти. После обработки прерывания можно легко вернуться кпрерванной программе. Запрос «Блокировка» поступает в процессор, когда необходим прямой доступ к памяти. Блокировка разрешается поступлением сигнала высокого уровня на вывод «Разрешение блокировки» (Н1.РА) и отключением выводов адреса и данных.
Управление шинами данных и адреса производится от внешнего устройства, сделавшего запрос, что обеспечивает обращение к памяти без использования процессора. При выполнении команды ОСТАНОВ процессор входит в состояние Ттгн после состояния Т2 следующего машинного цикла (рис. 7.33). Для выхода из этого состояния необходимо выполнить циклы «Сброс», «Блокировка» или «Прерывание». Однако после окончания цикла блокировки процессор опять возвращается в состояние «Останов». НАБОР КОМАНД Набор команд микропроцессора 8080 содержит 78 команд, в том числе 48 команд микропроцессора 8008.
Тридцать новых команд модели 8080 (приложение Д) обеспечивают ббльшую гибкость в выполнении операций, включающих манипуляции с данными, обращение к памяти и обработку прерываний. Как и команды микропроцессора 8008, все команды микропроцессора 8080 имеют 1-, 2- или 3-байтовые форматы. Многобайтовые команды располагаются в соседних ячейках памяти. Первый байт команды содержит код операции, а во втором и третьем байтах находятся данные или адрес. К 1-байтовым командам относятся все команды тина регистр — регистр, команды обращения к памяти.
арифметические и логические команды, команды циклическо- Микропроцессоры и микро-ЭВМ 29$ го сдвига, возврата, обращения к стеку, разрешения и запрещения прерывания. Команды 2-байтового формата включают команды с непосредственными данными и команды ввода-вывода.
Команды длиной 3 байт составляют команды переходов, обращения к подпрограмме, передачи управления, загрузки и записи в память. Все команды микропроцессора 8080 можно разделить на пять групп: 1. Группа команд пересылки данных (11). Команды для записи данных в память и считывания из нее. Имеются команды адресации памяти через три пары регистров ( — С, 11 — Е и Н вЂ” 1.). 2. Группа арифметических команд (14). Команды, предназначенные для выполнения арифметических операций над данными в регистрах и памяти, для увеличения и уменьшения содержимого пар регистров (11ЧХ и РСХ), а также команды десятичной арифметики (1)АА) ° 3.
Группа логических команд (15). Для выполнения логических операций иад данными в регистрах, памяти и во флажковых разрядах. 4. Группа команд переходов (29). Команды реализации условных и безусловных переходов. Условные переходы возможны по восьми условиям. 5. Группа команд работы со стеком, ввода-вывода и управления (9). Команды выполняют операции обращения к стеку и ввода-вывода. Имеются команды для пересылки в стек и извлечения из стека содержимого пар регистров и слов состояния, а также разрешения (Е1) и запрещения (Р1) прерывания.
ДОПОЛНИТЕЛЬНЪ|Е ТЕХНИЧЕСКИЕ СРЕДСТВА Многие внешние логические схемы, необходимые.для работы микропроцессора 8008, включены в состав ЦП 1п1е1 8080. Кроме того, использование отдельных шин адреса и данных сделало ненужным мультиплексор шины данных. Для создания микро-ЭВМ на базе микропроцессора 8080 необходимо только шесть внешних модулей на ТТТ;схемах (рис. 7.35) 122). Внешний генератор тактовых импульсов вырабатывает два сигнала с несовпадающими фазами Ф| и Фь Внешние шины адрееа и данных подключены через буферы, а вентиль И-НЕ и восемь фиксаторов устанавливают в соответствующие моменты времени разряды состояния.
Все входы и выходы схем ТТТ. совместимы. Система имеет также память, состоящую из ПЗУ, ОЗУ и сдвиговых регистров, а также устройства ввода-вывода. Внешние сигналы проходят по трем шинам: 16-разрядной шине адреса, обеспечивающей обращение к памяти 65К байт, 256 входным портам и такому же количеству выходных портов; двунаправленной 8-разрядной шине данных, 296 Глава 7 ъь ь ъъ Рис. 7.35. Структурная схема типичной микро-ЭВМ на базе микропроцессора 8080. пересылающей данные между памятью и портами ввода-вывода, и шине управления, обеспечивающей синхронизацию процессора, внешней памяти и устройств ввода-вывода.