namespace hpc

// namespaces

namespace xf::hpc::cg
namespace xf::hpc::mlp
namespace xf::hpc::rtm

// typedefs

typedef uint64_t Clock_t

// enums

enum Signal_t

// classes

template <unsigned int t_InstrBytes>
class StreamInstr

wide2stream

#include "streamOps.hpp"
template <
    unsigned int t_DataWidth,
    unsigned int t_Multi
    >
void wide2stream (
    unsigned int p_n,
    hls::stream <ap_uint <t_DataWidth*t_Multi>>& p_wide,
    hls::stream <ap_uint <t_DataWidth>>& p_str
    )

wide2stream converts an integer of wide datawidth to an integer of base datawidth

Parameters:

t_DataWidth is the base datawidth
t_Multi is the factor between two datawidth
p_n is the number of data to be read
p_wide is the input stream of wide datawidth
p_str is the output stream of base datawidth

stream2wide

#include "streamOps.hpp"
template <
    unsigned int t_DataWidth,
    unsigned int t_Multi
    >
void stream2wide (
    unsigned int p_n,
    hls::stream <ap_uint <t_DataWidth>>& p_str,
    hls::stream <ap_uint <t_DataWidth*t_Multi>>& p_wide
    )

stream2wide converts an integer of base datawidth to an integer of wide datawidth

Parameters:

t_DataWidth is the base datawidth
t_Multi is the factor between two datawidth
p_n is the number of data to be write
p_str is the input stream of base datawidth
p_wide is the output stream of wide datawidth