- •Введение
- •1 АналиЗтехнического задания
- •2 Разработка процессорного модуля
- •2.2 Вспомогательные интерфейсные микросхемы
- •3 Разработка подсистемы памяти
- •3.2 Постоянное запоминающее устройство к541ре1
- •4.1 Подбор подсистемы ввода/вывода
- •4.2 Контролер прерываний
- •4.3 Контроллер прямого доступа к памяти
- •4.4 Программируемый таймер
- •4.5 Аналогово-цифровой преобразователь к572вп1
- •6. Реализация микропроцессора к580вм80 в системе
1 АналиЗтехнического задания
Целью курсового проекта является разработка микропроцессорной управляющей ЭВМ на базе микропроцессора К580ВМ80, реализующей заданные взаимодействия с объектом управления,оперативным запоминающим устройством К565РУ6, постояннымзапоминающим устройством К541РЕ1.
Алгоритм управления определяется функциями:________________ ______ _____ у1 = х1vх2vх3vх4,t1 = 90 мкс,___________________________ __________ где х1, х2, х3, х4 – значения двоичных датчиков;________________________________ у2 =min(NU1;NU2),t2 = 120 мкс,t3 = 90 мкс,_________________________гдеNU1,NU2 – 16-разрядные двоичные коды;____________ _________________ _____t1,t2,t3 – длительность управляющих сигналов;.______________________ Спроектированная микро-ЭВМ включает в себя следующие основные устройства: процессорный модуль; память, состоящую из ОЗУ и ПЗУ; устройства параллельного ввода/вывода для связи с ОУ; блок последовательного канала для связи с ЭВМ верхнего уровня; программируемый системный таймер; контроллер прерываний; контроллер прямого доступа в память.
Все устройства системы объединяются общей магистралью, требования к которому определяются заданным типом микропроцессора (микро-ЭВМ). Обмен данными по интерфейсу осуществляться как в едином адресном пространстве, так и в разделенном с помощью управляющих сигналов обращения к ЗУ и ВУ.
Процессорный модуль включает в себя микропроцессор (микроЭВМ) и дополнительные БИС (СИС), обеспечивающие реализацию вспомогательных функций (тактовый генератор, шинные формирователи и др.).
Устройства ввода для связи с ОУ обеспечивают ввод в ПМ значений x1, x2, x3двоичных датчиков, а так же 8-разрядных двоичных кодов NU1, NU2, принимаемых с выходов АЦП. Сигнал датчика аварийной ситуации xaвоспринимается только подсистемой прерываний.
2 Разработка процессорного модуля
2.1 Описание микропроцессора К580ВМ80
Восьмиразрядный однокристальный МП К580ВМ80 (аналог I-8080), выполняющий около 0,5 млнIntelI-8086. Изготовленный в апреле 1974 года по технологии 6 мкм, процессор синхронизируется тактовой частотой 2 МГЦ, 4,5 тыс. транзисторов составляют кристалл.К580ВМ80 применялся в компьютерах Altair computer (первые ПК), устройствах управления уличным освещением, калькуляторах общего назначения.
Центральный процессорный элемент КР580ВМ80 является функционально законченным однокристальным параллельным 8-разрядным микропроцессором с фиксированной системой команд. В микропроцессоре отсутствуют возможности аппаратного наращивания разрядности обрабатываемых данных.
МП рассчитан на эксплуатацию в закрытом помещении при температуре от +5 до +400С, относительной влажности воздуха от 40 до 80% при 250С и атмосферном давлении от 83,5 до 106 кПа (от 630 до 800 мм ртутного столба).
Основные параметры:
Разрядность обрабатываемых данных 8
Число выполняемых команд 78
Максимальный объем адресной памяти 64кбайт
Число адресных устройств ввода-вывода 256/256
Число уровней прерывания 8
Виды адресации:
прямая, косвенная, непосредственная, регистровая, по указателю стека
Быстродействие и выполнение операций типа регистр-регистр 625 тыс. оп./с
Тактовая частота 2.5МГц
Потребляемая мощность 1250мВт
Для работы микросхемы требуется три источника напряжения питания:
+12В5%, +5В5%, -5В5%.
2.1.1 Структура микропроцессора. Структурная схема микропроцессора приведена на рисунке 1. В состав БИС входят: 8-разрядное арифметико-логическое устройство; регистр признаков, фиксирующий признаки, вырабатываемыеALU в процессе выполнения команд; аккумулятор; регистр аккумулятора; регистр временного хранения операндов; десятичный корректор, выполняющий перевод информации из двоичной в двоично-десятичную форму; регистр команд , предназначенный для хранения первого байта команды, содержащего код операции; дешифратор команд; блок регистров для приема, выдачи и хранения информации в процессе выполнения программ, содержащий программный счетчик, указатель стека, регистр адреса, шесть регистров общего назначения и вспомогательные регистры; схема управления и синхронизации, формирующая последовательности управляющих сигналов для работыALUи блока регистров; 16-разрядный буферный регистр адреса; 8-разрядный буферный регистр данных, двунаправленный мультиплексор для обмена операндами и результатами операций междуALUи блоком регистров по внутренней шине данных.
Программный счетчик предназначен для хранения текущего адреса команды, который автоматически увеличивается в процессе выполнения команды на 1, 2 или 3 в зависимости от формата выполняемой команды.
Указатель стека содержит адрес вершины стека, а сам стек может использовать любую зону ОЗУ объемом до64К байт или специальное ОЗУ, адресуемое сигналомSTACK. Содержимое указателя стека уменьшается на 2, когда данные загружаются в стек, и увеличивается на 2, когда данные извлекаются из стека.
Рисунок 1 - Структурная схема микропроцессора К580ВМ80
Рисунок 2 - Назначение выводов процессора К580
Микропроцессор имеет 16-разрядный трехстабильный канал адресаА(15-0), 8- разрядный двунаправленный трехстабильный канал данныхD (7-0), четыре входных и шесть выходных выводов управления. МП обеспечивает адресацию внешней памяти объемом до 64 Кбайт, а также адресацию 256 устройств ввода и 256 устройств вывода.
Таблица 1 - Входные управляющие сигналы МП К580ВМ80
Номера контактов |
Обозначение |
Назначение |
Тип сигнала |
Состояние | |
англ. |
рус. | ||||
0-2, 3-16 |
A0-A15 |
А0-А15 |
Адресная шина |
Выход |
1 |
3-10 |
D0-D7 |
Д0-Д7 |
Информационная шина |
Вх/вых. |
1 |
|
|
|
Напряжение питания + 5В |
|
|
15,22 |
CKL1,CKL2 |
ф1,ф2 |
Тактовые сигналы |
Вход |
0 |
|
SYNG |
СИНХ |
Синхронизация |
|
|
23 |
READ |
ГТ |
Сигнал «готовность» |
|
|
|
|
ЧТ |
Линия считывания |
Выход |
0 |
|
|
ЗП |
Линия записи |
Выход |
0 |
14 |
WR |
ЗПР |
Запрос прерываний |
Вход |
0 |
16 |
|
РПР |
Линия регенерации динамической памяти |
Выход |
0 |
24 |
|
ОЖ |
Линия ожидания |
Вход |
0 |
12 |
RESET |
СБР |
Сброса |
Вход |
0 |
13 |
DBIN |
ЗПДП |
|
Вход |
|
21 |
HLDA |
ППДП |
|
Выход |
|
|
|
Общ |
Общий |
|
|
Установка флагов производится при выполнении следующих условий:
флаг знака S, если знаковый бит результата операции равен 1, иначе сбрасывается;
флаг нуляZ, если результат операции равен 0, в противном случае сбрасывается;
флаг дополнительного переноса АС при наличии переноса из третьего разряда, иначе сбрасывается;
флаг четности Р, если результат содержит четное число единиц, иначе сбрасывается;
флаг переноса СYпри наличии переноса (при сложении) или заема (при вычитании) из старшего разряда результата, иначе сбрасывается.
2.1.2 Система команд микропроцессора К580ВМ80.Данные в микропроцессоре представлены в виде 8-разрядных (однобайтовых) кодов. Для идентификации отдельных разрядов в байте они нумеруются отDOдоD7и считаются расположенными справа налево. При этом пулевой битDO соответствует младшему разряду,aD7- старшему разряду. Однобайтовый код может рассматриваться либо как положительное целое число с диапазоном значений от 0 до 255, либо как целое число со знаком в дополнительном коде с диапазоном значений от -128 до +127. Для целых чисел можно использовать двухбайтное и многобайтное представления.
Форматы команд могут быть одно-, двух- или трехбайтными. Многобайтная команда должна размещаться в последовательно расположенных ячейках памяти, а в первом байте команды В1всегда указывается код операции (КОП).
Для управления процессом выполнения программы используется слово-состояние программы. Старший байт слова-состояния представляет содержимое аккумулятора, а младший - содержит флаги условий регистра признаков, определяемые результатом вычисления арифметических и логических операций.
В микропроцессоре используются пять способов адресации данных:
прямая — адрес М ячейки памяти, где расположен операнд, указывается во втором (младшая часть адреса) и в третьем (старшая часть адреса) байтах команды;
регистровая - в команде задается адрес оперативного регистра или пары регистров, где находится, соответственно, 8- или 16-битовый операнд;
регистровая косвенная – адрес Мячейки памяти, где расположен операнд определяется содержимым парного регистра, явно или неявно указанного в команде; при этом старший байт адреса находится в первом регистре пары, а младший - во втором;
непосредственная – операнд содержится в команде: для двухбайтовых команд — во втором байте, для трехбайтовых — во втором (младшая часть операнда) и в третьем (старшая часть операнда) байтах команды;
стековая — адрес ячейки памяти, содержащей операнд, находится в указателе стека.
Специфический способ адресации памяти используется в однобайтовой команде RST, применяемой при обработке прерывания для вызова одной из восьми подпрограмм обслуживания прерываний. КомандыRST различаются по номеруN, задаваемому в трехбайтовом поле кода команды. В результате выполнения командыRSTN управление передается по адресу, определяемому восьмикратным увеличениемN.
Система команд МП содержит 78 команд, включающих 111 операций. По функциональному признаку команды микропроцессора делятся на пять групп:
- команды передачи данных из регистра в регистр или память и из памяти в регистр:
- арифметические команды: сложения, вычитания, инкремента и декремента:
- логические команды: И, ИЛИ, исключающее ИЛИ, сравнение, сдвиг, инвертирование:
- команды передачи управления и обработки подпрограмм:
- команды ввода/ вывода и управления состоянием процессора.
2.1.3 Арифметическо-логическое устройство. Восьмиразрядная комбинированная схема АЛУ выполняет арифметические и логические операции над 8-разрядными числами в процессе межрегистровых пересылок. К одному из входов схемы АЛУ всегда подключен аккумулятор, к другому через регистр Т может быть подключен любой из общих регистров.
Арифметическо-логическое устройство имеет собственный регистр временного хранения Т. Он позволяет избежать возникновения «гонок», когда какой-либо из общих регистров используется в одной операции и в качестве регистра-операнда, и в качестве регистра-результата.
Арифметическо-логическоеустройство непосредственно связано с регистром признаков, в соответствующих разрядах которого фиксируются особенности выполнения каждой операции: нулевой результат в аккумуляторе —Z, перенос из старшего разряда —CY, знак результата —S, паритет — Р и вспомогательный перенос из младшего полубайта— АС. Наличие в МП регистра признаков упрощает осуществление программных переходов в зависимости от состояния одного или более триггеров признаков. Арифметическо-логическое устройство позволяет в процессе межрегистровых «пересылок с перекосом» выполнять операции сдвига на один разряд вправо или влево. Многократный сдвиг реализуется последовательностью одноразрядных сдвигов, т. е. последовательно расположенными в программе командами сдвига.
В состав АЛУ входит комбинационная схема десятичного корректора ДК, назначение которого состоит в том, чтобы под воздействием специальной команды интерпретировать результат выполнения двоичной операции как результат операции десятичной арифметики. Для этого к старшей тетраде в схеме ДК прибавляется число 6, кроме тех случаев, когда либо не возникал перенос ни из одной тетрады и содержимое старшей и младшей тетрад находится в пределах 0—9 и 0—9 (или 0—8 и А—F) соответственно, либо не было переноса из старшей тетрады, содержащей число 0—9 и был перенос из младшей.
К младшей тетраде одновременно также прибавляется число 6, кроме случая отсутствия переноса из младшей тетрады, содержащей число 0—9. Межтетрадные связи при этом не разрываются.
Арифметическо-логическое устройство реализует простейшие арифметические и логические операции (сложение, вычитание, сдвиги, сравнение, логическое умножение и т.п.). Все более сложные операции (умножение, деление, вычисление элементарных функций и др.) выполняются по подпрограммам.