osmo-gmr 0.2.104-2b98
Osmocom GMR-1

Files

file  conv.h
 Osmocom GMR-1 convolutional coding header.
 
file  conv.c
 Osmocom GMR-1 convolutional coding implementation.
 

Enumerations

enum  osmo_conv_term
 

Functions

int osmo_conv_get_input_length (const struct osmo_conv_code *code, int len)
 
int osmo_conv_get_output_length (const struct osmo_conv_code *code, int len)
 
void osmo_conv_encode_init (struct osmo_conv_encoder *encoder, const struct osmo_conv_code *code)
 
void osmo_conv_encode_load_state (struct osmo_conv_encoder *encoder, const ubit_t *input)
 
int osmo_conv_encode_raw (struct osmo_conv_encoder *encoder, const ubit_t *input, ubit_t *output, int n)
 
int osmo_conv_encode_flush (struct osmo_conv_encoder *encoder, ubit_t *output)
 
int osmo_conv_encode (const struct osmo_conv_code *code, const ubit_t *input, ubit_t *output)
 
void osmo_conv_decode_init (struct osmo_conv_decoder *decoder, const struct osmo_conv_code *code, int len, int start_state)
 
void osmo_conv_decode_reset (struct osmo_conv_decoder *decoder, int start_state)
 
void osmo_conv_decode_rewind (struct osmo_conv_decoder *decoder)
 
void osmo_conv_decode_deinit (struct osmo_conv_decoder *decoder)
 
int osmo_conv_decode_scan (struct osmo_conv_decoder *decoder, const sbit_t *input, int n)
 
int osmo_conv_decode_flush (struct osmo_conv_decoder *decoder, const sbit_t *input)
 
int osmo_conv_decode_get_best_end_state (struct osmo_conv_decoder *decoder)
 
int osmo_conv_decode_get_output (struct osmo_conv_decoder *decoder, ubit_t *output, int has_flush, int end_state)
 
int osmo_conv_decode (const struct osmo_conv_code *code, const sbit_t *input, ubit_t *output)
 
int osmo_conv_decode_acc (const struct osmo_conv_code *code, const sbit_t *input, ubit_t *output)
 

Variables

 CONV_TERM_FLUSH
 
 CONV_TERM_TRUNCATION
 
 CONV_TERM_TAIL_BITING
 
const struct osmo_conv_code gmr1_conv_k5_12
 GMR-1 constraint length 5, rate 1/2 convolutional code.
 
const struct osmo_conv_code gmr1_conv_k5_13
 GMR-1 constraint length 5, rate 1/3 convolutional code.
 
const struct osmo_conv_code gmr1_conv_k5_14
 GMR-1 constraint length 5, rate 1/4 convolutional code.
 
const struct osmo_conv_code gmr1_conv_k5_15
 GMR-1 constraint length 5, rate 1/5 convolutional code.
 
const struct osmo_conv_code gmr1_conv_k6_14
 GMR-1 constraint length 6, rate 1/4 convolutional code.
 
const struct osmo_conv_code gmr1_conv_k9_12
 GMR-1 constraint length 9, rate 1/2 convolutional code.
 
const struct osmo_conv_code gmr1_conv_k9_13
 GMR-1 constraint length 9, rate 1/3 convolutional code.
 
const struct osmo_conv_code gmr1_conv_k9_14
 GMR-1 constraint length 9, rate 1/4 convolutional code.
 
const struct osmo_conv_code gmr1_conv_tch3
 GMR-1 TCH3 speech tail-biting convolutional code.
 
const struct osmo_conv_code gmr1_conv_k5_12
 GMR-1 constraint length 5, rate 1/2 convolutional code. More...
 
const struct osmo_conv_code gmr1_conv_k5_13
 GMR-1 constraint length 5, rate 1/3 convolutional code. More...
 
const struct osmo_conv_code gmr1_conv_k5_14
 GMR-1 constraint length 5, rate 1/4 convolutional code. More...
 
const struct osmo_conv_code gmr1_conv_k5_15
 GMR-1 constraint length 5, rate 1/5 convolutional code. More...
 
const struct osmo_conv_code gmr1_conv_k6_14
 GMR-1 constraint length 6, rate 1/4 convolutional code. More...
 
const struct osmo_conv_code gmr1_conv_k9_12
 GMR-1 constraint length 9, rate 1/2 convolutional code. More...
 
const struct osmo_conv_code gmr1_conv_k9_13
 GMR-1 constraint length 9, rate 1/3 convolutional code. More...
 
const struct osmo_conv_code gmr1_conv_k9_14
 GMR-1 constraint length 9, rate 1/4 convolutional code. More...
 
const struct osmo_conv_code gmr1_conv_tch3
 GMR-1 TCH3 speech tail-biting convolutional code. More...
 

Detailed Description

Variable Documentation

◆ gmr1_conv_k5_12

const struct osmo_conv_code gmr1_conv_k5_12
Initial value:
= {
.N = 2,
.K = 5,
.len = 0,
.next_output = gmr1_conv_k5_12_next_output,
.term = CONV_TERM_FLUSH,
.next_state = gmr1_conv_k5_next_state,
}
CONV_TERM_FLUSH

GMR-1 constraint length 5, rate 1/2 convolutional code.

◆ gmr1_conv_k5_13

const struct osmo_conv_code gmr1_conv_k5_13
Initial value:
= {
.N = 3,
.K = 5,
.len = 0,
.term = CONV_TERM_FLUSH,
.next_output = gmr1_conv_k5_13_next_output,
.next_state = gmr1_conv_k5_next_state,
}

GMR-1 constraint length 5, rate 1/3 convolutional code.

◆ gmr1_conv_k5_14

const struct osmo_conv_code gmr1_conv_k5_14
Initial value:
= {
.N = 4,
.K = 5,
.len = 0,
.term = CONV_TERM_FLUSH,
.next_output = gmr1_conv_k5_14_next_output,
.next_state = gmr1_conv_k5_next_state,
}

GMR-1 constraint length 5, rate 1/4 convolutional code.

◆ gmr1_conv_k5_15

const struct osmo_conv_code gmr1_conv_k5_15
Initial value:
= {
.N = 5,
.K = 5,
.len = 0,
.term = CONV_TERM_FLUSH,
.next_output = gmr1_conv_k5_15_next_output,
.next_state = gmr1_conv_k5_next_state,
}

GMR-1 constraint length 5, rate 1/5 convolutional code.

◆ gmr1_conv_k6_14

const struct osmo_conv_code gmr1_conv_k6_14
Initial value:
= {
.N = 4,
.K = 6,
.len = 0,
.term = CONV_TERM_FLUSH,
.next_output = gmr1_conv_k6_14_next_output,
.next_state = gmr1_conv_k6_next_state,
}

GMR-1 constraint length 6, rate 1/4 convolutional code.

◆ gmr1_conv_k9_12

const struct osmo_conv_code gmr1_conv_k9_12
Initial value:
= {
.N = 2,
.K = 9,
.len = 0,
.term = CONV_TERM_FLUSH,
.next_output = gmr1_conv_k9_12_next_output,
.next_state = gmr1_conv_k9_next_state,
}

GMR-1 constraint length 9, rate 1/2 convolutional code.

◆ gmr1_conv_k9_13

const struct osmo_conv_code gmr1_conv_k9_13
Initial value:
= {
.N = 3,
.K = 9,
.len = 0,
.term = CONV_TERM_FLUSH,
.next_output = gmr1_conv_k9_13_next_output,
.next_state = gmr1_conv_k9_next_state,
}

GMR-1 constraint length 9, rate 1/3 convolutional code.

◆ gmr1_conv_k9_14

const struct osmo_conv_code gmr1_conv_k9_14
Initial value:
= {
.N = 4,
.K = 9,
.len = 0,
.term = CONV_TERM_FLUSH,
.next_output = gmr1_conv_k9_14_next_output,
.next_state = gmr1_conv_k9_next_state,
}

GMR-1 constraint length 9, rate 1/4 convolutional code.

◆ gmr1_conv_tch3

const struct osmo_conv_code gmr1_conv_tch3
Initial value:
= {
.N = 2,
.K = 7,
.len = 0,
.next_output = gmr1_conv_tch3_next_output,
.next_state = gmr1_conv_tch3_next_state,
}
CONV_TERM_TAIL_BITING

GMR-1 TCH3 speech tail-biting convolutional code.