ΣSigmaStudio Ask AI Русский Log in

ADAU1701 Loading Procedure

SigmaDSP & SigmaStudio Raydon Feb 6, 2013 00:00 4 replies Original on forum ↗
Subscribe
Raydon Question
Feb 6, 2013 00:00

Hi all,

I am working on removing the EEPROM (cost reduction) from a my project that is currently working in self-boot mode. I was hopeful that I could write the Program data and then the Parameter data in continuous streams (i.e., write all 5120 Program bytes at once) . I noted in the data sheet that Tables 23 & 25 seem to suggest that Parameter RAM Burst Mode write is limited to 15 bytes and Program RAM Burst Mode write is limited to 18 bytes. Are Burst Mode data bytes 'length' limited or can I write all data in a single transmission?

Thanks,

Ray

Audio Signal Processors

i2c

SigmaDSP Audio Processors

adau1701

self-boot

ADIApproved Reply
Feb 6, 2013 00:00

Hi Ray,

Those tables are just showing examples with arbitrarily limited data length. In reality, you can write in burst for as many bytes as you wish, as long as these conditions apply:

The addresses are contiguous and incremental

The word lengths for each address are constant

This means you can write the entire program RAM in one burst write, and then write the parameter RAM in one burst write.

In fact, this is how SigmaStudio downloads data to the ADAU1701 when you press Link-Compile-Download. You can see this in the capture window:

As you can see, the entire download consists of only 5 burst writes. The first and last writes are just a single address, but the 3 writes in the middle show the Program RAM, Parameter RAM, and Control Registers being written using a single burst write for each.

bd4244d2cf6c282a23f5af1bc36aa7c5.png
bd4244d2cf6c282a23f5af1bc36aa7c5.png
bd4244d2cf6c282a23f5af1bc36aa7c5.png-696x166.png
bd4244d2cf6c282a23f5af1bc36aa7c5.png-696x166.png
Raydon Reply
Feb 6, 2013 00:00

Brett,

Thanks for the quick response. I just wanted to confirm that my process was correct before digging into the error that I am getting. I can run my micro in debug and get the correct data from a couple of (confirmation) register reads, but when I run full speed ‘release’ code I get bad data returned. I suspect that I may need to put in some more delay (after programming) for DSP initialization before reading the registers.

Ray

Ray Donnelly

A/V Engineering Consultant

13602 N 19th PL

Phoenix, AZ 85022

PH: 480-626-1924

<mailto:ray.donnelly@cox.net> mailto:ray.donnelly@cox.net

This email may contain confidential and/or privileged

information. It is intended only for the person or persons to

whom it is addressed. Any unauthorized review, use, or

distribution is prohibited. If you are not the intended

recipient, please contact the sender by reply email or

telephone and destroy all copies of the original message.

ADIApproved Reply
Feb 6, 2013 00:00

Hi Ray,

I would wait at least a full audio sample, on the order of 20 microseconds, before trying to read back. This will let the DSP core step through its entire program before you attempt a read request.

EZAdministrator Reply
Aug 2, 2018 00:00

This question has been assumed as answered either offline via email or with a multi-part answer. This question has now been closed out. If you have an inquiry related to this topic please post a new question in the applicable product forum.

Thank you,
EZ Admin