Устройство для сопряжения процессора с общей магистралью
Иллюстрации
Показать всеРеферат
Изобретение относится к области вычислительной техники и может быть использовано в качестве периферийного вычислителя совместно с векторным процессором (ВП) для быстрой обработки геофизической, медицинской и визуальной информации и для управления сложными технологическими объектами в реальном времени, С целью распшрения области применения и повьшения производительности в устройстве реализована конвейерная обработка данных различных форматов. Достижение поставленной цели обеспечивает., ся введением блока обслуживания обмена и блока маскирования запросов, позволяющих расширить область применения устройства за счет обработки как фиксированных, так и комплексных чисел, а также строк символов. Связи между блоками регистровой памяти и оперативной буферной памяти со счетчиком длины вектора и блоком обслуживания обмена, соединенного с блоком синхронизации обмена, подключенным к магистрали, к которой подкдпочены также выходы блока выдачи запросов, обеспечивают повышение быстродействия контроллера. 5 ил. г (Л
СОЮЗ СОВЕТСНИХ
СОЦИАЛИСТИЧЕСНИХ
РЕСПУБЛИН
А1
ÄÄSUÄÄ 1291 (11 4 G 06 F 15/16
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
К АВТОРСКОМ,Ф СВИДЕТЕЛЬСТВУ ф ГPI10»: ц
ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 3932345/24-24 (22) 31.07.85 (46) 23.02.87. Бюл. У 7 (71) Институт проблем управления (автоматиги и телемеханики) (72) С. В. Шевцов, В. В. Соколов, А. В. Вейц, В. Д. Малюгин, В. А. Жуков, Я. А; Левертов и И. Ф. Дятчина (53) 681.325(088.8) (56} Быстродействующий периферийный процессор "Электроника МТ-70". —
Управляющие системы и машины, 1983, У 4, с. 122-125.
Авторское свидетельство СССР
В 1065852, кл. G 06 F 15/16, 1982. (54) УСТРОЙСТВО ДЛЯ СОПРЯЖЕНИЯ ПРОЦЕССОРА С ОБЩЕЙ. МАГИСТРАЛЬЮ (57.) Изобретение относится к области вычислительной техники и может быть использовано в качестве периферийного вычислителя совместно с векторным процессором (ВП) для быстрой обработки геофизической, медицинской и визуальной информации и для управления сложными технологическими объектами в реальном времени. С целью расширения области применения и повышения производительности в устройстве реализована конвейерная обработка данных различных форматов. Достижение поставленной цели обеспечивается введением блока обслуживания об" мена и блока маскирования запросов, позволяющих расширить область применения устройства за счет обработки как фиксированных, так и комплексных чисел, а также строк символов.
Связи между блоками регистровой памяти и оперативной буферной памяти со счетчиком длины вектора и блоком обслуживания обмена, соединенного с блоком синхронизации обмена, подключенным к магистрали, к которой подключены также выходы блока выдачи запросов, обеспечивают повышение быстродействия контроллера. 5 ил.
1 1291998 2
Изобретение относится к вычисли- 23 блока 1 сигналы синхронизации потельной технике и может быть исполь- ступают в блок 2. зовано совместно с векторным процессором для быстрой обработки геофизической, медицинской и визуальной информации и для управления сложными технологическими объектами в реальном времени.
Цель изобретения — расширение области применения устройства за счет воэможности подключения процессоров векторной обработки, конвейерной обработки запросов прямого доступа к памяти на векторные операции с данными различных форматов — целыми, с фиксированной и плавающей точками, комплексными строками символов.
На фиг. 1 представлена структурная схема устройства для сопряжения; на фиг. 2-5 — функциональные схемы блока синхронизации обмена, блока обслуживания обмена, блока маскирования запросов и блока выдачи запросов.
Устройство (фиг. 1) содержит блок
1 синхронизации обмена, блок 2 обслуживания обмена, блок 3 регистровой памяти, блок 4 оперативной буферной памяти, счетчик 5 длины вектора, блок 6 маскирования запросов, регистр
7 запросов, регистр 8 готовности, блок 9 выдачи запросов. Устройство подключается через шины 10 и 11 данных и управления процессора к векторному процессору, а через общую магистраль 12 — к другим устройствам вичислительной системы, например к скалярному процессору..
Блок 1 синхронизации обмена (фиг. 2) содержит четыре триггера
13-16 и четыре элемента И 17-20.
Через вход 21 управляющей информации блока 1 поступают стандартные сигналы с внутримьппечной общей магистралью 12, причем на первый вход элемента И 17 поступает сигнал "Ведущий, на вход установки триггера
13 — сигнал "Запрос работы векторного процессора", на информационные входы триггеров 14 и 15 — сигнал
"Захват подшины данных" и сигнал
"Признак адреса или данных" соответственно. На входы синхронизации триггеров 16 и 15 поступают внешние синхроимпульсы "СИ1" и "СИ2" соответственно. На выходе 22 подтверждения формируется соответствующий признак в общую магистраль 12. Через выход
1О
Блок 2 об -луживаниа обмена (фиг. 3) содержит элемент ЗИ-ИЛИ 24. первьп 25 и второй 26 элементы И, первый 27 и второй 28 элементы ИЛИ, элемент 2И-ИЛИ 29, триггер 30. Соответствующие сигналы поступают в блок
2 через вход 31 признаков длины запросов, вход 32 признаков синхронизации и вход 33 признаков готовности. На выходе 34 сброса формируется соответствующий сигнал для сброса регистра 8, а на выходе 35 признаков обмена — управляющие сигналы для блока 3. На первые входы элемента ЗИ-ИЛИ 24 поступают сигналы, свидетельствующие о том, двойными или ординарными являются соответствующие запросы на очередные элементы вектора или результат. На вторые входы элемента ЗИ-ИЛИ 24 поступают сигналы готовности выдать результат или принять очередные элементы вектора, признак готовности выдать результат подается также на второй вход элемента
И 26, на второй вход элемента И 25 поступает признак отсутствия запроса на выдачу результата. На выходах триггера 30, элемента ИЛИ 28 и элемента И 26 формируются сигналы разрешения обмена данными записи данных и чтения резупьтата для блока 3 с обшей магистралью 12, i
Блок 6 маскирования запросов (фиг. 4) содержит три счетчика 36-38, три элемента И 39-41, элемент 2И-ИЛИ
42 и входы 43 и 44. Через вход 43 запросов блока 6 на информационные входы счетчиков 36-38 поступают соответствунпцие константы (маска), а на счетные входы — запросы на выдачу результата и элементов вектора, приходящие от устройства управления векторного процессора. На первый и втотретий входы элемента 2И-ИЛИ 42 поступает сигнал, определяющий, по какому из запросов будет подсчитываться длина вектора. На выходах элементов
И 39-41 формируются запросы на выдачу результата, прием элементов первого и второго векторов соответственно, которые через выход 45 запросов поступают в регистр 7, а на выходе 46 признака длины вектора формируется сигнал для подсчета длины вектора в счетчике 5, 3 12919
Блок 9 выдачи запросов (фиг. 5 содержит элемент ИЛИ 47, элемент
И 48 и ключ 49. На вход 50 стробирования и информационный вход 51 блока
9 поступают сигналы с выходов регистра 7 и 8 соответственно. Выход 52 блока 9 подключен к соответствующим шинам общей магистрали 12.
Блок 1 синхронизации обмена предназначен для установки всех элементов 1О устройства в исходное состояние, захвата общей магистрали с квитированием, выработки сигнала начала работы, а также формирования стробирующих импульсов. 15
Сигнал на выходе элемента И 17 появляется при совпадении сигнала
"Ведущий" с входа 21 и сигнала с выхода триггера 13, возникающего при поступлении на его вход установки 20 импульса Запрос работы векторного процессора" с входа 21 и исчезающего при поступлении на его вход сброса сигнала с выхода элемента И 17.
Когда по магистрали приходит признак данных, поступающий на блок 1, блок 2 обслуживания обмена вырабатывает сигналы, обеспечивающие прием данных, идущих по магистрали 12 сразу же после этого признака. Если в регистр 7 запросов до этого времени не поступил ни один из запросов, то данные, пришедшие по магистрали
12, интерпретируются как длина вектора и записываются в специально вьщеленный регистр блока 3 регистровой памяти. Затем в нужный момент времени по сигналам, поступающим из шины
ll управления процессора, длина векСигнал на выходе элемента И 18 вырабатывается при одновременном наличии на его входах сигнала СИ2 и сигнала с выхода триггера 14, возникающего при поступлении на его вход 30 синхронизации импульса с выхода элемента И 17 при условии наличия на его информационном входе сигнала "Захват подшины данных".
Сигнал иа выходе триггера 16 появ- 35 ляется при поступлении на вход синхронизации импульса СИI с входа 21 при условии присутствия на его информационном входе сигнала с выхода триггера 15, который, в свою очередь 40 вырабатывается при совпадении сигналов СИ2 и "Признак адреса или данных" на его входах, поступающих на вход 21.
Триггер 16 разрешает прохождение сигналов СИI и СИ2 через элементы
И 20 и 19 соответственно.
Блок 2 обслуживания обмена предназначен для формирования сигналов, обеспечивающих приемопередачу информации между регистрами блока 3 регистровой памяти и общей магистралью.
Блок 6 маскирования запросов предназначен для разрешения или запрещения прохождения запросов в регистр 7 запросов устройства. 55
Запросы с входа 43, поступаюпие на соответствующие входы элементов
И 39-41, проходят на их выходы (выход 45) при условии наличия сигналов
98 4 разрешения от счетчиков 36-38 и строба на входе 44. Разрешающие сигналы на выходах счетчиков 36-38 присутствуют до тех пор, пока они не переполняются, подсчитывая запросы, поступающие на соответствующие счетные входы. На информационные входы счетчиков поступают сигналы, позволяющие сделать начальную установку счетчиков в требуемом состояние.
Злемент 2И-ИЛИ 42 пропускает на выход 46 запросы с выхода элемента
И 40,и 41 в зависимости от состояния сигнала, поступающего с входа 43.
Блок 9 выдачи запросов предназначен для посылки в определенный момент времени в общую магистраль запросов на очередные элементы вектора, Запросы проходят на выход ключа
49 при возникновении строба на выходе элемента И 48, при наличии разрешения от элемента ИЛИ 47. Разрешающий сигнал на выходе элемента ИЛИ 47 возникает, если на его входе есть хотя бы один запрос.
Устройство работает следующим образом.
На вход 21 блока 1 из магистрали
12 поступают сигналы, осуществляющие вызов векторного процессора и инициализацию его работы. По этой же магистрали 12 поступают импульсы, обеспечивающие синхронизацию приемопередачи информации по общей магистрали
12. Блок 1 вырабатывает сигнал на выходе 22 подтверждения готовности векторного процессора производить обмен, а также подает на вход 32 блока 2 обслуживания обмена импульсы, необходимые для стробирования информационных сигналов.
55
5 129199 тора переписывается из регистра блока 3 в счетчик 5 длины вектора, По шине Il управления поступают также запросы на получение очередных элементов вектора или выдачу результата. Если нет сигналов маскирования, эти запросы проходят через блок 6 маскирования запросов на информационный вход регистра 7 запросов. Сюда же поступают сигналы от шины 11, обес- 10 печивающие запись, выдачу запросов или установку регистра в исходное состояние. Прохождение запросов в регистр 7 запросов блокируется при поступлении соответствующих сигналов маскирования по шине ll управления или приходе сигнала переполнения счетчика 5 длины вектора на вход 44.
Часть запросов может маскироваться путем записи определенной константы 20 в соответствующие счетчики 36-38 блока 6 маскирования запросов.
При снятии маски запросы проходят не только в регистр запросов, а параллельно поступают на счетный вход счетчика 5 длины вектора, где суммируются до тех пор, пока не произойдет переполнение счетчика, свидетельствующее о том, что пришел последний операнд. После этого все очередные запросы блокируются, кроме того, сигнал с выхода переполнения счетчика по шине ll управления поступает в устройство управления векторного процессора для выработки соответствующих 35 действий. Запросы с выхода регистра
7 запросов поступают на информационный вход блока 9 выдачи запросов, и, если все предыдущие запросы были обслужены в регистре 8 готовности, вы- 40 рабатывается сигнал, по которому запросы на последующие элементы вектора выдаются с выхода 52 на магистраль 12.
Параллельно запросы из регистра
7 запросов поступают на информационный вход регистра 8 готовности и фиксируются в нем. По мере поступления операндов по магистрали 12. блок 2 обслуживания обмена в зависимости от того, двойные или ординарные операнды (определяются сигналами, поступающими на вход 31), подает на управляющий вход блока 3 сигналы, обеспечивающие загись одного или двух слов операндов в соответствующие регистры блока 3, адрес которых определяется сигналами, пбступающими
8 б на адресный вход блока 3. После приема очередного операнда блок 2 обслуживания обмена вырабатывает сигнал, поступающий на вход сброса регистра 8 готовности.и снимающего соответствующий запрос в регистре 8.
В случае обслуживания запроса на выдачу результата блок 2 выдает сигналы, обеспечивающие чтение данных из нужного регистра блока 3 в магистраль 12. После обслуживания всех текущих запросов разрешается перезапись очередных запросов из регистра 7 запросов в регистр 8 готовности и выдача их через блок 9 на магистраль 12, По мере обслуживания запросов сигналы готовности с выхода регистра 8 поступают на шину 11, а также на вход 33 блока 2 для выполнения необходимых действий по записи или считыванию информации.
Операнды, хранящиеся в регистрах блока 3, по шине 10 данных могут переда1аться либо в блок 4, либо в векторный процессор. Кроме того, устройство обеспечивает любое другое сочетание пересылок между блоками 3 н 4 и векторным процессором. Обмен данными по шине 10 осуществляется под управлением сигналов по шине 11, В предлагаемом устройстве на одной и той же аппаратуре реализована возможность векторной обработки чисел фиксированного и плавающего формата, а также комплексных чисел, аппаратно реализована возможность организации векторного потока одно-, двух- и трехмерных массивов с переменной длиной до 64 К слов, причем устройство выполнено на одной стандартной печатной европлате и обладает производительностью до 1,5 млн операций в секунду над однооперандными векторами с плавающей точкой и
0,5 млн операций в секунду над трехоперандными векторами, Формула изобретения
Устройство для сопряжения процесспра с общей магистралью, содержащее блок синхронизации обмена, блок обслуживания обмена, блок регистровой памяти, регистр запросов, регистр готовности, вход управляющей информации блока синхронизации обмена яв-, ляется входом шины управления общей магистрали, выход подтверждения блока синхронизации обмена является выходом
7 129! 998
20
35 сов подключены к информационному вхо- 45
55 соответствующей шины управления общей магистрали, выход признаков обмена блока обслуживания обмена подключен к входу управления обменом блока регистровой памяти, первый и второй информационные входы-выходы которого являются входами-выходами
IIIHH данных общей маГистрали и процессора соответственно, причем блок синхронизации обмена содержит два триггера и четыре элемента И, а блок обслуживания обмена содержит элемент
2И-ИЛИ, элемент ЗИ-ИЛИ, три элемента И, элемент ИЛИ и триггер, о т— л и ч а ю щ е е с я тем, что, с целью расширения области применения за счет возможности подключения процессоров векторной обработки, в него введены блок маскирования запросов, блок выдачи запросов, счетчик длины вектора и блок оперативной буферной
Памяти, информационный вход-выход и вход управления записью-считыванием которого подключены к шинам данных и управления процессора соответственно, вход адреса блока регистровой памяти соединен с соответствующей шиной управления процессора, выход блока регистровой памяти подключен к информационному входу счетчика длины вектора, выход переполнения которого подключен к входу блокировки блока маскирования запросов и является вьгходом соответствующей шины управления процессора, вход запросов блока маскирования запросов, входы управления записью, выдачей и сбросом регистра запросов и входы признаков длины запросов блока обслужива40 ния обмена являются входами соответствующих шин управления процессора, выход запросов и выход признака длины вектора блока маскирования запроду регистра запросов и .счетному вхо,ду счетчика длины вектора соответственно, выход регистра запросов подключен к информационным входам реги стра готовности и блока выдачи запросов, выход которого является выходом ,соответствуюш х шин управления общей магистрали, выход блока синхронизации обмена подключен к входу признаков синхронизации блока обслуживания обмена, вьгход сброса которого подклЮчен к одноименному входу регистра
\ готовности, выходы соответствуюших разрядов которого подключены к входу стробирования блока выдачи запросов, к входам признаков готовности блока обслуживания обмена и к выходам соответствующих шин управления процессора, причем в блок синхронизации обмена введены два триггера, первый вход первого элемента И, вход установки первого триггера, информационные входы второго и третьего триггеров и входы синхронизации третьего и четвертого триг еров образуют вход управляющей информации блока синхронизации обмена, выход первого триггера -подключен к второму входу первого элемента И, выход которого является выходом подтвержденея блока синхронизации обмена и подключен к входу сброса первого триггера и к входу синхронизации второго триггера, выход которого подключен к первому входу второго элемента И, второй вход которого соединен с первым входом третьего элемента И и с входом синхронизации третьего триггера, выход которого подключен к информационному входу четвертого триггера, вход синхронизации которого соединен с первым входом четвертого элемента
И, выход четвертого триггера подключен к вторым входам третьего и четвертого элементов И, выходы с второго по четвертый элементов И и четвертого триггера образуют выходы с первого по четвертый разрядов блока синхронизации обмена, первые входы третьего элемента И, первого элемента
И, второго. элемента ИЛИ и второго элемента И образуют входы с первого по четвертый разрядов признаков синхронизации блока обслуживания обмена, первые входы элемента ЗИ-ИЛИ образуют вход признаков длины операндов блока обслуживания обмена, вторые входы элемента ЗИ-ИЛИ и первого и второго элементов И образуют вход признаков готовности блока обслуживания обмена, выход сброса которого соединен с выходом элемента 2И-ИЛИ, выходы триггера, второго элемента И и элемента ИЛИ образуют выход признаков обмена блока обслуживания обмена, выход элемента ЗИ-ИЛИ подключен к второму входу третьего элемента И и к первому входу элемента 2ИИЛИ, второй и третий входы которого подключены к выходу третьего элемента И, первый вход которого соединен с четвертым входом элемента 2И-ИЛИ, 9 12919 выход первого элемента И подключен к второму входу элемента ИЛИ, а блок маскирования запросов содержит три счетчика, три элемента И и элемент
2И-ИЛИ, первые входы с первого по третий элементов И соединены с входом блокировки блока маскирования запросов, информационные и счетные входы с первого по третий счетчиков и объединены первый и третий входы ®О элементов 2И-ИЛИ образуют вход запросов блока маскирования запроса, выход признака длины вектора которого соединен с выходом элемента 2ИИЛИ, второй и четвертый входы которого соединены с выходами второго и третьего элементов И соответственно, выходы с первого по третий элементов
И образуют выход запросов блока мас98
l0 кирования запросов, счетные входы с первого по третий счетчиков соединены с вторыми входами с первого по третий элементов И соответственно, третьи входы которых соединены с выходами переполнения с первого по третий счетчиков соответственно, а блок выдачи запросов содержит элемент ИЛИ, входы которого образуют информационный вход блока выдачи запросов, элемент И, первый вход которого соединен с выходом элемента ИЛИ, и ключ, управляющий вход которого со" единен с выходом элемента И, информационный вход, выход ключа и второй вход элемента И являются инфор-— мациинным входом, выходом и входом стробирования блока выдачи запросов.
1291998
Фиг,.2
1291 998
Составитель А. Ушаков
Редактор В. Петраш Техред Л.Сердюкова Корректор В„ Бутяга
Заказ 273/49
Тираж 673 Подписное
ВНИИПИ Государственного комитета СССР по делам изобретений и открытий
113035, Москва, Ж-35, Раушская наб., д. 4/5
Производственно-полиграфическое предприятие, г. Ужгород, ул. Проектная, 4