Устройство выборки команд процессора

 

Изобретение относится к области вычислительной техники и может бь1ть использовано для выборки команд длиной в слово и полуслово при построении процессора спецналнзированной ЭВМ среднего быстродействия. Цель изобретения - сокращение объема оборудования . Устройство выборки команд содерлдат вход 1 командного слова, вход 2 запуска, первьш 3 и второй 4 регистры, комментатор 5, дешифратор 6, элемент И 7, счетчик 8, блок 9 управления распаковкой команд, блок 10 микропрограммного управления, выход 11 команды и выход 12 адреса следующего командного слова, входы 13- 16 и выход 17 блока 9 управления распаковкой комаьщ, выходы 18-22 блока микропрограммного управления. 4 ил. 1 табл. (Л ю СХ5 /г

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

СОЦИАЛИСТИЧЕСКИХ

РЕСПУБЛИК

„„SU„„И ООВВ Л1 (511 4 С 06 F 9/00 н двтоеском свидетельств

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

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ (2 1) 4152489/24-24 (22) 26.11.86 (46) 15.07.88. Бюл. ¹ 26 (72) С.А.Орлов, А.С.Поляков и Г.Ф.Некрасов (53) 681.325 (088.8) (56) Коучи П.М. Архитектура конвейерных 3BM. M. Радио и связь, 1985, с. 267-268.

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

N- 610109, кл. С 06 F 9/00, 1976. (54) УСТРОЙСТВО ВЫБОРКИ КОМАНД ПРОЦЕССОРА (57) Изобретение относится к области вычислительной техники и может быть использовано для выборки команд длиной в слово и полуслово при построении проце.-.сора специализированной

ЭВМ среднего быстродействия. Цель изобретения — сокращение объема оборудования. Устройство выборки команд содержит вход 1 командного слова, вход 2 запуска, первый 3 и второй 4 регистры, коммутатор 5, депп фратор б, элемент И 7, счетчик 8, блок 9 управления распаковкой команд, блок

10 микропрограммного управления, выход 11 команды и выход 12 адреса следующего командного слова, входы 1316 и выход 17 блока 9 управления распаковкой команд, выходы i8-22 блока микропрограммного управления. 4 ил.

1 табл.

1410028

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

Цель изобретения — сокращение объема оборудования.

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

Устройство выборки команд процес= сора (фиг.1) содержит вход 1 командного слова и вход 2 запуска устройства, первый 3 и второй 4 регистры, оммутатор 5, дешифратор 6, элемент

7, счетчик 8, блок 9 управления аспаковкой команд, блок 10 микроограммного управления, выход 11 оманды и выход 12 адреса следующего омандного слова устройства, четверый 13, третий 14, второй 15 и перый 16 входы бпока 9 управления расаковкой команд, выход 17 блока 9, ыходы 18-22 блока 10.

Блок 9 управления распаковкой оманд (фиг.2) содержит сумматор 23 о модулю два, элемент 2И-ИЛИ 24, риггер 25.

Блок 10 микропрограммно î управлея (фиг.3) содержит регистр 26 адса микрокоманд, блок 27 памяти крокоманд, регистр 28 микрокоманд, ыходы 29-31 кода логических условий выходы 32- 34,адреса следующей микфокоманды регистра микрокоманд,. элеМент ЗИ-ИЛИ 35.

В структуре l0 использованы следующие обозначены, принятые в системе команд ЗВМ: RR - формат команды дли1лой в полуслово (2 байта), RX — формат команды дл лной в слово (4 байта) .

Принцип действия устройства основания на организации конвейерной выборки командных слов, при этом выделяется этап заполнения конвейера, >выполненного на регистрах 3, 4 в случае начальной загрузки адреса ко-1ланды, и этап работы конвейера по выборке командных слов. Регистры 3, 4 организованы так, что содержат по крайней мере одну команду.

Выборка командной информации из памяти осуществляется словами с использованием счетчика 8, при этом с выхода 12 устройства на вход памяти поступает укороченный адрес адрес слова, в котором обязательно содержится либо левое полуслово команд, либо вся команда.

Триггер 25 блока 9 управления распаковкой команд фиксирует факт расположения очередной команды на границе слова или полуслова. В первом случае на выходе блока 9 управления распаковкой команд вырабатывается сигнал с нулевым значением, во втором случае — с единичным значением. При заполнении конвейера происходит установка триггера 25 в исходное состояние, соответствующее значению (n-1)-ro младшего разряда счетчика 8. В процессе работы конвейера анализируется длина текущей исполняемой команды„ Если эта команда имеет длину в полуслово (формат RR), то состояние триггера 25 инвертиру" ется. Ксли текущая команда имеет длину в слово (формат КХ) то состоя ние триггера 25 не изменяется.

Сигнал с выхода блока 9 управления распаковкой команд управляет работой коммутатора 5, который подключает к выходу 11 устройства командное слово из первого и второго ре= гистров, начало которого всегда совпадает с началом текущей исполняемой команды. Код операции текущей команды с выхода коммутатора 5 поступает на вход дешифратора 6. По нулевому значению сигнала на управляющем входе коммутатор подключает выходы левой и правой половины первого регистра 3, по единичному значению— выходы регистра 4 и левой половины (старшие разряды) регистра 3.

Работу устройства рассмотрим на примере выборки командной информации при обработке некоторой по педова- тельности команд.

Предположим, что регистр 3 имеет

32 разряда (0-31 разряды — 2 полуслова), а регистр 4 — 16 разрядов (0-15 разряды — оцно полуслово), адрес памяти — 24 разряда (8-31 разряды). B качестве коммутатора может быть использован 32-разрядный коммутатор 2-1. Пусть в памяти, начиная с адреса с единичным значением 30-го

3 14100 ((и-1)-го) разряда, расположена последовательность команд RX, RR, RX.

На этапе заполнения конвейера в счетчик 8 загружается адрес первой команды, а со входа 2 устройства на

5 второй вход логических условий блока

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

20 блока 10 устанавливается сигнал с единичным значением и вырабатывается последовательность управляющих сигналов для заполнения конвейера: с выхода 18 блока 10 микропрограммного управления подается сигнал на загрузку регистра 3 командными словами из памяти (слово загружается .из ячейки, адрес которой определяется кодом на выходе 12 устройства), - с выхода 19 блока 10 в регистр

4 правого полуслова (16-31 разряды) из регистра 3.

В блоке 10 микропрограммного управления производится анализ содержимого 30-ro разряда счетчика 8, поступающего на его первый вход логических условий. При единичном значе, нии данного разряда с выхода 22 блока 10 подается управляющий сигнал на увеличение текущего значения счетчика 8 на +4. Новое значение адреса из счетчика 8 используется для выборки из памяти второго командного слова, которое загружается в регистр 3 по сигналу с выхода 18 блока 10. При нулевом значении 30-го разряда счетчика 8 второе обращение к памяти и заполнение регистра 3 не производится.

Далее с выхода 21 блока 10 микропрограммного управления выдается сигнал на вход 13 блока 9 управления распаковкой команд, разрешающей установку триггера 25 в исходное состояние, т.е. в "1" при единичном значении 30-ro разряда счетчика 8.

После заполнения конвейера на пятом выходе блока 10 устанавливается нулевое значение сигнала и начинается. работа конвейера.

С выхода 17 блока 9 управления распаковкой кома щ сигнал с единичным значением подается на управляющий вход коммутатора 5, который подключает к выходу 11 устройства первую команду RX для дальнейшей обра- 55 ботки, при этом на выходе дешифратора

6 появляется "0" — младший разряд длины команды RX в полусловах (" 10").

В этом случае на выходе элемента

И 7 формируется сигнал с нулевым значением, по которому блок 10 микропрограммного управления вырабатывает сигналы, вызывающие выборку из памяти очередного командного слова.

Выборка очередного командного слова заключается в следующем. По сигналу с выхода 22 блока 10 текущее значение счетчика 8 увеличивается на

+4. Одновременно с выхода 21 блока микропрограж ного управления на вход t3 узла 9 управления распаковкой комаьщ подается сигнал, разрешающий перевод триггера 25 в новое состояние (для фиксации факта расположения следующей команды на границе слова или полуслова). Так как текущая команда имеет формат RX, то состояние триггера 25 не изменяется, указывая тем самым, что очередная команда расположена на границе полуслова. По сигналу с выхода 19 блока 10 в регистр 4 записывается правое полуслово (1631 разряды) из регистра 3. По сигналу с выхода 18 блока 10 в регистр 3 загружается очередное командное слово, которое выбирается из памяти по новому адресу счетчика 8. Коммутатор

5 подключает на выход 11 устройства вторую команду КК, при этом на выходе дешифратора 6 появляется "1" младший разряд длины команды RR в полусловах ("01"). В этом случае на выходе элемента И 7 появляется сигнал с единичным значением, по которому блок 10 запрещает выборку очередного командного слова из памяти, но при этом разрешает перевод триггера 25 в новое состояние. Так как пишущая команда имеет формат RR то состояние триггера 25 изменяется на противоположное, и сигнал с нулевым значением с выхода 17 блока 9 управления распаковкой команд поступает на управляющий вход коммутатора 5, который подключает к выходу 11 устройства третью команду RX расположенную в регистре 3.

Работа блока 10 управления производится по синхросигналам.

Содержимое блока 27 памяти микрокоманд приведено в таблице.

Предлагаемое устройство предназначено для использования в секционированных процессорах управляющих микроЭВМ реального времени, реализующих систему команд ЕСЭВМ для форматов

1410028

Микрокоманда

Адрес следующей

ИК

Микрооперация

Проверяемое условие

11 10 9 8 7 6 5 4 3 2

Разряды IK

18 19 20 21 22 29 30 31 32 33 34

0 0 0 0 0 0 0 1 0 0

0000

RR, КБ, BX и построенных на микросхемах серий 582, 583,,584, 587, 588, 1802, 1804.

Устройство подключается к стан5 дартным шинам процессора. Вход i подключается к шине данных процессора, вход 2 — к выходу блока микропрограм. :много управления процессора, выход

12 — к адресной шине процессора. Вы ход 11 подключается к адресному ( входу блока микропрограммного управ " ления процессора (для передачи кода операции), информационному входу опе рационного устройства процессора

15, (для передачи смещения D2) и адрес, ным входом регистров общего назначе( ния процессора (для передачи регист ровых адресов R1, R2 (Х2), В2) .

Блок 10 управления может быть совмещен с блоком микропрограммного управления процессора. (;Формула изобретения

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

35 по модулю два, элемент 2И-ИЛИ и триггер, причем вход командного слова устройства соединен с информационным входом первого регистра, выход поля старших разрядов которого соединен с первыми входами первой и второй групп информационных входов коммутатора, второй вход первой группы информационных входов которого соединен с выходом поля младших разрядов первого регистра и с информационным входом второго регистра, выход которого соединен с вторым входом второй группы информационных входов коммутатора, выход которого соединен с входом дешифратора и с выходом команды устройства, группа выходов адреса следующего командного слова которого соединена с группой N выходов счетчика, (N-1)-й выход счетчика соединен, кроме того, с первым прямым входом элемента 2И-ИЛИ и с первым входом логических условий блока микропрограммного управления, (N-pasрядность выходов адреса следующего командного слова), второй и третий входы логических условий которого соединены соответственно с входом запуска устройства и с выходом элемента И, первый вход которого соединен с выходом дешифратора и с первым входом сумматора по модулю два, выход которого соединен с вторым прямым входом элемента 2И-HJ1H выход которого соединен с информационным входом триггера, выход которого соединен с вторым входом сумматора по модулю два, с вторым входом элемента И и с управляюшим входом коммутатора, первый выход блока микропрограммного управления соединен с синхровходом триггера, второй выход блока микропрограммного управления соединен с третьим прямым и инверсным входами элемента 2И-ИЛИ с третьего по пятый

9 выходы блока микропрограммного управления соединены соответственно с входами записи первого и второго регистров и со счетным входом счетчика.

1410023

Продолжение таблицы

Иикрокоманда

Микрооперация

Проверяемое Лдрес следующей условие ИК

0 0 0 0 0 1 . 0 0 1 0 1

0010

1 0 0 0 1 0 0 0 0 1 0

0011

1 0 0 1 0 1 0 0 1 1

0100

0 0 1 0 1 0 0 0 0 0

01 10

0 0 1 1 0 0 0 1 0 0

0111

0 0 0 1 0 0 0 0

1000

0 0 1 1 0 0 0 0 1

1010

1011

0 1 0 0 0 0 0 0 1

1100

1 0 0 0 0 0 0 0 0 0 0

1110

0 0 1 0 0 С 0 0 0 0 0 I410028

f u

УЮ !УЯР/ zz

Устройство выборки команд процессора Устройство выборки команд процессора Устройство выборки команд процессора Устройство выборки команд процессора Устройство выборки команд процессора Устройство выборки команд процессора 

 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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