Изобретение относится к. области вь1чис- лительной техники и может быть использо:вано при построении многопроцессорных вы- числительных, систем,
Известны устройства для управления в 5 мнгчшроцессорной вычислительной системе содержащие блок анализа команд перехода, :блок памяти сформированных команд, блок Ъбщих регистров, первый выход которого со: единен с первым информационным выходом ю устройства, блок распараллеливания , соеди- блоком памяти сформированных , первый информащ-гонный выход которого соединен со вторым информационным вы
.ходом устройства, адресный выход соединен 15 с первым входом блока общих регистров, блок
поиска адреса операнда, включенный между адресньш sxoAoivf устройства и адресным входом ; бяока памяти сформированных команд, б токсвязи с устройс-твом обработки, информационный 20 вход которого подключен ко второму информационному выходу блока памяти сформированных , уп1)авпягош.ий выход которого через блок .
распределенк.д команд соединен с управляюПШм вхойсм блока связи с устройством о&- 25
работки, выход которого соединен с третьим информационным выходом устройства, сумма тор, первый вход которого подключен ко второму выходу блока общих регистров, блок формирования адреса команды, вход которого соединен с адресным выходом блока па мяти сформированных команд, блок памяти необработанных команд, вход признака которого подключен к выходу блока анализа команд перехода, а управляющий выход соед нен с управляющим входом блока памяти сформированных команд, блок формирования адресов операндов, адресный выход и инфо1. мационный вход которого соединены соответственно с адресным входом и информацион ным выходом блока памяти необработанных команд, а информационный выход соединен со вторым входом сумматора, первым ккодом блока общих регистров и первым информационным входом блока памяти сформиро ванных команд, и блок связи с запоминающим устройством, адресный выход, первый информационный вход и первый информацион- .ный выход которого соединены соответствендо с адредным выходом, информационным 3 входом и четвертым шфэрмационным выхо- г дом устройства, первый адресные вход под- ; ji ключен к выходу блоха формирования адреса команды и адресному вы:3соду блока памяти : сформированных команд, а второй информа- 5 1Шоинь1 i выход соединен со вторым входом ; , блока обших регистров, третьим шсодом сумматора и информационными входами блока необработанных команд и блока анализа команд перехода. Ю Недостатком известных устройств являетсЯ| низкое быстродействие при обработке ассиврв информашш. Для повышения быстродействия При обработке массивов информации предлагаемое ройствр содержит блок стековой памяти нб меров массивов, блок, обработки .паспортов |Массивов, первые вход и выход которого со- единены соответственно с выходом и входом блока стековой памяти номеров массивов, 20 второй вход подключен к выходу сумматора, второй выход соединен с четвертым входом сумматора, вторым адресным ЕОСОДОМ блока , свази с запоминакщим устройАвом и вторым; адресным входом блок сформирован- ных команд, блок паспортов массивов, информадионный выход которого соединен с третьим входом блока обработки паспортов СИВОЕ и вторым информационным входом блока связи с запоминакяцим устройством, вход подключен к И1фэрмационному выходу йгока формирования адресов операндов, а два янформационных входа соединены соответсТве1ьно с третьим выходом блока обработки паопортов массивов и втoIЯгI информационным выходом блока связи с запоминающим усти. ройством. На чертеже дана блок-схема описываемого устройства. Устройство содержит блок 1 связи с за- поминакидим устройством, блок 2 памягги обработанных команд, блок 3 формирования адреса команды, блок 4 формировааия адресов операндов, блок 5 цамяти сформированных команд,сумматор 6, блок 7 обших регистров, блок 8 паспортов массивов, блок 9 обрабор|КИ| паспортов массивов, блок 10 стековой памяти номеров массивов, блок 11 распарал леливания, блок 12 связи с устройством обработки, блок 13 распределения команд, блок 14 поиска адреса операнда и блок 15 анализа команд перехода. 16-19 - информэшюнные выходы устройства, 20 - адресный вход устройства, 21 информационнь вход ,. устройства, 22 . адресный выход устройства. Устройство работает следукнцим образом., Вся информация операнды и команды представляется в виде массивов. Массивы Делятся на четыре типа: 60 52509 2 4 системные массивы все открытые мао сивы, имекхдиеся в данный момент в вычи шггельной системе как доступные задаче, которую ведет данное устройство управления, так и не доступные Л их порядка ; процессорные массивы часть системных массивов, доступных данной задаче, их порядка 2 °; оперативные массивы - часть процессорных массивов, оперативно используемых 90 дачей, паспорта которых хранятся в устройстве управления программный массив, маосив константы и 31 рабочий массив массивы массивов массивы паспортов процессорных массивов, их количество равно числу задач в системе. Паспорта Массивов, хранящиеся в устройстве управления, содержат следукяцие поля данных: р -, режим доступа данного массива (считывание и запись, только считываьие, только считывание команды ); N номер массива в системе системный номер); признаки, указывающие: имеет ли данный массив структуру, весь ли он доступен(Данной задаче или только частично, яв ляется ли данная задача единственным пользователем данного (массива г N - номер текущего байта предыдущее обращение к массиву оканчивалось N i байтом); D - длина элемента массива; & количество байтов от начала элемента до текущего байта, В адресной части команды указывается программа формирования адресов. Эта про грамма задается в виде последовательности записей, каждая из которых имеет длину один или два байта. Первые три разряда записи определяют тип модификации .всего 8 одификадийЛ Тип модификации определяет длину записи (.один или два байта;, укаэывает на то, будет ли после данной записи продолжаться программа формирования адреса, на способ формирования адреса, а также на назначение адреса - является ли адрес: непосредственным операндом, номером обще- го регистра, номером элемента программного массива, номером элемента: рабочего или процессорного массива. При этом номер элемента программного, рабочего и процессорного массивов в зависнмости от того, имеет ли соответствующий массив структуру, может 6). ь абсолютным или относительным. Относи; ьиый номер адресует еле мент относительно тек щего байта, номер которого указан в паспорте Номер элемента может образовываться ка.к сумма двух или более величин, ацреса которых задаются ггрограммой | следующей за соответствукшей записью. Таким образом, формирование и использо вание дсполнительнргр адреса может быть Тб цервой записи указыкак очень простым веется исполнительный адрес и его назначе1шег непосредствень&1й операнд, номер общего регистра, но:мер элемента программного массива или массива констант), так и слож рекурсивным процессом формирования адресов величин, участвукяцих в клчисленин окончательного адреса. В качестве величин, участвующих в формировании адреса, могут использоваться неЕосрвдственнь1е О1шранды, содержимое регистров блока общих регист ров, элементы массивов, . Окончательнр сформированный нспошштель ный адрес, передаваемый в запоминакияее устройство, содержит: поле номера массива в системе (системный номер) J поле номера байта, начиная с которого гсранится требуемая информация - t g , поле длины (в байтах) требуемой инфор ivsasHH - D . Рассмотрим процесс формирования исполгельного адреса. Пусть программа форм зания, считанная в блок памяти необрабо-. ; ааных команд, содержит (отсчет слева) /риддать два разряда, в которые занесены следующие данные: в первых трех разрядахKof 5, в следукацих пяти разрядах - номер lij и р.апее соответственно 3 - код 6, 5 - %1 . 3 - код 1, 5 - 1 1, 3 код 2, Sf|/O. : ::;,:рЕая запись считывается в блок 4 фор- К |5рова11ия адресов операндов, в котором расфрфровьгвается: тип модификации. Тип модификации (код 5) указывает на то, что оп&рандом является элемент массива, паспорт которого в блоке 8 паспортов массивов име- ег номер Н 1,, а номер- элемента определ. ется программой, следующей за первой , Номер Ml ИЗ блока 8 паспортов мае- сйвов через блок 9 обработки паспортов маеСйвов записывается в блок 10 стековой памй тй номеров массивов. Для формирования Номе рэ элемента в блок 4 формирования адресов оиерандоБ передается следующая записа. Код мояи4ика1гаи (код 6) этой записи указывает на TCsj что необходимо взять элемент едспг-грт которого имеет номер N 2, а но мер sneivj(5HTa определяется суммированием, црук, величин. Первая из этих величин определяется третьей записью, а вторая - програмглой, следующей за третьей записью, образом, после расшифровки второй записи номер N2 записывается в блок 1О стековой i памяти номеров массивов, а в блок 4 формирования адресов операндов передается третья запись. Код модификации третьей записи указывает на то, следующие 5 разрядов этой: аписи я Чяются но- мером регистра в блоке 7 общих регистров. По данному номеру осуществляется передача содерж 1могосоответствующего (регистра в cyMMaTOp 6 Г Жш определения второй величины, участвующей в формировании номера элемента, производится считывание и расшифровка четвертой записи. Код модификации код 2) этой записи указывает на то, что .оставщиеся 5 разрядов являются непосред- ственным операндом. Этот операндпередается в сумматор 6 , где складывается с содер жимым регистра в блоке 7 общих регистров. Полученный результат является номером элемента. Этот номер необходимо преобразовать в номер байта.путем умножения номера элемента на его длину. Для этого из блока 10 стековой памяти номеров массивов считывагется номер N 2, который через блок 9 о&работк паспортов массивов передается в блок 8 паспортов массивов. По данному номеру считывается паспорт массива, который записывается в блок 9 обработки паспортов массивов. Длина передается в сумматор Г где производится умножен 1е номера элемента на его длину. Затем в зависимости от того, имеет ли массив структуру (признак в паспбрте),производится или не производится суммирование полученного номера байта с номером текущего байта, указанного в паспор те. Таким образом получается окончательно сформированный адрес байта, который передается в блок 9 обработки паспортов массивов. В блоке обработки паспортов массивов производится проверка - не находится ли данный адрес за границами области,, доступ- ной данной задаче. Кроме того, все промежуточные адреса проверяются в процессе формирования исполнительного адреса на корректность. Для это.го каждый промежуточный адрес (номер регистра или адрес ячейки памяти) подается в блок 5 памяти сформированных команд, где : производится проверка, не .является ли промежуточный адрес номером регистра -шш адресом ячейки памяти, содержимое которых изменяется i командами, находящимися в стадии выполнения. В противном случае номер байта вместе с шшной и системным номером массива передается в блок 1 связи С запоминающим устройством. Информация, считанная яз запоминающрго устройства (на чертеже не показано) и передаваемая в сумматор 6,является номером элемента массива, паспорт которого .хранится в блоке 8 паспортов массивов по номеру N1 Номер -N 1 из блока 1О стековой памяти номеров массивов через блок 9 обработки паспортов массивов передается в блок 8 na,O .портов массивов. аналогично omicaii. ному формируется исполнительный адрес операнда , который передается из блока 9 обработки паспортов массивов не в блок 1, а в блок 5 памяти сформированных команд. Исполнительный адрес операнда хранится в блохе 5 памяти сформированньст: команд до тех .-I1 I.I.-; пор, пока из устройства обработки (на чер , теже не показано) в блок 14 поиска адреса операнда не придет, запрос на операнд. После прихода этого запроса адрес операнда передается из блока 5 памяти сформированных команд в блок 1 связи с запомянакяцим устройством. Более простое формирование исполнитель-., .1-:.-:-.- :-- .. ..в КОГО операнда является частным случаем описанного процесса. Например, если первая запись указывает на то, что операндом я&ляется содержимое регистра (код модификации равен l), то номер этого регистра записывается в блок 5 памяти сформированщ ц( команд. Аналогично, если код модификации первой записи указывает на непосредственный операнд, то оставшиеся разряды записи переписываются в блок 5 памяти сформированных команд. В этих случаях при приходе запрора на адрес операнда из устройства выдает ся сам операнд (содержимое регистра или непосредственный операнд). : Возможен также случай использования элемента процессорного массива, паспорта которого нех в блоке 8 паспортов массивов (зпозодическое обращение к отдельным процессорным массивам). В программе формицрования адресов в этом случае указываются JHOMep требуемого элемента к процессорный ;номер массива. В блоке 8 паспортов масси вов хранится системный номер массива (массивов данной задачи (массива паспорта Все.х процерсорных массивов) и длина его .элементов. Умножая процессорный номер требуемого массива на длину, можно пблучить номер байта в массиве массивов,, на- чиная с которого лежит паспорт требуемого процессорного массива. Полученный но1мер байта объединяется с.длиной и системным номером массивов и выдается в блок 1 По этому адресу считывается паспорт требуемого процессорного массива, который записывается в специальные регистры (на 1 чертеже не показаны блока паспортов-магсивов. Далее по считанному паспорту и но меру требуемого элемента, формируется аналогично описанному окончательный адрес требуемой информации. Форм у л а и 3 о б р е т е н и я Устройство для управления в многопро цессорной вычислительной системе, содержашее блок анализа команд перехода, блок памяти сформированных команд, блок общих регистров, первый выход которого Ьоединен с первым информационным выходом устройства, блок рас шраллеливания, соединенный с блоком памяти сформированных команд, первый информационный выход которого соединен со вторым информационным выходом устройства, адресный выход ; соединен с первым входом блока общих ре- гистров, блок поиска адреса операнда, включенный между адресным входом устройства и адресным входом блока памяти сформированных команд, блок связи с устройством обработки, информационный вход которого подключен ко второму информационному выходу блока памяти сформированных команд, управлякщий выход которого через дределешш команд соединен с управляющим входом блока связи с устройством обработки выход .которого соединен с третьим информационным выходом устройства, сумматор, первйй вход которого подключен ко второму выходу блока обишх регистров, блок формирования адреса команды,,вход которого соединен с адресным выходом блока памяти сформированных команд, блок памяти необработанных коман.ц, вход признака которого подключен к выходу блока анализа команд перехода, а управляющий выход соединен с управляющим входом блока памяти дформированных команд, блок формирования адресов операндов, адресный выход и информа ционный вход которого соединены соотвегственно с адресным входом и информационным выходом блока памяти необработанных команд, а информационный выход соединен со вторым входом сумматора, первым входом блока общих регистров и первым инфор мационным входом блока памяти ванных команд, и блок связи с запоминаюшим устройством, адресный выход, первый информационньщ вход и первый информационный выход которого соедннень.1 соотввах т венно с адресным выходом, имформационным входом и четвертым информационным вьххо- дом устрсзиства, первый адресный вход под ключей к выходу блока формирования адреса Команды и адресному выходу блока памяти i (формированных команд , а второй ционвый выход; собдинен со вторым входом общих регистров, третьим входом сук матора к информационными входами блока необработанных команд я блока анализа ко манд перекода, отличающееся тем, что, с целью повышения быстродействия при обработке массивов информации, оно со- держит блок стековой памяти номеров маосивов, блок обработки паспортов массивов, первые вход и.выход которого соединены со ответственно с выходом и входом блока сте памяти HOMeix B массивов, второй вход подключен к выходу сумматора, второй вы
ход соещшен с четвертым входом сумматора ствоки вторым адресным входом блока связи с запо-. минаюшим устройством и адресным t .содом блока памяти сформированных команд, лок паспортов массивов, информационный выход которого соединен с третьим входом блока обработки паспортов массивов и вторым информационным входом блока связи с аапоминакжшм устройством, вход подключен к информационному выходу блока формирова- i аяя адресов операндов, а два информацнон- : ных вдода соединены соответственно с Tge тьим выходом блока обработки паспортов массивов и вторым информещионным выхо дом блока связи с запоминающим устрой
название | год | авторы | номер документа |
---|---|---|---|
Устройство для обработки выражений языков программирования | 1974 |
|
SU519715A1 |
Процессор мультиобработки данных | 1975 |
|
SU590745A1 |
Стековое запоминающее устройство | 1987 |
|
SU1737456A1 |
Устройство управления цифровой вычислительной машины | 1971 |
|
SU437074A1 |
Устройство для обработки информации | 1981 |
|
SU993262A1 |
Вычислительная система | 1977 |
|
SU692400A1 |
Устройство для формирования адресов команд и данных | 1985 |
|
SU1312573A1 |
Устройство для управления параллельным выполнением команд в электронной вычислительной машине | 1982 |
|
SU1078429A1 |
Устройство для синтаксически-управляемого перевода | 1982 |
|
SU1062721A1 |
Устройство для вычисления свертки | 1990 |
|
SU1709342A1 |
Авторы
Даты
1976-08-15—Публикация
1974-02-12—Подача