serdes. AGC

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

Описание

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

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

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

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

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

Создание

Синтаксис

agc = serdes.AGC
agc = serdes.AGC (Name,Value)

Описание

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

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

Пример: agc = serdes.AGC('Mode',1)

Свойства

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

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

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

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

Основной

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

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

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

Желаемое напряжение RMS выходной формы волны, заданной как действительный скаляр в области значений [1e-3, 10] в V.

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

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

Время односимвольной длительности, заданной как действительный скаляр в s.

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

Универсальный временной шаг формы волны, заданной как действительный скаляр в s.

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

Схема Modulation, заданная как 2 или 4.

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

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

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

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

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

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

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

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

  • 'Impulse' - Импульсный входной сигнал ответа.

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

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

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

Синтаксис

y = agc(x)

Описание

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