RU2275681C1 - Device for finding lower positioning estimate in matrix systems - Google Patents
Device for finding lower positioning estimate in matrix systems Download PDFInfo
- Publication number
- RU2275681C1 RU2275681C1 RU2004129496/09A RU2004129496A RU2275681C1 RU 2275681 C1 RU2275681 C1 RU 2275681C1 RU 2004129496/09 A RU2004129496/09 A RU 2004129496/09A RU 2004129496 A RU2004129496 A RU 2004129496A RU 2275681 C1 RU2275681 C1 RU 2275681C1
- Authority
- RU
- Russia
- Prior art keywords
- input
- output
- elements
- matrix
- counter
- Prior art date
Links
Images
Landscapes
- Complex Calculations (AREA)
Abstract
Description
Изобретение относится к области вычислительной техники и предназначено для моделирования задач при проектировании вычислительных систем (ВС).The invention relates to the field of computer technology and is intended for modeling tasks in the design of computer systems (AC).
Известен элемент однородной среды, включающий блок обработки входных сигналов, блок запоминания признака конечной точки, блок выходной логики, триггер записи трасс, блок оценки текущего размещения, блок передачи информации, входы, выходы, управляющий вход, информационные входы, информационные выходы, индикаторный выход (а.с. 1291957 СССР, кл. G 06 F 7/00, опубл. 23.02.87, БИ №7).A well-known element of a homogeneous environment, including an input signal processing unit, an endpoint attribute storage unit, an output logic unit, a trace recording trigger, a current location estimation unit, an information transmission unit, inputs, outputs, a control input, information inputs, information outputs, an indicator output ( A.S. 1291957 USSR, class G 06 F 7/00, publ. 02.23.87, BI No. 7).
Недостатком указанного элемента является узкая область применения, обусловленная отсутствием средств для оценки качества (степени оптимальности) размещения по критериям суммарной длины ребер и максимальной длины ребра.The disadvantage of this element is the narrow scope, due to the lack of funds for assessing the quality (degree of optimality) of placement according to the criteria for the total length of the ribs and the maximum length of the ribs.
Наиболее близким к предлагаемому устройству по технической сущности является устройство для оценки размещения элементов, содержащее матрицу элементов однородной среды, состоящую из элементов однородной среды, блоки подсчета единиц, блок нахождения максимума, сумматор, блок памяти, вход записи исходного гиперграфа, вход управления перестановкой столбцов, вход управления перестановкой строк, вход управления записью в блок памяти, выходы оценки текущего размещения, информационный выход и вход установки (а.с. 1410949 СССР, кл. G 06 F 7/00, 15/20, опубл. 15.10.88, БИ №38).Closest to the proposed device in technical essence is a device for evaluating the placement of elements, containing a matrix of elements of a homogeneous medium, consisting of elements of a homogeneous medium, units for counting units, a block for finding the maximum, an adder, a memory block, an input entry for the original hypergraph, an input for managing permutation of columns, line permutation control input, write control input to the memory block, current location estimation outputs, information output and installation input (AS 1410949 USSR, class G 06 F 7/00, 15/20, publ. 15.10.88, BI No. 38).
Недостатком указанного устройства является узкая область применения, обусловленная отсутствием средств для поиска нижней оценки размещения в матричных системах (МС) по критерию минимизации интенсивности взаимодействия процессов и данных.The disadvantage of this device is a narrow scope, due to the lack of tools to search for a lower estimate of placement in matrix systems (MS) by the criterion of minimizing the intensity of the interaction of processes and data.
Технической задачей изобретения является расширение области применения устройства за счет введения средств для поиска нижней оценки размещения в матричных системах по критерию минимизации интенсивности взаимодействия процессов и данных.An object of the invention is to expand the scope of the device by introducing means to search for a lower estimate of placement in matrix systems according to the criterion of minimizing the intensity of interaction between processes and data.
Техническая задача решается тем, что в устройство поиска нижней оценки размещения в матричных системах, содержащее матрицу из m строк и n столбцов элементов однородной среды, n блоков подсчета единиц, блок нахождения максимума, первый сумматор, блок памяти, причем входы управления перестановкой столбцов матрицы элементов однородной среды соединены с входом управления перестановкой столбцов устройства, входы управления перестановкой строк матрицы элементов однородной среды соединены с входом управления перестановкой строк устройства, входы установки матрицы элементов однородной среды соединены с входом установки устройства, информационные входы матрицы элементов однородной среды соединены с входом записи устройства, индикаторные выходы элементов j-го столбца (j=1, 2,...,n) матрицы элементов однородной среды соединены с входом j-го блока подсчета единиц, выход которого соединен с j-м входом блока нахождения максимума и j-м входом первого сумматора, выходы которых соединены с выходом максимальной длины ребра устройства и выходом суммарной длины ребер устройства соответственно, вход управления записью блока памяти соединен с входом управления записью устройства, информационные выходы элементов i-й строки (i=1, 2,...,m) матрицы элементов однородной среды соединены с i-м информационным входом блока памяти, выход которого соединен с информационным выходом устройства, дополнительно введен блок поиска нижней оценки, содержащий генератор импульсов, первый и второй мультиплексоры выбора элемента, дешифратор выбора строки, первый, второй, третий и четвертый дешифраторы инцидентной вершины, первый и второй дешифратор фиксируемой дуги, счетчик строк, счетчик столбцов, первый и второй счетчик фиксируемой дуги, первый, второй, третий и четвертый счетчики инцидентной вершины, триггер режима, группу из m триггеров, второй сумматор, группу из m блоков элементов запрета, матрицу из i строк (i=1, 2,..., m) и j столбцов (j=1, 2,..., n) счетчиков фиксированных дуг, матрицу из i строк (i=1, 2,..., m) и j столбцов (j=1, 2,..., n) элементов ИЛИ, первую матрицу из i строк (i=1, 2,..., m) и j столбцов (j=1, 2,..., n), вторую матрицу из i строк (i=1,2,..., m) и у столбцов (j=1, 2,..., n), третью матрицу из i строк (i=1, 2,..., m) и j столбцов (j=1,2,..., n), а также четвертую матрицу из i строк (i=1, 2,..., m) и j столбцов (j=1, 2,..., n) элементов И, элемент ИЛИ, первый и второй элементы И, группу из m элементов ИЛИ, причем вход запуска устройства соединен с генератором импульсов, выход которого соединен со вторым входом первого элемента И и с первым входом второго элемента И, второй вход которого подключен к разрешающему входу второго мультиплексора выбора элемента и к прямому выходу триггера режима, инверсный выход которого соединен с разрешающим входом первого мультиплексора выбора элемента и с первым входом первого элемента И, выход которого подключен к счетному входу первого счетчика фиксируемой дуги и к первому входу элемента ИЛИ, выход второго элемента И соединен со вторым входом элемента ИЛИ и с входами разрешения выдачи второго и четвертого счетчиков инцидентной вершины соответственно, S-вход триггера режима подключен к выходу переполнения третьего счетчика инцидентной вершины и к входу сброса первого счетчика инцидентной вершины, R-вход триггера режима подсоединен к выходу переполнения второго счетчика фиксируемой дуги, счетный вход которого подключен к входу сброса второго счетчика инцидентной вершины и к выходу переполнения четвертого счетчика инцидентной вершины, счетный вход которого соединен со счетным входом второго счетчика инцидентной вершины и с выходом второго мультиплексора выбора элемента, управляющий вход которого подключен к управляющему входу первого мультиплексора выбора элемента и к выходу счетчика столбцов, счетный вход которого соединен с выходом элемента ИЛИ, установочный вход счетчика столбцов подключен к выходу счетчика строк и к входу дешифратора выбора строки, выход переполнения счетчика строк соединен с выходом переполнения устройства, выходы с 1-го по n-й дешифратора выбора строки соединены с соответствующими управляющими входами группы с 1-й по m-ю элементов запрета, соответствующие входы которых подключены к индикаторным выходам соответствующих элементов с первого по n-й столбцов матрицы элементов однородной среды, выходы группы с 1-й по m-ю элементов запрета соединены с соответствующими входами группы с 1-й по m-ю элементов ИЛИ, соответствующие выходы которых подключены к соответствующим S-входам элементов с 1-го по m-й триггеров группы из m триггеров, соответствующие R-входы которых подсоединены к выходу переполнения счетчика столбцов и к счетному входу счетчика строк, выходы группы из m триггеров подключены к соответствующим входам первого и второго мультиплексоров выбора элемента, выход первого мультиплексора выбора элемента подключен к входам разрешения выдачи первого и второго счетчиков инцидентной вершины, соответствующие счетные входы которых подключены к выходу переполнения первого счетчика фиксируемой дуги, выход которого соединен со входом первого дешифратора фиксируемой дуги, i-й выход (i=1, 2,..., m) которого подключен к соответствующим первым входам (i.j)-x (i=1, 2,..., m, j=1, 2,..., n) элементов И второй и третьей матриц из (i.j) элементов (i=1, 2,..., m, j=1, 2,..., n) И, выход второго счетчика фиксируемой дуги подключен ко входу второго дешифратора фиксируемой дуги, соответствующий j-й (j=1, 2,..., n) выход которого соединен со вторыми входами (i.j)-х элементов (i=1, 2,..., m, j=1, 2,..., n) И первой и четвертой матриц из (i.j) элементов (i=1, 2,..., m, j=1, 2,..., n) И, выход первого счетчика инцидентной вершины подключен ко входу первого дешифратора инцидентной вершины, соответствующий j-й выход (j=1, 2,..., n) которого подключен к соответствующему второму входу (i.j)-го элемента (i=1, 2..., m, j=1, 2,..., n) И второй матрицы из (i.j) элементов (i=1, 2,..., m, j=1, 2,..., n) И, выход третьего счетчика инцидентной вершины соединен со входом третьего дешифратора инцидентной вершины, соответствующий j-й выход (j=1, 2,..., n) которого подключен к соответствующему второму входу (i.j)-го элемента (i=1, 2,..., m, j=1, 2,..., n) И третьей матрицы из (i.j) элементов (i=1, 2,..., m, j=1, 2,..., n) И, выход четвертого счетчика инцидентной вершины подключен к входу четвертого дешифратора инцидентной вершины, соответствующий i-й (i=1, 2,..., m) выход которого подключен к соответствующему первому входу (i.j)-го элемента (i=1, 2,..., m, j=1, 2,..., n) И первой матрицы из (i.j) элементов (i=1, 2,..., m, j=1, 2,..., n) И, второй счетчик инцидентной вершины соединен с входом второго дешифратора инцидентной вершины, соответствующий j-й (i=1, 2,..., m) выход которого подключен к первому входу (i.j)-го элемента (i=1, 2,..., m, j=1, 2,..., n) И четвертой матрицы из (i.j) элементов (i=1, 2,..., m, j=1, 2,..., n) И, выходы (i,j)-x счетчиков (i=1, 2,..., m, j=1, 2,..., n) матрицы из (i.j) счетчиков (i=1, 2,..., m, j=1, 2,..., n) фиксированных дуг соединены с соответствующими входами второго сумматора, выход которого подключен к выходу значения нижней оценки.The technical problem is solved in that in a device for finding a lower estimate of placement in matrix systems containing a matrix of m rows and n columns of elements of a homogeneous environment, n units of counting units, a maximum finding unit, a first adder, a memory block, and the inputs of control the permutation of the columns of the matrix of elements a homogeneous medium connected to the input of the control permutation of the columns of the device, the inputs of the control of the permutation of the rows of the matrix elements of a homogeneous medium connected to the input of the control of the permutation of the rows of the device, the installation paths of the matrix of elements of a homogeneous medium are connected to the input of the installation of the device, the information inputs of the matrix of elements of a homogeneous medium are connected to the input of the recording device, the indicator outputs of the elements of the jth column (j = 1, 2, ..., n) of the matrix of elements of a homogeneous medium are connected to the input of the j-th unit counting unit, the output of which is connected to the j-th input of the maximum block and the j-th input of the first adder, the outputs of which are connected to the output of the maximum length of the device’s edges and the output of the total length of the device’s edges, respectively but, the input of the recording control of the memory block is connected to the input of the recording control of the device, the information outputs of the elements of the i-th row (i = 1, 2, ..., m) of the matrix of elements of a homogeneous medium are connected to the i-th information input of the memory block, the output of which connected to the information output of the device, an additional lower bound search block is introduced, containing a pulse generator, first and second element selection multiplexers, line selection decoder, first, second, third and fourth incident vertex decoders, first and second fi decoder coding arc, row counter, column counter, first and second counter of fixed arc, first, second, third and fourth incident vertex counters, mode trigger, group of m triggers, second adder, group of m blocks of prohibition elements, matrix of i rows ( i = 1, 2, ..., m) and j columns (j = 1, 2, ..., n) of fixed arc counters, a matrix of i rows (i = 1, 2, ..., m) and j columns (j = 1, 2, ..., n) of OR elements, the first matrix of i rows (i = 1, 2, ..., m) and j columns (j = 1, 2, ..., n), the second matrix of i rows (i = 1,2, ..., m) and the columns (j = 1, 2, ..., n), the third matrix of i rows (i = 1, 2, ..., m) and j columns (j = 1,2 , ..., n), as well as the fourth matrix of i rows (i = 1, 2, ..., m) and j columns (j = 1, 2, ..., n) of AND elements, an OR element, the first and second AND elements, a group of m OR elements, wherein the device start input is connected to a pulse generator, the output of which is connected to the second input of the first AND element and to the first input of the second AND element, the second input of which is connected to the enable input of the second element selection multiplexer and to the direct output of the mode trigger, whose inverse output is connected to the enable input of the first element selection multiplexer and to the first the output of the first AND element, whose output is connected to the counting input of the first counter of the fixed arc and to the first input of the OR element, the output of the second AND element is connected to the second input of the OR element and to the enable inputs of the second and fourth counters of the incident vertex, respectively, S-trigger input mode is connected to the overflow output of the third counter of the incident vertex and to the reset input of the first counter of the incident vertex, the R-input of the mode trigger is connected to the overflow output of the second counter of the fixed arc, whose input is connected to the reset input of the second counter of the incident vertex and to the overflow output of the fourth counter of the incident vertex, the counting input of which is connected to the counting input of the second counter of the incident vertex and to the output of the second element selection multiplexer, the control input of which is connected to the control input of the first element selection multiplexer and to the output of the column counter, the counting input of which is connected to the output of the OR element, the installation input of the column counter is connected to the output of the row counter and to the input of the line selection decoder, the line counter overflow output is connected to the device overflow output, the outputs from the 1st to the nth line selection decoder are connected to the corresponding control inputs of the group from the 1st to the mth inhibit elements, the corresponding inputs of which are connected to the indicator outputs of the corresponding elements from the first to the nth columns of the matrix of elements of a homogeneous environment, the outputs of the group from the 1st to the mth ban elements are connected to the corresponding inputs of the group from the 1st to the mth elements OR, the corresponding outputs of which connected to the corresponding S-inputs of elements from the 1st to the mth triggers of a group of m triggers, the corresponding R-inputs of which are connected to the overflow output of the column counter and to the counting input of the row counter, the outputs of the group of m triggers are connected to the corresponding inputs of the first and of the second element selection multiplexers, the output of the first element selection multiplexer is connected to the output enable inputs of the first and second incident vertex counters, the corresponding counting inputs of which are connected to the overflow output of the first the counter of the fixed arc, the output of which is connected to the input of the first decoder of the fixed arc, the i-th output (i = 1, 2, ..., m) of which is connected to the corresponding first inputs (ij) -x (i = 1, 2 ,. .., m, j = 1, 2, ..., n) elements And the second and third matrices from (ij) elements (i = 1, 2, ..., m, j = 1, 2, ... , n) And, the output of the second counter of the fixed arc is connected to the input of the second decoder of the fixed arc, the corresponding j-th (j = 1, 2, ..., n) output of which is connected to the second inputs of the (ij) -th elements (i = 1, 2, ..., m, j = 1, 2, ..., n) And the first and fourth matrices of (ij) elements (i = 1, 2, ..., m, j = 1, 2 , ..., n) And, the output of the first s an incident vertex detector is connected to the input of the first incident vertex decoder, the corresponding j-th output (j = 1, 2, ..., n) of which is connected to the corresponding second input of the (ij) -th element (i = 1, 2 ... , m, j = 1, 2, ..., n) And the second matrix of (ij) elements (i = 1, 2, ..., m, j = 1, 2, ..., n) And, the output of the third counter of the incident vertex is connected to the input of the third decoder of the incident vertex, the corresponding j-th output (j = 1, 2, ..., n) of which is connected to the corresponding second input of the (ij) -th element (i = 1, 2, ..., m, j = 1, 2, ..., n) And the third matrix of (ij) elements (i = 1, 2, ..., m, j = 1, 2, ..., n ) And, out One of the fourth counter of the incident vertex is connected to the input of the fourth decoder of the incident vertex, the corresponding i-th (i = 1, 2, ..., m) output of which is connected to the corresponding first input of the (ij) -th element (i = 1, 2, ..., m, j = 1, 2, ..., n) And the first matrix of (ij) elements (i = 1, 2, ..., m, j = 1, 2, ..., n ) And, the second counter of the incident vertex is connected to the input of the second decoder of the incident vertex, the corresponding j-th (i = 1, 2, ..., m) output of which is connected to the first input of the (ij) -th element (i = 1, 2 , ..., m, j = 1, 2, ..., n) And the fourth matrix of (ij) elements (i = 1, 2, ..., m, j = 1, 2, ..., n) And, outputs (i, j) -x counters (i = 1, 2, ..., m, j = 1, 2, ..., n) of the matrix from (ij) counters (i = 1, 2, ..., m, j = 1, 2 , ..., n) fixed arcs are connected to the corresponding inputs of the second adder, the output of which is connected to the output of the lower bound value.
Сущность изобретения поясняется чертежами, где на фиг.1 изображена функциональная схема устройства поиска нижней оценки размещения в МС; фиг.2 поясняет сущность поиска нижней оценки.The invention is illustrated by drawings, where figure 1 shows a functional diagram of a device for finding a lower estimate of the placement in the MS; figure 2 explains the essence of the search for lower bounds.
Общие особенности изобретения состоят в следующем.General features of the invention are as follows.
Предлагаемое устройство может использоваться в области проектирования ВС, например, при размещении процессов. Устройство позволяет находить так называемую нижнюю оценку размещения в МС по критерию минимизации интенсивности взаимодействия процессов и данных.The proposed device can be used in the field of aircraft design, for example, when placing processes. The device allows you to find the so-called lower estimate of the placement in the MS by the criterion of minimizing the intensity of the interaction of processes and data.
Исходная (размещаемая) задача (процесс, алгоритм) представляется в виде неориентированного невзвешенного графа G=<X,E>, вершины хi∈Х которого соответствуют подзадачам (подалгоритмам), а дуги еij∈Е⊆Х×X задают управляющие и/или информационные связи между подзадачами.The initial (hosted) task (process, algorithm) is represented in the form of an undirected unweighted graph G = <X, E>, whose vertices x i ∈X correspond to subproblems (subalgorithms), and the arcs e ij ∈ЕXX × X are defined by control and / or information links between subtasks.
МС отображается однородной средой, которой ставится в соответствие топологическая модель в виде графа H=<U,V>, где U - множество модулей МС, организованных в матрицу |U|t×k, где , , m=n, V - множество межмодульных связей. Размещение графа G в МС Н будем задавать в виде отображения β=Х→UThe MS is displayed by a homogeneous medium, which corresponds to the topological model in the form of the graph H = <U, V>, where U is the set of MS modules organized in the matrix | U | t × k , where , , m = n, V is the set of intermodular connections. The placement of the graph G in the MS H will be given in the form of a map β = X → U
Функционирование однородной среды аналогично прототипу. При поступлении сигнала от внешнего устройства управления (ВУУ) происходит моделирование перестановки пары строк матрицы смежности (что соответствует перестановке двух вершин графа и получению нового варианта размещения). После очередной перестановки предлагаемое устройство вычисляет значение нижней оценки и выдает указанные значения ВУУ. Последнее анализирует полученное значение и либо фиксирует полученное размещение как более оптимальное (если значения критериев улучшают ранее найденные значения), либо игнорирует его.The functioning of a homogeneous environment is similar to the prototype. Upon receipt of a signal from an external control device (VUU), the permutation of a pair of rows of the adjacency matrix is simulated (which corresponds to the permutation of two vertices of the graph and the receipt of a new placement option). After the next permutation, the proposed device calculates the value of the lower estimate and gives the specified values of the VUU. The latter analyzes the received value and either fixes the received placement as more optimal (if the values of the criteria improve the previously found values), or ignores it.
В отличие от прототипа, где оценка выполняется по двум критериям - суммарной длине ребер и максимальной длине ребра, предлагаемое устройство дополнительно осуществляет поиск нижней оценки размещения в МС.Unlike the prototype, where the assessment is performed according to two criteria - the total length of the ribs and the maximum length of the ribs, the proposed device additionally searches for a lower estimate of the placement in the MS.
Сущность предлагаемой нижней оценки размещения поясняется фиг.2. Здесь на фиг.2а представляет гипотетический полный неориентированный граф G, а на фиг.2б соответствующая ему матрица смежности. Модули МС на фиг.2в и 2 г представлены квадратами, в левом верхнем углы которых представлены их номера. Внутри модулей кружками обозначены вершины графа с соответствующими номерами внутри. Пунктирные линии обозначают связи модулей МС, а сплошные линии рядом с пунктирными - гипотетические зафиксированные дуги. Из фиг.2в видно, что связи между модулями 1-2 и 4-3 распределены неравномерно, что неизбежно увеличивает суммарное время выполнения задачи, так как модули 1 и 2 будут загружены сильнее, чем модули 4 и 3. Время выполнения задачи можно уменьшить за счет переназначения дуг так, как показано на фиг.2 г. Такой вариант размещения одновременно является нижней оценкой размещения для МС.The essence of the proposed lower assessment of placement is illustrated in figure 2. Here, FIG. 2a represents a hypothetical complete undirected graph G, and, in FIG. 2b, the adjacency matrix corresponding thereto. The MS modules in FIGS. 2c and 2g are represented by squares, in the upper left corners of which their numbers are presented. Inside the modules, circles indicate the vertices of the graph with the corresponding numbers inside. The dashed lines indicate the connections of the MS modules, and the solid lines next to the dashed lines are hypothetical fixed arcs. Figure 2c shows that the connections between modules 1-2 and 4-3 are distributed unevenly, which inevitably increases the total time of the task, since
Устройство поиска нижней оценки размещения в матричных системах (фиг.1) содержит матрицу 1 из m строк и n столбцов элементов однородной среды, блоки 2.1-2.n подсчета единиц, блок 3 нахождения максимума, первый сумматор 4, блок 5 памяти, причем входы управления перестановкой столбцов матрицы 1 элементов однородной среды соединены с входом 7 управления перестановкой столбцов устройства, входы управления перестановкой строк матрицы 1 элементов однородной среды соединены с входом 8 управления перестановкой строк устройства, входы установки матрицы 1 элементов однородной среды соединены с входом 13 установки устройства, информационные входы матрицы 1 элементов однородной среды соединены с входом 6 записи устройства, индикаторные выходы элементов j-го столбца (j=1, 2,..., n) матрицы 1 элементов однородной среды соединены с входом блока 2j подсчета единиц, выход которого соединен с j-м входом блока 3 нахождения максимума и j-м входом первого сумматора 4, выходы которых соединены с выходом 10 максимальной длины ребра устройства и выходом 11 суммарной длины ребер устройства соответственно, вход управления записью блока 5 памяти соединен с входом 9 управления записью устройства, информационные выходы элементов i-й строки (i=1, 2,..., m) матрицы 1 элементов однородной среды соединены с i-м информационным входом блока 5 памяти, выход которого соединен с информационным выходом 12 устройства, а также дополнительно введенный блок 46 поиска нижней оценки, содержащий генератор 14 импульсов, первый 15 и второй 16 мультиплексоры выбора элемента, дешифратор 17 выбора строки, первый 18, второй 22, третий 19 и четвертый 21 дешифраторы инцидентной вершины, первый 20 и второй 23 дешифратор фиксируемой дуги, счетчик 24 строк, счетчик 25 столбцов, первый 26 и второй 27 счетчик фиксируемой дуги, первый 28, второй 29, третий 30 и четвертый 31 счетчики инцидентной вершины, триггер 32 режима, группа 33.1-33.m триггеров, второй 34 сумматор, группу 35.1, 35.2,..., 35.m блоков элементов запрета, матрица 36. i.j (i=1, 2,..., m, j=1, 2,..., n) счетчиков фиксированных дуг, матрица 38.i.j (j=1, 2,..., m, j=1, 2,..., n) элементов ИЛИ, первая матрица 39.i.j (i=1, 2,..., m, j=1, 2,..., n), вторая матрица 40.i.j (i=1, 2,..., m, j=1, 2,..., n), третья матрица 41.i.j (i=1, 2,..., m, j=1, 2,..., n) и четвертая матрица 42.i.j (i=1, 2,..., m, j=1, 2,..., n) элементов И, элемент 43 ИЛИ, первый 44 и второй 45 элементы И, группа 37.1-37.m элементов ИЛИ, причем вход 47 запуска устройства соединен с генератором 14 импульсов, выход которого соединен со вторым входом первого 44 элемента И и с первым входом второго 45 элемента И, второй вход которого подключен к разрешающему входу второго мультиплексора 16 выбора элемента и к прямому выходу триггера 32 режима, инверсный выход которого соединен с разрешающим входом первого мультиплексора 15 выбора элемента и с первым входом первого элемента 44 И, выход которого подключен к счетному входу первого счетчика 26 фиксируемой дуги и к первому входу элемента 43 ИЛИ, выход второго элемента 45 И соединен со вторым входом элемента 43 ИЛИ и с входами разрешения выдачи второго 29 и четвертого 31 счетчиков инцидентной вершины соответственно, S-вход триггера 32 режима подключен к выходу переполнения третьего счетчика 30 инцидентной вершины и к входу сброса первого счетчика 28 инцидентной вершины, R-вход триггера 32 режима подсоединен к выходу переполнения второго счетчика 27 фиксируемой дуги, счетный вход которого подключен к входу сброса второго счетчика 29 инцидентной вершины и к выходу переполнения четвертого счетчика 31 инцидентной вершины, счетный вход которого соединен со счетным входом второго счетчика 29 инцидентной вершины и с выходом второго мультиплексора 16 выбора элемента, управляющий вход которого подключен к управляющему входу первого мультиплексора 15 выбора элемента и к выходу счетчика 25 столбцов, счетный вход которого соединен с выходом элемента 43 ИЛИ, установочный вход счетчика 25 столбцов подключен к выходу счетчика 24 строк и к входу дешифратора 17 выбора строки, выход переполнения счетчика 24 строк соединен с выходом 49 переполнения устройства, выходы с 1-го по n-й дешифратора 17 выбора строки соединены с соответствующими управляющими входами группы 35.1-35.m элементов запрета, соответствующие входы которых подключены к индикаторным выходам соответствующих элементов с первого по n-й столбцов матрицы 1 элементов однородной среды, выходы группы 35.1-35.m элементов запрета соединены с соответствующими входами группы 37.1-37.m элементов ИЛИ, соответствующие выходы которых подключены к соответствующим S-входам группы 33.1-33.m триггеров, соответствующие R-входы которых подсоединены к выходу переполнения счетчика 25 столбцов и к счетному входу счетчика 24 строк, выходы группы 33.1-33.m триггеров подключены к соответствующим входам первого 15 и второго 16 мультиплексоров выбора элемента, выход первого мультиплексора 15 выбора элемента подключен к входам разрешения выдачи первого 28 и второго 30 счетчиков инцидентной вершины, соответствующие счетные входы которых подключены к выходу переполнения первого счетчика 26 фиксируемой дуги, выход которого соединен со входом первого дешифратора 20 фиксируемой дуги, i-й выход (i=1, 2,..., m) которого подключен к соответствующим первым входам элементов И 40.i.j (j=1, 2,..., n) и 41.i.j (j=1, 2,..., n) второй 40.i.j (j=1, 2,..., n) и третьей 41.i.j (j=1, 2,..., n) матриц элементов И, выход второго счетчика 27 фиксируемой дуги подключен ко входу второго дешифратора 23 фиксируемой дуги, соответствующий j-й (i=1, 2,..., n) выход которого соединен со вторыми входами элементов И 39.i.j (i=1, 2,..., m) и 42.i.j (i=1, 2,..., m) первой 39.i.j (i=1, 2,..., m) и четвертой 42.i.j (i=1, 2,..., m) матриц элементов И, выход первого 28 счетчика инцидентной вершины подключен ко входу первого дешифратора 18 инцидентной вершины, соответствующий j-й выход (j=1, 2,..., n) которого подключен к соответствующему второму входу элемента И 40.i.j (i=1, 2,..., m) второй матрицы 40.i.j (i=1, 2,..., m) элементов И, выход третьего счетчика 30 инцидентной вершины соединен со входом третьего дешифратора 19 инцидентной вершины, соответствующий j-й выход (j=1, 2,..., n) которого подключен к соответствующему второму входу элемента И 41.i.j (i=1, 2, ..., m) третьей матрицы 41.i.j (i=1, 2,..., m) элементов И, выход четвертого счетчика 31 инцидентной вершины подключен к входу четвертого дешифратора 21 инцидентной вершины, соответствующий i-й (i=1, 2,..., m) выход которого подключен к соответствующему первому входу элемента И 39.i.j (j=1, 2,..., n) первой матрицы 39.i.j (j=1, 2,..., n) элементов И, второй счетчик 29 инцидентной вершины соединен с входом второго дешифратора 22 инцидентной вершины, соответствующий i-й (i=1, 2,..., m) выход которого подключен к первому входу элемента И 42.i.j (j=1, 2,..., n) четвертой матрицы 42.i.j (j=1, 2,..., n) элементов И, выходы счетчиков 36.i.j (i=1, 2,..., m, j=1, 2,..., n) матрицы 36.i.j (i=1, 2,..., m, j=1, 2,..., n) счетчиков фиксированных дуг соединены с соответствующими входами второго 34 сумматора, выход которого подключен к выходу 48 значения нижней оценки.The device for finding a lower estimate of placement in matrix systems (Fig. 1) contains a
Назначение элементов и блоков устройства поиска нижней оценки размещения в матричных сетях (фиг.1) состоит в следующем:The purpose of the elements and blocks of the search device for the lower allocation estimate in matrix networks (Fig. 1) is as follows:
Матрица 1 элементов однородной среды предназначена для моделирования процесса решения задач размещения.
Блоки 2.1-2.n подсчета единиц предназначены для преобразования кодов с индикаторных выходов элементов соответствующих столбцов матрицы 1 в двоичные коды.Blocks 2.1-2.n of counting units are intended for converting codes from indicator outputs of the elements of the corresponding columns of
Блок 3 нахождения максимума предназначен для выделения максимального кода из множества кодов на его входах.
Первый сумматор 4 предназначен для суммирования n двоичных кодов.The
Блок 5 памяти предназначен для хранения наилучшего на данный момент варианта размещения.The memory unit 5 is designed to store the best placement option at the moment.
Вход 6 записи устройства служит для записи матрицы, представляющей размещаемый граф.The
Вход 7 управления перестановкой столбцов устройства предназначен для приема сигнала от ВУУ о перестановке столбцов.The input 7 controls the permutation of the columns of the device is designed to receive a signal from the VUU about the permutation of the columns.
Вход 8 управления перестановкой строк устройства предназначен для приема сигнала от ВУУ о перестановке строк.Input 8 control the permutation of the lines of the device is designed to receive a signal from the WUU about the permutation of the lines.
Вход 9 управления записью устройства необходим для приема сигнала "Запись" от ВУУ. По этому сигналу в блок 5 памяти заносится текущий вариант размещения из матрицы 1.The input 9 of the recording control device is necessary for receiving a signal "Record" from the VUU. According to this signal, the current placement option from
Выход 10 максимальной длины ребра устройства необходим для выдачи значения максимальной длины ребра на ВУУ.Output 10 of the maximum length of the ribs of the device is necessary to output the value of the maximum length of the ribs on the VUU.
Выход 11 суммарной длины ребер устройства необходим для выдачи значения суммарной длины ребер на ВУУ.Output 11 of the total length of the ribs of the device is necessary to output the value of the total length of the ribs on the WUU.
Информационный выход 12 устройства необходим для выдачи варианта размещения, находящегося в блоке 5 памяти, на ВУУ.The information output 12 of the device is necessary for issuing a placement option located in the memory unit 5 at the WUU.
Вход 13 установки устройства необходим для синхронизации записи информации в элементы матрицы 1.The input 13 of the installation of the device is necessary to synchronize the recording of information in the elements of the
Генератор 14 импульсов предназначен для формирования импульсных последовательностей, синхронизирующих работу блока 46 поиска нижней оценки размещения.The pulse generator 14 is designed to generate pulse sequences that synchronize the operation of block 46 to search for a lower placement estimate.
Первый 15 и второй 16 мультиплексоры выбора элемента предназначен для подачи с выходов триггеров 33.1-33.m информации о наличии дуги, инцидентной двум выбранным вершинам размещаемого графа. Этим вершинам соответствует выбранная в данный момент строка и столбец матрицы смежности.The first 15 and second 16 element selection multiplexers are designed to supply information from the outputs of triggers 33.1-33.m about the presence of an arc incident to two selected vertices of the placed graph. These vertices correspond to the currently selected row and column of the adjacency matrix.
Дешифратор 17 выбора строки служат для выбора очередной строки матрицы 1 (матрицы смежности размещаемого графа).The line selection decoder 17 are used to select the next row of the matrix 1 (adjacency matrix of the placed graph).
Первый 18, второй 22, третий 19 и четвертый 21 дешифраторы инцидентной вершины предназначены для выбора очередной фиксируемой дуги, инцидентной текущим вершинам графа. Первый 18 и третий 19 дешифраторы выбирают дугу для фиксации в строках МС, второй 22 и четвертый 21 дешифраторы инцидентной вершины выбирает дугу для фиксации в столбцах МС. Так как размещаемый граф невзвешенный, то при фиксации дуги необходимо учитывать две инцидентные фиксируемой дуге вершины.The first 18, second 22, third 19 and fourth 21 decoders of the incident vertex are designed to select the next fixed arc incident to the current vertices of the graph. The first 18 and third 19 decoders select the arc for fixing in the MS lines, the second 22 and fourth 21 decoders of the incident vertex selects the arc for fixing in the MS columns. Since the placed graph is unweighted, when fixing the arc, it is necessary to take into account two vertices incident to the fixed arc.
Первый 20 дешифратор фиксируемой дуги предназначен для выбора очередной строки МС, в которую будет производится фиксация очередной дуги.The first 20 decoder of the fixed arc is designed to select the next line of MS, in which the fixing of the next arc will be performed.
Второй 23 дешифратор фиксируемой дуги необходим для выбора очередного столбца МС, в котором будет производиться фиксация дуг.The second 23 decoder of the fixed arc is necessary to select the next column of the MS in which the arcs will be fixed.
В счетчике 24 строк содержится информация о текущей обрабатываемой строке матрицы 1.The counter of 24 rows contains information about the current processed row of
В счетчике 25 столбцов содержится информация о текущем обрабатываемом столбце матрицы 1.The counter of 25 columns contains information about the current processed column of
В первом 26 счетчике фиксируемой дуги содержится информация о номере дуги, фиксируемой горизонтально в МС. На фиг.2в, 2 г это номера 1-2 и 3-4. Этот счетчик не может содержать значения больше m-1.The first 26 counter of the fixed arc contains information about the number of the arc, fixed horizontally in the MS. On figv, 2 g are numbers 1-2 and 3-4. This counter cannot contain values greater than m-1.
Второй 27 счетчик фиксируемой дуги предназначен для накапливания информации о номере дуги, фиксируемой вертикально в МС. На фиг 2в, 2 г ими являются номера 1-3 и 2-4. Такой счетчик не может содержать значения большего n-1.The second 27 counter fixed arc is designed to accumulate information about the number of the arc, fixed vertically in the MS. In FIGS. 2c, 2g, these are numbers 1-3 and 2-4. Such a counter cannot contain values greater than n-1.
Первый 28, и третий 30 счетчики инцидентной вершины служат для накапливания информации о текущих фиксируемых дугах в строках МС, инцидентных выбранным вершинам графа из матрицы 1.The first 28 and third 30 incident counter counters are used to accumulate information about the current fixed arcs in the MS lines incident to the selected vertices of the graph from
Второй 29 и четвертый 31 счетчики инцидентной вершины предназначены для хранения информации о текущих фиксируемых дугах в столбцах МС, инцидентных выбранным вершинам графа из матрицы 1.The second 29 and fourth 31 incident counter counters are designed to store information about the current fixed arcs in the MS columns incident to the selected vertices of the graph from
Триггер 32 режима служит для выбора режима фиксации дуг. В нулевом состоянии триггера происходит фиксация в строках МС, в единичном - в столбцах МС.The trigger 32 mode is used to select the mode of fixation of arcs. In the zero state of the trigger, fixation occurs in the MS lines, in a single state - in the MS columns.
Группа 33.1-33.m триггеров предназначена для хранения информации о наличии дуги между соответствующими инцидентными вершинами.The trigger group 33.1-33.m is designed to store information about the presence of an arc between the corresponding incident vertices.
Второй 34 сумматор служит для накопления значения нижней оценки размещения в МС.The second 34 adder is used to accumulate the value of the lower allocation estimates in the MS.
Группа 35.1-35.m элементов запрета предназначена для блокировки поступления значений от элементов с 1-й по m-ю строк матрицы 1 на соответствующие элементы ИЛИ 37.1-37.m.The group of prohibition elements 35.1-35.m is intended to block the receipt of values from the elements from the 1st to the mth rows of
Матрица 36.i.j (i=1, 2,..., m, j=1, 2,..., n) счетчиков фиксированных дуг служит для подсчета загрузки модулей МС.The matrix 36.i.j (i = 1, 2, ..., m, j = 1, 2, ..., n) of the fixed-arc counters serves to calculate the load of the MS modules.
Группа 37.1-37.m элементов ИЛИ служат для объединения сигналов с выходов группы элементов 35.1-35.m запрета соответственно.Group 37.1-37.m of OR elements are used to combine the signals from the outputs of the group of elements 35.1-35.m prohibition, respectively.
Матрица 38.i.j элементов ИЛИ предназначена для объединения сигналов с выходов матрицы 39.i.j, 40.i.j, 41.i.j и 42.i.j элементов И с последующей подачей на вход счетчика 36.i.j фиксированных дуг. Здесь i=1, 2,..., m, j=1, 2,..., nThe matrix 38.i.j of OR elements is designed to combine the signals from the outputs of the matrix 39.i.j, 40.i.j, 41.i.j and 42.i.j elements AND, followed by the supply of fixed arcs to the input of the counter 36.i.j. Here i = 1, 2, ..., m, j = 1, 2, ..., n
Первая 39.i.j, вторая 40.i.j, третья 41.i.j и четвертая 42.i.j матрицы элементов И необходима для обеспечения фиксации инцидентной текущим вершинам дуги в модулях МС. Здесь i=1, 2,..., m и j=1, 2,..., n.The first 39.i.j, the second 40.i.j, the third 41.i.j and the fourth 42.i.j the matrix of elements AND is necessary to ensure that the incident current vertices of the arc are fixed in the MS modules. Here i = 1, 2, ..., m and j = 1, 2, ..., n.
Элемент 43 ИЛИ предназначен для объединения сигналов с выходов первого 44 и второго 45 элементов И.Element 43 OR is designed to combine the signals from the outputs of the first 44 and second 45 elements And.
Первый 44 и второй 45 элементы И служат для подачи тактового импульса с генератора 14 импульсов в зависимости от значения триггера 32 режима либо на первый 26 счетчик фиксируемой дуги и на первый вход элемента 43 ИЛИ, либо на второй вход элемента 43 ИЛИ и на входы разрешения выдачи второго 29 и четвертого 31 счетчика инцидентной вершины соотствественно.The first 44 and second 45 AND elements are used to supply a clock pulse from the 14 pulse generator, depending on the value of the trigger 32 of the mode, either to the first 26 counter of the fixed arc and to the first input of the OR element 43, or to the second input of the OR element 43 and to the outputs of the output enable second 29 and fourth 31 counter incident peaks, respectively.
Группа 37.1-37.m элементов ИЛИ необходима для объединения сигналов с выходов первой группы 35.1-35.m элементов запрета соответственно.The group of OR elements 37.1-37.m is necessary for combining the signals from the outputs of the first group of 35.1-35.m elements of the ban, respectively.
Блок 46 поиска нижней оценки служит для нахождения нижней оценки размещения в матричных системах.Block 46 of the search for the lower bounds is used to find the lower bounds for placement in matrix systems.
Вход 47 запуска устройства необходим для подачи сигнала запуска генератора 14 импульсов от ВУУ.The input 47 of the device start is necessary to supply the start signal of the generator 14 pulses from the WUU.
Выход 48 значения нижней оценки служит для выдачи ВУУ значения нижней оценки текущего варианта размещения в МС.The output 48 of the lower rating value is used to issue the VUU value of the lower rating of the current placement option in the MS.
Выход 49 переполнения устройства служит для подачи информации о переполнении первого счетчика 24 номера строки, что одновременно является сигналом о завершении работы блока 46.The output 49 of the overflow of the device serves to supply information about the overflow of the first counter 24 line numbers, which at the same time is a signal about the completion of block 46.
Работа блоков 1, 2, 3, 4 и 5 подробно описана в прототипе и поэтому здесь не рассматривается.The work of
Первоначально в матрице 1 элементов однородной среды содержится исходный вариант размещения, соответствующий матрице смежности исходного графа. Все триггеры в блоке 5 памяти находятся в состоянии логического нуля. Группа 33.1-33.m триггеров находится в состоянии логического нуля. Триггер 32 режима находится в состоянии логического нуля, поэтому на прямом его выходе присутствует нулевой потенциал, а на инверсном - единичный. В счетчиках матрицы 36.i.j (i=1, 2,..., m, j=1, 2,..., n) присутствует коды нуля ("00...00"). В счетчике 24 и 25 присутствует код единицы ("00...01"). Единичное значение с выхода счетчика 24 подается на вход дешифратора 17, поэтому на первом его выходе присутствует единый сигнал, который подаются на соответствующие управляющие входы первого блока 35.1 элементов запрета, обеспечивая прохождение на их выходы сигналов с индикаторных выходов элементов первой строки матрицы 1. Эти сигналы проходят через группу 37.1-37.m элементов ИЛИ, и поступают на соответствующие S-входы группы 33.1-33.m триггеров, устанавливая их в единое состояние при наличии соответствующих единичных сигналов. В счетчике 30 содержатся код двойки ("00...010"), в счетчиках 27, 28 и 31 - код единицы ("00...01"). Во втором сумматоре 34 и в счетчиках 26 и 29 содержится код нуля.Initially, the
Предлагаемое устройство предназначено для оценки размещения по критериям суммарной длины ребер, максимальной длины ребра. Дополнительно предлагаемое устройство позволяет осуществлять поиск нижней оценки размещения в матричных системах, а также предназначено для решения задачи трассировки. Задача трассировки решается в матрице 1 так же как и в прототипе и поэтому здесь не рассматривается.The proposed device is designed to assess the placement according to the criteria of the total length of the ribs, the maximum length of the ribs. Additionally, the proposed device allows you to search for lower estimates of placement in matrix systems, and is also intended to solve the problem of tracing. The trace problem is solved in
Оценка размещения по критериям суммарной длины ребер и максимальной длины ребра происходит следующим образом. Информация с индикаторных выходов элементов каждого столбца матрицы 1 поступает в соответствующие блоки подсчета единиц. Блок 2.i (i=1, 2,..., n) выдает двоичное число (код), равное количеству поступивших на его вход единиц. Полученное число далее поступает на входы первого сумматора 4 и блока 3 нахождения максимума, соответствующие данному блоку подсчета единиц. В результате на выходе 10 устройства образуется код (оценка) максимальной длины ребра, а на выходе 11 - код (оценка) суммарной длины ребер, отвечающие текущему варианту размещения схемы (содержащемуся в матрице 1). Полученные оценки далее поступают на ВУУ, где происходит их сравнение с предыдущими значениями. В случае улучшения оценок ВУУ подает импульс (сигнал "Запись") на вход 9 управления записью устройства и текущий вариант размещения переписывается в блок 5 памяти из матрицы 1. Более подробно рассмотренный режим работы устройства описан в прототипе.Assessment of the placement according to the criteria of the total length of the ribs and the maximum length of the ribs is as follows. Information from the indicator outputs of the elements of each column of
Задача поиска значения нижней оценки размещения в матричных системах решается следующим образом. После выполнения очередной перестановки строк на индикаторных выходах элементов матрицы 1 появляются сигналы, соответствующие новому варианту размещения. Одновременно с этим запускается генератор 14 импульсов и начинается работа блока 46 поиска нижней оценки, которая делится на два этапа: первый этап заключается в фиксации дуг в строках МС, а на втором этапе происходит фиксация в столбцах МС. В случае, если после первого и второго этапа работы устройства еще существуют незафиксированные дуги, то процесс фиксации повторяется до тех пор, пока не будут обработаны все дуги исходного графа. Об этом свидетельствует полный перебор всех значений в матрице смежности.The task of finding the value of the lower allocation estimate in matrix systems is solved as follows. After completing the next permutation of the rows, the signals corresponding to the new placement option appear on the indicator outputs of the elements of
Так как триггер 32 режима находится в состоянии логического нуля, то на его инверсном выходе присутствует единичный сигнал, который поступает на первый вход элемента 44 И и на разрешающий вход первого мультиплексора 15 выбора элемента. В результате появления тактового импульса на втором входе элемента 44 И на его выходе появляется единичный импульс, который поступает на счетный вход счетчика 26, увеличивая его содержимое по переднему фронту до кода единицы ("00...01"). Тот же импульс попадает на первый вход элемента 43 ИЛИ. Положительный импульс поступает на счетный вход счетчика 25 и увеличивает его содержимое по переднему фронту до кода двойки ("00...010").Since the trigger 32 of the mode is in a state of logical zero, then on its inverse output there is a single signal that is fed to the first input of the element 44 AND and to the enable input of the first multiplexer 15 of the element selection. As a result of the appearance of a clock pulse at the second input of element 44, a single pulse appears at its output, which arrives at the counting input of the counter 26, increasing its contents along the leading edge to the unit code ("00 ... 01"). The same pulse hits the first input of the OR element 43. A positive pulse arrives at the counting input of the counter 25 and increases its contents along the rising edge to a deuce code ("00 ... 010").
Код числа два с выхода счетчика 25 поступает на управляющие входы первого 15 и второго 16 мультиплексоров выбора элемента. Так как на разрешающем входе мультиплексора 15 присутствует единица, то поступивший на его управляющий вход код числа два пропускает единичное значение с выхода триггера 33.2. Если он находится в единичном состоянии, то на выходе мультиплексора 15 появляется единичный импульс. Единичный сигнал с выхода мультиплексора 15 поступает на входы разрешения выдачи счетчиков 28 и 30, разрешая появление кодов на их выходах. В результате этого на входе дешифратора 19 появляется код числа два ("00...010"), поэтому на втором его выходе появляется единичный сигнал, который поступает на второй вход элемента 41.i.j (i=1, 2,..., m) И МС. Одновременно с этим на первом выходе дешифратора 18 появляется единичный сигнал, который поступает на второй вход элемента 40.j.1 (i=1, 2,..., m) И МС.The code of the number two from the output of the counter 25 is supplied to the control inputs of the first 15 and second 16 multiplexers of the element selection. Since there is one at the permissive input of the multiplexer 15, the code of the number two received at its control input passes the unit value from the output of trigger 33.2. If it is in a single state, then a single pulse appears at the output of the multiplexer 15. A single signal from the output of the multiplexer 15 is fed to the inputs of the resolution of the counters 28 and 30, allowing the appearance of codes at their outputs. As a result of this, the code of the number two appears on the input of the decoder 19 ("00 ... 010"), therefore a single signal appears on its second output, which is fed to the second input of the element 41.ij (i = 1, 2, ..., m) and MS. At the same time, a single signal appears at the first output of the decoder 18, which is fed to the second input of element 40.j.1 (i = 1, 2, ..., m) AND MS.
К этому времени на выходе счетчика 26 уже присутствует код "00...01", который поступает на вход дешифратора 20, поэтому на первом его выходе появляется единичный сигнал. Этот сигнал поступает на первые входы элементов 40.1.j (j=1, 2,..., n) и 41.1.j (j=1, 2,..., n) И МС (фиг.1). Таким образом, на выходах элементов 40.1.1 и 41.1.2 И появляются единичные сигналы, которые проходят через соответствующие элементы 38.1.1 и 38.1.2 ИЛИ и поступают на счетные входы счетчиков 38.1.1 и 38.1.2, увеличивая их содержимое на единицу. Таким образом происходит фиксация дуги в первой строке МС.By this time, the code "00 ... 01" is already present at the output of the counter 26, which is fed to the input of the decoder 20, so a single signal appears at its first output. This signal is fed to the first inputs of the elements 40.1.j (j = 1, 2, ..., n) and 41.1.j (j = 1, 2, ..., n) and the MS (Fig. 1). Thus, at the outputs of the elements 40.1.1 and 41.1.2 AND, single signals appear that pass through the corresponding elements 38.1.1 and 38.1.2 OR and go to the counting inputs of the counters 38.1.1 and 38.1.2, increasing their content by one . Thus, the arc is fixed in the first row of the MS.
Очередной тактовый импульс поступает на второй вход элемента 44 И и на первый вход элемента 45 И. Так как на первом входе элемента 44 И присутствует единичный импульс с инверсного выхода триггера 32, на выходе элемента 44 И появляется положительный импульс, который поступает на счетный вход счетчика 26 и на элемент 43 ИЛИ, проходя на счетный вход счетчика 25. В результате в счетчике 26 по переднему фронту будет установлен код двойки ("00...010"), а в счетчике 25 по переднему фронту установится код числа три ("00...011"). Код тройки с выхода счетчика 25 поступит на управляющие входы мультиплексоров 15 и 16. На разрешающем входе мультиплексора 15 присутствует единичный сигнал, который разрешает поступление сигналов на его выход. Если на выходе триггера 33.3 присутствует единичный сигнал (это означает наличие дуги в графе), то на выходе мультиплексора 15 появится единичный импульс, который поступит на входы разрешения выдачи счетчиков 28 и 30. Код единицы с выхода счетчика 28 поступит на вход дешифратора 18, а на входе дешифратора 19 появится код двойки с выхода счетчика 30. Соответственно на первом выходе дешифратора 18 и на втором выходе дешифратора 19 появятся единичные сигналы. Единичный сигнал с первого выхода дешифратора 18 поступит на второй вход элемента 40. i.1 (i=1, 2,..., m) И МС. Единичный сигнал со второго выхода дешифратора 19 поступит на второй вход элемента 41.i.2 (i=1, 2,..., m) ИМС.Another clock pulse arrives at the second input of element 44 AND and at the first input of element 45 I. Since there is a single pulse from the inverse output of trigger 32 at the first input of element 44 AND, a positive pulse appears at the output of element 44 AND, which goes to the counting input of the counter 26 and to the OR element 43, passing to the counting input of the counter 25. As a result, a counter of two (“00 ... 010”) will be set in the counter 26 on the rising edge, and a code of three will be set on the counter 25 on the rising edge (“00 ... 011 "). The code of the three from the output of the counter 25 will go to the control inputs of the multiplexers 15 and 16. At the enable input of the multiplexer 15 there is a single signal that allows the input of signals to its output. If a single signal is present at the output of trigger 33.3 (this means the presence of an arc in the graph), then a single pulse will appear at the output of multiplexer 15, which will be fed to the resolution enable inputs of counters 28 and 30. The unit code from the output of counter 28 will go to the input of decoder 18, and at the input of the decoder 19, a two code appears from the output of the counter 30. Accordingly, at the first output of the decoder 18 and at the second output of the decoder 19, single signals will appear. A single signal from the first output of the decoder 18 will go to the second input of the element 40. i.1 (i = 1, 2, ..., m) AND MS. A single signal from the second output of the decoder 19 will go to the second input of the element 41.i.2 (i = 1, 2, ..., m) IC.
Код "00...010" с выхода счетчика 26 поступает на вход дешифратора 20 и возбуждает на его втором выходе положительный импульс, который в свою очередь поступает на первые входы элементов 40.2.j (j=1, 2,..., n) и 41.2.j (j=1, 2,..., n) И. Таким образом, на выходе элементов 40.2.1 и 41.2.2 появятся единые сигналы, которые пройдут через соответствующие элементы 38.2.1 и 38.2.2 ИЛИ и увеличат по переднему фронту содержимое счетчиков 36.2.1 и 36.2.2 на единицу, фиксируя тем самым очередную дугу рассматриваемого графа.The code "00 ... 010" from the output of the counter 26 enters the input of the decoder 20 and excites a positive pulse at its second output, which in turn enters the first inputs of the elements 40.2.j (j = 1, 2, ..., n ) and 41.2.j (j = 1, 2, ..., n) I. Thus, at the output of elements 40.2.1 and 41.2.2, there will be single signals that pass through the corresponding elements 38.2.1 and 38.2.2 OR and increase the contents of the counters 36.2.1 and 36.2.2 by one on the leading edge, thereby fixing the next arc of the graph in question.
Так происходит до тех пор, пока не произойдет переполнение содержимого счетчика 26. Такая ситуация возникнет в том случае, когда содержимое счетчика >m. В этом случае на выходе переполнения счетчика 26 появится единичный импульс, а его содержимое сбрасывается в единицу. Импульс с выхода переполнения счетчика 26 поступит на счетные входы счетчиков 28 и 30, увеличивая их содержимое по переднему фронту на единицу. Таким образом содержимое счетчика 28 установится в двойку и в нем будет содержаться код "00...010", а в счетчике 30 установится код числа три ("00...011"). В это время содержимое счетчика 25 будет увеличено по переднему фронту на единицу до кода четырех ("00...0100"). После этого фиксация дуг повторяется так, как описано выше.This happens until the overflow of the contents of the counter 26 occurs. This situation occurs when the contents of the counter> m. In this case, a single pulse appears at the output of the counter overflow 26, and its contents are reset to one. The pulse from the overflow output of the counter 26 will go to the counting inputs of the counters 28 and 30, increasing their contents on the leading edge by one. Thus, the contents of counter 28 will be set to two and the code will contain the code “00 ... 010”, and the code number three (“00 ... 011”) will be set in the counter 30. At this time, the contents of counter 25 will be incremented on the rising edge by one to code four ("00 ... 0100"). After this, the fixation of the arcs is repeated as described above.
Так продолжается до тех пор, пока не произойдет переполнение либо счетчика 25 либо счетчика 30. Переполнение счетчика 25 произойдет в том случае, если его содержимое превысит код числа n. В этом случае на выходе переполнения появляется единичный импульс, который поступает на счетный вход счетчика 24 строк и увеличивает его содержимое по переднему фронту на единицу, устанавливая в нем код двойки ("00...010"). Код числа два поступает на вход дешифратора 17 и, на установочный вход счетчика 25, устанавливая в нем начальное значение, равное коду двойки ("00...010"). На втором выходе дешифратора 17 появляется единичный импульс, который поступает на управляющие входы блока 35.2 элементов запрета, разрешая тем самым прохождение сигналов с индикаторных выходов элементов второй строки матрицы 1, которые проходят через соответствующие входы группы 37.1-37.m элементов ИЛИ и поступают на соответствующие S-входы группы 33.1-33.m триггеров, устанавливая их в единое состояние при наличии соответствующих единичных сигналов. Далее работа происходит так, как описано выше.This continues until overflow of either counter 25 or counter 30 occurs. Overflow of counter 25 will occur if its contents exceed the code number n. In this case, a single impulse appears at the overflow output, which arrives at the counting input of the 24-line counter and increases its content along the rising edge by one, setting the deuce code in it ("00 ... 010"). The code of the number two goes to the input of the decoder 17 and to the installation input of the counter 25, setting the initial value in it equal to the code of two ("00 ... 010"). At the second output of the decoder 17, a single pulse appears, which arrives at the control inputs of the block 35.2 elements of the ban, thereby allowing the passage of signals from the indicator outputs of the elements of the second row of the
Переполнение первого счетчика 30 фиксируемой дуги означает, что фиксация дуг исходного графа в строках МС закончена (на фиг.2 это дуги, зафиксированные в модулях 1-2 и 3-4) и далее необходимо фиксировать дуги в столбах МС (на фиг.2 это модули 1-3 и 2-4). Сигнал с выхода переполнения счетчика 30 поступает на вход сброса счетчика 28, сбрасывая его до кода единицы. Тот же сигнал поступает на S-вход триггера 32 режима, устанавливая его в единичное состояние. Тогда на его прямом выходе будет присутствовать единичный сигнал, а на инверсном - нулевой. Нулевой сигнал с инверсного выхода триггера 32 поступает на разрешающий вход мультиплексора 15 и запрещает прохождение сигналов на его выход. Кроме того, тот же сигнал поступает на первый вход элемента 44 И, запрещая тем самым прохождение импульсов с генератора 14 импульсов. Единичный сигнал с прямого выхода триггера 32 поступает на второй вход элемента 45 И, разрешая прохождение импульсов с генератора 14 импульсов на его выходы и на разрешающий вход мультиплексора 16, разрешая тем самым прохождение сигналов с входов на его выход. В счетчике 30 устанавливается код двойки ("00...010").The overflow of the first counter 30 of the fixed arc means that the fixation of the arcs of the original graph in the MS lines is completed (in Fig. 2 these are arcs fixed in modules 1-2 and 3-4) and then it is necessary to fix the arcs in the MS columns (in Fig. 2 modules 1-3 and 2-4). The signal from the overflow output of the counter 30 is fed to the reset input of the counter 28, resetting it to the unit code. The same signal is sent to the S-input of the trigger 32 mode, setting it in a single state. Then on its direct output there will be a single signal, and on the inverse - zero. The zero signal from the inverse output of the trigger 32 is fed to the enable input of the multiplexer 15 and prohibits the passage of signals to its output. In addition, the same signal is supplied to the first input of the element 44 And, thereby prohibiting the passage of pulses from the generator 14 pulses. A single signal from the direct output of the trigger 32 is fed to the second input of the And element 45, allowing the passage of pulses from the pulse generator 14 to its outputs and to the enabling input of the multiplexer 16, thereby allowing the passage of signals from the inputs to its output. The counter 30 sets the code of two ("00 ... 010").
Очередной тактовый импульс с генератора 14 импульсов поступает на первый вход элемента 45 И. Так как на двух его входах присутствуют единичные сигналы, то на выходе появляется единичный импульс, который поступает на второй вход элемента 43 ИЛИ и далее проходит на счетный вход счетчика 25, увеличивая его содержимое по переднему фронту на единицу. Тот же импульс с выхода элемента 45 И попадает на входы разрешения выдачи счетчиков 29 и 31, разрешая тем самым появление содержащихся в них кодов на соответствующих выходах.The next clock pulse from the generator 14 pulses is supplied to the first input of the element 45 I. Since there are single signals at its two inputs, a single pulse appears at the output, which goes to the second input of the element 43 OR and then passes to the counting input of the counter 25, increasing its contents on the leading edge per unit. The same pulse from the output of the element 45 And gets to the inputs of the resolution of the issuance of the counters 29 and 31, thereby allowing the appearance of the codes contained in them at the corresponding outputs.
К этому времени на управляющих входах мультиплексоров 15 и 16 появится код числа, содержащегося в счетчике 25. Так как на разрешающем входе мультиплексора 16 присутствует положительный импульс, и, если в триггере 37.j (j=1, 2,..., n) содержится единица, то на выходе мультиплексора 16 появится положительный импульс. Единичный сигнал с выхода мультиплексора 16 поступает на счетные входы счетчиков 29 и 31, увеличивая их содержимое по переднему фронту до кодов "00...01" и "00...010" соответственно. Поэтому на входе дешифратора 22 появится код "00...01", а на входе дешифратора 21 - код двойки ("00...010"). При появлении кодов на входах дешифраторов 21 и 22, на первом выходе дешифратора 22 возбуждается единичный импульс, который поступает на первые входы элемента 42.1.j (j=1, 2,..., n) И МС. На втором выходе дешифратора 21 появляется единичный импульс, который поступает на первые входы элементов 39.2.j (j=1, 2,..., n) ИМС.By this time, the code of the number contained in the counter 25 will appear on the control inputs of the multiplexers 15 and 16. Since there is a positive pulse on the enable input of the multiplexer 16, and if the trigger 37.j (j = 1, 2, ..., n ) contains one, then at the output of multiplexer 16 a positive pulse will appear. A single signal from the output of the multiplexer 16 is supplied to the counting inputs of the counters 29 and 31, increasing their contents along the leading edge to the codes "00 ... 01" and "00 ... 010", respectively. Therefore, the code "00 ... 01" will appear at the input of the decoder 22, and a two code ("00 ... 010") will appear at the input of the decoder 21. When codes appear at the inputs of decoders 21 and 22, a single pulse is excited at the first output of decoder 22, which is fed to the first inputs of element 42.1.j (j = 1, 2, ..., n) AND MS. At the second output of the decoder 21, a single pulse appears, which is fed to the first inputs of the elements 39.2.j (j = 1, 2, ..., n) IC.
Код "00...01" с выхода счетчика 27 поступает на вход дешифратора 23, и на его первом выходе появляется единичный импульс, который поступает на вторые входы элементов 39.i.1 (i=1, 2,..., m) и 42.i.1 (i=1, 2,..., m) И МС. Таким образом, на выходах этих элементов появится единичный импульс. Тем самым обеспечивается появление положительных сигналов на входах элементов 38.1.1 и 38.2.1 ИЛИ МС, которые поступают на счетные входы соответствующих счетчиков 36.1.1, 36.2.1 и по переднему фронту увеличивает их содержимое на единицу. Так происходит фиксация дуги в столбце МС.The code "00 ... 01" from the output of the counter 27 goes to the input of the decoder 23, and a single pulse appears at its first output, which goes to the second inputs of the elements 39.i.1 (i = 1, 2, ..., m ) and 42.i.1 (i = 1, 2, ..., m) and MS. Thus, a single impulse will appear at the outputs of these elements. This ensures the appearance of positive signals at the inputs of the elements 38.1.1 and 38.2.1 OR MS, which are received at the counting inputs of the respective counters 36.1.1, 36.2.1 and on the rising edge increases their content by one. This is how the arc fixes in the MC column.
Очередной импульс с выхода генератора 14 импульсов возбуждает импульс на выходе элемента 45 И, который поступает на счетные входы счетчиков 29 и 31 и на второй вход элемента 43 ИЛИ, который проходит на счетный вход счетчика 25, увеличивая его содержимое по переднему фронту на единицу. В счетчике 29 таким образом по переднему фронту установится код числа два ("00...010"), и в счетчике 31 - код числа три ("00...011"),The next pulse from the output of the pulse generator 14 excites a pulse at the output of the AND element 45, which is fed to the counting inputs of the counters 29 and 31 and to the second input of the OR element 43, which passes to the counting input of the counter 25, increasing its content along the leading edge by one. Thus, in the counter 29, the code of the number two ("00 ... 010") is set on the leading edge, and in the counter 31, the code of the number three ("00 ... 011"),
В результате на втором выходе дешифратора 22 и на третьем выходе дешифратора 21 появляется единичные импульсы. Соответствующие импульсы поступят на соответствующие первые входы элемента 42.2.j (j=1, 2,..., n) И МС и на первые входы элемента 39.3.j (j=1, 2,..., n) И МС.As a result, single pulses appear at the second output of the decoder 22 and at the third output of the decoder 21. Corresponding pulses will arrive at the corresponding first inputs of element 42.2.j (j = 1, 2, ..., n) AND MS and at the first inputs of element 39.3.j (j = 1, 2, ..., n) AND MS.
На первом выходе дешифратора 23 по-прежнему присутствует единичное значение, которое поступает на вторые входы элементов 39.i.1 (i=1, 2,..., m) и 42.i.1 (i=1, 2,..., m) И МС. Таким образом на выходах элементов 39.3.1 и 42.2.1 И появится единичное значение, которое, пройдя через элемент 38.3.1 и 38.2.1 ИЛИ, поступит на входы соответствующих счетчиков 36.3.1, 36.2.1 и увеличит их содержимое по переднему фронту на единицу. Таким образом произойдет фиксация очередной дуги в столбце МС.At the first output of the decoder 23, there is still a single value that is supplied to the second inputs of the elements 39.i.1 (i = 1, 2, ..., m) and 42.i.1 (i = 1, 2 ,. .., m) And MS. Thus, at the outputs of the elements 39.3.1 and 42.2.1 And a single value appears, which, passing through the element 38.3.1 and 38.2.1 OR, will go to the inputs of the corresponding counters 36.3.1, 36.2.1 and increase their contents along the leading edge per unit. Thus, the fixation of the next arc in the MS column will occur.
Так происходит до тех пор, пока на выходе счетчика 31 не появится сигнал переполнения, свидетельствующий о том, что дуги в первом столбце МС зафиксированы и необходимо переходить к следующему столбцу. Единичный импульс с выхода переполнения счетчика 31 поступит на вход сброса счетчика 29, сбрасывая его содержимое в ноль и устанавливая в нем код "00...00". Тот же импульс поступает на счетный вход счетчика 27 и по переднему фронту увеличивает его содержимое на единицу до кода двойки ("00...010"). В счетчике 31 устанавливается значение единицы. После этого процесс повторяется так, как описано выше.This happens until an overflow signal appears at the output of counter 31, indicating that the arcs in the first column of the MC are fixed and it is necessary to go to the next column. A single pulse from the overflow output of the counter 31 will go to the reset input of the counter 29, resetting its contents to zero and setting the code "00 ... 00" in it. The same pulse arrives at the counting input of the counter 27 and on the rising edge increases its content by one to a two code ("00 ... 010"). Counter 31 sets the unit value. After that, the process is repeated as described above.
Так происходит до тех пор, пока на выходе переполнения счетчика 27 не появится импульс переполнения, свидетельствующий о том, что дуги во всех столбцах МС зафиксированы. Импульс переполнения поступает на R-вход триггера 32 режима сбрасывая его содержимое в ноль. Таким образом, на его прямом выходе появится нулевое значение, а на инверсном положительное.This happens until an overflow pulse appears at the output of the counter overflow 27, indicating that the arcs in all columns of the MC are fixed. The overflow pulse arrives at the R-input of the mode trigger 32, resetting its contents to zero. Thus, a zero value will appear on its direct output, and a positive value on the inverse.
После этого прохождение импульсов с генератора 14 импульсов через элемент 45 И закрывается, а открывается через элемент 44 И, так как на его первом входе появится единичное значение. На разрешающем входе мультиплексора 15 появится единичное значение, которое разрешает появление импульсов на его выходе, а на разрешающем входе мультиплексора 16 появляется нулевое значение, которое запрещает появление импульсов на выходе этого мультиплексора.After that, the passage of pulses from the pulse generator 14 through the element 45 And closes, and opens through the element 44 And, since a single value will appear at its first input. A single value appears at the resolving input of multiplexer 15, which allows the appearance of pulses at its output, and a zero value appears at the resolving input of multiplexer 16, which prohibits the appearance of pulses at the output of this multiplexer.
Далее процесс повторяется так, как описано выше до тех пор, пока не будут обработаны все значения из матрицы смежности исходного графа. Это произойдет, когда на выходе переполнения счетчика 24 появляется сигнал переполнения, который поступит на выход переполнения 49 устройства, что говорит об окончании процесса поиска значения нижней оценки размещения в МС.Next, the process is repeated as described above until all values from the adjacency matrix of the original graph are processed. This will happen when an overflow signal appears on the overflow output of the counter 24, which will go to the overflow output 49 of the device, which indicates the end of the search process for the value of the lower placement estimate in the MS.
К этому времени во втором сумматоре 34 будет содержаться искомое суммарное значение нижней оценки, на входы которых уже поступили соответствующие коды с выходов счетчиков 36.i.j (i=1, 2,..., m, j=1, 2,..., n) матрицы 36.i.j (i=1, 2,..., m, j=1, 2,..., n) счетчиков фиксированных дуг. Суммарное значение нижней оценки с выхода сумматора 34 поступает на выход 48 значения нижней оценки с последующей подачей на ВУУ для дальнейшей обработки.By this time, the second adder 34 will contain the desired total value of the lower estimate, the inputs of which have already received the corresponding codes from the outputs of the counters 36.ij (i = 1, 2, ..., m, j = 1, 2, ... , n) of the matrix 36.ij (i = 1, 2, ..., m, j = 1, 2, ..., n) of counters of fixed arcs. The total value of the lower estimate from the output of the adder 34 goes to the output 48 of the value of the lower estimate with subsequent submission to the WUU for further processing.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2004129496/09A RU2275681C1 (en) | 2004-10-06 | 2004-10-06 | Device for finding lower positioning estimate in matrix systems |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2004129496/09A RU2275681C1 (en) | 2004-10-06 | 2004-10-06 | Device for finding lower positioning estimate in matrix systems |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2004129496A RU2004129496A (en) | 2006-03-27 |
RU2275681C1 true RU2275681C1 (en) | 2006-04-27 |
Family
ID=36388488
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2004129496/09A RU2275681C1 (en) | 2004-10-06 | 2004-10-06 | Device for finding lower positioning estimate in matrix systems |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2275681C1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2447485C2 (en) * | 2009-09-11 | 2012-04-10 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Юго-Западный государственный университет" (ЮЗГУ) | Device to search lower location score in matrix systems during bidirectional information transfer |
RU2452005C2 (en) * | 2009-08-05 | 2012-05-27 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Юго-Западный государственный университет" (ЮЗГУ) | Location lower-bound estimate search device in matrix systems during directional transmission of information |
-
2004
- 2004-10-06 RU RU2004129496/09A patent/RU2275681C1/en not_active IP Right Cessation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2452005C2 (en) * | 2009-08-05 | 2012-05-27 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Юго-Западный государственный университет" (ЮЗГУ) | Location lower-bound estimate search device in matrix systems during directional transmission of information |
RU2447485C2 (en) * | 2009-09-11 | 2012-04-10 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Юго-Западный государственный университет" (ЮЗГУ) | Device to search lower location score in matrix systems during bidirectional information transfer |
Also Published As
Publication number | Publication date |
---|---|
RU2004129496A (en) | 2006-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7324363B2 (en) | SPICE optimized for arrays | |
US8166413B2 (en) | Multi-step progress indicator and method for indicating progress in a multi-step computer application | |
US4263651A (en) | Method for determining the characteristics of a logic block graph diagram to provide an indication of path delays between the blocks | |
RU2275681C1 (en) | Device for finding lower positioning estimate in matrix systems | |
US6038384A (en) | Input slope timing analysis and non-linear delay table optimization | |
RU2534924C2 (en) | Device for simulation of decision making under uncertainty | |
RU2323467C1 (en) | Device for estimating quality of positioning in systems with matrix structure | |
RU2319196C1 (en) | Device for finding minimal intensity value in systems with linear organization during directional transmission of data | |
RU2452005C2 (en) | Location lower-bound estimate search device in matrix systems during directional transmission of information | |
RU2421805C2 (en) | Device to search lower location score in fully connected matrix systems during bidirectional information transfer | |
RU2285289C2 (en) | Device for planning positioning of problems in systems with circular organization during directional information transfer | |
RU2356085C1 (en) | Device for calculation of location intensity value in fully connected matrix systems in case of directive transmission of information | |
RU2379749C1 (en) | Method of calculating minimum value of distribution intensity in tree-structured systems | |
RU2297027C1 (en) | Device for calculating minimal value of placement intensiveness in systems with circular organization | |
RU2398270C1 (en) | Lower-bound estimate search device in fully connected matrix systems during one-way data transfer | |
RU2406135C2 (en) | Lower-bound estimate search device with matrix organisation during directional information transmission | |
RU2279709C1 (en) | Device for estimating positioning quality in matrix systems | |
JPS6136868A (en) | Information retriever | |
RU2263953C1 (en) | Device for estimation of difference between current remoteness of position and optimal remoteness of position | |
RU2084954C1 (en) | Device which solves assignment problem | |
RU101552U1 (en) | DEVICE FOR EVALUATING THE DEGREE OF LOADING CHANNELS IN SYSTEMS WITH A TREE-TOPOLOGICAL ORGANIZATION | |
RU2447485C2 (en) | Device to search lower location score in matrix systems during bidirectional information transfer | |
RU2718166C1 (en) | Device for estimating degree of optimality of arrangement in multiprocessing hypercubic cyclic systems | |
RU2610012C1 (en) | System of innovation project personnel formation | |
SU1309036A1 (en) | Device for generating control pulses for corpuscle beam |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20061007 |