RU2700560C1 - Gigaspacewire communication interface device - Google Patents
Gigaspacewire communication interface device Download PDFInfo
- Publication number
- RU2700560C1 RU2700560C1 RU2018122522A RU2018122522A RU2700560C1 RU 2700560 C1 RU2700560 C1 RU 2700560C1 RU 2018122522 A RU2018122522 A RU 2018122522A RU 2018122522 A RU2018122522 A RU 2018122522A RU 2700560 C1 RU2700560 C1 RU 2700560C1
- Authority
- RU
- Russia
- Prior art keywords
- input
- output
- data
- symbol
- unit
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Communication Control (AREA)
Abstract
Description
Описание изобретенияDescription of the invention
Настоящее изобретение представляет собой устройство (систему) коммуникационного интерфейса и относится к цифровой вычислительной технике, а именно, к высокоскоростным коммуникационным системам для высокопроизводительных многопроцессорных вычислительных систем с распределенной обработкой информации и локальным вычислительным сетям, создаваемых на базе технологии SpaceWire [ECSS Standard ECSS-E-50-12A, "SpaceWire, Links, Nodes, Routers and Networks", Issue 1, European Cooperation for Space Data Standardization, February 2003.]. Данное устройство предназначено, в частности, для использования при построении многопроцессорных вычислительных систем с распределенной архитектурой, используемых во встраиваемых применения, в том числе, в бортовых вычислительных комплексах, а также бортовых локальных сетей.The present invention is a communication interface device (system) and relates to digital computing, namely, high-speed communication systems for high-performance multiprocessor computing systems with distributed information processing and local area networks based on SpaceWire technology [ECSS Standard ECSS-E- 50-12A, "SpaceWire, Links, Nodes, Routers and Networks",
В качестве аналога из уровня техники известен коммуникационный интерфейс, описанный в патенте, в котором при передаче данных по последовательному коммуникационному каналу используется преобразование 8b/10b для представления восьмибитовых символов в виде 10-битовых кодов. В устройствах, взаимодействующих через данный коммуникационный интерфейс, каждые восемь битов исходной последовательности заменяются 10 битами в соответствии с определенными правилами. В результате для 256 возможных комбинаций из восьми входных битов получается 1024 возможные комбинации для 10 выходных битов. Но разрешенными из этих 1024 комбинаций являются только 256, а остальные - запрещенными. Как правило, такая избыточность используется для того, чтобы повысить помехоустойчивость кодирования (если при приеме обнаруживается запрещенная последовательность, то распознается ошибка передачи). Кроме того, такая избыточность улучшает самосинхронизирующие свойства кода, поскольку исключает возможность появления в цепочке передаваемых битов длинных последовательностей нулей и единиц, что способствует, в конечном счете, повышению надежности работы устройства. При приеме данных осуществляется декодирование 8b/10b, то есть каждой группе из 10 битов сопоставляется восемь битов.As an analogue from the prior art, the communication interface described in the patent is known in which, when transmitting data on a serial communication channel, the 8b / 10b transform is used to represent eight-bit characters as 10-bit codes. In devices that communicate through 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 the 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.
Недостаток этого подхода состоит в отсутствии возможности передачи специальных управляющих кодов наряду с символами данных. Специальные управляющие коды необходимы для поддержки системных функций и управления в реальном масштабе времени, что существенно ограничивает область применения.The disadvantage of this approach is the inability to transmit special control codes along with data symbols. Special control codes are needed to support system functions and real-time control, which significantly limits the scope.
Известно устройство преобразования 8b/10b, [US Patent 06977599 В2. 8В/10В encoding and decoding for high speed applications, Apr 30, 2002]. используемый в стандарте FibreChannel. Устройство содержит блок кодирования 8b/10b, выходной 10-разрядный сдвиговый регистр, обеспечивающий преобразование параллельных 10-битовых кодов в последовательный поток битов, выдаваемых в коммуникационный интерфейс, входной 10-разрядный сдвиговый регистр, обеспечивающий обратное преобразование последовательного потока битов в параллельные 10-битовые коды и блок декодирования 8b/10b. Устройство работает на локальной частоте в 10 раз меньшей частоты передачи битов в коммуникационном интерфейсе. Применение кода 8b/10b позволяет использовать в коммуникационном канале одну передающую линию данных, так как при кодировании 8b/10b имеется возможность передачи наряду с символами данных специального встроенного символа тактирования, предназначенного для синхронизации взаимодействующих устройств.A known conversion device 8b / 10b, [US Patent 06977599 B2. 8B / 10B encoding and decoding for high speed applications, Apr 30, 2002]. used in the FibreChannel standard. The device contains an 8b / 10b encoding unit, an output 10-bit shift register that provides conversion of 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
В качестве недостатка необходимо отметить, что устройство не обеспечивает передачу в реальном масштабе времени различных специальных управляющих кодов (системных прерываний, маркеров системного времени и других управляющих сигналов, необходимых для управления на системном уровне), поскольку отсутствует возможность вставить управляющий код внутрь последовательности передаваемых восьмибитовых символов данных одного кадра. Необходимость ожидания окончания передачи очередного кадра данных проводит к существенным временным задержкам при выполнении системных функций. Кроме того, невозможность реализации системных механизмов в реальном масштабе времени значительно сужает область применения.As a drawback, it should be noted that the device does not provide real-time transmission of various special control codes (system interrupts, system time markers and other control signals necessary for control at the system level), since it is not possible to insert a control code into the sequence of transmitted eight-bit characters data of one frame. The need to wait for the end of the transmission of the next data frame leads to significant time delays in performing system functions. In addition, the inability to implement system mechanisms in real time significantly reduces the scope.
Известен последовательный коммуникационный интерфейс, реализующий способ 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), позволяет передавать информационные символы в виде пакетов произвольной длины. Такая возможность упрощает структуру коммутационных узлов (коммутаторов и концентраторов), применяемых для передачи и коммутации битовых потоков от бортовых датчиков к обрабатывающим узлам в распределенных вычислительных комплексах.A serial communication interface is known that implements a DS-coding method in accordance with the SpaceWire standard [ECSS Standard ECSS-E-50-12A, "SpaceWire, Links, Nodes, Routers and Networks",
Недостатком интерфейса SpaceWire является наличие джиттера (вариации времени задержки) между параллельно передаваемыми D- и S-сигналами в физическом канале. DS-кодирование из-за необходимости использования двух линий для передачи битов данных и сигналов стробирования предъявляет достаточно жесткие требования к скосу (фазовому сдвигу) и джиттеру D- и S-сигналов, что затрудняет его использование на расстояниях более 10 метров. Так же наличие двух линий для каждого направления передачи затрудняет использование гальванической развязки из-за возникающих разных задержек на самой развязке, что существенно ограничивает область применения устройств SpaceWire в бортовых распределенных вычислительных комплексах.The disadvantage of the SpaceWire interface is the presence of jitter (variation of the delay time) between the parallel transmitted D- and S-signals in the physical channel. Due to the need to use two lines for transmitting data bits and gating signals, DS coding places rather stringent requirements on the bevel (phase shift) and jitter of D and S signals, which makes it difficult to use at distances of more than 10 meters. Also, the presence of two lines for each direction of transmission makes it difficult to use galvanic isolation due to various delays at the isolation itself, which significantly limits the scope of SpaceWire devices in on-board distributed computing complexes.
Известно устройство коммуникационного интерфейса [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 0458648 A2] для использования в коммуникационной системе, соединяющей как минимум два компьютера, причем устройство коммуникационного интерфейса, содержащее блок управления, блок управления потоком данных, блок выдачи данных и блок приема данных, входы данных и стробирования которого являются соответственно входами данных и стробирования интерфейса устройства с каналом приема информации, выходы данных и стробирования интерфейса устройства с каналом выдачи информации являются соответственно выходами данных и стробирования блока выдачи данных. Блок управления потоком устройства с помощью специальных управляющих символов управления потоком 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 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 [Патент РФ №2483351 С1 на изобретение, заявка №2012115639/08, заявл. 19.04.2012, опубл. 27.05.2013 Бюл. №15]. Известное устройство, реализующее коммуникационный интерфейс GigaSpaceWire, содержит блок выдачи данных, преобразователь передаваемых символов, приемопередатчик символов, преобразователь принимаемых символов, блок приема данных, блок проверки соединения, блок управления и блок управления потоком данных, выход запроса на выдачу символа управления потоком которого соединен с одноименным входом блока выдачи данных, выход готовности выдачи символа управления потоком которого соединен с одноименным входом блока управления потоком данных, входы подтверждения приема символа управления потоком и подтверждения приема информационного символа которого соединены соответственно с одноименными выходами блока приема данных и одноименными входами блока управления, выход ошибки кодировки символа которого является выходом ошибки кодировки символа системного интерфейса устройства, вход синхронизации которого соединен с одноименными входами блока выдачи данных, блока приема данных, блока управления потоком данных и блока управления, вход сброса системного интерфейса устройства является входом сброса блока управления, первый выход сброса которого соединен входами сброса блока выдачи данных, преобразователя передаваемых символов и приемопередатчика символов, второй выход сброса блока управления соединен с входом сброса блока приема данных, выход «получен NULL» которого соединен с одноименным входом блока управления, вход чтения данных системного интерфейса устройства является одноименным входом блока приема данных, выходы данных для приема и готовности данных для приема которого являются соответствующими выходами системного интерфейса устройства, выход ошибки кредитования системного интерфейса устройства является одноименным выходом блока управления потоком данных и соединен с одноименным входом блока управления, третий выход сброса которого соединен с входом сброса блока управления потоком данных, входы подтверждения выдачи информационного символа и разрешения приема данных которого соединены с одноименными выходами соответственно блока выдачи данных и блока приема данных, выход готовности выдачи данных системного интерфейса устройства является одноименным выходом блока выдачи данных, входы записи и данных для выдачи системного интерфейса устройства являются соответствующими входами блока выдачи данных, выход ошибки рассоединения блока проверки соединения соединен с одноименным входом блока управления, информационный вход приемопередатчика символов соединен с выходом символа 8b преобразователя передаваемых символов, выход готовности выдачи символа которого соединен с входом готовности блока выдачи данных, информационный выход и выход типа символа которого соединены соответственно с входами данных и типа символа преобразователя передаваемых символов, выход признака спецсимвола которого соединен с входом признака типа символа приемопередатчика символов, выход битовых сигналов которого является одноименным выходом коммуникационного интерфейса устройства, выход локальной синхронизации приемопередатчика символов соединен с одноименными входами преобразователя передаваемых символов, преобразователя принимаемых символов, блока управления, блока приема данных и блока выдачи данных, вход записи управляющего кода которого является одноименным входом системного интерфейса устройства, выход готовности выдачи управляющего кода которого является одноименным выходом блока выдачи данных, вход управляющего кода для выдачи которого является одноименным входом системного интерфейса устройства, выход принятого управляющего кода которого является одноименным выходом блока приема данных, выход готовности принятого управляющего кода которого является одноименным выходом системного интерфейса устройства, вход чтения управляющего кода которого является одноименным входом блока приема данных, информационный вход и вход типа символа которого соединены соответственно с одноименными выходами преобразователя принимаемых символов, информационный вход которого соединен с одноименным выходом приемопередатчика символов, выход символа 8b которого соединен с информационным входом блока проверки соединения, вход признака спецсимвола которого соединен с одноименными входом преобразователя принимаемых символов и выходом приемопередатчика символов, выход ошибки кодирования которого соединен с одноименным входом блока управления, вход установления соединения которого соединен с одноименным выходом блока проверки соединения, вход признака соединения которого соединен с одноименным входом преобразователя принимаемых символов и с одноименным выходом приемопередатчика символов, выход синхронизации приема которого соединен с одноименным входом блока проверки соединения, вход битовых сигналов приемопередатчика символов является одноименным входом коммуникационного интерфейса устройства, причем блок управления потоком данных содержит формирователь запросов кредитования, счетчик принятых символов, счетчик переданных символов и детектор ошибки кредитования, первый выход которого является выходом ошибки кредитования блока управления потоком данных, вход разрешения приема данных и вход готовности выдачи символа управления которого являются соответственно первым и вторым входами формирователя запросов кредитования, третий вход которого соединен с выходом состояния счетчика принятых символов, вход синхронизации которого является входом синхронизации блока управления потоком данных и соединен с входами синхронизации формирователя запросов кредитования, счетчика переданных символов и детектора ошибки кредитования, вход сброса блока управления потоком данных соединен с входами сброса формирователя запросов кредитования, счетчика принятых символов, счетчика переданных символов и детектора ошибки кредитования, первый информационный вход которого соединен с выходом ошибки кредита приема счетчика принятых символов, первый управляющий вход которого соединен с выходом формирователя запросов кредитования и является выходом запроса на выдачу символа управления потоком блока управления потоком данных, второй управляющий вход счетчика принятых символов является входом подтверждения приема информационного символа блока управления потоком данных, вход подтверждения приема символа управления потоком которого является первым управляющим входом счетчика переданных символов, второй управляющий вход которого является входом подтверждения выдачи информационного символа блока управления потоком данных, второй информационный вход детектора ошибки кредитования соединен с выходом состояния счетчика переданных символов; блок управления содержит регистр состояния, блок формирования нового состояния и формирователь управляющих сигналов, вход сброса которого является входом сброса блока управления и соединен с входами сброса регистра состояния, выход состояния которого соединен с первым управляющим входом блока формирования нового состояния и с управляющим входом формирователя управляющих сигналов, выход установления соединения, выход ошибки рассоединения и выход ошибки кодировки символа регистра состояния являются одноименными выходами блока управления, вход синхронизации которого является входом синхронизации регистра состояния, вход управления состоянием которого соединен с выходом управления состоянием блока формирования нового состояния, входы установления соединения, ошибки кредитования, ошибки рассоединения, ошибки кодировки символа, подтверждения приема символа управления потоком, и подтверждения приема информационного символа которого являются одноименными входами блока управления, вход локальной синхронизации которого соединен с одноименными входом формирователя управляющих сигналов, первый, второй, третий выходы сброса и выход разрешения передачи символа управления потоком которого являются одноименными выходами блока управления, вход «Получен NULL» которого является одноименным входом блока формирования нового состояния; блок проверки соединения содержит дешифратор символа поддержки связи, триггер установки связи, счетчик ожидания, первый элемент ИЛИ, второй элемент ИЛИ и элемент И, выход которого является выходом ошибки рассоединения блока проверки соединения, информационный вход и вход признака спецсимвола которого являются соответственно первым и вторым входами дешифратора символа поддержки связи, выход селекции символа поддержки связи которого соединен с первым входом первого элемента ИЛИ, выход которого соединен с входом данных триггера установки связи, выход установления соединения которого соединен со вторым входом первого элемента ИЛИ, с первым входом элемента И и является выходом установления соединения блока проверки соединения, вход признака соединения которого соединен с разрешающим входом дешифратора, с инверсным входом сброса триггера установки связи и с первым инверсным входом второго элемента ИЛИ, выход признака рассоединения и второй вход которого соединены соответственно со вторым входом элемента И и выходом переноса счетчика ожидания, декрементный вход которого соединен со входом синхронизации триггера установки связи и является входом синхронизации приема блока проверки соединения.The closest analogue to the claimed is a communication interface device for the SpaceWire network [RF Patent No. 2483351 C1 for invention, application No. 2012115639/08, declared. 04/19/2012, publ. 05/27/2013 Bull. No. 15]. A known device that implements the GigaSpaceWire communication interface comprises a data output unit, a transmit symbol converter, a symbol transceiver, a received symbol converter, a data receive unit, a connection test unit, a control unit and a data flow control unit, the output of the request for issuing a flow control symbol of which is connected to the input of the data output unit of the same name, the output of the readiness of the flow control symbol being connected to the input of the data flow control unit of the same name, You confirm the receipt of the flow control symbol and confirm the reception of the information symbol of which is connected respectively to the outputs of the data receiving unit and the inputs of the control unit of the same name, the output of the character encoding error of which is the output of the character encoding error of the device system interface, the synchronization input of which is connected to the inputs of the data output unit of the same name , data receiving unit, data flow control unit and control unit, reset input of the system interface of the jav device is the reset input of the control unit, the first reset output of which is connected to the reset inputs of the data output unit, the transmitter of transmitted characters and the symbol transceiver, the second reset output of the control unit is connected to the reset input of the data receive unit, the output “received NULL” of which is connected to the same input of the control unit, The input for reading data from the system interface of the device is the input of the data receiving unit of the same name, the data outputs for receiving and the readiness of the data for receiving are the corresponding output In the system interface of the device, the credit error output of the system interface of the device is the output of the data flow control unit of the same name and is connected to the input of the control unit of the same name, the third reset output of which is connected to the reset input of the data flow control unit, whose acknowledgment inputs and data reception permissions are connected with the outputs of the same name, respectively, of the data output unit and the data reception unit, the output readiness output of the data of the system interface of the device the two is the output of the data output unit of the same name, the recording and data inputs for issuing the system interface of the device are the corresponding inputs of the data output unit, the connection error of the connection verification unit is connected to the input of the control unit of the same name, the information input of the symbol transceiver is connected to the output of the transmitted symbol symbol 8b, the readiness output of the character issuance of which is connected to the readiness input of the data output unit, the information output and the character type output of which are respectively connected with the data inputs and the symbol type of the transmitter of the transmitted symbols, the output of the special symbol attribute of which is connected to the input of the symbol type of the symbol transceiver, the output of the bit signals of which is the same output of the device communication interface, the local synchronization output of the symbol transceiver is connected to the inputs of the transmitter of the transmitted symbols, converter received characters, control unit, data receiving unit and data output unit, input recording the control code of which is the input of the system interface of the device of the same name, the output of the readiness for issuing the control code of which is the output of the data output unit of the same name, the input of the control code for the output of which is the input of the system interface of the same name, the output of the received control code of which is the output of the data reception unit of the same name, output the readiness of the accepted control code of which is the output of the device system interface of the same name, the read input is controlled its code of which is the input of the data reception unit of the same name, the information input and the input of the symbol type of which are connected respectively to the outputs of the converter of the received symbols, the information input of which is connected to the same output of the symbol transceiver, the output of the symbol 8b of which is connected to the information input of the connection check unit, sign input the special character of which is connected to the input of the converter of the received symbols and the output of the transceiver of the symbols of the same name, the error output is which is connected to the input of the control unit of the same name, the connection establishment input of which is connected to the output of the connection check unit of the same name, the connection attribute input of which is connected to the input of the received symbol transformer of the same name and the symbol transceiver output of the same name, the reception synchronization output of which is connected to the input of the connection check unit of the same name , the input of the bit signals of the symbol transceiver is the input of the same device communication interface, m, the data flow control unit contains a credit request generator, a received symbol counter, a transmitted symbol counter and a credit error detector, the first output of which is a credit error output of the data flow control unit, the data reception permission input and the ready control output symbol input are respectively the first and second the inputs of the credit request generator, the third input of which is connected to the status output of the counter of received symbols, the synchronization input of which is is the synchronization input of the data flow control unit and connected to the synchronization inputs of the credit request generator, the counter of transmitted symbols and the credit error detector, the reset input of the data flow control unit is connected to the reset inputs of the credit request generator, the counter of the received symbols, the transmitted symbol counter and the credit error detector, the first information input of which is connected to the output of a credit error of receiving a counter of received symbols, the first control input of which is connected is connected with the output of the credit request generator and is the output of the request for issuing the flow control symbol of the data flow control unit, the second control input of the counter of received symbols is the input of the acknowledgment of the information symbol of the data flow control unit, the input of the acknowledgment of receipt of the flow control symbol of which is the first control input of the transmitted counter characters, the second control input of which is the confirmation input of the information symbol of the control unit by eye data, second information input credit error detector connected to the output state of the counter of transmitted symbols; the control unit contains a status register, a new state generation unit and a control signal generator, the reset input of which is a reset input of the control unit and connected to the reset inputs of the status register, the status output of which is connected to the first control input of the new state generation unit and to the control input of the control signal generator , the connection establishment output, the disconnect error output and the status register symbol encoding error output are the outputs of the control unit of the same name the synchronization input of which is the synchronization input of the status register, the status control input of which is connected to the state control output of the new state generation unit, connection establishment inputs, credit errors, disconnection errors, symbol encoding errors, acknowledgment of receipt of the flow control symbol, and acknowledgment of receipt of the information symbol which are the inputs of the same name of the control unit, the local synchronization input of which is connected to the inputs of the same name For control signals, the first, second, third outputs of the reset and the output enable transmission of the flow control symbol of which are the outputs of the control unit of the same name, the “Received NULL” input of which is the same name of the unit for generating a new state; the connection verification unit contains a communication support symbol decoder, a communication setup trigger, a standby counter, a first OR element, a second OR element, and an AND element, the output of which is the output of the connection error of the connection verification unit, the information input and the input of which special character is the first and second inputs, respectively the decoder of the communication support symbol, the output of the selection of the communication support symbol which is connected to the first input of the first OR element, the output of which is connected to the data input of the trigger communication ki, the connection establishment output of which is connected to the second input of the first OR element, to the first input of the AND element, and is the connection establishment block connection connection output, the input of the connection indicator of which is connected to the enable input of the decoder, with the inverse reset input of the communication setup trigger and with the first inverse the input of the second OR element, the output of the disconnect sign and the second input of which are connected respectively to the second input of the AND element and the transfer output of the standby counter, the decrement input of which connected to the input of the synchronization flip-flop connection setup and reception timing is input to verify the connection block.
Данное устройство поддерживает работу на частотах 1 ГГц, с локальной частотой в 10 раз меньше, чем частота передачи и приема битов. То есть оно позволяет передавать поток битов данных в коммуникационном интерфейсе на частоте в десять раз большей локальной частоты, на которой работают все остальные блоки устройства. Однако увеличение длины кабеля и повышение частоты передачи данных приводит к проблемам с достижением максимальной пропускной способности при обеспечении постоянной загруженности канала.This device supports operation at frequencies of 1 GHz, with a
Недостатком данного технического является уменьшение коэффициента использования пропускной способности канала при передаче на большие расстояния и/или со скоростями, превышающими 1 Гбит/с, из-за наличия довольно длительного простоя канала, когда отсутствует реальная передача данных. При таких ситуациях не удается повысить полезную пропускную способность канала, так как применяемый механизм кредитования не позволяет эффективно использовать максимальную долю пропускной способности устройства для реальной передачи символов пользовательских данных. На расстояниях свыше 10 метров и на скорости 1 Гбит/с ограничение в пределах 56 канальных символов величины кредита, предоставляемого в соответствии со стандартом SpaceWire при передаче подряд семи символов запроса кредита FCT в вышеописанном решении, недостаточно для обеспечения эффективного механизма передачи кредитов, так как служебные символы кредитования просто не успевают доходить вовремя до передающего интерфейса из-за физических задержек в кабеле, соединяющем взаимодействующие устройства коммуникационного интерфейса. Таким образом, при отсутствии кредитов, взаимодействующие стороны не в состоянии эффективно поддерживать передачу и в канале происходят пропуски в транзакциях передачи символов данных, заполняемые передачей служебных символов NULL.The disadvantage of this technical is the reduction in the utilization rate of the channel capacity when transmitting over long distances and / or with speeds exceeding 1 Gbit / s, due to the rather long idle time of the channel when there is no real data transmission. In such situations, it is not possible to increase the useful bandwidth of the channel, since the applied lending mechanism does not allow efficient use of the maximum share of the bandwidth of the device for the actual transmission of user data characters. At distances of more than 10 meters and at a speed of 1 Gbit / s, a limit of 56 channel characters of the loan amount provided in accordance with the SpaceWire standard when transmitting seven characters of FCT loan request in a row in the above solution is not enough to provide an effective mechanism for transferring loans, since service credit symbols simply do not have time to reach the transmitting interface in time due to physical delays in the cable connecting the interacting devices of the communication interface. Thus, in the absence of credits, the interacting parties are not able to effectively support the transfer, and gaps occur in the channel in data symbol transfer transactions, filled with the transmission of NULL service symbols.
В основу настоящего изобретения поставлена задача повышение пропускной способности устройства коммуникационного интерфейса при обеспечении расширения функциональных возможностей за счет реализации возможности передачи данных без пробелов в виде пустых символов при передаче постоянного потока данных. Техническим результатом предлагаемого изобретения является расширение области применения устройства коммуникационного интерфейса за счет обеспечения адаптируемого к конкретным параметрам канала связи механизма кредитования при передаче данных.The basis of the present invention is the task of increasing the throughput of the communication interface device while providing enhanced functionality by realizing the possibility of transmitting data without spaces in the form of empty characters when transmitting a constant data stream. The technical result of the invention is to expand the scope of the communication interface device by providing a lending mechanism that is adaptable to specific parameters of the communication channel when transmitting data.
Технический результат достигается тем, что в предложенном устройстве коммуникационного интерфейса GigaSpaceWire, содержащем блок выдачи данных, преобразователь передаваемых символов, приемопередатчик символов, преобразователь принимаемых символов, блок приема данных, блок проверки соединения, блок управления и блок управления потоком данных, выход запроса на выдачу символа управления потоком которого соединен с одноименным входом блока выдачи данных, выход готовности выдачи символа управления потоком которого соединен с одноименным входом блока управления потоком данных, входы подтверждения приема символа управления потоком и подтверждения приема информационного символа которого соединены соответственно с одноименными выходами блока приема данных и одноименными входами блока управления, выход ошибки кодировки символа которого является выходом ошибки кодировки символа системного интерфейса устройства, вход синхронизации которого соединен с одноименными входами блока выдачи данных, блока приема данных, блока управления потоком данных и блока управления, вход сброса системного интерфейса устройства является входом сброса блока управления, первый выход сброса которого соединен с входами сброса блока выдачи данных, преобразователя передаваемых символов и приемопередатчика символов, второй выход сброса блока управления соединен с входом сброса блока приема данных, выход «получен NULL» которого соединен с одноименным входом блока управления, вход чтения данных системного интерфейса устройства является одноименным входом блока приема данных, выходы данных для приема и готовности данных для приема которого являются соответствующими выходами системного интерфейса устройства, выход ошибки кредитования системного интерфейса устройства является одноименным выходом блока управления потоком данных и соединен с одноименным входом блока управления, третий выход сброса которого соединен с входом сброса блока управления потоком данных, входы подтверждения выдачи информационного символа и разрешения приема данных которого соединены с одноименными выходами соответственно блока выдачи данных и блока приема данных, выход готовности выдачи данных системного интерфейса устройства является одноименным выходом блока выдачи данных, входы записи и данных для выдачи системного интерфейса устройства являются соответствующими входами блока выдачи данных, выход ошибки рассоединения блока проверки соединения соединен с одноименным входом блока управления, информационный вход приемопередатчика символов соединен с выходом символа 8b преобразователя передаваемых символов, выход готовности выдачи символа которого соединен с входом готовности блока выдачи данных, информационный выход и выход типа символа которого соединены соответственно с входами данных и типа символа преобразователя передаваемых символов, выход признака спецсимвола которого соединен с входом признака типа символа приемопередатчика символов, выход битовых сигналов которого является одноименным выходом коммуникационного интерфейса устройства, выход локальной синхронизации приемопередатчика символов соединен с одноименными входами преобразователя передаваемых символов, преобразователя принимаемых символов, блока управления, блока приема данных и блока выдачи данных, вход записи управляющего кода которого является одноименным входом системного интерфейса устройства, выход готовности выдачи управляющего кода которого является одноименным выходом блока выдачи данных, вход управляющего кода для выдачи которого является одноименным входом системного интерфейса устройства, выход принятого управляющего кода которого является одноименным выходом блока приема данных, выход готовности принятого управляющего кода которого является одноименным выходом системного интерфейса устройства, вход чтения управляющего кода которого является одноименным входом блока приема данных, информационный вход и вход типа символа которого соединены соответственно с одноименными выходами преобразователя принимаемых символов, информационный вход которого соединен с одноименным выходом приемопередатчика символов, выход символа 8b которого соединен с информационным входом блока проверки соединения, вход признака спецсимвола которого соединен с одноименными с одноименными входом преобразователя принимаемых символов и выходом приемопередатчика символов, выход ошибки кодирования которого соединен с одноименным входом блока управления, вход установления соединения которого соединен с одноименным выходом блока проверки соединения, вход признака соединения которого соединен с одноименным входом преобразователя принимаемых символов и с одноименным выходом приемопередатчика символов, выход синхронизации приема которого соединен с одноименным входом блока проверки соединения, вход битовых сигналов приемопередатчика символов является одноименным входом коммуникационного интерфейса устройства, причем блок управления потоком данных содержит формирователь запросов кредитования, счетчик принятых символов, счетчик переданных символов и детектор ошибки кредитования, первый выход которого является выходом ошибки кредитования блока управления потоком данных, вход разрешения приема данных и вход готовности выдачи символа управления которого являются соответственно первым и вторым входами формирователя запросов кредитования, третий вход которого соединен с выходом состояния счетчика принятых символов, вход синхронизации которого является входом синхронизации блока управления потоком данных и соединен с входами синхронизации формирователя запросов кредитования, счетчика переданных символов и детектора ошибки кредитования, вход сброса блока управления потоком данных соединен с входами сброса формирователя запросов кредитования, счетчика принятых символов, счетчика переданных символов и детектора ошибки кредитования, первый информационный вход которого соединен с выходом ошибки кредита приема счетчика принятых символов, первый управляющий вход которого соединен с выходом формирователя запросов кредитования и является выходом запроса на выдачу символа управления потоком блока управления потоком данных, второй управляющий вход счетчика принятых символов является входом подтверждения приема информационного символа блока управления потоком данных, вход подтверждения приема символа управления потоком которого является первым управляющим входом счетчика переданных символов, второй управляющий вход которого является входом подтверждения выдачи информационного символа блока управления потоком данных, второй информационный вход детектора ошибок кредитования соединен с выходом состояния счетчика переданных символов; блок управления содержит регистр состояния, блок формирования нового состояния и формирователь управляющих сигналов, вход сброса которого является входом сброса блока управления и соединен с входами сброса регистра состояния, выход состояния которого соединен с первым управляющим входом блока формирования нового состояния и с управляющим входом формирователя управляющих сигналов, выход установления соединения, выход ошибки рассоединения и выход ошибки кодировки символа регистра состояния являются одноименными выходами блока управления, вход синхронизации которого является входом синхронизации регистра состояния, вход управления состоянием которого соединен с выходом управления состоянием блока формирования нового состояния, входы установления соединения, ошибки кредитования, ошибки рассоединения, ошибки кодировки символа, подтверждения приема символа управления потоком, и подтверждения приема информационного символа которого являются одноименными входами блока управления, вход локальной синхронизации которого соединен с одноименными входом формирователя управляющих сигналов, первый, второй, третий выходы сброса и выход разрешения передачи символа управления потоком которого являются одноименными выходами блока управления, вход «Получен NULL» которого является одноименным входом блока формирования нового состояния; блок проверки соединения содержит дешифратор символа поддержки связи, триггер установки связи, счетчик ожидания, первый элемент ИЛИ, второй элемент ИЛИ и элемент И, выход которого является выходом ошибки рассоединения блока проверки соединения, информационный вход и вход признака спецсимвола которого являются соответственно первым и вторым входами дешифратора символа поддержки связи, выход селекции символа поддержки связи которого соединен с первым входом первого элемента ИЛИ, выход которого соединен с входом данных триггера установки связи, выход установления соединения которого соединен со вторым входом первого элемента ИЛИ, с первым входом элемента И и является выходом установления соединения блока проверки соединения, вход признака соединения которого соединен с разрешающим входом дешифратора, с инверсным входом сброса триггера установки связи и с первым инверсным входом второго элемента ИЛИ, выход признака рассоединения и второй вход которого соединены соответственно со вторым входом элемента И и выходом переноса счетчика ожидания, декрементный вход которого соединен со входом синхронизации триггера установки связи и является входом синхронизации приема блока проверки соединения, дополнительно введены регистр параметра и дешифратор, управляющий вход которого является входом разрешения селекции системного интерфейса устройства, информационный вход которого соединен с адресным входом дешифратора и информационным входом регистра параметра, управляющий вход которого является входом разрешения записи параметра системного интерфейса устройства, вход синхронизации которого соединен с входом синхронизации регистра параметра, выход которого соединен с входами параметра блока проверки соединения, блока управления и блока управления потоком, вход записи которого соединен с первым разрешающим выходом дешифратора, второй и третий разрешающие выходы которого соединены с входами записи соответственно блока управления и блока проверки соединения, вход сброса которого соединен с вторым выходом сброса блока управления, причем блок управления дополнительно содержит счетчик соединения, регистр константы задержек и схема совпадения, первый вход которой соединен с выходом регистра константы задержек, информационный вход которого является входом параметра блока управления, вход записи которого является входом записи регистра константы задержек, вход синхронизации которого является входом синхронизации блока управления, вход сброса которого соединен с одноименными входами регистра константы задержек и счетчика соединений, выход которого соединен с вторым входом схемы совпадения, выход которой соединен с вторым управляющим входом блока формирования нового состояния, управляющий выход формирователя управляющих сигналов соединен с одноименным входом счетчика соединения, счетный вход которого является входом локальной синхронизации блока управления.The technical result is achieved by the fact that in the proposed device of the communication interface GigaSpaceWire, comprising a data output unit, a transmit symbol converter, a symbol transceiver, a received symbol converter, a data receive unit, a connection test unit, a control unit and a data flow control unit, a request for issuing a symbol the flow control of which is connected to the input of the data output unit of the same name, the readiness output of the output of the flow control symbol of which is connected to the input of the same name ohm of the data flow control unit, inputs of acknowledgment of receipt of the flow control symbol and acknowledgment of the information symbol of which are connected respectively to the outputs of the data reception unit and inputs of the same name of the control unit, the output of the character encoding error of which is the output of the character encoding error of the system interface of the device, the synchronization input of which is connected with the inputs of the same name data output unit, data reception unit, data flow control unit and control unit, input reset The system interface of the device is a reset input of the control unit, the first reset output of which is connected to the reset inputs of the data output unit, the transmitter of transmitted characters and the symbol transceiver, the second reset output of the control unit is connected to the reset input of the data receive unit, the output of which “received NULL” is connected to the input of the control unit of the same name, the data read input of the system interface of the device is the input of the data reception unit of the same name, data outputs for reception and readiness of data for reception are the corresponding outputs of the system interface of the device, the credit error output of the system interface of the device is the output of the data flow control unit of the same name and is connected to the input of the control unit of the same name, the third output of which is connected to the reset input of the data flow control unit, acknowledgment inputs for the information symbol and reception permission the data of which are connected to the outputs of the same name, respectively, of the data issuing unit and the data receiving unit, the readiness output is As the data of the device’s system interface is the output of the data output unit of the same name, the recording and data inputs for issuing the device’s system interface are the corresponding inputs of the data output unit, the connection error of the connection verification unit is connected to the same input of the control unit, the information input of the symbol transceiver is connected to the output of symbol 8b a transmitter of transmitted characters, the output of the readiness for issuing a symbol of which is connected to the readiness input of the data output unit, information the output and the output of the symbol type of which are connected respectively to the data inputs and of the symbol type of the transmitter of transmitted symbols, the output of the special character flag of which is connected to the input of the symbol type of the symbol transceiver, the output of the bit signals of which is the same output of the device communication interface, the output of the local synchronization of the symbol transceiver is connected to inputs of the converter of transmitted symbols with the same name, converter of received symbols, control unit, unit reception of data and a data output unit, the input of the control code recording of which is the input of the device system interface of the same name, the readiness output of the control code output of which is the output of the data output unit of the same name, the input of the control code for the output of which is the input of the device system interface of the same name, the output of which control code is received is the output of the data reception unit of the same name, the readiness output of the received control code of which is the output of the system int The device interface, the control code reading input of which is the input of the data receiving unit of the same name, the information input and the symbol type input of which are connected respectively to the outputs of the received symbol converter of the same name, the information input of which is connected to the same output of the symbol transceiver, the output of symbol 8b of which is connected to the information input of the block checking the connection, the input of the special character attribute of which is connected to the input of the converter of the same name with the same input in and the output of the symbol transceiver, the output of the coding error of which is connected to the input of the control unit of the same name, the connection establishment input of which is connected to the same output of the connection check unit, the connection sign of which is connected to the input of the transmitter of the received symbols of the same name and the output of the symbol transceiver of the same name, reception synchronization output which is connected to the same input of the connection check unit, the input of the bit signals of the symbol transceiver is of the same name m is the input of the communication interface of the device, wherein the data flow control unit comprises a credit request generator, a received symbol counter, a transmitted symbol counter and a credit error detector, the first output of which is a credit error output of the data flow control unit, a data reception permission input and a ready control input which are respectively the first and second inputs of the credit request generator, the third input of which is connected to the account status output the received symbol counter, the synchronization input of which is the synchronization input of the data flow control unit and connected to the synchronization inputs of the credit request generator, the counter of transmitted symbols and the credit error detector, the reset input of the data flow control unit is connected to the reset inputs of the credit request generator, the received symbol counter, counter the transmitted characters and the credit error detector, the first information input of which is connected to the output of the credit error receiving the counter symbols, the first control input of which is connected to the output of the credit request generator and is the output of the request for issuing a flow control symbol of the data flow control unit, the second control input of the received symbol counter is the input of the acknowledgment of the information symbol of the data flow control unit, the input of the acknowledgment of receipt of the flow control symbol which is the first control input of the counter of transmitted characters, the second control input of which is the confirmation input Nia issuing information symbol data flow control unit, second information input credit error detector connected to the output state of the counter of transmitted symbols; the control unit contains a status register, a new state generation unit and a control signal generator, the reset input of which is a reset input of the control unit and connected to the reset inputs of the status register, the status output of which is connected to the first control input of the new state generation unit and to the control input of the control signal generator , the connection establishment output, the disconnect error output and the status register symbol encoding error output are the outputs of the control unit of the same name the synchronization input of which is the synchronization input of the status register, the status control input of which is connected to the state control output of the new state generation unit, connection establishment inputs, credit errors, disconnection errors, symbol encoding errors, acknowledgment of receipt of the flow control symbol, and acknowledgment of receipt of the information symbol which are the inputs of the same name of the control unit, the local synchronization input of which is connected to the inputs of the same name For control signals, the first, second, third outputs of the reset and the output enable transmission of the flow control symbol of which are the outputs of the control unit of the same name, the “Received NULL” input of which is the same name of the unit for generating a new state; the connection verification unit contains a communication support symbol decoder, a communication setup trigger, a standby counter, a first OR element, a second OR element, and an AND element, the output of which is the output of the connection error of the connection verification unit, the information input and the input of which special character is the first and second inputs, respectively the decoder of the communication support symbol, the output of the selection of the communication support symbol which is connected to the first input of the first OR element, the output of which is connected to the data input of the trigger communication ki, the connection establishment output of which is connected to the second input of the first OR element, to the first input of the AND element, and is the connection establishment block connection connection output, the input of the connection indicator of which is connected to the enable input of the decoder, with the inverse reset input of the communication setup trigger and with the first inverse the input of the second OR element, the output of the disconnect sign and the second input of which are connected respectively to the second input of the AND element and the transfer output of the standby counter, the decrement input of which connected to the synchronization input of the trigger of the communication setup and is the synchronization input of the reception of the connection test block, a parameter register and a decoder are introduced, the control input of which is the selection enable input of the device system interface, the information input of which is connected to the address input of the decoder and the information input of the parameter register, which controls the input of which is the write enable parameter of the system interface of the device, the synchronization input of which is connected to the synchronization progress of the parameter register, the output of which is connected to the parameter inputs of the connection check unit, control unit and flow control unit, the recording input of which is connected to the first enable output of the decoder, the second and third enable outputs of which are connected to the recording inputs of the control unit and connection check unit, the reset input of which is connected to the second output of the reset of the control unit, the control unit further comprising a connection counter, a register of delay constants and a circuit of adenia, the first input of which is connected to the output of the delay constant register, the information input of which is the input of the control unit parameter, the recording input of which is the write input of the delay constant register, the synchronization input of which is the synchronization input of the control unit, the reset input of which is connected to the inputs of the constant constant register and a connection counter, the output of which is connected to the second input of the matching circuit, the output of which is connected to the second control input of the new state control output driver control signals connected with the same input connections counter whose count input is an input local synchronization control unit.
Предпочтительно, блок управления потоком данных дополнительно содержит регистры первой и второй констант и компаратор, выход которого соединен с входом признака ошибки детектора ошибки кредитования, второй выход которого является выходом разрешения выдачи данных блока управления потоком данных, выход состояния счетчика переданных символов соединен с первым входом компаратора, второй вход которого соединен с выходом регистра второй константы, информационный вход которого соединен с информационным входом регистра первой константы и является входом параметра блока управления потоком данных, вход записи которого включает в себя линию записи первой константы, соединенную с входом записи регистра первой константы, и линию записи второй константы, соединенную с входом записи регистра второй константы, вход синхронизации которого соединен с одноименным входом регистра первой константы и является входом синхронизации блока управления потоком данных, вход сброса которого соединен с одноименными входами регистра второй константы и регистра первой константы, выход которого соединен с информационным входом счетчика принятых символов.Preferably, the data flow control unit further comprises registers of the first and second constants and a comparator, the output of which is connected to the input of the error sign of the credit error detector, the second output of which is the output of the data output control unit of the data flow control unit, the status output of the counter of transmitted symbols is connected to the first input of the comparator the second input of which is connected to the output of the register of the second constant, the information input of which is connected to the information input of the register of the first constant and is a parameter input of the data flow control unit, the recording input of which includes a recording line of the first constant connected to the recording input of the register of the first constant, and a recording line of the second constant connected to the recording input of the register of the second constant, the synchronization input of which is connected to the same input of the register of the first constants and is the synchronization input of the data flow control unit, the reset input of which is connected to the inputs of the same register of the second constant and the register of the first constant, the output of which oh connected to the information input counter of the received characters.
Предпочтительно, блок проверки соединения дополнительно содержит регистр параметра рассоединения и третий элемент ИЛИ, выход которого соединен с входом загрузки счетчика ожидания, информационный вход которого соединен с выходом регистра параметра рассоединения, информационный вход и вход записи которого являются соответственно входом параметра и входом записи блока проверки соединения, вход синхронизации которого является входом синхронизации загрузки счетчика ожидания, выход дешифратора символа поддержки связи соединен с первым входом третьего элемента ИЛИ, второй вход которого является входом сброса блока проверки соединения.Preferably, the connection verification unit further comprises a disconnect parameter register and a third OR element, the output of which is connected to a load input of the standby counter, the information input of which is connected to the output of the disconnection parameter register, the information input and recording input of which are respectively the parameter input and recording input of the connection verification unit the synchronization input of which is the synchronization input of the wait counter download, the output of the communication support symbol decoder is connected to the first the input of the third OR element, the second input of which is the reset input of the connection check unit.
В данном устройстве коммуникационного интерфейса GigaSpaceWire технический результат обеспечивается за счет применения настраиваемой системы кредитования, позволяющей устранить потери полезной пропускной способности как в случае увеличения частоты работы устройства и соответствующего роста скорости передачи битов в интерфейсе до 1 Гбит/с и выше, так и при повышении длины канала связи. Добавление механизма задания переменных параметров обеспечивает гибкую настройку режима управления потоком данных, принятого в стандарте SpaceWire, для различных ситуаций, что позволяет ликвидировать проблемы системы кредитования и устранить падение полезной пропускной способности в коммуникационном интерфейсе GigaSpaceWire. Изменение машины состояния, определяющей работу устройства на уровне обмена, дает возможность сократить в состоянии сброса время восстановления соединения в коммуникационном интерфейсе GigaSpaceWire, что также способствует повышению его пропускной способности.In this device of the GigaSpaceWire communication interface, the technical result is achieved through the use of a customizable lending system that eliminates the loss of useful bandwidth both in the case of an increase in the frequency of the device and a corresponding increase in bit rate in the interface up to 1 Gb / s and higher, and with an increase in length communication channel. Adding a mechanism for setting variable parameters provides flexible adjustment of the data flow control mode adopted in the SpaceWire standard for various situations, which allows you to eliminate the problems of the lending system and eliminate the drop in useful bandwidth in the GigaSpaceWire communication interface. Changing the state machine that determines the operation of the device at the exchange level makes it possible to reduce the recovery time of the connection in the GigaSpaceWire communication interface in the reset state, which also helps to increase its throughput.
Детально сущность данного технического решения поясняется описанием со ссылками на фигуры чертежей, где на фиг. 1 представлена структурная схема устройства. На фиг. 2 и фиг. 3 - представлены возможные варианты реализации функциональных схем блока выдачи данных и блока приема данных. На фиг. 4 приведена функциональная схема блока управления потоком данных, на фиг. 5 - функциональная схема блока управления, на фиг. 6 - функциональная схема блока проверки соединения. На фиг. 7 показан автомат состояний физического уровня обмена сигналами (PHY). На фиг. 8 приведены временные диаграммы, иллюстрирующие процедуру выравнивания символов 10b. На фиг. 9 изображен автомат уровня адаптации SpaceWire. На фиг. 10 приведены временные диаграммы, иллюстрирующие передачу спецсимвола СОММА поддержки связи среди других символов. На фиг. 11 представлен граф машины состояния, описывающий режимы функционирования устройства коммуникационного интерфейса GigaSpaceWire на уровне обмена. На фиг. 12 приведены временные диаграммы передачи байтов пакетных данных, на фиг. 13 - временные диаграммы приема символов данных, управляющих символов и управляющих кодов, на фиг. 14 - временные диаграммы передачи управляющего кода, на фиг. 15 - временные диаграммы передачи управляющего кода и спецсимвола СОММА поддержки связи. На фиг. 16 представлены временные диаграммы записи значения параметра (константы) для настройки блоков устройства.In detail, the essence of this technical solution is illustrated by the description with reference to the drawings, where in FIG. 1 shows a block diagram of a device. In FIG. 2 and FIG. 3 - presents possible options for the implementation of functional schemes of the data output unit and the data reception unit. In FIG. 4 is a functional diagram of a data flow control unit; FIG. 5 is a functional diagram of a control unit, in FIG. 6 is a functional block diagram of the connection check. In FIG. 7 shows a state machine of the physical signal exchange layer (PHY). In FIG. 8 is a timing chart illustrating a character alignment procedure 10b. In FIG. 9 shows an automaton of adaptation level of SpaceWire. In FIG. 10 is a timing diagram illustrating the transmission of a special communication support symbol SOMMA among other symbols. In FIG. 11 is a state machine graph describing the operating modes of the GigaSpaceWire communication interface device at the exchange level. In FIG. 12 shows timing diagrams of the transmission of packet data bytes; FIG. 13 is a timing chart for receiving data symbols, control symbols, and control codes; FIG. 14 are timing diagrams of transmitting a control code; FIG. 15 is a timing diagram of the transmission of a control code and a special character COMMMA communication support. In FIG. 16 shows timing diagrams of recording parameter values (constants) for setting device blocks.
Как показано на фиг. 1, предлагаемое устройство содержит блок 1 выдачи данных, блок 2 приема данных, блок 3 управления потоком данных, блок 4 управления, преобразователь 5 передаваемых символов, блок 6 приемопередатчик символов, преобразователь 7 принимаемых символов, блок 8 проверки соединения, дешифратор 9, регистр 10 параметра, вход 11 разрешение селекции системного интерфейса, информационный вход 12 системного интерфейса, вход 13 синхронизации системного интерфейса, вход 14 сброса системного интерфейса, выход 15 готовности выдачи данных системного интерфейса, вход 16 записи данных системного интерфейса, вход 17 данных для выдачи системного интерфейса, выход 18 готовности принятых данных системного интерфейса, выход 19 принятых данных системного интерфейса, вход 20 чтения данных системного интерфейса, выход 21 готовности выдачи управляющего кода системного интерфейса, вход 22 записи управляющего кода системного интерфейса, вход 23 управляющего кода для выдачи системного интерфейса, выход 24 готовности принятого управляющего кода системного интерфейса, выход 25 принятого управляющего кода системного интерфейса, вход 26 чтения управляющего кода системного интерфейса, выход 27 установления соединения системного интерфейса, выход 28 ошибки рассоединения системного интерфейса, выход 29 ошибки кодировки символа системного интерфейса, выход 30 ошибки кредитования системного интерфейса, выход 31 подтверждения приема символа управления потоком, выход 32 подтверждения приема информационного символа, выход 33 запроса на выдачу символа управления потоком, первый выход 34 сброса, второй выход 35 сброса, третий выход 36 сброса, выход 37 готовности выдачи символа управления потоком, выход 38 разрешения передачи символа управления потоком, выход 39 подтверждения выдачи информационного символа, выход 40 разрешения приема данных, выход 41 разрешения выдачи данных, информационный выход 42, выход 43 типа символа, выход 44 готовности выдачи символа, выход 45 признака спецсимвола, выход 46 символа 8b, выход 47 регистра параметра, выход 48 локальной синхронизации, выход 49 битовых сигналов коммуникационного интерфейса, вход 50 битовых сигналов коммуникационного интерфейса, вход 51 разрешения записи параметра системного интерфейса, выход 52 синхронизации приема, выход 53 признака соединения, выход 54 символа 8b, выход 55 «Получен NULL», выход 56 признака спецсимвола, выход 57 ошибки кодирования, информационный выход 58, выход 59 признака спецсимвола, выход 60 ошибки рассоединения, выход 61 установления соединения, информационный выход 62, выход 63 типа принятого символа, первый разрешающий выход 117 дешифратора, второй разрешающий выход 118 дешифратора, третий разрешающий выход 119 дешифратора.As shown in FIG. 1, the proposed device comprises a data output unit 1, a data reception unit 2, a data flow control unit 3, a control unit 4, a transmit symbol 5 transducer, a symbol transceiver unit 6, a received symbol transducer 7, a connection check unit 8, a decoder 9, a register 10 parameter, input 11 allows selection of the system interface, information input 12 of the system interface, input 13 of the synchronization of the system interface, input 14 of the reset of the system interface, output 15, readiness for issuing system interface data, input 16 data recording of the system interface, input 17 of data for issuing the system interface, output 18 of readiness of the received data of the system interface, output 19 of the received data of the system interface, input 20 of reading data of the system interface, output 21 of readiness for issuing the control code of the system interface, input 22 of the recording of the control code a system interface, an input 23 of a control code for issuing a system interface, an output 24 of readiness of a received control code of a system interface, an output of 25 a received control code of a system interface face, input 26 for reading the control code of the system interface, output 27 for establishing a connection for the system interface, output 28 for errors in disconnecting the system interface, output 29 for encoding errors for the system interface symbol, output 30 for errors in crediting the system interface, output 31 for acknowledging the receipt of the flow control symbol, output 32 for confirming receiving an information symbol, output 33 of a request for issuing a flow control symbol, first reset output 34, second reset output 35, third reset output 36, symbol output ready 37 la flow control, output 38 permits the transmission of a flow control symbol, output 39 confirms the issuance of an information symbol, output 40 permits the reception of data, output 41 permits the issuance of data, information output 42, output 43 type of character, output 44 of the readiness for issuing a character, output 45 of a special character , output 46 character 8b, output 47 parameter register, output 48 local synchronization, output 49 bit signals of the communication interface, input 50 bit signals of the communication interface, input 51 of the write permission of the system parameter interface, reception synchronization output 52, connection sign output 53, symbol 8b output 54, “NULL received” output 55, special character sign output 56, encoding error output 57, information output 58, special character sign output 59, disconnect error output 60, output 61 to establish a connection, information output 62, received symbol type output 63, first enable output of the decoder 117, second enable output of the decoder 118, third enable output of the decoder 119.
Блок 1 выдачи данных (см. фиг. 2) содержит блок 64 арбитража выдачи символов, буфер 65 выдачи данных, регистр 66 выдачи управляющего кода, мультиплексор 67 данных, вход 68 сброса, вход 69 разрешения выдачи, вход 70 синхронизации выдачи, вход 71 запроса на выдачу символа управления потоком, вход 72 разрешения передачи символа управления потоком, вход 73 готовности, выход 74 готовности данных, выход 75 чтения данных, выход 76 признака конца пакета, выход 77 данных, выход 78 чтения управляющего кода, выход 79 селекции информации, выход 80 готовности управляющего кода, выход 81 управляющего кода, вход 13 синхронизации, выход 15 готовности выдачи данных, вход 16 записи, вход 17 данных для выдачи, выход 21 готовности выдачи управляющего кода, вход 22 записи управляющего кода, вход 23 управляющего кода для выдачи, выход 37 готовности выдачи символа управления потоком, выход 39 подтверждения выдачи информационного символа, информационный выход 42, выход 43 типа символа.The data issuing unit 1 (see FIG. 2) contains a character issuing
Блок 2 приема данных (см. фиг. 3) содержит дешифратор 82 преобразованного кода, буфер 83 приема данных, регистр 84 приема управляющего кода, информационный вход 85, вход 86 типа символа, вход 87 сброса, вход 88 локальной синхронизации, выход 89 селекции управляющего кода, выход 55 «Получен NULL», вход 13 синхронизации, выход 18 готовности принятых данных, выход 19 принятых данных, вход 20 чтения данных, выход 24 готовности принятого управляющего кода, выход 25 принятого управляющего кода, вход 26 чтения управляющего кода, выход 31 подтверждения приема символа управления потоком, выход 32 подтверждения приема информационного символа, выход 40 разрешения приема данных.The data receiving unit 2 (see Fig. 3) contains a transformed
Блок 3 управления потоком данных содержит (см. фиг. 4) формирователь 90 запросов кредитования, счетчик 91 принятых символов, счетчик 92 переданных символов, детектор 93 ошибки кредитования, регистр 120 первой константы, регистр 121 второй константы, компаратор 122, вход 94 разрешения приема данных, вход 95 сброса, вход 96 готовности выдачи символа управления потоком, вход 97 подтверждения приема информационного символа, вход 98 подтверждение приема символа управления потоком, вход 99 подтверждения выдачи информационного символа, выход 100 состояния счетчика, выход 101 ошибки кредита приема, выход 102 состояния, вход 123 записи, вход 124 параметра, выход 133 формирователя запросов кредитования, выход 134 компаратора, выход 135 регистра первой константы, выход 136 регистра второй константы, линия 137 записи первой константы, линия 138 записи второй константы, вход 13 синхронизации, выход 26 ошибки кредитования, выход 33 запроса на выдачу символа управления потоком, выход 41 разрешения выдачи данных.The data
Блок 4 управления содержит (см. фиг. 5) регистр 103 состояния, блок 104 формирования нового состояния, формирователь 105 управляющих сигналов, счетчик 106 соединения, регистр 125 константы задержек, схема 126 совпадения, вход 107 установления соединения, вход 108 ошибки кредитования, вход 109 ошибки рассоединения, вход 110 ошибки кодировки символа, вход 111 подтверждения приема символа управления потоком, вход 112 подтверждения приема информационного символа, вход 113 локальной синхронизации, выход 114 состояния, выход 115 управления состоянием, управляющий выход 116, выход 127 счетчика соединения, информационный выход 128, выход 129 схемы совпадения, вход 130 записи, вход 131 параметра, вход 132 «Получен NULL», вход 13 синхронизации, вход 14 сброса, выход 27 установления соединения, выход 28 ошибки рассоединения, выход 29 ошибки кодировки символа, первый выход 34 сброса, второй выход 35 сброса, третий выход 36 сброса, выход 38 разрешения передачи символа управления потоком.The
Блок 8 проверки соединения (см. фиг. 6) содержит дешифратор 141 символа поддержки связи, триггер 142 установки связи, второй счетчик 143, первый элемент 144 ИЛИ, второй элемент 145 ИЛИ, элемент 146 И, регистр 147 параметра рассоединения, третий элемент 148 ИЛИ, информационный вход 149, вход 150 признака спецсимвола, вход 151 признака соединения, вход 152 синхронизации приема, вход 153 записи, вход 154 параметра, выход 155 селекции символа поддержки связи, выход 156 переноса, выход 157 признака рассоединения, выход 158 регистра параметра рассоединения, выход 159 третьего элемента ИЛИ, вход 160 сброса, выход 60 ошибки рассоединения, выход 61 установления соединения.Connection check unit 8 (see FIG. 6) contains a communication
На временных диаграммах (см. фиг. 8) для процесса выравнивания символов в устройстве показано: а - значения битовых сигналов, b - признак соединения на выходе 53 приемопередатчика 6 символов, с - тактовые сигналы на выходе 52 синхронизации приема битов данных приемопередатчика 6 символов, d - выровненные после приема битов символы 10b в приемопередатчике 6 символов.On the time diagrams (see Fig. 8) for the process of aligning the symbols in the device it is shown: a - values of bit signals, b - sign of the connection at the
На временных диаграммах (см. фиг. 10) для процесса передачи спецсимвола поддержки связи показано: а - тактовые сигналы, b - данные после буферизации в преобразователе 5 передаваемых символов, с - код типа символа после буферизации в преобразователе 5 передаваемых символов, d - сигнал выдачи спецсимвола СОММА, генерируемый в преобразователе 5, е - данные на выходе 46 преобразователя 5 передаваемых символов, f - признак спецсимвола на выходе 45 преобразователя 5 передаваемых символов, g - сигнал готовности записи на выходе 44 преобразователя 5 передаваемых символов.The time charts (see Fig. 10) for the transmission process of the special communication support symbol show: a - clock signals, b - data after buffering in the
На временных диаграммах (см. фиг. 12) для процесса передачи байтов пакетных данных в преобразователя 5 передаваемых символов показано: а - тактовые сигналы, b - данные после буферизации в преобразователе 5 передаваемых символов, с - код типа символа после буферизации в преобразователе 5 передаваемых символов, d - данные на выходе 46 преобразователя 5 передаваемых символов, е - признак спецсимвола, формируемый ПЗУ преобразователя 5 передаваемых символов, f - сигнал готовности записи на выходе 44 преобразователя 5 передаваемых символов.The time diagrams (see Fig. 12) for the process of transferring bytes of packet data to the transmit
На временных диаграммах (см. фиг. 13) для процесса приема символов 8b показано: а - тактовые сигналы, b - данные на информационном выходе 58 приемопередатчика символов, с - признак спецсимвола на выходе 59 приемопередатчика символов, d - код типа символа, формируемый ПЗУ преобразователя 7 принимаемых символов, е - данные на информационном выходе 62 преобразователя 7 принимаемых символов, f - код типа символа, задержанного на такт в преобразователе 7 принимаемых символов, g - признак управляющего кода, формируемый ПЗУ преобразователя 7 принимаемых символов, h - внутренний флаг управляющего кода преобразователя 7 принимаемых символов, i - код типа символа на выходе 63 преобразователя 7 принимаемых символов.The time diagrams (see Fig. 13) for the process of receiving symbols 8b show: a - clock signals, b - data at the information output of the
На временных диаграммах (см. фиг. 14) для процесса передачи управляющего кода показано: а - тактовые сигналы, b - данные после буферизации в преобразователе 5 передаваемых символов, с - код типа символа после буферизации в преобразователе 5 передаваемых символов, d - данные на выходе 46 преобразователя 5 передаваемых символов, е - признак спецсимвола на выходе 45 преобразователя 5 передаваемых символов, f - сигнал готовности записи на выходе 44 преобразователя 5 передаваемых символов.The time diagrams (see Fig. 14) for the control code transmission process show: a - clock signals, b - data after buffering in the transmitted
На временных диаграммах (см. фиг. 15) для процесса передачи управляющего кода и спецсимвола поддержки связи показано: а - тактовые сигналы, b - данные после буферизации в преобразователе 5 передаваемых символов, с - код типа символа после буферизации в преобразователе 5 передаваемых символов, d - сигнал выдачи спецсимвола СОММА, генерируемый в преобразователе 5, е - данные на выходе 46 преобразователя 5 передаваемых символов, f - признак спецсимвола на выходе 45 преобразователя 5 передаваемых символов, g - сигнал готовности записи на выходе 44 преобразователя 5 передаваемых символов.The time diagrams (see Fig. 15) for the process of transmitting a control code and a special symbol for communication support show: a - clock signals, b - data after buffering in the
На временных диаграммах (см. фиг. 16) для процесса записи значения параметра для настройки блоков устройства показано: а - тактовые сигналы, b - данные на информационном входе 12 системного интерфейса устройства, с - сигнал на входе 51 разрешения записи параметра системного интерфейса, d - значение параметра на выходе 47 регистра параметра, е - сигнал на входе 11 разрешение селекции системного интерфейса, f - сигнал селекции на одном из трех разрешающих выходов 117, 118 или 119 дешифратора 9, g - значение параметра (константа), загруженное в один из регистров блока 3, 4 или 12.In the time diagrams (see Fig. 16) for the process of recording the parameter value for adjusting the device blocks, it is shown: a - clock signals, b - data at the
Блок 1 выдачи данных предназначен для формирования символов данных SpaceWire из пакетных данных, поступающих через вход данных для выдачи, соединенного с одноименным входом 17 системного интерфейса устройства, а также управляющих символов по требованию, поступающему с выхода 33 запроса на выдачу символа управления потоком блока 3 управления потоком данных на одноименный вход блока 1. Вход 16 записи данных системного интерфейса устройства является одноименным входом блока 1 выдачи данных, выход 15 готовности выдачи данных которого является одноименным выходом системного интерфейса устройства. Выход 15 и вход 16 системного интерфейса предназначены для реализации стандартного механизма буферизации пакетных данных из хост-системы (компьютера, коммутатора или другого узла сети SpaceWire) в блоке 1 выдачи данных. Вход 22 записи управляющего кода системного интерфейса устройства является одноименным входом блока 1 выдачи данных, выход 21 готовности выдачи управляющего кода которого является одноименным выходом системного интерфейса. Вход 23 управляющего кода для выдачи системного интерфейса устройства соединен с одноименным входом блока 1. Запись байтов пакетных данных и управляющих кодов в блок 1 тактируется с его входа синхронизации, соединенного с входом 13 синхронизации системного интерфейса устройства. Выходы 37 готовности выдачи символа управления потоком и 39 подтверждения выдачи информационного символа блока 1 соединены с одноименными входами блока 3 управления потоком данных и предназначены для реализации механизма кредитования, необходимого для организации передачи и приема данных через коммуникационный интерфейс без переполнения буферов приема у взаимодействующих устройств. Информационный выход 42 блока 1 соединен с входом данных преобразователя 5 передаваемых символов и обеспечивают передачу байтов данных пакетов и управляющих кодов. Выход 43 типа символа блока 1 соединен с одноименным входом преобразователя 5 передаваемых символов и предназначен для определения типа передаваемого символа SpaceWire.The
Блок 2 приема данных обеспечивает получение символов SpaceWire и управляющих кодов от удаленного устройства, буферизацию байтов данных пакетов и управляющих кодов. Выход 19 принятых данных блока 2 является одноименным выходом системного интерфейса устройства и обеспечивает выдачу байтов буферируемых пакетных данных в хост-систему. Выход 18 готовности принятых данных блока 2 является одноименным выходом системного интерфейса устройства, вход 20 чтения данных которого является одноименным входом блока 2 приема данных. Выход 40 разрешения приема данных блока 2, соединенный с одноименным входом блока 3 управления потоком данных, предназначен для извещения о наличии достаточного свободного пространства в буфере 83 приема данных. Выход 25 принятого управляющего кода блока 2 является одноименным выходом системного интерфейса устройства и обеспечивает выдачу управляющего кода в хост-систему. Выход 24 готовности принятого управляющего кода блока 2 является одноименным выходом системного интерфейса устройства, вход 26 чтения управляющего кода которого является одноименным входом блока 2 приема данных. Блок 2 приема данных обеспечивает извещение блока 3 управления потоком данных и блока 4 управления через выход 31 приема символа управления потоком, соединенный с одноименными входами блоков 3 и 4, о приеме управляющего символа управления потоком и через выход 32 подтверждения приема информационного символа, соединенный с одноименными входами блоков 3 и 4, о получении информационного символа от удаленного устройства. Выход 55 «Получен NULL» блока 2 соединен с одноименным входом блока 4 управления.The
Блок 3 управления потоком данных предназначен для реализации механизма кредитования, необходимого при обмене пакетными данными в дуплексном режиме между двумя устройствами через коммуникационный интерфейс с учетом ограниченного объема буферной памяти для приема данных, имеющейся у каждого устройства в блоке 2 приема данных. Выход 33 запроса на выдачу символа управления потоком блока 3, соединенный с одноименным входом блока 1 выдачи данных, предназначен для инициализации выдачи блоком 1 управляющего символа управления потоком, подтверждающего наличие в блоке 2 приема данных свободного буферного пространства, необходимого для приема определенного числа символов данных. В описываемом устройстве величина кредита, предоставляемого при выдаче одного символа управления потоком, определяется значением константы FCT_count, задаваемой программно. Выход 26 ошибки кредитования блока 3 управления потоком данных соединен с одноименным входом блока 4 управления и является одноименным выходом системного интерфейса устройства. Блок 3 управления потоком данных тактируется с входа синхронизации, соединенного с входом 13 синхронизации системного интерфейса устройства.The data
Блок 4 управления предназначен для отслеживания состояния устройства при поступлении из блока 2 приема данных сигналов о выделении символов SpaceWire из принятого преобразованного кода и выработки управляющих сигналов под воздействием машины состояний и сигнала начальной установки с входа сброса, соединенного с входом 14 сброса системного интерфейса устройства. Выход 38 разрешения передачи символа управления потоком блока 4 управления соединен с одноименным входом блока 1 выдачи данных и предназначен для извещения о том, что машина состояния блока 4 перешла в режим, разрешающий выдачу символов управления потоком. Первый 34 выход сброса блока 4 управления соединен с входами сброса блока 1 выдачи данных, преобразователя 5 передаваемых символов и приемопередатчика 6 символов. Второй 35 выход сброса блока 4 управления соединен с входами сброса блока 2 приема данных и блока 8 проверки соединения. Третий выход 36 сброса блока 4 управления соединен с входом сброса блока 3 управления потоком данных. Сигналы сброса предназначены для установки соответствующих блоков в начальное состояние. Выход 27 установления соединения блока 4 является одноименным выходом системного интерфейса устройства и предназначен для информирования хост-системы об этом событии. Выход 28 ошибки рассоединения блока 4 является одноименным выходом системного интерфейса устройства и предназначен для информирования хост-системы об этом событии. Выход 29 ошибки кредитования блока 4 является одноименным выходом системного интерфейса устройства и предназначен для информирования хост-системы об этом событии. Тактирование при формировании сигналов состояния блока 4 управления осуществляется с входа синхронизации, соединенного с входом 13 синхронизации системного интерфейса устройства.The
Преобразователь 5 передаваемых символов предназначен для перекодирования символов SpaceWire и управляющих кодов в символы 8b. Выход 46 символа 8b преобразователя 5 соединен с информационным входом приемопередатчика 6 символов и предназначен для передачи восьмиразрядного кода символа 8b, который соответствует либо байту данных, либо коду специального символа управления. Выход 45 признака спецсимвола преобразователя 5 соединен с входом признака типа символа приемопередатчика 6 символов и идентифицирует, какой тип символа 8b выдается с выхода 46 преобразователя 5 в текущем такте (байт данных или специальный символ управления). Выход 44 готовности выдачи символа преобразователя 5 соединен с входом готовности блока 1 выдачи данных и обеспечивает индикацию состояния готовности преобразователя 5 к поступлению очередного символа SpaceWire или управляющего кода из блока 1 выдачи данных. Если сигнал готовности равен «0», то преобразователь 5 в текущем такте не считывает информацию из блока 1, поскольку занят формированием дополнительного символа 8b в соответствии с алгоритмом своего функционирования. Правила формирования кодов спецсимволов на выходах преобразователя 5 передаваемых символов могут быть реализованы с помощью восьмиразрядных констант, записанных во встроенное ПЗУ и определяющих при кодировании символов 8b специальные символы управления, которые используются в данном техническом решении для кодирования управляющих символов SpaceWire и управляющих кодов различных типов. Возможный вариант реализации этих правил на базе ПЗУ констант показаны в табл. 1.
Приемопередатчик 6 символов предназначен для преобразования восьмиразрядных символов в 10-разрядные символы стандарта 8b/10b и обеспечивает выдачу 10-разрядного кода в каждом такте локальной синхронизации. Выход 49 битовых сигналов приемопередатчика 6 символов предназначен для выдачи в последовательном виде битовых сигналов сформированных 10-разрядных символов формата 10b в коммуникационный канал устройства. Выход 48 локальной синхронизации приемопередатчика 6 символов соединен с одноименными входами блока 1 выдачи данных, блока 2 приема данных, блока 4 управления, преобразователя 5 передаваемых символов, и преобразователя 7 принимаемых символов. Вход 50 битовых сигналов приемопередатчика 6 символов, являющийся входом коммуникационного интерфейса устройства, предназначен для приема входного потока битовых сигналов, формирования из них параллельного кода символов формата 10b и последующего преобразования в параллельный код символа формата 8b. Выход 54 символа 8b соединен с информационным входом блока 8 проверки соединения. Выход 52 синхронизации приема приемопередатчика 6 соединен с входом синхронизации приема блока 8 проверки соединения. Выход 53 признака соединения приемопередатчика 6 символов предназначен для формирования единичного сигнала при выделении в потоке принятых битовых сигналов одного из специальных символов управления - символа проверки связи и соединен с одноименными входами преобразователя 7 принимаемых символов и блока 8 проверки соединения. Выход 56 признака спецсимвола приемопередатчика 6 соединен с одноименным входом блока 8 проверки соединения и определяет, какой тип символа 8b (байт данных или специальный символ управления) выдается с выхода 54 в текущем такте. Выход 57 ошибки кодирования приемопередатчика 6 соединен с одноименным входом блока 4 управления и извещает о выявлении ошибки при декодировании символов 10b. Информационный выход 58 приемопередатчика 6 соединен с одноименным входом преобразователя 7 принимаемых символов и обеспечивает выдачу после буферизации восьмиразрядного кода символа в формате 8b на частоте локальной синхронизации. Выход 59 признака спецсимвола приемопередатчика 6 соединен с одноименным входом преобразователя 7 принимаемых символов и определяет, какой символ (байт данных или специальный символ управления) считывается с информационного выхода 58.A 6-character transceiver is designed to convert eight-bit characters into 10-bit characters of the 8b / 10b standard and provides a 10-bit code in each local clock cycle. The output of 49 bit signals of the
Преобразователь 7 принимаемых символов предназначен для перекодирования символов формата 8b во внутренние коды типов символов стандарта SpaceWire. Информационный выход 62 преобразователя 7 соединен с одноименным входом блока 2 приема данных и обеспечивает передачу в него символов SpaceWire и управляющих кодов, полученных от удаленного устройства. Выход 63 типа символа преобразователя 7 соединен с одноименным входом блока 2 приема данных и предназначен для идентификации типа символа SpaceWire либо управляющего кода, выставленного на информационном выходе 62 в текущем такте. Правила формирования кодов типов символов SpaceWire могут быть реализованы в преобразователе 7 принимаемых символов с помощью четырехразрядных констант, записанных во встроенное ПЗУ. Возможный вариант реализации этих правил на базе ПЗУ констант показаны в табл. 2.
Блок 8 проверки соединения осуществляет контроль за состоянием соединения между удаленными устройствами в процессе их взаимодействия путем отслеживания интервалов между поступлением специального символа управления - символа поддержки связи (Comma). Выход 60 ошибки рассоединения блока 8 соединен с одноименным входом блока 4 управления и обеспечивает передачу единичного сигнала о нарушении соединения при истечении времени ожидания символа Comma. Выход 61 установления соединения блока 8 соединен с одноименным входом блока 4 управления и обеспечивает формирование сигнала готовности приема выровненных символов 10b/8b.The
Дешифратор 9 обеспечивает формирование на одном из своих выходов сигнала селекции, разрешающего запись параметра для настройки режима работы одного из блоков 3, 4 или 8, в соответствии с двоичным кодом на своем адресном входе, являющимся информационным входом 12 системного интерфейса устройства, при наличии разрешающего сигнала на своем управляющем входе, являющимся входом 11 разрешения селекции системного интерфейса устройства. Первый разрешающий выход 117 дешифратора 9 соединен со входом записи блока 3 управления потоком данных, второй разрешающий выход 118 дешифратора 9 соединен со входом записи блока 4 управления, третий разрешающий выход 119 дешифратора 9 соединен со входом записи блока 8 проверки соединения.The
Регистр 10 параметра предназначен для буферизации параметра настройки режимов работы блоков устройства по синхросигналу на своем входе синхронизации, соединенном с одноименным входом 13 системного интерфейса устройства и при наличии разрешающего сигнала на своем управляющем входе. Управляющий вход регистра 10 параметра соединен с входом 51 разрешения записи параметра системного интерфейса устройства. Информационный вход регистра 10 параметра соединен с информационным входом 12 системного интерфейса устройства. Выход 47 регистра 10 параметра соединен с входами параметра блока 3 управления потоком данных, блока 4 управления и блока 8 проверки соединения.The
В блоке 1 выдачи данных буфер 65 выдачи данных (см. фиг. 2) предназначен для промежуточного хранения пакетных данных, поступающих на вход данных для выдачи буфера 65, соединенный с одноименным входом 17 блока 1 выдачи данных. Выход 15 готовности выдачи данных буфера 65 является одноименным выходом блока 1 выдачи данных и предназначен для уведомления хост-системы через системный интерфейс о возможности буферизации очередного байта данных, которая осуществляется при подаче сигнала записи на вход записи буфера 65, являющийся входом 16 записи блока 1 выдачи данных. Буферизация данных обеспечивается при тактировании с входа синхронизации буфера 65, соединенного с входом 13 синхронизации блока 1 выдачи данных. Вход 68 сброса блока 1 выдачи данных соединен с входом сброса буфера 65 выдачи данных и предназначен для его инициализации. Представление информации в пакете данных, поступающем из системного интерфейса устройства в буфер 65 выдачи данных, показано в табл. 3.In the
Считывание буферированных пакетных данных обеспечивается с выхода 77 данных буфера 65 выдачи данных, соединенного с первым информационным входом мультиплексора 67 данных. Выход 74 готовности данных буфера 65 соединен с одноименным входом блока 64 арбитража выдачи символов и предназначен для уведомления о наличии байта данных, готового к выдаче. Выход 76 признака конца пакета буфера 65 соединен с одноименным входом блока 64 арбитража выдачи символов и предназначен для индикации о том, что предыдущий байт был последним в пакете.The reading of the buffered packet data is provided from the
Регистр 66 выдачи управляющего кода предназначен для промежуточного хранения управляющего кода, поступающего на вход управляющего кода для выдачи, соединенный с одноименным входом 23 блока 1 выдачи данных. Выход 21 готовности выдачи управляющего кода регистра 66 является одноименным выходом блока 1 выдачи данных и предназначен для уведомления хост-системы через системный интерфейс о возможности выдачи очередного управляющего кода, которая осуществляется при подаче сигнала записи на вход записи регистра 66, соединенный с входом 16 записи блока 1 выдачи данных. Запоминание управляющего кода обеспечивается при тактировании с входа синхронизации регистра 66, соединенного с входом 13 синхронизации блока 1 выдачи данных. В управляющем коде, поступающем в устройство из хост-системы, содержится два поля: поле типа управляющего кода и поле значения управляющего кода. В поле типа управляющего кода указывается, для передачи какого конкретного системного сигнала управления используется данный управляющий код, например, метки системного времени или сигнала системного прерывания. В поле значения управляющего кода приводится конкретный параметр, характеризующий смысл передаваемого системного сигнала управления, например, значение текущего системного времени или вектор конкретного прерывания. Вход 68 сброса блока 1 выдачи данных соединен с входом сброса регистра 66 выдачи данных и предназначен для его инициализации. Считывание записанного управляющего кода обеспечивается с выхода 81 управляющего кода регистра 66, соединенного со вторым информационным входом мультиплексора 67 данных. Выход 80 готовности управляющего кода регистра 66 соединен с одноименным входом блока 64 арбитража выдачи символов и предназначен для уведомления о наличии управляющего кода, готового к выдаче.The
Блок 64 арбитража выдачи символов предназначен для регулирования формирования и порядка выдачи символов данных и управляющих символов, определяемых стандартом SpaceWire, по требованиям от блока 3 управления потоком данных и управляющих кодов по мере их поступления и в зависимости от заданного приоритета. Символы SpaceWire, передаваемые устройством через коммуникационный интерфейс, подразделяются на канальные и информационные символы. К информационным символам относятся символ данных (Nchar), символ конца пакета (ЕОР) и символ ошибочного конца пакета (ЕЕР). Канальные символы предназначены для управления состоянием коммуникационного канала и в отличие от информационных символов в системный интерфейс не передаются. К канальным символам относятся символ управления потоком (FCT) и нулевой символ (NULL код). Символ FCT используется для реализации механизма кредитования при передаче пакетных данных между взаимодействующими через коммуникационный канал устройствами. NULL код предназначен для сохранения активности коммуникационного канала и должен постоянно передаваться, если канал не занят передачей других символов. С входа 71 запроса на выдачу символа управления потоком блока 1 выдачи данных, соединенного с одноименным входом блока 64, поступает требование выдачи управляющего символа управления потоком. Выход 75 чтения данных блока 64 арбитража выдачи символов, соединенный с одноименным входом буфера 65 выдачи данных, предназначен для управления темпом поступления данных из буфера 65 для формирования внутреннего кода символов данных в блоке 64. Выход 78 чтения управляющего кода блока 64, соединенный с одноименным входом регистра 66 управляющих кодов, предназначен для управления темпом выдачи управляющих кодов с выхода 81 регистра 66. Внутренне кодирование формируемых в блоке 64 символов показано в табл. 4.The
Вход 72 разрешения передачи символа управления потоком блока 1 выдачи данных, являющийся одноименным входом блока 64 арбитража выдачи символов, предназначен для первоначального разрешения выдачи символов FCT после установления соединения с удаленным устройством. Выход готовности 37 выдачи символа управления потоком блока 64, являющийся одноименным выходом блока 1 выдачи данных, предназначен для извещения блока 3 управления потоком о возможности выдачи очередного символа FCT. Выход 39 подтверждения выдачи информационного символа, являющийся одноименным выходом блока 1 выдачи данных, предназначен для извещения блока 3 управления потоком о выдаче очередного символа Nchar с целью управления кредитным счетчиком 92 переданных символов. Выход 43 типа символа блока 64 арбитража выдачи символов, являющийся одноименным выходом блока 1 выдачи данных, предназначен для идентификации в соответствии с кодировкой, приведенной в табл. 2, символа или управляющего кода, передаваемого через мультиплексор 67 данных. Выход 79 селекции информации блока 64, соединенный с управляющим входом мультиплексора 67 данных, обеспечивают выбор источника информации для передачи через мультиплексор 67. При нулевом значении сигнала селекции на информационный выход 42 мультиплексора 67 с первого информационного входа подается байт данных из буфера 65 выдачи данных; при единичном значении сигнала селекции на информационный выход 42 мультиплексора 67 со второго информационного входа подается управляющий код из буфера 66 выдачи управляющих кодов. Таким образом, как показано в табл. 2, тип символа данных или управляющего кода на выходе 43 сопровождается самим байтом данных на выходе 42 блока 1 выдачи символов. Тактирование блока 64 арбитража выдачи символов осуществляется с входа синхронизации, соединенного с входом 13 синхронизации блока 1 выдачи данных, вход 68 сброса которого соединен с входом сброса блока 64 и предназначен для его инициализации. Информационный выход 42 мультиплексора 67 данных является одноименным выходом блока 1 выдачи данных.An
В блоке 2 приема данных дешифратор 82 преобразованного кода (см. фиг. 3) кода предназначен для распознавания символов и управляющих кодов сети SpaceWire в соответствии с кодированием, показанном в табл. 3, и формирования управляющих сигналов, необходимых для буферизации принимаемых пакетных данных и управляющих кодов, а также изменения состояния блоков 3 управления потоком данных и 4 управления. Информационный вход дешифратора 82 является входом 86 типа символа блока 2 приема данных. Выход 32 подтверждения приема информационного символа дешифратора 82, являющийся одноименным выходом блока 2 приема данных и соединенный с входом разрешения записи буфера 83 приема данных, предназначен для формирования единичного сигнала в одном из двух следующих вариантов: либо при приеме символа данных Nchar, либо при приеме символа конца пакета (ЕОР). Выход 89 селекции управляющего кода дешифратора 82, соединенный с входом разрешения записи буфера 84 приема управляющих кодов, формирует единичный сигнал, подтверждающий прием управляющего кода. Выход 31 подтверждения приема символа управления потоком, являющийся одноименным выходом блока 2 приема данных, предназначен для выдачи признака подтверждения приема символа FCT, необходимого для работы механизма кредитования при управлении потоком данных из данного устройства в удаленное. Выход 55 «Получен NULL» дешифратора 82, являющийся одноименным выходом блока 2 приема данных, формирует единичный сигнал, подтверждающий прием NULL кода.In the
Буфер 83 приема данных предназначен для промежуточного запоминания принятых пакетов данных, поступающих на его информационный вход с одноименного входа 85 блока 2 приема данных, при наличии единичного сигнала на входе разрешения записи. На выходе 19 принятых данных буфера 83, являющемся одноименным выходом блока 2 приема данных, обеспечивается побайтная выдача пакетов данных, разделенных признаками конца пакета. Выдача данных из буфера 83 приема данных обеспечивается по принципу «первым принят, первым считан» (FIFO) в сопровождении сигнала готовности данных на выходе 18 готовности принятых данных, являющемся одноименным выходом блока 2 приема данных, и при наличии единичного сигнала на входе чтения данных буфера 83, являющегося входом 20 чтения данных блока 2 приема данных. Выход 40 разрешения приема данных буфера 83, являющийся одноименным выходом блока 2 приема данных, свидетельствует о наличии определенного числа свободных ячеек в нем (в описываемом варианте - не менее восьми) и предназначен для управления механизмом кредитования. При записи данных в буфер 83 приема данных тактируется по восходящему фронту синхросигнала с первого входа синхронизации, соединенного с входом 88 локальной синхронизации блока 2 приема данных. При считывании данных буфер 83 тактируется со второго входа синхронизации, соединенного с входом 13 синхронизации блока 2 приема данных и переводится в начальное состояние по сигналу с входа сброса, соединенного с входом 87 сброса блока 2 приема данных.The
Регистр 84 приема управляющего кода предназначен для промежуточного запоминания принятого управляющего кода, поступающего на его информационный вход с информационного входа 85 блока 2 приема данных, при наличии соответствующего единичного сигнала на входе разрешения записи. На выходе 25 принятого управляющего кода регистра 84, являющемся одноименным выходом блока 2 приема данных, обеспечивается выдача управляющего кода. Считывание управляющего кода из регистра 84 обеспечивается в сопровождении единичного сигнала готовности на выходе 24 готовности принятого управляющего кода, являющимся одноименным выходом блока 2 приема данных, и при наличии единичного сигнала на входе чтения управляющего кода регистра 84, являющемся одноименным входом 26 блока 2 приема данных. При записи управляющего кода регистр 84 приема управляющего кода тактируется по восходящему фронту синхросигнала с первого входа синхронизации регистра 84, соединенного с входом 88 локальной синхронизации блока 2 приема данных. При считывании управляющего кода регистр 84 тактируется со второго входа синхронизации, соединенного с входом 13 синхронизации блока 2 приема данных и переводится в начальное состояние по сигналу с входа сброса, соединенного с входом 87 сброса блока 2 приема данных.The control
В блоке 3 управления потоком данных (см. фиг. 4) формирователь 90 запросов кредитования предназначен для выработки сигнала запроса выдачи символа FCT на выходе 33 запроса на выдачу символа управления потоком блока 3 при наличии разрешающих сигналов на входах 96 готовности выдачи символа управления потоком и 94 разрешения приема данных блока 3 и в зависимости от состояния счетчика 91 принятых символов. Вход 94 разрешения приема данных блока 3 является первым входом формирователя 90. Вход 96 готовности выдачи символа управления потоком блока 3 является вторым входом формирователя 90. Выход 100 состояния счетчика 91 принятых символов соединен с третьим входом формирователя 90. Вход 13 синхронизации блока 3, соединенный с входами синхронизации формирователя 90 запросов кредитования, счетчика 91 принятых символов, счетчика 92 переданных символов и детектора 93 ошибки кредитования, обеспечивает синхронизацию их работы на частоте системного интерфейса. Вход 95 сброса блока 3 предназначен для установки начального состояния и соединен с входами сброса формирователя 90 запросов кредитования, счетчика 91 принятых символов, счетчика 92 переданных символов и детектора 93 ошибки кредитования, регистра 120 первой константы и регистра 121 второй константы. Счетчик 91 принятых символов обеспечивает формирование двоичного кода, определяющего число информационных символов, которые разрешается принять в данном устройстве. Первый управляющий вход счетчика 91, соединенный с выходом 133 формирователя 90 запросов кредитования, предназначен для загрузки в счетчик 91 значение константы FCT_count со своего информационного входа при выработке сигнала запроса на выдачу символа управления потоком. Регистр 120 первой костанты предназначен для хранения значения константы FCT_count, определяющей величину кредита при передаче информационных символов между взаимодействующими сторонами. Информационный вход регистра 120 соединен с входом 124 параметра блока 3. Вход 123 записи блока 3 включает в себя линию 137 записи первой константы, соединенную с входом записи регистра 120 первой константы и обеспечивающую запись в него константы FCT_count по синхросигналу, поступающего с входа 13 синхронизации блока 3 на вход синхронизации регистра 120. Выход 135 регистра 120 первой константы соединен с информационным входом счетчика 91 принятых символов. Второй управляющий вход счетчика 91, являющийся входом 97 подтверждения приема информационного символа блока 3, предназначен для уменьшения на единицу содержимого счетчика 91 при приеме от другого устройства каждого информационного символа. Изменение состояния счетчика 91 принятых символов под воздействием управляющих сигналов осуществляется по фронту синхросигналов, поступающих с входа 13 синхронизации блока 3 на вход синхронизации счетчика 91. Выход 101 ошибки кредита приема счетчика 91 соединен с первым информационным входом детектора 93 ошибки кредитования и предназначен для формирования сигнала ошибки при попытке уменьшения состояния счетчика ниже предельно допустимого значения. Счетчик 92 переданных символов обеспечивает формирование двоичного кода, определяющего число информационных символов, которые разрешается передать из данного устройства. Первый управляющий вход счетчика 92, являющийся входом 98 подтверждения приема символа управления потоком блока 3, предназначен для разрешения подсчета передаваемых информационных символов в счетчике 92 при приеме каждого символа FCT. Второй управляющий вход счетчика 92, являющийся входом 99 подтверждения выдачи информационного символа блока 3, предназначен для увеличения на единицу содержимого счетчика 92 переданных символов. Изменение состояния счетчика 92 переданных символов при подаче управляющих сигналов осуществляется по фронту синхросигналов, поступающих с входа 13 синхронизации блока 3 на вход синхронизации счетчика 92. Выход 102 состояния счетчика 92 соединен со вторым информационным входом детектора 93 ошибки кредитования и первым входом компаратора 122.In the data flow control unit 3 (see Fig. 4), the
Детектор 93 ошибки кредитования обеспечивает формирование объединенного тактируемого сигнала ошибки кредитования на своем первом выходе, являющемся выходом 26 ошибки кредитования блока 3, или сигнала разрешения выдачи данных на своем втором выходе, являющемся выходом 41 разрешения выдачи данных блока 3. Вход синхронизации детектора 93 соединен с входом 13 синхронизации блока 3 управления потоком данных. Регистр 121 второй константы предназначен для хранения значения константы Max_Fct_count, определяющей максимальную величину кредита при выдаче информационных символов. Информационный вход регистра 121 второй константы соединен с входом 124 параметра блока 3. Вход 123 записи блока 3 включает в себя линию 138 записи второй константы, соединенную с входом записи регистра 121 и обеспечивающую запись в него константы Max_FCT_count по синхросигналу, поступающего с входа 13 синхронизации блока 3 на вход синхронизации регистра 121. Выход 136 регистра 121 второй константы соединен с вторым входом компаратора 122, который предназначен для формирования сигнала ошибки при попытке увеличения состояния счетчика 92 выше предельно допустимого значения, определяемого величиной константы Max_Fct_count. Выход 134 компаратора 122 соединен с входом признака ошибки детектора 93 ошибки кредитования.The
В блоке 4 управления (см. фиг. 5), реализующем машину состояний, регистр 103 состояния предназначен для оперативного запоминания и контроля состояния фаз работы устройства. Фактически регистр 103 состояния является памятью машины состояний, которая реализуется блоком 4 управления. Регистр 103 может быть доступен как на чтение, так и на запись для хост-системы (на фиг. 5 не показано). Заполнение регистра выполняется побитно по сигналам от блока 2 приема данных или процессора хост-системы. Выход 114 состояния регистра 103 соединен с первым управляющим входом блока 104 формирования нового состояния и с управляющим входом формирователя 105 управляющих сигналов. Выход 27 установления соединения регистра 103 состояния является одноименным выходом блока 4 управления. Единичное значение сигнала на этом выходе свидетельствует о наличии соединения на уровне обмена стандарта SpaceWire. Выход 28 ошибки рассоединения регистра 103 состояния является одноименным выходом блока 4 управления. Единичное значение сигнала на этом выходе свидетельствует о наличии ошибки соединения при обмене данными между удаленными устройствами. Выход 28 ошибки кредитования регистра 103 состояния является одноименным выходом блока 4 управления. Единичное значение сигнала на этом выходе свидетельствует о наличии ошибки кредита при обмене данными между удаленными устройствами. Вход 14 сброса блока 4 управления предназначен для установки начального состояния и соединен с входами сброса регистра 103 состояния, формирователя 105 управляющих сигналов и блока 106 задержки. Запись битов состояния в регистр 103 обеспечивается по восходящему фронту тактового сигнала на его входе синхронизации, являющемся входом 13 синхронизации блока 4 управления. Блок 104 формирования нового состояния предназначен для реализации логики машины состояний, выполняющей функцию автомата, переходящего под воздействием входных сигналов в различные состояния. Формирователь 105 управляющих сигналов обеспечивает выработку управляющих сигналов, с помощью которых машина состояний переводит блок 1 выдачи данных, блок 2 приема данных, блок 3 управления потоком данных и блок 8 проверки соединения в исходные состояния, позволяя таким образом обеспечить корректную работу устройства в целом. Счетчик 106 соединения предназначен для формирования тайм-аутов, необходимых для правильного функционирования машины состояний при установлении и поддержании соединения с удаленной стороной через коммуникационный интерфейс. Для реализации графа машины состояний, показанной на фиг. 11 требуется необходимость в формировании нескольких тайм-аутов. Вход 113 локальной синхронизации блока 4 управления соединен с входами синхронизации формирователя 105 управляющих сигналов и счетчика 106 соединения. Вход 107 установления соединения блока 4 управления является первым входом блока 104 формирования нового состояния. Вход 108 ошибки кредитования блока 4 является вторым входом блока 104. Вход 109 ошибки рассоединения блока 4 является третьим входом блока 104. Вход 110 ошибки кодировки символа блока 4 является четвертым входом блока 104. Вход 111 подтверждения приема символа управления потоком блока 4 является пятым входом блока 104. Вход 112 подтверждения приема информационного символа блока 4 является шестым входом блока 104. Вход 132 «Получен NULL» является седьмым входом блока 104 формирования нового состояния, выход 115 которого соединен с входом записи битов состояния регистра 103 состояния. Управляющий выход 116 формирователя 105 управляющих сигналов соединен с входом управления счетчика 106 соединения, выход 127 которого соединен с вторым входом схемы 126 совпадения, первый вход которой соединен с выходом 128 регистра 125 константы задержек. Схема 126 совпадения предназначена для формирования сигнала завершения тайм-аута на своем выходе 129, который соединен с вторым управляющим входом блока 104 формирования нового состояния. Выход 38 разрешения передачи символа управления потоком формирователя 105 управляющих сигналов является одноименным выходом блока 4 управления. Первый выход 34 сброса формирователя 105 является одноименным выходом блока 4. Второй выход 35 сброса формирователя 82 является одноименным выходом блока 4. Третий выход 36 сброса формирователя 82 является одноименным выходом блока 4 управления.In the control unit 4 (see Fig. 5) that implements the state machine, the
В блоке 8 проверки соединения (см. фиг. 6) дешифратор 141 символа поддержки связи обеспечивает селекцию символа поддержки связи Comma путем формирования единичного сигнала на своем выходе 155, который соединен с первым входом третьего элемента 148 ИЛИ и с первым входом первого элемента 144 ИЛИ, выход которого соединен с входом данных триггера 142 установки связи. Разрешающий вход дешифратора 141 соединен с входом 151 признака соединения блока 8, с инверсным входом сброса триггера 142 установки связи и с первым инверсным входом второго элемента 145 ИЛИ. Нулевой уровень сигнала на этом входе обеспечивает запрет работы дешифратора 141, при котором выход 155 дешифратора 141 находится в пассивном нулевом состоянии. Единичный уровень сигнала признака соединения активирует работу дешифратора 141. Первый вход дешифратора 165 является информационным входом 149 блока 8 и обеспечивает поступление в дешифратор 141 восьмиразрядного двоичного кода символа 8b. Второй вход дешифратора 141 является входом 150 признака спецсимвола блока 8 и обеспечивает подачу одноразрядного управляющего сигнала, единичное значение которого настраивает дешифратор 141 на декодирование поступившего двоичного кода на его первый вход, как специального символа управления. При нулевом значении признака спецсимвола дешифратор 141 игнорирует двоичный код на первом входе, поскольку этот двоичный код является символом данных, который необходимо записывать в буферный регистр данных в преобразователе 7 принимаемых данных. Триггер 142 установки связи предназначен для фиксации установления соединения, при котором становится возможным обмен данными между взаимосвязанными устройствами, то есть каждое устройство получает разрешения передачи данных в удаленное устройство. Вход синхронизации триггера 142 является входом 152 синхронизации приема блока 8 проверки соединения и соединен с декрементным входом счетчика 143 ожидания. При единичном значении на входе данных по возрастающему входу синхросигнала обеспечивается переход триггера 142 установки связи в единичное состояние, которое свидетельствует об установлении соединения. Выход установления соединения триггера 142 установки связи является выходом 61 установления соединения блока 8 проверки соединения и соединен со вторым входом первого элемента 144 ИЛИ и с первым входом четвертого элемента 146 И.In
Счетчик 143 ожидания предназначен для отслеживания временного интервала CommaTime, в течение которого для поддержания соединения от удаленного устройства должен поступить специальный символ поддержки связи Comma. Если в течение интервала CommaTime не поступает указанный спецсимвол управления, то счетчик 143 обеспечивает формирование сигнала переноса, извещающего об ошибке рассоединения. Выход 156 переноса счетчика 143 соединен со вторым входом второго элемента 145 ИЛИ, который обеспечивает формирование единичного значения признака рассоединения при длительном отсутствии спецсимвола проверки связи или при потере синхронизации. Выход 157 признака рассоединения второго элемента 145 ИЛИ соединен со вторым входом элемента 146 И, который обеспечивает формирование единичного значения сигнала ошибки рассоединения только при наличии установленного соединения. Выход четвертого элемента 146 И является выходом 60 ошибки рассоединения блока 8 проверки соединения. Регистр 147 параметра рассоединения предназначен для хранения значения интервала CommaTime, которое записывается с информационного входа, соединенного с входом 154 параметра блока 8, по разрешающему сигналу на входе записи, соединенном с входом 153 записи блока 8. Вход 160 сброса блока 8 соединен с вторым входом третьего элемента 148 ИЛИ, который предназначен для формирования сигнала загрузки начального значения интервала в счетчик 143 ожидания. Вход 159 третьего элемента 148 ИЛИ соединен с входом загрузки счетчика 143 ожидания. Значение CommaTime с выхода 158 регистра 147 параметра рассоединения, соединенного с информационным входом счетчика 143 ожидания, записывается в счетчик 143 при наличии разрешающего сигнала на входе загрузки и фронта тактового сигнала на входе синхронизации загрузки, соединенного с входом синхронизации блока 8 проверки соединения.The
Устройство работает следующим образом. Задачей устройства является обеспечение обмена данными между локальной хост-системой (компьютером или процессорным узлом, имеющим локальную память данных) и удаленной хост-системой через аналогичное удаленное устройство коммуникационного интерфейса. Локальное устройство и его локальная хост-система в дальнейшем именуются как «Сторона А», удаленные устройство коммуникационного интерфейса и его хост-система - «Сторона Б». Для выполнения указанной задачи данное устройство осуществляет организацию соединения в коммуникационном канале, связывающем стороны А и Б, и обеспечивает управление потоком данных. Коммуникационный канал, поддерживающий дуплексный режим передачи последовательных данных, образован (см. фиг. 1) выходной 49 и входной 50 симплексными линиями передачи битовых сигналов.The device operates as follows. The objective of the device is to provide data exchange between a local host system (a computer or processor node having a local data memory) and a remote host system through a similar remote communication interface device. The local device and its local host system are hereinafter referred to as “Side A”, the remote communication interface device and its host system - “Side B”. To accomplish this task, this device organizes the connection in a communication channel connecting parties A and B, and provides data flow control. A communication channel supporting duplex serial data transmission mode is formed (see Fig. 1) by output 49 and
В устройстве имеется три уровня управления соединением и обменом информацией: уровень обмена сети SpaceWire, уровень адаптации и уровень битовой синхронизации. Автомат состояний каждого уровня управления представлен диаграммой состояний (см. фиг. 7, 9 и 11).The device has three levels of connection and information exchange control: the SpaceWire network exchange level, adaptation level and bit synchronization level. The state machine of each control level is represented by a state diagram (see Figs. 7, 9, and 11).
Перед установлением соединения на уровне обмена SpaceWire необходимо установить физическую связь на уровнях адаптации и битовой синхронизации. Автомат состояний уровня битовой синхронизации, определяющий обмен сигналами на физическом уровне (PHY), изображен на фиг. 7. После того, как уровень обмена SpaceWire разрешил уровню PHY начать работу, блок кодирования 8b/10b приемопередатчика 6 символов начинает отправлять специальные символы для установления битовой синхронизации с блоком приема битов приемопередатчика 6 удаленного устройства. Для этого взаимосвязанные устройства посылают друг другу первичные символы синхронизации формата 10b, определенные как символы D10.2. После кодирования на выходе 49 приемопередатчика 6 он имеет вид «1010101010». После включения приемопередатчики 6 символов в каждом из устройств отправляют в канал символы синхронизации D10.2 в течение определенного интервала времени. В этом состоянии «Битовой синхронизации» продолжается отправка D10.2, и кодек ожидает синхронизации приема. После установления синхронизации приема автомат переходит в состояние «Выравнивание». Для этого передатчик генерирует специальный символ Comma поддержки связи К28.5 в формате 8b, после кодирования в формате 10b он имеет вид «1100000101». При появлении этого символа в приемнике данные считаются выровненными и появляются параллельные 10-ти битные последовательности, передаваемые вышележащему уровню, как это отражено на фиг. 8. Приемопередатчик 6 на выходе 53 выставляет единичный уровень сигнала признака соединения. По приему данного символа Comma уровень PHY переходит в состояние «Готовности» (см. фиг. 7).Before establishing a connection at the SpaceWire exchange level, it is necessary to establish a physical connection at the adaptation and bit synchronization levels. The state machine of the bit synchronization level, which determines the signal exchange at the physical level (PHY), is shown in FIG. 7. After the SpaceWire exchange level has allowed the PHY level to begin operation, the 6-character transceiver coding unit 8b / 10b starts sending special characters to establish bit synchronization with the receiving unit of the
Для организации взаимодействия физического уровня коммуникационного интерфейса GigaSpaceWire и уровня обмена SpaceWire вводится уровень адаптации SpaceWire, задачами которого являются:To organize the interaction of the physical layer of the GigaSpaceWire communication interface and the SpaceWire exchange level, the SpaceWire adaptation level is introduced, the tasks of which are:
1) кодирование и декодирование символов SpaceWire в 8b-символы (последовательность символов);1) encoding and decoding of SpaceWire characters into 8b characters (character sequence);
2) определение ошибок рассоединения;2) determination of disconnection errors;
3) согласование частот работы приемника и передатчика.3) coordination of the frequencies of the receiver and transmitter.
Уровень адаптации отвечает за кодирование символов стандарта SpaceWire в 8b символы. Автомат уровня адаптации, изображенный на фиг. 9, начинает свою работу после включения устройства и в состоянии «Сброс» ожидает синхронизации уровня PHY. После того, как синхронизация будет установлена, выполняется переход в состояние «Ожидание». Через 2 мкс происходит переход автомата адаптационного уровня в состояние «Запуск». В этом состоянии начинается периодическая отправка спецсимволов Comma поддержки связи (К28.5). После приема символа Comma и отправки как минимум одного символа после этого - происходит переход в состояние «Готовность». В этом состоянии разрешается преобразование 8b-символов в символы SpaceWire и обратно, и таким образом подготавливаются условия для приема первого NULL кода, что важным событием для машины состояний уровня обмена SpaceWire. Если в течение определенного времени не был принят спецсимвол поддержки связи или была обнаружена ошибка кодирования 8b/10b, происходит переход в состояние «Ошибка». Для уровня обмена SpaceWire генерируется сигнал ошибки кодирования на выходе 57 приемопередатчика 6 символов, что вызовет сброс машины состояния SpaceWire (на уровне обмена). После этого, если нижележащий уровень PHY не потерял синхронизацию, выполняется переход в состояние «Ожидание». При потере синхронизации уровня PHY выполняется переход в состояние «Сброс».The adaptation layer is responsible for encoding SpaceWire characters into 8b characters. The adaptation level machine shown in FIG. 9, starts its work after turning on the device and in the “Reset” state, waits for synchronization of the PHY level. After the synchronization is established, the transition to the "Waiting" state is performed. After 2 microseconds, the machine of the adaptation level transitions to the “Start” state. In this state, periodic sending of special communication support Comma characters (K28.5) begins. After receiving the Comma symbol and sending at least one symbol after that, it goes to the Ready state. In this state, the conversion of 8b-characters to SpaceWire characters and vice versa is allowed, and in this way conditions are prepared for receiving the first NULL code, which is an important event for the state machine of the SpaceWire exchange level. If within a certain time a special symbol for communication support has not been received or an 8b / 10b encoding error has been detected, the transition to the "Error" state occurs. For the SpaceWire exchange level, a coding error signal is generated at the output of the 6
Определение ошибки рассоединения, которую обрабатывает уровень обмена SpaceWire, возлагается на уровень адаптации. Для обнаружения рассоединения из преобразователя 5 передаваемых символов отправляется спецсимвол поддержки связи через интервал CommaTime (см временные диаграммы на фиг. 10), вставляя его в общий поток символов. CommaTime, интервал между передачей двух символов СОММА, не может быть больше времени, необходимого для передачи 128 символов, но не может быть меньше, чем время передачи 8 символов. Работа в диапазоне времени передачи от 8 до 32 символов должна поддерживаться во всех реализациях.The determination of the disconnect error that the SpaceWire exchange layer processes is the responsibility of the adaptation layer. To detect disconnection from the
Если на одной из сторон произошла ошибка, эта сторона переходит в состояние «Ошибка», а потом в состояние «Ожидание». В этих состояниях спецсимвол Comma (К28.5) не посылается. Противоположная сторона, не получив спецсимвол Comma поддержки связи в течение длительного времени (в пределах 640 нс - 960 нс при частоте передачи 1 ГГц), обнаруживает ошибку рассоединения и также переходит в состояние «Ошибка».If an error occurs on one of the parties, this side goes into the “Error” state, and then into the “Waiting” state. In these states, the Comma special character (K28.5) is not sent. The opposite side, having not received the Comma special character for communication support for a long time (within 640 ns - 960 ns at a transmission frequency of 1 GHz), detects the disconnect error and also goes into the Error state.
Уровень обмена стандарта SpaceWire и выше функционируют в соответствии с рекомендациями стандарта SpaceWire. Изменение состояний блока 1 выдачи данных, блока 2 приема данных, блока 3 управления потоком данных и блок 4 управления осуществляется в соответствии с диаграммой машины состояний (см. фиг. 11) уровня управления обменом SpaceWire: от инициализации устройства по сигналу начальной установки, начинающейся со сброса одной из сторон, соединенных коммуникационным каналом, до состояния нормальной работой, в котором обеспечивается передача пакетных данных и управляющих кодов в обоих направлениях. Из состояния «Сброс», в котором блок 2 приема данных ничего не делает, он переходит в состояние «Запуск». В этом состоянии блок 2 запущен и ожидает приема первого бита. Когда блок 2 приема данных получит первый NULL код, он переходит в режим «Соединение», при этом включается механизм обнаружения рассоединения и разрешается принимать только NULL коды. После получения FCT символа от удаленного устройства коммуникационного интерфейса, блок 2 приема данных переходит в состояние Run и может получать NULL коды, FCT символы, информационные символы, включающие символы данных Nchar и символы конца пакета ЕОР/ЕЕР, и управляющие коды (УК), которые передаются в сети SpaceWire. В этом состоянии в устройстве включен механизм обнаружения ошибок рассоединения и кодирования.The exchange level of the SpaceWire standard and higher function in accordance with the recommendations of the SpaceWire standard. Changing the states of the
После сброса или ошибки в канале блок 1 выдачи данных переводится в состоянии «Сброс» и при инициализации соединения на уровне обмена SpaceWire может находиться в одном из четырех состояний:After a reset or an error in the channel, the
1. Сброс (Reset). Блок 1 выдачи данных ничего не делает.1. Reset. The
2. Запуск (Connecting). Блок 1 выдачи данных посылает только NULL коды. Он не готов передавать информационные символы и не передает FCT символы.2. Launch (Connecting). The
3. Соединение (Connected). Передача FCT символов/NULL кодов. Блок 1 выдачи данных посылает FCT символы или NULL коды и не готов передавать информационные символы.3. Connected. Transmission of FCT characters / NULL codes. The
4. Рабочий режим (Run) - обычный режим работы блока 1 выдачи данных (передача FCT/Nchar/NULL/УК). Он посылает FCT символы, NULL коды, информационные символы (Nchar/EOP) и управляющие коды.4. Run mode - the normal mode of operation of the data output unit 1 (FCT / Nchar / NULL / UK transmission). It sends FCT characters, NULL codes, information characters (Nchar / EOP) and control codes.
Блок 4 управления выполняет в устройстве функцию управляющего автомата, которым является машина состояний, граф которой представлен на фиг. 11. Он контролирует работу блока 1 выдачи данных, блока 2 приема данных устройства и блока 3 управления потоком, получая от них сигналы о состоянии и рассылая им управляющие сигналы. В качестве событий или условий, вызывающих переходы из состояния в состояние, служат два типа сигналов: внешние (например, сброс) и внутренние управляющие сигналы. Одним из определяющих факторов, влияющих на быстродействие устройства при установлении соединения после сброса и его восстановление после ошибок, является выбор значений задержек. Из-за слишком больших задержек в состоянии «Сброса», определенных в стандарте SpaceWire, восстановление соединения в коммуникационном интерфейсе GigaSpaceWire происходит замедленно, что снижает пропускную способность интерфейса. Поэтому в данном техническом решении введены переменные значения задержек, обеспечивающие гибкую настройку устройства для различных применений. Одним из основных внутренних управляющих сигналов, вызывающих переходы в машине состояний, является сигналы срабатывания задержек Т.The
Прошло время Т - сигналы задержки при переполнении счетчика 106 соединения в блоке 4 управления вызывают переходы по тайм-ауту (временной задержки) из одного состояния в другое. Величины задержек определяются следующими параметрами.Time T has passed - the delay signals when the
- DiscDetect - временной интервал, за который определяется ошибка рассоединения. Должен быть в два раза больше, чем параметр CommaTime.- DiscDetect - time interval for which the disconnect error is determined. Must be twice as large as the CommaTime parameter.
- ResetTime - временной интервал нахождения в состоянии Reset. Должен быть в два раза больше, чем DiscDetect.- ResetTime - the time interval in the Reset state. Must be twice as large as DiscDetect.
- Wait_conn_Time - временной интервал установки соединения. Должен быть не менее, чем в 8 раз больше времени CommaTime.- Wait_conn_Time - time interval for establishing a connection. Must be at least 8 times the CommaTime time.
Другими внутренними управляющими сигналами, вызывающими переходы между состояниями, являются:Other internal control signals that cause state transitions are:
- Получен NULL-код - сигнал устанавливается на выходе 55 блока 2 приема данных (см. фиг. 3), когда принят первый NULL-код.- A NULL code is received - the signal is set at the
- Получен FCT символ - сигнал устанавливается на выходе 31 подтверждения приема символа управления потоком блока 2 приема данных и означает факт принятия FCT символа. Прием FCT символа является корректным только в состояниях «Соединение (Connected))) или «Рабочий режим (Run)». Прием FCT символа в других состояниях воспринимается как ошибка.- Received FCT symbol - the signal is installed at the
- Получен Nchar - сигнал устанавливается на выходе 32 подтверждения приема информационного символа блока 2 приема данных и означает факт принятия информационного символа. Прием информационного символа в любом состоянии кроме состояния Run воспринимается как ошибка.- Received Nchar - the signal is installed at the
- Ошибка рассоединения - сигнал на выходе 60 ошибки рассоединения блока 8 проверки соединения означает рассинхронизацию в коммуникационном канале. Механизм определения ошибки рассоединения в блоке 8 запускается при после установления соединения и выхода из состояния «Сброс».- Disconnect error - the signal at the
- Ошибка кодировки - сигнал на выходе 57 ошибки кодирования приемопередатчика 6 символов означает определение ошибки в принятом символе либо ошибки из-за неправильного кодирования. Определение ошибки кодирования разрешается только при запущенном блоке 2 приема данных и после получения первого NULL-кода.- Encoding error - the signal at the
- Ошибка кредитования - сигнал на выходе 30 ошибки кредитования блока 3 управления потоком данных означает, что приняты информационные символы, которые не ожидаются (прием информационного символа в момент, когда уже приняты все информационные символы в ответ на отправленные FCT символы). Также ошибка кредитования возникает при приеме FCT символа в момент, когда увеличение кредита превысит максимальное значение Max_FCT_Count. Величина Max_FCT_Count при работе в режиме стандарта SpaceWire должна быть равной 56, в режиме управления потоком для интерфейса GigaSpaceWire параметр Max_FCT_Count должен быть равен 512.- Credit error - a signal at the output 30 of a credit error of the data
Кроме внутренних управляющих сигналов, формируемых в блоках устройства, машина состояний вырабатывает следующие внутренние условия для переходов:In addition to the internal control signals generated in the device blocks, the state machine generates the following internal conditions for transitions:
- Ошибка приема - это условие обозначает возникновение ошибки рассоединения или сигнала ошибки кодирования.- 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 кода, игнорируются. В состояниях «Ожидание» и «Готовность» это приводит к ошибке, по которой осуществляется переход в состояние «Сброс». На диаграмме состояний (см. фиг. 11) указаны события «Получен 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. 11), the events “Received FCT” and “Received Nchar” are indicated.
b. После получения первого NULL кода получение FCT символа до отправки первого NULL кода (то есть в состоянии «Запуск (Started)») воспринимается как ошибка.b. After receiving the first NULL code, receiving the FCT character before sending the first NULL code (that is, in the "Started" state) is perceived as an error.
c. Информационный символ может быть принят только после того, как принят NULL код и FCT символ, в противном случае ситуация является ошибочной. Поэтому в состояние «Соединение (Connected))) событие «Получен Nchar» вызывает сброс устройства. Таким образом,c. An information symbol can be accepted only after a NULL code and FCT symbol are received, otherwise the situation is erroneous. Therefore, in the “Connected” status)), the “Received Nchar” event causes the device to reset. In this way,
информационные символы могут приниматься только в рабочем режиме (состояние «Run»).information symbols can only be received in operating mode (“Run” state).
Передачу данных в коммуникационный канал в рабочем режиме устройство осуществляет последовательно (см. временные диаграммы на фиг. 12), считывая байты пакетных данных из буфера 66 выдачи данных блока 1 выдачи данных по мере их поступления из хост-системы. При наличии готовности выдачи данных в виде единичного уровня на выходе 44 преобразователя 5 (см. фиг. 12,f) очередной байт данных считывается с информационного выхода 42 блока 1 выдачи данных и буферизируется в преобразователе 5 (см. фиг. 12,b) и далее поступает на выход 46 символа 8b преобразователя 5 (см. фиг. 12,d). При этом внутренний код типа символа, равный «001» (см. табл. 1), считывается с выхода 43 типа символа блока 1, при этом встроенное ПЗУ в преобразователе 5 формирует нулевой уровень признака спецсимвола (см. фиг. 12,е). Нулевой сигнал признака спецсимвола на выходе 45 преобразователя 5 подтверждает, что в приемопередатчике 6 при выполнении кодирования 8b/10b поступающий в текущем такте символ 8b должен интерпретироваться как символ данных. Если очередной переданный байт данных был последним в пакете, то в следующем такте передается символ конца пакета. Код типа символа ЕОР равен «010» (см. табл. 4), в соответствии с ним ПЗУ в преобразователе 5 формирует спецсимвол K28.3, а признак спецсимвола примет единичное значение (см. фиг. 12, диаграммы d,e). Восьмиразрядный код этого специального символа 8b передается на выход 46 символа 8b преобразователя 5, и на выходе 45 признака спецсимвола присутствует единичное значение.The device transmits data to the communication channel in the operating mode sequentially (see timing diagrams in Fig. 12), reading bytes of packet data from the
Когда буфер 65 выдачи данных в блоке 1 пуст и происходит приостановка передачи байтов данных через устройство на другую сторону соединения, то передается NULL код, чтобы не потерять синхронизацию соединения устройств. Встроенное ПЗУ в преобразователе 5 в этой ситуации формирует другой специальный символ - К28.0 (см. фиг. 12, диаграммы b, c, d), означающий передачу NULL-кода (см. табл. 4). Временные диаграммы, иллюстрирующие процесс передачи управляющего кода в потоке пакетных данных, приведены на фиг. 14. В канал будет отправлен сначала спецсимвол K28.6 в качестве заголовка УК, а следующий за ним символ данных является параметром управляющего кода (см. фиг. 14, диаграммы b, c, d). Для этого преобразователь 5 сначала выдаст на выход 46 байтовый код константы (К28.6) из встроенного ПЗУ вместе с единичным признаком спецсимвола на выходе 45 (см. фиг. 14,d), а на следующем такте - байт параметра управляющего кода, считанный с информационного выхода 42 блока 1 выдачи данных. При совпадении передачи управляющего кода и спецсимвола поддержки связи сначала будет передан управляющий символ, потом символ поддержки связи К28.5 (см. фиг. 15, диаграммы b, c, d, e, f).When the
Принимаемые символы формата 8b буферизируются в приемопередатчике 6 символов, из которого поступают на преобразование в символы SpaceWire в преобразователь 7 принимаемых символов. Принятые символы 8b (см. фиг. 4) поступают на информационный вход 58 преобразователя 7, при этом встроенное ПЗУ декодирует символы 8b во внутренний код типа символов SpaceWire (см. табл. 2 и фиг. 13,d). Байт данных после буферизации в преобразователе 7 (см. фиг. 13,е) напрямую с информационного выхода 62 записываются в выходной буфер 83 приема данных блока 2. При этом код типа принятого символа данных с выхода ПЗУ буферизируется и появляется на выходе 63 типа принятого символа преобразователя 7 (см. фиг. 13,i). Дешифратор 82 преобразованного кода в блоке 2 приема данных распознает символ Nchar, формируя единичный сигнал на выходе 32 подтверждения приема информационного символа. Если будет принят управляющий код, формируется единичный признак управляющего кода на выходе ПЗУ в преобразователе 7 (см. фиг. 13,g). Этот признак фиксируется как флаг управляющего кода (см. фиг. 13,h), при этом код типа управляющего кода также задерживается на такт (см. фиг. 13,f) и затем поступает на выход 63 типа принятого символа преобразователя 7 принимаемых символов (см. фиг. 13,i). При этом на информационный выход 62 преобразователя 7 выдается байт параметра управляющего кода, который далее поступит в регистр 84 приема управляющего кода блока 2 приема данных.Received symbols of the 8b format are buffered in the 6 symbol transceiver from which they are converted into SpaceWire symbols into the received
Предлагаемое техническое решение снимет значительную часть проблем технологии SpaceWire, которые решены при разработке данного устройства коммуникационного интерфейса GigaSpaceWire: позволяет по максимуму использовать фактор увеличения скорости передачи битов в канале для повышения пропускной способности в целом для устройства коммуникационного интерфейса GigaSpaceWire. Возможность гибкого выбора и настройки параметров задержек в машине состояний для различных применений позволяет ускорить процедуры восстановления соединения в интерфейсе GigaSpaceWire. В результате экспериментальных исследований может быть рекомендовано следующее соотношение между временными интервалами (тайм-аутами), определяющими эффективность функционирования устройства коммуникационного интерфейса GigaSpaceWire. Если интервал CommaTime выдачи в канал спецсимвола СОММА поддержки связи равен 128 наносекунд, то DiscDetect будет равен 256 наносекунд, ResetTime равен 512 наносекунд, Wait_conn_Time равен 1024 наносекунды. При этом доля пропускной способности канала, используемая на комму неэффективно, составит t/(128+t), где t - время передачи символа СОММА в канал. Если частота передачи битов канал связи составляет 1 ГГц, то общее время передачи символа СОММА составляет 10 нс, и тогда t/(128+t)=~0,072, то есть 7,2% пропускной способности канала используется неэффективно.The proposed technical solution will remove a significant part of the problems of SpaceWire technology that were solved during the development of this device of the GigaSpaceWire communication interface: it makes the maximum use of the factor of increasing the bit rate in the channel to increase the throughput in general for the GigaSpaceWire communication interface device. The ability to flexibly select and configure delay parameters in the state machine for various applications allows you to speed up the connection recovery process in the GigaSpaceWire interface. As a result of experimental studies, the following relationship between time intervals (time-outs) determining the efficiency of the GigaSpaceWire communication interface device can be recommended. If the CommaTime interval of issuing the communication support special symbol SOMMA is equal to 128 nanoseconds, then DiscDetect will be equal to 256 nanoseconds, ResetTime equal to 512 nanoseconds, Wait_conn_Time equal to 1024 nanoseconds. In this case, the fraction of the channel bandwidth used on the commune is inefficient, will be t / (128 + t), where t is the transmission time of the COMMA symbol in the channel. If the bit rate of the communication channel is 1 GHz, then the total transmission time of the COMMA symbol is 10 ns, and then t / (128 + t) = ~ 0.072, that is, 7.2% of the channel bandwidth is used inefficiently.
Уменьшая частоту отправки символа СОММА, можно обеспечить большую полезную пропускную способность канала, для этого можно увеличить интервал CommaTime в пределах до 1024 наносекунд, тогда DiscDetect будет равен 2048 наносекунд, ResetTime равен 4096 наносекунд, Wait_conn_Time равен 8192 наносекунды. При этом величины тайм-аутов не зависят от скорости или длины канала. Если интервал CommaTime равен 1024 наносекунды, то неэффективное использование пропускной способности канала равно t/(1024+t)=~0,01, что означает потерю 1% пропускной способности канала. Таким образом, более чем на 6% повышается эффективное использование полезной пропускной способности канала. Для сравнения отметим, что в прототипе константа, определяющая число информационных символов, после передачи которых необходимо выдавать спецсимвол СОММА, составляла 16 слов для конкретной реализации. Возьмем за основу максимальную частоту канала, при которой передача эффективна, равной 625 МГц. Тогда интервал CommaTime составляет 320 нс. Время рассоединения DiscDetect в этом случае будет равно 640 нс, ResetTime равен 1280 нс для всех случаев. По той же формуле t/(320+t)=~0,059, что соответствует примерно 6% пропускной способности канала, используемой неэффективно. Уменьшить эти потери в конкретной реализации прототипа нет никакой технической возможности.By reducing the frequency of sending the COMMA symbol, you can provide a large useful channel bandwidth, for this you can increase the CommaTime interval to within 1024 nanoseconds, then DiscDetect will be equal to 2048 nanoseconds, ResetTime will be equal to 4096 nanoseconds, Wait_conn_Time will be 8192 nanoseconds. Moreover, the timeout values do not depend on the speed or length of the channel. If the CommaTime interval is 1024 nanoseconds, then the inefficient use of channel bandwidth is t / (1024 + t) = ~ 0.01, which means a loss of 1% of the channel bandwidth. Thus, more than 6% increases the effective use of the useful bandwidth of the channel. For comparison, we note that in the prototype, the constant determining the number of information symbols, after the transmission of which it is necessary to issue the SOMMA special symbol, was 16 words for a specific implementation. We take as a basis the maximum channel frequency at which transmission is effective, equal to 625 MHz. Then the CommaTime interval is 320 ns. In this case, the DiscDetect disconnect time will be 640 ns; ResetTime will be 1280 ns for all cases. According to the same formula, t / (320 + t) = ~ 0.059, which corresponds to about 6% of the channel bandwidth used inefficiently. To reduce these losses in a specific implementation of the prototype there is no technical possibility.
Необходимость изменения машины состояний также продиктована большим временем соединения при выявлении ошибки в канале. В прототипе в исходном варианте машины состояний требовалось 19,2 мкс для перехода в состояние соединения. Это вполне адекватное время восстановления для малых скоростей передачи, но абсолютно неприемлемо для частот передачи выше 1ГГц, так как интервал, равный 19,2 мкс был использован для наихудшего худшего случая с большим запасом. Данную задержку, необходимую для выполнения процедур восстановления соединения в канале, можно сократить путем ввода соответствующего коэффициента, зависящего от частоты отправки символа СОММА, как показано на вышеприведенных примерах. Если сделать задержку восстановления соединения, зависящую только от частоты отправки спецсимвола СОММА, время на установку соединения сократится в несколько раз в зависимости от заданных констант.The need to change the state machine is also dictated by the long connection time when detecting errors in the channel. In the prototype, in the initial version of the state machine, 19.2 μs was required to transition to the connection state. This is an adequate recovery time for low transmission speeds, but is absolutely unacceptable for transmission frequencies above 1 GHz, since an interval of 19.2 μs was used for the worst-case worst case with a large margin. This delay necessary to perform the procedures for reconnecting the channel can be reduced by entering an appropriate coefficient depending on the frequency of sending the COMMA symbol, as shown in the above examples. If you make a connection recovery delay, depending only on the frequency of sending the SOMMA special character, the time to establish a connection will be reduced several times, depending on the given constants.
Устранение в данном техническом решении проблем системы кредитования, свойственные устройствам коммуникационного интерфейса GigaSpaceWire, работающим на частотах свыше 600 МГц в соответствии со спецификациями стандарта SpaceWire, позволяет ликвидировать потери пропускной способности устройства при увеличении скорости передачи битов в канале до 1 Гбит/с и выше. Изменение размера кредита связано с тем, что неэффективное использование канала при высоких частотах (больше 1 ГГц) и длинах канала более 50 метров составляет примерно 80% в самом худшем случае. При физической реализации сопряжения с коммуникационным каналом (на уровне PHY) в устройстве могут использоваться различные сигнальные уровни, что находит отражение в существенном расширении области применения модулей SpaceWire. В устройстве можно использовать LVDS по стандартам Serial RapidIO (вполне реализуемые на скоростях в 1 Гбит/с и более), физические каналы на медных кабелях и волоконно-оптические каналы. Имеются условия для использования в технических реализациях данного устройства отработанных технических решений, например, по гальванической развязке. Из имеющейся на рынке электронной компонентной базы для PHY могут использоваться сигналы с уровнями PECL/LV-PECL FibreChannel, могут быть применены кабельная продукция и разъемы InfiniBand, и другие известные технические решения. Таким образом, данное техническое решение способствует достижению более высоких показателей надежности и быстродействия, имеет значительные функциональные преимущества по сравнению с известными аналогами, и является реализуемым с использованием современного уровня техники.Elimination of the credit system problems in this technical solution, which are characteristic of GigaSpaceWire communication interface devices operating at frequencies above 600 MHz in accordance with the specifications of the SpaceWire standard, allows eliminating the device’s bandwidth loss while increasing the bit rate in the channel up to 1 Gbit / s and higher. The change in the size of the loan is due to the fact that the inefficient use of the channel at high frequencies (more than 1 GHz) and channel lengths of more than 50 meters is approximately 80% in the worst case. During physical implementation of pairing with a communication channel (at the PHY level), various signal levels can be used in the device, which is reflected in a significant expansion of the scope of SpaceWire modules. The device can use LVDS according to the Serial RapidIO standards (which are fully implemented at speeds of 1 Gbit / s and more), physical channels on copper cables and fiber-optic channels. There are conditions for the use in the technical implementations of this device of proven technical solutions, for example, for galvanic isolation. From the electronic component base available on the market for PHY, signals with PECL / LV-PECL FibreChannel levels can be used, cable products and InfiniBand connectors, and other well-known technical solutions can be applied. Thus, this technical solution contributes to the achievement of higher indicators of reliability and speed, has significant functional advantages compared to well-known analogues, and is implemented using the current level of technology.
Claims (3)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2018122522A RU2700560C1 (en) | 2018-06-19 | 2018-06-19 | Gigaspacewire communication interface device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2018122522A RU2700560C1 (en) | 2018-06-19 | 2018-06-19 | Gigaspacewire communication interface device |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2700560C1 true RU2700560C1 (en) | 2019-09-17 |
Family
ID=67989956
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2018122522A RU2700560C1 (en) | 2018-06-19 | 2018-06-19 | Gigaspacewire communication interface device |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2700560C1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116523057A (en) * | 2022-01-24 | 2023-08-01 | 本源量子计算科技(合肥)股份有限公司 | Quantum control system and quantum computer system |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030033364A1 (en) * | 2001-08-10 | 2003-02-13 | Garnett Paul J. | Interfacing computer modules |
US6977599B2 (en) * | 2001-05-08 | 2005-12-20 | International Business Machines Corporation | 8B/10B encoding and decoding for high speed applications |
RU103013U1 (en) * | 2010-05-26 | 2011-03-20 | Закрытое акционерное общество "Электронно-вычислительные информационные и инструментальные системы" | COMMUNICATION INTERFACE DEVICE |
RU2483351C1 (en) * | 2012-04-19 | 2013-05-27 | Закрытое акционерное общество Научно-производственный Центр "Микропроцессорные технологии" (ЗАО НПЦ МИТ) | COMMUNICATION INTERFACE DEVICE FOR SpaceWire NETWORK |
-
2018
- 2018-06-19 RU RU2018122522A patent/RU2700560C1/en active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6977599B2 (en) * | 2001-05-08 | 2005-12-20 | International Business Machines Corporation | 8B/10B encoding and decoding for high speed applications |
US20030033364A1 (en) * | 2001-08-10 | 2003-02-13 | Garnett Paul J. | Interfacing computer modules |
RU103013U1 (en) * | 2010-05-26 | 2011-03-20 | Закрытое акционерное общество "Электронно-вычислительные информационные и инструментальные системы" | COMMUNICATION INTERFACE DEVICE |
RU2483351C1 (en) * | 2012-04-19 | 2013-05-27 | Закрытое акционерное общество Научно-производственный Центр "Микропроцессорные технологии" (ЗАО НПЦ МИТ) | COMMUNICATION INTERFACE DEVICE FOR SpaceWire NETWORK |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116523057A (en) * | 2022-01-24 | 2023-08-01 | 本源量子计算科技(合肥)股份有限公司 | Quantum control system and quantum computer system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9479279B2 (en) | Multiple protocol tunneling using time division operations | |
US6766464B2 (en) | Method and apparatus for deskewing multiple incoming signals | |
US7821919B2 (en) | Data processing apparatus and data processing method | |
US8155136B2 (en) | Single network interface circuit with multiple-ports and method thereof | |
US5748684A (en) | Resynchronization of a synchronous serial interface | |
US20010046235A1 (en) | Low latency shared memory switch architecture | |
JPS639261B2 (en) | ||
WO2005066816A1 (en) | Lane to lane deskewing via non-data symbol processing for a serial point to point link | |
US10366039B2 (en) | USB link bridge | |
JP3448241B2 (en) | Interface device for communication device | |
US6886062B2 (en) | Method and apparatus for improving time constraints and extending limited length cables in a multiple-speed bus | |
US20130251006A1 (en) | Data packet flow control across an asynchronous clock domain boundary | |
KR102518285B1 (en) | PCIe INTERFACE AND INTERFACE SYSTEM | |
EP1700224B1 (en) | Receiver corporation | |
EP0923035A2 (en) | Encoding circuit and method of detecting block code boundary and establishing synchronization between scrambler and descrambler | |
RU2700560C1 (en) | Gigaspacewire communication interface device | |
RU126162U1 (en) | COMMUNICATION INTERFACE DEVICE FOR NETWORK Space Wire | |
US6990538B2 (en) | System comprising a state machine controlling transition between deskew enable mode and deskew disable mode of a system FIFO memory | |
RU187642U1 (en) | GIGASPACEWIRE COMMUNICATION INTERFACE DEVICE | |
RU2483351C1 (en) | COMMUNICATION INTERFACE DEVICE FOR SpaceWire NETWORK | |
US11818238B2 (en) | Low overhead high bandwidth data transfer protocol | |
EP0405041B1 (en) | Terminal adapter having a multiple HDLC communication channels receiver for processing control network management frames | |
US20030065869A1 (en) | PCI/LVDS half bridge | |
KR100401062B1 (en) | Apparatus for transmiting/receiving high speed data of an infiniband system | |
RU2485580C1 (en) | Communication device for ds-link galvanic isolation |