Questions tagged [channelcoding]

Questions related to channel coding, forward error correction, code performance calculations, and decoding algorithms. Typical code examples are Hamming codes, cyclic codes, BCH, Reed-Solomon, turbo codes, and LDPC.

Filter by
Sorted by
Tagged with
15
votes
5answers
6k views

Can we break the Shannon capacity?

I have a friend working in wireless communications research. He told me that we can transmit more than one symbol in a given slot using one frequency (of course we can decode them at the receiver). ...
9
votes
2answers
4k views

How to soft decode DQPSK?

I'm successfully soft-decoding D-BPSK by taking the dot-product of the constellation-position of the symbol and of the previous symbol. If the result is >= 1, then the symbol phase hasn't changed and ...
5
votes
1answer
156 views

Does any error correction code still work in such situation?

I'm looking for a kind of error correction code or solution that can correct my codeword in this case: My message holds $k$ bits, and $2k$ bits codeword (rate is $1/2$) is produced by the generator ...
5
votes
1answer
389 views

What is the cost of Hamming coding?

We know that (7,4) hamming code has 4 message bits and 7 code bits and can detect any single bit error. The (12,4) repetition code has 4 message bits and 12 code bits and can detect any single bit ...
4
votes
3answers
844 views

Optimal DC-free line encoding

I have a block of n bits that I'd like to encode into m bits that have an equal number of zeros and ones. I looked at protocols like 8b/10b but it wastes 25% of the data to achieve balance. As an ...
4
votes
3answers
3k views

Why is an interleaver often placed between an outer block code and an inner convolution code?

It seems that when doing FEC with a concatenated-code, an interleaver is often placed between the outer block code and the inner convolution code. The explanations I've seen say that this is because ...
4
votes
1answer
217 views

Relationship between information retrieval and source separation in signal processing

In machine learning, for the task of classifying input data (called an example) which are in binary representation, $\mathbf{x}\in \mathbb{R}^D$, $\mathbf{x} \in \{0,1\}^D$ into its multiple class ...
4
votes
1answer
361 views

Why is privacy scrambling a standalone block in a communications transmitter?

In some telecommunication systems, scrambling of transmitted data is applied to provide some level of security. For example, the communication system might look like: Data -> Scrambling -> ...
4
votes
1answer
93 views

Unambiguously detecting (not correcting) between $t+1$ and $2t$ errors in a Reed-Solomon message

I know that Reed-Solomon codes of the form $(N,N-2t)$ can correct up to $t$ errors, and detect up to $2t$ errors, but I've only seen the correction procedure: Berlekamp-Massey or Euclidean to get the ...
4
votes
1answer
235 views

Viterbi decoder on a bit stream where the preamble is also coded

I hope this is not off-topic for this site. In my problem, Viterbi decoder is used for decoding convolutional-coded (rate = 1/2, constraint length = 7) messages. A message is 250 bits where the ...
4
votes
1answer
372 views

Shannon capacity with distribution different from Gaussian

If I understand correctly, in AWGN channel, for a given SNR, there is a code for $M$ input codeword $\mathbf{X}_{i, 1 \leq i \leq M}$ that $$\lim_{n \to \infty} R=\lim_{n \to \infty}\frac{\log(M)}{n} ...
3
votes
2answers
717 views

Confusion in Channel Encoding and Convolutional Encoding

If I'm making NRZ signal by first encoding 1 input bit into 10 bits multiplied by -V/+V before sending it into a channel, is it called channel encoding? If I then modulated it using GMSK technique, ...
3
votes
3answers
34k views

Calculate symbol rate for QAM modulation

Not sure if this is the right place to ask, feel free to move it if any other site suits this better. Anyway I am referring to QAM modulation used in US Cable TV. I know it comes under Annex B which ...
3
votes
3answers
3k views

Capacity of cascade binary symmetric channels

Let's imagine that we have interconnected in cascade $L$ binary symmetric channels each with the same transition probability $p(y|x) \in \{p, q=1-p\}$, where the output of each BSC is connected to the ...
3
votes
2answers
1k views

Meaning of channel capacity in the AWGN channel

I understand the concept of channel capacity as the maximal rate of the channel code I can apply without making a mistake in the receiver, in that sense the capacity is between 0 and 1. What I don't ...
3
votes
2answers
143 views

Getting the bitstream of an unknown RF signal

I am trying to get the bitstream of a signal sent over 433MHz. I have installed SDR# (I'm on Windows), connected my NESDR SMART, and I identified the signal here: I can see there is only one peak ...
3
votes
1answer
185 views

GNU Radio | Async FEC encoder/decoder loopback | Issue during decoding?

I have implemented a loopback flowgraph intending to perform the following: FEC encode (repetition code) an input stream in16_2.dat Store the encoded stream as <...
3
votes
1answer
2k views

Hamming code exercise

I'm preparing for my exams I stumbled across this exercise. Now I can't seem to figure it out. Anybody can help me ? The exercise: For the 8bit data word: 00111001 the check bits are: 0111. Now if ...
3
votes
0answers
176 views

Code rate in IEEE 802.11b (DSSS)

I would like to know what code rates for forward error correction the physical layer of IEEE 802.11b uses for the different supported data rates. So far I didn't find any source for that. Actually in ...
2
votes
3answers
1k views

Bose Chaudhuri Hocquenghem (BCH) vs Reed Solomon (RS) Error correcting codes and sound transmission channel modeling

I've implemented an acoustic based information transmission system using a bandwidth of 2 kHz and the band between 18.5 and 20.5 kHz. I'm trying to find the best error correcting code for it, in the ...
2
votes
3answers
2k views

What is the theoretical probability of error for OOK transmission?

I am trying to simulate an optical wireless communication channel which uses OOK modulation. Looking at equation 14 in this literature, I found that: For electrical SNR at the receiver $$\textrm{...
2
votes
2answers
756 views

Why does FEC seem to make BER worse at low Eb/N0?

I've been plotting BER curves and am wondering why FEC seems to make a BER curve worse at low Eb/N0 than the un-coded theoretical BER curve? My example plot below is for Differential BPSK using a ...
2
votes
1answer
2k views

increase of encoding rate increases bandwidth?

I came across this paragraph in an article about signal processing. Addition of redundant bits for improving the error probability leads to bandwidth expansion of the transmitted signal by an amount ...
2
votes
1answer
102 views

Generate Minimum distance codes

I am trying to generate a set of linear block codewords of length n and have minimum hamming distance dmin. I understand Hamming codes but they are not flexible with n. One possible way I can think of ...
2
votes
0answers
71 views

Update rule in Soft Output Viterbi Algorithm (SOVA) -Hagenauer rule

Soft output of SOVA, suggested by Hagenauer http://www.cse.lehigh.edu/~jingli/teach/S2003turbo/notes/SOVA.pdf , says in 2.2.2 "The Soft-Output Viterbi Algorithm" that $L_{j}^{\verb|^|}:= f(L_{j}^{\...
1
vote
2answers
634 views

Relationship between $E_b/N_0$ and $\rm SNR$ with channel coding

I would like to know what would be the relationship between $E_b/N_0$ and $\rm SNR$ when there is a coding rate of $R_c=K/N$. Normally when there is no channel coding according to this link. $$\...
1
vote
2answers
213 views

Nyquist noiseless channel capacity; how can bit-rate be two times the bandwidth?

I'm confused by the Nyquist channel capacity formula. How can channel maximum capacity approach double the bandwidth. $C = 2\times BW \times log_{2}(L)$ bits/sec The way it was explained to me ...
1
vote
1answer
42 views

Why $H(A)=H(C)$ where $C$ is $A$ with an additional parity bit?

Let $A=\{00,01,10,11\}$ with equal probabilities for each symbol, and $B=\{0, 1\}$ be a parity generator such that $$ b=\begin{cases} 0, & \text{if} \,\, a=00 \quad \text{or} \quad a=11 \\ 1, &...
1
vote
1answer
69 views

Does Hamming encoding preserve orthogonality?

The question I have is this-- if I have two binary vectors, i.e. $x_1, x_2 \in \mathbb F_2^k$ that are orthogonal, i.e. $x_1^T x_2 = 0$, and let's say I Hamming encode each of them separately with an $...
1
vote
1answer
282 views

Finding $E_b/N_0$ when coding rate is $R_c$

I would like to calculate $E_b/N_0$ when the code rate is $R_c$ for BPSK signal. What I got this $$ E_b/N_0= \frac{1}{2R_mR_c \sigma^2} $$ and that is the case also according to this page. $R_m=1$ ...
1
vote
2answers
823 views

Why is a precoder necessary for DQPSK and what does it accomplish?

I've implemented a soft-decoder for DQPSK using the wonderful answers I received here: How to soft decode DQPSK? To get the soft-decoder working properly I needed to precode the data I was sending ...
1
vote
2answers
357 views

Viterbi Decoder - Symbol Alignment

With a 1/2-rate convolutional encoder, $n$ bits are encoded into $2n$ symbols. Assume we have a long encoded stream such as $[... s_0, s_1, s_2, s_3, s_4, s_5, s_6, s_7, s_8, s_9, ..., s_{100}, ...]$...
1
vote
1answer
763 views

Maximum Throughput of QAM system

Consider a QAM system designed to transmit over a bandwidth of $3 \ \mathrm{kHz}$. The channel's power constraint imposes a maximum $\mathrm{SNR}$ of $30 \ \mathrm{dB}$. The system can tolerate a ...
1
vote
1answer
81 views

Why are some LDPC codes more immune to noise than others?

When one analyzes an LDPC code, it is usual to plot the BER versus the $E_b / N_0$. My questions are: Why are some LDPC codes better than others in terms of noise immunity? After all, they are just ...
1
vote
1answer
388 views

Viterbi Decoder - How does inverting the input bits affect the result?

Does converting zeros into ones and ones into zeros in the input stream affect the decoding result? Empirically I have seen that it does not affect, decoding $[0 1 0 1 \ldots]$ and $[1 0 1 0 \ldots]$ ...
1
vote
1answer
547 views

determining FEC or parity bits from percent error

I am very new to signal processing and my background is in physics. I would like to know if it is possible to determine the number of parity bits needs to theoretically get 100% transmission from a ...
1
vote
1answer
37 views

Notes or books to quickly get started on the basics of signal processing or wireless communication

I'll soon start working in signal processing, specially wireless communication systems. Hence I'd like to get a quick understanding of MIMO and related systems, for example, the topics like: 1) where ...
1
vote
1answer
90 views

Maximizing entropy on a channel

In Shannon's paper "A Mathematical Theory of Communication", in Theorem 8 he states: Theorem 8: Let the system of constraints considered as channel have a capacity $C = \log W$. If we assign $$p^{(s)}...
1
vote
1answer
323 views

Source and channel encoding

In information theory, there are two concepts that are widely used: source encoding and channel encoding. I'm afraid I may not be capable of expressing my doubts clearly, but the thing is that I don'...
1
vote
1answer
155 views

Fountain codes and LDPC codes

I am having a small clarification with the difference between LDPC and fountain codes. In LDPC codes, each parity bit is depenedent on numerous data bits. Isn't that similar to fountain codes as the ...
1
vote
1answer
269 views

Why is $x$ not considered a primitive polynomial while being considered an irreducible polynomial?

In "Shu Lin, Daniel J. Costello-Error Control Coding (2nd Edition), Prentice Hall 2004" it is given that in $GF(2)$, if $f(x)$ is an irreducible polynomial of degree $m$ it divides $x^n+1$ where $n = ...
1
vote
1answer
46 views

In block codes (channel coding), in practice how is the message length ($k$) fixed?

In block codes (channel coding), in practice, how is the message length ($k$) fixed? If $k$ is large, the practical implementation of it requires huge memory if look up table approach is adopted. ...
1
vote
1answer
767 views

Transmission capacity in “duobinary coding”

In "duo-binary signalling" how exactly is the transmission capacity increased? Because , when we encode the binary bits, the bit duration remains the same, but the amplitude will change. Then how can ...
1
vote
1answer
358 views

Important differences between BCJR and SOVA algorithms?

BCJR algorithm needs noise variance for Gamma (branch metrices) calculation. So I am wondering does SOVA (soft output Viterbi algorithm) needs noise variance?
1
vote
0answers
41 views

Is MMSE equalizer necessary?

For observation $y$, channel coefficient $h$ and gaussian noise $w \sim \mathcal{CN}(0,\sigma^2)$, $$y = hx + w \tag{1}$$ Note that for OFDM system, (1) is assumed channel input-ouput equation on ...
1
vote
1answer
40 views

Understanding Asymptotic Equipartition Property

I have some problems in understanding the precise meaning of the Asymptotic Equipartition Property, related to a large number n of independent and identically distributed random variables (X1, X2, ...,...
1
vote
0answers
15 views

Convolutional coding that payload length does not change

This is the question about Sigfox radio specification. The stack: Specifically, in Section 3.10 of the specification, we have a convolutional coding (after CRC) with three possible polynominals. I ...
1
vote
0answers
29 views

convolutional coding with higher order QAM

I've implemented a simple 1/2 rate convolutional code and a viterbi decoder algorithm. I followed the most-common type of convolutional coding implementation I could find by googling: 1 input bit gets ...
1
vote
0answers
100 views

Convolutional FEC decoding - is it necessary to know where a decoding block begins and ends with convolutional codes?

I understand that the difference between convolutional and block-based FEC is that convolutional codes can be used in a continuous stream – however every implementation I saw still uses blocks. So I ...
1
vote
0answers
689 views

Generating LDPC codes of arbitrary sizes in MATLAB

I am having problems generating LDPC codes of arbitrary sizes in MATLAB primarily because MATLAB insists on the parity check matrix that is input into its ldpcenc ...