Async CRC32: Difference between revisions

From GNU Radio
Jump to navigation Jump to search
m (moved deprecated statement to top)
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
[[Category:Block Docs]]
[[Category:Block Docs]]
<code>Deprecated in 3.10</code>  This block has been replaced by [[CRC_Append]] and [[CRC_Check]] blocks.
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.



Latest revision as of 17:38, 11 March 2023

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

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.

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