Table of Contents
Fetching ...

DALC: Distributed Arithmetic Coding Aided by Linear Codes

Junwei Zhou, HaoYun Xiao, Jianwen Xi, Qiuzhen Lin

TL;DR

The paper addresses decoding ambiguity in Distributed Arithmetic Coding (DAC) for Slepian-Wolf coding by introducing Distributed Arithmetic Coding Aided by Linear Codes (DALC). DALC encodes parity bits with a linear code ($Z = X\mathbf{G}^T$) and uses an overlap factor $\alpha$ to create overlapped decoding intervals, while decoding employs linear-code verification to prune candidate paths in MAP order, ensuring the correct path passes verification. The approach reduces Bit Error Rate (BER), particularly for skewed sources, by excluding interfering MAP paths that fail the linear-code checks; experiments with CRC and BCH show notable BER improvements over MDAC and ADAC, with tail-bit effects and the parameter $t$ influencing the magnitude of gains. The results demonstrate that integrating linear-code constraints into DAC decoding enhances reliability without prohibitive increases in complexity, offering a practical improvement to Slepian-Wolf coding in non-stationary, short-to-medium length data. Future work will optimize the integration to balance decoding accuracy and compression ratio.

Abstract

Distributed Arithmetic Coding (DAC) has emerged as a feasible solution to the Slepian-Wolf problem, particularly in scenarios with non-stationary sources and for data sequences with lengths ranging from small to medium. Due to the inherent decoding ambiguity in DAC, the number of candidate paths grows exponentially with the increase in source length. To select the correct decoding path from the set of candidates, DAC decoders utilize the Maximum A Posteriori (MAP) metric to rank the decoding sequences, outputting the path with the highest MAP metric as the decoding result of the decoder. However, this method may still inadvertently output incorrect paths that have a MAP metric higher than the correct decoding path, despite not being the correct decoding path. To address the issue, we propose Distributed Arithmetic Coding Aided by Linear Codes (DALC), which employs linear codes to constrain the decoding process, thereby eliminating some incorrect paths and preserving the correct one. During the encoding phase, DALC generates the parity bits of the linear code for encoding the source data. In the decoding phase, each path in the set of candidate paths is verified in descending order according to the MAP metric until a path that meets the verification criteria is encountered, which is then outputted as the decoding result. DALC enhances the decoding performance of DAC by excluding candidate paths that do not meet the constraints imposed by linear codes. Our experimental results demonstrate that DALC reduces the Bit Error Rate(BER), with especially improvements in skewed source data scenarios.

DALC: Distributed Arithmetic Coding Aided by Linear Codes

TL;DR

The paper addresses decoding ambiguity in Distributed Arithmetic Coding (DAC) for Slepian-Wolf coding by introducing Distributed Arithmetic Coding Aided by Linear Codes (DALC). DALC encodes parity bits with a linear code () and uses an overlap factor to create overlapped decoding intervals, while decoding employs linear-code verification to prune candidate paths in MAP order, ensuring the correct path passes verification. The approach reduces Bit Error Rate (BER), particularly for skewed sources, by excluding interfering MAP paths that fail the linear-code checks; experiments with CRC and BCH show notable BER improvements over MDAC and ADAC, with tail-bit effects and the parameter influencing the magnitude of gains. The results demonstrate that integrating linear-code constraints into DAC decoding enhances reliability without prohibitive increases in complexity, offering a practical improvement to Slepian-Wolf coding in non-stationary, short-to-medium length data. Future work will optimize the integration to balance decoding accuracy and compression ratio.

Abstract

Distributed Arithmetic Coding (DAC) has emerged as a feasible solution to the Slepian-Wolf problem, particularly in scenarios with non-stationary sources and for data sequences with lengths ranging from small to medium. Due to the inherent decoding ambiguity in DAC, the number of candidate paths grows exponentially with the increase in source length. To select the correct decoding path from the set of candidates, DAC decoders utilize the Maximum A Posteriori (MAP) metric to rank the decoding sequences, outputting the path with the highest MAP metric as the decoding result of the decoder. However, this method may still inadvertently output incorrect paths that have a MAP metric higher than the correct decoding path, despite not being the correct decoding path. To address the issue, we propose Distributed Arithmetic Coding Aided by Linear Codes (DALC), which employs linear codes to constrain the decoding process, thereby eliminating some incorrect paths and preserving the correct one. During the encoding phase, DALC generates the parity bits of the linear code for encoding the source data. In the decoding phase, each path in the set of candidate paths is verified in descending order according to the MAP metric until a path that meets the verification criteria is encountered, which is then outputted as the decoding result. DALC enhances the decoding performance of DAC by excluding candidate paths that do not meet the constraints imposed by linear codes. Our experimental results demonstrate that DALC reduces the Bit Error Rate(BER), with especially improvements in skewed source data scenarios.

Paper Structure

This paper contains 13 sections, 5 equations, 7 figures, 1 algorithm.

Figures (7)

  • Figure 1: The framework diagram of DAC and DALC.
  • Figure 2: The encoding processes of DALC. The coded intervals of DALC is $[0.328125, 0.75)$.
  • Figure 3: A decoding example of DALC. The decoding result of DALC is the correct path "011".
  • Figure 4: Comparison of decoding performance with $p_0=0.5$, two scenarios are considered: (a) $t=0$; (b) $t=14$.
  • Figure 5: Comparison of decoding performance with $p_0=0.3$, two scenarios are considered: (a) $t=0$; (b) $t=4$.
  • ...and 2 more figures