групп элементов ИЛИ, группу регистров, группу элементов НЕ, сумматор, пять элементов И, элемент ИЛИ, регистр адреса и сдвиговый регистр, йход и выходы дешифратора микроинст рукций соединены соответственно с первым входом блока и первыми входа ми первого, второго, третьего, четвертого и пятого элементов И, входами элементов И первой, второй, третьей, четвертой, пятой, шестой седьмой и восьмой групп, информационный вход, ВХОД параллельной записи, вход сдвига, последовательный информационщ 1й вход, выход и по следовательный выход сдвигового регистра соединены соответственно с выходами элементов ИЛИ первой групп выходом первого элемента И, выходом второго элемента И, вторым входом блока, информационным выходом блока и вторым входом третьего элемента И вторые входы первого и второго элементов И соединены с шестым входом блока, второй вход четвертого элемента И соединен с выходом переноса сумматора, первый и второй входы и -выход элемента ИЛИ соединены соответственно с выходами третьего и четвертого элементов И и выходом переноса блока, информационный вход выход и синхровход регистра адреса соединены соответственно с выходом элементов ИЛИ первой группы, выходо адреса блока, выходом пятого элемента И, второй вход которого соединен с шестым входом блока, второй вход и выход элементов И первой группы соединены соответственно с выходом элементов НЕ группы и первым входом элементов ИЛИ первой группы, BTOpoii вход и выход элементов И второй группы соединен соответственно с выходами элементов ИЛИ второй группы и вторыми входами эле ментов ИЛИ первой группы, второй вход я выход элементов И третьей 1 4 группы соединены соответственно с выходами элементов И девятой группы и третьим входом элементов ИЛИ первой группы, второй вход и выход элементов И четвертой группы соединены соответственно с выходом сумматора и четвертым входом- элементов ИЛИ первой группы, первьй и второй входы и выход элементов ETgi третьей группы соединены соответственно с выходами элементов И пятой и шестой групп и первыми входами элементов ИЛИ второй группы, элементов И девятой группы и сумматора, первый и второй входы и выход элементов ИЛИ четвертой группы соединен соответственно с выходами элементов И седьмой и восьмой групп, входами элементов НЕ группы и вторыми входами элементов ИЛИ второй группы, элементов И девятой группы и сумматора, вход -переноса которого соединен с вторым входом блока, 1 торые входы элементов И пятой группы соединены с объедиценными третьим, четвертым .и пятым входами блока, вторые входы элементов И шестой и восьмой групп соединены с информационным выходом блока, вход и выходы дешифратора выбора регистра соединены соответственно с седьмым входом блока, первыми входами элементов И десятой и одиннадцатой групп, второй вход элементов И десятой группы соединен с шестым входом блока, синхровходы, информационные входы и выходы регистров группы соединены соответс.твенно с выходами соответствующих : элементов И десятой группы, выходами элементов ИЛИ первой группы, вторыми входами элементов И одиннадцатой группы, вторые входы и выходы элементов ИЛИ четвертой группы соединены соответственно с выходами элементов И одиннадцатой группы и вторыми входами элементов И седьмой группы, .
название | год | авторы | номер документа |
---|---|---|---|
Микропроцессор | 1985 |
|
SU1290340A1 |
Микропрограммное устройство для сопряжения процессора с абонентами | 1987 |
|
SU1539787A1 |
Электронная вычислительная машина | 1988 |
|
SU1520533A1 |
Процессор для мультипроцессорной системы | 1985 |
|
SU1295410A1 |
Микропроцессор | 1982 |
|
SU1037263A1 |
Устройство адресации многопроцессорной вычислительной машины | 1983 |
|
SU1129613A1 |
Микропрограммный процессор | 1987 |
|
SU1553984A1 |
Микропрограммное устройство управления | 1984 |
|
SU1211724A1 |
Микропроцессор | 1982 |
|
SU1045231A1 |
Процессор с микропрограммным управлением | 1990 |
|
SU1700564A1 |
1, ПРОЦЕССОР, содержащий операционный блок, блок формирования адреса, блок микропрограмт-гной памяти и регистр микрокоманд, синхровход, информационный вход, выход управления чтением, выход управления записью, выход кода микроинструкции и выход операционного поля которого подключены соответственно к синхровходу процессора, информационному выходу блока микропрограммной памяти, первому и второму . входам блока формирования адреса, первому входу операцион ного блока и управляющему выходу процессора, третий, четвертый, пятый, шестой и седьмой входы блока формирования адреса соединены соответственно с входом начальной установки процессора, адресным выходом блока микропрограммной памяти, выходом переноса операционного блока, синхровходом процессора и первым информационным входом процессора, первый и второй выходы блока формирования адреса подключены соответственно к адресному входу блока микропрограммной памяти и второму входу -/IS .. / операционного блока, адресный и информационньш выходы которого подключены к соответствующим выходам процессора, третий, четвертьй, пятый и шестой входы операционного блока подключены соответственно к первому, второму и третьему информационным входам и синхровходу процессора, отличающийся тем, что, с целью повышения производительности, он содержит дешифратор, два реверсивных счетчика и коммутатор, причем управляющий вход и первый, второй и третий информационные входы и выход коммутатора соединены i соответственно с выходом первого уп-.. равляющего поля регистра микрокоманд, (Л выходами первого и второго реверсивных счетчиков, информационньпч выходом регистра микрокоманд и седьмым входом операционного блока, синхровход . S процессора и выход второго управляюю щего поля регистра микрокоманд под ключены соответственно к зтравляю щему и информационному входам дешифратора, первый выход которого под1ч9 ключен к входам записи первого и СО 4 второго реверсивных счетчиков, а второй, третий, четвертый и пятый выходы - соответственно к входам сло. жения и вычитания первого и второго реверсивных счетчиков, информационные входы которых подключены соответственно к второму и третьему информационным входам процессора 2. Процессор по п. 1, о т л и ч в ю щ и и с я тем, что операционный блок содержит дешифратор микроинструкций, дешифратор выбора регистра, одиннадцать грзтп элементов И, пять
Изобретение относится к вычислительной технике и может быть использовано в информационных, управляю.пшх и вычислительных системах. Цель изобретения - повышение произродительноети процессора. На фиг,1 изображена функциональная схема процессора; на фиг.2 функциональная схема операционного блока; на фиг.З - функциональная схема блока формирования адреса; на фиг.4 - алгоритм вьшолнения микропрограмм. Процессор содержит операционный блок 1, информационные входы 2-4 про цессора, адресный 5 и информационный 6 выходы процессора, блок 7 формиро.вания адреса, вход 8 начальной установки процессора, блок 9 микропрог .граммной памяти, регистр 10 микрокоманд, управляющий выход 11 процессора, дешифратор 12, реверсивные счетчики 13 и 14, коммутатор 15 и синхровход 16 процессора, выход 17 переноса блока 1, вход 18 признаков блока 7, выход 19 признаков блока 7, вход 20 блока 1, выход 21 блока 7, входы 22-24 блока 7, вход 25 блока 1, входы 26 и 27 коммутатора 15, вход 28 дешифратора 12, вход 29 счет чика 13, вход 30 счетчика 14, входы 31 и 32 счетч11ка 13, входы 33 и 34 счетчика 14, входы 35 и 36 коммутатора 15,вход 37 блока 1. Блок 1 (фиг.2 ) содержит дешиф.ратор 38 микроинструкций, дешифратор 39 выбора регистра, группу элементов И 40, группу регистров 41, группы элементов И 42, ШШ 43, И 44, И 45, ИЛИ 46, И 47, И 48, ИЛИ 49, НЕ 50, ШШ 51, И 52, И 53, ;И 54, И 55, И 56 и ИЛИ 57, сумматор 58.,. элемент И 59, элемент И 60, эле мент И 61, регистр 62 адреса, сдвиговой регистр 63, элемент И 64, элемент И 65 и элемент ИЛИ 66. БЛОК 7 формирования адреса ((фиг.З) содержит дешифратор 67 микроинстрзжций, группы элементов И 68j И 69, И 70, И 71, И 72 и ШЖ 73, регистр 74, группу элементов И 75, дешифратор 76 чтения, дешифратор 77 записи, элементИ 78, элемент И 79, триггеры 80 и 81 элементы И 82 и 83 и элемент 84. , Введенные условные обозначения: Иг -адрермикрокоманда; PC-регистр 41 группы, используемый в качестве программного счетчика; Р -.регистр 62 блока 1; Р - сдвиговый регистр 1/4з 41 груп63 блока I; Р пы блока 1, номер которого указан счетчиком 13; Р - регистр 41 группы блока 1, номер которого указан счетчиком 14; С413 4 и С414 3 - микрооперации загрузки счетчиков 13 и 14 информацией на входах 3 и 4 процессора; С413+1 и С414+1 - Микрооперации увеличения на единицу содержимого реверсивных счетчиков 13 и 14; 4т - микрооперация чтения информации из блока внешней памяти, указывается на выходе 11 процессора; Т СО - запись в триггер 80 блока 7 значения на выходе 17 блока 1; С1 Т - вьщача значения триггера 80 блока 7 на вход 20 блока 1 . Процессор работает следующим образом. Для приведения процессора в исходное состояние на вход 8 подается нулевой сигнал начальной загрузки. При этом на выходе 21 блока 7 образуется нулевой адрес, который является начальным адресом микропрограммы начальной загрузки. По этому адресу из блока 9 выбирается микрокоманда Ml. Каждая микрокоман- ; да состоит из двух частей: адресной и исполнительной. Адресная часть поступает на вход 22 управления адресом блока 7, а исполнительная на информационные входы регистра 10. По сигналу синхронизации в соотаетствии с указанным типом, перехода в регистр 74 блока 7 записывается адрес следующей микрокоманды, а исполнительная часть текущей микроко манды записьшается в регистр- 10. Таким образом, выборка микрокоманды опережает на один такт ее выполнение, следовательно, в первом микрокомандном цикле операционный блок 1, дешифратор 12 и коммутатор 15 вьшолняют неопределенные действия, соответствующие кодам, образовавшимся в регистре 10 после включения процессора. После первого синхросигнала на ходе 16 сигнал Начальная установа переводится в единичное состояие и адрес с выхода регистра 74 ерез элементыг И 75 группы поступат на вход блока микропрограммной паяти. Таким образом, выборка последующих адресов определяется регистром 74 блока 7.
Адресная часть микрокоманды состоит из двух частей: в первой части указывается тип перехода, во второй адрес перехода. Сигналы, соответствующие типу перекода, во второй адрес перехода. Сигналы, соответствующие типу перехода, поступают на вход дешифратора 67,а сигналы, соответствующие адресу перехода, - на вторые входы групп элементов И 68-71. В зависимости от того, на какой выходе дешифратора 67 образуется единичный сигнал,адрес следующей микрокоманды определяется либо безусловно по адресу перехода, указанному в адресной части микрокоманды, либо с учетом сигналов на входе 18 блока 7, либо с учетом состояния триггеров 80 и 81 гши |безусловно по коду, образованному на входе 2 блока 7,
Код адреса следующей микрокоманды, образованный одним из перечисленных способов, поступает через группы элементов ИЛИ 73 на информационный вход регистра 74 и по заднему .фронту синхросигнала на входе 16 записывается в регистр 74.
Исполнительная часть микрокоманды состоит из семи полей. Код, подаваемый с первого выхода регистра 10 на вход 23 блока 7, определяет функцию дешифратора 76 чтения, в зависимости от которой на выходе 19 блока 7 образуется либо содержимое триггеров 80 и 81, либо значения логического О или логической 1. Код, подаваемьй с второго выхода регистра 10 на вход 24 блока 7,определяет функцию дешифратора 77 записи, в зависимости от которой по заднему фронту синхросигнала на входе 16производится либо запись в один из триггеров 80 или 81 значения, присутствующего на входе 18 блока 7, либо значние триггеров остается без изменения .
Работа блока 7 при этом заключаетря в следующем. Если производится запись в какой-либо триггер данных навходе 18 блока 7 TO единичный синал, образованньй на одном из выходов дешифратора 77, открьюает элемент И 7В или 79. Поступающий на . вход 16 синхроимпульс вьтолняет за пись значения сигнала на входе 18 блока 7,
При вьщаче состояния какого-лиВо триггера на выход 19 блока 7 по еди-i ничному сигналу на соответствующем выходе дешифратора 76 открьгоается i
элемент И 82 или 83 и содержимое соответственно 80 или 81 через элементы И 82 и ИЛИ 84 или И 83 и ИЛИ 84 поступает на выход 19 блока 7. При выполнении многих операций
процессор обращается к блоку внешней памяти (не показан ). При выполнении операций записи информации в блок внешней памяти на управляющем выходе 11 устанавливается сигнал,
5 соответствующий режиму записи.
Адрес, по которому производится запись, и данные формируются соответственно на выходах 5 и 6 процессора. При чтении информации из блока внешней памяти на управляющем выходе 11 устанавливается сигнал чтения, при этом данные с выхода внешней памяти поступают на входы 2-4 процессора.
5 Код, поступающий с выхода регистра 10 на вход 28 блока 12, определяет одну из функций дешифратора 12, В результате этого вьтолняются операции: загрузка реверсивных счетчиков
0 53 и 14 данными, образованными соответственно на входах 4 и 3 процессоpai +1 в счетчик 13; -1 из счетчик 13; +1 в счетчик 14; -1 из счетчика 14.
Код, поступающий с выхода регистра 10 на вход 26 блока 15, определяет функцию дешифратора 85 блока 15, . которая заключается в выборе номера канала, который должен быть подклю.. чен к выходу коммутатора 15, Единичное значение на одном из выходов дешифратора 85 открьгоает одну из групп элементов И 86 - 88, и информация соответственно с одного из входов 27, 35 и 36 блока 15 поступает через соответствующую группу элементов И и через группу элементов ИЛИ 89 на вход 37 блока 1.
Информация, записываемая в реверсивные счетчики и поступающая с
выхода регистра 10 на вход 27 блока 15, по своему смь1слу является номером одного из регистров 41 группы блока 1« Таким образом, код,поступающий с выхода коммутатора 15 на вход
5 37 блока 1, определяет функцию дешифратора 39 блока 1, которая заключается в выборе одного из регистров 41 группы в качестве одного из операн 12Д000 Второй операнд и тип действия, выполняемого над операндами, определя ется кодом, поступающим с выхода регистра 10 на вход 25 блока 1. 6 качестве второго операнда может быть выбран либо регистр 63 блока 1, либо данные, образованные на входах 2-4 процессора. Над операциями блок 1 выполняет арифметико-логические и сдвиговые операции. Арифметико-логические операции в блоке 1 выполняются над двумя операндами, которые поступают с выходов группы элементов ИЛИ 46 и с выходов группы элементов или 49. На выходе группы элементов ИЛИ 46 данные образуются либо с входов 2-4, либо с .выхода 6 процессора в зависимости от того, какая из групп элементов И 44 или 45 открыта единичным сигналом, постзшающим с выхода дешифратора 38. На выходе группы элементов ИЛИ 49 данные образуются либо с выходов группы элементов ИЛИ 43, либо с выходов 6 процессора также в зависи- . мости от того, какая группа элементов И 47 или 48 открыта единичным - сигналом, поступающим с выхода дешиф ратора 38. Выбранные операнды поступают на входы групп элементов НЕ 50, ИЛИ 51 и И 52 и сумматора 58, на выходе которых образуются соответственно результаты логических операций НЕ, ИЛИ, -И или сумма операндов. При переполнении сумматора 58 на его выходе переноса образуется единичный сигнал переноса, поступающий на вход элемента. И 65, и при наличии единичного сигнала на втором входе элемента И 65, поступающего с выхода дешифратора 38, сигнал переноса через элементы И 65 и ШШ 66 .поступает на выход 17 блока 1. В зависимости от того, какая груп па элементов И 53 - 56 открыта единичным сигналом с выхода дешифратора 38, результат соответствующей операции НЕ, ИЛИ, И, сумма поступает через соответствующую группу элементов И и ИЛИ 57 на входы регистров 62 и 63 и на входы регистров 41 группы. Результат выполненной операции в зависимости от наличия единичного сигнала на входах элементов И 59-61 по сигналу синхронизации на входе 16 записывается соответственно в регист ры 62 и 63 и регистр 63 со сдвигом. 4 при этом с сдвигающего выхода сигнал поступает на вход элемента И -64 и при наличии единичного сигнала на втором входе элемента И 64 поступает через элементы И 64 и ИЛИ 66 на выход 17 блока I. Кроме того, по сигналу синхронизации .результат операции записьшается в один иэ регистров 4 грзтпы в зависимости от того, на каком из элементов И 40 группы на первом входе присутствует единич- ный сигнал, поступающий с выхода дешифратора 39, Рассмотрим алгоритм выполнения операции сложения двух регистров (фиг.4) в случае увеличения количества регистров общего назначения. В адресной части микрокоманды Ml формируется безусловный переход к микрокоманде М2, а исполнительной части указьтается операция обнуления одного из регистров 41 группы, который выбран в качестве программного счетчика (обозначим его PC ). Условимся, что, если на каком-либо выходе регистра 10 формируется код, который указывает на отсутствие активных действий того или иного блока, то этот выход при пояснении принципа действия упоминаться не будет. Таким образом, в микрокоманде Ml активные действия выполняет только блок I. В адресной части микрокоманды М2 указывается безусловный переход к микрокоманде МЗ, а в исполнительной части - пересыпка данных из регистра PC в регистр 62 блока 1, в результате этого на выходе 5 блока образуется нулевой адрес внешней памяти. В микрокоманде МЗ на выходе I1 процессора указывается сигнал чтения из внешней памяти, в результате чего содержимое нулевого адРеса внешней памяти поступает на входы 2-4 процессора, в частности значение на входе 2 процессора поступает на вход 2 блока 7,На вход 28 дешифратора I2 подается код, указывающий на загрузку реверсивных счетчиков 13 и 14 информацией, присутствующей на входах 4 и 3 процессора. По сигналу синхронизации информация записывается в счётчики 13 и 14. По своему смыслу эта информация представляет собой номера регистров 41 группы блока 1, над которыми необходимо выполнить действие команды. 9120 В адресной части микрокоманды МЗ указьшается переход к микрокоманде М4, в адресной части которой указьтается переход по коду, присутствующему на входе 2 блока 7. В результате этого единичным сигналом с выхода дешифратора 67 открываются элементы И 72 группы, код с входа 2 через элементы И 72 группы и ИЛИ 73 группы поступает на вход регистра 74 и по сиг- ю налу синхронизации записывается адрес следующей микрокоманды М5, который является начальным адресом микропрограммы, реализующей операцию сложения двух регистров, В исполнительной части микрокоманды М4 указывается операция увеличения на единицу содержимого программного счетчика PC. В .адресной части микрокоманды М5 указьшается безусловный переход к микрокоманде Мб, а в исполнительной части - опера ция пересылки содержимого одного из регистров 41 группы, номер которого записан в счетчик 13, в регистр 63блока 1. Для этого на вход 26 коммут тора 15 подается код, обес.печиваю- щий прохождение сигналов с входа 35 через элементы И группы и элементы ШШ группы блока 15 на вход 37 дешифратора 39 блока 1.. Содержимое выбранного регистра 41 группы через соответствующие элементы И 42 группы и ИЛИ 43 группы поступают на вход элементов И 47 груп пы. При выполнении операции пересылки одного из,регистров 41 группы в регистр 63 на выходах дешифратора 38 образуются нулевые сигналы, посту пающие на входы элементов И 44 группы, И 45 группы, И 48 группы, И 53 группы,И 54 группы и И 56 группы, и единичные сигналы, поступаюирие на 1ВХОДЫ элементов И 47 группы и И 56 группы. В результате этого выполняется операция сложения содержимого регистра 41 группы, поступающего на вход су шатора через элементы И 47 группы и ИЛИ 49 группы, с нулевым, значением, образованным на втором входе сумматора с выхода элементов ИЛИ 46 группы. Далее результат суммирования через элементы И 56 группы и ИЛИ 57 группы поступает на входы регистра 63. По сигналу синхронизации при наличии единичного сигнала на входе элемента И 60 с выхода дешифратора 4 производится запись результата в регистр 63. В адресной части микрокоманды Мб указьгоается переход к микрокоманде . М2, а в исполнительной части - сложение содержимого регистра 41 группы блока 1, номер которого указан в счетчике 14, и содержимого регистра 63 блока 1. Результат записьшается в регистр 41 группы блока 1, Начиная с микрокоманды М2 действия процессора повторяются. Таким образом, операция сложения двух регистров занимает пять микрокоманд. Сложение двух ячеек внешней памяти потребует большего количества микрокоманд, так как необходимо вьшолнить микрооперации вычисления адресов этих ячеек и считывания данных из внешней памяти. Рассмотрим алгоритм микропрограммы сложения двух пар регистров ( фиг.4 ) в случае обработки операндов большей разрядности, чем разрядность процессора. Действия микрокоманд М2 и МЗ описаны ранее. В адресной части микрокоманды М4 указьшается переход по коду на входе 2 блока 7, т.е. к микрокочо манде М7, в адресной части которой указьшается переход к микрокоманде М8. В исполнительной части микрокоманды М7 указьшается пересылка регистра 41 группы, номер которого указан в счетчике 13, в регистре 63 блока 1. В адресной части микрокоманды М8 указан безусловньй переход к микрокоманде М9, от которой вьшолняется переход к Ml О и далее к М2, заверйая команду сложения пар регистВ исполнительной части микрокоманды М8 указьшается сложение содержимот го регистра 63 блока 1 и регистра 41 группы, номер которого указан в счетчике 14. Перенос, образованный «а выходе 17 блока 1 при сложении, поступает на вход 1В блока 7. На вход 24 блока 7 с выхода регистра 10 поступает код, указывающий на запись значения на входе 1В в триггер 80. На вход 28 дешифратора 12 подается код, указывающий на увеличение содержимого реверсивного счетчика 13. на единицу. По сигналу синхронизации вьтолняются все перечисленные действия, а результат сложения эаписьгоается в регистр,41 группы, номер которого указан в счетчике 14. В микрокоманде М9 содержимое регистра 41 группы, номер которого указан в счетчике 1 3 , пересылается в регистр 63 блока I. На входе 28 дешифратора 12 указывается операция увеличения содержимого счетчика 14 на единицу, В микрокоманде Ml О выполняется сложе
254
иг.1 942 ;ние регистра 63 блока 1 с содержимым регистра 41 группы, номер которого указан в счетчике 14, На вход 23 блока 7 подается код, обеспечивающий выдачу содержимого регистра триггера 80 на выход 19 блока 7, которое поступает на вход 20 переноса сумматора 58 блока I, т.е. сложение вьшолняется с учетом переноса, образованного при сложении младших частей операндов.
fi/.J
«U
S
Березенко А.И., Назарьян А.Р., Корягин Л.Н | |||
Микропроцессорные комплекты повышенного быстродействия | |||
М.: Радио и связь, 1981, с | |||
Приспособление, заменяющее сигнальную веревку | 1921 |
|
SU168A1 |
Микропроцессор | 1982 |
|
SU1037263A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Авторы
Даты
1985-12-23—Публикация
1984-03-15—Подача