libosmocore 1.11.1
Osmocom core library
Loading...
Searching...
No Matches
conv_acc_generic.c File Reference

Accelerated Viterbi decoder implementation for generic architectures without SSE support. More...

#include <stdlib.h>
#include <stdint.h>
#include <string.h>

Functions

static void acs_butterfly (int state, int num_states, int16_t metric, int16_t *sum, int16_t *new_sum, int16_t *path)
static void gen_branch_metrics_n2 (int num_states, const int8_t *seq, const int16_t *out, int16_t *metrics)
static void gen_branch_metrics_n3 (int num_states, const int8_t *seq, const int16_t *out, int16_t *metrics)
static void gen_branch_metrics_n4 (int num_states, const int8_t *seq, const int16_t *out, int16_t *metrics)
static void gen_path_metrics (int num_states, int16_t *sums, int16_t *metrics, int16_t *paths, int norm)
 __attribute__ ((visibility("hidden")))

Detailed Description

Accelerated Viterbi decoder implementation for generic architectures without SSE support.

Function Documentation

◆ __attribute__()

__attribute__ ( (visibility("hidden")) )

◆ acs_butterfly()

void acs_butterfly ( int state,
int num_states,
int16_t metric,
int16_t * sum,
int16_t * new_sum,
int16_t * path )
static

Referenced by gen_path_metrics().

◆ gen_branch_metrics_n2()

void gen_branch_metrics_n2 ( int num_states,
const int8_t * seq,
const int16_t * out,
int16_t * metrics )
static

◆ gen_branch_metrics_n3()

void gen_branch_metrics_n3 ( int num_states,
const int8_t * seq,
const int16_t * out,
int16_t * metrics )
static

◆ gen_branch_metrics_n4()

void gen_branch_metrics_n4 ( int num_states,
const int8_t * seq,
const int16_t * out,
int16_t * metrics )
static

◆ gen_path_metrics()

void gen_path_metrics ( int num_states,
int16_t * sums,
int16_t * metrics,
int16_t * paths,
int norm )
static

References acs_butterfly().