Блок микропрограммного управления: схемы, временные диаграммы, код, устройство, првоерка

Пример HTML-страницы

Блок микропрограммного управленияБлок микропрограммного управления – этот блок входит в состав управляющего автомата с программируемой логикой (см. рис. 1.4.1) и служит для модификации 3–разрядного адреса. Адресный код AD2AD1AD0, считываемый из комбинационной схемы памяти, поступает на входы БМУ. Если в «ячейке» памяти находится микрокоманда, связанная с проверкой логического условия (Х1, Х2 или ХЗ), и его значение при выполнении микрокоманды равно 1, то адресный код на выходе БМУ увеличивается на 1 :AD2′ AD1′ AD0′ = AD2 AD1 AD0 + 1.

В других случаях код сохраняется:

AD2′ AD1′ AD0′ = AD2 AD1 AD0. К этому случаю отнесена и проверка условия ХЗ, поскольку при ХЗ = 1 операция умножения завершается. В схеме БМУ (рис. 1.4.5, а) можно выделить три адресных канала и узел управления. Каждый адресный канал содержит:

  • JK–триггер с асинхронными RS–входами для загрузки одного из разрядов (AD0, AD1, AD2) адреса. На J– и K– входы триггера поданы единичные сигналы, поэтому они работают в Т–режиме. Выходы первого (верхнего) и второго триггера подключены к тактовым Т–входам второго и третьего триггеров соответственно. В совокупности JK–триггеры образуют 3–разрядный счетчик с последовательным переносом;
  • два элемента 2И–НЕ, образующих с асинхронными RS–входами схему D–триггера. Логические элементы управляются синхроимпульсами СИ. При СИ = 1 элементы открыты, и разряды адреса AD2 AD1 AD0 заносятся в JK–триггер. При СИ = 0 JK–триггер переводится в счетный режим, так как ¯ S = ¯ R = 1 и J = К = 1, для чего в цепь запуска счетчика включен элемент задержки (D20);
  • D–триггер для временного хранения разряда адреса.

рис. 1.4.5

Узел управления состоит из логических элементов 2И–ИЛИ, 4И, 2И–НЕ. К узлу управления можно отнести инвертор и элементы задержки D20, обеспечива­ющие работу счетчика на JK–триггерах и загрузку D–триггеров с требуемой за­держкой. В процессе умножения, когда ХЗ = 0, осуществляется проверка логических ус­ловий Х1 или Х2. Узел управления  пропускает на тактовый вход Т синхроимпульс СИ, если выполняется одно из условий:

П . ПХ1 . X1 = 1 или П . ПХ2 . Х2= 1,

где П — сигнал, инициирующий проверку логических условий; ПХ1, ПХ2 — еди­ничные сигналы указывающие по какому условию происходит проверка; Х1, Х2 — сигналы, информирующие о выполнении (при единичном значении) или невыпол­нении (при нулевом значении) логических условий (поступают из операционного автомата).

При поступлении на вход Т синхроимпульса СИ содержимое счетчика, состав­ленного из JK–триггеров, увеличивается на 1, следовательно, происходит моди­фикация адреса. Принцип работы БМУ. При считывании каждой микрокоманды из схемы па­мяти на входы БМУ поступают:

  • ориентировочный адресный код AD2 AD1 AD0 (указан в поле адреса) сле­дующей микрокоманды, который загружается по асинхронным SR–входам в JK–триггеры счетчика;
  • сигналы П, ПХ1, ПХ2, ПХЗ (указаны в поле условий перехода), инициирующие проверку логических условий. В процессе умножения ПХЗ = 0, поэтому на один из входов логического элемента 4И поступает единичный сигнал, разре­шающий проверку условий Х1 и Х2.

Из операционного автомата в БМУ поступают текущие значения Х1, Х2 сигна­лов логических условий.

Если для следующей микрокоманды необходима проверка логических усло­вий, то П = 1 и логическое условие, по которому происходит проверка, ПХ1 = 1 (или ПХ2 = 1). В зависимости от текущего значение Х12) возможны два исхода проверки:

  • при X1 = 1 (Х2 = 1) с выхода логического элемента 4И на тактовый вход Т счетчика поступает синхроимпульс СИ и содержимое счетчика увеличивается на единицу. В этом случае с выходов БМУ в «ячейку памяти» записывается адрес AD2′ AD1′ ADO’ = AD2 AD1 ADO + 1;
  • при Х1 = 0 (Х2 = 0) логический элемент 4И не пропускает синхроимпульс СИ на тактовый вход Т счетчика и его содержимое останется неизменным AD2′ AD1′ AD0′ = AD2 AD1 AD0, т. е. указанный в микрокоманде адрес сохраняется.

Проверка работоспособности БМУ

Цель проверки — выявить условия, при которых происходит изменение поступившего в БМУ адресного кода. Для этого достаточно рассмотреть реакцию БМУ при проверке одного условия (на­пример, Х1) в двух режимах работы:

  • проверка логических условий не инициирована (П = 0). В этом случае при лю­бых комбинациях сигналов ПХ1 и Х1, поступающих на вход элемента 2И–ИЛИ должно выполняться равенство AD2 AD1 AD0 = AD2′ AD1′ AD0′ — адресный код сохраняется;
  • проверка инициирована по условию Х1 (П = 1, ПХ1= 1). В этом режиме при Х1 =0 адресный код должен сохраняться (AD2 AD1 AD0 = AD2′ AD1′ AD0′), а при Х1 = 1 — изменяться (AD2′ AD1′ AD0′ = AD2 AD1 AD0 + 1).

Условия проверки:

  • на адресные входы БМУ подается код AD2 AD1 ADO = 101;
  • логическое условие Х3 = 0, так как с появлением сигнала операция умножения завершается;
  • проверяется только логическое условие Х1, поэтому на выходы нижней схемы И логического элемента 2И–ИЛИ поданы нулевые сигналы. Для проверки работы БМУ использовались следующие генераторы (рис. 1.4.5, а);
  • генератор D01, формирующий на первом такте пусковой импульс ПИ = 1 для сброса D–триггеров на первом такте;
  • генератор 02, с выхода которого снимаются синхроимпульсы СИ для загрузки JK– и D–триггеров адресным кодом и активизации работы счетчика;
  • генераторы D03, D04 сигналов П, ПХ1, инициирующих проверку логического условия X1;
  • генератор D05, имитирующий текущее значение логического условия X1.

Результаты проверки приведены в виде временных диаграмм на рис. 1.4.6. В течение первых четырех периодов синхроимпульсов (такты 1–8) проверялась работа БМУ при П = 0, а в течение четырех последующих (такты 9–16) — при П = 1 для четырех возможных комбинаций сигналов ПХ1 и Х1.

рис. 1.4.6

После первого синхроимпульса на выходе БМУ появляется адресный код А D2′ А D1′ А D0′ = А D2 А D1 А D0 =101, который сохраняется до 17–го такта. На 16–м такте при П = ПХ1 = Х1 = 1 на вход счетчика поступает импульс Т, по срезу кото­рого (такт 17) происходит с некоторой задержкой увеличение адреса на единицу. На выходе БМУ формируется адресный код А D2′ А D1 А D0′ = 110. При сохранении сигналов П = ПХ1 = Х1 = 1 адрес остается неизменным (такты 18–20), поскольку на вход по–прежнему подается А D2 А D1 А D0 = 101.

На рис. 1.4.5, б приведена схема БМУ в виде макроэлемента.

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

рис. 1.4.7

Принцип функционирования УАПЛ. Состояние управляющего автомата из­меняется под действием пускового импульса ПИ, сигналов Х1, Х2, Х3 логических условий и синхроимпульсов СИ. Для пояснения принципа работы УАПЛ восполь­зуемся табл. 1.4.5, в которой приведено содержимое ячеек памяти, или коды микрокоманды микропрограммы (табл. 1.4.3), а также временными диаграммами (рис. 1.4.8), отражающими процессы при умножении чисел –5 и +7.

рис 1.4.8

С помощью пускового импульса ПИ происходит сброс D–триггеров в БМУ, в результате чего формируется адресный код А2′ А1′ А0′ = 000, и с выходов комби­национной схемы памяти микропрограмм (рис. 1.4.4, а) снимается 11–разрядный код первой микрокоманды микропрограммы (МК1). В поле адреса этой микро­команды (табл. 1.4.5) указан адрес ячейки А2 А1 А0 = 111, а в поле управляющих сигналов

Y1 = 1. Поэтому после первого СИ в операционном автомате выполняет­ся микрокоманда МК1 начальной установки регистров, триггера и счетчика, а из памяти считывается содержимое ячейки 111 (МК8).

табл 1.4.5

В поле адреса ячейки 111 указан адрес ячейки 001, а в поле условий перехода П = 1, ПХ= 1. Поэтому вторым СИ производится проверка логического условия Х:

  • при Х2 = 0 адрес ячейки сохраняется, т.е. с выхода БМУ снимается код А2′ А1′ А0′ = 001. Из ячейки 001 считывается микрокоманда МК2 микро­программы, в адресном поле которой указан адрес ячейки А2 А1 А0 = 100, а в поле условий перехода значения П = 1, ПХ1 = 1, инициирующие проверку логического условия Х1 (младшего разряда регистра RG2);
  • при Х2 = 1 адрес ячейки А2 А1 А0 = 001 увеличивается на 1, а из ячейки с ад­ресом А2 А1 А0 = 010 считывается микрокоманда МКЗ микропрограммы, в адресном поле которой указан адрес ячейки А2 А1 А0 – 100, а в поле условий перехода П = 1, ПХ1 = 1, инициирующие, как и в предыдущем случае, провер­ку логического условия Х1.

Поскольку после начальной установки операционного автомата значение млад­шего разряда регистра RG2 равно P0 = Х2 = 1, а значение Х1 = 0 следующими микрокомандами являются МКЗ и МК4 (см. рис. 1.4.2).

При Х2 = 0 на срезе третьего СИ выполняется микрокоманда микропрограмма проверки логического условия Х1 из ячейки с адресом 100:

  • при X1 = 0 адрес ячейки сохраняется (А2′ А1′ А0′ = 100). В этом случае на срезе четвертого импульса выполняется микрокоманда Y3 сдвига содержимого RG3, RG2. Так как в поле адреса ячейки 100 указан адресный код 001, после завершения микрокоманды Y3 начинается новый цикл выполнения микропрограммы;
  • при X1 = 1 исходный адрес А2 А1 А0 = 100 увеличивается на 1 и из ячейки с адресом 101 считывается микрокоманда микропрограммы. В этом случае на срезе четвертого импульса выполняется микрокоманда Y2 арифметического сложения содержимого регистров RG1 и RG3 с помещением результата в RG3. В поле адреса ячейки 101 указан адресный код 100, после завершения микрокоманды Y2 выполняется микрокоманда Y3 сдвига и лишь тогда начинается новый цикл выполнения микропрограммы.

Проверка работоспособности УАПЛ. Для проверки работы УАПЛ используются генераторы D01÷ D05. Генератор D01 вырабатывает пусковой импульс ПИ = 1 на первом такте; генератор D02 — синхроимпульсы СИ; генераторы D03, D04, D05 входные сигналы X1, Х2, ХЗ логических условий. При моделировании сигналы X1, Х2, ХЗ выбраны согласно алгоритму умножения чисел (–5)10 и +710. Из временных диаграмм (рис. 1.4.8) следует, что на выходе УАПЛ формируется последовательность микрокоманд, которая дает правильный результат перемножения операндов А = 1011 и В = 0111 при совместном использовании УАПЛ и операционного автомата в процессорном устройстве (см. рис. 1.5.4).


Понравилась статья? Поделиться с друзьями:
Все об энергетике, электротехнике и электронике
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: