#include "xf_security/crc32.hpp"
template <int W> void crc32 ( hls::stream <ap_uint <32>>& crcInitStrm, hls::stream <ap_uint <8*W>>& inStrm, hls::stream <ap_uint <5>>& inPackLenStrm, hls::stream <bool>& endInPackLenStrm, hls::stream <ap_uint <32>>& outStrm, hls::stream <bool>& endOutStrm )
crc32 computes the CRC32 check value of an input data.
Parameters:
| W | byte number of input data, the value of W includes 1, 2, 4, 8, 16. |
| crcInitStrm | initialize crc32 value |
| inStrm | input messages to be checked |
| inPackLenStrm | effetive lengths of input message pack, 1~W. 0 means end of message |
| endInPackLenStrm | end flag of inPackLenStrm, 1 “false” for 1 message, 1 “true” means no message anymore. |
| outStrm | crc32 result to output |
| endOutStrm | end flag of outStrm |