Устройство для преобразования координат
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Текст
ПИСАНИЕ ИЗОБРЕТЕ ескии институтнышев ССР78. СССР8, 1986 ОБРАЗОВ 3 Ю ГОСУДАРСТВЕННЫЙ КОМИТЕТПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМПРИ ГКНТ СССР ВТОРСНОМУ СВИДЕТЕЛЬСТ(54) УСТРОЙСТВО ДЛЯ ПНИЯ КООРДИНАТ(57) Изобретение относится к вычислительной технике и может быть использовано в специализированных вычислителях. Целью изобретения является повышение быстродействия, Устройство содержит регистры 1, 2 координат, регистр 3 угла, регистры 4, 5 младших разрядов, буферные регистры 6, 7, счетчик циклов 8, блок 9 памяти, сумматоры 10, 11, мультиплексоры 12, 13, блок 14 управления и имеет вход 15 первой координаты, вход 16 второй координаты, вход 17 угла, выход 18 первой координаты, выход 19 второй координаты, вход 20 запуска. 1 з. п. ф-лы, 6 ил.Изобретение относится к области вычислительной техники и может быть использовано в специализированных вычислителях.Целью изобретения является повышение быстродействия.На фиг.представлена функциональная схема устройства; на фиг. 2 - функциональная схема блока управления; на фиг. 3 - узел анализа знаков; на фиг. 4 - шифратор режимов сумматоров; на фиг, 5 - узел управления циклами; на фиг. 6 узел микропрограммного автомата.Устройство содержит первый регистр 1 координат, второй регистр 2 координат, регистр 3 угла, первый регистр 4 младших разрядов, второй регистр 5 младших разрядов, первый буферный регистр 6, второй буферный регистр 7, счетчик 8 циклов, блок 9 памяти, первый сумматор 10, второй сумматор 11, первый мультиплексор 12, второй мультиплексор 13, блок 14 управления, вход 15 первой координаты, вход 16 второй координаты, вход 17 угла, выход 18 первой координаты, выход 19 второй координаты, вход 20 запуска.Блок 14 управления содержит узел 21 микропрограммного автомата, узел 22 анализа знаков, узел 23 управления циклами, шифратор 24 режимов сумматоров. Узел 22 анализа знаков содержит первый 25 и второй 26 мультиплексоры, первый 27, второй 28, третий 29, четвертый 30, пятый 31 и шестой 32 триггеры, первый ЗЗ и второй 34 элементы ИСКЛЮЧАЮШЕЕ ИЛИ, первый 35, второй 36, третий 37, четвертый 38 элементы И, третий 39 и четвертый 40 мультиплексоры.Шифратор режимов сумматоров содержит первый 41 и второй 42 дешифраторы, элементы ИЛИ 43 - 48 с первого по шестой.Узел управления циклами содержит первый триггер 49, генератор 50 импульсов, первый элемент ИЛИ 51, первый счетчик 52, второй счетчик 53, первый элемент И 54, дешифратор 55, второй элемент ИЛИ 56, второй триггер 57.Узел микропрограммного автомата содержит генератор 58 импульсов, первый счетчик 59, дешифратор 60, первый элемент И 61, второй элемент И 62, второй счетчик 63, блок 64 памяти, регистр 65, второй дешифратор 66, элемент НЕ 67, третий дешифрагор 68, элемент И-ИЛИ 69.Устройство функционирует следующим образом.Устройство осуществляет преобразование прямоугольных координат на плоскости по алгоритму таблично-итерационного преобразования координатХО+о=а (Х 2 Р сов ср, -хрУ 12 сР зи 1 2 - сР, р10+0= Я (У,2" созр,+ + Х,. 2 Р зи р; ) 2 где Р,М - количество отрезков разбиениясоответственно кодов координат и угла;- номера соответственно вычислительного цикла и такта;Р, гп - разрядность кодовых отрезковкоординат и угла,Исходный алгоритм (1) табл ично-итерационного преобразования координат можно представить в следующем виде:рдХО+и= - ,Х Хх;-2 р; У+и= Х К;2 р, (2)х=о хсогде К;, К; - 1-е константы, считанные из паа 3мяти в 1-ом цикле и численно равные содержимым в фигурных скобках выражения (1).Раскроем суммы в выражениях (2) и полученные выражения приведем к формуле Горнера: 10 20 ХП+=(."(Кх р - 2 +Кх р ) 2 Р25+К;) 2 Р+Кх,; У"+ = (" (Ку р -2 +Кур - 2) 2 + + -(-К,с) 2 Р-(-К 30 Пуск устройства осуществляется приподаче сигнала на вход 20 блока 14 управления. По этому сигналу начинает функционировать узел 21 микропрограммного авто.- мата, который устанавливает мультиплексоры 12 и 13 в положение , затем, подавая сигналы записи на регистр 2 угла и буферные регистры 6, осуществляют запись исходных данных р, Х и у, установленные предварительно на входах 17, 15 и 16.40 Так как формирование констант функциональной таблицы, хранимой в блоке 9 памяти, осуществлялось без использования знаковых разрядов исходных данных, то возникает необходимость запоминания знаков исходных и промежуточных данных, которые бу.45 дут использованы для определения квадранта результирующего вектора, Все эти действия выполняет узел 22 анализа знаков.Значения знаковых разрядов Х 0 и у Оиз буферных регистров 6 и 7 поступают на входы узла 22 анализа знаков. Так как триггер 27 находится в исходном (нулевом) состоянии, то нулевой сигнал с его выхода устанавливает мультиплексоры 39 и 40 в положение, при котором пропускаются сигналы Х 0, 10 на входы второго 28 и третьего 29 триггеров. Четвертый триггер 30 находится в нулевом состоянии и своим инверсным выходом устанавливает мультиплексоры 25 и 26 в положение 1, при15 30 35 40 45 50 55 этом Х 0, 10 поступают на входы триггеров 31 и 32. Узел 21 микропрограммного автомата подает сигнал Фиксация знаков, который записывает Х 0, у 0 в указанные триггеры.При необходимости перевода вектора в первый квадрант, выполняется перевод соответствующих кодов координат в прямую форму. Для увеличения быстродействия используется шифратор 24 режимов сумматоров. Узел 21 микропрограммного автомата получает сигнал з 1 дпХ;/ з 1 дпУ;, анализирует его и, еслй он равен О, то, управляя работой шифратора 24 режимов сумматоров, осуществляет перевод вектора в первый квадрант, При этом на выходах шифратора 24 режимов сумматоров появляются сигналы, в результате чего первый сумматор 10 устанавливается, например, в режим сложения, а второй сумматор 11 - в режим прохождения операнда через сумматор без изменения. Установив режимы первого этапа узел 21 микропрограммного автомата вырабатывает сигнал записи в буферные регистры 6 и 7, в которых записываются коды с выходов первого и второго сумматоров 1 О и 11. Первый сумматор О, находясь в режиме суммирования, складывает содержимое первого буферного регистра 5 (исходная координата Х в дополнительном коде) и значения кода на выходе блока 9 памяти (код 111 при запрещенном блоке 9 памяти). На втором этапе первый сумматор 10 устанавливается в режим инвертирования и исходная координата Х переводится в прямую форму, а координата у остается без изменения.После перевода вектора в первый квадрант узел 21 микропрограммного автомата переходит к анализу сигналов с выхода узла 22 анализа знаков. Если исходный вектор находился во втором или четвертом квадранте, то выполняется операция Перемена. Для этого первый и второй мультиплексоры 12 и 13 устанавливаются в положение 3 и при подаче сигнала записи на буферные регистры 6 и 7 они обмениваются содержимыми. Факт выполнения операции Перемена фиксируется в узле 22 анализа знаков путем подачи импульса, под действием которого триггер 27 опрокидывается и устанавливает мультиплексоры 39 и 40 в положение 2, т. е. происходит подготовка для последующей смены знаков. В начале следующего цикла значения Х 0, У О будут просуммированы по модулю 2 в триггерах 28 и 29, но в обратной принадлежности. Таким образом в триггерах 27 - 29 будут формироваться значения гподДП, з 1 дпХ и з(дпУ.Вектор переведен в первый квадрант, выполнена операция Перемена и другие необходимые действия, поэтому следующей операцией узла 21 микропрограммного автомата является перезапись содержимых буферных регистров 6 и 7 в р,.негры координат 1 и 2 соответственно и загр.ск узла 23 управления циклами. По сигналу Запуск триггер 49 устанавливается в единичное положение, одновременно этим же сигналом через логический элемент ИЛИ 51 сбрасывается двоичный счетчик 52, а также счетчик 53. Генератор 50 импульсов, разрешенный сигналом с прямого выхода триггера 49, подает на счетный вход двоичного счетчика 52 серию импульсов, под действием которых содержимое счетчика будет нарастать, в связи с чем на выходах дешифратора 55 будут последовательно появляться сигналы. Сигнал с нулевого выхода дешифраторз увеличивает счетчик 53 на . Сигнал с первого выхода дешифратора 55 осуществляет запись младших кодовых отрезков координат Х, в р-разрядные регистрь. 4 и 5 младших рззрядов соответственно. Следу ощие сигналы, начиная с второго и до (п-, :)-го выходов дешифратора 55, объединяются ло ическим элементом ИЛИ 56 и поступ;:ют нз входы сдвига режимов координзт 1 н 2 и оуферных регистров 6 и 7, вызывая сдвиг их содержимых на р-разрядов вправо. Сигнал е третьего выхода дешифратора 55 уе 1 знавливает триггер 57 в единичное положение, разрешая тем самым выбор пз блока 9 памяти констант по адресу, определяемым совокупностью кодовых отрезков координат Х Укодового отрезка угла с, и номера цикла Результаты на выходах перво;о и второго сумматоров 10 и 11 через первый и второй мультиплексоры 12 и 13 поступают 1:з входы буферных регистров 6 и 7, в кс горые записываются сигналом с седьмого выхода дешифратора 55. Сигнал с восьмого выхода сбрасывает триггер 5, считывание пз блока памяти завершаегся. Сигнал е девятого выхода дешифратора 55 проверяет значение ецегцика 53 тактов. Если значение сцетцнкз не равно числу отрезков коордзнз 1 Р, то пз его выходе отсутствует сигнал, цто рззреп:зе 1 элемент И 54, и поэтому сигнал с девятого выхода проходит через этот элемент, а также через элемент ИЛИ 51 нз вход сброса счетчика 52. Таким образом выполняется каждый вычислительный такт и нзцпнзетея еледующий. Как только содержимое сцетцпка 53 станет равным Р, элемент И 54 будет запрещен и сигнал с девятого выхода дешнфратора 55 не произведет сброс.а счетчика 52, в связи с чем появится сигнал на девятом выходе дешифратора 55, который сбросит триггер 49 и заблокирует в целом узел 23 управления циклами, завершив тем самым вычислительный цикл.Узел 21 микропрограммного автомата после окончания работы узла 24 управления циклами переходит к анализу содержимого счетчика 8 циклов и, если оно меньше величины (М - 1), увеличивает счетчик нз 1, затем выполняет сдвиг влево на гп разрядов регистра 3 угла и приступает к фикса 1481751Формула изобретения 50 55 ции знаков координат промежуточного вектора. В дальшейнем повторяются уже описан. ные действия в узле 22 анализа знаков, в частности, если вектор в результате выполнения цикла вышел за пределы первого квадранта, то его знаки фиксируются, а затем путем перевода соответствующих кодов координат в прямую форму вектор возвращается в первый квадрант и т. д.Описанный вычислительный процесс повторяется до тех пор, пока содержимое счетчика 8 циклов не станет равным (М - 1). В этом случае узел 21 микропрограммного автомата совместно с узлом 22 анализа знаков и шифратором 24 режимов сумматоров приступает к заключительной операции: определению квадранта результирующего вектора.Процесс определения знаков результирующего вектора начинается с подачи узлом 21 микропрограммного автомата в узел 22 анализа знаков сигнала, под действием которого триггер 30 устанавливается в единичное состояние. Сигнал с прямого выхода триггера 30, совместно с сигналом з 1 дп, с помощью элементов И 35 и 36 устанавливает соответствующий режим мультиплексоров 25 и 26. Логика обработки накопительных знаков для определения знаков результирующего вектора следует из следующих соотношений:Пр -- ХП Я з 1 дп;Ср - з 1 дпуСигнал соответствует логической функцииГ 1 9 э 1 дп и реализуется логическим элементом ИСКЛЮЧАЮЩЕЕ ИЛИ 33, Узел 21 микропрограммного автомата анализирует значение этого сигнала и, если 2 П Я ядп=1, выполняется операция Перемена. Значение С, или з 1 дп определяет в какой режим необходимо установить мультиплексоры 25 и 26, чтобы выполнить соответствующие пересылки значений з 1 дпХ и з 1 дпУ из триггеров 28 и 29 в триггеры 31 и 32.Заключительной операцией узла 21 микропрограммного автомата является перевод содержимых буферных регистров 6 и 7 в соответствующие формы. Эта операция выполняется с использованием шифратора режимов сумматоров в описанной последовательности. 1. Устройство для преобразования координат, содержагцее два регистра координат, регистр угла, два мультиплексора, два сумматора, счетчик циклов, блок памяти и блок управления, причем вход угла устройства соединен с информационным входом регистра угла, выход которого соединен с первым входом группы адресных входов блока памяти, второй вход группы адресных входов которого соединен с выходом счетчика цик 5 10 5 20 25 30 35 40 45 лов, выходы первого и второго сумматоров соединены с первыми информационными входами соответственно первого и второго мультиплексоров, выход знакового разряда регистра угла соединен с первым входом анализа знака блока управления, первый выход которого соединен с входами сдвига первого и второго регистров координат, синхронизирующий вход регистра угла соединен с вторым выходом блока управления, вход контроля циклов и третий выход которого соединены соответственно с выходом и счетным входом счетчика циклов, четвертый выход блока управления соединен с входом разрешения выборки блока памяти, пятый и шестой выходы блока управления соединены с входами выбора операции первого и второго сумматоров, седьмой выход блока управления соединен с управляющими входами пер вого и второго мультиплексоров, отличающееся тем, что, с целью повышения быстродействия, в него дополнительно введены два регистра младших разрядов координат и два буферных регистра, причем выходы младших разрядов первого и второго регистров координат соединены с информационными входами соответственно первого и второго регистров младших разрядов координат, выходы которых соединены соответственно с третьим и четвертым входами группы адресных входов блока памяти, первый и второй выходы которого соединены с входами первых слагаемых соответственно первого и второго сумматоров, входы вторых слагаемых которых объединены с информационными входами соответственно первого и второго регистров координат и соединены с выходами соответственно первого и второго буферных регистров, информационные входы которых соединены с выходами соответственно первого и второго мультиплексоров, вторые информационные входы которых соединены с выходами соответственно второго и первого буферных регистров, третьи информационные входы первого и второго мультиплексоров соединены с входами соответственно первой и второй координаты устройства, первый и второй выходы результата которого соединены с выходами соответственно первого и второго буферных регистров, выходы знаковых разрядов которых соединены с вторым и третьим входами анализа знака блока управления, восьмой выход которого соединен с синхронизирующими входами первого и второго регистров младших разрядов координат, девятый и десятый выходы блока управления соединены с первым и вторым снхронизирующими входами первого и второго буферных регистров, входы сдвига которых соединены с первым выходом блока управления, вход запуска которого соединен с одноименным входом блока управления.2. Устройство по и. 1, отличающееся тем, что блок управления содержит узел микро,2 УО к к 4,Х ко ся 7 па 5 шп программного авгомата, узел анализа знаков, узел управления циклами и шифратор режимов сумматоров, причем входы запуска и контроля циклов блока управления соединены с одноименными входами узла микропрограммного автомата, первый, второй и третий выходы которого соединены соответственно с вторым, седьмым и девятым выходами блока управления, четвертый выход узла микропрограммного автомата соединен с входом запуска узла управления циклами, выходы с первого по четвертый которого соединены соответственно с десятым, первым, четвертым и восьмым выходами блока управления, пятый выход узла управления циклами соединен с входом признака оконча ния цикла узла микропрограммного автомата, пятый, шестой, седьмой и восьмой выходы узла микропрограммного автомата соединены с входами признаков соответственно смены знаков, знака результата, сброса и фиксации знака узла анализа знаков, входы признаков знака угла, первой и второй координаты которого соединены соответственно с первым, вторым и третьим входами узла анализа знаков блока управления, первый и второй выходы узла анализа знаков соединены соответственно с йервым и вторым входами анализа положения вектора узла микропрограммного автомата, третий и четвертый выходы узла анализа знаков соединены с входами знака соответственно первой и второй координаты шифратора режимов сумматоров, первый и второй входы стробирования узла анализа знаков соединены с девятым и десятым выходами узла микропрограммного автомата.КуликовКоррекПодписетениям и открьушская наб.,тент, г. Ужгор Составитель С Техред И. Верес Тираж 669 нного комитета по изобр 5, Москва, Ж - 35, Ра дательский комбинат ПаРедактор Л. ГратиллоЗаказ 2690149ВНИИПИ Государств1130Г 1 роизводственно-из тор М. Самборскаяноетиям при ГКНТ СССРд. 45од, ул. Гагарина, 101
СмотретьЗаявка
4268579, 26.06.1987
САРАТОВСКИЙ ПОЛИТЕХНИЧЕСКИЙ ИНСТИТУТ
ДАУРОВ СТАНИСЛАВ КОНСТАНТИНОВИЧ, КНЫШЕВ ВАЛЕНТИН ИВАНОВИЧ
МПК / Метки
МПК: G06F 7/548
Метки: координат, преобразования
Опубликовано: 23.05.1989
Код ссылки
<a href="https://patents.su/7-1481751-ustrojjstvo-dlya-preobrazovaniya-koordinat.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для преобразования координат</a>
Предыдущий патент: Функциональный преобразователь
Следующий патент: Устройство для вычисления функции
Случайный патент: Бетононасос