"Μελέτη της Συμπεριφοράς Αποκωδικοποιητών LDPC στην περιοχή του Error Floor"

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download ""Μελέτη της Συμπεριφοράς Αποκωδικοποιητών LDPC στην περιοχή του Error Floor""

Transcript

1 ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΠΑΤΡΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΕΤΑΠΤΥΧΙΑΚΟ ΔΙΠΛΩΜΑ ΕΙΔΙΚΕΥΣΗΣ "ΟΛΟΚΛΗΡΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΥΛΙΚΟΥ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ" Διπλωματική Εργασία "Μελέτη της Συμπεριφοράς Αποκωδικοποιητών LDPC στην περιοχή του Error Floor" Γεωργία Γιαννακοπούλου Επιβλέπων Καθηγητής: Βασίλης Παλιουράς Μέλη Εξεταστικής Επιτροπής: Γεώργιος Θεοδωρίδης Κωνσταντίνος Μπερμπερίδης Πάτρα, Φεβρουάριος 2015

2

3 ΠΙΣΤΟΠΟΙΗΣΗ Πιστοποιείται ότι η Διπλωματική Εργασία με θέμα "Μελέτη της Συμπεριφοράς Αποκωδικοποιητών LDPC στην περιοχή του Error Floor" της φοιτήτριας Γεωργίας Γιαννακοπούλου του Προγράμματος Μεταπτυχιακών Σπουδών "ΟΛΟΚΛΗΡΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΥΛΙΚΟΥ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ" παρουσιάστηκε δημόσια και εξετάστηκε από τριμελή εξεταστική επιτροπή στις 10 Φεβρουαρίου Ο Επιβλέπων Αναπληρωτής Καθηγητής Βασίλης Παλιουράς

4

5 Θα ήθελα να ευχαριστήσω θερμά τον καθηγητή μου κ. Βασίλη Παλιουρά και τον υποψήφιο διδάκτορα κ. Νίκο Κάνιστρα, οι οποίοι ήταν πάντα πρόθυμοι να με στηρίξουν σε όποια δυσκολία συνάντησα. Η βοήθειά τους και οι συμβουλές τους ήταν ιδιαίτερα σημαντικές για την ολοκλήρωση της παρούσας διπλωματικής εργασίας.

6

7 Περίληψη... 1 Κεφάλαιο 1 - Εισαγωγή Εισαγωγή στον έλεγχο σφαλμάτων Το τηλεπικοινωνιακό σύστημα Το κανάλι και το θεώρημα κωδικοποίησης καναλιού Το κανάλι AWGN Κωδικοποίηση Ρυθμός ενός κώδικα Ο γεννήτορας πίνακας G Διαμόρφωση και αποδιαμόρφωση Αποκωδικοποίηση Log Likelihood Ratio και Bit Error Rate Ο πίνακας ελέγχου ισοτιμίας Η Κώδικες LDPC Ο γράφος Tanner Error Floor - Trapping Sets Αλγόριθμοι message passing Επαναληπτική αποκωδικοποίηση δύο φάσεων Επαναληπτική αποκωδικοποίηση επιπέδων Το αντικείμενο της εργασίας Κεφάλαιο 2 - Εξομοιώσεις επαναληπτικών αποκωδικοποιητών και προτεινόμενες τροποποιήσεις Περιγραφή των υπό εξέταση frames Παράμετροι του πειράματος στο FPGA Παρόμοια καταγεγραμμένα frames Διπλής ακρίβειας εξομοίωση αποκωδικοποίησης, σε περιβάλλον Matlab Αποκωδικοποίηση σε επίπεδα, με τους 4 αλγορίθμους message passing Παραδείγματα αποκωδικοποίησης Log Sum-Product Min-Sum Normalized Min-Sum Offset Min-Sum Μοτίβα λαθών και τύποι σφαλμάτων Αποκωδικοποίηση σε επίπεδα, με τον αλγόριθμο normalized Min-Sum Αριθμός λαθών πριν και μετά την αποκωδικοποίηση Τα trapping sets των ανεπιτυχώς αποκωδικοποιημένων frames Οι τιμές LLR στους κόμβους ενός trapping set Συμπεριφορά αποκωδικοποίησης παρόμοιων frames Παγίδευση των frames σε ίδια ή παρόμοια trapping sets Ίδια trapping sets Παρόμοια trapping sets Κατασκευή του πίνακα ελέγχου ισοτιμίας Η Η δομή των trapping sets στον πίνακα Η... 50

8 2.3 Bit-true εξομοίωση αποκωδικοποίησης, σε περιβάλλον Matlab Τα 11 καταγεγραμμένα frames από το σύστημα αποκωδικοποίησης hardware, χρησιμοποιώντας τον αλγόριθμο offset Min-Sum Τα 79 καταγεγραμμένα frames από το σύστημα αποκωδικοποίησης hardware, χρησιμοποιώντας τον αλγόριθμο normalized Min-Sum Αίτια καταγραφής των frames από το σύστημα hardware Επίδραση του μήκους λέξης στη διαδικασία αποκωδικοποίησης Τα trapping sets των ανεπιτυχώς αποκωδικοποιημένων frames Επικαλυπτόμενοι κύκλοι μήκους Διπλής ακρίβειας εξομοίωση αποκωδικοποίησης, σε περιβάλλον Matlab, τροποποιώντας τον αλγόριθμο normalized Min-Sum Αποκωδικοποίηση χρησιμοποιώντας 2 παράγοντες κανονικοποίησης Ο τροποποιημένος αλγόριθμος Αποτελέσματα αποκωδικοποίησης Αποκωδικοποίηση μεταβάλλοντας τα μέγιστα R mn μηνύματα Ο ρόλος των check κόμβων Ο τροποποιημένος αλγόριθμος Αποτελέσματα αποκωδικοποίησης Αποκωδικοποίηση μεταβάλλοντας τα LLR ορισμένων variable κόμβων Ο τροποποιημένος αλγόριθμος Αποτελέσματα αποκωδικοποίησης Κεφάλαιο 3 - Μελέτη των επιπτώσεων του θορύβου στα trapping sets Σχεδιασμός διαγραμμάτων BER με βάση την κωδική λέξη και το θόρυβο συγκεκριμένου frame Α' σειρά πειραμάτων - Συμπεράσματα Β' σειρά πειραμάτων - Συμπεράσματα Γ' σειρά πειραμάτων - Συμπεράσματα Πειράματα μηδενικού θορύβου, εκτός των κόμβων συγκεκριμένου trapping set Α' σειρά πειραμάτων - Συμπεράσματα Β' σειρά πειραμάτων - Συμπεράσματα Πειράματα τυχαίου θορύβου, μεγαλύτερης ισχύος στους κόμβους ενός trapping set Η διασπορά του θορύβου σε συγκεκριμένα σύνολα κόμβων Περιγραφή των πειραμάτων και θεωρητική ανάλυση Συμπεράσματα Η πιθανότητα παγίδευσης σε συγκεκριμένο trapping set Συμπεράσματα Παράρτημα Βιβλιογραφία

9

10

11 Περίληψη Οι κώδικες LDPC (Low Density Parity Check) χρησιμοποιούνται για τον προσδιορισμό και τη διόρθωση σφαλμάτων, τα οποία προκύπτουν κατά τη μετάδοση πληροφοριών μέσα από ένα κανάλι με θόρυβο. Πρόκειται για γραμμικούς block κώδικες, με χαρακτηριστικό τους γνώρισμα τον αραιό πίνακα ελέγχου ισοτιμίας. Είναι γνωστοί για την πολύ καλή απόδοση αποκωδικοποίησης, η οποία σε ορισμένες περιπτώσεις προσεγγίζει το όριο του Shannon. Παρουσιάζουν, όμως, το γνωστό φαινόμενο του "error floor", όπου η κλίση της καμπύλης BER προς SNR εμφανίζει μια απότομη μείωση σε επίπεδα πολύ χαμηλού θορύβου και δεν ακολουθεί τη μορφή που έχει στην περιοχή του "waterfall". Κάθε κώδικας LDPC χαρακτηρίζεται από ένα συγκεκριμένο γράφο Tanner, ο οποίος αποτελεί γραφική απεικόνιση του αντίστοιχου πίνακα ελέγχου ισοτιμίας. Έχει διαπιστωθεί πως υπεύθυνες για την παγίδευση του αποκωδικοποιητή σε μία λανθασμένη κατάσταση και για την εμφάνιση του error floor στα διαγράμματα BER είναι κυρίως κάποιες δομές μέσα στο γράφο Tanner, ονομαζόμενες "trapping sets". Σκοπός της παρούσας διπλωματικής εργασίας είναι η μελέτη του μηχανισμού ενεργοποίησης των trapping sets. Προς αυτήν την κατεύθυνση, αναλύεται λεπτομερώς η διαδικασία αποκωδικοποίησης ορισμένων κωδικών λέξεων, χρησιμοποιώντας αλγορίθμους "message passing", και ειδικότερα τον αλγόριθμο normalized Min-Sum, καθώς και τη μέθοδο αποκωδικοποίησης σε επίπεδα (layered decoding). Μελετάται προσεκτικά η δομή των trapping sets στα οποία παγιδεύεται ο αποκωδικοποιητής σε κάθε περίπτωση και περιγράφεται ο τρόπος κατασκευής του πίνακα ελέγχου ισοτιμίας που χρησιμοποιήθηκε για την πραγματοποίηση όλων των πειραμάτων. Επιπλέον, προσδιορίζεται ο βαθμός επίδρασης του κβαντισμού των δεδομένων στη διαδικασία αποκωδικοποίησης, εξομοιώνοντας αποκωδικοποιήσεις "bit-true" και συγκρίνοντας τα αποτελέσματα μεταξύ τους, αλλά και με αυτά των αποκωδικοποιήσεων διπλής ακρίβειας. Σημαντικό κομμάτι της εργασίας αποτελεί η αποκωδικοποίηση των ίδιων κωδικών λέξεων με χρήση τροποποιημένων εκδοχών του αρχικού αλγορίθμου normalized Min-Sum. Οι νέες εκδοχές προέκυψαν με βάση διάφορα χαρακτηριστικά που παρατηρήθηκαν από την εξέταση των ανταλλασσόμενων μηνυμάτων κατά τη διαδικασία της επαναληπτικής αποκωδικοποίησης με τον αυθεντικό αλγόριθμο. Τέλος, μεγάλο μέρος της εργασίας ασχολείται με τον προσδιορισμό των επιπτώσεων του θορύβου στα trapping sets και με τον τρόπο που αυτός επιδρά στην ενεργοποίησή τους. Παρουσιάζονται τα πειράματα που πραγματοποιήθηκαν, προκειμένου να σχεδιαστούν κατάλληλα διαγράμματα BER, όπου, υπό καθορισμένες συνθήκες, είναι ορατή η περιοχή του error floor. Βασικός στόχος ήταν η δημιουργία ενός θεωρητικού μοντέλου, με το οποίο θα είναι υπολογίσιμη η πιθανότητα ενεργοποίησης ενός συγκεκριμένου trapping set και, πιο γενικά, η πιθανότητα εμφάνισης σφάλματος (BER) κατά τη μετάδοση σε συνθήκες χαμηλού θορύβου. 1

12 2

13 Κεφάλαιο 1 Εισαγωγή 1.1 Εισαγωγή στον έλεγχο σφαλμάτων Με τον όρο "επικοινωνίες" εννοείται γενικά η αποστολή και λήψη μηνυμάτων και δεδομένων μεταξύ σημείων στο χώρο ή χρόνο, συνήθως με τη βοήθεια της τεχνολογίας. Κύριος στόχος ενός τηλεπικοινωνιακού συστήματος μετάδοσης πληροφοριών είναι η ορθή και κατανοητή λήψη των μηνυμάτων από τον εκάστοτε δέκτη, γι' αυτό και διάφορες σχετικές μέθοδοι χρησιμοποιούνται σε μεγάλο αριθμό εφαρμογών, όπως στην κινητή τηλεφωνία και στα μέσα αποθήκευσης δεδομένων. Πλήθος θεωριών αναπτύσσονται συνεχώς, με σκοπό πάντα τη βελτίωση των μέσων, των υποδομών και των τεχνικών μετάδοσης πληροφοριών, καθώς και τη δημιουργία όλο και περισσότερο αξιόπιστων συστημάτων. Προκειμένου να μεταδίδονται σωστά τα δεδομένα στον τελικό προορισμό, αυτά κωδικοποιούνται ώστε να μπορεί να πραγματοποιηθεί στο δέκτη έλεγχος σφαλμάτων (error control coding). Ο έλεγχος διακρίνεται σε απλή ανίχνευση (error detection coding) και σε διόρθωση σφαλμάτων (error correction coding), όπου με βάση τη λαμβανόμενη πληροφορία, τα λάθη που εισάγονται στα δεδομένα όταν αυτά μεταδίδονται μέσω ενθόρυβων καναλιών, μπορούν μόνο να ανιχνευθούν ή και να διορθωθούν αντίστοιχα. Με την επιπλέον διόρθωση σφαλμάτων (κώδικες FEC - Forward Error Correction) αποφεύγεται η ανάγκη επαναμετάδοσης από τον πομπό του αρχικού σωστού μηνύματος (κώδικες ARQ - Automatic Repeat Request). Η κωδικοποίηση για έλεγχο σφαλμάτων βελτιώνει την απόδοση των συστημάτων μετάδοσης, εισάγοντας πλεονάζουσα πληροφορία στα αρχικά μηνύματα, ώστε ο δέκτης να μπορεί να ανιχνεύσει/διορθώσει τα λάθη. Συναντάνται πλέον σχεδόν παντού στην καθημερινή ζωή, σε ένα απλό τηλεφώνημα, στη μετάδοση πληροφοριών μέσω διαδικτύου, στους σκληρούς δίσκους, στα cd-roms και στα dvds. 3

14 1.2 Το τηλεπικοινωνιακό σύστημα Ένα ψηφιακό επικοινωνιακό σύστημα [1] απεικονίζεται στο επόμενο σχήμα. Συνοπτικά, τα δεδομένα που προέρχονται από την πηγή κωδικοποιούνται και διαμορφώνονται κατάλληλα πριν μεταδοθούν από το κανάλι, ενώ στην πλευρά του δέκτη ακολουθείται η αντίστροφη διαδικασία της αποδιαμόρφωσης και αποκωδικοποίησης. Στις περιπτώσεις όπου είναι επιθυμητή η προστασία των προς μετάδοση δεδομένων, συμπεριλαμβάνονται και τα στάδια κρυπτογράφησης (encryption) και αποκρυπτογράφησης (decryption). Το τηλεπικοινωνιακό σύστημα. Τα δεδομένα της πηγής (source) με τελικό προορισμό το δέκτη (sink) θεωρούνται ως μία σειρά από τυχαίους αριθμούς που πρόκειται να μεταδοθούν από το κανάλι, το οποίο εισάγει θόρυβο και αλλοιώνει την αυθεντική πληροφορία. Το ζητούμενο είναι το τελικό μήνυμα (message') στην πλευρά του δέκτη να είναι ίδιο με το αρχικό μήνυμα (message) στην πλευρά του πομπού. Όπως φαίνεται και από το σχήμα, υπάρχουν δύο ειδών κωδικοποιητές και αποκωδικοποιητές: α) πηγής (source encoder/decoder) και β) καναλιού (channel encoder/decoder). Ο κωδικοποιητής πηγής συμπιέζει τα προς μετάδοση δεδομένα, αφαιρώντας τον πλεονασμό, δηλαδή τα επιπλέον bits που απαιτούνται για την αποθήκευση της πληροφορίας, σε σχέση με τον αριθμό των bits που περιέχουν την πραγματική πληροφορία. Ο αποκωδικοποιητής πηγής είναι υπεύθυνος για την αναπαράσταση των λαμβανόμενων δεδομένων σε μη συμπιεσμένη μορφή και την προώθησή τους στο δέκτη. Ο κωδικοποιητής και ο αποκωδικοποιητής καναλιού είναι τα τμήματα που ευθύνονται για τη διαδικασία ανίχνευσης και διόρθωσης σφαλμάτων, άρα για το βαθμό αξιοπιστίας του συστήματος. Ο κωδικοποιητής καναλιού προσθέτει πλεονάζουσα πληροφορία σε μία ομάδα από bits (block), με τέτοιο τρόπο ώστε τα σφάλματα που θα εισαχθούν από το κανάλι να μπορούν τελικά να ανιχνευθούν ή/και να διορθωθούν. Ο αποκωδικοποιητής καναλιού με τη σειρά του, προσπαθεί να ανιχνεύσει/διορθώσει τα σφάλματα, λαμβάνοντας υπ' όψιν του την πλεονάζουσα 4

15 πληροφορία. (Η πλεονάζουσα πληροφορία που αφαιρείται από τον κωδικοποιητή πηγής δεν έχει καμία σχέση με την πλεονάζουσα πληροφορία που προστίθεται από τον κωδικοποιητή καναλιού.) Η έξοδος του κωδικοποιητή καναλιού, η οποία ονομάζεται κωδική λέξη (codeword) είναι επίσης μία ακολουθία από bits, όπως είναι και το αρχικό μήνυμα. Ο διαμορφωτής (modulator) αναλαμβάνει να μετατρέψει αυτά τα bits σε σήμα κατάλληλο προς μετάδοση από το εκάστοτε κανάλι. Κάποια κανάλια απαιτούν το σήμα να είναι πχ. σήμα τάσης συνεχούς χρόνου, ενώ άλλα απαιτούν ηλεκτρομαγνητικές κυμματομορφές συγκεκριμένης ζώνης συχνοτήτων. Ο αποδιαμορφωτής (demodulator) λαμβάνει το σήμα από το κανάλι και το μετατρέπει αντίστροφα σε μία σειρά από bits. Η έξοδος του αποδιαμορφωτή αποτελεί την είσοδο του αποκωδικοποιητή καναλιού και ονομάζεται frame. Οι διαδικασίες κωδικοποίησης/αποκωδικοποίησης και διαμόρφωσης/ αποδιαμόρφωσης επεξηγούνται σε επόμενη παράγραφο αναλυτικότερα Το κανάλι και το θεώρημα κωδικοποίησης καναλιού Με τον όρο "κανάλι" εννοείται το μέσο μετάδοσης των πληροφοριών. Παραδείγματα καναλιών είναι οι τηλεφωνικές γραμμές, οι οπτικές ίνες, τα κανάλια κινητής τηλεφωνίας κλπ. Τέτοιου είδους κανάλια μεταφέρουν την πληροφορία μεταξύ δύο διακριτών χωρικών σημείων. Ως κανάλι όμως θεωρείται και ένα μέσο το οποίο μεταφέρει την πληροφορία μεταξύ δύο διακριτών χρονικών σημείων, άρα ένα cd-rom ή ένας σκληρός δίσκος ονομάζεται επίσης κανάλι, εφόσον δεδομένα εγγράφονται σε αυτά τη χρονική στιγμή 'α' και διαβάζονται από αυτά τη χρονική στιγμή 'β'. Ένα σήμα, το οποίο μεταδίδεται μέσω ενός καναλιού, υφίσταται αλλοιώσεις λόγω θορύβου. Η έννοια του θορύβου με λίγα λόγια εμπεριέχει όλα τα ανεπιθύμητα σήματα που επηρεάζουν και παραμορφώνουν το χρήσιμο σήμα πληροφορίας. Κάθε κανάλι χαρακτηρίζεται από τη χωρητικότητά του C (capacity), η οποία προσδιορίζει την ποσότητα της πληροφορίας που μπορεί να μεταδοθεί αξιόπιστα από αυτό και ορίζει ένα θεωρητικό άνω όριο σχετικά με το ρυθμό μετάδοσης δεδομένων. Το θεώρημα κωδικοποίησης καναλιού (Noisy Channel Coding Theorem) διατυπώθηκε το 1948 από τον Claude Shannon [2], ο οποίος βασίστηκε σε προηγούμενες ιδέες των Harry Nyquist και Ralph Hartley, και αναφέρει σχετικά με τη χωρητικότητα ενός καναλιού ότι: Αν ο ρυθμός μετάδοσης πληροφοριών σε ένα κανάλι είναι μικρότερος από τη χωρητικότητά του, τότε υπάρχει κώδικας με επαρκώς μεγάλο μήκος block, τέτοιος ώστε η πιθανότητα εμφάνισης λάθους στα bits που λαμβάνει ο δέκτης να είναι μικρότερη από μία οποιαδήποτε καθορισμένη τιμή. 5

16 Ιδανικά λοιπόν, τα δεδομένα μπορούν να κωδικοποιηθούν με τέτοιο τρόπο ώστε να είναι δυνατή η μετάδοσή τους χωρίς σχεδόν κανένα σφάλμα, αρκεί αυτή να γίνεται με ρυθμό μικρότερο της χωρητικότητας. Αξίζει να σημειωθεί ότι το θεώρημα δεν αναφέρεται στην περίπτωση όπου ο ρυθμός μετάδοσης έχει την ίδια τιμή με τη χωρητικότητα καναλιού Το κανάλι AWGN Προκειμένου να μελετηθούν τα διάφορα επικοινωνιακά συστήματα, έχουν αναπτυχθεί μαθηματικά μοντέλα που περιγράφουν επαρκώς τα χαρακτηριστικά του θορύβου που εισάγει ένα κανάλι. Ένα βασικό ιδανικό τέτοιο μοντέλο είναι το κανάλι λευκού Γκαουσιανού προσθετικού θορύβου (AWGN - Additive White Gaussian Noise). Μία σημαντική εφαρμογή του θεωρήματος κωδικοποίησης καναλιού αποτελεί το θεώρημα Shannon-Hartley, όπου ορίζεται ο μέγιστος ρυθμός μετάδοσης πληροφοριών συγκεκριμένα για ένα κανάλι AWGN. Σύμφωνα με το μοντέλο AWGN, ο θόρυβος είναι μία τυχαία μεταβλητή, η οποία ακολουθεί την Γκαουσιανή (ή κανονική) κατανομή, με μέση τιμή μ=0 και τυπική απόκλιση σ. Έτσι, η συνάρτηση πυκνότητας πιθανότητας του θορύβου είναι: nμ 2 n 2 2 σ 2σ 1 1 f n e e 2π σ 2π σ 2 2 Ο θόρυβος ονομάζεται προσθετικός διότι η τιμή του σήματος στην έξοδο του καναλιού προκύπτει απλά από την πρόσθεση της τιμής του θορύβου στην τιμή της εισόδου του καναλιού. Επιπλέον, ο όρος λευκός σημαίνει ότι η φασματική πυκνότητα ισχύος του θορύβου N 0 (noise power spectral density) είναι σταθερή, ανεξάρτητη της συχνότητας και ισούται με Ν 0 =2. σ 2. Στο μοντέλο καναλιού AWGN λοιπόν, εύρους ζώνης Β, το θεώρημα Shannon- Hartley ορίζει τη χωρητικότητα καναλιού από τον τύπο: C B log 1 SNR 2 Ο όρος SNR (Signal to Noise Ratio) είναι ο λόγος της μέσης ισχύος του σήματος που μεταφέρει τη χρήσιμη πληροφορία, προς τη μέση ισχύ του σήματος θορύβου. Αν με E b συμβολίζεται η ενέργεια που μεταδίδεται ανά bit, τότε το SNR σχετίζεται με το λόγο E b /N 0 μέσω της φασματικής αποδοτικότητας l (Spectral Efficiency), η οποία ισούται με το ρυθμό μετάδοσης πληροφορίας προς το εύρος ζώνης του καναλιού [3] : SNR l E /N l R /B I b 0 6

17 Όπως αναφέρθηκε παραπάνω, το θεώρημα κωδικοποίησης καναλιού θέτει ένα άνω όριο στο ρυθμό μετάδοσης πληροφορίας R I στο κανάλι, άρα και στη φασματική αποδοτικότητα. Για το μοντέλο AWGN θα πρέπει να ισχύει: RI B log 2 1 SNR l log 1 SNR 2 Αν τώρα το l είναι δεδομένο, οπότε είναι γνωστός εκ των προτέρων ο ρυθμός μετάδοσης R I σε κανάλι εύρους ζώνης Β, τότε θεωρητικά μπορεί να επιτευχθεί αξιόπιστη επικοινωνία, μεταδίδοντας στην ελάχιστη επιτρεπόμενη τιμή E b /N 0 : E /N b 0 l 2 1 l Διευκρινίζεται πως ο ρυθμός μετάδοσης R I αφορά τη μετάδοση μόνο της χρήσιμης πληροφορίας, πριν δηλαδή αυτή κωδικοποιηθεί από τον κωδικοποιητή καναλιού. Αν ενδιαφέρει ο ρυθμός μετάδοσης της μικτής πληροφορίας, δηλαδή της χρήσιμης και της πλεονάζουσας που προστίθεται από τον κωδικοποιητή καναλιού, τότε χρησιμοποιείται το σύμβολο R G (Gross Rate) Κωδικοποίηση Όπως αναφέρθηκε και παραπάνω, προκειμένου να ανιχνευθούν/διορθωθούν τα λάθη που προκύπτουν κατά τη μετάδοση, ο κωδικοποιητής μετασχηματίζει τα αρχικά μηνύματα, εισάγοντας επιπλέον πληροφορία. Πιο συγκεκριμένα, αναλαμβάνει την αντιστοίχιση ενός μηνύματος αποτελούμενο από Κ bits, σε μία κωδική λέξη αποτελούμενη από N bits, εισάγοντας Μ=Ν-Κ επιπλέον bits, τα bits ελέγχου ισοτιμίας. Εφόσον το μήκος μίας κωδικής λέξης είναι N, υπάρχουν 2 Ν πιθανές κωδικές λέξεις. Παρόλα αυτά, μόνο οι 2 Κ είναι έγκυρες, αφού τόσα είναι τα πιθανά μηνύματα που μπορεί να δημιουργήσει η πηγή χρησιμοποιώντας Κ bits. Το σύνολο των 2 Κ κωδικών λέξεων μήκους Ν αποτελούν έναν (Ν,Κ,d min ) δυαδικό block κώδικα, όπου d min (minimum distance) είναι η ελάχιστη απόσταση Hamming μεταξύ δύο οποιονδήποτε έγκυρων κωδικών λέξεων του κώδικα. Όσο μεγαλύτερη είναι η τιμή d min, τόσο καλύτερος είναι ο κώδικας. Ένας κώδικας ονομάζεται δυαδικός όταν τα σύμβολα που δημιουργεί η πηγή είναι μόνο το 0 ή το 1. Επιπλέον, ο όρος block σημαίνει πως το σύνολο της αρχικής πληροφορίας που πρόκειται να μεταδοθεί χωρίζεται σε συγκεκριμένες και διακριτές ομάδες των Κ bits και από την καθεμία προκύπτει μία καινούργια ομάδα των Ν bits. Υπάρχουν και οι συνελικτικοί (convolutional) κώδικες, σύμφωνα με τους οποίους το κωδικοποιημένο block μήκους Ν δημιουργείται λαμβάνοντας υπ' όψιν περισσότερα του ενός blocks μήκους Κ. 7

18 Ρυθμός ενός κώδικα Ο κωδικοποιητής καναλιού χαρακτηρίζεται από ένα μέγεθος R C, που ονομάζεται ρυθμός του κώδικα (Code Rate), και είναι ίσος με τον αριθμό των bits πληροφορίας που εισέρχονται σε αυτόν προς τον αριθμό των bits που εξέρχονται από αυτόν: K M R C 1 1 N N Αν με E b συμβολίζεται, όπως ειπώθηκε παραπάνω, η ενέργεια ανά μη κωδικοποιημένο bit και με E c τώρα συμβολιστεί η ενέργεια ανά κωδικοποιημένο bit, θα πρέπει η συνολική μεταδιδόμενη ενέργεια, είτε αυτή αναφέρεται στα κωδικοποιημένα bits είτε στα μη κωδικοποιημένα, να είναι η ίδια. Με άλλα λόγια, η ενέργεια που θα απαιτούνταν για την αποστολή K μη κωδικοποιημένων bits, θα πρέπει πλέον να μοιραστεί σε N κωδικοποιημένα bits. Έτσι, προκύπτει και η επόμενη σχέση για το ρυθμό ενός κώδικα: Ec N Ec K Eb R C E Τέλος, ο ρυθμός κώδικα μπορεί να οριστεί και ως ο ρυθμός μετάδοσης ωφέλιμης πληροφορίας προς το ρυθμό μετάδοσης μικτής πληροφορίας [3]: b R C R R I G Ο γεννήτορας πίνακας G Εάν οποιοσδήποτε γραμμικός συνδυασμός των κωδικών λέξεων ενός κώδικα είναι επίσης κωδική λέξη, τότε ο κώδικας ονομάζεται γραμμικός. Οι κωδικές λέξεις c (διανύσματα διαστάσεων 1xN) ενός γραμμικού block κώδικα προκύπτουν από τον πολλαπλασιασμό των μηνυμάτων m (διανύσματα διαστάσεων 1xK) με έναν γεννήτορα πίνακα G (generator matrix), αντιπροσωπευτικό για το συγκεκριμένο κώδικα και διαστάσεων KxN: c 1xN m 1xK G KxN Ο γεννήτορας πίνακας ενός γραμμικού block κώδικα ονομάζεται συστηματικός αν το αρχικό αυθεντικό μήνυμα βρίσκεται απαράλλακτο μέσα στην αντίστοιχη κωδική λέξη, αν δηλαδή αποτελεί ξεκάθαρο κομμάτι αυτής. Αν ένας πίνακας G είναι συστηματικός, τότε ο μοναδιαίος πίνακας αποτελεί μέρος του, όπως φαίνεται κι από το παράδειγμα που ακολουθεί: 8

19 G m m m m m c c c c c c c c c m + m + m c m + m + m c m + m + m m m m m Διαμόρφωση και αποδιαμόρφωση Αφού δημιουργηθεί η κωδική λέξη από τον κωδικοποιητή καναλιού, ακολουθεί το στάδιο της διαμόρφωσης. Το είδος της διαμόρφωσης που ενδιαφέρει εδώ είναι η διαμόρφωση BPSK (Binary Phase Shift Keying). Σύμφωνα με αυτήν [4], παράγονται δύο σήματα s 0 (t) και s 1 (t) διαφορετικής φάσης κατά 180 ο, τα οποία αντιστοιχούν στις δύο πιθανές τιμές ('0' ή '1') ενός κωδικοποιημένου bit: bit '0' s t E φt 0 c bit '1' s t E φt 1 c Πιο απλά, θεωρείται ότι η τιμή ενός bit αντιστοιχίζεται σε σήμα κατάλληλου προσήμου με απόλυτη τιμή E c, το οποίο πολλαπλασιάζεται με το φορέα φ(t) ημιτονοειδούς μορφής και μοναδιαίας ενέργειας. Στην πλευρά του δέκτη, αφού πραγματοποιηθεί η αντίστροφη διαδικασία της BPSK αποδιαμόρφωσης, η έξοδος του αποδιαμορφωτή θα ισούται, ανάλογα με το αρχικό μεταδιδόμενο bit, με: r Ec noise Αποκωδικοποίηση Σε κάθε bit από τα Ν ενός κωδικοποιημένου block, ή αλλιώς μίας κωδικής λέξης, αντιστοιχεί μία συγκεκριμένη τιμή, ονομαζόμενη LLR, η οποία προκύπτει από την έξοδο r του αποδιαμορφωτή και εξαρτάται από τα επίπεδα θορύβου. Ο αποκωδικοποιητής καναλιού, έχοντας ως είσοδο αυτές τις τιμές και εκτελώντας κατάλληλους αλγορίθμους αποκωδικοποίησης, προσπαθεί να βρει την αρχική σωστή πληροφορία. 9

20 Αφού τελειώσει η διαδικασία αποκωδικοποίησης για ένα block, ο αποκωδικοποιητής συνήθως καταλήγει σε μία πιθανή κωδική λέξη και το αποτέλεσμα μπορεί να είναι ένα από τα παρακάτω [5]: Επιτυχής αποκωδικοποίηση: ο αποκωδικοποιητής καναλιού καταλήγει σε μία έγκυρη κωδική λέξη, η οποία είναι και αυτή που μεταδόθηκε αρχικά. Σφάλμα τύπου Ι: ο αποκωδικοποιητής συγκλίνει σε κάποιο διάνυσμα που δεν είναι έγκυρη κωδική λέξη. Αυτό το σφάλμα μπορεί να ανιχνευθεί. Σφάλμα τύπου ΙΙ: ο αποκωδικοποιητής δεν μπορεί να καταλήξει σε συγκεκριμένο διάνυσμα και ταλαντεύεται μεταξύ διαφόρων λύσεων. Και αυτό το σφάλμα μπορεί να ανιχνευθεί. Σφάλμα τύπου ΙΙΙ: ο αποκωδικοποιητής συγκλίνει σε μία έγκυρη κωδική λέξη, όμως όχι αυτήν που αρχικά μεταδόθηκε. Αυτό το σφάλμα δυστυχώς δεν ανιχνεύεται, εφόσον, από την πλευρά του αποκωδικοποιητή, δε διαφέρει από την περίπτωση επιτυχούς αποκωδικοποίησης. Log Likelihood Ratio και Bit Error Rate Εξηγήθηκε σε προηγούμενη παράγραφο πως η τιμή του θορύβου είναι μία τυχαία μεταβλητή, η οποία ακολουθεί την κανονική κατανομή, με μέση τιμή μ=0 και τυπική απόκλιση σ. Άρα, η έξοδος r, εφόσον προκύπτει από την πρόσθεση μιας τυχαίας τιμής σε μία σταθερή τιμή, είναι επίσης τυχαία μεταβλητή, η οποία ακολουθεί την κανονική κατανομή, με τυπική απόκλιση σ και μέση τιμή μ= bit '1', ή μ= Ec πιθανότητας της μεταβλητής r είναι [4]: Ec, αν μεταδόθηκε το, αν μεταδόθηκε το bit '0'. Έτσι, η συνάρτηση πυκνότητας f r f r b ' 0' b ' 1' 1 e 2π σ 1 e 2π σ r Ec 2 2σ 2 r Ec 2σ2 2 Η πιθανότητα να παραχθεί από την πηγή είτε το bit '0' είτε το bit '1' είναι η ίδια και ίση με 0.5. Προκειμένου να παρθεί απόφαση στο δέκτη σχετικά με το ποιο bit μεταδόθηκε στην πραγματικότητα, δεδομένου ότι έχει ληφθεί το r, υπολογίζεται ο παρακάτω λόγος πιθανοτήτων (Likelihood Ratio): Pb ' 0' r f r b ' 0' Pb ' 0' f r b ' 0' e Pb ' 1' r f r b ' 1' Pb ' 1' f r b ' 1' 2r E c σ2 10

21 Τις περισσότερες φορές, είναι πιο βολικό να χρησιμοποιείται ο όρος Log Likelihood Ratio (LLR) [6], δηλαδή ο φυσικός λογάριθμος του παραπάνω κλάσματος, οπότε αν η τιμή LLR είναι θετική (ή μηδέν), τότε θεωρείται ότι μεταδόθηκε το bit '0', ενώ αν είναι αρνητική, θεωρείται ότι μεταδόθηκε το bit '1': 2r E LLR σ c 2 LLR 0 Pb ' 0' r Pb ' 1' r LLR 0 Pb ' 0' r Pb ' 1' r Η πιθανότητα να συμβεί λάθος στο δέκτη, δηλαδή κατά την αναγνώριση της λαμβανόμενης τιμής να θεωρηθεί εσφαλμένα πως μεταδόθηκε το συμπληρωματικό bit του πραγματικά μεταδιδόμενου, ισούται με το εμβαδόν του σκιασμένου τμήματος με πράσινο χρώμα στο προηγούμενο σχήμα. Λόγω συμμετρίας, το εμβαδόν αυτό είναι ίδιο με το εμβαδόν του σκιασμένου τμήματος με μπλε χρώμα. Αποδεικνύεται πως η πιθανότητα εμφάνισης λάθους εξαρτάται από τις παραμέτρους E c =R C. E b και σ 2 =Ν 0 /2, ή πιο απλά από το λόγο E b /N 0 και το ρυθμό του κώδικα R C. Αυξάνοντας την τιμή E b /N 0 μειώνεται η πιθανότητα σφάλματος. Επιπλέον, για σταθερό E b /N 0, όσο μεγαλύτερος είναι ο ρυθμός του κώδικα, τόσο μικρότερη είναι αυτή η πιθανότητα, με την ακραία περίπτωση όπου R C = 1, το οποίο σημαίνει πως τα δεδομένα αποστέλλονται χωρίς να κωδικοποιηθούν. Φαίνεται κι από τα διαγράμματα του επόμενου σχήματος, λοιπόν, πως κωδικοποιώντας τα δεδομένα, προκύπτει χειρότερη απόδοση. Το αποτέλεσμα αυτό προφανώς δεν είναι επιθυμητό, διορθώνεται όμως, εφόσον στην πλευρά του δέκτη υπάρχει ο αποκωδικοποιητής καναλιού, ο οποίος θα προσπαθήσει, με τη βοήθεια των Μ επιπλέον bits του κάθε block, να ανιχνεύσει και να διορθώσει τα λανθασμένα bits, ώστε να προκύψει τελικά πολύ καλύτερο διάγραμμα πιθανότητας λάθους [1] BER: Probability of Error R C =1.00 R C =0.75 R C = E b /N 0 (db) Πιθανότητα αναγνώρισης λανθασμένου bit στο δέκτη, σε συνάρτηση με τα επίπεδα θορύβου στο μέσο μετάδοσης. 11

22 Τέτοιου είδους λογαριθμικά διαγράμματα, με οριζόντιο άξονα τον όρο E b /N 0 και κάθετο την πιθανότητα αναγνώρισης λανθασμένου bit στο δέκτη, είναι γνωστά ως διαγράμματα BER και χρησιμοποιούνται ώστε να είναι δυνατή η σύγκριση απόδοσης των συστημάτων κωδικοποίησης/αποκωδικοποίησης καναλιού. Το BER (Βit Error Rate) για έναν κώδικα προκύπτει πειραματικά και ορίζεται ως ο αριθμός των λανθασμένων bits προς το συνολικό αριθμό των μεταδιδόμενων bits. Μπορεί να θεωρηθεί ως μία καλή εκτίμηση της πιθανότητας εμφάνισης λάθους, αρκεί να έχει μεταδοθεί επαρκής αριθμός blocks και να έχει συμβεί επίσης επαρκής αριθμός λαθών. Σημειώνεται εδώ ότι συνήθως οι μετρήσεις αφορούν μόνο τα Κ bits από κάθε μεταδιδόμενο block, τα οποία περιέχουν την πραγματική πληροφορία, και όχι τα συνολικά Ν bits, που περιέχουν και την πλεονάζουσα πληροφορία, εφόσον δεν ενδιαφέρει αν τα επιπλέον Ν-Κ bits τελικά θα διορθωθούν. Προκειμένου να δημιουργηθεί ένα διάγραμμα BER μέσω εξομοίωσης, είναι βολικό για κάθε τιμή E b /N 0, ή αλλιώς για κάθε στάθμη θορύβου, να υπολογίζεται η αντίστοιχη διασπορά του θορύβου σ 2. Η σχέση μεταξύ σ 2 και E b /N 0 δίνεται από τους τύπους: Eb Ec Eb Ec, 10log 2 2 N0 2R C σ N0 db 2R C σ Συνηθίζεται επίσης να τίθεται E c =1, εννοώντας ότι μεταδίδονται οι τιμές +1 (bit '1') και -1 (bit '0'), ώστε να θεωρείται πως το σήμα έχει σταθερή ισχύ, ενώ ρυθμίζεται μόνο η ισχύς του θορύβου μέσω της διασποράς του. Ο πίνακας ελέγχου ισοτιμίας Η Σε κάθε (N,K,d min ) γραμμικό block κώδικα αντιστοιχεί ένας πίνακας H διαστάσεων MxN, ο οποίος ονομάζεται πίνακας ελέγχου ισοτιμίας (Parity Check Matrix). Αν το διάνυσμα c', στο οποίο μπορεί να καταλήξει ο κωδικοποιητής καναλιού, αποτελεί πράγματι μία έγκυρη κωδική λέξη, τότε για αυτό το διάνυσμα θα ισχύει: 1xN T c' H 0 NxM Ο γεννήτορας πίνακας και ο πίνακας ελέγχου ισοτιμίας, οι οποίοι χαρακτηρίζουν ένα γραμμικό block κώδικα, συνδέονται μεταξύ τους με τη σχέση: KxN T G H 0 NxM Στον πίνακα G, που δόθηκε ως παράδειγμα παραπάνω, αντιστοιχεί ο επόμενος πίνακας Η. Αν το διάνυσμα c' c' c' c' c' c' c' c' είναι μία πιθανή κωδική λέξη, τότε θα πρέπει να ικανοποιούνται οι τρεις εξισώσεις που ακολουθούν και οι οποίες προκύπτουν από τον πίνακα Η: 12

23 G H c' c' c' c' c' c' c' c' c' c' c' c' Ο πίνακας ελέγχου ισοτιμίας ουσιαστικά αναπαριστά ένα σύνολο από Μ γραμμικές εξισώσεις, οι οποίες ονομάζονται εξισώσεις ελέγχου ισοτιμίας (parity check equations). Το σύνολο των έγκυρων κωδικών λέξεων είναι το σύνολο των λύσεων αυτών των εξισώσεων. Στην πραγματικότητα, η πράξη της πρόσθεσης αντιστοιχεί στην πράξη XOR, εφόσον γίνεται αναφορά μόνο σε δυαδικούς κώδικες. 1.3 Κώδικες LDPC Ο έλεγχος σφαλμάτων μέσω κωδικοποίησης στα πλαίσια των ψηφιακών επικοινωνιών ανάγεται χρονολογικά στα μέσα του 20 ου αιώνα. Τα τελευταία χρόνια, έχει σημειωθεί τεράστια εξέλιξη στον τομέα αυτόν, αναπτύσσοντας κώδικες οι οποίοι έχουν τη δυνατότητα να πλησιάσουν τα θεωρητικά όρια αποδοτικότητας, δηλαδή τη χωρητικότητα καναλιού. Ο Shannon απέδειξε την ύπαρξη κωδίκων, οι οποίοι μπορούν να χρησιμοποιηθούν για αξιόπιστη μετάδοση, δεν έδειξε όμως τον τρόπο με τον οποίο θα βρεθούν τέτοιου είδους κώδικες. Απέδειξε επίσης ότι ένας τυχαία κατασκευασμένος κώδικας διόρθωσης σφαλμάτων έχει πολύ καλές επιδόσεις, η πολυπλοκότητα όμως της διαδικασίας αποκωδικοποίησης, λόγω της τυχαιότητας, αυξάνεται εκθετικά σε σχέση με το μήκος block του κώδικα. Γίνεται, λοιπόν, μεγάλη προσπάθεια εύρεσης τρόπων κατασκευής κωδίκων που θα είναι και αποδοτικοί, όσον αφορά τη δυνατότητα διόρθωσης σφαλμάτων, αλλά και πρακτικοί, από άποψη δυσκολίας κατασκευής και πολυπλοκότητας αποκωδικοποίησης. Οι κώδικες LDPC (Low Density Parity Check), οι οποίοι αρχικά προτάθηκαν από τον Robert Gallager το 1962 [7], πλησιάζουν αρκετά το θεωρητικό όριο του Shannon. Πρόκειται για γραμμικούς block κώδικες, στους οποίους αντιστοιχούν αραιοί πίνακες ελέγχου ισοτιμίας, δηλαδή πίνακες με χαμηλή πυκνότητα άσων, και περιγράφονται πλήρως είτε από τον γεννήτορα πίνακα G είτε από τον πίνακα ελέγχου ισοτιμίας H. Γενικά, ένας πίνακας θεωρείται αραιός (sparse) όταν λιγότερα από τα μισά στοιχεία του είναι μη μηδενικά. Οι κώδικες LDPC παρουσιάζουν πολύ καλή απόδοση όσον αφορά το Bit Error rate, συγκριτικά με άλλους κώδικες, εκτελώντας κατά τη διαδικασία αποκωδικοποίησης επαναληπτικούς αλγορίθμους, σχετικά εύκολους στην υλοποίησή 13

24 τους. Έχει αποδειχθεί πως όσο μεγαλύτερο είναι το μήκος Ν ενός κώδικα LDPC, το μήκος δηλαδή μίας κωδικής λέξης, τόσο καλύτερες επιδόσεις σημειώνονται, και αυτό συμβαίνει ακόμα πιο έντονα για κώδικες που κατασκευάζονται με τυχαίο τρόπο. Η διαδικασία αποκωδικοποίησης μπορεί εύκολα να παραλληλοποιηθεί. Από την άλλη πλευρά, οι κώδικες αυτοί παρουσιάζουν υψηλή υπολογιστική πολυπλοκότητα, γεγονός που τους άφησε στο περιθώριο αναξιοποίητους για αρκετά μεγάλο χρονικό διάστημα, πάνω από 30 χρόνια, αφού η παλαιότερη τεχνολογία δεν μπορούσε να υποστηρίξει την υλοποίηση των σχετικών αποκωδικοποιητών. Η συνεχής εξέλιξη, όμως, των επιστημονικών γνώσεων και μεθόδων πλέον καθιστά εφικτή την πρακτική εφαρμογή των κωδίκων LDPC. Μεταξύ των πλεονεκτημάτων τους βρίσκονται και οι πολύ καλές ιδιότητες σχετικά με τις Hamming αποστάσεις μεταξύ των κωδικών λέξεων. Ο Gallager έδειξε πως για τυχαίους κώδικες LDPC, η ελάχιστη απόσταση d min αυξάνεται καθώς αυξάνεται το μήκος του κώδικα Ν, με την προϋπόθεση ότι ο αριθμός των άσων στις στήλες και τις γραμμές του πίνακα ελέγχου ισοτιμίας διατηρείται σταθερός. Με λίγα λόγια, όσο πιο αραιός γίνεται ο πίνακας H τόσο αυξάνεται η παράμετρος d min και τόσο καλύτερος γίνεται ο κώδικας. Το γεγονός αυτό, όμως, σε συνδυασμό με την επαναληπτική διαδικασία αποκωδικοποίησης που θα αναλυθεί σε επόμενη παράγραφο, αποτελεί ταυτόχρονα μειονέκτημα των κωδίκων LDPC, εφόσον προκύπτουν θέματα καθυστέρησης απόκρισης, κάτι το οποίο δεν είναι αποδεκτό από τις εφαρμογές της σημερινής εποχής. Η αύξηση του μεγέθους του πίνακα Η, προκειμένου να επιτευχθούν καλύτερες επιδόσεις, σημαίνει πως αυξάνεται ο αριθμός των άσων σε αυτόν (αλλά και πάλι παραμένει μικρός), κι έτσι γίνεται πιο δύσκολη η υλοποίηση του αποκωδικοποιητή. Επιπλέον, το ότι ο πίνακας H είναι αραιός δε σημαίνει πως το ίδιο συμβαίνει και με τον πίνακα G. Έτσι, ενώ η υλοποίηση του αντίστοιχου αποκωδικοποιητή είναι σχετικά εύκολη, η διαδικασία κωδικοποίησης των μηνυμάτων μπορεί να γίνει ιδιαίτερα πολύπλοκη. Ένα από τα βασικότερα μειονεκτήματα των κωδίκων LDPC είναι η παρουσία του error floor στα διαγράμματα BER, γεγονός που θα εξηγηθεί αναλυτικά στη συνέχεια Ο γράφος Tanner Ο γράφος Tanner [8] αντιπροσωπεύει ένα συγκεκριμένο κώδικα LDPC και περιγράφει γραφικά τον αντίστοιχο πίνακα ελέγχου ισοτιμίας Η (ΜxN). Αποτελείται από δύο συγκεκριμένες ομάδες κόμβων, τους Μ check κόμβους, οι οποίοι αντιστοιχούν στις γραμμές του πίνακα Η, ή αλλιώς στις εξισώσεις ελέγχου ισοτιμίας, και τους Ν variable κόμβους, οι οποίοι αντιστοιχούν στις στήλες του πίνακα Η, ή αλλιώς στα bits μίας κωδικής λέξης. 14

25 Η ύπαρξη ακμής στο γράφο που ενώνει έναν check κόμβο c m με έναν variable κόμβο v n καθορίζεται από την ύπαρξη άσου στην αντίστοιχη θέση του πίνακα Η (Η mn ) και υποδυκνύει ότι η αντίστοιχη μεταβλητή συμμετέχει στη συγκεκριμένη εξίσωση. Δεν μπορεί να υπάρξει ακμή στο γράφο που να συνδέει variable κόμβους μεταξύ τους ή check κόμβους μεταξύ τους, γι' αυτό και ο γράφος είναι διμερής. Ο βαθμός d v (n) ενός variable κόμβου (variable node degree) ισούται με τον αριθμό των άσων στην αντίστοιχη στήλη του πίνακα Η και παρομοίως, ο βαθμός d c (m) ενός check κόμβου (check node degree) ισούται με τον αριθμό των άσων στην αντίστοιχη γραμμή του πίνακα Η. Αν οι παράμετροι d v (n) και d c (m) είναι σταθερές για κάθε στήλη (1 n N ) και κάθε γραμμή (1 m M ) αντίστοιχα, τότε ο κώδικας LDPC ονομάζεται ομαλός (regular). Σε αντίθετη περίπτωση, ο κώδικας είναι μη ομαλός (irregular), όπως συμβαίνει στο παράδειγμα που απεικονίζεται παρακάτω. Γενικά, έχει δειχθεί πως οι irregular κώδικες παρουσιάζουν καλύτερες επιδόσεις από τους regular. Στον πίνακα Η ενός κώδικα LDPC, οποιεσδήποτε δύο στήλες του δε θα πρέπει να έχουν περισσότερες από μία γραμμές, όπου τα στοιχεία σε αυτές τις δύο στήλες να είναι μη μηδενικά. Αυτή είναι μία σημαντική ιδιότητα και σημαίνει πως δε θα πρέπει να υπάρχουν κύκλοι μήκους 4 στον αντίστοιχο γράφο Tanner. Κάτι τέτοιο δεν ισχύει για τον κώδικα που περιγράφεται από τον πίνακα ελέγχου ισοτιμίας του παραδείγματος: H H H Irregular κώδικας και ο αντίστοιχος γράφος Tanner, με 3 κύκλους μήκους 4. Το μήκος του μικρότερου κύκλου στο γράφο Tanner ενός κώδικα LDPC ονομάζεται girth και θα πρέπει να είναι 6. Κατά τη σχεδίαση κωδίκων LDPC, είναι επιθυμητό η τιμή του girth να είναι όσο το δυνατόν μεγαλύτερη. Οι κύκλοι σε έναν κώδικα, και κυρίως οι μικρού μήκους, μειώνουν την απόδοση του αποκωδικοποιητή και πολλές φορές τον εμποδίζουν να συγκλίνει σε έγκυρη κωδική λέξη, διότι 15

26 επηρεάζουν την ανεξαρτησία των δεδομένων που ανταλλάσσονται μεταξύ των variable και check κόμβων κατά την επαναληπτική αποκωδικοποίηση. Γι' αυτό το λόγο είναι επιθυμητοί κώδικες με μεγάλο girth [9] Error Floor - Trapping Sets Αναφέρθηκε παραπάνω πως βασικό μειονέκτημα των κωδίκων LDPC είναι η εμφάνιση του Error Floor στα διαγράμματα BER, το οποίο σημαίνει πως παρουσιάζεται μία αλλαγή στην κλίση της καμπύλης BER προς E b /N 0, σε επίπεδα αρκετά χαμηλού θορύβου, όπως φαίνεται στο σχήμα: Οι περιοχές Waterfall και Error Floor σε ένα διάγραμμα BER. Στα διαγράμματα BER, τα οποία εξηγήθηκε πως είναι καμπύλες που περιγράφουν την απόδοση ενός αποκωδικοποιητή, διακρίνονται λοιπόν, δύο περιοχές: α) η περιοχή "waterfall" (μπλε τμήμα) και β) η περιοχή "error floor" (κόκκινο τμήμα). Η περιοχή error floor [10] [11] σε ένα τέτοιο διάγραμμα είναι πιθανό να μην παρατηρηθεί σε περιπτώσεις όπου η εξομοίωση (συνήθως σε software) δεν μπορεί να φτάσει σε πολύ χαμηλά επίπεδα θορύβου. Μέσω όμως ταχύτατων εξομοιώσεων σε hardware, μπορεί πλέον να εμφανιστεί και αυτή η περιοχή. Το error floor ουσιαστικά σημαίνει πως όσο κι αν μειωθεί ο θόρυβος ή ενισχυθεί το χρήσιμο σήμα, από ένα σημείο και μετά δεν παρατηρείται σημαντική βελτίωση στην απόδοση ενός συστήματος. Έχουν γίνει πολλές προσπάθειες ώστε να βρεθεί η αιτία που προκαλεί την εμφάνισή του σε ένα διάγραμμα BER. Η πρόβλεψη της συμπεριφοράς και της μορφής του, οι οποίες εξαρτώνται από πολλούς παράγοντες, όπως ο κβαντισμός των δεδομένων που επεξεργάζεται ο αποκωδικοποιητής και η ελάχιστη απόσταση d min του κάθε κώδικα, αποτελεί επίσης ένα σημαντικό θέμα ερευνών [10] [12]. Επιπλέον σημαντικές παράμετροι είναι το μοντέλο καναλιού και ο αλγόριθμος αποκωδικοποίησης που χρησιμοποιούνται κατά την εξομοίωση. Η υποβάθμιση, όμως, των επιδόσεων ενός κώδικα LDPC φαίνεται να προκύπτει από την ίδια τη μορφή του κώδικα, η οποία, όπως εξηγήθηκε, περιγράφεται από το γράφο Tanner. Συγκεκριμένες δομές μέσα σε αυτόν το γράφο είναι το κύριο αίτιο της εμφάνισης του error floor στα διαγράμματα BER. Οι δομές αυτές, όταν πρόκειται για το μοντέλο καναλιού AWGN, ονομάζονται Trapping Sets. (Για άλλα μοντέλα καναλιού, η 16

27 ονομασία των δομών αλλάζει, πχ. για το BEC μοντέλο, χρησιμοποιείται ο όρος Stopping Sets.) Σε περίπτωση αποτυχίας του αποκωδικοποιητή, παραμένουν λανθασμένα όλα ή κάποια από τα bits που αντιστοιχούν στους variable κόμβους ενός trapping set. Ένα (a,b) Trapping Set [10] [11] [13] είναι μία δομή στο γράφο Tanner, η οποία αποτελείται από έναν σχετικά μικρό αριθμό (a) variable κόμβων, τέτοιοι ώστε ο υπογράφος που αυτοί εξάγουν να περιέχει έναν μικρό αριθμό (b) από check κόμβους με βαθμό μονό αριθμό (odd degree check nodes), καθώς και έναν αυθαίρετο αριθμό από check κόμβους με βαθμό ζυγό αριθμό (even degree check nodes). Ένα trapping set θα πρέπει να περιέχει τουλάχιστον έναν κύκλο ενώ μπορεί να δημιουργούνται σε αυτό και ουρές, δηλαδή variable κόμβοι οι οποίοι δε συμμετέχουν σε κύκλο (όπως στο 4 ο παράδειγμα που ακολουθεί): (4,4) trapping set (5,3) trapping set (4,2) trapping set (7,2) trapping set Μία λύση στο πρόβλημα εμφάνισης του error floor θα ήταν η ελαχιστοποίηση του αριθμού των trapping sets κατά την κατασκευή των κωδίκων LDPC. Η πλήρης εξάλειψή τους όμως είναι αδύνατη, λόγω της ύπαρξης κύκλων στον γράφο Tanner [14]. Εξαλείφοντας τουλάχιστον τους κύκλους μικρού μήκους από το γράφο ενός κώδικα, μειώνεται ο αριθμός των trapping sets και αναμένονται καλύτερες επιδόσεις στην περιοχή του error floor [15]. Γενικά, έχουν προταθεί πολλές στρατηγικές [11] [16] [17], οι οποίες βασίζονται στον τρόπο σχεδίασης του αποκωδικοποιητή, ώστε να μην εμφανίζεται ή έστω να μην είναι τόσο έντονο το φαινόμενο του error floor. Πολλές από αυτές τις μεθόδους, όμως, όπως επίσης και η θεωρητική εκτίμηση του error floor, απαιτούν γνώση όλων των trapping sets του κώδικα [12] [13] Αλγόριθμοι message passing Ο όρος "επαναληπτική αποκωδικοποίηση" περιγράφει αυτούς τους αλγορίθμους οι οποίοι σε κάθε τους βήμα-επανάληψη μεταβάλλουν την εσωτερική 17

28 κατάσταση του αποκωδικοποιητή, προσπαθώντας, έχοντας ως αρχική είσοδο την έξοδο του καναλιού, να εξάγουν μία έγκυρη κωδική λέξη. Διακρίνονται δύο βασικές κατηγορίες επαναληπτικών αλγορίθμων: α) οι bit flipping και β) οι message passing. Οι αλγόριθμοι της πρώτης κατηγορίας είναι αρκετά πιο απλοί σε σχέση με αυτούς της δεύτερης, αλλά ταυτόχρονα όχι το ίδιο αποδοτικοί. Βασίζονται σε hard αποφάσεις, το οποίο σημαίνει με λίγα λόγια πως ο αποκωδικοποιητής δεν εκμεταλλεύεται όλη την προερχόμενη πληροφορία r από το κανάλι ( r 1 noise ), διότι την αντιστοιχίζει αμέσως σε τιμές bits. Κατά την αποκωδικοποίηση, αν κάποιες από τις εξισώσεις ελέγχου ισοτιμίας, στις οποίες συμμετέχει ένας συγκεκριμένος variable κόμβος, δεν ικανοποιούνται και ο αριθμός αυτών των εξισώσεων είναι επαρκής (μεγαλύτερος δηλαδή από κάποια προκαθορισμένη τιμή), τότε το αντίστοιχο bit θεωρείται λανθασμένο και αντιστρέφεται η τιμή του ώστε να συνεχιστεί η αποκωδικοποίηση. Αντιθέτως, οι αλγόριθμοι message passing βασίζονται σε soft αποφάσεις, δηλαδή ο αποκωδικοποιητής διαχειρίζεται την έξοδο του καναλιού όσο πιο αποτελεσματικά γίνεται, λαμβάνοντας υπ' όψιν του όλη την πληροφορία που φτάνει σε αυτόν από το κανάλι, παρουσιάζοντας έτσι καλύτερες επιδόσεις. Ο αποκωδικοποιητής δεν ασχολείται με την ίδια την τιμή ενός bit αλλά με την πιθανότητα αυτό το bit να έχει μία συγκεκριμένη τιμή. Η πιθανότητα αυτή προκύπτει αρχικά από την έξοδο r του καναλιού και στην πορεία διαμορφώνεται, με βάση τον εκάστοτε αλγόριθμο. Σύμφωνα με τους αλγορίθμους message passing, μηνύματα ανταλλάσσονται μεταξύ των variable και check κόμβων ενός γράφου Tanner, με σκοπό την εύρεση της σωστής μεταδιδόμενης κωδικής λέξης, χρησιμοποιώντας ως αρχικά δεδομένα τις N τιμές LLR = 2. r/σ 2 (εφόσον E c =1). Η παρουσία κύκλων στο γράφο Tanner σημαίνει πως υπάρχει εξάρτηση των ανταλλασσόμενων δεδομένων. Τα στάδια που ακολουθούνται συνοπτικά είναι: Αρχικά, οι Ν variable κόμβοι στέλνουν τις τιμές LLR στους συνδεδεμένους check κόμβους και γίνεται ο πρώτος έλεγχος σχετικά με το αν έχει ληφθεί έγκυρη κωδική λέξη, αντιστοιχίζοντας τις τιμές LLR σε τιμές bits. Έπειτα ξεκινάει η επαναληπτική διαδικασία αποκωδικοποίησης. Στο 1 ο βήμα (horizontal scan - check node update), οι check κόμβοι, λαμβάνοντας υπ' όψιν τους τα μηνύματα που έλαβαν προηγουμένως από τους variable κόμβους, υπολογίζουν και στέλνουν πίσω σε αυτούς νέα μηνύματα, τα οποία συμβολίζονται με R mn. Στο 2 ο βήμα (vertical scan - variable node update), οι variable κόμβοι, λαμβάνοντας υπ' όψιν τους τα μηνύματα που έλαβαν προηγουμένως από τους check κόμβους αλλά και την αρχική πληροφορία του καναλιού (LLR), υπολογίζουν και στέλνουν πίσω σε αυτούς νέα μηνύματα, τα οποία συμβολίζονται με Q nm. 18

29 Υπολογίζονται τα τελικά μηνύματα απόφασης Q n για κάθε variable κόμβο, με βάση τα μηνύματα R mn και τις τιμές LLR. Τα μηνύματα Q n αντιστοιχίζονται σε τιμές bits και πραγματοποιείται και πάλι έλεγχος για την εγκυρότητα της κωδικής λέξης που προέκυψε. Αν πράγματι έχει βρεθεί έγκυρη λέξη, η αποκωδικοποίηση σταματά, αλλιώς επαναλαμβάνονται τα βήματα 1-2, μέχρι να βρεθεί έγκυρη λέξη ή μέχρι να εκτελεστεί επαρκής αριθμός επαναλήψεων. Ο έλεγχος για την εγκυρότητα μίας λέξης σημαίνει πως ερευνάται αν όλες οι εξισώσεις ελέγχου ισοτιμίας ικανοποιούνται ή, με άλλα λόγια, αν όλοι οι check κόμβοι είναι ικανοποιημένοι. Ένας check κόμβος θεωρείται ικανοποιημένος όταν στους συνδεδεμένους variable κόμβους του προκύπτει ζυγός αριθμός μηνυμάτων απόφασης αρνητικού προσήμου (ή αλλιώς, ζυγός αριθμός άσων στα bits που αντιστοιχούν στους variable κόμβους του). Κατά τη διάρκεια μιας επαναληπτικής αποκωδικοποίησης, τα μηνύματα που αποστέλλονται από τους ικανοποιημένους check κόμβους τείνουν να ενισχύουν τις τρέχουσες αποφάσεις του αποκωδικοποιητή, ενώ τα μηνύματα των ανικανοποίητων check κόμβων προσπαθούν να αλλάξουν κάποιες από αυτές τις αποφάσεις. Εάν τα λανθασμένα bits μιας κωδικής λέξης αντιστοιχούν στους variable κόμβους ενός (a,b) trapping set, τα μηνύματα των λίγων (b) μη ικανοποιημένων check κόμβων συνήθως δεν επαρκούν ώστε να διορθώσουν τα λανθασμένα bits (a), κι έτσι ο αποκωδικοποιητής δεν μπορεί να εξάγει τη σωστή κωδική λέξη, ακόμα κι αν εκτελεστούν πολλές επαναλήψεις [11]. Όσο πιο μικρός είναι ο αριθμός (b) των check κόμβων μονού βαθμού σε ένα trapping set, τόσο πιο μικρή είναι και η πιθανότητα ο αποκωδικοποιητής να απεμπλακεί από το trapping set. Ένα ακραίο παράδειγμα θα ήταν ένα trapping set με κανένα check κόμβο μονού βαθμού. Σε μια τέτοια περίπτωση, όλοι οι check κόμβοι θα ήταν ικανοποιημένοι, ο αποκωδικοποιητής θα συνέκλινε σε μία έγκυρη κωδική λέξη, αλλά όχι σε αυτήν που μεταδόθηκε, και θα συνέβαινε ένα μη ανιχνεύσιμο σφάλμα τύπου ΙΙΙ [14] Επαναληπτική αποκωδικοποίηση δύο φάσεων (two-phase flooding decoding) Στο σημείο αυτό παρουσιάζονται οι 4 αλγόριθμοι αποκωδικοποίησης message passing [18] [19] [20] που χρησιμοποιήθηκαν στα πλαίσια της συγκεκριμένης εργασίας και διαφέρουν ο ένας από τον άλλο μόνο στο στάδιο υπολογισμού των μηνυμάτων R mn. Ο αλγόριθμος log Sum-Product, ή αλλιώς belief propagation, είναι ο πιο αποτελεσματικός αλγόριθμος αποκωδικοποίησης κωδίκων LDPC. Επειδή, όμως, κατά το στάδιο υπολογισμού των R mn μηνυμάτων χρησιμοποιεί τη συνάρτηση Φ(x), η οποία 19

30 είναι ιδιαίτερα απαιτητική, όσον αφορά την υλοποίησή της, πολλές φορές η αποκωδικοποίηση πραγματοποιείται χρησιμοποιώντας τον αλγόριθμο Min-Sum, ο οποίος αποτελεί μια πολύ καλή προσέγγιση του log Sum-Product. Η απόδοση του αλγορίθμου Min-Sum δεν είναι τόσο καλή όσο του log Sum-Product, απαιτεί όμως πολύ πιο απλό hardware. Το ίδιο ισχύει και για τους αλγορίθμους normalized Min-Sum και offset Min-Sum, οι οποίοι είναι παραλλαγές του Min-Sum. Και οι τρεις αυτοί αλγόριθμοι χρησιμοποιούνται σε πολλές εφαρμογές, λόγω της απλότητας των πράξεων και κατά συνέπεια της ευκολότερης υλοποίησής τους τόσο σε hardware όσο και σε software. N(m): το σύνολο των variable κόμβων που συμμετέχουν στην m εξίσωση ελέγχου. N(m)\n: το σύνολο των variable κόμβων που συμμετέχουν στην m εξίσωση ελέγχου, εκτός από τον variable κόμβο n. M(n): το σύνολο των check κόμβων στους οποίους συνδέεται ο variable κόμβος n. M(n)\m: το σύνολο των check κόμβων στους οποίους συνδέεται ο variable κόμβος n, εκτός από τον check κόμβο m. 2r 1 n N : LLR n 2 σ Αρχικοποίηση 1 n N, m Mn : Qnm LLRn Έλεγχος Ανανέωση check κόμβων Ανανέωση variable κόμβων 1 m M, n Nm : 1 m M, n Nm : Rmn 0 log Sum-Product Min-Sum 1 n N : Qn LLRn R m n mm n Q 0 c' ' 0' n Q 0 c' ' 1' n? T c' H 0 x Φx lntanh 2 Rmn sign Q n m Φ ΦQn m n Nm\ n n Nm\ n R mn sign Q n Nm n n m min Q \ n Nm\ n n m normalized R Min-Sum mn sign Q n Nm n n m min Q n Nm n n m a \ \ offset R mn sign Q n m max min Q nm b, 0 Min-Sum nn m\ n nn m\ n 1 n N, m Mn : Q nm LLR n R mn mm n\ m Έλεγχος n n Αλγόριθμοι Message Passing δύο φάσεων. 20

31 Επαναληπτική αποκωδικοποίηση επιπέδων (layered decoding) Εκτός από την απλή διαδικασία αποκωδικοποίησης δύο φάσεων, στα συστήματα εφαρμόζεται και η αποκωδικοποίηση επιπέδων, χρησιμοποιώντας τους ίδιους αλγορίθμους message passing, που μόλις περιγράφηκαν, με μία μικρή διαφοροποίηση στη σειρά εκτέλεσης των εντολών [21] [22]. Με τη μέθοδο αποκωδικοποίησης σε επίπεδα, σημειώνεται βελτίωση των επιδόσεων ενός συστήματος καθώς και επιτάχυνση της ταχύτητας σύγκλισης σε έγκυρη κωδική λέξη, γεγονός που απορρέει από την πιο συχνή ανανέωση των Q nm μηνυμάτων. Γενικά, απαιτούνται λιγότερες επαναλήψεις, με το μειονέκτημα όμως αυτές να είναι αρκετά πιο περίπλοκες, ενώ έχει αποδειχθεί πως υπάρχουν σημαντικά πλεονεκτήματα, όσον αφορά την υλοποίηση ενός αποκωδικοποιητή επιπέδων, όπως η λιγότερη απαιτούμενη μνήμη. Ένας αλγόριθμος αποκωδικοποίησης επιπέδων εφαρμόζεται αποτελεσματικά στους Quasi Cyclic κώδικες LDPC. Ο πίνακας ελέγχου ισοτιμίας ενός κώδικα QC-LDPC μπορεί να αναπαρασταθεί ως μία συστοιχία τετραγωνικών υποπινάκων μεγέθους ZxZ. Ένας τέτοιος υποπίνακας μπορεί να είναι είτε ο μηδενικός είτε ο μοναδιαίος, έχοντας τα στοιχεία του κυκλικά ολισθημένα προς τα δεξιά κατά έναν τυχαίο αριθμό. (Λεπτομέρειες σχετικά με τη δομή του πίνακα Η που χρησιμοποιήθηκε για τους σκοπούς της εργασίας δίνονται σε επόμενο κεφάλαιο.) Ο πίνακας Η ενός κώδικα QC-LDPC μπορεί να διαιρεθεί νοητά σε οριζόντια επίπεδα, ή αλλιώς στρώματα (layers), με το καθένα να αποτελείται από ένα σταθερό αριθμό γραμμών. Σε κάθε επίπεδο, το βάρος κάθε στήλης είναι το πολύ 1, δηλαδή κάθε στήλη περιέχει το πολύ έναν άσο. Αυτό σημαίνει πως κάθε variable κόμβος είναι συνδεδεμένος το πολύ με έναν check κόμβο σε κάθε επίπεδο, γεγονός που απλοποιεί πολύ το σχεδιασμό του αποκωδικοποιητή. H Πίνακας Η ενός κώδικα QC-LDPC (υποπίνακες 3x3), χωρισμένος σε 4 οριζόντια layers. Σύμφωνα με την ιδέα της αποκωδικοποίησης επιπέδων, κάθε check κόμβος θα πρέπει να υπολογίζει τα μηνύματα που θα στείλει λαμβάνοντας υπ' όψιν του ανανεωμένους variable κόμβους. Αν, λοιπόν, το βάρος μίας στήλης σε ένα επίπεδο 21

32 είναι μεγαλύτερο του 1, αν πχ. ήταν 2, τότε κάθε variable κόμβος θα έστελνε από 1 μήνυμα στους 2 check κόμβους του στο ίδιο επίπεδο, και έτσι οι 2 check κόμβοι θα βασίζονταν στην ίδια κατάσταση του variable κόμβου. Με τον αλγόριθμο δύο φάσεων, παρόλο που είναι πολύ δύσκολο, η διαδικασία μπορεί να παραλληλοποιηθεί πλήρως, δηλαδή να χρησιμοποιηθούν N επεξεργαστές για τους variable κόμβους και M επεξεργαστές για τους check κόμβους. Με τη χρήση αλγορίθμων επιπέδων, όμως, οι check κόμβοι χαμηλότερων στρωμάτων απαιτούν μηνύματα από variable κόμβους, οι οποίοι πιο πριν χρησιμοποίησαν μηνύματα από check κόμβους υψηλότερων στρωμάτων. Υπάρχει, λοιπόν, εξάρτηση των δεδομένων και έτσι μόνο Ζ check επεξεργαστές μπορούν να λειτουργούν παράλληλα. N(m): το σύνολο των variable κόμβων που συμμετέχουν στην m εξίσωση ελέγχου. N(m)\n: το σύνολο των variable κόμβων που συμμετέχουν στην m εξίσωση ελέγχου, εκτός από τον variable κόμβο n. M(n): το σύνολο των check κόμβων στους οποίους συνδέεται ο variable κόμβος n. M(n)\m: το σύνολο των check κόμβων στους οποίους συνδέεται ο variable κόμβος n, εκτός από τον check κόμβο m. Αρχικοποίηση Έλεγχος 2r 1 n N : LLR n 2 σ 1 n N, m Mn : Qnm LLRn 1 m M, n Nm : Rmn 0 1 n N : Qn LLRn R m n mm n Q 0 c' ' 0' n Q 0 c' ' 1' n? T c' H 0 * * * * * * * * * * * * * * * * * * * Για κάθε layer i (1 i L ), μεγέθους : * * * * * * * * * * * * * * * * * * * Ανανέωση check κόμβων Ανανέωση variable κόμβων i 1 1 m i, n Nm : log Sum - Product Min-Sum x Φx lntanh 2 n n Rmn sign Q n m Φ ΦQn m n Nm\ n n Nm\ n R mn sign Q n Nm n n m min Q \ n Nm\ n n m normalized R Min-Sum mn sign Q n Nm n n m min Q n Nm n n m a \ \ offset Rmn sign Q n m max min Q nm b, 0 Min-Sum nn m\ n nn m\ n 1 n N, m Mn : Q nm LLR n R mn mm n\ m * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Έλεγχος Αλγόριθμοι Message Passing επιπέδων 22

33 1.4 Το αντικείμενο της εργασίας Στις παραγράφους αυτού του πρώτου κεφαλαίου, παρουσιάστηκαν λεπτομερώς βασικές θεωρητικές έννοιες, των οποίων η γνώση είναι απαραίτητη για την κατανόηση των επόμενων ενοτήτων. Περιγράφηκαν τα βασικά χαρακτηριστικά των γραμμικών block κωδίκων LDPC και έγινε η πρώτη σαφής αναφορά στις έννοιες "error floor" και "trapping set". Η εμφάνιση της περιοχής error floor στα διαγράμματα BER, γεγονός το οποίο αποτελεί βασικό μειονέκτημα των κωδίκων LDPC, σχετίζεται άμεσα με το μήκος λέξης των δεδομένων που επεξεργάζεται ο αποκωδικοποιητής, κυρίως όμως οφείλεται σε ομάδες check και variable κόμβων που συνθέτουν τα trapping sets. Στόχος της διπλωματικής εργασίας είναι να εξεταστεί σε βάθος ο μηχανισμός ενεργοποίησης των trapping sets, αναλύοντας τη διαδικασία αποκωδικοποίησης ορισμένων frames, υπό συνθήκες χαμηλού θορύβου. Επιπλέον, είναι πολύ χρήσιμο να μελετηθεί το είδος θορύβου που μπορεί να ενεργοποιήσει ένα συγκεκριμένο trapping set, με σκοπό την ανάπτυξη ενός θεωρητικού μοντέλου υπολογισμού της πιθανότητας εμφάνισης σφάλματος. Στα επόμενα κεφάλαια περιγράφονται όλες οι εξομοιώσεις και οι πειραματικές διαδικασίες, οι οποίες πραγματοποιήθηκαν κατά τη διάρκεια εκπόνησης της εργασίας. Τα αποτελέσματα που προέκυψαν από το κάθε στάδιο μελέτης σχολιάζονται διεξοδικά σε κάθε κεφάλαιο, ενώ στο τέλος της εργασίας παρατίθενται όλα τα συμπεράσματα περιληπτικά. Το κείμενο, πέραν του θεωρητικού τμήματος του πρώτου κεφαλαίου, αποτελείται από δύο βασικά μέρη, τα κεφάλαια 2 και 3: Το δεύτερο κεφάλαιο ασχολείται καθαρά με την ανάλυση της διαδικασίας αποκωδικοποίησης συγκεκριμένων frames, χρησιμοποιώντας αλγορίθμους message passing και κυρίως τον αλγόριθμο normalized Min-Sum. Πραγματοποιούνται εξομοιώσεις διπλής ακρίβειας, με σκοπό να συγκριθούν οι διάφοροι αλγόριθμοι μεταξύ τους, αλλά κυρίως με σκοπό να προσδιοριστούν σημαντικά χαρακτηριστικά των trapping sets, στα οποία παγιδεύεται ο αποκωδικοποιητής. Στο ίδιο κεφάλαιο, περιγράφονται οι ενέργειες που ακολουθούνται για να κατασκευαστεί ο πίνακας ελέγχου ισοτιμίας, που χρησιμοποιείται για τους σκοπούς της εργασίας, προκειμένου να γίνει κατανοητός ο λόγος για τον οποίο κάποια frames παγιδεύονται σε παρόμοιας μορφής trapping sets. Στη συνέχεια, πραγματοποιούνται εξομοιώσεις bit-true και αναλύεται η επίδραση του μήκους λέξης των δεδομένων, τα οποία επεξεργάζεται ο αποκωδικοποιητής, στο τελικό αποτέλεσμα της αποκωδικοποίησης. Τέλος, παρουσιάζονται τρεις παραλλαγές του αρχικού αυθεντικού αλγορίθμου normalized Min-Sum και επαναλαμβάνεται η αποκωδικοποίηση, σύμφωνα με τους νέους αλγορίθμους, με στόχο να αποκωδικοποιηθούν επιτυχώς περισσότερα frames. Σε αυτό το σημείο του κεφαλαίου, αναλύεται επαρκώς και με παραδείγματα ο ρόλος των check κόμβων. 23

34 Το τρίτο κεφάλαιο ασχολείται με την εφαρμογή διάφορων ειδών θορύβου σε κωδικές λέξεις, προκειμένου να προσδιοριστεί αυτός που θα οδηγήσει τον αποκωδικοποιητή σε αποτυχία και άρα στην ενεργοποίηση ενός trapping set. Αφού γίνει η επιλογή ενός frame που δεν αποκωδικοποιείται επιτυχώς με τον αλγόριθμο normalized Min-Sum, προσδιορίζεται το trapping set που αντιστοιχεί σε αυτό το frame και εξάγονται η κωδική του λέξη και ο θόρυβός του. Με βάση τα χαρακτηριστικά αυτά, σχεδιάζονται διαγράμματα BER και σχολιάζονται λεπτομερώς τα αποτελέσματα. Προσδιορίζεται, επίσης, η βαρύτητα που έχει κάθε variable κόμβος στο συγκεκριμένο trapping set. Στη συνέχεια, πραγματοποιούνται πειράματα "μηδενικού θορύβου", δηλαδή πειράματα όπου εφαρμόζεται μηδενικός θόρυβος σε όλα τα bits τυχαίων κωδικών λέξεων, εκτός από τα bits τα οποία συμμετέχουν σε κάποιο ορισμένο trapping set. Τέλος, εξετάζονται οι πειραματικές τιμές της διασποράς του θορύβου, ο οποίος αντιστοιχεί στους κόμβους των trapping sets που προσδιορίστηκαν στο κεφάλαιο 2, και με βάση τα συμπεράσματα της μελέτης, εκτελούνται νέα πειράματα και σχεδιάζονται καινούργια διαγράμματα BER. Αυτά τα διαγράμματα αποτέλεσαν την αφετηρία, ώστε να δημιουργηθεί ένα θεωρητικό μοντέλο, το οποίο μπορεί να υπολογίσει την πιθανότητα ενεργοποίησης ενός συγκεκριμένου trapping set, σε διάφορα επίπεδα χαμηλού θορύβου, ή ακόμα και να υπολογίσει θεωρητικά το BER. 24

35 Κεφάλαιο 2 Εξομοιώσεις επαναληπτικών αποκωδικοποιητών και προτεινόμενες τροποποιήσεις 2.1 Περιγραφή των υπό εξέταση frames Ο κώδικας που χρησιμοποιήθηκε για τις ανάγκες της παρούσας εργασίας, είναι ένας irregular κώδικας LDPC, με πίνακα ελέγχου ισοτιμίας Η διαστάσεων 504x2016, ο οποίος χωρίζεται σε 126 layers. Προκειμένου να αναλυθεί η διαδικασία αποκωδικοποίησης κωδικών λέξεων, χρησιμοποιώντας κυρίως τον αλγόριθμο normalized Min-Sum, μελετώνται ορισμένα frames, τα οποία είχαν καταγραφεί από σύστημα αποκωδικοποίησης υλοποιημένο σε hardware. Τα συγκεκριμένα frames είναι αυτά για τα οποία o αποκωδικοποιητής στο FPGA, απέτυχε να ανακατασκευάσει τη μεταδιδόμενη αρχική πληροφορία. Με τον όρο frame εννοείται όλη η πληροφορία που παρέχεται στον αποκωδικοποιητή από το κανάλι, δηλαδή οι τιμές των LLR όλων των variable κόμβων, που αντιστοιχούν στα bits μίας κωδικής λέξης. Με άλλα λόγια, ένα frame είναι μία αλλοιωμένη κωδική λέξη εξαιτίας του θορύβου που προστίθεται σε αυτήν από το κανάλι κατά τη μετάδοσή της. Μιλώντας για αποτυχία του αποκωδικοποιητή, μπορεί να εννοείται ένας από τους τρεις τύπους σφαλμάτων που επεξηγήθηκαν στο προηγούμενο κεφάλαιο. Το σφάλμα τύπου ΙΙΙ, δηλαδή ο αποκωδικοποιητής να είχε συγκλίνει σε έγκυρη κωδική λέξη, αλλά όχι στη μεταδιδόμενη, δεν παρουσιάστηκε σε κανένα από τα frames που συλλέχθηκαν κατά την εκτέλεση του πειράματος στο FPGA. Η καταγραφή τους από το σύστημα του hardware έγινε διότι απλά ο αποκωδικοποιητής δεν κατάφερε να συγκλίνει σε έγκυρη κωδική λέξη. 25

36 2.1.1 Παράμετροι του πειράματος στο FPGA Συνολικά, από το πείραμα που είχε διεξαχθεί, συγκεντρώθηκαν 90 frames στην περιοχή του error floor, σε στάθμες θορύβου που κυμαίνονται από 3.5 έως 4.6 db. Για την αναπαράσταση των τιμών LLR του κάθε frame, δηλαδή της πληροφορίας εισόδου του αποκωδικοποιητή, χρησιμοποιήθηκαν 6 bits. Τα 84 από τα 90 frames χρησιμοποιούν 5 bits για την αναπαράσταση του ακέραιου μέρους των LLR τους και 1 bit για την αναπαράσταση του κλασματικού μέρους (format 5.1). Τα υπόλοιπα 6 frames χρησιμοποιούν 6 bits για το ακέραιο μέρος και κανένα bit για το κλασματικό (format 6.0). Εσωτερικά στο hardware, ο αποκωδικοποιητής περιείχε μονάδες οι οποίες αναλάμβαναν τον υπολογισμό των μηνυμάτων R mn, που αποστέλλονται από check σε variable κόμβους (check processors), καθώς και μονάδες υπολογισμού των μηνυμάτων Q nm, που αποστέλλονται από variable σε check κόμβους (variable processors). Η εσωτερική ακρίβεια αναπαράστασης των δεδομένων εξόδου αυτών των μονάδων φαίνεται στον επόμενο πίνακα: Αριθμός bits αναπαράστασης των LLR και των ενδιάμεσων μηνυμάτων (εσωτερική ακρίβεια) στον αποκωδικοποιητή του FPGA. Σχετικά με τους αλγορίθμους, στο FPGA υλοποιήθηκαν οι: normalized Min-Sum, με συντελεστή normalization a=0.75, και offset Min-Sum, με offset b=2. Κατά την αποκωδικοποίηση με τον αλγόριθμο normalized Min-Sum έγινε η καταγραφή των 79 από τα 90 frames, ενώ η καταγραφή των υπόλοιπων 11 frames έγινε κατά την αποκωδικοποίηση με τον αλγόριθμο offset Min-Sum. Εξαίρεση αποτελεί 1 μόνο frame από τα 11, για το οποίο το offset ήταν b=0.5. Οι λόγοι για τους οποίους συγκεντρώθηκαν τα 90 frames από το σύστημα του hardware επεξηγούνται αναλυτικά σε επόμενη παράγραφο. Πρέπει να αναφερθεί, επίσης, το κριτήριο τερματισμού των αλγορίθμων αποκωδικοποίησης που είχαν εκτελεστεί στο hardware, το οποίο ήταν το ίδιο και για τους δύο αλγορίθμους. Το κριτήριο αυτό έθετε ένα μέγιστο όριο στους επιτρεπόμενους ελέγχους σχετικά με τη σύγκλιση ή όχι σε έγκυρη κωδική λέξη. Ο μέγιστος αριθμός ελέγχων, λοιπόν, είχε οριστεί ίσος με 10. Όπως φαίνεται, όμως, από τη σειρά των εντολών στους αλγορίθμους, ο πρώτος έλεγχος σύγκλισης πραγματοποιείται πριν ξεκινήσουν οι επαναλήψεις υπολογισμού των ενδιάμεσων ανταλλασσόμενων μηνυμάτων και των τελικών, για κάθε επανάληψη, μηνυμάτων απόφασης. Έτσι, ενώ εκτελούνται το πολύ I max επαναλήψεις, ο μέγιστος αριθμός των ελέγχων σύγκλισης είναι I max +1 οπότε προκύπτει ότι το κριτήριο τερματισμού στο hardware ήταν οι 9 το πολύ επαναλήψεις. 26

37 Όλα τα παραπάνω, δηλαδή η στάθμη θορύβου, ο αριθμός των bits αναπαράστασης των δεδομένων, ο εκάστοτε αλγόριθμος και το όριο επιτρεπόμενων επαναλήψεων, αποτελούν τις παραμέτρους του πειράματος που είχε πραγματοποιηθεί στο FPGA Παρόμοια καταγεγραμμένα frames Όπως ειπώθηκε, το σύστημα είχε καταγράψει συνολικά 90 frames. Παρατηρήθηκε, όμως, ότι στην πραγματικότητα οι καταγεγραμμένες κωδικές λέξεις είναι 45. Υπήρχαν, δηλαδή, πολλές περιπτώσεις, κατά την εξομοίωση στο hardware, όπου παρήχθη ίδια κωδική λέξη με κάποια προηγούμενη, αλλά προστέθηκε σε αυτήν διαφορετικός θόρυβος κι έτσι προέκυψε και διαφορετικό frame. Επιπλέον, παρατηρήθηκε πως λίγα frames, τα οποία έχουν κοινή κωδική λέξη, έχουν και κοινό θόρυβο. Το γεγονός αυτό, όμως, δεν οδήγησε στη δημιουργία πανομοιότυπων frames, διότι το καθένα από αυτά δημιουργήθηκε για εξομοίωση αποκωδικοποίησης σε διαφορετική στάθμη θορύβου, κι έτσι, οι τιμές LLR αυτών διαφέρουν, έστω και ελάχιστα. Σε αυτό συνέβαλε και η κβαντοποίηση των τιμών, η αναπαράστασή τους δηλαδή με περιορισμένο αριθμό από bits. Αυτή η μικρή διαφορά στις τιμές των LLR συγκεκριμένων frames οδηγεί πολλές φορές τον αποκωδικοποιητή, όπως θα φανεί και στη συνέχεια, σε διαφορετική συμπεριφορά για το καθένα από αυτά. Στον επόμενο πίνακα, εκτός από τις παραμέτρους του πειράματος του hardware, φαίνεται η στάθμη θορύβου εξομοίωσης της αποκωδικοποίησης του κάθε frame και προσδιορίζονται με ίδια σύμβολα τα frames τα οποία έχουν κοινή κωδική λέξη, ενώ ακόμα διακρίνονται με ίδιο χρώμα τα frames τα οποία έχουν και παρόμοιο θόρυβο. Παράμετροι του πειράματος καταγραφής των 90 frames. Ίδια σύμβολα: frames με κοινή codeword. Ίδια χρωματιστά σύμβολα: frames με κοινή codeword και παρόμοιο θόρυβο. 27

38 Όπως φαίνεται κι από τον πίνακα, δύο frames τα οποία τυχαίνει να έχουν την ίδια κωδική λέξη αλλά διαφορετικό θόρυβο είναι τα 78 και 84. Τα frames 15 και 63, από την άλλη πλευρά, αποτελούν παράδειγμα της περίπτωσης αποστολής της ίδιας κωδικής λέξης και εισαγωγής του ίδιου θορύβου σε αυτές, σε διαφορετική όμως στάθμη. Παρακάτω φαίνονται, για τα δύο παραπάνω ζεύγη, το αρχικό κοινό τους σήμα [-1,+1] που μεταδόθηκε στο κανάλι, ο θόρυβος που προστέθηκε σε κάθε περίπτωση, και η τελική πληροφορία εισόδου (τιμές LLR) στον αποκωδικοποιητή. Μεταδιδόμενο σήμα, που αντιστοιχεί στους Μεταδιδόμενο σήμα, που αντιστοιχεί στους variable κόμβους της κοινής κωδικής λέξης variable κόμβους της κοινής κωδικής λέξης των frames 78 και 84. των frames 15 και 63. Ο θόρυβος των frames 78 και 84. Ο θόρυβος των frames 15 και 63. Τιμές LLR των frames 78 και 84. Τιμές LLR των frames 15 και

39 Φαίνεται καθαρά πως στην πρώτη περίπτωση (αριστερά) τα frames τελικά είναι τελείως διαφορετικά μεταξύ τους, ενώ στη δεύτερη περίπτωση (δεξιά) τα frames μοιάζουν σε μεγάλο βαθμό, αλλά και πάλι δεν είναι ακριβώς τα ίδια. Επιπλέον, παρατηρείται πως οι τιμές LLR του frame 15 είναι μικρότερες, κατά απόλυτη τιμή, από αυτές του frame 63, κι αυτό διότι το frame 15 εξομοιώθηκε υπό συνθήκες μεγαλύτερου θορύβου. 2.2 Διπλής ακρίβειας εξομοίωση αποκωδικοποίησης, σε περιβάλλον Matlab Σε περιβάλλον εξομοίωσης matlab, πραγματοποιήθηκε εκ νέου αποκωδικοποίηση και των 90 frames, αρχικά με όλους τους αλγορίθμους που περιγράφηκαν στο προηγούμενο κεφάλαιο, ορίζοντας ως μέγιστη επιτρεπόμενη επανάληψη την 100 η, και έπειτα μόνο με τον αλγόριθμο normalized Min-Sum, επιτρέποντας την εκτέλεση 1000 επαναλήψεων. Οι υπολογισμοί των ενδιάμεσων μηνυμάτων και των μηνυμάτων απόφασης έγιναν με διπλή ακρίβεια Αποκωδικοποίηση σε επίπεδα, με τους 4 αλγορίθμους message passing Στον πίνακα Α.1 του παραρτήματος φαίνεται, για κάθε frame και κάθε αλγόριθμο, ο αριθμός των απαιτούμενων επαναλήψεων μέχρι τη σύγκλιση σε έγκυρη κωδική λέξη. Με κόκκινο χρώμα φαίνονται οι περιπτώσεις στις οποίες η αποκωδικοποίηση απέτυχε, ενώ με έντονο πράσινο είναι οι περιπτώσεις όπου η σύγκλιση συνέβη μέσα στις 20 πρώτες επαναλήψεις. Όπως κατά την αποκωδικοποίηση στο hardware, έτσι κι εδώ, δεν υπάρχει περίπτωση σύγκλισης σε έγκυρη μεν, τη μη μεταδιδόμενη δε κωδική λέξη (δηλαδή σφάλμα τύπου ΙΙΙ). Με μια πρώτη ματιά, παρατηρούνται δύο ακραίες περιπτώσεις: υπάρχουν frames, όπως το 18, τα οποία συγκλίνουν πολύ εύκολα (στις πρώτες 15 επαναλήψεις) με όλους τους αλγορίθμους, και frames τα οποία δε συγκλίνουν με κανέναν αλγόριθμο, όπως το 67, ή έστω πολύ δύσκολα με κάποιον αλγόριθμο, όπως το 34. Εννοείται πως τα μηνύματα, που προκύπτουν κάθε φορά από τον εκάστοτε αλγόριθμο, είναι αυτά που καθορίζουν το αποτέλεσμα. Ενδιαφέρον επίσης έχει το γεγονός ότι ζεύγη από frames τα οποία έχουν ίδια κωδική λέξη και παρόμοιο θόρυβο, σχεδόν ίδιες δηλαδή τιμές LLR, παρουσιάζουν αρκετές φορές διαφορετική συμπεριφορά κατά την αποκωδικοποίησή τους με τον ίδιο αλγόριθμο, με αποτέλεσμα το ένα να συγκλίνει ενώ το άλλο όχι, ή το ένα να συγκλίνει πιο γρήγορα από το άλλο. Τέτοια ζευγάρια είναι, για παράδειγμα τα frames και

40 Ιστογράμματα των απαιτούμενων επαναλήψεων, για κάθε αλγόριθμο. Συγκρίνοντας, με τη βοήθεια των προηγούμενων ιστογραμμάτων, τον αριθμό των επαναλήψεων που απαιτούνται από τον κάθε αλγόριθμο ώστε να επιτευχθεί σύγκλιση, προκύπτει ότι ο normalized Min-Sum διαφέρει από τους υπολοίπους ως προς το εξής: για τα περισσότερα frames που αποκωδικοποιούνται σωστά, ο συγκεκριμένος αλγόριθμος έχει εκτελέσει το πολύ 20 επαναλήψεις. Αντίθετα, οι υπόλοιποι, και κυρίως οι log Sum-Product και Min-Sum, αποκωδικοποιούν λιγότερα frames μέχρι τις 20 επαναλήψεις και φαίνεται να απαιτούν μεγαλύτερο περιθώριο επαναλήψεων ώστε να συγκλίνουν. Συνολικά, ο normalized Min-Sum αποκωδικοποιεί 63 frames μέχρι και την 20 η επανάληψη, ο offset Min-Sum 61, ενώ οι log Sum-Product και Min-Sum αποκωδικοποιούν 43 και 38 frames αντίστοιχα. Ο αλγόριθμος normalized Min-Sum, λοιπόν, αν δεν καταφέρει να προσδιορίσει τη μεταδιδόμενη κωδική λέξη μέσα σε μικρό χρονικό διάστημα, το πιθανότερο είναι να αποτύχει, όσες επαναλήψεις κι αν εκτελεστούν. Από την άλλη πλευρά, όσο περισσότερες επαναλήψεις εκτελέσουν οι υπόλοιποι τρεις αλγόριθμοι, τόσο αυξάνεται η πιθανότητα να αποκωδικοποιηθούν σωστά τα frames. Ένα τέτοιο σενάριο όμως δεν είναι ρεαλιστικό, εφόσον η ταχύτητα αποκωδικοποίησης παίζει σημαντικό ρόλο σε σημερινές εφαρμογές. Αυτή η διαφοροποίηση του αλγορίθμου normalized Min-Sum οφείλεται στον τρόπο με τον οποίο μεταβάλλονται οι τιμές των ενδιάμεσων μηνυμάτων, και κατ' επέκταση των μηνυμάτων απόφασης, κατά τη διάρκεια εκτέλεσης των επαναλήψεων. 30

41 Παραδείγματα αποκωδικοποίησης Στο σημείο αυτό δίνονται παραδείγματα για κάθε αλγόριθμο, που αφορούν συγκεκριμένα frames, τα οποία απέτυχαν να αποκωδικοποιηθούν. Στα διαγράμματα που ακολουθούν απεικονίζονται οι τιμές μόνο των μηνυμάτων απόφασης, έχοντας υπ' όψιν ότι και τα ενδιάμεσα ανταλλασσόμενα μηνύματα ακολουθούν την ίδια μορφή. Στο κάθε διάγραμμα δίνεται έμφαση σε μηνύματα κάποιων ενδεικτικών variable κόμβων. Log Sum-Product Το frame 15 είναι ένα από τα frames τα οποία δεν αποκωδικοποιήθηκαν με τον αλγόριθμο log Sum-Product. Οι τιμές των μηνυμάτων αυτού μεταβάλλονται, κατά τη διάρκεια της αποκωδικοποίησης, με τον εξής τρόπο: κάθε λιγότερες από 10 επαναλήψεις, οι απόλυτες τιμές πολλών μηνυμάτων φτάνουν σε ακραία επίπεδα και έπειτα πέφτουν απότομα κοντά στο μηδέν. Μηνύματα απόφασης κατά την αποκωδικοποίηση με τον αλγόριθμο log Sum-Product. Η συμπεριφορά αυτή παρατηρήθηκε σε όλα τα frames που απέτυχαν να αποκωδικοποιηθούν με το συγκεκριμένο αλγόριθμο ή αποκωδικοποιήθηκαν δύσκολα, δηλαδή μετά από την εκτέλεση αρκετών επαναλήψεων. Min-Sum Για όλα εκείνα τα frames τα οποία δεν αποκωδικοποιήθηκαν με τον αλγόριθμο Min-Sum αλλά ούτε και με τον log Sum-Product, όπως είναι το frame 15, ο τρόπος μεταβολής των μηνυμάτων είναι ίδιος με αυτόν του αλγορίθμου log Sum-Product: απότομη αυξομείωση των απόλυτων τιμών. 31

42 Παρατηρήθηκε, όμως, πως τα μηνύματα των frames που δε συνέκλιναν με τον αλγόριθμο Min-Sum αλλά συνέκλιναν με τον log Sum-Product, όπως πχ. το frame 2, παρουσίασαν διαφορετική συμπεριφορά: η μεταβολή των τιμών τους είναι ακανόνιστη και μη περιοδική, όπως επίσης και οι απόλυτες τιμές δεν είναι ποτέ πολύ υψηλές. Παρατηρώντας συγκεκριμένα τυχαία μηνύματα, φαίνεται πως αυτά κυμαίνονται έντονα, πάντα γύρω από μία σταθερή τιμή. Μηνύματα απόφασης κατά την αποκωδικοποίηση με τον αλγόριθμο Min-Sum. Normalized Min-Sum (a=0.75) Τα μηνύματα όλων των frames, που δεν αποκωδικοποιήθηκαν σωστά με τον αλγόριθμο normalized Min-Sum, εμφάνισαν δύο παρόμοιες μεταξύ τους συμπεριφορές κατά την εκτέλεση των επαναλήψεων. Σε κάποιες περιπτώσεις, οι τιμές των μηνυμάτων από ένα σημείο και μετά δεν μεταβάλλονται πλέον καθόλου και παραμένουν σταθερές μέχρι το τέλος των επαναλήψεων (πχ. frame 28), ενώ σε άλλες περιπτώσεις, ταλαντεύονται συνέχεια γύρω από μία κεντρική τιμή (πχ. frame 31). Και στα δύο αυτά σενάρια πάντως, υπάρχουν πολλά μηνύματα τα οποία απότομα και μέσα στις πρώτες 10 με 15 επαναλήψεις φτάνουν σε ακραίες τιμές. Από τη στιγμή, λοιπόν, που τα μηνύματα δε μεταβάλλονται ή μεταβάλλονται ελάχιστα, ο αλγόριθμος normalized Min-Sum, αν δεν καταφέρει να εξάγει την σωστή κωδική λέξη άμεσα, έχει λίγες πιθανότητες επιτυχούς αποκωδικοποίησης, ακόμα και με εκτέλεση πολλών επαναλήψεων. 32

43 Μηνύματα απόφασης κατά την αποκωδικοποίηση με τον αλγόριθμο normalized Min-Sum. Offset Min-Sum (b=2) Στην περίπτωση του αλγορίθμου offset Min-Sum, η συμπεριφορά των μηνυμάτων του κάθε frame εξαρτάται κατά κάποιον τρόπο από τη στάθμη θορύβου στην οποία πραγματοποιήθηκε η εξομοίωση αποκωδικοποίησής του. Όσον αφορά, λοιπόν, τα frames των οποίων η εξομοίωση έγινε σε χαμηλά επίπεδα θορύβου και απέτυχαν (πχ. frame 41 στα 4 db), οι τιμές των ανταλλασσόμενων μηνυμάτων τους μεταβάλλονται με τον ίδιο τρόπο που μεταβάλλονται οι τιμές μηνυμάτων των frames που απέτυχαν κατά την αποκωδικοποίηση με τον αλγόριθμο log Sum-Product. Μηνύματα απόφασης κατά την αποκωδικοποίηση με τον αλγόριθμο offset Min-Sum. 33

44 Τα μηνύματα των frames, τα οποία αποκωδικοποιήθηκαν και απέτυχαν με τον αλγόριθμο offset Min-Sum σε υψηλότερα επίπεδα θορύβου, και συγκεκριμένα από 3.5 έως 3.8 db, εμφάνισαν διαφορετική συμπεριφορά όσο προχωρούσαν οι επαναλήψεις: οι τιμές παραμένουν σταθερές, όπως στο frame 7, ή παρουσιάζουν μια πολύ μικρή αυξομείωση, όπως στο frame 10. Σε κάθε περίπτωση, οι απόλυτες τιμές δεν φτάνουν σε υψηλά επίπεδα, ούτε απομακρύνονται πολύ από τις αρχικές τους τιμές. Μηνύματα απόφασης κατά την αποκωδικοποίηση με τον αλγόριθμο offset Min-Sum. Το φαινόμενο αυτό συμβαίνει διότι όσο μεγαλύτερος θόρυβος προστίθεται στο μεταδιδόμενο σήμα (δηλαδή μεγαλύτερη διασπορά και μικρότερος λόγος E b /N 0 ), τόσο μικρότερα είναι τα αρχικά LLR κατά απόλυτη τιμή. Έτσι, σύμφωνα με τον αλγόριθμο offset Min-Sum, κατά τον υπολογισμό των αποστελλόμενων μηνυμάτων από check σε variable κόμβους, προκύπτουν περισσότερα μηδενικά μηνύματα, γεγονός το οποίο εμφανίζεται σε ακόμη μεγαλύτερο βαθμό εάν η τιμή του offset είναι μεγάλη, όπως στη συγκεκριμένη περίπτωση, όπου b=2. Ας αναφερθεί εδώ πως κατά την αποκωδικοποίηση όλων των frames με b=0.7, οι τιμές των μηνυμάτων αυτών των frames που τελικά δε συνέκλιναν, δεν παραμένουν σταθερές αλλά αυξομειώνονται όπως στην περίπτωση του αλγορίθμου log Sum-Product Μοτίβα λαθών και τύποι σφαλμάτων Ο τρόπος με τον οποίο μεταβάλλονται τα ανταλλασσόμενα μηνύματα, κατά την εκτέλεση των επαναλήψεων του κάθε αλγορίθμου, έχει επίδραση στον αριθμό των συνολικών λανθασμένων bits σε κάθε επανάληψη. Όπως φαίνεται και από τα επόμενα γραφήματα, παρατηρήθηκαν τρία διαφορετικά μοτίβα λαθών: τυχαίο, σταθερό και ταλαντευόμενο [14]. 34

45 Αριθμός συνολικών λανθασμένων bits σε κάθε επανάληψη. Το τυχαίο μοτίβο λαθών (random / unstable error pattern) εμφανίστηκε σε όλα τα frames που δεν αποκωδικοποιήθηκαν με τον αλγόριθμο log Sum-Product ή έστω αποκωδικοποιήθηκαν μετά από την εκτέλεση 20 επαναλήψεων, έχοντας πάντα παρόμοια μορφή με αυτήν του frame 15 στο παραπάνω διάγραμμα. Αυτό το μοτίβο εμφανίστηκε, επίσης, στα frames που συνέκλιναν δύσκολα ή και καθόλου με τον αλγόριθμο Min-Sum, τις περισσότερες φορές με τη μορφή και πάλι του frame 15 ενώ πιο σπάνια με τη μορφή του frame 2. Σε όλες αυτές τις περιπτώσεις, εφόσον ο αποκωδικοποιητής, καθώς προχωρούν οι επαναλήψεις, καταλήγει συνεχώς σε διαφορετικές μεταξύ τους λύσεις, προκύπτει το σφάλμα τύπου ΙΙ. Τα frames που δεν αποκωδικοποιήθηκαν με τον αλγόριθμο normalized Min-Sum εμφάνισαν είτε το σταθερό είτε το ταλαντευόμενο μοτίβο λαθών (constant or oscillating error pattern), σύμφωνα με τα οποία, μετά από λίγες επαναλήψεις, το πλήθος των λανθασμένων bits παραμένει σταθερό και μικρό ή περιοδικά αυξομειώνεται ελαφρώς. Στην πρώτη περίπτωση (πχ. frame 28), ο αποκωδικοποιητής έχει πλέον παγιδευτεί σε ένα συγκεκριμένο trapping set, ενώ στη δεύτερη περίπτωση (πχ. frame 71), ταλαντεύεται μεταξύ trapping sets, τα οποία, τις περισσότερες φορές, αποτελούν υποσύνολα μεγαλύτερων trapping sets. Επειδή ο αποκωδικοποιητής τώρα, σε αντίθεση με τους αλγορίθμους log Sum-Product και Min-Sum, συγκλίνει αλλά σε μη έγκυρη κωδική λέξη, προκύπτει το σφάλμα τύπου Ι. 35

46 Τα frames που απέτυχαν κατά την αποκωδικοποίηση με τον αλγόριθμο offset Min-Sum, παρουσίασαν και τα τρία μοτίβα. Τα frames των χαμηλότερων επιπέδων θορύβου εμφάνισαν το τυχαίο μοτίβο λαθών, όπως το frame 41, ενώ τα frames των υψηλότερων επιπέδων θορύβου εμφάνισαν το σταθερό ή ταλαντευόμενο μοτίβο λαθών, όπως τα frames 7 και 10. Συγκρίνοντας τα σταθερά και ταλαντευόμενα μοτίβα των αλγορίθμων normalized και offset Min-Sum, παρατηρείται πως γενικά ο αριθμός των αρχικά λανθασμένων bits, πριν ξεκινήσει δηλαδή η αποκωδικοποίηση, δε μειώνεται αρκετά με τον offset Min-Sum. Αντιθέτως, με τον normalized Min-Sum τα λανθασμένα bits καταλήγουν πάντα να είναι τελικά λιγότερα των Αποκωδικοποίηση σε επίπεδα, με τον αλγόριθμο normalized Min-Sum Τα αποτελέσματα της αποκωδικοποίησης των 90 frames με τον αλγόριθμο normalized Min-Sum, εκτελώντας το πολύ 1000 επαναλήψεις, επιβεβαίωσαν αυτό που αναφέρθηκε σε προηγούμενη παράγραφο, δηλαδή το γεγονός ότι ο συγκεκριμένος αλγόριθμος, όσες επαναλήψεις κι αν εκτελέσει, παγιδεύεται σε μία συγκεκριμένη κατάσταση, αν δεν καταφέρει να συγκλίνει σε έγκυρη κωδική λέξη μέσα στις πρώτες επαναλήψεις Αριθμός λαθών πριν και μετά την αποκωδικοποίηση Ο αριθμός των λανθασμένων bits αρχικά, πριν ξεκινήσει δηλαδή η διαδικασία αποκωδικοποίησης, κυμαίνεται, για όλα τα frames, από 47 έως 108, με μέση τιμή τα 67 λάθη. Προκύπτει λοιπόν ότι το 3.3% περίπου των 2016 variable κόμβων είναι αρχικά λανθασμένοι. Τα frames που αποτυγχάνουν κατά την αποκωδικοποίηση δεν έχουν απαραίτητα μεγαλύτερο αριθμό αρχικών λαθών από τα frames που τελικά αποκωδικοποιούνται επιτυχώς. Αφού σταματήσει η εκτέλεση του αλγορίθμου, κανένα frame, από αυτά που δεν αποκωδικοποιήθηκαν σωστά, δεν έχει τελικά περισσότερα από 18 λάθη, όπως φαίνεται λεπτομερώς στον επόμενο πίνακα, με εξαίρεση μόνο το frame 40. Ο τελικός αριθμός λαθών αποτελεί ουσιαστικά την απόσταση Hamming μεταξύ της κωδικής λέξης εξόδου του κωδικοποιητή και της κωδικής λέξης εξόδου του αποκωδικοποιητή. Με έντονους χαρακτήρες στον πίνακα τονίζεται η περίπτωση του frame 28, κατά την αποκωδικοποίηση του οποίου, ο αλγόριθμος βρίσκει επιτυχώς τη μεταδιδόμενη κωδική λέξη, αναγκάζεται όμως να εκτελέσει και τις 1000 επαναλήψεις, διότι παραμένουν λανθασμένοι 5 variable κόμβοι ελέγχου ισοτιμίας. Κάτι παρόμοιο συνέβη και στα επιτυχώς αποκωδικοποιημένα frames 27 και 29, όπου τα bits πληροφορίας διορθώνονται αμέσως, ενώ τα bits ισοτιμίας καθυστερούν αρκετά. 36

47 Τελικός αριθμός λανθασμένων bits των frames που δεν αποκωδικοποιήθηκαν με τον αλγόριθμο normalized Min-Sum. Αριθμός λανθασμένων bits σε κάθε επανάληψη Τα trapping sets των ανεπιτυχώς αποκωδικοποιημένων frames Όπως αναφέρθηκε και σε προηγούμενη παράγραφο, κατά την αποκωδικοποίηση με τον αλγόριθμο normalized Min-Sum, κάποια frames παγιδεύονται σε σταθερού μεγέθους trapping sets, των οποίων η δομή δεν αλλάζει κατά την εκτέλεση των επαναλήψεων, ενώ άλλα frames ταλαντεύονται μεταξύ υποσυνόλων μεγαλύτερων trapping sets. Στις περιπτώσεις, λοιπόν, όπου η δομή των λανθασμένων variable κόμβων δεν είναι η ίδια σε κάθε επανάληψη, ως κύριο trapping set θεωρείται η ένωση όλων των μικρότερων trapping sets, πράγμα το οποίο συμβαίνει για παράδειγμα στο frame 52. Στον επόμενο πίνακα, παρουσιάζονται οι κόμβοι που συνθέτουν το trapping set στο οποίο παγιδεύεται το κάθε frame που απέτυχε κατά την αποκωδικοποίηση, καθώς και το μέγεθός του. Το μέγεθος δεν είναι πάντα ίδιο με τον τελικό αριθμό λανθασμένων bits, αλλά μπορεί να είναι και μεγαλύτερο, κι αυτό διότι, όπως ειπώθηκε, ένα trapping set είναι πιθανό να συνίσταται από αρκετά μικρότερα trapping sets. 37

48 Πίνακας Α: Τα Trapping Sets των frames που δεν αποκωδικοποιήθηκαν με τον αλγόριθμο normalized Min-Sum και υπολογισμούς διπλής ακρίβειας. Οι variable κόμβοι που συμμετέχουν στο trapping set του κάθε frame είναι αυτοί οι οποίοι εμφανίζονται λανθασμένοι σε τουλάχιστον 30 επαναλήψεις, από την 21 η επανάληψη μέχρι το τέλος. Επίσης, οι check κόμβοι ενός trapping set δεν είναι μόνο αυτοί που δεν ικανοποιούνται και δίνονται στον πίνακα. Αντιθέτως, συμμετέχουν αρκετοί, οι οποίοι εσφαλμένα δεν αντιλαμβάνονται την ύπαρξη σφάλματος στους γειτονικούς τους variable κόμβους και τελικά ικανοποιούνται. Στα διαγράμματα που ακολουθούν παρουσιάζονται για 3 ενδεικτικά frames οι λανθασμένοι variable κόμβοι κάθε επανάληψης, ενώ αμέσως μετά δίνονται τα αντίστοιχα trapping sets, όπου με πορτοκαλί χρώμα τονίζονται οι check κόμβοι των οποίων η εξίσωση ελέγχου ισοτιμίας δεν επαληθεύεται, αφού αυτοί συνδέονται με μονό αριθμό λανθασμένων variable κόμβων. 38

49 Λανθασμένοι variable κόμβοι κατά τη διάρκεια εκτέλεσης του αλγορίθμου normalized Min-Sum. Trapping Sets. Το trapping set του frame 73 παραμένει πάντα το ίδιο, ενώ το frame 52 είναι ένα από αυτά στα οποία variable κόμβοι μπορεί ξαφνικά, σε κάποια επανάληψη, να εμφανιστούν ή να χαθούν από το κύριο trapping set. Επιπλέον, σχετικά με το frame 68 (και άλλες παρόμοιες περιπτώσεις), παρόλο που δύο variable κόμβοι διορθώνονται στην 400 η περίπου επανάληψη, θεωρείται πως αυτοί συμμετέχουν στο trapping set, εφόσον προηγουμένως παραμένουν λανθασμένοι σε επαρκή αριθμό επαναλήψεων. 39

50 40 Τα trapping sets στα οποία ταλαντεύεται το frame 52.

51 Οι τιμές LLR στους κόμβους ενός trapping set Με την έκφραση "σωστή τιμή LLR" εννοείται η τιμή της οποίας το πρόσημο είναι ίδιο με το πρόσημο της ιδανικής τιμής LLR (noiseless), δηλαδή αυτήν που θα είχε ένας variable κόμβος αν δεν υπήρχε ο θόρυβος: LLR LLR real noiseless 2 signal s received 2 2 signal 2 s transmitted 2 2 s Αν τα πρόσημα των δύο παραπάνω τιμών δε συμφωνούν μεταξύ τους, τότε θεωρείται πως το bit του αντίστοιχου variable κόμβου αρχικά είναι λανθασμένο. Το γεγονός ότι ένας variable κόμβος συμμετέχει σε κάποιο trapping set δε σημαίνει απαραίτητα πως η τιμή LLR αυτού είναι λανθασμένη. Πληροφορίες σχετικά με τα LLR των variable κόμβων στα trapping sets. 41

52 Τιμές LLR των variable κόμβων στο trapping set του frame 52. Όπως φαίνεται κι από το παράδειγμα του frame 52 στο παραπάνω σχήμα, λανθασμένα LLR έχουν μόνο οι 8 από τους 16 κόμβους του trapping set. Από τον προηγούμενο πίνακα, προκύπτει ότι γενικά, στα μη επιτυχώς αποκωδικοποιημένα frames, το ποσοστό των κόμβων που έχουν λανθασμένη τιμή LLR, σε σχέση με το πλήθος των κόμβων στο trapping set, κυμαίνεται κοντά στο 55%. Περίπου, λοιπόν, οι μισοί κόμβοι σε κάθε trapping set είναι αρχικά σωστοί και εξαιτίας των υπολοίπων τελικά καταλήγουν λανθασμένοι. Και πάλι στο παράδειγμα του frame 52, παρατηρούνται 3 variable κόμβοι, από τους αρχικά 8 λανθασμένους στο trapping set, των οποίων, λόγω θορύβου, η απόλυτη πραγματική τιμή LLR δεν έχει απλά αλλοιωθεί σε σχέση με την τιμή χωρίς θόρυβο, αλλά έχει ξεπεράσει ακόμα και το μισό της αντίθετης ιδανικής τιμής LLR: LLR noiseless LLR real, sign LLRreal sign LLRnoiseless 2 Κατά μέσο όρο, το 21% του συνόλου των κόμβων ενός trapping set έχουν την παραπάνω ιδιότητα ή, αλλιώς, το 40% των κόμβων του trapping set με λανθασμένη τιμή LLR Συμπεριφορά αποκωδικοποίησης παρόμοιων frames Σε προηγούμενη παράγραφο, έγινε αναφορά σε frames των οποίων οι τιμές LLR μοιάζουν πολύ μεταξύ τους, διότι τυχαίνει να έχουν κοινή κωδική λέξη καθώς και παρόμοιο θόρυβο. Τα frames αυτά όμως ποτέ δεν είναι ακριβώς τα ίδια, λόγω κβαντοποίησης των τιμών και εξομοίωσης σε διαφορετικές στάθμες θορύβου. Έτσι, τις περισσότερες φορές προκύπτουν διαφορετικά αποτελέσματα κατά την αποκωδικοποίηση αυτών, όσον αφορά την επίτευξη ή όχι σύγκλισης, καθώς και την ταχύτητα αυτής, παρόλο που τα frames αυτά μοιάζουν πάρα πολύ μεταξύ τους. Κατά την αποκωδικοποίηση με τον αλγόριθμο normalized Min-Sum και εκτελώντας πράξεις με διπλή ακρίβεια, σημειώθηκαν 3 ζεύγη από frames με την 42

53 παραπάνω ιδιότητα (10-18, και 40-60), όπου για το καθένα από αυτά, το ένα frame αποκωδικοποιείται σωστά ενώ το άλλο δεν αποκωδικοποιείται. Εδώ, εξετάζεται λεπτομερώς το ζεύγος των frames 40-60, με το 40 να αποτυγχάνει και το 60 να επιτυγχάνει. Τιμές LLR των frames 40 και 60. Επειδή το frame 60 αποκωδικοποιήθηκε σε στάθμη θόρυβου 4.2 db, μικρότερη από αυτήν του frame 40 (4 db), οι σωστές τιμές LLR του πρώτου είναι μεγαλύτερες κατά απόλυτη τιμή από αυτές του δεύτερου, ενώ οι λανθασμένες τιμές είναι μικρότερες. Υπάρχουν φυσικά και variable κόμβοι στα δύο frames, οι οποίοι έχουν ακριβώς το ίδιο LLR, είτε αυτό είναι σωστό είτε λάθος. Γενικότερα, τα LLR του frame 60, αν δεν είναι ίδια, τότε είναι λίγο καλύτερα από αυτά του frame 40 και πιο κοντά στις ιδανικές τιμές. Αυτό απεικονίζεται πρακτικά στο προηγούμενο σχήμα, όπου φαίνονται οι τιμές LLR μόνο των variable κόμβων που συμμετέχουν στο trapping set του frame 40. (Eφόσον το frame 60 αποκωδικοποιείται επιτυχώς, δεν παγιδεύεται σε trapping set.) Τιμές LLR των frames 40 και

54 Το frame 60, πριν ξεκινήσει η αποκωδικοποίηση, έχει 62 αρχικά λάθη ενώ το frame 40 έχει επιπλέον 3 λάθη (variable κόμβοι 542, 1098 και 1436), μόνο και μόνο επειδή τυχαίνει οι τιμές LLR αυτών των κόμβων στο ένα frame να είναι μηδενικές ενώ στο άλλο αρνητικές. Αντικαθιστώντας τα LLR των συγκεκριμένων τριών κόμβων του frame 40 με τα αντίστοιχα LLR του frame 60, τα οποία είναι και σωστά, παρατηρείται και πάλι αποτυχημένη αποκωδικοποίηση του frame 40, κι έτσι φαίνεται πως η αιτία αποτυχίας κατά την αποκωδικοποίησή του δεν είναι αυτοί οι 3 επιπλέον λανθασμένοι κόμβοι. Αντικαθιστώντας τα LLR των 35 variable κόμβων που συνθέτουν το trapping set του frame 40 με τα αντίστοιχα LLR του frame 60, βελτιώνοντας δηλαδή στην πραγματικότητα μόνο 10 τιμές, εφόσον οι υπόλοιποι 25 κόμβοι των δύο frames έχουν ίδιες τιμές LLR, προκύπτει επιτυχής σύγκλιση και μάλιστα σε 6 επαναλήψεις. Αντικαθιστώντας, τώρα, τα LLR όλων των κόμβων του frame 40 εκτός από αυτούς του trapping set με τα αντίστοιχα LLR του frame 60, βελτιώνοντας δηλαδή 1323 τιμές, παρατηρείται αποτυχία σύγκλισης του frame 40 στη σωστή κωδική λέξη. Τα παραπάνω ισχύουν και για τα άλλα δύο ζευγάρια από frames που αναφέρθηκαν προηγουμένως. Ο μικρός αριθμός των επιπλέον αρχικά λανθασμένων κόμβων στο frame που δε συγκλίνει, δε φαίνεται να είναι υπεύθυνος για τη μη επιτυχή αποκωδικοποίησή του, εφόσον αντικαθιστώντας και, κατά συνέπεια, διορθώνοντας τις τιμές αυτών των λίγων LLR δε σημειώνεται επιτυχία. Αυτό που στην πραγματικότητα παίζει σημαντικότερο ρόλο είναι οι τιμές LLR στους κόμβους ενός trapping set, αφού, ακόμα κι αν όλες οι υπόλοιπες τιμές βελτιωθούν, σημειώνεται και πάλι αποτυχία, ενώ με την αντικατάσταση των πολύ λιγότερων τιμών LLR του trapping set σημειώνεται επιτυχία. Ενδιαφέρον παρουσιάζει το γεγονός ότι, για τις περιπτώσεις που μελετώνται εδώ, δεν είναι απαραίτητο να αλλάξουν οι τιμές όλων των variable κόμβων ενός trapping set, ώστε να επιτευχθεί σύγκλιση. Όπως και να έχει, οι πιο πολλές τιμές είναι ίδιες ανάμεσα στα δύο frames του κάθε ζεύγους. Ουσιαστικά αλλάζουν 10 κόμβοι στο frame 40, και μόνο 4 κόμβοι στα frames 10 και 15. Αρκεί και κάποιος συνδυασμός αυτών των κόμβων, ενώ πολλές φορές αρκούν ακόμα και δύο κόμβοι. Για παράδειγμα, στην περίπτωση του frame 40, η αντικατάσταση των LLR μόνο των κόμβων ή των οδηγεί σε επιτυχή αποκωδικοποίηση. Αξίζει να αναφερθεί πως το frame 40 αποκωδικοποιήθηκε όταν αντικαταστάθηκαν οι τιμές LLR των αρχικά λανθασμένων κόμβων με αυτές του frame 60, συγκεκριμένα οι 15 από τις 65 αρχικά λανθασμένες τιμές, με τις υπόλοιπες 50 να είναι έτσι κι αλλιώς ίδιες. Το αντίστοιχο όμως δε συνέβη στα άλλα δύο ζεύγη από frames. Πιθανόν, λοιπόν, να είναι πιο σημαντικές οι τιμές LLR ενός trapping set παρά οι τιμές των αρχικά λανθασμένων κόμβων. 44

55 Παγίδευση των frames σε ίδια ή παρόμοια trapping sets Μελετώντας προσεκτικά τον πίνακα A όπου παρουσιάζονται τα trapping sets στην παράγραφο , παρατηρείται πως κάποια από τα trapping sets όπου παγιδεύονται τα frames κατά την αποκωδικοποίησή τους με τον αλγόριθμο normalized Min-Sum, εκτελώντας πράξεις διπλής ακρίβειας, είναι ακριβώς τα ίδια ή μοιάζουν πολύ μεταξύ τους. Σε αυτό το σημείο, δίνονται περισσότερες λεπτομέρειες σχετικά με το συγκεκριμένο γεγονός. Ίδια trapping sets Τα trapping sets των frames είναι πανομοιότυπα (εκτός από ένα μόνο κόμβο), όπως και αυτά των frames 31-44, και Για τα τρία τελευταία ζεύγη, το γεγονός αυτό εξηγείται διότι ανήκουν σε αυτές τις περιπτώσεις όπου στην ίδια ακριβώς κωδική λέξη προστέθηκε ο ίδιος θόρυβος, απλά σε διαφορετική στάθμη θορύβου, κι έτσι η συμπεριφορά τους κατά την αποκωδικοποίησή τους είναι παρόμοια. Για τα frames, όμως, δεν ισχύει το ίδιο. Αυτά τα frames είναι εντελώς διαφορετικά μεταξύ τους, με διαφορετική κωδική λέξη, και έχουν 54 και 60 αρχικά λανθασμένους variable κόμβους αντίστοιχα. Από αυτούς, μόνο οι 4 είναι αρχικά λανθασμένοι και στα δύο frames, κι έτσι φαίνεται πως η εμφάνιση του ίδιου trapping set δεν οφείλεται στο θόρυβο που προστίθεται σε όλους τους προαναφερθέντες variable κόμβους. Από τους 4 κοινούς λανθασμένους κόμβους, οι 2 (1319, 1648) εμφανίζονται τελικά στο κοινό trapping set. Το κοινό trapping set των frames Παρακάτω απεικονίζονται, για τα frames 32 και 49, οι λανθασμένοι variable κόμβοι, υπό μορφή γράφων, από την 1 η επανάληψη (αφού δηλαδή έχει εκτελεστεί ο 1 ος έλεγχος του αλγορίθμου και έχουν διορθωθεί αρκετά από τα αρχικά λάθη) μέχρι 45

56 την επανάληψη όπου πλέον το κάθε frame έχει παγιδευτεί στο trapping set. Οι λανθασμένοι αρχικά κόμβοι σημειώνονται με έντονο μπλε, ενώ οι κοινοί λανθασμένοι αρχικά κόμβοι σημειώνονται με έντονο μαύρο. Παρατηρώντας με λεπτομέρεια αυτούς τους γράφους, φαίνεται πως οι αρχικά λανθασμένοι κόμβοι του frame 32, από την 1 η κιόλας επανάληψη, δημιουργούν κύκλο μήκους 8 (variable κόμβοι: 1319, 1973, 233, 1648), ο οποίος τυχαίνει να είναι ίδιος με έναν από τους κύκλους που δημιουργούνται στην 1 η επανάληψη αποκωδικοποίησης του frame 49, κι έτσι στην πορεία καταλήγουν και τα δύο frames παγιδευμένα στο ίδιο trapping set. Οι κύκλοι είναι αυτοί που δυσκολεύουν τον αποκωδικοποιητή να οδηγηθεί σε σωστά αποτελέσματα. iteration 1 iterations 2-8 iterations 9-end Λανθασμένοι variable κόμβοι του frame 32. iteration 1 iteration 2 iteration 3 iterations 4-end Λανθασμένοι variable κόμβοι του frame

57 Παρόμοια trapping sets Εκτός από τις παραπάνω περιπτώσεις των ταυτόσημων trapping sets, υπάρχουν, όπως αναφέρθηκε, και οι περιπτώσεις, όπου εμφανίζονται παρόμοια, ως προς τη δομή, trapping sets. Στον πίνακα Α της παραγράφου σημειώνονται 3 τέτοια trapping sets, τα οποία απεικονίζονται στα σχήματα: Trapping Set I Trapping Set II Trapping Set III I. το κοινό trapping set των frames 34-46, II. το κοινό trapping set των frames 32-49, III. το trapping set του frame 15. Έχει ενδιαφέρον το γεγονός ότι οι variable καθώς και οι check κόμβοι, που απαρτίζουν οποιοδήποτε από τα παραπάνω trapping sets, διαφέρουν από τους αντίστοιχους κόμβους των υπολοίπων το πολύ κατά τρεις θέσεις. Το να παρουσιαστούν, κατά την αποκωδικοποίηση διαφόρων frames, trapping sets με την παραπάνω ιδιότητα είναι πιθανό να συμβεί εξαιτίας του τρόπου με τον οποίο κατασκευάστηκε ο πίνακας ελέγχου ισοτιμίας Η και επεξηγείται εδώ. Όλα τα πειράματα που αναφέρονται στην παρούσα εργασία πραγματοποιήθηκαν με κώδικα LDPC, ο οποίος ανήκει στην κατηγορία των Quasi-Cyclic κωδίκων LDPC, όπου ο πίνακας ελέγχου ισοτιμίας αποτελείται ουσιαστικά από τετραγωνικούς υποπίνακες. 47

58 Κατασκευή του πίνακα ελέγχου ισοτιμίας Η Ξεκινώντας από έναν πίνακα διαστάσεων 6x24, πολύ μικρότερο δηλαδή από τον πίνακα H (504x2016), προκύπτει ο πίνακας βάσης ως εξής: κάθε στοιχείο του αρχικού μικρού πίνακα με τιμή ίση με -1 αντικαθίσταται από ένα μηδενικό πίνακα διαστάσεων 21x21. Όλα τα υπόλοιπα στοιχεία αντικαθίστανται από το μοναδιαίο 21x21 πίνακα, με τα στοιχεία του να ολισθαίνουν προς τα δεξιά κατά τόσες θέσεις όσες υποδεικνύει η ακριβής τιμή του μη αρνητικού ακέραιου στον αρχικό πίνακα. Προκύπτει έτσι ένας πίνακας 126x504 με στοιχεία μόνο 0 ή 1, ο οποίος απεικονίζεται στην επόμενη σελίδα, όπου οι τελείες αναπαριστούν τους άσους. Σε αυτόν τον πίνακα τώρα, τα μηδενικά στοιχεία γίνονται -1, ενώ τα μοναδιαία στοιχεία παίρνουν τιμές από 0 έως 3, με τυχαίο τρόπο. Κατασκευάζεται έτσι ο 126x504 πίνακας βάσης, του οποίου ένα μικρό κομμάτι διαστάσεων 6x8 φαίνεται σε επόμενο σχήμα. Η προηγούμενη διαδικασία που ακολουθήθηκε επαναλαμβάνεται τώρα αντικαθιστώντας τα στοιχεία του πίνακα βάσης με τετραγωνικούς μηδενικούς ή ολισθημένους μοναδιαίους πίνακες διαστάσεων 4x4. Με αυτήν τη μέθοδο, προκύπτει ο τελικός 504x2016 πίνακας ελέγχου ισοτιμίας Η. Ο πίνακας βάσης αποτελεί τη συμπιεσμένη μορφή του πίνακα Η Ο αρχικός πίνακας (6x24)

59 Ο Πίνακας Βάσης (126x504) Ο Πίνακας Ελέγχου Ισοτιμίας Η (504x2016) 49

60 Η δομή των trapping sets στον πίνακα Η Αφού επεξηγήθηκε ο τρόπος κατασκευής του πίνακα ελέγχου ισοτιμίας, είναι πλέον κατανοητό γιατί κάποια frames, κατά την αποκωδικοποίησή τους, μπορεί να παγιδευτούν σε παρόμοια trapping sets. Εφόσον το κάθε στοιχείο του πίνακα βάσης αντιστοιχεί σε έναν τετραγωνικό υποπίνακα 4x4 στον πίνακα ελέγχου ισοτιμίας, οι κόμβοι παρόμοιων trapping sets θα διαφέρουν πάντα το πολύ κατά 3 θέσεις. Trap. Set I Trap. Set II Trap. Set III Τα trapping sets Ι, ΙΙ και ΙΙΙ στον πίνακα Η. Η δομή στον πίνακα βάσης που προκαλεί τα trapping sets I, II και ΙΙΙ και ο κύκλος μήκους 6. Στα προηγούμενα σχήματα, φαίνονται οι διασυνδέσεις των check και variable κόμβων των τριών ίδιων σε δομή trapping sets (I, II, III) μέσα στον πίνακα Η, και η μεταφορά αυτών των διασυνδέσεων από τον πίνακα Η στον πίνακα βάσης. Κάθε δέσμη 50

61 τριών γραμμών (ή το πολύ τεσσάρων) στο 1 ο σχήμα καταλήγει σε μία ομαδική γραμμή στο 2 ο σχήμα. Για παράδειγμα, ένας κύκλος στον πίνακα βάσης, ο οποίος απεικονίζεται με έντονο χρώμα, αντιστοιχεί στους 3 κύκλους μήκους 6 των trapping sets, που δημιουργούνται από τους κόμβους: v234 - c68 - v69 - c103 - v c188 - v234 v233 - c67 - v72 - c102 - v c187 - v233 v235 - c65 - v70 - c104 - v c185 - v235 Σε επόμενο κεφάλαιο αναφέρεται μία ακόμα περίπτωση όπου διαπιστώνεται η ύπαρξη αρκετών κύκλων μήκους 6 στον πίνακα Η, εξαιτίας της αρχικής δομής ενός συγκεκριμένου γράφου στον πίνακα βάσης. Θεωρητικά, ένας καλός κώδικας δε θα πρέπει να έχει κύκλους μικρού μήκους. Η εύρεση των κύκλων στον πίνακα βάσης, ο οποίος είναι πολύ πιο εύκολο να μελετηθεί, λόγω των μικρότερων διαστάσεών του σε σχέση με τον πίνακα ελέγχου ισοτιμίας, μπορεί να βοηθήσει στο να εξαλειφθούν οι κύκλοι μικρού μήκους στον τελικό πίνακα Η. Αν στον πίνακα βάσης δημιουργείται κύκλος, πχ. μήκους 6, αυτό δε σημαίνει απαραίτητα πως θα υπάρχουν οπωσδήποτε οι αντίστοιχοι κύκλοι μήκους 6 στον πίνακα ελέγχου ισοτιμίας. Ανάλογα με τις τιμές στον πίνακα βάσης που περιγράφουν τις θέσεις ολίσθησης των μοναδιαίων τετραγωνικών υποπινάκων, μπορούν να προκύψουν κύκλοι διαφορετικού μήκους [15]. Έχοντας τις αυθεντικές τιμές του πίνακα βάσης στα αριστερά του παρακάτω σχήματος, δημιουργούνται οι 4 κύκλοι μήκους 6, που αναλύθηκαν προηγουμένως. Αλλάζοντας μία μόνο τιμή στον πίνακα βάσης, όπως φαίνεται στα δεξιά του σχήματος, δημιουργείται στον πίνακα Η μόνο ένας κύκλος μήκους 24. : : : : : : : : : : Εξάρτηση μήκους κύκλων στον πίνακα Η (κάτω) από τις τιμές του πίνακα βάσης (πάνω). 51

62 Ανακαλύπτοντας, λοιπόν, τους μικρούς κύκλους στον πίνακα βάσης, μπορεί να αποφευχθεί η δημιουργία κύκλων στον πίνακα Η, εισάγοντας τις κατάλληλες τιμές ολίσθησης. Μία εναλλακτική λύση θα ήταν, αφού βρεθούν κύκλοι μικρού μήκους στον πίνακα βάσης, να γίνει προσπάθεια ώστε να σπάσουν αυτοί οι κύκλοι, κι έτσι να μην υπάρχει κίνδυνος εμφάνισης των αντίστοιχων κύκλων στον πίνακα Η. Κάτι τέτοιο, όμως, είναι αρκετά πιο δύσκολο, διότι έστω κι αν αφαιρεθεί ένας κύκλος, είναι πολύ πιθανό να δημιουργηθεί κάποιος καινούργιος. 2.3 Bit-true εξομοίωση αποκωδικοποίησης, σε περιβάλλον Matlab Όπως αναφέρθηκε στο πρώτο κεφάλαιο, 11 frames από τα συνολικά 90 συγκεντρώθηκαν κατά την ανεπιτυχή αποκωδικοποίησή τους με τον αλγόριθμο offset Min-Sum, ενώ τα υπόλοιπα 79 συγκεντρώθηκαν κατά την αποκωδικοποίησή τους με τον αλγόριθμο normalized Min-Sum. Σε αυτό το σημείο εξετάζονται οι λόγοι για τους οποίους έγινε η καταγραφή του καθενός και παρουσιάζονται τα αποτελέσματα εξομοιώσεων bit-true, δηλαδή της εκ νέου αποκωδικοποίησης των frames σε περιβάλλον matlab, σύμφωνα με την αρχιτεκτονική του hardware Τα 11 καταγεγραμμένα frames από το σύστημα αποκωδικοποίησης hardware, χρησιμοποιώντας τον αλγόριθμο offset Min-Sum Για τα frames 80 έως 90, δηλαδή αυτά που δεν είχαν αποκωδικοποιηθεί στο hardware με τον αλγόριθμο offset Min-Sum, η εσωτερική ακρίβεια αναπαράστασης του ακέραιου μέρους των ανταλλασσόμενων μηνυμάτων ήταν 17 και 20 bits αντίστοιχα για τους ckeck και variable κόμβους. Η ακρίβεια αυτή ήταν υπεραρκετή, ώστε αυτός ο αποκωδικοποιητής να μη διαφέρει από έναν αποκωδικοποιητή, ο οποίος θα αναπαριστούσε τα μηνύματα με μορφή διπλής ακρίβειας. Επιπλέον, η εσωτερική ακρίβεια αναπαράστασης του κλασματικού μέρους των μηνυμάτων με 1 μόνο bit ήταν επίσης αρκετή, εφόσον η αναπαράσταση του κλασματικού μέρους των τιμών LLR έγινε με 1 bit και οι πράξεις που εκτελούνται στον αλγόριθμο offset Min-Sum είναι μόνο προσθέσεις / αφαιρέσεις. Το συμπέρασμα, λοιπόν, είναι ότι έστω κι αν η εκτέλεση του αλγορίθμου offset Min-Sum γινόταν με υπολογισμούς διπλής ακρίβειας, το αποτέλεσμα θα ήταν το ίδιο: τα 11 συγκεκριμένα frames και πάλι θα καταγράφονταν. Η εκ νέου αποκωδικοποίηση αυτών των frames (επόμενος πίνακας) σε περιβάλλον matlab, με τον αλγόριθμο offset Min-Sum, έδειξε ότι ο λόγος καταγραφής τους από το σύστημα hardware ήταν μόνο και μόνο το κριτήριο τερματισμού του αλγορίθμου, δηλαδή οι 9 το πολύ επαναλήψεις. 52

63 Απαιτούμενες επαναλήψεις μέχρι τη σύγκλιση στη μεταδιδόμενη κωδική λέξη του αλγορίθμου offset Min-Sum Από τον πίνακα επίσης φαίνεται ότι αν το offset τεθεί, για τα frames 80 έως 89, ίσο με 0.5 αντί για 2, οι απαιτούμενες επαναλήψεις γενικά είναι λιγότερες. Αυτό συμβαίνει διότι, σύμφωνα με τον αλγόριθμο, όσο μεγαλύτερη είναι η τιμή του offset, τόσο πιο πολλά μηνύματα, που αποστέλλονται από check σε variable κόμβους, μηδενίζονται. Το αποτέλεσμα είναι οι τιμές των μηνυμάτων από variable σε check κόμβους, καθώς και των μηνυμάτων απόφασης των variable κόμβων, να μην αλλάζουν αρκετά κατά την εκτέλεση του αλγορίθμου από επανάληψη σε επανάληψη, κι έτσι να καθυστερεί η σύγκλιση. Ιστογράμματα των μηνυμάτων check variable, για κάθε επανάληψη, κατά την αποκωδικοποίηση του frame 81 με τον αλγόριθμο offset Min-Sum. Από τα δύο παραπάνω ιστογράμματα, φαίνεται ότι κατά την αποκωδικοποίηση με τον αλγόριθμο offset Min-Sum και παράμετρο b=2, πάρα πολλά μηνύματα από check σε variable κόμβους είναι μηδενικά, όχι μόνο στην πρώτη αλλά και στις υπόλοιπες επαναλήψεις, γεγονός το οποίο δε συμβαίνει για b=0.5. Μηνύματα απόφασης ενδεικτικών variable κόμβων κατά την αποκωδικοποίηση του frame 81 με τον αλγόριθμο offset Min-Sum. 53

64 Στα προηγούμενα διαγράμματα απεικονίζονται οι τιμές των μηνυμάτων απόφασης κάποιων variable κόμβων, οι οποίοι παραμένουν λανθασμένοι σχεδόν μέχρι το τέλος της αποκωδικοποίησης, όταν το offset είναι b=2. Εξαιτίας των πολλών μηδενικών μηνυμάτων που στέλνουν οι check κόμβοι στους συγκεκριμένους variable κόμβους, φαίνεται ότι οι τιμές των μηνυμάτων απόφασης αυτών παραμένουν σχεδόν σταθερές και λανθασμένες για αρκετές επαναλήψεις Τα 79 καταγεγραμμένα frames από το σύστημα αποκωδικοποίησης hardware, χρησιμοποιώντας τον αλγόριθμο normalized Min-Sum Από τα συνολικά 90 frames που είχαν καταγραφεί από το σύστημα αποκωδικοποίησης στο hardware, τα frames 1 έως 79 είχαν αποκωδικοποιηθεί με τον αλγόριθμο normalized Min-Sum. Προκειμένου να φανεί ο λόγος για τον οποίο έγινε η καταγραφή αυτών, πραγματοποιήθηκε εξομοίωση bit-true της διαδικασίας αποκωδικοποίησης. Υλοποιήθηκε ουσιαστικά ο αποκωδικοποιητής αρχικά με τις παραμέτρους του FPGA και έπειτα με καινούργιες διαφορετικές παραμέτρους εσωτερικής ακρίβειας των δεδομένων, εκτελώντας το πολύ 100 επαναλήψεις. Υπενθυμίζεται πως τα LLR σε 73 frames αναπαριστώνται με format 5.1 και εσωτερικά στον αποκωδικοποιητή είχαν χρησιμοποιηθεί 17.1 και 20.1 bits για τον υπολογισμό των μηνυμάτων των check και variable κόμβων αντίστοιχα. Τα LLR των υπόλοιπων 6 frames αναπαριστώνται με format 6.0 και τα ενδιάμεσα μηνύματα με format 18.0 και Αυτές οι παράμετροι αναφέρονται στον πίνακα αποτελεσμάτων Α.2 του παραρτήματος ως παράμετροι "hardware", ενώ οι παράμετροι "matlab" αντιστοιχούν στα νέα bit-true πειράματα Αίτια καταγραφής των frames από το σύστημα hardware Όπως για τα 11 frames που καταγράφηκαν κατά την αποκωδικοποίησή τους με τον αλγόριθμο offset Min-Sum, έτσι και εδώ για τα 79 frames, η εσωτερική ακρίβεια αναπαράστασης του ακέραιου μέρους των μηνυμάτων τους ήταν επαρκής. Δεν ισχύει το ίδιο, όμως, για το κλασματικό μέρος, αφού στον αλγόριθμο normalized Min-Sum, κατά τον υπολογισμό των μηνυμάτων που αποστέλλονται από check σε variable κόμβους, γίνεται πολλαπλασιασμός με τον παράγοντα normalization. Άρα, θα ήταν προτιμότερο η ακρίβεια του κλασματικού μέρους να είναι καλύτερη, αναπαριστώντας αυτό με περισσότερα του ενός bits, παρόλο που η ακρίβεια του κλασματικού μέρους των LLR είναι ένα ή κανένα bit. 54

65 Από τον πίνακα Α.2 φαίνεται πως, κατά την αποκωδικοποίηση με τις παραμέτρους του συστήματος στο hardware, 48 frames συνέκλιναν σε έγκυρη κωδική λέξη. Χρειάστηκαν, όμως, από 10 επαναλήψεις και πάνω, κι έτσι αυτά καταγράφηκαν, αφού ως μέγιστη επανάληψη στο FPGA είχε οριστεί η 9 η. Έστω όμως κι αν είχε δοθεί μεγαλύτερο περιθώριο για να επιτευχθεί σύγκλιση, 5 frames και πάλι θα καταγράφονταν, διότι δεν ήταν καλή η ακρίβεια των ενδιάμεσων δεδομένων και απέτυχαν. Για τα υπόλοιπα 26 frames, όμως, η μη επιτυχής αποκωδικοποίηση δεν οφείλεται ούτε στον αριθμό επιτρεπόμενων επαναλήψεων ούτε στην εσωτερική πεπερασμένη ακρίβεια, εφόσον ακόμα και εκτελώντας πολλές επαναλήψεις, δεν μπορούν να αποκωδικοποιηθούν ούτε με υπολογισμούς διπλής ακρίβειας Επίδραση του μήκους λέξης στη διαδικασία αποκωδικοποίησης Το πεπερασμένο μήκος λέξης έχει προφανώς επίδραση στα αποτελέσματα της διαδικασίας αποκωδικοποίησης, είτε σχετικά με την επιτυχία ή αποτυχία αυτής, είτε σχετικά με τον αριθμό των απαιτούμενων επαναλήψεων. Η συμπεριφορά των frames, όταν αυτά αποκωδικοποιούνται με format 11.5 στους variable και 8.5 στους check κόμβους, είναι σχεδόν ίδια με αυτήν που έχουν όταν αποκωδικοποιούνται με διπλή ακρίβεια. Σε γενικές γραμμές, φαίνεται πως καθώς μειώνεται η ακρίβεια αναπαράστασης του κλασματικού μέρους, παρατηρούνται περισσότερες αποτυχίες, ενώ τα frames που συγκλίνουν απαιτούν ελαφρώς περισσότερες επαναλήψεις. Ωστόσο, τα αποτελέσματα της αποκωδικοποίησης είναι πολύ χειρότερα όταν μειώνεται η ακρίβεια αναπαράστασης του ακέραιου μέρους των μηνυμάτων. Συγκρίνοντας τα μηνύματα απόφασης που προκύπτουν κατά την αποκωδικοποίηση των frames xρησιμοποιώντας format 8.4/5.4, με αυτά που προκύπτουν κατά την αποκωδικοποίηση με καλύτερη ακρίβεια αναπαράστασης ακέραιου μέρους, γίνεται κατανοητός ο λόγος για τον οποίο με αυτό το format σημειώνονται περισσότερες αποτυχίες. Τα μηνύματα σταθεροποιούνται μέσα σε πολύ λίγες επαναλήψεις, κι αυτό γιατί μειώνοντας υπερβολικά το μέγιστο κατά απόλυτη τιμή όριο όπου μπορούν να φτάσουν τα μηνύματα των check κόμβων, δεν μπορούν να επηρεαστούν εύκολα τα μηνύματα των variable κόμβων και κατ' επέκταση τα μηνύματα απόφασης. Το αποτέλεσμα είναι να μηδενίζεται η πιθανότητα σύγκλισης στη μεταδιδόμενη κωδική λέξη, όσες επαναλήψεις κι αν εκτελεστούν, εφόσον ανταλλάσσονται συνεχώς οι ίδιες τιμές μηνυμάτων. Στα σχετικά διαγράμματα του frame 42 απεικονίζεται γραφικά η επίδραση που έχει η μείωση της ακρίβειας του ακέραιου μέρους στα μηνύματα απόφασης. Στην 8 η επανάληψη παρατηρείται πως, για format 8.4/5.4, έχει ήδη σταματήσει η μεταβολή των τιμών των μηνυμάτων. Η γρήγορη σταθεροποίηση των μηνυμάτων φαίνεται να 55

66 είναι η αιτία και μίας ακραίας περίπτωσης που σημειώθηκε κατά την αποκωδικοποίηση με format 9.4/6.4: τα frames 27 και 29 απέτυχαν διότι στο καθένα δε διορθώθηκε ένας και μοναδικός variable κόμβος. Μηνύματα απόφασης κατά την αποκωδικοποίηση Bit-True με τον αλγόριθμο normalized Min-Sum. (σύγκριση ακρίβειας ακέραιου μέρους) Συγκρίνοντας τώρα τα μηνύματα που προκύπτουν για διαφορετική κάθε φορά ακρίβεια κλασματικού μέρους, παρατηρούνται μεγαλύτερες διακυμάνσεις όσο μειώνεται ο αριθμός των κλασματικών bits. Κυρίως, στα frames των οποίων τα μηνύματα παρουσιάζουν έστω και μία ελαφριά ταλάντωση κατά την αποκωδικοποίησή τους με διπλή ακρίβεια, η ταλάντωση αυτή γίνεται εντονότερη, όπως απεικονίζεται και στα διαγράμματα του frame 44, αφού με μικρότερη ακρίβεια είναι διαθέσιμες λιγότερες στάθμες τιμών. Μηνύματα απόφασης κατά την αποκωδικοποίηση Bit-True με τον αλγόριθμο normalized Min-Sum. (σύγκριση ακρίβειας κλασματικού μέρους) 56

67 Θα πρέπει να αναφερθεί εδώ πως υπάρχουν και ελάχιστες περιπτώσεις όπου ο κβαντισμός βοηθάει τον αποκωδικοποιητή να συγκλίνει σε έγκυρη κωδική λέξη. Συγκεκριμένα, με format 11.0/8.0, τα frames 13, 32 και 54 κατάφεραν να αποκωδικοποιηθούν ενώ ακόμα πιο εντυπωσιακό είναι το γεγονός πως με format 11.-1/8.-1 υπάρχουν και πάλι 8 frames που αποκωδικοποιούνται επιτυχώς, ενώ δεν αποκωδικοποιούνται με καμία άλλη ακρίβεια αναπαράστασης, ούτε καν με διπλή ακρίβεια. Συνολικά, βέβαια, σημειώνονται περισσότερες αποτυχίες με αυτά τα formats, σε σχέση με άλλα καλύτερης ακρίβειας στο κλασματικό μέρος. Το format 11.-1/8.-1 ουσιαστικά σημαίνει πως χρησιμοποιούνται 10 και 7 bits για την αναπαράσταση των μηνυμάτων των variable και check κόμβων αντίστοιχα. Οι επιτρεπόμενες τιμές των μηνυμάτων των variable κόμβων κυμαίνονται από έως +1022, των check κόμβων από -128 έως +126, ενώ οι ενδιάμεσες τιμές αυτών μπορούν να είναι μόνο οι ζυγές Τα trapping sets των ανεπιτυχώς αποκωδικοποιημένων frames Στο σημείο αυτό δίνονται όλα τα καινούργια trapping sets, τα οποία εμφανίστηκαν κατά την αποκωδικοποίηση των frames με ακρίβεια αναπαράστασης 8.1/5.1. Για τα frames που απέτυχαν και κατά την αποκωδικοποίησή τους με διπλή ακρίβεια, τα trapping sets είναι τα ίδια εκτός από ελάχιστες διαφορές. Στον πίνακα διακρίνονται τα frames που είναι σχεδόν ίδια μεταξύ τους, ώστε να δικαιολογείται η παγίδευσή τους στο ίδιο trapping set. 57

68 58 Πίνακας Β: Τα Trapping Sets των frames που δεν αποκωδικοποιήθηκαν με τον αλγόριθμο normalized Min-Sum και εξομοίωση Bit-True, ακρίβειας 8.1 / 5.1.

69 Επικαλυπτόμενοι κύκλοι μήκους 6 Ενδιαφέρον παρουσιάζει μία ιδιαίτερη δομή στον πίνακα ελέγχου ισοτιμίας Η, μέρος της οποίας εμφανίζεται στα trapping sets των frames 26, 41, 61 και 66. Η δομή αυτή δημιουργείται διότι στον πίνακα βάσης υπάρχει ο γράφος του παρακάτω σχήματος, όπου ανιχνεύονται εύκολα 8 κύκλοι μήκους 6, καθώς και αρκετοί μεγαλύτεροι κύκλοι, οι οποίοι αλληλοκαλύπτονται. Μελετώντας το συγκεκριμένο γράφο, προκύπτει πως οι 4 από τους 8 κύκλους μήκους 6 δημιουργούν στον πίνακα Η από 4 νέους κύκλους μήκους επίσης 6. Οι 4 αυτοί κύκλοι στον πίνακα βάσης είναι οι εξής: v39 - c110 - v202 - c93 - v125 - c68 - v39 v39 - c110 - v202 - c68 - v141 - c40 - v39 v11 - c10 - v39 - c68 - v141 - c40 - v11 v11 - c10 - v39 - c110 - v202 - c59 - v11 Γράφος στον Πίνακα Βάσης με 8 κύκλους μήκους 6 Το αποτέλεσμα είναι, λοιπόν, έχοντας υπ' όψιν και τις διασυνδέσεις των κόμβων που προκύπτουν από τους μεγαλύτερους κύκλους του γράφου στον πίνακα βάσης, να δημιουργείται στον πίνακα ελέγχου ισοτιμίας μία αρκετά περίπλοκη δομή, η οποία περιέχει 16 κύκλους μήκους 6, εκτός των άλλων μεγαλύτερων κύκλων. 59

70 60 Δομή στον Πίνακα Ελέγχου Ισοτιμίας, με 16 κύκλους μήκους 6

71 2.4 Διπλής ακρίβειας εξομοίωση αποκωδικοποίησης, σε περιβάλλον Matlab, τροποποιώντας τον αλγόριθμο normalized Min-Sum Η αποκωδικοποίηση σε περιβάλλον matlab των 90 καταγεγραμμένων frames με τον αλγόριθμο normalized Min-Sum, εκτελώντας πράξεις διπλής ακρίβειας, έδειξε πως σε 26 από αυτά δεν μπορεί να βρεθεί επιτυχώς η μεταδιδόμενη κωδική λέξη. Σε αυτό το κεφάλαιο, με βάση κάποια χαρακτηριστικά που παρατηρούνται κατά την εξέταση των μηνυμάτων που ανταλλάσσονται μεταξύ variable και check κόμβων, πραγματοποιείται νέα αποκωδικοποίηση όλων των frames, διαφοροποιώντας ελαφρά τον αρχικό αλγόριθμο. Σκοπός είναι να φανεί αν τα 26 frames μπορούν να αποκωδικοποιηθούν και αν κάποια από τα υπόλοιπα frames θα αποτύχουν, εξαιτίας των αλλαγών στον αυθεντικό αλγόριθμο Αποκωδικοποίηση χρησιμοποιώντας 2 παράγοντες κανονικοποίησης Κατά την αποκωδικοποίηση των 90 καταγεγραμμένων frames με τον αλγόριθμο normalized Min-Sum και παράγοντα normalization a=0.75, τα ανταλλασσόμενα μηνύματα, όπως και τα μηνύματα απόφασης, από κάποια επανάληψη και μετά παραμένουν σταθερά ή μεταβάλλονται ελαφρώς. Πολλά από αυτά τα μηνύματα, μέσα στις πρώτες περίπου 10 επαναλήψεις, φτάνουν σε αρκετά υψηλές τιμές κι έπειτα σχεδόν σταθεροποιούνται. Στην πλειοψηφία τους, όμως, τα μηνύματα των variable κόμβων 1513 έως 1596, και ακόμη περισσότερο των 1597 έως 2016, δε φτάνουν στα επίπεδα τιμών των μηνυμάτων των κόμβων 1 έως 1512, όπως φαίνεται και από το ακόλουθο παράδειγμα του frame 49. Μηνύματα απόφασης κατά την αποκωδικοποίηση με τον αλγόριθμο normalized Min-Sum, a=

72 Η εξήγηση είναι απλή, αφού ο κάθε variable κόμβος από τους τελευταίους είναι συνδεδεμένος με 2 ή 3 το πολύ check κόμβους, ενώ οι πρώτοι 1512 variable κόμβοι είναι συνδεδεμένοι με 4 check κόμβους έκαστος. Έτσι, κατά τον υπολογισμό των μηνυμάτων που αποστέλλονται από τους τελευταίους variable κόμβους, τα αθροίσματα Q nm έχουν λιγότερους όρους, σε σχέση με αυτά των αρχικών κόμβων, και γι' αυτό δεν ενισχύονται αρκετά οι τιμές τους. nm n m n mm n\ m Q LLR R Ο τροποποιημένος αλγόριθμος Με αφορμή το παραπάνω χαρακτηριστικό, δημιουργήθηκε μία παραλλαγή του αρχικού αλγορίθμου normalized Min-Sum, σύμφωνα με την οποία, για να ενισχυθούν κάπως και τα μηνύματα των variable κόμβων 1513 έως 2016, χρησιμοποιείται ως παράγοντας normalization μία τιμή a'>a, αλλά μόνο κατά τον υπολογισμό των μηνυμάτων των check κόμβων, που προορίζονται για τους συγκεκριμένους variable κόμβους. Rmn signqn m min Q nm a, n = nn m\ n n Nm\ n Rmn signqn m min Q nm a, n = , a > a nn m\ n n Nm\ n Όπως είναι αναμενόμενο βέβαια, αυτό επηρεάζει τελικά όλα τα ανταλλασσόμενα μηνύματα. Η εξομοίωση της αποκωδικοποίησης των 90 frames έγινε δύο φορές, υλοποιώντας την παραπάνω μέθοδο με παραμέτρους: a = 0.75 και a' = 0.875, a = 0.75 και a' = Αποτελέσματα αποκωδικοποίησης Τα αποτελέσματα δίνονται και σχολιάζονται εδώ, μαζί με τα αποτελέσματα της αποκωδικοποίησης των frames με τον αυθεντικό αλγόριθμο normalized Min-Sum, έχοντας παράγοντα κανονικοποίησης ίσο με a=0.75 και a= Χρησιμοποιώντας παράγοντα normalization a=0.875 αντί για a=0.75 στον αρχικό αλγόριθμο και εκτελώντας 1000 το πολύ επαναλήψεις, ο αριθμός των ανεπιτυχώς αποκωδικοποιημένων frames μειώνεται αισθητά από 26 σε 4. Από την άλλη πλευρά, εξετάζοντας τα frames που αποκωδικοποιούνται με a=0.875 αλλά και με a=0.75, παρατηρείται πως αρκετά από αυτά απαιτούν μεγαλύτερο αριθμό επαναλήψεων ώστε να συγκλίνουν. 62

73 Αυτό που επίσης πρέπει να σημειωθεί είναι πως υπάρχουν frames τα οποία συγκλίνουν μετά από πολλές επαναλήψεις, περισσότερες δηλαδή από 100, κάτι που δε συμβαίνει με τον παράγοντα a=0.75. Κι αυτό γιατί όσο πιο κοντά στη μονάδα είναι ο παράγοντας normalization, τόσο πιο πολύ ο αλγόριθμος normalized Min-Sum συμπεριφέρεται σαν τον Min-Sum. Έτσι, τα μηνύματα που ανταλλάσσονται παρουσιάζουν μεγαλύτερες διακυμάνσεις, δεν παραμένουν σταθερά καθώς προχωράνε οι επαναλήψεις, και είναι πιθανότερο κάποιο frame να συγκλίνει. Συγκρίνοντας τώρα τα αποτελέσματα της αρχική εκδοχής του αλγορίθμου, θέτοντας a=0.75, με αυτά της νέας εκδοχή, θέτοντας a'=0.875, σημειώνονται καλύτερα αποτελέσματα, όσον αφορά το συνολικό αριθμό των επιτυχώς αποκωδικοποιημένων frames. Παρατηρείται επίσης πως τα frames που αποκωδικοποιούνται εκτελώντας μέχρι και 20 επαναλήψεις, από 63 καταλήγουν σε 77 με τη διαφοροποίηση του αλγορίθμου. Θέτοντας ως 2 ο παράγοντα normalization το a'=1 αντί για a'=0.875, παρατηρούνται ακόμα περισσότερες επιτυχίες, συγκεκριμένα μόνο 2 αποτυχίες, με λίγο αυξημένο όμως τον αριθμό των απαιτούμενων επαναλήψεων. Τα αποτελέσματα της νέας εκδοχής, είτε με a'=0.875 είτε με a'=1, είναι καλύτερα από αυτά της αρχικής με a=0.875, όχι τόσο σχετικά με τον αριθμό των επιτυχώς αποκωδικοποιημένων frames, αλλά σχετικά με τον αριθμό των απαιτούμενων επαναλήψεων, αφού με τον αυθεντικό αλγόριθμο και a=0.875, αρκετά frames χρειάζονται πάνω από 100 επαναλήψεις ώστε να συγκλίνουν. Ιστογράμματα των απαιτούμενων επαναλήψεων, για την αρχική και την εναλλακτική έκδοση (2 normalization factors) του αλγορίθμου normalized Min-Sum. 63

74 Ο πίνακας Α.3 στο παράρτημα και τα παραπάνω ιστογράμματα δείχνουν με περισσότερες λεπτομέρειες τα παραπάνω συμπεράσματα. Γενικά, η μικρή ενίσχυση που προκαλεί η αλλαγή του αρχικού αλγορίθμου normalized Min-Sum στα ανταλλασσόμενα μηνύματα και τα μηνύματα απόφασης, φαίνεται να έχει θετική επίδραση στην αποκωδικοποίηση των frames της περιοχής error floor Αποκωδικοποίηση μεταβάλλοντας τα μέγιστα R mn μηνύματα Πριν αναλυθεί η δεύτερη παραλλαγή του αρχικού αλγορίθμου normalized Min-Sum, θα πρέπει να γίνει κατανοητός ο τρόπος με τον οποίο συμμετέχουν οι check κόμβοι στη διαδικασία αποκωδικοποίησης ενός frame Ο ρόλος των check κόμβων Οι check κόμβοι είναι αυτοί που στην ουσία καθορίζουν την επιτυχία ή αποτυχία της αποκωδικοποίησης και είναι υπεύθυνοι για τον τερματισμό της. Ο αποκωδικοποιητής δεν μπορεί να γνωρίζει σε καμία περίπτωση ποιοι variable κόμβοι παραμένουν λανθασμένοι σε κάθε επανάληψη, δηλαδή σε ποιο trapping set έχει αυτός παγιδευτεί. Έχει στη διάθεσή του, όμως, πληροφορίες που απορρέουν από τους check κόμβους, και κυρίως από αυτούς που δεν ικανοποιούνται. Εστιάζοντας στα 26 frames που δεν αποκωδικοποιούνται με τον αλγόριθμο normalized Min-Sum, φαίνεται πως τα μηνύματα των check κόμβων ενισχύουν ή αποδυναμώνουν τις τιμές LLR, προσδιορίζοντας, έτσι, τα μηνύματα απόφασης. Στο σημείο αυτό, επιλέγονται συγκεκριμένοι check κόμβοι και περιγράφεται η συμπεριφορά τους κατά την αποκωδικοποίηση του frame 1, το οποίο είναι ένα από αυτά που τελικά δε συγκλίνουν σε έγκυρη κωδική λέξη. Check κόμβοι που λαμβάνουν περιττό αριθμό μηνυμάτων αρνητικού προσήμου. Στην αρχή της 8 ης επανάληψης, ο check κόμβος 68 ελέγχει τα μηνύματα που αποστέλλονται σε αυτόν από όλους τους συνδεδεμένους variable κόμβους και, αφού διαπιστώσει πως λαμβάνει περιττό αριθμό μηνυμάτων αρνητικού προσήμου, στέλνει πίσω σε αυτούς μήνυμα αντίθετου προσήμου από αυτό που του έστειλε ο καθένας, προσπαθώντας να διορθώσει τον άγνωστο σε αυτόν variable κόμβο. Το αποτέλεσμα είναι να στέλνει μηνύματα που αποδυναμώνουν τα 11 σωστά LLR, ενισχύουν 2 λανθασμένα LLR (variable κόμβοι 1451 και 1662), ενώ μόνο στο λανθασμένο αρχικά variable κόμβο 714 στέλνει σωστό μήνυμα. Παρόλο που ο check κόμβος 68 προσπαθεί εσφαλμένα να διορθώσει 13 variable κόμβους, αυτοί έχουν, στο τέλος της 8 ης επανάληψης, σωστά μηνύματα απόφασης, γεγονός στο οποίο συμβάλλουν τα 64

75 μηνύματα που λαμβάνουν από τους άλλους συνδεδεμένους check κόμβους. Επιπλέον, διορθώνεται ο variable κόμβος 714 κι έτσι ο check κόμβος 68 τελικά ικανοποιείται. (Σχήμα Α.i). Παρά την ικανοποιητική κατάληξη της 8 ης επανάληψης, όσον αφορά τον variable κόμβο 714 και τον check κόμβο 68, τα δεδομένα αλλάζουν στην επόμενη επανάληψη. Ο συγκεκριμένος check κόμβος λαμβάνει, στο ξεκίνημα της 9 ης επανάληψης, σωστά μηνύματα από όλους τους variable κόμβους του, εκτός από τον 714, ο οποίος, εξαιτίας των υπόλοιπων συνδεδεμένων check κόμβων σε αυτόν, επιμένει πως το αντίστοιχο bit έχει τη λανθασμένη τιμή '1'. Προκειμένου και πάλι να διορθώσει το λάθος, ο check κόμβος 68 συμπεριφέρεται όπως και στην προηγούμενη επανάληψη. Αυτή τη φορά, όμως, ο variable κόμβος 714 δε διορθώνεται, διότι υπερισχύουν τα μηνύματα που αυτός λαμβάνει από τους άλλους check κόμβους του, σε συνδυασμό με τη λανθασμένη τιμή του LLR, και ο check κόμβος 68 καταλήγει μη ικανοποιημένος. (Σχήμα Α.ii). Σημειώνεται ακόμα μία περίπτωση check κόμβου που λαμβάνει περιττό αριθμό μηνυμάτων αρνητικού προσήμου, όπως ο 384 στην 9 η επανάληψη, κατά την οποία ένας variable κόμβος, συγκεκριμένα στο παράδειγμα ο 1895, στέλνει λανθασμένο μήνυμα ενώ αντίθετα ο 714 του στέλνει σωστό μήνυμα, μικρό όμως κατά απόλυτη τιμή σε σχέση με τα υπόλοιπα. Ο check κόμβος τελικά, στην προσπάθειά του να διορθώσει το ένα σφάλμα στον κόμβο 1895, δημιουργεί και δεύτερο σφάλμα στον κόμβο 714, με αποτέλεσμα να ικανοποιείται στο τέλος της επανάληψης. (Σχήμα Α.iii). Τέλος, υπάρχει και η περίπτωση του check κόμβου 299 στην 2 η επανάληψη, ο οποίος λαμβάνει μηνύματα τέτοια ώστε να μπορεί να αναγνωρίσει πως κάποιος variable κόμβος του στέλνει λανθασμένου προσήμου μήνυμα. Αυτός ο κόμβος είναι εδώ ο Στην προσπάθειά του ο check κόμβος να διορθώσει το λανθασμένο variable κόμβο, πράγματι τον διορθώνει, οδηγώντας όμως σε λάθος κατάσταση κάποιον άλλον, συγκεκριμένα τον 271. (Σχήμα Α.iv). Γενικότερα, αν ένας check κόμβος λάβει μηνύματα από τους συνδεδεμένους variable κόμβους τέτοια ώστε να προκύψει περιττός αριθμός αρνητικών προσήμων, τότε αυτός αναγνωρίζει απλά την ύπαρξη λάθους και όχι συγκεκριμένα το λανθασμένο variable κόμβο. Γι' αυτό το λόγο, ενώ στέλνει σωστό μήνυμα σε αυτόν, ταυτόχρονα στέλνει λανθασμένα μηνύματα σε όλους τους υπόλοιπους. Το αποτέλεσμα που θα προκύψει, δηλαδή η διόρθωση ή όχι της τιμής του λανθασμένου variable κόμβου, και ο τρόπος με τον οποίο θα επηρεαστούν οι τιμές των σωστών κόμβων, δεν μπορούν να καθοριστούν εύκολα, εφόσον εξαρτώνται και από τους άλλους check κόμβους. 65

76 66 Α. Περιπτώσεις μη ικανοποιημένου check κόμβου, στην αρχή μιας επανάληψης.

77 Β. Περιπτώσεις ικανοποιημένου check κόμβου (ορθά ή εσφαλμένα), στην αρχή μιας επανάληψης. 67

78 Check κόμβοι που λαμβάνουν ζυγό αριθμό μηνυμάτων αρνητικού προσήμου. Αν ένας check κόμβος λάβει ζυγό αριθμό μηνυμάτων αρνητικού προσήμου, τότε θεωρεί πως όλοι οι συνδεδεμένοι variable κόμβοι του στέλνουν σωστού προσήμου μηνύματα κι έτσι, απαντάει στον κάθε κόμβο με μήνυμα ίδιου προσήμου. Αυτά τα μηνύματα συμφωνούν με τη σωστή τιμή του αντίστοιχου bit του κάθε κόμβου μόνο όταν πράγματι όλοι οι variable κόμβοι στέλνουν στον check κόμβο μηνύματα σωστού προσήμου, όπως στις περιπτώσεις που απεικονίζονται στα σχήματα Β.i, Β.ii και Β.iii. Αν, όμως, ο check κόμβος λάβει ζυγό αριθμό μηνυμάτων αρνητικού προσήμου αλλά δύο από τους συνδεδεμένους variable κόμβους του στέλνουν λανθασμένου προσήμου μήνυμα, τότε αυτός και πάλι ενεργεί με τον τρόπο που μόλις περιγράφηκε, κι ως εκ τούτου, δύο απεσταλμένα μηνύματα από αυτόν προς τους variable κόμβους δε συμφωνούν με τα αντίστοιχα σωστά bits. Τέτοιες περιπτώσεις παρουσιάζονται στα σχήματα Β.iv, Β.v και Β.vi. Το αποτέλεσμα που προκύπτει στο τέλος κάθε επανάληψης, είτε αφορά τις 3 πρώτες περιπτώσεις είτε τις 3 τελευταίες, εξαρτάται, όπως είναι γνωστό, και από τους υπόλοιπους check κόμβους και μπορεί να είναι ένα από τα παρακάτω: α) όλοι οι variable κόμβοι να είναι σωστοί και ο check κόμβος να είναι ικανοποιημένος (περιπτώσεις Β.i και Β.iv), β) κάποιος να έχει μήνυμα απόφασης λανθασμένου προσήμου οπότε και ο check κόμβος να καταλήξει μη ικανοποιημένος (περιπτώσεις Β.ii και Β.v), και γ) δύο κόμβοι να έχουν λανθασμένο μήνυμα απόφασης και ο check κόμβος να είναι εσφαλμένα ικανοποιημένος (περιπτώσεις Β.iii και Β.vi) Ο τροποποιημένος αλγόριθμος Αφού αναλύθηκε, με τα προηγούμενα παραδείγματα, η συμπεριφορά των check κόμβων κατά την αποκωδικοποίηση με τον αυθεντικό αλγόριθμο normalized Min-Sum, παρουσιάζεται τώρα η εναλλακτική μέθοδος υπολογισμού των αποστελλόμενων μηνυμάτων R mn από έναν check κόμβο στους συνδεδεμένους σε αυτόν variable κόμβους. Στο στάδιο υπολογισμού αυτών των μηνυμάτων, προκύπτουν πάντα τα ίδια μηνύματα κατά απόλυτη τιμή, εκτός από ένα μόνο μήνυμα, του οποίου η απόλυτη τιμή είναι μεγαλύτερη. Αυτό το μήνυμα αποστέλλεται σε εκείνον τον variable κόμβο, ο οποίος έχει στείλει προηγουμένως στον check κόμβο, το μικρότερο κατά απόλυτη τιμή μήνυμα. Αν δύο ή περισσότερα μηνύματα, που αποστέλλονται από variable σε check κόμβους, έχουν την ίδια απόλυτη τιμή, η οποία είναι και η μικρότερη όλων, τότε δε διαφοροποιείται κανένα μήνυμα του check κόμβου (περίπτωση Β.iv). Μελετώντας τα στιγμιότυπα της αποκωδικοποίησης των 26 frames που δε συγκλίνουν επιτυχώς, και πιο αναλυτικά του frame 1, παρατηρήθηκαν κάποιες 68

79 περιπτώσεις όπου ένας check κόμβος στέλνει ένα αρκετά μεγαλύτερο μήνυμα σε έναν variable κόμβο του, σε σχέση με τα μηνύματα που στέλνει προς τους υπολοίπους. Με αυτό το μήνυμα πολλές φορές προσπαθεί να οδηγήσει το αντίστοιχο bit σε λάθος τιμή και τον variable κόμβο σε λάθος κατάσταση. Tέτοια παραδείγματα απεικονίζονται στα σχήματα Α.iii, Β.v και Β.vi. Στις περιπτώσεις όπου ένας check κόμβος είναι αρχικά ψευδώς ικανοποιημένος (fscn start ), θα πρέπει οι variable κόμβοι να μη λαμβάνουν από αυτόν ισχυρά λανθασμένα μηνύματα και αν είναι δυνατόν αυτά να ελαττωθούν κατά απόλυτη τιμή. Αντιθέτως, στις περιπτώσεις όπου αρχικά ένας check κόμβος είναι αληθώς ικανοποιημένος (tscn start ), δεν είναι τόσο σημαντικό να στείλει πίσω στους variable κόμβους του ισχυρά σωστά μηνύματα. Αυτό που παίζει ρόλο κυρίως είναι οι υπόλοιποι check κόμβοι να μη στείλουν λανθασμένα μηνύματα. Τέλος, θεωρείται σημαντικό αν ένας check κόμβος αναγνωρίσει την ύπαρξη ενός λάθους (UCN start ), να στείλει ισχυρό σωστό μήνυμα στον λανθασμένο κόμβο, ώστε αυτός να οδηγηθεί πιο εύκολα στη σωστή κατάσταση. Με βάση όλα τα παραπάνω, τα 90 καταγεγραμμένα frames αποκωδικοποιήθηκαν ξανά, αυτή τη φορά όμως, υλοποιώντας ένα διαφορετικό τρόπο υπολογισμού των αποστελλόμενων μηνυμάτων από check κόμβους, μόνο στις περιπτώσεις όπου ο check κόμβος λαμβάνει από τους variable κόμβους του ζυγό αριθμό μηνυμάτων αρνητικού προσήμου (SCN start ). signq 1 R sign Q min Q a nm mn nm nm n Nm n Nm\ n n Nm\ n signqn m 1 R mn sign Qn m min Q nm a n Nm\ n n Nm\ n min Qn m Q nm n Nm n Nm signqn m 1 R min Qnm Qnm n Nm n Nm mn min Qnm min Qnm n Nm n n Nm \ sign Qn m a n Nm\ n 2 Σύμφωνα με αυτόν τον τρόπο, κατά τον υπολογισμό του μηνύματος που θα αποσταλλεί σε εκείνον τον variable κόμβο, ο οποίος έχει στείλει προηγουμένως στον check κόμβο το μικρότερο, κατά απόλυτη τιμή, μήνυμα, ακολουθείται η εξής διαδικασία: αντί να χρησιμοποιηθεί το αμέσως επόμενο μικρότερο απόλυτο μήνυμα, 69

80 πολλαπλασιασμένο με τον παράγοντα normalization a, χρησιμοποιείται ο μέσος όρος των δύο μικρότερων απόλυτων μηνυμάτων, που προκύπτουν από τη σύγκριση όλων των μηνυμάτων. Στο παράδειγμα, γίνεται πιο κατανοητή η μέθοδος που μόλις περιγράφηκε. Ανταλλασσόμενα μηνύματα κατά την αποκωδικοποίηση του frame 1, στην 3 η επανάληψη της εναλλακτικής έκδοσης (smaller max c v message) του αλγορίθμου normalized Min-Sum Αποτελέσματα αποκωδικοποίησης Στον πίνακα Α.4 του παραρτήματος, παρουσιάζονται τα αποτελέσματα της αποκωδικοποίησης των 90 frames με την παραπάνω μέθοδο (στήλη Ι), καθώς και της αποκωδικοποίησης αυτών με δύο επιπλέον διαφορετικές υλοποιήσεις του σταδίου υπολογισμού των check μηνυμάτων (στήλες ΙΙ-ΙΙΙ): I. II. III. max min min R a Q Q / 2 mn nm nm nn m\ n nn m max min min R a 3 Q Q / 4 mn nm nm nn m\ n nn m max min min R a Q 3 Q / 4 mn nm nm nn m\ n n Nm Με την υλοποίηση ΙΙ, επιτρέπεται στο μέγιστο απόλυτο μήνυμα του check κόμβου να λάβει μεγαλύτερη τιμή απ ότι στην υλοποίηση Ι, ενώ με την υλοποίηση ΙΙΙ, η μέγιστη απόλυτη τιμή περιορίζεται ακόμη περισσότερο. Η υλοποίηση ΙΙ πλησιάζει τον αυθεντικό αλγόριθμο normalized Min-Sum. Για εκτέλεση 1000 το πολύ επαναλήψεων, παρατηρείται πως ενώ με τον αυθεντικό αλγόριθμο σημειώνονται 26 μη επιτυχώς αποκωδικοποιημένα frames από τα συνολικά 90, με τη μέθοδο Ι σημειώνονται μόνο 3. Τα αποτελέσματα είναι επίσης 70

81 ικανοποιητικά και με τις μεθόδους ΙΙ-ΙΙΙ, με 10 και 12 αποτυχίες αντίστοιχα. Σχετικά με τον αριθμό των επαναλήψεων, 47 frames που αποκωδικοποιούνται με τη μέθοδο Ι απαιτούν τις ίδιες ή λιγότερες επαναλήψεις από αυτές που απαιτούν κατά την αποκωδικοποίησή τους με τον αρχικό αλγόριθμο, ενώ μόνο 14 frames απαιτούν περισσότερες. Ιστογράμματα των απαιτούμενων επαναλήψεων, για την αρχική και την εναλλακτική έκδοση (smaller max c v message) του αλγορίθμου normalized Min-Sum. Στον πίνακα Α.5 παρουσιάζονται ξανά, για εκτέλεση τώρα 100 το πολύ επαναλήψεων, τα αποτελέσματα της αποκωδικοποίησης των frames με την υλοποίηση Ι, η οποία εφαρμόζεται, όπως εξηγήθηκε, μόνο στους check κόμβους που λαμβάνουν ζυγό αριθμό μηνυμάτων αρνητικού προσήμου (SCN start ). Εδώ γίνεται σύγκριση με τα αποτελέσματα που προκύπτουν αν αυτή η μέθοδος εφαρμοστεί σε αυτούς που λαμβάνουν μονό αριθμό μηνυμάτων αρνητικού προσήμου (UCN start ) ή ανεξαιρέτως σε όλους τους check κόμβους (AllCN). Είναι προφανές πως προκύπτουν πολύ χειρότερα αποτελέσματα και για τις δύο αυτές υλοποιήσεις, με 52 και 38 αποτυχίες αντίστοιχα. 71

82 2.4.3 Αποκωδικοποίηση μεταβάλλοντας τα LLR ορισμένων variable κόμβων Στην παράγραφο αυτή, δίνεται βάρος μόνο στα frames που δε συγκλίνουν επιτυχώς, κατά την αποκωδικοποίησή τους με τον αυθεντικό αλγόριθμο normalized Min-Sum και διπλής ακρίβειας υπολογισμούς. Συγκεκριμένα, εξετάζονται τα μηνύματα απόφασής τους και οι πληροφορίες που μπορούν να αντληθούν από τους μη ικανοποιημένους check κόμβους ενός trapping set. Στα διαγράμματα που ακολουθούν, παρουσιάζονται ενδεικτικά τα μηνύματα απόφασης που υπολογίζονται κατά την αποκωδικοποίηση των frames 1, 13 και 31. Με μπλε χρώμα απεικονίζονται τα μηνύματα των variable κόμβων που συμμετέχουν στο trapping set, όπου παγιδεύεται το κάθε frame, και που συνδέονται με ανικανοποίητο check κόμβο, ενώ με μαύρο χρώμα απεικονίζονται τα μηνύματα των υπόλοιπων κόμβων του trapping set. Μηνύματα απόφασης κατά την αποκωδικοποίηση με τον αλγόριθμο normalized Min-Sum. Και στα τρία διαγράμματα φαίνεται πως τα μηνύματα απόφασης ενός μικρού αριθμού variable κόμβων του trapping set έχουν συνεχώς τιμή που κυμαίνεται γύρω από το μηδέν. Αυτό φαίνεται να συμβαίνει ακόμη πιο έντονα στους κόμβους που συνδέονται με ανικανοποίητο check κόμβο. Το γεγονός αυτό βέβαια δεν αποτελεί κανόνα, όπως είναι ξεκάθαρο και από τα διαγράμματα. Η χαμηλή απόλυτη τιμή ενός μηνύματος απόφασης δε σημαίνει απαραίτητα πως ο αντίστοιχος variable κόμβος είναι μέρος του trapping set. Σημαίνει, όμως, πως το πιθανότερο είναι να συνδέεται με ανικανοποίητο check κόμβο. 72

83 Ο τροποποιημένος αλγόριθμος Με αφορμή τις παραπάνω παρατηρήσεις, ακολουθήθηκε η παρακάτω διαδικασία, για τα frames που δεν αποκωδικοποιούνται, με σκοπό να βρεθούν επιτυχώς κάποιοι λανθασμένοι variable κόμβοι, ώστε με την κατάλληλη αλλαγή της τιμής LLR αυτών, να αυξηθεί η πιθανότητα σύγκλισης ενός frame. Στην 20 η επανάληψη της εκτέλεσης του αλγορίθμου, και εφόσον δεν ικανοποιούνται στο τέλος αυτής όλες οι εξισώσεις ελέγχου ισοτιμίας, σημειώνονται οι check κόμβοι που δεν ικανοποιούνται. Βήμα 1: Για κάθε έναν από αυτούς, αναζητείται, ανάμεσα στους συνδεδεμένους variable κόμβους του, αυτός με το μικρότερο μήνυμα απόφασης, κατά απόλυτη τιμή. Βήμα 2: Ελέγχεται σε ποιους από τους παραπάνω υποψήφιους προς διόρθωση variable κόμβους αλλάζει το πρόσημο του μηνύματος απόφασης, έστω και μία φορά, από την 1 η έως την 20 η επανάληψη. Οι τιμές LLR αλλάζουν στους κόμβους που προέκυψαν από το βήμα 2. Αν δεν προκύπτουν κόμβοι από το βήμα 2, τα LLR αλλάζουν σε όλους τους κόμβους του βήματος 1. Η αποκωδικοποίηση ξεκινάει από την αρχή και τα παραπάνω επαναλαμβάνονται κάθε 20 επαναλήψεις. Ως παράδειγμα αναφέρεται εδώ και πάλι το frame 1. Στην 20 η επανάληψη, οι check κόμβοι που δεν ικανοποιούνται είναι οι 68, 99 και 458. Από τους συνδεδεμένους variable κόμβους του check κόμβου 68, αυτός με το μικρότερο απόλυτο μήνυμα απόφασης είναι ο 714. Το ίδιο ισχύει και για τον check κόμβο 458, ενώ στον check κόμβο 99 αντιστοιχεί ο variable κόμβος frame 1 - iteration 20 73

84 Όπως φαίνεται από το 1 ο διάγραμμα παρακάτω, τα μηνύματα απόφασης των variable κόμβων 714 και 1611 αλλάζουν πρόσημο στις 20 πρώτες επαναλήψεις. Οι τιμές LLR, λοιπόν, και των δύο αυτών κόμβων μεταβάλλονται κατάλληλα και η αποκωδικοποίηση του frame 1 ξεκινάει από την αρχή. Μηνύματα απόφασης κατά την αποκωδικοποίηση με τον αλγόριθμο normalized Min-Sum. Το βήμα 2 βοηθάει στην αποφυγή περιπτώσεων εύρεσης variable κόμβων στους οποίους δεν πρέπει να μεταβληθεί η τιμή του LLR. Κάτι τέτοιο συμβαίνει πχ. με το frame 46, όπου ενώ από το βήμα 1 προκύπτουν οι δύο υποψήφιοι κόμβοι 1709 και 1803, παρατηρείται πως ο κόμβος 1803 έχει σωστό LLR και σωστό μήνυμα απόφασης στο τέλος της 20 ης επανάληψης, οπότε δεν είναι επιθυμητή η αλλαγή του LLR αυτού. Ελέγχοντας, με το βήμα 2, το πρόσημο του μηνύματος απόφασης των δύο αυτών κόμβων, ο κόμβος 1803 απορρίπτεται. frame 46 - iteration 20 Υπάρχουν, βέβαια, και λίγες περιπτώσεις, όπως το frame 13, όπου απορρίπτεται ένας variable κόμβος, του οποίου το LLR θα έπρεπε κανονικά να μεταβληθεί (κόμβος 1683), και από την άλλη αλλάζει το σωστό LLR ενός κόμβου με σωστό μήνυμα απόφασης (κόμβος 570). Ωστόσο, αυτό το φαινόμενο είναι πιο σπάνιο σε σχέση με ό,τι περιγράφηκε στην προηγούμενη παράγραφο, άρα το βήμα 2 είναι απαραίτητο. 74

85 frame 13 - iteration 20 Ο κόμβος 714 στο frame 1, στον οποίο η μέθοδος αποφασίζει να αλλάξει την τιμή LLR, συνδέεται με δύο ανικανοποίητους check κόμβους. Με βάση το γεγονός αυτό, θα μπορούσε να θεωρηθεί μεγαλύτερη η πιθανότητα τέτοιοι variable κόμβοι να είναι λανθασμένοι, οπότε και να γίνεται μεγαλύτερη η μεταβολή των LLR αυτών. Είναι αρκετές, όμως, οι περιπτώσεις, όπως του frame 13, όπου δύο ανικανοποίητοι check κόμβοι συνδέονται με variable κόμβο (570), στον οποίο δεν πρέπει να μεταβληθεί καθόλου το LLR του, πόσο μάλλον να μεταβληθεί εντονότερα. Η προσθήκη, λοιπόν, του παραπάνω συλλογισμού στη διαδικασία που αναλύεται σε αυτήν την παράγραφο, δεν προσφέρει περισσότερα θετικά αποτελέσματα. Η εκ νέου αποκωδικοποίηση των frames με τη μέθοδο διόρθωσης τιμών LLR ξεκινά στην 21 η επανάληψη, έπειτα στην 41 η, στην 61 η και ούτω καθ' εξής. Αυτή η μέθοδος δεν εγγυάται πως θα βρεθούν οι σωστοί variable κόμβοι προς αλλαγή των αντίστοιχων LLR, ούτε πως θα πραγματοποιηθεί επιτυχής αποκωδικοποίηση, έστω κι αν βρεθούν οι κατάλληλοι κόμβοι. Ουσιαστικά αυτό που κάνει είναι να δραστηριοποιήσει το frame που έχει παγιδευτεί σε trapping set, ώστε να ξεκινήσει από την αρχή η αποκωδικοποίησή του, έχοντας τώρα νέα αρχικά δεδομένα. Η μεταβολή της τιμής LLR ενός variable κόμβου μπορεί να γίνει με διάφορους τρόπους: η απόλυτη τιμή του LLR μπορεί να μηδενιστεί, να πάρει την τιμή που θα είχε αν δεν υπήρχε ο θόρυβος (LLR noiseless ), να ενισχυθεί ακόμη περισσότερο (πχ. 5. LLR noiseless ) ή να διατηρήσει την τιμή που ήδη έχει (LLR real ). Στις τρεις τελευταίες περιπτώσεις απαιτείται το κατάλληλο πρόσημο, το οποίο μπορεί να προκύψει ως αντίθετο του προσήμου είτε του αρχικού LLR (LLR real ) είτε του μηνύματος απόφασης στην 20 η επανάληψη (DecMs). Συνδυάζοντας τα παραπάνω, προκύπτουν 7 διαφορετικοί τρόποι μεταβολής της τιμής ενός LLR. 75

86 I. LLR new 0 II. LLR signllr LLR new real noiseless III. LLR signdecms LLR new noiseless IV. LLR signllr LLR 5 new real noiseless V. LLR signdecms LLR 5 new VI. LLR signllr LLR new real real VII. LLR signdecms LLR new noiseless real Αποτελέσματα αποκωδικοποίησης Στον πίνακα Α.6 του παραρτήματος φαίνονται τα αποτελέσματα της εκ νέου αποκωδικοποίησης των 26 frames που αποτυγχάνουν με τον αλγόριθμο normalized Min-Sum, καθώς και του frame 72, το οποίο χρειάζεται 57 επαναλήψεις ώστε να συγκλίνει σε έγκυρη κωδική λέξη. Εκτελώντας τη μέθοδο III, παρατηρούνται οι περισσότερες επιτυχίες, συγκεκριμένα 17, ενώ ακολουθεί η μέθοδος V με 12 επιτυχίες. Αυτό είναι λογικό, εφόσον το πρόσημο της καινούργιας τιμής ενός LLR προκύπτει σύμφωνα με το μήνυμα απόφασης και όχι σύμφωνα με το αρχικό LLR. Η μέθοδος βασίζεται στο σκεπτικό πως από τη στιγμή που αποφασίζεται να αλλαχθεί το LLR ενός variable κόμβου, αυτός ο κόμβος είναι πιθανότατα λανθασμένος στο τέλος της 20 ης επανάληψης, δηλαδή ανήκει στο trapping set και έχει λανθασμένο μήνυμα απόφασης. Αν πράγματι, λοιπόν, ο κόμβος είναι μέρος του trapping set, δε σημαίνει απαραίτητα, όπως αναλύθηκε και σε προηγούμενη παράγραφο, πως και η αρχική τιμή LLR είναι επίσης λανθασμένη, άρα η αλλαγή του προσήμου μιας σωστής τιμής LLR θα έκανε την κατάσταση χειρότερη. 76

87 Κεφάλαιο 3 Μελέτη των επιπτώσεων του θορύβου στα trapping sets 3.1 Σχεδιασμός διαγραμμάτων BER με βάση την κωδική λέξη και το θόρυβο συγκεκριμένου frame Σε προηγούμενο κεφάλαιο, παρουσιάστηκαν, για τα 90 καταγεγραμμένα frames από το σύστημα hardware, τα αποτελέσματα της αποκωδικοποίησής τους με τον αλγόριθμο normalized Min-Sum, εκτελώντας πράξεις διπλής ακρίβειας και 1000 το πολύ επαναλήψεις. Αναφέρθηκαν περιπτώσεις όπου σε μία κωδική λέξη προστίθεται διαφορετικός θόρυβος κι έτσι προκύπτουν διαφορετικά frames, με κάποια από αυτά να συγκλίνουν ενώ άλλα να μη συγκλίνουν. Αναλύθηκε, επίσης, και μία περίπτωση όπου διαφορετικά μεταξύ τους frames, με διαφορετική κωδική λέξη και διαφορετικό θόρυβο, συμπεριφέρονται παρόμοια κατά την αποκωδικοποίησή τους και παγιδεύονται τελικά στο ίδιο trapping set. Το βασικό ερώτημα που προκύπτει είναι το εξής: η αποτυχία αποκωδικοποίησης ενός frame και η εμφάνιση ενός trapping set οφείλεται στο θόρυβο που προστίθεται στο μεταδιδόμενο σήμα ή παίζει ρόλο και η ίδια η κωδική λέξη; Το γεγονός ότι μία κωδική λέξη συγκλίνει, αν προστεθεί σε αυτήν θόρυβος n 1, ενώ δε συγκλίνει με θόρυβο n 2, είναι μία ένδειξη πως κύριο αίτιο της αποτυχίας είναι ο θόρυβος. Στην προσπάθεια να απαντηθεί το παραπάνω ερώτημα, επιλέχθηκε το frame 31 ώστε, με βάση τα χαρακτηριστικά του, να διεξαχθούν συγκεκριμένα πειράματα, με σκοπό τη δημιουργία διαγραμμάτων BER. Το frame 31, το οποίο είναι παρόμοιο με το frame 44, έχουν δηλαδή ίδια κωδική λέξη αλλά και ίδιο θόρυβο, διαφορετικής όμως στάθμης, δεν καταφέρνει να αποκωδικοποιηθεί επιτυχώς. Το ίδιο ισχύει και για το frame 44. Αντιθέτως, το frame 84, το οποίο έχει και αυτό την ίδια κωδική λέξη με τα frames 31 και 44, αλλά προστίθεται σε αυτήν διαφορετικός θόρυβος, συγκλίνει επιτυχώς σε 3 μόλις επαναλήψεις. 77

88 Η τιμή BER που σημειώνεται σε κάθε στάθμη θορύβου στα διαγράμματα που ακολουθούν σε ολόκληρο το κεφάλαιο προκύπτει έπειτα από εκτέλεση 70 το πολύ επαναλήψεων του αλγορίθμου normalized Min-Sum, με παράγοντα κανονικοποίησης a = 0.75 και αφού έχουν μετρηθεί το λιγότερο λανθασμένα bits πληροφορίας και το λιγότερο επιτυχώς απεσταλμένα bits πληροφορίας. Το BER εδώ αφορά τον αριθμό λαθών που έχουν συμβεί μόνο στα 1512 πρώτα bits μιας κωδικής λέξης Α' Σειρά πειραμάτων - Συμπεράσματα Στα διαγράμματα που ακολουθούν, παρουσιάζεται, για κάθε στάθμη θορύβου, το BER που προκύπτει: μεταδίδοντας τυχαίες κωδικές λέξεις και προσθέτοντας σε αυτές τυχαίο κάθε φορά θόρυβο (μαύρη γραμμή). μεταδίδοντας πάντα την κωδική λέξη που προέρχεται από το frame 31 και προσθέτοντας σε αυτήν τυχαίο κάθε φορά θόρυβο (μπλε γραμμή). μεταδίδοντας τυχαίες κωδικές λέξεις και προσθέτοντας σε αυτές πάντα το θόρυβο που προέρχεται από το frame 31 (κόκκινη γραμμή). μεταδίδοντας τυχαίες κωδικές λέξεις και προσθέτοντας σε αυτές πάντα τον αντίθετο θόρυβο που προέρχεται από το frame 31 (πορτοκαλί γραμμή). Διαγράμματα BER, με βάση την κωδική λέξη και το θόρυβο του frame 31. Για την εξομοίωση της αποκωδικοποίησης στις δύο τελευταίες περιπτώσεις (BER τυχαίων κωδικών λέξεων - σταθερού θορύβου), θα πρέπει ο θόρυβος του frame 31 να προσαρμοστεί κατάλληλα σε κάθε νέα στάθμη θορύβου. Γνωρίζοντας την κωδική λέξη του frame 31, τις τιμές LLR των variable κόμβων του και τη στάθμη θορύβου στην οποία έγινε η αρχική εξομοίωση της αποκωδικοποίησής του (E b /N 0 = 3.9 db), μπορεί να βρεθεί και ο θόρυβος αυτού στη συγκεκριμένη στάθμη ως εξής: 78

89 noise signal signal received transmitted 2 2 received Eb / N s LLR 1 signal, s 10 signal 2 codeword 1 transmitted log2cr Με CR συμβολίζεται ο ρυθμός του κώδικα (code rate), ο οποίος ισούται με Ο θόρυβος που αντιστοιχεί σε οποιαδήποτε άλλη στάθμη θορύβου, καθώς και ο αντίθετός του μπορούν τώρα να υπολογιστούν από τις σχέσεις: noise noise new new s s new new noise s noise s Όπως είναι φυσικό, η περιοχή του error floor δεν εμφανίζεται στη μαύρη καμπύλη, κι αυτό γιατί η εξομοίωση σε software δεν μπορεί να φτάσει σε τόσο χαμηλά επίπεδα θορύβου. H μπλε καμπύλη σχεδόν συμπίπτει με τη μαύρη, γεγονός το οποίο οδηγεί στο συμπέρασμα πως η κωδική λέξη που μεταδίδεται δεν καθορίζει την παρουσία του error floor στο διάγραμμα. Αυτό είναι λογικό, εφόσον δεν είναι δυνατόν κάθε φορά που θα τυχαίνει να μεταδίδεται μία συγκεκριμένη κωδική λέξη να υπάρχει μεγαλύτερη πιθανότητα αποτυχίας. Αντιθέτως, στην κόκκινη καμπύλη, αλλά και στην πορτοκαλί, παρατηρείται πως ο θόρυβος του frame 31 και ο αντίθετός του προκαλούν την εμφάνιση error floor σχετικά νωρίς, σε επίπεδα θορύβου περίπου 3 db. Στην περιοχή waterfall των δύο τελευταίων διαγράμματων, προχωρώντας προς σημεία χαμηλότερου θορύβου, μεγαλύτερου δηλαδή λόγου E b /N 0, όλο και περισσότερα frames παγιδεύονται στο trapping set των 10 variable κόμβων, όπου παγιδεύεται και το frame 31, από το οποίο προέρχεται ο θόρυβος. Ταυτόχρονα μειώνεται ο αριθμός των frames που εμφανίζουν πολύ περισσότερα από 10 λάθη (σε bits πληροφορίας και ισοτιμίας) Variable κόμβοι στο trapping set του frame 31. Τα Trapping Sets των ανεπιτυχώς αποκωδικοποιημένων frames (περιοχή waterfall). 79

90 Στην περιοχή error floor τώρα, δηλαδή πάνω από 3 db, μελετήθηκαν τα frames που δεν αποκωδικοποιήθηκαν επιτυχώς και διαπιστώθηκε πως σχεδόν όλα παγιδεύονται στο ίδιο trapping set, αυτό του frame 31, πράγμα αναμενόμενο από τη στιγμή που ο θόρυβος είναι σταθερός. Υπάρχουν λίγες εξαιρέσεις κάποιων frames, τα οποία παγιδεύονται στον ίδιο βασικό κορμό αυτού του trapping set, με κάποιους variable κόμβους όμως να λείπουν ή κάποιους καινούργιους να εμφανίζονται σε αυτό. Στα επόμενα δύο σχήματα, απεικονίζονται με τελείες οι variable κόμβοι που συνθέτουν τα trapping sets 200 ων frames, τα οποία δεν αποκωδικοποιούνται στην περίπτωση προσθήκης του θορύβου του frame 31 στα 3.9 db, και τα trapping sets όπου παγιδεύονται 201 frames της περίπτωσης προσθήκης του αντίθετου θορύβου του frame 31 στα 3.7 db. Τα Trapping Sets των ανεπιτυχώς αποκωδικοποιημένων frames (περιοχή error floor). Από τη στιγμή που ο θόρυβος, ο οποίος εισάγεται στις κωδικές λέξεις που μεταδίδονται, δεν είναι τυχαίος, είναι λογικό, σε όλες αυτές τις λέξεις που δεν αποκωδικοποιούνται στην περιοχή του error floor, κάποια bits να έχουν πάντα τις ίδιες συγκεκριμένες τιμές. Στον πίνακα που ακολουθεί φαίνονται οι variable κόμβοι για τους οποίους ισχύει η παραπάνω παρατήρηση, καθώς και οι τιμές που πάντα έχουν τα αντίστοιχα bits. Σταθερές τιμές συγκεκριμένων variable κόμβων στα ανεπιτυχώς αποκωδικοποιημένα frames της περιοχής error floor. 80

91 Είναι προφανές πως προσθέτοντας τον αντίθετο θόρυβο, ουσιαστικά παγιδεύονται στο ίδιο trapping set οι κωδικές λέξεις με συμπληρωματικές τιμές στα bits των variable κόμβων που αναφέρονται στον πίνακα. Παρατηρείται, επίσης, πως όλοι αυτοί οι κόμβοι αποτελούν μέρος του trapping set, και μάλιστα, και οι 5 variable κόμβοι του trapping set, που αντιστοιχούν σε bits πληροφορίας, έχουν πάντα σταθερή τιμή, κάτι που ισχύει μόνο για τους 2 variable κόμβους του trapping set, που αντιστοιχούν σε bits ισοτιμίας. Εφόσον ο θόρυβος που εξάγεται από το frame 31, σε συνδυασμό με κωδικές λέξεις κατάλληλων τιμών bits σε συγκεκριμένους variable κόμβους, ενεργοποιούν με κάποια πιθανότητα το trapping set του frame 31, θα μπορούσε κανείς να υπολογίσει το πλήθος των κωδικών λέξεων που θα υποστήριζαν αυτό το trapping set. Όμως, αυτονόητο είναι πως ο θόρυβος του frame 31 που αναλύεται εδώ, όπως και ο αντίθετός του, δεν είναι οι μοναδικοί που οδηγούν συγκεκριμένες κωδικές λέξεις σε αποτυχημένη αποκωδικοποίηση. Αν εφαρμοστεί άλλος θόρυβος, τέτοιος ώστε να μπορεί και πάλι να ενεργοποιηθεί το συγκεκριμένο trapping set, τότε κάποια άλλα frames θα παγιδευτούν στη δομή αυτή. Ανακαλύπτοντας όλα τα είδη θορύβου που θα είχαν τη δυνατότητα ενεργοποίησης του trapping set, θα είχε νόημα να γίνουν γνωστές και οι κατάλληλες κωδικές λέξεις που θα συνέβαλλαν σε αυτό Β' Σειρά πειραμάτων - Συμπεράσματα Αφού έγινε σαφές πως ο θόρυβος του frame 31 είναι υπεύθυνος για την εμφάνιση error floor και την αποτυχημένη αποκωδικοποίηση συγκεκριμένων κωδικών λέξεων, το επόμενο βήμα ήταν να σχεδιαστούν καινούργια διαγράμματα BER, μεταδίδοντας πάντα τυχαίες κωδικές λέξεις. Αυτή τη φορά, όμως, σε κάθε στάθμη θορύβου: εισάγεται ο κατάλληλα προσαρμοσμένος θόρυβος του frame 31 μόνο στους 10 variable κόμβους του trapping set όπου αυτό παγιδεύεται, ενώ σε όλους τους υπόλοιπους κόμβους εισάγεται τυχαίος θόρυβος (μωβ γραμμή). εισάγεται στους 10 variable κόμβους του trapping set τυχαίος θόρυβος, ενώ σε όλους τους υπόλοιπους κόμβους ο κατάλληλα προσαρμοσμένος θόρυβος του frame 31 (πράσινη γραμμή). εισάγεται ο κατάλληλα προσαρμοσμένος θόρυβος του frame 31 μόνο στους 5 variable κόμβους πληροφορίας του trapping set, ενώ στους υπόλοιπους κόμβους εισάγεται τυχαίος (κίτρινη γραμμή). 81

92 Διαγράμματα BER, με βάση το θόρυβο του frame 31. Από τα δύο πρώτα διαγράμματα (μωβ και πράσινη καμπύλη), προκύπτει αμέσως το εξής βασικό συμπέρασμα: υπεύθυνος για την εμφάνιση του error floor είναι μόνο ο θόρυβος ο οποίος προστίθεται στα bits των 10 variable κόμβων που συνθέτουν το trapping set του frame 31. Ο θόρυβος των υπόλοιπων 2006 κόμβων είναι αδιάφορος, εφόσον, όχι μόνο δεν προκαλεί την εμφάνιση του error floor, αλλά με βάση αυτόν προκύπτει και διάγραμμα BER (πράσινη καμπύλη) καλύτερο κι από αυτό της μαύρης καμπύλης. Πρέπει να σημειωθεί εδώ πως το πιθανότερο είναι να μην προκαλείται το error floor από το θόρυβο και των 10 variable κόμβων του trapping set, αλλά από το θόρυβο ενός υποσυνόλου αυτών. Με περαιτέρω διερεύνηση και νέα BER plots, όπου ο θόρυβος του frame 31 θα προστίθεται σε υποσύνολα των 10 αυτών κόμβων, είναι δυνατόν να βρεθούν ποιοι ακριβώς είναι οι υπεύθυνοι. Το σίγουρο είναι πως για να εμφανιστεί η περιοχή του error floor στο διάγραμμα BER, απαιτείται ο θόρυβος του frame 31 να εισαχθεί και σε variable κόμβους του trapping set, οι οποίοι αντιστοιχούν σε bits ισοτιμίας, μιας και η προσθήκη αυτού του θορύβου μόνο στα bits πληροφορίας του trapping set δεν έχει ως αποτέλεσμα την παρουσία του error floor στο διάγραμμα (κίτρινη καμπύλη). Σχετικά με τα trapping sets τα οποία παρατηρούνται στην περιοχή error floor της μωβ καμπύλης, ισχύει ό,τι και για την κόκκινη και πορτοκαλί καμπύλη: όλα τα frames που δεν αποκωδικοποιούνται σε επίπεδα θορύβου πάνω από 3.3 db περίπου, παγιδεύονται στο ίδιο trapping set, αυτό του frame 31, ή έστω σε παρόμοιο, παρά το γεγονός ότι εδώ ο θόρυβος των υπόλοιπων κόμβων, οι οποίοι δεν ανήκουν σε αυτό, είναι τυχαίος. Επιπλέον, εφόσον ο θόρυβος στο trapping set είναι σταθερός, συγκεκριμένοι variable κόμβοι των frames της περιοχής error floor έχουν πάντα (ή σχεδόν πάντα) σταθερές τιμές στα αντίστοιχα bits, όπως ακριβώς φαίνεται στον προηγούμενο πίνακα της περίπτωσης εφαρμογής του απαράλλακτου θορύβου του frame 31 σε όλους τους κόμβους μίας τυχαίας κωδικής λέξης. 82

93 Στο επόμενο σχήμα απεικονίζεται και πάλι το διάγραμμα BER που προκύπτει μεταδίδοντας τυχαίες κωδικές λέξεις με τυχαίο προστιθέμενο θόρυβο σε αυτές. Απεικονίζονται επίσης και τα 6 διαγράμματα που προκύπτουν τώρα χρησιμοποιώντας την κωδική λέξη και το θόρυβο που εξάγονται από το καταγεγραμμένο frame 49. Τα αποτελέσματα δε χρειάζεται να αναλυθούν ιδιαίτερα, μιας και προφανώς είναι ίδια με αυτά που αντιστοιχούν στο frame 31. Διαγράμματα BER, με βάση την κωδική λέξη και το θόρυβο του frame 49. Πλέον, έχει επισημανθεί πως υπαίτιος για την εμφάνιση του error floor της μωβ καμπύλης του σχήματος είναι ο εξαγόμενος θόρυβος από το frame 31, και ειδικότερα αυτός των 10 variable κόμβων που συγκροτούν το trapping set του frame 31. Γι' αυτό και μελετήθηκαν λεπτομερώς τα 198 frames που δεν αποκωδικοποιούνται σε επίπεδα θορύβου με λόγο E b /N 0 = 3.5 db του μωβ διαγράμματος. Δημιουργήθηκε, έτσι, ο παρακάτω πίνακας, με σκοπό να διερευνηθεί η επίδραση του σταθερού θορύβου του frame 31 στους 10 προαναφερθέντες variable κόμβους. Σε αυτόν τον πίνακα καταγράφεται, για καθέναν από αυτούς τους κόμβους: σε πόσα frames, από τα 198 που απέτυχαν, ο κόμβος παραμένει λανθασμένος και αποτελεί μέρος του trapping set. σε πόσες κωδικές λέξεις, από τις 198 που μεταδόθηκαν και δεν αποκωδικοποιήθηκαν, το αντίστοιχο bit έχει μία συγκεκριμένη τιμή και ποια. ποιος είναι ο σταθερός (από το frame 31) προστιθέμενος θόρυβος σε αυτόν τον κόμβο. 83

94 Πληροφορίες για τους variable κόμβους του trapping set του frame 31. Υπενθυμίζεται εδώ, πως δεν έχουν όλοι οι variable κόμβοι ενός trapping set λανθασμένη τιμή LLR, ενώ από αυτούς που είναι πράγματι εξαρχής λανθασμένοι, άλλοι έχουν περισσότερο παραμορφωμένη τιμή LLR, σε σχέση με την ιδανική, και άλλοι λιγότερο, που σημαίνει ότι σε κάποιους κόμβους εισέρχεται ισχυρότερος θόρυβος. Ισχυρός θόρυβος θεωρείται αυτός του οποίου η απόλυτη τιμή είναι μεγαλύτερη του 1, αφού όταν μεταδίδεται τιμή σήματος -1 (bit '0'), θόρυβος μεγαλύτερος του +1 αλλοιώνει το σωστό πρόσημο, ενώ για τιμή σήματος +1 (bit '1'), το πρόσημο αλλοιώνεται με θόρυβο μικρότερο του -1. Με μια πρώτη ματιά στον πίνακα, φαίνεται πως σε 7 από τους 10 variable κόμβους του trapping set του frame 31 εισέρχεται μεγάλος θόρυβος, και μάλιστα σε 4 από αυτούς η απόλυτη τιμή του θορύβου είναι μεγαλύτερη από 1.5, πράγμα που σημαίνει πως ο θόρυβος είναι αρκετά ισχυρός. Παρατηρείται, πως τα bits των 5 από αυτούς τους 7 κόμβους, έχουν την ίδια τιμή σε όλα τα μη επιτυχώς αποκωδικοποιημένα frames. Αυτή η τιμή σε κάθε κόμβο είναι τέτοια ώστε ο αντίστοιχος σταθερός θόρυβος να οδηγεί σε λανθασμένες τιμές LLR. Είναι λογικό, λοιπόν, τέτοιου είδους variable κόμβοι, με μεγάλο δηλαδή προστιθέμενο θόρυβο, κατάλληλη τιμή bit και άρα αρκετά λανθασμένο LLR, να συμμετέχουν σε ένα trapping set, όπως εδώ οι κόμβοι 392, 1249, 1459, 1849 και 1970, οι οποίοι συμμετέχουν και στα 198 νέα trapping sets. Ο κόμβος 489 φαίνεται πως δε συμμετέχει σε όλα τα trapping sets, παρόλο που ο θόρυβός του είναι αρκετά μεγάλος και σχεδόν σε όλα τα frames έχει την ίδια κατάλληλη τιμή στο αντίστοιχο bit, ώστε τελικά να έχει σχεδόν πάντα λανθασμένη τιμή LLR. Κάτι αντίστοιχο συμβαίνει και με τον κόμβο 1860, ο οποίος συμμετέχει στα trapping sets των μισών περίπου ανεπιτυχώς αποκωδικοποιημένων frames. Πιο συγκεκριμένα, παρά το γεγονός ότι αυτός ο κόμβος έχει λανθασμένο LLR σε 166 frames από τα 198, συμμετέχει στα trapping sets μόνο των 112 frames. Σχετικά με τον variable κόμβο 1278, παρατηρείται από τον πίνακα ότι ο θόρυβός του έχει απόλυτη τιμή μικρότερη από 1, κι έτσι το LLR που προκύπτει έχει σωστό πρόσημο, όποιο bit κι αν έχει μεταδοθεί. Ωστόσο, ο κόμβος αυτός είναι παρών σε όλα τα trapping sets, για εκείνες τις κωδικές λέξεις, όμως, που το αντίστοιχο bit έχει τιμή '0', δηλαδή ο κόμβος έχει σωστό LLR αλλά εξασθενημένο. Παρομοίως, οι δύο variable κόμβοι 1562 και 1736 αποτελούν μέρος όλων των trapping sets, ανεξάρτητα από τις τιμές των bits που έχουν μεταδοθεί και παρά το γεγονός πως ο θόρυβος που προστίθεται σε αυτούς είναι αρκετά μικρός. 84

95 Οι παραπάνω τελευταίες παρατηρήσεις αποτελούν μια ένδειξη πως, σε αντίθεση με τους variable κόμβους 1278, 1562 και 1736, οι δύο κόμβοι 489 και 1860 ίσως δεν ανήκουν στο βασικό κορμό του συγκεκριμένου trapping set Γ' Σειρά πειραμάτων - Συμπεράσματα Βλέποντας και πάλι στον τελευταίο πίνακα πως σε κάποιους variable κόμβους του trapping set εισέρχεται πολύ μεγάλος θόρυβος σε σχέση με τους υπολοίπους, προκύπτει το εξής ζήτημα: τι θα συμβεί αν σε κάποιον από τους κόμβους στους οποίους ο θόρυβος είναι ισχυρός προστεθεί μικρότερος θόρυβος ή και το αντίθετο; Αν, για παράδειγμα, στον κόμβο 392 εισέλθει ο θόρυβος του κόμβου 1736; Προκειμένου, λοιπόν, να γίνει πιο κατανοητή η επίπτωση του θορύβου του κάθε variable κόμβου του trapping set σε ένα διάγραμμα BER, σχετικά με την εμφάνιση της περιοχής error floor σε αυτό, δημιουργήθηκαν 9 νέα παρόμοια διαγράμματα με αυτό της μωβ καμπύλης, ανταλλάσσοντας, κάθε φορά, το θόρυβο δύο variable κόμβων. Πιο αναλυτικά, για το σχεδιασμό κάθε διαγράμματος, ακολουθούνται τα παρακάτω βήματα: μεταδίδονται πάντα τυχαίες κωδικές λέξεις. εισάγεται τυχαίος θόρυβος σε όλους τους variable κόμβους που δεν ανήκουν στο trapping set του frame 31 (2006 κόμβοι). εισάγεται ο θόρυβος του frame 31, μόνο στους κόμβους που συγκροτούν το trapping set αυτού του ίδιου frame (10 κόμβοι - v 1 v 10 ). ο θόρυβος ενός από τους 10 variable κόμβους του trapping set, v a, αντικαθίσταται από το θόρυβο ενός άλλου κόμβου, v b, και αντιστρόφως. Διαγράμματα BER, με βάση το θόρυβο στο trapping set του frame 31, αντικαθιστώντας το θόρυβο ενός κόμβου με αυτόν ενός άλλου. Το error floor εμφανίζεται σε όλα τα διαγράμματα και παρατηρείται πως ανεβοκατεβαίνει, αν θεωρηθεί ως καμπύλη αναφοράς το έντονο μωβ διάγραμμα BER. 85

96 Αυτό σημαίνει, ξεκάθαρα, πως παίζει σημαντικό ρόλο, σχετικά με το πόσο γρήγορα και έντονα θα εμφανιστεί το error floor στις καμπύλες (δηλαδή σε ποια επίπεδα BER), όχι μόνο η ποσότητα του θορύβου που προστίθεται στους κόμβους ενός trapping set αλλά και σε ποιο συγκεκριμένο κόμβο εισέρχεται ο πολύς και ο λίγος θόρυβος. Πληροφορίες για τους variable κόμβους του trapping set του frame 31, για 10 διαφορετικές περιπτώσεις εφαρμογής σταθερού θορύβου σε αυτούς. 86

97 Εκτός από τα διαγράμματα, δημιουργήθηκε επίσης ο προηγούμενος πίνακας, όπου καταγράφονται στοιχεία που προέκυψαν από τη μελέτη των frames που δεν αποκωδικοποιούνται σε στάθμη θορύβου 3.5 db της κάθε περίπτωσης. Αναφέρθηκε, σε προηγούμενη παράγραφο, πως υπάρχουν πολλά είδη θορύβου, πέρα από τον ακριβή θόρυβο του frame 31, που οδηγούν τον αποκωδικοποιητή σε αποτυχία και προκαλούν την ενεργοποίηση του trapping set του frame 31. Οι 9 περιπτώσεις θορύβου, που αναλύονται στην ενότητα αυτή, είναι ελάχιστα από τα πολλά παραδείγματα θορύβου που έχουν αυτήν την ιδιότητα, για τις κατάλληλες, φυσικά, κωδικές λέξεις. Συγκρίνοντας τα 9 διαγράμματα με το μωβ διάγραμμα αναφοράς αλλά και μεταξύ τους, και αντλώντας πληροφορίες από τον παραπάνω πίνακα, μπορούν να εξαχθούν συμπεράσματα σχετικά με τη βαρύτητα του κάθε variable κόμβου στο trapping set. Η περιοχή error floor των δύο διαγράμματων BER 'ii' και 'iii', τα οποία προκύπτουν όταν στον κόμβο 392 εφαρμόζεται αρκετά μικρότερος θόρυβος, εμφανίζεται χαμηλότερα σε σχέση με το διάγραμμα αναφοράς 'i'. Συγκρίνοντας αυτές τις δύο καμπύλες μεταξύ τους, φαίνεται πως όσο λιγότερος θόρυβος προστίθεται σε αυτόν τον κόμβο, τόσο λιγότερο παγιδεύεται ο αποκωδικοποιητής στο trapping set του frame 31 και τόσο καλύτερα αυτός συμπεριφέρεται. Στην περίπτωση 'iii', όπου ο θόρυβός του είναι πολύ κοντά στο 0, και πάλι αυτός ο κόμβος συμμετέχει σε όλα τα trapping sets, πράγμα το οποίο δείχνει ότι παρασύρεται από άλλους κόμβους και δε φταίει πάντα ο θόρυβος του ίδιου. Φαίνεται, λοιπόν, πως ο θόρυβος του κόμβου 392 καθορίζει σε μεγάλο βαθμό την ενεργοποίηση του trapping set, αλλά ακόμα κι αν το trapping set ενεργοποιηθεί λόγω του θορύβου άλλων κόμβων, ο 392 και πάλι συμμετέχει σε αυτό, πράγμα που σημαίνει ότι αποτελεί μέρος του βασικού κορμού του. Ακριβώς ό,τι ισχύει για τον κόμβο 392 ισχύει και για τον κόμβο 1249, όπως φαίνεται από τα διαγράμματα και τους πίνακες των περιπτώσεων 'v' και 'vi'. 87

98 Ο κόμβος 1562 δείχνει επίσης να επηρεάζει αισθητά την ενεργοποίηση του trapping set και να είναι σημαντικό κομμάτι αυτού, αφού με μεγαλύτερο θόρυβο σε αυτόν (περίπτωση 'viii'), το error floor γίνεται ορατό σε υψηλότερα επίπεδα BER. Επιπλέον, όπως και οι κόμβοι 392 και 1249, έτσι και ο 1562 συμμετέχει σε όλα τα trapping sets, είτε έχει προστεθεί σε αυτόν μικρός είτε μεγάλος θόρυβος. Ο κόμβος 1860, αντιθέτως, μπορεί να θεωρηθεί αδιάφορος, όσον αφορά την επίδραση του θορύβου του στην ενεργοποίηση του trapping set, αφού στην περίπτωση 'viii', όπου ο θόρυβός του γίνεται πολύ μικρός, ο κόμβος εμφανίζεται μόνο σε 3 από τα συνολικά 199 trapping sets, ενώ έτσι κι αλλιώς, με αρκετό θόρυβο και πάλι δεν εμφανίζεται σε όλα τα trapping sets, σε καμία από τις υπόλοιπες περιπτώσεις. Το αρκετά χειρότερο error floor του διαγράμματος 'viii', οφείλεται, όπως εξηγήθηκε, στον ισχυρότερο θόρυβο του κόμβου Ο κόμβος 489 σε καμία περίπτωση εφαρμογής θορύβου δε συμμετέχει σε όλα τα trapping sets. Όταν, μάλιστα, στην περίπτωση 'iv' ο θόρυβός του μικραίνει σε σχέση με αυτόν της περίπτωσης 'i', τότε εμφανίζεται σχεδόν στα μισά trapping sets. Ίσως, λοιπόν, ο ίδιος ο θόρυβος που προστίθεται στον κόμβο 489 να καθορίζει σε κάποιο βαθμό τη συμμετοχή του στο trapping set. Δε φαίνεται, όμως, να καθορίζει τόσο την πιθανότητα να παγιδευτεί ο αποκωδικοποιητής σε αυτό το trapping set όσο την καθορίζει ο κόμβος 1459, εφόσον το error floor της καμπύλης 'iv' είναι λίγο πιο ψηλά από αυτό της καμπύλης 'i', γεγονός το οποίο πιθανότατα οφείλεται στην προσθήκη περισσότερου θορύβου στον κόμβο

99 Στην περίπτωση 'ii', όπου στον κόμβο 1278 εισάγεται πολύ μεγαλύτερος θόρυβος, σε σχέση με αυτόν της περίπτωσης 'i', το error floor βελτιώνεται κι αυτό οφείλεται στο λιγότερο θόρυβο του κόμβου 392. Άρα η επίδραση του θορύβου του κόμβου 392 είναι μεγαλύτερη από αυτήν του κόμβου Στις περιπτώσεις 'v' και 'vii', όπου ο θόρυβος του 1278 και πάλι είναι μεγαλύτερος, το error floor παραμένει το ίδιο ή βελτιώνεται ελάχιστα, άρα ο θόρυβος του κόμβου 1278 επηρεάζει την ενεργοποίηση του trapping set, όπως περίπου οι κόμβοι 1249 και Από την περίπτωση θορύβου 'ix', φαίνεται πως ο κόμβος 1849, είτε με πολύ είτε με λίγο θόρυβο, είναι πάντα μέρος του trapping set. Μειώνοντας όμως αρκετά το θόρυβό του, ενώ παράλληλα αυξάνοντας το θόρυβο του 1736, προκύπτει καλύτερο διάγραμμα BER στην περιοχή error floor, όπως φαίνεται από την καμπύλη 'ix', που σημαίνει πως, κατά πάσα πιθανότητα, ο θόρυβος του κόμβου 1849 συνεισφέρει περισσότερο στην ενεργοποίηση του trapping set από αυτόν του κόμβου Τέλος, έχοντας ως ένδειξη το error floor της καμπύλης 'x', το οποίο είναι κάπως καλύτερο από αυτό της καμπύλης 'i', προκύπτει πως ο θόρυβος του κόμβου 1970, συγκριτικά με τον κόμβο 1736, φαίνεται να παίζει κάπως σημαντικότερο ρόλο στην ενεργοποίηση του trapping set. Και οι δύο αυτοί κόμβοι αποτελούν μέρος του βασικού κορμού του trapping set, αφού, είτε με μεγάλο είτε με μικρό θόρυβο, εμφανίζονται πάντα σε αυτό. 89

100 Με τις συγκρίσεις των διαγραμμάτων BER, προέκυψαν σημαντικά συμπεράσματα, σχετικά με το ποιοι είναι πιο σημαντικοί κόμβοι στο trapping set. Για να είναι, όμως, ακόμα πιο αξιόπιστα και λεπτομερή τα αποτελέσματα, απαιτούνται πολλά περισσότερα τέτοια διαγράμματα, τα οποία δε θα προκύπτουν απαραίτητα από την ανταλλαγή του θορύβου δύο variable κόμβων του trapping set. Μία εναλλακτική μέθοδος θα ήταν να μεταβάλλεται ο θόρυβος κάθε κόμβου ξεχωριστά, διατηρώντας αυτόν των υπολοίπων σταθερό. Συνοψίζοντας τα συμπεράσματα που απορρέουν από τα ήδη υπάρχοντα διαγράμματα, οι variable κόμβοι δε συνεισφέρουν με τον ίδιο τρόπο στην ενεργοποίηση του trapping set του frame 31. Δύο ιδιαίτερα σημαντικοί κόμβοι είναι οι 392 και 1562, ενώ σε μικρότερο βαθμό επηρεάζει την εμφάνιση του συγκεκριμένου trapping set ο θόρυβος των κόμβων 1249, 1278, 1849 και Ακόμα λιγότερο σημαντικός είναι ο κόμβος 1736, ενώ ο κόμβος 1860 δε θεωρείται καθόλου υπεύθυνος για την παγίδευση του αποκωδικοποιητή στο trapping set. Τέλος, ο θόρυβος του κόμβου 1459, συγκριτικά με το θόρυβο του 489, φαίνεται να είναι πιο σημαντικός. Με βάση τα παραπάνω, δεν προκύπτει πως η ενεργοποίηση του trapping set σχετίζεται περισσότερο με το θόρυβο που προστίθεται σε variable κόμβους μεγαλύτερου βαθμού (node degree) παρά με το θόρυβο κόμβων μικρότερου βαθμού. Για παράδειγμα, οι variable κόμβοι 1278 και 1849, οι οποίοι έχουν διαφορετικό βαθμό (degree 4 και 2 αντίστοιχα), δείχνουν να είναι εξίσου σημαντικοί στο trapping set. Επιπλέον, αν ίσχυε η προηγούμενη πρόταση, θα έπρεπε κι ο κόμβος 1562 (degree 3) να είναι πιο ασήμαντος σε σχέση με τον κόμβο 489 (degree 4), κάτι που δεν επιβεβαιώνεται από τα διαγράμματα και τους πίνακες. Το trapping set του frame 31. Από τη μελέτη της δομής του συγκεκριμένου trapping set του frame 31, όπως αυτή απεικονίζεται στο προηγούμενο σχήμα, διαμορφώνεται η άποψη πως αυτό που παίζει ρόλο στην ενεργοποίησή του είναι η θέση, μέσα σε αυτό, των variable κόμβων στους οποίους αντιστοιχεί ο ισχυρός θόρυβος. 90

101 Αρχικά, ο κόμβος 1860, του οποίου ο θόρυβος θεωρήθηκε ο πιο ασήμαντος για την ενεργοποίηση του trapping set, ουσιαστικά αποτελεί ουρά αυτού, εφόσον δεν ανήκει σε κανέναν κύκλο. Παρατηρείται επίσης πως οι κόμβοι 392 και 1562 συμμετέχουν στο μοναδικό κύκλο μήκους 6 του trapping set, κι έτσι εξηγείται το γεγονός πως αυτοί οι δύο κόμβοι είναι από τους πιο σημαντικούς. Με την ίδια λογική, και ο κόμβος 1459 θα πρέπει να είναι εξίσου σημαντικός. Οι κόμβοι 1249, 1278, 1849 και 1970 ανήκουν σε κύκλους με μήκος μεγαλύτερο ή ίσο του 8, οπότε έχουν την ίδια επίδραση στην ενεργοποίηση του trapping set, ενώ ο κόμβος 1736 συμμετέχει σε κύκλους μήκους 10 και πάνω, γι' αυτό και η επίδρασή του είναι μικρότερη από τους προηγούμενους τέσσερις κόμβους. Τέλος, σχετικά με τους κόμβους 489 και 1459, ο πρώτος ανήκει σε κύκλο μήκους 4 ενώ ο δεύτερος σε κύκλο μήκους 3, άρα είναι λογικό στα διαγράμματα και τους πίνακες να φαίνεται ο 1459 πιο σημαντικός από τον Πειράματα μηδενικού θορύβου, εκτός των κόμβων συγκεκριμένου trapping set Μέχρι αυτό το σημείο, έχει γίνει αναφορά μόνο σε περιπτώσεις εφαρμογής, σε όλες τις μεταδιδόμενες τυχαίες κωδικές λέξεις, σταθερού πάντα θορύβου στους 10 variable κόμβους που συγκροτούν το trapping set του frame 31. Σε αυτήν την παράγραφο, παρουσιάζεται η περίπτωση εφαρμογής τυχαίου θορύβου στους κόμβους αυτού του ίδιου trapping set, θεωρώντας, όμως, πως σε όλους τους υπόλοιπους κόμβους προστίθεται μηδενικός θόρυβος. Με αυτήν την ακραία υπόθεση, μελετάται πιο λεπτομερώς η επίδραση μόνο του θορύβου των 10 κόμβων, χωρίς να επηρεάζονται τα αποτελέσματα από το θόρυβο των υπόλοιπων κόμβων Α' σειρά πειραμάτων - Συμπεράσματα Το πείραμα που πραγματοποιήθηκε ήταν το εξής: αποστέλλονται και αποκωδικοποιούνται συνεχώς τυχαίες κωδικές λέξεις, προσθέτοντας σε αυτές το είδος θορύβου που μόλις αναφέρθηκε, μέχρι να μετρηθούν σφάλματα στα bits πληροφορίας των αποκωδικοποιημένων λέξεων. Μηδενικός θόρυβος σχεδόν σε όλα τα bits (στη συγκεκριμένη περίπτωση σε 2006 bits) σημαίνει πως η αποκωδικοποίηση θα πρέπει να γίνει σε επίπεδα θορύβου που βρίσκονται στο δεξιό κάτω άκρο του error floor. Γι' αυτό και το πείραμα υποτίθεται πως εκτελείται σε στάθμη θορύβου 10 db. Ο μη μηδενικός τυχαίος θόρυβος, που εισέρχεται στους 10 κόμβους του trapping set, θα πρέπει να είναι αρκετά μεγάλος, ώστε ο αποκωδικοποιητής να οδηγηθεί σε αποτυχία και, πρακτικά, να είναι εφικτές οι μετρήσεις που πραγματοποιούνται σε software. Προσθέτοντας στους 10 κόμβους θόρυβο που θα αντιστοιχούσε σε [E b /N 0 ] T = 10 db, η εξομοίωση θα έφτανε σε τέτοια επίπεδα BER, τα 91

102 οποία δεν θα ήταν δυνατόν να μετρηθούν. Έτσι, εφαρμόζεται σε αυτούς θόρυβος που αντιστοιχεί σε αρνητικά επίπεδα E b /N 0. Υποθετικά, λοιπόν, το πείραμα διεξάγεται σε στάθμη θορύβου διασποράς s 2, αλλά πρακτικά η διασπορά του θορύβου στα bits του trapping set είναι s Τ 2 και η διαπορά του θορύβου στα υπόλοιπα bits είναι s R 2 = s, E /N 10 db Eb / N0 log2cr b s, E /N 0 2 T E b / N0 b 0 T T log2cr s 0, E /N R b 0 R Εκτελώντας την παραπάνω διαδικασία, δηλαδή εφαρμόζοντας θόρυβο στα bits του trapping set που αντιστοιχεί συγκεκριμένα σε [E b /N 0 ] T = -10 db και μηδενικό θόρυβο στα υπόλοιπα bits, συγκεντρώθηκαν 238 frames που δεν αποκωδικοποιήθηκαν με τον αλγόριθμο normalized Min-Sum και υπολογίστηκε το BER = Ο θόρυβος των 10 κόμβων είναι αρκετός έως υπερβολικός, γι' αυτό και τα frames που δεν αποκωδικοποιούνται δεν παγιδεύονται αποκλειστικά στο ίδιο trapping set του frame 31. Πολλές φορές λείπουν από αυτό κάποιοι κόμβοι ή συμμετέχουν σε αυτό καινούργιοι κόμβοι, παρόλο που ο θόρυβός τους είναι μηδενικός. Από τα 238 frames, παρατηρήθηκαν 17 στα οποία, αφού εκτελέστηκαν οι 70 επαναλήψεις του αλγορίθμου, παραμένουν λανθασμένα περισσότερα από 10 bits (πληροφορίας και ισοτιμίας). Ακριβώς 10 τελικά λανθασμένα bits έχουν 44 frames, όχι απαραίτητα, όμως, τα 10 bits του trapping set του frame 31, ενώ ακριβώς 9 και 8 τελικά λάθη έχουν αντίστοιχα 69 και 73 frames. Στα περισσότερα trapping sets αυτών των frames, οι variable κόμβοι που λείπουν είναι οι 489 και 1860, κόμβοι που, όπως είχε αναφερθεί σε προηγούμενη παράγραφο, δεν είναι αρκετά σημαντικό μέρος του βασικού κορμού του trapping set. 92

103 Τα Trapping Sets των ανεπιτυχώς αποκωδικοποιημένων frames, για [E b /N 0 ] T = -10 db. Λιγότερα από 8 τελικά λάθη έχουν τα 35 υπόλοιπα frames, στα οποία σημειώθηκαν δύο frames που παραμένουν, στο τέλος της αποκωδικοποίησης, με ένα και μοναδικό λανθασμένο κόμβο. Αυτό οφείλεται στον εξαιρετικά υψηλό θόρυβο που τυχαίνει να προστίθεται σε αυτούς τους κόμβους, σε συνδυασμό με το κατάλληλο πρόσημο του αντίστοιχου μεταδιδόμενου σήματος, που είναι αντίθετο από το πρόσημο του θορύβου. Γενικά, οι variable κόμβοι που συμμετέχουν στα περισσότερα trapping sets είναι οι 392, 1459 και 1562, οι οποίοι υπενθυμίζεται πως δημιουργούν τον κύκλο μήκους 6, και ακολουθούν οι κόμβοι 1849 και 1970, που συμμετέχουν σε κύκλους μήκους 8. Η εξομοίωση αποκωδικοποίησης, εφαρμόζοντας μηδενικό θόρυβο στους variable κόμβους που δεν ανήκουν στο trapping set του frame 31, επαναλήφθηκε αυτή τη φορά εφαρμόζοντας στους κόμβους του trapping set τυχαίο θόρυβο, που αντιστοιχεί σε [E b /N 0 ] T = -5 db. Συγκεντρώθηκαν συνολικά 222 ανεπιτυχώς αποκωδικοποιημένα frames και υπολογίστηκε το BER = , χαμηλότερο, όπως είναι αυτονόητο, από το προηγούμενο, αφού, με λιγότερο θόρυβο στα bits του trapping set, ο αποκωδικοποιητής παγιδεύεται πιο σπάνια σε αυτό. Όλοι οι variable κόμβοι του αρχικού trapping set συμμετέχουν στα trapping sets και των 222 frames, εκτός από τον κόμβο 489, που συμμετέχει σε 103 trapping sets, και τον κόμβο 1860, που συμμετέχει μόνο σε 52 trapping sets. Όσο για καινούργιους κόμβους, εμφανίζεται, σε μόλις 10 trapping sets, ο κόμβος 800, και μάλιστα, ίσως τυχαία, σε αυτά που δε συμμετέχει ο 489. Φαίνεται, λοιπόν, πως τώρα τα frames παγιδεύονται ξεκάθαρα στο αρχικό trapping set του frame 31 και ο αριθμός των τελικών λανθασμένων bits κυμαίνεται από 8 έως 10. Τα Trapping Sets των ανεπιτυχώς αποκωδικοποιημένων frames, για [E b /N 0 ] T = -5 db. 93

104 Σχετικά, τώρα, με τα αρχικά λανθασμένα bits, πριν ξεκινήσει δηλαδή η διαδικασία αποκωδικοποίησης ενός frame, έχει ενδιαφέρον να βρεθεί ο αριθμός των τιμών LLR που αρκούν να είναι λανθασμένες, ώστε να σημειωθεί αποτυχία και εμφάνιση του trapping set. Στο ιστόγραμμα που ακολουθεί, το οποίο δημιουργήθηκε λαμβάνοντας υπ' όψιν τα LLR των 222 frames, απαντάται το παραπάνω ερώτημα. Ιστόγραμμα των αρχικά λανθασμένων bits. Παρατηρείται πως τα περισσότερα frames (συγκεκριμένα τα 187) έχουν 5 έως 7 αρχικά λάθη, πράγμα που φαίνεται λογικό, κρίνοντας και από το frame 31, το οποίο έχει 7 λανθασμένα LLR. Παρατηρούνται, όμως, και 17 frames, τα οποία δεν αποκωδικοποιούνται έχοντας μόνο 4 αρχικά λάθη, ενώ σημειώνεται και 1 frame, για το οποίο αρκούν μόλις 3 αρχικά λάθη, ώστε αυτό να παγιδευτεί και να αποτύχει. Στον παρακάτω πίνακα παρουσιάζονται κάποια παραδείγματα προστιθέμενου θορύβου, για 4 frames από τα 222 που δεν αποκωδικοποιούνται επιτυχώς. Για κάθε frame και κάθε bit του trapping set, φαίνονται οι τιμές του σήματος που μεταδίδεται, του σήματος που λαμβάνεται από τον αποκωδικοποιητή και του προστιθέμενου θορύβου. Δεν έχει σημασία μόνο η τιμή του θορύβου που προστίθεται σε κάποιο bit αλλά παίζει ρόλο και η τιμή του bit, αφού υπάρχει πιθανότητα ο μεγάλος θόρυβος να μην καταστρέψει την ιδανική τιμή LLR, αλλά να την ενισχύσει πάρα πολύ, γεγονός το οποίο δεν αποτελεί πρόβλημα. Στον πίνακα υπάρχουν τέτοιες περιπτώσεις, όπως πχ. ο θόρυβος του variable κόμβου 1249 στο frame II. 4 frames που δεν αποκωδικοποιούνται με [E b /N 0 ] T = -5 db. 94

105 Το frame I είναι εκείνο που αναφέρθηκε προηγουμένως, το οποίο παγιδεύεται στο trapping set, έχοντας μόνο 3 αρχικά λάθη. Παρατηρείται πως ο τυχαίος θόρυβος που εισέρχεται στους 3 variable κόμβους 1459, 1736 και 1970, και κυρίως στους 2 τελευταίους, είναι υπερβολικά ισχυρός κι έτσι το frame αυτό δεν μπορεί να αποκωδικοποιηθεί. Το frame II είναι το μοναδικό που έχει 9 λανθασμένες τιμές LLR και σε αυτό διαπιστώνεται πως κανένας κόμβος του δεν έχει τόσο ισχυρό θόρυβο όσο οι κόμβοι 1736 και 1970 του frame I. Τα frames III και IV είναι 2 από τα 17 frames που έχουν 4 αρχικά λάθη. Ο θόρυβος των κόμβων που καταλήγουν με λανθασμένο LLR είναι μεν ισχυρός, δε φτάνει, όμως, τις τιμές θορύβου που σημειώνονται στο frame I. Γενικότερα, συμπεραίνεται πως αν εισέλθει επαρκής θόρυβος σε variable κόμβους του trapping set, ακόμα και αν ο θόρυβος όλων των υπόλοιπων κόμβων είναι μηδενικός, ο αποκωδικοποιητής θα παγιδευτεί σε αυτό το trapping set. Επιπλέον, πολύ μεγάλος θόρυβος αρκεί να προστεθεί σε μικρό αριθμό κόμβων, ενώ αν ο θόρυβος είναι πιο μικρός, θα πρέπει να εφαρμοστεί σε περισσότερους κόμβους, ώστε να ενεργοποιηθεί το trapping set Β' σειρά πειραμάτων - Συμπεράσματα Όπως εξηγήθηκε παραπάνω, το πείραμα μηδενικού θορύβου στους variable κόμβους που δε συνθέτουν το trapping set του frame 31, διεξήχθη υποθετικά σε στάθμη θορύβου E b /N 0 = 10 db. Όμως, εφόσον πρακτικά αυτό δεν ισχύει, ακόμα και με διαφορετικό λόγο E b /N 0, είτε θετικό είτε αρνητικό, θα προέκυπταν τα ίδια αποτελέσματα. Αυτό αποδεικνύεται και από τις μετρήσεις στον πίνακα, όπου είναι προφανές πως το BER εξαρτάται μόνο από τη διασπορά θορύβου των 10 variable κόμβων του trapping set, αφού ο θόρυβος των υπολοίπων είναι πάντα 0. Το μόνο που επηρεάζεται από το λόγο E b /N 0 είναι τα επίπεδα όπου κυμαίνονται οι τιμές LLR, πχ. E /N 10 db LLR 30 b 0 noiseless E /N 100 db LLR 3 10 b 0 noiseless E /N 100 db LLR 3 10 b 0 noiseless Μετρήσεις BER: Υποθετική στάθμη θορύβου: E b /N 0. Στάθμη θορύβου των bits του trapping set: [E b /N 0 ] T. Στάθμη θορύβου των υπόλοιπων bits:. 95

106 Από τη στιγμή, λοιπόν, που η υποθετική στάθμη θορύβου E b /N 0 δεν παίζει κανένα ρόλο, όσον αφορά το BER που προκύπτει από τη συγκεκριμένη μόνο διαδικασία, εκτελέστηκε το ίδιο παραπάνω πείραμα, με σκοπό τώρα το σχεδιασμό διαγράμματος BER, θεωρώντας πως η διασπορά του θορύβου που εφαρμόζεται στα bits του trapping set του frame 31 (s Τ 2 ) συμπίπτει με την υποθετική διασπορά θορύβου όλων των bits (s 2 ): 1 s s, E /N E /N T Eb / N b 0 b 0 0 T log2cr s 0, E /N R b 0 R Διάγραμμα BER, με μηδενικό θόρυβο σε όλους τους κόμβους, εκτός από αυτούς στο trapping set του frame 31. Το διάγραμμα του σχήματος απλά επιβεβαιώνει το γεγονός ότι όσο πιο μικρός θόρυβος εισάγεται στους 10 variable κόμβους του trapping set του frame 31, τόσο λιγότερες αποτυχίες σημειώνει ο αποκωδικοποιητής εξαιτίας αυτού του trapping set. Θεωρητικά, πάντως, ακόμα και με πολύ λίγο προστιθέμενο θόρυβο σε αυτούς τους κόμβους (επίπεδα που δεν μπορούν να φανούν στο διάγραμμα), με ταυτόχρονη εφαρμογή μηδενικού θορύβου στους υπολοίπους, υπάρχει και πάλι πολύ μικρή πιθανότητα παγίδευσης του αποκωδικοποιητή σε αυτό το trapping set. Στο επόμενο σχήμα παρουσιάζονται 3 επιπλέον διαγράμματα, που προέκυψαν από την πραγματοποίηση του ίδιου πειράματος, εφαρμόζοντας τον τυχαίο θόρυβο μόνο σε κόμβους που συνθέτουν τα trapping sets άλλων frames, πέρα από το 31, (frames 13, 32 και 51), που είχαν καταγραφεί και αυτά από το σύστημα στο hardware. Οι νέες καμπύλες σχεδόν συμπίπτουν με την μαύρη καμπύλη, η οποία θεωρείται η καμπύλη αναφοράς. Οι μικρές διαφοροποιήσεις μεταξύ των διαγραμμάτων οφείλονται στο μέγεθος και τη δομή του κάθε trapping set. Το trapping set του frame 32 είναι το μικρότερο σε μέγεθος, συγκριτικά με τα υπόλοιπα 3, γι' αυτό και το αντίστοιχο BER (κόκκινη καμπύλη), στην περιοχή πολύ υψηλού θορύβου, είναι κάπως καλύτερο. (Λιγότεροι τελικά λανθασμένοι κόμβοι οδηγούν σε χαμηλότερο BER). 96

107 Διαγράμματα BER, με μηδενικό θόρυβο σε όλους τους κόμβους, εκτός από αυτούς που συγκροτούν trapping sets. Στη συνέχεια, παρουσιάζονται ακόμα 6 διαγράμματα BER, που προκύπτουν τώρα από την εφαρμογή τυχαίου θορύβου σε 6 τυχαία διαφορετικά σύνολα variable κόμβων, οι οποίοι δε συνθέτουν κάποιο συγκεκριμένο trapping set. Αυτό που έχει σημασία εδώ είναι πως αυτά τα τελευταία 6 διαγράμματα BER αρχίζουν να βελτιώνονται αρκετά νωρίτερα σε σχέση με το διάγραμμα αναφοράς (αλλά και τα 3 προηγούμενα διαγράμματα). Είναι προφανές πως η προσθήκη μεγάλου θορύβου σε variable κόμβους που δεν έχουν κάποια σχέση μεταξύ τους δεν επιφέρει τα ίδια αποτελέσματα με την εφαρμογή θορύβου ίδιας ισχύος σε κόμβους που συνθέτουν trapping sets. Να σημειωθεί πως η μπλε καμπύλη είναι η χειρότερη στην περιοχή του χαμηλότερου θορύβου, κι αυτό ίσως να οφείλεται στο γεγονός πως 2 από τους 10 κόμβους που απαρτίζουν το 6 ο τυχαίο σύνολο, οι κόμβοι 1799 και 1894, συνδέονται μεταξύ τους με τη δομή του επόμενου σχήματος, όπου φαίνεται ξεκάθαρα ο κύκλος μήκους 6. Ο μεγάλος θόρυβος σε αυτούς τους κόμβους προκαλεί την πολύ συχνή εμφάνιση της δομής αυτής στα frames που αποτυγχάνουν. Διαγράμματα BER, με μηδενικό θόρυβο σε όλους τους κόμβους, εκτός από τυχαία σύνολα κόμβων. 97

108 Κύκλος μήκους 6 στον Πίνακα Ελέγχου Ισοτιμίας Η. 3.3 Πειράματα τυχαίου θορύβου, μεγαλύτερης ισχύος στους κόμβους ενός trapping set Πλέον έχει γίνει αντιληπτό, από ό,τι έχει αναφερθεί μέχρι τώρα, πως η πιθανότητα να αποτύχει ο αποκωδικοποιητής και να παγιδευτεί σε κάποιο trapping set εξαρτάται σε μεγάλο βαθμό, σχεδόν αποκλειστικά, από τη διασπορά του προστιθέμενου θορύβου στους variable κόμβους που συνθέτουν αυτό το trapping set Η διασπορά του θορύβου σε συγκεκριμένα σύνολα κόμβων Από προηγούμενα διαγράμματα BER (υπενθυμίζονται στο επόμενο σχήμα), τα οποία σχεδιάστηκαν προσθέτοντας σε τυχαίες κωδικές λέξεις το θόρυβο των frames 31 και 49 στους κόμβους των αντίστοιχων trapping sets, φαίνεται πως η συμπεριφορά του αποκωδικοποιητή είναι αισθητά χειρότερη από αυτήν που προκύπτει με προσθήκη τυχαίου θορύβου σε όλους τους κόμβους. Διαγράμματα BER, με βάση το θόρυβο στα trapping sets των frames 31 και

109 Πέρα από την εμφάνιση της περιοχής error floor σε αυτά τα διαγράμματα, στην περιοχή waterfall παρατηρείται συμπεριφορά η οποία ουσιαστικά αντιστοιχεί σε θόρυβο μεγαλύτερης διασποράς (μικρότερου λόγου E b /N 0 ). Αυτό σημαίνει πως ο σταθερός θόρυβος στους κόμβους των trapping sets έχει μεγαλύτερη ισχύ απ' ότι θα έπρεπε, η οποία δε συμβαδίζει με την ισχύ του θορύβου των υπόλοιπων κόμβων. Η άποψη αυτή επιβεβαιώνεται και από τις μετρήσεις του πίνακα που ακολουθεί, όπου σημειώνονται οι τιμές διασποράς του θορύβου στους κόμβους των trapping sets και στους υπολοίπους, για όλα τα καταγεγραμμένα frames που αποτυγχάνουν κατά την εξομοίωση αποκωδικοποίησης bit-true με ακρίβεια αναπαράστασης 8.1/5.1 (trapping sets στον πίνακα Β, κεφάλαιο 2). Οι τιμές στον πίνακα προκύπτουν ως εξής: Υποθετική διασπορά θορύβου: s 2 10 Eb / N log2cr Πειραματική διασπορά θορύβου σε όλους τους κόμβους (Ν=2016): στους T κόμβους των trapping sets: στους R κόμβους εκτός των trapping sets: s s s N 2 var1 exp T 2 var1 T exp R 2 var1 R exp noise noise noise var N 1 var T 1 var R 1 μ μ μ noise noise noise Πειραματική μέση τιμή θορύβου: N noise var var1 μnoise 0 N Φαίνεται καθαρά πως η υποθετική διασπορά θορύβου και η πειραματική σε όλους τους variable κόμβους, καθώς και η πειραματική διασπορά θορύβου στους R κόμβους συμπίπτουν. Το πρόβλημα παρουσιάζεται στην πειραματική διασπορά θορύβου στους Τ κόμβους του κάθε trapping set, η οποία είναι πολύ μεγαλύτερη από τις άλλες τρεις διασπορές. 99

110 100 Πειραματική διασπορά θορύβου σε καταγεγραμμένα frames από το hardware.

111 3.3.2 Περιγραφή των πειραμάτων και θεωρητική ανάλυση Tο σκεπτικό εφαρμογής θορύβου μεγαλύτερης διασποράς στα bits του trapping set εφαρμόστηκε ήδη στο πείραμα μηδενικού θορύβου στα bits εκτός του trapping set, που περιγράφηκε σε προηγούμενη παράγραφο. Επειδή, όμως, κάτι τέτοιο δεν είναι ρεαλιστικό, υλοποιήθηκε ένα νέο πείραμα, εισάγοντας τυχαίο θόρυβο σε όλους τους κόμβους τυχαίων κωδικών λέξεων, τροποποιημένο όπως αναλύεται παρακάτω, ώστε να εμφανίζεται η περιοχή error floor στα διαγράμματα BER. Η θεωρητική διασπορά s 2 N του θορύβου που προστίθεται και στους 2016 κόμβους μίας λέξης αντιστοιχεί σε συγκεκριμένο λόγο [E b /N 0 ] Ν και περιγράφει τη μέση ισχύ του θορύβου όλων των κόμβων ( P N ), για την οποία ισχύει: N T R N T R N T R P P P N P T P R P N s T s R s [1] Κανονικά, θα πρέπει η θεωρητική διασπορά θορύβου όλων των κόμβων να είναι η ίδια με αυτήν που αντιστοιχεί στους Τ κόμβους ενός trapping set και με αυτήν που αντιστοιχεί στους υπόλοιπους R κόμβους: s N 2 = s T 2 = s R 2. Όμως, προκειμένου να εισαχθεί, για τους σκοπούς του πειράματος, ισχυρότερος θόρυβος στα bits συγκεκριμένου trapping set (εδώ το trapping set του frame 31, T=10), θεωρείται πως η ισχύς P T αποτελεί ένα ορισμένο ποσοστό της συνολικής ισχύος P N : 2 N 2 T PT a PN s T a s N, a T N [2] Οπότε, για να ισχύει και η σχέση [1], θα πρέπει η ισχύς P R να αποτελεί το υπόλοιπο ποσοστό της συνολικής ισχύος P N : 2 N 2 T PR 1 a PN sr 1 a s N, a R N [3] Κατά την εκτέλεση του πειράματος, λοιπόν, προστίθεται σε τυχαίες κωδικές λέξεις θόρυβος με θεωρητική διασπορά s N 2, αλλά πρακτικά στους T κόμβους η διασπορά του εφαρμοζόμενου θορύβου είναι s T 2 > s N 2 και στους R κόμβους είναι s R 2 < s N 2. Τονίζεται πως ο θόρυβος σε όλους τους κόμβους πλέον είναι τυχαίος και δεν προέρχεται από το frame 31. Έχοντας ως παράμετρο το συντελεστή a, σχεδιάστηκαν τα διαγράμματα BER που απεικονίζονται στο πρώτο σχήμα της επόμενης σελίδας, όπου ο λόγος [E b /N 0 ] Ν στον οριζόντιο άξονα αντιστοιχεί στη διασπορά s N 2. Το πλήθος R των κόμβων που δεν είναι μέλη του trapping set είναι σχεδόν ίδιο με το πλήθος Ν όλων των κόμβων (RN) και το πλήθος Τ των κόμβων του trapping set είναι πολύ μικρότερο από το πλήθος Ν (T<<N), κι αυτό δεν ισχύει μόνο για το trapping set του frame 31 αλλά για όλα τα trapping sets. Άρα, μπορεί να θεωρηθεί ότι στην πραγματικότητα η διασπορά του προστιθέμενου θορύβου στους Ν κόμβους (s real 2 ) 101

112 είναι η διασπορά του θορύβου στους R κόμβους (s R 2 ). Γι' αυτό θα πρέπει οι καμπύλες του σχήματος να μετατοπιστούν κατάλληλα προς τα δεξιά. Διαγράμματα BER, με τυχαίο θόρυβο διασποράς s T 2 στους κόμβους του trapping set του frame 31 και τυχαίο θόρυβο διασποράς s R 2 στους υπόλοιπους κόμβους. Τα ίδια διαγράμματα, λοιπόν, μετατοπισμένα, φαίνονται στο παρακάτω σχήμα. Ο οριζόντιος άξονας τώρα είναι ο λόγος E b /N 0 που αντιστοιχεί στην πραγματική διασπορά s 2 = s real 2 του θορύβου των Ν κόμβων, η οποία, όπως ειπώθηκε, είναι η διασπορά s R 2 των RN κόμβων. Μετατοπισμένα διαγράμματα BER, με τυχαίο θόρυβο διασποράς s T 2 στους κόμβους του trapping set του frame 31 και τυχαίο θόρυβο διασποράς s R 2 στους υπόλοιπους κόμβους. 102

113 3 1 1 E b /N0 E b /N0 10 log R 2 E b /N0 10 log N 2 CR s N R 1 a R Τα μετατοπισμένα διαγράμματα αντιστοιχούν σε τιμές BER, οι οποίες μπορούν να προκύψουν απευθείας από την εκτέλεση ενός πανομοιότυπου πειράματος με το προηγούμενο, χρησιμοποιώντας όμως την παράμετρο α αντί για a. Το βασικό σκεπτικό αυτού του πειράματος είναι πως στα bits που δεν ανήκουν στο trapping set, σχεδόν όλα, δηλαδή, τα bits μιας κωδικής λέξης, ο θόρυβος είναι πράγματι αυτός που θα έπρεπε υποθετικά να είναι, αλλά στα λίγα bits που ανήκουν στο trapping set ο θόρυβος τυχαίνει να είναι ισχυρότερος. Στους R κόμβους, λοιπόν, εφαρμόζεται θόρυβος διασποράς s R 2 = s 2, η οποία είναι η μέση ισχύς θορύβου των R κόμβων, αλλά ταυτόχρονα θεωρείται και η πραγματική μέση ισχύς θορύβου των Ν κόμβων (s real 2 ), αφού RN. Στους Τ κόμβους του trapping set εφαρμόζεται θόρυβος διασποράς s Τ 2, όπως προηγουμένως, όμως πλέον δεν ενδιαφέρει η σχέση του s Τ 2 με το s Ν 2 αλλά η σχέση του με το s real 2 = s 2 : 2 N 2 N 2 T st a sn α s real, α T T N N T s T a N sn α N sr PT a PN α PR α P R, αφού R N R Η τελευταία ισότητα απλά σημαίνει πως η ισχύς P T του προστιθέμενου θορύβου στους Τ κόμβους είναι ένα μέρος της συνολικής θεωρητικής ισχύος P N αλλά θεωρείται και μέρος της ισχύος θορύβου των R κόμβων, ή αλλιώς της πραγματικής ισχύος των Ν κόμβων. Η σχέση του συντελεστή a με τον α είναι: α a R 1 a N Η εκτέλεση του νέου αυτού πειράματος, για αρκετές τιμές της παραμέτρου α > T/N και περισσότερα σημεία θορύβου E b /N 0 = [E b /N 0 ] R, που φτάνουν μέχρι και τα 8 db, έχει ως αποτέλεσμα τα ήδη μετατοπισμένα διαγράμματα BER του παρακάτω σχήματος. Επισημαίνεται ότι αν α T/N, τότε η διασπορά θορύβου στα Τ bits θα είναι μικρότερη ή ίση από αυτήν των R bits, οπότε θεωρείται δεδομένο πως δεν υπάρχει περίπτωση να παγιδευτεί ο αποκωδικοποιητής στο συγκεκριμένο trapping set. Έτσι, αν εμφανιστεί η περιοχή του error floor στο διάγραμμα BER, αυτό θα οφείλεται σε άλλα trapping sets. Όπως και να 'χει, όμως, τόσο χαμηλά επίπεδα θορύβου δεν μπορούν να εξομοιωθούν. 103

114 Μετατοπισμένα διαγράμματα BER, με τυχαίο θόρυβο διασποράς s T 2 στους κόμβους του trapping set του frame 31 και τυχαίο θόρυβο διασποράς s R 2 στους υπόλοιπους κόμβους Συμπεράσματα Σχεδόν όλα τα frames, που δημιουργήθηκαν ακολουθώντας την παραπάνω διαδικασία και αποκωδικοποιήθηκαν ανεπιτυχώς από τον αλγόριθμο normalized Min-Sum, παγιδεύονται, όπως είναι φυσικό, στο trapping set του frame 31, αφού οι 10 variable κόμβοι του είναι αυτοί που λαμβάνουν τον ισχυρότερο θόρυβο. Σχετικά με τους variable κόμβους που αντιστοιχούν σε bits πληροφορίας και ενδιαφέρουν περισσότερο, μιας και ο αριθμός των τελικών λαθών μόνο σε αυτούς τους κόμβους καθορίζει το BER, παρατηρήθηκε πως οι κόμβοι 392, 1249, 1278 και 1459 παραμένουν λανθασμένοι σχεδόν σε όλα τα frames. Ο κόμβος 489 δε διορθώνεται στα μισά περίπου frames, άρα συμμετέχει στα trapping sets αυτών, ενώ σε λίγες περιπτώσεις όπου διορθώνεται ο 489, εμφανίζεται λανθασμένος ο κόμβος 800, ο οποίος δεν ανήκει στο βασικό trapping set του frame 31. Ποσοστό των frames με συγκεκριμένο συνδυασμό λανθασμένων bits πληροφορίας. 104

115 Έτσι, κάθε φορά που αποτυγχάνει ο αποκωδικοποιητής εξαιτίας ισχυρού θορύβου στα 10 bits του trapping set του frame 31, θεωρείται πως συμβαίνουν, κατά μέσο όρο, 4.66 ( ) σφάλματα στα 1512 bits πληροφορίας μιας κωδικής λέξης. Αυτό, βέβαια, ισχύει για στάθμες θορύβου μεγαλύτερες από 3.25 db περίπου, δηλαδή για τις περιοχές του error floor των διαγραμμάτων BER. Στο waterfall, ο αριθμός των τελικών λαθών στις μεταδιδόμενες λέξεις είναι πολλές φορές αρκετά μεγαλύτερος. 3.4 Η πιθανότητας παγίδευσης σε συγκεκριμένο trapping set Η διαδικασία της εξομοίωσης αποκωδικοποίησης κωδικών λέξεων, που πραγματοποιήθηκε και περιγράφηκε τελευταία στην προηγούμενη παράγραφο, έχει ιδιαίτερη σημασία, διότι με βάση τις μετρήσεις BER που προέκυψαν, μπορεί να υπολογιστεί η πιθανότητα ενεργοποίησης του trapping set του frame 31. Γενικά, μία τιμή BER (Bit Error Rate), για συγκεκριμένο λόγο E b /N 0, περιγράφει την πιθανότητα να αποσταλεί 1 bit και να μην καταφέρει ο αποκωδικοποιητής να το παραδώσει χωρίς σφάλμα στο δέκτη. Από την άλλη, η τιμή FER (Frame Error Rate) χρησιμοποιείται για να περιγράψει την πιθανότητα να αποσταλεί 1 λέξη και να παραδοθεί τελικά λανθασμένη, ανεξάρτητα από τον αριθμό των τελικών λαθών σε αυτήν. Οι δύο αυτές παράμετροι ενός συστήματος αποκωδικοποίησης σχετίζονται ως εξής: FER BER words wrong words total BER FER info bits wrong info bits total info bits wrong info bits /words wrong words wrong words total info bits wrong info bits total info bits = αριθμός λανθασμένων λέξεων στο δέκτη = αριθμός συνολικά μεταδιδόμενων λέξεων = αριθμός λανθασμένων bits πληροφορίας στο δέκτη = αριθμός συνολικά μεταδιδόμενων bits πληροφορίας = σταθερός αριθμός των bits πληροφορίας σε μία λέξη Οι τιμές FER ef31, οι οποίες αντιστοιχούν μόνο στο error floor των διαγραμμάτων BER του σχήματος της προηγούμενης παραγράφου, είναι δυνατόν να υπολογιστούν, αφού είναι γνωστό πως τα bits πληροφορίας μίας κωδικής λέξης είναι 1512 και πως ο αριθμός σφαλμάτων σε αυτά τα bits κάθε λανθασμένης κωδικής λέξης είναι, κατά μέσο όρο, FER 1512 BER ef 31 ef

116 Παριστάνοντας, τώρα, στον κάθετο άξονα το FER ef31, στον οριζόντιο άξονα το συντελεστή α και έχοντας ως παράμετρο τη στάθμη θορύβου E b /N 0, με τιμές μεγαλύτερες από 3.25 db, σχεδιάζονται τα διαγράμματα του επόμενου σχήματος. Διαγράμματα FER, με παράμετρο το λόγο E b /N 0, που αντιστοιχεί στη διασπορά θορύβου s 2 στους κόμβους εκτός του trapping set του frame 31. Για ένα συγκεκριμένο λόγο E b /N 0, δηλαδή συγκεκριμένη διασπορά θορύβου σε RN κόμβους (s R 2 = s 2 ), το FER ef31 που αντιστοιχεί σε δεδομένο συντελεστή α, άρα δεδομένο s T 2, ορίζει τη δεσμευμένη πλέον πιθανότητα να αποτύχει η διαδικασία αποκωδικοποίησης μίας λέξης, ενεργοποιώντας το trapping set του frame 31 (ενδεχόμενο TS 31 ), γνωρίζοντας ποια ακριβώς είναι η τιμή του s και ποια η τιμή του α, δηλαδή γνωρίζοντας τη σχέση της διασποράς του θορύβου στους Τ κόμβους αυτού του trapping set, με τη διασπορά του θορύβου στους υπόλοιπους κόμβους. FER PTS α, s gα, s ef31 31 known Διαγράμματα FER, με παράμετρο το λόγο E b /N 0, που αντιστοιχεί στη διασπορά θορύβου s 2 στους κόμβους εκτός του trapping set του frame

117 Στην πραγματικότητα, η δεσμευμένη πιθανότητα ενεργοποίησης του trapping set, με γνωστά τα α και s, εξαρτάται μόνο από τη μέση ισχύ του θορύβου που προστίθεται στα T bits (s T 2 ) και όχι από τη μέση ισχύ του θορύβου των R bits (s R 2 ), αφού αντικαθιστώντας το συντελεστή α με την τυπική απόκλιση s T στον οριζόντιο άξονα του παραπάνω σχήματος, τα διαγράμματα FER σχεδόν συμπίπτουν, κι έτσι, από τις 10 αρχικές καμπύλες, ουσιαστικά προκύπτει 1 καμπύλη FER, όπως φαίνεται στο προηγούμενο σχήμα. Ανεξάρτητα, λοιπόν, από το θόρυβο που εισάγεται σε όλους σχεδόν τους variable κόμβους μιας κωδικής λέξης, ο προστιθέμενος θόρυβος στους κόμβους του trapping set είναι αυτός που θα καθορίσει την πιθανή ενεργοποίησή του. FER PTS s known hs ef31 31 T T Προκειμένου να βρεθεί ακριβώς η συνάρτηση h(s T ) που περιγράφει τη δεσμευμένη πιθανότητα και το FER ef31, χρησιμοποιήθηκε η εργαλειοθήκη Curve Fitting του προγράμματος Matlab, από όπου προέκυψε πως η καλύτερη επιλογή συνάρτησης είναι η: hs T b c sd T T a s Οι σταθερές a, b, c και d αναφέρονται στο σχήμα, όπου απεικονίζεται το προσαρμοσμένο διάγραμμα στα πειραματικά σημεία FER ef31 : Προσδιορισμός της συνάρτησης h(s T ). Μέχρι αυτό το σημείο, έχει υπολογιστεί η πιθανότητα ενεργοποίησης του trapping set του frame 31, υπό την προϋπόθεση ότι είναι γνωστή η διασπορά θορύβου στους T variable κόμβους που το συνθέτουν. Το επόμενο βήμα είναι να βρεθεί η συνάρτηση πυκνότητας πιθανότητας (pdf) αυτής της διασποράς ή, πιο σωστά, της τυπικής απόκλισης s T. 107

118 Είναι γνωστό ότι ο τυχαίος θόρυβος των N=2016 bits μίας κωδικής λέξης προέρχεται από την κανονική κατανομή N(μ,σ) (κατανομή Gauss), με μέση τιμή μ = 0 και τυπική απόκλιση σ = s. Αναφέρθηκε και σε προηγούμενο κεφάλαιο πως κανονικά η διασπορά του θορύβου όλων των κόμβων θα πρέπει να είναι ίδια με αυτήν που αντιστοιχεί σε υποσύνολο κόμβων οποιουδήποτε μεγέθους, όπως, στην περίπτωση που μελετάται, το υποσύνολο που συγκροτεί το trapping set του frame 31 (T=10). Κατά τη μετάδοση μιας λέξης, λοιπόν, υπό φυσιολογικές συνθήκες, προστίθεται, σε όλους τους κόμβους της, θόρυβος τυπικής απόκλισης s, άρα είναι επιθυμητό ο θόρυβος και στους Τ κόμβους του trapping set να έχει την ίδια τυπική απόκλιση. Καταλήγει, όμως, να έχει τελικά τυπική απόκλιση s T, ακριβώς όπως έγινε σκόπιμα στα παραποιημένα τελευταία πειράματα. Ποια είναι, λοιπόν, η κατανομή της τυχαίας μεταβλητής s T, με δεδομένο το s; Κανονική Κατανομή: Ν(μ,σ) f x xμ σ2 e 2π σ Γενικευμένη Γάμμα Κατανομή: GenGAM(α,β,p), α,β,p > 0 p x p α1 β f x x e, x 0 α α β p Γάμμα Κατανομή: GAM(α,β) = GenGAM(α,β,1), α,β > 0 x 1 α1 β f x x e, x 0 α β α χ 2 Κατανομή: χ 2 (ν) = GAM(v/2,2) v x f x x e, x 0 v 2 v 2 2 Συνάρτηση Γάμμα: y x 1 x e y dy, x

119 Αν οι τυχαίες μεταβλητές x 1, x 2, x n ακολουθούν την κανονική κατανομή Ν(μ,σ) και έχουν πειραματική τυπική απόκλιση σ', τότε η μεταβλητή u = (n-1). (σ' 2 /σ 2 ) ακολουθεί την χ 2 (n-1) κατανομή: st 2 T 1 noise 1, noise 2,... noise T N0, s u T 1 χ T 1 GAM, 2 2 s 2 2 Αν μία τυχαία μεταβλητή u ακολουθεί την GAM(α,β) κατανομή, τότε η μεταβλητή y = c. u ακολουθεί την GAM(α,c. β): st T 1 s 2 T 1 s u T 1 GAM, 2 y u s 2 T GAM, 2 s 2 T 1 2 T 1 Αν μία τυχαία μεταβλητή y ακολουθεί την GAM(α,β) κατανομή, τότε η μεταβλητή y ακολουθεί την GenGAM(2α, β,2): T 1 s s y st GAM, 2 s T GenGAM T 1, 2, 2 2 T 1 T 1 Σύμφωνα με όλα τα παραπάνω, η διασπορά θορύβου s T 2 τυχαίων Τ bits από τα Ν μιας κωδικής λέξης, όχι απαραίτητα των Τ bits του trapping set, ακολουθεί τη Γάμμα κατανομή και η τυπική απόκλιση s T ακολουθεί τη γενικευμένη Γάμμα κατανομή. Οι συναρτήσεις πυκνότητας πιθανότητας των δύο αυτών τυχαίων μεταβλητών είναι οι εξής: s2 T T 1 T s 2 T T 1 T 2 2 f s s e 2 s T 1 T T2 f s s e T 2 T1 2 2 s T 1 T 1 2 T s2 T T 1 s2 2 Στο σημείο αυτό, λοιπόν, μπορεί να υπολογιστεί το αρχικό ζητούμενο, που είναι η πιθανότητα να συμβεί το ενδεχόμενο TS 31, δηλαδή να ενεργοποιηθεί το trapping set του frame 31, για γνωστό σημείο θορύβου προκαθορισμένου λόγου E b /N 0, που αντιστοιχεί σε διασπορά s

120 Σύμφωνα με το Θεώρημα Ολικής Πιθανότητας, αν για μία τυχαία συνεχή μεταβλητή x ορίζεται η συνάρτηση πυκνότητας πιθανότητας pdf(x) και επιπλέον αν είναι γνωστή η πιθανότητα PEv x known, όπου το Εv συμβολίζει ένα γεγονός (event) και το x παίρνει τιμές από ένα σύνολο τιμών V ( x V ), τότε η πιθανότητα να συμβεί το γεγονός Ev ορίζεται από το επόμενο ολοκλήρωμα: PEv pdf x PEv x known dx V Το γεγονός Ev εδώ αντιστοιχεί στην ενεργοποίηση του trapping set του frame 31 (TS 31 ) και η μεταβλητή x αντιστοιχεί στην τυπική απόκλιση s T του προστιθέμενου θορύβου στους Τ συγκεκριμένους κόμβους του trapping set του frame 31, οπότε: 31 T 31 T T 0 known P TS pdf s P TS s ds 31 T T T 0 P TS f s h s ds Με την προϋπόθεση ότι είναι γνωστά όλα τα trapping sets που αντιστοιχούν στον πίνακα ελέγχου ισοτιμίας Η, είναι δυνατόν να υπολογιστεί η πιθανότητα ενεργοποίησης του καθενός από αυτά, όπως ακριβώς υπολογίστηκε η πιθανότητα ενεργοποίησης του trapping set του frame 31. Αθροίζοντας αυτές τις πιθανότητες προκύπτει το Frame Error Rate: FER ef Pfail P failts A failts B failts C... FER PTS PTS PTS... ef A B c Αν είναι επιθυμητό να υπολογιστεί το Bit Error Rate, τότε θα πρέπει να ληφθεί υπ' όψιν το μέγεθος του κάθε trapping set και ειδικότερα ο αριθμός I T των variable κόμβων πληροφορίας που συμμετέχουν στο καθένα: ITA ITB I BER TC ef PTS A PTSB PTSc..., K 1512 K K K Στα επόμενα διαγράμματα, παρουσιάζονται γραφικά η συνάρτηση h(s T ), η f(s T ) με παράμετρο το s, και τέλος η συνάρτηση ρ TS31 (s), δηλαδή η πιθανότητα P{TS 31 } για διάφορα επίπεδα θορύβου. 110

121 Η συνάρτηση h(s T ): δεσμευμένη πιθανότητα ενεργοποίησης του trapping set του frame 31, γνωρίζοντας το s T. Η συνάρτηση f(s T ): συνάρτηση πυκνότητας πιθανότητας της τυπικής απόκλισης του θορύβου Τ τυχαίων κόμβων. Η συνάρτηση ρ TS31 (s): πιθανότητα ενεργοποίησης του trapping set του frame

122 112

123 Συμπεράσματα Στο πρώτο κεφάλαιο, αναφέρθηκε το κύριο αίτιο εμφάνισης της περιοχής "error floor" στα διαγράμματα BER, το οποίο είναι η παρουσία ιδιαίτερων δομών στον πίνακα ελέγχου ισοτιμίας ενός κώδικα LDPC, γνωστές ως "trapping sets". Η εργασία επικεντρώθηκε, με λίγα λόγια, στη μελέτη της συμπεριφοράς αυτών των δομών, στην ανάλυση του μηχανισμού ενεργοποίησής τους και στη διερεύνηση των ειδών θορύβου που θα μπορούσαν να ενεργοποιήσουν με κάποια πιθανότητα ένα trapping set. Το τελευταίο οδήγησε στην ανάπτυξη ενός θεωρητικού μοντέλου υπολογισμού της πιθανότητας σφάλματος κατά τη μετάδοση. Σε αυτό το σημείο αναφέρονται περιληπτικά τα πειράματα που πραγματοποιήθηκαν και συνοψίζονται τα συμπεράσματα που προέκυψαν από την όλη διαδικασία. Για τις ανάγκες της εργασίας, χρησιμοποιήθηκε κώδικας LDPC, ο οποίος περιγράφεται από πίνακα ελέγχου ισοτιμίας Η, διαστάσεων 504x2016 και αριθμό επιπέδων 126. Οι αποκωδικοποιήσεις που πραγματοποιήθηκαν χρησιμοποιώντας αλγορίθμους message passing, αφορούσαν 90 ορισμένα frames, προερχόμενα από σύστημα αποκωδικοποίησης υλοποιημένο σε hardware, και βασίζονταν στην ιδέα του layered decoding. Ένα "frame" αποτελεί την είσοδο του αποκωδικοποιητή και προέρχεται από το κανάλι μετάδοσης, το οποίο αλλοιώνει την αρχική κωδική λέξη. Κάποια από τα εξετασθέντα frames παρατηρήθηκε πως ήταν παρόμοια μεταξύ τους, κι αυτό γιατί, κατά τη δημιουργία τους μέσω εξομοίωσης, έτυχε να έχουν κοινή κωδική λέξη ή ακόμα και παρόμοιο θόρυβο. Ο κβαντισμός των δεδομένων, όμως, και η εξομοίωησή τους σε διαφορετικές στάθμες θορύβου, είχε ως αποτέλεσμα, κάποιες φορές, τη διαφορετική συμπεριφορά αποκωδικοποίησης για το καθένα από αυτά. Οι αποκωδικοποιήσεις των frames με υπολογισμούς διπλής ακρίβειας, χρησιμοποιώντας και τους 4 αλγορίθμους message passing, έδειξε πως ο αλγόριθμος normalized Min-Sum διαφέρει από τους υπολοίπους ως προς το εξής: αν η σωστή μεταδιδόμενη λέξη δεν προσδιοριστεί μέσα στις πρώτες επαναλήψεις, τότε είναι πιθανότερο να μην προσδιοριστεί ποτέ. Παρατηρήθηκε, ακόμη, πως δεν παρουσιάστηκε σε καμία περίπτωση το σφάλμα τύπου ΙΙΙ (σύγκλιση σε έγκυρη αλλά όχι τη σωστή μεταδιδόμενη κωδική λέξη). Στις περιπτώσεις αποτυχίας του αλγορίθμου normalized Min-Sum προέκυπτε το σφάλμα τύπου Ι (σύγκλιση σε μη έγκυρη κωδική λέξη), ενώ στις περιπτώσεις αποτυχίας των αλγορίθμων log Sum-Product και Min-Sum προέκυπτε το σφάλμα τύπου ΙΙ (διαφορετική λύση από επανάληψη σε επανάληψη). Ο αλγόριθμος offset Min-Sum παρουσίασε και τους δύο τύπους σφαλμάτων (Ι-ΙΙ). Κατά τη λεπτομερέστερη ανάλυση της αποκωδικοποίησης διπλής ακρίβειας μόνο με τον αλγόριθμο normalized Min-Sum, προέκυψαν τα εξής συμπεράσματα: ένα πολύ μικρό ποσοστό των συνολικά 2016 variable κόμβων ήταν αρχικά λανθασμένο (περίπου 3.3%) και αυτό ήταν αρκετό ώστε σε κάποιες περιπτώσεις να αποτύχει η αποκωδικοποίηση. Τα frames που απέτυχαν δεν είχαν απαραίτητα περισσότερα αρχικά 113

124 λάθη σε σχέση με τα frames που αποκωδικοποιήθηκαν τελικά επιτυχώς. Σχετικά με τη μορφή των trapping sets, υπήρχαν περιπτώσεις κάποιων frames, τα οποία παγιδεύτηκαν σε σταθερού μεγέθους trapping set, ενώ άλλα ταλαντεύονταν μεταξύ υποσυνόλων μεγαλύτερων trapping sets. Επιπλέον, περίπου οι μισοί τελικά λανθασμένοι κόμβοι είχαν αρχικά σωστή τιμή LLR, παρασύρθηκαν, όμως, από τους αρχικά λανθασμένους κόμβους και τελικά συμμετείχαν στα trapping sets. Ενδιαφέρον έχει το γεγονός πως παρατηρήθηκαν παρόμοια, ως προς τη δομή, trapping sets: οι κόμβοι που συνέθεταν ένα trapping set διέφεραν από τους αντίστοιχους κόμβους ενός άλλου trapping set το πολύ κατά τρεις θέσεις, ενώ, κατά τα άλλα, οι διασυνδέσεις των κόμβων ήταν ίδιες. Προκειμένου να εξηγηθεί το γεγονός αυτό, αναλύθηκε ο τρόπος κατασκευής του πίνακα ελέγχου ισοτιμίας, ο οποίος προκύπτει από έναν πίνακα βάσης. Το συμπέρασμα ήταν πως αν μελετηθούν οι κύκλοι μικρού μήκους στον πίνακα βάσης, τότε μπορεί να μειωθεί ο αριθμός των κύκλων μικρού μήκους στον πίνακα ελέγχου ισοτιμίας. Η ελαχιστοποίηση των κύκλων θα μείωνε τον αριθμό των trapping sets κι έτσι θα παρουσιαζόταν βελτίωση των επιδόσεων του αποκωδικοποιητή στην περιοχή του error floor. Στη συνέχεια της εργασίας, παρουσιάστηκαν τα αποτελέσματα των bit-true εξομοιώσεων αποκωδικοποίησης των 90 frames. Από αυτά τα πειράματα φάνηκε πως κάποια frames είχαν αρχικά καταγραφεί από το σύστημα αποκωδικοποίησης στο hardware εξαιτίας του κριτηρίου τερματισμού των αλγορίθμων (9 το πολύ επαναλήψεις), ενώ για κάποια άλλα έφταιξε η ακρίβεια αναπαράστασης των ενδιάμεσων ανταλλασσόμενων μηνυμάτων. Μόνο 26 ήταν τα frames τα οποία δεν αποκωδικοποιήθηκαν ούτε με περισσότερες επαναλήψεις ούτε με υπολογισμούς διπλής ακρίβειας. Η αυξομείωση του μήκους λέξης των δεδομένων είχε προφανώς επίδραση στα αποτελέσματα των αποκωδικοποιήσεων: όσο μειωνόταν η ακρίβεια αναπαράστασης του κλασματικού μέρους και κυρίως του ακέραιου μέρους, τόσο περισσότερες αποτυχίες διαπιστώνονταν. Αυτό που αξίζει να αναφερθεί είναι πως κατά την αποκωδικοποίηση bit-true με format.0 ή.-1, δηλαδή με ιδιαίτερα ανεπαρκή ακρίβεια αναπαράστασης κλασματικού μέρους, σημειώθηκε ένας μικρός αριθμός από frames, τα οποία δεν είχαν καταφέρει να αποκωδικοποιηθούν με καμία άλλη ακρίβεια. Στο τέλος του δεύτερου κεφαλαίου, παρουσιάστηκαν τρεις διαφοροποιημένες εκδοχές του αυθεντικού αλγορίθμου normalized Min-Sum: α) αποκωδικοποίηση με 2 παράγοντες κανονικοποίησης, β) αποκωδικοποίηση μεταβάλλοντας τα μέγιστα R mn μηνύματα και γ) αποκωδικοποίηση μεταβάλλοντας τα LLR ορισμένων variable κόμβων. Σκοπός ήταν να βρεθούν νέοι τρόποι αποκωδικοποίησης των frames της περιοχής error floor. Τα αποτελέσματα ήταν ικανοποιητικά, εφόσον σημειώθηκαν σε κάθε περίπτωση περισσότερες επιτυχίες αλλά και μία μικρή βελτίωση στον αριθμό των απαιτούμενων επαναλήψεων. Ο ρόλος των check κόμβων μελετήθηκε λεπτομερώς στο δεύτερο κεφάλαιο. Από την ανάλυση συγκεκριμένων παραδειγμάτων, έγινε σαφές πως αν ένας check κόμβος αναγνωρίσει ένα λανθασμένο variable κόμβων, τότε, χωρίς να μπορεί να 114

125 αναγνωρίσει ποιος ακριβώς είναι αυτός, του στέλνει σωστό μήνυμα, ενώ στέλνει λανθασμένα μηνύματα σε όλους τους υπόλοιπους κόμβους του. Επιπλέον, επεξηγήθηκε σχηματικά ο τρόπος με τον οποίο ένας check κόμβος μπορεί να καταλήξει εσφαλμένα ικανοποιημένος στο τέλος μίας επανάληψης. Όσον αφορά το τρίτο κεφάλαιο της εργασίας, σε αυτό παρουσιάστηκαν όλα εκείνα τα πειράματα, με τη βοήθεια των οποίων σχεδιάστηκαν διαγράμματα BER, ώστε να μελετηθούν τα ιδιαίτερα χαρακτηριστικά του θορύβου που ενεργοποιεί με κάποια πιθανότητα ένα trapping set. Όπως ήταν ήδη γνωστό και επιβεβαιώθηκε από τα πρώτα πειράματα, η περιοχή του error floor είναι πολύ δύσκολο να εμφανιστεί στα διαγράμματα BER, όταν η εξομοίωση πραγματοποιείται σε software, όπως έγινε στην παρούσα εργασία. Παρατηρήθηκε, όμως, πως κατά την εξομοίωση αποκωδικοποίησης τυχαίων κωδικών λέξεων, στις οποίες είχε προστεθεί αυτούσιος ο θόρυβος ενός από τα 90 frames, εμφανίστηκε σχετικά νωρίς στα διαγράμματα αυτή η περιοχή (δηλαδή σε υψηλότερα επίπεδα θορύβου απ' ότι θα έπρεπε). Η εξομοίωση αυτού του είδους αποτέλεσε την πρώτη σειρά πειραμάτων που πραγματοποιήθηκε. Tα νέα frames, που δεν αποκωδικοποιήθηκαν επιτυχώς, μελετήθηκαν και παρατηρήθηκε πως όλα παγιδεύτηκαν στο ίδιο trapping set, ενώ επιπλέον, στις αντίστοιχες κωδικές λέξεις κάποια bits είχαν πάντα τις ίδιες συγκεκριμένες τιμές. Από τα αμέσως επόμενα διαγράμματα BER που σχεδιάστηκαν (δεύτερη σειρά πειραμάτων), προέκυψε αμέσως ένα βασικό συμπέρασμα: υπεύθυνος για την εμφάνιση του error floor είναι μόνο ο θόρυβος που προστίθεται στα bits που αντιστοιχούν στους variable κόμβους ενός trapping set, ενώ είναι επίσης πιθανό να αρκεί ο θόρυβος ενός υποσυνόλου αυτών των κόμβων. Από τη μελέτη των νέων μη επιτυχώς αποκωδικοποιημένων frames αλλά και μία τρίτη σειρά πειραμάτων και διαγραμμάτων BER, διατυπώθηκε η εξής σημαντική πρόταση: σχετικά με το πόσο γρήγορα θα εμφανιστεί η περιοχή του error floor σε ένα διάγραμμα και πόσο έντονη αυτή θα είναι, δεν παίζει ρόλο μόνο η ποσότητα του προστιθέμενου θορύβου στους κόμβους ενός trapping set, αλλά και σε ποιον ακριβώς κόμβο εισέρχεται ο πιο ισχυρός θόρυβος. Έγινε επίσης κατανοητό πως δεν είναι το ίδιο σημαντικοί όλοι οι κόμβοι ενός trapping set και πως δε συνεισφέρουν όλοι με τον ίδιο τρόπο στην ενεργοποίησή του. Όπως διαπιστώθηκε από την όλη μελέτη του θέματος, η ενεργοποίηση ενός trapping set δε σχετίζεται με το θόρυβο που προστίθεται σε variable κόμβους με μεγαλύτερο node degree σε σχέση με άλλους, αλλά σχετίζεται με τη θέση μέσα στο trapping set των κόμβων στους οποίους αντιστοιχεί ο ισχυρότερος θόρυβος. Στη συνέχεια, πραγματοποιήθηκαν πειράματα "μηδενικού θορύβου", δηλαδή εξομοιώσεις αποκωδικοποιήσεων κατά τις οποίες εισήχθει μηδενικός θόρυβος σε όλα τα bits μίας κωδικής λέξης, εκτός από τα bits συγκεκριμένου trapping set, όπου εφαρμόστηκε τυχαίος αλλά αρκετά ισχυρός θόρυβος. Με αυτήν την περίπτωση θορύβου, εξετάστηκαν οι επιπτώσεις που έχει στην ενεργοποίηση του trapping set μόνο ο θόρυβος των κόμβων αυτού, χωρίς να επηρεάζονται τα αποτελέσματα από το 115

126 θόρυβο των υπολοίπων. Όπως ήταν φυσικό, τα νέα frames που δεν αποκωδικοποιήθηκαν, παγιδεύτηκαν και πάλι στο ίδιο trapping set, ενώ παρατηρήθηκε πως πολλές φορές απουσίαζαν εκείνοι οι κόμβοι οι οποίοι είχε διαπιστωθεί προηγουμένως πως δεν ανήκουν στο βασικό κορμό του. Αντιθέτως, ήταν σχεδόν πάντα παρόντες οι κόμβοι που πράγματι ανήκουν στο βασικό κορμό του συγκεκριμένου trapping set. Έχει σημασία να αναφερθεί πως από τη μελέτη των αποτελεσμάτων των πειραμάτων μηδενικού θορύβου, παρατηρήθηκε πως τα περισσότερα ανεπιτυχώς αποκωδικοποιημένα frames είχαν 5 έως 7 τιμές LLR αρχικά λανθασμένες, ενώ σημειώθηκαν και λίγα frames, τα οποία είχαν μόλις 4 ή ακόμα και 3 αρχικά λάθη. Το γενικό συμπέρασμα αυτών των πειραμάτων ήταν πως ακόμα κι αν ο θόρυβος όλων των κόμβων εκτός ενός trapping set είναι μηδενικός, ο αποκωδικοποιητής μπορεί να παγιδευτεί σε αυτό το trapping set αν εισέλθει επαρκής θόρυβος μόνο στους variable κόμβους αυτού. Μεγάλος θόρυβος αρκεί να προστεθεί σε λίγους κόμβους ενώ μικρός θόρυβος πρέπει να προστεθεί σε περισσότερους κόμβους, ώστε να είναι πιθανή η ενεργοποίηση του trapping set. Πραγματοποιήθηκαν κάποια επιπλέον πειράματα μηδενικού θορύβου, όπου ο τυχαίος θόρυβος προστέθηκε σε ομάδες κόμβων που δε σχετίζονταν μεταξύ τους και δε συνέθεταν κάποιο trapping set. Το αποτέλεσμα ήταν να προκύψουν διαγράμματα BER μετατοπισμένα προς τα αριστερά, γεγονός το οποίο δείχνει καλύτερη συμπεριφορά του συστήματος αποκωδικοποίησης και πως αν ο ισχυρός θόρυβος δεν εισέρχεται σε κόμβους που διασυνδέονται μεταξύ τους, τότε η πιθανότητα αποτυχίας ελαχιστοποιείται. Σύμφωνα με τα τελευταία πειράματα που εκτελέστηκαν και αναλύθηκαν, κατά την εξομοίωση αποκωδικοποίησης τυχαίων κωδικών λέξεων, προστέθηκε σε αυτές τυχαίος θόρυβος σε όλους τους variable κόμβους, με την ιδιαιτερότητα πως ο θόρυβος που αντιστοιχούσε σε κόμβους ενός trapping set είχε μεγαλύτερη διασπορά, ή αλλιώς μεγαλύτερη ισχύ. Το σκεπτικό αυτών των πειραμάτων προέκυψε από τη μελέτη των πειραματικών τιμών διασποράς του θορύβου που αντιστοιχούσε στους κόμβους που συνέθεταν τα trapping sets του δεύτερου κεφαλαίου. Διαπιστώθηκε, λοιπόν, πως η διασπορά του θορύβου στα trapping sets ήταν πολύ μεγαλύτερη από τη διασπορά του θορύβου όλων των υπόλοιπων κόμβων. Το κάθε διάνυσμα τυχαίου θορύβου που δημιουργήθηκε με τον τρόπο που περιγράφηκε ήταν ένα από αυτά που πιθανότατα θα ενεργοποιούσε ένα συγκεκριμένο trapping set. Πράγματι, σχεδόν όλα τα μη επιτυχώς αποκωδικοποιημένα frames, στις κωδικές λέξεις των οποίων είχε προστεθεί τέτοιου είδους θόρυβος, παγιδεύτηκαν σε ένα και μοναδικό trapping set. Τα διαγράμματα και οι μετρήσεις BER που προήλθαν από την τελευταία αυτή διαδικασία χρησιμοποιήθηκαν ώστε να αναπτυχθεί το θεωρητικό μοντέλο που παρουσιάστηκε στο τέλος του τρίτου κεφαλαίου. Σύμφωνα με τη διεξοδική ανάλυση των τελευταίων διαγραμμάτων BER, συμπεραίνεται ξεκάθαρα πως ανεξάρτητα από την ισχύ του θορύβου που εισάγεται σε όλους σχεδόν τους variable κόμβους μιας κωδικής 116

127 λέξης, ο προστιθέμενος θόρυβος στους κόμβους ενός trapping set είναι αυτός που θα καθορίσει την πιθανή ενεργοποίησή του. Με βάση πειραματικές μετρήσεις αλλά και θεωρητικούς μαθηματικούς τύπους, προτάθηκε ένας τρόπος υπολογισμού της πιθανότητας ενεργοποίησης ενός trapping set αλλά και γενικότερα ένας τρόπος υπολογισμού της πιθανότητας εμφάνισης σφάλματος κατά τη μετάδοση, για ένα δοσμένο σύστημα αποκωδικοποίησης, με την προϋπόθεση πως είναι γνωστά όλα τα trapping sets στο γράφο Tanner. Αυτό που θα είχε ενδιαφέρον μελλοντικά είναι να επαληθευτεί με πειραματικές μεθόδους το θεωρητικό μοντέλο. 117

128 118

129 Παράρτημα 119

130 120

131 Πίνακας Α.1 Αριθμός επαναλήψεων, οι οποίες εκτελέστηκαν για κάθε frame, κατά την αποκωδικοποίηση με τους 4 αλγορίθμους. (διπλή εσωτερική ακρίβεια αναπαράστασης δεδομένων) 121

132 Πίνακας Α.2 (α) 122 Αριθμός επαναλήψεων, οι οποίες εκτελέστηκαν για κάθε frame, κατά την εξομοίωση αποκωδικοποίησης Bit-True με τον αλγορίθμο normalized Min-Sum.

133 Πίνακας Α.2 (β) Αριθμός επαναλήψεων, οι οποίες εκτελέστηκαν για κάθε frame, κατά την εξομοίωση αποκωδικοποίησης Bit-True με τον αλγορίθμο normalized Min-Sum 123

134 Πίνακας Α.3 Αριθμός επαναλήψεων, οι οποίες εκτελέστηκαν για κάθε frame, κατά την αποκωδικοποίηση με την αρχική και την εναλλακτική έκδοση (2 normalization factors) του αλγορίθμου normalized Min-Sum. 124

135 Πίνακας Α.4 Αριθμός επαναλήψεων, οι οποίες εκτελέστηκαν για κάθε frame, κατά την αποκωδικοποίηση με την αρχική και την εναλλακτική έκδοση (smaller max R mn message) του αλγορίθμου normalized Min-Sum. 125

136 Πίνακας Α.5 Αριθμός επαναλήψεων, οι οποίες εκτελέστηκαν για κάθε frame, κατά την αποκωδικοποίηση με την αρχική και την εναλλακτική έκδοση (smaller max R mn message) του αλγορίθμου normalized Min-Sum. 126

137 Πίνακας Α.6 Αριθμός επαναλήψεων, οι οποίες εκτελέστηκαν κατά την αποκωδικοποίηση με αλλαγή τιμών LLR, για τα frames που αποτυγχάνουν με τον αυθεντικό normalized Min-Sum αλγόριθμο. 127

Θεωρία Πληροφορίας. Διάλεξη 7: Κωδικοποίηση καναλιού με γραμμικούς κώδικες block. Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής

Θεωρία Πληροφορίας. Διάλεξη 7: Κωδικοποίηση καναλιού με γραμμικούς κώδικες block. Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής Θεωρία Πληροφορίας Διάλεξη 7: Κωδικοποίηση καναλιού με γραμμικούς κώδικες block Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής 1 Ατζέντα Τεχνικές Διόρθωσης Λαθών Κώδικες εντοπισμού λαθών Κώδικες εντοπισμού

Διαβάστε περισσότερα

Nέες Τεχνολογίες. στις Επικοινωνίες

Nέες Τεχνολογίες. στις Επικοινωνίες Τεχνολογικό Εκπαιδευτικό Ίδρυμα Σερρών Τμήμα Πληροφορικής & Επικοινωνιών Nέες Τεχνολογίες στις Επικοινωνίες Δρ. Δημήτριος Ευσταθίου Επίκουρος Καθηγητής Κώδικες Διόρθωσης Λαθών Τεχνολογικό Εκπαιδευτικό

Διαβάστε περισσότερα

Χρήστος Ξενάκης. Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων

Χρήστος Ξενάκης. Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων ΘΕΩΡΙΑ ΠΛΗΡΟΦΟΡΙΑΣ Κεφάλαιο 10 : Κωδικοποίηση καναλιού Χρήστος Ξενάκης Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων Περιεχόμενα Ομιλίας Απόσταση και βάρος Hamming Τεχνικές και κώδικες ανίχνευσης &

Διαβάστε περισσότερα

Τηλεπικοινωνιακά Συστήματα ΙΙ

Τηλεπικοινωνιακά Συστήματα ΙΙ Τηλεπικοινωνιακά Συστήματα ΙΙ Διάλεξη 13: Συνελικτικοί Κώδικες Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής 1 Κώδικες: Εισαγωγή Συνελικτικοί κώδικες Ατζέντα Ιστορική αναδρομή Μαθηματικό υπόβαθρο Αναπαράσταση

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ. Εργαστήριο 8 ο. Αποδιαμόρφωση PAM-PPM με προσαρμοσμένα φίλτρα

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ. Εργαστήριο 8 ο. Αποδιαμόρφωση PAM-PPM με προσαρμοσμένα φίλτρα Τμήμα Πληροφορικής και Τηλεπικοινωνιών ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ ΨΗΦΙΑΚΕΣ ΕΠΙΚΟΙΝΩΝΙΕΣ Εργαστήριο 8 ο Αποδιαμόρφωση PAM-PPM με προσαρμοσμένα φίλτρα Βασική Θεωρία Σε ένα σύστημα μετάδοσης

Διαβάστε περισσότερα

Τηλεπικοινωνιακά Συστήματα ΙΙ

Τηλεπικοινωνιακά Συστήματα ΙΙ Τηλεπικοινωνιακά Συστήματα ΙΙ Διάλεξη 1: Χωρητικότητα Καναλιών Το θεώρημα Shannon - Hartley Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής 1 Ατζέντα 1. Δυαδική σηματοδοσία 2. Μορφές δυαδικής σηματοδοσίας 3.

Διαβάστε περισσότερα

Χρήστος Ξενάκης. Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων

Χρήστος Ξενάκης. Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων ΘΕΩΡΙΑ ΠΛΗΡΟΦΟΡΙΑΣ Κεφάλαιο 5 : Θόρυβος Χρήστος Ξενάκης Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων Περιεχόμενα Ομιλίας Είδη θορύβου Περιγραφή θορύβου Θεώρημα Shannon Hartley Απόδοση ισχύος και εύρους

Διαβάστε περισσότερα

Θεωρία Πληροφορίας. Διάλεξη 10: Κωδικοποίηση καναλιού με συνελικτικούς κώδικες. Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής

Θεωρία Πληροφορίας. Διάλεξη 10: Κωδικοποίηση καναλιού με συνελικτικούς κώδικες. Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής Θεωρία Πληροφορίας Διάλεξη 10: Κωδικοποίηση καναλιού με συνελικτικούς κώδικες Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής 1 Ατζέντα Κωδικοποίηση καναλιού: Σύντομη επανάληψη Συνελικτικοί κώδικες Ιστορική

Διαβάστε περισσότερα

Τμήμα Μηχανικών Η/Υ και Πληροφορικής

Τμήμα Μηχανικών Η/Υ και Πληροφορικής Τμήμα Μηχανικών Η/Υ και Πληροφορικής Εργαστήριο Επεξεργασίας Σημάτων και Τηλεπικοινωνιών Ασύρματες και Κινητές Επικοινωνίες Κωδικοποίηση καναλιού Τι θα δούμε στο μάθημα Σύντομη εισαγωγή Γραμμικοί κώδικες

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ Σχολή Θετικών Επιστημών Τεχνολογίας Τηλεπικοινωνιών Τμήμα Επιστήμης και Τεχνολογίας Τηλεπικοινωνιών ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ ΕΠΙΚΟΙΝΩΝΙΕΣ ΙI Εργαστήριο 8 ο : Προσαρμοσμένα Φίλτρα Βασική

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ Σχολή Θετικών Επιστημών Τεχνολογίας Τηλεπικοινωνιών Τμήμα Επιστήμης και Τεχνολογίας Τηλεπικοινωνιών ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ ΕΠΙΚΟΙΝΩΝΙΕΣ ΙI Εργαστήριο 5 ο : Προσαρμοσμένα Φίλτρα Βασική

Διαβάστε περισσότερα

Μάθημα Εισαγωγή στις Τηλεπικοινωνίες Κωδικοποίηση πηγής- καναλιού Μάθημα 9o

Μάθημα Εισαγωγή στις Τηλεπικοινωνίες Κωδικοποίηση πηγής- καναλιού Μάθημα 9o Μάθημα Εισαγωγή στις Τηλεπικοινωνίες Κωδικοποίηση πηγής- καναλιού Μάθημα 9o ΕΘΝΙΚΟ & ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ Τομέας Επικοινωνιών και Επεξεργασίας Σήματος Τμήμα Πληροφορικής & Τηλεπικοινωνιών

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ : Η/Υ : Ε VLSI Δ Ε

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ : Η/Υ : Ε VLSI Δ Ε ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ : Η/Υ : Ε VLSI Δ Ε του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής

Διαβάστε περισσότερα

Σχεδίαση αποκωδικοποιητή VLSI για κώδικες LDPC

Σχεδίαση αποκωδικοποιητή VLSI για κώδικες LDPC ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ Μεταπτυχιακό Δίπλωμα Ειδίκευσης «Ολοκληρωμένα Συστήματα Υλικού & Λογισμικού» Σχεδίαση αποκωδικοποιητή VLSI για κώδικες LDPC Τσατσαράγκος Ιωάννης Μεταπτυχιακή

Διαβάστε περισσότερα

Εξομοίωση Τηλεπικοινωνιακού Συστήματος Βασικής Ζώνης

Εξομοίωση Τηλεπικοινωνιακού Συστήματος Βασικής Ζώνης Πανεπιστήμιο Πατρών Τμήμα Μηχ. Η/Υ & Πληροφορικής Ακαδημαϊκό Έτος 009-010 Ψ Η Φ Ι Α Κ Ε Σ Τ Η Λ Ε Π Ι Κ Ο Ι Ν Ω Ν Ι ΕΣ η Εργαστηριακή Άσκηση: Εξομοίωση Τηλεπικοινωνιακού Συστήματος Βασικής Ζώνης Στην άσκηση

Διαβάστε περισσότερα

Ευρυζωνικά δίκτυα (2) Αγγελική Αλεξίου

Ευρυζωνικά δίκτυα (2) Αγγελική Αλεξίου Ευρυζωνικά δίκτυα (2) Αγγελική Αλεξίου alexiou@unipi.gr 1 Σήματα και πληροφορία Βασικές έννοιες 2 Αναλογικά και Ψηφιακά Σήματα Στις τηλεπικοινωνίες συνήθως χρησιμοποιούμε περιοδικά αναλογικά σήματα και

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ Κ 17 Επικοινωνίες ΙΙ Χειμερινό Εξάμηνο Διάλεξη 15 η Νικόλαος Χ. Σαγιάς Επίκουρος Καθηγητής Webpage: http://eclass.uop.gr/courses/tst15

Διαβάστε περισσότερα

Βασικές λειτουργίες Ανίχνευση πλαισίων Τι κάνει το επίπεδο ζεύξης Χρησιμοποιεί τις υπηρεσίες του φυσικού επιπέδου, ήτοι την (ανασφαλή) μεταφορά δεδομέ

Βασικές λειτουργίες Ανίχνευση πλαισίων Τι κάνει το επίπεδο ζεύξης Χρησιμοποιεί τις υπηρεσίες του φυσικού επιπέδου, ήτοι την (ανασφαλή) μεταφορά δεδομέ Αρχές σχεδιασμού, μοντέλα αναφοράς, τυποποίηση Μιλτιάδης Αναγνώστου 19 Μαΐου 2011 1/41 Βασικές λειτουργίες Ανίχνευση πλαισίων Επίδραση του θορύβου Παραδείγματα 2/41 Βασικές λειτουργίες Ανίχνευση πλαισίων

Διαβάστε περισσότερα

Σταθερή περιβάλλουσα (Constant Envelope)

Σταθερή περιβάλλουσα (Constant Envelope) Διαμόρφωση ολίσθησης φάσης (Phase Shift Keying-PSK) Σταθερή περιβάλλουσα (Constant Envelope) Ίση Ενέργεια συμβόλων 1 Binary Phase Shift keying (BPSK) BPSK 2 Quaternary Phase Shift Keying (QPSK) 3 Αστερισμός-Διαγράμματα

Διαβάστε περισσότερα

Θεωρία Πληροφορίας. Διάλεξη 12:Κωδικοποίηση Καναλιού με Κώδικες Turbo. Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής

Θεωρία Πληροφορίας. Διάλεξη 12:Κωδικοποίηση Καναλιού με Κώδικες Turbo. Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής Θεωρία Πληροφορίας Διάλεξη 12:Κωδικοποίηση Καναλιού με Κώδικες Turbo Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής 1 Ατζέντα 1. Κώδικες turbo 2 Κώδικες Turbo Η ιδέα για τους κώδικες turbo διατυπώθηκε για

Διαβάστε περισσότερα

«ΟΛΟΚΛΗΡΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΥΛΙΚΟΥ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ»

«ΟΛΟΚΛΗΡΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΥΛΙΚΟΥ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ» ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΤΟΥ ΤΜΗΜΑΤΟΣ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ «ΟΛΟΚΛΗΡΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΥΛΙΚΟΥ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ» Αρχιτεκτονικές υλικού χαμηλής ισχύος για την αποκωδικοποίηση

Διαβάστε περισσότερα

ΚΩΔΙΚΕΣ LDPC Τεχνικές Κωδικοποίησης

ΚΩΔΙΚΕΣ LDPC Τεχνικές Κωδικοποίησης ΚΩΔΙΚΕΣ LDPC Τεχνικές Κωδικοποίησης 2010-2011 1 Καράς Δημήτριος, ΑΕΜ 6375 Χρόνης Θεόδωρος, ΑΕΜ 2628 Ημερομηνία: 25-10-2011 Κώδικες LDPC Ιστορικά στοιχεία LDPC: Low Density Parity Check, χαμηλής πυκνότητας

Διαβάστε περισσότερα

Αντικείμενο και συνεισφορά της Διπλωματικής Εργασίας Οι LDPC κώδικες χρησιμοποιούνται ευρέως στις μέρες μας σε ψηφιακά τηλεπικοινωνιακά συστήματα ασύρ

Αντικείμενο και συνεισφορά της Διπλωματικής Εργασίας Οι LDPC κώδικες χρησιμοποιούνται ευρέως στις μέρες μας σε ψηφιακά τηλεπικοινωνιακά συστήματα ασύρ ΑΡΧΙΤΕΚΤΟΝΙΚΕΣ ΓΙΑ LDPC ΑΠΟΚΩΔΙΚΟΠΟΙΗΤΕΣ ΔΙΑΚΟΓΙΑΝΝΗΣ ΑΡΤΕΜΙΟΣ Μεταπτυχιακό Πρόγραμμα ΟΣΥΛ Πανεπιστήμιο Πατρών - Πολυτεχνική Σχολή Μεταπτυχιακή Εργασία στα πλαίσια απονομής Διπλώματος στα Ολοκληρωμένα

Διαβάστε περισσότερα

Καναλιού. Καναλιού. Προχωρημένα Θέματα Τηλεπικοινωνιών. Κατηγορίες Κωδικών Καναλιού. Τι πετυχαίνει η Κωδ. Καναλιού. Κωδικοποίηση Καναλιού.

Καναλιού. Καναλιού. Προχωρημένα Θέματα Τηλεπικοινωνιών. Κατηγορίες Κωδικών Καναλιού. Τι πετυχαίνει η Κωδ. Καναλιού. Κωδικοποίηση Καναλιού. Προχωρημένα Θέματα Τηλεπικοινωνιών Πηγή Δεδομένων Κωδικοποίηση Καναλιού Κώδικας Πηγής Κώδικας Καναλιού Διαμόρφωση Κανάλι Δέκτης Δεδομένων Αποκωδ/ση Πηγής Αποκωδ/ση Καναλιού Αποδιαμόρφωση Κωδικοποίηση Καναλιού

Διαβάστε περισσότερα

Χρήστος Ξενάκης. Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων

Χρήστος Ξενάκης. Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων ΘΕΩΡΙΑ ΠΛΗΡΟΦΟΡΙΑΣ Κεφάλαιο 9 : Κανάλι-Σύστημα Χρήστος Ξενάκης Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων Περιεχόμενα Ομιλίας Χωρητικότητα Χ ό καναλιού Το Gaussian κανάλι επικοινωνίας Τα διακριτά

Διαβάστε περισσότερα

Τεχνικές διόρθωσης και ανίχνευσης σφαλµάτων

Τεχνικές διόρθωσης και ανίχνευσης σφαλµάτων Τεχνικές διόρθωσης και ανίχνευσης σφαλµάτων Εντοπισµός σφαλµάτων Εντοπισµός ιόρθωση Προστίθενται bit πλεονασµού Αν µπορεί διορθώνει, (forward error correction) αλλιώς ζητά επανεκποµπή (backward error correction)

Διαβάστε περισσότερα

EE728 (22Α004) - Προχωρημένα Θέματα Θεωρίας Πληροφορίας 3η σειρά ασκήσεων Διακριτά και Συνεχή Κανάλια. Παράδοση: Έως 22/6/2015

EE728 (22Α004) - Προχωρημένα Θέματα Θεωρίας Πληροφορίας 3η σειρά ασκήσεων Διακριτά και Συνεχή Κανάλια. Παράδοση: Έως 22/6/2015 EE728 (22Α004) - Προχωρημένα Θέματα Θεωρίας Πληροφορίας Φυλλάδιο 13 Δ. Τουμπακάρης 30 Μαΐου 2015 EE728 (22Α004) - Προχωρημένα Θέματα Θεωρίας Πληροφορίας 3η σειρά ασκήσεων Διακριτά και Συνεχή Κανάλια Παράδοση:

Διαβάστε περισσότερα

Ψηφιακές Τηλεπικοινωνίες. Πιθανότητα Σφάλματος για Δυαδική Διαμόρφωση

Ψηφιακές Τηλεπικοινωνίες. Πιθανότητα Σφάλματος για Δυαδική Διαμόρφωση Ψηφιακές Τηλεπικοινωνίες Πιθανότητα Σφάλματος για Δυαδική Διαμόρφωση Σύνδεση με τα Προηγούμενα Σχεδιάστηκε ο βέλτιστος δέκτης για κανάλι AWGN Επειδή πάντοτε υπάρχει ο θόρυβος, ακόμη κι ο βέλτιστος δέκτης

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ Κ 17 Επικοινωνίες ΙΙ Χειμερινό Εξάμηνο Διάλεξη 3 η Νικόλαος Χ. Σαγιάς Επίκουρος Καθηγητής Webpage: http://eclass.uop.gr/courses/tst15

Διαβάστε περισσότερα

2 η Εργαστηριακή Άσκηση

2 η Εργαστηριακή Άσκηση Πανεπιστήμιο Πατρών Τμήμα Μηχ. Η/Υ & Πληροφορικής Ψ Η Φ Ι Α Κ Ε Σ Τ Η Λ Ε Π Ι Κ Ο Ι Ν Ω Ν Ι ΕΣ 2 η Εργαστηριακή Άσκηση Σύγκριση Ομόδυνων Ζωνοπερατών Συστημάτων 8-PSK και 8-FSK Στην άσκηση αυτή καλείστε

Διαβάστε περισσότερα

Μοντέλο Επικοινωνίας Δεδομένων. Επικοινωνίες Δεδομένων Μάθημα 6 ο

Μοντέλο Επικοινωνίας Δεδομένων. Επικοινωνίες Δεδομένων Μάθημα 6 ο Μοντέλο Επικοινωνίας Δεδομένων Επικοινωνίες Δεδομένων Μάθημα 6 ο Εισαγωγή Με τη βοήθεια επικοινωνιακού σήματος, κάθε μορφή πληροφορίας (κείμενο, μορφή, εικόνα) είναι δυνατόν να μεταδοθεί σε απόσταση. Ανάλογα

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ: ΑΝΙΧΝΕΥΣΗ ΣΦΑΛΜΑΤΩΝ ΣΕ ΤΗΛΕΠΙΚΟΙΝΩΝΙΑΚΑ ΔΙΚΤΥΑ

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ: ΑΝΙΧΝΕΥΣΗ ΣΦΑΛΜΑΤΩΝ ΣΕ ΤΗΛΕΠΙΚΟΙΝΩΝΙΑΚΑ ΔΙΚΤΥΑ ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ: ΑΝΙΧΝΕΥΣΗ ΣΦΑΛΜΑΤΩΝ ΣΕ ΤΗΛΕΠΙΚΟΙΝΩΝΙΑΚΑ ΔΙΚΤΥΑ ΑΝΙΧΝΕΥΣΗ ΣΦΑΛΜΑΤΩΝ: Κυκλικός Έλεγχος Πλεονασμού CRC codes Cyclic Redundancy Check codes Ο μηχανισμός ανίχνευσης σφαλμάτων στις επικοινωνίες

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΗΛΕΚΤΡΟΝΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΥΛΟΠΟΙΗΣΗ (ΣΕ ΛΟΓΙΣΜΙΚΟ) ΚΩ ΙΚΑ ΤΥΠΟΥ TURBO ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΤΗΣ ΚΟΥΤΡΟΥΜΑΝΗ ΟΛΓΑΣ του ΑΘΑΝΑΣΙΟΥ

Διαβάστε περισσότερα

Συστήματα Επικοινωνιών

Συστήματα Επικοινωνιών Συστήματα Επικοινωνιών Ενότητα 5: Μαθιόπουλος Παναγιώτης Σχολή Θετικών Επιστημών Τμήμα Πληροφορικής και Τηλεπικοινωνιών Περιγραφή ενότητας Πλεονεκτήματα-Μειονεκτήματα ψηφιακών επικοινωνιών, Κριτήρια Αξιολόγησης

Διαβάστε περισσότερα

Μελέτη και αξιολόγηση τυχαίων Low Density Parity Check Κωδίκων σε περιβάλλον AWGN

Μελέτη και αξιολόγηση τυχαίων Low Density Parity Check Κωδίκων σε περιβάλλον AWGN ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ Διπλωματική εργασία Μελέτη και αξιολόγηση τυχαίων Low Density Parity

Διαβάστε περισσότερα

Ψηφιακές Τηλεπικοινωνίες

Ψηφιακές Τηλεπικοινωνίες Ψηφιακές Τηλεπικοινωνίες Θεωρία Πληροφορίας: Χωρητικότητα Καναλιού Χωρητικότητα Καναλιού Η θεωρία πληροφορίας περιλαμβάνει μεταξύ άλλων: κωδικοποίηση πηγής κωδικοποίηση καναλιού Κωδικοποίηση πηγής: πόση

Διαβάστε περισσότερα

ΜΕΛΕΤΗ ΕΝΟΣ ΔΕΚΤΗ ΣΥΣΤΗΜΑΤΟΣ WIMAX ΜΙΜΟ ΙΕΕΕ m STUDY OF A WiMAX MIMO IEEE m RECIEVER

ΜΕΛΕΤΗ ΕΝΟΣ ΔΕΚΤΗ ΣΥΣΤΗΜΑΤΟΣ WIMAX ΜΙΜΟ ΙΕΕΕ m STUDY OF A WiMAX MIMO IEEE m RECIEVER ΤΕΙ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΕΛΕΤΗ ΕΝΟΣ ΔΕΚΤΗ ΣΥΣΤΗΜΑΤΟΣ WIMAX ΜΙΜΟ ΙΕΕΕ 802.16m STUDY OF A WiMAX MIMO IEEE 802.16m RECIEVER ΤΟΥΡΜΠΕΣΛΗ ΦΛΩΡΙΤΣΑ ΑΕΜ 3766 ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ Δρ.

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΜΔΕ Προηγμένα Τηλεπικοινωνιακά Συστήματα και Δίκτυα Διάλεξη 6 η Νικόλαος Χ. Σαγιάς Επίκουρος Καθηγητής Webpage: http://eclass.uop.gr/courses/tst215

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΜΔΕ Προηγμένα Τηλεπικοινωνιακά Συστήματα και Δίκτυα Διάλεξη 5 η Νικόλαος Χ. Σαγιάς Επίκουρος Καθηγητής Wepage: http://eclass.uop.gr/courses/tst233

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ Τμήμα Πληροφορικής και Τηλεπικοινωνιών ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ ΨΗΦΙΑΚΕΣ ΕΠΙΚΟΙΝΩΝΙΕΣ Εργαστήριο 6 ο : Διαμόρφωση Θέσης Παλμών Βασική Θεωρία Μ-αδική Διαμόρφωση Παλμών Κατά την μετατροπή

Διαβάστε περισσότερα

Θεωρία Πληροφορίας. Διάλεξη 4: Διακριτή πηγή πληροφορίας χωρίς μνήμη. Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής

Θεωρία Πληροφορίας. Διάλεξη 4: Διακριτή πηγή πληροφορίας χωρίς μνήμη. Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής Θεωρία Πληροφορίας Διάλεξη 4: Διακριτή πηγή πληροφορίας χωρίς μνήμη Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής 1 Ατζέντα Διακριτή πηγή πληροφορίας χωρίς μνήμη Ποσότητα πληροφορίας της πηγής Κωδικοποίηση

Διαβάστε περισσότερα

Παναγιώτης Μαθιόπουλος Ph.D.

Παναγιώτης Μαθιόπουλος Ph.D. ΨΗΦΙΑΚΕΣ ΕΠΙΚΟΙΝΩΝΙΕΣ Παναγιώτης Μαθιόπουλος Ph.D. Καθηγητής Ψηφιακών Επικοινωνιών Τμήμα Πληροφορικής και Τηλεπικοινωνιών ΕΚΠΑ Professor (1989 2003) Department of Electrical and Computer Engineering The

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ Τμήμα Πληροφορικής και Τηλεπικοινωνιών ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ ΨΗΦΙΑΚΕΣ ΕΠΙΚΟΙΝΩΝΙΕΣ Εργαστήριο 9 ο : Διαμόρφωση BPSK & QPSK Βασική Θεωρία Εισαγωγή Κατά την μετάδοση ψηφιακών δεδομένων

Διαβάστε περισσότερα

Ψηφιακή Λογική Σχεδίαση

Ψηφιακή Λογική Σχεδίαση Ψηφιακή Λογική Σχεδίαση Επιμέλεια: Γεώργιος Θεοδωρίδης, Επίκουρος Καθηγητής Ανδρέας Εμερετλής, Υποψήφιος Διδάκτορας Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Σημείωμα Αδειοδότησης Το παρόν

Διαβάστε περισσότερα

Τηλεπικοινωνιακά Συστήματα ΙΙ

Τηλεπικοινωνιακά Συστήματα ΙΙ Τηλεπικοινωνιακά Συστήματα ΙΙ Διάλεξη 3: Ψηφιακή Διαμόρφωση Πλάτους Amplitude Shift Keying (ASK) Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής 1 Ατζέντα Ψηφιακή Διαμόρφωση Πλάτους (ASK) Μαθηματική περιγραφή

Διαβάστε περισσότερα

Θεώρημα κωδικοποίησης πηγής

Θεώρημα κωδικοποίησης πηγής Κωδικοποίηση Kωδικοποίηση πηγής Θεώρημα κωδικοποίησης πηγής Καθορίζει ένα θεμελιώδες όριο στον ρυθμό με τον οποίο η έξοδος μιας πηγής πληροφορίας μπορεί να συμπιεσθεί χωρίς να προκληθεί μεγάλη πιθανότητα

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη των υπολογιστών

Εισαγωγή στην επιστήμη των υπολογιστών Εισαγωγή στην επιστήμη των υπολογιστών Υπολογιστές και Δεδομένα Κεφάλαιο 3ο Αναπαράσταση Αριθμών www.di.uoa.gr/~organosi 1 Δεκαδικό και Δυαδικό Δεκαδικό σύστημα 2 3 Δεκαδικό και Δυαδικό Δυαδικό Σύστημα

Διαβάστε περισσότερα

ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ. της ϕοιτήτριας του Τµήµατος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστηµίου Πατρών

ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ. της ϕοιτήτριας του Τµήµατος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστηµίου Πατρών ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ & ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΗΛΕΚΤΡΟΝΙΚΗΣ & ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΣΧΕ ΙΑΣΜΟΥ ΟΛΟΚΛΗΡΩΜΕΝΩΝ ΚΥΚΛΩΜΑΤΩΝ ΜΕΓΑΛΗΣ ΚΛΙΜΑΚΑΣ (VLSI) ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ της

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ ΠΕΜΠΤΟ ΘΕΩΡΙΑ ΠΛΗΡΟΦΟΡΙΑΣ

ΚΕΦΑΛΑΙΟ ΠΕΜΠΤΟ ΘΕΩΡΙΑ ΠΛΗΡΟΦΟΡΙΑΣ ΚΕΦΑΛΑΙΟ ΠΕΜΠΤΟ ΘΕΩΡΙΑ ΠΛΗΡΟΦΟΡΙΑΣ 5. Εισαγωγή Ο σκοπός κάθε συστήματος τηλεπικοινωνιών είναι η μεταφορά πληροφορίας από ένα σημείο (πηγή) σ ένα άλλο (δέκτης). Συνεπώς, κάθε μελέτη ενός τέτοιου συστήματος

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 4 ΠΑΛΜΟΚΩΔΙΚΗ ΔΙΑΜΟΡΦΩΣΗ - PCM (ΜΕΡΟΣ Α)

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 4 ΠΑΛΜΟΚΩΔΙΚΗ ΔΙΑΜΟΡΦΩΣΗ - PCM (ΜΕΡΟΣ Α) ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 4 ΠΑΛΜΟΚΩΔΙΚΗ ΔΙΑΜΟΡΦΩΣΗ - PCM (ΜΕΡΟΣ Α) 3.1. ΣΚΟΠΟΣ ΑΣΚΗΣΗΣ Σκοπός της εργαστηριακής αυτής άσκησης είναι η μελέτη της παλμοκωδικής διαμόρφωσης που χρησιμοποιείται στα σύγχρονα τηλεπικοινωνιακά

Διαβάστε περισσότερα

Παλμοκωδική Διαμόρφωση. Pulse Code Modulation (PCM)

Παλμοκωδική Διαμόρφωση. Pulse Code Modulation (PCM) Παλμοκωδική Διαμόρφωση Pulse Code Modulation (PCM) Pulse-code modulation (PCM) Η PCM είναι ένας στοιχειώδης τρόπος διαμόρφωσης που δεν χρησιμοποιεί φέρον! Το μεταδιδόμενο (διαμορφωμένο) σήμα PCM είναι

Διαβάστε περισσότερα

Τηλεπικοινωνιακά Συστήματα ΙΙ

Τηλεπικοινωνιακά Συστήματα ΙΙ Τηλεπικοινωνιακά Συστήματα ΙΙ Διάλεξη 11: Κωδικοποίηση Πηγής Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής 1 Ατζέντα 1. Αλγόριθμοι κωδικοποίησης πηγής Αλγόριθμος Fano Αλγόριθμος Shannon Αλγόριθμος Huffman

Διαβάστε περισσότερα

3/40. (acknowledged connectionless), (acknowledged connection oriented) 4/40

3/40. (acknowledged connectionless), (acknowledged connection oriented) 4/40 Το επίπεδο συνδέσμου μετάδοσης δεδομένων Μιλτιάδης Αναγνώστου 5 Απριλίου 2013 1/40 Επίδραση του θορύβου Παραδείγματα 2/40 Τι κάνει το επίπεδο ζεύξης ή συνδέσμου μετάδοσης δεδομένων Χρησιμοποιεί τις υπηρεσίες

Διαβάστε περισσότερα

Παλμοκωδική Διαμόρφωση. Pulse Code Modulation (PCM)

Παλμοκωδική Διαμόρφωση. Pulse Code Modulation (PCM) Παλμοκωδική Διαμόρφωση Pulse Code Modulation (PCM) Pulse-code modulation (PCM) Η PCM είναι ένας στοιχειώδης τρόπος διαμόρφωσης που δεν χρησιμοποιεί φέρον! Το μεταδιδόμενο (διαμορφωμένο) σήμα PCM είναι

Διαβάστε περισσότερα

Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοημοσύνη Ι» 5 o Φροντιστήριο

Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοημοσύνη Ι» 5 o Φροντιστήριο Πρόβλημα ο Ασκήσεις Φροντιστηρίου 5 o Φροντιστήριο Δίνεται το παρακάτω σύνολο εκπαίδευσης: # Είσοδος Κατηγορία 0 0 0 Α 2 0 0 Α 0 Β 4 0 0 Α 5 0 Β 6 0 0 Α 7 0 Β 8 Β α) Στον παρακάτω κύβο τοποθετείστε τα

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών 44 Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών Διδακτικοί στόχοι Σκοπός του κεφαλαίου είναι οι μαθητές να κατανοήσουν τα βήματα που ακολουθούνται κατά την ανάπτυξη μιας εφαρμογής.

Διαβάστε περισσότερα

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Θ.Ε. ΠΛΗ22 (2012-13) ΓΡΑΠΤΗ ΕΡΓΑΣΙΑ #4. Έκδοση v2 με διόρθωση τυπογραφικού λάθους στο ερώτημα 6.3 Στόχος: Βασικό στόχο της 4 ης εργασίας αποτελεί η εξοικείωση με τα μέτρα ποσότητας πληροφορίας τυχαίων

Διαβάστε περισσότερα

Ψηφιακές Επικοινωνίες

Ψηφιακές Επικοινωνίες Ψηφιακές Επικοινωνίες Ενότητα 2: Παναγιώτης Μαθιόπουλος Σχολή Θετικών Επιστημών Τμήμα Πληροφορικής και Τηλεπικοινωνιών Εισαγωγή (1) Οι Ψηφιακές Επικοινωνίες (Digital Communications) καλύπτουν σήμερα το

Διαβάστε περισσότερα

Δεύτερη Σειρά Ασκήσεων

Δεύτερη Σειρά Ασκήσεων Δεύτερη Σειρά Ασκήσεων ΑΣΚΗΣΗ 1 Από ένα αθόρυβο κανάλι 4 khz παίρνουμε δείγματα κάθε 1 msec. - Ποιος είναι ο μέγιστος ρυθμός μετάδοσης δεδομένων; - Πώς μεταβάλλεται ο μέγιστος ρυθμός μετάδοσης δεδομένων

Διαβάστε περισσότερα

Συστηματική Σχεδίαση Αρχιτεκτονικών Αποκωδικοποιητών LDPC

Συστηματική Σχεδίαση Αρχιτεκτονικών Αποκωδικοποιητών LDPC ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΕΤΑΠΤΥΧΙΑΚΟ ΔΙΠΛΩΜΑ ΕΙΔΙΚΕΥΣΗΣ «ΟΛΟΚΛΗΡΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΥΛΙΚΟΥ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ» Συστηματική Σχεδίαση Αρχιτεκτονικών Αποκωδικοποιητών LDPC ΔΙΠΛΩΜΑΤΙΚΗ

Διαβάστε περισσότερα

Διόρθωση λαθών με τη χρήση κωδίκων RS-LDPC

Διόρθωση λαθών με τη χρήση κωδίκων RS-LDPC ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ Μεταπτυχιακό Δίπλωμα Ειδίκευσης «Ολοκληρωμένα Συστήματα Υλικού & Λογισμικού» Διόρθωση λαθών με τη χρήση κωδίκων RS-LDPC Μεταπτυχιακή Διπλωματική Εργασία

Διαβάστε περισσότερα

Τηλεπικοινωνιακά Συστήματα Ι

Τηλεπικοινωνιακά Συστήματα Ι Τηλεπικοινωνιακά Συστήματα Ι Διάλεξη 10: Παλμοκωδική Διαμόρφωση, Διαμόρφωση Δέλτα και Πολύπλεξη Διαίρεσης Χρόνου Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής 1 Παλμοκωδική Διαμόρφωση (PCM) Παλμοκωδική Διαμόρφωση

Διαβάστε περισσότερα

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος Χιωτίδης Γεώργιος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

Μέθοδοι Ελέγχου Σφαλμάτων

Μέθοδοι Ελέγχου Σφαλμάτων Μέθοδοι Ελέγχου Σφαλμάτων Έλεγχος Ισοτιμίας (Parity Check) Άθροισμα Ελέγχου (Checksum) Έλεγχος κυκλικού πλεονασμού (CRC- Cyclic Redundancy Check) Μερικά μπορεί να μεταφερθούν λάθος, πχ λόγω θορύβου Θα

Διαβάστε περισσότερα

Διπλωματική Εργασία του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών

Διπλωματική Εργασία του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ : ΗΛΕΚΤΡΟΝΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΣΧΕΔΙΑΣΜΟΥ ΟΛΟΚΛΗΡΩΜΕΝΩΝ ΚΥΚΛΩΜΑΤΩΝ Διπλωματική Εργασία του φοιτητή του Τμήματος

Διαβάστε περισσότερα

ΤΟΠΟΓΡΑΦΙΚΑ ΔΙΚΤΥΑ ΚΑΙ ΥΠΟΛΟΓΙΣΜΟΙ ΑΝΑΣΚΟΠΗΣΗ ΘΕΩΡΙΑΣ ΣΥΝΟΡΘΩΣΕΩΝ

ΤΟΠΟΓΡΑΦΙΚΑ ΔΙΚΤΥΑ ΚΑΙ ΥΠΟΛΟΓΙΣΜΟΙ ΑΝΑΣΚΟΠΗΣΗ ΘΕΩΡΙΑΣ ΣΥΝΟΡΘΩΣΕΩΝ ΤΟΠΟΓΡΑΦΙΚΑ ΔΙΚΤΥΑ ΚΑΙ ΥΠΟΛΟΓΙΣΜΟΙ ΑΝΑΣΚΟΠΗΣΗ ΘΕΩΡΙΑΣ ΣΥΝΟΡΘΩΣΕΩΝ Βασίλης Δ. Ανδριτσάνος Δρ. Αγρονόμος - Τοπογράφος Μηχανικός ΑΠΘ Επίκουρος Καθηγητής ΤΕΙ Αθήνας 3ο εξάμηνο http://eclass.teiath.gr Παρουσιάσεις,

Διαβάστε περισσότερα

Μέρος Β - Δίκτυα. Ασκήσεις I. Ποιος ο ρόλος του πομπού και του δέκτη στο μοντέλο επικοινωνίας που α- πεικονίζεται στο σχήμα που ακολουθεί; Μ Δεδομένα

Μέρος Β - Δίκτυα. Ασκήσεις I. Ποιος ο ρόλος του πομπού και του δέκτη στο μοντέλο επικοινωνίας που α- πεικονίζεται στο σχήμα που ακολουθεί; Μ Δεδομένα Μέρος Β - Δίκτυα 1 η Διδακτική Ενότητα Μοντέλο επικοινωνίας δεδομένων - Κώδικες - Σήματα Προβλεπόμενες διδακτικές ώρες: 1 Λέξεις Κλειδιά ASCII BCD Unicode αναλογικό σήμα ΕΛΟΤ-928 επικοινωνία δεδομένων

Διαβάστε περισσότερα

Ψηφιακές Τηλεπικοινωνίες. Θεωρία Ρυθμού Παραμόρφωσης

Ψηφιακές Τηλεπικοινωνίες. Θεωρία Ρυθμού Παραμόρφωσης Ψηφιακές Τηλεπικοινωνίες Θεωρία Ρυθμού Παραμόρφωσης Θεωρία Ρυθμού-Παραμόρφωσης Θεώρημα Κωδικοποίησης Πηγής: αν έχω αρκετά μεγάλο μπλοκ δεδομένων, μπορώ να φτάσω κοντά στην εντροπία Πιθανά Προβλήματα: >

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ Σχολή Θετικών Επιστημών Τεχνολογίας Τηλεπικοινωνιών Τμήμα Επιστήμης και Τεχνολογίας Τηλεπικοινωνιών ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ ΕΠΙΚΟΙΝΩΝΙΕΣ ΙI Εργαστήριο 7 ο : Διαμόρφωση BPSK & QPSK

Διαβάστε περισσότερα

Ένα αναλογικό σήμα περιέχει άπειρες πιθανές τιμές. Για παράδειγμα ένας απλός ήχος αν τον βλέπαμε σε ένα παλμογράφο θα έμοιαζε με το παρακάτω:

Ένα αναλογικό σήμα περιέχει άπειρες πιθανές τιμές. Για παράδειγμα ένας απλός ήχος αν τον βλέπαμε σε ένα παλμογράφο θα έμοιαζε με το παρακάτω: Σημειώσεις Δικτύων Αναλογικά και ψηφιακά σήματα Ένα αναλογικό σήμα περιέχει άπειρες πιθανές τιμές. Για παράδειγμα ένας απλός ήχος αν τον βλέπαμε σε ένα παλμογράφο θα έμοιαζε με το παρακάτω: Χαρακτηριστικά

Διαβάστε περισσότερα

Τηλεπικοινωνιακά Συστήματα ΙΙ

Τηλεπικοινωνιακά Συστήματα ΙΙ Τηλεπικοινωνιακά Συστήματα ΙΙ Διάλεξη 3: Εισαγωγή στην Έννοια της Διαμόρφωσης Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής 1 Ατζέντα 1. Η ανάγκη για διαμόρφωση 2. Είδη διαμόρφωσης 3. Διαμόρφωση με ημιτονοειδές

Διαβάστε περισσότερα

Διπλωματική Εργασία του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών

Διπλωματική Εργασία του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ: Η/Υ ΕΡΓΑΣΤΗΡΙΟ ΣΧΕΔΙΑΣΜΟΥ ΟΛΟΚΛΗΡΩΜΕΝΩΝ ΚΥΚΛΩΜΑΤΩΝ ΜΕΓΑΛΗΣ ΚΛΙΜΑΚΑΣ Διπλωματική Εργασία του φοιτητή του Τμήματος Ηλεκτρολόγων

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ Σχολή Θετικών Επιστημών Τεχνολογίας Τηλεπικοινωνιών Τμήμα Επιστήμης και Τεχνολογίας Τηλεπικοινωνιών ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ ΕΠΙΚΟΙΝΩΝΙΕΣ ΙI Εργαστήριο 7 ο : Διαμόρφωση Θέσης Παλμών

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ Τμήμα Πληροφορικής και Τηλεπικοινωνιών ΕΡΓΑΣΤΗΡΙΟ ΑΝΑΛΟΓΙΚΩΝ & ΨΗΦΙΑΚΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ ΨΗΦΙΑΚΕΣ ΕΠΙΚΟΙΝΩΝΙΕΣ Εργαστήριο 5 ο : Διαμόρφωση Παλμών Βασική Θεωρία Μ-αδική Διαμόρφωση Παλμών Κατά την μετατροπή

Διαβάστε περισσότερα

Συστήματα Επικοινωνιών ΙI

Συστήματα Επικοινωνιών ΙI + Διδάσκων: Δρ. Κ. Δεμέστιχας e-mail: cdemestichas@uowm.gr Συστήματα Επικοινωνιών ΙI Διαφορική Παλμοκωδική Διαμόρφωση + Ιστοσελίδα nιστοσελίδα του μαθήματος: n https://eclass.uowm.gr/courses/icte302/ +

Διαβάστε περισσότερα

Εισαγωγή στους Η/Υ. Ενότητα 8: Μετάδοση Δεδομένων. Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών

Εισαγωγή στους Η/Υ. Ενότητα 8: Μετάδοση Δεδομένων. Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών Εισαγωγή στους Η/Υ Ενότητα 8: Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών Σκοποί ενότητας Κατανόηση του τρόπου με τον οποίο στέλνεται ένα πακέτο δεδομένων

Διαβάστε περισσότερα

Ψηφιακή Επεξεργασία Σηµμάτων

Ψηφιακή Επεξεργασία Σηµμάτων Ψηφιακή Επεξεργασία Σηµμάτων Διάλεξη 3: DSP for Audio ΚΩΔΙΚΟΠΟΙΗΣΗ ΚΑΙ ΣΥΜΠΙΕΣΗ ΗΧΗΤΙΚΩΝ ΔΕΔΟΜΕΝΩΝ ΤΟ ΠΡΟΤΥΠΟ ISO/IEC 11172-3 MPEG-1 Δρ. Θωµμάς Ζαρούχας Επιστηµμονικός Συνεργάτης Μεταπτυχιακό Πρόγραµμµμα:

Διαβάστε περισσότερα

4. ΚΕΦΑΛΑΙΟ ΕΦΑΡΜΟΓΕΣ ΤΟΥ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΥ FOURIER

4. ΚΕΦΑΛΑΙΟ ΕΦΑΡΜΟΓΕΣ ΤΟΥ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΥ FOURIER 4. ΚΕΦΑΛΑΙΟ ΕΦΑΡΜΟΓΕΣ ΤΟΥ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΥ FOURIER Σκοπός του κεφαλαίου είναι να παρουσιάσει μερικές εφαρμογές του Μετασχηματισμού Fourier (ΜF). Ειδικότερα στο κεφάλαιο αυτό θα περιγραφούν έμμεσοι τρόποι

Διαβάστε περισσότερα

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D.

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D. Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D. Μη γραμμικός προγραμματισμός: μέθοδοι μονοδιάστατης ελαχιστοποίησης Πανεπιστήμιο Θεσσαλίας Σχολή Θετικών Επιστημών ΤμήμαΠληροφορικής Διάλεξη 6 η /2017 Τι παρουσιάστηκε

Διαβάστε περισσότερα

Κρυπτογραφία. Κεφάλαιο 4 Αλγόριθμοι Δημοσίου Κλειδιού (ή ασύμμετροι αλγόριθμοι)

Κρυπτογραφία. Κεφάλαιο 4 Αλγόριθμοι Δημοσίου Κλειδιού (ή ασύμμετροι αλγόριθμοι) Κρυπτογραφία Κεφάλαιο 4 Αλγόριθμοι Δημοσίου Κλειδιού (ή ασύμμετροι αλγόριθμοι) Κρυπτοσυστήματα Δημοσίου κλειδιού Αποστολέας P Encryption C Decryption P Παραλήπτης Προτάθηκαν το 1976 Κάθε συμμετέχων στο

Διαβάστε περισσότερα

Ψηφιακές Τηλεπικοινωνίες. Δισδιάστατες Κυματομορφές Σήματος

Ψηφιακές Τηλεπικοινωνίες. Δισδιάστατες Κυματομορφές Σήματος Ψηφιακές Τηλεπικοινωνίες Δισδιάστατες Κυματομορφές Σήματος Εισαγωγή Στα προηγούμενα μελετήσαμε τη διαμόρφωση PAM δυαδικό και Μ-αδικό, βασικής ζώνης και ζωνοπερατό Σε κάθε περίπτωση προέκυπταν μονοδιάστατες

Διαβάστε περισσότερα

Μελέτη και Προσομοίωση n πομπού για ασύρματη πρόσβαση ΦΟΙΤΗΤΗΣ: ΛΑΖΑΡΙΔΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ: ΕΥΣΤΑΘΙΟΥ ΔΗΜΗΤΡΙΟΣ

Μελέτη και Προσομοίωση n πομπού για ασύρματη πρόσβαση ΦΟΙΤΗΤΗΣ: ΛΑΖΑΡΙΔΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ: ΕΥΣΤΑΘΙΟΥ ΔΗΜΗΤΡΙΟΣ Μελέτη και Προσομοίωση 802.11n πομπού για ασύρματη πρόσβαση ΦΟΙΤΗΤΗΣ: ΛΑΖΑΡΙΔΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ: ΕΥΣΤΑΘΙΟΥ ΔΗΜΗΤΡΙΟΣ A) Προσομοίωση του φάσματος του καναλιού του προτύπου για να φανεί

Διαβάστε περισσότερα

Συστήματα Επικοινωνιών ΙI

Συστήματα Επικοινωνιών ΙI + Διδάσκων: Δρ. Κ. Δεμέστιχας e-mail: cdemestichas@uowm.gr Συστήματα Επικοινωνιών ΙI Παλμοκωδική διαμόρφωση (PCM) I + Ιστοσελίδα nιστοσελίδα του μαθήματος: n https://eclass.uowm.gr/courses/icte302/ + Περιεχόμενα

Διαβάστε περισσότερα

Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών Τμήμα Φυσικής Εισαγωγή στα Συστήματα Τηλεπικοινωνιών Συστήματα Παλμοκωδικής Διαμόρφωσης

Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών Τμήμα Φυσικής Εισαγωγή στα Συστήματα Τηλεπικοινωνιών Συστήματα Παλμοκωδικής Διαμόρφωσης Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών Τμήμα Φυσικής Εισαγωγή στα Συστήματα Τηλεπικοινωνιών Συστήματα Παλμοκωδικής Διαμόρφωσης Καθηγητής Ι. Τίγκελης itigelis@phys.uoa.gr ΚΒΑΝΤΙΣΗ Διαδικασία με την

Διαβάστε περισσότερα

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. «ΜΕΛΕΤΗ ΚΑΙ ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΜΕΤΡΗΣΕΙΣ BER ΓΙΑ ΣΗΜΑΤΑ QPSK, π/8 PSK, 16QAM, 64- QAM ΜΕ ΧΡΗΣΗ ΓΕΝΝΗΤΡΙΑΣ ΣΗΜΑΤΟΣ ΚΑΙ ΑΝΑΛΥΤΗ ΣΗΜΑΤΟΣ»

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. «ΜΕΛΕΤΗ ΚΑΙ ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΜΕΤΡΗΣΕΙΣ BER ΓΙΑ ΣΗΜΑΤΑ QPSK, π/8 PSK, 16QAM, 64- QAM ΜΕ ΧΡΗΣΗ ΓΕΝΝΗΤΡΙΑΣ ΣΗΜΑΤΟΣ ΚΑΙ ΑΝΑΛΥΤΗ ΣΗΜΑΤΟΣ» ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ «ΜΕΛΕΤΗ ΚΑΙ ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΜΕΤΡΗΣΕΙΣ BER ΓΙΑ ΣΗΜΑΤΑ QPSK, π/8 PSK, 16QAM, 64- QAM ΜΕ ΧΡΗΣΗ ΓΕΝΝΗΤΡΙΑΣ ΣΗΜΑΤΟΣ ΚΑΙ ΑΝΑΛΥΤΗ ΣΗΜΑΤΟΣ» ΟΛΓΑ ΛΑΔΑ Α.Ε.Μ. 2572 ΑΘΑΝΑΣΙΑ ΧΡΟΝΗ Α.Ε.Μ 1802 ΕΠΙΒΛΕΠΩΝ

Διαβάστε περισσότερα

Δυαδικά Αντίποδα Σήματα. Προχωρημένα Θέματα Τηλεπικοινωνιών. Πιθανότητα Σφάλματος σε AWGN Κανάλι. r s n E n. P r s P r s.

Δυαδικά Αντίποδα Σήματα. Προχωρημένα Θέματα Τηλεπικοινωνιών. Πιθανότητα Σφάλματος σε AWGN Κανάλι. r s n E n. P r s P r s. Προχωρημένα Θέματα Τηλεπικοινωνιών Πιθανότητα Σφάλματος σε AWGN Κανάλι Δυαδικά Αντίποδα Σήματα Δυαδικά Αντίποδα Σήματα Βασικής Ζώνης) : s (t)=-s (t) Παράδειγμα: Δυαδικό PA s (t)=g T (t) (παλμός με ενέργεια

Διαβάστε περισσότερα

Δίκτυα Απευθείας Ζεύξης

Δίκτυα Απευθείας Ζεύξης Δίκτυα Απευθείας Ζεύξης Επικοινωνία μεταξύ δύο υπολογιστώνοιοποίοιείναι απευθείας συνδεδεμένοι. Περίληψη Ζεύξεις σημείου προς σημείο (point-to-point links) Πλαισίωση (framing) Ανίχνευση και διόρθωση σφαλμάτων

Διαβάστε περισσότερα

ΚΩΔΙΚΟΠΟΙΗΣΗ ΕΛΕΓΧΟΥ ΣΦΑΛΜΑΤΟΣ (2)

ΚΩΔΙΚΟΠΟΙΗΣΗ ΕΛΕΓΧΟΥ ΣΦΑΛΜΑΤΟΣ (2) ΚΩΔΙΚΟΠΟΙΗΣΗ ΕΛΕΓΧΟΥ ΣΦΑΛΜΑΤΟΣ () P e συνάρτηση των S/N και r b (B) Συμβάσεις κανονισμοί για τα S, B Φασματική πυκνότητα θορύβου καθορισμένη Πολυπλοκότητα και κόστος συστήματος ΚΩΔΙΚΟΠΟΙΗΣΗ ΚΑΝΑΛΙΟΥ Καλά

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΤΜΉΜΑ ΕΠΙΣΤΉΜΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ Κ 7 Επικοινωνίες ΙΙ Χειμερινό Εξάμηνο Διάλεξη η Νικόλαος Χ. Σαγιάς Επίκουρος Καθηγητής Webpage: hp://ecla.uop.gr/coure/tst25 e-ail:

Διαβάστε περισσότερα

Αρχιτεκτονικές VLSI για την Αποκωδικοποίηση Κωδικών LDPC µε Εφαρµογή σε Ασύρµατες Ψηφιακές Επικοινωνίες

Αρχιτεκτονικές VLSI για την Αποκωδικοποίηση Κωδικών LDPC µε Εφαρµογή σε Ασύρµατες Ψηφιακές Επικοινωνίες ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΕΤΑΠΤΥΧΙΑΚΟ ΙΠΛΩΜΑ ΕΙ ΙΚΕΥΣΗΣ «ΟΛΟΚΛΗΡΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΥΛΙΚΟΥ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ» Αρχιτεκτονικές VLSI για την Αποκωδικοποίηση Κωδικών LDPC µε Εφαρµογή

Διαβάστε περισσότερα

Τηλεπικοινωνιακά Συστήματα ΙΙ

Τηλεπικοινωνιακά Συστήματα ΙΙ Τηλεπικοινωνιακά Συστήματα ΙΙ Διάλεξη 4: Ψηφιακή Διαμόρφωση Φάσης Phase Shift Keying (PSK) Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής 1 Ατζέντα Μαθηματική περιγραφή δυαδικής PSK (BPSK) Φάσμα σήματος διαμορφωμένου

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ & ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΗΛΕΚΤΡΟΝΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ & ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΗΛΕΚΤΡΟΝΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ & ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΗΛΕΚΤΡΟΝΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Αποκωδικοποιητής Μέγιστης Πιθανοφάνειας για Κώδικες LDPC και Υλοποίηση σε FPGA ΔΙΠΛΩΜΑΤΙΚΗ

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ Κ 17 Επικοινωνίες ΙΙ Χειμερινό Εξάμηνο Διάλεξη 8 η Νικόλαος Χ. Σαγιάς Επίκουρος Καθηγητής Webpage: http://eclass.uop.gr/courses/tst15

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΤΜΉΜΑ ΕΠΙΣΤΗΜΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ Κ 7 Επικοινωνίες ΙΙ Χειμερινό Εξάμηνο Διάλεξη η Νικόλαος Χ. Σαγιάς Επίκουρος Καθηγητής Webpage: hp://ecla.uop.gr/coure/s5 e-mail:

Διαβάστε περισσότερα

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ΗΜΥ 100 Εισαγωγή στην Τεχνολογία Δρ. Στέλιος Τιμοθέου ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΑ ΘΕΜΑΤΑ ΜΑΣ ΣΗΜΕΡΑ Αναλογικά και ψηφιακά συστήματα Μετατροπή

Διαβάστε περισσότερα

ΘΕΩΡΙΑ ΠΛΗΡΟΦΟΡΙΑΣ. Κεφάλαιο 3 : Πηγές Πληροφορίας Χρήστος Ξενάκης. Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων

ΘΕΩΡΙΑ ΠΛΗΡΟΦΟΡΙΑΣ. Κεφάλαιο 3 : Πηγές Πληροφορίας Χρήστος Ξενάκης. Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων ΘΕΩΡΙΑ ΠΛΗΡΟΦΟΡΙΑΣ Κεφάλαιο 3 : Πηγές Πληροφορίας Χρήστος Ξενάκης Πανεπιστήμιο Πειραιώς, Τμήμα Ψηφιακών Συστημάτων Περιεχόμενα Διακριτές Πηγές Πληροφορίας χωρίς μνήμη Ποσότητα πληροφορίας της πηγής Κωδικοποίηση

Διαβάστε περισσότερα

Τεράστιες ανάγκες σε αποθηκευτικό χώρο

Τεράστιες ανάγκες σε αποθηκευτικό χώρο ΣΥΜΠΙΕΣΗ Τεράστιες ανάγκες σε αποθηκευτικό χώρο Παράδειγμα: CD-ROM έχει χωρητικότητα 650MB, χωρά 75 λεπτά ασυμπίεστου στερεοφωνικού ήχου, αλλά 30 sec ασυμπίεστου βίντεο. Μαγνητικοί δίσκοι χωρητικότητας

Διαβάστε περισσότερα

Μαρία Μακρή Α.Ε.Μ: 3460

Μαρία Μακρή Α.Ε.Μ: 3460 TEΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ «Μελέτη και προσομοίωση ενός πομποδέκτη για το Διαδίκτυο των Πραγμάτων» Study and simulation

Διαβάστε περισσότερα

Συστήματα Επικοινωνιών ΙI

Συστήματα Επικοινωνιών ΙI + Διδάσκων: Δρ. Κ. Δεμέστιχας e-mail: cdemestichas@uowm.gr Συστήματα Επικοινωνιών ΙI FSK, MSK Πυκνότητα φάσματος ισχύος βασικής ζώνης + Ιστοσελίδα nιστοσελίδα του μαθήματος: n https://eclass.uowm.gr/courses/icte302/

Διαβάστε περισσότερα

Οι Εξελικτικοί Αλγόριθμοι (ΕΑ) είναι καθολικοί στοχαστικοί αλγόριθμοι βελτιστοποίησης, εμπνευσμένοι από τις βασικές αρχές της φυσικής εξέλιξης.

Οι Εξελικτικοί Αλγόριθμοι (ΕΑ) είναι καθολικοί στοχαστικοί αλγόριθμοι βελτιστοποίησης, εμπνευσμένοι από τις βασικές αρχές της φυσικής εξέλιξης. Οι Εξελικτικοί Αλγόριθμοι (ΕΑ) είναι καθολικοί στοχαστικοί αλγόριθμοι βελτιστοποίησης, εμπνευσμένοι από τις βασικές αρχές της φυσικής εξέλιξης. Ένα από τα γνωστότερα παραδείγματα των ΕΑ είναι ο Γενετικός

Διαβάστε περισσότερα