Устройство для построения программируемых цифровых микропроцессорных систем
DEVICE FOR CONSTRUCTING PROGRAMMABLE DIGITAL MICROPROCESSOR SYSTEMS

Предлагаемое устройство служит для построения программируемых контроллеров, систем логико-программного управления и регулирования технологическими объектами в различных отраслях производства, на транспорте, а также отдельными машинами и аппаратами и для создании диагностических и противоаварийных комплексов, способных одновременно проводить логический анализ многоразрядных и одноразрядных дискретных сигналов, поступающих от соответствующих датчиков, с последующим принятием оптимальных управляющих решений, например, в электрораспределительных системах, машинах и аппаратах. Устройство способно решать задачи, используя исчисления высказываний и предикатов и эффективно реализовывать конечные автоматы последовательно по тактам.
Известно устройство, содержащее входной блок, принимающий сигналы от датчиков и формирующий определенный код на своем выходе, выходной блок для хранения полученных результатов, поступающих из многоканального операционного и коммутационно-вычислительного блоков, программный блок, где хранится программа работы устройства, блок оперативной памяти для хранения промежуточных результатов вычислений, блок синхронизации, логические каналы с функционально изменяемыми триггерами, блок ускоренного переноса (1).
Недостатком данного устройства является ограниченные функциональные возможности из-за невозможности вычисления нелинейных функций в коммутационно-вычислительном блоке, относительно низкое быстродействие, большое количество ячеек памяти в программном блоке и блоке оперативной памяти, большой объем программирования из-за большого количества тактов и промежуточных результатов при вычислении логических функций, содержащих одноразрядные и многоразрядные переменные.
Наиболее близки является устройство содержащее входной блок, принимающий одноразрядные и много разрядные двоичные сигналы из объекта управления и передающий эти сигналы для преобразования в коммутационно-вычислительный блок и в многоканальный операционный блок, блок оперативной памяти, где хранятся промежуточные вычисления, блок ускоренного переноса при арифметических операциях, модуль преобразования импульсов, следующих последовательно в параллельный двоичный код, программный блок, управляющий работой всех блоков и модулей, блок синхронизации, обеспечивающий динамическую устойчивость работы устройства (2).
Недостатком этого устройства является отсутствие возможности реализации нелинейных алгоритмов путем «перескока» при выполнении программы, что иногда необходимо, чтобы сократить время реализации программы и соответственно уменьшить время запаздывания между появлением сигналов с датчиков объекта управления и действием регуляторов и исполнительных механизмов объекта управления до допустимого значения, еще одним недостатком данного устройства - это невозможность коммутационно-вычислительным блоком, независимо от работы многоканального операционного блока, вычислять нелинейные алгоритмы, что сужает функциональные возможности устройства и его быстродействии при вычислении нелинейных алгоритмов
Ставится задача создать устройство с расширенными функциональными возможностями и повышенным быстродействием.
0
0
0
Для решения этой задачи в устройство для построения программируемых цифровых микропроцессорных систем, содержащее в себе входной блок, принимающий дискретные сигналы от датчиков и формирующий определенный двоичный код на своем выходе, выходной блок для записи значений кодов, поступающих из многоканального операционного и коммутационно- вычислительного блоков в его ячейки памяти и передачи их, через цифроаналоговые преобразователи на электронные устройства и электроприводные механизмы, программный блок, связанный определенными выходами с модулем распределения команд МРК, блок оперативной памяти, блок синхронизации и коммутационно-вычислительный блок, состоящий из элемента И-ИЛИ, элемента и второго элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, восьми элементов И, двух счетных триггеров, дешифратора, подключенного тремя входами к определенным выходам модуля МРК, первые входы двух первых И элемента И-ИЛИ соединены с третьим и четвертым выходами дешифратора, а вторые входы подключены к выходу входного блока, соединенного первой и второй группами входов с группой информационных выходов объекта управления и с группой адресных выходов программного блока, а так же к выходу блока оперативной памяти, выход элемента И-ИЛИ подключен к первому входу элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, второй вход которого соединен с определенным выходом модуля МРК, выход элемента ИСКЛЮЧАЮЩЕЕ ИЛИ связан с входом третьего элемента И, соединенного другими входами с выходами d` и S, выходом блока синхронизации, входы четвертого элемента И подключены к выходу модуля МРК и к соответствующему выходу блока синхронизации, а выход связан с входом установки счетного триггера в «0», выход второго элемента ИСКЛЮЧАЮЩЕЕ ИЛИ связан с информационными входами выходного блока и блока оперативной памяти, первые входы первого и второго элементов И подключены к первому и второму выходам дешифратора, их вторые входы объединены и связаны с выходами блока синхронизации, а выходы соединены с входами выходного блока и блока оперативной памяти для управления записью информации, многоканальный операционный блок, содержащий управляемый элемент, второй, четвертый, пятый, шестой, с седьмого по двенадцатый элементы И, первый, с третьего по шестой и восьмой элементы ИЛИ, первый и второй дешифраторы, соединенные своими входами с соответствующими выходами модуля МРК, управляемую ячейку памяти, управляемый триггер, электронный выключатель, элемент НЕ, элемент и первый элемент ИСКЛЮЧАЮЩЕЕ ИЛИ и «n» параллельно работающих логических каналов, имеющих аналогичную структуру и каждый из которых содержит элемент ИСКЛЮЧАЮЩЕЕ ИЛИ, три элемента И, элемент ИЛИ, два счетных триггера, модули сдвига разрядов, при этом в каждом логическом канале многоканального операционного блока выход логического элемента ИСКЛЮЧАЮЩЕЕ ИЛИ связан с первым входом элемента ИЛИ, второй вход которого соединен с выходом второго элемента И, выход элемента ИЛИ соединен с первым входом третьего элемента И, выход последнего связан со счетным входом первого счетного триггера, выход которого подключен к счетному входу второго счетного триггера, при этом в многоканальном операционном блоке выход первого элемента ИЛИ связан с вторыми входами элементов ИСКЛЮЧАЮЩЕЕ ИЛИ логических каналов, первый и второй входы первого элемента ИЛИ связаны соответственно с выходами второго дешифратора и седьмого элементов И, первый и второй входы второго элемента И связаны с одним из выходов блока синхронизации и с определенным выходом первого дешифратора, а выход соединен с управляющим входом управляемого триггера, входы элемента ИЛИ-НЕ связаны с соответствующим выходом десятого элемента И, выходом первого дешифратора и с выходом третьего элемента ИЛИ, первый вход седьмого элемента И подключен к соответствующему выходу второго дешифратора, выход элемента ИЛИ-НЕ связан с третьим входом модуля ЛМ, вторые входы шестого и седьмого элементов И связаны соответственно с прямым и инверсным выходами управляемой ячейки памяти, информационный вход которой соединен с выходом второго элемента ИЛИ дискретного модуля ДМ, содержащего первый и второй логические элементы И, элемент НЕ, третий логический элемент И и элемент ИЛИ, причем входы третьего логического элемента И соединены с выходами первых счетных триггеров предпоследнего и последнего каналов, входы второго элемента И соединены с выходом третьего логического элемента И и с соответствующим выходом модуля МРК, также подключенного к входу элемента НЕ, выход последнего соединен с входом первого элемента И, другой вход которого связан с одним из выходов блока БУП, а выход подключен к первому входу элемента ИЛИ, второй вход которого соединен с выходом второго элемента И, управляющий вход управляемой ячейки памяти связан с выходом четвертого элемента И, в многоканальном операционном блоке информационный вход управляемого триггера связан с прямым выходом управляемой ячейки памяти, инверсный выход управляемого триггера подключен через одну из общих шин системы связи к выходному блоку, три управляющих входа управляемого элемента соединены с тремя командными шинами модуля МРК и две из них связаны так же с первым входом пятого элемента ИЛИ и с соответствующим входом первого элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, выход пятого элемента ИЛИ подключен к первому входу девятого элемента И, в коммутационно-вычислительном блоке первые входы третьего и четвертого элементов И, элемента И-ИЛИ подключены к соответствующим двум выходам дешифратора, а вторые входы связаны с выходом L1 управляемого элемента многоканального операционного блока и с выходам L2 дискретного модуля ДМ, входы первого и второго дешифраторов многоканального операционного блока подключены к соответствующим командным шинам модуля МРК, определенные выходы блока БУП соединены с вторыми входами второго элемента И всех логических каналов, кроме первого, второй вход второго элемента И первого логического канала подключен вместе с соответствующим входом блока БУП к выходу первого элемента ИСКЛЮЧАЮЩЕЕ ИЛИ многоканального операционного блока, где второй вход девятого элемента И связан с определенным выходом первого дешифратора, входы восьмого элемента И соединены с выходами блока синхронизации и шестого элемента ИЛИ, а выход связан с первым входом четвертого элемента ИЛИ, выход которого подключен к входам сброса в «n» вторых счетных триггеров всех логических каналов, входы пятого элемента И соединены с определенным выходом модуля МРК, выходом d` и выходом блока синхронизации, а выход связан с вторым входом четвертого элемента ИЛИ и с входами сброса в «0» первых счетных триггеров всех логических каналов, систему связи, содержащую общие шины, электронные ключа, дешифратор формирующий управляющие сигналы на своих выходах, поступающие на соответствующие входы блока оперативной памяти, выходного блока и двух электронных ключей, логический модуль ЛМ структура которого и его функционирование определяется логическими функциями С```= (C24+C22)•b`•t1, C`=C24•t1• b`, , C=C24•C22•t1•b`, где С24 и С22 являются входами логического модуля ЛМ и связаны с соответствующими выходами модуля МРК, t1 поступает с выхода элемента НЕ блока 7, b` подключен к выходу шестого элемента И коммутационно-вычислительного блока, а С`, С``, С, С``` это выходы логического модуля ЛМ и соединены выходом С``` с первым входом шестого элемента ИЛИ многоканального операционного блока, а другими выходами с входами соответствующих модулей сдвига разрядов МСР1, МСР2 и МСР3 в каждом логическом канале, причем модуль сдвига разрядов МСР1 находится во всех логических каналах, кроме первого и последнего и реализует логические функции У`1=(b`⊕ b``)•С``, У`2 = (b`⊕ b``)•С`, где У`1 и У`2 являются выходами модуля МСР1 и связаны с третьим и четвертым входами элемента ИЛИ данного и последующего логических каналов, переменные b`, b``, С`, С`` являются входными сигналами для МСР1, причем b`, b`` поступают с выходов первых счетных триггеров данного и последующего логических каналов, С` и С`` поступают с выходов логического модуля ЛМ, модуль МСР2 в первом логическом канале реализует логические функции , У2=(b1 ⊕ b2) • С`` и У3 = (b1⊕ b2)•С`, где У1, У2 и У3 служат выходами модуля МСР2 и связаны с третьим и четвертым входами элемента ИЛИ первого логического канала и с четвертым входом первого элемента ИЛИ второго логического канала, b1, b2, bn, С`, С`, С являются входами модуля МСР2 и соединены с выходами первых счетных триггеров первого, второго, последнего логических каналов и тремя выходами логического модуля ЛМ, модуль МСР3 вычисляет логическую функцию , где сигнал У1``` поступает с выхода модуля МСР3 на третий вход первого элемента ИЛИ последнего логического канала, сигналы b1, bn, С``, С15 поступают на входы модуля МСР3 соответственно с выходов первых счетных триггеров первого и последнего логических каналов, с выхода логического модуля ЛМ и определенного выхода модуля МРК, в многоканальном операционном блоке, где первый вход четвертого элемента И связан с определенным выходом модуля МРК, второй вход соединен с соответствующим выходом блока синхронизации, третий вход подключен к выходу элемента ИЛИ-НЕ, а четвертый вход связан с выходом шестого элемента И коммутационно-вычислительного блока, управляющий вход электронного выключателя связан с определенным выходом первого дешифратора, выход девятого элемента И соединен с первыми входами первых элементов И в каждом логическом канале, вторые входы первых элементов И каждого логического канала, вместе с информационными выходами электронного выключателя многоканального операционного блока связаны с общими шинами системы связи, а выходы первых элементов И в каждом логическом канале соединены с первыми входами элементов ИСКЛЮЧАЮЩЕЕ ИЛИ, общие шины также подключены к выходам первого и второго электронных ключей системы связи и к соответствующим входам блока оперативной памяти и выходного блока, входы первого и второго электронных ключей связаны с определенными выходами входного блока и блока оперативной памяти, управляющие входы первого и второго электронных ключей, блока оперативной памяти и выходного блока соединены с соответствующими выходами дешифратора системы связи, три входа которого связаны с тремя соответствующими выходами a1, a2 и а3 программного блока, второй вход элемента И счетчика импульсов связан с соответствующим выходом блока синхронизации, а выход подключен к управляющему входу электронного ключа счетчика импульсов блока программ, прямые выходы всех первых счетных триггеров связаны с определенными входами модулей сдвига разрядов МСР1, МСР2 и МСР3 в соответствующих логических каналах, восьмой элемент ИЛИ первым и вторым входами связан с вторым и третьим выходами второго дешифратора, а выходом соединен с первым входом шестого элемента И, входы элемента ИСКЛЮЧАЮЩЕЕ ИЛИ подключены к определенной командной шине модуля МРК и к первой Т1 шине из числа общих шин Т1…Tn системы связи, а выход связан с вторым входом пятого элемента ИЛИ, имеется «n» одинаковых схемных фрагментов Ф1…Фn по числу логических каналов, каждый схемный фрагмент связан с соответствующим логическим каналом и содержит логические элементы ИЛИ и ИСКЛЮЧАЮЩЕЕ ИЛИ, причем второй и третий входы элемента ИЛИ связаны с выходом второго элемента И соответствующего логического канала и с соответствующим выходом модуля распределения команд МРК, а выход соединен с первым входом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, второй вход которого подключен к выходу первого счетного триггера соответствующего логического канала, а выходы элементов ИСКЛЮЧАЮЩЕЕ ИЛИ являются выходами соответствующих схемных фрагментов и соединены с информационными входами электронного выключателя и управляемого элемента многоканального операционного блока, где первый и второй входы первого элемента ИСКЛЮЧАЮЩЕЕ ИЛИ соединены соответственно с выходом шестого элемента И и с определенным выходом модуля МРК, третий управляющий вход управляемого элемента связан с определенным выходом модуля МРК и с соответствующими входами второго элемента И и элемента НЕ дискретного модуля ДМ, коммутационно - вычислительном блок содержит элемент И-НЕ, второй счетный триггер, пятый, шестой, седьмой, восьмой и девятый элементы И, элемент ИЛИ и первый по третий элементы ИЛИ, входы девятого элемента И связаны с выходом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ и с выходом модуля МРК, а выход подключен к входу первого элемента ИЛИ, счетный вход второго счетного триггера соединен с выходом восьмого элемента И, а вход сброса в нуль связан с выходом седьмого элемента И, входы пятого элемента И подключены к выходам дешифратора и второго элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, входы элемента ИЛИ соединены с выходом модуля МРК и с шиной Ст передачи аварийного сигнала, а выход подключен к блокировочному входу дешифратора и к соответствующим входам третьего и двенадцатого элементов И, входы шестого элемента И связаны с выходом второго счетного триггера и с выходом элемента ИЛИ, а выход d` соединен с модулем ЛМ, с входом третьего элемента И всех логических каналов, с соответствующими входами четвертого, пятого и десятого элементов И, с блокировочными входами первого и второго дешифраторов многоканального операционного блока, а также с блокировочным входом дешифратора системы связи устройства, входы восьмого элемента И подключены к выходу блока синхронизации и к выходу первого элемента ИЛИ, входы которого соединены с определенным выходом модуля МРК и с выходом пятого элемента И, выход элемента И-НЕ подключен к третьему входу третьего элемента И, первый вход элемента И-НЕ соединен с соответствующим выходом модуля МРК, два входа первого элемента ИЛИ-НЕ связаны с соответствующим выходом модуля МРК и с выходом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, а выход подключен к входу девятого элемента многоканального операционного блока, в многоканальном операционном блоке первые входы одиннадцатого и двенадцатого элементов И подключены к выходам модуля МРК, а вторые входы соединены с выходами первых счетных триггеров соответственно первого и последнего логических каналов, а выходы через третий элемент ИЛИ подключены к входу элемента ИЛИ-НЕ, второй вход десятого элемента И связан с выходом модуля МРК, а выход соединен с вторым входом шестого элемента ИЛИ, с определенным входом элемента ИЛИ-НЕ и с первыми входами вторых элементов И всех логических каналов, в каждом из них логический элемент И-НЕ своим первым входом подключен к выходу модуля МРК, а выходом соединенного с третьим входом третьего элемента И в каждом логическом канале, блок ускоренного переноса БУП имеет структуру определяемую логическими функциями (1А), модуль преобразования информации МПИ, содержащий «n» модулей памяти МП, каждый из которых имеет счетный триггер, элемент И, элемент ИСКЛЮЧАЮЩЕЕ ИЛИ, причем в первом модуле памяти имеется еще и второй элемент И, входы сброса в «0» счетных триггеров всех модулей памяти связаны с выходом второго элемента И первого модуля памяти, входы второго элемента И соединены с определенными выходами первого дешифратора многоканального операционного блока и блока синхронизации, счетные входы счетных триггеров всех модулей памяти подключены к выходу элемента И соответствующего модуля памяти, три входа последнего связаны с соответствующими выходами блока синхронизации, первого дешифратора многоканального операционного блока и элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, первый и второй входы которого для всех модулей памяти кроме первого соединены соответственно с выходами счетных триггеров данного модуля памяти и предыдущего, а для первого модуля памяти второй вход элемента ИСКЛЮЧАЮЩЕЕ ИЛИ является входам модуля МПИ и связан с выходом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ коммутационно-вычислительного блока, третий электронный ключ, информационные входы которого связаны с выходами счетных триггеров всех модулей МП, а выходы подключены к общим шинам системы связи, управляющий вход третьего электронного ключа соединен с соответствующим выходом модуля МРК, в каждый логический канал многоканального операционного блока, связь между вторым входом элемента И-НЕ и выходом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ соответствующего схемного фрагмента Ф из набора схемных фрагментов Ф1…Фn многоканального операционного блока, в каждом схемном фрагменте Ф, элемент И входы которого подключены к соответствующему выходу модуля МРК и к выходу первого элемента ИЛИ многоканального операционного блока, а выход связан с первым входом элемента ИЛИ каждого логического фрагмента, коммутационно- вычислительный блок имеет третий триггер, десятый, одиннадцатый и двенадцатый элементы И, второй и третий элементы ИЛИ, элемент НЕ и второй элемент НЕ, причем выход второго элемента ИСКЛЮЧАЮЩЕЕ ИЛИ связан с соответствующими входами элемента И-НЕ и одиннадцатого элемента И, а через элемент НЕ с определенным входом десятого элемента И, другие входы десятого и одиннадцатого элементов И подключены к выходам d`` и S элемента ИЛИ и четвертого триггера, к прямому и инверсному выходам третьего триггера, к выходам модуля МРК и выходу блока синхронизации, а выходы связаны соответственно с входами установки в «0», через третий элемент ИЛИ, и непосредственно в «1» третьего триггера, инверсный выход третьего триггера соединен с четвертым входом третьего элемента И, входы двенадцатого элемента И подключены к определенному выходу модуля МРК, к прямому выходу третьего триггера и к выходу блока синхронизации, а выход связан с первым входом второго элемента ИЛИ, второй вход которого соединен с выходом третьего элемента И, а выход подключен к счетному входу счетного триггера, первый и второй входы третьего элемента ИЛИ связаны с выходами четвертого и десятого элементов И, а выход соединен с входом сброса в «0» третьего триггера, введены первый и второй блоки памяти БП и ППЗУ с соответствующими связями и в счетчик импульсов программного блока введены первый и второй элементы И, элементы НЕ и ИЛИ с новыми связями.
R
Устройство состоит из изображенных на фиг. 1 входного блока 1, одна группа входов которого подключена к дискретным датчикам и источникам двоичного кода (на схеме не показаны) X1…X, а вторая группа входов соединена с адресными шинами С`1…C`j, связанного выходом i с входом коммутационно-вычислительным блока 2, подключенного к блоку оперативной памяти 3, выходному блоку 4, программному блоку 5, блоку синхронизации 6, многоканальному операционному блоку 7, содержащему «n» логических каналов, в многоканальном операционном блоке МОБ 7 первый и второй дешифраторы 8 и 9, второй элемент И 12, связанный первым входом с определенным выходом блока синхронизации,, первый элемента ИЛИ 15, выход которого связан с соответствующими входами всех логических каналов, управляемый элемент 16, управляемую ячейку памяти 17, шестой элемент И 18, седьмой элемент И 19, четвертый элемент И 20, пятый элемент И 21, четвертый элемент ИЛИ 22, девятый, десятый, одиннадцатый и двенадцатый элементы И 73, И 76, И135 и И75, третий и шестой элементы ИЛИИ и ИЛИ 74, восьмой элемент И 72, соединенный одним входом с выходом Z элемента И63 блока 6, электронный выключатель 77, элемент и первый элемент ИСКЛЮЧАЮЩЕЕ ИЛИ 79 и 103, восьмой элемент ИЛИ 101, управляемый триггер 102, пятый элемент ИЛИ 107, элемент ИЛИ-НЕ 112 и изображенной на фиг. 10 системы связи, имеющей информационные общие шины 80, дешифратор 81 своими входами соединенный с выходами a1, а2, а3…an ПЗУ60А программного блока 5, а выходами N1 и N2 подключенный к управляющим входам первого 82 и второго 83 электронных ключей, а также выходами N3 и N4 к двум соответствующим входам блока оперативно памяти и выходного блока, также состоит из программного блока 5, модуля распределения команд МРК, логического модуля ЛМ, модуля преобразования информации МПИ, блока ускоренного переноса БУП и дискретного модуля ДМ. Имеется также первый и второй блоки памяти БП и ППЗУ изображенные на Фиг. 12.
Блок ускоренного переноса (БУП) имеет структуру определяемую нижеследующими логическими функциями:
где
M1 - сигнал с выхода первого элемента ИСКЛЮЧАЮЩЕЕ ИЛИ103 многоканального операционного блока 7, поступающий на вход блока БУП;
М2…Mn - сигналы переноса, поступающие с определенных выходов блока БУП на соответствующие входы вторых элементов И27 всех логических каналов, кроме первого в блоке 7;
Mn+1 - сигнал переноса, поступающий с определенного выхода блока БУП на соответствующий входы модуля ДМ;
В1…Bn - сигналы с выходов первых счетных триггеров 29 соответствующих логических каналов блока 7, поступающие на соответствующие входы блока БУП;
П1…Пn - сигналы с выходов всех вторых счетных триггеров 30 логических каналов блока 7, поступающие на входы блока БУП. Знаки (•) или (+) в функциях означают соответственно логические операции И и ИЛИ.
Как следует из анализа функций 1А, блок БУП позволяет параллельно реализовать процесс переноса по всем каналам при арифметических операциях.
Устройства работает по тактам, сформированным в блоке синхронизации 6, каждый такт поделен на четыре импульса по одной четверти такта, все триггеры меняют свое состояние по одному из этих импульсов, т.е. условно в первой, второй, третьей и четвертой четвертях такта (фиг. 9).
В блоке 7 выходы дешифраторов 8 и 9 обозначены соответственно e1…e7 и Д1…Д3. Слова логический элемент И (ИЛИ, НЕ и т.д.) и элемент с аналогичными обозначениями одно и тоже. При необходимости, дешифратор 81 по сигналам а4…an с выхода ПЗУ60А может подключать и другие, не указанные в описании, внешние блоки к общим шинам 80.
Система связи, в наших примерах, служит для организации обмена информационными сигналами Т1…Tn по одноименным шинам между блоками 1, 3, 4 и 7 по соответствующим сигналам с выходов программного блока 5. При активизации на выходах дешифратора 81 системы связи сигнала N1 первый ключ 82 пропускает значение кода Q1…Qn с выходов входного блока 1 на входы логических каналов в блоке 7 по общим шинам 80, каждая из которых обозначена через Т1…Tn. В случае активизации выхода N2 дешифратора 81 второй ключ 83 пропускает по общим шинам 80 код Р1…Pn с выходов блока 3 в виде Т1…Tn на входы элементов И 23 всех логических каналов. При активизации е3 на выходе дешифратора 8 в блоке 7 выключатель 77 пропускает значение кода В1…Bn с выходов логических каналов, через схемные фрагменты Ф1…Фn на общие шины 80 в виде информационных данных Т1…Tn и при активизации выходов N3 или N4 дешифратора 81, значения Т1…Tn поступают на соответствующие входы блока 3 или блока 4, при активизации выхода С31 на выходе модуля МРК, значения Т``1…Т``n с выхода модуля МПИ поступают через ключ 136 на общие шины 80 системы связи. Знак ⊕ означает логическую операцию ИСКЛЮЧАЮЩЕЕ ИЛИ.
Через С1…С35 обозначены командные шины (сигналы) на выходах модуля МРК, связанные с соответствующими входами дешифраторов 8,9.37 и логических элементов в блоках и модулях и управляющие их работой.
Через C`1…C`j обозначены адресные шины (сигналы), определяющие адреса источников и приемников информации в блоках 1, 3 и 4 и поступающие с выходов программного блока 5.
X1…Xn,…, Xm…Хк - многоразрядные двоичные коды (сигналы), поступающие например на входы входного блока 1 с выходов аналого-цифровых преобразователей, где левые разряды являются младшими.
Хк+1…Xr - входные одноразрядные дискретные сигналы от датчиков (кнопки, путевые выключатели и т.д.), поступающие на входной блок 1
J, Т1…Tn+1 - одноразрядные J и много- разрядные информационные данные (сигналы) на входах и выходах соответствующих электронных ключей, выключателей, блоков, а также на общих шинах 80 системы связи (фиг. 10), поступающие в блоки 3 и 4.
Входы блоков, логических каналов, логических элементов (элементов) и т.д. указаны входящими стрелками, а выходы - исходящими стрелками.
В закрытом состоянии все электронные ключи и выключатели имеют на выходах высокий импеданс сопротивления.
Слова логический элемент и элемент в данном тексте и в формуле изобретения имеют одинаковый смысл.
На фиг. 2 изображена структура логических каналов. Каждый из «n» каналов состоит из первого элемента И 23, связанного выходом с первым входом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 24, выход которого соединен с первым входом элемента ИЛИ 25, выход этого элемента связан с входом третьего элемента И 28, выход которого подключен к счетному входу первого счетного триггера 29, выход которого соединен, через элемент ИСКЛЮЧАЮЩЕЕ ИЛИ 100 соответствующего схемного фрагмента Ф с входом элемента И-НЕ 26 и непосредственно со счетным входом второго счетного триггера 30, выходом соединенного с соответствующим входом блока ускоренного переноса БУП, из модуля сдвига разрядов двоичного кода МСР2 для первого канала, модуля сдвига разрядов МСР3 для последнего канала и модулей сдвига разрядов МСР1 для остальных каналов, с соответствующими связями, второго элемента И27, связанного выходом с входом элемента ИЛИ25.
Пример входного блока 1 представлен на фиг. 3 и содержит ряд электронных ключей 32 на входы которых поступают разряды двоичных кодов Х1…Xn,…,Xm…Хк и которые поочередно, по сигналу первого дешифратора 33, пропускают двоичный код на выходы Q1…Qn в зависимости от значений адресных команд С`1….С`е поступающих с определенных выходов программного блока 5, элементы И 34 на первые входы которых поступают биты информационных сигналов Хк+1…Xr, вторые входы элементов И 34 подключены к выходам второго дешифратора 35 и в зависимости от значений адресных команд на соответствующих адресных шинах C`e+1…C`j из блока 5, при помощи активизации определенного выхода дешифратора 35, соответствующий бит информации появляется на выходе элемента ИЛИ 36, т.е. на выходе блока 1 для одноразрядных переменных.
Входящий в состав устройства коммутационно-вычислительный блок 2 реализующий логические операции с одноразрядными двоичными переменными поступающими через соответствующие элементы на вход счетного триггера 43 представлен на фиг. 4 и содержит второй элемент НЕ140, дешифратор 37, соединенный тремя входами с модулем МРК, а первыми двумя выходами с первыми входами первого и второго элементов И 38, И 39, а третьим и четвертым выходами подключен к входам двух элементов И элемента И-ИЛИ (2-2-2-2И-4ИЛИ) 40, выход которого соединен с первым входом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 41, второй вход которого подключен к соответствующему выходу модуля МРК, а выход связан с первым входом девятого элемента И119 и с определенным входом третьего элемента И42, счетный триггер 43 с одним прямым выходом, вход сброса в «0» которого и вход третьего элемента ИЛИ127 соединены с выходом четвертого элемента И45, первый вход последнего связан с соответствующим выходом модуля МРК, а второй вход подключен к выходу d2 блока синхронизации 6, выход С23 модуля МРК соединен с входами элементов НЕ140 и И119, а выход последнего подключен к входу первого элемента ИЛИ117, входы второго элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 120 связаны с выходом счетного триггера 43 и с выходом модуля МРК, а выход соединен с информационными входами ячеек памяти 57 выходного блока 4 и с соответствующим входом элемента 51 блока 3, второй счетный триггера 47, счетный вход которого связан с выходом восьмого элемента И116, входы последнего подключены к выходу первого элемента ИЛИ117 и к соответствующему выходу блока синхронизации 6, инверсный выход второго счетного триггера 47 и выход d`` элемента ИЛИ 108 соединены с двумя входами шестого элемента И106, выход которого связан с блокирующими входами дешифратора 81 системы связи, входами элемента И28 всех логических каналов и дешифраторов 8, 9, а также с входами элементов И20, И21 и И76 блока 7, где второй вход элемента И76 связан с соответствующей командной шиной модуля МРК, а выход подключен к определенному входу элементов И27 всех логических каналов блока 7, в коммутационно- вычислительном блоке соответствующие входы первого и второго элементов И логического элемента И-ИЛИ(2-2-2-2И-4ИЛИ)40 соединены с выходом i элемента 36 блока 1 и с выходом f элемента 54 блока 3, первые входы третьего и четвертого элементов И логического элемента 40 связаны соответственно с двумя выходами е`` и е`7 дешифратора 37, а вторые входы соединены с выходом управляемого элемента 16 блока 7 и выходом модуля ДМ, вторые входы первого и второго элементов И38 и И39 объединены и связаны с выходом d1 блока 6, а выходы подключены к входу F1 элементов 51 блока 3 и к входам F2 элементов 57 блока 4, определенные три входа третьего элемента И42 соединены соответственно с выходом элемента ИЛИ108, с выходом Z блока 6 и с выходом элемента И-НЕ44, первый и второй входы которого связаны с выходом второго элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 120 и с командной шиной С2 на выходе модуля МРК, шестой выход е6 дешифратора 8 блока 7 соединен с первым входом элемента И111 блока триггеров БТ, второй вход элемента И111 подключен к определенному выходу блока синхронизации 6, второй вход элемента И106 вместе с блокирующим входом дешифратора 37 блока 2 соединен с выходом элемента ИЛИ108, входы которого связаны с определенным выходом модуля МРК и с аварийным сигналом Ст из объекта управления, третий триггер 121 своим инверсным выходом Н 1 связан с четвертым входом третьего элемента И 42, а своими входами сброса в «1» и сброса в «0» подключен соответственно к выходу одиннадцатого элемента И123 и через третий элемент ИЛИ127 к выходу десятого элемента И122, соответствующие входы элементов И123 и И122 соединены с выходами С30 и С28 модуля МРК, с выходом d2 блока синхронизации 6, с инверсным и прямым выходами третьего триггера 121, с выходом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 120 и с выходом элемента НЕ 128, вход которого связан с выходом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 120, двенадцатый элемент И 125 подключен входами к соответствующему выходу программного блока, к прямому выходу триггера 121 и к определенному выходу Z блока синхронизации 6, а выходом соединен с первым входом второго элемента ИЛИ124, второй вход которого связан с выходом третьего элемента И42, а выход подключен к счетному входу триггера 43, седьмой элемент И94 своими входами соединен с соответствующими выходами модуля МРК и блока синхронизации 6, а выходом связан с входом сброса в «0» триггера 47, пятый элемент И46 своими входами подключен к выходам дешифратора и второго элемента ИСКЛЮЧАЮЩЕЕ ИЛИ120, а выходом соединен с определенным входом первого ИЛИ 117.
Пример блока оперативной памяти (БОП) 3 представлен на фиг. 5 и содержит ряды ячеек памяти 48, в одни из которых записывается информационный код (данные) Т1…Tn из общих шин 80 по команде N3 и импульсу d1 поступающих на входы первого элемента И 70 с выхода дешифратора 81 системы связи и блока 6, адрес ряда ячеек памяти формируется на адресных шинах С`1…С`е программного блока 5 и выходах дешифратора 49, Считывание двоичного кода с выхода одного из рядов ячеек памяти 48 осуществляется электронным ключом 50 по сигналам с выхода дешифратора 49, в зависимости от значений сигналов на адресных шинах С`1…С`е и по команде N2 считанный код поступает на общие шины 80, через ключ 83 системы связи, ряд однобитовых ячеек памяти 51 куда записываются результаты вычислений булевых функций с выхода элемента 120 по команде с выхода элемента И 38 блока 2 и в соответствии с сигналами на адресных шинах С`е+1…C`j программного блока 5 и выходах второго дешифратора 52, который определяет также ячейку памяти 51 откуда происходит считывание бита информации через элементы И 53 и ИЛИ 54, запись и считывание происходит на разных тактах работы устройства.
Пример структуры выходного блока 4 представлен на фиг. 6, он состоит из рядов ячеек памяти 55, куда записываются значения двоичных кодов Т1…Tn с общих шин 80, которые формируются на выходах логических каналов, через схемные фрагменты Ф1…Фn и выключатель 77 блока 7, по команде с выхода элемента И 71, на вход которого поступают сигналы N4 и d1 соответственно с выхода дешифратора 81 и из блока 6, адреса рядов ячеек памяти определяются сигналами на адресных шинах С`1…С`е, поступающих с выхода программного блока 5 и активизацией соответствующего выхода первого дешифратора 56, с выходов ячеек памяти 55 двоичный код может поступать, например, в информационные системы, цифро-аналоговые преобразователи и т.д., однобитовые ячейки памяти 57 служат для записи результатов вычисления булевых функций поступающих с выхода элемента 120 блока 2 по команде с выхода элемента И 39 блока 2, адрес ячейки памяти 57 определяется сигналами на адресных шинах C`e+1…C`j и активизацией соответствующего выхода дешифратора 58. Переменные с выходов ячеек 57 могут поступать на электроприводы, сигнализацию и т.д.
Пример схемы программного блока 5 представлен на фиг. 7, он содержит три постоянных запоминающих устройства ПЗУ60А, ПЗУ60В и ПЗУ60С, где хранится программа реализации поставленной задачи, счетчик импульсов 59 (фиг. 11), содержащий элементы НЕ152 и ИЛИ111, первый и второй элементы И151 и И109, электронный ключ 85, управляющий и информационные входы которого связаны соответственно с выходом элемента ИЛИ111 и с информационными выходами T`1…T`m первого и второго блоков памяти БП и ППЗУ, а выходы соединены с установочными входами счетных триггеров 84, реализующих счет импульсов, поступающих на счетный вход первого счетного триггера 84 с выхода первого элемента И 63 блока синхронизации 6, сигналы O`1…O`m с выходов счетных триггеров 84 поступают на адресные входы блока памяти ППЗУ и трех программируемых запоминающих устройств ПЗУ60А, ПЗУ60С и ПЗУ60В и на каждом такте считывается значение ранее записанного по этим адресам программного кода, с выходов ПЗУ60В считывается программный командный код У1…Ук, связанный с входами модуля распределения команд МРК на выходных шинах которого образуются, в соответствии с программным кодом У1…Ук, распределенные командные сигналы (команды) С1…С35, поступающие в блоки и модули устройства и управляющие их работой, с выходов ПЗУ60С считываются адресные сигналы (команды) C`1…C`j, связанные с соответствующими входами блока оперативной памяти 3, входного и выходного блоков 1, 4 и определяют адреса по которым хранятся выбранные на данном такте двоичные переменные Т1…Tn в блоках 1, 3, и 4 для передачи их в другие блоки. Двоичные сигналы N1, N2, N3, N4…Nm с выходов дешифратора 81 системы связи, подключенного входами к выходам a1,a2,a3…an ПЗУ60А определяют и поочередно по тактам подключают внешние блоки из множества «m», в нашем примере блоки 1, 3, 4 к общим шинам 80 системы связи (Фиг. 10), входной блок 1 подключается сигналом N1, выходной блок 4 сигналом N4, блок оперативной памяти 3 подключается сигналом на запись N3 и сигналом на считывания N2. Модуль МРК, устройства ПЗУ60А, ПЗУ60В и ПЗУ60С являются стандартными ПЗУ или ППЗУ с соответствующим задаче программированием.
Функциональная взаимосвязь между выходами и входами электронного ключа 85 представлена ниже при Ст=1 и С14=1
Где R`1…R`m и S`1…S`m - выходы электронного ключа 85.
T`1…T`m - значение информационных кодов на выходе первого блока памяти БП и входе электронного ключа 85.
Т`1…T`m - значения информационных кодов на выходе второго блока памяти ППЗУ.
Двоичная переменная  является инверсией С, знаки «точка» и «плюс» в логических функциях означают логические умножение и сложение, ⊕ знак означающий логическую операцию ИСКЛЮЧАЮЩЕЕ ИЛИ.
Пример схемы и принцип работы блока синхронизации 6 представлены на фиг. 8 и фиг. 9, он постоянно вырабатывает синхроимпульсы (импульсы) Z1, d2, d1, Z в каждой четверти всех тактов и содержит первый счетный триггер 62, подключенный прямым выходом к входу элемента И63, а инверсным выходом к первым входам элементов И64 И115 и И65, второй вход последнего подключен к выходу элемента И 66, три входа которого связаны с прямым выходом счетного триггера 62, вместе с входом элемента И64 с прямым выходом счетного триггера 67 и с выходом инвертора 68, вход последнего вместе с счетным входом триггера 62, входами элементов И63 и И64 подключены к генератору импульсов 69, выход элемента И65 связан с входом сброса в «0» триггера 67, еще один вход элемента И63 соединен с инверсным выходом триггера 67, элемент И115 вторым и третьем входами подключен к инверсному выходу счетного триггера 67 и к выходу инвертора 68, также соединенному выходом с счетным входом триггера 67, выход Z1 элемента И115 связан с определенными входами элемента И94 блока 2 и элемента И21 блока 7, выход Z элемента И63 соединен с соответствующими входами элемента 84 блока 5, элемента 72 блока 7 и элементов И42, И125 блока 2, выход d2 элемента И64 связан с соответствующими входами элементов И45, И122, И123 блока 2, выход d1 элемента И66 связан с входами элементов 28 всех логических каналов, элементов И38, И39, И116 блока 2, элементов И70 и И71 блоков 3 и 4, элемента И12 и элемента И20 блока 7, Связь синхроимпульсов с логическими элементами устройства определяет возможную последовательность операций при реализации алгоритма на каждом такте его работы в соответствии с фиг. 9, сброс в нуль триггера 67 производится единичным сигналом с выхода элемента И65.
Допустим, что все другие триггеры (ячейки памяти) срабатывают по заднему фронту импульсов, поступающих на их управляющие, сбрасывающие и счетные входы. Перед началом работы все триггеры и ячейки памяти установлены в «0».
Принцип работы блока 2 (Фиг. 4) состоит в последовательной по тактам реализации булевых функций в базисе И, ИЛИ, ИСКЛЮЧАЮЩЕЕ ИЛИ, НЕ, И-НЕ, ИЛИ-НЕ условно представленных в виде дизъюнкции конъюнкций или конъюнкции дизъюнкций, за меньшее, по сравнению с аналогом и прототипом, количеством тактов без обращения в процессе вычисления к ячейкам памяти блока 3 для хранения и считывания промежуточных результатов, а также в управлении процессами в блоках 3, 4, 5 и 7, соответствующими сигналами с выхода дешифратора 37.
Перед вычислении булевых функций счетный триггер 43, сигналом с выхода элемента И45, устанавливается в нулевое состояние, т.е. его выход Тр аналогичен по наименованию с сигналом на его выходе, равен «0» и третий триггер 121 этим же сигналом устанавливается в нулевое состояние и его инверсный выход Н1=1. Триггер 43 переключается при подаче с выхода элемента И42 единичного сигнала, проходящего через элемент ИЛИ124 на его счетный вход по окончанию импульса Z, который подается в четвертой четверти каждого такта, третий триггер 121 устанавливается в единичное состояние т.е.на его прямом выходе Н=1 при единичных значениях на входах элемента И123 в конце второй четверти такта по импульсу d2, поступающему на каждом такте и в нулевое состояние, т.е. на его инверсном выходе Н1=1 во второй четверти такта при единичных значениях на входах элемента И122 или при единичном импульсе на выходе элемента И45 (Фиг. 9). Вычисление логических функций в коммутационно-вычислительном блоке 2 поясним на примере вычисления скобочной функции У 1, содержащей функции И, ИЛИ.
НЕ, И-НЕ, ИЛИ-НЕ, ИСКЛЮЧАЮЩЕЕ ИЛИ:
, где
X1…Х9 - двоичные переменные поочередно подаваемые на каждом такте в соответствии со значениями команд С4…С6, С9…C11, С2 и адресных сигналов С`1…С`е, из одного из блоков 1, 3, 7 или БУП, например из входного блока 1, на вход элемента И-ИЛИ40 блока 2 и далее, при определенном значении команд C1, С2, С29, С25 и сигнала Н1=1, очередная входная переменная из X1…Х9 или ее инверсия, через элементы И41 и И42 поступает на счетный вход триггера 43 в виде импульса Z (Фиг. 1, Фиг 4). Причем в случае С1=1 соответствующая переменная из X1…Х9 инвертируется в элементе ИСКЛЮЧАЮЩЕЕ ИЛИ 41. Обозначим:
На первом такте при С1=0, С2=1, С3=1, С28=0, С29=0, С30=1, С25=0 Значение X1 поступает через элементы И-ИЛИ 40, И41 и И42 на счетный вход триггера 43 и если X1=1 то, после окончания импульса Z, на выходе Тр триггера 43 появляется «1». Очевидно, что при этом подфункция  равна нулю при любом значении Х2 и продолжать ее вычисление на следующем такте нет смысла. Для этого следует блокировать работу триггера 43 на втором такте работы устройства. Если Х1=0 триггер 43 не изменит своего состояния и Тр=0, а значение функции Х1+Х2 не известно и следует продолжить вычисление функции Х1+Х2 на следующем такте. Этот выбор автоматически осуществляется установкой С29=0 на втором такте работы в соответствии со значениями сигнала Тр на выходе триггера 43 и определенных командных сигналов. Выход элемента НЕ140 связан с входом элемента И42.
На втором такте работы устанавливаются командные сигналы С1=0, С2=1, С3=0, С28=0, С29=0, С30=0, С25=0 и при Тр=1 (Х1=1) работа счетного входа триггера 43 блокируется нулевыми сигналами с выходов элементов И-НЕ44 и И42, а если Тр=0 (Х1=0) блокировки триггера 43 нет и соответствующая переменная Х2 поступает с выхода элемента И-ИЛИ40, через элементы И41 и И42 на счетный вход триггера 43 и при Х2=1 триггер 43 изменит свое состояние, т.е. Тр=1 и результат вычисления функции , а если Х2=0, то триггер 43 не изменит своего состояния, а результат вычисления функции  и на выходе Тр триггера 43 в любом случае будет находиться инверсия результата вычисления функции  и если Тр=0, т.е. функция , при этом вычислять функцию У2 нет смысла т.к. функция У2=1. При этих условиях работу счетного входа триггера 43 следует заблокировать с третьего такта и до конца четвертого такта, исключая поступление переменных Х3 и Х4 на счетный вход триггера 43, а также инвертировать значение сигнала на выходе Тр, чтобы он прямо соответствовал результату вычисления функции Х1+Х2 и функции У2. При необходимости такой принцип блокировки работы триггера 43 будет осуществляться и на других тактах. Если по окончанию второго такта Тр=1 (Х1+Х2=0), то следует продолжить вычисление функции У2, т.к результат вычисления функции У2 не известен.
На третьем такте устанавливаются командные сигналы С1=1, С2=1, С3=0, С28=0, С29=1, С30=1,С25=1 и если после второго такта Тр=0 (У2=1), то выход J элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 120 равен «1» и третий триггер 121, во второй четверти третьего такта, меняет свое состояние на единичное (Н=1, Н1=0)) и происходит блокировка работы триггера 43 нулевыми выходами элементов И42 и И45 и до конца выполнения команд по вычислению функции У2. т.е. значения переменных Х3 и Х4 не смогут поступать на счетный вход триггера 43 и менять его состояние, при этом в четвертой четверти третьего такта единичный импульс Z, с выхода элемента И125, через элемент ИЛИ124 переключит триггер 43 в единичное состояние т.е. Тр=1 и на выходе триггера 43 присутствует результат вычисления функции У2=1, который сохраняется до конца выполнения команд на вычисление функции У2. А если после второго такта Тр=1, то на выходе J элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 120 в начале третьего такта имеется «0» и триггер 121 не переключится в единичное состояние, блокировки триггера 43 нет и продолжится вычисление функции У2 т.к. Х1+Х2=0, при этом инверсия переменной Х3 с выхода элемента И-ИЛИ40 поступит через элементы И41 и И42 на счетный вход триггера 43 и если Х3=1 то триггер 43 не изменит свое состояние и Тр=1, при этом результат вычисления функции Х3Х4 не определен и вычисление надо продолжить на четвертом такте, а если Х3=0, то триггер 43 переключится и Тр=0 и результат вычисления функции Х3Х4 известен и равен нулю. В этом случае результат вычисления всей функции У2 равен нулю т.к. X1+Х2=0 и Х3  Х4=0. При этом работу счетного триггера 43 следует блокировать на следующем четвертом такте работы.
На четвертом такте при С1=1, С2=1, С3=0, С28=0, С29=1, С30=0, С25=0, в случае Тр=0 счетный вход триггера 43 блокируется нулевыми сигналами с выходов элемента И-НЕ44, элемента И42 и И125 сохраняя на выходе триггера 43 значение всей функции У2=0, а при Тр=1 и нулевом состоянии триггера 121 (Н1=1) блокировки работы триггера 43 нет и инверсия переменной Х4 поступает с выхода элемента И-ИЛИ40, через элементы И41 и И42 на счетный вход триггера 43 и если Х4=0, то триггер 43 переключится и Тр=0, а это означает, что функция Х3•Х4=0 и результат вычисления всей функции У2=0, т.к.  и Х3•Х4=0. Из этого следует, что если в конце четвертого такта значение на выходе триггера 43 равно «0», т.е. если Тр=0, то значение функции У2=0, а если Тр=1, то значение функции У2=1, а это значит, что при Тр=0(У2=0) вычислять функцию У3 нет смысла, т.к. при этом известно значение логического произведения двух функций У2•У3=0 и работу триггера 43 надо заблокировать до конца вычисления функции У3, а при Тр=1 (У2=1) следует продолжить вычисление функцию У3 т.к. значение У2•У3 не известно.
На пятом такте при С1=1, С2=0, С3=0, С28=1, С29=1, С30=1, С25=0, если в начале такта Тр=0, то сигнал J=1 и в случае нулевого состояния триггера 121 (Н1=1) на входах элемента И123 находятся только единичные сигналы и единичный выход элемента И123 переключит по импульсу d2, во второй четверти такта, триггер 121 в единичное состояние (Н1=0), при этом сигналом Н1=0 работа триггера 43 заблокируется нулевыми сигналами с выходов элементов И42 и И45 до конца выполнения команд по вычислению функции У3, т.к. в этом случае У2•У3=0, если Тр=1. то J=0, на выходе элемента НЕ128 единичный сигнал и если третий триггер 121 находился в единичном состоянии с начала третьего такта, то на входах элемента И122 находятся только единичные сигналы и единичный сигнал с выхода элемента И122 через элемент ИЛИ127 переключит триггер 121 в нулевое состояние (Н1=1), при этом снимается блокировка работы триггера 43. А если триггер 121 находился в нулевом состоянии при Тр=1 и J=0, то он не меняет своего состояния (Н1=1) и блокировки триггера 43 нет и через элементы И41 и И42 инверсия переменной Х5 с выхода элемента И-ИЛИ40 поступает на счетный вход триггера 43 и если Х5=0, то триггер 43 в четвертой четверти такта по импульсу d1 изменит свое состояние, т.е. выход Тр=0, а если Х5=1, то триггер 43 не изменит своего состояния, т.е выход Тр=1 и в любом случае вычисление функции Х5 ⊕X6 продолжается.
На шестом такте при любом значении С29 и при С1=0, С2=0, С3=0, С28=0, С30=0, С25=0 значение переменной Х6 поступает с выхода элемента И-ИЛИ40 через элементы И41 и И42 на счетный вход триггера 43 и если Х6=0, то состояние триггера 43 не изменится, а если Х6=1, то триггер 43 переключится и в любом случае на выходе триггера 43 будет присутствовать результат вычисления функции Х5⊕ Х6, т.е. при одинаковых значениях переменных Х5 и Х6 на выходе Тр имеется «0» а при разных значениях Х5 и Х6 на выходе Тр находится «1». Очевидно, что при Х5 ⊕ X6=1 (Тр=1) функция У3=1 и продолжать ее вычисления нет смысла, поэтому следует блокировать по соответствующим тактам работу триггера 43 до конца вычисления функции У3, а если Х5 ⊕ Х6=0 (Тр=0) то вычисление функции У3 следует продолжить т.к. в этом случае результат ее вычисления не известен.
На седьмом такте работы при С1=1, С2=1, С3=0, С28=0, С29=0, С30=1, С25=0 и если после шестого такта Тр=1 (Х5 ⊕X6=1), J=1 и в случае нулевого состояния триггера 121 (Н1=1) во второй четверти седьмого такта по импульсу d2 следует его переключение в единичное состояние (Н1=0) и до конца вычисления функции У3 происходит блокировка работы триггера 43 сигналом Н1=0 и соответственно нулевыми выходами элементов И42 и И45, при этом на выходе Тр триггера 43 сохраняется единичный результат вычисления функции У3=1. А если после шестого такта Тр=0 (Х5 ⊕X6=0), J=0,\ и триггер 121 находится в нулевом состоянии (Н1=1), то блокировки триггера 43 нет и инверсное значение переменной Х7 поступит на счетный вход триггера 43 и если Х7=0, то триггер 43 переключится и его выход Тр=1, при этом функция , а значит функция У3=1 и функция У1=У2•У3+Х9=1 не зависимо от значения Х9 и этот результат имеется на выходе Тр триггера 43. В этом случае следует блокировать работу триггера 43 до конца вычисления функции У1, а если Х7=1 то триггер 43 не изменит своего состояния и Тр=0, результат вычисления функции  не известен и работу по ее вычислению следует продолжить на следующем такте.
На восьмом такте при С1=1, С2=1, С3=0, С28=0, С29=0, С30=1, С25=0 и если после седьмого такта Тр=1, J=1 и триггер 121 находится в нулевом состоянии (Н1=1), то триггер 121 во второй четверти такта по импульсу d2 переключается в единичное состояние и сигнал с его инверсного выхода Н1=0 блокирует работу триггера 43 нулевыми сигналами с выходов элементов И42, И45 и И125, а если после седьмого такта Тр=0 и триггер 121 находится в нулевом состоянии (Н1=1), то блокировки триггера 43 нет и инверсия переменной Х8 поступает через элементы И- ИЛИ 40, И41 и И42 на счетный вход триггера 43. Если Х8=0, то триггер 43 переключится в единичное состояние, т.е. Тр=1 и при этом функция Х7•Х8=1, а функция У3=1 и функция У1=У2•У3+Х9=1 независимо от значения Х9 и этот единичный результат находится на выходе Тр триггера 43, при этом следует блокировать работу триггера 43 на следующем такте т.к. значение функции У1 определено, а если Х8=1, то триггер 43 не переключится и на его выходе Тр будет находиться нулевой результат вычисления функции У3 т.е. У3=0 и при Тр=0 вычисление функции У1 следует продолжить с учетом переменной Х9.
В продолжении описания вышеизложенного процесса на восьмом такте, в начале девятого такта при С1=1, С2=1, С3=0, С28=1, С29=0, С30=1, С25=0 на весь период девятого такта и в случае Тр=0 и при нулевом состояния триггера 121(Н1=1) блокировки работы счетного входа триггера 43 нет и следует подача инверсии переменной Х9 с выхода элемента И-ИЛИ40, через элементы И41, И42 и ИЛИ125 на счетный вход триггера 43 и если Х9=0, то триггер 43 меняет свое состояние по окончанию импульса Z в четвертой четверти такта (Тр=1) и на его выходе устанавливается единичный результат вычисления всей функции У1=1, а если Х9=1, то триггер 43 не меняет своего состояния, т.к. переменная Х9 инвертируется в «0» в элементе ИСКЛЮЧАЮЩЕЕ ИЛИ41 и на выходе триггера 43 имеется нулевой результат вычисления функции У1=0.
А если в конце восьмого такта устанавливается Тр=1, то в начале девятого такта при H1=1, J=1 триггер 121 устанавливается в единичное состояние, блокируя работу триггера 43 нулевым сигналом на инверсном выходе H1 триггера 121 и значение переменной Х9 не поступает на счетный вход триггера 43 при нулевых сигналах на выходах элементов И42 и И125, а на выходе Тр триггера 43 имеется единичный результат вычисления функции У1=1.
В случае, когда на пятом такте при Тр=0 (У2=0) работа триггера 43 была заблокирована сигналом Н1=0, с инверсного выхода триггера 121, до конца вычисления функции У3, на девятом такте следует, при единичном выходе элемента НЕ128 и при С28=1, Н=1, переключение триггера 121 в нулевое состояние во второй четверти девятого такта по импульсу d2 и снятие единичным сигналом H1 блокировки работы триггера 43 и затем поступление инверсии переменной Х9 на счетный вход триггера 43 и если Х9=0, то триггер 43 в четвертой четверти девятого такта по импульсу Z изменит свое состояние (Тр=1) и на выходе триггера 43 будет находиться единичный результат вычисления функции У1, а если Х9=1, то триггер 43 не изменит своего состояния (Тр=0) и на его выходе получим нулевой результат вычисления функции У1. При С23=1 элемент НЕ140 блокирует работу триггера 43.
В случае, как описано выше при работе на седьмом такте, установки триггера 121 в единичное состояние (Н1=0) во второй четверти седьмого такта и до конца вычисления функции У1 и соответствующей блокировки триггера 43 на седьмом такте при Тр=1 и Н1=0, единичное состояние триггера 121 и блокировка триггера 43 сохранятся и на девятом такте, т.к на девятом такте с выхода элемента НЕ128 на вход элемента 122 поступает нулевой сигнал, а на выходе Тр триггера 43 будет находиться единичный результат вычисления функции У1. Как видно из примера, выбор того или иного продолжения в процессе вычисления заданной функции Буля на каждом такте реализуется автоматически в зависимости от состояния триггеров 43 и 121 на предыдущем такте, значений соответствующей переменной X и командных сигналов «С» на данном такте. Итак при любых значениях переменных X1…Х9 в конце девятого такта работы блока 2 на выходе триггера 43 будет находиться результат вычисления функции У1. Как видно из приведенного примера схема блока 2 позволяет вычислять логическую функцию новым способом исходя из анализа результата вычисления первой же конъюнкции равной «1» в дизъюнкции конъюнкций и затем фиксировать этот результат до конца вычисления всей дизъюнкции, справедливо считая, что этот результат известен и равен «1», а при вычислении конъюнкции дизъюнкций в случае нулевого результата первой же дизъюнкции этот результат фиксируется до конца вычисления всей конъюнкции дизъюнкций, справедливо полагая, что и значение всей конъюнкции дизъюнкций, куда входит указанная дизъюнкция, равна «0». Такой подход позволяет существенно сократить число тактов при вычислении логических функций. Командные сигналы «С» формируются на стадии программирования процесса вычисления заданной логической функции.
Таким образом в блоке 2, при любых значениях переменных X1…Х9, происходит вычисление функций алгебры Буля, содержащих вышеперечисленный набор логических функций, за минимальное количество тактов равное количеству переменных входящих в булеву функцию, без обращения в ячейки памяти блока оперативной памяти 3 для хранения промежуточных результатов вычислений и их использования в процессе вычисления всей функции Буля, как это требуется в аналоге и прототипе. Например при вычислении функции У1 в прототипе после вычисления функции  необходим дополнительный такт для записи Z1 в блок оперативной памяти 3 и еще один дополнительный такт для записи результата вычисления функции X3•X4=Z2 в блок 3, затем еще 3 дополнительных такта для считывания переменных Z1 и Z2 из блока 3, вычисления функции Z1+Z2=У2 и запись результата У2 в блок 3. Еще два дополнительных такта требуется для записи в блок 3 результатов промежуточных вычисления функций Х5 X6=Z3 и X7•X8=Z4 и затем еще три дополнительных такта для считывания переменных Z3 и Z4 из блока 3, вычисления функции Z3+Z4=y3 и запись У3 в блок 3, затем еще три дополнительных такта для считывания из блока 3 значений У2 и У3, вычисления функции У2•У3 и запись результата вычисления У2•У3 в блок 3 и еще один дополнительный такт для считывания функции У2•У3 и вычисление функции У1=У2•У3+Х9. Итого для вычисления в прототипе функции У1 понадобилось четырнадцать дополнительных тактов, т.е для вычисления функции У1 в прототипе всего потребовалось 23 такта работы, что существенно выше, чем в предлагаемом устройстве.
В блоке 7, при С15=1 и С20=0 на управляющих входах управляемого элемента 16, последний реализует логическую функцию ИЛИ, если С20=0 и С15=0, то элемент 16 реализует логическую функцию ИСКЛЮЧАЮЩЕЕ ИЛИ, если С15=1 и С20=1, то элемент 16 реализует функцию ИСКЛЮЧАЮЩЕЕ ИЛИ двух последних разрядов двоичного кода на выходах схемных фрагментов Ф1…Фn, а при С15=0 и С20=1 на выходе элемента 16 появляется сигнал с выхода последнего логического канала, при С15=0, С20=0 и С19=1 на выходе элемента 16 блока 7 появляется значение первого разряда двоичного кода, записанного в триггеры 29 логических каналов блока 7.
Работа устройства состоит в вычислении логических функций в блоке 2 с одновременной реализацией операций над многоразрядными двоичными кодами в блоке 7 и при необходимости устройство обеспечивает совместную работу блоков 2 и 7, например в случае исследования заданных и полученных (принятых) двоичных кодов и принятия решений по результатам логического анализа полученных результатов. Устройство работает по тактам, сформированным в блоке 6.
Работу устройства поясним на нескольких примерах. Допустим, что С15=1 и работа дешифраторов 8, 9, 81 и 37 не блокируется входными сигналами d` и d``.
Сравним два двоичных числа А1 и А2 и допустим, что А1=А2 и оба выражены двоичным кодом 11001011. Здесь и далее старшие разряды справа. Допустим число А1 находится в блоке 1 в виде X1…Xn и n=8, а число А2 хранится в блоке оперативной памяти 3 в значениях Р1…Pn и n=8, т.е. блок 7 имеет восемь логических каналов. Равенство чисел определим методом алгебраического сложения чисел А1 и -А2, везде отрицательное число представлено в обратном коде, примем, что С22=1 и С24=0. На первом такте значения X1…Х8, при соответствующих значениях С`1…С`е, С13=1, С24=0, С15=1 и N1=1, поступят из блока 1, через ключ 82 на общие шины 80 системы связи и затем на входы четвертых элементов И 23 всех логических каналов блока 7, где по командам С9…С11 активизируется выход e1 дешифратора 8 и число А1 при единичном выходе элемента И 73, через элементы ИСКЛЮЧАЮЩЕЕ ИЛИ 24, ИЛИ 25, И 28 и d1=1, запишется в счетные триггеры 29. На втором такте, при соответствующих сигналах С`1…С`е и N2=1 в блоке 3 активизируется соответствующий выход дешифратора 49 и с выхода ключа 50 число А2, через ключ 83 и общие шины 80 системы связи поступит на входы элементов И 23 всех логических каналов и при Д1=1 по сигналу с выходов элементов ИЛИ 15 и ИСКЛЮЧАЮЩЕЕ ИЛИ 24, ИЛИ 25 и И 28 инверсия числа А2 поступит на счетные входы счетных триггеров 29 всех логических каналов и при d1=1 реализуется по разрядно функция ИСКЛЮЧАЮЩЕЕ ИЛИ для чисел А1 и -А2, при этом на выходах счетных триггеров 29 всех логических каналов устанавливаются единичные значения, счетный триггер 43 блока 2 устанавливается в состояние «0» по сигналу С3=1.
На третьем такте, при С19=1 С21=1, C18=1, d`=l логическая «1» с выхода элемента ИСКЛЮЧАЮЩЕЕ ИЛИ103 и И27 первого канала поступит на соответствующие входы элементов ИЛИ 25 и блока БУП и логическая «1» с выхода М2 блока БУП появится на входе элемента И 27 второго логического канала и далее в соответствии с функциями (1А) по единичным сигналам М3…Mn из блока БУП, через элементы И 27, ИЛИ 25 и И 28 последующих каналов, при импульсе d1=1, все счетные триггеры 29 переключатся в состояние «нуля» т.е. появился результат разности двух равных чисел А1 и А2, а все триггеры 30 переключатся в состояние «1» и произойдет запись единичной информации с выхода Mn+1 блока БУП при С20=0, через модуль ДМ в ячейку памяти 17 по сигналу «1» с выхода элемента И 20 блока 7.
На том же третьем такте при С15=1 логические «0» с выходов схемных фрагментов Ф1…Фn, через элемент ИЛИ 16 в виде логического «0» на выходе L1, при соответствующих сигналах С4…С6 по команде е`` с выхода дешифратора 37 блока 2 поступает, через элемент 40 на вход элемента 41 блока 2 и при С1=1, С2=0, d1=1 и С3=0 логическая «1» поступает на счетный вход триггера 43 и после импульса Z=1 появляется единичное значение сигнала на выходе счетного триггера 43 и это значит, что А1=А2.
На четвертом такте логическая «1» с выхода счетного триггера 43, при определенных командах С4…С6 и активизации соответствующего выхода дешифратора 37 блока 2 и выхода элемента И 39 при импульсе d1=1, поступающим с выхода элемента И 66 блока 6, запишется в определенную значениями Се…Cj ячейку памяти 57 выходного блока 4, как информация о том, что А1=А2.
Рассмотрим второй пример сравнения двух двоичных чисел, когда А1<А2 и А1=11001011, а А2 равно 10011011, триггеры 29, 30 и 43 установлены в нулевое состояние, триггеры 29 и 30 во всех логических каналах переводятся в нулевые состояния при импульсах q1 и q2, а триггер 43 устанавливается в нулевое состояние при С3=1.
На первом такте по аналогии с первым примером, при соответствующих командных и адресных сигналах, число А1 записывается в счетные триггеры 29 по разрядам в каждый логический канал блока 7.
На втором такте при N2=1 аналогично первому примеру, когда Д1=1, инверсия числа А2 поступает на входы элементов И 28 и при d1=1 единичные значения разрядов числа А2 меняют состояние счетных триггеров 29 на противоположное и на выходе триггеров 29 будет результат А1 ⊕(-А2) т.е. 10101111, при этом во втором логическом канале триггер 29 за два такта дважды поменял свое состояние, что привело к изменению состояния второго счетного триггера 30 на этом канале с нулевого в единичное и произошла фиксация факта переноса из второго разряда в третий или из второго логического канала в третий в блоке БУП, что происходит при аналогичных ситуациях во всех логических каналах блока 7.
На третьем такте при Д2=0, Д3=0, С19=0, С18=1, d`=1 логический нуль, с выхода элементы ИСКЛЮЧАЮЩЕЕ ИЛИ 103 поступает на соответствующе входы элемента И27 первого логического канала и блока БУП и далее в соответствии с функциями (1А) блока БУП происходит процесс переноса в соответствующие логические каналы по сигналам с выхода блока БУП, поступающим одновременно на входы элементов И27 определенных логических каналов и на выходах триггеров 29 всех логических каналов устанавливается изображение алгебраической суммы А1+(-А2), кодом 10011111, в третьей четверти такта при d1=1, одновременно по сигналу с выхода элемента И 20 при С21=1 произойдет запись нулевого переноса Mn+1 с выхода модуля ДМ, при С20=0, в ячейку памяти 17 блока 7, при этом нулевое значение на выходе Mn+1 блока БУП показывает, что по абсолютному значению А1<А2 и получен результат алгебраической суммы в обратном коде. На третьем же такте в четвертой его четверти по сигналу е`7=1 с выхода дешифратора 37 блока 2, значение Mn+1=0 с выхода блока БУП через модуль ДМ, при С20=0, поступает на выход элемента И-ИЛИ 40 блока 2 и при С1=0 на выходе элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 41 образуется логическая «0» и на выходе счетного триггера 43 сохранится логический «0».
На четвертом такте при С15=1, С20=0 и е``=1 значение L1=1 с выхода элемента ИЛИ 16 блока 7 поступит, через элемент И-ИЛИ 40 на вход элемента И 41 и при С1=1 на выходе последнего образуется «0», значение триггера 43 не меняется и результат логической суммы (Mn+1)+L1=0, что подтверждает, что А1<А2.
На пятом такте полученный выше результат с выхода счетного триггера 43 блока 2 при соответствующей команде дешифратора 37 и d1=1, в соответствии с сигналом на выходе элемента И 39 запишется в блок 3 или 4 в одну из ячеек памяти по соответствующему адресу С`e…C`j.
Если описанным выше способом, вычислить в блоке 2, при С1=0, логическую функцию L1•(Mn+1) и если функция L1•(Mn+1)=1, то А1>А2.
Вернемся к третьему такту, когда был получено изображение алгебраической суммы двух чисел А1 и -А2 и продолжим решение задачи по определению результата вычисления алгебраической суммы A1+(-А2).
На третьем такте при С``18=1 завершится процесс переноса, образовавшийся на выходах триггеров 30 и затем в блоке БУП, при этом через элементы И 27, ИЛИ 25, И 28 логических каналов, значения переносов поступят на счетные входы триггеров 29 и при импульсе d1=1 на их выходах появится изображение алгебраического сложения чисел А1 и -А2, если по абсолютному значению число А1 больше числа А2 т.е. /А1/>/А2/, то на четвертом такте следует прибавить к значению А1+(-А2) единицу и получим искомый результат A1+(- А2), а если /А1/</А2/ следует инвертировать результат сложения А1+(-А2) и тогда получим искомый результат сложения А1+(-А2) в прямом коде с указанием его знака.
С целью реализации выше приведенного алгоритма в многоканальный операционный блок 7 имеется восьмой элемент ИЛИ 101 и соответствующие связи. Входы элемента ИЛИ 101 соединены с выходами Д2 и Д3 дешифратора 9, а выход подключен к определенному входу элемента И 18, другой вход которого связан с прямым выходом управляемой ячейки памяти 17, а выход элемента И18 соединен с первым входом первого элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 103 выход К2 которого подключен к входу второго элемента И27 первого логического канала и к определенному входу блока БУП, а выход К1 элемента И 19 связан с одним из входов первого элемента ИЛИ 15, два входа элемента И19 подключены к инверсному выходу ячейки памяти 17 и входу Д2 дешифратора 9 блока 7.
Предложенная схема работает следующим образом. Если /А1/>/А2/, то на третьем такте работы в ячейку памяти 17 блока 7 при, С21=1 по сигналу с выхода элемента И 20 и при импульсе d1, запишется единичный перенос из старшего разряда т.е. с выхода Mn+1 блока БУП через модуль ДМ при С20=0, а при импульсе Z=1 произойдет сброс всех триггеров 30 т.к. O1=1.
На четвертом такте, при С19=0, Д2=1, С18=1, К1=0 и К2=1, в число А1+(-А2), при d1=1 прибавится единичный перенос через элементы ИСКЛЮЧАЮЩЕЕ ИЛИ 103, И 27, ИЛИ 25, И 28 и на выходах триггеров 29 образуется значение искомой суммы А1+(-А2) с минусом в знаковом разряде (Mn+1=1)
В нашем примере, если /А1/</А2/, то на третьем такте значение Mn+1=0 с выхода БУП, через модуль ДМ при С20=0 и С21=1 запишется в ячейку памяти 17.
На четвертом такте, после сброса триггеров 30 на предыдущем такте при Z=1, при С24=0, Д2=1, К1=1 и К2=0 по сигналу с выхода элемента ИЛИ 15 после импульса d1=1, в третьей четверти такта, произойдет инвертирование изображения кода А1+(-А2) и на выходах триггеров 29 появится результат алгебраической суммы А1+(-А2) с минусом в знаковом разряде (Mn+1=0).
Далее полученный результат можно записать в блок оперативной памяти 3 при е3=1 и N3=1 или в выходной блок 4 при е3=1 и N4=1 на следующем пятом такте. Предлагаемый ниже алгоритм и соответствующая схема позволяют это сделать на том же четвертом такте, сокращая общее число тактов на реализацию алгебраического сложения и записи результата в блоки 3 или 4, при С27=1.
Для этого в блоке 7 имеется «п» одинаковых схемных фрагментов Ф1…Фn по числу логических каналов, каждый из которых (фиг. 13) содержит два элемента: ИЛИ 99 и ИСКЛЮЧАЮЩЕЕ ИЛИ 100, в каждом схемном фрагменте три входа элемента ИЛИ 99 связаны соответственно с выходом элемента И126, с выходом элемента И 27 соответствующего логического канала и выходом модуля распределения команд МРК, входы элемента И126 подключены к соответствующему выходу модуля МРК и к выходу элемента ИЛИ 15 блока 7, а выход элемента ИЛИ 99 соединен с первым входом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 100. второй вход которого подключен к выходу триггера 29 соответствующего логического канала, а выход связан с определенными информационными входами электронного выключателя 77 и управляемого элемента 16 блока 7. Схемные фрагменты Ф1…Фn позволяют записать полученный результат или его инверсию (С33=1) при импульсе d1=1 в блоки 3 или 4 на четвертом такте вычисления при определенных значениях адресных и командных сигналов, а также сократить число тактов при поразрядной взаимосвязанной реализации функций И, ИЛИ.
Вернемся к четвертому такту вычисления алгебраической суммы А1+(-А2). Если /А1/>/А2/ то Mn+1=1 и при С19=0, Э1=1, Д2=1, и К2=1 в блоке 7 с выхода элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 103 на вход элемента И 27 первого логического канала поступит логическая «1» и путем переноса через блок БУП, она поступит на входы элементов И 27 определенных логических каналов, а затем с выходов соответствующих элементов И27 на входы и выходы элементов ИЛИ 99 соответствующих схемных фрагментов и с учетом сигналов на выходах триггеров 29, на выходах элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 100 всех схемных фрагментов Ф1…Фn появится искомое значение суммы А1+(-А2), которое можно записать по определенным адресным сигналам С`1…C`j, например в блок оперативной памяти 3 на этом же такте при сигнале N3=1 с выхода дешифратора 81 системы связи. При /А1/</А2/ и Д2=1, К1=1 на выходе элемента ИЛИ 15 блока 7 появится логическая «1», которая поступит при С27=1 на входы элементов ИЛИ 99 и затем на входы элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 100 всех схемных фрагментов, при этом на выходах последних элементов появится результат суммы А1+(-А2), который через выключатель 77 при N3=1 можно записать в блок оперативной памяти 3. Введение схемных фрагментов повысило быстродействие устройства и за счет того, что при С33=1 на выходе модуля МРК, используя схемные фрагменты Ф1…Фn, можно на том же такте произвести инверсию кода на выходах триггеров 29 и при N3=1, С27=1 записать эту инверсию по определенным адресным сигналам С`l…C`j и N3=1, например в блок оперативной памяти 3, что очевидно следует из анализа работы схемных фрагментов Ф1..Фn.
Управляемый триггер 102 блока 7 соединенный входом управления с выходом элемента И 12 и информационным входом с прямым выходом ячейки памяти 17, а выходом с шиной Tn+1, которая определяет знак разности двух чисел и позволяет сохранить этот знак на протяжении любого количества тактов работы устройства, когда состояние ячейки памяти 17 может меняться.. Входы элемента И 12 связаны с определенным выходом дешифратора 8 блока 7 и с выходом элемента 66 блока синхронизации 6. Шина Tn+1 подключена к соответствующему входу выходного блока 4. Единичная команда Д1 с выхода второго дешифратора 9 блока 7 позволяет на дополнительном такте инвертировать значение кода, записанного в триггеры 29.
Модуль сдвига разрядов МСР1 для каждого логического канала в блоке 7 кроме первого и последнего имеет два выхода У`1 и У`2 и четыре входа С`, С``, b`, b``, его работа определяется булевыми функциями:
где первый выход У`1 соединен с третьим входом первого элемента ИЛИ 25 данного логического канала, второй выход У`2 связан с четвертым входом элемента ИЛИ 25 последующего канала, вход b` подключен к выходу счетного триггера 29 данного логического канала, вход b`` соединен с выходом первого счетного триггера 29 последующего логического канала, входы С` и С`` связаны с соответствующими выходами логического модуля ЛМ.
0
Модуль сдвига разрядов МСР2 первого логического канала имеет три выхода У1, У2, У3 и шесть входов b1, b2, bn, С`, С``, С и его работа определяется булевыми функциями:
0
0
где первый выход У1 соединен с четвертым входом элемента ИЛИ 25 первого логического канала, второй выход У2 связан с третьим входом элемента ИЛИ 25 того же канала, третий выход У3 подключен к четвертому входу элемента ИЛИ 25 второго логического канала, вход b1 связан с выходом первого счетного триггера 29 первого логического канала, входы b2, bn подключены к выходам счетных триггеров 29 второго и последнего логических каналов, входы С`, С`` С соединены с соответствующими выходами логического модуля ЛМ, в котором выходы определяются логическими функциями С`=С24•t1•d`, , С = C24•C22•t1•d`, С```= (C24+C22)•t1•d`, где С24, С22 являются входными командными сигналами для логического модуля ЛМ и поступают на его входы с выходов модуля МРК, t1 является выходом элемента ИЛИ-НЕ112 блока 7, a d` является выходом элемента И106 блока 2.
Модуль сдвига разрядов МСР3 последнего логического канала имеет один выход У1```, пять входов bn, С``, С15, b1,  и функционирует в соответствии с булевой функцией:
где выход У1``` соединен с определенным входом элемента ИЛИ 25 последнего логического канала, входы b1, bn связаны соответственно с выходами триггеров 29 первого и последнего логических каналов, вход С`` подключен к соответствующему выходу логического модуля ЛМ, С15 соединен с определенным выходом модуля МРК. Перед сдвигом разрядов происходит установка триггеров 30 в «0».
0
Сдвиг разрядов кода вниз от первого до последнего логического канала осуществляется по команде С`=1, при С``=0, t1=1, С=0. В этом случае для модуля МСР2, если b1=1, и на выходе триггера 29 второго логического канала имеется логический «0», то в соответствии с функциями (3) и (5) на выходе У1 установится логическая единица и она так же появится на выходе элемента ИЛИ 25, поступит на вход элемента И 28 и при d1=1 триггер 29 первого канала изменит свое состояние на нулевое. Одновременно при неравенстве сигналов на входах b1, d2 выход У3 активизируется и логическая «1» поступит на вход элемента И 28 и по окончанию импульса d1 выход триггера 29 второго канала примет противоположное значение, т.е. значение которое было на выходе триггера 29 первого логического канала. Одновременно в модулях МСР1 в соответствии с функцией (2) при неравенстве сигналов на выходах триггеров 29 данного и последующих логических каналов активизируется выход У`2 во всех модулях МСР1 и логическая «1» через соответствующие элементы ИЛИ 25 поступят на входы элементов И 28 соответствующих логических каналов и на выходе триггера 29 каждого последующего канала появится значение выхода триггера 29 данного логического канала т.е. произойдет сдвиг вниз разрядов кода, ранее записанного в триггеры 29.
0
Сдвиг разрядов кода вверх имеет место при наличии команды С``=1, когда С`=0, С=0, t1=1 и С15=0. Тогда в соответствии с функциями (1)…(6) могут активизироваться выходы У2 в модуле МСР2, У`1 в модуле МСР1 и выход У1``` в модуле МСР3, при этом выход У2 активизируется, если входные сигналы b1, b2 на входах модуля МСР2 не равны и в этом случае, через элемент ИЛИ 25 на вход элемента И 28 первого логического канала поступит логическая «1» и триггер 29 первого канала примет значение триггера 29 второго логического канала. Одновременно для любого модуля МСР1 при неравенстве сигналов b`, активизируется выход У1` и логическая «1», через элемент ИЛИ 25 поступит на вход элемента И 28 данного канала, где находится соответствующий модуль МСР1 и на выходе триггера 29 данного логического канала установится значение выхода триггера 29 последующего логического канала. Одновременно при b n=1 активизируется выход У1``` модуля МСР3 и на выходе элемента И 28 появится логическая «1» и триггер 29 последнего логического канала перейдет в состояние «0». Таким образом произойдет сдвиг снизу-вверх разрядов кода записанного в триггеры 29.
0
Наличие логического модуля ЛМ в устройстве позволило организовать циклический сдвиг двоичных кодов вверх с переносом младшего разряда в старший при С15=1, что следует из анализа логической формулы (6) для модуля МСР3 и вниз с переносом старшего разряда в младший разряд при значении С=1, что непосредственно следует из анализа формулы (3), определяющей значение У1 в модуле МСР2.
Единичное значение прямого выхода управляемой ячейки памяти 17 в блоке 7 означает наличие переноса, например после арифметического сложения n разрядов двух двоичных чисел значение переноса в следующий n+1 разряд активизируется при Д3=1 на выходе дешифратора 9 блока 7 и поступит, через элементы И18, ИСКЛЮЧАЮЩЕЕ ИЛИ103 и ИЛИ13 на вход элемента И 27 первого логического канала блока 7.
Для определения четных или нечетных чисел в блок 7 введен элемент ИСКЛЮЧАЮЩЕЕ ИЛИ 79 входы которого подключены к первой шине Т1 и командной шине С21 блока 5, а выход связан с входом элемента ИЛИ 107 блока 7, что сократило число тактов при определении четного числа или нечетного и записи его в логические каналы при С21=1 или С21=0.
Входящий в устройство коммутационно-вычислительный блок 2 реализующий логические операции с одноразрядными переменными, поступающими через соответствующие логические элементы на вход счетного триггера 43 содержит в своем составе логический элемент И-НЕ44, имеющий непосредственную связь своими входами с соответствующим выходом модуля МРК и выходом второго элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 120, а выходом с третьим входом третьего элемента И42, блокирующий работу счетного триггера 43 при единичном выходе элемента 120 и при С2=1. В блоке 2 второй счетный триггер 47 подключен счетным входом к выходу восьмого элемента И116, входом сброса в «0» соединен с выходом седьмого элемента И94, а инверсным выходом через элемент И106 подключен к блокирующим входам дешифраторов 8 и 9, также к входам десятого элемента И76 и четвертого и пятого элементов И20 и И21 блока 7 и дешифратору 81, что позволяет блокировать работу блоков 3, 4 и 7 с многоразрядными двоичными кодами, при этом блок 2 может продолжать работать с одноразрядными двоичными кодами по своей заданной программе при С32=1.
Дискретный модуль ДМ (Фиг. 14) содержит первый, второй и третий элементы И110, И113 и И104, элементы НЕ114 и ИЛИ105, причем входы элемента И104 связаны с выходами первых счетных триггеров 29 предпоследнего и последнего логических каналов, а выход подключен вместе с выходом С20 МРК к входам элемента И113, а С20 поступает на вход элемента НЕ114, выход которого связан с первым входом элемента И110. С выхода L2 элемента ИЛИ 105 в ячейку памяти 17 записывается значение Mn+1 из блока БУП, поступающий на второй вход элемента И110 при С21=1 и С20=0 для определения отрицательного знака или определения переполнения при арифметических операциях, а при С21=1 и С20=1 записывается,через элементы И113 и ИЛИ105, значение функции логического И двух последних разрядов двоичного кода, записанного в триггерах 29 соответствующих логических каналов блока 7. В блоке 7 первый элемент ИСКЛЮЧАЮЩЕЕ ИЛИ 103 позволяет инвертировать сигнал на выходе элемента И 18 по команде С19 и пересылать его в выходной блок.
Сигнал L2 с выход модуля ДМ, по команде е`7=1 с выхода дешифратора 37 блока 2, может быть записан в счетный триггер 43 при значении С23=0 или во второй счетный триггер 47 по командам С23=1 в блоке 2 для дальнейшего использования в логических операциях.
Включение в каждом схемном фрагменте Ф1…Фn связи между выходом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ100 являющимся выходом каждого схемного фрагмента Ф и входом элемента И26 блока 7, а также введение элемента И, связанного входами с соответствующими выходами программного блока 5 и элемента ИЛИ15 блока 7, а выходом соединенного с входом элемента ИЛИ99 каждого схемного фрагмента Ф1…Фn, позволяет вести или заблокировать вычислительный процесс в логических каналах в зависимости от состояния выходов соответствующих триггеров 29 и значений сигналов на входах элемента И-НЕ26, что приводит к сокращению числа тактов при поразрядном взаимосвязанном вычислении функций ИЛИ и И или наоборот И и ИЛИ. С учетом этого покажем на примерах взаимосвязанную поразрядную реализацию функций ИЛИ и И или И ИЛИ в логических каналах, когда после поразрядной реализации функции ИЛИ следует поразрядно вычислить функцию И с учетом результата поразрядного ИЛИ или наоборот.. Аналитически можно записать для первого случая (A1+A2+…+An)•An+1•An+2•… •An+m, для второго случая А1•А2•…•An+An+An+2+…+An+m, где А- многоразрядные двоичные переменные (двоичные коды). В процессе вычисления на выходах МСР1, МСР2, МСР3 и элемента И27 находятся нули. Покажем процесс вычисления на примере поразрядного вычисления функции (А1+А2)•А3•А4, где A1, А2, A3, и А4- многоразрядные двоичные коды хранящиеся в блоке оперативной памяти 3.
На первом такте в каждом логическом канале при соответствующих командах и единичном импульсе все триггеры 29 устанавливаются в «0».
На втором такте, при С26=0, Д1=0 и N2=1 с нулевым выходом элемента ИЛИ15 блока 7 и соответствующих адресных и командных сигналах, подается значение многоразрядной переменной А1 из блока оперативной памяти 3, через элементы И23, ИСКЛЮЧАЮЩЕЕ ИЛИ24, ИЛИ 25 и И28 на счетный вход триггера 29 и на его выходах появляется значение кода А1 после импульса d1. При нулевых значениях на выходах триггера 29 соответствующих разрядов вычисление следует продолжить, т.к. результат поразрядного вычисления функции А1+А2 еще не известен, а если в соответствующих разрядах на выходах триггеров 29 имеются логические единицы то результат вычисления функции А1+А2 в этих разрядах известен и равен «1» и работу этих триггеров следует заблокировать.
На третьем такте при соответствующих адресных и командных сигналах и при С26=1, С27=0, N2=1 и Д1=0, код А2 поступит из блока 3 на входы элемента И28 и триггеры 29 с единичными выходами блокируются нулевым выходом элемента И-НЕ26 и не меняют своего состояния, а триггеры 29 с нулевым выходом не блокируются и при появлении единичного сигнала в соответствующем разряде триггер 29 меняет значение выхода на единичное. При этом на выходах триггеров 29 всех разрядов имеются результаты поразрядного вычисления функции А1+А2. Далее те триггеры 29 у которых на выходах имеются «0» должны бить заблокированы, т.к. результат вычисления всей функции (А1+А2)•А3•А4 в этих разрядах уже известен и равен «0» и сохраняется до конца вычисления.
На четвертом такте при соответствующих адресных и командных сигналах и при С26=1, С27=0, N2=1 и Д1=1 с единичным выходом элемента ИЛИ15, инверсия кода A3 поступит через элементы И23, ИСКЛЮЧАЮЩЕЕ ИЛИ24 и ИЛИ25 на входы элементов И28 и триггеры 29, имеющие нулевой выход блокируются нулевыми выходами элементов И-НЕ26 и на их счетные входы соответствующие разряды кода A3 не поступают, а на счетные входы триггеров 29, имеющих единичные выходы, поступают инверсии соответствующих разрядов кода A3 и в случае их единичного значения и соответственно нулевого значения в коде A3, триггеры 29 меняют свой выход на нулевой и на выходах триггеров 29 присутствует результат поразрядного вычисления функции (А1+А2)•А3.
На пятом такте при соответствующих адресных и командных сигналах и при С26=1, С27=0, N2=1, Д1=1 инверсия кода А4 из блока 3 поступит через элементы И23, ИСКЛЮЧАЮЩЕЕ ИЛИ24, ИЛИ25 не вход элемента И28 и при единичных выходах триггеров 29 соответствующих разрядов, инверсия разрядов кода А4 поступят на счетные входы указанных триггеров и в случае единичных значений указанных инверсий триггеры 29 переключатся в нулевое состояние на выходе, а в тех логических каналах (разрядах), где на выходах триггеров 29 имеются логические нули происходит или продолжается блокировка этих триггеров, а на выходе триггеров 29 в конце пятого такта имеется результат поразрядного вычисления функции (А1+А2)•А3•А4. На это потребовалось пять тактов работы многоканального операционного блока. В случае поразрядной реализации этой функции в прототипе и аналоге потребуются дополнительно 1 такт для записи результата поразрядного вычисления А1+А2=В1 в блок оперативной памяти 3, после этого еще 1 такт на установку всех триггеров 29 в состояние «0» перед поразрядном вычислении функции А3•А4, еще 1 такт для пересылки результата реализации функции A3•А4=В2 в блок 3, еще 1 такт на установку всех триггеров 29 в «0» перед вычислением функции А3•А4, еще 2 такта для считывания из блока 3 полученных промежуточных результатов В1 и В2 и поразрядного вычисления функции В1•В2 и на выходах триггеров 29 появится результат поразрядного вычисления функции (А1+А2) •A3•А4 за 5+6=11 тактов работы устройства, что существенно больше, чем в предлагаемом устройстве.
Аналогично рассмотрим пример поразрядного вычисления обратной функции А1•А2+А3+А4 в логических каналах блока 7. В начале, при нулевых выходах элементов И 27 и всех модулей МСР и при Я=0, Д1=1, С26=1, С27=0 и N2=0 установим все триггеры 29 в единичное состояние. Долее на втором и третьем тактах, по соответствующим адресным и командным сигналам и при Я=1, Д1=1, С26=1, С27=0, N2=1 из блока оперативной памяти 3 поступают поочередно соответствующие разряды двоичных кодов А1 и А2 на счетные входы тех триггеров 29 на выходах которых находятся логические «1», остальные триггеры 29 блокированы нулевыми сигналами с выхода элемента И26, и в конце третьего такта, по окончанию импульса d1, на выходах триггеров 29 появится результат поразрядного вычисления функции А1•А2. Далее при соответствующих адресных и командных сигналах и при Д1=0, Я=1, С26=1, С27=0, N2=1 из блока 3 на четвертом и пятом тактах поочередно поступают коды A3 и А4 на счетные входы тех триггеров 29 у которых на выходах имеются логические «0», а триггеры 29 с единичными выходами блокируются нулевыми выходами элемента И26 и после окончания пятого такта на выходах триггеров 29 будет находится результат поразрядного вычисления функции А1•А2+А3+А4. При поразрядном вычислении этой функции в аналоге или прототипе потребуются дополнительно 1 такт для передачи промежуточной функции А1•А2=В2 в блок оперативной памяти 3, еще 1 такт на установку в «0» триггеров 29 перед поразрядном вычислением функции А3+А4, еще 1 такт для передачи результата вычисления А3+А4=В1 в блок 3, еще 1 такт для установки триггеров 29 в нулевое состояние перед поразрядном вычислении функции В2+В1 и еще 2 такта для поразрядной реализации функции В2+В1. Итого потребовалось 11 тактов для реализации функции А1•А2+А3+А4, что существенно больше чем в предполагаемом изобретении. Это связано с тем что в аналоге и прототипе нет возможности блокировать работу триггера 29 сигналом с выхода элемента И 26 при нулевом значении на выходе триггера 29, а также нельзя менять состояние триггера 29 при единичном состоянии не его выходе и при С26=1. Предлагаемая реализация поразрядного вычисления функций И и ИЛИ одним счетным триггером 29 позволяет в каждом логическом канале блока 7 сократить число логических элементов и линий связи, что упрощает их структуру при сохранении их функциональных возможностей.
Элементы И75, И135 первыми входами подключенные к соответствующим выходам С19 и С20 модуля МРК, а вторыми входами к выходам первых триггеров соответственно первого В1 и последнего Bn логических каналов блока 7 и элемент ИЛИ11 связанный входами с выходами элементов И75 и И135, а выходом с одним из входов элемента ИЛИ-НЕ112 блока 7 позволяют заблокировать сдвиг разрядов в логических каналах при С19=1 и В1=1 или при С20=1, Bn=1. На фиг. 12 представлен введенный первый блок памяти (БП), содержащий ячейки памяти по количеству счетных триггеров 84 в счетчике импульсов программного блока, в которые заранее, любым способом, записывается двоичный код, обеспечивающий начало выполнения аварийной подпрограммы, выходы ячеек памяти есть выходы первого блока БП. При появлении аварийного сигнала Ст=1 двоичный код с выхода ячеек памяти блока БП поступает на входы электронного ключа 85 блока 5 и по сигналу с выхода элемента И151 при Ст=1, через элемент ИЛИ111 счетчика импульсов 59, двоичный код с выхода блока БП запишется по импульсу d2 блока 6 в счетные триггеры 84 блока 5 и начнется выполнение аварийной подпрограммы. Первый элемент И151 счетчика импульсов 59 блока 5 связан входами с выходом d2 блока 6 и аварийным сигналом Ст, а выходом с первым входом элемента ИЛИ111. Для уменьшения количества тактов, при реализации нелинейных алгоритмов с помощью прерывания (перескока), введен второй блок памяти ППЗУ (Фиг. 12), содержащий память с перепрограммируемыми постоянными запоминающими устройствами, элемент И150, связанный входами с выходом команды С14 модуля МРК и с инверсией аварийного сигнала Ст т.е. с выходом элемента НЕ152 счетчика импульсов 59, на вход элемента НЕ152 поступает аварийный сигнал Ст.Блок ППЗУ обеспечивает процесс изменения направления реализации нелинейных алгоритмов в зависимости от результата предыдущих вычислений. В начале в память блока ППЗУ по определенным адресам O`1…O`m записываются двоичные коды, при которых возможны «перескоки» при выполнении программы с реализацией нелинейных алгоритмов и при Ст=0 и С14=1 двоичный код возможного «перескока» появляется на информационном выходе блока памяти ППЗУ. Далее по импульсу d2 этот двоичный код может быть записан или не записан при соответствующих значениях d` с выхода элемента И108 блока 2, в триггеры 84, значение d` зависит от результата предыдущих вычислений, записанных в триггер 47 блока 2. В зависимости от результатов предыдущих вычислений d` программа может сделать «перескок», а может продолжить последовательное выполнение данной подпрограммы с последующим «перескоком» через не выбранную подпрограмму, когда, на соответствующем такте, значение d1 изменит свое состояние на противоположное при С12=1. Элемент И150 блока ППЗУ связан входами с командой С14 модуля МРК и с инверсией аварийного сигнала Ст, а выходом соединен с входом разрешения считывания двоичного кода из элементов памяти блока памяти ППЗУ. Второй элемент И109 счетчика импульсов блока 5 соединен входами с выходом d2 блока синхронизации 6, с выходом d` элемента И106 блока 2, с командой С14 модуля МРК и с выходом элемента НЕ152. Элемент ИЛИ111 вторым входом связан с выходом элемента И109, а выходом соединен с управляющим входом ключа 85 счетчика импульсов блока 5. Выходы первого блока памяти БП и второго блока памяти ППЗУ Т`1…Т`m связаны с аналогичными по названию информационными входами электронного ключа 85 блока 5 (фиг. 11 и фиг. 12).
Командный сигнал С16 поступающий с выхода модуля МРК на вход элемента ИЛИ 108 всегда равен «1» при выполнении основной программы и равен «0» при выполнении аварийной программы. В последнем случае при Ст=0 на выходах элементов ИЛИ108 и И106, обозначенных соответственно d`` и d`, в блоке 2 появляются сигнал d`=«0», d``=0 и блокируется работа дешифраторов 8, 9 и элемента И76 в блоке 7, а так же дешифратора 81 системы связи, дешифратора 37 и всех триггеров кроме 47 в блоке 2 и аварийная подпрограмма не выполняется. После прохождения всех тактов работы аварийной программы при С16=1 работа устройства продолжается. Использование первого блока памяти БП, с высоким импедансом сопротивления на выходе, новых элементов и связей в счетчике импульсов блока 5, а также элементов ИЛИ108 и шестого элемента И106 в блоке 2 позволяет ускорить реакцию устройства при появлении аварийной ситуации на объекте управления, что сокращает время выхода из аварийного положения. Включение второго блока памяти ППЗУ с высоким импедансом сопротивления на выходе, позволяет сократить число тактов при вычислении нелинейных алгоритмов и уменьшить время реакции системы управления, на изменения в объекте управления, до максимально допустимого запаздывания. Однако в этом случае усложняется программа из-за необходимости программировать режимы «перескоков» и усложняется контроль и диагностика работы устройства, т.к. системе контроля и диагностики следует различать аварийные сбои в работе устройства от штатного режима «перескока», например при вычислении нелинейных алгоритмов.
Наличие в блоке 2 второго счетного триггера 47, восьмого элемента И116, первого элемента ИЛИ117 и пятого элемента И46 позволяет записать во второй счетный триггер 47 определенный результат анализа (вычисления) нелинейных алгоритмов в блоках 2 и 7, который поступает на его счетный вход, по соответствующим командам, через управляемый элемент 16 блока 7 или из блоков 1, 3, БУП в блок 2 и через элементы И-ИЛИ 40, ИСКЛЮЧАЮЩЕЕ ИЛИ 41, девятый элемент И119 или с выхода элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 120, через элемент И46 и затем через элементы ИЛИ117, И116 и который может при единичном состоянии переключить триггер 47 в состояние «0» на его инверсном выходе и блокировать сигналом d` работу блока 7 и дешифратора 81 на определенное число тактов до прихода сигналов С12=1 или С17=1 на входы элементов ИЛИ117 или И 94. Аналогично элементу И119 функционирует элемент И46 соединенный входами с выходами элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 120 и дешифратора 37, а выходом подключенный к соответствующему входу элемента И117. Вышеописанный процесс, при вычислении нелинейных алгоритмов, позволяет делать выбор между выполнением двух подпрограмм, в зависимости от полученных ранее результатов вычисления и осуществить ветвление программы путем блокировки сигналом d` работы всех блоков устройства, работающих с много разрядными данными, для всех тактов не выбранной подпрограммы, при этом блок 2 может продолжать работу с одноразрядными переменными при единичных выходах элемента ИЛИ108 и введенного четвертого триггера 137, связанных соответственно с входом дешифратора 37 и входами элементов И42, И45, И122, И123 и И125, что расширяет функциональные возможности устройства. Такой способ вычисления нелинейных алгоритмов увеличивает число тактов при реализации нелинейных алгоритмов, но позволяет упростить составление программы, т.к. не надо программировать «перескоки» и упрощается процесс диагностики и контроля работы устройства, когда любое нарушение порядка следования тактов фиксируется как сбой в работе устройства. Пятый элемент И115 в блоке 6 связанный двумя входами с инверсным выходом первого счетного триггера 62 и выходом элемента НЕ68, а выходом подключенный к входам пятого элемента И21 и восьмого элемента И72 блока 7 и к определенным входам четвертого и седьмого элементов И45 и И94 коммутационно-вычислительного блока 2, элемент И115 позволяет подавать импульсы сброса триггера в первой четверти тактов работы устройства. В качестве модуля МРК может использоваться например стандартное ППЗУ преобразующее код программ с количеством разрядов У1…Ук в код команд с другой разрядностью С1…С33.
Модуль преобразования информации МПИ (Фиг. 15) содержит «n» модулей памяти МП1…МПn, в каждом модуле памяти имеются счетный триггер 130, элемент И131 и элемент ИСКЛЮЧАЮЩЕЕ ИЛИ133, а в первом модуле памяти содержится еще второй элемент И132, причем выходы T``1…T``n счетных триггеров 130 всех модулей памяти связаны с информационными входами третьего электронного выключателя 136, выходы которого Т1…Tn подключены к общим шинам 80 системы связи, в каждом, кроме первого, модуле памяти первый и второй входы элемента ИСКЛЮЧАЮЩЕЕ ИЛИ133 подключены соответственно к выходам счетных триггеров 130 данного модуля памяти и предыдущего модуля памяти, а в первом модуле памяти второй вход элемента 133 является входом модуля МПИ и связан с выходом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 41 блока 2, входы второго элемента И132 первого модуля памяти связаны с определенным выходом дешифратора 8 блока 7 и с выходом Z1 блока синхронизации 6, а выход соединен с входами сброса в «0» счетных триггеров 130 всех модулей памяти, входы элемента И131 всех модулей памяти подключены к соответствующему выходу дешифратора 8 блока 7 и выходу d1 блока синхронизации 6, управляющий вход третьего ключа 136 соединен с выходом С31 модуля МРК. Перед началом работы все триггеры 130 сбрасываются в «0» импульсом с выхода элемента И132 первого модуля памяти МП1. Модуль МПИ позволяет при последовательной, по тактам, подачи битов информации на его вход, на выходах счетных триггеров 130 получить параллельный двоичный код. Например, биты информации последовательно по тактам поступают с выхода i входного блока 1 и при соответствующих значениях команд С4,С5 и С6 через элементы И-ИЛИ40 и ИСКЛЮЧАЮЩЕЕ ИЛИ 41 подаются на вход модуля МПИ и на выходах триггеров 130 устанавливается параллельный код Т``1…Т``n из «n» последовательно поступивших битов, который при команде С31=1 поступит на общие шины 80 системы связи Т1…Tn и может быть использован для дальнейших операций. Введение в каждый логический канал блока 7 связи между входом элемента И-НЕ26 и выходом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ100 соответствующего логического фрагмента из Ф1…Фn позволило сократить количество тактов при последовательном поразрядном взаимозависимом вычислении функций ИЛИ,И. Элемент И126 в схемных фрагментах Ф1…Фn позволяет блокировать сигнал на выходе элемента И15 блока 7 при поразрядном вычислении функций И, ИЛИ в блоке 7
Использование в блоке 2 элемента И-НЕ44, связанного с выходом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ120 расширило функциональные возможности триггера 43 и упростило процесс вычисления логических функций в блоке 2.
Использование в блоке 2 счетного триггера 47 и связанных с ним элементов, позволило существенно упростить процесс управления выполнением программы, при реализации нелинейных алгоритмов, в зависимости от результатов предыдущих вычислений, исключив операции перескока при выполнении программы, т.е. записи и считыванию внеочередных двоичных кодов из элементов памяти и установки их в многоразрядный счетчик программного блока при переходе от одной подпрограммы к другой, сохранив возможность реализации нелинейных алгоритмов без изменения непрерывной последовательности считывания программных кодов, что позволяет упростить контроль за работой устройства и составление программы при вычислении нелинейных алгоритмов.
С целью обеспечения независимой работы с одноразрядными двоичными переменными в блоке 2 и много разрядными двоичными переменными в блоке 7 при реализации в них нелинейных алгоритмов в блок 2 введены четвертый триггер 137, элементы: четвертый ИЛИ141, четырнадцатый И144, пятнадцатый И143 и шестнадцатый И142. При этом триггер 137 выходом S подключен к блокировочному входу дешифратора 37 и к входам элементов: И42, И45, И122, И123, И125, триггер 137 входом сброса в ноль связан с выходом элемента И144, входы которого соединены с выходом Z блока синхронизации 6 и выходом С32 модуля МРК, счетный вход триггера 137 подключен к выходу элемента И143, связанному входами с выходом dl блока синхронизации 6 и выходом элемента ИЛИ141, входы последнего соединены с выходом С34 модуля МРК и с выходом элемента И142, входы которого связаны с выходом С35 модуля МРК и с выходом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ120 блока 2. Работа триггера 137 аналогична работе триггера 47 в блоке 2. В начале триггер 137 командой С32=1 устанавливается в единичное состояние. Если необходимо заблокировать часть выполняемой программы в зависимости от значения предыдущего вычисления, т.е. от значения сигнала на выходе элемента 120 блока 2 и при С35=1 логическая 1 через элементы ИЛИ141 и И143 перебросит триггер в «0» и работа блока 2 заблокируется на определенное количество тактов, а затем при С34=1 триггер 137 изменит свое состояние и работа блока 2 продолжится. В случае реализации нелинейных алгоритмов без перескока проще организовать контроль работы устройства, когда перескок в программе фиксируется как сбой в работе устройства и проще составлять программу его работы, т.к. не требуется программировать процесс перескока. Реализация вычисления аналогичных нелинейных алгоритмов с использованием перескока, при выполнении программы, позволяет уменьшить число тактов и повысить быстродействие, если это необходимо по технологическим требованиям в работе объекта управления, но при этом усложняется процесс контроля и программирования. Появляется выбор при составлении программы.
Ниже приводится пример частичного ускоренного переноса блоком БУК с учетом функции (1А) для шести разрядов, первая группа из трех разрядов имеет параллельный перенос и вторая группа из трех разрядов так же имеет параллельный перенос, а между этими группами происходит последовательный перенос. Из функции (1А) следует:
формула переноса для первой группы из трех разрядов имеет вид:
формула переноса для второй группы из трех разрядов имеет вид:
Значения цифр, букв и знаков в функциях (1В), (1С) и (1А) аналогичны. Технико-экономический эффект от использования предлагаемого устройства, по сравнению с аналогом и прототипом, заключается в повышении быстродействия при вычислении нелинейных алгоритмов в зависимости от результатов предыдущих вычислений и возможность выбора одного из двух способов реализации нелинейных алгоритмов, а именно «перескоком» или непрерывным выполнением программы, каждый из которых имеет свои преимущества и недостатки, т.е. эффективно адаптироваться, в соответствии с условиями работы объекта управления, а так же в расширении функциональных возможностей за счет вычисления нелинейных алгоритмов в коммутационно- вычислительном блоке, обрабатывающем одноразрядные переменные, независимо от аналогичного процесса в многоканальном операционном блоке, реализующем функции с много разрядными переменными.
1. Патент РФ на изобретение №2616153, Бюл. 11 за 2017 г. (аналог)
2. Патент РФ на изобретение №2685985, Бюл. №12 за 2019 г. (прототип)