\doxysection{src/core/conv\+\_\+acc\+\_\+generic.c File Reference}
\label{conv__acc__generic_8c}\index{src/core/conv\_acc\_generic.c@{src/core/conv\_acc\_generic.c}}


Accelerated Viterbi decoder implementation for generic architectures without SSE support.  


{\ttfamily \#include $<$stdlib.\+h$>$}\newline
{\ttfamily \#include $<$stdint.\+h$>$}\newline
{\ttfamily \#include $<$string.\+h$>$}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
static void \textbf{ acs\+\_\+butterfly} (int state, int num\+\_\+states, int16\+\_\+t metric, int16\+\_\+t $\ast$sum, int16\+\_\+t $\ast$new\+\_\+sum, int16\+\_\+t $\ast$path)
\item 
static void \textbf{ gen\+\_\+branch\+\_\+metrics\+\_\+n2} (int num\+\_\+states, const int8\+\_\+t $\ast$seq, const int16\+\_\+t $\ast$out, int16\+\_\+t $\ast$metrics)
\item 
static void \textbf{ gen\+\_\+branch\+\_\+metrics\+\_\+n3} (int num\+\_\+states, const int8\+\_\+t $\ast$seq, const int16\+\_\+t $\ast$out, int16\+\_\+t $\ast$metrics)
\item 
static void \textbf{ gen\+\_\+branch\+\_\+metrics\+\_\+n4} (int num\+\_\+states, const int8\+\_\+t $\ast$seq, const int16\+\_\+t $\ast$out, int16\+\_\+t $\ast$metrics)
\item 
static void \textbf{ gen\+\_\+path\+\_\+metrics} (int num\+\_\+states, int16\+\_\+t $\ast$sums, int16\+\_\+t $\ast$metrics, int16\+\_\+t $\ast$paths, int norm)
\item 
\textbf{ \+\_\+\+\_\+attribute\+\_\+\+\_\+} ((visibility(\char`\"{}hidden\char`\"{})))
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Accelerated Viterbi decoder implementation for generic architectures without SSE support. 



\doxysubsection{Function Documentation}
\mbox{\label{conv__acc__generic_8c_a654f220adbb8eaed520587f774ec00d3}} 
\index{conv\_acc\_generic.c@{conv\_acc\_generic.c}!\_\_attribute\_\_@{\_\_attribute\_\_}}
\index{\_\_attribute\_\_@{\_\_attribute\_\_}!conv\_acc\_generic.c@{conv\_acc\_generic.c}}
\doxysubsubsection{\_\_attribute\_\_()}
{\footnotesize\ttfamily \+\_\+\+\_\+attribute\+\_\+\+\_\+ (\begin{DoxyParamCaption}\item[{(visibility(\char`\"{}hidden\char`\"{}))}]{ }\end{DoxyParamCaption})}



References \textbf{ n}.

\mbox{\label{conv__acc__generic_8c_a56df932a884f61b8d5675ccfe2102564}} 
\index{conv\_acc\_generic.c@{conv\_acc\_generic.c}!acs\_butterfly@{acs\_butterfly}}
\index{acs\_butterfly@{acs\_butterfly}!conv\_acc\_generic.c@{conv\_acc\_generic.c}}
\doxysubsubsection{acs\_butterfly()}
{\footnotesize\ttfamily static void acs\+\_\+butterfly (\begin{DoxyParamCaption}\item[{int}]{state,  }\item[{int}]{num\+\_\+states,  }\item[{int16\+\_\+t}]{metric,  }\item[{int16\+\_\+t $\ast$}]{sum,  }\item[{int16\+\_\+t $\ast$}]{new\+\_\+sum,  }\item[{int16\+\_\+t $\ast$}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Referenced by \textbf{ gen\+\_\+path\+\_\+metrics()}.

\mbox{\label{conv__acc__generic_8c_a3124defebf1991960726693ee11bccc5}} 
\index{conv\_acc\_generic.c@{conv\_acc\_generic.c}!gen\_branch\_metrics\_n2@{gen\_branch\_metrics\_n2}}
\index{gen\_branch\_metrics\_n2@{gen\_branch\_metrics\_n2}!conv\_acc\_generic.c@{conv\_acc\_generic.c}}
\doxysubsubsection{gen\_branch\_metrics\_n2()}
{\footnotesize\ttfamily static void gen\+\_\+branch\+\_\+metrics\+\_\+n2 (\begin{DoxyParamCaption}\item[{int}]{num\+\_\+states,  }\item[{const int8\+\_\+t $\ast$}]{seq,  }\item[{const int16\+\_\+t $\ast$}]{out,  }\item[{int16\+\_\+t $\ast$}]{metrics }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{conv__acc__generic_8c_aa995f93a1e1118ed4fb0137ef4e4b55e}} 
\index{conv\_acc\_generic.c@{conv\_acc\_generic.c}!gen\_branch\_metrics\_n3@{gen\_branch\_metrics\_n3}}
\index{gen\_branch\_metrics\_n3@{gen\_branch\_metrics\_n3}!conv\_acc\_generic.c@{conv\_acc\_generic.c}}
\doxysubsubsection{gen\_branch\_metrics\_n3()}
{\footnotesize\ttfamily static void gen\+\_\+branch\+\_\+metrics\+\_\+n3 (\begin{DoxyParamCaption}\item[{int}]{num\+\_\+states,  }\item[{const int8\+\_\+t $\ast$}]{seq,  }\item[{const int16\+\_\+t $\ast$}]{out,  }\item[{int16\+\_\+t $\ast$}]{metrics }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{conv__acc__generic_8c_abf46f74b7b7167567bcc75b22b626958}} 
\index{conv\_acc\_generic.c@{conv\_acc\_generic.c}!gen\_branch\_metrics\_n4@{gen\_branch\_metrics\_n4}}
\index{gen\_branch\_metrics\_n4@{gen\_branch\_metrics\_n4}!conv\_acc\_generic.c@{conv\_acc\_generic.c}}
\doxysubsubsection{gen\_branch\_metrics\_n4()}
{\footnotesize\ttfamily static void gen\+\_\+branch\+\_\+metrics\+\_\+n4 (\begin{DoxyParamCaption}\item[{int}]{num\+\_\+states,  }\item[{const int8\+\_\+t $\ast$}]{seq,  }\item[{const int16\+\_\+t $\ast$}]{out,  }\item[{int16\+\_\+t $\ast$}]{metrics }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{conv__acc__generic_8c_a35ffdff44fe10ac75110d20bf014bea3}} 
\index{conv\_acc\_generic.c@{conv\_acc\_generic.c}!gen\_path\_metrics@{gen\_path\_metrics}}
\index{gen\_path\_metrics@{gen\_path\_metrics}!conv\_acc\_generic.c@{conv\_acc\_generic.c}}
\doxysubsubsection{gen\_path\_metrics()}
{\footnotesize\ttfamily static void gen\+\_\+path\+\_\+metrics (\begin{DoxyParamCaption}\item[{int}]{num\+\_\+states,  }\item[{int16\+\_\+t $\ast$}]{sums,  }\item[{int16\+\_\+t $\ast$}]{metrics,  }\item[{int16\+\_\+t $\ast$}]{paths,  }\item[{int}]{norm }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ acs\+\_\+butterfly()}.

