RU2503992C2 - Устройство для сравнения чисел, представленных в системе остаточных классов - Google Patents
Устройство для сравнения чисел, представленных в системе остаточных классов Download PDFInfo
- Publication number
- RU2503992C2 RU2503992C2 RU2011139397/08A RU2011139397A RU2503992C2 RU 2503992 C2 RU2503992 C2 RU 2503992C2 RU 2011139397/08 A RU2011139397/08 A RU 2011139397/08A RU 2011139397 A RU2011139397 A RU 2011139397A RU 2503992 C2 RU2503992 C2 RU 2503992C2
- Authority
- RU
- Russia
- Prior art keywords
- numbers
- outputs
- signs
- sign
- polarity
- Prior art date
Links
Images
Landscapes
- Tests Of Electronic Circuits (AREA)
- Complex Calculations (AREA)
Abstract
Изобретение относится к вычислительной технике и может быть использовано в вычислительных системах, функционирующих в системе остаточных классов. Техническим результатом является повышение быстродействия устройства и сокращение аппаратных затрат. Устройство содержит входные регистры, схемы определения знака, схемы сдвига полярности чисел, просмотровые таблицы (память) для хранения констант и , сумматор и логический элемент «исключающее или», схему анализа знаков чисел. 3 ил.
Description
Изобретение относится к вычислительной технике и может быть использовано в блоках сравнения модулярных чисел вычислительных систем, функционирующих в системе остаточных классов.
Известны устройства для сравнения n разрядных чисел. (А.С. №675420, Б.И. №27, 1979) состоящее из триггеров, логических элементов, узлов хранения, регистров, дешифраторов, запоминающих матриц и счетчика. Однако данное устройство обладает большой сложностью и функционально не может быть использовано для сравнения модулярных чисел.
Наиболее близким по технической сущности к заявленному устройству является устройство для сравнения чисел (А.С. №541164, БИ №48, 1977.), содержащее решающие матрицы, блоки анализа полиадических коэффициентов алгебраического сравнения, блоки анализа полиадических коэффициентов сравнений по модулю, блок формирования знака и логические элементы «или».
Недостатками данного устройства является низкое быстродействие и его сложность.
Целью настоящего изобретения является повышения скорости сравнения чисел и сокращение аппаратных затрат.
Поставленная цель достигается тем, что в устройство вводятся просмотровые таблицы (память), схема сдвига полярности и сумматор. Рассмотрим новый метод сравнения модулярных чисел, обладающий высоким быстродействием и низкими аппаратными затратами оборудования
С целью упрощения процесса сравнения модулярных чисел рассмотрим приближенный метод, который позволяет абсолютно правильно реализовать основные классы процедур принятия решений: анализ наличия определенного значения в конкретном разряде; проверка равенства (неравенства) двух значений; сравнение двух значений (больше, меньше), которые обеспечивают решение основного круга задач, возникающих при аппаратной или программной реализации реальных процессов.
Суть приближенного метода сравнения модулярных чисел основана на использовании относительной величины исходного числа к полному диапазону Китайской теоремы об остатках, которая связывает позиционное число A с его представлением в остатках (α1, α2, …, αn), где αi - наименьшие неотрицательные вычеты числа, относительно модулей системы остаточных классов p1, p2, …, pn следующим выражением
Если (1) разделить на константу P, то получим приближенное значение
где
- константы выбранной системы, а αi - разряды числа, представленного в СОК, при этом значение каждой суммы будет в интервале [0, 1). Конечный результат суммы определяется после суммирования и отбрасывания целой части числа с сохранением дробной части суммы. Дробная часть может быть записана также как Amod1, потому что
. Количество разрядов дробной части числа определяется максимально возможной разностью между соседними числами. При необходимости точного сравнения необходимо вычислить значение (2), которое является эквивалентом преобразования из СОК в позиционную систему счисления. Для решения задач основных процедур принятия решения достаточно знать приблизительно значения чисел A и B по отношению к динамическому диапазону P, которое выполняется достаточно просто, но при этом правильно определяет соотношение A=B, A>B или A<B.
Пример 1. Пусть дана система оснований p1=2, p2=3, p3=5, p4=7, объем диапазона P=2·3·5·7=210. Допустим, что в заданной СОК будут представлены только положительные числа. Величины
,
,
,
. Сравним два числа A1=25 и А2=30, представленные в СОК по основаниям p1, p2, p3, p4, то есть A1=(1,1,0,4), A2=(0,0,0,2). Для этого найдем константы
.
По (2) получим
Рассмотрим случай, когда рабочий диапазон разбит на два интервала
- положительные числа, и
- отрицательные числа. В традиционных ЭВМ определение абсолютных величин двух чисел A1 и A2 производится путем вычисления A1-A2 и определения знака разности. В системе остаточных классов недостаточно определить знак путем
, так как A1-A2 могут выходить за диапазон
и это приведет к неправильному результату.
Пример 2. Вариант неправильного определения сравнения чисел на основе определения знака.
Пусть
,
очевидно, что A1>A2. На основании (2) определим
и
. Основания СОК выберем такими же, как и в первом примере. Тогда A1=(0,1,0,0) и A2=(0,2,0,0) - дополнительный код отрицательного числа. Находим
,
.
Следовательно сравнение приведет к неверному результату A1<A2.
Для правильного определения сравнения чисел необходимо проверить знаки A1 и A2 и тогда алгоритм сравнения будет иметь вид:
1. Определить знаки A1 и A2.
2. Если A1 и A2 без знаков, то положительный знак разности относительных величин означает большее число.
Таким образом, сравнение чисел со знаком требует предварительного анализа знаков сравниваемых чисел.
Известно, что при кодировании дополнительным кодом, отрицательная часть динамического диапазона находится у верхнего предела полного диапазона. Положительные числа из дополнительного диапазона отображаются на область
при нечетных P и на область
при четных P. Отображение динамического диапазона на соответствующую область для избыточного кода СОК показано на рисунке 1.
Это обстоятельство может привести к ошибке сравнения, так как отрицательные числа попадают в верхнюю часть полного диапазона, и все отрицательные числа будут давать ошибки, что не соответствует действительности в силу разнесения динамического диапазона.
Для преодоления этой трудности необходимо произвести сдвиг отрицательной области путем вращения остаточного кольца в положение, указанное на рисунке 2. Пунктиром показана область, которая перенесена в начало диапазона.
В результате отрицательные числа будут отображены в начальной части динамического диапазона.
Показанное на рисунке 2 вращение, называется сдвигом полярности и его можно осуществить путем прибавления перед сравнением модулярных чисел константы
при нечетном P или
при четных P к каждому A∈[0, P).
Если
, то сдвиг полярности в пределах СОК оказывается простым остатком, определяемом по формуле
, в которой αic обозначает остаточные цифры после сдвига полярности.
Пример 3. Сравнить модулярные числа разных знаков A1 и -A2. Система оснований СОК такая же, как и в примере 1: p1=2, p2=3, p3=5, p4=7.
Пусть число A1=17=(1,2,2,3), A2=-19=(1,1,4,5). Тогда дополнительный код A2=(p1-1,p2-1,p3-4.p4-5)=(1,2,1,2). Требуется сравнить числа A1 и A2.
Проверка знака числа A1. Для определения знака числа A1 сравним его с константой
. Тогда относительная величина числа A1 по отношению к величине числа К определяется как
Представление константы
. Далее находим
. Отсюда
. Разница положительная, то есть число
, поэтому число A1 входит в первый интервал и является положительным.
Проверка знака числа A2 проходит аналогично:
.
. Разность отрицательная и число A2 входит во второй интервал, очевидно что оно является отрицательным. Для правильного сравнения чисел A1 и A2 необходимо провести сдвиг полярности чисел A1 и A2, так как число A2 является отрицательным. После сдвига получаем
и
.
Рассмотренные методы определения таких позиционных характеристик модулярного кода, как: определение знака числа и сравнение чисел, показали, в отличие от известных, простоту их вычисления, так как для их реализации не используется вычисление коэффициентов ОПСС, которое требует больших аппаратных и временных затрат. По этой причине данный метод представляет собой особую важность и является одним из лучших решений на настоящее время. Перечисленные операции являются важнейшими для машинной модулярной арифметики и их применение может дать значительные преимущества не только в таких приложениях, в которых основная доля вычислений приходится на точное умножение, возведение в степень больших чисел в сочетании со сложением и вычитанием, но и в которых довольно часто появляется необходимость сравнения и определения знака числа. Известно, что теорема кодирования Сабо гласит, что нет лучших методов определения позиционных характеристик, при которых не используется их однозначность, чем перевод чисел из СОК в ОПСС, поскольку величины числа в модулярном представлении существенным образом зависят от всех остатков числа. Однако проведенные исследования по определению приблизительных характеристик, которые решают задачу формирования конструкций сравнения, не отвечают утверждению указанной теоремы Сабо. Таким образом можно сделать вывод о том, что теорема Сабо работает только при точных методах.
Схема модулярного сравнения чисел, основанная на принципах использования относительных величин приведена на рисунке 3 и содержит: входные регистры 1, 9 для хранения чисел, соответствующие A и B которые поступают по шинам 15 и 16; схема определения знаков чисел A и B, соответственно, 2 и 8, схема сдвига полярности 3, 7, соответственно чисел A и B, просмотровые таблицы 5, 7, содержание таблиц для хранения произведения констант и разрядов СОК
и
соответственно, таблицы 5-1, 5-3, 5-n для чисел A и 6-1, 6-2, 6-n для чисел B, сумматор 10: логический элемент «исключающее или» 4; схемы анализа знака 11 с выходами: соответственно, A=B 12, A>B 13, A<B 14. Работа устройства для сравнения модулярных чисел осуществляется следующим образом.
На входные регистры 1, 9 по шинам 15, 16, соответственно, поступают исходные числа A и B, представленные в СОК, которые необходимо сравнить. Выходы регистров соединены с 2, 3 и 7, 8, соответственно, для определения знака чисел A и B и сдвига полярности чисел A и B. Выходные сигналы схем определения знаков чисел 2 и 8, соответственно чисел A и B (0 - положительное число, 1 - отрицательное число), поступают на вход логического элемента «исключающего или» 4, который в случае разных знаков формирует сигнал сдвига полярности чисел, соответствующий константе Ci, и подает на вход схем 3 и 7, где происходит сдвиг полярности чисел. Выходы систем схем сдвига полярности 3 и 7, соответственно для чисел А и В, являются адресными входами просмотровых таблиц 5 и 6,
Элементы памяти, просмотровые таблицы (LUT - таблицы) 5-1, 5-2 5-n и 6-1, 6-2, 6-n, соответственно, хранят произведения
и
прием для числа β чисел представляется в дополнительный код, который поступает на вход сумматора 10, в котором происходит суммирование в дополнительном коде. Результат суммирования поступает на блок анализа 11, где определяется: равенство чисел A=B шина 12, A>B шина 13 и A<B шина 14.
Пример 4. Пусть дана система оснований p1=2, p2=3, p3=5, p4=7. Сравнить модулярные числа A=(1,2,2,3) и B=(1,2,1,2). Исходные числа находятся в регистрах RGA и RGB, которые поступают на входы схем определения знака числа СОЗЧ-А и СОЗЧ-В. В этих схемах происходит сравнение исходных чисел с константой
.
Разность положительная, то есть
, поэтому число А входит в первый интервал, и является положительным.
Разность отрицательная, поэтому число B входит во второй интервал и является отрицательным.
Результат анализа знаков чисел A и B образуется на выходе элемента исключающее «или» который поступает на вход схем сдвига полярности ССП-А и ССП-В. На выходах схем сдвига полярности образуются данные соответственно A=(1,2,2,3)+(1,0,0,0)=(0,2,2,3) и B=(1,2,1,2)+(1,0,0,0)=(0,2,1,2). Выходные данные схем сдвига полярности являются адресными входами просмотровых таблиц LUT-A и LUT-B, согласно которых осуществляется выборка значений констант
, в условиях примера эти значения будут равны для LUT-A (0;0,3333·2;0,6·2;0,5714·3) и для LUT-B (0;0,3333·2;0,6·1;0,5714·2). Выходные сигналы просмотровых таблиц LUT-A и LUT-B поступают на вход сумматора. В результате суммирования получим
Разность положительная, так как дополнительный код положительного числа равен самому числу, следовательно A>B. Действительно, число A=17, B=-19.
Результаты сумматора анализируются в схеме сумматора, при этом:
если разность равна 0, то A=B,
если разность положительная, то A>B,
если разность отрицательная, то A<B.
В случае, если сравниваются положительные числа, то из схемы исключаются схемы определения знаков чисел. Тогда логическая глубина схемы (количество последовательно включенных элементов) будет n+3, где n - количество суммирований в сумматоре, при этом n определяется количеством модулей в системе.
Если же использовать рекурсивное сдваивание, тогда логическая глубина определяется выражением [log2n]+3. В известных схемах логическая глубина с учетом определения коэффициентов ОПСС определяется как 2n+5.
Claims (1)
- Устройство для сравнения чисел, представленных в системе остаточных классов, содержащее схему анализа знаков чисел, отличающееся тем, что в него введены схемы определения знаков чисел A и B, схемы сдвига полярности чисел, просмотровые таблицы (память) для хранения констант
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2011139397/08A RU2503992C2 (ru) | 2011-09-27 | 2011-09-27 | Устройство для сравнения чисел, представленных в системе остаточных классов |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2011139397/08A RU2503992C2 (ru) | 2011-09-27 | 2011-09-27 | Устройство для сравнения чисел, представленных в системе остаточных классов |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2011139397A RU2011139397A (ru) | 2013-04-10 |
RU2503992C2 true RU2503992C2 (ru) | 2014-01-10 |
Family
ID=49151602
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2011139397/08A RU2503992C2 (ru) | 2011-09-27 | 2011-09-27 | Устройство для сравнения чисел, представленных в системе остаточных классов |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2503992C2 (ru) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2557444C1 (ru) * | 2014-07-16 | 2015-07-20 | Федеральное государственное бюджетное образовательное учреждение высшего образования "Вятский государственный университет" | Устройство для сравнения чисел в системе остаточных классов на основе интервально-позиционных характеристик |
RU2698413C1 (ru) * | 2018-11-26 | 2019-08-26 | Анастасия Сергеевна Коржавина | Устройство для сравнения чисел в системе остаточных классов |
RU2747371C1 (ru) * | 2020-10-22 | 2021-05-04 | федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" | Устройство определения знака числа, представленного в системе остаточных классов |
RU2751992C1 (ru) * | 2020-10-22 | 2021-07-21 | федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" | Устройство сравнения чисел, представленных в системе остаточных классов |
EA038389B1 (ru) * | 2020-04-14 | 2021-08-20 | федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" | Устройство сравнения и определения знака чисел, представленных в системе остаточных классов |
RU2767450C1 (ru) * | 2021-04-01 | 2022-03-17 | федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" | Способ определения знака числа в системе остаточных классов |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU541164A1 (ru) * | 1974-05-06 | 1976-12-30 | Ставропольское Высшее Военное Командное Училище Связи | Устройство дл спавнени чисел |
SU1619248A1 (ru) * | 1988-12-29 | 1991-01-07 | Институт кибернетики им.В.М.Глушкова | Устройство дл сравнени чисел в системе остаточных классов |
US20080155004A1 (en) * | 2006-12-25 | 2008-06-26 | Fujitsu Limited | Arithmetic circuit, arithmetic method, and information processing device |
US7523151B1 (en) * | 2000-05-12 | 2009-04-21 | The Athena Group, Inc. | Method and apparatus for performing computations using residue arithmetic |
RU2374678C2 (ru) * | 2007-10-29 | 2009-11-27 | Ставропольский военный институт связи ракетных войск | Нейронная сеть для обнаружения ошибок в симметричной системе остаточных классов |
-
2011
- 2011-09-27 RU RU2011139397/08A patent/RU2503992C2/ru not_active IP Right Cessation
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU541164A1 (ru) * | 1974-05-06 | 1976-12-30 | Ставропольское Высшее Военное Командное Училище Связи | Устройство дл спавнени чисел |
SU1619248A1 (ru) * | 1988-12-29 | 1991-01-07 | Институт кибернетики им.В.М.Глушкова | Устройство дл сравнени чисел в системе остаточных классов |
US7523151B1 (en) * | 2000-05-12 | 2009-04-21 | The Athena Group, Inc. | Method and apparatus for performing computations using residue arithmetic |
US20080155004A1 (en) * | 2006-12-25 | 2008-06-26 | Fujitsu Limited | Arithmetic circuit, arithmetic method, and information processing device |
RU2374678C2 (ru) * | 2007-10-29 | 2009-11-27 | Ставропольский военный институт связи ракетных войск | Нейронная сеть для обнаружения ошибок в симметричной системе остаточных классов |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2557444C1 (ru) * | 2014-07-16 | 2015-07-20 | Федеральное государственное бюджетное образовательное учреждение высшего образования "Вятский государственный университет" | Устройство для сравнения чисел в системе остаточных классов на основе интервально-позиционных характеристик |
RU2698413C1 (ru) * | 2018-11-26 | 2019-08-26 | Анастасия Сергеевна Коржавина | Устройство для сравнения чисел в системе остаточных классов |
EA038389B1 (ru) * | 2020-04-14 | 2021-08-20 | федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" | Устройство сравнения и определения знака чисел, представленных в системе остаточных классов |
RU2747371C1 (ru) * | 2020-10-22 | 2021-05-04 | федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" | Устройство определения знака числа, представленного в системе остаточных классов |
RU2751992C1 (ru) * | 2020-10-22 | 2021-07-21 | федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" | Устройство сравнения чисел, представленных в системе остаточных классов |
RU2767450C1 (ru) * | 2021-04-01 | 2022-03-17 | федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" | Способ определения знака числа в системе остаточных классов |
Also Published As
Publication number | Publication date |
---|---|
RU2011139397A (ru) | 2013-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2503992C2 (ru) | Устройство для сравнения чисел, представленных в системе остаточных классов | |
JP7144423B2 (ja) | 計算における誤り訂正 | |
US5317753A (en) | Coordinate rotation digital computer processor (cordic processor) for vector rotations in carry-save architecture | |
Torabi et al. | Low-power/cost RNS comparison via partitioning the dynamic range | |
RU2503995C2 (ru) | Устройство для определения знака модулярного числа | |
Chang et al. | Area-efficient and fast sign detection for four-moduli set RNS {2 n− 1, 2 n, 2 n+ 1, 22 n+ 1} | |
Wu et al. | Normalized stability: A cross-level design metric for early termination in stochastic computing | |
Tay et al. | New algorithm for signed integer comparison in four-moduli superset {2 n, 2 n− 1, 2 n+ 1, 2 n+ 1− 1} | |
US20230086090A1 (en) | Methods and Apparatus for Quotient Digit Recoding in a High-Performance Arithmetic Unit | |
US10735149B2 (en) | Eye diagram measurement device and eye diagram measurement method | |
Chervyakov et al. | Computation of positional characteristics of numbers in RNS based on approximate method | |
CN103984519B (zh) | 用于检验数字乘法器的方法和装置 | |
Zhao et al. | An fpga-based hardware accelerator of ransac algorithm for matching of images feature points | |
US3287546A (en) | Parity prediction apparatus for use with a binary adder | |
Mohan et al. | Error Detection, Correction and Fault Tolerance in RNS-Based Designs | |
RU2698413C1 (ru) | Устройство для сравнения чисел в системе остаточных классов | |
RU2559771C2 (ru) | Устройство для основного деления модулярных чисел | |
US8005880B2 (en) | Half width counting leading zero circuit | |
US10133624B2 (en) | Fault localization and error correction method for self-checking binary signed-digit adder and digital logic circuit for the method | |
US20100146031A1 (en) | Direct Decimal Number Tripling in Binary Coded Adders | |
Babenko et al. | The accuracy estimation of the interval-positional characteristic in residue number system | |
RU2483346C1 (ru) | Устройство для обнаружения переполнения динамического диапазона, определения ошибки и локализации неисправности вычислительного канала в эвм, функционирующих в системе остаточных классов | |
US8933731B2 (en) | Binary adder and multiplier circuit | |
RU2751992C1 (ru) | Устройство сравнения чисел, представленных в системе остаточных классов | |
Afriyie et al. | A Novel Approach for the Detection and Correction of Single Bit Error in RRNS Architecture |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
HE9A | Changing address for correspondence with an applicant | ||
HZ9A | Changing address for correspondence with an applicant | ||
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20160928 |