C-INIT
Understanding C-INIT
Every scrambled bit in an LTE or 5G NR transmission depends on c_init. This 31-bit number is computed from parameters like the user's RNTI, the cell ID, the slot number, and the channel type. It seeds the Gold code generator that produces the pseudo-random scrambling sequence. Both transmitter and receiver must compute the same c_init to produce the same sequence; otherwise, descrambling fails and all data is lost.
C-INIT Formulas
31-bit seed for Gold code pseudo-random sequence generator (3GPP TS 38.211). Seeds scrambling (PDSCH: c init = n RNTI ×2 14 + q×2 13 +...
Key specifications:
-1 bits | 16 bits | 0 dB | 1 mW | 30 dB
Power: P(dBm) = 10log(PmW), 0dBm = 1mW
C-INIT by Channel/Signal
| Channel | cinit Depends On | Purpose | Updates |
|---|---|---|---|
| PDSCH | RNTI, q, n_ID | Data scrambling | Per TB |
| PUSCH | RNTI, n_ID | UL scrambling | Per TB |
| DMRS | Slot, symbol, SCID | Channel est. | Per slot |
| CSI-RS | Slot, symbol, config | CSI measurement | Per resource |
| PDCCH | n_ID | Control scrambling | Semi-static |
Key Equations
Power: dB = 10log(P2/P1)
Voltage: dB = 20log(V2/V1)
dBm to watts:
P(W) = 10(dBm−30)/10
0 dBm = 1 mW, +30 dBm = 1 W
Wavelength:
λ = c/f = 300/f(MHz) meters
Comparison
| Aspect | C-INIT Spec | Typical Range | Impact | Design Note |
|---|---|---|---|---|
| Primary function | 31-bit seed for Gold code pseudo-random... | Application-dep. | Critical | Verify in sim |
| Operating range | Seeds scrambling (PDSCH: c init = n RNTI... | Application-dep. | Critical | Verify in sim |
| Performance | Different c init = orthogonal sequences... | Application-dep. | Critical | Verify in sim |
| Integration | Understanding C-INIT Every scrambled bit... | Application-dep. | Critical | Verify in sim |
| Trade-off | This 31-bit number is computed from para... | Application-dep. | Critical | Verify in sim |
Frequently Asked Questions
Uses?
Seeds Gold code for: PDSCH/PUSCH scrambling (per-user, per-cell), DMRS (channel estimation, per-slot), CSI-RS, PRACH preambles. Different c_init = orthogonal sequences. Multi-user/multi-cell separation.
Generator?
Two length-31 m-sequences XORed. x1: fixed init. x2: initialized from c_init (31 bits). Nc=1600 offset. Period: 2^31-1 bits. Gold codes have bounded cross-correlation for interference averaging.
Testing?
Wrong c_init = complete data loss (descrambled data = noise). Test equipment must compute exact c_init per 3GPP spec. Conformance tests (TS 38.521) specify exact values. Critical for UE validation.