Устройство для выборки команд

 

Изобретение относится к устройствам для предварительной выборки команд ЭВМ, к которым предъявляются высокие требования по быстродействию, аппаратурным затратам и энергопотреблению . Цель изобретения - повышение быстродействия устройства. Для этого в устройство введены триггер 12 перехода , шифраторы 14 и 15 команды пе25 X . W гз О) iptjt.l

СОЮЗ СОВЕТСКИХ

РЕСПУБЛИК (19) (11) (511 4 G 06 F 9/36

ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 3779794/24-24 (22) 10.08.84 (46) 30. 03. 86 . Бюл. 9 12 (72) А.Ю.Веревкин и Ю.С.Мануйлов (53) 681.325 (088.8) (S6) Королев Л.Н. Структуры ЭВМ и их математическое обеспечение. N.. Наука

1978, с. 109.

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

В 1149257, кл. G 06 F 9/36, 1984. (54) УСТРОЙСТВО ДЛЯ ВЫБОРКИ КОМАНД (57) Изобретение относится к устройствам для предварительной выборки команд 3ВМ, к которым предъявляются высокие требования по быстродействию, аппаратурным затратам и энергопотреблению. Цель изобретения — повышение быстродействия устройства. Для этого в устройство введены триггер 12 перехода, шифраторы 14 и 15 команды пе1 221652 рехода и условного перехода, накапливающий сумматор 5 и третий элемент И

8. Вход и выход шифратора 14 соединены с выходом блока 3 памяти команд и установочным входом триггера 12. Первый и второй входы сброса и выход триггера 12 подключены к синхровходу устройства, первому выходу шифратора

15 и входу сброса триггера 9 записи и установочному входу триггера 10 чтения. Установочный вход, синхровход, счетный вход, вход вычитания, информационный вход, информационный выход и выход переноса сумматора 5 соединены с первым адресным входом и синхровходом устройства, выходом

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

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

На фиг. 1 изображена структурная схема устройства; на фиг. 2 — пример выполнения шифратора команды перехода; а на фиг. 3 — пример выполнения шифратора команды условного перехода. 15

Устройство содержит (фиг. 1) счетчики 1 и 2 младшего и старшего адреса, блоки 3 и 4 памяти команд и результата, накапливающий сумматор 5, элементы И 6 — 8, триггеры 9 — 12 20 записи, чтения, признака адреса и перехода, схему 13 сравнения, шифраторы 14 и 15 команды перехода и команды условного перехода, первый и второй адресные входы 16 и 17, выход

18 признака адреса, выход 19 сопровождения команды, вход 20 запроса, тактовый вход 21, синхровход 22,вход

23 условия, информационный выход 24, первый и второй адресные выходы 25 З0 и 26. Шифратор 14 (фиг. 2) содержит дешифратор 27 и элемент ИЛИ 28. Шифратор. 15 (фиг. 3) содержит дешифратор 29, первый элемент ИЛИ 30,группу третьего элемента И 8, вторым выходой .шифратора 15, выходом блока 4 памяти результата, вторым входом схемы 13 сравнения и вторым входом сброса триггера 11 признака адреса. Первый и второй входы шифратора 15 подключены к выходу блока 4 и входу условия устройства. Первый и второй входы и выход элемента И 8 соединены соответственно со вторым выходом шифратора !5, выходом элемента И 6 и выходом сопровождения команды устройства.

Кроме того, устройство содержит счетчики 1 и 2 младшего и старшего адреса и второй элемент

И 7. 3 ил. элементов И 31, второй элемент ИЛИ 32 и три элемента И 33 - 35.

Счетчики 1 и 2 предназначены для счета младшей и старшей части адреса очередной команды, выбираемой из блока 3 памяти и образуют единый счетчик команд. Блок 3 памяти предназначен для хранения команд. Блок 4 памяти предназначен для промежуточного хранения команд, выбираемых из блока 3, и представляет собой быстро" действующий блок памяти, имеющий раздельные входы записи и чтения.

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

Он имеет установочный вход, через который производится начальная запись информации при подаче сигнала на синхровход, счетный вход (вход суммирования младшего разряда), информационный вход, на который поступает код, подлежащий вычитанию, вход вычитания, по сигналу с которого происходит разрешение на выполнение этой операции, информационный выход и выход переноса. Элемент И 6 предназначен для формирования сигнала считывания команды при наличии запроса с входа 20 и отсутствии запрета с выхода триггера 10. Второй эле1221652 4 мент И 7 предназначен для формирования сигналов записи в блок 4 при наличии тактового сигнала со входа

21 и разрешения с выходов триггеров

9 и 11. Третий элемент И 8 предназначен для запрета выдачи сигнала сопровождения команды на выход 19 при выполнении команд условного перехода, исполняемых самим устройством для выборки команд.

Триггер 9 предназначен для выдачи сигнала Запрет записи", если в блоке 4 нет свободного места. Триггер

10 предназначен для выдачи сигнала

"Запрет чтения", если блок 4 пуст.

Триггер 11 предназначен для выдачи сигнала на выход 18, если адрес записи в блок 4 на сумматоре 5 оказался больше адреса на счетчике i. Триггер 12 предназначен для выдачи сигнала при наличии в блоке 4 команды перехода. Схема 13 сравнения предназначена для выдачи сигнала при совпадении кодов на выходах счетчика 1 и сумматора 5. Шифратор 14 предназначен для выдачи сигнала при записи в блок 4 команды перехода. Шифратор

15 при появлении на выходе 24 команды условного перехода вырабатывает сигнал на первом выходе, если условия с входа 23 выполнены и переход необходим, и на втором выходе, приводя схему в исходное состояние, если выполняется следующая команда. Единичные сигналы на выходах элементов И 31 группы свидетельствуют о том, что условия данной команды условного перехода выполнены, т.е. переход необходим. Сигнал на выходе элемента 34 равен ."1", когда A = 00-0, т.е. устройство в состоянии выполнить команду перехода.

Входы 16 и 17 используются для занесения адреса команды в счетчики

1 и 2 и сумматор 5 в начале работы и при выполнении команд переходов.

Занесение адреса сопровождается синхросигналом с входа 22, приводящим в исходное состояние триггеры 9 — 11.

На вход 20 поступают запросы на очередную команду, которые прекращаются после выдачи сигнала с выхода 19, свидетельствующего о готовности команды на выходе 24. На вход 21 поступает последовательность импульсов от генератора, период которых равен циклу обращения .к памяти. Предполагается, что сигналы на входах 20 и

t5

21 сдвинуты относительно друг друга.

На выходы 25 и 26 поступает адрес выполняемой команды. Причем если на выходе 18 имеется сигнал "1", то код на выходе 25 должен уменьшаться на

"1" для получения действительного значения адреса. На вход 23 из арифметического устройства поступают признаки, по которым может происходить условный переход.

Устройство работает следующим образом.

В блоке 3 памяти находятся команды, подлежащие выполнению. Устройство приходит в исходное состояние при подаче на входы 16 и 17 адУ реса начальной команды, сопровождаемой синхросигналом с входа 22. При этом старшие разряды адреса команды записываются в счетчик 2, а младшие— в счетчик 1 и сумматор 5. Кроме того, сигнал с выхода 22 устанавливает триггер 9 в состояние "1", а триггеры 10 и 11 — в состояние "0". Сигнал с выхода триггера 11 поступает на выход 18 и свидетельствует о том, что код на выходе сумматора 5 не больше кода на выходе счетчика 1.

Сигналы запроса с входа 20 не проходят через элемент И 6 и не удовлетворяются, так как блок 4 пуст.

Сигнал с входа 21 (от генератора импульсов), пройдя через элемент И 7, поступает на вход чтения и обеспечивает считывание команды из блока 3 по адресу, хранящемуся в счетчиках

1 и 2, и по заднему фронту, поступив на вход записи блока 4, записывает эту команду по адресу, находящемуся в счетчике 1. Кроме того, сигнал с выхода элемента И 7 увеличивает на

"1" содержимое счетчика 1, подготавливая адрес следующей команды, а также устанавливает в "1" триггер 10, разрешая чтение из блока 4. Если после окончания очередного чтения из блока 3 оказывается, что код в счетчике 1 совпадает с кодом в сумматоре 5, то блок 4 полностью занят.

Задний фронт сигнала с выхода элемента И 7 поступает на синхровход триггера 9, и, поскольку на выходе схемы 13 присутствует сигнал "1", триггер 9 установится в состояние "0" и закрывает элемент И 7. Заполнение блока 4 прекращается.

Если блок 4 не пуст, то запрос на команду, пройдя через элемент И 6, 1221652 поступает на вход чтения блока 4, в результате на выход 24 считается команда, хранящаяся по адресу на выходе сумматора 5, а на выход 19 поступает сброс выдачи. Сигнал с выхода элемента И 6 прибавляет "1" к содержимому сумматора 5, и, сбросив триггер 9, разрешает считывание из блока 3. Если при чтении из блока 4 1О происходит совпадение кодов на выходах счетчика 1 и сумматора 5, то блок 4 полностью выбран. При этом по заднему фронту сигнала с выхода элемента И 6 триггер 10 переводится 15 в состояние "0", элемент И 6 закрыт, а чтение команд запрещено. В результате триггер 9 сбрасывается первой командой чтения из блока 4, а триггер 10 — первой командой записи в 20 блок 4.

Если блок 4 не пуст, то запрос на команду, пройдя через элемент И 6, поступает на вход чтения блока 4,что обеспечивает считывание команды, 25 хранящейся по адресу на выходе сумматора 5, на выход 24 и поступление на выход 19 строба выдачи. Сигнал с выхода элемента И 6 прибавляет "1" к содержимому сумматора 5, и, сбросив ЗО триггер 9, разрешает чтение из блока 3. Если при чтении из блока 4 происходит совпадение кодов на выходах счетчика 1 и сумматора 5, то блок 4 полностью выбран. При этом по заднему фронту сигнала с выхода элемента И 6 триггер 10 переводится в состояние "0", а элемент И 6 закрыт, т. е. чтение команд запрещено. В результате триггер 9 сбрасывается пер- 4О вой командой чтения из блока 4, а триггер 10 сбрасывается первой командой записи в блок 4.

Рассмотрим процедуру изменения адресов в счетчиках 1 и 2 и сумматоре 45

5. В исходном состоянии в счетчик 1 и сумматор 5 заносится один и тот же код и сумматор 5 выполняет функцию чета младшей части адреса следующей команды. Поскольку чтение из ячейки блока 4 происходит только после записи информации в нее, то адрес за-писи в счетчике 1 больше адреса чтения в сумматоре 5. В этом случае адрес очередной команды, подлежащей 55 выполнению, получается на выходах

25 и 26, т.е. старшие разряды адреса поступают со счетчика 2, а младшие— с сумматора 5. Однако если счетчик 2 обнулен (00-0) и в некоторый момент произошла запись в блок 4 по последнему адресу 11-1 (содержимое счетчика 1), а чтение должно происходить из ячейки с адресом-.11-0, тогда следующий импульс с выхода элемента И 7 обнуляет счетчик 1, сигнал переноса которого прибавит "1" к содержимому счетчика 2 (0-01) и устанавливает в единичное состояние триггер 11.В этом случае код на выходе счетчика 1 оказывается меньше кода на выходе сумматора 5 и для получения действительного адреса следующей команды 11-0 необходимо вычесть "1" из кода в счетчике 2 (выход 25), о чем свидетельствует сигнал "1" на выходе 18.

Поскольку адрес следующей команды необходим для выполнения команды перехода относительно текущего адреса команды, то формирование нового адреса происходит в арнфметико-логическом блоке путем суммирования текущего адреса со смещением. В связи с этим вычитание указанной "1" не вызывает трудностей. Когда в приведенном примере происходит переполнение сумматора 5, то сигнал переноса сбрасывает триггер 11, на выходе

19 оказывается "0" и, следовательно, код на выходах 25 и 26 соответствует адресу очередной команды.

Рассмотрим работу устройства при выполнении команды условного перехода. Пусть с выхода блока 3 на вход шифратора 14 поступает команда условного перехода. Формат команды представлен на фиг, 2 и содержит код операции (КОП) и смещение относительно текущего адреса А, и А . В системе команд ЭВМ может быть несколько команд условного и безусловного перехода (по нулю сумматора, переполнению и т.п.) ° Если дешифратор 27, проанализировав код операции, выявляет одну из команд перехода, то на выходе элемента ИЛИ 28 появляется

"1". Сигнал с выхода шифратора 14 устанавливает в единичное состояние триггер 12, который переводит триггеры 9 и 10 в состояние, соответствующее полному заполнению блока 4 и удерживает их в этом состоянии. В результате запись в блок 4 запрещена (элемент И 6 закрыт), а чтение разрешено. После очередного запроса ко1221652 манды с входа 20 на выходе 24 появляется команда перехода, которая поступает на вход шифратора 15 (фиг. 3), причем команды предшествующие команде перехода, находятся в блоке 4.

На второй вход шифратора 15 с входа

23 устройства поступают признаки, -"по которым может происходить условный переход. При этом на выходе де- 1О шифратора 29 появляется сигнал "1", если поступила команда перехода.

Если при этом выполнено соответствующее условие (например, в арифметическом устройстве содержится "0"), 15 то на выходе соответствующего элемента И 31 группы появляется "1", которая, пройдя элемент ИЛИ 32, поступает на входы элементов И 33 и 35.

Устройство может самостоятельно 20 выполнить команду условного перехода, если переход происходит не более чем на A< = 11-1 команд вверх по программе, причем разрядность совпадает с разрядностью счетчика 1 и сумматора 5. В этом случае все команды, предшествующие команде условного перехода, находятся в блоке 4. Если

А,= 00-0, то на выходе элемента И 34 появляется сигнал "1", свидетельст- 30 вующий о приходе команды условного перехода, которую может самостоятельно выполнить устройство. Если

A = 00-0, то сигнал с выхода элемента И 34 поступает на вход элемента И 33 и на его выходе появится "1" которая поступает на вход элемента

И 8 и закрывает его. В результате эта команда условного перехода не передается для исполнения. Кроме то- 40 го, этот же сигнал поступает на вход сумматора 5 и задает в нем режим вычитания. При этом из содержимого сумматора 5 вычитается код смещенияпоступивший с выхода 24. Таким 45 образом, в сумматоре 5 оказывается адрес начальной команды цикла, записанного в блоке 4. Выполнение цикла повторяется. Повторение продолжается до тех пор, пока на втором выходе шифратора 15 не появляется сигнал, означакнций, что .признак, вызывающий условный переход, отсутствует и должна выполняться команда, следующая за командой условного перехода. В этом 55 случае сигналом с. выхода элемента И

35 сбрасывается триггер 12, а триггер 10 устанавливается в состояние, соответствующее пустому блоку 4.

Другим способом выхода из данного режима является появление команды перехода, которую устройство самостоятельно не выполняет. Тогда переход происходит обычным путем, т.е. осуществляется занесением нового содержимого в счетчики 1 и 2 и сумматор 5 с входов 16 и 17 в сопровождении сигнала 22, который сбрасывает триггер 12.

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

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

I переноса счетчика младшего адреса соединен со счетным входом счетчика старшего адреса и установочным входом триггера признака адреса, вьщод и первый .вход сброса которого подключены соответственно к выходу признака адреса и синхровходу устройства,первый и второй входы первого элемента И соединены соответственно свходом saпроса устройства и выходом триггера чтения, а выход первого элемента Й подключен к синхровходу триггера чтения, входу чтения блока памяти результата и первому установочному входу триггера записи, первый и второй входы второго элемента И соединены соответственно с тактовым входом уст1221652

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

5 синхровходу триггера записи, первому входу сброса триггера чтения и счетному входу счетчика младшего адреса, второй установочный вход триггера записи и второй вход сброса триггера чтения соединены с синхровходом устройства, а информационный вход и выход блока памяти результата подключены соответственно к выходу блока памяти команд и информационному выходу устройства, о т л и ч а ю щ е ес я тем, что, с целью повышения быстродействия, оно содержит шифратор команды перехода, шифратор команды условного перехода, триггер перехода, 2О третий элемент И и накапливающий сумматор, установочный вход, синхровход, счетный вход, вход вычитания, информационный вход, информационный выход и выход переноса которого соединены 25 соответственно с первым адресным входом и синхровходом устройства, выходом первого элемента И, первым выходом шифратора команды условного перехода, выходом блока памяти результата, вторым входом схемы сравнения и вторым входом сброса триггера признака адреса, кроме того, информационный выход накапливающего сумматора подключен к второму адресному входу 35 блока памяти результата и второму адресному выходу устройства, вход и выход шифратора команды перехода сОединены соответственно с выходом блока памяти команд и установочным входом триггера перехода, первый и второй входы сброса которого подключены соответственно к синхровходу устройства и второму выходу шифратора команды условного перехода, ко- 45 торый соединен с третьим входом сброса триггера чтения, выход триггера перехода подключен к входу сброса . триггера записи и установочному входу триггера чтения, первый и второй входы шифратора команды условного перехода соединены соответственно с выходом блока памяти результата и входом условия устройства, а первый и второй входы и выход третьего элемента И подключены соответственно к первому выходу шифратора команды условного перехода, выходу первого элемента И и выходу сопровождения команды устройства.

2. Устройство по п. 1, о т л и— ч а ю щ е е с я тем, что, шифратор команды перехода содержит дешифратор и элемент ИЛИ, вход и выход которого соединены соответственно с выходом дешифратора и выходом шифратора, а вход дешифратора подключен к входу шифратора.

3. Устройство по и. 1, о т л и— ч а ю щ е е с я тем, что шифратор команды условного перехода содержит дешифратор, два элемента ИЛИ, три элемента И и группу элементов И,первые входы которых соединены с соответствующими выходами дешифратора и входами первого элемента ИЛИ, вход дешифратора подключен к первому входу шифратора, вторые входы и выходы элементов И группы соединены соответственно. с вторым входом шифратора и входами второго элемента ИЛИ, выход, первый и второй входы первого элемента И подключены соответственно к первому выходу шифратора, выходу второго элемента ИЛИ и выходу второго элемента И, входы которого соединены с первым входом шифратора, а первый и второй входы и выход третьего элемента И подключены соответственно к выходам первого и второго элементов ИЛИ и второму выходу шифратора.

1221652

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

Редактор Н.Воловик Техред В.Кадар Корректор Л.Патай

Заказ 1613/54 Тираж 671 Подписное

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

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

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

Устройство для выборки команд Устройство для выборки команд Устройство для выборки команд Устройство для выборки команд Устройство для выборки команд Устройство для выборки команд Устройство для выборки команд 

 

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

Изобретение относится к устройствам программного управления и предназначено для использования в составе автоматизированных систем управления и регулирования с использованием ЭВМ вышестоящего уровня

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

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

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

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

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

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

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

Изобретение относится к вычислительной технике

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