Микропрограммное устройство управления

Номер патента: 1200288

Авторы: Андрушкевич, Иманов, Тодуа, Шемягин

ZIP архив

Текст

СОЮЗ СОВЕТСНИХСООИАЛИСТИЧЕСНИХРЕСПУБЛИН 012 288 А а 1 Ф О 06 Г НОМИТЕТ СССРНИЙ И ОТНРЫТИИ ОСУДАРСТВЕННЫО ДЕЛАМ ИЗОБРЕ ПИСАНИ НИЯ Б 6. АВТОРСКОМУ СВИДЕТЕПЬСТВ(7 1) Тбилисский научно-исследовательский институт приборостроенияи средств автоматизации Научнопроизводственного объединения "ЭЛВА(56) Хассон С, Микропрограммноеуправление. - М.: Мир, 1974, рис. 8 тивный матричный процес - Зарубежная радиоэлектр Ассоциасор ВТАВАВ оф ника, 1977.Авторское свидетельство СССР В 746517, кл. С,06 Р 9/22, 1978. (54)(57) 1. МИКРОПРОГРАММНОЕ УСТРОЙ-. СТВО УПРАВЛЕНИЯ, содержащее блок формирования адреса, память микрокоманд, выход микрокоманды которой подключен к информационному входу регистра микрокоманд, о т л и - ч а ю щ е е с я тем, что, с целью повышения быстродействия, оно содержит блок формирования управляющего слова, блок задания числа циклов, регистр управляющего слова, регистр возврата и регистр команд выход кода операции которого подключен к первому входу блока формирования адреса, а адресный выход - к первому входу блока:формирования управляющего слова, второй и третий входы которого подключены соответственно к выходу первого управляющего поля регистра микрокоманд и первому выходу блока задания числа циклов, первый и второй входы которого подключены соответственнок первому синхровходу устройстваи выходу второго управляющего полярегистра микрокоманд, выходытретьего управляющего поля и адреса возврата которого подключены соответственно к второму входу блока формирования адреса и информационному входурегистра возврата, синхровход которого соединен с вторым синхровходом устройства, выход регистра,возврата подключен к третьему входублока формирования адреса, четвер"тый и пятый входы и выход которогосоединены соответственно с адреснымвыходом памяти микрокоманд, вторымвыходом блока задания числа циклови с адресным входом памяти микро.команд, третий синхровход устройства соединен с шестык входом блокаформирования адреса и синхровходомрегистра микрокоманд, выход признакаокончания микропрограммы которогоподключен к первому управляющемувыходу устройства, вход командыустройства соединен с входом регистра команды, первый синхровход устройства соединен с четвертым входомблока формирования управляющегослова, выход которого и выход операционного поля регистра микрокомандобъединены и подключены к информационному входу регистра управляющего слова, синхровход и выход которого соединены соответственно с четвертым синхровходом устройства ивторым управляющим выходом устройства, причем блок формирования управляющего слова содержит два коммутатора, дешифратор и четыре счетчика, информационные и синхровходыкоторых подключены соответственнок третьему и четвертому входам блока,входы задания режимов четырех счет-чиков подключены соответственно кпервой, второй, третьей и четвертойгруппам выходов дешифратора, входкоторого и управляющие входы первого и второго коммутаторов объедине 1 ны и подключены к второму входу блокаформирования управляющего слова,выходы четырех счетчиков подключенык соответствующим информационнымвходам второго коммутатора, первыйвход блока подключен к информационному входу первого коммутатора, выход которого объединен с выходомвторого коммутатора и подключен к .выходу блока формирования управляющего слова.2. Устройство по п. 1, о т л ич а ю щ е е с я тем, что блок задания числа циклов содержит дешифратор, два счетчика и сумматор, выходкоторого подключен к первому выхо-.ду блока и к информационным входампервого и второго счетчиков, выходыстарших разрядов которых объединеныи подключены к второму вьпсоду блока,а входы задания режимов - к первойи второй группам выходов дешифратора, вход которого и вход заданиярежимов сумматора подключены кпервому входу блока, входы первогои второго операндов сумматора соединены соответственно с информационными входами устройства,3. Устройство по п. 1, о т л ич а ю щ е е с я тем, что блокформирования адреса содержит трикоммутатора, два регистра адреса,триггер, три элемента ИЛИ, два элемента И и элемент НЕ, причем управляющие входы первого и второго коммутаторов объединены и подключенык второму. входу блока, первый и тре 1200288тий входы которого соответственноподключены кпервому и второму информационным входам первого коммутатора, третий и четвертый информационные входы первого коммутатора объетдинены и подключены к выходу второго коммутатора, выходы младших двухразрядов второго коммутатора подключены к первым входам первого ивторого элементов ИЛИ, выходы которых подключены к входам младших разрядов третьего входа первого коммутатора, младший разряд четвертоговхода первого коммутатора соединенс выходом третьего элемента ИЛИ,первый вход которого соединен с выходом младшего разряда второго коммутатора, выход первого коммутатораявляется выходом блока, третий коммутатор управляющим входом соединенс первым входом первого элемента Ии подключен к прямому выходу триггера, первый и второй информационные входы второго коммутатора подключен соответственно к выходампервого ивторого регистров адреса,информационные входы которых объединены и подключены к четвертомувходу блока, синхровходы регистровадреса подключены соответственнок выходам первого и второго элементов И, вторые входы которых соединены с входом элемента НЕ и подключены к шестому входу блока, выходэлемента НЕ соединен с входом триггера, инверсный выход которогоподключен к первому входу второгоэлемента И, вторые входы первого ивторого элементов ИЛИ соединеныс соответствующими информационнымивходами третьего коммутатора и подключены к пятому входу блока, выход третьего коммутатора соединенс вторым входом третьего элемента5 ЛИ.Изобретение относится к вычислительной технике и может быть использовано в ассоциативных процессорах,позволяющих осуществлять параллельнуюобработху больших массивов данных. 2Цель изобретения - повышение быстродействия.На фиг. 1 показана блок-схема предлагаемого микропрограммного устройства управления (ИУУ), на фиг. 2 -12002функциональная схема блока формирования управляющего слова на фиг. 3 - функциональная схема блока задания числа циклов, на фиг. 4 - функциональная схема блока адреса, на фиг. 5 - диаграмма синхросигналов ,МУУ.Микропрограммное устройство управления (фиг. 1) содержит блок 1 формирования адреса,. память 2 микроко О манд, регистр 3 микрокоманд, блок 4 формирования управляющего слова, блок 5 задания числа циклов, регистр 6 управляющего слова, регистр 7 возврата и регистр 8 команд, а так же вход 9 команды устройства, синхро входы 10-13 и управляющие входы 14 и 15.Блок 4 формирования управляющего слова содержит коммутаторы 16 и 17, 20 дешифратор 18 и счетчики 19-22. Блок 5 задания числа циклов содержит дешифратор 23, счетчики 24 и 25 и сумматор 26.Блок 1 формирования адреса содер жит коммутаторы 27-29, регистры 30 и 31 адреса, триггер 32, элементы ИЛИ 33-35, элементы И 36 и 37 и элемент НЕ 38.Устройство работает следующим 88 4фронту синхросигнала на синхровходе12 (фиг. 5). Кроме того, в выбраннойиз памяти 2 микрокоманде присутствуетадрес следующей микрокоманды, который подается на информационные вхо- фды регистров 30 и 31 блока 1 и записывается в один из них, в зависимости от состояния триггера 32. Еслитриггер 32 находится в единичномсостоянии, значит синхросигнал свхода 12 пройдет через элемент И 36и запись осуществится в регистр30 по переднему фронту импульса(Фиг, 5). По заднему фронту этогоимпульса, инвертированному на элементе НЕ 38 (синхросерия Ср, фиг. 5),происходит переброс триггера 32.Уровень логического "0", снимаемыйс прямого выхода триггера 32, запрещает прохождение следующего импульса через элемент И 36 и, соответственно, изменение содержимого регистра 30, а также разрешает прохождение адреса микрокоманды, находящегося в регистре 30, через коммутатор 28. Уровень логической "1", сни"маемый с инверсного выхода триггера32, разрешает прохождение на следующем такте импульса с синхровхода12 через элемент И 37, образом.Работа устройства начинается с приведения регистров 3, 6 и 8 в исходное состояние общим сигналом сбро са (не показан) АН. Затем команда, состоящая из двух частей, загружается в регистр 8 команд с входа 9. В первой части указан код той операции, которую надо выполнить в АП, Это может быть сложение, вычитание, поиск максимального (минимального) в массиве, перестановка слов в .массиве и т.д. Этот код операции через коммутатор 27 блока 1 подается в память 2 микрокоманд и выбирает в ней список микрокоманд, необходимых для выполнения данной команды, Во второй части команды в общем случае содержаться три адреса, соответствующие номерам зон в решающем поле АЙ, в которых находятся обрабатываемые массивы данных. Так, например, массив чисел 1-й зоны складывается , с массивом чисел третьей зоны, а массив-результат записывается вдесятую зону.На втором такте выбранная из памяти 2 микрокоманда записывается в регистр 3 микрокоманд по переднему В зависимости от кодовой комбинации, присутствующей на управляющем входе коммутатора 27, на выходеблока 1 появляется адрес, поступающии или с регистра 8 команд, илис регистра 7 возврата, или с коммутатора 28. В последнем случае возможно три варианта перехода к следующему адресу:40безусловный переход, осуществляемый по четвертому входу коммутатора27, при этом с коммутатора 29 снимается уровень логического "0", который разрешает прохождение через 45элемент ИЛИ 35 без изменения младшего разряда адреса с коммутатора 28;условный переход по младшему разряду, осуществляемый также по четвертому входу коммутатора 27. Поскольку в этом случае в младшем разряде адреса, поступрющего с коммутатора 28, находится логический"0", то на выход элемента ИЛИ 35появляется логический уровень, соот ветствующий признаку условного пере"хода, который коммутируется коммутатором 29 в зависимости от кодовойкомбинации на его управляющем входе120 5 10 15 20 25 30 Коммутатор 16 блока 4 в соответ-. ствии с кодовой комбинацией на его управляющем входе, коммутирует на выход адреса тех зон решающего поля АП, в которых находятся обрабатыва-, емые массивы данных. Коммутатор 17 блока 4 в соответствии с кодовой комбинацией на его управляющем входе коммутирует на выход адреса слайсов (столбцов) в обрабатываемых массивах данных, Эти адреса формируются в счетчиках 19-22, режимы работы которыхопределяются в соответствии с кодовыми комбинациями, поступающими на их управляющие входы с выходов дешифратора 18. Счетчики работают в следующих режимах: хранение, прибавление "1", вычитание " 1", обнуление и параллельная запись. Изменение содержимого счетчиков 19-22 происходит но синхросигналам, поступающим с входа 10 устройства, после выбора соответствующего режима. Сброс счетчиков 19-22 осуществляется в режиме параллельной записи числа .О. Информационные входы счетчиков 19-22 объединены и подключены к выходу сумматора 26 блока 5 циклов Благодаря этому можно вычислять первый адрес слайса в дбрабатываемом массиве (массивах) данных, напр мер адрес слайса порядка или мантиссы.Количество счетчиков обусловлено оптимальным алгоритмом обработки дан Число, которое записывается втот или иной счетчик, всегда на единицу меньше требуемого количествациклов. При этом в старший разрядзаписывается ноль. После прохожденияочередного цикла из счетчика вычитается единица. Поскольку цикле, какправило, участвует не менее двухмикрокоманд, то на первой микрокоманде производится уменьшение содержимого счетчика на единицу, а 45на второй - анализ содержимогостаршего разряда счетчика с условным переходом. Циклы повторяютсядо тех пор, пока со старшего разрядасчетчика при анализе условного перехода по нему считывается ноль. Как 50только содержимое счетчика обнуля ется, что не влечет выхода из цикла,а затем еще раз вычитается единица,в старшем разряде счетчика появляи 55.Таким образом происходит переход .по условию по содержимому младшегоразряда следующего адреса;условный переход по цвум младшим разрядам, осуществляемый потретьему входу коммутатора 27. Вэтом случае на выходах элементовИЛИ 33 и 34, происходит изменениесодержимого двух младших разрядовадреса, в зависимости от признаковусловного перехода, поступающих навторые входы элементов ИЛИ 33 и 34с пятого выхода блока 1,По адресу, считываемому с выходакоммутатора 27, в памяти 2 выбирается соответствующая микрокоманда,которая поступает на входы регистра3 микрокоманд и регистры 30 и 31адреса. Одновременно с формированиемадреса следующей микрокоманды и выборкой ее из памяти 2 в МУУ на 2-мтакте происхоДит формирование управляющего слова в блоке 4 и заданиечисла циклов в блоке 5 циклов. 0288 б ных, Так, например при выполнении умножения один из счетчиков формирует слайсы множимого, другой - , слайсы множителя, третий - слайсы произведения, Четвертый счетчик используется для специальных работ, таких как работа со скаляром и т,д, Увеличение числа счетчиков приводит к излишним аппаратурным затратам, уменьшение делает алгоритмы обработки громоздкими, а в некоторых случаях даже невыполнимыми.Кроме адресов зон и слайсов, к регистру 6 управляющего слова подводятся кодовые комбинации, управляющие работой обрабатывающих элементов в решающем поле АП, Эти,кодовые комбинации поступают с выхода операционного поля регистра 3 микроко" манд.На втором такте работы МУУ можно также произвести запись вычисленного в сумматоре 26 числа циклов в счетчики 24 и 25 циклов, работа которых осуществляется в соответствии с . управляющими сигналами, поступающими с выходов дешифратора 23. Счетчики 24 и 25 работают в следующих11 Н режимах: хранение, вычитание 1 параллельная запись. Изменение со" держимого счетчиков 24 и 25 происходит по синхросигналам, поступающим с входа 10 устройства ется единица (признак переполнения),по которой н происходит выход изцикла. Количество счетчиков обусловлено тем, что в алгоритмах обработки1200288 8кого решения обусловлено тем, чтосовременные интегральные схемы, накоторых построены ИУУ, не нормируются по минимальному времени пере ключения. И в случае наличия одногорегистра адреса (допустим регистра30) не исключена возможность записив регистры 3 и 30 по переднему фронту импульса информации, хранящейся10 в памяти 2, по вновь записанному адресу в регистр 30. 7часто встречается протекание одного цикла в другом.На 3-м такте по переднему фронту импульса на синхровходе 13 управляю .щее слово записывается в регистр б и.подается в решающее поле АП. Кром того, в регистр 3 записывается новая микрокоманда, а в один из. регистров 30 и 31 - адрес следующей микрокоманды.Наличие регистра 7 в ИУУ позволяет запоминать в нем адрес возврата в случае перехода на подпрограмму. Запись адреса в регистр 7 происходит по переднему фронту импульса, поступающему с синхровхода 11.Последней микрокомандой в микро-. программе является микрокоманда Е, по которой с выхода признака окончания микропрограммы регистра 3 в генератор импульсов по шине 14 направляется сигнал о запрете синхро-. сигналов по синхровходам 10-13. Одновременно микрокоманда Е является первой микрокомандой в каждой микропрограмме, и по ней происходит предварительная настройка решающего поля АП.Наличие двух регистров 30 и 31 и соответствующейсхемы переключения на триггере 32 позволяет в предлагаемом устройстве проводить запись в регистры 3, 30 или 31 считываемой иэ памяти 2 достоверной информации по одному и тому же импульсу. Достоверность записываемой информации обеспечивается тем, что адрес, по которому она расположена в памяти 2 и который записан в одном из регистров, не изменяется в течение времени записи этой информации в регистры 3, 30 или 31, Принятие таВ предлагаемом устройстве конвейер обеспечивается введением рец гистра 6 управляющего слова, блока4 формирования управляющего слова,двух регистров 30 и 31 адреса сосхемой переключения на триггере 32и блока 5 .циклов Причем введение 2 о блока 4 приводит к значительномусокращению объема памяти 2 микро"команд ввиду того, что адреса обращения к решающему полю АП хранятсяне в памяти 2, а формируются в блоке 25 4. Это позволяет сделать соизмеримыми такты решающего поля АП и ИУУ,Кроме того, обращение к очереднымразрядным слайсам в решающем полепроисходит по изменяемому содержи 3 п мому счетчиков слайсов, т,е. на зтоне надо тратить в цикле лишнеймикрокоманды. Таким образом, за счетконвейерной органиэации предлагаемогоустройства в АП в течение одноготакта происходит обработка слайса(слайсов) данных в решающем поле,формирование следующего управляющего слова, формирование адреса следующей микрокоманды и выборка понему из памяти 2 соответствующеймикрокоманды, работа счетчиков циклов.1200288 Фиг Составитель А.ИманоТехред М.Пароцай Редактор В.Петраш орректор Л,П аказ 7868 5 и д. 4/5 ская на илиал ППП "Патент", г, Ужгород, Ул. Проект Тираж 709Государственноглам изобретений5, Москва, ЖВНИИПИпо113 Подпомитета ССРоткрытиИ

Смотреть

Заявка

3697007, 15.12.1983

ТБИЛИССКИЙ НАУЧНО-ИССЛЕДОВАТЕЛЬСКИЙ ИНСТИТУТ ПРИБОРОСТРОЕНИЯ И СРЕДСТВ АВТОМАТИЗАЦИИ НАУЧНО ПРОИЗВОДСТВЕННОГО ОБЪЕДИНЕНИЯ "ЭЛВА"

ТОДУА ДЖОНДО АЛЬПЕЗОВИЧ, АНДРУШКЕВИЧ ВЛАДИМИР БОРИСОВИЧ, ИМАНОВ АЛЕКСАНДР КУЛУЕВИЧ, ШЕМЯГИН НИКОЛАЙ АЛЕКСАНДРОВИЧ

МПК / Метки

МПК: G06F 9/22

Метки: микропрограммное

Опубликовано: 23.12.1985

Код ссылки

<a href="https://patents.su/7-1200288-mikroprogrammnoe-ustrojjstvo-upravleniya.html" target="_blank" rel="follow" title="База патентов СССР">Микропрограммное устройство управления</a>

Похожие патенты