Прямоугольное формирование импульсов
y = rectpulse(x,nsamp)
y = rectpulse(x,nsamp)
применяет прямоугольное импульсное формирование к x
для формирования выходного сигнала, имеющего nsamp
выборок на символ. Прямоугольное формирование импульса означает, что каждый символ от x
повторяется nsamp
время формирования выхода y
. Если x
является матрицей с несколькими строками, функция обрабатывает каждый столбец как канал и обрабатывает столбцы независимо.
Примечание
Чтобы вставить нули между последовательными выборками x
вместо повторения выборок x
, использовать upsample
вместо этого функция.
Пример в Объединении Формирования Импульсов и Фильтрации с Модуляцией использует эту функцию в сочетании с модуляцией.
Приведенный ниже код обрабатывает два независимых канала, каждый из которых содержит три символа данных. В импульсообразной матрице y
каждый символ содержит четыре выборки.
nsamp = 4; % Number of samples per symbol nsymb = 3; % Number of symbols s = RandStream('mt19937ar', 'Seed', 0); ch1 = randi(s, [0 1], nsymb, 1); % Random binary channel ch2 = [1:nsymb]'; x = [ch1 ch2] % Two-channel signal y = rectpulse(x,nsamp)
Ниже приведен выход. В y
каждый столбец соответствует одному каналу, и каждая строка соответствует одной выборке. Кроме того, первые четыре строки y
соответствуют первому символу, следующим четырем строкам y
соответствуют второму символу и последним четырем строкам y
соответствуют последнему символу.
x = 1 1 1 2 0 3 y = 1 1 1 1 1 1 1 1 1 2 1 2 1 2 1 2 0 3 0 3 0 3 0 3