Ogłoszenie

Collapse
No announcement yet.

Nowy DAC :)

Collapse
Ten temat jest przyklejony.
X
X
 
  • Filtr
  • Czas
  • Pokaż
Clear All
new posts

    Nowy DAC :)

    No cóż, czas i na nowy projekt, ale tym razem z jednym AD1865 :) Wspominałem w projekcie na 32x AD1865, że DAC na jednym AD1865 na pewno będzie, ale jeszcze nie miałem wtedy pomysłu jak to zrobić. Głównym problemem był filtr cyfrowy dla układu AD1865, ponieważ pakowanie następnych słabo dostępnych kości (AD1865 już taką jest) mija się z celem. Można wrzucić DF1704 bądź DF1706, ale co to za projekt z następnymi nudnymi rozwiązaniami :) Po pewnym czasie natchnęło mnie na projekt z ASRC jakim jest AD1896, który mógłby pracować jako filtr cyfrowy i usuwać odbicia (ang. imaging) od 0,5 fs dzięki czemu "jedynym" wymaganiem byłby odpowiedni filtr analogowy usuwający wszystko po fs. Dlaczego akurat AD1896 jako ASRC skoro jest kilka różnych na rynku i być może lepszych? Wynikło to z faktu, że znam filtr w AD1896 i wiem, że jest po prostu dobry, ponieważ taki sam miałem w DSP ADAU1452 od Analog Devices. Zresztą, to nie tylko moje zdanie, ponieważ kolega raven1895 też bardzo chętnie go stosuje a na temat AD1896 można znaleźć tylko pozytywne opinie.

    No dobra, ale jak ten DAC działa skoro nie został użyty jakikolwiek filtr w osobnym układzie? Czy jest to NOS? No nie, ale działa bardzo prosto, ponieważ sam ASRC jest filtrem cyfrowym, tylko jego zdolność nadpróbkowania kończy się na dosyć niskiej częstotliwości około 192 kHz, ale jak najbardziej potrafi wyciąć odbicia w paśmie do fs (192 kHz). Napisałem "około", ponieważ można go "wykręcić" na trochę więcej i tak też zrobiłem. Do takiego ASRC wchodzi sobie sygnał audio od 32 kHz do 192 kHz (Tak, chyba jako jedyny DAC z AD1865 ma możliwość pracy na formatach 24/192 i to nie przy idei "NOS", a posiadając filtr cyfrowy z prawdziwego zdarzenia), zostając potem "przekonwertowanym" na stałą wartość wyjściową jaką jest fs na poziomie 210,9375 kHz. Dlaczego akurat taka wartość a nie przykładowo 192 kHz? Z prostego względu - nic to nie zmienia, a dodatkowe 20 kHz dodaje mi ponad 10 dB spadku w filtrze analogowym :)

    Wszystkie fajnie jak do tej pory, mamy filtr cyfrowy, mamy przetwornik, no to jeszcze potrzebny nam jest stopień analogowy, który wytnie wszystko zaraz za wyjściowym fs. No i tutaj robią się schodki, ponieważ gdyby wycięcie wszystkiego poza 192 kHz byłoby proste, to każdy by takie rozwiązanie używał. W innym wypadku gdy tego nie wytniemy, to odbicia wrócą do pasma audio i będą się z nim modulować (nieliniowa charakterystyka elementów elektronicznych potrafi zrobić swoje). Tak właśnie jest w aplikach typu NOS, tylko tam trzeba byłoby ustawić filtr analogowy już na połowę fs zgodnie z częstotliwością Nyquista, ponieważ nie ma żadnego filtru cyfrowego, który mógłby wyciąć odbicia do fs. Dla formatu CD musiałby to być filtr analogowy o zboczu około -96 dB (no generalnie mniej, ale to już inna historia, ponieważ zależy to od przetwornika i jego wewnętrznej archtektury) już za 22,05 kHz. Nie da się takiego filtru zaprojektować, a nawet jakby się dało i faktycznie wyciąłby odbicia, to okazałoby się, że już nie gra tak jak audiofile sobie tego życzą, tj. nie występują modulacje odbić z pasmem audio :) Trochę się zapędziłem, ale wracając jednak do filtru analogowego, który wytnie wszystko poza 192 kHz, musi on być bardzo stromy. Bessel to ogólnie najlepsze rozwiązanie jeśli mówimy o odpowiedzi impulsowej, ale spadek jest zbyt łagodny i nie osiągnęlibyśmy odpowiedniego tłumienia, Butterworth ma już znacząco lepszy spadek, ale jego odpowiedź impulsowa jest trochę narwana, a Chebyshev to już w ogóle odpada z powodu passband ripple. No i właśnie dlatego został wybrany dość egzotyczny filtr, który znajduje się pomiędzy Besselem a Butterworth i został nazwany "Linear phase with equiripple error of 0.05". Wartości filtru pasywnego, tj. złożonego z samych cewek i kondensatorów można znaleźć w książce Williamsa (Electronic Filter Design Handbook). Na bazie pasywnych wartości został wyliczony filtr aktywny. Ma on odpowiedni spadek, liniową fazę oraz odpowiedź impulsowa jest na dobrym poziomie. Co jednak nie zmienia faktu dużego rzędu, który jest wymagany. W tym wypadku filtr analogowy jest aż 10-rzędu z f3 na 45 kHz oraz zostało użyte rozwiązanie aktywne znane pod nazwą "frequency dependent negative resistance", czyli po prostu ujemna rezystancja zależna od częstotliwości. Czasami znane pod nazwą "GIC". Tutaj muszę wspomnieć, że te rozwiązanie widziałem już u kolegi raven1985, więc nic tutaj nie jest nowego, a tylko odpowiednio zaadaptowane do potrzeb :) W każdym wypadku filtr został tak stworzony, aby wzmacniacze operacyjne, które filtrem operują, nie były bezpośrednio w sygnale audio. Sygnał widzi "tylko" rezystorki (no prawie, ponieważ wirtualnie konwertowane są one na cewki, ale to inna historia).

    Poniżej schemat filtru analogowego:


    Stopień analogowy z I/V i buforem:


    Przezornie za C3 polecam wlutować kondensator o wartości 22 pF w celu kompensacji AD797. Nie zrobi to krzywdy, a może uratować od ewentualnych oscylacji.

    Pasmo filtru:


    Pomiar rzeczywisty:


    Mniej więcej 0,85 dB spadku przy 20 kHz względem średnicy oraz około 0,45 dB spadku przy 15 kHz.

    Wartości filtru wyliczyłem na bazie skalowania impedancji z 10 nF kondensatorem. Nie chciałem mieć za dużych wartości rezystancji. Jak widać filtr ma już spadek ponad 90 dB na 210 kHz co jest wystarczającą wartością :)

    W danej chwili DAC wygląda tak:



    Akurat w wersji testowej fs jest ustawiony na 192 kHz, ale to się już zmieniło w finalnej wersji.

    Poniżej pomiary wersji testowej, którą mam polutowaną. Na początek THD:



    THD: 0,0013%
    THD+N: 0,0016%

    Drugi pomiar to intermodulacja sygnałów 19k+20k:



    IMD: 0,00095%

    Na razie tyle.

    Podsumowując:

    - DAC na starej dobrej kości R-2R AD1865. Kto słuchał, ten wie, że ta kostka jest genialna :) A to co potrafi, to dopiero można posłuchać w odpowiedniej aplikacji.
    - DAC przyjmuje formaty do 32/192. Nie spotkałem się jeszcze aby jakikolwiek DIY DAC z tą kością tyle potrafił w prawidłowej aplikacji, tj. z filtrem cyfrowym.
    - DAC posiada izolowane wejście I2S (można podpiąć Amanero lub inne zabawki).
    - Wystarczy transformator 3x 15v bądź 2x 15V + 1x 7-15V po minimum 0,5A i można grać (mostki prostownicze i zasilacze są na PCB).
    - DAC ma być dla forum jak tylko go skończę (nie wiem ile mi to zajmie).
    - Resztę schematu udostępnię jak tylko ogarnę definitywne wartości elementów.
    - PCB jest na czterech warstwach, ponieważ nie chciałem iść na kompromisy z prowadzeniem masy w przetworniku cyfrowo-analogowym.
    Last edited by .3lite; 29.06.2018, 08:43.

    #2
    No ładnie.
    Mam prototyp podobnego rozwiązania. U mnie fochy stroił układ dzielący sygnał na L i R. W efekcie dałem mu spokój.
    Widzę, że filtry GIC wracają do łask. Mają swoje zalety, tylko księgowy ich nie lubi.

    Jakim kryształkiem pędzisz AD1896?

    Skomentuj


      #3
      Zamieszczone przez Waldi_06 Zobacz posta
      U mnie fochy stroił układ dzielący sygnał na L i R. W efekcie dałem mu spokój.
      Ja tutaj wykorzystałem 6 rejestrów przesuwnych, z czego cztery robią za bufor lewego kanału. Poniżej schemat:



      Generalnie nic nadzwyczajnego. Latch DAC'a połączony jest bezpośrednio z LRCLK i zatrzaskuje się po 18-bitach wprowadzonych równolegle przez te rejestry przesuwne.

      Zamieszczone przez Waldi_06 Zobacz posta
      Widzę, że filtry GIC wracają do łask. Mają swoje zalety, tylko księgowy ich nie lubi.
      Myślę, że cenowo nie jest aż tak źle. W tym wypadku jednak trzeba rezystory 0805 1% z powodu małych wartości rezystancji.

      Zamieszczone przez Waldi_06 Zobacz posta
      Jakim kryształkiem pędzisz AD1896?
      W danej chwili coś takiego:

      http://pl.mouser.com/ProductDetail/A...r8jU48uw%3D%3D

      Niestety nie był to dobry pomysł, tj. jest dobry, jak odpowiednio dobierzesz kondensatory obciążające kwarc i to niesymetrycznie :P W nowej rewizji zmieniłem ten kwarc na standardowy generator 7mm x 5 mm. Cały DAC będzie potrzebował dwóch takich generatorów, tj. 27 i 30 MHz.

      Skomentuj


        #4
        Mała aktualizacja, ponieważ wczoraj zamówiłem nową rewizję PCB. Głównie są to zmiany kosmetyczne i stabilizacja wzmacniaczy operacyjnych od filtru, ale dodałem też układ typu "charge pump" do generowania ujemnego napięcia logiki (-5V). Nie trzeba go lutować dla AD1865 (obecność układu nie ma żadnego wpływu), ale daje on możliwość wrzucenia starszego brata AD1865 jakim jest AD1864, który właśnie potrzebuje ujemnego napięcia logiki. Oba układy są praktycznie takie same, prąd wyjściowy ten sam i mają takie same piny, z czego pin od ujemnego napięcia jest po prostu typu "NC" w AD1865. Dzięki takiej zmianie można śmiało wrzucać na zmianę AD1865 lub AD1864. Mam gdzieś w domu AD1864 i po prostu szkoda mi go było, ale też nie chciałem wrzucać całkowicie nowej linii zasilania tylko dla ujemnego zasilania jednego układu i dlatego powstał pomysł z dodatkowym układem tego typu. Poniżej schemat układu:



        L4 ma dużą indukcyjność jak na swoje wymiary, ale takie cewki dostępne są w Mouser:

        http://pl.mouser.com/ProductDetail/T...Rt5evilg%3d%3d

        Prąd nasycenia tylko 30 mA i rezystancja na poziomie 3,5 Ohm, ale jak najbardziej wystarczy, przynajmniej według symulacji. L2 i L3 powinny mieć znacząco większy prąd nasycania, tj. na poziomie 200 mA. Takie cewki także dostępne są w Mouser.

        Można też zalutować zworkę zamiast L4 (rezystor 0R) i będzie działać. Po prostu falowania napięcia będą większe, ale to raczej bez różnicy. Zobaczymy jak układ będzie zachowywał się w praktyce.

        Teraz czekać na nowe PCB :)

        Skomentuj


          #5
          Zamieszczone przez .3lite Zobacz posta

          Teraz czekać na nowe PCB :)

          Cztery warstwy ?

          Skomentuj


            #6
            Zgadza się, PCB ma dalej cztery warstwy i tak zostanie. W tym wypadku ma to duże zalety.

            Skomentuj


              #7
              To prawda :)
              Niestety ma jedną wadę - cenę
              Ale przy tych wymiarach da się przeżyć :)

              Skomentuj


                #8
                No niestety u nas takiej płytki nie zamówisz, a jeśli już, to na pewno cena będzie ciekawa :) Ale spokojnie, cena nie jest zła, oscyluje w granicach 120 PLN przy pojedynczych sztukach i znacząco spada przy większej ilości.

                Ja już od jakiegoś czasu nie zamawiam PCB w Polsce. Szkoda mi czasu, nerwów i pieniędzy.

                Skomentuj


                  #9
                  Jak z dostępnością scalaków do tego projeku?
                  Zwłaszcza AD1865, na ebay trochę tego jest, czy zdarzają się podróbki?

                  Skomentuj


                    #10
                    Zamieszczone przez Marcin V Zobacz posta
                    Jak z dostępnością scalaków do tego projeku
                    Posiadam dużą ilość tych scalaków jeszcze za czasów kiedy były robione w ceramicznych obudowach z laserowo grawerowanymi napisami. Nazbierałem ich trochę przy pierwszym projekcie :) Mogę spokojnie ustąpić, ale resztę trzeba sobie zamówić z Mouser i TME.

                    Zamieszczone przez Marcin V Zobacz posta
                    na ebay trochę tego jest, czy zdarzają się podróbki
                    Raczej na pewno nie ma podróbek, a na pewno nie w sensie działającego układu. Coś co nie działa i jest podpisane AD1865 oczywiście może się zdarzyć, ale nie wyobrażam sobie działających podróbek. Z drugiej strony mogą też być układy typu "refurbished" lub po prostu odpady z fabryk, które nie spełniały wymagań THD+N (według datasheet to typowo 0,003% dla wersji N-J i 0,004% dla wersji N).

                    Skomentuj


                      #11
                      Dzięki za informacje, zastanawiałem się właśnie nad tym jak najlepiej zdobyć przetwornik.

                      No na pewno nie jest to tak wyżyłowany projekt jak "NOS DAC", który swoją drogą bardzo mi się podoba, głównie przez walory edukacyjne.
                      Ten projekt jest bardziej w zasięgu normalnego odbiorcy.
                      Ciekawe czy jak bardzo będzie słychać różnicę pomiędzy twoim dac a komercyjnym interfejsem audio.

                      Konwerter SPDIF-I2S to jakiś moduł z chin?

                      Skomentuj


                        #12
                        Przerzuciłem się na ASIO i zniekształcenia oraz śmieci jeszcze spadły kiedy wyrzuciliśmy resampling systemu:





                        Nie wiem, czy jest możliwe wyciągnięcie lepszych wyników z tej kości. W samym datasheet typowe THD+N jest na poziomie 0,004% dla wersji AD1865N (taka jaka jest wsadzona). Co ciekawe, różne kości z tej samej partii potrafią mieć inny rozkład harmonicznych, ale THD i THD+N jest na takim samym poziomie :)

                        Zamieszczone przez Marcin V Zobacz posta
                        Konwerter SPDIF-I2S to jakiś moduł z chin?
                        Nie zauważyłem tej części wiadomości. Generalnie to nie jest konwerter SPDIF-I2S a po prostu USB-I2S na układzie CM6631A z moim firmware. Ten układ potrafi generować SPDIF ze strumienia USB Audio, ale chyba go wyłączyłem.

                        Generalnie fajny układ. Posiada wbudowane FIFO i używa feedbacka dostępnego w specyfikacji USB 2.0 do sterowania zajętości kolejki.

                        Skomentuj


                          #13


                          Nowa rewizja płytki przyszła. Odpaliło praktycznie od kopa, no prawie, ponieważ nie zalutowałem pada jednego rezystora w filtrze i ten zaczął się ciekawie zachowywać:



                          Trzeba wszystko na spokojnie i starannie lutować, a nie w pośpiechu :) Tej płytki nie da się polutować w dzień, a nawet jak ktoś poskłada, to gwarantowane jest, że będzie jakiś problem wynikający tylko i wyłącznie z pośpiechu, dokładnie tak jak u mnie. Wystarczyło przylutować pad rezystora i problem zniknął.

                          Wzmacniacze operacyjne w filtrze zostały zmienione z NE5532 na LM4562. Najwidoczniej dobrze tam pasują :)

                          Układ do generowania ujemnego napięcia jest z tyłu płytki i nie ma potrzeby lutowania go dla AD1865:



                          Niestety cały układ coś nie ma ochoty działać z moim AD1864, więc albo przesadziłem z zegarem albo sam przetwornik D/A jest uszkodzony, ponieważ grzebałem nim jak jeszcze był w CD-Playerze i mogłem go wtedy uszkodzić, a pamiętam, że coś zniekształcał dźwięk. Tylko wtedy pomyślałem, że to wina I/V. Zobaczymy jak przyjdą mi nowe AD1864 - załatwiłem sobie kilka :)

                          Skomentuj


                            #14
                            Uff, będzie dziubdziania lutownicą.
                            Ogółem dużo ponad 200 elementów tam jest? ^^
                            Jaki jest pobór prądu na poszczególnych uzwojeniach trafa?

                            Skomentuj


                              #15
                              Myślę, że jest to około 300 elementów. Nie jest to nadzwyczajnie dużo, ponieważ w dużym projekcie samych kondensatorów miałem ponad 1600 sztuk na dwie płytki, ale tam lutuje się przy użyciu techniki "reflow soldering", a tutaj zwykłą lutownicą. Trzeba sobie spokojnie lutować i sprawdzać po 10 razy, czy nie zrobiliśmy zwarcia.

                              Pobór prądu to około 0,5A na każde uzwojenie, ale polecam uzwojenia o wydajności prądowej po 1A. Przy okazji wspomnę, że płytka po rozgrzaniu pracuje przy temperaturze 50C i to jest normalne.

                              Skomentuj


                                #16
                                Przy poborze prądu ~18W, prawie wszystko w smd to płytka ma prawo się nagrzać.

                                Co do ilości elementów, dla jednego sufit dla drugiego podłoga :)
                                Pewnie dużo elementów zwłaszcza kondensatorów ma podobną wartość to będzie w miarę leciało.

                                Skomentuj


                                  #17
                                  Nie no, generalnie pobiera trochę mniej prądu, ale dla bezpieczeństwa musi być transformator o wydajności co najmniej 0,5A na zwojach do zasilania sekcji analogowej. Sekcję cyfrową nie mierzyłem, ponieważ AD1896 ma dziwne skoki poboru prądu przy interpolacji, ale uzwojenie o wydajności prądowej na poziomie 0,5A na pewno wystarczy. Takie dwa AD811 robiące za I/V mają prąd biasu po 16 mA, więc już się robi 32 mA, a gdzie reszta :)

                                  W każdym wypadku zamieszczam schemat całego układu.

                                  Przezornie za C3 polecam wlutować kondensator o wartości 22 pF w celu kompensacji AD797. Nie zrobi to krzywdy, a może uratować od ewentualnych oscylacji.

                                  Mam też 6 płytek do oddania na start. Oczywiście po kosztach zakupu jak ktoś jest chętny (120 PLN, ponieważ wziąłem opcję express 48h). Dla trzech kolegów, którym obiecałem, też będę miał (wziąłem 10 sztuk tej rewizji). Na razie to tyle, ponieważ chciałbym zobaczyć jak pójdzie złożenie przetwornika przez osoby trzecie, więc nie ma co rzucać się jeszcze na jakieś grupowe zamówienie. Wkrótce zrobię jakąś listę tego co kupić w Mouser i TME, więc jak się razem ugadacie to będzie szybko i w miarę tanio.
                                  Załączone pliki
                                  Last edited by .3lite; 28.10.2016, 22:55.

                                  Skomentuj


                                    #18
                                    Cześć.
                                    Wracam do lutownicy po urlopie.

                                    Z chęcią zakupię płytkę i przetwornik AD1865.
                                    Na pewno nie polutuje w jeden dzień :-)
                                    A potem pocieszymy się dźwiękiem.
                                    Resztę emailem.

                                    Pozdr

                                    Skomentuj


                                      #19
                                      Cześć

                                      Nie ma problemu. Porozmawiamy na mailu :) Na AS zamieściłem listę zakupów, ponieważ tam dużo więcej osób zgłosiło się na PW. Tutaj właściwie tylko dwie osoby, z czego jedna jako użytkownik AS, ale na pewno będę pomagał im dobrnąć do końca :)
                                      Last edited by .3lite; 22.08.2016, 15:28.

                                      Skomentuj


                                        #20
                                        Ja po wypłacie robię zamówienie na części.
                                        Więc początkiem września zaczynam lutowanie.

                                        Skomentuj

                                        Czaruję...
                                        X