RU2020759C1 - Device for forming remainder for random module of number - Google Patents
Device for forming remainder for random module of number Download PDFInfo
- Publication number
- RU2020759C1 RU2020759C1 SU4935609A RU2020759C1 RU 2020759 C1 RU2020759 C1 RU 2020759C1 SU 4935609 A SU4935609 A SU 4935609A RU 2020759 C1 RU2020759 C1 RU 2020759C1
- Authority
- RU
- Russia
- Prior art keywords
- input
- output
- information
- inputs
- outputs
- Prior art date
Links
- 230000015572 biosynthetic process Effects 0.000 claims description 20
- 239000011159 matrix material Substances 0.000 claims description 6
- 238000012546 transfer Methods 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 2
- 230000000694 effects Effects 0.000 abstract 1
- 239000000126 substance Substances 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 5
- 238000010276 construction Methods 0.000 description 3
- 238000000034 method Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000005266 casting Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
Images
Landscapes
- Error Detection And Correction (AREA)
Abstract
Description
Изобретение относится к вычислительной технике и может быть использовано в устройствах для формирования элементов конечных полей, в устройствах для формирования кодовых последовательностей, построение которых основывается на теории конечных полей, а также в устройствах, функционирующих в СОК. The invention relates to computer technology and can be used in devices for forming elements of finite fields, in devices for forming code sequences, the construction of which is based on the theory of finite fields, as well as in devices operating in RNS.
Цель изобретения - сокращение объема оборудования. The purpose of the invention is to reduce the volume of equipment.
Сущность изобретения заключается в реализации следующего способа приведения по модулям чисел. The essence of the invention lies in the implementation of the following method of bringing the modules of numbers.
Известно, что позиционные системы счисления строятся следующим образом. Выбирается некоторое число m - основание системы счисления, и каждое число А представляется в виде комбинации его степеней с коэффициентами ai, i=, принимающими значения от 0 до m-1. Для случая двоичной системы счисления (m = 2) всякое число А можно представить в виде
А = аk2k + ak-12k-1 + ... + a12 + a0, (1) где ai, i=, принимают значения "0" или "1".It is known that positional number systems are constructed as follows. A certain number m is selected — the base of the number system, and each number A is represented as a combination of its degrees with coefficients a i , i = taking values from 0 to m-1. For the case of a binary number system (m = 2), any number A can be represented as
A = a k 2 k + a k-1 2 k-1 + ... + a 1 2 + a 0 , (1) where a i , i = take the value "0" or "1".
Для вычисления остатка от числа А по модулю Р достаточно в выражении (1) просуммировать частичные остатки по модулю Р от чисел 2iдля тех i, для которых коэффициент аi = 1. Способ вычисления частичных остатков состоит в следующем. Частичный остаток от 20 для любого модуля (Р ≥2) всегда равен единице. Частичный остаток от 21 в два раза превышает (с учетом операции приведения по модулю) частичный остаток от 20 и т.д., т.е. частичный остаток от 2i в два раза превышает частичный остаток от 2i-1. Таким образом, вычисление частичного остатка от 2iзаключается в умножении на два частичного остатка от 2i-1 и приведении результата по модулю Р. Операция приведения по модулю Р для числа, не превышающего величину 2Р-1, реализуется следующим образом. Если число не превышает величину Р, то оно остается без изменения, если число лежит в интервале от Р до 2Р-1, то из него вычитается модуль Р, а результат является остатком. Операция умножения на два может быть реализована сдвигом всех разрядов умножаемого числа на один влево либо подачей разрядов множимого на выход результата в такой последовательности: 2i - разряд множимого на 2i+k - разряд произведения, i=.To calculate the remainder of the number A modulo P, it suffices to sum in the expression (1) the partial residues modulo P of the
Частичные остатки для всех 2i(i=) записываются в регистр. Длина регистра сдвига равна количеству ячеек памяти, занимаемых по одному адресу в блоке памяти устройства-прототипа. На практике довольно часто (например, при формировании сигнально-кодовых конструкций, кодировании и декодировании и др. ) устройство для формирования остатка формирует остатки по одному и тому же модулю (т.е. без его смены) в течение довольно большого количества циклов формирования остатков (> 10000). В таких случаях целесообразно вычислять частичные остатки по модулю Р, а не хранить их для всех возможно применяемых модулей в блоке памяти. Потери быстродействия в работе устройства при этом практически незаметны при существенном (в количество раз), равном количеству используемых модулей уменьшении оборудования блока памяти.Partial residuals for all 2 i (i = ) are written to the register. The length of the shift register is equal to the number of memory cells occupied at one address in the memory block of the prototype device. In practice, quite often (for example, when generating signal-code constructions, encoding and decoding, etc.), a device for generating a residue generates residues in the same module (i.e., without changing it) during a rather large number of cycles of residue formation (> 10000). In such cases, it is advisable to calculate partial residuals modulo P, and not to store them for all possible modules in the memory block. The performance loss in the operation of the device is almost imperceptible with a significant (in the number of times) equal to the number of modules used reducing the equipment of the memory block.
На фиг. 1 представлена функциональная схема устройства для формирования остатка по произвольному модулю от числа; на фиг. 2 - функциональная схема блока формирования остатков; на фиг. 3 - функциональная схема блока суммирования по модулю; на фиг. 4 - функциональная схема узла формирования частичных остатков. In FIG. 1 is a functional diagram of a device for generating a remainder modulo an arbitrary number; in FIG. 2 is a functional diagram of a residual formation unit; in FIG. 3 is a functional block diagram of the modulo summation block; in FIG. 4 is a functional block diagram of the formation of partial residues.
Устройство содержит (фиг. 1) регистр 1, блок 2 формирования остатков, группу 3 блоков элементов И, блок 4 суммирования по модулю и выход 5 сигнализации устройства, вход 6 числа устройства, вход 7 начала вычисления устройства, вход 8 модуля устройства, вход 9 разрешения записи модуля устройства. The device contains (Fig. 1) register 1, a
Блок 2 формирования остатков содержит (фиг. 2) счетчик 10, элемент 11 задержки, узел 12 формирования частичных остатков, регистр 13, 14, мультиплексоры 15, 16, генератор 17 тактовых импульсов, элемент И 18 и триггер 19.
Блок 4 суммирования по модулю содержит (фиг. 3) элемент НЕ 20 и матрицу сумматоров 21 по модуля, построенную по древовидной схеме. Block 4 summation modulo contains (Fig. 3) the element is NOT 20 and the matrix of
Узел формирования частичных остатков (фиг. 4) содержит элемент И 22, ключ 23, элемент НЕ 24, сумматоры 25, 26. The site for the formation of partial residues (Fig. 4) contains an element And 22, a
Устройство для формирования остатка по произвольному модулю от числа работает следующим образом. A device for generating a remainder modulo an arbitrary number modulus works as follows.
В исходном состоянии (фиг. 1) на вход 8 модуля подан код модуля Рi, по которому формируются остатки. На вход 9 подается управляющий импульс, по которому в блоке 2 происходит вычисление частичных остатков по модулю Р.In the initial state (Fig. 1), the module code P i is supplied to the
На вход 7 начала вычисления подается импульс, поступающий на вход записи регистра 1, по которому числа Аk через вход 6 записывается в регистр 1, а затем поступает на первые входы блоков 3 элементов И группы. В зависимости от того, на вход какого из блоков 3 элементов И поступает логическая "1", тот из блоков 3 элементов И оказывается открытым и коммутирует на свои выходы значения частичных остатков по модулю Рi, вычисленных в блоке 2. В результате на соответствующие входы блока 4 суммирования по модулю поступают остатки от чисел 2i для тех i, для которых коэффициент аi = 1 в представлении (1) числа Аk, записанного в регистре 1. Блок 4 суммирования по модулю суммирует по модулю Р частичные остатки и результат суммирования выдает на информационный выход устройства.
При следующем цикле формирования остатка задается любое другое числа Аl, которое поступает на вход 6, и работа всех элементов и блоков устройства повторяется.In the next cycle of the remainder formation, any other number А l , which is input 6, is set, and the operation of all elements and units of the device is repeated.
При смене модуля на вход 8 устройства подается очередной модуль Рj, а на вход 9 - управляющий импульс, за счет чего в блоке 2 происходит вычисление частичных остатков по модулю Рj.When the module is changed, the next module P j is fed to the
Блок 2 формирования остатков работает следующим образом (фиг. 2). Управляющий сигнал, поступающий на вход 9, обеспечивает перевод триггера 19 в единичное состояние, запись единицы в счетчик 10 и в первые разряды регистров 13 и 14, а также обнуление остальных разрядов регистров 13 и 14. Единица с выхода регистра 13 поступает на вход мультиплексора 16 и на второй информационный вход узла 12 формирования частичных остатков. Перевод триггера 19 в единичное состояние обеспечивает прохождение импульсов с выхода генератора 17 тактовых импульсов через элемент И 18.
Как только в регистре 13 будет записана единица, осуществляется формирование частичного остатка в узле 12. Причем выходы регистра 13 соединены с входами узла 12 со сдвигом на один разряд влево, т.е. число на его входах всегда в 2 раза больше числа, записанного в регистре 13. Поэтому узел 12 формирует частичный остаток по модулю Рi от числа 21. Следовательно, первым импульсом с выхода генератора 17 в регистр 13 записывается частичный остаток по модулю Рi от числа 21 и увеличивается содержимое счетчика 10 на единицу. Информационные выходы счетчика 10 подключены к адресным входам мультиплексоров 15 и 16. Поэтому на вторые выходы мультиплексора 16 поступает код частичного остатка от числа 21 по модулю Рi, который поступает на информационный вход второго разряда регистра 14, а с элемента 11 задержки через мельтиплексор 15 поступает импульс записи на вход записи второго разряда регистра 14. Период тактовых импульсов генератора 17 превышает время распространения сигнала через элемент 11 задержки, мультиплексор 15 и время записи в регистр 14. По каждому тактовому импульсу осуществляются запись очередного частичного остатка в регистр 13, увеличение содержимого счетчика 10 на единицу и запись очередного частичного остатка в соответствующие разряды регистра 14. После того, как будет сформирован самый старший частичный остаток, счетчик 10 выдает на свой выход переполнения импульс (объем счетчика 10 равен количеству разрядов регистра 1), который обнуляет триггер 19 и поступает на выход 5 сигнализации об окончании формирования. Количество остатков регистра 14, выделяемых для записи одного частичного остатка, равно максимально возможной разрядности частичных остатков для используемых модулей. Поэтому на выходах регистра 14 оказываются сформированными частичные остатки от чисел 2i(i=), которые поступают на информационные входы соответствующих блоков 3 элементов И.As soon as one is recorded in
Блок 4 суммирования по модулю работает следующим образом (фиг. 3). На управляющие входы каждого сумматора 21 блока поступает значение модуля в прямом, а через элемент НЕ 20 в инверсном коде. Блок 4 суммирования осуществляет суммирование по модулю P, поступающих с выходов элементов И 3 частичных остатков. Эта сумма в двоичном параллельном коде оказывается на его выходах и поступает на информационные выходы устройства. Сумматор 21 по модулю может быть выполнен по схеме, описанной в книге Пухальского Г.И., Новосельцевой Т.Ч. Проектирование дискретных устройств на интегральных микросхемах: Справочник. М.: Радио и связь, 1990, с. 202-204. Block 4 summation modulo works as follows (Fig. 3). The control inputs of each
Узел 12 формирования частичных остатков (фиг. 4) работает следующим образом. Сумматор 25, на разряд переноса которого постоянно подан уровень логической "1", совместно с элементом НE 24 выполняет функцию вычитания модуля из числа, старший разряд которого подается на вход элемента И 22. Если разность меньше нуля, то сумматор 26 добавляет к этой разности код модуля (т.е. входное число было меньше модуля), если разность больше нуля, то ключ 23 оказывается закрытым и эта разность поступает на выход без изменения через сумматор 26. Таким образом, на выходе узла формирования частичных остатков сформирован остаток от числа, воздействующего на его входы, по модулю Р. The
Claims (4)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU4935609 RU2020759C1 (en) | 1991-05-12 | 1991-05-12 | Device for forming remainder for random module of number |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU4935609 RU2020759C1 (en) | 1991-05-12 | 1991-05-12 | Device for forming remainder for random module of number |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2020759C1 true RU2020759C1 (en) | 1994-09-30 |
Family
ID=21574181
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SU4935609 RU2020759C1 (en) | 1991-05-12 | 1991-05-12 | Device for forming remainder for random module of number |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2020759C1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2696223C1 (en) * | 2018-12-04 | 2019-07-31 | федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" | Arithmetic logic unit for generating residual by arbitrary module from number |
-
1991
- 1991-05-12 RU SU4935609 patent/RU2020759C1/en active
Non-Patent Citations (2)
Title |
---|
Авторское свидетельство СССР N 1633495, кл. H 03M 7/18, 1991. * |
Авторское свидетельство СССР N 1658388, кл. H 03M 7/18, 1991. * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2696223C1 (en) * | 2018-12-04 | 2019-07-31 | федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" | Arithmetic logic unit for generating residual by arbitrary module from number |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US3548174A (en) | Random number generator | |
RU2020759C1 (en) | Device for forming remainder for random module of number | |
US3373269A (en) | Binary to decimal conversion method and apparatus | |
RU2029435C1 (en) | Combination recurrent former of remainders | |
RU2030104C1 (en) | Generator of pseudorandom sequences | |
RU2661797C1 (en) | Computing device | |
RU2007037C1 (en) | Recurrent generator of remainders of arbitrary modulo | |
RU2023346C1 (en) | Device for formation of remainder by optional modulus of number | |
RU2791441C1 (en) | Modulo accumulator | |
RU2012137C1 (en) | Device for forming remainder on arbitrary modulus | |
RU2791440C1 (en) | Pipeline generator of remainders by an arbitrary modulus | |
SU1539774A1 (en) | Pseudorandom series generator | |
SU1001097A1 (en) | Pseudorandom number generator | |
SU1013955A1 (en) | Pseudo-random number generator | |
RU2007036C1 (en) | Device which produces members of multiplicative groups of galois fields gf(p) | |
RU2045769C1 (en) | Multifunctional logical unit | |
SU1755270A1 (en) | Quasi-orthogonal signal generator | |
RU2110147C1 (en) | Device for calculation of modulo remainder | |
RU2007035C1 (en) | Device for generation of indexes of members of multiplicative groups of galois fields gf(p) | |
SU951668A1 (en) | Device for forming pulse trains | |
RU2029434C1 (en) | Device for formation of remainder by arbitrary modulus of number | |
RU1826128C (en) | Pseudorandom sequence generator | |
SU1667066A1 (en) | Device for numbers scaling | |
RU2007033C1 (en) | Device for generation of integer remainder of arbitrary modulo | |
SU1339584A1 (en) | Corrector |