AI Engine API User Guide (AIE-API) 2024.1
Loading...
Searching...
No Matches
stream.hpp File Reference
#include <adf.h>
#include "../aie.hpp"

Classes

struct  aie::tlast< T, Bool >
 Type used to wrap objects read/written from/to streams that also encapsulates TLAST information. More...
 

Namespaces

namespace  aie
 Base namespace for AIE operations and types.
 

Concepts

concept  aie::TLast
 Concept for tlast objects passed to << and >> operators with streams.
 

Macros

#define __AIE_API_AIE_ADF_STREAM_HPP__
 

Functions

template<aie::AccumElemBaseType T, unsigned N>
constexpr output_cascade< T > & operator<< (output_cascade< T > &w, const aie::accum< T, N > &acc)
 Writes an accumulator into the output cascade stream.
 
template<aie::AccumElemBaseType T, unsigned N>
constexpr output_cascade< T > * operator<< (output_cascade< T > *w, const aie::accum< T, N > &acc)
 Writes an accumulator into the output cascade stream.
 
template<aie::AccumElemBaseType T, unsigned N>
constexpr output_stream< T > & operator<< (output_stream< T > &w, const aie::accum< T, N > &acc)
 Writes an accumulator into the output cascade stream.
 
template<typename T , unsigned N>
constexpr output_stream< T > & operator<< (output_stream< T > &w, const aie::vector< T, N > &v)
 Writes a vector into the output AXI stream.
 
template<typename T >
constexpr output_stream< T > & operator<< (output_stream< T > &w, const T &v)
 Writes a value into the output AXI stream.
 
template<typename T , aie::TLast< T > TL>
constexpr output_stream< T > & operator<< (output_stream< T > &w, const TL &tl)
 Writes a value or vector into the output AXI stream.
 
template<aie::AccumElemBaseType T, unsigned N>
constexpr output_stream< T > * operator<< (output_stream< T > *w, const aie::accum< T, N > &acc)
 Writes an accumulator into the output cascade stream.
 
template<typename T , unsigned N>
constexpr output_stream< T > * operator<< (output_stream< T > *w, const aie::vector< T, N > &v)
 Writes a vector into the output AXI stream.
 
template<typename T >
constexpr output_stream< T > & operator<< (output_stream< T > *w, const T &v)
 Writes a value into the output AXI stream.
 
template<typename T , aie::TLast< T > TL>
constexpr output_stream< T > * operator<< (output_stream< T > *w, const TL &tl)
 Writes a value into the output AXI stream.
 
template<unsigned N, aie::AccumElemBaseType T>
constexpr input_cascade< T > & operator>> (input_cascade< T > &w, aie::accum< T, N > &acc)
 Reads an accumulator from the input cascade stream.
 
template<unsigned N, aie::AccumElemBaseType T>
constexpr input_cascade< T > * operator>> (input_cascade< T > *w, aie::accum< T, N > &acc)
 Reads an accumulator from the input cascade stream.
 
template<unsigned N, aie::AccumElemBaseType T>
constexpr input_stream< T > & operator>> (input_stream< T > &w, aie::accum< T, N > &acc)
 Reads an accumulator from the input cascade stream.
 
template<unsigned N, typename T >
constexpr input_stream< T > & operator>> (input_stream< T > &w, aie::vector< T, N > &v)
 Reads a vector from the input AXI stream.
 
template<typename T , aie::TLast< T > TL>
constexpr input_stream< T > & operator>> (input_stream< T > &w, const TL &tl)
 Reads a value or vector from the input AXI stream.
 
template<typename T >
constexpr input_stream< T > & operator>> (input_stream< T > &w, T &v)
 Reads a value from the input AXI stream.
 
template<unsigned N, aie::AccumElemBaseType T>
constexpr input_stream< T > * operator>> (input_stream< T > *w, aie::accum< T, N > &acc)
 Reads an accumulator from the input cascade stream.
 
template<unsigned N, typename T >
constexpr input_stream< T > * operator>> (input_stream< T > *w, aie::vector< T, N > &v)
 Reads a vector from the input AXI stream.
 
template<typename T , aie::TLast< T > TL>
constexpr input_stream< T > * operator>> (input_stream< T > *w, const TL &tl)
 Reads a value or vector from the input AXI stream.
 
template<typename T >
constexpr input_stream< T > & operator>> (input_stream< T > *w, T &v)
 Reads a value from the input AXI stream.
 
template<unsigned N, aie::AccumElemBaseType T>
aie::accum< T, N > readincr_v (input_cascade< T > *w)
 Reads an accumulator from the input cascade stream.
 
template<unsigned N, aie_stream_resource_in Resource = aie_stream_resource_in::none, typename T >
aie::vector< T, N > readincr_v (input_stream< T > *w)
 Reads a vector from the input AXI stream.
 
template<unsigned N, aie::AccumElemBaseType T>
aie::accum< T, N > readincr_v (input_stream< T > *w)
 Reads an accumulator from the input cascade stream.
 
template<unsigned N, aie_stream_resource_in Resource = aie_stream_resource_in::none, typename T >
aie::vector< T, N > readincr_v (input_stream< T > *w, bool &tlast)
 Reads a vector from the input AXI stream and returns whether TLAST has been asserted.
 
template<typename T >
 aie::tlast (const T &, bool) -> tlast< const T &, bool >
 
template<typename T >
 aie::tlast (T &, bool &) -> tlast< T &, bool & >
 
template<aie::AccumElemBaseType T, unsigned N>
void writeincr (output_cascade< T > *w, const aie::accum< T, N > &value)
 Writes an accumulator into the output cascade stream.
 
template<aie::AccumElemBaseType T, unsigned N>
void writeincr (output_stream< T > *w, const aie::accum< T, N > &value)
 Writes an accumulator into the output cascade stream.
 
template<aie_stream_resource_out Resource = aie_stream_resource_out::none, typename T , unsigned N>
void writeincr (output_stream< T > *w, const aie::vector< T, N > &value)
 Writes a vector into the output AXI stream.
 
template<aie_stream_resource_out Resource = aie_stream_resource_out::none, typename T , unsigned N>
void writeincr (output_stream< T > *w, const aie::vector< T, N > &value, bool tlast)
 Writes a vector into the output AXI stream.
 
template<aie::AccumElemBaseType T, unsigned N>
void writeincr_v (output_stream< T > *w, const aie::accum< T, N > &value)
 
template<unsigned N, typename T >
void writeincr_v (output_stream< T > *w, const aie::vector< T, N > &value)
 
template<unsigned N, typename T >
void writeincr_v (output_stream< T > *w, const aie::vector< T, N > &value, bool tlast)
 

Macro Definition Documentation

◆ __AIE_API_AIE_ADF_STREAM_HPP__

#define __AIE_API_AIE_ADF_STREAM_HPP__

Function Documentation

◆ writeincr_v() [1/3]

template<aie::AccumElemBaseType T, unsigned N>
void writeincr_v ( output_stream< T > *  w,
const aie::accum< T, N > &  value 
)

◆ writeincr_v() [2/3]

template<unsigned N, typename T >
void writeincr_v ( output_stream< T > *  w,
const aie::vector< T, N > &  value 
)

◆ writeincr_v() [3/3]

template<unsigned N, typename T >
void writeincr_v ( output_stream< T > *  w,
const aie::vector< T, N > &  value,
bool  tlast 
)