gsmFrame

Создайте форму волны GSM

Описание

пример

gsmWaveform = gsmFrame(gsmCfg) создает форму волны GSM с одной системой координат TDMA на основе объекта настройки входа GSM. Зашифрованное битовое поле пакетов данных о передаче заполнено случайными данными. Для получения дополнительной информации смотрите Системы координат GSM, Временные интервалы и Пакеты.

пример

gsmWaveform = gsmFrame(gsmCfg,numFrames) создает форму волны GSM, с numFrames тождественно сконфигурированные системы координат TDMA. В каждой системе координат зашифрованное битовое поле пакетов данных о передаче заполнено случайными данными. Для получения дополнительной информации смотрите Системы координат GSM, Временные интервалы и Пакеты.

Примеры

свернуть все

Создайте восходящий канал GSM объект настройки системы координат TDMA с настройками по умолчанию, и затем создайте форму волны GSM, содержащую одну систему координат TDMA. GSM системы координат TDMA имеет восемь временных интервалов, каждый разделенный защитным периодом 8,25 символов или о 30.46x10e-3 мс. Постройте форму волны GSM.

Создайте восходящий канал GSM объект настройки системы координат TDMA с настройками по умолчанию.

cfggsmul = gsmUplinkConfig
cfggsmul = 
  gsmUplinkConfig with properties:

           BurstType: [NB    NB    NB    NB    NB    NB    NB    NB]
    SamplesPerSymbol: 16
                 TSC: [0 1 2 3 4 5 6 7]
         Attenuation: [0 0 0 0 0 0 0 0]
            RiseTime: 2
           RiseDelay: 0
            FallTime: 2
           FallDelay: 0

   Read-only properties:
    No properties.

Отобразите информацию о сконфигурированном gsmUplinkConfig объект при помощи gsmInfo функция. Присвойте частоту дискретизации переменной, Rs, для использования в вычислении масштаба времени графика.

wfInfo = gsmInfo(cfggsmul)
wfInfo = struct with fields:
              SymbolRate: 2.7083e+05
              SampleRate: 4.3333e+06
    BandwidthTimeProduct: 0.3000
    BurstLengthInSymbols: 156.2500
       NumBurstsPerFrame: 8
    BurstLengthInSamples: 2500
    FrameLengthInSamples: 20000

Rs = wfInfo.SampleRate;

Создайте форму волны GSM при помощи gsmFrame функция, и затем строит форму волны GSM.

waveform = gsmFrame(cfggsmul);

t = (0:length(waveform)-1)/Rs*1e3;
subplot(2,1,1)
plot(t,abs(waveform))
grid on
axis([0 5 0 1.2])
title('GSM Uplink Waveform - Amplitude')
xlabel('Time (ms)')
ylabel('Amplitude')
subplot(2,1,2)
plot(t,unwrap(angle(waveform)))
grid on
title('GSM Uplink Waveform - Phase')
xlabel('Time (ms)')
ylabel('Phase (rad)')

Figure contains 2 axes objects. Axes object 1 with title GSM Uplink Waveform - Amplitude contains an object of type line. Axes object 2 with title GSM Uplink Waveform - Phase contains an object of type line.

Создайте GSM, передают в нисходящем направлении объект настройки системы координат TDMA с настройками по умолчанию, и затем создают форму волны GSM, содержащую пять систем координат TDMA. GSM системы координат TDMA имеет восемь временных интервалов, каждый разделенный защитным периодом 8,25 символов или о 30.46x10e-3 мс. Постройте форму волны GSM.

Создайте восходящий канал GSM объект настройки системы координат TDMA, задав 3 дБ затухания в прошлый временной интервал, чтобы помочь идентифицировать конец каждой системы координат.

cfggsmul = gsmUplinkConfig('Attenuation',[0 0 0 0 0 0 0 3])
cfggsmul = 
  gsmUplinkConfig with properties:

           BurstType: [NB    NB    NB    NB    NB    NB    NB    NB]
    SamplesPerSymbol: 16
                 TSC: [0 1 2 3 4 5 6 7]
         Attenuation: [0 0 0 0 0 0 0 3]
            RiseTime: 2
           RiseDelay: 0
            FallTime: 2
           FallDelay: 0

   Read-only properties:
    No properties.

Отобразите информацию о сконфигурированном gsmUplinkConfig объект при помощи gsmInfo функция. Присвойте длину системы координат в выборках к переменной, spf, для использования в вычислении масштаба времени графика.

wfInfo = gsmInfo(cfggsmul)
wfInfo = struct with fields:
              SymbolRate: 2.7083e+05
              SampleRate: 4.3333e+06
    BandwidthTimeProduct: 0.3000
    BurstLengthInSymbols: 156.2500
       NumBurstsPerFrame: 8
    BurstLengthInSamples: 2500
    FrameLengthInSamples: 20000

spf = wfInfo.FrameLengthInSamples;

Создайте форму волны GSM при помощи gsmFrame функция, и затем строит форму волны GSM. Прошлый временной интервал каждой системы координат составляет 3 дБ меньше, чем другие временные интервалы в той системе координат.

numFrames = 5;
waveform = gsmFrame(cfggsmul,numFrames);

t = 8*(0:length(waveform)-1)/spf;

numTS = 8*numFrames;
subplot(2,1,1)
plot(t,abs(waveform))
grid on
axis([0 numTS 0 1.2])
title('GSM Uplink Waveform - Amplitude')
xlabel('Time Slots')
ylabel('Amplitude')
subplot(2,1,2)
plot(t,unwrap(angle(waveform)))
grid on
title('GSM Uplink Waveform - Phase')
xlabel('Time Slots')
ylabel('Phase (rad)')

Figure contains 2 axes objects. Axes object 1 with title GSM Uplink Waveform - Amplitude contains an object of type line. Axes object 2 with title GSM Uplink Waveform - Phase contains an object of type line.

Создайте GSM, передают в нисходящем направлении объект настройки системы координат TDMA с настройками по умолчанию, и затем создают форму волны GSM, содержащую одну систему координат TDMA. Система координат TDMA GSM имеет восемь временных интервалов, каждый разделенный защитным периодом 8,25 символов или о 30.46x10e-3 мс. Постройте форму волны GSM.

Создайте объект настройки системы координат TDMA нисходящего канала GSM с настройками по умолчанию.

cfggsmdl = gsmDownlinkConfig
cfggsmdl = 
  gsmDownlinkConfig with properties:

           BurstType: [NB    NB    NB    NB    NB    NB    NB    NB]
    SamplesPerSymbol: 16
                 TSC: [0 1 2 3 4 5 6 7]
         Attenuation: [0 0 0 0 0 0 0 0]
            RiseTime: 2
           RiseDelay: 0
            FallTime: 2
           FallDelay: 0

   Read-only properties:
    No properties.

Отобразите информацию о сконфигурированном gsmDownlinkConfig объект при помощи gsmInfo функция. Присвойте частоту дискретизации переменной, Rs, для использования в вычислении масштаба времени графика.

wfInfo = gsmInfo(cfggsmdl)
wfInfo = struct with fields:
              SymbolRate: 2.7083e+05
              SampleRate: 4.3333e+06
    BandwidthTimeProduct: 0.3000
    BurstLengthInSymbols: 156.2500
       NumBurstsPerFrame: 8
    BurstLengthInSamples: 2500
    FrameLengthInSamples: 20000

Rs = wfInfo.SampleRate;

Создайте форму волны GSM при помощи gsmFrame функция, и затем строит форму волны GSM.

waveform = gsmFrame(cfggsmdl);

t = (0:length(waveform)-1)/Rs*1e3;
subplot(2,1,1)
plot(t,abs(waveform))
grid on
axis([0 5 0 1.2])
title('GSM Downlink Waveform - Amplitude')
xlabel('Time (ms)')
ylabel('Amplitude')
subplot(2,1,2)
plot(t,unwrap(angle(waveform)))
grid on
title('GSM Downlink Waveform - Phase')
xlabel('Time (ms)')
ylabel('Phase (rad)')

Figure contains 2 axes objects. Axes object 1 with title GSM Downlink Waveform - Amplitude contains an object of type line. Axes object 2 with title GSM Downlink Waveform - Phase contains an object of type line.

Входные параметры

свернуть все

Настройка GSM в виде gsmUplinkConfig или gsmDownlinkConfig объект.

Количество TDMA структурирует в форме волны в виде положительного целого числа.

Типы данных: double

Выходные аргументы

свернуть все

Выведите форму волны временного интервала, возвращенную как вектор-столбец с комплексным знаком длины N s, где N s представляет количество выборок временного интервала. Функция генерирует эту форму волны в форме комплексных выборок синфазной квадратуры (IQ).

Больше о

свернуть все

Системы координат GSM, временные интервалы и пакеты

В GSM передачи состоят из систем координат TDMA. Каждая система координат TDMA GSM состоит из восьми временных интервалов. Содержимое данных о передаче временного интервала называется burst. Как описано в Разделе 5.2 из 3GPP TS 45.011, временной интервал GSM имеет длительность с 156.25 символами при использовании периода обычного символа, который является временным интервалом 15/26 мс или приблизительно 576,9 микросекунд. Защитный период 8,25 символов или приблизительно 30,46 микросекунды разделяет каждый временной интервал. Стандарты GSM описывают символ как период на один бит. Поскольку GSM использует модуляцию GMSK, существует период одного бита за бит. Синхронизация передачи пакета в течение временного интервала задана в терминах битного номера (BN). BN относится к конкретному битному периоду в течение временного интервала. Бит с самым низким BN передается сначала. BN0 является первым битным периодом, и BN156 является последним битным четвертью периодом.

Это изображение от 3GPP TS 45.011 показывает отношение между различными типами системы координат и отношение между различными пакетными типами.

Эта таблица показывает поддерживаемые пакетные типы и их характеристики.

Разорвите типОписаниеСоедините направлениеПолезная длительность
NBНормальный пакетВосходящий канал/Нисходящий канал147
FBПакет коррекции частоты Нисходящий канал147
SBПакет синхронизацииНисходящий канал147
DummyФиктивный пакетНисходящий канал147
ABДоступ к пакетуВосходящий канал87
OffНикакой пакет не отправляетсяВосходящий канал/Нисходящий канал0

Полезная длительность, описанная в Разделе 5.2.2 из 3GPP TS 45.002, является характеристикой пакетов GSM. Полезная длительность или полезная часть, пакета задана как начало на полпути через BN0 и конечный период на половину бита перед запуском защитного периода. guard period является периодом между пакетами в последовательные временные интервалы. Этот рисунок, от Раздела 2.2 из 3GPP TS 45.004, показывает начальное и конечное различие на ½ биты между полезными и активными частями пакета.

Для получения дополнительной информации смотрите GSM Параметризация Системы координат TDMA для Генерации сигналов.

Код обучающей последовательности (TSC)

Нормальные пакеты включают поле битов обучающей последовательности, присвоенное немного шаблона на основе заданного TSC. Для GSM можно выбрать одну из этих восьми обучающих последовательностей в течение нормальных пакетных временных интервалов типа.

Код обучающей последовательности (TSC)

Биты обучающей последовательности (BN61, BN62, …, BN86)
0(0,0,1,0,0,1,0,1,1,1,0,0,0,0,1,0,0,0,1,0,0,1,0,1,1,1)
1(0,0,1,0,1,1,0,1,1,1,0,1,1,1,1,0,0,0,1,0,1,1,0,1,1,1)
2(0,1,0,0,0,0,1,1,1,0,1,1,1,0,1,0,0,1,0,0,0,0,1,1,1,0)
3(0,1,0,0,0,1,1,1,1,0,1,1,0,1,0,0,0,1,0,0,0,1,1,1,1,0)
4(0,0,0,1,1,0,1,0,1,1,1,0,0,1,0,0,0,0,0,1,1,0,1,0,1,1)
5(0,1,0,0,1,1,1,0,1,0,1,1,0,0,0,0,0,1,0,0,1,1,1,0,1,0)
6(1,0,1,0,0,1,1,1,1,1,0,1,1,0,0,0,1,0,1,0,0,1,1,1,1,1)
7(1,1,1,0,1,1,1,1,0,0,0,1,0,0,1,0,1,1,1,0,1,1,1,1,0,0)

Для получения дополнительной информации смотрите Раздел 5.2.3 в 3GPP TS 45.002.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Введенный в R2019b