Микропрограммное устройство управления — SU 561964 (original) (raw)

О П И С А Н И Е ) 561964ИЗОБРЕТЕНИЯ Союз Советских Сощивдистических Респубпик(51) 51. Кл,- 6 06 Г 22) Заявлено 19,09,75 (21) 217325824 ппсм:5 и Л" ИСОСД 1 осударственный колитетСовета Министров СССРов делам изобретенийи открытий ПриорпСг 53) УДК 681.326(088 ублконано 15.06.77 10 ЛЛССНЬ Л Дата о уОНновН 5 ОпсНН 5 03,08.7 Авторыизобретения В, Егорычева, Б, Б. Автономов, А. А, П 1 ульгин, М. В. Рабин Р. И. Коханова и В. М, Черниговская(71) Заявител ОПРОГРАММНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ 54) 2 последов ия последнеи микрокоманд Изобретение относится к области вычислительной техники,и может быть использовано для микропрограммного управления центрального процессора вычислительной системы с совмещенным выполнением команд.Известно устройство управления 1, которое применяется в процессоре модели 85 вычислительной системы 1 ВМ 360. Оно содержит счетчик команд, дешифратор команд, блоки вызова команд, блок выполнения. Устройство управляет тремя уровнями выполнения команд в,процессоре, причем только на Одном уровне производится микропрограмю 1- ное управление, два же других уровня управляются аппаратно.Аппаратное управление приводит к усложнению схемно-логических решений и увеличению оборудования, что является недостатком этого устройства управления.Наиболее близким по технической сущности к данному изобретению является усгройство, содержащее группы элементов И, ИЛИ, НЕ, блоки основной памяти микропрограмм и дополнительной памяти микропрограмм 2.Из блоков основной и дополнительной памяти микропрограмм через элементы И, ИЛИ микрокоманда выбирается на общий регистр микрокоманд. Увеличение производительности достигается путем совмещения выполнетельности микрокоманд, необходимых длявыполнения системной команды, с обращениемк первой микрокоманде последовательностиследующей системно 1 коканды. Все иНкрокоманды, кроме первой, необходимые для выполнения систсмной командъ) Выоираются изолока Осноной памяти миропрограмм ПО адресу, находящею ся в предыдущей микрокоманде. 11 ервая микрокоманда выбираетсяО из блока Дополнитслъной памяти микротрограм. В качестве 2 дрес 2 мик 1 окоманды используется код операции системной команды.Таким образом, соьмещенная работа двухблоков памяти производится только лри переходе от обработки одной системной команды к началу обработки следующей.Недостатком такого устроиства является то,что оно обеспечивает только двухуровневоесовмещение выполнения команд с мпнимальпым временным совмещенпсм. Это пе позволяет достигнуть высокой скорости обраооткикох 1 анд, требусмоп в оольших вычпслптельных системах,Целью изобретения является уменьшениеоборудования и времени обработки команд.Это достигается тем, что предлагаемое устройство содержит первьй и второй регистрыадреса, регистра кода операции первойкоманды и второй команды, регистры основ 30 ной микрокоманды и дополнительной микрокоманды, зел модификации адрес 1, упрвл 51- ющий вход которого подключен к управляющему входу устройства, выходы блоков основной и дополнительной памяти микропрограмм подключены соответственно ко входам регистра основной микрокоманды и регистра дополнительной микрокомапды, выходы трех групп элементов И через последовательно соединенные первую группу элементов ИЛИ и первый регистр адреса соединены со входом блока основной памяти микропрограмм, первые входы первой группы элементов И соединены с выходом регистра кода операции первой команды, вторые входы -- с первым выходом регистра дополнительпоп мпкрокоманды, первые входы второй группы элсчСпОв И соединены с выходом регистра кода операции второй команды, вторые входы - со вторым выходом регистра дополнительной микрокоманды, первые входы третьей группы элементов И соединены с первым выходом регистра основной микрокоманды, а вторые и третьи входы через первую и вторую группы элементов НЕ подключены соответственно к первому и второму выходам регистра дополнительной микрокоманды, выходы четвертой и пятой групп элементов И через последовательно соединенные вторую группу элементов ИЛИ и второй регистр адреса соединены со входом блока дополнительной памяти микропрограмм, первые входы четвертой группы элементов И соединены со вторым выходов регистра основной микрокоманды, вторые входы - с третьим выходом регистра дополнительной микрокоманды, первые входы пятой группы элементов И подключены через узел модификации адреса к четвертому выходу регистра дополнительной микрокоманды, вторые входы через третью группу элементов 1-Е соединены с третьим выходом регистра дополнительной микрокоманды.На черте 1 ке показана блок-схема предлагаемого устройства.Устройство содержит блок 1 основной памяти микропрограмм, регистр 2 основной микрокоманды; блок 3 дополнительной памяти микропрограмм, регистр 4 дополнительной микрокоманды, регистры 5, б адреса, поле констант 7 5 И поле базового адреса 8 основной микрокоманды, поле тактов 9 и поле базового адреса 10 дополнительной микрокоманды, узел 11 модификации адреса, входы 12 устройства, группы элементов И 13, 14, 15, группы элементов НЕ 1 б, 17, 18, группы элементов И 19, 20, группы элементов ИЛИ 21, 22, регистр 23 кода операции первой команды и регистр 24 кода операции второй команды.Устройство обеспечивает обработку системы команд типа принятых в вычислительной системе ЕС ЭВМ.Описание работы устройства удобно производить на примере выполнения команд формата РХ типа сложения с фиксированной запятой, как наиболее широко используемых, Все остальные команды по этапам обработки 5 1 О 15 20 25 30 35 40 45 50 55 60 м 01 й О свестп к команда м этого типа путем удлинения соответствующих этапов за счет включения дополнительных машинных циклов плп исключения некоторых этапов.Рассмотрим все этапы обработки, которые проходит эта команда в процессоре. Выполнение ее занимает шесть циклов работы процессора. Эти циклы называют тактаии обработки команды и обозначают буквой Т с соответствующим номером:Т 1 - такт распаковки команды, т, е. выборки команды из буфера команд и чтения модификаторов адреса из местной памяти;Т 2 - я;т модификации адреса;ТЗ такт запроса за операндом в оперативпуо (буфернуО) память;Т 4 - такт выборки операндов из месной пли оперативной памяти;Т 5 - такт выполнения действий над операндами;Тб - такт записи результата в местную па- Ч 51 ТЬ,Таким образом, для управления выполнением одной команды из блока памяти микропрограмм нужно выбрать последовательность (микропрограмму) из шести микрокоманд, Для вьшолнсния другой команды требуется другая микропрогря.,ма из шести микроманд и т. д. Обычно выбор первой микрокоманды из микропрограммы производится путем использования кода операции, как части адреса ячейки памяти, где хранится первая микрокоманда.Для устранения дублирования одинаковых микрокоманд, используемых в разных микропрограммах, в устройстве производится переход на общие микрокоманды из разных точек микропрограмм, обеспечивающих выполнение системных команд.Возвращаясь к шести тактам выполнения операций, переходы к общим точкам в общей микропрограмме выполнения всех операций выполняются следующим образом.Микрокоманда первого такта Т 1 является общей для всех команд. Количество микро- команд второго такта Т 2 равно количеству. команд в системе. Таким образом, переход из микрокоманды Т 1 на микрокоманду Т 2 происходит по коду операции.Действия, выполняемые в третьем такте, одинаковы для нескольких команд. Эти команды объединяются в группу, имеющую свой код, который указывается в микрокоманде Т 2 данной команды,Г 1 ри переходах из микрокоманд Т 2 на микрокоманды ТЗ этот код группы используется как часть адреса микрокоманды.Количество микрокоманд ТЗ равно количеству групп,1 о общим микрокомандам ТЗ названную выше систему команд можно разделить на 20 - 25 групп.Из нескольких микрокоманд ТЗ по адресу, находящемуся в поле базы микрокоманды, производится переход на одну микрокоманду Т 4, так как микрокоманд Т 4 меньше, чем ТЗ, 56196445 50 55 60 65 Для выбранной системы команд можно выделить 15 микрокоманд Т 4. Действия в пятом такте зависят от кода операции системной команды и поэтому при переходе из микро- команды Т 4 на Т 5 код операции используется как часть адреса микрокоманлы, Количество микрокоманд Т 5 равно количеству сомаил в системе. В командах, требующих более одного такта выполнения, первая микрокоманда Т 5 является началом последовательности нескольких микрокоманд типа Т 5. Микрокоманда Т 6 является общей для всех сомаил.При выполнении трех команд в 5 - 6 циклах процессора (при совмещенном выполнении трех команд) команда КЗ будет находиться на первом уровне совмещения, команда К 2 на втором, а команда К 1 на третьем уровне совмещения.Для управления выполнением этих команд необходимо выбрать три последовательности микрокоманд или одну последовательность, управляющую всеми тремя командами, находящимися на разных стадиях обработки.Трудности при организации одной последовательности возникают из-за сложности организации переходов в микропрограмме, т. е. сложности формирования адреса следующей микрокоманды. В предлагаемом устройстве эти трудности ликвидируются путем разделения функций управления между двумя блоками памяти микропрограмм следующим образом.Де 1 ствия, общие для всех команд, которые связаны лиць с номером такта выполнения, управляотся микрокомацдами блока 3 дополнительной памяти микропрограмм, а действия, зависящис от кода операции, управляются микрокомандами блока 1 основной памяти микропрограмм, т. е. последовательность микрокоманд для управления выполнением команд разбивается на две последовательности, выбираемые из двух синхронно работающих блоков 1, 3.Функции управления, зависящие от тактов обработки команды, выполняются микро- командами блока 3. Для управления двумя или тремя командами выбирается одна микрокоманда, имеющая признаки тактов этих команд. Функции управления, зависящие от кода операции, производятся микрокомандами блока 1,Микрокоманлы (типа М) управляют модификацией адреса операнда. Микрокоманды (типа ОП) управляют выполнением операции.Пусковые микрокоманды (ПК), т, е. не производяп 1 ие никаких действий, кроме перехода, используются при входах и выходах из совмещенного режима выполнения команд для сохранения непрерывности в работе памяти микропрограмм.Исходя из,вышеизложенного, для управления выполнением трех команд нужно выбрать две последовательности микрокоманд из бло- ков 1 иЗ,5 10 15 20 25 30 35 40 Разделение управления между двумя последовательностями микрокоманл позволяет упростить схему микропрограммных переходов.Переход на следующую микрокоманлу в блоке 3 зависит от номера такта обработки соманлы. Через 1 саждые лва такта наинается новая последовательность, т. е. начицается выборка микрокоманл, управляющих совмещенными тактами. Псрехолы в блоке 1 основной памяти микропрограмм на микрокоманлы типа М производятся по колу операции команды, находящейся на первом уровне совмещения, а на микрокоманлы типа ОП - по коду операции команды, находящейся ца третьем уровне совмегцеция, Пере- холы в длинных последовательностях микро- команд типа ОГ 1 происходят по базовому адресу, нахоляшемуся в поле выполняемой микро- команды. В структуре процессора суцсствуют дополнительные схемные условия, которые определяют олно из четырех иаправлеиш перехода.Для сокращения времеи такта процессора, а следовательно повышения быстродействия, схемные условия перехода не учитываются при формировании адреса. Ветвление ца четыре цаправлсния производится путем разбиения блока 1 основной памяти микропрограмм на четыре независимых модуля, обращение к которым происходит одновременно по олцому базовому алрссу. Время выборки из мо,улей используется Лля анализа схемных условий и формирования сигнала приемасоотвстств оисо мод ля па 1 яти иа регистр 2 основной микрокомацлы.Организацию переходов н микропрограммах основной и дополнительной памяти можно проследить при выборке двух последовательностей микрокомал лля управления обработкой трех команд. На первую микрокоманлу Т 1 процессор выходит после завершения операций по загрузке системных команд в буфер команд,Из блока 1 выбирается пустая команда, так как процессор еще не вошел в режим совмещения. Переход из Т 1 на Т 2 происходит по базовому адресу, который из поля 10 через узел 11, группы элементов И 20 и ИЛИ 22 подается на регистр 6. Переход на микро- команду типа М для команды К 1 происходит путем подачи кода операции команды К 1, находящейся ца первом уровне совмещения. Хранящийся на регистре 23 кол операции через группы элементов И 13 и ИЛИ 21 подастся на,регистр 5 адреса. Элементы И 13 управляются сигналом Т 1 пз поля тактов 9 регистра 4.Переход из микрокоманлы М лля К 1 на микрокоманду ПК происходит по базовому адресу, который из поля 8 регистра 2 через группы элехентов И 15 и ИЛИ 21 поступает на регистр 5 адреса. На второй и третий входы подаются инвер "ные управляющие сиги 1,и Т 1 и Т 4.Переход из микрокоманды Т 2 на совмсТцснмикрокоманд. Т 13 пр 051 сходит по коду группы, поступающему из поля 7 регистра 2 через группы элементов И 19 и ИЛИ 22 на регистр 6 адреса. На второй вход элементоь И 19 подается сигнал призпака такта Т 2.Переход нз Т 13 в совмещенную микро- команду Т 24 происходит по базовому адресу, который через группы элементов И 20 и ИЛИ 22 поступает на регистр 6, как было описано выше, а переход из ПК на М для команды К 2 происходит с помощьО кода операции команды К 2, которая теперь находится на перовом уровне совмещения, а ее код на регистре 23.Команда К 1 уже находится на втором уровне совмещения, а ее код операции хранится в регистре 24.Формирование адреса микрокоманды по коду системной команды, находящейся на первом уровне совмещения, был описан выше. Образование переходов в последующих микрокомандах организуется аналогично вышсописанным.Оба блока 1, 3 памяти микропрограмм работают сихронно, вырабатывая сигналы для управления выполнением системных команд на всех этапах обработки. Управляющие сигналы блока 3 дополнительной памяти миэкропрограмм влияют на организацию микропрограммных переходов н основной памяти, а код группы коматтд, нахОдятцсйс 5 В микрокоматтдс блока 1 основной памяти микропрограмм используеГС 51 дл 51 псрсходов в микропрограммах блока 3 дополнитсльной памяти микропрограмм,Таким образом, устройство позволяет производить в процессоре одновременную обработку трех команд, т. с. допускает три уровня совмещения, что значительно увеличивает производительность системы и повышает эффективность использования оборудования.Кроме того, использованием общих микро- команд мо)кно сократить общий объем памяти микропрограмм на 15 - 20%, т. е. уменьшить оборудование процессора.Формула изобретенияМикропрограммное устройство управления, содержащее группы элементов И, ИЛИ, НЕ, блоки основной памяти микропрограмм и дополнительной памяти микропрограмм, отлич а ю щ е е с я тем, что, с целью уменьшения ооорудования и времени обработки команд, оно содер)кит первый и второй регистры адреса, регистры кода операции первой команды и второй команды, регистры основной микро- команды и дополнительной микрокоманды, узел модификации адреса, управляющий вход которого подключен к управляющему входу устройства, выходы блоков основной и дополнительной памяти микропрограмм подкл)оче ны соответственно ко входам регистра основной микрокоманды и регистра дополнительной микрокоманды, выходы трех групп элементов И через последовательно соединенные первую группу элементов ИЛИ и первый ре гистр адреса соединены со входом блока основной памяти микропрограмм, первые входы первой группы элементов И соединены с выходом регистра кода операции первой команды, вторые гходы - с первым выходом реги стра Дополнительной микрокоманды, первыевходы второй группы элементов И соединены с выходом регистра кода операции второй команды, вторые входы - со вторым выходом регистра дополнительной микрокоманды, 25 первые входы третьей группы элементов Исоединены с первым выходом регистра основной микрокоманды, а вторые и третьи входы через первую и вторую группы элеметов НЕ подключены соответственно к первому и вто рому выхотдам регистра дополнительной микрокоманды, выходы четвертой и пятой групп элементов И через последовательно соединенныс вторую группу элемснто ИЛИ и второй рсТТТст) адреса соединены со входом блока З 5 дополнитсл.ной памяти микропрограмм, перньц входи четвертой группы элементов И сосд 111 сит со вторым выходом регистра основной мпкрокоманды, вторые входы - с третьим выходом регистра дополнительной микро команды, первые входы пятой группы элементов И подключены через узел модификации адреса кчетвертому выходу регистрадополнительной микрокоманды, вторые входы - через третью, группу элементов НЕ соединены с 45 третьим выходом регистра дополнительноймикрокоманды. Источники информацин, принятые во внимание при экспертизе:5) 1. С, Хассон, Микропрограммное управление, вып. 1, 2 М Мир, 1973 г,2. Патент США3800293, кл. 340 - 172.5,26.03.74.561964 Жерено Составител А, Каменская Тсхрсд Н, Аук . Корректор О. Тюрин ПодписноССР ография, пв. Сапунова, 2 аказ 1536/4 Изд.527 ЦНИИПИ Государственного по делам изо 113035, Москва, Ж

Смотреть

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