template <typename t_DataType, unsigned int t_ParEntries, unsigned int t_MaxRows, typename t_IndexType = unsigned int, typename t_MacType = t_DataType> void gbmv(const unsigned int p_m, const unsigned int p_n, const unsigned int p_kl, const unsigned int p_ku, const t_DataType p_alpha, hls::stream<WideType<t_DataType, t_ParEntries>>& p_M, hls::stream<WideType<t_DataType, t_ParEntries>>& p_x, const t_DataType p_beta, hls::stream<WideType<t_DataType, t_ParEntries>>& p_y, hls::stream<WideType<t_DataType, t_ParEntries>>& p_yr)
gbmv function performs general banded matrix-vector multiplication matrix and a vector y = alpha * M * x + beta * y
Parameters:
| t_DataType | the data type of the vector entries |
| t_ParEntries | the number of parallelly processed entries in the input vector |
| t_MaxRows | the maximum size of buffers for output vector |
| t_IndexType | the datatype of the index |
| t_MacType | the datatype of the output stream |
| p_m | the number of rows of input matrix p_M |
| p_alpha | scalar alpha |
| p_M | the input stream of packed Matrix entries |
| p_x | the input stream of packed vector entries |
| p_beta | scalar beta |
| p_y | the output vector |