Программируемый контроллер
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Номер патента: 1509887
Авторы: Базылев, Витковский, Мазаник, Сенюк, Склема, Шпаковский
Текст
СОЮЗ СОВЕТСКИХСОЦИАЛИСТИЧЕСКИХРЕСПУБЛИК С 59С 06 Р 9 В.; Е: СЗЗКРЧГ Ь ОБРЕТЕ ОПИСА ЕТЕЛЬСТВУ АВТОРСКОМ овский,.М.Шпаково СССР0,29.01 РОЛЛЕ ачен ГОСУДАРСТВЕННЫЙ КОМИТЕТПО ИЗОБРЕТЕНИЯМ И ОТНРЫТИПРИ ГКНТ СССР(54) ПРОГРАММИРУЕМЫЙ КО (57) Изобретение предна Изобретение относится к вычислигельной технике, предназначено для построения программируемых контроллеров (ПК) и является усовершенствованием изобретения по авт.св. У 1453404.Целью изобретения является повыше". ние быстродействия.На фиг, 1 представлена функциональная схема ПК; на фиг,2-5- схема блока обработки логических условий; на фиг. 6 - временные диаграммы цикла передачи информации в каналы вывода на фиг 7 - временные диаграммы цикла приема информации с каналов ввода; на фиг.8 - временные диаграммы работы узлов блока обработки логических условий и контроллера; на фиг. 9 - структура рабочей программы (РП), обрабатываемой контроллером на фиг. 10 - алгоритм обработки РП. 2построения программируемых контроллеров. Целью изобретения является повышение быстродействия, Контроллер содержит операционный блок, блок памяти рабочей программы, блок памяти состояний, два блока памяти управляющих программ, блок обработки логических условий, генератор импульсов, формирователь сброса, два триггера, счетчик, дешифратор, коммутатор, три элемента И и два элнмента ИЛИ. В блок об работки логических условий введены дешифратор, два триггера, два элемеМ- та И, элемент ИЛИ и элемент НЕ.10 ил., 2 табл. Программируемый контроллер содержит ;(фиг.1) операционный блок 1, блок 2 памяти рабочей программы, блок 3 памяти состояний, первый 4-1 и второи 4-2 блоки памяти управляющих программ, блок 5 обработки логических условий, генератор 6 импульсов, формирователь 7 сброса, триггеры 8 и 9 КБ-типа, двоичный счетчик 10, дешифратор 11, ком.мутатор 12, элементы И 13-15 и элементы ИЛИ 16 и 17.Генератор 6 импульсов имеет выходы 18 РО .19 Р 1 и 20 Р 2, при этом выход 18 РО подключен к входу 18 синхронизации блока 5 выход 9 " к первому тактовому входу операционного блока 1, выход 20 - к второму так" товому входу операционного блока 1 и к входу 20 синхронизации блока 5. Операционный блок 1 имеет выход 2 1 приз 1509887 20(лог."1"). При считывании старшего, байта инструкции РП из блока 2 памяти разряд АО имеет лог. "1", поэто му открывается элемент И 55 и активи 5 зируется работа дешифратора 41, при этом на одном из его выходов образуется сигнал лог."1", соответствующий обрабатываемой инструкции группы ВЕТВЬ, По заднему Фронту сигнала С 1 срабаты вает формирователь 60 и происходит , сброс блока 1.Выход на обработку инструкций группы ПЕРЕХОД осуществляется программно:РОР Н; РЕС; 00341 ЗМР 15 МОЧ ЕМ; МОЧКА; 00371 БОР МОЧ МЕ; МЧТ НОО; 00383 МР. МОЧ ЕЬ; РСНЬ;МОЧ АН;При обработке инструкции "Конец программы" в пошаговой секции блок 1 в соответствующую данной пошаговой , секции ячейку блока 3 записывает начальный адрес данной пошаговой секции. 25При обработке инструкции "Конец программы" в сканирующей секции блок 1 переходит на подпрограмму обмена инФормацией с каналами ввода-вывода.Далее процесс обработки РП повторяется.Формула изобретенияПрограммируемый контроллер по авт,св. Р 1453404, о т л и ч а ю щ и йс я тем, что, с целью повышения быстродействия, блок обработки логических Ю условий дополнительно содержит пятыйдешифратор шестой и седьмой триггеры, двадцать шестой и двадцать седьмой элементы И, девятый элемент ИЗБи элемент НЕ,гричем информационныйвход пятого дешифратора подключенк седьмому входу блока обработки логических условий, стробирующий входпятого дешифратора соединен с выходомдвадцать шестого элемента И, первыии второй входы которого соединены соответственно с седьмым выходом второго дешифратора и четвертым входомблока обработки логических условий,первый, второй и третий выходы пятогодешифратора соединены соответственнод входами установки в "0" и "1" шестого триггера и с первым входом первого элемента ИЛИ, выход шестого триггера соединен с первым входом двадцать седьмого элемента И, второй входкоторого соединен с выходом пятогоэлемента И, первым входом девятогоэлемента ИЛИ и входом установки в "0"седьмого триггера, синхровход которогосоединен с выходом элемента НЕ, входкоторого соединен с вторым выходомФормирователя импульсов, информационный вход которого соединен с выходомдевятого элемента ИЛИ, второй входкоторого соединен с выходом шестогоэлемента ИЛИ, первый и шестой входыкоторого соединены соответственно свыходами двадцать седьмого элементаИ и выходом седьмого триггера, информационный вход которого соединен свыходом второго триггера.жх вВо мЭОо фО М фВ В 1 ОЭ ХС Зи 1 ф Г23 24 1509887 Таблица 2 1 1 Цикл 1 Цикл 2 Цикл 3 Цикл 4 сходное 2100 21 С 8 РО Номерячейкиблока 3 Адрес пошаговой секции 2102 2102 21 С 8 21 С 8 2103 2105 21 С 8 21 С 83 150988 нака считывания ПВ, выход 22 признака записи ИК, выход 23 начала цикла БУМС ,двунаправленные выводы, подключенные к 8-разрядной шине 24 данных 00-07, адресные выходы 25 АО-А 15. вход5 готовности, связанный с инверсным выходом триггера 8, и вход сброса, связанный с выходом элемента ИЛИ 16. Адресные выходы АО-А 7 операционного бло-;10 ка 1 и выходы А 8-А 15 коммутатора 12 подключены к шине 26 адреса АО-А 15, которая связана с адресными входами блока 2 памяти рабочей программы, с адресными входами блока 3 памяти сос тояний, с адресными входами перво" го 4-1 и второго 4-2 блоков памяти управляющих программ, а также с адресными входами А 8-А 15 дешифратора 11. Кроме того, адресные выходы АО, 20 А 8-А 13 операционного блока 1 подключены к входам 27 блока 5, а адресные выходы А 8-А 15 - к первой группе информационных входов коммутатора 12, вторая группа информационных входов ко торого связана с входом Ьиксированного кода старших разрядов адреса, т,е. с цепями источника питания контроллера, при этом шестой вход этой группы подключен к "+" питания, а остальные - к входу логического 0 контроллера.Выход 21 ЗВ операционного блока 1 подключен к счетному входу счетчика 1 О, входам считывания блоков 2 и 3 и входу 21 блока 5. Выход 22 ИК операционного блока 1 подключен к входу записи блока 3 и к входу 22 блока 5, Выход 23 БУ 11 С операционного блока 1 подключен к входу 23 блока 5, 40Выход К Ьормирователя 7 сброса подключен к первому входу элемента ИЛИ 16 к входу 28 сброса блока 5, к входу 28 сброса счетчика 10 и к К - входу триггера 9, Второй вход элемента ИЛИ 16 подключен к выходу 29 сброса блока 5.Блок 5 имеет выход 30 переключения связанный с управляющим входом коммутатора 12, инверсный выход 31 стробирования (ЯТВ) связанный с Я-входом триггера 8, выход 32 готовности (ГТ),50 связанный с К-входом триггера 8, выход 33 выборки ввода-вывода (ВБР В/В) выход 34 вывода и выход 35 ввода.Блок 5 имеет двунаправленные вхо-, ды-выходы 36, связанные с шиной 24,55 и двунаправленные входы-выходы 37, связанные с шиной 38 ЮВО-ЭВ 7, При этом шина 24 связана с информацион 7 4ными выходами блоков 4-1 и 4-2, а шина 38 - с инЬормационными входами-выходами блока 3 и инЬормационными выходами блока 2.Первый и второй выходы двоичногосчетчика 10 связаны через элементИ 12 с Б-входом триггера 9 прямой выход которого связан с первым входомэлемента И 14, а инверсный выход - спервым входом элемента И 15. Вторыевходы элементов И 14 и 15 подключенык первому выходу дешиЬратора 11, второй выход которого связан с первымвходом элемента ИЛИ 17. Второй входэлемента ИЛИ 17 связан с выходом элемента И 15. Выход элемента И 14 подключен к,входу считывания 4-1, выход элементаИЛИ 17 - к входу считывания блока 4-2.Третий выход дешиЬратора 11 связан свходом выборкиблока 3, а четвертыйвыход - с входом выборки блока 2.Операционный блок 1 представляетсобой микропроцессор .и может быть выполнен на микросхеме КР 580 ИК 80 А, ко-,торая имеет двунаправленную 8-разрядную шину данных и 16-разрядную шинуадреса,Коммутатор 12 представляет собойдва шинных формирователя, например,на микросхемах типа К 589 ИР 12.Генератор 6 импульсов состоит изкварцевого генератора и делителя частоты и обеспечивает Ьормирование им-.пульсов РО частотой 5 МГц и длительностью 100 нс и импульсов Р 1 и Р 2частотой 1 МГц, сдвинутых относительно друг друга (фиг.З).Формирователь 7 сброса представля-.ет собой одновибратор, формирующийимпульс К при включении питания,Двоичный счетчик 10 имеет инверсныйсчетный вход, поэтому информация наего выходах появляется по заднемуфронту счетного импульса.ДешиЬратор 11 имеет четыре выхода,при этом на выходах образуются сигналы, когда на шине 26 появляются следующие адреса:0000 - ОРРР, - для первого выхода;1000 - 1 РРР,6 - для второго выхода;2000 - 20 РР 6 - для третьего выкода;2100 - ЗРРР,6 - для четвертого выхода.В блоке 2 памяти хранятся инструкции РП, последовательность которыхвоспроизводит ступенчатую электрическую схему управляемого объекта. Кж 1дая инструкция,занимает объем двабайта в блоке 2, Блок 2 представляет5 15098собой перепрограммируемое постоянное запоминающее устройство (ППЗУ)и содержит ряд микросхем памяти типаК 573 РФ 5. Рабочая программа в микрос- .хемы памяти записывается с помощьюотдельных средств, которые не входятв контроллер. Блок 2 адресуется операционным блоком 1, когда на шине 26формируется адрес 2100,а - ЗРРГ,6В блоке 3 памяти имеется область,в которой хранятся биты состоянийканалов вывода, другая область, вкоторой хранятся биты состояний каналов ввода, и третья область, котораяиспользуется операционным блоком 1для своих нужд, например для хранения результатов диагностики и тестирования контроллера. Блок 2 представляет собой оперативное запоминающее 20устройство и адресуется операционнымблоком 1, когда на шине 26 формируется адрес 2000,6 - 20 РР 1В блоках 4-1 и 4-2 памяти хранятся команды операционного блока 1, об разующие алгоритм работы контроллера. Каждый блок имеет объем 4 К байт. Блок 4-1 выбирается адресами 0000 - ОРРР, блок 4-2 - адресами 100016 - 1 РРР, , Данные блоки представляют 30 собой постоянные запоминающие устройства (ПЗУ).Блок 5 содержит регистр 39, дешифраторы 40-42, триггеры 43-45. элемент ИЛИ-НЕ 46, элементы ИЛИ 47-51, элемент И-НЕ 52, элементы И 53-58., формирователь 59 импульсов, одновибратор 60, элемент НЕ 61, триггеры 62-65, элемент И-НЕ 66, элементы И 67-78, эле. менты ИЛИ 79 и 80, узел 81 двунаправ ленной передачи данных, мультиплексор 82, сумматор 83 по модулю два, элементы И 84-89, элементы ИЛИ 90 и 91, дешефраторы 92 и 93, две группы из восьми элементов И-НЕ 94,-94 в и 95-95 . 45Информационные входы 96 связаны в блоке управления цепью РО (нулевым разрядом) с первым информационным входом дешифратора 41, цепью Ш - с первым информационным входом регистра 39 50 и с вторым информационным входом дешифратора 41, цепью Э 2 - с вторым инфомационным входом регистра 39 и с первым инверсным входом элемента И 53., цепями ДЗ- с другими инверсными 55 входами элемента И 53, цепями Юб и Д 7 - с прямыми входами элемента И 53. Кроме того, информационные входы 96 связаны цепями .00-37 с первыми 87 6входами соответствующих элементов И-НЕ 94-94 в.Входы 97 кода команды связаны цепью АО с первым входом элементна И 55, цепями А 8-А 10 - с информационными входами дешифратора 42, цепями А 11- А 13 - с информационными входами дешифратора 40. цепями А 8-А 10 - с информационными входами дешифраторов 92 и 93 и с управляющими входами мульти- плексора 82.Синхровход 98 ДВ связан с первыми входами элементов ИЛИ-НЕ 46, И 54, И 56;вторым входом элемента И 55 и первым синхровходом узла 81.Синхровход 99 ЬЖ связан с вторым входом элемента ИЛИ-НЕ 46 с первым входом элемента И 57.Синхровход 100 РО связан с тактовым входом формирователя 21. Синхровходы 101 ЯУИС и 102 Р 2 связаны соответственно с прямым и инверсным входами элемента И-НЕ 52. Вход 103 К установки связан с К- входом (входом установки в ноль) триггера 43 и К-входом регистра 39.Выход элемента ИЛИ-НЕ 46 связан с С-входом триггера 43, информационный вход которого связан с шиной нулевого потенциала, а Я-вход (вход установки в единицу) - с синхровходом регистра 39, с выходом элемента И-НЕ 52 и с синхровходом 104 БТВ, Выход триггера 43 связан со стробирующим входом дешифратора 40, выходы которого связаны цепью 105(-11- ) - с первыми входами элемента ИЛИ 49.и сумматора 83, цепью 106 (ф 6-) - с вторым входом элемента ИЛИ 49, цепью ( -0-) - с первыми входами элементов ИЛИ 50, И 84 и И 87. цепью 108 (-6-) с вторым входом элемента ИЛИ 50 и с первыми входами элементов И 86 и И 89, цепью 109 (-0-) - с третьим входом элемента ИЛИ 50 и с первым входом элемента И 85, цепью 110 (-ф) с четвертым входом элемента ИЛИ 50 и с первым входом элемента И 88, цепью 111 - с вторым входом элемента И 54 и с выходом разрешения обменом.Выход элемента И 54 связан со стробирующим входом дешефратора 42, первый и второй выходы которого связаны соответственно с Я - и К - входами триггера 44, третий выход связан цепью 112 с первым входом элемента ИЛИ 80. Выход триггера 44 связан с первым входом элемента И 58.Первый выход регистра 39 МО связан цепью 113 с вторым синхровходом узла 81, второй выход БТАСК - с третьим входом элемента И 55 Выход элемента И 53 связан с третьим информаци 5 онным входом дещифратора 41, стробирующий вход которого связан с выходом элемента И 55 и цепью 114 С 1 - с первыми входами элементов И 69 и 70. Вы уод элемента ИЛИ 49 связан с вторым входом элемента И 56 и с первым входом элемента ИЛИ 51Выход элемента ИЛИ 50 связан с вторыми входами элементов И 57 и ИЛИ 5 1. Выход элемента ИЛИ 51 связан с выходом 115 управления модификацией адреса, Первый выход дешифратора 41 связан с первым входом элемента ИЛИ 47, второй выход - с вторым входом элемента ИЛИ 47 и цепью 116, Начало ветви (НВТ) с первыми входами элементов И-НЕ 66, И 71-76 третий выход - с третьим входом элемента ИЛИ 47 и цепью 117 Конец ветвей" (КВТ) с первыми входами элементов И 77 и 78 . Выход элемента И 56 связан с вторым входом элемента И 58, с В.-входом триггера 45, с первым входом элемента ИЛИ 48 и цепью 118 С 2 - с первым входом элемента И 68, Выход элемента И 5730 связан с четвертым входом элемента ИЛИ 47 и цепью 119 С 4 - с первым входом элемента И 72, Выход элемента ИЛИ 47 связан с вторым входом элемента ИЛИ 48 и с инверсным входом одновибратора 60, выход которого связан с выходом 120 сброса. Выход элемента ИЛИ 48 связан с входом. запуска формирователя 59 частоты импульсов, первый выход которого связан цепью 121 ТЗ с вторыми входами элементов И 68 40 и 69, второй выход - цепью 122 Т 4 с вторыми входами элементов И 70 и 72 и через элемент НЕ 61 с С-входом триггера 45. Выход элемента И 58 связан с пятым входом элемента ИЛИ 47. шес.той вход которого связан с выходом триггера 45. Информационный вход триггера 45 связан цепью 123 с выходом триггера 62, с информационным входом триггера 64, с первым входом элемента ИЛИ 79, с вторыми входами элемен-тов И 84, 85, 88 и 89, а также с вторыми инверсными входами элементов И 86 и 87.Первый вход элемента И 67 связан 55 цепью 124 с выходом сумматора 83, второй вход - с выходом элемента И 68, а выход - с В -входом триггера 62.М Выход элемента И 69 связан с вторыми входами элементов И 71, 76 и 78.выход элемента И 70 связан с вторыми входами элементов И-НЕ 66, И 75и 77, выход элемента И-НЕ 66 связанс С-входом триггера 63, информационный вход которого связан с его инверсным выходом, с первым входом элемента И 73 и с третьим входом элементаИ 71. Прямой выход триггера 63связан с третьими входами элементовИ 75 и 76, а К-вход - с К-входомтриггера 64, первым К-входом триггера 65, первым Я-входом триггера 62 ивыходом элемента ИЛИ 80, второй ."вход которого связан с выходом элемента И 73, а второй вход последнего -с выходом элемента И 72.Выход элемента И 71 связан с С-входом триггера 64, выход которого связан с вторым входом элемента И 74, авыход последнего - с информационнымвходом триггера 62. Выход элементаИ 75 связан с С-входом триггера 62.Выход элемента И 76 связан с С-входом триггера 65, второй К-вход которого связан с выходом элемента И 77,информационный вход - с выходом элемента ИЛИ 79, а выход - с вторым входом элемента ИЛИ 79 и с третьим входом элемента И 78, при этом выходпоследнего связан с вторым Б-входомтриггера 62.Выходы элементов И 84 - 86 связаны через элемент ИЛИ 90 со стробирующим входом дешифратора 93, выходыэлементов И 87-89 связаны через элемент ИЛИ 91 со стробирующим входомдешифратора 92. Восемь инверсныхвыходов дешифратора 92 связаныс соответствующими вторыми входамигруппы элементов И-НЕ 94,-948, выходыкоторых связаны с соответствующимипервыми входами группы элементов И-НЕ95-958, вторые входы которых связаныс соответствующими инверсными выходами дешифратора 93, а выходы - с информационными входами узла 81. Информационные входы-выходы узла 81 связаныс информационными входами-выходами,125ХВО-ЗВ 7, а информационные выходы уз. -ла 81 связаны с информационными входами 96 ЛОи с информационными входами мультиплексора 82, выход которого связан с вторым входом сумматора 83,Кроме того, блок 5 содержит элементы И 126-128 и одновибраторы 129и 130, 1509887 10Операционный блок представлеяет собой микросхему КР 580 ИК 80 Л, котораяимеет двунаправленную 8-разрядную шину данных, 16-разрядную шину адреса.Коммутатор представляет собой двашинных формирователя, например, намикросхемах типа К 589 ИР 12,Синхроимпульсы 0 по цепи 100 обеспечивают работу блока 5, а именно образование на выходе формирователя 59двух импульсов ТЗ и Т 4 длительностьпо 100 нс(временная диаграмма работыформирователя 59, на фиг.2).Синхроимпульсы Р 1 и Р 2 обеспечивают синхронизацию работы операционного блока 1. Кроме того, синхроимпульсы 2 обеспечивают совместно с синхроимпульсами БУНС образование на выходе элемента И-НЕ 52 синхроимпульсов 20БТВ,(Синхроимпульсы ПВ по цепи 98 формируются блоком 1 при считывании информации с шины 24 Ю 0-07 в блок 1 иактивизируют работу узлов для выдачи информации в блок 1.Синхроимпульсы Ж по цепи 99 формируются блоком 1 при выдаче информации с блока 1 в шину 24 по цепи 106и активизируют работу узлов устройства. 30Синхроимпульсы БУМС по цепи 101формируются блоком 1 всякий раз, когда начинается машинный цикл обработки команды в блоке 1 (фиг.8). Синхроимпульсы БУМС обеспечивают синхронную35работу блока 5 с выполнением командв блоке 1.Сигнал И по цепи 103 формируетсяпри включении питания и .обеспечиваетустановку узлов контроллера в исходноесостояние.Сигнал сброса по цепи 120 образует.ся в блоке 5 по завершении обработкиинструкций ВХОД, ВЫХОД, ВЕТВЬ. Данный сигнал обеспечивает ускоренный 45переход блока 1 на обработку следующей инструкции рабочей программы(РП),минуя выход из обработки через подпрограмму перехода.На выходе 115 блока 5 образуетсясигнал управления модификаций адреса,обеспечивающий переключение входовкоммутатора 12, что позволяет блоку 1адресоваться к блоку памяти, еслисигнал имеет состояние лог "1", илиадресоваться к блоку 2 или 4 памяти,если сигнал имеет состояние лог."0".Синхроимпульсы БТВ на выходе 31блока 5 синхронизируют начало работы,а также процесс установки блока 1 н режим ожидания и выход из него.Контроллер работает следующим образом.После включения питания формирователь 7 формирует импульс Н. устанавливающий триггеры 43, 63-65, 9, счетчик 10, регистр 39 и блок 1 в состояние лог. 0, При этом в цепи 30 уста-, навливается сигнал лог, О,и коммутатор 12 находится в исходном состоянии, На выходе элемента И 56 лог."0", поэтому триггер 45 находится в состоянии лог."О". В цепи 32 лог."0", поэтому на инверсном выходе триггера 8 лог,1, чем обеспечивается разрешение работы блоку 1, Последний формирует на своих адресных выходах код 0000, Данный код передается по шине 26 в дешифратор 11, на первом выходе которого образуется сигнал лог."1". Данный сигнал проходит через открытый триггером 9 элемент И 15, элемент ШИ 17 на вход считывания блока 4-2 памяти. Вследствие этого из первой ячейки блока 4-2 считывается первый байт команды, который поступает по шине 24 в блок 1. Блок 1 также Формирует сигнал ЛВ, который по цепи 21 поступает на счетный вход счетчика 10. Далее блок 1 формирует адреса 0001, и 0002, и аналогичным образом считывает два следующих байта команды из блока 4-2. При этом после третьего импульса ЭВ на первом и втором выходах счетчика 10 образуется лог "1", благодаря чему на выходе элемента И 13 лог ."1" и триггер 9 устанавливается в состояние лог."1". Посредством этого элемент И 15 закрывается, а открывается элемент И 14.Первой командой, считанной в блок 1 иэ блока 4-2, является трехбайтовая команда ЗМР АДН(безусловный переход по адресу, указанному в команде), посредством которой блок 1 переходит на подпрограмму очистки блока 3 памяти состояний. В начале выполнения каждой команды блок 1 на своих информацион- ных выходах устанавливает код слова состояния блока 1 и формирует импульс БУИС в цепи 23. Под действием импульсов БУМС и Р 2 на выходе элемента И-НЕ 52 образуется БТВ, который посту- пате на,С-вход регистра 39 и в последний записываются два первых разряда кода слова состояния блока 1. Когда блок 1 для очистки ячеек блока 3 в шине 26 выставляет адрес 2000,- 20 РРа в шине 24 выставляет код 00 и формирует сигнал ИК в цепи 22, то на первом выходе регистра 39 сигнал ЧО(лог."1") и код 00 передается из ши-.ны 24 через входы 96 блока 5, группыэлементов И-НЕ 94 и 95 на информационные входы узла 81, Посредством сигналов Ю (лог."1") и ЛВ (лог."О") узел81 передает код 00 на входы-выходы 37ОЮО-ЭВ 7. Код 006 поступает через шину 38 в блок 3 и под действием сигнала ЧК по цепи 22 записывается в соответствующую ячейку.После очистки блока 3 памяти состо яний блок 1 переходит на подпрограммутестирования блока 2 памяти РП на несуществующие инструкции. При этомблок 1 в шину 26 выставляет адрес2100,6 - ЗРРР,б и формирует сигнал ДВв цепи 21, посредством чего с блока 2в шину 38 поступает байт считываемойинформации. Данный байт поступает навходы 125 блока 5, Посредством сигналов Ю (лог."0") и ПВ (лог."1") узел81 передает считанный байт с входов125 на свои выходы 36 ЛО-Ю . Такимобразом, данный байт поступает в шину 24 и далее в блок 1. При поступлении в блок 1 двухбайтовой инструкции РП она сравнивается с инструкцияМи, существующими в контроллере и хра 1нящимися в блоке 2 памяти,Далее блок 1 выполняет подпрограмму;обработки контрольной (тестовой) РП,а затем подпрограмму обмена информацией с каналами ввода-вывода, причемсначала осуществляется передача информации (в первом цикле обмена такой информацией являются коды 006 )из области состояний каналов вывода40блока 3 в каналы вывода контроллера,а затем прием информации с каналовввода контроллера и запись ее в область состояний каналов ввода блока 3.45Каналы ввода-вывода подключаютсяк шинам 26 и 24 соответственно своими адресными и информационными шинаПередача информации в каналы вывода осуществляется следующим образом,Блок 1 считывает из соответствующейобласти блока 3 первый байт состояний каналов вывода, затем на своихадресных шинах 25 выставляет адрес 55первых восьми каналов вывода, приэтом в шинах А 8-А 13 формируеткод 111111. Под действием сигнала БТВ триггер 43 устанавливается с состояние лог."1" и активизирует дешифратор 40. Посредством кода 111 в шинах А 11-А 13 на выходе 11", дешифратора 40 образуется сигнал лог, 1", тогда посредством кода 111 в шинахА 8-А 10 на выходе элемента И 126 образуется сигнал ВБР В/В (фиг.5), который активизирует работу каналов вывода и запускает одновибратор 129. Навыходе одновибратора 129 образуетсяимпульс."0", который обеспечивает запуск одновибратора 130 (Фиг.6).Такжеблок 1 на шине 24 выставляет код передаваемого байта состояний каналоввывода и формирует сигнал ИК вцепи 22. При срабатывании одновибратора 130 на его выходе образуетсясигнал ГТ (лог."1"). При этом элементИ 127 остается закрытым посредством.лог."0" с выхода одновибратора 129.А сигнал ГТ (лог."1") поступает нак-вход триггера 8, вследствие чеготриггер 8 устанавливается в состояние лог., "1" посредством сигналаБТВ, приходящего на его Б-входНа инверсном выходе триггера 8 образуется сигнал лог."0" и блок 1 устанавливается в режим ожидания. Такаязадержка работы блока 1 необходимадля устойчивой передачи информациипо шине 24 в удаленные от контроллера выводы, Процесс ожидания определяется временем работы одновибратора 130. Через интервал примерно 6 мксна выходе одновибратора 129 образуется лог. "1", посредством чего на1выходе элемента И 127 образуется им-пульс, поступающий на выход 34, тогда через интервал примерно 8 мкс смомента срабатывания одновибраторов129 и 130 на выходе одновибратора 130образуется лог."0", вследствие чегона инверсном выходе триггера 8 образуется сигнал лог."1", разрешающийпродолжение работы блоку 1. По заднему фронту сигнала 1 И через элементИЛИ-НЕ 46 триггер 43 устанавливаетсяв состояние лог. 0, закрывается дешифратор 40 и снимается сигнал ВБР В/В,Затем в каналы вывода передается следуюций байт информации и т.д,Прием информации с каналов вводаосуществляется аналогичным образом,при этом посредством сигнала ДВ навыходе элементта И 128 образуетсясигнал ВВОД.После завершения подпрограммы обмена информацией с каналами блок 1 переходит на обработку РП. РП строится из последовательности инструкций.В табл. 1 представлены основные инструкции, обрабатываемые контроллером. Обработка РП осуществляется двумя этапами. Для этого РП строится из двух частей: И секций программ независимых параллельных процессов, обрабатываемых пошагово, и сканирующей программы, обрабатываемой последовательно от первой инструкции до послед ней (фиг.9). Сначала осуществляется обработка инструкций в пошаговых сек.циях, а затем в сканирующей секции. При этом в каждой пошаговой секции инструкции образуют пошаговую программу, в которой переход на обработку последующей инструкции зависит от результата обработки инструкции группы ВХОД. Если результат обработки инструкции группы ВХОД не может обеспечить (фиг. 9, ячейка 1-3) изменение состояния элемента, соответствующего ин-; струкции группы ВЫХОД, расположенной дальше в пошаговой секции (с,фиг,9, ячейка 1-5), то нет необходимости обрабатывать последующие инструкции в данной пошаговой секции (ячейки 1-4 - 1-6), так как состояние исполнительных механизмов управляемого объекта, запрограммированное в данной пошаговой секции, не изменяется. В этом случае происходит запоминание адреса обрабатываемой инструкции в данной пошаговой секции (адрес ячейки 1-3 в цикле 1) и переход на обработку инструкций в последующей пошаговой секции. Затем может аналогичным образом произойти переход на обработку инст:рукций последующей пошаговой секции и т.д. до М-й пошаговой секции. При этом всякий раз запоминается адрес инструкции группы ВХОД, с которой произошел переход на обработку инструк" ций в последующую пошаговую секцию.После обработки инструкций в И-й пошаговой секции осуществляется переход 50 на обработку РП в сканирующей секции - всех инструкций подряд до инструкции "Конец программы". После этого осуществляется обмен информацией с каналами ввода-вывода и переход в пер вую пошаговую секцию на обработку той инструкции, адрес который был запомнен в предыдущий цикл обработки(в ячейку 1-3 в цикле 2). Таким обра-. зом, происходит проскакивание по всем пошаговым секциям, чем обеспечивается пропуск отдельных частей РП, обработка которых не изменила бы состояния управляемого объекта. При этом, если в какой-то пошаговой секции процесс обработки дойдет до инструкции "Конец программы" (ячейка Пв цикле 2), то в следующий цикл процесс обработки вернется на начало программы данной пошаговой секции (ячейка Пв цикле 31.Рйлее подробно процесс обработки РП осуществляется следующим. образом,Сначала блок 1 программно устанавливает блок 5 в исходное состояние (лог."1") и задает режим пошаговой обработки РП (фиг.10, блок 119). Для этого блок 5 в соответствии с програм. мой в блоке 4 формирует код 111010 на шинах 97 А 8-А 13, посредством чего на выходе 111 дешифратора 40 образуется сигнал лог."1" а с появлением сигнала ЗВ в цепи 98 открывается элемент И 54, активизируется дешифратор 42 и на его выходе 112 образуется сигнал лог,"1", при этом триггеры 63- 65 устанавливаются в состояние лог."О", а триггер 62 - в состояние лог; "1". По завершении сигнала ЯВ на выходе элемента ИЛИ-НЕ 46 образуется сигнал лог." 1", чем обеспечивается установка триггера 43 в состояние лог."0" и блокировка дешираторов 40 и 42.3После. этого блок 1 программно на шине 97 формирует код 111001 , вследствие чего на втором выходе дешифратора 42 образуется сигнал лог."1" и триггер 44 устанавливается в состояние лог."0". Происходит установка блока 5 в режим пошаговой обработки РП, При этом элемент И 58 оказывается закрытым. Далее блок 1 программно в соответствующую область блока 3 памяти записывает начальные адреса каждой пошаговой секции (фиг.10), а затем переписывает начальный адрес первой пошаго-. вой секции из блока 3 в свой стековый регистр. В самом начале обработки РП р стековый регистр записывается код 2100, соответствующий начальному адресу РП в блоке 2 памяти. Затем по мере обработки инструкций в пошаговых секциях в соответствующих пошаговым секциям ячейках блока 3 памяти изменяются коды адресов.В табл. 2 приведено изменение адресов четырех пошаговых секций объемом по 100 инструкций каждая при обработке инструкций в соответствии с фиг, 9.Обработка инструкций РП занимает разное время в зависимости от группы инструкций.Инструкция группы ВХОД обрабатывается за две команды: РОР Н (считывание инструкций по адресу, указанно" му .стековым регистром, и загрузка ее во внутренние Н, 1-регистры блока 1; МОЧ ЕМ (считывание байта из блока 3 памяти по адресу, указанному в Ь - регистре, и загрузка байта во внутрен-. ний А-регистр блока 1), если результат обработки может обеспечить изменение состояния элемента группы ВЫХОД, расположенного дальше в пошаговой секции. Команда РОР Н занимает три первых байта в ячейках блока 4-1 памяти. Считываемая из блока 2 памяти инструкция группы ВХОД поступает через блок 5 в блок 1. При выполнении команды МО ЕМ блок 1 устанавливает на своих адресных выходах код данной инструкции с Н,1-регистров и Формирует сигнал ПВ. Посредством кода на шине 97 А 11-А 15 в блоке 1 осуществляется дешифрация кода инструкции, при этом на выходе 105или 106 дешифратора 42 образуется сигнал лог,"1", благодаря чему на выходе 3511 11ИЛИ 5 1 образуется сигнал ло г, 1 и , таким образом , коммутатор 1 2 отключает от шины 2 6 адресные выходы А 8- А 1 5 блока 1 и подключ ает к шин ам А 8- ао А 15 первую группу своих входов. Вследствие этого происходит модификация адреса и в шину 26 поступает код 2011 И,6, где 11 Б - код в шинах АО-А 7, соответствующий адресу байта в блоке 3 памя 45 ти состояний. Тогда происходит считывание из блока 3 байта, в котором находится бит состояния канала ввода, указанный в данной инструкции РП.Считанный байт поступает через блок 5 в блок 1, Так как на адресных входах 50 97 А 8-А 10 блока 5 установлен код, со-ответствующий адресу бита в считанном из блока 3 байте, то в блоке 5 происходит анализ состояния данного бита, т.е. анализ состояния канала ввода, и 55 в зависимости от функции инструкции группы ВХОД производится соответствующая обработка инструкции и запоминание результата обработки, при этом необходимая информация образуется на выходе сумматора 83 по модулю два, а результат запоминается в триггере 62 (в данном случае триггер 62 будет в состоянии лог,"1"), При обработке инструкции группы ВХОД образуются .сигналы С 2, ТЗ и Т 4 (фиг,1), которые поступают в блок 5. По завершении обработки инструкции по заднему Фронту импульса Т 4 устанавливается в состояние лог."1" триггер 45, на его выходе образуется сигнал лог."1", благодаря чему срабатывает формирователь 60 и формируется импульс сброса блока 1. При этом блок 1 устанавливается в состояние лог,"0", затем устанавливает на своих адресных выходах код 00006 и происходит обращение к первым ячейкам блока 4-1, в которых записана команда РОР Н, которая обуславливает считывание следующей инструкции РП. Триггер 45 устанавливается в состояние лог. 0" по Р. - входу.Если результат обработки инструкции группы ВХОД не может обеспечить изменение состояние соответствующего элемента группы ВЫХОД, то в блоке 5 не произойдет Формирование импульса сброса на выходе 120, так как разультат обработки инструкции обеспечил установку триггера 62 в состояние лог,"0" и триггер 45 не установится в состояние лог."1" ввиду лог."0" на его информационном входе. Тогда блок 1 считывает из блока 4-1 памятиследующие команды:МОЭМЕ - запись байта в блок 3 памяти состояний по адресу, указанному в Ь-регистре;МОЧЕЬ - запись содержимого Ь-регистра в Е-регистр;МОРАН - запись содержимого Н-регистра в А-регистр;РЬС - сдвиг влево на один разряд; МОЧЬА - запись содержимого А-регистрав Ь-регистр;МЧТ НОО - запись нулей в Н-регистр; РСНЬ в . загрузка программного счетчика содержимым Н,Ь-регистров; 0034 ЛР - безусловный переход на обработку инструкции "Конец программы";00371 БОР - нет операции; 0038 1 ЛР - безусловный переход на выход из тестовой программы;00901 Л МР - безусловный переход на подпрограмму выхода из пошаговой секции для инструкции 4- ХХХО;10093 Д, Г 10 Р;100941 МР - то же, для инструкций 11 ХХХ 1 и 11- ХХХ 2;Г 00973 МОР;10098 1 ЛЧР - то же, для инструкцийЧГХХХЗ и -И- ХХХ 4;009 В Г 10 Р;009 СЗЛР - то же, для инструкций Ч 1 ХХХ 5 и -И- ХХХ 6;009 Р 3 НОР;ООА 01 Л 1 Р - тоже, для инструкций ЧХХХ 7 +1- ХХХО;100 А 31 Г 10 Р;100 А 41.1 Г 1 Р - то же, для инструкций фХХХ 1 и ф ХХХ 2;ООА 73 Г 10 Р;100 А 81 Л 1 Р - то же, для инструкций +ХХХЗ и -34 ХХХ 4;ГООАВ".1 Г 1 ОР;ООАС 3 ЛМР - то же, для инструкций -фХХХ 5 и + ХХХ 6;ООАР Г 10 Р;ООВО),ТИР - то же, для инструкции +ХХХ 7,где вданы адреса блка 4-2,ХХХ - адрес байта в блоке 3 памятисостояний.Выполнение всех этих команд не изменяет состояния блока 5. При переходе на команду ЛМР, которая находитсяв ячейках блока 4-1 по адресам0090 - ООВО блок 1 переходит наподпрограмму запоминания адреса данной инструкции группы ВХОД, что осуществляется записью адреса в соответствующую ячейку блока 3 памяти (табл.2).Затем блок 1 программно устанавливает блок 5 в исходное .состояние ианализирует, является ли данная пошаговая секция последней в РП. Еслиданная пошаговая секция не являетсяпоследней, то блок 1 считывает в свой.стековый регистр из соответствующейячейки блока 3 памяти адрес инструкцииследующей пошаговой секции, который онзапомнил в предыдущий цикл обработки.Если обрабатываемая пошаговая секция является последней в РП, то блок1 программно устанавливает блок 1 врежим сканирующей обработки. рабочейпрограммы и.записывает в свой стековый регистр адрес первой инструкциисканирующей программы, Установка бло -ка 1 в режим сканирующей обработки РПосуществляется посредством кода1111000, Ьормируемого блоком 1 на ши,нах 97 А 8-А 13, посредством которогоиа первом выходе дешийратора 42 об на выходе элемента И 57 Формируется сигнал С 4, также образуются импульсы ТЗ .и 50Т 4, а по заднему фронту сигнала С 4 срабатывает формирователь 60 и происходит сброс блокаОбработка инструкций группы ВЕТВЬосуществляется за одну команду РОР Н.При выполнении команды РОР Н в разряде 32 слова состояния блока 1 лог."1",поэтому с выхода регистра 39 на входэлемента И 55 поступит сигнал ЯТАСК 5 10 15 20 25 30 35 40 45 разуется сигнал лог. " 1", устанавливающий триггер 44 в состояние лог."1", при этом открывается элемент И 58. В, сканирующей программе обработки инструкций группы ВХОД осуществляется всегда за две команды РОР Н и МОЧЕМ.Обработка инструкций группы ВЫХОД осуществляется за три команды РОР Н, Г 10 ЧЕМ и Г 1017 Г 1 Е как в пошаговых, так и в сканирующей программах. Аналогичным образом, из блока 2 памяти РП считывается инструкция, из блока 3 памяти состояний считывается байт, содержащий.бит состояния канала вывода, соответствующего инструкции. А далее при выполнении команды Г 107 МЕ ранее считанный блоком 1 байт переписывается через блок 5 обратно в блок 3. При этом в зависимости от результата, накопленного в блоке 5 при обработке предшествующих инструкций данной логической цепи, происходит при необходимости изменение данного бита (установка его в состояние лог."1" или в лог."0) в байте, пересыпаемого через блок 5. При этом блок 1 Формирует сигнал 1 И в цепи 22, Посредством сигнала лог."1" на одном из выходов 107-110 дешиАратора 40 и сигнала результата с выхода 123 триггера 62 появляется сигнал лог. 1" на выходе элемента ИПИ 90 (в случае установки бита в состояние лог."1") или на выходе элемента ИПИ 91 (в случае установки бита в состояние лог, 0) . Данный сигнал лог."1" активизирует работу одного из дешифраторов 92 или 93, Когда передаваемый из блока 1 в блок 3 байт состояния каналов вывода поступает с шины 96 в шину 125 через группы элементов И-НЕ 94 и 95, то посредством работы дешир.тора 93 происходит установка необходимого бита в состояние лог."1" или посредством работы дешиАратора 92 происходит установкаданного бита в состояние лог."0",При обработке инструкции группы ВЫХОД на
СмотретьЗаявка
3833931, 02.01.1985
ПРЕДПРИЯТИЕ ПЯ А-1477
СКЛЕМА МИХАИЛ ВАСИЛЬЕВИЧ, ВИТКОВСКИЙ ИГОРЬ АЛЕКСАНДРОВИЧ, МАЗАНИК ВИКТОР ПЕТРОВИЧ, СЕНЮК СЕРГЕЙ ВАСИЛЬЕВИЧ, ШПАКОВСКИЙ ВАЛЕНТИН МИХАЙЛОВИЧ, БАЗЫЛЕВ НИКОЛАЙ МИХАЙЛОВИЧ
МПК / Метки
МПК: G06F 15/00, G06F 9/00
Метки: контроллер, программируемый
Опубликовано: 23.09.1989
Код ссылки
<a href="https://patents.su/16-1509887-programmiruemyjj-kontroller.html" target="_blank" rel="follow" title="База патентов СССР">Программируемый контроллер</a>
Предыдущий патент: Устройство умножения частоты
Следующий патент: Устройство для приоритетного распределения заданий
Случайный патент: Способ регулирования роторного аэратора