osmo-gmr: xCH over DC12 channel coding

osmo-gmr 0.2.104-2b98 Osmocom GMR-1

Files | Functions
xCH over DC12 channel coding
GMR-1 Layer 1 library » Channel coder / decoders

## Files
file | xch_dc12.h
| Osmocom GMR-1 xCH over DC12 channel coding header.
file | xch_dc12.c
| Osmocom GMR-1 xCH over DC12 channel coding implementation.

## Functions
int | gmr1_xch_dc12_encode (ubit_t *bits_e, const uint8_t *l2)
| Stateless GMR-1 xCH over DC12 channel coder. More...
int | gmr1_xch_dc12_decode (uint8_t *l2, const sbit_t *bits_e, int *conv_rv)
| Stateless GMR-1 xCH over DC12 channel decoder. More...

## Detailed Description

## Function Documentation

## ◆ gmr1_xch_dc12_decode()

int gmr1_xch_dc12_decode | ( | uint8_t * | l2,
|  | const sbit_t * | bits_e,
|  | int * | conv_rv
| ) |  |

Stateless GMR-1 xCH over DC12 channel decoder.

Parameters

  [out] | l2 | L2 packet data
  [in] | bits_e | Data bits of a burst
  [out] | conv_rv | Return of the convolutional decode (can be NULL)

Returns
  0 if CRC check pass, any other value for fail.

L2 data is 24 byte long, and bits_e is a 432 soft bit array unmapped from a burst.

References gmr1_deinterleave_intra(), gmr1_scramble_sbit(), and osmo_conv_decode().

## ◆ gmr1_xch_dc12_encode()

void gmr1_xch_dc12_encode | ( | ubit_t * | bits_e,
|  | const uint8_t * | l2
| ) |  |

Stateless GMR-1 xCH over DC12 channel coder.

Parameters

  [out] | bits_e | Data bits of a burst
  [in] | l2 | L2 packet data

L2 data is 24 byte long, and bits_e is a 432 hard bit array to be mapped on a burst.

References gmr1_crc16, osmo_conv_encode(), osmo_crc16gen_set_bits(), and osmo_pbit2ubit_ext().