Async CRC32: Difference between revisions

From GNU Radio
Jump to navigation Jump to search
(add deprecated in 3.10)
Line 1: Line 1:
[[Category:Block Docs]]
[[Category:Block Docs]]
Byte-stream CRC block for async messages.  Processes packets (as async PDU messages) for CRC32. The  parameter determines if the block acts to check and strip the CRC or to calculate and append the CRC32.  The input PDU is expected to be a message of packet bytes.  When using check mode, if the CRC passes, the output is a payload of the message with the CRC stripped, so the output will be 4 bytes smaller than the input.  When using calculate mode (check == false), then the CRC is calculated on the PDU and appended to it. The output is then 4 bytes longer than the input.  This block implements the CRC32 using the Boost crc_optimal class for 32-bit CRCs with the standard generator 0x04C11DB7.
Byte-stream CRC block for async messages.  Processes packets (as async PDU messages) for CRC32. The  parameter determines if the block acts to check and strip the CRC or to calculate and append the CRC32.  The input PDU is expected to be a message of packet bytes.  When using check mode, if the CRC passes, the output is a payload of the message with the CRC stripped, so the output will be 4 bytes smaller than the input.  When using calculate mode (check == false), then the CRC is calculated on the PDU and appended to it. The output is then 4 bytes longer than the input.  This block implements the CRC32 using the Boost crc_optimal class for 32-bit CRCs with the standard generator 0x04C11DB7.
<code>Deprecated in 3.10</code>  This block has been replaced by [[CRC_Append]] and [[CRC_Check]] blocks.


== Parameters ==
== Parameters ==

Revision as of 14:40, 1 March 2023

Byte-stream CRC block for async messages. Processes packets (as async PDU messages) for CRC32. The parameter determines if the block acts to check and strip the CRC or to calculate and append the CRC32. The input PDU is expected to be a message of packet bytes. When using check mode, if the CRC passes, the output is a payload of the message with the CRC stripped, so the output will be 4 bytes smaller than the input. When using calculate mode (check == false), then the CRC is calculated on the PDU and appended to it. The output is then 4 bytes longer than the input. This block implements the CRC32 using the Boost crc_optimal class for 32-bit CRCs with the standard generator 0x04C11DB7.

Deprecated in 3.10 This block has been replaced by CRC_Append and CRC_Check blocks.

Parameters

Mode
Set to true if you want to check CRC, false to create CRC.

Example Flowgraph

This flowgraph can be found at [1]

Packet tx fg.png

Source Files

C++ files
crc32_async_bb_impl.cc
Header files
crc32_async_bb_impl.h
Public header files
crc32_async_bb.h
Block definition
digital_crc32_async_bb.block.yml