Summary: | Αντικείμενο της διπλωματικής εργασίας αποτελεί η μελέτη και ανάλυση των μεθόδων διόρθωσης λαθών με χρήση κώδικα BCH που μπορούν να εφαρμοστούν σε συστήματα αποθήκευσης πληροφορίας τεχνολογίας PCM (Phase-Change Memory). Η τεχνολογία PCM αποτελεί μία νέα τεχνολογία που υπόσχεται υψηλές χωρητικότητες, χαμηλή κατανάλωση ισχύος και μπορεί να εφαρμοστεί είτε σε συσκευές αποθήκευσης σταθερής κατάστασης (Solid State Drives) είτε σε μνήμες τυχαίας προσπέλασης (Random-Access Memories), παρέχοντας μία εναλλακτική πρόταση έναντι μνημών τεχνολογίας flash και DRAM. Ένα από τα μειονεκτήματα της τεχνολογίας PCM είναι η ανθεκτικότητα εγγραφής (write endurance), η οποία μπορεί να βελτιωθεί με τη χρήση μεθόδων διόρθωσης λαθών που θα παρατείνουν τον χρόνο ζωής της συσκευής όταν, λόγω της φυσικής φθοράς του μέσου, αρχίσουν να υπάρχουν σφάλματα στα αποθηκευμένα δεδομένα. Για την εφαρμογή της διόρθωσης λαθών μπορούν να χρησιμοποιηθούν κώδικες BCH, οι οποίοι αποτελούν μια κλάση ισχυρών κυκλικών κωδίκων διόρθωσης τυχαίων λαθών, και κατασκευάζονται με χρήση της άλγεβρας πεπερασμένων πεδίων. Οι κώδικες BCH είναι ιδανικοί για διόρθωση λαθών σε συσκευές αποθήκευσης πληροφορίας όπου η κατανομή των λαθών είναι τυχαία. Αρκετοί αλγόριθμοι έχουν προταθεί για τις λειτουργίες αποδοτικής κωδικοποίησης και αποκωδικοποίησης κωδίκων BCH. Στην παρούσα εργασία μελετήθηκαν λύσεις που μπορούν να υλοποιηθούν με παράλληλες αρχιτεκτονικές, ενώ ειδικότερα για την λειτουργία αποκωδικοποίησης έγινε χρήση ενός παράλληλου αλγορίθμου που δεν χρειάζεται αντιστροφείς πεπερασμένου πεδίου για την επίλυση των εξισώσεων των συνδρόμων, επιτυγχάνοντας υψηλές συχνότητες λειτουργίας. Για την κατανόηση των λειτουργιών κωδικοποίησης και αποκωδικοποίησης απαιτείται η προσεκτική μελέτη της άλγεβρας πεπερασμένων πεδίων και της αριθμητικής της. Οι κώδικες BCH προσφέρουν πλεονεκτήματα όπως χαμηλή πολυπλοκότητα και ύπαρξη αποδοτικών μονάδων υλοποίησης σε υλικό.
Στην παρούσα εργασία σχεδιάστηκαν ένας παράλληλος κωδικοποιητής και ένας παράλληλος αποκωδικοποιητής για τον κώδικα BCH(728,688). Τα δύο συστήματα υλοποιήθηκαν ως περιφερειακά σε ενσωματωμένο σύστημα βασισμένο σε επεξεργαστή MicroBlaze, με έμφαση σε μια καλή σχέση μεταξύ της συχνότητας λειτουργίας και των απαιτήσεων σε επιφάνεια υλικού και κατανάλωση ισχύος. Για την υλοποίηση χρησιμοποιήθηκε συσκευή FPGA σειράς Virtex-6.
|