ADAU1761 - FAQ

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:

ADI Surround
ADI Virtual
Enhanced Automotive Surround (EAS)
Super Bass
Wind Noise Reduction



CircleSurround Automotive
CircleSurround II



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 needed to boot a SigmaDSP processor?

Any of the SigmaDSPs can be booted from a system's host microcontroller.

The ADAU1701, ADAU1702, ADAU1401, ADAU1442, ADAU1445, and ADAU1446 also have a selfboot feature that allows them to boot from an EEPROM without a microcontroller being present in the system.

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 evaluation board is available for the ADAU1761?

The EVAL-ADAU1761Z features single-ended and differential inputs, single-ended and differential outputs, as well as a capless headphone output. This interfaces seamlessly to SigmaStudio via the USBi control board for easy signal flow evaluation and development. The PCB is 2.5" x 3.5" and the package, including SigmaStudio, costs $195.

What evaluation boards are available for the SigmaDSP processors?

A full list of SigmaDSP evaluation boards is available.

What are the PC requirements for SigmaStudio?

The PC requirements for SigmaStudio are the following:

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.

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 sigmadsp@analog.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.

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.

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 use the multipurpose pins on the ADAU1761?

Application note AN-951 explains the use of the multipurpose (GPIO) pins in both the hardware and with SigmaStudio.

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.

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.

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.

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 can I get a copy of SigmaStudio?

A full version of SigmaStudio is available for download.

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.

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.

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
AD1953 0.5 0.5 0.7
AD1940/AD1941 1.5 1 6
ADAU1701/ADAU1401 1 1 2
ADAU1702 1 1 0.5
ADAU1761 1 1 4
ADAU1442/ADAU1445/ADAU1446 3.5 4 8

Which SigmaDSP parts are qualified for automotive applications?

The ADAU1442, ADAU1445, ADAU1446, ADAU1401, ADAU1461, also the AD1953, AD1940, AD1941 are all qualified and characterized over the –40° to 105° C temperature range.

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.