Παράκαμψη προς το κυρίως περιεχόμενο

Στόχοι Μαθήματος: Το μάθημα αυτό παρουσιάζει με λεπτομέρεια τη βασική δομή λειτουργίας των υπολογιστικών συστημάτων με έναν μονοπύρηνο επεξεργαστή, και κάνει εισαγωγή στη μηχανική υπολογιστών. Το μάθημα αυτό απαντά στο ερώτημα «Πώς» υλοποιείται ένα υπολογιστικό σύστημα και επικεντρώνεται στη φυσική υλοποίηση και τις πραγματικές λεπτομέρειες του υλικού που υλοποιούν αρχιτεκτονικές έννοιες/τεχνικές. Παρουσιάζει τα βασικά δομικά στοιχεία ενός υπολογιστικού συστήματος: αριθμητικές και λογικές μονάδες, μονάδες ελέγχου, σύστημα μνήμης, σύστημα εισόδου/εξόδου, δίαυλος δεδομένων. Παρουσιάζει τη Κεντρική Μονάδα Επεξεργασία (CPU) RISC χρησιμοποιώντας σαν βάση την αρχιτεκτονική MIPS και την Αρχιτεκτονική Συνόλου Εντολών RISC ISA (Instruction Set Architecture). Παρουσιάζει την αριθμητική υπολογιστών και την ανάλυση της επίδοσης τους. Παρουσιάζει επίσης την διασωλήνωση (pipelining), την ιεραρχία μνήμης (Main Memory, Cache, Virtual Memory). Και τέλος παρουσιάζει τις μονάδες εισόδου/εξόδου ενός υπολογιστή (Storage, Networks, Peripherals).

Μαθησιακά Αποτελέσματα: Με την ολοκλήρωση του μαθήματος οι φοιτητές θα μπορούν να: (1) Περιγράφουν τα βασικά δομικά στοιχεία ενός υπολογιστή, όπως η Κεντρική Μονάδα Επεξεργασίας (CPU), η μνήμη, οι συσκευές εισόδου/εξόδου και πώς αυτά τα στοιχεία αλληλοεπιδρούν για να εκτελέσουν υπολογισμούς. (2) Να προγραμματίζουν στη γλώσσα Assembly, η οποία είναι μια συμβολική αναπαράσταση του κώδικα μηχανής. (3) Να περιγράφουν τα διάφορα επίπεδα μνήμης σε έναν υπολογιστή, όπως η κρυφή μνήμη, η κύρια μνήμη και η δευτερεύουσα αποθήκευση, και πώς αυτά τα επίπεδα συνεργάζονται για να παρέχουν γρήγορη και αποτελεσματική πρόσβαση στα δεδομένα. (4) Να περιγράφουν τις διάφορες τεχνολογίες που χρησιμοποιούνται για τη σύνδεση περιφερειακών συσκευών, όπως πληκτρολόγια, ποντίκια, οθόνες και εκτυπωτές, στον υπολογιστή. (5) Να απαντούν στο ερώτημα «Πώς» υλοποιείται και πως λειτουργεί ένα υπολογιστικό σύστημα στο υλικό.

Περιεχόμενο Μαθήματος: Το μάθημα περιλαμβάνει τις ακόλουθες ενότητες: (1) Αφαιρετικότητα και Τεχνολογία Υπολογιστών, (2)  Γλώσσα Μηχανής, Εντολές, MIPS, (3) Αριθμητική Υπολογιστών, Αριθμοί ακέραιοι και κινητής υποδιαστολής, Πρόσθεση, Αφαίρεση, Πολλαπλασιασμός, Διαίρεση, (4) Ανάλυση Επίδοσης Υπολογιστών, (5)  Κεντρική Μονάδα Επεξεργασίας (CPU), Datapath and Control, (6) Διασωλήνωση (Pipeline), Data and Control Hazards, (7) Ιεραρχία Μνήμης, Κύρια μνήμη, Κρυφή μνήμη , Ιδεατή μνήμη, (8) Συσκευές Εισόδου/Εξόδου, Μόνιμη αποθήκευση, διασύνδεση με CPU και άλλες περιφερειακές συσκευές.