Πανεπιστήμιο Πατρών Τμήμα Οικονομικών Επιστημών Εισαγωγή στους Η/Υ και Εφαρμογές tzagara@upatras.gr daskalou@upatras.gr https://eclass.upatras.gr/courses/econ1242/
Θέμα Μαθήματος Δομή και λειτουργία (Αρχιτεκτονική) των Η/Υ (Από το βιβλίο: Βοοch, Grady, Object-Oriented Analysis and Design with Applications, Addison Wesley, 1994.)
Αρχιτεκτονική των Η/Υ Η αρχιτεκτονική της μηχανής Von Neumann (Ηλεκτρονικός Υπολογιστής-Η/Υ), αποτελείται από 5 τμήματα: Μονάδα Εισόδου (Κεντρική) Μνήμη Μονάδα Ελέγχου Αριθμιτική και Λογική Μονάδα (ALU) Μονάδα Εξόδου.
Αρχιτεκτονική των Η/Υ Μονάδα Εισόδου Χρησιμοποιείται για την εισαγωγή προγραμμάτων και δεδομένων. Μνήμη Χρησιμοποιείται για την καταχώρηση/αποθήκευση των υπο εκτέλεση προγραμμάτων και δεδομένων. Αριθμητική και Λογική Μονάδα Χρησιμοποιείται για την εκτέλεση αριθμητικών πράξεων, (πρόσθεση, αφαίρεση, πολλαπλασιασμός, διαίρεση) και την εκτέλεση λογικών πράξεων (συγκρίσεις, συζεύξεις, διαζεύξεις και αρνήσεις)
Αρχιτεκτονική των Η/Υ Μονάδα Ελέγχου Αποκωδικοποιεί τις οδηγίες των εκτελουμένων πράξεων, οι οποίες δίνονται πάντα σε κωδικοποιημένη μορφή. Προετοιμάζει τα ηλεκτρονικά κυκλώματα της αριθμητικής και λογικής μονάδας. Παράγει τα κατάλληλα σήματα με τα οποία ειδοποιούνται και συντονίζονται οι άλλες μονάδες, για την επιτέλεση συντονισμένων λειτουργιών. Μονάδα Εξόδου Χρησιμοποιείται για την έξοδο στο άμεσο περιβάλλον του υπολογιστού συστήματος των αποτελεσμάτων των προγραμμάτων αλλά και οποιουδήποτε στοιχείου που περιέχει η ALU.
Αρχιτεκτονική των Η/Υ Κεντρική Μονάδα Επεξεργασίας / Central Processing Unit - CPU Αριθμητική και Λογική Μονάδα Κεντρική Μνήμη Μονάδα Ελέγχου Μονάδα Εισόδου Εξόδου Bus (Data Bus, Address Bus)
Αρχιτεκτονική των Η/Υ Bus (Δίαυλος) Οι «γραμμές» επικοινωνίας των επι μέρους μονάδων Διακρίνονται σε Data Bus: μεταφορά των στοιχείων από μονάδα σε μονάδα Address Bus: προσδιορίζει τις ακριβείς θέσεις της αφετηρίας ή του προορισμού της μεταφοράς των στοιχείων.
Αρχιτεκτονική των Η/Υ Address Bus ΚΜΕ/CPU Κεντρική Μνήμη Μονάδα Εισόδου/Εξόδου Μονάδα Ελέγχου ALU καταχωρητές Data Bus
Αρχιτεκτονική των Η/Υ Παράδειγμα συμπεριφοράς της αρχιτεκτονικής, προκειμένου να επιτελεστεί ένας «υπολογισμός». Το πρόβλημα: Υπολογισμός της αιθμητικής παράστασης Χ=(Α+Β+Γ) x Δ Παραδοχές: Τα Α,Β,Γ,Δ εισάγονται μέσω πληκτρολογίου και εκτυπώνονται σε χαρτί Η ALU επιτελεί ακριβώς μία πράξη κάθε στιγμή. Παρατηρήσεις H πρόσθεση αριθμών είναι πράξη «προσεταιριστική»: Το αποτέλεσμα είναι ανεξάρτητο από την σειρά εκτέλεσης. (Α + Β) + Γ = Α + (Β + Γ)
Αρχιτεκτονική των Η/Υ Παράδειγμα συμπεριφοράς της αρχιτεκτονικής (cont.) Παρατηρήσεις Επειδή η ALU εκτελεί μία πράξη κάθε στιγμή, πρέπει να γίνουν δύο προσθέσεις και ένας πολ/σμός. Χ=[ (Α+Β)+Γ ] x Δ 2 Οι αριθμοί αποθηκεύονται στην μνήμη: Α Θέση_Α Β Θέση_Β ( ) 1
Αρχιτεκτονική των Η/Υ Παράδειγμα συμπεριφοράς της αρχιτεκτονικής (cont.) Ενέργειες που συντελούνται Μνήμη Θέση_Α 5 Θέση_Β 8 Θέση_Γ 4 Θέση_Δ 2 Θέση_Χ??? ALU 5 Μνήμη Θέση_Α 5 Θέση_Β 8 Θέση_Γ 4 Θέση_Δ 2 Θέση_Χ??? ALU 13 + 1α. Ανάκληση αριθμού Θέση_Α και μεταφορά αντιγράφου στην ALU 1β. Ανάκληση αριθμού Θέση_Β και πρόσθεση αντιγράφου του στο περιεχόμενο της ALU
Αρχιτεκτονική των Η/Υ Παράδειγμα συμπεριφοράς της αρχιτεκτονικής (cont.) Μνήμη Θέση_Α 5 Θέση_Β 8 Θέση_Γ 4 Θέση_Δ 2 Θέση_Χ??? ALU 17 + Μνήμη Θέση_Α 5 Θέση_Β 8 Θέση_Γ 4 Θέση_Δ 2 Θέση_Χ??? ALU 34 x ALU Θέση_Α 5 Θέση_Β 8 Θέση_Γ 4 Θέση_Δ 2 Θέση_Χ 34 34
Αρχιτεκτονική των Η/Υ Παράδειγμα συμπεριφοράς της αρχιτεκτονικής (cont.) Παρατηρήσεις Η κεντρική μνήμη περιέχει, κατά την εκτέλεση, τόσο τις εντολές όσο και τα δεδομένα Θέση Περιεχόμενα Θέση_1 Θέσε (Θέση_Α),ALU Θέση_2 ΣΥΝ (Θέση_Β),ALU (Συμβολικές) Εντολές Θέση_Α 5 Θέση_Β 8 Δεδομένα
Κεντρική Μνήμη Σκοπός Δίνει την δυνατότητα καταχώρησης και ανάκλησης: των υπο εκτέλεση προγραμμάτων, με τη μορφή ακολουθίας πράξεων των δεδομένων, επί των οποίων εφαρμόζονται τα προγράμματα Αναλυτικότερα: Δεδομένα, αποτελέσματα πράξεων, αντίγραφα δεδομένων, ακολουθίες πράξεων. Προσοχή! Κεντρική μνήμη Σκληρός δίσκος! Χωρίς σκληρό δίσκο, υπολογιστικό σύστημα μπορεί να υπάρχει. Χωρίς κεντρική μνήμη όχι!
Κεντρική Μνήμη Φυσικό μέσο Παλαιότερα: μαγνητικοί δακτύλιοι Μαγνήτιση δεξιόστροφη ή αριστρερόστροφη
Κεντρική Μνήμη Φυσικό μέσο Σήμερα: flip-flop (ημιαγωγική μνήμη) Μεγάλη ταχύτητα Μικρός όγκος Η ημιαγωγική μνήμη δεν είναι σταθερή, και για απαιτεί για να διατηρηθεί διαρκή τροφοδοσία με ρεύμα
Κεντρική Μνήμη Οργάνωση της Μνήμης Bit Ελάχιστο στοιχείο μνήμης, που μπορεί να αποθηκεύσει δύο απλές καταστάσεις (0,1) Λέξη (Word) Ακολουθία από bit. Το πλήθος (Ν) των bit εξαρτάται από το είδος της μηχανής. Μία λέξη μπορεί να απόδώσει μέχρι 2 Ν το πολύ διαφορετικές καταστάσεις. Ν-1 2 1 0 Most significant bit Least significant bit
Κεντρική Μνήμη Οργάνωση της Μνήμης Byte Τυπική υποδιαίρεση των λέξεων, που αποτελεί την πιο συνηθισμένη ομαδοποίηση των bit: 8 bit = 1 byte Χαρακτήρας Τα κωδικοποιημένα σύμβολα σε ένα πληκτρολόγιο. Η κωδικοποίηση όλων των ελληνο-λατινικών χαρακτήρων απαιτεί 8 bits/1byte (=> 2 8 συνδυασμοί). Διεύθυνση θέσης μνήμης Προσδιορισμός των θέσεων μνήμης, που περιέχουν τις υπο εκτέλεση εντολές και τα δεδομένα, σε δυαδική αρίθμηση
Κεντρική Μνήμη Διεύθυνση θέσης μνήμης (cont.) Κάθε θέση μνήμης προσδιορίζεται από συγκεκριμένη διεύθυνση. Η διεύθυνση αποδίδεται με μία διάταξη (0,1) ανά k ( k bits) => 2 K θέσεις μνήμης (θεωρητικά) Διεύθυνσεις Bytes Μνήμης 1η 2η 3η 4η 00 01 10 11 Διεύθυνση 2 bits (k=2) 4 (=2 2 ) θέσεις μνήμης
Κεντρική Μνήμη Οργάνωση της Μνήμης Μέτρηση χωρητικότητας της Μνήμης Kilo = 1024 = 2 10 KByte Mega = 1024 x 1024 = 1024 KiloByte MByte Giga = 1024 x 1024 x1024 = 1024 MegaByte Gbyte Tera = 1024 x 1024 x1024x1024 = 1024Giga
Συστήματα Κωδικοποίησης (ASCII)
Συστήματα Κωδικοποίησης (ΕΛΟΤ ISO-8859-7)
Τύποι Μνημών RAM (Random Access Memory) Μνήμη τυχαίας προσπέλασης Επιτρέπει καταχωρήσεις και ανακλήσεις στοιχείων (ανάγνωση και εγγραφή) κατά την διάρκεια λειτουργίας του υπολογιστή «Τυχαία προσπέλαση»: αναφέρεται στη δυνατότητα καταχώρησης στοιχείων σε οποιαδήποτε επιθυμητή (και δη «τυχαία») θέση της μνήμης.
Τύποι Μνημών RΟΜ (Read Only Memory) Επιτρέπει μόνο την ανάκληση στοιχείων και όχι καταχώρηση αυτών. «Διαβάζεται και δεν γράφεται», το «περιεχόμενό» της δεν μπορεί να αλλάξει. Τα στοιχεία (δεδομένα) που περιέχει, έχουν καταχωρηθεί από: τον κατασκευαστή του συστήματος εξειδικευμένα άτομα. Τα δεδομένα που περιέχει αφορά συγκεκριμένες διαδικασίες π.χ. έναρξη συστήματος (Boot, Bootstrapping «βάζω τις μπότες μου»)
Τύποι Μνημών RΟΜ (Read Only Memory) (cont.) Παραλλαγές ROMs PROM Programmable Read Only Memory: προγραμματιζόμενη αναγνώσιμη μόνο μνήμη (από τον κατασκευαστή με κατάλληλα προγράμματα). EPROM Erasable Programmable Read Only Memory: Δυνατότητα διαγραφής και συνεπώς μεταβολή περιεχομένου (με υπεριώδη ακτινοβολία)
Τύποι Μνημών RΟΜ (Read Only Memory) (cont.) Παραλλαγές ROMs EAROM Electrically Alterable Read Only Memory: Ηλεκτρικά μεταβλητή μνήμη ROM (διαβάζεται και γράφεται).
Αριθμητική και Λογική Μονάδα (ALU) ALU Εκετελεί όλες τις αριθμητικές και λογικές πράξεις ενός υπολογιστικού συστήματος. Οι πράξεις μπορεί να είναι απλές (πρόσθεση, αφαίρεση) αλλά και πιο πολύπλοκες (τετραγωνική ρίζα, τριγωνομετρικές κλπ). Καταχωρητές Θέσεις μνήμης εντός της ALU, που απαιτούνται για την εκτέλεση των πράξεων. Προσωρινή καταχώρηση τιμών, που πρόκειται να χρησιμοποιηθούν στους υπό εκτέλεση υπολογισμούς Συσσωρευτές (Accumulators): ειδική κατηγορία καταχωρητών με αυξημένες δυνατότητες (π.χ. ταχύτητα)
Αριθμητική και Λογική Μονάδα (ALU) ALU (cont.) Γλώσσα μηχανής Η μορφή με την οποία είναι καταχωημένες οι υπο εκτέλεση εντολές Οι εντολές σε γλώσσα μηχανής αποτελούνται από 2 μέρη Κώδικα λειτουργίας» Προσδιορίζει τον τρόπο διαχείρισης δεδομένων, δηλ. την πράξη (π.χ. +,-,/,ανάκληση, καταχώρηση) Διευθύνσεις δεδομένων» Προσδιορίζει την διεύθυνση των δεδομένων (εντός της μνήμης) επί του οποίου θα «δράση» η πράξη
Αριθμητική και Λογική Μονάδα (ALU) ALU (cont.) Διευθύνσεις δεδομένων (cont.) ADD R1, R2 Κωδικός λειτουργίας Διευθύνσεις Το πλήθος των διευθύνσεων ανα εντολή ποικίλλει Μηχανές μηδενικής διεύθυνσης (π.χ. NOP) Μηχανές μιάς διεύθυνσης Μηχανές δύο διευθύνσεων Μηχανές τριών διευθύνσεων
Μονάδα Ελέγχου Βασικές λειτουργίες Συντονισμός όλων των λειτουργιών με σήματα ελέγχου. Πότε θα ξεκινήσει μία λειτουργία, ποια η μέγιστη διάρκειά της κλπ. Προσδιορισμός της εκάστοτε επόμενης προς εκτέλεση εντολής. Μεταφορά της υπο εκτέλεση εντολής στη ΚΜΕ (CPU) από την μνήμη. Αποκωδικοποίηση της υπό εκτέλεση εντολής Επίβλεψη λειτουργιών κατά την διάρκεια εκτέλεσης της εντολής Έλεγχος των διαδικασιών μνήμης.
Ταχύτητες Επεξεργαστών Ο χρόνος που απαιτείται για την εκτέλεση μίας εντολής ή την εκτέλεση ενός κύκλου μηχανής. Μέση ταχύτητα: μία πράξη < ενός εκτατομμυριοστού του δευπτερολέπτου (microsecond). Ταχύτεροι σήμερα: μία πράξη < ενός δισεκτατομμυριοστού του δευπτερολέπτου (nanosecond). MIPS/ΒIPS Millions/Billions Instructions Per Second Πλήθος εντολών ανά δευτερόλεπτο. Η ταχύτητα έχει σχέση άμεση με το εσωτερικό ρολόϊ του συστήματος. Π.χ. Λέμε επεξεργαστής 2,16GHz Ταχύτητα!
Είσοδος-Έξοδος Εξωτερικές συσκευές με τις οποίες το υπολογιστικό σύστημα επικοινωνεί με το περιβάλλον του χρήστη. Πληκτρολόγια Οθόνες Μαγνητικοί Δίσκοι Μαγνητικές ταινίες Οπτικοί δίσκοι Εκτυπωτές Συσκευές εισόδου: εισαγωγή στοιχείων από το περιβάλλον του χρήστη στο υπολογιστικό σύστημα (π.χ πληκτρολόγιο) Συσκευές εξόδου: έξοδος στοιχείων από το υπολογιστικό σύστημα προς το περιβάλλον του χρήστη (π.χ. εκτυπωτής)
Παράρτημα Ίστοτόποι (Web Sites) σχετικοί με την Αρχιτεκτονική των υπολογιστών http://en.wikipedia.org/wiki/computer http://homepage.cs.uri.edu/faculty/wolfe/book/readings/reading04.htm http://www.factmonster.com/ipka/a0774696.html