ADAU1442 - FAQ
How can I check that I have proper communication between SigmaStudio and the SigmaDSP hardware?
The easiest way to do this is to try downloading a program, and then reading back a register with known contents. For example, the DSP core control register:
AD1940/AD1941: address=0x2642, contents=0x42 0x00
ADAU1701/ADAU1702: address=0x2076, contents=0x00 0x1C
ADAU144x: address = 0xE228, data = 0x00, 0x01
If this fails, check that the communications link has properly been established in the Hardware Configuration Window. When SigmaStudio is plugged into the hardware and properly recognizes the driver, the Communications Channel block in the design will turn from red to white. If this block is orange, then you may have one processor properly connected, but another may still be disconnected.
How can I use the multipurpose pins on the ADAU144x?
Application note AN-951 explains the use of the multipurpose (GPIO) pins in both the hardware and with SigmaStudio.
How can I write my own algorithms in SigmaStudio?
SigmaStudio includes a library of low-level signal processing functions, such as adders, multipliers, feedback, and delays. These can be wired together to create a custom algorithm within SigmaStudio without having to write line-level code.
How can I see exactly what SigmaStudio is writing to the target hardware?
SigmaStudio provides a Capture Window (enabled under the "View" menu) that shows exactly what bytes it is sending over the I2C or SPI control interface. This Capture Window shows the type of write, address, data, and total bytes written for each transfer.
How can I eliminate pops when changing the delay parameter at run-time?
The delay block will always pop if you change its parameter at run-time. However, if you need to dynamically change the delay time in your application you can use the voltage controlled delay block. This allows you to you to enter the delay value as an input to the algorithm and it will smoothly change the delay.
How can I tune my own hardware design using SigmaStudio?
The application note AN-923 is available to address this issue.
How can I program and tune my target application using SigmaStudio?
A USB interface board (USBi) is included with all SigmaDSP evaluation boards. The USBi connects to a PC via USB and outputs SPI and/or I2C signals. This can be used to interface SigmaStudio both to the evaluation board and to your target hardware. See AN-1006: Using the EVAL-ADUSB2EBZ.
Can I use selfboot to load multiple different programs?
This is not directly supported by the selfboot function, but could be done by having two EEPROMs on the I2C bus, each with a different address. The address pins of each could be changed by a switch or microcontroller so that the proper EEPROM is loaded at start-up. Note that the SigmaDSP selfbooter will only boot from a fixed address, so there must be only EEPROM on the I2C bus at one time with that address.
Can I use SigmaStudio without hardware connected?
Yes, you can design and compile a signal flow without being connected to an evaluation board or other target hardware. You can use the link-compile-connect function to compile your design and view the resources that have been used.
After I link-compile-download my project, the bar at the bottom of SigmaStudio turns green. Does this mean my program downloaded to the DSP successfully?
Not necessarily. The green download bar simply means that the program compiled correctly and that the program and parameter information was sent from SigmaStudio to the communications driver. SigmaStudio does not actively do a RAM Verify check on the target DSP.
Where can I get further support for the SigmaDSP?
Analog Devices' EngineerZone forum has a section dedicated to SigmaDSP. Here, you can discuss SigmaDSP, SigmaStudio, your applications, and ask questions of other users and Analog Devices engineers. If you have a technical question that you would prefer not to post in a public forum, then you can send your question to email@example.com.
Which SigmaDSP is right for my application?
For a comparison of different features, view the SigmaDSP selection guide.
When the signal input to my compressor is above 6 dB, the compression stops and my signal starts increasing. What's happening?
Some of the dynamics processors with a lower instruction count continue the gain from the last point in the lookup table (+6 dB), which could result in the output signal increasing in gain or clipping. In order to avoid this situation, make sure that your maximum input levels do not exceed the selected block's limits. If you need your dynamics processors to operate with signals larger than +6 dB, consider using the Full Range dynamics processor or completely limiting the signal output from the dynamics processor by using the limiter.
When should I use double precision and when should I use single precision filters?
For most filters in your design, you probably will not see a difference between single and double precision processing. Double precision becomes necessary when using low-frequency filters (center frequency approximately 0.005*fs and below), especially ones with high Q.
Where can I find a description of the changes made in the latest version of SigmaStudio?
The changelog is included in the SigmaStudio install directory. The filename is "readme.rtf." By default, this directory is C:\Program Files\Analog Devices Inc\SigmaStudio 3.1.
What is the processing power and RAM sizes of the different SigmaDSPs?
The table below shows the RAM sizes for all SigmaDSP ICs. The numbers below are all listed in kwords.
|IC||Program RAM||Parameter RAM||Data RAM|
Where can I see how much of the SigmaDSP resources my project consumes?
Every time you compile your project, SigmaStudio creates a folder called IC1 within the folder in which you've saved the project. In this folder, you will find a file called compiler_output.txt. This file details the amount of program, parameter, data, and slew (where applicable) RAM that has been used by your design.
What are the PC requirements for SigmaStudio?
The PC requirements for SigmaStudio are the following:
What evaluation boards are available for the ADAU144x products?
There are two boards available, the EVAL-ADAU1442EBZ and the EVAL-ADAU1446EBZ. Customers who want to evaluate the ADAU1445 should do so with the EVAL-ADAU1442EBZ.
My signal flow is running out of instructions. What can I do to save resources?
First, make sure that you are using double precision filters only where necessary. Also, some static gain blocks can be incorporated into other blocks that you might already have in the system, such as filters.
My application requires that I use multiple blocks that generate many addresses that I then have to map to my microcontroller code. Can I fix specific memory addresses for specific blocks to avoid all this mapping overhead?
SigmaStudio requires memory mapping flexibility in order to link blocks at compile time, therefore it does not allow you to set fixed memory addresses. However, when you generate the parameter memory map (by clicking on the "Generate Parameter File" button), a .h (header) file is also generated. This file has unique names for all parameters in the design. By using these header files in your microcontroller you will not have to manually map microcontroller parameters to addresses. Simply use the header file names in the microcontroller code to indirectly assign the required memory address.
How do I protect my SigmaDSP design against power supply overvoltage and ESD?
Although SigmaDSP devices contain robust internal ESD protection, an external transient voltage suppressor provides an extra level of protection against IC damage due to power supply voltage spikes. Application note AN-311 addresses this issue.
How do I change the sampling rate of my design in SigmaStudio?
If you have a new design (empty schematic), then you just need to set the sampling rate in the drop-down box at the top of the SigmaStudio window. Then, every block placed in the design after that has been set will use that sample rate for its calculations. If you have already placed blocks in your design, you still need to first set the drop-down box for any future blocks that may be added. Also, you will need to right-click on all input blocks (inputs, tone generators, etc.), select "Set Sampling rate," and enter the appropriate frequency.
I can't use the maximum delay memory in my project. What's happening?
Many algorithms, like filters, use the data memory. When more of these algorithms are used in the signal flow, there will be less available data RAM for simple delay blocks.
I already have a copy of SigmaStudio. How can I get the latest version?
You can download the latest version of SigmaStudio at http://www.analog.com/sigmastudiodownload. The download key is provided with your evaluation board.
What advanced algorithms are available for SigmaDSP?
There are a wide range of advanced algorithms available from 3rd-parties and directly from Analog Devices. These are not in the standard installation of SigmaStudio and are provided as plug-ins. These algorithms include:
Enhanced Automotive Surround (EAS)
Wind Noise Reduction
In order to get these plug-ins, you must first have an evaluation agreement with the IP supplier, who will then let us know that we can send the plug-in to you.
What is the difference between the ADAU1442, ADAU1445, and ADAU1446?
These three parts differ only in the Flexible Audio Routing Matrix (FARM) peripherals. The parts feature:
What documentation is available for SigmaStudio?
SigmaStudio has an extensive Help file included with the installation. This explains the operation of all of the software's features and signal processing blocks. Documentation is also available online. (Wiki Site)
What is needed to boot a SigmaDSP processor?
Any of the SigmaDSPs can be booted from a system's host microcontroller.