zuivere DSD dac
Moderators: Barry2001, Beheerdersteam
Re: zuivere DSD dac
Ik zie het nu. Excuus voor de verwarring. Was in de war met samplehold (en die juist op de samplefrequentie een 0 geeft). Is alweer lang geleden dat ik er wat dieper in zat, ik ben roestig. Inderdaad zit de Nyquistfrequentie er voor de DA omzetting gewoon ook in en die wil je wegfilteren.
Dan nog: De 0 die jij wilt heb je met elk even orde FIRDAC filter, dus ook met 32. Die laatste geeft dan boven de Nyquist, los van de nullen, 30dB hoogfrequent onderdrukking. En 15 dB ruisonderdrukking binnen het gewenste spectrum.
Wat zijn jouw overwegingen om met zo'n korte FIRDAC te willen werken?
Dan nog: De 0 die jij wilt heb je met elk even orde FIRDAC filter, dus ook met 32. Die laatste geeft dan boven de Nyquist, los van de nullen, 30dB hoogfrequent onderdrukking. En 15 dB ruisonderdrukking binnen het gewenste spectrum.
Wat zijn jouw overwegingen om met zo'n korte FIRDAC te willen werken?
Re: zuivere DSD dac
Dat noemde je al eerder maar wat bedoel je met "gewenste spectrum"? Binnen het audiospectrum onderdrukt dat echt geen ruis. Het is en blijft gewoon een kamfilter met een eerste nul op Fs/aantal/taps.
Re: zuivere DSD dac
Ik ben blij dat we het in ieder geval allemaal weer eens zijn over de nul van een nulde-orde houd!
Wat de FIRDAC-lengte betreft: ik heb voor deze lengte gekozen om goed te kunnen vergelijken met een eerdere versie en als compromis tussen complexiteit en wat je ermee wint. Op zich zou een langere FIRDAC beter zijn. Ik haal hier een ruisvloer van -104,6 dB(A) mee, tien tot twintig decibel lager dan mijn buizen-DAC die ik bij normaal gebruik ook nooit hoor ruisen, en ruim 7 dB lager dan een eerdere CMOS-poorten-FIRDAC van dezelfde lengte.
Vanwege de manier waarop ik de referentiestroom datapatroononafhankelijk probeer te houden en omdat het een return-to-zero FIRDAC is, heb ik meer elektronica nodig voor een gegeven lengte dan jij. Voor een stereo-DAC die uniform weegt over twee klokperioden (vier aftakkingen met verdubbelde klok) zit ik op vier stuks 74LV574A en 32 dunne-filmweerstanden.
Ik ben het maar gedeeltelijk met je eens wat die ruisonderdrukking binnen het gewenste spectrum betreft. In principe, met een ideale klok en de rest ook ideaal, is een FIRDAC een lineair tijdinvariant filter, net zoals een analoog filter, en kan het dus geen ruis binnen de audioband onderdrukken zonder ook het gewenste signaal daar te onderdrukken. Het voordeel van een FIRDAC is alleen de lagere gevoeligheid voor klokjitter, althans de klokjitter die met veraf-faseruis overeenkomt. De stappen die je op de DAC-uitgang krijgt na een klokflank zijn kleiner dan zonder FIRDAC, waardoor het niet helemaal op de goede plaats staan van een klokflank ook minder effect heeft.
Wat de FIRDAC-lengte betreft: ik heb voor deze lengte gekozen om goed te kunnen vergelijken met een eerdere versie en als compromis tussen complexiteit en wat je ermee wint. Op zich zou een langere FIRDAC beter zijn. Ik haal hier een ruisvloer van -104,6 dB(A) mee, tien tot twintig decibel lager dan mijn buizen-DAC die ik bij normaal gebruik ook nooit hoor ruisen, en ruim 7 dB lager dan een eerdere CMOS-poorten-FIRDAC van dezelfde lengte.
Vanwege de manier waarop ik de referentiestroom datapatroononafhankelijk probeer te houden en omdat het een return-to-zero FIRDAC is, heb ik meer elektronica nodig voor een gegeven lengte dan jij. Voor een stereo-DAC die uniform weegt over twee klokperioden (vier aftakkingen met verdubbelde klok) zit ik op vier stuks 74LV574A en 32 dunne-filmweerstanden.
Ik ben het maar gedeeltelijk met je eens wat die ruisonderdrukking binnen het gewenste spectrum betreft. In principe, met een ideale klok en de rest ook ideaal, is een FIRDAC een lineair tijdinvariant filter, net zoals een analoog filter, en kan het dus geen ruis binnen de audioband onderdrukken zonder ook het gewenste signaal daar te onderdrukken. Het voordeel van een FIRDAC is alleen de lagere gevoeligheid voor klokjitter, althans de klokjitter die met veraf-faseruis overeenkomt. De stappen die je op de DAC-uitgang krijgt na een klokflank zijn kleiner dan zonder FIRDAC, waardoor het niet helemaal op de goede plaats staan van een klokflank ook minder effect heeft.
Re: zuivere DSD dac
Strikt genomen is het geen kamfilter want tussen de nullen komt de respons niet helemaal omhoog, het lijkt meer op een sin(x)/x. Neemt niet weg dat er binnen het audiogebied niet veel gefilterd wordt - gelukkig maar, want anders is het hoog van de muziek ook weg.
Re: zuivere DSD dac
Dat bedoellik
Nou nog iemand die een FPGA klust om I2S PCM netjes om te zetten naar DSD 
Re: zuivere DSD dac
Ja, of high speed PWM zoals de Mola Mola DAC... En bij voorkeur zes of acht kanaals... 
Overigens kan je voor PCM naar DSD conversie ook een ASIC gebruiken. De CT7302PL bijvoorbeeld:
http://www.audiodesignguide.com/DSC2/index.html
Schijnt ook prima te klinken.
Overigens kan je voor PCM naar DSD conversie ook een ASIC gebruiken. De CT7302PL bijvoorbeeld:
http://www.audiodesignguide.com/DSC2/index.html
Schijnt ook prima te klinken.
Re: zuivere DSD dac
Als de DAC het bij 27 Mbits/s nog doet, kun je het digitaal van mijn buizen-DAC hergebruiken, bij voorkeur versie 3: https://www.diyaudio.com/community/thre ... st-6569767 en https://www.diyaudio.com/community/thre ... st-6570538 Voorwaarde is wel dat je geen morele of andere bezwaren hebt tegen een asynchrone bemonsteringsfrequentieomzetter.
Heb je dat wel, dan misschien het ontwerp van olo111: https://www.diyaudio.com/community/thre ... st-6593785
In beide gevallen zal het lastig worden om aan de FPGA of FPGA-module te komen.
Heb je dat wel, dan misschien het ontwerp van olo111: https://www.diyaudio.com/community/thre ... st-6593785
In beide gevallen zal het lastig worden om aan de FPGA of FPGA-module te komen.
Re: zuivere DSD dac
Zie bijvoorbeeld Enrique Perez Gonzales en Joshua Reiss, "Idle tone behavior in sigma delta modulation", AES Convention Paper, 122nd Convention, May 2007. In hun figuren 14, 17, 19 en 20 zie je een joekel van een toon rond de Nyquistfrequentie. De bijlage is een kwalitatief verhaaltje dat ik er zelf eens over geschreven heb.jeroen_d schreef: ↑ma 28 nov 2022, 0:27Heb je hier een referentie voor? Dit is voor mij volkomen nieuw. Ik ben gewend aan heel andere getallen. Bijvoorbeeld bij dsd64 zie je een piek rond 80kHz en bij dsd128 rond 160kHz als gevolg van de noise shaping door de modulator. Dat zit meer dan een factor 30 beneden de samplerate.MarcelvdG schreef: ↑zo 27 nov 2022, 19:47Gewoonlijk zit er in een enkelbits sigma-deltamodulaat juist een flinke piek bij de halve bemonsteringsfrequentie, of twee pieken, eentje net eronder en eentje net erboven. Dat geldt althans bij stilte of bij zachte muziek, de pieken worden in frequentie gemoduleerd door het signaal en smeren daardoor uit bij harde muziek.
Re: zuivere DSD dac
Volgens mij peter en marcel is een moving average niet zomaar te vergelijken met een laagdoorlaatfilter dat minimaal veranderingen teweeg brengt in de doorlaatband. Elk bitje schuift bij mijn dsd dac 32 keer door. Bij elke keer doorschuiven zit er random noise op. De bitje blijven intact. De ruis wordt weggemiddeld. Een blokgolf blijft zeer scherpe knikken hebben. Alleen de flanksteilheid gaat omlaag. Het opbouwen van de flank gaat namelijk in 32 stappen. Afronding treedt pas op als je nogmaals door het moving average filter heen gaat, dan ga je pas integreren.
Wat begrijp ik niet aan het artikel van analog.com als dit niet zo is? Daarin schrijven ze expliciet: het moving average filter is optimaal om random noise te filteren. Werkt dus heel goed in het tijddomein. Het is waardeloos om frequentiebanden te scheiden. Het is juist niet geschikt om te filteren in het frequentie domein. Doet het natuurlijk wel, maar voor laagdoorlaatfiltering zijn er veel betere filters.
Middelen werkt ook mooi bij metingen. Herhaal de meting een aantal keer en middel uit. Ruis verdwijnt, signaal blijft. Zowel laagfrequent als hoogfrequent. Zeer bekende sensortechniek ook om signalen verstopt in de ruis eruit te halen. Dat gaat met middelen, niet met een laagdoorlaatfilter. Het moving average filter doet beide, zowel middelen als filteren (inderdaad op de manier zoals jullie aangeven, maar de FIRDesigner plaatjes laten alleen het laagdoorlaatfilter effect zien, niet wat er in het tijddomein door het middelingseffect gebeurt).
Wat begrijp ik niet aan het artikel van analog.com als dit niet zo is? Daarin schrijven ze expliciet: het moving average filter is optimaal om random noise te filteren. Werkt dus heel goed in het tijddomein. Het is waardeloos om frequentiebanden te scheiden. Het is juist niet geschikt om te filteren in het frequentie domein. Doet het natuurlijk wel, maar voor laagdoorlaatfiltering zijn er veel betere filters.
Middelen werkt ook mooi bij metingen. Herhaal de meting een aantal keer en middel uit. Ruis verdwijnt, signaal blijft. Zowel laagfrequent als hoogfrequent. Zeer bekende sensortechniek ook om signalen verstopt in de ruis eruit te halen. Dat gaat met middelen, niet met een laagdoorlaatfilter. Het moving average filter doet beide, zowel middelen als filteren (inderdaad op de manier zoals jullie aangeven, maar de FIRDesigner plaatjes laten alleen het laagdoorlaatfilter effect zien, niet wat er in het tijddomein door het middelingseffect gebeurt).
Re: zuivere DSD dac
Leuk artikel. Ik ga er trouwens wel van uit dan Jussi Laako (HQPlayer) zijn modulators dusdanig goed heeft ontwikkeld dat dit niet optreedt.Zie bijvoorbeeld Enrique Perez Gonzales en Joshua Reiss, "Idle tone behavior in sigma delta modulation", AES Convention Paper, 122nd Convention, May 2007. In hun figuren 14, 17, 19 en 20 zie je een joekel van een toon rond de Nyquistfrequentie. De bijlage is een kwalitatief verhaaltje dat ik er zelf eens over geschreven heb.
idletonesSD.pdf
https://community.roonlabs.com/t/the-so ... /171119/38
Re: zuivere DSD dac
Ik denk dat de verwarring over filters te maken heeft met jouw opmerking "binnen het gewenste spectrum." Peter en ik interpreteerden dat als de audioband. In dat artikel van Analog Devices staat dat een filter met uniforme weging optimaal is in de zin dat het de meeste witte ruis onderdrukt gemeten over alle frequenties voor een gegeven lengte van de impulsrespons. Het gaat bij DSD dan dus vooral om ultrasone ruis die wordt weggefilterd, binnen de audioband gebeurt er praktisch niets.
Een tijdcontinu analoog filter rekent ook een convolutie met een impulsrespons uit, alleen is die impulsrespons oneindig lang. Volgens het criterium uit dat artikel is dat dus oneindig veel slechter, maar de vraag is in hoeverre dat criterium het juiste criterium is.
Een tijdcontinu analoog filter rekent ook een convolutie met een impulsrespons uit, alleen is die impulsrespons oneindig lang. Volgens het criterium uit dat artikel is dat dus oneindig veel slechter, maar de vraag is in hoeverre dat criterium het juiste criterium is.
Re: zuivere DSD dac
Machtig mooie discussie mannen! Ik snap er niks van verder maar lees toch met plezier mee, denk dat dit is waar forums eigenlijk voor bedoeld zijn.
Re: zuivere DSD dac
Voor zover ik weet zijn zijn algoritmes bedrijfsgeheim, dus ik weet niet wat die allemaal doet.jeroen_d schreef: ↑di 29 nov 2022, 1:24Leuk artikel. Ik ga er trouwens wel van uit dan Jussi Laako (HQPlayer) zijn modulators dusdanig goed heeft ontwikkeld dat dit niet optreedt.Zie bijvoorbeeld Enrique Perez Gonzales en Joshua Reiss, "Idle tone behavior in sigma delta modulation", AES Convention Paper, 122nd Convention, May 2007. In hun figuren 14, 17, 19 en 20 zie je een joekel van een toon rond de Nyquistfrequentie. De bijlage is een kwalitatief verhaaltje dat ik er zelf eens over geschreven heb.
idletonesSD.pdf
https://community.roonlabs.com/t/the-so ... /171119/38
Ik heb ooit ergens gelezen dat de HQPlayer-modulatoren die worden aanbevolen voor DSD512 quasi-multibit zijn, maar ik weet absoluut niet meer waar en of het uit een betrouwbare bron kwam. Ik neem aan dat daarmee sigma-deltamodulatoren bedoeld worden met een ingebedde pulsbreedtemodulator en een multibit kwantisator die netjes volgens de theorie geditherd wordt. Naar mijn ervaring werkt dat prima, het is alleen volslagen onbruikbaar bij lagere bitrates, omdat de overbemonstering en daardoor de noise shaping er minder effectief van wordt. (Mijn variant is geen bedrijfsgeheim, zie https://linearaudio.net/sites/linearaud ... 20mvdg.pdf paragraaf 3.1.)
Daarentegen heb je met een recht-toe-recht-aan enkelbits sigma-delta eigenlijk altijd last van tonen net onder en net boven Nyquist. De mate waarin die met elkaar gaan staan intermoduleren door imperfecties van de DAC bepaalt dan wat voor toon je in de audioband krijgt. Het spectrum van het digitale signaal over de audioband zegt dan dus niet zo veel.
Re: zuivere DSD dac
Is deze Ladder DAC Board R2R NOS Balanced 24bit 384kHz wat waard: https://www.audiophonics.fr/en/dac-modu ... 16547.html ?
Re: zuivere DSD dac
Technisch en klankmatig schijnt alles af te hangen van de programmering van de FPGA die via deze site niet te controleren is.
Re: zuivere DSD dac
Ik heb dan de Soekris, ook een ladder, maar wel beter de controle over wie wat waar, niet voor mij, maar er zijn genoeg fröbelaars die het al wel hebben gedaan.

- Marp
- Beheerder / Sysadmin
- Berichten: 8790
- Lid geworden op: vr 11 mar 2005, 22:25
- Locatie: Bergen op Zoom
Re: zuivere DSD dac
Laten we even in de gaten houden dit bouwdraadje niet teveel te vullen met andere DAC's, tenzij het natuurlijk rechtstreeks betrekking heeft op de bespreking van Jeroens project.
Re: zuivere DSD dac
In afwachting van de Amanero upgrade heb ik nu op een separate NUC een aparte Ubuntu server LTS 22.04.1 met minimale footprint geïnstalleerd, zodat je niet eens hoeft in te loggen. Het installeren van de network daemon van HQPlayer (NAA) is dan twee regels code:
curl -O https://www.signalyst.eu/bins/naa/linux ... _amd64.deb
sudo apt install ./networkaudiod_4.2.5-53_amd64.deb
"druk een paar keer op Enter vanwege de [more]"
In HQPlayer moet je dan als backend de NetworkAudioAdapter kiezen. En natuurlijk als device weer de Amanero USB driver.
Ik heb inmiddels ook andere firmware op de Amanero gezet, die draait native DSD512 onder Linux. Leuk om dat ook te kunnen proberen.
Deze opzet geeft wat meer rust in het hoog.
curl -O https://www.signalyst.eu/bins/naa/linux ... _amd64.deb
sudo apt install ./networkaudiod_4.2.5-53_amd64.deb
"druk een paar keer op Enter vanwege de [more]"
In HQPlayer moet je dan als backend de NetworkAudioAdapter kiezen. En natuurlijk als device weer de Amanero USB driver.
Ik heb inmiddels ook andere firmware op de Amanero gezet, die draait native DSD512 onder Linux. Leuk om dat ook te kunnen proberen.
Deze opzet geeft wat meer rust in het hoog.
Re: zuivere DSD dac
Ik zal eens zien, ben nog niet helemaal van de Corona af zo te voelen, dus mogelijk van de week op de kleine opzet.
Re: zuivere DSD dac
Inmiddels heb ik ontdekt dat het nog simpeler kan. De Embedded versie van HQPlayer heeft NetworkAudioAdapter (NAA) functionaliteit die ook in de trial gewoon blijft werken na 30 minuten. Deze versie heeft een minimaal operating systeem met ALSA drivers voor audio. Dus als je het slechts als NAA gebruikt kan dit prima in combinatie gebruikt worden met de Desktop versie die het zware werk doet op een krachtige PC.
Ik heb deze versie nu op een NUCje draaien met de fan en harde schijf uitgeschakeld, die NUC is dus volledig geruisloos. Gewoon in de bios aangeven dat starten van een USB stick is toegestaan, met UEFI boot. En op dat stickje staat dan de image van HQPlayer Embedded, daarop gezet met Rufus. De HQPlayer embedded sse42 versie werkt nu bij mij als NAA op een relatief oude Celeron 3050. https://www.signalyst.eu/bins/hqplayerd ... 64sse42.7z
Ik heb deze versie nu op een NUCje draaien met de fan en harde schijf uitgeschakeld, die NUC is dus volledig geruisloos. Gewoon in de bios aangeven dat starten van een USB stick is toegestaan, met UEFI boot. En op dat stickje staat dan de image van HQPlayer Embedded, daarop gezet met Rufus. De HQPlayer embedded sse42 versie werkt nu bij mij als NAA op een relatief oude Celeron 3050. https://www.signalyst.eu/bins/hqplayerd ... 64sse42.7z
Re: zuivere DSD dac
Ik heb hier zo een SBC met dan NAA actief als ik het goed heb met Dietpi, en als het al draait op de server dan kan dat mogelijk ook koppelen, we gaan het wel horen. Weet nog niet of het in server >- client draait.
We gaan het zien, een intel opzetje zou nog kunnen.
http://archimago.blogspot.com/2019/02/m ... r-325.html
We gaan het zien, een intel opzetje zou nog kunnen.
http://archimago.blogspot.com/2019/02/m ... r-325.html
Re: zuivere DSD dac
Ik weet niet precies wat je hier met server en client bedoelt. Bij mij is Roon nog steeds de muziekserver. Die speelt en streamt naar HQPlayer. Roonserver en HQPlayer staan bij mij op dezelfde computer. Van daaruit gaat het richting LAN waar de computer met NAA software aan is gekoppeld en die met USB uit naar de DAC gaat.
Er is voor de raspberrypi4 ook een embedded versie trouwens: https://www.signalyst.eu/bins/hqplayerd ... errypi4.7z
Er is voor de raspberrypi4 ook een embedded versie trouwens: https://www.signalyst.eu/bins/hqplayerd ... errypi4.7z
