Формирование прямоугольных импульсов
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