RU2012054C1 - Device for exhaustion of permutations - Google Patents
Device for exhaustion of permutations Download PDFInfo
- Publication number
- RU2012054C1 RU2012054C1 SU5004241A RU2012054C1 RU 2012054 C1 RU2012054 C1 RU 2012054C1 SU 5004241 A SU5004241 A SU 5004241A RU 2012054 C1 RU2012054 C1 RU 2012054C1
- Authority
- RU
- Russia
- Prior art keywords
- group
- input
- elements
- inputs
- output
- Prior art date
Links
Images
Landscapes
- Complex Calculations (AREA)
Abstract
Description
Изобретение относится к вычислительной технике, предназначено для формирования перестановок переменной длины и может быть использовано для решения широкого класса комбинаторных задач в различных областях науки и техники (см. , например, Курейчик В. М. , Глушань В. М. , Щербаков Л. И. Комбинаторные аппаратные модели и алгоритм в САПР. М. : Радио и связь, 1990, с. 216). The invention relates to computer technology, is intended for the formation of permutations of variable length and can be used to solve a wide class of combinatorial problems in various fields of science and technology (see, for example, Kureichik V.M., Glushan V.M., Scherbakov L. I. Combinatorial Hardware Models and an Algorithm in CAD (Moscow: Radio and Communications, 1990, p. 216).
Известны устройства, обеспечивающие генерацию перестановок исходных величин (см. например, авт. св. СССР NN 957215, 995093, 1124319, 1180917, 1190388, 1397933 и др. ). Недостатком этих устройств является невозможность управления очередностью следования генерируемых перестановок. Known devices that provide the generation of permutations of the original values (see, for example, ed. St. USSR NN 957215, 995093, 1124319, 1180917, 1190388, 1397933, etc.). The disadvantage of these devices is the inability to control the sequence of generated permutations.
Наиболее близким по технической сущности к заявляемому является устройство для перебора перестановок, содержащее блок управления и блок декодирования (см. авт. св. СССР N 1410056, кл. G 05 F 15/20, 1988). Данное устройство реализует процедуру преобразования номера перестановки в однозначно соответствующую ему перестановку. Недостатки устройства - зависимость функциональной схемы от числа перестанавливаемых элементов и невозможность генерации перестановок переменной длины. Closest to the technical nature of the claimed is a device for enumerating permutations containing a control unit and a decoding unit (see ed. St. USSR N 1410056, class G 05 F 15/20, 1988). This device implements a procedure for converting a permutation number into a unique permutation corresponding to it. The disadvantages of the device are the dependence of the functional diagram on the number of rearranged elements and the impossibility of generating permutations of variable length.
Цель изобретения - расширение области применения за счет обеспечения генерации перестановок переменного числа элементов. The purpose of the invention is the expansion of the scope by providing the generation of permutations of a variable number of elements.
Сущность изобретения заключается в том, что в устройство, содержащее группу блоков деления, блок выбора минимального числа, две группы регистров, группу сумматоров, первый и второй элементы ИЛИ, регистр, дешифратор и две группы элементов задержки, введены регистр, первый и второй демультиплексоры, две группы элементов ИЛИ, группа элементов задержки, группа первого и второго элементов И, группа триггеров, регистр и дешифратор. При этом информационный выход введенного регистра соединен с информационным входом дешифратора и управляющими входами демультиплексоров, информационный вход первого демультиплексора соединен с входом запуска устройства, а его выходы соединены с входами соовтетствующих элементов ИЛИ первой группы, информационный вход второго демультиплексора соединен с выходом регистра, а его выходы соединены с входами соответствующих элементов ИЛИ второй группы, выходы элементов ИЛИ первой группы соединены с входами элементов задержки первой группы, а выходы элементов ИЛИ второй группы соединены с информационными входами блоков деления, выходы дешифратора соединены с входом первого элемента и инверсным входом второго элемента группы, другие входы элементов И объединены со считывающим входом соответствующих сумматоров и входами записи регистров группы и соединены с выходом соответствующего элемента задержки третьей группы, вход которых соединен с выходом соответствующего элемента задержки второй группы, входы которых соединены с выходом второго элемента И группы, а выходы первых элементов И группы соединены с входами первого элемента ИЛИ, выход элемента ИЛИ соединен с объединенными нулевыми входами триггеров, инверсные выходы которых соединены со считывающими входами регистров группы, а единичные входы - с выходами дешифратора, информационные выходы регистров группы соединены с входами блока выбора минимального числа. The essence of the invention lies in the fact that in a device containing a group of division blocks, a block for selecting a minimum number, two groups of registers, a group of adders, the first and second elements OR, a register, a decoder and two groups of delay elements, a register, the first and second demultiplexers are entered, two groups of OR elements, a group of delay elements, a group of first and second AND elements, a group of triggers, a register, and a decoder. In this case, the information output of the entered register is connected to the information input of the decoder and the control inputs of the demultiplexers, the information input of the first demultiplexer is connected to the start input of the device, and its outputs are connected to the inputs of the corresponding elements of the first group, the information input of the second demultiplexer is connected to the output of the register, and its outputs connected to the inputs of the corresponding OR elements of the second group, the outputs of the OR elements of the first group are connected to the inputs of the delay elements of the first group py, and the outputs of the OR elements of the second group are connected to the information inputs of the division blocks, the decoder outputs are connected to the input of the first element and the inverse input of the second element of the group, the other inputs of the AND elements are combined with the read input of the corresponding adders and the inputs of the register of the group registers and connected to the output of the corresponding element delays of the third group, the input of which is connected to the output of the corresponding delay element of the second group, the inputs of which are connected to the output of the second element AND of the group, and the outputs are not The output elements AND groups are connected to the inputs of the first OR element, the output of the OR element is connected to the combined zero inputs of the triggers, the inverse outputs of which are connected to the reading inputs of the group registers, and the single inputs are connected to the outputs of the decoder, the information outputs of the group registers are connected to the inputs of the minimum number selection block .
Функциональная схема устройства приведена на чертеже. Functional diagram of the device shown in the drawing.
Устройство содержит блок 1 управления и блок 2 декодирования. Блок 1 предназначен для формирования определяющего множества чисел в соответствии с выбранным вариантом перестановки и шагом работы устройства, выбора минимального числа из этого множества и подачи его на вход блока декодирования. Блок 1 содержит регистры 3i, триггеры 4i(i= , где n - предельное число элементов перестановок), схему 5 выбора минимального числа и дешифратор 6. Блок 2 декодирования предназначен для преобразования заданного натурального числа в соответствующую ему перестановку требуемого числа элементов. Блок содержит элементы 7i, i= , 8i, i= , 9i, i= задержки регистры 10, 11, 12, i= , демультиплексоры 13, 14, дешифратор 15, элементы ИЛИ 16, 17, 18i, 19i, i= , группу первых и вторых элементов И 20i, i= , блоки 21, i деления, сумматоры 22i, i= .The device comprises a control unit 1 and a
Устройство имеет также информационные входы 23, 24, вход 25 запуска и информационные выходы 26i, i= .The device also has
Работа устройства основана на реализации процедуры преобразования исходного числа m(0≅ m< k! k≅ n) в однозначно соответствующую ему перестановку исходных, предварительно пронумерованных числами 1, 2, . . . , k элементов (см. Бабаев А. А. Процедуры кодирования и декодирования перестановок. Кибернетика, 1984, N 6, с. 75-76). The operation of the device is based on the implementation of the procedure for converting the initial number m (0≅ m <k! K≅ n) into a uniquely corresponding permutation of the initial numbers, previously numbered 1, 2,. . . , k elements (see Babaev A. A. Procedures for Encoding and Decoding Permutations. Cybernetics, 1984,
Перед работой в регистры 3i, i= вносятся числа исходного определяющего множества Io= { 1,2, . . . , n} , причем число Р(Р∈Iо) вносится в регистр 3р, в регистр 11 по входу 23 вносится число переставляемых элементов К≅ n, а в регистр 12 по входу 24 вносится число m(0≅ m≅ k ! ). При этом код числа К с информационных выходов регистра 11 поступает на вход дешифратора 15 и появляется сигнал единичного уровня на К-м управляющем выходе дешифратора, с которого он поступает на инверсный вход первого и вход второго элементов И 20к. Триггеры 4i, i= , находятся в исходном нулевом состоянии. Сигналы с их нулевых выходов поступают на считывающие выходы регистров 3i, i= , и числа исходного определяющего множества Iо с информационных выходов регистра 3iпоступают на соответствующие входы схемы 5 выбора минимального числа. Код минимального из чисел исходного определяющего множества с выхода схемы 5 поступает на объединенные первые информационные входы сумматоров 22i, i= .Before working in
Работа устройства начинается с положительного импульса запуска на вход 25 пуска устройства. При этом импульс запуска поступает на вход считывания регистра 10 и на информационный вход демультиплексора 13, с информационных выходов регистра 10 код числа m поступает на информационный вход демультиплексора 14. С К-го выхода демультиплексора 13 сигнал поступает на вход элемента ИЛИ 18k, а с К-го выхода демультиплесора 14 код числа m поступает на вход элемента ИЛИ 19k. С выхода элемента ИЛИ 18k импульс запуска поступает на управляющий вход блока 21kделения, а с выхода элемента ИЛИ 19k код числа m поступает на информационный вход блока 21k деления.The operation of the device begins with a positive start pulse at
Блоки 21i деления, i= , осуществляют деление числа, поступающего на их информационный вход, на модуль ri= n-i+1. При этом с первого выхода блока деления выдается целая часть от деления поступающего на его вход числа на соответствующий данному блоку постоянный модуль, а с второго - остаток от деления. Поэтому при поступлении на управляющий вход блока 21k деления импульса в нем осуществляется деление числа m на постоянный модуль rk= n-K+1. Целая часть от деления поступает с первого выхода блока 21k на вход элемента ИЛИ 19k-1, а остаток от деления с второго выхода поступает на второй информационный вход сумматора 22k. С выхода элемента ИЛИ 19 целая часть от деления поступает на информационный вход блока деления 21k.
Через время задержки τ1, достаточное для осуществления деления и передачи результатов, импульс появляется на выходе элемента 7k задержки, откуда он через элемент ИЛИ 18k-1 поступает на управляющий вход блока 21k-1 деления и вход элемента 7k-1 задержки. Далее аналогично последовательно через интервал времени τ1 блоками 21i, i= , осуществляется выделение целой части и остатков от деления на постоянный модуль чисел, поступающих с первого выхода блоков 21i деления, i= , соответственно. Через время t1= k . τ1 от момента подачи импульса запуска на вход 25 пуска импульс с выхода элемента 7i задержки поступает на вход элемента 91 задержки и управляющий вход сумматора 221, и в нем осуществляется сложение числа, поступившего с второго выхода блока 211деления, с числом, поступившим от схемы 5 выбора минимального числа.After a delay time τ 1 sufficient for dividing and transmitting the results, a pulse appears at the output of the
Через время задержки τ2, достаточное для работы сумматора, поступает сигнал с выхода элемента 91 задержки на считывающий вход сумматора 221, вход разрешения записи регистра 121 и объединенные входы первого и второго элементов И 201. Код суммы с выхода сумматора 221поступает на информационный вход регистра 121 и соответствующий вход элемента ИЛИ 17. С выхода элемента ИЛИ 17 код суммы поступает на вход дешифратора 6 блока 1, а с выхода второго элемента И 20 импульс поступает на вход элемента 82 задержки. В дешифраторе 6 код суммы дешифрируется (величина суммы на выходе сумматора 22i, i= , принадлежит к множеству первых K чисел натурального ряда), и сигнал с соответствующего управляющего выхода дешифратора поступает на единичный вход соответствующего триггера 4i, i= . Триггер переходит в единичное состояние, снимается сигнал со считывающего входа соответствующего регистра 3i, i= , чем моделируется изменение определяющего множества чисел, и на выходе схемы 5 появляется код минимального числа, соответствующего данному измененному определяющему множеству.After a delay time τ 2 sufficient for the adder to operate, a signal is output from the
Через время задержки τ3, большее длительности импульса запуска, появляется сигнал на выходе элемента 82 задержки, и поступает на вход элемента 92 задержки и управляющий вход сумматора 222. Дальнейшая работа схемы аналогична, и через время t2= К τ2+(K-1) τ3 +t1 от момента подачи импульса запуска появляется сигнал на выходе элемента 9kзадержки, откуда он поступает на объединенные входы элементов И20k. Так как при этом сигнал с k-го выхода дешифратора 15 присутствует на прямом входе первого и на входе второго элемента И 20k, то сигнал на выходе первого элемента И 20k не появляется, а сигнал с выхода второго элемента И20k поступает на соответствующий вход элемента ИЛИ 16 и с его выхода поступает на объединенные нулевые входы триггеров 4i, i= , и считывающие входы регистров 12i, i= . Числа, соответствующие полученной перестановке, поступают с информационных выходов регистров 12i, i= , на информационные выходы 26i, устройства i= .After the delay time τ 3 , longer than the duration of the start pulse, a signal appears at the output of the delay element 8 2 and is supplied to the input of the delay element 9 2 and the control input of the
Таким образом, предлагаемое устройство обеспечивает формирование перестановок не детерминированного числа элементов n, а переменного числа элементов K ≅ n, определяемого пользователем. Это свидетельствует о достигнутом существенном расширении функциональных возможностей по сравнению с прототипом и достижении цели изобретения. Thus, the proposed device provides the formation of permutations of not a deterministic number of elements n, but a variable number of elements K ≅ n, defined by the user. This indicates a significant expansion of functionality achieved in comparison with the prototype and the achievement of the purpose of the invention.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU5004241 RU2012054C1 (en) | 1991-07-01 | 1991-07-01 | Device for exhaustion of permutations |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU5004241 RU2012054C1 (en) | 1991-07-01 | 1991-07-01 | Device for exhaustion of permutations |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2012054C1 true RU2012054C1 (en) | 1994-04-30 |
Family
ID=21586243
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SU5004241 RU2012054C1 (en) | 1991-07-01 | 1991-07-01 | Device for exhaustion of permutations |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2012054C1 (en) |
-
1991
- 1991-07-01 RU SU5004241 patent/RU2012054C1/en active
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Golomb | Shift register sequences: secure and limited-access code generators, efficiency code generators, prescribed property generators, mathematical models | |
US4691291A (en) | Random sequence generators | |
US4135249A (en) | Signed double precision multiplication logic | |
RU2012054C1 (en) | Device for exhaustion of permutations | |
RU154062U1 (en) | DEVICE FOR SEARCHING TRANSFERS | |
RU2446444C1 (en) | Pseudorandom sequence generator | |
RU2553057C1 (en) | Device to generate systems of double derivative non-linear recurrent sequences | |
RU2200972C2 (en) | Transorthogonal code generator | |
RU2171493C1 (en) | Device for evaluating arrangement quality | |
RU104336U1 (en) | Pseudorandom Sequence Generator | |
RU2620725C2 (en) | Device for forming spoofing resistant nonlinear recurrent sequences | |
RU1805465C (en) | Random-number generator | |
SU951301A1 (en) | Pseudo-random code generator | |
RU2030104C1 (en) | Generator of pseudorandom sequences | |
SU1714609A1 (en) | Device for shaping main memory unit test | |
SU1198533A1 (en) | Device for simulating phase jitter of pulses of code sequence | |
SU864291A1 (en) | Device for computing walsh spectrum of sine and cosie functions | |
SU1410056A1 (en) | Device for exhaustive search for permutations | |
SU1005045A1 (en) | Pseudo-random number generator | |
RU2020759C1 (en) | Device for forming remainder for random module of number | |
SU625222A1 (en) | Pseudorandom number generator | |
SU1661758A1 (en) | Arithmetic expander | |
SU1504803A1 (en) | N-ary code shaper | |
SU1339894A1 (en) | Decoder | |
SU1674151A1 (en) | Permutation generator |