RU2633142C1 - Устройство для вычисления функции √x2 + y2 - Google Patents

Устройство для вычисления функции √x2 + y2 Download PDF

Info

Publication number
RU2633142C1
RU2633142C1 RU2016144849A RU2016144849A RU2633142C1 RU 2633142 C1 RU2633142 C1 RU 2633142C1 RU 2016144849 A RU2016144849 A RU 2016144849A RU 2016144849 A RU2016144849 A RU 2016144849A RU 2633142 C1 RU2633142 C1 RU 2633142C1
Authority
RU
Russia
Prior art keywords
operand
counter
order
register
inputs
Prior art date
Application number
RU2016144849A
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 RU2016144849A priority Critical patent/RU2633142C1/ru
Application granted granted Critical
Publication of RU2633142C1 publication Critical patent/RU2633142C1/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
    • 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/50Adding; Subtracting

Landscapes

  • Complex Calculations (AREA)

Abstract

Изобретение относится к вычислительной технике. Технический результат заключается в возможности сокращения времени для получения результата вычислений. Устройство содержит регистр первого операнда, первый и второй счетчики порядка, счетчик второго операнда, дешифратор, блок управления. Дополнительно содержит два логических элемента И-НЕ, обеспечивающие досрочное завершение вычислений, если один из операндов значительно меньше другого. 1 ил.

Description

Изобретение относится к вычислительной технике и может быть применено, например, в специализированных вычислительных блоках.
Известны устройства для вычисления функции
Figure 00000001
, содержащие регистры операндов, сумматоры, счетчики, коммутаторы, логические элементы [А.с. 404082 СССР, 1971].
Недостатком известного устройства являются значительные аппаратные затраты.
Наиболее близким к предлагаемому является устройство для вычисления функции
Figure 00000002
[А.с. 752332 СССР, 1980], содержащее регистр первого операнда, счетчик второго операнда, первый счетчик порядка, блок управления, второй счетчик порядка и дешифратор, входы которого подключены к разрядным выходам первого счетчика порядка, а выходы - к разрядным входам счетчика второго операнда, выход переполнения которого подключен к входу первого счетчика порядка, установочные входы и выходы которого соединены соответственно с выходами и входами второго счетчика порядка, выход и вход знакового разряда которого подключены к первому управляющему входу и выходу блока управления, подключенного также к входу первого счетчика порядка, разрядные входы регистра первого операнда соединены с соответствующими выходами счетчика второго операнда, выход нулевого разряда которого и выход первого разряда регистра первого операнда соединены с соответствующими входами блока управления, второй управляющий выход которого подключен к входам регистра первого операнда и счетчика второго операнда, установочные входы которого подключены к выходам регистра первого операнда.
Недостатком этого устройства является его низкое быстродействие.
Задачей настоящего изобретения является совершенствование устройства для вычисления функции
Figure 00000003
.
Технический результат - возможность сокращения времени получения результата вычислений.
Технический результат достигается тем, что в известное устройство для вычисления функции
Figure 00000004
, содержащее регистр первого операнда, первый и второй счетчики порядка, счетчик второго операнда, дешифратор, блок управления, дополнительно вводятся два (
Figure 00000005
)-входовые логические элементы И-НЕ, соединенные между собой по схеме "монтажное ИЛИ", общий выход которых связан с блоком управления, причем
Figure 00000005
входов каждой из них подключены к
Figure 00000006
старшим разрядам регистра первого операнда и к
Figure 00000007
старшим разрядам счетчика второго операнда соответственно (где n - разрядность операндов).
Введение дополнительно двух логических элементов И-НЕ и их связей с другими блоками устройства позволило сократить время получения результата вычислений. Это является новым техническим решением в технике цифровых вычислений, поскольку результаты проведенного заявителем анализа аналогов и прототипа не позволили выявить признаки, тождественные всем существенным признакам данного изобретения.
Предложенное устройство имеет изобретательский уровень, так как из опубликованных научных данных и существующих технических решений явным образом не следует, что заявляемая совокупность блоков, узлов и связей между ними позволяют сократить время получения результата вычислений.
Предложенное устройство для вычисления функций промышленно применимо, поскольку его техническая реализация возможна с использованием типовых элементов микроэлектронной техники (интегральных логических схем).
На чертеже представлена блок-схема устройства.
Устройство содержит регистр 1 первого операнда, первый 2 и второй 3 счетчики порядка, счетчик 4 второго операнда, дешифратор 5, блок 6 управления и два логических элемента И-НЕ 7, 8, соединенных друг с другом по схеме "монтажное ИЛИ".
Многоразрядный выход первого 2 счетчика порядка подключен ко входам дешифратора 5, каждый i-й выход которого (i=0, 1, 2, …, n-1, первыми будем считать старшие разряды) связан со счетным входом i-го разряда счетчика второго операнда 4, выход нулевого разряда которого соединен со счетным входом младшего разряда первого 2 счетчика порядка, выходы первого 2 счетчика порядка со сдвигом на один разряд влево соединены с установочными входами второго 3 счетчика порядка, выходы которого со сдвигом на один разряд влево соединены с установочными входами первого 2 счетчика порядка. Выходы регистра 1 первого операнда соединены с установочными входами счетчика 4 второго операнда, выходы которого со сдвигом на n разрядов вправо соединены со входами регистра 1 первого операнда. Кроме того, устройство содержит блок 6 управления, связанный с выходами нулевого и первого разрядов счетчика 4 второго операнда, регистра 1 первого операнда и второго 3 счетчика порядка, с управляющими входами счетчиков 4, 2, 3 и регистра 1 первого операнда. Кроме того,
Figure 00000008
входов каждого из элементов И-НЕ 7 и 8 соединены с
Figure 00000009
старшими разрядами регистра 1 первого и счетчика 4 второго операндов соответственно. Общий выход элементов И-НЕ 7 и 8 связан со входом блока 6 управления.
Устройство работает следующим образом. В исходном состоянии в счетчиках 4, 2, 3 и регистре 1 первого операнда записаны нули. В первом цикле вычисления блок 6 управления подключает к управляющему входу счетчика 4 второго операнда входную шину, по которой в устройство поступают импульсы в количестве, равном х. По каждому управляющему сигналу производится прибавление единицы в i-й разряд счетчика 4 второго операнда, где i - число, поступающее на входы дешифратора 5 с первого 2 счетчика порядка. Когда в счетчике 4 второго операнда в нулевом разряде образуется единица, то последующие счетные сигналы, поступающие на вход этого разряда, не изменяя состояния последнего, проходят на вход младшего разряда первого 2 счетчика порядка и второго 3 счетчика порядка. Цикл заканчивается по сигналу от источника информации об окончании передачи кода х. В результате выполнения первого цикла на счетчике 4 второго операнда получается мантисса mx, а на первом 2 счетчике порядка - порядок рх числа, записанного в форме с плавающей запятой. (Цифра, стоящая в i-м разряде счетчика 4 второго операнда имеет вес 2-i). Во втором цикле по сигналу блока 6 управления осуществляется передача содержимого счетчика 4 второго операнда в регистр 1 первого операнда (со сдвигом на n разрядов вправо) и одновременно с этим - передача содержимого регистра 1 первого операнда в счетчик 4 второго операнда, а второй 3 счетчик порядка устанавливается в состояние - n.
В третьем цикле аналогично первому на управляющий вход счетчика 4 второго операнда поступает в число-импульсном коде операнд y. Если порядок числа y превосходит порядок числа х на величину S (S ∈ {0, 1, 2, 3, …, n}), то в счетчике 4 второго операнда S раз будет наблюдаться переполнение и, следовательно, в первый 2 счетчик порядка и второй 3 счетчик порядка прибавится по S единиц. Цикл заканчивается по сигналу от источника информации об окончании передачи кода y. В результате выполнения третьего цикла на первом 2 счетчике порядка получаем Py=Px+S, а на счетчике 4 второго операнда - мантиссу my числа y.
В четвертом цикле блок 6 управления выдает серию сигналов, по каждому из которых осуществляется сдвиг содержимого регистра 1 первого операнда и прибавление единицы во второй 3 счетчик порядка. Цикл заканчивается по достижении вторым 3 счетчиком порядка состояния "0". Если при этом в нулевом и первом разрядах регистра 1 первого операнда записаны единицы или в нулевом разряде счетчика 4 второго операнда записан ноль, то выполняется пятый цикл, в противном случае устройство переходит к выполнению шестого цикла.
Пятый цикл вычисления полностью аналогичен второму.
В шестом цикле блок 6 управления вырабатывает серию сигналов, по каждому из которых осуществляется сдвиг содержимого регистра 1 первого операнда и прибавление "1" во второй 3 счетчик порядка. Цикл заканчивается, когда в нулевом разряде регистра 1 первого операнда появится единица, т.е. когда выполняется нормализация мантиссы числа в регистре 1 первого операнда.
При этом во втором 3 счетчике порядка получают код
Figure 00000010
.
В седьмом цикле осуществляется запись во втором 3 счетчике порядка со сдвигом влево на один разряд содержимого первого 2 счетчика порядка и запись в первый 2 счетчик порядка со сдвигом влево на один разряд содержимого второго 3 счетчика порядка. Содержимое первого разряда счетчика 4 второго операнда заносится в младший разряд первого 2 счетчика порядка и второго 3 счетчика порядка. В нулевой и первый разряды счетчика 4 второго операнда заносятся соответственно "0" и "1". Если в первом разряде регистра 1 первого операнда записана "1", то в регистре 1 первого операнда выполняется сдвиг на один разряд, в противном случае в нулевой и первый разряды этого регистра заносятся собственно "0" и "1".
Седьмой цикл выполняется по двум вариантам:
1 вариант. Если все
Figure 00000011
старших разрядов регистра 1 первого операнда или счетчика 4 второго операнда содержат нули, то на выходе логических элементов И-НЕ 7, 8 возникнет сигнал "0". Он передается в блок 6 управления, который прекращает дальнейшие вычисления. Устройство выдает результат одного из операндов, не равного нулю, в качестве мантиссы, и их общий порядок в качестве порядка результата. Это математически базируется на том, что двоичное число с
Figure 00000012
нулями в старшей части двоичного числа при возведении его в квадрат превращается в двоичное число с n нулями в своей старшей части.
2 вариант. Сигнал от двух логических схем И-НЕ 7, 8 в блок 6 управления равен "1". Тогда седьмой, восьмой, девятый и десятый циклы выполняются как у прототипа, т.е. с затратой времени.
Таким образом, исключение ряда времяемких циклов при вычислении функции
Figure 00000013
создает предпосылки существенного повышения технико-экономической эффективности - быстродействия предложенного устройства.

Claims (1)

  1. Устройство для вычисления функции
    Figure 00000014
    , содержащее регистр первого операнда, первый и второй счетчики порядка, счетчик второго операнда, дешифратор, блок управления, причем входы дешифратора подключены к разрядным выходам первого счетчика порядка, а выходы - к разрядным входам счетчика второго операнда, выход переполнения которого подключен ко входу первого счетчика порядка, установочные входы и выходы которого соединены соответственно с выходами и входами второго счетчика порядка, выход и вход знакового разряда которого подключен к первому управляющему входу и выходу блока управления, подключенного также ко входу первого счетчика порядка, разрядные входы регистра первого операнда соединены с соответствующими выходами счетчика второго операнда, выход нулевого разряда которого и выход первого разряда регистра первого операнда соединены с соответствующими входами блока управления, второй управляющий выход которого подключен ко входам регистра первого операнда и счетчика второго операнда, установочные входы которого подключены к выходам первого операнда, отличающееся тем, что дополнительно содержит два
    Figure 00000015
    - входовые логические элементы И-НЕ, соединенные между собой по схеме "монтажное ИЛИ", общий выход которых связан с блоком управления, причем
    Figure 00000016
    входов каждого из них подключены к
    Figure 00000017
    старшим разрядам регистра первого и к
    Figure 00000018
    старшим разрядам счетчика второго операндов соответственно.
RU2016144849A 2016-11-15 2016-11-15 Устройство для вычисления функции √x2 + y2 RU2633142C1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2016144849A RU2633142C1 (ru) 2016-11-15 2016-11-15 Устройство для вычисления функции √x2 + y2

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2016144849A RU2633142C1 (ru) 2016-11-15 2016-11-15 Устройство для вычисления функции √x2 + y2

Publications (1)

Publication Number Publication Date
RU2633142C1 true RU2633142C1 (ru) 2017-10-11

Family

ID=60129262

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2016144849A RU2633142C1 (ru) 2016-11-15 2016-11-15 Устройство для вычисления функции √x2 + y2

Country Status (1)

Country Link
RU (1) RU2633142C1 (ru)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3431407A (en) * 1965-01-26 1969-03-04 Us Air Force Polynomial root finder
RU2028661C1 (ru) * 1990-06-25 1995-02-09 Научное конструкторское бюро "Миус" Устройство для вычисления функции
EP1315079A1 (en) * 2001-11-22 2003-05-28 STMicroelectronics Limited Circuit for calculation of division and square root with floating point numbers
US20090024777A1 (en) * 2007-06-07 2009-01-22 Renesas Technology Corp. Arbiter and arbitration method of multiple data accesses

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3431407A (en) * 1965-01-26 1969-03-04 Us Air Force Polynomial root finder
RU2028661C1 (ru) * 1990-06-25 1995-02-09 Научное конструкторское бюро "Миус" Устройство для вычисления функции
EP1315079A1 (en) * 2001-11-22 2003-05-28 STMicroelectronics Limited Circuit for calculation of division and square root with floating point numbers
US20090024777A1 (en) * 2007-06-07 2009-01-22 Renesas Technology Corp. Arbiter and arbitration method of multiple data accesses

Similar Documents

Publication Publication Date Title
TWI405126B (zh) 微處理器及其執行指令之方法
US6738795B1 (en) Self-timed transmission system and method for processing multiple data sets
CN109388373B (zh) 用于低功耗内核的乘除法器
KR20190058537A (ko) 동적 가변 정밀도 계산
CN111936965A (zh) 随机舍入逻辑
WO2016119547A1 (en) Method and apparatus for converting from integer to floating point representation
RU2639645C1 (ru) Арифметико-логическое устройство для сложения и вычитания чисел по модулю
CN113918119A (zh) 存储器内多位数二进制乘法装置及其操作方法
CN112650469A (zh) 用于二进制标志确定的电路和方法
RU2633142C1 (ru) Устройство для вычисления функции √x2 + y2
RU2696223C1 (ru) Арифметико-логическое устройство для формирования остатка по произвольному модулю от числа
JPH09244874A (ja) 最上位有効ビット位置予測方法
Dave et al. Constant addition with flagged binary adder architectures
US9032009B2 (en) Multiplier circuit
RU2595906C1 (ru) Устройство для вычисления функций
Beohar et al. VHDL implementation of self-timed 32-bit floating point multiplier with carry look ahead adder
RU2618188C1 (ru) Устройство для вычисления модуля комплексного числа
RU2625528C1 (ru) Арифметическое устройство
US20210034329A1 (en) Parallel rounding for conversion from binary floating point to binary coded decimal
US5978826A (en) Adder with even/odd 1-bit adder cells
RU2799035C1 (ru) Конвейерный сумматор по модулю
CN102929575A (zh) 一种模乘法器
Abraham et al. An ASIC design of an optimized multiplication using twin precision
RU205198U1 (ru) Параметризуемый однотактный умножитель двоичных чисел с фиксированной точкой в прямом и дополнительном коде
RU2753184C1 (ru) Параметризуемый однотактный умножитель двоичных чисел с фиксированной точкой в прямом и дополнительном коде

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20181116