WO2000036755A1 - Method and apparatus for backward-compatible error correction for real time communication link - Google Patents

Method and apparatus for backward-compatible error correction for real time communication link Download PDF

Info

Publication number
WO2000036755A1
WO2000036755A1 PCT/US1999/029865 US9929865W WO0036755A1 WO 2000036755 A1 WO2000036755 A1 WO 2000036755A1 US 9929865 W US9929865 W US 9929865W WO 0036755 A1 WO0036755 A1 WO 0036755A1
Authority
WO
WIPO (PCT)
Prior art keywords
codeword
information
parity
check
codewords
Prior art date
Application number
PCT/US1999/029865
Other languages
French (fr)
Inventor
Chi-Ping Nee
Original Assignee
Tiernan Communications, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tiernan Communications, Inc. filed Critical Tiernan Communications, Inc.
Priority to AU21885/00A priority Critical patent/AU2188500A/en
Publication of WO2000036755A1 publication Critical patent/WO2000036755A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2381Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2383Channel coding or modulation of digital bit-stream, e.g. QPSK modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
    • H04N21/4382Demodulation or channel decoding, e.g. QPSK demodulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/64307ATM

Definitions

  • the MPEG-2 Systems standard (ITU-T Recommendation H.222.0
  • the MPEG-2 Systems standard defines an individual coded video, audio or other coded bitstream as an "elementary stream".
  • the contents of an elementary stream may be broken into a sequence of discrete units, in which case the elementary stream is structured as a Packetized Elementary Stream (PES).
  • PES Packetized Elementary Stream
  • the individual units, or packets, are known as PES packets, which can be of large and variable size.
  • the MPEG-2 Systems standard defines two methods of creating a multiplex of PESs.
  • PS Program Stream
  • TS Transport Stream
  • the PES packets are broken into small, fixed-size units (188 octets) called transport packets, which may be multiplexed with transport packets from other PESs into a transport stream.
  • FIG. 1 is an illustration of the protocol layers that exist to support B-ISDN and ATM. Each layer performs a specific set of functions and the combination of layers provides the full functionality of a B-ISDN application, from opening and closing connections to error and continuity checks on the transmitted data itself.
  • the physical layer of the B-ISDN protocol stack allows users to choose the physical medium they plan to deploy.
  • the two most popular physical layer formats currently used for ATM networks are DS-3 and OC-3 (or the European equivalent STM-1).
  • the ATM layer is responsible for the framing, multiplexing and switching of ATM cells over the physical medium. It is this layer which introduces many of the hurdles that need to be solved to support MPEG-2 over ATM applications.
  • MPEG-2 The transmission of an MPEG-2 transport stream works under the assumption that there is a constant predictable delay between the source and destination.
  • MPEG-2 requires a very high level of quality (low bit error rate) over its transmission medium.
  • the ATM layer itself does not have the ability to respond to these requirements of an MPEG-2 transport stream.
  • the ATM adaptation layer resides above the ATM layer in the stack and is responsible for: • Error check (Cyclic Redundancy Check or CRC): since the ATM layer itself has no error checking built in
  • AAL1 has a range of capabilities that allows it to -j-
  • AALl Protocol Data Units are equipped with additional information such as time stamps and sequence counts to perform the adaptation.
  • FEC forward error correction
  • AALl also provides a way to handle transmission issues such as cell loss and other ATM and physical layer problems.
  • AAL5 has proven to be a more efficient protocol (less overhead) than AALl, which is important for bandwidth sensitive MPEG-2 applications.
  • AAL5 is currently the predominant North American adaptation layer; however, AAL5 was not designed to cope with timing relationships or cell loss.
  • a transmission specification for transport of MPEG-2 coded signals over ATM networks is defined in ITU-T Recommendation J.82.
  • this specification describes utilization of AALl and AAL5 to enhance the quality of service provided by the ATM layer in order to fulfill service requirements for MPEG-2 transport.
  • each MPEG-2 TS packet is mapped to exactly four Segmentation and Reassembly Sublayer - Protocol Data Unit (SAR-PDU) payloads (each 47 octets).
  • SAR-PDU Segmentation and Reassembly Sublayer - Protocol Data Unit
  • 1 to L MPEG-2 TS packets are mapped into the AAL5 Service Data Unit (SDU) with padding added as needed.
  • SDU Service Data Unit
  • the Common Part Convergence Sublayer - Protocol Data Unit (CPCS-PDU) includes a payload and trailer.
  • the CPCS-PDU payload includes two MPEG-2 TS packets.
  • the CPCS-PDU trailer includes a User-to-User (UU) indication field, a Common Part Indicator field (CPI), a Length field and a Cyclic Redundancy Check field.
  • UU User-to-User
  • CPI Common Part Indicator
  • Length The Length field is used to encode the length of the CPCS-PDU payload.
  • the CRC field uses CRC-32 to provide detection of errored bits.
  • the CRC field together with the Length field enables detection of lost cells.
  • Cyclic Redundancy Check has been widely used in various communication links because of its excellent burst error detection capability and ease of implementation.
  • Some mobile communication standards also use a convolutional code cascaded with CRC. When a mobile communication channel is in deep fade, the received convolutional code usually suffers from burst errors, which can also be detected using CRC.
  • CRC is powerful for detecting burst errors or cell loss
  • its error correction capability is considered to be relatively weak.
  • CRC is seldom used for error correction.
  • the design goal is mainly for the transmission of data or voice.
  • the network may rely on higher layer protocols such as Transmission Control Protocol (TCP) to retransmit error packets.
  • TCP Transmission Control Protocol
  • voice transmission the loss of a few voice samples is generally tolerable and will go unnoticed by the listener.
  • the transport stream is generally required to be pseudo error free, which is equivalent to having a packet error probability of less than 10 "10 .
  • CRC CRC alone cannot achieve this pseudo error free requirement.
  • the highest quality of service that an ATM network can provide has an associated cell loss probability of 10 "7 which is several orders of magnitude away from 10 "10 .
  • cell loss dominates the packet error probability.
  • a similar situation occurs in mobile communications, where burst errors dominate transmission performance.
  • a method of error correction coding includes providing a source sequence of information bits that is encoded to produce a sequence of N information codewords.
  • a parity-check codeword is generated by performing a logic operation on the codeword sequence.
  • the logic operation includes performing a bit-by-bit exclusive OR operation between successive information codewords in the sequence of N information codewords.
  • the sequence of N information codewords and the parity- check codeword are transmitted on a communication channel.
  • the source sequence of information bits comprises MPEG-2 transport stream packets and the information codewords and the parity-check codeword each comprise an AAL5 protocol data unit.
  • the AAL5 protocol data unit includes an indication field for differentiating between an information codeword and a parity-check codeword.
  • an encoding apparatus includes an ATM adaptation layer encoder for encoding a source sequence of information bits to produce a sequence of N information protocol data units.
  • An error correction encoder generates a parity-check protocol data unit by performing a logic operation on the sequence of N information protocol data units.
  • the sequence of N information protocol data units and the parity-check protocol data unit are transmitted over an ATM network using a transmitter.
  • a method of error correction decoding includes receiving a sequence of N+l codewords over a communication channel, the codewords including N information codewords and a parity-check codeword, with each codeword having a CRC check sum.
  • a CRC check sum is computed for each codeword and compared to the CRC check sum for each corresponding information codeword to detect errored codewords.
  • a single detected errored codeword in the sequence of N+1 codewords is corrected by performing a logic operation on the remaining codewords.
  • FIG. 1 illustrates protocol layers that support broadband ISDN and ATM.
  • FIG. 2 illustrates a mapping of MPEG-2 transport stream packets into AAL5.
  • FIG. 3 illustrates a sequence of ATM adaptation layer protocol data units in accordance with the present method and apparatus.
  • FIG. 4 is a diagram illustrating MPEG-2 transport stream packet error rate versus error correction sequence length for a given cell loss ratio.
  • FIG. 5 is a diagram illustrating bandwidth efficiency for AALl and AAL5 versus error correction sequence length.
  • FIG. 6 is a schematic block diagram of a system for use with the error correction approach of the present method and apparatus.
  • Block coding is used for error correction in communication systems.
  • a systematic block code consists of two parts: the message part and the check sum part.
  • the information codeword of a systematic (n,k) block code can be expressed as follows:
  • a block of k information bits is mapped into an information codeword of length n.
  • a sequence of information codewords can be denoted as w w 2 , . . ., w N .
  • each codeword forms a row in a two dimensional array.
  • an additional packet or codeword can be transmitted at the end of the N codewords.
  • This additional codeword referred to herein as a parity-check codeword, can be formed as follows:
  • each codeword w corresponds to a AAL5 CPCS-PDU, with the message part m corresponding to the CPCS-PDU payload together with the UU, CPI and Length fields of the CPCS-PDU trailer and the CRC field corresponding to the check sum part c.
  • a sequence of N codewords denoted above as w,, w 2 , . . ., w v corresponds to a sequence of N CPCS- PDUs.
  • the parity-check codeword w N ⁇ is then formed by using (Eq.4) or (Eq.5) with the N CPCS-PDUs to provide an N+l st CPCS-PDU that carries the parity-check information generated by (Eq.4) or (Eq.5).
  • a one bit flag in a header or trailer can be used by an encoder to indicate that the corresponding packet is used for sending the parity-check codeword.
  • the CPI field can be used rather than the UU field to provide such normal/parity-check codeword indication.
  • FIG. 3 shows a sequence of CPCS-PDUs denoted 200-1, 200-2, ..., 200-N which correspond to information codewords carrying MPEG-2 transport packets.
  • a CPCS- PDU denoted 200-N+l corresponds to the parity-check codeword generated using (Eq.5) (odd parity).
  • the sequence can be viewed as an (N+1) row block of CPCS- PDUs.
  • the logic operation performed using (Eq.5) per column in the (N+1) row block is designated 204 in FIG. 3.
  • a decoding algorithm for the present error correction approach can be implemented in several different ways, depending on decoder complexity and the error probability requirement after decoding.
  • a decoding method and apparatus computes CRC check sums for all (N+1) codewords. If no more than one CRC within an (N+1) row block has a non-zero CRC check sum, for example, the kth row, 1 ⁇ k ⁇ N+1, then the decoding proceeds to solve the equation:
  • (Eq.6) can be used to recover an errored codeword that suffers from cell loss in an ATM network by searching for the cell loss part that satisfies (Eq.6).
  • an ATM communication link can be characterized by a random bit error probability P b and a random cell loss probability P c .
  • An ATM cell loss usually occurs due to either (1) a cell being discarded because the traffic is congested; or (2) a burst error being detected by the ATM cell header leading to all corresponding cells in the burst error states being discarded.
  • the burst error detection mechanism for ATM cells is explained as follows.
  • the ATM cell header includes a header error check (HEC).
  • HEC consists of a BCH code that can correct a single bit error and detect multiple bit errors.
  • the HEC has detected multiple bit errors, it declares that the channel is in burst error mode until the first correct cell is received. Therefore, all cells transmitted while in burst error mode are discarded, thereby affecting the random cell loss probability P c .
  • the MPEG-2 TS packet error rate (PER) P,. h:R of the error correction approach described above can be computed as follows. First consider the packet error rate without the present error correction approach. Let P w be the error probability of a codeword, then
  • the error probability P w can be approximated by the union of two probability events: the event that there is cell loss within one of the eight cells and the event that there is bit error within 8*48 bits.
  • the use of CRC syndrome and parity-check codeword can be computed iteratively to approach the pseudo error free performance level though such an approach requires increased decoder complexity.
  • Selecting the value of N for the sequence of codewords in relation to the parity- check codeword generation in (Eq.4) or (Eq.5) is a tradeoff between desired efficiency on the one hand and correction capability on the other hand.
  • N is also referred to herein as the error correction sequence length.
  • a reasonable value for N can be determined by simulation.
  • FIG. 5 illustrates bandwidth efficiency for AALl and AAL5 versus error correction sequence length.
  • Bandwidth efficiency is a measure of the amount of overhead required to carry a payload. For example, the efficiency can be calculated as a ratio of the MPEG-2 transport stream data rate to the ATM data rate.
  • AALl already includes a forward error correction capability.
  • the efficiency curve 214 for AALl is shown as a straight line at 86% and has no relationship with N, the correction sequence length of the present approach.
  • FIG. 6 A block diagram of an embodiment of a communication system for use with the error correction approach of the present invention is shown in FIG. 6.
  • the system includes an MPEG-2 source 402 and ATM device 404 coupled to ATM device 408 and MPEG-2 receiver 410 through an ATM network 406.
  • the ATM device 404 includes an ATM adaptation layer 5 CPCS block 404A, error correction encoder 404B and segmentation and reassembly (SAR)/multiplexer block 404C.
  • the ATM device 408 includes an ATM adaptation layer CPCS block 408A, error correction decoder 408B and SAR/demultiplexer 408C.
  • the MPEG-2 source 402 provides a stream or sequence of MPEG-
  • the AAL5 CPCS block 404A includes the ATM convergence sublayer functionality to provide CPCS-PDUs containing MPEG-2 packets to the error correction encoder 404B which performs the encoding operation defmed by (Eq.4) or (Eq.5).
  • the SAR/multiplexer 404C segments the CPCS-PDUs to ATM cells that are multiplexed onto the ATM network 406.
  • the demultiplexer 408C demultiplexes the arriving ATM cells and reassembles the CPCS-PDUs.
  • Error correction decoder 408B performs the decoding operation on the reassembled CPCS-PDUs according to the decoding algorithm defined by (Eq.6) above.
  • the AAL5 CPCS block 408A includes convergence sublayer functionality to provide MPEG-2 transport stream packets to the MPEG-2 receiver 410.
  • a decoder enhanced with the error correction capability of the present invention can use the parity-check codeword for error correction as described herein above. If a decoder that receives the codeword has not been updated for accepting parity-check codewords, the decoder can choose to dump the codeword without requiring extra effort. Likewise, in an embodiment used for mobile communication, a one bit field can be used to indicate whether normal data or the parity-check codeword has been sent in a particular codeword. In an alternate embodiment, an encoder can place the parity-check codeword in a null packet, e.g., a null MPEG-2 TS packet.
  • a null packet e.g., a null MPEG-2 TS packet.
  • a decoder enhanced with the error correction capability of the present invention determines that the received packet is a null packet, it can use the parity-check codeword for error correction as described herein. Otherwise, a non-enhanced decoder can simply disregard the null packet.
  • such a computer usable medium can include a readable memory device, such as a hard drive device, a CD-ROM, a DVD-ROM, or a computer diskette, having computer readable program code segments stored thereon.
  • the computer readable medium can also include a communications or transmission medium, such as a bus or a communications link, either optical, wired, or wireless, having program code segments carried thereon as digital or analog data signals.

Abstract

A method of error correction coding includes providing a source sequence of information bits that is encoded to produce a sequence of N information codewords. A parity-check codeword is generated by performing a bit-by-bit exclusive OR operation between successive information codewords in the sequence of N information codewords. The sequence of N information codewords and the parity-check codeword are transmitted on a communication channel. The source sequence of information bits includes MPEG-2 transport stream packets and the information codewords and the parity-check codeword each comprise an AAL5 protocol data unit. The AAL5 protocol data unit includes a user-to-user indication field for differentiating between an information codeword and a parity-check codeword.

Description

METHOD AND APPARATUS FOR BACKWARD-COMPATIBLE ERROR CORRECTION FOR REAL TIME COMMUNICATION LINK
BACKGROUND OF THE INVENTION
The MPEG-2 Systems standard (ITU-T Recommendation H.222.0 | ISO/TEC 13818-1) addresses the combining of one or more "elementary streams" of video and audio, as well as other data, into single or multiple streams suitable for storage or transmission. The MPEG-2 Systems standard defines an individual coded video, audio or other coded bitstream as an "elementary stream". The contents of an elementary stream may be broken into a sequence of discrete units, in which case the elementary stream is structured as a Packetized Elementary Stream (PES). The individual units, or packets, are known as PES packets, which can be of large and variable size.
The MPEG-2 Systems standard defines two methods of creating a multiplex of PESs. In a Program Stream (PS), all components in the multiplex are assumed to belong to a single "Program". PES packets from component PESs are multiplexed by PES packet. In a Transport Stream (TS), the components of the multiplex may belong to many programs. The PES packets are broken into small, fixed-size units (188 octets) called transport packets, which may be multiplexed with transport packets from other PESs into a transport stream.
Asynchronous Transfer Mode (ATM) was defined to serve as a vehicle for Broadband ISDN (B-ISDN). B-ISDN is a universal network designed to transport many kinds of data services. However, streaming digital video such as MPEG-2 requires that the network infrastructure comply with stringent demands, such as user defined signaling (connections) and sensitivity to transmission delays and errors. Emerging technology efforts are intent on finding ways to solve the crucial problems encountered when sending real-time video over an ATM network. FIG. 1 is an illustration of the protocol layers that exist to support B-ISDN and ATM. Each layer performs a specific set of functions and the combination of layers provides the full functionality of a B-ISDN application, from opening and closing connections to error and continuity checks on the transmitted data itself. The physical layer of the B-ISDN protocol stack allows users to choose the physical medium they plan to deploy. The two most popular physical layer formats currently used for ATM networks are DS-3 and OC-3 (or the European equivalent STM-1). Building on top of the physical layer, the ATM layer is responsible for the framing, multiplexing and switching of ATM cells over the physical medium. It is this layer which introduces many of the hurdles that need to be solved to support MPEG-2 over ATM applications.
The transmission of an MPEG-2 transport stream works under the assumption that there is a constant predictable delay between the source and destination. In addition, MPEG-2 requires a very high level of quality (low bit error rate) over its transmission medium. Unfortunately, the ATM layer itself does not have the ability to respond to these requirements of an MPEG-2 transport stream.
To respond to these specific needs of ensuring the general quality and integrity of the data sent, the ATM adaptation layer (AAL) was created. The adaptation layer resides above the ATM layer in the stack and is responsible for: • Error check (Cyclic Redundancy Check or CRC): since the ATM layer itself has no error checking built in
• Sequence Integrity Check: important for streaming video applications, since data must arrive in the correct order
• Multiplexing information • Timing compensation: a necessity for real-time applications which cannot tolerate the variable network delay of ATM
Two adaption layers have been adopted to support MPEG-2 over ATM applications: AAL1 and AAL5. AAL1 has a range of capabilities that allows it to -j-
emulate a constant bit rate connection. Because ATM is asynchronous, AALl Protocol Data Units (PDUs) are equipped with additional information such as time stamps and sequence counts to perform the adaptation. Also included in AALl is a forward error correction (FEC) capability which corrects bit errors which could otherwise exceed MPEG-2 bit error rate (BER) specifications. AALl also provides a way to handle transmission issues such as cell loss and other ATM and physical layer problems.
Originally intended for connection oriented data transfer, AAL5 has proven to be a more efficient protocol (less overhead) than AALl, which is important for bandwidth sensitive MPEG-2 applications. AAL5 is currently the predominant North American adaptation layer; however, AAL5 was not designed to cope with timing relationships or cell loss.
A transmission specification for transport of MPEG-2 coded signals over ATM networks is defined in ITU-T Recommendation J.82. In particular, this specification describes utilization of AALl and AAL5 to enhance the quality of service provided by the ATM layer in order to fulfill service requirements for MPEG-2 transport. For
AALl transport, each MPEG-2 TS packet is mapped to exactly four Segmentation and Reassembly Sublayer - Protocol Data Unit (SAR-PDU) payloads (each 47 octets). For AAL5 transport, 1 to L MPEG-2 TS packets are mapped into the AAL5 Service Data Unit (SDU) with padding added as needed. A mapping is shown in FIG. 2 for the case L = 2. The Common Part Convergence Sublayer - Protocol Data Unit (CPCS-PDU) includes a payload and trailer. The CPCS-PDU payload includes two MPEG-2 TS packets. The CPCS-PDU trailer includes a User-to-User (UU) indication field, a Common Part Indicator field (CPI), a Length field and a Cyclic Redundancy Check field. The CPCS-UU field can be used to transparently transfer CPCS user-to-user information. The CPI field is used to align the CPCS-PDU trailer. The Length field is used to encode the length of the CPCS-PDU payload. The CRC field uses CRC-32 to provide detection of errored bits. The CRC field together with the Length field enables detection of lost cells. Cyclic Redundancy Check has been widely used in various communication links because of its excellent burst error detection capability and ease of implementation. Some mobile communication standards also use a convolutional code cascaded with CRC. When a mobile communication channel is in deep fade, the received convolutional code usually suffers from burst errors, which can also be detected using CRC.
Although CRC is powerful for detecting burst errors or cell loss, its error correction capability is considered to be relatively weak. Thus, CRC is seldom used for error correction. In those applications in which CRC is implemented, the design goal is mainly for the transmission of data or voice. For data transmission, the network may rely on higher layer protocols such as Transmission Control Protocol (TCP) to retransmit error packets. For voice transmission, the loss of a few voice samples is generally tolerable and will go unnoticed by the listener.
For other real-time applications such as video, the transport stream is generally required to be pseudo error free, which is equivalent to having a packet error probability of less than 10"10. Unfortunately, using CRC alone cannot achieve this pseudo error free requirement. For example, the highest quality of service that an ATM network can provide has an associated cell loss probability of 10"7 which is several orders of magnitude away from 10"10. Because of the real-time nature of video, re-transmission is not allowed. Thus, cell loss dominates the packet error probability. A similar situation occurs in mobile communications, where burst errors dominate transmission performance.
SUMMARY OF THE INVENTION
To migrate communication networks from voice and data to real-time, low-error tolerance applications such as video, an enhanced error correction capability is needed. However, backwards compatibility is a major concern. A non-backwards compatible scheme may require costly upgrades by network and terminal equipment vendors. In contrast, a backwards compatible error correction capability can save time, money and effort associated with such an upgrade.
Accordingly, a method of error correction coding includes providing a source sequence of information bits that is encoded to produce a sequence of N information codewords. A parity-check codeword is generated by performing a logic operation on the codeword sequence. The logic operation includes performing a bit-by-bit exclusive OR operation between successive information codewords in the sequence of N information codewords. The sequence of N information codewords and the parity- check codeword are transmitted on a communication channel. In an embodiment, the source sequence of information bits comprises MPEG-2 transport stream packets and the information codewords and the parity-check codeword each comprise an AAL5 protocol data unit. The AAL5 protocol data unit includes an indication field for differentiating between an information codeword and a parity-check codeword. This approach provides for tunnelling of the parity-check codeword transparently through AAL5. The approach also can be applied to other communication protocols that include cyclic redundancy check such as mobile communications.
According to another aspect of the present approach, an encoding apparatus includes an ATM adaptation layer encoder for encoding a source sequence of information bits to produce a sequence of N information protocol data units. An error correction encoder generates a parity-check protocol data unit by performing a logic operation on the sequence of N information protocol data units. The sequence of N information protocol data units and the parity-check protocol data unit are transmitted over an ATM network using a transmitter.
According to yet another aspect of the present approach, a method of error correction decoding includes receiving a sequence of N+l codewords over a communication channel, the codewords including N information codewords and a parity-check codeword, with each codeword having a CRC check sum. A CRC check sum is computed for each codeword and compared to the CRC check sum for each corresponding information codeword to detect errored codewords. A single detected errored codeword in the sequence of N+1 codewords is corrected by performing a logic operation on the remaining codewords.
BRIEF DESCRIPTION OF THE DRAWINGS
The foregoing and other objects, features and advantages of the invention will be apparent from the following more particular description of preferred embodiments of the invention, as illustrated in the accompanying drawings in which like reference characters refer to the same parts throughout the different views. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the invention.
FIG. 1 illustrates protocol layers that support broadband ISDN and ATM. FIG. 2 illustrates a mapping of MPEG-2 transport stream packets into AAL5. FIG. 3 illustrates a sequence of ATM adaptation layer protocol data units in accordance with the present method and apparatus.
FIG. 4 is a diagram illustrating MPEG-2 transport stream packet error rate versus error correction sequence length for a given cell loss ratio.
FIG. 5 is a diagram illustrating bandwidth efficiency for AALl and AAL5 versus error correction sequence length. FIG. 6 is a schematic block diagram of a system for use with the error correction approach of the present method and apparatus.
DETAILED DESCRIPTION OF THE INVENTION
Block coding is used for error correction in communication systems. A systematic block code consists of two parts: the message part and the check sum part. Let
m = [m,, m2, . . ., mk] (Eq. 1) be the message part having k information bits and
c = [c,, c2, . . ., c„.k] (Eq.2)
be the check sum part having n-k parity check bits. Then, the information codeword of a systematic (n,k) block code can be expressed as follows:
w = [m,, m2, . . ., mk, c,, c2 c„ (Eq.3)
Thus, a block of k information bits is mapped into an information codeword of length n. A sequence of information codewords can be denoted as w w2, . . ., wN. In a block code, each codeword forms a row in a two dimensional array. In the conventional approach, if any of w, suffers from cell loss or burst errors, it has to be totally discarded since these N codewords are totally independent from each other.
To enhance the error correction capability and at the same time remain backwards compatible, an additional packet or codeword can be transmitted at the end of the N codewords. This additional codeword, referred to herein as a parity-check codeword, can be formed as follows:
w, = w, θ w2 φ. . .© H'v (Eq.4)
where 9 is a bit-by-bit exclusive OR operator. It can be understood that (Eq.4) forms a parity-check sum at every column. Therefore, every bit is protected by CRC in the row and a parity check sum in the column. The operation in (Eq.4) is understood to provide even parity. Alternatively, a parity-check codeword can be formed having odd parity from the following:
1 = Wj θ vv ©. . .© \\\ 3 wv / (Eq.5) In an embodiment for use with AAL5 transport, each codeword w corresponds to a AAL5 CPCS-PDU, with the message part m corresponding to the CPCS-PDU payload together with the UU, CPI and Length fields of the CPCS-PDU trailer and the CRC field corresponding to the check sum part c. Likewise, a sequence of N codewords, denoted above as w,, w2, . . ., wv corresponds to a sequence of N CPCS- PDUs. The parity-check codeword wN^, is then formed by using (Eq.4) or (Eq.5) with the N CPCS-PDUs to provide an N+lst CPCS-PDU that carries the parity-check information generated by (Eq.4) or (Eq.5).
To distinguish between information codewords and parity-check codewords, a one bit flag in a header or trailer can be used by an encoder to indicate that the corresponding packet is used for sending the parity-check codeword. For example, in AAL5, the User-to-User (UU) field in the CPCS-PDU trailer can be used to indicate whether normal data (e.g., UU=0) or parity-check (UU=1) has been sent in a particular codeword. In an alternate embodiment, the CPI field can be used rather than the UU field to provide such normal/parity-check codeword indication.
FIG. 3 shows a sequence of CPCS-PDUs denoted 200-1, 200-2, ..., 200-N which correspond to information codewords carrying MPEG-2 transport packets. A CPCS- PDU denoted 200-N+l corresponds to the parity-check codeword generated using (Eq.5) (odd parity). The sequence can be viewed as an (N+1) row block of CPCS- PDUs. The logic operation performed using (Eq.5) per column in the (N+1) row block is designated 204 in FIG. 3. Note that the CPCS-PDUs 200-1, 200-2, ..., 200-N have UU=0 to indicate that the PDU carries an information codeword, i.e., MPEG-2 packets. The CPCS-PDU 200-N+l has UU=1 to indicate that it carries parity-check information. It is interesting to note that while the CRC field 208 in CPCS-PDU 200-N+l can be computed in the conventional manner based on the preceding bits in CPCS-PDU 200- N+l, it can also be computed using (Eq.5) due to the linearity of CRC.
A decoding algorithm for the present error correction approach can be implemented in several different ways, depending on decoder complexity and the error probability requirement after decoding. In an embodiment, a decoding method and apparatus computes CRC check sums for all (N+1) codewords. If no more than one CRC within an (N+1) row block has a non-zero CRC check sum, for example, the kth row, 1 <k <N+1, then the decoding proceeds to solve the equation:
wJ = Wj © w2 Φ. . .θ w._, © wr, ©. . .Φ wN (Eq.6)
Thus, (Eq.6) can be used to recover an errored codeword that suffers from cell loss in an ATM network by searching for the cell loss part that satisfies (Eq.6).
The effectiveness of the present error correction approach is now described. Consider that an ATM communication link can be characterized by a random bit error probability Pb and a random cell loss probability Pc. An ATM cell loss usually occurs due to either (1) a cell being discarded because the traffic is congested; or (2) a burst error being detected by the ATM cell header leading to all corresponding cells in the burst error states being discarded.
The burst error detection mechanism for ATM cells is explained as follows. The ATM cell header includes a header error check (HEC). The HEC consists of a BCH code that can correct a single bit error and detect multiple bit errors. When the HEC has detected multiple bit errors, it declares that the channel is in burst error mode until the first correct cell is received. Therefore, all cells transmitted while in burst error mode are discarded, thereby affecting the random cell loss probability Pc. The MPEG-2 TS packet error rate (PER) P,.h:R of the error correction approach described above can be computed as follows. First consider the packet error rate without the present error correction approach. Let Pw be the error probability of a codeword, then
Figure imgf000011_0001
since any error in a codeword will result in two unrecoverable MPEG-2 TS packets. Using the channel model described above, the error probability Pw can be approximated by the union of two probability events: the event that there is cell loss within one of the eight cells and the event that there is bit error within 8*48 bits.
Pw = 2 * [1 - (1 - Pc)8 + 1 - (1 - Pbf X] (Eq.8)
Next, consider the packet error probability P',.ER for the present error correction approach. Within an (N+1) row block, any single non-zero CRC check sum caused by cell loss or bit error within one row can be recovered using (Eq.6). Packet errors will occur only when there is more than one non-zero CRC check sum for the (N+1) row block. Therefore,
P'PER = 1 - (1 - PW)N+1 -
Figure imgf000012_0001
- PW)N Pw = 1 - (1 - PW)N [1 + NPW] (Eq.9)
For a typical ATM communication link, it has been found that Pw = 10J Using (Eq.9), P'PER ~ 10~10 when N=100, which is quasi-error free. As can be seen, significant improvement can be immediately achieved by the simple but effective present error correction approach.
In another embodiment, the use of CRC syndrome and parity-check codeword can be computed iteratively to approach the pseudo error free performance level though such an approach requires increased decoder complexity. Selecting the value of N for the sequence of codewords in relation to the parity- check codeword generation in (Eq.4) or (Eq.5) is a tradeoff between desired efficiency on the one hand and correction capability on the other hand. N is also referred to herein as the error correction sequence length. A reasonable value for N can be determined by simulation. FIG. 4 illustrates a simulation of MPEG-2 transport stream packet error rate P'PER versus error correction sequence length for a given cell loss ratio (CLR) or PC=10J The curve, designated 210 in FIG. 4, shows that the error rate P'PER decreases with decreasing N. For example, N = 120 yields P'PER = 7*10"" while N = 46 yields P'PER = 10-". FIG. 5 illustrates bandwidth efficiency for AALl and AAL5 versus error correction sequence length. Bandwidth efficiency is a measure of the amount of overhead required to carry a payload. For example, the efficiency can be calculated as a ratio of the MPEG-2 transport stream data rate to the ATM data rate. As noted in the background discussion, AALl already includes a forward error correction capability. Thus, the efficiency curve 214 for AALl is shown as a straight line at 86% and has no relationship with N, the correction sequence length of the present approach. Several points can be understood from the efficiency curve 220 for AAL5. Note that for high N (i.e., N>140), the AAL5 efficiency levels off at about 88% at the expense of correction capability as shown in FIG. 4. For low N (i.e., N<20), the AAL5 efficiency level drops sharply below 84%. The crossover point for efficiency between AAL5 and AALl is at about N = 35.
A block diagram of an embodiment of a communication system for use with the error correction approach of the present invention is shown in FIG. 6. The system includes an MPEG-2 source 402 and ATM device 404 coupled to ATM device 408 and MPEG-2 receiver 410 through an ATM network 406. The ATM device 404 includes an ATM adaptation layer 5 CPCS block 404A, error correction encoder 404B and segmentation and reassembly (SAR)/multiplexer block 404C. The ATM device 408 includes an ATM adaptation layer CPCS block 408A, error correction decoder 408B and SAR/demultiplexer 408C. In operation, the MPEG-2 source 402 provides a stream or sequence of MPEG-
2 transport packets to the ATM device 404. The AAL5 CPCS block 404A includes the ATM convergence sublayer functionality to provide CPCS-PDUs containing MPEG-2 packets to the error correction encoder 404B which performs the encoding operation defmed by (Eq.4) or (Eq.5). The SAR/multiplexer 404C segments the CPCS-PDUs to ATM cells that are multiplexed onto the ATM network 406. At the ATM device 408, the demultiplexer 408C demultiplexes the arriving ATM cells and reassembles the CPCS-PDUs. Error correction decoder 408B performs the decoding operation on the reassembled CPCS-PDUs according to the decoding algorithm defined by (Eq.6) above. The AAL5 CPCS block 408A includes convergence sublayer functionality to provide MPEG-2 transport stream packets to the MPEG-2 receiver 410.
A decoder enhanced with the error correction capability of the present invention can use the parity-check codeword for error correction as described herein above. If a decoder that receives the codeword has not been updated for accepting parity-check codewords, the decoder can choose to dump the codeword without requiring extra effort. Likewise, in an embodiment used for mobile communication, a one bit field can be used to indicate whether normal data or the parity-check codeword has been sent in a particular codeword. In an alternate embodiment, an encoder can place the parity-check codeword in a null packet, e.g., a null MPEG-2 TS packet. When a decoder enhanced with the error correction capability of the present invention determines that the received packet is a null packet, it can use the parity-check codeword for error correction as described herein. Otherwise, a non-enhanced decoder can simply disregard the null packet. While this invention has been particularly shown and described with references to preferred embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. It will be apparent to those of ordinary skill in the art that methods involved in the present invention may be embodied in a computer program product that includes a computer usable medium. For example, such a computer usable medium can include a readable memory device, such as a hard drive device, a CD-ROM, a DVD-ROM, or a computer diskette, having computer readable program code segments stored thereon. The computer readable medium can also include a communications or transmission medium, such as a bus or a communications link, either optical, wired, or wireless, having program code segments carried thereon as digital or analog data signals.

Claims

CLAIMSWhat is claimed is:
1. A method of error correction coding comprising: encoding a source sequence of information bits to produce a sequence of N information codewords; generating a parity-check codeword by performing a logic operation on the sequence of N information codewords; transmitting the sequence of N information codewords and the parity- check codeword on a communication channel.
2. The method of Claim 1 wherein performing the logic operation includes performing a bit-by-bit exclusive OR operation between successive information codewords.
3. The method of Claim 1 wherein encoding includes block coding and each codeword includes k information bits and n-k parity check bits.
4. The method of Claim 1 further comprising including a flag in the information codewords and the parity-check codeword wherein the flag has a first state indicating an information codeword and a second state indicating a parity-check codeword.
5. The method of Claim 1 wherein the source sequence of information bits comprises MPEG-2 transport stream packets and the information codewords and the parity-check codeword each comprise an AAL5 protocol data unit.
6. The method of Claim 5 wherein the AAL5 protocol data unit includes an indication field for differentiating between an information codeword and a parity-check codeword.
7. The method of Claim 5 wherein the indication field is a user-to-user field.
8. The method of Claim 5 wherein the indication field is a common part indicator field.
9. The method of Claim 5 wherein the parity-check codeword is carried in at least one MPEG-2 null packet.
10. Encoding apparatus comprising: an ATM adaptation layer encoder for encoding a source sequence of information bits to produce a sequence of N information protocol data units; an error correction encoder for generating a parity-check protocol data unit by performing a logic operation on the sequence of N information protocol data units; a transmitter for transmitting the sequence of N information protocol data units and the parity-check protocol data unit over an ATM network.
11. The apparatus of Claim 10 wherein the information protocol data units and the parity-check protocol data unit comprise AAL5 protocol data units and wherein the information bits comprise MPEG-2 transport stream packets.
12. The apparatus of Claim 11 wherein the AAL5 protocol data unit includes an indication field for differentiating between an information codeword and a parity-check codeword.
13. The apparatus of Claim 11 wherein the parity-check codeword is carried in at least one MPEG-2 null packet.
14. A method of error correction decoding comprising: receiving a sequence of N+1 codewords over a communication channel, the codewords including N information codewords and a parity-check codeword, each codeword including a CRC check sum; computing CRC check sum for each codeword and comparing the computed CRC check sum to the CRC check sum for each corresponding information codeword to detect errored codewords; correcting a single detected errored codeword in the sequence of N+1 codewords by performing a logic operation on the remaining codewords.
15. The method of Claim 14 wherein performing the logic operation includes performing a bit-by-bit exclusive OR operation between successive information codewords.
16. The method of Claim 14 wherein the codewords include a flag which has a first state indicating an information codeword and a second state indicating a parity- check codeword and receiving includes examining the flag to determine whether a codeword in the sequence is an information codeword or a parity-check codeword.
17. The method of Claim 14 wherein the codewords each comprise an AAL5 protocol data unit and the information codewords include MPEG-2 transport stream packets.
PCT/US1999/029865 1998-12-15 1999-12-15 Method and apparatus for backward-compatible error correction for real time communication link WO2000036755A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU21885/00A AU2188500A (en) 1998-12-15 1999-12-15 Method and apparatus for backward-compatible error correction for real time communication link

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11240698P 1998-12-15 1998-12-15
US60/112,406 1998-12-15

Publications (1)

Publication Number Publication Date
WO2000036755A1 true WO2000036755A1 (en) 2000-06-22

Family

ID=22343732

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1999/029865 WO2000036755A1 (en) 1998-12-15 1999-12-15 Method and apparatus for backward-compatible error correction for real time communication link

Country Status (2)

Country Link
AU (1) AU2188500A (en)
WO (1) WO2000036755A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004079982A1 (en) 2003-03-05 2004-09-16 Nokia Corporation Method and system for forward error correction
DE102004035831A1 (en) * 2004-07-23 2006-02-16 Siemens Ag Operational status of a computer system is checked by comparison of actual parameters with reference values and modification to software if needed
DE102004051771A1 (en) * 2004-10-15 2006-04-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and methods for testing and determining test values
DE102007035262A1 (en) * 2007-07-27 2009-01-29 Texas Instruments Deutschland Gmbh A receiver and method for handling a data packet stream in the event of a physical layer failure
US7747930B2 (en) 2003-03-05 2010-06-29 Nokia Coprporation Method and system for forward error correction

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997038549A1 (en) * 1996-04-05 1997-10-16 Universität Karlsruhe (Th) Method and apparatus for forward error correction of transmitted digital signals in networks

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997038549A1 (en) * 1996-04-05 1997-10-16 Universität Karlsruhe (Th) Method and apparatus for forward error correction of transmitted digital signals in networks

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
GUNDSTROEM M ET AL: "AN ATM END SYSTEM DESIGN FOR NETWORK TERMINATION IN HETEROGENEOUS NETWORK ENVIRONMENT", GLOBAL TELECOMMUNICATIONS CONFERENCE (GLOBECOM),US,NEW YORK, IEEE, 1996, pages 1534 - 1538, XP000748709, ISBN: 0-7803-3337-3 *
HIROSHI OHTA ET AL: "A CELL LOSS RECOVERY METHOD USING FEC IN ATM NETWORKS", IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS,US,IEEE INC. NEW YORK, vol. 9, no. 9, 1 December 1991 (1991-12-01), pages 1471 - 1483, XP000267537, ISSN: 0733-8716 *
ZHANG L ET AL: "A FORWARD ERROR PROTECTION SCHEME FOR B-ISDN USING A VIRTUAL PATH (VP) TECHNIQUE", AUSTRALIAN TELECOMMUNICATION RESEARCH,XX,XX, vol. 23, no. 2, 1 January 1989 (1989-01-01), pages 1 - 9, XP000609375, ISSN: 0001-2777 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004079982A1 (en) 2003-03-05 2004-09-16 Nokia Corporation Method and system for forward error correction
US7747930B2 (en) 2003-03-05 2010-06-29 Nokia Coprporation Method and system for forward error correction
DE102004035831A1 (en) * 2004-07-23 2006-02-16 Siemens Ag Operational status of a computer system is checked by comparison of actual parameters with reference values and modification to software if needed
DE102004051771A1 (en) * 2004-10-15 2006-04-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and methods for testing and determining test values
DE102007035262A1 (en) * 2007-07-27 2009-01-29 Texas Instruments Deutschland Gmbh A receiver and method for handling a data packet stream in the event of a physical layer failure
US8130791B2 (en) 2007-07-27 2012-03-06 Texas Instruments Incorporated Receiver and method for processing a stream of data packets when an error occurred on the physical layer
DE102007035262B4 (en) 2007-07-27 2018-05-24 Texas Instruments Deutschland Gmbh A receiver and method for handling a data packet stream in the event of a physical layer failure

Also Published As

Publication number Publication date
AU2188500A (en) 2000-07-03

Similar Documents

Publication Publication Date Title
US6079042A (en) High integrity transport for time critical multimedia networking applications
AU723092B2 (en) Minicell sequence number count
US6628641B1 (en) Header error detection for wireless data cells
CA2290631C (en) Digital video transport error handling in cell based communications systems
US8249075B2 (en) ATM communications system and method
JPH08186570A (en) Error control method in atm network
GB2327557A (en) Telecommunications system
EP1004218B1 (en) Method for transmitting data across atm networks of different types
WO1997038549A1 (en) Method and apparatus for forward error correction of transmitted digital signals in networks
US6636531B1 (en) Communication device and method
WO2000036755A1 (en) Method and apparatus for backward-compatible error correction for real time communication link
WO1998018287A1 (en) Digital communications system
AU782794B1 (en) Improvements in ATM data transmission systems
CA2279202A1 (en) Method and apparatus for transmitting atm over deployable line-of-sight channels
Mehaoua et al. Proposal of an audiovisual SSCS with forward error correction
Chen et al. The analysis of the application of ARQ mechanism in ATM network
Carle et al. A Cell-Level Forward Error Correction Scheme (FEC-SSCS) for ATM Networks
Varshney Error control techniques for wireless ATM networks
Nia et al. Mapping with cell addressing of train transport MPEG-2 over ATM cells via AAL-5
KR100473119B1 (en) A satellite asynchronous transfer mode interworking unit and method thereof
JPH11340989A (en) Radio communication method, its system, its radio transmission section and reception section
KR19980079116A (en) ATM communication card to provide error correction according to AAL 1
JP2000236345A (en) Method and system for improving completeness of data to be transmitted
SECTOR et al. ITU-Ti. 363
Yang A hybrid multilayer error control technique for multihop ATM networks

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase