RENEWLab  1.1.0
RENEW project
generate_sequence Namespace Reference

Functions

def generate_training_seq (preamble_type='lts', seq_length=0, cp=32, upsample=1, reps=10)
 
def preamble_generator (N, index=0, CP=0, bpsk=0, shift=0, upsample=1)
 
def read_precomp_code (N, index=0)
 

Variables

def sequence_sts = generate_training_seq('sts', reps=10)
 
 sequence_lts
 
 lts_f
 
 cp
 
 upsample
 
def sequence_zadoff = generate_training_seq('lte_zadoffchu_seq', seq_length=63, root=25)
 
def sequence_goldIfft = generate_training_seq('gold_ifft', seq_length=128, cp=0, upsample=1)
 
 l_re = list(np.real(sequence_goldIfft[0][0:128]))
 
 l_im = list(np.imag(sequence_goldIfft[0][0:128]))
 

Function Documentation

◆ generate_training_seq()

def generate_sequence.generate_training_seq (   preamble_type = 'lts',
  seq_length = 0,
  cp = 32,
  upsample = 1,
  reps = 10 
)
Generate any of the following preambles/training sequences.
802.11 STS, 802.11 LTS, Zadoff-Chu, and Gold Sequence (ifft)

ARGS:
    preamble_type: sequence name
    seq_length: length of sequence, doesn't apply to all types
    cp: cyclic prefix
    upsample: upsampling factor
    reps: number of symbol repetition. Specific to STS

RETURNS:
    - For STS, LTS, and Zadoff-Chu: Training Sequence
    - For Gold Sequences: Matrix where each row is an individual preamble.
        Row are ordered such that top row has the highest auto-correlation
        highest_peak_to_second_ratio, and corresponding index

** MORE INFO ON EACH SEQUENCE TYPE **
STS:
    Generate a time-domain 802.11 STS with:
    #reps repetitions of one STS symbol
    All other input arguments are ignored

    Example:
        generate_training_seq(preamble_type='sts', seq_length=[], cp=[], upsample=[], reps=10)

LTS:
    Generate a time-domain 802.11 LTS with:
    Cyclic prefix of "cp" (32)
    Upsampled by a factor of "upsample" (1)
    Seq_length is ignored for LTS
    Reps is ignored for STS

    Example:
        generate_training_seq(preamble_type='lts', seq_length=[], cp=32, upsample=1, reps=[])

lte_zadoffchu_seq:
    Generate a 3GPP-based Zadoff-Chu sequence of complex symbols.
    SEQ = LTEZADOFFCHUSEQ(R, N) generates a Zadoff-Chu sequence
    of length N as per LTE specifications. The output SEQ is an N-length
    column vector of complex symbols.

    Example:
        Generate the 25th root length-63 Zadoff-Chu sequence
        seq = lteZadoffChuSeq(25, 63);

    Reference:
    3rd Generation Partnership Project, Technical Specification Group Radio
    Access Network, Evolved Universal Terrestrial Radio Access (E-UTRA),
    Physical channels and modulation, Release 10, 3GPP TS 36.211, v10.0.0,
    2010-12.
    See also comm.PNSequence.
    Copyright 2012 The MathWorks, Inc.
    $Revision: 1.1.6.1 $ $Date: 2012/03/13 07:13:00 $

gold_ifft:
    Generates a Gold sequence and constructs a preamble with it

    Example:
        generate_training_seq(preamble_type='gold_ifft', seq_length=128, cp=0, upsample=1)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ preamble_generator()

def generate_sequence.preamble_generator (   N,
  index = 0,
  CP = 0,
  bpsk = 0,
  shift = 0,
  upsample = 1 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ read_precomp_code()

def generate_sequence.read_precomp_code (   N,
  index = 0 
)
Here is the caller graph for this function:

Variable Documentation

◆ cp

generate_sequence.cp

◆ l_im

generate_sequence.l_im = list(np.imag(sequence_goldIfft[0][0:128]))

◆ l_re

generate_sequence.l_re = list(np.real(sequence_goldIfft[0][0:128]))

◆ lts_f

generate_sequence.lts_f

◆ sequence_goldIfft

def generate_sequence.sequence_goldIfft = generate_training_seq('gold_ifft', seq_length=128, cp=0, upsample=1)

◆ sequence_lts

generate_sequence.sequence_lts

◆ sequence_sts

def generate_sequence.sequence_sts = generate_training_seq('sts', reps=10)

◆ sequence_zadoff

def generate_sequence.sequence_zadoff = generate_training_seq('lte_zadoffchu_seq', seq_length=63, root=25)

◆ upsample

generate_sequence.upsample