question-20

Вопрос 20

Микропрограммный уровень БЭВМ. Структура МПУ. Форматы микрокоманд

К сожалению, вопрос очень чётко поставлен и нам ооочень понятно, что от нас тут потребуют. А потребуют немало...

Структура микропрограммного устройства управления (МПУ)

Микропрограммное устройство управления БЭВМ работает как встроенный в процессор мини-процессор, который интерпретирует машинные команды путём их потактового разбиения на простейшие действия (микрооперации).

Схема МПУ:

mcu_structure.png

  • Память микрокоманд (ПМК): 256 ячеек, в которых хранится управляющий микрокод БЭВМ.
  • Счётчик микрокоманд (СчМК / MP): Указывает на адрес текущей исполняемой микрокоманды в ПМК.
  • Регистр микрокоманд (РМК / MR): 16-разрядный регистр, в который загружается текущая исполняемая микрокоманда из ПМК для управления вентилями процессора.

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

БЭВМ использует горизонтальный формат микрокоманд разрядностью 40 бит (от 0 до 39). Тип микрокоманды определяется старшим битом (Код Операции).

Легче всего запомнить будет по кол-ву бит на каждый блок. Так Вы всегда сможете узнать, сколько бит Вы забыли, т.к. сумма всегда равна 40

  • Операционная микрокоманда (ОМК):

    • Старший бит равен 0.
    • 1 бит HALT (приказ останова тактового генератора).
    • 2 бита резерва
    • 2 бита IO (сигналы ввода-вывода).
    • 2 бита MEM (сигналы чтения/записи ОЗУ).
    • 8 бит REG WR (то, что нужно записать).
    • 12 бит COMMUTATOR (управление сдвигами и передачей байтов).
    • 4 бита ALU (выбор вентилей АЛУ).
    • 8 бит REG RD (выбор регистра для чтения).
  • Управляющая микрокоманда (УМК):

    • Старший бит 39 всегда равен 1.
    • 6 бит резерва.
    • 1 бит COMP (однобитовое поле сравнения).
    • 8 бит ADDR (8-разрядный адрес перехода в ПМК, если условие выполнено).
    • 8 бит BIT (поле выбора проверяемого бита с коммутатора).
    • 4 бита COMM (сигналы передачи коммутатора).
    • 4 бита ALU (выбор вентилей АЛУ).
    • 8 бит REG RD (выбор регистра для чтения).

micro_formats.png

Ссылка на оригинал


question-36

Вопрос 36

Синхронные последовательные интерфейсы. Контроллеры последовательной передачи и приема

Синхронные последовательные интерфейсы

При последовательной передаче биты слова передаются друг за другом по одному информационному проводу.

В синхронном интерфейсе для тактирования используется дополнительная линия связи — «Синхроимпульсы». По ней передатчик отправляет тактовые импульсы, которые чётко указывают приёмнику моменты, когда нужно считывать очередной бит с линии данных.

  • Плюсы: Высокая помехозащищенность, большая дальность передачи, экономия проводов по сравнению с параллельным интерфейсом. Элементарная логика приёмника (не нужно угадывать тайминги).
  • Минусы: Наличие лишнего провода для синхроимпульсов, ну и, разумеется, гораздо ниже скорость относительно параллельного интерфейса (в X раз медленнее, где X - кол-во разрядов в слове передачи).

Контроллер последовательной передачи (Вывод)

Аппаратная реализация регистров: D- и RS-триггеры

Во всех последовательных контроллерах буферные регистры A1 и Сдвиговые регистры строятся на базе D-триггеров. Они запоминают информацию строго в моменты поступления синхроимпульсов на вход C. А регистр состояния A2 — это RS-триггер, меняющий состояние по асинхронным сигналам Set и Reset. Подробнее: RS- и D-Триггеры.

Переводит данные из параллельного формата (от процессора) в последовательный (в линию связи).

Алгоритм работы:

  1. Процессор записывает передаваемый байт в буферный регистр А1. Регистр состояния А2 устанавливается в 1 (контроллер занят).
  2. Данные параллельно (целиком) перегружаются из буфера А1 в Сдвиговый регистр.
  3. Запускается тактовый генератор (ТГ). По каждому его такту Сдвиговый регистр выталкивает (сдвигает) один бит в линию «Данные», а ТГ отправляет импульс в линию «Синхроимпульсы».
  4. Специальный счётчик считает переданные биты. Как только передано 8 бит (целый байт), регистр А2 сбрасывается в 0, сигнализируя процессору о готовности к передаче следующего байта.

sync-dev-give.png

Рис. 1: Контроллер передачи синхронного последовательного интерфейса

Счётчик на картинке — это как раз тот паравозик из 3-х квадратиков. Для хранения числа битов, которое от 0 до 7, понадобится в 2-СС как раз 3 бита.

Контроллер последовательного приема (Ввод)

Собирает последовательные биты с линии связи обратно в параллельный байт.

Алгоритм работы:

  1. От внешнего устройства начинают поступать биты по линии «Данные» и тактовые импульсы по линии «Синхроимпульсы».
  2. По каждому пришедшему синхроимпульсу Сдвиговый регистр втягивает в себя очередной бит с линии данных.
  3. Счётчик импульсов отсчитывает 8 тактов. Как только принят полный байт, он параллельно перегружается из сдвигового регистра в буферный регистр А1.
  4. Регистр состояния А2 устанавливается в 1. Процессор замечает это, считывает готовый байт из А1 и сбрасывает А2 в 0.

sync-dev-get.png

Рис. 2: Контроллер приема синхронного последовательного интерфейса

Ссылка на оригинал