Анализируйте производительность частоты ошибок по битам (BER) систем связи
Приложение BER Analyzer вычисляет BER как функцию энергии на бит к шумовой степени спектральное отношение плотности (Eb/N0). Используя это приложение, вы можете:
Постройте теоретический BER по сравнению с оценками Eb/N0 и верхними границами.
Постройте BER по сравнению с Eb/N0 использование полуаналитического метода. Полуаналитический метод оценивает производительность BER при помощи комбинации симуляции и анализа. Используйте этот метод, когда уровень системной ошибки будет мал, например, <10–6.
Оцените производительность BER при помощи функций MATLAB® или моделей Simulink®.
Панель инструментов MATLAB: На вкладке Apps, под Signal Processing and Communications, кликают по значку приложения.
Командная строка MATLAB: Введите bertool
.
Eb/N0 range
— Область значений значений Eb/N0, по которым оценен BER
(значение по умолчанию) | векторУказывает диапазон значений Eb/N0, в дБ, по которому оценен BER. Значения в векторе области значений должны быть действительными.
Пример: 5:10
Channel type
— Тип канала, по которому оценен BERAWGN
(значение по умолчанию) | Rayleigh
| Rician
Задает тип канала, по которому оценен BER. Rayleigh
и Rician
опции соответствуют плоским исчезающим каналам.
Modulation type
— Тип модуляции линии связиPSK
(значение по умолчанию) | DPSK
| OQPSK
| PAM
| QAM
| FSK
| MSK
| CPFSK
Задает тип модуляции линии связи.
Modulation order
— Порядок модуляции линии связи
(значение по умолчанию) | 4
| 8
| 16
| 32
| 64
Задает порядок модуляции линии связи.
Differential encoding
— Дифференциальное кодирование входных данныхOff
(значение по умолчанию) | On
Задает, закодирована ли последовательность входных данных дифференцированно.
Demodulation type
— Тип демодуляцииCoherent
| Noncoherent
Задает если Coherent
или Noncoherent
демодуляция используется. Этот параметр доступен только, когда Modulation type является FSK
или MSK
.
Channel coding
— Кодирование канала, используемое в оценке BERNone
(значение по умолчанию) | Convolutional
| Block
Указывает, что тип кодирования канала раньше оценивал теоретический BER.
Synchronization
— Ошибка синхронизацииPerfect synchronization
(значение по умолчанию) | Normalized timing error
| RMS phase noise level
Задает ошибку синхронизации в процессе демодуляции. Этот параметр доступен только, когда Modulation type является PSK
и Modulation order является 2
.
Когда Synchronization является Normalized timing error
, задайте нормированную ошибку как вещественное число от 0
к 0.5
.
Когда Synchronization является RMS phase noise level
, задайте шум фазы RMS как неотрицательное вещественное число.
Decision method
— Декодирование метода решенияHard
(значение по умолчанию) | Soft
Укажите, что метод раньше декодировал полученные данные. Этот параметр доступен, когда любое из этих условий существует:
Channel coding установлен в Convolutional
Channel coding установлен в Block, и Coding Type является General
Trellis
— Решетка сверточного кодаpoly2trellis(7,[171 133])
(значение по умолчанию) | структураЗадайте решетку сверточного кода как переменную структуры. Можно сгенерировать эту структуру при помощи poly2trellis
функция. Параметр доступен только, когда параметром Channel coding является Convolutional
.
Coding type
— Задайте тип блочного кодированияGeneral
(значение по умолчанию) | Hamming
| Golay
| Reed-Solomon
Задайте блочный код, используемый в оценке BER.
N
— Длина кодовой комбинацииЗадайте длину кодовой комбинации как положительное целое число.
K
— Передайте длинуЗадайте длину сообщения как положительное целое число, таким образом, что K меньше N.
dmin
— Минимальное кодовое расстояниеЗадайте минимальное расстояние (N, K) блочный код как положительное целое число. Этот параметр доступен, когда Coding type является General
.
Samples per symbol
— Выборки на символ
(значение по умолчанию) | положительное целое числоЗадайте количество выборок на символ как положительное целое число.
Transmitted signal
— Переданная демонстрационная последовательностьrectpulse(step(comm.BPSKModulator, [0 1 1 0 0 1 1 1 1 0 1 1 0 0 0 0].'), 16)
(значение по умолчанию) | векторЗадайте последовательность передачи как действительный или комплексный вектор-столбец.
Типы данных: double
Поддержка комплексного числа: Да
Received signal
— Полученная демонстрационная последовательностьrectpulse(step(comm.BPSKModulator, [0 1 1 0 0 1 1 1 1 0 1 1 0 0 0 0].'), 16)
(значение по умолчанию) | векторЗадайте полученную последовательность как действительный или комплексный вектор-столбец.
Типы данных: double
Поддержка комплексного числа: Да
Numerator
— Числитель получить коэффициентов фильтраones(16,1)/16
(значение по умолчанию) | скаляр | векторЗадайте числитель получить коэффициентов фильтра как вектор.
Denominator
— Знаменатель получить коэффициентов фильтра
(значение по умолчанию) | скаляр | векторЗадайте знаменатель получить коэффициентов фильтра как вектор.
Simulation MATLAB file or Simulink model
— Имя файла симуляции BERЗадайте имя файла MATLAB или модели Simulink, содержащей код симуляции.
BER variable name
— Имя переменной, содержащей данные моделирования BERЗадайте имя переменной рабочего пространства MATLAB, которая содержит данные моделирования BER.
Number of errors
— Количество ошибок измеряется перед остановкой симуляции
(значение по умолчанию) | положительное целое числоЗадайте количество ошибок, которые должны быть измерены, прежде чем симуляция останавливается. Как правило, 100 измеренных ошибок достаточно, чтобы произвести точную оценку BER.
Number of bits
— Количество битов обрабатывается перед остановкой симуляции1e8
(значение по умолчанию) | положительное целое числоЗадайте количество битов, которые должны быть обработаны, прежде чем симуляция останавливается. Этот параметр используется, чтобы препятствовать тому, чтобы симуляция запускалась слишком долго.
Симуляция Монте-Карло останавливается, когда или количество ошибок или количество порога битов достигнуты.