Цифровое устройство для вычисления синусно-косинусных зависимостей
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Номер патента: 1104510
Авторы: Закидальский, Синьков
Текст
СОЮЗ СОВЕТСКИХоаивлиОМкаикРЕСПУБЛИК ц 9) ц 1) 0 А здр С 06 Р 7/548ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССРПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙОПИСАНИЕ ИЗОБРЕТЕНИЯ К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ(72) А.И. Закидальский и М,В. Синьков (71) Институт проблем моделирования в энергетике АН Украинской ССР (53) 681.325(088.8)(56) 1, Авторское свидетельство СССР В 723581, кл. С 06 Р 15/31, 1977.2. Авторское свидетельство СССР В 363973, кл. С 06 Р 7/544, 1970 (прототип).(54)(57) 1. ЦИФРОВОЕ УСТРОИСТВО ДЛЯ ВЫЧИСЛЕНИЯ СИНУСНО-КОСИНУСНЫХ ЗАВИСИМОСТЕЙ, содержащее сдвиговый регистр младших разрядов аргумента, регистр старших разрядов аргумента, блок памяти, первый и второй регистры слагаемых, мультиплексор, сумматор и блок управления, выходы с первого по четвертый которого соединены с управляющими входами соответственно блока памяти, мультиплексора и входами записи первого и второго регистров слагаемых, пятый выход блока управле" ния соединен с входом сдвига сдвигового регистра младших разрядов аргумента, выход и вход записи которого соединены соответственно с первым входом блока управления и шестым выходом блока управления, подключенным к входу записи регистра старших разрядов аргумента, выход которого соединен с адресным входом блока памяти, информационные входы сдвигового регистра младших и регистра старших разрядов аргумента соединены с входом аргумента устройства, о т л ич а ю щ е е с я тем, что, с целью сокращения аппаратурных затрат за счет снижения емкости блока памяти,оно содержит регистр узловых значений и блок введения коэффициента,управляющий вход которого соединенс седьмым выходом блока управления,восьмой выход и второй и третий входы которого соединены соответственнос входом записи регистра узловыхзначений, тактовым входом и входомразрешения записи устройства, девятый выход блока управления соединенс выходом конца преобразования устройства, информационные входы с первого по третий мультиплексора соединены соответственно с выходом блокапамяти, выходом сумматора и первымвыходом блока введения коэффициента,второй выход и информационный вход которого соединены соответственнос входом переноса и выходом сумматора, первый и второй входы слагаемыхкоторого соединены с выходами соответственно первого и второго регистровслагаемых, информационные входы которых подключены к выходу регистра узловых значений, информационный вход которого соединен с выходом мультиплексора и выходом устройства, причем блокуправления содержит три элементаИЛИ-НЕ, элемент НЕ, три элемента И-НЕ,элемент И, три триггера, счетчик иузел памяти, первый выход которогосоединен с первым входом элемента И,выход которого соединен со счетнымвходом счетчика, выход которого соединен с первым входом узла памяти,вход обнуления счетчика соединен стретьим входом блока управления, первыми входами первых элементов ИЛИ-НЕи И-НЕ и через элемент НЕ соединен1104510 с входом установки в йоль первоготриггера, инверсный выход которогосоединен с информационным входом первого триггера и первым входом второгоэлемента ИЛИ-НЕ, выход которого соединен с вторым входом элемента И и вторым входом узла памяти, третий ичетвертый входы которого соединенысоответственно с выходом третьегоэлемента ИЛИ-НЕ и старшим разрядомпервого входа блока управления, остальные разряды которого соединеныс входами третьего элемента ИЛИ-НЕ,вторые входы первых элементов ИЛИ-НЕи И-НЕ соединены с вторым входом бло"ка управления и первым входом второго элемента И-НЕ, выход которого соединен с вторым входом второго элемента ИЛИ-НЕ и тактовым входом первого триггера, вход установки в единицукоторого соединен с вторым выходомузла памяти, третий выход которогосоединен с входами установки в нольвторого и третьего триггеров, входыустановки в единицу которых соединены с выходами соответственно первогои третьего элементов И-НЕ, выходыпервого элемента ИЛИ-НЕ и второго Изобретение относится к вычислительной технике, в частности к цифровым вычислительным устройствам для нахождения тригонометрических функций, и может быть использовано при 5 разработке больших специализированных интегральных схем для реализации цифровых вычислителей синуса и косинуса, при реализации цифровых вычислителей гиперболического синуса и ко О синуса, а также экспоненты.Известен специализированный процессор, содержащий регистр, блок умножения, сумматор, элементы И, блок памяти, блок управления, сдвигатель. 5 Приближающий полином вычисляется по схеме Горнера. Наличие комбинационного блока умножения повышает быстродействие 1 . Недостатком этого процессора является его сложность. триггера соединены с входами третьего элемента И"НЕ, выход третьеготриггера соединен с вторым входомвторого элемента И-НЕ, выходы с первого по девятый блока управлениясоединены соответственно с инверснымвыходом младшего разряда счетчика,четвертым, пятым, шестым и седьмымвыходами узла памяти, выходом разрядов счетчика, выходом второгоэлемента ИЛИ-НЕ и третьим выходомузла памяти,2, Устройство по п. 1, о т л и ч а. ю щ е е с я тем, что блок введения коэффициента содержит сумматор, сдвигатель и узел коррекции, причем информационный вход блока соединен с информационным входом сдвигателя и входом первого слагаемого сумматора, вход второго слагаемого которого соединен с выходом сдвигателя и входом узла коррекции, выход которого соединен с входом переноса сумматора и вторым выходом блока, управляющий вход и первый выход которого соединены соответственно с управляющим входом сдвигателя и выходом сумматора.1 Наиболее близким к данному устройству является арифметическое устройство специализированной цифровой вычислительной машины, содержащее два входных регистра, в которые заносятся старшие и младшие разряды аргумента, блок памяти, два регистра слагаемых, мультиплексор, сумматор и блок управления, Ло внешнему сигналу производится запись аргумента во входные регистры, Из блока памяти извлекается значение функции, соответствующее старшим разрядам входного кода и заносится в первый регистр слагаемых. Затем блок управления увеличивает адрес блока памяти на единицу и его содержимое заносится во второй регистр хранения интерполируемой функции. Процесс линейной интерполяции осуществляется путем подачи через мультиплексор на вход накапливающего сумматора содержимого первого и второго регистров слагаемых, т.е. значения функции в начале и в конце интерполируемого интервала. Входной регистр младших разрядов является сдвиговым. При сдвигании кода 5 вправо на выходе младшего разряда регистра появляется последовательный код. Он используется для управле. ния мультиплексором 21.Недостатком известного устройства 10 является то, что применение кусочно- линейной интерполяции в устройстве при жестких требованиях к точности приводит к резкому увеличению объема блока памяти для хранения узлов ин терполяции.Целью изобретения является сокращение аппаратурных затрат за счет снижения емкости блока памяти.Поставленная цель достигается тем,что цифровое устройство для вычисления синусно-косинусных зависимостей, содержащее сдвиговый регистр младших разрядов аргумента, регистр старших разрядов аргумента, блок памяти, . первый и второй регистры слагаемых, мультиплексор, сумматор и блок управления, выходы с первого по четвертый которого соединены с управляющими входами соответственно блока памяти, мультиплексора и входами записи первого и второго регистров слагаемых, пятый выход блока управления соединен с входом сдвига сдвигового регистра младших разрядов аргумента, выход 35 и вход записи которого соединены сост ветственно с первым входом блока управления и шестым выходом блока управления, подключенным к входу запи- ф си регистра старших разрядов аргумен 40 та, выход которого соединен с адресным входом блока памяти, информационные входы сдвигового регистра младших и регистра старших разрядов аргумента соединены с входом аргумента 45 устройства, содержит регистр узловых значений и блок введения коэффициента, управляющий вход которого соединен с седьмым выходом блока управления, восьмой выход и второй и третий 50 входы которого соединены соответственно с входом записи регистра узловых значений, тактовым входом и входом разрешения записи устройства, девятый выход блока управления со единен с выходом конца преобразования устройства, информационные входы с первого по третий мультиплексора соединены соответственно с выходом блока памяти, выходом сумматора и первым выходом блока введения коэффициента, второй выход и информационный вход которого соединены соответственно с входом переноса и выходом сумматора, первый и второй входы слагаемых которого соединены с выходами соответственно первого и второго регистров слагаемых, информационные входы которых подключены к выходу регистра узловых значений, информационный вход которого соединен с выходом мультиплексора и выходом устройства, причем блок управления содержит три элемента ИЛИ-НЕ, элемент НЕ, три элемента И-НЕ, элемент И, три триггера, счетчик и узел памяти, первый выход которого соединен с первым входом элемента И, выход которого соединен со счетным входом счетчика, выход которого соединен с первым входом узла памяти, вход обнуления счетчика соединен с третьим входом блока управления, первыми входами первых элементов ИЛИ-НЕ и И-НЕ и через элемент НЕ соединен с входом установки в ноль первого триггера, инверсный выход которого соединен с информационным входом первого триггера и первым входом второго элемента ИЛИ-НЕ, выход которого соединен с вторым входом элемента И и вторым входом узла памяти, третий и четвертый входы которого соединены соответственно с выходом третьего элемента ИЛИ-НЕ и старшим разрядом первого входа блока управления, остальные разрядыкоторого соединены с входами третьего элемента ИЛИ-НЕ, вторые входы первых элементов ИЛИ-НЕ и И-НЕ соединены с вторым входом блока управления и первым входом второго элемента И-НЕ, выход которого соединен с вторым входом второго элемента ИЛИ-НЕ и тактовым входом первого триггера, вход установки в единицу которого соединен с вторым выходом узла памяти, третий выход которого соединен с входами установки в ноль второго и третьего триггеров, входы установки в единицу которых соединены с выходами соответственно первого и третьего элементов И-НЕ, выходы первого элемента ИЛИ-НЕ и второго триггера соединены с входами третьего элемента И-НЕ, выход третьего тригге. ра соединен с вторым входом второгоэлемента И-НЕ, выходы с первого подевятый блока управления соединенысоответственно с инверсным выходоммладшего разряда счетчика, четвертым,,пятым, шестым и седьмым выходами 5узла памяти, выходом разрядов счет-чика, выходом второго элемента ИЛИ-НЕи третьим выходом узла памяти.Блок введения коэффициента содержит сумматор, сдвигатель и узел корОрекции, причем информационный вход,блока соединен с информационным входом сдвигателя и входом первого слагаемого сумматора, вход второго слагаемого которого соединен с выходомсдвигателя и входом узла коррекции,выход которого соединен с входом переноса сумматора и вторым выходомблока, управляющий вход и певый выход,которого соединены соответственно с 20управляющим входом сдвигателя и выходом сумматора.На фиг. 1 представлена блок-схема;на фиг. 2 и 3 - варианты выполнениясоответственно блока введения коэффициента и блока управления,Цифровое устройство для вычисления синусно-косинусных зависимостейсодержит сдвиговый регистр 1 младшихразрядов аргумента, регистр 2 старших 30разрядов аргумента, блок 3 памяти,мультиплексор 4, регистр 5 узловыхзначений, первый и второй регистры6 и 7 слагаемых, сумматор 8, блок 9введения коэффициента и блок 10 управления,Блок введения коэффициента содержит сумматор 11, узел 12 коррекциии сдвигатель 13, Блок управления содержит элементы ИЛИ-НЕ 14-16, элемент НЕ 17, элементы И-НЕ 18-20,элемент И 21, триггеры 22 - 24, счетчик 25 и узел 26 памяти.Цифровое устройство для вычисле 45 ния синусно-косинусных зависимостеи работает следующим образом,На входы 27 и 28 блока 10 управления поступают сигналы тактового генератора и сигнал записи кода аргумента. В результате этого блок 10 управления Формирует выходные сигналы управления, а именно: выход 29 формирует сигнал, осуществляющий запись в регистрах 1 и 2 младших и старших разрядов аргумента, выход 30 - сдвиг 5 влево содержимого регистра 1 младших разрядов аргумента, выход 31 - прибавление единицы к адресу блока 3 памяти, выход 32 - управление состо. янием мультиплексора 4, выход 33 - запись данных с мультиплексора 4 в регистр 5 узловых значений, выход 34 - запись в регистре 7 слагаемых, значений интерполируемой функции конца интервала интерполяции, выход 3 - запись в регистре 6 слагаемых значений интерполируемой функции начала интервала интерполяции, выход 36 задает коэффициент передачи блока введения коэффициента 9.Многоразрядный код аргумента, поступающий на вход 37 регистра 1 младших и вход 38 регистра 2 старших разрядов аргумента, по сигналу записи с блока 1 О управления записывается в регистр 1 младших и регистр 2 старших разрядов аргумента, После этого блок 10 правления устанавливается в исходное состояние. Из блока 3 памяти выбирается содержимое по адресу, записанному в регистре 2 старших разрядон аргумента и через мультиплексор 4 по сигналу, поступающему из выхода 33 блока 10 управления, заносится в регистр 5 узловых значений. Затем блок 10 управления формирует сигнал прибанления единицы к адресу блока 3 памяти, из которого извлекается содержимое, соответствующее значению Функции в конце интервала интерполяции, и помещается в регистре 5 узловых значений, Так как сигналы управления регистром 5 узловых значений и сигналы управления регистрами 6 и 7 слагаемых противофазны, то сначала происходит запись в регистр 6 или 7 слагаемых, т.е. прежнее содержимое регистра 5 узловых значений заносится в регистр 6 слагаемых, а затем через такт новое содержимое - в регистр 7 слагаемых. Далее формируется сигнал, поступающий с выхода 32 блока 10 управления на мультиплексор 4, Мультиплексор 4 переключается так, что выход блока 9 введения коэффициента поступает на инФормационный вход регистра 5 узловых значений. На входы сумматора 8 из регистров 6 и 7 слагаемых поступают сигналы, соответствующие значениям функции начала и конца интервала интерполяции. За чет монтажного сдвига из сумматора 8 снимается сигнал, соответствующий полусумме значения функции н начале и в конце интервала интерполяции, а на выходе блока введения коэффициента 9 - эначение функции, соответствующее середине интервала интерполяции, Это достигается тем, что на выходе 36 блока 10 управления формируется требуемый коэффициент передачи. Если в регистре 1 младших разрядов аргумента старший разряд равен 1, а остальные О, то на этом блок 10 управления прекращает свою работу и на выходе мультиплексора 4 формируется го 10 товый результат работы устройства в виде многоразрядного кода. При этом с выхода 39 блока 10 управления поступает сигнал о конце преобразования, Следует отметить, что при записи в регистр 1 младших разрядов аргумента всех нулей сигнал о конце преобразования формируется при появлении на выходе мультиплексора 4 значения функции начала интерполяции. На выходе 30 блока 1 О управления формируется сигнал сдвига, старший разряд выталкивается из регистра 1 младших разрядон аргумента, а ца место млад- шего разряда запись лается О. Вычисленное ранее значение функции в середине начального интервала записано н регистр Ь или 7 слагаемых. Так, если после сдвига старший разряд регистра 1 младших разрядов аргумента равен 1, то ньчислсцие значения функции заносится н регистр 6 слагаемых в качестве значения фукцции начала нового интервала интерполяции. Если 35 старший разряд регистра 1 младших разрядов аргумента равен О, то обновляется значение функции в конце интервала, т.е, производится запись в .регистр 7 слагаемых. После каждой 40 итерации интервал уменьшается вдвое. Коэффициент передачи блока 9 нведения коэффициента ири уменьшении интервала стремится к 1. Поэтому после определенного числа шагов можно пе рейти на линейную интерполяцию, совершая при этом ошибку меньше допустимой, С выхода 32 блока 10 управле-ния выдается новое значение сигнала управления, ири котором сигнал с вы хода сумматора 8 через вход 40 муль. типлексора 4 подается на вход регистра 5 узловых значений. Это позволяет для исследующих шагов ограничиться линейной интерполяцией. Благодаря 55 этому можно сократить длительность такта и повысить быстродействие устройства. Блок 1 О управления представляет собой автомат, устанавливаемый в исходное состояние внешним сигналом записи аргумента.Внутреннее состояние и состояние выходов 31, 32, 30, 29 и 33 блока 10 управления определяется числом импульсов сигнала, поступающего с тактового генератора (на схеме не показан) на вход 32 этого блока. Состояние выходов 35 и 34 блока 10 управления определяется как внутренним состоянием его, так и содержанием старше го разряда регистра 1 младших разрядов аргумента,Остановимся более подробно на реализации блока 9 введения коэффициента.При вычислении функции зпх, сонх коэффициент передачи блока должен бытЬравен яес2 Выходной код сумматора 8 поступает ца вход 41 сумматора 11 (фиг, 2), а на вход 42 его - через сдвигатель 12, Выход.36 блока 10 управления задает код сдвига.При хранении узлов интерполяции в блоке 3 памяти с шагом по аргументу Ь = 2 и точности вычислений,-5например 27-28 двоичных раэрядон, сдвигатель 13 должен иметь пятнадцать информационных выходов (входов) и обеспечить только восемь днухраэрядных сдвигов. Так как каждый сдвиг производится на два разряда, то комбинационный 15-нходоный сдвигатель 13 на восемь состояний можно заменить двумя сднигателями (с четными и нечетными входами) соответственно с восемью и семью входами. В свою очередь, такой сдвигатель может быть реализован на программируемой логической матрице (ПЛМ), позволяющей использовать восемь выходных функций общим объемом 48 конъюнкций 16-входцых переменных, Заметим, что комбинационный сдвига- тель требует ПЛМ объемом 36 конъюнкций 11 переменных, Избыточность и ПЛМ числа конъюнкций и резерв в 7-входовом сдвигателе одной выходной функции позволяют сформировать сигнал коррекции с выхода блока 9 введения коэффициента на входы иереносон сумматора 11 блока 9 и сумматора 8 устройства, Благодаря этому н одной из двух ПЛМ помимо сдвигателя можно разместить также комбинационный узеле12 коррекции. Сигнал коррекции повышает точность при работе на самом большом интервале интерполяции 6 и функционально является блоком хра 5, 653 128 Применение в качестве блока 9 сумматора 11 со сдвигателем 13 основано на разложении в ряд 10Р. 5 4вес -1 + +2 8 3 128При этом на вход 41 сумматора 11 ,поступает выходной код сумматора 8, на второй вход - со сдвигом, определяемым множителем Ь / Ь, а на входы пе" реноса сумматоров 8 и 11 - сигнал коррекции с выходов блоков 12 и 9 (однобитовое приближение выражения 5 ф3 128.Использование изобретения позволит при существующем уровне технологии получать на одном кристалле вычислители с точностью вычислений 24-32 двоичных разрядов.Применение блока введения коэффициента даже простейшего типа (сумматор и комбинационный сдвигатель) позволяет при вычислении значений с точностью 29 двоичных разрядов сократить объем блока памяти более чем в 100 раз по сравнению с объемом блока памяти базового объекта.Важным достоинством предлагаемого устройства является применение интерполяции старшими разрядами, что позволяет .прекратить вычисление при нулевых оставшихся младших разрядах в регистре младших разрядов и получить при выполнении только части ите раций точный результат. Это существенно отличает данное устройство от устройств, реализующих алгоритм Волдера, имеющих низкое быстродействие при больших затратах аппаратуры.1104510 фи ВНИИПИ Закйз 5261/35Тирах 699 Подписное . Филиал ППП "Патент",г. Ухгород, ул. Проектная, 4
СмотретьЗаявка
3564837, 31.01.1983
ИНСТИТУТ ПРОБЛЕМ МОДЕЛИРОВАНИЯ В ЭНЕРГЕТИКЕ АН УССР
ЗАКИДАЛЬСКИЙ АНАТОЛИЙ ИВАНОВИЧ, СИНЬКОВ МИХАИЛ ВИКТОРОВИЧ
МПК / Метки
МПК: G06F 7/548
Метки: вычисления, зависимостей, синусно-косинусных, цифровое
Опубликовано: 23.07.1984
Код ссылки
<a href="https://patents.su/7-1104510-cifrovoe-ustrojjstvo-dlya-vychisleniya-sinusno-kosinusnykh-zavisimostejj.html" target="_blank" rel="follow" title="База патентов СССР">Цифровое устройство для вычисления синусно-косинусных зависимостей</a>
Предыдущий патент: Устройство для умножения
Следующий патент: Устройство для извлечения квадратного корня
Случайный патент: Торцовое уплотнение