ΠΕΡΙΕΧΟΜΕΝΟ ΜΑΘΗΜΑΤΟΣ
Το μάθημα εστιάζει στην κατανόηση και υλοποίηση των αρχών της διοχέτευσης (pipeline) στους σύγχρονους επεξεργαστές, ξεκινώντας από τη βασική θεωρία και καταλήγοντας σε προχωρημένες τεχνικές μεγιστοποίησης της παραλληλίας επιπέδου εντολής (ILP). Οι φοιτητές/φοιτήτριες θα μελετήσουν τη σχεδίαση διαδρομής δεδομένων με διοχέτευση σε επεξεργαστές βασισμένους στην αρχιτεκτονική συνόλου εντολών RISC-V, την κατασκευή μονάδας ελέγχου διοχέτευσης, καθώς και τους διάφορους τύπους κινδύνων (δομικούς, δεδομένων, ελέγχου), μαζί με τεχνικές αποφυγής και επίλυσής τους, όπως η προώθηση (forwarding/bypassing), οι τεχνικές πρόβλεψης διακλάδωσης και η καθυστερημένη διακλάδωση.
Ιδιαίτερη έμφαση δίνεται σε μηχανισμούς για τη διαχείριση εξαιρέσεων στη διοχέτευση, την προχωρημένη πρόβλεψη διακλάδωσης και τη δυναμική εκτέλεση εντολών. Το μάθημα εισάγει τους φοιτητές και τις φοιτήτριες στη φιλοσοφία των υπερβαθμωτών (superscalar) αρχιτεκτονικών με πολλαπλή εκκίνηση εντολών (multiple issue), και στη χρήση τεχνικών όπως οι σταθμοί κράτησης (reservation stations) και ο μονάδες μετονομασίας καταχωρητών (register renaming) που εισάγονται με τον αλγόριθμο Tomasulo. Οι φοιτητές/φοιτήτριες θα κατανοήσουν πως επιτυγχάνεται η εκτέλεση εντολών εκτός σειράς (out-of-order execution) με στόχο τη βελτιστοποίηση της απόδοσης και την καλύτερη αξιοποίηση των διαθέσιμων υπολογιστικών μονάδων.
Παράλληλα, θα αναλυθούν τεχνικές εκ των προτέρων προσκόμισης εντολών και δεδομένων (instruction/data prefetching), οι οποίες συνεισφέρουν στη μείωση των καθυστερήσεων λόγω προσπέλασης στη μνήμη. Οι φοιτητές/φοιτήτριες θα εξετάσουν τρόπους αξιοποίησης της ιεραρχίας της μνήμης, εστιάζοντας στις κρυφές μνήμες και την εικονική μνήμη για τη βελτίωση της απόδοσης των προγραμμάτων. Τέλος, το μάθημα επεκτείνεται στη διασύνδεση επεξεργαστών, κύριας μνήμης και περιφερειακών μέσω διαύλων, καθώς και στον τρόπο με τον οποίο το λειτουργικό σύστημα συνεργάζεται με τις μονάδες εισόδου/εξόδου.
Με ένα συνδυασμό θεωρίας, πρακτικών παραδειγμάτων και μοντελοποίησης σύγχρονων τεχνικών μέσω εργαστηριακών ασκήσεων, το μάθημα φιλοδοξεί να προσφέρει στους φοιτητές και στις φοιτήτριες μια πλήρη εικόνα της εσωτερικής λειτουργίας των σύγχρονων επεξεργαστών και της σχέσης τους με το υπόλοιπο υπολογιστικό σύστημα.
Με την επιτυχή ολοκλήρωση του μαθήματος, οι φοιτητές και φοιτήτριες θα είναι σε θέση να: