LFSR / PRBS — Overview, Families & Architecture
Overview
Linear Feedback Shift Registers (LFSRs) and Pseudo‑Random Binary Sequences (PRBS) are compact, deterministic generators of pseudo‑random sequences with excellent statistical properties. They are used in test pattern generation, scramblers, whitening engines, BIST, spread‑spectrum systems, radar, correlators, and high‑speed serial link validation.
Their behavior is defined by polynomials over GF(2), making them mathematically related to CRCs but optimized for sequence generation.
1. Why LFSRs and PRBS Matter
- test and validation of SERDES, PHYs, and datapaths
- reproducible patterns with controlled statistics
- scramblers and whitening engines
- BER measurement and stress testing
- BIST and pseudo‑random pattern generation
- extremely low hardware cost
- high speed (single XOR depth in Galois form)
2. PRBS Families
PRBS sequences use primitive polynomials to achieve maximal length 2^N-1.
Common families:
- PRBS7 — low‑speed links
- PRBS9 — legacy telecom
- PRBS11 — optical/RF
- PRBS15 — general‑purpose testing
- PRBS23 — telecom, DSSS
- PRBS31 — high‑speed SERDES (10G/25G/40G/100G)
Each family is defined by:
- polynomial degree
- tap positions
- sequence length
- statistical properties
PRBS31 is the de‑facto standard for stressing high‑speed CDRs.
3. Primitive Polynomials and Maximal Length
An LFSR is maximal‑length when its polynomial is primitive over GF(2).
Examples:
- PRBS7: x^7+x^6+1
- PRBS15: x^{15}+x^{14}+1
- PRBS23: x^{23}+x^{18}+1
- PRBS31: x^{31}+x^{28}+1
The all‑zero state is forbidden.
4. Fibonacci and Galois Architectures
Fibonacci LFSR
- feedback XOR applied at the input
- direct mapping from polynomial
- higher XOR depth for large polynomials
Galois LFSR
- feedback distributed across taps
- lower XOR depth
- better timing closure
- preferred for high‑speed PRBS31 and scramblers
Both forms generate the same sequence when configured correctly.
5. Parallel LFSR / PRBS Generators
Parallel LFSRs unroll the recurrence to generate multiple bits per cycle.
Used in:
- wide datapaths (16/32/64/128 bit)
- scramblers
- high‑speed serializers
- protocol‑specific randomizers
Parallelization uses the same GF(2) matrix derivation as parallel CRCs.
6. Sequence Properties
Maximal‑length LFSRs exhibit:
- uniform distribution of 0s and 1s
- two‑level autocorrelation
- flat spectrum except for DC notch
- deterministic repeatability
- sensitivity to initial seed
Ideal for stressing communication channels and validating signal integrity.
7. RTL Architecture
Typical signals:
lfsr_reg[N-1:0]— internal stateseed— non‑zero initializationenable— update controlprbs_out— output bit or word
Implementation notes:
- never allow all‑zero state
- seed must be non‑zero
- Galois preferred for timing
- output can be MSB, LSB, or any tap
8. Primitive Polynomial Reference Table
| PRBS Type | Polynomial (hex) | Expanded Polynomial | Length |
|---|---|---|---|
| PRBS7 | 0x48 | x^7+x^6+1 | 2^7-1=127 |
| PRBS15 | 0x6000 | x^{15}+x^{14}+1 | 2^{15}-1=32767 |
| PRBS23 | 0x00400020 | x^{23}+x^{18}+1 | 2^{23}-1 |
| PRBS31 | 0x10000008 | x^{31}+x^{28}+1 | 2^{31}-1 |
9. Applications
- BERTs and serial link testing
- scramblers and descramblers
- spread‑spectrum systems
- radar and correlators
- memory/storage randomization
- BIST
- pseudo‑random pattern generation
10. Use in TRNG Conditioning
LFSRs are deterministic and cannot generate entropy, but they are widely used as whitening and decorrelation stages in TRNGs.
They remove bias and spread entropy across bits after physical noise extraction.