АСИНХРОННОЕ УСТРОЙСТВО ВЕКТОРНОГО ПОВОРОТА Российский патент 2019 года по МПК G06F7/548 G06F17/16 

Описание патента на изобретение RU2683182C1

Изобретение относится к вычислительной технике и может быть использовано в цифро-сигнальных процессорах или в качестве отдельного блока. Устройство может применяться в вычислительных средах с автономным разделением функций.

Известны устройства векторного поворота, спроектированные на разных принципах обработки сигналов. Так, из патента США US 3927312 известно устройство поворота, выполняющее вращение вектора. На вход устройства подаются значения угла поворота, действительные и мнимые составляющие вектора, подлежащего вращению, а сами вычисления сводятся к операциям сдвига и сложения. Устройство характеризуется необходимостью синхронизации процессов сдвига-сложения и большими аппаратными затратами.

В патенте США US 4807171 раскрыто устройство для поэтапного осуществления вращения цифрового сигнала, в котором используются таблицы памяти для трансформации данных поворота сигнального вектора. Устройство характеризуется сложностью управления и используемого оборудования.

Известно устройство векторного вращения, содержащее таблицы памяти косинуса и синуса угла поворота, дешифраторы и умножители, образующие вычислительную структуру для угла определения поворота (см. патент США US 7239341). Устройство характеризуется сложностью управления и используемого оборудования.

Наиболее близким является устройство вращения вектора согласно патенту РФ RU 2475830, предназначенное для использования в высокопроизводительных вычислительных системах, в частности системах цифровой обработки сигналов. Это устройство вращения вектора содержит блок псевдовращений и блок нормировки, на вход которого подаются компоненты двумерного вектора. На выходах получают первую (ненулевую) компоненту результирующего вектора (нулевая компонента не выводится) и код угла поворота (значения величин σi=sign(xiyi)). Вход блока нормировки соединен с выходом блока псевдовращений. В составе цепочки каскадов блока нормировки имеются каскады, содержащие сумматоры, наряду с каскадами, содержащими вычитатели. Блок нормировки представляет собой шестизвенную цепочку каскадов, в которой выход предыдущего каскада соединен с входом последующего. В каждый каскад наряду с вычитателем (сумматором) входит регистр, причем в каждом каскаде вход регистра является входом каскада. Выход регистра соединен с первым входом вычитателя (сумматора), а выход вычитателя (сумматора) является выходом каскада. В первом каскаде цепочки k-й бит первого входа вычитателя соединен с k+1-м битом второго входа (δ0=-1, k0=1, k=1, m-1), а 1-й бит второго входа устанавливается в ноль. Во втором каскаде k-й бит первого входа сумматора соединен с k+2-м битом второго входа (δ1=1, k1=2, k=1, m=2), а биты второго входа с 1-го по 2-й устанавливаются в ноль. На третьем каскаде цепочки k-й бит первого входа вычитателя соединен с k+5-м битом второго входа (δ2=-1, k2=5, k=1, m-5), а биты второго входа с 1-го по 5-й устанавливаются в ноль. На четвертом каскаде k-й бит первого входа сумматора соединен с k+9-м битом второго входа (δ3=1, k3=9, k=1, m-9), а биты второго входа с 1-го по 9-й устанавливаются в ноль. На пятом каскаде k-й бит первого входа сумматора соединен с k+10-м битом второго входа (δ4=1, k4=10, k=1, m-10), а биты второго входа с 1-го по 10-й устанавливаются в ноль. На шестом каскаде k-й бит первого входа сумматора соединен с k+16-м битом второго входа (δ5=1, k5=16, k=1, m-16), а биты второго входа с 1-го по 16-й устанавливаются в ноль.

Все известные устройства, включая ближайший аналог, отличаются большими аппаратными затратами и сложностью в управлении, что влечет за собой необходимость тщательной настройки и синхронизации работы блоков.

Решаемая изобретением задача заключается в улучшении технико-эксплуатационных характеристик устройства векторного поворота.

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

Для решения поставленной задачи с достижением заявленного технического результата асинхронное устройство векторного поворота содержит блок формирования синуса и косинуса угла поворота, блок сравнения с максимумом, блок умножения синуса и косинуса, блок формирования комбинации и блок формирования результата поворота. Вход блока формирования синуса и косинуса угла служит для ввода данных величины угла поворота. Первый вход и второй входы блока умножения синуса и косинуса служат соответственно для ввода данных синуса и косинуса исходного угла. Вход блока формирования синуса и косинуса угла поворота соединен с пятым входом блока формирования результата поворота. Первый выход и второй выход блока формирования синуса и косинуса угла поворота соединены соответственно с первым входом и вторым входом блока сравнения с максимумом. Первый выход блока сравнения с максимумом соединен с третьим входом блока умножения синуса и косинуса, а второй выход - с четвертым входом блока умножения синуса и косинуса. Первый, второй, третий и четвертый выходы блока умножения синуса и косинуса соединены соответственно с первым, вторым, третьим и четвертым входами блока формирования комбинации. Первый, второй, третий и четвертый выходы блока формирования комбинации соединены соответственно с первым, вторым, третьим и четвертым входами блока формирования результата поворота, первый и второй выходы которого служат выходами устройства.

Далее преимущества, а также особенности настоящего изобретения поясняются с помощью варианта его выполнения со ссылками на фигуры.

На фиг. 1 представлена функциональная схема заявленного устройства.

На фиг. 2 приведен вид входного сигнала (угол поворота вектора) для постоянных величин синуса (Y0=0,1736) и косинуса (Х0=0,9848).

На фиг. 3 приведены выходные сигналы синуса (кривая А) и косинуса (кривая Б) после поворота в диапазоне (0; п/4).

На фиг. 4 приведен входной сигнал угла поворота (кривая В) и выходной сигнал синуса (кривая Г).

На фиг. 5 приведен входной сигнал угла поворота (кривая Д) и выходной сигнал косинуса (кривая Е).

На фиг. 6 приведены выходные сигналы косинуса (кривая Ж) и синуса (кривая З).

Перечень позиций на фиг. 1:

1 - блок формирования синуса и косинуса угла поворота

2 - блок сравнения с максимумом

3 - блок умножения синуса и косинуса

4 - блок формирования комбинации

5 - блок формирования результата поворота

6, 7, 8 - входы

9-25 - шины данных (сигнальные)

26, 27 - выходы.

Асинхронное устройство векторного поворота (фиг. 1) содержит блок 1 формирования синуса и косинуса угла поворота, блок 2 сравнения с максимумом, блок 3 умножения синуса и косинуса, блок 4 формирования комбинации и блок 5 формирования результата поворота.

Вход 6 блока 1 формирования синуса и косинуса угла служит для ввода по шине 11 данных величины угла поворота. Первый вход 7 и второй вход 8 блока 3 умножения синуса и косинуса служат соответственно для ввода данных по шинам 9, 10 синуса и косинуса исходного угла. Вход 6 блока 1 формирования синуса и косинуса угла поворота соединен с пятым входом блока 5 формирования результата поворота. Первый выход и второй выход блока 1 формирования синуса и косинуса угла поворота соответственно по шинам 12 и 13 соединен с первым входом и вторым входом блока 2 сравнения с максимумом. Первый выход блока 2 сравнения с максимумом соединен по шине 15 с третьим входом блока 3 умножения синуса и косинуса, а его второй выход по шине 14 - с четвертым входом блока 3 умножения синуса и косинуса. Первый, второй, третий и четвертый выходы блока 3 умножения синуса и косинуса соединены соответственно шинами 16, 17, 18, 19 с первым, вторым, третьим и четвертым входами блока 4 формирования комбинации. Первый, второй, третий и четвертый выходы блока 4 формирования комбинации соединены соответственно шинами 20, 21, 22, 23 с первым, вторым, третьим и четвертым входами блока 5 формирования результата поворота. Первый и второй выходы блока 5 формирования результата поворота по шинам 24, 25 служат выходами 26 и 27 устройства.

Устройство работает следующим образом.

На входы 7 и 8 поступают исходные данные координат, которые надо повернуть на заданный угол, сформированный на входе 6. Сигналы на входы 7 и 8 поступают в формате чисел с фиксированной запятой, а сигнал на вход 6 поступает в формате радиан и соответствует максимальной величине поворота в градусах - 57° (в радианах это 1 рад., или в формате с фиксированной точкой - 0.1111…1, т.к. 90° эквивалентно примерно 1,57).

В блоке 1 формирования синуса и косинуса угла поворота данные преобразуются в интервале (-1; +1) фиксированного формата. При этом если угол поворота находится вне пределов этого формата, то это отслеживается при поступлении данных по шине 11 на блок 5 формирования результата поворота, в результате чего прибавляется единица к выходному значению, поскольку в этом случае величина превышает предельное значение в формате чисел с фиксированной точкой.

В блоке 2 сравнения с максимумом также производится оценка заданного угла поворота - этот угол больше или меньше 57° (больше или меньше 1), что эквивалентно предельной оценке данных с фиксированной запятой.

Информация о синусе и косинусе угла поворота с выхода блока 2 сравнения с максимумом поступает по шинам 14 и 15 в блок 3 умножения синуса и косинуса, в котором обеспечивается перемножение по формулам:

sinα×sinβ, sinα×cosβ, cosα×cosβ, cosα×sinβ,

где α - исходный угол в радианах, β - угол поворота в радианах.

Эти данные с четырех выходов блока 3 по четырем шинам 16, 17, 18, 19 поступают в блок 4 формирования комбинации, в котором вычисляются величины:

sinα×cosβ+cosα×sinβ,

cosα×cosβ-sinα×sinβ,

sinα×cosβ-cosα×sinβ,

cosα×cosβ+sinα×sinβ.

Сформированные данные необходимы для расчета результата операции поворота координат во всем диапазоне угла поворота, который может быть больше «1» (в радианах). Сигнал о превышении этого значения поступает в блок 5 формирования результата поворота по шине 11 (и в нем, как отмечалось выше, прибавляется или нет 1 к выходному значению).

Блок 5 формирования результата поворота осуществляет известные преобразования:

sin(α+β)=sin(α)×cos(β)+sin(β)×cos(α),

sin(α-β)=sin(α)×cos(β)-sin(β)×cos(α),

cos(α+β)=cos(α)×cos(β)-sin(α)×sin(β),

cos(α-β)=cos(α)×cos(β)+sin(α)×sin(β).

Результатом сравнения и выдачи результата соответственно по шинам 24 и 25 являются вычисления величин:

sin(α+β) или sin(α-β),

cos(α+β) или cos(α-β).

Указанные данные являются выходными на выводах 26 и 27.

Результаты моделирования заявленного устройства в среде Матлаб (Matlab/Simulink) представлены на фиг. 2-6.

На фиг. 2 приведен входной сигнал (угол поворота вектора) на входе 6 для постоянных величин синуса (Y0=0,1736) и косинуса (Х0=0,9848).

На фиг. 3 приведены выходные сигналы синуса (кривая А) и косинуса (кривая Б) после поворота в диапазоне (0; п/4).

На фиг. 4 приведены входной сигнал угла поворота (кривая В) и выходной сигнал синуса (кривая Г).

На фиг. 5 приведены входной сигнал угла поворота (кривая Д) и выходной сигнал косинуса (кривая Е).

На фиг. 6 приведены выходные сигналы косинуса (кривая Ж) и синуса (кривая З).

В результате удалось создать устройство асинхронного принципа действия, которое эффективно для вычислений методом последовательного приближения.

В данном устройстве решена задача вычисления угла поворота во всем диапазоне угловых изменений вектора; само же предлагаемое вычислительное устройство оперирует с данными с фиксированной запятой. Основным результатом работы заявленного устройства является снижение потребляемой мощности за счет асинхронного принципа его работы, т.е. устройство обрабатывает информацию только при наличии входных данных. Уменьшаются аппаратные затраты, поскольку не требуется временного интервала подготовки блоков для загрузки данных и вычисления окончания процесса итерации - это происходит в автоматическом режиме. Кроме того, повышается быстродействие устройства, т.к. отсутствует необходимость использования блока перевода данных с фиксированной запятой в данные с плавающей точкой. Эти три фактора значительно повышают эффективность использования заявленного асинхронного устройства векторного поворота.

Наиболее успешно заявленное асинхронное устройство векторного поворота промышленно применимо в цифро-сигнальных процессорах или в виде отдельного функционального блока. Данное устройство может широко применяться в вычислительных средах с автономным разделением функций с целью ускорения вычислительного процесса.

Похожие патенты RU2683182C1

название год авторы номер документа
СЛЕДЯЩАЯ СИСТЕМА 1993
  • Быковский С.И.
  • Гунченков В.И.
  • Ершова Л.Л.
  • Курочкина Л.В.
RU2087026C1
БЫСТРОДЕЙСТВУЮЩИЙ МНОГОФУНКЦИОНАЛЬНЫЙ ПРЕОБРАЗОВАТЕЛЬ УГЛА В КОД ДЛЯ УСТРОЙСТВ ЭЛЕКТРОМЕХАНОТРОНИКИ 1994
  • Фадеев Б.Е.
  • Афанасьев С.З.
  • Воронов М.С.
RU2094945C1
МЕХАНИЗМ (ВАРИАНТЫ) И СПОСОБ ИДЕНТИЧНОГО РУЛЕВОГО УПРАВЛЕНИЯ ТРАПЕЦИЕВИДНЫМ КАЧАЮЩИМСЯ РЫЧАГОМ С РАДИАЛЬНОЙ ТЯГОЙ И МНОГОКОЛЕСНОЕ ТРАНСПОРТНОЕ СРЕДСТВО 2020
  • Лю, Хайпэн
RU2760795C1
ПАССИВНАЯ ПЕЛЕНГАЦИОННАЯ СИСТЕМА 2005
  • Булычев Юрий Гурьевич
  • Манин Анатолий Платонович
  • Елисеев Александр Вячеславович
  • Бабушкин Игорь Александрович
  • Ливинский Сергей Владимирович
  • Челахов Дмитрий Михайлович
  • Шашлов Станислав Вячеславович
  • Челахов Виталий Михайлович
RU2298803C2
УСТРОЙСТВО ДЛЯ УПРАВЛЕНИЯ ПОДВОДНЫМ АППАРАТОМ 2013
  • Пшихопов Вячеслав Хасанович
  • Дорух Игорь Георгиевич
  • Гуренко Борис Викторович
RU2536303C1
Устройство для вычисления тригоно-МЕТРичЕСКиХ фуНКций 1979
  • Ахметов Виктор Ниязович
  • Гусев Алексей Владимирович
  • Циделко Владислав Дмитриевич
SU832555A1
Устройство для формирования символов на экране электроннолучевой трубки 1974
  • Руденко Валентин Дмитриевич
  • Сидоричев Валентин Григорьевич
  • Алхименков Валерий Владимирович
SU516071A1
ПИЛОТАЖНО-НАВИГАЦИОННЫЙ КОМПЛЕКС 1990
  • Петросян Э.А.
  • Никифорова Л.Н.
  • Губкин С.В.
  • Маслов А.В.
  • Белоусов В.А.
  • Белоусова Е.В.
SU1797383A1
УСТРОЙСТВО КОРРЕКЦИИ ОШИБКИ ПРЕОБРАЗОВАТЕЛЕЙ УГЛА В КОД 2020
  • Прокофьев Георгий Всеволодович
RU2740511C1
Функциональный преобразователь угла поворота вала в код 1982
  • Кудряшов Борис Александрович
  • Макаров Валерий Васильевич
  • Смирнов Юрий Сергеевич
  • Шишков Алексей Борисович
SU1080174A1

Иллюстрации к изобретению RU 2 683 182 C1

Реферат патента 2019 года АСИНХРОННОЕ УСТРОЙСТВО ВЕКТОРНОГО ПОВОРОТА

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

Формула изобретения RU 2 683 182 C1


1     Асинхронное устройство векторного поворота, содержащее блок формирования синуса и косинуса угла поворота, блок сравнения с максимумом, блок умножения синуса и косинуса, блок формирования комбинации и блок формирования результата поворота,

при этом вход блока формирования синуса и косинуса угла служит для ввода данных величины угла поворота,

первый вход и второй вход блока умножения синуса и косинуса служат соответственно для ввода данных синуса и косинуса исходного угла,

вход блока формирования синуса и косинуса угла поворота соединен с пятым входом блока формирования результата поворота,

первый выход и второй выход блока формирования синуса и косинуса угла поворота соединены соответственно с первым входом и вторым входом блока сравнения с максимумом, первый выход которого соединен с третьим входом блока умножения синуса и косинуса, а второй выход – с четвертым входом блока умножения синуса и косинуса,

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

Документы, цитированные в отчете о поиске Патент 2019 года RU2683182C1

УСТРОЙСТВО ВРАЩЕНИЯ ВЕКТОРА 2010
  • Бабенко Виктор Николаевич
RU2475830C2
Устройство для поворота вектора 1990
  • Боград Анатолий Моисеевич
  • Израильсон Леонид Григорьевич
SU1783524A1
Устройство для преобразования координат вектора 1984
  • Барметов Юрий Павлович
  • Боев Сергей Алексеевич
  • Евтеев Юрий Иванович
SU1196857A1
US 7239341 B2, 03.07.2007
US 7047269 B2, 16.05.2006
US 6349317 B1, 19.02.2002.

RU 2 683 182 C1

Авторы

Теленков Вячеслав Викторович

Машевич Павел Романович

Даты

2019-03-26Публикация

2017-12-21Подача