Μετάβαση στο περιεχόμενο

Προχωρημένα Θέματα Αρχιτεκτονικής Υπολογιστών

Επίσημο περίγραμμα μαθήματος του ΤΜΗΥΠ (Πανεπιστήμιο Πατρών), όπως δημοσιεύεται στη σελίδα του μαθήματος και στο συνημμένο αρχείο «Περίγραμμα Μαθήματος». Το κείμενο παρατίθεται αυτούσιο, χωρίς τα πρότυπα οδηγιών του εντύπου.

Στόχοι

  • Με την επιτυχή ολοκλήρωση του μαθήματος, οι φοιτητές και φοιτήτριες θα είναι σε θέση να:
  • Εξηγούν τις βασικές αρχές διοχέτευσης (pipelining) και να περιγράφουν πως αυτές εφαρμόζονται σε επεξεργαστές όπως ο RISC-V.
  • Αναγνωρίζουν και ταξινομούν τους διαφορετικούς τύπους κινδύνων (hazards) που προκύπτουν κατά την εκτέλεση προγραμμάτων με διοχέτευση, και να προτείνουν κατάλληλες τεχνικές επίλυσής τους (π.χ. προώθηση, εισαγωγή καθυστερήσεων, πρόβλεψη διακλάδωσης).
  • Αναλύουν και αξιολογούν τη λειτουργία δυναμικών τεχνικών πρόβλεψης διακλάδωσης.
  • Κατανοούν και περιγράφουν τις βασικές έννοιες εκτέλεσης εντολών εκτός σειράς (out-of-order execution) και να εξηγούν πως εφαρμόζονται σε σύγχρονες αρχιτεκτονικές με τη χρήση του αλγορίθμου Tomasulo, reservation stations και reorder buffers.
  • Σχεδιάζουν ή τροποποιούν μοντέλα επεξεργαστών με πολλαπλή εκκίνηση εντολών (multiple issue).
  • Εξηγούν τον ρόλο και τη σημασία των prefetchers (μονάδες εκ των προτέρων προσκόμισης εντολών ή/και δεδομένων) και να αξιολογούν την επίδρασή τους στη μείωση καθυστερήσεων από τη μνήμη.
  • Αναλύουν την απόδοση συστημάτων μνήμης, συμπεριλαμβανομένων των επιπέδων κρυφών μνημών (cache memories) και εικονικής μνήμης, χρησιμοποιώντας μετρικές όπως hit rate, miss penalty και average memory access time (AMAT).
  • Συγκρίνουν διαφορετικές αρχιτεκτονικές επεξεργαστών ως προς την απόδοση, τη φερεγγυότητα και την πολυπλοκότητα υλοποίησης.

Περιεχόμενο (ύλη)

Το μάθημα εστιάζει στην κατανόηση και υλοποίηση των αρχών της διοχέτευσης (pipeline) στους σύγχρονους επεξεργαστές, ξεκινώντας από τη βασική θεωρία και καταλήγοντας σε προχωρημένες τεχνικές μεγιστοποίησης της παραλληλίας επιπέδου εντολής (ILP). Οι φοιτητές/φοιτήτριες θα μελετήσουν τη σχεδίαση διαδρομής δεδομένων με διοχέτευση σε επεξεργαστές βασισμένους στην αρχιτεκτονική συνόλου εντολών RISC-V, την κατασκευή μονάδας ελέγχου διοχέτευσης, καθώς και τους διάφορους τύπους κινδύνων (δομικούς, δεδομένων, ελέγχου), μαζί με τεχνικές αποφυγής και επίλυσής τους, όπως η προώθηση (forwarding/bypassing), οι τεχνικές πρόβλεψης διακλάδωσης και η καθυστερημένη διακλάδωση.

Ιδιαίτερη έμφαση δίνεται σε μηχανισμούς για τη διαχείριση εξαιρέσεων στη διοχέτευση, την προχωρημένη πρόβλεψη διακλάδωσης και τη δυναμική εκτέλεση εντολών. Το μάθημα εισάγει τους φοιτητές και τις φοιτήτριες στη φιλοσοφία των υπερβαθμωτών (superscalar) αρχιτεκτονικών με πολλαπλή εκκίνηση εντολών (multiple issue), και στη χρήση τεχνικών όπως οι σταθμοί κράτησης (reservation stations) και ο μονάδες μετονομασίας καταχωρητών (register renaming) που εισάγονται με τον αλγόριθμο Tomasulo. Οι φοιτητές/φοιτήτριες θα κατανοήσουν πως επιτυγχάνεται η εκτέλεση εντολών εκτός σειράς (out-of-order execution) με στόχο τη βελτιστοποίηση της απόδοσης και την καλύτερη αξιοποίηση των διαθέσιμων υπολογιστικών μονάδων. Παράλληλα, θα αναλυθούν τεχνικές εκ των προτέρων προσκόμισης εντολών και δεδομένων (instruction/data prefetching), οι οποίες συνεισφέρουν στη μείωση των καθυστερήσεων λόγω προσπέλασης στη μνήμη. Οι φοιτητές/φοιτήτριες θα εξετάσουν τρόπους αξιοποίησης της ιεραρχίας της μνήμης, εστιάζοντας στις κρυφές μνήμες και την εικονική μνήμη για τη βελτίωση της απόδοσης των προγραμμάτων. Τέλος, το μάθημα επεκτείνεται στη διασύνδεση επεξεργαστών, κύριας μνήμης και περιφερειακών μέσω διαύλων, καθώς και στον τρόπο με τον οποίο το λειτουργικό σύστημα συνεργάζεται με τις μονάδες εισόδου/εξόδου.

Με ένα συνδυασμό θεωρίας, πρακτικών παραδειγμάτων και μοντελοποίησης σύγχρονων τεχνικών μέσω εργαστηριακών ασκήσεων, το μάθημα φιλοδοξεί να προσφέρει στους φοιτητές και στις φοιτήτριες μια πλήρη εικόνα της εσωτερικής λειτουργίας των σύγχρονων επεξεργαστών και της σχέσης τους με το υπόλοιπο υπολογιστικό σύστημα.

Αξιολόγηση

Η αξιολόγηση πραγματοποιείται στην ελληνική γλώσσα και περιλαμβάνει εργασίες και τελική γραπτή εξέταση. Η αξιολόγηση της εμπέδωσης της θεωρίας γίνεται μέσω της τελικής γραπτής εξέτασης, η οποία περιλαμβάνει ερωτήσεις πολλαπλής επιλογής, σύντομης απάντησης, ανάπτυξης και επίλυσης προβλημάτων. Μετά την ανακοίνωση των αποτελεσμάτων, οι φοιτητές/φοιτήτριες έχουν τη δυνατότητα να δουν το γραπτό τους, να κατανοήσουν τα λάθη τους και τον τρόπο βαθμολόγησης.

Η αξιολόγηση των εργαστηριακών ασκήσεων γίνεται μέσω της άμεσης, δια ζώσης παρακολούθησης και ελέγχου της ορθότητας των προγραμμάτων που υλοποιούν κατά τη διάρκεια των εργαστηριακών ασκήσεων που παραδίδουν.

Βιβλιογραφία

  • «Αρχιτεκτονική Υπολογιστών: Μια Ποσοτική Προσέγγιση», J. L. Hennessy, D. A. Patterson, 6η Αμερικάνικη Έκδοση, Εκδόσεις Κλειδάριθμος, 2020. (Κωδικός Βιβλίου στον Εύδοξο: 94644180)

  • «Ψηφιακή Σχεδίαση και Αρχιτεκτονική Υπολογιστών, Έκδοση RISC-V», S. L. Harris, D. Harris, Εκδόσεις Κλειδάριθμος, 2025. (Κωδικός Βιβλίου στον Εύδοξο: 112705602)

  • «Οργάνωση και Σχεδίαση Υπολογιστών, Έκδοση RISC-V», D. A. Patterson, J. L. Hennessy, 2η Αμερικάνικη Έκδοση, Εκδόσεις Κλειδάριθμος, 2024. (Κωδικός Βιβλίου στον Εύδοξο: 112705606)

  • «Αρχιτεκτονική Υπολογιστών», 1η έκδοση, Δ. Νικολός, Εκδόσεις Παναγιώτα Παπακωνσταντίνου, 2017. (Κωδικός Βιβλίου στον Εύδοξο: 68370526)

  • «Οργάνωση και Αρχιτεκτονική Υπολογιστών», 11η Έκδοση, Stallings William, Εκδόσεις Α. ΤΖΙΟΛΑ & ΥΙΟΙ Α.Ε., 2020. (Κωδικός Βιβλίου στον Εύδοξο: 94692327)

Συναφή επιστημονικά περιοδικά:

  • IEEE Micro
  • IEEE Transactions on Computers
  • IEEE Transactions on Dependable and Secure Computing
  • ACM Transactions on Architecture and Code Optimization