RU2614932C1 - Устройство для логарифмирования двоичных чисел - Google Patents

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

Info

Publication number
RU2614932C1
RU2614932C1 RU2015152366A RU2015152366A RU2614932C1 RU 2614932 C1 RU2614932 C1 RU 2614932C1 RU 2015152366 A RU2015152366 A RU 2015152366A RU 2015152366 A RU2015152366 A RU 2015152366A RU 2614932 C1 RU2614932 C1 RU 2614932C1
Authority
RU
Russia
Prior art keywords
output
memory
adder
block
read
Prior art date
Application number
RU2015152366A
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 RU2015152366A priority Critical patent/RU2614932C1/ru
Application granted granted Critical
Publication of RU2614932C1 publication Critical patent/RU2614932C1/ru

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

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

Description

Изобретение относится к вычислительной технике и может быть использовано для вычисления значений логарифмической функции от двоичного аргумента.
Известно цифровое устройство для логарифмирования двоичных чисел [А.с. 593212, СССР, 1977]. Однако данное устройство имеет низкую точность вычисления логарифма.
Наиболее близким техническим решением к предлагаемому является цифровое устройство для логарифмирования двоичных чисел [А.с. 813414, СССР, 1981]. Оно содержит два блока сравнения, причем первый и второй входы первого блока сравнения соединены соответственно со вторыми входами регистра старших разрядов и первого блока памяти, а выход - с третьим входом сумматора, первый и второй входы второго блока сравнения подключены ко вторым выходам соответственно сумматора и третьего блока памяти, а выход - ко второму входу сдвигателя.
Недостатком этого устройства является низкая точность получаемых результатов.
Задачей настоящего изобретения является разработка устройства для логарифмирования двоичных чисел.
Технический результат настоящего изобретения - возможность получения результата с меньшими погрешностями, повышение достоверности выходных результатов.
Технический результат достигается предложенным устройством для логарифмирования двоичных чисел, который содержит регистр старших и регистр младших разрядов аргумента, первый, второй и третий блоки постоянной памяти, блок управления, коммутатор, сумматор, выходной регистр, триггер числа, сдвигатель, блок управления сдвигателем, первый и второй блоки сравнения, причем первый и второй входы первого блока сравнения соединены соответственно с первыми выходами регистра старших разрядов аргумента и первого блока постоянной памяти, а выход - с первым входом сумматора, первый и второй входы второго блока сравнения подключены ко вторым выходам соответственно сумматора и третьего блока постоянной памяти, а выход - ко второму входу сдвигателя, кроме того, выходы блока управления подключены к первому и второму входам коммутатора, третий и четвертый входы которого связаны с выходом второго блока постоянной памяти и выходом сдвигателя соответственно, причем первый, третий и четвертый входы сдвигателя связаны со входом установки логической "1", с выходом третьего блока постоянной памяти и с выходом блока управления сдвигателем соответственно, первый и второй входы которого связаны через триггер числа с третьим выходом сумматора и напрямую с выходом регистра младших разрядов аргумента, связанного также со вторым блоком постоянной памяти, а выходы первого блока постоянной памяти и коммутатора соединены со вторым и третьим входами сумматора, кроме того, вход третьего блока постоянной памяти соединен с первым выходом сумматора и со входом выходного регистра.
Введение в него дополнительно ячейки памяти константы "1", связанной с входом первого блока памяти, позволит увеличить точность вычисления логарифма двоичных чисел.
Это является новым техническим решением в технике цифровых вычислений логарифма, поскольку результаты проведенного заявителем анализа аналогов и прототипа не позволили выявить признаки, тождественные всем существенным признакам данного изобретения.
Предложенное устройство имеет изобретательский уровень, так как из опубликованных научных данных и существующих технических решений явным образом не следует, что заявляемая совокупность блоков, узлов и связей между ними позволяют повысить достоверность (информативность) выходного результата.
Предложенное устройство для вычисления функций промышленно применимо, поскольку его техническая реализация возможна с использованием типовых элементов микроэлектронной техники (интегральных логических схем).
На фиг. 1 представлена блок-схема устройства, а на фиг. 2 - графические данные о точности его работы в сравнении с прототипом.
Устройство содержит регистры старших 1 и младших 2 разрядов аргумента, блоки 3-5 постоянной памяти, блок 6 управления, коммутатор 7, сумматор 8, выходной регистр 9, триггер 10 числа, сдвигатель 11, блок 12 управления сдвигателем, блоки 13 и 14 сравнения, кроме того оно содержит ячейку 15 памяти константы "1", связанную со входом первого блока 3 памяти.
Вычисление двоичного логарифма от нормализованного аргумента V (0,5≤V<1) производится в предлагаемом устройстве на основе соотношений
Figure 00000001
где x - число, образованное k старшими разрядами аргумента V;
y - число, образованное (N-k) младшими разрядами аргумента V;
N - число двоичных разрядов в аргументе V.
Figure 00000002
Figure 00000003
Figure 00000004
причем
Figure 00000005
Figure 00000006
где Δ (x) - функция абсолютной погрешности аппроксимации логарифма прямой линией.
Заметим, что
Figure 00000007
при k=4, а
Figure 00000008
с абсолютной погрешностью менее 2-4.
Пусть
Figure 00000009
где α - значение разности логарифмов, p - целая часть числа, А - дробная часть числа.
Обозначим
Figure 00000010
Figure 00000011
Пусть
Figure 00000012
Figure 00000013
,
где n - число двоичных разрядов, необходимых для записи числа β, Δ(β) - функция, итоговой абсолютной погрешности аппроксимации функции прямой.
Заметим, что
Figure 00000014
, а
Figure 00000015
с погрешностью менее 2-4 (при k=4).
Устройство работает следующим образом. На первом этапе входные данные поступают на регистры старших 1 (x) и младших 2 (y) разрядов аргумента. Кроме того, к старшей части x добавляется "1" со стороны ее младших разрядов от ячейки 15 памяти константы "1". От этих регистров 1 и 2 их содержимое (с учетом добавленной "1" в (k+1)-й разряд значения x) передается, соответственно, на входы первого 3 и второго 4 блоков постоянной памяти, где хранятся таблицы мантисс логарифмов старших и младших разрядов аргумента. В таблице, хранящейся в первом 3 блоке постоянной памяти, отсутствуют два старших разряда значений мантисс логарифмов. Значения второго, третьего и четвертого разрядов аргумента поступают на вход блока 13 сравнения, состоящего из элемента ИЛИ и сумматора, осуществляющего сложение числа, образованного вторым, третьим и четвертым разрядами аргумента с кодом 001, если значение четвертого разряда регистра 1 старших разрядов аргумента не совпадает со значением, поступающим с выхода старшего разряда первого 3 блока постоянной памяти. В противном случае происходит сложение с нулем, не изменяющее входного числа. Блок 13 сравнения работает следующим образом. При несовпадении инверсивного значения четвертого разряда регистра 1 старших разрядов аргумента с значением старшего разряда числа, выбранного из первого 3 блока постоянной памяти, происходит увеличение на единицу числа, представленного инверсивным значением второго, третьего и четвертого разрядов аргумента. На выходе блока 13 сравнения получаем два разряда логарифма, образованные двумя старшими разрядами суммы, вычисленной блоком 13 сравнения. С выхода блока 3 постоянной памяти снимаются значения мантиссы log2x с отсутствующими двумя старшими разрядами. С выхода блока 4 постоянной памяти снимается значение мантиссы
Figure 00000016
. Мантиссы логарифмов поступают на входы сумматора 8, причем содержимое на выходе 4 блока постоянной памяти, равное мантиссе
Figure 00000017
, проходит через управляемый коммутатор 7, подключающий в этом такте ко входу сумматора 8 выход блока 4. На выходе сумматора 8 формируется согласно формулам значение β, которое передается на вход третьего 5 блока постоянной памяти, где хранится таблица функции 2β с отсутствующими тремя старшими разрядами значений функции. Три старших разряда суммы с выхода сумматора 8 поступают на вход блока 14 сравнения, состоящего из элемента ИЛИ и сумматора. Значение на выходе старшего разряда блока 5 постоянной памяти также поступает на вход блока 14 сравнения, который осуществляет сложение кода 111 с числом, образованным инверсией трех старших разрядов суммы, поступающих с выхода сумматора 8, в случае, если значение старшего разряда числа, выбранного из блока 5 постоянной памяти, не совпадает со значением инверсии третьего разряда суммы, поступающей из сумматора 8. В противном случае происходит сложение числа, образованного инверсией трех старших разрядов суммы, поступающей с выхода сумматора 8, с нулем, не изменяющее значение этой инверсии. На выходе блока 14 сравнения получаем значение второго и третьего разряда функции 2β, образованные двумя старшими разрядами суммы, полученной блоком 14 сравнения. С выхода блока 5 постоянной памяти снимаются значения функции 2β с отсутствующими тремя старшими разрядами. Таким образом, на выходе блоков 14 и 5 образуется значение функции 2β с отсутствующим старшим разрядом. Значение старшего разряда функции 2β принимается равным логической единице в силу выполнения неравенства для z. Значение функции z=2β поступает на вход сдвигателя 11. Значение знакового разряда сумматора 8 запоминается на триггер 10. Блок 12 управления сдвигателем 11 представляет собой комбинационную схему, подсчитывающую число нулевых разрядов слева до первого единичного разряда в регистре 2 младших разрядов аргумента и суммирующую это число со значением триггера 10, что дает значение требуемого числа сдвигов Р или Р+1 в сдвигателе 11 для получения на его выходе значения 2α из поступающего на вход сдвигателя значения 2β. Образованное на выходе сдвигателя число 2α через управляемый коммутатор 7, подключающий на втором этапе работы устройства ко входу сумматора 8 выходы сдвигателя 11, подается на сумматор 8, где происходит сложение значений 2α и поступающего на другие входы сумматора значения log2x с выхода первого 3 блока памяти и блока 13 сравнения. В результате сложения на сумматоре происходит формирование по исходной формуле значения мантиссы log2V, которое передается на вход выходного регистра 9. Таким образом, предлагаемое устройство преобразует нормализованное значение аргумента V в значение мантиссы log2V.
Благодаря конкатенации "1" из ячейки 25 памяти константы "1" к старшей части (x) аргумента изменяется процесс формирования величины log2x, приводящий к более точной аппроксимации логарифма прямой линией (см формула (6)) в сравнении с аналогичной формулой у прототипа.
На фиг. 2 графически представлены погрешности прототипа и заявленного устройства относительно теоретических значений логарифма по основанию 2.

Claims (1)

  1. Устройство для логарифмирования двоичных чисел, содержащее регистр старших и регистр младших разрядов аргумента, первый, второй и третий блоки постоянной памяти, блок управления, коммутатор, сумматор, выходной регистр, триггер числа, сдвигатель, блок управления сдвигателем, первый и второй блоки сравнения, причем первый и второй входы первого блока сравнения соединены соответственно с первыми выходами регистра старших разрядов аргумента и первого блока постоянной памяти, а выход - с первым входом сумматора, первый и второй входы второго блока сравнения подключены ко вторым выходам соответственно сумматора и третьего блока постоянной памяти, а выход - ко второму входу сдвигателя, кроме того, выходы блока управления подключены к первому и второму входам коммутатора, третий и четвертый входы которого связаны с выходом второго блока постоянной памяти и выходом сдвигателя соответственно, причем первый, третий и четвертый входы сдвигателя связаны со входом установки логической "1", с выходом третьего блока постоянной памяти и с выходом блока управления сдвигателем соответственно, первый и второй входы которого связаны через триггер числа с третьим выходом сумматора и напрямую с выходом регистра младших разрядов аргумента, связанного также со вторым блоком постоянной памяти, а выходы первого блока постоянной памяти и коммутатора соединены со вторым и третьим входами сумматора, кроме того, вход третьего блока постоянной памяти соединен с первым выходом сумматора и со входом выходного регистра, отличающееся тем, что дополнительно содержит ячейку памяти константы "1", связанную с входом первого блока постоянной памяти.
RU2015152366A 2015-12-07 2015-12-07 Устройство для логарифмирования двоичных чисел RU2614932C1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2015152366A RU2614932C1 (ru) 2015-12-07 2015-12-07 Устройство для логарифмирования двоичных чисел

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2015152366A RU2614932C1 (ru) 2015-12-07 2015-12-07 Устройство для логарифмирования двоичных чисел

Publications (1)

Publication Number Publication Date
RU2614932C1 true RU2614932C1 (ru) 2017-03-30

Family

ID=58506864

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2015152366A RU2614932C1 (ru) 2015-12-07 2015-12-07 Устройство для логарифмирования двоичных чисел

Country Status (1)

Country Link
RU (1) RU2614932C1 (ru)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SU593212A1 (ru) * 1976-05-20 1978-02-15 Омский политехнический институт Цифровое устройство дл логарифмировани двоичных чисел
SU1262489A1 (ru) * 1984-10-29 1986-10-07 Кировский Политехнический Институт Устройство дл вычислени логарифма
RU2453900C2 (ru) * 2010-03-04 2012-06-20 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Юго-Западный государственный университет" (ЮЗГУ) Параллельный сумматор-вычитатель в троичной системе счисления на нейронах
WO2014182672A1 (en) * 2013-05-07 2014-11-13 Wilber Scott A Acquisition and assessment of classically non-inferable information

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SU593212A1 (ru) * 1976-05-20 1978-02-15 Омский политехнический институт Цифровое устройство дл логарифмировани двоичных чисел
SU1262489A1 (ru) * 1984-10-29 1986-10-07 Кировский Политехнический Институт Устройство дл вычислени логарифма
RU2453900C2 (ru) * 2010-03-04 2012-06-20 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Юго-Западный государственный университет" (ЮЗГУ) Параллельный сумматор-вычитатель в троичной системе счисления на нейронах
WO2014182672A1 (en) * 2013-05-07 2014-11-13 Wilber Scott A Acquisition and assessment of classically non-inferable information

Similar Documents

Publication Publication Date Title
CN105468331B (zh) 独立的浮点转换单元
US8639737B2 (en) Method to compute an approximation to the reciprocal of the square root of a floating point number in IEEE format
US20160313976A1 (en) High performance division and root computation unit
US20060129623A1 (en) Division and square root arithmetic unit
US20160139882A1 (en) Accuracy-conserving floating-point value aggregation
Hormigo et al. Measuring improvement when using HUB formats to implement floating-point systems under round-to-nearest
US8060551B2 (en) Method and apparatus for integer division
WO2019182943A1 (en) Stochastic rounding logic
JPH02112023A (ja) 基数16除算器
KR102412746B1 (ko) 부동 소수점 제곱근 연산 장치 및 방법
WO2016119547A1 (en) Method and apparatus for converting from integer to floating point representation
CN108334304B (zh) 数字递归除法
TWI754680B (zh) 產生起始估算值的裝置及方法、製造方法及測試方法
JP7044528B2 (ja) リーディングゼロ予想
RU2614932C1 (ru) Устройство для логарифмирования двоичных чисел
Chandu et al. Design and implementation of high efficiency square root circuit using Vedic mathematics
Roy Implementation of Goldschmidt's Algorithm with hardware reduction
RU2595906C1 (ru) Устройство для вычисления функций
KR20150107614A (ko) 데이터 처리장치 및 이진수에 대해 시프트 기능을 수행하는 방법
Chen et al. Design and implementation of reciprocal unit
RU2633095C1 (ru) Цифровое устройство для логарифмирования двоичных чисел
Nandini et al. High Speed and Power Optimized Parallel Prefix Modulo Adders using Verilog
Latha et al. Residue-to-Binary converters for the seven moduli set {2 n-5-1, 2 n-3-1, 2 n-2+ 1, 2 n-1-1, 2 n-1+ 1, 2n, 2 n+ 1} for n even
Jeannerod et al. The Classical Relative Error Bounds for Computing Sqrt (a^ 2+ b^ 2) and c/sqrt (a^ 2+ b^ 2) in Binary Floating-Point Arithmetic are Asymptotically Optimal
Michard et al. Divgen: a divider unit generator

Legal Events

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

Effective date: 20171208