RU2012041C1 - Device for computing sums of pair products - Google Patents
Device for computing sums of pair products Download PDFInfo
- Publication number
- RU2012041C1 RU2012041C1 SU5046286A RU2012041C1 RU 2012041 C1 RU2012041 C1 RU 2012041C1 SU 5046286 A SU5046286 A SU 5046286A RU 2012041 C1 RU2012041 C1 RU 2012041C1
- Authority
- RU
- Russia
- Prior art keywords
- inputs
- input
- output
- outputs
- matrix
- Prior art date
Links
Images
Landscapes
- Complex Calculations (AREA)
Abstract
Description
Изобретение относится к вычислительной технике и может быть использовано в процессорах обработки сигналов, в цифровых фильтрах и т. п. The invention relates to computer technology and can be used in signal processing processors, in digital filters, etc.
Цель изобретения - повышение отказоустойчивости устройства для вычисления сумм парных произведений. The purpose of the invention is to increase the fault tolerance of the device for calculating the sums of paired products.
Сущность изобретения заключается в следующем. The invention consists in the following.
Основным достоинством системы остаточных классов (СОК) является независимость образования разрядов числа, в силу чего каждый разряд несет информацию обо всем исходном числе. Отсюда вытекает возможность их переллельной обработки. Это позволяет привлечь новые методы арифметического контроля. При введении дополнительного контрольного основания остаток, взятый по этому основанию, несет избыточную информацию об исходном числе, что позволяет обнаружить и исправить ошибки в цифрах по рабочим основаниям. The main advantage of the system of residual classes (RNS) is the independence of the formation of digits of the number, whereby each digit carries information about the entire initial number. This implies the possibility of their parallel processing. This allows you to attract new methods of arithmetic control. With the introduction of an additional control base, the balance taken on this base carries redundant information about the original number, which allows you to detect and correct errors in numbers on working grounds.
Любое число N, представленное в СОК как N= (α1α2. . . αn, αn+1), может быть выражено как
N = -rPn, (1) где βi - ортогональные базисы;
r - ранг числа;
Pn= pi - полный диапазон (2);
pi - основания СОК, i= ;
n - число рабочих оснований;
Pn+1 - контрольное основание.Any number N represented in the RNS as N = (α 1 α 2 ... Α n , α n + 1 ) can be expressed as
N = -rP n , (1) where β i are orthogonal bases;
r is the rank of the number;
P n = p i is the full range (2);
p i - the base of the RNS, i = ;
n is the number of working bases;
P n + 1 - control base.
В то же время
Pn= pi·pn+1= Р·pn+1, (3) где Р - рабочий диапазон.In the same time
P n = p i · p n + 1 = P · p n + 1 , (3) where P is the operating range.
Число N считается правильным, если N<Р. Другими словами
S = = 0, (4) где S - номер интервала, в котором находится число N.The number N is considered correct if N <P. In other words
S = = 0, (4) where S is the number of the interval in which the number N.
Подставим в равенство (4) равенство (1), тогда
S = = - rpn+1= . (5)
Известно, что βi= РRi+ Ai, где Ri= ; Ai - остаток от деления.We substitute equality (1) into equality (4), then
S = = - rp n + 1 = . (5)
It is known that β i = PR i + A i , where R i = ; A i is the remainder of the division.
Но Ai= βi I, где βi I - ортогональный базис с основанием p1, p2 . . . pn.But A i = β i I , where β i I is the orthogonal basis with base p 1 , p 2 . . . p n .
Полученные равенства подставляем в формулу (5), тогда
S = +
Но = r′ - ранг числа в системе по рабочим основаниям P1, P2, . . . Pn.We substitute the obtained equalities into formula (5), then
S = +
But = r ′ is the rank of a number in the system for working reasons P 1 , P 2 ,. . . P n
Так как выбранная система является упорядоченной (P1<P2 . . . <Pn<Pn+1) и величина Pn+1>2Pn Pn-1, то по величине S можно однозначно определить величину Δ коррекции результата. Например, пусть имеем систему оснований P1= 3, Р2= 5, Р3= 31. (контрольные основание Р3).Since the selected system is ordered (P 1 <P 2 .. <P n <P n + 1 ) and the quantity P n + 1 > 2P n P n-1 , the value Δ of the result correction can be uniquely determined from the value of S. For example, suppose we have a base system P 1 = 3, P 2 = 5, P 3 = 31. (control base P 3 ).
Тогда Pn= pi= 3·5·31= 465;
Р= p1·p2= 3·5= 15.Then P n = p i = 3 · 5 · 31 = 465;
P = p 1 · p 2 = 3 · 5 = 15.
Вычислим ортогональные базисы
β 1= 310; β2= 186; β 3= 435.We calculate the orthogonal bases
β 1 = 310; β 2 = 186; β 3 = 435.
Вычислим коэффициенты
β1= 15·R1+= 15·20+10;
β2= 15·R2+= 15·12+6;
β3= 15·R3= 15·29.We calculate the coefficients
β 1 = 15 R 1 + = 15 · 20 + 10;
β 2 = 15 R 2 + = 15 · 12 + 6;
β 3 = 15 · R 3 = 15 · 29.
Получаем
R1= 20, R2= 12, R3= 29, β1 I= 10, β2 I= 6
Возьмем N= 8. В СОК оно имеет вид N= (2, 3, 8).We get
R 1 = 20, R 2 = 12, R 3 = 29, β 1 I = 10, β 2 I = 6
Take N = 8. In the RNS, it has the form N = (2, 3, 8).
Вычислим значение
S = +20·2+12·3+29·8= 0.Calculate the value
S = + 20 · 2 + 12 · 3 + 29 · 8 = 0.
Допустим, что произошла ошибка и получено число N I= (1, 3, 8).Suppose that an error has occurred and the number N I = (1, 3, 8) has been obtained.
Тогда
S = +20·1+12·3+29·8= 10.Then
S = + 20 · 1 + 12 · 3 + 29 · 8 = 10.
В соответствии со значением S, поданным на вход памяти, на выходе памяти появляется число, которое необходимо сложить с :
Nист= +.In accordance with the value of S applied to the memory input, a number appears on the memory output, which must be added to :
N East = + .
В нашем примере, память работает в соответствии с таблицей. In our example, the memory works according to the table.
В соответствии с таблицей в первом примере имеем
N= 8, Nист= 8+0= 8,
во втором примере
= 13, Nист= 13+10= 8.According to the table in the first example, we have
N = 8, N East = 8 + 0 = 8,
in the second example
= 13, N East = 13 + 10 = 8.
Ошибка исправлена. The bug is fixed.
На фиг. 1 представлена функциональная схема устройства для вычисления сумм парных произведений; на фиг. 2 - функциональная схема блока коррекции ошибки. In FIG. 1 shows a functional diagram of a device for calculating the sums of paired products; in FIG. 2 is a functional block diagram of the error correction block.
Устройство для вычисления сумм парных произведений (фиг. 1) содержит блоки вычисления парных произведений по произвольному модулю 1, 2 и по контрольному модулю 3, каждый из которых содержит регистр 4, память 5, матричный сумматор 6, матричный умножитель 7 и три группы буферных регистров 8, 9, 10, преобразователь 11 кода СОК в позиционный код, блок 12 коррекции ошибки, модульный сумматор 13, счетчик 14 тактов и выход 15 результата устройства. A device for calculating the sums of paired products (Fig. 1) contains blocks for calculating paired products for arbitrary module 1, 2 and control module 3, each of which contains a register 4, memory 5, matrix adder 6, matrix multiplier 7 and three groups of buffer registers 8, 9, 10, a code converter 11 for the RNS code into a positional code, an error correction unit 12, a modular adder 13, a clock counter 14 and an output 15 of the result of the device.
Блок 12 коррекции ошибки (фиг. 2) содержит четыре регистра 16-19, коммутатор 20, два матричных умножителя 21, 22, модульный сумматор 23, счетчик 24 тактов переходов, три памяти 25, 26, 27, информационные входы 28, 29, 30, 31 блока, выход 32 блока и вход 33 разрешения работы блока. The error correction block 12 (Fig. 2) contains four registers 16-19, a
Памяти, матричные умножители, матричные сумматоры в устройстве выполнены в виде постоянных запоминающих устройств (ПЗУ). The memory, matrix multipliers, matrix adders in the device are made in the form of read-only memory (ROM).
Устройство работает следующим образом. The device operates as follows.
В информационные регистры 4 блоков 1, 2, 3 до начала работы записаны числа в коде СОК. Счетчик тактов формирует адреса для считывания коэффициентов, которые хранятся в блоках 1, 2, 3 в памяти 5 в коде СОК. Содержимое регистров 4 в каждом из блоков 1, 2, 3 перемножается с коэффициентами с помощью матричных умножителей 7. Результат умножения записывается в первую группу буферных регистров 8, содержимое которых складывается с содержимым буферных регистров 10 третьей группы (в первом цикле происходит сложение с нулем). Сложение осуществляют матричные сумматоры 6 в каждом из блоков 1, 2, 3. Сумма записывается в буферные регистры 10 третьей группы. С выходов буферных регистров 10 блоков 1 и 2 результат подается на входы преобразователя 11 кода СОК в позиционный код и на информационные входы блока 12 коррекции ошибки, на третий вход которого подается также информация с выходов буферных регистров 10 блока 3. Счетчик тактов по окончании суммирования парных произведений выдает разрешающий сигнал на вход разрешения преобразователя 11 и блока 12 коррекции ошибки. С второго выхода преобразователя 11 на четвертый вход блока 12 коррекции ошибки поступает сигнал о переходе через Р. Структура преобразователя 11 аналогична прототипу. Результаты с выходов преобразователя 11 кода СОК в позиционный код и блока 12 коррекции ошибки подаются на входы модульного сумматора 13, где и происходит сложение. Выход модульного сумматора 13 является выходом 15 устройств. Слагаемые кода СОК в информационные регистры 4 блоков 1, 2, 3 могут быть записаны из аналого-цифрового преобразователя. In the information registers of 4 blocks 1, 2, 3, before starting work, numbers are written in the code of the RNS. The clock counter generates addresses for reading coefficients, which are stored in blocks 1, 2, 3 in memory 5 in the code RNS. The contents of registers 4 in each of blocks 1, 2, 3 are multiplied with the coefficients using matrix multipliers 7. The result of the multiplication is written to the first group of buffer registers 8, the contents of which are added to the contents of the buffer registers 10 of the third group (addition to zero in the first cycle) . Addition is carried out by matrix adders 6 in each of blocks 1, 2, 3. The sum is written into buffer registers 10 of the third group. From the outputs of the buffer registers 10 of blocks 1 and 2, the result is fed to the inputs of the converter 11 of the RNS code into a positional code and to the information inputs of the error correction block 12, the third input of which also contains information from the outputs of the buffer registers 10 of block 3. The clock counter at the end of the pairing works gives an enable signal to the input of the resolution of the Converter 11 and the block 12 error correction. From the second output of the converter 11 to the fourth input of the error correction block 12, a signal is received about the transition through R. The structure of the converter 11 is similar to the prototype. The results from the outputs of the Converter 11 code RNS into a positional code and block 12 error correction are fed to the inputs of the modular adder 13, where the addition occurs. The output of the modular adder 13 is the output of 15 devices. The components of the SOK code in the information registers of 4 blocks 1, 2, 3 can be written from an analog-to-digital converter.
Блок 12 коррекции ошибки работает следующим образом. Block 12 error correction works as follows.
Значения α1, α2иα3 записываются в соответствующие регистры 16, 17, 18. Значения α1иα2 последовательно через коммутатор 20 подаются на умножитель 21, на второй которого поступает величина R1 и R2 с выхода памяти 25 ПЗУ. Значение α3 с выхода регистра 18 поступает на матричный умножитель 22, где производится умножение α3˙R3. Значения α1˙R1иα3˙R3подаются на вход модульного сумматора 23, где складываются. Результат заносится в регистр 19. Затем этот результат, который является промежуточным, поступает на вход сумматора 23, где суммируется со значением α2˙R2 . Полученный результат заносится в регистр 19, а затем снова подается на вход сумматора для сложения со значением rI , которое подается с выхода счетчика 24 числа переходов. Конечный результат поступает на вход памяти 26, на выходе которой появляется значение коррекции, которое подается на выход 32 блока коррекции ошибки. The values of α 1 , α 2 and α 3 are recorded in the
Claims (2)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU5046286 RU2012041C1 (en) | 1992-06-08 | 1992-06-08 | Device for computing sums of pair products |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU5046286 RU2012041C1 (en) | 1992-06-08 | 1992-06-08 | Device for computing sums of pair products |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2012041C1 true RU2012041C1 (en) | 1994-04-30 |
Family
ID=21606283
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SU5046286 RU2012041C1 (en) | 1992-06-08 | 1992-06-08 | Device for computing sums of pair products |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2012041C1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
MD3870G2 (en) * | 2007-03-06 | 2009-10-31 | Генадие БОДЯН | On-line storage with signature self-testing and analysis |
RU2622881C1 (en) * | 2016-07-05 | 2017-06-20 | федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" | Device for calculating the amount of steam works in the polynomial system of the classes of deductions |
RU2711731C1 (en) * | 2019-07-19 | 2020-01-21 | федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" | Apparatus for calculating sums of pair products |
-
1992
- 1992-06-08 RU SU5046286 patent/RU2012041C1/en active
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
MD3870G2 (en) * | 2007-03-06 | 2009-10-31 | Генадие БОДЯН | On-line storage with signature self-testing and analysis |
RU2622881C1 (en) * | 2016-07-05 | 2017-06-20 | федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" | Device for calculating the amount of steam works in the polynomial system of the classes of deductions |
RU2711731C1 (en) * | 2019-07-19 | 2020-01-21 | федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" | Apparatus for calculating sums of pair products |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2012041C1 (en) | Device for computing sums of pair products | |
RU2711731C1 (en) | Apparatus for calculating sums of pair products | |
RU2270475C2 (en) | Device for calculating sums of paired results of multiplications in polynomial system of residual classes | |
SU1619255A1 (en) | Division device | |
SU1314353A1 (en) | Device for tracking contours of two-dimensional objects | |
SU593211A1 (en) | Digital computer | |
SU1418696A1 (en) | Device for implementing boolean functions | |
SU429423A1 (en) | ARITHMETIC DEVICE | |
SU1809438A1 (en) | Divider | |
SU1709301A1 (en) | Division device | |
SU752339A1 (en) | Reversible binary counter with checking | |
SU1424011A1 (en) | Associative adder | |
SU1264168A1 (en) | Pseudorandom sequence generator | |
SU883898A1 (en) | Device for extracting n-th root | |
SU1388891A1 (en) | Device for digital filtering | |
SU1517026A1 (en) | Dividing device | |
SU926661A1 (en) | Device for checking consecutive action adder-substractor | |
SU1056183A1 (en) | Device for dividing numbers | |
SU1425657A1 (en) | Dividing device | |
SU691865A1 (en) | Apparatus for resolving difference boundary problems | |
Carter et al. | The Application of the national accounting machine to the solution of first-order differential equations | |
SU1711151A1 (en) | Device to divide the numbers | |
SU1160454A1 (en) | Device for calculating values of simple functions | |
SU1390608A1 (en) | Divider | |
SU1012245A1 (en) | Multiplication device |