Устройство микропрограммного управления при к-значном кодировании
Иллюстрации
Показать всеРеферат
jii) 474806
ОПИСАНЙ Е
ИЗОБРЕТЕНИЯ
Союз Советских
Социалистических
Республик
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (61) Зависимое от авт. свидетельства (22) Заявлено 05.03.72 (21) 1756241/18-24 с присоединением заявки № (32) Приоритет
Опубликовано 25.06.75. Бюллетень № 23
Дата опубликования описания 28.10.75 (51) М. Кл. G 06f 9/00
Государственный комитет
Совета Министров СССР (53) УДК 681.325(088.8) по делам изобретений и открытий (72) Авторы изобретения
1О. Л, Иваськив, О. А. Старовойтенко и Е. П. Башлаков
Институт кибернетики АН Украинской ССР (71) Заявитель (54) УСТРОЙСТВО МИКРОПРОГРАММНОГО УПРАВЛЕНИЯ
ПРИ К-ЗНАЧНОМ КОДИРОВАНИИ
Изобретение относится к вычислительной технике и может быть использовано при построении цифровых автомато в (в частности, цифровых вычислительных машин), представление информации Й-значными кодами, в которых сочетается с применением многоустойчивых элементов и, как следствие того, недвоичного структурного алфавита.
Известны устройства микропрограммного управления, содержащие счетчик команд, первый вход которого соединен через регистр команд с первым входом дешифратора микрокоманд, второй вход последнего соединен через регистр микроопераций с первым выходом матрицы микроопераций, первый вход которой соединен с дешифратором микрокоманд, второй выход соединен с вторым входом счетчика команд, а третий выход и второй вход соединены соответственно с входом и выходом арифметического блока.
Однако эти устройства имеют сложную структуру, вызванную необходимостью использовать дополнительное устройство преобразования двоичных кодов чисел, хранимых в ПЗУ при считывании в й-значные, а также увеличение аппаратурных затрат при технической реализации устройства. Все это приводит к снижению надежности, уменьшению быстродействия и ухудшению других важных характеристик устройства в целом.
Цель изобретения — упрощение устройства микропрограммного управления. Достигает ся это тем, что в устройство введен блок фор мирования последовательности констант, подключенный своими входами соответственно к регистру команд и матрице мпкроопераций, а выходом — к арифметическому блоку.
На чертеже приведена блок-схема предлагаемого устройства переработки дискретной
1О информации при k-значном кодировании.
Она содержит блок управления 1, реализующий функции управляющего автомата, операционный блок 2, реализующий функцию операционного автомата, канал 3, по которо15 му код адреса очередной команды передается в регистр адреса ОЗУ, счетчик команд
4, регистр команд 5, дешифратор 6, регистр микроопераций 7, матрицу 8, арифметическое устройство (АУ) 9 операционного блока 2;
2о устройство 10 формирования последовательности констант, каналы связи 11 — 23.
Блоки, входящие в устройство, имеют следующее назначение.
Счетчик команд 4 предназначен для запоминания адреса очередной команды (применяется прп естественном порядке следования команд).
Регистр команд 5 предназначен для хранения кода текущей команды, По каналам
11 — 13 регистр команд подключен к счет и474806
3 ку команд 4, дешифратору 6 и блоку 10 формирования последовательности констант соответственно. По каналу 11 происходит передача кода адреса очередной команды на счетчик команд 4 при выполнении операций переадресации и условного перехода по точному совпадению слов. По каналу 22 происходит обмен командами с ОЗУ машины. При этом могут выполняться следующие микрооперации: передача кода из регистра числа
ОЗУ на регистр команд; передача первого адреса из регистра адреса, входящего в состав регистра команд, в регистр адреса ОЗУ и т. д.
Дешифратор 6 — специальный микропрогpBMMHbIH дешифратор, управляется выходными сигналами триггеров регистра операций, входящего в состав регистра команд 5, по каналу 12 и выходными сигналами регистра микроопераций 7 по каналу 15. Назначение дешифратора 6 заключается в выборке соответствующей горизонтальной шины в матрице 8 по каналу 14, При этом выполняется соответствующая микрокоманда (набор микроопераций).
Регистр микроопераций 7 предназначен для запоминания кода, выполняемого в каждый данный момент приказа микропрограммы (микрокоманды), т. е. кода, обозначающего совокупность выполняемых в данный момент микроопераций. Установка на регистре кода соответствующей микроком анды осуществляется сигналом, поступающим из матрицы 8 по каналу 17.
Матрица 8 обычно состоит из двух матриц, назначение которых состоит в выработке полного набора микроопераций, обеспечивающих работу различных устройств машины.
По каналу 18 поступают микрооперации, управляющие работой арифметического устройства 9. По каналу 16 поступает сигнал микроопераций, увеличивающий состояние счетчика команд 4 на единицу (при естественном порядке следования команд). По каналу
20 поступает сигнал микрооперации, осуществляющий управление блоком 10 формирования последовательности констант.
Арифметический блок 9 предназначен для выполнения арифметических операций над кодами операндов, которые поступают в
АУ по каналу 23 из ОЗУ и по каналу 21 из блока формирования последовательности констант. По каналу 19 сигналы обратной связи поступают в матрицу 8.
Блок 10 формирования последовательности констант представляет собой автомат с памятью некоторого специального вида, выполняющий функции не хранения, а формирования постоянной, не изменяемой в процессе вычисления определенного класса задач информации. Формирование этой информации осуществляется определенными «порциями», зависящими от способа построения блока формирования констант. По своему функциональному назначению он выполняет
25 зо
4 функции постоянного запоминающего устройства, однако этот блок несет в себе отличительные признаки, определяемые способом его построения. Эти признаки касаются как схемных отличий и принципов работы, так и принципов использования его в устройстве микропрограммного управления в целом.
B основу построения блока формирования последовательности констант автомата положен следующий принцип.
Фиксируется определенная последовательность констант. При этом константа с номером «j» всегда следует за константой с номером «j+ 1». При последовательном и поразрядном формировании констант учитывается как число констант и их разрядность, так и разбиение каждой константы на отдельные части (порции), определяемые в свою очередь выбранным способом кодирования.
В зависимости от числа констант, их разрядности и разбиения каждой константы на части определяется число состояний автомата, которое в наиболее общем случае равно сумме разрядов всех констант. Переход автомата из состояния с номером U; в состояние U; I определяется переходом от одного разряда константы (группы разрядов) к другому (к другой группе разрядов) и от константы к константе.
Таким образом, каждому состоянию автомата ставится во взаимнооднозначное соответствие определенный разряд (группа разрядов) константы и переключение автомата из одного состояния в другое (соседнее) обеспечивает последовательное поразрядное (или группы разрядов) формирование констант.
Работа предлагаемого устройства микропрограммного управления состоит в следующем.
Пусть, например, необходимо сложить число, хранящееся в ОЗУ машины, с определенной константой, которая получается на выходе блока 10 формирования последовательности констант. Адрес этой команды сформировался на счетчике команд в результате выполнения какой-либо предыдущей команды.
По каналу 3 код адреса требуемой команды со счетчика команд 4 передается в регистр адреса ОЗУ. Данная команда считывается из
ОЗУ и по каналу 22 поступает на регистр команд 5. При использовании, например, трехадресной системы команд рабочий цикл устройства микропрограммного управления состоит в выполнении следующей последовательности команд. По адресу А> считывается код операнда из ОЗУ и по каналу 23 передается на требуемый регистр АУ 9. По адресу А> хранится код некоторого начального состояния блока формирования последовательности констант (далее — автомата), передача которого по каналу 13 на автомат приведет к установлению автомата в определенное состояние. В результате этого на выходах автомата сформируется соответству474806
1 ющая информация, представляющая собой некоторую часть, зависящую от способа кодирования константы, В некотором частном случае это может быть всего один разряд формируемой константы. Затем по каналу 21 эта порция (часть константы) передается на соответствующий регистр арифметического блока 9. Далее, сигнал обратной связи с арифметического блока 9 по каналу
19 поступает на матрицу 8. При этом на матрице 8 возбуждаются соответствую|цие шины, которые приводят к изменению состояний триг! ероз ре, истра 7 ||икроопераций.
В результате этого на регистре микроопераций устанозится код следующей микрокоманды, Зта ъ|||кро! оманда затем соответствующим образом интерпретируется на матрице
8 в виде очередной микрооперацип, код которой по шине 20 установит автомат в новое состояние. В результате этого на выходе автомата сформируется очередная часть (порция) требуемой константы, которая затем по каналу 21 передается на арифметический блок 9. Далее, снова сигнал обратной связи по каналу 19 поступает с арифметического блока 9 на матрицу 8 и т. д. После передачи с регистра команд 5 на автомат 10 кода некоторого начального состояния автомата с помощью автомата 10, арифметического блока 9, матрицы 8, регистра микроопераций 7 и дешифратора 6 в течение определенного количества циклов (число которых зависит от выбранного способа кодирования, а так>ке разбиения константы на определенные «порции») формируется требуемая константа на соответствующем регистре арифметического блока 9. После окончания формирования константы на регистре ЛУ код операции, хранящийся на регистре операций регистра команд 5, интерпретируется блоком управления 1 как последовательность соответствующих микроопераций, выполняемых в арифметическом блоке 9. По адресу Аэ результат операции передается в соответству|и ющую ячейку ОЗУ. Одновременно содержимое счетчи! а команд увеличивается HQ единицу (в результате выполнения соответствующей микрооперацип) и на нем будет зафиксирован адрес очередной команды.
Предмет изобретения
Устройство микропрограммного управления при /г-значном кодировании, содержащее счетчик команд, первьш выход которого соединен через регистр команд с первым входом дешпфратора микрокоманд, второй вход последнего соединен через регистр микрооперацнй с первым выходом матрицы микрооперацнй, первый вход которой соединен с выходом дешифратора микрокоманд, второй выход соединен с вторым входом счетчика команд, а третий выход и второй вход соединены соответственно с входом и выходом арифметического блока, о тл и ч а ющеес я тем, что, с целью упрощения, оно содержит блок формирования последовательности констант, подключенный своими входами соответстве"í.î :к регистру команд и матрице микроопераций, а выходом — к арифметическому блоку.