RU2405187C1 - Device for controlled rearrangement of information stored on personal computer - Google Patents
Device for controlled rearrangement of information stored on personal computer Download PDFInfo
- Publication number
- RU2405187C1 RU2405187C1 RU2009111245/08A RU2009111245A RU2405187C1 RU 2405187 C1 RU2405187 C1 RU 2405187C1 RU 2009111245/08 A RU2009111245/08 A RU 2009111245/08A RU 2009111245 A RU2009111245 A RU 2009111245A RU 2405187 C1 RU2405187 C1 RU 2405187C1
- Authority
- RU
- Russia
- Prior art keywords
- inputs
- outputs
- input
- data
- cell
- Prior art date
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Logic Circuits (AREA)
Abstract
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.
Для задач, связанных с преобразованием форматов данных методом перестановок, необходимы высокоскоростные устройства, осуществляющие перестановку входных данных под управлением внешних кодов. Наибольший интерес представляют однотактные устройства, осуществляющие заданную перестановку за один такт внешнего генератора тактовых импульсов. В этом случае частое изменение управляющих кодов не должно приводить к замедлению работы устройства.For tasks associated with the conversion of data formats by the permutation method, high-speed devices that rearrange input data under the control of external codes are required. Of greatest interest are single-cycle devices that perform a given permutation in one clock cycle of an external clock. In this case, a frequent change of control codes should not slow down the operation of the device.
Известен дешифратор управляемой побитовой транспозиции информации, хранимой в персональной ЭВМ (см. патент РФ №2320000, МПК G06F 7/76). Дешифратор содержит К уровней узлов дешифрации, каждый уровень дешифрации содержит 2i элементов , регистр управляющих кодов, сдвиговый регистр данных, двойной буферный регистр накопления и хранения форматированных данных, блок управления, генератор тактовых импульсов. Вход выборки дешифратора соединен с первыми входами первого и второго элементов первого уровня. Элемент первого уровня реализует логическую функцию , остальные элементы реализуют логическую функцию . Вход Х элемента первого уровня соединен с выходом первого бита регистра управляющих кодов, входы X1 остальных элементов i-го уровня соединены с выходом i-ro бита регистра управляющих кодов, входы X2 остальных элементов i-ro уровня соединены с выходами элементов i-1 уровня, причем вход двойного буферного регистра накопления и хранения форматированных данных соединен с выходом сдвигового регистра данных, а входы разрешения записи этого регистра соединены с выходами последнего уровня дешифрации. Генератор тактовых импульсов соединен с блоком управления, который своими входами и выходами соединен с буферным регистром накопления и хранения форматированных данных, входным сдвиговым регистром данных, регистром управляющих кодов.Known decoder controlled bitwise transposition of information stored in a personal computer (see RF patent No. 232320000, IPC G06F 7/76). The decoder contains K levels of decryption nodes, each level of decryption contains 2 i elements , a register of control codes, a shift register of data, a double buffer register of accumulation and storage of formatted data, a control unit, a clock generator. The input of the decoder sample is connected to the first inputs of the first and second elements of the first level. The first level element implements a logical function , the remaining elements implement a logical function . The input X of the element of the first level is connected to the output of the first bit of the register of control codes, the inputs X 1 of the remaining elements of the i-th level are connected to the output of the i-ro bit of the register of control codes, the inputs X 2 of the remaining elements of the i-ro level are connected to the outputs of the elements i-1 level, and the input of the double buffer register of accumulation and storage of formatted data is connected to the output of the shift data register, and the recording permission inputs of this register are connected to the outputs of the last decryption level. The clock generator is connected to a control unit, which is connected with its inputs and outputs to a buffer register for storing and storing formatted data, an input shift data register, and a register of control codes.
Недостатком данного дешифратора является последовательное преобразование данных, которое происходит за N тактовых импульсов генератора, что при больших значениях N значительно снижает быстродействие.The disadvantage of this decoder is the sequential conversion of data that occurs over N clock pulses of the generator, which at large values of N significantly reduces performance.
Известны сортирующие сети Бетчера ("Sorting Networks and Their Applications", К.E.Batcher, Proceedings of 1968 Spring Joint Computer Conference, pp.307-314, 1968). Данные устройства осуществляют быструю сортировку 2p элементов данных за 1/2р(1+р) шагов, но не обеспечивают перестановку данных, управляемую внешним кодом.Betcher's sorting networks are known ("Sorting Networks and Their Applications", K. E. Batcher, Proceedings of 1968 Spring Joint Computer Conference, pp.307-314, 1968). These devices perform quick sorting of 2 p data elements in 1 / 2p (1 + p) steps, but do not provide data permutation controlled by external code.
Известна модифицированная сеть Бетчера для сортировки несортированных входных сигналов за log2N последовательных проходов. Сеть строится рекурсивно от размера 4 до произвольного размера. Модифицированная сеть Бетчера сортирует N элементов данных за log2N последовательных проходов через сеть, где N - число элементов данных для каждого прохода. Сеть имеет задержку на log2N компараторах (см. патент US №5319788, МПК G06F 7/36; G06F 7/22).Known modified Betcher network for sorting unsorted input signals for log 2 N consecutive passes. A network is built recursively from size 4 to an arbitrary size. The modified Betcher network sorts N data elements for log 2 N consecutive passes through the network, where N is the number of data elements for each pass. The network has a delay on log 2 N comparators (see US patent No. 5319788, IPC G06F 7/36; G06F 7/22).
Однако данная сеть не обеспечивает управляемую внешним кодом перестановку входных данных.However, this network does not provide external code-driven permutation of input data.
Известно устройство для осуществления управляемых перестановок, которое состоит из двух сетей типа «Butterfly» одинакового размера, соединенных одна с другой (back-to-back). Управление осуществляется программно с помощью процессора.A device for implementing controlled permutations is known, which consists of two networks of the Butterfly type of the same size, connected to one another (back-to-back). Management is carried out programmatically using a processor.
Недостатком данного устройства является программное управление перестановками, которое осуществляется процессором и приводит к замедлению работы системы (см. патент US №6922472, МПК H04L 9/34).The disadvantage of this device is the software permutation control, which is performed by the processor and leads to a slowdown of the system (see US patent No. 6922472, IPC H04L 9/34).
Задачей настоящего решения является упрощение и ускорение процесса управления перестановками при минимизации элементов устройства.The objective of this solution is to simplify and accelerate the process of managing permutations while minimizing the elements of the device.
Техническим результатом является возможность высокоскоростного параллельного преобразования форматов блоков данных методом перестановок с использованием управляющих кодов.The technical result is the possibility of high-speed parallel conversion of data block formats by permutation using control codes.
Поставленная задача достигается тем, что устройство управляемой перестановки информации, хранимой в ЭВМ, с n входами и n выходами управляющих кодов, n входами и n выходами данных включает в себя сортирующую сеть, каждая ячейка которой состоит из компаратора сортирующей сети, с двумя входами, двумя выходами и выходом управления, который соединен с входом управления транспозиционного элемента ячейки, имеющего два входа и два выхода данных, причем для пар ячеек, компараторы которых соединены между собой в соответствии с топологией сортирующей сети, выполняется условие, если выход компаратора первой ячейки соединен с входом компаратора второй ячейки, то вход транспозиционного элемента первой ячейки соединен с выходом транспозиционного элемента второй ячейки, входы управляющих кодов устройства образованы входами компараторов входных ячеек сортирующей сети, а выходы управляющих кодов устройства образованы выходами компараторов выходных ячеек сортирующей сети, входы данных образованы входами транспозиционных элементов выходных ячеек сортирующей сети, а выходы данных образованы выходами транспозиционных элементов входных ячеек сортирующей сети.The problem is achieved in that a device for controlled permutation of information stored in a computer with n inputs and n outputs of control codes, n inputs and n outputs of data includes a sorting network, each cell of which consists of a comparator of the sorting network, with two inputs, two the outputs and the control output, which is connected to the control input of the transposition cell element having two inputs and two data outputs, moreover, for pairs of cells whose comparators are interconnected in accordance with the sorting topology network condition, if the comparator output of the first cell is connected to the input of the comparator of the second cell, then the input of the transposition element of the first cell is connected to the output of the transposition element of the second cell, the inputs of the control codes of the device are formed by the inputs of the comparators of the input cells of the sorting network, and the outputs of the control codes of the device are formed by the outputs comparators of the output cells of the sorting network, the data inputs are formed by the inputs of the transposition elements of the output cells of the sorting network, and the data outputs are ovany outputs transposition of elements of the input cell sorting network.
Изобретение поясняется чертежами, где на фиг.1 приведена блок-схема устройства, на фиг.2 приведена схема для реализации управляемой перестановки вектора данных из 4 элементов на основе сортирующей сети Бетчера,The invention is illustrated by drawings, where Fig. 1 is a block diagram of a device, Fig. 2 is a diagram for implementing a controlled permutation of a data vector of 4 elements based on a Betcher sorting network,
гдеWhere
1. устройство управляемой перестановки;1. a controlled swap device;
2. ячейки сортирующей сети;2. cells of the sorting network;
Х1, Х2,…, Хn - n входов данных;X1, X2, ..., Xn - n data inputs;
Y1, Y2,…, Yn - n выходов данных;Y1, Y2, ..., Yn - n data outputs;
IC1, IC2,…, IСn - n входов управляющих кодов;IC1, IC2, ..., ICn - n inputs of control codes;
ОС1, ОС2,…, ОСn-n выходов управляющих кодов;OS1, OS2, ..., OSn-n outputs of control codes;
π(1,2,…, n) - перестановка управляющих кодов;π (1,2, ..., n) - permutation of control codes;
(1,2,…, n) - отсортированные управляющие коды;(1,2, ..., n) - sorted control codes;
(x1, х2,…, хn) - входные данные;(x 1 , x 2 , ..., x n ) - input data;
π(х1, х2,…, хn) - выходные данные;π (x 1 , x 2 , ..., x n ) - output;
X1, X2 - первый и второй входы данных транспозиционных элементов;X 1 , X 2 - the first and second inputs of these transposition elements;
Y1, Y2 - первый и второй выходы данных транспозиционных элементов;Y1, Y 2 - the first and second outputs of these transposition elements;
IC1, IC2 - первый и второй входы компараторов;IC 1 , IC 2 - the first and second inputs of the comparators;
OC1, OC2 - первый и второй выходы компараторов;OC 1 , OC 2 - the first and second outputs of the comparators;
IC1, IC2, IC3, IC4 - входы управляющих кодов;IC1, IC2, IC3, IC4 - inputs of control codes;
OC1, OC2, ОС3, ОС4 - выходы управляющих кодов;OC1, OC2, OS3, OS4 - outputs of control codes;
X1, Х2, Х3, Х4 - входы данных;X1, X2, X3, X4 - data inputs;
Y1, Y2, Y3, Y4 - выходы данных.Y1, Y2, Y3, Y4 - data outputs.
Предлагаемое устройство включает в себя сортирующую сеть 1, в узлах которой находятся ячейки 2, состоящие из компаратора сортирующей сети и транспозиционного элемента управляемой перестановки данных. Компаратор сортирующей сети имеет управляющий выход (на чертежах не показан), два входа IC1, IC2 и два выхода OC1, OC2. Транспозиционный элемент имеет вход управления, входы X1, Х2 и выходы Y1, Y2. В каждой ячейке управляющий выход компаратора соединен с входом управления транспозиционного элемента.The proposed device includes a
Соединения выходов OC1 и входов IC1, выходов ОС2 и входов IC2 компараторов определяются топологией используемой сортирующей сети. Соединения IC1,IC2,…, ICn входов управляющих кодов с входами компараторов входных ячеек сортирующей сети определяются топологией используемой сортирующей сети. Соединения ОС1,ОС2,…, ОСn выходов управляющих кодов с выходами компараторов выходных ячеек сортирующей сети определяются топологией используемой сортирующей сети.The connections of the OC 1 outputs and IC 1 inputs, OS 2 outputs and comparator IC 2 inputs are determined by the topology of the sorting network used. The connections IC1, IC2, ..., ICn of the control code inputs to the comparator inputs of the input cells of the sorting network are determined by the topology of the sorting network used. The connections OS1, OS2, ..., OSn of the outputs of the control codes with the outputs of the comparators of the output cells of the sorting network are determined by the topology of the sorting network used.
Если выход ОС1 компаратора одной ячейки сортирующей сети соединен с входом IC1 компаратора другой ячейки сортирующей сети, то вход X1 транспозиционного элемента одной ячейки соединен с выходом Y1 другой ячейки. Если выход ОС2 компаратора одной ячейки сортирующей сети соединен с входом IC2 компаратора другой ячейки сортирующей сети, то вход Х2 транспозиционного элемента одной ячейки соединен с выходом Y2 другой ячейки. Если выходы OC1, OC2 выходной ячейки сортирующей сети являются выходами управляющих кодов устройства, то входы X1, Х2 транспозиционного элемента этой ячейки являются входами данных. Если входы IC1, IС2 входной ячейки сортирующей сети являются входами управляющих кодов устройства, то выходы Y1, Y2 транспозиционного элемента этой ячейки являются выходами данных.If the output OS 1 of the comparator of one cell of the sorting network is connected to the input IC 1 of the comparator of another cell of the sorting network, then the input X 1 of the transposition element of one cell is connected to the output Y 1 of the other cell. If the output OS 2 of the comparator of one cell of the sorting network is connected to the input IC 2 of the comparator of another cell of the sorting network, then the input X 2 of the transposition element of one cell is connected to the output Y 2 of the other cell. If the outputs OC 1 , OC 2 of the output cell of the sorting network are the outputs of the control codes of the device, then the inputs X 1 , X 2 of the transposition element of this cell are data inputs. If the inputs IC 1 , IC 2 of the input cell of the sorting network are the inputs of the control codes of the device, then the outputs Y 1 , Y 2 of the transposition element of this cell are the data outputs.
Устройство работает следующим образом. На n входов управляющих кодов IC1,IC2,…, ICn, образованных входами компараторов IС1, IС2 устройства, подаются входные управляющие коды, представляющие собой перестановку чисел натурального ряда π(1,2,…, n). На n входов данных Х1,Х2,…, Хn, образованных входами транспозиционных элементов Х1, Х2 устройства, подаются входные данные (x1,x2,…, xn). Через время задержки τ, на n выходах данных Y1,Y2,…, Yn, образованных выходами транспозиционных элементов устройства, появляются выходные данные, представляющие собой перестановку π(х1,х2,…, хn). Время задержки τ определяется количеством элементов на пути распространения сигналов управления и данных. Если значение кода на входе компаратора IC1 больше или равно значения кода на входе компаратора IC2, то значение кода поступает с входа IC1 на выход OC1, а значение кода на входе IC2 поступает на выход ОС2. Одновременно на управляющем выходе компаратора появляется сигнал, который подается на управляющий вход транспозиционного элемента. При этом перестанавливаемые данные на входе X1 поступают на выход Y1; а перестанавливаемые данные на входе Х2 поступают на выход Y2.The device operates as follows. The n inputs of control codes IC1, IC2, ..., ICn formed by the inputs of the comparators IC 1 , IC 2 of the device are supplied with input control codes, which are a permutation of numbers of the natural series π (1,2, ..., n). The input data (x 1 , x 2 , ..., x n ) are fed to the n data inputs X1, X2, ..., Xn formed by the inputs of the transposition elements X 1 , X 2 of the device. After the delay time τ, at the n data outputs Y1, Y2, ..., Yn formed by the outputs of the transposition elements of the device, the output data appears, which is a permutation π (x 1 , x 2 , ..., x n ). The delay time τ is determined by the number of elements on the propagation path of the control signals and data. If the value of the code at the input of the comparator IC 1 is greater than or equal to the value of the code at the input of the comparator IC 2 , then the code value is supplied from the input of IC 1 to the output OC 1 , and the value of the code at the input of IC 2 is sent to the output of OS 2 . At the same time, a signal appears on the control output of the comparator, which is fed to the control input of the transposition element. In this case, the resettable data at input X 1 is output Y 1 ; and the reconstructed data at input X 2 goes to output Y 2 .
Если значение кода на входе компаратора IС1 меньше значения кода на входе компаратора IC2, то значение кода поступает с входа IC1 на выход ОС2, а значение кода на входе IC2 поступает на выход OC1. Одновременно на управляющем выходе компаратора появляется сигнал, который подается на управляющий вход транспозиционного элемента. При этом перестанавливаемые данные на входе X1 поступают на выход Y2; а перестанавливаемые данные на входе Х2 поступают на выход Y1.If the value of the code at the input of the comparator IC 1 is less than the value of the code at the input of the comparator IC 2 , then the code value comes from the input IC 1 to the output of OS 2 , and the value of the code at the input of IC 2 goes to the output OC 1 . At the same time, a signal appears on the control output of the comparator, which is fed to the control input of the transposition element. In this case, the resettable data at input X 1 is output Y 2 ; and the reconstructed data at input X 2 goes to output Y 1 .
Таким образом, перестановка входного вектора данных (х1,х2,…, хn) в соответствии с входными управляющими кодами π(1,2,…, n) выполняется параллельно, что обеспечивает высокую скорость преобразования. Число ячеек устройства зависит от топологии используемой сортирующей сети и для сетей Бетчера составляет O(n·(log2 n)2). Это число растет практически линейно с ростом n, что делает технически возможным управляемую перестановку больших блоков данных.Thus, the rearrangement of the input data vector (x 1 , x 2 , ..., x n ) in accordance with the input control codes π (1,2, ..., n) is performed in parallel, which ensures high conversion speed. The number of device cells depends on the topology of the sorting network used, and for Betcher networks it is O (n · (log 2 n) 2 ). This number grows almost linearly with increasing n, which makes it technically possible to control the permutation of large data blocks.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2009111245/08A RU2405187C1 (en) | 2009-03-30 | 2009-03-30 | Device for controlled rearrangement of information stored on personal computer |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2009111245/08A RU2405187C1 (en) | 2009-03-30 | 2009-03-30 | Device for controlled rearrangement of information stored on personal computer |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2009111245A RU2009111245A (en) | 2010-10-10 |
RU2405187C1 true RU2405187C1 (en) | 2010-11-27 |
Family
ID=44024501
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2009111245/08A RU2405187C1 (en) | 2009-03-30 | 2009-03-30 | Device for controlled rearrangement of information stored on personal computer |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2405187C1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2446445C1 (en) * | 2010-10-29 | 2012-03-27 | Государственное образовательное учреждение высшего профессионального образования "Саратовский государственный университет им. Н.Г. Чернышевского" | Apparatus for generating reverse transpositions of information stored on computer |
-
2009
- 2009-03-30 RU RU2009111245/08A patent/RU2405187C1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
RU2009111245A (en) | 2010-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Feldman et al. | On distributing symmetric streaming computations | |
Gupta et al. | High-performance hardware implementation for RC4 stream cipher | |
Pan et al. | Time-free spiking neural P systems | |
Bystrov et al. | Priority arbiters | |
US9983876B2 (en) | Non-deterministic finite state machine module for use in a regular expression matching system | |
Grozea et al. | FPGA vs. multi-core CPUs vs. GPUs: hands-on experience with a sorting application | |
Le et al. | Algebraic differential fault analysis on SIMON block cipher | |
Zhang et al. | Weighted spiking neural P systems with rules on synapses | |
Tommiska et al. | Hardware implementation of GA | |
US8044833B2 (en) | High speed serializer | |
RU2405187C1 (en) | Device for controlled rearrangement of information stored on personal computer | |
CN104854602A (en) | Generating messages from the firing of pre-synaptic neurons | |
Shi et al. | An enhanced multiway sorting network based on n-sorters | |
Ronconi et al. | Multi-cobs: A novel algorithm for byte stuffing at high throughput | |
Sanju et al. | Design and implementation of a network on chip-based simulator: a performance study | |
Jain et al. | An efficient self-routing and non-blocking interconnection network on chip | |
Li et al. | Deadlock-avoidance for streaming applications with split-join structure: Two case studies | |
Li et al. | The power of the queue | |
Robinson | Brief Announcement: What Can We Compute in a Single Round of the Congested Clique? | |
CN100458685C (en) | Device and method for generating randow number | |
RU2446445C1 (en) | Apparatus for generating reverse transpositions of information stored on computer | |
Lada et al. | Implementation of a method for synthesizing groups of symmetric double-operand operations of cryptographic information coding for block encryption systems | |
Alia et al. | On the lower bound to the VLSI complexity of number conversion from weighted to residue representation | |
US20130070768A1 (en) | Systems and methods for asynchronous handshake-based interconnects | |
Aljundi et al. | A universal performance factor for multi-criteria evaluation of multistage interconnection networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20160331 |