Δικτυακός τόπος για τις Τεχνολογίες Audio, Video, HiFi, High End, Home Entertainment
Greek site for Audio Video & Home Entertainment technologies
Tελευταία Ενημερωση/Last Update: Τρίτη, 17/10/2006


english abstract

Πρωτοσέλιδο Aρχείο Νέων Αρθρα Τεχνολογία HowTo Δίσκοι Αναφοράς Links Contact About

LOCATION BAR►ΤΕΧΝΟΛΟΓΙΑ►TI ΑΚΡΙΒΩΣ ΕΙΝΑΙ ΤΟ JITTER;

AV BLOG 

SITE MAP

Tί είναι τελικώς το Jitter;

1. Ο ορισμός του Jitter - Δείγματα και μπαλάκια του τένις...
2. Πόσα είδη Jitter υπάρχουν;
3. Μπορούμε να μετρήσουμε, να ακούσουμε και να μειώσουμε το Jitter;
4. H ανάκτηση του σήματος χρονισμού (clock recovery) και το PLL

Το αρχικό μας παράδειγμα με τα μπαλάκια του τένις περιγράφει σχηματικά την πιο βασική μορφή jitter, την οποία ονομάζουμε sampling jitter. Μπορεί κανείς εύκολα να φανταστεί ότι ένα τέτοιο πρόβλημα στην αρχή μίας μακράς διαδικασίας και μάλιστα σε μία τόσο σημαντική φάση (δηλαδή κατά την δημιουργία των αρχικών δειγμάτων) αποτελεί μία κληρονομιά που δεν μπορεί κανείς να πετάξει από πάνω του εύκολα. Αυτό είναι γεγονός. Αν μία ψηφιοποίηση έχει jitter το πρόβλημα δεν λύνεται καθόλου εύκολα και σίγουρα δεν λύνεται με την προσθήκη κάποιας συσκευής στο δρόμο του σήματος. Από την άλλη πλευρά, όταν αναφερόμαστε σε jitter, και το σχετίζουμε με τα συστήματα αναπαραγωγής ήχου, σπανίως το θέμα μας είναι το sampling jitter (το οποίο άλλωστε είναι ενσωματωμένο σε κάποιο δίσκο, επομένως μπορούμε -δύσκολα- μόνο να το ακούσουμε ως κακής ποιότητας πρόγραμμα) αλλά μία άλλη μορφή του ίδιου προβλήματος που ακούει στο όνομα clock jitter.
Aς επεκτείνουμε το παράδειγμα με τα μπαλάκια του τένις: Αφού το σήμα ψηφιοποιηθεί, μπορούμε και πάλι να το δούμε ως μία σειρά από δοχεία με μπαλάκια κάθε ένα από τα οποία φέρει μία τιμή σε ψηφιακή μορφή. Αν υποθέσουμε ότι δεν υπάρχει sampling jitter, τα δοχεία αυτά απέχουν μεταξύ τους κατά το χρονικό διάστημα που επιβάλει το sampling rate και βρίσκονται τοποθετημένα μέσα στον ψηφιακό δίσκο. Οποιαδήποτε επεξεργασία πραγματοποιήσουμε στα μπαλάκια αυτά και στον όρο "επεξεργασία" περιλαμβάνονται η ανάγνωση του δίσκου, η χρήση επεξεργαστών που "τρέχουν" ψηφιακά φίλτρα και βεβαίως οι ίδιοι οι DACs, οφείλουμε να μην διαταράξουμε την σχετική θέση των δοχείων επειδή αυτά αποτελούν την μοναδική σταθερά χρονισμού του συστήματός μας. Με άλλα λόγια και παραμένοντας στο επίπεδο του παραδείγματος, ο DAC παρατηρεί τον ρυθμό με τον οποίο κινούνται τα δοχεία και από αυτόν συμπεραίνει την χρονική θέση των δειγμάτων αδιαφορώντας για το τί έχει συμβεί πραγματικά στην αρχική ψηφιοποίηση! Αν αυτή η περιγραφή φέρνει στο μυαλό σας την εικόνα ενός ρυθμικού συστήματος, στο οποίο όλα συμβαίνουν σε συγκεκριμένες, διακριτές μεταξύ τους, στιγμές έχετε μπεί στην ουσία το πράγματος: Τα πάντα μέσα σε μία ψηφιακή συσκευή συμβαίνουν κάτω από έναν συγκεκριμένο ρυθμό ο οποίος -συνήθως- είναι πολλαπλάσιος του sampling rate ώστε να υποστηρίζονται και περισσότερες της μίας διαδικασίες ανά δείγμα, όταν είναι απαραίτητο. Αυτό που είναι πάντως σημαντικό είναι η ύπαρξη ενός συγκεκριμένου ρυθμού. Γεγονός που μας φέρνει κοντά στην ιδέα του "Clock".
Τί είναι το Clock;
Στην ελληνική γλώσσα ο όρος αυτός, όταν αναφερόμαστε σε κυκλώματα, μπορεί να αποδοθεί ως "χρονισμός" και το αντίστοιχο σήμα ως "σήμα χρονισμού" ή και ως "βάση χρόνου". Το σήμα χρονισμού είναι συνήθως τετραγωνικό με την διάρκεια του χρόνου "on" και του χρόνου "off" να είναι ίσες. Τα χαρακτηριστικά που προτίστως μας ενδιαφέρουν είναι η συχνότητά του και η σταθερότητά του. Οσον αφορά το πρώτο, ήδη θα έχετε διαισθανθεί ότι ο χρονισμός των κυκλωμάτων σε μία συσκευή ψηφιακού audio έχει συχνότητα που είναι συνάρτηση του sampling rate. Οσον αφορά το δεύτερο, την σταθερότητα δηλαδή, θα θέλαμε να είναι το καλύτερο δυνατόν, με δεδομένες τις τεχνικές μας δυνατότητες και το κόστος.
Ενα κύκλωμα που παράγει τετραγωνικό σήμα μίας συγκεκριμένης συχνότητας δεν είναι δύσκολο να σχεδιαστεί και να κατασκευαστεί, το πρόβλημά μας όμως στο ψηφιακό audio είναι ότι είναι ασύγχρονο: Από την στιγμή που δεν έχουμε στη διάθεσή μας το σήμα χρονισμού του μετατροπέα A/D δεν μπορούμε να ξεκινήσουμε ένα κύκλωμα clock την στιγμή που πρέπει ώστε να συγχρονιστεί με το σήμα μας. Φανταστείτε ότ έχετε στη διάθεσή σας έναν τέλειο δίσκο με sampling rate 44.1kHz και έναν τέλειο ταλαντωτή, επίσης στα 44.1kHz. Πώς θα τον ξεκινήσετε όταν πρέπει; Πώς θα εξασφαλίσετε ότι ποτέ (μα ποτέ) δεν θα υπάρχει η παραμικρή διαφορά φάσης μεταξύ των δύο σημάτων; Η λύση στο πρόβλημα αυτό είναι να περιλάβουμε πληροφορίες χρονισμού μέσα στο ίδιο το σήμα που βρίσκεται στο δίσκο και με κάποιο τρόπο να τις ανακτούμε κατά την ανάγνωση του δίσκου ή μετά την μεταφορά του από κάποιο πρωτόκολλο (π.χ. μέσω S/PDIF). Στα χαρτιά, αυτό γίνεται εύκολα. Στην πράξη όμως υπάρχουν δυσκολίες. Οποιαδήποτε απόκλιση του σήματος από το ιδανικό, μεταφράζεται στην πραγματικότητα σε αλλοίωση της μορφής του και στην περίπτωση του σήματος χρονισμού αυτό είναι πολύ σοβαρό: Το σήμα αυτό φέρει την πληροφορία στις κάθετες πλευρές του, με άλλα λόγια ο ρυθμός δίνεται μέσω των μεταβάσεων από το "On" στο "Off" (δηλαδή την χαμηλή και την υψηλή τάση) και αντίστροφα. Αν αυτές οι πλευρές γίνουν ασαφείς, ή "αργές" (δηλαδή με μεγάλη κλίση) ο χρονισμός μας θα έχει πρόβλημα και το πρόβλημα αυτό έχει ένα γνωστό -πλέον- όνομα: Jitter, και μάλιστα η πιο γνωστή μορφή του, clock jitter. 
Aπό τις περιγραφές είναι πιθανόν να έχετε υποθέσει ότι έχουμε δύο ειδών clock jitter. To επαγώμενο λόγω θορύβου (induced jitter) και το επαγώμενο λόγω μεταφοράς (transmission line induced jitter). Στην πραγματικότητα τα είδη είναι τρία, αλλά ας δούμε κατ' αρχήν τα δύο πρώτα.
Οποιοδήποτε πρόβλημα επαγώμενου θορύβου στο εσωτερικό μίας συσκευής επιδρά αρνητικά στα ψηφιακά κυκλώματα και δημιουργεί μία περιοχή αβεβαιότητας για το πού βρίσκεται το σήμα χρονισμού (t1). Αυτό ακριβώς το διάγραμμα είναι ο ορισμός του jitter
Το jitter λόγω θορύβου είναι το πλέον συνηθισμένο και εμφανίζεται μέσα σε όλες τις ψηφιακές συσκευές.  Οι μηχανισμοί ανάγνωσης των δίσκων, τα τροφοδοτικά και το ίδιο το δίκτυο τροφοδοσίας της πόλης έχουν θορύβους οι οποίοι επιδρούν αρνητικά στις επιδόσεις των ψηφιακών κυκλωμάτων. Κάθε φορά που ένα τρανσπόρτ κινείται για να κάνει tracking ή για να εστιάσει σε έναν σκεβρωμένο δίσκο, δημιουργεί αιχμές στα κυκλώματα τροφοδοσίας που με την σειρά τους επιδρούν στα ψηφιακά κυκλώματα αλλάζοντας τις θέσεις των κυματομορφών τους στιγμιαία. Αυτός, ίσως είναι ένας λόγος που έχει νόημα ένα "καλό" τρανσπόρτ ή ένα clamp που πιέζει τον δίσκο.
Η κλασική δομή μίας ψηφιακής συσκευής: Το clock εξάγεται και χρησιμοποιήται για να συγχρονίσει όλα τα ψηφιακά της τμήματα.
Στην περίπτωση που αναφερόμαστε σε μία ολοκληρωμένη συσκευή, δηλαδή σε ένα player που περιλαμβάνει μηχανισμό ανάγνωσης, ψηφιακό τμήμα και DAC σε ένα περίβλημα, αυτό το είδος jitter είναι το μόνο που μας απασχολεί, επειδή αυτές οι συσκευές έχουν μόνο ένα κύκλωμα χρονισμού που θα πρέπει να συγχρονίσουμε με το σήμα από τον δίσκο και δεν υπάρχει κάποιο πρωτόκολλο μεταφοράς του ψηφιακού σήματος που συνθέτει (ξανά) το σήμα χρονισμού με τις πληροφορίες audio. Αυτό είναι και ένα πολύ σοβαρό επιχείρημα για πολλούς σχεδιαστές που δεν συμπαθούν τα διαχωρισμένα ψηφιακά συστήματα (transport/dacs). Αν ωστόσο αναφερόμαστε σε ένα αρθρωτό σύστημα, αποτελούμενο από διάφορες συσκευές που επικοινωνούν μεταξύ τους μέσω κάποιας γραμμής (συνήθως S/PDIF ή AES/EBU) τότε το πράγμα εξελίσσεται αλλοιώς. Εχουμε να αντιμετωπίσουμε το δεύτερο είδος jitter, το "επαγώμενο λόγω μεταφοράς".
Mία γραμμή μεταφοράς ψηφιακού σήματος έχει περιορισμένο εύρος. Το αποτέλεσμα είναι να παραμορφώνονται οι παλμοί.  Σε αντίθεση με το πρότυπο (επάνω) το πραγματικό σήμα απαιτεί έναν πεπερασμένο χρόνο για να φθάσει στις προβλεπόμενες τιμές. Αυτό εκτός των άλλων, δημιουργεί και jitter που εξαρτάται από την ίδια την μορφή του σήματος.
Η αρχική εντύπωση είναι, ίσως, ότι και εδώ το επαγώμενο λόγω μεταφοράς jitter οφείλεται σε εξωτερικούς θορύβους με μηχανισμό παρόμοιο με αυτόν που περιγράψαμε παραπάνω.  Ωστόσο δεν είναι έτσι. Το πρόβλημα μας εδώ είναι πρόβλημα απόκρισης συχνότητας της ίδιας της γραμμής: Πολύ απλά, ενώ τα σήματά μας πρέπει να έχουν τετραγωνική μορφή, δηλαδή να έχουν κάθετα μέτωπα και εξαιρετικά χαμηλούς (θεωρητικώς μηδενικούς) χρόνους ανόδου και πτώσης, η πραγματικότητα είναι πολύ πιο θλιβερή. Οι αντίστοιχες κυματομορφές έχουν τα γνωστά χαρακτηριστικά του πεπερασμένου εύρους συχνοτήτων (όπου τα τετράγωνα παύουν να είναι τετράγωνα) και οι πολύτιμες μεταβάσεις μας (από το On στο Off) αρχίζουν να γίνονται καμπύλες και ασαφείς.  Από την άλλη γίνεται απολύτως σαφές ότι τέτοια σήματα δεν μπορούν να χρησιμοποιηθούν ως clock εκτός αν είμαστε έτοιμοι να ανεχτούμε σημαντικά ποσοστά jitter, επειδή το σύστημα μας δεν μπορεί να είναι βέβαιο πότε ακριβώς το clock μεταβαίνει από την μία κατάσταση στην άλλη ή -ακόμη χειρότερα- άλλοτε είναι βέβαιο και άλλοτε όχι. To πρόβλημα υπάρχει τόσο στις ηλεκτρικές γραμμές όσο και στις οπτικές. Οι δεύτερες δεν έχουν, βεβαίως, χωρητικότητα και αυτεπαγωγή έχουν όμως κάποια πεπερασμένα χαρακτηριστικά μεταφοράς του φωτός (τα οποία μάλιστα μπορεί και να μεταβάλλονται ανάλογα με την καμπυλότητα της γραμμής) και απώλειες στα σημεία σύνδεσής τους.
Σχετικό με το jitter λόγω γραμμής μεταφοράς (και του πεπερασμένου εύρους της) είναι και το τρίτο είδος που θα μας απασχολήσει: Από την στιγμή που οι μεταβάσεις από το On στο Off δεν είναι ακαριαίες αλλά απαιτούν χρόνο, οι τάσεις οι οποίες δημιουργούνται στην γραμμή μεταφοράς (δηλαδή η προσέγγιση του λογικού "1" και του λογικού "0") δεν είναι ίδιες αλλά είναι συνάρτηση του ίδιου του σήματος: Οσο αυτό παραμένει στο "1" τόσο περισσότερο χρόνο δίδεται στην γραμμή μεταφοράς να προσαρμοστεί και να φτάσει στην σωστή τάση ενώ μία πολύ γρήγορη διαδοχή "0" και "1" σημαίνει ότι οι μέσες τάσεις που θα αναπτύξει η γραμμή μεταφοράς θα είναι χαμηλότερες (επειδή θα έχει μικρότερο χρόνο να προσαρμοστει).  Τί σημαίνει αυτό; Κάτι πολύ σοβαρό! Οτι υπάρχει και ένα είδος jitter το οποίο εξαρτάται από το ίδιο το σήμα. Το ονομάζουμε, πολύ λογικά, data dependent jitter.
Συχνά, το ψηφιακό σήμα μεταφέρεται από την μία συσκευή στην άλλη με κάποια γραμμή μεταφοράς για παράδειγμα S/PDIF ή AES/EBU. Η συσκευή που βρίσκεται στο τέλος της γραμμής αυτής θα πρέπει να εξάγει από το σήμα το clock για να λειτουργήσει σωστά.
Aπό όλα τα παραπάνω πρέπει να έχει γίνει σαφές ότι το jitter δεν μπορεί να αποφευχθεί επειδή αποτελεί εγγενές πρόβλημα σχεδόν σε κάθε μηχανισμό που μετέχει σε ένα ψηφιακό σύστημα. Ανάλογα με την ποιότητα των επιμέρους τμημάτων, μπορούμε να έχουμε περισσότερο, πολύ περισσότερο ή λιγότερο jitter αλλά δεν μπορούμε να έχουμε μηδενικό. Η αβεβαιότητα όσον αφορά την χρονική θέση των δειγμάτων μας (και επομένως του clock) θα υπάρχει πάντα. Ευτυχώς, όπως θα δούμε, έχουμε την τεχνική δυνατότητα να απαλλασσόμαστε σε μεγάλο ποσοστό από αυτό με απλούς ή περισσότερο πολύπλοκους τρόπους. Αρχικώς, όμως, αξίζει να απαντήσουμε στο εξής ερώτημα: Πώς μπορούμε να μετρήσουμε ή/και να ακούσουμε το jitter; Και αν συμφωνήσουμε (που λέει ο λόγος) ότι το ακούσαμε, πώς μπορούμε να το μειώσουμε;

Πρωτοσέλιδο | Αρχείο Νέων | Αρθρα | Τεχνολογία | HowTo | Δίσκοι | Links | Contact | Αbout


©Δημήτρης Σταματάκος/Ακραίες Εκδόσεις 2006
Σχετικά με το avmentor.gr (προβλήματα, παρατηρήσεις κ.λπ): webmaster@avmentor.gr Eπαφή με την σύνταξη (ύλη, σχόλια, ερωτήσεις κ.λπ): contact@avmentor.gr