Gebalanceerde DAC en discrete interpolatie

Traditionele bronapparaten zoals CD-, DVD- en platenspelers.
(streaming-/computeraudio graag in de daarvoor aangewezen forumgroep)

Moderators: Barry2001, Beheerdersteam

Gebruikersavatar
voodooless
Berichten: 4775
Lid geworden op: di 02 nov 2004, 23:23
Locatie: Arnhem
Contacteer:

Bericht door voodooless »

Even een kort vraagje tussendoor:

Ik zie dat jullie steeds van een gebalanceerd ontwerp uit gaan. Zo'n TDA chipje heeft natuurlijk maar een enkele output, en dus kun je de halve schakeling gebruiken.

Maar als je nu echt balanced wil gaan... Is dat het volgende mogelijk: Neem een stereo TDA1541 , en stuur door L het normale signaal. Door R stuur je omgedraaide 16 bits waarde (dus fase 180 graden om). Samen gebruik je dat dan als balanced output voor de IV :?: Verdere vraag: is het dan misschien ook nog mogelijk om dit te gebruiken om niet-lineariteiten van de DAC weg te halen?
Gebruikersavatar
SSassen
Berichten: 11528
Lid geworden op: vr 22 apr 2005, 10:21
Locatie: Zuidoostbeemster
Contacteer:

Bericht door SSassen »

Christiaan,
Maar als je nu echt balanced wil gaan... Is dat het volgende mogelijk: Neem een stereo TDA1541 , en stuur door L het normale signaal. Door R stuur je omgedraaide 16 bits waarde (dus fase 180 graden om). Samen gebruik je dat dan als balanced output voor de IV Verdere vraag: is het dan misschien ook nog mogelijk om dit te gebruiken om niet-lineariteiten van de DAC weg te halen?
Ik heb hier inmiddels 16-stuks (!) TDA1541A en TDA1543 liggen, je mag drie keer raden wat ik van plan ben, het feit dat ik al een aantal maal een suggestie gedaan heb voor een gebalanceerde I/V omzetter moet toch een hint zijn in de goede richting 8)

Met vriendelijke groet,

Sander Sassen
http://www.hardwareanalysis.com
Gebruikersavatar
voodooless
Berichten: 4775
Lid geworden op: di 02 nov 2004, 23:23
Locatie: Arnhem
Contacteer:

Bericht door voodooless »

Ga je een multikanaals setup maken ofzo :?: Of ga je stacken?

Langzaam begin ik ook interesse te krijgen in zo'n DAC'je. Leuk om voor klein geld eens een keer te maken lijkt me :) Maar het moet natuurlijk wel balanced zijn :) Een TDA per kanaal vind ik dat wel genoeg om eens te testen.
Gebruikersavatar
SSassen
Berichten: 11528
Lid geworden op: vr 22 apr 2005, 10:21
Locatie: Zuidoostbeemster
Contacteer:

Bericht door SSassen »

Christiaan,

Het kwam al eerder ter sprake in deze thread, discrete interpolatie, dwz. het in het analoge domein creeëren van extra samples, hierdoor kan je zonder oversampling de samplerate met acht DAC's opschroeven naar 352.8kHz, met 4x oversampling zelfs naar 1.411MHz. Hieronder even een indruk van het gecombineerde schuifregister wat je nodig hebt voor een I2S bron die met 48BCK data uitstuurt, bv. een Philips CD-Pro2M loopwerk. Hierdoor verbetert niet alleen de lineariteit aanzienlijk, ook de vervorming gaat omlaag, etc. etc.

Timing chain, CD-Pro2M, 48BCK I2S
http://hardwareanalysis.com/images/arti ... /11940.gif

Met vriendelijke groet,

Sander Sassen
http://www.hardwareanalysis.com
Gebruikersavatar
voodooless
Berichten: 4775
Lid geworden op: di 02 nov 2004, 23:23
Locatie: Arnhem
Contacteer:

Bericht door voodooless »

Dat had ik al gezien ja. Maareh, die extra samples? Dat zijn toch gewoon copien van de orginelen? Je doet toch geen interpolatie tussen de twee orginelen? Je kunt dat wel de sample rate omhoog gooien, maar wat schiet je er precies mee op als je geen digitaal filter toepast?

Kortom, het is me nog niet helemaal duidelijk hoe dit in zijn werk gaat.
Gebruikersavatar
dekkersj
Berichten: 1210
Lid geworden op: wo 11 jan 2006, 0:41
Locatie: Steenbergen (NB)
Contacteer:

Bericht door dekkersj »

voodooless schreef:
Dat had ik al gezien ja. Maareh, die extra samples? [...]

Kortom, het is me nog niet helemaal duidelijk hoe dit in zijn werk gaat.
Niks geen extra samples, je creert alleen wat galm. Het is net of je in de badkamer staat zogezegd. Je gebruikt inderdaad domme kopieen die je kort achter elkaar laat horen. Dat is bij mij galm.

Groet,
Jacco
Gebruikersavatar
voodooless
Berichten: 4775
Lid geworden op: di 02 nov 2004, 23:23
Locatie: Arnhem
Contacteer:

Bericht door voodooless »

dekkersj schreef:
Niks geen extra samples, je creert alleen wat galm. Het is net of je in de badkamer staat zogezegd. Je gebruikt inderdaad domme kopieen die je kort achter elkaar laat horen. Dat is bij mij galm.
Oke, maar waar gebeurt dan de interpolatie, en hoe duw je dan het spectrum naar achteren?
Gebruikersavatar
dekkersj
Berichten: 1210
Lid geworden op: wo 11 jan 2006, 0:41
Locatie: Steenbergen (NB)
Contacteer:

Bericht door dekkersj »

voodooless schreef:
dekkersj schreef:
Niks geen extra samples, je creert alleen wat galm. Het is net of je in de badkamer staat zogezegd. Je gebruikt inderdaad domme kopieen die je kort achter elkaar laat horen. Dat is bij mij galm.
Oke, maar waar gebeurt dan de interpolatie, en hoe duw je dan het spectrum naar achteren?
Nergens wordt een interpolatie gedaan. Hooguit worden in het tijddomein signalen opgeteld. En het spectrum verandert niet in de breedte. De tijdsvertragingen zullen wel zorgen voor een faseshift.

Groet,
Jacco
Gebruikersavatar
voodooless
Berichten: 4775
Lid geworden op: di 02 nov 2004, 23:23
Locatie: Arnhem
Contacteer:

Bericht door voodooless »

dekkersj schreef:
Nergens wordt een interpolatie gedaan. Hooguit worden in het tijddomein signalen opgeteld. En het spectrum verandert niet in de breedte. De tijdsvertragingen zullen wel zorgen voor een faseshift.
Oke. Dus alle DAC's krijgen tijdvertraagd het zelfde signaal voor hun kiezen?

Is hier meer info over te vinden ergens? Site, linkje naar een thread ofzo? Ik kan nu wel een heleboel onnozele vragen stellen, maar als het al ergens staat beschreven is dat natuurlijk veel makkelijker ;)
Gebruikersavatar
SSassen
Berichten: 11528
Lid geworden op: vr 22 apr 2005, 10:21
Locatie: Zuidoostbeemster
Contacteer:

Bericht door SSassen »

Jacco,

Niet helemaal, het is directe interpolatie, feitelijk gelijk aan lineare interpolatie, hieronder een grafische voorstelling van hoe een tweetal DAC's de interpolatie doen.

Afbeelding

Met vriendelijke groet,

Sander Sassen
http://www.hardwareanalysis.com
Gebruikersavatar
voodooless
Berichten: 4775
Lid geworden op: di 02 nov 2004, 23:23
Locatie: Arnhem
Contacteer:

Bericht door voodooless »

Mkay. Dus gewoon tijd vertagen en dan optellen de hele zooi optellen?

Je krijgt dan een groter signaal terug echter met interpolatie? Dus het spectrum schuift dan wel degelijk op toch?
Gebruikersavatar
SSassen
Berichten: 11528
Lid geworden op: vr 22 apr 2005, 10:21
Locatie: Zuidoostbeemster
Contacteer:

Bericht door SSassen »

Christiaan,

Je krijgt er inderdaad een faseverschuiving voor terug, dus je ziet dat terug in een stuk afval in 't hoog. Ikzelf ga met oversampling aan de slag, dus daarmee valt dat weer recht te trekken, elk voordeel heeft z'n nadeel natuurlijk.

Met vriendelijke groet,

Sander Sassen
http://www.hardwareanalysis.com
Gebruikersavatar
voodooless
Berichten: 4775
Lid geworden op: di 02 nov 2004, 23:23
Locatie: Arnhem
Contacteer:

Bericht door voodooless »

Nouja, ik vind een twee DAC'je al leuk om mee te beginnen, zonder al die poespas ;)

Maar mijn manier om van een DAC een balanced output te maken (door simpelweg de 16 bit woorden voor een kanaal om te draaien zou prima moeten werken toch? En is dat dan compatible met de voorgestelde IV?
Gebruikersavatar
SSassen
Berichten: 11528
Lid geworden op: vr 22 apr 2005, 10:21
Locatie: Zuidoostbeemster
Contacteer:

Bericht door SSassen »

Christiaan,

Sterker nog, als je de DATA en de wordclock WS inverteert krijg je gratis interpolatie kado, met alleen het inverteren van de data kan je idd. gebalanceerd gaan werken, zie hieronder:

Dual DAC: DAC1 sample verschijnt onmiddelijk, DAC2 sample 32BCK delay.

1-32 (DAC1)
32-64 (DAC1+DAC2)

DATA DAC1 = DATA
BCK DAC1 = BCK
WS DAC1 = WS
L OUT = L OUT
R OUT = R OUT

DATA DAC2 = NDATA (inverted)
BCK DAC2 = BCK
WS DAC2 = NWS (inverted)
L OUT = R- OUT
R OUT = L- OUT

Met vriendelijke groet,

Sander Sassen
http://www.hardwareanalysis.com
Gebruikersavatar
voodooless
Berichten: 4775
Lid geworden op: di 02 nov 2004, 23:23
Locatie: Arnhem
Contacteer:

Bericht door voodooless »

eh, inverse bitstream != omgekeerde 16 bits waarde toch? Dat laatste is toch wat je wil?
Gebruikersavatar
SSassen
Berichten: 11528
Lid geworden op: vr 22 apr 2005, 10:21
Locatie: Zuidoostbeemster
Contacteer:

Bericht door SSassen »

Dit weekend nog flink wat geoptimaliseerd aan de I/V omzetter, hieronder de laatste versie, de ingangstrap is gecascodeerd om de PSRR omhoog te krijgen. Voor beide voedingsrails is de PSRR nu zo'n -75dB, de orginele versie was met zo'n -62dB een slordige 12dB slechter. De vervorming is licht gestegen, maar niet noemenswaardig.

Discrete I/V omzetter, versie 6
http://hardwareanalysis.com/images/arti ... /11943.gif

Met vriendelijke groet,

Sander Sassen
http://www.hardwareanalysis.com
Gebruikersavatar
dekkersj
Berichten: 1210
Lid geworden op: wo 11 jan 2006, 0:41
Locatie: Steenbergen (NB)
Contacteer:

Bericht door dekkersj »

voodooless schreef:
Mkay. Dus gewoon tijd vertagen en dan optellen de hele zooi optellen?

Je krijgt dan een groter signaal terug echter met interpolatie? Dus het spectrum schuift dan wel degelijk op toch?
Wat bedoel je met een spectrum dat schuift?

Groet,
Jacco
Gebruikersavatar
dekkersj
Berichten: 1210
Lid geworden op: wo 11 jan 2006, 0:41
Locatie: Steenbergen (NB)
Contacteer:

Bericht door dekkersj »

Voor hen die willen weten hoe het zit met die 8 DAC's die tijdverschoven zijn en daarna bij elkaar opgeteld, heb ik een formeel bewijs in de vorm van een pdf gemaakt: http://amorgignitamorem.nl/FolderForTra ... deKlok.pdf

Zonder wat uitleg er bij wordt het lastig leesbaar. Dus hier wat uitleg.

Iedere DAC uitgang is in feite een nulde orde houdcircuit en daarvan is het bekend dat deze afvalt in het hoog middels de Sincverzwakking. Dat is bij fs/4 zo'n 0.912 dB aan verzwakking.

Als je nu 8 DAC in tijd gaat vertragen met de afstand tussen twee is telkens Ts/8, dan tel je dus in feite 8 nulde orde houd signalen op. Het geinige is als je naar dit proces alleen al kijkt, er een additionele verzwakking optreedt. In de Fourier theorie is het bekend dat een tijdverschuiving een fasedraaiing in het frequentiedomein oplevert. Ofwel,

f(t-t0) <-> F(w)*exp(-j*omega*t0)

Als je dus 8 signalen op gaat tellen (f(t-t0) + f(t-t1) + f(t-t2) + ... + f(t-t7)), dan krijg je iets van F(w)*{...} en dat {...} is dan gegeven door "Out[4]" die in bovenstaande pdf terug te vinden is.

Gevoelsmatig moet er uiteindelijk een signaal uitkomen dat 8 keer groter was dan het beginsignaal en dat klopt gedeeltelijk. Als je namelijk naar de absolute waarde gaat kijken van hetgeen F(w) is vermenigvuldigd, dan is dat te schrijven als "Out[5]". Daaronder vind je een plotje van die absolute waarde en voor signalen dichtbij DC is dat inderdaad ook 8 keer groter dan een afzonderlijk tijdsignaal. Maar naarmate je dichterbij fs/2 komt, dan treedt er een verzwakking op die sterk lijkt op de Sincverzwakking. Bij fs/4 is deze verzwakking 7.21411 (zie "Out[7]") en dat komt neer op 20log(7.21411/8 ) = -0.898 dB. De conclusie is dan ook dat bij fs/4 de amplitude van het uitgangssignaal al met 1.81 dB verzwakt is...Lekkere DAC is dat zeg...(maar er zijn mensen die dit juist weer helemaal het einde vinden)

Ten slotte nog iets over groepslooptijd. Dit blijkt een constante te zijn en komt uit op 7*Pi/(8*ws), wat dus betekent dat de fasecoherentie niet aangetast wordt en dus onhoorbaar is.

Groet,
Jacco
Gebruikersavatar
voodooless
Berichten: 4775
Lid geworden op: di 02 nov 2004, 23:23
Locatie: Arnhem
Contacteer:

Bericht door voodooless »

Schitterend Jacco, zelfs ik begrijp je verhaaltje 8) En als ik er even over nadenk dan is het zelfs logisch :o
Gebruikersavatar
dekkersj
Berichten: 1210
Lid geworden op: wo 11 jan 2006, 0:41
Locatie: Steenbergen (NB)
Contacteer:

Bericht door dekkersj »

voodooless schreef:
Schitterend Jacco, zelfs ik begrijp je verhaaltje 8) En als ik er even over nadenk dan is het zelfs logisch :o
Dat dacht ik ook. :wink:

In een vlaag van totale verstandsverbijstering het wiskundige model doorgerekend. En er komt een interessant resultaat uit, al zeg ik het zelf.

Groet,
Jacco
Gebruikersavatar
voodooless
Berichten: 4775
Lid geworden op: di 02 nov 2004, 23:23
Locatie: Arnhem
Contacteer:

Bericht door voodooless »

Zitten in dit soort zaken niet ook verbanden met het digitale FIR filteren?

Zoja, dan zou je door het handig manipuleren van de data die je naar de DAC's stuurt de response kunnen aanpassen.
Gebruikersavatar
GerardJ
Berichten: 301
Lid geworden op: do 30 mar 2006, 15:51

Bericht door GerardJ »

Jacco,

Een mooie duidelijke afleiding.

Voor de optredende demping bij hoge frequenties zou je met een analoog filter kunnen corrigeren, echter de fasedraaiing en bijbehorende groepslooptijdvervorming die hierbij optreedt raak je niet meer kwijt. Dit is het voordeel van een digitaal filter. Hierbij wordt het digitale geinterpoleerde signaal "voorvervormd" zodat het signaal na de DAC een vlakke frequentieoverdracht en een constante groepslooptijd heeft.

Groeten,

Gerard
Gebruikersavatar
SSassen
Berichten: 11528
Lid geworden op: vr 22 apr 2005, 10:21
Locatie: Zuidoostbeemster
Contacteer:

Bericht door SSassen »

Straf stuk rekenwerk Jacco! Dat bespaart mij weer een middag zwoegen. Maar die afval in 't hoog daar heb ik een oplossing voor (ik noemde 'm al eerder) ik gebruik namelijk wel een digitaal filter, de inmiddels bejaarde SAA7220 die standaard een oplopende curve heeft in 't hoog. Daarnaast wordt de sample frequentie dan niet 352.8kHz, maar niet minder dan 1.411MHz :shock:

Overigens heb ik nog wat lopen spelen met de schakeling, en heb oa. wat PSRR curves geplot door simpelweg 1V AC op de beide voedingsrails te injecteren en kijken wat er aan de ingang (Idac) en uitgang (Vout) nog van over blijft. Hieronder een indruk, inclusief de versie van de I/V omzetter die ik momenteel in de simulator heb draaien.

PSRR simulaties, I/V omzetter
http://hardwareanalysis.com/images/arti ... /11944.gif

Met vriendelijke groet,

Sander Sassen
http://www.hardwareanalysis.com
Gebruikersavatar
voodooless
Berichten: 4775
Lid geworden op: di 02 nov 2004, 23:23
Locatie: Arnhem
Contacteer:

Bericht door voodooless »

Hmm, response lijkt verdacht veel op een FIR filter met 8 coëfficiënten van 1.0:

Afbeelding

Wat je dus doen is gewoon analoog FIR filteren met een filtercoëfficiënten waar je in een digitaal filter alleen om zou lachen denk ik... Of dit nu echt zo'n goed idee is.. Ik vaag het me af.
Gebruikersavatar
SSassen
Berichten: 11528
Lid geworden op: vr 22 apr 2005, 10:21
Locatie: Zuidoostbeemster
Contacteer:

Bericht door SSassen »

Christiaan,
Of dit nu echt zo'n goed idee is.. Ik vraag het me af.
Nou, je vergeet even dat normaliter een enkele DAC voor de DA conversie zorgt dus de THD en lineariteit is puur voor deze DAC z'n rekening. Door nu meerdere DAC's te gebruiken boek je significant winst in lineariteit etc.

Met vriendelijke groet,

Sander Sassen
http://www.hardwareanalysis.com
Plaats reactie