ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ Федеральное государственное образовательное учреждение высшего профессионального образования Сибирский федеральный университет Кафедра «Электропривод и автоматизация промышленных предприятий» Красноярск, 2008 Микропроцессорная техника УДК ББК 004.3 32.973.26.04 М57 Авторы: В. Б. Молодецкий, М. В. Кривенков, А. Н. Пахомов, С. В. Кудашев, А. А. Лопатин Электронный учебно-методический комплекс по дисциплине «Микропроцессорная техника» подготовлен в рамках инновационной образовательной программы «Инновационно-образовательный центр технологий поддержки жизненного цикла и качества продукции», реализованной в ФГОУ ВПО СФУ в 2007 г. Рецензенты: Красноярский краевой фонд науки; Экспертная комиссия СФУ по подготовке учебно-методических комплексов дисциплин М57 Микропроцессорная техника. Презентационные материалы. Версия 1.0 [Электронный ресурс] : наглядное пособие / В. Б. Молодецкий, М. В. Кривенков, А. Н. Пахомов и др. – Электрон. дан. (5 Мб). – Красноярск : ИПК СФУ, 2008. – (Микропроцессорная техника : УМКД № 253-2007 / рук. творч. коллектива В. Б. Молодецкий). – 1 электрон. опт. диск (DVD). – Систем. требования : Intel Pentium (или аналогичный процессор других производителей) 1 ГГц ; 512 Мб оперативной памяти ; 5 Мб свободного дискового пространства ; привод DVD ; операционная система Microsoft Windows 2000 SP 4 / XP SP 2 / Vista (32 бит) ; Microsoft PowerPoint 2003 или выше. ISBN 978-5-7638-1515-3 (комплекса) ISBN 978-5-7638-1513-9 (пособия) Номер гос. регистрации в ФГУП НТЦ «Информрегистр» 0320802610 от 08.12.2008 г. (комплекса) Номер гос. регистрации в ФГУП НТЦ «Информрегистр» 0320802611 от 08.12.2008 г. (пособия) Настоящее издание является частью электронного учебно-методического комплекса по дисциплине «Микропроцессорная техника», включающего учебную программу, учебное пособие, методические указания по лабораторным работам, контрольно-измерительные материалы «Микропроцессорная техника. Банк тестовых заданий». Представлена презентация (в виде слайдов) теоретического курса «Микропроцессорная техника». Предназначено для студентов направления подготовки бакалавров 140200.62 «Электроэнергетика и электротехника» укрупненной группы 140000 «Энергетика». © Сибирский федеральный университет, 2008 Рекомендовано к изданию Инновационно-методическим управлением СФУ Разработка и оформление электронного образовательного ресурса: Центр технологий электронного обучения информационно-аналитического департамента СФУ; лаборатория по разработке мультимедийных электронных образовательных ресурсов при КрЦНИТ Содержимое ресурса охраняется законом об авторском праве. Несанкционированное копирование и использование данного продукта запрещается. Встречающиеся названия программного обеспечения, изделий, устройств или систем могут являться зарегистрированными товарными знаками тех или иных фирм. Подп. к использованию 17.10.2008 Объем 5 Мб Красноярск: СФУ, 660041, Красноярск, пр. Свободный, 79 Оглавление 1. Предмет и основные понятия микропроцессорной техники 2. Структура типичной микроЭВМ 3. Формирование сигналов на системной магистрали 4. Архитектура восьмиразрядного микропроцессора 5. Микросхемы шинных формирователей 6. Микросхемы дешифраторов и демультиплексоров 7. Микросхемы памяти 8. Постоянные запоминающие устройства 9. Оперативные запоминающие устройства 10. Подсистемы памяти 11. Параллельный интерфейс 12. Подсистемы ввода вывода 13. Последовательный интерфейс 14. Программируемый контроллер прерываний 15. Программируемый контроллер прямого доступа к памяти 16. Программируемый таймер 4 1. Предмет и основные понятия микропроцессорной техники 5 Предмет изучения дисциплины На сегодняшний день средства микропроцессорной техники применяются для решения самых разнообразных задач в области сбора и обработки данных, систем автоматического управления и др. Все более востребованными становятся специалисты со знаниями микропроцессорной техники. Дисциплина рассматривает: • 8-разрядный микропроцессор КР580ВМ80 – основные характеристики, структура, система команд; • микросхемы среднего и высокого уровня интеграции микропроцессорного комплекта КР580, дополняющие микропроцессор. Предмет и основные понятия микропроцессорной техники 6 Предмет изучения дисциплины Для рассмотренных элементов микропроцессорной техники приводятся: их структура, принципы функционирования, режимы работы, взаимодействие с другими узлами микроЭВМ, порядок программирования, таблицы истинности, временные диаграммы и др. Микропроцессорный комплект КР580 во много раз уступает современным микропроцессорным системам. Но был выбран потому, что наиболее прост для изучения, на нем легко проследить основные принципы работы микропроцессора и остальных узлов микроЭВМ. Более того, основные принципы, заложенные в этом комплекте, применяются в самых современных на сегодняшний день микропроцессорных системах. Предмет и основные понятия микропроцессорной техники 7 Уровни интеграции микросхем Элементную базу цифровых устройств составляют интегральные схемы (ИС). Со времени их изобретения ИС постоянно совершенствуются и усложняются. Характеристикой сложности ИС является уровень интеграции. По уровню интеграции ИС подразделяют: • на МИС (малые ИС) – логические элементы И, ИЛИ, И–НЕ и пр.; • СИС (средние ИС) – регистры, счетчики, дешифраторы, сумматоры, шинные формирователи и пр.; • БИС, СБИС (большие, сверх большие ИС) – микропроцессоры, программируемые контроллеры и пр. Такие схемы содержат тысячи и миллионы логических элементов в одном кристалле. Предмет и основные понятия микропроцессорной техники 8 Понятие и назначение микропроцессора Микропроцессором (МП) называют построенное на одной (реже на нескольких) БИС/СБИС программноуправляемое устройство, осуществляющее процесс обработки информации и управление им. МП является основным устройством обработки информации в микропроцессорной системе (или микроЭВМ). Микропроцессорная система (МПС) реализует выполнение заданной программы и содержит в своем составе микропроцессор, память, устройства ввода/вывода и интерфейсные схемы. Микропроцессоры и МПС универсальны, поскольку при решении различных задач изменяется реализуемая программа, а их структура остается неизменной. Предмет и основные понятия микропроцессорной техники 9 Классификация микропроцессоров По типу системы команд микропроцессоры делятся: • на CISC-процессоры (Complex Instruction Set Computer). Они имеют так называемую сложную систему команд, т. е. большой набор разноформатных команд при использовании многих способов адресации. • RISC-процессоры (Reduced Instruction Set Computer). Такие процессоры имеют сокращенную систему команд. Исключены редко применяемые команды. • VLIW-процессоры (Very Long Instruction Word). Особенность таких процессоров заключается в использовании очень длинных команд (16 и более байт). Предмет и основные понятия микропроцессорной техники 10 Разновидности МПС По типу архитектуры, или принципу построения, различают МПС с принстонской архитектурой и МПС с гарвардской архитектурой. Первые МПС строились по принстонской архитектуре, в которой память для команд и данных является общей. Достоинства этой архитектуры: простота, возможность оперативного перераспределения памяти между областями хранения команд и данных. Недостаток – последовательная во времени выборка из памяти команд и данных, передаваемых по одной и той же системной шине, что ограничивает производительность МПС. В гарвардской архитектуре память разделена на память команд и память данных, причем каждая из них имеет собственную шину для общения с процессором. Это усложняет архитектуру, но повышает производительность МПС. Предмет и основные понятия микропроцессорной техники 11 Понятие микропроцессорного комплекта Кроме понятий «микропроцессор» и «микропроцессорная система» существует также понятие «микропроцессорный комплект». Микропроцессорным комплектом называют совокупность БИС/СБИС, пригодных для совместного применения в составе МПС (например, микропроцессорный комплект отечественного производства КР580). Понятие микропроцессорного комплекта задает номенклатуру микросхем с точки зрения возможностей их совместного применения (совместность по архитектуре, электрическим параметрам, конструктивным признакам и др.) Предмет и основные понятия микропроцессорной техники 12 Понятие и назначение микроконтроллера Микроконтроллеры (МК) – разновидность микропроцессорных систем, ориентированных на реализацию алгоритмов управления техническими устройствами и технологическими процессами. Микроконтроллер значительно проще универсальной микроЭВМ. Прежде всего, МК в сравнении с универсальной микроЭВМ характеризуется меньшим объемом и быстродействием памяти, менее разработанным составом внешних устройств. Сегодня выпускаются 8-, 16- и 32-разрядные микроконтроллеры фирм Intel, Atmel, Motorola, Microchip, Zilog и др. Предмет и основные понятия микропроцессорной техники 13 2. Структура типичной микроЭВМ 14 Общие сведения Структура микроЭВМ является магистральномодульной. В такой структуре имеется группа магистралей (шин), к которым подключаются различные модули (блоки), обменивающиеся между собой информацией по одним и тем же шинам поочередно. К такой структуре можно отнести трехмагистральную микроЭВМ. Структура типичной микроЭВМ 15 Структура трехмагистральной микроЭВМ Микропроцессор Address Bus – шина адреса Data Bus – шина данных Control Bus – шина управления ПЗУ Структура типичной микроЭВМ ОЗУ Порт ввода Порт вывода Основные сигналы CB 16 Система шин микроЭВМ an-1 Шина представляет собой набор an-2 n электрических проводников, объедиa0 ненных функционально и часто физически. Шины объединяют все функциональные блоки микроЭВМ n – разрядность шины (число проводников) и обеспечивают обмен данными. В составе типичной микроЭВМ выделяют три типа шин: AB (Address Bus) – шина адреса; DB (Data Bus) – шина данных; CB (Control Bus) – шина управления. Структура типичной микроЭВМ 17 Система шин микроЭВМ Шина адреса (AB) предназначена для однозначного определения элемента микроЭВМ (например, ячейки памяти или устройства ввода/вывода) и является однонаправленной. Шина данных (DB) служит для обмена данными между элементами микроЭВМ (двунаправленная). Шина управления (CB) предназначена для согласования работы элементов микроЭВМ. В структуре трёхмагистральной микроЭВМ приведены 4 сигнала шины управления: – MEMR (Memory Read) – сигнал чтения из памяти; – MEMW (Memory Write) – сигнал записи в память; – I/OR (Input/Output Read) – сигнал чтения из ВУ; – I/OW (Input/Output Write) – сигнал записи во ВУ. Структура типичной микроЭВМ 18 Микропроцессор Микропроцессор (МП) – функционально законченное устройство, работающее по программе, подаваемой на ее вход. МП в микроЭВМ является центральным узлом по обработке информации. МП вырабатывает большинство управляющих сигналов микропроцессорной системы, выдает адреса ячеек памяти, адреса устройств ввода/вывода, из которых следует считывать или записывать данные. Микропроцессор ведет обмен данными практически со всеми узлами микроЭВМ и осуществляет за ними контроль. Структура типичной микроЭВМ 19 Память микроЭВМ Память микроЭВМ представляет собой совокупность регистров (ячеек), предназначенных для хранения информации в двоичной форме. Каждая ячейка имеет уникальный адрес, что обеспечивает возможность доступа к ней. Адрес представляет собой двоичное слово, длина которого определяет количество ячеек, которое может быть адресовано. Совокупность всех адресов образует адресное пространство микроЭВМ. Если в AB m разрядов, то объем адресного пространства M = 2m. Память имеет две классические разновидности: постоянное запоминающее устройство (ПЗУ) и оперативное запоминающее устройство (ОЗУ). Структура типичной микроЭВМ 20 Порты ввода/вывода Порты ввода/вывода выполняют роль посредника между микроЭВМ и внешними устройствами. Как и ячейки памяти, порты имеют адрес, что позволяет иметь множество портов в составе одной микроЭВМ. Роль портов могут выполнять микросхемы буферных регистров, микросхема программируемого параллельного интерфейса и др. Структура типичной микроЭВМ 21 3. Формирование сигналов на системной магистрали 22 Основные управляющие сигналы Адресация – только часть процесса управления памятью и внешними устройствами (ВУ). Кроме адресов требуются стробы чтения и записи (RD и WR), задающие направление обмена, сигналы разрешения работы CS. В системном интерфейсе используется система из четырех сигналов: сигнала чтения из памяти MEMR, записи в память MEMW, чтения из ВУ I/OR и записи во ВУ I/OW. Все эти сигналы имеют активный низкий уровень и представляют собой отрицательный импульс: U Пассивный Активный t Формирование сигналов на системной магистрали 23 Чтение данных из памяти Упрощенная схема чтения данных из памяти микропроцессором: AB CPU A A ROM (RAM) DB DIO DO MEMR RD Формирование сигналов на системной магистрали 24 Чтение данных из памяти Временные диаграммы чтения из памяти микропроцессором: данных 1 AB DB MEMR Событие 1 – микропроцессор выставляет на AB адрес нужной ячейки. Формирование сигналов на системной магистрали 25 Чтение данных из памяти Временные диаграммы чтения из памяти микропроцессором: данных 1 AB DB 2 MEMR Событие 2 – с некоторой задержкой вырабатывается отрицательный импульс чтения из памяти. Формирование сигналов на системной магистрали 26 Чтение данных из памяти Временные диаграммы чтения из памяти микропроцессором: данных 1 AB 3 DB 2 MEMR Событие 3 – память дешифрирует адрес ячейки и выставляет ее содержимое на DB. Формирование сигналов на системной магистрали 27 Чтение данных из памяти Временные диаграммы чтения из памяти микропроцессором: данных 1 AB 3 DB 2 4 MEMR Событие 4 – импульс чтения возвращается в пассивное состояние. Длительность импульса должна быть достаточной, чтобы память успела выставить на DB содержимое адресованной ячейки, а микропроцессор их считать. Формирование сигналов на системной магистрали 28 Чтение данных из памяти Временные диаграммы чтения из памяти микропроцессором: 1 данных 6 AB 3 5 DB 2 4 MEMR События 5, 6 – состояние шин A и D может вновь измениться. Формирование сигналов на системной магистрали 29 Пояснения к временным диаграммам 1 Состояние шины стабильно 6 AB 3 5 DB 2 4 MEMR Переход с низкого уровня на высокий (с 0 на 1) Переход с высокого уровня на низкий (с 1 на 0) Формирование сигналов на системной магистрали Изменение состояния шины 30 Запись данных в память Упрощенная схема записи данных в память микропроцессором: AB CPU A A RAM DB DIO DIO MEMW WR Формирование сигналов на системной магистрали 31 Запись данных в память Временные диаграммы в память микропроцессором: записи данных 1 AB 2 DB MEMW События 1, 2 – микропроцессор выставляет на AB адрес нужной ячейки, одновременно (или с некоторой задержкой), микропроцессор выставляет на DB данные, подлежащие записи. Формирование сигналов на системной магистрали 32 Запись данных в память Временные диаграммы в память микропроцессором: записи данных 1 AB 2 DB 3 MEMW Событие 3 – микропроцессор отрицательный импульс записи. Формирование сигналов на системной магистрали вырабатывает 33 Запись данных в память Временные диаграммы в память микропроцессором: записи данных 1 AB 2 DB 3 4 MEMW Событие 4 – через задержку, достаточную для надёжной записи в память, импульс записи в память прекращается. Формирование сигналов на системной магистрали 34 Запись данных в память Временные диаграммы в память микропроцессором: записи 1 данных 6 AB 2 5 DB 3 4 MEMW События 5, 6 – состояние шин D и A может вновь измениться. Формирование сигналов на системной магистрали 35 Чтение данных из порта ввода Упрощенная схема чтения данных микропроцессором из внешнего устройства (ВУ) через порт: AB CPU A A Port DB DIO I/OR DO DI ВУ RD Формирование сигналов на системной магистрали 36 Чтение данных из порта ввода Временные диаграммы из порта ввода: чтения 1 данных 6 AB 3 5 DB 2 4 I/OR Временные диаграммы чтения данных из порта ввода те же, что и для чтения данных из памяти, с той лишь разницей, что управляющий сигнал чтения из порта обозначается, как I/OR. Формирование сигналов на системной магистрали 37 Запись данных в порт вывода Упрощенная схема записи данных микропроцессором во внешнее устройство через порт: AB CPU A A Port DB DIO I/OW DI DO ВУ WR Формирование сигналов на системной магистрали 38 Запись данных в порт вывода Временные диаграммы записи данных в порт вывода: 1 6 AB 2 5 DB 3 4 I/OW Временные диаграммы записи данных в порт вывода схожи с временными диаграммами записи данных в память. Отличием является обозначение управляющего сигнала записи в порт (I/OW). Формирование сигналов на системной магистрали 39 4. Архитектура восьмиразрядного микропроцессора 40 Краткая характеристика микропроцессора КР580ВМ80 Микропроцессор (МП) КР580ВМ80 (аналог МП Intel 8080) представляет собой 8-разрядное центральное процессорное устройство параллельной обработки данных. Конструктивно БИС процессора КР580ВМ80 выполнена в корпусе с 40 выводами, из которых 16 приходится на шину адреса, 8 – на шину данных, 4 – на подключение питания, а все остальные – на линии шины управления. Применяются подобные МП в системах управления различной аппаратурой, где их возможностей хватает для решения поставленных задач. Архитектура восьмиразрядного микропроцессора 41 Структура МП КР580ВМ80 8 Accumulator Temporary Register Register Flags Temporary Accumulator D7-D0 F1 Instruction Register BF F2 Внутренняя t шина t 8 SW TR A RF MUX W TA d7 d6 B d5 S Z d4 C d3 E B d2 SP d1 d0 D 0H AC L 0 H P DA УУ Синхронизация Z D ALU IR Деши1 C фратор команд PC INC/DEC RG Arithmetic-Logic Unit Decimal Adjust Sign Zero Auxiliary Carry 16 Parity Carry A15-A0 Increment/ Stack Pointer Program Counter Decrement Архитектура восьмиразрядного микропроцессора F1 F2 SYNC Сброс RESET Управление шиной DBIN WR READY WAIT Прерывания INT INTE ПДП HOLD HLDA 42 Выполнение команд в микропроцессоре КР580ВМ80 Адресное пространство с прямой адресацией данного процессора составляет 216 = 64 Кбайт памяти. Микропроцессоры с 8-разрядной шиной данных имеют 4 режима адресации операндов: • прямая; • регистровая; • непосредственная; • косвенная регистровая. Архитектура восьмиразрядного микропроцессора 43 Выполнение команд в МП Каждая команда в МП выполняется на протяжении командного цикла. Командный цикл состоит из нескольких машинных циклов (M). В команде может быть от одного до пяти машинных циклов, в зависимости от формата команды и способа адресации операндов. Каждый машинный цикл представляет собой цикл обращения к системной магистрали: выборку очередного байта команды или данных из памяти, запись в память, ввод или вывод данных. Архитектура восьмиразрядного микропроцессора Командный цикл M1 M2 ... Mn n = 1…5 44 Выполнение команд в МП Командный цикл M1 T1 T2 M2 ... ... Tm Mn m=3 …5 Машинный цикл, в свою очередь, разбивается на некоторое количество машинных тактов (T), на протяжении каждого из которых выполняется элементарное действие (микрооперация) в процессоре. Количество тактов в цикле определяется кодом команды и лежит в пределах от 3 до 5. Архитектура восьмиразрядного микропроцессора 45 Выполнение команд в МП Продолжительность такта задается периодом импульсов синхронизации и определяется как интервал времени между фронтами двух соседних импульсов последовательности F1. F1 t T = 0,5 мкс Архитектура восьмиразрядного микропроцессора (f = 2 МГц) 46 Выполнение команд в МП В зависимости от действий, выполняемых МП, различают следующие типы машинных циклов: • выборка (чтение первого байта команды); • чтение памяти (чтение второго и третьего байтов команды, чтение операнда); • запись в память; • чтение стека; • запись в стек; • ввод данных из внешнего устройства; • вывод данных во внешнее устройство; • прерывание; • останов; • прерывание при останове. Архитектура восьмиразрядного микропроцессора 47 Цикл выборка (чтение памяти) T1 T2 Tw T3 T4 T5 F1 F2 A15-A0 D7-D0 Адрес SW код команды или данные SYNC READY DBIN WAIT Архитектура восьмиразрядного микропроцессора 48 5. Микросхемы шинных формирователей 49 Шинный формирователь Часто к системной шине необходимо подключать несколько устройств, что создает проблему возникновения конфликтов на шине. Соответственно, при наличии нескольких приемников нагрузка на источник увеличивается. Эти проблемы можно решить с помощью микросхем, имеющих выходы с тремя состояниями, называемыми шинными формирователями. Системная шина Ист-к 1 Ист-к 2 Микросхемы шинных формирователей При-к При-к При-к 1 2 3 50 Элементы с тремя состояниями Элементы с тремя состояниями кроме выходов 0 и 1 имеют третье состояние выхода: Zсостояние, состояние высокого импеданса, состояние низкой проводимости, в котором выходной ток пренебрежительно мал. Выходной каскад с третьим состоянием может быть построен на ТТЛ(Ш)- или КМОП-элементах. Выходной каскад на КМОП-элементах Ucc 1 T3 T1 DI DO T2 OE T4 Output Enable Графическое обозначение ОЕ DI (Вх) Таблица истинности работы ОЕ 1 DO (Вых) DI (Вх) Микросхемы шинных формирователей DO (Вых) OE DI DO 1 1 0 1 0 0 0 X Z 51 Преимущества элементов с тремя состояниями • выходы типа третье состояние можно соединять параллельно (при соблюдении условия, что в любой момент времени активным может быть только один из них. В этом случае остальные выходы не мешают активному формированию сигнала в точке соединения выходов. Эта возможность позволяет применять такие элементы для формирования систем с распределенной шиной, в которых несколько источников информации подключаются к одной линии связи); • быстродействие; • высокая нагрузочная способность. Микросхемы шинных формирователей 52 Микросхемы шинных формирователей Шинные формирователи различаются: • по разрядности; • направлению передачи (одно или двунаправленные); • типу передачи сигнала (в прямом или инвертированном виде); • типу разрешающего сигнала (прямой или инверсный); • электрическим параметрам. Микросхемы шинных формирователей 53 Микросхемы шинных формирователей Условно графическое изображение микросхемы шинного формирователя Указывает на двунаправленный BD BD a1 a2 a3 a4 b1 b2 b3 b4 Bus Driver Обозначение схем с тремя состояниями T Выбор направления OE передачи Выбор возможности передачи Микросхемы шинных формирователей 54 Микросхемы шинных формирователей Структура шинного формирователя A0 B0 T OE Направление передачи 0 0 От B к A 0 1 Передача запрещена A4 B4 1 0 От A к B 1 1 Передача запрещена T OE Микросхемы шинных формирователей 1 1 55 Микросхемы шинных формирователей обратном направлении Передача данных в прямом направлении Запрет передачи С DB DA на DA DB BD Z1 Z1 Z1 Z1 Z1 0 Z0 Z0 1 Z 0 1 0 10 DA 0 1 2 3 4 5 6 7 DB 0 1 2 3 4 5 6 7 Z0 Z0 Z0 Z0 Z1 0 Z1 Z1 Z 0 1 T OE Микросхемы шинных формирователей 56 Буферные регистры Регистром называется совокупность однонаправленных трёхстабильных буферных схем, управляемых одновременно. Буферные регистры, также как и шинные формирователи, работают на магистраль, но его особенностью является возможность запоминать своё состояние. Микросхемы шинных формирователей 57 Буферные регистры Структура буферного регистра Изображение буферного регистра Register A0 RG n STB DO 0 Qn-1 Qn-1 Выдача и хранение 0 1 Qn-1 z Хранение An 1 0 Qn Qn Запись и выдача 0 DO STB OE Strobe Режим Qn DI OE D n C 1 STB 1 1 Qn z D – триггер B0 D C Bn Запись ОЕ 1 Внутренне буферный регистр можно представить как последовательное соединение D-триггера и однонаправленного трёхстабильного каскада. Приём данных разрешается сигналом STB. Микросхемы шинных формирователей 58 Типы выходов В цифровой схемотехнике помимо выхода с тремя состояниями используются ещё два типа выходов: • выход с открытым коллектором; • выход с открытым эммитером. Микросхемы шинных формирователей 59 Выход с открытым коллектором Положительными чертами этих элементов являются возможность одновременной работы нескольких элементов, выходы которых соединены параллельно, что исключает выход элемента из строя изза ошибок управления, а также дополнительная возможность реализации операций монтажной логики. Микросхемы шинных формирователей Схема выходной цепи элемента с открытым коллектором Ucc Ucc Вых Вых Условное обозначение схем с открытым коллектором 60 Выход с открытым эммитером Выход с открытым эммитером характерен для элементов типа ЭСЛ (эммитерно-связанная логика). Возможность соединения выходов элементов даёт возможность реализовать дополнительные операции монтажной логики ИЛИ. Микросхемы шинных формирователей Условное обозначение схем с открытым эммитером 61 6. Микросхемы дешифраторов и демультиплексоров 62 Дешифратор • Это комбинационное логическое устройство, преобразующее n-разрядный двоичный код в логической сигнал, появляющийся на том выходе, десятичный номер которого соответствует двоичному коду. • Микросхема дешифратора – это комбинационная схема, предназначенная для активизации одного из нескольких устройств, присоединённых к её выходам. В зависимости от входного двоичного кода на выходе дешифратора возбуждается одна и только ОДНА из выходных цепей. Микросхемы дешифраторов и демультиплексоров 63 Классификация дешифраторов По соотношению количества входов/выходов • Полные – • Неполные – количество выходов дешифратора n (N) равно количеству возможных кодовых комбинаций, подаваемых на его n входов. N 2 N 2 n. По типу выхода • С прямым выходом – активный уровень выходного сигнала высокий (уровень логической «1»). • С инверсным выходом – активный уровень выходного сигнала низкий (уровень логического «0»). Микросхемы дешифраторов и демультиплексоров 64 Классификация дешифраторов Дешифраторы Полные С прямыми выходами С инверсными выходами Неполные С прямыми выходами С инверсными выходами Основные сферы применения дешифраторов • В составе микросхем портов ввода/вывода • В составе микросхем памяти • В виде отдельных микросхем Микросхемы дешифраторов и демультиплексоров 65 Пример работы микросхемы дешифратора К155ИД1 Дешифратор неполный с инверсными выходами. Напротив каждого входа проставлен вес соответствующего разряда двоичного кода адреса. Напротив каждого выхода проставлен его десятичный номер. Размерностью дешифратора называется условная запись n×m, где n – количество входов дешифратора, m – количество его выходов. Размерность приведенного дешифратора К155ИД1 – 4×10. Decoder К155ИД1 DC 1 1 1 2 1 4 0 8 Активация выхода № 7 происходит при подаче на вход двоичного кода 0111. 0 1 2 3 4 5 6 7 8 9 1 1 1 1 1 1 1 0 1 1 Выход активен Микросхемы дешифраторов и демультиплексоров 66 Таблица истинности дешифратора К155ИД1 Входы Выходы 1 2 4 8 0 1 2 3 4 5 6 7 8 9 0 1 0 1 0 1 0 1 0 1 0 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 0 0 1 1 1 1 0 0 0 1 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 Микросхемы дешифраторов и демультиплексоров 67 Внутренняя структура дешифратора Рассмотрим структуру дешифратора с прямыми выходами, построенного на элементах И. Если выход микросхемы должен быть возбужден, то на входах элемента И должны собираться логические 1. При этом разряды входного кода, в которых присутствуют единицы, должны поступать на входы элемента И после двойной инверсии, т. е. прямые, а нулевые разряды – после однократной инверсии. Входные линии x1 x2 x3 x1 x1 1 1 1 x2 x2 x3 x3 1 1 & y0 & y1 & y2 & y7 1 Приведённая структурная схема соответствует дешифратору с прямыми выходами и размерностью 3×8. Микросхемы дешифраторов и демультиплексоров 68 Микросхемы демультиплексоров Демультиплексоры отличаются от дешифраторов тем, что помимо адресных имеют еще дополнительные входы. Сигналы, поданные на эти входы, подвергаются некоторой несложной логической операции. Результат преобразования подаётся на активный выход демультиплексора, выбранный по адресному входу. Демультиплексор легко превратить в дешифратор, для этого состояния дополнительных входов необходимо зафиксировать так, чтобы в результате преобразования получилась логическая 1. Микросхемы дешифраторов и демультиплексоров 69 Микросхема демультиплексора К155ИД7 Decoder multiplexor DMX • Полный демультиплексор 3х8. • Активный уровень выходного сигнала – низкий (выходы инверсные). Для активизации адресованного выхода этой микросхемы на дополнительные входы необходимо подать комбинацию: Е1 = Е2 = 0, Е3 = 1. Микросхемы дешифраторов и демультиплексоров 0 1 1 2 2 4 3 4 5 & E1 E2 E3 6 7 70 Таблица истинности демультиплексора К155ИД7 Входы Доп. входы Выходы 1 2 4 E1 E2 E3 0 1 2 3 4 5 6 7 0 1 0 1 0 1 0 1 X X X 0 0 1 1 0 0 1 1 X X X 0 0 0 0 1 1 1 1 X X X 0 0 0 0 0 0 0 0 1 X X 0 0 0 0 0 0 0 0 X 1 X 1 1 1 1 1 1 1 1 X X 0 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 X – безразличное состояние входа (может быть подана как логическая 1, так и логический 0). Микросхемы дешифраторов и демультиплексоров 71 7. Микросхемы памяти 72 Микросхемы памяти Память – это совокупность технических средств – запоминающих цифровых устройств (микросхем памяти), предназначенных для приема (записи), хранения и обмена (считывания) представленной двоичным кодом, цифровыми устройствами. Микросхемы памяти информации, с другими 73 Классификация микросхем памяти Микросхемы памяти ПЗУ ОЗУ МПЗУ Статические ОЗУ ППЗУ Динамические ОЗУ РПЗУ РПЗУ – ЭС РПЗУ – УФ FLASH С симметричными блоками С несимметричными блоками ROM --Programmable Read Only Memory DRAM -Erasable RAM EEPROM -RAM Electrically Programmable EPROM PROM - Flash Erasable Programmable ROM ROM ROM -SRAM Random Access Memory -Dynamic Static RAM Boot Block File Flash Memory Memory Микросхемы памяти 74 Основные параметры микросхем памяти • разрядность – определяется количеством бит ячейки памяти или количеством разрядов шины данных; • адресное пространство (число ячеек) – максимально возможное число слов, хранимых микросхемой; • информационная емкость – количество единиц информации, которое может одновременно храниться в микросхеме памяти; • организация ЗУ – произведение разрядности микросхемы памяти на количество ячеек микросхемы памяти; • быстродействие ЗУ; • энергонезависимость – способность микросхемы сохранять данные после исчезновения напряжения питания. Микросхемы памяти 75 Типы выхода У микросхем памяти выход может находиться в одном из трех состояний: соответствующие логическим 0 или 1 и высокоомное состояние. Выходное напряжение в третьем состоянии имеет уровень, равный приблизительно половине наибольшего значения выходного напряжения. Выход микросхем памяти может быть с открытым коллектором, открытым эммитером или с тремя состояниями. Наличие у микросхемы того или иного выхода указывается на ее условном обозначении специальным знаком: выход с тремя состояниями; выход с открытым эмиттером; выход с открытым коллектором. Микросхемы памяти 76 8. Постоянные запоминающие устройства 77 Постоянные запоминающие устройства Микросхемы ПЗУ предназначены для хранения информации, которая не может изменяться в процессе выполнения программы или изменяется редко (для репрограммируемых ПЗУ). ПЗУ обладает способностью сохранять информацию при сбоях и отключении питания (энергонезависимость). Постоянные запоминающие устройства 78 Масочные микросхемы ПЗУ Масочные микросхемы постоянных запоминающих устройств (ROM) программируются на заво- Ш1 де-изготовителе при помощи шаблонов (масок). Ш2 Они предназначены только для считывания хранимой в ней информации. Шn Считываемое слово определяется наличием перемычки в узлах координатной сетки. Наличие диода в узле соответствует высокому потенциалу – логической единице, при его отсутствии потенциал близок к нулевому – логический ноль. Постоянные запоминающие устройства 79 Пример микросхемы масочного ПЗУ Тип выхода ROM A Address 0 1 2 3 CS A 4 DO Шина адреса 5 Z 1 X n = 11 6 0 A 7 DO 8 9 10 DO Data Output 0 1 2 Режим Шина данных 3 m=8 Хранение 4 5 Считывание 6 7 Chip Select CS 11 Разрядность: =×=882048 Информационная ёмкость: 2n × 2mn2048 =m × 8 = 16384 бит Количество Организация: ячеек: 22048 Постоянные запоминающие устройства 80 Масочные микросхемы ПЗУ Достоинства: • • высокое быстродействие; высокий уровень интеграции. Недостатки: фиксированные данные (нет возможности изменения пользователем); • высокая стоимость производства малых партий. • Постоянные запоминающие устройства 81 Однократно программируемые микросхемы ПЗУ В однократно программируемые ЗУ информация заносится пользователем в лабораторных условиях с помощью программаторов. Микросхемы программируются удалением или созданием части перемычек. Постоянные запоминающие устройства 82 Однократно программируемые микросхемы ПЗУ A 0 Address 1 2 3 4 0 DO 0 1 2 3 4 5 6 7 Data Output PROM CS A CS DO Постоянные запоминающие устройства Режим CS A DO 1 X Z Хранение 0 A DO Считывание 1 6 2 4 3 5 83 Многократно программируемые микросхемы ПЗУ Многократно программируемые или репрограммируемые микросхемы ПЗУ (РПЗУ), в отличие от выше перечисленных, позволяют стереть старую информацию и записать новую. Для стирания информации могут использоватся либо электрические сигналы (EEPROM), либо ультрафиолетовые лучи (EPROM). Постоянные запоминающие устройства 84 Многократно программируемые микросхемы ПЗУ В репрограммируемых ПЗУ (РПЗУ) возможно стирание старой информации и замена её на новую в результате специального процесса. В таких микросхемах чтение данных – это основной, рабочий режим, выполняемый с высокой скоростью. Перезапись содержимое памяти более длительный процесс, требующий выполнения сложных операций. Постоянные запоминающие устройства 85 РПЗУ со стиранием информации электрическим сигналом В микросхемах с электрическим стиранием информация стирается специальным электрическим сигналом. Возможно стирание как всей микросхемы, так и выборочно. A 0 1 2 3 4 5 6 7 8 9 10 CS CEO Upr EEPROM DIO 0 1 2 3 4 5 6 7 CS CEO A DIO Upr Режим работы 1 × × Z Ucc Хранение 0 12В × 1 22В Общее стирание 12В 1 × × 22В Общая запись 0 1 А DI 22В Избранная запись 0 1 А 1 22В Избранное стирание 0 0 А DO Ucc Считывание Постоянные запоминающие устройства 86 РПЗУ со стиранием информации ультрафиолетовыми лучами Стирание информации производится облучением кристалла микросхемы ультрафиолетовыми лучами через специальное прозрачное окошко. Совмещённая шина адреса и данных CS CEO RPLY CE PR Upr EPROM DIO0 ADIO 1 ADIO 2 ADIO 3 ADIO 4 ADIO 5 ADIO 6 ADIO 7 ADIO8 ADIO 9 ADIO10 ADIO11 ADIO12 ADIO13 ADIO14 ADIO15 CS CEO CE PR ADIO RPLY A DIO Upr Режим работы 1 1 1 1 1 × Z Ucc Хранение 0 1 1 1 1 A DI 18 Программирование 0 0 0 0 0 A - Ucc Считывание 0 1 1 1 1 A DI 18 Программирование кода Постоянные запоминающие устройства 87 Flash-память Flash (вспышка) – быстрое стирание всего массива данных одним сигналом. Помимо адресации ячейки и сигналов управления данный вид памяти имеет и управление словами – командами, записываемыми процессором во внутренний командный регистр. Слова команды определяют работу внутреннего автомата управления. Состав команд: • подготовка стирания/стирание и проверка стирания; • подготовка программирования/программирование и проверка программирования; • чтение данных и чтение кодов идентификатора; • сброс. Постоянные запоминающие устройства 88 Flash-память Flash-память С симметричными блоками С несимметричными блоками Направления использования: • замена памяти на жестких магнитных дисках (с симметричными блоками – Flash-File Memory); • хранение не очень часто изменяемых данных (с несимметричными блоками – Boot-Block Flash Memory). Постоянные запоминающие устройства 89 Преимущества Flash-памяти перед РПЗУ: • • • • • Большая ёмкость; большее количество циклов перезаписи; ниже энергопотребление; выше быстродействие; более высокая надёжность. Постоянные запоминающие устройства 90 9. Оперативные запоминающие устройства 91 Оперативные запоминающие устройства Оперативные запоминающие устройства (ОЗУ) предназначены для хранения переменной информации, они допускают изменение своего содержимого в ходе выполнения процессором вычислительных операций с данными. В зависимости от элемента памяти микросхемы ОЗУ подразделяют на статические и динамические. Оперативные запоминающие устройства 92 Статические ОЗУ Микросхемы памяти, в которых в качестве запоминающей ячейки используется триггер, называются статическими ОЗУ. UUcc cc ЗЭ R R T3 T 3 Шина выборки ШВi Нагрузка TT11 Dj D j Оперативные запоминающие устройства Нагрузка RS RS УС T2 T 2 R R TT44 Dj Dj 93 Статические ОЗУ Address Data Input Тип выхода DI RAM Data Input 1 DO 2 Data Output 3 4 0 A Adress 1 0 2 1 3 2 3 0 0 Chip Select CS Write WRRead /RD Оперативные запоминающие устройства CS WR/RD A DI DO Режим 1 X X X Z Хранение 0 0 A DI X Запись 0 1 A X DO Считывание A DI WR / RD CS 1 8 2 7 3 6 4 5 94 Статические ОЗУ Достоинство: • высокое быстродействие. Недостаток: • низкий уровень интеграции. Оперативные запоминающие устройства 95 Динамические ОЗУ Оперативные запоминающие устройства Строка Столбец Микросхемы памяти, в которых основой запоминающего элемента памяти служит конденсатор небольшой ёмкости, называются динамическими ОЗУ. Данные хранятся в виде зарядов емкостей МОП-структур. Такой элемент памяти намного меньше триггерного, используемого в статических ОЗУ, что обуславливает высокую интеграцию динамических ОЗУ. Утечка токов из конденсаторов обуславливает необходимость постоянной перезаписи данных – регенерации. 96 Динамические ОЗУ Оперативные запоминающие устройства Строка Столбец Column (столбец) Row (строка) Ядро (прямоугольная матрица) микросхемы динамической памяти состоит из множества ячеек, каждая из которых хранит всего один бит информации. На физическом уровне ячейки объединяются в прямоугольную матрицу, горизонтальные линейки которой называются строками (ROW), а вертикальные – столбцами (Column) или страницами (Page). 97 Пример микросхемы динамического ОЗУ Row Adress Strobe DI RAMD A 0 1 2 3 4 DO 5 6 7 RAS CAS RAS CAS WR/RD A DI DO Режим работы 1 × × × × Z Хранение 0 1 × A × Z Регенерация 0 0 0 A DI Z Запись 0 0 1 A × DO Считывание WR /RD Column Adress Strobe Оперативные запоминающие устройства 98 Диаграмма записи данных в микросхему RAS 2 8 CAS A 6 1А строки DI WR/ RD Оперативные запоминающие устройства 3А 4 столбца 11 7 10 5 9 99 Динамические ОЗУ Достоинство: • высокая ёмкость. Недостаток: • высокое энергопотребление (связано с постоянной регенерацией содержимого ячеек памяти). Оперативные запоминающие устройства 100 10. Подсистемы памяти 101 Общие сведения Подсистема памяти – это функционально законченный блок, обеспечивающий необходимую емкость и быстродействие памяти. Очень редко требуемая емкость памяти обеспечивается одной микросхемой, поэтому приходится использовать несколько микросхем. При этом наращиваться может разрядность ячейки и (или) количество ячеек памяти. Допустим, требуемая организация запоминающего устройства 2mn, где 2m – количество ячеек, а n – количество разрядов одной ячейки, а используются микросхемы памяти с организацией 2kl, при этом k<m и l<n. Подсистемы памяти 102 Увеличение разрядности CS ОЕ R/W A A RAM k DIO l DIO l DIO l R/W ОЕ CS A RAM k n R/W ОЕ CS ... ... ... ... ... Для наращивания разрядности до требуемой необходимо включить параллельно n/l микросхем памяти. Для этого адресные выводы (A0, A1, …, Ak) и управляющие выводы OE, CS всех микросхем соединяют параллельно, а выводы данных объединяют в одну шину данных. При этом образуется одна страница подсистемы памяти с организацией 2kn. При обращении к любой ячейке такой страницы подсистемы памяти каждая микросхема выдает на шину данных информацию, хранящуюся в ячейке с заданным адресом. В итоге, разрядность одной ячейки такой страницы подсистемы памяти будет равняться сумме разрядов всех входящих в нее микросхем, а количество ячеек останется равным количеству ячеек одной микросхемы. A RAM k R/W ОЕ CS Подсистемы памяти 103 Увеличение количества ячеек Для увеличения количества ячеек до 2m необходимо взять 2m–k страниц. Для выбора ячейки памяти в пределах одной страницы используются k младших разрядов, старшие m–k разрядов подаются на дешифратор. Шины данных страниц и управляющие входы R/W, OE всех микросхем подключают параллельно, а входы CS каждой страницы подсистемы памяти подключают к своему выходу дешифратора. Дешифратор осуществляет выбор соответствующей страницы подсистемы памяти в соответствии с кодом старших m–k разрядов адресной шины. Конфликты на шине данных не возникают, так как в таких случаях используют микросхемы с тремя состояниями на выходе, а одновременно может быть активизирована только одна страница подсистемы. Подсистемы памяти 104 Увеличение количества ячеек ОЕ R/W DIO A A RAM k m DC n DIO n DIO n R/W ОЕ CS 0 1 ... m-k DIO A RAM k m-k 2 n R/W ОЕ CS ... ... ... ... A RAM k R/W ОЕ CS Подсистемы памяти 105 Подсистема памяти статического ОЗУ с увеличением емкости и разрядности Подсистемы памяти 106 11. Параллельный интерфейс 107 Параллельный интерфейс В параллельном интерфейсе для каждого бита, передаваемого двоичного слова, предназначен свой проводник. Приемник данных Источник данных Запись Передача всего двоичного слова осуществляется одновременно по всем проводникам за один такт работы интерфейса. Параллельный интерфейс 108 Достоинства и недостатки ДОСТОИНСТВА: • высокая производительность; • простота интерпретации переданных данных. НЕДОСТАТКИ: • высокий расход дорогостоящей электротехнической меди; • низкая помехозащищенность. Вследствие недостатков параллельный интерфейс применяют только в тех случаях, когда расстояние между источником и приемником не превышает нескольких метров. Параллельный интерфейс 109 Структура микросхемы программируемого параллельного интерфейса КР580ВВ55 Control Unit Control Unit BA Bus Driver LBD CUA D(0-7) BD Read/Write Control Unit RD PORT A PA(0-7) PORT C PC(0-3) PORT C PC(4-7) PORT B PB(0-7) WR A1 A0 RWCU CUB Reset CS Блок управления - обеспечивает управление Схема управлениязаписью/чтением группой B -- вырабатывает вырабатывает сигналы управления Двунаправленный 8-разрядный буфер данных –для связывает Схема управления группой A сигналы управления Три 8-разрядных порта ввода/вывода А, В, С обмена внешними истаршими внутренними передачами данных, загрузку управляпортом разрядами порта ППИ сB системной шиной данных портом А ии младшими разрядами порта С С информацией с внешними устройствами ющих слов и выдачу информации о состоянии ППИ Параллельный интерфейс 110 Режимы работы параллельного интерфейса Режим 0 – прямой однонаправленный ввод/вывод данных без сигналов их сопровождения. Микросхема может рассматриваться как устройство, состоящее из четырех портов (два 8-разрядных и два 4-разрядных), независимо настраиваемых на ввод или вывод. Режим 1 – тактируемый однонаправленный обмен информацией по инициативе внешних устройств. Передача данных производится по каналам А и В, а линии канала С передают управляющие сигналы. Режим 2 – двунаправленная передача данных через порт А. Управляющие сигналы передаются по линиям РС7-РС3. Оставшиеся одиннадцать интерфейсных линий могут настраиваться на режим 0 или режим 1. Параллельный интерфейс 111 Условное обозначение и назначение выводов микросхемы КР580ВВ55 PPI D7 PA7 ... PA0 ... ... ... D0 PC7 ... ... PC0 ... Параллельный интерфейс PB7 ... A1 A0 RD WR CS RESET PB0 112 Таблица истинности КР580ВВ55 Операция A1 A0 RD WR CS 0 0 0 1 0 Порт A шина данных 0 1 0 1 0 Порт B шина данных 1 0 0 1 0 Порт C шина данных 1 1 0 1 0 Запрещенная комбинация 0 0 1 0 0 Шина данных порт A 0 1 1 0 0 Шина данных порт B 1 0 1 0 0 Шина данных порт C 1 1 1 0 0 Шина данных регистр СУ, при D7 = 1 Шина данных регистр битов порта C, при D7 = 0 X X 1 1 0 Шины отключены X X X X 1 Шины отключены Параллельный интерфейс 113 Формат слова управления Признак СУ 1 D7 Группа А D6 D5 Режим 0 0 0 Режим 1 0 1 Режим 2 1 X Канал А D3 D2 D1 D0 0 Вывод 1 Ввод Вывод 0 0 Вывод Ввод 1 1 Ввод Старшая тетрада канала С Параллельный интерфейс D4 Вывод 0 0 Режим 0 Ввод 1 1 Режим 1 Младшая тетрада канала С Канал B Группа B 114 Программирование битов порта C Установка битов 0 D7 D6 Выбор бита D5 D4 D3 D2 D1 D0 Бит 0 0 0 0 1 Присвоить 1 Бит 1 0 1 1 0 Присвоить 0 Бит 2 1 X X Бит 3 0 0 0 Бит 4 0 1 1 Бит 5 1 X X Бит 6 0 0 0 Бит 7 0 1 1 Каждый из восьми битов канала C может быть независимо от других установлен или сброшен с помощью специальной команды вывода. Используется для управления передачей данных по каналам A и B. Параллельный интерфейс 115 12. Подсистемы ввода/вывода 116 Подсистемы ввода/вывода Осуществляют передачу данных между микроЭВМ и внешними (периферийными) устройствами. Подсистемы ввода/вывода 117 Программирование микросхемы КР580ВВ55 PPI DIO PA PC 1 A1 A0 RD WR CS RESET +5 В PB7 PB6 PB5 PB4 PB3 PB2 PB1 PB0 Для организации передачи, выставленных внешним устройством данных, Для приведения микросхемы в исходное состояние, необходимо на в микроЭВМ с помощью микросхемы параллельного программируемого вход RESET подать высокий уровень сигнала – произойдет интерфейса КР580ВВ55 порт B микросхемы необходимо установка режима и все порты установятся в режим ввода. запрограммировать на 0чтение. Подсистемы ввода/вывода 118 Программирование микросхемы КР580ВВ55 PPI 1XXXX01X DIO PA PC 1 1 1 0 0 0 A1 A0 RD WR CS RESET +5 В PB7 PB6 PB5 PB4 PB3 PB2 PB1 PB0 Далее в микросхему необходимо загрузить слово управления. Подсистемы ввода/вывода 119 Считывание данных с внешнего устройства PPI 10101010 DIO PA PC 0 1 0 1 0 0 A1 A0 RD WR CS RESET +5 В PB7 PB6 PB5 PB4 PB3 PB2 PB1 PB0 При подаче команды чтения из порта B данные с выхода внешнего устройства будут переданы на шину данных микроЭВМ. Подсистемы ввода/вывода 120 Организация вывода данных на внешнее устройство A ROM PPI 1000XXXX 1 1 1 0 0 0 DIO A1 A0 RD WR CS RESET PA7 PA6 PA5 PA4 PA3 PA2 PA1 PA0 DO CS A ROM DO PC CS PB Для вывода данных на внешнее устройство порт А параллельного программируемого интерфейса КР580ВВ55 запрограммируем на вывод. Подсистемы ввода/вывода 121 Вывод данных на внешнее устройство A ROM PPI 01010011 0 0 1 0 0 0 DIO A1 A0 RD WR CS RESET PA7 PA6 PA5 PA4 PA3 PA2 PA1 PA0 DO CS A ROM DO PC CS PB При подаче команды записи состояние шины данных микроЭВМ будет передано через порт A и в шестнадцатеричном формате высвечено на алфавитно-цифровом индикаторе . Подсистемы ввода/вывода 122 Организация ввода данных с клавиатуры PPI 1XXX10X0 1 1 1 0 0 0 DIO A1 A0 RD WR CS RESET PA PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 C D E F 8 9 A B 4 5 6 7 0 1 2 3 PB Для ввода данных с клавиатуры настроим младшую половину порта C на вывод, а старшую – на ввод. Подсистемы ввода/вывода 123 Опрос клавиатуры PPI ХXXX0001 ХXXX0010 ХXXX0100 ХXXX1000 1 0 1 0 0 0 DIO A1 A0 RD WR CS RESET PA PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 C D E F 8 9 A B 4 5 6 7 0 1 2 3 PB Через младшую половину порта C последовательно выводим четыре кода 0001, 0010, 0100, 1000. Подсистемы ввода/вывода 124 Опрос клавиатуры PPI 0000XXXX 0100XXXX 0000XXXX 0000XXXX 1 0 0 1 0 0 DIO A1 A0 RD WR CS RESET PA PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 C D E F 8 9 A B 4 5 6 7 0 1 2 3 PB После каждой операции вывода через младшую половину считываем состояние старшей половины порта C. Зная преданный и считанный код, нетрудно определить, какая была нажата клавиша. Подсистемы ввода/вывода 125 13. Последовательный интерфейс 126 Последовательный интерфейс Это аппаратное устройство для обмена информацией между элементами микропроцессорной техники по одному биту (последовательно). Последовательный интерфейс 127 Последовательный интерфейс ДОСТОИНСТВА: • относительная дешевизна ввиду малого количества проводников; • высокая помехозащищенность за счет использования высоких уровней напряжения (тока); • большое расстояние между передатчиком и приемником информации. НЕДОСТАТКИ: • низкая производительность; • относительно сложная интерпретация передаваемых данных. Последовательный интерфейс 128 Последовательный интерфейс ОСНОВНЫЕ ПОНЯТИЯ: • единица информации при последовательном обмене называется символом, который может содержать от 5 до 8 информационных бит; • скорость передачи информации измеряется в бодах, определяющих число передаваемых бит в секунду; • последовательная система передачи информации может быть симплексной (передача данных только от передатчика к приемнику), полудуплексной (данные передаются в обе стороны с разделением во времени) или дуплексной (одновременная передача информации в обоих направлениях). Последовательный интерфейс 129 Регистр управления Системная шина данных Регистр состояния Буферный регистр входных данных Буферный регистр выходных данных Последовательный интерфейс Интерфейс последовательной связи Регистр сдвига входных данных Регистр сдвига выходных данных Последовательный вход Последовательный выход на периферию На Кк микропроцессору Типичная конфигурация дуплексного последовательного интерфейса 130 Асинхронный последовательный обмен В асинхронном режиме каждый передаваемый автономно символ обрамляется стартовым битом, необязательным битом паритета и стоповыми битами. Полученная таким образом посылка информации называется кадром. Пример временной диаграммы асинхронной передачи 6-битного символа с битом паритета и двумя стоповыми битами: Старт D0 T/2 T Паритет Символ D1 T D2 T D3 T D4 T Стоп D5 T T T T Скорость передачи составляет 1/T бод Последовательный интерфейс 131 Условия успешного асинхронного последовательного обмена • Формат кадра должен быть согласован у приемника и передатчика, которые настраиваются на символ одной и той же длины, одинаково интерпретируют бит паритета (если он есть), настраиваются на одинаковое количество стоповых битов; • частота битовых посылок и их фаза должна быть одинаковой с точки зрения приемника и передатчика. НЕДОСТАТОК АСИНХРОННОГО ОБМЕНА: большое количество служебных бит, снижающее эффективную скорость последовательной передачи. Последовательный интерфейс 132 Синхронный последовательный обмен Синхронная последовательная передача символа из 5–8 информационных бит с необязательным битом паритета не имеет стартового и стоповых бит. Обмен информацией начинается с посылкой символов синхронизации, которые заранее записываются в специальные регистры передатчика и приемника. Приемник, проверяя каждый бит по мере его появления, фиксирует начало передачи при поступлении нужного числа символов синхронизации, исключающем действие возможных помех на линии. Последовательный интерфейс 133 Программируемый связной интерфейс (ПСИ) К580ВВ51 Modem Receiver Control BuFfer Unit ... ... Bus Driver Transmitter Read/Write Transmitter Режим работы C/ D RDProgrammable WR CS Сommunication BuFfer Control Unit Control Unit Interface Считывание символа 0 1 0 LDB Запись символа 1 0 D(7-0) TxD Data PCI TxD Transmitter 0 TBF BD 0 1 Считывание слова состояния TxRDYReady Transmitter 1 Запись управляющего слова Transmitter 1 0 TxC Clock DIO1 RD TxRDY Transmitter TxE Empty X 1 1 0 WR TxE Отключение TCU X X 1 Receiver C/D RxDData TxCX DIO7 Receiver Ready CLK RWCU RxRDY RxCClock RD Receiver RESET RxD SYNchro DETect SYNDET WR CS RBF C/D Data Terminal Ready DTR DSR CS RxRDY Data Set DSRReady DTR SYNDET RTS CLK Request CTS RCU MCU To Send RxC RESET ClearCTS RTS To Send Receiver Control Unit Последовательный интерфейс 134 Инструкция режима ПСИ Тип паритета Четность Нечетность Нет контроля Число стоп-битов 0 0 1 1 0 1 0 1 1 1,5 2 D7 D6 1 0 X 1 1 0 D5 D4 Асинхронный режим Число синхросимволов Вид синхронизации 0 - два 1 - один 0 - внутренняя 1 - внешняя Последовательный интерфейс 0 1 0 1 D0 D3 D2 D1 0 0 1 1 0 1 0 1 5 бит 6 бит 7 бит 8 бит Cинхронный режим 1:1 Асинхрон1:16 ный режим 1:64 Длина символа Синхронный режим 0 0 1 1 135 Команда управления и слово состояния ПСИ Конец передачи (Send Break) Формирование на выходе TxD = 0 Разрешение приемника Программный сброс адаптера D7 D6 D5 Разрешение передатчика D4 D3 D2 D1 D0 Выход DTR Режим поиска синхросимволов Выход RTS Сброс ошибок в слове состояния а)а Parity DSR Frame PEError FE Error D7 D6 SYNDET D5 D4 D3 TxE D2 OE Overload Error D1 TxRDY D0 RxRDY б) б Последовательный интерфейс 136 14. Программируемый контроллер прерываний 137 Обработка запроса на прерывание Фоновая программа Обработка прерывания Фоновая программа Программируемый контроллер прерываний 138 Многоуровневые прерывания Фоновая программа Обработка прерывания №1 Обработка прерывания №2 Фоновая программа Программируемый контроллер прерываний 139 Приоритетные прерывания Убывание приоритета ВУ3 ВУ2 t ВУ1 t ФП t t Программируемый контроллер прерываний 140 Алгоритм программного поллинга ВУ1-? ФП да ПО1 нет ВУ2-? ПО2 нет ВУn-? да ПОn нет Программируемый контроллер прерываний 141 Схема аппаратного поллинга DB МП INT Х0 Х1 Xn 1 INT СП0 INT0 СП1 INT1 СПn INTn 1 1 1 ВУ1 ВУ2 ВУn Убывание приоритета Программируемый контроллер прерываний 142 Программируемый контроллер прерываний КР580ВН59 Обеспечивает восьмиуровневую векторную систему приоритетных прерываний. Возможное каскадирование позволяет расширить число уровней до 64. Любое прерывание может быть запрещено (маскировано) программными связями. Программируемый контроллер прерываний 143 Условное изображение контроллера DB DIO IOR IR0 IR1 RD ... IOR PIC WR IR7 A0 CAS2 CS CAS1 INT CAS0 INTA SP Программируемый контроллер прерываний 144 Режимы работы • С фиксированным приоритетом • С циклическим распределением приоритетов • С адресуемым распределением приоритетов • По результату опроса Программируемый контроллер прерываний 145 Порядок работы с контроллером Работа производится по этапам: • инициализация контроллера; • управление операциями; • прием запросов прерывания. Программируемый контроллер прерываний 146 Команды инициализации Таблица истинности Входы RD WR A0 INT INTA CS SP Ввод ICW1 1 0 0 X 1 0 1 Ввод ICW2 1 0 1 X 1 0 1 Ввод OCW1 1 0 1 X 1 0 1 Режим Программируемый контроллер прерываний 147 Команда ICW1 Команда ICW1 устанавливает приоритет входов IR0-IR7 контроллера. Формат управляющего слова A0 D7 D6 D5 D4 D3 D2 D1 D0 0 A7 A6 A5 1 0 F S 0 4 байт 1 Один ПКП 1 8 байт 0 Несколько ПКП 0 Программируемый контроллер прерываний 148 Команда ICW1 Формирование младшего байта адресов подпрограмм обслуживания прерываний Адресный интервал 4 байта Адресный интервал 8 байт Вход запроса D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0 IR7 A7 A6 A5 1 1 1 0 0 A7 A6 1 1 1 0 0 0 IR6 A7 A6 A5 1 1 0 0 0 A7 A6 1 1 0 0 0 0 IR5 A7 A6 A5 1 0 1 0 0 A7 A6 1 0 1 0 0 0 IR4 A7 A6 A5 1 0 0 0 0 A7 A6 1 0 0 0 0 0 IR3 A7 A6 A5 0 1 1 0 0 A7 A6 0 1 1 0 0 0 IR2 A7 A6 A5 0 1 0 0 0 A7 A6 0 1 0 0 0 0 IR1 A7 A6 A5 0 0 1 0 0 A7 A6 0 0 1 0 0 0 IR0 A7 A6 A5 0 0 0 0 0 A7 A6 0 0 0 0 0 0 Программируемый контроллер прерываний 149 Команда ICW2 Команда ICW2 задает старший байт начального адреса массива переходов обслуживания прерываний. Формат управляющего слова: D7 D6 D5 D4 D3 D2 D1 D0 A15 A14 A13 A12 A11 A10 A9 A8 Программируемый контроллер прерываний 150 Команда OCW1 Команда OCW1 отвечает за маскирование прерываний на отдельных входах (IR0–IR7) Формат управляющего слова D7 D6 D5 D4 D3 D2 D1 D0 M7 M6 M5 M4 M3 M2 M1 M0 Программируемый контроллер прерываний 151 Каскадирование контроллеров DB 8 PIC RD IR0 IR1 IR2 WR IR7 DIO ... MS A0 CAS CS INT SP INTA 8 DIO PIC IR0 IR1 RD ... SL +5V WR IR7 A0 CS CAS INT INTA Программируемый контроллер прерываний SP 152 Настройка режимов работы Настройка ПКП на определенный режим обслуживания прерываний программируется командами управления операциями OCW. • OCW1 отвечает за маскирование прерываний на отдельных входах (IR0–IR7) • OCW2 осуществляет циклический сдвиг приоритета запроса. • OCW3 позволяет задать режим специального маскирования и режим опроса. Программируемый контроллер прерываний 153 15. Программируемый контроллер прямого доступа к памяти 154 Предпосылки создания Обслуживание внешних устройств по прерываниям может замедлить работу микроЭВМ, если главное назначение прерываний заключается в передаче большого количества данных от внешнего устройства в ОЗУ или наоборот. Программируемый контроллер прямого доступа к памяти 155 Назначение Контроллер прямого доступа к памяти берет на себя управляющие функции CPU для более быстрой передачи больших объемов данных за счет обмена без прерываний. Программируемый контроллер прямого доступа к памяти 156 Схема работы канала прямого доступа к памяти AB RAM DB ВУ DRQ HRQ CPU HLDACK HLDACK DMAC DACK MEMR MEMW IOR IOW Программируемый контроллер прямого доступа к памяти 157 Схема работы канала прямого доступа к памяти • Внешнее устройство генерирует запрос прямого доступа к памяти (Direct Request). • DAMC передает его центральному процессору (CPU) (Hold Request). • CPU приостанавливает выполняемую программу и разрешает прямой доступ сигналом HLDACK. • DAMC генерирует адрес ячейки памяти для обмена и подтверждает сеанс прямого доступа для внешнего устройства выдачей сигнала DACK. • DMAC генерирует сигналы MEMR или MEMW, показывающие направление обмена данными. Программируемый контроллер прямого доступа к памяти 158 Разновидности прямого доступа к памяти • Блокировка центрального процессора на время передачи всего пакета данных. В этом случае прекращается работа выполняемой программы. • Захват цикла. Используется в тех циклах работы микропроцессора, когда не происходит его обращение к памяти. Программируемый контроллер прямого доступа к памяти 159 Контроллер прямого доступа к памяти KP580BT57 Общая характеристика Контроллер управляет работой четырех независимых каналов прямого доступа к памяти с учетом приоритетов внешних устройств (эти приоритеты могут быть циклически изменяемыми). Программируемый контроллер прямого доступа к памяти 160 Условное изображение контроллера 8 DIO DMAC DRQ0 4 A 3-0 DACK0 4 A 7-4 CS HRQ DRQ1 DACK1 HLDA MEMR MEMW DRQ2 DACK2 IOR IOW AEN DRQ3 DACK3 ADSTB Программируемый контроллер прямого доступа к памяти 161 Инициализация контроллера Для инициализации контроллера необходимо записать соответствующую информацию: • в 16-разрядный регистр адреса канала; • 16-разрядный счетчик циклов канала; • 8-разрядный регистр режима, общий для всех каналов. Программируемый контроллер прямого доступа к памяти 162 Таблица истинности Регистр Регистр адреса канала CH0 Счетчик циклов канала CH0 Регистр адреса канала CH1 Счетчик циклов канала CH1 Регистр адреса канала CH2 Счетчик циклов канала CH2 Регистр адреса канала CH3 Счетчик циклов канала CH3 Регистр режима (запись) Регистр состояния (чтение) Отключение КПДП от шины данных Адресные сигналы CS A3 A2 A1 A0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 0 1 1 1 0 1 0 0 0 0 1 0 0 0 1 X X X X Программируемый контроллер прямого доступа к памяти 163 Слово управления D7 D6 D5 D4 AL TCS EW RP D3 D2 D1 D0 EN3 EN2 EN1 EN0 Разрешение каналов CH3-CH0 Циклический приоритет «Расширенная» запись Отключение канала Автозагрузка Программируемый контроллер прямого доступа к памяти 165 16. Программируемый таймер 166 Назначение таймера • Прерывание работы микропроцессора через равномерные интервалы или после появления запрограммированного числа внешних событий; • генерирование тактирующих импульсов с заданной частотой; • синхронизация скорости последовательной передачи в бодах; • измерение временных промежутков между внешними событиями и подсчет числа этих событий. Программируемый таймер 167 Типичная организация программируемого интервального таймера (ПИТ) К микропроцессору Системная шина данных Регистр управления Программируемый интервальный таймер Регистр состояния Регистр начального счета Выходной регистр счетчика Программируемый таймер Счетчик К устройству ввода/вывода 168 Микросхема ПИТ КР580ВИ53/54 RWCU CT2 CLK2 GATE2 OUT2 ... A0 A1 CS A0 0 Programming Interval Timer 1 0 PIT CLK0 1 0 GATE0 DIO1 OUT0 1 0 CLK1 1 ... Операция WR RD CS A1 Загрузка CT0 0 BusЗагрузка Driver CT1 Counter-Timer 0 1 Загрузка CT2 1 Запись слова управления 0 LDB CLK0 DIO7-0 Считывание из CT0 GATE0 0 BD из CT1 CT0 1 0 Считывание OUT0 Считывание из CT2 1 0 CLK1 1 1 0 RD Отключение GATE1 1 CT1 OUT1 X WR X X DIO7 X RD WR A0 A1 CS GATE1 OUT1 CLK2 GATE2 OUT2 Read/Write Control Unit Программируемый таймер 169 Формат слова управления ПИТ Выбор счетчика 0 0 1 1 0 1 0 1 D7 D6 Counter Latch Младший байт Старший байт Два байта CT0 CT1 CT2 Read-Back Двоичная Двоично-десятичная D5 D4 D3 D2 D1 0 0 1 1 0 1 0 1 0 0 0 0 1 1 0 0 0 1 0 1 0 1 Тип паритета Чтение/запись Программируемый таймер Система счисления X X 1 1 0 1 D0 Режим 0 Режим 1 Режим 2 Режим 3 Режим 4 Режим 5 Режим работы ПИТ 170 Режимы работы ПИТ: • Режим 0 – программируемая задержка, предполагающая появление активного сигнала на выходе OUT по окончании счета; • режим 1 – программируемый одновибратор с формированием на выходе OUT сигнала длительностью N периодов сигнала CLK; • режим 2 – генератор программируемой частоты с формированием на выходе OUT периодического сигнала с высоким уровнем в течение N – 1 периодов сигнала CLK и с низким в один период сигнала CLK; • режим 3 – генератор прямоугольных импульсов со скважностью 2, когда высокий уровень сигнала на выходе OUT составляет N / 2 периодов сигнала CLK; Программируемый таймер 171 Режимы работы ПИТ: • режим 4 – программно-управляемый строб с формированием одиночного сигнала на выходе OUT длительностью в один период сигнала CLK по истечении времени, равного N периодов сигнала CLK (начало счета инициируется программно загрузкой в счетчик значения N); • режим 5 – аппаратно-управляемый строб, аналогичный режиму 4, но запускаемый от внешнего устройства по фронту сигнала GATE. Программируемый таймер 172 Работа ПИТ в режиме 0 CLK CW WR Command N=4 N=4 Word GATE OUT Программируемый таймер 4 3 2 2 2 2 1 0 173 Слово состояния ПИТ D3 = 1 CT2 D4 = 0 Слово состояния D7 D6 D5 D4 D3 D5 = 0 1 1 Код команды Защелкивание Read-Back D0 = 0 D1 D2 D2 = 1 CT1 D0 D1 = 1 CT0 а) D7 Выход OUT D6 D5 Флаг нулевого счета D4 D3 D2 D1 D0 Режим работы счетчика (из формата слова управления) б) Программируемый таймер 174