Структура и принципы работы АЛУ и коммутатора. Регистр PS БЭВМ

Структура и принцип работы АЛУ

АЛУ БЭВМ предназначено для выполнения арифметических и логических операций над двоичными словами. Оно имеет два 16-разрядных входа (левый и правый) и один 16-разрядный выход.

АЛУ состоит из следующих функциональных узлов:

  • Схемы обратного кода (инверторы входов): Управляются сигналами COML (для левого входа) и COMR (для правого). Позволяют инвертировать биты входных операндов для реализации операции вычитания и получения обратного/дополнительного кодов.
  • Сумматор и схема логического умножения: Объединенный блок, выполняющий либо поразрядное сложение, либо поразрядное логическое «И» (AND) над входными сигналами. Режим работы выбирается управляющим сигналом SORA: при SORA=0 выполняется сложение, при SORA=1 — логическое умножение.

    Я сам не сразу понял, но оказывается, что SORA - это Sum OR And

  • Вентиль прибавления единицы (PLS1): При подаче сигнала PLS1=1 к результату сложения на сумматоре прибавляется единица (подается перенос в самый младший разряд). Это необходимо для инкремента (INC) или завершения операции получения дополнительного кода (NEG).

Структура и принцип работы коммутатора

Коммутатор расположен на выходе АЛУ. Его задача — преобразовать результат АЛУ перед записью в регистры или передачей на блок проверки флагов.

Коммутатор управляется следующими сигналами:

Передача байтов:

  • LTOL, LTOH, HTOL, HTOH — передача старшего/младшего байта в старший/младшеий байт.
  • SEXT — расширение знака младшего байта (копирование 7-го бита во все старшие разряды 8-15).

Если включить некоторые сигналы одновременно, то по идее должны данные пересекаться и запишется OR того, что пытались записать, ведь наши биты - это наличие/отсутствие электричества

Сдвиги:

  • SHLT (SHift LefT) — циклический сдвиг влево на 1 разряд. В младший разряд пишется 0.
  • SHLO (SHift Left Old C) — циклический сдвиг влево (в младший разряд пишется старое значение флага переноса C).

Да-да, в конце именно буква, а не ноль

  • SHRT (SHift RighT) — арифметический сдвиг вправо на 1 разряд (в старший разряд дублируется знаковый 15-й бит).
  • SHRF (SHift Right Flag C) — циклический сдвиг вправо (значение переноса C пишется в старший разряд).

Регистр состояния БЭВМ (PS)

Регистр состояния PS — это 9-разрядный регистр, объединяющий флаги результатов операций АЛУ и биты управления режимами работы БЭВМ.

Разметка битов регистра PS (от 0 до 8):

  • Биты 0-3 — NZVC
  • Бит 4 — 0: всегда равен нулю, используется УУ для безусловных переходов в микрокоде.
  • Бит 5 — EI (Enable Interrupts): Разрешение прерываний в процессоре.
  • Бит 6 — INT (Interrupt): Флаг запроса на прерывание со стороны внешних устройств.
  • Бит 7 — W (Work): Состояние тумблера «Работа/Останов».
  • Бит 8 — P (Program): Признак выполнения программы в автоматическом режиме.