RU2417402C1 - Cross-cluster switch matrix - Google Patents

Cross-cluster switch matrix Download PDF

Info

Publication number
RU2417402C1
RU2417402C1 RU2009133507/08A RU2009133507A RU2417402C1 RU 2417402 C1 RU2417402 C1 RU 2417402C1 RU 2009133507/08 A RU2009133507/08 A RU 2009133507/08A RU 2009133507 A RU2009133507 A RU 2009133507A RU 2417402 C1 RU2417402 C1 RU 2417402C1
Authority
RU
Russia
Prior art keywords
switches
input
output
matrix
level
Prior art date
Application number
RU2009133507/08A
Other languages
Russian (ru)
Inventor
Леонид Сергеевич Сотов (RU)
Леонид Сергеевич Сотов
Original Assignee
Государственное образовательное учреждение высшего профессионального образования "Саратовский государственный университет им. Н.Г. Чернышевского"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Государственное образовательное учреждение высшего профессионального образования "Саратовский государственный университет им. Н.Г. Чернышевского" filed Critical Государственное образовательное учреждение высшего профессионального образования "Саратовский государственный университет им. Н.Г. Чернышевского"
Priority to RU2009133507/08A priority Critical patent/RU2417402C1/en
Application granted granted Critical
Publication of RU2417402C1 publication Critical patent/RU2417402C1/en

Links

Images

Landscapes

  • Electronic Switches (AREA)

Abstract

FIELD: information technology.
SUBSTANCE: cross-cluster switch matrix is meant for simultaneous connection of each input of any input cluster with one output of any output cluster, having n=2k data inputs which are divided in numerical order into 2u clusters, where u<k is not a negative integer, n=2k data outputs which are divided in numerical order into 2u clusters, control code inputs, wherein the matrix consists of input and output parts consisting of switches. The switches of the input part are controlled and non-controlled, and switches of the output part are controlled. Non-controlled switches have two inputs, two outputs, and controlled switches additionally have a control code input. The switches lie on levels - columns and lines - rows.
EFFECT: possibility of high-speed cross-cluster rearrangement of data elements or signals on inputs using control codes.
8 cl, 3 dwg

Description

Устройство относится к области кодирования информации и может быть использовано в вычислительной технике, системах коммуникации и защиты информации от несанкционированного доступа.The device relates to the field of encoding information and can be used in computer technology, communication systems and information protection from unauthorized access.

Известно устройство для осуществления перестановок с использованием команд, основанное на сети (коммутационной матрице) «butterfly» (см. патент US №6922472, МПК H04L 9/34).A device for implementing permutations using commands based on the network (switching matrix) "butterfly" (see US patent No. 6922472, IPC H04L 9/34).

Используя данное устройство, можно осуществлять кросс-кластерные перестановки входных данных, однако управление данным устройством осуществляется программно, что существенно увеличивает время обработки при частом изменении управляющих кодов. Под кросс-кластерными перестановками понимается преобразование перестановки элементов входных строк данных, при котором строки входных и выходных данных разбиваются в порядке следования на 2u кластеров равного размера. Рассматриваются только перестановки, при которых элементы из одних входных кластеров попадают в другие выходные. Перестановки внутри кластеров не представляют интереса. Кросс-кластерная коммутационная матрица одновременно соединяет входы и выходы, принадлежащие различным кластерам. Под соединением входа и выхода или выхода и входа понимается условие, при котором если подать сигнал на вход, соединенный с выходом, или выход, соединенный с входом, на выходе через некоторую временную задержку, обусловленную временем распространения сигнала, появится входной сигнал и, наоборот, если подать сигнал на выход, на входе через некоторую временную задержку, обусловленную временем распространения сигнала, появится выходной сигнал. При подаче на входы кросс-кластерной коммутационной матрицы сигналов на выходах образуется кросс-кластерная перестановка сигналов.Using this device, it is possible to carry out cross-cluster permutations of the input data, however, this device is controlled by software, which significantly increases the processing time with frequent changes to the control codes. Cross-cluster permutations are understood as the transformation of the permutation of the elements of the input data lines, in which the input and output data lines are divided in order of sequence into 2 u clusters of equal size. Only permutations are considered, in which elements from one input cluster fall into another output. Permutations within clusters are not of interest. A cross-cluster switching matrix simultaneously connects inputs and outputs belonging to different clusters. By connecting the input and output or output and input, we mean a condition under which if a signal is applied to an input connected to an output or an output connected to an input, an output signal appears after some time delay due to the propagation time of the signal, and vice versa if you apply a signal to the output, an input signal will appear at the input after some time delay due to the propagation time of the signal. When applying to the inputs of a cross-cluster switching matrix of signals at the outputs, a cross-cluster permutation of signals is formed.

Известно устройство для осуществления перестановок с использованием команд, основанных на базе сетей омега (omega) и флип (flip) (см. патент US №6952478, МПК G06F 7/76; G06F 9/30). Предложены инструкции для осуществления перестановок, которые могут использоваться в программном обеспечении, выполненном в программируемом процессоре. Инструкции для осуществления перестановок основаны на сети омега-флип, включающей, по крайней мере, два уровня, каждый из которых может выполнить функцию или сети омега или флип. Начальная последовательность битов от исходного регистра преобразуется в промежуточные последовательности битов. Каждая промежуточная последовательность битов является входной для последующей инструкции перестановки. Инструкции перестановки определены для того, чтобы переставить начальную исходную последовательность битов в одну или более промежуточных последовательностей битов, пока не будет получена требуемая перестановка. Промежуточные последовательности битов определены битами конфигурации. Инструкции перестановки образуют последовательность инструкций перестановки, состоящую, по крайней мере, из одной инструкции. Последовательность инструкций перестановки максимального размера составляет 21r/m инструкций перестановки, где r - число переставляемых k-битных элементов, и m - число уровней сети, задействованных в одной инструкции. Инструкции перестановки могут использоваться, чтобы переставить k-битные элементы, упакованные в n-битное слово, где k может быть 1, 2…, n, и k·r=n.A device for performing permutations using commands based on the networks of omega (omega) and flip (flip) is known (see US patent No. 6952478, IPC G06F 7/76; G06F 9/30). Instructions for permutations that can be used in software implemented in a programmable processor are proposed. Instructions for performing permutations are based on an omega-flip network, which includes at least two levels, each of which can fulfill the function of either an omega-flip network. The initial sequence of bits from the source register is converted to intermediate sequences of bits. Each intermediate bit sequence is input for a subsequent permutation instruction. The permutation instructions are defined in order to rearrange the initial source bit sequence into one or more intermediate bit sequences until the desired permutation is obtained. Intermediate bit sequences are defined by configuration bits. Swap instructions form a sequence of swap instructions consisting of at least one instruction. The sequence of permutation instructions of the maximum size is 21r / m permutation instructions, where r is the number of permutable k-bit elements, and m is the number of network layers involved in one instruction. Swapping instructions can be used to swap k-bit elements packed into an n-bit word, where k can be 1, 2 ..., n, and k · r = n.

Используя данное устройство, можно осуществлять кросс-кластерные перестановки входных данных, однако управление данным устройством также осуществляется программно, что существенно увеличивает время обработки при частом изменении управляющих кодов.Using this device, it is possible to carry out cross-cluster permutations of the input data, however, this device is also controlled by software, which significantly increases the processing time with frequent changes to the control codes.

Наиболее близким к заявляемому решению является коммутационная сеть (матрица) (см. патент US №5175539, МПК H04J 3/00).Closest to the claimed solution is a switching network (matrix) (see US patent No. 5175539, IPC H04J 3/00).

Коммутационная сеть предназначена для избирательного одновременного соединения каждого из n входов с одним из n выходов. Она имеет входную часть, содержащую входы и имеющую, по крайней мере, k-1 (k=log2n) последовательно соединенных уровней k-уровневой сети baseline, n выходов и выходную часть, в которой n входов соединены с n выходами входной части, включающую k-уровневую сеть baseline и n выходов, которые образуют выходы коммутационной сети.The switching network is designed for selective simultaneous connection of each of n inputs with one of n outputs. It has an input part containing inputs and having at least k-1 (k = log 2 n) series-connected levels of the k-level network baseline, n outputs and an output part in which n inputs are connected to n outputs of the input part, including a k-level network of baseline and n outputs that form the outputs of the switching network.

Используя данную коммутационную сеть, можно осуществлять кросс-кластерные перестановки входных данных. Однако для осуществления таких перестановок число уровней выходной части данной коммутационной сети составляет k, что является завышенным и замедляет скорость осуществления перестановок. Кроме этого, для проведения оптимизации топологии коммутационной сети представляет интерес расширение возможных соединений между ее уровнями.Using this switching network, it is possible to carry out cross-cluster permutations of input data. However, for the implementation of such permutations, the number of levels of the output part of this switching network is k, which is overestimated and slows down the speed of the permutations. In addition, to optimize the topology of the switching network, it is of interest to expand the possible connections between its levels.

Задачами настоящего решения является ускорение выполнения кросс-кластерных перестановок за счет сокращения числа уровней, минимизация ограничений на возможные соединения между уровнями коммутационной матрицы и сокращение ее коммутационных элементов.The objectives of this solution are to accelerate the implementation of cross-cluster permutations by reducing the number of levels, minimizing the restrictions on possible connections between the levels of the switching matrix and reducing its switching elements.

Техническим результатом является возможность высокоскоростной кросс-кластерной перестановки элементов данных или сигналов на входах с использованием управляющих кодов.The technical result is the possibility of high-speed cross-cluster permutation of data elements or signals at the inputs using control codes.

Поставленная задача достигается тем, что в выходной части предлагаемого устройства используется k-u уровней преобразования, а во входной части k-1 уровень любой сети баньян-типа с минимальным количеством переключающих логических элементов (баньян переключателей 2×2), где k=log2n, где n - число входов и выходов матрицы, u - неотрицательное целое число, меньшее k.The problem is achieved by the fact that in the output part of the proposed device ku conversion levels are used, and in the input part k-1 is the level of any banyan-type network with a minimum number of switching logic elements (2 × 2 banyan switches), where k = log 2 n, where n is the number of inputs and outputs of the matrix, u is a non-negative integer less than k.

Согласно предлагаемому решению кросс-кластерная коммутационная матрица, предназначенная для одновременного соединения каждого из входов любого входного кластера с одним выходом любого выходного кластера, имеет n=2k входов данных, разделенных по порядку номеров на 2u кластеров, где u<k - неотрицательное целое число, n=2k выходов данных, разделенных по порядку номеров на 2u кластеров, входы управляющих кодов, при этом матрица состоит из входной и выходной частей, которые состоят из переключателей, имеющих 2 входа, 2 выхода и вход управляющего кода, расположенных по уровням - столбцам и линиям - строкам, причем входы управляющих кодов кросс-кластерной коммутационной матрицы образованы входами кодов переключателей, входы данных матрицы образованы входами переключателей первого уровня входной части матрицы, выходы данных матрицы образованы выходами переключателей последнего уровня, выходы переключателей предыдущего уровня соединены со входами переключателей следующего уровня, под соединением понимается условие, при котором если подать сигнал на вход, соединенный с выходом, или выход, соединенный с входом, на выходе через некоторую временную задержку, обусловленную временем распространения сигнала, появится входной сигнал, и, наоборот, если подать сигнал на выход, на входе через некоторую временную задержку, обусловленную временем распространения сигнала, появится выходной сигнал.According to the proposed solution, a cross-cluster switching matrix, designed to simultaneously connect each of the inputs of any input cluster with one output of any output cluster, has n = 2 k data inputs, divided in order of numbers into 2 u clusters, where u <k is a non-negative integer number, n = 2 k data outputs, separated numerical order at 2 u clusters inputs of control codes, wherein the matrix consists of input and output parts, which consist of a switch having 2 inputs and 2 outputs and a control input to a, arranged in levels — columns and lines — rows, with the inputs of the control codes of the cross-cluster switching matrix formed by the inputs of the switch codes, the inputs of the matrix data formed by the inputs of the switches of the first level of the input part of the matrix, the outputs of the matrix data formed by the outputs of the switches of the last level, the outputs of the switches of the previous level are connected to the inputs of the switches of the next level, by connection is understood the condition under which if a signal is applied to an input connected to an output, or an output coupled to the input, the output through a certain time delay due to signal propagation time, there will be an input signal and, conversely, if a signal at the output, input through a certain time delay due to signal propagation time, the output signal appears.

На вход управляющего кода каждого управляемого переключателя подается сигнал логического нуля или единицы, причем каждый переключатель в зависимости от уровня управляющего сигнала выполнен с возможностью соединения либо первого входа с первым выходом, а второго входа - со вторым выходом, либо первого входа - со вторым выходом, а второго входа - с первым выходом, неуправляемые переключатели имеют фиксированные соединения первого входа с первым выходом, а второго входа со вторым выходом, или первого входа со вторым выходом, а второго входа с первым выходом.A logic zero or one signal is supplied to the control code input of each controlled switch, and each switch, depending on the control signal level, is configured to connect either the first input to the first output, and the second input to the second output, or the first input to the second output, and the second input - with the first output, uncontrolled switches have fixed connections of the first input with the first output, and the second input with the second output, or the first input with the second output, and the second input first output.

Переключатели, составляющие входную часть, расположены в следующем порядке: по n/2-линиям - строкам и k-1 уровням - столбцам.The switches that make up the input part are arranged in the following order: along n / 2 lines — rows and k-1 levels — columns.

Переключатели, составляющие выходную часть матрицы, расположены в следующем порядке: по n/2-линиям и k-u уровням, причем выходы первого кластера матрицы образованы одним выходом первых 2u переключателей, выходы второго кластера матрицы образованы вторым выходом первых 2u переключателей, выходы третьего кластера матрицы образованы одним выходом следующих 2u переключателей, выходы четвертого кластера матрицы образованы вторым выходом следующих 2u переключателей и т.д.The switches that make up the output part of the matrix are arranged in the following order: along n / 2 lines and ku levels, with the outputs of the first cluster of the matrix formed by one output of the first 2u switches, the outputs of the second cluster of the matrix formed by the second output of the first 2u switches, the outputs of the third cluster of the matrix one output of the next 2u switches, the outputs of the fourth matrix cluster are formed by the second output of the next 2u switches, etc.

Один выход каждого переключателя, стоящего на линии i и уровне m входной или выходной части матрицы, соединен с одним входом переключателя, стоящего на следующем уровне m+1 и на линии h, причем

Figure 00000001
, One output of each switch standing on line i and level m of the input or output part of the matrix is connected to one input of the switch standing on the next level m + 1 and on line h, and
Figure 00000001
,

а второй выход каждого переключателя, стоящего на линии i и уровне m входной или выходной части матрицы, соединен с одним входом переключателя, стоящего на следующем уровне m+1 и на линии р, причем

Figure 00000002
, при этом каждый вход каждого переключателя уровня m+1 соединен с одним выходом переключателя предыдущего уровня m, где int - функция выделения целой части, (j+2k-m-1)modn - операция вычисления остатка от частного
Figure 00000003
.and the second output of each switch standing on line i and the level m of the input or output part of the matrix is connected to one input of the switch standing on the next level m + 1 and on line p, and
Figure 00000002
, wherein each input of each level switch m + 1 is connected to one output of the switch of the previous level m, where int is the function of extracting the integer part, (j + 2 km-1 ) modn is the operation of calculating the remainder of the quotient
Figure 00000003
.

Переключатели любого уровня входной части матрицы разбиты на 2m-1 групп по 2k-m+1 переключателей, номер группы dm определяется выражением

Figure 00000004
Switches of any level of the input part of the matrix are divided into 2 m-1 groups of 2 k-m + 1 switches, the group number d m is determined by the expression
Figure 00000004

где i - номер линии, m - номер уровня переключателя, входящего в группу с номером dm, при этом один из переключателей уровня mm, входящих в группу с одинаковым номером dm входной части матрицы, является неуправляемым.where i is the line number, m is the level number of the switch included in the group with the number d m , while one of the level switches m m included in the group with the same number d m of the input part of the matrix is uncontrollable.

Переключатели последнего уровня входной части матрицы, образующие выходы входной части матрицы, разделены на 2r-1 групп по 2k-r+1 переключателей, причем номер группы qr, в которую входит переключатель, расположенный на линии номером i, определяется выражениемThe switches of the last level of the input part of the matrix, forming the outputs of the input part of the matrix, are divided into 2 r-1 groups of 2 k-r + 1 switches, and the number of the group q r , which includes the switch located on line number i, is determined by the expression

Figure 00000005
,
Figure 00000005
,

где r=(

Figure 00000006
).where r = (
Figure 00000006
)

Каждый переключатель первого уровня выходной части матрицы соединен своими входами с выходами переключателей последнего уровня входной части матрицы, входящих в группу с одинаковым номером q1, переключатель любого уровня m, начиная со второго, выходной части матрицы может быть соединен своими входами с выходами переключателей последнего уровня входной части матрицы, входящих только в группу с одинаковым номером qm-1 при любых комбинациях управляющих кодов в промежуточных переключателях выходной части матрицы, через которые проходит соединение.Each switch of the first level of the output part of the matrix is connected by its inputs to the outputs of the switches of the last level of the input part of the matrix included in the group with the same number q 1 , a switch of any level m, starting from the second output part of the matrix, can be connected by its inputs to the outputs of the switches of the last level of the input part of the matrix, included only in the group with the same number q m-1 for any combinations of control codes in the intermediate switches of the output part of the matrix through which togetherness.

Изобретение поясняется чертежами, где на фиг.1 приведена диаграмма орграфа, иллюстрирующая работу устройства для n=16, u=1, на фиг.2 приведена схема входной части кросс-кластерной коммутационной матрицы для случая n=16, k=4, u=1, на фиг.3 приведена схема выходной части кросс-кластерной коммутационной матрицы для случая n=16, k=4, u=1, The invention is illustrated by drawings, where Fig. 1 is a digraph diagram illustrating the operation of the device for n = 16, u = 1, Fig. 2 is a diagram of the input part of the cross-cluster switching matrix for the case n = 16, k = 4, u = 1, figure 3 shows the output circuit of the cross-cluster switching matrix for the case n = 16, k = 4, u = 1,

где F1, F2, F3 - уровни коммутации входной части кросс-кластерной коммутационной матрицы;where F 1 , F 2 , F 3 - switching levels of the input part of the cross-cluster switching matrix;

G1, G2, G3- уровни коммутации выходной части кросс-кластерной коммутационной матрицы;G 1 , G 2 , G 3 - switching levels of the output part of the cross-cluster switching matrix;

Figure 00000007
Figure 00000007

Figure 00000008
Figure 00000008

S11, S12 - входы первого кластера матрицы;S11, S12 - inputs of the first matrix cluster;

S21, S22 - входы второго кластера матрицы;S21, S22 - inputs of the second cluster of the matrix;

S31, S32 - входы третьего кластера матрицы;S31, S32 - inputs of the third cluster of the matrix;

S41, S42 - входы четвертого кластера матрицы;S41, S42 - inputs of the fourth matrix cluster;

S51, S52 - входы пятого кластера матрицы;S51, S52 - inputs of the fifth matrix cluster;

S61, S62 - входы шестого кластера матрицы;S61, S62 - inputs of the sixth cluster of the matrix;

S71, S72 - входы седьмого кластера матрицы;S71, S72 - inputs of the seventh cluster of the matrix;

S81, S82 - входы восьмого кластера матрицы;S81, S82 - inputs of the eighth matrix cluster;

R11, R12 - выходы первого кластера матрицы;R11, R12 - outputs of the first cluster of the matrix;

R21, R22 - выходы второго кластера матрицы;R21, R22 - outputs of the second cluster of the matrix;

R31, R32 - выходы третьего кластера матрицы;R31, R32 - outputs of the third cluster of the matrix;

R41, R42 - выходы четвертого кластера матрицы;R41, R42 - outputs of the fourth matrix cluster;

R51, R52 - выходы пятого кластера матрицы;R51, R52 - outputs of the fifth cluster of the matrix;

R61, R62 - выходы шестого кластера матрицы;R61, R62 - outputs of the sixth cluster of the matrix;

R71, R72 - выходы седьмого кластера матрицы;R71, R72 - outputs of the seventh cluster of the matrix;

R81, R82 - выходы восьмого кластера матрицы;R81, R82 - outputs of the eighth cluster of the matrix;

А1-А16 - выходы входной части коммутационной матрицы;A1-A16 - outputs of the input part of the switching matrix;

входы выходной части коммутационной матрицы;inputs of the output part of the switching matrix;

X1, Х2 - первый и второй входы переключателя кросс-кластерной коммутационной матрицы;X1, X2 - the first and second inputs of the switch cross-cluster switching matrix;

Y2, Y2 - первый и второй выходы переключателя кросс-кластерной коммутационной матрицы;Y2, Y2 - the first and second outputs of the switch cross-cluster switching matrix;

С - вход управляющего кода переключателя кросс-кластерной коммутационной матрицы.C - input control code switch cross-cluster switching matrix.

Кросс-кластерная коммутационная матрица имеет n входов данных, n выходов данных, входы управляющих кодов и состоит из входной и выходной части. Входная часть состоит из управляемых и неуправляемых переключателей Тij, где

Figure 00000009
Figure 00000010
k=log2n. Выходная часть состоит из аналогичных управляемых переключателей Vsg, где
Figure 00000011
Figure 00000012
u≤k. Каждый переключатель имеет два входа X1, Х2, два выхода Y1, Y2, причем управляемые переключатели имеют также вход управляющего кода С, который принимает значения логического нуля или единицы. Каждый переключатель может соединять либо первый вход с первым выходом, а второй вход с вторым выходом, либо первый вход с вторым выходом, а второй вход с первым выходом. Например, если сигнал на входе С управляемого переключателя имеет высокий логический уровень, то сигнал на первом выходе равен сигналу на втором входе Y1=X2, а сигнал на втором выходе равен сигналу на первом входе Y2=X1, переключатель осуществляет транспозицию сигналов на своих входах. Если сигнал на входе С имеет низкий логический уровень, то сигнал на первом выходе равен сигналу на первом входе Y1=X1, а сигнал на втором выходе равен сигналу на втором входе Y2=X2. Неуправляемые переключатели не имеют входа управляющего кода и осуществляют фиксированное соединение первого входа со вторым выходом, второго входа с первым выходом или первого входа с первым выходом, второго входа со вторым выходом.The cross-cluster switching matrix has n data inputs, n data outputs, control code inputs and consists of an input and an output part. The input part consists of controlled and uncontrolled switches T ij , where
Figure 00000009
Figure 00000010
k = log 2 n. The output part consists of similar controlled switches V sg , where
Figure 00000011
Figure 00000012
u≤k. Each switch has two inputs X1, X2, two outputs Y1, Y2, and the controlled switches also have an input of the control code C, which takes on values of logical zero or one. Each switch can connect either the first input to the first output, and the second input to the second output, or the first input to the second output, and the second input to the first output. For example, if the signal at the input C of the controlled switch has a high logic level, then the signal at the first output is equal to the signal at the second input Y1 = X2, and the signal at the second output is equal to the signal at the first input Y2 = X1, the switch transposes the signals at its inputs. If the signal at input C has a low logic level, then the signal at the first output is equal to the signal at the first input Y1 = X1, and the signal at the second output is equal to the signal at the second input Y2 = X2. Unmanaged switches do not have a control code input and make a fixed connection to the first input with the second output, the second input with the first output or the first input with the first output, the second input with the second output.

Переключатели образуют входную часть матрицы с n/2-линиями и k-1 уровнями F1,…,Fk-1, и выходную часть матрицы с n/2-линиями и k-u уровнями G1,…,Gk-u. Входы управляющих кодов кросс-кластерной коммутационной матрицы образованы входами кодов переключателей С. Входы данных кросс-кластерной коммутационной матрицы образованы входами переключателей Тi1 первого уровня. Выходы данных кросс-кластерной коммутационной матрицы образованы входами переключателей Vik-u последнего уровня k-u выходной части матрицы. Каждый переключатель Tim уровня

Figure 00000013
входной части кросс-кластерной коммутационной матрицы своими выходами соединен с входами данных переключателей Vhm+1, Vpm+1 уровня m+1. Каждый переключатель Vim уровня
Figure 00000014
выходной части матрицы своими выходами соединен с входами данных переключателей Vhm+1, Vpm+1 уровня m+1. Причем
Figure 00000015
Figure 00000016
где int - функция выделения целой части, (j+2k-m-1-1)modn - операция вычисления остатка от частного
Figure 00000017
The switches form the input part of the matrix with n / 2 lines and k-1 levels F 1 , ..., F k-1 , and the output part of the matrix with n / 2 lines and ku levels G 1 , ..., G ku . The inputs of the control codes of the cross-cluster switching matrix are formed by the inputs of the switch codes C. The data inputs of the cross-cluster switching matrix are formed by the inputs of the first level switches T i1 . The data outputs of the cross-cluster switching matrix are formed by the inputs of the switches V ik-u of the last level ku of the output part of the matrix. Each switch T im level
Figure 00000013
the input part of the cross-cluster switching matrix with its outputs is connected to the data inputs of the switches V hm + 1 , V pm + 1 level m + 1. Each switch v im level
Figure 00000014
the output part of the matrix is connected with its outputs to the data inputs of the switches V hm + 1 , V pm + 1 of level m + 1. Moreover
Figure 00000015
Figure 00000016
where int is the function of extracting the integer part, (j + 2 km-1 -1) modn is the operation of calculating the remainder of the quotient
Figure 00000017

Переключатели любого уровня с номером m входной и выходной части кросс-кластерной коммутационной матрицы разбиты на 2m-1 групп по 2k-m+1 (k=log2n) переключателей, номер группы dm уровня m определяется выражением Switches of any level with the number m of the input and output parts of the cross-cluster switching matrix are divided into 2 m-1 groups of 2 k-m + 1 (k = log 2 n) switches, the group number d m of level m is determined by the expression

Figure 00000018
,
Figure 00000018
,

один из переключателей уровня m, входящих в группу с одинаковым номером dm входной части кросс-кластерной коммутационной матрицы, неуправляемый.one of the level m switches included in the group with the same number d m of the input part of the cross-cluster switching matrix, uncontrolled.

На фиг.2 представлен вариант реализации входной части кросс-кластерной коммутационной матрицы, удовлетворяющей приведенным выше условиям для случая n=16. Входная часть кросс-кластерной коммутационной матрицы имеет три уровня F1, F2, F3. Переключатели первого уровня одним выходом соединены с любым входом любого переключателя из верхней половины переключателей второго уровня, а вторым выходом соединены с любым входом любого переключателя из нижней половины переключателей второго уровня. Переключатели второго уровня одним выходом соединены с любым входом любого переключателя из верхней четверти переключателей третьего уровня, а вторым выходом соединены с любым входом любого переключателя из нижней четверти переключателей третьего уровня и т.д. На первом уровне неуправляемый один переключатель Т31 из группы с номером d1=1, на втором - два переключателя Т42, из группы с номером d2=1 и Т52 из группы с номером d2=2, на третьем - четыре переключателя Т13 из группы с номером d3=1, Т33 из группы с номером d3=2, Т53 из группы с номером d3=3 и Т73 из группы с номером d3=4.Figure 2 presents an implementation option of the input part of the cross-cluster switching matrix that satisfies the above conditions for the case n = 16. The input of the cross-cluster switching matrix has three levels F 1 , F 2 , F 3 . The first level switches with one output are connected to any input of any switch from the upper half of the second level switches, and the second output is connected with any input of any switch from the lower half of the second level switches. The second level switches with one output are connected to any input of any switch from the upper quarter of the third level switches, and the second output is connected to any input of any switch from the lower quarter of the third level switches, etc. At the first level, an uncontrolled one switch T 31 from the group with the number d 1 = 1, at the second - two switches T 42 , from the group with the number d 2 = 1 and T 52 from the group with the number d 2 = 2, at the third - four switches T 13 from the group with the number d 3 = 1, T 33 from the group with the number d 3 = 2, T 53 from the group with the number d 3 = 3 and T 73 from the group with the number d 3 = 4.

Каждый вход переключателей m+1 уровня соединен с одним выходом переключателей m уровня. Каждый выход переключателей m уровня соединен с одним входом переключателей m+1 уровня.Each input of level m + 1 switches is connected to one output of level m switches. Each output of level m switches is connected to one input of level m + 1 switches.

На соединения переключателей последнего уровня входной части матрицы с переключателями первого уровня выходной части матрицы и переключателей выходной части матрицы накладывается ограничение. Переключатели последнего уровня, образующие выходы данных входной части матрицы, разделены на группы по 2,4,8…n/2 элементов. Номер группы qm, в которую входит переключатель с номером i (номер линии, в которой стоит переключатель), определяется выражением

Figure 00000019
, где
Figure 00000020
. The connection between the switches of the last level of the input part of the matrix and the switches of the first level of the output part of the matrix and the switches of the output part of the matrix is limited. The switches of the last level, forming the data outputs of the input part of the matrix, are divided into groups of 2,4,8 ... n / 2 elements. The number of the group q m , which includes the switch with the number i (the number of the line in which the switch is located), is determined by the expression
Figure 00000019
where
Figure 00000020
.

Каждый переключатель первого уровня выходной части матрицы соединен своими входами с выходами переключателей последнего уровня входной части матрицы, входящих в группу с соответствующим номером q1, переключатель любого уровня m, начиная со второго, выходной части матрицы может быть соединен своими входами с выходами переключателей последнего уровня входной части матрицы, входящих только в группу с одинаковым номером qm-1, при любых комбинациях управляющих кодов в промежуточных переключателях выходной части матрицы, через которые проходит соединение.Each switch of the first level of the output part of the matrix is connected by its inputs to the outputs of the switches of the last level of the input part of the matrix included in the group with the corresponding number q 1 , a switch of any level m, starting from the second output part of the matrix, can be connected by its inputs to the outputs of the switches of the last level the inlet portion of the matrix included only in the group with the same number q m-1, any combination of control codes in the intermediate portion of the output matrix switches through which Prokh dit compound.

На фиг.3 представлен вариант реализации выходной части кросс-кластерной коммутационной матрицы, удовлетворяющей приведенным выше условиям для случая n=16, u=1. Выходная часть кросс-кластерной коммутационной матрицы имеет три уровня G1, G2, G3. Переключатели V11, V21 своими входами соединены с выходами переключателей Т13, Т23 последнего уровня входной части кросс-кластерной коммутационной матрицы, входящих в группу с номером q1=1, переключатели V31, V41 своими входами соединены с выходами переключателей Т33, Т43 последнего уровня входной части матрицы, входящих в группу с номером q1=2 и т.д. Переключатели V12, V82 своими входами соединены с выходами переключателей Т33, Т43 последнего уровня входной части матрицы, входящих в группу с номером q1=2. Промежуточными переключателями, через которые проходят соединения, являются переключатели V31, V41. Каждый из переключателей уровня G2 соединен с переключателями уровня F3, входящими в группу q1=1 или q1=2 или q1=3 или q1=4. Переключатели уровня G2 не могут быть соединены с переключателями уровня F3, входящими в группы с разными номерами q1. Переключатель V13 своими входами может быть соединен с переключателями Т53, Т63, Т73, Т83, входящими в группу с номером q2=2. Каждый из переключателей уровня G3 может быть соединен с переключателями уровня F3, входящими в группу с номерами q2=2 или q2=1. Переключатели уровня G3 не могут быть соединены с переключателями уровня F3, входящими в группы с разными номерами q2. Таким образом, соединения переключателей выходной части матрицы удовлетворяют приведенным выше условиям.Figure 3 shows an embodiment of the output part of the cross-cluster switching matrix that satisfies the above conditions for the case n = 16, u = 1. The output of the cross-cluster switching matrix has three levels G 1 , G 2 , G 3 . The switches V 11 , V 21 are connected by their inputs to the outputs of the switches T 13 , T 23 of the last level of the input part of the cross-cluster switching matrix included in the group number q 1 = 1, the switches V 31 , V 41 are connected by their inputs to the outputs of the switches T 33 , T 43 of the last level of the input part of the matrix included in the group with the number q 1 = 2, etc. The switches V 12 , V 82 are connected by their inputs to the outputs of the switches T 33 , T 43 of the last level of the input part of the matrix included in the group with the number q 1 = 2. The intermediate switches through which the connections pass are switches V 31 , V 41 . Each of the level switches G 2 is connected to the level switches F 3 included in the group q 1 = 1 or q 1 = 2 or q 1 = 3 or q 1 = 4. Level switches G 2 cannot be connected with level switches F 3 included in groups with different numbers q 1 . The switch V 13 with its inputs can be connected to the switches T 53 , T 63 , T 73 , T 83 , included in the group number q 2 = 2. Each of the level switches G 3 can be connected to the level switches F 3 included in the group with numbers q 2 = 2 or q 2 = 1. G 3 level switches cannot be connected to F 3 level switches included in groups with different numbers q 2 . Thus, the connections of the switches of the output part of the matrix satisfy the above conditions.

Устройство работает следующим образом.The device operates as follows.

На входы данных матрицы подаются входные сигналы. На первые 2u входов поступают сигналы первого кластера, на следующие 2u входов поступают сигналы второго кластера и т.д. На входы С подаются управляющие коды. Через время задержки преобразования τ·(u+log2n-1), где τ - задержка на одном переключателе на выходах кросс-кластерной коммутационной матрицы, появляется кросс-кластерная перестановка входных сигналов. Первые 2u выходов матрицы представляют собой первый кластер, следующие 2u выходов матрицы представляют собой второй кластер и т.д. Каждый из сигналов входного кластера может попасть в любой выходной кластер. Если u=0 матрица осуществляет одновременное неблокирующее соединение каждого входа с одним из выбранных выходов, а каждый выход оказывается соединен с одним из входов. Число возможных различных перестановок входных сигналов в этом случае составляет n!.Input signals are supplied to the matrix data inputs. The first 2 u inputs receive signals from the first cluster, the next 2 u inputs receive signals from the second cluster, etc. The control codes are applied to inputs C. After the conversion delay time τ · (u + log 2 n-1), where τ is the delay on one switch at the outputs of the cross-cluster switching matrix, a cross-cluster permutation of the input signals appears. The first 2 u matrix outputs represent the first cluster, the next 2 u matrix outputs represent the second cluster, etc. Each of the input cluster signals can fall into any output cluster. If u = 0, the matrix performs a simultaneous non-blocking connection of each input to one of the selected outputs, and each output is connected to one of the inputs. The number of possible different permutations of the input signals in this case is n !.

Таким образом, кросс-кластерная перестановка входных данных осуществляется параллельно за один такт внешнего генератора тактовых импульсов. Время задержки преобразования τ·(2·log2n-u-1), где τ - задержка на одном переключателе.Thus, cross-cluster permutation of input data is carried out in parallel for one clock cycle of an external clock generator. The conversion delay time is τ · (2 · log 2 nu-1), where τ is the delay on one switch.

Число переключателей матрицы составляет n·(log2(n)-u/2-1)+1 и растет практически линейно с ростом n, что делает технически возможным кросс-кластерную перестановку при больших значениях n. Число различных кросс-кластерных перестановок, осуществляемых данным устройством,

Figure 00000021
.The number of matrix switches is n · (log 2 (n) -u / 2-1) +1 and grows almost linearly with n, which makes it technically possible to cross-cluster permutation for large values of n. The number of different cross-cluster permutations performed by this device,
Figure 00000021
.

Если входы и выходы кросс-кластерной коммутационной матрицы, а также входы и выходы всех переключателей поменять местами, матрица будет выполнять обратное кросс-кластерное преобразование.If the inputs and outputs of the cross-cluster switching matrix, as well as the inputs and outputs of all the switches are interchanged, the matrix will perform the inverse cross-cluster transformation.

Предложенная матрица позволяет параллельно осуществлять кросс-кластерную перестановку входных сигналов. Число уровней преобразования на u меньше, чем у существующих решений этой задачи. Соответственно на un/2 меньше количество переключателей и длина управляющего кода. Время задержки на преобразования также на u·τ меньше. Кроме этого в предложенной коммутационной матрице соединения между уровнями заданы не жестко, что дает возможность их изменения, например, для оптимизации топологии матрицы.The proposed matrix allows parallel cross-cluster permutation of the input signals. The number of conversion levels by u is less than that of existing solutions to this problem. Accordingly, the number of switches and the length of the control code are less by un / 2. The conversion delay time is also u · τ less. In addition, in the proposed switching matrix, the connections between the levels are not rigidly defined, which makes it possible to change them, for example, to optimize the matrix topology.

Claims (8)

1. Кросс-кластерная коммутационная матрица, предназначенная для одновременного соединения каждого из входов любого входного кластера с одним выходом любого выходного кластера, имеющая n=2k входов данных, разделенных по порядку номеров на 2u кластеров, где u<k неотрицательное целое число, n=2k выходов данных, разделенных по порядку номеров на 2u кластеров, входы управляющих кодов, при этом матрица состоит из входной и выходной частей, которые состоят из переключателей, при этом переключатели входной части являются управляемыми и неуправляемыми, а переключатели выходной части являются управляемыми, неуправляемые переключатели имеют два входа, два выхода, а управляемые имеют дополнительно вход управляющего кода, переключатели расположены по уровням - столбцам и линиям - строкам, причем входы управляющих кодов кросс-кластерной коммутационной матрицы образованы входами кодов управляемых переключателей, входы данных матрицы образованы входами переключателей первого уровня входной части матрицы, выходы данных матрицы образованы выходами переключателей последнего уровня выходной части матрицы, выходы переключателей предыдущего уровня соединены со входами переключателей следующего уровня, под соединением понимается условие, при котором, если подать сигнал на вход, соединенный с выходом, или выход, соединенный с входом, на выходе, через некоторую временную задержку, обусловленную временем распространения сигнала, появится входной сигнал, и, наоборот, если подать сигнал на выход, на входе, через некоторую временную задержку, обусловленную временем распространения сигнала, появится выходной сигнал.1. A cross-cluster switching matrix designed for simultaneous connection of each of the inputs of any input cluster with one output of any output cluster, having n = 2k data inputs divided in order of numbers into 2 u clusters, where u <k is a non-negative integer, n = 2k data outputs, divided in order of numbers into 2 u clusters, inputs of control codes, while the matrix consists of input and output parts, which consist of switches, while the switches of the input part are controlled and uncontrolled and the switches of the output part are controllable, uncontrolled switches have two inputs, two outputs, and the controllable ones have an additional control code input, the switches are arranged in levels - columns and lines - rows, and the inputs of the control codes of the cross-cluster switching matrix are formed by the inputs of the codes of controlled switches , the data inputs of the matrix are formed by the inputs of the switches of the first level of the input part of the matrix, the outputs of the data of the matrix are formed by the outputs of the switches of the last level part of the matrix, the outputs of the switches of the previous level are connected to the inputs of the switches of the next level, by the connection is understood the condition under which, if a signal is applied to an input connected to an output, or an output connected to an input, to an output, after some time delay caused by time signal propagation, an input signal will appear, and, conversely, if you apply a signal to the output, at the input, after some time delay due to the propagation time of the signal, the output signal will appear. 2. Матрица по п.1, характеризующаяся тем, что на вход управляющего кода каждого управляемого переключателя подается сигнал логического нуля или единицы, причем каждый переключатель в зависимости от уровня управляющего сигнала выполнен с возможностью соединения либо первого входа с первым выходом, а второго входа со вторым выходом, либо первого входа со вторым выходом, а второго входа с первым выходом, неуправляемые переключатели имеют фиксированные соединения первого входа с первым выходом, а второго входа со вторым выходом, или первого входа со вторым выходом, а второго входа с первым выходом.2. The matrix according to claim 1, characterized in that a logic zero or one signal is supplied to the input of the control code of each controlled switch, each switch depending on the level of the control signal being configured to connect either the first input to the first output and the second input to the second output, or the first input with the second output, and the second input with the first output, uncontrolled switches have fixed connections of the first input with the first output, and the second input with the second output, or the first move with the second exit, and the second entrance with the first exit. 3. Матрица по п.1, характеризующаяся тем, что переключатели, составляющие входную часть, расположены в следующем порядке: по n/2-линиям - строкам и k-1 уровням - столбцам.3. The matrix according to claim 1, characterized in that the switches making up the input part are arranged in the following order: along n / 2-lines — rows and k-1 levels — columns. 4. Матрица по п.1, характеризующаяся тем, что переключатели, составляющие выходную часть матрицы, расположены в следующем порядке: по n/2-линиям и k-u уровням, причем выходы первого кластера матрицы образованы одним выходом первых 2u переключателей, выходы второго кластера матрицы образованы вторым выходом первых 2u переключателей, выходы третьего кластера матрицы образованы одним выходом следующих 2u переключателей, выходы четвертого кластера матрицы образованы вторым выходом следующих 2u переключателей и т.д.4. The matrix according to claim 1, characterized in that the switches constituting the output part of the matrix are arranged in the following order: along n / 2 lines and ku levels, the outputs of the first cluster of the matrix being formed by one output of the first 2 u switches, the outputs of the second cluster matrices are formed by the second output of the first 2u switches, the outputs of the third matrix cluster are formed by one output of the next 2u switches, the outputs of the fourth matrix cluster are formed by the second output of the next 2u switches, etc. 5. Матрица по п.3 или 4, характеризующаяся тем, что один выход каждого переключателя, стоящего на линии i и уровне m входной или выходной части матрицы, соединен с одним входом переключателя, стоящего на следующем уровне m+1 и на линии h, причем
Figure 00000001
, а второй выход каждого переключателя, стоящего на линии i и уровне m входной или выходной части матрицы, соединен с одним входом переключателя, стоящего на следующем уровне m+1 и на линии р, причем
Figure 00000002
, при этом каждый вход каждого переключателя уровня m+1 соединен с одним выходом переключателя предыдущего уровня m, где int - функция выделения целой части, (j+2k-m-1)mod n - операция вычисления остатка от частного
Figure 00000003
.
5. The matrix according to claim 3 or 4, characterized in that one output of each switch standing on line i and level m of the input or output part of the matrix is connected to one input of the switch standing on the next level m + 1 and on line h, moreover
Figure 00000001
and the second output of each switch standing on line i and the level m of the input or output part of the matrix is connected to one input of the switch standing on the next level m + 1 and on line p, and
Figure 00000002
, wherein each input of each level switch m + 1 is connected to one output of the switch of the previous level m, where int is the function of extracting the integer part, (j + 2 km-1 ) mod n is the operation of calculating the remainder of the quotient
Figure 00000003
.
6. Матрица по п.3, характеризующаяся тем, что переключатели любого уровня входной части матрицы разбиты на 2m-1 групп по 2k-m+1 переключателей, номер группы dm определяется выражением
Figure 00000022
, где i - номер линии, m - номер уровня переключателя, входящего в группу с номером dm, при этом один из переключателей уровня m, входящих в группу с одинаковым номером dm входной части матрицы является неуправляемым.
6. The matrix according to claim 3, characterized in that the switches of any level of the input part of the matrix are divided into 2 m-1 groups of 2 k-m + 1 switches, the group number d m is determined by the expression
Figure 00000022
, where i is the line number, m is the level number of the switch included in the group with the number d m , while one of the level m switches included in the group with the same number d m of the input part of the matrix is uncontrollable.
7. Матрица по п.3, характеризующаяся тем, что переключатели последнего уровня входной части матрицы, образующие выходы входной части матрицы, разделены на 2r-1 групп по 2k-r-l переключателей, причем номер группы qr, в которую входит переключатель расположенный на линии номером i определяется выражением
Figure 00000005
, где r=(
Figure 00000006
).
7. The matrix according to claim 3, characterized in that the switches of the last level of the input part of the matrix, forming the outputs of the input part of the matrix, are divided into 2 r-1 groups of 2 krl switches, and the group number q r , which includes the switch located on the line number i is determined by the expression
Figure 00000005
where r = (
Figure 00000006
)
8. Матрица по п.4, характеризующаяся тем, что каждый переключатель первого уровня выходной части матрицы соединен своими входами с выходами переключателей последнего уровня входной части матрицы, входящих в группу с одинаковым номером q1, переключатель любого уровня m, начиная со второго, выходной части матрицы соединен своими входами с выходами переключателей последнего уровня входной части матрицы, входящих только в группу с одинаковым номером qm-1 при любых комбинациях управляющих кодов в промежуточных переключателях выходной части матрицы, через которые проходит соединение. 8. The matrix according to claim 4, characterized in that each switch of the first level of the output part of the matrix is connected by its inputs to the outputs of the switches of the last level of the input part of the matrix included in the group with the same number q 1 , a switch of any level m, starting from the second, output parts of the matrix is connected by its inputs to the outputs of the switches of the last level of the input part of the matrix, which are included only in the group with the same number q m-1 for any combinations of control codes in the intermediate switches of the output part of the matrix trice through which the connection passes.
RU2009133507/08A 2009-09-07 2009-09-07 Cross-cluster switch matrix RU2417402C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2009133507/08A RU2417402C1 (en) 2009-09-07 2009-09-07 Cross-cluster switch matrix

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2009133507/08A RU2417402C1 (en) 2009-09-07 2009-09-07 Cross-cluster switch matrix

Publications (1)

Publication Number Publication Date
RU2417402C1 true RU2417402C1 (en) 2011-04-27

Family

ID=44731653

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2009133507/08A RU2417402C1 (en) 2009-09-07 2009-09-07 Cross-cluster switch matrix

Country Status (1)

Country Link
RU (1) RU2417402C1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2487393C1 (en) * 2011-12-22 2013-07-10 Открытое акционерное общество "Информационные спутниковые системы" имени академика М.Ф. Решетнева" Device for inputting command matrix signals

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2487393C1 (en) * 2011-12-22 2013-07-10 Открытое акционерное общество "Информационные спутниковые системы" имени академика М.Ф. Решетнева" Device for inputting command matrix signals

Similar Documents

Publication Publication Date Title
KR102583044B1 (en) Method for testing chip, electronic device, storage medium, program and chip thereof
US10979366B1 (en) Optimization of multi-stage hierarchical networks for practical routing applications
US9602432B2 (en) Switch and select topology for photonic switch fabrics and a method and system for forming same
CN101617306B (en) Device for Fast fourier transform operation
CN103299576A (en) Bit generation device and bit generation method
CN113064852A (en) Reconfigurable processor and configuration method
CN105262462B (en) A kind of digital delay implementation method and circuit for integrated circuit
CN104536917B (en) Multifunctional storage-based dynamic configuration circuit applied to FPAA
US9992053B1 (en) Multi-channel, multi-lane encryption circuitry and methods
RU2417402C1 (en) Cross-cluster switch matrix
JP2022510442A (en) Sorting methods, appliances, electronic devices and computer programs
RU2419174C1 (en) Device of controlled cyclic shift
RU2001116129A (en) PROCESSING DIAGRAM AND SEARCH PROCESSOR DIAGRAM
RU2448358C1 (en) Involutive permutation generator matrix
JP4904497B2 (en) Multistage switch control circuit
Wu et al. A 2 Gb/s 256* 256 CMOS crossbar switch fabric core design using pipelined MUX
Dimitrakopoulos et al. Dynamic-priority arbiter and multiplexer soft macros for on-chip networks switches
US7562320B2 (en) Asic based conveyor belt style programmable cross-point switch hardware accelerated simulation engine
Koloko et al. Design and implementation of fast and hardware‐efficient parallel processing elements to set full and partial permutations in Beneš networks
RU2736704C1 (en) Group structure counter with preservation of number of units in groups
RU2409842C1 (en) Apparatus for cross-cluster controlled rearrangement of information stored on personal computer
EP3334106B1 (en) A recursive concentrator circuit and its application as building block of an interconnection network
RU2405187C1 (en) Device for controlled rearrangement of information stored on personal computer
CN217213701U (en) Circuit for multi-clock switching, FPGA and electronic equipment
Kai et al. Design of partially-asynchronous parallel processing elements for setting up Benes networks in O (log 2 N) time

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20160908