Descrambler
The Descrambler block is an implementation of a multiplicative descrambler. It takes an input of bits as output by the Scrambler block and derandomizes the output. So long as the Mask and Length of the two blocks are identical, the Descrambler block will self-synchronize with the Scrambler block output.
This is a block diagram of a multiplicative descrambler using a 7-stage linear feedback shift register (LFSR) with taps at (7,4).
This block works at the bit level, mean this block works on the LSB only of the input data stream, i.e., on an "unpacked binary" stream. It produces the same format on its output.
Parameters
- Mask
- Polynomial mask for LFSR. This should be identical to the mask used in the Scrambler block.
- Seed
- Initial shift register contents
- Length
- Shift register length. Must be <=63, meaning it can handle up to a polynomial of size 64. The Length will be one less than the polynomial size. Thus, a 7-stage LFSR (as shown in the block diagram above) would correspond to a polynomial of size 7, and the Length would be 6.
Example Flowgraph
Insert description of flowgraph here, then show a screenshot of the flowgraph and the output if there is an interesting GUI. Currently we have no standard method of uploading the actual flowgraph to the wiki or git repo, unfortunately. The plan is to have an example flowgraph showing how the block might be used, for every block, and the flowgraphs will live in the git repo.
Source Files
- C++ files
- TODO
- Header files
- TODO
- Public header files
- TODO
- Block definition
- TODO