RU2766990C1 - Устройство для вычисления модуля комплексного числа - Google Patents

Устройство для вычисления модуля комплексного числа Download PDF

Info

Publication number
RU2766990C1
RU2766990C1 RU2021110359A RU2021110359A RU2766990C1 RU 2766990 C1 RU2766990 C1 RU 2766990C1 RU 2021110359 A RU2021110359 A RU 2021110359A RU 2021110359 A RU2021110359 A RU 2021110359A RU 2766990 C1 RU2766990 C1 RU 2766990C1
Authority
RU
Russia
Prior art keywords
argument
towards
digits
bits
output
Prior art date
Application number
RU2021110359A
Other languages
English (en)
Inventor
Виктор Сергеевич Щербаков
Виталий Александрович Рыбаков
Original Assignee
Акционерное общество "Научно-производственное объединение "Правдинский радиозавод" (АО "НПО "ПРЗ")
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Акционерное общество "Научно-производственное объединение "Правдинский радиозавод" (АО "НПО "ПРЗ") filed Critical Акционерное общество "Научно-производственное объединение "Правдинский радиозавод" (АО "НПО "ПРЗ")
Priority to RU2021110359A priority Critical patent/RU2766990C1/ru
Application granted granted Critical
Publication of RU2766990C1 publication Critical patent/RU2766990C1/ru

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/4806Computations with complex numbers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/552Powers or roots, e.g. Pythagorean sums

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Abstract

Изобретение относится к области вычислительной техники и может быть использовано в специализированных вычислителях систем цифровой обработки сигналов. Техническим результатом является сокращение числа ячеек памяти за счет перераспределения разрядов из адресной колонки блока памяти радикала аргумента в строку данных. Устройство содержит первый и второй блоки памяти квадрата аргумента, сумматор, блок памяти радикала аргумента, логический блок управления, коммутатор сдвига в сторону младших разрядов и коммутатор сдвига в сторону старших разрядов. 2 ил.

Description

Изобретение относится к области вычислительной техники и может быть применено в специализированных вычислителях систем цифровой обработки сигналов.
Применение микропроцессорной техники требует особого алгоритмического и программного обеспечения, с помощью которого осуществляется вычисление часто используемых нетривиальных функций, которые, как правило, осуществляются неаналитическими методами. К числу таких функций относится модуль комплексного числа, вычисление которого, как правило, в калькуляторах выполняется с использованием алгоритма Волдера, Этот алгоритм подробно описан в литературе (Цифровые радионавигационные устройства / В.В. Барашенков, А.Е. Лутченко, Е.М. Скороходов и др.; Под ред. В.Б. Смолова. М.: Сов. радио, 1980, 288 с., ил. - С.164 - 166; И.Н. Булатникова, Н.Н. Гершунина. Неаналитические методы вычислений для микропроцессоров. Журнал Фундаментальные исследования 2015. №7 - С. 526-529).
Известны устройства для вычисления модуля комплексного числа (Устройство для вычисления модуля комплексного числа: пат. №2562411 Рос. Федерация: МПК G06F 7/38 / Н.С. Анишин, И.Н. Булатникова и Н.Н. Гершунина; заявл. 10.12.2014; опубл. 10.09.2015 Бюл. №25. Устройство для вычисления модуля комплексного числа: пат. №2618188 Рос.Федерация: МПК G06F 7/38 / Н.Н. Гершунина и И.Н. Булатникова; заявл. 25.02.2016; опубл. 02.05.2017 Бюл. №13).
Недостатком этих устройств является невысокая точность или большое время вычисления, т.к. в основе алгоритма Волдера заложен итерационный метод последовательного приближения.
Наиболее близким по технической сущности является устройство для вычисления модуля комплексного числа (А.с. №1295387 СССР: МПК G06F 7/552 / A.M. Плигин и М.В. Шкадин; заявл. 04.10.1985; опубл. 07.03.1987 Бюл. №9).
Это устройство содержит первый и второй блоки памяти квадрата аргумента, сумматор, на который поступают сигналы с выходов первого и второго блоков памяти, и третий блок памяти радикала аргумента.
В этом устройстве модуль комплексного числа вычисляется вдоль аналитического выражения реализуемой функции с использованием постоянных запоминающих устройств (ПЗУ), в которых хранятся значения функций, а аргументом являются адреса определенных ячеек памяти. Таким образом, при обращении к определенному адресу мгновенно извлекается значение функции, которое хранится в ячейке памяти по данному адресу.
В данном случае модуль комплексного числа можно рассматривать как вектор на плоскости, абсолютное значение которого не зависит от его направления. Если это значение определяется N разрядами, то и каждая из его проекций не превышает N разрядов. Возведение аргументов в квадрат вдвое увеличивает разрядную сетку, тогда количество двоичных ячеек памяти в ПЗУ определяется произведением (2N-1)⋅2N. При этом сумма квадратов аргументов не увеличивает разрядную сетку, что следует из независимости модуля вектора от его направления. Поэтому значение корня квадратного из суммы квадратов определяется уже 2N разрядами, при этом количество двоичных ячеек памяти в ПЗУ определяется произведением (22N-1)⋅N.
Недостатком этого устройства является избыточное количество ячеек памяти, в которых хранятся значения функции радикала аргумента.
Целью изобретения является сокращение числа ячеек памяти за счет перераспределения разрядов из адресной колонки блока памяти радикала аргумента в строку данных.
Указанный технический результат достигается тем, что в устройство для вычисления модуля комплексного числа, содержащее первый и второй блоки памяти квадрата аргумента, сумматор, на который поступают сигналы с выходов первого и второго блоков памяти, и третий блок памяти радикала аргумента, дополнительно введены логический блок управления, коммутатор сдвига в сторону младших разрядов и коммутатор сдвига в сторону старших разрядов, при этом выход сумматора соединен с коммутатором сдвига в сторону младших разрядов и логическим блоком управления, выход которого соединен с управляющими входами коммутаторов сдвига в сторону младших разрядов и в сторону старших разрядов, выход коммутатора сдвига в сторону младших разрядов через третий блок памяти радикала аргумента соединен с входом коммутатора сдвига в сторону старших разрядов, выход которого является выходом устройства.
Поясним суть изобретения.
Известно, что количество двоичных ячеек памяти в большей степени определяется разрядами адресной колонки, чем разрядами в строке данных, поэтому их необходимо перераспределить. Для этого можно модифицировать выражение вычисления модуля комплексного числа.
Figure 00000001
В этом выражении значение под корнем в квадратных скобках означает 2m целую часть, которое предварительно поделили на 2m, что равносильно сдвигу на 2m разрядов в сторону младших. Результат корня квадратного из целой части извлекается с точностью m разрядов после запятой и умножается на 2m, что равносильно сдвигу на m разрядов в сторону старших. При этом параметр m изменяется от 0 до N/2, код которого зависит от превышения разрядной сетки на выходе сумматора выше N-го разряда, а количество двоичных ячеек памяти в этом случае для корня квадратного определяется произведением (2N-1)⋅3N/2. Таким образом, в предложенном варианте по сравнению с прототипом, при вычислении корня квадратного, количество двоичных ячеек памяти требуется в 2⋅(2N+1)/3 раза меньше, при этом ошибка вычисления не превышает цену младшего разряда.
Охарактеризованное указанным выше существенным признаком изобретение на дату подачи заявки не известно в Российской Федерации и за границей и отвечает требованиям критерия "новизна".
Заявителями не выявлены технические решения, имеющие признак, совпадающий с отличительным признаком заявляемого изобретения, обеспечивающий достижение заявляемого технического результата, в связи с чем, можно сделать вывод о соответствии изобретения условию патентоспособности "изобретательский уровень".
Изобретение может быть реализовано промышленным способом с использованием известных технических средств, технологий и материалов и соответствует требованиям условия патентоспособности "промышленная применимость".
Изобретение поясняются графическими материалами.
На фиг. 1 изображена структурная схема устройства для вычисления модуля комплексного числа. Заявленное устройство содержит первый 1 и второй 2 блоки памяти квадрата (БПК) аргумента, сумматор (СУМ) 3, третий блок памяти радикала (БПР) аргумента 4, логический блок управления (ЛБУ) 5, коммутатор сдвига в сторону младших разрядов (КСМ) 6, коммутатор сдвига в сторону старших разрядов (КСС) 7.
На фиг. 2 представлен результат вычисления модуля с фиксацией максимального и минимального значений. С учетом сокращения числа разрядов в адресной колонке и увеличения их в строке данных выполнялось моделирование вычисления модуля комплексного числа. При этом для каждого значения длины вектора входные сигналы (проекции вектора) задавались целыми числами для разных направлений вектора с шагом 2° и фиксировались максимальное и минимальное значения модуля, выраженные тоже целыми числами. Точность вычисления модуля комплексного числа представлена графически, где на оси абсцисс отложены идеальные значения модуля, а на оси ординат - вычисленные максимальные и минимальные значения модуля, отклонение которых от идеального значения не превышает цену деления младшего разряда.
Устройство работает следующим образом.
N разрядные коды значений действительной и мнимой частей комплексного числа поступают на адресные входы БПК аргумента 1 и 2. В СУМ 3 квадраты входных значений суммируются и с его выхода 2-N разрядов поступают на вход КСМ 6, а старшая половина разрядов N+1…2 N поступает также на вход ЛБУ 5. В зависимости от значащих разрядов N+1…2 N в ЛБУ формируется код. При этом если во всех разрядах нули, то и код управления равен нулю, а если хотя бы один разряд N+1 или N+2 отличен от нуля, но старшие равны нулю, то код равен единице. Также, если разряд N+3 или N+4 отличен от нуля, но старшие равны нулю, то код равен двум и т.д. Сформированный таким образом код m поступает на управляющие входы КСМ 6 и КСС 7. В КСМ 6 осуществляется сдвиг в сторону младших разрядов на 2 m позиции, а в КСС 7 в сторону старших разрядов на m позиций. При этом с выхода КСМ 6 поступает N разрядный код на адресный вход БПР 4, в котором по данному адресу извлекается значение корня квадратного с точностью m знаков после запятой, которое в двоичном коде содержит 3N/2 разряда. Таким образом, на выходах КСМ 6 и КСС 7, а также адресном входе БПР 4 число значащих разрядов не более N.

Claims (1)

  1. Устройство для вычисления модуля комплексного числа, содержащее первый и второй блоки памяти квадрата аргумента, сумматор, на который поступают сигналы с выходов первого и второго блоков памяти, и третий блок памяти радикала аргумента, отличающееся тем, что в его состав введены логический блок управления, коммутатор сдвига в сторону младших разрядов и коммутатор сдвига в сторону старших разрядов, при этом выход сумматора соединен с коммутатором сдвига в сторону младших разрядов и логическим блоком управления, выход которого соединен с управляющими входами коммутаторов сдвига в сторону младших разрядов и в сторону старших разрядов, выход коммутатора сдвига в сторону младших разрядов через третий блок памяти радикала аргумента соединен с входом коммутатора сдвига в сторону старших разрядов, выход которого является выходом устройства.
RU2021110359A 2021-04-13 2021-04-13 Устройство для вычисления модуля комплексного числа RU2766990C1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2021110359A RU2766990C1 (ru) 2021-04-13 2021-04-13 Устройство для вычисления модуля комплексного числа

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2021110359A RU2766990C1 (ru) 2021-04-13 2021-04-13 Устройство для вычисления модуля комплексного числа

Publications (1)

Publication Number Publication Date
RU2766990C1 true RU2766990C1 (ru) 2022-03-16

Family

ID=80736807

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2021110359A RU2766990C1 (ru) 2021-04-13 2021-04-13 Устройство для вычисления модуля комплексного числа

Country Status (1)

Country Link
RU (1) RU2766990C1 (ru)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SU1287151A1 (ru) * 1985-05-16 1987-01-30 Специальное Проектно-Конструкторское Бюро "Дискрет" Одесского Политехнического Института Устройство дл вычислени модул комплексного числа
SU1295387A1 (ru) * 1985-10-04 1987-03-07 Войсковая часть 03444 Устройство дл вычислени модул комплексного числа
JPH0997299A (ja) * 1995-09-28 1997-04-08 Sharp Corp 複素数絶対値回路
US6999981B2 (en) * 2001-02-08 2006-02-14 Texas Instruments Incorporated Circuit for computing the absolute value of complex numbers
RU2562411C1 (ru) * 2014-12-10 2015-09-10 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Кубанский государственный технологический университет" (ФГБОУ ВПО "КубГТУ") Устройство для вычисления модуля комплексного числа
RU2618188C1 (ru) * 2016-02-25 2017-05-02 Федеральное государственное бюджетное образовательное учреждение высшего образования "Кубанский государственный технологический университет" (ФГБОУ ВО "КубГТУ") Устройство для вычисления модуля комплексного числа

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SU1287151A1 (ru) * 1985-05-16 1987-01-30 Специальное Проектно-Конструкторское Бюро "Дискрет" Одесского Политехнического Института Устройство дл вычислени модул комплексного числа
SU1295387A1 (ru) * 1985-10-04 1987-03-07 Войсковая часть 03444 Устройство дл вычислени модул комплексного числа
JPH0997299A (ja) * 1995-09-28 1997-04-08 Sharp Corp 複素数絶対値回路
US6999981B2 (en) * 2001-02-08 2006-02-14 Texas Instruments Incorporated Circuit for computing the absolute value of complex numbers
RU2562411C1 (ru) * 2014-12-10 2015-09-10 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Кубанский государственный технологический университет" (ФГБОУ ВПО "КубГТУ") Устройство для вычисления модуля комплексного числа
RU2618188C1 (ru) * 2016-02-25 2017-05-02 Федеральное государственное бюджетное образовательное учреждение высшего образования "Кубанский государственный технологический университет" (ФГБОУ ВО "КубГТУ") Устройство для вычисления модуля комплексного числа

Similar Documents

Publication Publication Date Title
US3800130A (en) Fast fourier transform stage using floating point numbers
Bohlender What do we need beyond IEEE arithmetic?
Hung et al. Fast division algorithm with a small lookup table
US20160139882A1 (en) Accuracy-conserving floating-point value aggregation
CN1498364A (zh) 产生具有可变精度的对数信号近似
JPH03204720A (ja) 初等関数演算装置
WO2018138469A1 (en) An apparatus and method for processing input operand values
WO1994018633A1 (en) High speed function generating apparatus and method
RU2766990C1 (ru) Устройство для вычисления модуля комплексного числа
Wang et al. $(M, p, k) $-Friendly Points: A Table-Based Method to Evaluate Trigonometric Function
Bonnot et al. New non-uniform segmentation technique for software function evaluation
Hashemian Square rooting algorithms for integer and floating-point numbers
Mora et al. Mathematical model and implementation of rational processing
CN104615404A (zh) 一种基于查表操作的高速浮点除法部件装置
US8924447B2 (en) Double precision approximation of a single precision operation
Cooper et al. Computers in NMR. IV. Strategies in developing high-dynamic-range fourier transforms
KR20210134349A (ko) 연속 누적 회전 회로를 사용하여 초등 함수를 계산하기 위한 디바이스 및 방법
JP2644514B2 (ja) 関数演算装置
Gowreesrinivas et al. FPGA implementation of single-precision floating point multiplication with Karatsuba algorithm using vedic mathematics
AU2020424993B2 (en) Secure computation apparatus, secure computation method, and program
WO1994018632A1 (en) Low latency function generating apparatus and method
RU2602989C2 (ru) Устройство для вычисления функциональных зависимостей
Krasnobayev et al. The Methods of Data Comparison in Residue Numeral System
Kehtarnavaz et al. Fixed-Point vs. Floating-Point
RU2652460C1 (ru) Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах