Программирующая среда
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Номер патента: 813412
Автор: Жила
Текст
Оп ИСАНИЕИЗОБРЕТЕНИЯК АВТОРСКОМУ СВИДЕТЕЛЬСТВУ Союз СоветскнкСоциалисткческнкРеспублик(ц 813412 1) Дополнительное к т. свид-ву -51) М. Кл.б 06 Г 7/00 б 06 Г 5/20 21) 2713763/18 2) Зая ено 15.01.79 ением заяв-ис Гееудерствеииый комите СССР по делен изобретений(71) Заявител Калмыкова Таганрогский радиотехнический институт 54) ПРОГРАММИРУЮЩА А Изобретение относи технике и может быть томатического составл мутации и настройк структур, а также для ции по признакам,ся к вычислительной спользовано для авния электронной коммногопроцессорных ортировки информаИзвестна вычислительная среда, состоящая из однотипных ячеек, соединенных между собой соответствующими входами и выходами, каждая из которых состоит из накопителя, узла приема, узла передачи сигналов сравнения и элемента сравнения, входы которого соединены с накопителем и входами опроса ячейки, выход - со входом узла передачи сигнала совпадения, выход которого соединен с информационными выходами ячейки, а другие входы - со входом настройки и с информацпонными входами ячейки, которые кроме того соединены со входом узла приема, другой вход которого соединен со входом настройки и с информационными входами ячейки, которые кроме того соединены со входом узла приема, другой вход которого соединен со входом записи, а выход - со входом накопителя 1) . Однако в ассоциативном параллельномпроцессоре, реализуемом с помощью данных ячеек, невозможно организовать процесс параллельной трансляции без дополнительиых внешних узлов (памяти микропрограмм, регистров записи, настройки и т. д.), Это приводит к увеличению оборудования. Кроме того, обращение к внешним по отношению к процессору узлам увеличивает время трансляции.Наиболее близкой из известных вычислительных сред к предлагаемой по технической сущности является программирующая среда, состоящая из однотипных ячеек, соединенных между собой соответствующими информационными входами и выходами, каждая из которых состоит из накопителя, узла приема, узла обмена, формирователя управляющих. сигналов, дешифратора и узла сравнения, один вход которого соединен с входом признака сравнения ячейки, другой вход - с первым входом нако пителя, а выход - с одним из входов дешифратора, второй вход которого соединен со вторым входом накопителя, а выход - с узлом обмена и с формирователем управляющих сигналов, выходы которого соеди 81342осударственного комитетам изобретений и открытийа, Ж - 35, Раушская наб., д. 4/ атент, г. Ужгород, ул. Проектна Составитель А ЖТехред А. БойкасТираж 745 еновКорректор М. ШарошПодписноеСССРнены с соответствующими управляющими входами узла приема и узла обмена, выходы соединены с информационными выходами ячейки, а информационные входы с выходами накопителя и с информационными входами ячейки, соединенными с информационными входами узла приема, выходами соединенного со входами накопителя, о бщин из входов которого соединен с входом ввода программы ячейки. Синтаксический анализ исходного текста программы при преобразовании последнего в объектную программу производится по синтаксическим признакам, которые являются элементами заранее заданного упорядоченного множества и заключаются в выделении отношений синтаксической подчиненности, индуцируемых отношением порядка на указанном выше множестве. Для выделения отношений синтаксической подчиненности необходимо на обшую для всех ячеек управляющую шину последовательно подавать синтаксические признаки в соответствии с отношением порядка 12 Однако в конкретных исходных программах ооычцо используются не все синтаксические признаки упорядоченного множества, а только некоторые из цих.ри этом необходи. мость просмотра всего упорядоченного множества сингаксических признаков сушествецно снижает быстродействие программирующей среды.Цель изобретения повышение оыстродсйствия. Г 1 оставлснцая цель достигается тем, что в программирующую среду, содержащую однотипные ячейки, соединенные лвухстороцними информационными связями, причем кМ- дая ячейка включает накопитель, узел приема, узел обмена, формирователь управляющих сигналов и первый узел сравнения, первый вход которого соединен с первым входом накопителя. выход первого узла сравнения соединен с первыми вхоламц формирователя управляющих сигналов и дешифратора, второй вход дсшифратора соединен с вторым входом накопителя, выход дешифратора подключен к первому входу узла обмена, три выхода формирователя уцравляюших сигналов соединены соответственно с первыми, вторыми и третьими управляющими входами узла приема и узла обмена, четвертый управляющий вход узла обмена соединен с четвертым выходом формирователя уцравляк)щих сигналов, выходы узла обмена являются информационными выходами ячейки, первые, вторые и третьи информационные входы узла приема и узла обмена соединены соответственно с первым, вторым и третьим информационными входами ячейки, выходы узла приема подключены соответственно к первому, второму и третьему входам накопителя, четвертый вход которого является входом ввода программы ячейки, третий и четвертый выходы накопи 40 45 50 55 5 10 5 20 25 30 35 теля подключены соответственно к четвертому и пятому информационным входам узла обмена, группа входов накопителя является выходами объектной программы ячейки, введены элементы И, ИЛИ и второй узел сравнения, первые входы элементов И соединены с первым управляющим входом ячейки, первый и второй входы второго узла сравнения соелинены соответственно с первым и пятым выходами накопителя, управляющие входы первого и второго узлов сравнения соединены с вторым управляющим входом ячейки, второй вход первого узла сравнения соединен с шестым выходом накопителя, выход второго узла сравнения соединен с вторым входом формирователя управляющих сигналов соединен с вторыми вхоратора, пятый выход формирователя управлявшим сигналов соединен с вторыми входами первого и второго элементов И, третьи входы которых соединены соответственно с четвертым и пятым информационными входами ячейки, выходы первого и второго элементов И подключены соответственно к первым входам первого и второго элементов ИЛИ, выходы которых являются дополнительными информационными выходами ячейки,вторые входы третьего. четвертого и пятого элементов И соединены с первым вхолом формирователя управляющих сигналов, третьи входы подключены соответственно к четвертому информационному входу ячейки, пятому информационному входу ячейки и к первому выходу накопителя, пятый и шестой входы которого соединены соответственно с выходом третьего элемента И с выходом четвертого элемента И, выход пятого элемента И подключен к вторым входам первого и второго элементов ИЛИ, четвертый управляющий вход узла приема и пятый управляющий вход узла обмена подключены к перрому управляющему входу ячейки. Кроме того, в программирующей среде формирователь управляюших сигналов в каждой ячейке содержит элементы И, ИЛИ, задержки и три триггера, первые входы первого и второго триггеров соединены с входом установки исходного состояния формирователя, первый вход третьего триггера и второй вход первого триггера соединены с выходом элемента И, входы которого являются первым и вторым входами формирователя, выхол третьего триггера соединен с первым входом элемента ИЛИ и через элемент задержки - со своим вторым входом и с вторым входом второго триггера, выход которого соединен с вторым входом элемента ИЛИ, выходы первого триггера, элемента задержки, третьего триггера, второго триггера и элемента ИЛИ являются соответственно с первого по пятый выходами формирователя.На фиг. 1 представлена структурная схема одной ячейки программируюшей среды;50 55 на фиг. 2 - функциональные схемы узла приема и узла обмена; на фиг. 3 - функциональная схема формирователя управляющих сигналов.Программирующая среда содержит накопитель 1, узел 2 приема, узел 3 обмена, узлы 4 и 5 сравнения, формирователь 6 управляющих сигналов, дешифратор 7, элементы И 8 - 12, элементы ИЛИ 13 и 14, регистры 15 - 21 накопителя, вход 22 ввода программы, управляющие входы 23 и 24 ячейки, информационные входы 25 - 29, ячейки, выходы 30 - 33 формирователя управляющих сигналов, вход 34 регистра 15, выход 35 регистра 16, выход 36 регистра 17, выход 37 регистра 18, выходы 38 - 40 элементов 8 - 10 соответственно, выходы 41- 43 узла приема, дополнительный выход 44 формирователя управляющих сигналов, выходы 45 вывода объектной программы, информационные выходы 46 - 48 ячейки, дополнительные выходы 49 - 50 ячейки, элементы И 51 - 57, элементы 58 - 59 запрета, элементы ИЛИ 60 - 63, элемент И 64, триггеры 65 - 67, элемент 68 задержки, элемент ИЛИ 69.Накопитель 1 предназначен для хранения всей необходимой информации, используемой ячейкой в процессе преобразования исходного текста программы в программу коммутации и настройки. В описываемом варианте программирующей среды он состоит из семи регистров. В эти регистры вводится фрагмент исходного текста программы. В процессе работы программирующей среды в регистры накопителя записывается рабочая информация, а после окончания преобразования в них хранится программа коммутации и настройки.Узел 2 приема предназначен для приема в определенные моменты времени рабочей информации, поступающей из соседних ячеек, и записи ее в соответствующие регистры накопителя. Три информационных входа узла 2 приема соединены с тремя информационными входами 25, 26 и 27 ячейки. Для того, чтобы прием информации, поступающей через информационные входы, производился в строго определенные алгоритмом преобразования моменты времени, управляющие входы узла 2 приема соединены с тремя выходами 30, 31 и 32 формирователя 6 управляющих сигналов, Выходы 41, 42 и 43 этого узла соединены со входами накопителя. Узел 3 обмена предназначен для передачи рабочей информации из накопителя в соседние ячейки и для транзитной передачи рабочей информации от одной соседней ячейки к другой. Информационные входы этого узла соединены с информационными входами 25, 26 и 27 ячейки и с соответствующими выходами накопителя 1. Узлы 4 и 5 сравнения совершенно идентичны 5 1 О 15 го 25 эо 35 40 45 и предназначены для сравнения синтаксического признака грамматического элемента, записанного в данной ячейке с синтаксическими признаками грамматических элементов, записанных соответственно в левой и правой соседних ячейках, Для этого они своими входами соединены с соответствую- шими выходами накопителя 1, Момент выбора синтаксических признаков из накопителя определяется управляющим сигналом, поступающим на узлы сравнения через управляющий вход 23 ячейки. Результат сравнения передается из узлов 4 и 5 сравнения в формирователь 6 управляющих сигналов и дешифратор 7.Формирователь 6 управляющих сигналов предназначен для выработки сигналов, управляющих алгоритмом преобразования информации в ячейке, в зависимости от результатов сравнения, произведенного в узлах 4 и 5 сравнения. Набор управляющих сигналов на выходах формирователя 6 управляющих сигналов определяется состоянием, в которое переходит ячейка в зависимости от результатов сравнения. Всего ячей ка может находиться в четырех состояниях: приема, приема и передачи, транзита 1 и транзита 11. Исходное состояние ячейки - состояние приема. Оно характеризуется наличием сигнала на выходе 30. В состояние приема и передачи ячейка переходит, если с выходом двух узлов 4 и 5 сравнения на формирователь 6 управляющих сигналов поступает результата, указывающий на наличие отношения порядка между синтаксическим признаком грамматического элемента, хранящегося в накопителе данной ячейки, и синтаксическими признаками грамматических элементов, записанных в левой и правой соседних анализируемых ячейках. Другими словами, в это состояние ячейка переходит, если синтаксический признак ее грамматического элемента является максимальным на каком-то фрагменте анализируемого текста программы. Для этого состояния характерно наличие сигналов на выходах 32 и 44. Из состояния приема и передачи через один шаг синтаксического анализа ячейка автоматически переходит в состояние транзита 1, для которого характерно наличие сигналов на выходах 31, 33, и 44, Еще через шаг ячейка автоматически переходит из состояния транзита 1 в состояние транзита 11. При этом сигналы будут выдаваться на выходах 33 и 44. Дешифратор 7 предназначен для выделения кодов особых операторов. К особым операторам можно отнести операторы,управляющие процессом преобразования,или, например, оператор присвоения. Элемент И 8 предназначен для записи в накопитель 1 синтаксического признака, поступающего слева. Для этого входы соединены с информационным входом 28 ячейки.Элемент И 9 предназначен для передачи синтаксического признака из накопителя 1 в соседние ячейки, Информационный вход его соединен с выходом 34 накопителя 1, а выход - со входом элементов ИЛИ3 и 14. Элемент И 10 предназначен для записи в накопитель 1 синтаксического признака, поступающего справа. Его информационный вход соединен с информационным входом 29 ячейки, Управляющие входы элементов И 8, 9 и 10 соединены с управляющим входом 24 ячейки и с выходом 30 формирователя 6 управляющих сигналов.Элементы И 11 и 12 предназначены для транзитной передачи синтаксических признаков соответственно слева направо и справа налево. Управляющие входы этих элементов соединены с управляющим входом 24 ячейки и с выходом 44 формирователя 6 управляющих сигналов, Информационный вход элемента И 11 соединен с информационным входом 28, а информационный вход элемента И 12 - с информационным входом 29 ячейки. Выходы элементов соединены соответственно со входами элементов ИЛИ 13 и 14, которые предназначены для передачи информации на информационные выходы 49 и 50 ячейки. Регистр 15 предназначен для хранения синтаксического признака грамматического элемента, хранящегося в накопителе 1 списываемой ячейки. Регистры 16 и 17 предназначены для хранения синтаксических признаков, поступающих слева и справа. В регистре8 хранится символический код операции. Регистр 19 предназначен для хранения адреса исполняющего операцию устройства или его идентификатора. В регистрах 20 и 21 запоминаются идентификаторы и адреса соответственно левого и правого операндов. Входы регистров 19, 20 и 21 соединены соответственно с выходами 41, 42 и 43 узла 2 приема, а выходы регистров 19 и 20 со входами узла 3 обмена. Кроме того, вторые выходы регистров 18, 19, 20 и 21 соединены с выходами вывода объектной программы.Управляющий вход 23 ячейки предназначен для ввода сигнала, управляющего переходом ячейки из одного состояния в другое, а наличие сигнала на управляющем входе 24 ячейки определяет момент обмена информацией между ячейками,В узле 2 приема элемент И 51 предназначен для записи в накопитель 1 информации, 1 юступаюгцей в ячейку слева через вход 26, если в программирующей среде обнаружен особый оператор типа присвоения. Записью управляют сигналы, поступающие с управляющего входа 24 ячейки и с выхода 31 формирователя 6 управляющих импульсов. Выход 41 элемента И 51 соединен с входом регистра 19. Элемент И 52 предназначен для записи в регистр 20 через выход 42 адреса или идентификатора операнда, поступающего на информационный вход 25 ячейки слева. Управляющие входы элемента И 52 соединены с управляющим входом 24 ячейки и с выходом 30 формирователя 6 управляющих сигналов. Элементы И 53 и 54 и элемент ИЛИ 60 предназначены для записи в регистр 2 накопителя 1 адресов или идентификаторов операндов, поступающих на информационный вход 27 ячейки справа. Управляющие входы элементов И 53 и 54 соединены с управляющим входом 24 ячейки и соответственно с выходами 32 и 30 формирователя 6 управляющих сигналов. Выходы этих элементов соединены со входами элемента ИЛИ 60, выход 43 которого соединен со входом регистра 21.В узле 3 обмена элемент И 55 предназначен для передачи идентификатора из регистра 20 накопителя 1 через элемент ИЛИ 61 и информационный выход 46 в расположенную справа ячейку в том случае, если дешифратором 7 выделен оператор присвоения. Информационный вход этого элемента соединен с выходом регистра 20, и один из управляющих входов - с выходом регистра 7. Элемент И 56 предназначен для пе редачи транзитом через ячейку адресной информации или идентификаторов справа налево. Информационный вход этого элемента соединен с информационным входом 33 формирователя 6 управляющих сигналов.Элемент И 57 предназначен для передачи транзитом адресной информации или идентификаторов через ячейку слева направо.Информационный вход этого элемента соединен с информационным входом 25 ячейки, а один из управляющих входов ео - с выходом 33 формирователя 6 управляющих сигналов, Элемент 58 запрета предназначен для запрета передачи информации транзитом через ячейку, находящуюся в состоянии транзита 1 или в состоянии приема, и разрешения прохождения информации тран зитом через ячейкх, находягцуюся в сосгоянии транзита 1 . Информационный вход элемента 58 запрета соединен с информационным входом 26 ячейки, и два входа запрета соединены с выходами 30 и 32 формирователя 6 управляющих сигналов Элемент 59 запрета предназначен для запрета передачи адресной информации из регистра 9 соседними ячейками, если дешифратор 7 ячейки выделил особый оператор, и разрешения передачи этой информации сосед О ним ячейкам, если рассматриваемая ячейканаходится в состоянии приема и передачи, и оператор, хранящийся в ней, не является особым. Информационный вход элемента 59 запрета соединен с выходом регистра 9, вход элемента запрета соединен с выходом дешиФратора 7, а один из управляюгцих входов - с выходом,32 формирователя 6 управляющих сигналов. Оставшийся управляющий вход элементов 55 - 59 соединен с мпПрограммирующая среда работает сле дуюгцим образом.В накопителях 1 ячеек программирующей среды через информационные входы 23 записываются фрагменты исходного текста программы. Каждый фрагмент состоит из синтаксического признака и грамматического 50 элемента. В качестве грамматического элемента может использоваться символический код операции, например, близкий к обычной математической символике, идентификатор переменной или число. В качестве синтаксического признака используется целое число.55 Если грамматический элемент является символическим кодом операции, то он хранится в регистре 18, если же он представляет равляющим входом 24 ячейки, для обеспечения согласования моментов обмена информацией между ячейками. Выходы элементов И 55 соединены со входами элемента ИЛИ 61 выход которого соединен с информационным выходом 46 ячейки. Входы элемента ИЛИ 62 соединены с выходами элемента И 56 и элемента 58 запрета, а его выход - с информационным выходом 47 ячейки. Входы элемента ИЛИ 63 соединены с входами элементов И 57 и запрета 58, а выход - с информационным выходом 48 ячейки.В формирователе управляющих сигналов элемент И 64 предназначен для формирования сигнала перехода ячейки в состояние приема и передачи. Этот сигнал появляется в том случае, если узлы 4 и 5 сравнения одновременно определяют наличие отношения порядка между соответствующими синтаксическими признаками. Входы элемента И 64 соединены с выходами узловФ и 5 сравнения, а выход - со входом установки триггера 66 и с входом сброса триггера 65. Триггер 65 предназначен для фиксации состояния приема. Вход установки триггера соединен с входом установки исходного состояния, а выход - с выходом 30 формирователя 6 управляющих сигналов. Триггер бб предназначен для фиксации состояния приема и передачи. Вход сброса этого триггера соединен с вь ходом элемента 68 задержки, а прямой выход - с выходом 32 формирователя 6 управляющих сигналов, с входом элемента 68 задержки и с одним из входов элемента ИЛИ 69. Триггер 67 предназначен для фиксации состояний транзита. Вход установки его соединен с выходом элемента 68 задержки, а вход сброса - со входом установки исходного состояния. Выход этого триггера соединен со вторым входом элемента ИЛИ 69 и с выходом 33 формирователя 6 управляющих сигналов. Элемент 68 задержки предназначен для формирования сигнала на выходе 31 в состоянии транзита 1. Элемент ИЛИ 64 прсдназна ен для формирования управляющего сигнала на выходе 44 формирователя 6 уппавляюгцих сигналов. 10 15 20 25 35 40 собой идентификатор переменной или число, то он хранится в регистре 20. Синтаксический признак грамматического элемента хранится в регистре 15. Кроме того, во всех трех регистрах 20, в которых не записан идентификатор переменной или число, хранится собственный адрес ячейки.Каждый шаг синтаксического анализа исходного текста программы производится за два полушага. Первый полушаг выполняется при наличии сигнала на управляющеМ входе 24 ячейки. Сигнал на управляющем входе 23 ячейки определяет момент выполнения второго полушага. В первом полушаге производится обмен информацией между ячейками, а во втором - определение состояния ячеек для выполнения следующего шага. В начале синтаксического анализа все ячейки находятся в состоянии приема. Следовательно, все триггеры 65 формирователей 6 управляющих сигналов будут находится в исходном сЬстоянии, и формирователи на выходах 30 подают управляющие сигналы. Эти сигналы подготавливают элементы И 8, 9 и 10 и элементы И 52 и 54, расположенные в блоке приема 2, и блокируют элемент 58 запрета. При выполнении первого полушага во всех ячейках из регистров 15 синтаксический признак пройдет через выход 34, элемент И 9, его выход 39 и элементы ИЛИ 3 и 14 на информационные выходы 49 и 50. С выходов 49 и 50 синтаксические признаки поступают соответственно на информационный вход 28 правой ячейки и на информационный вход 29 левой ячейки и соответственно через элементы И 8 и 10, их выходы 38 и 39 записываются в регистры 16 и 17. Таким образом в результате выполнения первого полушага в каждой ячейке в регистре 16 будет записан синтаксический признак грамматического элемента, хранящегося в левой ячейке, а в регистре 17 - синтаксический признак грамматического элемента, хранящегося в правой ячейке. Во втором полушаге синтаксические признаки из регистров 15, 16 и 17 поступают на соответствующие входы узлов 4 и 5 сравнения, где они сравниваются. Если в результате сравнения окажется, что синтаксический признак из регистра 15 больше синтаксического признака из регистра 16 или они равны, то на выходе узла 4 сравнения появится сигнал. Аналогично, если синтаксический признак из регистра 15 больше синтаксического признака из регистра 17, то на выходе узла сравнения 5 также появится сигнал. В тех ячейках, в которых на этом полушаге сигнал появится на выходах двух узлов сравнения, в формирователях 6 управляющих сигналов через элементы И 64 сбрасываются триггеры 65, снимая сигнал с выхода 36, а триггеры 67 устанавливаются, и появляется сигнал на вы 8134 12 12ходе 32. Кроме того, через элемент ИЛИ 69 этот сигнал поступает на выход 44. Таким образом, эти ячейки переходят в состояние приема и передачи, Во втором полушаге первого шага в указанное состояние перейдут только те ячейки, в которых в качестве грамматических элементов хранятся либо идентификаторы переменных, либо числа, так как они обладают большими синтаксическими признаками, На этом второй полушаг первого шага заканчивается,В первом полушаге следующего шага выполняются следующие действия. Из регистров 15 всех ячеек, находящихся в состоянии приема выдаются синтаксические признаки по следующим двум путям: 1) выход 34, элемент И 9, выход 39, элемент ИЛИ 13, выход 49, выход 28 правой ячейки; 2) выход 34, элемент И 9, выход 39, элемент ИЛИ 14, выход 50, вход 29 левой ячейки. Если соседняя ячейка находится в состоянии приема и передачи, то элементы И 8 и 10 в них закрыты, а элементы И 11 и 12 готовы к приему информации. Поэтому синтаксические признаки с входа 28 через элементы И 11 и ИЛИ 13 и с входа 29 через элементы И 12 и ИЛИ 14 таких ячеек транзитом переходят соответственно на выходы 49 и 50. Если же соседняя ячейка находится в состоянии приема, то синтаксические признаки записываются в регистры 16 и 17, как было уже указано выше. Кроме того, из регистров 19 ячеек, находящихся в состоянии приема и передачи информации (на описываемом полушаге у идентификатора переменных или числа) поступает на элемент 59 запрета. Так как на управляющий вход этого элемента подается сигнал с выхода 32 формирователя 6 управляющих сигналов и на вход запрета, с входа дешифратора 7 сигнал не подается. Следовательно информация из регистра 19 проходит через элемент 59 запрета и элементы ИЛИ 62 и ИЛИ 63 на информационные выходы 47 и 48. С информационного выхода 47 информация поступает на вход 27 левой ячейки и с информционного выхода 48 - на вход 5 правой ячейки. Эти ячейки в первом полушаге второго шага могу находиться либо в состоянии приема, либо в состоянии передачи и приема. В первом случае информация с входа 25 через элемент И 52 и его выход 42 поступает в регистр 20, а с входа 27 через элементы И 54 и ИЛИ 60 - в регистр 21. Во втором случае открывается только один элемент И 53 в узле 2 приема.Поэтому в накопитель 1 ячейки записывается только информация, поступающая на ячейку справа через вход 27. Таким образом, в результате выполнения первого полушага второго шага идентификаторы или числа из регистров 19 ячеек, находящихся в состоянии приема и передачи, передаются в регистры 2 левых ячеек, находящихся всостоянии приема или приема и , 1 едачи, и в регистры 20 правых ячеек, находящихсяв состоянии приема. Если ячейка, которая расположена непосредственно справа отячейки, находящейся в состоянии приема и передачи, также находится в состоянии приема и передачи, то информация о левом операнде в ее регистр 20 не заносится. Кроме того, в регистрах 16 ячеекк, расположенных непосредственно справа, и в регистрах 17 ячеек, расположенных непосредственно слева от ячеек, находящихся в состоянии приема и передачи, производится обновление информации. А именно, в регистр 16 ячейки, расположенной справа от ячейки, находящейся в состоянии приема и пере дачи, записывается синтаксический признакиз регистра 15 ячейки, расположенной слева, и наоборот, синтаксический признак из регистра 15 ячейки, расположенной справа, записывается в регистр 17 ячейки, распо "ложенной слева. В ячейках, с которыми рядом не расположены ячейки, находящиеся в состоянии приема и передачи, информация в регистрах 16 и 17 подтверждается. 25 30 35 4 О 45 50 55 Во втором полушаге второго шага производится анализ синтаксических признаков и изменение состояния ячеек. Анализ синтаксических признаков производится точно также, как и во втором полушаге первого шага, за исключением того, что в ячейках, находящихся в состоянии приема и передачи, анализ синтаксических признаков не производится. 8 результате анализа новое множество ячеек переводится в состояние приема и передачи, автоматически переходит в состояние транзита 1. Это производится следующим образом. Сигнал, поданный на вход элемента 68 задержки с выхода триггера 66 в предыдущем втором полушаге, через время, равное длительности шага, появляется на его выходе, следовательно, и на выходе 31 формирователя 6 управляющих сигналов. Кроме того, этот же сигнал сбрасывает триггер 66, в результате чего снимается сигнал с выхода 32, и устанавливает триггер 67. Сигнал, появившийся на выходе триггера 67 поступает на выход 33 формирователя 6 управляющих сигналов и через элемент ИЛИ 69 - на выход 44, Сигнал, появившийся на выходе 31 формирователя 6 управляющих сигналов подготавливает элемент И 51 в узле 2 приема и блокирует элемент запрета в узле 3 обмена. Сигнал, появившийся на выходе 33, подготавливает элементы И 56 и И 57 в узле 3 обмена, Сигнал с выхода 44 подготавливает элементы И 11 и И 12. Вследствие того, что снимается сигнал с выхода 32 формирователя б управляющих сигналов блокируются, элементы И 53 в узле 2 приема и элемент 59 запрета в узле обмена.В первом полушаге третьего шага выполняются следующие действия по обменуВо втором полушаге третьего шага производится анализ синтаксических признаков и установка шаговых состояний ячеек. Так же, как и на предыдуших шагах анализа по результатам анализа какое-то новое множество ячеек переводится в состояние приема и передачи так же, как было описано ранее. Ячейки, находящиеся в состоянии приема и передачи, автоматически переходят в состояние транзита 1, а ячейки, находящиеся в состоянии транзита 1 - в состояние транзита 11. В этом состоянии сигнал с выхода 31 формирователя 6 управляющих сигналов снимается, и остаются сигналы только на выходах 33 и 34. При этом 45 50 55 информацией. Из регистров 19 ячеек, находящихся в состоянии приема и передачи, информация (адресная информация или идентификаторы) передается в ячейки, расположенные слева. Если ячейка, расположенная слева, находится в состоянии приема или в состоянии приема и передачи, а ячейка, расположенная справа, находится в состоянии, описанном для первого полушага второго шага, то информация, поступающая на вход ячейки 27, расположенной 10 слева, записывается в регистр 21, а информация, поступающая на вход 5 ячейки, расположенной справа, записывается в регистр 20, и передача информации следующим ячейкам в этих ячейках блокируется с помогцью элементов И 56 и И 57. Если же ячейки,5 которые расположены слева и справа относительно ячейки, находящейся в состоянии приема и передачи, находятся в состоянии транзита 1, то информация, поступающая соответственно на входы 25 слева, тран зитом проходит через элементы И 57 и ИЛИ 63 в узле 3 обмена на выход 48 и, поступив на входы 27 справа, проходит транзитом через элементы И 56 и ИЛИ 62 на информационный выход 47. Информация транзитом распространяется влево пока не достигнет ячейки, находящейся в состоянии приема или приема и передачи, и распространяется впра во по программирующей среде пока не достнгнет ячейки, находящейся в состоянии приема. После этого над ней производятся действия, описанные выше. Кроме того, на этом же шаге из всех ячеек, находящихся в состоянии приема, на выходы 49 и 50 подаются синтаксические признаки, которые транзитом проходят через элементы И 11 и ИЛИ 13 и через элементы И 12 и ИЛИ 35 14 ячеек, находящихся в состоянии приема и передачи или в состоянии транзита 1 до тех пор, пока не достигнут ячеек, находящихся в состоянии приема. В последних они обновляют информацию соответственно в регистрах 16 и 17, с которыми рядом не расположены ячейки, находящиеся в состоянии транзита 1 или в состоянии приема, и передача информации в регистрах 16 и 17 подтверждается. соответственно блокируется элемент И 51 и деблокируется элемент 58 запрета. Состояние других элементов ячейки остается таким же, каким оно было в предыдущем состоянии,В первом полушаге четвертого шага действия п обмену информацией производятся точно также, как и в первом полушаге третьего шага. Следует обратить внимание на то, что пока нет сигнала на выходе дешифратора 7 одной из ячеек, информация через ячейки, находящиеся в состоянии транзита 1 проходит точно так же, как и через ячейки, находящиеся в состоянии транзита 11. Все последующие шаги синтаксического анализа выполняются точно так же, как на третьем шаге с учетом замечания о ячейках, находящихся в состоянии транзита 11, сделанного при описании четвертого шага, до тех пор, пока хотя бы в одной из ячеек на входе дешифратора 7 не появится еигнал. Для этого необходимо, чтобы в регистре 18 ячейки был записан код особого оператора, например оператора присвоения, и на рассматриваемом шаге на выходах узлов 4 и 5 сравнения одновременно появились сигналы, указывающие о выделении отношения порядка между соответствующими синтаксическими признаками. Сигнал, появившийся на выходе дешифратора 7, блокирует элемент 59 запрета и готовит элемент И 55. В результате этих действий на первом полушаге следуюгцего шага из регистра 20 ячейки, в которой в регистре 18 записан код особого оператора, будет считан идентификатор. Последний с выхода регистра 20 через элементы И 55 и ИЛИ 62 проходит на информационный выход 46 ячейки. Поступление же информации из регистра 19 на выход 48 в этой ячейке блокируется элемен-. том 59 запрета. Идентификатор, поступивший на выход 46 ячейки, поступает на вход 26 соседней правой ячейки. Если последняя находится в состоянии транзита 11, то идентификатор через элемент 58 запрета и через элемент ИЛИ 61 проходит на выход 46, Распространение идентификатора вправо продолжается до тех пор, пока он не достигнет ячейки, находящейся в состоянии транзита 1. После этого дальнейшее продвижение идентификатора по программирующей среде блокируется элементом 58 запрета. Блокирование производится по входу, соединенному с выходом 31 формирователя 6 управляющих сигналов. Кроме того, идентификатор через элемент И 51 записывается в регистр 19. Синтаксический анализ заканчивается после перехода всех ячеек в одно из состояний транзита. В результате описанного процесса в накопителе 1 каждой ячейки сохраняется элемент объектной программы, а именно: в регистре 18 - код операции, в регистре 19 - идентификатор или адрес процессора, в котором исполняется опера 81341215165о15 формула изобретения ция, в регистре 21 - идентификатор или адрес правого операнда, а в регистре 20 - идентификатор или адрес левого операнда (если такой имеется).Введение новых элементов и связей в программирующую среду позволяет увеличить быстродействие. Это происходит из-за того, что при анализе программы производится сравнение синтаксических признаков, используемых в программе, со всеми подряд синтаксическими признаками, расположенными между наименьшим элементом упорядоченного множества и наибольшим синтаксическим признаком, используемым в программе, Анализ программы производится только по тем синтаксическим признакам, которые используются в программе. Синтаксические признаки, не используемые в исходном тексте программы, но принадлежашие подмножеству синтаксических признаков, расположенных между наименьшим элементом множества и наибольшим синтаксическим признаком программы, при анализе игнорируются. 1. Программируюшая среда, содержашая однотипные ячейки, соединенные двухсторонними информационными средами, причем каждая ячейка включает накопитель, узел приема, узел обмена, формирователь управляющих сиГналов и первый узел сравнения, первый вход которого соединен с первым входом накопителя, выход первого узла сравнения соединен с первыми входами формирователя управляющих сигналов и дешифратора, второй вход дешифратора соединен с вторым входом накопителя, выход дешифратора подключен к первому входу узла обмена, три выхода формирователя управляющих сигналов соединены соответственно с первыми, вторыми и третьими управляющими входами узла приема и узла обмена, четвертый управляюший вход узла обмена соединен с четвертым выходом формирователя управляющих сигналов, выходы узла обмена являются информационными выходами ячейки, первые, вторые и третьи информационные входы узла приема и узла обмена соединены соответственно с первым, вторым и третьим информационными входами ячейки, выходы узла приема подключены соответственно к первому, второму и третьему входам накопителя, четвертый вход которого является входом ввода программы ячейки, третий и четвертый выходы накопителя подсоединены соответственно к четвертому и пятому информационным входам узла обмена, группа выходов накопителя является выходами объектной программы ячейки, отличающаяся тем, что, с целью повышения быстродействия, в нее введены элементы И, ИЛИ и второй узел сравнения, первые входы элементов И соединены с первым управ 25 30 35 40 45 50 55 ляюшим входом ячейки, первь и второй входы второго узла сравнения соединены соответственно с первым и с пятым выходами накопителя, управляющие входы первого и второго узлов сравнения соединены с вторым управляющим входом ячейки, второй вход первого узла сравнения соединен с шестым выходом накопителя, выход второго узла сравнения соединен с вторым входом формирователя управляющих сигналов и с третьим входом дешифратора, пятый выход формирователя управляющих сигналов соединен с вторыми входами второго и первого элементов И, третьи входы которых соединены соответственно с четвертым и пятым информационными входами ячейки, выходы первого и второго элементов И подключены соответственно к первым входам первого и второго элементов ИЛИ, выходы которых являются дополнительными информационными выходами ячейки, вторые входы трезьего, четвертого и пятого элементов И соединены с первым входом формирователя управляюших сигналов, третьи входы подключены соответственно к четвертому информационному входу ячейки, пятому информационному входу ячейки и к первому выходу накопителя, пятый и шестой входы которого соединены соответственно с выходом третьего элемента И и с выходом четвертого элемента И, выход пятого элемента И подключен к вторым входам первого и второго элементов ИЛИ, четвертый управляюший вход узла приема и пятый управляюший вход узла обмена подключены к первому управляющему входу ячейки.2. Среда по п. 1, отличающаяся тем, что формирователь управляющих сигналов в каждой ячейке содержит элементы И, ИЛИ, задержки и три триггера, первые входы первого и второго триггеров соединены с входом установки исходного состояния формирователя, первый вход третьего триггера и второй вход первого триггера соединены с выходом элемента И, входы которого являются первым и вторым входами формирователя, выход третьего триггера соединен с первым входом элемента ИЛИ и через элемент задержки - со своим вторым входом и с вторым входом второго триггера, выход которого соединен с вторым входом элемента ИЛИ, выходы первого триггера, элемента задержки, третьего триггера, второго триггера и элемента ИЛИ являются соответственно с первого по пятый выходами формирователя.Источники информации,принятые во внимание при экспертизе 1. Однородные микроэлектронные ассоциативные процессоры. Под, ред. И. В. Прангишвили, М., -Советское радио., 1973, с. 115 - 116.2. авторское свидетельство СССРпо заявке2324495/18-24, кл, 6 Оо Г 15/20,1976 (прототип) .
СмотретьЗаявка
2713763, 15.01.1979
ТАГАНРОГСКИЙ РАДИОТЕХНИЧЕСКИЙИНСТИТУТ ИМ. B. Д. КАЛМЫКОВА
ЖИЛА ВЛАДИМИР ВАСИЛЬЕВИЧ
МПК / Метки
МПК: G06F 17/00, G06F 7/08
Метки: программирующая, среда
Опубликовано: 15.03.1981
Код ссылки
<a href="https://patents.su/10-813412-programmiruyushhaya-sreda.html" target="_blank" rel="follow" title="База патентов СССР">Программирующая среда</a>
Предыдущий патент: Комбинаторное устройство
Следующий патент: Устройство для программной реали-зации переключательных cxem
Случайный патент: Устройство для обработки поверхностей изделий со сквозным отверстием