Изобретение относитс к автоматике и может быть использовано в вьшод ных устройствах ЭВМ, в частности в устройствах отображени графической информации или при выводе ее на микроформы в тех случа х, когда предъ в л ютс повьшенные требовани к качеству изображени . Целью изобретени вл етс повышение точности генератора. На фиг. 1 представлена структурна схема .устройства; на фиг. 2 примеры генерации некоторых векторов на фиг. 3 - временные диаграммы, по сн ющие работу дополнительно введенных элементов, отображают процесс генерации вектора с отрицательным значением тангенса угла наклона к оси X и отношением dX/4Y 3. Устройство содержит реверсивный счетчик 1 с параллельной записью координаты X первой граничной точки вектора, реверсивный счетчик 2 с параллельной записью координаты Y первой граничной точки вектора, первый сумматор 3, второй . сумматор 4, регистр 5 koopдинaты X граничной точки вектора, регистр 6 координаты Y второй граничной точки вектоpa , регистр 7 приращений координаты X вектора, регистр 8 приращений координаты Y вектора, первый элемент 9 .сравнени с нулем, второй элемент 10 сравнени с нулем, элемент И 11, триг гер- 12, накапливающий регистр 13,- пер вый.дешифратор 14, третий сумматор 15 первый элемент ИСКЛЮЧАЩЕЕ ИЛИ- 16, первый блок 17 элементов ИСКЛЮЧАЩЕЕ ИЛИ, коммутатор 18, второй элемент ИСКЛЮЧАЩЕЕ ИЛИ 19, третий элемент ИСКЛЮЧАЩЕЕ ИЛИ 20, четвертый сумматор 21, второй блок 22 элементов ИСКЛЮЧАЩЕЕ ИЛИ, элемент НЕ 23, второй дешифратор 24, первый двоичный реверсивньш счетчик 25 дробных разр дов координаты X первой граничной точки вектора, второй двоичный реверсивньй счетчик 26 дробных разр дов координаты Y первой граничной точки вектора, первый цифроаналоговый преобразователь (ЦАП) 27 кодов координат X, вто рой ЦАП 28 кодов координат Y, третий ЦАП 29 дробных разр дов X, четвертый ЦАП 30 дробных разр дов Y, первьй и |второй делители 31 и 32, п тый и шее той сумматоры 33 и 34. Реверсивные счечтйки 1 и 2 (фиг. С параллельной записью предназначены дл приема и модификации в процессе генерации координат Х и Y первой .граничной точки вектора. Эти тсоорДи- , наты во врем работы устройства мен ютс , посто нно приближа сь к координатам Xg и Yg второй граничной точки вектора, которые записываютс в регистры 5 и.6. Сумматоры 3 и 4 необходимы дл вычислени - приращений & X и ijY, которые подаютс на регистры 7 и 8 приращений и на элементы 9 и 10 сравнени с нулем. Элемент ИСКЛЮЧАЮЩЕЕ ИЛИ 20, элемент НЕ 23, блок 22 элементов ИСКЛЮЧАЮЩЕЕ ИЛИ и сумматор 21 выполн ют вычисление разности абсолютных значений приращений dY и ЛХ. Если приращение л положительно, то на выходе сумматора будет получено выражение I/IY I - IdXl , иначе - выражение MX I - (Л Y( . Элемент ИСКЛЮЧАЮЩЕЕ ИЛИ 19 предназначен дл определени истинности услови ( 4YI 1dXl и управлени коммутатором 18, который управл етс также и инверсным выходомзнакового разр да накапливающего регистра 13. Если содержимое накапливающего регистра 13 не отрицательно, то Коммутатор 18 пропускает на входы блока 17 элементов ИСКЛЮЧАЮЩЕЕ ИЛИ разность абсолютных значений приращений координат с выхода сумматора 21. Если содержимое накапливающего регистра 13 отрицательно и если указанное условие выполн етс , то на входы блока 17 элементов ИСКЛЮЧАЮЩЕЕ ИЛИ с выхода коммутатора 18 поступает приращение 5Y, иначе-- приращение йХ. Элемент И 11 необходим дл определени момента совпадени координат первой и второй граничных точек вектора . Элемент ИСКЛЮЧАЩЕЕ ИЛИ 16, блок 17 элементов ИСКЛЮЧАЩЕЕ ИЛИ служат дл преобразовани информации, поступающей с выхода коммутатора 18, в дополнительный код. Триггер 12 управлени предназначен дл формировани цикла работы генератора векторов от момента прихода сигнала Пуск на вход триггера 12 и до прихода сбрасывающего сигнала с выхода элемента И 11. В процессе работы генератора векторов по переднему фронту каждого внешнего тактового импульса дешифраторы 14 и 24 подают суммирующий или вычитающий импульсы на управл ющие входы двоичных реверсивных счетчиков 25 и 26 координат первой граничной точки вектора. Распределение импульсов по выхода дешифраторов 14 и 24 осуществл етс в зависимости от знака приращений, поступак цих с выходов знаковых разр дов регистров 7 и 8 и от текущего знака, поступающего с инверсного выхода знакового разр да накапливающег регистра 13. Если содержимое накапливающего регистра 13 положительно или равно нулю, то сумматор 15 осуществл ет вычитание абсолютного значени разно ти с выхода сумматора 21 из числа, наход щегос в накапливающем регистре 13. Если содержимое накапливающего регистра 13 отрицательно и указанное условие выполн етс , то сумматор 15 производит сложение числа, наход щег с в накапливающем регистре 13, с абсолютным значением приращени 4Y, поступающего с выхода регистра 8. Пр невыполненном условии и отрицательном содержимом накапливающего регистра 13 сумматора 15 осуществл етс сложение числа из накапливающего регистра 13 с абсолютным значением при ращени Л X, хран щегос в регистре 7, По заднему фронту внешнего тактового импульса в накапливающем регист ре 13 производитс запись результатов , вычислений сумматора 15. После прихода сбрасывающего сигна ла с выхода элемента И 11 триггер 12 управлени обнул ет накапливающий регистр 13 и запрещает по вление на выходах дешифраторов 14 и 24 суммирующих или вычитающих импульсов. Устройство работает следующим образом . По переднему фронту внешнего сигнала на управл ющем входе Запись кодов в реверсивные счетчики 1 и 2 параллельной записью занос тс значени координат Х, и Y первой граничной точки векторов, а в приемные регистры 5 и 6 ввод тс значени координат Xg и Yg второй граничной точки вектора. Сумматоры 3 и 4 производ т вычисление ЛХ и dY, после .чего сигнал Запись кодов снимаетс 5 и своим задним фронтом производит запись приращени j X и jY в соответствунпцие регистры 7 и 8 приращений . Если знаки приращений Х и Y совпадают, то с выхода злемента НЕ 23 потенциал поступает на вход переноса сумматора 21 и на соответствующие входы блока 22 элементов ИСКЛЮЧАЮЩЕЕ Ш1И, в результате чего на второй вход сумматора 21 поступает проинвертированное значение прирал(ени jX. Если знаки приращений dX и /jY не совпадают , то на выходе элемента НЕ 23 устанавливаетс потенциал О, благодар чему на соответствующий вход сумматора 21 поступает приращение X без инверсии. Таким образом, на выходе сумматора 21 посто нно находитс дополнительный код разности абсолютных значений приращений координат, знак которой поступает на вход элемента ИСКЛЮЧАЩЕЕ ИЛИ 19 дл сравнени со знаком приращени /lYo Так как до прихода сигнала Пуск триггер 12 управлени и накапливающий регистр 13 наход тс в нулевом состо нии, то на инверсном выходе знакового разр да накапливающего регистра 13, поступающего на соответствующий управл ющий вход коммутатора 18 и на вход элемента ИСКЛЮЧАЮЩЕЕ ШШ 16, установитс потенциал 1, в результате чего на выходе коммутатора 18 по вл етс разность абсолютных значений с выхода сумматора 21. Если эта разность не отрицательна , то под управлением элемента ИСКЛМЧАЩЕЕ ИЛИ 16 на вход переноса сумматора поступает потенциал 1, а на соответствующий информационный вход - инверси исходной разности с выхода блока 17 элементов ИСКЛЮЧАЮЩЕЕ ИЛИ. Если разность абсолютных значений приращений, наход ща с на выходе сумматора 21, отрицательна, то на выходе элемента ИСЮШЧАЮЩЕЕ ИЛИ 16 . установитс потенциал О и на соответствующий входсумматора 15 посту- пит информаци без преобразовани в блоке 17 элементов ИСКЛЮЧАЮЩЕЕ ИЛИ. Таким образом, если содержимое накапливающего регистра 13 положительно или равно нулю, то сумматор .15 вычитает абсолютное значение выражени , наход щегос на выходе сумматора 21, из содержимого накапливающего регистра 13,The invention relates to automation and can be used in computer devices, in particular, in devices for displaying graphic information or in outputting it to microforms in cases when high demands are placed on image quality. The aim of the invention is to improve the accuracy of the generator. FIG. 1 shows the structural scheme of the device; in fig. 2 Examples of the generation of some vectors in FIG. 3 - timing diagrams explaining the operation of the additionally introduced elements display the process of generating a vector with a negative tangent of the angle of inclination to the X axis and the ratio dX / 4Y 3. The device contains a reversible counter 1 with a parallel recording of the X coordinate of the first boundary point of the vector, a reversible counter 2 with a parallel recording of the Y coordinate of the first boundary point of the vector, the first adder 3, the second. adder 4, register 5 of coordinate X of the boundary point of the vector, register 6 of the Y coordinate of the second boundary point of the vector, register 7 of the increments of the X coordinate of the vector, register 8 of the increments of the Y coordinate of the vector, first element 9 of comparison with zero, second element of 10 comparison with zero, element And 11, trigger-12, accumulating register 13, is the first. Decoder 14, third adder 15 first element EXCLUSIVE OR- 16, first block 17 elements EXCLUSIVE OR, switch 18, second element EXCLUSIVE OR 19, third element EXCLUSIVE OR 20 the fourth adder 21, the second block 22 ele EXCLUSIVE OR, element 23, second decoder 24, first binary reversible counter 25 fractional bits of the X coordinate of the first vector boundary point, second binary reversible counter of 26 fractional bits of the Y coordinate of the first vector boundary point, first digital-analog converter (D / A) 27 codes coordinates X, the second D / A converter 28 coordinate codes Y, the third D / A converter 29 fractional bits X, the fourth D / A converter 30 fractional bits Y, the first and second dividers 31 and 32, the fifth and the neck of that adders 33 and 34. Reverse counts 1 and 2 (FIG. With parallel recording, they are intended for reception and modification in the process of generating coordinates X and Y of the first boundary point of the vector. These devices vary during the operation of the device, constantly approaching the coordinates Xg and Yg of the second boundary point of the vector, which are written to registers 5 and.6. Adders 3 and 4 are needed to calculate the increments & X and ijY, which are fed to registers 7 and 8 increments and to elements 9 and 10 of comparison with zero. The EXCLUSIVE OR 20 element, the NOT 23 element, the EXCLUSIVE OR element block 22 and the adder 21 perform the calculation of the difference between the absolute values of the increments dY and LX. If the increment is positive, then the output of the adder will be the expression I / IY I - IdXl, otherwise - the expression MX I - (L Y (. The EXCLUSIVE OR 19 element is intended to determine the truth of the condition (4YI 1dXl and control switch 18, which is controlled also the inverse output of the digit discharge accumulating register 13. If the contents of accumulating register 13 are not negative, then Switch 18 passes to the inputs of block 17 of the elements EXCLUSIVE OR difference of absolute values of coordinate increments from the output of adder 21. If the contents of The register register 13 is negative and if the specified condition is met, then the inputs of the block 17 of the EXCLUSIVE OR elements are incremented by 5Y from the output of the switch 18. Otherwise, the increment is Y. Element And 11 is necessary to determine the moment of coincidence of the coordinates of the first and second boundary points of the vector. EXCLUSIVE OR 16, block 17 of the EXCLUSIVE OR elements are used to convert the information coming from the output of the switch 18 into an additional code. Control trigger 12 is designed to form a cycle of the vector generator from the moment of arrival of the signal. Start at the input of the trigger 12 and until the reset signal from the output of the element 11 arrives. During the operation of the vector generator, the decoders 14 and 24 serve summing or subtracting on the leading edge of each external clock pulse. pulses at the control inputs of binary reversible counters 25 and 26 of the coordinates of the first boundary point of the vector. The distribution of pulses at the output of the decoders 14 and 24 is carried out depending on the sign of the increments received from the outputs of the sign bits of registers 7 and 8 and on the current sign coming from the inverse output of the sign bit accumulating register 13. If the content of the accumulating register 13 is positive or equal to zero, the adder 15 subtracts the absolute value of the difference from the output of the adder 21 from the number in the accumulating register 13. If the contents of the accumulating register 13 are negative and the specified condition When this is done, the adder 15 adds the number in the accumulating register 13 with the absolute value of the increment 4Y coming from the output of the register 8. The unfulfilled condition and the negative content of the accumulating register 13 of the adder 15 add the number from the accumulating register 13 with the absolute value when L X stored in the register 7, the trailing edge of the external clock pulse in the accumulating register 13 records the results of the calculations of the adder 15. After the arrival, the reset its signal from the output of the AND element 11 of the trigger 12 of the control zeroes the accumulating register 13 and prohibits the appearance at the outputs of the decoders 14 and 24 of summing or subtracting pulses. The device works as follows. On the leading edge of the external signal at the control input, the writing of codes in the reversible counters 1 and 2 by parallel recording records the values of the X and Y coordinates of the first boundary point of the vectors, and the X and Yg coordinates of the second boundary point of the vector are entered into the receiving registers 5 and 6 . The adders 3 and 4 perform the calculation of LH and dY, after which the signal Record codes is 5 and, with its trailing edge, records the increments j X and j Y in the corresponding registers 7 and 8 increments. If the signs of the increments X and Y coincide, then the potential 23 from the output of the element 23 does not enter the transfer input of the adder 21 and the corresponding inputs of the block 22 of the EXCLUSIVE P1I elements, as a result of which the second input of the adder 21 is inverted (xx. If the increment signs dX and / jY do not coincide, then the potential O is set at the output of the element NOT 23, so that the corresponding input of the adder 21 is incremented by X without inversion. Thus, the output of the adder 21 is constantly the additional difference code absolute values of the coordinate increments, the sign of which enters the input element EXCLUSIVE OR 19 for comparison with the increment sign / lYo Since before the arrival of the signal Start Trigger Control 12 and the accumulation register 13 are in the zero state, then the inverse output of the sign bit accumulating register 13, arriving at the corresponding control input of the switch 18 and at the input of the EXCLUSIVE SHS 16 element, a potential 1 is established, as a result of which the output of the switch 18 is the difference of the absolute values from the output of the sums torus 21. If this difference is non-negative, the running element ISKLMCHASCHEE OR 16 to the adder carry input is supplied a potential of 1, and the corresponding information input - inversion initial difference from the output of the exclusive OR elements 17. If the difference of the absolute values of the increments, which is located at the output of the adder 21, is negative, then the output of the element is BENEFITING OR 16. the potential O will be established and information on the appropriate input of the summator 15 will be supplied without conversion in block 17 of the EXCLUSIVE OR elements. Thus, if the contents of the accumulating register 13 are positive or equal to zero, then the adder .15 subtracts the absolute value of the expression, which is at the output of the adder 21, from the contents of the accumulating register 13,
С приходом на вход сигнала Пуск триггер 12 управлени установитс в единицу и с управл ющего входа накапливающего регистра 13 сниметс сигнал установки в нуль.With the arrival of the Start signal, the control trigger 12 is set to one and the set signal to zero is removed from the control input of the accumulating register 13.
После этого по переднему фронту внешнего тактового импульса, если приращени dX и 4 не равны нулю, дешифраторы 14 и 24 одновременно подают на управл ющие входы реверсивных счетчиков 25 и 26 дробных разр дов суммирующие или вычитающие импул сь в зависимости от знаков приращени ЙХ и /lY. Если приращение Л X или приращение л.У равно нулю, то на выхо де элементов 9 или 10 сравнени с нулем.по вл етс потенциал 1, поступающий на соответствующий вход элемента И 11 и на вход соответствую щего дешифратора 14 или 24, запреща тем самым подачу импульсов на управл ющие входы реверсивных счетчиков 25.:или 26. По заднему фронту внешнего такто- вого импульса информаци с выхода сумматора 15записываетс в накапливарций регистр 13. Если содержимое накапливающего регистра остаетс не отрицательным, то сумматор 15 вновь осуществл ет вычитание абсолютного значени выражени с выхода сумматора 21 ий содержимого накапливающего регистра 13. Если содержимое накапливающего регистра 13 стало отрицательным и если на выходе элемента ИСКЛЮЧАЮЩЕЕ ИЛИ находитс потенциал 1, что свидетельствует о выполнении указанного услови , то коммутатор 18 пропустит на свой выход приращейие ЛY с выхода регистра 8. При невьшолнени услови на выходе коммутатора 18 находитс приращение /iX.After that, on the leading edge of the external clock pulse, if the increments dX and 4 are not equal to zero, the decoders 14 and 24 simultaneously feed the control inputs of the reversible counters 25 and 26 of the fractional bits, summing or subtracting the impulses depending on the increment marks JX and / lY . If the increment LX or the increment of the VL is zero, then at the output of elements 9 or 10 of comparison with zero. Potential 1 is applied to the corresponding input of element 11 and to the input of the corresponding decoder 14 or 24, thereby prohibiting the supply of pulses to the control inputs of the reversible counters 25.: or 26. On the falling edge of the external clock, information from the output of the adder 15 is written into the accumulation register 13. If the contents of the accumulating register remain non-negative, then the adder 15 again performs the abs subtraction the value of the expression from the output of the adder 21 of the contents of accumulating register 13. If the contents of accumulating register 13 become negative and if the output of the EXCLUSIVE OR element is potential 1, which indicates that the specified condition is met, the switch 18 will allow the output LY to be output from its output 8. If the condition is not met, the output of the switch 18 is an increment of / iX.
Кроме того, при отрицательном содержимом накапливающего регистра 13 на соответствующий вход элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 16 с инверсного выхода знакбвого. разр да накапливающего регистра 13 поступает потенциал О, в результате чего сумматором 15 осуществл етс сложение абсолютного значени приращени лХ или AY с выхода коммутатора 18 с содержимым накапливающего регистра 13.In addition, when the content of the accumulating register 13 is negative, the corresponding input of the EXCLUSIVE OR 16 element is from the inverse output of the sign. the accumulating register 13 enters the potential O, as a result of which the adder 15 combines the absolute value of the increment lX or AY from the output of the switch 18 with the contents of the accumulating register 13.
По переднему фронту внешнего тактового импульса, если содержимое накапливающего регистра 13 отрицательно , управл ющий сигнал по вл етс на одном из дешифраторов 14 или 24. Если указанное условие выполн етс , то управл ющий сигнал суммировани или вычитани в зависимости от знака приращени d X поступает с выхода дешифратора 14 на соответствующийOn the leading edge of the external clock pulse, if the contents of accumulating register 13 is negative, the control signal appears on one of the decoders 14 or 24. If the specified condition is met, the control signal of addition or subtraction, depending on the sign of the increment d X output decoder 14 to the corresponding