The present disclosure relates generally to an enhanced data stream transmission method and system using the DisplayPort transport protocol.
The DisplayPort (DP) Standard is a digital display interface developed by a consortium of computer and integrated circuit manufacturers and standardized by the Video Electronics Standards Association (VESA). The interface is primarily used to connect a video and audio source such as a personal computer, laptop computer, tablet or smartphone to a display device such as a computer monitor or television display. A DP data stream may be transmitted through standard DisplayPort connectors and cables or through a USB Type-C connector and associated cables, in which case it is transported alongside Universal Serial Bus (USB) data. The current DisplayPort Version 1.4 (DP1.4) provides for a raw serial bit rate of 8.1 Gbps per lane over 4 lanes, resulting in a total raw bit rate of 32.4 Gbps. As it uses ANSI 8b/10b coding, which is that every 8-bits payload data is encoded to a 10-bit character, it has a channel coding efficiency of 80%. Therefore, the raw bit rate of 32.4 Gbps is reduced to a data bit rate of 25.92 Gbps. Under some circumstances, DisplayPort Version 1.4 may also use a Reed Solomon Forward Error Correction (RS FEC) feature, which reduces the channel coding efficiency to 78.1% due to the overhead of RS parity symbol transmission.
Non-patent Document 1: VESA—DisplayPort Alternate Mode on USB-C Technical Overview, Sep. 27-28, 2016.
One aspect of the present disclosure is a data transmission method for enhanced channel coding efficiency of a DisplayPort interface that includes: transmitting a plurality of coding units for each micro-packet in each of one or more lanes of a DisplayPort Main Link from a DisplayPort transmitter, wherein each of the coding units comprises: a group of m symbol chunks, each symbol chunk including four 8-bit symbols, wherein m is 2 or 4; and an n-bit code data indicator that precedes the group of m-symbol chunks, wherein n is 2 or 4, and wherein the n-bit code data indicator indicates a content type of the m symbol chunks.
Another aspect of the present disclosure is a transmission system for a DisplayPort interface that includes: one or more lane serializer-driver elements; a PHY logical sub-layer element configured to arrange and transmit stream data to the one or more lane serializer-drivers, wherein the stream data comprises a plurality of coding units for each micro-packet directed to each of the one or more lane serializer-drivers, and wherein each of the coding units comprises: a group of m symbol chunks, each symbol chunk including four 8-bit symbols, wherein m is 2 or 4; and an n-bit code data indicator that precedes the group of m-symbol chunks, wherein n is 2 or 4, and wherein the n-bit code data indicator indicates a content type of the m symbol chunks.
A more complete appreciation of the invention and many of the attendant advantages thereof will be readily obtained as the same becomes better understood by reference to the following detailed description when considered in connection with the accompanying drawings, wherein:
Referring now to the drawings, wherein like reference numerals designate identical or corresponding parts throughout the several views; logical block diagrams of a DP system that may be used, for example, to implement aspects of the DP Standard Version 1.4, is shown in
Referring to
Referring to
Referring again, to
As each DP Link Symbol is encoded into a 10-bit ANSI8b/10b character, the total number of bits transmitted over 4 lanes per Micro-Packet is 2,560 bits (256 characters*10 bits/character). Therefore, the channel coding efficiency is 2,048 symbol data bits/2,560 channel-coded bits, or 80% per Micro-Packet 115.
For a given time slot, the four Main Link lanes carry either four Data Link Symbols (D) or four Control Link Symbols (C). The DP Standard defines eleven Control Link Symbols and either uses the same Control Link Symbol on all four lanes in SST (Single Stream Transport) mode or combines the four Control Link Symbols to represent one of nine Control Link Symbol Sequences defined by the DP Standard in MST (Multi Stream Transport) mode.
A logical block diagram is shown in
In an embodiment, a 2-bit CDI (Code Data Indicator) field 325 precedes each group of two consecutive Symbol Chunks (“Symbol Chunk Pair”) of TS[8M+X] and TS[8M+X+4] (where M is an integer 0˜7 inclusive and X is a lane number, 0, 1, 2, or 3). The combination of a 2-bit CDI field 325 and two Symbol Chunks 315 make up a Coding Unit 320.
As a result, an enhanced efficiency DP Micro-Packet 310 is transported as eight Coding Units per lane over four lanes, each Coding Unit consisting of a 2-bit CDI field and a 2*32-bit Symbol Chunk Pair per lane. Over the 4-lane Main Link, the total number of bits transmitted per enhanced efficiency DP Micro-Packet 310 is 2,112 bits (8 Coding Units per lane*(2+32*2) bits per Coding Unit*4 lanes). Therefore, the channel coding efficiency is 2,048 symbol data bits/2,112 channel-coded bits, or 97.0% per enhanced efficiency DP Micro-Packet 310.
The 2-bit CDI field 325 may indicate the content type of the Symbol Chunk Pair that follows CDI field 325. In some embodiments, there may be four Symbol Chunk types—for example, Data Link Symbol Chunk, Control Link Symbol Chunk, RS Parity Symbol Chunk, and PHY Sync Symbol Chunk. RS Parity Symbol Chunk and PHY Sync Symbol Chunk may be sent on all the enabled Main Link lanes.
The CDI value may indicate the Symbol Chunk Pair content type as follows: when the CDI Bits 1:0=10, the subsequent Symbol Chunk Pair has (1) one Control Link Symbol Chunk, (2) two Control Link Symbol Chunks, or (3) a PHY Sync Symbol Chunk; when the CDI Bits 1:0=01, both Symbol Chunks of the pair are Data Link Symbol Chunks.
In some embodiments, a Symbol Chunk Pair Swapping Operation may be employed. In such embodiments, a Link Symbol Chunk for TS[8M+X] may immediately follow the CDI field except for when the CDI value is 10[MP1][M2] and when the first Symbol Chunk (that is, Symbol Chunk for TS[8M+X]) is a Data Link Symbol Chunk and the second Symbol Chunk (that for TS[8M+X+4]) is a Control Link Symbol Chunk, in which case the DP Transmitter may transmit the TS[8M+X+4] Symbol Chunk first (“Symbol Chunk Pair swapping” operation).
The Control Link Symbol Chunk may contain the following parameters: Control Link Symbol value (4 bits), where one of eleven Control Link Symbol values in SST mode or one of nine Control Link Symbol Sequence values in MST mode; Type of the subsequent Symbol Chunk (2 bits to indicate Control Link Symbol Chunk, Data Link Symbol Chunk, or RS Parity Symbol Chunk—valid only for a Control Link Symbol Chunk that is transmitted immediately after a CDI field); Symbol Chunk Pair swapping indication (1 bit—this parameter, valid only for a Control Link Symbol Chunk that is transmitted immediately after a CDI field, indicates that the two Symbol Chunks within the Symbol Chunk Pair shall be swapped by a DP Receiver before lane reverse shuffling).
In some embodiments, the DP Transmitter performs scrambling using a Linear-Feedback Shift Register (LFSR) with the polynomial formula in equation (1) and the hexadecimal seed values below.
G(X)=X23+X21+X16+X8+X5+X2+X0 (1)
Seed Values:
1DBFBCh for Lane 0
1DBFBDh for Lane 1
1DBFBEh for Lane 2
1DBFBFh for Lane 3
In some embodiments, the DP Transmitter may apply the following rule: the 2-bit CDI field bypasses the scrambler and does not advance the scrambling LFSR.
In some embodiments, the PHY Sync Symbol Chunk may also bypass and initialize the scrambler LFSR in the most significant (last) 8-bit symbol of the PHY Sync Symbol Chunk,
Each 8-bit symbol of the Control Link Symbol Chunk and the RS Parity Symbol Chunk may advance the scrambling LFSR, but bypass the scrambler XOR block.
Each 8-bit symbol of the Data Link Symbol may advance the scrambling LFSR and may be XOR'ed with the least significant 8 bits of the LFSR value.
In some embodiments, the following Serial Bit Transmission Order may be used: for the 2-bit CDI Field, bit 0 may be transmitted first, followed by bit 1; for each 32-bit Symbol Chunk, bit 0 of the least significant 8-bit symbol may be transmitted first and bit 7 of the most significant 8-bit symbol may be transmitted last. In some embodiments, the maximum run length of the channel coding efficiency may be 68 serial bits since every CDI field has a bit transition.
Referring to
The first 8 bits consisting of 2 bits of CDI value plus Bits 5:0 of the least significant 8-bit symbol data of Symbol Chunk 0 are the RS Data Symbol 0. Bits 7:4 of the most significant 8 bits of Symbol Chunk 58 are Bits 3:0 of the RS Data Symbol 243 while Bits 7:4 of the RS Data Symbol 243 are zero-padded (and not transmitted).
As for the RS parity block, the least significant 8 bits of the RS Parity Symbol Chunk are the RS Parity Symbol 0 and the most significant 8 bits are the RS Parity Symbol 3.
In some embodiments, the DP Transmitter may perform 2-way interleaving between Lane 0 and Lane 1 (or Lane 2 and Lane 3) for improved error immunity.
Since the number of Coding Units per Micro-Packet is eight over the 4-lane Main Link, while the RS Block has 30 Coding Units, the location of RS Parity Symbol Chunk relative to the first Coding Unit of a Micro-Packet varies from one RS block to the next.
The total number of bits transmitted per Link Frame, in embodiments employing 64b/66b channel coding, is: 30*(2+32+32)bits/RS block*8 RS blocks=15,840 bits. The number of Link Symbol Chunk data bits transmitted per Link Frame is: (59 Symbol Chunks*32 bits per Symbol Chunk) per RS block*8 RS blocks−32 bits per PHY Sync Symbol Chunk=15,072 bits, Therefore, the overall efficiency is 15,072 bits/15,840 bits, or 95.2%.
The Micro-Packet mapping to four, two or one Main Link lanes, for some embodiments, is shown
An RS Parity Symbol Chunk insertion interval is every 30 Coding Units per lane and PHY Sync Symbol Chunk interval every eight RS Blocks per lane, irrespective of the lane count.
In an embodiment, a 4-bit CDI (Code Data Indicator) field 710 precedes each Symbol Chunk Quad TS[16M+X], TS[16M+X+4], TS[16M+X+8], and TS[16M+X+12] (where M is an integer 0˜3 inclusive and X is a lane number, 0, 1, 2, or 3). As shown in
The CDI value may indicate, for some embodiments, the Symbol Chunk Quad content type as follows: when the CDI Bits=1100, the subsequent Symbol Chunk Quad may contain Control Link Symbol Chunk(s) or PHY Sync Symbol Chunk(s); when the CDI Bits=0011, the subsequent Symbol Chunk Quad may contain four Data Link Symbol Chunks.
In some embodiments, the Bits 3:0 of each Control Link Symbol Field may be defined as follows: Bit 0=1st Symbol Chunk Type, Bit 1=2nd Symbol Chunk Type, Bit 2=3rd Symbol Chunk Type, Bit 3=4th Symbol Chunk Type, where the bit values is 1 for a Control Link Symbol Chunk or PHY Sync Symbol Chunk and is 0 for a Data Link Symbol Chunk.
In some embodiments, the DP Transmitter may set a Symbol Chunk Type Vector field bit to indicate Symbol Chunk swapping. In such embodiments, when the first Symbol Chunk is a Data Link Symbol Chunk, it may be swapped with the closet Control Link Symbol Chunk within the Symbol Chunk Quad.
In some embodiments, a PHY Sync Symbol may indicate the Symbol Chunk Types of the 3rd and 4th Symbol Chunks of a Symbol Chunk Quad. For example, when the PHY Sync Symbol is 33h, then both the 3rd and 4th Symbol Chunks are Control Link Symbol Chunks; when the PHY Sync Symbol is AAh then the 3rd Symbol Chunk is a Data Link Symbol Chunk and the 4th Symbol Chunk is a Control Link Symbol Chunk; when the PHY Sync Symbol is BBh then the 3rd Symbol Chunk is a Control Link Symbol Chunk and the 4th Symbol Chunk is a Data Link Symbol Chunk, and when the PHY Sync Symbol is CCh then both the 3rd and 4th Symbol Chunks are Data Symbol Chunks.
In the foregoing embodiments using the 128b/132b channel coding, the same LFSR (both polynomial—equation 1—and the seed values provided) and rules may be used as disclosed above with reference to disclosed embodiments that use the 64b/66b channel coding.
In the foregoing embodiments using the 128b/132b channel coding, the same RS FEC using RS(248, 244) may be used as disclosed above with reference to disclosed embodiments that use the 64b/66b channel coding. In such embodiments, the RS data block may consist of 59 Symbol Chunks plus fifteen 4-bit CDI fields. The RS parity block may consist of four 8-bit parity symbols contained in RS Parity Symbol Chunk.
In some embodiments, a Link Frame may be marked by a PHY Sync Symbol Chunk inserted immediately after a CDI field with a fixed interval of 8 RS blocks. A PHY Sync Symbol Chunk, when inserted, may always be followed by a RS Parity Symbol Chunk.
The 128b/132b channel coding of the foregoing embodiments increases the channel coding efficiency from 78.1% of DP1.4 standard to 95.2% including RS FEC overhead.
In an embodiment, a 2-bit CDI field 810 precedes a Symbol Chunk Quad. The CDI value indicates the Symbol Chunk Quad types.
The CDI value may indicate, for some embodiments, the Symbol Chunk Quad types as follows: when the CDI Bits=10, the subsequent Symbol Chunk Quad may contain Control Link Symbol Chunk(s) or a PHY Sync Symbol Chunk; when the CDI Bits=01, the subsequent Symbol Chunk Quad may contain four Data Link Symbol Chunks.
In embodiments based on 128b/130b channel coding, the Control Link Symbol Fields may be the same as in the embodiments based on 128b/132b channel coding disclosed above.
In embodiments based on 128b/130b channel coding, the PHY Sync Symbol Chunk may be the same as in the embodiments based on 128b/132b channel coding disclosed above.
In embodiments using the 128b/130b channel coding, the same LFSR (both polynomial—equation 1—and the seed values provided) and rules may be used as disclosed above with reference to disclosed embodiments that use the 64b/66b channel coding.
In embodiments using the 128b/130b channel coding, the RS FEC using RS(244, 240) may be used with the same polynomials as disclosed above with reference to disclosed embodiments that use the 64b/66b channel coding. In such embodiments, the RS data block may consist of 59 Symbol Chunks plus fifteen 2-bit CDI fields. The RS parity block may consist of four 8-bit parity symbols contained in RS Parity Symbol Chunk.
In some embodiments, a Link Frame may be marked by a PHY Sync Symbol Chunk inserted immediately after a CDI field with a fixed interval of 8 RS blocks. A PHY Sync Symbol Chunk, when inserted, may always be followed by a RS Parity Symbol Chunk.
The 128b/130b channel coding of these embodiments increases the channel coding efficiency from 78.1% of DP1.4 standard to 96.8% including RS FEC overhead.
The present invention has been described in connection with the above description, it is not intended to limit the scope of the invention to the particular form set forth, but on the contrary, it is intended to cover such alternatives, modifications, and equivalents as may be included within the spirit and scope of the inventions as defined by the appended claims.
Obviously, numerous modifications and variations of the present invention are possible in light of the above teachings. It is therefore to be understood that within the scope of the appended claims, the invention may be practiced otherwise than as specifically described herein,
This application claims the benefit of priority to U.S. provisional Patent Applications 62/573,464 filed Oct. 17, 2017; 62/574,060 filed on Oct. 18, 2017; and 62/580,619 filed Nov. 2, 2017, which are incorporated by reference in their entirety.
Number | Name | Date | Kind |
---|---|---|---|
20060092893 | Champion | May 2006 | A1 |
20140321527 | Inata | Oct 2014 | A1 |
20140376625 | Lee | Dec 2014 | A1 |
20150163512 | Cai | Jun 2015 | A1 |
20150280895 | Whitby-Strevens | Oct 2015 | A1 |
Entry |
---|
Jim Choate, “VESA—DisplayPort™ Alternate Mode on USB-C™—Technical Overview,” USB Implementers Forum, Sep. 27-28, 2016. |
Number | Date | Country | |
---|---|---|---|
20190114282 A1 | Apr 2019 | US |
Number | Date | Country | |
---|---|---|---|
62573464 | Oct 2017 | US | |
62574060 | Oct 2017 | US | |
62580619 | Nov 2017 | US |