serdes.AGC

Автоматически настраивает усиление, чтобы обеспечить выходную амплитуду формы волны

Описание

serdes.AGC Система object™ применяет адаптивное переменное усиление к входной форме волны, чтобы достигнуть желаемого выходного напряжения RMS. Составляя в среднем напряжение RMS по конкретному количеству символов, serdes.AGC выполняет автоматическое управление усилением (AGC) путем увеличения или уменьшения усиления или хранения усиления постоянным.

Настраивать усиление входного сигнала:

  1. Создайте serdes.AGC объект и набор его свойства.

  2. Вызовите объект с аргументами, как будто это была функция.

Чтобы узнать больше, как Системные объекты работают, смотрите то, Что Системные объекты?.

Создание

Описание

agc = serdes.AGC возвращает объект AGC, который изменяет входную форму волны согласно корневому среднеквадратическому свойству блока AGC.

agc = serdes.AGC(Name,Value) свойства наборов с помощью одной или нескольких пар "имя-значение". Заключите каждое имя свойства в кавычки. Незаданные свойства имеют значения по умолчанию.

Пример: agc = serdes.AGC('TargetRMSVoltage',0.5) возвращает объект AGC с напряжением выхода RMS 0,5 В.

Свойства

развернуть все

Если в противном случае не обозначено, свойства являются ненастраиваемыми, что означает, что вы не можете изменить их значения после вызова объекта. Объекты блокируют, когда вы вызываете их, и release функция разблокировала их.

Если свойство является настраиваемым, можно изменить его значение в любое время.

Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Используя Системные объекты.

Основной

Рабочий режим AGC в виде 0 или 1режим определяет, настраивает ли AGC усиление входного сгенерированного модулированного сигнала или действует как передача.

Значение режимаРежим AGCОперация AGC
0Offserdes.AGC исключен, входная форма волны остается неизменной.
1Onserdes.AGC настраивает усиление входной формы волны, чтобы обеспечить TargetRMSVoltage в выходной форме волны.

Типы данных: double

Желаемое напряжение RMS выходной формы волны в виде неотрицательного действительного скаляра в области значений [0, 10] в вольтах. Установка TargetRMSVoltage к 0 результаты во всем нулевом выходе.

Типы данных: double

Усовершенствованный

Время односимвольной длительности в виде положительного действительного скаляра в секундах.

Типы данных: double

Универсальный временной шаг формы волны в виде действительной положительной скалярной величины в секундах.

Типы данных: double

Схема Modulation в виде 2 или 4.

Значение модуляцииСхема модуляции
2Невозврат к нулю (NRZ)
4Четырехуровневая импульсная амплитудная модуляция (PAM4)

Типы данных: double

Максимальный позволенный AGC получает в виде положительного действительного скаляра. MaxGain обеспечивает устойчивый запуск адаптивного алгоритма.

Типы данных: double

Усреднение длины в виде положительного действительного целого числа. AveragingLength задает количество символа, по которому сделано вычисление RMS входного сигнала.

Типы данных: double

Введите форму типа волны:

  • 'Sample' — Входной сигнал выборки выборкой.

  • 'Impulse' — Входной сигнал импульсной характеристики.

  • 'Waveform' — Тип формы волны комбинации двоичных разрядов входного сигнала, такого как псевдослучайная двоичная последовательность (PRBS).

Типы данных: char

Использование

Синтаксис

Описание

y = agc(x)

Входные параметры

развернуть все

Введите сгенерированный модулированный сигнал. Если WaveType установлен в 'Sample', входной сигнал является сигналом выборки выборкой, заданным как скаляр. Если WaveType установлен в 'Impulse', входной сигнал является сигналом вектора импульсной характеристики.

Выходные аргументы

развернуть все

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

Функции объекта

Чтобы использовать объектную функцию, задайте Системный объект как первый входной параметр. Например, чтобы выпустить системные ресурсы Системного объекта под названием obj, используйте этот синтаксис:

release(obj)

развернуть все

stepЗапустите алгоритм Системного объекта
releaseВысвободите средства и позвольте изменения в значениях свойств Системного объекта и введите характеристики
resetСбросьте внутренние состояния Системного объекта

Примеры

свернуть все

Используйте serdes.AGC система object™, чтобы уменьшать амплитуду формы волны сигнализирует, чтобы обеспечить RMS напряжение 0.25 V.

Создайте сигнал с двумя синусоидами, один в 250 Гц и другой в 340 Гц. Частота дискретизации составляет 800 Гц. Сигнал повреждается с аддитивным нулевым средним случайным шумом.

Fs = 10000;
L = 1000;
t = (0:L-1)'/Fs;
x = sin(2*pi*250*t) + 0.75*cos(2*pi*340*t);         % Original signal
y = x + .5*randn(size(x));                          % Noisy signal

Найдите частотные составляющие сигнала с помощью serdes.AGC.

agcblock = serdes.AGC('TargetRMSVoltage',0.25);
z = agcblock(y);

Постройте вход и измененные формы волны.

figure, plot(t,y,t,z)
legend('AGC input','AGC output')
title('Example Application of the Automatic Gain Control SerDes block');
xlabel('time [seconds]');
ylabel('Volts');

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

Смотрите также

| |

Введенный в R2019a