RU2485580C1 - Communication device for ds-link galvanic isolation - Google Patents
Communication device for ds-link galvanic isolation Download PDFInfo
- Publication number
- RU2485580C1 RU2485580C1 RU2012111031/08A RU2012111031A RU2485580C1 RU 2485580 C1 RU2485580 C1 RU 2485580C1 RU 2012111031/08 A RU2012111031/08 A RU 2012111031/08A RU 2012111031 A RU2012111031 A RU 2012111031A RU 2485580 C1 RU2485580 C1 RU 2485580C1
- Authority
- RU
- Russia
- Prior art keywords
- output
- input
- data
- unit
- synchronization
- Prior art date
Links
Images
Landscapes
- Communication Control (AREA)
Abstract
Description
Изобретение представляет собой коммуникационное устройство (систему) для гальванической развязки DS-линка, расширяющее возможности применения коммуникационного интерфейса SpaceWire [ECSS Standard ECSS-E-50-12А, "SpaceWire, Links, Nodes, Routers and Networks", Issue 1, European Cooperation for Space Data Standardization, February 2003] и относится к цифровой вычислительной технике, а именно к высокоскоростным коммуникационным системам для высокопроизводительных многопроцессорных вычислительных систем с распределенной обработкой информации и локальным вычислительным сетям. Данное устройство предназначено, в частности, для использования при создании многопроцессорных вычислительных систем с распределенной архитектурой, используемых во встраиваемых применения, в том числе в распределенных бортовых вычислительных комплексах, а также при построении бортовых локальных сетей.The invention is a communication device (system) for galvanic isolation of the DS-link, expanding the possibilities of using the communication interface SpaceWire [ECSS Standard ECSS-E-50-12A, "SpaceWire, Links, Nodes, Routers and Networks",
Известен параллельный коммуникационный интерфейс, используемый в коммутаторе LINK-портов для передачи и коммутации данных, представленных в виде байтов [Патент РФ на изобретение RU №2405196 C1. Коммутатор LINK-портов. Опубл. 27.11.2010 Бюл. №33, заявл. 04.05.2009, G06F 15/173 (2006.01)]. Задачей коммутатора является коммутация байтовых данных, поступающих по параллельному интерфейсу в виде сообщений, длина которых задается в заголовке сообщения. Коммутатор LINK-портов обеспечивает множественность путей доставки сообщений, исключение зацикливания сообщений и исключение блокировки сообщений за счет введения механизма таймаутов.Known parallel communication interface used in the switch LINK ports for transmitting and switching data presented in bytes [RF Patent for the invention RU No. 2405196 C1. LINK Port Switch Publ. 11/27/2010 Bull. No. 33, declared 05/04/2009, G06F 15/173 (2006.01)]. The task of the switch is to switch byte data arriving on the parallel interface in the form of messages, the length of which is specified in the message header. The LINK port switch provides multiple message delivery paths, eliminating message looping and blocking messages by introducing timeout mechanisms.
Недостатком данного подхода является необходимость использования сложного протокола коммутации сообщений, при котором через параллельный коммуникационный интерфейс передается значительный объем служебной информации в заголовке сообщения, что определяет высокий процент накладных расходов, снижающий пропускную способность коммуникационного интерфейса при передаче собственно данных. Кроме того, параллельный коммуникационный интерфейс имеет ограничение по длине кабеля, используемого только для соединения близко расположенных устройств на расстояниях, не превышающих нескольких метров.The disadvantage of this approach is the need to use a complex message switching protocol, in which a significant amount of service information in the message header is transmitted through the parallel communication interface, which determines a high percentage of overhead that reduces the throughput of the communication interface when transmitting the actual data. In addition, the parallel communication interface has a limit on the length of the cable used only for connecting closely located devices at distances not exceeding several meters.
В качестве другого аналога из уровня техники известен коммуникационный интерфейс, описанный в стандарте FibreChannel [Fibre Channel - Physical Interfaces - 2 (FC-PI-2), ISO 1.25.13.], в котором при передаче данных по последовательному коммуникационному каналу используется преобразование 8b/10b для представления восьмибитовых символов в виде 10-битовых кодов. В устройствах, взаимодействующих через данный коммуникационный интерфейс каждые восемь битов исходной последовательности заменяются 10 битами в соответствии с определенными правилами. В результате для 256 возможных комбинаций из восьми входных битов получается 1024 возможные комбинации для 10 выходных битов. Но разрешенными из этих 1024 комбинаций являются только 256, а остальные - запрещенными. Как правило, такая избыточность используется для того, чтобы повысить помехоустойчивость кодирования (если при приеме обнаруживается запрещенная последовательность, то распознается ошибка передачи). Кроме того, такая избыточность улучшает самосинхронизирующие свойства кода, поскольку исключает возможность появления в цепочке передаваемых битов длинных последовательностей нулей и единиц, что способствует, в конечном счете, повышению надежности работы устройства. При приеме данных осуществляется декодирование 8b/10b, то есть каждой группе из 10 битов сопоставляется восемь битов.As another analogue from the prior art, a communication interface is described as described in the FiberChannel standard [Fiber Channel - Physical Interfaces - 2 (FC-PI-2), ISO 1.25.13.], Which uses the 8b transform when transmitting data over a serial communication channel / 10b to represent eight-bit characters as 10-bit codes. In devices that communicate via this communication interface, every eight bits of the original sequence are replaced with 10 bits in accordance with certain rules. As a result, for 256 possible combinations of eight input bits, 1024 possible combinations for 10 output bits are obtained. But of these 1024 combinations, only 256 are allowed, and the rest are forbidden. As a rule, such redundancy is used in order to increase coding noise immunity (if a forbidden sequence is detected during reception, a transmission error is recognized). In addition, such redundancy improves the self-synchronizing properties of the code, since it eliminates the possibility of long sequences of zeros and ones appearing in the transmitted bit chain, which ultimately helps to increase the reliability of the device. When data is received, 8b / 10b decoding is performed, that is, eight bits are mapped to each group of 10 bits.
Известно устройство преобразования 8b/10b [US Patent 06977 5 99 B2. 8B/10B encoding and decoding for high speed applications, Apr 30, 2002]. Устройство содержит блок кодирования 8b/10b, выходной 10-разрядный сдвиговый регистр, обеспечивающий преобразование параллельных 10-битовых кодов в последовательный поток битов, выдаваемых в коммуникационный интерфейс, входной 10-разрядный сдвиговый регистр, обеспечивающий обратное преобразование последовательного потока битов в параллельные 10-битовые коды и блок декодирования 8b/10b. Устройство работает на локальной частоте в 10 раз меньшей частоты передачи битов в коммуникационном интерфейсе. Кодирование 8b/10b позволяет применять данный коммуникационный интерфейс для передачи данных в виде последовательности битов по одной линии в каждом направлении на большие расстояния по электрическим кабелям, достигающим несколько сотен метров, а по волоконно-оптическим кабелям - на расстояния порядка километра.A conversion device 8b / 10b is known [US Patent 06977 5 99 B2. 8B / 10B encoding and decoding for high speed applications, Apr 30, 2002]. The device contains an 8b / 10b encoding unit, an output 10-bit shift register that converts parallel 10-bit codes to a serial bit stream output to the communication interface, an input 10-bit shift register that provides reverse conversion of a serial bit stream to parallel 10-bit codes and decoding unit 8b / 10b. The device operates at a
Недостаток устройств, использующих этот коммуникационный интерфейс для передачи кадров, состоит в том, что при этом в заголовке кадра передается значительный объем служебной информации. В случаях, когда в заголовке кадра задана малая длина поля данных, то этот заголовок определяет высокий процент накладных расходов, снижающий пропускную способность коммуникационного интерфейса при передаче собственно данных.A disadvantage of devices using this communication interface for frame transmission is that a significant amount of overhead information is transmitted in the frame header. In cases where a small data field length is specified in the frame header, this header defines a high percentage of overhead that reduces the throughput of the communication interface when transmitting the actual data.
Известен последовательный коммуникационный интерфейс - DS-линк, реализующий способ DS-кодирования (Data-Strobe coding) в соответствии со стандартом SpaceWire [ECSS Standard ECSS-E-50-12A, "SpaceWire, Links, Nodes, Routers and Networks", Issue 1, European Cooperation for Space Data Standardization, February 2003] и широко применяемый для передачи потоков битов между обрабатывающими узлами в бортовых распределенных вычислительных комплексах. Использование в коммуникационном интерфейсе линий данных и строба (D- и S-сигналов) в каждом направлении позволяет обеспечить высокоскоростную передачу битов данных в широком диапазоне скоростей от 2 Мбит/с до 400 Мбит/с. Простая реализация процедуры формирования пакетов данных, основанная на применении служебных (управляющих) символов конца пакета ЕОР (End Of Packet), позволяет передавать символы данных в виде пакетов произвольной длины с низким процентом накладных расходов. Такая возможность упрощает структуру коммутационных узлов (коммутаторов и концентраторов), применяемых для передачи и коммутации битовых потоков от бортовых датчиков к обрабатывающим узлам в распределенных вычислительных комплексах и позволяет повысить пропускную способность интерфейса при передаче собственно данных.Known serial communication interface - DS-link that implements the method of DS-coding (Data-Strobe coding) in accordance with the SpaceWire standard [ECSS Standard ECSS-E-50-12A, "SpaceWire, Links, Nodes, Routers and Networks",
Недостатком интерфейса SpaceWire является наличие джиттера D- и S-сигналов, что затрудняет его использование на расстояниях более 10 метров без ухудшения скоростных параметров интерфейса. Также наличие двух линий осложняет применение гальванической развязки из-за возникающих разных задержек на самой развязке, что существенно уменьшает надежность работы устройств SpaceWire в бортовых распределенных вычислительных комплексах.The disadvantage of the SpaceWire interface is the presence of jitter of D- and S-signals, which makes it difficult to use it at distances of more than 10 meters without degrading the speed parameters of the interface. The presence of two lines also complicates the use of galvanic isolation due to various delays at the isolation itself, which significantly reduces the reliability of SpaceWire devices in on-board distributed computing systems.
Известно устройство коммуникационного интерфейса [PATENT GB №91304711.4. Communication interface for serial transmission of variable length data tokens / Priority 25.05.90, №9011700. Data of filing 24.05.91. Data of publication 27.11.91. Bulletin 91/48 of European Patent Office. Publication number 0458648A2] для использования в коммуникационной системе, обеспечивающей DS-кодирование при передаче данных в последовательном виде и соединяющей, как минимум, два компьютера, причем устройство коммуникационного интерфейса имеет входы данных и стробирования, которые соединены соответственно с линиями данных и стробирования канала приема информации, а выходы данных и стробирования устройства соединены соответственно с линиями данных и стробирования канала выдачи информации коммуникационного интерфейса. Устройство с помощью специальных управляющих символов управления потоком FCT (Flow Control Token) реализует механизм кредитования, позволяющий использовать буферы ограниченного размера для приема и передачи пакетов неограниченной длины.A device for a communication interface [PATENT GB No. 91304711.4. Communication interface for serial transmission of variable length data tokens / Priority 05/25/90, No. 9011700. Data of filing 05/24/91. Data of
Недостатком данного устройства коммуникационного интерфейса является ограничение расстояния между взаимодействующими сторонами и отсутствие гальванической развязки, что может вызывать отказы и неисправности из-за коротких замыканий.The disadvantage of this device of the communication interface is the limitation of the distance between the interacting parties and the absence of galvanic isolation, which can cause failures and malfunctions due to short circuits.
Наиболее близким аналогом к заявляемому техническому решению является коммуникационная система, использующая для соединения двух хост-систем (компьютеров) в соответствии со стандартом SpaceWire соответственно два устройства коммуникационного интерфейса, взаимодействующих через DS-линк [Патент РФ по заявке на полезную модель №103013. Устройство коммуникационного интерфейса. Опубл. 20.03.2011, заявл. 26.05.2010, H04L 1/00 (2006.01)], каждое из которых имеет соединение с группой выходов системного интерфейса соответствующей хост-системы для передачи данных в DS-линк и соединение с группой входов системного интерфейса этой же хост-системы для передачи в нее принимаемых данных из DS-линка, причем устройство коммуникационного интерфейса (DS-макроячейка) содержит блок выдачи данных, блок приема данных, блок управления и блок управления потоком данных, выход запроса на выдачу символа управления потоком которого соединен с одноименным входом блока выдачи данных, выход готовности выдачи символа управления потоком которого соединен с одноименным входом блока управления потоком данных, входы подтверждения приема символа управления потоком и подтверждения приема информационного символа которого соединены соответственно с одноименными выходами блока приема данных и одноименными входами блока управления, выход статуса которого является одноименным выходом системного интерфейса DS-макроячейки, вход сброса системного интерфейса DS-макроячейки является входом сброса блока управления, первый и второй выходы сброса которого соединены с входами сброса соответственно блока выдачи данных и блока приема данных, вход чтения данных системного интерфейса DS-макроячейки является одноименным входом блока приема данных, выходы принятых данных и состояния буфера приема данных которого являются соответствующими выходами системного интерфейса DS-макроячейки, выход ошибки кредитования блока управления потоком данных соединен с одноименным входом блока управления, третий выход сброса которого соединен с входом сброса блока управления потоком данных, входы подтверждения выдачи информационного символа и разрешения приема данных которого соединены с одноименными выходами соответственно блока выдачи данных и блока приема данных, выход состояния буфера выдачи данных системного интерфейса DS-макроячейки является одноименным выходом блока выдачи данных, входы записи и данных для выдачи системного интерфейса DS-макроячейки являются соответствующими входами блока выдачи данных, вход разрешения передачи символа управления потоком которого соединен с одноименным выходом блока управления, вход состояния которого соединен с одноименным выходом блока приема данных, вход синхронизации которого является входом синхронизации системного интерфейса DS-макроячейки и соединен с одноименными входами блока управления, блока управления потоком данных и блока выдачи данных, выходы данных и стробирования которого являются соответственно выходами данных и стробирования коммуникационного интерфейса DS-макроячейки, входы данных и стробирования которого являются соответственно входами данных и стробирования блока приема информации.The closest analogue to the claimed technical solution is a communication system that uses for connecting two host systems (computers) in accordance with the SpaceWire standard, respectively, two communication interface devices interacting via a DS-link [RF Patent for the application for utility model No. 103013. Communication interface device. Publ. 03/20/2011, declared. 05/26/2010,
Данное устройство коммуникационного интерфейса (DS-макроячейка) поддерживает в коммуникационной системе, пример построения которой показан на фиг.1а, передачу битов на скоростях до 400 Мбит/с. При этом оно позволяет передавать поток битов данных и стробов в DS-линке (коммуникационном интерфейсе) на частоте в два раза большей локальной частоты, на которой работают все остальные блоки устройства. Однако различное некратное кодирование символов SpaceWire, имеющих различную длину, не позволяет эффективно уменьшить локальную скорость относительно скорости передачи битов.This communication interface device (DS macrocell) supports in the communication system, the construction example of which is shown in Fig. 1a, the transmission of bits at speeds of up to 400 Mbit / s. Moreover, it allows you to transmit a stream of data bits and gates in the DS-link (communication interface) at a frequency twice the local frequency at which all other blocks of the device work. However, various non-multiple encoding of SpaceWire characters having different lengths does not allow to effectively reduce the local speed relative to the bit rate.
Недостатком этой коммуникационной системы является ограничение расстояния между взаимодействующими устройствами коммуникационного интерфейса в пределах до 10 метров, на котором обеспечивается максимум быстродействия при передаче данных по DS-линку, однако при превышении этого предела имеет место пропорциональное уменьшение пропускной способности DS-линка. Кроме того, отсутствие возможности использования гальванической изоляции устройств друг от друга, что не позволяет предотвращать отказы и неисправности из-за коротких замыканий.The disadvantage of this communication system is the limitation of the distance between the interacting devices of the communication interface within 10 meters, which ensures maximum performance when transmitting data via the DS link, however, when this limit is exceeded, there is a proportional decrease in the throughput of the DS link. In addition, the inability to use galvanic isolation of devices from each other, which does not allow to prevent failures and malfunctions due to short circuits.
В основу настоящего изобретения поставлена задача разработки коммуникационного устройства (системы) для гальванической развязки DS-линка, обеспечивающего за счет использования иной схемы кодирования возможность для известных устройств коммуникационного интерфейса в рамках существующих коммуникационных систем, построенных в соответствии со стандартом SpaceWire, осуществлять передачу битов данных на существенно большие расстояния по одножильному кабелю в каждую сторону при сохранении максимально возможного быстродействия, а также повышения надежности за счет возможности применения гальванической изоляции взаимодействующих устройств. Для этого два коммуникационных устройства, связанные кабелем требуемой длины, подключаются в разрыв DS-линка. При этом функции, структура известных устройств коммуникационного интерфейса и схема соединения каждого из них с хост-системой в модулях SpaceWire, определяемые стандартом SpaceWire, а также их скоростные характеристики не претерпевают никаких изменений.The basis of the present invention is the task of developing a communication device (system) for galvanic isolation of the DS-link, which, through the use of a different coding scheme, provides for the known communication interface devices within the existing communication systems built in accordance with the SpaceWire standard to transmit data bits to Significantly large distances along the single-core cable in each direction while maintaining the highest possible speed, as well as eniya reliability by allowing the use of galvanic isolation of interacting devices. To do this, two communication devices connected by a cable of the required length are connected to the DS-link gap. At the same time, the functions, structure of the known communication interface devices and the connection diagram of each of them with the host system in the SpaceWire modules defined by the SpaceWire standard, as well as their speed characteristics, do not undergo any changes.
Техническим результатом предлагаемого изобретения является расширение области применения известных устройств коммуникационного интерфейса, полностью соответствующих стандарту SpaceWire, благодаря обеспечению возможности взаимодействия на расстояниях, которые более чем на порядок превышают ограничения, предусмотренные стандартом SpaceWire, а также достижение более высоких показателей надежности и быстродействия по сравнению с известными аналогами. Предлагаемое коммуникационное устройство может применяться для связи любых устройств, имеющих интерфейс SpaceWire.The technical result of the invention is to expand the scope of the known communication interface devices that fully comply with the SpaceWire standard, by ensuring the possibility of interaction at distances that are more than an order of magnitude higher than the limits stipulated by the SpaceWire standard, as well as achieving higher reliability and performance compared to the known analogues. The proposed communication device can be used to communicate any device that has a SpaceWire interface.
Технический результат достигается тем, что в предложенном коммуникационном устройстве для гальванической развязки DS-линка, содержащем DS-макроячейку, выходы данных и стробирования которой являются соответственно выходами данных и стробирования интерфейса DS-линка устройства, входы данных и стробирования которого являются соответственно входами данных и стробирования DS-макроячейки, причем DS-макроячейка содержит блок выдачи данных, блок приема данных, блок управления и блок управления потоком данных, выход запроса на выдачу символа управления потоком которого соединен с одноименным входом блока выдачи данных, выход готовности выдачи символа управления потоком которого соединен с одноименным входом блока управления потоком данных, входы подтверждения приема символа управления потоком и подтверждения приема информационного символа которого соединены соответственно с одноименными выходами блока приема данных и одноименными входами блока управления, выход статуса которого является одноименным выходом системного интерфейса DS-макроячейки, вход сброса системного интерфейса DS-макроячейки является входом сброса блока управления, первый и второй выходы сброса которого соединены с входами сброса соответственно блока выдачи данных и блока приема данных, вход чтения данных системного интерфейса DS-макроячейки является одноименным входом блока приема данных, выходы данных и состояния буфера приема данных которого являются соответствующими выходами системного интерфейса DS-макроячейки, выход ошибки кредитования блока управления потоком данных соединен с одноименным входом блока управления, третий выход сброса которого соединен с входом сброса блока управления потоком данных, входы подтверждения выдачи информационного символа и разрешения приема данных которого соединены с одноименными выходами соответственно блока выдачи данных и блока приема данных, выход состояния буфера выдачи данных системного интерфейса DS-макроячейки является одноименным выходом блока выдачи данных, входы записи и данных системного интерфейса DS-макроячейки являются соответствующими входами блока выдачи данных, вход разрешения передачи символа управления потоком которого соединен с одноименным выходом блока управления, вход состояния которого соединен с одноименным выходом блока приема данных, вход синхронизации которого является входом синхронизации системного интерфейса DS-макроячейки и соединен с одноименными входами блока управления, блока управления потоком данных и блока выдачи данных, выходы данных и стробирования которого являются соответственно выходами данных и стробирования коммуникационного интерфейса DS-макроячейки, входы данных и стробирования которого являются соответственно входами данных и стробирования блока приема информации, введены блок передачи, кодек 8b/10b, блок управления соединением, блок гальванической развязки и блок синхронизации, первый и второй выходы синхронизации которого соединены с входами синхронизации соответственно кодека 8b/10b и DS-макроячейки, выходы данных и признака конца принятого пакета которой соединены соответственно с входами данных и признака конца пакета блока передачи, выход запроса на чтение данных которого соединен с входом чтения данных DS-макроячейки, выходы состояния буфера выдачи и состояния буфера приема которого соединены соответственно с одноименными входами блока передачи, входы разрешения чтения и установления соединения которого соединены соответственно с одноименными выходами блока управления соединением, выходы разрешения записи и признака конца пакета которого соединены соответственно с входами записи и признака конца пакета для выдачи DS-макроячейки, вход данных которой соединен с входом принятого символа 8b блока управления соединением и с информационным выходом кодека 8b/10b, вход сброса которого соединен с входом сброса DS-макроячейки и с выходом сброса блока управления соединением, входы начальной установки и признака символа синхронизации которого соединены соответственно с входом начальной установки устройства и выходом признака символа синхронизации кодека 8b/10b, выход подтверждения синхронизации которого соединен с одноименным входом блока управления соединением, вход синхронизации которого соединен с выходом локальной синхронизации кодека 8b/10b и входом синхронизации блока передачи, выходы символа 8b и признака типа символа которого соединены соответственно с одноименными входами кодека 8b/10b, выход кодированных данных которого соединен с входом блока гальванической развязки, выход битового сигнала Out которого является одноименным выходом устройства, вход битового сигнала In которого является одноименным входом блока гальванической развязки, выход принятых кодированных данных которого соединен с одноименным входом кодека 8b/10b.The technical result is achieved by the fact that in the proposed communication device for galvanic isolation of the DS link containing the DS macrocell, the data and gating outputs of which are respectively the data and gating outputs of the DS link interface of the device, the data and gating inputs of which are respectively the data and gating inputs DS macrocell, the DS macrocell comprising a data output unit, a data receiving unit, a control unit and a data flow control unit, an output of a request for issuing a control symbol the flow of which is connected to the input of the data output unit of the same name, the output of the readiness of issuing the flow control symbol is connected to the input of the data flow control unit of the same name, the inputs of acknowledging the receipt of the flow control symbol and the acknowledgment of receipt of the information symbol of which are connected respectively to the outputs of the data receiving unit and inputs of the same name control unit, the status output of which is the same-name output of the DS-macrocell system interface, the system reset input The interface of the DS macrocell is the reset input of the control unit, the first and second reset outputs of which are connected to the reset inputs of the data output unit and the data receiving unit, respectively, the data read input of the system interface of the DS macrocell is the input of the data receiving unit of the same name, data outputs and receive buffer status the data of which are the corresponding outputs of the DS-macrocell system interface, the credit error output of the data flow control unit is connected to the input of the control unit of the same name, the third output the reset of which is connected to the reset input of the data flow control unit, the information symbol confirmation and data reception authorization inputs of which are connected to the outputs of the same name respectively of the data output unit and data reception unit, the status output of the data output buffer of the DS macrocell system interface is the output of the data output unit of the same name , the entries of the recording and data of the system interface of the DS macrocell are the corresponding inputs of the data output unit, the input of the transmission of the control symbol transmission the source of which is connected to the same output of the control unit, the status input of which is connected to the same output of the data receiving unit, the synchronization input of which is the synchronization input of the system interface of the DS macrocell and connected to the inputs of the same name of the control unit, data flow control unit and data output unit, data outputs and the gates of which are respectively the data outputs and gates of the communication interface of the DS macrocell, the data and gates of which are respectively It is the data and strobing inputs of the information receiving unit that the transmission unit, the codec 8b / 10b, the connection control unit, the galvanic isolation unit and the synchronization unit are introduced, the first and second synchronization outputs of which are connected to the synchronization inputs of the codec 8b / 10b and DS macrocells, outputs data and a sign of the end of the received packet which are connected respectively to the inputs of data and a sign of the end of the packet of the transmission unit, the output of the request for reading data of which is connected to the data reading input of the DS macrocell, the outputs are of the output buffer and the status of the receive buffer of which are connected respectively to the inputs of the transfer unit, the read permission and connection inputs of which are connected respectively to the outputs of the connection control unit, the outputs of the write permission and the packet end flag of which are connected respectively to the recording inputs and the packet end flag for issuing a DS macrocell whose data input is connected to the input of the received symbol 8b of the connection control unit and to the information output of the codec 8b / 10b, the input with the throw of which is connected to the reset input of the DS macrocell and to the reset output of the connection control unit, the inputs of the initial setting and the sign of the synchronization symbol of which are connected respectively to the input of the initial installation of the device and the output of the sign of the synchronization symbol of the codec 8b / 10b, the synchronization confirmation output of which is connected to the input the connection control unit, the synchronization input of which is connected to the local synchronization output of the codec 8b / 10b and the synchronization input of the transmission unit, the outputs of the symbol 8b and However, the character type of which is connected respectively to the inputs of the codec 8b / 10b, the output of the encoded data of which is connected to the input of the galvanic isolation unit, the output of the bit signal Out of which is the device output of the same name, the input of the bit signal In of which is the same input of the galvanic isolation unit, the output of the received encoded whose data is connected to the input of the same codec 8b / 10b.
Предпочтительно блок передачи содержит первый счетчик, ПЗУ, мультиплексор, первый элемент И, второй элемент И, три входа которого являются соответственно входом разрешения чтения, входом установления соединения и входом состояния буфера приема блока передачи, выход второго элемента И соединен с первым входом первого элемента И и с первым разрешающим входом ПЗУ, управляющий вход которого является входом признака конца пакета блока передачи, вход состояния буфера передачи которого является вторым разрешающим входом ПЗУ, выход запроса на чтение данных блока передачи является выходом первого элемента И, второй инверсный вход которого соединен с третьим разрешающим входом ПЗУ и с выходом переноса первого счетчика, счетный вход которого является входом синхронизации блока передачи, вход данных которого является первым информационным входом мультиплексора, второй информационный вход которого соединен с выходом констант ПЗУ, выход признака типа символа которого является одноименным выходом блока передачи и соединен с управляющим входом мультиплексора, выход которого является выходом символа 8b блока передачи.Preferably, the transmission unit comprises a first counter, a ROM, a multiplexer, a first element And, a second element And, the three inputs of which are respectively the read permission input, the connection establishment input and the input status of the receive block of the transmission unit, the output of the second element And is connected to the first input of the first element And and with the first enabling input of the ROM, the control input of which is the input of the sign of the end of the packet of the transmission unit, the input of the status of the transmission buffer of which is the second enabling input of the ROM, the request for reading the data of the transmission unit is the output of the first element AND, the second inverse input of which is connected to the third enable input of the ROM and the transfer output of the first counter, the counting input of which is the synchronization input of the transmission unit, the data input of which is the first information input of the multiplexer, the second information input of which is connected with the output of ROM constants, the output of the character type of which is the output of the transmission unit of the same name and is connected to the control input of the multiplexer, the output of which is is the output of symbol 8b of the transmission block.
Предпочтительно блок управления соединением содержит дешифратор, триггер разрешения передачи, триггер установления соединения, второй счетчик, первый элемент ИЛИ, второй элемент ИЛИ, схему сброса, выход которой является выходом сброса блока установления соединения, первый вход схемы сброса соединен с выходом ошибки второго элемента ИЛИ и с первым входом сброса триггера установления соединения, выход установления соединения которого соединен со вторым входом схемы сброса и является выходом установления соединения блока управления соединением, вход начальной установки которого соединен с первым входом сброса триггера разрешения передачи, с третьим входом схемы сброса и со вторым входом сброса триггера установления соединения, вход синхронизации которого соединен со счетным входом второго счетчика и входом синхронизации блока управления соединением, входы принятого символа 8b и признака символа синхронизации которого соединены соответственно с первым и вторым входами дешифратора, выход селекции первого символа синхронизации которого соединен с первым входом первого элемента ИЛИ и с входом установки триггера разрешения передачи, выход селекции второго символа синхронизации дешифратора соединен со вторым входом первого элемента ИЛИ и вторым входом сброса триггера разрешения передачи, выход которого является выходом разрешения чтения блока управления соединением, выходы разрешения записи и признака конца пакета которого являются одноименными выходами дешифратора, разрешающий вход которого соединен с входом подтверждения синхронизации блока управления соединением и с первым инверсным входом второго элемента ИЛИ, второй вход которого соединен с выходом переноса второго счетчика, вход сброса которого соединен с выходом первого элемента ИЛИ и с входом установки триггера установления соединения.Preferably, the connection control unit comprises a decoder, a transmission enable trigger, a connection establishment trigger, a second counter, a first OR element, a second OR element, a reset circuit whose output is a reset output of the connection unit, a first input of the reset circuit is connected to an error output of the second OR element, and with the first reset input of the connection setup trigger, the connection establishment output of which is connected to the second input of the reset circuit and is the connection establishment output of the control unit with the line, the initial installation input of which is connected to the first reset input of the trigger to enable the transfer, to the third input of the reset circuit and to the second reset input of the connection trigger, the synchronization input of which is connected to the counting input of the second counter and the synchronization input of the connection control unit, the inputs of the received symbol 8b and feature synchronization symbol which is connected respectively to the first and second inputs of the decoder, the selection output of the first synchronization symbol which is connected to the first input of the first of the OR element and with the input of the installation of the trigger to enable the transfer, the selection output of the second synchronization symbol of the decoder is connected to the second input of the first OR element and the second input of the reset trigger of the transfer permission, the output of which is the read permission output of the connection control unit, the write permission outputs and the packet end flag of which are the outputs of the same name of the decoder, the enable input of which is connected to the synchronization confirmation input of the connection control unit and to the first inverse input the second OR element, the second input of which is connected to the transfer output of the second counter, the reset input of which is connected to the output of the first OR element and to the setup input of the connection trigger.
Данное техническое решение обеспечивает результат за счет применения в коммуникационном устройстве для гальванической развязки DS-линка дополнительного преобразования с помощью 8b/10b кодирования символов SpaceWire, изначально передаваемых по DS-линку. Символы SpaceWire перекодируются в 10-битовые последовательности и передаются из этого коммуникационного устройства в одножильный коммуникационный канал. При приеме последовательности битовых сигналов из одножильного коммуникационного канала в удаленном устройстве осуществляются обратное выделение символов 10b, последующее их преобразование в символы SpaceWire и передача в DS-линк.This technical solution provides a result due to the use of an additional conversion in the communication device for galvanic isolation of the DS link using 8b / 10b encoding of the SpaceWire characters originally transmitted via the DS link. SpaceWire characters are encoded in 10-bit sequences and transferred from this communication device to a single-core communication channel. When a sequence of bit signals is received from a single-core communication channel in a remote device, the symbols 10b are de-selected, then converted to SpaceWire symbols and transferred to the DS link.
Таким образом, минуя два коммуникационных устройства для гальванической развязки DS-линка, взаимосвязанные двумя одножильными кабелями требуемой длины все символы канального и сетевого уровня стандарта SpaceWire без изменения и изъятия передаются из одного модуля SpaceWire в другой в прозрачном режиме, как если бы они были связаны просто DS-линком. В качестве модулей SpaceWire могут применяться как компьютеры (процессорные узлы), так и коммутаторы, порты которых связаны с помощью DS-линков в соответствии со стандартом SpaceWire. В результате этого решения появились условия для удаленного взаимодействия модулей SpaceWire в рамках бортовых распределенных вычислительных комплексов на расстояниях, значительно превышающих разрешенные параметры для кабелей по стандарту SpaceWire. Возможность использования одножильных кабелей для двустороннего соединения предлагаемых коммуникационных устройств создает условия для установки гальванической развязки на входе и выходе каждого из этих устройств. Кроме того, введение в предлагаемом коммуникационном устройстве для гальванической развязки DS-линка кодирования 8b/10b позволило понизить частоту локальной синхронизации относительно передающей в десять раз и упростило реализацию коммуникационного устройства на частоте локальной синхронизации в силу одинаковой кратности символов 8b/10b в отличие от изначально неодинаковой кодировки символов SpaceWire.Thus, bypassing two communication devices for galvanic isolation of the DS-link, interconnected by two single-core cables of the required length, all symbols of the channel and network level of the SpaceWire standard are transferred without change or removal from one SpaceWire module to another in a transparent mode, as if they were simply connected DS link. SpaceWire modules can be used as computers (processor nodes), as well as switches, the ports of which are connected using DS-links in accordance with the SpaceWire standard. As a result of this solution, conditions appeared for the remote interaction of SpaceWire modules within the framework of on-board distributed computing systems at distances significantly exceeding the allowed parameters for cables according to the SpaceWire standard. The possibility of using single-core cables for two-way connection of the proposed communication devices creates the conditions for installing galvanic isolation at the input and output of each of these devices. In addition, the introduction of the proposed communication device for galvanic isolation DS-link coding 8b / 10b allowed to reduce the frequency of local synchronization relative to the transmitting ten times and simplified the implementation of the communication device at a frequency of local synchronization due to the same multiplicity of characters 8b / 10b unlike the initially unequal SpaceWire character encodings.
Детально сущность данного технического решения поясняется описанием со ссылками на чертежи, где на фиг.1 представлены варианты соединения модулей SpaceWire: а - непосредственное соединение через DS-линк; б - соединение через коммуникационные устройства для гальванической развязки DS-линка. На фиг.2 приведена структурная схема коммуникационного устройства для гальванической развязки DS-линка. На фиг.3 приведена функциональная схема блока передачи. На фиг.4 представлена функциональная схема блока управления соединением. На фиг.5 приведена реализация структурной схемы DS-макроячейки. На фиг.6 приведены временные диаграммы, поясняющие процесс установления соединения в коммуникационном устройстве, на фиг.7 - временные диаграммы, поясняющие процесс управления передачей символов 8b блоком передачи, на фиг.8 - временные диаграммы приема символов 8b в коммуникационном устройстве. На фиг.9(10) - представлена диаграмма состояний коммуникационного устройства. На фиг.10(11) приведен граф машины состояния, описывающий режимы функционирования DS-макроячейки.The essence of this technical solution is explained in detail by the description with reference to the drawings, where Fig. 1 shows connection options for SpaceWire modules: a - direct connection via a DS-link; b - connection through communication devices for galvanic isolation of the DS-link. Figure 2 shows the structural diagram of a communication device for galvanic isolation of the DS-link. Figure 3 shows the functional diagram of the transmission unit. Figure 4 presents the functional diagram of the control unit connection. Figure 5 shows the implementation of the structural diagram of the DS macrocell. Fig. 6 is a timing chart explaining a connection establishment process in a communication device; Fig. 7 is a timing diagram explaining a process for controlling the transmission of characters 8b of a transmission unit; Fig. 8 is a timing chart for receiving a character 8b in a communication device. Fig. 9 (10) is a state diagram of a communication device. Figure 10 (11) shows a graph of the state machine that describes the operating modes of the DS macrocell.
Как показано на фиг.2, предлагаемое коммуникационное устройство 1 для гальванической развязки DS-линка содержит DS-макроячейку 2, блок 3 синхронизации, блок 4 передачи, кодек 5 8b/10b, блок 6 управления соединением, блок 7 гальванической развязки, вход 8 сигнала данных D in, вход 9 сигнала стробирования S in, выход 10 сигнала данных D out, выход 11 сигнала стробирования S out, вход 12 начальной установки, выход 13 битового сигнала Out, вход 14 битового сигнала In, выход 15 данных, выход 16 признака конца принятого пакета, выход 17 состояния буфера выдачи, выход 18 состояния буфера приема, первый выход 19 синхронизации, второй выход 20 синхронизации, выход 21 запроса на чтение данных, выход 22 символа 8b, выход 23 признака типа символа, выход 24 признака конца пакета, выход 25 разрешения записи, выход 26 разрешения чтения, выход 27 установления соединения, информационный выход 28, выход 29 признака символа синхронизации, выход 30 подтверждения синхронизации, выход 31 локальной синхронизации, выход 32 кодированных данных, выход 33 принятых кодированных данных, выход 34 сброса.As shown in figure 2, the proposed
Блок 4 передачи (см. фиг.3) содержит первый счетчик 35, первый элемент 36 И, второй элемент 37 И, ПЗУ 38, мультиплексор 39, вход 40 данных, вход 41 признака конца пакета, вход 42 состояния буфера выдачи, вход 43 разрешения чтения, вход 44 установления соединения, вход 45 состояния буфера приема, вход 46 синхронизации, выход 47 констант, выход 48 переноса, выход 49 второго элемента 37 И, выход 21 запроса на чтение данных, выход 22 символа 8b, выход 23 признака типа символа.Transmission unit 4 (see FIG. 3) contains a
Блок 6 управления соединением (см. фиг.4) содержит дешифратор 52, триггер 53 разрешения передачи, триггер 54 установления соединения, второй счетчик 55, первый элемент 56 ИЛИ, второй элемент 57 ИЛИ, схему 58 сброса, вход 59 принятого символа 8b, вход 60 признака символа синхронизации, вход 61 синхронизации, вход 62 подтверждения синхронизации, выход 63 селекции первого символа синхронизации, выход 64 селекции второго символа синхронизации, выход 65 поддержки соединения, выход 66 переноса, выход 67 ошибки соединения, вход 12 начальной установки, выход 24 признака конца пакета, выход 25 разрешения записи, выход 26 разрешения чтения, выход 27 установления соединения, выход 34 сброса.The connection control unit 6 (see FIG. 4) comprises a
DS-макроячейка 2 (см. фиг.5) содержит блок 70 выдачи данных, блок 71 приема данных, блок 72 управления потоком данных, блок 73 управления, выход 74 подтверждения приема символа управления потоком, выход 75 подтверждения приема информационного символа, выход 76 запроса на выдачу символа управления потоком, первый выход 77 сброса, второй выход 78 сброса, третий выход 79 сброса, выход 80 готовности выдачи символа управления потоком, вход 81 записи, вход 82 данных, вход 83 признака конца пакета для выдачи, вход 84 чтения данных, выход 85 данных, вход 86 синхронизации, выход 87 ошибки кредитования, выход 88 разрешения передачи символа управления потоком, выход 89 состояния, выход 90 подтверждения выдачи информационного символа, выход 91 разрешения приема данных, вход 92 сброса, вход 8 сигнала данных D in, вход 9 сигнала стробирования S in, выход 10 сигнала данных D out, выход 11 сигнала стробирования S out, выход 15 данных, выход 16 признака конца принятого пакета, выход 17 состояния буфера выдачи, выход 18 состояния буфера приема.The DS macrocell 2 (see FIG. 5) comprises a
На временных диаграммах (см. фиг.6) для процесса установления соединения в коммуникационном устройстве 1 показано: a - изменение сигнала на выходе 31 локальной синхронизации, b - состояние данных на информационном выходе 28, c - изменение сигнала на выходе 29 признака символа синхронизации, d - изменение состояния выхода 27 установления соединения, e - изменение состояния выхода 26 разрешения чтения, f - изменение состояния выхода 34 сброса.The time diagrams (see Fig. 6) for the connection establishment process in the
На временных диаграммах (см. фиг.7) для процесса управления передачей символов в блоке 4 передачи показано: a - изменение сигнала на выходе 46 синхронизации, b - состояние данных из DS-макроячейки 2 на входе 40 данных, c - изменение сигнала Not Empty на входе 45 состояния буфера приема, d - изменение состояния входа 41 признака конца пакета, e - изменение состояния выхода 48 переноса, f - изменение состояния выхода 21 запроса на чтение данных, g - изменение состояния данных на выходе 22 символа 8b, h - изменение сигнала на выходе 23 признака типа символа.The time diagrams (see Fig. 7) for the process of controlling the transmission of symbols in the
На временных диаграммах (см. фиг.8) для процесса приема символов 8b в коммуникационном устройстве 1 показано: а - изменение сигнала на выходе 31 локальной синхронизации, b - состояние данных на информационном выходе 28, c - изменение сигнала на выходе 29 признака символа синхронизации, d - изменение сигнала WE на выходе 25 разрешения записи, e - изменение сигнала признака ЕОР на выходе 24 признака конца пакета, f - состояние данных, записываемых в буфер выдачи данных с входа 82 данных DS-макроячейки 2.The time diagrams (see Fig. 8) for the process of receiving symbols 8b in the
DS-макроячейка 2 предназначена для управления высокоскоростными приемом и передачей пакетов байтовых данных по DS-линку в дуплексном режиме с использованием DS-кодирования символов в соответствии со стандартом SpaceWire. Входы 8 и 9 сигнала данных D in и сигнала стробирования S in коммуникационного устройства 1 DS-линка являются соответственно одноименными входами DS-макроячейки и предназначены для приема последовательных битовых данных, сопровождаемых сигналами стробирования, состояние которых меняется каждый раз, когда состояния двух смежных битовых сигналов не меняются. Выходы 10 и 11 сигнала данных D out и сигнала стробирования S out коммуникационного устройства 1 являются одноименными выходами DS-макроячейки и предназначены для выдачи последовательных битовых данных, сопровождаемых сигналами стробирования. Выход 15 данных DS-макроячейки 2 предназначен для очередной выдачи байта данных принятого пакета и соединен с входом 41 данных блока 4 передачи. Выход 16 признака конца принятого пакета (ЕОР) соединен с входом 42 признака конца пакета блока 4 передачи и представляет собой битовый сигнал, единичное значение которого свидетельствует о том, что предыдущий принятый байт данных на выходе 15 являлся последним в принятом пакете. Представление данных на этих выходах системного интерфейса DS-макроячейки 2 показано в табл.1.The DS macrocell 2 is designed to control the high-speed reception and transmission of byte data packets over the DS link in full duplex mode using DS character encoding in accordance with the SpaceWire standard. The
Состояние выхода 15 данных в том битовом интервале, когда признак ЕОР равен «1», может использоваться для определения дополнительной служебной информации и байтом данных не является. Выход 17 состояния буфера выдачи DS-макроячейки соединен с одноименным входом 42 блока 4 передачи и определяет, заполнен ли буфер выдачи в DS-макроячейке хотя бы наполовину - Half Full (HF). Если буфер выдачи заполнен более чем наполовину, на выходе 17 сигнал HF=1, в противном случае HF=0. Выход 18 состояния буфера приема DS-макроячейки соединен с одноименным входом 45 блока 4 передачи и определяет, состояние «не пусто» - Not Empty (NEm) - буфера приема в DS-макроячейке. Если буфер приема DS-макроячейки не пуст, то на выходе 18 сигнал NEm=1, в противном случае NEm=0.The state of the data output 15 in that bit interval when the EOP flag is “1” can be used to determine additional overhead information and is not a data byte. The
Блок 3 синхронизации обеспечивает формирование последовательностей синхросигналов, необходимых как для приема-передачи символов SpaceWire по DS-линку, так и для приема-передачи символов 10b в коммуникационный канал In-Out. Первый выход 19 синхронизации соединен с входом 86 синхронизации DS-макроячейки и предназначен для передачи синхросигналов, определяющих как скорость выдачи битовых сигналов DS-линк, так и скорость буферизации символов. Второй выход 20 синхронизации соединен с входом синхронизации кодека 5 8b/10b и предназначен для передачи синхросигналов, определяющих скорость выдачи битовых сигналов в коммуникационный канал Out.
Блок 4 передачи предназначен для формирования из байтов данных принимаемого пакета символов 8b и подготовки последовательности их выдачи из коммуникационного устройства 1 в канал Out. Выход 21 запроса на чтение данных блока 4 передачи соединен с входом 84 чтения данных DS-макроячейки. Выход 22 символа 8b блока 4 передачи соединен с одноименным входом кодека 5 8b/10b и предназначен для передачи восьмиразрядного символа 8b, который соответствует либо считанному из DS-макроячейки байту данных, либо коду специального символа синхронизации. Выход 23 признака типа символа соединен с одноименным входом кодека 5 8b/10b и определяет, какой тип символа 8b выставлен на выходе 22. Если однобитовый признак типа равен «О», то в качестве символа 8b передается символ данных, при значении признака, равного «1», в кодек 5 передается один из нескольких используемых специальных символов синхронизации.The
Кодек 5 8b/10b предназначен для преобразования восьмиразрядных символов в 10-разрядные символы стандарта 8b/10b и обратно, а также обеспечивает поддержку синхронизации в коммуникационном канале In-Out. Информационный выход 28 кодека 5 8b/10b соединен с входом 80 данных DS-макроячейки 2 и с входом 60 принятого символа 8b блока 6 управления соединением и предназначен для передачи сформированного восьмиразрядного символа 8b. Выход 29 признака символа синхронизации кодека 5 8b/10b соединен с одноименным входом 59 блока 6 управления соединением и определяет, какие символы 8b на выходе 28 не являются байтами данных. Выход 30 подтверждения синхронизации кодека 5 8b/10b соединен с одноименным входом 63 блока 6 управления соединением. Единичное значение сигнала на этом выходе означает наличие синхронизации, которая выделена в кодеке 5 из последовательности битовых сигналов, поступающих из коммуникационного канала In. Выход 31 локальной синхронизации кодека 5 8b/10b соединен с входом 46 синхронизации блока 4 передачи и входом 62 синхронизации блока 6 управления соединением и обеспечивает передачи синхросигналов, определяющих скорость приема символов 8b. Выход 32 кодированных данных кодека 5 8b/10b соединен с входом блока 7 гальванической развязки и обеспечивает выдачу битовых сигналов сформированных 10-разрядных символов 10b. Вход принятых кодированных данных кодека 5 8b/10b соединен с одноименным выходом 33 блока 7 гальванической развязки и обеспечивает прием битовых сигналов 10-разрядных символов 10b. Формат символов 8b, которые поступают в кодек 5 8b/10b из блока 4 передачи и выдаются из кодека 5 8b/10b в блок 6 управления соединением и DS-макроячейку 2, приведен в табл.2.The
Блок 6 управления соединением предназначен для выделения в потоке принимаемых символов 8b специальных символов синхронизации для поддержки связи между взаимодействующими через коммуникационный канал In-Out коммуникационными устройствами 1. Выход 25 разрешения записи блока 6 управления соединением соединен с входом 81 записи DS-макроячейки 2 и предназначен для разрешения записи, когда на выходе 28 кодека 5 8b/10b выставлен очередной байт данных. Выход 24 признака конца пакета блока 6 управления соединением соединен с входом 83 признака конца пакета для выдачи DS-макроячейки 2 и определяет, что предыдущий байт данных, выставленный на выходе 28 кодека 5 8b/10b, был последним в пакете. Выход 26 разрешения чтения блока 6 управления соединением соединен с одноименным входом 43 блока 4 передачи. Единичное значение на выходе 26 означает наличие свободного буферного пространства в устройстве-приемнике, достаточного для приема через коммуникационный канал In-Out байтов данных, выдаваемых из блока 4 передачи. Выход 27 установления соединения блока 6 управления соединением соединен с одноименным входом 44 блока 4 передачи. Единичное значение на выходе 27 означает, что имеется соединение между взаимодействующими коммуникационными устройствами 1 и возможна выдача информации. Вход 12 начальной установки устройства 1 является входом начальной установки блока 6 управления соединением и предназначен для его инициализации при включении питания. Выход 34 сброса блока 6 управления соединением обеспечивает сброс в исходное состояние блоков устройства 1 в случае ошибки потери синхронизации при приеме входных битов в кодеке 5 и соединен с входом 92 сброса DS-макроячейки и с входом сброса кодека 5 8b/10b.The
Блок 7 гальванической развязки предназначен для электрической изоляции взаимодействующих через коммуникационный канал In-Out коммуникационных устройств 1. Выход 13 блока 7 гальванической развязки является выходом Out битового сигнала устройства. Вход 14 блока 7 гальванической развязки является входом In битового сигнала устройства.The
В DS-макроячейке 2 блок 70 выдачи данных (см. фиг.5) предназначен для формирования и выдачи в DS-линк символов данных из пакетных данных, поступающих через вход данных для выдачи, соединенного с входом 82 данных, а также управляющих символов по требованию, поступающему с выхода 76 запроса на выдачу символа управления потоком блока 72 управления потоком данных на одноименный вход блока 70 выдачи данных. Перечень символов, используемых DS-макроячейкой для передачи данных в DS-линке в соответствии со стандартом SpaceWire, приведен в табл.3.In the
Вход 83 признака конца пакета для выдачи DS-макроячейки 2 является входом признаком конца пакета блока 70 выдачи данных. Однобитовый признак ЕОР записывается в качестве девятого бита в ячейки буфера блока 70 выдачи данных. Вход 81 записи DS-макроячейки является одноименным входом блока 70 выдачи данных, выход 17 состояния буфера выдачи которого является одноименным выходом DS-макроячейки 2. Выход 17 состояния буфера выдачи и вход 81 записи DS-макроячейки 2 предназначены для реализации механизма записи пакетных данных в буфер блока 70 выдачи данных из коммуникационного канала In, при котором запись байтов данных осуществляется до тех пор, пока на выходе 17 не выработается сигнал HF=1. Запись пакетных данных в буфер выдачи данных блока 70 тактируется с его входа синхронизации, соединенного с входом 86 синхронизации DS-макроячейки 2. Выходы 80 готовности выдачи символа управления потоком и 90 подтверждения выдачи информационного символа блока 70 соединены с одноименными входами блока 72 управления потоком данных и предназначены для реализации механизма кредитования, необходимого для организации передачи и приема данных через DS-линк без переполнения буферов приема у устройств, взаимодействующих в соответствии со стандартом SpaceWire. Блок 70 выдачи данных обеспечивает DS-кодирование символов данных, управляющих символов и кодов и их передачу на выходы 10 данных и 11 стробирования DS-макроячейки и далее на соответствующие выходы коммуникационного устройства 1 D out и S out, являющиеся линиями выходного канала DS-линка. Вход 92 сброса DS-макроячейки 2 является входом сброса блока 73 управления.An
Блок 71 приема данных обеспечивает инициализацию соединения и получение битового потока от другого устройства коммуникационного интерфейса SpaceWire (DS-макроячейки) через входы D in и S in устройства 1 и соответствующие входы 8 данных и 9 стробирования DS-макроячейки 2, декодирование принятых сигналов и выделение из потока битов символов данных и их передачи в коммуникационный интерфейс In-Out устройства 1 через выход 85 данных DS-макроячейки 2. Выход 16 признака конца принятого пакета является одноименным выходом DS-макроячейки 2 и обеспечивает выдачу однобитового признака ЕОР из девятого разряда ячейки буфера приема данных блока 71. Выход 18 состояния буфера приема блока 71 является одноименным выходом DS-макроячейки, вход 84 чтения данных которой является одноименным входом блока 71 приема данных. Выход 74 подтверждения приема символа управления потоком блока 71 соединен с одноименными входами блока 72 управления потоком данных и блока 73 управления. Выход 75 подтверждения приема информационного символа блока 71 соединен с одноименными входами блока 72 управления потоком данных и блока 73 управления и предназначен для извещения о получении из DS-линка байта данных пакета. Выход 89 состояния блока 71 приема данных соединен с одноименным входом блока 73 управления и обеспечивает формирование сигналов состояния и ошибок. Выход 91 разрешения приема данных блока 71 приема данных, соединенный с одноименным входом блока 72 управления потоком данных, предназначен для извещения о наличии достаточного свободного пространства в буфере приема данных. Вход синхронизации блока 71 приема данных, соединенный с одноименным входом 86 DS-макроячейки 2, предназначен для синхронизации записи и чтения байтов данных принимаемых пакетов из буфера приема данных.
Блок 72 управления потоком данных предназначен для реализации механизма кредитования, необходимого при обмене пакетными данными в дуплексном режиме между двумя устройствами коммуникационного интерфейса через DS-линк, соединяющим эти два устройства в соответствии со стандартом SpaceWire, с учетом ограниченного объема буферной памяти для приема данных, имеющейся у каждого устройства в блоке 71 приема данных. Выход 76 запроса на выдачу символа управления потоком блока 72 управления потоком данных, соединенный с одноименным входом блока 70 выдачи данных, предназначен для инициализации выдачи блоком 70 управляющего символа управления потоком, подтверждающего наличие в блоке 71 приема данных свободного буферного пространства, необходимого для приема определенного числа байтов данных. В соответствии со стандартом SpaceWire величина кредита, предоставляемого при выдаче одного символа управления потоком, принята равной восьми байтам данных. Выход 87 ошибки кредитования блока 72 управления потоком данных соединен с одноименным входом блока 73 управления. Блок 72 управления потоком данных тактируется с входа синхронизации, соединенного с входом 86 синхронизации DS-макроячейки 2.The data flow control unit 72 is designed to implement the lending mechanism necessary when exchanging packet data in duplex mode between two communication interface devices via a DS link connecting these two devices in accordance with the SpaceWire standard, taking into account the limited amount of buffer memory for receiving data available each device in
Блок 73 управления предназначен для отслеживания состояния DS-макроячейки при поступлении из блока 71 приема данных сигналов об изменении его статуса и выработки управляющих сигналов под воздействием машины состояний и сигнала начальной установки с входа сброса, соединенного с входом 92 сброса DS-макроячейки 2. Выход 88 разрешения передачи символа управления потоком блока 73 управления соединен с одноименным входом блока 70 выдачи данных и предназначен для извещения о том, что машина состояния блока 73 управления перешла в режим, разрешающий выдачу символов управления потоком. Первый 77, второй 78 и третий 79 выходы сброса блока 3 управления соединены с входами сброса соответственно блока 70 выдачи данных, блока 71 приема данных и блока 72 управления потоком данных и предназначены для их перевода в начальное состояние. Тактирование блока 73 управления осуществляется с входа синхронизации, соединенного с входом 86 синхронизации DS-макроячейки 2. Выход статуса блока 73 управления (на фиг.5 не показан) является одноименным выходом системного интерфейса DS-макроячейки 2 и предназначен для передачи управляющей информации о ее состоянии, которая необходима в том случае, когда DS-макроячейка используется в качестве устройства коммуникационного интерфейса SpaceWire для подключения хост-системы в модуле SpaceWire к DS-линку.The
В блоке 4 передачи первый счетчик 35 (см. фиг.3) предназначен для определения временного интервала Т3, через который блоком 4 передачи для поддержания состояния соединения между устройствами 1 должен генерироваться один из двух специальных символов синхронизации ССС1 или ССС2 (для их реализации из 13 предусмотренных кодированием символов 8b используются К28.5 и К28.7). Разрядность первого счетчика 35 выбрана равной пяти, поэтому интервал Т3 равен 32 тактам локальной синхронизации. Счетный вход первого счетчика 35 соединен с входом 46 синхронизации блока 4 передачи. Выход 48 переноса первого счетчика 35 соединен с третьим разрешающим входом ПЗУ 38 и с вторым инверсным входом первого элемента 36 И и обеспечивает формирование единичного сигнала через каждые 32 периода синхросигнала.In
Первый элемент 36 И обеспечивает запрет запроса на чтение данных из буфера приема данных DS-макроячейки 2 при наличии требования на формирование символа синхронизации от первого счетчика 35. Выход первого элемента 36 И является выходом 21 запроса на чтение данных блока 4 передачи.The
Второй элемент 37 И формирует запрос чтения очередного байта данных из буфера приема данных DS-макроячейки 2 при наличии разрешения чтения, установки соединения между устройствами 1 и при условии, что буфер приема данных не пуст. Первый, второй и третий входы второго элемента 37 И являются соответственно входом 43 разрешения чтения, входом 44 установления соединения и входом 45 состояния буфера приема блока 4 передачи. Выход второго элемента 37 И соединен с первым входом первого элемента 36 И и с первым разрешающим входом ПЗУ 38.The
ПЗУ 38 обеспечивает хранение кодов специальных символов синхронизации, определяемых кодированием символов 8b. Второй разрешающий вход ПЗУ 38 является входом 42 состояния буфера выдачи блока 4 передачи. Управляющий вход ПЗУ 38 соединен с входом 41 признака конца пакета блока 4 передачи. Выход 47 констант ПЗУ 38 соединен со вторым информационным входом мультиплексора 39 и обеспечивает передачу восьмиразрядных констант, определяющих при кодировании символов 8b специальные символы синхронизации. Выход 23 признака типа символа ПЗУ 38 является одноименным выходом блока 4 передачи и соединен с управляющим входом мультиплексора 39. Единичное значение на выходе 23 ПЗУ 38 указывает на то, что считываемый при этом с выхода 48 констант ПЗУ 38 один из специальных символов синхронизации должен выдаваться с выхода 22 мультиплексора 39. Правила формирования констант на выходах ПЗУ 38 показаны в табл.4.The
Мультиплексор 39 предназначен для выбора типа символа 8b, передаваемого на его выход, являющийся выходом 22 символа 8b блока 4 передачи, в зависимости от признака типа символа на управляющем входе, соединенном с выходом 23 ПЗУ 38. При нулевом значении признака типа символа на выход 22 мультиплексора 39 выдается байт данных с первого информационного входа мультиплексора 39, являющегося входом 40 данных блока 4 передачи.The
В блоке 6 управления соединением дешифратор 52 предназначен для селекции символов 8b, формируемых кодеком 5 8b/10b из принимаемых от удаленного устройства 1 символов 10b. Разрешающий вход дешифратора 52 соединен с входом 62 подтверждения синхронизации блока 6 управления соединением. Нулевой уровень сигнала на этом входе обеспечивает запрет работы дешифратора 52, при котором все выходы дешифратора находятся в пассивном нулевом состоянии. Единичный уровень сигнала подтверждения синхронизации активирует работу дешифратора 52. Первый вход 59 дешифратора 52 является входом принятого символа 8b блока 6 управления соединением и обеспечивает поступление в дешифратор восьмиразрядного двоичного кода символа 8b, декодируя который дешифратор формирует сигнал селекции на одном из своих выходов. Второй вход дешифратора 52 является входом 61 признака символа синхронизации блока 6 управления соединением и обеспечивает подачу одноразрядного управляющего сигнала, единичное значение которого настраивает дешифратор 52 на декодирование поступившего двоичного кода на его первый вход, как специального символа синхронизации. При нулевом значении признака символа синхронизации дешифратор 52 игнорирует двоичный код на первом входе, поскольку этот двоичный код является символом данных, который необходимо записывать в буфер выдачи данных DS-макроячейки 2. Выход 63 селекции первого символа синхронизации дешифратора 52 соединен с первым входом первого элемента 56 ИЛИ и с входом установки триггера 53 разрешения передачи. Единичное значение на выходе 63 свидетельствует о дешифрации первого символа синхронизации ССС1, предназначенного для подтверждения, во-первых, установления соединения с удаленным устройством 1 и, во-вторых, разрешения передачи символов данных в удаленное устройство 1. Выход 64 селекции второго символа синхронизации дешифратора 52 соединен со вторым входом первого элемента 56 ИЛИ и вторым входом сброса триггера 53 разрешения передачи. Единичное значение на выходе 64 свидетельствует о дешифрации второго символа синхронизации ССС2, предназначенного, во-первых, для подтверждения установления соединения с удаленным устройством 1 и, во-вторых, для запрещения передачи символов данных в удаленное устройство 1. Первый элемент 56 ИЛИ обеспечивает формирование объединенного сигнала на своем выходе 65 поддержки соединения, который соединен с входом сброса второго счетчика 55 и с входом установки триггера 54 установления соединения. Выход 24 признака конца пакета дешифратора 52 является одноименным выходом блока 6 управления соединением. Единичное значение на выходе 24 означает селекцию третьего символа синхронизации (ССС3), принимаемого из удаленного устройства и используемого для передачи признака окончании пакета (ЕОР). Выход 25 разрешения записи дешифратора 52 является одноименным выходом блока 6 управления соединением и обеспечивает разрешение записи символа 8b в качестве байта данных в DS-макроячейку 2. Единичное значение на выходе 25 вырабатывается при нулевом значении признака символа синхронизации на втором входе дешифратора 52, за исключением того случая, когда при получении символа синхронизации СССЗ формируется признак ЕОР, который вместе с байтовым кодом символа записывается в буфер выдачи данных DS-макроячейки 2. Поэтому одновременно с единичным признаком ЕОР на 24 выходе вырабатывается единичный сигнал WE на выходе 25. Формирование сигналов селекции на выходах дешифратора 52 осуществляется в соответствии правилами, показанными в табл.5.In the
Триггер 53 разрешения передачи предназначен для фиксации разрешения передачи данных в удаленное устройство 1. Первый вход сброса триггера 53 разрешения передачи соединен с входом 12 начальной установки блока 6 управления соединением и обеспечивает сброс триггера 53 в нулевое состояние при включении коммуникационного устройства 1. Вход установки триггера 53 является асинхронным и обеспечивает перевод триггера в единичное состояние при наличии сигнала селекции на выходе 63 дешифратора 52. Второй вход триггера 53 сброса является асинхронным и обеспечивает перевод триггера в нулевое состояние при наличии сигнала селекции на выходе 64 дешифратора 52. Выход 26 разрешения чтения триггера 53 разрешения передачи является одноименным выходом блока 6 управления соединением, присутствие единичного уровня на котором обеспечивает разрешение чтения блоком 4 передачи байта данных из буфера приема данных DS-макроячейки 2. Этот сигнал свидетельствует о возможности записи данных в буфер выдачи данных DS-макроячейки 2 удаленного устройства 1, так как сигнал о его состоянии (Half Empty) на выходе 17 DS-макроячейки 2 стоит в «1» (буфер выдачи данных пуст наполовину и гарантированно может буферировать данные, принимаемые кодеком 5 из удаленного устройства 1).
Триггер 54 установления соединения предназначен для фиксации состояния установки соединения, при котором становится возможным обмен данными между взаимосвязанными коммуникационными устройствами 1. Первый вход сброса триггера 54 установления соединения соединен с выходом 68 ошибки второго элемента 57 ИЛИ и является синхронным. При наличии единичного уровня на этом входе триггер 54 переходит в нулевое состояние только по возрастающему входу синхросигнала на входе синхронизации триггера 54, который соединен с входом 61 синхронизации блока 6 управления соединением. Второй вход сброса триггера 54 разрешения передачи соединен с входом 12 начальной установки блока 6 управления соединением, является асинхронным и предназначен для перевода триггера 54 в исходное нулевое состояние. Вход установки триггера 54 установления соединения является синхронным и соединен с выходом первого элемента 56 ИЛИ, который обеспечивает формирование сигнала поддержки соединения. При единичном значении на входе установки триггер 54 установления соединения по возрастающему входу синхросигнала переходит в единичное состояние, которое свидетельствует об установлении соединения. Выход 27 установления соединения триггера 54 установления соединения соединен со вторым входом схемы 58 сброса и является выходом установления соединения блока 6 управления соединением.The
Второй счетчик 55 предназначен для отслеживания временного интервала, в течение которого для поддержания соединения от удаленного устройства 1 должен поступить первый специальный символ синхронизации ССИ1 или второй специальный символ синхронизации ССИ2. В данной реализации разрядность счетчика 55 равна шести, поэтому если в течение 64 тактов не поступает ни одного из указанных символов синхронизации, то второй счетчик 55 обеспечивает формирование сигнала переноса, извещающего об ошибке рассоединения. Счетный вход второго счетчика 55 соединен с входом 62 синхронизации блока 6 управления соединением. По возрастающему фронту синхросигнала состояние счетчика инкрементируется от нуля до максимального значения. Если до достижения максимального значения первый элемент 56 ИЛИ сформирует единичный уровень на своем выходе 65 поддержки соединения, то второй счетчик 55 досрочно перейдет в нулевое состояние. Выход 66 переноса второго счетчика 55 соединен со вторым входом второго элемента 57 ИЛИ. Первый инверсный вход второго элемента 57 ИЛИ соединен с входом 62 подтверждения синхронизации блока 6 управления соединением. Второй элемент 57 ИЛИ обеспечивает формирование объединенного сигнала ошибки как в случае потери синхронизации при нулевом значении сигнала подтверждения синхронизации на входе 62, так и при ошибке рассоединения при единичном значении сигнала переноса на выходе 66. Выход 67 ошибки второго элемента 57 ИЛИ соединен как с первым входом сброса триггера 54, так и с первым входом схемы 58 сброса.The
Третий вход схемы 58 сброса соединен с входом 12 начальной установки блока 6 управления соединением. Схема 58 сброса обеспечивает формирование сигнала сброса для DS-макроячейки 2 и кодека 5 8b/10b как при инициализации устройства 1, так и в случае возникновения ошибки при работе устройства 1 в соответствии с логическим выражением Х∪Y∩Z. В этом выражении приняты следующие обозначения: Х - сигнал на входе 12 начальной установки, Y - сигнал на выходе 68 ошибки, Z - сигнал на выходе 27 установления соединения. Выход схемы 59 сброса является выходом сброса блока 6 установления соединения.The third input of the
Коммуникационное устройство 1 для гальванической развязки DS-линка работает следующим образом. Основной задачей коммуникационного устройства 1 является реализация обмена данными между модулями SpaceWire на расстояниях, значительно превышающих предельно допустимые длины для кабелей стандарта SpaceWire и обеспечение при этом гальванической развязки. Каждый из модулей SpaceWire состоит из хост-системы (компьютера или процессорного узла, имеющего локальную память данных) и локального устройства коммуникационного интерфейса SpaceWire (DS-макроячейки) для передачи и приема пакетных данных по DS-линку (см. фиг.1,а). DS-линк образован выходными симплексными линиями данных D (выход 10 данных DS-макроячейки) и стробирования S (выход 12 стробирования DS-макроячейки) и входными симплексными линиями данных D (вход 8 данных DS-макроячейки) и стробирования S (вход 9 стробирования DS-макроячейки), при этом в соответствии с требованиями стандарта SpaceWire каждый из четырех сигналов должен передаваться в кабеле по симметричной двухпроводной линии (на чертежах не показано), для которой формирование дифференциального сигнала осуществляется в соответствии со спецификацией LVDS. Приемник линии определяет логический уровень, сравнивая эти два сигнала между собой и, например, разница в 250 мВ воспринимается как достоверный логический уровень. Дифференциальный драйвер передатчика обеспечивает ток по двум линиям. Это обеспечивает высокую устойчивость линии к помехам по сравнению с однополярной схемой передачи. Таким образом, обеспечение гальванической развязки для DS-линка становится трудноразрешимой проблемой из-за невозможности на практике соблюсти требования на дрожание сигналов, скос фронтов и их разбег по различным линиям. Использование коммуникационных устройств 1 позволяет преодолеть эти проблемы, причем их включение в разрыв существующего соединения, как показано на фиг.1,б, является прозрачным для взаимодействующих хост-систем.
DS-макроячейка 2 коммуникационного устройства 1 изменяет свои режимы работы в соответствии с диаграммой состояния, реализуемой блоком 73 управления (см. фиг.5) и полностью соответствующей диаграмме состояния блока управления в прототипе - устройстве коммуникационного интерфейса. Изменение состояний блока 70 выдачи данных и блока 71 приема данных осуществляется в соответствии с диаграммой машины состояний (см. фиг.10): от инициализации устройства по сигналу начальной установки, начинающейся со сброса одной из сторон, соединенных DS-линком, до состояния нормальной работой, в котором обеспечивается передача данных в обоих направлениях.The DS macrocell 2 of the
Из состояния Сброс, в котором блок 71 приема данных ничего не делает, он переходит в состояние Запуск. В этом состоянии блок 71 запущен и ожидает приема первого бита. Когда блок 71 приема данных получит первый бит, он переходит в режим Соединение, при этом включается механизм обнаружения рассоединения и разрешается принимать только NULL коды. После получения первого NULL кода через DS-линк от устройства коммуникационного интерфейса SpaceWire, входящего в состав модуля SpaceWire, блок 71 приема данных переходит в состояние Run и может получать NULL коды, FCT символы и информационные символы, включающие символы данных Nchar и символы конца пакета ЕОР, которые посылает DS-макроячейка модуля SpaceWire. В этом состоянии в блоке 71 включен механизм обнаружения ошибок рассоединения и кодирования (в том числе ошибки четности и кодирования символов).From the Reset state, in which the
После сброса или ошибки в канале блок 70 выдачи данных находится в состоянии Сброс и при инициализации соединения по DS-линку может находиться в одном из четырех состояний:After a reset or an error in the channel, the
1. Сброс. Блок 70 выдачи данных ничего не делает, при этом сигналы данных и стробирования устанавливаются в «0».1. Reset. The
2. Запуск. Блок 1 выдачи данных посылает только NULL коды. Он не готов передавать информационные символы и не передает FCT символы.2. Launch. The
3. Передача FCT символов/NULL кодов. Блок 1 выдачи данных посылает FCT символы или NULL коды и не готов передавать информационные символы.3. Transmission of FCT characters / NULL codes. The
4. Run - обычный режим работы блока 70 выдачи данных (передача FCT символов/Nchars/NULL кодов). Он посылает FCT символы, NULL коды и информационные символы (Nchars/EOP).4. Run - the normal mode of operation of the
Блок 73 управления выполняет в устройстве функцию управляющего автомата, которым является машина состояний, граф которой представлен на фиг.10. Он контролирует работу блока 70 выдачи данных и блока 71 приема данных устройства, получая от них сигналы о состоянии и рассылая им управляющие сигналы. Машина состояний может находиться в различных состояниях, отражающих ход взаимодействия двух DS-макроячеек через DS-линк в зависимости от условий. В качестве событий или условий, вызывающих переходы из состояния в состояние, служат два типа сигналов: внешние (например, сброс) и внутренние управляющие сигналы. Внутренними управляющими сигналами, вызывающими переходы между состояниями, являются:The
- Прошло Т мкс - сигналы от таймеров в блоке 83 задержки вызывают переходы «Прошло 6,4 мкс» или «Прошло 12,8 мкс» и показывают наступления события - тайм-аута (временной задержки), после которого осуществляется переход из одного состояния в другое. Времена задержек выбраны в качестве номинальных величин для рассматриваемой реализации DS-макроячейки 2 в соответствии с требованиями стандарта SpaceWire.- T μs passed - the signals from the timers in
- Получен NULL-код - сигнал устанавливается на выходе 89 состояния блока 71 приема данных (см фиг.5), когда принят первый NULL-код.- Received a NULL code - the signal is installed at the
- Получен FCT символ - сигнал устанавливается на выходе 74 подтверждения приема символа управления потоком блока 71 приема данных и означает факт принятия FCT символа. Прием FCT символа является корректным только в состояниях Соединение или Рабочий режим. Прием FCT символа в других состояниях воспринимается как ошибка.- Received FCT symbol - the signal is set at the
- Получен Nchar - сигнал устанавливается на выходе 75 подтверждения приема информационного символа блока 71 приема данных и означает факт принятия информационного символа. Прием информационного символа в любом состоянии кроме состояния Run воспринимается как ошибка.- Received Nchar - the signal is installed at the
- Ошибка рассоединения - сигнал на выходе 89 состояния блока 71 приема данных означает отсутствие изменения сигналов на входе 8 данных и на входе 9 стробирования интерфейса DS-макроячейки с DS-линком в течение некоторого интервала времени Т3 (в рассматриваемой реализации DS-макроячейки по стандарту SpaceWire номинальное значение Т3=850 нс). Механизм определения ошибки рассоединения в блоке 71 запускается при первом изменении сигнала на одном из входов 8 или 9 (D in или S in) после выхода машины состояний из состояния Сброс.- Disconnect error - the signal at
- Ошибка кодировки - сигнал на выходе 89 состояния блока 71 приема данных означает определение ошибки четности в принятом символе либо ошибки из-за неправильного кодирования. Определение ошибки кодирования разрешается только при запущенном блоке 71 приема данных и после получения первого NULL-кода.- Encoding error - the signal at the
- Ошибка кредитования - сигнал на выходе 87 ошибки кредитования блока 72 управления потоком данных означает, что приняты информационные символы, которые не ожидаются DS-макроячейкой 2 (т.е. прием информационного символа в момент, когда уже приняты все информационные символы в ответ на отправленные FCT символы). Также ошибка кредитования возникает при приеме FCT символа в момент, когда увеличение кредита превысит максимальное значение, которое по стандарту SpaceWire должно быть равным хотя бы 56 байтам).- Credit error - a signal at the
Кроме внутренних управляющих сигналов, формируемых в блоке 71 приема данных и блоком 73 управления, машина состояний вырабатывает следующие внутренние условия для переходов:In addition to the internal control signals generated in the
- Ошибка приема - это условие обозначает возникновение ошибки рассоединения или сигнала ошибки кодирования.- Receive error - this condition indicates the occurrence of a disconnect error or an encoding error signal.
- Ошибка последовательности символов - это условие формируется машиной состояний по-разному в зависимости от текущего состояния:- Symbol sequence error - this condition is generated by the state machine differently depending on the current state:
a. Любые символы, принятые до первого NULL кода, игнорируются. В состояниях Ожидание и Готовность это приводит к ошибке, по которой осуществляется переход в состояние Сброс. На диаграмме состояний (см. фиг.13) указаны события «Получен FCT» и «Получен Nchar».a. Any characters received before the first NULL code are ignored. In the Standby and Ready states, this leads to an error, which causes the transition to the Reset state. In the state diagram (see FIG. 13), the events “Received FCT” and “Received Nchar” are indicated.
b. После получения первого NULL-кода получение FCT символа до отправки первого NULL-кода (то есть в состоянии Запуск) воспринимается как ошибка.b. After receiving the first NULL code, receiving the FCT character before sending the first NULL code (that is, in the Run state) is perceived as an error.
c. Информационный символ может быть принят только после того, как принят NULL-код и FCT символ, в противном случае ситуация является ошибочной. Поэтому в состояние Соединение событие «Получен Nchar» вызывает сброс устройства. Таким образом, информационные символы могут приниматься только в рабочем режиме.c. An information symbol can be received only after a NULL code and FCT symbol are received, otherwise the situation is erroneous. Therefore, in the Connection state, the Nchar Received event causes the device to reset. Thus, information symbols can only be received in operating mode.
В буфере приема блока 71 приема данных могут храниться принятые данные, принадлежащие как одному, так и нескольким пакетам. Байты данных разных пакетов разделяются признаком конца пакета, которые записываются в буфер после приема символа ЕОР из DS-линка. Формат информации на выходе 15 данных DS-макроячейки 2 (см. фиг.2), считываемой из каждой ячейки памяти буфера приема данных, соответствует табл.1.In the receive buffer of the
Коммуникационные устройства 1, взаимосвязанные коммуникационным каналом In-Out, изменяют свои режимы работы в соответствии с диаграммой состояния, приведенной на фиг.9. Изменение состояний устройства 1 осуществляется в соответствии с этой диаграммой машины состояний: от сброса по сигналу начальной установки, начинающейся со сброса каждой из сторон, соединенных коммуникационным каналом In-Out, до рабочего режима, в котором обеспечивается передача данных в обоих направлениях.
При включении питания кодек 5 начинает формировать на выходе 31 локальной синхронизации последовательность тактовых сигналов. Тактовые сигналы генерируются кодеком 5 на основе синхроимпульсов базовой частоты, поступающей со второго выхода 20 синхронизации блока 3 синхронизации. Локальная синхронизация определяет в устройстве 1 как скорость приема символов 8b в кодек 5 и последующей их буферизации в DS-макроячейке, так и скорость считывания байтов данных из DS-макроячейки, формирования на их основе символов 8b в блоке 4 и их последующей передачи в кодек 5.When the power is turned on, the
Из состояния Сброс после снятия сигнала начальной установки устройство 1 переходит в состояние Запуск. В этом состоянии устройство 1 инициирует процедуру установления соединение, которая начинается кодеком 5 8b/10b и фиксируется блоком 6 управления соединением. Кодеки 5 двух удаленных устройств 1 должны установить синхронизацию. Для этого они посылают друг другу первичные символы синхронизации формата, определенные как символы D10.2. После кодирования на выходе 32 кодека 5 он имеет вид «1010101010». После включения кодеки 5 в каждом из устройств 1 отправляют в канал Out символы синхронизации D10.2 в течение определенного интервала времени (не менее 20 мкс), после которого кодек переходит в состояние Ожидание. В этом состоянии продолжается отправка D10.2, и кодек ожидает синхронизации приема. После установления синхронизации кодек переходит в состояние Готовность. Кодек 5 на выходе 30 выставляет единичный уровень сигнала подтверждения синхронизации.From the Reset state after removing the initial setup signal,
После подтверждения синхронизации кодеку 5 необходимо осуществить выравнивание, то есть разделить входной поток битов, поступающий с выхода 33 блока 7, на 10-разрядные символы. Для этого используются специальные символы синхронизации ССС1, регулярно генерируемые блоком 4 передачи в формате 8b после включения для установления и поддержки соединения. Блок 4 формирует символ ССС1 на своем выходе 22 одновременно с единичным сигналом на выходе 23 признака типа символа через каждые 32 периода локальной синхронизации. То, что из ПЗУ 38 считывается именно символ ССС1, определяется тем фактором, что после сброса буфер выдачи данных в DS-макроячейке 2 находится в исходном (пустом) состоянии. В состоянии Готовность кодек 5 начинает передавать такие символы синхронизации, перекодировав их в формат 10b. После приема хотя бы одного аналогичного символа 10b из потока битов, получаемого по каналу In из удаленного коммуникационного устройства, устройство 1 на данной стороне переходит в состояние Run (рабочий режим). Кодек 5 формирует единичный сигнал на выходе 29 признака символа синхронизации, что свидетельствует об осуществлении синхронизации с частотой поступления принимаемых битовых сигналов.After synchronization confirmation, the
Формируемый на информационном выходе 28 код символа 8b вместе с единичным сигналом на выходе 29 (см. фиг.6, диаграммы b и с) поступаЕт в блок 6, где дешифрируется на дешифраторе 52 (см. фиг.4). Если код символа 8b на входе 59 совпадает с кодом ССС1 (см. табл.5), то на выходе 63 селекции первого симвода синхронизации дешифратора 52 формируется единичный сигнал. При этом устанавливаются в единичное состояние триггер 54 установления соединения и триггер 53 разрешения чтения, каждый из которых по сигналу сброса до этого был переведен в исходное нулевое состояние. Как только блок 6 управления соединением, зафиксировав прием ССС1, выставит единичные уровни на выходе 27 установления соединения и на выходе 26 разрешения чтения (см. фиг.6, диаграммы d и е), блок 4 передачи получает разрешение на выдачу символов данных по мере их накопления в буфере приема данных в DS-макроячейки 2 после поступления из DS-линка. Одновременно с этим кодек 5 может осуществлять выравнивание всех принимаемых из удаленного устройства 1 символов 10b, их перекодирование в формат 8b и выдачу с информационного выхода 28 в DS-макроячейку 2. Таким образом, коммуникационное устройство 1 в рабочем режиме имеет возможность передавать и принимать символы данных, наряду с периодическим обменом специальными символами синхронизации.The symbol code 8b generated at the information output 28 together with a single signal at the output 29 (see Fig. 6, diagrams b and c) enters
Передачу данных в коммуникационный канал Out в рабочем режиме устройство 1 осуществляет последовательно, считывая байты пакетных данных из буфера приема данных DS-макроячейки 2 по мере их поступления из DS-линка. При наличии разрешения чтения данных в виде единичного уровня на выходе 49 второго элемента 37 И в блоке 4 передачи (см. фиг.3) очередной байт данных считывается с выхода 15 данных DS-макроячейки 2, поступает на вход 40 данных блока 4 и далее на первый информационный вход мультиплексора 39 (см. фиг.7, диаграмма b). Байт данных проходит на выход 22 символа 8b блока 4 (см. фиг.7, диаграмма g), так как с выхода 23 ПЗУ 38 на управляющий вход мультиплексора 39 подается нулевой уровень. Нулевой сигнал признака типа символа на выходе 23 подтверждает, что в кодеке 5 поступающий в текущем такте символ 8b должен интерпретироваться как символ данных (см. фиг.7, диаграмма h). Каждый байт данных пакета, считываемый из DS-макроячейки 2, сопровождается нулевым признаком конца пакета на выходе 25, который подается на вход 41 блока 4 передачи. Если очередной переданный байт данных был последним в пакете, то в следующем такте признак конца пакета на выходе 25 DS-макроячейки 2 примет единичное значение (см. фиг.7, диаграмма d), в результате чего ПЗУ 38 на своем выходе 47 констант сформирует код символа 8b ССС3, который сопровождается единичным признаком типа символа на выходе 23 (см. фиг.7, диаграмма h). Co второго информационного входа мультиплексора 39 восьмиразрядный код этого специального символа 8b передается на его выход 22 (см. фиг.7, диаграмма g), поскольку на управляющем входе присутствует единичное значение.In the operating mode,
Если сигнал переноса на выходе 48 первого счетчика 35 примет единичное значение (см. фиг.7, диаграмма е), то ПЗУ 38 констант в текущем такте передает специальный символ для поддержки синхронизации соединения (ССС1 или ССС2). Тип спецсимвола выбирается в зависимости от состояния буфера передачи DS-макроячейки 2. Если сигнал Half Full равен «0», то генерируется код ССС1, если Half Full равен «1», то - ССС2. Кроме функции поддержки соединения, периодически выполняемой через определенный временной интервал (в данной реализации период между посылкой этих спецсимволов равен 32 такта локальной синхронизации), символ ССС1 разрешает противоположной стороне передачу данных, а ССС2 ее запрещает. Таким образом, передача символа ССС1 или ССС2 прерывает передачу байтов данных, и чтение из буфера не должно осуществляться в текущем такте. Поэтому сигнал переноса с выхода 48 запрещает прохождение через первый элемент 36 И запроса чтения данных. Так как на выходе 21 запроса на чтение данных присутствует нулевой уровень (см. фиг.7, диаграмма f), состояние буфера не изменяется и в следующем такте из него будет считан тот же байт данных, который будет передан в кодек 5 вслед за символом синхронизации (см. фиг.7, диаграмма b).If the transfer signal at the
При приеме битового потока кодек 5 8b/10b после декодирования выдает символы 8b на информационный выход 28 (см. фиг.2). Каждый символ 8b сопровождается битовым признаком символа синхронизации на выходе 29 (см. фиг.8, диаграммы b, с). Этот признак и байтовый код символа поступают на дешифратор 52 в блоке 6 управления соединением, в котором происходит дешифрирование символа. Если символ не является специальным символом синхронизации, вырабатывается сигнал WE на выходе 25 разрешения записи блока 6 (см. фиг.8, диаграммы d) для загрузки байта данных в буфер выдачи данных DS-макроячейки 2. Если символ 8b является специальным символом, который декодируется как единичный признак конца пакета на выходе 24 блока 6 (см. фиг.8, диаграмма е, такт 3), то дополнительно вырабатывается единичный сигнал WE на выходе 25 (см. фиг.8, диаграмма d). Поэтому признак конца пакета и данные с информационного выхода 28 кодека 5 буферизируются в DS-макроячейке 2 (см. фиг.8, диаграмма f). Если символ 8b декодируется как символ ССС1 или ССС2, то сигнал WE не вырабатывается (см. фиг.8, диаграмма d, такты 7 и 9), так как они предназначены для выравнивания символов в кодекс 5, а также используются блоком 6 для реализации механизма управления потоком данных в коммуникационном канале In-Out. Если символ 8b декодируется как символ ССС4, который используется для передачи NULL-кода, то сигнал WE также не формируется и запись в буфер DS-макроячейки 2 не происходит (см. фиг.8, диаграммы b, d, такт 10). Единственное предназначение NULL-кода - это поддержка синхронизации в кодеке 5 в течение пауз в передаче данных по коммуникационному каналу In-Out, поэтому никакой другой блок в устройстве 1 на него не реагирует.Upon receipt of the bit stream, the
Коммуникационное устройство 1 переходит в состояние Сброс при обнаружении ошибки соединения (см. диаграмму состояний на фиг.9), которая возникает в двух случаях: при потере синхронизации или выравнивания символов. В случае потери синхронизации кодек 5 8b/10b сбрасывает единичный уровень сигнала подтверждения синхронизации на выходе 30. В блоке 6 управления соединением (см. фиг.4) нулевой сигнал подтверждения синхронизации с входа 62 поступает на первый инверсный вход второго элемента 57 ИЛИ. Единичный сигнал ошибки с выхода 67 второго элемента 57 ИЛИ подается на первый вход сброса триггера 54 установления соединения, вызывая в следующем такте сброс в ноль сигнала установления соединения на выходе 27 триггера 54 (см. фиг.6, диаграмма d). Схема 58 сброса при этом формирует сигнал сброса на выходе 34 блока 6 управления соединением (см. фиг.6, диаграмма f), что приводит к сбросу кодека 4 и DS-макроячейки 2 и, как следствие, к новой инициализации соединения между всеми взаимосвязанными устройствами.The
При другом варианте возникновение ошибки соединения может быть вызвано потерей выравнивания символов из-за слишком длительного отсутствия специальных символов синхронизации ССС1 или ССС2, интервал Т3 поступления которых от удаленного устройства 1 выбран равным 32 тактам локальной синхронизации (ЛС). Для контроля этой ситуации второй счетчик 55 в блоке 6 управления соединением каждый такт ЛС инкрементирует свое состояние. Счетчик 55 сбрасывается в ноль при приеме любого из символов ССС1 или ССС2. Если символ ССС1 или ССС2 долгое время не поступает от устройства 1 с другой стороны соединения, то в итоге второй счетчик 55 достигает своего конечного состояния, которое превышает допустимое значение контролируемого интервала ожидания в два раза, что гарантирует надежное распознавание ошибки соединения из-за потери выравнивания символов. В этом состоянии счетчика 55 на его выходе 66 формируется единичный сигнал переноса, в результате чего на выходе 67 второго элемента 57 ИЛИ устанавливается сигнал ошибки, вызывающий сброс всего коммуникационного устройства 1.In another embodiment, the occurrence of a connection error can be caused by a loss of character alignment due to the absence of special synchronization symbols CCC1 or CCC2 for too long, the interval T3 of receipt of which from the
В рассматриваемой коммуникационной системе модули SpaceWire, к каждому из которых подключается устройство 1, могут иметь свой собственный блок питания. Взаимодействующие коммуникационные устройства 1 зачастую могут находиться на большом расстоянии друг от друга (порядка нескольких десятков и даже сотен метров). Поэтому блок 7 реализует функции гальванической развязки, благодаря чему обеспечиваются разрыв общей «земляной» цепи между взаимодействующими устройствами, защита всей коммуникационной системы от высоковольтных переходных процессов, уменьшение помех и искажений сигналов, а также увеличение степени электробезопасности. Гальваническая изоляция в устройстве 1 применяется для защиты от больших токов или напряжений, вызванных высоковольтными помехами и возникающих при наличии замкнутых цепей заземления. Такие замкнутые петли могут присутствовать в любой коммуникационной системе, где имеется несколько заземлений. Заземления в различных модулях бортовой распределенной вычислительной системы, связанных длинным кабелем, будут иметь различный потенциал, поэтому ток заземления будет проходить по соединительному кабелю. В отсутствие изоляции этот ток может создать дополнительные шумы, ухудшить качество канала или даже вывести из строя компоненты бортового комплекса. Токи, наводимые в длинных кабелях в условиях бортовых комплексов, например при включении и выключении большого числа электромоторов и других исполнительных механизмов, при электростатических разрядах или при внешних электромагнитных воздействиях, могут вызвать быстрые изменения потенциала заземления величиной в сотни или тысячи вольт. При этом на информационный сигнал, передаваемый по каналу, накладывается высоковольтный импульс. При отсутствии изоляции этот высоковольтный импульс может нарушить передачу сигнала или даже вывести систему из строя. Подключение всех модулей, связанных общим интерфейсом, к одному заземлению сможет защитить распределенный бортовой комплекс от таких разрушающих воздействий, а изоляция коммуникационных устройств друг от друга позволяет избавиться от замкнутых «петлевых» заземлений.In the communication system in question, the SpaceWire modules, to each of which
В блоке 7 гальванической развязки может использоваться любой из основных вариантов обеспечения гальванической развязки, позволяющих блокировать протекание тока от одного коммуникационного устройства 1 к другому, и при этом обеспечить передачу информации. Известными и широко применяемыми средствами гальванической изоляции являются трансформаторы и развязывающие конденсаторы, оптопары и блоки реализации волоконно-оптических линий связи, а также другие устройства гальванической развязки цифрового сигнала.In the
В макетных образцах коммуникационного устройства 1 для гальванической развязки DS-линка, входящих в коммуникационную систему (см фиг.1, а), для реализации блока 7 гальванической развязки использован TM1062DSA1 [http://www.digchip.com/datasheets/parts/datasheet/383/TM1062DSA.php] - модуль линейного интерфейса (приемопередатчик), обеспечивающий гальваническую развязку на основе трансформатора при передаче электрических сигналов по твинаксиальному кабелю или по экранированной витой паре. Скорость передачи электрических сигналов составляет 1,0625 Гбод. Длина соединительного кабеля между устройствами 1 в макете коммуникационной системы равна 100 м.In the prototypes of the
Кодек 5 8b/10b реализован на базе микросхемы CYV15G0101DXB [http://www.chipfind.ru/datasheet/cypress/cyp15g0101dxb.htm] - одноканального приемопередатчика серии HOTLink II. В данной реализации устройства 1 базовая частота синхросигналов, подаваемых из блока 3 синхронизации на вход синхронизации кодека 5, равна 40 МГц. Скорость выдачи дифференциальных сигналов, представляющих биты кодированных данных, из кодека 5 с выхода 32 составляет 1 МГбит/с. Частота локальной синхронизации на выходе 31 кодека 5 составляет 100 МГц. На частоте локальной синхронизации, равной 100 МГц, работает большинство блоков DS-макроячейки 2, при этом блок 70 выдачи данных и блок 71 приема данных поддерживают передачу и прием данных в DS-линке на частотах в диапазоне от 2 до 400 МГц.The
Таким образом, экспериментальный образец коммуникационной системы, содержащей два макета предлагаемого коммуникационного устройства, связанных 100-метровым кабелем, подтверждает реализуемость предлагаемого технического решения для обеспечения гальванической изоляции модулей SpaceWire, взаимодействующих на больших расстояниях, существенно превышающих ограничения, предусмотренные стандартом SpaceWire. При этом взаимодействие модулей SpaceWire осуществляется на максимально возможной скорости передачи и приема данных в DS-линке, равной 400 Мбит/с. Данное техническое решение способствует достижению более высоких показателей надежности и быстродействия по сравнению с известными аналогами, а также существенному увеличению области применения модулей SpaceWire, что является важным фактором при использовании данных устройств в бортовых и встраиваемых применениях. Поэтому предложенное коммуникационное устройство для гальванической развязки DS-линка имеет значительные функциональные преимущества перед известными аналогами и может применяться для связи любых устройств, имеющих интерфейс SpaceWire.Thus, an experimental model of a communication system containing two mock-ups of the proposed communication device connected by a 100-meter cable confirms the feasibility of the proposed technical solution for galvanic isolation of SpaceWire modules interacting over long distances, significantly exceeding the limits stipulated by the SpaceWire standard. At the same time, the interaction of SpaceWire modules is carried out at the maximum possible data transmission and reception speed in the DS-link, equal to 400 Mbps. This technical solution helps to achieve higher reliability and performance compared to well-known counterparts, as well as a significant increase in the scope of SpaceWire modules, which is an important factor when using these devices in on-board and built-in applications. Therefore, the proposed communication device for galvanic isolation of the DS-link has significant functional advantages over the known analogues and can be used to communicate any device with a SpaceWire interface.
Claims (3)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2012111031/08A RU2485580C1 (en) | 2012-03-22 | 2012-03-22 | Communication device for ds-link galvanic isolation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2012111031/08A RU2485580C1 (en) | 2012-03-22 | 2012-03-22 | Communication device for ds-link galvanic isolation |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2485580C1 true RU2485580C1 (en) | 2013-06-20 |
Family
ID=48786495
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2012111031/08A RU2485580C1 (en) | 2012-03-22 | 2012-03-22 | Communication device for ds-link galvanic isolation |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2485580C1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002091586A2 (en) * | 2001-05-08 | 2002-11-14 | International Business Machines Corporation | 8b/10b encoding and decoding for high speed applications |
EP0971501B1 (en) * | 1990-05-25 | 2006-03-15 | STMicroelectronics Limited | Communication interface |
RU2405196C1 (en) * | 2009-05-04 | 2010-11-27 | Федеральное государственное унитарное предприятие научно-исследовательский институт "Субмикрон" | Link-port switch |
RU103013U1 (en) * | 2010-05-26 | 2011-03-20 | Закрытое акционерное общество "Электронно-вычислительные информационные и инструментальные системы" | COMMUNICATION INTERFACE DEVICE |
-
2012
- 2012-03-22 RU RU2012111031/08A patent/RU2485580C1/en active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0971501B1 (en) * | 1990-05-25 | 2006-03-15 | STMicroelectronics Limited | Communication interface |
WO2002091586A2 (en) * | 2001-05-08 | 2002-11-14 | International Business Machines Corporation | 8b/10b encoding and decoding for high speed applications |
RU2405196C1 (en) * | 2009-05-04 | 2010-11-27 | Федеральное государственное унитарное предприятие научно-исследовательский институт "Субмикрон" | Link-port switch |
RU103013U1 (en) * | 2010-05-26 | 2011-03-20 | Закрытое акционерное общество "Электронно-вычислительные информационные и инструментальные системы" | COMMUNICATION INTERFACE DEVICE |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10673565B2 (en) | Confirming data accuracy in a distributed control system | |
US8838822B2 (en) | Media converter and a system for mutually converting a packet-based data stream into a serial data stream | |
US20030154427A1 (en) | Method for enforcing that the fail-silent property in a distributed computer system and distributor unit of such a system | |
US4972161A (en) | Clock recovery for serial data communications system | |
EP1130842B1 (en) | Communications interface between clock domains with minimal latency | |
JP2953763B2 (en) | Optical transceiver | |
US6674971B1 (en) | Optical communication network with receiver reserved channel | |
US4282512A (en) | Data communication system | |
EP0430051A2 (en) | Byte wide elasticity buffer | |
US7333518B2 (en) | Transmission method and transmission system as well as communications device | |
Takagi et al. | CSMA/CD with deterministic contention resolution | |
EP1700224B1 (en) | Receiver corporation | |
RU126162U1 (en) | COMMUNICATION INTERFACE DEVICE FOR NETWORK Space Wire | |
RU2485580C1 (en) | Communication device for ds-link galvanic isolation | |
RU127213U1 (en) | DS-LINK COMMUNICATION DEVICE | |
US4835776A (en) | Communication filter | |
EP1668832B1 (en) | Scalable device-to-device interconnection | |
RU2483351C1 (en) | COMMUNICATION INTERFACE DEVICE FOR SpaceWire NETWORK | |
JP2648752B2 (en) | Device that guarantees accurate decoding of data information | |
RU2700560C1 (en) | Gigaspacewire communication interface device | |
US4670873A (en) | System for setting up data transmission circuits between a plurality of stations | |
RU187642U1 (en) | GIGASPACEWIRE COMMUNICATION INTERFACE DEVICE | |
US20140068130A1 (en) | Information processing apparatus and controlling method | |
Hutchison et al. | Development of the FDDI physical layer | |
EP0087664B1 (en) | Phase decoder for data communication systems |