exponenta event banner

comm.gpu. ConvolutionalDeinterleaver

Восстановление порядка символов с помощью сдвиговых регистров с GPU

Описание

GPU ConvolutionalDeinterleaver объект восстанавливает сигнал, который был перемежен с использованием сверточного перемежителя на основе GPU. Параметры в двух блоках должны иметь одинаковые значения.

Примечание

Для использования этого объекта необходимо установить лицензию Parallel Computing Toolbox™ и получить доступ к соответствующему графическому процессору. Дополнительные сведения о графических процессорах см. в разделе Вычисления графических процессоров (панель инструментов параллельных вычислений).

Системный object™ на базе графического процессора принимает типичные массивы или объекты MATLAB ®, созданные с помощью gpuArray класс. Системный объект на основе GPU поддерживает входные сигналы с типами данных с двойной или одинарной точностью. Выходной сигнал наследует тип данных из входного сигнала.

  • Если входной сигнал представляет собой матрицу MATLAB, объект System обрабатывает передачу данных между CPU и GPU. Выходной сигнал представляет собой матрицу MATLAB.

  • Если входной сигнал является gpuArrayданные остаются на GPU. Выходной сигнал представляет собой gpuArray. Когда объекту присваивается значение gpuArrayвычисления выполняются полностью на GPU, и передача данных не происходит. Прохождение gpuArray аргументы обеспечивают повышение производительности за счет сокращения времени моделирования. Дополнительные сведения см. в разделе Создание массивов на графическом процессоре (панель инструментов параллельных вычислений).

Для восстановления сверточно перемеженных двоичных данных:

  1. Определите и настройте сверточный объект обращенного перемежителя. См. раздел Строительство.

  2. Звонить step сверточно обращенно перемежаться в соответствии со свойствами comm.gpu.ConvolutionalDeinterleaver. Поведение step относится к каждому объекту на панели инструментов.

Примечание

Начиная с R2016b, вместо использования step для выполнения операции, определенной объектом System, можно вызвать объект с аргументами, как если бы это была функция. Например, y = step(obj,x) и y = obj(x) выполнять эквивалентные операции.

Строительство

H = comm.gpu.ConvolutionalDeinterleaver создает сверточный объект системы обращенного перемежителя на основе GPU, H. Этот объект восстанавливает исходный порядок последовательности, которая была перемежена с использованием сверточного перемежителя.

H = comm.gpu.ConvolutionalDeinterleaver(Name,Value) создает сверточный объект системы обращенного перемежителя на основе GPU, H, с указанным свойством Name, равным указанному значению. Можно указать дополнительные аргументы пары имя-значение в любом порядке как (Name1,Value1,...,NameN,ValueN).

H = comm.gpu.ConvolutionalDeinterleaver(M,B,IC) создает сверточный объект системы обращенного перемежителя H, с NumRegisters свойство имеет значение M, RegisterLengthStep свойство имеет значение B, и InitialConditions свойство имеет значение IC. M, B, и IC являются аргументами, предназначенными только для значений. Чтобы задать аргумент только для значения, необходимо также указать все предшествующие аргументы только для значения.

Свойства

NumRegisters

Количество регистров внутренних смен

Укажите число внутренних регистров сдвига как скалярное положительное целое число. Значение по умолчанию: 6.

RegisterLengthStep

Количество дополнительных символов, которые помещаются в каждом последовательном сдвиговом регистре

Укажите количество дополнительных символов, которые помещаются в каждом последовательном сдвиговом регистре как положительное скалярное целое число. Значение по умолчанию: 2. Первый регистр содержит нулевые символы.

InitialConditions

Исходные условия сдвиговых регистров

Укажите значения, которые первоначально хранятся в каждом сдвиговом регистре (за исключением первого сдвигового регистра с нулевой задержкой) в виде числового скаляра или вектора. Значение по умолчанию: 0. Если для этого свойства задано значение скаляра, то все регистры сдвига, за исключением первого, сохраняют одно и то же заданное значение. Если задать вектор столбца длиной, равной значению NumRegistersсвойство, то i-й сдвиговый регистр сохраняет i-й элемент указанного вектора. Значение первого элемента этого свойства неважно, так как первый сдвиговый регистр имеет нулевую задержку.

Методы

шагПерестановка входных символов с помощью регистров сдвига
Общие для всех системных объектов
release

Разрешить изменение значения свойства объекта системы

reset

Сброс внутренних состояний объекта System

Примеры

свернуть все

Создание сверточного перемежителя и объектов обращенного перемежителя.

interleaver = comm.gpu.ConvolutionalInterleaver('NumRegisters',2, ...
    'RegisterLengthStep',3);
deinterleaver = comm.gpu.ConvolutionalDeinterleaver('NumRegisters',2, ...
    'RegisterLengthStep',3);

Генерируют данные и пропускают их через сверточный перемежитель. Передача перемеженных данных через сверточный обращенный перемежитель.

data = (0:20)';
intrlvData = interleaver(data);
deintrlvData = deinterleaver(intrlvData);

Отображение исходной последовательности, чередующейся последовательности и восстановленной последовательности.

[data intrlvData deintrlvData]
ans =

     0     0     0
     1     0     0
     2     2     0
     3     0     0
     4     4     0
     5     0     0
     6     6     0
     7     1     1
     8     8     2
     9     3     3
    10    10     4
    11     5     5
    12    12     6
    13     7     7
    14    14     8
    15     9     9
    16    16    10
    17    11    11
    18    18    12
    19    13    13
    20    20    14

Задержка через пару перемежителя и обращенного перемежителя равна произведению NumRegisters и RegisterLengthStep свойства. После учета этой задержки подтвердите, что исходные и обращенно перемеженные данные идентичны.

intrlvDelay = interleaver.NumRegisters * interleaver.RegisterLengthStep
numSymErrors = symerr(data(1:end-intrlvDelay),deintrlvData(1+intrlvDelay:end))
intrlvDelay =

     6


numSymErrors =

     0

Алгоритмы

Этот объект реализует алгоритм, входы и выходы, описанные на странице ссылок блока сверточного обращенного перемежителя. Свойства объекта соответствуют параметрам блока.

Расширенные возможности

Представлен в R2012a