m-sequence Generator in MATLAB for 5G NR

This page covers 5G NR m-sequence. It mentions simulation of m-sequence generator in MATLAB and use of m-sequence in 5G NR technology.

Introduction

There are three sequences used in 5G NR wireless system viz. Zadoff chu sequence, gold sequence and m-sequence. Gold sequence is used in CP-OFDM, Zadoff-chu sequence is used in DFT-s-OFDM (for SSS) and m-sequence is used in PSS.

m-sequence use in 5G NR

  • It is a BPSK modulated sequence with length of 127.
  • It is used for NR PSS (Primary Synchronization Signal).
  • It is used to fix time/frequency offset ambiguity problem encountered in zadoff-chu sequence used in the previous LTE technology.
  • PSS is part of 5G NR SS along with SSS.
  • The combination of SS and PBCH is referred to as SSB in NR.
  • Two m-sequences are used to generate gold sequence for 5G NR. It is used in PSS sequence generation as defined in TS 38.211.

It is represented by dPSS(n)d_{PSS}(n) and it is determined by NID(2)N_{ID}^{(2)}.

The m-sequence can be generated using following equation.

dPSS(n)=12x(m)d_{PSS}(n) = 1 - 2*x(m), Where,

x(i+7)={x(i+4)+x(i)}mod2x(i+7) = \{x(i+4) + x(i)\} \mod 2

m=(n+43NID(2))mod127m = (n + 43*N_{ID}^{(2)}) \mod 127

0<=n<1270<=n<127 , NIDcell=3NID(1)+NID(2)N_{ID}^{cell} = 3*N_{ID}^{(1)} + N_{ID}^{(2)}

NID(1){0,1,...,335}N_{ID}^{(1)} \in \{0, 1, ...,335\}

NID(2){0,1,2}N_{ID}^{(2)} \in \{0, 1, 2\}

The difference between NR PSS and LTE PSS is as follows.

  • NR PSS uses m-sequence where as LTE PSS uses zadoff-chu sequence.

  • LTS PSS is mapped on 72 subcarriers where as NR PSS is mapped on 127 active subcarriers.

  • 5G NR PSS is defined in TS 38.211 where as LTE PSS is defined in TS 36.211 document.

  • dPSS(n)=12x(m)d_{PSS}(n) = 1 - 2*x(m),

  • du(n)=ej[πun(n+1)/63]d_u(n) = e^{-j*[\pi*u*n*(n+1)/63]} , n = 0, 1, …30

  • du(n)=ej[πu(n+1)(n+2)/63]d_u(n) = e^{-j*[\pi*u*(n+1)*(n+2)/63]} , n = 31, 32, …61

m-sequence Generator in MATLAB

  • Mathworks database has following m-sequence generation program with m-files.
  • Download version 1.0.0.0 developed by Giedrius Buracas from following link using login details after subscribing with mathworks.