#include "xf_database/merge_sort.hpp"
template < typename Data_Type, typename Key_Type > void mergeSort ( hls::stream <Data_Type>& left_din_strm, hls::stream <Key_Type>& left_kin_strm, hls::stream <bool>& left_strm_in_end, hls::stream <Data_Type>& right_din_strm, hls::stream <Key_Type>& right_kin_strm, hls::stream <bool>& right_strm_in_end, hls::stream <Data_Type>& dout_strm, hls::stream <Key_Type>& kout_strm, hls::stream <bool>& strm_out_end, bool order )
Merge sort function.
Parameters:
Data_Type | the input and output data type |
Data_Type | the input and output key type |
left_din_strm | input left data stream |
left_kin_strm | input key stream |
left_strm_in_end | end flag stream for left input |
right_din_strm | input right data stream |
right_kin_strm | input key stream |
right_strm_in_end | end flag stream for right input |
dout_strm | output data stream |
kout_strm | output key stream |
strm_out_end | end flag stream for output data |
order | 1:ascending 0:descending |