Изобретение относится к вычислительной технике, в частности к вычислительным устройствам и системам, использующим управление процессом вычислений от потока данных, и может быть использовано в цифровых вычислительных комплексах высокой производительности.
Известна вычислительная система, содержащая группу процессорных модулей, входы и выходы которых подключены к соответствующим входам и выходам коммутационной сети (см. Патент США N 4814978, кл. 364-200 от 21.03.1989).
Указанная система использует для организации вычислений принцип управления от потока данных при эффективной загрузке каждого процессорного модуля, что обеспечивает высокую общую производительность. Это достигается за счет использования параллельной обработки команд на всех участках программы и поддерживается программной организацией вычислений, при которой исходная программа отображается в виде графа, в котором каждый узел представляет функциональную зависимость одной команды от выполнения другой, а дуги определяют направления передачи результатов. Каждый из множества процессорных модулей, взаимосвязанных между собой через коммутирующую сеть, обрабатывает закрепленный за ним локальный участок программы. При этом процессорные модули работают параллельно, а необходимая синхронизация между участками обрабатываемой программы осуществляется за счет данных, пересылаемых между ними через коммутирующую сеть.
При этом отсутствие доступа каждого процессорного модуля ко всей программе и необходимость взаимной синхронизации локально обрабатываемых ее частей приводят к непроизводительным потерям рабочего времени процессорных модулей и, как следствие, к снижению производительности.
По технической сущности наиболее близкой к предлагаемому устройству является вычислительная система, содержащая N процессорных модулей, первый и второй коммутаторы, N модулей ассоциативной памяти, блок буферизации, с первого по третий информационные входы, управляющий вход, первый и второй информационные выходы, при этом первые управляющие выходы и адресные выходы i-го процессорного модуля подключены соответственно к i-му входу первой группы управляющих входов и к i-му входу первой группы адресных входов первого коммутатора, первый и второй информационные выходы i-го процессорного модуля подключены к соответствующему i-му входу первой группы информационных входов первого коммутатора, первые информационный, адресный, управляющий и вторые информационный, адресный и управляющий входы i-го процессорного модуля подключены к первому и второму информационным входам системы, управляющий вход которой подключен к управляющему входу первого коммутатора и к третьему управляющему входу i-го процессорного модуля, управляющий выход первого коммутатора соединен с четвертым управляющим входом i-го процессорного модуля, третий информационный выход которого соединен с первым информационным выходом системы, первые управляющий и информационный, вторые управляющий и информационный выходы i-й группы выходов обмена второго коммутатора соединены соответственно с пятым управляющим и третьим информационным входами, шестым управляющим и четвертым информационным входами i-го процессорного модуля, первая группа управляющих выходов второго коммутатора подключена к первой группе управляющих входов блока буферизации, вторая группа управляющих выходов второго коммутатора подключена к второй группе управляющих входов блока буферизации, управляющие входы второго коммутатора и блока буферизации и первый управляющий вход каждого модуля ассоциативной памяти соединены с управляющим входом системы, i-e входы первой и второй групп управляющих входов второго коммутатора соединены соответственно со вторым и третьим управляющими выходами i-го процессорного модуля, седьмой и восьмой управляющие входы которого подключены соответственно к i-м выходам первой и второй групп управляющих выходов блока буферизации, третья группа управляющих и первая группа информационных выходов которого соединены соответственно с третьей группой управляющих входов и первой группой информационных входов второго коммутатора, вторая группа информационных выходов блока буферизации подключена к второму информационному выходу системы, четвертая группа управляющих входов второго коммутатора соединена с четвертой группой управляющих выходов блока буферизации, 1-й вход первой группы информационных входов которого соединен с четвертым и пятым информационными выходами i-го процессорного модуля, четвертый управляющий выход которого соединен с i-м входом третьей группы управляющих входов блока буферизации, третья группа информационных выходов которого соединена со второй группой информационных входов второго коммутатора, первый управляющий выход i-го модуля ассоциативной памяти соединен с i-м входом второй группы управляющих входов первого коммутатора, i-й выход группы информационных выходов которого подключен к информационному входу i-го модуля ассоциативной памяти, информационный и второй управляющий выходы которого подключены к i-м входам второй группы информационных и четвертой группы управляющих входов блока буферизации, третья группа информационных входов которого подключена к третьему информационному входу системы, а i-й выход группы управляющих выходов первого коммутатора подключен ко второму управляющему входу i-го модуля ассоциативной памяти (см. заявку PCT/RU 94/00347 от 16.12.96). WO 97/23834 от 03.04.97.
Указанная система позволяет устранить взаимный обмен и необходимую при этом приостановку работы процессорных модулей, что обеспечивает высокую производительность за счет увеличения загрузки процессорных модулей и достигаемого при этом сокращения времени исполнения рабочих программ. При этом автоматически достигается высокий параллелизм работы процессорных модулей и отсутствует необходимость в распределении групповых параллельных процессов по отдельным вычислительным структурам внутри каждой исполняемой программы.
Однако известное устройство не обеспечивает высокую производительность при выполнении как отдельных участков, так и целых рабочих программ, имеющих низкий уровень внутреннего параллелизма, что определяет условие последовательного исполнения входящих в программу команд и соответственно увеличение времени обработки. При этом эффективность выполнения таких программ может быть ниже, чем при обработке их на вычислительных системах, использующих традиционный, фон-неймановский принцип обработки данных.
Кроме того, использование в известном устройстве в качестве аппаратных средств хранения данных и управления ассоциативной памяти определяет прямую зависимость производительности устройства от темпа (N) выдачи данных в единицу времени (N = 1/Тап, где Тап - время работы ассоциативной памяти от момента запроса до выдачи данных).
Величина Тап находится в прямой зависимости от объема ассоциативной памяти, что определяет недостаток устройства: требования со стороны рабочих программ к увеличению объема памяти приводят к соответствующему снижению производительности устройства.
Указанные недостатки не позволяют реализовать в известном устройстве высокую производительность при обработке больших объемов программ с низким уровнем внутреннего параллелизма.
Техническим результатом является повышение производительности при соответствующем расширении функциональных возможностей за счет локального введения в процесс вычислений традиционного фон-неймановского принципа обработки данных без нарушения общих концепций управления вычислениями от потока данных.
Достигается это тем, что в вычислительную систему, содержащую N процессорных модулей, первый и второй коммутаторы, N модулей ассоциативной памяти, блок буферизации, с первого по третий информационные входы, управляющий вход, первый и второй информационные выходы, при этом первые управляющие выходы и адресные выходы 1-го процессорного модуля подключены, соответственно, к i-му входу первой группы управляющих входов и к i-му входу первой группы адресных входов первого коммутатора, первый и второй информационные выходы i-го процессорного модуля подключены к соответствующему i-му входу первой группы информационных входов первого коммутатора, первые информационный, адресный, управляющий и вторые информационный, адресный и управляющий входы i-го процессорного модуля подключены к первому и второму информационным входам системы, управляющий вход которой подключен к управляющему входу первого коммутатора и к третьему управляющему входу i-го процессорного модуля, управляющий выход первого коммутатора соединен с четвертым управляющим входом i-го процессорного модуля, третий информационный выход которого соединен с первым информационным выходом системы, первые управляющий и информационный, вторые управляющий и информационный выходы i-й группы выходов обмена второго коммутатора соединены соответственно с пятым управляющим и третьим информационным входами, шестым управляющим и четвертым информационным входами i-го процессорного модуля, первая группа управляющих выходов второго коммутатора подключена к первой группе управляющих входов блока буферизации, вторая группа управляющих выходов второго коммутатора подключена ко второй группе управляющих входов блока буферизации, управляющие входы второго коммутатора и блока буферизации и первый управляющий вход каждого модуля ассоциативной памяти соединены с управляющим входом системы, i-e входы первой и второй групп управляющих входов второго коммутатора соединены соответственно со вторым и третьим управляющими выходами i-го процессорного модуля, седьмой и восьмой управляющие входы которого подключены соответственно к i-м выходам первой и второй групп управляющих выходов блока буферизации, третья группа управляющих и первая группа информационных выходов которого соединены соответственно с третьей группой управляющих входов и первой группой информационных входов второго коммутатора, вторая группа информационных выходов блока буферизации подключена к второму информационному выходу системы, четвертая группа управляющих входов второго коммутатора соединена с четвертой группой управляющих выходов блока буферизации, i-й вход первой группы информационных входов которого соединен с четвертым и пятым информационными выходами i-го процессорного модуля, четвертый управляющий выход которого соединен с i-м входом третьей группы управляющих входов блока буферизации, третья группа информационных выходов которого соединена со второй группой информационных входов второго коммутатора, первый управляющий выход i-го модуля ассоциативной памяти соединен с i-м входом второй группы управляющих входов первого коммутатора, i-й выход группы информационных выходов которого подключен к информационному входу i-го модуля ассоциативной памяти, информационный и второй управляющий выходы которого подключены к i-м входам второй группы информационных и четвертой группы управляющих входов блока буферизации, третья группа информационных входов которого подключена к третьему информационному входу системы, а i-й выход группы управляющих выходов первого коммутатора подключен ко второму управляющему входу i-го модуля ассоциативной памяти, введены N блоков обработки фрагментов программ, первый и второй дополнительные коммутаторы и дополнительный блок буферизации, причем управляющий выход первого коммутатора соединен с первым управляющим входом i-го блока обработки фрагментов программ, первый информационный вход которого подключен к первому информационному входу системы, управляющий вход которой соединен с управляющими входами первого и второго дополнительных коммутаторов, дополнительного блока буферизации и вторым управляющим входом i-го блока обработки фрагментов программ, третий управляющий вход которого подключен к i-му выходу группы управляющих выходов второго дополнительного коммутатора, i-й выход группы информационных выходов которого соединен с вторым информационным входом i-го блока обработки фрагментов программ, третий информационный вход которого подключен к информационному выходу i-й группы выходов обмена первого дополнительного коммутатора, управляющий выход i-й группы выходов обмена которого соединен с четвертым управляющим входом i-го блока обработки фрагментов программ, первый управляющий выход которого подключен к i-му входу первой группы управляющих входов второго дополнительного коммутатора и i-му входу первой группы управляющих входов первого дополнительного коммутатора, вторая группа управляющих входов которого соединена с первой группой управляющих выходов дополнительного блока буферизации, первая группа информационных выходов которого подключена к группе информационных входов первого дополнительного коммутатора, группа управляющих выходов которого соединена с первой группой управляющих входов дополнительного блока буферизации, вторая группа управляющих выходов которого подключена ко второй группе управляющих входов второго дополнительного коммутатора, группа адресных и группа информационных входов которого соединены со второй группой информационных выходов дополнительного блока буферизации, вторая группа управляющих входов которого подключена к управляющему выходу второго дополнительного коммутатора, информационный выход и второй управляющий выход i-го модуля ассоциативной памяти соединены соответственно с i-ми входами группы информационных и третьей группы управляющих входов дополнительного блока буферизации, а второй управляющий, адресный и информационный выходы i-гo блока обработки фрагментов программ соединены соответственно с i-ми входами третьей группы управляющих, второй группы адресных и второй группы информационных входов первого коммутатора.
Кроме того, блок обработки фрагментов программ содержит исполнительное устройство, узел выходных регистров, узел регистров загрузки, узел входных регистров, узел управления и коммутатор, причем информационный выход исполнительного устройства соединен с информационным входом узла выходных регистров, первый управляющий вход которого подключен к первому управляющему входу блока, второй управляющий вход которого соединен с первым управляющим входом исполнительного устройства, вторым управляющим входом узла выходных регистров, первым управляющим входом узла управления, первым управляющим входом узла регистров загрузки и с первым управляющим входом узла входных регистров, первый управляющий выход которого подключен ко второму управляющему входу узла управления и первому управляющему выходу блока, первый информационный вход которого соединен с информационным входом узла регистров загрузки, информационный выход которого и информационный выход узла входных регистров подключены к информационному входу исполнительного устройства, второй управляющий вход которого соединен с первым управляющим выходом узла выходных регистров, первым управляющим выходом узла регистров загрузки и вторым управляющим выходом узла входных регистров, третий управляющий выход которого, второй управляющий выход узла регистров загрузки и второй управляющий выход узла выходных регистров подключены к третьему управляющему входу исполнительного устройства, первый управляющий выход которого соединен со вторым управляющим входом узла регистров загрузки, вторым управляющим входом узла входных регистров и третьим управляющим входом узла выходных регистров, третий управляющий выход которого подключен ко второму управляющему выходу блока, второй информационный вход которого соединен с первым информационным входом коммутатора, информационный выход которого подключен к информационному входу узла входных регистров, третий управляющий вход которого, третий управляющий вход узла регистров загрузки и четвертый управляющий вход узла выходных регистров подключены ко второму управляющему выходу исполнительного устройства, третий управляющий выход которого соединен с четвертым управляющим входом узла входных регистров, с четвертым управляющим входом узла регистров загрузки и с пятым управляющим входом узла выходных регистров, адресный и информационный выходы которого соединены соответственно с адресным и информационным выходами блока, третий управляющий вход которого подключен к третьему управляющему входу узла управления, четвертый управляющий вход которого подключен к четвертому управляющему входу блока, третий информационный вход которого подключен ко второму информационному входу коммутатора, первый и второй управляющие входы которого соединены соответственно с первым и вторым управляющими выходами узла управления, третий управляющий выход которого подключен к пятому управляющему входу узла входных регистров, шестой управляющий вход которого подключен к пятому управляющему входу узла регистров загрузки, шестому управляющему входу узла выходных регистров и четвертому управляющему выходу исполнительного устройства, пятый управляющий выход которого соединен с седьмым управляющим входом узла выходных регистров.
Сущность изобретения заключается в том, что введение блоков обработки фрагментов программ, первого и второго дополнительных коммутаторов, дополнительного блока буферизации и организация соответствующих связей обеспечили повышение производительности вычислительной системы при обработке больших объемов рабочих программ за счет повышения темпа обмена модулей ассоциативной памяти, определяемого снижением их рабочего объема, и за счет обработки отдельных фрагментов и целых программ с низким внутренним параллелизмом в соответствующих блоках с использованием фон-неймановского принципа вычислений при существенном расширении номенклатуры эффективно обрабатываемых программ.
При этом для основного объема рабочих программ обеспечивается управление процессом вычислений от потока данных. В рабочих программах производится выделение фрагментов, имеющих определенно выраженный локальный характер вычислений и обладающих низким уровнем внутреннего параллелизма. Сюда же относятся фрагменты и целые программы, имеющие характер тригонометрических или иных функций и эффективно обрабатываемые средствами фон Неймана. Вычисление указанных фрагментов и программ производится без занятия объемов модулей ассоциативной памяти, за счет чего и реализуется сокращение их рабочего объема. При этом до минимума снижаются затраты рабочего времени на распределение заданий (фрагментов программ) между блоками обработки, в отличие от традиционных многопроцессорных систем, использующих чисто фон-неймановский принцип вычислений, т.е. не требуется наличия соответствующей операционной системы.
Сравнение предлагаемого устройства с прототипом позволяет утверждать о соответствии критерию "новизна", а отсутствие отличительных признаков в аналогах говорит о соответствии критерию "изобретательский уровень".
Предварительные испытания подтверждают возможность промышленного применения.
На фиг. 1а, 1б представлена блок-схема вычислительной системы;
на фиг. 2 - функциональная схема процессорного модуля;
на фиг. 3 - функциональная схема узла управления первым коммутатором процессорного модуля;
на фиг. 4 - функциональная схема узла управления вторым коммутатором процессорного модуля;
на фиг. 5 - функциональная схема исполнительного устройства обработки командных слов;
на фиг. 6 - функциональная схема узла управления исполнительного устройства обработки командных слов;
на фиг. 7 - функциональная схема блока коммутации исполнительного устройства обработки командных слов;
на фиг. 8 - функциональная схема узла управления блоком коммутации исполнительного устройства обработки командных слов;
на фиг. 9 - функциональная схема узла входных регистров исполнительного устройства обработки командных слов;
на фиг. 10 - функциональная схема узла регистров команд исполнительного устройства обработки командных слов;
на фиг. 11 - функциональная схема исполнительного устройства обработки операндов процессорного модуля;
на фиг. 12 - функциональная схема узла управления исполнительного устройства обработки операндов;
на фиг. 13 - функциональная схема узла входных регистров исполнительного устройства обработки операндов;
на фиг. 14 - функциональная схема узла выходных регистров исполнительного устройства обработки операндов,
на фиг. 15 - функциональная схема второго коммутатора вычислительной системы;
на фиг. 16 - функциональная схема устройства управления второго коммутатора;
на фиг. 17 - функциональная схема устройства коммутации второго коммутатора;
на фиг. 18 - функциональная схема узла управления формированием запроса устройства управления второго коммутатора;
на фиг. 19 - функциональная схема блока управления коммутацией устройства управления второго коммутатора;
на фиг. 20 - функциональная схема узла управления приоритетом коммутации блока управления коммутацией устройства управления второго коммутатора;
на фиг. 21 - функциональная схема узла приема входного запроса блока управления коммутацией устройства управления второго коммутатора;
на фиг. 22 - функциональная схема узла преобразователя-приемника устройства коммутации второго коммутатора;
на фиг. 23 - функциональная схема узла преобразователя-передатчика устройства коммутации второго коммутатора;
на фиг. 24 - функциональная схема блока буферизации вычислительной системы;
на фиг. 25 - функциональная схема узла буферизации блока буферизации;
на фиг. 26 - функциональная схема буфера узла буферизации;
на фиг. 27 - функциональная схема устройства управления буфером узла буферизации;
на фиг. 28 - функциональная схема модуля ассоциативной памяти вычислительной системы;
на фиг. 29 - функциональная схема первого коммутатора вычислительной системы;
на фиг. 30 - функциональная схема устройства управления первым коммутатором;
на фиг. 31 - функциональная схема управления передачей устройства управления первым коммутатором;
на фиг. 32 - функциональная схема узла управления приемом устройства управления первого коммутатора;
на фиг. 33 - функциональная схема узла управления коммутацией устройства управления первого коммутатора;
на фиг. 34 - функциональная схема блока обработки фрагментов программ;
на фиг. 35 - функциональная схема исполнительного устройства блока обработки фрагментов программ;
на фиг. 36 - функциональная схема узла выходных регистров блока обработки фрагментов программ;
на фиг. 37 - функциональная схема узла входных регистров блока обработки фрагментов программ;
на фиг. 38 - функциональная схема узла управления блока обработки фрагментов программ;
на фиг. 39 - функциональная схема первого дополнительного кммутатора;
на фиг. 40 - функциональная схема второго дополнительного комутатора;
на фиг. 41 - функциональная схема дополнительного блока буферизации;
на фиг. 42 - функциональная схема узла буферизации дополнительного блока буферизации;
на фиг. 43 - общий вид графа вычислений,
на фиг. 44 - структура информационного пакета.
Вычислительная система (фиг. 1а, 1б) содержит группу процессорных модулей 1-1. ..1-N, первый и второй коммутаторы 2 и 3, группу модулей 4-1...4-N ассоциативной памяти, блок буферизации 5, группу блоков (6-1...6-N) обработки фрагментов программ, дополнительные первый и второй коммутаторы 7 и 8 и дополнительный блок 9 буферизации.
Кроме того, вычислительная система содержит первый, второй и третий информационные входы 10, 11 и 12, управляющий вход 13, первый и второй информационные выходы 14 и 15 и вход 16 обнуления памяти.
Каждый процессорный модуль 1-i содержит первый, второй, третий, четвертый информационные входы 17...20, первый и второй адресные входы 21-1 и 21-2, с первого по восьмой управляющие входы 22-1...22-8 соответственно, с первого по четвертый управляющие выходы 23-1...23-4, адресный выход 24 и с первого по пятый информационные выходы 25-1...25-5.
Второй коммутатор 3 содержит управляющий вход 26, первую, вторую, третью и четвертую группы управляющих входов 27-1...27-N, 28-1...28-N, 29-1...29-N, 30-1. ..30-N, первую и вторую группы информационных входов 31-1-1...31-1-N и 31-2-1. . . 31-2-N, первую и вторую группы управляющих выходов 32-1...32-N и 33-1. . . 33-N и N групп выходов обмена, каждая из которых включает первый управляющий, первый информационный, второй управляющий и второй информационный выходы 34-1-i, 34-2-i, 34-3-i, 34-4-i соответственно.
Блок 5 буферизации содержит управляющий вход 35, первую и вторую группы управляющих входов 36-1...36-N и 37-1...37-N, первую группу информационных входов 38-1. . . 38-N, третью группу управляющих входов 39-1...39-N, вторую группу информационных входов 40-1. . . 40-N, четвертую группу управляющих входов 41-1...41-N и третью группу информационных входов 42-1...42-N. Кроме того, блок 5 буферизации содержит с первой по третью группы управляющих выходов 43-1...43-N, 44-1...44-N, 45-1...45-N, первую и вторую группы информационных выходов 46-1. ..46-N и 47-1...47-N, четвертую группу управляющих выходов 48-1. ..48-N и третью группу информационных выходов 49-1...49-N соответственно.
Каждый модуль 4-i ассоциативной памяти содержит первый управляющий вход 50, вход обнуления 51, информационный вход 52, второй управляющий вход 53, первый управляющий выход 54, информационный выход 55 и второй управляющий выход 56.
Первый коммутатор 2 содержит управляющий вход 57, первую группу управляющих 58-1. . .58-N и первую группу адресных входов 59-1...59-N. Кроме того, коммутатор 2 содержит вторую группу управляющих входов 60-1...60-N, первую группу информационных входов 61-1...61-N, третью группу управляющих входов 62-1...62-N, вторую группу адресных входов 63-1...63-N, вторую группу информационных входов 64-1. ..64-N, управляющий выход 65, группу информационных выходов 66-1...66-N и группу управляющих выходов 67-1...67-N.
Каждый блок 6-i обработки фрагментов программ содержит с первого по четвертый управляющие входы 68...71, с первого по третий информационные входы 72...74, первый и второй управляющие выходы 75 и 76, адресный выход 77 и информационный выход 78.
Первый дополнительный коммутатор 7 включает управляющий вход 79, первую и вторую группы управляющих входов 80-1...80-N и 81-1...81-N, группу информационных входов 82-1. . .82-N, группу управляющих выходов 83-1...83-N и N групп выходов обмена, каждая из которых включает управляющий и информационный выходы 84-1-i и 84-2-i соответственно.
Дополнительный коммутатор 8 содержит управляющий вход 85, первую группу управляющих входов 86-1...86-N, группу адресных входов 87-1...87-N, вторую группу управляющих входов 88-1...88-N, группу информационных входов 89-1... 89-N, управляющий выход 90, группу информационных выходов 91-1...91-N и группу управляющих выходов 92-1...92-N.
Дополнительный блок 9 буферизации включает управляющий вход 93, первую и вторую группы управляющих входов 94-1...94-N и 95-1...95-N соответственно, группу информационных входов 96-1...96-N и третью группу управляющих входов 97-1. . .97-N. Кроме того, дополнительный блок 9 буферизации включает первую группу управляющих выходов 98-1...98-N, первую группу информационных выходов 99-1...99-N, вторую группу управляющих выходов 100-1...100-N и вторую группу информационных выходов 101-1...101-N. Цепи синхронизации и питания не показаны.
Каждый процессорный модуль 1-i (фиг. 2) включает первый и второй коммутаторы 102 и 103, первый и второй узлы 104 и 105 управления первым и вторым коммутаторами соответственно, исполнительное устройство 106 обработки командных слов и исполнительное устройство 107 обработки операндов.
Коммутатор 102 содержит первый и второй управляющие входы 108-1 и 108-2, с первого по четвертый информационные входы 109-1, 109-2, 110-1, 110-2 первый и второй информационные выходы, подключенные к выходам 25-4 и 25-5 процессорного модуля.
Коммутатор 103 содержит первый и второй управляющие входы 111-1 и 111-2, с первого по шестой информационные входы 112-1, 112-2, 112-3, 113-1, 113-2, 113-3, с первого по третий информационные выходы, подключенные к выходам 24, 25-1, 25-2 процессорного модуля соответственно.
Узел 104 управления первым коммутатором включает первый и второй управляющие входы 114, 115, с первого по четвертый управляющие выходы 116-1, 116-2, 117-1 и 117-2, третий и четвертый управляющие входы, подключенные ко входам 22-7 и 22-8 процессорного модуля, и пятый управляющий выход, подключенный к выходу 23-4 процессорного модуля.
Узел 105 управления вторым коммутатором включает первый и второй управляющие входы 118 и 119, с первого по четвертый управляющие выходы 120-1, 120-2 и 121-1, 121-2, третий управляющий вход, подключенный ко входу 22-4 процессорного модуля, пятый управляющий выход, подключенный к выходу 23-1 процессорного модуля.
Исполнительное устройство 106 обработки командных слов включает первый и второй управляющие входы 122 и 123, первый и второй управляющие выходы 124 и 125, третий управляющий выход 126, адресный вход 127, первый и второй информационные выходы 128 и 129, третий информационный выход, подключенный к выходу 25-3 процессорного модуля, первый и второй информационные, третий, четвертый, пятый управляющие и адресный входы, подключенные ко входам (17, 19, 22-1, 22-3, 22-5 и 21-1) процессорного модуля соответственно.
Исполнительное устройство 107 обработки операндов содержит первый и второй управляющие входы 130 и 131, с первого по третий управляющие выходы 132, 133, 134, адресный выход 135, первый и второй информационные выходы 136, 137, третий информационный выход, подключенный к выходу 25-3 процессорного модуля, первый и второй информационные, третий, четвертый, пятый управляющие и адресный входы, подключенные ко входам 18, 20, 22-2, 22-3, 22-6 и 21-2 процессорного модуля соответственно.
В каждый узел 104 (фиг. 3) и 105 (фиг. 4) управления коммутаторами входят элементы И 138 и 139, элемент ИЛИ 140 и приоритетный шифратор 141.
В состав исполнительного устройства 106 (фиг. 5) обработки командных слов входят узел 142 управления, выходной коммутатор 143, блок 144 коммутации, узел 145 регистров команд, память 146 команд, арифметико-логическое устройство (АЛУ) 147, коммутатор 148 загрузки и узел 149 входных регистров.
Узел 142 управления содержит вход 150-1 установки нуля, первый и второй входы 150-2 и 150-3 управления передачей результата, вход 150-4 управления пуском, вход 150-5 разрядов типа команды, вход 150-6 сигнала готовности памяти, вход 150-7 сигнала значимости результата АЛУ, вход 150-8 сигнала готовности АЛУ, вход 150-9 кода операции, первый и второй выходы 151-1 и 151-2 сигнала готовности данных, выход 151-3 управления коммутацией полей, выход 152-4 управления приемом данных, выход 152-5 управления запуском АЛУ и выход 152-6 управления выборкой команд.
Выходной коммутатор 143 содержит первый и второй управляющие входы 153-1 и 153-2, первый и второй информационные входы 153-3 и 153-4 и информационный выход, подключенный к выходам 127 и 129 исполнительного устройства 106.
Блок 144 коммутации содержит управляющие входы 154-1...154-12, информационные входы 155-1. . . 155-10 и 156-1...156-4, информационные выходы, подключенные к выходу 128 исполнительного устройства 106 и входам 153-3, 153-4 коммутатора 143.
Узел 145 регистров команд содержит информационный и управляющий входы 157-1 и 157-2, информационные выходы, подключенные к входам 156-1...156-4 блока 144.
Память команд 146 содержит вход 158-1 управления записью, информационный и адресный входы 158-2 и 158-3, вход 158-4 управления чтением, информационный и управляющий выходы, подключенные к соответствующим входам 157-1 и 157-2 узла 145 регистров команд и входам 150-5 и 150-6 узла 142 управления.
АЛУ 147, выполненное аналогично устройству по авт. св. СССР N 1367012, 1985) содержит вход 159-1 управления операциями, первый и второй входы 159-2 и 159-3 операндов, вход 159-4 управления пуском, первый и второй информационные выходы 160-1 и 160-2 и управляющий выход 160-3.
Коммутатор 148 загрузки содержит первый и второй информационные входы 161-1 и 161-2, первый и второй управляющие входы 161-3 и 161-4, информационный выход, подключенный к адресному входу 158-3 памяти 146 команд.
Узел 149 входных регистров содержит управляющий вход 162-1, информационный вход 162-2 и информационные выходы 163-1...163-11.
В состав узла 142 (фиг. 6) управления входят элементы И 164, 165, приоритетный шифратор 166, элементы И 167...174, элементы ИЛИ 175...177, дешифратор 178, элементы И 179...181, элементы ИЛИ 182, 183, элементы И 184...186, триггера 187...192 управления, элементы И 193...198, элемент ИЛИ 199, элементы И 200, 201.
В состав блока 144 (фиг. 7) коммутации входят регистры 202...212, узел управления 213, коммутаторы 214...219.
Узел 213 (фиг. 8) управления содержит элементы ИЛИ 220...231, управляющие входы 232...243 и управляющие выходы 244...263.
В состав узла 149 (фиг. 9) входных регистров входят регистр 264 слова состояний, регистр 265 первого слова данных и регистр 266 второго слова данных.
В состав узла 145 (фиг. 10) регистров команд входят первые и вторые регистры 267, 268 и 269, 270 кода операций и номера команды соответственно.
В состав исполнительного устройства 107 (фиг. 11) входят узел 271 управления, выходной коммутатор 272, узел 273 выходных регистров, память 274 команд, АЛУ 275, коммутатор 276 загрузки и узел 277 входных регистров.
Узел 271 управления содержит вход 278-1 установки нуля, первый и второй входы 278-2 и 278-3 управления передачей результата, вход 278-4 управления пуском, вход 278-5 разрядов типа команды, вход 278-6 сигнала готовности памяти, вход 278-7 сигнала значимости данных, вход 278-8 сигнала готовности АЛУ, первый и второй выходы 279-1 и 279-2 управления коммутацией выхода, выход 279-3 управления передачей, выход 279-4 управления приемом, выход 279-5 управления пуском, первый, второй и третий управляющие выходы, подключенные к выходам 132...134 исполнительного устройства 107.
Узел 273 выходных регистров содержит управляющие входы 280-1...280-3, информационные входы 280-4...280-6, информационные выходы 281-1...281-3.
Коммутатор 272 содержит информационный выход, подключенный к выходам 135 и 137 исполнительного устройства 107, первый и второй управляющие входы, подключенные к выходам 279-1 и 279-2 узла 271, первый и второй информационные входы, подключенные к выходам 281-2 и 281-3 узла 273 выходных регистров.
Память 274 команд, АЛУ 275 и коммутатор 276 загрузки аналогичны соответствующим устройствам 146, 147 и 148 в составе исполнительного устройства 106.
Узел 277 входных регистров содержит управляющий и информационный входы 282-1, 282-2 и информационные выходы 283-1...283-5.
В состав узла 271 (фиг. 12) управления входят элементы ИЛИ 284-1, 284-2, элементы И 285-1...285-4, 286-1, 286-2, элемент ИЛИ 287, элементы И 288-1, 288-2, элемент ИЛИ 289, приоритетный шифратор 290, элементы И 291-1, 291-2 и 292, триггеры 293-1...293-3, 294-1...294-3, элементы И 295-1...295-6, элемент ИЛИ 296, элемент И 297.
В состав узла 277 (фиг. 13) входных регистров входят регистры 298, 299-1 и 299-2 разрядов слова состояний, первого и второго операндов.
В состав узла 273 (фиг. 14) выходных регистров входят регистр 300 результата, первый и второй регистры 301-1, 301-2 номера команды, коды операций и регистр 302 признака состояний.
В состав второго коммутатора 3 (фиг. 15) входят первое и второе устройства 303-1 и 303-2 управления, первое и второе устройства 304-1 и 304-2 коммутации.
Каждое устройство 303-1, 303-2 управления содержит управляющий вход 305, с первой по третью группу управляющих входов 306-1...306-N, 307-1...307-N и 308-1. . .308-N соответственно, с первой по четвертую группы управляющих выходов 309-1...309-N, 310-1...310-N, 311-1...311-N и 312-1...312-N.
Каждое устройство 304-1 (304-2) коммутации содержит первую и вторую группы управляющих входов 313-1-1...313-N-N и 314-1...314-N, группу информационных входов 315-1...315-N, группу информационных выходов 316-1...316-N и группу управляющих выходов 317-1...317-N.
В состав каждого устройства 303-1 (303-2) (фиг. 16) управления входит группа триггеров 318-1. ..318-N формирования сигналов готовности, узел 319 управления установкой готовности и блок 320 управления коммутацией.
Узел 319 управления установкой готовности содержит с первой по N-ую группы первых и вторых управляющих выходов 321-1-1, 321-2-1...321-1-N, 321-2-N, вход 322 установки нуля, с первой по третью группы управляющих входов 323-1. . . 323-N, 324-1. . . 324-N, 325-1...325-N, с первой по N-ую группы выходов 326-1-1. . . 326-N-N разрядов номера канала коммутатора и с первой по N-ую группы входов 327-1-1...327-N-N разрядов номера канала коммутатора.
Блок 320 управления коммутацией содержит с первой по N-ую группы выходов 328-1-1...328-N-N установки номера канала коммутации, первую и вторую группы управляющих выходов 329-1...329-N, 330-1...330-N, вход 331 установки нуля, с первой по N-ую группы первых и вторых управляющих входов 332-1-1 и 332-2-1.. . 332-1-N и 332-2-N, группу управляющих входов 333-1...333-N, с первой по N-ую группы выходов 334-1-1...334-N-N управления коммутирующими элементами, с первой по N-ую группы входов 335-1-1...335-N-N установки канала коммутации и третью группу управляющих выходов 336-1...336-N.
В каждое устройство 304-1 (304-2) (фиг. 17) коммутации входят генератор 337 импульсов высокой частоты, группа выходных регистров 338-1...338-N, группа узлов 339-1...339-N преобразователей-приемников, группа элементов ИЛИ 340-1...340-N, группа фотоприемников 341-1...341-N, первая группа оптических линзовых растворов 342-1. ..342-N, управляемый оптический транспорант 343, вторая группа оптических линзовых растворов 344-1...344-N, группа дефлекторов 345-1...345-N, группа лазерных излучателей 346-1...346-N, группа узлов 347-1...347-N преобразователей-передатчиков, группа входных регистров 348-1. ..348-N.
Каждый узел 339-i преобразователя-приемника содержит управляющий выход 349, информационные выходы 349-1...349-N параллельного кода, первый и второй управляющие входы 350-1 и 350-2 и информационный вход 350-3 последовательного кода.
Каждый узел 347-i (фиг. 23) преобразователя-передатчика содержит информационный выход 351 последовательного кода, управляющий вход 352, группу входов 352-1...352-N управления преобразованием и группу информационных входов 353-1...353-N параллельного кода.
В состав узла 319 (фиг. 18) управления установкой готовности входит первая группа элементов ИЛИ 354-1...354-N, группа элементов И 355-1...355-N, вторая группа элементов ИЛИ 356-1...356-N, группа регистров 357-1...357-N и третья группа элементов ИЛИ 358-1...358-N.
В состав блока 320 (фиг. 19) управления коммутацией входят с первой по N-ую группы двухвводовых элементов И 359-1-1...359-N-N, с первой по N-ую группы N-входовых элементов И 360-1-1...260-N-N, с первой по N-ую группы триггеров 361-1-1...361-N-N, узел 362 управления приоритетом и узел 363 приема входного запроса.
Узел 362 управления приоритетом содержит вход 364 установки нуля, с первой по четвертую группы управляющих выходов 364-1-1...364-1-N, 364-2-1... 364-2-N, 364-3-1. . . 364-3-N, 364-4-1. ..364-4-N, с первой по N-ую группы входов 365-1-1...365-N-N управления выборкой выходного канала и с первой по третью группы управляющих входов 366-1-1.366-1-N, 366-2-1...366-2-N, 366-3-1...366-3-N.
В состав узла 362 (фиг. 20) управления приоритетом входят первый и второй приоритетные шифраторы 367 и 368, элемент ИЛИ 369, первая и вторая группы триггеров 370-1...370-N и 371-1.371-N состояния, первая группа элементов ИЛИ 372-1. . .372-N, группа триггеров 373-1...373-N запроса, первая группа элементов И 374-1. . . 374-N, вторая и третья группы элементов ИЛИ 375-1...375-N и 376-1...376-N, вторая группа элементов И 377-1...377-N.
Узел 363 (фиг. 19) приема входного запроса содержит группу управляющих входов и с первой по N-ую группы входов разрядов номера выходного канала, подключенных к входам 332-2-1...332-2-N и входам 335-1-1...335-N-N блока 320 управления коммутацией и группу управляющих выходов, подключенных к входам 366-1-1...366-1-N узла 362 управления приоритетом.
В состав узла 363 (фиг. 21) входит группа коммутаторов 378-1...378-N и группа дешифраторов 379-1...379-N.
В состав каждого узла 339-i (фиг. 22) преобразователя-приемника входят дешифратор 380, счетчик 381, элемент И 382 и усилитель-формирователь 383.
В состав каждого узла 347-i (фиг. 23) преобразователя передатчика входят элемент ИЛИ 384, усилитель-формирователь 385, шифратор 386, счетчик 387 и элемент И 388.
В состав каждого блока 5 (фиг. 24) буферизации входит группа узлов 389-1...389-N буферизации.
Каждый узел 389-i (фиг. 25) буферизации содержит с первого по четвертый управляющие выходы 390-1...390-4, с первого по третий информационные выходы 390-5. . . 390-7, с первого по пятый управляющие входы, подключенные к соответствующим входам первой и второй групп управляющих входов 36-1...36-N и 37-1. . . 37-N, управляющему входу 35 и к соответствующим входам третьей и четвертой групп управляющих входов 39-1...39-N и 41-1...41-N, и с первого третий информационные входы, подключенные к соответствующим входам первой, второй и третьей групп информационных входов 38-1...38-N, 40-1...40-N и 42-1...42-N.
В состав каждого узла 389-i буферизации входят первый и второй буферы 391-1 и 391-2. При этом буфер 391-1 используется для временного хранения и передачи пакетов командных слов, а буфер 392-2 - для временного хранения и передачи пакетов операндов. Оба буфера имеют одинаковую структуру и конфигурацию, отличаясь лишь внутренней логикой работы средств идентификации типа входного пакета.
Каждый буфер 391-1 (391-2) (фиг. 26) содержит первый и второй управляющие входы 392-1 и 392-2, первый и второй информационные входы 392-3 и 392-4, третий и четвертый управляющие входы 392-5 и 392-6, вход 392-7 внешнего обмена, первый и второй выходы 393-1 и 393-2 управления передачей, информационный выход 393-3 и выход 393-4 внешнего обмена.
В состав каждого буфера 391-1 (391-2) входят выходной коммутатор 394, группа элементов ИЛИ 394-1...394-5, группа элементов И 395-1...395-4, регистровое запоминающее устройство РЗУ 396 и соответствующее устройство 397-1 (или 397-2) управления, входной коммутатор 398, первый и второй входные регистры 399-1 и 399-2.
Каждое устройство 397-1 (397-2) управления содержит управляющие выходы 400-1. . . 400-12, вход 401-1 установки нуля, первый вход 401-2 кода пакета, первый вход 401-3 управления приемом, второй вход 401-4 кода пакета, второй и третий входы 401-5 и 401-6 управления приемом и с первого по пятый управляющие входы 402-1...402-5.
В состав каждого устройства 397-1 (397-2) (фиг. 27) управления входят приоритетный шифратор 403, счетчики 403-1 и 403-2, логические элементы И 404-1. ..404-4, триггеры 405-1...405-3 и соответствующая группа дешифраторов 406-1-1. . . 406-1-3 или 406-2-1...406-2-3. При этом указанные группы дешифраторов выполняют функции средств идентификации входного абонента (тип пакета) и отличаются лишь функционированием внутренней логики: группа дешифраторов 406-1-1...406-1-3 служит для идентификации пакета командных слов, а группа дешифраторов 406-2-1...406-2-3 - для идентификации пакета операндов.
В состав каждого модуля 4-i (фиг. 28) ассоциативной памяти входят буферный регистр 407 и ассоциативное запоминающее устройство (АЗУ) 408, выполненное аналогично устройству по патенту РФ N 2035069 от 10.05.1995.
АЗУ 408 содержит первый и второй информационные выходы 409-1 и 409-2, первый и второй управляющие выходы 410 и 411, первый, второй и третий управляющие входы 412-1. . .412-3, первый и второй информационные входы 413-1 и 413-2.
Первый коммутатор 2 (фиг. 29) включает устройство 414 управления и устройство 415 коммутации, аналогичное устройству 304-1 (304-2) коммутации в составе второго коммутатора 3.
Устройство 414 управления содержит выход 416 управления обменом, группу управляющих выходов 416-1...416-N, с первой по 2N групп выходов 417-1-1... 417-2N-N управления коммутацией каналов, выход 418 управления приемом, вход 419 установки нуля, с первой по 2N групп входов, каждая из которых содержит управляющий вход 419-1-i и адресный вход 419-2-1, первую и вторую группы управляющих входов 420-1...420-N и 421-1...421-N.
Устройство 415 коммутации содержит группу информационных выходов 422-1.. .422-N, группу информационных входов 423-1...423-2N, с первой по N-ую группы входов 424-1-1...424-2N-2N управления коммутацией, группу управляющих выходов 425-1...425-N и группу входов 426-1...426-N управления приемом.
В устройство 414 (фиг. 30) управления входят группа триггеров 427-1... 427-N формирования выходного запроса, узел 428 управления передачей, узел 429 управления приемом, узел 430 управления коммутацией, группа триггеров 431-1. . . 431-2N приема запроса, группа дешифраторов 432-1...432-2N, группа входных регистров 433-1...433-2N и группа элементов И 434-1...434-2N.
Узел 428 управления передачей содержит с первой по N-ую группы управляющих выходов, каждая из которых содержит первый и второй выходы 435-1-i и 435-2-i установки запроса, вход 436 установки нуля, с первой по N-ую группы входов 437-1-1...437-N-2N управления запросом, первую и вторую группы управляющих входов 438-1...438-N и 439-1...439-N.
Узел 429 управления приемом содержит первый управляющий выход 440, группу выходов 440-1...440-2N управления приемом, второй управляющий выход 441, с первой по 2N группы входов, каждая из которых включает первый и второй входы 442-1-i и 442-2-i передачи состояния, группу управляющих входов 443-1. . .443-N, вход 444 установки нуля, с первой по 2N группы входов 445-1-1...445-2N-2N управления сбросом.
Узел 430 управления коммутацией содержит с первой по N-ую группы управляющих выходов 446-1-1...446-N-N, с первой по 2N
группы входов 447-1-1...447-2N-2N управления приоритетом и группу управляющих входов 448-1...448-2N.
В состав узла 428 (фиг. 31) управления передачей входят первая группа элементов ИЛИ 449-1. . . 449-N, группа элементов И 450-1...450-N и вторая группа элементов ИЛИ 451-1...451-N.
В состав узла 388 (фиг. 32) управления приемом входят триггер 452, группа элементов ИЛИ 452-1...452-2N, первый и второй элементы ИЛИ 453-1 и 453-2, с первой по N-ую группы элементов И 454-1-1...454-2N-N, элементы И 455, 456-1 и 456-2.
В состав узла 389 (фиг. 33) управления коммутацией входят группа приоритетных шифраторов 457-1. ..457-N и с первой по N-ую группы элементов ИЛИ 458-1-1...458-N-2N.
Блок 6-i обработки фрагментов программ (фиг. 34) содержит исполнительное устройство 459, узел 460 выходных регистров, узел 461 регистров загрузки, узел 462 входных регистров, узел 463 управления и коммутатор 464.
Исполнительное устройство 459 включает с первого по третий управляющие входы 465-1. ..465-3, информационный вход 466, информационный выход 467 и с первого по пятый управляющие выходы 468-1...468-5.
Узел 460 выходных регистров содержит с первого по седьмой управляющие входы 469-1. ..469-7, информационный вход 470, с первого по третий управляющие выходы 471-1...471-3, адресный выход 472 и информационный выход 473.
Узел 461 регистров загрузки включает с первого по пятый управляющие входы 474-1. ..474-5, информационный вход 475, первый и второй управляющие выходы 476-1 и 476-2 и информационный выход 477.
Узел 462 входных регистров содержит с первого по шестой управляющие входы 478-1. ..478-6, информационный вход 479, с первого по третий управляющие выходы 480-1...480-3 и информационный выход 481.
Узел управления 463 включает с первого по четвертый управляющие входы 482...485 и с первого по третий управляющие выходы 486...488.
Коммутатор 464 содержит первый и второй управляющие входы 489 и 490, первый и второй информационные входы 491 и 492 и информационный выход 493.
В состав исполнительного устройства 459 (фиг. 35) входят микропроцессор 494, оперативная память 495 и шина 496 обмена. В качестве указанных узлов может быть использован стандартный микропроцессорный набор, например, на базе элементов типа Интел 80386.
Узел 460 выходных регистров (фиг. 36) содержит первый и второй регистры 497 и 498, элементы И 499-1...499-3, триггер 500, первый и второй дешифраторы 501-1 и 501-2, элемент ИЛИ 502 и третий регистр 503.
Узел 462 входных регистров (фиг. 37) содержит регистры 504, 505, элемент И 506, дешифратор 507, регистр 508, триггер 509 и элемент ИЛИ 510.
Узел 461 регистров загрузки имеет аналогичную структуру.
Узел 463 управления (фиг. 38) включает элемент ИЛИ 511, приоритетный шифратор 512, триггеры 513, 514, элементы И 515, 516 и элементы ИЛИ 517, 518.
Первый дополнительный коммутатор 7 (фиг. 39) включает устройство 519 управления и устройство 520 коммутации.
Устройство 519 управления содержит управляющий вход 521, с первой по третью группы управляющих входов 522-1...522-N, 523-1...523-N и 524-1... 524-N соответственно, с первой по четвертую группу управляющих выходов 525-1...525-N, 526-1...526-N, 527-1...527-N и 528-1...528-N.
Устройство 520 коммутации содержит первую и вторую группы управляющих входов 529-1-1. . . 529-N-N и 530-1...530-N, группу информационных входов 531-1...531-N, группу информационных выходов 532-1...532-N и группу управляющих выходов 533-1...533-N.
Устройство управления 519 и устройство коммутации 520 имеют внутреннюю структуру, аналогичную соответствующей структуре устройства 303-1 управления и устройства 304-1 коммутации второго коммутатора 3 (см. фиг. 16-23).
Второй дополнительный коммутатор 8 (фиг. 40) включает устройство 534 управления и устройство 535 коммутации, аналогичные устройству 414 управления и устройству 415 коммутации в составе первого коммутатора 2 соответственно (см. фиг. 29-33).
Устройство 534 управления содержит выход 536 управления, группу управляющих выходов 357-1...357-N, с первой по N-ую группы выходов 538-1-1...538-N-N управления коммутацией каналов, выход 539 управления приемом, вход 540 установки нуля, с первой по N-ую группы входов, каждая из которых содержит управляющий вход 541-1-i и адресный вход 541-2-i, первую и вторую группы управляющих входов 542-1...542-N и 543-1...543-N.
Устройство 535 коммутации содержит группу информационных выходов 544-1.. . 544-N, группу информационных входов 545-1...545-N, с первой по N-ую группы входов 546-1-1...546-N-N управления коммутацией, группу управляющих выходов 547-1...547-N и группу входов 548-1...548-N управления приемом.
Дополнительный блок 9 буферизации (фиг. 41) содержит группу узлов 549-1. ..549-N буферизации.
Каждый узел 549-i буферизации (фиг. 42) содержит первый и второй управляющие выходы 550-1 и 550-2, первый и второй информационные выходы 550-3 и 550-4, с первого по четвертый управляющие входы, подключенные к соответствующим входам первой и второй групп управляющих входов 94-1...94-N и 95-1... 95-N, управляющему входу 93 и соответствующему входу третьей группы управляющих входов 97-1...97-N и информационный вход, подключенный к соответствующим входам группы информационных входов 96-1...96-N.
В состав каждого узла 549-i буферизации входят первый и второй буферы 551-1 и 551-2. При этом буфер 551-1 используется для временного хранения и передачи стартовых пакетов обработки фрагмента, а буфер 551-2 - для временного хранения и передачи пакетов дополнительных обращений к фрагментам программ.
Оба буфера имеют одинаковую структуру и конфигурацию, аналогичную структуре и конфигурации буферов 391-1, 391-2 в составе узла буферизации 389-i блока буферизации, соответственно, отличаются лишь внутренней логикой работы средств идентификации типа входного пакета (см. фиг. 26-28).
Принципы организации вычислений с управлением от потока данных предполагают, что алгоритм решения задачи представляется в виде графа вычислительного процесса, состоящего из операторов (команд) над данными (операндами) и указателей (направлений), по которым данные (результаты) перемещаются от команды к команде (фиг. 43).
Обработка данных в соответствии с порядком, определяемым графом, ведется по мере того, как на входах команд образуются готовые к обработке данные. Поток готовых пар данных, относящихся к конкретной команде, производится в памяти, которая осуществляет их поиск по ключу. Ключом, как правило, является код, состоящий из разрядов номера команды, индекса, интерации и т.п. При этом наилучшей оперативной реализацией, с точки зрения соотношений объема и быстродействия, будет реализация такой памяти на оптических элементах, а с точки зрения увеличения производительности ее работы, оптимальным будет являться расслоение общего ее объема на отдельные модули.
Каждая команда имеет номер K-i, который может быть использован для размещения ее в памяти команд, код операции - КОП-i и "адрес назначения" в виде номера K-j той команды, к которой будет относится полученный результат обработки.
Кроме того, команда имеет признаки, определяющие условия ее обработки или ее тип. Команда может быть двухвходовой или одновходовой, в зависимости от того, над сколькими операндами (одним или двумя) производятся действия, определяемые кодом операции. Команда может быть двухадресной или одноадресной, в зависимости от того, по скольким направлениям (на вход скольких команд) передается результат ее исполнения. Например, команда К1 (фиг. 43) является одновходовой двухадресной, команда К2 (К4) двухвходовой одноадресной, команда КЗ одновходовой одноадресной.
Операция, определяемая разрядами КОП данной команды, может выполняться над данными, являющимися числами (операндами), и над данными, являющимися служебной информацией (командными словами). К первой функциональной группе команд относятся арифметические операции или операции обработки операндов, а ко второй группе - операции обработки командных слов.
Для организации процесса обработки графа используется соответствующая структура представления команд и данных в виде информационных объектов, состоящих из многоразрядовых слов, где соответствующие группы разрядов образуют поля с необходимым функциональным назначением (фиг. 44).
Обработка команд осуществляется двумя типами исполнительных устройств, на вход которых поступает информация в виде пакетов операндов и пакетов командных слов. В общем случае пакет включает слово состояний и два слова данных, которые являются либо операндами, либо несут служебную информацию. При этом пакет одновходовой команды содержит слово состояний и только одно слово данных.
Слово состояний включает следующие базовые группы функциональных разрядов (поля):
КОП - код операции;
К - номер команды;
П - номер поколения;
Т - номер интерации;
И - индекс;
Ф - поле фрагмента;
НФ - номер фрагмента;
НБ - номер блока обработки фрагмента.
Функциональные поля слова состояния, представляющие служебную информацию, могут использоваться по-разному. В частности, ключевая группа разрядов для поиска данных в модулях ассоциативной памяти определяется полями К, П, Т, И. При поиске входных данных фрагмента к ним добавляется поле Ф. В состав поля КОП, кроме того, могут входить разряды, указывающие на тип команды (одноадресная, двуадресная, одновходовая, двухвходовая) и на тип пакета (пакет командных слов, пакет операндов).
Если команда имеет два выхода, то результат ее обработки будут сопровождать два слова состояний, что соответствует двум направлениям передачи его.
Разрядные группы признаков, определяющие тип команды-приемника, хранятся в памяти команд и считываются оттуда вместе с номером и кодом операции.
Команды и данные, входящие в состав выделяемых фрагментов (фиг. 43), хранятся в оперативной памяти 495 соответствующего обрабатывающего узла - исполнительного устройства 459 и не занимают объема модулей 4-1...4-N ассоциативной памяти.
Вычислительная система (фиг. 1а, 1б) обеспечивает выполнение основных рабочих программ и выделенных программных фрагментов, загружаемых по первому и второму информационным входам 10 и 11, и выдает результат обработки по второму информационному выходу 15. Система реализует вычислительный процесс, управляемый от потока данных, на основной программе, и процесс обработки данных по принципу фон Неймана на выделенных ее фрагментах.
При этом в память 146 (274) команд исполнительных устройств 106 и 107 каждого процессорного модуля 1-i помещаются все команды исполняемой программы с учетом того, что в память 146 записываются команды для обработки командных слов, а в память 274 - команды для обработки операндов, а в оперативную память 495 исполнительного устройства 459 помещаются команды и данные соответствующих фрагментов (фиг. 5, 11 и 35).
Загрузка команд осуществляется через первые и вторые информационные входы 17 и 18 и коммутаторы 148 и 276 загрузки, соответственно для исполнительного устройства 106 и 107, и информационный вход 460, шину 496 обмена для исполнительного устройства 459.
Инициализация работы системы осуществляется подачей на третий информационный вход 12 стартовых пакетов командных слов и операндов от внешней (на фиг. 1а, 1б не показано) машины системы.
Стартовые пакеты вместе с соответствующими управляющими сигналами поступают на входы третьей группы информационных входов 42-1...42-N блока 5 буферизации. При этом общее число задействованных входов будет определяться условиями запуска конкретной программы.
Блок 5 буферизации служит для сглаживания пика входных запросов на входах второго коммутатора 3. Использование блока 5 буферизации в процессе запуска является его дополнительной функцией.
Разряды стартовых пакетов поступают на информационный вход узла 389-i буферизации, выполняющего в данном случае стартовые функции, и далее на вход 392-7 внешнего обмена первого и второго буфера 391-1 и 391-2 (фиг. 25), откуда они передаются на четвертый информационный вход выходного коммутатора 394 (фиг. 26). При этом управление коммутацией осуществляется по его четвертому управляющему входу, куда, через элемент И 395-4 поступает соответствующий сигнал с управляющего выхода 400-12 устройства 397-1 (397-2) управления. Указанный сигнал управления формируется (фиг. 27) на выходе дешифратора 406-1-3 (406-2-3), на вход которого поступает кодовая группа разрядов, определяющая тип стартового пакета. В зависимости от этого сигнал управления коммутатором (394) будет формироваться либо в буфере 391-1 (прием командных слов), либо в буфере 391-2 (прием операндов).
Если пакет инициализации содержит операнды, то разряды пакета с выхода 393-3 буфера 391-2 передаются (через второй информационный выход узла 389-i и i-й выход третьей группы информационных выходов 49-1...49-N блока 5 буферизации на i-ий вход второй группы информационных входов 31-2-1...31-2-N второго коммутатора 3.
Информация на i-м выходе третьей группы информационных выходов 49-1... 49-N блока 5 буферизации сопровождается стробом передачи (сигналом "значимости"), который является управляющим сигналом запроса на обмен и передается с i-го выхода четвертой группы управляющих выходов 48-1...48-N блока 5 буферизации на i-й вход четвертой группы управляющих входов 30-1...30-N второго коммутатора 3.
Основная функция второго коммутатора 3 - распределить все пришедшие на его входы пакеты по своим незанятым выходам.
Способ передачи и разряды пакета операндов, поступившие соответственно на i-e входы четвертой группы управляющих выходов 30-1...30-N и на i-e входы второй группы информационных входов 31-2-1...31-2-N второго коммутатора 3, передаются на входы 306-i запроса и информационных вход 315-i соответственно устройства 303-2 управления и устройства 304-2 коммутации (фиг.15, 16, 17).
Разряды пакета операндов, поступившие на вход 315-i устройства 304-2 коммутации, принимаются на входной регистр 348-i. При этом сигнал управления приемом формируется на выходе 312-i устройства 303-2 управления.
Коммутация, включающая передачу разрядов пакета со входа 315-i устройства 304-2 коммутации на его информационный выход 316-j, соответствующий первому "свободному" выходному регистру из группы 338-1...338-N, осуществляется с помощью пространственной оптической системы.
С выхода регистра 348-i параллельный код разрядов пакета поступает на входы 353-1. ..353-N узла 347-i преобразователя-передатчика. Сформированный на его выходе 351 последовательный код поступает на лазерный излучатель 346-i. Сигнал лазера, соответствующий последовательному коду, через оптическую систему, включающую управляемый дешифратор 345-i группу оптических линзовых растров 344-1. . .344-N, управляемый оптический транспарант 343 и группу оптических линзовых растров 342-1...342-N, поступает на вход фотоприемника 341-j, с выхода которого последовательный код входного пакета поступает на информационный вход 350-3 узла 339-j преобразователя-приемника. При этом на выходах регистра 338-j формируется параллельный код, соответствующий разрядным группам пакета на входе 315-i узла 304-2 коммутации, а на выходе 349 узла 339-j формируется сигнал, определяющий конец формирования выходного параллельного кода.
Устройство 304-2 коммутации (фиг. 17) осуществляет передачу информации с любого из входов 315-1...315-N на любой из выходов 316-1...316-N, определяемого свободным регистром из группы регистров 338-1...338-N, что соответствует режиму коммутации по "свободному" адресу. Сигналы, управляющие соответствующим преобразованием информации и коммутацией пространственной оптической сети, поступают на входы 313-1-1...313-N-N устройства 304-2 коммутации с выходов 301-1-1...301-N-N устройства 303-2 управления (фиг. 15).
Формирование указанных сигналов производится (фиг. 16, 19, 20) в блоке 320 управления коммутацией при поступлении на его вход 333-i строба передачи со входа 306-i устройства 303-2 управления. При этом на выход 310-j устройства 303-2 управления (фиг. 16) поступает строб передачи пакета, формируемый на триггере 318-j группы триггеров формирования сигнала готовности.
Передача пакета командных слов происходит аналогично, с использованием идентичных функциональных структур блока 5 буферизации и второго коммутатора 3.
Строб передачи и разряды пакета операндов соответственно через выходы 34-3-j и 34-4-j второго коммутатора 3 поступают на входы 22-6 и 20 процессорного модуля 1-j (фиг. 1a, 1б) и на соответствующие входы исполнительного устройства 107 (фиг. 2).
При этом строб передачи через соответствующий вход исполнительного устройства 107 поступает на вход 278-4 узла 271 управления (фиг. 11), а разряды пакета операндов поступают на информационный вход 282-2 узла 277 входных регистров.
Прием функциональных полей пакета операндов (фиг. 13) на регистр 298 слова состояний и регистры 299-1 и 299-2 операндов производится по сигналу управления приемом на входе 282-1 узла 277 входных регистров с выхода 283-1 которого разряды номера команды, через первый информационный вход коммутатора 276 загрузки поступают на адресный вход памяти 274 команд, на вход управления чтением которой поступает сигнал управления пуском с выхода 279-5 узла 271 управления.
Разряды кода операций и разряды операндов с выходов 283-2 и 283-3, 283-4 узла 277 входных регистров, сопровождаемые сигналом управления пуском, поступают на соответствующие входы АЛУ 275, а разряды функциональных полей П, Т, И, - на вход 280-6 узла 273 выходных регистров, на вход 280-5 которого поступают разряды функциональных полей с информационного выхода памяти 274 команд, содержащие код операции и номер команды, для которой предназначен результат вычислений, в свою очередь поступающий на вход 280-4 узла 273.
При этом на входы 280-1, 280-2 и 280-3 узла 273 выходных регистров поступают соответствующие сигналы, реализующие управление приемом результата АЛУ на регистр 300, разрядных полей К и КОП очередной команды на регистры 301-1 и 301-2 и разрядных полей П, Т, И на регистр 302, а на его выходах 281-1, 281-2 и 281-3 формируются функциональные поля результата обработки текущей команды (полупакета), отражающие принцип вычислений, представляемый графом вычислительного процесса, которые поступают соответственно на первый информационный вход 136 исполнительного устройства 107 и на информационные входы выходного коммутатора 274 подключен к адресному выходу 135 и второму информационному выходу 137 исполнительного устройства 107. При этом на выход 135 передается информационное поле, соответствующее группе младших разрядов номера команды, размещенного на регистре 301-1 (301-2). Эта группа разрядов выполняет функцию номера модуля ассоциативной памяти из группы модулей 4-1.. . 4-N, за счет чего реализуется распределение полупакетов по модулям ассоциативной памяти при соответствующей равномерности заполнения. Функции выходного коммутатора 272 определяются условием наличия двухадресных команд, т. е. команд, результат обработки которых служит входным операндом для двух следующих команд (имеющих различные номера и различные коды операций). Это условие реализуется наличием двух выходных регистров 301-1 и 301-2 команд, содержимое которых последовательно предается через коммутатор 272 на выходы 135 и 137, сопровождая результат, поступающий на выход 136.
Сигналы управления выходным коммутатором 272 формируются при поступлении на входы 278-5 и 278-6 узла 271 управления функциональных полей типа команды и строба передачи соответственно с информационного и управляющего выходов памяти 274 команд, а на вход 278-7 - сигнала значимости результата с информационного выхода АЛУ.
Функциональные поля типа команды включают признаки: 1A (одноадресная команда), 2A (двухадресная команда), 1B (одновходовая команда) и 2B (двухвходовая команда), которые поступают (фиг. 12) на триггеры 295-2... 295-5, с учетом состояния которых происходит формирование управляющих сигналов на выходах 279-1 и 279-2 узла 271 управления. При этом на первом и втором управляющих выходах 132 и 133 исполнительного устройства 107 формируются стробы передачи, соответствующие режимам одно- или двухвходовых команд, а на первом и втором информационных выходах 136 и 137 соответствующие этим режимам разряды функциональных полей полупакета.
Разряды полупакета с выходов 136 и 137 в режиме одновходовой и в режиме двухвходовой команды передаются на выходы 25-4, 25-5 и 25-1 и 25-2 j-го процессорного модуля соответственно через коммутаторы 102 и 103, управление которыми производится с выходов 116-1 и 116-2 узла 104 и выходов 120-1 и 120-2 узла 105. При этом формирование управляющих сигналов производится при поступлении на вход 115 узла 104 и вход 118 узла 105 стробов передачи соответственно с выходов 132 и 133 исполнительного устройства 107. Информация о номере модуля ассоциативной памяти с выхода 135 исполнительного устройства 107 поступает на адресный выход 24 процессорного модуля только в режиме двухвходовой команды, поскольку исполнение одновходовой команды не требует поиска второго операнда.
В случае, когда результат (операнд) на выходе соответствующего исполнительного устройства относится к двухвходовой команде, поиск парного операнда осуществляется в модуле ассоциативной памяти, номер которого, именуемый в дальнейшем адресом, определяется разрядной группой на выходе 24 процессорного модуля. Доступ к группе модулей 4-1...4-N ассоциативной памяти реализуется с помощью первого коммутатора 2 (фиг. 29). При этом на j-e входы первой группы коммутатора 2 (фиг. 29). При этом на j-e входы первой группы управляющих, первой группы адресных и второй группы управляющих входов 58-1. . . 58-N, 59-1...59-N, 61-1...61-N первого функциональных полей полупакета с выходов коммутатора 2 поступают разряды функциональных полей полупакета с выходов коммутатора 2 поступают разряды управления номера модуля памяти и 23-1, 24 и 25-1, 25-2 j-го процессорного модуля соответственно функциональных полей полупакета, с выходов коммутатора 2 поступают разряды управления номера модуля памяти и 23-1, 24 и 25-i, 25-2 j-го процессорного модуля соответственно управления номера модуля памяти и 23-1, 24 и 25-1, 25-2 j-го процессорного модуля соответственно.
Первый коммутатор 2, в состав которого входят устройство 414 управления и устройство 415 коммутации, осуществляет передачу данных, в отличие от второго коммутатора 3, по "фиксированному" адресу на выходе, который определяется заданным номером k модуля ассоциативной памяти.
Условия коммутации реализуются в устройстве 414 управления (фиг. 30), на входы 419-1-j и 419-2-j которого поступает соответствующая управляющая информация со входов 58-j и 59-j первого коммутатора 2. При этом производятся прием адреса на регистр 433-j, установка триггера 431-j запроса, формирование на k-ом выходе дешифратора 432-j позиционного кода, соответствующего k-му модулю ассоциативной памяти, и передача этих сигналов на входы 448-1... 448-N и 447-1-1...447-N-N узла 430 управления коммутацией, на выходах 446-1-1. . . 446-N-N которого формируются сигналы управления коммутацией, поступающие на выходы 417-1-1...417-N-N устройства 414 управления.
Указанные сигналы формируются на выходах приоритетных шифраторов 457-1.. .457-N (фиг. 33), которые выполняют функцию схем приоритета, реализуя организацию очереди запросов к каждому конкретному модулю ассоциативной памяти.
Сигналы управления с выходов 417-1-1...417-N-N устройства 414 управления передаются на группу входов 424-1-1...424-N-N управления коммутацией устройства 415 коммутации, структура и функционирование которого полностью аналогичны устройству 304-1 (304-2) коммутации коммутатора 3. При этом на вход 424-j-k устройства 415 коммутации поступает сигнал управления k-м входом j-го дефлектора из группы 345-ключа ассоциативного поиска), разрядное поле операнда и строб передачи 1...345-N (фиг. 17), а на выход 66-k коммутатора 2 при этом передаются разрядные поля, соответствующие его информационному входу 61-j. Соответствующий строб передачи формируется на триггере 427-k (фиг. 30) и через выход 416-k устройства 414 управления поступает на выход 67-k коммутатора 2.
Разряды функциональных полей полупакета и строб передачи с выходов 66-k и 67-k коммутатора 2 поступают на входы 52 и 53 модуля 4-k ассоциативной памяти и при этом разрядное поле слова состояний (в качестве поступают соответственно на входы 413-1, 413-2 и 412-3 ассоциативного запоминающего устройства - АЗУ 408. Разрядное поле слова состояний, кроме того, поступает на информационный вход буферного регистра 407, на управляющий вход которого поступает строб передачи со второго управляющего входа 53 модуля ассоциативной памяти.
Полупакет, которому не находится пары, "оседает" в памяти.
При наличии же в АЗУ 408 соответствующего парного операнда на выходах 409-1 и 409-2 формируются разрядные поля первого и второго операндов, которые вместе с разрядным полем слова состояний (на выходе регистра 407) поступают на информационный вход модуля 4-k ассоциативной памяти, на второй управляющий выход 56 которого при этом поступает строб передачи, сформированный на первом управляющем выходе 410 АЗУ 408.
Сформированный на информационном выходе 55 k-го модуля ассоциативной памяти очередной пакет предается на вход 40-k блока 5 буферизации и поступает на соответствующий вход узла 389-k буферизации, на вход 41-k которого через соответствующий вход блока 5 буферизации поступает строб передачи со второго управляющего выхода 56 модуля 4-k ассоциативной памяти.
При этом, если поступивший пакет является пакетом операндов, то разряды его функциональных полей принимаются на регистр 399-2 буфера 391-2, а соответствующий сигнал управления приемом формируется на выходе 400-9 устройства 397-2 управления.
С выхода регистра 399-2 разрядные поля пакета поступают на второй информационный вход коммутатора 394, на соответствующий управляющий вход которого поступает сигнал управления коммутацией с выхода элемента И 395-1, который передается вместе с разрядными полями на первый вход коммутатора 394, выполняя функцию строба передачи, который окончательно формируется на выходе элемента ИЛИ 394-1.
При этом если свободен соответствующий входной регистр 348-k в устройстве коммутации 304-2 коммутатора 3, то на вход 31-2-k коммутатора 3 передается пакет операндов с первого выхода коммутатора 394, через выход 393-3 буфера 391-2, через выход 390-6 узла 389-k буферизации и выход 49-k блока 5. Соответственно строб передачи поступает на вход 30-k коммутатора 3 с выхода 48-k блока 5 буферизации, и повторяется очередной цикл обработки.
В том случае, когда закрыт прием в коммутатор 3, в случае занятости регистра 348-k в устройстве 304-2 коммутации, на вход 37-k блока 5 буферизации поступает сигнал блокировки передачи, который через соответствующий вход узла 389-k передается на вход 392-1 буфера 391-2, откуда поступает на вход 403-1 устройства 397-2 управления и вход элемента ИЛИ 394-5, на выходе которого формируется сигнал управления, поступающий на пятый управляющий вход коммутатора 394. При этом информация со второго входа коммутатора 397 поступает на его второй выход, откуда передается на вход РЗУ 396, сопровождаемая сигналом записи с выхода 400-11 устройства 397-2 управления. Запись информации в РЗУ 396 будет производится до снятия сигнала блокировки на входе 37-k блока 5 буферизации. В случае снятия этого сигнала и при отсутствии информации на регистрах 399-1, 399-2 и на четвертом информационном входе коммутатора 394, производится передача разрядов пакета из РЗУ 396 через третий информационный вход коммутатора 394 на выход 393-3 буфера 391-2 и на соответствующий вход 49-k блока 5 буферизации и через соответствующие входы/выходы коммутатора 3 на четвертый информационный вход 20 k-го процессорного модуля.
Если при этом полученный в исполнительном устройстве 107 результат не требует поиска соответствующей пары, что определяется условием одновходовой команды, то результат обработки соответствующий строб передачи, формируется соответственно на выходах 25-4, 25-5, 23-4 k-го процессорного модуля, куда они поступают с соответствующих выходов коммутатора 102 и узла 104 управления (фиг. 2). Процесс формирования разрядных полей результата и соответствующих управляющих сигналов производится в соответствии с аналогичным процессом формирования результата двухвходовой команды. При этом разряды полупакета и строб передачи поступают на входы 38-k и 39-k блока 5 буферизации.
Если поступивший полупакет является командным словом, то он принимается на регистр 399-1 буфера 391-1. Соответствующий управляющий сигнал формируется на выходе 410-8 устройства 397-1 управления. Разряды полупакета с выхода регистра 399-1 поступают на информационный вход коммутатора 398, с первого информационного выхода которого разряды полупакета поступают на первый информационный вход коммутатора 394. Соответствующий сигнал управления коммутацией, поступающий на его первый управляющий вход, формируется на выходе элемента И 395-2, на вход которого поступает управляющий сигнал с выхода 400-4 устройства 397-1 управления (фиг. 26, 27).
Второй информационный выход коммутатора 398 используется для передачи результатов вычислений на внешнюю управляющую систему. При этом соответствующий управляющий сигнал формируется на первом выходе дешифратора 406-1-1, на вход которого поступают разряды кода, определяющего тип полупакета, а информация со второго информационного выхода коммутатора 398, вместе со стробом передачи с выхода 400-7 устройства 397-1 управления, поступает на выход 393-4 буфера 391-1 и через выход 391-7 узла 389-k и выход 47-k блока 5 передаются на второй информационный выход (15) системы.
Обработка разрядных полей пакета в исполнительном устройстве 106 включает определяемые системой команд операции над функциональными полями слова состояний, которые реализуются в блоке 144 коммутации (фиг. 5, 7), на входы 154-1...154-12 которого через выход 154-3 блока 142 управления поступают соответствующие управляющие сигналы, формирующиеся на выходах дешифратора 178. При этом в блоке 144 на выходах 244...263 узла 213 управления формируются (фиг. 7) сигналы управления группой коммутаторов 214...219, на информационные входы которых передаются соответствующие разряды функциональных полей слова состояний, поступающие с выходов 163-2...163-11 узла 149 входных регистров. Сформированные таким образом на регистрах 202...212 модифицированные поля слова состояний и данных через информационные выходы узла 144 поступают на входы 153-3 и 153-4 выходного коммутатора 143, а с его выхода - на адресный и второй информационный выходы 127 и 129 исполнительного устройства 106.
Кроме операций по модификации функциональных полей, в исполнительном устройстве 106 выполняются операции определения отношений (например, между значениями данных на двух входах команды или между значениями отдельных функциональных групп разрядов). Операции такого вида реализуются в АЛУ 147.
В остальном работа функциональных узлов исполнительного устройства 106 происходит аналогично работе соответствующих узлов исполнительного устройства 107. На соответствующих управляющих и информационных выходах 23-4, 25-4 и 25-5, 23-1, 25-1 и 25-2 k-го процессорного модуля формируются стробы передачи и разряды функциональных полей результирующего пакета, реализующих начало очередного цикла вычислений.
Если сформированный на информационном выходе 55 К-го модуля ассоциативной памяти очередной пакет является стартовым пакетом обработки локальной части программы, определяемой фрагментом Ф, то разряды его функциональных полей принимаются на буфер 551-1 в составе дополнительного блока 9 буферизации (см. фиг. 1а, 1б; фиг. 41 и 42). Во всем остальном дальнейшая работа по передаче стартового пакета фрагмента Ф на третий информационный вход 74 блока 6-i обработки фрагментов программ через первый дополнительный коммутатор 7 производится согласно изложенной выше передаче пакетов с выхода блока 5 буферизации на третий и четвертый информационные входы 19 и 20 процессорного модуля 1-i. При этом первый дополнительный коммутатор 7 осуществляет выбор первого свободного блока 6-к из группы блоков (6-1...6-N) обработки фрагментов программ.
Разряды функциональных полей информационного пакета и сопровождающий их строб передачи поступают соответственно на третий информационный вход 74 и четвертый управляющий вход 71 блока 6-к обработки фрагментов программ с информационного и управляющего выходов 84-2-k и 84-1-k k-ой группы выходов обмена первого дополнительного коммутатора 7.
В соответствии с выходными управляющими сигналами на выходах 486, 487 узла управления информация со входа 74 блока 6-к передается через выход 493 коммутатора 464 на вход 479 узла 462 входных регистров, а на его вход 478-5 поступает строб передачи с выхода 488 узла 463 управления. При этом, в отличие от процессорных модулей группы 1-1...1-N, где после обработки каждого пакета производится обращение к группе модулей 4-1...4-N ассоциативной памяти, в каждом блоке обработки фрагментов из группы 6-1...6-N осуществляется полная обработка определенной части (частей) основной программы и в модули 4-1...4-N ассоциативной памяти передается лишь конечный результат.
Загрузка программ (соответствующих принципу обработки по фон Нейману) осуществляется при начальной загрузке вычислительной системы. При этом и команды, и данные поступают на первый информационный вход 72 блока 6-i обработки фрагментов программ через первый информационный вход 10 системы, откуда передаются на вход 475 узла 461 регистров загрузки. Далее, разряды функциональных полей команд (соответствующих системе команд исполнительного устройства 459) и данных поступают с выхода 477 блока 461 на информационный вход 466 устройства 459, сопровождаемые сигналами прерывания и готовности с выходов 476-1 и 476-2, поступающих соответственно на входы 465-2 и 465-3 устройства 459.
Через шину обмена 496 под управлением микропроцессора 494 осуществляется загрузка команд и данных фрагментов рабочих программ в оперативную память 495.
При поступлении на вход 479 узла 462 стартового пакета фрагмента, а на вход 478-5 соответствующего строба передачи, осуществляется прием операндов на регистры 504 и 505, и поля Ф слова состояний на регистр 508. При наличии на входе 478-5 строба передачи производится установка триггера 509, и на выходе 480-2 формируется сигнал прерывания, который поступает на вход 465-2 устройства 459 вместе с разрядным полем, поступающим с выхода регистра 508 по сигналу "чтение" с выхода триггера 509 через выход 481 узла 462 на информационный вход 466 устройства 459.
Микропроцессор 494 "опознает" разрядное поле, переданное на шину 496 обмена с выхода 466 устройства 459, и выдает группу сигналов управления на выходы 468-1.468-4, которые передаются на входы 478-2...478-4 и 478-6 узла 462, где формируются соответствующие сигналы последовательного чтения и передачи данных из регистров 504 и 505 через выход 481 на информационный вход 466 устройства 459. При этом микропроцессор 494 в соответствии с номером и параметрами фрагмента Ф запускает соответствующую программу обработки, окончание которой сопровождается прерыванием микропроцессора 494. По этому прерыванию микропроцессор 494 формирует "вектор выхода", соответствующий текущему номеру, присвоенному регистру 503 узла 460, который (в сопровождении управляющего сигнала с выхода 468 исполнительного устройства 459, поступающего на вход 469-7 узла 460, через шину 496 обмена и выход 467 исполнительного устройства 459) передается на вход 470 узла 460. При этом осуществляется запись информации в регистр 503, откуда она передается на вход дешифратора 501-1, на выходе которого формируется сигнал прерывания и через выход 472-1 передается на вход 465-2 исполнительного устройства 459.
По этому прерыванию микропроцессор 494 формирует группу управляющих сигналов, которые передаются через выходы 468-1...468-4 исполнительного устройства 459 на выходы 469-3...469-6 узла 460, в результате чего осуществляется прием разрядных полей результата обработки фрагмента Ф на входы регистров 497 и 498 через вход 470 узла 460 с выхода 467 исполнительного устройства 459.
При этом формат данных на регистрах 497 и 498 соответствует полупакету результата при обработке команд в процессорном модуле 1-i.
На выходе 471-3 узла 460 формируется строб передачи, поступающий на выход 76 блока 6-к обработки фрагментов программ, откуда передается на вход 62-к третьей группы управляющих входов первого коммутатора 2. При этом на вход 63-к второй группы адресных входов и на вход 64-к второй группы информационных входов коммутатора 2 поступают адрес и разряды функциональных полей выходного полупакета результата обработки фрагмента программы с выхода 77 и 78 блока 6-к. Адрес определяет номер модуля 4-j ассоциативной памяти, где находилась стартовая команда обработки фрагмента Ф. С выхода 66-j группы информационных выходов коммутатора 2 разрядные поля полупакета поступают на вход 52 модуля 4-j ассоциативной памяти, в результате чего данные результата обработки фрагмента Ф объединяются с общим полем рабочей программы.
Если обрабатываемый фрагмент Ф имеет дополнительные К-дi...Кдm обращения (см. фиг. 42) со стороны общего поля рабочей программы, то для их обработки используются команды-шаблоны Кдб1...Кдбm, формируемые стартовым блоком 6-к. При этом в поле НБ слова состояния (см. фиг. 43) появляется номер, соответствующий стартовому блоку 6-к, в котором обрабатывается данный фрагмент программы.
При этом на выходе модуля 4-j ассоциативной памяти формируются (по мере готовности данных) пакеты дополнительных обращений на обработку к локально выделенному фрагменту Ф. Эти пакеты передаются с информационного выхода 55 модуля 4-j ассоциативной памяти на вход 96-j группы информационных входов дополнительного блока 9 буферизации, откуда поступают на информационный вход 552-3 буфера 551-2. С выхода 101-j дополнительного блока 9 буферизации пакет дополнительных обращений поступает на информационный вход 89-j второго дополнительного коммутатора 8, на адресный вход 87-j которого поступает разрядное поле НБ пакета, соответствующее номеру стартового блока 6-к обработки фрагментов программ. В результате на выход 91-к второго дополнительного коммутатора 8 поступают информационные поля разрядов пакета дополнительного обращения, откуда они передаются на второй информационный вход 73 блока 6-к обработки фрагментов. Дальнейшая работа осуществляется аналогично передаче и обработке стартового пакета фрагмента Ф.
Таким образом, введение в состав вычислительной системы блоков обработки фрагментов программ, первого и второго дополнительных коммутаторов и дополнительного блока буферизации позволило снизить требования к объему модулей ассоциативной памяти и производить обработку локально выделенных участков программ (или целых программ) с низким внутренним параллелизмом с помощью фон-неймановского способа вычислений при сохранении принципа управления от потока данных для основных рабочих программ, в результате чего повысилась производительность системы и существенно расширилась номенклатура эффективно исполняемых программ практически при отсутствии потерь времени на распределение заданий между блоками обработки фрагментов.
название | год | авторы | номер документа |
---|---|---|---|
ВЫЧИСЛИТЕЛЬНАЯ СИСТЕМА | 1995 |
|
RU2110089C1 |
ВЫЧИСЛИТЕЛЬНАЯ МАШИНА | 1997 |
|
RU2130198C1 |
СПОСОБ ОБРАБОТКИ ИНФОРМАЦИИ НА ОСНОВЕ ПОТОКА ДАННЫХ И УСТРОЙСТВО ДЛЯ ЕГО ОСУЩЕСТВЛЕНИЯ | 2005 |
|
RU2281546C1 |
ВЫЧИСЛИТЕЛЬНАЯ СИСТЕМА | 1991 |
|
RU2042193C1 |
УСТРОЙСТВО ДЛЯ ОБРАБОТКИ ИНФОРМАЦИИ | 1991 |
|
RU2029359C1 |
Реконфигурируемый вычислительный модуль | 2018 |
|
RU2686017C1 |
Вычислительная система | 1977 |
|
SU692400A1 |
МНОГОПРОЦЕССОРНАЯ ВЕКТОРНАЯ ЭВМ | 1995 |
|
RU2113010C1 |
УСТРОЙСТВО УПРАВЛЕНИЯ СОПРЯЖЕНИЕМ АБОНЕНТОВ | 1993 |
|
RU2037196C1 |
КОМПЬЮТЕР | 1998 |
|
RU2216033C2 |
Изобретение относится к вычислительной технике, в частности к вычислительным системам, использующим управление вычислениями от потока данных. Техническим результатом является расширение функциональных возможностей и повышение производительности путем снижения объема ассоциативной памяти за счет локального введения в процесс вычислений принципа обработки фон Неймана, в вычислительную систему, содержащую N процессорных модулей, первый и второй коммутаторы, N модулей ассоциативной памяти, блок буферизации, введены N блоков обработки фрагментов программ, первый и второй дополнительные коммутаторы, дополнительный блок буферизации, соединенные определенным образом с вышеуказанными блоками системы. 1 з.п. ф-лы, 44 ил.
Бесколесный шариковый ход для железнодорожных вагонов | 1917 |
|
SU97A1 |
US 4814978 A, 21.03.89 | |||
US 5243699 A, 07.09.93 | |||
Устройство для ввода информации | 1988 |
|
SU1589284A1 |
Многопроцессорная вычислительная система | 1988 |
|
SU1569843A1 |
Вычислительная система | 1989 |
|
SU1633417A1 |
Авторы
Даты
2000-05-10—Публикация
1998-02-20—Подача