RU2691886C1 - Complex-functional unit for vlsi-type system on chip - Google Patents
Complex-functional unit for vlsi-type system on chip Download PDFInfo
- Publication number
- RU2691886C1 RU2691886C1 RU2018129755A RU2018129755A RU2691886C1 RU 2691886 C1 RU2691886 C1 RU 2691886C1 RU 2018129755 A RU2018129755 A RU 2018129755A RU 2018129755 A RU2018129755 A RU 2018129755A RU 2691886 C1 RU2691886 C1 RU 2691886C1
- Authority
- RU
- Russia
- Prior art keywords
- data
- bus
- controller
- slave
- local memory
- Prior art date
Links
- 238000013500 data storage Methods 0.000 claims abstract 2
- 238000012545 processing Methods 0.000 abstract description 12
- 230000006854 communication Effects 0.000 abstract description 10
- 238000004891 communication Methods 0.000 abstract description 10
- 230000005540 biological transmission Effects 0.000 abstract description 6
- 239000000126 substance Substances 0.000 abstract 1
- 238000012546 transfer Methods 0.000 description 19
- 230000002093 peripheral effect Effects 0.000 description 15
- 238000000034 method Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 12
- 230000004044 response Effects 0.000 description 7
- 239000000872 buffer Substances 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 238000004886 process control Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013497 data interchange Methods 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012432 intermediate storage Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000035484 reaction time Effects 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Small-Scale Networks (AREA)
Abstract
Description
Изобретение относится к области сетей передачи данных. В заявке описан интерфейсный сложно-функциональный блок (СФ-блок), разработанный для СБИС типа «система на кристалле», предназначенный для обмена данными в соответствии с протоколом.The invention relates to the field of data networks. The application describes an interface complex-functional unit (SF-unit), designed for VLSI type "system on chip", designed to exchange data in accordance with the protocol.
В ходе работ по разработки СБИС типа «система на кристалле» (далее СнК) для применения в составе промышленных компьютеров, в том числе в контроллерном оборудовании, терминалах релейной защиты и автоматики и автоматизированных системах управления технологическими процессами (АСУТП) был разработан функционально законченный СФ-блок "TSI_controller", предназначенный для программной и аппаратной реализации протокола. С помощью СФ-блока "TSI_controller" осуществляется обмен данными по шине с внешними по отношению к СнК устройствами. СнК с заявляемым СФ-блоком изготовлена по КМОП-технологии 28 нм. Описанный в заявке СФ-блок в зависимости от области применения поддерживает один из двух протоколов. Первый протокол (ТМВ5000) описан в заявке на изобретение ЕА №201700029 А1, опубликованной 28.02.2018 г. и в заявке на изобретение RU №2018111465, поданной 30.03.2018 г. Второй протокол (TSI) описан в данной заявке. При описании СФ-блока и протокола используемые термины имеют следующее значение:In the course of work on the development of VLSI type "system on chip" (hereinafter SoC) for use in industrial computers, including controller equipment, relay protection and automation terminals and automated process control systems (APCS), a functionally finished SF block "TSI_controller", designed for software and hardware implementation of the protocol. Using the TSIcontroller SF block, data is exchanged on the bus with external devices in relation to SoC. SoC with the claimed SF-block manufactured by 28 nm CMOS technology. The SF block described in the application, depending on the application, supports one of the two protocols. The first protocol (TMB5000) is described in the application for the invention of EA No. 201700029 A1, published on February 28, 2018, and in the application for invention RU No. 2014111465, filed on 03/30/2018. The second protocol (TSI) is described in this application. When describing the SF block and protocol, the terms used have the following meaning:
«Протокол обмена данными» или «протокол передачи данных» - набор правил и соглашений, определяющих содержимое, формат, параметры времени, последовательность и проверку ошибок в сообщениях, которыми обмениваются устройства системы.“Data exchange protocol” or “data transfer protocol” - a set of rules and agreements that define the content, format, time parameters, sequence and error checking in messages exchanged between devices of the system.
«Ведущее устройство (Master)» - устройство, которое посылает данные другим устройствам и/или запрашивает данные от других устройств, т.е. является инициатором в обмене данными с ведомым устройством.“Master device” is a device that sends data to other devices and / or requests data from other devices, i.e. is the initiator in the exchange of data with the slave.
«Ведомое устройство (Slave)» - устройство, которое может обмениваться информацией только с ведущим устройством после того, как от ведущего устройства поступит соответствующий запрос."Slave device" - a device that can exchange information only with the master device after the corresponding request is received from the master device.
«Абоненты интерфейса» - электронные устройства, обмен данными между которыми осуществляется посредством магистрального последовательного интерфейса."Interface Subscribers" - electronic devices, the exchange of data between which is carried out through the main serial interface.
«Шина» - дифференциальная витая пара проводов или дифференциальная пара проводников на печатной плате, по которой осуществляют передачу данных в виде электрических сигналов от отправителя к получателю.“Bus” is a differential twisted pair of wires or a differential pair of conductors on a printed circuit board, through which data is transmitted in the form of electrical signals from the sender to the receiver.
«Общая шина» или «магистраль» - тип линии связи, при котором все абоненты подсоединены к общей линии связи. Общая линия связи используется всеми абонентами по очереди. Все сообщения, посылаемые отдельными абонентами, прослушиваются всеми остальными абонентами, подключенными к линии связи, но из потока сообщений абонент отбирает только адресованные ему сообщения.“Shared bus” or “trunk” is a type of communication line in which all subscribers are connected to a common communication line. The common line of communication is used by all subscribers in turn. All messages sent by individual subscribers are heard by all other subscribers connected to the communication line, but the subscriber selects only messages addressed to him from the message flow.
«Слово» - строка битов, рассматриваемая как единое целое при их передаче, приеме, коммутации, обработке, отображении и хранении.A “word” is a string of bits that is considered as a whole when transmitted, received, switched, processed, displayed, and stored.
«Контрольный пакет» - блок данных, обрабатываемый сетевыми программами как единое целое. Пакет состоит из данных, выполняющих роль служебной информации, необходимых для реализации протокола.“Control package” is a block of data processed by network programs as a whole. The package consists of data that performs the role of service information necessary to implement the protocol.
«Информационный пакет» - блок данных, обрабатываемый сетевыми программами, как единое целое. Пакет состоит из служебных данных и полезных данных, которые должны быть переданы."Information Package" is a data block processed by network programs as a whole. A packet consists of service data and payload that must be transferred.
Общая структура контрольного или информационного пакета определяется составом пакета и его форматом.The overall structure of the control or information package is determined by the composition of the package and its format.
«Состав» - содержащиеся в пакете различные типы данных.“Composition” - various types of data contained in the package.
«Формат» - размерность и порядок размещения различных типов данных."Format" - the dimension and order of placement of various types of data.
«Сообщение» - последовательность передаваемых контрольного и информационного пакетов.“Message” is a sequence of transmitted control and information packets.
Аппаратное и программное исполнение интерфейсного периферийного устройства зависит от того, для реализации какого протокола оно предназначено и от предъявляемых к нему специальных требований.The hardware and software execution of the interface peripheral device depends on what protocol it is intended to implement and on the special requirements imposed on it.
Из патентных источников известны устройства ввода-вывода, используемые для реализации следующих интерфейсов:From patent sources known input-output devices used to implement the following interfaces:
- Известно устройство коммуникационного интерфейса (контроллер) для сети Space Wire (патент RU №2483351 С1 и патент RU №175049 U9) для многопроцессорных вычислительных систем с распределенной обработкой информации и для локальных вычислительных сетей, создаваемых на базе технологии Space Wire [ECSS Standard ECSS-E-50-12A, "SpaceWire, Links, Nodes, Routersand Networks", Issue 1, European Cooperation for Space Data Standardization, February 2003]. Данное устройство предназначено для сбора информации от множества датчиков и других подобных модулей, не имеющих процессорного управления, при построении распределенных вычислительных систем, используемых во встраиваемых применениях, в том числе в бортовых вычислительных комплексах. Контроллер SpaceWire образован приемником и передатчиком с необходимыми элементами управления и интерфейсами. В сети SpaceWire узлы-абоненты связаны с маршрутизирующим коммутатором. Маршрутизирующий коммутатор обеспечивает непосредственную передачу трафика между своими входными и выходными портами. Узел-абонент отличается от коммутатора тем, что трансляция данных между его линк-портами возможна только под управлением хост устройства (т.е. реализуется программно).- A device is a communication interface (controller) for the Space Wire network (patent RU No. 2483351 C1 and patent RU No. 175049 U9) for multiprocessor computing systems with distributed information processing and for local computer networks created on the basis of the Space Wire technology [ECSS Standard ECSS- E-50-12A, "SpaceWire, Links, Nodes, Routersand Networks",
- Известен коммуникационный модуль для сети FlexRay (патент RU №2380841 С2). Протокол FlexRay работает по методу многоабонентского доступа с временным разделением каналов, в соответствии с которым различным подключенным к шине обмена данными абонентским устройствам присваиваются различные жестко заданные интервалы времени, в течение которых эти устройства имеют исключительное право на доступ к каналу связи. Интервалы времени повторяются в каждом цикле, поэтому время, в которое сообщение передается по шине точно определено и доступ к шине является детерминированным. Абонентское устройство сети FlexRay имеет собственный процессор и контроллер шины FlexRay (коммуникационный контроллер). При этом процессором абонента формируются и обрабатываются данные, передаваемые через контроллер шины FlexRay.- Known communication module for the network FlexRay (patent RU №2380841 C2). The FlexRay protocol operates using the time-division multiplex access method, according to which different fixed-to-subscriber devices are assigned different fixed time intervals during which these devices have the exclusive right to access the communication channel. The time intervals are repeated in each cycle, so the time at which the message is transmitted over the bus is precisely defined and access to the bus is deterministic. The subscriber network device FlexRay has its own processor and FlexRay bus controller (communication controller). In this case, the subscriber's processor generates and processes data transmitted via the FlexRay bus controller.
- Известен модуль SPI для последовательного периферийного интерфейса SPI (Евстифеев А.В., Микроконтроллеры AVR семейства Classic фирмы ATMEL - 6-е изд., стер. - М.: Издательский дом «Додэка-XXI», 2008 г., серия «Мировая электроника», стр. 273-344), принятый в качестве прототипа для заявляемого сложно-функционального блока системы на кристалле. Модуль SPI реализован в микроконтроллерах AVR семейства Classic фирмы «Atmel». Модуль SPI имеет два назначения. Через него может быть осуществлено программирование микроконтроллера (так называемый режим последовательного программирования). Вторым назначением интерфейса является организация высокоскоростного обмена данными между микроконтроллером и различными периферийными устройствами, такими как цифровые потенциометры ЦАП/АЦП, Flash ПЗУ и др.- Known SPI module for SPI serial peripheral interface (AV Evstifeev, AVR Microcontrollers of the Classic family of ATMEL company - 6th ed., Sr. - M .: Dodeka-XXI Publishing House, 2008, World Series electronics ”, pp. 273-344), adopted as a prototype for the claimed complex-functional unit of the system on a chip. The SPI module is implemented in AVR microcontrollers from Atmel's Classic family. The SPI module has two purposes. Through it, the microcontroller can be programmed (the so-called sequential programming mode). The second purpose of the interface is the organization of high-speed data exchange between the microcontroller and various peripheral devices, such as digital potentiometers, D / A converter, Flash ROM, etc.
Посредством этого интерфейса также может производиться обмен данными между несколькими микроконтроллерами AVR. При обмене данными по интерфейсу SPI микроконтроллер AVR может работать как в режиме Master, так и в режиме Slave. При этом пользователь может задать скорость передачи (четыре программируемых значения) и формат передачи (от младшего разряда к старшему или наоборот).Through this interface, data can also be exchanged between several AVR microcontrollers. When exchanging data via the SPI interface, the AVR microcontroller can operate both in the Master mode and in the Slave mode. At the same time, the user can set the transfer rate (four programmable values) and the transfer format (from low-order to high-order or vice versa).
Одна из проблем, которая стоит перед разработчиками устройств ввода-вывода состоит в том, чтобы максимально автоматизировать процесс обмена данными между абонентами сети и, тем самым, разгрузить вычислительную мощность центрального процессора (ЦП). Для этого устройства ввода-вывода снабжены дополнительными устройствами, которые бы могли взять у ЦП нагрузку на управление шиной и выполнение запрограммированной последовательности сообщений по шине. Это позволит высвободить ресурсы ЦП для другой работы. Так, известен контроллер шины (патент US 4,805,137), предназначенный для передачи данных согласно интерфейсу, описанному в стандарте MIL-STD- 1553В, dated 21 September 1978, "Department of defense interface standart for digital time division command/response multiplex data bus" (обозначение стандарта министерства обороны США для интерфейса цифровой шины данных с временным разделением команда/ответ). Данный стандарт описывает магистральный последовательный интерфейс с централизованным управлением, применяемый в системе электронных устройств («контроллер», «удаленный терминал» и «монитор»). Интерфейс MIL-STD-1553В функционирует асинхронно, в режиме «команда-ответ», при котором инициирование обмена информацией и управление передачей осуществляет только «контроллер» шины. Система из электронных устройств является системой реального времени, в которой «контроллер» и «удаленные терминалы» должны отвечать в строгих временных рамках и любое взаимодействие с ЦП ухудшает реакцию системы. Недостатком известного контроллера шины является то, что он лишь частично разгружает ЦП от некоторых задач управления шиной. Для этого в контроллер шины введен «блок команд», который является главным конечным автоматом и предназначен для управления перемещением данных между регистрами и другими модулями в контроллере шины в запрограммированной последовательности независимо от ЦП. Остановка работы «блока команд» возможна при вмешательстве ЦП. Известный контроллер шины для MIL-STD-1553В реализован на двухцелевой микросхеме, которая может выполнять функции как «контроллера», так и «удаленного терминала».One of the problems that confront developers of input-output devices is to maximally automate the process of exchanging data between network subscribers and, thus, relieve the processing power of the central processor (CPU). For this, the I / O devices are equipped with additional devices that could take the CPU load on the bus control and execution of the programmed sequence of messages on the bus. This will free up CPU resources for other work. Thus, a bus controller (US patent No. 4,805,137) is known, which is designed to transmit data according to the interface described in the standard MIL-STD-1553B, dated September 21, 1978, " designation of the US Department of Defense standard for a digital command data bus interface / command / response). This standard describes a centrally controlled backbone serial interface used in an electronic device system (“controller”, “remote terminal” and “monitor”). The MIL-STD-1553B interface functions asynchronously, in the command-response mode, in which only the bus “controller” initiates information exchange and transmission control. A system of electronic devices is a real-time system in which the “controller” and “remote terminals” must respond in strict time frames and any interaction with the CPU degrades the response of the system. A disadvantage of the known bus controller is that it only partially relieves the CPU from some bus management tasks. To do this, a “command block” is introduced into the bus controller, which is the main state machine and is designed to control the movement of data between registers and other modules in the bus controller in a programmed sequence, regardless of the CPU. The operation of the “command block” can be stopped when the CPU intervenes. Known bus controller for MIL-STD-1553B is implemented on a dual-purpose chip, which can perform the functions of both a "controller" and a "remote terminal".
Известно описание системы для реализации режима "Bus Mastering" периферийных устройств в компьютерной системе (патент US 5,905,912). Известная система предназначена для обеспечения автоматической передачи данных между компьютерной системой и ее периферийными устройствами. Система также предназначена для инициирования и завершения автоматической транзакции. Кроме того, система имеет возможность обрабатывать несколько транзакций без вмешательства ЦП компьютерной системы. Для реализации перечисленных задач система для режима "Bus Mastering" периферийных устройств в компьютерной системе (в частности, персональном компьютере) состоит из четырех основных элементов:A description of the system is known for implementing the "Bus Mastering" mode of peripheral devices in a computer system (US patent 5,905,912). The known system is designed to provide automatic data transfer between a computer system and its peripheral devices. The system is also designed to initiate and complete an automatic transaction. In addition, the system has the ability to process multiple transactions without the intervention of the computer system CPU. For the implementation of these tasks, the system for the "Bus Mastering" mode of peripheral devices in a computer system (in particular, a personal computer) consists of four main elements:
- DMA-контроллера (DMA controller), предназначенного для передачи данных в память компьютерной системы и из нее.- DMA-controller (DMA controller), designed to transfer data to the memory of the computer system and from it.
- Процессора списка (List processor), связанного с DMA-контроллером для програмирования DMA-контроллера, формирования и отправки командных сигналов в DMA-контроллер и получения статуса состояния DMA-контроллера после завершения передачи данных. Список дескрипторов хранится в памяти компьютерной системы. Элементы списка дескриптора описывают каждую передачу данных, которую процессор списка инициирует, контролирует и завершает. В качестве процессора списка может быть использован микроконтроллер или ЦП компьютера.- A list processor connected to the DMA controller for programming the DMA controller, generating and sending command signals to the DMA controller and obtaining the status of the DMA controller after the data transfer is completed. The list of descriptors is stored in the memory of the computer system. Descriptor list items describe every data transfer that the list processor initiates, controls, and terminates. A microcontroller or a computer CPU can be used as a list processor.
- Контроллера периферийного устройства (Device controller), связаного с DMA-контроллером и процессором списка и предназначенного для ответа на командные сигналы из процессора списка, передачи данных в и из DMA-контроллера и после завершения передачи данных возвращения статуса завершения в процессор списка. В качестве контроллера периферийного устройства может быть использован контроллер USB, контроллер IrDA, контроллер жесткого диска IDE. Использование конкретного контроллера зависит от контролируемого периферийного устройства.- The controller of the peripheral device (Device controller) connected to the DMA controller and the list processor, designed to respond to command signals from the list processor, transfer data to and from the DMA controller after the data transfer returns the completion status to the list processor. A USB controller, an IrDA controller, an IDE hard disk controller can be used as a peripheral controller. The use of a particular controller depends on the peripheral being monitored.
- Контроллера шины (Bus controller), связанного с DMA-контроллером и процессором списка. Контроллер шины реализует запрос передачи данных из памяти компьютерной системы в DMA-контроллер и процессор списка. Процессор списка направляет команды контроллеру периферийного устройства и получает статус завершения от контроллера периферийного устройства. DMA-контроллер передает блоки данных между памятью компьютерной системы и контроллером периферийных устройств. Недостатком описанной системы является то, что в ней не обеспечено детерминированное время доступа процессора списка к дескрипторам, находящимся в памяти компьютерной системы, и, следовательно, она не может быть использована в системах реального времени, где система должна реагировать в рамках требуемых жестко фиксированных временных диапазонах.- Bus controller associated with the DMA controller and processor list. The bus controller implements the request to transfer data from the memory of the computer system to the DMA controller and the list processor. The list processor sends commands to the peripheral device controller and receives the completion status from the peripheral controller. The DMA controller transfers data blocks between the memory of the computer system and the peripheral controller. The disadvantage of the described system is that it does not provide a deterministic access time of the list processor to descriptors stored in the memory of the computer system, and, therefore, it cannot be used in real-time systems where the system must respond within the required rigidly fixed time ranges. .
СФ-блок, описанный в данной заявке, является периферийным блоком СнК, предназначенной для использования в вычислительных машинах для систем управления физическими процессами (контроллерное оборудование, терминалы релейной защиты и автоматики и АСУ ТП), которые являются системами реального времени. Корректность функционирования систем реального времени определяется не только корректностью выполнения вычислений, но и временем, в которое получен требуемый результат. Если требования по времени не выполняются, то считается, что произошел отказ системы.The SF block described in this application is a peripheral SoC block intended for use in computers for physical process control systems (controller equipment, relay protection and automation terminals and process control systems), which are real-time systems. The correctness of the functioning of real-time systems is determined not only by the correctness of the calculations, but also by the time at which the desired result is obtained. If the time requirements are not met, the system is considered to have failed.
Цель изобретения является разработка периферийного интерфейсного СФ-блока для систем на кристалле класса микропроцессоров или микроконтроллеров, обеспечивающего передачу данных в соответствии с описанным в заявке протоколом. СФ-блок должен быть построен таким образом, чтобы максимально автоматизировать процесс обмена данными между электронными устройствами. СФ-блок должен обеспечивать детерминированное время реакции для возможности использования его в системах реального времени. СФ-блок должен обеспечить определенный уровень достоверности передаваемой информации. СФ-блок должен иметь возможность работать как в режиме ведущего устройства, так и в режиме ведомого устройства, а также в режиме монитор.The purpose of the invention is to develop a peripheral interface SF-block for systems on a chip of a class of microprocessors or microcontrollers, providing data transmission in accordance with the protocol described in the application. The SF block should be designed in such a way as to maximally automate the process of data exchange between electronic devices. The SF block must provide deterministic reaction time for its use in real-time systems. SF block must provide a certain level of reliability of the transmitted information. The SF block must be able to operate in both master mode and slave mode, as well as in monitor mode.
Технический результат достигается тем, что интерфейсный СФ-блок для СБИС типа система на кристалле выполнен таким образом, что он может работать как ведущим электронным устройством так и ведомым электронным устройством с системе электронных устройств, в которой осуществляется последовательный обмен данными по шине между ведущим электронным устройством и по меньшей мере двумя ведомыми электронными устройствами. СФ-блок содержит локальную память, в которой расположена таблица дескрипторов и область для хранения данных, DMA-контроллер, предназначенный для обмена данными между системной памятью СБИС и локальной памятью блока, контроллер шины, предназначенный для обмена данными между локальной памятью блока и шиной, обработчик списка дескрипторов, предназначенный для управления в соответствии с дескрипторами в локальной памяти работой DMA-контроллера и контроллера шины.The technical result is achieved by the fact that the interface SF block for VLSI type system-on-chip is designed in such a way that it can operate as a master electronic device and a slave electronic device with an electronic device system in which serial data is exchanged over the bus between the master electronic device and at least two slave electronic devices. The SF block contains a local memory in which the descriptor table and a storage area are located, a DMA controller for exchanging data between the VLSI system memory and the local block memory, a bus controller for exchanging data between the local block memory and the bus, a handler a list of descriptors designed to control, in accordance with the descriptors in the local memory, the operation of the DMA controller and the bus controller.
Краткое описание чертежей:Brief Description of the Drawings:
фиг. 1 - структурная схема системы, в которой абоненты подсоединены к общей линии связи типа «магистраль»;FIG. 1 is a block diagram of a system in which subscribers are connected to a common trunk link;
фиг. 2 - структурная схема блоков СнК;FIG. 2 - block diagram of SoC blocks;
фиг. 3 - структурная схема СФ-блока, на которой линиями показаны потоки передачи данных (управляющие сигналы не показаны);FIG. 3 is a block diagram of the SF block, in which data flow is shown by lines (control signals not shown);
фиг. 4 - передача логических нуля и единицы в коде «Манчестер-2»;FIG. 4 - transfer of logical zero and one in the Manchester-2 code;
фиг. 5 - синхросигнал пакета данных и синхросигнал контрольного пакета;FIG. 5 - data packet sync and control burst sync;
фиг. 6 - структура пакета данных (DATA);FIG. 6 - data packet structure (DATA);
фиг. 7 - структура контрольного пакета (CTRL);FIG. 7 - control package structure (CTRL);
фиг. 8 - структура информационного пакета (CTRL+DATA);FIG. 8 - information package structure (CTRL + DATA);
фиг. 9 - формат сообщений «записи данных в ведомое устройство»;FIG. 9 - the format of messages "write data to the slave device";
фиг. 10 - формат сообщений «широковещательное сообщение»;FIG. 10 - message format "broadcast message";
фиг. 11 - формат сообщений «чтение данных из ведомого устройства»;FIG. 11 - “read data from slave device” message format;
фиг. 12 - формат сообщений «невозможность ведомого устройства выдать запрашиваемые данные».FIG. 12 - the message format "the inability of the slave to issue the requested data."
Для того, чтобы осуществить обмен данными 1 (фиг. 1) по описанному в заявке протоколу использована система, в которой происходит обмен данными между абонентами (2, 3, 4) по шине 5. Для обмена данными достаточно, чтобы по меньшей мере один из абонентов содержал ведущее электронное устройство (Master) 6 (далее ведущее устройство) и по меньшей мере два абонента содержали по ведомому электронному устройству (Slave) 7 и 8 (далее ведомое устройство). Обмен данными в системе происходит по заданному циклу.In order to exchange data 1 (Fig. 1) according to the protocol described in the application, a system is used in which data is exchanged between subscribers (2, 3, 4) via
Для примера, в контроллере с программируемой логикой (ПЛК) абонентами 2, 3 и 4 выступают модуль центрального процессора, модуль ввода и/или модуль вывода, а в качестве шины 5 используется внутренняя цифровая шина ПЖ. На фиг. 1 также показаны устройства полевого (нижнего) уровня, а именно датчик 9 частоты вращения, подключенный к модулю ввода 3-й двигатель 10, подключенный к модулю вывода 4. Также показанная на фиг. 1 система обмена данными между абонентами содержит абонент 11 с электронным устройством монитор (Monitor) 12, предназначенным для «прослушивания» трафика на шине 5. В ПЛК таким абонентом может быть резервный модуль центрального процессора. Только один из двух резервных модулей центральных процессоров ПЛК может быть активен одновременно. При выходе из строя модуля центрального процессора с ведущим устройством (Master) другой модуль центрального процессора с устройством монитор (Monitor) берет инициирование обмена информацией по шине на себя. В качестве абонента могут выступать интеллектуальный датчик и/или интеллектуальный электропривод 13, подключенный через ведомое электронное устройство 14 непосредственно к шине 5. В качестве ведущего устройства 6, ведомого устройства 7 и в качестве устройства монитор 12 может быть использован описанный в данной заявке СФ-блок, который является периферийным интерфейсным блоком СнК (SoC) 15. СФ-блок поддерживает работу и с дублированными шинами 5 и 16.For example, in a programmable logic controller (PLC),
СнК 15 (фиг. 2) содержит следующие основные функциональные узлы: один или несколько цетральных процессоров (CPU) 17, внутреннюю системную память (SRAM) 18, устройства ввода-вывода 19 (одно или несколько устройств ввода-вывода это описываемый в заявке СФ-блок 19), и контроллер памяти (МС) 20, предназначенный для управления вводом и выводом данных из внешней памяти (SDRAM) 21. Основные функциональные узлы соединены друг с другом блоком (блоками) межсоединений (INTERCONNECT UNIT(S)) 22. Центральный процессор 17 является центральным устройством обработки и управления общей работой СнК.SoC 15 (Fig. 2) contains the following main functional units: one or several central processors (CPU) 17, internal system memory (SRAM) 18, input-output devices 19 (one or several input-output devices described in the SF-1 application unit 19), and a memory controller (MS) 20, designed to control the input and output of data from external memory (SDRAM) 21. The main functional units are interconnected by interconnects block (blocks) (INTERCONNECT UNIT (S)) 22. Central processor 17 is the central processing and control unit the work of SoC.
СФ-блок 19 может работать в одном из трех режимов: «Ведущий», «Ведомый», «Монитор».The SF-
СФ-блок 19 (фиг. 3) содержит обработчик 23 списка дескрипторов (далее ОСД) с DMA-контроллером 24, массив контрольно-статусных регистров 25, локальную память 26, контроллер 27 шины, блок 28 низкоуровневого ввода-вывода. В состав СФ-блока входят мультиплексоры (не обозначенные позицией). СФ-блок может работать как с одной шиной 5, так и поддерживает работу с дублированными шинами 5 и 16.The SF block 19 (Fig. 3) contains a
В качестве шины 5 может быть использована M-LVDS - технология низковольтной дифференциальной передачи сигналов малых напряжений, описанная в международном промышленном стандарте TIA/EIA-899-2002 (Electrical Characteristics of Multipoint-Low-Voltage Differential Signaling (M-LVDS) Interface Circuitsfor Multipoint Data Interchange). Стандарт Multipoint LVDS (M-LVDS) разработан для многоточечного двунаправленного обмена информацией. Для этого осуществляют полудуплексную передачу данных по одной шине.As
Обмен данными СФ-блока с основными функциональными узлами СнК 15 осуществляется по системным шинам AXI 29 и/или АРВ 30.Data exchange of the IP-block with the main functional units of the
Локальная память 26 размером 8 Кб с организацией 2048x32 размещена внутри СФ-блока. При работе СФ-блока в качестве ведущего устройства доступ ОСД 23 к дескрипторам занимает 1 такт. Это обеспечивает детерминированное время получения задания (управляющей информации), что имеет большое значение для систем реального времени.Local memory 26 of 8 KB in size with the organization of 2048x32 is located inside the SF block. When the SF block is used as the master device, the access of the OLD 23 to the descriptors takes 1 clock. This provides a deterministic task acquisition time (control information), which is of great importance for real-time systems.
В зависимости от режима работы СФ-блока локальная память имеет разную организацию. В режиме «Ведущий» в локальной памяти 26 расположены таблица 31 дескрипторов и область памяти 32 для данных. Область памяти 32 для данных предназначена для промежуточного хранения подлежащих передаче и принятых данных.Depending on the operation mode of the SF block, local memory has a different organization. In the “Master” mode, the table 31 of descriptors and the
В таблице 31 дескрипторов содержится:Table 31 of the descriptors contains:
- управляющая информация для формирования транзакции на шине;- control information for forming a transaction on the bus;
- адрес буфера данных в системной памяти;- the address of the data buffer in system memory;
- результат выполнения транзакции (обновляется после выполнения транзакции).- the result of the transaction (updated after the transaction).
В дескриптор системное ПО заносит такие данные как адреса ведомых, номера адресных пространств, размеры адресных пространств, период опроса конкретного адресного пространства конкретного ведомого устройства, направление операции (чтение/запись), тип операции (пространство данных или пространство конфигурации), маска прерывания по окончанию обмена по шине данными из текущего дескриптора и период цикла обмена. При создании таблицы дескрипторов необходимо, чтобы в локальной памяти осталось достаточно места для пакета данных максимальной длины.In the descriptor, the system software records such data as slave addresses, address space numbers, address space sizes, polling period of a specific address space of a specific slave, direction of operation (read / write), type of operation (data space or configuration space), end-of-interrupt mask data exchange on the bus from the current descriptor and the period of the exchange cycle. When creating a descriptor table, it is necessary that there is enough space in the local memory for a data packet of maximum length.
В режиме «Ведомый» в локальной памяти расположены таблица описания адресных пространств и адресное пространство - область памяти для хранения полезных данных.In the “Slave” mode, the table of address space description is located in local memory, and the address space is a memory area for storing useful data.
*Резерв - признак зарезервированных битов, логическое значение которых разработчик может задать самостоятельно.* Spare - a sign of reserved bits, the developer can set the logical value independently.
*ADP - признак адаптивного чтения полезной информации. Занимает один бит слова. Изменение значения данного бита возможно в типе сообщения «чтение данных из ведомого устройства». Значение данного бита изменяет ведомое устройство в отправляемом ответном информационном пакете, если в адресном пространстве реально содержится меньшее количество слов полезных данных, чем запросило ведущее устройство.* ADP - a sign of adaptive reading of useful information. Takes one bit of a word. Changing the value of this bit is possible in the message type reading data from the slave device. The value of this bit changes the slave device in the sent information packet, if the address space actually contains fewer words of useful data than the master requested.
Блок 28 обеспечивает базовый функционал ввода и вывода данных по шине 5. Функционал ввода и вывода блока 28 не меняется в зависимости от режима СФ-блока. Блок 28 содержит приемники 33 и 34, передатчик 35, теневые FIFO буферы 36 и 37, детектор (обработчик) 38 ошибок шины, мультиплексор 39 выходов FIFO буферов и блок 40 контроля работоспособности шин. Данные, поступившие с шины 5 и/или шин 5 и 16, попадают в приемники 33 и 34, а затем в FIFO буферы 36 и 37. Размер FiFO буфера 256 слов. После окончания приема данных детектор 38 ошибок шины производит анализ ошибок и далее используются данные из того FIFO буфера, в процессе приема у которого не возникало ошибок. Имеется возможность продиагностировать следующие ошибки: ошибки CRC, ошибки Parity bit, ошибки Манчестерского кода и ошибки в процессе передачи данных, вызванные отказом драйверов шин. Блок контроля работоспособности шин выполняет свою функцию путем сравнения передаваемых и получаемых данных.Block 28 provides basic input and output functionality for
ОСД 23 производит обработку строк из таблицы дескрипторов. Содержит DMA - контроллер 24 для обмена данными между локальной и системной памятью. Управляет работой DMA-контроллера 24 и работой контроллера 27 шины. ОСД 23 выполнен с возможностью работы как с "соблюдением цикла шины" (временной интервал, за который должен произойти один проход по всей таблице дескрипторов), так и "без отсутствия слежения за циклом шины". При "соблюдении цикла шины", если проход по всей таблице дескрипторов осуществился раньше конца цикла шины, СФ-блок переходит в режим ожидания с запросом прерывания. В случае, когда время обработки дескрипторов превысило время цикла шины, СФ-блок запрашивает прерывание, при этом ОСД продолжает работу, а отсчет нового цикла шины начнется, как только начнется обработка первого дескриптора. "Без отсутствия слежения за циклом шины" ОСД переходит к обработке первого дескриптора сразу после окончания обработки последнего. Включение и выключение ОСД происходит только после окончания обработки текущей транзакции.The
Контроллер 27 шины реализует логику режимов работы «Ведущий», «Ведомый» или «Монитор». Контроллер 27 шины производит передачу данных между блоком 28 и локальной памятью 26, формирует контрольные пакеты, производит обновление регистров статистики.The bus controller 27 implements the logic of the Master, Slave or Monitor modes. The bus controller 27 transfers data between block 28 and local memory 26, forms control packets, updates statistics registers.
Работа СФ-блока в режиме «Ведущий»: системное ПО формирует таблицу дескрипторов в локальной памяти и производит настройку СФ-блока. По запуску ОСД 23 по порядку вычитывает и обрабатывает дескрипторы из локальной памяти. По «управляющей информации» из дескриптора ОСД 23 отдает соответствующие команды DMA-контроллеру 24. Параллельно с этим контроллер 27 шины ожидает сигналы от ОСД 23 на «запись» или «чтение» данных в ведомое устройство. При получении такой команды от ОСД 23 контроллер 27 шины выполняет последовательность действий, соответствующих типу запроса. В случае «записи» данных в ведомое устройство выполняются следующие действия: с помощью DMA-контроллера происходит загрузка данных, принимаемых по системной шине AXI, в локальную память. Контроллер 27 шины читает данные из локальной памяти и предает их в шину. По завершению передачи данных контроллер 27 шины информирует об этом ОСД 23 и переходит в режим ожидания новой команды. После завершения обработки дескриптора «управляющая информация» ОСД 23 производит обновление дескриптора «результат выполнения транзакции» в локальной памяти и переходит к обработке следующего дескриптора. Таким образом, можно проследить следующий поток данных: системная шина - DMA - локальная память - контроллер шины.The work of the SF-block in the “Master” mode: the system software generates a table of descriptors in the local memory and configures the SF-block. By launching the
В случае «чтения» данных из ведомого устройства выполняются следующие действия: контроллер 27 шины читает данные с шины и передает их в локальную память, откуда с помощью DMA-контроллера 24 данные передаются в системную шину AXI. По завершению передачи данных из локальной памяти контроллер 27 шины информирует об этом ОСД 23 и переходит в режим ожидания новой команды.In the case of “reading” the data from the slave, the following actions are performed: the bus controller 27 reads the data from the bus and transfers them to the local memory, from where the data is transferred to the AXI system bus using the
После завершения обработки дескриптора «управляющая информация» ОСД 23 производит обновление дескриптора «результат выполнения транзакции» в локальной памяти и переходит к обработке следующего дескриптора. Таким образом, можно проследить следующий поток данных: шина - контроллер шины - локальная память - DMA - системная шина.After the processing of the “control information” descriptor is completed, the
Таким образом, системное ПО в начале работы однократно инициализирует СФ-блок, после этого СФ-блок без вмешательства системного ПО производит каждый цикл обмена данными по шине, перекладывая полученные данные в системную память. Таким образом, обеспечивается возможность автоматизировать работу СФ-блока и, тем самым, разгрузить (высвободить) ресурсы центрального процессора СнК для другой работы.Thus, at the beginning of work, the system software initializes the SF-block once, then the SF-block, without the intervention of the system software, performs each cycle of data exchange over the bus, transferring the data to the system memory. Thus, it is possible to automate the work of the SF-block and, thereby, unload (release) the resources of the central SoC processor for other work.
После окончания обработки таблицы дескрипторов может быть сформировано прерывание, после которого возможно обновление данных таблицы дескриптора системным ПО.After the end of processing the descriptor table, an interruption can be formed, after which it is possible to update the descriptor table data with the system software.
Работа СФ-блока в режиме «Ведомого»: СФ-блок в режиме «Ведомого» реализует логику доступа к своим адресным пространствам посредством запросов по шине. Адресное пространство - область памяти, находящаяся в локальной памяти и содержащая полезные данные. Каждое адресное пространство описано в таблице описания адресных пространств. Системное ПО в начале работы однократно инициализирует СФ-блок, после чего транзакции приема или передачи данных проводятся в автоматическом режиме без участия системного ПО. Доступ к локальной памяти возможен только через шину АРВ. В режиме ведомого ОСД не активен и обмен данными посредством DMA-контроллера недоступен. По запуску контроллер 27 шины ожидает сигналы приема контрольного/информационного пакета от блока 28, после чего обрабатывает пакет и обращается в локальную память по адресу страницы равному номеру адресного пространства данных из контрольного пакета. По этому адресу в локальной памяти лежит описание запрашиваемого адресного пространства. Одно из его полей "Memory address" - адрес первого слова данных в локальной памяти, соответствующий этому адресному пространству. Если запрос был на запись, то происходит запись приходящих данных по этому адресу. Если запрос был на чтение, то происходит чтение данных из этого адреса. После окончания обработки контрольного/информационного пакета может быть вызвано прерывание, по которому происходит обновление данных системным ПО.Work of the SF block in the Slave mode: The SF block in the Slave mode implements the logic of access to its address spaces via bus queries. The address space is a memory area located in local memory and containing useful data. Each address space is described in the address space description table. The system software at the start of work once initializes the SF block, after which the data transfer or receive transactions are carried out automatically without the involvement of the system software. Access to local memory is possible only via the ARV bus. In slave mode, the DSD is not active and data exchange via the DMA controller is not available. Upon launch, the bus controller 27 waits for receiving a control / information packet from block 28, after which it processes the packet and contacts the local memory at the page address equal to the data address space number from the control packet. At this address in the local memory is the description of the requested address space. One of its fields "Memory address" is the address of the first data word in the local memory, corresponding to this address space. If the request was for recording, then incoming data is recorded at this address. If the request was read, then data is read from this address. After the processing of the control / information packet is completed, an interruption may be triggered, according to which the system software updates data.
Работа СФ-блока в режиме «Монитор»: СФ-блок в режиме «Монитора» выполняет функцию сбора и записи в системную память всего траффика, идущего по шине. Производится запись контрольных пакетов и пакетов данных. Каждый пакет, приходящий с шины, дополняется специальным дескриптором, идущим перед данными, и записывается в системную память. При этом записываются только информационные слова, слова CRC отбрасываются. В память записываются только те пакеты, при приеме которых не возникло ошибок. При возникновении ошибок в процессе приема принимаемый пакет отбрасывается, и будет выставлен соответствующий флаг. Работа в режиме «Монитора» похожа на работу в режиме «Ведущий» с использованием внеочередных дескрипторов. В режиме «Монитор» ОСД 23 имеет такой же функционал, как и в режиме «Ведущий».The work of the SF-block in the “Monitor” mode: The SF-block in the “Monitor” mode performs the function of collecting and writing to the system memory of all traffic going on the bus. The control and data packets are recorded. Each packet coming from the bus is supplemented with a special descriptor that goes before the data and is written to the system memory. In this case, only informational words are recorded, the words CRC are discarded. Only those packets are written to the memory, with the reception of which no errors occurred. If errors occur in the process of receiving the received packet is discarded, and the corresponding flag will be set. Working in the Monitor mode is similar to working in the Master mode using extraordinary descriptors. In the “Monitor” mode, the
В СФ-блоке реализована возможность изменения длины CRC (регистр длины CRC полинома), начального значения CRC (регистр начального значения CRC) и полинома CRC (регистр значения CRC полинома) в режиме описанного в заявке протокола TSI.In the SF block, the possibility of changing the length of a CRC (CRC polynomial length register), initial CRC value (initial CRC value register) and CRC polynomial (polynom CRC value register) is implemented in the mode described in the TSI protocol application.
Вся информация по шине передается в коде «Манчестер-2». Этот биполярный фазоманипулированный код имеет нулевую постоянную составляющую, что очень важно в применениях с высокой скоростью передачи. Кодирование 0 и 1 производится не уровнем, а фронтом сигнала в середине тактового интервала (фиг. 4), что позволяет обеспечить побитную синхронизацию передатчика и приемника по передаваемой информации в широком диапазоне отклонения несущей частоты. Определены два вида синхросигнала (фиг. 5), которые позволяют аппаратно, следовательно быстро, определять и отличать начало пакета данных от контрольного пакета.All information on the bus is transmitted in the code "Manchester-2". This bipolar phase-manipulated code has a zero DC component, which is very important in high-speed transmission applications.
Пакет данных (DATA) (фиг. 6) имеет формат одного или более 32 битных слов данных, завершает которые 32 битное контрольное слово. Перед ними расположен синхросигнал (3 бита), полярность первой половины которого отрицательна, а вторая половина - положительная. Слова данных (полезная информация) - собственно данные, которыми обмениваются между собой абоненты и для передачи которых используется пакет данных. Слово контрольной суммы CRC-32 предназначено для проверки целостности всех передаваемых в пакете данных. Используется расчет CRC-32.A data packet (DATA) (FIG. 6) has a format of one or more 32 bit data words, which completes the 32 bit control word. In front of them is a clock signal (3 bits), the polarity of the first half of which is negative, and the second half is positive. Data words (useful information) - the actual data exchanged between subscribers and for the transmission of which a data packet is used. The CRC-32 checksum word is intended to verify the integrity of all data transmitted in a packet. The CRC-32 calculation is used.
Контрольный пакет (фиг. 7) имеет формат из 32 битного информационного слова и 32 битного слово контрольной суммы. Перед ними расположен синхросигнал (3 бита), полярность первой половины которого положительна, а вторая половина - отрицательная. Контрольный пакет может выполнять функцию начала и конца сеанса связи, подтверждения приема информационного пакета, запроса информационного пакета. Управляющие данные это данные, необходимые абоненту для определения выполнения им заданий и указания своего состояния.The check package (Fig. 7) has a format of 32 bit information word and 32 bit word of checksum. Before them is a clock signal (3 bits), the polarity of the first half of which is positive, and the second half is negative. The control package can perform the function of the beginning and end of the communication session, the confirmation of the receipt of the information packet, the request for the information packet. Control data is the data needed by the subscriber to determine whether they have completed tasks and indicate their status.
Пакет (фиг. 8), включающий контрольный пакет и пакет данных, называется информационным пакетом (CTRL+DATA).A packet (Fig. 8), including a control packet and a data packet, is called an information packet (CTRL + DATA).
Протокол поддерживает два типа адресных пространств у ведомых устройств:The protocol supports two types of address spaces on the slaves:
- основное пространство (обмен целевой информацией);- main space (target information exchange);
- конфигурационное пространство (управление работой ведомого устройства).- configuration space (slave control).
Адресуется на шине до 255 электронных устройств (и один адрес для широковещательных обменов). В каждом устройстве адресуется до 256 адресных пространств, размер которых от 1 до 256 слов в основном адресном пространстве и 1 слово в конфигурационном пространстве. Размер одного слова равен 32 бита.Up to 255 electronic devices are addressed by bus (and one address for broadcast exchanges). Each device addresses up to 256 address spaces, the size of which is from 1 to 256 words in the main address space and 1 word in the configuration space. The size of one word is 32 bits.
Рассмотрим возможные форматы сообщений, которыми обмениваются ведущее (Master) и ведомое (Slave) устройства путем передачи друг другу контрольных и информационных пакетов:Consider the possible message formats that are exchanged between the master (Master) and slave (Slave) devices by sending each other control and information packets:
- Формат 1 «запись данных в ведомое устройство» (фиг. 9).-
- Формат 2 «широковещательное сообщение» (фиг. 10).-
- Формат 3 «чтение данных из ведомого устройства» (фиг. 11).-
- Формат 4 «невозможность ведомого устройства выдать запрашиваемые данные при чтение данных из ведомого устройства» (фиг. 12).- Format 4 "impossibility of the slave device to issue the requested data when reading data from the slave device" (Fig. 12).
Рассмотрим основные сообщения (фиг. 9-12) между ведущим и ведомыми электронными устройствами.Consider the main messages (Fig. 9-12) between the master and the slave electronic devices.
Формат 1 предназначен для передачи данных от ведущего устройства к ведомому устройству - «запись данных в ведомое устройство (Slave)» (фиг. 9). Ведущее устройство передает информационный пакет (CTRL+DATA). Ведомое устройство принимает информационный пакет, просчитывает контрольные суммы (CRC-32) 32-битного слова служебной информации и 32-битного слова (слов) данных (полезной информации) и сравнивает их значения со значениями контрольных сумм, полученных от ведущего устройства. В зависимости от результата сравнения контрольных сумм ведомое устройство либо игнорирует запрос на запись, либо принимает к исполнению. В любом случае ведомое устройство передает ведущему устройству ответный контрольный пакет (CTRL), в котором разряды [2:0] "control word" (таблица 4) имеют значения, соответствующие "признакам состояния" транзакции.
Формат 2 предназначен для передачи данных от ведущего устройства всем ведомым устройствам - «широковещательное сообщение» (фиг. 10). Ведущее устройство передает информационный пакет (CTRL+DATA) (в поле "Terminal address" 0xFF - широковещательный адрес), а ведомые устройства принимают информационный пакет, просчитывают контрольные суммы (CRC-32) 32-битного слова служебной информации и 32-битного слова (слов) данных (полезной информации) и сравнивают их значения со значениями контрольных сумм, полученных от ведущего устройства. В зависимости от результата сравнения контрольных сумм ведомые устройства либо игнорируют запрос на запись, либо принимают к исполнению. В этом формате сообщений ведущее устройство после передачи информационного пакета не ожидает "ответного пакета" от ведомых устройств.
Формат 3 предназначен для получения данных ведомого устройства ведущим устройством - «чтение данных из ведомого устройства (Slave)» (фиг. 11). Ведущее устройство передает ведомому устройству контрольный пакет (CTRL) и освобождает шину. Адресуемое ведомое устройство принимает контрольный пакет, просчитывает контрольную сумму CRC-32 32-битного слова служебной информации и сравнивает ее значение со значением контрольной суммы, полученной от ведущего устройства. В зависимости от результата сравнения контрольных сумм ведомое устройство либо игнорирует запрос на чтение, либо принимает к исполнению. При успешном сравнении ведомое устройство захватывает шину и передает ведущему устройству ответный информационный пакет (CTRL+DATA). Ведущее устройство принимает ответный информационный пакет от ведомого устройства и просчитывает контрольные суммы CRC-32 32-битного слова служебной информации и слова (слов) данных (полезной информации) и сравнивает их значения со значениями контрольных сумм, полученных от ведомого устройства. При успешном сравнении контрольных сумм информационный пакет считается принятым - чтение данных из ведомого устройства завершенным.
Формат 4 «невозможно выдать запрашиваемые данные» (фиг. 12) является частным случаем формата 3, при котором происходит «чтение данных из ведомого устройства (Slave)». Ведущее устройство передает ведомому устройству контрольный пакет (CTRL). Ведомое устройство принимает контрольный пакет, просчитывает его контрольную сумму и сравнивает ее значение со значением контрольной суммы, полученной от ведущего устройства. При несовпадении контрольных сумм ведомое устройство игнорирует запрос на чтение и передает ведущему устройству ответный контрольный пакет (CTRL), в котором разряды [2:0] "control word" (таблица 3) имеют значения, соответствующие "признакам состояния" транзакции.Format 4 "it is impossible to issue the requested data" (Fig. 12) is a special case of
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2018129755A RU2691886C1 (en) | 2018-08-15 | 2018-08-15 | Complex-functional unit for vlsi-type system on chip |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2018129755A RU2691886C1 (en) | 2018-08-15 | 2018-08-15 | Complex-functional unit for vlsi-type system on chip |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2691886C1 true RU2691886C1 (en) | 2019-06-18 |
Family
ID=66947962
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2018129755A RU2691886C1 (en) | 2018-08-15 | 2018-08-15 | Complex-functional unit for vlsi-type system on chip |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2691886C1 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5905912A (en) * | 1996-04-08 | 1999-05-18 | Vlsi Technology, Inc. | System for implementing peripheral device bus mastering in a computer using a list processor for asserting and receiving control signals external to the DMA controller |
RU2380841C2 (en) * | 2004-08-05 | 2010-01-27 | Роберт Бош Гмбх | COMMUNICATION MODULE FOR FlexRay NETWORK |
US7835380B1 (en) * | 2004-10-19 | 2010-11-16 | Broadcom Corporation | Multi-port network interface device with shared processing resources |
WO2014022901A2 (en) * | 2012-08-10 | 2014-02-13 | Sabia Experience Tecnologia S.A. | Method and system implemented by a collaborative distributed computational network, and related devices |
RU2584471C1 (en) * | 2014-12-30 | 2016-05-20 | Некоммерческое Партнерство "Центр Прикладных Исследований Компьютерных Сетей" | DEVICE FOR RECEIVING AND TRANSMITTING DATA WITH THE POSSIBILITY OF INTERACTION WITH OpenFlow CONTROLLER |
-
2018
- 2018-08-15 RU RU2018129755A patent/RU2691886C1/en active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5905912A (en) * | 1996-04-08 | 1999-05-18 | Vlsi Technology, Inc. | System for implementing peripheral device bus mastering in a computer using a list processor for asserting and receiving control signals external to the DMA controller |
RU2380841C2 (en) * | 2004-08-05 | 2010-01-27 | Роберт Бош Гмбх | COMMUNICATION MODULE FOR FlexRay NETWORK |
US7835380B1 (en) * | 2004-10-19 | 2010-11-16 | Broadcom Corporation | Multi-port network interface device with shared processing resources |
WO2014022901A2 (en) * | 2012-08-10 | 2014-02-13 | Sabia Experience Tecnologia S.A. | Method and system implemented by a collaborative distributed computational network, and related devices |
RU2584471C1 (en) * | 2014-12-30 | 2016-05-20 | Некоммерческое Партнерство "Центр Прикладных Исследований Компьютерных Сетей" | DEVICE FOR RECEIVING AND TRANSMITTING DATA WITH THE POSSIBILITY OF INTERACTION WITH OpenFlow CONTROLLER |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113542090B (en) | EtherCAT master-slave station integrated network bridge controller and control method | |
CN109857685B (en) | MPU and FPGA extended multi-serial port implementation method | |
US7020076B1 (en) | Fault-tolerant communication channel structures | |
US5664101A (en) | Intelligent industrial local area network module for use in a distributed control system | |
US4897833A (en) | Hierarchical arbitration system | |
JP2584957B2 (en) | Host-directed device | |
EP0196911A2 (en) | Local area networks | |
EP0064347A1 (en) | Local network interface for use in multi-station word processing system and a data communications network | |
CN106959935B (en) | Method compatible with I2C communication and IPMB communication | |
US4642630A (en) | Method and apparatus for bus contention resolution | |
CN105786734B (en) | Method, expanding unit, peripheral equipment and the system of data transmission | |
CN101106504A (en) | Distributed communication system for intelligent independent robot based on CAN bus | |
CN104484260B (en) | Simulation monitoring circuit based on GJB289 bus interface SoC (system on a chip) | |
RU2691886C1 (en) | Complex-functional unit for vlsi-type system on chip | |
JPH0424702A (en) | Control system | |
CN114615106B (en) | Ring data processing system, method and network equipment | |
CN110659242A (en) | MIL-STD-1553B bus protocol controller | |
CN210380890U (en) | Communication system and SIS system of Modbus equipment | |
RU2705421C1 (en) | Method of transmitting data over a bus, a communication system for realizing said method and an automatic protection device for preventing an emergency situation at a control object | |
CN104484307B (en) | A kind of frequency reducing method in the FPGA prototype verification based on Node Controller | |
CN112579490A (en) | Programmable electronic building block connecting bus | |
EP0193305A2 (en) | System interface for coupling standard microprocessor to a communications adapter | |
JPH08123770A (en) | Data communication control equipment | |
JPH0619838A (en) | Optical back plane | |
US9081743B2 (en) | Communication system and communicaton method |