exponenta event banner

Сцепленный OSTBC с TCM в Simulink

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

Введение

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

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

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

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

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

Генерация случайных данных

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

Решетчато-кодированная модуляция (TCM)

Блок кодера TCM M-PSK модулирует данные сообщения из двоичного генератора Бернулли в совокупность 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, так как каждые два входных бита формируют один символ.

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

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

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

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

Канал MIMO 2x1

Блок канала замирания MIMO моделирует канал замирания Rayleigh 2x1 с плоской частотой. Sample rate (Hz) для параметра установлено значение 500000, которое вычисляется на основе длины входного сигнала и времени выборки модели. Maximum Doppler shift (Hz) параметр имеет значение 30. Причина использования этого значения состоит в том, чтобы заставить канал MIMO вести себя как квазистатический канал замирания, то есть он остается постоянным во время передачи одного кадра и изменяется вдоль нескольких кадров.

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

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

Расчет частоты ошибок кадров (FER)

Подсистема вычисления частоты ошибок кадров (FER) сравнивает декодированные биты с исходными битами на кадр для обнаружения ошибок и динамически обновляет FER в процессе моделирования. Выходной сигнал этой подсистемы представляет собой трехэлементный вектор, содержащий ЧОК, количество наблюдаемых кадров ошибок и количество обработанных кадров. Этот вектор берется из блока «Расчет частоты ошибок» и также сохраняется как переменная рабочего пространства MATLAB ®FER_Data для упрощения моделирования для нескольких значений SNR, описанных ниже.

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 поскольку на период символа передается только один символ.

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

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

OSTBC более 2x1 Плоский Релейный замирающий канал

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

Результаты работы

Создание кривой производительности FER и SNR требует моделирования для нескольких значений SNR, которое может быть выполнено с помощью 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 и SNR представлен на следующем рисунке.

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

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

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

Избранная библиография

  1. С. М. Аламути, «Простой метод разнесения передачи для беспроводной связи», IEEE ® Journal on Selected Areas in Communications, том 16, № 8, стр. 1451-1458, октябрь 1998.

  2. В. Тарох, Х. Джафархами и А. Р. Калдербанк, «Пространственно-временные блочные коды из ортогональных конструкций», IEEE Transactions on Information Theory, vol. 45, no. 5, pp. 1456-1467, Jul. 1999.

  3. Г. Унгербек, «Канальное кодирование многоуровневыми/фазовыми сигналами», IEEE Transactions on Information Theory, том IT-28, № 1, стр. 55-67, январь 1982.

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

  5. Y. Gong и K. B. Letaief, «Конкатенированное пространственно-временное блочное кодирование с решетчатой модуляцией в замирающих каналах», IEEE Transactions on Wireless Communications, том 1, № 4, стр. 580-590, октябрь 2002.