AI Engine API User Guide (AIE) 2023.1
Loading...
Searching...
No Matches
aie::detail::consume_terms< 48, Lanes, 16, int16, N_Coeff, 16, int16, Op, Step > Struct Template Reference

#include <accumulate.hpp>

Public Types

template<unsigned Elems>
using accum_type = accum< accum_class_for_mul_types_v< T_Coeff, T_Data >, AccumBits, Elems >
 
using coeff_vector_type = vector< T_Coeff, N_Coeff >
 
using data_vector_type = vector< T_Data, Lanes >
 
using T_Coeff = int16
 
using T_Data = int16
 

Static Public Member Functions

template<typename... Accum>
static accum_type< Lanes > consume_1 (const coeff_vector_type &coeff, unsigned coeff_start, const data_vector_type &v, Accum &&... acc)
 
template<typename... Accum>
static accum_type< Lanes > consume_2 (const coeff_vector_type &coeff, unsigned coeff_start, const data_vector_type &x, const data_vector_type &y, Accum &&... acc)
 
static constexpr std::pair< unsigned, unsigned > get_coeff_start_offset (unsigned coeff_start)
 

Static Public Attributes

static constexpr unsigned AccumBits = 48
 

Member Typedef Documentation

◆ accum_type

template<unsigned Lanes, unsigned N_Coeff, Operation Op, int Step>
template<unsigned Elems>
using aie::detail::consume_terms< 48, Lanes, 16, int16, N_Coeff, 16, int16, Op, Step >::accum_type = accum<accum_class_for_mul_types_v<T_Coeff, T_Data>, AccumBits, Elems>

◆ coeff_vector_type

template<unsigned Lanes, unsigned N_Coeff, Operation Op, int Step>
using aie::detail::consume_terms< 48, Lanes, 16, int16, N_Coeff, 16, int16, Op, Step >::coeff_vector_type = vector<T_Coeff, N_Coeff>

◆ data_vector_type

template<unsigned Lanes, unsigned N_Coeff, Operation Op, int Step>
using aie::detail::consume_terms< 48, Lanes, 16, int16, N_Coeff, 16, int16, Op, Step >::data_vector_type = vector<T_Data, Lanes>

◆ T_Coeff

template<unsigned Lanes, unsigned N_Coeff, Operation Op, int Step>
using aie::detail::consume_terms< 48, Lanes, 16, int16, N_Coeff, 16, int16, Op, Step >::T_Coeff = int16

◆ T_Data

template<unsigned Lanes, unsigned N_Coeff, Operation Op, int Step>
using aie::detail::consume_terms< 48, Lanes, 16, int16, N_Coeff, 16, int16, Op, Step >::T_Data = int16

Member Function Documentation

◆ consume_1()

template<unsigned Lanes, unsigned N_Coeff, Operation Op, int Step>
template<typename... Accum>
static accum_type< Lanes > aie::detail::consume_terms< 48, Lanes, 16, int16, N_Coeff, 16, int16, Op, Step >::consume_1 ( const coeff_vector_type coeff,
unsigned  coeff_start,
const data_vector_type v,
Accum &&...  acc 
)
inlinestatic

◆ consume_2()

template<unsigned Lanes, unsigned N_Coeff, Operation Op, int Step>
template<typename... Accum>
static accum_type< Lanes > aie::detail::consume_terms< 48, Lanes, 16, int16, N_Coeff, 16, int16, Op, Step >::consume_2 ( const coeff_vector_type coeff,
unsigned  coeff_start,
const data_vector_type x,
const data_vector_type y,
Accum &&...  acc 
)
inlinestatic

◆ get_coeff_start_offset()

template<unsigned Lanes, unsigned N_Coeff, Operation Op, int Step>
static constexpr std::pair< unsigned, unsigned > aie::detail::consume_terms< 48, Lanes, 16, int16, N_Coeff, 16, int16, Op, Step >::get_coeff_start_offset ( unsigned  coeff_start)
inlinestaticconstexpr

Member Data Documentation

◆ AccumBits

template<unsigned Lanes, unsigned N_Coeff, Operation Op, int Step>
constexpr unsigned aie::detail::consume_terms< 48, Lanes, 16, int16, N_Coeff, 16, int16, Op, Step >::AccumBits = 48
staticconstexpr

The documentation for this struct was generated from the following file: