gsmDownlinkConfig

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

Описание

The gsmDownlinkConfig объект является объектом строения системы координат TDMA нисходящего канала GSM. Использование gsmDownlinkConfig объекты для создания сигналов нисходящего канала GSM.

Создание

Описание

пример

cfggsmdl = gsmDownlinkConfig создает объект строения системы координат TDMA нисходящего канала GSM.

пример

cfggsmdl = gsmDownlinkConfig(sps) устанавливает SamplesPerSymbol свойство к sps.

пример

cfggsmdl = gsmDownlinkConfig(___,Name,Value) задает один или несколько аргументы пары "имя-значение", используя любой из предыдущих синтаксисов. Для примера, 'RiseTime',4 устанавливает время нарастания пакета на 4 символы. Заключайте каждое свойство в кавычки. Задайте аргументы пары "имя-значение" после всех других входных параметров.

Свойства

расширить все

Выборки на символ, заданные как положительное целое число, кратное 4.

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

Типы пакета для временных пазов 0-7 в системе координат TDMA, заданные как один из следующих опций:

  • Восьмиэлементный вектор-строка, где каждое значение "NB", "FB", "SB", "Dummy", или "Off" - Каждый элемент определяет тип пакета для соответствующего временного паза.

  • "NB" - Передайте данные, используя нормальный пакет для каждого временного паза.

  • "FB" - Передайте данные, используя пакет коррекции частоты для каждого временного паза.

  • "SB" - Передайте данные с помощью пакета временной синхронизации для каждого временного паза.

  • "Dummy" - Передайте данные с помощью фиктивного пакета для каждого временного паза.

  • "Off" - Все восемь временных пазы не содержат данных.

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

Примечание

The BurstType свойство является перечислением. Для выполнения генерации кода смотрите пример генерации кода и генерации MEX для GSM Nownlink Waveform.

Пример: ["NB" "AB" "AB" "NB" "Off" "NB" "AB" "Off"] конфигурирует систему координат, чтобы использовать нормальные пакеты в временных пазах 0, 3 и 5, использовать пакеты доступа в временных пазах 1, 2 и 6 и не передавать данные в временных пазах 4 и 7.

Код обучающей последовательности (TSC) для нормальных пакетов во временных пазах 0-7 в системе координат TDMA, заданный как один из следующих опций:

  • Восьмиэлементный вектор-строка из целых чисел в области значений [0, 7] - Каждый элемент задает значение TSC для соответствующего нормального временного паза пакета.

  • Целое число в области значений [0, 7] - задает значение TSC для каждого обычного временного паза пакета.

Для получения дополнительной информации смотрите Код обучающей последовательности (TSC).

Пример: [5 7 0 0 0 0 0 0] конфигурирует систему координат, чтобы использовать обучающую последовательность 5 во времени паза 0, обучающая последовательность 7 во временном пазе 1 и обучающие последовательности 0 во временных пазах с 2 по 7.

Зависимости

Чтобы включить это свойство для временного паза, установите соответствующий элемент BurstType на "NB".

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

Ослабление степени в дБ для временных пазов 0-7 в системе координат TDMA, заданное как один из следующих опций:

  • Восьмиэлементный вектор-строка неотрицательных целых чисел - Каждый элемент задает значение степени ослабления для соответствующего временного паза.

  • Неотрицательное целое число - задает значение ослабления степени для каждого временного паза.

Пример: [0 0 0 0 0 0 0 3] конфигурирует систему координат, чтобы применить ослабление 0 дБ к степени сигнала пакета во временном пазе от 0 до 6 и 3 дБ ослабления к степени сигнала пакета во временном пазе 7.

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

Время нарастания пакета в символах, заданное как положительная скалярная величина в область значений [1/ SamplesPerSymbol, 29], где разрешение шага 1/ SamplesPerSymbol. Общая длительность нарастания и опускания (RiseTime - RiseDelay + FallTime + FallDelay) должно быть менее 9,25 символов. Характерная форма поднимающегося ребра всплеска синусоидальная.

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

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

Задержка увеличения пакета в символах, заданная как положительная скалярная величина в область значений [-10, 10], где разрешение шага 1/ SamplesPerSymbol. Общая длительность нарастания и опускания (RiseTime - RiseDelay + FallTime + FallDelay) должно быть менее 9,25 символов. Задержка нарастания пакета измеряется относительно начала полезной части пакета. Для получения дополнительной информации смотрите Системы координат GSM, Временные пазы и Пакеты.

Когда задержка роста пакета 0, пакет достигает полной амплитуды в начале полезной части пакета. Когда задержка роста пакета положительная, пакет достигает полной амплитуды RiseDelay символы после начала полезной части. Когда задержка роста пакета отрицательная, пакет достигает полной амплитуды RiseDelay символы перед началом полезной детали.

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

Пакетное время спада в символах, заданное как положительная скалярная величина в область значений [1/ SamplesPerSymbol, 29], где разрешение шага 1/ SamplesPerSymbol. Общая длительность нарастания и опускания (RiseTime - RiseDelay + FallTime + FallDelay) должно быть менее 9,25 символов. Характерная форма падающего ребра всплеска синусоидальная.

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

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

Задержка падения пакета в символах, заданная как положительная скалярная величина в область значений [-10, 10], где разрешение шага 1/ SamplesPerSymbol. Общая длительность нарастания и опускания (RiseTime - RiseDelay + FallTime + FallDelay) должно быть менее 9,25 символов. Задержку падения пакета измеряют относительно конца полезной части пакета. Для получения дополнительной информации смотрите Системы координат GSM, Временные пазы и Пакеты.

Когда задержка падения пакета 0, пакет начинает уменьшаться от полной амплитуды в конце полезной части пакета. Когда задержка падения пакета положительная, пакет начинает уменьшаться с полной амплитуды FallDelay символы после окончания полезной части. Когда задержка падения всплеска отрицательная, пакет начинает уменьшаться с полной амплитуды FallDelay символы перед концом полезной детали.

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

Примеры

свернуть все

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

Создайте объект строения системы координат 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

Отображение информации о сконфигурированных 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. Axes 1 with title GSM Downlink Waveform - Amplitude contains an object of type line. Axes 2 with title GSM Downlink Waveform - Phase contains an object of type line.

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

Создайте объект строения системы координат TDMA нисходящего канала GSM, задавая 8 выборок на символы.

sps = 8;
cfggsmdl = gsmDownlinkConfig(sps)
cfggsmdl = 
  gsmDownlinkConfig with properties:

           BurstType: [NB    NB    NB    NB    NB    NB    NB    NB]
    SamplesPerSymbol: 8
                 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

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

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

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. Axes 1 with title GSM Downlink Waveform - Amplitude contains an object of type line. Axes 2 with title GSM Downlink Waveform - Phase contains an object of type line.

Создайте два объекта строения системы координат TDMA нисходящего канала GSM. Задайте настройки по умолчанию для первого gsmDownlinkConfig объект и настройте степень сигнала за временной паз для второго. Сгенерируйте формы сигналов 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

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

cfggsmdl2 = gsmDownlinkConfig('Attenuation',[1 0 3 4 5 6 4 2])
cfggsmdl2 = 
  gsmDownlinkConfig with properties:

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

Отображение информации о сконфигурированных 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, содержащие одну систему координат TDMA, с помощью gsmFrame функция. Системы координат TDMA GSM имеют восемь временных пазы, каждый разделен защитным периодом 8,25 символов или приблизительно 30,46x10e-3 мс разделяет каждый временной паз. Постройте график каждой формы сигнала GSM.

waveform = gsmFrame(cfggsmdl);
waveform2 = gsmFrame(cfggsmdl2);

t = (0:length(waveform)-1)/Rs*1e3;
subplot(2,1,1)
plot(t,[abs(waveform),abs(waveform2)])
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)),unwrap(angle(waveform2))])
grid on
title('GSM Downlink Waveform - Phase')
xlabel('Time (ms)')
ylabel('Phase (rad)')

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

Сгенерируйте и запустите MEX-функцию формы сигнала GSM из функции helper createDownlinkWaveform. The createDownlinkWaveform Функция helper создает сигнал нисходящего канала GSM.

Запись функции MATLAB

Откройте createDownlinkWaveform.m, чтобы увидеть код. The createDownlinkWaveform функция helper генерирует сигнал нисходящего канала GSM при помощи gsmDownlinkConfig объект и gsmInfo и gsmFrame функций.

Сгенерируйте сигнал GSM

Используйте createDownlinkWaveform вспомогательная функция для создания формы сигнала GSM, содержащей две системы координат TDMA, и последующего построения графика формы волны.

[x,t] = createDownlinkWaveform(2);

figure
subplot(2,1,1);
plot(t,abs(x));
grid on;
title('GSM Downlink Waveform - Amplitude');
xlabel('Time (ms)');
ylabel('Amplitude')
subplot(2,1,2);
plot(t,unwrap(angle(x)));
grid on;
title('GSM Downlink Waveform - Phase');
xlabel('Time (ms)');
ylabel('Phase (rad)')

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

Сгенерируйте MEX-функцию

Генерация кода по умолчанию соответствует генерации кода MEX, когда вы не задаете цель сборки. По умолчанию codegen называет сгенерированную MEX-функцию createDownlinkWaveform_mex. Сгенерируйте MEX-функцию из createDownlinkWaveform helper, а затем запустите MEX-функцию, чтобы создать две системы координат TDMA.

codegen createDownlinkWaveform -args 3
Code generation successful.

Сгенерируйте форму волны, используя MEX-функцию

Запустите MEX-функцию и постройте график результатов. Поскольку форма волны создается с помощью случайных данных, график фазы изменяется каждый раз, когда вы запускаете generateDownlinkFrame вспомогательная функция или createDownlinkWaveform_mex функция.

[x,t] = createDownlinkWaveform_mex(2);

figure
subplot(2,1,1);
plot(t,abs(x));
grid on;
title('MEX - GSM Downlink Waveform - Amplitude');
xlabel('Time (ms)');
ylabel('Amplitude')
subplot(2,1,2);
plot(t,unwrap(angle(x)));
grid on;
title('MEX - GSM Downlink Waveform - Phase');
xlabel('Time (ms)');
ylabel('Phase (rad)')

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

Моделируйте генератор формы волны GSM ® в Simulink ® с помощью блоков MATLAB function и Communications Toolbox™.

Генерация сигналов нисходящего канала GSM

Блок Функция MATLAB (Simulink) содержит gsmDownlinkWaveform код функции. Код в блоке MATLAB Function создает сигнал GSM при помощи gsmDownlinkConfig объект и gsmFrame функция.

The gsmDownlinkConfig объект задает 16 выборок на символ, и строение временного паза для системы координат GSM является этой таблицей.

$$ \begin{array}{|c|l|c|}
\hline\vphantom{\displaystyle\int}\mathbf{Timeslot}&\begin{array}{l}\mathbf{Burst\ Type}\end{array}&\mathbf{Attenuation}\\
\hline0&\begin{array}{l}\mathrm{Normal\ burst}\end{array}&\begin{array}{l}\mathrm{0\ dB}\end{array}\\
\hline1&\begin{array}{l}\mathrm{Frequency Correction\ burst}\end{array}&\begin{array}{l}\mathrm{0\ dB}\end{array}\\
\hline2&\begin{array}{l}\mathrm{Normal\ burst}\end{array}&\begin{array}{l}\mathrm{3\ dB}\end{array}\\
\hline3&\begin{array}{l}\mathrm{Synchronization\ burst}\end{array}&\begin{array}{l}\mathrm{0\ dB}\end{array}\\
\hline4&\begin{array}{l}\mathrm{No\ data}\end{array}&\begin{array}{l}\mathrm{0\ dB}\end{array}\\
\hline5&\begin{array}{l}\mathrm{Normal\ burst}\end{array}&\begin{array}{l}\mathrm{6\ dB}\end{array}\\
\hline6&\begin{array}{l}\mathrm{Dummy\ burst}\end{array}&\begin{array}{l}\mathrm{0\ dB}\end{array}\\
\hline7&\begin{array}{l}\mathrm{Normal\ burst}\end{array}&\begin{array}{l}\mathrm{3\ dB}\end{array}\\
\hline\end{array} $$

Сигнал выхода имеет 16 выборок для каждого символа GMSK. The gsmFrame функция генерирует выборки формы волны.

Исследуйте модель

В соответствии со стандартами GSM 3GPP TS 45.001 и 3GPP TS 45.002, шаг расчета блока MATLAB Function, который содержит gsmDownlinkWaveform код функции устанавливается на скорость символа GSM 1625e3/6 символов в секунду. Отображение текущей gsmDownlinkConfig настройки объекта при помощи gsmInfo функция.

wfInfo = 

  struct with fields:

              SymbolRate: 2.7083e+05
              SampleRate: 4.3333e+06
    BandwidthTimeProduct: 0.3000
    BurstLengthInSymbols: 156.2500
       NumBurstsPerFrame: 8
    BurstLengthInSamples: 2500
    FrameLengthInSamples: 20000

Для шага расчета модели блока Функции MATLAB (Simulink) задано значение wfInfo.FrameLengthInSamples/wfInfo.SampleRate. Чтобы просмотреть параметр Шага расчета, откройте диалоговое окно Параметров блоков, щелкнув правой кнопкой мыши блок MATLAB Function и выбрав Параметры блоков (Подсистема).

Перед запусками симуляции необходимо сконфигурировать частоту дискретизации блока MATLAB Function. The PreLoadFcn и InitFcn функции обратного вызова конфигурируют блок MATLAB Function путем создания gsmDownlinkConfig объект и wfInfo структура. Чтобы просмотреть функции обратного вызова, на вкладке Моделирование, в разделе Setup, выберите Настройки модели > Свойства модели. Затем на вкладке Callbacks выберите PreLoadFcn или InitFcn функция обратного вызова на панели обратных коллбэков Model.

Результаты

Отобразите сигнал временного интервала и спектрограмму путем выполнения симуляции.

Подробнее о

расширить все

Ссылки

[1] 3GPP TS 45.001. "GSM/EDGE Physical слоя на радио- путь. Общее описание "3rd Генерация Partnership Project; Группа технических спецификаций Радиосеть доступ.

[2] 3GPP TS 45.002. «GSM/EDGE Multiplexing and multiple access on the radio пути». 3rd Генерация Partnership Project; Группа технических спецификаций Радиосеть доступ.

[3] 3GPP TS 45.004. «GSM/EDGE Modulation». 3-ья Генерация проект партнерства; Группа технических спецификаций Радиосеть доступ.

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

.
Введенный в R2019b
Для просмотра документации необходимо авторизоваться на сайте