DSD data acquisition

Hi All,

i have designed an audio ADC with DSD output(@2,048MHz, the standard is 2.82MHz but mine is slower).I have a CK and a DATA signals as INPUTs to my Arduino pcb.

Basically i need to sample the data on the rising edge of the CK.
The samples should be written in a txt file or just copy and paste from Arduino's
serial monitor. The acquisition process should go on for at least ~30sec.

I am planning to buy ARDUINO ONE
I did search on the web but i couldn't find the answer to my question.
My question is: basically i have to sample a digital signal every 0,48us.
Is that too fast for ARDUINO ONE or should i buy other product?
thanks a lot

Luca

(0.48/1000000)/(1/16000000) = 7.68 processor clock cycles per sample.

Is that too fast for ARDUINO ONE or should i buy other product?

Yes.

Thanks Coding Badly,

could you explain the meaning of 0.48/1000000 in your formula ?
i suppose 16MHz it the clock of ARDUINO.

thanks
Luca

You are welcome.

could you explain the meaning of 0.48/1000000 in your formula ?

I'll try...

My question is: basically i have to sample a digital signal every 0,48us.

The work to be done is "sample a digital signal". You've given the processor 0.48us (480ns) to do that work. In the very best case, the microcontroller can do one thing each clock tick. The clock ticks at 16 MHz. So...

Time to Do That Work / Clock Tick Time = Clock Ticks Available in the Given Work Time

The Clock Tick Time is 1 / Clock Tick Frequency (in Hz) or 1/16000000.

The Time to Do That Work is 0.48 microseconds or 0.48/1000000 seconds.

Time to Do That Work (in seconds) / Clock Tick Time (in seconds) is (0.48/1000000) / (1/16000000).

Hi,

Can i see the code which you've come with for data sampling because i am doing a similar project myself and it would be best if i can get an ideal from yours.

Thanks,
Minura

lucaduke:
My question is: basically i have to sample a digital signal every 0,48us.

Well, you probably can. You can speed arduino up to 20MHz and maybe a little more, but . The problem is, you will not be able to store or even process your data - atmega328 has too tiny a RAM and you will get to the very edge of performance by just reading it.

But what you can do is to wire your signal to the asynchronous counter and maybe measure the duty cycle of your DATA. This way you'll need much more manageable speeds, so MAYBE you will get what you need. But I don't see any way to sync it to your CK.

By the way, what is your final goal? A sound recorder?

The Arduino DUE runs at 84Mhz.