#include <trellis.h>
Inheritance diagram for simthlib::ShiftRegister:

Public Member Functions | |
| ShiftRegister (int symbolsPerStep, int bitsPerSymbol, const simth::checkedVector< int > &octalPolynomials, int recursivePolynomial=0) | |
| virtual | ~ShiftRegister ()=0 |
| virtual int | getNextState (int inputPattern, int oldState) const =0 |
| virtual int | getOutput (int input, int state) const =0 |
| virtual int | getRecursive (int state) const =0 |
| int | memoryLength () const |
| virtual int | tailsteps () const =0 |
| virtual void | print (std::ostream &os) const |
Static Public Member Functions | |
| static int | computeNumOutputBits (int numPolynomials, int symbolsPerStep, int bitsPerSymbol, bool systematic) |
| static void | getBestPolynomials (int mem, int inbits, int outbits, simth::checkedVector< int > *genPolynomials) |
| static int | computeMemoryLength (const simth::checkedVector< int > &polynomials, int recursivePolynomial=0) |
| static int | computeMemoryLength (int polynomial) |
Protected Member Functions | |
| int | symbolsPerStep () const |
| int | bitsPerSymbol () const |
| int | M () const |
Protected Attributes | |
| simth::checkedVector< int > | polynomials |
| int | recursivePolynomial |
|
||||||||||||||||||||
|
Constructor |
|
|
|
|
|
|
|
|
Computates the memory length of a shift register according to one given polynomials. |
|
||||||||||||
|
Computates the memory length of a shift register according to given polynomials. |
|
||||||||||||||||||||
|
Computes the number of output bits according to a given number of polynomials, the number of symbols per step and if it is a systematic shift register. |
|
||||||||||||||||||||
|
Returns the best (in terms of error correction capability) generator polynomials for the given memory length, number of input bits and number of output bits. |
|
||||||||||||
|
Computates the next state of a shift register according to a given input, and a given previous state. Implemented in simthlib::AbstractShiftRegisterBinary, and simthlib::ShiftRegisterM. |
|
||||||||||||
|
Implemented in simthlib::AbstractShiftRegisterBinary, simthlib::ShiftRegisterSystematicBinary, and simthlib::ShiftRegisterM. |
|
|
Implemented in simthlib::AbstractShiftRegisterBinary, and simthlib::ShiftRegisterM. |
|
|
|
|
|
Returns the memory length of the shift register. |
|
|
Reimplemented in simthlib::ShiftRegisterSystematicBinary. |
|
|
|
|
|
Implemented in simthlib::AbstractShiftRegisterBinary, and simthlib::ShiftRegisterM. |
|
|
|
|
|
|
1.4.1