Αrchitectures and implementation in FPGA technology of hardware accelerators for forward error correction encoding in on-board processing data-chains for aerospace applications
Authors: Θεοδωρόπουλος Δημήτριος 
Published: June 2023

Η κωδικοποίηση διόρθωσης σφαλμάτων είναι αναπόσπαστο μέρος μιας ενσωματωμένης αλυσίδας επεξεργασίας δεδομένων ενός συστήματος εν πτήσει. Η παρούσα διατριβή πραγματεύεται το πρόβλημα του σχεδιασμού και της VLSI υλοποίησης αποδοτικών αρχιτεκτονικών κωδικοποιητών υλικού για τέτοιες αλυσίδες επεξεργασίας δεδομένων. Πιο συγκεκριμένα, δύο τομείς ενδιαφέροντος έχουν στοχευτεί: η κωδικοποίηση καναλιού σε επίπεδο bit, κυρίως για τη μεταφορά δεδομένων τηλεμετρίας σε επικοινωνίες κοντά στη γη και στο βαθύ διάστημα και η κωδικοποίηση επιπέδου πακέτων, η οποία έχει αναδειχθεί ως μια πολλά υποσχόμενη προσέγγιση για υψηλό ρυθμό δεδομένων επικοινωνίες οπτικού χώρου ή για σενάρια διακοπτόμενης συνδεσιμότητας.Όσον αφορά την πρώτη ερευνητική περιοχή της εργασίας, οι κώδικες Quasi-Cyclic Low-Density Parity-Check (QC-LDPC) έχουν προτυποποιηθεί από τη Συμβουλευτική Επιτροπή για Συστήματα Διαστημικών Δεδομένων (CCSDS) για την κωδικοποίηση καναλιού σε επικοινωνίες κοντά στη Γη και στο Βαθύ Διάστημα. Μετά από ενδελεχή μελέτη του συνόλου της υφιστάμενης βιβλιογραφίας, αποδεικνύεται ωστόσο στην παρούσα ότι οι αρχιτεκτονικές κωδικοποιητών που έχουν προταθεί μέχρι τώρα για άλλα σχήματα διόρθωσης σφαλμάτων, είτε είναι παντελώς ανεφάρμοστες στους κώδικες CCSDS QC-LDPC, είτε η άμεση εφαρμογή τους συνοδεύεται από τόσο μειωμένη απόδοση που καθίστανται αναποτελεσματικές για υλοποιήσεις υψηλών απαιτήσεων σε ταχύτητες κωδικοποίησης. Κατά συνέπεια, προτείνεται μια νέα αρχιτεκτονική για τον πολλαπλασιασμό ενός πυκνού QC πίνακα με ένα διάνυσμα από bits, πράξη η οποία αποτελεί θεμελιώδη λειτουργία της κωδικοποίησης QC-LDPC Με βάση αυτή την αρχιτεκτονική, προτείνονται αποδοτικοί κωδικοποιητές για κώδικες CCSDS, σύμφωνα με όλες τις εφαρμοστέες μεθόδους κωδικοποίησης LDPC, οι οποίες περιγράφονται αναλυτικά και συγκρίνονται ως προς την αποδοτικότητα χρήσης πόρων για τους συγκεκριμένους κώδικες. Επιπλέον, στην ειδική περίπτωση του συγκεκριμένου κώδικα που ορίζεται στο πρότυπο CCSDS για επικοινωνίες κοντά στη Γη, εισάγονται εξειδικευμένες τεχνικές, οι οποίες χειρίζονται αποτελεσματικά τις προκλήσεις που προκύπτουν από το μέγεθος των υποπινάκων του QC πίνακα-γεννήτορα του κώδικα (511 bit).Οι προτεινόμενες αρχιτεκτονικές υλοποιήθηκαν σε διάφορες τεχνολογίες FPGA και επικυρώθηκαν και δοκιμάστηκαν εκτενώς στο εμπορικό αντίστοιχο της διαστημικής κατηγορίας Kintex UltraScale της Xilinx (XQRKU060), το οποίο περιλαμβάνεται στην αναπτυξιακή κάρτα KCU105. Η απόδοση που επιτυγχάνεται αποτελεί ορόσημο στον τομέα, καθώς μπορεί να επιτύχει έως και 70 φορές υψηλότερη απόδοση από τις αντίστοιχες προτάσεις της NASA/JPL, όταν υλοποιηθεί στο ίδιο FPGA, και με χαμηλό προϋπολογισμό πόρων υλικού και κατανάλωσης ισχύος. Είναι επίσης η πρώτη εργασία που εισάγει ένα εκτεταμένο και ρεαλιστικό πλαίσιο δοκιμών που περιλαμβάνει σύγχρονες συνδέσεις δεδομένων SpaceFibre, προκειμένου να είναι όσο το δυνατόν πιο κοντά σε ένα πραγματικό σύστημα. Μαζί με τις λεπτομερείς μετρήσεις ισχύος που παρέχονται, η τρέχουσα εργασία ανοίγει νέες δυνατότητες για την υιοθέτηση των κωδικών του CCSDS σε εφαρμογές από τις οποίες μέχρι στιγμής θεωρούνταν απαγορευτικές, λόγω της πολυπλοκότητας κωδικοποίησης τους, όπως τα επερχόμενα πρότυπα οπτικών επικοινωνιών ελεύθερου χώρου υψηλής απόδοσης του CCSDS.Οι κώδικες QC-LDPC που βασίζονται σε πρωτογράφους θεωρούνται ευρέως μια πλεονεκτική επιλογή κωδικοποίησης διόρθωσης σφαλμάτων (FEC), επίσης και σε μέσα μαγνητικής εγγραφής (MR), λόγω των εξαιρετικών χαρακτηριστικών απόδοσης και των εγγενών δυνατοτήτων αποτελεσματικής υλοποίησής τους στο υλικό. Ωστόσο, η συντριπτική πλειονότητα της σχετικής έρευνας έχει επικεντρωθεί μέχρι στιγμής στην αναλυτική βελτιστοποίηση του σχεδιασμού των κωδίκων και των συναφών αλγορίθμων. Αν και η κωδικοποίηση και η αποκωδικοποίηση υψηλής ταχύτητας με χαμηλό αποτύπωμα υλικού είναι σημαντικές για τα μέσα MR, δεν υφίστνται επί του παρόντος αναφορές σε μελέτες υλοποιήσεων. Αξιοποιώντας την αρχιτεκτονική των κωδικοποιητών LDPC για διαστημικές εφαρμογές, εισάγονται προσαρμοσμένες αρχιτεκτονικές για τους αντίστοιχους κώδικες MR. Οι προτεινόμενες αρχιτεκτονικές υλοποιούνται σε υλικό ως επιταχυντές FPGA. Η αποτελεσματικότητά τους αποδεικνύεται στην πλακέτα ανάπτυξης FPGA ZC706, επιτυγχάνοντας απόδοση πολλαπλών Gbps, επαρκή για τα σύγχρονα πρότυπα μαγνητικής αποθήκευσης. Η παρούσα εργασία είναι η πρώτη μελέτη που καταγράφεται στον συγκεκριμένο χώρο.Η κωδικοποίηση διαγραφής σε επίπεδο πακέτων έχει προταθεί από το CCSDS στην πειραματική προδιαγραφή 131.5-O-1 για εφαρμογή σε διαστημικές επικοινωνίες υψηλού ρυθμού διαμεταγωγής στο εγγύς και στο βαθύ διάστημα, καθώς μπορεί να προστατεύσει από μεγάλες εκρήξεις σφαλμάτων, συνέπεια διαλείψεων σπινθηρισμού ή σφαλμάτων μετάδοσης. Ωστόσο, εφαρμογές κωδικοποίησης και αποκωδικοποίησης σε επίπεδο πακέτων υπάρχουν μέχρι στιγμής μόνο σε λογισμικό, που εκτελείται σε CPU γενικής χρήσης, με περιορισμούς στην επιτεύξιμη απόδοση, τους πόρους και την ισχύ. Στη δεύτερη περιοχή ενδιαφέροντος αυτής της εργασίας, εισάγονται αρχιτεκτονικές για την επιτάχυνση υλικού της λειτουργίας κωδικοποίησης σε επίπεδο πακέτων, που επιτρέπουν την ενσωμάτωση σε μια αλυσίδα επεξεργασίας δεδομένων υψηλής ταχύτητας με πολύ χαμηλό αποτύπωμα υλικού και περιορισμένη κατανάλωση ενέργειας. Οι υλοποιήσεις αυτές δοκιμάστηκαν και η αποτελεσματικότητά τους τεκμηριώθηκε στην πλακέτα ανάπτυξης Xilinx KCU105, η οποία περιλαμβάνει το εμπορικό ισοδύναμο του πιστοποιημένου για διαστημικές εφαρμογές Xilinx Kintex UltraScale (XQRKU060), επιτυγχάνοντας απόδοση κωδικοποίησης άνω των 13 Gbps. Εκτός από την ελάφρυνση του επεξεργαστικού φορτίου του κεντρικού επεξεργαστή, μέσω ανάθεσης της κωδικοποίησης επιπέδου πακέτων στους εξειδικευμένους επιταχυντές υλικού, οι προτεινόμενοι κωδικοποιητές επιτυγχάνουν σημαντική επιτάχυνση (πάνω από 80 φορές), σε σχέση τις αντίστοιχες λύσεις που περιλαμβάνονται στη σουίτα λογισμικού για δίκτυα διαλειπτόμενης συνδεσιμότητας της NASA (ION DTN), όταν εκτελεστούν σε μερικές από τις πιο κοινές και σύγχρονες ενσωματωμένες CPU για διαστημικές αποστολές, με ταυτόχρονη εξοικονόμηση ισχύος (πάνω από 3-5 φορές βελτιωμένο πηλίκο ρυθμαπόδοσης ανά μονάδα καταναλισκομένης ισχύος). Αυτή είναι η πρώτη και μοναδική μέχρι στιγμής καταγεγραμμένη υλοποίηση κωδικοποιητών επιπέδου πακέτου και ειδικότερα της πειραματικής προδιαγραφής 131.5-O-1 σε υλικό. Είναι επίσης η πρώτη ουσιαστική μελέτη των παραμέτρων απόδοσης και ισχύος. Όπως και με τους κώδικες καναλιών της πρώτης θεματικής περιοχής αυτής της διατριβής, αυτά τα ευρήματα ξεκλειδώνουν νέους ορίζοντες για την επαναξιολόγηση των κωδίκων διαγραφής σε επίπεδο πακέτων για χρήση σε διαστημικές εφαρμογές υψηλής απόδοσης.