semianalytic

Вычислите частоту ошибок по битам (BER) с помощью полуаналитического метода

Синтаксис

ber = semianalytic(txsig,rxsig,modtype,M,Nsamp)
ber = semianalytic(txsig,rxsig,modtype,M,Nsamp,num,den)
ber = semianalytic(txsig,rxsig,modtype,M,Nsamp,EbNo)
ber = semianalytic(txsig,rxsig,modtype,M,Nsamp,num,den,EbNo)
[ber,avgampl,avgpower] = semianalytic(...)

Описание

ber = semianalytic(txsig,rxsig,modtype,M,Nsamp) возвращает частоту ошибок по битам (BER) системы, которая передает комплексный основополосный сигнал вектора txsig и получает бесшумный комплексный основополосный сигнал вектора rxsig. Каждый из этих сигналов имеет Nsamp выборки на символ. Nsamp также частота дискретизации txsig и rxsig, в Гц. Функция принимает тот rxsig вход к фильтру приемника, и функция фильтрует rxsig с идеальным интегратором. modtype тип модуляции сигнала и M размер алфавита. Таблица ниже приводит допустимые значения для modtype и M.

Схема модуляцииЗначение modtypeДопустимые значения M
Дифференциальное манипулирование сдвига фазы (DPSK) 'dpsk' 2, 4
Минимальное манипулирование сдвига (MSK) с дифференциальным кодированием'msk/diff' 2
Минимальное манипулирование сдвига (MSK) с недифференциальным кодированием'msk/nondiff' 2
Манипулирование сдвига фазы (PSK) с дифференциальным кодированием, где смещение фазы созвездия 0 'psk/diff' 2, 4
Манипулирование сдвига фазы (PSK) с недифференциальным кодированием, где смещение фазы созвездия 0 'psk/nondiff' 2, 4, 8, 16, 32, или 64
Квадратурное манипулирование сдвига фазы смещения (OQPSK) 'oqpsk' 4
Квадратурная амплитудная модуляция (QAM) 'qam' 4, 8, 16, 32, 64, 128, 256, 512, 1024

'msk/diff' эквивалентно обычному MSK (устанавливающий 'Precoding' свойство объекта MSK к 'off'), в то время как 'msk/nondiff' эквивалентно предварительно закодированному MSK (устанавливающий 'Precoding' свойство объекта MSK к 'on').

Примечание

Выход ber верхняя граница на BER в этих случаях:

  • DQPSK (modtype = 'dpsk'M = 4)

  • Пересеките QAM (modtype = 'qam'M не полный квадрат). В этом случае обратите внимание, что верхняя граница, используемая здесь, немного более трудна, чем верхняя граница, используемая для перекрестного QAM в berawgn функция.

Когда функция вычисляет BER, она принимает, что символы серо-закодированы. Функция вычисляет BER для значений Eb/N0 в области значений [0:20] дБ и возвращает вектор из длины 21, чьи элементы соответствуют различным уровням Eb/N0.

Примечание

Необходимо использовать достаточно длинный векторный txsig, или иначе расчетный BER будет неточен. Если импульсная характеристика системы является символами L долго, длиной txsig должен быть, по крайней мере, ML. Общий подход должен начать с увеличенного бинарного псевдошума (PN) последовательность общей длины (log2M)ML. Увеличенная псевдошумовая последовательность является псевдошумовой последовательностью с дополнительным добавленным нулем, который делает распределение единиц и нулей равным.

ber = semianalytic(txsig,rxsig,modtype,M,Nsamp,num,den) совпадает с предыдущим синтаксисом, за исключением того, что функция фильтрует rxsig с приемником фильтруют вместо идеального интегратора. Передаточная функция фильтра приемника дана в убывающих степенях z векторами num и den.

ber = semianalytic(txsig,rxsig,modtype,M,Nsamp,EbNo) совпадает с первым синтаксисом, за исключением того, что EbNo представляет Eb/N0, отношение энергии, подведенной к долоту к шумовой степени спектральная плотность, в дБ. Если EbNo вектор, затем выход ber вектор, одного размера, чьи элементы соответствуют различным уровням Eb/N0.

ber = semianalytic(txsig,rxsig,modtype,M,Nsamp,num,den,EbNo) комбинирует функциональность предыдущих двух синтаксисов.

[ber,avgampl,avgpower] = semianalytic(...) возвращает среднюю комплексную амплитуду сигнала и среднюю степень rxsig после фильтрации его фильтром приемника и выборкой его на уровне символа.

Примеры

свернуть все

В этом примере показано, как использовать полуаналитический метод для анализа частоты ошибок по битам, с помощью 16-QAM модулируемого сигнала. Это также сравнивает коэффициенты ошибок, полученные из полуаналитического метода с теоретическими коэффициентами ошибок, полученными из опубликованных формул и вычисленного использования berawgn функция. Получившийся график показывает, что полученное использование коэффициентов ошибок этих двух методов почти идентично. Несоответствия между теоретическими и вычисленными коэффициентами ошибок происходят в основном из-за смещения фазы, вставленного через бесшумную модель канала.

Сгенерируйте сигнал сообщения длины> = ML.

M = 16; % Alphabet size of modulation
L = 1; % Length of impulse response of channel
msg = [0:M-1 0]; % M-ary message sequence of length > M^L

Модулируйте сигнал сообщения использование полосовой модуляции.

modsig = qammod(msg',M); % Modulate data
Nsamp = 16;
modsig = rectpulse(modsig,Nsamp); % Use rectangular pulse shaping.

Примените фильтр передачи.

txsig = modsig; % No filter in this example

Запустите txsig через бесшумный канал, применяя статическое смещение фазы 1 степени.

rxsig = txsig*exp(1i*pi/180);

Используйте semianalytic функция.

Задайте получить фильтр как пару входных параметров. В этом случае, num и den опишите идеальный интегратор.

num = ones(Nsamp,1)/Nsamp;
den = 1;
EbNo = 0:20; % Range of Eb/No values under study
ber = semianalytic(txsig,rxsig,'qam',M,Nsamp,num,den,EbNo);

Для сравнения вычислите теоретический BER.

bertheory = berawgn(EbNo,'qam',M);

Постройте вычисленный BER и теоретический BER.

figure; semilogy(EbNo,ber,'k*');
hold on; semilogy(EbNo,bertheory,'ro');
title('Semianalytic BER Compared with Theoretical BER');
legend('Semianalytic BER with Phase Offset',...
    'Theoretical BER Without Phase Offset','Location','SouthWest');
hold off;

Figure contains an axes. The axes with title Semianalytic BER Compared with Theoretical BER contains 2 objects of type line. These objects represent Semianalytic BER with Phase Offset, Theoretical BER Without Phase Offset.

Ограничения

Функция делает несколько важных предположений о системе связи. Смотрите, Когда Использовать Полуаналитический Метод, чтобы узнать, подходит ли ваша система связи для полуаналитического метода и semianalytic функция.

Больше о

свернуть все

Когда использовать полуаналитический метод

Метод, описанный в Результатах Эффективности через Моделирование хорошо для большого множества систем связи, но, может быть предельно длительным для небольших коэффициентов ошибок (например, 10-6 или меньшим). В этом разделе описывается использовать полуаналитический метод в качестве альтернативного способа вычислить коэффициенты ошибок. Для определенных типов систем полуаналитический метод может привести к результатам быстрее, чем неаналитический метод, который использует симулированные данные только.

Симулируемая система связи должна удовлетворить этим характеристикам при использовании полуаналитического метода.

  • Любые эффекты многопутевого исчезновения, квантования и нелинейности усилителя должны предшествовать эффектам шума в фактическом смоделированном канале.

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

  • Бесшумная симуляция не имеет никаких ошибок в полученном сигнальном созвездии. Искажения из источников кроме шума должны быть достаточно умеренными, чтобы сохранить каждую точку сигнала в ее правильной области решения. Например, если смоделированная система имеет вращение фазы, которое помещает полученные очки сигнала за пределами их соответствующих областей решения, полуаналитический метод не подходит, чтобы предсказать производительность системы.

Если этим характеристикам не удовлетворят, расчетный BER будет ниже, чем ожидалось. Кроме того, semianalytic функция принимает, что шум в фактическом смоделированном канале является Гауссовым. Для получения дополнительной информации о том, как адаптировать полуаналитический метод к негауссову шуму, смотрите обсуждение обобщенных экспоненциальных распределений в [1].

Процедура для Использования полуаналитического метода

Эти шаги описывают, как вы обычно реализовывали бы полуаналитический метод при помощи semianalytic функция.

  1. Сгенерируйте сигнал сообщения, содержащий, по крайней мере , символы ML, где M является размером алфавита модуляции, и L является длиной импульсной характеристики канала в символах. Общий подход должен начать с увеличенного бинарного псевдошума (PN) последовательность общей длины (log2M)ML. Увеличенная псевдошумовая последовательность является псевдошумовой последовательностью с дополнительным добавленным нулем, который делает распределение единиц и нулей равным.

  2. Модулируйте поставщика услуг с сигналом сообщения использование полосовой модуляции. Поддерживаемые типы модуляции перечислены на странице с описанием для semianalytic. Сформируйте результирующий сигнал с формированием меандра, с помощью фактора сверхдискретизации, что вы будете дальнейшее использование, чтобы отфильтровать модулируемый сигнал. Сохраните результат этого шага как txsig для дальнейшего использования.

  3. Отфильтруйте модулируемый сигнал с фильтром передачи. Этот фильтр часто является фильтром приподнятого косинуса квадратного корня, но можно также использовать Баттерворта, функцию Бесселя, Чебышевский тип 1 или 2, эллиптического, или более общего КИХ или БИХ-фильтр. Если вы используете фильтр приподнятого косинуса квадратного корня, используйте его на несверхдискретизированном модулируемом сигнале и укажите, что сверхдискретизация включает функцию фильтрации. Если вы используете другой тип фильтра, можно применить его к rectangularly сигналу импульсной формы.

  4. Запустите пропущенный сигнал через бесшумный канал. Этот канал может включать многопутевые исчезающие эффекты, сдвиги фазы, нелинейность усилителя, квантование и дополнительную фильтрацию, но это не должно включать шум. Сохраните результат этого шага как rxsig для дальнейшего использования.

  5. Вызовите semianalytic функция с помощью txsig и rxsig данные из более ранних шагов. Задайте получить фильтр как пару входных параметров, если вы не хотите использовать значение по умолчанию, просачиваются semianalytic функция. Функция фильтрует rxsig и затем определяет вероятность появления ошибки каждого полученного очка сигнала путем аналитичного применения Гауссова шумового распределения к каждой точке. Функциональные средние значения вероятности появления ошибки по целому полученному сигналу определить полную вероятность появления ошибки. Если вероятность появления ошибки, вычисленная таким образом, является вероятностью появления ошибки символа, функция преобразует ее в небольшой коэффициент ошибок, обычно путем принятия Грэя, кодирующего. Функция возвращает частоту ошибок по битам (или, в случае модуляции DQPSK, верхней границы на частоте ошибок по битам).

Ссылки

[1] Jeruchim, Мишель К., Филип Балабан и К. Сэм Шэнмугэн. Симуляция Систем связи. Второй выпуск. Бостон, MA: Спрингер УС, 2000.

[2] Pasupathy, S., “Минимальное Манипулирование Сдвига: Спектрально Эффективная Модуляция”, Коммуникационный Журнал IEEE, июль 1979, стр 14–22.

Представлено до R2006a