SpectrumAnalyzerResBW


Description: Spectrum analyzer with resolution bandwidth setting
Library: Sinks
Class: TSDF_SpectrumAnalyzerResBW
Derived From: _SpectrumAnalyzer

Parameters
Name Description Default Unit Type Range
Plot If simulation is setup to open data display after simulation and if Plot is not set to 'None', then plot the data for this sink: None, Rectangular None   enum  
RLoad Load resistance. DefaultRLoad will inherit from the DF controller. DefaultRLoad Ohm real (0, ∞)
RTemp Resistor physical temperature, in degrees C. DefaultRTemp will inherit from the DF controller. DefaultRTemp Celsius real [-273.15, ∞)
Start Start time for data recording. DefaultTimeStart will inherit from the DF Controller. DefaultTimeStart sec real [0, ∞)
Stop Stop time for data recording. DefaultTimeStop will inherit from the DF Controller. DefaultTimeStop sec real [Start, ∞)
Window Window with default constant applied to collected data (default constant is used when WindowConstant is 0.0): none, Hamming 0.54, Hanning 0.50, Gaussian 0.75, Kaiser 7.865, _8510 6.0, Blackman, Blackman-Harris none   enum  
ResBW Resolution bandwidth 30 kHz Hz real [0, ∞)
NumSegments Number of segments 0   int [0, ∞)
SegmentTime Segment time 1.0 msec sec real (0, ∞)
Pin Inputs
Pin Name Description Signal Type
1 input timed sink input signal timed

Notes/Equations
  1. The SpectrumAnalyzerResBW component can be used to measure the spectrum of a baseband or an RF signal. In the following notes, TStep is used to denote the simulation time step and fc is used to denote the signal characterization frequency (fc = 0 for a baseband signal and fc > 0 for an RF signal).
    Note
    Information regarding time domain signal differences between ADS Ptolemy simulations and Circuit Envelope and Transient simulations is given in the Timed Synchronous Dataflow section of the ADS Ptolemy Simulation documentation.
  2. The component outputs the complex amplitude voltage values at the frequencies of the spectral tones. The component does not output the power at the frequencies of the spectral tones. However, you can calculate and display the power spectrum as well as the magnitude and phase spectrum by using the dBm, mag, and phase functions of the Data Display window. Note that the dBm function assumes a 50-ohm resistive load. If a different load was used in the simulation, its value can be specified as a second argument to the dBm function, for example, dBm(VRF, 75) where VRF is the instance name of the SpectrumAnalyzerResBW component and 75 ohms is the resistive load used. To integrate the power spectrum over a frequency range see note 7.
    Note that, for baseband signals and for the frequency of 0 Hz the dBm function returns a power value that is 3 dB less than the actual power. This is because the primary use of the dBm function is with RF signals from an Analog/RF schematic simulation, where the 0 Hz frequency corresponds to the carrier frequency and not to the 0 Hz signal frequency.
    If the baseband signal has no significant power at dc, this 3 dB error is insignificant and can be ignored-otherwise, it must be considered. For a baseband signal, the energy at 0 Hz is more typically measured as the average voltage value of the signal and not by power.
  3. The displayed spectrum extends from 0 Hz to 1/(2 ×  TStep ) Hz for a baseband signal and from fc − 1/(2 ×  TStep ) Hz to fc + 1/(2 ×  TStep ) Hz for an RF signal. When fc < 1/(2 ×  TStep ), the default spectrum extends to negative frequencies. The spectral content at these negative frequencies is conjugated, mirrored, and added to the spectral content of the closest positive frequency. This way, the negative frequency tones are displayed on the positive frequency axis as would happen in an RF spectrum analyzer measurement instrument. This process can introduce an error in the displayed frequency for the mirrored tones. The absolute error introduced is less than the frequency step in the displayed spectrum (see note 5 for the more details about frequency step in the displayed spectrum).
  4. The basis of the algorithm used by SpectrumAnalyzerResBW is the fs() function (the chirp-Z transform option of fs() is used). Depending on the values of the parameters Start, ResBW, and NumSegments, the algorithm can call fs() on multiple signal segments and average the results to achieve video averaging (see note 5 for more details).
    For details regarding the fs() function, refer to the Measurement Expressions manual.
  5. Depending on the values of the parameters ResBW and NumSegments the spectrum measurement is performed in a different way. The four modes of operation are described:
    • ResBW > 0, NumSegments = 0
      This is the default mode of operation. In this mode, the input signal (in the time interval [Start, Stop]) is broken down in multiple segments of length NENBW / ResBW, where NENBW is the normalized equivalent noise bandwidth for the selected window (see note 8 for the definition of NENBW). The spectra of the individual segments are calculated and averaged (video averaging). If the interval [Start, Stop] is not long enough, that is Stop − Start < NENBW / ResBW, then Stop is increased so that one segment of length NENBW / ResBW is processed. If Stop − Start > NENBW / ResBW but the interval [Start, Stop] does not contain an integer multiple of NENBW / ResBW long segments, Stop is again adjusted (increased) so that an integer number of NENBW / ResBW long segments is processed.
      The resolution bandwidth achieved is ResBW. The frequency step in the displayed spectrum is also ResBW.
    • ResBW > 0, NumSegments > 0
      This mode of operation is very similar to the first one. The only difference is that the value of the Stop parameter is ignored and Stop is set to Start + NumSegments × SegmentTime. Stop can then be further adjusted as explained in the first mode of operation.
    • ResBW = 0, NumSegments = 0
      In this mode of operation, data is collected from Start to Stop and the spectrum analysis is performed on the whole data treated as one segment. This achieves the highest possible resolution bandwidth for the collected data given by NENBW / ( Stop − Start ), where NENBW is the normalized equivalent noise bandwidth for the selected window (see note 8 for the definition of NENBW). The frequency step in the displayed spectrum is 1 / (Stop − Start). No video averaging occurs in this mode of operation.
    • ResBW = 0, NumSegments > 0
      In this mode of operation, data is collected from Start to Start + NumSegments × SegmentTime. The data is broken down in NumSegments segments of length SegmentTime. The spectra of the individual segments are calculated and averaged (video averaging). The resolution bandwidth achieved is NENBW / SegmentTime, where NENBW is the normalized equivalent noise bandwidth for the selected window (see note 8 for the definition of NENBW). The frequency step in the displayed spectrum is 1 / SegmentTime. Video averaging occurs if NumSegments > 1.
  6. The Window parameter is used to define the window that is applied to each segment before its spectrum is calculated. Windowing is often necessary in transform-based (chirp-Z, FFT) spectrum estimation. Without windowing, the estimated spectrum can suffer from spectral leakage that can cause misleading measurements or masking of weak signal spectral detail by spurious artifacts.
    Window Definitions
    • none

      where N is the window size
    • Hamming 0.54

      where N is the window size
    • Hanning 0.50

      where N is the window size
    • Gaussian 0.75

      where N is the window size
    • Kaiser 7.865

      where N is the window size,  α = N / 2, and I 0 (.) is the 0th order modified Bessel function of the first kind
    • 8510 6.0 (Kaiser 6.0)

      where N is the window size,  α = N / 2, and I 0 (.) is the 0th order modified Bessel function of the first kind
    • Blackman

      where N is the window size
    • Blackman-Harris

      where N is the window size
  7. The windowing of a signal in time has the effect of changing its power. SpectrumAnalyzerResBW normalizes the measured spectrum so that the power contained in it is the same as the power of the input signal.
    To calculate the power contained in a spectrum, the spec_power() function can be used in the Data Display window. The spec_power() function expects its input to be in dBm and returns a value in dBm. Therefore, if spectral data generated using SpectrumAnalyzerResBW is passed to the spec_power() function, the dBm function must be applied to the data before spec_power() is called. If frequency limits need to be passed to spec_power(), these must be specified in Hz.
    For details regarding the spec_power() function, refer to the Measurement Expressions manual.
  8. The windowing of a signal in time also affects the resolution bandwidth that can be achieved. When calculating the spectrum of a signal segment the resolution bandwidth achieved with a window is always lower (worse) than the resolution bandwidth achieved without a window. The normalized equivalent noise bandwidth (NENBW) of a window is one measure of how much it reduces the resolution bandwidth that can be achieved. To compensate for this a longer signal segment should be processed.
    Equivalent noise bandwidth (ENBW) compares the window to an ideal, rectangular filter. It is the equivalent width of a rectangular filter that passes the same amount of white noise as the window. The normalized ENBW (NENBW) is the ENBW multiplied by the time duration of the of the signal being windowed. NENBW values for windows available in SpectrumAnalyzerResBW are listed in the following table.
    Normalized Equivalent Noise Bandwidth of Available Windows
    Window NENBW
    none 1
    Hamming 0.54 1.363
    Hanning 0.50 1.5
    Gaussian 0.75 1.883
    Kaiser 7.865 1.653
    8510 6.0 1.467
    Blackman 1.727
    Blackman-Harris 2.021

    In an analog swept spectrum analyzer, the resolution bandwidth is determined by the last in a series of analog IF filters. In contrast, SpectrumAnalyzerResBW calculates the spectrum using DSP algorithms and so the resolution bandwidth is determined by the length of the input data segment the algorithm processes and the selected window.
    Without a window (Window=none) the resolution bandwidth achieved is 1/T, where T is the length of the input data segment in seconds.
    With a window the resolution bandwidth achieved is ENBW = NENBW/T, where ENBW is the window equivalent noise bandwidth and NENBW is the window normalized equivalent noise bandwidth.

  9. How to choose the right window.
    Every time a window is applied to a signal (Window = none effectively applies a rectangular window to the signal), leakage occurs, that is, power from one spectral component leaks into the adjacent ones. Leakage from strong spectral components can result in hiding/masking of nearby weaker spectral components. Even strong spectral components can be affected by leakage. For example, two strong spectral components close to each other can appear as one due to leakage.
    Choosing the right window for a spectral measurement is very important. The choice of window depends on what is being measured and what the trade-offs between frequency resolution (ability to distinguish spectral components of comparable strength that are close to each other) and dynamic range (ability to measure signals with spectral components of widely varying strengths and distributed over a wide range) are.
    As described above, windows can be characterized by their Normalized Equivalent Noise Bandwidth (NENBW). In general, for the same length of signal processed, the higher the NENBW of a window the higher its dynamic range (less leakage) and the poorer its frequency resolution.
    Some general guidelines for choosing a window are given below:
    • Do not use a window (Window = none) when analyzing transients.
    • For periodic signals whose spectral components have comparable strengths and when the signal segment processed includes an exact integer multiple of periods, the best results are obtained if no window is used (Window = none, which is equivalent to using a rectangular window). Any start up transients should be excluded.
    • For periodic signals whose spectral components have significantly different strengths and/or when the signal segment processed does not include an exact integer multiple of periods, the use of a window can improve the detection of the weaker spectral components. The higher the NENBW the more likely the weaker spectral components will be detected. However, this trades-off frequency resolution and so if the spectral components are very close to each other the weaker one might remain unresolved. To improve frequency resolution while still maintaining a good dynamic range use a window but process a longer signal segment.
    • For aperiodic signals such as modulated signals (QPSK, QAM, GSM, EDGE, CDMA, OFDM) the use of a window is highly recommended. The window will attenuate the signal at both ends of the signal segment processed to zero. This makes the signal apear periodic and reduces leakage.
  10. For general information regarding sinks, refer to About Sinks.

References
  1. A. V. Oppenheim, R. W. Schafer, Discrete-Time Signal Processing, Prentice Hall, 1989, Chapter 9, section 9.7.
 

Privacy Statement  | Terms of Use  | Legal | Contact Us  | © Agilent 2000-2008 

Contents
Additional Resources