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

Readback timing for ADAU1701

SigmaDSP & SigmaStudio genp Apr 2, 2014 00:00 2 replies Original on forum ↗
Subscribe
genp Question
Apr 2, 2014 00:00

I am trying to optimize reading data from ADAU1701 using readback cell.

For this purpose I scoped the command sent from the SigmaStudio to dsp at the readback cell reading.

Here is the graph:

1 - Read Init (writing Data capture register address and a program step to capture data at.

2 - Read Request - writing Data capture register address.

3 - Read result - actual data reading.

What puzzles me are the delays.

4 - delay between Read Init and Read Request.

As far as I understand, with hardware capture registers it's necessary to wait until program reaches the certain step and captures data

to the capture register.

The delay at the graph above is about 400 uS. Is it necessary to have such a delay ?

At claimed 50 MIPS required delay seems to be a lot smaller.

5 - delay between Read Request and read Result. It's also about 400 uS.

I don't see a reason for this delay. Is it necessary ? And if yes, how long?

I have very tough timing constraints in my design, so clarification of this questions is important.

Thank you.

Gennady

Audio Signal Processors

SigmaDSP Audio Processors

adau1701

c9ccda91eaaaf70d7a1fd45d9cbb7df6.jpg
c9ccda91eaaaf70d7a1fd45d9cbb7df6.jpg
c9ccda91eaaaf70d7a1fd45d9cbb7df6.jpg-474x257.jpg
c9ccda91eaaaf70d7a1fd45d9cbb7df6.jpg-474x257.jpg
EZAdministrator Reply
Apr 29, 2019 00:00

This question has been closed by the EZ team and is assumed answered.

DaveThib Reply
Nov 13, 2020 00:00

Hello Gennady,

I just ran across this old post so I will provide an answer for others who may come across this post. Sorry we missed this earlier.

Once you setup the capture registers and set the bit to request the read, then you only need to wait two frames at the most. This is because your write may come, actually will come, in the middle of the frame. Then the next frame will execute the capture. So two frames of time is more than enough. SigmaStudio has to deal with USB packet delays and runs slow so it adds a lot more delay time than needed. Depending on the SPI speed and the sampling rate you might not have to wait at all. It takes some time for the SPI communications to happen with the address byte etc. So if you send the messages out of your controller to setup the read request, then your controller has to fetch and prepare the next message then start sending it out. So at that time there is a good chance that two frames have already passed.

Dave T