Синусно-косинусный функциональный преобразователь
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Текст
ОП ИСАНИЕ ИЗОБРЕТЕНИЯ К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ Союз СоветскихСоциалистическихРеспублик(51) М. К, б 06 Г 7/548 Гоеударствелннй комитет Опубликовано 30.10.82, Бюллетень40Дата опубликования описания 05.11.82ло делан изобретений и открытийкода аппроксимиаргумента. Изобретение относится к вычислительнойтехнике и предназначено для воспроизведения функций синуса и косинуса по аргументу, представленному либо параллельным,либо число-импульсным (унитарным) кодом, и может быть использовано в цифровомпреобразователе координат устройства отображения информации.Известен синусно-ккосинусный преобразователь с число-импульсной оббработкой информации, в котором воспроизведение функций осуществляется методом кусочно-линейной аппроксимации, содержащий регистры,ключ, триггеры, элементы И 1.Однако указанный преобразователь имеет относительно узкие функциональные возможности, так как работает только по числоимпульсному коду аргумента,Наиболее близким по технической сущности к предлагаемому является цифровойсинусно-косинусный преобразователь дляформирования радиально-круговой развертки, содержащий датчик прямого и инвертированного кода угла, фазосдвигатель (сумматор по модулю два), два коммутатора кодов, преобразователь код-временной интервал, два триггера, два элемента И, два счетчика импульсов, синхронизатор, переключатель кода и цифровой генератор эталонного синусоидального кода, образованный счетчиком импульсов, дешифратором, блоком памяти и число-импульсным умножителем 2). Преобразователь позволяет выполнять операции преобразования параллельного кода " аргумента с(. в коды з 1 п"к и соарес, которые производятся последовательно во времени методом кусочно-линейной аппроксимации.Для преобразований входной код аргумента разделен на две части - управляющую и аппроксимирующую, Развертывание эталонной синусно-коси нусной зависимости производится внутри интервала аппроксимации до сравнения кода линейной развертки независимого аргумента с кодом аппроксимирующей части. Поэтому длительность ци кла воспроизведения функций определяется выражениемтпр= г, (1) где 1 - период частоты импульсов на тактовом входе;п - число разрядоврующей частиОсновнымп недостатками описанного преобразователя являются низкое быстродействиенизкий коэффициент использовани. оборудования. Указанны" недостати обусловлены неэффективным использованием оборудования при реализации преобр гователя на современной элементной б кс, поскольку счетчики указанного типа являются реверсивными, а в преобразователе они используются в режиме лишь одностороннего счета. Кроме того, к недостаткам преобразователя следует отнести и то, что в нем не предусмотрена возможность работы по число-импульсному коду аргумента.Цель изобретения - повышение быстродействия.Поставленная цель достигается тем, что в синусно-косинусный преобразователь, содержащий первый блок памяти, два выходных счетчика, первый умножитель и сумматор по модулю два, дополнительно введены два входных счетчика, сумматор адреса, второй блок памяти, три коммутатора, элемент ИЛИ, второй ,1 ножитель и блок управления, входы с цервого по третий которого соединены с входаи соответственно запуска, тактовым и задания режима преобразователя, входы параллельного кода старших и младших разрядов которого соединены соответственно с входами записи первого и второго входных счетч. ков, входы разрешения записи которых сиди ены с входом запуска преобразоват в ,я, вход число- импульсного кода которого с:динен с первым и вторым информационнми входами первого коммутатора, первый и пторой выходы которого соединены с зхо.,и соответственно суммирования и вычи 1 ания второго входного счетчика, выход пер юлнения при суммировании и выход переполнения при вычитании которого соединены соответственно с входами суммирования и .:ычитания первого входного счетчика и соответветственно с четвертым и пя 1 ым входами блока управления, шестой вход которого соединен с выходом второго из старших разрядов первого входного счетчика и первым входом сумматора по модулю два, второй вход которого соединен с выходом первого из старших разрядов первого входного счетчика и выходом знака синуса преобразователя, выход знака косинуса которого соединен с выходом сумматора по модулю два, выход разрядов, кроме двух старших, первого входного счетчика соединен с информационным входом сумматора адреса и входом первого блока памяти, первый и второй выходы которого соединены с управляющими входами соответственно первого и второго умножителей, тактовые входы которых соединены с выходом элемента ИЛИ, входы которого соединены с входом число-импульсного кода преобразователя, первым выходом блока управления и третьим информационным выходом первого коммутатора, четвертый ин 4 О 45 50 55 10 15 о 25 зо35 формационный вход которого соединен с вторым выходом блока управления и управляющим входом второго выходного счетчика, третий выход блока управления соединен с управляющим входом первого выходного счетчика, четвертый выход блока управления соединен с первым управляюшим входом блока анализа кода, второй управляющий и информационный входы которого соединены соответственно с выходом переполнения и кодовым выходом сумматора адреса, вход переноса которого соединен с выходом старшего разряда второго входного счетчика, управляюшим входом первого коммутатора и первым информационным входом второго коммутатора, управляющий, второй и третий информационные входы которого соединены соответственно с выходом второго из старших разрядов, первого входного счетчика, выходом первого и выходом второго умножителей, первый и второй выходы второго коммутатора соединены соответственно с выходом число-импульсного кода синуса и выходом число-импульсного кода косинуса преобразователя и соответственно с первым и вторым информационными входами третьего коммутатора, первый и второй управляющие входы которого соединены соответственно с третьим выходом второго ком. мутатора и входом задания режима преобразователя, первый и второй выходы третьего коммутатора соединены соответственно с входом суммирования и входом вычитания первого выходного счетчика, выход которого соединен с выходом параллельного кода косинуса преобразователя, выход параллельного кода синуса которого соединен с выходом первого выходного счетчика, вход запипи которого соединен с входом записи второго выходного счетчика и выходом второго блока памяти, вход которого соединен с выходом блока анализа кода. Блок управления содержит регистр сдвига, два триггера, элемент ИЛИ, два элемента И и два элемента 2 И - ИЛИ, первый вход блока управления соединен с первым входом первого элемента 2 И - ИЛИ и управляющим входом регистра сдвига, тактовый вход которого соединен с выходом первого элемента И и первым входом второго элемента И, второй вход которого соединен с выходом первого триггера, первый и второй входы которого соединены с выходом первого элемента 2 И - ИЛИ и элемента ИЛИ, первый и второй входы которого соединены с четвертым и пятым входами блока управления, соединенного с вторым входом первого элемента 2 И - ИЛИ, третий вход которого соединен с третьим входом элемента ИЛИ, первым выходом регистра сдвига и вторым выходом блока управления, первый выход которого соединен с выходом второго элемента И, вход разрешения записи регистра сдвига соединен с третьим входом блока управления и первым входом пер970357 выходами регистра сдвига, прямой выход регистра сдвига и выход второго элемента 2 Р - ИЛИ соединены соответственно с третьим и четвертым выходами блока управления. 1 ОКроме того, блок анализа кода содержит группу элементов НЕ, два коммутатора и сумматор, управляющий вход и выход которого соединены соответственно с вторым управляющим входом блока анализа кода и входом первого коммутатора, выход которо 15 го соединен с выходом блока анализа кода, информационный вход которого соединен с входами элементов НЕ группы и первым информационным входом второго коммутатора, второй информационный вход которого соединен с выходами элементов НЕ группы, выход второго коммутатора соединен с информационным входом сумматора, вход переноса которого соединен с управляющим входом второго коммутатора и первым управляющим входом блока анализа кода. 25 30(3) 55 л Р где ул =Х уп; 2 а уп; - разрядная цифра кода 2 улс - разрядная цифра старшего раз О ряда счетчика 2, т. е. разряда= (Р + 3) кода сВЫЧИСЛЕНИЕ КОДОВ /51 цсС/ И /СОза/ ПрОИСХОдит в течение одного цикла преобразования и производится для нечетного (1, 111) квадранта аргумента а на основе соотношений:(5) 55 ллгде с 1.а,п =а.л(1 ".ал)1тлАа;. . снап; 2 вого элемента И, второй вход которого соединен с первым и вторым входами второго элемента 2 И - ИЛИ, третий и четвертый входы которого соединены соответственно с прямым и инверсным выходами второго триггера, первый и второй входы которого соединены соответственно с вторым и третьим На фиг. 1 представлена блок-схема преобразователя; на фиг. 2 - схема блока управления; на фиг. 3 - схема блока анализа кода.Синусно-коси нусный функциональный преобразователь содержит счетчики 1 - 4, сумматор 5 адреса, блок 6 управления, блок 7 анализа кода, блоки 8 и 9 памяти, умно- жители 10 и 11, коммутаторы 12 - 14, сумматор 15 по модулю два, элемент ИЛИ 16, входы 17 - 23 преобразователя, входы 24 - 26 блока управления, выходы 27 и 28 сумматора адреса, выход 29 блока анализа кода, выходы 30 - 33 блока управления, выходы 34 - 39 преобразователя. Блок 6 управления содержит регистр 40 сдвига, триггеры 41 и 42, элемент ИЛИ 43, элемент 2 И - ИЛИ 44, элементы И 45 и 46, элемент 2 И - ИЛИ 47. Блок 7 анализа кода содержит коммутатор 48, сумматор 49, группу 50 элементов НЕ и коммутатор 51.Преобразователь работает в двух режимах: в режиме преобразования параллельного кода аргумента и в режиме преобразования число-импульсного кода аргумента в коды его синуса и косинуса.На вход 21 преобразователя поступает импульс запуска И 21, на вход 22. - тактовые импульсы Т И 22, на вход 19(20) - числоимпульсный код аргумента Ф 19(Ф 20), а на вход 23 - сигнал выбора режима П 23, таким образом, что при П 23- 1 активизирован первый режим работы преобразователя, а при П 23=0 - второй. При этом код Ф 19 (Ф 20) поступает на преобразователь лишь во втором режиме его работы,6В первом режиме (П 23=1) производится преобразование (п+2) -разрядного кода й арГуМЕНта д. В КОдц 51 Па И СОза.Аргумент ос и код с связаны между собой соотношением л+гс,=2 гп.1 с; 2 (1) ГдЕ Ы 1 раЗрядНЫЕ цИфрЫ КОда с 1Два старших разряда кодаопределяют ЗНаКОВЫЕ раэрядЫ КОДОВ 51 П с И СО 5 а 1 В СООтветствии с выражениями:Ф 36 = сС 1;Ф 37 = с 1 + а(2;где Ф 36, Ф 37 - знаковые разряды 51 пс И СОзс.Остальные Р старших разрядов кода Й, снимаемых со счетчика 1, образуют код а уп управляющей части аргумента, а гп= (п - Р) разрядов кода д, содержащихся в счетчике 2, - код сад апроксимирующей части аргумента. При этом число участков аппроксимации равно М = 2, а длина каждого участРКа раВНа Лай = Х/2/1 п 1.Определение кодов 51 па и соза производится циклически методом кусочно-линейной аппроксимации с использованием тригонометрических формул приведения и число- импульсным развертыванием эталонных синусно-косинусных зависимостей в пределах половины участка аппроксимации.Блок 8 памяти содержит коды 51 п(сф значений синуса в )-ой узловой точке аппроксимации, выбираемые по коду Ы" или ПО КОду (1 - сс), а бЛОК 9 ПаМятИ - КОд,1 К ь 1 л 1 и Ксоь) угловых коэффициентов наклона функций синуса и косинуса соо гветственно, выбираемые по коду Йул,лПри этом коды сйф и асуп связаны соотношениемл,с; - разрядная цифра кода 4 апСвязь между разрядными цифрами кодов уп, Ьад и кода аС такая, чтоУП4 УП 2 "Ы Р 2 УПР ). ртз =4 - -снапф р 1 =ап," сп.2 коапп 5АФормирование кода с" выполняется сумматопом 5 адреса, а выдача кода аили (1 - с) на блок 8 памяти - блоком 7 анализа кода.Умножители 10 и 11 служат для получения число-импульсных кодов произведений параллельных кодов Кэ 1 п и К соответственно на число-импульсный код о .Подключение выходных кодов умножителей 10 и 11 к входу сложения (вычитания) счетчиков 3 и 4 производится коммутаторами 13 и 14. Блок 6 управления предназначен для формирования последовательности сигналов, синхронизирующих работу преобразователя во времени.Перед началом вычисления преобразователь содержит информацию предыдущего 20 цикла вычисления. Цикл вычисления начинается с приходом импульса запуска И 21, по которому в счетчики 1 и 2 записывается код аргумента, триггер 41 устанавливается в нулевое состояние, а регистр 40 - в состояние 00001 (П 23= 1).25 Начальное значение вычисления кода з 1 пА (созА) заносится в счетчик 3 (4) по сигналу П 30=1 (П 32=). При этом сигнал П 31=ПЗО с 2 Ч ПЗО 2, снимаемый с выхода 31 блока управления, управляет в блоке 7 анализа кода выбором кода с или (1 - )Сигналы ПЗО = 1 и П 32 = 1 вырабатываются последовательно на выходах 30 и 32 блока 6 управления состояниями 00001 и 00100 регистра 40 соответственно. Сдвиг регистра 40 производится по каждому тактовому импульсу ТИ 22. После перехода регистра 40 в состояние 00000 триггер 41 переключается в состояние 1 и обеспечивает поступление ТИ 22 на выход 33, связанный с тактовыми входами умножителей 10 и 11 и счетными входами счетчика 2.Цикл вычислений синусно-косинусных зависимостей в счетчиках 3 и 4 продолжается до переполнения в плюс (минус) счетчика 2, который при о =1, работает на сложение, а при с = 0 - на вычитание.С окончанием импульса И 25 переполнения в плюс (импульса И 26 переполнения в минус) поступление тактовых импульсов запрещается, при этом в счетчике 3 находится искомый код /з 1 пК/, а в счетчике 4 - код /созе/, а с выходов 36 и 37 снимаются знаковые разряды Ф 36, Ф 37 кодов 51 пс( и совсоответственно.При переполнении счетчика 2 в минус происходит отработка преобразователем лишнего такта вычисления, коррекция которого производится предварительно по сигналу И 32 перед формированием тактовых импульсов на выходе 33. 30 35 40 45 50 55 Из описанного выше следует, что длительность цикла вычисления может быть определена выражениемТь 2, (6)Во втором режиме сигналом П 23=0 запрещается работа блока 6 управления и коммутатора 14.По импульсу запуска И 21 в счетчики 1 и 2 записывается начальный код аргумента.С подачей число-импульсного кода Ф 19 (Ф 20) аргумента в произвольном квадранте с выхода 38 (39) снимается число-импульс ный код его синуса (косинуса), а с выходов 36 и 37 - коды знаков синуса и косинуса.Вычисленные в первом режиме параллельные коды /з 1 п";./ и /соМ/ сохраняются в счетчиках 3 и 4.Сравнивая выражения (1) и (6), получаем оценку(7)т 2из которой следует, что быстродействие предлагаемого преобразователя при воспроизведении функций синуса и косинуса параллельными кодами не менее чем в 2 раза выше быстродействия прототипа в аналогичном преобразовании.Кроме того, введение второго режима генерации число-импульсных кодов указанных функций расширяет функциональные возможности преобразователя и повышает коэффициент использования оборудования, так как с окончанием первого режима содержимое счетчиков 3 и 4 может быть использовано, например, для формирования радиально-круговой развертки, во время которого часть остального оборудования обеспечивает выполнение вгорого режима работы.Формула изобретения1. Синусно-косинусный функциональный преобразователь, содержащий первый блок памяти, два выходных счетчика, первый умножитель и сумматор по модулю два, отличаюиийся тем, что, с целью повышения быстродействия, в него введены два входных счетчика, сумматор адреса, второй блок памяти, три коммутатора, элемент ИЛИ, второй умножитель и блок управления, входы с первого по третий которого соединены с входами соответственно запуска, тактовым и задания режима преобразователя, входы параллельного кода старших и младших разрядов которого соединены соответственно с входами записи первого и второго входных счет чиков, входы разрешения записи которых соединены с входом запуска преобразователя, вход число-импульсного кода которого соединен с первым и вторым информационными входами первого коммутаторапервый и второй выходы которого соединены с входами соответственно суммирования и вычитания второго входного счетчика, выход переполнения при суммировании и выход переполнения при вычитании которого соединены соответственно с входами суммирования и вычитания первого входного счетчика и соответственно с четвертым и пятым входамиблока управления, шестой вход которого соединен с выходом второго из старших разрядов первого входного счетчика и первым вхондом сумматора по модулю два, второи вход которого соединен с выходом первого из стар,их разрядов первого входного счетчика ивыходом знака синуса преобразователя, выход знака косинуса которого соединен с выходом сумматора по модулю два, выход разрядов, кроме двух старших. первого входного счетчика соединен с информационнымвходом сумматора адреса и входом первогоблока памяти, первый и второй выходы которого соединены с управляющими входами соответственно первого и второго умножителей, тактовые входы которых соединены с выходом элемента ИЛИ, входы которогосоединены с входом число-импульсного кода преобразователя, первым выходом блока управления и третьим информационным выходом первого коммутатора, четвертый информационный вход которого соединен с вторым выходом блока управления и управляющим входом второго выходного счетчика 25 третий выход блока управления соединен с управляющим входом первого выходного счетчика, четвертый выход блока управления соединен с первым управляющим входом блока анализа кода, второй управляющий и информационный входы которого соединены соответственно, с выходом переполнения и кодовым выходом сумматора адреса, вход переноса которого соединен с выходом старшего разряда второго входного счетчика, управляющим входом первого коммутатора и первым информационным входом второго коммутатора, управляющий, второй и третий информационные входы которого соединены соответственно с выходом второго из старших разрядов первого входного счетчика, выходом первого и и выходом второго умно жителей, первый и второй выходы второго коммутатора соединены соответственно с выходом число-импульсного кода синуса и выходом число-импульсного кода косинуса преобразователя и соответственно с первым45 и вторым информационными входами третьего коммутатора, первый и второй управляющие входы которого соединены соответственно с третьим выходом второго коммутатора и входом задания режима преобразователя, первый и второй выходы третьего комму татора соединены соответственно с входом суммирования и входом вычитания первого выхолного счетчика, третий и четвертый выходы третьего коммутатора соединены соответственно с входом суммирования и входом вычитания второго выходного счетчика, 55 выход которого соединен с выходом параллельного кода косинуса преобразователя, выход параллельного кола синуса которого соединен с выходом первого выходного счетчика, вход записи которого соелннен с входом записи второго выходного счетчика и выходом второго блока памяти, вход которого соединен с выходом блока анализа кода.2. Преобразователь по п. 1, отличающицся тем, что блок управления содержит регистр сдвига, два триггера, элемент ИЛИ, два элемента И и два элемента 2 И - ИЛИ, первый вход блока управления соединен с первым входом первого элемента 2 И - ИЛИ и управляющим входом регистра сдвига, тактовый вход которого соединен с выходом первого элемента И и первым входом второго элемента И, второй вход которого соединен с выходом первого триггера, первый и второй входы которого соединены с выходом первого элемента 2 И - ИЛИ и элемента ИЛИ, первый и второй входы которого соединены с четвертым и пятым входами блока управления, соединенного с вторым входом первого элемента 2 И в И,третий вход которого соединен с третьим вхолом элемента ИЛИ, первым выходом регистра сдвига и вторым выходом блока управления, первый выхол которого соединен с выходом второго элемента И, вход разрешения записи регистра сдвига соединен с третьим входом блока управления и первым входом первого элемента И, второй вход которого соединен с вторым входом блока управ. пения, шестой вхол которого соединен с первым и вторым вхолами второго элемента 2 И - ИЛИ, третий и четвертый входы которого соединены соответственно с прямым и инверсным выходами второго триггера, первый и второй входы которого соединены соответственно с вторым и третьим выходами регистра сдвн га, прямой выход регистра сдвига и выхол второго элемента 2 И - ИЛИ соединены соответственно с третьим и четвертым выходами блока управления.3. Преобразователь по п. 1, отлачаюи(ийся тем, что блок анализа кода содержит группу элементов НЕ, два коммутатора и сумматор, управляющий вход и выхол которого соединены соответственно с вторым управляющим входом блока анализа кола и входом первого коммутатора, выход которого соединен с выходом блока анализа кода, информационный вход которого соелннен с входами элементов НЕ группы и первым информационным входом второго коммутатора, второй информационный вход которого соединен с выходами элементов НЕ группы, выход второго коммутатора соединен с информационным входом сумматора, вход переноса которого соединен с управляющим входом второго коммутатора и первым управляющим входом блока анализа кода.Источники информации,принятые во внимание при экспертизе 1. Авторское свидетельство СССР510717, кл. (з 06 Г 7/548, 19742. Авторское свидетельство СССР640423, кл. б 017(12, 1977 (прототип).ета Срытийна 6., д. 4/5Проектная 4 едактор И.Михеаказ 7411/59 ВНИИПИпо д113035, Мо илиал ППП Составитель А. ЗорТехред И. ВересТираж 731Государственного комитлам изобретений и откква, Ж - 35, РаушскаяПатент, г. Ужгород, ул Корректор Н. ЬурякПодписноеССР
СмотретьЗаявка
3276764, 20.04.1981
ПРЕДПРИЯТИЕ ПЯ В-8150
КИСЕЛЕВ ЕВГЕНИЙ ФЕДОРОВИЧ, КУЗИНА ОЛЬГА АЛЕКСЕЕВНА
МПК / Метки
МПК: G06F 7/548
Метки: синусно-косинусный, функциональный
Опубликовано: 30.10.1982
Код ссылки
<a href="https://patents.su/7-970357-sinusno-kosinusnyjj-funkcionalnyjj-preobrazovatel.html" target="_blank" rel="follow" title="База патентов СССР">Синусно-косинусный функциональный преобразователь</a>
Предыдущий патент: Устройство для деления чисел
Следующий патент: Устройство для возведения в квадрат
Случайный патент: Эксцентриковый регулятор паровой машины