Drive NOS AD1865/62,PCM1704/02/63,TDA1541 from FIFO: Universal I2S-PCM driver board

Ok! Now I am confused. TI PCM1704 can do 24bit/768kHz as per datasheet (page 7) with 32-bit frame length, thus meeting the maximum BCLK rate of 24.576MHz (32 x 768).

I am confused that why this converter uses 64-bit frame length?

When I say 64Fs, I mean "64Fs I2S input". The PCM daughter board accepts I2S input from 32Fs to 64Fs which will cover most of I2S sources.

When you talk about the 32-bit frame length from the 1704 datasheet, it means the 32bit frame length of the PCM signal feeding to 1704. It's totally a different story than the I2S input. The PCM daughter board will generate exactly 24bit PCM signal in stopping clock mode or 32 bit in continue clock mode for 1704.

Actually, with the possible half-speed mode, the board can generate 786KHz PCM signal with CLK frequency running at 24.576MHz from a 786KHz I2S input.

Ian
 
perhaps its because there is not a single interface that can output 768kHz i2s/PCM afaik (see edit, there are a couple), there is no native 768khz PCM content available and even if there was it would be upsampled and somewhat pointless? the inherent LPF in the vast majority of amplifiers and line stages, even if its just gate capacitance of devices used, renders this content as noise only. not really a possible feature that should impose changes on hardware or software IMO.

just because you can do something, does not mean that you should. THD, noise and other performance will in most cases be significantly worse at 768khz (somePWM and class D noise and harmonics are the same independent of frequency), most DACS perform at their best at 96-192khz. then of course there is the lack of a 768khz ADC. the 768khz ability is driven by marketing, there are probably companies selling $500-1000 firmware upgrades to supply such a possibility.

actually I lie, the Zodiac platinum will do it over USB, there is probably a couple of other proprietary very expensive products with custom drivers that can, just so they are able to justify an 'upgrade' to previous versions and have more exclusive buzzwords. the rest of my post stands.


Thanks qusp! for the information. Your points about performance and lack of content for 768khz are well taken. I don't have any music higher than 44.1kHz but I do intend to buy some 192kHz files when I'll have such DIY DAC. I was trying to understand the working of this converter, how it will work with PCM1704 and why 64 bit frame was used.
 
When I say 64Fs, I mean "64Fs I2S input". The PCM daughter board accepts I2S input from 32Fs to 64Fs which will cover most of I2S sources.

When you talk about the 32-bit frame length from the 1704 datasheet, it means the 32bit frame length of the PCM signal feeding to 1704. It's totally a different story than the I2S input. The PCM daughter board will generate exactly 24bit PCM signal in stopping clock mode or 32 bit in continue clock mode for 1704.

Actually, with the possible half-speed mode, the board can generate 786KHz PCM signal with CLK frequency running at 24.576MHz from a 786KHz I2S input.

Ian

Thanks Ian! I am novice thus I really wanted to understand the frame length difference and the wisdom behind the 64-bit frame length. I used PCM1704 example as to my knowledge this is the highest spec true 24bit DAC.

Thanks for pointing out the difference between input and output frame length.
 
Thanks qusp! for the information. Your points about performance and lack of content for 768khz are well taken. I don't have any music higher than 44.1kHz but I do intend to buy some 192kHz files when I'll have such DIY DAC. I was trying to understand the working of this converter, how it will work with PCM1704 and why 64 bit frame was used.

no problem mate, all good, the push for higher speed starts to get a bit silly when its only upsampled from lower rates IMO, especially when many dacs will do this internally anyway. I havent been following this board closely so not sure of the full capabilities, but I do know that its fairly academic.

notice Ians proviso

Actually, with the possible half-speed mode, the board can generate 786KHz PCM signal with CLK frequency running at 24.576MHz from a 786KHz I2S input.

there are a few interfaces that will allow output at this rate, perhaps after upsampling in puremusic or amarra, but I dont even think there are any proprietary ADCs that will sample this high, there is only a single ADC chip that i'm aware of that can even do 384khz PCM, the ES9102. this is not to be confused with 1bit DSD, which is at a much higher rate.

one thing the higher rates will do is take the pressure off the analogue stage low pass filter by pushing the images higher up in frequency. Air itself will roll off HF audio frequencies well before 100khz afaik, even if your speakers can produce it. so 384kHz is more than enough IMO
 
Last edited:
Half-speed mode passed simulation

I revised the verilog code to implement the half-speed mode. Now, it passed the simulation.

Simulation was running at 384KHz with 49.xxx MHz MCLK. You can see at full-speed mode (default), the CLK frequency was 24.xxxMHz, exactly as same as SCK. With half-speed mode jumper JHALFn jumped to low level, it goes half-speed mode. All data was exactly as same as full-speed mode, but CLK frequency was just as half as SCK, now becomes 12.xxx MHz.

Next step, I’ll do some real test with logic analyzer on the fixture. This project will be ready for launch if everything is OK.

Ian
 

Attachments

  • FullSpeedMode384KHz.png
    FullSpeedMode384KHz.png
    33.9 KB · Views: 536
  • HalfSpeedMode384KHz.png
    HalfSpeedMode384KHz.png
    35.1 KB · Views: 532
I2S to PCM board half-speed mode passed real world test

New upgraded firmware has been programmed, the daughter board passed the real world test without any suspecting.

Four waveforms were captured from screen of logic analyzer, they are:
192KHz 18bit half-speed mode
192KHz 18bit full-speed mode
384KHz 18bit half-speed mode
384KHz 18bit full-speed mode
From those waveform, it’s very clear the difference between half and full speed mode.

Bit perfect confirmed for both half-speed and full-speed mode up to 384KHz by loop test fixture as well. The MCLK frequency can go up to 98.xxx MHz from Si570 clock board without any problem. It also works for other MCLK frequency options, such as 49.xxx/45.xxx, 24.xxx/22.xxx and 12.xxx/11.xxx.

Real listening test did on PCM1704 and TDA1541A DAC. Half-speed mode sounds as good as full-speed mode. Both of them have no problem running at 192KHz. I didn't do the 384KHz listening test. I don't have a 384KHz music source.

Half-speed mode makes it possible running your NOS DAC at higher Fs. But, theoretically, full-speed mode comes with lower noise. The reason is obvious. There is more silence time on signals than the half-speed mode.

I got the final PCB, I’ll post some pictures soon.

Ian
 

Attachments

  • HalfSpeed192KHz18Bit.png
    HalfSpeed192KHz18Bit.png
    20.7 KB · Views: 420
  • FullSpeed192KHz18Bit.png
    FullSpeed192KHz18Bit.png
    18.8 KB · Views: 425
  • HalfSpeed384KHz18Bit.png
    HalfSpeed384KHz18Bit.png
    21.9 KB · Views: 418
  • FullSpeed384KHz18Bit.png
    FullSpeed384KHz18Bit.png
    17.9 KB · Views: 112
Last edited:
Gday Ian,

Havent been following along with any diligence here, Ill believe you when you say its good. Havent even gotten to the fifo as yet with child and another on the way....the silliness of life methinks.
Look forward to getting this and throwing in the stash "to do" pile, really glad Chris has done the wiki for the fifo as well. Much appreciation for your efforts!
Thanks,
Drew
 
Member
Joined 2003
Paid Member
TOTAL 102

TV Man x 2
merlin el mago
rtd
jameshillj
erin x1 (or 2)
Nikola Krivorov x1
Rupor54
vitalica
analog_sa
andrea_mori x 5
dsavitsk
tagheuer
hirez69 x 2
ccliu x 2
BDL
cddumat
regal x 2
zoran
Jogi
Zen(zenelectro) x 2
Buzzforb
SPWON
crobbins5421 X 2
marcus1 x1 (or 2)
casshan x 2
Dweeb99 X 2
jackw X 2
kazap X 2
danzup x 3
Giordano x2
Tony_T
Tubo x1
clivem x2
noizas x4
JoeyDD x2
skullaudio
dinos8746 x2
dvb-projekt
bisesik x2
guglielmope x1
Valeriano x1
mhgawel x1
av-trouvaille x 1 (or 2)
iloveswan x1
dtses
Flyboi X1
Lil' Knight x1 (or 2)
skippyboy x1
acccruz x1 (or 2)
WhiteBull x1
hksidney x 1
vts2006 x 3
JustBuildLspkAS.x3 &1 fifo kit finished for pcm1704 (ihave AD1862 ,pcm63,pcm1704)
54: PET-240 2 * TDA1541
TonyB
damohpi x1
iloveswan x 1
Joseph K x 2
mefistofelez x2 (pcm63P)
JLOP x1 (WaveIO, AD1865 NOS SRPP)
sceglar x1
4me2ctv x 1
tubesguy x 1
ctrange x 1
spm x 1
Joonas x1
Loboone x 1
flowerpot x 1
pavelal x 1
Steve Ha x 1
new2hifi x 1
Superdad x 1 (WaveIO, PCM1704K, discrete I/V)
Greg Stewart x 1
 
352.8 KHz listening test on NOS DAC TDA1541A and PCM1704

Since Ammara can play music up to 384 KHz with Amanero Como384 USB, it seems I can do some real listening tests on the I2S-PCM convertor board at higher Fs with NOS DAC now.

I download some 352.8 KHz music tracks from 2L: High Resolution Music DOWNLOAD services .:. FLAC in free TEST BENCH

Software setup:
MacMini – itunes - AmmaraV2.5.1

Hardware setup:
Amanero combo384 – isolator – FIFO – Si570 clock – I2S to PCM convertor

DAC setup:
1. NOS TDA1541 fixture
Jumper: short JOB and Half-speed mode
2. NOS PCM1704 fixture
Jumper: short J24 only

352.8 KHz music was playing on both NOS TDA1541A and PCM1704 without any problem. With higher Fs, they sound more analog. I have to say, TDA1541A sounds wonderful. I never thought it can sound like this way, with much higher Fs, it sounds very impressed.

At 352.8 KHz Fs, TDA1541A can only work at half-speed mode. Thanks vzs, without your great suggestion, all of us will lose the opportunity playing 352/384 KHz music with TDA1541, as well as AD1865 of course. If you don’t mind, I’ll send a final version I2S to PCM with half-speed mode to you for evaluation once I finish test.

PCM1704 can play 352.8KHz music at both half and full speed mode without any problem.

Unfortunately I can’t find any working software based real time up-sampling apps which can go up to 384 KHz so far for both Mac and PC, any recommendation?

Ian
 

Attachments

  • PCM1704Fixture.JPG
    PCM1704Fixture.JPG
    589.4 KB · Views: 842
  • TDAi541AFixture.JPG
    TDAi541AFixture.JPG
    540.6 KB · Views: 843
  • Combo384AndIsolator.JPG
    Combo384AndIsolator.JPG
    412.7 KB · Views: 852
  • SystemConfiguration.JPG
    SystemConfiguration.JPG
    446.2 KB · Views: 876
  • ScreenShotAmarra352KHz.png
    ScreenShotAmarra352KHz.png
    196.4 KB · Views: 866
  • FifoAndDaughterBoard.JPG
    FifoAndDaughterBoard.JPG
    470 KB · Views: 347
TOTAL 103

TV Man x 2
merlin el mago
rtd
jameshillj
erin x1 (or 2)
Nikola Krivorov x1
Rupor54
vitalica
analog_sa
andrea_mori x 5
dsavitsk
tagheuer
hirez69 x 2
ccliu x 2
BDL
cddumat
regal x 2
zoran
Jogi
Zen(zenelectro) x 2
Buzzforb
SPWON
crobbins5421 X 2
marcus1 x1 (or 2)
casshan x 2
Dweeb99 X 2
jackw X 2
kazap X 2
danzup x 3
Giordano x2
Tony_T
Tubo x1
clivem x2
noizas x4
JoeyDD x2
skullaudio
dinos8746 x2
dvb-projekt
bisesik x2
guglielmope x1
Valeriano x1
mhgawel x1
av-trouvaille x 1 (or 2)
iloveswan x1
dtses
Flyboi X1
Lil' Knight x1 (or 2)
skippyboy x1
acccruz x1 (or 2)
WhiteBull x1
hksidney x 1
vts2006 x 3
JustBuildLspkAS.x3 &1 fifo kit finished for pcm1704 (ihave AD1862 ,pcm63,pcm1704)
54: PET-240 2 * TDA1541
TonyB
damohpi x1
iloveswan x 1
Joseph K x 2
mefistofelez x2 (pcm63P)
JLOP x1 (WaveIO, AD1865 NOS SRPP)
sceglar x1
4me2ctv x 1
tubesguy x 1
ctrange x 1
spm x 1
Joonas x1
Loboone x 1
flowerpot x 1
pavelal x 1
Steve Ha x 1
new2hifi x 1
Superdad x 1 (WaveIO, PCM1704K, discrete I/V)
Greg Stewart x 1
panther5429 x 1
__________________
 
352.8 KHz music was playing on both NOS TDA1541A and PCM1704 without any problem. With higher Fs, they sound more analog. I have to say, TDA1541A sounds wonderful. I never thought it can sound like this way, with much higher Fs, it sounds very impressed.
Wonderful news! Hope you'll start GB soon.

Unfortunately I can’t find any working software based real time up-sampling apps which can go up to 384 KHz so far for both Mac and PC, any recommendation?
Below you find my suggestion for real time up-sampling but since it requires some time to setup I suggest you up-sample offline with SoX first.

One proven solution for software based real time up-sampling:

Logitech Media Server (LMS) +
SqueezeLite (streaming client) +
Logitech Squeezebox Controller app for Android or iPhone/Pad/Pod or LMS has a web interface to control what's played.

Both server and client can be run on pretty much anything from PC (Win/Linux), Mac to ARM based embedded systems and are _free and open source_. Up-sampling is via SoX and can be configured on either server or client depending on the whole setup - if run on the same machine it shouldn't matter.

This project: Community Squeeze Operating System has all the above built in one OS image to create a dedicated computer player. Of course most computers have more or less noise... no problem, there is even an official embedded board for it: Wandboard . Add to the Wandboard an USB hub and an USB HDD and you get a standalone 384KHz capable USB-out audio player for under 300$. It was never that easy and cheap.


For now I have LMS on PC, it up-samples to 352.8KHz and a SqueezeLite client running on a Squeezebox Touch. I know AD1865 is not supposed to work above 12MHz but at least mine is working (subjectively) well - would suggest for others to try both half and full speed mode and decide (if both are working) which is best. Looking forward trying it out myself as well.

I've tried several filters provided by SoX after up-sampling: linear phase, minimum phase - with different settings and prefer a minimum phase similar to that of Meridian 808.2 . It's not always a day and night difference and I'm not A/B testing but with several pieces from Leonard Bernstein - West Side Story I can always tell the difference between linear or minimum phase (e.g. Leonard Bernstein - West Side Story - 06. The Dance at the Gym - Mambo) - the overall experience being better with the later.

Ever since I installed Amanero Combo384 and configured 8x up-sampling I don't feel the urge to modify anything in my system but simply listen and discover music, even though several things are waiting in the drawer.
Hope to find time this week to make some photos of the existing setup.


Let me know which up-sampling route you prefer so I can further help... will add these to the wiki page to be in one place.

Zsolt
 
Last edited:
TOTAL 106

TV Man x 2
merlin el mago
rtd
jameshillj
erin x1 (or 2)
Nikola Krivorov x1
Rupor54
vitalica
analog_sa
andrea_mori x 5
dsavitsk
tagheuer
hirez69 x 2
ccliu x 2
BDL
cddumat
regal x 2
zoran
Jogi
Zen(zenelectro) x 2
Buzzforb
SPWON
crobbins5421 X 2
marcus1 x1 (or 2)
casshan x 2
Dweeb99 X 2
jackw X 2
kazap X 2
danzup x 3
Giordano x2
Tony_T
Tubo x1
clivem x2
noizas x4
JoeyDD x2
skullaudio
dinos8746 x2
dvb-projekt
bisesik x2
guglielmope x1
Valeriano x1
mhgawel x1
av-trouvaille x 1 (or 2)
iloveswan x1
dtses
Flyboi X1
Lil' Knight x1 (or 2)
skippyboy x1
acccruz x1 (or 2)
WhiteBull x1
hksidney x 1
vts2006 x 3
JustBuildLspkAS.x3 &1 fifo kit finished for pcm1704 (ihave AD1862 ,pcm63,pcm1704)
54: PET-240 2 * TDA1541
TonyB
damohpi x1
iloveswan x 1
Joseph K x 2
mefistofelez x2 (pcm63P)
JLOP x1 (WaveIO, AD1865 NOS SRPP)
sceglar x1
4me2ctv x 1
tubesguy x 1
ctrange x 1
spm x 1
Joonas x1
Loboone x 1
flowerpot x 1
pavelal x 1
Steve Ha x 1
new2hifi x 1
Superdad x 1 (WaveIO, PCM1704K, discrete I/V)
Greg Stewart x 1
panther5429 x 1
supra x 3
__________________
 
Total 107

TV Man x 2
merlin el mago
rtd
jameshillj
erin x1 (or 2)
Nikola Krivorov x1
Rupor54
vitalica
analog_sa
andrea_mori x 5
dsavitsk
tagheuer
hirez69 x 2
ccliu x 2
BDL
cddumat
regal x 2
zoran
Jogi
Zen(zenelectro) x 2
Buzzforb
SPWON
crobbins5421 X 2
marcus1 x1 (or 2)
casshan x 2
Dweeb99 X 2
jackw X 2
kazap X 2
danzup x 3
Giordano x2
Tony_T
Tubo x1
clivem x2
noizas x4
JoeyDD x2
skullaudio
dinos8746 x2
dvb-projekt
bisesik x2
guglielmope x1
Valeriano x1
mhgawel x1
av-trouvaille x 1 (or 2)
iloveswan x1
dtses
Flyboi X1
Lil' Knight x1 (or 2)
skippyboy x1
acccruz x1 (or 2)
WhiteBull x1
hksidney x 1
vts2006 x 3
JustBuildLspkAS.x3 &1 fifo kit finished for pcm1704 (ihave AD1862 ,pcm63,pcm1704)
54: PET-240 2 * TDA1541
TonyB
damohpi x1
iloveswan x 1
Joseph K x 2
mefistofelez x2 (pcm63P)
JLOP x1 (WaveIO, AD1865 NOS SRPP)
sceglar x1
4me2ctv x 1
tubesguy x 1
ctrange x 1
spm x 1
Joonas x1
Loboone x 1
flowerpot x 1
pavelal x 1
Steve Ha x 1
new2hifi x 1
Superdad x 1 (WaveIO, PCM1704K, discrete I/V)
Greg Stewart x 1
panther5429 x 1
supra x 3
Clsidxxl x 1
 
Total 108

TV Man x 2
merlin el mago
rtd
jameshillj
erin x1 (or 2)
Nikola Krivorov x1
Rupor54
vitalica
analog_sa
andrea_mori x 5
dsavitsk
tagheuer
hirez69 x 2
ccliu x 2
BDL
cddumat
regal x 2
zoran
Jogi
Zen(zenelectro) x 2
Buzzforb
SPWON
crobbins5421 X 2
marcus1 x1 (or 2)
casshan x 2
Dweeb99 X 2
jackw X 2
kazap X 2
danzup x 3
Giordano x2
Tony_T
Tubo x1
clivem x2
noizas x4
JoeyDD x2
skullaudio
dinos8746 x2
dvb-projekt
bisesik x2
guglielmope x1
Valeriano x1
mhgawel x1
av-trouvaille x 1 (or 2)
iloveswan x1
dtses
Flyboi X1
Lil' Knight x1 (or 2)
skippyboy x1
acccruz x1 (or 2)
WhiteBull x1
hksidney x 1
vts2006 x 3
JustBuildLspkAS.x3 &1 fifo kit finished for pcm1704 (ihave AD1862 ,pcm63,pcm1704)
54: PET-240 2 * TDA1541
TonyB
damohpi x1
iloveswan x 1
Joseph K x 2
mefistofelez x2 (pcm63P)
JLOP x1 (WaveIO, AD1865 NOS SRPP)
sceglar x1
4me2ctv x 1
tubesguy x 1
ctrange x 1
spm x 1
Joonas x1
Loboone x 1
flowerpot x 1
pavelal x 1
Steve Ha x 1
new2hifi x 1
Superdad x 1 (WaveIO, PCM1704K, discrete I/V)
Greg Stewart x 1
panther5429 x 1
supra x 3
Clsidxxl x 1
NATDBERG x 1
 
I'm a bit of a newbe to this but there's no reason why this won't work well with an UltraAnalog D20400 run in an NOS way is there?

D20400 Datasheet PDF
Digital input supports Binary Two's Complement (supposedly MSB first) and the input is CMOS/TTL compatible (Vih 2.4V, min) - this is good. Timing diagrams are missing but on the worst case it should do 8x with half-speed mode. Look for a datasheet with timing diagrams if you want to be 100% sure.
Also datasheet does not show how to set different input formats just says: "An application note guides the user in selecting the appropriate interface configuration for the application."

Zsolt
 
Thanks VZS.

I'll look out for app notes around the web. In the meantime I can at least work something out from the circuit used as it is currently configured with the current reciever/filter combo it's connected to. There are also some other schematics out there using the DAC to examine.
 
Total 109

TV Man x 2
merlin el mago
rtd
jameshillj
erin x1 (or 2)
Nikola Krivorov x1
Rupor54
vitalica
analog_sa x2
andrea_mori x 5
dsavitsk
tagheuer
hirez69 x 2
ccliu x 2
BDL
cddumat
regal x 2
zoran
Jogi
Zen(zenelectro) x 2
Buzzforb
SPWON
crobbins5421 X 2
marcus1 x1 (or 2)
casshan x 2
Dweeb99 X 2
jackw X 2
kazap X 2
danzup x 3
Giordano x2
Tony_T
Tubo x1
clivem x2
noizas x4
JoeyDD x2
skullaudio
dinos8746 x2
dvb-projekt
bisesik x2
guglielmope x1
Valeriano x1
mhgawel x1
av-trouvaille x 1 (or 2)
iloveswan x1
dtses
Flyboi X1
Lil' Knight x1 (or 2)
skippyboy x1
acccruz x1 (or 2)
WhiteBull x1
hksidney x 1
vts2006 x 3
JustBuildLspkAS.x3 &1 fifo kit finished for pcm1704 (ihave AD1862 ,pcm63,pcm1704)
54: PET-240 2 * TDA1541
TonyB
damohpi x1
iloveswan x 1
Joseph K x 2
mefistofelez x2 (pcm63P)
JLOP x1 (WaveIO, AD1865 NOS SRPP)
sceglar x1
4me2ctv x 1
tubesguy x 1
ctrange x 1
spm x 1
Joonas x1
Loboone x 1
flowerpot x 1
pavelal x 1
Steve Ha x 1
new2hifi x 1
Superdad x 1 (WaveIO, PCM1704K, discrete I/V)
Greg Stewart x 1
panther5429 x 1
supra x 3
Clsidxxl x 1
NATDBERG x 1