Московский Институт Электроники и Математики технический университет Кафедра ИТАС РЕФЕРАТ по курсу ЭВМ и периферийные устройства на тему Микропроцессор В1801ВМ1 его структура и система команд. Выполнил студент группы АП-41 Волков А. А. МОСКВА 1998 Структура микропроцессора В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 и DOUT. При отсутствии сигнала 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 означает, что микропроцессор начинает обмен по магистрали т.е. что она занята для других устройств. Переход сигнала из низкого уровня в высокий указывает на окончание обмена. Сигнал аварии источника питания 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Максимальное быстродействие при выполнении регистровых операций, оп.с До 50Потребляемая мощность, ВтНе более 1Напряжение питания, В5 5 Уровни сигналов, В лог.0активный уровеньМенее 0,5лог.1Более 2,4 Нагрузочная способность по току, мА3,2Емкость нагрузки, пФДо 100Технология изготовленияN-МОПКонструкция Плананарный металлокерамический корпус с 42 выводамиСистема команд микропроцессора К1801ВМ1 Данный процессор содержит 8 регистров общего назначения
РОН, обозначение в описании команд RN, где N0 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Метод мнемоника 0. регистровая R 1. косвенная регистровая R или R 2. автоинкрементная R 3. косв. автоинкрементная R 4. автодекрементная –
R 5. косв. автодекрементная – R 6. индексная X R 7. косв. индексная X R Команды работы с программами 0 HALT останов 01 WAIT пауза – ожидания прерывания 02 RTI возврат из прерывания PC SP 03 BPT отладочное прерывание -SP PSW 16 04 IOT вызов системы ввода вывода -SP PC 22 05 RESET сброс магистрали и процессора 06 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 Переходы по условию ветвления Базовый КОПXXX15870 Если условие выполняется, то PC PC 2 x NN 000400 XXX BR безусловный переход 001000
XXX BNE нет равенства нулю Z0 001400 XXX BEQ равенство нулю Z1 102000 XXX BVC арифм.переп. отсутствует V0 102400 XXX BVS произошло арифм.переп. V1 103000 XXX BCC перенос отсутствует C0 103400 XXX BCS произошел перенос С1 Переход по знаку 10 XXX BPL знак плюс N0 100400 XXX BMI знак минус N1 002000
XXX BGE больше или равно нулю NV0 002400 XXX BLT меньше нуля NV1 003000 XXX BGT больше нуля ZNV0 003400 XXX BLE меньше или равнонулю ZNV1 Переход без знака 101000 XXX BHI больше CZ0 101400 XXX BLOS меньше или равно CZ1 103000 XXX BHIS больше или равно C0 103400 XXX BLO меньше C1 Одно-операторные команды
Код операции КОПDD15650Условные обозначения 0 операции над словами 1 операции над байтами N Z C V 0003DD SWAB перестановка байтов 0 0 050DD CLRB очистка d 0 0 1 0 0 051DD COMB побитная инверсия d d 0 0 052DD INCB прибавление 1 d d1 – 053DD DECB вычитание 1 d d1 – 054DD NEGB изменение знака d -d 055DD ADCB прибавить перенос d dC 056DD SBCB вычесть перенос d d-
C 057DD TSTB проверка d d 0 0 060DD RORB циклич. сдвиг вправо C,d 061DD ROLB циклич. сдвиг влево C,d 062DD ASRB арифм. сдвиг вправо d d2 063DD ASLB арифм. сдвиг влево d d2 067DD SXT расширить знак N0 d 0 0 1 0- N1 d 17 1 0 0- Двух операторные команды КОПSSDD151211650 N S V C 1SSDD MOVB переслать d s 0- 2SSDD CMPB сравнить s-d 3SSDD BITB проверить разряды sd 0 – 4SSDD BICB очистить разряды d sd 0 – 5SSDD BISB установить разряды d sd 0 – 06SSDD ADD сложить d sd 074RSS XOR исключающее или s r s 0 – 16SSDD SUB вычесть d d-s Операции с разрядами PSW Базовый КОП 24001NZVC156743210Очистить000241 CLC C 0000242
CLV V 0-000244 CLZ Z-0 000250 CLN N0 000257 CCC N Z V C 0000Установить000261 SEC C 1000262 SEV V 1-000264 SEZ Z-1 000270 SEN N1 000277 SCC N Z V C1111 Список литературы Персональный компьютер БК-0010 Приложение к журналу Информатика и образование