Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. & Μηχ. Υπολογιστών Τομέας Τεχνολογίας Πληροφορικής & Υπολογιστών Εργαστήριο Μικροϋπολογιστών & Ψηφιακών Συστημάτων Τηλ.: 210 772-2500, Γραμμ.: 210 772-3548, Τηλ. Εργαστηρίου: 210 772-3653 Θέματα Διπλωματικών Εργασιών 2015-2016 Επισκόπηση Οι προτεινόμενες Διπλωματικές Εργασίες αφορούν στην περιοχή της Σχεδίασης Συστημάτων VLSI και στην Ανάπτυξη Εφαρμογών σε Συστήματα-επί-Ψηφίδας (Sytem on a Chip - SoC) που αποτελεί την σύγχρονη άποψη στη σχεδίαση Μικροϋπολογιστικών Συστημάτων. Σε κάθε μια από τις προτεινόμενες εργασίες η έμφαση είναι στην ερευνητική (προβλέπεται η συγγραφή εργασίας για διεθνές συνέδριο ή επιστημονικό περιοδικό) ή στην αναπτυξιακή κατεύθυνση με την δημιουργία μίας πρακτικής εφαρμογής. Οι στόχοι των Διπλωματικών αυτών εργασιών είναι οι εξής: Απόκτηση τεχνογνωσίας στην ευρύτερη περιοχή της Μικροηλεκτρονικής Τεχνολογίας και των SoC. Μεθοδολογίες Σχεδίασης Συστημάτων με τη χρήση Γλώσσας Περιγραφής Υλικού (VHDL ή Verilog) και λειτουργική προσομοίωσή τους (ModelSim). Τεχνογνωσία και εμπειρία στην χρήση και αξιοποίηση εργαλείων σχεδίασης VLSI που χρησιμοποιούνται σήμερα στην σύγχρονη βιομηχανία Μικροηλεκτρονικής. Στις περισσότερες εργασίες θα γίνει χρήση των εργαλείων της πλατφόρμας Synopy. Ειδικότερα με τα Deign Compiler και PrimePower της Synopy, θα γίνει η σύνθεση των κυκλωμάτων/συστημάτων που θα σχεδιασθούν και θα μετρηθούν οι επιδόσεις όσον αφορά στην επιφάνεια, ταχύτητα λειτουργίας και κατανάλωση ισχύος. Επίσης θα αποκτηθεί τεχνογνωσία στην υλοποίηση των συστημάτων που θα σχεδιαστούν πάνω σε FPGA. Σχεδίαση Ενσωματωμένων Εφαρμογών σε SoC που περιλαμβάνεται η ανάπτυξη κώδικα στον ενσωματωμένο επεξεργαστή (embedded firmware). Να σημειωθεί ότι για την διευκόλυνση της σχεδίασης ASIC τα μέλη του εργαστηρίου έχουν δημιουργήσει περιβάλλον ροής σχεδίασης στον Deign Compiler και PrimePower της Synopy που επιτρέπει σε ένα νέο σχεδιαστή (όπως είναι ένας Διπλωματικός) να ξεκινήσει γρήγορα χωρίς χρονική επιβάρυνση, με φιλικό uer interface για την τοποθέτηση των παραμέτρων της σχεδίασης του. Επικοινωνία Καθηγητής Κ. Πεκμεστζή Τηλ: 210-772 2500 e-mail: pekme@microlab.ntua.gr Μεταδιδάκτορας Ν. Αξελός Τηλ: 210-772 4429 e-mail: njaxel@microlab.ntua.gr Υ.Δ. Κώστας Τσουμάνης Τηλ: 210-772 3653 e-mail: kotatoumani@microlab.ntua.gr Υ.Δ. Νίκος Ευταξιόπουλος Τηλ: 210-772 3653 e-mail: niko.eftaxiopoulo@microlab.ntua.gr Υ.Δ. Γιώργος Ζερβάκης Τηλ: 210-772 3653 e-mail: zervaki@microlab.ntua.gr Στη συνέχεια γίνεται μια συνοπτική περιγραφή των θεμάτων. Λεπτομέρειες που αφορούν σε όλες τις εργασίες, θα δοθούν σε προφορική ή ηλεκτρονική επικοινωνία με τον διδάσκοντα ή και τους συνεργάτες ΥΔ.
1 Περιοχή Σχεδίασης Συστημάτων VLSI 1.1 Υλοποίηση αλγορίθμων DSP (Ψηφιακής Επεξεργασίας Σήματος) σε Αριθμητικό Σύστημα Υπολοίπων (Reidue Number Sytem - RNS). Στην εργασία αυτή θα προηγηθεί η βιβλιογραφική έρευνα του επιστημονικού πεδίου και ο εντοπισμός των προβλημάτων και των μέχρι τώρα λύσεων. Στη συνέχεια θα υλοποιηθεί (σε ASIC ή FPGA) ένας αλγόριθμος DSP ένα FIR φίλτρο) τόσο χρησιμοποιώντας το Αριθμητικό Σύστημα Υπολοίπων (RNS) όσο και με βάση το κοινό δυαδικό αριθμητικό σύστημα. Θα ακολουθήσει η σύγκριση των δύο υλοποιήσεων και η διερεύνηση για την πιθανότητα βελτίωσης ενός ή περισσοτέρων τμημάτων του αλγορίθμου στο RNS. με βάση το m 1 Μετατροπέας από το Δυαδικό Σύστημα στο RNS με βάση το m 2 με βάση το m p Μετατροπέας από RNS στο Δυαδικό Σύστημα 1.2 Αποδοτική υλοποίηση FFT (Butterfly Computation) με χρήση Μιγαδικών Πολλαπλασιαστών για σταθερούς συντελεστές (Hardwired Complex number Multiplier). Αρχικά θα σχεδιαστούν σε μορφή VLSI μιγαδικοί πολλαπλασιαστές οι οποίοι θα χρησιμοποιηθούν για ένα συγκεκριμένο και γνωστό εκ των προτέρων σύνολο συντελεστών. Οι συντελεστές αυτοί είναι απαραίτητοι στους αριθμητικούς υπολογισμούς του Αλγορίθμου FFT (Butterfly Computation) και βρίσκονται αποθηκευμένοι στην μνήμη του συστήματος. Στη συνέχεια, με έμφαση στην αρχιτεκτονική (αριθμητικές μονάδες, μνήμη και μηχανή καταστάσεων) και στόχο τη βελτίωση της απόδοσης του αλγορίθμου, θα γίνει διερεύνηση και αξιολόγηση εναλλακτικών σχεδιάσεων. x k y k a WN x e 2π j a N - D D X k 1 Yk 1 Μιγαδικός πολλαπλασιασμός P ( a j a )( x j x ) ( a x a x ) j ( a x a x ) P j P R R R R R R R R P a x a x R R R P a x a x R R Υπολογισμός "πεταλούδας" FFT X x y W a k 1 k k N Y x y W a k 1 k k N
1.3 Truncated-Rounded Multiplier-Accumulator (MAC) για την υλοποίηση φίλτρων FIR. Στους περισσότερους αλγορίθμους για να μην προκύψει συνεχής αύξηση του πλήθους των bit σε κάθε βήμα τους, τα αποτελέσματα στρογγυλεύονται (ή περικόπτονται) σε συγκεκριμένη ακρίβεια. Η κλασική προσέγγιση είναι, αφού υπολογιστούν όλα τα bit του γινομένου, να ακολουθήσει η στρογγύλευσή του. Αποδοτικότερη υλοποίηση είναι να παραλείψουμε τα κυκλώματα υπολογισμού των μερικών γινόμενων και των αντίστοιχων αθροιστών που χειρίζονται τα LSB που πρόκειται να περικοπούν. Η περικοπή αυτή των κυκλωμάτων δημιουργεί μεγαλύτερο σφάλμα σε σχέση με την κλασική προσέγγιση. Για την αντιμετώπισή του υπάρχουν τεχνικές μείωσης του σφάλματος με χρήση διορθωτικών όρων. Στην εργασία αυτή θα γίνει η χρήση μια νέας τεχνικής που θα προενταμιεύει τους διορθωτικούς όρους για εφαρμογές με σταθερούς όρους όπως φίλτρα FIR για αύξηση της ακρίβειας των αποτελεσμάτων. Στην συνέχεια θα διερευνηθεί η αποδοτική υλοποίηση και οι εφαρμογές των Truncated-Rounded Multiplier-Accumulator (MAC). 1.4 Αποδοτική υλοποίηση Διαιρέτη με χρήση του αλγορίθμου High-Radix Non Retoring Diviion. Στην εργασία αυτή θα προηγηθεί η βιβλιογραφική έρευνα του συγκεκριμένου πεδίου και ο εντοπισμός προβλημάτων και λύσεων. Στη συνέχεια θα υλοποιηθεί ένας διαιρέτης με χρήση του αλγορίθμου Non Retoring Diviion, με βάση υπάρχουσα τεχνική αποδοτικής υλοποίησης του αλγορίθμου (που βασίζεται σε παράσταση του πηλίκου και του υπολοίπου σε μορφή με προσημασμένα ψηφία) με την επέκταση σε αλγόριθμο High-Radix, και θα γίνει η υλοποίησή του σε ASIC και FPGA. 1.5 Μελέτη Υλοποίησης σε Υλικό Αλγορίθμων Κρυπτογραφίας Ελλειπτικών Καμπυλών. Μεταφορά σε πλατφόρμα FPGA. Θα ξεκινήσει με τη μελέτη Αλγορίθμων Κρυπτογραφίας Ελλειπτικών Καμπυλών, τους οποίους συναντάμε στη διεθνή βιβλιογραφία. Πρόκειται για ένα σύγχρονο πεδίο με έντονο ερευνητικό ενδιαφέρον καθώς οι κρυπτογραφικοί αλγόριθμοι που βασίζονται στη θεωρία των ελλειπτικών καμπυλών προσφέρουν το ίδιο επίπεδο ασφάλειας με τον αλγόριθμο κρυπτογραφίας RSA αλλά με πολύ μικρότερο μήκος κλειδιών που ανταλλάσσονται μεταξύ των χρηστών.
Η υλοποίηση των πιο αποδοτικών αλγοριθμών που απαντώνται στη διεθνή βιβλιογραφία θα γίνει τόσο σε επίπεδο ASIC όσο και σε επίπεδο FPGA. 1.6 Δημιουργία αποδοτικού Multiplier-Accumulator (MAC) για αριθμούς σε μορφή Προσήμου-Μέτρου (Sign-Magnitude). Στην εργασία αυτή θα σχεδιαστεί σε μορφή VLSI ένας Multiplier Accumulator (MAC) για αριθμούς που βρίσκονται σε μορφή Προσήμου Μέτρου (Sign Magnitude) με σκοπό τη σύγκρισή του με υλοποιήσεις MAC για αριθμούς που βασίζονται σε διαφορετικές αναπαραστάσεις όπως συμπλήρωμα ως προς 2. Επίσης θα εξεταστεί η αξιοποίησή του σε μονάδες στις οποίες συναντάμε την αναπαράσταση των αριθμών σε μορφή Προσήμου Μέτρου (π.χ. σε Floating Point Arithmetic Unit). 1.7 Μελέτη δημιουργίας αυτοματοποιημένης διαδικασίας για χρονισμό σύνθετων κυκλωμάτων VLSI σε συχνότητες υψηλότερες από αυτήν που επιτρέπει η κρίσιμη διαδρομή, αξιοποιώντας την αρχή λειτουργίας Wave Pipeline. Θα προηγηθεί η βιβλιογραφική έρευνα γύρω από την τεχνική του Wave Pipeline και θα διερευνηθεί η χρήση της για την αύξηση της απόδοσης κρίσιμων αριθμητικών κυκλωμάτων που εισάγουν μεγάλη καθυστέρηση. Τα σχήματα που θα προκύψουν θα συγκριθούν με τα αντίστοιχα που βασίζονται στην κλασική τεχνική του pipeline. Επίσης, θα μελετηθεί η δημιουργία μίας αυτόματης διαδικασίας για την «εισαγωγή» και ενσωμάτωση της τεχνικής αυτής σε σύνθετα κυκλώματα VLSI με βάση την πληροφορία που προκύπτει από τη σύνθεσή τους. 1.8 Υλοποίηση αλγορίθμων DSP (Ψηφιακής Επεξεργασίας Σήματος) με τη χρήση της αποδοτικής κωδικοποίησης Non-Redundant Radix-4 Signed-Digit (NR4SD). Στην εργασία αυτή θα εφαρμοστεί η τεχνική της προ-ενταμίευσης πληροφορίας στη μνήμη σε συνδυασμό με την τεχνική κωδικοποίησης αριθμών σε Non-Redundant Radix-4 Signed-Digit (NR4SD) αναπαράσταση με σκοπό την πιο αποδοτική VLSI υλοποίηση ευρέως χρησιμοποιούμενων αλγορίθμων DSP (Ψηφιακής Επεξεργασίας Σήματος). 1.9 Υλοποίηση Μονάδων Άθροισης και Πολλαπλασιασμού σε παράσταση Κινητής Υποδιαστολής με τη χρήση τεχνικών Approximate Computing (Προσεγγιστικού Υπολογισμού). Στην εργασία αυτή θα υλοποιηθούν οι μονάδες Πρόσθεσης και Πολλαπλασιασμού σε παράσταση Κινητής Υποδιαστολής (FPU- Floating Point Unit). Η σχεδίαση του υλικού θα βασίζεται στη χρήση τεχνικών Approximate Computing (Προσεγγιστικού Υπολογισμού).Η υλοποίηση θα μεταφερθεί τόσο σε επίπεδο ASIC όσο και σε επίπεδο FPGA.
2 Ανάπτυξη Εφαρμογών σε Συστήματα-επί-Ψηφίδας (Sytem on a Chip - SoC) Θα βασιστούν στην αναπτυξιακή πλατφόρμα Xilinx ZYNQ-7000 που περιλαμβάνει επεξεργαστή dualcore ARM Cortex-A9 MPCore και πληθώρα επαναδιαμορφούμενων περιφερειακών (σειρά 7 FPGA (Artix-7 και Kintex-7) σε συνδυασμό με τα εργαλεία Vivado Deign Suite.