AK4490 DAC by.. avclub.gr?

takis

Supreme Member
11 August 2006
3,674
--------------------
για να πω την αλήθεια δεν βρήκα που γινεται αναφορά για το προβλημα με το reclocking έχω βρει μόνο το προβλημα του Μανώλη το οποίο είπε ότι το έλυσε
 

saganakis

Moderator
Staff member
15 March 2010
449
Δώστε λίγο χρόνο στον Δημήτρη και στον Μανόλη, δουλεύουν καθημερινά για να λύσουν τα προβλήματα που προκύπτουν.
Το Dac και χωρίς το reclocking δουλεύει εξαιρετικά, το έχουμε ακούσει και η κατηγορία που συναγωνίζεται είναι αρκετά υψηλή.
Το πρόβλημα που έχει εντοπιστεί ακουστικά, κανένας δεν θα το παρατηρούσε, μετρητικά εμφανίστηκε. Οι καινοτομίες που δοκιμάζουν τα παιδιά απαιτούν αρκετό ψάξιμο, δεν είναι κάτι απλό.
Χαρακτηριστικά σας αναφέρω ότι έχει ανοιχτεί αντίστοιχο νήμα στο Diyaudio

http://www.diyaudio.com/forums/digi...-arduino-controlled-dual-mono-ak4490-dac.html

όπου κανείς δεν ήξερε με σιγουριά να απαντήσει, εκτός και αν κάποιοι ξέρουν αλλά δεν λένε για άλλους λόγους.
Το όλο εγχείρημα έχει ξεφύγει από τα απλά diy επίπεδα, αλλά η αναμονή αξίζει...
 

saganakis

Moderator
Staff member
15 March 2010
449
Απάντηση: Re: AK4490 DAC by.. avclub.gr?

Το ξέρω, το λέω με καλή διάθεση, απλά δεν είναι εύκολο αυτό που κάνουν...
 

takis

Supreme Member
11 August 2006
3,674
--------------------
Re: Απάντηση: Re: AK4490 DAC by.. avclub.gr?

Το ξέρω, το λέω με καλή διάθεση, απλά δεν είναι εύκολο αυτό που κάνουν...

φυσικα παντα καλη διαθεση ουτε φυσικα υπονοησα κατι αλλο αλλωστε το χομπι μας κανουμε

ενα αναμονη πλεον
 

lemon

Supreme Member
3 March 2009
4,041
Παιδιά δεν υπάρχει κανένα πρόβλημα παρεξήγησης, μην το μπερδέψουμε.
Ίσως είναι και δική μας παράλειψη που σε αυτό το νήμα δεν δώσαμε, αναλυτικά το θέμα που μας απασχόλησε, με αποτέλεσμα να αφήσουμε κενά και ερωτηματικά.
Το ότι ανοίχτηκε ειδικό θέμα στο diyaudio, δεν ήταν υποτιμητικό προς αυτή την ελληνική κοινότητα, αλλά θεωρήσαμε ότι το θέμα ήταν άκρως εξειδικευμένο και ήθελε άτομα που να έχουν ψαχτεί ιδιαίτερα σε αυτό το ψηφιακό κομμάτι, το diyaudio τα έχει και όπως σωστά αναφέρει ο Κώστας (saganakis) επιλέγουν να μην μιλάνε αρκετές φορές.
Προσωπικά τα παιδιά που ασχολούμαστε με αυτό το πρότζεκτ, έχουμε βαρεθεί τη λογική κρυψίνιους και άλλα λόγια να αγαπιόμαστε από κακομαθημένους diy-ηδες, λες και όλοι αυτοί οι genius μάθανε με επιφοίτηση του Αγίου Πνεύματος.
Εάν θέλουμε να ωφελούμαστε, να προχωράμε, να μαθαίνουμε πρέπει να μοιράζουμε τη γνώση μας, όπως ακριβώς κάποιοι άλλοι τη μοίρασαν για να μάθουμε και εμείς.

Πάμε στο θέμα μας τώρα.
Εάν στο ΑΚdac το τροφοδοτήσεις με ένα απλό σήμα i2s, όλα πάνε υπέροχα και παίζει μια χαρά. Πρώιμες ακροάσεις με τη δοκιμαστική πλακέτα και σε δικά μας συστήματα και σε καλά συστήματα (όπως του Σέρκου) έδειξαν ότι πάει πολύ καλά. Μετρητικά δεν παρουσιάζεται κανένα θέμα και για του λόγου το αληθές νομίζω στις σελίδες 9 & 18 υπάρχουν συλλήψεις FFT που το αποδυκνείουν.
Στην τελική πλακέτα dac, επιλέχθηκε να μπει μία τεχνική flip-flop όπου το σήμα i2s επαναχρονίζεται (με σκοπό να μειωθεί το jitter), αυτό δεν είχε δοκιμαστεί πρωτύτερα στο AK και ειλικρινά δεν μπορούσαμε να ξέρουμε εκ των προτέρων ότι το ΑΚ θα είχε δυσλειτουργία με αυτή τη λύση.

Ποια ήταν η δυσλειτουργία που παρουσίαζε; Ακουστικά καμία και εάν δεν το βάζαμε σε FFT δεν θα το βλέπαμε ποτέ, μάλιστα μέλος του diyaudio μας είπε σε ελεύθερη μετάφραση "τι το ψιρίζετε...πάρα πολλές υλοποιήσεις έχουν τέτοια σχετικά θέματα και απλά δεν παρουσιάζονται", εμάς όμως μας έτρωγε το γιατί γινόταν αυτό.
Δηλαδή, όταν το βάζαμε στο FFT φαινόταν σαν να "ξεκλείδωνε" στιγμιαία το σήμα σε χρόνους που δεν είχαν σταθερή περιοδικότητα κάθε φορά που το μετρούσαμε, ανά δύο δεύτερα, ανά 8, ανά 13, ανά 22. Εκείνη τη στιγμή που εμφανιζόταν αυτός ο "λόξυγγας" όπως το λέγαμε μεταξύ μας ακουστικά δεν συνέβαινε τίποτα...


Ψάχνοντας το αίτιο, είδαμε στον παλμογράφο ότι το BCLK μετά το flip-flop, παρουσίαζε ένα επιπρόσθετο στιγμιαίο παράλληλο παλμό μαζί με το βασικό που είχε πλάτος γύρω στα 20ns και μάλιστα αυτός ο παλμός "φάντασμα" έμπλεκε στις υψηλές συχνότητες (352/384Κ) μέσα στους κανονικούς παλμούς με αποτέλεσμα να μην αναπαράγονται σωστά αρχεία δειγματοληψίας 352/384, ενώ δίχως το κύκλωμα επαναχρονισμού τέτοια θέματα δεν υπήρχαν.

Εδώ παρουσιάζεται αυτός ο παλμός φάντασμα σε αρχείο 44-48Κ


Εδώ σε ένα αρχείο 192Κ


Ο Δημήτρης έκανε μια ολόκληρη ανάλυση σε αναλυτή και είδε κάποια θέματα μετατόπισης του παλμού στο πέρασμα του χρόνου και προσπαθούσαμε να κατανοήσουμε το τι συμβαίνει για να δούμε το τι μπορεί να γίνει.

2017_06_04.png



Υπήρξαν κάποιες προτάσεις από μέλη του diyaudio, κυρίως ένα μέλος (AIM65) μας ώθησε να δούμε το τι γίνεται εφαρμόζοντας μία καθυστέρηση στο σήμα BCLK μέσω RC έτσι ώστε να έρθουμε πιο κοντά στα όρια προδιαγραφών του ΑΚ τσιπ.

Για να μην το μακρυγορούμε είδαμε ότι ενώ με αυτόν τον τρόπο λύναμε κάποια εμφανίζονταν κάποια κ.ο.κ
Φαινόταν ότι το όλο θέμα γινόταν γιατί με απλά λόγια στο τραπέζι λειτουργούσαν δύο ρολόγια διαφορετικά (τα ρολόγια της αμανέρο και το ρολόι/ρολόγια του επαναχρονισμού) και αυτά δεν μπορούσαν με τίποτα να έρθουν σε συγχρονισμό, αυτό βέβαια γινόταν ακόμη εμφανέστερο σε υψηλές συχνότητες.

Αυτό το σημείο ήταν κομβικό να στραφούμε σε άλλη λύση και ευτυχώς η αμανέρο μας δίνει μέσω του προγραμματισμού της αυτή τη δυνατότητα, δηλ. να καταργήσουμε στην ουσία τα ρολόγια που υπάρχουν επάνω στην αμανέρο να τη φλασάρουμε σε slave mode αντί για master που φλασάρεται συνήθως και στην ουσία να της μεταφέρουμε από έξω το mclk έτοιμο και αυτή με αυτό το mclk να δημιουργεί τις δειγματοληψίες κατά τη μετατροπή σε i2s.

Κατά αυτόν τον τρόπο, λειτουργεί ένα ρολόι (προγραμματιζόμενο όπως το Si) ή δύο ρολόγια σε ζευγάρι τα οποία πέρνουν τις εντολές εναλλαγής από την ίδια την αμανέρο (έχει αυτή τη δυνατότητα) και το mclock από τα εξωτερικά και ανώτερα ρολόγια/ρολόι οδηγείται στην αμανέρο για να κάνει τη δουλειά της.
Οπότε, λύνεται και ο "λόξυγγας" και ο παλμός "φάντασμα" και όλα λειτουργούν και πάλι ρολόι και το κυριότερο το στάδιο flip-flop επιτελεί το έργο για το οποίο έχει δημιουργηθεί.

Προσωπικά, δεν ξέρω εάν αυτή η λύση σε slave mode επιτυγχάνεται και σε άλλες usb μοντούλες, στη CM6631A που είχα διαβάσει πρόσφατα το εγχειρίδιο της έλεγε ότι μπορεί να προγραμματιστεί σε slave mode αλλά το configuration fw που κυκλοφορεί δεν το επιτρέπει από ότι θυμάμαι.

Για όσους λοιπόν θέλουν οπωσδήποτε τον επαναχρονισμό θα πρέπει να περιμένουν...ήδη το έχουμε μοντάρει σε αυτή τη λύση που προτείνουμε και δουλεύει ρολόι. Απλά μας πιάνει το καλοκαίρι και θα έχουμε και τις διακοπές.

Για όσους δεν θέλουν να μπουν σε τέτοια διαδικασία και απλά θέλουν να βάλουν μια απλή μοντούλα usb->i2s να κάνουν τη δουλειά τους, η τωρινή έκδοση του AK dac κάνει μια χαρά τη δουλειά της απλά δεν θα κολλήσετε το προγραμματιζόμενο ρολόι Si και θα κάνετε bypass τις 6 θέσεις flip-flop όπως στη φώτο που είχα ανεβάσει...θα δείτε ότι έχω βάλει μικρά συρματάκια που κάνουν bypass στις θέσεις flip-flop (όχι τα κίτρινα καλώδια που είναι για το mclk).
Επίσης δεν θα χρειαστείτε να βάλετε και ένα LT-3042 με τα περιφερειακά του (φαίνονται στα αριστερά της εικόνας οι άδειες θέσεις) καθότι αυτή η τροφοδοσία είναι περιττή σε αυτήν την περίπτωση.
Και voila έχετε το dac σε πλήρη ετοιμότητα!

attachment.php
 
Last edited:

takis

Supreme Member
11 August 2006
3,674
--------------------
για να καταλαβω το προβλημα εμφανιζεται μονο με την αμανερο η με ολες οταν υπαρχει το si570 και τα flip-flop
 

lemon

Supreme Member
3 March 2009
4,041
Αν και δεν έχει δοκιμαστεί με άλλες κάρτες, η απάντηση είναι με όλες καθότι δεν είναι θέμα της μοντούλας usb->i2s.
Αυτό φυσικά είναι ιδιομορφία του AK καθώς η ίδια ή παρόμοια φιλοσοφίας λύση δεν είχε παρουσιάσει πρόβλημα σε άλλα dac chip όπως της Sabre για παράδειγμα.
 

lemon

Supreme Member
3 March 2009
4,041
Βάλε ένα σύνδεσμο για να δούμε ποιο μοντέλο είναι.
Επίσης έχεις δυνατότητα να αλλάζεις το fw σε αυτή;
 
Από το manual:

"If you want to use external master clock you have to cut β€œExternal clock” jumper.
External master clock should be 45.158MHz or 49.152MHz (there is an output (pin
4, this pin is not galvanic isolated, recommend to use optocoupler) for selecting
between different master clocks)."


Οπότε ναι, γίνεται πολύ εύκολα, χωρίς αλλαγές στο firmware.
 

lemon

Supreme Member
3 March 2009
4,041
Οπότε γίνεται να δεχθεί εξωτερικό mclk, αν και για σωστότερη λειτουργία θέλει απομόνωση (isolation).
Αλλά θα χρειαστεί και κάποιο/α pin για την εναλλαγή των ρολογιών, έχει τέτοια πρόβλεψη αυτή η κάρτα;

Προσθήκη = βλέπω ότι για το πιν4 αναφέρει : "A0 – output for selecting external master clock 0V – 45.158MHz; 3.3V –49.152MHz; // look configuration table 2 and table 3"
Οπότε γίνεται και σε αυτή την κάρτα, αλλά θέλει ένα μικρό κύκλωμα με τρανζίστορ για την εναλλαγή εντολής.
 
Last edited:
Αν το MCLK προέρχεται από το Si570 δεν χρειάζεται κάτι τέτοιο, γιατί ο ελεγκτής θα ξέρει το εισερχόμενο SR (διαβάζοντας τα σχετικά pins του JLsounds) και θα προσαρμόζει τη συχνότητα του MCLK ανάλογα.

Isolation έχει το JLsounds, οπότε δεν υπάρχει πρόβλημα.
 

lemon

Supreme Member
3 March 2009
4,041
Απάντηση: Re: AK4490 DAC by.. avclub.gr?

Σωστά λες Δημήτρη, ότι στην ουσία το Pin4 θα πάει στον ελεγκτή και ο ελεγκτής θα ενημερώνει το ρολόι για τη συχνότητα.
Αλλά θα χρειαστεί isolation γιατί έχει αφήσει αυτό το πιν εκτός απομονωτή, νομίζω το γράφει στις σημειώσεις του.
 
Btw, είμαι κοντά στο να ολοκληρώσω τη σχεδίαση του mainboard (λέμε τώρα..) του Ελεγκτή. Ευελπιστώ να την τελειώσω μέσα στην εβδομάδα.

Mainboard PCB v0.30.jpg

Έχω προβλέψει δυο σετ από γαλβανικά απομονωμένες διασυνδέσεις, οι οποίες υποστηρίζουν I2C και digital pins. Το ένα σετ θα ελέγχει τις πλακέτες DAC, s/pdif, κτλ. και το άλλο θα επικοινωνεί με το USB to I2S module.