Модулируйте частотный диапазон поднесущие OFDM к выборкам временного интервала для пользовательских протоколов связи
Wireless HDL Toolbox / Модуляция
Блок OFDM Modulator модулирует поднесущие ортогонального мультиплексирования деления частоты (OFDM) частотного диапазона к выборкам временного интервала на основе параметров OFDM. Блок поддерживает 5G, LTE [1], беспроводная локальная сеть (WLAN 802.11a/b/g/n/ac) [2], WiMAX (802,16 м и e), цифровое видео широковещательно передается (DVB) и стандарты цифрового аудио широковещательно передается (DAB).
Блок принимает входные данные наряду с допустимым управляющим сигналом и этими параметрами OFDM: длина БПФ, длина CP и количество правых и левых защитных поднесущих. Блок выходные параметры модулировал данные наряду с допустимыми и готовыми сигналами средств управления. Блок производит соответствующие параметры OFDM только, когда портом ready является 1
(высоко) и первым портом valid каждого символа OFDM является 1
(высоко).
Блок поддерживает скалярные и векторные входные параметры. Можно использовать векторный вход, чтобы увеличить пропускную способность и достигнуть пропускной способности выборки giga в секунду (GSPS). Блок поддерживает работу с окнами только для скалярных входных параметров. Блок обеспечивает интерфейс и архитектуру, подходящую для аппаратного развертывания и генерации HDL-кода.
data
— Входные данныеВходные данные в виде скаляра или вектор-столбца действительных или комплексных чисел. Размер вектора должен быть степенью 2 и должен быть в диапазоне от 1 до 64.
double
и single
типы данных поддерживаются для симуляции, но не для генерации HDL-кода.
Типы данных: single
| double
| int8
| int16
| int32
| signed fixed point
Поддержка комплексного числа: Да
valid
— Указывает на допустимые входные данныеУказывает на допустимые входные данные в виде скаляра.
Этот порт является управляющим сигналом, который указывает, когда выборка от входного порта data допустима. Когда этим значением является 1
, блок получает значения на входном порте data. Когда этим значением является 0
, блок игнорирует значения на входном порте data.
Типы данных: Boolean
FFTLen
— Длина БПФДлина БПФ в виде скаляра. Длина БПФ должна быть степенью 2 и в диапазоне от 8 до 65 536. Это значение должно быть меньше чем или равно значению параметров Maximum FFT length.
Чтобы поддержать минимальную длину БПФ 8, типом данных FFTLen должен быть fixdt(0,k,0)
, где k больше или равен 4.
Чтобы включить этот порт, установите параметр OFDM parameters source на Input port
.
Типы данных: single
| double
| uint8
| uint16
| uint32
| unsigned fixed point
CPLen
— Длина циклического префиксаДлина циклического префикса в виде скаляра в диапазоне от 0 до FFTLen.
Чтобы поддержать минимальную длину БПФ 8, типом данных CPLen должен быть fixdt(0,k,0)
, где k больше или равен 4.
Чтобы включить этот порт, установите параметр OFDM parameters source на Input port
.
Типы данных: single
| double
| uint8
| uint16
| uint32
| unsigned fixed point
numLgSc
— Количество покинутых защитных поставщиков услуг символа OFDMКоличество покинутых защитных поставщиков услуг символа OFDM в виде скаляра в диапазоне от 0 до (FFTLen/2) – 1.
Чтобы поддержать минимальную длину БПФ 8, типом данных numLgSc должен быть fixdt(0,k,0)
, где k больше или равен 2.
Чтобы включить этот порт, установите параметр OFDM parameters source на Input port
.
Типы данных: single
| double
| uint8
| uint16
| uint32
| unsigned fixed point
numRgSc
— Количество правильных защитных поставщиков услуг символа OFDMКоличество правильных защитных поставщиков услуг символа OFDM в виде скаляра в диапазоне от 0 до (FFTLen/2) – 1.
Чтобы поддержать минимальную длину БПФ 8, типом данных numRgSc должен быть fixdt(0,k,0)
, где k больше или равен 2.
Чтобы включить этот порт, установите параметр OFDM parameters source на Input port
.
Типы данных: single
| double
| uint8
| uint16
| uint32
| unsigned fixed point
reset
— Очистите внутренние состоянияОчистите внутренние состояния в виде скаляра. Когда этим значением является 1
, блок останавливает текущее вычисление и очищает все внутренние состояния.
Чтобы включить этот порт, выберите параметр Enable reset input port.
Типы данных: Boolean
winLen
— Длина окнаДлина окна в виде скаляра в диапазоне от 1 до Maximum window length.
Чтобы включить этот порт, установите параметр OFDM parameters source на Input port
.
Типы данных: single
| double
| uint8
| uint16
| uint32
| unsigned fixed point
data
— Модулируемые выходные данныеМодулируемые выходные данные, возвращенные как скаляр с комплексным знаком или вектор-столбец. Тип данных этот выход зависит от типа данных порта входа data.
Когда вы устанавливаете параметр OFDM parameters source на Property
и очистите параметр Divide butterfly outputs by two, выходные увеличения размера слова log2 (FFT length) биты.
Когда вы устанавливаете параметр OFDM parameters source на Input port
и очистите параметр Divide butterfly outputs by two, выходные увеличения размера слова log2 (Maximum FFT length) биты.
Чтобы избежать переполнения, выберите параметр Divide butterfly outputs by two.
Типы данных: single
| double
| int8
| int16
| int32
| signed fixed point
Поддержка комплексного числа: Да
valid
— Указывает на допустимые выходные данныеУказывает на допустимые выходные данные, возвращенные как скаляр.
Этот порт является управляющим сигналом, который указывает, когда выходной порт data допустим. Блок устанавливает это значение к 1
когда выборки данных доступны на выходном порте data.
Типы данных: Boolean
ready
— Указывает, что блок готовУказывает, что блок готов, возвращенный как скаляр.
Это - управляющий сигнал, который указывает, когда блок готов к новым входным данным. Когда этим значением является 1
, блок принимает входные данные в следующем временном шаге. Когда этим значением является 0
, блок игнорирует входные данные в следующем временном шаге.
Типы данных: Boolean
OFDM parameters source
— Источник параметров OFDMProperty
(значение по умолчанию) | Input port
Можно установить параметры OFDM с входным портом или путем выбора значения для параметра.
Выберите Property
включить FFT length, Cyclic prefix length, Number of left guard subcarriers и параметры Number of right guard subcarriers.
Выберите Input port
включить FFTLen, CPLen, numLgSc, и входные порты numRgSc и параметр Maximum FFT length.
Maximum FFT length
— Максимальная продолжительность длины БПФ
(значение по умолчанию) | степень 2 в диапазоне от 8 до 65 536Задайте максимальную длину БПФ.
Чтобы включить этот параметр, установите параметр OFDM parameters source на Input port
.
FFT length
— Длина БПФ
(значение по умолчанию) | степень 2 в диапазоне от 8 до 65, 536Задайте длину БПФ. Когда вы устанавливаете параметр OFDM parameters source на Property
, использование блока это значение FFT length как максимальная длина БПФ.
Чтобы включить этот параметр, установите параметр OFDM parameters source на Property
.
Cyclic prefix length
— Длина циклического префикса
(значение по умолчанию) | целое число в диапазоне от 0 до FFT lengthЗадайте длину циклического префикса.
Чтобы включить этот параметр, установите параметр OFDM parameters source на Property
.
Number of left guard subcarriers
— Количество поднесущих защитной полосы в левом экстремальном значении символа OFDM
(значение по умолчанию) | целое число в диапазоне от 0 до (FFT length/2) – 1Задайте количество левых защитных поднесущих.
Чтобы включить этот параметр, установите параметр OFDM parameters source на Property
.
Number of right guard subcarriers
— Количество поднесущих защитной полосы в правильном экстремальном значении символа OFDM
(значение по умолчанию) | целое число в диапазоне от 0 до (FFT length/2) – 1Задайте количество правильных защитных поднесущих.
Чтобы включить этот параметр, установите параметр OFDM parameters source на Property
.
Insert DC Null
— Опция, чтобы вставить пустой указатель DCon
(значение по умолчанию) | off
Выберите этот параметр, чтобы вставить пустой указатель на поднесущей DC.
Enable reset input port
— Сбросьте сигналoff
(значение по умолчанию) | on
Выберите этот параметр, чтобы включить входной порт reset.
Windowing
— Спектральное сокращение ростаoff
(значение по умолчанию) | on
Выберите этот параметр, чтобы выполнить операцию работы с окнами, которая уменьшает спектральный рост на основе заданной длины окна. Очистите этот параметр, чтобы отключить операцию работы с окнами.
Window length
— Длина окна
(значение по умолчанию) | целое число в диапазоне от 1 до Cyclic prefix lengthЗадайте длину окна. Блок поддерживает работу с окнами только для скалярных входных параметров.
Чтобы включить этот параметр, установите параметр OFDM parameters source на Property
и выберите параметр Windowing.
Maximum window length
— Максимальная длина окна
(значение по умолчанию) | целое число в диапазоне от 1 до Maximum FFT lengthЗадайте максимальную длину окна.
Чтобы включить этот параметр, установите параметр OFDM parameters source на Input port
и выберите параметр Windowing.
Divide butterfly outputs by two
— Разделите бабочку БПФ выходные параметры на дваon
(значение по умолчанию) | off
Этот параметр управляет масштабирующейся опцией блока IFFT HDL Optimized (DSP System Toolbox) в блоке OFDM Modulator.
Когда вы выбираете этот параметр, БПФ реализует полный 1/N масштабный коэффициент путем деления выхода каждого умножения бабочки два. Эта корректировка сохраняет выход ОБПФ в той же амплитудной области значений как ее вход. Если вы очищаете этот параметр, блок избегает переполнения путем увеличения размера слова на один бит после каждого умножения бабочки.
Rounding Method
— Режим Rounding для внутренних вычислений фиксированной точкиFloor
(значение по умолчанию) | Ceiling
| Convergent
| Nearest
| Round
| Zero
Этот параметр задает тип округления режима для внутренних вычислений фиксированной точки. Для получения дополнительной информации об округлении режимов, смотрите Округление Режимов (DSP System Toolbox). Когда вход является любым целочисленным типом данных или типом данных с фиксированной точкой, Алгоритм бпф использует вычисления с фиксированной точкой для внутренних вычислений. Этот параметр не применяется, когда вход имеет тип данных single
или double
. Округление применяется к умножению вертеть-фактора и операциям масштабирования.
Последовательность блочной операции OFDM Modulator реализована с помощью этих блоков: Готовый Генератор, Формирование Символа, Демонстрационный Повторитель, ОБПФ, Переключатель БПФ, Вниз Сэмплер, Сложение CP и Работа с окнами. Функция работы с окнами поддерживается только для скалярных входных параметров. Параметры, показанные в этом рисунке, конфигурируют поведение блока.
Готовая подсистема Генератора управляет выборками входных данных путем вычисления количества активных поднесущих данных на основе этих параметров входа OFDM: длина БПФ, длина CP, количество левых и правых защитных поставщиков услуг и состояние вставки пустого указателя DC.
Когда вы устанавливаете параметр OFDM parameters source на Property
, эти уравнения применяются.
N h = ceil
((FFT length – (Number of left guard subcarriers + Number of right guard subcarriers + Insert DC Null))/vecLen)
N l = ceil
((FFT length + Cyclic prefix length))/vecLen) – N h
Когда вы устанавливаете параметр OFDM parameters source на Input port
, эти уравнения применяются.
N h = ceil
((FFTLen – (numLgSc + numRgSc + Insert DC Null))/vecLen)
N l = ceil
((Maximum FFT length + CPLen))/vecLen) – N h
В этих уравнениях,
N h является количеством высоких готовых тактов
N l является количеством низких готовых тактов
vecLen является длиной вектора
Этот рисунок показывает готовую генерацию сигнала для настройки блока по умолчанию со скалярным входом.
Этот рисунок показывает готовую генерацию сигнала для настройки блока по умолчанию с четырехэлементным входом вектор-столбца.
Блок хранит вход допустимые активные данные о поднесущей, читает его и формирует символ из длины БПФ путем размещения данных в центре и защитных поднесущих в ребрах символа на основе количества левых и правых защитных введенных значений поднесущей.
Этот блок повторяет количество длины БПФ выборок, пока это не формирует максимальную длину БПФ. Для этой операции буфера блоков входные выборки сначала и затем повторяют выборки на основе максимального значения длины БПФ. Этот механизм повторения помогает постараться не масштабироваться во входе блока FFT. Этот блок является дополнительным и доступным только, когда вы устанавливаете параметр OFDM parameters source на Input port
. Когда вы устанавливаете параметр OFDM parameters source на Property
, значение длины БПФ, обеспеченное в маске блока, установлено как максимальная длина БПФ. Блок не должен повторять выборки в этом контексте.
Например, если длина БПФ равняется 128, и максимальная длина БПФ 2048, каждый символ OFDM состоит из 128 выборок. Блок преобразует эти 128 выборок в 2 048 выборок путем повторения этих 128 выборок 16 раз. После того, как блок генерирует 2 048 выборок данных, он отправляет данные и допустимые входные сигналы со следующим блоком.
Блок IFFT преобразует сигнал частотного диапазона в сигнал временной области. Блок поддерживает длину БПФ как степень 2, в диапазоне от 8 до 65, 536.
Наборы параметров Divide butterfly outputs by two, реализует ли БПФ полный 1/N масштабный коэффициент путем деления выхода каждого умножения бабочки два. Эта корректировка сохраняет выход ОБПФ в той же амплитудной области значений как ее вход. Когда вы очищаете параметр Divide butterfly outputs by two, блок избегает переполнения путем увеличения размера слова на 1 бит после каждого умножения бабочки.
Традиционно, приемопередатчики выполняют БПФ, переключают частотный диапазон на нижний регистр. Однако этот метод требует памяти и вводит задержку, связанную с размером БПФ. Вместо этого приемопередатчик может выполнить ту же операцию во временном интервале при помощи свойства сдвига частоты преобразований Фурье. Сдвиг функции в одной области соответствует умножению комплексной экспоненциальной функцией в другой области. Чтобы уменьшать аппаратные ресурсы и задержку, этот блок выполняет сдвиг БПФ путем умножения выборок временного интервала на комплексную экспоненциальную функцию.
Эти уравнения описывают сдвиг БПФ. Уравнение для N - БПФ точки
Для сдвига БПФ N/2 поставщики услуг в любом направлении, замене , получившийся в
Это уравнение упрощает до
С тех пор эквивалентно , и , это уравнение упрощает до
Итоговое уравнение показывает, что БПФ переключается на нижний регистр, временной интервал упрощает до умножения (-1) n. Поэтому блок реализует сдвиг БПФ путем умножения выборок временного интервала или на +1 или на –1.
Этот блок вниз производит максимальное количество длины БПФ выборок к количеству длины БПФ выборок. Этот блок является дополнительным и доступным только, когда параметр OFDM parameters source устанавливается на Input port
. Когда OFDM parameters source установлен в Property
, значение длины БПФ, введенное в маске блока, рассматривается как максимальную длину БПФ. Так, нет никакой потребности проредить выборки в этом контексте.
Например, блок действует с длиной БПФ как 128, и максимальная длина БПФ 2048. Здесь, вход является 2 048 выборками, и он должен быть прорежен с соответствующим к длине БПФ 128. Так, выборки блока 1 выборка для каждых 16 выборок.
Циклическое префиксное сложение является процессом добавления последних выборок символа OFDM как префикс к каждому символу OFDM. Эти рисунки показывают сложение CP для символа OFDM с выборками Nfft и выборками CP CP N.
Когда блок OFDM Modulator действует через Input port
выбор, это использует параметр Maximum FFT length, чтобы избежать нескольких IFFTs.
Работа с окнами уменьшает спектральный перерост или смежное отношение утечки канала (ACLR), сигнала OFDM. Работа с окнами является дополнительной и поддержана только для скалярных входных параметров. Чтобы включить работу с окнами, выберите параметр Windowing.
Блоки выполняют работу с окнами на добавленных в CP символах OFDM. Для получения дополнительной информации о работе с окнами, смотрите блок OFDM Modulator Baseband.
Блок получает выходные биты в допустимых циклах. Задержка блока меняется в зависимости от типа входа: скаляр или вектор.
Этот рисунок показывает демонстрационный выход и задержку блока OFDM Modulator, когда вы задаете скалярный вход, устанавливаете параметр OFDM parameters source на Property
и используйте настройки по умолчанию для других параметров блоков. FFT length установлен в 64
, Cyclic prefix length установлен в 16
, Insert DC null status установлен в on
, и Number of left guard subcarriers и Number of right guard subcarriers установлены в 6
и 5
, соответственно.
В этом примере задержка блока вычисляется с помощью этой формулы: FFT length – (Number of left guard subcarriers + Number of right guard subcarriers + Insert DC null status) + IFFTLatency + FFT length + 22, где IFFTLatency является задержкой блока IFFT для заданной длины БПФ, и 22, является количеством конвейерных задержек.
Это вычисление показывает, что задержка блока является 311 тактами, как показано в этом рисунке.
Этот рисунок показывает демонстрационный выход и задержку блока, когда вы задаете скалярный вход и устанавливаете параметр OFDM parameters source на Input port
. В данном примере FFTLen установлен в 64
, CPLen установлен в 16
, Insert DC null status установлен в on
, numLgSc и numRgSc установлены в 6
и 5
, соответственно, и Maximum FFT length установлен в 128
.
В этом примере задержка блока вычисляется с помощью этой формулы: FFTLen – (numLgSc + numRgSc + Insert DC null status) + FFT length + IFFTLatency + Maximum FFT length + (Maximum FFT length/FFTLen – 1) + 32, где IFFTLatency является задержкой блока IFFT для заданной максимальной длины БПФ, и 32, является количеством конвейерных задержек.
Это вычисление показывает, что задержка блока является 582 тактами, как показано в этом рисунке.
Блок принимает вход только, когда сигналом ready является 1
(высоко). В этом случае блок получает параметры на первом цикле, когда сигналом входа valid является 1
(высоко).
Этот рисунок показывает демонстрационный выход и задержку блока OFDM Modulator, когда вы задаете вход вектор-столбца с восемью элементами, устанавливаете параметр OFDM parameters source на Property
и используйте настройки по умолчанию для других параметров блоков. FFT length установлен в 64
, Cyclic prefix length установлен в 16
, Insert DC null status установлен в on
, и Number of left guard subcarriers и Number of right guard subcarriers установлены в 6
и 5
, соответственно.
В этом примере задержка блока вычисляется с помощью этой формулы: ceil
((FFT length – (Number of left guard subcarriers + Number of right guard subcarriers + Insert DC null status))/vecLen) + vecIFFTLatency + ceil
(FFT length/vecLen), + 22, то, где vecIFFTLatency является задержкой блока IFFT для заданной длины БПФ и длины вектора, vecLen, является длиной вектора, и 22 количество конвейерных задержек.
Это вычисление показывает, что задержка блока является 104 тактами, как показано в этом рисунке.
Этот рисунок показывает демонстрационный выход и задержку блока OFDM Modulator, когда вы задаете вход вектор-столбца с восемью элементами и устанавливаете параметр OFDM parameters source на Input port
. В данном примере FFTLen установлен в 64
, CPLen установлен в 16
, Insert DC null status установлен в on
, numLgSc и numRgSc установлены в 6
и 5
, соответственно, и Maximum FFT length установлен в 128
.
В этом примере задержка блока вычисляется с помощью этой формулы: ceil
((FFTLen – (numLgSc + numRgSc + Insert DC null status))/vecLen) + FFTLen/vecLen + vecIFFTLatency + floor
((Maximum FFT length/FFTLen) * (vecLen – 1)/vecLen) + ceil
(Maximum FFT length/vecLen) – (Maximum FFT length/FFTLen – 1) + 32, то, где vecIFFTLatency является задержкой блока IFFT для заданной максимальной длины БПФ и длины вектора, vecLen, является длиной вектора, и 32 количество конвейерных задержек.
Это вычисление показывает, что задержка блока является 160 тактами, как показано в этом рисунке.
Блок принимает вход только, когда сигналом ready является 1
(высоко). В этом случае блок получает параметры на первом цикле, когда сигналом входа valid является 1
(высоко).
Эффективность синтезируемого HDL-кода меняется в зависимости от вашей цели и опций синтеза. Типом входных данных, используемым в этом примере для генерации HDL-кода, является fixdt(1,16,14)
.
Эта таблица показывает результаты синтеза данных ресурсов и данных о производительности при использовании блока с настройкой по умолчанию для скалярного входа и входа вектор-столбца с восемью элементами. Сгенерированный HDL предназначен на оценочную плату Xilinx® Zynq®-7000 ZC706.
Входные данные | Срез LUTs | Регистры среза | DSPS | Блокируйте RAM | Максимальная частота в МГц |
---|---|---|---|---|---|
Скаляр | 2389 | 4103 | 8 | 3 | 263.4 |
Вектор | 12311 | 21705 | 56 | 16 | 236.3 |
[1] 3GPP релиз 14 TS 36.211 версии 14.2.0. "Физические каналы и модуляция". LTE - Развитый Универсальный Наземный Радио-доступ (к E-UTRA).
[2] "Беспроводное Среднее управление доступом (MAC) LAN и Физический уровень (PHY) Технические требования". Станд. IEEE 802.11 – 2012.
[3] Стефания Сезия, Иссам Туфик и пекарь Мэтью. LTE - Долгосрочная Эволюция THE UMTS от теории до практики.
[4] Эрик Дэхлмен, Стефан Парквол и Йохан Сколд. 4G - LTE/LTE - Усовершенствованный для Мобильного широкополосного Второго выпуска.
Этот блок поддерживает генерацию кода C/C++ для акселератора Simulink® и быстрых режимов Accelerator и для генерации компонента DPI.
HDL Coder™ обеспечивает дополнительные параметры конфигурации, которые влияют на реализацию HDL и синтезируемую логику.
Этот блок не имеет никакой HDL Block Properties.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.