Устройство для вычисления тригонометрических функций
Изобретение относится к вычислительной технике и может быть использовано в специализированных и универсальных вычислительных машинах. Цель изобретения - повышение быстродействия . Цель достигается за счет применения специального кода, где устранены нули. Устройство содержит регистр 2 адреса, блоки 3 и 7 памяти , коммутатор 4, накапливающие сумматоры 5 и 13, буферные регистры 6 и 8, сдвигатель 9, группы элементов И 10 и 11, группу элементов ИЛИ 12, схему 14 сравнения, элеto СО о 4:: О сл
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК (511 4 С 06 Р 7/548
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
Н ABTOPCHOMV СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 3817344/24-24 (22) 26,11.84 (46) 07.06.86. Бюл. У 21 (71) Таганрогский радиотехнический институт им. В.Д.Калмыкова (72) В.Е.Золотовский и P.Â.Êoðîáêîâ (53) 681 325(088.8) (56) Авторское свидетельства СССР
В 978145, кл. G 06 F 7/548, 1980.
Байков В.Д., Смолов В.Б. Аппаратная реализация элементарных функций в ЦВМ. — Л.: 1975, с. 77, рис. 25б. (54) УСТРОЙСТВО ДЛЯ ВНЧИСЛЕНИЯ ТРИГОНОМЕТРИЧЕСКИХ ФУНКЦИЙ
„„Я0„„1236465 A 1 (57) Изобретение относится K вычислительной технике и может быть использовано в специализированных и универсальных вычислительных машинах.
Цель изобретения — повышение быстродействия ° Цель достигается за счет применения специального кода, где устранены нули. Устройство содержит регистр 2 адреса, блоки 3 и 7 памяти, коммутатор 4, накапливающие сумматоры 5 и 13, буферные регистры 6 и 8, сдвигатель 9, группы элементов И 10 и ll группу элементов ИЛИ 12, схему 14 сравнения, эле-
3 123646
Изобретение относится к вычислительной технике и может быть использована в специализированных и универсальных вычислительных машинах.
Целью изобретения является повышение быстродействия.
На чертеже представлена блок-схема устройства.
Устройство содержит вход 1 аргумента, регистр 2 адреса, блок 3 памяти, коммутатор 4, накапливающий сумматор 5, буферный регистр 6, . блок 7 памяти, буферный регистр 8, сдвигатель 9, группы элементов И 10 и 11, группу элементов ИЛИ 12, накапливающий сумматор 13, схему 14 сравнения, элемент И 15, входы 16-19.
Устройство работает следующим образом, В первом такте аргумент х, содержащий (n+1) разряд, где п — число разрядов аргумента, и один управляющий разряд записываются в регистр адреса, Старшие тп разрядов, включая управляющий разряд, поступают на пер- 1 вый блок 3 памяти, где в зависимости ат состояния управляющего разряда считывается либо sinx либо cosx, Для определенности вычисляется функция sinx чему соответствует О в
30 управляющем разряде, Тогда в первом такте считывается sinx, где хп-обозначение (m-1) старших разрядов аргумента. Па сигналу, поступающему на вход 17 коммутатор пропускает sinx на сумматор и записывает его как начальное условие.
Ва втором такте в регистр 2.записывается аргумент х, содержащий в управляющем разряде 1. Старшие m разрядов аргумента поступают на первый блок памяти, а младшие (и+1-m) разрядов — на второй блок памяти. По сигналу, поступающему на вход устройства 18, в регистр 6 записывается величина cosx из первого блока памяти, иэ второго блока памяти в регистр 8 записывается величина ах перекодирования в специальный кад, где ьх— (n+i ò) младших. разрядов аргумента.
$0
Специальный кад представляет собой код, в котором устранены нулевые разряды. В этом коде каждая цифра содержит (2+1) разряд. В l разрядах записывается число, соответствующее коли55 честву нулей предшествующих значащей цифре, а в (1+1) разряде записывается сама значащая цифра. Для того, чтобы количество нулей в исходном
5 3 числе была больше, оно предварительна преобразуется из двоичного кода в знакаразрядный двоичный код. При этом . значащими цифрами являются +1 или -1, В 2-ьl разряде при наличии +1, записывается О, а при -1 записывается l. Например, пусть задано число 0,01110110.
Промежуточная форма в энакораэряднай системе 0.10001010. Окончательно в форме специального кода получают
0000, 01И, 0011 lllo. Хотя в промежуГ точной форме три значащих разряда, в специальном коде имеются четыре значащих разряда. Это необходимо из следующих обстоятельств. Специальный код не имеет средств для обозначения нуля. Если промежуточный код оканчивается нулями, в промежуточную форму добавляется такое числа нулей, какое максимальное число без единицы маже записано быть в Г разрядах
В последнем (Е+!) разряде ставится значащая единица. В этом случае сдвиг практически на двойную длину выводит числа за разрядную . сетку и добавочная значащая единица не,оказывает влияния на вычисления.
Преобразуя обратно в промежуточную форму специальный кад, полу ают
Î.lÎÎÎfOlO, ОООООО1.
Так как спецкод эквивалентен знакоразрядному двоичному коду, то он
my содержит (-- +1) значащих разрядов
2 I где ш — разрядность младшей части числа. Для представления количества нулей необходимо log ш, таким, образам, общее число бит спецкада равно
При этом ь! =16 (m=8 и m =8), откуда N=20.
Самым неблагоприятным будет код
0.10!010!О, которому соответствует спецкад 00100100010001001110. В регистр 8 считывается весь кад сразу.
Старшие три разряда поступают на сумматор 13 и сдвигатель 9. Значащий (четвертый) разряд поступает на группы элементов И 10 и
В третьем такте происходит умножение cosx„, хранящегося в регистре
6, на старший разряд ах, хранящийся в регистре 8. С этой целью 1 старших разрядов спецкада поступают на вход сдвигателя 9, на другой вход которого поступает величина cosx . В о зависимости ат величины числа, заТираж 67! Подписное
ВНИИПИ Заказ 3091/51
Произв ° «nÎßHÃ å пр-тие, Р. Ужгороду ул о Проектная у ч
3 ) 236 писанного в f битах текущего разряда спецкода, величина cosx„ умножается на 2 " . Ha первом выходе сдвигателя появляется инверсия величины
cosx, поступающая из регистра 6, сдвинутая на (Т. +1) разряд, на втором выходе выдается эта же величина в прямом коде, В зависимости от сос" тояния (I+1) бита текущего разряда спецкода открываются элементы И первой группы 10-1 в (!. +1) бите или элементы И второй группы )1-0 в (Х+1) бите.
Через группу элементов ИЛИ инвер— сия или прямой код сдвинутой величины созх„ поступает через коммутатор на вход сумматора 5. По сигналу, поступающему на вход устройства 16 и появляющемуся на выходе элемента
15, происходит сложение величин с выхода коммутатора и содержимого сумматора 5, сложение содержимого сумматора !3 со старшими У битами разряда спецкода из регистра 8 и запись сдвинутого числа, хранящегося в ре- 25 гистре 6, с выхода прямого кода сдвигателя 9 в регистр 6.
Затем вновь подается сигнал на вход 16 и действия третьего такта повторяются. Это происходит до тех пор, пока величина в накапливающем сумматоре 13 не окажется равной или больше 1„„, Тогда на выходе схемы сравнения формируется логический нуль и работа устройства прекращается. В сумматоре 5 формируется ис35 комая величина функции sinx или cosх, Формула изобретения
Устройство для вычисления тригонометрических функций, содержащее регистр адреса, первый блок памяти, два буферных регистра, первую группу элементов И и первый накаплива45 ющий сумматор, причем вход аргумента устройства соединен с информационным входом регистра адреса, выход которого соединен с адресным входом первого блока памяти, о т л и ч а ю щ е е с я тем, что, с целью повы-. шения быстродействия, в него введены второй блок памяти, второй накапливаюший сумматор, вторая группа элементов И, группа элементов ИЛИ, коммутатор, сдвигатель, схема сравнения и элемент И, причем выход регистра соединен с адресным входом второго блока памяти, выход которого соединен с информационным входом первого буферного регистра, выход трех старших разрядов которого соединен с информационным входом первого накапливающего сумматора и управляющим входом сдвигателя, а выход младшего разряда — с первыми входами элементов И первой и второй групп, вторые входы которых соединены с инверсным и прямым выходами разрядов. сдвигателя, информационный вход которого соединен с выходом второго буферного регистра„ информационные входы первой и второй групп которого соединены соответственно с прямым выходом сдвигателя и выходом первого блока памяти, выход которого подключен к первому информационному входу коммутатора, второй информационный и управляющий входы которого соединены соответственно с выходами элементов
ИЛИ группы и установочным входом начальной установки второго накапливающего сумматора, информационный. вход и тактовый вход которого соеди; иены соответственно с выходом коммутатора и выходом элемента И, выход ко" торого подключен к тактовым входам первого накапливающего сумматора и ервого и второго буферных регистров, входы разрешения записи первого и второго буферных регистров соединены с входом задания режима устройства, тактовый вход которого соединен с первым входом элемента KIH второй вход которого соединен с выходом схемы сравнения, первый и второй входы которой соединены соответственно с выходом первого накапливающего сумматора и входом задания максимального числа в заданной разрядности устройства, выход которого соединен с выходом второго накапливающего сумматора, выходы элементов И первой н второй групп соединены соответственно с первыми и вторыми входами элементов ИЛИ группы.


