
- •Глава 1. Микропроцессорные системы
- •1. Встроенные системы контроля и управления. В таких системах встраиваемые
- •4. Распределенные высокопроизводительные систем параллельных вычислений. Микропро-
- •Стуктура микропроцессора с распределенными функциями.
- •Расширение возможностей мпс с помощью внешних вспомогательных функциональных устройств.
- •Микропроцессор кр580ик80а
- •Глава 3 . Подсистема памяти микропроцессорных систем .
- •32 Корпуса разделены на 4 группы-столбца по 8 бис, корпуса в столбце соединены по входам се. По строкам соединены выходы Двых и входы Двх корпусов.
- •7 6 1 0 Обмену мд
- •Глава 5. Средства отладки микропроцессорных
Микропроцессор кр580ик80а
БИС КР580ИК80А (рис.2.2) - это 8-разрядный процессор, в котором совмещены операционное и управляющее устройства. Управляющая память (микропрограммная) недоступна пользователю, в ней в процессе изготовления БИС уже записаны микропрограммы операций (микропрограммы, по которым выполняются команды). Другими словами, предусматривается использование некоторой фиксированной системы команд, в которую пользователь не может внести изменения.
Д0...Д7
МД
Буфер
данных
Внутренняя
шина
данных
А
кку-
(8) Буфер-(8) Регистр (5)
Регистр (8)
м
улятор
ный признаков
команд
регистр
Мультиплексор
(8)
Дешифра- W (8)
Z (8)
Б
уферный
(8)
АЛУ тор команд
Схема B (8) C (8)
регистр выбо- D (8) E (8)
ра
H (8) L (8)
Схема реги- Указатель стека
десятичной
стров Счетчик
команд
коррекции Регистр адреса
Блок управления
Буфер
адреса
Управляющее
устройство
(6)
МУ (6)
А0...А15 МА
Ф1 Ф2 Сброс Разрешение Прием с Запись
Готовность прерывания шины данных Ожидание
Запрос прерывания Подтверждение Синхронизация
Запрос захвата захвата
Рис.2.2. Структурная схема КР580ИК80А.
Регистры. Для хранения участвующих в операциях данных предусмотрено семь 8-разрядных регистров. Регистр А, называемый аккумулятором, предназначен для обмена информацией с внешними устройствами. При выполнении арифметических, логических и операций сдвига он служит источником операнда, в него помещаетсярезультат операции.
Шесть других регистров, обозначаемых B, C; D, E; H, L образуют БРОН. Название “регистры общего назначения” связано с тем, что эти регистры могут использоваться как для данных, так и для адресов. Эти регистры могут использоваться как 8-разрядные одиночные регистры. Когда необходимо хранить 16-разрядные двоичные числа, регистры объединяются в следующие пары: BC, DE, HL.
Регистры “Буф.регистр 1”, “Буф.регистр 2”, W и Z используются как буферные, рпограммно-недоступные.
16-разрядный указатель стека (SP) служит для адресации организуемого в ОЗУ стека.
СчК (16 разрядов) предназначен для хранения адреса команды. После выбора из ОЗУ очередной текущей команды содержимое СчК увеличивается на +1, и таким образом (в отсутсвие переходов) формируется адрес очередной команды.
При обращении к памяти в качестве адреса может использоваться и содержимое любой пары регистров из РОН.
При выдаче адреса содержимое соответствующих регистров передается в 16-разрядный РА, из которого через буфер адреса поступает на 16-разрядную МА. Число адресов при прямом обращении к памяти 2^16=64К.
АЛУ. В 8-разрядном АЛУ могут быть выполнены по четыре разновидности арифметических, логических и сдвиговых операций. Для операций первых двух типов одним из операндов служит содержимое аккумулятора, и результат также помещается в аккумулятор. Сдвиг выполняется только над содержимым аккумулятора.
Арифметические операции могут выполняться над десятичными числами, представленными в коде 8421 (в нем одна десятичная цифра представляется значениями четырех двоичных разрядов). Разряды регистров делятся на две группы по четыре разряда. При суммировании десятичных чисел в таком коде может потребоваться коррекция результата путем прибавления к нему числа 0110. В каждом квартете (четырех разрядах результата) такая коррекция в МП выполняется схемой десятичной коррекции (СДК).
Регистр признаков (РП). 5-разрядный регистр,предназначен для хранения определенных признаков числа-результата некоторых операций (рис.2.3.).
Рис.2.3. Регистр признаков КР580ИК80А
Блок управления состоит из РК (регистра команд),куда принимается 1-й байт команды ,и управляющего устройства (УУ),формирующего управляющие сигналы ,под действием которых выполняются микрооперации в отдельных узлах,и содержащего выполненную на ПЛМ(программируемой логической матрице) УП (управляющую память),в которой хранятся микропрограммы отдельных операций.Буферы данных и буферы адреса обеспечивают связь центрального процессора с внешними МД и МА.Их особенность-в каждом разряде эти буферы используют логические элементы с тремя состояниями.Кроме состояний логического 0 и логической 1,имеется еще одно,в котором они имеют практически бесконечное сопротивление.Использование таких буферов позволяет: 1) микропроцессору отключаться от внешних магистралей МА иМД,предоставляя их в распоряжение ВУ; 2) использовать одну и ту же МД как для приема данных,так и для их передачи,что позволяет сократить число выводов корпуса МП.
Выдача/прием информации о состоянии МП КР580ИК80А
в специальный регистр/системный контроллер
Процесс выполнения всякой команды разбит на циклы М1,...,М5.В каждом цикле производится одно обращение МП к памяти/УВВ (за исключением одной лишь команды ДАД).В зависимости от типа команды ее выполнение может занять от одного (М1) до пяти (М1,...,М5) циклов.
Каждый цикл включает в себя несколько тактов: Т1,...,Т5.Циклы могут содержать три (Т1,...Т3),четыре (Т1,...,Т4) либо пять (Т1,...,Т5) тактов.Первые три такта во всех циклах используются для организации обмена с памятью /УВВ,такты Т4 и Т5 ,если они есть в цикле,-для выполнения внутренних операций в МП.
Каждый из восьми разрядов (Д0,...Д7) кода состояния МП , зафиксированного в системном контроллере (рис.2.4.) ,имеет свою трактовку в течении соответствующих циклов команд .
Рис.2.4. Взаимодействие
КР580ИК80А с системным контроллером.
Например,Д2 свидетельствует о том,что в данном цикле на адресной шине (МА) установлено содержимое указателя стека (SP).Д2=1 лишь в двух типах циклов из десяти возможных: ”Чтение стека”,”Запись в стек”.
В течении остальных типов циклов,например,”Выборка 1-го байта команды”,или “Подтверждение прерывания”, Д2=0.
Однокристальный микропроцессор К1801ВМ1/ВМ2
16-разрядный МП К1801ВМ1 предназначен для обработки цифровой информации в системах управления,связи,контрольно-измерительной аппаратуре (рис.2.5).
Рис.2.5. Укрупненная структурная схема К1801ВМ1/ВМ2
Операционный блок - 16-разрядный - обеспечивает формирование адресов команд и данных,выполнение арифметических и логических операций,временное хранение операндов и результатов операций.Блок расширенной арифметики МП К1801ВМ2 (рис.2.5.) реализует команды умножения,деления,сдвига на N разрядов одиночного и двойного слова.
Блок микропрограммного управления (БМУ) предназначен для выработки последовательности микрокоманд , соответствующей выполняемой команде.
Интерфейсный блок обеспечивает обмен управляющей информацией между МП и его окружением.Здесь в его состав включен блок прерываний , который обеспечивает работу проритетной системы прерываний , производя прием и предварительную обработку внутренних и внешних запросов прерывания. В этот блок также входит схема тактирования , обеспечивающая синхронизацию всех функциональных блоков МП .
Блок магистрали связывает внутреннюю магистраль МП с внешней магистралью Адрес/Данные (МА/МД) , т.е. системной магистралью МПС.
К1801ВМ1 реализует систему команд “Э-60” .Посмотрим поэтому более подробно ресурсы операционного блока (регистры) , используемые командами (рис 2.6.).
Рис.2.6.
Регистры общего назначения и признаков
К1801ВМ1
Большинство РОН являются универсальными : выполняют функции аккумуляторов , базовых регистров , указателей адресов и т.д. Два РОН используются специальным образом : R0 интерпретируется командами работы с подпрограммами и прерываний как аппаратный указатель стека (SP) , R7 служит счетчиком команд (СчК) и не может выполнять функции аккумулятора.
В регистре признаков (состояний) процессора хранятся коды условий (N , Z , V , C ) , которые информируют о результате выполнения операции.
Маска прерывания “Р”. Если Р=0 , то сигнал прерывания принимается к обработке , т.е. происходит прерывание текущей программы .При Р=1 прерывание запрещено ( замаскировано ) .
Разряд слежения “Т”. Если Т=1 (устанавливается программистом) , то выполняемая программа прерывается сразу после выполнения текущей команды . Другими словами , установкой Т=1 программист обеспечивает возможность покомандного выполнения отлаживаемой программы .