Генератор знаков

Иллюстрации

Показать все

Реферат

 

ГЕНЕРАТОР ЗНАКОВ, содержащий последовательно соединенные первый регистр, первый блок памяти, первый счетчик и второй блок памяти, первый выход которого является первым выходом генератора, второй счетчик дешифратора, выходы которого йвляются вторым и третьим выходами генератора , блок управления, первый вход которого соединен с вторым выходом второго блока памяти, первый выход - с вторым входом первого счетчика , второй выход - с первым входом второго счетчика, третий выход - с первым входом первого регистра, второй вход которого является первым входом генератора, о т л и ч а ю щ .ии с я тем, что, с целью расширения области применения генератора ,за счет возможности формирования знаков, повернутых в плоскости отображения , в него введены последовательно соединенные сумматор, второй регистр и третий блок памяти, выходы которого соединены соответственно с первым и вторым умножителями, вторые входы которого соединены с вторым выходом второго блока памяти,. а выходы умножителей являются соответственно четвертым и пятым выходом генератора и .соединены с вторыми входами второго и третьего счетчиков, первьй вход третьего счетчика соеди (Л нен с первым входом второго счетчика и является шестым выходом генератора , вьхходы второго и третьего счетчиков соединены с элементом совпадения , выход которого соединен с третьим входом первого счетчика и вторым входом блока управления, первый вход сумматора соединен с третьим Од выходом второго блока памяти, второй вход второго регистра соединен с четвертым выходом блока управления, Ю вход дешифратора соединен с выходом сумматора.

СОЮЗ COBETCHHX

СОЦИАЛИСТИЧЕСКИХ

РЕСПУБЛИК (19) (! 1) 4(511 С 06 Р 3/14

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

Н АВТОРСКОМ У СВИДЕТЕЛЬСТВУ

ГОСУДАРСТВЕННЫЙ КОМИТЕТ, СССР

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ (21) 3572845/24-24 (22) 06.04.83 (46) 30.06.85. Бюл. 9 24 (72) С.А.Яскевич, И.А.Шафир и К.А.Яскевич (53) 681.327.11 (088.8) (56) Авторское свидетельство CCCP (758138, кл. С 06 F 3/153, 1978.-.

Авторское свидетельство СССР

В 760079; кл. G 06 F 3/!4, !978 (прототип). (54) (57) ГЕНЕРАТОР ЗНАКОВ, содержащий последовательно соединенные первый регистр, первый блок памяти, первый счетчик и второй блок памяти, первый выход которого является первым выходом генератора, второй счетчик дешифратора, выходы которого являются вторым и третьим выходами генератора,. блок управления, первый вход которого соединен с вторым вы-. ходом второго блока памяти, первый выход — с вторым входом первого счетчика, второй выход — с первым входом второго счетчика, третий выход - с первым входом первого регистра, второй вход которого является пер» вым входом генератора, о т л и ч аю щ.и и с я тем, что, с целью расширения области применения генератора ,за счет возможности формирования знаков, повернутых в плоскости отображения, в него введены последовательно соединенные сумматор, второй ре-гистр и третий блок памяти, выходы которого соединены соответственно с первым и вторым умножителями, вторые входы которого соединены с вторым выходом второго блока памяти, а выходы умножителей являются соответственно четвертым и пятым выходом генератора и .соединены с вторыми входами второго и третьего счетчиков, первый вход третьего счетчика соединен с первым входом второго счетчика и является шестым выходом генератора, выходы второго и третьего счетчиков соединены с элементом совпадения, выход которого соединен с третьим входом первого счетчика и Ф иб вторым входом блока управления, первый вход сумматора соединен с третьим выходом второго блока памяти, второй вход второго регистра соединен с четвертым выходом блока управления, вход дешифратора соединен с выходом сумматора.

1 11646

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

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

На фиг. 1 приведена структурная схема генератора знаков; на фиг. 2кодировка направлений единичных векторов; на фиг. 3 — один из генерируемых знаков.

Генератор знаков содержит последовательно соединенные первый регистр

1, первый блок 2 памяти; первый счетчик 3 и второй блок 4 памяти, блок 5 управления, второй счетчик б, дешифратор 7, последовательно соединенные сумматор 8, второй регистр 9 и третий блок 10 памяти, выходы которого подключены соответственно к первому и второму умножителям 11 и 12, третий счетчик 13, выход которого соединен с одним иэ входов элемента совпадения. 14.

Генератор работает следующим образом.

В качестве примера конкретного 30 выполнения предлагаемого устройства рассматривается генератор знаков чертежно-графического автомата, предназначенного для нанесения знаковой информации на бумажный носи- З5 тель. Формирование знаков производит ся путем вычерчивания последовательности векторов. Векторы кодируются двоичными восьмиразрядными словами .

Набор таких слов составляет под- 40.. программу знаков и хранится во втором блоке памяти 4.

Векторы характеризуются направ.лениями и длиной. Направление вектора кодируется четырехразрядным два- 45 ичным числом. Всего имеется 16 дискретных направлений, отстоящих друг от друга на 22,5 . Кодировка направлений единичных векторов показана на фиг. 2. Длина вектора определяет- 50 ся количеством единичных векторов, которое в векторе кодируется трехраэрядным двоичным числом. Растр знака из 7 7 единичных векторов.

Слово, определяющее вектор, состоит 55 из четырех разрядов (1-4) кода направления вектора, трех разрядов (5-7) количества единичных векто90 ров, одного разряда (8) положения пишущего элемента. Если вектор необходимо вычерчивать, в восьмом разряде записывается единица. Если необходимо произвести перенос пишущего элемента без вычерчивания — записывается ноль.

Для вычерчивания векторов применяются единичные векторы. Всего имеется по количеству направлений

16 единичных векторов. Единичные векторы кодируются в элементарных шагах восьмиразрядными двоичными числами. Слово, определяющее единичный вектор, состоит из четырех разрядов (1-4) числа элементарных шагов по оси Х и четырех разрядов (5-8) числа элементарных шагов по оси У.

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

Это необходимо для поворота знака.

Применение единичных векторов позволяет сократить объем памяти, необходимой при повороте знака. Информация о единичных векторах хранится в третьем блоке 10 памяти. Объем этой памяти составляет 16 байт, /

Для вычерчивания нужного знака следует обращение к генератору знаков с кодом знака. Код знака в сопровождении синхросигнала подается на вход генератора знаков и фиксируется на первом регистре 1, а синхросигнал сопровождения знака.поступает в блок 5 управления. По коду знака из первого блока 2 памяти выбирается на первый счетчик 3 код нромежуточного адреса. Но адресу первого счетчика 3 следует обращение во второй блок 4 памяти, происходит считывание первого байта формирования знака. Информация о направлении вычерчиваемого вектора поступает на вход сумматора 8, где происходит суммирование кода направления вектора и кода угла поворота знака. После суммирования получается четырехразрядное двоичное число, являющееся кодом направления повернутого вектора.

Этот код фиксируется на втором регистре 9. Код направления повернутого вектора является адресом, по icoторому обращаются в третий блок 10

3 . 11646 памяти. Из третьего блока 10 памяти считывается информация о количестве элементарных шагов по осям Х и У для данного направления единичного вектора. Информация о количестве 5 элементарных шагов по оси Х (1-4 разряд) поступает на первый умножитель 11, информация о количестве элементарных щагов по оси У (5-8 разряд) поступает на второй умножи- 10 тель 12. В умножителях l1 и 12 происходит перемножение числа единичных векторов на число элементарных шагов в единичном векторе. В результате перемножения получается число эле- 15 ментарных шагов по осям У и Х. Информация о числе элементарнык шагов по осям Х и У подается на выход гене ратора знаков и записывается во второй и третий счетчики 6 .и 13. После {) записи информации в счетчики 6 и

13 под действием управляющих импульсов, поступающих из блока 5 управ ления, происходит вычитание из двоичных чисел, записанных в счетчиках 25

6 и 13. На выходе счетчиков 6 и 13 присутствуют сигналы лог. "1". В процессе вычитания двоичных чисел из счетчиков Ь и 13 происходит вычерчивание вектора. После того, . как в jg счетчиках 6 и 13 установятся нулевые. состояния, на выходах счетчиков

6 и 13 появляются сигналы лог. "0".

На выходе элемента совпадения 14 появляется сигнал лог. "1", который пересчитывает на единицу первый счетчик 3 и запрещает прохождение управляющих сигналов с блока 5 управления. Таким образом, первый вектор знака сформирован полностью, Далее про-. исходит выборка следующего байта из второго блока 4 памяти и процесс повторяется до тех пор, пока не бу- дет сформирован знак. При распознавании байта, являющегося признаком конца знака, обращение к второму блоку 4 памяти прекращается.. Блок 5 управления вырабатывает сигнал, обнуляющий первый счетчик 3. Генератор знаков готов к приему кода знака и формированию нового знака.

Рассмотрим на конкретном примере, как осуществляется поворот знака.

Например, необходимо произвести 5ф вычерчивание знака "1", повернутого на 45 относительно горизонтальной " оси. По коду знака "1", который

4 фиксируется на ервом регистре 1, из первого блока 2 памяти выбирается на первый счетчик 3 код промежуточного адреса. Ло адресу с первого счетчика 3 следует обращение во второй блок 4 памяти, происходит считывание первого байта формирования знака. В первом байте 01001111, в

1-4 разряде записан код направления вычерчиваемого вектора, в 5-7 разряде число единичных векторов в двоичном коде, в 8 разряде положение пера. Код направления вектора (0100) поступает в сумматор 8, на вход которого одновременно с кодом знака поступает код угла поворота

0010, происходит суммирование кода направления вектора и кода угла поворота. Код повернутого вектора (0110} фиксируется на втором регистре 9 и является адресом, по которому обращаются в третий блок 10 памяти. По адресу (0110) из третьего блока 10 памяти считывается байт (01100110), который характеризует единичный вектор данного направления. !

В 1-4 разряде в двоичном коде записано число элементарных шагов по оси

Х (6 шагов), в 5-8 разряде — число элементарных шагов по оси У- (6 шагов)

Информация о числе элементарных шагов ло осям Х и У поступает соответственно на первый и второй умножители 11 и 12, где происходит пе11емножение числа элементарных шагов по осям Х и У на число единичных векторов (7 векторов), которое поступает . на умножители 11 и 12 с второго блока 4 памяти. В результате перемножения получаем число элементарных шагов по осям Х и У (42 шага), необходимых для вычерчивания первого вектора.

Число элементарных шагов по осям

Х и У записывается соответственно во второй и третий счетчики 6 и 13 и подается на выход генератора зна-. ков. После записи чисел в счетчики

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

1164690 движения пишущего зпемента определяется по коду направления с помощью дешифратора 7. После установки нулевых состояний в счетчиках 6 и 13 на выходе элемента совпадения 14 появляется сигнал лог. "1", который запрещает прохождение управляющих сигналов с блока 5 управления и пересчитывает на единицу первый счетчик 3. Происходит выборка следующего байта 00001001 из второго блока 4 памяти. В сумматоре 8 код направления вектора ОООО суммируется с кодом угла поворота- 0010. По коду повернутого вектора 0010 из третьего блока 10 памяти выбирается байт

01100110 единичного вектора. В умножителях 11, 12 производятся перемно5. жения чисел 100 и 0110, результаты заносятся в счетчики 6 и 13 и вычи таются.

Таким образом, первый и второй векторы знака сформированы полнос10 тью. Далее производится выборка байта 00000000, являющегося признаком конца знака. По этому байту в блоке

5 управления формируется сигнал, обнуляющий первый счетчик 3. Генера15 тор знаков готов к формированию следующего знака.. 1164690

0100 0011 0010

011

001

0111

1000

0000

1001

1111

1010 101

ФИа 2

0100

1000

00Щ

Составитель В.Фунтова

Техред Т.Маточка

Корректор Л. Бескид

Редактор В. Ковтун

Филиал ППП "Патент", г. Ужгород, ул. Проектная, 4

Заказ 4187/45 Тирах 710 Подписное

ВНИИПИ Государственного комитета СССР ко делам изобретений и открытий

113035, Москва, Ж-35, Раушская наб., д. 4/5