Устройство для управления общими данными параллельных процессов
Иллюстрации
Показать всеРеферат
О П И С A и Ы.Е
ИЗОБРЕТЕН ИЯ
Союз Советскии
Социалистимеских
Республик (61) Дополнительное к авт. свид-ву (22) Заявлено 30.12 74 (21) 2088330/24 с присоединением заявки ¹
\ (23) Приоритет (43) Опубликовано 05.08,76. Бюллетень №29 (45) Дата опубликования описания19.01.77 (51) М, Кл, 5 06 У 9/19
506 F 13/06
Государственный комитет
Совета Министров СССР по делам изооретений и открытий (53) УДК 681.325 (088.8) (72) Авторы изобретения
Б. А. Бабаян, Ю, Х. Сахин, А. И, Жеренов, О. И. Невская и Н. П. Соловьева (71) Заявитель (54) УСТРОЙСТВО ДЛЯ УПРАВЛЕНИЯ ОБЩИМИ ДАННЫМИ
ПАРАЛЛЕЛЬНЫХ ПРОЦЕССОВ
Изобретение относится к вычислительной технике.
Известны устройства для управления общими данными параллельных процессов, содержащие регистр адреса, регистр данных, блок памяти данных, коммутатор памяти, блок задания очередности использования ячеек памяти, блок индикаторов состояний ячеек памяти, блок управления, блок адресных регистров, блок сравнения адресов, входы которого соединены соответственно с выходом регистра адреса и первым выходом блока адресных регистров, выход соединен со входной шиной блока управления, со входами коммутатора памяти и блока задания очередности использования ячеек памяти, выход которого подключен к выходу устройства и через коммутатор памяти — ко входу блока памяти данных, выход которого соединен с первым входом регистра данных, второй вход которого подключен к выходу блока индикаторов состояний ячеек памяги, управляющие вход и выход которого соединены соответственно с выходной и входной шинами блока управленя, выход регистра адреса подключен ко входу блока адресных регистров, вход соединен с адресным входом устройства, первый информационный вход и информационный выход устройства соединены соответственно с информационным входом коммутатора памяти и выходом регистра данных, управляющие входы регистра данных, регистра адреса, блока адресных регистров, коммутатора памяти, блока задания очередности использования ячеек памяти и управляющий выход устройства соединены с выходной шиной блока управления, входная шина которого соединена с управляющим входом устройства и выходом блока очередности использования ячеек памяти. В известном устройстве содержится оборудование управления быстродействующими блоками памяти (ассоциативными запоминающими блоками), входящими в состав вычислительных машин системы и связанными с основной памятью. К быстродействующим блокам памяти обращаются либо в математических, либо в физических адресах; для хранения адресов данных, находящихся в этих блоках памяти, применяются ассоциативные регистры. Когда одна из машин записывает информацию в основную память, устройство проверяет наличие информации с тем же адресом в ячейках блоков памяти остальных машин и исключает возможность обращения к этим ячейкам до тех пор, пока в них не будет записана новая информация мэ основной
Тираж 864
Подписное
Редактоо Б. Федотов
Заказ 5001/380
Составитель Т, Арешев
Те.=сед А. Богдан
1<о ректор М РУснак
ЦНИИПИ Государственного комитета Совета Министров СССР по делам изобретений и открытий
113035, Москва, Ж-35, Раушская иаб., д. 4/5
Филиал ППП "Патент", г. Ужгород, ул, Проектная, 4
524180 тов сравнения, но, кроме этого, он исполь..;ется для дублирования регистра 13 при приеме кода времени. Содержимое регистра 17 передается в блок 20 для формирования контрольных разрядов и проверки результатов сравнений в блоке 14.
Данные, записываемые в блок памяти 3 и считываемые из него, сопровождаются контрольными разрядами по модулю "три", а считанные данные проверяются в приемнике этих данных, например в арифметическом блоке. При выполнении записи контролируется состояние индикатора в блоке 9, соответствующего той ячейке, в которую идет запись. Если этот индикатор находится в единичном состоянии, в блоке 20 формируется сигнал ошибки.
Для выполнения данного вида проверки выходы всех индикаторов блока 9 соединены со входами блока контроля 20
Формула изобретения
Устройство для управления общими данными параллельных процессов; содержащее регистр адреса, регистр данных, блок памяти данных, коммутатор памяти, блок задания очередности использования ячеек памяти, блок индикаторов состояний ячеек памяти, блок управления, блок адресных регистров, блок сравнения адресов, входы которого соединены соответственчо с выходом регистра адреса и первым выходом блока адресных регистров„
:выход соединен со входной шиной блока управле- ния, со входами коммутатора памяти и блока задания очередности использования ячеек памяти, выход которого подключен к выходу устройства и через коммутатор памяти — ко входу блока памяти данных, выход которого соединен с первым входом регистра данных, второй вход которого подключен к выходу блока индикаторов состояний ячеек памяти, управляющие вход и выход которого соединены соответственно с выходной и входной шинами блока управления, выход регистра адреса подключен ко входу блока адресных регистров. вход соединен с адресным входом устройства, первый информационный вход и информационный выход устройства соединены соответственно с информационным входом коммутатора памяти и выходом регистра данных, управляющие входы регистра данных, регистра адреса, блока адресных регистров, коммутатора памяти, блока задания очередности использования ячеек памяти и управляющий выход щ устройства соединены с выходной шиной блока управления, входная шина которого соединена с управляющим входом устройства и выходом блока очередности использования ячеек памяти, о т л и " а:ю щ е е с я тем, что, с целью повышения прсизвсд .1я тельности, в него введены регистры кода времен, блоки коммутаций, буферный регистр, формирователь, распределитель тактовых сигналов, выходьi которого подключены к управляющим входам введенных блоков, регистров и формирователя, блок указателей обращений к ячейкам памяти и блок сравнения кодов времени, первый вход которого через первый блок. коммутации соединен с выходами первого и второго регистров кода времени, второй вход — с выходом третьего регистра кода щ времени, выход- через последовательно соединенные второй блок коммутации, буферный регистр и формирователь соединен со входной шиной блока управления, второй информационный вход устройства подключен ко входу первого регистра кода
;.р времени,, выход которого подключен ко входу второго регистра кода времени, первый информационный вход устройства соединен со входами третьего регистра кода времени и второго блока коммутации, выход блока указателей обращений к ячейкам памяти подключен к первому управляющему входу распределителя тактовых сигналов и ко входной шине блока управления, выходная шина которого соединена со входом блока указателей обращений к ячейкам пам:""и, второй управляю@ щий вход распределителя тактовых сигналов подключен к управляющему входу устройства.
524180 мирует сигналы управления для записи в выбранную ячейку блока 3 новых данных со входа 23 -,стройства через коммутатор памяти 4. При отсутствии на выходе блока 2 сигнала сравнения поступившие данные и адрес этих данных записываются в ячейку блока 3 и соответствующий регистр блока 1, номер которого задается с помощью блока 5. Индикатор в блоке 9 после записи устанавливается в единичное состояние, подтверждающее,. что содержимое ячейки памяти блока 3 относится к адресу, записанному в регистр блока 1.
При каждом обращении к паре адресный реЪ гистр блока 1 — ячейка памяти блока 3™ w сигналу с блока управления 6 устанавливается в единичное состояние соответствующий этой паре указатель в блоке 10, После перевода всех указателей в блоке 10 в единичное состояние формируется сигнал, фиксирующий данное состояние. Этот сигнал с блока 9 поступает в блок управления 6, который устанавливает все указатели блока 10 в исходное (нулевое) состояние (при последующих обращениях к ячейкам памяти соответствующие им указатели снова будут переводиться в единичное состояние). Сформированный в блоке 10 сигнал поступает также на распределитель 19, который управляет записью текущего кода времени, поступающего со входа 25устройства в регистр 11, и передачей содержимого регистра 11 в регистр 12, Таким образом, в регистрах 11 и 12 запоминаются моменты .,двух последних совпадений единичных значений всех указателей блока 10.
В основной памяти, не показанной на чертеже, выделена ячейка, в которой при открытии "семафора" одновременно с признаком открытия (установка нулевого значения "семафорного" разряда) фиксируется время выполнения данного действия
Когда в процессе обработки требуется обращение к общим данным, сначала содержимое указанной ячейки основной памяти считывается в регистр 13 и через блок коммутации 16 — в регистр 17 с последующим анализом значения "семафорного" разряда. Если обращение к общим данным разрешается ("семафорный" разряд находится в нулевом состоянии), в блоке 14 по сигналам распределителя 19 содержимое регистра 13 последовательно сравнивается сначала с содержимым регистра11, затем — с содержимым регистра 12, Если код времени последнего открытия "семафора™, считанный в регистр 13, больше кода времени, записанного в регистр 11, данные, хранящиеся в блоке памяти 3, объявляются недействительными, так как в ячейках этого блока могут находиться устаревшие общие данные, которые невозможно распознать и выделить.
Процесс объявления недействительности данных включает этапы анализа результата сравнения, записанного в отведенные для этой цели разряды буферного регистра 17, и выработку сигнала, соответствующего полученному результату, в формирователе 18. Этот сигнал поступает в блок управления 6, который устанавливает в нуль все индикаторы блока 9, При указанном выше исходе <одер-. жимое регистра 13 не сравнивается с содержимым регистра 12. В противном случае это сравнение происходит и, если оказывается, что код регистра 13 меньше кода, хранящегося в регистре 12, все данные в блоке памяти 3 сохраняются, так как они не менее двух раз полностью сменились после открытия "семафора"., При получении третьего результата сравнения сохраняются только те данные блока 3, которым соответствуют единичные значения указателей в блоке 10, так как среди данных с нулевым значением указателей в блоке 10 могутбыть устаревшие после открытия "семафора" общие данные. В этом случае в формирователе 18 вырабатывается сигнал, соответствующий третьему результату сравнения, который поступает в блок управления 6, и последний устанавливает в нуль те индикаторы блока 9, которые соответствуют ячейкам с нулевым значением указателей в блоке 10.
Если обращение к общим данным запрещено ("семафорный" разряд находится в единичном состоянии), в вичислительной машине организуется режим периодического обращения к семафорной ячейке до момента получения нулевого значения семафорного разряда либо переход к решению другой задачи. Сигналы на выходе формирователя 18 не вырабатываются. Лостоверность выполненных устройством операций подтверждается с помощью блока контроля 20. Для этого принимаемые в регистр 7 и записываемые в регистры блока 1 адреса, а в регистры 11,12 — коды времени сопровождаются контрольными разрядами (сверткой по модулю три) . Для адреса принятого в регистр 7, в блоке 20 формируются контрольные разряды (свертка ло модулю "три"), которые затем сравниваются с контрольными разрядами, поступившими вместе с адресом в регистр 7. Когда в блоке 2 формируется сигнал сравнения, контрольные разряды адреса, с которым произошло сравнение содержиьюго регистра 7, считываются в блок 20, где проверяется соответствие их контрольным разрядам, хранящимся в регистре 7, т.е. подтверждается результат о6ращения к заданной ячейке памяти.
В целях экономии оборудования при требуемом быстродействии, операции сравнения в блоке 14, как уже отмечалось, выполняются последовательно, т.е. сначала содержимое регистра 13 сравнивается с содержимым регистра 11, затем содержимое регистра 13 — с содержимым регистра 12.
Отмеченные этапы сравнения сопровождаются проверкой функционирования блока сравнения кодов времени 14, который реализуется, например, в виде сумматора. Код BpeMem, записываемый в регистр 13 из ячейки основной памяти, передается также через блок коммутации 16 для записи в буферный регистр 17. Основное назначение буферного регистра — хранение промежуточных реэульта