
- •Микропроцессорные устройства
- •Оглавление
- •Введение Структура и временные диаграммы работы микропроцессора к580вм80
- •Допуск к лабораторному практикуму. Изучение лабораторного стенда
- •Контрольные вопросы
- •Лабораторная работа №1 Программирование арифметических операций в 8-разрядных микропроцессорах
- •Необходимые теоретические сведения
- •Задания для выполнения лабораторной работы:
- •Контрольные вопросы
- •Лабораторная работа №2 Параллельный ввод-вывод информации в микропроцессорных системах
- •Необходимые теоретические сведения
- •Описание лабораторной установки
- •Контрольные вопросы
- •Лабораторная работа №3 Ввод аналоговых сигналов в микропроцессорную систему
- •Необходимые теоретические сведения
- •Описание лабораторной установки
- •Задания для выполнения лабораторной работы:
- •Контрольные вопросы
- •Лабораторная работа №4 Программируемый таймер
- •Необходимые теоретические сведения
- •Описание лабораторной установки
- •Задания для выполнения лабораторной работы:
- •Контрольные вопросы
- •Лабораторная работа №5 Последовательный ввод-вывод информации в микропроцессорных системах
- •Необходимые теоретические сведения
- •Описание лабораторной установки
- •Задания для выполнения лабораторной работы:
- •Контрольные вопросы
- •Состав команд микропроцессора intel 8080/8085
Федеральное агентство морского и речного транспорта РФ
Федеральное бюджетное образовательное учреждение
высшего профессионального образования
«Морской государственный университет им. адм. Г. И. Невельского»
Кафедра электронной схемотехники и микропроцессоров
Микропроцессорные устройства
Методические указания к выполнению лабораторных работ для студентов и курсантов специальностей
16090565 «Техническая эксплуатация транспортного радиооборудовния»,
18040465 «Эксплуатация судового электрооборудования и средств автоматики»,
22020365 «Автономные информационные и управляющие системы»,
22040062 «Управление в технических системах»,
21070062 «Инфокоммуникационные технологии и системы связи»,
09030265 «Информационная безопасность телекоммуникационных систем».
Составили: Н. В. Сгребнев
Е. Б. Осокина
М. С. Перехода
Владивосток
2014
Позиция №
в плане издания учебной литературы МГУ на 2012 г.
Рецензент В.В. Воробьев, канд. техн. наук, ст. научн. сотрудник, МГУ
Составили Николай Викторович Сгребнев
Елена Борисовна Осокина
Мария Сергеевна Перехода
МИКРОПРОЦЕССОРНЫЕ УСТРОЙСТВА
Методические указания
4 уч. – изд. л. Формат 60×84 1/16
Тираж 25 экз. Заказ №
Отпечатано в типографии ИПК МГУ им. адм. Г. И. Невельского
Владивосток, 59, ул. Верхнепортовая, 50а
Оглавление
Введение: Структура и временные диаграммы работы микропроцессора К580ВМ80
Допуск к лабораторному практикуму: Изучение лабораторного стенда
Лабораторная работа №1: Программирование арифметических операций в 8-разрядных микропроцессорах
Лабораторная работа №2: Параллельный ввод-вывод информации в микропроцессорных системах
Лабораторная работа №3: Ввод-вывод аналоговых сигналов в микропроцессорных системах
Лабораторная работа №4: Программируемый таймер
Лабораторная работа №5: Последовательный ввод-вывод информации в микропроцессорных системах
Приложение 1: Состав команд микропроцессора К580ВМ80
Введение Структура и временные диаграммы работы микропроцессора к580вм80
Для решения широкого круга задач управления различными производственными объектами возможно применение устройств на основе 8-разрядных микропроцессоров. Одним из распространенных в мире в этой области является микропроцессор (МП) Intel 8080A. Есть отечественный аналог этого МП – микропроцессор К580ВМ80. По идеологии, положенной в основу МП К580, построено целое семейство более современных и производительных микропроцессоров, совместимых с К580. Изучение структуры и принципов функционирования этого МП закладывает базу для освоения более современных и сложных моделей микропроцессоров и однокристальных микроконтроллеров.
Типовая структурная схема микро-ЭВМ на основе однокристального МП приведена на рис.1. Она включат в себя:
центральный процессор (CPU);
память, состоящую из оперативного запоминающего устройства (RAM) и постоянного запоминающего устройства (ROM)
устройства ввода-вывода (I/O).
Команды и данные необходимо хранить и по мере надобности выбирать их в процессе работы МП. Для этой цели применяется запоминающее устройство, являющееся основной (электронной) памятью любой ЭВМ. Основная память микро-ЭВМ состоит из двух отдельных видов памяти: со сменой информации в процессе работы (оперативное запоминающее устройство ОЗУ) и без смены информации (постоянное запоминающее устройство ПЗУ). Оба типа относятся к запоминающим устройствам с произвольной выборкой, так как время обращения к любой индивидуальной ячейке памяти не зависит от адреса этой ячейки.
Оперативное запоминающее устройство (ОЗУ) служит для записи и считывания информации и используется для хранения промежуточных и конечных результатов, подпрограмм и прикладных программ, с которыми должна работать основная программа. Обычно оперативная память микро-ЭВМ выполняется на полупроводниковых элементах (БИС).
Постоянные запоминающие устройства (ПЗУ) допускают в процессе работы только считывание информации, поэтому они, как правило, более просты, имеют большую плотность записи информации, меньшее время выборки и несколько меньшую стоимость, чем ОЗУ. ПЗУ являются энергонезависимыми, т.е. сохраняют записанную в них информацию при отключении источников питания. Постоянные запоминающие устройства предназначены для хранения программ и констант.
Существует два различных вида связи с микро-ЭВМ: связь между машиной и человеком-пользователем и связь между машиной и электронной системой.
Связь между машиной и человеком осуществляется с помощью различных устройств человеко-машинного интерфейса (HMI), обеспечивающих представление информации в виде, удобном для ее восприятия. К числу таких устройств относятся алфавитно-цифровые дисплеи, графические дисплеи, клавиатуры и многие другие устройства, с помощью которых составляются и отлаживаются программы, вводятся исходные данные, извлекаются промежуточные и конечные результаты.
При использовании микро-ЭВМ для автоматического управления процессами, обработка первичной (исходной) информации, представляющей собой цифровые или аналоговые электрические сигналы, осуществляется автоматически, в реальном времени. В этом случае связь между установкой и вычислительной машиной обеспечивается специальными, ориентированными на обработку в реальном времени, устройствами ввода-вывода. К таким устройствам, прежде всего, относятся аналого-цифровые преобразователи (АЦП), цифро-аналоговые преобразователи (ЦАП) и специальные цифровые схемы (порты), обеспечивающие обмен информацией в цифровой форме.
Во всех микро-ЭВМ для обмена цифровыми информационными, адресными и управляющими сигналами между центральным процессором и другими функциональными блоками используются магистрали (шины). Микро-ЭВМ, построенные по архитектуре Фон-Неймана (рис.1), имеют три различные шины: адресную, данных и управления.
Микропроцессор К580ВМ80 представляет собой параллельный 8-разрядный однокристальный МП с фиксированной системой команд. МП выполнен в виде одной БИС с высокой степенью интеграции по n-канальной МОП-технологии. Структурная схема МП приведена на рис. 2.
МП состоит из следующих основных функциональных блоков: арифметически-логического устройства, блока регистров, блока регистра команд, блока управления и синхронизации, буферных регистров данных и адреса и внутренней магистрали данных.
Рис.2. Структура МП К580ВМ80
Арифметически-логическое устройство (АЛУ) выполняет основные арифметические и логические операции по обработке данных, представленных в двоичном и двоично-десятичном кодах, а также операции сдвига. Блок АЛУ состоит из комбинационной схемы арифметико-логического устройства и схемы десятичной коррекции.
Комбинационный 8-разрядный сумматор с последовательным переносом предназначен для выполнения арифметических и логических операций над двоичными 8-разрядными числами.
Схема десятичной коррекции позволяет привести результат операции над двоично-десятичными числами, выполняемой двоичным сумматором, к представлению в двоично-десятичном коде.
8-разрядный регистр результата (аккумулятор) предназначен для приема одного из операндов и хранения результата, полученного при выполнении комбинационным сумматором арифметических или логических операций. Наличие аккумулятора исключает необходимость использования внутренней шины для обмена данными между АЛУ и сверхоперативной памятью во время выполнения арифметических и логических операций.
8-разрядный буферный регистр предназначен для приема и хранения операндов на время выполнения операций в арифметически-логическом устройстве.
Регистр признаков (флажков) используется для индикации результата операции в АЛУ. Он состоит из флажков переноса (С), знака (S), нуля (Z), вспомогательного переноса (AC) и четности (P).
Формат регистра F:
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
S |
Z |
0 |
AC |
0 |
P |
1 |
C |
Блок регистров обеспечивает обмен информацией между различными функциональными узлами МП в процессе выполнения программы. Он состоит из регистров общего назначения, указателя стека, счетчика команд, схемы инкремента/декремента, мультиплексора и селектора.
Шесть 8-разрядных регистров общего назначения B,C,D,E,H,L в зависимости от типа выполняемой команды используются индивидуально для хранения подлежащих обработке в АЛУ информационных слов и результатов обработки, или парами для хранения 16-разрядного адреса операнда.
Два 8-разрядных регистра W и Z предназначены для приема и временного хранения второго и третьего байтов команд переходов, передаваемых с внутренней шины данных микропроцессора в счетчик команд. Эта пара регистров является недоступной для программиста.
16-разрядный счетчик команд содержит адрес команды, следующей за выполняемой.
Схема инкремента/декремента представляет собой схему быстрого переноса/заёма и служит для автоматического увеличения или уменьшения на 1 содержимого 8-разрядных или 16-разрядных регистров общего назначения.
16-разрядный регистр – указатель стека используется для приема и хранения адреса ячейки стека, к которой было последнее обращение. Указатель стека позволяет непосредственно адресовать основную память емкостью 64 Кбайт, что делает возможной работу с подпрограммами и прерываниями любой глубины.
Мультиплексор обеспечивает возможность двунаправленного обмена внутренней шиной данных микропроцессора и блоков регистров, причем выбор внутренних регистров блока осуществляется селектором.
Блок регистра команд состоит из регистра и дешифратора команд.
Регистр команд предназначен для приема кода команд (первого байта команды), поступающего в микропроцессор и хранения его во время выполнения команды.
Дешифратор команды осуществляет дешифрирование кода операции и обеспечивает управление машинным циклом.
Блок управления и синхронизации координирует работу различных внутренних функциональных блоков микропроцессора и вырабатывает внешние сигналы управления, необходимые для синхронизации работы МП с другими элементами микро-ЭВМ.
16-разрадный буферный регистр адреса и 8-разрядный буферный регистр данных представляют собой выходные формирователи с тремя устойчивыми состояниями и обеспечивают соответственно выдачу 16-разрядного адреса на внешнюю шину адреса и двунаправленный обмен данными между внутренней шиной данных микропроцессора и его внешней шиной данных.
Внутренняя магистраль данных предназначена для обмена информацией между различными функциональными узлами внутри МП.
Назначение выводов микропроцессора:
А15 ÷ АО – выходы 16-разрядной трехстабильной шины адреса.
D7 ÷ DO – входы–выходы 8-разрядной двунаправленной трехстабильной шины данных.
HOLD (захват шин) – вход сигнала запроса адресной шины и шины данных МП (запрос на прямой доступ памяти). Появление логическое, единицы на входе переводит МП в такт ожидания Тож, выходы шины адреса и шины данных микропроцессора переводятся в высокоомное состояние.
HLDA (подтверждение захвата шин) – выход сигнала, указывающего на то, что выходы шины адреса и шины данных микропроцессора перешли в высокоомное состояние и внешние устройства могут управлять магистралью микро-ЭВМ.
INTA (разрешение прерывания) – выход сигнала, указывающего состояние внутреннего триггера разрешения прерывания. Если INTA=0, прерывания запрещены. INTA=1, указывает на разрешение прерываний. При подтверждении прерывания триггер разрешения прерывания автоматически устанавливается в нулевое состояние.
INT (запрос прерывания) – вход сигнала запроса ни прерывание работы микропроцессора. Сигнал запроса от внешнего устройства анализируется МП в конце цикла выполнения текущей команды или в состоянии "Останов". Если INTA=1, микропроцессор принимает запрос на прерывание. Если же МП находится в состоянии "Захват" или триггер разрешения прерывания находится в нулевом состоянии (INTA=0), то сигнал INT не анализируется.
RDY (готовность). Сигнал готовности (RDY=1) свидетельствует о том, что память или внешнее устройство готовы для обмена данных с МП. Если RDY=0, МП переходит в состояние "Ожидание" и находится в нем до тех пор, пока память или внешнее устройство не будут готовы к обмену и не выработают сигнал RDY=1.
WAIT (ожидание) – выход сигнала, указывающего на то, что МП находится в состоянии "Ожидание" (ожидание готовности внешнего устройства или памяти к обмену данных).
RD (прием с шины данных) – выход сигнала, указывающего на то, что шина данных находится в режиме приема, т.е. МП готов принять данные. Сигнал на выходе RD используется для стробирования выдачи данных из памяти или внешних устройств на шину данных.
WR (запись) – выход сигнала, используемого для записи данных в память или внешние устройства. WR=0 указывает на то, что на шине данных находятся данные, поступающие из МП.
SYNG (синхронизация) – выход синхросигнала, формируемого МП в первом такте каждого машинного цикла. Наличие логической единицы на выходе SYNG указывает на то, что на шине данных содержится слово состояния текущего машинного цикла.
R (сброс). Сигнал R=1 устанавливает счетчик команд и регистр команд, триггеры разрешения и захвата шин в нулевое состояние. Во время действия сигнала R=1 шина данных и шина адреса находятся в высокоомном состоянии, все выходные управляющие сигналы переходят в неактивное состояние. После окончания действия сигнала R=1 МП начинает работу с такта Т1 цикла Ml.
Ф1 ,Ф2 (тактовые импульсы) – входы синхросигналов с генератора.
Микропроцессор является программно управляемым цифровым автоматом. Все его функционирование определяется последовательностью команд программы, хранящейся в памяти.
Процесс выполнения каждой команды начинается циклом выборки команды. В этом цикле центральный процессор передает содержимое счетчика команд, являющееся адресом ячейки памяти, через регистр адреса в основную память микро-ЭВМ, где оно дешифруется. Содержимое выбранной ячейки памяти (команда) по шине данных поступает в регистр команд.
В исполнительном цикле команда дешифруется, и устройство управления обеспечивает выполнение требуемой операции. По окончании выполнения команда содержимое счетчика команд увеличивается на единицу. Процесс обработки командного слова показан на рис.3.
Рис.3. Процесс обработки командного слова
Реализация команды, требующей выполнения арифметических (сложение, вычитание и др.) или логических (логическое сложение, логическое вычитание и др.) операций, осуществляется АЛУ и вспомогательными регистрами, используемыми для временного хранения числовой информации в ходе их выполнения. Количество и тип этих регистров зависят от индивидуальных особенностей конкретной микро-ЭВМ. Во многих микро-ЭВМ данные из памяти из внешнего устройства поступают в центральный процессор через один из вспомогательных регистров центрального процессора – аккумулятор. В аккумулятор также поступают и результаты арифметических или логических операций, выполненных АЛУ. После выполнения операции данные из аккумулятора пересылаются в память или устройство вывода. Процесс обработки информационных слов показан на рис.4. Процесс выполнения команды в микропроцессоре состоит из двух частей: подготовительной и исполнительной. В подготовительной части осуществляется выборка кода команды из памяти, размещение его в регистре команд МП и дешифрация. В исполнительной части выполняются действия, предусмотренные командой, и формируется адрес следующей команды.
Рис. 4. Процесс обработки информационного слова
Формат команды МП К580ВМ80 содержит от одного до трех байтов. Время, необходимое для выполнения одной команды, называется командным циклом (циклом команды). Обычно каждый командный цикл включает в себя от одного до пяти машинных циклов. В свою очередь, каждый машинный цикл содержит от трех до пяти тактов. Длительность каждого такта равна периоду следования тактовых импульсов и определяется как интервал времени между фронтами двух соседних импульсов Ф1. У МП К580ВМ80 имеются три состояния ("Ожидание", "Захвати и "Останов"), которые могут иметь неограниченную длительность.
Запуск МП осуществляется сигналом начальной установки, подаваемым на вход R. По этому сигналу в счетчик команд записывается определенный адрес (обычно нулевой), с которого МП начинает выборку команд программы. Кроме того, по сигналу начальной установки сбрасываются в нулевое состояние некоторые внутренние регистры МП.
Выполнение команды начинается с такта Т1 – первого и обязательного для всех команд машинного цикла M1. Цикл M1 – это всегда цикл выборки команды и длится он четыре или пять тактов. На рис. 5 показаны временные диаграммы функционирования МП К580ВМ80. как видно из рисунка, в такте Т1 микропроцессор выдает на шину адреса содержимое счетчика команд, формирует сигнал синхронизации SYNC=1 и выдает на шину данных 8-разрядное слово состояния. Из такта Т1 МП всегда переходит к выполнению такта Т2, в котором анализируется состояние входа READY и HOLD, а также проверяется, не находится ли МП в режиме "Останов" по команде HALT. В этом же такте содержимое счетчика команд увеличивается на единицу. Если READY=1, то МП переходит к выполнению такта Т3, в противном случае – в состояние "Ожидание" и находится в нем до тех пор, пока не появится сигнал готовности READY=1. Таким образом, сигнал готовности READY можно использовать для синхронизации работы центрального процессора с более медленными устройствами ввода-вывода или памятью с произвольным временем доступа. Вход READY используется также для реализации пошагового режима выполнения программ.
Рис. 5. Временные диаграммы функционирования МП K580BM80
В такте Т2 каждого машинного цикла происходит также анализ входа HOLD. Если H0LD=1, то после окончания машинного цикла МП переходит в состояние "Захват", в котором находится до тех пор, пока на входе HOLD действует логическая единица. После появления на входе HOLD логического нуля МП начинает следующий машинный цикл прерванной команды или первый цикл новой команды.
В такте ТЗ цикла Ml первый байт команды из выбранной ячейки памяти по шине данных поступает в блок регистра команд, дешифруется и блок управления и синхронизации формирует сигналы, необходимые для дальнейшего выполнения команды.
В машинных циклах М2, М3, М4 и М5 в такте Т3 МП принимает данные, которые по шине данных поступают во внешнюю память или на устройства вывода.
Такты Т1, Т2, Т3 образуют подготовительный этап выполнения команда. Они используются для обращения к памяти или устройствам ввода-вывода и присутствуют в любом машинном цикле. Наличие тактов Т4 и Т5 в машинном цикле определяется кодом выполняемой команда. В течение тактов Т4 и Т5 реализуется исполнительный этап выполнения команды. Для некоторых команд машинный цикл может быть закончен тактом Т4. После такта Т4, если он завершающий, или такта Т5, центральный процессор переходит к выполнению такта Т1 цикла М2, если для выполнения команда требуется несколько машинных циклов.
В последнем такте последнего машинного цикла анализируется состояние входа INT. Если INT=1 и предварительно была выполнена команда Е1, то МП переходит к выполнению цикла М1 специального вида, в котором содержимое счетчика команд не увеличивается на единицу, а выдается сигнал подтверждения прерывания INTE=1.
При выполнении команды HALT МП переходит в состояние "Останов" и остается в нем до поступления сигнала прерывания от внешнего устройства.
Список литературы
Коффрон Дж. Технические средства микропроцессорных систем. Практический курс / Пер. с англ. – М.: Мир, 1983. 344 с.
Микропроцессоры и микроЭВМ в системах автоматического управления: Справочник /Под ред. С.Т. Хвоща. М.: Машиностроение, 1988. 526 с.
Токхайм Р. Микропроцессоры: курс и упражнения. М.: Мир, 1988. 336 с.