## code rate vs rate matching in FEC/Channel coding Started by 6 years ago5 replieslatest reply 6 years ago3355 views

I am getting a little confused between rate matching vs code rate as applied at FEC/Channel coding.

How and when what code rate and rate matching is applied?

Are these independent of each other?

[ - ] Is the context of your question specific to a particular standard or device?   "Rate Matching" may actually mean something different across different contexts, or you may just mean "puncturing", depending.   Also, is the question with respect to Turbo Codes or just general convolutional codes?

Generally the "code rate" is just the ratio of information bits over transmitted bits, so an R = 1/2 code transmits two coded bits for every one information bit, and an R = 3/4 code transmits four coded bits for every three information bits.

A "punctured" code deletes (usually coded or redundant) bits in a specific pattern to adjust a code rate up from some lower "mother code" rate.   e.g., an R = 3/4 code can be punctured up from an R = 1/2 code by deleting sufficient bits in the coded stream.

"Rate Matching" sometimes refers to an overall adaptive modulation scheme or just configuration scheme where the desired puncture rate is selected.

[ - ] slartibartfast,

I am trying to understand the concept better. So, useing any standard (e.g. LTE) is fine.

Is puncturing a part of rate matching scheme?

I assume decisions to use different coding rates depend on the channel condition and then using rate matching adjustment to match available bandwidth is done. Is this correct?

[ - ] Yes, both are independent of each other.

Code rate refers to the redundancy that is added such that for every k bits input, the FEC encoder outputs n bits ie n>k and the code rate is k/n. Vice-versa happends in FEC decoder ie for every n bits input, it outputs k bits.

Rate matching ensures that the modem baud rate is maintained correctly when FEC block is concatenated to the Modem block. In other words, as long as the FEC block is able to perform such that flow of data is not interrupted while operating in a "pipelined" architecture, rate matching has been achieved.

[ - ] fzzy,

I assume that code rate is a simple function that can be part of any FEC block (Turbo, LDPC) and just needs FEC to select subset of FEC encoded bits. Probably, rate matching needs a little more involved algorithm ...

I really a simple example which explains these stages ...

[ - ] 