In Part 3 of the Four Quick Steps to Production: Using Model-Based Design for Software-Defined Radio article series we employ two very useful tools provided by ADI. These two tools not only help us verify the ADSB algorithm with live data, but also have been well received and widely adopted by ADI partners and customers.
First is the MATLAB and Simulink IIO System Object. The IIO System Object is based on the libiio library and is designed to exchange data over Ethernet with an ADI hardware system connected to a FPGA/SoC platform running the ADI Linux distribution. With this tool, the users can easily stream the data from ADI hardware to MATLAB, and then the post processing will happen inside MATLAB. Before this tool was developed, in order to verify the data from real hardware, the users had to first save some data on the Linux side, and then import the data into MATLAB. Based upon this interface, we have created several MATLAB and Simulink models for users to try out the hardware in the loop simulation, which is an important step in model-based design.
The AD9361 filter design wizard helps you design the 128-tap FIR filter on the Tx and Rx paths of AD9361. This digital FIR filter is very much required to maximize the system performance, but designing it is quite complicated, since there are various combinations on the signal paths, consisting of analog filters, as well as several digital half band filters. Before this tool was developed in late 2013, customers who needed to design an FIR filter had to ask for help from the ADI designers, which was not a very efficient way to solve each individual problem. Nowadays, with this tool, the users only needs to input the basic filter specifications, and the tool will make the design for them, so that everyone can easily implement their own design and change it as often as they want. So far, this tool has been a required dependency by two MathWorks hardware support packages: Zynq SDR Support from Communications System Toolbox and Analog Devices RF Transceivers Support from MATLAB and Simulink.
Please check out the Part 3 article to see how to use the MATLAB/Simulink IIO System Object to perform hardware in the loop simulation, and how the AD9361 filter design wizard is used to improve the SNR on receiver path.