Процессор

 

Союз Советских

Социалистическнх

Республик

ОПИСАНИЕ

ИЗОБРЕТЕНИЯ ф. г

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (61) Дополнительное к авт. свид-ву (22) Заявлено 04.01.81 (21) 3228970/18 24 И11М.Кл.э с присоединением заявки М (23) Приоритет

GI 06 F 15/00

Государственный комитет

СССР по делам изобретений и открытий

ДЗ) УДК 681. 327 (088.8) Опубликовано 3009.82. Бюллетень HP 36

Дата опубликования описания 3009В2 (72) Авторы изобретения СЕС®ЮЗ : .. q

Й АХЕЙЦ"нв, т ЕХАЛ ","<,, q жен ц@ А.Н.Степанов, А.Л.Ганькин и Н.Н.Захаревич (71) Заявитель

Московский ордена Трудового Красного Знамени физический институт (54), ПРОЦЕССОР

Изобретение относится к вычислительной технике,и может быть использовано в процессорах, в которых при меняются языки высокого уровня.

Известен процессор, позволяющий вычислять арифметические выражения, представленные в польской записи, и содержащий регистр команд, блок режима работы, дешифратор адреса и дешифратор кода операции, используемые для управления стековой памятью.

С помощью этих блоков осуществляется загрузка операндов в стековую память и выполнение операций над ними в арифметическом устройстве (1). .Недостаток этого процессора — низкое быстродействие.

Наиболее близким к предлагаемому является процессор, который предназ-.начен для вычисления выражений, представленных в инверсной польской записи. Процессор содержит оперативное запоминающее устройство, стек результатов, стек адресов операндов, регистр адреса, счетчик адреса стека результатов, счетчик операндов, ре- i гистр команд и два регистра арифмети- ческого устройства. Командная информация состоит из слогов, содержащих коды операций и адреса операндов, упакованйых в непрерывную строку, поступающую на вход регистра команд. Адреса неиспользованных в данный момент операндов погружаются в стек адресов, а используемые операнды .извлекаются из оперативного запоминающего устройства и пересылаются в регистры арифметического устройства. Промежуточные результаты сохраняются в стеке результатов 2 .

Недостатком известного процессора является низкое быстродействие, обусловленное последовательным характером обработки входной строки — подготовкой операндов и выполнением операций.

Цель изобретения — повьхаение быстродействия процессора.

Поставленная цель достигается тем, что.в процессор, содержащий накапливающий сумматор, блок стековой памяти результатов, регистр команд и блок управления, причем -выход регистра команд соединен с первым входом блока управления и входом кода операции на,капливающего сумматора, информационный вход накапливающего сумматора подключен к выходу блока стековой памяти результатов, а выход накаплиЗ0 вающего сумматора — к первому входу

962964 блока стековой памяти результатов, введены б чок стековой памяти операндов, триггер операнда н триггер операции,при этом первый вход блока стековой памяти операндов соединен с выходом регист- ° ра команд, а первый выход — с информационным входом накапливающего сумматора, управляющие вход и выход блока стековой памяти операндов подключены соответственно к первому выходу и второму входу блока управ- 10 ления, третий и четвертый входы которого соединены с выходами соответственно триггера операнда и триггера перации, второй, третий, четвертый пятый выходы блока управления под- 15

1 ключены соответственно к нулевому и единичному входам триггера операнда и нулевому и единичному входам триггера операции, шестой и седьмой выходы блока управления соединены щ соответственно с входами разрешения приема и выдачи блока стековой памяти результатов, восьмой и девятый выходы — соответственно с входами разрешения приема операнда и приема ко- 2 да операции сумматора, десятый и одиннадцатый выходы — соответственно с входами разрешения приема и выдачи информации блока стековой памяти операндов, а двенадцатый и тринапиатый выходы блока управления подключены соответственно к входам разрешения выдачи и сдвига информации регистра команд, причем вход управления суммированием процессора соединен с пятым входом блока управления, вход управления записью процессора подключен к шестому входу блока управления, четырнадца тый и пятнадцатый выходы блока управления соединены соответственно с 40 выходом раэреШения выдачи адреса про. цессора и выходом разрешения выдачи информации процессора, а вход и вы- . ход блока стековой памяти операндов являются информационными входом и выходом процессора.

Кроме того, блок управления содержит триггер готовности сумматора, триггер готовности памяти, счетный триггер, дешифратор признака записи, элементы И, элементы ИЛИ, элементы

НЕ НЕ, при этом счетные входы триггеров готовности сумматора и готовности памяти и первый вход первого элемента И подключены к вы- ходу генератора тактовых импульсов, первые входы триггера готовности сумматора и триггера готовности памяти соединены соответственно с пятым и шестым входами блока а входы дешифратора приз нака записи, с первым входом блока-, — 60 первый и второй входы элемента И-НЕ подключены соответственно к прямому выходу триггера готовности сумматора и первому выходу дешифратора признака записи, а выход этого элемента — 65

4 к второму входу первого элемента И, третий вход которого соединен с прямым выходом триггера готовности памяти, а выход — co счетным входом счетного триггера и первыми входами второго, третьего, шестого и седьмого элементов И, прямой выход счетного триггера подключен к второму входу второго элемента И, а инверсный выход — к второму входу третьего элемента И и информационному входу счетного триггера, инверсный выход триггера готовности сумматора соединен с первыми входами четвертого и пятого элементов И, вторые входы которых подключены к первому выходу дешифратора признака записи, выход второго элемента И соединен с третьим входом пятого элемента И и вторыми входами шестого и седьмого элементов

И, выход третьего элемента И подключен к третьему входу четвертого эле-. мента И и первым входам восьмого и девятого элементов И, второй выход дешифрратора признака записи соединен с третьим входом шестого элемента И и вторым входом девятого элемента

И, третий выход дешифратора признака записи подключен к третьему входу седьмого элемента И и второму входу восьмого элемента И, выход четвертого элемента И соединен с вторым вхо-, дом триггера готовности сумматора, первыми входами десятого, одиннадцатого и двенадцатого элементов И, с третьим, четвертым и двенадцатым выходами блока, выход пятого элемента

И подключен к первым входам тринадцатого и четырнадцатого элементов И, четвертого элемента ИЛИ и восьмому выходу блока, вход первого элемента

НЕ соединен с вторым входом блока и вторым входом десятого элемента И, а выход первого элемента НŠ— с вторым входом двенадцатого элемента И, вход второго элемента НЕ подключен к четвертому входу блока и вторым входам одиннадцатого и четырнадцатого элементов И, а выход второго элемента НŠ— к третьим входам десятого и двенадцатого элементов И и второму входу тринадцатого элемента

И, выход десятого элемента И соединен с первыми входами первого и второго элементов ИЛИ, выход одиннадцатого элемента И вЂ” с вторым входом первого элемента ИЛИ и первым входом, третьего элемента ИЛИ, выход двенадцатого элемента И вЂ” с третьим входом первого элемента ИЛИ и вторым входом третьего элемента ИЛИ, выход тринадцатого элемента И вЂ” с четвертым входоМ первого элемента ИЛИ и вторым входом второго элемента ИЛИ, выход четырнадцатого элемента И вЂ” с пятым входом первого элемента ИЛИ и третьим входом третьего элемента ИЛИ, выходы первого, второго, третьего и

962964 четвертого элементов ИЛИ подключены соответственно к девятому, десятому, шестому и тринадцатому выходам блока, выход шестого элемента И соединен с вторыми входами триггера готовности памяти и четвертого элемента ИЛИ и четырнадцатым выходом бло" ка, выход седьмого элемента И подключен к третьему входу четвертого элемента ИЛИ и первым входам пятого и шестого элементов ИЛИ, выход восьмого элемента И соединен с первым входом седьмого элемента ИЛИ и двенадцатым выходом блока, выход девятого элемента И подключен к вторым входам пятого и шестого элементов

ИЛИ, двенадцатому и пятнадцатому выходам блока, первый и второй входы пятнадцатого элемента И соединены соответственно с третьим входом блока и выходом шестого элемента ИЛИ, выходы пятого элемента ИЛИ и пятнадцатого элемента И подключены соответственно к одиннадцатому и первому выходам блока, второй вход седьмого элемента ИЛИ соединен с шестым входом блока, а выход — с вторым и пя тым выходами блока, седьмой выход блока .подключен к его пятому входу.

На фиг. 1 представлена структурная схема процессора, на фиг. 2 функциональная схема блока управления, входящего в состав процессора.

Процессор содержит накапливающий, .сумматор 1, блок 2 стековой памяти

:результатов, регистр 3 команд и блок

4 управления, причем выход регистра

3 соединен с первым входом блока 4 и входом кода операции сумматора 1, информационный вход сумматора 1 под ключен к выходу блока 2, а выход сумматор 1 — к первому входу блока

2 стековой памяти результатов (фиг. 1). Процессор содержит также блок 5 стековой памяти операндов, триггер б операнда и триггер 7 операции. Первый вход блока 5 соединен с выходом 8 регистра 3, а первый выход - с информационным входом сумматора 1. Информационный вход 9 и информационный выход 10 процессора подключены к информационному, входу и выходу блока 5 и информационному входу и выходу оперативного запоминающего устройства (не показано

Блок 4 управления имеет четыре входа 11, 12, 13 и 14 и тринадцаты выходов 15-27. Входы блока 4 подклю-., ° чены к выходу регистра 3 (вход 11) с которого передается код признака, к выходу управляющего разряда бло,ка 5 (вход 12) и к выходам триггеров б и 7 (входы 13 и 14). Выходы блока

4 управления подключены к входам разрешения приема и выдачи кода блока 2 (выходы 20 и 21), к входам разрешения приема кода операции и операнда сумматора 1 (выходы 22 и 23), к

45 вида записи. В регистре 3 производится сдвиг записей по мере их обработ-.: ки. С помощью записей кодируются арифметические выражения, представленные в инверсной польской записи.

Например, выражение а в+ с в польской записи имеет вид ав+ с+. Процес- сор срабатывает выражения, представленные в оптимизированной форме, которая характеризуется наличием групп. не более чем из двух последовательно идущих операндов,: Оптимизированная форма требует также при вычислении минимальной глубины стека результатов. При переводе в оптимальную форму производится перестановка операндов местами. Для некоторых операций в выражение вводится дополнительная унарная операция "реверс" (обозначим ееЩ ), которая означает перестановку местами двух операндов, пересылаемых в суююатор. При выполнении этой операции происходит. перестановка содержимого двух верхних регистров стека. Таким образом, выражение входам разрешения приема и выдачи кода блока 5 (выходы 24 и 25) и к входам управления сдвигом регистра 3 и входу разрешения выдачи кода из этого регистра (выходы 26 и 27).Первый выход 15 блока 4 соединен с управ ляющим входом блока 5, а выходы 1619 блока 4 подключены к установочным входам триггеров 6 и 7.

Блок 4 управления содержит триг=

1() гер 28- готовности сумматора, триггер

29 готовности памяти, счетный триггер 30,выполняющий роль распределителя импульсов, дешифратор 31 признака записи, пятнадцать элементов И

15 32-46, семь элементов ИЛИ 47-53,два элемента HE 54 и 55 и элемент И-НЕ

56 (фиг. 2) . Логические элементы образуют комбинационную схему, коммутирующую тактовые сигналы между

2О соответствующими выходами в зависимости от состояния триггеров 28-30, кода на выходе дешифратора 31 и входных сигналов. Кроме того, блок

4 управления имеет еще два входа и

25 два выхода. Для управления обменом сигналами с оперативным запоминающим устройством и сумматором 1 используется вход 57 готовности сумматора 1, вход 58 готовности памяти, выход 59 разрешения приема адреса на регистр адреса памяти, выход 60 разрешения выдачи кода с регистра числа памяти и вход тактовых импульсов.

Процессор работает следующим обЗ5 разом.

На регистр 3 поступает командная нформация, представляющая собой строку записей адресов операндов, операций или констант. Вид записи

40 идентифицируется по нескольким стар шим разрядам, содержащим признак

z/{a Ь с"d) будет иметь вид авф с4 @ +

+. zlzz

При обнаружении признака операнда в регистре 3 блок 4 управления сбрасывает триггер 6 в нуль.Адрес операн-. да передается на выход регистра 3, а код операнда со входа 9 поступает в блок 5. Блок 4 анализирует состояние триггера 7 и записывает в управляющий разряд блока 5 нуль„ если триггер 7 находится в нулевом состояниф, после чего триггер 7 устанавливается в единицу. Это означает, что, обнаружен первый операнд пары. Если триггер 7 находится в единице, то в управляющий разряд записывается единица, что означает обнаружение второго операнда пары.

При обнаружении прйзнака констан. ты производится тот же набор действий: сброс триггера 6 в нуль, анализ 2О состояния триггера 7 и запись приз= нака парности в управляющий разряд блока 5, но значение константы передается в блс к 5 с регистра 3. При обнаружении признака операции код операции передается на управляющий вход сумматора 1. Далее производится загрузка операндов. Если триггер

6 находится в единице, т.е. предыдущей записью была операция, то оба ЗО операнда извлекаются из блока 2; если он находится в нуле, то первый операнд извлекается иэ блока 5.Если признак парности равен единице, то второй операнд также извлекается из блока 5, если нулю, то он извлекается из блока 2. Результат выполнения операции записывается в блок 2.После этого триггер 6 устанавливается в единицу, а триггер 7 — в нуль. Во время выполнения очередной операции блок 4 производит сдвиг информации в регистре

3 н анализ признака следующей записи.

Если запись — константа, то ее значение пересылается в блок 5, если опе- ранд, то производится извлечение его содержиМого из оперативного запоми.нающего устройства, т.е. подготовка операндов, как описано выше.

Блок 4 .управления работает следующим образом. В исходном состоянии 50 триггеры 6 и 7 находятся в нуле, а триггеры 28-30 — в единице. Дешифратор 31 выдает на нулевом выходе сигнал„ соответствующий признаку кода операции, на выходе "1" ; адресу опе- 55 ранда, на выходе "2" — константе.Обработка каждого вида записи осуществляется эа два такта, между которыми может быть пауза, связанная с ожиданием готовности памяти. Появление Е) признака адреса операнда (сигнал иа выходе "1" дешифратора 31) приводит к передаче адреса на регистр адреса оперативного запоминающего устройства (сигнал на выходе 59), а триггер

29 устанавливается в нуль, блокируя дальнейшее поступление тактовых импульсов. Сигнал готовности памяти со входа 58 устанавливает триггер 29 в единицу, разрешая поступление очередного импульса на счетный вход триггера 30. Во втором такте производится прием кода операнда с регистра числа, оперативного запоминающего устройства в блок 5 (по сигналам с выходов 26 и 60) и сдвиг кода в регистре 3. Появление признака константы {сигнал на выходе "1" дешифратора) вызывает передачу кода константы из регистра 3 в блок 5 (по сигна-.... лам с выходов 25 и 27у . Bo втором такте производится сдвиг кода в регистре

3 на длину кода константы. Так как коды адреса, константы и операции могут иметь разную длину, то блок 4 имеет три различных выхода для управления сдвигом, обозначенных общим номером

26. Появление признака кода операции приводит к тому,-что в зависимости от состояния триггера 6 ((вход 14 ) производится или прием первого, а затем второго операнда (по сигналу со входа 12) s сумматор 1 иэ блока 5 (пс сигналам на выходах 20 и 23),или из разных блоков стековой памяти "no сигналам на выходах 20 и 23, 23 и 24), Затем триггер 28 устанавливается в единицу. Далее блок управления может продолжать анализ признаков и подготовку операндов. Действия по обработке следующей записи кода операции при отсутствии готовности сумматора 1 блокируются триггером 28 и элементом

И-НЕ 56. Каждая передача информации сопровождается выдачей двух сигналов, разрешения выдачи и разрешения приема на управляющие входы источника и приемника (кроме выдачи иэ сумматора).

При вычислении выражения ав + cd + z ® выборка операндов с и d может быть совмещена с умножением, а выборка операнда z со сложением.

Таким образом, введение в процессор блока стековой памяти операндов глубиной в два регистра и двух триггеров, характеризующих вид предшествующей записи позволяет повысить его быстродействие за счет совмещения времени выборки операндов иэ оперативного запоминающего устройства с выпол- . нением предыдущей операции. При отношении между временем выборки иэ оперативного запоминающего устройства и средним временем выполнения операции 1:1 производительность предлагаемого процессора на 20% больше,чем известного процессора.

Формула изобретения

1. Процессор, содержащий накапливающий сумматор, блок стековой памя962964 ти результатов, регистр команд и блок управления, причем выход регистра команд соединен с первым входом блока управления и входом кода операции накапливающего сумматора, информационный вход накапливающего сумматора подключен к выходу блока стековой памяти результатов, а выход накапливающего сумматора - к первому входу блока стековой памяти результатов, отличающийся тем, что,,с целью повышения быстродействия процессора, он содержит блок стековой памяти операндов, триггер операнда и триггер операции, при этом первый вход блока стековой памяти операндов соединен с выходом регистра команд, а первый выход — с информационным входом накапливающего сумматора, управляющие вход и выход блока стековой памяти операндов подключены соответственно к первому выходу и второму входу блока управления, третий и четвертый входы которого соедииены с выходами соответственно триггера операнда и триггера операции, второй, третий, четвертый и пятый. выходы блока управления подключены соответственно к нулевому и единичиому входам триггера операнда и нуле вому и единичному входам триггера операции, шестой и седьмой выходы блока управления соединены соответственно со входами разрешения приема и вЫцачи блока стековой памяти результатов, восьмой и девятый выходысоответственно с входами разрешения приема операнда и приема кода операции сумматора, десятый и одиннадца-. тый выходы - cooTseTcTseHqo с входаии разрешения приема и выдачи информации блока стековой памяти операнsos а двенадцатый и тринадцатый выходы блока управления подключены соответственно к входам разрешения выдачи и сдвига информации регистра команд, причем вход управления суммированием процессора соединен с пятым входом блока управления, вход управления записью процессора подключен- к шестому входу блока управления, четырнадцатый и пятнадцатый выходы блока управления соединены соответственно с выходом разрешения выдачи адреса процессора и выходом разре-. шения выдачи информации процессора, а-вход и выход блока стековой памяти операндов являются информационными входом и выходом процессора.

2. Процессор по п. 1, о.т л и— ч а ю шийся тем, что блок управления содержит. триггер готовности сумматора, триггер готовности памяти, счетный триггер, дешифратор признака записи, элементы И, элементы ИЛИ, элементы НЕ и элемент И-НЕ, при этом счетные в оды триггеров готовности сумматора и готовности памяти и пер. вый вход первого элемента И подключе- . ны к выходу генератора тактовых импульсов, первые входы триггера готовности сумматора и триггера готовности памяти соединены соответственно с пятым и шестым входами блока, а входы дешифратора признака записи — с первым входом блока, первый и второй входы элемента И-НЕ подключены соответственно к прямому выходу тригге10 ра готовности сумматора и первому выходу дешифратора признака записи, а выход этого элемента — к второму входу первого элемента И, третий вход которого соединен с прямым выходом

)5 триггера готовности памяти, а вы-! ход — со счетным входом счетного триггера и первыми входами второго, третьего и седьмого элементов И,прямой выход счетного триггера подключен .2О к второму входу второго элемента И, а инверсный выход — к второму входу третьего элемента И и информационному входу счетного триггера, инверсный выход триггера готовности сумматора соединен с первыми входами четвертоГо и Пятого элементов И, вторые входы которых подключены к первому выходу дешифратора признака записи, выход второго элемента И соединен с третьим входом.-пятого элемента И и вторыми входами шестого и седьмого элементов И, выход третьего элемента . И подключен к третьему входу четвертого элейента И и первым входам восьмого и девятого элементов К, второй выход дешифратора признака записи соединен с третьим входом шестого элемента И и вторым входом девятого элемента И, третий выход дешифратора признака записи подключен к третье

46 му входу седьмого элемента H и второму входу восьмого элемента И,выход четвертого элемента И соединен с вторым входом триггера готовности сумматора, первыми входами десятого, один45 надцатого и двенадцатого элементов

И, с третьим, четвертым и двенадцатым выходами блока, выход пятого элемента И подключен к первым входам тринадцатого и четырнадцатого элементов

59 И, четвертого элемента ИЛИ и восьмому выходу блока, вход первого элемента НЕ соединен .с вторым входом блока и вторым входом десятого элемента И, а выход первого элемента HE — с вторым входом двенадцатого элемента И, вход второго элемента HE подключен к четвертому входу блока и вторым входам одиннадцатого и четырнадцатого элементов И, а выход второго элемента НŠ— к третьим входам десятого и двенадцатого элементов И и второму входу тринадцатого. элемента И, выход десятого элемента И соединен с первыми входами первого и второго элементов ИЛИ, выход одиннадцатого элемента И вЂ :с вторым входом первого

962964 фие. 1 элемента ИЛИ и первым входом третьего элемента ИЛИ, выход двенадцатого элемента И вЂ” с третьим входом первого элемента ИЛИ и вторым входом третьего элемента ИЛИ, выход тринад,цатого элемента И - с четвертым; входом первого, элемента ИЛИ и вторым входом второго элемента ИЛИ, выход четырнадцатого элемента И вЂ” с пятым входом первого элемента ИЛИ и третьим входом третьего элемента ИЛИ,выходы первого, второго, третьего и четвертого элементов ИЛИ подключены соответственно к девятому, десятому, шестому и тринадцатому выходам блока. выход шестого элемента И соединен с вторыми входами триггера готовности памяти и четвертого элемента ИЛИ и четырнадцатым выходом блока, выход седьмого элемента И подключен к третьему входу четвертого элемента

ИЛИ и первым входом пятого и шестого элементов ИЛИ, выход восьмого элемента И соедннен с первым входом седьмо»

1 го элемента ИЛИ и двенадцатым выходом блока, выход девятого элемента И подключей к вторым входам пятого и шестого элементов ИЛИ, двенадцатому и пятнадцатому выходам блока, первый и второй входы пятнадцатого элемента

И соединены соответственно с третьим входом блока и выходом шестого элемента ИЛИ, выходы пятого элемента ИЛИ и пятнадцатого элемента И подключены о соответственно к одиннадцатому и первому выходам блока, второй вход седьмого элемента ИЛИ соединен с шестым входом блока, а выход — с вторым и пятым выходами блока, седьмой выход

35 блока подключен к его пятому входу.

Источники информации, принятые во внимание при экспертизе

1. Авторское свидетельство СССР щ 9 391562, кл. G 06 F 9/10, 1973.

2. Авторское свидетельство СССР

Р 284431, кл. С 06 F 9/04, 1971 (прототип).

962964

17

}en

И.

Составитель Г. Виталиев

Редактор И.Михеева Техред М.Тепер корректор Е.Рошко

Заказ 7515/70 Тираж 731 Подписное

ВНИИПИ Государственного комитета СССР по делам изобретений и открытий

113035, Москва, Ж-35, Раушская наб., д. 4/5

Филиал ППП "Патент",. r. Ужгород, ул. Проектная, 4

Процессор Процессор Процессор Процессор Процессор Процессор Процессор 

 

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

Изобретение относится к вычислительной технике и может быть использовано для определения состава и веса критических путей в орграфе без петель

Изобретение относится к вычислительной технике и может быть использовано в электронной цифровой вычислительной машине

Изобретение относится к вычислительной технике и может быть использовано в электронной цифровой вычислительной машине

Изобретение относится к вычислительной технике и может быть использовано в вычислительных системах для связи процессоров с внешними устройствами, между процессорами, а также между процессорами и запоминающими устройствами

Изобретение относится к вычислительной технике и используется для обработки сигналов, которые состоят из множества компонентов, каждый из которых представляет какой-то один аспект физического объекта

Изобретение относится к электронным играм

Микроэвм // 2108619
Изобретение относится к области микропроцессорной техники, в частности, может применяться для реализации обмена информацией

Изобретение относится к системам передачи стоимости товара при безналичных операциях
Наверх