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



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

Владельцы патента RU 2688236:

Федеральное государственное бюджетное образовательное учреждение высшего образования "Юго-Западный государственный университет" (ЮЗГУ) (RU)

Изобретение относится к области цифровой вычислительной техники и предназначено для моделирования комбинаторных задач при проектировании вычислительных систем. Технический результат заключается в расширении арсенала технических средств. Устройство, содержащее первый и второй регистр сдвига, блок формирования перестановок, блок постоянной памяти, блок запоминания лучшего варианта, коммутатор, АЛУ, дешифратор выбора дуги, реверсивный счетчик ячеек, блок оперативной памяти, счетчик топологии, первый и второй счетчики расстояний, умножитель, сумматор, регистр минимальной длины связей, первый элемент сравнения, вычитатель, триггеры начала счета, режима и задания топологии, регистр длины связей, второй элемент сравнения, счетчик дуг, дешифратор блокировки дуги, регистр номера дуги, регистр минимального веса, электронную модель графа, группу 1..n элементов ИЛИ, группу 1..m элементов И, введен блок минимального значения, содержащий первое ОЗУ кольцевой циклической системы, ОЗУ циклического фрагмента, SR-триггер режима, умножитель, счетчик расстояний, вычитающий счетчик. 1 з.п. ф-лы, 10 ил.

 

Изобретение относится к области цифровой вычислительной техники и предназначено для моделирования комбинаторных задач при проектировании вычислительных систем (ВС).

Известен элемент однородной среды, включающий блок обработки входных сигналов, блок запоминания признака конечной точки, блок выходной логики, триггер записи трасс, блок оценки текущего размещения, блок передачи информации, входы, выходы, управляющий вход, информационные входы, информационные выходы, индикаторный выход (а.с. 1291957 СССР кл. G 06 F 7/00, опубл. 23.02.87, БИ №7).

Недостатком указанного элемента является узкая область применения, обусловленная ограниченным числом критериев оценки степени оптимальности размещения.

Наиболее близкой к предлагаемому устройству по технической сущности является устройство для формирования субоптимального размещения и его оценки, содержащая блок формирования перестановок, блок постоянной памяти, коммутатор, арифметико-логическое устройство (АЛУ), блок запоминания лучшего варианта, введены дешифратор выбора дуги, реверсивный счетчик ячеек, блок оперативной памяти, счетчик топологии, первый и второй счетчики расстояний, умножитель, сумматор, регистр минимальной длины связей, первый элемент сравнения, вычитатель, триггер начала счета, триггер режима, триггер задания топологии, регистр длины связей, второй элемент сравнения, счетчик дуг, дешифратор блокировки дуги, регистр номера дуги, регистр минимального веса, группа элементов И, первый и второй элементы И, второй блок элементов ИЛИ, третий элемент И, первый и второй одновибраторы, первый, второй и третий элементы задержки, два регистра сдвига, элемент ИЛИ и группу элементов ИЛИ, электронную модель графа (ЭМГ) содержащую m электронных моделей дуги, причем l-я электронная модель дуги (l = 1, 2, …, m) содержит триггер блокировки дуги, регистр веса дуги, регистр блокировки дуги, первый элемент И, второй элемент И, элемент ИЛИ (Патент РФ №2193796, кл. G 06 F 17/10, 7/38, опубл. 27.11.2002, БИ №33).

Недостатком указанного устройства является узкая область применения, обусловленная отсутствием средств для подсчета минимального значения интенсивности размещения в многопроцессорных кубических циклических системах (КЦС) при однонаправленной передаче информации.

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

Техническая задача решается тем, что в устройство для подсчета минимального значения интенсивности размещения в многопроцессорных кубических циклических системах при однонаправленной передаче информации, содержащее матрицу из m строк и n столбцов элементов однородной среды, n блоков подсчета единиц, блок нахождения максимума, сумматор, блок памяти, причем входы управления перестановкой столбцов матрицы элементов однородной среды соединены с входом управления перестановкой столбцов устройства, входы управления перестановкой строк матрицы элементов однородной среды соединены с входом управления перестановкой строк устройства, входы установки матрицы элементов однородной среды соединены с входом установки устройства, информационные входы матрицы элементов однородной среды соединены с входом записи устройства, индикаторные выходы элементов j-го столбца (j = 1,2, …, n) матрицы элементов однородной среды соединены с входом j-го блока подсчета единиц, выход которого соединен с j-м входом блока нахождения максимума и j-м входом сумматора, выходы которых соединены с выходом максимальной длины ребра устройства и выходом суммарной длины ребер устройства соответственно, вход управления записью блока памяти соединен с входом управления записью устройства, информационные выходы элементов i-й строки (i = 1,2, …, m) матрицы элементов однородной среды соединены с i-м информационным входом блока памяти, выход которого соединен с информационным выходом устройства, дополнительно введен блок минимального значения, содержащее первое ОЗУ кольцевой циклической системы, ОЗУ циклического фрагмента, первый счетчик столбцов, второй счетчик столбцов, первый счетчик строк, второй счетчик столбцов, сумматор минимального значения, первый элемент И, второе ОЗУ кольцевой циклической системы, третий счетчик столбцов матрицы смежности, второй счетчик строк, первый и второй счетчик количества строк, счетчик количества циклических участков, SR-триггер режима, второй элемент И, умножитель, счетчик расстояний, вычитающий счетчик, причем выход блока оперативной памяти соединен с первым входом второго элемента И, второй вход которого подсоединен к выходу переполнения первого счетчика количества строк, второму входу первого 66 элемента И и к е-входу счетчика количества циклических участков, счетный вход которого подключен к выходу переполнения второго счетчика столбцов, е-вход которого соединен с выходом первого элемента И и к е-входу второго счетчика столбцов, выход переполнения которого подключен к счетному входу второго счетчика столбцов, выход которого соединен с а1-входом ОЗУ циклического фрагмента, а2-вход которого, подключен к выходу второго счетчика столбцов, счетный вход которого подсоединен к тактовому входу устройства, счетный вход счетчика расстояний подключен к тактовому входу устройства, выход счетчика расстояний соединен с первым входом умножителя и со счетным входом вычитающего счетчика, выход переполнения которого соединен с s-входом счетчика расстояний, второй вход умножителя соединен с выходом блока оперативной памяти, выход второго элемента И соединен с S-входом SR-триггера режима, R-вход которого подключен к выходу переполнения второго счетчика количества строк, счетный вход которого подключен к выходу переполнения первого счетчика столбцов, е-вход которого соединен с прямым выходом SR-триггер режима, обратный выход которого подключен к е-входу третьего счетчика столбцов, счетный вход которого подключен к тактовому входу устройства, сетному входу счетчика первого счетчика столбцов и к s-входам первого ОЗУ кольцевой циклической системы и второго ОЗУ кольцевой циклической системы, D-вход которого соединен с выходом умножителя и с D-входом первого ОЗУ кольцевой циклической системы, а1-вход которого соединен с выходом первого счетчика строк, а2-вход первого ОЗУ кольцевой циклической системы подключен к выходу первого счетчика столбцов, а1-вход второго ОЗУ кольцевой циклической системы подключен к выходу второго счетчика строк, счетный вход которого соединен с выходом первого счетчика количества строк, D-вход ОЗУ циклического фрагмента подсоединен к выходу блока оперативной памяти, выход ОЗУ циклического фрагмента соединен с первым входом сумматора, второй и третий входу сумматора подключены к выходам первого ОЗУ кольцевой циклической системы и второго ОЗУ кольцевой циклической системы, выход сумматора подключен к выходу ВУУ, где происходит принятие решения о дальнейших действиях многопроцессорной кубической циклической системы, выход переполнения счетчика количества циклических участков соединен с выходом переполнения устройства.

Устройство по п.1, отличающееся тем, что электронная модель графа содержит m электронных моделей дуги, причем l-я электронная модель дуги (l = 1, 2, …, m) содержит триггер блокировки дуги, регистр веса дуги, регистр блокировки дуги, первый элемент И, второй элемент И, элемент ИЛИ, причем входы первого элемента И соединены с соответствующими входами задания графа устройства, выход первого элемента И соединен с синхровходом регистра веса дуги и с установочным входом триггера блокировки дуги, вход сброса которого соединен с l-м входом блокировки дуги электронной модели графа, вход данных регистра веса дуги соединен с l-м входом веса дуги устройства, первый вход элемента ИЛИ соединен с l-м управляющим входом электронной модели графа, а второй вход элемента ИЛИ соединен с выходом второго элемента И, первый вход которого соединен с прямым выходом триггера блокировки дуги и с разрешающим входом регистра блокировки дуги, второй вход второго элемента И соединен с l-м входом выбора дуги электронной модели графа, вход сброса регистра блокировки дуги соединен с l-м входом сброса устройства, выход регистра блокировки дуги соединен с l-м выходом веса дуги электронной модели графа, который также соединен с выходом регистра веса дуги, выход элемента ИЛИ подключен к разрешающему входу регистра веса дуги.

Сущность изобретения поясняется чертежами, где на фиг. 1 показан пример исходного графа задачи; фиг. 2 показывает пример описания матрицы смежности графа, показанного на фиг 1; на фиг. 2 показана матрица смежности W кольцевой кубической системы, соответствующая графу, представленному на фиг.1; на фиг. 3 представлена матрица расстояний для кольцевой кубической системы, состоящей из шести процессоров; фиг 4 показывает пример многопроцессорной кубической циклической системы; фиг. 5 представляет циклический вариант представления кубической циклической многопроцессорной системы; фиг. 6 описывает матрицу смежности для циклического фрагмента, представленного на фиг. 5; фиг. 7. показывает матрицу расстояний для циклического фрагмента, представленного на фиг. 5; на фиг. 8, фиг. 9 и фиг. 10 представляют устройство для подсчета минимального значения интенсивности размещения в многопроцессорных кубических циклических системах.

Общие особенности изобретения состоят в следующем.

Предлагаемое устройство может использоваться в области проектирования ВC, например, при размещении процессов (алгоритмов, задач, данных, файлов и т.п.). Устройство дополнительно позволяет выполнять подсчет минимальное значение интенсивности размещения в многопроцессорных кубических циклических системах.

Исходная задача (процесс, алгоритм, программа) представляется в виде направленного взвешенного графа G=<Х,E> (фиг. 1), вершины которого соответствуют подзадачам (подалгоритмам, подпрограммам и т.п.), а дуги задают управляющие и/или информационные связи между подзадачами и фактически являются каналами передачи данных. Граф G может быть описан матрицей смежности , где ; – объем передаваемых данных между i-м и j-м процессорным модулем (фиг. 2).

Топологическая модель КЦС (область размещения) задается матрицей расстояний D1. Элементы матрицы расстояний D1 = ||d1i,j||n×n для кубической системы образуются по формуле (фиг. 3)

Кубическая циклическая система (фиг. 4) представляет собой булев куб (q=2) размерности d, каждая из вершин которого вместо одного элемента, что характерно для полного гиперкуба, представляется циклом из d связанных вершин. Каждый из элементов в таком цикле имеет по три двунаправленных канала связи, два из которых подключено к соседним элементам, принадлежащим общему с данным элементом циклу, а третий канал пересекает гиперкуб в одном из d измерений и соединяет рассматриваемый элемент с соответствующим элементом другого цикла.

Для математического описания циклического фрагмента кубической системы (фиг. 5) введем матрицу смежности , где ; – объем передаваемых данных между i-м и j-м процессорным модулем (фиг. 6). Топологическая модель цикла описывается матрицей расстояний для кубической системы образуются по формуле (фиг. 7). На фиг. 5, 6 и 7 представлена матрица смежности и матрица расстояний, не соответствующая графу, изображенному на фигурах 1-3. Это сделано для общего понимания сути циклического фрагмента КЦС.

Топология КЦС задается графом , где множество вершин соответствует процессорным модулям, а множество дуг V – межмодульным связям, Множество разбивается на два непересекающихся подмножества , где – множество основных процессоров, – множество циклических фрагментов кубической системы, причем фиксируется Упорядочим множества процессоров P и L в виде матриц и соответственно. Множество представим объединением указанных матриц следующим образом:

(1)

Таким образом, из (1) следует, что любой вершине соответствует одна из циклических вершин КЦС.

Таким образом, согласно (1), размещение множества взаимосвязанных подпрограмм, описываемого графом Х, в многопроцессорных кубических циклических системах задается отображением:

, (2)

которое ставит в соответствие каждой подпрограмме один из процессоров (основной либо процессор циклического фрагмента КЦС).

Минимально значение интенсивности размещения L* независимо от топологической модели определяется по формуле:

, (3)

где , – векторы, первый из которых содержит ненулевые элементы матрицы смежности W1, расположенные по убыванию, а второй – ненулевые элементы матрицы расстояний D1, расположенные по возрастанию; k – порядковый номер элемента; t= - мощность множества дуг E (количество дуг). При этом фактическое значение интенсивности размещения всегда либо больше, либо равно L*.где максимум в фигурных скобках представляет собой наибольшую частную коммуникационную задержку для заданного отображения β.

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

Устройство для подсчета минимального значения интенсивности размещения в многопроцессорных кубических циклических системах при однонаправленной передаче информации содержит первый регистр 1 сдвига, второй регистр 2 сдвига, блок 3 формирования перестановок (БФП), блок 4 постоянной памяти, блок 5 запоминания лучшего варианта (БЗЛВ), коммутатор 6, АЛУ 7, дешифратор 8 выбора дуги, реверсивный счетчик 9 ячеек, блок 10 оперативной памяти, счетчик 11 топологии, первый 12 и второй 13 счетчики расстояний, умножитель 14, сумматор 15, регистр 16 минимальной длины связей, первый элемент 17 сравнения, вычитатель 18, триггер 19 начала счета, триггер 23 режима, триггер 24 задания топологии, регистр 25 длины связей, второй элемент 26 сравнения, счетчик 27 дуг, дешифратор 28 блокировки дуги, регистр 29 номера дуги, регистр 30 минимального веса, электронную модель 31 графа, группу элементов ИЛИ 32.1 – 32.n, группу элементов И 33.1 – 33.m, первый 34 и второй 35 элементы И, второй блок элементов ИЛИ 36, третий элемент И 37, первый 41 и второй 42 одновибраторы, первый 43, второй 44 и третий 45 элементы задержки, первый блок элементов ИЛИ 46, причем выходы БФП 3 соединены с соответствующими входами блока 4 постоянной памяти и соответствующими входами БЗЛВ 5, сигнализирующий выход БФП 3 соединен с установочным входом триггера 19 начала счета, выходы блока 4 постоянной памяти соединены с соответствующими входами коммутатора 6, выход которого соединен с входом АЛУ 7, выход которого соединен с информационным входом БЗЛВ 5, а выход БЗЛВ 5 соединен с первым информационным входом АЛУ 7, выход переполнения регистра 1 сдвига соединен с входом регистра 2 сдвига, выходы регистров 1 и 2 с первого по n-й подключены к первым и вторым входам элементов ИЛИ 32.1 – 32.n соответственно, выход переполнения регистра 2 сдвига соединен с управляющим входом АЛУ 7 и с управляющим входом БФП 3, тактовый вход 57 устройства соединен с входом регистра 1 сдвига, с тактовым входом БФП 3 и с первыми входами элементов И 34 и 35, выход счетчика 27 дуг соединен с входом дешифратора 8 выбора дуги и входом данных регистра 29 номера дуги, выход блока элементов ИЛИ 36 подключен к первому входу элемента 17 сравнения и к входу данных регистра 30 минимального веса, выход регистра 30 минимального веса соединен с вторым входом элемента 17 сравнения и с входом данных блока 10 оперативной памяти, выход элемента 43 задержки соединен с входом установки регистра 30 минимального веса и с входом установки регистра 29 номера дуги, выход третьего элемента И 37 соединен с синхровходом регистра 30 минимального веса и с синхровходом регистра 29 номера дуги, выход регистра 29 номера дуги соединен с информационным входом дешифратора 28 блокировки дуги, выход переполнения счетчика 27 дуг соединен с разрешающим входом дешифратора 28 блокировки дуги, а также с входом элемента 43 задержки, первым счетным входом реверсивного счетчика 9 ячеек и входом записи блока 10 оперативной памяти, выход элемента И 34 соединен со счетным входом счетчика 27 дуг и со входом элемента 44 задержки, выход которого соединен со вторым входом элемента И 37, первый вход которого соединен с выходом элемента 17 сравнения, второй вход элемента И 34 соединен с прямым выходом триггера 19 начала счета, который также соединен со вторым входом элемента И 35, третий вход элемента И 34 соединен с инверсным выходом триггера 23 режима, прямой выход которого соединен с третьим входом элемента И 35, выход элемента И 35 соединен со вторым счетным входом реверсивного счетчика 9 ячеек, выход которого подключен к адресному входу блока 10 оперативной памяти, выход которого подключен к первому входу умножителя 14, выход счетчика 13 расстояний подключен к второму входу умножителя 14, выход которого подключен к первому входу сумматора 15, второй вход которого подключен к выходу регистра 16 минимальной длины связей и к второму входу вычитателя 18, выход сумматора 15 подключен к входу данных регистра 16 минимальной длины связей, выход элемента 45 задержки подключен к синхровходу регистра 16 минимальной длины связей, выход элемента И 35 и счетный вход счетчика 12 расстояний подключены к входу элемента 45 задержки, выход одновибратора 42 подключен к синхровходу счетчика 12 расстояний, выход переполнения которого подключен к счетным входам счетчика 11 топологии, счетчика 13 расстояний и к входу одновибратора 42, выход счетчика 11 топологии подключен к входу счетчика 12 расстояний, вход 51 данных устройства подключен ко входу данных счетчика 11 топологии, синхровход счетчика 11 топологии подключен к входу 52 установки устройства, прямой выход триггера 24 задания топологии подключен к разрешающему входу счетчика 11 топологии, установочный вход триггера 24 задания топологии подключен к входу 49 установки устройства, вход сброса триггера 24 задания топологии подключен к входу 50 установки устройства, выход переполнения реверсивного счетчика 9 ячеек подключен к установочному входу триггера 23 режима, вход сброса которого подключен к входу 48 установки устройства, выход регистра 25 длины связей подключен ко второму входу элемента 26 сравнения и к первому входу вычитателя 18, первый вход элемента 26 сравнения подключен к выходу АЛУ 7 и входу данных регистра 25 длины связей, выход одновибратора 41 подключен к синхровходу регистра 25 длины связей, вход сброса триггера 19 начала счета подключен к входу 47 установки устройства, l-й выход дешифратора 8 выбора дуги (l = 1, 2, …, m) соединен с l-м входом выбора дуги электронной модели 31 графа, l-й выход дешифратора 28 блокировки дуги соединен с l-м входом блокировки дуги электронной модели 31 графа, l-й выход веса дуги электронной модели 31 графа соединен с l-м входом блока элементов ИЛИ 36 и l-м входом блока элементов ИЛИ 46, выход элемента И 33.l соединен с l-м управляющим входом электронной модели 31 графа, выход блока элементов ИЛИ 46 соединен со вторым информационным входом АЛУ 7, выход элемента 26 сравнения соединен с входом одновибратора 41, выходы элементов ИЛИ 32.1 – 32.n подключены к соответствующим входам элементов И 33.1 – 33.m, выход вычитателя 18 соединен с выходом 53 длины связей устройства, а также дополнительно введенный блок 58 минимального значения, содержащее первое 59 ОЗУ кольцевой циклической системы, ОЗУ 60 циклического фрагмента, первый 61 счетчик столбцов, второй 62 счетчик столбцов, первый 63 счетчик строк, второй 64 счетчик столбцов, сумматор 65 минимального значения, первый 66 элемент И, второе 67 ОЗУ кольцевой циклической системы, третий 68 счетчик столбцов матрицы смежности, второй 69 счетчик строк, первый 70 и второй 71 счетчик количества строк, счетчик 72 количества циклических участков, SR-триггер 74 режима, второй 76 элемент И, умножитель 77, счетчик 78 расстояний, вычитающий 79 счетчик, причем выход блока 10 оперативной памяти соединен с первым входом второго 76 элемента И, второй вход которого подсоединен к выходу переполнения первого 70 счетчика количества строк, второму входу первого 66 элемента И и к е-входу счетчика 72 количества циклических участков, счетный вход которого подключен к выходу переполнения второго 64 счетчика столбцов, е-вход которого соединен с выходом первого 66 элемента И и к е-входу второго 62 счетчика столбцов, выход переполнения которого подключен к счетному входу второго 64 счетчика столбцов, выход которого соединен с а1-входом ОЗУ 60 циклического фрагмента, а2-вход которого, подключен к выходу второго 62 счетчика столбцов, счетный вход которого подсоединен к тактовому 57 входу устройства, счетный вход счетчика 78 расстояний подключен к тактовому 57 входу устройства, выход счетчика 78 расстояний соединен с первым входом умножителя 77 и со счетным входом вычитающего 79 счетчика, выход переполнения которого соединен с s-входом счетчика 78 расстояний, второй вход умножителя 77 соединен с выходом блока 10 оперативной памяти, выход второго 76 элемента И соединен с S-входом SR-триггера 74 режима, R-вход которого подключен к выходу переполнения второго 71 счетчика количества строк, счетный вход которого подключен к выходу переполнения первого 61 счетчика столбцов, е-вход которого соединен с прямым выходом SR-триггер 74 режима, обратный выход которого подключен к е-входу третьего 68 счетчика столбцов, счетный вход которого подключен к тактовому 57 входу устройства, сетному входу счетчика первого 61 счетчика столбцов и к s-входам первого 59 ОЗУ кольцевой циклической системы и второго 67 ОЗУ кольцевой циклической системы, D-вход которого соединен с выходом умножителя 77 и с D-входом первого 59 ОЗУ кольцевой циклической системы, а1-вход которого соединен с выходом первого 63 счетчика строк, а2-вход первого 59 ОЗУ кольцевой циклической системы подключен к выходу первого 61 счетчика столбцов, а1-вход второго 67 ОЗУ кольцевой циклической системы подключен к выходу второго 69 счетчика строк, счетный вход которого соединен с выходом первого 70 счетчика количества строк, D-вход ОЗУ 60 циклического фрагмента подсоединен к выходу блока 10 оперативной памяти, выход ОЗУ 60 циклического фрагмента соединен с первым входом сумматора 65, второй и третий входу сумматора 65 подключены к выходам первого 59 ОЗУ кольцевой циклической системы и второго 67 ОЗУ кольцевой циклической системы, выход сумматора 65 подключен к выходу ВУУ, где происходит принятие решения о дальнейших действиях многопроцессорной кубической циклической системы, выход переполнения счетчика 72 количества циклических участков соединен с выходом 73 переполнения устройства.

Устройство по п.1, отличающееся тем, что электронная модель 31 графа (фиг. 9) содержит m электронных моделей дуги, причем электронная модель 31.l дуги (l = 1, 2, …, m) содержит триггер 20.l блокировки дуги, регистр 21.l веса дуги, регистр 22.l блокировки дуги, первый элемент И 38.l, второй элемент И 39.l, элемент ИЛИ 40.l, причем входы элемента И 38.l соединены с соответствующими входами 56.y и 56.z задания графа устройства (где y и z – номера соответственно начальной и конечной вершины l-й дуги графа), выход элемента И 38.l соединен с синхровходом регистра 21.l веса дуги и с установочным входом триггера 20.l блокировки дуги, вход сброса которого соединен с l-м входом блокировки дуги модели 31, вход данных регистра 21.l веса дуги соединен с входом 54.l веса дуги устройства, первый вход элемента ИЛИ 40.l соединен с l-м управляющим входом модели 31, а второй вход элемента ИЛИ 40.l соединен с выходом элемента И 39.l, первый вход которого соединен с прямым выходом триггера 20. l блокировки дуги и с разрешающим входом регистра 22.l блокировки дуги, второй вход элемента И 39.l соединен с l-м входом выбора дуги модели 31, вход сброса регистра 22.l блокировки дуги соединен с входом 55.l сброса устройства, выход регистра 22.l блокировки дуги соединен с l-м выходом веса дуги модели 31, который также соединен с выходом регистра 21.l веса дуги, выход элемента ИЛИ 40.l подключен к разрешающему входу регистра 21.l веса дуги.

Назначение элементов и блоков устройства (фиг.1) состоит в следующем.

Первый и второй регистры 1 и 2 сдвига необходимы для реализации последовательного перебора пар вершин орграфа G.

Блок 3 формирования перестановок осуществляет перебор всех возможных размещений вершин графа G по позициям заданной топологической модели.

Блок 4 постоянной памяти хранит двоичные коды номеров позиций.

Блок 5 запоминания лучшего варианта служит для запоминания лучшего на настоящий момент варианта размещения.

Коммутатор 6 обеспечивает последовательное списывание из блока 4 кодов номеров выбираемых позиций для передачи их в АЛУ 7.

Арифметико-логическое устройство 7 необходимо для определения расстояния между позициями, в которые помещены выбранные вершины графа, и расчета длины связей L для формируемого варианта размещения. Данное устройство способно определять расстояния между позициями как для взвешенных графов, так и для невзвешенных.

Дешифратор 8 выбора дуги вместе со счетчиком 27 дуг предназначены для выбора из ЭМГ 31 дуги с номером, записанным в счетчике 27.

Реверсивный счетчик 9 ячеек служит для организации последовательного перебора адресов блока 10 оперативной памяти в прямом и обратном порядке соответственно при записи информации и ее считывании.

Блок 10 оперативной памяти служит для хранения весов wi,j дуг орграфа G в порядке возрастания их значений.

Счетчик 11 топологии необходим для подсчета и передачи счетчику 12 количества обрабатываемых элементов вектора с заданным значением (для кольцевой топологической модели общее число таких элементов постоянно и составляет n, для линейной это число уменьшается от n-1 для =1 до 1 для =n-1).

Первый счетчик 12 расстояний и второй счетчик 13 расстояний предназначены для организации перебора в возрастающем порядке ненулевых элементов матрицы расстояний D (таким образом на выходе счетчика 13 формируется вектор ).

Умножитель 14 необходим для умножения веса дуги из блока 10 оперативной памяти на расстояние между позициями топологической модели (элемент вектора ) из счетчика 13 расстояний.

Сумматор 15 предназначен для суммирования значений с умножителя 14 и регистра 16.

Регистр 16 минимальной длины связей хранит значение минимально возможной длины связей L* для заданного графа.

Первый элемент 17 сравнения служит для сравнения веса текущей дуги с наименьшим на данный момент весом, записанным в регистре 30.

Вычитатель 18 служит для нахождения степени оптимальности размещения ξ по формуле (2). Значение L* поступает с выхода регистра 16 минимальной длины связей, L поступает с выхода регистра 25 длины связей.

Триггер 19 начала счета служит для индикации перехода из режима формирования размещения в режим его оценки.

Триггер 23 режима служит для хранения признака текущей операции. Если триггер 23 установлен в ноль – это означает запись весов дуг по возрастанию в блок 10 оперативной памяти, а в единицу – нахождение минимально возможной длины L* по формуле (1).

Триггер 24 задания топологии предназначен для задания вида топологической модели: если триггер 24 установлен в единицу – это означает выбор линейной модели, в ноль – кольцевой модели.

Дешифратор 28 блокировки дуги предназначен для выбора дуги, которую необходимо заблокировать в текущем цикле работы устройства.

Регистр 29 номера дуги служит для хранения номера дуги с минимальным весом, выбранной в текущем цикле работы устройства.

Регистр 30 минимального веса необходим для хранения значения минимального на данный момент веса дуги.

Группа элементов ИЛИ 32.1 – 32.n необходима для объединения соответствующих сигналов с регистров 1 и 2.

Группа элементов И 33.1 – 33.m предназначена для выбора соответствующих дуг графа G по сигналам с элементов ИЛИ 32.1 – 32.n.

Первый и второй элементы И 34 и 35 необходимы для блокировки передачи импульсов с тактового входа 57 устройства на элементы и блоки, обеспечивающие упорядочение весов дуг графа в блоке 10.

Второй блок элементов ИЛИ 36 необходим для подключения веса текущей дуги к элементу 17 сравнения и регистру 30.

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

Электронная модель 31 графа служит для моделирования топологии графа G, представляющего размещаемый объект (фиг. 2).

Первый и второй одновибраторы 41 и 42 необходимы для формирования импульсов, управляющих записью информации в регистр 25 и счетчик 12 соответственно.

Первый элемент 43 задержки служит для задержки импульса переполнения со счетчика 27 дуг на время, достаточное для обеспечения блокировки дуги дешифратором 28 и записи минимального веса из регистра 30 в блок 10 оперативной памяти.

Второй элемент 44 задержки необходим для задержки тактового импульса на время, достаточное для обеспечения выбора очередной дуги и сравнения ее веса с минимальным весом, записанным в регистре 30.

Третий элемент 45 задержки обеспечивает задержку импульса, поступающего на регистр 16 минимальной длины связей, на время, достаточное для подсчета и добавления очередного слагаемого формулы (1) умножителем 14 и сумматором 15.

Первый блок элементов ИЛИ 46 необходим для подачи в АЛУ 7 веса текущей дуги.

Электронная модель 31.l дуги (фиг. 2) служит для моделирования l-й дуги орграфа G, l = 1,2, …, m.

Триггер 20.l блокировки дуги служит для выдачи сигнала блокировки повторного выбора соответствующей дуги во время работы устройства.

Регистр 21.l веса дуги и регистр 22.l блокировки дуги предназначены для хранения веса текущей дуги и нулевого кода соответственно. Регистры 21.l и 22.l имеют выходы с тремя состояниями; перевод выходов в третье (высокоимпедансное) состояние обеспечивается соответственно единичным и нулевым сигналом на входах разрешения (oe).

Первый элемент И 38.l необходим для формирования сигнала наличия l-й дуги в графе.

Второй элемент И 39.l служит для формирования сигнала выбора/блокировки дуги.

Элемент ИЛИ 40.l служит для объединения сигналов с элемента И 39.l и с элемента И 33.l.

Назначение элементов блока 58 минимального значения состоит в следующем.

Первое 59 ОЗУ кольцевой циклической системы (КЦС) предназначено для хранения наибольших кодов значений инцидентных двум выбранным вершинам. Они располагаются в порядке убывания в соответствии с (3).

ОЗУ 60 циклического фрагмента КЦС необходим для хранения кодов значений инцидентных выбранной вершине графа Х.

Первый 61 счетчик столбцов служит для подсчета номеров столбцов матрицы , обрабатываемых в данный момент.

Второй 62 счетчик столбцов предназначен для подсчета номеров столбцов матрицы циклического фрагмента КЦС.

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

Второй 64 счетчик столбцов служит для подсчета номера обрабатываемой строки циклического фрагмента КЦС.

Сумматор 65 минимального значения предназначен для суммирования и получения минимального значения интенсивности размещения в многопроцессорных кубических циклических системах при однонаправленной передаче информации.

Первый 66 элемент И служит для разрешения работы второго 62 счетчик столбцов с подачей соответствующего импульса на его е-вход.

Второе 67 ОЗУ кольцевой циклической системы (КЦС) предназначено для хранения наибольших кодов значений инцидентных двум выбранным вершинам.

Третий 68 счетчик столбцов матрицы смежности служит для подсчета номеров столбцов матрицы , обрабатываемых в данный момент ниже главной диагонали.

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

Первый 70 и второй 71 счетчик количества строк предназначен для подсчета количества строк, в которых были обнаружены ненулевые значения

Счетчик 72 количества циклических участков подсчитывает количество обработанных циклический фрагментов кольцевой циклической системы.

Выход 73 переполнения счетчика 72 количества циклических участков предназначен для подачи на ВУУ сигнала о переполнении счетчика 72, что одновременно является сигналом о завершении работы устройства.

SR-триггер 74 режима предназначен для выбора обработки матрицы выше или ниже главной диагонали.

Второй 76 элемент И служит для объединения сигналов с выхода переполнения счетчика 70 и с прямого выхода триггера 23 режима.

Умножитель 77 предназначен для вычисления значения расстояния в соответствии со значениями матрицы расстояний

Счетчик 78 расстояний служит для вычисления текущего значения расстояния в соответствии со значением матрицы Например, для , значения вектора расстояний соответствующие значениям матрицы , упорядоченные по возрастанию имеют значения: 1,1,1,1.1, 2,2,2,2,3,3,3,4,4,5.

Вычитающий 79 счетчик служит для подсчета одноименных значения вектора

Рассмотрим работу предлагаемого устройства.

Первоначально счетчике 72 хранится код нуля («0…00»), в ОЗУ 59, 60, 64, 67 хранятся коды значений нуля. В счетчиках 61 и 62 хранятся коды единицы («0…01). В счетчике 71 и 63 хранится код значения единицы («0…01»). Поэтому это значение подается на адресный а1-вход ОЗУ 59. В счетчике 64 хранится код значения ноль. В сумматоре 65 хранится код значения ноль. На втором входе элемента 66 И присутствует нулевой потенциал с выхода переполнения счетчика 70. Из-за этого на его выходе присутствует нулевой потенциал, который запрещает работу счетчика 62. В счетчике 68 хранится код значения единица («0…01»). В счетчиках 69 и 70 хранятся коды значения единицы. Поэтому, на адресном а1-входе ОЗУ 67 присутствует код значения единица. В счетчике 72 хранится код значения ноль. SR-триггер 74 находится в единичном состоянии. Это значит, что на его прямом выходе присутствует единичный потенциал, а на обратном – нулевой. В счетчике 79 установлен предел счета значение и начальное значение ноль («0…00»). В счетчике 79 содержится код значения

Предлагаемое устройство способно решать следующие задачи: размещение невзвешенных графов в линейную топологическую модель, размещение взвешенных графов в линейную и кольцевую модель и оценка степени близости сформированного размещения к оптимальному. Дополнительно предлагаемое устройство позволяет подсчитывать минимальное значение интенсивности размещения в многопроцессорных кубических циклических системах при однонаправленной передаче информации по критерию минимизации интенсивности взаимодействия процессов и данных.

Задача размещения невзвешенных графов с топологической моделью в виде линейки решается в устройстве аналогично прототипу. В данном случае работает только так называемая «верхняя» часть схемы, в которую входит ЭМГ 31, регистры 1 и 2, группа элементов ИЛИ 32.1 – 32.n, группа элементов И 33.1 – 31.m, блок элементов ИЛИ 46, регистр 25, элемент 26 сравнения, одновибратор 41, а также БФП 3, блок 4 постоянной памяти, БЗЛВ 5, коммутатор 6 и АЛУ 7.

Регистр 1 и регистр 2 последовательно выбирают пары вершин по мере поступления импульсов с входа 57 устройства. Сигналы выбранной пары вершин проходят через два соответствующих элемента группы элементов ИЛИ 32.1 – 32.n и далее формируют единичный сигнал на выходе соответствующего элемента И группы 33.1 – 33.m (допустим элемента 33.l). Единичный сигнал с элемента И 33.l поступает на элемент ИЛИ 40.l (модели 31.l дуги) и, попадая далее на разрешающий вход (oe) регистра 21.l, разрешает тем самым появление данных (веса l-й дуги) на выходе этого регистра. Поскольку размещаемый граф невзвешен, в регистре 21.l содержится либо код «00…01» либо код «00…00» (отсутствие дуги). Будем считать данный код ненулевым. Код «00…01» с выхода регистра 21.l поступает на блок элементов ИЛИ 46 и далее через него – в АЛУ 7. В это же время блок 3 формирования перестановок определяет для выбираемых вершин позиции, а АЛУ 7 вырабатывает команду определения расстояния между позициями, в которые следует поместить выбранные вершины графа. Это расстояние определяется по формуле . Одновременно в АЛУ 7 происходит и накопление суммарной длины связей L. Подсчет суммарной длины связей для текущего варианта размещения завершается, когда на выходе переполнения регистра 2 появляется сигнал переполнения. Одновременно этот же сигнал поступает на БФП 3, подготавливая его к формированию новой перестановки.

Перестановки формируются в пространственно-временной форме, то есть в каждый тактовый момент времени единичный сигнал инициируется только на одном (q-м) выходе БФП 3, а их последовательность задает соответствующую перестановку. Например, перестановка (3 1 2) означает, что первый тактовый импульс появляется на втором выходе БФП, второй – на третьем, третий – на первом. В соответствии с этим из блока 4 постоянной памяти (в блок 4 постоянной памяти заносятся двоичные коды номеров позиций) через коммутатор 6 в АЛУ 7 будут последовательно списываться коды второй позиции, третьей и первой. Это, в свою очередь, означает, что первая вершина помещается во вторую позицию, вторая в третью и третья в первую. Лучший вариант размещения переписывается в блок 5 и соответствующее ему значение длины связей L – в регистр 25. Появление сигнала на сигнализирующем выходе БФП 3 свидетельствует о том, что все перестановки сформированы, а лучший вариант размещения зафиксирован в БЗЛВ 5.

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

Задача оценки степени близости сформированного размещения к оптимальному решается следующим образом (в данном случае работает только «нижняя» часть схемы, включающая дешифраторы 8 и 28, элемент 17 сравнения, счетчики 27, 9, 11, 12 и 13, блок 10 оперативной памяти, регистры 16, 25, 29 и 30, триггеры 19, 23 и 24, умножитель 14, сумматор 15, вычитатель 18, блок элементов ИЛИ 36, элементы И 34, 35 и 37, элементы 43, 44 и 45 задержки и одновибратор 42).

При появлении единичного сигнала на сигнализирующем выходе БФП 3 триггер 19 устанавливается в единицу. Единичный сигнал с прямого выхода триггера 19 поступает на вторые входы элемента И 34 и элемента И 35. Так как триггер 23 режима находится в нулевом состоянии, элемент 35 по-прежнему остается закрытым, а элемент 34 открывается для прохождения тактовых импульсов.

Первый тактовый импульс проходит через элемент И 34, откуда этот импульс поступает на счетный вход счетчика 27 и передним фронтом устанавливает его в значение «00…01». Код с выхода счетчика 27 поступает на вход данных регистра 29 и на вход дешифратора 8, инициируя появление единицы на его первом выходе. Эта единица поступает на второй вход элемента И 39.1 (модели 31.1). Если на первом входе элемента 39.1 присутствует единица (триггер 20.1 находится в единичном состоянии), то на выходе элемента 39.1 появляется единичный сигнал выбора дуги. С выхода элемента И 39.1 этот сигнал проходит через элемент ИЛИ 40.1, поступает на разрешающий вход регистра 21.1 и открывает его выход. В результате вес дуги с регистра 21.1 проходит через блок элементов ИЛИ 36, откуда попадает на первый вход элемента 17 сравнения, на втором входе которого присутствует код из регистра 30 (первоначально «11…1»). Если код с блока элементов ИЛИ 36 (вес выбранной дуги) меньше уже имеющегося в регистре 30, на выходе элемента 17 образуется единичный сигнал. Этот единичный сигнал поступает на первый вход элемента И 37 и обеспечивает прохождение тактового импульса с элемента И 34, задержанного на элементе 44 задержки. Импульс с элемента И 37 поступает на синхровходы регистра 29 и регистра 30 и по переднему фронту записывает в них значение с выхода счетчика 27 (номер текущей дуги) и код веса выбранной дуги с блока 36 (как минимальный на данный момент) соответственно. В случае присутствия на выходе элемента 17 нуля, элемент И 37 заблокирован и поэтому импульс с элемента 44 задержки не поступает на синхровходы регистров 29 и 30.

Очередной тактовый импульс аналогично проходит через элемент И 34, снова попадает на счетный вход счетчика 27 и увеличивает значение этого счетчика до «00…010». С выхода счетчика 27 код снова попадает на дешифратор 8, чем вызывает появление единицы на его втором выходе. Эта единица аналогично поступает в модель 31.2 взвешенной дуги, и со второго выхода веса дуги модели 31 на блок элементов ИЛИ 36 поступает код веса второй дуги. Если такая дуга существует, то соответствующий ей код попадает на первый вход элемента 17 сравнения, на второй вход которого поступает с регистра 30 вес, записанный на предыдущих шагах. Если новый вес меньше предыдущего, то единичный сигнал, свидетельствующий об этом, поступает на первый вход элемента И 37 и пропускает через него импульс с элемента 44 задержки. С выхода элемента И 37 импульс снова попадает на синхровходы регистров 29 и 30 и по переднему входу записывает в регистр 30 новый вес дуги (вес второй дуги), а в регистр 29 значение счетчика 27 как номер дуги с наименьшим на данный момент весом.

Так происходит до тех пор, пока на выходе переполнения счетчика 27 не появится сигнал (импульс) переполнения, сигнализирующий о том, что все дуги просмотрены и наименьший вес содержится в регистре 30, а номер соответствующей дуги – в регистре 29. При этом счетчик 27 сбрасывается в нулевое состояние, а сигнал переполнения одновременно поступает на вход записи блока 10 оперативной памяти на элемент 43 задержки и первый счетный вход счетчика 9. По заднему фронту сигнала переполнения счетчик 9 увеличивает свое значение до «00…01». В результате в блок 10 оперативной памяти по адресу «00…01» заносится минимальный вес дуги с регистра 30. Сигнал переполнения от счетчика 27 одновременно поступает на разрешающий вход дешифратора 28, обеспечивая выбор его выхода в зависимости от кода, подаваемого с выхода регистра 29. Сигнал с выбранного выхода дешифратора 28 (например, l-го) поступает на вход сброса триггера 20.l модели 31.l, устанавливая его в нулевое состояние (обеспечивается блокировка l-й дуги для следующих циклов работы устройства). К тому времени, когда минимальный вес дуги уже записан в блок 10 оперативной памяти, сигнал переполнения с выхода элемента 43 задержки поступает на входы установки (S) регистров 29 и 30 и устанавливает эти регистры в исходное состояние «11…1». Текущий цикл работы устройства завершается.

Следующий импульс, проходящий через элемент И 34, заставляет устройство снова работать по вышеописанному алгоритму. В регистре 30 сохраняется наименьший вес дуги без учета заблокированных в предыдущих циклах дуг. При выборе дешифратором 8 незаблокированной дуги устройство работает так, как описано выше. Когда дешифратор 8 выбирает уже заблокированную дугу, сигнал с выхода дешифратора 8 не проходит через элемент И 39.l (на прямом выходе триггера 20.l присутствует ноль). В то же время сигнал с прямого выхода триггера 20.l поступает на разрешающий вход регистра 22.l. В результате нулевой код (записанный в этот регистр с входа 55.l) с выхода регистра 22.l поступает через блок элементов ИЛИ 36 на первый вход элемента 17 сравнения и, будучи заведомо меньше любого другого кода, находящегося в регистре 30, обеспечивает нулевой сигнал на выходе элемента 17 и блокировку элемента 37.

При повторном появлении сигнала переполнения на счетчике 27 происходит увеличение значения счетчика 9 до кода «00…010». Сигнал переполнения поступает на вход записи блока 10 оперативной памяти и записывает туда по адресу «00…010» код веса дуги с выхода регистра 30 из счетчика 9. Таким образом, происходит последовательная запись в блок 10 оперативной памяти весов дуг графа G по возрастанию соответствующих значений. Так происходит до тех пор, пока счетчик 9 не выдаст сигнал переполнения. Этот сигнал поступает на установочный S-вход вход триггера 23, устанавливает его в единицу и тем самым разрешает прохождение тактовых импульсов через элемент И 35, запрещая их прохождение через элемент И 34. Сам счетчик 9 реверсивно переводится из суммирующего в вычитающий. С этого момента начинается подсчет минимального значения интенсивности размещения в многопроцессорных кубических циклических системах при однонаправленной передаче информации. Задача подсчета минимально возможной длины L* решается так же, как в прототипе и поэтому здесь не рассматривается.

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

Первоначально аналогично описанному выше принципу «отрабатывает» верхняя часть схемы так, чтобы в блоке 10 оперативной памяти содержались дуги графа G, расположенные в порядке убывания значений своих весов. Как видно из фиг. 4 при назначении дуг на процессоры матричной системы в первую очередь следует назначать дуги с наибольшими значениями весов. Следовательно, при выборе из блока 10 оперативной памяти, первой выбранной дугой будет дуга с наибольшим значением веса, а последней – с наименьшим.

Очередной тактовый импульс со входа 57 поступает на е-вход счетчика 61, счетный вход счетчика 64 и первый вход элемента 66 И. В счетчике 64 увеличение содержимого не происходит, потому что на е-входе не присутствует единичного импульса. Так как не втором входе элемента 66 И не присутствует единичного сигнала, то единичного импульса на его выходе не появляется.

Так как SR-триггер 74 находится в единичном состоянии, то единица с его прямого выхода поступила не е-вход счетчика 61, разрешая его работу. Поэтому, тактовый импульс поступает на счетный вход счетчика 61 и по переднему фронту увеличивает его содержимое на единицу, устанавливая в нем код двойки («0…010»).

Поиск минимального значения интенсивности размещения предполагается упорядочивание элементов матрицы и по убыванию своих значений, а элементов матрицы – по возрастанию. Элементы матрицы и уже расположены по убыванию своих значений в блоке 10 оперативной памяти.

Для упорядочивания элементов матрицы по возрастанию предназначены элементы 77, 78 и 79.

Значение со счетчика 78 поступает на первый вход умножителя 77, но втором входе которого присутствует значение с с блока 10 оперативной памяти. Одновременно значение с выхода счетчика 78 поступает на вычитающий вход счетчика 79 и по переднему фронту уменьшает хранящееся в нем значение на единицы до кода .

Так происходит до тех пор, пока на выходе переполнения счетчика не появится сигнал переполнения, который подается на s-вход счетчика 78 и устанавливает в нем предел счета .

Значение с выхода умножителя 77 поступает на D-вход ОЗУ 59 и 67, где сохраняется по адресу, поступившему на а1-вход и а2-вход. После этого данное значение поступает на соответствующий второй и третий вход сумматора 65, где фиксируется как промежуточное суммарное значение.

Очередной тактовый импульс аналогично поступает на счетный вход счетчика 61 и по переднему фронту увеличивает его содержимое на единицу до кода тройки («0…011»). Этот код подается на а2-вход ОЗУ 59, на а1-входе которого присутствует код единицы с выхода счетчика 63. В результате, очередной код с выхода умножителя 77 подается на D-вход ОЗУ 59 для сохранения. Далее этот код поступает на второй вход сумматора 65.

Так продолжается до тех пор, пока на выходе переполнения счетчика 61 не появится сигнала переполнения, который поступает на счетный вход счетчика 71 и по переднему фронту увеличивает его содержимое на единицу до кода двойки (выбирается вторая строка матрицы ).

Далее работа схемы протекает аналогично, пока на выходе переполнения счетчика 71 не появится единичный импульс. Это означает, что матрица выше главной диагонали обработана, а так как в нашем случае граф направленный, необходима обработка матрицы ниже главной диагонали.

Для этого единичный импульс с выхода переполнения счетчика 71 поступает на R-вход триггера 74, устанавливая его в нулевое состояние. таким образом, на прямом его выходе появляется нулевой потенциал, а на обратном единичный.

Далее работа схемы протекает аналогично описанному выше принципу. Отличие состоит в том, что значение интенсивности поступает с выхода ОЗУ 67 на третий вход сумматора 65.

Когда на выходе переполнения счетчика 70 появляется единичный потенциал, это означает, что матрицы ниже главной диагонали просмотрена. Таким образом, множество основных процессоров обработано.

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

Сигнал переполнения с выхода переполнения счетчика 70 поступает на второй вход элемента 66 И и на е-вход счетчика 72, разрешая его работу.

Так как циклических фрагментов N, то счетчик 72 подсчитывает количество обработанных циклических фрагментов.

Единичный импульс с выхода переполнения счетчика 70 поступает на второй вход элемента И 76 и устанавливает SR-триггер 74 в единичное состояние, а также на второй вход элемента 66 И. В результате единичный сигнал с выхода элемента 66 И поступает на е-входы счетчиков 62 и 64, разрешая их работу.

Далее работа схемы происходит аналогично описанному выше принципу. Отличие состоит в том, что на D-вход ОЗУ 60 поступают значения с матрицы . Обработка очередного циклического фрагмента заканчивается, когда на выходе переполнения счетчика 64 появляется единичный потенциал, который поступает на счетный вход счетчика 72, увеличивая его содержимое по переднему фронту на единицу.

Очередной код с выхода ОЗУ 60 поступает на первый вход сумматора 65.

Появление единичного импульса на выходе переполнения счетчика 72 означает, что все циклические фрагменты кольцевой циклической системы обработаны. Единичный импульс с выхода переполнения счетчика 72 поступает на выход 73 переполнения устройства, откуда он поступает на ВУУ для принятия решения о дальнейших действиях схемы.

В это время минимальное значение интенсивности размещения в многопроцессорных кубических циклических системах при однонаправленной передаче информации поступает с выхода сумматора 65 на ВУУ для принятия решения о дальнейших действиях.

Таким образом, предлагаемое устройство аналогично прототипу позволяет формировать оптимальное размещение невзвешенных графов в линейной топологической модели. В устройстве возможно размещение взвешенных графов, причем допускается выбор двух моделей области размещения – линейной или кольцевой. Найденное субоптимальное размещение сопоставляется с предельным вариантом путем подсчета и сравнения значений длин связей L и L*. Дополнительно предлагаемое устройство позволяет выполнять подсчет минимального значения интенсивности размещения в многопроцессорных кубических циклических системах при однонаправленной передаче информации по критерию минимизации интенсивности взаимодействия процессов и данных.

1. Устройство для подсчета минимального значения интенсивности размещения в многопроцессорных кубических циклических системах при однонаправленной передаче информации, содержащее первый регистр сдвига, второй регистр сдвига, блок формирования перестановок (БФП), блок постоянной памяти, блок запоминания лучшего варианта (БЗЛВ), коммутатор, АЛУ, дешифратор выбора дуги, реверсивный счетчик ячеек, блок оперативной памяти, счетчик топологии, первый и второй счетчики расстояний, умножитель, сумматор, регистр минимальной длины связей, первый элемент сравнения, вычитатель, триггер начала счета, триггер режима, триггер задания топологии, регистр длины связей, второй элемент сравнения, счетчик дуг, дешифратор блокировки дуги, регистр номера дуги, регистр минимального веса, электронную модель графа, группу с 1-го по n-й элементов ИЛИ, группу 1-го по m-й элементов И, первый и второй элементы И, второй блок элементов ИЛИ, третий элемент И, первый и второй одновибраторы, первый, второй и третий элементы задержки, первый блок элементов ИЛИ, причем выходы БФП соединены с соответствующими входами блока постоянной памяти и соответствующими входами БЗЛВ, сигнализирующий выход БФП соединен с установочным входом триггера начала счета, выходы блока постоянной памяти соединены с соответствующими входами коммутатора, выход которого соединен с входом АЛУ, выход которого соединен с информационным входом БЗЛВ, а выход БЗЛВ соединен с первым информационным входом АЛУ, выход переполнения первого регистра сдвига соединен с входом второго регистра сдвига, выходы первого и второго регистров сдвига с первого по n-й подключены к первым и вторым входам элементов ИЛИ 1-го по n-й соответственно, выход переполнения регистра сдвига соединен с управляющим входом АЛУ и с управляющим входом БФП, тактовый вход устройства соединен с входом регистра сдвига, с тактовым входом БФП и с первыми входами первого и второго элементов И, выход счетчика дуг соединен с входом дешифратора выбора дуги и входом данных регистра номера дуги, выход блока элементов ИЛИ подключен к первому входу первого элемента сравнения и к входу данных регистра минимального веса, выход регистра минимального веса соединен с вторым входом первого элемента сравнения и с входом данных блока оперативной памяти, выход первого элемента задержки соединен с входом установки регистра минимального веса и с входом установки регистра номера дуги, выход третьего элемента И соединен с синхровходом регистра минимального веса и с синхровходом регистра номера дуги, выход регистра номера дуги соединен с информационным входом дешифратора блокировки дуги, выход переполнения счетчика дуг соединен с разрешающим входом дешифратора блокировки дуги, а также с входом первого элемента задержки, первым счетным входом реверсивного счетчика ячеек и входом записи блока оперативной памяти, выход первого элемента И соединен со счетным входом счетчика дуг и со входом второго элемента задержки, выход которого соединен со вторым входом третьего элемента И, первый вход которого соединен с выходом элемента сравнения, второй вход первого элемента И соединен с прямым выходом триггера начала счета, который также соединен со вторым входом второго элемента И, третий вход первого элемента И соединен с инверсным выходом триггера режима, прямой выход которого соединен с третьим входом второго элемента И, выход второго элемента И соединен со вторым счетным входом реверсивного счетчика ячеек, выход которого подключен к адресному входу блока оперативной памяти, выход которого подключен к первому входу умножителя, выход второго счетчика расстояний подключен к второму входу умножителя, выход которого подключен к первому входу сумматора, второй вход которого подключен к выходу регистра минимальной длины связей и к второму входу вычитателя, выход сумматора подключен к входу данных регистра минимальной длины связей, выход третьего элемента задержки подключен к синхровходу регистра минимальной длины связей, выход второго элемента И и счетный вход первого счетчика расстояний подключены к входу третьего элемента задержки, выход второго одновибратора подключен к синхровходу счетчика расстояний, выход переполнения которого подключен к счетным входам счетчика топологии, второго счетчика расстояний и к входу второго одновибратора, выход счетчика топологии подключен к входу счетчика расстояний, вход данных устройства подключен ко входу данных счетчика топологии, синхровход счетчика топологии подключен к входу установки устройства, прямой выход триггера задания топологии подключен к разрешающему входу счетчика топологии, установочный вход триггера задания топологии подключен к входу установки устройства, вход сброса триггера задания топологии подключен к входу установки устройства, выход переполнения реверсивного счетчика ячеек подключен к установочному входу триггера режима, вход сброса которого подключен к входу установки устройства, выход регистра длины связей подключен ко второму входу второго элемента сравнения и к первому входу вычитателя, первый вход элемента сравнения подключен к выходу АЛУ и входу данных регистра длины связей, выход первого одновибратора подключен к синхровходу регистра длины связей, вход сброса триггера начала счета подключен к входу установки устройства, l-й выход дешифратора выбора дуги (l = 1, 2, …, m) соединен с l-м входом выбора дуги электронной модели графа, l-й выход дешифратора блокировки дуги соединен с l-м входом блокировки дуги электронной модели графа, l-й выход веса дуги электронной модели графа соединен с l-м входом второго блока элементов ИЛИ и l-м входом первого блока элементов ИЛИ, l-й выход элемента И группы элементов И с 1-го по m-й соединен с l-м управляющим входом электронной модели графа, выход блока элементов ИЛИ соединен со вторым информационным входом АЛУ, выход второго элемента сравнения соединен с входом первого одновибратора, выходы элементов с 1-го по n-й ИЛИ подключены к соответствующим входам элементов И 1-го по m-й, выход вычитателя соединен с выходом длины связей устройства, отличающееся тем, что в него дополнительно введен блок минимального значения, содержащий первое ОЗУ кольцевой циклической системы, ОЗУ циклического фрагмента, первый счетчик столбцов, второй счетчик столбцов, первый счетчик строк, второй счетчик столбцов, сумматор минимального значения, первый элемент И, второе ОЗУ кольцевой циклической системы, третий счетчик столбцов матрицы смежности, второй счетчик строк, первый и второй счетчик количества строк, счетчик количества циклических участков, SR-триггер режима, второй элемент И, умножитель, счетчик расстояний, вычитающий счетчик, причем выход блока оперативной памяти соединен с первым входом второго элемента И, второй вход которого подсоединен к выходу переполнения первого счетчика количества строк, второму входу первого 66 элемента И и к е-входу счетчика количества циклических участков, счетный вход которого подключен к выходу переполнения второго счетчика столбцов, е-вход которого соединен с выходом первого элемента И, и к е-входу второго счетчика столбцов, выход переполнения которого подключен к счетному входу второго счетчика столбцов, выход которого соединен с а1-входом ОЗУ циклического фрагмента, а2-вход которого подключен к выходу второго счетчика столбцов, счетный вход которого подсоединен к тактовому входу устройства, счетный вход счетчика расстояний подключен к тактовому входу устройства, выход счетчика расстояний соединен с первым входом умножителя и со счетным входом вычитающего счетчика, выход переполнения которого соединен с s-входом счетчика расстояний, второй вход умножителя соединен с выходом блока оперативной памяти, выход второго элемента И соединен с S-входом SR-триггера режима, R-вход которого подключен к выходу переполнения второго счетчика количества строк, счетный вход которого подключен к выходу переполнения первого счетчика столбцов, е-вход которого соединен с прямым выходом SR-триггер режима, обратный выход которого подключен к е-входу третьего счетчика столбцов, счетный вход которого подключен к тактовому входу устройства, счетному входу счетчика первого счетчика столбцов и к s-входам первого ОЗУ кольцевой циклической системы и второго ОЗУ кольцевой циклической системы, D-вход которого соединен с выходом умножителя и с D-входом первого ОЗУ кольцевой циклической системы, а1-вход которого соединен с выходом первого счетчика строк, а2-вход первого ОЗУ кольцевой циклической системы подключен к выходу первого счетчика столбцов, а1-вход второго ОЗУ кольцевой циклической системы подключен к выходу второго счетчика строк, счетный вход которого соединен с выходом первого счетчика количества строк, D-вход ОЗУ циклического фрагмента подсоединен к выходу блока оперативной памяти, выход ОЗУ циклического фрагмента соединен с первым входом сумматора, второй и третий входы сумматора подключены к выходам первого ОЗУ кольцевой циклической системы и второго ОЗУ кольцевой циклической системы, выход сумматора подключен к выходу ВУУ, где происходит принятие решения о дальнейших действиях многопроцессорной кубической циклической системы, выход переполнения счетчика количества циклических участков соединен с выходом переполнения устройства.

2. Устройство по п.1, отличающееся тем, что электронная модель графа содержит m электронных моделей дуги, причем l-я электронная модель дуги (l = 1, 2, …, m) содержит триггер блокировки дуги, регистр веса дуги, регистр блокировки дуги, первый элемент И, второй элемент И, элемент ИЛИ, причем входы первого элемента И соединены с соответствующими входами задания графа устройства, выход первого элемента И соединен с синхровходом регистра веса дуги и с установочным входом триггера блокировки дуги, вход сброса которого соединен с l-м входом блокировки дуги электронной модели графа, вход данных регистра веса дуги соединен с l-м входом веса дуги устройства, первый вход элемента ИЛИ соединен с l-м управляющим входом электронной модели графа, а второй вход элемента ИЛИ соединен с выходом второго элемента И, первый вход которого соединен с прямым выходом триггера блокировки дуги и с разрешающим входом регистра блокировки дуги, второй вход второго элемента И соединен с l-м входом выбора дуги электронной модели графа, вход сброса регистра блокировки дуги соединен с l-м входом сброса устройства, выход регистра блокировки дуги соединен с l-м выходом веса дуги электронной модели графа, который также соединен с выходом регистра веса дуги, выход элемента ИЛИ подключен к разрешающему входу регистра веса дуги.



 

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

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

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

Изобретение относится к области информационных технологий. Технический результат изобретения заключается в возможности просмотра контента в полном объеме, часть элементов которого представлена на материальном носителе информации, а часть которого не доступна для просмотра на материальном носителе; в повышении эффективности использования ресурсов сервера за счет возможности выбора предпочтительного контента в зависимости от предпочтений пользователя.

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

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

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

Изобретение относится к вычислительной технике. Технический результат заключается в обеспечении высокоскоростной обработки.

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

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

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

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

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

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

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

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

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

Система информационного обеспечения метода скрытного наведения летательных аппаратов (ЛА) в зоне обнаружения импульсно-доплеровской РЛС (ИД РЛС) содержит формирователь косвенных измерений, формирователь оценок, регулятор.

Изобретение относится к области информационных технологий. Технический результат заключается в автоматизации процесса принятия решения на организацию связи в операциях, боевых действиях объединений Вооруженных Сил РФ.

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

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

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