Hamming (7,4) code with soft and hard decoding

An earlier post we discussed hard decision decoding for a Hamming (7,4) code and simulated the the bit error rate. In this post, let us focus on the soft decision decoding for the Hamming (7,4) code, and quantify the bounds in the performance gain.

Continue reading “Hamming (7,4) code with soft and hard decoding”

BER for BPSK in ISI channel with MMSE equalization

In the past, we had discussed BER for BPSK in flat fading Rayleigh channel and BER for BPSK in a frequency selective channel using Zero Forcing Equalization. In this post, lets discuss a frequency selective channel with the use of Minimum Mean Square Error (MMSE) equalization to compensate for the inter symbol interference (ISI). For simplifying the discussion, we will assume that there is no pulse shaping at the transmitter. The ISI channel is assumed to be a fixed 3 tap channel.

Continue reading “BER for BPSK in ISI channel with MMSE equalization”

BER for BPSK in ISI channel with Zero Forcing equalization

In the past, we had discussed BER for BPSK in flat fading Rayleigh channel. In this post, lets discuss a frequency selective channel with the use of Zero Forcing (ZF) equalization to compensate for the inter symbol interference (ISI). For simplifying the discussion, we will assume that there is no pulse shaping at the transmitter. The ISI channel is assumed to be a fixed 3 tap channel.

Continue reading “BER for BPSK in ISI channel with Zero Forcing equalization”

Hamming (7,4) code with hard decision decoding

In previous posts, we have discussed convolutional codes with Viterbi decoding (hard decision, soft decision and with finite traceback). Let us know discuss a block coding scheme where a group of information bits is mapped into coded bits. Such codes are referred to as codes. We will restrict the discussion to Hamming codes, where 4 information bits are mapped into 7 coded bits. The performance with and without coding is compared using BPSK modulation in AWGN only scenario.

Continue reading “Hamming (7,4) code with hard decision decoding”

Viterbi with finite survivor state memory

In the post on Viterbi decoder and soft input Viterbi decoder, we discussed a convolutional encoding scheme with rate 1/2, constraint length and having generator polynomial and having generator polynomial . If the number of uncoded bits is , then the number of coded bits at the output of the convolutional encoder is . Decoding the convolutionaly encoded bits by Viterbi algorithm consisted of the following steps.

Continue reading “Viterbi with finite survivor state memory”

BER with Matched Filtering

In the post on transmit pulse shaping filter, we had discussed pulse shaping using rectangular and sinc. In this post we will discuss about optimal receiver structure when pulse shaping is used at the transmitter. The receiver structure is also called as matched filter. For the discussion, we will assume rectangular pulse shaping, the channel is AWGN only and the modulation is BPSK.

Continue reading “BER with Matched Filtering”

Derivation of BPSK BER in Rayleigh channel

This is a guest post by Jose Antonio Urigüen who is an Electrical and Electronic Engineer currently studying an MSc in Communications and Signal Processing at Imperial College in London. This guest post has been created due to his own curiosity when reviewing some concepts of BER for BPSK in Rayleigh channnel published in the dsplog.com

From the post on BER for BPSK in Rayleigh channnel, it was shown that, in the presence of channel , the effective bit energy to noise ratio is .

Continue reading “Derivation of BPSK BER in Rayleigh channel”

Viterbi decoder

Coding is a technique where redundancy is added to original bit sequence to increase the reliability of the communication. Lets discuss a simple binary convolutional coding scheme at the transmitter and the associated Viterbi (maximum likelihood) decoding scheme at the receiver.

Update: For some reason, the blog is unable to display the article which discuss both Convolutional coding and Viterbi decoding. As a work around, the article was broken upto into two posts.

This post descrbes the Viterbi decoding algorithm for a simple Binary Convolutional Code with rate 1/2, constraint length and having generator polynomial . For more details on the Binary convolutional code, please refer to the post – Convolutional code

Continue reading “Viterbi decoder”

MIMO with ML equalization

We have discussed quite a few receiver structures for a 2×2 MIMO channel namely,

(a) Zero Forcing (ZF) equalization

(b) Minimum Mean Square Error (MMSE) equalization

(c) Zero Forcing equalization with Successive Interference Cancellation (ZF-SIC)

(d) ZF-SIC with optimal ordering and

(e) MIMO with MMSE SIC and optimal ordering

From the above receiver structures, we saw that MMSE equalisation with optimally ordered Successive Interference Cancellation gave the best performance. In this post, we will discuss another receiver structure called Maximum Likelihood (ML) decoding which gives us an even better performance. We will assume that the channel is a flat fading Rayleigh multipath channel and the modulation is BPSK.

Continue reading “MIMO with ML equalization”

MIMO with MMSE SIC and optimal ordering

This post attempts to build further on the MIMO equalization schemes which we have discussed –

(a) Minimum Mean Square Error (MMSE) equalization,

(b) Zero Forcing equalization with Successive Interference Cancellation (ZF-SIC) and

(c) ZF-SIC with optimal ordering.

We have learned that successive interference cancellation with optimal ordering improves the performance with Zero Forcing equalization. In this post, we extend the concept of successive interference cancellation to the MMSE equalization and simulate the performance. We will assume that the channel is a flat fading Rayleigh multipath channel and the modulation is BPSK.

Continue reading “MIMO with MMSE SIC and optimal ordering”

MIMO with ZF SIC and optimal ordering

In previous posts, we had discussed equalization of a 2×2 MIMO channel with Zero Forcing (ZF) equalization and later, Zero Forcing equalization with successive interference cancellation (ZF-SIC). In this post, we will explore a variant of ZF-SIC called Zero Forcing Successive Interference Cancellation with optimal ordering. We will assume that the channel is a flat fading Rayleigh multipath channel and the modulation is BPSK.

Continue reading “MIMO with ZF SIC and optimal ordering”

MIMO with Zero Forcing Successive Interference Cancellation equalizer

The post on MIMO with Zero Forcing equalizer discussed a probable way of equalizing a 2×2 MIMO channel. The simulated results with the 2×2 MIMO system with zero forcing equalizer showed matching results as obtained in for a 1×1 system for BPSK modulation in Rayleigh channel. In this post, we will try to improve the bit error rate performance by trying out Successive Interference Cancellation (SIC). We will assume that the channel is a flat fading Rayleigh multipath channel and the modulation is BPSK.

Continue reading “MIMO with Zero Forcing Successive Interference Cancellation equalizer”

MIMO with MMSE equalizer

In a previous post, we had discussed a 2×2 MIMO transmission using BPSK modulation in Rayleigh channel with a Zero Forcing equalizer. The simulated results with the 2×2 MIMO system  with zero forcing equalizer showed matching results as obtained in for a 1×1 system for BPSK modulation in Rayleigh channel. In this post, we will discuss a different equalization approach called Minimum Mean Square Error (MMSE) equalization. We will assume that the channel is a flat fading Rayleigh multipath channel and the modulation is BPSK.

Continue reading “MIMO with MMSE equalizer”