61 research outputs found

    RS + LDPC-Staircase Codes for the Erasure Channel: Standards, Usage and Performance

    Get PDF
    Application-Level Forward Erasure Correction (AL-FEC) codes are a key element of telecommunication systems. They are used to recover from packet losses when retransmission are not feasible and to optimize the large scale distribution of contents. In this paper we introduce Reed-Solomon/LDPCStaircase codes, two complementary AL-FEC codes that have recently been recognized as superior to Raptor codes in the context of the 3GPP-eMBMS call for technology [1]. After a brief introduction to the codes, we explain how to design high performance codecs which is a key aspect when targeting embedded systems with limited CPU/battery capacity. Finally we present the performances of these codes in terms of erasure correction capabilities and encoding/decoding speed, taking advantage of the 3GPP-eMBMS results where they have been ranked first

    Bounds on the Error Probability of Raptor Codes under Maximum Likelihood Decoding

    Get PDF
    In this paper upper and lower bounds on the probability of decoding failure under maximum likelihood decoding are derived for different (nonbinary) Raptor code constructions. In particular four different constructions are considered; (i) the standard Raptor code construction, (ii) a multi-edge type construction, (iii) a construction where the Raptor code is nonbinary but the generator matrix of the LT code has only binary entries, (iv) a combination of (ii) and (iii). The latter construction resembles the one employed by RaptorQ codes, which at the time of writing this article represents the state of the art in fountain codes. The bounds are shown to be tight, and provide an important aid for the design of Raptor codes.Comment: Submitted for revie

    Raptorq-Based Multihop File Broadcast Protocol

    Get PDF
    The objective of this thesis is to describe and implement a RaptorQ broadcast protocol application layer designed for use in a wireless multihop network. The RaptorQ broadcast protocol is a novel application layer broadcast protocol based on RaptorQ forward error correction. This protocol can deliver a file reliably to a large number of nodes in a wireless multihop network even if the links have high loss rates. We use mixed integer programming with power balance constraints to construct broadcast trees that are suitable for implementing the RaptorQ-based broadcast protocol. The resulting broadcast tree facilitates deployment of mechanisms for verifying successful delivery. We use the Qualcomm proprietary RaptorQ software development kit library as well as a Ruby interface to implement the protocol. During execution, each node operates in one of main modes: source, transmitter, or leaf. Each mode has five different phases: STARTUP, FINISHING (Poll), FINISHING (Wait), FINISHING (Extra), and COMPLETED. Three threads are utilized to implement the RaptorQ-based broadcast protocol features. Thread 1 receives messages and passes them to the receive buffer. Thread 2 evaluates the received message, which can be NORM, POLL, MORE, and DONE, and passes the response message to the send buffer. Thread 3 multicasts the content of the send buffer. Results obtained by testing the implementation of the RaptorQ-based broadcast protocol demonstrate that efficient and reliable distribution of files over multihop wireless networks with a high link loss rates is feasible

    Zigzag Decodable Fountain Codes

    Full text link
    This paper proposes a fountain coding system which has lower space decoding complexity and lower decoding erasure rate than the Raptor coding systems. The main idea of the proposed fountain code is employing shift and exclusive OR to generate the output packets. This technique is known as the zigzag decodable code, which is efficiently decoded by the zigzag decoder. In other words, we propose a fountain code based on the zigzag decodable code in this paper. Moreover, we analyze the overhead for the received packets, decoding erasure rate, decoding complexity, and asymptotic overhead of the proposed fountain code. As the result, we show that the proposed fountain code outperforms the Raptor codes in terms of the overhead and decoding erasure rate. Simulation results show that the proposed fountain coding system outperforms Raptor coding system in terms of the overhead and the space decoding complexity.Comment: 11 pages, 15 figures, submitted to IEICETransactions, Oct. 201

    Dynamic Code Selection Method for Content Transfer in Deep Space Network

    Get PDF
    Space communications feature large round-trip time delays (for example, between 6.5 and 44 minutes for Mars to Earth and return, depending on the actual distance between the two planets) and highly variable data error rates, for example, bit error rate (BER) of 10−5 is very comand even higher BERs on the order of 10−1 is observed in the deep- space environment. We develop a new content transfer protocol based on RaptorQ codes and turbo codes together with a real-time channel prediction model to maximize file transfer from space vehicles to the Earth stations. While turbo codes are used to correct channel errors, RaptorQ codes are applied to eliminate the need for negative-acknowledgment of the loss of any specific packet. To reduce the effect of channel variation, we develop a practical signal-to-noise ratio (SNR) prediction model that is used to periodically adjust the turbo encoder in distant source spacecraft. This new protocol, termed as dynamic code selection method (DCSM), is compared with two other methods: turbo based genie method (upper bound of DCSM performance) assuming that the channel condition is perfectly known in advance and a static method in which a fixed turbo encoder is used throughout a communication pass. Simulation results demonstrate that the genie can increase telemetry channel throughput expressed in terms of the total number of successfully delivered files during a communication pass by about 20.3 % and DCSM achieves more than 99 % of genie, compared to the static approach being used currently
    corecore