Asynchronous I2S FIFO project, an ultimate weapon to fight the jitter

Hi, Ian and qusp! Did you guys call me?

As for MCLK timing, wktk_smile once posted in the "ESS Sabre Reference DAC (8-channel)" thread as shown below;



Bunpei followed his post with this;



In the blog page by Mr. Kakuta of AIT Lab, a garage audio dac vendor in Japan, reported a result of his tuning efforts of the timing of synchronous MCLK for ES9018 showing spectra he obtained.

A.[Top] No tuning < 8.8kHz(?) single sine wave input (It is the worst case spectrum)>

B.[Middle] No tuning < 6kHz = 192kHz/32kHz single sine wave input >

C.[Bottom] Tuned. No spurious peaks.

An externally hosted image should be here but it was not working when we last tested it.


He said nothing about his measurement devices nor sampling frequencies.
I have no idea on what his spectra mean. However, wktk_smile's post reminded me of Kakuta's report.

Is this information helpful enough?

Bunpei

--------------------------------------
Winter, spring, summer or fall
All you have to do is call
And I'll be there
You've got a friend
--------------------------------------

Hi Bunpei,

Thank you for the info you posted.

Do you mean "No tuning" = normal MCLK and "turned" = inverted MCLK ?

I'll try the inverted MCLK at 90.xxx and 98.xxx MHz on ESS9018 DAC to see what's the difference between normal MCLK.

Regards,

Ian
 
Last edited:
Hi Ian,

My plan connect Amanero USB to SPDIF board via I2S input and the CD Transport to SPDIF board via SPDIF input.

I know SPDIF board is switching between I2S and SPDIF is by manual, but the manual is not connect the signal to Amanero or Coxial input ?.

Regards,

Van Duy

I don't suggest connecting audio system to USB based I2S source directly. You need isolating the PC ground. An I2S signal isolator would be highly recommended.

Ian
 
Does one of your boards fit the bill?

And, please: I am not criticizing Ian for advertizing his own designs. I am simply uncertain whether one of his designs can be considered a "general purpose I2S signal isolator". If the answer is yes, I would also like to know the maximum signal bandwidth of the design and/or the maximum sample rate that is supported.



I don't suggest connecting audio system to USB based I2S source directly. You need isolating the PC ground. An I2S signal isolator would be highly recommended.

Ian
 
... I am simply uncertain whether one of his designs can be considered a "general purpose I2S signal isolator". ...

What about using the optical connection rather than "noisy" USB? Once you have bitperfect toslink connection then Ian's FIFO board + clock board will ensure perfect I2S output without connection to the PC ground. Any decent motherboard has an optical SPDIF output.

I think that optical isolation is the best choice from other options like: SPDIF transformers, USB isolation chips, I2S isolation chips, optocouplers or some wireless solution (that brings some noise again). You can even decide how far away your audio can be from the PC source - optical cables are available in various lengths.

Daniel
 
What about using the optical connection rather than "noisy" USB? Once you have bitperfect toslink connection then Ian's FIFO board + clock board will ensure perfect I2S output without connection to the PC ground. Any decent motherboard has an optical SPDIF output.

I think that optical isolation is the best choice from other options like: SPDIF transformers, USB isolation chips, I2S isolation chips, optocouplers or some wireless solution (that brings some noise again). You can even decide how far away your audio can be from the PC source - optical cables are available in various lengths.

Daniel

Thanks Denie,

"I2S signal isolator" mean FIFO isolator board V1.5 MINI KIT and I can use it in this case ?.

There are a quite a few I2S isolation solutions you can use, but the best solution is the native isolator comes with the usb sound card. Unfortunately I don't have a universal I2S isolator. However on the isolator kit, a reserved isolator footprint placed on PCB which you can make use of. You can use one of the isolaator chip from the options as the I2S isolator. But you have to figure out what to do by yourself:).

Good luck.

Ian
 
There are a quite a few I2S isolation solutions you can use, but the best solution is the native isolator comes with the usb sound card. Unfortunately I don't have a universal I2S isolator. However on the isolator kit, a reserved isolator footprint placed on PCB which you can make use of. You can use one of the isolaator chip from the options as the I2S isolator. But you have to figure out what to do by yourself:).

Good luck.

Ian

Thanks Ian , I will try more information for the best solution.
 
FIFO not locking - help please

Hi All,

I'm having an issue with the FIFO "locking".

I have TP48 connected to GND.

Im feeding the FIFO with I2S 16/44.1 from a QA550 SD card reader.

Whats strange is that it was working last night if i touched the Altera chip in the center of the plastic package...

Any advice anyone?

Thanks.
 
wow Ryan, i'm a little stumped, ive fed fifo with all manner of sources, some great quality, some horrendus and i'm yet to find it doesnt lock.

have you tried another source? I suggest trying the spdif out of the QA550, using its i2s will not provide any benefit, or didnt you get the fifo spdif module? it could be some issue with the QA550 being battery powered, perhaps the i2s is offset and having issues? sorry ive not had to use TP48 being a test point, what is the purpose of that? to give it a ground??
 
Thanks for the reply.

TP48 jumper connected to ground is to use "higher frequency XO (for example, use 22.5792 MHz XO for 44.1 KHz), or same XO frequency for two Fs (for example, use 22.5792 MHz XO for both 44.1 KHz and 88.2 KHz)."

I also bought the spdif module, but i'd need a better power supply to power that aswell.

So yes, im pretty stumped at the moment too.

The qa550 im using is running off a wall wart, not batteries.

Any other ideas? Anynody?
 
Hi All,

I'm having an issue with the FIFO "locking".

I have TP48 connected to GND.

Im feeding the FIFO with I2S 16/44.1 from a QA550 SD card reader.

Whats strange is that it was working last night if i touched the Altera chip in the center of the plastic package...

Any advice anyone?

Thanks.

Hi ryanj,

Try spdif board or other i2s source to see if the problem still their.

Regards,

Ian
 
Testing report of running ESS9018 with inverted MCLK

Running ESS9018 with inverted MCLK is an interesting topic. Somebody thinks it’s important, while others seems don’t much care about it. So, I did some real test on this issue with Si570 clock board V2.0 and my BIII DAC today.

Si570 prototype clock board V2.0 was configured into both normal and inverted MCLK mode. Please see the screen shoot pictures below of the waveform testing result. The white waveform is the ESS9018 MCLK running at 98.xxx MHz, the green waveform is the “eye” of I2S BCK (or SCK, WS and SD as well) signal. We can see, with normal phase MCLK configuration, changing on I2S signals follows the raising edge of MCLK. While with inverted MCLK configuration, changing on I2S signals follows the falling edge of MCLK. With the Potato 74G74 being as the re-clock FF, the delay Tpd is around 2ns and the raising/falling time is around 0.6-0.7ns. Si570 clock board was powered by an external TPS7A4700 reg PCB with a battery pack as the DC input.

The interesting thing is they really sound a bit different. But I’m not quite sure which one is better. The normal phase MCLK already sounds very good, when it turns to the inverted MCLK, feels the background a bit more quiet and dark. It’s more obvious running at 45.xxx/49.xxx MHz then at 90.xxx/98.xxx MHz. Maybe I already got familiar with the sound of normal MCLK, feels wise, the normal MCLK sounds a little bit rich. But, overall, I still think the inversed MCLK plays positive.

Based on my testing result, I think I have to include this normal/inverted MCLK feature into Si570 clock board V3.0 design. But my question is which one is better to be as the default configuration?

Ian
 

Attachments

  • NormalMCLKG74.png
    NormalMCLKG74.png
    40.9 KB · Views: 467
  • InvertedMCLKG74.png
    InvertedMCLKG74.png
    41.8 KB · Views: 423
  • Si570Board.JPG
    Si570Board.JPG
    200.9 KB · Views: 440
  • system.JPG
    system.JPG
    157.4 KB · Views: 416
  • TPS7A47RegMLCC.JPG
    TPS7A47RegMLCC.JPG
    107.6 KB · Views: 412
Hi ryanj,

Try spdif board or other i2s source to see if the problem still their.

Regards,

Ian

Hi Ian, i tried another source, same problem. :(

Although if you give the Altera chip a tickle on the right side halfway up; it starts locking with the "lock" and "empty" leds flashing...

Could it be a dry solder joint?

On close inspection of the Altera chip i noticed a very small amount of solder half way up one of the legs nearly touching the leg next to it, this is the same place described above. Solder was removed, but the problem remained.

Sorry for my ignorance, this project may just defeat me! So very close though, its playing me sweet music right now.. just had to tickle it... i know its weird.
 
Hi Ian, i tried another source, same problem. :(

Although if you give the Altera chip a tickle on the right side halfway up; it starts locking with the "lock" and "empty" leds flashing...

Could it be a dry solder joint?

On close inspection of the Altera chip i noticed a very small amount of solder half way up one of the legs nearly touching the leg next to it, this is the same place described above. Solder was removed, but the problem remained.

Sorry for my ignorance, this project may just defeat me! So very close though, its playing me sweet music right now.. just had to tickle it... i know its weird.

You could try to reflow all the connections on the chip. You could do it carefully by touching every leg. It might help if you add tiny amount of solder why you doing it. Check any other connections as well, because it might happen that while you are rocking chip, some other connection is acting, and it falsely appears as if the chip is at fault. Maybe wires to and from board?
 
Last edited: