RU2110827C1 - Digital microcontroller network - Google Patents
Digital microcontroller network Download PDFInfo
- Publication number
- RU2110827C1 RU2110827C1 RU97102528A RU97102528A RU2110827C1 RU 2110827 C1 RU2110827 C1 RU 2110827C1 RU 97102528 A RU97102528 A RU 97102528A RU 97102528 A RU97102528 A RU 97102528A RU 2110827 C1 RU2110827 C1 RU 2110827C1
- Authority
- RU
- Russia
- Prior art keywords
- input
- output
- inputs
- information
- block
- Prior art date
Links
Images
Landscapes
- Multi Processors (AREA)
Abstract
Description
Изобретение относится к автоматике и вычислительной технике и может найти применение при построении распределенных систем программного управления технологическими процессами, роботами и робототехническими комплексами, а также подсистем логического управления многоуровневых иерархических АСУ и мультипроцессорных систем широкого класса. The invention relates to automation and computer engineering and can find application in the construction of distributed software control systems for technological processes, robots and robotic complexes, as well as logical control subsystems of multi-level hierarchical ACS and wide class multiprocessor systems.
Известно модульное устройство для программного управления и контроля, содержащее блок памяти, счетчик адреса, регистр микроопераций, мультиплексоры адреса и логических условий, два регистра логических условий, два коммутатора, два дешифратора, шифратор, генератор тактовых импульсов, триггеры пуска и управления, демультиплексор, регистр номера, группу элементов ИЛИ, блок элементов ИЛИ, два элемента ИЛИ и два элемента И [1]. A modular device for program control and monitoring is known, comprising a memory unit, an address counter, a microoperation register, address and logical condition multiplexers, two logical condition registers, two switches, two decoders, an encoder, a clock, start and control triggers, a demultiplexer, a register numbers, a group of OR elements, a block of OR elements, two OR elements, and two AND elements [1].
Недостатком этого устройства является значительное число внешних входов и выходов, требуемых для организации взаимодействия с другими аналогичными устройствами, и, следовательно, узкая область его применения. The disadvantage of this device is the significant number of external inputs and outputs required to organize interaction with other similar devices, and, therefore, a narrow scope of its application.
Известно также устройство для программного управления, включающее блок памяти микрокоманд, счетчики адреса и времени задержки, регистр микроопераций, дешифратор направления передачи управления, коммутатор направления приема адреса, триггер режима, шифратор направления приема управления, элемент запрета, шину микроопераций, четыре элемента ИЛИ и два элемента И [2]. A device for program control is also known, including a micro-memory block, address and delay time counters, a micro-operation register, a control transfer direction decoder, an address reception direction switch, a mode trigger, a control reception direction encoder, a prohibition element, a micro-operation bus, four OR two element And [2].
Недостатком указанного устройства является невозможность построения на его основе управляющих систем, обеспечивающих возможность реализации параллельных алгоритмов управления (программ). The disadvantage of this device is the inability to build on its basis control systems that provide the ability to implement parallel control algorithms (programs).
Наиболее близким к предлагаемому является распределенная система для программного управления технологическими процессами, содержащая m • n каналов (модулей), каждый из которых включает блок памяти программ, коммутатор адреса, регистры адреса и команд, мультиплексор логических условий, блоки синхронизации и анализа, буферный запоминающий блок, два блока элементов И и элемент И [3]. Closest to the proposed is a distributed system for technological process control, containing m • n channels (modules), each of which includes a program memory block, an address switch, address and instruction registers, logical condition multiplexer, synchronization and analysis blocks, a buffer storage unit , two blocks of elements AND and element AND [3].
Недостатком этой системы является узкая область применения, связанная с отсутствием возможности согласования моментов (синхронизации) окончания и инициализации групп параллельных участков программ, закрепленных за различными модулями (отсутствие возможности синхронизации параллельных участков программ для широкого спектра применений является недопустимым, поскольку обусловливает возможность одновременного выполнения несовместимых команд (участков)). The disadvantage of this system is the narrow scope associated with the lack of the ability to coordinate the moments (synchronization) of the end and initialization of groups of parallel program sections assigned to different modules (the lack of synchronization of parallel program sections for a wide range of applications is unacceptable, since it makes it possible to simultaneously execute incompatible commands (plots)).
Технической задачей изобретения является расширение области применения системы на основе организации возможности синхронизации завершения параллельных участков программ. An object of the invention is to expand the scope of the system based on the organization of the ability to synchronize the completion of parallel sections of programs.
Техническая задача решается тем, что каждый из m • n модулей дискретной микроконтроллерной сети, содержащий блок памяти программ, блок анализа, регистр-счетчик адреса, регистр команд, коммутатор адреса, мультиплексор логических условий, блок синхронизации, первый и второй блоки элементов И, первый элемент И, причем выход коммутатора адреса соединен с информационным входом регистра-счетчика адреса, выход которого соединен с адресным входом блока памяти программ, выход которого подключен к информационному входу регистра команд, выходы кода логического условия и модифицируемой части адреса которого подключены соответственно к управляющему и первому информационному входам мультиплексора логических условий, второй информационный вход которого является входом логических условий модуля, выход мультиплексора логических условий в объединении с выходом немодифицируемой части адреса регистра команд подключен к первому информационному входу коммутатора адреса, первый и второй управляющие входы которого соединены с выходом признака конца программы регистра команд, выход признака формата команды которого соединен с первым входом первого элемента И, а также с управляющими входами первого и второго блоков элементов И, первый управляющий вход модуля соединен с первым входом блока синхронизации, первый выход которого подключен к второму входу первого элемента И, второй выход блока синхронизации соединен с входом синхронизации регистра команд, операционный выход которого подключен к информационным входам первого и второго блоков элементов И, выход первого блока элементов И является операционным выходом модуля, выход второго блока элементов И в объединении с выходом первого элемента И подключен к первому входу блока анализа, второй и третий входы которого являются соответственно первым и вторым информационными входами модуля, первый и второй информационные выходы блока анализа являются соответственно первым и вторым информационными выходами модуля, дополнительно включает блок управления синхронизацией параллельных участков, триггер, третий и четвертый блоки элементов И, с второго по седьмой элементы И, с первого по третий элементы ИЛИ, причем выход признака конца программы регистра команд подключен к выходу конца операции модуля, к третьему управляющему входу коммутатора адреса и к первому входу первого элемента ИЛИ, выход которого соединен с первым входом второго элемента И, выход которого подключен к второму входу блока синхронизации, третий выход которого соединен с первыми входами третьего и четвертого элементов И, вторые входы которых подключены соответственно к прямому и инверсному выходам триггера, выход третьего элемента И соединен со счетными входами триггера и регистра-счетчика адреса, выход четвертого элемента И соединен с входом синхронизации регистра-счетчика адреса, выход признака передачи управления регистра команд подключен к второму входу первого элемента ИЛИ и к первому входу второго элемента ИЛИ, выход которого соединен с четвертым, пятым и шестым управляющими входами коммутатора адреса, второй и третий информационные входы которого соединены соответственно с входом кода операции модуля и с выходом третьего блока элементов И, выход признака конца параллельного участка регистра команд подключен к информационному входу второго блока элементов И, к третьему входу первого элемента ИЛИ и к второму входу второго элемента ИЛИ, старшие разряды третьего информационного выхода блока анализа соединены с первыми входами третьего и четвертого блоков элементов И, младший разряд третьего информационного выхода блока анализа соединен с первыми входами пятого, шестого и седьмого элементов И и с вторыми входами третьего и четвертого блоков элементов И, первый управляющий выход блока анализа подключен к вторым входам шестого и седьмого элементов И, второй управляющий выход блока анализа подключен к второму входу пятого элемента И, второй управляющий вход модуля соединен с первым входом третьего элемента ИЛИ, второй вход которого подключен к выходу седьмого элемена И, выход третьего элемента ИЛИ подключен к третьему входу блока синхронизации, первый выход которого соединен с вторым входом второго элемента И, выход четвертого блока элементов И подключен к информационному входу блока управления синхронизацией параллельных участков, первый и второй входы синхронизации которого соединены соответственно с выходами шестого и пятого элементов И, первый выход блока управления синхронизацией параллельных участков подключен к третьему входу третьего элемента ИЛИ и к входу установки триггера, второй выход и управляющий вход блока управления синхронизацией параллельных участков являются соответственно выходом состояния модуля и входом настройки модуля. The technical problem is solved in that each of the m • n modules of a discrete microcontroller network, containing a program memory block, an analysis block, an address register counter, a command register, an address switch, a logic condition multiplexer, a synchronization block, the first and second blocks of AND elements, the first element And, and the output of the address switch is connected to the information input of the register-address counter, the output of which is connected to the address input of the program memory block, the output of which is connected to the information input of the command register, the outputs are code the logical condition and the modifiable part of the address are connected respectively to the control and the first information inputs of the logical condition multiplexer, the second information input of which is the input of the logical conditions of the module, the output of the logical condition multiplexer in combination with the output of the unmodifiable part of the command register address is connected to the first information input of the address switch, the first and second control inputs of which are connected to the output of the sign of the end of the program of the command register, the output of from the original command format which is connected to the first input of the first AND element, as well as to the control inputs of the first and second blocks of AND elements, the first control input of the module is connected to the first input of the synchronization block, the first output of which is connected to the second input of the first And element, the second output of the synchronization block connected to the synchronization input of the command register, the operational output of which is connected to the information inputs of the first and second blocks of elements And, the output of the first block of elements And is the operational output of the mode I, the output of the second block of AND elements in combination with the output of the first element AND is connected to the first input of the analysis unit, the second and third inputs of which are the first and second information inputs of the module, the first and second information outputs of the analysis block are the first and second information outputs of the module, respectively additionally includes a control unit for synchronizing parallel sections, a trigger, the third and fourth blocks of AND elements, from the second to the seventh AND elements, from the first to the third OR elements, etc. than the output of the sign of the end of the program of the command register is connected to the output of the end of the operation of the module, to the third control input of the address switch and to the first input of the first OR element, the output of which is connected to the first input of the second AND element, the output of which is connected to the second input of the synchronization unit, the third output of which connected to the first inputs of the third and fourth elements And, the second inputs of which are connected respectively to the direct and inverse outputs of the trigger, the output of the third element And is connected to the counting inputs of the trigger and an address counter register, the output of the fourth AND element is connected to the synchronization input of the address register counter, the output of the command register control transfer attribute is connected to the second input of the first OR element and to the first input of the second OR element, the output of which is connected to the fourth, fifth and sixth control the inputs of the address switch, the second and third information inputs of which are connected respectively with the input of the module operation code and with the output of the third block of AND elements, the output of the sign of the end of the parallel section of the register to the mand is connected to the information input of the second block of AND elements, to the third input of the first OR element and to the second input of the second OR element, the upper bits of the third information output of the analysis unit are connected to the first inputs of the third and fourth blocks of AND elements, the least significant bit of the third information output of the analysis unit is connected with the first inputs of the fifth, sixth and seventh elements And and with the second inputs of the third and fourth blocks of elements And, the first control output of the analysis unit is connected to the second inputs of the sixth and of the seventh AND element, the second control output of the analysis unit is connected to the second input of the fifth AND element, the second control input of the module is connected to the first input of the third OR element, the second input of which is connected to the output of the seventh AND element, the output of the third OR element is connected to the third input of the synchronization unit, the first output of which is connected to the second input of the second element And, the output of the fourth block of elements And is connected to the information input of the control unit synchronization of parallel sections, the first and second inputs are synchronized which are connected respectively with the outputs of the sixth and fifth AND elements, the first output of the parallel section synchronization control unit is connected to the third input of the third OR element and to the trigger installation input, the second output and the control input of the parallel section synchronization control unit are respectively the module status output and the setting input module.
Сущность предлагаемого изобретения состоит в следующем. The essence of the invention is as follows.
Дискретная микроконтроллерная сеть (ДМС) формируется из набора однотипных модулей, объединяемых в матричную структуру, и предназначается для программного (микропрограммного) управления сложными объектами, поведение которых предполагает одновременное развитие и взамодействие множества процессов. Каждый модуль ДМС выполняется в виде СБИС и имеет два входных и два выходных информационных канала, используемых для подключения к другим аналогичным модулям и обмена управляющей информацией. С целью обеспечения возможности идентификации модулей ДМС им присваиваются номера вида I.J, где I и J имеют смысл соответственно номера (кода номера) строки и номера столбца матричной структуры, содержащих данный модуль, "." - символ объединения (конкатенации) кодов. A discrete microcontroller network (VMI) is formed from a set of modules of the same type, combined into a matrix structure, and is intended for program (microprogram) control of complex objects whose behavior involves the simultaneous development and interaction of many processes. Each VHI module is implemented as a VLSI and has two input and two output information channels used to connect to other similar modules and exchange control information. In order to enable identification of VHI modules, they are assigned numbers of the form I.J, where I and J make sense, respectively, of the row number (code) and the column number of the matrix structure containing this module, "." - a symbol of association (concatenation) of codes.
Программа (комплекс программ), реализуемая ДМС, разбивается на множество параллельных и последовательных участков, которые группируются и распределяются между различными модулями. В процессе выполнения выделенных участков программ модули ДМС вырабатывают команды двух типов: операционные (K1), которые передаются непосредственно на вход объекта управления и инициируют исполнение требуемых (микро)операций, и коммуникационные (K2), которые используются для организации взаимодействия различных модулей. Реализация команд типа K2 сводится к формированию и выдаче управляющих сообщений, обеспечивающих инициализацию параллельных или последовательных участков программ или индицирующих завершение выполнения параллельных участков. A program (a set of programs) implemented by VHI is divided into many parallel and sequential sections that are grouped and distributed between different modules. In the process of executing selected program sections, VHI modules generate two types of commands: operating (K1), which are transmitted directly to the input of the control object and initiate the execution of the required (micro) operations, and communication (K2), which are used to organize the interaction of various modules. The implementation of commands of type K2 is reduced to the formation and issuance of control messages that ensure the initialization of parallel or sequential sections of programs or indicate the completion of parallel sections.
Передача сообщений в ДМС осуществляется транзитным способом. Маршруты передачи сообщений являются фиксированными, а выбор направления ретрансляции сообщений на каждом транзитном отрезке маршрута определяется соотношением кода номера приемника K.L, указываемого в адресной части сообщения, и кода номера текущего транзитного модуля I.J. Messages are sent to the VHI in a transit way. Message transmission routes are fixed, and the choice of the direction of relaying messages on each transit section of the route is determined by the ratio of the receiver number code K.L indicated in the address part of the message and the number code of the current transit module I.J.
Подмножество коммуникационных команд К2 включает команды трех следующих подтипов: команды инициализации последовательных участков (передачи управления) (К21), команды инициализации параллельных участков (К22) и команды - квитанции завершения параллельных участков (К23). Реализация команд типов К21 и К22 состоит в выдаче управляющих сообщений, обеспечивающих соответственно запуск последовательного или параллельного участка программы, закрепленного за определенным модулем сети. Адрес начала инициализируемого участка программы указывается в формате сообщения. A subset of the communication commands K2 includes the commands of the following three subtypes: initialization commands for consecutive sections (control transfer) (K21), initialization commands for parallel sections (K22), and commands for receipt of completion of parallel sections (K23). The implementation of commands of types K21 and K22 consists in the issuance of control messages that ensure respectively the launch of a serial or parallel section of the program assigned to a specific network module. The start address of the initialized section of the program is indicated in the message format.
Синхронизация окончания параллельных участков осуществляется на основе предварительной нумерации вершин слияния Vq реализуемых алгоритмов управления (программ) и определения условий синхронизации, а именно указания количества параллельных участков, сходящихся к каждой из вершин слияния Vq (количества ожидаемых событий Wq). Для каждой вершины слияния Vq задается ведущий модуль M(Vq), в качестве которого используется один из модулей, за которым закреплен параллельный участок, завершающийся вершиной Vq. Остальные модули по отношению к указанной вершине рассматриваются как ведомые. The synchronization of the end of parallel sections is carried out on the basis of preliminary numbering of the merging vertices Vq of the implemented control algorithms (programs) and determining the synchronization conditions, namely, the number of parallel sections converging to each of the merging vertices Vq (the number of expected events Wq). For each vertex of the merge Vq, a leading module M (Vq) is specified, which is used as one of the modules, for which a parallel section is fixed, ending with the vertex Vq. The remaining modules with respect to the indicated vertex are considered as slaves.
Модули ДМС (независимо от присвоенного им статуса: ведущий или ведомый) после окончания выполнения соответствующих параллельных участков вырабатывают квитанции К23, включающие номер вершины слияния Vq, соответствующей завершенным участкам, и переходят в состояние ожидания. Квинтанции завершения К23 передаются ведущему модулю M(Vq). Модуль M(Vq) принимает квитанции К23 от других модулей и по мере их поступления уменьшает величину W'q - текущее количество ожидаемых событий. В момент поступления последней квинтации и соответственно окончания всех требуемых параллельных участков величина W'q принимает нулевое значение, модуль M(Vq) выходит из состояния ожидания, восстанавливает исходное значение W'q и возобновляет выполнение закрепленных за ним участков программы. VHI modules (regardless of the status assigned to them: master or slave) after completing the execution of the corresponding parallel sections, generate K23 receipts, including the number of the merge vertex Vq, corresponding to the completed sections, and go to the standby state. Quintents of completion K23 are transmitted to the master module M (Vq). Module M (Vq) receives K23 receipts from other modules and, as they arrive, decreases W'q - the current number of expected events. At the moment of the last quinting and, accordingly, the end of all the required parallel sections, the value of W'q takes a zero value, the module M (Vq) leaves the standby state, restores the original value of W'q, and resumes the execution of the program sections assigned to it.
На фиг. 1 изображена функциональная схема модуля ДМС; на фиг. 2 - функциональная схема блока анализа; на фиг. 3 - функицональная схема блока управления синхронизацией параллельных участков; на фиг. 4 - функциональная схема блока памяти сообщений; на фиг. 5 -функциональная схема блока выбора направления передачи сообщения; на фиг. 6 - функциональная схема блока синхронизации; на фиг. 7 - функциональная схема распределителя импульсов, синхронизирующего работу блока анализа; на фиг. 8 - функциональная схема генератора константы; на фиг. 9 - форматы (микро)команд, реализуемые модулями ДМС; на фиг. 10 - структурная схема ДМС; на фиг. 11 - временные диаграммы работы блока управления синхронизацией параллельных участков. In FIG. 1 shows a functional diagram of the LCA module; in FIG. 2 is a functional block diagram of the analysis; in FIG. 3 - functional diagram of the control unit synchronization of parallel sections; in FIG. 4 is a functional diagram of a message memory block; in FIG. 5 is a functional block diagram of the choice of the direction of transmission of the message; in FIG. 6 is a functional block diagram of a synchronization block; in FIG. 7 is a functional diagram of a pulse distributor synchronizing the operation of an analysis unit; in FIG. 8 is a functional diagram of a constant generator; in FIG. 9 - formats of (micro) commands implemented by the VHI modules; in FIG. 10 is a structural diagram of VHI; in FIG. 11 is a timing diagram of the operation of the control unit synchronization of parallel sections.
Модуль дискретной микроконтроллерной сети (фиг. 1) содержит блок 1 памяти программ, блок 2 анализа, регистр-счетчик 4 адреса, регистр 5 команд, коммутатор 6 адреса, мультиплексор 7 логических условий, блок 8 синхронизации, первый 10 и второй 11 блоки элементов И, первый элемент И 14, причем выход коммутатора 6 адреса соединен с информационным входом регистра-счетчика 4 адреса, выход которого соединен с адресным входом блока 1 памяти программ, выход которого подключен к информационному входу регистра 5 команд, выходы 5.1 кода логического условия и 5.2 модифицируемой части адреса которого подключены соотвественно к управляющему и первому информационному входам мультиплексора 7 логических условий, второй информационный вход которого является входом 26 логических условий модуля, выход мультиплексора 7 логических условий в объединении с выходом 5.3 немодифицируемой части адреса регистра 5 команд подключен к первому информационному входу коммутатора 6 адреса, первый и второй управляющие входы которого соединены с выходом 5.8 признака конца программы регистра 5 команд, выход 5.5 признака формата команды которого соединен с первым входом элемента И 14, а также с управляющими входами блоков элементов И 10 и 11, первый управляющий вход 25 модуля соединен с первым входом блока 8 синхронизации, первый выход которого подключен к второму входу элемента И 14, второй выход блока 8 синхронизации соединен с входом синхронизации регистра 5 команд, операционный выход 5.4 которого подключен к информационным входам блоков элементов И 10 и 11, выход блока элементов И 10 является операционным выходом 27 модуля, выход блока элементов И 11 в объединении с выходом элемента И 14 подключен к первому входу блока 2 анализа, второй и третий входы которого являются соответственно первым 28 и вторым 29 информационными входами модуля, первый и второй информационные выходы блока 2 анализа являются соответственно первым 30 и вторым 31 информационными выходами модуля, и дополнительно включает блок 3 управления синхронизацией параллельных участков (БУСПУ), триггер 9, третий 12 и четвертый 13 блоки элементов И, второй 15, седьмой 16, шестой 17, пятый 18, третий 19.1 и четвертый 19.2 элементы И, третий 20, первый 21 и второй 22 элементы ИЛИ, причем выход 5.8 признака конца программы регистра 5 команд подключен к выходу 34 конца операции модуля, к третьему управляющему входу коммутатора 6 адреса и к первому входу элемента ИЛИ 21, выход которого соединен с первым входом элемента И 15, вхыод которого подключен к второму входу блока 8 синхронизации, третй выход которого соединен с первыми входами элементов И 19.1 и 19.2, вторые входы которых подключены соответственно к прямому и инверсному выходам триггера 9, выход элемента И 19.1 соединен со счетными входами триггера 9 и регистра-счетчика 4 адреса, выход элемента И 19.2 соединен с входом синхронизации регистра-счетчика 4 адреса, выход 5.6 признака передачи управления регистра 5 команд подключен к второму входу элемента ИЛИ 21 и к первому входу элемента ИЛИ 22, выход которого соединен с четвертым, пятым и шестым упарвляющими входами коммутатора 6 адреса, второй и третий информационные входы которого соединены соответственно с входом 23 кода операции модуля и с выходом блока элементов И 12, выход 5.7 признака конца параллельного участка регистра 5 команд подключен к информационному входу блока элементов И 11, к третьему входу элемента ИЛИ 21 и к второму входу элемента ИЛИ 22, старшие разряды третьего информационного выхода блока 2 анализа соединены с первыми входами блоков элементов И 12 и 13, младший разряд третьего информационного выхода блока 2 анализа соединен с первыми входами элементов И 16, 17 и 18 и с вторыми входами блоков элементов И 12 и 13, первый управляющий выход блока 2 анализа подключен к вторым входам элементов И 16 и 17, второй управляющий выход блока 2 анализа подключен к второму входу элемента И 18, второй управляющий вход 24 модуля соединен с первым входом элемента ИЛИ 20, второй вход которого подключен к выходу элемента И 16, выход элемента ИЛИ 20 подключен к третьему входу блока 8 синхронизации, первый выход которого соединен с вторым входом элемента И 15, выход блока элементов И 13 подключен к информационному входу БУСПУ 3, первый и второй входы синхронизации которого соединены соответственно с выходами элементов И 17 и 18, первый выход БУСПУ 3 подключен к третьему входу элемента ИЛИ 20 и к входу установки триггера 9, второй выход и управляющий вход БУСПУ 3 являются соответственно выходом 33 состояния модуля и входом 32 настройки модуля. The discrete microcontroller network module (Fig. 1) contains a
Блок анализа (фиг. 2) предназначен для анализа управляющих сообщений, определения направлений их передачи и выдачи в устанавливаемых в ходе анализа направлениях и содержит блоки памяти сообщений 35 - 37, мультиплексор 38, генератор 39 константы, блок 40 выбора направления передачи сообщения, триггер 41 управления, распределитель 42 импульсов, счетчик 43, дешифратор 44, регистр 45, демультиплексоры 46 и 47, блок элементов И 49, элемент ИЛИ 50, элемент И 51, причем управляющие выходы памяти сообщений 35, 36 и 37 подключены к выходам элемента ИЛИ 50, выход которого соединен с входом установки триггера 41 управления и инверсным входом элемента И 51, выход которого соединен с входом сброса триггера 41 управления, прямой выход которого соединен с входом распределителя 42 импульсов, первый выход которого подключен к входу счетчика 43, второй выход распределителя 42 импульсов соединен с выходом синхронизации регистра 45, третий выход распределителя 42 импульсов соединен с информационным входом демультиплексора 47, выход счетчика 43 соединен с адресным входом мультиплексора 38 и с входом дешифратора 44, выходы с первого по третий которого подключены к управляющим входам блоков памяти сообщений 35-37 соответственно, информационные входы и входы синхронизации записи которых соединены с первым-третьим входами блока анализа соответственно, информационные выходы блоков памяти сообщений 35, 36 и 37 подключены к первому, второму и третьему информационным входам мультиплексора 38 соответственно, выход которого соединен с информационным входом регистра 45, первый выход которого подключен к информационному входу демультиплексора 46 и к первому входу блока 40 выбора направления передачи сообщения, второй вход которого соединен с выходом генератора 39 константы, первый выход блока 40 выбора направления передачи сообщения подключен к адресным входам демультиплексора 46 и 47, а второй выход соединен с первым входом блока элементов И 49, выход которого является третьем информационным выходом блока анализа, второй выход регистра 45 соединен с вторым входом блока элементов И 49 и с информационным входом демультиплексора 46, первый и второй выходы которого подключены соответственно к первому и второму информационным выходом блока анализа, а также дополнительно введенные триггер 48 и элементы И 52.1, 52.2, 53.1, 53.2, причем четвертый выход распределителя 42 импульсов соединен с выходом установки триггера 48, третий выход распределителя 42 импульсов подключен к входам сдвига блоков памяти сообщений 35-37 и к первому входу элемента И 52.1, выход которого является первым управляющим выходом блока анализа, пятый выход распределителя 42 импульсов соединен с прямым входом элемента И 51 и с первым входом элемента И 52.2, выход которого является вторым управляющим выходом блока анализа, пятый выход распределителя 42 импульсов соединен со счетным входом триггера 48, прямой выход которого подключен к управляющему входу генератора 39 константы, информационный вход которого является входом 54 идентификации модуля, второй выход блока 40 выбора направления передачи сообщения соединен с вторыми входами элементов И 52.1 и 52.2 и с инверсными входами элементов И 53.1 и 53.2, прямые входы которых подключены к первому и второму выходам демультиплексора 47 соответственно, выходы элементов И 53.1 и 53.2 соединены с первым и вторым информационными выходами блока анализа соответственно. The analysis unit (Fig. 2) is designed to analyze control messages, determine the directions of their transmission and output in the directions established during the analysis, and contains message memory blocks 35 - 37, a
Блок управления синхронизацией параллельных участков (БУСПУ) (фиг. 3) предназначен для приема квитанций завершения параллельных участков программ, модификации условий синхронизации, соответствующих различным вершинам слияния, и формирования сигнала запуска модуля при выполнении условий синхронизации параллельных участков и содержит блоки 55 постоянной и 56 оперативной памяти условий синхронизации (БППУС и БОПУС), формирователь 57 адреса, триггер 58 режима, генератор 59 настройки, триггер 60 готовности, счетчик 61, коммутатора 62 и 63, элементы И 64 и 65, элементы ИЛИ 66 и 67, одновибраторы 68, 69 и 70, причем управляющий вход БУСПУ подключен к входу сброса триггера 60 готовности и к входу одновибратора 68, выход которого соединен с входом сброса счетчика 61 и с первым входом элемента ИЛИ 67, выход которого подключен к счетному входу триггера 58 режима, прямой выход которого подключен к прямому и инверсному управляющим входам коммутатора 62 и к первому, второму и третьему управляющим входам коммутатора 63, выход которого подключен к информационному входу БОПУС 56, выход которого соединен с информационным входом счетчика 61, инверсный выход которого соединен с первым входом элемента И 64, прямой выход счетчика 61 соединен с первым информационным входом коммутатора 63 и первым информационным входом коммутатора 62, второй информационный вход которого соединен с выходом формирователя 57 адреса, вход которого является информационным входом БУСПУ, выход коммутатора 62 соединен с адресным входом БОПУС 56 и адресным входом БППУС 55, старшие разряды выхода которого подключены к второму и третьему информационным входам коммутатора 63, а младший разряд (выход) 55.1 соединен с первым входом элемента И 65 и информационным (D) входом триггера 60 готовности, прямой выход которого подключен к второму выходу БУСПУ и к второму входу элемента И 64, выход которого подключен к четвертому и пятому управляющим входам коммутатора 63 и к входу одновибратора 69, выход которого является первым выходом БУСПУ, первый вход синхронизации БУСПУ соединен с выходом синхронизации счетчика 61 и с выходом одновибратора 70, выход которого подключен к вычитающему входу счетчика 61, второй вход синхронизации БУСПУ соединен с первым входом элемента ИЛИ 66, выход которого подключен к входу записи БОПУС 56, инверсный выход триггера 58 режима соединен с входом генератора 59 настройки, первый выход которого соединен с суммирующим входом счетчика 61, второй выход генератора 59 настройки подключен к второму входу элемента ИЛИ 66, к выходу синхронизации триггера 60 готовности и к второму входу элемента И 65, выход которого соединен с вторым входом элемента ИЛИ 67, при этом триггер 60, одновибратор 69 и счетчик 61 срабатывают по фронту, а триггер 58 и одновибраторы 69 и 70 - по срезу управляющих импульсов. The parallel sections synchronization control unit (BUSPU) (Fig. 3) is designed to receive receipts for completing parallel sections of programs, modify synchronization conditions corresponding to different merging vertices, and generate a module start signal when synchronization conditions are fulfilled for parallel sections and contains 55 constant and 56 operational blocks memory of synchronization conditions (BPPUS and BOPUS),
Блок памяти сообщений (БПС) (фиг. 4) служит для приема, хранения и выдачи управляющих сообщений в порядке их поступления и содержит регистры 71.1-71. K (где K - максимальная длина очереди сообщений), блоки элементов ИЛИ 72.1-72. K-1, элементы И 73.1-73.K, 74.1-74.K, элементы ИЛИ 75.1-75.K, демультиплекстор 76, элемент И 77, элемент И-НЕ 78, причем информационный вход демультиплестора 76 является информационным входом БПС, выходы с первого по (K-1)-й демультиплексора 76 соединены с первыми входами блоков элементов ИЛИ 72.1-72. K-1 соответственно, вторые входы которых подключены к прямым выходам регистров 71.2-71.K соответственно, выходы блоков элементов ИЛИ 72.1-72. K-1 подключены к информационным входам регистров 71.1-71.K-1 соответственно, K-й выход демультиплекстора 76 подключен к информационному входу регистра 71.K, вход синхронизации записи БПС подключен к первым входам элементов И 74.1-74.K, выходы которых соединены с первыми входами элементов ИЛИ 75.1-75. K соответственно, выходы которых соединены с входами синхронизации регистров 71.1-71.K соответственно, инверсные выходы которых подключены к входам элементов И 73.1-73.K соответственно, выходы которых соединены с адресным входом демультиплексора 76, с вторыми входами элементов И 74.1-74.K соответственно, а также с входами элемента И-НЕ 78, выход которого является управляющим выходом БПС, первый и второй входы элемента И 77 являются соответственно входом сдвига и управляющим входом БПС, выход элемента И 77 подключен к вторым входам элементов ИЛИ 75.1-75.K и к управляющему входу демультиплекстора 76, прямой выход регистра 71.1 является информационным выходом БПС. The message memory block (BPS) (Fig. 4) is used to receive, store and issue control messages in the order they are received and contains registers 71.1-71. K (where K is the maximum length of the message queue), blocks of elements OR 72.1-72. K-1, AND elements 73.1-73.K, 74.1-74.K, OR elements 75.1-75.K,
Блок выбора направления передачи сообщения (БВНПС) (фиг. 5) служит для формирования кода направления передачи сообщений и содержит схемы сравнения 79.1 и 79.2, элемент И 80 и неполный дешифратор 81, причем первые и вторые входы схем сравнения 79.1 и 79.2 подключены соответственно к второму и первому входам БВНПС, а выходы соединены с входами дешифратора 81, выход которого является первым выходом блока, выходы равенства схем сравнения 79.1 и 79.2 подключены соответственно к первому и второму входам элемента И 80, выход которого является вторым выходом БВНПС. The block for selecting the direction of message transmission (BVNPS) (Fig. 5) is used to generate a code for the direction of message transmission and contains comparison schemes 79.1 and 79.2,
Блок синхронизации (БС) (фиг. 6) предназначен для формирования трех сдвинутых относительно друг друга импульсных последовательностей, синхронизирующих работу различных узлов модуля, и включает триггер 82, генератор 83 импульсов, счетчик 84, дешифратор 85 и элемент ИЛИ 86, причем первый вход элемента ИЛИ 86 является первый входом БС, выход элемента ИЛИ 86 соединен с входом сброса триггера 82, вход установки которого является третьим входом БС, прямой выход триггера 82 подключен к управляющему входу генератора 83 импульсов, выход которого подключен к управляющему входу дешифратора 85 и к счетном у входу счетчика 84, выход которого соединены с соответствующими информационными входами дешифратора 85, выходы с первого по третий которого являются выходами с третьего по первый БС соответственно, а второй вход элемента ИЛИ 86 дополнительно является вторым входом БС. The synchronization unit (BS) (Fig. 6) is designed to form three shifted relative to each other pulse sequences that synchronize the operation of various nodes of the module, and includes a
Распределитель импульсов (РИ) (фиг. 7) предназначен для формирования пяти сдвинутых относительно друг друга импульсных последовательностей, синхронизирующих работу элементов блока анализа и блока управления синхронизацией параллельных участков (в рабочем режиме), и содержит счетчик 87, дешифратор 88 и генератор 89 импульсов, вход которого является входом РИ, а выход подключен к управляющему входу дешифратора 88 и счетному входу счетчика 87, выходы которого соединены с соответствующими информационными входами дешифратора 88, первый, второй и третий выходы которого являются соответственно первым, вторым и пятым выходами РИ, четвертый и пятый выходы дешифратора 88 дополнительно являются четвертым и третьим выходами РИ соответственно. The pulse distributor (RI) (Fig. 7) is designed to form five shifted relative to each other pulse sequences that synchronize the operation of the elements of the analysis unit and the control unit synchronization of parallel sections (in operating mode), and contains a
Генератор константы (ГК) (фиг. 8) реализует функции приема, хранения и выдачи кода I.J номера модуля и включает регистры 90.1, 90.2 и блоки элементов И 91.1 и 92.2, причем входы регистров 90.1 и 90.2 образуют информационный вход ГК, а выходы подключены к информационным входам блоков элементов И 91.1 и 91.2 соответственно, управляющие входы которых соединены с управляющим входом ГК, а выходы образуют выход ГК. The constant generator (GC) (Fig. 8) implements the functions of receiving, storing and issuing the IJ code of the module number and includes registers 90.1, 90.2 and blocks of elements And 91.1 and 92.2, and the inputs of the registers 90.1 and 90.2 form the information input of the GC, and the outputs are connected to information inputs of blocks of elements AND 91.1 and 91.2 respectively, the control inputs of which are connected to the control input of the Civil Code, and the outputs form the output of the Civil Code.
Назначение элементов дополнительно введенного блока управления синхронизацией параллельных участков (фиг. 3) состоит в следующем. The purpose of the elements of the additionally introduced control unit synchronization of parallel sections (Fig. 3) is as follows.
Блок 55 постоянной памяти условий синхронизации (БППУС) служит для постоянного хранения и выдачи кодов исходных условий синхронизации Wq, соответствующих различным вершинам слияния Vq, для которых текущий модуль является ведущим. Информация на выходе блока 55 появляется сразу после установления на его адресном входе соответствующего адреса.
Блок 56 оперативной памяти условий синхронизации (БОПУС) служит для хранения, выдачи и приема кодов текущих условий синхронизации W'q, соответствующих вершинам слияния параллельных участков Vq, закрепленным за данным модулем. Информация на выходе блока 56 появляется сразу после установления на его адресном входе соответствующего адреса, а запись модифицированных условий синхронизации в блок 56 осуществляется в момент подачи на вход записи W импульса синхронизации.
Формирователь 57 адреса предназначен для преобразования кода номера вершины слияния Vq в адрес A(Vq) ячейки БОПУС 56 и ячейки БППУС 55, в которых размещены коды соответственно текущего W'q и исходного Wq условий синхронизации, соответствующих вершине Vq. Формирователь 57 может выполняться на основе программируемой логической матрицы (ПЛМ).
Триггер 58 режима служит для индикации текущего режима работы блока управления синхронизацией параллельных участков (устройства) и управления работы генератора 59 и коммутаторов 62, 63. Триггер 58 переключается в новое состояние по срезу (заднему фронту) импульса на его входе. The
Генератор 59 настройки обеспечивает формирование двух сдвинутых относительно друг друга во времени импульсных последовательностей a1 и 2a, синхронизирующих работу блока управления синхронизацией параллельных участков в режиме настройки (перезаписи информации из блока 55 в блок 56). The
Триггер 60 готовности служит для формирования сигнала окончания процесса настройки устройства (сигнала готовности), а также блокировки элемента И 64 и срабатывает по положительному перепаду уровня сигнала на его выходе синхронизации (C). The ready trigger 60 serves to generate a signal for the end of the device setup process (ready signal), as well as blocking the And 64 element and is triggered by a positive difference in the signal level at its synchronization output (C).
Счетчик 61 реализует две следующие функции:
а) обеспечивает формирование адреса в ходе перезаписи информации из блока 55 в блок 56 (в режиме настройки устройства);
б) обеспечивает формирование кодов модифицированных условий синхронизации при поступлении квитанций окончания параллельных участков от различных модулей ДМС (в рабочем режиме).Counter 61 implements the following two functions:
a) provides the formation of the address during the rewriting of information from
b) provides the formation of codes of modified synchronization conditions upon receipt of receipts for the end of parallel sections from various VHI modules (in operating mode).
Модифицированное условие синхронизации образуется в результате считывания из блока 56 текущего кода W'q и уменьшения его на единицу . Счетчик 61 является реверсивным, работает в режиме приема информации в параллельном коде, в режиме прямого счета (+1) и в режиме обратного счета (-1) и срабатывает по фронту соответствующих импульсов синхронизации.The modified synchronization condition is formed as a result of reading from the
Коммутатор 62 служит для коммутации адресных входов блоков 55 и 56 либо с прямым выходом счетчика 61 (режим настройки), либо с выходом формирователя 57 адреса (рабочий режим) в зависимости от состояния триггера 58 режима. The
Элемент И 64 предназначен для формирования сигнала, подтверждающего окончание требуемых параллельных участков, т.е. выполнение условия синхронизации .Element And 64 is designed to generate a signal confirming the end of the required parallel sections, i.e. meeting the synchronization condition .
Коммутатор 63 служит для коммутации информационного входа блока 56 либо с прямым выходом счетчика 61 (рабочий режим), либо с выходом блока 55 (режим настройки или рабочий режим: восстановление кода исходного условия синхронизации Wq в блоке 56 при окончании всех требуемых параллельных участков) в зависимости от состояния триггера 58 и уровня сигнала на выходе элемента И 64. The
Элемент И 65 предназначен для формирования сигнала переключения триггера 58 при завершении работы устройства в режиме настройки (перезаписи кодов условий синхронизации из блока 55 в блок 56). Факт окончания процесса настройки отмечается появлением единичного признака на специальном выходе 55.1 блока 55. Element And 65 is designed to generate a
Одновибратор 68 служит для формирования импульса l начальной установки счетчика 61 и переключения триггера 58 режима и вырабатывает импульс по отрицательному перепаду уровня сигнала на его входе. The one-
Элемент ИЛИ 66 служит для формирования импульса синхронизации записи информации в блок 56. The
Элемент ИЛИ 67 обеспечивает объединение сигналов переключения триггера 58 режима, поступающих с выходов элемента И 65 и одновибратора 68. The
Одновибратор 69 обеспечивает формирование импульса пуска модуля при выполнении условия синхронизации параллельных участков и срабатывает по положительному перепаду уровня сигнала на его входе.The one-
Одновибратор 70 служит для формирования импульса, инициирующего уменьшение содержимого счетчика 61 на единицу, и срабатывает по отрицательному перепаду уровня сигнала на его входе. The one-shot 70 is used to generate a pulse that initiates a decrease in the contents of the counter 61 per unit, and is triggered by a negative difference in signal level at its input.
Дискретная микроконтроллерная сеть (ДМС) состоит из m•n однотипных модулей, объединенных в матричную структуру (фиг. 10), причем первый информационный вход 28 модуля i.j, , соединен с вторым информационным выходом 31 модуля i, j-1, а первый информационный вход 28 модуля i.1 подключен к второму информационному выходу 31 модуля i.n, второй информационный вход 29 модуля k.1, , соединен с первым информационным выходом 30 модуля k+1. l, а второй информационный вход 29 модуля m.l подключен к первому информационному выходу 30 модуля 1.l.A discrete microcontroller network (VMI) consists of m • n modules of the same type, combined into a matrix structure (Fig. 10), the
Учитывая идентичность модулей, образующих ДМС, работу сети рассмотрим на примере функционирования одного из модулей. Given the identity of the modules that form the VHI, we will consider the network operation using the example of the functioning of one of the modules.
Первоначально (фиг. 1-8) регистры 71.1-71. K блоков памяти сообщений 35-37, счетчики 43, 84 и 87, триггеры 9, 41, 48, 82 находятся в нулевом состоянии, триггеры 58 и 60 - в единичном состоянии, счетчик 61 - в состоянии "11...1", все разряды регистра 5 за исключением разряда 5.8, установленного в состояние логической единицы, находятся в состоянии логического нуля, а состояние регистра-счетчика 4, регистра 45, регистров 90.1 и 90.2 не определено (цепи начальной установки на фиг. 1-8 условий не показаны). В блоке 1 (в ячейках с ненулевыми адресами) размещены команды форматов, представленных на фиг. 9, образующие параллельные и последовательные участки программ, закрепленные за рассматриваемым модулем. В ячейках блока 55 размещены коды условий синхронизации (коды Wq) вершин слияния Vq, для которых текущий модуль является ведущим. Состояние ячеек блока 56 не определено (произвольно). Initially (Fig. 1-8) registers 71.1-71. K message memory blocks 35-37, counters 43, 84 and 87, triggers 9, 41, 48, 82 are in the zero state, triggers 58 and 60 are in the single state, counter 61 is in the state "11 ... 1", all bits of register 5 with the exception of bit 5.8, set to a logical unit state, are in a state of logical zero, and the state of register-counter 4, register 45, registers 90.1 and 90.2 is not defined (initial setting circuits in Fig. 1-8 of the conditions are not shown ) In block 1 (in cells with non-zero addresses), the command of the formats shown in FIG. 9, forming parallel and sequential sections of programs assigned to the module under consideration. In the cells of
Функционирование ДМС начинается с настройки ее модулей, которая реализуется устройством управления верхнего уровня (УУВУ), например центральным процессором, и включает два этапа. На первом этапе настройки осуществляется установка (загрузка) номеров модулей матричной структуры, на втором - перезапись информации из ячеек блоков 55 в соответствующие ячейки блоков 56. The functioning of the VHI begins with the configuration of its modules, which is implemented by a top-level control device (UWUU), for example, a central processor, and includes two stages. At the first stage of setup, installation (loading) of the numbers of the modules of the matrix structure is carried out, at the second stage, information is transferred from the cells of
Этап 1. Код номера текущего модуля I.J формируется УУВУ и в сопровождении импульса синхронизации подается на вход 54 модуля (фиг. 2). С входа 54 код номера модуля I.J передается на информационный вход генератора 39 констант и далее код номера строки модуля I поступает (фиг. 8) на информационный вход регистра 90.1, а код номера столбца J - на информационный вход регистра 90.2. Импульс синхронизации с информационного выхода генератора 39 поступает на входы синхронизации регистров 90.1, 90.2 и обеспечивает установку (запись) кода I.J. Аналогичным образом осуществляется установка номеров других модулей.
Этап 2. Реализация данного этапа настройки начинается с приходом на вход 32 модуля импульса настройки n (фиг. 1). Импульс n передается на управляющий вход блока 3 (БУСПУ) и, поступая (фиг. 3) на вход сброса триггера 60, переключает его в нулевое состояние. Нулевой сигнал с прямого выхода триггера 60 поступает на выход 33 модуля и индицирует тем самым начало процесса настройки. Этот же сигнал поступает на второй вход элемента И 64 и формирует (подтверждает) на его выходе сигнал логического нуля. Stage 2. The implementation of this tuning phase begins with the arrival of
Одновременно импульс настройки n с управляющего входа БУСПУ поступает на вход одновибратора 68 и задним фронтом (срезом) возбуждает на его выходе импульс l. Импульс l распространяется на вход сброса счетчика 61 и устанавливает его в нулевое состояние. В то же время импульс l с выхода одновибратора 68 через элемент ИЛИ 67 проходит на счетный вход триггера 58 и срезом переводит его в состояние логического нуля, соответствующее режиму настройки модуля. Нулевой сигнал с прямого выхода триггера 58 поступает на управляющие входы коммутаторов 62 и 63 и коммутирует выход первого с прямым выходом счетчика 61, а выход второго - с выходом блока 55. Одновременно единичный сигнал с инверсного выхода триггера 58 поступает на вход генератора 59 и разрешает формирование на его выходах двух сдвинутых относительно друг друга импульсных последовательностей a1 и a2. At the same time, the tuning pulse n from the control input of the BUSPU is fed to the input of the single-
Первый импульс a1 с первого выхода генератора 59 поступает на суммирующий вход счетчика 61 и фронтом устанавливает его в состояние "00...01", т.е. инициирует операцию прямого счета (инкремента). Код "00...01" с прямого выхода счетчика 61 через коммутатор 62 передается на адресные входы блоков 55 и 56. Код количества ожидаемых событий Wr, зафиксированный в ячейке блока 55 с адресом "00...01" и соответствующий одной из вершин слияния Vr, закрепленных за текущим модулем, появляется на выходе блока 55 и через коммутатор 63 передается на информационный вход блока 56. Одновременно на младшем выходе (разряде выхода) 55.1 блока 55 формируется сигнал-метка Z, определяющий момент окончания процесса настройки текущего модуля. The first pulse a1 from the first output of the
Первоначально допустим, что Z = "0". Initially, let Z = "0".
Нулевой сигнал с выхода 55.1 блока 55 закрывает элемент И 65, а также поступает на D-вход триггера 60. Импульс a2 с второго выхода генератора 59 подается на вход синхронизации триггера 60 и подтверждает его нулевое состояние. Одновременно импульс a2 через элемент ИЛИ 66 проходит на вход записи блока 56 и обеспечивает запись кода Wr в ячейку с адресом "00...01". Поскольку элемент 65 заблокирован нулевым сигналом с выхода 55.1 блока 55, на его выходе сохраняется нулевой уровень сигнала, что исключает срабатывание триггера 58 и переключение его в единичное состояние. С появлением на выходе генератора 59 очередного импульса a1 содержимое счетчика 61 вновь увеличивается на единицу; код "00...010" с прямого выхода счетчика 61 через коммутатор 62 проходит на адресные входы блоков 55 и 56, после чего осуществляется перезапись информации из ячейки с адресом "00...010" блока 55 в соответствующую ячейку блока 56. Более аналогично производится перезапись информации по адресу "00...011, "00...0100" и т.д. The zero signal from the output 55.1 of
Если Z = "1", т.е. перезаписываемое в текущем такте слово является последним, то единичный сигнал с выхода 55.1 блока 55 открывает элемент 65 и, кроме того, поступает на D-вход триггера 60. Импульс а2 с второго выхода генератора 59 поступает на вход синхронизации триггера 60 и фронтом устанавливает данный триггер в единичное состояние. Сигнал логической единицы с прямого выхода триггера 60 передается на выход 33 модуля и сообщает УУВУ о завершении процесса настройки. Этот же сигнал открывает элемент 64. If Z = "1", i.e. the word being rewritten in the current clock cycle is the last one, then a single signal from the output 55.1 of
Одновременно импульс a2 с второго выхода генератора 59 через элемент ИЛИ 66 проходит на вход записи блока 56 и обеспечивает запись последнего кода Wr, считываемого из блока 55 и поступающего на информационный вход блока 56 через коммутатор 63. Кроме того, импульс a2 через открытый элемент 65 и элемент ИЛИ 67 подается на счетный вход триггера 58 и срезом возвращает его в исходное состояние (состояние логической единицы), соответствующее рабочему режиму рассматриваемого блока. Единичный сигнал с прямого выхода триггера 58 поступает на управляющие входы коммутаторов 62 и 63 и настраивает коммутатор 62 на прием информации с выхода формирователя 57, а коммутатор 63 -на прием информации с прямого выхода счетчика 61 или с выхода блока 55 в зависимости от уровня потенциала на выходе элемента 64. Нулевой сигнал с инверсного выхода триггера 58 выключает генератор 59, и модуль выходит из режима настройки. Временные диаграммы работы блока управления синхронизацией параллельных участков в режиме настройки показаны на фиг. 11. Процесс настройки микроконтроллерной сети в целом завершается в момент появления единичных сигналов на выходах 33 всех (или определенной группы требуемых) модулей. At the same time, the pulse a2 from the second output of the
После реализации режима настройки сети УУВУ формирует код операции и подает указанный код на вход 23 модуля, за которым закреплен начальный последовательный участок, определяя тем самым начальный адрес выполняемой программы (фиг. 1). After implementing the network setup mode, the UUVU generates an operation code and submits the specified code to the module input 23, to which an initial sequential section is assigned, thereby determining the initial address of the program being executed (Fig. 1).
Код операции (КОП) с входа 23 модуля поступает на второй информационный вход коммутатора 6 и, так как на его втором и пятом управляющих входах присутствуют соответственно единичный и нулевой сигналы (обусловленные нулевым состоянием разрядов 5.6 и 5.7, а также единичным состоянием разряда 5.8 регистра 5), передается на информационный вход регистра-счетчика 4. Одновременно на вход 24 модуля подается импульс "Пуск". Импульс "Пуск" через элемент ИЛИ 20 поступает (фиг. 6) на вход установки триггера 82 и переключает его в единичное состояние. Единичный сигнал с прямого выхода триггера 82 поступает на управляющий вход генератора 83 и разрешает формирование на его выходе импульсной последовательности m. The operation code (CPC) from the input 23 of the module is supplied to the second information input of the switch 6 and, since its second and fifth control inputs contain respectively the single and zero signals (due to the zero state of bits 5.6 and 5.7, as well as to the single state of the discharge 5.8 of register 5 ), is transmitted to the information input of the register-counter 4. At the same time, the Start pulse is applied to the input 24 of the module. The “Start” impulse through the
Первый импульс с выхода генератора 83 поступает на счетный выход счетчика 84 и управляющий вход генератора 85. Счетчик 84 устанавливается в состояние "01". Код "01" с выхода счетчика 84 поступает на информационные входы дешифратора 85 и возбуждает единичный сигнал на его первом выходе. С исчезновением единичного сигнала на выходе генератора 83 на выходе дешифратора 85 восстанавливается нулевой уровень сигнала. Второй импульс с выхода генератора 83 переключает счетчик в состояние "10" и обусловливает появление единичного уровня сигнала на втором выходе дешифратора 85. Аналогично после появления на выходе генератора 83 третьего импульса счетчик 84 переводится в состояние "11" и обеспечивает образование единичного уровня сигнала на третьем выходе дешифратора 85. С приходом трех очередных импульсов последовательности m процесс возбуждения единичных сигналов на выходах дешифратора 85 повторяется. The first pulse from the output of the
Таким образом, на выходах дешифратора 85 (блока синхронизации) начинается формирование трех сдвинутых относительно друг друга импульсных последовательностей П1, П2 и П3. Thus, at the outputs of the decoder 85 (synchronization unit), the formation of three pulsed sequences P1, P2 and P3 shifted relative to each other begins.
Импульс П1 с третьего выхода блока 8 подается на первые входы элементов И 19.1 и 19.2, на вторых входах которых находятся сигналы, снимаемые соответственно с прямого и инверсного выходов триггера 9 (фиг. 1). Поскольку триггер 9 находится в исходном (нулевом) состоянии, импульс П1 проходит через элемент 19.2 и, поступая далее на вход синхронизации регистра-счетчика 4, срезом фиксирует в регистре-счетчике 4 присутствующий на его информационном входе КОП. После записи КОП поступает на адресный вход блока 1 и формирует на его выходе первую команду начального последовательного участка выполняемой программы. Команда с выхода блока 1 поступает на информационный вход регистра 5 и в момент возникновения среза очередного импульса П2 на втором выходе блока 8 записывается в регистр. The pulse P1 from the third output of block 8 is fed to the first inputs of the elements And 19.1 and 19.2, at the second inputs of which are signals taken respectively from the direct and inverse outputs of trigger 9 (Fig. 1). Since trigger 9 is in its initial (zero) state, pulse П1 passes through element 19.2 and, coming further to the synchronization input of register-counter 4, cuts off in register-counter 4 the CPC present at its information input. After recording, the CPC arrives at the address input of
В дальнейшем ход работы модуля определяется форматом считанной команды (фиг. 9). Возможны следующие варианты. In the future, the progress of the module is determined by the format of the read command (Fig. 9). The following options are possible.
Вариант 1. Считанная команда имеет формат А1. В этом случае на выходах 5.5-5.8 устанавливается нулевой уровень сигнала. Нулевой согнал - признак формата команды - с выхода 5.5 регистра 5 подается на управляющие входы блоков 10 и 11 и, будучи разрешающим для блока 10 и запрещающим для блока 11, обеспечивает передачу операционной части команды с выхода 5.4 регистра 5 на выход 27 модуля и возбуждение требуемых (микро)операций.
Одновременно осуществляется формирование исполнительного адреса следующей команды. At the same time, the executive address of the next team is formed.
Код опрашиваемого логического условия (ЛУ) с выхода 5.1 и модифицируемый разряд адреса (Ам) с выхода 5.2 регистра 5 поступают соответственно на управляющий и первый информационный входы мультиплексора 7, на втором информационном входе которого формируются сигналы логических условий, снимаемые с различных датчиков или с выходов специальных схем образования признаков управляемого объекта. Если код ЛУ является нулевым, то на выход мультиплексора 7 передается значение модифицируемого разряда адреса, в противном случае на выход мультиплексора 7 подается значение логического условия, определяемого заданным кодом ЛУ. Сигнал с выхода мультиплексора 7 объединяется с немодифицируемой (старшей) частью адреса с выхода 5.3 регистра 5 и образует исполнительный адрес следующей команды. Этот адрес подается на первый информационный вход коммутатора 6 и, поскольку на выходе 5.8, а также на выходах 5.6 и 5.7 (а значит, и на выходе элемента 22) регистра 5 присутствуют сигналы логического нуля, передается на информационный вход регистра-счетчика 4. The code of the interrogated logical condition (LU) from output 5.1 and the modifiable digit of the address (Am) from output 5.2 of register 5 are received respectively at the control and first information inputs of
Нулевой сигнал с выхода 5.5 регистра 5 закрывает элемент И 14, а нулевые сигналы с выходов 5.6 - 5.8 формируют нулевой уровень сигнала на выходе элемента ИЛИ 21 и соответственно блокируют элемент И 15. В связи с этим очередной импульс П3, появляющийся на выходе блока 8, не проходит на выходы элементов И 14 и 15 и, следовательно, не вызывает изменения режима функционирования модуля. The zero signal from the output 5.5 of register 5 closes the And 14 element, and the zero signals from the outputs 5.6 - 5.8 form the zero signal level at the output of the OR 21 element and, accordingly, block the And 15 element. In this regard, the next impulse P3 appearing at the output of block 8, does not pass to the outputs of the elements And 14 and 15 and, therefore, does not cause a change in the mode of operation of the module.
Очередной импульс П1 вновь через открытый элемент И 19.2 передается на вход синхронизации регистра-счетчика 4 и фиксирует ранее сформированный на его информационном входе адрес следующей команды. Адрес с выхода регистра-счетчика 4 поступает на адресный вход блока 1 и обеспечивает считывание очередной команды. The next impulse P1 is again transmitted through the open element And 19.2 to the synchronization input of the register-counter 4 and fixes the address of the next command previously generated at its information input. The address from the output of the register-counter 4 goes to the address input of
Процедура обработки считываемой команды ничем не отличается от процедуры обработки первой команды и поэтому далее модуль функционирует аналогично ранее рассмотренному. The procedure for processing the command to be read is no different from the procedure for processing the first command and, therefore, the module further functions in the same way as previously considered.
Вариант 2. Считанная команда имеет формат А2 (фиг. 9). На выходе 5.8 регистра 5 формируется единичный сигнал - метка конца программы (Мкп). Данный сигнал поступает на выход 34 конца операции модуля и инициирует окончание текущей операции (программы). Одновременно этот же сигнал через элемент ИЛИ 21 подается на первый вход элемента И 15, а также поступает на первый, второй и третий управляющие входы коммутатора 6. На выходах 5.5 - 5.7 регистра 5 образуются сигналы логического нуля. Option 2. The read command has the A2 format (Fig. 9). At the output of 5.8 of register 5, a single signal is formed - the mark of the end of the program (MCP). This signal is output 34 of the end of the operation of the module and initiates the end of the current operation (program). At the same time, the same signal through the OR element 21 is fed to the first input of the And element 15, and also fed to the first, second, and third control inputs of the switch 6. At outputs 5.5 - 5.7 of register 5, logical zero signals are generated.
Нулевой сигнал с выхода 5.5 регистра 5 поступает на управляющий вход блока элементов И 10 и обеспечивает передачу операционной части команды (или, возможно, нулевого кода) с выхода 5.4 регистра 5 на выход 27 модуля. Этот же сигнал запрещает прохождение информации через блок элементов И 11, а также блокирует элемент И 14. Нулевые сигнала с выходов 5.6 и 5.7 регистра 5 поступают на входы элемента ИЛИ 22 и формируют на его выходе сигнал логического нуля. Нулевой сигнал с выхода элемента 22 поступает на четвертый, пятый и шестой управляющие входы коммутатора 6 и совместно с единичным сигналом с выхода 5.8 регистра 5 настраивает коммутатор 6 на прием кода очередной операции с входа 23 модуля. The zero signal from the output 5.5 of register 5 is fed to the control input of the block of elements And 10 and ensures the transmission of the operational part of the command (or, possibly, the zero code) from the output 5.4 of register 5 to the output 27 of the module. The same signal prohibits the passage of information through the block of elements And 11, and also blocks the element And 14. Zero signals from the outputs 5.6 and 5.7 of register 5 are fed to the inputs of the element OR 22 and form a logical zero signal at its output. The zero signal from the output of element 22 is supplied to the fourth, fifth, and sixth control inputs of switch 6 and, together with a single signal from output 5.8 of register 5, sets switch 6 to receive the next operation code from module input 23.
Очередной импульс П3 с первого выхода блока 8 синхронизации через открытый элемент И 15 проходит на второй вход блока 8 и далее (фиг. 6) через элемент ИЛИ 86 подается на вход сброса триггера 82 и переключает его в исходное состояние. Нулевой сигнал с прямого выхода триггера 82 останавливает генератор 83. Таким образом, формирование импульсных последовательностей на выходах блока 8 прекращается и модуль (а соответственно и ДМС в целом) переходит в состояние ожидания задания на выполнение очередной операции. The next pulse P3 from the first output of synchronization unit 8 through the open element And 15 passes to the second input of block 8 and then (Fig. 6) through the
Вариант 3. Считанная команда имеет формат B (фиг. 9). Рассматриваемый модуль переходит в режим передачи управления другому аналогичному модулю ДМС. На выходах 5.5 и 5.6 регистра 5 появляются единичные, на выходах 5.7 и 5.8 - нулевые сигналы, а на выходе 5.4 регистра 5 формируется управляющее сообщение, включающее код номера модуля, которому передается управление, и адрес передачи управления (адрес начала инициализируемого последовательного участка программы). Option 3. The read command has the format B (Fig. 9). The module under consideration goes into control transfer mode to another similar VHI module. At outputs 5.5 and 5.6 of register 5, single signals appear at outputs 5.7 and 5.8 - zero signals, and at output 5.4 of register 5, a control message is generated, including the code of the module number to which control is transferred and the control transfer address (address of the beginning of the initialized sequential program section) .
Единичный сигнал - метка передачи управления (Мпу) - с выхода 5.6 регистра 5 через элемент ИЛИ 21 поступает на первый вход элемента И 15. Кроме того, указанный сигнал через элемент ИЛИ 22 подается на четвертый, пятый и шестой управляющие входы коммутатора 6, на остальные управляющие входы которого передается нулевой сигнал с выхода 5.8 регистра 5. В результате вход коммутатора 6 подключается к выходу блока элементов И 12, чем обеспечивается возможность последующего приема управления от другого модуля ДМС. A single signal is a control transfer mark (MPU) - from the output 5.6 of register 5 through the OR element 21, it is supplied to the first input of the And element 15. In addition, the specified signal through the OR element 22 is fed to the fourth, fifth and sixth control inputs of the switch 6, to the rest the control inputs of which a zero signal is transmitted from the output 5.8 of register 5. As a result, the input of the switch 6 is connected to the output of the block of elements And 12, which ensures the possibility of subsequent reception of control from another module of the VHI.
В то же время единичный сигнал - признак формата команды (ПФ) с выхода 5.5 регистра 5 поступает на управляющий вход блока элементов И 10 и формирует на его выходе нулевой код. Этот же сигнал открывает элемент И 14 и блок элементов И 11. Управляющее сообщение, сформированное на выходе 5.4 регистра 5, в объединении с нулевым сигналом с выхода 5.7 регистра 5 (выполняющим функцию признака формата вырабатываемого сообщения (коммутационной команды)) через блок 11 поступает на первый вход блока 2 анализа с целью дальнейшего анализа и передачи адресату (приемнику). Очередной импульс П3 с первого выхода блока 8 синхронизации проходит через открытый элемент И 14 на первый вход блока 2 анализа и синхронизирует прием выдаваемого сообщения (работа блока 2 анализа детально рассматривается ниже). At the same time, a single signal - a sign of the command format (PF) from the output 5.5 of register 5 goes to the control input of the block of elements And 10 and generates a zero code on its output. The same signal opens the element And 14 and the block of elements And 11. The control message generated at the output 5.4 of register 5, in combination with a zero signal from the output 5.7 of register 5 (which performs the function of a sign of the format of the generated message (switching command)) through block 11 is received the first input of analysis unit 2 for the purpose of further analysis and transmission to the addressee (receiver). The next impulse P3 from the first output of synchronization unit 8 passes through the open element And 14 to the first input of analysis unit 2 and synchronizes the reception of the generated message (the operation of analysis unit 2 is discussed in detail below).
Одновременно импульс П3 через элемент И 15 проходит на второй вход блока 8, через элемент ИЛИ 86 поступает на вход сброса триггера 82, переводит его в нулевое состояние и тем самым выключает генератор 83. Текущий модуль переходит в пассивное состояние, в котором находится вплоть до поступления управляющего сообщения, содержащего адрес передачи управления, от другого модуля. At the same time, pulse P3 passes through element And 15 to the second input of block 8, through element OR 86 it enters the reset input of flip-
Вариант 4. Считанная команда имеет формат C (фиг. 9). Текущий модуль переходит в режим запуска параллельного участка программы, закрепленного за другим модулем ДМС. Отличие рассматриваемого режима работы модуля от режима инициализации последовательного участка (передачи управления) состоит в том, что текущий модуль после выдачи соответствующего управляющего сообщения не переходит в пассивное состояние, а приступает к выполнению закрепленного за ним параллельного участка программы. Option 4. The read command has the format C (Fig. 9). The current module enters the launch mode of a parallel section of the program assigned to another VHI module. The difference between the considered mode of operation of the module from the initialization mode of the sequential section (control transfer) is that the current module, after issuing the corresponding control message, does not go into a passive state, but proceeds to execute the parallel program section assigned to it.
На выходах 5.6 - 5.8 регистра 5 устанавливается нулевой уровень сигнала, на выходе 5.5 появляется единичный сигнал - признак формата команды, а на выходе 5.4 формируется управляющее сообщение, формат которого аналогичен формату сообщения, вырабатываемого в режиме передачи управления. Единичный сигнал с выхода 5.5 регистра 5 закрывает блок элементов И 10 и запрещает передачу операционной части считанной команды на выход 27 модуля. Этот же сигнал открывает элемент И 14 и блок элементов И 11 и аналогично рассмотренному обеспечивает передачу управляющего сообщения на первый вход блока 2 анализа. At the outputs 5.6 - 5.8 of register 5, the signal level is set to zero, a single signal appears at the output 5.5 - a sign of the command format, and at output 5.4 a control message is generated, the format of which is similar to the format of the message generated in the control transfer mode. A single signal from the output 5.5 of register 5 closes the block of elements And 10 and prohibits the transmission of the operational part of the read command to the output 27 of the module. The same signal opens the element And 14 and the block of elements And 11 and similarly to the above provides the transmission of a control message to the first input of block 2 analysis.
Сигналы логического нуля с выходов 5.6 и 5.7 регистра 5 поступают на входы элемента ИЛИ 22, формируют на его входе сигнал логического нуля и совместно с нулевым сигналом с выхода 5.8 регистра 5 настраивают коммутатор 6 на прием информации с его первого информационного входа. В то же время нулевые сигналы с выходов 5.6-5.8 регистра 5 поступают на входы элемента ИЛИ 21, обусловливают появление на выходе элемента ИЛИ 21 сигнала логического нуля и тем самым блокируют элемент И 15. Logical zero signals from the outputs 5.6 and 5.7 of register 5 are fed to the inputs of the OR 22 element, form a logical zero signal at its input and, together with the zero signal from the output 5.8 of register 5, configure switch 6 to receive information from its first information input. At the same time, the zero signals from the outputs 5.6-5.8 of register 5 are fed to the inputs of the OR 21 element, cause the logical zero signal to appear at the output of the OR element 21 and thereby block the And 15 element.
Очередной импульс П3 с первого выхода блока 8 проходит через элемент И 14 и обеспечивает прием выдаваемого управляющего сообщения блоком 2 анализа. Поскольку элемент И 15 заблокирован нулевым сигналом с выхода элемента ИЛИ 21, импульс П3 не передается на его выход и, следовательно, не вызывает перехода текущего модуля в пассивное состояние, что имело место в предыдущем случае. The next impulse P3 from the first output of block 8 passes through the element And 14 and provides reception of the issued control message by block 2 analysis. Since the And 15 element is blocked by a zero signal from the output of the OR 21 element, the P3 pulse is not transmitted to its output and, therefore, does not cause the current module to go into a passive state, which was the case in the previous case.
Параллельно с выдачей управляющего сообщения на первый вход блока 2 анализа осуществляется формирование исполнительного адреса следующей команды. Процедура формирования адреса следующей команды полностью совпадает с процедурой формирования адреса при обработке команд формата А1 (см. выше). Адрес следующей команды, получаемый объединением старших разрядов адреса с выхода 5.3 регистра 5 с младшим (модифицируемым) разрядом с выхода мультиплексора 7, через коммутатор 6 проходит на информационный вход регистра-счетчика 4. Очередной импульс П1 с третьего выхода блока 8 через элемент И 19.2 поступает на вход синхронизации регистра-счетчика 4 и срезом фиксирует в нем адрес следующей команды. Указанный адрес с выхода регистра-счетчика 4 подается на адресный вход блока 1 и обеспечивает считывание очередной команды. Текущий модуль приступает к реализации параллельного участка программы и в дальнейшем функционирует аналогично работе модуля при выполнении начального последовательного участка. In parallel with the issuance of the control message to the first input of the analysis unit 2, the executive address of the next command is formed. The procedure for generating the address of the next command completely coincides with the procedure for generating the address when processing A1 format commands (see above). The address of the next command, obtained by combining the upper bits of the address from the output 5.3 of register 5 with the least (modifiable) bit from the output of
Вариант 5. Считанная команда имеет формат D (фиг. 9). В этом случае модуль завершает выполнение параллельного участка программы и вырабатывает соответствующую команду-квитанцию. На выходах 5.5 и 5.7 регистра 5 появляется единичный сигнал, на выходах 5.6 и 5.8 - нулевой сигнал, а на выходе 5.4 формируется управляющая квитанция, подтверждающая завершение выполнения параллельного участка и содержащая номер соответствующей вершины слияния Vq (вершины, к которой сходится выполненный участок), а также номер модуля M(Vq), являющегося ведущим для вершины слияния Vq (в частном случае этим модулем может быть рассматриваемый модуль). Option 5. The read command has the format D (Fig. 9). In this case, the module completes the execution of the parallel section of the program and generates the corresponding receipt command. A single signal appears at outputs 5.5 and 5.7 of register 5, a zero signal appears at outputs 5.6 and 5.8, and a control receipt is generated at output 5.4, confirming completion of the parallel section and containing the number of the corresponding merge vertex Vq (the vertex to which the completed section converges), and also the number of the module M (Vq), which is the leader for the merge vertex Vq (in the particular case, this module can be the module in question).
Единичный сигнал - признак формата - с выхода 5.5 регистра 5 открывает элемент И 14 и блок 11, одновременно закрывая блок 10 и запрещая тем самым передачу информации на выход 27 модуля. Единичный сигнал - метка конца параллельного участка программы (Мкпу) - с выхода 5.7 регистра 5 через элемент ИЛИ 21 открывает элемент И 15 и, кроме того, через элемент ИЛИ 22 поступает на четвертый, пятый и шестой управляющие входы коммутатора 6 и совместно с нулевым сигналом с выхода 5.8 регистра 5 настраивает коммутатор 6 на прием информации с выхода блока элементов И 12 (при последующей возможной передаче управления от другого устройства). A single signal - a sign of the format - from the output 5.5 of register 5 opens the And 14 element and block 11, at the same time closing the block 10 and thereby prohibiting the transmission of information to the output 27 of the module. A single signal - the label of the end of the parallel section of the program (MCPU) - from the output 5.7 of register 5 through the OR element 21 opens the And 15 element and, in addition, through the OR element 22 it enters the fourth, fifth and sixth control inputs of the switch 6 and together with the zero signal output 5.8 of register 5 sets the switch 6 to receive information from the output of the block of elements And 12 (with the subsequent possible transfer of control from another device).
Одновременно квитанция с выхода 5.4 регистра 5 совместно с единичной меткой Мкпу с выхода 5.7 регистра 5 через блок 11 поступает на первый вход блока 2 анализа. Очередной тактовый импульс П3 через элемент И 14 проходит на первый вход блока 2 анализа и синхронизирует прием вырабатываемой кавитации. Этот же импульс проходит через открытый элемент И 15 на второй вход блока 8 и выключает генератор 83 (фиг. 6), останавливая, таким образом, процесс формирования импульсов П1, П2, П3. Текущий модуль переходит в пассивное состояние и ожидает либо поступления адреса передачи управления от другого модуля ДМС (в случае, если текущий модуль по отношению к вершине слияния Vq является ведомым), либо появления единичного сигнала, отмечающего окончание процесса синхронизации требуемых параллельных участков, на первом выходе блока 3 (если текущий модуль по отношению к вершине Vr является ведущим). At the same time, the receipt from the output 5.4 of register 5, together with a single label MCPU, from the output 5.7 of register 5 through block 11 is fed to the first input of analysis block 2. The next clock pulse P3 through the element And 14 passes to the first input of the analysis unit 2 and synchronizes the reception of the generated cavitation. The same pulse passes through the open element And 15 to the second input of block 8 and turns off the generator 83 (Fig. 6), thus stopping the formation of pulses P1, P2, P3. The current module goes into a passive state and expects either the control transfer address from another VHI module (if the current module is a slave with respect to the merge vertex Vq) or a single signal appears that marks the end of the synchronization process of the required parallel sections at the first output block 3 (if the current module is leading in relation to the vertex Vr).
Таким образом, каждый модуль ДМС в процессе функционирования наряду с формированием и выдачей команд управления на выход 27 вырабатывает управляющие сообщения двух типов: инициализации последовательных или параллельных участков и индикации завершения параллельных участков, отмечаемые соответственно нулевым и единичным признаками (признаками формата коммутационной команды на выходе 5.7 регистра 5) и условно обозначаемые в дальнейшем соответственно как S1 и S2. Thus, each VHI module during operation, along with the generation and issuance of control commands to output 27, generates two types of control messages: initialization of serial or parallel sections and indications of the completion of parallel sections, marked by zero and single signs, respectively (signs of the format of the switching command at output 5.7 register 5) and conditionally designated hereinafter respectively as S1 and S2.
Рассмотрим работу модуля ДМС в режиме приема, анализа и передачи (ретрансляции) управляющих сообщений. Consider the operation of the LCA module in the mode of receiving, analyzing and transmitting (relaying) control messages.
Управляющие сообщения S1 и S2, вырабатываемые текущим модулем при обработке команд форматов B, C, D, поступают на первый вход блока 2 анализа, а сообщения, передаваемые соседними модулями, подаются на входы 28 и 29 модуля и далее поступают на второй и третий входы блока 2 анализа (фиг. 1). Control messages S1 and S2 generated by the current module during processing of commands of formats B, C, D are received at the first input of analysis block 2, and messages transmitted by neighboring modules are fed to
Очередное сообщение с первого (второго, третьего) входа блока анализа (фиг. 2) поступает на информационный вход блока памяти сообщений (БПС) 35 (35, 37). Импульс синхронизации, сопровождающий поступающее сообщение, подается на вход синхронизации записи БПС 35 (36, 37). Далее сообщение передается (фиг. 4) на информационный вход демультиплексора 76, на управляющий вход которого поступает нулевой сигнал с выхода элемента И 77, и заносится в существующую очередь управляющих сообщений. The next message from the first (second, third) input of the analysis unit (Fig. 2) arrives at the information input of the message memory block (BPS) 35 (35, 37). The synchronization pulse accompanying the incoming message is fed to the synchronization input of the BTS record 35 (36, 37). Next, the message is transmitted (Fig. 4) to the information input of the
Запись поступившего сообщения в очередь осуществляется следующим образом. Recording a received message in the queue is as follows.
Пусть в рассматриваемый момент очередь управляющих сообщений в БПС имеет длину R<K, т. е. в регистрах 71.1 - 71.R записаны управляющие сообщения, а регистры 71.R+1-71.K находятся в состоянии логического нуля. Так как по меньшей мере один разряд каждого из регистров 71.1-71.R установлен в единичное состояние, на выходах элементов 73.1-73.R формируются сигналы логического нуля. В то же время единичные сигналы с инверсных выходов регистров 71. R+1-71. K обусловливают наличие единичного уровня сигнала на выходах элементов 73. R+1-73.K. Таким образом, на выходах элементов И 73.1-73.K формируется код "11...100...0", характеризующий текущее состояние очереди сообщений в данном БПС. Suppose that at the moment in question the control message queue in the BTS has a length R <K, i.e., control messages are recorded in the registers 71.1 - 71.R, and the registers 71.R + 1-71.K are in a state of logical zero. Since at least one bit of each of the registers 71.1-71.R is set to a single state, logic zero signals are generated at the outputs of the elements 73.1-73.R. At the same time, single signals from the inverse outputs of the registers 71. R + 1-71. K determine the presence of a unit signal level at the outputs of the elements 73. R + 1-73.K. Thus, at the outputs of the elements AND 73.1-73.K, the code "11 ... 100 ... 0" is generated that characterizes the current state of the message queue in this BPS.
Код "11. . . 100...0" с выходов элемента И 73.1-73.К поступает на входы элемента И-НЕ 78 и формирует на его выходе сигнал логической единицы (сигнал состояния БПС), подтверждающий наличие сообщений в данном БПС. Этот же код подается на адресный вход демультиплексора 76 и обеспечивает передачу поступившего управляющего сообщения на его (R+1)-й выход. Далее сообщение через блок элементов ИЛИ 72.R+1 подается на информационный вход регистра 71.R+1. The code "11. ... 100 ... 0" from the outputs of the AND 73.1-73.K element goes to the inputs of the AND-NOT 78 element and generates a logical unit signal (BPS status signal) at its output, confirming the presence of messages in this BPS. The same code is supplied to the address input of the
Одновременно импульс синхронизации с входа синхронизации записи БПС поступает на первые входы элементов И 74.1-74.К, на вторые входы которых подаются соответствующие разряды кода, формируемого элементами 73.1-73.К. Указанный импульс через открытые элементы И 74.R+1-74.K и элементы ИЛИ 75. R+1-75. K проходит на входы синхронизации регистров 71.R+1-71.K и срезом производит запись поступившего сообщения в регистр 71.R+1. На выходе элемента И 73.R+1 появляется сигнал логического нуля. Поскольку на информационных входах регистров 71.R+2-71.K находятся нулевые коды, появление импульса синхронизации не вызывает изменения состояния этих регистров. At the same time, the synchronization pulse from the synchronization input of the BPS record is supplied to the first inputs of the elements AND 74.1-74.K, the second inputs of which are supplied with the corresponding bits of the code generated by the elements 73.1-73.K. The specified impulse through open elements AND 74.R + 1-74.K and elements OR 75. R + 1-75. K goes to the synchronization inputs of the registers 71.R + 1-71.K and cuts the record of the received message in the register 71.
Код, характеризующий новое состояние очереди управляющих сообщений, с выходов элементов 73.1-73.К вновь поступает на адресный вход демультиплексора 76 и предотвращает передачу очередного поступающего сообщения на информационный вход регистра 71.R+2. Аналогично следующее сообщение передается на вход регистра 71.R+3 и т.д. The code characterizing the new state of the control message queue from the outputs of the elements 73.1-73.K again arrives at the address input of the
Считывание управляющих сообщений из БПС 35 (36, 37) осуществляется в порядке их поступления, т.е. в соответствии с дисциплиной обслуживания FIFO ("первым пришел - первым обслужен"). Reading control messages from BPS 35 (36, 37) is carried out in the order they are received, i.e. in accordance with the FIFO service discipline (first-come-first-serve).
Сигналы состояния с управляющих выходов БПС 35, 36 и 37 (фиг. 2) поступают на входы элемента ИЛИ 50 и формируют на его выходе обобщенный сигнал состояния, который принимает единичное значение при наличии управляющих сообщений хотя бы в одном из БПС. Единичный сигнал с выхода элемента ИЛИ 50 поступает на вход установки триггера 41 и переводит его в единичное состояние. Этот же сигнал блокирует элемент И 51, не допуская появления единичного сигнала на входе сброса триггера 41. Сигнал логической единицы с прямого выхода триггера 41 поступает на вход распределителя 42 импульсов (фиг. 7) и включает генератор 89. На выходах распределителя 42 начинается формирование пяти сдвинутых относительно друг друга импульсных последовательностей t1, t2, t3, t4, t5. Status signals from the control outputs of the
Импульс t1 с первого выхода распределителя 42 (фиг 2) поступает на вход счетчика 43 и срезом переключает его в состояние "01". Код "01" с выхода счетчика 43 подается на вход дешифратора 44 и возбуждает единичный сигнал на его первом выходе. Этот же код поступает на адресный вход мультиплексора 38, коммутирует его выход с информационным выходом БПС 35 и тем самым обеспечивает передачу сообщения, записанного в регистре 71.1 блока 35 (фиг. 4), на информационный вход регистра 45 (фиг. 2). Импульс t2 с второго выхода распределителя 42 подается на вход синхронизации регистра 45 и производит запись считанного из блока 35 сообщения. The pulse t1 from the first output of the distributor 42 (Fig 2) is supplied to the input of the
Появление на четвертом выходе распределителя 42 импульса t3 инициирует процесс определения направления дальнейшей передачи поступившего сообщения. The appearance on the fourth output of the
Импульс t3 поступает на вход установки триггера 48 и переключает его в единичное состояние. Единичный сигнал с прямого выхода триггера 48 подается на управляющий вход генератора 39 константы. Далее этот сигнал поступает (фиг. 8) на управляющие входы блоков элементов И 91.1 и 91.2 и обеспечивает передачу кода номера текущего модуля I.J, размещенного в регистрах 90.1, 90.2, на выход генератора константы. Код I.J с выхода генератора 39 (фиг. 2) подается на второй вход блока 40 выбора направления передачи сообщения, на первом входе которого устанавливается код K.L номера приемника обрабатываемого сообщения, поступающий с первого выхода регистра 45. Код I.J удерживается на входе блока 40 до тех пор, пока на пятом выходе распределителя 42 не появится срез импульса t5 и триггер 48 не будет соответственно возвращен в нулевое состояние. The pulse t3 is fed to the input of the installation of the trigger 48 and switches it to a single state. A single signal from the direct output of the trigger 48 is supplied to the control input of the
Выбор направления дальнейшей передачи поступившего сообщения производится следующим образом. The choice of the direction of further transmission of the received message is as follows.
Коды I.J и K.L поступают (фиг. 5) на первые и вторые входы схем сравнения 79.1 и 79.2 соответственно и формируют на их выходах трехразрядные унитарные коды, определяемые соотношениями кодов I и K,J и L в соответствии с таблицей. Коды с выходов схем 79.1 и 79.2 подаются на вход неполного дешифратора 81 и устанавливают на его выходе нулевой или единичный сигнал выбора направления передачи (ретрансляции) сообщения. Одновременно сигналы с выходов равенства схем 79.1 и 79.2 поступают на соответствующие входы элемента И 80. Codes I.J and K.L arrive (Fig. 5) at the first and second inputs of comparison circuits 79.1 and 79.2, respectively, and form at their outputs three-digit unitary codes determined by the ratios of codes I and K, J and L in accordance with the table. Codes from the outputs of circuits 79.1 and 79.2 are fed to the input of an
Если имеет место совпадение как кодов I и K, так и кодов J и L, то на выходах равенства обеих схем 79.1 и 79.2 образуются сигналы логической единицы, которые обусловливают появление единичного уровня сигнала на выходе элемента И 80, что соответствует случаю, если текущий модуль является приемником обрабатываемого сообщения. В противном случае на выходе элемента И 80 сохраняется нулевой уровень сигнала. Сигнал с выходов неполного дешифратора 81 и элемента И 80 (условно обозначается как Q1 и Q2 соответственно (таблица)) передаются соответственно на первый и второй выходы блока выбора направления передачи сообщения. If there is a coincidence of both codes I and K, and codes J and L, then the logic outputs are generated at the outputs of the equalities of both schemes 79.1 and 79.2, which cause the appearance of a unit signal level at the output of the And 80 element, which corresponds to the case if the current module is the receiver of the processed message. Otherwise, the output of the AND 80 element maintains a zero signal level. The signal from the outputs of the
1. Если Q2="0", т.е. текущий модуль I.J не является приемником поступившего сообщения, то (фиг. 2) нулевой сигнал с второго выхода блока 40 блокирует элементы И 52.1, 52.2, а также запрещает прохождение информации с второго выхода регистра 45 через блок элементов И 49. Этот же сигнал открывает элементы И 53.1 и 53.2. 1. If Q2 = "0", ie the current IJ module is not a receiver of an incoming message, then (Fig. 2) a zero signal from the second output of
Одновременно сигнал Q1 ( который может быть как единичным, так и нулевым) с первого выхода блока 40 поступает на адресный вход демультиплексоров 46 и 47 и обеспечивает передачу сообщения с выходов регистра 45 либо на первый, либо на второй информационные выходы блока анализа и далее одному из соседних модулей ДМС (либо модулю I-1.J, либо модулю I.J+1). Очередной импульс t4 с третьего выхода распределителя 42 через демультиплексор 47 и один из открытых элементов И 53.1 или 53.2 проходит на первый или второй информационный выход блока анализа и синхронизирует прием выдаваемого управляющего сообщения соответствующим соседним модулем. At the same time, the signal Q1 (which can be either single or zero) from the first output of
Одновременно импульс t4 подается на вход сдвига БПС 35 - 37, на управляющих входах которых присутствуют сигналы с соответствующих выходов дешифратора 44 (в рассматриваемом случае на выходах дешифратора 44 присутствует код "100"), обеспечивающие выбор одного из трех указанных БПС (БПС 35). At the same time, pulse t4 is fed to the input of the BPS shift 35 - 37, at the control inputs of which there are signals from the corresponding outputs of the decoder 44 (in this case, the code “100” is present at the outputs of the decoder 44), which enable the selection of one of the three indicated BPS (BPS 35).
Импульс t4 (фиг. 4) через открытый элемент И 77 выбранного БПС (в данном случае БПС 35) проходит на управляющий вход демультиплексора 76 и формирует на всех его выходах нулевой уровень сигнала. Этот же импульс через элементы ИЛИ 75.1 - 75. K поступает на входы синхронизации регистров 71.1 - 71.K и срезом обеспечивает перезапись информации из регистров 71.2 - 71.K в регистры 71.1 - 71.K соответственно, а в регистр 71.K заносит нулевой код с K-го выхода демультиплексора 76, осуществляя тем самым сдвиг очереди управляющих сообщений. The pulse t4 (Fig. 4) through the open element And 77 of the selected BTS (in this case, the BPS 35) passes to the control input of the
Если в результате сдвига все регистры 71.1 - 71.K устанавливаются в нулевое состояние (т.е. очередь сообщений становится " пустой"), то на выходах элементов И 73.1 - 73.K образуется код "11...1". Этот код поступает на входы элемента И-НЕ 78 и формирует на его выходе сигнал логического нуля. В противном случае уровень сигнала на выходе элемента И-НЕ 78 остается единичным. If as a result of the shift all the registers 71.1 - 71.K are set to the zero state (that is, the message queue becomes "empty"), then the code "11 ... 1" is generated at the outputs of the AND 73.1 - 73.K elements. This code goes to the inputs of the AND-NOT element 78 and generates a logic zero signal at its output. Otherwise, the signal level at the output of the AND-NOT 78 element remains single.
Если на управляющих выходах всех БПС 35, 36 и 37 (фиг. 2) образуются сигналы логического нуля, то на выходе элемента ИЛИ 50 также устанавливается нулевой сигнал. Данный сигнал открывает элемент И 51 и тем самым обеспечивает возможность переключения триггера 41 в нулевое состояние. Очередной импульс t5 с пятого выхода распределителя 42 через элемент И 51 подается на вход сброса триггера 41 и восстанавливает его исходное (нулевое) состояние. Одновременно импульс t5 поступает на счетный вход триггера 48 и срезом возвращает его в нулевое состояние. Нулевой сигнал с прямого выхода триггера 48 подается на управляющие входы блоков элементов И 91.1 и 91.2 (фиг. 8) и формирует на выходе генератора 39 (фиг. 2) нулевой код. В то же время нулевой сигнал с прямого выхода триггера 41 поступает на вход распределителя 42 и запрещает формирование импульсных последовательностей t1 - t5. If at the control outputs of all
2. Если Q2="1", т.е. текущий модуль является приемником поступившего сообщения, то единичный сигнал с второго выхода блока 40 поступает на первый вход блока элементов И 49 и обеспечивает передачу информации (информационной части сообщения) с второго выхода регистра 45 на третий информационный выход блока анализа. Одновременно этот же сигнал открывает элементы И 52.1 и 52.2, а также блокирует элементы 53.1 и 53.2. Блокировка элементов 53.1 и 53.2 исключает прохождение импульса t4 на первый и второй информационные выходы блока анализа, а следовательно, запрещает прием обрабатываемого сообщения соседними модулями. В то же время очередной импульс t4 с третьего выхода распределителя 42 через открытый элемент И 52.1 проходит на первый управляющий выход, а следующий импульс t5 с пятого выхода распределителя 42, спустя определенное время, через элемент И 52.2 поступает на второй управляющий выход блока анализа. 2. If Q2 = "1", ie the current module is the receiver of the incoming message, then a single signal from the second output of the
Аналогично ранее рассмотренному импульс t5 переключает триггер 48 в нулевое состояние и в случае отсутствия управляющих сообщений в БПС 35 - 37 выключает распределитель 42, проходя через открытый элемент И 51 на вход сброса триггера 41. Similarly to the previously considered pulse t5 switches the trigger 48 to the zero state and in the absence of control messages in the BTS 35 - 37 turns off the
Рассмотрим процесс обработки управляющих сообщений, адресованных текущему модулю ДМС. Consider the process of processing control messages addressed to the current VHI module.
Информационная часть управляющего сообщения с третьего информационного выхода блока 2 анализа (фиг. 1) поступает на первые входы блоков элементов И 12 и 13. Одновременно на этом же выходе блока 2 анализа появляется признак формата сообщения, определяющий принадлежность данного сообщения либо к типу S1, либо к типу S2 (см. выше). Признак формата сообщения поступает на вторые входы блоков 12 и 13, а также на первые входы элементов И 16, 17 и 18. The information part of the control message from the third information output of the analysis unit 2 (Fig. 1) is supplied to the first inputs of the blocks of elements And 12 and 13. At the same time, a message format indicator appears on the same output of the analysis unit 2, which determines whether this message belongs to either type S1 or to type S2 (see above). The sign of the message format arrives at the second inputs of blocks 12 and 13, as well as at the first inputs of the elements And 16, 17 and 18.
1. Если сообщение имеет формат S1 (т.е. является командой передачи управления или инициализации параллельного участка), то признак формата является нулевым и поэтому информационная часть поступившего сообщения (интерпретируемая в данном случае как адрес передачи управления) проходит через открытый блок 12 и поступает на третий информационный вход коммутатора 6. Поскольку текущий модуль находится в пассивном состоянии (невозможность функционирования текущего модуля в момент передачи управления от другого модуля обусловлена синхронным окончанием выполнения различных параллельных участков программы) и на выходах 5.8 и 5.7 регистра 5 находятся соответственно нулевой и единичный сигналы, информационная часть поступившего сообщения через коммутатор 6 передается на информационный вход регистра-счетчика 4 адреса. 1. If the message has the S1 format (that is, it is a command to transfer control or to initialize a parallel section), then the format flag is zero and therefore the information part of the received message (interpreted in this case as the control transfer address) passes through open block 12 and arrives to the third information input of the switch 6. Since the current module is in a passive state (the inability of the current module to function at the time of transfer of control from another module is due to synchronous nchaniem perform different parallel sections of the program) and the outputs 5.8 and 5.7 of the register 5 are respectively zero and single signals incoming message data portion through a switch 6 is transmitted to the data input of the register-address counter 4.
Спустя определенное время, на первом управляющем выходе блока 2 появляется импульс синхронизации t4. Поскольку признак формата поступившего сообщения является нулевым, импульс t4 проходит через отрытый элемент И 16, а затем через элемент ИЛИ 20 передается на третий вход блока 8 синхронизации, переключает триггер 82 (фиг. 6) в единичное состояние и тем самым запускает генератор 83. На выходах блока 8 начинается формирование импульсных последовательностей П1, П2, П3. After a certain time, the synchronization pulse t4 appears at the first control output of block 2. Since the format attribute of the incoming message is zero, the pulse t4 passes through the open element And 16, and then through the
Первый импульс П1 через открытый элемент И 19.2 (что обусловлено нулевым состоянием триггера 9) проходит на вход синхронизации регистра-счетчика 4 и срезом фиксирует в нем информационную часть (адрес передачи управления) поступившего сообщения. Данный адрес с выхода регистра-счетчика 4 поступает на адресный вход блока 1 и обеспечивает считывание первой команды инициализируемого параллельного или последовательного участка программы. По срезу тактового импульса П2 считанная команда заносится в регистр 5. Далее ход работы модуля полностью совпадает с его функционированием при реализации начального последовательного участка программы. The first pulse P1 through the open element And 19.2 (due to the zero state of the trigger 9) passes to the synchronization input of the register-counter 4 and cuts off the information part (control transfer address) of the received message in it. This address from the output of the register-counter 4 goes to the address input of
2. Если сообщение имеет формат S2 (т.е. является квитанцией завершения параллельного участка программы), то признак его формата является единичным и поэтому информационная часть сообщения (теперь интерпретируемая как код номера вершины слияния Vq проходит через открытый блок 13 на информационный вход блока 3 управления синхронизацией параллельных участков. Спустя определенное время, на первом управляющем выходе блока 2 появляется импульс t4, а затем (вновь через определенное время) на втором управляющем выходе блока 2 появляется импульс t5. 2. If the message has the S2 format (that is, it is a receipt for completing a parallel section of the program), then the flag of its format is single and therefore the information part of the message (now interpreted as the code of the merge vertex number Vq passes through open block 13 to the information input of block 3 control of synchronization of parallel sections After a certain time, the pulse t4 appears on the first control output of block 2, and then (again after a certain time) a pulse t5 appears on the second control output of block 2.
Поскольку признак формата поступившего сообщения является единичным, импульсы t4 и t5 проходят соответственно через элемент И 17 и 18 и далее подаются на первый и второй входы синхронизации блока 3 (БУСПУ) соответственно. Since the sign of the format of the received message is single, the pulses t4 and t5 pass respectively through the element And 17 and 18 and then fed to the first and second synchronization inputs of block 3 (BUSPU), respectively.
Код номера вершины слияния (НВС) Vq (информационная часть поступившего сообщения) поступает (фиг. 3) на вход формирователя 57 и обуславливает появление на его выходе адреса A (Vq), являющегося адресом ячейки блока 56, в которой размещен код текущего условия синхронизации параллельных участков, соответствующего вершине Vq. Как было показано выше, данное условие представляет собой код W'q числа незавершенных параллельных участков, сходящихся к вершине Vq. Адрес A(Vq) с выхода формирователя 57 через открытый коммутатор 62 поступает на адресные входы блока 56 и блока 55. Код текущего числа ожидаемых событий W'q, считываемый из блока 56, подается на информационный вход счетчика 61, а код исходного числа ожидаемых событий Wq с выхода блока 55 поступает на второй и третий информационные входы коммутатора 63. The code of the fusion vertex number (NVS) Vq (information part of the received message) arrives (Fig. 3) at the input of the
Импульс t4 с первого входа синхронизации БУСПУ подается на вход синхронизации счетчика 61 и фронтом обеспечивает запись кода W'q с выхода блока 56. Одновременно этот же импульс поступает на вход одновибратора 70 и срезом возбуждает на его выходе импульс t*4. Импульс с выхода одновибратора 70 подается на вычитающий вход счетчика 61 и фронтом обеспечивает уменьшение размещенного в нем кода W'q на единицу.The pulse t4 from the first synchronization input of the BUSPU is fed to the synchronization input of the
Если вновь образующийся код не является нулевым (т.е. некоторые из числа требуемых параллельных участков не завершены) и соответственно код на инверсном выходе счетчика 61 отличен от единичного, то на выходе элемента И 64 сохраняется сигнал логического нуля, не допускающий срабатывания одновибратора 69. Одновременно нулевой сигнал с выхода элемента И 64 поступает на четвертый и пятый управляющие входы коммутатора 63, на остальные управляющие входы которого подается единичный сигнал с прямого выхода триггера 58, и модифицированный код количества ожидаемых событий с прямого выхода счетчика 61 через коммутатор 63 передается на информационный вход блока 56.If the newly formed code is not zero (that is, some of the required parallel sections are not completed) and, accordingly, the code on the inverse output of the
Импульс t5 с второго входа синхронизации БУСПУ через элемент ИЛИ 66 проходит на вход записи блока 56 и, поскольку на выходе формирователя 57 все еще присутствует адрес A(Vq) (что обусловливается присутствием информации на третьем информационном выходе блока 2 анализа (фиг. 1, 2) вплоть до момента появления среза импульса t5 на выходе распределителя 42 (см. работу блока анализа), обеспечивает фиксацию нового кода в ячейке блока 56 с адресом A(Vq). Таким образом, происходит модификация текущего условия синхронизации параллельных участков, сходящихся к вершине Vq.The pulse t5 from the second input of the BUSPU synchronization through the
Если же вновь образующийся код становится нулевым (что соответствует завершению всех требуемых параллельных участков), то на инверсном выходе счетчика 61 образуется единичный код. Этот код поступает на первый вход элемента 64 и формирует на его выходе положительный перепад уровня сигнала, который воздействует на одновибратор 69 и возбуждает на его выходе импульс p. Единичный сигнал с выхода элемента 64, кроме того, поступает на четвертый и пятый управляющие выходы коммутатора 63 и коммутирует его выход с выходом блока 55. Код исходного числа ожидаемых событий Wq с выхода блока 55 проходит на выход коммутатора 63 и поступает на информационный вход блока 56. Тактовый импульс t5 через элемент ИЛИ 66 подается на вход записи блока 56 и фиксирует код Wq в ячейке с адресом A(Vq), восстанавливая, таким образом, исходное значение W'q=Wq и обеспечивая возможность повторной синхронизации параллельных участков, сходящихся к вершине слияния Vq ( что может потребоваться при реализации циклических программ).If the newly formed code becomes zero (which corresponds to the completion of all the required parallel sections), then a single code is generated at the inverse output of the
Импульс p с выхода одновибратора 69 поступает на вход установки триггера 9 (фиг. 1) и переключает триггер 9 в состояние логической единицы. Единичный сигнал с прямого выхода триггера 9 открывает элемент И 19.1, а нулевой сигнал с инверсного выхода соответственно блокирует элемент И 19.2. Одновременно импульс p проходит через элемент ИЛИ 20, поступает на третий вход блока 8 синхронизации и разрешает формирование на его выходах импульсных последовательностей П1, П2, П3. The pulse p from the output of the one-
Первый импульс П1 через открытый элемент И 19.1 подается на счетный вход регистра-счетчика 4, в котором размещен адрес, соответствующий последней считанной из блока 1 команде (команде окончания параллельного участка), и срезом инициирует операцию прямого счета. Адрес, размещенный в регистре-счетчике 4, увеличивается на единицу и, поступая далее на адресный вход блока 1, обеспечивает считывание очередной команды. Текущий модуль возобновляет выполнение программы и далее функционирует аналогично рассмотренному. В то же время импульс p с выхода элемента И 19.1 поступает на счетный вход триггера 9 и срезом возвращает триггер 9 в нулевое состояние, вновь обеспечивая блокировку элемента И 19.1 и открывая элемент И 19.2. The first pulse P1 through the open element And 19.1 is fed to the counting input of the register-counter 4, which houses the address corresponding to the last command read from block 1 (the command to end the parallel section), and initiates a direct counting operation with a slice. The address located in the register-counter 4 is incremented by one and, coming further to the address input of
Таким образом, введенные в устройство дополнительные блоки, элементы и обусловленные ими связи обеспечивают возможность синхронизации завершения произвольных групп параллельных участков программ. Использование средств синхронизации позволяет исключить возможность одновременного выполнения несовместимых команд (участков программы), что может иметь место при применении прототипа. Наличие возможности синхронизации параллельных участков позволяет использовать микроконтроллерную сеть, например, при построении систем логического управления сложными многофункциональными объектами, алгоритмы поведения которых предполагают параллельное протекание множества взаимосвязанных процессов при необходимости согласования моментов начала и завершения их определенных подмножеств. Указанные особенности предлагаемого изобретения обеспечивают существенное расширение области применения микроконтроллерной сети. Thus, the additional blocks, elements, and the relationships caused by them, introduced into the device, provide the ability to synchronize the completion of arbitrary groups of parallel sections of programs. Using synchronization tools eliminates the possibility of simultaneous execution of incompatible commands (program sections), which may occur when using the prototype. The ability to synchronize parallel sections allows the use of a microcontroller network, for example, when constructing logical control systems for complex multifunctional objects, the behavior algorithms of which presume the parallel flow of many interconnected processes, if it is necessary to coordinate the moments of the beginning and completion of their defined subsets. These features of the invention provide a significant expansion of the scope of the microcontroller network.
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU97102528A RU2110827C1 (en) | 1997-02-18 | 1997-02-18 | Digital microcontroller network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU97102528A RU2110827C1 (en) | 1997-02-18 | 1997-02-18 | Digital microcontroller network |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2110827C1 true RU2110827C1 (en) | 1998-05-10 |
RU97102528A RU97102528A (en) | 1998-08-27 |
Family
ID=20190040
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU97102528A RU2110827C1 (en) | 1997-02-18 | 1997-02-18 | Digital microcontroller network |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2110827C1 (en) |
-
1997
- 1997-02-18 RU RU97102528A patent/RU2110827C1/en active
Non-Patent Citations (1)
Title |
---|
1. SU, авторское сидетельство, 1647519, кл. G 05 B 196/18, 1991. 2. * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4433394A (en) | First-in first-out storage and processing unit making use thereof | |
US4748417A (en) | Method and circuit arrangement for switching a clock-controlled device having a plurality of operating statuses | |
JPH0441438B2 (en) | ||
WO1991018346A1 (en) | Device for transmitting a synchronous data | |
US3059221A (en) | Information storage and transfer system | |
US3644895A (en) | Buffer store arrangement for obtaining delayed addressing | |
RU2110827C1 (en) | Digital microcontroller network | |
JPS5939939B2 (en) | Synchronous transfer control method | |
RU2634199C1 (en) | Parallel logic multicontroller | |
RU2116665C1 (en) | Unit of microprogram system | |
RU2151421C1 (en) | Unit of microcontroller network | |
SU1732345A1 (en) | Distributed controlling system | |
RU2112272C1 (en) | Unit of microcontroller network | |
RU2023291C1 (en) | Device for distribution of jobs in terminal network | |
RU1802362C (en) | Switching system of data processing units | |
SU1631542A1 (en) | Multimicroprogram control system | |
SU1508228A1 (en) | Device for shaping message route in homogeneous computing system | |
RU2112269C1 (en) | Assembly unit for software control | |
RU2168198C1 (en) | Microcontroller network | |
SU1601614A1 (en) | Multiprocessor system | |
RU2120135C1 (en) | Microcontroller system | |
RU1805462C (en) | Device for determination of value of boolean functions | |
RU2044619C1 (en) | Device for handling the robot-manipulator | |
SU1660014A1 (en) | Information system | |
SU1012234A1 (en) | Device for interfacing computer to communication channels |