This is an old revision of the document!
The AD9371 Filter Design Wizard is used to design the transmitter and receiver FIR filters for the AD9371 product family. It can also be used with the AD9375 device. This tool creates filters which equalize the desired passband, taking into account the signal transfer functions through the entire analog and digital signal path in the AD9371 transceiver. The tool also generates ADC profiles and custom clock settings that can be used with the Transceiver Evaluation Software to evaluate system performance. Any custom configuration of sampling rates and bandwidths must use this tool to create a profile that can be used by in a customer system or with the evaluation kit. The Filter Wizard is available as MATLAB source code, a MATLAB app, and as a stand-alone executable.
With this wizard, users can perform the following tasks:
See Release Notes Document ad9371_filter_wizard_release_notes_v1.10.rtf
There are three ways you can use the AD9371 Filter Wizard:
* Executable: the executable includes the MATLAB runtime engine which allows the program to run as a separate application without requiring the MATLAB program to be running. It can take more than a minute for the runtime engine to start up for the first time so please be patient while it initializes. The program provides a GUI allowing users to define the input parameters, generate filters, view the output results, and save all output parameters for their own use or use in the ADI EVB GUI software. * MATLAB App: the App runs as an application within MATLAB and requires MATLAB to be running and licenses must exist for the Control System Toolbox as well as MATLAB itself. The GUI and flexibility are identical to the executable, but running as an app allows the user to write additional code to post process the existing matrices created by the wizard. * MATLAB source code (function): These are MATLAB functions which users can launch from the MATLAB command window by properly defining the input parameters. Used this way, users have more control of the internal design process.
The executable is available here: exe for IEexe for Chrome/Firefox
The app is available here: App for IEApp for Chrome/Firefox
The Source code is available here: Source for IESource for Chrome/Firefox
This section elaborates on the first two options, the executable and the App, and addresses both identically since the input and output functionality is the same.
This section describes the user interface of the AD9371 Filter Wizard.
The first screen visible after starting the Wizard includes an Instruction screen in the center with the input parameters on the left side and is shown in the picture below:
Please read through the short text on the Instruction tab before using the wizard. Note also the links at the bottom, one of which takes you back to this Wiki page and the other takes you to the ADI Engineer Zone forum. Any questions about the Wizard will be addressed in this forum.
The Instructions page is one of several tabs in the GUI. The other tabs are used to display filter responses for each channel type after clicking on “Generate Profiles” as described below.
It's important to understand that while the AD9371 has separate transmitter, receiver, observation receiver, and sniffer receiver signal paths, all of their digital filters and data converters receive their clocks from a common clocking system, referred to as the Clock PLL (and dividers). Even though the input fields show user configurable sampling rates for each of the different sections, there are rules that must be followed in order to generate a configuration that the AD9371 can use. Some examples of invalid configurations that illustrate the following rules are shown further down this page.
The complete set of rules used by the GUI is also listed further down this Wiki page.
The “Tx Input Sample Rate” is the data rate of the “I” and “Q” samples. This is the data rate output from the baseband processor to the AD9371. These samples are serialized and sent across the JESD204B interface. Once deserialized by the AD9371, the data rate input to the filtering blocks in the AD9371 is this same “Tx Input Sample Rate”.
Tx Profile Section Tx Total RF BW and the Tx Primary Signal BW. The Tx Total RF BW in MHz is the total bandwidth used primarily by PA linerization algorithms such as digital predistortion. It is also referred to in user guides and the Wizard error messages as the “synthesis” bandwidth. It is expected that signals outside of the “Primary Signal BW” but inside the “Total RF BW” will be lower in level than the primary signals levels. As an example, a desired signal may occupy 18 MHz of bandwidth and an FPGA predistortion algorithm may linearize five times beyond that signal to reduce undesired emissions. The primary BW would then be 18 MHz and the total BW would be 90 MHz.
The “Pass Band Weight” and “Stop Band Weight” are configurable. These values are used to create a ratio. If the ratio is “1”, then equal weighting is given to achieving low passband ripple and high stopband attenuation. The Wizard will use all FIR taps it has available to achieve this. Typical ripple values are less than 0.5 dB and typical attenuation values are greater than 50 dB. A specific configuration may make it difficult to generate a FIR filter with both expected ripple and attenuation performance. It may also be desirable to have better attenuation than the program generates by default. Changing the ratio of weights alters the emphasis the Wizard places on meeting its objectives. For example, changing the ratio by setting the Stop Band Weight to “100” will sacrifice some passband ripple but improve the stop band attenuation. It is difficult to quantify a ratio that always results in the same amount of emphasis and de-emphasis. If the Wizard can easily achieve good ripple and attenuation as mentioned above, then a ratio of 10:1 can make a significant difference in the results. If the change in filter performance is not large enough, increase the ratio. The values are real numbers so setting the weights to 1:10 (passband to stopband) is the same as setting them to 0.1:1.
Next is the ORx Profile section. The ORx signal path input is intended to be used with PA linearization algorithms as mentioned above. While the main receive path (see below) is intended just for the desired signal, the ORx path was designed for use with PA linearization algorithms. It can support a wider bandwidth than the main Rx path because it is feeding back the desired signal plus the spectral regrowth to the baseband processor. The spectral regrowth is usually at least 2 times and occasionally as much as five times the bandwidth of the desired signal received by the main receive path.
The sample rate is the output data rate sent to the JESD204B serializer.
The RF BW is the complex bandwidth used by the ORx signal path.
Weighting is described in the Tx section.
The Rx Profile section is next. Sample rate, bandwidth, and weighting are described in previous sections.
The SnRx Profile section allows for configuration of the sniffer receiver signal path. The maximum bandwidth of this path is 20 MHz and the maximum sampling rate is 30.72 MSPS. Otherwise, the user-configurable fields are as described in previous sections.
The defaults populated at startup will generate valid FIR filters if the user merely presses the “Generate Profiles” button. The window to the right will show the resulting composite response for the entire signal path as well as responses for the various blocks within the chip.
An example of the Tx response using the default profile at startup is shown below with the maximum ripple called out at the top left of the graph:
The same for the default Rx configuration is shown here:
An example of changing the Rx main signal path weighting to have a stop band weight of 100 results in the following response:
If the Tx Total (or Synthesis) bandwidth is larger than 82% of the Tx sample rate, then the Wizard will indicate this with red text at the bottom of the Wizard as well as a pop up window as shown below:
As mentioned above, if the Tx sample rate and the ORx sample rates are not the same, the AD9371 calibrations will not function properly. The Wizard will not let such a profile be generated and will indicate this with red error text at the bottom of the Wizard as well as a pop up window as seen here: