RU2448358C1 - Involutive permutation generator matrix - Google Patents

Involutive permutation generator matrix Download PDF

Info

Publication number
RU2448358C1
RU2448358C1 RU2010148022/08A RU2010148022A RU2448358C1 RU 2448358 C1 RU2448358 C1 RU 2448358C1 RU 2010148022/08 A RU2010148022/08 A RU 2010148022/08A RU 2010148022 A RU2010148022 A RU 2010148022A RU 2448358 C1 RU2448358 C1 RU 2448358C1
Authority
RU
Russia
Prior art keywords
input
output
line
level
switch
Prior art date
Application number
RU2010148022/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 RU2010148022/08A priority Critical patent/RU2448358C1/en
Application granted granted Critical
Publication of RU2448358C1 publication Critical patent/RU2448358C1/en

Links

Images

Abstract

FIELD: information technology.
SUBSTANCE: device has n-2k data inputs, n data outputs, control code binary inputs, consisting of switches on n/2 lines - rows and k levels - columns and are controlled and uncontrolled, wherein one of the switches on each of the levels from 1 to k-1 can be uncontrolled; the uncontrolled switches have a first pair of data inputs X11, X21, a second pair of data inputs X12, X22, a first pair of data outputs Y11, Y21, a second pair of data outputs Y12, Y22, and controlled switches have an additional control code binary input and are configured to control connection of inputs with outputs.
EFFECT: high-speed involutive permutation of input data elements.
3 cl, 2 dwg

Description

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

Под инволютивными перестановками понимается преобразование перестановки элементов входных данных, при котором осуществляется транспозиция произвольных пар входных данных.By involutive permutations is meant a transformation of a permutation of input data elements, in which a transposition of arbitrary pairs of input data is carried out.

Известно устройство для осуществления перестановок с использованием команд, основанное на сети (коммутационной матрице) «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).

Используя данное устройство, можно осуществлять инволютивные перестановки входных данных, однако число используемых в данной сети переключателей составляет n/2(log2(n)-1) и для выполнения только инволютивных перестановок может быть сокращено.Using this device, it is possible to carry out involutive permutations of the input data, however, the number of switches used in this network is n / 2 (log 2 (n) -1) and can be reduced to perform only involutive permutations.

Известно устройство для осуществления перестановок с использованием команд, основанных на базе сетей омега (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 perform the function of either an omega-flip network or a flip. 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 levels involved in one instruction. Swap 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 involutive permutations of the input data, however, this device is controlled by software, which significantly increases the processing time with a clean change in the control codes. In addition, to perform only involutive permutations, the number of switches can be reduced.

Известна коммутационная сеть (матрица) (см. патент US №5175539, МПК H04J 3/00). Коммутационная сеть предназначена для избирательного одновременного соединения каждого из n входов с одним из n выходов. Она имеет входную часть, содержащую входы и имеющую, по крайней мере, k-1 (k=log2n) последовательно соединенных уровней k-уровневой сети baseline, n выходов и выходную часть, в которой n входов соединены с n выходами входной части, включающую k-уровневую сеть baseline и n выходов, которые образуют выходы коммутационной сети.Known switching network (matrix) (see US patent No. 5175539, IPC H04J 3/00). 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 involutive 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 objective of this solution is to ensure the simultaneous permutation of arbitrary pairs of input data elements using control codes while minimizing restrictions on possible connections between the levels of the switching matrix and reducing the number of its switching elements.

Техническим результатом является ускорение выполнения инволютивных перестановок за счет сокращения числа уровней преобразования.The technical result is to accelerate the execution of involutive permutations by reducing the number of transformation levels.

Поставленная задача достигается тем, что матрица формирователя инволютивных перестановок согласно решению имеет n=2k входов данных, n выходов данных, бинарные входы управляющих кодов, состоящая из переключателей, которые расположены по n/2-линиям - строкам и k уровням - столбцам и являются управляемыми и неуправляемыми, причем один из переключателей на каждом из уровней от 1 до k-1 может быть неуправляемым, неуправляемые переключатели имеют первую пару входов данных X11, Х21, вторую пару входов данных Х12, Х22, первую пару выходов данных Y11, Y21, вторую пару выходов данных Y12, Y22, а управляемые переключатели имеют дополнительно бинарный вход управляющего кода С и выполнены с возможностью соединения либо входа XII с выходом Y11, входа Х21 с выходом Y21, входа Х12 с выходом Y12, входа Х22 с выходом Y22, либо входа X11 с выходом Y21, входа Х21 с выходом Y11, входа Х12 с выходом Y22, входа Х22 с выходом Y12, неуправляемые переключатели имеют фиксированные соединения входа X11 с выходом Y11, входа Х21 с выходом Y21, входа Х12 с выходом Y12, входа Х22 с выходом Y22, причем входы управляющих кодов матрицы формирователя инволютивных перестановок образованы входами кодов управляемых переключателей, входы данных матрицы формирователя образованы входами X11, Х21 переключателей первого уровня, выходы данных формирователя образованы выходами Y12, Y22 переключателей первого уровня, выходы и входы переключателей, расположенных на соседних уровнях, соединены между собой, при этом вход переключателя может быть соединен только с одним выходом, а выход переключателя может быть соединен только с одним входом, под соединением понимается условие, при котором если подать сигнал на вход, соединенный с выходом, или выход, соединенный с входом, на выходе через некоторую временную задержку, обусловленную временем распространения сигнала, появится входной сигнал и, наоборот, если подать сигнал на выход, на входе, через некоторую временную задержку, обусловленную временем распространения сигнала, появится выходной сигнал. Выход Y11 каждого переключателя, расположенного на линии i и уровне m, где

Figure 00000001
, соединен либо с входом X11, либо с входом Х21 переключателя, расположенного на следующем уровне m+1 и на линии h, а вход Х12 каждого переключателя, расположенного на линии i и уровне m, где
Figure 00000002
, соединен либо с выходом Y12, либо с выходом Y22 переключателя, расположенного на следующем уровне m+1 и на линии h, выход Y21 каждого переключателя, расположенного на линии i и уровне m, где
Figure 00000003
, соединен либо с входом Х21, либо с входом X11 переключателя, расположенного на следующем уровне m+1 и на линии p, а вход Х22 каждого переключателя, расположенного на линии i и уровне m, где
Figure 00000004
, соединен либо с выходом Y22, либо с входом Y12 переключателя, расположенного на следующем уровне m+1 и на линии p, причем для значений p и h, определяющих соединения переключателя, расположенного на линии m с переключателем, расположенным на линии m+1, должно выполняться условие: либо
Figure 00000005
, a
Figure 00000006
, либо
Figure 00000007
, а
Figure 00000008
, где int - функция выделения целой части,
Figure 00000009
- операция вычисления остатка от частного
Figure 00000010
. Выход Y11 каждого переключателя, расположенного на последнем уровне и линии с номером больше n/4, соединен либо с входом Х22, либо с входом Х12 одного переключателя, расположенного на последнем уровне и линии с номером, меньшим или равным n/4, выход Y21 каждого переключателя, расположенного на последнем уровне и линии с номером больше n/4, соединен либо с входом Х12, либо с входом Х22 одного переключателя, расположенного на последнем уровне и линии с номером, меньшим или равным n/4, выход Y11 каждого переключателя, расположенного на последнем уровне и линии с номером, меньшим или равным n/4, соединен либо с входом Х22, либо с входом Х12 одного переключателя, расположенного на последнем уровне и линии с номером больше n/4, выход Y21 каждого переключателя, расположенного на последнем уровне и линии с номером, меньшим или равным n/4, соединен либо с входом Х12, либо с входом Х22 одного переключателя, расположенного на последнем уровне и линии с номером больше n/4.The problem is achieved in that the matrix of the generator of involutive permutations according to the solution has n = 2 k data inputs, n data outputs, binary inputs of control codes, consisting of switches that are located along n / 2-lines - rows and k levels - columns and are managed and unmanaged, moreover, one of the switches at each of the levels from 1 to k-1 can be unmanaged, unmanaged switches have a first pair of data inputs X11, X21, a second pair of data inputs X12, X22, a first pair of data outputs Y11, Y21, and a second a pair of data outputs Y12, Y22, and the controlled switches have an additional binary control code input C and are configured to connect either input XII with output Y11, input X21 with output Y21, input X12 with output Y12, input X22 with output Y22, or input X11 with output Y21, input X21 with output Y11, input X12 with output Y22, input X22 with output Y12, uncontrolled switches have fixed connections for input X11 with output Y11, input X21 with output Y21, input X12 with output Y12, input X22 with output Y22 , and the inputs of the control codes of the matrix of the shaper of involutive trans The settings are formed by the inputs of the codes of controlled switches, the data inputs of the driver matrix are formed by the inputs X11, X21 of the first level switches, the data outputs of the driver are formed by the outputs Y12, Y22 of the first level switches, the outputs and inputs of the switches located at adjacent levels are interconnected, while the switch input can be connected to only one output, and the switch output can be connected to only one input, by connection is understood the condition under which if a signal is input, connected to the output, or the output connected to the input, the output signal will appear after some time delay due to the propagation time of the signal, and, conversely, if the signal is output, the input, after some time delay due to the signal propagation time, will appear output signal. Output Y11 of each switch located on line i and level m, where
Figure 00000001
connected to either input X11 or input X21 of the switch located on the next level m + 1 and on line h, and input X12 of each switch located on line i and level m, where
Figure 00000002
connected to either the output Y12 or the output Y22 of the switch located on the next level m + 1 and on line h, the output Y21 of each switch located on line i and level m, where
Figure 00000003
connected to either input X21 or input X11 of the switch located on the next level m + 1 and on line p, and input X22 of each switch located on line i and level m, where
Figure 00000004
is connected either to the output Y22 or to the input Y12 of the switch located on the next level m + 1 and on line p, and for the values p and h that define the connections of the switch located on line m with the switch located on line m + 1, the condition must be met: either
Figure 00000005
, a
Figure 00000006
either
Figure 00000007
, but
Figure 00000008
, where int is the function of selecting the integer part,
Figure 00000009
- operation of calculating the remainder of the quotient
Figure 00000010
. The output Y11 of each switch located at the last level and a line with a number greater than n / 4 is connected either to the input X22 or to the input X12 of one switch located at the last level and a line with a number less than or equal to n / 4, the output Y21 of each a switch located at the last level and a line with a number greater than n / 4 is connected either to the input X12 or to the input X22 of one switch located at the last level and a line with a number less than or equal to n / 4, output Y11 of each switch located at the last level and line with a number less than or equal to n / 4 is connected either to the input X22 or to the input X12 of one switch located at the last level and a line with a number greater than n / 4, output Y21 of each switch located at the last level and a line with a number, less than or equal to n / 4, is connected either to the input X12 or to the input X22 of one switch located at the last level and a line with a number greater than n / 4.

Изобретение поясняется примерами возможных схем матриц формирователя инволютивных перестановок для случая n=8, изображенных на фиг.1, фиг.2, гдеThe invention is illustrated by examples of possible schemes of matrices of the shaper of involutive permutations for the case n = 8, shown in figure 1, figure 2, where

- F1, F2, F3 - уровни преобразования матрицы формирователя;- F 1 , F 2 , F 3 - conversion levels of the matrix of the shaper;

-

Figure 00000011
- переключатели матрицы формирователя;-
Figure 00000011
- shaper matrix switches;

- X1-X8 - входы матрицы формирователя;- X1-X8 - inputs of the shaper matrix;

- Y1-Y8-выходы матрицы формирователя;- Y1-Y8-outputs of the matrix shaper;

- С1-С10 - бинарные входы управляющих кодов матрицы формирователя;- C1-C10 - binary inputs of the control codes of the shaper matrix;

- X11, Х21 - первая пара входов переключателя матрицы формирователя;- X11, X21 - the first pair of inputs of the switch matrix of the shaper;

- Y11, Y21 - первая пара выходов переключателя матрицы формирователя;- Y11, Y21 - the first pair of outputs of the switcher matrix switch;

- Х12, Х22 - вторая пара входов переключателя матрицы формирователя;- X12, X22 - the second pair of inputs of the switch matrix of the shaper;

- Y12, Y22 - вторая пара выходов переключателя матрицы формирователя;- Y12, Y22 - the second pair of outputs of the switcher matrix switch;

- С - бинарный вход управляющего кода переключателя матрицы формирователя.- C is the binary input of the control code of the switch matrix of the shaper.

Матрица формирователя инволютивных перестановок имеет n=2k входов данных, n выходов данных, входы управляющих кодов и состоит из управляемых и неуправляемых переключателей Тij, где

Figure 00000012
,
Figure 00000013
, k=log2n - целое положительное число. Каждый переключатель имеет первую пару входов X11, Х21, вторую пару входов Х12, Х22, первую пару выходов Y11, Y21, вторую пару выходов Y12, Y22, причем управляемые переключатели имеют также вход управляющего кода С, который принимает значения логического нуля или единицы. Каждый переключатель выполнен с возможностью соединения входа X11 с выходом Y11, входа Х21 с выходом Y21, а входа Х12 с выходом Y12, входа Х22 с выходом Y22; либо входа XII с выходом Y21, входа Х21 с выходом Y11, а входа Х12 с выходом Y22, входа Х22 с выходом Y12. Например, если сигнал на входе С управляемого переключателя имеет высокий логический уровень, то сигнал на выходе Y21 равен сигналу на X11, сигнал на выходе Y11 равен сигналу на входе Х21, сигнал на выходе Y22 равен сигналу на входе Х12, сигнал на выходе Y12 равен сигналу на входе Х22, таким образом переключатель осуществляет транспозицию сигналов, подаваемых на каждую из пар входов. Если сигнал на входе С имеет низкий логический уровень, то сигнал на выходе Y11 равен сигналу на входе X11, сигнал на выходе Y21 равен сигналу на входе Х21, сигнал на выходе Y12 равен сигналу на входе Х12, сигнал на выходе Y22 равен сигналу на входе Х22.The matrix of the shaper of involutive permutations has n = 2 k data inputs, n data outputs, control code inputs and consists of controlled and uncontrolled switches T ij , where
Figure 00000012
,
Figure 00000013
, k = log 2 n is a positive integer. Each switch has a first pair of inputs X11, X21, a second pair of inputs X12, X22, a first pair of outputs Y11, Y21, a second pair of outputs Y12, Y22, and the controlled switches also have a control code input C, which takes a value of logical zero or one. Each switch is configured to connect input X11 with output Y11, input X21 with output Y21, and input X12 with output Y12, input X22 with output Y22; either input XII with output Y21, input X21 with output Y11, and input X12 with output Y22, input X22 with output Y12. For example, if the signal at the input C of the controlled switch has a high logic level, then the signal at output Y21 is equal to the signal at X11, the signal at output Y11 is equal to the signal at input X21, the signal at output Y22 is equal to the signal at input X12, the signal at output Y12 is equal to the signal at the input X22, thus the switch transposes the signals supplied to each of the pairs of inputs. If the signal at input C has a low logic level, then the signal at output Y11 is equal to the signal at input X11, the signal at output Y21 is equal to the signal at input X21, the signal at output Y12 is equal to the signal at input X12, the signal at output Y22 is equal to the signal at input X22 .

Неуправляемые переключатели не имеют входа управляющего кода и осуществляют фиксированное соединение входа X11 с выходом Y11, входа Х21 с выходом Y21, входа Х12 с выходом Y12, входа Х22 с выходом Y22.Unmanaged switches do not have a control code input and make a fixed connection to input X11 with output Y11, input X21 with output Y21, input X12 with output Y12, input X22 with output Y22.

Переключатели образуют матрицу формирователя с n/2-линиями и k уровнями F1, …, Fk. Входы управляющих кодов матрицы формирователя образованы входами кодов переключателей С. Входы данных матрицы формирователя образованы входами X11, Х21 переключателей Тi1 первого уровня матрицы. Выходы данных матрицы формирователя образованы выходами Y12, Y22 Тi1 первого уровня F1 матрицы.The switches form a shaper matrix with n / 2 lines and k levels F 1 , ..., F k . The inputs of the control codes of the shaper matrix are formed by the inputs of the switch codes C. The data inputs of the shaper matrix are formed by the inputs X11, X21 of the switches T i1 of the first matrix level. The outputs of the matrix data of the shaper are formed by the outputs Y12, Y22 T i1 of the first level F 1 of the matrix.

Переключатели каждого уровня можно разбить на группы. Переключатели первого уровня образуют одну группу первого уровня. Переключатели второго уровня образуют две группы второго уровня. Переключатели третьего уровня образуют четыре группы третьего уровня и т.д. Пары входов и выходов Х12, Y11 и Х22, Y21 каждого переключателя, расположенного на уровне m, где

Figure 00000014
, и входящего в одну группу, соединены с парами входов и выходов X11, Y12 и Х21, Y22, расположенных на уровне m+1 и входящих в две различные группы. Причем каждый вход переключателя соединяется только с одним выходом переключателя соседнего уровня и каждый выход переключателя соединяется только с одним входом переключателя соседнего уровня.The switches of each level can be divided into groups. The first level switches form one group of the first level. The switches of the second level form two groups of the second level. The switches of the third level form four groups of the third level, etc. Pairs of inputs and outputs X12, Y11 and X22, Y21 of each switch located at level m, where
Figure 00000014
, and included in one group, connected to pairs of inputs and outputs X11, Y12 and X21, Y22, located at the level m + 1 and included in two different groups. Moreover, each switch input is connected to only one output of a neighboring level switch and each switch output is connected to only one input of a neighboring level switch.

Таким образом, выход Y11 каждого переключателя, расположенного на линии i и уровне m, где

Figure 00000015
, соединен либо с входом X11, либо с входом Х21 переключателя, расположенного на следующем уровне m+1 и на линии h, a вход X12 каждого переключателя, расположенного на линии i и уровне m, гдеThus, the output Y11 of each switch located on line i and level m, where
Figure 00000015
is connected either with input X11 or with input X21 of the switch located on the next level m + 1 and on line h, and input X12 of each switch located on line i and level m, where

Figure 00000015
, соединен либо с выходом Y12, либо с входом Y22 переключателя, расположенного на следующем уровне m+1 и на линии h, выход Y21 каждого переключателя, расположенного на линии i и уровне m, где
Figure 00000015
, соединен либо с входом Х21, либо с входом X11 переключателя, расположенного на следующем уровне m+1 и на линии p, а вход Х22 каждого переключателя, расположенного на линии i и уровне m, где
Figure 00000015
, соединен либо с выходом Y22, либо с входом Y12 переключателя, расположенного на следующем уровне m+1 и на линии p, причем для значений p и h, определяющих соединения переключателя, расположенного на линии m с переключателем, расположенным на линии m+1, должно выполняться условие: либо
Figure 00000016
, a
Figure 00000017
, либо
Figure 00000018
, а
Figure 00000019
, где int - функция выделения целой части,
Figure 00000020
- операция вычисления остатка от частного
Figure 00000021
.
Figure 00000015
is connected either to the output Y12 or to the input Y22 of the switch located on the next level m + 1 and on line h, the output Y21 of each switch located on line i and level m, where
Figure 00000015
connected to either input X21 or input X11 of the switch located on the next level m + 1 and on line p, and input X22 of each switch located on line i and level m, where
Figure 00000015
is connected either to the output Y22 or to the input Y12 of the switch located on the next level m + 1 and on line p, and for the values p and h that define the connections of the switch located on line m with the switch located on line m + 1, the condition must be met: either
Figure 00000016
, a
Figure 00000017
either
Figure 00000018
, but
Figure 00000019
, where int is the function of selecting the integer part,
Figure 00000020
- operation of calculating the remainder of the quotient
Figure 00000021
.

Пары входов X12, Х22 и выходов Y11,Y21 каждого переключателя последнего уровня Fk соединены между собой. Причем выход Y11 каждого переключателя, расположенного в нижней половине последнего уровня, соединен либо с входом Х22, либо с входом X12 одного переключателя, расположенного в верхней половине последнего уровня, выход Y21 каждого переключателя, расположенного в нижней половине последнего уровня, соединен либо с входом X12, либо с входом Х22 одного переключателя, расположенного в верхней половине последнего уровня. Вход X12 каждого переключателя, расположенного в нижней половине последнего уровня, соединен либо с выходом Y21, либо с выходом Y11 одного переключателя, расположенного в верхней половине последнего уровня, а вход Х22 каждого переключателя, расположенного в нижней половине последнего уровня, соединен либо с выходом Y11, либо с выходом Y21 одного переключателя, расположенного в верхней половине последнего уровня.The pairs of inputs X12, X22 and outputs Y11, Y21 of each switch of the last level F k are interconnected. Moreover, the output Y11 of each switch located in the lower half of the last level is connected either to the input X22 or to the input X12 of one switch located in the upper half of the last level, the output Y21 of each switch located in the lower half of the last level is connected either to the input X12 , or with the input X22 of one switch located in the upper half of the last level. Input X12 of each switch located in the lower half of the last level is connected either to output Y21 or to output Y11 of one switch located in the upper half of the last level, and input X22 of each switch located in the lower half of the last level is connected either to output Y11 , or with the output Y21 of one switch located in the upper half of the last level.

В матрице формирователя инволютивных перестановок вход одного переключателя может быть соединен только с одним выходом другого переключателя, а выход одного переключателя может быть соединен только с одним входом другого переключателя.In the matrix of the shaper of involutive permutations, the input of one switch can be connected to only one output of another switch, and the output of one switch can be connected to only one input of another switch.

Один из переключателей на каждом из уровней F1, …, Fk-1 может быть неуправляемым. На фиг.1, 2 неуправляемыми являются переключатели T41, T12.One of the switches at each of the levels F 1 , ..., F k-1 may be uncontrollable. In figure 1, 2 uncontrolled are the switches T 41 , T 12 .

Устройство работает следующим образом. На входы матрицы формирователя подаются входные данные или сигналы. На бинарные входы управляющих кодов матрицы формирователя подаются управляющие коды. Через время задержки преобразования 2τ·log2n, где τ - задержка на одном переключателе, на выходах матрицы формирователя появляется инволютивная перестановка входных данных или сигналов.The device operates as follows. The inputs of the shaper matrix are fed with input data or signals. The binary inputs of the control codes of the shaper matrix are fed control codes. After the conversion delay time 2τ · log 2 n, where τ is the delay on one switch, an involutive permutation of the input data or signals appears at the outputs of the shaper matrix.

Таким образом, формирование произвольных управляемых инволютивных перестановок входных данных осуществляется параллельно за один такт внешнего генератора тактовых импульсов. Устройство может формировать только инволютивные перестановки входных данных.Thus, the formation of arbitrary controlled involutive permutations of the input data is carried out in parallel for one clock cycle of an external clock generator. A device can only form involutive permutations of input data.

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

Figure 00000022
переключателей больше. Соответственно, для управления матрицей потребуется код на
Figure 00000023
бит длиннее. Число различных инволютивных перестановок, осуществляемых данным устройством, составляет
Figure 00000024
.The number of matrix switches is (n / 2-1) · log 2 (n) +1 and grows almost linearly with increasing n, which makes it technically possible to implement involutive permutations for large values of n. If you use a switching matrix with the butterfly or omega-flip topology to build this transformation, you need to
Figure 00000022
more switches. Accordingly, to control the matrix, a code on
Figure 00000023
bit longer. The number of various involutive permutations carried out by this device is
Figure 00000024
.

Claims (3)

1. Матрица формирователя инволютивных перестановок, характеризующаяся тем, что имеет n=2k входов данных, n выходов данных, бинарные входы управляющих кодов, состоящая из переключателей, которые расположены по n/2-линиям - строкам и k уровням - столбцам и являются управляемыми и неуправляемыми, причем один EG переключателей на каждом из уровней от 1 до k-1 может быть неуправляемым, неуправляемые переключатели имеют первую пару входов данных X11, Х21, вторую пару входов данных X12, Х22, первую пару выходов данных Y11, Y21, вторую пару выходов данных Y12, Y22, а управляемые переключатели имеют дополнительно бинарный вход управляющего кода С и выполнены с возможностью соединения либо входа X11 с выходом Y11, входа Х21 с выходом Y21, входа X12 с выходом Y12, входа Х22 с выходом Y22, либо входа X11 с выходом Y21, входа Х21 с выходом Y11, входа X12 с выходом Y22, входа Х22 с выходом Y12, неуправляемые переключатели имеют фиксированные соединения входа X11 с выходом Y11, входа Х21 с выходом Y21, входа Х12 с выходом Y12, входа Х22 с выходом Y22, причем входы управляющих кодов матрицы формирователя инволютивных перестановок образованы входами кодов управляемых переключателей, входы данных матрицы формирователя образованы входами X11, Х21 переключателей первого уровня, выходы данных формирователя образованы выходами Y12, Y22 переключателей первого уровня, выходы и входы переключателей, расположенных на соседних уровнях, соединены между собой, при этом вход переключателя может быть соединен только с одним выходом, а выход переключателя может быть соединен только с одним входом, под соединением понимается условие, при котором если подать сигнал на вход, соединенный с выходом, или выход, соединенный с входом, на выходе через некоторую временную задержку, обусловленную временем распространения сигнала, появится входной сигнал и, наоборот, если подать сигнал на выход, на входе, через некоторую временную задержку, обусловленную временем распространения сигнала, появится выходной сигнал.1. The matrix of the shaper of involutive permutations, characterized in that it has n = 2 k data inputs, n data outputs, binary inputs of control codes, consisting of switches that are located along n / 2-lines - rows and k levels - columns and are controlled and uncontrollable, with one EG switch at each level from 1 to k-1 can be uncontrolled, uncontrolled switches have a first pair of data inputs X11, X21, a second pair of data inputs X12, X22, a first pair of data outputs Y11, Y21, a second pair data outputs Y12, Y22, and control These switches have an additional binary control code input C and are configured to connect either input X11 with output Y11, input X21 with output Y21, input X12 with output Y12, input X22 with output Y22, or input X11 with output Y21, input X21 with output Y11, input X12 with output Y22, input X22 with output Y12, uncontrolled switches have fixed connections for input X11 with output Y11, input X21 with output Y21, input X12 with output Y12, input X22 with output Y22, and the inputs of the control codes of the matrix are involutive permutations are formed by inputs to of controlled switches, the shaper matrix data inputs are formed by the first level switch inputs X11, X21, the shaper data outputs are formed by the first level switch outputs Y12, Y22, the outputs and inputs of the switches located at adjacent levels are interconnected, while the switch input can be connected with only one output, and the switch output can be connected with only one input, 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, at the input, through a certain time delay due to signal propagation time, the output signal appears. 2. Матрица по п.1, характеризующаяся тем, что выход Y11 каждого переключателя, расположенного на линии i и уровне m, где
Figure 00000025
, соединен либо с входом X11, либо с входом Х21 переключателя, расположенного на следующем уровне m+1 и на линии h, а вход X12 каждого переключателя, расположенного на линии i и уровне m, где
Figure 00000025
, соединен либо с выходом Y12, либо с выходом Y22 переключателя, расположенного на следующем уровне m+1 и на линии h, выход Y21 каждого переключателя, расположенного на линии i и уровне m, где
Figure 00000025
, соединен либо с входом Х21, либо с входом X11 переключателя, расположенного на следующем уровне m+1 и на линии p, а вход Х22 каждого переключателя, расположенного на линии i и уровне m, где
Figure 00000025
, соединен либо с выходом Y22, либо с входом Y12 переключателя, расположенного на следующем уровне m+1 и на линии p, причем для значений p и h, определяющих соединения переключателя, расположенного на линии m с переключателем, расположенным на линии m+1, должно выполняться условие: либо
Figure 00000026
, а
Figure 00000027
либо
Figure 00000028
, а
Figure 00000029
где int - функция выделения целой части,
Figure 00000030
- операция вычисления остатка от частного
Figure 00000010
.
2. The matrix according to claim 1, characterized in that the output Y11 of each switch located on line i and level m, where
Figure 00000025
is connected either with input X11 or with input X21 of the switch located on the next level m + 1 and on line h, and input X12 of each switch located on line i and level m, where
Figure 00000025
connected to either the output Y12 or the output Y22 of the switch located on the next level m + 1 and on line h, the output Y21 of each switch located on line i and level m, where
Figure 00000025
connected to either input X21 or input X11 of the switch located on the next level m + 1 and on line p, and input X22 of each switch located on line i and level m, where
Figure 00000025
is connected either to the output Y22 or to the input Y12 of the switch located on the next level m + 1 and on line p, and for the values p and h that define the connections of the switch located on line m with the switch located on line m + 1, the condition must be met: either
Figure 00000026
, but
Figure 00000027
or
Figure 00000028
, but
Figure 00000029
where int is the function of selecting the integer part,
Figure 00000030
- operation of calculating the remainder of the quotient
Figure 00000010
.
3. Матрица по п.1 или 2, характеризующаяся тем, что выход Y11 каждого переключателя, расположенного на последнем уровне и линии с номером больше n/4, соединен либо с входом Х22, либо с входом X12 одного переключателя, расположенного на последнем уровне и линии с номером меньшим или равным n/4, выход Y21 каждого переключателя, расположенного на последнем уровне и линии с номером больше n/4, соединен либо с входом X12, либо с входом Х22 одного переключателя, расположенного на последнем уровне и линии с номером, меньшим или равным n/4, выход Y11 каждого переключателя, расположенного на последнем уровне и линии с номером, меньшим или равным n/4, соединен либо с входом Х22, либо с входом X12 одного переключателя, расположенного на последнем уровне и линии с номером больше n/4, выход Y21 каждого переключателя, расположенного на последнем уровне и линии с номером, меньшим или равным n/4, соединен либо с входом X12, либо с входом Х22 одного переключателя, расположенного на последнем уровне и линии с номером больше n/4. 3. The matrix according to claim 1 or 2, characterized in that the output Y11 of each switch located at the last level and a line with a number greater than n / 4 is connected either to the input X22 or to the input X12 of one switch located at the last level and lines with a number less than or equal to n / 4, the output Y21 of each switch located at the last level and lines with a number greater than n / 4 are connected either to input X12 or to input X22 of one switch located at the last level and a line with number, less than or equal to n / 4, output Y11 of each switch For a line located at the last level and a line with a number less than or equal to n / 4, connected either to the input X22 or to the input X12 of one switch located at the last level and a line with a number greater than n / 4, output Y21 of each switch located at the last level, and a line with a number less than or equal to n / 4 is connected either to the input X12 or to the input X22 of one switch located at the last level and a line with a number greater than n / 4.
RU2010148022/08A 2010-11-26 2010-11-26 Involutive permutation generator matrix RU2448358C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2010148022/08A RU2448358C1 (en) 2010-11-26 2010-11-26 Involutive permutation generator matrix

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2010148022/08A RU2448358C1 (en) 2010-11-26 2010-11-26 Involutive permutation generator matrix

Publications (1)

Publication Number Publication Date
RU2448358C1 true RU2448358C1 (en) 2012-04-20

Family

ID=46032716

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2010148022/08A RU2448358C1 (en) 2010-11-26 2010-11-26 Involutive permutation generator matrix

Country Status (1)

Country Link
RU (1) RU2448358C1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5175539A (en) * 1989-01-24 1992-12-29 Max-Planck-Gesellschaft Zur Foerderung Der Wissenschaften E.V. Interconnecting network
WO2004030226A1 (en) * 2002-09-25 2004-04-08 Koninklijke Philips Electronics N.V. Method of calculating an intra-row permutation pattern for an interleaver
RU2390052C2 (en) * 2008-08-06 2010-05-20 Государственное образовательное учреждение высшего профессионального образования "Саратовский государственный университет им. Н.Г. Чернышевского" Decoder for controlled rearrangement of information stored on personal computer

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5175539A (en) * 1989-01-24 1992-12-29 Max-Planck-Gesellschaft Zur Foerderung Der Wissenschaften E.V. Interconnecting network
WO2004030226A1 (en) * 2002-09-25 2004-04-08 Koninklijke Philips Electronics N.V. Method of calculating an intra-row permutation pattern for an interleaver
RU2390052C2 (en) * 2008-08-06 2010-05-20 Государственное образовательное учреждение высшего профессионального образования "Саратовский государственный университет им. Н.Г. Чернышевского" Decoder for controlled rearrangement of information stored on personal computer

Similar Documents

Publication Publication Date Title
US9602431B2 (en) Switch and select topology for photonic switch fabrics and a method and system for forming same
JP2016514430A (en) Transcoding method for multi-wire signaling incorporating clock information into signal state transitions
US8271850B2 (en) Fast low-density parity-check code encoder
CN103299576A (en) Bit generation device and bit generation method
CN111224883B (en) Tile structure of high-order router and high-order router constructed by tile structure
US20170010867A1 (en) Montgomery modular multiplication device and embedded security chip with sam
RU2448358C1 (en) Involutive permutation generator matrix
JP2014232523A (en) Searching apparatus utilizing sub-word finite state machines
RU2419174C1 (en) Device of controlled cyclic shift
CN104050119B (en) For the decoding of the consideration crosstalk of data/address bus
RU2417402C1 (en) Cross-cluster switch matrix
CN108243113B (en) Random load balancing method and device
CN103810142B (en) Reconfigurable system and construction method thereof
JP2008160522A (en) Control circuit of multi-stage switch
US10366741B2 (en) Bit processing
EP3957023A1 (en) Low depth aes sbox architecture for area-constraint hardware
RU2405187C1 (en) Device for controlled rearrangement of information stored on personal computer
Almazyad Optical omega networks with centralized buffering and wavelength conversion
US3665409A (en) Signal translator
CN113626364A (en) High-speed serial interface and conversion circuit for same
CN109274460A (en) A kind of multi-bit parallel structure serially offsets interpretation method and device
US10848551B2 (en) Information processing apparatus, parallel computer system, and method for control
RU2409842C1 (en) Apparatus for cross-cluster controlled rearrangement of information stored on personal computer
CN110166057B (en) Polarization code generating method, electronic device and computer readable storage medium
EP3334106B1 (en) A recursive concentrator circuit and its application as building block of an interconnection network

Legal Events

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

Effective date: 20171127