RU2012043C1 - Video controller - Google Patents

Video controller Download PDF

Info

Publication number
RU2012043C1
RU2012043C1 SU4907998A RU2012043C1 RU 2012043 C1 RU2012043 C1 RU 2012043C1 SU 4907998 A SU4907998 A SU 4907998A RU 2012043 C1 RU2012043 C1 RU 2012043C1
Authority
RU
Russia
Prior art keywords
inputs
control
outputs
group
address
Prior art date
Application number
Other languages
Russian (ru)
Inventor
В.П. Россинский
Original Assignee
Россинский Виктор Петрович
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Россинский Виктор Петрович filed Critical Россинский Виктор Петрович
Priority to SU4907998 priority Critical patent/RU2012043C1/en
Application granted granted Critical
Publication of RU2012043C1 publication Critical patent/RU2012043C1/en

Links

Images

Abstract

FIELD: computer engineering. SUBSTANCE: register unit 8, multiplexer 14, memory 6, where state and control data are stored, memory unit 7 and interrupt controller 9 are introduced to accomplish the goal of invention. This results in decreased address space for access to registers and peripheral devices. This also results in possibility of data exchange with direct access to computer memory. EFFECT: increased field of application, simplified design of state registers, control registers and control logic dealt with each bit in registers of peripheral devices. 17 dwg

Description

Изобретение относится к вычислительной технике и предназначено для обмена данными по каналу связи. The invention relates to computer technology and is intended for data exchange over a communication channel.

Известны устройства [1] , предназначенные для обмена данными по каналу связи, содержащие регистры управления и регистры состояний для хранения управляющей информации, регистры данных, шифратор управления. Known devices [1], intended for data exchange via a communication channel, containing control registers and state registers for storing control information, data registers, control encoder.

Недостатком известных устройств яляются большие аппаратурные затраты, необходимые на реализацию регистров управления, регистров состояний, шифратора управления в случаях, когда требуется значительное количество регистров управления и регистров состояний для обеспечения функций известных устройств. A disadvantage of the known devices is the large hardware costs necessary for the implementation of control registers, state registers, control encoder in cases where a significant number of control registers and state registers are required to ensure the functions of known devices.

Наиболее близким к предлагаемому является контроллер [2] , содержащий контроллер шины, интерфейс, селектор адреса, счетчик адреса, регистр адреса, схему сравнения, приемник, передатчик, шифратор управления, причем входы-выходы контроллера шины подключены к системной шине управления контроллера, первая группа входов-выходов интерфейса подключена к шине данных контроллера, вторая группа его входов-выходов подключена к шине адреса контроллера, его входы данных подключены к внутренней шине контроллера, его выходы адреса - к адресным входам селектора адреса, разрядные выходы счетчика адреса подключены к входам адреса интерфейса и к первой группе входов схемы сравнения, к второй группе входов которой подсоединены выходы регистра адреса, входы данных счетчика адреса и информационные входы регистра адреса подсоединены к внутренней шине контроллера, вход записи счетчика адреса, вход записи регистра адреса, вторая группа входов управления интерфейса, третья группа входов управления контроллера шины, вторая группа входов управления передатчика, вторая группа входов управления приемника, первая группа выходов шифратора управления подключены к шине управления контроллера, выход контроллера шины подключен к счетному входу счетчика адреса, выход "Равно" схеме сравнения соединен с первым входом шифратора управления, вход данных приемника подключен к входу данных контроллера, выход передатчика подключен к выходу контроллера. Closest to the proposed one is a controller [2], which contains a bus controller, an interface, an address selector, an address counter, an address register, a comparison circuit, a receiver, a transmitter, a control encoder, and the inputs / outputs of the bus controller are connected to the controller’s system bus, the first group the interface inputs and outputs are connected to the controller data bus, the second group of its inputs and outputs is connected to the controller address bus, its data inputs are connected to the controller’s internal bus, its address outputs are connected to the address inputs address lecturers, bit outputs of the address counter are connected to the inputs of the address of the interface and to the first group of inputs of the comparison circuit, to the second group of inputs of which the outputs of the address register are connected, the inputs of the address counter data and the information inputs of the address register are connected to the internal bus of the controller, the recording counter input address, address register entry, second group of interface control inputs, third group of bus controller control inputs, second group of transmitter control inputs, second group of control inputs receiver, the first group of outputs of the control encoder are connected to the control bus of the controller, the output of the bus controller is connected to the counting input of the address counter, the output is “Equal” to the comparison circuit is connected to the first input of the control encoder, the data input of the receiver is connected to the data input of the controller, the output of the transmitter is connected to the output the controller.

Недостатком известного контроллера являются большие аппаратурные затраты, необходимые на реализацию регистров управления, регистров состояний и шифратора управления в случаях, когда для функционирования контроллера требуется значительное количество регистров управления и регистров состояний для хранения слов состояний и управления. Поскольку через регистры управления и регистры состояний между ЭВМ и известным контроллером осуществляется обмен управляющей информацией, содержащейся в словах управления и словах состояний, то для обработки управляющей информации и выработки сигналов управления по результатам обработки слов состояний и слов управления требуются аппаратурные затраты на реализацию шифратора управления, выполненного на элементах жесткой логики, тем больше, чем большее число регистров управления и регистров состояний используется, поскольку каждый разряд регистров управления и регистров состояний соединен с соответствующим входом шифратора управления. Применение элементов гибкой логики, например микропроцессоров, для реализации шифратора управления ограничивается временными характеристиками известных контроллеров, для которых обмен данными должен осуществляться в режимах реального времени. A disadvantage of the known controller is the large hardware costs required to implement control registers, state registers, and a control encoder in cases where the controller requires a significant number of control registers and state registers for storing state and control words. Since the control information contained in the control words and the state words is exchanged through the control registers and state registers between the computer and the known controller, the hardware costs of implementing the control encoder are required to process the control information and generate control signals from the results of processing the state words and control words, executed on the elements of rigid logic, the more, the greater the number of control registers and state registers is used, since each p zryad control registers and status registers connected to a respective control input of the encoder. The use of flexible logic elements, such as microprocessors, for the implementation of a control encoder is limited by the time characteristics of known controllers, for which data exchange should be carried out in real time.

Недостатком известного контроллера является ограничение области применения в случаях, когда использование большого количества регистров управления и состояний невозможно по причине ограниченности адресного пространства шины адреса ЭВМ, отведенного под адресацию внешних регистров. Так, при использовании ЭВМ микропроцессора серии 580 под адресацию внешних регистров отведено адресное пространство в 256 адресов, что ограничивает возможности использования контроллера, если для его реализации требуется большее, чем 256 число регистров управления и регистров состояний. A disadvantage of the known controller is the limitation of the scope in cases where the use of a large number of control registers and states is impossible due to the limited address space of the computer address bus allocated for addressing external registers. So, when using a computer of the microprocessor of the 580 series, the address space of 256 addresses is allocated for addressing external registers, which limits the possibility of using the controller if it requires more than 256 control registers and state registers.

Цель изобретения - расширение области применения контроллера при сокращении аппаратурных затрат на его реализацию. The purpose of the invention is the expansion of the scope of the controller while reducing hardware costs for its implementation.

Цель достигается тем, что в контроллер, содержащий контроллер шины, интерфейс, селектор адреса, счетчик адреса, регистр адреса, схему сравнения, приемник, передатчик, шифратор управления, причем входы-выходы контроллера шины подключеы к системной шине управления контроллера, первая группа входов-выходов интерфейса подключена к шине данных контроллера, вторая группа его входов-выходов подключена к шине адреса контроллера, его входы данных подключены к внутренней шине контроллера, его выходы адреса - к адресным входам селектора адреса, разрядные выходы счетчика адреса подключены к входам адреса интерфейса и к первой группе входов схемы сравнения, к второй группе входов которой подсоединены выходы регистра адреса, входы данных счетчика адреса и информационные входы регистра адреса подсоединены к внутренней шине контроллера, вход записи счетчика адреса, вход записи регистра адреса, вторая группа входов управления интерфейса, третья группа входов управления контроллера шины, вторая группа входов управления передатчика, вторая группа входов управления приемника, первая группа выходов шифратора управления подключены к шине управления контроллера, выход контроллера шины подключен к счетному входу счетчика адреса, выход "Равно" схемы сравнения соедиен с первым входом шифратора управления, вход данных приемника подключен к входу данных контроллера, выход передатчика подключен к выходу контроллера, введены оперативная память, запоминающее устройство, регистровое устройство, контроллер прерываний, мультиплексор, при этом выходы управления контроллера шины подключены к входам управления селектора адреса, к первой группе входов управления интерфейса, к первой группе входов управления приемника и к первой группе входов управления передатчика, первая группа входов управления контроллера шины подключена к выходам управления передатчика, вторая группа входов управления контроллера шины подключена к выходам управления приемника, входы-выходы приемника, входы-выходы передатчика, входы-выходы оперативной памяти, входы-выходы регистрового устройства, первая группа адресных входов запоминающего устройства подключены к выходам мультиплексора и к внутренней шине контроллера, выходы приемника подключены к входам интерфейса, входы передатчика соединены с выходами интерфейса, входы адреса оперативной памяти соединены с первой группой выходов регистрового устройства, выходы запоминающего устройства соединены с третьей группой входов регистрового устройства, выходы состояний запоминающего устройства соединены с первой группой входов шифратора управления, вторая группа адресных входов запоминающего устройства соединена с второй группой выходов регистрового устройства, первая группа входов регистрового устройства соединена с второй группой выходов шифратора управления, вторая группа входов регистрового устройства соединена с третьей группой выходов шифратора управления, третья группа выходов регистрового устройства соединена с входам управления запоминающего устройства, управляющий вход шифратора управления соединен с выходом переноса запоминающего устройства, вход переноса которого соедиен с первым выходом шифратора управления, вторая группа входов шифратора управления и первая группа входов запроса контроллера прерываний соединены с выходами состояний приемника, выходы состояний передатчика подключены к третьей группе входов шифратора управления и к второй группе входов запросов контроллера прерываний, к третьей группе входов запросов которого и к четвертой группе входов шифратора управления подключены выходы контроллера шины, выходы селектора адреса соединены с четвертой группой входов запросов контроллера прерываний, второй выход шифратора управления соединен с входом запроса контроллера прерываний, выход управления которого соединен с вторым входом шифратора управления, вход синхронизации контроллера прерываний и вход синхронизации регистрового устройства соединены с третьим выходом шифратора управления, к пятой группе входов которого подключены выходы контроллера прерываний, выходы адреса интерфейса подсоединены к первой группе входов мультиплексора, к второй группе входов которого подключены выходы данных интерфейса, выход "Равно" схемы сравнения соединен с входом управления приемника и с входом передатчика, входы управления приоритета контроллера прерываний, входы управления оперативной памяти, входы управления мультиплексора, входы управления регистрового устройства подключены к шине управления контроллера. The goal is achieved by the fact that in the controller containing the bus controller, interface, address selector, address counter, address register, comparison circuit, receiver, transmitter, control encoder, the inputs and outputs of the bus controller are connected to the controller system bus, the first group of inputs the interface outputs are connected to the controller data bus, the second group of its inputs and outputs is connected to the controller address bus, its data inputs are connected to the internal controller bus, its address outputs are to the address inputs of the address selector, times the core outputs of the address counter are connected to the inputs of the address of the interface and to the first group of inputs of the comparison circuit, the second group of inputs of which the outputs of the address register are connected, the inputs of the address counter data and the information inputs of the address register are connected to the internal bus of the controller, the input of the address counter record, the input of the register record addresses, the second group of control inputs of the interface, the third group of control inputs of the bus controller, the second group of control inputs of the transmitter, the second group of control inputs of the receiver, the first The control encoder outputs are connected to the controller control bus, the bus controller output is connected to the counting input of the address counter, the output is “Equal” to the comparison circuit connected to the first input of the control encoder, the receiver data input is connected to the controller data input, the transmitter output is connected to the controller output, input RAM, memory, register device, interrupt controller, multiplexer, while the control outputs of the bus controller are connected to the control inputs of the address selector, to the first group of interface control inputs, the first group of receiver control inputs and the first group of transmitter control inputs, the first group of bus controller control inputs is connected to the transmitter control outputs, the second group of bus controller control inputs is connected to the receiver control outputs, receiver inputs and outputs, inputs - transmitter outputs, inputs / outputs of RAM, inputs / outputs of a register device, the first group of address inputs of a memory device are connected to the outputs of the multiplexer and to the internal bus of the controller, the outputs of the receiver are connected to the inputs of the interface, the inputs of the transmitter are connected to the outputs of the interface, the inputs of the address of the RAM are connected to the first group of outputs of the register device, the outputs of the storage device are connected to the third group of inputs of the register device, the outputs of the states of the storage device are connected to the first group inputs of the control encoder, the second group of address inputs of the storage device is connected to the second group of outputs of the register device, the first the group of inputs of the register device is connected to the second group of outputs of the control encoder, the second group of inputs of the register device is connected to the third group of outputs of the control encoder, the third group of outputs of the register device is connected to the control inputs of the storage device, the control input of the encoder control is connected to the transfer output of the storage device, transfer input which is connected to the first output of the control encoder, the second group of inputs of the control encoder and the first group of request inputs and the interrupt controller is connected to the receiver status outputs, the transmitter status outputs are connected to the third group of inputs of the control encoder and to the second group of request inputs of the interrupt controller, to the third group of request inputs of which and the fourth group of inputs of the encoder control bus controller outputs are connected, the address selector outputs are connected with the fourth group of interrupt controller request inputs, the second control encoder output is connected to the interrupt controller request input, cat control output It is connected to the second input of the control encoder, the synchronization input of the interrupt controller and the synchronization input of the register device are connected to the third output of the control encoder, the outputs of the interrupt controller are connected to the fifth group of inputs, the outputs of the interface address are connected to the first group of inputs of the multiplexer, the second group of inputs of which are connected interface data outputs, the “Equal to” output of the comparison circuit is connected to the receiver control input and to the transmitter input, control priority control inputs interrupt manager, RAM control inputs, multiplexer control inputs, register device control inputs are connected to the controller control bus.

Введение в контроллер оперативной памяти, запоминающего устройства, регистрового устройства, контроллера прерываний и мультиплексора в указанной выше взаимосвязи позволяет расширить область применения контроллера при сокращении аппаратурных затрат на его реализацию. Introduction to the controller of RAM, memory, register device, interrupt controller and multiplexer in the above relationship allows you to expand the scope of the controller while reducing hardware costs for its implementation.

Расширение области применения контроллера выражается в том, что он может использоваться в системах, ведущих обмен данными в реальном времени и использующих ЭВМ, с ограниченным адресным пространством шины адреса, отведенным под адресацию регистров внешних устройств, что ограничивает число регистров управления и регистров состояний в устройстве, к которым ЭВМ может обратиться в режиме программного обмена. Примером ЭВМ, имеющих ограниченное адресное пространство шины адреса, могут служить ЭВМ, построенные с использованием микропроцессоров серии 580, а также ЭВМ серии "электроника 60". Расширение области применения контроллера объясняется тем, что обмен словами управления и словами состояния между ЭВМ и контроллером производится не только в режиме программного обмена, но и в режиме прямого доступа к оперативной памяти ЭВМ со стороны контроллера, и при этом условия обмена данными в режиме реального времени, а также условия обработки слов состояний и слов управления и формирования по результатам обработки управляющих воздействий в режиме реального времени выполняются. Использование оперативной памяти, запоминающего устройства, регистрового устройства, мультиплексора и контроллера прерываний при работе контроллера в режиме прямого доступа к оперативной памяти ЭВМ позволяет вести обмен словами состояний, словами управления между оперативной памятью ЭВМ и оперативной памятью контроллера, а также позволяет производить ускоренную обработку слов состояний и слов управления и по результатам этой обработки управлять режимами работы контроллера в условиях реального времени обмена данными. Оперативная память служит для хранения слов состояний и слов управления, которыми ЭВМ и контроллер обмениваются в режимах программного обмена и прямого доступа к памяти ЭВМ. Применение оперативной памяти позволяет сократить затраты на регистры, необходимые для хранения слов управления и слов состояний. Однако при этом возникает проблема формирования сигналов управления по результатам обработки слов состояний и слов управления, поскольку эти сигналы управления должны формироваться за интервалы времени не большие, чем необходимо для обеспечения режимов реального времени обмена данными. Использование запоминающего устройства позволяет производить за ограниченные интервалы времени обработку битов слов состояний и слов управления и по результатам обработки вырабатывать управляющие сигналы для перевода контроллера в различные режимы функционирования, во время которых реализуются процессы реального времени обмена словами состояний, словами управления в режиме программного обмена и в режиме прямого доступа к памяти ЭВМ и процессы обмена данными. Применение оперативной памяти, контроллера прерываний, запоминающего устройства, мультиплексора позволяет произвести сокращение аппаратурных затрат на реализацию контроллера, функционирующего в условиях реального времени обмена данными при расширении области его применения, во-первых, за счет сокращения аппаратурных затрат на реализацию регистров состояний и регистров управления, поскольку слова состояний и слова управления хранятся в оперативной памяти, а во-вторых, за счет сокращения аппаратурных затрат на шифратор управления, под управлением которого производится обработка слов состояний и слов управления и под управлением которого контроллер выполняет операции по обработке, формированию и обмену данными между ЭВМ, контроллером, передатчиком и приемником. Применение запоминающего устройства, сохраняя работоспособность контроллера в условиях реального времени обмена данными между ЭВМ, контроллером, приемником и передатчиком, позволяет сократить аппаратурные затраты на шифратор управления, использующий в прототипе элементы жесткой логики, соединенные линиями связи с каждым из разрядов регистров управления и регистров состояний. Вместо элементов жесткой логики используется запоминающее устройство для обработки и преобразования слов состояний и слов управления, что достигается за счет хранения в ячейках памяти запоминающего устройства результатов арифметических и логических операций над давлением, которые подаются на первую и вторую группы адресных входов запоминающего устройства. Набор нестандартных и стандартнх арифметических и логических операций, результаты которых хранятся в запоминающем устройстве, позволяет сократить время обработки данных и за требуемые промежутки времени вырабатывать на выходах состояний запоминающего устройства управляющие сигналы, подающиеся на шифратор управления. Набор операций, выполняемых запоминающим устройством, выбирается индивидуально для каждого из вариантов котроллера. Использование контоллера прерываний дает возможность в условиях реального времени работы контроллера обеспечить обмен данными между ЭВМ, оперативным запоминающим устройством, приемником и передатчиком и поизводить арбитраж процессов реального времени. Использование контроллера прерываний совместно с запоминающим устройством, регистровым устройством и мультиплексором позволяет выполнять в реальном времени обмен данными между ЭВМ, приемником, передатчиком и контроллером. Использование мультиплексора позволяет выполнять переключение на первую группу адресных входов запоминающего устройства сигналов адреса с шины адреса контроллера или сигналов данных с шины данных контроллера, что необходимо для обработки слов управления и слов состояний запоминающим устройством. Применение регистрового устройства позволяет обеспечить временное хранение данных при обмене данными между оперативной памятью, запоминающим устройством, ЭВМ, приемником и передатчиком. The extension of the scope of the controller is expressed in the fact that it can be used in systems that exchange real-time data and use computers with a limited address bus address space reserved for addressing external device registers, which limits the number of control registers and state registers in the device, to which computers can access in program exchange mode. An example of computers having a limited address space for the address bus can be computers built using microprocessors of the 580 series, as well as computers of the Electronics 60 series. The expansion of the controller’s scope is explained by the fact that the exchange of control words and status words between the computer and the controller is carried out not only in the program exchange mode, but also in the mode of direct access to the computer’s RAM from the controller, and the conditions for real-time data exchange as well as the conditions for processing state words and control and formation words according to the results of processing control actions in real time are fulfilled. The use of RAM, storage device, register device, multiplexer and interrupt controller when the controller is in direct access to the main memory of the computer allows the exchange of state words, control words between the main memory of the computer and the main memory of the controller, and also allows for the accelerated processing of state words and the control words and, based on the results of this processing, control the controller operating modes in real-time data exchange. RAM is used to store state words and control words that the computer and the controller exchange in the modes of program exchange and direct access to the computer memory. The use of RAM allows you to reduce the cost of the registers needed to store control words and state words. However, this raises the problem of generating control signals from the processing of state words and control words, since these control signals must be generated in time intervals not greater than necessary to ensure real-time data exchange. The use of a storage device allows processing of bits of state words and control words for limited time intervals and generating control signals from the processing results for transferring the controller to various operating modes, during which real-time processes of exchanging state words, control words in program exchange mode and in direct access to computer memory and data exchange processes. The use of RAM, interrupt controller, memory, multiplexer allows to reduce hardware costs for the implementation of the controller, which operates in real time data exchange while expanding its scope, firstly, by reducing hardware costs for the implementation of state registers and control registers, since state words and control words are stored in RAM, and secondly, by reducing hardware costs for the control encoder, p d which performs machining control words and control words states and running controller which executes processing operations, formation and exchange of data between computers, controller, transmitter and receiver. The use of a storage device, while maintaining the controller’s operability in real-time data exchange between a computer, controller, receiver and transmitter, reduces the hardware costs of a control encoder that uses hard logic elements in the prototype connected by communication lines to each of the bits of control registers and state registers. Instead of hard logic elements, a storage device is used for processing and converting state words and control words, which is achieved by storing the results of arithmetic and logical pressure operations in the memory cells of the storage device, which are supplied to the first and second groups of address inputs of the storage device. A set of non-standard and standard arithmetic and logical operations, the results of which are stored in a storage device, can reduce the data processing time and, at the required time intervals, generate control signals at the outputs of the storage device states that are supplied to the control encoder. The set of operations performed by the storage device is selected individually for each of the options of the controller. The use of the interrupt controller makes it possible in real-time controller operation to provide data exchange between computers, random access memory, receiver and transmitter, and arbitrate real-time processes. Using an interrupt controller in conjunction with a storage device, a register device, and a multiplexer allows real-time data exchange between a computer, receiver, transmitter, and controller. Using the multiplexer allows you to switch to the first group of address inputs of the memory device address signals from the address bus of the controller or data signals from the data bus of the controller, which is necessary for processing control words and status words by the storage device. The use of a register device allows for temporary storage of data during the exchange of data between RAM, storage device, computer, receiver and transmitter.

На фиг. 1 представлена структурная схема контроллера; на фиг. 2 - структурная схема подключения ЭВМ через контроллер к каналу связи; на фиг. 3 - структурная схема запоминающего устройства; на фиг. 4 - структурная схема интерфейса; на фиг. 5 - структурная схема контроллера шины; на фиг. 6 - структурная схема регистрового устройства; на фиг. 7 - структурная схема контроллера прерываний; на фиг. 8 - структурная схема шифратора управления; на фиг. 9 - структурная схема формирователя адреса микрокоманды; на фиг. 10 - структурная схема приемника; на фиг. 11 - структурная схема передатчика; на фиг. 12 представлен пример реализации схемы кодера; на фиг. 13 - пример реализации схемы декодера; на фиг. 14 представлена структурная схема логики циклического контроля; на фиг. 15 - структурная схема памяти обратного магазинного типа (схема фифо); на фиг. 16 представлен формат пакетов данных, передаваемых в канал связи; на фиг. 17 - формат дескрипторов буферов передачи и буферов приема. Дескрипторы описывают зоны памяти ЭВМ (буферы приема и буферы передачи), отведенные под хранение принимаемых и передаваемых данных, а также под слова состояний, описывающие процесс обмена данными. In FIG. 1 shows a block diagram of a controller; in FIG. 2 is a structural diagram of connecting a computer through a controller to a communication channel; in FIG. 3 is a structural diagram of a storage device; in FIG. 4 is a block diagram of an interface; in FIG. 5 is a block diagram of a bus controller; in FIG. 6 is a block diagram of a register device; in FIG. 7 is a block diagram of an interrupt controller; in FIG. 8 is a structural diagram of a control encoder; in FIG. 9 is a structural diagram of a micro command address generator; in FIG. 10 is a block diagram of a receiver; in FIG. 11 is a structural diagram of a transmitter; in FIG. 12 shows an example implementation of an encoder circuit; in FIG. 13 is an example implementation of a decoder circuit; in FIG. 14 is a structural diagram of a cyclic control logic; in FIG. 15 is a structural diagram of a reverse store type memory (Fifo circuit); in FIG. 16 shows a format of data packets transmitted to a communication channel; in FIG. 17 is a format for transmit buffer descriptors and receive buffers. Descriptors describe computer memory zones (receive and transmit buffers) allocated for storage of received and transmitted data, as well as state words describing the process of data exchange.

Контроллер содержит (фиг. 1) интерфейс 1, контроллер 2 шины, счетчик 3 адреса, регистр 4 адреса, схему 5 сравнения, оперативную память 6, запоминающее устройство 7, регистровое устройство 8, контроллер 9 прерываний, селектор 10 адреса, шифратор 11 управления, приемник 12, передатчик 13, мультиплексор 14. The controller contains (Fig. 1) an interface 1, a bus controller 2, an address counter 3, an address register 4, a comparison circuit 5, a random access memory 6, a memory device 7, a register device 8, an interrupt controller 9, an address selector 10, a control encoder 11, receiver 12, transmitter 13, multiplexer 14.

Через внутреннюю шину 15, шину 16 управления, через шину 17 данных, шину 18 адреса, системную шину 19 управления контроллер 20 (фиг. 2) имеет связь с ЭВМ 21. Первая группа входов-выходов интерфейса 1 связана с шиной 17 данных контроллера, вторая группа входов-выходов интерфейса 1 связана с шиной 18 адреса контроллера. Шина 17 данных подключается к шине данных ЭВМ, шина 18 адреса - к шине адреса ЭВМ, системная шина 19 управления контроллера подключается к системной шине управления ЭВМ. Входы-выходы контроллера 2 шины соединены с системной шиной 19 управления. По линии 22 через вход данных контроллера и по линии 23 через его выход контроллер подключен к каналу 24 связи. Вход управления приемника 12 подключен к входу данных контроллера, а выход передатчика 13 - к выходу контроллера. Через шину 25 разрядные выходы счетчика 3 адреса подключены к первой группе входов схемы 5 сравнения и к входам адреса интерфейса 1. Выходы регистра 4 адреса соединены с второй группой входов схемы 5 сравнения. Входы интерфейса 1 через шину 26 подключены к выходам приемника 12, а его выходы через шину 27 подключены к входам передатчика 13. По шине 28 выходы данных интерфейса 1 соединены второй группой входов мультиплексора 14, первая группа входов которого и адресные входы селектора 10 адреса связаны по шине 29 с выходами адреса интерфейса 1. По шине 30 первая группа входов управления интерфейса 1, первая группа входов управления приемника 12, первая группа входов управления передатчика 13, входы управления селектора 10 адреса связаны с выходами управления контроллера 2 шины. По шине 31 четвертая группа входов шифратора 11 управления и третья группа входов запросов контроллера 9 прерываний связаны с выходами контроллера 2 шины, выход которого по линии 32 связан со счетным входом счетчика 3 адреса. Первая группа входов управления контроллера 2 шины по шине 33 связана с выходами управления передатчика 13, а вторая группа входов управления по шине 34 связана с выходами управления приемника 12. Выходы состояний приемника 12 связаны по шине 35 с второй группой входов шифратора 11 управления и с первой группой входов запросов контроллера 9 прерываний. Выходы состояний передатчика 13 связаны по шине 36 с третьей группой входов шифратора 11 управления и с второй группой входов запросов контроллера 9 прерываний. Входы адреса оперативной памяти 6 соединены по шине 37 с первой группой выходов регистрового устройства 8. Выходы запоминающего устройства 7 подключены по шине 38 к третьей группе входов регистрового устройства 8. Вторая группа выходов шифратора 11 управления подключена по шине 39 к первой группе входов регистрового устройства 8. Линия 40 соединяет управляющий вход шифратора 11 управления с выходом переноса запоминающего устройства 7, к входу переноса которого по линии 41 подключен первый выход шифратора 11 управления. Пятая группа входов шифратора 11 управления соединена по шине 42 с выходами контроллера 9 прерываний, вход запроса которого соединен по линии 43 с вторым выходом шифратора 11 управления, выход управления соединен по линии 44 с вторым входом шифратора 11 управления, а вход синхронизации и вход синхронизации регистрового устройства 8 соединены по линии 45 с третьим выходом шифратора 11 управления. Выходы селектора 10 адреса подключены по шине 46 к четвертой группе входов запросов контроллера 9 прерываний. Выход "Равно" схемы 5 сравнения соединен по линии 47 с входом управления приемника 12, с входом управления передатчика 13, с первым входом шифратора 11 управления. Третья группа выходов шифратора 11 управления соединена с второй группой входов регистрового устройства 8 по шине 48. Третья группа выходов регистрового устройства 8 по шине 49 соединена с входами управления запоминающего устройства 7, вторая группа выходов регистрового устройства 8 соединена по шине 50 с второй группой адресных входов запоминающего устройства 7. Выходы состояний запоминающего устройства 7 по шине 51 соединены с первой группой входов шифратора 11 управления. К внутренней шине 15 контроллера подключены входы данных счетчика 3 адреса, информационные входы регистра 4 адреса, выходы мультиплексора 14, входы данных интерфейса 1, входы-выходы передатчика 13, входы-выходы приемника 12, входы-выходы оперативной памяти 6, входы-выходы регистрового устройства 8, первая группа адресных входов запоминающего устройства 7. К шине 16 управления контроллера подключены первая группа выходов шифратора 11 управления, вход записи счетчика 3 адреса, вход записи регистра 4 адреса, вторая группа входов управления интерфейса 1, входы управления мультиплексора 14, входы управления оперативной памяти 6, входы управления регистрового устройства 8, третья группа входов управления контроллера 2 шины, вторая группа входов управления приемника 12, вторая группа входов управления передатчика 13, входы управления приоритетами контроллера 9 прерываний. Through the internal bus 15, the control bus 16, through the data bus 17, the address bus 18, the control system bus 19, the controller 20 (Fig. 2) is connected to the computer 21. The first group of inputs and outputs of the interface 1 is connected to the controller data bus 17, the second the input-output group of interface 1 is connected to the controller address bus 18. The data bus 17 is connected to the computer data bus, the address bus 18 to the computer address bus, the controller system bus 19 is connected to the computer system bus. The inputs and outputs of the bus controller 2 are connected to the control system bus 19. On line 22 through the controller data input and on line 23 through its output, the controller is connected to communication channel 24. The control input of the receiver 12 is connected to the controller data input, and the output of the transmitter 13 is connected to the controller output. Through the bus 25, the bit outputs of the counter 3 addresses are connected to the first group of inputs of the comparison circuit 5 and to the inputs of the address of the interface 1. The outputs of the register 4 addresses are connected to the second group of inputs of the comparison circuit 5. The inputs of the interface 1 through the bus 26 are connected to the outputs of the receiver 12, and its outputs via the bus 27 are connected to the inputs of the transmitter 13. On the bus 28, the data outputs of the interface 1 are connected by a second group of inputs of the multiplexer 14, the first group of inputs of which and the address inputs of the address selector 10 are connected by bus 29 with outputs of the address of interface 1. On bus 30, the first group of control inputs of the interface 1, the first group of control inputs of the receiver 12, the first group of control inputs of the transmitter 13, the control inputs of the address selector 10 are connected to the control outputs of the con roller 2 of the tire. On bus 31, the fourth group of inputs of the control encoder 11 and the third group of request inputs of the interrupt controller 9 are connected to the outputs of the bus controller 2, the output of which is connected via line 32 to the counting input of the address counter 3. The first group of control inputs of the bus controller 2 on the bus 33 is connected to the control outputs of the transmitter 13, and the second group of control inputs on the bus 34 is connected to the control outputs of the receiver 12. The status outputs of the receiver 12 are connected via bus 35 to the second group of inputs of the control encoder 11 and to the first the group of inputs of the request controller 9 interrupts. The status outputs of the transmitter 13 are connected via bus 36 to the third group of inputs of the control encoder 11 and to the second group of request inputs of the interrupt controller 9. The inputs of the address of the RAM 6 are connected via bus 37 to the first group of outputs of the register device 8. The outputs of the memory device 7 are connected via bus 38 to the third group of inputs of the register device 8. The second group of outputs of the control encoder 11 is connected via bus 39 to the first group of inputs of the register device 8 Line 40 connects the control input of the control encoder 11 to the transfer output of the storage device 7, to the transfer input of which via line 41 the first output of the control encoder 11 is connected. The fifth group of inputs of the control encoder 11 is connected via bus 42 to the outputs of the interrupt controller 9, the request input of which is connected via line 43 to the second output of the control encoder 11, the control output is connected via line 44 to the second input of the control encoder 11, and the synchronization input and register synchronization input devices 8 are connected via line 45 to the third output of the control encoder 11. The outputs of the address selector 10 are connected via bus 46 to the fourth group of input requests of the controller 9 interrupts. The output of "Equal" comparison circuit 5 is connected via line 47 to the control input of the receiver 12, to the control input of the transmitter 13, to the first input of the control encoder 11. The third group of outputs of the control encoder 11 is connected to the second group of inputs of the register device 8 via the bus 48. The third group of outputs of the register device 8 via the bus 49 is connected to the control inputs of the memory device 7, the second group of outputs of the register device 8 is connected via bus 50 to the second group of address inputs memory device 7. The status outputs of the memory device 7 via bus 51 are connected to the first group of inputs of the control encoder 11. To the internal bus 15 of the controller are connected the data inputs of the counter 3 addresses, the information inputs of the register 4 addresses, the outputs of the multiplexer 14, the data inputs of the interface 1, the inputs and outputs of the transmitter 13, the inputs and outputs of the receiver 12, the inputs and outputs of the RAM 6, the inputs and outputs of the register devices 8, the first group of address inputs of the storage device 7. To the control bus 16 of the controller are connected the first group of outputs of the control encoder 11, the input of the counter counter 3 addresses, the input of the register register 4 addresses, the second group of control inputs of the interface 1, control inputs of multiplexer 14, control inputs of RAM 6, control inputs of register device 8, third group of control inputs of controller 2 of the bus, second group of control inputs of receiver 12, second group of control inputs of transmitter 13, priority control inputs of controller 9 interrupts.

Запоминающее устройство 7 содержит (фиг. 3) секции 52 и запоминающее устройство 53 ускоренных переносов. Первая и вторая группы адресных входов запоминающего устройства 7, а также его выходы содержат группы линий. Число групп линий в первой группе адресных входов равно числу групп линий во второй группе адресных входов, равно числу групп линий выходов запоминающего устройства 7. Например, при числе секций, равном четырем, в первой, второй группах адресных входов и в выходах запоминающего устройства 7 содержатся по четыре группы линий, причем каждая из групп линий первой группы адресных входов запоминающего устройства 7 соединена с первой группой входов одной из секций 52 запоминающего устройства, а каждая из групп линий второй группы адресных входов запоминающего устройства 7 соединена с второй группой входов одной из секций 52 запоминающего устройства, третьи группы входов секций 52 запоминающего устройства соединены с входами упавления запоминающего устройства 7. Входы переноса каждой из секций 52 запоминающего устройства соединены с одной из гупп выходов переноса запоминающего устройства 53 ускоренных переносов, каждая из групп входов переноса которого соединена с выходами переноса одной из секций 52 запоминающего устройства. Вход переноса запоминающего устройства 7 соединен с входом переноса первой секции 52 запоминающего устройства и с входом переноса запоминающего устройства 53 ускоренных переносов, выход переноса запоминающего устройства 7 соединен с выходом переноса запоминающего устройства 53 ускоренных переносов. Каждая из групп линий выходов запоминающего устройства 7 подключена к выходам одной из секций 52 запоминающего устройства и к выходам состояний запоминающего устройства 7. Входы управления запоминающего устройства 53 ускоренных переносов соединены с входами управления запоминающего устройства 7. The storage device 7 contains (Fig. 3) sections 52 and a storage device 53 accelerated transfers. The first and second groups of address inputs of the storage device 7, as well as its outputs contain groups of lines. The number of line groups in the first group of address inputs is equal to the number of line groups in the second group of address inputs, equal to the number of line groups of outputs of the memory device 7. For example, with the number of sections equal to four, the first, second groups of address inputs and outputs of the memory device 7 contain four groups of lines, each of the line groups of the first group of address inputs of the storage device 7 is connected to the first group of inputs of one of the sections 52 of the memory device, and each of the line groups of the second group of address inputs the storage device 7 is connected to the second group of inputs of one of the sections 52 of the storage device, the third group of inputs of the sections 52 of the storage device are connected to the input inputs of the storage device 7. The transfer inputs of each of the sections 52 of the storage device are connected to one of the output groups of the transfer outputs of the accelerated transfer storage device 53 , each of the groups of transfer inputs of which is connected to the transfer outputs of one of the sections 52 of the storage device. The transfer input of the storage device 7 is connected to the transfer input of the first section 52 of the storage device and to the transfer input of the fast transfer storage device 53, the transfer output of the storage device 7 is connected to the transfer output of the fast transfer storage device 53. Each of the groups of output lines of the storage device 7 is connected to the outputs of one of the sections 52 of the storage device and to the outputs of the states of the storage device 7. The control inputs of the storage device 53 of the accelerated transfers are connected to the control inputs of the storage device 7.

Для реализации секции 52 запоминающего устройства используется постоянное программируемое запоминающее устройство, вход адреса которого соединен с входом переноса секции запоминающего устройства. Первая гуппа входов адреса последнего соединена с первой группой входов секции 52 запоминающего устройства, вторая группа входов адреса соединена с второй группой входов секции запоминающего устройства, третья группа входов адреса соединена с третьей группой входов секции запоминающего устройства, четвертая группа входов адреса соединена с входами переноса секции запоминающего устройства, а первая группа выходов соединена с выходами переноса секции запоминающего устройства, вторая группа выходов - с выходами секции запоминающего устройства. To implement section 52 of the storage device, a permanent programmable storage device is used, the input address of which is connected to the transfer input of the section of the storage device. The first group of address inputs of the latter is connected to the first group of inputs of the storage section 52, the second group of address inputs is connected to the second group of inputs of the storage section, the third group of address inputs is connected to the third group of inputs of the storage section, the fourth group of address inputs is connected to section transfer inputs a storage device, and the first group of outputs is connected to the transfer outputs of the storage section of the device, the second group of outputs is connected to the outputs of the storage section of the storage device royals.

Запоминающее устройство 53 ускоренных переносов реализуется на постоянном программируемом запоминающем устройстве, причем с каждой из групп входов переноса запоминающего устройства 53 ускоренных переносов соединена одна из групп входов адреса постоянного программируемого запоминающего устройства, вход адреса которого соединен с входом переноса запоминающего устройства 53 ускоренных переносов, а каждая из групп выходов соединена с одной из групп выходов переноса запоминающего устройства 53 ускоренных переносов, выход которого соединен с выходом переноса запоминающего устройства 53 ускоренных переносов, а отдельная группа входов адреса соединена с входами управления запоминающего устройства 53 ускоренных переносов. The memory device 53 accelerated transfers is implemented on a permanent programmable memory device, and with each of the groups of inputs of the transfer of the memory device 53 accelerated transfers connected to one of the groups of inputs of the address of the permanent programmable memory device, the input address of which is connected to the transfer input of the memory device 53 accelerated transfers, and each of the groups of outputs connected to one of the groups of outputs of the transfer of the storage device 53 accelerated transfers, the output of which is connected n with the transfer output of the accelerated carry memory 53, and a separate group of address inputs is connected to the control inputs of the accelerated carry memory 53.

Интерфейс 1 содержит (фиг. 4) усилители 54 шины адреса и усилители 55 шины данных, регистр 56, коммутатор 57. Входы-выходы усилители 54 шины адреса соединены с второй группой входов-выходов интерфейса 1, первая группа входов-выходов которого соединена с входами-выходами усилителей 55 шины данных. Входы усилителей 54 шины адреса подключены к входам адреса интерфейса 1, к выходам адреса которого подключены выходы усилителей 54 шины адреса. Выходы усилителей 55 шины данных соединены с выходами данных и с выходами интерфейса 1. Первая группа входов коммутатора 57 соединена с входами данных интерфейса 1, вторая группа входов коммутатора 57 соединена с входами интерфейса 1. Выходы коммутатора 57 соединены с входами регистра 56, выходы которого соединены с входами усилителей 55 шины данных. Первая группа входов управления усилителей 54 шины адреса, первая группа входов управления усилителей 55 шины данных, первый вход управления записью регистра 56, первый вход управления коммутатором 57 соединены с первой группой входов управления интерфейса 1, вторая группа входов управления которого соединена с второй группой входов управления усилителей 54 шины адреса, с второй группой входов управления усилителей 55 шины данных, с вторым входом управления записью регистра 56, с вторым входом управления коммутатора 57. Interface 1 contains (Fig. 4) address bus amplifiers 54 and data bus amplifiers 55, register 56, switch 57. Inputs and outputs address bus amplifiers 54 are connected to a second group of inputs and outputs of interface 1, the first group of inputs and outputs of which are connected to inputs - outputs of amplifiers 55 data bus. The inputs of the amplifiers 54 of the address bus are connected to the inputs of the address of the interface 1, to the outputs of the address of which the outputs of the amplifiers 54 of the address bus are connected. The outputs of the data bus amplifiers 55 are connected to the data outputs and to the outputs of the interface 1. The first group of inputs of the switch 57 is connected to the data inputs of the interface 1, the second group of inputs of the switch 57 is connected to the inputs of the interface 1. The outputs of the switch 57 are connected to the inputs of the register 56, the outputs of which are connected with inputs of amplifiers 55 data bus. The first group of control inputs of the amplifiers 54 of the address bus, the first group of control inputs of the amplifiers 55 of the data bus, the first control input of the register register 56, the first control input of the switch 57 are connected to the first group of control inputs of the interface 1, the second group of control inputs of which are connected to the second group of control inputs amplifiers 54 of the address bus, with a second group of control inputs for amplifiers 55 of the data bus, with a second input for register write control 56, with a second control input for switch 57.

Контроллер 2 шины содержит (фиг. 5) усилители 58, дешифратор 59, таймерное устройство 60. Входы-выходы усилителей 58 соединены с входами-выходами контроллера 2 шины, выходы которого соединены с первой группой выходов дешифратора 59. Входы усилителей 58 соединены с второй группой выходов дешифратора 59, первая группа входов которого соединена с выходами усилителей 58. Третья группа выходов дешифратора 59 соединена с выходами управления контроллера 2 шины, вторая группа входов дешифратора 59 соединена с третьей группой входов управления контроллера 2 шины. Четвертая группа выходов дешифратора 59 соединена с входами таймерного устройства 60, выходы которого соединены с третьей группой входов дешифратора 59. Четвертая группа входов дешифратора 59 соединена с первой группой входов управления контроллера 2 шины, вторая группа входов управления которого соединена с пятой группой входов дешифратора 59. Выход дешифратора 59 соединен с выходом контроллера 2 шины, выход управления дешифратора 59 соединен с входом управления усилителей 58. The bus controller 2 contains (Fig. 5) amplifiers 58, a decoder 59, a timer device 60. The inputs and outputs of the amplifiers 58 are connected to the inputs and outputs of the bus controller 2, the outputs of which are connected to the first group of outputs of the decoder 59. The inputs of the amplifiers 58 are connected to the second group the outputs of the decoder 59, the first group of inputs of which are connected to the outputs of the amplifiers 58. The third group of outputs of the decoder 59 is connected to the control outputs of the bus controller 2, the second group of inputs of the decoder 59 is connected to the third group of control inputs of the controller 2 w us. The fourth group of outputs of the decoder 59 is connected to the inputs of the timer device 60, the outputs of which are connected to the third group of inputs of the decoder 59. The fourth group of inputs of the decoder 59 is connected to the first group of control inputs of the bus controller 2, the second group of control inputs of which are connected to the fifth group of inputs of the decoder 59. The output of the decoder 59 is connected to the output of the bus controller 2, the control output of the decoder 59 is connected to the control input of the amplifiers 58.

Регистровое устройство 8 содержит (фиг. 6) мультиплексор 61, мультиплексор 62, регистры 63, усилители 64, реверсивный счетчик 65. Входы управления усилителей 64, входы управления мультиплексора 61, входы управления мультиплексора 62, входы управления регистров 63, входы управления реверсивного счетчика 65 соединены с входами управления регистрового устройства 8, первая группа входов которого соединена с первой группой входов мультиплексора 62. Вторая группа входов мультиплексора 62 соединена с второй группой входов регистрового устройства 8. Третья группа входов мультиплексора 62 соединена с выходами усилителей 64. Третья группа входов регистрового устройства 8 соединена с четвертой группой входов мультиплексора 62. Входы-выходы регистрового устройства 8 соединены с входами-выходами усилителей 64, к входам которых подключена первая группа выходов мультиплексора 61. Первая группа выходов регистрового устройства 8 соединена с второй группой выходов мультиплексора 61, его вторая группа выходов соединена с третьей группой выходов мультиплексора 61, а его третья группа выходов соединена с четвертой группой выходов мультиплексора 61. Входы синхронизации регистров 63 и вход синхронизации реверсивного счетчика 65 соединены с входом синхронизации регистрового устройства 8. Мультиплексор 62 имеет несколько групп выходов, причем входы каждого из регистров 63 соединены с одной из групп выходов мультиплексора 62. Мультиплексор 61 содержит несколько групп входов, причем выходы каждого из регистров 63 соединены с одной из групп входов мультиплексора 61. Выходы реверсивного счетчика 65 соединены с входами адреса регистров 63. The register device 8 contains (Fig. 6) a multiplexer 61, a multiplexer 62, registers 63, amplifiers 64, a reversible counter 65. Control inputs of amplifiers 64, control inputs of a multiplexer 61, control inputs of a multiplexer 62, control inputs of registers 63, control inputs of a reversible counter 65 connected to the control inputs of the register device 8, the first group of inputs of which is connected to the first group of inputs of the multiplexer 62. The second group of inputs of the multiplexer 62 is connected to the second group of inputs of the register device 8. Third the inputs of the multiplexer 62 are connected to the outputs of the amplifiers 64. The third group of inputs of the register device 8 is connected to the fourth group of inputs of the multiplexer 62. The inputs and outputs of the register device 8 are connected to the inputs and outputs of amplifiers 64, to the inputs of which the first group of outputs of the multiplexer 61 is connected. The first group the outputs of the register device 8 is connected to the second group of outputs of the multiplexer 61, its second group of outputs is connected to the third group of outputs of the multiplexer 61, and its third group of outputs is connected to a gated group of outputs of the multiplexer 61. The synchronization inputs of the registers 63 and the synchronization input of the reverse counter 65 are connected to the synchronization input of the register device 8. The multiplexer 62 has several groups of outputs, and the inputs of each of the registers 63 are connected to one of the output groups of the multiplexer 62. The multiplexer 61 contains several groups of inputs, and the outputs of each of the registers 63 are connected to one of the groups of inputs of the multiplexer 61. The outputs of the reverse counter 65 are connected to the inputs of the addresses of the registers 63.

Контроллер 9 прерываний содержит (фиг. 7) логическую матрицу 66, в качестве которой может использоваться, например, программируемая логическая матрица, регистр 67. Выходы регистра 67 соединены с выходами контроллера 9 прерываний и с первой группой входов логической матрицы 66, к второй группе входов которой подключены входы управления приоритетами контроллера 9 прерываний, к третьей группе входов подключена первая группа входов запросов контроллера 9 прерываний, к четвертой группе входов подключена вторая группа входов запросов контроллера 9 прерываний, к пятой группе входов подключена третья группа входов запросов контроллера 9 прерываний, к шестой группе входов подключена четвертая группа входов запросов контроллера 9 прерываний, к входу подключен вход запроса контроллера 9 прерываний, а выходы соединены с входами регистра 67, выход соединен с входом управления записью регистра 67. Выход управления контроллера 9 прерываний соединен с выходом регистра 67, вход синхронизации которого соединен с входом синхронизации контроллера 2 шины. The interrupt controller 9 contains (Fig. 7) a logic matrix 66, which can be used, for example, a programmable logic matrix, register 67. The outputs of the register 67 are connected to the outputs of the controller 9 interrupts and with the first group of inputs of the logic matrix 66, to the second group of inputs which connects the priority control inputs of the controller 9 interruptions, to the third group of inputs connected the first group of request inputs of the controller 9 interruptions, to the fourth group of inputs connected the second group of request inputs of the controller 9 interrupts, the third group of request inputs of the controller 9 interrupts is connected to the fifth group of inputs, the fourth group of inputs of the controller requests 9 interrupts is connected to the sixth group of inputs, the request input of the controller 9 interrupts is connected to the input, and the outputs are connected to the inputs of register 67, the output is connected to the control input register 67. The control output of the interrupt controller 9 is connected to the output of the register 67, the synchronization input of which is connected to the synchronization input of the bus controller 2.

Шифратор 11 управления содержит (фиг. 8) регистр 68 микрокоманд, мультиплексор 69, память 70 микрокоманд, в качестве которой используется, например, постоянное программируемое запоминающее устройство, мультиплексор 71, дешифратор 72 - преобразователь начального адреса, формирователь 73 адреса микрокоманды, мультиплексор 74 условий, генератор 75, мультиплексор 76, счетчик 77 - таймер, дешифратор 78, RS-триггер 79, шину 80 управления. The control encoder 11 contains (Fig. 8) a microcommand register 68, a multiplexer 69, a microcommand memory 70, which is used, for example, read-only programmable memory, a multiplexer 71, a decoder 72 — a start address converter, a micro command address generator 73, a condition multiplexer 74 , generator 75, multiplexer 76, counter 77 — timer, decoder 78, RS flip-flop 79, control bus 80.

Выходы формирователя 73 адреса микрокоманды соединены с шиной 81. Его выход соединен с линией 82, его входы адреса, входы инструкций, вход инкремента соединены с шиной 80 управления. Его вход условий соединен с линией 83, вход синхронизации - с линией 45. Вторая группа выходов шифратора 11 управления соединена с выходами мультиплексора 69, первая группа входов которого соединена с выходами счетчика-таймера 77 и с входами дешифратора 78. Первая группа выходов шифратора 11 управления соединена с первой группой выходов регистра 68 микрокоманд, входы которого соединены с первой группой выходов памяти 70 микрокоманд. Входы управления и первый вход мультиплексора 76, входы управления мультиплексора 71, входы адреса, входы инструкций, вход инкремента формирователя 73 адреса микрокоманды, вход сброса счетчика-таймера 77, R-вход RS-триггера 79, входы управления мультиплексора 74 условий, вторая группа выходов регистра 68 соединены с шиной 80. Вход управления мультиплексора 69 соединен с выходом памяти 70 микрокоманд. Вторая группа выходов памяти 70 микрокоманд соединена с второй группой входов мультиплексора 69. Выход генератора 75 соединен со счетным входом счетчика-таймера 77, с входом записи регистра 68 микрокоманд, с входом синхронизации формирователя 73 адреса микрокоманды, с третьим выходом шифратора 11 управления. Входы адреса памяти 70 микрокоманд соединены с выходами мультиплексора 71, первая группа входов которого соединена с выходами формирователя 73 адреса микрокоманды, вторая группа входов соединена с выходами дешифратора-преобразователя 72 начального адреса, третья группа входов соединена с пятой группой входов шифратора 11 управления, а первый вход управления соединен с вторым входом шифратора управления. Входы дешифратора-преобразователя 72 начального адреса соединены с первой группой входов шифратора 11 управления. Выход формирователя 73 адреса микрокоманды соединен с вторым входом управления мультиплексора 71. Вход условий формирователя 73 адреса микрокоманды соединен с выходом мультиплексора 74 условий, первая группа входов которого соединена с третьей группой входов шифратора 11 управления, его вторая группа входов соединена с четвертой группой входов шифратора управления, третья группа входов соединена с второй группой входов шифратора управления, а его первый вход и второй вход мультиплексора 76 подключены к управляющему входу шифратора управления. Второй вход мультиплексора 74 условий соединен с первым входом шифратора 11 управления. Выход дешифратора 78 соединен с S-входом RS-триггера 79, выход которого подключен к второму выходу шифратора 11 управления. Выход мультиплексора 76 соединен с вторым выходом шифратора управления. Третья группа выходов памяти 70 микрокоманд соединена с третьей группой выходов шифратора 11 управления. The outputs of the micro-command address generator 73 are connected to the bus 81. Its output is connected to the line 82, its address inputs, instruction inputs, and the increment input are connected to the control bus 80. Its condition input is connected to line 83, the synchronization input to line 45. The second group of outputs of the control encoder 11 is connected to the outputs of the multiplexer 69, the first group of inputs of which is connected to the outputs of the counter-timer 77 and to the inputs of the decoder 78. The first group of outputs of the control encoder 11 connected to the first group of outputs of the register 68 microcommands, the inputs of which are connected to the first group of outputs of the memory 70 microcommands. The control inputs and the first input of the multiplexer 76, the control inputs of the multiplexer 71, the address inputs, instruction inputs, the increment input of the shaper 73 of the micro command address, the reset input of the counter-timer 77, the R-input of the RS flip-flop 79, the control inputs of the multiplexer 74 conditions, the second group of outputs register 68 are connected to the bus 80. The control input of the multiplexer 69 is connected to the output of the memory 70 microcommands. The second group of outputs of the micro-command memory 70 is connected to the second group of inputs of the multiplexer 69. The output of the generator 75 is connected to the counting input of the counter-timer 77, to the write input of the micro-command register 68, to the synchronization input of the micro-command address generator 73, with the third output of the control encoder 11. The inputs of the memory address of the microcircuit 70 are connected to the outputs of the multiplexer 71, the first group of inputs is connected to the outputs of the microcircuit address generator 73, the second group of inputs is connected to the outputs of the initial address decoder-transformer 72, the third group of inputs is connected to the fifth group of inputs of the control encoder 11, and the first the control input is connected to the second input of the control encoder. The inputs of the decoder-converter 72 of the starting address are connected to the first group of inputs of the control encoder 11. The output of the micro command address generator 73 is connected to the second control input of the multiplexer 71. The conditions input of the micro command address generator 73 is connected to the output of the condition multiplexer 74, the first group of inputs of which is connected to the third group of inputs of the control encoder 11, its second group of inputs is connected to the fourth group of inputs of the control encoder , the third group of inputs is connected to the second group of inputs of the control encoder, and its first input and second input of the multiplexer 76 are connected to the control input of the control encoder Niya. The second input of the condition multiplexer 74 is connected to the first input of the control encoder 11. The output of the decoder 78 is connected to the S-input of the RS-flip-flop 79, the output of which is connected to the second output of the control encoder 11. The output of the multiplexer 76 is connected to the second output of the control encoder. The third group of outputs of the micro-instruction memory 70 is connected to the third group of outputs of the control encoder 11.

Формирователь 73 адреса микрокоманды (фиг. 9) содержит регистр 84, сумматор 85, стек 86, реверсивный счетчик 87 - указатель стека, мультиплексор 88, дешифратор 89 инструкций. Выходы мультиплексора 88 соединены с выходами формирователя 73 адреса микрокоманды и с входами сумматора 85, вход инкремента которого соединен с входом инкремента формирователя 73 адреса микрокоманды, а выходы подключены к входам регистра 84. Входы адреса формирователя 73 адреса микрокоманды соединены с первой группой входов мультиплексора 88, с второй группой входов которого соединены выходы стека 86, а с третьей группой входов и с входами стека 86 соединены выходы регистра 84. Входы инструкций формирователя 73 адреса микрокоманды соединены с входами дешифратора 89 инструкций, вход условий которого соединен с входом условий формирователя 73 адреса микрокоманды, выходы управления соединены с входами управления мультиплексора 88, а выход соединен с входом управления реверсного счетчика-указателя 87 стека и с входом управления стека 86. Выход дешифратора 89 инструкций соединен с выходом формирователя 73 адреса микрокоманды. Вход синхронизации формирователя 73 адреса микрокоманд соединен со счетным входом реверсивного счетчика-указателя 87 стека, с входом синхронизации стека, с входом синхронизации регистра 84. Выходы реверсивного счетчика-указателя 87 стека соединены с входами адреса стека 86. The micro-command address generator 73 (Fig. 9) contains a register 84, an adder 85, a stack 86, a reverse counter 87 — a stack pointer, a multiplexer 88, an instruction decoder 89. The outputs of the multiplexer 88 are connected to the outputs of the micro-command address generator 73 and to the inputs of the adder 85, the increment input of which is connected to the increment input of the micro-command address generator 73, and the outputs are connected to the inputs of the register 84. The addresses of the micro-command address generator 73 are connected to the first group of inputs of the multiplexer 88, the outputs of the stack 84 are connected to the second group of inputs of which the outputs of the stack 86 are connected, and the outputs of the register 84 are connected to the third group of inputs and to the inputs of the stack 86. by the instructions decoder 89, the condition input of which is connected to the conditions input of the micro command address generator 73, the control outputs are connected to the control inputs of the multiplexer 88, and the output is connected to the control input of the counter counter-pointer 87 of the stack and to the control input of the stack 86. The output of the decoder 89 is connected with the output of the shaper 73 addresses of the micro command. The synchronization input of the micro-instruction address generator 73 is connected to the counting input of the reverse counter-pointer 87 of the stack, with the synchronization input of the stack, with the synchronization input of the register 84. The outputs of the reverse counter-pointer 87 of the stack are connected to the inputs of the address of the stack 86.

Пример реализации приемника 12 показан на фиг. 10. Приемник содержит фифо 90 приема, мультиплексор 91, сдвиговый регистр 92, детектор 93 флага, RS-триггер 94, логику 95 циклического контроля, декодер 96, детектор 97 входного сигнала, счетчик 98 битов, счетчик 99 байтов, управляющую логику 100, шину 101. Выходы фифо 90 приема по шине 26 соединены с выходами приемника 12 и с первой группой входов мультиплексора 91. Выходы меток фифо 90 приема по шине 102 соединены с первой группой входов управляющей логики 100. Выходы сдвигового регистра 92 соединены по шине 103 с входами фифо 90 приема и с входами детектора 93 флага, выход которого соединен с S-входом RS-триггера 94. Выход декодера 96 соединен по линии 104 с входом сдвигового регистра 92 и с входом логики 95 циклического контроля. Выход синхронизации декодера 96 соединен по линии 105 с входом синхронизации сдвигового регистра 92, с входом синхронизации логики 95 циклического контроля и со счетным входом счетчика 98 битов. Вход декодера 96 и вход детектора 97 входного сигнала соединены с входом данных приемника 12. Выход контроля логики 95 циклического контроля по линии 106 соединен с первым входом мультиплексора 91. Выход RS-триггера 94 соединен с входом сброса счетчика 98 битов, выходы которого соединены с второй группой входов управляющей логики 100 и с второй группой входов мультиплексора 91. Выходы мультиплексора 91 соединены с входами-выходами приемника 12. Выход детектора 97 входного сигнала соединен с вторым входом мультиплексора 91 и с вторым входом управляющей логики 100. Выходы счетчика 99 байтов соединены с третьей группой входов мультиплексора 91 и с третьей группой входов управляющей логики 100, с четвертой группой входов которой соединена вторая группа входов управления приемника. Выходы состояний и выходы управления приемника 12, входы управления и входы меток фифо 90 приема, входы управления мультиплексора 91, входы управления логики 95 циклического контроля, счетный вход и вход сброса счетчика 99 байтов, R- вход RS-триггера 94, выходы управляющей логики 100 соединены с шиной 101. Пятая группа входов управляющей логики 100 соединена с первой группой входов управления приемника 12, к входам-выходам которого подключена шестая группа входов управляющей логики 100. Вход управления приемника 12 соединен с входом управляющей логики 100. An example implementation of receiver 12 is shown in FIG. 10. The receiver contains Fifo 90 reception, a multiplexer 91, a shift register 92, a flag detector 93, an RS flip-flop 94, a loopback logic 95, a decoder 96, an input signal detector 97, a counter 98 bits, a counter 99 bytes, a control logic 100, a bus 101. The outputs of the FIFO reception 90 on the bus 26 are connected to the outputs of the receiver 12 and to the first group of inputs of the multiplexer 91. The outputs of the FIFO labels 90 of the reception on the bus 102 are connected to the first group of inputs of the control logic 100. The outputs of the shift register 92 are connected via the bus 103 to the inputs of the FIFO 90 receptions and with detector inputs 93 flags, exit which is connected to S-input of RS-flip-flop 94. The output of the decoder 96 is connected via line 104 to the input of shift register 92 and to the input of the control logic 95 cyclic. The synchronization output of the decoder 96 is connected via line 105 to the synchronization input of the shift register 92, with the synchronization input of the cyclic control logic 95 and with the counting input of the 98-bit counter. The input of the decoder 96 and the input of the detector 97 of the input signal are connected to the data input of the receiver 12. The output of the logic control 95 of the cyclic control via line 106 is connected to the first input of the multiplexer 91. The output of the RS-trigger 94 is connected to the reset input of the counter 98 bits, the outputs of which are connected to the second the group of inputs of the control logic 100 and with the second group of inputs of the multiplexer 91. The outputs of the multiplexer 91 are connected to the inputs-outputs of the receiver 12. The output of the detector 97 of the input signal is connected to the second input of the multiplexer 91 and to the second input of the control loop geeks 100. The outputs of the 99-byte counter are connected to the third group of inputs of the multiplexer 91 and to the third group of inputs of the control logic 100, with the fourth group of inputs of which the second group of inputs of the receiver control is connected. The status outputs and control outputs of the receiver 12, control inputs and inputs of the FIFO labels 90 of the reception, control inputs of the multiplexer 91, control inputs of the logic 95 of cyclic control, counting input and reset input of the counter 99 bytes, R-input of the RS flip-flop 94, outputs of the control logic 100 connected to the bus 101. The fifth group of inputs of the control logic 100 is connected to the first group of inputs of the control of the receiver 12, to the inputs and outputs of which a sixth group of inputs of the control logic 100 is connected. The control input of the receiver 12 is connected to the input of the control logic 100.

Пример выполнения передатчика 13 приведен на фиг. 11. Передатчик содержит фифо 107 передачи, сдвиговый регистр 108, логику 109 циклического контроля, коммутатор 110, кодер 111, счетчик 112 битов, управляющую логику 113, усилители 114, генератор 115, шину 116. Выходы фифо 107 передачи соединены по шине 117 с входами регистра 108 сдвига, выход которого по линии 118 подключен к первому входу коммутатора 110 и к входу логики 109 циклического контроля. Выход генератора 115 по линии 119 подключен к входу синхронизации кодера 111, к входу синхронизации управляющей логики 113, к входу синхронизации сдвигового регистра 108, к входу синхронизации логики 109 циклического контроля, к счетному входу счетчика 112 битов. Выход данных логики 109 циклического контроля соединен по линии 120 с вторым входом коммутатора 110, выход которого соединен по линии 121 с входом кодера 111. Выход кодера соединен с выходом передатчика 13. Входы-выходы передатчика соединены с пятой группой входов управляющей логики 113 и с выходами усилителей 114. Входы и входы управления усилителей 114, выходы состояний и выходы управления передатчика 13, входы меток и входы управления фифо 107 передачи, вход записи сдвигового регистра 108, входы управления логики 109 циклического контроля, вход управления коммутатора 110, вход сброса счетчика 112 битов, вход управления кодера 111, выходы управляющей логики 113 соединены с шиной 116. Выходы меток фифо 107 передачи соединены по шине 122 с первой группой входов управляющей логики 113, с второй группой входов которой соединены выходы счетчика 112 битов, с третьей группой входов соединена вторая группа входов управления передатчика 13, а с четвертой группой входов соединена первая группа входов управления передатчика. Входы передатчика 13 подключены по шине 27 к входам фифо 107 передачи. Вход передатчика 13 соединен с входом управляющей логики 113. An example of transmitter 13 is shown in FIG. 11. The transmitter contains FIFO 107 transmission, shift register 108, logic 109 cyclic control, switch 110, encoder 111, counter 112 bits, control logic 113, amplifiers 114, generator 115, bus 116. The outputs of FIFO 107 transmission are connected via bus 117 with inputs register 108 shift, the output of which is connected via line 118 to the first input of the switch 110 and to the input of the logic 109 of cyclic control. The output of the generator 115 via line 119 is connected to the synchronization input of the encoder 111, to the synchronization input of the control logic 113, to the synchronization input of the shift register 108, to the synchronization input of the cyclic control logic 109, to the counter input of the 112 bit counter. The data output of the logic 109 of cyclic control is connected via line 120 to the second input of the switch 110, the output of which is connected via line 121 to the input of encoder 111. The output of the encoder is connected to the output of transmitter 13. The inputs and outputs of the transmitter are connected to the fifth group of inputs of control logic 113 and to the outputs amplifiers 114. The control inputs and inputs of amplifiers 114, the status outputs and control outputs of the transmitter 13, the label inputs and the control inputs of the transmission FIFO 107, the input of the shift register 108, the control inputs of the logic 109 of the cyclic control, the control input the switch 110, the reset input of the counter 112 bits, the control input of the encoder 111, the outputs of the control logic 113 are connected to the bus 116. The outputs of the tags Fifo 107 transmission are connected via bus 122 to the first group of inputs of the control logic 113, with the second group of inputs of which the outputs of the counter 112 bits are connected , a second group of transmitter control inputs 13 is connected to a third group of inputs, and a first group of transmitter control inputs is connected to a fourth group of inputs. The inputs of the transmitter 13 are connected via bus 27 to the inputs of the fifo 107 transmission. The input of the transmitter 13 is connected to the input of the control logic 113.

Пример выполнения кодера 111 показан на фиг. 12. Кодер содержит диод 123, резистор 124, инвертор 125, схемы 126, 127 совпадений, JK-триггеры 128, 129. Вход инвертора 125 и первый вход схемы 126 совпадений соединены с входом кодера 111. Выход инвертора 125 соединен с первым входом схемы 127 совпадений. Второй вход схемы 126 совпадений и второй вход схемы 127 совпадений соединены с инверсным выходом JK-триггера 129, J- и К-входы которого через резистор 124 подключены к шине питания для установки уровня "1". Выход схемы 126 совпадений соединен с J-входом JK-триггера 128, к К-входу которого подключен выход схемы 127 совпадений. Вход синхронизации JK-триггера 128 и вход синхронизации JK-триггера 129 подключены к входу синхронизации кодера 111. Выход JK-триггера 128 через диод 123 подключен к выходу кодера 111. An exemplary embodiment of encoder 111 is shown in FIG. 12. The encoder contains a diode 123, a resistor 124, an inverter 125, coincidence circuits 126, 127, JK flip-flops 128, 129. The input of the inverter 125 and the first input of the coincidence circuit 126 are connected to the input of the encoder 111. The output of the inverter 125 is connected to the first input of the circuit 127 matches. The second input of the coincidence circuit 126 and the second input of the coincidence circuit 127 are connected to the inverse output of the JK flip-flop 129, the J- and K-inputs of which are connected through the resistor 124 to the power bus to set the level to "1". The output of the match circuit 126 is connected to the J-input of the JK flip-flop 128, to the K-input of which the output of the match circuit 127 is connected. The synchronization input of the JK trigger 128 and the synchronization input of the JK trigger 129 are connected to the synchronization input of the encoder 111. The output of the JK trigger 128 through the diode 123 is connected to the output of the encoder 111.

Пример выполнения декодера 96 показан на фиг. 13. Декодер содержит линию 130 задержки, схемы ИСКЛЮЧАЮЩЕЕ ИЛИ 131, 132, инвертор 133, D-триггеры 134, 135. Вход линии 130 задержки, первый вход схемы ИСКЛЮЧАЮЩЕЕ ИЛИ 131, D-вход D-триггера 135 соединены с входом декодера 96. Второй вход схема ИСКЛЮЧАЮЩЕЕ ИЛИ 131 соединен с первым выходом линии 130 задержки, второй выход которой соединен с первым входом схемы ИСКЛЮЧАЮЩЕЕ ИЛИ 132, а третий выход - с вторым входом схема ИСКЛЮЧАЮЩЕЕ ИЛИ 132. Выход схемы ИСКЛЮЧАЮЩЕЕ ИЛИ 131 соединен с входом инвертора 133, выход которого подключен к D-входу D-триггера 134. Выход схемы ИСКЛЮЧАЮЩЕЕ ИЛИ 132 соединен с входом синхронизации D-триггера 134, выход которого подключен к выходу синхронизации декодера 96 и к входу синхронизации D-триггера 135. Инверсный выход D-триггера 135 подключен к выходу декодера 96. An exemplary embodiment of decoder 96 is shown in FIG. 13. The decoder comprises a delay line 130, an EXCLUSIVE OR circuit 131, 132, an inverter 133, D-flip-flops 134, 135. An input of the delay line 130, a first input of an EXCLUSIVE OR 131 circuit, the D-input of the D-flip-flop 135 are connected to the input of the decoder 96. The second input of the EXCLUSIVE OR circuit 131 is connected to the first output of the delay line 130, the second output of which is connected to the first input of the EXCLUSIVE OR circuit 132, and the third output is connected to the second input of the circuit EXCLUSIVE OR 132. The output of the circuit EXCLUSIVE OR 131 is connected to the input of inverter 133, the output which is connected to the D-input of D-flip-flop 134. The circuit output is EXCLUSIVE LI 132 is connected to the input of sync D-flip-flop 134, whose output is connected to the output of sync decoder 96 and to the D-input of synchronization flip-flop 135. Inverted output of D-flip-flop 135 is connected to the output of the decoder 96.

Подключение контроллеров 20 к каналу 24 связи производится через некоторые расстояния. Такие подключения могут производиться, например, путем прокола коаксиального кабеля, применяемого для реализации канала 24 связи. По концам коаксиального кабеля в этом случае устанавливаются согласующие нагрузки 136 (фиг. 2). The controllers 20 are connected to the communication channel 24 through some distances. Such connections can be made, for example, by puncturing the coaxial cable used to implement the communication channel 24. In this case, matching loads 136 are installed at the ends of the coaxial cable (Fig. 2).

Логика 109 циклического контроля передатчика 13 и логика 95 циклического контроля приемника 12 реализуют проверку данных с помощью полинома х15125+1 и построены по одинаковой схеме (фиг. 14), в состав которой входят схема ИСКЛЮЧАЮЩЕЕ ИЛИ 137, схема 138 совпадений, пятиразрядный сдвиговый регистр 139, схема ИСКЛЮЧАЮЩЕЕ ИЛИ 140, семиразрядный сдвиговый регистр 141, схема ИСКЛЮЧАЮЩЕЕ ИЛИ 142, пятиразрядный сдвиговый регистр 143, мультиплексор 144, дешифратор 145. Вход логики циклического контроля соединен с первым входом схемы ИСКЛЮЧАЮЩЕЕ ИЛИ 137 и с первым входом мультиплексора 144. Вход синхронизации логики циклического контроля соединен по линии 119 для передатчика 13 и по линии 105 для приемника 12 с входами синхронизации регистров 139, 141, 143. Входы управления логики циклического контроля соединены с первым входом схемы 138 совпадений и входами управления мультиплексора 144. Выход данных логики циклического контроля соединен с выходом мультиплексора 144, к второму входу которого и второму входу схемы ИСКЛЮЧАЮЩЕЕ ИЛИ 137 подключен выход сдвигового регистра 143. Выход схемы ИСКЛЮЧАЮЩЕЕ ИЛИ 137 соединен с вторым входом схемы 138 совпадений, выход которой соединен с входом сдвигового регистра 139, с первыми входами схем ИСКЛЮЧАЮЩЕЕ ИЛИ 140, 142. Выход регистра 139 соединен с вторым входом схемы ИСКЛЮЧАЮЩЕЕ ИЛИ 140, выход которой соединен с входом сдвигового регистра 141. Выход сдвигового регистра 141 соединен с вторым входом схемы ИСКЛЮЧАЮЩЕЕ ИЛИ 142, выход которой соединен с входом сдвигового регистра 143. Выходы сдвигового регистра 139 соединены с первой группой входов дешифратора 145. Выходы сдвигового регистра 141 соединены с второй группой входов дешифратора 145. Выходы сдвигового регистра 143 соединены с третьей группой входов дешифратора 145, выход которого соединен с выходом контроля логики циклического контроля.The logic 109 of the cyclic control of the transmitter 13 and the logic 95 of the cyclic control of the receiver 12 implement data verification using the polynomial x 15 + x 12 + x 5 +1 and are constructed according to the same scheme (Fig. 14), which includes the circuit EXCLUSIVE OR 137, the scheme 138 matches, five-bit shift register 139, EX-OR circuit 140, seven-bit shift register 141, EX-OR circuit 142, five-digit shift register 143, multiplexer 144, decoder 145. The input of the cyclic control logic is connected to the first input of the circuit EXCLUSIVELY the multiplexer 144. The synchronization logic input is connected via line 119 for the transmitter 13 and via line 105 to the receiver 12 with the synchronization inputs of the registers 139, 141, 143. The control inputs of the cyclic control logic are connected to the first input of the match circuit 138 and the control inputs of the multiplexer 144 The data output of the cyclic control logic is connected to the output of the multiplexer 144, to the second input of which and the second input of the EXCLUSIVE OR 137 circuit, the output of the shift register 143 is connected. The output of the EXCLUSIVE OR 137 circuit is connected to w the next input of the coincidence circuit 138, the output of which is connected to the input of the shift register 139, with the first inputs of the EXCLUSIVE OR circuit 140, 142. The output of the register 139 is connected to the second input of the circuit EXCLUSIVE OR 140, the output of which is connected to the input of the shift register 141. The output of the shift register 141 connected to the second input of the EXCLUSIVE OR circuit 142, the output of which is connected to the input of the shift register 143. The outputs of the shift register 139 are connected to the first group of inputs of the decoder 145. The outputs of the shift register 141 are connected to the second group of inputs of the decoder and 145. The outputs of the shift register 143 are connected to the third group of inputs of the decoder 145, the output of which is connected to the control output of the cyclic control logic.

Фифо 90 приема и фифо 107 передачи являются памятью обратного магазинного типа, в которую входят (фиг. 15) оперативная память 146, оперативная память 147, мультиплексор 148, счетчики 149, 150. Входы фифо соединены с входами оперативной памяти 146, к выходам которой подключены выходы фифо. Входы фифо соединены с входами оперативной памяти 147, к выходам которой подключены выходы меток фифо. Входы управления фифо соединены с входами управления оперативной памяти 146, оперативной памяти 147, мультиплексора 148, счетчиков 149, 150. Выходы счетчика 149 соединены с первой группой входов мультиплексора 148, к второй группе входов которого подключены выходы счетчика 150. Выходы мультиплексора 148 соединены с входами адреса оперативной памяти 146 и оперативной памяти 147. Fifo 90 reception and Fifo 107 transmission are reverse store type memory, which includes (Fig. 15) RAM 146, RAM 147, multiplexer 148, counters 149, 150. The FIFO inputs are connected to the inputs of the RAM 146, to the outputs of which are connected Fifo exits. The FIFO inputs are connected to the inputs of the RAM 147, to the outputs of which the outputs of the FIFO labels are connected. Fifo control inputs are connected to the control inputs of RAM 146, RAM 147, multiplexer 148, counters 149, 150. The outputs of the counter 149 are connected to the first group of inputs of the multiplexer 148, the outputs of the counter 150 are connected to the second group of inputs. The outputs of the multiplexer 148 are connected to the inputs RAM addresses 146 and RAM 147.

Запоминающее устройство 7 предназначено для хранения результатов арифметических и логических операций над данными. Операнды поступают на первую и вторую группы адресных входов запоминающего устройства 7, если операции производятся над двумя операндами, или поступают только на первую группу адресных входов запоминающего устройства 7, если операции производятся над одним операндом, при этом вторая группа входов используется для расширения разрядности сигналов управления запоминающим устройством 7. В последнем случае на вторую группу адресных входов и на входы управления запоминающего устройства 7 подают код выполняемой операции. The storage device 7 is designed to store the results of arithmetic and logical operations on the data. The operands go to the first and second groups of address inputs of the memory device 7, if operations are performed on two operands, or go only to the first group of address inputs of the memory device 7, if operations are performed on one operand, while the second group of inputs is used to expand the bit depth of control signals memory device 7. In the latter case, the code of the operation to be performed is supplied to the second group of address inputs and to the control inputs of the memory device 7.

Запоминающее устройство 7 может быть реализовано, например, на основе постоянных программируемых запоминающих устройств или программируемых логических матриц. Программирование постоянных программируемых запоминающих устройств или программируемых логических матриц производится предварительно перед сборкой контроллера. The storage device 7 may be implemented, for example, on the basis of read-only programmable storage devices or programmable logic arrays. Programming persistent programmable storage devices or programmable logic arrays is done before the controller is assembled.

Запоминающее устройство 7 выполняет функции арифметико-логического устройства с нестандартным набором арифметических и логических команд, который выбирается индивидуально для каждого конкретного исполнения контроллера. Набор арифметических и логических команд реализуется путем программирования постоянных программируемых запоминающих устройств или программируемых логических матриц, входящих в состав запоминающего устройства 7. Нестандартный набор арифметических и логических команд при программировании запоминающего устройства 7 выбирается таким, чтобы повысить быстродействие контроллера и, в частности, за счет этого добиться сокращения аппаратурных затрат и расширения его функций. The storage device 7 performs the functions of an arithmetic-logical device with a non-standard set of arithmetic and logical commands, which is selected individually for each specific controller execution. A set of arithmetic and logical commands is implemented by programming permanent programmable storage devices or programmable logic matrices that are part of the storage device 7. A non-standard set of arithmetic and logical commands when programming the storage device 7 is selected so as to increase the speed of the controller and, in particular, due to this to achieve a reduction in hardware costs and the expansion of its functions.

При использовании постоянных программируемых запоминающих устройств для построения запоминающего устройства 7 в их ячейках памяти должны быть записаны результаты логических и арифметических операций над операндами, которые подаются на их адресные входы. When using permanent programmable storage devices to build a storage device 7 in their memory cells should be recorded the results of logical and arithmetic operations on operands that are fed to their address inputs.

Примером программируемой в запоминающем устройстве 7 нестандартной арифметической операции может служить операция вычитания, выполняемая на запоминающем устройстве. Время выполнения такой операции меньше, чем время выполнения аналогичной операции на стандартных арифметико-логических устройствах, поскольку для выполнения этой операции не требуется перевода одного из операндов в дополнительный код. Программирование должно выполняться таким образом, чтобы результат операции читался на выходы запоминающего устройства 7 при подаче операндов на первую и вторую группы его входов, при подаче кода операции на входы управления и при подаче сигнала входного переноса на вход переноса запоминающего устройства 7. An example of a non-standard arithmetic operation programmed in the storage device 7 can be a subtraction operation performed on the storage device. The execution time of such an operation is shorter than the execution time of a similar operation on standard arithmetic-logic devices, since this operation does not require the translation of one of the operands into additional code. Programming should be performed in such a way that the result of the operation is read to the outputs of the storage device 7 when the operands are supplied to the first and second groups of its inputs, when the operation code is supplied to the control inputs and when the input transfer signal is applied to the transfer input of the storage device 7.

Другим примером операции может служить операция умножения на константу. При этом запоминающее устройство 7 должно программироваться таким образом, чтобы при подаче множимого на первую группу адресных входов и при подаче на входы управления кода операции на выходах ячеек памяти запоминающего устройства 7 считывался результат операции, а выход переноса запоминающего устройства 7 мог указывать на то, что результат операции не вмещается в одно слово. В этом случае запоминающее устройство 7 программируется таким образом, чтобы при подаче кода операции извлечения из запоминающего устройства 7 следующего слова результата операции умножения на выходах запоминающего устройства 7 читалось следующее слово результата операции. Another example of an operation is the operation of multiplication by a constant. In this case, the storage device 7 should be programmed in such a way that when the multiplier is supplied to the first group of address inputs and when the operation code is supplied to the control inputs, the result of the operation is read at the outputs of the memory cells of the storage device 7, and the transfer output of the storage device 7 could indicate that the result of the operation does not fit in one word. In this case, the storage device 7 is programmed so that when the operation code is retrieved from the storage device 7 for the next word of the result of the multiplication operation, the next word of the result of the operation is read at the outputs of the storage device 7.

Если запоминающее устройство 7 выполнено односекционным на основе программируемого постоянного запоминающего устройства, то первая группа адресных входом запоминающего устройства 7 соединена с первой группой входов адреса программируемого постоянного запоминающего устройства, вторая группа входов адреса которого соединена с второй группой адресных входов запоминающего устройства 7, третья группа входов адреса соединена с входами управления запоминающего устройства 7, выходы соединены с выходами запоминающего устройства 7, вход адреса соединен с входом переноса запоминающего устройства 7, а выход - с выходом переноса запоминащего устройства 7. If the storage device 7 is made single-section based on programmable read-only memory, then the first group of address inputs of the storage device 7 is connected to the first group of address inputs of the programmable read-only memory, the second group of address inputs of which are connected to the second group of address inputs of the storage device 7, the third group of inputs the address is connected to the control inputs of the storage device 7, the outputs are connected to the outputs of the storage device 7, the address sa connected to the input transfer memory 7 and output - with output transfer storage devices 7.

Для выполнения операции вычитания предварительно перед сборкой контроллера программируемые постоянные запоминающие устройства программируются таким образом, что при подаче на входы управления запоминающего устройства 7 кода операции вычитания, на первую группу его адресных входов кода уменьшаемого, на вторую группу его адресных входов кода вычитаемого на выходы программируемого постоянного запоминающего устройства, являющиеся выходами запоминающего устройства 7, из его ячеек памяти считываются коды чисел, являющиеся разностью уменьшаемого и вычитаемого. Если уменьшаемое меньше вычитаемого, то на выходе переноса запоминающего устройства 7, являющемся выходом программируемого постоянного запоминающего устройства, из ячейки памяти, адрес которой определяется кодами уменьшаемого, вычитаемого и кодом операции, считывается сигнал выходного переноса. Сигнал входного переноса, подключаемый к одному из входов адреса программируемого постоянного запоминающего устройства, также влияет на результат операции, поскольку выбирается соответствующая ячейка памяти. To perform the subtraction operation, the programmable read-only memory devices are pre-programmed before the controller is assembled in such a way that when the subtraction operation code is supplied to the control inputs of the memory device 7, it is reduced to the first group of its address inputs, the code is deducted to the outputs of the programmable constant memory device, which are the outputs of the memory device 7, from its memory cells are read codes of numbers, which are the difference of the mind shaemogo and subtract. If the reducible is less than the subtracted, then the output transfer signal is read out from the memory cell, the address of which is determined by the codes to be reduced, subtracted and the operation code, at the transfer output of the storage device 7, which is the output of the programmable read-only memory device. The input transfer signal connected to one of the address inputs of the programmable read-only memory also affects the result of the operation, since the corresponding memory cell is selected.

Если входов адреса программируемого постоянного запоминающего устройства недостаточно для выполнения операций над многоразрядными числами, то запоминающее устройство 7 выполняется секционированным. Каждая из секции 52 запоминающего устройства может выполняться на основе программируемого постоянного запоминающего устройства. При этом первая группа входов секции 52 запоминающего устройства предназначена для подачи нескольких разрядов уменьшаемого, вторая группа входов - нескольких разрядов вычитаемого, третья группа входов - кода операции, входы переноса секции 52 запоминающего устройства - выходных сигналов с выходов переноса запоминающего устройства 53 ускоренных переносов, входы переноса которого предназначены для подачи сигналов распространения и генерации переноса с выходов переноса секции 52 запоминающего устройства. Вход переноса запоминающего устройства 53 ускоренных переносов и вход переноса секции 52 запоминающего устройства предназначены для подачи на них сигнала входного переноса. Входы управления запоминающего устройства 53 служит для подачи на них сигналов кодов операции. If the address inputs of the programmable read-only memory are not enough to perform operations on multi-digit numbers, then the storage device 7 is partitioned. Each of the storage section 52 may be performed based on programmable read-only memory. In this case, the first group of inputs of section 52 of the storage device is intended to supply several bits of the reducible, the second group of inputs is several bits of the subtracted, the third group of inputs is the operation code, the transfer inputs of section 52 of the storage device are the output signals from the outputs of the transfer of the memory device 53 of accelerated transfers, inputs the transfer of which is intended to supply propagation signals and transfer generation from the transfer outputs of section 52 of the storage device. The transfer input of the storage device 53 accelerated transfers and the transfer input section 52 of the storage device are designed to supply them with an input transfer signal. The control inputs of the storage device 53 serves to supply them with operation code signals.

Запоминающее устройство 53 ускоренных переносов может быть выполнено, например, на основе программируемой логической матрицы или программируемого постоянного запоминающего устройства, которые программируются заранее перед сборкой контроллера таким образом, что при подаче на входы переносов сигналов распространения переноса и генерации переноса с выходов переноса секции 52 запоминающего устройства на выходах переносов запоминающего устройства 53 ускоренных переносов генерируются сигналы входных переносов для каждой из секций 52 запоминающего устройства, с учетом этих сигналов на выходах которых формируется результат операции. The memory device 53 accelerated transfers can be performed, for example, on the basis of a programmable logic matrix or programmable read-only memory, which are programmed in advance before the controller is assembled so that when the transfer propagation signals and transfer generation are transferred to the transfer inputs from the transfer outputs of the storage section 52 of the storage device at the outputs of the transfers of the memory device 53 accelerated transfers generated signals of input transfers for each of the sections 52 inayuschego devices based on those signals which outputs operation result is generated.

Аналогично путем программирования в ячейках памяти запоминающего устройства 7 результатов операций реализуются операции сложения, сдвига, логического сложения и умножения. Кроме того, реализуются логические операции преобразования кодов, например преобразования кодов адреса с шины 18 адреса контроллера в коды адреса ячеек оперативной памяти 6. Реализуются логические операции преобразования слов состояний и управления в коды управления, которые подаются с выходов состояний запоминающего устройства 7 на первую группу входов шифратора 11 управления. По этим кодам управления контроллер переходит на тот или иной режим функционирования. Similarly, by programming in the memory cells of the storage device 7 of the results of operations, operations of addition, shift, logical addition and multiplication are realized. In addition, the logical operations of code conversion are implemented, for example, the conversion of address codes from the bus 18 of the controller address to the address codes of RAM cells 6. The logical operations of converting state and control words to control codes are implemented, which are supplied from the outputs of the states of the memory device 7 to the first group of inputs encoder 11 control. According to these control codes, the controller switches to a particular operating mode.

Каждая из операций, выполняемая на запоминающем устройстве 7, программируется таким образом, чтобы максимально уменьшить время реакции контроллера по отработке внешних воздействий и добиться выполнения процессов реального времени, например обеспечить обмен данными (словами управления и состояний) между шиной 17 данных контроллера и оперативной памятью 6 в режиме программного обмена со стороны ЭВМ 21 за время, отведенное для режимов чтения и записи на шине 17 данных. Операции, выполняемые на запоминающем устройстве 7, позволяют, например, обеспечить фильтрацию принимаемых из канала 24 связи пакетов по адресам назначения этих пакетов за промежутки времени, не превышающие время приема пакета минимальной длины. Each of the operations performed on the storage device 7 is programmed in such a way as to minimize the response time of the controller to process external influences and achieve real-time processes, for example, to ensure the exchange of data (control and state words) between the controller data bus 17 and RAM 6 in the mode of program exchange from the side of the computer 21 during the time allotted for the read and write modes on the data bus 17. The operations performed on the storage device 7, for example, allow filtering received packets from the communication channel 24 by the destination addresses of these packets for periods of time not exceeding the packet receiving time of the minimum length.

Для расширения возможности запоминающего устройства 7 по хранению в его ячейках памяти результатов арифметических и логических операций над операндами, подаваемыми на его входы при выполнении однооперандных команд, вторая группа адресных входов запоминающего устройства 7 используется как группа управляющих входов, сигналы управления при этом подаются с второй и третьей групп выходов памяти 70 микрокоманд через регистровое устройство 8. To expand the ability of the memory device 7 to store in its memory cells the results of arithmetic and logical operations on operands supplied to its inputs when performing single-operand commands, the second group of address inputs of the memory device 7 is used as a group of control inputs, the control signals are supplied from the second and the third group of memory outputs 70 microcommands through a register device 8.

Контроллер 9 прерываний обеспечивает арбитраж запросов внутренних прерываний и формирует на своих выходах вектор внутренних прерываний для перевода контроллера в новый режим работы. The interrupt controller 9 provides arbitration of internal interrupt requests and generates an internal interrupt vector at its outputs to transfer the controller to a new operating mode.

В качестве логической матрицы 66 может использоваться программируемая логическая матрица, программируемая перед установкой в контроллер. Программирование выполняется таким образом, что программируемая логическая матрица на своих выходах формирует сигналы вектора, значение которого определяется состоянием входов управления приоритетами, состоянием входов текущего приоритета и входов запросов. Программирование выполняется таким образом, что если состояние входов управления приоритетами определяет приоритет более высокий, чем запрашиваемый приоритет на входах запроса логической матрицы 66, то на ее выходе управления не формируется сигнал запроса. Если на входах запроса запрашиваемый приоритет равен или выше приоритета на входах управления приоритета и на первой группе входов логической матрицы 66 (выше текущего приоритета), то на выходах логической матрицы 66 должны формироваться сигналы вектора внутренних прерываний, соответствующие наивысшему из запрашиваемых приоритетов на входах запроса, а на выходе управления логической матрицы 66 должен формироваться сигнал запроса. As the logic matrix 66, a programmable logic matrix programmable prior to installation in the controller may be used. Programming is performed in such a way that the programmable logic matrix generates vector signals at its outputs, the value of which is determined by the state of the priority control inputs, the state of the current priority inputs and request inputs. Programming is performed in such a way that if the state of the priority control inputs determines a priority higher than the requested priority at the request inputs of the logic matrix 66, then a request signal is not generated at its control output. If the requested priority at the inputs of the request is equal to or higher than the priority at the inputs of the priority control and at the first group of inputs of the logic matrix 66 (higher than the current priority), then the outputs of the logic matrix 66 should generate signals of the internal interrupt vector corresponding to the highest of the requested priorities at the request inputs, and at the control output of the logic matrix 66, a request signal should be generated.

Регистр 67 служит для хранения сигнала запроса, который вместе с сигналами вектора внутренних прерываний по тактовому импульсу на входе синхронизации регистра 67 вектора прерываний переписывается на его выходы и на выход управления. Register 67 is used to store the request signal, which, together with the signals of the internal interrupt vector by the clock pulse at the synchronization input of the register 67 of the interrupt vector, is written to its outputs and to the control output.

Приоритеты могут распределяться следующим образом. Наивысшим приоритетом обладают режим инициализации контроллера, затем его режимы чтения и записи при работе в программном обмене с ЭВМ 21, затем режимы перехода на прямой доступ к памяти ЭВМ 21 - переход на эти режимы производится после выполнения внутренних прерываний по сигналам запросов с выходов контроллера 2 шины. Следующий по значению приоритет у программы фильтрации принимаемых пакетов по адресам назначения. Запросы на прерывания для этого режима поступают с второй группы выходов состояний приемника 12. Следующий по приоритету запрос с выходов состояний передатчика 13 на прерывание по концу передачи пакета. Наиболее низкий приоритет поступает на вход запроса контроллера 9 прерываний при переходе на подпрограмму таймера-задатчика. Priorities can be distributed as follows. The controller’s initialization mode has the highest priority, then its read and write modes when working in software exchange with the computer 21, then the modes of transition to direct access to the computer's memory 21 - these modes are switched after internal interruptions are performed according to the request signals from the controller outputs of the 2 bus . The next priority is the filtering program for received packets by destination addresses. Interrupt requests for this mode come from the second group of outputs of the states of the receiver 12. The next priority request from the outputs of the statuses of the transmitter 13 is to interrupt at the end of the packet transmission. The lowest priority goes to the input of the controller request 9 interrupts when switching to the subroutine of the master timer.

Шифратор 11 управления предназначен для формирования управляющих сигналов на узлы контроллера. Управляющие сигналы, в частности, могут формироваться в виде последовательности микрокоманд. Ргеистр 68 микрокоманд предназначен для временного хранения микрокоманд и для выдачи микрокоманд с первой группы выходов регистра 68 микрокоманд на шину 16 управления контроллера и с второй его группы выходов на шину 80 управления. Память 70 микрокоманд предназначена для хранения микрокоманд и констант. В качестве памяти 70 микрокоманд может быть использовано программируемое постоянное запоминающее устройство. Константы считываются с второй группы выходов памяти 70 микрокоманд. Последовательность выборки микрокоманд из памяти 70 микрокоманд обеспечивается подачей на ее входы адреса сигналов адреса, формируемых формирователем 73 адреса микрокоманды, дешифратором-преобразователем 72 начального адреса, контроллером 9 прерываний. Мультиплексор 71 предназначен для коммутации сигналов адреса с выходов формирователя 73 адреса микрокоманды, дешифратора-преобразователя 72 начального адреса, контроллера 9 прерываний на входы адреса памяти 70 микрокоманд. Дешифратор-преобразователь 72 начального адреса преобразует сигналы управления с выходов запоминающего устройства 7 в адреса памяти 70 микрокоманд. Генератор 75 синхронизирует работу шифратора 11 управления. По его импульсам осуществляются смена микрокоманд в регистре 68 микрокоманд, синхронизация формирователя 73 адреса микрокоманды, счетчика-таймера 77, контроллера 9 прерываний и регистрового устройства 8. Мультиплексор 69 позволяет выполнить переключение сигналов констант с второй группы выходов памяти 70 микрокоманд и сигналов интервалов времени с выходов счетчика-таймера 77 на первую группу входов регистрового устройства 8. Мультиплексор 76 обеспечивает по сигналам на своих входах управления переключение сигнала входного переноса или с выхода переноса запоминающего устройства 7, или с шины 80 управления на вход переноса запоминающего устройства 7. Мультиплексор 74 условий переключает со своих входов на вход условий формирователя 73 адреса микрокоманды сигналы условий. Счетчик-таймер 77 предназначен для синхронизации работы программных таймеров контроллера по сигналам с его выходов. Дешифратор 78 по достижении на выходах счетчика-таймера 77 определенного значения сигналов на своем выходе формирует сигнал, опрокидывающий RS-триггер 79. RS-триггер 79 формирует сигнал запроса прерываний контроллера 9 прерываний при переходе на подпрограмму таймера-задатчика. The control encoder 11 is designed to generate control signals to the controller nodes. Control signals, in particular, can be formed as a sequence of microcommands. Rgeistr 68 microcommands is intended for temporary storage of microcommands and for issuing microcommands from the first group of outputs of the register 68 microcommands to the controller control bus 16 and from its second group of outputs to the control bus 80. The memory of 70 microcommands is intended for storing microcommands and constants. A programmable read-only memory can be used as the memory 70 of the microcommands. The constants are read from the second group of memory outputs of 70 microcommands. The sequence of sampling microcommands from the memory 70 microcommands is provided by supplying to its inputs addresses of the address signals generated by the driver 73 of the address of the microcommand, the decoder-transformer 72 of the starting address, and the controller 9 interrupts. The multiplexer 71 is intended for switching address signals from the outputs of the micro-command address generator 73, the initial address decoder-transformer 72, and the interrupt controller 9 to the memory address inputs of 70 micro-commands. The decoder-converter 72 of the initial address converts the control signals from the outputs of the storage device 7 into the memory addresses 70 of the microcommands. The generator 75 synchronizes the operation of the control encoder 11. According to his pulses, the microcommands are changed in the register of 68 microcommands, the driver of the microcommand address 73, the counter-timer 77, the interrupt controller 9 and the register device 8 are synchronized. The multiplexer 69 allows you to switch constant signals from the second group of memory outputs 70 microcommands and signals of the time intervals from the outputs counter-timer 77 to the first group of inputs of the register device 8. The multiplexer 76 provides the signals at its control inputs for switching the input transfer signal or output ode transfer of the storage device 7, or from the control bus 80 to the transfer input of the storage device 7. The conditions multiplexer 74 switches from its inputs to the conditions input of the micro-command address generator 73 condition signals. Counter-timer 77 is designed to synchronize the operation of software timers of the controller according to the signals from its outputs. The decoder 78 upon reaching the outputs of the counter-timer 77 a certain value of the signals at its output generates a signal, overturning the RS-trigger 79. The RS-trigger 79 generates an interrupt request signal from the controller 9 interrupts when switching to the subroutine timer.

Формирователь 73 адреса микрокоманды формирует адреса микрокоманд, которые поступают на его выходы или с выходов регистра 84, или с выходов стека 86, или с шины 80 управления через его входы адреса. Сумматор 85 при наличии на входе инкремента сигнала единицы наращивает адрес микрокоманды на единицу, что дает возможность формировать последовательность адресов. Стек 86 при переходе на подпрограмму обеспечивает загрузку адреса микрокоманды из регистра 84 в стек 86 с последующей его выгрузкой на выходы стека 86 при выходе из подпрограммы. Дешифратор 89 предназначен для установки режимов работы формирователя 73 адреса микрокоманды по сигналам на входах инструкций дешифратора 89. В соответствии с сигналом на входе условий на его выходах формируются сигналы управления узлами формирователя 73 адреса микрокоманды. Синхронизация узлов формирователя 73 адреса микрокоманды производится по импульсам, поступающим через его вход синхронизации с генератора 75. По этим импульсам производятся наращивание или вычитание содержимого реверсивного счетчика-указателя 87 стека, запись в стек 86, запись в регистр 84. Регистр 84 служит для временного хранения адресов микрокоманд, которые записываются в регистр 84 с выходов сумматора 85 по тактовым импульсам, поступающим на вход синхронизации регистра 84. Реверсивный счетчик-указатель 87 стека формирует сигналы адреса на входах адреса стека 86, необходимые для выбора ячеек памяти в стеке 86. Мультиплексор 88 служит для коммутации сигналов с выходов стека 86, с выходов регистра 84, с входов адреса формирователя 73 адреса микрокоманды на выходы формирователя адреса микрокоманды. The microcommand address generator 73 generates the microcommand addresses that are received at its outputs either from the outputs of the register 84, or from the outputs of the stack 86, or from the control bus 80 through its address inputs. The adder 85 in the presence of a unit signal increment input increases the address of the microcommand by one, which makes it possible to form a sequence of addresses. Stack 86 upon transition to the subroutine provides loading the address of the microcommand from register 84 into stack 86 with its subsequent unloading to the outputs of stack 86 when exiting the subroutine. The decoder 89 is designed to set the operating modes of the shaper 73 of the micro command address according to the signals at the inputs of the instructions of the decoder 89. In accordance with the signal at the input of conditions at its outputs, control signals of the nodes of the shaper 73 of the micro command instruction are generated. The nodes of the shaper 73 of the micro command are synchronized by the pulses received through its synchronization input from the generator 75. These pulses are used to increase or subtract the contents of the reverse counter-pointer 87 of the stack, write to stack 86, write to register 84. Register 84 is used for temporary storage addresses of microcommands, which are written to the register 84 from the outputs of the adder 85 according to the clock pulses supplied to the synchronization input of the register 84. The reversible counter-pointer 87 of the stack generates address signals in odes address stack 86, necessary to select memory cells in the stack 86. A multiplexer 88 is used for switching signal outputs from the stack 86, outputs from the register 84 to the address generator 73 inputs the address of the microinstruction on the output of the microinstruction address.

Контроллер 2 шины обеспечивает управление процессом обмена данными между ЭВМ 21 и контроллером. В режимах программного обмена, прямого доступа к памяти и в режиме прерывания сигналы на входах управления контроллера 2 шины задают режимы его работы. Контроллер 2 шины обеспечивает управление интерфейсом 1, приемником 12, передатчиком 13, селектором 10 адреса сигналами, подаваемыми с выходов управления контроллера 2 шины. Контроллер 2 шины при обмене данными с ЭВМ 21 выполняет обмен сигналами управления с ЭВМ 21 по системной шине 19 управления. The bus controller 2 provides control of the data exchange process between the computer 21 and the controller. In the modes of program exchange, direct access to memory and in the interrupt mode, the signals at the control inputs of the controller 2 of the bus specify the modes of its operation. The bus controller 2 provides control of the interface 1, receiver 12, transmitter 13, address selector 10 by signals supplied from the control outputs of the bus controller 2. The controller 2 of the bus when exchanging data with the computer 21 exchanges control signals with the computer 21 via the system bus 19 control.

Дешифратор 59 предназначен для формирования сигналов, обеспечивающих управление процессом обмена данными между ЭВМ 21 и контроллером. Таймерное устройство 60 формирует сигналы, которые позволяют дешифратору 59 при формировании сигналов, управляющих процессом обмена данными, выдерживать требуемые на системной шине ЭВМ 21 временные соотношения. Усилители 58 предназначены для согласования цепей шины 19 управления контроллера с цепями контроллера 2 шины. The decoder 59 is designed to generate signals that control the process of data exchange between the computer 21 and the controller. The timer device 60 generates signals that allow the decoder 59 to withstand the time relationships required on the computer system bus 21 when generating the signals controlling the data exchange process. Amplifiers 58 are designed to coordinate the circuit of the controller control bus 19 with the controller circuit of the bus 2.

Интерфейс 1 предназначен для сопряжения шины 17 данных и шины 18 адреса контроллера с его внутренними цепями. Интерфейс 1 под управлением сигналов с выходов управления контроллера 2 шины выполняет обмен данными между шиной 17 данных и узлами контроллера. Интерфейс 1 пересылает сигналы адреса в режиме программного обмена с шины 18 адреса на адресные входы селектора 10 адреса и на первую группу входов мультиплексора 14 или пересылает в режиме прямого доступа к памяти сигналы адреса с разрядных выходов счетчика 3 адреса на шину 18 адреса контроллера. Interface 1 is designed to interface the data bus 17 and the controller address bus 18 with its internal circuits. The interface 1 under the control of signals from the control outputs of the bus controller 2 performs data exchange between the data bus 17 and the controller nodes. Interface 1 sends the address signals in the program exchange mode from the address bus 18 to the address inputs of the address selector 10 and to the first group of inputs of the multiplexer 14 or sends address signals from the bit outputs of the address counter 3 to the controller address bus 18 in the direct memory access mode.

Усилители 54 и 55 являются двунаправленными и предназначены для согласования внутренних цепей контроллера с его шиной 17 данных и шиной 18 адреса. Усилители 54 коммутируют сигналы адреса с разрядных выходов счетчика 3 адреса на шину 18 адреса или шины 18 адреса на первую группу входов мультиплексора 14. Усилители 55 коммутируют сигналы данных между шиной 17 данных контроллера и выходами регистра 56, а также второй группой входов мультиплексора 14 и входами передатчика 13. Регистр 56 предназначен для временного хранения данных, пересылаемых из контроллера на шину 17 данных. Коммутатор 57 предназначен для коммутации данных на входы регистра 56 с внутренней шины 15 контроллера или с выходов приемника 12. Amplifiers 54 and 55 are bidirectional and are designed to coordinate the internal circuits of the controller with its data bus 17 and address bus 18. Amplifiers 54 switch the address signals from the bit outputs of the address counter 3 to the address bus 18 or address bus 18 to the first group of inputs of the multiplexer 14. The amplifiers 55 switch the data signals between the controller data bus 17 and the outputs of the register 56, as well as the second group of inputs of the multiplexer 14 and the inputs transmitter 13. Register 56 is intended for temporary storage of data sent from the controller to the data bus 17. The switch 57 is intended for switching data to the inputs of the register 56 from the internal bus 15 of the controller or from the outputs of the receiver 12.

Регистровое устройство 8 предназначено для хранения данных, загружаемых в его регистры 63 с выходов запоминающего устройства 7 с внутренней шины 15, а также для хранения констант, загружаемых с второй группы памяти 70 микрокоманд через мультиплексор 69, и хранения сигналов управления, загружаемых с третьей группы выходов памяти микрокоманд. Регистровое устройство 8 выдает сигналы из регистров 63 на входы адреса оперативной памяти 6, на внутреннюю шину 15 контроллера, на вторую группу адресных входов и на вход управления запоминающего устройства 7. Регистры 63 являются памятью со стековой организацией и служат для хранения данных, записываемых в регистры 63 под управлением сигналов с входов управления регистрового устройства 8 по синхроимпульсам с входа синхронизации регистрового устройства 8. Стековая организация памяти позволяет уменьшить время перехода на подпрограммы. Реверсивный счетчик 65 служит указателем стека, и его выходные сигналы, подаваемые на входы адреса регистров 63, позволяют производить выбор ячеек памяти регистров 63. Реверсивный счетчик 65 под управлением сигналов с входов управления регистрового устройства 8 позволяет наращивать или уменьшать адреса ячеек памяти регистров 63 при подаче на вход синхронизации реверсивного счетчика 65 синхроимпульсов с выхода генератора 75. Мультиплексор 62 предназначен для переключения входных, а мультиплексор 61 - для переключения выходных сигналов регистров 63 по сигналам с входов управления регистрового устройства 8. Двунаправленные усилители 64 служат для коммутации сигналов между входами-выходами регистрового устройства 8, выходами регистров 63, коммутируемыми через мультиплексор 61, или входами регистров 63, коммутируемыми через мультиплексор 62. The register device 8 is designed to store data loaded into its registers 63 from the outputs of the memory device 7 from the internal bus 15, as well as to store the constants loaded from the second group of memory 70 microcommands through the multiplexer 69, and to store control signals downloaded from the third group of outputs memory microcommands. The register device 8 generates signals from the registers 63 to the inputs of the address of the RAM 6, to the internal bus 15 of the controller, to the second group of address inputs and to the control input of the memory device 7. Registers 63 are memory with a stack organization and are used to store data written to the registers 63 under the control of signals from the control inputs of the register device 8 by sync pulses from the synchronization input of the register device 8. The stacked organization of memory allows to reduce the transition time to subprograms. The reversible counter 65 serves as a pointer to the stack, and its output signals supplied to the inputs of the addresses of the registers 63 allow the selection of the memory cells of the registers 63. The reversible counter 65 under the control of the signals from the inputs of the control of the register device 8 allows you to increase or decrease the addresses of the memory cells of the registers 63 when applying to the synchronization input of the reverse counter 65 clock pulses from the output of the generator 75. The multiplexer 62 is used to switch input, and the multiplexer 61 is used to switch the output signals of the register 63 by signals from the register device control inputs 8. The bidirectional amplifiers 64 are used to switch signals between input-output register unit 8, the output of register 63 switched through multiplexer 61, register 63 or input, switched through a multiplexer 62.

Оперативная память 6 служит для хранения в ее ячейках слов состояний и управления, которыми ЭВМ 21 и контроллер обмениваются в режиме программного обмена и режиме прямого доступа к памяти. Там же хранится вектор прерывания. Кроме того, оперативная память служит для хранения данных, необходимых для функционирования контроллера. Random access memory 6 is used to store state and control words in its cells, which the computer 21 and the controller exchange in program exchange mode and direct memory access mode. The interrupt vector is also stored there. In addition, RAM is used to store data necessary for the operation of the controller.

Мультиплексор 14 служит для коммутации данных на внутреннюю шину 15 контроллера, поступающих с шины 17 данных через интерфейс 1 на вторую группу входов мультиплексора 14, или коммутации сигналов адреса, поступающих с шины 18 адреса через интерфейс 1 на первую группу входов мультиплексора 14. The multiplexer 14 is used for switching data to the internal bus 15 of the controller coming from the data bus 17 through the interface 1 to the second group of inputs of the multiplexer 14, or switching the address signals coming from the address bus 18 through the interface 1 to the first group of inputs of the multiplexer 14.

Счетчик 3 адреса предназначен для формирования сигналов адреса, которые в режиме прямого доступа поступают через интерфейс 1 на шину 18 адреса для адресации к памяти ЭВМ 21. Счетчик 3 адреса обеспечивает параллельную загрузку начального адреса с внутренней шины 15 контроллера и дальнейший отсчет адресов импульсов с выходов контроллера 2 шины. The address counter 3 is used to generate address signals that, in direct access mode, are sent via the interface 1 to the address bus 18 for addressing to the computer memory 21. The address counter 3 provides parallel loading of the initial address from the controller internal bus 15 and further counting of the pulse addresses from the controller outputs 2 tires.

Регистр 4 адреса служит для хранения конечного адреса зоны памяти ЭВМ 21, загружаемого в него с внутренней шины 15. Register 4 addresses serves to store the final address of the memory zone of the computer 21, loaded into it from the internal bus 15.

Схема 5 сравнения предназначена для формирования на ее выходе сигнала сравнения при равенстве содержимого счетчика 3 адреса и регистра 4 адреса, что позволяет определить момент, когда при чтении или записи в режиме прямого доступа к памяти обращение выполнено ко всем ячейкам памяти ЭВМ 21, начиная от начального адреса, загруженного по входам данных в счетчик 3 адреса, и заканчивая конечным адресом, загруженным в регистр 4 адреса. The comparison circuit 5 is designed to generate a comparison signal at its output when the contents of the address counter 3 and the address register 4 are equal, which allows you to determine the moment when, when reading or writing in direct access to memory, access is made to all memory cells of the computer 21, starting from the initial the address loaded by the data inputs into the counter 3 addresses, and ending with the final address loaded into the register 4 addresses.

Селектор 10 адреса предназначен для селекции адресов шины 18 адреса контроллера, с которым ЭВМ 21 обращается к контроллеру в режиме программного обмена. При этом с выходов управления контроллера 2 шины в режиме программного обмена при наличии сигналов адресов на шине 18 адреса на входы управления селектора 10 адреса поступают сигналы разрешения селекции. При распознании адреса селектора 10 адреса на своих выходах формирует сигналы запросов внутренних прерываний, поступающих на четвертую группу входов запросов контроллера 9 прерываний. Селектор 10 адреса предназначен для формирования сигналов запросов прерываний по чтению или по записи данных в режиме программного обмена в зависимости от того, производит ЭВМ 21 запись в котроллер или чтение данных. The address selector 10 is designed to select the addresses of the bus 18 of the controller address, with which the computer 21 accesses the controller in program exchange mode. At the same time, from the control outputs of the bus controller 2 in the program exchange mode, if there are address signals on the address bus 18, control signals of the address selector 10 receive selection enable signals. When recognizing the address of the address selector 10, at its outputs it generates internal interrupt request signals arriving at the fourth group of request inputs of the interrupt controller 9. The address selector 10 is designed to generate interrupt request signals for reading or writing data in a program exchange mode, depending on whether the computer 21 writes to the controller or reading data.

Приемник 12 предназначен для приема с входа контроллера последовательного потока данных, представленных кодом Манчестер-11, декодирования принимаемых данных в код без возвращения к нулю, преобразования принимаемых данных в параллельный шестнадцатиразрядный код слов данных. Приемник 12 буферизирует принимаемые данные в фифо 90 приема и через свои выходы в режиме прямого доступа передает слова данных через интерфейс 1 на шину 17 данных контроллера. Он поддерживает режим прямого доступа к памяти, формируя на своих выходах управления сигналы управления контроллером 2 шины в режиме прямого доступа, и контролирует ошибки контроля в принимаемом сигнале и наличие передач в кабеле связи (контроль несущей). Приемник 21 различает в принимаемом коде ограничитель преамбулы, после которого следуют данные пакета, и формирует по числу принятых данных на своих выходах состояний сигнал требования внутренних прерываний на фильтрацию адресов назначений принимаемых пакетов, а также формирует биты состояний, определяющие качество принятого пакета, правильную его длину в битах и словах. The receiver 12 is intended for receiving from the controller input a serial data stream represented by the Manchester-11 code, decoding the received data into a code without returning to zero, converting the received data into a parallel sixteen-bit code of data words. The receiver 12 buffers the received data in fifo 90 reception and through its outputs in direct access mode transmits data words via interface 1 to the controller data bus 17. It supports the direct memory access mode, generating control signals of the bus controller 2 in the direct access mode at its control outputs, and controls the control errors in the received signal and the presence of transmissions in the communication cable (carrier control). The receiver 21 distinguishes the preamble delimiter in the received code, followed by the packet data, and generates an internal interrupt request signal for filtering the destination addresses of the received packets by the number of received data at its state outputs, and also generates status bits that determine the quality of the received packet and its correct length in bits and words.

Декодер 96 предназначен для преобразования кода Манчестер-11 в код данных без возвращения к нулю на выходе декодера 96, сопровождаемый тактовыми синхроимпульсами на его выходе синхронизации. Сдвиговый регистр 92 служит для преобразования последовательного кода данных без возвращения к нулю в параллельный код шестнадцатиразрядных слов данных. Фифо 90 приема предназначено для временной буферизации принимаемых данных, что позволяет выполнить согласование скоростей обмена данными по каналу 24 связи и по шине 17 данных контроллера. Оно предназначено для хранения меток конца кадра, которыми метится последнее слово принятого пакета. Детектор 93 флага определяет момент приема ограничителя преамбулы в принимаемом пакете и вырабатывает при этом сигнал, который по S-входу опрокидывает RS-триггер 94, и с этого момента начинается прием данных из канала 24 связи. RS-триггер 94 формирует на своем выходе сигнал сброса счетчика 98 битов. Детектор 97 входного сигнала предназначен для формирования на его выходе сигнала несущей при наличии передач в канале 24 связи. Логика 95 циклического контроля предназначена для выявления ошибок в принимаемых пакетах. Контроль ошибок выполняется на основе полинома степени 16. При наличии ошибок в пакет на выходе контроля логики циклического контроля формируется сигнал ошибки. Счетчик 98 битов позволяет производить подсчет принимаемых битов данных по синхроимпульсам на его счетом входе и, таким образом, определять кратность принимаемых данных числу восемь для выявления байтовых границ принимаемых пакетов. Некратность числу восемь определяет ошибку приема. По счетчику 98 битов управляющая логика 100 формирует синхроимпульсы для подачи их на счетный вход счетчика 99 для подсчета числа принятых байтов в пакете. Счетчик 99 байтов предназначен для подсчета числа принимаемых байтов в пакете. Управляющая логика 100 предназначена для управления работой узлов приемника 12 и формирует на своих выходах сигналы запросов внутренних прерываний на фильтрацию пакетов по адресам назначения, которые выдаются на выходы состояний приемника. Управляющая логика 100 формирует на выходах приемника 12 сигналы состояний приема, которые подаются на третью группу входов мультиплексора 74 условий, и формирует на своих выходах, подключенных к выходам управления приемника 12, сигналы, управляющие работой контроллера 2 шины в режиме прямого доступа к памяти. Мультиплексор 91 предназначен для коммутации на внутреннюю шину 15 контроллера данных с выходов фифо 90 приема или битов состояний с шины 106, с выходов счетчика 98 битов, с выхода детектора 97 входного сигнала и с выхода логики 95 циклического контроля. Decoder 96 is designed to convert the Manchester-11 code into a data code without returning to zero at the output of decoder 96, followed by clock pulses at its synchronization output. Shift register 92 is used to convert a serial data code without returning to zero into a parallel code of sixteen-bit data words. Fifo 90 reception is intended for temporary buffering of received data, which allows matching the data exchange rates on the communication channel 24 and on the controller data bus 17. It is designed to store end-of-frame labels that mark the last word of a received packet. The flag detector 93 determines the moment of reception of the preamble limiter in the received packet and generates a signal that overturns the RS flip-flop 94 at the S-input, and from that moment, data reception from the communication channel 24 begins. The RS flip-flop 94 generates a reset signal of a counter of 98 bits at its output. The input signal detector 97 is intended for generating a carrier signal at its output in the presence of transmissions in the communication channel 24. Loopback logic 95 is designed to detect errors in received packets. Error control is performed based on a polynomial of degree 16. If there are errors in the packet, an error signal is generated at the control output of the cyclic control logic. The counter 98 bits allows you to count the received bits of data by the clock on its input counter and, thus, determine the multiplicity of the received data by eight to identify the byte boundaries of the received packets. The irreversibility of the number eight determines the reception error. According to the counter 98 bits, the control logic 100 generates clock pulses for supplying them to the counting input of the counter 99 to count the number of received bytes in the packet. A 99 byte counter is used to count the number of bytes received in a packet. The control logic 100 is designed to control the operation of the nodes of the receiver 12 and generates at its outputs signals of interrupt requests for filtering packets at destination addresses that are issued to the outputs of the receiver states. The control logic 100 generates at the outputs of the receiver 12 signals of the reception states, which are fed to the third group of inputs of the condition multiplexer 74, and generates at its outputs connected to the control outputs of the receiver 12 signals that control the operation of the bus controller 2 in the direct memory access mode. The multiplexer 91 is designed for switching to the internal bus 15 of the data controller from the outputs of the FIFO 90 reception or status bits from the bus 106, from the outputs of the counter 98 bits, from the output of the detector 97 of the input signal and from the output of the logic 95 of cyclic control.

Передатчик 13 предназначен для обмена передаваемыми данными с ЭВМ 21 и внутренней шины 15 контроллера, а также для предварительной буферизации передаваемых данных в фифо 107 передачи и для последующего преобразования данных в код Манчестер-11 и передачи его в канал 24 связи. Передатчик 13 перед передачей пакета данных передает в канал 24 связи преамбулу, завершая ее ограничителем преамбулы, а завершает передачу пакета контрольной суммой, сгенерированной логикой 109 циклического контроля. Фифо 107 передачи предназначен для временного хранения передаваемых пакетов данных. Сдвиговый регистр 108 предназначен для преобразования передаваемых данных в последовательный код без возвращения к нулю. Логика 109 логического контроля предназначена для генерации контрольной суммы при делении передаваемых данных на полином степени 16. Логика циклического контроля аналогична имеющейся в прототипе. Коммутатор 110 предназначен для коммутации на вход кодера 111 данных с выхода сдвигового регистра 108 или контрольной суммы с выхода логики 109 циклического контроля, передаваемой после передачи последнего бита данных. Усилители 114 предназначены для согласования шины 116 и внутренней шины 15 контроллера при передаче на внутреннюю шину 15 битов состояний с выходов управляющей логики 113. Управляющая логика 113 предназначена для управления работой узлов передатчика 13. Она формирует и подает на вход меток фифо 107 передачи сигналы меток, которыми метится последнее слово передаваемого пакета при записи его в фифо 107 передачи. Управляющая логика 113 вырабатывает сигналы управления на входах управления фифо 107 передачи, по которым выполняется запись слов данных с входов передатчика 13 в фифо 107 передачи или чтение передаваемых слов данных на выходы фифо 107 передачи. The transmitter 13 is designed to exchange the transmitted data with the computer 21 and the internal bus 15 of the controller, as well as for pre-buffering the transmitted data in FIFO 107 transmission and for subsequent conversion of data into Manchester-11 code and transmitting it to the communication channel 24. The transmitter 13 before transmitting the data packet transmits the preamble to the communication channel 24, ending it with a preamble limiter, and ends the transmission of the packet with the checksum generated by the cyclic control logic 109. Fifo 107 transmission is intended for temporary storage of transmitted data packets. The shift register 108 is designed to convert the transmitted data into a serial code without returning to zero. Logic 109 logic control is designed to generate a checksum when dividing the transmitted data by a polynomial of degree 16. The logic of cyclic control is similar to that available in the prototype. The switch 110 is designed for switching to the input of the encoder 111 data from the output of the shift register 108 or the checksum from the output of the logic 109 cyclic control transmitted after the transmission of the last bit of data. Amplifiers 114 are designed to match the bus 116 and the internal bus 15 of the controller when transmitting status bits from the outputs of the control logic 113 to the internal bus 15. The control logic 113 is used to control the operation of the nodes of the transmitter 13. It generates and sends tag signals to the input of the tag Fifo 107, which marks the last word of the transmitted packet when recording it in fifo 107 transmission. The control logic 113 generates control signals at the control inputs of the transmission FIFO 107, by which the data words are written from the inputs of the transmitter 13 to the transmission FIFO 107 or the read data words are transmitted to the outputs of the transmission FIFO 107.

Управляющая логика 113 формирует при передаче пакета сигнал записи слов на входе записи сдвигового регистра 108 по состоянию выходов счетчика 112 битов, когда все биты предыдущего слова сдвинуты регистром 108, и формирует на входах управления логики 109 циклического контроля сигналы управления, по которым логика циклического контроля генерирует контрольную сумму для передаваемого пакета или выдает контрольную сумму на свой выход побитно, синхронизируя наличие каждого из битов контрольной суммы на выходе синхроимпульсами с выходам генератора 115. Управляющая логика 113 формирует сигналы управления на входе управления коммутатора 110, по которым производится коммутация сигналов или с выхода сдвигового регистра 108, или с выхода логики 109 циклического контроля на вход кодера 111. Она формирует сигнал сброса счетчика 112 битов, что позволяет последнему в отсутствие сигнала сброса производить счет синхроимпульсов с выхода генератора 115. Это необходимо для формирования управляющей логикой 113 по сигналам с выходов счетчика 112 битов сигналов управления для последовательного считывания слов из фифо 107 передачи и перезаписи их в сдвиговый регистр 108. Управляющая логика 113 формирует на выходах состояний вектор внутренних прерываний по концу передачи пакета для запроса внутренних прерываний по второй группе входов запросов внутренних прерываний контроллера 9 прерываний. Она формирует на входах управления усилителей 114 сигнал управления, по которому слова состояний передачи пересылаются через усилители 114 с выходов состояний передачи на внутреннюю шину 15 контроллера. Сигнал управления на входах управления усилитей 114 формируется при запросе слова состояния передатчика 13 по его второй группе входов управления со стороны шифратора 11 управления. Управляющая логика 113 формирует на входах управления фифо 107 передачи сигнала управления записью слов данных при наличии на выходах управления контроллера 2 шины сигналов управления записью, поступающих на первую группу входов управления передатчика 13. При этом слова данных с входов передатчика 13 записываются в фифо 107 передачи. Логика 113 управления в синхронном режиме по сигналам управления с выходов управления контроллера 2 шины, формируемых в режиме записи прямого доступа к памяти ЭВМ 21, формирует на выходах управления передатчика 13 сигналы синхронизации, поддерживающие обмен между ЭВМ 21 и передатчиком 13. Логика 113 управления прекращает обмен данными с ЭВМ 21, снимая сигнал занятости с выходов управления передатчика 13 при наличии на входе передатчика сигнала сравнения с выхода "Равно" схемы 5 сравнения. Она имеет связь с внутренней шиной 15 контроллера через пятую группу своих входов. Это позволяет уменьшить число входов управления на второй группе входов управления передатчика 13 за счет того, что сигналы управления передатчиком подаются одновременно по внутренней шине 15 контроллера и по второй группе входов управления передатчика 13. Счетчик 112 битов служит для счета числа битов принятых данных. Кодер 111 предназначен для преобразования последовательного кода данных и кода контрольной суммы в код Манчестер-11. When the packet is transmitted, the control logic 113 generates a word recording signal at the write input of the shift register 108 according to the outputs of the counter 112 bits, when all the bits of the previous word are shifted by the register 108, and generates control signals at the control inputs of the loop control logic 109, according to which the loop control logic generates checksum for the transmitted packet or provides a checksum to its output bit by bit, synchronizing the presence of each of the bits of the checksum at the output with clock pulses from the outputs of the generator 115. The control logic 113 generates control signals at the control input of the switch 110, through which the signals are switched either from the output of the shift register 108, or from the output of the logic 109 of the cyclic control to the input of the encoder 111. It generates a reset signal of the counter 112 bits, which allows the latter to the absence of a reset signal to count the clock pulses from the output of the generator 115. This is necessary for generating control logic 113 from the outputs of the counter 112 bits of control signals for sequential reading of the layer in from FIFO 107 and transfer them to the shift register 108. The control logic 113 generates an internal interrupt vector at the state outputs at the end of the packet transfer to request internal interrupts for the second group of interrupt request inputs of the interrupt controller 9. It generates a control signal at the control inputs of amplifiers 114, through which the words of transmission states are sent through amplifiers 114 from the outputs of transmission states to the internal bus 15 of the controller. The control signal at the control inputs of the amplifiers 114 is formed upon request of the status word of the transmitter 13 by its second group of control inputs from the control encoder 11. The control logic 113 generates at the control inputs FIFO 107 the transmission of the control signal for writing data words in the presence of the control outputs of the controller 2 bus control signals write to the first group of control inputs of the transmitter 13. In this case, the data words from the inputs of the transmitter 13 are recorded in fifo 107 transmission. The control logic 113 in synchronous mode according to the control signals from the control outputs of the bus controller 2 generated in the recording mode of direct access to the memory of the computer 21 generates synchronization signals at the control outputs of the transmitter 13 that support the exchange between the computer 21 and the transmitter 13. The control logic 113 stops the exchange data from the computer 21, removing the busy signal from the control outputs of the transmitter 13 in the presence of a comparison signal at the transmitter input from the output of "Equal to" comparison circuit 5. It communicates with the internal bus 15 of the controller through the fifth group of its inputs. This allows you to reduce the number of control inputs on the second group of control inputs of the transmitter 13 due to the fact that the control signals of the transmitter are supplied simultaneously on the internal bus 15 of the controller and on the second group of control inputs of the transmitter 13. The counter 112 bits serves to count the number of bits of received data. Encoder 111 is designed to convert a serial data code and a checksum code into a Manchester-11 code.

Схема 126 совпадений формирует на своем выходе инверсный код с возвращением к нулю передаваемых данных. Инвертор 125 и схема 127 совпадений формируют на своем выходе инверсный код с возвращением к нулю инвертированных передаваемых данных. JK-триггер 128 формирует на своем выходе код Манчестер-11. JK-триггер 129 является делителем частоты и формирует на своем выходе импульсы, подаваемые на вторые входы 126 и 127 совпадений. The coincidence circuit 126 generates an inverse code at its output with returning the transmitted data to zero. The inverter 125 and the coincidence circuit 127 generate an inverse code at their output with the inverted transmitted data returning to zero. JK trigger 128 generates a Manchester-11 code on its output. JK-trigger 129 is a frequency divider and generates pulses at its output that are supplied to the second inputs 126 and 127 matches.

Линия 130 задержки декодера 96 служит для фазовой задержки принимаемого кода Манчестер-11. Схемы ИСКЛЮЧАЮЩЕЕ ИЛИ 131, 132, инвертор 133 и D-триггер 134 служат для выделения синхронизирующей тактовой частоты из принимаемого кода Манчестер-11. D-триггер 135 служит для формирования из принимаемого сигнала кода данных без возвращения к нулю. Схема ИСКЛЮЧАЮЩЕЕ ИЛИ 137, схема 138 совпадений, сдвиговый регистр 139, схема ИСКЛЮЧАЮЩЕЕ ИЛИ 140, сдвиговый регистр 141, схема ИСКЛЮЧАЮЩЕЕ ИЛИ 142, сдвиговый регистр 143 служат для вычисления контрольной суммы при делении входного кода данных на образующий полином х15125+1.The delay line 130 of the decoder 96 serves to phase delay the received Manchester-11 code. EXCLUSIVE OR 131, 132, inverter 133, and D-flip-flop 134 circuits are used to isolate the clock frequency from the received Manchester-11 code. D-flip-flop 135 is used to generate a data code from the received signal without returning to zero. The EXCLUSIVE OR circuit 137, the coincidence circuit 138, the shift register 139, the EXCLUSIVE OR circuit 140, the shift register 141, the EXCLUSIVE OR circuit 142, the shift register 143 are used to calculate the checksum when dividing the input data code by the generatrix polynomial x 15 + x 12 + x 5 +1.

Мультиплексор 144 служит для коммутации на выход данных входных данных, подаваемых на его первый вход, или кода контрольной суммы, подаваемого на его второй вход. Это позволяет выполнять передачу кода контрольной суммы после передачи пакета данных. Дешифратор 145 по сигналам на его входах формирует на своем выходе контроля сигнал ошибки контрольной суммы при наличии ошибки в принимаемых на вход логики циклического контроля данных. A multiplexer 144 is used for switching output data of input data supplied to its first input, or a checksum code supplied to its second input. This allows the transmission of the checksum code after the transmission of the data packet. The decoder 145 on the signals at its inputs generates at its output the control signal of the error of the checksum in the presence of errors in the input logic of the cyclic data control.

Оперативная память 146 служит для временного хранения принимаемых или передаваемых данных, что позволяет согласовывать скорости обмена в канале 24 связи и на шине 17 данных контроллера. Оперативная память 147 служит для хранения сигналов меток, которыми размечаются слова принимаемых или передаваемых данных. Мультиплексор 148 переключает сигналы адресов с выходов счетчиков 149 и 150 на входы адреса оперативной памяти 146 и оперативной памяти 147. Счетчик 149 служит для формирования адреса при записи слов данных в оперативную память 146. Счетчик 150 служит для формирования адреса при считывании слов данных из оперативной памяти 147. Random access memory 146 serves for temporary storage of received or transmitted data, which allows you to coordinate the exchange rate in the communication channel 24 and on the controller data bus 17. Random access memory 147 serves to store mark signals that mark the words of received or transmitted data. The multiplexer 148 switches the address signals from the outputs of the counters 149 and 150 to the inputs of the address of the RAM 146 and RAM 147. The counter 149 is used to generate the address when writing data words to the RAM 146. The counter 150 is used to generate the address when reading the data words from the RAM 147.

Работает контроллер следующим образом. The controller works as follows.

Перед началом работы ЭВМ 21 инициализирует контроллер. Его инициализация осуществляется или при подаче сигнала инициализации по системной шине 19 управления со стороны ЭВМ 21, или программной инициализацией. В режиме инициализации контроллер записывает в оперативную память 6 слова начальных состояний слов состояний и управления. Переход на подпрограмму инициализации осуществляется при запросе прерывания на третьей группе входов запросов прерываний контроллера 9 прерываний. Эти запросы поступают с выходов контроллера 2 шины при наличии на его входах-выходах сигнала инициализации со стороны ЭВМ 21. Before you start the computer 21 initializes the controller. Its initialization is carried out either when the initialization signal is supplied via the control system bus 19 from the side of the computer 21, or by software initialization. In initialization mode, the controller writes into the RAM 6 words of the initial states of the state and control words. The transition to the initialization subroutine is carried out when requesting interruptions on the third group of inputs of interrupt requests of the controller 9 interrupts. These requests come from the outputs of the bus controller 2 if there is an initialization signal from the computer 21 at its inputs and outputs.

Переход на подпрограмму инициализации может быть произведен при записи первого слова состояний из ЭВМ 21 в контроллер в режиме программного обмена. В процессе работы контроллер обменивается данными с ЭВМ 21 в режиме программного обмена и в режиме прямого доступа к памяти ЭВМ 21. В режиме программного обмена контроллер и ЭВМ 21 обмениваются словами состояний и словами управления. В режиме прямого доступа к памяти ЭВМ 21 контроллер обменивается с ЭВМ 21 принимаемыми из канала 24 связи или передаваемыеми в канал 24 связи пакетами, а также данными управления. Слова состояний и управления хранятся в оперативном запоминающем устройстве 7. Обмен данными в режиме прямого доступа к памяти ЭВМ 21 может производиться группами слов без возврата системной шины в пользование ЭВМ 21. The transition to the initialization subroutine can be made by writing the first state word from the computer 21 to the controller in program exchange mode. In the process, the controller communicates with the computer 21 in the program exchange mode and in the direct access mode to the memory of the computer 21. In the program exchange mode, the controller and the computer 21 exchange state words and control words. In the direct access to the memory of the computer 21, the controller exchanges with the computer 21 received from the communication channel 24 or transmitted to the communication channel 24 packets, as well as control data. State and control words are stored in random access memory 7. Data exchange in the direct access mode to the computer 21 memory can be carried out in groups of words without returning the system bus to the computer 21.

Обмен данными в режимах программного обмена и прямого доступа к памяти осуществляется при управлении узлами контроллера микрокомандами, которые выбираются из памяти 70 микрокоманд во время выполнения соответствующих подпрограмм, описанных далее. Переход на какую-либо управляющую подпрограмму возможен при формировании вектора внутренних прерываний на выходах контроллера 9 прерываний, а также при формировании кода начального адреса управляющей подпрограммы на выходах запоминающего устройства 7, а также по адресам ветвлений, подаваемых с второй группы выходов регистра 68 микрокоманд на входы адреса формирователя 73 адреса микрокоманды. По векторам внутренних прерываний выполняются переходы на управляющие подпрограммы обслуживания внутренних прерываний, в число которых входят подпрограммы, перечисляемые далее в порядке убывания их приоритетности: подпрограмма инициализация контроллера, подпрограммы чтения и записи при программном обмене данными между ЭВМ 21 и контроллер, подпрограмма прямого доступа к памяти, подпрограмма фильтрации принимаемых пакетов по адресам назначения, подпрограмма таймера-задатчика. Data exchange in the modes of program exchange and direct access to memory is carried out by controlling the nodes of the controller microcommands, which are selected from the memory of 70 microcommands during the execution of the corresponding routines described below. The transition to any control subroutine is possible when generating the vector of internal interrupts at the outputs of the controller 9 interrupts, as well as when generating the code of the starting address of the control subroutine at the outputs of the storage device 7, as well as the branch addresses supplied from the second group of outputs of the register 68 microinstructions to the inputs addresses of the driver 73 addresses of the micro-command. According to the internal interrupt vectors, transitions are made to the control subroutines for servicing internal interrupts, which include subprograms listed below in descending order of priority: controller initialization subroutine, read and write subroutines during program data exchange between computer 21 and the controller, direct memory access subroutine , a routine for filtering received packets by destination addresses, a timer routine.

Код начального адреса управляющих подпрограмм формируется на выходах запоминающего устройства 7 в результате выполнения нестандартных логических операций над словами управления и состояний. Код начального адреса управляющих подпрограмм преобразуется на выходах дешифратора-преобразователя 72 начального адреса в адрес памяти 70 микрокоманд. The initial address code of the control routines is generated at the outputs of the storage device 7 as a result of non-standard logical operations on the control words and states. The code of the starting address of the control routines is converted at the outputs of the decoder-converter 72 of the starting address to a memory address of 70 microcommands.

Обмен данными, представляющими собой пакеты информации, слова управления и слова состояний, выполняется между контроллером, ЭВМ 21, приемником 12 и передатчиком 13. Приемник 12 принимает из канала 24 связи пакеты данных. Передатчик 13 передает в канал 24 связи пакеты данных. В режиме программного обмена ЭВМ 21 обращается к контроллеру по нескольким адресам шины 18 адреса для выполнения циклов чтения или записи. The exchange of data, which is information packets, control words and status words, is performed between the controller, the computer 21, the receiver 12 and the transmitter 13. The receiver 12 receives data packets from the communication channel 24. The transmitter 13 transmits data packets to the communication channel 24. In the program exchange mode, the computer 21 accesses the controller at several addresses of the address bus 18 to perform read or write cycles.

Передача пакетов (фиг. 16) начинается с передачи преамбулы - чередующейся последовательности единиц и нулей, заканчивающейся двумя единицами - ограничителем преамбулы. Преамбула необходима для синхронизации приемников 12 всех устройств, подключенных к каналу 24 связи. Ограничитель преамбулы отделяют преамбулу от поля номера устройства, ведущего передачу (поле НУП), в котором передается уникальный номер устройства в локальной вычислительной сети. Этим номером определяется порядок передач пакетов устройствами. В поле управления указывается тип передаваемого пакета. Установленный бит 15 или бит 14 указывает на то, что передается пакет устройства-монитора. Установленный бит 13 указывает, что передается пакет маркера. The transmission of packets (Fig. 16) begins with the transmission of the preamble - an alternating sequence of ones and zeros, ending with two units - the preamble limiter. The preamble is necessary to synchronize the receivers 12 of all devices connected to the communication channel 24. The preamble limiter separates the preamble from the number field of the device transmitting the transmission (LLP field), in which a unique device number is transmitted in the local area network. This number determines the order in which packets are transmitted by devices. The control field indicates the type of packet being transmitted. A set bit 15 or bit 14 indicates that a monitor device packet is being transmitted. The set bit 13 indicates that a token packet is being transmitted.

Устройство-монитор предоставляет право на передачу пакетов в канал 24 связи устройствам. Пакет монитора может содержать произвольные данные. Пакет верхних уровней локальной вычислительной сети имеет в поле управления нулевые биты 15, 14 и 13, установленные в ноль. The monitor device provides the right to transmit packets to the communication channel 24 devices. A monitor package may contain arbitrary data. The packet of the upper levels of the local area network has zero bits 15, 14, and 13 set to zero in the control field.

В поле адреса назначения указывается 48-битный адрес назначения пакета. Адрес назначения может быть индивидуальный (первый бит адреса установлен в ноль), групповым (первый бит адреса установлен в единицу) или широковещательным (все биты адреса установлены в единицу). В поле адреса источника указывается адрес устройства - отправителя пакета. В поле данных содержатся данные пакета. В поле контроля суммы передается контрольная сумма для данных, содержащихся в полях, передаваемых после ограничителя преамбулы. The destination address field indicates the 48-bit destination address of the packet. The destination address can be individual (the first bit of the address is set to zero), multicast (the first bit of the address is set to one) or broadcast (all bits of the address are set to one). The source address field indicates the address of the device - the sender of the packet. The data field contains the packet data. The checksum for the data contained in the fields transmitted after the preamble limiter is transferred to the amount control field.

Установленный бит 15 в поле управления означает, что передаваемый пакет является пакетом маркера. Установленный бит 14 в поле управления означает, что станция, передающая пакет, готовится стать станцией-монитором. Установленный бит 13 в поле управления означает, что передается пакет станции-монитора. The set bit 15 in the control field means that the transmitted packet is a marker packet. The set bit 14 in the control field means that the station transmitting the packet is preparing to become a monitor station. The set bit 13 in the control field means that the packet of the monitor station is being transmitted.

В памяти ЭВМ 21 для общения с контроллером в режиме прямого доступа отводятся зоны, предназначенные под хранение данных, подлежащих для передачи в канал 24 связи, - буферы передачи и зоны памяти, куда должна записываться принимаемая информация, буферы приема, а также зоны памяти, отведенные под дескрипторы буферов приема и дескриптов буферов передачи. Каждый из дескрипторов представляет собой зону памяти ЭВМ 21 из нескольких ячеек (фиг. 17). Дескрипторы в памяти ЭВМ 21 располагаются в смежных зонах памяти, т. е. следуют один за другим, образуя группы дескрипторов по восемь дескрипторов в группе (цепочки дескрипторов). Для каждого из буферов приема предназначается дескриптор буфера приема. Для каждого из буферов передачи предназначен дескриптор буфера передачи. В первой ячейке дескриптора хранится флаг дескриптора. Значащими битами флага являются биты 15 и 14. Они предназначены для квитирования установленных связей между ЭВМ 21 и контроллером. Биты инициализируются программным обеспечением ЭВМ 21 и модернизируются контроллером. Если биты 15 и 14 установлены в ноль (00), то буфер используется программным обеспечением. Если бит 15 и бит 14 имеют значение "1" и "0", то контроллер еще не использовал буфер, описываемый дескриптором. Если значение бита 15 и бита 14 "1" и "1", то контроллер использует буфер. In computer memory 21, for communication with the controller in direct access mode, zones are allocated for storing data to be transmitted to communication channel 24 — transmission buffers and memory zones where received information should be recorded, reception buffers, and also memory zones allocated under descriptors of receive buffers and descriptors of transmit buffers. Each of the descriptors represents a memory zone of the computer 21 from several cells (Fig. 17). Descriptors in computer memory 21 are located in adjacent memory zones, that is, they follow one after another, forming groups of descriptors of eight descriptors in a group (chain of descriptors). For each of the receive buffers, a receive buffer descriptor is intended. For each of the transfer buffers, a descriptor for the transfer buffer is provided. The descriptor flag is stored in the first descriptor cell. Significant bits of the flag are bits 15 and 14. They are designed to acknowledge the established connections between the computer 21 and the controller. The bits are initialized by the computer software 21 and upgraded by the controller. If bits 15 and 14 are set to zero (00), then the buffer is used by the software. If bit 15 and bit 14 are set to "1" and "0", then the controller has not yet used the buffer described by the descriptor. If the value of bit 15 and bit 14 is "1" and "1", then the controller uses a buffer.

Во второй ячейке дескриптора буфера хранятся старшие биты стартового адреса буфера, описываемого дескрптором (биты 00-05), и байт состояний (биты 08-15). В третьем слове дескриптора хранятся младшие биты стартового адреса буфера (биты 00-15). Общая длина стартового адреса буфера равна двадцати двум битам. In the second cell of the buffer descriptor, the high bits of the start address of the buffer described by the descriptor (bits 00-05), and status bytes (bits 08-15) are stored. The third word of the descriptor contains the least significant bits of the buffer start address (bits 00-15). The total length of the start address of the buffer is twenty-two bits.

Состояние битов 15 и 14 байта состояний "0" и "0" говорит о том, что биты стартового адреса буфера не значимые. Состояние битов 15 и 14 "1" и "0" говорит о том, что биты стартового адреса буфера значимые. Состояние битов 15 и 14 "1" и "1" говорит о том, что биты стартового адреса являются стартовым адресом дескриптора буфера, что необходимо для перехода с одной группы дескрипторов на другую. Установленный бит 13 байта состояний показывает, что буфер, описываемый дескриптором, содержит последний сегмент пакета. Установленный бит 12 байта состояний показывает, что буфер, описываемый дескриптором, содержит управляющие данные или, другими словами, является установочным пакетом. Остальные биты третьей ячейки являются резервными. The status of bits 15 and 14 of the status byte “0” and “0” indicates that the bits of the buffer start address are not significant. The status of bits 15 and 14 "1" and "0" indicates that the bits of the buffer start address are significant. The state of bits 15 and 14 "1" and "1" indicates that the start address bits are the start address of the buffer descriptor, which is necessary for switching from one group of descriptors to another. The set bit 13 of the status byte indicates that the buffer described by the descriptor contains the last packet segment. The set bit 12 of the status byte indicates that the buffer described by the descriptor contains control data or, in other words, is an installation package. The remaining bits of the third cell are reserved.

В четвертой ячейке дескриптора хранится слово длины буфера, описываемого дескриптором. По слову длины буфера и стартовому адресу буфера можно вычислить адрес последней ячейки буфера. В пятой ячейке дескриптора содержится первое слово состояний буфера. В шестой ячейке дескриптора содержится второе слово состояний буфера. За шестой ячейкой дескриптора буфера, если он не является последним в группе дескрипторов, следует флаг следующего дескриптора. The fourth cell of the descriptor stores the word of the length of the buffer described by the descriptor. Using the word buffer length and the start address of the buffer, you can calculate the address of the last buffer cell. The fifth descriptor cell contains the first word of the buffer states. The sixth descriptor cell contains the second buffer state word. The sixth cell of the buffer descriptor, if it is not the last in the descriptor group, is followed by the flag of the next descriptor.

Значение битов первого слова состояний дескриптора буфера следующее: биты 15 и 14, установленные в состояние "1" и "0", информируют о том, что данный буфер не использовался контроллером. Состояние этих битов "1" и "1" означает, что буфер использовался контроллером, но не является последним сегментом пакета. Состояние этих битов "0" и "0" означает, что буфер содержит последний сегмент пакета, принятого или переданного с ошибками. The meaning of the bits of the first word of the state of the buffer descriptor is as follows: bits 15 and 14, set to state "1" and "0", inform that this buffer was not used by the controller. The status of these bits "1" and "1" means that the buffer was used by the controller, but is not the last segment of the packet. The status of these bits "0" and "0" means that the buffer contains the last segment of the packet, received or transmitted with errors.

Для дескриптора буфера передачи состояния битов 15 и 14 "0" и "0" в первом слове состояний передачи означает ошибку передачи по причине отсутствия сигнала, выявляемого детектором 97 входного сигнала в канале 24 связи при передаче пакета передатчиком 13, или по причине отсутствия подтверждения о принятом пакете от сетевого устройства, которому предназначался пакет. Одновременно при битах 15 и 14, равных "0" и "0", могут устанавливаться биты 12, 09, 03. Установленный бит 12 определяет отсутствие сигнала в канале 24 связи при передаче. Установленный бит 09 указывает, что на переданный пакет не поступило подтверждение о приеме. Биты 08, 07, 06, 05 содержат счетчик количества попыток передач пакета, на который не было подтверждения о приеме. Установленный бит 03 указывает, что произведено наибольшее допустимое количество передач одного и того же пакета без наличия подтверждения о приеме этого пакета. Биты во втором слове состояний дескриптора буфера передачи несут информацию об интервале времени между началом передачи пакета и поступлением подтверждения о его приеме. For the descriptor of the transmission buffer, the status of bits 15 and 14 “0” and “0” in the first word of the transmission status means a transmission error due to the absence of a signal detected by the input signal detector 97 in the communication channel 24 when the packet was transmitted by the transmitter 13, or because there is no confirmation of the received packet from the network device to which the packet was intended. At the same time, with bits 15 and 14 equal to "0" and "0", bits 12, 09, 03 can be set. The set bit 12 determines the absence of a signal in the communication channel 24 during transmission. The set bit 09 indicates that the received packet did not receive an acknowledgment. Bits 08, 07, 06, 05 contain a counter of the number of attempts to transmit a packet to which there was no acknowledgment of receipt. The set bit 03 indicates that the largest number of transmissions of the same packet has been made without acknowledgment of the receipt of this packet. The bits in the second word of the states of the descriptor of the transmission buffer carry information about the time interval between the start of transmission of the packet and the receipt of confirmation of its receipt.

Для дескриптора буфера приема в первом слове состояний значение битов 15 и 14 "0" и "0" означает ошибку приема по причине приема недопустимой длины пакета (например, длина более 1500 байтов) или по причине приема пакета с ошибкой циклического контроля, или по причине приема очень короткого пакета (например, менее 64 байтов), или по причине приема пакета, количество битов в котором не кратно восьми. При сбросе битов 15 и 14 в состояние "0" и "0" устанавливаются биты 11, 02, 01, 00. Установленный бит 11 означает, что принят короткий пакет менее 64 байтов длиной. Установленный бит 02 указывает, что длина принятого пакета имеет число битов, не кратных восьми. Установленный бит 01 говорит о наличии ошибки циклического контроля. Установленный бит 00 указывает, что пакет имеет недопустимо большую длину. Биты 10, 09, 08, 07, 06 обозначают номер пакета в сообщении. For the receive buffer descriptor in the first word of the status, the value of bits 15 and 14 “0” and “0” means a reception error due to the receipt of an invalid packet length (for example, the length is more than 1500 bytes) or due to the reception of a packet with a cyclic control error, or because receive a very short packet (for example, less than 64 bytes), or because of a packet reception, the number of bits in which is not a multiple of eight. When bits 15 and 14 are reset to “0” and “0”, bits 11, 02, 01, 00 are set. The set bit 11 means that a short packet of less than 64 bytes in length has been received. The set bit 02 indicates that the length of the received packet has a number of bits not a multiple of eight. A set bit 01 indicates a cyclic check error. The set bit 00 indicates that the packet is unacceptably long. Bits 10, 09, 08, 07, 06 indicate the packet number in the message.

Во втором слове состояний дескриптора буфера приема содержится информация о количестве байтов в принятом пакете. Установочный пакет описывается дескриптором буфера передачи, в котором бит 12 установлен в состояние "1". Установочный пакет содержит таблицу адресов назначения пакетов, которые контроллер должен принимать из канала 24 связи в свой буфер приема и транспортировать в памяти ЭВМ 21 в режиме прямого доступа
Установочный пакет может содержать до четырнадцати шестибайтовых адресов назначения пакетов, один из которых является широковещательным адресом, другой - индивидуальным адресом и остальные двенадцать адресов могут быть групповыми или индивидуальными. Широковещательный адрес предназначен для всех станций сети, подключенных к каналу 24 связи, и содержит единицы во всех своих сорока восьми битах. Индивидуальный адрес начинается с бита, установленного в ноль, - пакет с индивидуальным адресом принимает только один контроллер. Групповой адрес имеет первый бит, установленный в единицу, и служит для адресации к группе контроллеров. Групповые и индивидуальные адреса могут программно изменяться со стороны ЭВМ 21. Расположение адресов назначения в буфере установочного пакета в памяти ЭВМ 21 может быть, например, следующее: в буфере все четырнадцать адресов назначения занимают по три слова (шесть байтов) и образуют непрерывную зону в 42 слова.
The second state word of the receive buffer descriptor contains information about the number of bytes in the received packet. The installation package is described by the descriptor of the transmission buffer, in which bit 12 is set to state "1". The installation package contains a table of destination addresses of packets that the controller must receive from the communication channel 24 to its receive buffer and transport it to the computer memory 21 in direct access mode
An installation package can contain up to fourteen six-byte destination addresses for packages, one of which is a broadcast address, the other is an individual address, and the remaining twelve addresses can be group or individual. The broadcast address is intended for all network stations connected to the communication channel 24, and contains units in all its forty-eight bits. An individual address starts with a bit set to zero - only one controller accepts a packet with an individual address. The multicast address has the first bit set to one and serves to address a group of controllers. Group and individual addresses can be programmatically changed by the computer 21. The location of the destination addresses in the buffer of the installation package in the memory of the computer 21 can be, for example, the following: in the buffer, all fourteen destination addresses occupy three words (six bytes) and form a continuous zone of 42 the words.

Установочный пакет может содержать не двенадцать, а меньшее число групповых адресов назначения пакетов. Установочный пакет содержит в последних двух словах ( в слове числа и в слове номера контроллера) информацию о числе (NГ) контроллеров, подключенных к каналу 24 связи, и о номере (NУ) контроллера в канале 24 связи. Длина установочного пакета описывается четвертым словом дескриптора установочного пакета, в котором указывается длина буфера. The installation package may contain not twelve, but a smaller number of group destination addresses of the packages. The installation package contains in the last two words (in the word number and in the word number of the controller) information about the number (NG) of controllers connected to the communication channel 24, and about the number (NU) of the controller in the communication channel 24. The length of the installation package is described by the fourth word of the installation package descriptor, which indicates the length of the buffer.

Контроллер обменивается с ЭВМ 21 дескрипторами буферов, установочными пакетами в режиме прямого доступа к памяти. Для хранения дескрипторов и установочных пакетов в оперативной памяти 6 отводятся ячейки памяти. The controller communicates with the computer 21 descriptor buffers, installation packages in direct access to memory mode. To store descriptors and installation packages in RAM 6 memory cells are allocated.

В оперативной памяти 6 хранятся слова состояний и управления, которыми ЭВМ 21 и контроллер обмениваются в режиме программного обмена по четырнадцати адресам шины 18 адреса. Этим адресам (адресам регистров порта) шины 18 адреса должны быть поставлены в соответствие четырнадцать адресов оперативной памяти 6, через которые выполняется программный обмен и которые содержат следующие слова: только читаемые шесть слов физического адреса назначения, в младших байтах которых содержатся шесть байтов физического адреса назначения, а в двух старших байтах двух последних слов содержится контрольный код физического адреса назначения; только записываемые четыре слова стартовых адресов дескрипторов буферов приема (два слова) и дескрипторов буферов передачи (два слова); слово вектора прерываний; первое слово состояний и управления. In RAM 6, the words of states and control are stored, which the computer 21 and the controller exchange in program exchange mode at fourteen addresses of the address bus 18. To these addresses (port register addresses) of bus 18, addresses must be mapped to fourteen addresses of RAM 6 through which the program exchange is performed and which contain the following words: only readable six words of the physical destination address, the lower bytes of which contain six bytes of the physical destination address , and the two high bytes of the last two words contain the control code of the physical destination address; only four words that can be written are the start addresses of the receive buffer descriptors (two words) and the transmit buffer descriptors (two words); interrupt vector word; first word of state and control.

Физический адрес назначения является индивидуальным адресом назначения, хранящимся в памяти 70 микрокоманд, откуда он считывается при инициализации контроллера через вторую группу выходов шифратора 11 управления, через регистровое устройство 8 в оперативную память 6. Аналогично из памяти 70 микрокоманд в оперативную память 6 записывается контрольный код физического адреса назначения, который был вычислен и занесен в память 70 микрокоманд при ее первоначальном программировании. The physical destination address is an individual destination address stored in the memory of 70 microcommands, from where it is read when the controller is initialized through the second group of outputs of the control encoder 11, through the register device 8 into the main memory 6. Similarly, the physical control code 6 is written into the main memory 6 the destination address, which was calculated and stored in the memory of 70 microcommands during its initial programming.

ЭВМ 21 в режиме программного обмена считывает слова физического адреса назначения и контрольный код физического адреса назначения из контроллера и может переназначать или записывать физический адрес назначения в установочном пакете в качестве индивидуального адреса назначения. The computer 21 in program exchange mode reads the words of the physical destination address and the control code of the physical destination address from the controller and can reassign or record the physical destination address in the installation package as an individual destination address.

В режиме программного обмена ЭВМ 21 записывает в оперативную память 6 слово младших битов и слово старших битов стартового адреса дескриптора буфера передачи, слово младших битов и слово старших битов стартового адреса дескриптора буфера приема, а также слово вектора внешних прерываний и первое слово состояний и управления. Вектор прерываний, записываемый от ЭВМ 21 в контроллер, необходим для выполнения режима внешних прерываний. In the program exchange mode, the computer 21 writes into RAM 6 the word of the least significant bits and the word of the most significant bits of the start address of the transmit buffer descriptor, the word of the least significant bits and the word of the highest bits of the start address of the receive buffer descriptor, as well as the external interrupt vector and the first state and control word. The interrupt vector recorded from the computer 21 to the controller is necessary to perform external interrupt mode.

Биты первого слова состояний и управления имеют следующее значение. Бит 15 - бит запроса прерываний ЭВМ 21 устанавливается контроллером после приема пакета из канала 24 связи в фифо 90 приема и транспортировки его в ЭВМ 21 и модернизации битов 15 и 14 в первом слове состояний последнего дескриптора буфера, в котором содержится последний сегмент сообщения. Программа обслуживания прерываний, выполняемая ЭВМ 21, должна очищать этот бит. Бит 15 очищается при инициализации контроллера. The bits of the first word of state and control have the following meaning. Bit 15 - the interrupt request bit of the computer 21 is set by the controller after receiving the packet from the communication channel 24 to receive and transport it to computer 21 and upgrading bits 15 and 14 in the first word of the states of the last buffer descriptor, which contains the last message segment. The interrupt service program executed by the computer 21 should clear this bit. Bit 15 is cleared when the controller initializes.

Бит 14 - бит запроса прерываний устанавливается контроллером, если список дескрипторов приема исчерпан. Программа обслуживаний прерываний и сигнал инициализации контроллера сбрасывают этот бит. Bit 14 — The interrupt request bit is set by the controller if the list of receive descriptors has been exhausted. The interrupt service program and the controller initialization signal reset this bit.

Бит 13 устанавливается контроллером при чтении со стороны ЭВМ 21 слова состояний и управления в случае, если в канале 24 связи имеется сигнал передаваемых пакетов (сигнал несущей), обнаруживаемый детектором 97 входного сигнала. Bit 13 is set by the controller when reading from the side of the computer 21 the state and control word if the communication channel 24 contains a signal of transmitted packets (carrier signal) detected by the input signal detector 97.

Бит 12 - резерв, бит 11- резерв, бит 10 - резерв. Bit 12 is reserve, bit 11 is reserve, bit 10 is reserve.

Бит 09 устанавливается со стороны ЭВМ 21, если контроллер переводится в режим закольцовывания. При этом контроллер транспортирует из ЭВМ 21 в фифо 107 передачи, передает в канал 24 связи, принимает из канала 24 связи в фифо 90 приема, транспортирует в ЭВМ 21 передаваемые им самим пакеты. Bit 09 is set from the side of the computer 21, if the controller is put into loopback mode. In this case, the controller transports from computer 21 to FIFO 107 transmissions, transmits to communication channel 24, receives from communication channel 24 to FIFO 90 reception, transports packets transmitted by it to computer 21.

Бит 07 устанавливается контроллером при запросе прерываний программы, выполняемой ЭВМ 21, когда передатчик 13 передал сообщение в канал 24 связи и модернизировал биты 15 и 14 в первом слове состояний дескриптора буфера передачи. Программное обеспечение и сигнал инициализации сбрасывают этот бит. Bit 07 is set by the controller when requesting interruptions to the program executed by the computer 21, when the transmitter 13 transmitted the message to the communication channel 24 and upgraded bits 15 and 14 in the first word of the status of the transmission buffer descriptor. The software and initialization signal resets this bit.

Бит 06 устанавливается программным обеспечением, когда контроллеру разрешено генерировать сигнал прерываний ЭВМ 21. Этот бит очищается сигналом сброса и программным обеспечением. Bit 06 is set by software when the controller is allowed to generate a computer interrupt signal 21. This bit is cleared by a reset signal and software.

Бит 05 устанавливается контроллером при запросе прерываний программного обеспечения ЭВМ 21, если список дескрипторов буферов приема исчерпан. Bit 05 is set by the controller when requesting interruptions to the computer software 21 if the list of receive buffer descriptors is exhausted.

Бит 05 устанавливается в режиме инициализации и при установке бита 02. Бит 05 сбрасывается контроллером после загрузки в него слова младших и слова старших битов дескриптора буфера приема. Bit 05 is set in the initialization mode and when bit 02 is set. Bit 05 is reset by the controller after loading the least significant words and the most significant bits of the receive buffer descriptor into it.

Бит 04 - резерв, бит 03 - резерв. Bit 04 - reserve, bit 03 - reserve.

Бит 02 устанавливается контроллером при генерации сигнала запроса на прерывание ЭВМ 21, если ЭВМ 21 в режиме прямого доступа к памяти в течение времени тайм-аута таймерного устройства 60 не ответила сигналом готовности, подтверждающим чтение или запись слова. Bit 02 is set by the controller when generating a request signal to interrupt the computer 21, if the computer 21 in the direct memory access mode during the timeout of the timer device 60 did not respond with a ready signal confirming the reading or writing of the word.

Бит 01 устанавливается ЭВМ 21, если программное обеспечение производит инициализацию контроллера. Bit 01 is set by the computer 21 if the software initializes the controller.

Бит 00 устанавливается ЭВМ и разрешает прием пакетов из канала 24 связи. Bit 00 is set by the computer and allows the reception of packets from the communication channel 24.

В оперативной памяти 6 хранится второе слово состояний и управления, не доступное для ЭВМ 21. Установленный бит 00 этого слова означает, что в контроллер произведена загрузка стартового адреса дескриптора буфера передачи. Установленный бит 01 означает, что в контроллер произведена загрузка стартового адреса дескриптора буфера приема. Установка бита 02 означает, что производится пересылка в режиме прямого доступа к памяти из ЭВМ 21 в кортроллер слов дескриптора буфера передачи. Установка 04 означает, что производится пересылка из ЭВМ 21 в контроллер слов дескриптора буфера приема. Установка бита 05 означает, что производится пересылка дескриптора буфера передачи из контроллера в ЭВМ 21. Установка бита 06 означает, что производится пересылка дескриптора буфера приема из контроллера в ЭВМ 21. Установка бита 08 означает, что производится пересылка из ЭВМ 21 в контроллер содержимого буфера передачи. Установка бита 09 означает, что производится пересылка из контроля в ЭВМ 21 содержимого буфера приема. Установка бита 10 означает, что производится ожидание режима прямого доступа к памяти ЭВМ 21. Установка бита 12 говорит о том, что производится пересылка из ЭВМ 21 установочного пакета. In RAM 6, the second state and control word is stored, which is not available for computer 21. The set bit 00 of this word means that the start address of the transfer buffer descriptor has been loaded into the controller. The set bit 01 means that the start address of the receive buffer descriptor has been loaded into the controller. Setting bit 02 means that the transfer is made in the mode of direct access to memory from the computer 21 to the controller of the words of the descriptor of the transmission buffer. Setting 04 means that the transfer is made from the computer 21 to the controller of the words of the descriptor of the receive buffer. Setting bit 05 means that the transfer buffer descriptor is being transferred from the controller to the computer 21. Setting bit 06 means that the receiving buffer descriptor is being transferred from the controller to the computer 21. Setting bit 08 means that the contents of the transmission buffer are being transferred from the computer 21 to the controller . Setting bit 09 means that the contents of the receive buffer are transferred from the control to the computer 21. Setting bit 10 means that it is waiting for direct access to the memory of computer 21. Setting bit 12 indicates that the installation packet is being sent from computer 21.

Режимы работы контроллера 2 шины задаются сигналами на его входах управления. Если на третью группу его входов управления подан сигнал режима программного обмена, то он выдает на выходы управления сигналы управления, по которым сигналы адреса с шины 18 адреса поступают через интерфейс 1 на адресные входы селектора 10 адреса. При поступлении на системную шину 19 управления сигналов чтения или записи, сопровождающих сигналы адреса на шине 18 адреса, на выходах управления дешифратора 59 формируется сигнал, который позволяет селектору 10 адреса дешифратора адрес и в случае, если адресация в режиме программного обмена производится к контроллеру, на выходах селектора 10 адреса формируются сигналы запроса внутренних прерываний по чтению в режиме чтения или по записи в режиме записи. The modes of operation of the controller 2 of the bus are set by the signals at its control inputs. If a program exchange mode signal is supplied to the third group of its control inputs, then it gives control signals to the control outputs, through which address signals from address bus 18 are transmitted via interface 1 to the address inputs of address selector 10. Upon receipt of read or write signals accompanying the address signals on the address bus 18 to the control system bus 19, a signal is generated at the control outputs of the decoder 59, which allows the address selector 10 of the decoder to address if the addressing in the program exchange mode is made to the controller, the outputs of the address selector 10 generate interrupt request signals for reading in read mode or for writing in write mode.

Когда контроллер завершает режим чтения или записи, на третью группу входов управления контроллера 2 шины подается сигнал готовности, по которому дешифратор 59 формирует сигнал "Готовность", и этот сигнал поступает на системную шину 19 управления, что завершает циклы чтения и записи. Если на третью группу входов управления контроллера 2 шины или на первую группу его входов управления, или на вторую группу его входов управления подаются сигналы режима чтения или записи в режиме прямого доступа к памяти ЭВМ, то дешифратор 59 формирует на второй группе выходов сигнал требования прямого доступа, который подается через усилители 58 на системную шину 19 управления. When the controller completes the read or write mode, a ready signal is supplied to the third group of control inputs of the bus controller 2, by which the decoder 59 generates a "Ready" signal, and this signal is fed to the system control bus 19, which completes the read and write cycles. If the third group of control inputs of the bus controller 2 or the first group of its control inputs, or the second group of its control inputs are read or write in direct access to the computer memory, then the decoder 59 generates a direct access request signal on the second group of outputs , which is fed through amplifiers 58 to the system bus 19 controls.

При появлении на системной шине 19 управления со стороны ЭВМ 21 сигнала подтверждения прямого доступа дешифратор 59 на второй группе выходов формирует сигналы "Занято". Эти сигналы выдаются на системную шину 19 управления как сигналы подтверждения захвата контроллером системной шины ЭВМ 21. На третьей группе выходов дешифратора 59 формируются сигналы запросов внутренних прерываний по подтверждению режима прямого доступа. На второй группе выходов дешифратора 59 формируются сигналы управления, по которым сигналы адреса с разрядных выходов счетчика 3 адреса выдаются через интерфейс 1 на шину 18 адреса контроллера. Если установлен при этом режим записи при прямом доступе к памяти, то по сигналам управления с второй группы выходов управления дешифратора 59 сигналы данных с выходов регистра 56 через усилители 55 шины данных считываются на шину 17 данных контроллера. На четвертой группе выходов дешифратора 59 формируются сигналы запуска таймерного устройства 60, по которым таймерное устройство начинает отсчет интервала времени, по окончании которого с его выходов на третью группу входов дешифратора 59 поступают сигналы. По ним на первой группе выходов дешифратора 59 формируется сигнал "Чтение" или сигнал "Запись" в зависимости от выбранного режима прямого доступа. When a direct access confirmation signal appears on the system bus 19 from the computer 21, the decoder 59 generates busy signals on the second group of outputs. These signals are issued to the control system bus 19 as confirmation signals of the capture of the computer system bus by the controller 21. On the third group of outputs of the decoder 59, request signals of internal interrupts for confirming the direct access mode are generated. On the second group of outputs of the decoder 59, control signals are generated, according to which address signals from the bit outputs of the address counter 3 are issued via interface 1 to the controller address bus 18. If the recording mode is set for this with direct access to the memory, then according to the control signals from the second group of control outputs of the decoder 59, the data signals from the outputs of the register 56 through the amplifiers 55 of the data bus are read onto the controller data bus 17. On the fourth group of outputs of the decoder 59, the trigger signals of the timer device 60 are generated, according to which the timer device starts counting the time interval, after which signals from the outputs of the third group of inputs of the decoder 59 are received. According to them, on the first group of outputs of the decoder 59, a “Read” signal or a “Write” signal is formed depending on the selected direct access mode.

При установке на второй группе входов дешифратора 59 режима внешних прерываний дешифратор 59 на второй группе своих выходов формирует сигнал требования прерывания. При появлении на системной шине 19 управления со стороны ЭВМ 21 сигнала подтверждения прерываний дешифратор 59 на второй группе своих выходов формирует сигнал "Захват", на третьей группе своих выходов формирует сигналы управления, по которым вектор прерываний считывается из регистра 56 на шину 17 данных контроллера. На четвертой группе выходов дешифратора 59 формируется сигнал, по которому производится запуск таймерного устройства 60. По истечении промежутка времени, достаточного для установки сигналов вектора прерываний на шине 17 данных, по сигналам с выходов таймерного устройства на второй группе выходов дешифратора 59 формируется сигнал "Запись", подаваемый на системную шину 19 управления. При поступлении с шины 19 управления на первую группу входов дешифратора 59 со стороны ЭВМ 21 сигнала "Готовность" прекращается выдача вектора на шину 17 данных и завершается режим внешних прерываний снятием с системной шины 19 управления сигнала "Захват". When the external interrupt mode is set on the second group of inputs of the decoder 59, the decoder 59 generates an interrupt request signal on the second group of its outputs. When an interrupt confirmation signal appears on the system bus 19 from the computer 21 side, the decoder 59 generates a Capture signal on the second group of its outputs, and generates control signals on the third group of its outputs, according to which the interrupt vector is read from the register 56 to the controller data bus 17. A signal is generated on the fourth group of outputs of the decoder 59, by which the timer device 60 is started. After a period of time sufficient to set the signals of the interrupt vector on the data bus 17, a signal “Record” is generated from the outputs from the timer device on the second group of outputs of the decoder 59 supplied to the control system bus 19. When received from the control bus 19 to the first group of inputs of the decoder 59 from the computer 21, the signal "Ready" stops the output of the vector on the data bus 17 and ends the external interrupt mode by removing the signal from the system bus 19 control signal "Capture".

Передатчик 13 производит буферизацию передаваемого пакета в фифо 107 передачи. Данные в фифо 107 передачи записываются с внутренней шины 15 контроллера через интерфейс 1 под управлением сигналов на его второй группе входов управления. Таким образом, может записываться, например, преамбула пакета. Данные в фифо 107 передачи могут записываться с шины 17 данных контроллера через интерфейс 1 под управлением сигналов на первой группе его входов управления. Данные в фифо 107 сопровождаются метками по его входам меток. The transmitter 13 buffers the transmitted packet in fifo 107 transmission. Data in FIFO 107 transfer is recorded from the internal bus 15 of the controller via interface 1 under the control of signals on its second group of control inputs. Thus, for example, a preamble of a packet may be recorded. Data in fifo 107 transmission can be recorded from the controller data bus 17 through the interface 1 under the control of signals on the first group of its control inputs. Data in FIFO 107 is accompanied by labels at its label inputs.

При записи в фифо 107 передачи данных или слов преамбулы с внутренней шины 15 каждое слово данных сопровождается по второй группе входов управления передатчика 13 сигналами управления записью данных и сигналами меток. Метки дают возможность отметить слова преамбулы, которые не подвергаются делению на образующий полином на логике 109 циклического контроля в отличие от слов данных. When recording in Fifo 107 data transfer or preamble words from the internal bus 15, each data word is accompanied by a second group of transmitter control inputs 13 by data recording control signals and mark signals. Labels make it possible to mark the words of the preamble, which are not subject to division into a generator polynomial on the logic 109 of cyclic control, in contrast to data words.

После загрузки в фифо 107 передачи последнего слова данных на третью группу входов управляющей логики 113 подается сигнал записи метки конца пакета. При этом на входы меток фифо 107 передачи с выходов управляющей логики 113 подается метка конца пакета, а на входы управления фифо 107 передачи подается сигнал записи, по которому метка конца пакета переписывается в фифо 107 передачи. After loading in FIFO 107 the transmission of the last data word to the third group of inputs of the control logic 113, a signal is written to mark the end of the packet. In this case, the label of the end of the packet is supplied to the inputs of the labels of the FIFO 107 from the outputs of the control logic 113, and the write signal is transmitted to the inputs of the control of the FIFO 107, according to which the label of the end of the packet is transferred to the FIFO 107 of the transfer.

По сигналам начала передачи на третьей группе входов управляющей логики 113 передатчик 13 начинает передачу пакета. При этом синхронизирующие импульсы с генератора 115 подаются на управляющую логику 113, на счетный вход счетчика 112 битов, по выходным сигналам которого и по сигналам меток с выходов меток фифо 107 передачи управляющая логика 113 управляет процессом передачи данных. При этом на входы управления фифо 107 передачи поступают сигналы чтения, по которым на выходы фифо 107 передачи из ячеек памяти считываются слова преамбулы и слова данных, которые переписываются в сдвиговый регистр 108 и через коммутатор 110, через кодер 111 передаются последовательным потоком битов через выход передатчика 13 в канал 24 связи. По меткам слов данных, читаемых с выходов меток фифо 107 передачи, управляющая логика 113 формирует сигналы разрешения вычисления контрольной суммы, которые поступают на входы управления логики циклического контроля, на которой производится вычисление контрольной суммы для данных, поступающих на вход логики циклического контроля. According to the signals of the start of transmission on the third group of inputs of the control logic 113, the transmitter 13 starts transmitting the packet. In this case, the synchronizing pulses from the generator 115 are supplied to the control logic 113, to the counting input of the counter 112 bits, according to the output signals of which and by the signals of the tags from the outputs of the tags FIFO 107 transfer control logic 113 controls the data transfer process. In this case, read signals are transmitted to the control inputs of the FIFO 107 transmission, through which the words of the preamble and data words are read from the memory cells to the outputs of the FIFO 107 and transferred to the shift register 108 and through the switch 110, through the encoder 111 they are transmitted in a serial bit stream through the output of the transmitter 13 to the communication channel 24. According to the labels of the data words read from the outputs of the labels of the transfer fifo 107, the control logic 113 generates enable signals for calculating the checksum, which are fed to the control inputs of the cyclic control logic, on which the checksum is calculated for the data received at the input of the cyclic control logic.

По сигналам метки конца пакета и сигналам с выходов счетчика 112 битов прекращается передача данных и через коммутатор 110 с выхода логики циклического контроля производится передача контрольной суммы. По окончании передачи пакета с выходов состояний передатчика 13 выдается сигнал внутренних прерываний конца передачи пакета в канал 24 связи. The signals of the packet end mark and the signals from the outputs of the counter 112 bits stop the data transfer and through the switch 110, the checksum is transmitted from the output of the cyclic control logic. At the end of the transmission of the packet from the outputs of the status of the transmitter 13, a signal of internal interruptions of the end of the transmission of the packet to the communication channel 24 is issued.

Приемник 12 буферизирует принимаемые из канала 24 связи данные в фифо 90 приема. Из фифо приема слова данных считываются или на внутреннюю шину 15 контроллера, или на его шину 17 данных. The receiver 12 buffers the data received from the communication channel 24 in fifo 90 reception. From Fifo reception data words are read either on the internal bus 15 of the controller, or on its data bus 17.

Приемник 12 начинает прием после поступления на вторую группу его входов управления сигнала разрешения приема с выходов шифратора 11 управления. С выходов управляющей логики 100 в этом случае подается сигнал сброса RS-триггера 94 на его R-вход. Принимаемый сигнал данных декодируется декодером 96, на выходе которого формируется код без возвращения к нулю, сопровождаемый тактовыми импульсами с выхода синхронизации декодера 96. The receiver 12 starts receiving after receipt of a reception permission signal from the outputs of the control encoder 11 upon the second group of its control inputs. From the outputs of the control logic 100 in this case, a reset signal of the RS flip-flop 94 is supplied to its R-input. The received data signal is decoded by decoder 96, at the output of which a code is generated without returning to zero, followed by clock pulses from the synchronization output of decoder 96.

Данные сдвигаются сдвиговым регистром 92, и при наличии на выходах регистра 92 параллельного кода ограничителя преамбулы детектор 93 флага на своем выходе формирует сигнал, устанавливающий по S-входу RS-триггер 94, чем снимается сигнал сброса с входа сброса счетчика 98 битов. Счетчик 98 битов начинает подсчет тактовых импульсов с выхода синхронизации декодера 96. По значению выходных сигналов счетчика 98 битов производится перезапись слов данных с выходов сдвигового регистра 92 в фифо 90 приема по сигналам записи, подаваемым на его входы управления. На входы меток фифо 90 приема подаются метки слов данных, которые записываются в фифо приема по сигналам записи. The data is shifted by the shift register 92, and if the outputs of the register 92 of the parallel code of the preamble limiter, the flag detector 93 generates a signal at its output that sets the RS-flip-flop 94 at the S-input, thereby removing the reset signal from the reset input of the 98-bit counter. The counter 98 bits starts counting clock pulses from the synchronization output of the decoder 96. Based on the value of the output signals of the counter 98 bits, the words of the data from the outputs of the shift register 92 are rewritten to receive FIFO 90 by the recording signals supplied to its control inputs. At the inputs of the labels Fifo 90 receive tags of data words that are recorded in Fifo reception by recording signals.

По сигналам, подаваемым на входы управления, логика 95 циклического контроля производит подсчет контрольной суммы. По окончании приема пакета по сигналу с выхода детектора 97 входного сигнала управляющая логика 100 выдает сигналы управления, по которым сигналы с выхода контроля логики 95 циклического контроля, с выходов счетчика 98 битов поступают на входы мультиплексора 91. According to the signals supplied to the control inputs, the logic 95 of the cyclic control calculates the checksum. Upon completion of receiving the packet by the signal from the output of the detector 97 of the input signal, the control logic 100 generates control signals by which the signals from the output of the control logic 95 of the cyclic control from the outputs of the counter 98 bits are fed to the inputs of the multiplexer 91.

Во время приема пакетов ведется подсчет слов данных по сигналам на счетном входе счетчика 99 байтов. Когда в фифо 90 приема записаны все слова адреса назначения пакета, по сигналам с выходов счетчика 99 байтов на выходах состояния приемника 12 формируется сигнал внутренних прерываний на фильтрацию адреса назначения. По сигналу чтения данных, подаваемых на вторую группу входов управления приемника 12, управляющая логика 100 выдает на входы управления фифо 90 приема сигналы чтения, и слова адреса назначения пакета с выходов фифо 90 приема через мультиплексор 91 считываются на внутреннюю шину 15 контроллера. During the reception of packets, words of data are counted according to the signals at the counter input of the 99 bytes counter. When all words of the destination address of the packet are recorded in FIFO 90, the signal from the outputs of the counter 99 bytes at the outputs of the status of the receiver 12 generates an internal interrupt signal to filter the destination address. According to the read signal of the data supplied to the second group of control inputs of the receiver 12, the control logic 100 provides read signals to the control inputs of the FIFO 90, and the words of the destination address of the packet from the outputs of the FIFO 90 of the receive through the multiplexer 91 are read to the internal bus 15 of the controller.

Если адрес назначения пакета не различается контроллером как предназначенный ему, то на вторую группу входов управления приемника 12 подается сигнал сброса пакета, по которому на входы управления фифо 90 приема также подается сигнал сброса, производится сброс счетчиков 149 и 150 и фифо 90 приема устанавливается в исходное состояние. Слова пакета, имеющего адрес назначения, распознаваемый контроллером как свой, пересылаются в режиме прямого доступа к памяти ЭВМ из фифо 90 приема на шину 17 данных контроллера. If the destination address of the packet does not differ by the controller as intended for it, then a packet reset signal is sent to the second group of control inputs of the receiver 12, through which a reset signal is also sent to the control inputs of the FIFO 90, the counters 149 and 150 are reset, and the FIFO 90 is set to the original state. The words of the packet with the destination address, recognized by the controller as its own, are sent in the direct access mode to the computer memory from the fifo 90 reception to the controller data bus 17.

Приемник 12 переходит в режим поддержки прямого доступа к памяти, когда на его вторую группу входов управления подается сигнал инициализации режима прямого доступа. При этом с выходов управляющей логики 100 на выходы управления приемника 12 подается сигнал поддержки требования прямого доступа к памяти. При приходе на первую группу входов управления приемника 12 сигнала подтверждения режима прямого доступа к памяти управляющая логика 100 на выходы управления приемника 12 выдает сигнал занятости системной шины и сигнал записи слова. При приходе сигнала готовности на первую группу входов управления приемника 12, при отсутствии на второй группе входов управления приемника 12 сигнала требования окончания прямого доступа к памяти, формируемого в микропрограмме по тайм-ауту счетчика-таймера 77, при отсутствии на входе управления приемника 12 сигнала требования окончания прямого доступа к памяти, формируемого по сигналу с выхода схемы 5 сравнения, и при отсутствии на выходах меток фифо 90 приема сигнала метки конца пакета управляющая логика 100 выдает на выходы управления приемника 12 сигнал записи слова. В противном случае управляющая логика 100 снимает с выходов управления приемника 12 сигнал занятости шины и этим прекращается режим прямого доступа к памяти ЭВМ. The receiver 12 enters the direct memory access support mode when a direct access mode initialization signal is supplied to its second group of control inputs. At the same time, from the outputs of the control logic 100, the control outputs of the direct memory access requirement are supplied to the control outputs of the receiver 12. When the direct signal access mode confirmation signal is received at the first group of control inputs of the receiver 12, the control logic 100 outputs the system bus busy signal and the word write signal to the control outputs of the receiver 12. When a ready signal arrives at the first group of control inputs of the receiver 12, if there is no signal on the end of the second group of control inputs of the receiver 12 requiring direct access to the memory generated in the firmware by the timeout of the counter-timer 77, if there is no demand signal at the control input of the receiver 12 the end of direct access to the memory generated by the signal from the output of the comparison circuit 5, and if there are no FIFO marks 90 at the outputs of the reception of the end of packet label signal, the control logic 100 provides the control outputs to nick 12 recording signal word. Otherwise, the control logic 100 removes the bus busy signal from the control outputs of the receiver 12 and this stops the direct access to the computer memory.

Вместе с выдачей сигнала записи на выходы управления приемника 12 на входы управления фифо 90 приема поступает сигнал чтения и с выходов данных фифо 90 приема считываются слова данных, а с выходов меток - метки. Если с выходов меток фифо 90 приема считана метка конца пакета, то вместе с прекращением прямого доступа к памяти на вторую группу выходов состояний приемника 12 управляющая логика 100 выдает сигнал внутренних прерываний по концу пересылки пакета. При наличии на второй группе входов управления приемника 12 сигнала сброса прерываний сигналы запросов внутренних прерываний снимаются с выходов состояний приемника 12. Together with the issuance of the write signal to the control outputs of the receiver 12, a read signal is received to the control inputs of the FIFO 90, and data words are read from the outputs of the FIFO 90 reception, and the words are read from the outputs of the labels. If the label of the end of the packet is read from the outputs of the Fifo 90 reception labels, then, along with the termination of direct memory access to the second group of status outputs of the receiver 12, the control logic 100 generates an internal interrupt signal at the end of the packet transfer. If the second group of control inputs of the receiver 12 have an interrupt reset signal, the internal interrupt request signals are removed from the status outputs of the receiver 12.

Приемник 12 по сигналам запроса на второй группе входов управления через мультиплексор 91 выдает на внутреннюю шину 15 контроллера сигналы состояний с выходов счетчика 98 битов, по которым определяется кратность принятых битов числу восемь, выдает сигнал с выхода контроля логики 95 циклического контроля и с выхода детектора 97 входного сигнала. The receiver 12, according to the request signals at the second group of control inputs, through the multiplexer 91 gives state signals from the outputs of the counter 98 bits to the internal bus 15 of the controller, which determines the multiplicity of the received bits by the number eight, gives a signal from the control output of the logic 95 of the cyclic control and from the output of the detector 97 input signal.

Программный обмен словами управления и словами состояний через оперативную память 6 осуществляется следующим образом. ЭВМ 21 обращается к контроллеру с циклами чтения или записи. При этом она выставляет на шине 18 адреса контроллера один из адресов, отведенный под адресацию регистров порта. Каждому из двенадцати считываемых или записываемых в режиме программного обмена слов состояний и слов управления, хранящихся в оперативной памяти 6, соответствует единственный адрес (адрес регистра порта) на шине 18 адреса. Software exchange of control words and state words through the RAM 6 is as follows. The computer 21 accesses the controller with read or write cycles. At the same time, it sets one of the addresses allocated for addressing port registers on the bus 18 of the controller address. Each of the twelve read or written in the program exchange mode words of states and control words stored in RAM 6 corresponds to a single address (port register address) on the address bus 18.

По системной шине 19 управления контроллера ЭВМ 21 выставляет сигналы управления чтением или записью. Контроллер 2 шины, принимая эти сигналы через входы-выходы, на выходах формирует сигналы чтения или записи, а на выходах управления вырабатывает сигналы разрешения работы селектора 10 адреса, и сигналы управления, по которым сигналы с шины 18 адреса через выходы адреса интерфейса 1 поступают на адресные входы селектора 10 адреса. Селектор адреса при распознании адресов вырабатывает на выходе сигнал запроса внутренних прерываний, по которому, а также по сигналам запросов внутренних прерываний по чтению или по записи с выходов контроллера 2 шины контроллер 9 прерываний на своих выходах формирует вектор внутренних прерываний, поступающий на третью группу входов мультиплексора 71, и сигнал управления, поступающий по линии 44 на первый вход управления мультиплексора 71. По сигналу управления на его первом входе управлния мультиплекесор 71 пропускает сигналы с третьей группы своих входов на входы адреса памяти 70 микрокоманд. Из памяти микрокоманд выбирается первая микрокоманда управляющей подпрограммы чтения или подпрограммы записи в режиме подпрограммного обмена. По синхронизирующим импульсам с выхода генератора 75 микрокоманды переписываются с первой группой выходов памяти 70 микрокоманд в регистр 68 микрокоманд, а с второй группы выходов памяти 70 микрокоманд сигналы констант, пересылаемые через мультиплексор 69, под управлением сигнала с выхода памяти 70 микрокоманд переписываются в регистры 63. On the system bus 19 of the control of the controller, the computer 21 sets the control signals for reading or writing. The bus controller 2, receiving these signals through the inputs / outputs, generates read or write signals at the outputs, and at the control outputs it generates operation enable signals for the address selector 10, and control signals through which signals from the address bus 18 pass through the outputs of the interface 1 address to address inputs of address selector 10. When address recognition, the address selector generates an internal interrupt request signal, which, as well as read and write internal interrupt request signals from the bus controller 2 outputs, interrupt controller 9 generates an internal interrupt vector at its outputs that goes to the third group of multiplexer inputs 71, and the control signal received on line 44 to the first control input of multiplexer 71. According to the control signal at its first control input, multiplexer 71 passes signals from the third ppy its inputs to the inputs 70 microinstruction memory addresses. From the memory of the micro-commands, the first micro-command of the control reading subroutine or recording subroutine is selected in the subroutine exchange mode. According to the synchronizing pulses from the output of the generator 75, the microcommands are copied with the first group of outputs of the memory 70 microcommands to the register 68 of microcommands, and from the second group of outputs of the memory 70 microcommands, the constant signals sent through the multiplexer 69 are transferred to the registers 63 under the control of the signal from the output of the memory 70 of the microcommands.

Микрокоманды с выходов регистра 68 микрокоманд поступают на шину 16 управления контроллера, принуждая его узлы, подключенные входами управления к шине 16 управления, выполнять операции, предписываемые микрокомандами. Последовательность выполнения управляющих микрокоманд в программном обмене следующая. Microcommands from the outputs of the register 68 microcommands are received on the control bus 16 of the controller, forcing its nodes connected by the control inputs to the control bus 16 to perform operations prescribed by the microcommands. The sequence of executing control microcommands in a program exchange is as follows.

По первой микрокоманде производятся резервирование адреса микрокоманды предыдущей управляющей подпрограммы путем его перезаписи из регистра 84 в стек 86 и резервирование в регистрах 63 данных прерванной подпрограммы путем наращивания значения реверсивного счетчика 65 на единицу. Эти операции дают возможность возвратиться к прерванной подпрограмме по окончании текущей подпрограммы. По этой же микрокоманде по шине 16 управления контроллера на третью группу входов управления контроллера 2 шины подается сигнал сброса запросов внутренних прерываний, по которому снимаются запросы внутренних прерываний по чтению или по записи с третьей группы входов контроллера 9 прерываний, а также устанавливается на входах управления приоритетами контроллера 9 прерываний код текущего приоритета, запрещающий прерывание текущей подпрограммы. Резервирование прерываний программы возможно и без использования стековой организации регистров 63. Однако в этом случае время перехода на подпрограмму увеличивается, поскольку данные из регистрового устройства 8 должны резервироваться в оперативной памяти 6. According to the first micro-command, the micro-command address of the previous control subroutine is backed up by rewriting it from register 84 to stack 86 and the interrupted subprogram data is backed up in registers 63 by increasing the value of the reverse counter 65 by one. These operations make it possible to return to the interrupted routine at the end of the current routine. According to the same micro-command, on the controller control bus 16, the third group of control inputs of the controller 2 of the bus receives a signal for resetting internal interrupt requests, which removes internal interrupt requests for reading or writing from the third group of inputs of the controller 9 interrupts, and is also installed on the priority control inputs controller 9 interrupt code of current priority, prohibiting the interruption of the current routine. Reservation of program interruptions is possible without using the stacked organization of registers 63. However, in this case, the transition time to the subroutine is increased, since the data from the register device 8 must be backed up in RAM 6.

По второй микрокоманде по сигналам с шины 16 управления контроллер 2 шины на своих выходах управления формирует сигналы, по которым, а также по сигналам на второй группе входов управления интерфейса 1 сигналы с шины 18 адреса поступают через выходы адреса интерфейса 1, через мультиплексор 14 по внутренней шине 15 на первую группу адресных входов запоминающего устройства 7. На его вторую группу адресных входов и на входы управления через регистровое устройство 8 с второй и третьей групп выходов памяти 70 микрокоманд поступает код операции, по которому производится преобразование сигналов с первой группы адресных входов запоминающего устройства 7 в сигналы адреса оперативной памяти 6, формируемые на выходах запоминающего устройства 7 и по третьей микрокоманде переписываемые в первый из регистров регистрового устройства 8. Сигналы с первого из регистров регистрового устройства 8 подаются на входы адреса оперативной памяти 6, и производится выборка ячейки оперативной памяти 6. According to the second micro-command, according to the signals from the control bus 16, the bus controller 2 generates signals at its control outputs, according to which, as well as signals from the second group of control inputs of the interface 1, signals from the address bus 18 are sent through the outputs of the interface 1 address, through the multiplexer 14 through the internal bus 15 to the first group of address inputs of the storage device 7. To its second group of address inputs and to control inputs through the register device 8 from the second and third groups of outputs of the memory 70 microcommands receives the operation code, according to which The signal is converted from the first group of address inputs of the memory device 7 to the memory address signals 6 generated at the outputs of the memory device 7 and transferred to the first register of the register device 8 according to the third micro-command. The signals from the first register of the register device 8 are fed to the address inputs RAM 6, and the cell is sampled RAM 6.

Таким образом, для каждого из адресов шины 18 адреса, по которым ЭВМ 21 обращается к контроллеру в режиме программного обмена, на выходах запоминающего устройства 7 формируется адрес ячейки оперативной памяти 6, в которой хранится соответствующее слово управления или слово состояний. По этой же микрокоманде на вторую группу адресных входов и входы управления запоминающего устройства 7 подается код операции, по которому сигналы, поступающие с шины 18 адреса на первую группу адресных входов запоминающего устройства 7, преобразуются на его выходах состояний в код, определяющий безусловный переход на одну из ветвей подпрограммы. Этот код подается на первую группу входов шифратора 11 управления. Дешифратор-преобразователь 72 начального адреса по коду с выходов состояний запоминающего устройства 7 формирует начальный адрес новой ветви управляющей подпрограммы, который под управлением сигналов на входах управления мультиплексора 71 поступает через третью группу его входов на входы адреса памяти 70 микрокоманд для выработки четвертой микрокоманды. По четвертой микрокоманде выполняется подпрограмма, в которой производится обработка конкретного слова состояний и управления, к которому обратилась ЭВМ 21. Thus, for each of the bus addresses 18, the addresses at which the computer 21 accesses the controller in program exchange mode, the outputs of the memory device 7 are formed by the address of the memory cell 6, in which the corresponding control word or status word is stored. By the same micro-command, an operation code is supplied to the second group of address inputs and control inputs of the memory device 7, according to which the signals from the address bus 18 to the first group of address inputs of the memory device 7 are converted at its state outputs into a code that defines an unconditional transition to one from the branches of a subroutine. This code is supplied to the first group of inputs of the control encoder 11. The decoder-converter 72 of the starting address according to the code from the outputs of the states of the storage device 7 generates the starting address of a new branch of the control subroutine, which, under the control of the signals at the control inputs of the multiplexer 71, enters through the third group of its inputs to the inputs of the memory address 70 of the microcommands to generate the fourth microcommand. According to the fourth micro-command, a subroutine is executed in which a specific word of states and control is processed, which was addressed by the computer 21.

В приведенном примере контроллера возможны следующие подпрограммы: чтение из контроллера в ЭВМ 21 одного из слов физического адреса назначения или чтение слова вектора прерываний. Эти процессы выполняются однотипно, а потому образуют единую подпрограмму чтения без модификаций. In the given controller example, the following routines are possible: reading from the controller in the computer 21 one of the words of the physical destination address or reading the word of the interrupt vector. These processes are performed the same way, and therefore form a single reading routine without modifications.

Чтение слова состояний и управления, запись слова старших битов стартового адреса дескриптора буфера приема, запись слова старших битов стартового адреса буфера передачи - все они выполняются по-разному. Reading the status and control word, writing the high-order bits of the start address of the receive buffer descriptor, writing the high-order words of the start bit of the start buffer of the transmit buffer — they all perform differently.

Запись слова младших битов стартового адреса дескриптора буфера передачи, запись слова младших битов стартового адреса буфера приема, запись слова вектора прерываний образуют единую управляющую подпрограмму записи без модификаций. Writing the word of the least significant bits of the start address of the transmit buffer descriptor, writing the least significant bit of the start address of the start buffer of the receive buffer, writing the word of the interrupt vector form a single control recording routine without modifications.

При выполнении подпрограммы чтения без модификации по четвертой микрокоманде из оперативной памяти 6 читается соответствующая ячейка памяти и через интерфейс 1 ее содержимое выдается на шину 17 данных, для чего через шину 16 управления подаются соответствующие управляющие сигналы на узлы контроллера, в частности на контроллер 2 шины, который вырабатывает при этом на выходах управления сигналы управления для интерфейса 1, обеспечивающие чтение сигналов из интерфейса на шину 17 данных. When the reading subroutine is executed without modification according to the fourth micro-command, the corresponding memory cell is read from the RAM 6 and its contents are transmitted to the data bus 17 through the interface 1, for which the corresponding control signals are sent to the controller nodes, in particular to the bus controller 2, via the control bus 16, which generates control signals for the outputs 1 for the interface 1 for reading signals from the interface to the data bus 17.

При выполнении записи без модификации по четвертой микрокоманде сигналы с шины 17 данных поступают на входы оперативной памяти 6 и записываются в соответствующую ячейку памяти, адрес которой читается из регистрового устройства 8. When recording without modification according to the fourth micro-command, the signals from the data bus 17 go to the inputs of the RAM 6 and are recorded in the corresponding memory cell, the address of which is read from the register device 8.

При выполнении записи слова старших битов адреса дескриптора буфера передачи по четвертой микрокоманде производится запись этого слова в оперативную память 6. When recording words of the most significant bits of the address of the descriptor of the transmission buffer by the fourth micro-command, this word is recorded in RAM 6.

По пятой микрокоманде в первый из регистров 63 регистрового устройства 8 из памяти 70 микрокоманд через мультиплексор 69 записывается константа, определяющая адрес ячейки оперативной памяти 6, в которой хранится второе слово состояний и управления, не доступное для ЭВМ 21. Второе слово состояний и управления считывается на первую группу адресных входов запоминающего устройства 7, на выходах которого формируется второе слово состояний и управления с установленным нулевым битом, что соответствует загрузке старших битов стартового адреса дескриптора буфера передачи оперативной памяти 6. According to the fifth micro-command, in the first of the registers 63 of the register device 8 from the memory 70 of the micro-commands, a constant is written through the multiplexer 69, which determines the address of the memory cell 6, which stores the second state and control word, not available for computer 21. The second state and control word is read on the first group of address inputs of the storage device 7, the outputs of which form the second word of states and control with the zero bit set, which corresponds to the loading of the high bits of the start address of the desktop RAM transfer buffer ripper 6.

По шестой микрокоманде модернизированное второе слово состояний и управления записывается во второй из регистров 63 регистрового устройства 8, чтобы по этой же микрокоманде быть переписанным обратно в оперативную память 6. According to the sixth micro-command, the upgraded second state and control word is recorded in the second of the registers 63 of the register device 8 in order to be rewritten back to the RAM 6 using the same micro-command.

По седьмой микрокоманде с второй группы выходов памяти 70 микрокоманд на входы адреса оперативной памяти 6 подается адрес первого слова состояний и управления, по которому на запоминающем устройстве 7 производится сброс бита 04. According to the seventh micro-command from the second group of memory outputs 70 micro-commands, the addresses of the first state and control word are supplied to the inputs of the address of the RAM 6, by which bit 04 is reset on the memory device 7.

По восьмой микрокоманде первое слово состояний и управления со сброшенным битом 04 с выходов запоминающего устройства 7 записывается обратно в оперативную память 6 по тому же адресу. Сброшенный бит 04 означает, что в ЭВМ 21 подготовлены данные для передачи, что хранятся они в буфере передачи, стартовый адрес дескриптора которого загружен в контроллер. При этом первым загружено слово младших битов стартового адреса дескриптора буфера передачи, а за ним слово старших битов дескриптора буфера передачи. Для дескриптора буфера приема также загружают в контроллер сначала слово младших, а затем слово старших битов стартового адреса дескриптора. According to the eighth micro-command, the first word of states and control with the bit 04 off from the outputs of the storage device 7 is written back to the RAM 6 at the same address. The reset bit 04 means that the computer 21 has prepared the data for transmission, that it is stored in the transmission buffer, the start address of the descriptor of which is loaded into the controller. In this case, the word of the least significant bits of the start address of the transmit buffer descriptor is loaded first, followed by the word of the highest bits of the transmit buffer descriptor. For the descriptor of the receive buffer, the first low-order word is also loaded into the controller, and then the high-order bit of the start address of the descriptor is then loaded.

Аналогично выполняется запись слова старших битов стартового адреса дескриптора буфера приема, с той лишь разницей, что во втором слове состояний и управления устанавливается не нулевой, а первый бит, а в первом слове состояний и управления сбрасывается бит 05. Это означает, что в ЭВМ подготовлен буфер для приема данных из контроллера. Similarly, the word of the high bits of the start address of the descriptor of the receive buffer is written, with the only difference being that the second bit is set not to zero but the first bit, and bit 05 is reset in the first word of states and control. This means that the computer is prepared buffer for receiving data from the controller.

При выполнении чтения в программном обмене первого слова состояний и управления по пятой микрокоманде производится пересылка сигналов с входов мультиплексора 91 через входы-выходы приемника 12, через первую группу входов регистрового устройства 8 в его второй из регистров 63. Коммутация сигналов с входом мультиплексора 91 должна быть при этом такой, чтобы сигнал несущей в канале 24 связи, снимаемый с выхода детектора 97 входного сигнала, прошел на один из выходов мультиплексора 91. В этом случае один из битов (бит несущей) во втором из регистров 63 регистрового устройства 8 после выполнения четвертой микрокоманды установлен, если в канале 24 связи имеется в это время сигнал передачи пакетов. Например, это может быть второй бит. Остальные биты могут быть в произвольном состоянии. When reading the first word of states and control in software exchange via the fifth micro-command, the signals from the inputs of the multiplexer 91 are sent through the inputs and outputs of the receiver 12, through the first group of inputs of the register device 8 to its second of the registers 63. Switching signals with the input of the multiplexer 91 should be such that the carrier signal in the communication channel 24, taken from the output of the input signal detector 97, passes to one of the outputs of the multiplexer 91. In this case, one of the bits (carrier bit) in the second of the registers 63 register device 8 after execution of the fourth microcommand is installed if in the communication channel 24 there is at this time a packet transmission signal. For example, it may be the second bit. The remaining bits may be in an arbitrary state.

По пятой микрокоманде на первую группу адресных входов запоминающего устройства 7 читается из оперативной памяти 6 первое слово состояний и управления, а на его вторую группу адресных входов с второй группы входов-выходов регистрового устройства 8 читается слово второго из регистров 63 с установленным или не установленным битом несущей в зависимости от состояний выхода детектора 97 входного сигнала. На выходах запоминающего устройства 7 формируется слово состояний и управления с модифицированным битом 13. При этом бит 13 устанавливается в "1" или "0" в зависимости от состояния бита несущей. According to the fifth micro-command, the first state and control word is read from the RAM 6 to the first group of address inputs of the memory device 7, and the word of the second of the registers 63 with or without the bit set is read from its second group of address inputs from the second group of I / O of the register device 8 carrier depending on the output states of the input signal detector 97. At the outputs of the storage device 7, a state and control word is generated with a modified bit 13. In this case, bit 13 is set to "1" or "0" depending on the state of the carrier bit.

Для модификации бита 13 на входы управления запоминающего устройства 7 подается команда модификации бита 13 первого слова состояния в зависимости от состояний бита несущей на второй группе адресных входов запоминающего устройства 7. Из ячейки памяти запоминающего устройства 7, адрес которой содержится на первой и второй группах адресных входов и входах управления запоминающего устройства 7, на его выходы читается результат операции, занесенный в ячейку при изготовлении контроллера. To modify bit 13, the control inputs of the memory device 7 receive a command to modify the bit 13 of the first state word depending on the status of the carrier bit on the second group of address inputs of the memory device 7. From the memory cell of the memory device 7, the address of which is contained in the first and second groups of address inputs and control inputs of the storage device 7, the outputs of the operation entered in the cell during the manufacture of the controller are read at its outputs.

Реализация специальных операций над операндами, подаваемыми на первую и вторую группы адресных входов запоминающего устройства 7, таких как описанные ранее операции сложения, вычитания, умножения на константу, преобразования адресов системной шины 19 управления в адреса оперативной памяти 6, преобразования слов управления в коды и другие специальные операции, позволяет обеспечить выполнение подпрограмм в требуемых ограниченных интервалах времени, что необходимо для обеспечения процессов реального времени. При этом решается задача сокращения аппаратурных затрат, так как нет необходимости использовать в контроллере регистры для хранения слов состояний и управления, а хранение слов состояний и управления осуществляется в оперативной памяти 6, а также нет необходимости подсоединять к выходам регистров дополнительную логику, поскольку анализ состояний регистров производится на запоминающем устройстве 7 с последующим переходом на управляющие подпрограммы шифратора 11 управления. The implementation of special operations on operands supplied to the first and second groups of address inputs of the memory device 7, such as the operations of addition, subtraction, multiplication by a constant, converting the addresses of the control system bus 19 to the addresses of the RAM 6, converting control words to codes, and others special operations, allows to ensure the execution of routines in the required limited time intervals, which is necessary to ensure real-time processes. At the same time, the task of reducing hardware costs is solved, since there is no need to use registers in the controller to store state and control words, and state and control words are stored in RAM 6, and there is no need to connect additional logic to the register outputs, since the analysis of register states is performed on the storage device 7 with the subsequent transition to the control routines of the control encoder 11.

По шестой микрокоманде выходные сигналы с входов-выходов запоминающего устройства 7 пересылаются через второй из регистров 63 регистрового устройства 8, через входы данных интерфейса 1 на шину 17 данных контроллера. According to the sixth micro-command, the output signals from the inputs / outputs of the storage device 7 are sent through the second of the registers 63 of the register device 8, through the data inputs of the interface 1 to the controller data bus 17.

По четвертой микрокоманде подпрограммы записи первого слова состояний и управления сигналы этого слова с шины 17 данных подаются на первую группу адресных входов запоминающего устройства 7. На входы управления и вторую группу адресных входов запоминающего устройства 7 подается код операции анализа состояний битов первого слова состояний и управления. При выполнении этой операции на выходах состояний запоминающего устройства 7 формируются коды управляющей программы, которые дешифратором-преобразователем 72 начального адреса преобразуются в адрес пятой микрокоманды. According to the fourth micro-command of the subroutine for recording the first state word and control, the signals of this word from the data bus 17 are fed to the first group of address inputs of the memory device 7. The operation code for analyzing the states of the bits of the first state word and control is supplied to the control inputs and the second group of address inputs of the memory device 7. When this operation is performed, the control program codes are generated at the status outputs of the storage device 7, which are decoded by the decoder-converter 72 of the initial address and converted to the address of the fifth micro-command.

Возможны следующие подпрограммы, на которые управляющая программа переходит по результатам выполнения четвертой микрокоманды: Разрешение работы таймера живучести программного обеспечения, установка или выключение режима закольцовывания, программная инициализация, запрет или разрешение приема. The following subprograms are possible, which the control program switches to based on the results of the fourth micro-command execution: Enabling software survivability timer, setting or disabling the loopback mode, program initialization, prohibition or permission to receive.

По пятой микрокоманде разрешения работы таймера живучести программного обеспечения и установки или выключения режима закольцовывания первое слово состояний и управления записывается с первой группы адресных входов запоминающего устройства 7 через его входы-выходы в оперативную память 6. По пятой микрокоманде запрета или разрешения приема на вторую группу входов управления приемника 12 подается сигнал запрета приема при сброшенном бите 00 первого слова состояний и управления или сигнал разрешения приема при установленном бите 00 этого слова. При этом управляющая логика 100 формирует сигнал сброса, подает его на R-вход RS-триггера 94 и держит сигнал сброса от момента формирования сигнала запрещения приема до момента формирования сигнала разрешения приема. При этом уровень "0" на выходе RS-триггера сбрасывает счетчик 98 битов, что делает невозможным запись принимаемых данных в фифо 90 приема. According to the fifth micro-command to enable operation of the software survivability timer and to set the loopback mode on or off, the first state and control word is written from the first group of address inputs of the memory device 7 through its inputs and outputs into the main memory 6. According to the fifth micro-command to ban or allow reception to the second group of inputs control receiver 12 is fed a reception prohibition signal when bit 00 of the first word of states and control is reset, or a reception permission signal when bit 00 of this is set fishing. In this case, the control logic 100 generates a reset signal, supplies it to the R-input of the RS-flip-flop 94 and holds the reset signal from the moment of generation of the reception prohibition signal until the formation of the reception permission signal. In this case, the level "0" at the output of the RS-flip-flop resets the counter 98 bits, which makes it impossible to record the received data in FIFO 90 reception.

По шестой микрокоманде первое слово состояний и управления через запоминающее устройство 7 записывается в оперативную память 6. According to the sixth micro-command, the first word of states and control through the storage device 7 is recorded in RAM 6.

По пятой микрокоманде программной инициализации на входах-выходах запоминающего устройства 7 формируется константа ноль, которая записывается во второй из регистров регистрового устройства 8. По этой же микрокоманде по сигналам на третьей группе его входов контроллер 2 шины формирует сигнал готовности, подтверждающий окончание цикла записи, и по выходам шины выдает его на системную шину 19 управления. Этим контроллер оканчивает свое участие в режиме программной записи со стороны ЭВМ 21 первого слова состояния и управления. ЭВМ 21 не должна обращаться к контроллеру до конца выполнения программной инициализации. Далее контроллер производит модификацию битов ячеек памяти (установку или сброс), требуемую из условий его работы, в частности записывает константу ноль в ячейку первого слова состояний и управления и в ячейку второго слова состояний и управления, записывает из памяти 70 микрокоманд в оперативную память 6 слова физического адреса назначения, слово числа и слово номера. Адреса ячеек, в которых хранятся эти слова в оперативной памяти 6, считываются из памяти 70 микрокоманд через мультиплексор 69, через первый из регистров 63 на входы адреса оперативной памяти. According to the fifth micro-command of the software initialization, a constant zero is generated at the inputs / outputs of the memory device 7, which is recorded in the second register of the register device 8. Based on the same micro-command, the bus controller 2 generates a ready signal confirming the end of the write cycle on the signals of the third group of its inputs, and on the outputs of the bus issues it to the system bus 19 control. With this, the controller ends its participation in the program recording mode from the computer 21 of the first word of the state and control. Computer 21 should not contact the controller until the end of software initialization. Next, the controller modifies the bits of the memory cells (set or reset) required from the conditions of its operation, in particular, writes the constant zero to the cell of the first word of state and control and to the cell of the second word of state and control, writes 6 words from the memory of 70 microcommands to RAM destination physical address, word number and word number. The addresses of the cells in which these words are stored in the RAM 6 are read from the memory 70 of the microcommands via the multiplexer 69, through the first of the registers 63 to the inputs of the address of the RAM.

Во время инициализации контроллера на входах управления приоритетами контроллера 9 прерываний выставляется код текущего приоритета, не позволяющий прерывание подпрограммы инициализации во время ее выполнения. По окончании подпрограммы инициализации с шины 16 управления на вход инкремента сумматора 85 поступает сигнал нулевого уровня, на входы инструкций дешифратора 89 инструкций поступает код инструкций чтения адреса микрокоманды на выходы формирователя 73 адреса микрокоманды, после чего подпрограмма зацикливается на микрокоманде, поскольку ее адрес, не наращивается в сумматоре 85, по импульсам с входа синхронизации формирователя 73 адреса микрокоманды переписывается с выходов формирователя 73 адреса микрокоманды в регистр 84. Код текущего приоритета на входах управления приоритетами контроллера 9 прерываний устанавливается такой, чтобы позволить прерывания управляющей программы по сигналам входов запроса контроллера прерываний. During controller initialization, the priority priority code is set on the priority control inputs of the 9 interrupt controller, which does not allow the interruption of the initialization subroutine during its execution. At the end of the initialization subroutine, the control bus 16 receives a zero level signal to the input of the adder increment 85, the instructions for reading the address of the microcommand are sent to the inputs of the instructions of the decoder 89, and the outputs of the shaper 73 are micro addresses, after which the subprogram loops over the micro command because its address does not increase in the adder 85, according to the pulses from the synchronization input of the driver 73 of the micro command address is copied from the outputs of the driver 73 of the address of the micro command in register 84. Current prior code itet at the inputs of the priority control of the controller 9 interrupt is set so as to allow interruption of the control program for the input signals of the request controller interrupt.

Все управляющие подпрограммы режима программного обмена, кроме подпрограммы инициализации, завершаются возвратом на прерванные ими подпрограммы, для чего по последней микрокоманде подпрограмм из регистров 63, имеющих стековую организацию, выталкивается их содержимое, реверсивный счетчик 65 возвращает на вершину стековых регистров 63 данные из прерванной подпрограммы. По этой же микрокоманде производится выталкивание из стекла 86 через вторую группу входов мультиплексора 88 на его выходы адреса микрокоманды прерванной подпрограммы. По последней микрокоманде на системную шину 19 управления выдается сигнал подтверждения окончания цикла записи или чтения. All control subroutines of the program exchange mode, except for the initialization subroutine, are completed by returning to the subroutines interrupted by them, for which, according to the last microcommand of the subroutines from registers 63 having a stack organization, their contents are pushed out, the upstream counter 65 returns data from the interrupted subroutine to the top of the stack registers 63. The same microcommand is ejected from the glass 86 through the second group of inputs of the multiplexer 88 to its outputs the addresses of the microcommand of the interrupted subprogram. According to the last micro-command, a confirmation signal for the end of the write or read cycle is issued to the control system bus 19.

Максимальное число микрокоманд в управляющих подпрограммах режима программного обмена контроллера без учета подпрограммы инициализации равно одиннадцати. При времени выполнения одной микрокоманды 200 нс максимальное время выполнения контроллером подпрограм чтения и записи в режиме программного обмена составляет 2,2 мкс. Текущие приоритеты управляющих подпрограмм программного обмена не позволяют производить их прерывание со стороны других подпрограмм. The maximum number of microcommands in the control subroutines of the controller program exchange mode, excluding the initialization subroutine, is eleven. At a runtime of one microcommand of 200 ns, the maximum runtime of the controller for reading and writing subroutines in program exchange mode is 2.2 μs. The current priorities of the control exchange routines of the program exchange do not allow their interruption by other routines.

Подпрограмма таймера-задатчика необходима для решения задач, во-первых, распределения времени доступа к системной шине между ЭВМ 21 и контроллером, во-вторых, для вычисления программных таймеров контроллера. Подпрограмма таймера-задатчика реализуется следующим образом. The subroutine of the master timer is necessary for solving problems, firstly, the distribution of access time to the system bus between the computer 21 and the controller, and secondly, for calculating the software timer of the controller. The subroutine of the master timer is implemented as follows.

Счетчик-таймер 77 производит подсчет импульсного генератора 75. Дешифратор 78 выявляет состояние выходов счетчика-таймера 77, соответствующее прошествию определенного временного интервала после сброса последнего, например времени 51,2 мкс, по истечении которого с выхода дешифратора 78 на S-вход RS-триггера 79 поступает сигнал, устанавливающий на втором выходе шифратора 11 управления сигнал запроса внутренних прерываний, который поступает на вход запроса контроллера 9 прерываний. При наличии разрешающих уровней приоритетов на его входах управления приоритетами контроллер 9 прерываний на своих выходах формирует вектор внутренних прерываний подпрограммы таймера-задатчика, который под управлением сигнала с выхода управления контроллера 9 прерываний проходит на выходы мультиплексора 71, после чего начинается выборка первой микрокоманды подпрограммы таймера-задатчика. В начале выполнения подпрограммы на вторую группу входов управления передатчика 13 и на вторую группу входов управления приемника 12 поступают сигналы прекращаения прямого доступа к памяти, по которым приемник 12 и передатчик 13 прекращают поддержку режима прямого доступа к памяти, если он до этого выполняется. The counter-timer 77 counts the pulse generator 75. The decoder 78 detects the status of the outputs of the counter-timer 77, corresponding to the lapse of a certain time interval after resetting the latter, for example, 51.2 μs, after which from the output of the decoder 78 to the S-input of the RS-flip-flop 79, a signal is supplied that sets the internal interrupt request signal at the second output of the control encoder 11, which is input to the request of the interrupt controller 9. If there are permissive priority levels at its priority control inputs, the interrupt controller 9 at its outputs generates an internal interrupt vector of the master timer subroutine, which, under the control of the control output from the interrupt controller 9, passes to the outputs of the multiplexer 71, after which the first micro command of the timer subroutine setter. At the beginning of the execution of the subroutine, the second group of control inputs of the transmitter 13 and the second group of control inputs of the receiver 12 receive signals to stop direct memory access, by which the receiver 12 and transmitter 13 stop supporting the direct memory access mode, if it is already running.

В подпрограмме таймера-задатчика вычисляются значения таймера пакета, таймера маркера, таймера монитора, таймера живучести программного обеспечения. По результатам анализа второго слова состояний и управления, выполняемого на запоминающем устройстве 7, подпрограмма может завершаться переходом на подпрограммы обмена данными в режиме прямого доступа. The subroutine of the master timer calculates the values of the packet timer, marker timer, monitor timer, software survivability timer. According to the results of the analysis of the second word of states and control performed on the storage device 7, the subroutine can be completed by switching to the data exchange subroutines in direct access mode.

При выполнении подпрограммы таймера-задатчика сигналы с выходов счетчика-таймера 77 перезаписываются через мультиплексор 69 в регистровое устройство 8, а затем поступают на вторую группу адресных входов запоминающего устройства 7, на первую группу адресных входов которого считывают поочередно из ячеек оперативной памяти 6 слова таймера живучести программного обеспечения, таймера передачи, таймера маркера, таймера монитора, из которых вычитаются числа с выходов счетчика-таймера 77, и формируют сигналы разности на выходах запоминающего устройства 7. Если разность больше числа ноль, то она записывается в ячейку оперативной памяти 6, в которой хранилось вычитаемое. Если сигналы разности определяют число, меньшее числа ноль, то из этого следует наличие тайм-аута соответствующего таймера и на выходе переноса запоминающего устройства 7 вырабатывается сигнал выходного переноса, поступающий через мультиплексор 74 условий на вход условий формирователя 73 адреса микрокоманды. По сигналу входного переноса выполняются подпрограммы передачи пакета монитора, передачи маркера, инициализации ЭВМ. When the subroutine of the master timer is executed, the signals from the outputs of the counter-timer 77 are overwritten through the multiplexer 69 to the register device 8, and then they arrive at the second group of address inputs of the memory device 7, the first group of address inputs of which are read out from the memory cells 6 words of the survivability timer software, transmission timer, marker timer, monitor timer, from which the numbers from the outputs of the counter-timer 77 are subtracted, and the difference signals are generated at the outputs of the storage device 7. If the difference is greater than the number zero, then it is recorded in the memory cell 6, in which the subtracted was stored. If the difference signals determine a number less than the number zero, then this implies the presence of a timeout of the corresponding timer, and an output transfer signal is generated at the transfer output of the storage device 7 and supplied through the conditions multiplexer 74 to the input of the conditions of the driver of the micro-command address 73. At the input transfer signal, subroutines for transmitting the monitor package, marker transfer, and computer initialization are performed.

По сигналу входного переноса на входе условий и при наличии инструкции условного перехода на входах инструкций формирователя 73 адреса микрокоманды сигналы адреса программы таймера-задатчика поступают с шины 21 управления контроллера через входы адреса формирователя 73 адреса микрокоманды на его выходы. При отсутствии сигнала выходного переноса путем наращивания на сумматоре 85 на единицу адреса предыдущей микрокоманды производится переход на следующую микрокоманду, по которой выполняется анализ битов второго слова состояний и управления. Его считывают из оперативной памяти 6 на первую группу адресных входов запоминающего устройства 7, на выходах которого в зависимости от состояний битов второго слова состояний и управления формируют коды подпрограммы подготовки режима прямого доступа для чтения дескриптора буфера приема, если бит 01 второго слова состояний и управления установлен, а остальные биты сброшены, или подпрограммы чтения слова флага дескриптора буфера приема, если бит 01 и бит 04 установлены, или подпрограммы чтения других слов дескриптора буфера приема, если бит 04 установлен, а остальные биты сброшены. According to the input transfer signal at the input of conditions and if there is a conditional transition instruction at the inputs of the instructions of the micro-command address 73, the address signals of the timer-setter program are received from the controller control bus 21 through the address inputs of the micro-command address generator 73 to its outputs. In the absence of an output transfer signal, by incrementing on the adder 85 by the address unit of the previous micro-command, the transition to the next micro-command is performed, by which the bits of the second state and control word are analyzed. It is read from random access memory 6 to the first group of address inputs of memory device 7, the outputs of which, depending on the state of the bits of the second state and control word, generate codes for the direct access mode preparation routine for reading the receive buffer descriptor if bit 01 of the second state and control word is set and the remaining bits are cleared, or the routines for reading the flag word of the receive buffer descriptor if bit 01 and bit 04 are set, or the routines for reading the other words in the receive buffer descriptor if the bit 04 is set, and the remaining bits are reset.

Если бит 00 установлен, выполняется переход на подпрограмму подготовки режима прямого доступа для чтения дескриптора буфера передачи. Если бит 00 и бит 02 установлены, выполняется переход на подпрограмму чтения слова флага. Если бит 02 установлен, а остальные биты сброшены, производится подпрограмма пересылки из ЭВМ 21 в контроллер остальных слов дескриптора буфера передачи. If bit 00 is set, a transition is made to the direct access mode preparation routine for reading the transmit buffer descriptor. If bit 00 and bit 02 are set, a transition is made to the flag word read routine. If bit 02 is set, and the remaining bits are cleared, a subroutine is sent from the computer 21 to the controller for the remaining words of the descriptor for the transmission buffer.

Переход на подпрограмму подготовки режима прямого доступа по пересылке буфера приема производится, если бит 04 и бит 09 установлены. Если бит 09 установлен, а остальные биты сброшены, производится переход на подпрограмму пересылки данных из фифо 90 приема в буфер приема ЭВМ 21. Если биты 09 и 05 установлены, производится переход на подпрограмму подготовки пересылки дескриптора буфера передачи из контроллера в ЭВМ 21. Эта подпрограмма выполняется после того, как завершена пересылка данных из буфера передачи ЭВМ 21 в контроллер, выполнены модификации слов дескриптора и дескриптор с модифицированными битами должен быть возвращен в ЭВМ 21. The transition to the direct access preparation routine for sending the receive buffer is made if bit 04 and bit 09 are set. If bit 09 is set, and the remaining bits are cleared, a transition is made to the data transfer routine from FIFO reception 90 to the computer receive buffer 21. If bits 09 and 05 are set, a transition is made to the preparation routine for sending the transfer buffer descriptor from the controller to the computer 21. This subroutine is performed after the transfer of data from the computer 21 transfer buffer to the controller is completed, the descriptor words are modified and the descriptor with modified bits must be returned to the computer 21.

Переход на подпрограмму подготовки режима прямого доступа по пересылке буфера передачи производится, если бит 02 и бит 08 установлены. Если бит 08 установлен, а остальные биты сброшены, производится переход на подпрограмму пересылки данных из буфера передачи ЭВМ 21 в фифо 107 передачи. The transition to the direct access training routine for transferring the transmission buffer is performed if bit 02 and bit 08 are set. If bit 08 is set, and the remaining bits are cleared, a transition is made to the data transfer routine from the transmission buffer of the computer 21 to the transmission FIFO 107.

Если биты 08 и 06 установлены, то это означает, что завершена пересылка данных пакета из фифо 90 приема в буфер приема ЭВМ 21 и теперь контроллер должен переслать в ЭВМ 21 модифицированные слова дескриптора буфера приема. По анализу второго слова состояний и управления при установленных битах 08 и 06 контроллер переходит на подпрограмму подготовки режима прямого доступа по пересылке дескриптора буфера приема в ЭВМ 21. If bits 08 and 06 are set, this means that the transfer of packet data from FIFO reception 90 to the receive buffer of the computer 21 is completed, and now the controller must send the modified words to the receive buffer descriptor to the computer 21. By analyzing the second word of states and control, when bits 08 and 06 are set, the controller switches to the direct access mode preparation routine by sending the receive buffer descriptor to the computer 21.

Если бит 06 установлен, а остальные биты сброшены, контроллер переходит на выполнение подпрограммы пересылки дескриптора буфера приема в ЭВМ 21. Если бит 12 установлен, а остальные биты сброшены, производится переход на подпрограмму обработки установочного пакета. If bit 06 is set and the remaining bits are cleared, the controller proceeds to execute the subroutine for sending the receive buffer descriptor to the computer 21. If bit 12 is set and the remaining bits are cleared, the program is processed to the installation package.

Если все биты второго слова состояний и управления сброшены, то производится переход и зацикливание на микрокоманде, при исполнении которой на входах управления приоритетами контроллера 9 пррываний устанавливается значение сигналов текущего приоритета с наименьшим приоритетом, что позволяет выполнять внутренние прерывания по запросам на входах контроллера 9 прерываний. If all the bits of the second word of state and control are cleared, then a transition and looping is performed on a micro command, at the execution of which the value of the current priority signals with the lowest priority is set on the priority control inputs of the 9 interrupt controller, which allows internal interrupts to be performed upon requests at the interrupt controller 9 inputs.

Если при анализе второго слова состояний и управления переход на подпрограмму произведен по установленному биту 00, то в этом случае стартовый адрес дескриптора буфера передачи перегружается из оперативной памяти 6 в счетчик 3 адреса. Если переход произведен по установленному биту 00, то стартовый адрес дескриптора буфера приема перегружается из оперативной памяти 6 в счетчик 3 адреса. В обоих случаях в регистр 4 адреса загружаются сигналы суммы стартовых адресов и числа пять, что определяет адрес последнего слова дескриптора буфера. Операция сложения производится запоминающим устройством 7. Затем в случае пересылки буфера передачи устанавливатся бит 02 во втором слове состояний и управления, сбрасывается бит 04 в первом слове состояний и управления или устанавливается бит 04 в случае пересылки дескриптора буфера приема во втором слове состояний и управления и сбрасывается бит 05 в первом слове состояний и управления , после чего контроллер 2 шины на системной шине 19 управления выставляет сигнал требования прямого доступа к памяти ЭВМ 21, подпрограмма переходит в режим зацикливания, а на входах приоритета контроллера 9 прерываний устанавливается текущий приоритет, позволяющий прерывать программу. If, during the analysis of the second word of states and control, the transition to the subroutine is made using the set bit 00, then in this case the start address of the descriptor of the transfer buffer is reloaded from the RAM 6 into the address counter 3. If the transition is made according to the set bit 00, then the start address of the receive buffer descriptor is reloaded from RAM 6 to address counter 3. In both cases, signals of the sum of start addresses and the number five are loaded into the address register 4, which determines the address of the last word of the buffer descriptor. The addition operation is performed by the storage device 7. Then, in case of transfer of the transmission buffer, bit 02 in the second state and control word is set, bit 04 in the first state and control word is reset, or bit 04 is set in the case of sending the receive buffer descriptor in the second state and control word and is reset bit 05 in the first word of states and control, after which the bus controller 2 on the control system bus 19 sets a signal for direct access to the computer memory 21, the subprogram goes into cycling, and on the priority inputs of the controller 9 interruptions, the current priority is set, allowing you to interrupt the program.

Если прерывание происходит по сигналам выходов счетчика-таймера 77 и вновь осуществляется переход на подпрограмму таймера-задатчика, то вновь производится анализ второго слова состояний и управления и при установленных бите 00 и бите 02 или установленных бите 01 и бите 04, извещающих о том, что выставлен сигнал требования прямого доступа к памяти, осуществляется вновь переход на подпрограмму зацикливания с низким текущим приоритетом, позволяющим выполнение внутренних прерываний. If the interruption occurs according to the outputs of the counter-timer 77 and the transition to the subroutine of the master timer is performed again, then the second word of states and control is analyzed again and when bit 00 and bit 02 are set or bit 01 and bit 04 are set, indicating that a direct memory access request signal is set, the transition to the looping subroutine is carried out again with a low current priority, which allows the execution of internal interrupts.

Наличие на системной шине 19 управления контроллера сигнала подтверждения прямого доступа, выданного ЭВМ 21, приводит к установке на системной шине 19 управления со стороны входов-выходов контроллера 2 шины сигналов занятости шины и сигналов, устанавливающих режим "чтение - модификация - запись", а также приводит к генерации на выходах контроллера 2 шины сигналов запросов прерываний, вызывающих формирование на выходах контроллера 9 прерываний кода подпрограммы чтение - модификация - запись в прямом доступе к памяти, при выполнении которой сбрасывается бит 00 второго слова состояний и управления при пересылке дескриптора буфера приема или сбрасывается бит 01 при пересылке дескриптора буфера передачи, производится цикл "чтение - модификация - запись" слова флага дескриптора. В этом цикле считывается слово флага дескриптора и, если значение битов 15 и 14 "1" и "0", то бит 14 устанавливается и слово флага с модернизированным битом 14 перезаписывается в память ЭВМ 21 по прежнему адресу. Счетчик 3 адреса наращивается на две единицы. После этого на входах управления приоритетами контроллера 9 прерываний устанавливается текущий приоритет, позволяющий производить прерывания подпрограммам таким, как инициализация контроллера, фильтрация пакетов по адресам назначения, подпрограмма таймера-задатчика. Установка низкого текущего приоритета выполняется в контроллере во всех подпрограммах, реализующих прямой доступ к памяти, после завершения каждого из циклов обмена словом. The presence of a direct access confirmation signal on the system bus 19 of the controller, issued by the computer 21, leads to the installation on the system bus 19 of the control from the inputs / outputs of the controller 2 of the bus 2 bus busy signals and signals that establish the mode of "read - modify - write", and leads to the generation of interrupt request signals at the outputs of the controller 2 of the bus, causing the formation of 9 interrupts of the subroutine code on the outputs of the controller; read - modify - write in direct memory access, during which ik- 00 bits of the second word states and the control descriptor when sending or receiving buffer 01 is reset bit when sending descriptor transmission buffer is performed cycle "reading - modification - writing" Descriptor word flag. In this cycle, the descriptor flag word is read and, if the value of bits 15 and 14 is “1” and “0”, bit 14 is set and the flag word with the upgraded bit 14 is overwritten in the computer memory 21 at the same address. Counter 3 addresses is incremented by two units. After that, the current priority is set on the priority control inputs of the controller 9 interrupts, which allows interrupting subroutines such as initializing the controller, filtering packets by destination addresses, subroutine timer. Setting the low current priority is performed in the controller in all routines that implement direct memory access after the completion of each of the word exchange cycles.

Если подпрограмма не прерывается, на системной шине 19 управления со стороны контроллера 2 шины устанавливается сигнал "Чтение". На шину 18 адреса с разрядных выходов счетчика 3 адреса выставляется адрес следующего слова дескриптора. ЭВМ 21 выставляет данные на шину 17 данных и выдает сигнал "Готовность". На входы адреса оперативной памяти 6 через первый из регистров 63 из памяти 70 микрокоманд подается адрес ячейки оперативной памяти 6, в которую записывается слово с шины 17 данных, после чего контроллер аналогично считывает остальные слова дескриптора. Перед тем, как выставляется очередной цикл чтения слова, на входе условий формирователя 73 адреса микрокоманды проверяется сигнал с выхода "Равно" схемы 5 сравнения, устанавливающийся в единицу при совпадении кодов на разрядных выходах счетчика 3 адреса и выходах регистра 4 адреса. If the subroutine is not interrupted, the Read signal is set on the control system bus 19 from the side of the bus controller 2. On the address bus 18 from the bit outputs of the address counter 3, the address of the next descriptor word is set. The computer 21 puts the data on the data bus 17 and generates a signal "Ready". The addresses of the RAM 6 through the first of the registers 63 from the memory 70 of the microcommands are the address of the cell memory 6, in which the word is written from the data bus 17, after which the controller similarly reads the remaining words of the descriptor. Before the next cycle of reading the word is set, at the input of the conditions of the shaper 73 of the micro-command address, the signal from the output of "Equal" of the comparison circuit 5 is checked, which is set to unity when the codes on the bit outputs of the counter 3 of the address and the outputs of register 4 of the address match.

Если между циклами обмена словами происходит прерывание подпрограммы, то в очередном цикле подпрограммы таймера-задатчика по анализу второго слова состояний и управления при установленном бите 04 происходит возврат на подпрограмму обмена словами в прямом доступе. При этом контроллер устанавливает бит 10 во втором слове состояний и управления и выставляет сигнал требования прямого доступа, а затем переходит к зацикливанию на микрокоманде с низким текущим приоритетом. С предоставлением прямого доступа к памяти контроллер анализирует второе слово состояний и управления и по установленным битам 04 и 10 выполняется переход на подпрограмму обмена остальными словами дескриптора, где сбрасывается бит 10. If the interruption of the subroutine occurs between word exchange cycles, then in the next cycle of the subroutine of the timer-setter for analysis of the second word of state and control, when bit 04 is set, a direct access to the word exchange subroutine is returned. In this case, the controller sets bit 10 in the second state and control word and sets the direct access demand signal, and then proceeds to loop on the micro command with a low current priority. With the provision of direct access to the memory, the controller analyzes the second word of states and control, and according to the set bits 04 and 10, a transition is made to the subroutine for exchanging the remaining words of the descriptor, where bit 10 is reset.

Аналогично производятся прерывание и возвращение к прерванной подпрограмме в остальных режимах обмена в прямом доступе к памяти, возврат к установленным битам 05 и 10, битам 08 и 10, 09 и 10. Установленный бит 10 означает, что идет ожидание предоставления прямого доступа к памяти со стороны ЭВМ 21. Similarly, interruption and return to the interrupted subroutine are performed in the remaining exchange modes in direct access to memory, return to the set bits 05 and 10, bits 08 and 10, 09 and 10. The set bit 10 means that there is a wait for direct access to memory from Computer 21.

При наличии единицы на выходе "Равно" схемы 5 сравнения сигнал "Чтение" не генерируется, поскольку все слова дескриптора адреса перезаписаны в оперативную память 6. Во втором слове состояний и управления выполняется при этом установка бита 08, если пересылался дескриптор буфера передачи, или бита 09, если пересылался дескриптор буфера приема, после чего контроллер 2 шины снимает сигнал занятости с системной шины 19 управления. Этим завершается режим прямого доступа к памяти ЭВМ 21 по пересылке дескрипторов буферов в контроллер и программа переходит в режим зацикливания с низким текущим приоритетом. Дескриптор буфера приема и дескриптор буфера передачи хранятся в разных зонах оперативной памяти 6. If there is a unit at the output of "Equal to" the comparison circuit 5, the Read signal is not generated, since all words of the address descriptor are overwritten into RAM 6. In the second state and control word, bit 08 is set if the transmit buffer descriptor, or bit 09, if the descriptor of the receive buffer was sent, after which the bus controller 2 removes the busy signal from the control system bus 19. This completes the mode of direct access to the computer memory 21 by sending buffer descriptors to the controller and the program enters the looping mode with a low current priority. The descriptor of the receive buffer and the descriptor of the transmit buffer are stored in different areas of the RAM 6.

При считывании из ЭВМ 21 второго слова дескриптора во время выполнения подпрограммы пересылки дескриптора буфера передачи контроллер анализирует бит 12 байта состояний. Если этот бит установлен, то устанавливается бит 12 во втором слове состояний и управления, что говорит о наличии установочного пакета в буфере передачи. Если в подпрограмме таймера-задатчика при анализе второго слова состояний и управления обнаруживатся, что установлены биты 02 и 08, то производится переход на подпрограмму подготовки пересылки содержимого буфера передачи в передатчик 13. При выполнении этой подпрограммы из оперативной памяти 6 в счетчик 3 адреса переписываются младшие и старшие биты стартового адреса буфера передачи, которые содержатся во втором и третьем словах дескриптора буфера передачи. Затем значение стартового адреса буфера передачи суммируется со значением слова длины буфера, хранящимся в четвертом слове дескриптора буфера. Таким образом, вычисляется конечный адрес буфера передачи и его значение пересылается в регистр 4 адреса. Сбрасывается бит 02 и устанавливается бит 10 во втором слове состояний и управления. When reading the second descriptor word from the computer 21 during the execution of the transfer buffer descriptor transfer routine, the controller analyzes the 12 bit of the status byte. If this bit is set, then bit 12 is set in the second state and control word, which indicates the presence of the installation package in the transmission buffer. If in the subroutine of the master timer, when analyzing the second word of states and control, it is found that bits 02 and 08 are set, then a transition is made to the subroutine for preparing the transfer of the contents of the transmission buffer to transmitter 13. When this subroutine is executed, the lower addresses are written from RAM 6 to counter 3 and the high bits of the start address of the transmission buffer, which are contained in the second and third words of the descriptor of the transmission buffer. Then, the value of the start address of the transmission buffer is summed with the word value of the buffer length stored in the fourth word of the buffer descriptor. Thus, the final address of the transmission buffer is calculated and its value is sent to the address register 4. Bit 02 is reset and bit 10 is set in the second state and control word.

На третью группу входов управления контроллера 2 шины подаются сигналы инициализации режима прямого доступа к памяти. При этом контроллер 2 шины выдает на системную шину 19 управления сигнал требования прямого доступа и программа переводится в режим зацикливания с низким текущим приоритетом. The third group of control inputs of the controller 2 of the bus signals the initialization of the direct access to memory mode. In this case, the bus controller 2 issues a direct access demand signal to the control system bus 19 and the program is put into a looping mode with a low current priority.

Если в подпрограмме таймера-задатчика при анализе второго слова состояний и управления обнаруживается, что установлены бит 08 и бит 10, то подпрограмма переводится в режим зацикливания с низким текущим приоритетом. If in the subroutine of the master timer, when analyzing the second state and control word, it is detected that bit 08 and bit 10 are set, then the subroutine is put into a looping mode with a low current priority.

При наличии на системной шине 19 управления сигнала подтверждения прямого доступа контроллер 2 шины выдает на третью группу входов запросов контроллера 9 прерываний сигнал запроса прерываний по чтению или по записи в режиме прямого доступа и производится переход на подпрограмму, при выполнении которой сбрасывается бит 10 второго слова состояний и управления. На третью группу входов управляющей логики 113 подаются сигналы перевода передатчика 13 в режим поддержки прямого доступа к памяти. Контроллером 2 шины на системной шине 19 управления устанавливаются сигнал занятости шины и сигнал "Чтение". На шину 18 адреса подаются сигналы адреса с разрядных выходов счетчика 3 адреса. If there is a direct access confirmation signal on the control bus 19, the bus controller 2 issues a read or write interrupt request signal to the third group of controller interrupt requests 9 for direct access and switches to a subroutine, during which bit 10 of the second state word is reset and management. The third group of inputs of the control logic 113 is used to transfer the transmitter 13 to the support mode of direct access to memory. The bus controller 2 on the control system bus 19 sets the bus busy signal and the Read signal. The address bus 18 is supplied with address signals from the bit outputs of the address counter 3.

При наличии сигнала "Готовность" на системной шине 19 управления, которым ЭВМ 21 сопровождает установку данных на шину 17 данных, на выходах управления контроллера 2 шины формируются сигналы, по которым слово данных пересылается с шины 17 данных через выходы интерфейса 1 на входы передатчика 13. If there is a signal "Ready" on the control system bus 19, which the computer 21 accompanies the installation of data on the data bus 17, signals are generated at the control outputs of the bus controller 2, by which the data word is sent from the data bus 17 through the outputs of the interface 1 to the inputs of the transmitter 13.

Контроллер обслуживает несколько процессов реального времени. В их число входит, например, режим программного обмена между ЭВМ 21 и оперативной памятью 6. В процессе обмена ЭВМ 21 записывает в контроллер или читает из него данные, обращаясь к нему по нескольким адресам, выставляемым на шину 18 адреса. Контроллер при этом пересылает данные с шины 17 данных в оперативную память 6 в режиме записи или из оперативной памяти 6 на шину 17 данных в режиме чтения. The controller serves several real-time processes. These include, for example, the mode of program exchange between the computer 21 and the RAM 6. During the exchange, the computer 21 writes to or reads data from the controller, accessing it at several addresses set on the address bus 18. The controller at the same time sends the data from the data bus 17 to the RAM 6 in the write mode or from the RAM 6 to the data bus 17 in the read mode.

Процессом реального времени является обмен в режиме прямого доступа к памяти ЭВМ 21, когда контроллер, становясь активным, на системной шине ЭВМ 21 в режимах чтения и записи выполняет обмен данными между ЭВМ 21 и ним. The real-time process is the exchange in direct access to the memory of the computer 21, when the controller, becoming active, on the system bus of the computer 21 in the read and write modes performs data exchange between the computer 21 and it.

Процессом реального времени является процесс распознавания адресов назначений пакетов, принимаемых приемником 12, который должен с учетом других процессов реального времени быть завершен до окончания приема самого короткого пакета. В частности, при реализации стандарта IEEE802.3 время передачи наиболее короткого пакета равно 51,2 мкс. The real-time process is the process of recognizing destination addresses of packets received by the receiver 12, which should be completed taking into account other real-time processes before receiving the shortest packet. In particular, when implementing the IEEE802.3 standard, the transmission time of the shortest packet is 51.2 μs.

Процессами реального времени являются процессы вычисления программных таймеров, с помощью которых распределяется время по захвату системной шины между ЭВМ 21 и контроллером (таймер-задатчик) или определяется время, когда контроллер может начинать передачу пакетов в канал 24 связи (таймер пакета, таймер манитора, таймер маркера - таймеры, определяющие множественный доступ в канал 24 связи). Перечисленные процессы выполняются с разделением времени и с учетом их приоритетности. Разделением времени выполнения процессов с учетом их приоритетности управляет контроллер 9 прерываний. Real-time processes are software timer calculation processes, which distribute the time for capturing the system bus between the computer 21 and the controller (timer-setter) or determine the time when the controller can start transmitting packets to the communication channel 24 (packet timer, timer of the manipulator, timer tokens - timers determining multiple access to the communication channel 24). The listed processes are performed with time sharing and taking into account their priority. The separation of the execution time of processes, taking into account their priority, is controlled by the controller 9 interrupts.

В качестве примера контроллер реализует интервально-маркерный метод множественного доступа к каналу 24 связи. Канал 24 связи может быть выполнен с использованием радиочастотного кабеля, в который через некоторые промежутки его длины подключены к линиям 23 входы данных и по линиям 22 выходы контроллера. Обмен данными по каналу 24 связи производится пакетами. As an example, the controller implements the interval-marker method of multiple access to the communication channel 24. The communication channel 24 can be performed using a radio frequency cable, into which, at some intervals of its length, data inputs and controller outputs are connected to lines 23. Data exchange on the communication channel 24 is carried out in packets.

Интервально-маркерный метод доступа является детерминированным, т. е. методом доступа, гарантирующим доставку пакетов в конечные интервалы времени. Передача пакетов в канал 24 связи контроллерами 20 производится в порядке очередности. Очередность передач пакетов определяется номером контроллера 20 (НУ), заданным ЭВМ 21. Для реализации метода контроллер программно вычисляет три таймера: таймер маркера, таймер монитора и таймер передач. Для нахождения своей очереди на передачу пакета контроллер ведет программный таймер передач, по достижении времени тайм-аута (ТАП) которого контроллер имеет право начать передачу пакета в канал 24 связи в интервале времени Т. В общем случае время передачи пакета может превышать интервал времени Т, отведенный под начало передачи пакета. По окончании интервала Т контроллер не имеет права начинать передачу пакета, поскольку следующий интервал времени Т отведен под начало передачи пакета другого контроллера 20. При подключении к каналу 24 связи числа NГ контроллеров 20 для организации очереди на передачу пакетов от всех устройств сети необходимо NГ интервалов времени Т. The interval-marker access method is a deterministic, that is, an access method that guarantees delivery of packets at finite time intervals. The transmission of packets to the communication channel 24 by the controllers 20 is carried out in order of priority. The sequence of packet transfers is determined by the controller number 20 (NU) specified by the computer 21. To implement the method, the controller programmatically calculates three timers: a marker timer, a monitor timer, and a transmission timer. To find its turn to transmit a packet, the controller maintains a software transmission timer, upon reaching the timeout (TAP) time of which the controller has the right to start transmitting the packet to the communication channel 24 in the time interval T. In general, the transmission time of the packet may exceed the time interval T, reserved for the beginning of the transmission of the packet. At the end of the interval T, the controller does not have the right to start transmitting the packet, since the next time interval T is reserved for the start of the transmission of the packet of another controller 20. When connecting the number of NG controllers 20 to the communication channel 24, NG time intervals are necessary for queuing for packet transmission from all network devices T.

При передаче пакета каким-либо из контроллеров 20 остальные, обнаружив сигналы передач в канале 24 связи, должны принять из передаваемого пакета слово номера контроллера (NУП), ведущего передачу, и установить свои таймеры передач пакетов на значение
ТП= Т(NУП+1).
When a packet is transmitted by any of the controllers 20, the others, upon detecting the transmission signals in the communication channel 24, must receive from the transmitted packet the word of the controller number (NUP) that is transmitting, and set their packet transmission timers to
TP = T (NUP + 1).

По окончании сигнала передачи пакета в канале 24 связи контроллеры должны продолжить отсчет времени своих таймеров передач, начиная от значения Т(NУП+1). At the end of the packet transmission signal in the communication channel 24, the controllers must continue the countdown of their transmission timers, starting from the value of T (NUP + 1).

Тайм-ауты таймеров передач определяются выражением ТАП= ТNУ, где NУ - номер контроллера, вычисляющего тайм-аут таймера передачи. Transmission timers timeouts are determined by the expression TAP = TNU, where NU is the number of the controller that calculates the transmission timer timeout.

При установке таймеров передач на значение
ТП= Т(NУП+1), контроллеры, номера которых меньше значения NУП+1, не могут начать передачу пакетов, поскольку тайм-ауты их таймеров передач уже истекли. Передачи могут начать только контроллеры с номерами NУ, расположенными на отрезке
[NУП+1, NГ] , где NГ - граничное время для таймеров передач всех устройств.
When setting gear timers to
TP = T (NUP + 1), controllers whose numbers are less than NUP + 1 cannot start the transmission of packets, because the timeouts of their transmission timers have already expired. Only controllers with NU numbers located on a segment can start transfers
[NUP + 1, NG], where NG is the boundary time for the transmission timers of all devices.

В отрезке времени
[(NГ+1)Т, (NГ+2)Т] должен быть передан пакет станции-монитора. Пакет станции-монитора содержит в поле номера контроллера число ноль. Это дет возможность за передачей пакета станции-монитора начать передачу пакета контроллеру с первым номером, поскольку таймеры передач всех контроллеров установлены на значение ТП= Т. Таким образом, все контроллеры по очереди имеют доступ в канал 24 связи. Гарантированное время доступа в канал 24 связи для конкретного контроллера определяется суммой произведения Т(NГ+2) и произведения времени передачи пакета максимальной длины на количество контроллеров, подключенных к каналу 24 связи.
In the time span
[(NG + 1) T, (NG + 2) T] the packet of the monitor station should be transmitted. The monitor station package contains the number zero in the controller number field. This makes it possible for the packet to be transmitted to the monitor station to begin transmitting the packet to the controller with the first number, since the transmission timers of all the controllers are set to TP = T. Thus, all the controllers in turn have access to the communication channel 24. The guaranteed access time to the communication channel 24 for a particular controller is determined by the sum of the product T (NG + 2) and the product of the maximum packet transmission time by the number of controllers connected to the communication channel 24.

Для защиты канала 24 связи от конфликтных ситуаций передачи пакетов могут быть начаты только тогда, когда контроллер засинхронизируется в канале 24 связи. Начало вхождения в режим синхронизации определяется сигналом разрешения приема, исходящим от ЭВМ 21 (бит 00 слова состояний и управления установлен). С этого момента контроллер ведет отсчет времени программным таймером маркера, установив его тайм-аут (ТАМ) на значение
ТАМ= (NГ+NУ+N)T, где N - константа, целое число больше единицы.
To protect the communication channel 24 from conflict situations, packet transfers can only be started when the controller is synchronized in the communication channel 24. The start of entering the synchronization mode is determined by the reception permission signal coming from the computer 21 (bit 00 of the status and control word is set). From this moment, the controller counts the time with the software timer of the marker, setting its timeout (TAM) to
TAM = (NГ + NУ + N) T, where N is a constant, an integer is greater than one.

Всякая передача по каналу 24 связи должна обнулять таймеры маркера контроллеров. Если по истечении времени ТАМ в канале 24 связи нет сигналов передач других контроллеров 20, то контроллер в отрезке времени
[(NT+NУ+N)T, (NГ+NУ+1)T] должен начать передачу маркера, после чего он начинает отсчет времени таймера монитора, тайм-аут которого устанавливается на значение
ТАМОН= NУТ, где NУ - номер данного контроллера.
Any transmission over communication channel 24 should reset the token timers of the controllers. If after the TAM time in the communication channel 24 there are no transmission signals of other controllers 20, then the controller in the time interval
[(NT + NU + N) T, (NG + NU + 1) T] should start the transfer of the token, after which it starts the countdown of the monitor timer, the timeout of which is set to
TAMON = NUT, where NУ is the number of this controller.

Если до истечения тайм-аута таймера монитора выполнена передача пакета монитора контроллером с меньшим номером NУ, то передача пакета монитора не выполняется. По истечении тайм-аута таймера монитора контроллер должен начать передачу пакета-монитора с установленным битом 14 в поле управления пакета. If, before the monitor timer expires, the monitor packet is transmitted by the controller with the lower NU number, then the monitor packet is not transmitted. After the monitor timer timeout expires, the controller should begin transmitting the monitor packet with bit 14 set in the packet control field.

После передачи пакета монитора контроллер начинает вновь отсчет времени таймером монитора, установив его тайм-аут на значение
ТАМОН= (NГ+1)Т.
After transmitting the monitor package, the controller starts counting down again with the monitor timer, setting its timeout to
TAMON = (NG + 1) T.

По истечении тайм-аута монитора со значением ТАМОН= (NГ+1)Т контроллер должен передать пакет монитора с установленным битом 13 в поле управления пакета, после чего он становится монитором в локальной вычислительной сети и постоянно передает пакеты монитора по истечении тайм-аута монитора, равного (NГ+1)Т. After the monitor timeout expires with the value TAMON = (NG + 1) T, the controller must transfer the monitor packet with bit 13 set to the packet control field, after which it becomes a monitor on the local area network and constantly transmits monitor packets after the monitor timeout equal to (NG + 1) T.

Если контроллер не смог передать маркер по причине того, что таймер маркера был сброшен передачей другого контроллера, то по окончании сигнала передач в канале 24 связи контроллер должен начинать отсчет времени таймером маркера, установленным на тайм-аут:
ТАМ= (NГ+NУ+N)T.
If the controller could not transmit the marker due to the fact that the marker timer was reset by another controller, then at the end of the transmission signal in the communication channel 24, the controller should begin the countdown with the marker timer set to timeout:
TAM = (NG + NU + N) T.

Если контроллер обнаруживает передачу пакета монитора с установленным битом в течение времени ТАП, то разрешаются передачи пакетов в канал 24 связи по истечении тайм-аута таймера передач, значение которого должно быть установлено на значение
ТАП= NУТ.
If the controller detects the transmission of the monitor packet with the bit set during the TAP time, then the transmission of packets to the communication channel 24 after the transmission timer has timed out, the value of which must be set to
TAP = NUT.

Устройство-монитор имеет право на передачу пакетов данных и должно устанавливать тайм-аут своего таймера передач на значение ТАП= NУТ. The monitor device has the right to transmit data packets and must set the timeout of its transmission timer to the value TAP = NUT.

Для уменьшения времени доступа в канал 24 связи интервал времени Т должен быть минимальным, но он не может быть меньше суммы удвоенного времени распространения сигнала по кабелю канала 24 связи и времени реакции контроллера, необходимого для организации передач "своего" пакета по окончании передачи предыдущего "чужого" пакета, плюс межкадровый интервал - время, в течение которого передачи запрещаются для обеспечения затухания сигнала в кабеле после передачи. Так, если удвоенное время распространения сигнала по кабелю равно 51,2 мкс, межкадровый интервал равен 9,6 мкс, а время реакции контроллера не превышает 53 мкс, то интервал времени Т, равный 153 мкс, может удовлетворять предъявленному требованию. To reduce the access time to the communication channel 24, the time interval T should be minimal, but it cannot be less than the sum of the doubled signal propagation time on the cable of the communication channel 24 and the controller reaction time necessary for organizing the transmission of the “own” packet at the end of the transmission of the previous “alien” "packet, plus frame interval - the time during which transmissions are prohibited to ensure attenuation of the signal in the cable after transmission. So, if the doubled signal propagation time through the cable is 51.2 μs, the inter-frame interval is 9.6 μs, and the controller reaction time does not exceed 53 μs, then the time interval T equal to 153 μs can satisfy the presented requirement.

Для установки таймера монитора и таймера передач пакетов контроллер во время передач пакетов по кабелю производит операцию умножения чисел NУП+1 на интервал времени Т= 153 мкс. Полученное в результате операции произведение вычитается из значения тайм-аута монитора, а также из значения тайм-аута передачи. Результаты операции вычитания заносятся в ячейку таймера монитора и ячейку таймера передач запоминающего устройства 7. To set the monitor timer and the packet transmission timer, the controller, during cable transmission, performs the operation of multiplying NUP + 1 numbers by the time interval T = 153 μs. The product resulting from the operation is subtracted from the monitor timeout value, as well as from the transmission timeout value. The results of the subtraction operation are recorded in the timer cell of the monitor and the timer cell of the transmission memory device 7.

Для вычисления таймеров из ячейки таймера монитора и ячейки таймера передач вычитают числа, равные последовательным отрезкам текущего времени, до достижения нулевого результата в одном из таймеров. To calculate timers, the numbers equal to consecutive segments of the current time are subtracted from the monitor timer cell and the transmission timer cell until a zero result is achieved in one of the timers.

Начало отсчета первого отрезка времени производится от конца передачи очередного пакета в кабеле. Нулевой или отрицательный результат означает достижение тайм-аута соответствующего таймера. The reference point of the first time interval is made from the end of the transmission of the next packet in the cable. A zero or negative result means that the corresponding timer has timed out.

Для обеспечения необходимого времени реакции контроллера операция умножения должна выполняться в возможно короткое время, для чего реализуется нестандартный прием выполнения операции. Для выполнения операции умножения множимое преобразуют так, как описано далее, и в виде двоичных сигналов подают на первую и вторую группы адресных входов запоминающего устройства 7, на входы управления которого подают код операции. Из ячеек запоминающего устройства 7 считывают результат операции на выходы запоминающего устройства 7. Множитель (число Т= 153) в операции умножения присутствует неявно. To ensure the necessary reaction time of the controller, the multiplication operation should be performed as soon as possible, for which a non-standard method of performing the operation is implemented. To perform the multiplication operation, the multiplicand is transformed as described below, and in the form of binary signals are supplied to the first and second groups of address inputs of the storage device 7, to the control inputs of which an operation code is supplied. From the cells of the storage device 7, the result of the operation on the outputs of the storage device 7 is read. The multiplier (number T = 153) is implicitly present in the multiplication operation.

Слова вычисляемых программных таймеров и слова значений тайм-аутов таймеров хранятся в оперативной памяти 6. Эти слова читаются или записываются после установки на входах управления оперативной памяти 6 сигналов управления чтением или записью и установки на входах адреса оперативной памяти 6 сигналов констант с второй группы выходов памяти 70 мирокоманд через первый из регистров 63, через первую группу выходов регистрового устройства 8. The words of the calculated program timers and the words of the timeout values of the timers are stored in RAM 6. These words are read or written after installing 6 control signals for reading or writing at the inputs of the control memory and setting 6 signals of constants from the second group of memory outputs at the inputs of the RAM address 70 micro-commands through the first of the registers 63, through the first group of outputs of the register device 8.

Вычисление таймеров выполняют в подпрограмме, на которую переходят по сигналу запроса прерываний с выхода RS-триггера 79. Запрос прерываний формируется по достижении счетчиком-таймером 77 своего тайм-аута. Тайм-аут определяется дешифратором 78, с выхода которого поступает на S-вход RS-триггера 79 сигнал, устанавливающий на выходе RS-триггера 79 сигнал запроса прерываний. The calculation of the timers is performed in the subroutine, which is transferred by the interrupt request signal from the output of the RS-flip-flop 79. The interrupt request is generated when the counter-timer 77 reaches its timeout. The timeout is determined by the decoder 78, from the output of which a signal is supplied to the S-input of the RS-flip-flop 79, which sets an interrupt request signal at the output of the RS-flip-79.

По сигналу запроса прерываний контроллер 9 прерываний на своих выходах формирует вектор прерываний, а на выходе управления - сигнал управления, по которому мультиплексор 71 пропускает на входы адреса памяти 70 микрокоманд вектор прерываний. Далее по микрокомандам из памяти 70 микрокоманд выполняются операции, в ходе которых из содержимого таймеров вычитается значение времени, сформированное на выходах счетчика-таймера 77, для чего сигналы с выходов счетчика-таймера 77 пересылаются через мультиплексор 69 в регистровое устройство 8 и далее на вторую группу адресных входов запоминающего устройства 7, на первую группу адресных входов которого считываются слова таймеров из оперативной памяти 6. Запоминающим устройством 7 вычисляется разность значений сигналов на первой и второй группах его адресных входов. При получении отрицательной разности формируется сигнал переноса на выходе переноса запоминающего устройства 7, по которому определяют достижение таймеров своего тайм-аута. Сигнал переноса подается через мультиплексор 74 условий на вход условий формирователя 73 адреса микрокоманды, который с учетом сигнала на входе условий формирует начальный адрес программы, управляющей передачей маркера, передачей пакета монитора, передачей пакета данных или переустановкой таймеров. According to the interrupt request signal, the interrupt controller 9 generates an interrupt vector at its outputs, and a control signal at the control output, by which the multiplexer 71 passes the interrupt vector to the inputs of the memory address 70 of the microcommands. Then, operations are performed on microcommands from the memory 70 microcommands, during which the time value generated at the outputs of the counter-timer 77 is subtracted from the contents of the timers, for which the signals from the outputs of the counter-timer 77 are sent through the multiplexer 69 to the register device 8 and then to the second group address inputs of the storage device 7, the first group of address inputs of which the words of the timers are read from the RAM 6. The memory device 7 calculates the difference between the values of the signals on the first and second ppah its address inputs. Upon receipt of a negative difference, a transfer signal is generated at the transfer output of the storage device 7, which determines the achievement of the timeout timers. The transfer signal is supplied through the conditions multiplexer 74 to the input of the conditions of the micro-command address generator 73, which, taking into account the signal at the input of the conditions, generates the starting address of the program that controls the transfer of the marker, the transmission of the monitor packet, the transmission of the data packet or the reset of the timers.

Счетчик-таймер 77 после считывания с его выходов сигналов должен быть обнулен по входу сброса, после чего он продолжает счет импульсов с выхода генератора 75. Counter-timer 77, after reading signals from its outputs, should be reset to zero at the reset input, after which it continues to count pulses from the output of the generator 75.

Номер контроллера, ведущего передачу пакета, необходимый для установки значения таймера передач так же, как и адрес назначения пакета, считывается из фифо 90 приема через мультиплексор 91, через входы-выходы приемника 12 на внутреннюю шину 15. Это происходит во время приема пакета из канала 24 связи через вход данных приемника 12. The number of the controller that transmits the packet, which is necessary to set the value of the timer for transmissions, as well as the destination address of the packet, is read from the fifo 90 of the reception through the multiplexer 91, through the inputs / outputs of the receiver 12 to the internal bus 15. This occurs while receiving the packet from the channel 24 communication through the data input of the receiver 12.

Во время приема пакета последовательный поток данных, закодированных в манчестерский код, поступает на вход декодера 96. На выходе декодера 96 формируется последовательный код данных без возвращения к нулю, сопровождаемый тактовыми синхроимпульсами на выходе синхронизации декодера 96. Принимаемые данные преобразуются на выходах сдвигового регистра 92 в параллельный код. Детектор 93 флага, дешефрировав флаг преамбулы, формирует на своем выходе сигнал, который устанавливает в единицу выход RS-триггера 94, и при этом снимается сигнал сброса с входа сброса счетчика 98 битов. Счетчик 98 битов начинает подсчет принимаемых битов данных путем подсчета числа синхроимпульсов с выхода синхронизации декодера 96. По сигналам с выходов счетчика 98 битов управляющая логика 100 подает на счетный вход счетчика 99 импульсы для подсчета числа принимаемых слов, на входы управления фифо 90 приема сигналы записи слов, а на входы меток фифо 90 прима сигналы меток принимаемых слов. При этом принимаемые слова данных записываются в фифо 90 приема и метятся метками слов. При приеме сигнала данных с входа приемника 12 на выходе детектора 97 входного сигнала формируется сигнал наличия несущей в канале 24 связи, по окончании которого управляющая логика 100 формирует сигнал метки конца пакета, подаваемый на вход фифо 90 приема, и сигнал записи для записи метки конца принятого пакета в фифо 90 приема. По концу приема пакета счетчик 99 байтов сбрасывается по своему входу сброса сигналом с управляющей логики 100. During packet reception, a serial stream of data encoded in Manchester code is input to decoder 96. At the output of decoder 96, a serial data code is generated without returning to zero, followed by clock pulses at the synchronization output of decoder 96. Received data is converted to the outputs of the shift register 92 into parallel code. The flag detector 93, having deferred the preamble flag, generates a signal at its output, which sets the output of the RS flip-flop 94 to unity, and the reset signal is removed from the reset input of the 98-bit counter. The counter 98 bits starts counting the received data bits by counting the number of clock pulses from the synchronization output of the decoder 96. According to the signals from the outputs of the counter 98 bits, the control logic 100 supplies pulses to the counting input of the counter 99 to count the number of received words, to the control inputs 90 receiving signals recording words , and on the inputs of labels Fifo 90 prima signals labels received words. In this case, the received data words are recorded in Fifo 90 reception and labeled with word labels. When receiving a data signal from the input of the receiver 12 at the output of the input signal detector 97, a carrier signal is generated in the communication channel 24, at the end of which the control logic 100 generates a packet end mark signal supplied to the input fifo 90 of the reception, and a recording signal for recording the end mark of the received package in Fifo 90 admission. At the end of packet reception, a 99 byte counter is reset at its reset input by a signal from control logic 100.

Установка таймеров производится при приеме пакета. После приема адреса назначения и слова номера контроллера управляющая логика 100 по выходным сигналам счетчика 99 байтов на выходах состояний приемника 12 формирует сигналы запросов прерывания на фильтрацию адреса назначения пакета. По этим сигналам контроллер 9 прерываний на своих выходах формирует вектор прерываний, по которому шифратор 11 управления переходит на подпрограмму фильтрации пакетов по адресам их назначения и на подпрограмму установки таймеров маркера, монитора и передач. Timers are set when a packet is received. After receiving the destination address and the controller number word, the control logic 100 generates interrupt request signals for filtering the destination address of the packet by the output signals of the counter 99 bytes at the status outputs of the receiver 12. Based on these signals, the interrupt controller 9 generates an interrupt vector at its outputs, according to which the control encoder 11 switches to a packet filtering routine at their destination addresses and to a marker, monitor, and transmission timer setup routine.

Подпрограмма установки таймеров начинается после выполнения подпрограммы фильтрации адресов назначения, когда три слова адреса назначения считаны из фифо 90 приема для их сопоставления с таблицей адресов назначения, которая задается для контроллера ЭВМ 21. The subroutine for setting the timers starts after the subroutine for filtering destination addresses is executed, when three words of the destination address are read from Fifo 90 for reception to compare them with the table of destination addresses, which is set for the computer controller 21.

За адресами назначения из фифо 90 приема считывается слово номера контрроллера, для чего на вторую группу входов управления приемника 12 с шифратора 11 управления подается инструкция чтения слова из фифо 90 приема через мультиплексор 91 на внутреннюю шину 15, по которой шифратор 11 управления формирует сигналы управления на входы управления фифо 90 приема и входы управления мультиплексора 91. Слово номера контроллера подается на первую группу адресных входов запоминающего устройства 7. На этом завершается выполнение первой микрокоманды подпрограммы установки таймеров. For the destination addresses from FIFO 90, the word of the controller number is read, for which purpose the instruction to read the word from Fifo 90 receives through the multiplexer 91 to the internal bus 15 through which the control encoder 11 generates control signals to the second group of control inputs of the receiver 12 from the control encoder 11 FIFO control inputs 90 of the reception and control inputs of the multiplexer 91. The controller number word is fed to the first group of address inputs of the storage device 7. This completes the execution of the first micro command subprogram Amma set the timers.

Предположим, что наибольшее количество контроллеров, подключаемых к каналу 24 связи, равно 79 (NГ= 79). Таким образом, номер контроллера (NУП) может быть размещен в первых шести битах слова номера контроллера (биты 0-5). Предположим, что запоминающее устройство 7 секционировано и содержит четыре секции 52 запоминающего устройства, первые и вторые группы адресных входов которых содержат по четыре разряда. Suppose that the largest number of controllers connected to the communication channel 24 is 79 (NG = 79). Thus, the controller number (NUP) can be placed in the first six bits of the word controller number (bits 0-5). Suppose that the storage device 7 is partitioned and contains four sections 52 of the storage device, the first and second groups of address inputs of which contain four bits.

При выполнении второй микрокоманды слово с внутренней шины 15 записывается во второй из регистров регистрового устройства 8. На входы управления запоминающего устройства 7 подается код операции, при выполнении которой на выходах запоминающего устройства 7 формируется слово, биты 00 и 01, 04 и 05, 08 и 09, 14 и 15 которого попарно устанавливаются равными значению пары битов 04 и 05 на первой группе адресных входов запоминающего устройства 7, т. е. становятся равными битами 04 и 05 номера контроллера передаваемого пакета (NУП). Это возможно, если вторая секция 52 запоминающего устройства пересылает на свои выходы переноса неизменными два младших бита, поданных на первую группу ее входов, а схема ускоренных переносов выдает на входы переноса секции 52 запоминающего устройства 7 эти биты также неизменными, после чего на выходах младших битов секций 52 запоминающего устройства формируются попарно младшие биты, равные битам 05 и 04 слова на первой группе адресных входов запоминающего устройства 7. Результат операции записывается в третий из регистров 63 регистрового устройства 8. Этим завершается выполнение второй микрокоманды. Далее аналогично на выходах запоминающего устройства 7 в результате выполнения еще одной операции формируется слово, в которов биты группами по четыре 00, 01, 02, 03 и 04, 05, 06, 07, и 08, 09, 10, 11, и 12, 13, 14, 15 равны соответственно битам 00, 01, 02, 03 слова (NУП) номера передающего устройства. Сигналы с выходов запоминающего устройства 7 записываются во второй из регистров 63, чем завершается выполнение третьей микрокоманды. When the second microcommand is executed, the word from the internal bus 15 is recorded in the second of the registers of the register device 8. The operation code is supplied to the control inputs of the memory device 7, during which the word is generated at the outputs of the memory device 7, bits 00 and 01, 04 and 05, 08 and 09, 14 and 15 of which are set in pairs equal to the value of the pair of bits 04 and 05 on the first group of address inputs of the storage device 7, i.e., bits of the transmitted packet controller (NUP) become equal bits 04 and 05. This is possible if the second section 52 of the storage device sends to its transfer outputs the two least significant bits supplied to the first group of its inputs unchanged, and the accelerated transfer circuit outputs these bits to the transfer inputs of section 52 of the storage device 7 as well, and then to the outputs of the lower bits sections 52 of the storage device are formed in pairs low-order bits equal to bits 05 and 04 words on the first group of address inputs of the storage device 7. The result of the operation is recorded in the third of the registers 63 of the register oystva 8. This completes the execution of the second microinstruction. Further, similarly, at the outputs of the storage device 7, as a result of another operation, a word is formed in which the bits are in groups of four 00, 01, 02, 03 and 04, 05, 06, 07, and 08, 09, 10, 11, and 12, 13, 14, 15 are equal to the bits 00, 01, 02, 03 of the word (NUP) of the transmitting device number, respectively. The signals from the outputs of the storage device 7 are recorded in the second of the registers 63, which completes the execution of the third microcommand.

По четвертой микрокоманде сигналы второго из регистров 63 подаются на первую группу адресных входов запоминающего устройства 7, сигналы третьего из регистров 63 подаются на вторую группу адресных входов запоминающего устройства 7, на входы управления которого подается код операции умножения на константу Т числа NУП+1. Младшие биты члена NУП подаются на вторую группу входов, а старшие биты - на первую группу входов каждой из секции 52. На вход переноса запоминающего устройства 7 подается уровень единицы, которая суммируется с числом NУП при выполнении операции. Этот уровень через запоминающее устройство 53 ускоренных переносов распространяется на входы приема секции 52. В результате выполнения операции на выходах секции 52 формируются биты результата операции
ТП= Т(NУП+1), где Т= 153 задается неявно кодом операции.
According to the fourth micro-command, the signals of the second of the registers 63 are fed to the first group of address inputs of the memory device 7, the signals of the third of the registers 63 are fed to the second group of address inputs of the memory device 7, the control inputs of which are supplied with the operation code of the multiplication by the constant T of the number NUP + 1. The low-order bits of the NUP member are supplied to the second group of inputs, and the high-order bits are sent to the first group of inputs of each section 52. The unit level is transferred to the transfer input of the storage device 7, which is summed with the number of NUP during the operation. This level through the memory device 53 accelerated transfers extends to the input inputs of section 52. As a result of the operation on the outputs of section 52 are formed bits of the result of the operation
TP = T (NUP + 1), where T = 153 is set implicitly by the operation code.

На первой и второй группах входов каждой из секций 52 присутствуют все шесть битов номера передающего устройства (NУП). Каждая секция запрограммирована индивидуально таким образом, что на ее выходах формируется группа четырех битов слова результата. На четырех секциях 52 формируются все шестнадцать битов слова результата, которое записывается во второй из регистров 63. В первый из регистроа 63 записывается константа адреса ячейки запоминающего устройства 7, в которой хранится слово тайм-аута таймера передачи. На этом завершается выполнение четвертой микрокоманды. Если время выполнения одной микрокоманды равно 200 нс, то вычисление значения ТП производится за четыре микрокоманды или 800 нс. On the first and second groups of inputs of each of the sections 52 there are all six bits of the number of the transmitting device (NUP). Each section is individually programmed in such a way that at its outputs a group of four bits of the result word is formed. In four sections 52, all sixteen bits of the result word are generated, which is recorded in the second of the registers 63. The address constant of the cell of the memory device 7, in which the transmission timer timeout word is stored, is recorded in the first of the registers 63. This completes the fourth microcommand. If the execution time of one microcommand is 200 ns, then the TP value is calculated for four microcommands or 800 ns.

По пятой микрокоманде из оперативной памяти 6 считывается значение тайм-аута таймера передач на первую группу адресных входов запоминающего устройства 7, на вторую группу его адресных входов считывается из регистрового устройства 8 число ТП, которое вычитается из значения тайм-аута. According to the fifth micro-command, the value of the timeout of the transmission timer for the first group of address inputs of the storage device 7 is read from the RAM 6, the number of TSs that are subtracted from the timeout value is read from the register device 8.

По шестой микрокоманде результат записывается в оперативную память 6 в ячейку временного хранения слова таймера передачи. According to the sixth micro-command, the result is written into RAM 6 in the temporary storage cell of the transmission timer word.

По седьмой микрокоманде из оперативной памяти 6 считывается значение тайм-аута таймера монитора, из него вычитается значение ТП. Результат по восьмой микрокоманде переписывается в ячейку временного хранения слова таймера монитора оперативной памяти 6. According to the seventh micro-command, from the RAM 6 the timeout value of the monitor timer is read, the value of the TP is subtracted from it. The result of the eighth microcommand is copied to the temporary storage cell of the timer monitor RAM 6.

По девятой и десятой микрокомандам из оперативной памяти 6 считывается из ячейки тайм-аута таймера маркера значение тайм-аута маркера, вычитается из него значение ТП и результат перезаписывается в ячейку временного хранения, на чем завершается подпрограмма установки таймеров по результатам приема из канала 24 связи пакета. According to the ninth and tenth microcommands from the RAM 6, the marker timeout value is read from the marker timer timeout cell, the value of the marker timeout is subtracted from it, and the result is overwritten into the temporary storage cell, which completes the timer setup routine based on the results of receiving the packet from channel 24 of the communication .

Во время приема пакета логика 95 циклического контроля осуществляет вычисление контрольной суммы для проверки принимаемых данных на наличие в них ошибок. По окончании приема пакета при отсутствии сигнала несущей в канале 24 связи, определяемого детектором 97, и по сигналам с выходов счетчика 99 байтов, когда они не равны нулю, на выходах управляющей логики 100 формируются сигналы запросов прерываний по концу приема пакета, которые подаются на выходы состояний приемника 12. По этим сигналам контроллер 9 прерываний формирует вектор и осуществляется переход на подпрограмму запуска таймеров. Для этого по сигналам по второй группе входов управления приемника 12 через мультиплексор 91 на внутреннюю шину 15 считывается сигнал с выхода контроля логики 95 циклического контроля, определяющий отсутствие или наличие ошибок в принимаемом пакете. Считываются сигналы с выходов счетчика 98 битов, определяющие кратность принятых битов числу восемь, т. е. кратность целому числу байтов, сигналы с выходов счетчика 99 байтов, определяющие длину принятого пакета, если принятый пакет имеет длину в пределах допустимой, если он заканчивается на байтовой границе и не имеет ошибок, то слова таймеров монитора, пакета и маркера пересылаются из ячеек временного хранения в соответствующие ячейки таймеров маркера, монитора и передачи в оперативной памяти 6. At the time of receiving the packet, the cyclic control logic 95 calculates a checksum to check the received data for errors. At the end of packet reception, in the absence of a carrier signal in the communication channel 24, determined by detector 97, and by signals from the outputs of the counter 99 bytes, when they are not equal to zero, interrupt request signals are generated at the outputs of the control logic 100 at the end of packet reception, which are fed to the outputs status of the receiver 12. Based on these signals, the interrupt controller 9 generates a vector and the transition to the timer start routine is performed. To this end, the signals from the second group of control inputs of the receiver 12 through the multiplexer 91 to the internal bus 15 read the signal from the control output of the logic 95 cyclic control, which determines the absence or presence of errors in the received packet. Signals from the outputs of the counter of 98 bits are read, determining the multiplicity of the received bits to the number eight, i.e., the multiplicity of the integer number of bytes, the signals from the outputs of the counter are 99 bytes, which determine the length of the received packet, if the received packet has a length within the acceptable range, if it ends on the byte boundary and has no errors, the words of the timer of the monitor, packet and marker are sent from the temporary storage cells to the corresponding timer cells of the marker, monitor and transmission in RAM 6.

Если пакет принят с ошибками, то таймер маркера устанавливается на значение
ТАМ= (NГ+NУ+N)T, а таймеры монитора и пакета на значение большее, чем ТАМ, что позволяет не выполнять передачи в кабель пакетов до проведения повторной синхронизации контроллера в канале 24 связи.
If the packet was received with errors, then the marker timer is set to
TAM = (NG + NU + N) T, and the monitor and packet timers are greater than TAM, which allows you to not transmit packets to the cable until the controller is re-synchronized in the communication channel 24.

ЭВМ 21 формирует таблицу адресов назначения, которые контроллер различает как "свои", и принимает пакеты с адресами назначения, заданными в таблице адресов назначения. Контроллер считывает их в режиме прямого доступа к памяти из оперативной памяти ЭВМ 21. Делает это контроллер перед тем, как будут разрешены ЭВМ 21 прием и передача пакетов в канал 24 связи. Например, таблица адресов назначения может содержать четырнадцать 48-битных адресов назначения пакетов. Из них один адрес широковещательный, т. е. предназначенный для всех устройств в сети, другой индивидуальный, т. е. предназначенный только для данного контроллера. Такой адрес начинается с бита, установленного в ноль. Остальные адреса групповые, т. е. предназначены группам устройств, в которые входит данный конкретный контроллер. Групповой адрес начинается с бита, установленного в единицу. The computer 21 generates a table of destination addresses, which the controller distinguishes as "their own", and receives packets with destination addresses specified in the table of destination addresses. The controller reads them in the direct memory access mode from the main memory of the computer 21. The controller does this before the computer 21 is allowed to receive and transmit packets to the communication channel 24. For example, a destination address table may contain fourteen 48-bit packet destination addresses. Of these, one address is broadcast, that is, intended for all devices on the network, the other is individual, that is, intended only for this controller. Such an address starts with a bit set to zero. The remaining addresses are group addresses, that is, they are intended for groups of devices that include this particular controller. A multicast address starts with a bit set to one.

Для обеспечения ускоренной фильтрации адрес назначения принимаемого пакета разбивается на двенадцать групп битов по четыре бита в каждой группе (двенадцать полубайтов). Каждым из полубайтов адресуется к одной из групп ячеек оперативной памяти 6. В каждой группе шестнадцать ячеек памяти. Из ячеек памяти, к которым адресуются полубайтами, считываются данные (слова соответствия), которые дают возможность определить является ли данный полубайт частью одного из адресов назначений, заданных в таблице адресов назначения. Если все полубайты принимаемого адреса назначения определяются как полубайты одного и того же адреса назначения, заданного в таблице адресов назначения, то пакет принимается контроллером в фифо 90 приема. To ensure accelerated filtering, the destination address of the received packet is divided into twelve groups of bits, four bits in each group (twelve nibbles). Each of the nibbles is addressed to one of the groups of memory cells 6. In each group there are sixteen memory cells. From memory cells to which nibbles are addressed, data (matching words) is read, which makes it possible to determine whether a given nibble is part of one of the destination addresses specified in the destination address table. If all nibbles of the received destination address are defined as nibbles of the same destination address specified in the destination address table, the packet is received by the controller in Fifo 90 reception.

Контроллер формирует таблицу слов соответствия. Слова соответствия образуют в оперативной памяти 6 двенадцать групп по шестнадцать слов. Под эти группы отводится страница области оперативной памяти 6 величиной в 21 слово. Для адресации к словам соответствия в пределах страницы достаточно иметь восемь разрядов входов адреса оперативной памяти 6. С четвертого по седьмой разряды адреса указывают на номер группы, с нулевого по третий разряды - на одно из слов соответствия в группе. Перед составлением таблицы слов соответствия все ячейки памяти, расположенные на странице, должны быть обнулены. The controller generates a table of matching words. Correspondence words form 6 twelve groups of sixteen words in RAM. For these groups, a page of the area of RAM 6 with a size of 21 words is assigned. To address words of correspondence within a page, it is enough to have eight bits of inputs of the address of RAM 6. From the fourth to seventh bits, the addresses indicate the group number, from zero to third bits - to one of the words of correspondence in the group. Before compiling a table of words of correspondence, all memory cells located on the page must be zeroed.

Номер группы ставится в соответствие с номером полубайта в адресе назначения фильтруемого пакета. Счет полубайтов ведется от числа 0 до числа 13. С нулевого по третий разряды ставятся в соответствие с нулевого по третий разрядам полубайтов адресов назначения. The group number is set in accordance with the nibble number in the destination address of the filtered packet. The nibble count is maintained from the number 0 to the number 13. From zero to third digits are mapped to zero to third digits of the nibbles of the destination addresses.

Битам 0-13 каждого из слов соответствия противопоставляется один из четырнадцати адресов, заданных в таблице адресов назначения. Если, например, бит 5 слова, расположенного на странице слов соответствия, установлен, а с нулевого по седьмой разряды адреса ячейки оперативной памяти, содержащей это слово соответствия, имеют значение 00110110, то установленный бит 5 говорит о том, что третий полубайт (третий, с четвертого по седьмой поскольку разряды адреса оперативной памяти имеют значение 0011) пятого (поскольку бит 5 слова соответствия равен единице) из адресов, заданных в таблице адресов назначений, имеет значение 0110 (с нулевого по третий разряды адреса оперативной памяти имеют значение 0110). Bits 0-13 of each of the matching words are opposed to one of the fourteen addresses specified in the destination address table. If, for example, bit 5 of the word located on the match words page is set, and from zero to seventh digits the addresses of the RAM cell containing this match word have the value 00110110, then set bit 5 means that the third nibble (third, from the fourth to the seventh because the bits of the RAM address have the value 0011) of the fifth (since bit 5 of the correspondence word is one) from the addresses specified in the destination address table, it has the value 0110 (from zero to the third bits of the RAM address dissolved value 0110).

При формировании слов соответствия контроллер в прямом доступе считывает слова адресов назначения через шину 17 данных , через интерфейс 1 и мультиплексор 14 из таблицы адресов назначения, расположенной в оперативной памяти ЭВМ 21, на внутреннюю шину 15. Считанное слово адреса назначения записывается во втором из регистров 63 и преобразуется на выходах запоминающего устройства 7 так, что биты 0-3 остаются равными битам 0-3 слова на внутренней шине 15, биты 4-7 обнуляются, а биты 8-16 устанавливаются на значение, необходимое для адресации к странице оперативной памяти 6, на которой хранится таблица слов соответствия. Слово с выходов запоминающего устройства 7 пересылается через первый из регистров 63 на входы адреса оперативной памяти 6, из которой на внутреннюю шину читается выбранное слово соответствия и преобразуется на запоминающем устройстве 7 путем установки в нулевом бите единицы. Результат заносится в оперативную память 6 по старому адресу. Наличие единицы в нулевом бите слова соответствия, к которому адресовались четырьмя битами первого полубайта первого слова адреса назначения, говорит о том, что именно такой первый полубайт в первом слове одного из адресов назначения имеется. Далее содержимое второго из регистров 63 считывается на внутреннюю шину 15 и второй полубайт первого слова адреса назначения пересылается на выходы запоминающего устройства 7. При этом биты 0-3 на выходах запоминающего устройства 7 становятся равными битам 4-7 на его первой группе адресных входов, биты 4-7 на его выходах приобретают значения 0001, остальные биты устанавливаются, как и раньше, для адресации соответствующей страницы. Оперативная память 6 адресуется через первый из регистров 63 по новому адресу. Еще одно слово считывается на выходы оперативной памяти 6. Нулевой бит этого слова устанавливается в едицину и преобразованное слово записывается по старому адресу. When forming the words of correspondence, the controller reads directly the words of the destination addresses through the data bus 17, through the interface 1 and the multiplexer 14 from the table of destination addresses located in the main memory of the computer 21, to the internal bus 15. The read word of the destination address is written in the second of the registers 63 and converted to the outputs of the storage device 7 so that bits 0-3 remain equal to bits 0-3 of the word on the internal bus 15, bits 4-7 are reset, and bits 8-16 are set to the value necessary for addressing to the opera page RAM 6, on which a word table of words is stored. The word from the outputs of the storage device 7 is sent through the first of the registers 63 to the inputs of the address of the RAM 6, from which the selected matching word is read to the internal bus and converted to the storage device 7 by setting the unit to zero. The result is entered into RAM 6 at the old address. The presence of a unit in the zero bit of the correspondence word, which was addressed with four bits of the first nibble of the first word of the destination address, indicates that it is such a first nibble in the first word of one of the destination addresses. Next, the contents of the second of the registers 63 are read onto the internal bus 15 and the second nibble of the first word of the destination address is sent to the outputs of the storage device 7. In this case, bits 0-3 at the outputs of the storage device 7 become equal to bits 4-7 on its first group of address inputs, bits 4-7 at its outputs acquire the values 0001, the remaining bits are set, as before, to address the corresponding page. RAM 6 is addressed through the first of the registers 63 to the new address. Another word is read to the outputs of RAM 6. The zero bit of this word is set to unity and the converted word is written to the old address.

Таким же образом производится преобразование с двумя другими полубайтами первого слова адреса назначения, хранящегося в первом из регистров 63. В результате в оперативной памяти 6 сформировано четыре слова соответствия, в нулевых битах которых установлена единица. Далее из ЭВМ 21 считывается второе, а затем третье слова первого адреса назначения. С этими словами выполняются такие же преобразования, как и с первым словом адреса назначения. После этого в оперативной памяти 6 сформировано двенадцать слов соответствия, что равно числу полубайтов в адресе назначения. Во всех словах соответствия нулевые биты установлены в единицы. Эти слова соответствия расположены по одному в каждой из групп слов соответствия на странице слов соответствия оперативной памяти 6. In the same way, the conversion is made with two other nibbles of the first word of the destination address stored in the first of the registers 63. As a result, four matching words are generated in the RAM 6, one of which is set to zero. Next, from the computer 21, the second and then the third words of the first destination address are read. With these words, the same conversions are performed as with the first word of the destination address. After that, twelve matching words are formed in RAM 6, which is equal to the number of nibbles in the destination address. In all matching words, the zero bits are set to units. These matching words are located one in each of the groups of matching words on the page of matching words of RAM 6.

Аналогично производится формирование слов соответствия для остальных адресов назначения, вызываемых из ЭВМ 21, только с тем различием, что для второго адреса назначения в словах соответствия, расположенных в оперативной памяти 6, устанавливаются в единицу первые биты, а для третьего адреса назначения - третьи биты и т. д. для всех двенадцати адресов назначения. Similarly, correspondence words are generated for the remaining destination addresses called from the computer 21, only with the difference that for the second destination address in the matching words located in RAM 6, the first bits are set to unity, and for the third destination address, the third bits and etc. for all twelve destination addresses.

Такая таблица соответствия в оперативной памяти 6 позволяет достаточно быстро производить фильтрацию принимаемых пакетов по адресам назначения, чтобы одновременно выполнять несколько процессов реального времени. Such a correspondence table in RAM 6 allows you to quickly filter received packets by destination addresses in order to simultaneously perform several real-time processes.

Фильтрация пакетов производится следующим образом. При переходе на подпрограмму фильтрации пакетов шифратор 11 управления на вторую группу входов управления приемника 12 выдает сигналы, по которым под управлением управляющей логики 100 из фифо 90 приема считывается слово адреса назначения через мультиплексор 91 на внутреннюю шину 15 и записывается во второй из регистров 63. На этом завершается первая микрокоманда подпрограммы. Packet filtering is performed as follows. When switching to the packet filtering subroutine, the control encoder 11 transfers to the second group of control inputs of the receiver 12 the signals by which, under the control of the control logic 100, the destination address word is read from the receiving FIFO 90 through the multiplexer 91 to the internal bus 15 and written to the second of the registers 63. On This completes the first micro command of the subroutine.

Затем производится пересылка битов 0-3 на биты 0-3 выходов запоминающего устройства 7, биты 4-7 которых устанавливаются на число ноль, это соответствует первому полубайту принимаемого адреса назначения, биты 8-15 устанавливаются на страницу слов соответствия (вторая микрокоманда). Сформированное слово служит для адресации оперативной памяти 6, из которой считывается на внутреннюю шину 15 слово соответствия и заносится в третий из регистров 63. Это слово соответствия также тестируется запоминающим устройством 7 для выявления в нем бит, установленных в единицу (третья микрокоманда). Then, bits 0-3 are sent to bits 0-3 of the outputs of the storage device 7, bits 4-7 of which are set to zero, this corresponds to the first nibble of the received destination address, bits 8-15 are set to the page of matching words (second microcommand). The generated word is used for addressing the RAM 6, from which the correspondence word is read on the internal bus 15 and entered in the third of the registers 63. This correspondence word is also tested by the memory device 7 to detect bits set to one in it (third microcommand).

Если хотя бы один бит слова соответствия установлен в единицу, то это означает, что принятый полубайт адреса назначения имеется в адресах назначения, разрешенных для приема таблицей адресов назначения. Если, например, единица установлена в шестом бите слова соответствия, то это означает, что первый полубайт принятого адреса назначения и первый полубайт седьмого адреса назначения из таблицы адресов назначения совпадают. В этом случае подпрограмма продолжается, а в противном случае прекращается, пакет распознается как "чужой", не предназначенный данному контроллеру, и выполнение подпрограммы завершается. If at least one bit of the match word is set to one, then this means that the received nibble of the destination address is in the destination addresses allowed for the table to receive the destination addresses. If, for example, the unit is set in the sixth bit of the match word, then this means that the first nibble of the received destination address and the first nibble of the seventh destination address from the destination address table are the same. In this case, the subroutine continues, and otherwise stops, the package is recognized as a “foreign”, not intended for this controller, and the execution of the subroutine ends.

При продолжении подпрограммы формируются слова адреса оперативной памяти 6, в битах 0-3 поочередно устанавливаются биты остальных полубайтов адреса назначения, в битах 4-7 устанавливается номер полубайта, а в битах 8-15 - адрес страницы слов соответствия. Слова соответствия считываются из оперативной памяти 6, выполняется каждый раз при этом операция логического умножения над словом, считанным из оперативной памяти 6, и словом, хранящимся в третьем из регистров 63. Результат заносится обратно в третий из регистров 63 и тестируется на наличие в слове результат хотя бы одного бита, установленного в единицу. When the subroutine is continued, the words of the address of RAM 6 are formed, in bits 0-3 the bits of the remaining nibbles of the destination address are set one by one, in bits 4-7 the nibble number is set, and in bits 8-15 the address of the page of matching words is set. Correspondence words are read from RAM 6, each time the logical multiplication operation is performed on a word read from RAM 6 and a word stored in the third of registers 63. The result is entered back into the third of registers 63 and tested for the result in the word at least one bit set to one.

Пусть в слове соответствия второго полубайта принимаемого адреса назначения шестой бит установлен в единицу. Это означает, что второй полубайт принимаемого адреса назначения и второй полубайт седьмого адреса назначения из таблицы адресов назначений совпадают. При выполнении операции логического умножения над словом, хранящимся во втором из регистров 63 и считанных из оперативной памяти 6, результат операции содержит шестой бит, установленный в единицу. Это означает, что седьмой адрес назначения из таблицы адресов назначения и принимаемый адрес назначения имеют одинаковые первые байты. Таким образом, устанавливается принадлежность принимаемого адреса к таблице адресов назначения. Let the sixth bit is set to one in the correspondence word of the second nibble of the received destination address. This means that the second nibble of the received destination address and the second nibble of the seventh destination address from the destination address table are the same. When performing a logical multiplication operation on a word stored in the second of the registers 63 and read from the RAM 6, the result of the operation contains the sixth bit set to one. This means that the seventh destination address from the destination address table and the received destination address have the same first bytes. Thus, the belonging of the received address to the destination address table is established.

Общее число выполняемых микрокоманд в подпрограмме с учетом операции логического умножения составляет 48 микрокоманд или 9,6 мкс потребуется на ее выполнение. The total number of microcommands executed in the subprogram taking into account the logical multiplication operation is 48 microcommands, or 9.6 μs will be required to execute it.

Поскольку подпрограмма фильтрации достаточно длинна, а общее время работы контроллера делится между несколькими процессами реального времени, то по этой причине подпрограмма фильтрации пакетов по адресам назначения может прерываться подпрограммой, в которой выполняется программный обмен между ЭВМ 21 и контроллером. Since the filtering subroutine is quite long, and the total operating time of the controller is divided between several real-time processes, for this reason the packet filtering subroutine by destination address may be interrupted by a subroutine in which program exchange between the computer 21 and the controller is performed.

Если программный обмен между ними может быть выполнен за время, не превышающее 2,6 мкс, а сигнал "Готовность", которым завершается программный обмен и который выдает контроллер, должен быть выдан не позднее, чем через 7,2 мкс после поступления сигнала "Чтение" или "Запись" с ЭВМ 21, то целесообразно при выполнении фильтрации адресов назначения на входы управления приоритетами контроллера 9 прерываний с шифратора 11 управления выдавать через каждые 3 мкс (15 микрокоманд) сигналы текущего приоритета, позволяющие подпрограммам более высокого приоритета прерывать выполнение подпрограммы фильтрации адресов назначения. If a program exchange between them can be completed in a time not exceeding 2.6 μs, and the Ready signal, by which the program exchange ends and which the controller issues, should be issued no later than 7.2 μs after the receipt of the Read signal "or" Record "with the computer 21, it is advisable when filtering the destination addresses to the priority control inputs of the controller 9 interrupts from the control encoder 11 to issue signals of the current priority every 3 μs (15 microcommands), allowing higher-priority subprograms You can interrupt the execution of the destination address filtering routine.

Предлагаемый контроллер выгодно отличается от прототипа, поскольку имеет более широкую область применения при сокращении аппаратурных затрат на его реализацию. Расширение области применения выражается в том, что контроллер может быть использован в системах, выполняющих обмен данными в реальном времени, при совместной работе ЭВМ, имеющими ограниченное адресное пространство, отведенное под адресацию к регистрам внешних устройств. Примером таких ЭВМ могут служить ЭВМ, построенные на основе микропроцессоров серии 580, где под адресацию регистров внешних устройств отводится 256 адресов. The proposed controller compares favorably with the prototype, as it has a wider field of application while reducing hardware costs for its implementation. The extension of the scope is expressed in the fact that the controller can be used in systems that perform real-time data exchange, when computers work together with a limited address space allocated for addressing to registers of external devices. An example of such computers is computers built on the basis of microprocessors of the 580 series, where 256 addresses are allocated for addressing the registers of external devices.

В прототипе данные управления (слова состояний и управления) записываются в регистры контроллера в режиме программного обмена. Количество регистров определяется количеством слов данных управления, которые одновременно должен хранить контроллер. Для обеспечения работы последнего в режимах реального времени каждый из разрядов регистров подключен к шифратору управления. При этом на регистры и шифратор управления требуются аппаратурные затраты, зависящие от числа регистров, в которых хранятся данные управления. In the prototype, control data (state and control words) is written to the controller registers in program exchange mode. The number of registers is determined by the number of words of control data that the controller must simultaneously store. To ensure the operation of the latter in real-time modes, each of the bits of the registers is connected to the control encoder. At the same time, hardware registers are required for the registers and the control encoder, depending on the number of registers in which the control data is stored.

В предлагаемом контроллере обмен данными управления выполняется как в режиме программного обмена, так и в режиме прямого доступа к памяти. Обмен данными управления, выполняемый предлагаемым контроллером в режиме прямого доступа к памяти, позволяет сократить до необходимого минимума адресное пространство, отведенное под адресацию регистров внешних устройств. Обработка данных управления на запоминающем устройстве с последующей выработкой на его выходах кодов, преобразуемых дешифратором-преобразователем начального адреса в управляющее воздействие (в адрес соответствующей подпрограммы), выполняется за цикл чтения или записи режима прямого доступа или режима программного обмена, т. е. в процессе реального времени обмена данными управления. In the proposed controller, the exchange of control data is performed both in program exchange mode and in direct memory access mode. The exchange of control data performed by the proposed controller in the direct memory access mode allows to reduce to the required minimum the address space reserved for addressing the registers of external devices. Processing of control data on the storage device with subsequent generation of codes on its outputs that are transformed by the decoder-converter of the initial address into a control action (into the address of the corresponding subprogram) is performed for a cycle of reading or writing direct access mode or program exchange mode, i.e., in the process real-time data exchange management.

Уменьшение адресного пространства, отведенного под адресацию регистров внешних устройств, и выполнение обмена данными управления в режиме прямого доступа к памяти ЭВМ при сохранении требований, предъявляемых к контроллеру при работе в режимах реального времени, позволяют расширить область применения контроллера. При этом он может работать совместно с ЭВМ, имеющими ограниченное адресное пространство, отведенное под адресацию регистров внешних устройств, и выполняющими обмен данными в режимах реального времени. Reducing the address space reserved for addressing the registers of external devices, and the exchange of control data in direct access to the computer memory while maintaining the requirements for the controller when working in real time, can expand the scope of the controller. At the same time, it can work together with computers that have a limited address space reserved for addressing the registers of external devices, and perform data exchange in real time.

Использование оперативной памяти для хранения данных управления, обмен которыми производится как в режиме прямого доступа, так и в программном обмене, позволяет произвести сокращение аппаратурных затрат за счет отсутствия регистров внешних устройств, а также за счет отсутствия логики управления, связанной с каждым из разрядов регистров внешних устройств. Такую управляющую логику заменяют в предлагаемом контроллере запоминающее устройство и контроллер прерываний. Формирование на выходах запоминающего устройства кодов управляющих сигналов в процессе реального обмена данными управления и арбитраж процессов реального времени, выполняемый контроллером прерываний, позволяют не использовать управляющую логику, связанную с каждым из разрядов регистров внешних устройств, и исключить сами эти регистры из контроллера. The use of random access memory for storing control data exchanged both in direct access mode and in software exchange allows reducing hardware costs due to the absence of external device registers, as well as due to the absence of control logic associated with each of the categories of external registers devices. Such control logic is replaced in the proposed controller memory device and interrupt controller. The generation of control signal codes at the outputs of the storage device during the real exchange of control data and the real-time arbitration of processes performed by the interrupt controller make it possible not to use the control logic associated with each of the bits of the external device registers and to exclude these registers from the controller.

Для реализации предлагаемого варианта требуются ячейки памяти в оперативной памяти под хранение данных управления. При программном обмене этих ячеек требуется десять. При обмене дескрипторами буферов (при семи дескрипторах буферов передачи и семи дескрипторах буферов приема) требуется 42 ячейки памяти. При обмене установочным пакетом требуется 256 ячеек памяти. Использование оперативной памяти при применении, например, микросхем серии 541РУ2 для шестнадцатиразрядной внутренней шины 15 позволяет иметь всего четыре корпуса таких микросхем вместо большего количества регистров. To implement the proposed option requires memory cells in RAM for storing control data. When exchanging these cells programmatically, ten are required. When exchanging buffer descriptors (with seven transmit buffer descriptors and seven receive buffer descriptors), 42 memory cells are required. When exchanging the installation package, 256 memory cells are required. The use of RAM when using, for example, 541RU2 series microcircuits for a sixteen-bit internal bus 15 allows you to have only four cases of such microcircuits instead of more registers.

Claims (1)

КОНТРОЛЛЕР, содержащий контроллер шины, интерфейс, селектор адреса, счетчик адреса, регистр адреса, схему сравнения, приемник, передатчик, шифратор управления, причем входы-выходы контроллера шины подключены к системной шине управления, первая группа входов-выходов интерфейса подключена к шине данных, вторая группа входов-выходов его подключена к шине адреса, входы данных его подключены к внутренней шине, его выходы адреса подключены к адресным входам селектора адреса, разрядные выходы счетчика адреса подключены к входам адреса интерфейса и к первой группе входов схемы сравнения, к второй группе входов которой подсоединены выходы регистра адреса, входы данных счетчика адреса и информационные входы регистра адреса подсоединены к внутренней шине, вход записи счетчика адреса, вход записи регистра адреса, вторая группа входов управления интерфейса, третья группа входов управления контроллера шины, вторая группа входов управления передатчика, вторая группа входов управления приемника, первая группа выходов шифратора управления подключена к шине управления, выход контроллера шины подключен к счетному входу счетчика адреса, выход "Равно" схемы сравнения соединен с первым входом шифратора управления, вход данных приемника подключен к одноименному входу устройства, выход передатчика подключен к выходу устройства, отличающийся тем, что в него введены оперативная память, запоминающее устройство, регистровое устройство, контроллер прерываний, мультиплексор, причем выходы управления контроллера шины подключены к входам управления селектора адреса, к первой группе входов управления интерфейса, к первой группе входов управления приемника и к первой группе входов управления передатчика, первая группа входов управления контроллера шины подключена к выходам управления передатчика, вторая группа входов управления контроллера шины подключена к выходам управления приемника, входы-выходы приемника, входы-выходы передатчика, входы-выходы оперативной памяти, входы-выходы регистрового устройства, первая группа адресных входов запоминающего устройства подключены к выходам мультиплексора и к внутренней шине устройства, выходы приемника подключены к входам интерфейса, входы передатчика соединены с выходами интерфейса , входы адреса оперативной памяти соединены с первой группой выходов регистрового устройства, выходы запоминающего устройства соединены с третьей группой входов регистрового устройства, выходы состояний запоминающего устройства соединены с первой группой входов шифратора управления, вторая группа адресных входов запоминающего устройства соединена с второй группой выходов регистрового устройства, первая группа входов регистрового устройства соединена с второй группой выходов шифратора управления, вторая группа входов регистрового устройства соединена с третьей группой выходов шифратора управления, третья группа выходов регистрового устройства соединена с входами управления запоминающего устройства, управляющий вход шифратора управления соединен с выходом переноса запоминающего устройства, вход переноса которого соединен с первым выходом шифратора управления, вторая группа входов шифратора управления и первая группа входов запроса контроллера прерываний соединены с выходами состояний приемника, выходы состояний передатчика подключены к третьей группе входов шифратора управления и второй группе входов запросов контроллера прерываний, к третьей группе входов запросов которого и четвертой группе входов шифратора управления подключены выходы контроллера шины, выходы селектора адреса соединены с четвертой группой входов запросов контроллера прерываний, второй выход шифратора управления соединен с входом запроса контроллера прерываний, выход управления которого соединен с вторым входом шифратора управления, вход синхронизации контроллера прерываний и вход синхронизации регистрового устройства соединены с третьим выходом шифратора управления, к пятой группе входов которого подключены выходы контроллера прерываний, выходы адреса интерфейса подсоединены к первой группе информационных входов мультиплексора, к второй группе информационных входов которого подключены выходы данных интерфейса, выход "Равно" схемы сравнения соединен с входом управления приемника и входом передатчика, входы управления приоритетами контроллера прерываний, входы управления оперативной памяти, входы управления мультиплексора, входы управления регистрового устройства подключены к шине управления устройства. A CONTROLLER comprising a bus controller, an interface, an address selector, an address counter, an address register, a comparison circuit, a receiver, a transmitter, a control encoder, wherein the inputs / outputs of the bus controller are connected to the system control bus, the first group of interface inputs and outputs is connected to the data bus, the second group of its inputs and outputs is connected to the address bus, its data inputs are connected to the internal bus, its address outputs are connected to the address inputs of the address selector, the bit outputs of the address counter are connected to the inputs of the interface address CA and to the first group of inputs of the comparison circuit, the second group of inputs of which the outputs of the address register are connected, the inputs of the address counter data and the information inputs of the address register are connected to the internal bus, the input of the address counter record, the input of the address register record, the second group of interface control inputs, the third the group of control inputs for the bus controller, the second group of control inputs for the transmitter, the second group of control inputs for the receiver, the first group of control encoder outputs connected to the control bus, control output The bus bus is connected to the counting input of the address counter, the output is “Equal to” the comparison circuit is connected to the first input of the control encoder, the data input of the receiver is connected to the device input of the same name, the output of the transmitter is connected to the output of the device, characterized in that RAM, a memory device are inserted into it , register device, interrupt controller, multiplexer, and the bus controller control outputs are connected to the address selector control inputs, to the first group of interface control inputs, to the first group receiver control inputs and to the first group of transmitter control inputs, the first group of bus controller control inputs is connected to the transmitter control outputs, the second group of bus controller control inputs is connected to the receiver control outputs, receiver inputs and outputs, transmitter inputs and outputs, RAM memory inputs and outputs , inputs and outputs of the register device, the first group of address inputs of the storage device are connected to the outputs of the multiplexer and to the internal bus of the device, the outputs of the receiver are connected to the inputs of the interface, the inputs of the transmitter are connected to the outputs of the interface, the inputs of the address of the RAM are connected to the first group of outputs of the register device, the outputs of the memory device are connected to the third group of inputs of the register device, the outputs of the states of the memory device are connected to the first group of inputs of the control encoder, the second group of address inputs the storage device is connected to the second group of outputs of the register device, the first group of inputs of the register device is connected to the second the control encoder outputs group, the second group of inputs of the register device is connected to the third group of outputs of the control encoder, the third group of outputs of the register device is connected to the control inputs of the storage device, the control input of the control encoder is connected to the transfer output of the storage device, the transfer input of which is connected to the first output of the control encoder , the second group of inputs of the control encoder and the first group of inputs of the interrupt controller request are connected to the status outputs the receiver, the transmitter status outputs are connected to the third group of control encoder inputs and the second group of interrupt controller request inputs, the third group of request inputs of which and the fourth group of control encoder inputs are connected to the bus controller outputs, the address selector outputs are connected to the fourth group of interrupt controller request inputs, the second the control encoder output is connected to the interrupt controller request input, the control output of which is connected to the second control encoder input, the input is the clock of the interrupt controller and the synchronization input of the register device are connected to the third output of the control encoder, the outputs of the interrupt controller are connected to the fifth group of inputs, the outputs of the interface address are connected to the first group of information inputs of the multiplexer, the output of the interface is connected to the second group of information inputs "comparison circuit connected to the control input of the receiver and the input of the transmitter, the inputs of the priority control of the interrupt controller, the control inputs RAM memory, control inputs of the multiplexer, control inputs of the register device are connected to the control bus of the device.
SU4907998 1991-02-04 1991-02-04 Video controller RU2012043C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
SU4907998 RU2012043C1 (en) 1991-02-04 1991-02-04 Video controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SU4907998 RU2012043C1 (en) 1991-02-04 1991-02-04 Video controller

Publications (1)

Publication Number Publication Date
RU2012043C1 true RU2012043C1 (en) 1994-04-30

Family

ID=21558703

Family Applications (1)

Application Number Title Priority Date Filing Date
SU4907998 RU2012043C1 (en) 1991-02-04 1991-02-04 Video controller

Country Status (1)

Country Link
RU (1) RU2012043C1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2546574C1 (en) * 2014-04-04 2015-04-10 Общество с ограниченной ответственностью "ЭнергоКруг" Rs-485 interface arbitrator
RU177629U1 (en) * 2017-09-29 2018-03-02 Акционерное общество "МЦСТ" High Speed Link Controller

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2546574C1 (en) * 2014-04-04 2015-04-10 Общество с ограниченной ответственностью "ЭнергоКруг" Rs-485 interface arbitrator
RU177629U1 (en) * 2017-09-29 2018-03-02 Акционерное общество "МЦСТ" High Speed Link Controller

Similar Documents

Publication Publication Date Title
EP0165600B1 (en) Input/output bus for computer
US4868742A (en) Input/output bus for system which generates a new header parcel when an interrupted data block transfer between a computer and peripherals is resumed
US5133062A (en) RAM buffer controller for providing simulated first-in-first-out (FIFO) buffers in a random access memory
US4320467A (en) Method and apparatus of bus arbitration using comparison of composite signals with device signals to determine device priority
US4748617A (en) Very high-speed digital data bus
EP0241129A2 (en) Addressing arrangement for a RAM buffer controller
US6298396B1 (en) System for loading a current buffer desciptor register with a value different from current value to cause a previously read buffer descriptor to be read again
US4213176A (en) System and method for increasing the output data throughput of a computer
US4418382A (en) Information exchange processor
US4188665A (en) Programmable communications subsystem
EP0870239B1 (en) Burst-broadcasting on a peripheral component interconnect bus
US4156796A (en) Programmable data processing communications multiplexer
US4797815A (en) Interleaved synchronous bus access protocol for a shared memory multi-processor system
US4999769A (en) System with plural clocks for bidirectional information exchange between DMA controller and I/O devices via DMA bus
EP0046203A1 (en) Multiprocessor arrangement with a common bus
CA1172719A (en) Distributed-structure message switching system on random-access channel for message dialogue among processing units
US6212593B1 (en) Method and apparatus for generating interrupts on a buffer by buffer basis in buffer descriptor ring direct memory access system
US6182165B1 (en) Staggered polling of buffer descriptors in a buffer descriptor ring direct memory access system
US4041473A (en) Computer input/output control apparatus
EP0239937A2 (en) Serial communications controller
US5515523A (en) Method and apparatus for arbitrating conflicts by monitoring number of access requests per unit of time in multiport memory systems
US4156277A (en) Access request mechanism for a serial data input/output system
KR920006858A (en) Method and device for optimizing bus arbitration during direct memory access data transmission
US5640602A (en) Transferring digital data in units of 2 bytes to increase utilization of a 2-byte-wide bus
GB1597202A (en) Communications processor architecture