6. Описание процессора-эмулятора на микроуровне

6.1. Блок микропрограммного управления

Центральный процессор представляет из себя устройство с микропрограммным управлением. В ЭВМ с микропрограммным принципом управления можно различить два уровня: уровень микромашины (регистры, память, арифметико-логическое устройство АЛУ или микропроцессор), доступный только из микропрограммы, и уровень пользователя.

Уровень пользователя определяется уровнем микромашины, в частности, содержимым памяти микрокоманд, что в некотором смысле может быть произвольным.

В состав устройства микропрограммного управления входят табличная память преобразователя начального адреса ПНА, память микрокоманд, схема управления адресом микропрограммы (СУАМ) и конвейерный регистр. Память микрокоманд предназначена для хранения микропрограмм, реализующих набор машинных команд уровня пользователя. Начальный адрес микропрограммы, соответствующей какой-либо команде уровня пользователя, находится в ПНА по адресу, определяемому кодом этой команды. Исключение составляет микропрограмма входа в обработку прерываний, адрес которой фиксирован.

Память микропрограмм обеспечивает организацию последовательности микрокоманд в микропрограмме и управляет соответствующим устройством, устанавливая нужные для этого аппаратные сигналы. Например, они определяют, какая информация должна быть подана на входы АЛУ, куда должна подаваться информация с его выходов и т.д.

БИС управления последовательностью выполнения микрокоманд (К1804ВУ4)

БИС К1804ВУ4 (СУАМ) - устройство управления последовательностью микрокоманд, позволяющее адресовать микропрограмму размером до 4к слов. Устройство управления имеет мультиплексор с четырьмя входами, используемый для выбора в качестве источника адреса следующей микрокоманды регистр/счетчик RC, вход прямого адреса D, счетчик микрокоманд РС или стек.

Структурная схема устройства:

              | d  | /rld                ---->
      --------|    |                     | full
      |       v    v                     |
      |   -------------         -------------------
      |   |  регистр/ |         | указатель стека |
   ---|-->|  счетчик  |         -------------------
   |  |   -------------                 |
   |  |      |                  -----------------
   |  |      |   ---------------|    с т е к    |
   |  |      |   |              -----------------
   |  ----   |   |   -------------------|
   |     |   |   |   |          -----------------
   |     |   |   |   |          |    счетчик    |
   |     v   v   v   v          |  микрокоманд  |
   |  -------------------       -----------------
   |  |  d   r   f  рс  |               |
   |  |                 |       ----------------
   |  |  мультиплексор  |       |  устройство  |<--
   |  |   следующего    |       |  приращения  | c|
   |  |     адреса      |       ----------------
   |  -------------------               |
   |     |            |                 |
   |  --------------  -------------------
   -->|            |            |
/сс-->| управление |            v у0-у11
ccen->|            |<------
  т-->|------------|  i0-i3
         |   |   |
         |   |   |
         v   v   v
        /ре /ме /vе

СЧЕТЧИК МИКРОКОМАНД (РС) используется одним из двух способов. Когда сигнал CI имеет высокий уровень, в РС во время следующего такта загружается передаваемый на выход У адрес, увеличенный на 1 (У+1 ⇒ РС). Таким образом обеспечивается последовательное выполнение команд. Если CI имеет низкий уровень, то РС перезагружается тем же самым адресом (У ⇒ РС). Следовательно, одна и та же команда может выполняться любое количесво раз.

Запись в РЕГИСТР/СЧЕТЧИК RС осуществляется при выдаче сигнала разрешения загрузки (/RLD), а также при выполнении некоторых команд. Вход прямого адреса d является источником данных, загружаемых в регистр/счетчик, а выход регистра подключен к мультиплексору и может быть использован в качестве источника адреса следующей микрокоманды. Регистр/счетчик при выполнении некоторых операций работает как счетчик, выполняющий отрицательное приращение, причем полученное в результате такого приращения значение 0 используется как признак перехода.

ИСТОЧНИК ПРЯМОГО АДРЕА D используется для выполнения переходов в микропрограмме по адресу, выбираемому из внешнего источника.

СТЕК обьемом 5 слов предназначен для хранения адреса возврата при выполнении в микропрограмме подпрограмм и циклов. При выполнении одних операций происходит загрузка информации в стек с увеличением на 1 указаталя стека (push), при выполнении других - извлечение (рор) с уменьшением на 1 указателя стека. При выполнении операции начальной установки глубина стека (указатель) становится равной нулю.

Использование сигналов:

БИС СУАМ вырабатывает сигналы /VЕ, /МЕ, /РЕ, которые используются для выборки внешних источников, подключенных к шине D:

  • преобразователь начального адреса команд RMOD,WMOD и обращений ПП (при наличии признака MOD, сигнал /МЕ);
  • дополнительный преобразователь адреса, задающий адреса векторов прерывания. А также знаков сомножителей для коррекции поизведения (VE). (сигнал /РЕ не используется).

Каждой микрокомандой вырабатывается только один сигнал разрешения для внешнего источника.

Сигналы I0-I3 поступают из микропрограммы; /RLD - с дешифратора триггеров признаков; /СС - с мультиплексора условий; выходы У0-У11 передают полученный адрес микрокоманды; на вход CI в зависимости от 36 разряда МП подается либо “1”, либо прямой или инверсный выход с мультиплексора условий, либо “0” в момент входа в микропрограмму обработки прерываний; сигнал /CCEN всегда равен “0”.

Коды операций СУАМ
  • 0 - переход по нулевому адресу или начальная установка (JZ).

У0-У11 и указатель стека устанавливаются в 0.

  • 1 - условный переход к подпрограмме по адресу, выбираемому из конвейерного регистра (CJS).

Если условие выполняется, адрес возврата (РС+1) загружается в стек и происходит переход к подпрограмме по адресу, выбираемому из конвейерного регистра (адрес перехода в микрокоманде). Иначе выполняется следующая микрокоманда.

  • 2 - переход по адресу, выбираемому из дешифрирующего ПЗУ (JMAP).

Производится выдача сигнала разрешения выборки /МЕ, и адрес следующей микрокоманды выбирается из дешифрирующего ПЗУ.

  • 3 - условный переход по адресу, выбираемому из конвейерного регистра (CJP).

При выполнении условия производится передача управления по адресу, содержащемуся в конвейерном регистре. Иначе выполняется следующая микрокоманда.

  • 4 - загрузка стека и условная загрузка счетчика (PUSH).

Производится загрузка в стек адреса следующей микрокоманды (РС+1), при выполнении условия - в регистр/счетчик загружается величина, находящаяся в поле адреса перехода конвейерного регистра. Если условие не выполнено, загрузка счетчика не производится. Затем выполняется следующая микрокоманда.

  • 5 - условный переход к подпрограмме по адресу, выбираемому из регистра/счетчика или из конвейерного регистра (JSRP).

Производится загрузка стека величиной РС+1 и инициируется одна из двух подпрограмм: если условие выполняется, адрес следующей микрокоманды определяется содержимым конвейерного регистра, иначе - содержимым регистра/счетчика.

  • 6 - условный переход по векторному адресу (CJV).

Если условие выполняется, производится выдача сигнала разрешения выборки /VE и производится переход по векторному адресу. Иначе выполняется следующая микрокоманда.

  • 7 - условный переход по адресу, выбираемому из регистра/счетчика или конвейерного регистра (JRP).

Если условие выполняется, адрес следующей микрокоманды определяется содержимым конвейерного регистра, иначе - содержимым регистра/счетчика.

  • 8 - повторение цикла, если счетчик не равен 0 (RFCT).

Если содержимое регистра/счетчика отлично от 0, его значение уменьшается на 1, и адрес следующей микрокоманды извлекается из стека. Если счетчик равен 0, выполняется следующая микрокоманда, а указатель стека уменьшается на 1. Перед выполнением этой микрокоманды в регистр/счетчик должно быть занесено число повторений микрокоманд в цикле, а в стек - адрес начала цикла.

  • 9 - повторение по адресу, выбираемому из конвейерного регистра, если счетчик не равен 0 (RPCT).

Если содержимое регистра/счетчика не равно 0, его значение уменьшается на 1, и производится передача управления по адресу, содержащемуся в конвейерном регистре. Иначе выполняется следующая микрокоманда. Перед выполнением этой микрокоманды (RPCT) в регистр/счетчик должно быть занесено число повторений цикла.

  • 10 - условный возврат из подпрограммы (CRTN).

Если условие выполняется, производится возврат из подпрограммы по адресу,выбираемому из стека. Иначе выполняется следующая микрокоманда.

  • 11 - условный переход по адресу, выбираемому из конвейерного регистра, и извлечение из стека (CJPP).

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

  • 12 - загрузка счетчика и последовательна выборка (LDCT).

Производится загрузка регистра/счетчика содержимым поля адреса микрокоманды и выполняется следующая микрокоманда.

  • 13 - проверка условия окончания цикла (LOOP).

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

  • 14 - последовательная выборка (CONT).

Выполняется следующая по порядку микрокоманда.

  • 15 - переход по одному из трех адресов (TWB).

Если условие не задано, производится отрицательное приращение счетчика и переход по адресу стека, пока счетчик не равен 0, затем адрес следующей микрокоманды выбирается из конвейерного регистра. Если условие задано, выполняется следующая по порядку микрокоманда. При выходе из цикла в обоих случаях указатель стека уменьшается на 1. Перед выполнением микрокоманды TWB в регистр/счетчик должно быть занесено число повторений цикла, а в стек - адрес начала цикла.

  • Условие НЕ задано:

сч. НЕ РАВЕН 0: сч.= сч.- 1, переход по адресу стека; сч. РАВЕН 0: переход по адресу из КР.

  • Условие задано:

выполняется следующия команда.

6.2. Формат микрокоманды

--------------------------------------------------------------
  поле  |  коп  |адрес: след. |выбор|вых|функ-|32/|   адрес
 микро- | суам  |микрокоманды | пна | у | ция |64р|  рзу мпс
команды |-------|   ----------|-----|мпс| мпс |мпс|  в  |  а
        |i3 - i0|   |пзу конст|в   а|   |i8-i0|   |     |
--------|-------|---|---------|-----|---|-----|---|-----|-----
 разряд |112 109|108|107    97|96 95| 94|93 85| 84|83 80|79 76
--------|-------|-------------|-----|---|-----|---|-----|-----
 n табл.|   1   |             |  2  |   |3,4,5|   |  6  |  6
--------|-------|-------------|-----|---|-----|---|-----|-----
мнемокод|  sqi  |      а      | мар |alu| func| н |  rв |  rа
--------------------------------------------------------------

--------------------------------------------------------------
 функ- |пр.|ист.N | номер |источ-|прием-| коп | коп |зап| про-
  ция  |r/w|модиф.|модифик| ник  | ник  |сдви-|арбит| в |пуск
 сусс  |i/о|или пар.сдвига|шины d|шины у| га  | ра  |рег| пиа
-------|---|--------------|------|------|-----|-----|---|-----
i12-i10|   |в    а|d     а|d    а|d    а|i1 i0|d   а|   |
-------|---|------|-------|------|------|-----|-----|---|-----
75   64| 63|62  61|60   56|55  52|51  48|47 46|45 42| 41|  40
-------|---|------|-------|------|------|-----|-----|---|-----
   7   |   |    8,9/10    |  11  |  12  |  13 |  14 |   |
-------|---|-----pshf-----|------|------|-----|-----|---|-----
  stf  |mod| mnsa | modnm | dsrc | ydst | shf | arbi|rld|lетс
--------------------------------------------------------------

--------------------------------------------------------------
 упр.|упр|инв|инв|   | запись в|упр. Озу|кан|зап|адрес|кан|зап
длит.| ci| ci|усл|пми| рг.сусс:|модифик:| в | по|кан.В| а | по
такта| sq| sq|   |   | м  | n  | cs| wr |бои| в | бои |бои| а
-----|---|---|---|---|----|----|---|----|---|---|-----|---|---
с   а|   |   |   |   |    |    |   |    |   |   |в   а|   |
-----|---|---|---|---|----|----|---|----|---|---|-----|---|---
39 37| 36| 35| 34| 33| 32 | 31 | 30| 29 | 28| 27|26 25| 24| 23
-----|---|---|---|---|----|----|---|----|---|---|-----|---|---
  15 |   |   |   |   |    |    |   |    |   |   |  16 |   |
-----|---|---|---|---|----|----|---|----|---|---|-----|---|---
cystr|sci|ici|iсс|ise| сем| cen|csm| wем|есв|wrb| bra |еса|wra
--------------------------------------------------------------

--------------------------------------------------------------
адрес|источн|зап. В|источн|зап. В|озу пп|устан/сброс |усло|мод
кан.А|приемн|ист/пр|приемн|ист/пр| или  |тг.призн.или| вие|или
 бои |шины у|шины у|шины d|шины d|призн.|адрес озу пп|    |сдв
-----|------|------|------|------|------|------------|----|---
в   а|с    а|      |с    а|      |      |е          а|е  а|
-----|------|------|------|------|------|------------|----|---
22 21|20  18|  17  |16  14|  13  |  12  |11         7|6  2| 1
-----|------|------|------|------|------|------------|----|---
  17 |  18  |      |  19  |      |      |   20/21    | 22 |
-----|------|------|------|------|------|------------|----|---
 ara | ydev | wry  | ddev | wrd  | iомр |ffcnt/mpadr |cond|mps
--------------------------------------------------------------

6.3. Таблицы полей микропрограммного слова и их назначения

Таблица 1

К О П   СУАМ

SEQUENCER INSTRUCTION (SQI)

i3 i2 i1 i0
0  0  0  0 - 0 - переход по 0-ому адресу (JZ).
0  0  0  1 - 1 - условный переход к подпрограмме по
                 адресу, выбираемому из конвейерного
                 регистра (CJS) *).
0  0  1  0 - 2 - переход по адресу, выбираемому из
                 дешифрирующего ППЗУ (JMAP).
0  0  1  1 - 3 - условный переход по адресу, выбираемому
                 из конвейерного регистра (CJP).
0  1  0  0 - 4 - загрузка стека и условная загрузка
                 счетчика (PUSH).
0  1  0  1 - 5 - условный переход к подпрограмме по
                 адресу, выбираемому из регистра/счетчика
                 или из конвейерного регистра (JSRP).
0  1  1  0 - 6 - условный переход по векторному
                 адресу (CJV).
0  1  1  1 - 7 - условный переход по адресу,
                 выбираемому из регистра/счетчика или из
                 конвейерного регистра (JRP).
1  0  0  0 - 8 - повторение цикла, если счетчик
                 не равен 0 (RFCT).
1  0  0  1 - 9 - повторение по адресу, выбираемому
                 из конвейерного регистра, если счетчик
                 не равен 0 (RPCT).
1  0  1  0 - 10 - условный возврат из подпрограммы (CRTN).
1  0  1  1 - 11 - условный переход по адресу, выбираемому
                 из конвейерного регистра, и извлечение
                 из стека (CJPP).
1  1  0  0 - 12 - загрузка счетчика и последовательная
                 выборка (LDCT).
1  1  0  1 - 13 - проверка условия окончания цикла (LOOP).
1  1  1  0 - 14 - последовательная выборка (CONT).
1  1  1  1 - 15 - переход по одному из трех адресов (TWB).

*). Вместо конвейерного регистра может использоваться другой источник адреса на вход D СУАМ (см. Табл.2).

Таблица 2

ВЫБОР ИСТОЧНИКА АДРЕСА НА ВХОД  D   С У А М

(МАР)

В а
0 0 - конвейерный регистр (сигнал РЕ)
0 1 - ПНА КОП основного или дополнительного формата
      в зависимости от КОП основного формата (3f)
1 0 - ПНА групп из РР, "след0", "след1"
1 1 - не используется

   /МЕ СУАМ - ПНА чтения/записи регистров и памяти по обращению ПП и командами RMOD, WMOD.
   /VЕ СУАМ - ПНА прерываний.

d00 - начальный адрес ПНА чт/зп регистров и памяти
е00 - начальный адрес ПНА групп
f00 - начальный адрес ПНА прерываний

ТАБЛИЦА 3

ПРИЕМНИКИ РЕЗУЛЬТАТА   А Л У   М П С

ALU DESTINATION (ALUD)

i8 i7 i6         сдвиг   загрузка   сдвиг   загрузка    у
0  0  0  - 0       -        -         -      f -> q     f
0  0  1  - 1       -        -         -         -       f
0  1  0  - 2       -      f -> в      -         -       а
0  1  1  - 3       -      f -> в      -         -       f
1  0  0  - 4    вправо  f/2 -> в   вправо   q/2 -> q    f
1  0  1  - 5     - " -  f/2 -> в      -         -       f
1  1  0  - 6     влево   2f -> в    влево    2q -> q    f
1  1  1  - 7     - " -   2f -> в      -         -       f

ТАБЛИЦА 4

КОДЫ ОПЕРАЦИЙ   А Л У   М П С

FUNCTION (FUNC)

I5 I4 I3           Операции
0  0  0  -  0    R + S + С0
0  0  1  -  1    S - R - 1 + С0
0  1  0  -  2    R - S - 1 + С0
0  1  1  -  3    R .or. S
1  0  0  -  4    R .and. S
1  0  1  -  5    (.nоt. R) .and. S
1  1  0  -  6    R .eor. S
1  1  1  -  7    .nоt. (R .eor. S)

ТАБЛИЦА 5

ИСТОЧНИКИ ОПЕРАНДОВ   А Л У   М П С

ALU SOURCE (ALUS)

i2 i1 i0      R   S
0  0  0 - 0   а   q
0  0  1 - 1   а   в
0  1  0 - 2   0   q
0  1  1 - 3   0   в
1  0  0 - 4   0   а
1  0  1 - 5   d   а
1  1  0 - 6   d   q
1  1  1 - 7   d   0

ТАБЛИЦА 6

АДРЕСА РЕГИСТРОВ  КАНАЛОВ  А И В  МПС

RА  И  RВ

d  с  в  а
х  х  х  х  -  номер регистра МПС, используемого
               в микропрограмме

ТАБЛИЦА 7

КОДЫ ОПЕРАЦИЙ СУСС

STATUS FUNCTION (STF)

операции с битами регистра состояния N (/CEN=0)


i5 i4 i3 i2 i1 i0
0  0  1  0  0  0   0->nz   уст. В "0" признака z
0  0  1  0  0  1   1->nz   уст. В "1" признака z
0  0  1  0  1  0   0->nс   уст. В "0" признака с
0  0  1  0  1  1   1->nс   уст. В "1" признака с
0  0  1  1  0  0   0->nn   уст. В "0" признака n
0  0  1  1  0  1   1->nn   уст. В "1" признака n
0  0  1  1  1  0   0->nv   уст. В "0" признака ovr
0  0  1  1  1  1   1->nv   уст. В "1" признака ovr

операции со словами регистра состояния N (/CEN=0)


i5 i4 i3 i2 i1 i0
0  0  0  0  0  0    м->n    запись содержимого рг. М в рг. N
0  0  0  0  0  1    1->n    уст. В "1" всех разрядов рг. N
0  0  0  0  1  0    м<->n   регистровый обмен
0  0  0  0  1  1    0->n    уст. В "0" всех разрядов рг. N

операции загрузки регистра состояния N (/CEN=0)


i5 i4 i3 i2 i1 i0
0  0  0  1  1  0    iz->nz       загрузка с запоминанием
0  0  0  1  1  1    iс->nс       признака переполнения
                    in->nn
                  iv.or.nv->nv

0  1  1  0  0  х    iz->nz       загрузка с инверсией
1  0  1  0  0  х   /iс->nс       признака переноса
1  1  1  0  0  х    in->nn
                    iv->nv

0  0  0  1  0  х    iz->nz       загрузка непосредственно
0  1  0  х  х  х    iс->nс       со входов признаков
0  1  1  0  1  х    in->nn       состояния
0  1  1  1  х  х    iv->nv
1  0  0  х  х  х
1  0  1  0  1  х
1  0  1  1  х  х
1  1  0  х  х  х
1  1  1  0  1  х
1  1  1  1  х  х

регистровые операции рг. М

/сем = /ez = /ес = /en = /ev = 0


i5 i4 i3 i2 i1 i0
0  0  0  0  0  0    у->м    запись с шины у в рг. М
0  0  0  0  0  1    1->м    уст. В "1" всех разрядов рг. М
0  0  0  0  1  0    n<->м   регистровый обмен
0  0  0  0  1  1    0->м    уст. В "0" всех разрядов рг. М
0  0  0  1  0  1   /м->м    инвертирование содержимого рг. М

0  0  0  1  0  0    iz->mz  используется при организации
                    mv->мс  сдвигов с использованием
                    in->mn  признака переполнения,
                    мс->mv  а не переноса

0  0  1  0  0  х    iz->mz  загрузка
0  1  1  0  0  х   /iс->мс  с инверсией
1  0  1  0  0  х    in->mn  признака переноса
1  1  1  0  0  х    iv->mv

0  0  0  1  1  х    iz->mz  загрузка непосредственно
0  0  1  0  1  х    iс->мс  со входов признаков
0  0  1  1  х  х    in->mn  состояния
0  1  0  х  х  х    iv->mv
0  1  1  0  1  х
0  1  1  1  х  х
1  0  0  х  х  х
1  0  1  0  1  х
1  0  1  1  х  х
1  1  0  х  х  х
1  1  1  0  1  х
1  1  1  1  х  х

управление выводом информации через шину У


/оеу i5 i4     у
  1   х  х     z   состояние высокого сопротивления
  0   0  х   n->у  при "0" на входах I5-I0 шина У всегда
                   является входной, независимо от /ОЕУ
  0   1  0   м->у
  0   1  1   i->у

управление выходом кода СТ (/ОЕСТ=0)


i3  i1      i5=i4=0     i5=0,i4=1    i5=1,i4=0     i5=i4=1
  i2  i0
0 0 0 0 (nn.eor.nv).or.nz       (mn.eor.mv).or.mz
                  (nn.eor.nv).or.nz        (in.eor.iv).or.iz
0 0 0 1 /(nn.eor.nv).and./nz  /(mn.eor.mv).and./mz
                /(nn.eor.nv).and./nz     /(in.eor.iv).and./iz
0 0 1 0    nn.eor.nv    nn.eor.nv    mn.eor.mv    in.eor.iv
0 0 1 1   /(nn.eor.nv) /(nn.eor.nv) /(mn.eor.mv) /(in.eor.iv)
0 1 0 0        nz           nz           mz           iz
0 1 0 1       /nz          /nz          /mz          /iz
0 1 1 0        nv           nv           mv           iv
0 1 1 1       /nv          /nv          /mv          /iv
1 0 0 0     nс.or.nz     nс.or.nz     мс.or.mz    /iс.or.iz
1 0 0 1   /nс.and./nz  /nс.and./nz  /мс.and./mz   iс.and./iz
1 0 1 0        nс           nс           мс           iс
1 0 1 1       /nс          /nс          /мс          /iс
1 1 0 0    /nс.or.nz    /nс.or.nz    /мс.or.mz    /iс.or.iz
1 1 0 1    nс.and./nz   nс.and./nz   мс.and./mz   iс.and./iz
1 1 1 0    in.eor.mn        nn           mn           in
1 1 1 1   /(in.eor.mn)     /nn          /mn          /in

проверка отношения чисел А и В

после выполнения операции (А-В)

числа без знака


отношение             I3-I0       I3-I0
         состояние     СТ=1        СТ=0
 а.eq.b     z=1      0 1 0 0     0 1 0 1
 а.nе.b     z=0      0 1 0 1     0 1 0 0
 а.gе.b     с=1      1 0 1 0     1 0 1 1
 а.lт.b     с=0      1 0 1 1     1 0 1 0
 а.gт.b  с.and./z=1  1 1 0 1     1 1 0 0
 а.lе.b  /с.or.z=1   1 1 0 0     1 1 0 1

числа в дополнительном коде


отношение                     I3-I0       I3-I0
              состояние        СТ=1        СТ=0
 а.eq.b          z=1         0 1 0 0     0 1 0 1
 а.nе.b          z=0         0 1 0 1     0 1 0 0
 а.gе.b     /(n.eor.v)=1     0 0 1 1     0 0 1 0
 а.lт.b       n.eor.v=1      0 0 1 0     0 0 1 1
 а.gт.b /(n.eor.v).and./z=1  0 0 0 1     0 0 0 0
 а.lе.b   (n.eor.v).or.z=1   0 0 0 0     0 0 0 1

управление формированием сигнала входного переноса


i12   i11   i5  i3  i2  i1    С0
 0     0     х   х   х   х     0
 0     1     х   х   х   х     1
 1     0     х   х   х   х    сх
 1     1     0   0   х   х    nс
 1     1     0   х   1   х    nс
 1     1     0   х   х   1    nс
 1     1     0   1   0   0   /nс
 1     1     1   0   х   х    мс
 1     1     1   х   1   х    мс
 1     1     1   х   х   1    мс
 1     1     1   1   0   0   /мс
вс7
управление сдвигами (/SЕ=0)

i10 i9 i8 i7 i6       тип  сдвига          pf0 pf3 pq0 pq3  мс

                 "0"         "0"
 0  0  0  0  0    -->рон-->   -->рг.Q-->    z   0   z   0   -

                 "1"         "1"
 0  0  0  0  1    -->рон-->   -->рг.Q-->    z   1   z   1   -

                 мс<-------|  mn
 0  0  0  1  0    "0"->рон-|  -->рг.Q-->    z   0   z  mn  pf0

                 "1"
 0  0  0  1  1    -->рон-------->рг.Q-->    z   1   z  pf0  -


 0  0  1  0  0    мс-->рон------>рг.Q-->    z  мс   z  pf0  -


 0  0  1  0  1    mn-->рон------>рг.Q-->    z  mn   z  pf0  -

                 "0"
 0  0  1  1  0    -->рон-------->рг.Q-->    z   0   z  pf0  -

                   мс<-----------------|
 0  0  1  1  1    "0"-->рон----->рг.Q--|    z   0   z  pf0 pq0

                    |-------| |--------|
 0  1  0  0  0  мс<-|->рон--| |->рг.Q--|    z  pf0  z  pq0 pf0

                v---------|   |--------|
 0  1  0  0  1  мс-->рон--|   |->рг.Q--|    z  мс   z  pq0 pf0

                 |--------|   |--------|
 0  1  0  1  0   |-->рон--|   |->рг.Q--|    z  pf0  z  pq0  -


 0  1  0  1  1    |с-->рон------>рг.Q-->    z  iс   z  pf0  -

                  v--------------------|
 0  1  1  0  0    мс->рон------>рг.Q---|    z  мс   z  pf0 pq0

                      |----------------|
 0  1  1  0  1   мс<--|-->рон--->рг.Q--|    z  pq0  z  pf0 pq0

                |n.eor.iv
 0  1  1  1  0   ------->рон---->рг.Q-->  z in.eor.iv z pf0 -

                 |---------------------|
 0  1  1  1  1   |--->рон------>рг.Q---|    z  pq0  z  pf0  -

                        "0"          "0"
 1  0  0  0  0  мс<--рон<--   <--рг.Q<--    0   z   0   z  pf3

                        "1"          "1"
 1  0  0  0  1  мс<--рон<--   <--рг.Q<--    1   z   1   z  pf3

                        "0"           "0"
 1  0  0  1  0    <--рон<--   <--рг.Q<--    0   z   0   z   -

                        "1"           "1"
 1  0  0  1  1    <--рон<--   <--рг.Q<--    1   z   1   z   -

                                     "0"
 1  0  1  0  0  мс<--рон<-------рг.Q<---   pq3  z   0   z  pf3

                                     "1"
 1  0  1  0  1  мс<--рон<-------рг.Q<---   pq3  z   1   z  pf3

                                     "0"
 1  0  1  1  0   <---рон<-------рг.Q<---   pq3  z   0   z   -

                                     "1"
 1  0  1  1  1   <---рон<-------рг.Q<---   pq3  z   1   z   -

                   |-------|  |--------|
 1  1  0  0  0 мс<-|-рон<--|  |--рг.Q<-|   pf3  z  pq3  z  pf3

                 |---------|  |--------|
 1  1  0  0  1   мс<--рон<-|  |--рг.Q<-|   мс   z  pq3  z  pf3

                  |-------|   |--------|
 1  1  0  1  0    |--рон<-|   |--рг.Q<-|   pf3  z  pq3  z   -

                   мс----|           "0"
 1  1  0  1  1   <--рон<-|   <--рг.Q<---   мс   z   0   z   -

                  |--------------------|
 1  1  1  0  0    мс<--рон<-----рг.Q<--|   pq3  z   мс  z  pf3

                      |----------------|
 1  1  1  0  1   мс<--|--рон<----рг.Q<-|   pq3  z  pf3  z  pf3

                     мс----------------|
 1  1  1  1  0     <--рон<------рг.Q<--|   pq3  z   мс  z   -

                   |-------------------|
 1  1  1  1  1     |---рон<-----рг.Q<--|   pq3  z  pf3  z   -

ТАБЛИЦА 8

ИСТОЧНИК НОМЕРА МОДИФИКАТОРА

MODIFICATOR NUMBER SOURCE ADRESS (MNSA)

в а
0  0  -  исполнительный адрес
0  1  -  поле модификатора команды
1  0  -
1  1  -  микропрограмма

ТАБЛИЦА 9

НОМЕР МОДИФИКАТОРА В ГРУППЕ

MODIFICATOR NUMBER (MODNM)

е  d  с  в  а
х  х  х  х  х - номер модификатора, используемого
                в микропрограмме (в обратном коде)

ТАБЛИЦА 10

ПАРАМЕТР СДВИГА

(PSHF)

j  f  е  d  с  в  а   параметр сдвига сдвигателя

0  х  х  х  х  х  х - сдвиг влево, количество сдвигов
                      задается в дополнительном коде;
1  х  х  х  х  х  х - сдвиг вправо, количество сдвигов
                      задается в прямом коде.

ТАБЛИЦА 11

ИСТОЧНИКИ ИНФОРМАЦИИ НА ШИНУ D ЦП

D - SOURCE (DSRC)

d с в а
0 0 0 0 - не используется
0 0 0 1 - регистр номера группы ОЗУ модификаторов
0 0 1 0 - регистр номера процесса
0 0 1 1 - триггеры признаков
0 1 0 0 - регистр физической страницы
0 1 0 1 - регистр КОП арбитра
0 1 1 0 - произведение (младшие разряды)
0 1 1 1 - произведение (старшие разряды)
1 0 0 0 - адрес команды
1 0 0 1 - результат сдвига
1 0 1 0 - КОП команды
1 0 1 1 - результат поиска левой единицы
1 1 0 0 - ПЗУ констант
1 1 0 1 -
1 1 1 0 - чтение часов и таймера СВ (нет dsrc15 и wrd)
1 1 1 1 - переключение направления ШФ от шины У ЦП
          к часам и таймеру СВ (запись: dsrc15 + wrd)

ТАБЛИЦА 12

ПРИЕМНИКИ ИНФОРМАЦИИ С ШИНЫ У ЦП;  СТРОБ Т1

У - DESTINATION (YDST)

С в а
0 0 0 0 - не используется
0 0 0 1 - регистр номера группы ОЗУ модификоторов
0 0 1 0 - регистр номера процесса
0 0 1 1 - регистр режимов и триггеры признаков (кроме ткк)
0 1 0 0 - регистр физической страницы
0 1 0 1 - регистр КОП арбитра
          (для пультового останова)
0 1 1 0 - множимое
0 1 1 1 - множитель, одновременно - запуск умножителя
1 0 0 0 - регистр исполнительного адреса
1 0 0 1 - регистр параметра сдвига
1 0 1 0 - запуск сброса кэша.
          на время сброса кэша обращение к нему блокируется,
          чтение происходит только из памяти.
1 0 1 1 - установка арбитра в начальное состояние или
          сброс BTR (одновременно с НОП арбитра).
          если КОП арбитра не 0, происходит запуск арбитра!
1 1 0 0 -
1 1 0 1 -
1 1 1 0 -
1 1 1 1 -

ТАБЛИЦА 13

КОД ОПЕРАЦИИ СДВИГАТЕЛЯ

SHIFT FUNCTION (SHF)

В а
0 0 - циклический сдвиг вправо
0 1 - логический сдвиг
1 0 - арифметический сдвиг
1 1 - "расхлопывание" (переход к формату БЭСМ-6)

ТАБЛИЦА 14

К О П   АРБИТРА

ARBITER INSTRUCTION (ARBI)

d с в а
0 0 0 0 - НОП
0 0 0 1 - чтение кэш команд
0 0 1 0 - запись в кэш команд
0 0 1 1 - чтение кэш операндов
0 1 0 0 - запись в кэш операндов
0 1 0 1 -
0 1 1 0 -
0 1 1 1 -
1 0 0 0 - чтение команды
1 0 0 1 - чтение операнда
1 0 1 0 - запись результата
1 0 1 1 - чтение - модификация - запись
          (семафорное чтение)
1 1 0 0 - запись в режиме блочной передачи (BTR)
1 1 0 1 - чтение в режиме блочной передачи (BTR)
1 1 1 0 - сброс прерываний на шине
1 1 1 1 - чтение прерываний с шины

ТАБЛИЦА 15

УПРАВЛЕНИЕ ДЛИТЕЛЬНОСТЬЮ ТАКТОВОГО ИМПУЛЬСА

CYCLE STRATCH (CYSTR)

с в а
0 0 1 - 3 нанотакта
        (минимальная длительность тактового импульса)
0 0 0 - 4
1 0 0 - 5
1 1 0 - 6
0 1 0 - 7
0 1 1 - 8
1 1 1 - 9
1 0 1 - 10 нанотактов (максимальная)

000                           001
       -------- 1 ----               --------- 1 ----
 т1 ---|   2  |---|               ---|   3   |---|

       -----   2  ----               -------  2  ----
 т2 ---| 1 |------|               ---|  2  |-----|

       -----   2  ----               -------  2  ----
 т3 ---| 1 |------|               ---|  2  |-----|

    ---- 1 --------               ---- 1 ---------
 т4    |---|   2  |---               |---|   3   |---

101                           111
       ---------- 1 ----             ----------- 1 ----
 т1 ---|    4   |---|             ---|    5    |---|

       --------  2  ----             ---------  2  ----
 т2 ---|   3  |-----|             ---|   4   |-----|

       -------   3  ----             --------   3  ----
 т3 ---|  2  |------|             ---|   3  |------|

    ---- 1 ----------             ---- 1 -----------
 т4    |---|    4   |---             |---|    5    |---

011                           010
       ------------ 1 ----           ------------- 1 ----
 т1 ---|     6    |---|           ---|     7     |---|

       ----------  2  ----           -----------  2  ----
 т2 ---|    5   |-----|           ---|    5    |-----|

       -------   4    ----           ---------   4   ----
 т3 ---|  3  |--------|           ---|   4   |-------|

    ---- 1 ------------           ---- 1 -------------
 т4    |---|    6     |---           |---|     7     |---

110                           100
       -------------- 1 ----         --------------- 1 ----
 т1 ---|      8     |---|         ---|      9      |---|

       ------------  2  ----         -------------  2  ----
 т2 ---|     6    |-----|         ---|     8     |-----|

       ---------    5   ----         ----------    5   ----
 т3 ---|   4   |--------|         ---|    5   |--------|

    ---- 1 --------------         ---- 1 ---------------
 т4    |---|     8      |---         |---|      9      |---

ТАБЛИЦА 16

АДРЕСА РЕГИСТРОВ КАНАЛА  В  Б О И   ДАННЫХ И ТЕГА

В - REGISTER ADRESS (BRA)

В а
0 0 - rg0 - физический адрес;
            в бои тега: не используется.
0 1 - rg1 - регистр левой, правой команды;
            в бои тега: тег команды.
1 0 - rg2 - регистр операнда;
            в бои тега: тег операнда.
1 1 - rg3 - регистр результата;
            в бои тега: тег результата (сумматора)

ТАБЛИЦА 17

АДРЕСА РЕГИСТРОВ КАНАЛА А БОИ ДАННЫХ

А - REGISTER ADRESS (ARA)

В а
0 0 - rg0 - физический адрес;
0 1 - rg1 - регистр левой, правой команды;
1 0 - rg2 - регистр операнда;
1 1 - rg3 - регистр результата.

ТАБЛИЦА 18

ИСТОЧНИКИ/ПРИЕМНИКИ ИНФОРМАЦИИ С ШИНЫ У

У - DEVICE (YDEV)

С в а
0 0 0 - не используется
0 0 1 - канал В БОИ тега (ЕСВ)
0 1 0 - физический адрес (только на чтение)
        одновременно - сигнал записи в РФС и
        изменение признаков БОБР,БИЗМ,БМСП и запуск арбитра
0 1 1 - регистр исполнительного адреса (только на чтение)
        (запись - см. Таблицу 12)
1 0 0 - ОЗУ приписок (CS)
1 0 1 - ОЗУ обмена с ПП
1 1 0 - ОЗУ останова 0 (только на запись)
1 1 1 - ОЗУ останова 1 (только на запись)

ТАБЛИЦА 19

ИСТОЧНИКИ/ПРИЕМНИКИ ИНФОРМАЦИИ С ШИНЫ D

D - DEVICE (DDEV)

С в а
0 0 0 - не используется
0 0 1 - БОБР, БИЗМ
0 1 0 - БМСП
0 1 1 - сброс ПИА
1 0 0 - регистр и таймер счетного времени (сигнал CS) (*)
1 0 1 - СУСС (**)
1 1 0 - ОЗУ приоритетов страниц 0 (**)
1 1 1 - ОЗУ приоритетов страниц 1 (**)

блоки, помеченные (*): источники, приемники с шины У;
блоки, помеченные (**): источники - на шину D, приемники - с шины У;
непомеченные: источники, приемники с шины D.

ТАБЛИЦА 20

УСТАНОВКА/СБРОС ТРИГГЕРОВ ПРИЗНАКОВ

FLIP-FLOP CONTROL (FFCNT)

е d с в а
0 0 0 0 0 - не используется
0 0 0 0 1 - логическая группа
0 0 0 1 0 - группа умножения
0 0 0 1 1 - группа сложения
0 0 1 0 0 -
0 0 1 0 1 - установка ПИА
0 0 1 1 0 - сброс ППК
0 0 1 1 1 - установка - " -
0 1 0 0 0 - сброс ППУ
0 1 0 0 1 - установка - " -
0 1 0 1 0 - сброс маски прерываний
0 1 0 1 1 - установка - " -
0 1 1 0 0 - сброс МП признака "след 0"
0 1 1 0 1 - установка - " -
0 1 1 1 0 - сброс МП признака "след 1"
0 1 1 1 1 - установка - " -
1 0 0 0 0 - сброс прерывания от часов счетного времени
1 0 0 0 1 - сброс прерывания от таймера счетного времени
1 0 0 1 0 - сброс ТКК (ППК стандартизатора)
1 0 0 1 1 - установка - " -
1 0 1 0 0 - установка нового режима
1 0 1 0 1 - запуск загрузки ОЗУ БМСП единицами
1 0 1 1 0 - установка режима эмуляции
1 0 1 1 1 - переброс тг. ТКК
1 1 0 0 0 - установка тг. "останов" (HALT)
1 1 0 0 1 - сброс прерываний (кроме прерываний от таймеров)
1 1 0 1 0 - сброс тг. "ПУСК"
1 1 0 1 1 - установка признака "озу пп->цп" прочитано
1 1 1 0 0 - установка признака в "озу пп->цп" есть информация
1 1 1 0 1 - установка признака в "озу цп->пп" есть информация,
            одновременно - установка тг., что "озу цп->пп занято" (условие 10111)
1 1 1 1 0 - установка программного прерывания (прерывание с номером 31,
            проходящее при отсутствии БВП и стробируемое ПМИ)
1 1 1 1 1 - установка внешнего прерывания на магистраль по шине D0
            (ЦП посылает прерывание, сам не прерываясь)


 в а - сигналы а1,а0 при обращении к часам и таймерам (IОМР=1).

ТАБЛИЦА 21

АДРЕС ОЗУ ОБМЕНА С ПП

(MPADR)

d  с  в  а
х  х  х  х  -  адрес слова ОЗУ обмена

ТАБЛИЦА 22

АДРЕС ВЫБОРКИ УСЛОВИЯ

CONDITION (COND)

е d с в а
0 0 0 0 0 - "да"
0 0 0 0 1 - БНОР
0 0 0 1 0 - БОКР
0 0 0 1 1 - БПП
0 0 1 0 0 - ББЧ
0 0 1 0 1 - БППУ
0 0 1 1 0 - РД
0 0 1 1 1 - РЭ
0 1 0 0 0 - ППК
0 1 0 0 1 - ПИА
0 1 0 1 0 - 20-й разряд РР (РЭС)
0 1 0 1 1 - СТ СУСС
0 1 1 0 0 - след1
0 1 1 0 1 - ПОП
0 1 1 1 0 - ИР15
0 1 1 1 1 - ТКК
1 0 0 0 0 - "пуск"
1 0 0 0 1 - отсутствие готовности умножителя
1 0 0 1 0 - 5 разряд статусного регистра ЦП
1 0 0 1 1 - признак наличия прерываний
1 0 1 0 0 - ОЗУ БМСП единицами заполнено
1 0 1 0 1 - готовность арбитра
1 0 1 1 0 -
1 0 1 1 1 - ОЗУ обмена "цп->пп" прочитано ("1"); ffcnt29 устанавливает
            его в "0"; ПП командой OUT 7F устанавливает в "1".
1 1 0 0 0 -
1 1 0 0 1 -
1 1 0 1 0 -
1 1 0 1 1 -
1 1 1 0 0 -

ЗНАЧЕНИЯ ОДНОБИТОВЫХ ПОЛЕЙ МИКРОИНСТРУКЦИИ

ALU  - разрешение выхода У МПС (ОЕ МПС)
Н    - в операции АЛУ участвуют 32 (0) или 64 (1) разряда МПС
MOD  - режим команд RMOD, WMOD
RLD  - загрузка в рг/сч СУАМ (сигнал RLD) и управление ШФ шин У ЦП и D СУАМ;
LETC - пропуск ПИА на вход ПНА КОП
SCI  - условие, выбираемое полем COND, подается на вход CI СУАМ ("жду");
       если SCI не задано, CI СУАМ равен 1.
ICI  - инверсия условия, подаваемого на вход CI СУАМ.
ICC  - инверсия условий, выбираемых полем COND
ISE  - признак последней микроинструкции, разрешающий прохождение некоторых
       прерываний и копирование ТКК в ППК (interrupt strobe enable)
СЕМ  - разрешение записи в регистр М СУСС (/СЕМ)
CEN  - разрешение записи в регистр N СУСС (/CEN)
CSM  - обращение к ОЗУ модификаторов
WEM  - запись в ОЗУ модификаторов (write enable modificator)
ЕСВ  - выбор канала В БОИ данных
WRB  - запись по каналу В в БОИ данных и БОИ тега
ЕСА  - выбор канала А БОИ данных
WRA  - запись по каналу А в БОИ данных
WRY  - запись в источники/приемники шины У
WRD  - запись в источники/приемники поля DDEV
IOMP - выбор ОЗУ обмена, сигналов А1А0 для таймеров или дешифратора триггеров признаков:
"1" - 7:10 разряды поля МП - адрес ОЗУ обмена;
"1" - 7:8 разряды - сигналы А1А0 часов и таймеров;
"0" - 7:11 - управление триггерами признаков.
MPS  - задание параметра сдвига:
       1 - из микропрограммы (56:62 разряды);
       0 - в регистре параметра сдвига.

6.4. Некоторые БИС, входящие в состав ЦП, и их использование

6.4.1. Блок обмена информацией (БОИ)

Обмен информацией между центральными процессорами, ОЗУ и внешними устройствами осуществляется 16 4-разрядными БИС типа К1802ВВ1, используемыми для чтения, записи команд и данных, и схемой из 2 аналогичных БИС для чтения, записи тега.

Структурная схема бои

                     ^               ^
                     |               |
                   4 v A           4 v X
               ----------------------------- <--- а0-а1
               |                           | <--- ес
               |    rg0, rg1, rg2, rg3     | <--- r
               |                           | <--- w
               -----------------------------
                   4 ^ B           4 ^ C
                     |               |
                     v               v

БОИ содержит 4 регистра: RG0,RG1,RG2,RG3. Ввод и вывод данных в регистры производится по 4-м каналам: А,В,С,Х. Канал Х может использоваться для выдачи информации на длинные линии связи; он подключен к общей шине данных.

Разрешением обмена информацией с каналами управляют сигналы /ЕСА, /ЕСВ, /ЕСС, /ЕСХ (Enable Channel) (здесь и далее символ “/” означает инвертированный сигнал). При “0” на этих входах разрешен обмен информацией выбранного регистра с соответствующим каналом. Выборка регистра осуществляется подачей 2-разрядного двоичного кода на адресные входы АА0-АА1, АВ0-АВ1, АС0-АС1, АХ0-АХ1.

Сигналы /RА, /RВ, /RС, /RХ (Read) разрешают считывание выбранных регистров по каналам А,В,С,Х. Сигналы /WА, /WВ, /WС, /WХ (Write) - разрешают запись, причем запись в RG0 производится “фронтом”, а в остальные регистры - “потенциалом”.

Использование регистров:

  • RG0 - физический адрес слова в ОЗУ (команды или операнда), используются только младшие 20 разрядов;

в БОИ тега - не используется.

  • RG1 - регистр командного слова; в старших 32 разрядах - код левой команды, в младших - правой;

в БОИ тега - тег команды.

  • RG2 - регистр операнда, 64 разряда;

в БОИ тега - тег операнда, 8 разрядов.

  • RG3 - регистр результата, 64 разряда;

в БОИ тега - тег результата, 8 разрядов.

Использование каналов:

  • Х - считывание физического адреса из RG0 на общую шину;
    • запись командного слова и тега команды с общей шины в RG1;
    • запись операнда и тега операнда с общей шины в RG2;
    • чтение результата и тега результата из RG3 на общую шину.
  • А - чтение, запись с шины D ЦП данных в регистры БОИ (в частности, в RG2 и RG3).
  • В - чтение, запись данных с шины У ЦП;
    • чтение, запись тега с шины У.
  • С - чтение левой, правой команды из RG1.
Использование сигналов:

При наличии сигналов /W и /ЕС при обращениях к БОИ происходит запись в соответствующий регистр. При наличии сигнала /ЕС и отсутствии /W происходит чтение внутреннего регистра. Сигналами каналов, обращенными к внешней шине данных (/WХ, /ЕСХ, АХ0-АХ1), управляет арбитр шины. Код адреса регистра канала С АС0-АС1 всегда равен 10. Сигналами /WА, /WВ, /ЕСА, /ЕСВ управляет микропрограмма. Значения АА0-АА1, АВ0-АВ1 задаются также в микропрограмме.

6.4.2. Микропроцессорная секция (К1804ВС1)

Четырехразрядная микропроцессорная секция (МПС) состоит из четырех основных блоков: внутренней памяти, АЛУ, регистра Q и управления.

Структурная схема МПС:

Блок внутренней
    памяти         -------------------
                   |                4|
                   v                 |
       pr3 ----------------- pr0     |
       <-->|    с  д  а    |<-->     |
           -----------------         |
                   | 4               |     блок регистра q
                   v                 |
  а0-а3  4 -----------------         |          ------------
  -------->|               |         |          |          |
  в0-в3  4 |    р  з  у    |         |          v          |
  -------->|               |         | pq3 ----------- pq0 |
           -----------------         | <-->|  с д р  |<--> |
               |       |             |     -----------     |
               v       v             |------    |          |
           -------- --------         |      |   | 4        |
т---->     | рг.А | | рг.В |         |      v   v          |
           -------- --------         |     -----------     |
               |       |             |     |  рг. q  |     |
               |4      |4            |     -----|-----     |
     ----------|       |             |          v          |
     |         |       |   ----------+----------------------
d0-d3|         |  "0"  |   |         |
-----+------   |   |   |   |         |
     |    4|   |   |4  |   |4        |
     |     v   v   v   v   v         |
     | ---------------------------   |
     | |    d   а   0   в   q    |   |
     | |          с и д          |   |
     | ---------------------------   |        управляющие
     |    | 4                 | 4    |          сигналы
     |    v                   v      |          ^....^
     | --------           --------   |          |....|
 с4<-+-\   r   \         /   s   /   |      --------------
 /g<-+--\       ---------       /    |      |    блок    |
 /р<-+---\       а  л  у       /  с0 |      | управления |
ovr<-+----\                   /<---- |      --------------
  z<-+-----\        f        /       |         ^   ^   ^
 f3<-+------\---------------/        |         |   |   |
     |              |                |         |   | i2-i0
     -----------|   |-----------------         | i5-i3
                v   v                        i8-i6
             ---------------
             |   с  в  д   |                 блок управления
             ---------------
арифметическо-      | 4
  логический        |<------/ое
     блок           v у

БЛОК ВНУТРЕННЕЙ ПАМЯТИ содержит регистровое запоминающее устройство (РЗУ) с двумя независимыми каналами выбора информации. Выбор из блока внутренней памяти любого регистра в качестве источника информации осуществляется сигналами на адресных входах А0-А3 или В0-В3. Из РЗУ могут быть одновременно считаны 2 слова, при этом, если на адресных входах установлены одинаковые адреса, на обоих выходах РЗУ появятся идентичные данные.

Запись данных производится в регистр, адресуемый сигналами В0-В3. Моментом начала записи является момент перехода тактового сигнала Т из “1” в “0”. С этого момента информация на выходах из регистров А и В фиксируется, что устраняет неопределенность в кольце передачи информации с выхода блока внутренней памяти на его вход.

Информация перед записью в РЗУ может быть сдвинута влево или вправо на 1 разряд. Эту операцию выполняет сдвигатель данных СДА. PR0, PR3 - сигналы на двунаправленных выводах МПС, возникающие при выполнении операции сдвига перед записью в РЗУ.

АРИФМЕТИЧЕСКО-ЛОГИЧЕСКИЙ БЛОК включает двухвходовое арифметическо-логическое устройство (АЛУ), выполняющее 8 логических и арифметических операций и формирующее 4 признака результата: перенос из старшего разряда С4, переполнение OVR, знак или содержимое старшего разряда на выходе F3 АЛУ и признак нулевого значения Z всех выходов АЛУ. На входах АЛУ включен селектор источника данных (СИД), позволяющий выбирать в качестве пары операндов АЛУ информацию из 5 источников: с внешней шины данных D0-D3, с каналов А и В РЗУ, из дополнительного регистра Q или нулевую константу. С выхода АЛУ информация подается на селектор выходных данных (СВД). На второй вход селектора информация может быть передана прямо с выхода А РЗУ, минуя АЛУ. С выхода СВД информация передается на выходную шину У. Разрешением выдачи информации через У-выходы управляет сигнал /ОЕ.

Выбор источников данных на входы R и S АЛУ задается сигналами микрокоманды I0-I2, приемника результата - сигналами I6-I8, функции - сигналами I3-I5.

Арифметические операции в АЛУ выполняются с учетом значения сигнала входного переноса С0 по правилам дополнительного кода при представлении отрицательных чисел. (в частности, при выполнении операции вычитания С0 устанавливается в 1 для представления результата в дополнительном коде).

БЛОК РЕГИСТРА Q состоит из дополнительного регистра Q и сдвигателя регистра (СДР), который позволяет записывать информацию в регистр Q с выхода АЛУ и сдвигать содержимое регистра Q вправо или влево на 1 разряд. PQ0, PQ3 - сигналы на двунаправленных выводах МПС, возникающие при выполнении операции сдвига информации перед записью в регистр Q.

БЛОК УПРАВЛЕНИЯ формирует управляющие сигналы для остальных блоков МПС в зависимости от сигналов кода микрокоманды I0-I8.

Арифметические и логические операции в ЦП с 64-разрядными данными производятся схемой из 16 4-разрядных микропроцессорных секций. Адресные вычисления и арифметические операции над модификаторами (32 разряда) выполняются схемой из 8 МПС, соответствующей младшей половине 64-разрядной схемы, причем сигналы выходного переноса, знакового разряда, переполнения и нулевого результата формируются в зависимости от типа данных (64 или 32).

Использование сигналов:

Сигналами I0-I8, А0-А3, В0-В3, /ОЕ, С0 управляет микропрограмма; сигналы D0-D3 поступают с входной шины D ЦП; У0-У3 выходят на шину У ЦП; сигналы С4, F4, OVR, Z, PR0, PR3, PQ0, PQ3 передаются на схему управления состоянием и сдвигами К1804ВР2, и далее - на мультиплексор условий; /Р и G используются для формирования ускоренного переноса.

6.4.3. Схема управления состоянием и сдвигами (К1804ВР2)

                                     блок обработки
                     iz,in,iv,iс        признаков
                          |
                          | 4
            --------------+-------------
            |         ----+---------   |
            |   ------+---+----    |   |   -------
          4 |   |     |   |   |    | 4 | 4 | 4   |
            v   v     |   |   |    v   v   v     |
       ------------   |   |   |   ------------   |
       |   muxn   |   |   |   |   |   muxm   |   |
       ------------   |   |   |   ------------   |
            | 4       |   |   |        | 4       |
            v         |   |   |        v         |
  /cen ------------   |   |   |   ------------   |/сем
  ---->|   рг.N   |   |   |   |   |   рг.М   |<--+----
       ------------   ^   |   ^   ------------   | /ev
            |         | 4 | 4 | 4      |         | /ez
            ----------|   |   ----------         | /en
i*                    v   v   v                  | /ес
  ^  ^  ^  ^       ---------------               |
  |  |  |  |       |   mux вых   |               ^
--------------     ---------------               |
|    блок    |            |                      |
| управления |            |------------>-----------------<--->
--------------            v          4             yz,yn,yv,ус
      ^          ------------------
      | 6        | схема проверки |
    i0-i5        |     условия    |
                 ------------------
                          |           /оест
                          |<---------------
                       ст v   блок проверки
                                условия

       сх  "0" "1"  мс  nс         "0" "1" мс  mn  iс in$iv
        |   |   |   |   |           |   |   |   |   |   |
        v   v   v   v   v           v   v   v   v   v   v
    2  -------------------       pf3---------------------pf0
------>| блок управления |<--    <->|  блок управления  |<->
i11,i12|    переносом    | i*    pq3|      сдвигами     |pq0
       -------------------       <->---------------------<->
                |                       ^     ^     |
                | с0                    |     |5    v
                v                      /sе  i6-i10  загрузка
                                                    разряда мс

Схема управления состоянием и сдвигами (СУСС) предназначена для выполнения различных функций обслуживания АЛУ: формирования сигнала входного переноса в МПС и схему ускоренного переноса; организации сдвигов; выполнения операции с регистрами состояния; проверки одного из 16 условий, поступающих с выходов регистров состояния или МПС. В схеме СУСС можно выделить 5 основных блоков: обработки признаков, проверки условия, управления переносом, управления сдвигами, управления.

БЛОК ОБРАБОТКИ ПРИЗНАКОВ состоит из двух 4-разрядных регистров состояния (рг. N и рг. М), двух входных мультиплексоров (MUXN и MUXM) и выходного мультиплексора (MUX Вых) и предназначен для хранения и модификации признаков состояния МПС: переноса (С), знака (N), переполнения (OVR) и нуля (Z).

В рг. N информация поступает с выхода двухвходового MUXN. В зависимости от сигналов микрокоманды I0-I5 в рг. N может быть записана информация со входов признаков состояния (IС, IN, IV, IZ) или с выходов рг. М (МС, MN, MV, MZ), а также “0” или “1”. Для записи необходимо, чтоб сигнал разрешения записи /CEN был установлен в “0”. С рг. N можно выполнять операции загрузки регистра со входов признаков состояния; регистровые операции и операции с отдельными разрядами регистра. Операции с битами представляют собой установку в “0” или “1” одного из разрядов рг. N в зависимости от сигналов микрокоманды I0-I5. Регистровые операции представляют собой операции со всем словом, записанным в рг. N. В зависимости от сигналов I0-I5 выполняется одна из четырех регистровых операций: запись содержимого рг. М в рг. N, регистровый обмен или установка всех разрядов рг. N в “0” или “1”. Операции загрузки регистра представляют собой запись информаци в рг. N со входов признаков состояния (IС, IN, IV, IZ).

В рг. М информация поступает с выхода трехвходового MUXM. В зависимости от значения сигналов I0-I5 в рг. М может быть записана информация со входов признаков состояниия, с выходов рг. N или с двунаправленной шины У (УС, YN, YV, YZ). Кроме того, в каждый разряд рг. М может быть записан “0” или “1”. Для выполнения записи необходимо, чтобы на входе разрешения записи в рг. М (/СЕМ) был установлен “0”.

Рг. М выполняет операции с битами, со словами и операции загрузки рг. М со входов IС, IN, IV, IZ. Операции с битами рг. М выполняет с помощью сигналов разрешения записи признаков (/ЕС, /EN, /EV, /EZ). При “1” на входе разрешения записи признака запрещается запись в соответствующий разряд рг. М. При “1” на входе /СЕМ запрещается запись во все разряды рг. М.

Информация с выходов рг. N, рг. М или со входов признаков состояния через выходной мультиплексор передается на двунаправленную трехстабильную шину У. Если на входах I0-I5 нули, то шина У является входной независимо от сигнала разрешения вывода информации (/ОЕУ). В остальных случаях шина У является выходной.

БЛОК ПРОВЕРКИ УСЛОВИЯ состоит из схемы проверки условия, мультиплексора со схемой управления полярностью и предназначен для формирования выходного сигнала кода условия. Под действием сигналов I3-I0 блок выполняет 16 операций, результат которых передается на выход кода условия (СТ). Выбор операндов для выполнения операций в блоке осуществляется под действием сигналов микрокоманды I4, I5.

4 выполняемые блоком проверки условия операции представляют собой передачу одного из признаков состояния на выход СТ. Другие 4 операции используются после окончания операций вычитания (А-В) в АЛУ для выполнения условий А=В, А/=В, А>=В и т. Д. При этом числа А и В могут быть представлены в дополнительном коде или как числа без знака. Затем результат одной из этих 8 операций выбирается мультиплексором для передачи на вход схемы управления полярностью, которая при необходимости инвертирует этот результат. Поэтому остальные 8 операций, выполняемых блоком, представляют собой инверсию первых 8 операций. Результат проверки условия с выхода схемы управления полярностью поступает на шину СТ, управляемую сигналом разрешения кода условия (/ОЕСТ).

БЛОК УПРАВЛЕНИЯ ПЕРЕНОСОМ формирует сигнал входного переноса С0 под действием сигналов микрокоманды I12, I11, I5, I3-I1. При этом в качестве входного переноса выбирается один из 7 источников (”0”, “1”, СХ, NС, МС, /NС, /МС), что позволяет легко реализовать операции сложения и вычитания чисел обычной и двойной длины.

БЛОК УПРАВЛЕНИЯ СДВИГАМИ предназначен для организации арифметических, логических и циклических сдвигов в зависимости от сигналов микрокоманды I6-I10. Сигнал I10 определяет направление сдвига.

БЛОК УПРАВЛЕНИЯ под действием сигналов микрокоманды I0-I12 формирует внутренние сигналы, управляющие блоками СУСС.

Использование сигналов

Выходы признаков состояния старшей МПС С4, OVR, F3, Z соединены с соответствующими входами признаков состояния СУСС. При этом старшей может считаться МПС, содержащая 32-28 или 64-60 разряды в зависимости от типа операций, производимых в АЛУ. Двунаправленная шина У (УС, YN, YV, YZ) соединена через ШФ со входной шиной D ЦП для выдачи информации из СУСС, и с выходной шиной У для чтения информации. Выход кода условия СТ подается на мультиплексор условий. Входы /СЕМ, /EZ, /ЕС, /EN, /EV, СХ, /ОЕСТ заземлены. Управление входом /SE осуществляется инверсным сигналом I8 МПС, I10 соединяется со входом I7 МПС. Сигналами /СЕМ и /CEN управляет микропрограмма.

6.5. Обработка прерываний на микроуровне

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

Прерывания делятся на 2 группы: “псевдо” и все остальные (внешние и внутренние).

В случае внешних и внутренних прерываний выполнение программы будет продолжаться, начиная с выборки командного слова. Поэтому микропрограмма входа в прерывание должна делать сброс стека (командой CJPP производится выборка адреса из стека как минимум 2 раза!). Затем производится смена рабочей группы регистров с передачей управления программе обработки соответствующего прерывания согласно вектору прерываний.

В случае псевдопрерываний обработка их происходит на микропрограммном уровне и заканчивается передачей управления по адресу, выбираемому из стека, а выполнение микропрограммы продолжается с прерванного места.

  • Псевдопрерывания от ПП при чтении и записи регистров ЦП. Считывание или запись пультовым процессором содержимого регистров ЦП происходит через ОЗУ обмена с ПП. В этих прерываниях микропрограмма имитирует команды RMOD и WMOD, а именно:
    • через преобразователь начального адреса считывает содержимое адресного регистра, установленного ПП, и определяет запрашиваемую группу регистров ЦП;
    • считывает (записывает) указанный регистр в ОЗУ ПП.
    • производит возврат из псевдопрерывания.
  • Псевдопрерывание HALT (останов). Происходит по запросу от ПП (6 разряд стаусного регистра ЦП), при задании режима останова по адресу (4 разряд статусного регистра) в случае совпадения заданного адреса с текущим и по команде “останов”. В момент входа в псевдопрерывание микропрограмма сбрасывает триггер “пуск” (для надежности) и ждет его установки пультовым процессором. После установки триггера микропрограмма снова сбрасывает его и передает управление по адресу, выбираемому из стека.

6.6. Статусный регистр ЦП

В ЦП установлен статусный регистр, управляемый ПП. Значение отдельных разрядов статусного регистра:

  • 1 - полный останов ЦП (для доступа к ОЗУ, ПЗУ МП) (”0”).
  • 2 - 12-ый разряд адреса микропрограммной памяти при обращении к ней I8080.
  • 3 - 12-ый разряд адреса микропрограммной памяти при безусловном переходе, инициированном I8080.
  • 4 - блокировка останова по адресу (”1”)
  • 5 - идет на мультиплексор условий ЦП
  • 6 - halt (”1”), устанавливаемый из ЦП
  • 7 - при записи - сброс HALT ЦП; при чтении - “1”.
  • 8 - HALT, устанавливаемый из ПП.

Пультовой процессор имеет возможность управлять состоянием ЦП через статусный регистр, реализуя функции “пультовой отладки”:

  • Останов - сброс 6 разряда статусного регистра ЦП (режим HALT), вызывающего псевдопрерывание HALT.
  • Пуск - установка 6 разряда статусного регистра и установка тг. ПУСК, сбрасываемого микропрограммой.
  • Шаг - в режиме “останов” - установка тг. ПУСК, сбрасываемого микропрограммой.

Разряды 2 регистра БОПП, устанавливаемые микропрограммой, и их значение:

  • 1р.= 1 - останов, установленный ПП;
  • 2р.= 1 - команда “останов”;
  • 3р.= 1 - прерывание в прерываниии (ПОП=1 и любое внутреннее или внешнее прерывание);
  • 4Р.= 1 - “TIME-OUT” ОЗУ (INT3);
  • 5Р.= 1 - “TIME-OUT” шины (INT4);
  • 6р.= 1 - многократная ошибка (INT2);
  • 7р.= 1 - останов по адресу или отсутствующее прерывание (INT6,25);
  • 8р.= 1 - сообщение от ЦП пультовому поцессору (команда WMOD).

6.7. Адресация регистров и памяти ЦП

Для доступа из ПП и командами RMOD и WMOD

Весь список регистров и памяти ЦП доступен только ПП. Командам WMOD и RMOD доступны только некоторые из них (пока).

Обозначения:
  • R - регистр (память) можно прочитать командой RMOD;
  • W - можно записать в регистр (память) командой WMOD;
  • I - можно записать в регистр (память) из ПП;
  • О - можно прочитать регистр (память) в ПП.

РЕГИСТРЫ И ПАМЯТЬ ЦП имеют следующие восьмеричные адреса (в скобках приведены шестнадцатеричные эквиваленты):

000 0000 : 000 1777 (00000 : 003ff) - ОЗУ модификаторов; rwio;
                                      зап-У, чт-D, 32 разряда
000 2000 : 000 3777 (00400 : 007ff) - регистры
                                      приписки/защиты; rwio;
                                      зап/чт - У, 20 разрядов
000 4000 : 000 5777 (00800 : 00BFF) - БОБР, БИЗМ; rwio;
                                      зап/чт - D, 2,3 разряды
000 6000 : 000 7777 (00с00 : 00fff) - признаки БМСП; rwio;
                                      зап/чт - D, 1 разряд
001 0000 : 001 1777 (01000 : 013ff) - озу0 приорит. Стр.; rwio
001 2000 : 001 3777 (01400 : 017ff) - озу1 приорит. Стр.; rwio
                                      зп-У, чт-D,11-20 разряды
001 4000 : 001 5777 (01800 : 01bff) - регистры
001 6000 : 001 7777 (01с00 : 01fff) - регистры
002 0000 : 000 1777 (02000 : 023ff) -
002 2000 : 002 3777 (02400 : 027ff) -
002 4000 : 002 5777 (02800 : 02bff) -
002 6000 : 002 7777 (02с00 : 02fff) -
003 0000 : 003 1777 (03000 : 033ff) -
003 2000 : 003 3777 (03400 : 037ff) -
003 4000 : 003 5777 (03800 : 03bff) - кэш команд; iо
003 6000 : 003 7777 (03с00 : 03fff) - кэш операндов; iо

При обращениях к кэшу адрес задается следующим образом:

  • 1 -10 разряды - номер слова в странице;
  • 11-20 разряды - кэш команд или операндов;
  • 21-30 разряды - номер страницы.

Таким образом, 30-21,10-1 разряды есть полный 20-разрядный адрес, необходимый для обращения к кэшу и эквивалентный адресу по памяти. Знаковый разряд адреса размножается в микропрограмме автоматически.

Адреса кэш команд и операндов “приписаны”, т.е. Если БП=1, задается физ.адрес; если БП=0 - мат.адрес с учетом приписки!

Регистры:
  • 001 4000 (01800) - сумматор (64 разряда); iо
  • 001 4001 (01801) - регистр младших разрядов (64 разряда); iо
  • 001 4002 (01802) - ГРП (64 разряда); rwio
  • 001 4003 (01803) - СЧАС (32 разряда); одновременно происходит выборка командного слова в регистр команд (RG1); ППК, ТКК и РОП не меняются. Iо
  • 001 4004 (01804) - РОП (32 разряда); rwio
  • 001 4005 (01805) - ИАОП (32 разряда); iо
  • 001 4006 (01806) - half; iо
  • 001 4007 (01807) - вуте; iо константы
  • 001 4010 (01808) - expn; iо микропрограмм
  • 001 4011 (01809) - mant; iо
  • 001 4012 (0180а) - wr6; iо
  • 001 4013 (0180в) - wr5; iо рабочие
  • 001 4014 (0180с) - wr4; iо регистры
  • 001 4015 (0180d) - wr3; iо микропрограмм
  • 001 4016 (0180е) - wr2; iо
  • 001 4017 (018of) - q; iо
  • 001 4020 (01810) - регистр физического адреса ОЗУ (RG0 БОИ данных), 64 разряда (используется 20 разрядов); iо
  • 001 4021 (01811) - регистр команды (RG1 БОИ, 64 разряда); iо
  • 001 4022 (01812) - регистр операнда (RG2 БОИ, 64 разряда); iо
  • 001 4023 (01813) - регистр рез-та (RG3 БОИ, 64 разряда); iо
  • 001 4024 (01814) - регистр тега команды (RG1 БОИ тега) 8 разрядов; iо
  • 001 4025 (01815) - регистр тега операнда (RG2, 8 разрядов); iо
  • 001 4026 (01816) - регистр тега результата (сумматора, 8 разрядов); одновременно пишется в RG3 и РРР; rwio
  • 001 4027 (01817) - регистр исполнительного адреса; запись: 32 разряда шины У, чтение: 20 разрядов шины D; iо
  • 001 4030 (01818) - регистр номера группы; запись: 6-10 разряды шины У, чтение: 6-11 разряды шины D; rwio
  • 001 4031 (01819) - регистр номера процесса; запись: 8 разрядов шины У, чтение: 8 разрядов шины D; rwio
  • 001 4032 (0181а) - регистр физической страницы или адрес ОЗУ признаков ВВВ и ОЗУ приоритетов страниц (РФС); запись: 11-20 разряды шины У, чтение: 11-20 разряды шины D; iо
  • 001 4033 (0181в) - регистр режимов (исполнительная часть); запись: 32 разряда шины У (постоянная часть РР и тг.признаков!); чтение: 3-5,28-30 разряды шины D (только тг.признаков!); iо
  • 001 4034 (0181с) - регистр параметра сдвига, 6 младших разрядов - параметр сдвига, 11-ый разряд задает направление; запись - с шины У; i
  • 001 4035 (0181d) - регистр КОП арбитра (для останова ПП); запись: 4 разряда шины У, чтение: 4 разряда шины D; iо
  • 001 4036 (0181е) - регистр N СУСС, (Z,N,С OVR); - микромашинный статусный регистр; запись: 7-10 разряды шины У, чтение: 7-10 разряды шины D: 10р.- z, 9р.- n, 8р.- с, 7р.- ovr; iо.
  • 001 4037 (0181f) - регистр М СУСС - регистр признаков результата, исполнительная часть; у неактивного процесса копируется в 7-10 разряды РР. Значение разрядов - аналогично рг. N; iо
  • 001 6000 (01с00) - регистр передачи сообщения от ЦП к ПП по последовательной линии связи; записывается 8 разрядов рг. А в 0-й рг. БОПП и устанавливается признак, что там есть информация. (запись в БОПП по 8 разрядов с шины У); w
  • 001 6000 (01с00) - пропуск команды, с выборкой командного слова, если надо; i
  • 001 6001 (01с01) - множимое, 64 разряда У (только запись); пока отсутствует!
  • 001 6002 (01с02) - множитель, 64 разряда (только запись); пока отсутствует!
  • 001 6003 (01с03) - произведение, младшие 64 разряда (только чтение); пока отсутствует!
  • 001 6004 (01с04) - произведение, старшие 64 разряда (только чтение); пока остутствует!
  • 001 6005 (01с05) - блок поиска левой единицы; чтение: 7 разрядов шины D, из которых 6 младших - инфромационные, 7р.- флаг; о
  • 64р.= 1 : результат - 0, флаг - 0
  • 63р.= 1 : результат - 1, флаг - 0
  • . . . . . . . .
  • 1р.= 1 : результат - 63, флаг - 0
  • нет 1 : результат - 63, флаг - 1.
  • 001 6006 (01с06) -
  • 001 6007 (01с07) - результат сдвига сумматора; чтение: 64 разряда D; о
  • 001 6010 (01с08) - КОП команды (по указатулю ТКК), 8р.D (только чтение); о
  • 001 6011 (01с09) - адресная часть команды (по указателю ТКК), 32 разряда D (только чтение); о
  • 001 6012 (01с0а) - запрос на корректировку списков приоритетов страниц: ОЗУ БМСП, начиная с адреса, заданного в сумматоре в 11-20 разрядах, заполняется единицами (при обращениях ПП адрес начала загрузки задается в байтах данных); в ОЗУПС0 по адресу 1 заносится “0”; wi
  • 001 6013 (01с0в) - установка останова - запись “0” (1 разряд шины У) в ОЗУ останова 0 (для пультового останова). Адрес останова задается в байтах данных ОЗУ обмена с ПП, 20 разрядов. Значение регистра КОП арбитра к этому моменту должно быть определено; i
  • 001 6014 (01с0с) - снятие останова - запись “1” в ОЗУ останова 0; i
  • 001 6015 (01c0d) - установка останова - запись “0” в ОЗУ останова 1; i
  • 001 6016 (01с0е) - снятие останова - запись “1” в ОЗУ останова 1; i
  • 001 6017 (01c0f) - запись в регистр команд (RG1) левой команды; записываем 1-32 разряда данных из ПП; i
  • 001 6020 (01с10) - запись в регистр команд правой команды; 1-32 разряды данных из ПП; i
  • 001 6021 (01с11) - “пуск” ЦП, начиная с левой команды, записанной в регистр команд; i
  • 001 6022 (01с12) - “пуск” ЦП, начиная с левой команды по заданному адресу; i
  • 001 6023 (01с13) - установка программного прерывания: устанавливается программное прерывание с номером 31, проходящее при наличии ПМИ и отсутствии БВП. 41 разряд ГРП устанавливается в “1”. Из ПП записывается только разряд ГРП, т.к. Сброс INT31 происходит одновременно со сбросом INT28! wi
  • 001 6024 (01с14) - регистр счетного времени активного процесса, 64 разряда; младшие 16 разрядов - в аппаратной части часов, 17-64 разряды - в ОЗУ модификаторов активной группы. Запись/чтение аппаратной части - по 1 байту с 1-8 разрядов шины D; rwio
  • 001 6025 (01с15) - таймер счетного времени активного процесса, 32 разряда; младшие 16 разрядов - в аппаратной части таймера, 17-32 разряды - в ОЗУ модификаторов активной группы. Запись/чтение - по 1 байту с 1-8 разрядов шины D; rwio
  • 001 6026 (01с16) - проверка состояния ОЗУ обмена ЦП→ПП: С = 1, если занято; r
  • 001 6027 (01с17) -
  • 001 6030 (01с18) - установка внешнего прерывания на шину (ЦП посылает внешнее прерывание, сам при этом не прерываясь); wi
  • 001 6031 (01с19) - сброс кэш’а; wi
  • 001 6032 (01с1а) - чтение номера процессора; rо
  • 001 6033 (01с1в) -
  • 001 6034 (01с1с) -
  • 001 6035 (01c1d) -
  • 001 6036 (01с1е) -
  • 001 6037 (01c1f) -

Регистры WR1,WR5,WR6,N и исполнительного адреса используются как рабочие при обращениях ПП.

 
proj/besm/doc-mkb/micro-besm6.txt · Последние изменения: 2008/04/06 06:35
 
Copyright (C) 1996-2013 Serge Vakulenko
serge@vak.ru