Устройство для обработки символьной информации

Иллюстрации

Показать все

Реферат

 

УСТРОЙСТВО ДЛЯ ОБРАБОТКИ СИМВОЛЬНОЙ ИНФОРМАЦИИ/ содержащее первый и второй регистры, первый и второй триггеры, входы которых соединены с первым входом устройства, первый счетчик и третий триггер, входы которых соединены соответственно с вторым и третьим входами устройства , четвертый триггер, выход которого и выходы первых регистра и счетчика через первый коммутатор соединены с входом третьего регистра, выход четвертого триггера соединен с входом пятого триггера, четвертый вход устройства соединен с входом второго счетчика, выходы которого, пятого триггера и третьего регистра через второй коммутатор соединен с входом четвертого регистра, выход которого соединен с входом шестого триггера и через седьмой триггер соединен с первыми входами четвертого триггера и третьего коммутатора, выход которого соединен с первыми вхо ,дами пятого регистра, четвертого коммутатора и восьмого триггера, -выход которого соединен с входом третьего счетчика и с вторым входом третьего коммутатора, выходы первого и второго триггеров соединены с вторыми и третьими входами соответственно. ВСЕСОЮЗЙАЯ ЯАТЕйШО- .д TEXHH fBCifAS вЙБЛйОТЕКл восьмого триггера и пятого регистра, первый выход третьего счетчика соединен с четвертым входом пятого регистра и вторым входом четвертого коммутатора, выход которого соединен с входом шестого регистра, выход второго регистра соединен с третьим входом четвертого коммутатора, выход третьего триггера соединен с третьим входом третьего коммутатора, седьмой регистр, девятый триггеру вьюсод которого соединен с первыми.входами десятого и одиннадцатого триггеров и четвертого счетчика, второй вход и выход которого соединены .соответственно с пятым входомустройства и вторыми входами десятого и одиннадцатого триггеров, выход десятого триггеW ра соединен с вторым входом четвертого триггера и четвертым входом третьего коммутатора, отличающее с я тем, что, с целью повышения быстродействия , в него введены десять триггеров, три регистра, три. коммутатора , два счетчика и сумматор, пpичe выход пятого регистра соединен с первыми входами восьмого регистра, сумматора и через двенадцатый триггер с первым выходом устройства, выход шестого регистра соединен с вторыми вхоО ) дами сумматора и восьмого регистра, to выход которого соединен с первым вхо4;ii дом пятого jcoiwyTaTopa, выход которого через девятый регистр соединен с первым входсФС шестого коммутатора, выход которого через десятый регистр соединен с вторым выхбдом устройства, выход пятого триггера через тринадцатый триггер соединен с первым входом четырнадцатого триггера, выход которого соединен с входом девятого триггера, первым входом пятнадцатого триггера и через четвертый счетчик с вторыми входами, пятнадцатого триггера и шестого коммутатора и первыми входами седьмых коммутатора и регистра , выход шестого триггера соединен

СОЮЗ СОВЕТСКИХ

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

РЕСПУБЛИК

3(5Н С 06 F 9/44

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

Н ABTOPCHOMY СВИДЕТЕЛЬСТВУ

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

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ (21) 2907153/28-24 ,(22) 11.04.80 (46) 07. 04,83 . Бюл. Р 13 (72) M. В. Тяпкин, М.A.Ãoëoâèíà „

И.В. Волкова, В.A. Баканова и М.Г. Чайковский (53) 681.3(088.8) (56) 1.Асратян P.Ý. Командное обеспечение обработки символьной информа.ции.- Многопроцессорные вычислительные системы . М., Наука, 1975., с, 84-89.

2. Вычислительная система, IBM/360.

Принцип работы. М., радио, 1969, с. 142 (прототип) ° (54)(57) УСТРОЙСТВО ДЛЯ ОБРАБОТКИ

СИМВОЛЬНОЙ ИНФОРМАЦИИ, содержащее первый и второй регистры, первый и второй триггеры, входы которых соединены с первым входом устройства, первый счетчик и третий триггер, вхо: ды которых соединены соответственно с вторым и третьим входами устройства, четвертый триггер, выход которого и выходы первых регистра и счетчика через первый коммутатор соединены с входом третьего регистра, выход четвертого триггера соединен с входом пятого триггера, четвертый вход устройства соединен с входом второго счетчика, выходы которого, пятого триггера и третьего регистра через второй коммутатор соединены с входом четвертого регистра, выход которого соединен с входом шестого триггера и через седьмой триггер соединен с первыми входами четвертого триггера и третьего коммутатора, выход которого соединен с первыми входами пятого регистра, четвертого коммутатора и восьмого триггера, выход. которого соединен с. входом третьего счетчика и с вторым входом третьего коммутатора, выходы первого и второго триггеров соединены с вторыми и третьими входами соответственно, „„SU„„1010624 А восьмого триггера и пятого регистра, первый выход третьего счетчика соединен с четвертым входом пятого регистра и вторым входом четвертого коммутатора, выход которого соединен с входом шестого регистра, выход второго регистра соединен с третьим входом четвертого коммутатора, выход третьего триггера соединен с третьим входом третьего коммутатора, седьмой регистр, девятый триггер выход которого соединен с первыми. входами десятого и одиннадцатого триггеров и четвертого счетчика, второй вход и выход которого соединены .соответственно с пятым входом устройства и вторыми входами десятого и одиннадцато- Я

- го триггеров, выход десятого тригге,ра соединен с вторым входом четвертого триггера и четвертым входом треть-.

1 его коммутатора, о т л и ч а ю щ е е- С с я тем, что, с целью повышения быстродействия, в него введены десять Я триггеров, три регистра, три коммута тора, два счетчика и сумматор, прич выход пятого регистра соединен с пер - выми входами восьмого регистра, сумматора и через двенадцатый триггер с первым выходом устройства, выход шес- того регистра соединен с вторыми входами сумматора и восьмого регистра, выход которого соединен с первым вхо- Ь4 дом пятого коммутатора, выход которо- ф го через девятый регистр соединен с первым входом шестого коммутатора, выход которого через десятый регистр соединен с вторым выхЬдом устройства, выход пятого триггера через тринадцатый триггер соединен с первым входом четырнадцатого триггера, выход которого соединен с входом девятого триггера, первым входом пятнадцатого триггера и через четвертый счетчик с вторыми входами пятнадцатого триггера и шестого коммутатора и первыми входами седьмых коммутатора и регистра, выход шестого триггера соединен

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

Изобретение относится к вычисли тельной технике и может найти применение при построении вычислительных машин.

Известно устройство, содержащее регистры, память, счетчики, формиро ватель адреса fl) .

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

Наиболее близким к предлагаемому является устройство, содержащее регистры, триггеры, счетчики коммутаторы (2). 20

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

Цель изобретения повышение быстродействия устройства. 30

Поставленная цель достигается тем, что в устройство, содержащее первый и. второй регистры, первый и. второй триггеры, входы которых соединены с первым входом устройстваi 35 первый счетчик .и третий триггер, входы которых соединены соответственно с вторым и третьим входами устройства, четвертый триггер, выход которого и выходы первых регистра и счетчика через первый коммутатор соеди- 40 триггера и через двадцать первый триггер с вторыми входами девятнадцатого триггера, восьмого регистра и восемнадцатого триггера, выход которого соединен с третьим выходом устройства и входом двадцать первого триггера, выход шестнадцатого триггера соединен с вторым входом седьмого регистра, выход которого соединен с четвертым выходом устройства, выход пятнадцатого триггера соединен с четвертыми входами семнадцатого триггера и шестого коммутатора, выход пятого регистра соединен с третьим входом девятнадцатого триггера, пятый нход устройства через сумматор соединен с пятым выходом устройства. нены с входом третьего регистра, выход четвертого триггера соединен с входом пятого триггера, четвертый вход устройства соединен с входом второго счетчика, выходы которого, пятого триггера и третьего регистра через второй коммутатор соединен с входом четвертого регистра, выход которого соединен с входом шестого триггера и через седьмой триггер соединен с первыми входами четвертого триггера и третьего коммутатора, выход которого соединен с первыми входами пятого регистра, четвертого коммутатора и восьмого триггера, выход которого соединен с входом третьего счетчика и с вторым входом третьего коммутатора, выходы .первого и второго триггеров соединены с вторыми и третьими входами, соответственно, восьмого триггера и пятого регистра, первый выход третьего счетчика соединен с четвертым входом пятого регистра и вторым входом четвертого коммутатора, выход которого соединен с входом шестого регистра, выход второгр регистра соединен с третьим входом четвертого коммутатора, выход третьего триггера соединен с третьим входом третьего коммутатора, седьмой регистр, девятый триггер, выход которого соединен с первыми входамидесятого и одиннадцатого триггеров и четнертого счетчика, второй вход, и выход которого соединены соответственно с пятым входом устройства и вторыми входами десятого и одиннадцатого триггеров, выход десятого триггера соединен с вторым входом четвертого триггера и четвертым нходом третьего коммутатора, введены

1010624 десять триггеров, три регистра, три коммутатора, два счетчика и сумматор, причем выход пятого регистра соединен с первыми входами восьмого регистра, сумматора и через двенадцатый триггер с первым, выходом устройства, выход шестого регистра соединен с вторыми входами сумматора и восьмого регистра, выход которого соединен с первым входом пятого коммутатора, выход которого через девятый регистр 10 соединен с первым входом шестого коммутатора, выход которого через десятый регистр соединен с вторым выходом устройства, выход пятого триггера через тринадцатый триггер соединен с )5 первым входом четырнадцатого триггера, выход которого соединен с входом девятого триггера, первым входом пятнадцатого триггера и через четвертый счетчик с вторыми входами пятнадцато-20 го триггера и шестого коммутатора и первыми входами седьмых коммутатора и регистра, выход шестого триггера соединен с первым входом шестнадцатого триггера, третьим входом шестого коммутатора и вторым входом седьмого коммутатора, выход которого соединен с первым .входом пятого счетчика, первый выход которого соединен с первым входом семнадцатого триггера, выход которого. соединен с первым входом восемнадцатого триггера и первым вхо-. .дом девятнадцатого триггера, выход которого соединен с вторыми входами пятого коммутатора и семнадцатого триггера и через двадцатый триггер З5 с вторым входом пятого счетчика„ второй выход которого. соединен с третьим входом пятого коммутатора, вйиод шестнадцатого триггера соединен с третьим входом семнадцатОго триггера 40 и через двадцать первый триггер с вторыми- входами девятнадцатого триг гера, восьмого регистра и восемнадцатого. триггера, выход которого соединен с третьим выходом устройства и 45 входом двадцать первого триггера, выход шестнадцатого триггера соединен с вторым входом седьмого регистра, выход которого соединен с четвертым выходом устройства, выход пят" надцатого триггера соединен с четвертыми входами семнадцатого триггера и шестого коммутатора, выход пятого регистра соединен с третьим входом девятнадцатого триггера, пятый вход устройства через су атор соединен с 55 пятью выходом устройства.

На чертеже представлена блок-схема устройства.

Устройство содержит счетчики 1-6, сумматор 7, регистры 8-17, коммута- 60 торы 18-24, триггеры 25-45.

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

Таблица, задающая разбиение символов (байтов) на классы - заданный и дополнительный — находится в памяти и содержит 256 битов. Код анализируемого байта является относительным номером некоторого бита таблицы, Для байта заданного класса соответствующие биты таблицы. равны 1, для дополнительного — ° 0 .

Анализируемая строка также находится в памяти и может начинаться с любого байта. Из памяти она пословно последовательно принимается в регистр 9, одновременно производит-" ся установка триггеров 25 и 26, управляет выборкой коммутатор 20, в счетчик 3 заносится номер байта в слове, с которого должна начаться обработка.

Каждая выборка байта сопровождается срабатыванием триггера 32, который прибавляет 1 к счетчику 3, Анализируемые байты с регистра 9 поочеред", но, слева направо, поступают через коммутатор 21 в регистр 13, откуда они поступают на вход сумматора 7 для формирования исполнительного адреса. Одновременно на второй вход сумматора 7 передается адрес началь« ного (первого) бита таблицы. Производится сложение. Результат . — адрес бита таблицы — образуется в виде ад" реса слова, содержащего искомый бит номера байта в слове и номера бита в байте. Этот адрес выдается на выход устройства.

Триггер 36 является признаком готовности адреса. Выдача адреса сопровождается стробом, устанавливающим триггер 27, являющийся разрешением выборки следующего байта. Одновременно с формированирм адресов производится пересылка.через регистр 15 на регистр 16 первых двенадцати байтов анализируемой строки. Пересылкой управляют триггер 43, счетчик б и коммутатор 22. Запись каждого байта в регистр 16 сопровождается прибав- лением i к счетчику б. При-пере- . писи посйеднего двенадцатого байта устанавливается триггер 41, являющийся признаком окончания записи, который запрещает установку триггера

43, и пересылка прекращается. Двенадцать байтов хранятся до конца обработки.

Слово, содержащее искомый бит, принимается.иэ памяти на регистр 8.

Строб приема числа устанавливает триггер 28, являющийся признаком при-. ема байта, и производит прием на счетчики 1 и 2 искомый бит и номер бита в байте. Нужный байт через коммутатор 18 принимается i регистр 10 триггер 29, являющийся признаком приема бита, срабатывает от триггера

28 и управляет выборкой искомого би" ,та, который через коммутатор 1-9 передается на регистп..11..

Подсчет числа проверенных битов производится счетчиком 5, срабатываю1010624 щим от триггера 38, который стробируется триггером 37. Если бит, выбранный иэ таблицы регистр 11, оказался равным нулю, к счетчику 5 прибавляется единица. Когда код счетчика становится равным двенадцати, устанавливается триггер 39.

Если бит в,регистре 11 оказался равным 1, это означает, что соответствующий байт строки является разделителем. При этом срабатывают триггеры 30 и 31, являющиеся признаками нахождения. Триггер 31 останется в 1 до конца обработки и запрещает работу коммутатора 20 и триггера 28, так что дальнейший прием 15 битов таблицы прекращается.

Прибавление 1 к счетчику 5 в этом случае не производится. — блокируется срабатывание триггера 38, поэтому код счетчика 5 оказывается но- р(1 мером разделителя в строке.

Выдача разделителя производится из регистра 16 через коммутатор 23 в регистр 17 по коду счетчика 5 в момент срабатывания триггера 30. Если 25 к этому времени установлен триггер .. 39, т.е. номер разделителя в.строке больше двенадцати, выдача блокируется. Триггер 30 управляет также выдачей кода счетчика 5 через .коммутатор ЗО

24 в счетчик 6 для последующего гашения. Окончание обработки производится с помощью триггеров 40, 42 и 45 представляющими управляющую цепочку.

Первый элемент этой цепочки †. триггер 40 — срабатывает от признака на3S хождения и разрешает выдачу кода счетчика 5 в регистр 14, откуда он выдается на выход устройства. Кроме того, триггер 40 сбрасывает триггер

41 и устанавливает триггер 45, явля- 4О ющийся признаком гашения. После выдачи разделителя все правые байты регистра 16, начиная с разделителя, должны быть погашены. Триггер 45 обнуляет регистр 15 и устанавливает 45 триггер 43, управляющий пересылкой нулей с регистра 15 в байты регистра

16, начиная с разделителя. При гашении последнего, правого байта, вторично устанавливается триггер 41, запрещающий работу триггера 43, и гашение прекращается. После этого устанавливается триггер 42, который сбрасывает триггер 45. Таким образом обеспечивается выдержка времени, необходимая для формирования в регистре 16 строки символов дополнительного класса (идентификатора). Триггер

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

41, поэтому гашение не производится.

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

Если разделитель в строке не обнаружен, то после анализа всей заданной строки срабатывают триггеры 34 и 35, устанавливается триггер 40, запуская цепочку, управляющую окончанием обработки. Запрещается работа коммутатора 20 и триггера 28.

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

Это повышает эффективность работы трансляторов, редакторов и операционных систем. Длина строки в общем случае может быть от 1 до б 2"8байтов.

Скорость анализа — 5 тактов на байт.

Выдача адреса производится стартстонным методом.

1010624

Составитель И.Волкова

Редактор П.Макаревич 1ехред C.Ìèãóíoâà Корректор A. Повх

Заказ 2490/38 Гираж 704 Подпис ное

BHHHIIH Государственного комитета СССР по делам изобретений и открытий

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

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