- •Цифровые эвм
- •§1.2 Структуры типичных микроЭвм
- •§1.3 Архитектура микро- и мини – эвм
- •§1.4 Архитектура эвм
- •§1.5 Ортогональность архитектуры микропроцессоров.
- •§2. Микропрограммные устройства управления §2.1 Структура микропрограммных устройств
- •§2.2 Способы записи микропрограмм
- •1) Гса должна содержать одну начальную, одну конечную вершину и конечное множество операторных и условных вершин;
- •2) Каждый выход гса соединяется только с одним входом;
- •3) Входы и выходы различных вершин соединяются дугами, направленными от выхода к входу;
- •4) Для любой вершины гса существует, по крайней мере, один путь из этой вершины к конечной вершине, проходящей через операторные и условные вершины в направлении соединяющих их дуг;
- •§2.3 Микропрограммный принцип управления операциями
- •1) Определение формата операционной части мк;
- •2) Синтез формата адресной части мк;
- •3) Синтез структурной схемы автомата;
- •4) Построение карты программирования пзу или плм.
- •§2.4 Синтез мпа с использованием “жёсткой” логики
- •2. Прибавить к содержимому сумматора первое частичное произведение.
- •3. К содержимому сумматора прибавить сдвинутое на разряд вправо второе частичное произведение.
- •4. Далее аналогично прибавить третье, четвертое и последующие частичные произведения.
- •§2.5 Выбор схемы операционного устройства
- •1) Два регистра (регистр множимого rg2 и регистр множителя rg1);
- •2) Сумматор (5м);
- •3) Счетчик (ст) для подсчета числа суммирований. На рис. 2.9 показаны обозначения этих узлов на схемах.
- •§3. Запоминающие устройства §3.1 Запоминающие устройства и их назначение
- •§3.2Классификация и основные характеристики полупроводниковых зу
- •§3.3 Статические озу
- •§3.4 Динамические озу
- •§3.5 Память на пзс
- •§3.7 Функциональные схемы озу
- •§3.8 Функциональные схемы пзу и ппзу
- •§3.9 Организация многокристальной памяти
- •§3.10 Программирование пзу
- •§3.11 Программируемые логические матрицы
- •§4. Процессоры и микропроцессоры §4.1Классификация микропроцессоров
- •§5.Сравнение архитектур микропроцессоров
- •§5.1 Архитектуры микропроцессоров.
- •§5.2 Ортогональность архитектуры микропроцессоров.
- •§5.3 Основные принципы построения устройств обработки цифровой информации
- •Существует два основных типа управляющих автоматов:
- •1) Управляющий автомат с жесткой логикой.
- •2) Управляющий автомат с хранимой в памяти логикой.
- •§5.4 Принципы организации арифметико – логических устройств.
- •§5.5 Классификация алу
- •1) Для чисел с фиксированной запятой;
- •2) Для чисел с плавающей запятой;
- •3) Для десятичных чисел.
- •§5.6 Структура и формат команд. Кодирование команд.
- •1) Команды арифметических операций для чисел с фиксированной и плавающей запятой;
- •§6.Проектирование микро - эвм
- •§6.1.Функциональные блоки и организация управления в микро - эвм §6.1.1Общие сведения
- •§6.1.2. Структура операционного устройства
- •§6.1.3. Структура устройства управления
- •1. Безусловный переход из адреса Ai по адресу Aj определенному одним из способов адресации (рис. 6.7,а).
- •Однокристальные эвм §7.Описание микроконтроллеров 8051, 8052 и 80c51 §7.1 Вступление
- •§7.2Специальные функциональные регистры
- •§7.3 Структура и работа портов
- •§7.3.1 Конфигурации ввода-вывода
- •§7.3.2 Запись в порт
- •§7.3.3 Загрузка и согласование портов.
- •§7.3.4 Особенность чтения-модификации-записи
- •§7.4.Доступ к внешней памяти
- •§7.5 Таймер/счетчик
- •Таймер 0 и Таймер 1
- •Режим 0 (mode 0)
- •М1 м0 Режим
- •§7.5 Последовательный интерфейс
- •§7.5.1 Многопроцессорные связи
- •§7.5.2 Управляющий регистр последовательного порта
- •§7.5.4 Скорость приема/передачи
- •§7.5.5Использование таймера 1 для задания скорости приема/передачи
- •Дополнительные сведения о режиме 0
- •Дополнительные сведения о режиме 1
- •Дополнительные сведения о режимах 2 и 3
- •Прерывания
- •§7.6 Структура уровней приоритета
- •Перехват прерываний
- •Внешние прерывания
- •Время отклика
- •Одношаговые операции
- •Версии микросхем с сппзу
- •Две схемы блокировки программной памяти
- •Защита пзу
- •Внутричиповые осцилляторы
- •Осцилляторах mcs-51
- •Внутренняя синхронизация
- •§8.1.Введение
- •§8.2. Обзор характеристик
- •Отличия pic16c84 от pic16c5x
- •Mаркировка при заказе
- •Разводка ножек
- •Прямая адресация.
- •Проблемы с таймером
- •Регистр статуса
- •Программные флаги статуса
- •Аппаратные флаги статуса
- •Организация встроенного пзу
- •Pc и адресация пзу
- •Стек и возвраты из подпрограмм
- •Данные в eeprom
- •Управление eeprom
- •Организация прерываний
- •Регистр запросов и масок
- •Внешнее прерывание
- •Прерывание от rtcc
- •Прерывание от порта rb
- •Прерывание от eeprom
- •Обзор регистров/портов
- •2) Прочитать порт в. Это завершит состояние сравнения.
- •Проблемы с портами
- •Обзор команд и обозначения
- •Условия сброса
- •Алгоритм сброса при вал. Питания
- •Watch Dog таймер
- •Типы генераторов.
- •Генератор на кварцах
- •Rc генератор.
- •Внешнее возбуждение. Регистр option
- •Подключения делителя частоты
- •1. Movlw b`xx0x0xxx` ;выбрать внутреннюю синхронизацию и новое
- •Конфигурационное слово
- •01 Xt генератор
- •10 Hs генератор
- •11 Rc генератор
- •Индивидуальная метка
- •Защита программ от считывания
- •1) Запрограммируйте и проверьте работу исправного кристалла.
- •2) Установите защиту кода программы и считайте содержимое программной памяти в файл-эталон.
- •3) Проверяйте любой защищенный кристалл путем сравнения его программной памяти с содержимым этого эталона.
- •Режим пониженного энергопотребления.
- •1. Внешний сброс - импульс низкого уровня на ножке /mclr.
- •2. Сброс при срабатывании wdt(если он разрешен)
- •3. Прерывания. (Прерывание с ножки int, прерывание при изменении порта b, прерывание при завершении записи данных eeprom).
- •Максимальные значения электрических параметров
- •1. Полная рассеиваемая мощность не должна превышать 800 мВт для каждого корпуса. Рассеиваемая мощность вычисляется по следующей формуле:
- •Скоростные характеристики:
- •§8.3. Что такое pic ?....
- •Hабор регистров pic
- •Регистр косвенной адресации ind0
- •Регистры общего назначения
- •Сторожевой таймер wdt
- •Тактовый геhератор
- •Xt кварцевый резонатор
- •От теории - к практике...
- •Initb equ b'00000000' ; ; Рабочая секция ; ; начало исполняемого кода
- •Пример программы
- •Ассемблироваhие
- •Программироваhие
- •Набор команд pic
- •Incf scratch,0 ;увеличить scratch на 1
- •Iorwf dataport,1 ;установить биты в поpте b по маске w
- •Iorlw 09h ;установить 0-й и 3-й биты Светодиоды покажут 00011001.
- •Xorlw b'11111111' ;пpоинвеpтиpовать w Светодиоды покажут 11011111.
- •Comf scratch,0 ;инвеpтиpовать scratch Светодиоды покажут 10101010.
- •Специальные команды
- •§9.Введение вAdsp §9.1. Обзор
- •§9.2. Функциональные устройства
- •§9.3. Интерфейс системы и памяти
- •§9.4. Набор команд
- •§9.5. Рабочие характеристики цифровых сигнальных процессоров
- •§9.6. Базовая архитектура
- •§9.7. Вычислительные устройства
- •§9.8. Генераторы адреса и программный автомат
- •§9.9. Шины
- •§9.10. Другие устройства на кристалле
- •§9.11. Последовательные порты
- •§9.12. Таймер
- •§9.13. Порт интерфейса хост-машины (adsp-2111, adsp-2171, adsp-21msp5x)
- •§9.14. Порты прямого доступа к памяти (adsp-2181)
- •§9.15. Аналоговый интерфейс
- •§9.16. Система программно – аппаратных средств отладки процессоров семействаAdsp - 2100
- •§9.17. Генераторы адреса и программный автомат
- •§10Вычислительные устройства §10.1. Обзор
- •Последовательности двоичных символов
- •Беззнаковый формат
- •Знаковые числа в дополнительном коде
- •§10.2. Арифметико – логическое устройство (алу)
- •Блок-схема алу
- •Стандартные функции
- •Регистры ввода/вывода алу
- •Возможность операций с повышенной точностью
- •Режим насыщения алу
- •Режим фиксации переполнения алу
- •Деление
- •§10.3. Умножитель – накопитель (умножитель)
- •Арифметические операции умножителя
- •Арифметические операции устройства сдвига
- •Операции умножителя-накопителя
- •X*y Умножение операндов х и y
- •Форматы ввода данных
- •Регистры ввода/вывода умножителя-накопителя
- •§10.4. Устройство циклического сдвига
- •Денормализация
- •Нормализация
- •§11. Управление программой
- •§11.1. Обзор
- •§11.2. Программный автомат
- •§11.3 Команды управления программой
- •§11.4. Контроллер прерываний
- •§11.5. Условные команды
- •§12. Дополнительное аппаратное обеспечение §12.1. Обзор
- •§12.2. Начальная загрузка через хост – машину с использованием процедур запроса и предоставления шины
- •1) Для перезапуска процессора семейства adsp-2100 pb8 устанавливается низким.
- •§12.4. Сопряжение последовательного порта с цап
- •§12.5. Сопряжение последовательного порта с ацп
- •§12.6. Сопряжение последовательного порта с другим последовательным портом
- •§12.7. Сопряжение микрокомпьютера 80с51 с портом интерфейса хост – машины
- •§12.8. Обзор
- •§13. Программное обеспечение §13.1. Процесс отладки системы
- •§14. Система команд мп типа к580ик80
- •§14.1 Способы адресации мп
- •§14.2 Команды мп
- •§14.3 Пояснения к некоторым командам
- •§15. Архитектура микропроцессора z-80
- •§15.1 Назначение выводов
- •§15.2 Логическая организацияZ80
- •Устройство управления.
- •Регистры пользователя (основные регистры).
- •Регистровая пара hl.
- •Набор альтернативных регистров.
- •Арифметико-логическое устройство (алу).
- •§15.3 Система команд микропроцессора z – 80. Команды и данные.
- •3. Двухбайтовый адрес (addv).
- •4. Однобайтовая константа смещения.
- •Группа команд
- •Группа 1. Команда «нет операции»
- •Группа 2. Команды загрузки регистра константами.
- •Группа 4.Команды загрузки регистров из памяти.
- •Группа 5.Команды записи в память содержимого регистра или константы.
- •Группа 6.Команды сложения.
- •Группа 7.Команды вычитания.
- •Группа 8.Команды сравнения.
- •Подгруппа b. Команда or.
- •Подгруппа c. Команда xor.
- •Группа 11. Команда стека.
- •2.Адрес addr затем записывается в счетчик команд, и выполняется программа.
- •3.По команде ret осуществляется возврат из программы.
- •§16.Микросхема 80130
- •§17.Микросхема 80186
- •§18.Микросхема 80286
- •Verr — Проверить доступ по считыванию
- •Verw — Проверить доступ по записи
- •Определение состояния цикла шины процессора 80286
- •§19.Микропрцессоры серииiX86 фирмы intel Выбор в программе на Ассемблере типа процессора
- •§19.1. Процессоры 80186 и 80188
- •Новые инструкции
- •Инструкции pusha и popa
- •Инструкции enter и leave
- •Инструкция bound
- •Инструкции ins и outs
- •Расширенные версии инструкций процессора 8086
- •Imul si,10 это просто сокращенная форма инструкции:
- •§19.2. Процессор 80286
- •§19.3. Процессор 80386
- •Новые типы сегментов
- •Новые регистры
- •Новые сегментные регистры
- •Новые режимы адресации
- •Процессор 80386, новые инструкции
- •Проверка битов
- •Просмотр битов
- •Преобразование данных типа dword или qword
- •Сдвиг нескольких слов
- •Условная установка битов
- •Загрузка регистров ss, fs и gs
- •Расширенные инструкции
- •Специальные версии инструкции mov
- •Новые версии инструкций loop и jcxz
- •Новые версии строковых инструкций
- •Инструкция iretd
- •Инструкции pushfd и popfd
- •Инструкции pushad и popad
- •Новые версии инструкции imul
- •Imul ebp,ecx,100000000h а следующая инструкция умножает ecx на ebx, записывая результат в edx:eax:
- •Технический обзор Новое поколение процессоров фирмы intel
- •Pentium процессор. Технические нововведения.
- •Архитектура Pentium процессора
- •Суперскалярная архитектура.
- •Блок предсказания правильного адреса перехода.
- •Высокопроизводительный блок вычислений с плавающей запятой.
- •Расширенная 64-битовая шина данных.
- •Средства разделения памяти на страницы.
- •Определение ошибок и функциональная избыточность.
- •Управление производительностью.
- •§22.Введение в команды mmx.
- •§22.1. Регистры
- •§22.2. Префиксы
- •§22.3.Распаровка (paring).
- •§22.4. Типы данных
- •§22.5. Краткое описание команд
- •§23.Логическая структура микропроцессорной системы на основе комплекта бис секционного микропроцессора §23.1. Комплект бис секционного микропроцессора.
- •§23.2. Бис микропрограммного управления на основе программируемой логической матрицы (плм).
- •§23.3. Комплект бис для построения электронной системы.
- •§24. Обзор секционируемых мпк бис §24.1. Микропроцессорный комплект серии кр1802
- •§24.1.1. Восьмиразрядная микропроцессорная секция (мс) кр1802вс1.
- •§24.1.2. Двухадресная память общего назначения кр1802ир1.
- •§24.1.3. Шестнадцатиразрядный арифметический расширитель кр1802вр1.
- •§24.1.4. Схема обмена информацией (ои) кр1802вв1.
- •§24.1.5. Бис интерфейса (бис и) кр1802вв2.
- •§24.1.6. Сумматор (см) к1802им1.
- •§24.1.7. Км1802врз—умножитель двух 8-разрядных чисел.
- •§24.1.8. Км1802вр4—умножитель двух 12-разрядных чисел.
- •§24.1.9. Км1802вр5—умножитель двух 16-разрядных чисел.
- •§24.2. Микропроцессорный комплект серии к1804
- •§24.2.1. Центральные процессорные элементы к1804вс1 и к1804вс2
- •§24.3. Микропроцессорный комплект серии к587 §24.3.1. Арифметическое устройство к587ик2.
- •§24.3.2. Управляющая память к587рп1.
- •§24.3.3. Устройство обмена информации к587ик1.
- •§24.3.4. Арифметический расширитель к587икз.
- •§24.3.5. Архитектурные особенности построения управляющей микро-эвм на базе мпк серии к587
Группа 11. Команда стека.
В большинстве программ машинных кодов осуществляется активное использование машинного стека: программистом в качестве места где можно хранить данные, микропроцессором - для сохранения адресов возврата. Команда, которые образуют эту группу, можно разделить на две подгруппы для пользователя и три подгруппы для микропроцессора.
Подгруппа А.PUSH и POP
Эти команды позволяют программисту по PUSH сохранить 2 байта данных в машинном стеке, а по POP-копировать 2 байта из машинного стека. Эти 2 байта данных должны копироваться в строго определенную пару регистров, но важно знать, что не производится никакой записи, которая указывала бы, к какому из двух регистров какой байт данных принадлежит.
Когда выполняется команда PUSH, указатель стека предварительно уменьшается, чтобы указать на свободный адрес, и в стек копируется содержимое старшего регистра. Затем указатель стека уменьшается вторично, и величина из младшего регистра копируется в стек. Противоположные действия имеет место во время выполнения команды POP.
Подгруппа B. Команды CALL.
Действие команд CALL следующие:
1.Текущее значение счетчика команд, т.е. адрес первой ячейки после ADDR, сохраняется в стеке. Указатель стека изменяется как в случае команды PUSH. Старший байт счетчика команд сохраняется в стеке над младшим байтом.
2.Адрес addr затем записывается в счетчик команд, и выполняется программа.
3.По команде ret осуществляется возврат из программы.
Подгруппа C. Команды RET.
По команде RET адрес возврата из машинного стека побайтно восстанавливается в счетчике команд. При этом указатель стека дважды модифицируется в сторону увеличения. Важно понимать, что восстановленный адрес возврата из машинного стека не обязательно тот, что был в начале помещен туда командой CALL.
Подгруппа D. Команды RST.
Последняя подгруппа команд в этой группе содержит специальную команду RST или команду «повторный пуск». Эти команды являются аналогичные командам CALL, но не требуют, что адрес определялся.
Группа 12.Команды сдвига.
Набор команд Z80 имеет большое число команд для сдвигов битов определенного байта. Эти команды очень полезны. Тем более, что все они сдвигают биты через флаг переноса. Сдвиг байтов влево удваивает величину, записанную в этом байте (регистре), старшие биты при этом не теряются. Во время сдвига вправо величина делится пополам.
Группа 13.Команды обработки битов.
Набор команд Z80 имеет команды, которые позволяют определять, устанавливать и сбрасывать определенные биты в пределах байта, помещенного в регистр или находящегося в памяти.
Подгруппа А. Команды BIT.
Они позволяют определять состояние определенного бита. Команды BIT устанавливают флаг ноль, если используемый бит сброшен, и наоборот.
Подгруппа B. Команда SET.
Эти команды позволяют устанавливать определенный бит, при этом не один из флагов не изменяется.
Подгруппа C. Команда RES.
Данная команда сбрасывает определенный бит. Флаги не меняются.
Команды подгруппы AUTOMATIC(NON-AUTOMATIC).
LDIR
Это самая распространенная команда из этой группы. Команда будет перемещать данные, адрес источника которых содержится в регистровой паре HL, в область памяти с адреса, находящегося в регистровой паре DE. Число перемещаемых байтов определяется в паре BC. При работе одиночный байт перемещается из(HL) в (DE). Величина в регистровой паре BC затем уменьшается, а величина в HL и DE увеличивается.
LDDR
Эта команда является такой же как команда LDIR, за исключением того, что после пересылки каждого байта значения в HL и DE уменьшаются. Поэтому команда требует, что бы базовый адрес блока соответствовал последнему адресу блока. Место назначения информации также должно относится к последнему адресу области памяти.
CPIR
Эта команда просматривает определенную область памяти для поиска первого наличия эталонной величины. Регистровая пара HL должна содержать базовый адрес, BC-число байтов для исследования, а регистр А эталонную величину. При работе байт по адресу HL сравнивается с байтом , находящемся в А. Если они не совпали, то BC уменьшается, а HL увеличивается, и сравниваются следующие байты. Так продолжается до тех пор, пока не совпадают байты, либо BC не станет равным 0.
Неавтоматические команды.
LDI
Выполнение этой команды даст перемещение одиночного байта данных из адреса записанного в регистровой паре HL, по адресу записанного в регистровой паре DE. Величина в BC уменьшается.
LDD
Как LDI за исключением того, что величина в HL и DE уменьшаются.
CPI
Выполнение этой команды заключается в сравнении байта по адресу, определенному в паре HL, с байтом в регистре А. Флаг 0 устанавливается, если они совпали, в противном случае сбрасывается.
Группа 14. Команды ввода \ вывода.
В Z80 имеется исчерпывающий набор команд, позволяющих программисту получать данные от внешнего источника (IN) или выдавать данные на периферию (OUT). Имеются простые, неавтоматические и автоматические команды в этой группе. Во всех случаях данные, которые передаются через IN и OUT определяют форму 8-ми битовых данных. По команде IN Z80 принимает байты данных с шины данных и копирует их в заданный регистр. Во время выполнения команды IN линия IORQ активна, так же как и RD. По команде OUT Z80 передает данные с заданного регистра на шину данных, оттуда они поступают на периферийное устройство. Во время работы команды OUT линия IORQ и WR будут активны. В дополнение к состоянию RD, WR и IORQ периферийное устройство будет активизироваться с использованием адреса, помещенного на адресной шине во время выполнения либо IN , либо OUT команды. Этот адрес указывает конкретный порт и в Z80 представляет собой 16- битный адрес.
Группа 15. Команды прерывания.
EI
При включении Z80 система маскированного прерывания не может прервать выполнение команд. Эта ситуация существует до тех пор, пока прерывания не будут разрешены программистом по команде EI.
DI
В любом месте программы программист может запретить прерывания по команде DI, которая не позволяет микропроцессору принимать сигналы с линии INT.
IM0
Имеется три типа прерывания. Режим 0 выбирается автоматически при включении или по команде IM0. Этот режим позволяет периферийным устройствам обмениваться информацией с микропроцессором, программа перезапуска которого должна следовать за приемом маскированного прерывания на линии INT.
IM1
Режим прерывания 1 выполняется по команде IM1 при выполнении программы ROM монитора. В других случаях необходимо включить IM1 в начало программы. В этом режиме перезапуск будет всегда выбираться с адреса 0038h при приеме сигнала на линии INT, длительность которого соответствует возможности обработки системы маскированного прерывания.
RETI
Это специальная команда возврата для использования с программой маскированного прерывания. По этой команде происходит возврат с сохранением маскированного прерывания, принятого раньше.
RETN
Это команда подобная RETI, но она применима в конце программы немаскированного прерывания.
Группа 16. Дополнительные команды.
CPL
Представляет собой простую команду, которая инвертирует содержимое регистра А, т. е. она устанавливает сброшенный бит и сбрасывает установленный. Основные флаги не изменяются.
NEG
Это команда дополнения до двух содержимого регистра А, т. е. выполняется преобразование А=-А. Эта команда влияет на основные флаги. Флаги знака и 0 зависят от результата. Флаг переноса будет установлен, если регистр А первоначально был 0.
SCF
Установка флага переноса.
CCF
Инверсия флага переноса.
HALT
Это специальная команда, заставляющая микропроцессор останавливать выполнение команд, пока не возникает прерывание. Следовательно, при поступлении прерываний, команда HALT заканчивается. Команда «PAUSE» использует это, чтобы подсчитать количество 1/50 долей секунды.