This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
resources:tools-software:rf-microwave-toolbox [10 Mar 2022 14:37] – created Srikanth Pagadarai | resources:tools-software:rf-microwave-toolbox [27 Feb 2023 23:47] (current) – Updated page to replace references to Longspeak with Stingray. Srikanth Pagadarai | ||
---|---|---|---|
Line 1: | Line 1: | ||
===== Analog Devices RF Microwave Toolbox For MATLAB and Simulink ===== | ===== Analog Devices RF Microwave Toolbox For MATLAB and Simulink ===== | ||
- | ADI maintains a set of tools to model, | + | ADI maintains a set of tools to interface with ADI RF and microwave devices within MATLAB and Simulink. These are combined into single Toolbox which contains a set of Board Support Packages (BSP). The list of supported boards is provided [[/ |
+ | ==== Quick Start with Toolbox ==== | ||
+ | |||
+ | The current stable Toolbox can be downloaded from the [[https:// | ||
+ | |||
+ | <WRAP round download> | ||
+ | * [[https:// | ||
+ | </ | ||
+ | |||
+ | To interface and stream data with hardware will require installation of [[resources: | ||
+ | == Libiio Installers== | ||
+ | <WRAP round download> | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | </ | ||
+ | |||
+ | Installation of either: | ||
+ | <WRAP round download> | ||
+ | * [[mw> | ||
+ | * [[mw> | ||
+ | </ | ||
+ | |||
+ | <note important> | ||
+ | |||
+ | is required to use the streaming system objects or blocks. These support packages provide the necessary libIIO MATLAB bindings used by ADI's system objects. | ||
+ | |||
+ | === Building the Toolbox Manually === | ||
+ | |||
+ | The toolbox can only be built under Linux or with Cygwin on a Windows platform. Conveniently, | ||
+ | * A supported MATLAB version installed in the default location (/ | ||
+ | * A supported Vivado version installed in the default location (/ | ||
+ | * Packages: git zip unzip tar make wget sed | ||
+ | |||
+ | <note warning> | ||
+ | |||
+ | First clone the repo and move into it: | ||
+ | < | ||
+ | git clone https:// | ||
+ | cd RFMicrowaveToolbox | ||
+ | </ | ||
+ | To build the toolbox run the following: | ||
+ | < | ||
+ | make -C CI/scripts build | ||
+ | </ | ||
+ | To create a installable tlbx file run: | ||
+ | < | ||
+ | make -C CI/scripts gen_tlbx | ||
+ | </ | ||
+ | ==== Device Control and Data Streaming ==== | ||
+ | |||
+ | Device interfaces which provide control and data streaming are implemented with MATLAB System Objects and Simulink Blocks. These System Objects can be access under the " | ||
+ | < | ||
+ | adi.< | ||
+ | </ | ||
+ | For example, to instantiate a Stingray object to control the X-Band Development Platform it can be created as follows: | ||
+ | < | ||
+ | bf = adi.Stingray; | ||
+ | </ | ||
+ | The Stingray Evaluation board contains an ADXUD1AEBZ, ADF4371 and LTC2314. Therefore, it uses the objects corresponding to these devices along with ADAR100x, a genric ADAR1000 superclass under the hood. Similarly, ADALM-PHASER class is also derived from low level objects based on their parts. | ||
+ | |||
+ | For example usage of certain objects, it can be useful to inspect their related test code which exercises initiations in different configurations. | ||
+ | |||
+ | To get a list of currently available objects with the BSP installed simply run: | ||
+ | < | ||
+ | help adi | ||
+ | </ | ||
+ | To get more information on a given object run: | ||
+ | < | ||
+ | help adi.< | ||
+ | </ | ||
+ | or | ||
+ | < | ||
+ | doc adi.< | ||
+ | </ | ||
+ | |||
+ | === Common Attributes === | ||
+ | |||
+ | There are some common attributes that need to be set for system objects and parts. | ||
+ | |||
+ | * '' | ||
+ | * IP with usage '' | ||
+ | |||
+ | === Extending Interfaces === | ||
+ | |||
+ | If a driver attribute or setting is not available in the standard objects it can be easily extended to cover more IIO attributes. See this [[resources: | ||
+ | |||
+ | ==== Examples ==== | ||
+ | |||
+ | Examples for streaming data and targeting FPGAs are listed within the Toolbox documentation itself. To view run the following with MATLAB: | ||
+ | < | ||
+ | doc adi | ||
+ | </ | ||
+ | |||
+ | ==== Help & Support ==== | ||
+ | |||
+ | <WRAP round help 80%> | ||
+ | * Questions? [[ez> | ||
+ | </ |