Αρχιτεκτονική Υπολογιστών

Κωδικός Μαθήματος
CEID_23Υ203
Κατηγορία
Υποχρεωτικά
Εξάμηνο
3
Τομέας
Τομέας Υλικού και Αρχιτεκτονικής των Υπολογιστών
Διδάσκων
Γιώργος Παπαδημήτριου
ECTS
4

ΠΕΡΙΕΧΟΜΕΝΟ ΜΑΘΗΜΑΤΟΣ

Ο φοιτητής/Η φοιτήτρια εισάγεται αρχικά στις βασικές έννοιες της οργάνωσης και της τεχνολογίας των υπολογιστών, ενώ εξετάζονται οι σύγχρονες προκλήσεις που αντιμετωπίζει η αρχιτεκτονική υπολογιστών. Στη συνέχεια, διδάσκεται την έννοια της αρχιτεκτονικής συνόλου εντολών (Instruction Set Architecture – ISA) ως κρίσιμη διασύνδεση ανάμεσα στο υλικό και το λογισμικό. Η διδασκαλία γίνεται με βάση την αρχιτεκτονική RISC-V, μια σύγχρονη, ανοιχτού τύπου και αρθρωτή RISC (Reduced Instruction Set Computer) αρχιτεκτονική, η οποία αποτελεί ένα ισχυρό εκπαιδευτικό εργαλείο για την κατανόηση σε βάθος των θεμελιωδών εννοιών.

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

Έπειτα, η διδασκαλία εστιάζει στην οργάνωση και τη σχεδίαση του υπολογιστή για την υλοποίηση μιας αρχιτεκτονικής συνόλου εντολών, αρχικά χωρίς τεχνικές διοχέτευσης (pipeline). Ο φοιτητής/Η φοιτήτρια μελετά και εξοικειώνεται με τη διαδρομή δεδομένων (datapath), τη μονάδα ελέγχου (control unit) και τη σχέση τους με τις εντολές της αρχιτεκτονικής RISC-V, αξιοποιώντας γνώσεις από το μάθημα της «Λογικής Σχεδίασης» και το μάθημα των «Βασικών Αρχών Οργάνωσης και Λειτουργίας Υπολογιστικών Συστημάτων». Τέλος, εισάγονται οι βασικές αρχές της τεχνικής της διοχέτευσης (pipelining), με έμφαση στα οφέλη που προσφέρει στην απόδοση αλλά και στις επιπλοκές που προκύπτουν από τη χρήση της.

Το μάθημα περιλαμβάνει τις ακόλουθες θεματικές ενότητες:

  • Εισαγωγή στην αρχιτεκτονική και τεχνολογία των υπολογιστών
  • Μέτρα αξιολόγησης της απόδοσης
  • Η αρχιτεκτονική συνόλου εντολών RISC-V
  • Συμβολική γλώσσα και γλώσσα μηχανής
  • Από τον κώδικα υψηλού επιπέδου στην εκτέλεση από το υλικό
  • Υπολογιστική αριθμητική: αναπαραστάσεις, πράξεις και υλοποίηση
  • Σχεδίαση επεξεργαστή ενός κύκλου ρολογιού: διαδρομή δεδομένων και μονάδα ελέγχου
  • Εισαγωγή στη διοχέτευση (pipeline) και επιπτώσεις στην απόδοση
  • Εισαγωγή στη σχεδίαση και τη λειτουργία των κρυφών μνημών (cache memories)

Με την επιτυχή ολοκλήρωση του μαθήματος, οι φοιτητές/φοιτήτριες θα είναι σε θέση να:

  1. Αναγνωρίζουν και περιγράφουν τη βασική οργάνωση ενός υπολογιστικού συστήματος και τα κύρια δομικά του στοιχεία (επεξεργαστής, μνήμη, είσοδος/έξοδος).
  2. Αναλύουν και συγκρίνουν την απόδοση υπολογιστικών συστημάτων χρησιμοποιώντας κατάλληλες μετρικές.
  3. Αναπτύσσουν προγράμματα σε συμβολική γλώσσα για την αρχιτεκτονική RISC-V, κατανοώντας τη χαμηλού επιπέδου λειτουργία του υλικού.
  4. Χειρίζονται και αξιοποιούν προσομοιωτές αρχιτεκτονικής υπολογιστών (όπως RARS) για την κατανόηση και τον έλεγχο της εκτέλεσης προγραμμάτων και της λειτουργίας του επεξεργαστή.
  5. Σχεδιάζουν και περιγράφουν τη λειτουργία μιας απλής κεντρικής μονάδας επεξεργασίας (CPU) με σχεδίαση ενός κύκλου ρολογιού, με έμφαση στη διαδρομή δεδομένων (datapath) και στη μονάδα ελέγχου (control unit).
  6. Εξηγούν τη λειτουργία και τα πλεονεκτήματα της διοχέτευσης (pipeline) καθώς και τις βασικές τεχνικές αντιμετώπισης των κινδύνων (hazards).
  7. Κατανοούν τις βασικές αρχές της ιεραρχίας μνήμης, συμπεριλαμβανομένων των κρυφών μνημών (cache memories) και της επίδρασής τους στην απόδοση του συστήματος.
Μετάβαση στο περιεχόμενο