Automatic Gain Control

Inheritance diagram of hermespy.simulation.rf_chain.analog_digital_converter.AutomaticGainControl
class AutomaticGainControl(agc_type=GainControlType.MAX_AMPLITUDE, backoff=1.0, rescale_quantization=False)[source]

Bases: Serializable, GainControlBase

Analog-to-digital conversion automatic gain control modeling.

Parameters:
  • agc_type (GainControlType, optional) – Type of amplitude gain control at ADC input. Default is GainControlType.MAX_AMPLITUDE.

  • backoff (float, optional) – this is the ratio between maximum amplitude and the rms value or maximum of input signal, depending on AGC type. Default value is 1.0.

  • rescale_quantization (bool, optional) – If enabled, the quantized signal is rescaled to the original signal range before gain adjustment. Disabled by default.

estimate_gain(input_signal)[source]

Estimate the gain required to adjust the signal to the ADC input range.

Parameters:

input_signal (Signal) – Input signal to be adjusted.

Return type:

float

Returns: Linear gain to be applied to the input_signal’s Voltage samples.

property agc_type: GainControlType

Automatic Gain Control

The AGC may have the following types of gain control, which wil specify the quantizer range: - GainControlType.NONE: no gain control, range must be specified - GainControlType.MAX_AMPLITUDE: the range is given by the maximum amplitude of the - GainControlType.RMS_AMPLITUDE: the range is given by the rms value plus a given backoff Note the for complex numbers, amplitude is calculated for both real and imaginary parts separately, and the greatest value is considered.

Return type:

GainControlType

property backoff: float

Quantizer backoff in linear scale

This quantity determines the ratio between the maximum quantization level and the signal rms value :returns: the backoff in linear scale :rtype: float

yaml_tag: Optional[str] = 'AutomaticGainControl'

YAML serialization tag.