Этот пример показывает реализацию модели цифрового предыскажения (DPD), которая оптимизирована для генерации HDL-кода и аппаратной реализации. Механизм предварительного искажения выполняется в два этапа. На первом этапе набор коэффициентов DPD оценивается на основе входных и выходных данных усилителя степени (PA). На втором этапе входные данные PA предварительно искажаются на основе оцененных коэффициентов DPD и предоставляются в качестве нового входа в PA. Этот пример демонстрирует симуляцию уровня системы, в которой подсистема Digital Predistorter генерирует HDL-код, в то время как оценка коэффициента DPD генерирует код C/C + +. Эта модель примера поддерживает только режимы симуляции Normal и Accelerator.
Цифровое предварительное искажение является сгенерированным модулированным сигналом методом обработки, который используется для коррекции нарушений в усилителях радиочастоты (RF) степени. Эти нарушения вызывают внеполосные выбросы или спектральное возрождение и внутриполосное искажение, что приводит к увеличению частоты битовой ошибки (BER) и снижению пропускной способности системы. Усилители степени вызывают нежелательные эффекты в системе из-за их нелинейного поведения. Системы связи, использующие ортогональное частотное деление мультиплексирование (OFDM), такие как беспроводная локальная сеть (WLAN), глобальная совместимость для микроволнового доступа (WiMax), долгосрочная эволюция (LTE) и 5G новое радио (NR), уязвимы к этим нежелательным эффектам. На сигнал применяется предварительная коррекция, так что каскад DPD и PA близок к идеальной, линейной и незапоминающейся системе. Эта линеаризация может улучшить PA степени эффективности и может быть более эффективной по спектру. Этот рисунок показывает структуру верхнего уровня примера.
Запустите эту команду, чтобы открыть пример.
modelname = 'DPDHDLExample';
open_system(modelname);
Подсистема передатчика OFDM основной полосы генерирует сгенерированный модулированный сигнал и подает этот сигнал в качестве входных данных в подсистему цифрового предыскажения. The OFDMTx
функция в этой подсистеме генерирует сигнал передатчика OFDM с синхронизацией, ссылкой, заголовком, пилотами и сигналами данных и возвращает txWaveform
, txGrid
, и diagnostics
использование набора параметров передатчика txParam. Для получения дополнительной информации о OFDMTx
, см. пример HDL OFDM MATLAB References. Можно также заменить подсистему Baseband OFDM Transmitter на любой пользовательский передатчик, чтобы предоставить данные подсистеме Digital Predistorter. Этот рисунок показывает генерацию входного сигнала основной полосы для этого примера. Выполните эту команду, чтобы открыть подсистему Baseband OFDM Transmitter.
load_system(modelname);
open_system([modelname '/Baseband OFDM Transmitter']);
Подсистема оценки Coeff RPEM оценивает набор коэффициентов путем сбора данных с входа и выхода PA. Эти коэффициенты используются для искажения сигнала перед усилителем степени. Характеристики PA варьируются с течением времени и условий работы, поэтому для оценки коэффициентов DPD используется алгоритм адаптивного рекурсивного метода ошибки предсказания (RPEM). Количество коэффициентов, которые будут оценены, зависит от глубины памяти и полиномиальной степени PA. В этом примере, поскольку общее количество коэффициентов, которые нужно оценить, составляет 25, глубина памяти и степень полинома PA установлены равными 5. Для получения дополнительной информации о RPEM см. раздел [1]. Чтобы сгенерировать код C/C + + для подсистемы оценки RPEM Coeff, используйте slbuild
команда. Запустите эту команду, чтобы открыть подсистему оценки Coeff RPEM.
load_system(modelname);
open_system([modelname '/RPEM Coeff Estimation']);
Подсистема Digital Predistorter искажает входные данные с помощью коэффициентов, оцененных подсистемой оценки Coeff RPEM. Проект DPD в этом примере основан на полиноме памяти, который исправляет нелинейности и эффекты памяти в PA. Оцененные коэффициенты и сгенерированные входные данные предоставляются в качестве входных данных для DPD для применения предварительного искажения. Входные данные сначала помещаются в регистр сдвига на основе глубины памяти. Во-вторых, этот вектор конкатенируется с нелинейными продуктами данных в зависимости от полиномиальной степени. Эта конкатенация образует вектор 25, что означает, что значение глубины памяти умножается на элементы степени. Точечный продукт полученного вектора и оценочных коэффициентов обеспечивает предварительно искаженный вход, который подается как вход в PA после увеличения дискретизации. Запустите эту команду, чтобы открыть подсистему Digital Predistorter.
load_system(modelname);
open_system([modelname '/Digital Predistorter']);
Этот пример имеет переключатель управления, чтобы включить или отключить предварительное искажение и оценку коэффициента. Если вы активируете переключатель, то пример предоставляет выходные данные от подсистемы Digital Predistorter в качестве входных данных к блокам RF. В противном случае пример предоставляет выходные данные от подсистемы передатчика Baseband OFDM в качестве входных данных для RF блоков как синфазные (I), квадратурная фаза (Q) выборки. Эти I/Q выборки увеличены до 2,4 ГГц и предоставлены в качестве входных данных для PA. Матрица коэффициентов, требуемая PA, предварительно загружена на основе совместимого со стандартом сигнала LTE со скоростью дискретизации 15,36 МГц. Эти коэффициенты хранятся в файле MAT, и значения загружаются при инициализации примера. В другом пути данные передаются через усилитель с низким уровнем шума (LNA) и преобразуются с понижением частоты перед предоставлением их в подсистему оценки Coeff RPEM.
Подсистема приемника OFDM основной полосы собирает преобразованные с понижением частоты данные и предоставляет их как вход в OFDMRx
функция. Эта функция выполняет оценку и коррекцию смещения несущей частоты, систему координат синхронизацию, демодуляцию OFDM, оценку канала, эквализацию канала, коррекцию смещения фазы и декодирует переданные биты. Для получения дополнительной информации о OFDMRx
, см. пример HDL OFDM MATLAB References.
Запустите модель. По умолчанию Digital Predistorter и RPEM Coeff Estimation включены. Если вы отключаете DPD, величина вектора ошибок (EVM) увеличивается, а спектральное восстановление в смежных каналах увеличивается. Схемы созвездия и спектрального анализатора показывают результаты запуска модели с включенным DPD.
sim(modelname);
Estimating carrier frequency offset ... First four frames are used for carrier frequency offset estimation. Estimated carrier frequency offset is 3.252304e+00 Hz. Detected and processing frame 5 ------------------------------------------ Header CRC passed Modulation: 16QAM, codeRate=1/2 and FFT Length=128 Data CRC passed Data decoding completed ------------------------------------------ Detected and processing frame 6 ------------------------------------------ Header CRC passed Modulation: 16QAM, codeRate=1/2 and FFT Length=128 Data CRC passed Data decoding completed ------------------------------------------
Чтобы проверить и сгенерировать HDL для этого примера, вы должны иметь HDL- Coder™. Используйте makehdl
и makehdltb
команды для генерации HDL-кода и испытательного стенда для подсистемы Digital Predistorter.
Подсистема Digital Predistorter синтезируется на плате оценки ZC706 Xilinx ® Zynq ® -7000. Частота, полученная после места и маршрута, составляет около 220 МГц. Создайте таблицу, в которой отображаются результаты использования ресурсов при размещении и маршрутизации для 16-битного сложного входа.
F = table(... categorical({'Slice LUT'; 'Slice Registers';'DSP'}), ... categorical({'6028'; '8115'; '160'}), ... categorical({'218600'; '437200'; '900'}), ... categorical({'2.75'; '1.85'; '17.78'}), ... 'VariableNames', ... {'Resources','Utilized','Available','Utilization (%)'}); disp(F);
Resources Utilized Available Utilization (%) _______________ ________ _________ _______________ Slice LUT 6028 218600 2.75 Slice Registers 8115 437200 1.85 DSP 160 900 17.78
1. Ган, Ли и Эмад Абд-Эльради. «Цифровое предварительное искажение полиномиальных систем памяти с использованием архитектур прямого и косвенного обучения». В работе одиннадцатой Международной конференции IASTED по обработке сигналов и изображений (SIP) (Ф. Крус-Рольдан и Н. Б. Смит, эд.), № 654-802. Калгари, AB: ACTA Press, 2009.