@@ -46,15 +46,15 @@ The pipeline ordering is important, as each step builds upon and adds value to t
To receive any radio communications, an RF front-end is needed. No processing can happen before the over-the-air signals are received, so the RF stage goes first.
Once RF is converted to boardlevel signals, a receiver needs to determine if the signals are actually a CATS packet. The Header provides a clear signature that the receiver can try and match incoming signals against. If the header was encoded in any manner, the receiver would need to continuously attempt to decode every bit of noise - a complicated and power-hungry operation to detect if there \textit{might} be a packet. Putting the Header stage right next to the RF stage keeps the CATS packet detection as simple and efficient as possible.
Once RF is converted to board-level signals, a receiver needs to determine if the signals are actually a CATS packet. The Header provides a clear signature that the receiver can try to match incoming signals against. If the header was encoded in any manner, the receiver would need to continuously attempt to decode every bit of noise - a complicated and power-hungry operation to detect if there \textit{might} be a packet. Putting the Header stage right next to the RF stage keeps the CATS packet detection as simple and efficient as possible.
The FSK modulation is an asynchronously clocked transmission. To ensure the receiver can recover the original contents, especially for long CATS packets, it is helpful to have regular transitions in the data bits. The Whitener does not guaranty more transitions, but does increase their likelihood. We need data to target the whitening process, but there is no particular requirement for protection of the whitening process itself. By staging the Whitening before the LDPC stage, half as many bits need to be processed as would be needed after the LDPC stage, saving a small amount of processing time, and no adjustments need be made to support possible recovery strategies in the LDPC stage as another process-saving bonus.
The FSK modulation is an asynchronously clocked transmission. To ensure the receiver can recover the original contents, especially for long CATS packets, it is helpful to have regular transitions in the data bits. The Whitener does not guarantee more transitions, but does increase their likelihood. We need data to target the whitening process, but there is no particular requirement for protection of the whitening process itself. By staging the Whitening before the LDPC stage, half as many bits need to be processed as would be needed after the LDPC stage, saving a small amount of processing time, and no adjustments need be made to support possible recovery strategies in the LDPC stage as another process-saving bonus.
While receiving a CATS packet, there may be some noise or interference in the signal. The receiver can recover the original data, despite some amount of noise, by decoding LDPC-encoded data. The LDPC decoding stage must come before any and all data that needs protection from corruption, but need not be the first decoding operation.
One type of error that the LDPC encoding cannot correct is if an entire LDPC chunk is corrupted. Putting the Interleaver stage before the LDPC stage spreads each LDPC chunk's data across time, reducing the chances of any single chunk becoming too corrupted to decode.
The receiver needs a way to verify that the data it receives is the same as the data that was sent. The CRC stage such a mechanism, providing a simple but effective way to check if the data is self-consistent. This stage should happen as late as possible in the decoding, so that any errors from any earlier stages will be caught. However, we must do the CRC check before we can interpret the data it is checking.
The receiver needs a way to verify that the data it receives is the same as the data that was sent. The CRC stage is such a mechanism, providing a simple but effective way to check if the data is self-consistent. This stage should happen as late as possible in the decoding, so that any errors from any earlier stages will be caught. However, we must do the CRC check before we can interpret the data it is checking.
In order to use any received data, the receiver must be able to interpret the received data. The Whiskers stage provides a standardization and structure needed to do so. Putting the Whiskers decoding stage after the CRC and LDPC decoding stages provides several layers of protection that Whiskers do not have by themselves.