Конкатенированный OSTBC с TCM в Simulink

Эта модель показывает, что ортогональный пространственно-временной блочный код (OSTBC), конкатенированный с закодированной решеткой модуляцией (TCM) для информационной передачи по нескольким - ввел, несколько - выводят (MIMO), канал с 2 антеннами передачи и 1 получает антенну.

Введение

OSTBCs [1], [2] привлекательный метод для радиосвязей MIMO. Они используют полный пространственный порядок разнообразия и наслаждаются мудрым символом декодированием наибольшего правдоподобия (ML). Однако они не предлагают усиления кодирования. Объединитель для OSTBC в стороне приемника предоставляет мягкую информацию переданных символов, которые могут быть использованы для декодирования или демодуляции внешнего кода.

TCM [3] является пропускной способностью эффективная схема, которая интегрирует кодирование и модуляцию, чтобы обеспечить большое усиление кодирования. Конкатенация TCM с внутренним кодом будет обычно предлагать улучшенную производительность.

Этот пример иллюстрирует преимущества OSTBC и схемы конкатенации TCM: пространственное усиление разнообразия предложено OSTBC, и усиление кодирования предложено TCM. Для сравнения также обеспечиваются два образца модели, содержащие только TCM или OSTBC. Разнообразие и усиления кодирования схемы конкатенации по образцам модели могут ясно наблюдаться от результатов симуляции. Больше дискуссий о конкатенации OSTBC и TCM может быть найдено в, например, [4], [5] и ссылки там.

Структура примера

Отдельные задачи, выполняемые моделью, включают:

Случайная генерация данных

Блок Bernoulli Binary Generator производит источник информации для этой симуляции. Блок генерирует систему координат 100 случайных битов. Samples per frame параметр определяет длину выходной системы координат (100 в этом случае).

Закодированная решеткой модуляция (TCM)

Блок M-PSK TCM Encoder модулирует данные о сообщении от Бернуллиевого Бинарного Генератора до созвездия PSK, которое имеет модульную среднюю энергию. Trellis structure параметр принимает, что структура MATLAB® задает решетку TCM. M-ary number параметр задает размер созвездия PSK. В этом примере мы используем схему Ungerboeck TCM созвездия 8-PSK с 8 состояниями решетки [3]. Соответственно, Trellis structure параметр устанавливается на poly2trellis([2 3], [1 2 0; 4 1 2]). Этот блок имеет выходную длину системы координат 50, когда каждые два входных бита производят один символ.

Блок M-PSK TCM Decoder использует алгоритм Viterbi для TCM, чтобы декодировать сигналы от Объединителя OSTBC. Operation mode параметр устанавливается на Truncated обрабатывать каждую систему координат независимо. Traceback depth параметр устанавливается на 30 это, по сравнению с продолжительностью ограничения TCM, достаточно длинно, чтобы гарантировать почти эффективность без потерь.

Ортогональные пространственно-временные блочные коды (OSTBC)

Блок OSTBC Encoder кодирует информационные символы от Энкодера TCM при помощи кода [1] Alamouti для 2 антенн передачи. Выход этого блока 50x2 матрица, записи которой на каждом столбце соответствуют данным, переданным по одной антенне.

Блок OSTBC Combiner комбинирует полученные сигналы от получить антенны с информацией о состоянии канала (CSI), чтобы вывести оценки переданных символов, которые затем поданы в Декодер M-PSK TCM. В этом примере CSI принят отлично известный в стороне приемника.

2x1 канал MIMO

Блок MIMO Fading Channel симулирует 2x1 плоский частотой Канал с релеевским замиранием. Sample rate (Hz) параметр устанавливается на 500 000, который вычисляется на основе длины входного сигнала и шага расчета модели. Maximum Doppler shift (Hz) параметр устанавливается на 30. Причина использования этого значения состоит в том, чтобы заставить канал MIMO вести себя как квазистатический исчезающий канал, i.e., это сохраняет постоянным во время одной передачи системы координат и варьируется вдоль нескольких систем координат.

Шум приемника

Блок AWGN Channel добавляет белый Гауссов шум в стороне приемника. Mode параметр устанавливается на Signal to noise ratio (SNR) режим и Input signal power, referenced to 1 ohm (watts) параметр устанавливается на 2 потому что созвездие PSK для TCM имеет модульную среднюю энергию, и усиления пути канала MIMO нормированы.

Вычисление Коэффициента ошибок системы координат (FER)

Подсистема Вычисления Коэффициента ошибок системы координат (FER) сравнивает декодируемые биты с битами первоисточника на систему координат, чтобы обнаружить ошибки и динамически обновляет FER вдоль симуляции. Выход этой подсистемы является трехэлементным вектором, содержащим FER, количество ошибочных наблюдаемых систем координат и количество обработанных кадров. Этот вектор от блока Error Rate Calculation и также сохранен как переменная FER_Data рабочей области MATLAB® упрощать симуляцию для нескольких значений ОСШ, описанных ниже.

Stop simulation параметр проверяется, чтобы управлять длительностью симуляции. Симуляция останавливается после обнаружения целевого количества ошибочных систем координат (заданный Target number of errors параметр) или максимальное количество систем координат (заданный Maximum number of symbols параметр), какой бы ни на первом месте.

Мы теперь кратко описываем эти два образца модели, используемые для сравнения.

TCM по плоскому каналу с релеевским замиранием

Модель commtcm.slx симулирует TCM в вышеупомянутой схеме конкатенации по одно входу одно выходу (SISO) плоский Канал с релеевским замиранием. Никакое пространственно-временное кодирование не используется. Блок SISO Fading Channel имеет ту же спецификацию как один подканал 2x1 канал MIMO в вышеупомянутой модели. Input signal power, referenced to 1 ohm (watts) параметр блока AWGN Channel устанавливается на 1 как существует только один символ, переданный на период символа.

Эквалайзер канала

Подсистема Эквалайзера Канала компенсирует исчезающий эффект канала в стороне приемника, и ее выход подан в блок M-PSK TCM Decoder для декодирования. Обратите внимание на то, что каналом является плоское Релеевское замирание в этой модели.

OSTBC по 2x1 плоский канал с релеевским замиранием

Модель commostbc.slx заменяет TCM в вышеупомянутой схеме конкатенации модуляцией QPSK так, чтобы у обоих модели был тот же символ (система координат) уровень. Это использует то же самое 2x1 блок MIMO Fading Channel как в модели конкатенации TCM-OSTBC. Основополосные блок-диаграммы Модулятора QPSK информационные биты к созвездию QPSK и блоку QPSK Demodulator Baseband демодулируют сигналы от Объединителя OSTBC.

Результаты эффективности

Создание FER по сравнению с кривой производительности ОСШ требует симуляций для нескольких значений ОСШ, которые могут быть выполнены при помощи sim команда. Мы запускаем путем определения некоторых параметров симуляции

      SNRRange = 10:2:24;
      maxNumErrs = 1e3;  % Number of frame errors
      maxNumFrms = 5e6;  % Number of frames processed

и затем инициализируйте фигуру для того, чтобы визуализировать результаты эффективности.

      fig = figure;
      grid on;
      hold on;
      ax = fig.CurrentAxes;
      ax.YScale = 'log';
      xlim([SNRRange(1), SNRRange(end)]);
      ylim([1e-4 1]);
      xlabel('SNR (dB)');
      ylabel('FER');
      fig.NumberTitle = 'off';
      fig.Rrenderer = 'zbuffer';
      fig.Name = 'Concatenated OSTBC with TCM';
      title('Concatenated OSTBC with TCM');

Чтобы симулировать OSTBC-TCM конкатенированная модель, мы выполняем следующие команды, которые запускают симуляцию многократно и строят результаты.

      FERTCMOSTBC = zeros(length(SNRRange), 3);
      for idx = 1:length(SNRRange)
          SNR = SNRRange(idx);
          sim('commtcmostbc');
          FERTCMOSTBC(idx, :) = FER_Data;
          h1 = semilogy(SNRRange(1:idx), FERTCMOSTBC(1:idx, 1), 'r+');
      end
      fitFERTCMOSTBC = berfit(SNRRange, FERTCMOSTBC(:, 1)');
      semilogy(SNRRange, fitFERTCMOSTBC, 'r');

Точно так же мы можем симулировать эти два образца модели через выполнение

      FERTCM = zeros(length(SNRRange), 3);
      for idx = 1:length(SNRRange)
          SNR = SNRRange(idx);
          sim('commtcm');
          FERTCM(idx, :) = FER_Data;
          h2 = semilogy(SNRRange(1:idx), FERTCM(1:idx, 1), 'gp');
      end
      fitFERTCM = berfit(SNRRange, FERTCM(:, 1)');
      semilogy(SNRRange, fitFERTCM, 'g');
      FEROSTBC = zeros(length(SNRRange), 3);
      for idx = 1:length(SNRRange)
          SNR = SNRRange(idx);
          sim('commostbc');
          FEROSTBC(idx, :) = FER_Data;
          h3 = semilogy(SNRRange(1:idx), FEROSTBC(1:idx, 1), 'bo');
      end
      fitFEROSTBC = berfit(SNRRange, FEROSTBC(:, 1)');
      semilogy(SNRRange, fitFEROSTBC, 'b');
      legend([h1, h2, h3], 'TCM + OSTBC', 'TCM', 'OSTBC');

FER по сравнению с результатом эффективности ОСШ представлен в следующем рисунке.

Как ожидалось схема конкатенации обеспечивает значительное усиление разнообразия по схеме TCM и приблизительно 2 дБ, кодирующие усиление по коду Alamouti.

Дальнейшее исследование

После загрузки имитационных моделей переменные создаются в рабочей области MATLAB®, которая может быть изменена, чтобы исследовать эффекты различных установок параметров, такие как Samples per frame (переменная frameLen), Trellis structure (переменная trellis) или Maximum Doppler shift (Hz) (переменная maxDopp) на производительности системы.

Выбранная библиография

  1. С. М. Аламоути, "Простой метод разнообразия передачи для радиосвязей", Журнал IEEE® на Выбранных областях в Коммуникациях, издании 16, № 8, стр 1451-1458, октябрь 1998.

  2. V. Tarokh, Х. Джэфархэми и А. Р. Колдербэнк, "Пространственно-временные блочные коды из ортогональных проектов", Транзакции IEEE на Теории информации, издании 45, № 5, стр 1456-1467, июль 1999.

  3. Г. Анджербоек, "Кодирование канала с многоуровневыми сигналами / сигналами фазы", Транзакции IEEE на Теории информации, издании IT-28, № 1, стр 55-67, январь 1982.

  4. С. М. Аламоути, В. Тэрох и П. Пун, "Закодированная решеткой модуляция и разнообразие передачи: Критерии расчета и оценка результатов деятельности", в материалах Международная конференция IEEE по вопросам Universal Personal Communications (ICUPC '98), Флоренция, Италия, октябрь 1998, стр 703-707.

  5. Y. Гонг и К. Б. Летэиф, "Конкатенированное пространственно-временное блочное кодирование с решеткой закодировало модуляцию в исчезающих каналах", Транзакции IEEE на Радиосвязях, издании 1, № 4, стр 580-590, октябрь 2002.