RU2767450C1 - Способ определения знака числа в системе остаточных классов - Google Patents
Способ определения знака числа в системе остаточных классов Download PDFInfo
- Publication number
- RU2767450C1 RU2767450C1 RU2021108953A RU2021108953A RU2767450C1 RU 2767450 C1 RU2767450 C1 RU 2767450C1 RU 2021108953 A RU2021108953 A RU 2021108953A RU 2021108953 A RU2021108953 A RU 2021108953A RU 2767450 C1 RU2767450 C1 RU 2767450C1
- Authority
- RU
- Russia
- Prior art keywords
- stage
- modules
- value
- sign
- residual classes
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/60—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
- G06F7/72—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Complex Calculations (AREA)
Abstract
Изобретение относится к вычислительной технике. Технический результат заключается в расширении функциональности путем независимости от порядка модулей. Способ определения знака числа в системе остаточных классов, пригодный для реализации средствами вычислительной техники, включает для системы остаточных классов с модулями , , …, и треугольной матрицы с элементами , где , , на основе входного значения числа ), где – остаток от деления числа на модуль , вычисление промежуточных значений вычислительной ступенью, причем я ступень вычисляет выражение для , берут нечетные модули, на основе входного значения ) вычисляют вспомогательное значение где и , каждая я ступень дополнительно вычисляет выражение для , после вычисления значений -й вычислительной ступенью значения и сравнивают соответственно с /2 и /2 и если >/2 или одновременно =/2 и /2, то считают, что исходное число
Description
Изобретение относится к вычислительной технике и предназначено для определения знака числа, представленного в системе остаточных классов.
Известно устройство для определения знаков чисел в системе остаточных классов (патент РФ 2557446, опубл. 20.07.2015), содержащее группу входных регистров для хранения числа, представленного в коде симметричной системы остаточных классов, энергонезависимые регистры для хранения интервально-позиционной характеристики константы - наибольшего положительного числа в симметричной системе остаточных классов, блок вычисления интервально-позиционной характеристики, блок проверки правильности интервально-позиционной характеристики, блок сравнения интервально-позиционных характеристик, двухвходовой двоичный дешифратор.
Недостатком данного устройства является использование ресурсоемких операций деления с числами с плавающей точкой, что снижает скорость работы и требует округлений.
Известно устройство для определения знака модулярного числа (патент РФ 2503995, опубл. 10.01.2014), содержащее входные регистры для хранения разрядов исходного числа, блоки умножения, выполненные в виде памяти для хранения произведений и параллельный сумматор.
Недостатком данного устройства является низкая точность, связанная с представлением чисел в формате с плавающей точкой, а именно с ошибками округления.
Наиболее близким к заявляемому изобретению является способ, на котором основано устройство определения знака числа, представленного в системе остаточных классов с модулями , (заявка на изобретение РФ №2020134778, дата подачи 22.10.2020), содержащее входов остатка, где – количество модулей системы остаточных классов, регистров для хранения разрядов исходного числа, вычислительную ступень, при этом -я вычислительная ступень, где , содержит сумматоров по модулю и блоков умножения на веса по модулю , где и – мультипликативная инверсия модуля по модулю . Старший бит выхода первого блока умножения на веса по модулю является выходом знака устройства.
Работа данного устройства основана на следующем математическом аппарате.
В системе остаточных классов (СОК) любое число однозначно представляется набором остатков от деления числа на взаимно простые модули СОК , где , - рабочий диапазон СОК, . Возьмем систему остаточных классов с модулями . Знак в системе остаточных классов чаще всего вводится разбиением диапазона на две части, тогда с учетом динамического диапазона в СОК можно представить числа , если четное.
Функция определения знака числа, представленного в СОК, определяется следующим образом:
Используя свойство и формулу (1) определение знака сводится двухэтапному алгоритму: первый этап - деление на , второй этап - деление на , формально математически определяется следующей формулой
Запишем процесс определения в виде алгоритма:
Алгоритм 1. Определение знака числа
На первом этапе вычисляется с помощью деления на модули СОК соответственно. На втором этапе вычисляется .
Недостатком данного способа являются органичные функциональные возможности, связанные с ограничениями, накладываемыми на модули СОК, а именно упорядоченность модулей по возрастанию и представление наибольшего модуля в виде степени 2.
Техническим результатом заявляемого изобретения является расширение функциональности, а именно независимость от порядка модулей.
Данный технический результат достигается тем, что в способе определения знака числа в системе остаточных классов, пригодном для реализации средствами вычислительной техники, включающем для системы остаточных классов с модулями , , …, и треугольной матрицы с элементами где , на основе входного значения числа ), где – остаток от деления числа на модуль , вычисление промежуточных значений вычислительной ступенью, причем я ступень вычисляет выражение для , берут нечетные модули, на основе входного значения ) вычисляют вспомогательное значение где и , каждая я ступень дополнительно вычисляет выражение для , после вычисления значений -ой вычислительной ступенью значения и сравнивают соответственно с /2 и /2 и если >/2 или одновременно =/2 и /2, то считают, что исходное число отрицательное, иначе положительное.
Сущность способа основана на следующем математическом аппарате. Берется СОК с нечетными модулями , тогда функция знака имеет вид
Чтобы определить знак, рассмотрим две функции, и , где , тогда функцию знака числа можно получить из выражения
Рассмотрим пример. Возьмем систему остаточных классов с модулями , , . В данной системе динамический диапазон и число будет положительным, если , т.е. , а отрицательным для , т.е. .
Рассмотрим значения на границе перехода от отрицательных к положительным числам.
Запишем функцию определения знака в виде алгоритма для работы с числами, представленными в системе остаточных классов. Данный алгоритм основан на последовательном приближении значения на основе свойства .
Алгоритм 2. Определение знака числа
3.1. Возвратить 1
4. Иначе
4.1 Возвратить 0
Для удобства запишем вычисления (n-1) вычислительной ступени в виде таблицы, где означает, что берется значение , вычисленное на вычислительной ступени.
Вычислительная ступень | Операция | 17 | 19 | 23 | 31 | |
8 | 9 | 11 | 15 | |||
16 | 18 | 22 | 9 | |||
1 | 0 | 1 | 3 | 7 | ||
- | 9 | 11 | 15 | |||
0 | 2 | 6 | 24 | |||
- | 18 | 22 | 16 | |||
2 | - | 0 | 2 | 6 | ||
- | - | 11 | 15 | |||
- | 0 | 4 | 29 | |||
- | - | 22 | 26 | |||
3 | - | - | 0 | 4 | ||
- | - | - | 15 | |||
- | - | 0 | 4 | |||
- | - | - | 15 |
После вычисления трех вычислительных ступеней сравним значения и с и . Поскольку , а , то число положительное.
Для удобства запишем вычисления (n-1) вычислительной ступени в виде таблицы, где означает, что берется значение , вычисленное на вычислительной ступени.
Вычислительная ступень | Операция | 17 | 19 | 23 | 31 | |
9 | 10 | 12 | 16 | |||
0 | 0 | 0 | 10 | |||
1 | 0 | 1 | 3 | 7 | ||
- | 9 | 11 | 15 | |||
0 | 0 | 0 | 10 | |||
- | 0 | 0 | 17 | |||
2 | - | 0 | 2 | 6 | ||
- | - | 11 | 15 | |||
- | 0 | 0 | 17 | |||
- | - | 0 | 27 | |||
3 | - | - | 0 | 4 | ||
- | - | - | 15 | |||
- | - | 0 | 27 | |||
- | - | - | 16 |
После вычисления трех вычислительных ступеней сравним значения и с и . Поскольку , а , то число отрицательное.
Реализация данного способа возможна на программируемых логических интегральных схем (ПЛИС) или с использованием ЭВМ.
Claims (1)
- Способ определения знака числа в системе остаточных классов, пригодный для реализации средствами вычислительной техники, включающий для системы остаточных классов с модулями , , …, и треугольной матрицы с элементами , где , , на основе входного значения числа ), где – остаток от деления числа на модуль , вычисление промежуточных значений вычислительной ступенью, причем я ступень вычисляет выражение для , отличающийся тем, что берут нечетные модули, на основе входного значения ) вычисляют вспомогательное значение где и , каждая я ступень дополнительно вычисляет выражение для , после вычисления значений -й вычислительной ступенью значения и сравнивают соответственно с /2 и /2 и если >/2 или одновременно =/2 и /2, то считают, что исходное число отрицательное, иначе положительное.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2021108953A RU2767450C1 (ru) | 2021-04-01 | 2021-04-01 | Способ определения знака числа в системе остаточных классов |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2021108953A RU2767450C1 (ru) | 2021-04-01 | 2021-04-01 | Способ определения знака числа в системе остаточных классов |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2767450C1 true RU2767450C1 (ru) | 2022-03-17 |
Family
ID=80737195
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2021108953A RU2767450C1 (ru) | 2021-04-01 | 2021-04-01 | Способ определения знака числа в системе остаточных классов |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2767450C1 (ru) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100030832A1 (en) * | 2000-05-12 | 2010-02-04 | The Athena Group, Inc. | Method and Apparatus for Performing Computations Using Residue Arithmetic |
US20110231465A1 (en) * | 2010-03-09 | 2011-09-22 | Phatak Dhananjay S | Residue Number Systems Methods and Apparatuses |
RU2503995C2 (ru) * | 2011-09-26 | 2014-01-10 | Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Северо-Кавказский федеральный университет" | Устройство для определения знака модулярного числа |
RU2503992C2 (ru) * | 2011-09-27 | 2014-01-10 | Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Северо-Кавказский федеральный университет" | Устройство для сравнения чисел, представленных в системе остаточных классов |
RU2557446C1 (ru) * | 2014-07-22 | 2015-07-20 | Федеральное государственное бюджетное образовательное учреждение высшего образования "Вятский государственный университет" | Устройство для определения знаков чисел в системе остаточных классов |
-
2021
- 2021-04-01 RU RU2021108953A patent/RU2767450C1/ru active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100030832A1 (en) * | 2000-05-12 | 2010-02-04 | The Athena Group, Inc. | Method and Apparatus for Performing Computations Using Residue Arithmetic |
US20110231465A1 (en) * | 2010-03-09 | 2011-09-22 | Phatak Dhananjay S | Residue Number Systems Methods and Apparatuses |
RU2503995C2 (ru) * | 2011-09-26 | 2014-01-10 | Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Северо-Кавказский федеральный университет" | Устройство для определения знака модулярного числа |
RU2503992C2 (ru) * | 2011-09-27 | 2014-01-10 | Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Северо-Кавказский федеральный университет" | Устройство для сравнения чисел, представленных в системе остаточных классов |
RU2557446C1 (ru) * | 2014-07-22 | 2015-07-20 | Федеральное государственное бюджетное образовательное учреждение высшего образования "Вятский государственный университет" | Устройство для определения знаков чисел в системе остаточных классов |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210349692A1 (en) | Multiplier and multiplication method | |
CN109284824B (zh) | 一种基于可重构技术的用于加速卷积和池化运算的装置 | |
US8805914B2 (en) | Method and apparatus for performing numerical calculations | |
US20200201602A1 (en) | Converting floating point numbers to reduce the precision | |
CN107766031B (zh) | 分段式除法器、分段式除法运算方法、以及电子设备 | |
CN101216753A (zh) | 一种用于浮点除法和平方根运算的预处理电路结构 | |
CN113377332A (zh) | 一种基于线性分段的softmax硬件实现方法 | |
US9519457B2 (en) | Arithmetic processing apparatus and an arithmetic processing method | |
KR20080010285A (ko) | 알씨피, 에스큐알티, 이엑스피 및 로그 함수의 단일데이터패스 부동 소수점 실행 및 이에 기반한 저지연알씨피 | |
RU2767450C1 (ru) | Способ определения знака числа в системе остаточных классов | |
Isupov et al. | Fast power-of-two RNS scaling algorithm for large dynamic ranges | |
US8862647B2 (en) | Semiconductor integrated circuit and exponent calculation method | |
US20180203669A1 (en) | Digit recurrence division | |
Kuchukov et al. | The application of modular arithmetic for matrix calculations | |
RU2318239C1 (ru) | Нейронная сеть для деления чисел, представленных в системе остаточных классов | |
Teja | Design of radix-8 booth multiplier using koggestone adder for high speed Arithmetic applications | |
RU2747371C1 (ru) | Устройство определения знака числа, представленного в системе остаточных классов | |
RU2751992C1 (ru) | Устройство сравнения чисел, представленных в системе остаточных классов | |
RU2559771C2 (ru) | Устройство для основного деления модулярных чисел | |
US11281428B2 (en) | Conversion circuitry | |
RU2559772C2 (ru) | Устройство для основного деления модулярных чисел в формате системы остаточных классов | |
US20140052767A1 (en) | Apparatus and architecture for general powering computation | |
RU2780400C1 (ru) | Устройство для вычисления ранга модулярного числа | |
EP1452959B1 (en) | Random number string output apparatus | |
Wang et al. | All Nontrivial Solutions Of A Complex Dynamical System Are Periodic With Prime Period 9 Or 18 |