Main Content

Baseband Sampling Rate and Filter Chains

You can set the baseband sampling rate and filter chains for the AD9361 RF chip on the USRP™ E3xx embedded series radio hardware. The options you choose depend on how much control you want over the design of the filters in the transmit or receive chains. You can have the software design the filter chain automatically, or you can manually design the filter chain according to your own specification.

When you set the baseband rate on a transmitter or receiver System object™ or block, the software applies the default filter design to the filter chain. The default filters are applied according to the baseband sample rate to provide the necessary decimation to achieve specific clock settings and data rates.

You can modify the default settings by invoking the AD9361 Filter Design Wizard from Analog Devices®.

Tip

If the gain or bandwidth characteristics of the default filter does not satisfy the requirements for your application, use the ADI filter wizard to design a custom filter that meets your specific requirements.

AD9361 filter wizard

The filter wizard requires the following MathWorks® products:

  • MATLAB®

  • Signal Processing Toolbox™

  • DSP System Toolbox™

For instructions on operating the filter wizard, see MATLAB Filter Design Wizard for AD9361 of the Analog Devices website.

Filter Design with Blocks

Design Custom Filter

To open the AD9361 Filter Design Wizard, on the Filter tab of the E3xx block mask, click Launch filter wizard. The initial settings are the default filter design settings.

In the filter wizard:

  1. Update the settings to meet the requirements of your application.

  2. Click Design Filter.

  3. Click Apply filter design.

  4. Click OK on the dialog box informing you that the design was saved to a block mask.

  5. Close the filter wizard.

Default or Custom Filter Design

When applying a custom filter to the E3xx Transmitter or E3xx Receiver blocks by using the AD9361 Filter Design Wizard, the Use custom filter parameter of the block is automatically selected. To switch between the default and your custom filter design, on the Filter tab of the block mask, clear or select Use custom filter, respectively. Then click Apply.

Filter Design with System Objects

Design Custom Filter

  1. Create a transmitter or receiver System object. Open the AD9361 Filter Design Wizard by calling designCustomFilter. For example:

    tx = sdrtx('E3xx','BasebandSampleRate',10e6)
    designCustomFilter(tx)
  2. In the filter wizard:

    1. Update the settings to meet the requirements of your application.

    2. Click Design Filter.

    3. Click Apply filter design.

    4. Click OK on the dialog box informing you that the design was saved to a System object.

    5. Close the filter wizard.

Save and Restore Custom Filter Design

  1. Create a name-value cell array that represents all the necessary settings for the filter design based on the System object, then save it.

    filtnv = { ...
    'BasebandSampleRate',tx.BasebandSampleRate, ...
    'filtPathRates',tx.filtPathRates, ...
    'filtCoefficients',tx.filtCoefficients, ...
    'filtCoefficientSize',tx.filtCoefficientSize, ...
    'filtDecimInterpFactor',tx.filtDecimInterpFactor, ...
    'filtGain',tx.filtGain, ...
    'filtRFBandwidth',tx.filtRFBandwidth, ...
    'filterConfigStruct',tx.filterConfigStruct ...
    };
    save 'mycustomfilter' 'filtnv'
    
  2. Restore custom filter to a new object. You can ignore warnings about properties not relevant in this configuration of the System object.

    clear all
    load mycustomfilter
    rx = sdrrx('E3xx',filtnv{:});
    
    % Use restored custom filter
    rx.UseCustomFilter = true; 

Default or Custom Filter Design

When applying a custom filter to a comm.SDRTxE3xx or comm.SDRRxE3xx System object using the AD9361 Filter Design Wizard, the UseCustomFilter property of the object is automatically set to true. To switch between the default and your custom filter design, set the UseCustomFilter property to false or true, respectively.

See Also

Functions

Blocks

Objects

External Websites