Реферат: Микропроцессор В1801ВМ1 архитектура и система команд
Московский Институт Электроники и Математики
(технический университет)
Кафедра ИТАС
РЕФЕРАТ
по курсу: «ЭВМ ипериферийные устройства»
на тему: МикропроцессорВ1801ВМ1 его структура и система команд.
Выполнил: студент группы АП-41
Волков А. А.
МОСКВА 1998
Структура микропроцессора В1801ВМ1Однокристальный16-разрядныймикропроцессор К1801ВМ1 предназначен для выполнения следующих функций:
·<span Times New Roman"">
вычисление. адресов операндов и команд.·<span Times New Roman"">
обменинформацией с другими устройствами; подключенными к системной магистрали;·<span Times New Roman"">
обработкаоперандов;·<span Times New Roman"">
обработка прерываний от клавиатуры иустройств пользователя, подключенных к разъему порта ввода-вывода.Процессор является единственнымактивным устройством микроЭВМ, управляющим циклами обращения к системноймагистрали и обрабатывающим прерывания отпассивных устройств, которые могут посылать или принимать информацию только подуправлением процессора.
Микропроцессор К1801ВМ1 работает в БК стактовой частотой3 МГц и содержитследующие основные функциональные блоки :
·<span Times New Roman"">
16-разрядный операционный блок, служащий для формирования адресов команд иоперандов, выполнения логических и арифметическихопераций, хранения операндов и результатов;·<span Times New Roman"">
блок микропрограммного управления, вырабатывающий последовательность микрокоманд, Соответствующую кодупринятой машиннойкоманды. Этот блок построен на базе программируемой логической матрицы (ПЛМ). содержащей250 логических произведений;·<span Times New Roman"">
блок прерываний, организующий приоритетную системупрерываний (прием и предварительнаяобработка внешних и внутренних запросов на прерывание);·<span Times New Roman"">
интерфейсный блок, обеспечивающийобмен информацией между микропроцессором роми прочими устройствами, подключенными к системной магистрали. Этот же, блок осуществляетарбитраж при операциях прямого доступа к памяти, формирует·<span Times New Roman"">
последовательность.управляющих сигналов:·<span Times New Roman"">
блок системной магистрали, связывающий внутреннюю магистральоднокристального микропроцессора с внешней,управляющий усилителями приема и передачи информациина совмещенные выводы адресов и данных;·<span Times New Roman"">
схема тактирования, обеспечивающая синхронизациюработы внутренних блоков микропроцессора.Система команд, реализованная в ПЛМ блока микропрограммногоуправления микропроцессора К1801BM1, совпадает с системой команд наиболеераспространенных отечественных мини- и микро-ЭВМ типа «Электроника60» (ДВК-2.3,4 и т.п.) и практически аналогична принятой для компьютеров серииDEC.Предусмотрен также ряд специальных команд,предназначенных для работы с системным ПЗУ К1801РЕ1.
СигналыAD0-AD15представляют собой адреса иданные, передаваемые по совмещенной системной магистрали. Передача адресов иданных по одним и тем же линиям связи обеспечивается путем разделения этихопераций во времени.
Группа сигналовSYNC, DIN, DOUT, WTBT,RPLYслужит для управления передачейинформации по системной магистрали:
·<span Times New Roman"">
SYNC-вырабатываетсяпроцессоромкак указание, что адрес находится на выводах системной магистрали, и сохраняетактивный уровень до окончания текущего цикла обмена информацией;·<span Times New Roman"">
RPLY-вырабатывается пассивнымустройством в ответ на сигналыDINиDOUT. Приотсутствии сигналаRPLAY (т. е. когда выбранное устройство-регистр или ячейка памяти- не отвечает) процессор отсчитывает 64такта синхрогенератора и затемîòðàáàòûâàåòпрерывание по зависанию (вектор4);·<span Times New Roman"">
DIN-предназначен для организации ввода данных (когда микропроцессор во времядействия сигналаSYNCготов принять данные от пассивного устройства) иввода адреса вектора прерывания(DINвырабатывается совместно ссигналом IAK0при пассивном уровнеSYNC);·<span Times New Roman"">
DOUT-означает,что данные, выдаваемые микропроцессором, установлены на выводах системноймагистрали;·<span Times New Roman"">
WTBT — указываетна работу с отдельнымибайтами ивырабатывается при обращении по нечетному адресу (операнд-старший байт) или приотработкебайтовых команд.СигналVIRQявляетсязапросом на прерывание от внешнего устройства, информирующим микропроцессор о готовности устройства передаватьадрес вектора прерывания. Если прерывание разрешено, то в ответ на этот сигналпроцессор вырабатывает сигналы DINи IAK0.
СигналIRQ1обеспечивает управление режимом«ÑÒÎÏ-ÏÓÑÊ» процессорас внешнего переключателя. Низкий уровень сигнала (активный) соответствует режиму «СТОП».
СигналыIRQ2иIRQ3вызывают прерывания по фиксированным векторам1008 и2708 соответственно (при переходе из высокого уровня внизкий).
СигналпредоставленияпрерыванияIAK0процессор вырабатывает в ответ на внешний сигнал VIRQ.Сигнал IAK0передаетсяпо очереди, начиная с устройства с максимальным приоритетом, ретранслируясь от одногоустройства к другому в порядке уменьшения приоритетов. Устройство с наибольшимприоритетом из числа выставивших запрос на прерывание (сигналVIRQ)запрещает дальнейшее распространение сигналаIAK0, таким образом запрещая на времяобработки данного прерывания запросы от устройств с тем же или более низкимприоритетом. Однако устройства с более высоким приоритетом могут прерватьобработку повторным («вложенным») прерыванием.
СигналDMRвырабатывается внешним активнымустройством, требующим передачи ему системной магистрали (режим прямого доступак памяти). В ответ па него процессор устанавливает сигналDMGO,предоставляющий системнуюмагистраль внешнему устройству с наивысшим приоритетом из числа запросившихпрямой доступ (механизм реализации приоритетов-тот же, что и для прерываний). Это устройство прекращает дальнейшеераспространение сигналаDMGOи выставляет сигналSACK,означающий, что устройство прямого доступа к памяти (ПДП) может производить обмен данными, независимо отпроцессора используя стандартные циклы обращения к системной магистрали.
Низкий уровень сигналаBSYозначает, что микропроцессор начинает обмен по магистрали(т.е. что она занята для других устройств).Переход сигнала из низкого уровня в высокий указывает на окончание обмена.
Сигнал аварии источника питанияDCLOвызываетустановку микропроцессора в исходное состояние и появление сигнала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 ( <span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol;mso-symbol-font-family: Symbol">±
5% )Уровни сигналов, В: «лог.0»(активный уровень)
Менее 0,5
«лог.1»
Более 2,4
Нагрузочная способность по току, мА
3,2
Емкость нагрузки, пФ
До 100
Технология изготовления
N-МОП
Конструкция
Плананарный металлокерамический корпус с 42 выводами
Системакоманд микропроцессора К1801ВМ1
Данный процессор содержит 8регистров общего назначения (РОН, обозначение в описании команд RN, ãäå N=0..7)одинвнутренний регистр состояния процессора PSW в котором задействовано 5 битов, каждый из которых имеет своиимена:
·<span Times New Roman"">
C-битпереполнения·<span Times New Roman"">
T-бит трассировки·<span Times New Roman"">
V-битарифметического переполнения·<span Times New Roman"">
Z-битравенства 0·<span Times New Roman"">
N-битотрицательного числаДва регистра из РОН (R6 и R7) отвечают заследующие функции:
·<span Times New Roman"">
R6 (SP)-Указательстека·<span Times New Roman"">
R7 (PC)-Счетчиккоманд.При описании команд,используются следующие обозначения:
·<span Times New Roman"">
«SS» — полеадресации операнда-источника·<span Times New Roman"">
«DD» — полеадресации операнда-приемника·<span Times New Roman"">
«XXX»- смещение(-128,...,+128; 8 бит)·<span Times New Roman"">
«N» — число, 3бита·<span Times New Roman"">
«NN» -число, 6 бит·<span Times New Roman"">
«(N)» -содержимоеячейки или регистра N·<span Times New Roman"">
«s» -операнд-источник·<span Times New Roman"">
«d» — операнд-приемник·<span Times New Roman"">
«r» — содержимое регистра·<span Times New Roman"">
«<=» — становитсяравным·<span Times New Roman"">
«X» — относительный адрес·<span Times New Roman"">
«%» — определение регистра·<span Times New Roman"">
«/»-логическое И·<span Times New Roman"">
«/» — логическое ИЛИ·<span Times New Roman"">
«» — исключающее ИЛИ·<span Times New Roman"">
«|» — НЕОперациинад разрядами PSW
·<span Times New Roman"">
«*» — установка/сброспо результату·<span Times New Roman"">
«-» — состояниеразряда не меняется·<span Times New Roman"">
«0» — сброс·<span Times New Roman"">
«1» — установкаМетодыадресации
МЕТОД
R
Метод мнемоника
0. регистровая R
1. косвеннаярегистровая ( R ) или @R
2. автоинкрементная (R )+
3. косв.автоинкрементная @(R )+
4. автодекрементная -(R )
5. косв. автодекрементная @-(R )
6. индексная X(R )
7. косв.индексная @X( R )
Команды работы с программами
000000HALT останов
000001WAIT пауза — ожидания прерывания
000002RTI возврат из прерывания ( PC <=(SP)+)
000003BPT отладочное прерывание (-(SP) <=PSW <=(16) )
000004IOT вызов системы ввода вывода( -(SP) <=PC <= (22) )
000005RESET сброс магистрали и процессора
000006RTT возврат, с запретом прерывания поТ-разряду до исполнения следующей команды( PC<=(SP)+ PSW<=(SP)+)
0001DD JMP безусловный переход (PC <= d)
00020R RTS возврат изподпрограммы ( PC <= R <=(SP)+
000240NOP нет операции
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 )
Переходы по условию (ветвления)
Базовый КОП
<span Times New Roman"; mso-hansi-font-family:«Times New Roman»;mso-char-type:symbol;mso-symbol-font-family: Symbol">±
XXX
15
8
7
Если условие выполняется, то (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 операциинад словами
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
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
Очистить
000241 CLC C
-
-
-
000242 CLV V
-
-
-
000244 CLZ Z
-
-
-
000250 CLN N
-
-
-
000257 CCC N Z V C
Установить
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 (Приложениек журналу«Информатика и образование» )