primitive polynomial: x^4 + x + 1 (10011) generator primitive element is raised to powers 0, 1, 2, ... modulo the primitive polymonial to produce the sequence. The sequence is a Galois field representation. All of the sequences are equivalent as a Galois field representation. For example, if you modulo multiple the third and forth elements (powers 2 and 3) the result is the sixth element (power 2+3=5): 0100 * 1000 mod 10011 = 0110 (GF2 polynomial math) 0011 * 1100 mod 10011 = 0111, etc. note that sequence 1 is sequence 8 reversed and the generator primitive elements are reciprocals sequence 2 is sequence 7 reversed and the generator primitive elements are reciprocals sequence 3 is sequence 6 reversed and the generator primitive elements are reciprocals sequence 4 is sequence 5 reversed and the generator primitive elements are reciprocals Note that the first and last sequence can be generated with a shift register that XORs with the generator when a non-zero bit is shifted out This is called a Galois LFSR. The generator shows how to compute the next element from the current with a state machine. The next element is found by XORing each generator row that has a non-zero corresponding coefficient in the current element. generator primitive element: 10 ELEMENT ORDER GENERATOR 0001 1 0010 0010 15 0100 0100 15 1000 1000 5 0011 0011 15 0110 3 1100 5 1011 15 0101 15 1010 5 0111 3 1110 15 1111 5 1101 15 1001 15 0001 1 100010011010111 0 010011010111100 3 001001101011110 2 000100110101111 1 generator primitive element: 100 ELEMENT ORDER GENERATOR 0001 1 0100 0100 15 1000 0011 15 0011 1100 5 0110 0101 15 0111 3 1111 5 1001 15 0010 15 1000 5 0110 3 1011 15 1010 5 1110 15 1101 15 0001 1 100010011010111 0 101011110001001 8 001001101011110 2 010111100010011 9 000100110101111 1 generator primitive element: 11 ELEMENT ORDER GENERATOR 0001 1 0011 0011 15 0110 0101 15 1100 1111 5 1011 0010 15 0110 3 1010 5 1101 15 0100 15 1100 5 0111 3 1001 15 1000 5 1011 15 1110 15 0001 1 100010011010111 0 111100010011010 12 010111100010011 9 001101011110001 5 000100110101111 1 generator primitive element: 1011 ELEMENT ORDER GENERATOR 0001 1 1011 1011 15 0101 1001 15 1010 1100 5 0111 1101 15 0110 3 1111 5 0011 15 1110 15 1000 5 0111 3 0100 15 1010 5 0010 15 0101 15 0001 1 111010110010001 010001111010110 000111101011001 011110101100100 generator primitive element: 101 ELEMENT ORDER GENERATOR 0001 1 0101 0101 15 1010 0010 15 0111 1010 5 1110 0100 15 0111 3 1000 5 1110 15 0011 15 1111 5 0110 3 1101 15 1100 5 1001 15 1011 15 0001 1 generator primitive element: 1110 ELEMENT ORDER GENERATOR 0001 1 1110 1110 15 1111 1011 15 1101 1000 5 1001 1001 15 0111 3 1100 5 0100 15 1101 15 1010 5 0110 3 0010 15 1111 5 0101 15 0011 15 0001 1 generator primitive element: 1101 ELEMENT ORDER GENERATOR 0001 1 1101 1101 15 1001 1110 15 0001 1010 5 0010 1011 15 0110 3 1000 5 0010 15 1001 15 1111 5 0111 3 0101 15 1100 5 0011 15 0100 15 0001 1 generator primitive element: 1001 ELEMENT ORDER GENERATOR 0001 1 1001 1001 15 0001 1101 15 0010 1111 5 0100 1110 15 0111 3 1010 5 0101 15 1011 15 1100 5 0110 3 0011 15 1000 5 0100 15 0010 15 0001 1 100010011010111 0 111101011001000 000111101011001 001111010110010 011110101100100 How is the generator computed? row1: (primitive element) * 2^0 mod primitive polynomial row2: (primitive element) * 2^1 mod primitive polynomial row3: (primitive element) * 2^2 mod primitive polynomial row4: (primitive element) * 2^3 mod primitive polynomial The transpose of the generator matricies also produce maximal length sequences, but they are not Galois field reprentations. The sequences produced by the transpose of the first and last sequence above are known as Fibonacci LFSR sequences and can be implemented easily with a shift register. generator primitive element: 10 ELEMENT GENERATOR 0001 1000 1000 1001 0100 0010 0010 0100 1001 1100 0110 1011 0101 1010 1101 1110 1111 0111 0011 0001 100010011010111 0 000100110101111 1 001001101011110 2 010011010111100 3 generator primitive element: 100 ELEMENT GENERATOR 0001 0100 0100 1100 1001 1001 0110 0010 0101 1101 1111 0011 1000 0010 1100 1011 1010 1110 0111 0001 generator primitive element: 11 ELEMENT GENERATOR 0001 1001 1001 1011 0101 0110 1111 1100 1000 1100 1010 0111 0100 0110 1101 0011 0010 1011 1110 0001