- •Основы микропроцессорной техники
- •В.И. Енин
- •В.И. Енин
- •Введение
- •После изучения дисциплины необходимо знать
- •После изучения дисциплины необходимо уметь
- •В.1. Роль и место курса “Микропроцессорная техника” в учебном процессе
- •1. Микропрограммные автоматы
- •После изучения главы необходимо знать
- •1.1. Автомат без памяти
- •1.2. Микропрограммный автомат
- •1.2.1. Автомат с памятью
- •1.2.2. Микропрограммный автомат в системе управления
- •1.2.3. Структурный автомат
- •1.3. Схемная реализация микропрограммных автоматов
- •2. МикропрограмМируемые контроллеры и микропроцессоры
- •После изучения главы необходимо знать
- •2.1. Блок микропрограммного управления
- •2.2. Блок обработки цифровых данных.
- •3. Принципы организации эвм
- •После изучения главы необходимо знать
- •3.1. Выполнение команд в эвм
- •Система команд и методы адресации
- •Подпрограммы
- •3.2. Общие принципы организации ввода-вывода
- •3.2.1. Программный режим ввода-вывода
- •3.2.2. Обмен информацией в режиме прерывания программы
- •3.2.3. Прямой доступ к памяти
- •3.2.4. Подключение внешних устройств
- •4. Архитектура однокристального микропроцессора
- •После изучения главы необходимо знать
- •4.1. Архитектура микропроцессора к580ик80а
- •4.1.1. Формат команд микропроцессора к580ик80а
- •4.1.2. Методы адресации микропроцессора к580ик80а
- •4.1.3. Команды безусловной и условной передач управления
- •4.1.4. Примеры команд процессора к580ик80а
- •4.2. Организация обмена в однокристальных микроЭвм
- •4.2.1. Функционирование микропроцессора
- •4.2.2. Подключение озу и регистров внешних устройств
- •5. Системы счисления и арифметические операции над числами
- •После изучения главы необходимо знать
- •5.1. Системы счисления для представления чисел в эвм
- •5.2. Представление в эвм целых двоичных чисел без знака
- •5.3. Представление в эвм целых чисел со знаком
- •5.3.1. Представление чисел со знаком в прямом коде
- •5.3.2. Представление чисел со знаком в дополнительном коде
- •5.3.3. Особенности выполнения сложения двоичных чисел без знака и со знаком
- •1. Примеры сложения чисел без знака.
- •2. Примеры сложения чисел со знаком.
- •5.4. Двоично-десятичная система представления чисел
- •5.5. Представление чисел в формате с плавающей точкой
- •Примеры представления чисел типа single
- •Примеры представления чисел типа real
- •6. Семейство процессоров х86
- •После изучения главы необходимо знать
- •6.1. Архитектура процессора 8086
- •Регистры процессора
- •Инструкции процессора
- •Сегментация памяти
- •Методы адресации
- •Распределение памяти
- •Прерывания
- •Функционирование
- •6.2. Процессоры 80286
- •Реальный режим
- •Защищенный режим
- •Прерывания
- •Регистр состояния задачи
- •Некоторые особенности функционирования
- •Функциональная схема pc at
- •7. Шина isa и интерфейсы сопряжения с устройствами управления
- •После изучения главы необходимо знать
- •7.1. Конструкция шины isa
- •Выводы шины isa
- •Распределение адресов на системной плате ат
- •Циклы магистрали
- •Прямой доступ к памяти
- •Регенерация памяти
- •Основные электрические характеристики линий isa
- •7.2. Проектирование устройств сопряжения для шины isa
- •7.2.1. Селекторы (дешифраторы) адреса
- •7.2.2. Операционная часть интерфейса
- •7.2.3. Микросхемы для построения интерфейсов Условные графические обозначения элементов цифровой техники
- •7.2.4. Микросхемы приемопередатчиков сигналов магистрали
- •Микросхемы селекторов адреса выходных регистров
- •8. Интерфейс centronics
- •После изучения главы необходимо знать
- •8.1. Порядок обмена по интерфейсу Centronics
- •8.2. Программируемый параллельный интерфейс ( ппи)
- •9. Обмен данными по интерфейсу rs-232
- •После изучения главы необходимо знать
- •9.1. Назначение линий связи rs-232
- •9.2. Подключение модема к rs-232
- •9.3. Подключение терминалов к rs-232
- •9.4. Подключение удаленных объектов управления
- •9.5. Назначение портов rs-232
- •10. Отсчёт реального времени в эвм
- •После изучения главы необходимо знать
- •10.1. Программируемый таймер
- •10.1.1. Режимы работы таймера
- •10.1.2. Таймер на системной плате ibm pc
- •10.2. Программируемый контроллер прерываний
- •10.2.1. Режимы работы пкп
- •10.2.2. Программирование пкп
- •10.3. Прерывания в ibm pc
- •10.3.1. Векторы прерывания
- •10.3.2. Прерывания bios и dos
- •10.3.3. Написание собственных прерываний
- •10.4. Отсчёт реального времени в эвм
- •10.5. Процедуры и функции для работы с прерываниями
- •После изучения главы необходимо знать
- •11.1. Архитектура 32-разрядных процессоров
- •11.1.1. Регистры процессора
- •11.1.2. Организация памяти
- •11.1.3. Режимы адресации
- •11.1.4. Ввод и вывод
- •11.1.5. Прерывания и исключения
- •11.1.6. Процессоры Pentium
- •11.2. Страничное управление памятью
- •11.3. Кэширование памяти
- •Кэш прямого отображения
- •Ассоциативный кэш
- •12. Однокристальные микроконтроллеры
- •После изучения главы необходимо знать
- •12.1. Однокристальный микроконтроллер к1816
- •12.2. Avr микроконтроллеры
- •12.3. Процессоры обработки сигналов
- •12.3.1. Однокристальный цифровой процессор обработки
- •12.3.2. Цифровые процессоры обработки сигналов (цпос)
- •13. Промышленное оборудование для цифровых систем управления
- •После изучения главы необходимо знать
- •13.1. Оборудование для централизованных систем управления
- •13.1.1. Персональные компьютеры для целей управления
- •13.1.2. Промышленные рабочие станции
- •13.1.3. Шасси для ibm совместимых промышленных компьютеров
- •13.1.4. Модульные промышленные компьютеры mic-2000
- •13.1.5. Процессорные платы
- •13.1.6. Устройства для сбора данных и управления
- •13.2. Оборудование для распределенных систем сбора данных и управления
- •13.2.1. Модули удаленного сбора данных и управления adam-5000
- •13.2.2. Модули удаленного сбора данных и управления adam-4000
- •13.3. Прикладное программное обеспечение
- •Заключение
- •Список использованных источников
- •Оглавление
- •Системы счисления и арифметические
4.1.1. Формат команд микропроцессора к580ик80а
В микропроцессоре используются одно-, двух- и трехбайтовые форматы команд.
Содержимое 1-го байта указывает на формат команды, код операции, вид адресации и регистры или регистровые пары, если они участвуют в выполнении операции. В команде нельзя указать непосредственно разряды, ответственные за первые 3 составляющие, которые не разделяются и считаются единым полем кода операции. Если в операции участвуют регистры, то они могут быть указаны в 1-ом байте. При этом разряды 0-2 отведены под номер регистра-источника операнда, а разряды 3-5 отведены под номер регистра-приемника. Если регистр не участвует в операции, то его место в команде отводится под код операции.
К двухбайтным командам относятся команды с непосредственной адресацией и команды ввода-вывода. В этом случае второй байт содержит или 8-разрядный операнд, или номер устройства ввода-вывода. В трехбайтовых командах 1-ый байт содержит код операции, второй байт содержит младшую, а третий - старшую часть двухбайтного адреса операнда, или перехода, или двухбайтного операнда.
4.1.2. Методы адресации микропроцессора к580ик80а
В микропроцессоре используется 4 метода адресации:
1. Прямой регистровый метод адресации: операндами являются содержимое указанных в команде регистров.
2. Непосредственный метод адресации: операнд, занимающий один или два байта, задается во втором или во втором и третьем байте команды.
3. Косвенная адресация: в команде указывается пара регистров, содержащая адрес операнда.
4. Абсолютный метод адресации: адрес операнда содержится во втором (младшая часть) и третьем (старшая часть) слове команды.
Для каждого типа команд особым образом формируются признаки. Особенности формирования признаков:
Команды пересылки и переходов не изменяют состояние признаков.
Команды приращения не меняют признак переноса С.
Команды приращения пар регистров не изменяют признаки.
Арифметические операции формируют все признаки; при сложении содержимого пар регистров используется признак переноса С.
Логические операции сбрасывают признаки переносов С и V.
4.1.3. Команды безусловной и условной передач управления
Команды безусловной и условной передач управления принудительно изменяют содержимое счетчика команд процессора в соответствии со значением адреса перехода в программе, задаваемым в команде. При указании места перехода указывают абсолютный адрес, на который следует осуществить переход. При выполнении команд условных ветвлений процессор анализирует соответствие флажков регистра состояния процессора задаваемому командой условию и при выполнении этого условия осуществляет модификацию своего регистра-счетчика команд. При невыполнении заданного условия содержимое счетчика команд не корректируется и происходит обычная выборка следующей по порядку команды.
В системе команд процессора К580ИК80А предусмотрены безусловные и условные переходы, безусловные и условные переходы к подпрограмме и возвраты. При этом адрес перехода задается во втором ( младший байт адреса ) и третьем байте ( старший байт адреса ) команды.
Перед использованием подпрограмм и прерываний указатель стека должен быть установлен. В связи с этим процедура начальной установки состояния стека использующей его программой (определение выделяемой под стек области памяти) состоит в начальной установке регистра-указателя стека, а именно, записи в него адреса ячейки памяти, являющейся "вершиной" пустого стека. Установка в SP некоторого начального значения производится по команде пересылки SPHL (1111 1001). По этой команде в SP пересылается содержимое пары регистров HL. Обмен со стеком осуществляется двухбайтовыми словами. Сначала размещают старший байт, затем младший байт адреса. Можно переслать также данные из пары регистров DE в стек, используя команду PUSH D (1101 0101). Средняя триада кода - код старшего регистра D.
При записи в стек указатель стека уменьшается на 1 и содержимое регистра D заносится в стек; затем SP снова уменьшается на 1 и в стек заносится содержимое регистра E.
В микропроцессоре предусмотрена возможность прерывания текущей программы по запросам внешних устройств. Чтобы разрешить прерывание программы на каком-то участке программы выполняется команда разрешения прерывания EI (1111 1011). Для запрета прерывания используется команда DI (1111 0011).
Процесс прерывания выполняется следующим образом. От внешнего устройства поступает сигнал запроса прерывания. Если прерывание разрешено, то после выполнения текущей команды в шине данных в такте выдачи информации о состоянии процессора появятся сигналы: D0- "Подтверждение прерывания", D1-"Ввод" и D5- "Прием 1-го байта". По сигналу "Подтверждение прерывания" внешнее устройство выдает на шину данных команду "Рестарт" - RST. При выполнении команды RST содержимое счетчика команд PC запоминается в стеке, а в PC заносится адрес первой команды обработки прерывания, который задается следующим образом.
RST имеет структуру 11 *** 111, где * - двоичная цифра. При выполнении команды RST в счетчик заносится адрес 00 000 000 00 *** 000. Задавая *** , определяем одну из 8 программ обработки. Адрес *** формируется аппаратурой внешнего устройства. После выполнения прерывающей программы возврат в основную программу производится по команде RET.
Прямой доступ к памяти (состояние захвата) осуществляется следующим образом. Внешнее устройство выставляет сигнал требование прямого доступа в линию "Запрос захвата". Приняв запрос, процессор заканчивает выполнение текущего цикла, отключается от шин и выдает сигнал "Подтверждение захвата", по которому ВУ начинает обмен. После снятия сигнала "Запрос захвата" процессор начинает выполнять следующий цикл.
Процессор имеет состояние останова, в которое он может быть переведен командой HLT (0111 0110). При выполнении этой команды шины переводятся в 3-е состояние и вырабатывается сигнал "логической 1" на выходе управляющей линии "Ожидание". Вывод процессора из этого состояния осуществляется перезапуском или прерываниями.