РефератыИнформатикаМиМикропроцессор В1801ВМ1. Его структура

Микропроцессор В1801ВМ1. Его структура


Микропроцессор В1801ВМ1 его структура и система команд


Структура микропроцессора В1801ВМ1


Однокристальный 16-разрядный микропроцессор К1801ВМ1 предназначен для выполнения следующих функций:


вычисление. адресов операндов и команд.


обмен информацией с другими устройствами; подключенными к системной магистрали;


обработка операндов;


обр
аботка пр
ер
ываний от клавиатуры и устройств пользователя, подключенных к разъему порта ввода-вывода.


Процессор является единственным активным устройством микроЭВМ, управляющим циклами обращения к системной магистрали и обрабатывающим пре
рывания от пассивных устройств, которые могут посылать или принимать информацию только под управлением про
цессора.


Микропроцессор К1801ВМ
1 работает в БК
с тактовой частотой 3 МГц и содержит следующие основные функциональные блоки :


16-разрядный операцион
ный блок, служащий для формирования адресов команд и операндов, выполнения логиче
ских и арифметических операц
ий, хранения операндов и результатов;


блок микропрограммного управле
ния,
вырабатывающий последователь
ность микрокоманд, Соотв
етствующу
ю коду принятой ма
шинной команды. Этот блок построен на базе программируемой логической матрицы (ПЛМ).
с
одержащей 250 логических произведений;


блок прерываний, организующий приоритетную систему прерываний (
прием и п
редварительная обработка внешних и внутренних запросов на прерывание);


интерфейсный блок, о
беспечивающий обмен информацией между микропроцессором ром и прочими устройства
ми, под
ключе
нными к систе
мной магистрали. Этот же, блок ос
уществляет арбитраж при операциях прямого доступа к
па
мяти, формиру
ет


последовательность. управляющих сигналов:


блок си
сте
мной магистрали, связывающий внутреннюю магистраль однокристального микропроцессора с внешней,
управляющий усилителями приема и передачи ин
формации на совмещенные выводы адресов и данных;


схема тактирования, обеспечивающая синхронизацию работы внутренних блоков микропроцессора.


Система команд, реализованная в ПЛМ блока микропрограммного управления микропроцессора К1801BM1, совпадает с системой команд наиболее распространенных отечественных мини- и микро-ЭВМ типа “Электроника 60” (ДВК-2. 3, 4 и т.п.) и практически аналогична принятой для компьютеров серии DEC. Предусмотрен также ряд специальных команд, предназначенных для работы с системным ПЗУ К1801РЕ1.


Сигналы AD0-AD15 представляют собой адреса и данные, передаваемые по совмещенной системной магистрали. Передача адресов и данных по одним и тем же линиям связи обеспечивается путем разделения этих операций во времени.


Группа сигналов SYNC, DIN, DOUT, WTBT, RPLY служит для управления передачей информации по системной магистрали:


SYNC- вырабатывается процессором как указание, что адрес находится на выводах системной магистрали, и сохраняет активный уровень до окончания текущего цикла обмена информацией;


RPLY- вырабатывается пассивным устройством в отв
ет на сигналы DIN и D
OUT. При отсутствии сигнала RPLAY (т. е. когда выбранное устройство- регистр или ячейка памяти - не отвечает) процессор отсчитывает 64 такта синхрогенератора и затем отрабатывает прерывание по зависанию (вектор 4);


DIN- предназначен для организации ввода данных (когда микропроцессор во время действия сигнала SYNC готов принять данные от пассивного устройства) и ввода адреса вектора прерывания (DIN вырабатывается совместно с сигналом IAK0 при пассивном уровне SYNC);


DOUT- означает, что данные, выдаваемые микропроцессором, установлены на выводах системной магистрали;


WTBT- указывает на ра
бо
ту с отдельными байтами и вырабатывается при обраще
ни
и по нечетному
адресу (операнд - старший байт) или
при отработке байтовых команд
.


Сигнал VIRQ является запросом на прер
ывание от внешнего устройства
, информир
ующим микропроцессор о готовности устройства передавать адрес вектора прерывания. Если прерывание разрешено, то в ответ на этот сигнал процессор вырабатывает сигналы DIN и IAK0
.


Сигнал IRQ1 обеспечивает управление режимом “СТОП-ПУСК” процессора с внешнего переключателя. Низкий уровень сигнала (активный) соответствует режиму “СТОП”.


Сигналы IRQ2 и IRQ3 вызывают прерывания по фиксированным векторам 1008
и 2708
соответственно (при переходе из высокого уровня в низкий) .


Сигнал предоставления прерывания IAK0 процессор вырабатывает в ответ на внешний сигнал VIRQ. Сигнал IAK0 передается по очереди, начиная с устройства с максимальным приоритетом, ретранслируясь от одного устройства к другому в порядке уменьшения приоритетов. Устройство с наибольшим приоритетом из числа выставивших запрос на прерывание (сигнал VIRQ) запрещает дальнейшее распространение сигнала IAK0, таким образом запрещая на время обработки данного прерывания запросы от устройств с тем же или более низким приоритетом. Однако устройства с более высоким приоритетом могут прервать обработку повторным (“вложенным”) прерыванием.


Сигнал DMR вырабатывается внешним активным устройством, требующим передачи ему системной магистрали (режим прямого доступа к памяти). В ответ па него процессор устана
вли
вает сигнал DMGO, предоставляющ
ий системную магистраль внешнему устройству с наивысшим приоритетом из числа запросивших прямой доступ (механизм реализации приоритетов - тот же, что и для прерываний). Это устройство прекращает дальнейшее распространение сигнала DMGO и выставляет сигнал SACK, означающий, что устройство прямого доступа к памяти (ПДП)
может производить обмен данными, независимо от процессора используя стандартные циклы обращения к системной магистрали.


Низкий уровень сигнала BSY означает,
что микропроцессор начинает обмен по магистрали (т.е. что она занята для других устройств). Переход сигнала из низкого уровня в высокий указывает на окончание обмена.


Сигнал авар
ии источника питания D
CL
O вызывает установку микропроцессора в исходное состояние и появление сигнала INIT. Сигнал аварии сетевого питания ACLO вызывает пере
ход микропроце
ссора на обработку прерывания по сбою питании (высокий уровень свидетельствует о нормальном сетевом напряжении).


Сигнал SEL1 инициализирует обращение к регистру управления системными внешними устройствами, а сигнал SEL2 - к регистру порта ввода-вывода. Направление обмена данными между микропроцессором и регистрами определяется сигналами DIN или DOUT соответственно. Выставление сигнала RPLY от этих регистров не требуется. Длительности сигналов SEL1 и SEL2 совпадают с длительностью сигнала BSY.


Сигнал INIT является ответом микропроцессора на сигнал DCLO и используется, как правило, для установки периферийной части системы в исходное состояние.


Общие характеристики микропроцессора К1801ВМ1





















































Представление чисел


В дополнительном коде с фиксированной запятой


Виды команд


Безадресные, одноадресные, двухадресные


Виды адресации


Регистровая, регистровая косвенная, автоинкрементная, автоинкрементная косвенная, автодекрементная, автодекрементная косвенная, индексная, индексная косвенная


Количество регистров общего значения


8


Количество уровней прерывания


4


Тип системной магистрали


Q-bus (МПИ, ОСТ 11.305.903-80)


Адресное пространство, Кб


64


Тактовая частота, МГц


До 5


Максимальное быстродействие при выполнении регистровых операций, оп./с


До 500000


Потребляемая мощность, Вт


Не более 1


Напряжение питания, В


+5 ( ± 5% )


Уровни сигналов, В: “лог.0”(активный уровень)


Менее 0,5


“лог.1”


Более 2,4


Нагрузочная способность по току, мА


3,2


Емкость нагрузки, пФ


До 100


Технология изготовления


N-МОП


Конструкция


Плананарный металлокерамический корпус с 42 выводами



Система команд микропроцессора К1801ВМ1


Данный процессор содержит 8 регистров общего назначения (РО

Н, обозначение в описании команд RN, где N=0..7)один внутренний регистр состояния процессора PSW в котором задействовано 5 битов, каждый из которых имеет свои имена:


C-бит переполнения


T-бит трассировки


V-бит арифметического переполнения


Z-бит равенства 0


N-бит отрицательного числа


Два регистра из РОН (R6 и R7) отвечают за следующие функции:


R6 (SP)-Указатель стека


R7 (PC)-Счетчик команд.


При описании команд, используются следующие обозначения:


“SS” - поле адресации операнда-источника


“DD” - поле адресации операнда-приемника


“XXX”- смещение (-128,...,+128; 8 бит)


“N” - число, 3 бита


“NN” - число, 6 бит


“(N)” -содержимое ячейки или регистра N


“s” - операнд -источник


“d” - операнд -приемник


“r” - содержимое регистра


“<=” - становится равным


“X” - относительный адрес


“%” - определение регистра


“/” - логическое И


“/” - логическое ИЛИ


“” - исключающее ИЛИ


“|” - НЕ


Операции над разрядами PSW


“*” - установка/сброс по результату


“-” - состояние разряда не меняется


“0” - сброс


“1” - установка


Методы адресации






МЕТОД


R



Метод мнемоника


регистровая R


косвенная регистровая ( R ) или @R


автоинкрементная ( R )+


косв. автоинкрементная @( R )+


автодекрементная -( R )


косв. автодекрементная @-( R )


индексная X( R )


косв. индексная @X( R )


Команды работы с программами


000000 HALT останов


000001 WAIT пауза - ожидания прерывания


000002 RTI возврат из прерывания ( PC <=(SP)+)


000003 BPT отладочное прерывание (-(SP) <=PSW <=(16) )


000004 IOT вызов системы ввода вывода ( -(SP) <=PC <= (22) )


000005 RESET сброс магистрали и процессора


000006 RTT возврат, с запретом прерывания по Т-разряду до исполнения следующей команды ( PC<=(SP)+ PSW<=(SP)+ )


0001DD JMP безусловный переход ( PC <= d )


00020R RTS возврат из подпрограммы ( PC <= R <=(SP)+


000240 NOP нет операции


004RDD JSR вызов подпрограммы (-(SP) <= R <= PC <= d )


0064NN MARK восстановление стека ( -(SP)<=PC +(2 x NN) PC<=R5 <=(SP)+


077RNN SOB выч. 1 и ветвл., если (R#) не 0 ( R# <= R#-1 PC<=PC=( 2xNN) )


104000-104277 EMT вызов подпрограммы ПЗУ (-(SP)<= PSW <= (32) -(SP)<= PC <= (30) )


1064SS MTPS запись PSW ( PSW <= s )


1064Dd MFPS чтение PSW ( d <= PSW )


Переходы по условию (ветвления)











Базовый КОП


±


XXX


15


8


7


0



Если условие выполняется, то (PC) <= (PC) + (2 x NN)


000400 + XXX BR безусловный переход


001000 + XXX BNE нет равенства ( нулю ) Z=0


001400 + XXX BEQ равенство ( нулю ) Z=1


102000 + XXX BVC арифм.переп. отсутствует V=0


102400 + XXX BVS произошло арифм.переп. V=1


103000 + XXX BCC перенос отсутствует C=0


103400 + XXX BCS произошел перенос С=1


Переход по знаку


100000 + XXX BPL знак плюс N=0


100400 + XXX BMI знак минус N=1


002000 + XXX BGE больше или равно (нулю) NV=0


002400 + XXX BLT меньше (нуля) NV=1


003000 + XXX BGT больше (нуля) Z/(NV)=0


003400 + XXX BLE меньше или равно(нулю) Z/(NV)=1


Переход без знака


101000 + XXX BHI больше C/Z=0


101400 + XXX BLOS меньше или равно C/Z=1


103000 + XXX BHIS больше или равно C=0


103400 + XXX BLO меньше C=1


Одно-операторные команды










Код операции (КОП)


DD


15


6


5


0



Условные обозначения: “*”=0 операции над словами


1 операции над байтами


N Z C V


0003DD SWAB перестановка байтов * * 0 0


*050DD CLR(B) очистка (d) <=0 0 1 0 0


*051DD COM(B) побитная инверсия (d) <= (|d) * * 0 0


*052DD INC(B) прибавление 1 (d) <=(d)+1 * * *-


*053DD DEC(B) вычитание 1 (d) <=(d)+1 * * *-


*054DD NEG(B) изменение знака (d) <=-(d) * * * *


*055DD ADC(B) прибавить перенос (d)<=(d)+C * * * *


*056DD SBC(B) вычесть перенос (d)<=(d)-C * * * *


*057DD TST(B) проверка (d)<=(d) * * 0 0


*060DD ROR(B) циклич. сдвиг вправо => C,d * * * *


*061DD ROL(B) циклич. сдвиг влево C,d <= * * * *


*062DD ASR(B) арифм. сдвиг вправо (d)<=(d)/2 * * * *


*063DD ASL(B) арифм. сдвиг влево (d)<=(d)*2 * * * *


*067DD SXT расширить знак N=0 (d)<=0 0 1 0- N=1 (d)<=177777 1 0 0-


Двух операторные команды













КОП


SS


DD


15


12


11


6


5


0



N S V C


*1SSDD MOV(B) переслать (d)<=(s) * * 0-


*2SSDD CMP(B) сравнить (s)-(d) * * * *


*3SSDD BIT(B) проверить разряды (s)/(d) * * 0 -


*4SSDD BIC(B) очистить разряды (d)<=(|s)/(d) * * 0 -


*5SSDD BIS(B) установить разряды (d)<=(s)/(d) * * 0 -


06SSDD ADD сложить (d)<=(s)+(d) * * * *


074RSS XOR исключающее или (s)<= (r )(s) * * 0 -


16SSDD SUB вычесть (d)<=(d)-(s) * * * *


Операции с разрядами PSW


















































































Базовый КОП =240


0/1


N


Z


V


C


15


6


7


4


3


2


1


0


Очистить


000241 CLC C


-


-


-


0


000242 CLV V


-


-


0


-


000244 CLZ Z


-


0


-


-


000250 CLN N


0


-


-


-


000257 CCC N Z V C


0


0


0


0


Установить


000261 SEC C


-


-


-


1


000262 SEV V


-


-


1


-


000264 SEZ Z


-


1


-


-


000270 SEN N


1


-


-


-


000277 SCC N Z V C


1


1


1


1



Список литературы


Персональный компьютер БК-0010 (Приложение к журналу “Информатика и образование” )

Сохранить в соц. сетях:
Обсуждение:
comments powered by Disqus

Название реферата: Микропроцессор В1801ВМ1. Его структура

Слов:2226
Символов:19508
Размер:38.10 Кб.