CN-115934593-B - Transmitting USB data in a data stream
Abstract
The invention comprises a method for transmitting (I) USB data (TxData) in a data stream (SERDESDATA) comprising stream data (StrData). Here, stream data (StrData) and USB data (TxData) including a plurality of USB packets having a first number of bits are received. In addition, the USB data (TxData) is divided for generating a plurality of transmission packets (SP) of the USB data (TxData) having the second number of bits. Furthermore, a transmission packet (SP) is inserted into the data stream (SERDESDATA). The combined data stream (SERDESDATA) is transmitted. In this case, an interrupt pattern (Pat) is appended to at least the initial transmission packet (SP) in order to signal the presence of USB data (TxData) in the data stream (SERDESDATA). The invention also relates to a method (II) for receiving data and to a transmission method (I, II), as well as to a transmitting unit (50), a receiving unit (70) and a transmission system (100).
Inventors
- Harald carl
Assignees
- 西门子医疗有限公司
Dates
- Publication Date
- 20260505
- Application Date
- 20221008
- Priority Date
- 20211001
Claims (16)
- 1. A method for transmitting (I) USB data (TxData) in a data stream (SERDESDATA) comprising stream data (StrData), the method having the steps of: Receiving (i, i') at least a portion of said stream data (StrData) and said USB data (TxData), said USB data comprising a plurality of USB packets having a first number of bits, Dividing (ii) the USB data (TxData) to generate a plurality of transmission packets (SP) of USB data (TxData) having a second number of bits, -Inserting (iii) a transmission packet (SP) into said data stream (SERDESDATA), and -Transmitting (iv) a combined data stream (SERDESDATA), wherein Attaching an interrupt pattern (Pat) to at least the initial transmission packet (SP) in order to signal the presence of USB data (TxData) in said data stream (SERDESDATA), Wherein the transmission packet (SP) comprises transmission control data (ndc) containing information about where to transmit a further transmission packet (SP), wherein the further transmission packet (SP) has no interrupt pattern (Pat).
- 2. The method according to claim 1, Wherein the information indicates that further transmission packets (SP) are transmitted in predefined intervals.
- 3. The method according to claim 1 or 2, Wherein each transmission packet (SP) includes transmission control data (ndc).
- 4. The method according to claim 1 or 2, Wherein the steps of dividing and inserting have already been started as soon as said second number of bits of USB data (RxData, txData) is received.
- 5. The method according to claim 1 or 2, Wherein the interrupt pattern (Pat) is selected such that it occurs as little as possible in the remaining stream data (StrData).
- 6. The method according to claim 5, Wherein an interrupt pattern (Pat) of the plurality of predefined interrupt patterns is selected such that said interrupt pattern occurs as little as possible in the remaining stream data (StrData).
- 7. The method according to claim 1 or 2, Wherein the transmission packet (SP) comprises transmission check data (CRC) with which transmission errors can be determined and optionally corrected.
- 8. The method according to claim 1 or 2, Wherein a transmission packet (SP) is inserted into the data stream and transmitted within a short period of time after its generation.
- 9. The method according to claim 1 or 2, Wherein the interrupt pattern (Pat) consists of exactly two identical sub-patterns and if the two identical sub-patterns occur in the stream data, a third identical sub-pattern is appended thereto to distinguish from the interrupt pattern (Pat).
- 10. A method for receiving (II) data (SERDESDATA) transmitted according to any one of claims 1 to 9, the method having the steps of: -receiving (v) a combined data stream (SERDESDATA), Identifying (vi) an interrupt pattern (Pat), Dividing (vii) the data stream (SERDESDATA) into transmission packets (SP) and stream data (StrData) using the interrupt mode (Pat), -Reconstructing (viii) the USB data (RxData) contained in said transmission packet (SP) into a USB data packet, and -Outputting (ix, ix') said stream data (StrData) and reconstructed USB data (RxData) separately.
- 11. A method for transmitting (I, II) data, the method comprising steps (I, I ', II, iii, iv) for transmitting data by means of the method according to any one of claims 1 to 9 and steps (v, vi, vii, viii, ix, ix') for receiving data by means of the method according to claim 10.
- 12. A transmitting unit (50) for transmitting USB data (TxData) in a data stream (SERDESDATA) comprising stream data (StrData), the transmitting unit (50) having: at least one stream input interface (52) for receiving said stream data (StrData), -A USB input interface (51) for receiving said USB data (TxData), said USB data (TxData) comprising a plurality of USB packets having a first number of bits, An allocation unit (53) for dividing said USB data (TxData) so as to generate a plurality of transmission packets (SP) of USB data (TxData) having a second number of bits, -A combining unit (61) for inserting a transmission packet (SP) into said data stream (SERDESDATA), and -An output interface (62) for transmitting a combined data stream (SERDESDATA), wherein Attaching an interrupt pattern (Pat) to at least the initial transmission packet (SP) in order to signal that USB data (TxData) is present in said data stream (SERDESDATA), Wherein the transmission packet (SP) comprises transmission control data (ndc) containing information about where to transmit a further transmission packet (SP), wherein the further transmission packet (SP) has no interrupt pattern (Pat).
- 13. A receiving unit (70) for receiving USB data (RxData) in a data stream (SERDESDATA) comprising stream data (StrData), the receiving unit (70) having: An input interface (71) for receiving a combined data stream (SERDESDATA) comprising transmission packets (SP) and stream data (StrData), wherein at least one initial transmission packet (SP) has an interrupt mode (Pat) for signaling the presence of USB data (RxData) in a subsequent data stream (SERDESDATA), An identification unit (79) for identifying an interrupt pattern (Pat), -A dividing unit (73) for dividing said data stream (SERDESDATA) into transmission packets (SP) and stream data (StrData) using said interrupt pattern (Pat), A reconstruction unit (74) for reconstructing USB data (RxData) contained in the transmission packet (SP) into USB packets, At least one stream output interface (76) for outputting said stream data (StrData), A USB output interface (75) for outputting said USB data (RxData), Wherein the transmission packet (SP) comprises transmission control data (ndc) containing information about where to transmit a further transmission packet (SP), wherein the further transmission packet (SP) has no interrupt pattern (Pat).
- 14. A transmission system (100) for transmitting USB data (TxData, rxData) in at least one data stream (SERDESDATA) comprising stream data (StrData), the transmission system (100) having: -a client device (31), the client device (31) having a transmitting unit (50) according to claim 12 and a receiving unit (70) according to claim 13, and -A host device (30), the host device (30) having a transmitting unit (50) according to claim 12 and a receiving unit (70) according to claim 13, wherein A transmitting unit (50) of the client device (31) is connected with a receiving unit (70) of the host device (30), and the transmitting unit (50) of the host device (30) is connected with the receiving unit (70) of the client device (31).
- 15. A computer program product having a computer program directly loadable into a logic means of a transmitting unit (50) and/or a receiving unit (70), the computer program having program segments for performing at least a part of the steps of the method according to any of claims 1 to 9 and/or 10 or 11 when the computer program is executed in the transmitting unit (50) and/or the receiving unit (70).
- 16. A computer readable medium having stored thereon program segments capable of being programmed and executed on a logic device for performing at least part of the steps of the method according to any one of claims 1 to 9 and/or claim 10 or claim 11 when the program segments are executed by the logic device.
Description
Transmitting USB data in a data stream Technical Field The invention relates to a method of transmitting USB data in a data stream, a method of receiving such data, and a transmitting unit, a receiving unit and a transmission system. Background USB networks have the property that only a limited distance (5 m) can be bridged between a PC or host and a terminal device. The main reason for this limitation is the maximum allowed round trip delay or response time of 1.5 mus. If the USB device does not respond to the USB host command within the allowed time, the host considers the command to be lost. To meet the USB specification, the cable length should not be longer than 5 meters or 3 meters. By using an intermediate connected USB hub, respectively, up to six of the cables can be connected in series. A total of up to about 30 meters of transmission path can be achieved. One exemplary application derives from medical technology that monitors and mice and keyboards are often in the examination room, which must be attached to a PC via USB. However, the PC is located in another room between 10m-30m away, for example in the operator's room or in a central computing or server room. I.e. there is often a wired video connection between the PC and the display device, and additionally a USB connection is required, so that usually two cables are laid. For bridges larger than the distance set by the standard, optical expanders are known from practice. The optical expander directly converts the electrical USB signal of the terminal device into an optical signal, transmits the optical signal and converts the optical signal back again at the receiver. Here, an own optical cable is required for each USB interface. Furthermore, so-called KVM expanders are known from practice. However, the KVM extender does not transparently transmit USB signals, but rather is generally premised on knowledge of the connected terminal devices. Disclosure of Invention It is an object of the present invention to transmit any USB data and any other streaming data via a cable. The object is achieved by a method for transmitting and a method for receiving according to one embodiment and by a transmitting unit, a receiving unit and by a transmission system. The method mentioned at the beginning is used for transmitting USB data in a data stream. Here, the data stream includes arbitrary stream data. The method has the following steps. In one step, at least a portion of the streaming data and the USB data is received. The USB data includes a plurality of USB packets having a first number of bits. In another step, the USB data is divided to generate a plurality of transmission packets of the USB data having the second number of bits. In a subsequent step, such a transmission packet is inserted into the data stream. In a further step, the combined data stream is transmitted. In this case, an interrupt mode is attached to at least the initial transmission packet in order to signal to the receiver, for example, that USB data is present in the data stream, in particular in the subsequent data stream. The term data stream generally refers to a continuous flow of data sets, the end of which is generally not predictable in advance. The data stream is in particular serial, i.e. the data sets are processed, transmitted and/or received continuously. Streaming data may in principle be received as continuous or serial data in any format or protocol, e.g. HSSL. Here, the stream data includes content such as audio data, video data, measurement data, or also ethernet data, etc., but does not include USB data. The stream data here has a high data rate or bandwidth of several GB/s, for example in the case of 4K video data. The USB data to be received may in principle come from any USB device, such as a mouse, keyboard, mass storage medium, etc., or have also been combined, for example by means of a USB hub. According to the USB specification, USB data may be based on different transmission speeds (low speed, full speed, high speed) for which in turn different maximum sizes of USB packets are defined in the standard. The maximum size of the USB packet corresponds to the maximum number of bits, e.g. 8 bytes in case of low speed up to 1024 bytes in case of high speed, which bytes contain the corresponding USB packet. The division of USB data or individual USB packets means that, in particular, larger USB packets are divided over a plurality of transmission packets. The USB data is thus transmission valid data of the transmission packet. The division into the transmission packets with USB data preferably already starts as soon as the portion of the USB packet corresponding to the second number of bits is received. The second number of bits is in particular smaller than the first number of bits. Even though the term "bit" is used in this context, it is clear that the standard size at the time of data transmission is usually specified in bytes. The transmission packets, also ca