Συστήματα Ψηφιακών Ηλεκτρονικών Θεωρία ΚΕΦ (3) Βιβλίο...

Post on 04-Jul-2015

1.020 views 7 download

description

Το (3ο) κεφάλαιο στο μάθημα Συστήματα Ψηφιακών Ηλεκτρονικών Θεωρία του τομέα Ηλεκτρονικής και ειδικότητας Ηλεκτρονικών Υπολογιστικών Συστημάτων και Δικτύων, Γ’ τάξη ΕΠΑΛ. Η παρουσίαση αυτή (PPT in PDF) είναι ενεργή, συνοδεύεται από κάποια αρχεία τα οποία συνδέονται με υπερσυνδέσεις. Περισσότερες πληροφορίες στην σελίδα http://www.ilektronikoi.gr/index.php?act=viewCat&catId=19

Transcript of Συστήματα Ψηφιακών Ηλεκτρονικών Θεωρία ΚΕΦ (3) Βιβλίο...

ΚΕΦΑΛΑΙΟ 3 ΔΟΜΗ & ΛΕΙΤ.ΜΙΚΡΟΥΠΟΛΟΓΙΣΤΩΝ

Αρχιτεκτονική ΗλεκτρονικούΤμήματος (hardware) τωνΥπολογιστικών Συστημάτων.

o 3.1 Βασικά στοιχεία αρχιτεκτονικήςμικροϋπολογιστικών συστημάτων.

o 3.2 Αρχές λειτουργίας και αρχιτεκτονικήμικροεπεξεργαστών.

o 3.3 Εντολές μικροεπεξεργαστών.n 3.3.1 Εκτέλεση εντολής.n 3.3.2 Γλώσσα μηχανής και συμβολική γλώσσα.n 3.3.3 Κύκλοι εντολής και κύκλοι μηχανής.n 3.3.4 Είδη εντολών.

o 3.4 Τρόποι αναφοράς στη μνήμη.o 3.5 Χαρακτηριστικά και κατηγορίεςμικροεπεξεργαστών.

o 3.6 Οικογένειες μικροεπεξεργαστών.o 3.7 Μικροελεγκτές.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

3

3.1 Βασικά στοιχεία αρχιτεκτονικήςμικροϋπολογιστικών συστημάτων

o Με τον όρο υπολογιστικό σύστημαονομάζουμε ένα σύστημα το οποίοαποτελείται από μία Κεντρική ΜονάδαΕπεξεργασίας, μνήμη και συσκευέςεισόδου και εξόδου.

o Το χρησιμοποιούμε για την εκτέλεσηυπολογισμών ή για να ελέγξουμε άλλεςσυσκευές.

3.1 Βασικά στοιχεία αρχιτεκτονικήςμικροϋπολογιστικών συστημάτων

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

5

3.1 Βασικά στοιχεία αρχιτεκτονικήςμικροϋπολογιστικών συστημάτων

o Ένα υπολογιστικό σύστημα στο οποίο ωςκεντρική μονάδα επεξεργασίας (ΚΜΕ)χρησιμοποιείται ένας μικροεπεξεργαστής(micro – processor) ονομάζεταιμικροϋπολογιστικό σύστημα.

o Ένας μικροεπεξεργαστής είναι ένα Ο.Κγενικού σκοπού, το οποίο μπορεί ναπρογραμματιστεί.

3.1 Βασικά στοιχεία αρχιτεκτονικήςμικροϋπολογιστικών συστημάτων

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

7

3.1 Βασικά στοιχεία αρχιτεκτονικήςμικροϋπολογιστικών συστημάτων

o Η επεξεργασία των δεδομένων γίνεται σε μια σειράαπό βήματα, κάθε ένα από τα οποία ονομάζεταιεντολή.

o Οι εντολές που εκτελούνται από το μικροεπεξεργαστήείναι σε γλώσσα μηχανής.

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

o Οι εντολές είναι αποθηκευμένες στην κύρια μνήμη.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

8

3.1 Βασικά στοιχεία αρχιτεκτονικήςμικροϋπολογιστικών συστημάτων

o Η κύρια μνήμη είναι ένας χώρος στονοποίο ο υπολογιστής φυλάει δεδομένα ήεντολές προς εκτέλεση.

o Αποτελείτε από λέξεις μνήμης καιδιευθύνσεις.

o Χωρίζεται σε δύο μέρη :o Την ROMo Και την RAM.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

9

3.1 Βασικά στοιχεία αρχιτεκτονικήςμικροϋπολογιστικών συστημάτων

o Οι λειτουργίες με τις οποίες ομικροεπεξεργαστής επικοινωνεί με τηνμνήμη RAM είναι η εγγραφή καιανάγνωση.

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

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

10

3.1 Βασικά στοιχεία αρχιτεκτονικήςμικροϋπολογιστικών συστημάτων

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

o Η διεύθυνση μεταφέρεται μέσω του διαδρόμουδιευθύνσεων, τα δεδομένα μέσω τουδιαδρόμου δεδομένων.

o Η μνήμη ROM περιέχει το πρόγραμμαλειτουργίας.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

11

3.1 Βασικά στοιχεία αρχιτεκτονικήςμικροϋπολογιστικών συστημάτων

o Τα βασικά χαρακτηριστικά της κύριας μνήμηςείναι :

o Μήκος λέξης.o Χωρητικότητα.o Χρόνος προσπέλασης.o Το μήκος λέξης είναι το πλήθος των δυαδικώνψηφίων κάθε λέξης, ίσο με αυτό που μπορεί ναεκτελέσει πράξεις ο μικροεπεξεργαστής.(2,4,8,16,32,64 bits).

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

12

3.1 Βασικά στοιχεία αρχιτεκτονικήςμικροϋπολογιστικών συστημάτων

o Χωρητικότητα είναι το πλήθος των λέξεων (bytes).o 1 KB = 210 = 1.024 bits, 1 MB = 220 = 1.048.576 bits ,1 GB

= 230 = 1.073.741.824 bitso Χρόνος προσπέλασης είναι ο χρόνος που περνάειαπό τη στιγμή που ο μικροεπεξεργαστής ζητάει απότη μνήμη τα περιεχόμενο μιας θέσης, μέχρι τη στιγμήπου η μνήμη δίνει το περιεχόμενο αυτό.

o Επίσης μετριέται και με την συχνότητα λειτουργίας,που είναι πόσες φορές μπορούμε να προσπελάσουμετην μνήμη στην μονάδα του χρόνου (sec), γιαεγγραφή και ανάγνωση.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

13

3.1 Βασικά στοιχεία αρχιτεκτονικήςμικροϋπολογιστικών συστημάτων

o Οι μονάδες εισόδου εξόδου είναι τοσύνολο των συσκευών ή διατάξεων πουεπιτρέπουν την επικοινωνία τουσυστήματος με τον έξω κόσμο.

o Οι μονάδες εισόδου μετατρέπουν τηνπληροφορία σε ψηφιακή μορφή.

o Πληκτρολόγιο, ποντίκι, σαρωτής, κλπ.o Και οι μονάδες εξόδου το αντίστροφο.o Οθόνη, εκτυπωτής, κ.λ.π.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

14

3.1 Βασικά στοιχεία αρχιτεκτονικήςμικροϋπολογιστικών συστημάτων

o Υπάρχουν και αμφίδρομες μονάδεςεισόδου – εξόδου. Modems, κάρτες ήχου,βίντεο, κλπ.

o Μια συσκευή εισόδου, εξόδου συνδέετεστο σύστημα μέσω θυρών εισόδουεξόδου (Ι/Ο ports) οι οποίες είναικαταχωρητές που μπορεί να προσπελάσειο μικροεπεξεργαστής.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

15

3.1 Βασικά στοιχεία αρχιτεκτονικήςμικροϋπολογιστικών συστημάτων

o Ένας διάδρομος είναι μια ομάδα αγωγών πουχρησιμοποιείται για την επικοινωνία μεταξύ τωνμονάδων του υπολογιστή.

o Διάδρομος δεδομένων. Όπου μεταφέρονται ταδεδομένα.

o Διάδρομος διευθύνσεων. Όπου μεταφέρονται οιδιευθύνσεις.

o Και ο διάδρομος ελέγχου όπου ο μικροεπεξεργαστήςπληροφορεί όλες τις συσκευές για το την ενέργεια πουπροτίθεται να κάνει.

3.1 Βασικά στοιχεία αρχιτεκτονικήςμικροϋπολογιστικών συστημάτων

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

17

3.1 Βασικά στοιχεία αρχιτεκτονικήςμικροϋπολογιστικών συστημάτων

o Για κάθε χρονική στιγμή ΜΟΝΟ ΔΥΟσυσκευές μπορούν να επικοινωνούν μέσωτου διαδρόμου.

o Ο μικροεπεξεργαστής ελέγχει καισυντονίζει μεταφορές και πράξεις σταδεδομένα σύμφωνα με τις εντολές στοπρόγραμμά του.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

18

3.2 Αρχές λειτουργίας καιαρχιτεκτονική μικροεπεξεργαστών.

o Οι μικροεπεξεργαστές (μ/Ε) ξεκίνησαν ως μιαενδιάμεση φθηνή λύση στον έλεγχο συστημάτων πουέπρεπε να κατασκευαστούν κατά περίπτωση.

o Το κύκλωμα που βασίζεται σε μ/Ε μπορεί ναχρησιμοποιηθεί χωρίς μετατροπές στο υλικό αλλά μόνομε τροποποίηση του προγράμματος σε ποικιλίαεφαρμογών, ενώ ένα που κατασκευάζεται με πύλεςμπορεί να χρησιμοποιηθεί μόνο σε μία εφαρμογή.

o Έτσι με τους μ/Ε το πρόβλημα της σχεδίασηςψηφιακών συστημάτων μετατοπίστηκε από το υλικόστο λογισμικό.

3.2 Αρχές λειτουργίας καιαρχιτεκτονική μικροεπεξεργαστών.

3.2 Αρχές λειτουργίας καιαρχιτεκτονική μικροεπεξεργαστών.

Πωςκατασκευάζεται 1

Πωςκατασκευάζεται 2

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

22

3.2 Αρχές λειτουργίας καιαρχιτεκτονική μικροεπεξεργαστών.

o Οι καταχωρητές χρησιμεύουν ως χώροι αποθήκευσηςδεδομένων και διευθύνσεων της μνήμης.

o Οι καταχωρητές που συναντάμε στην πλειοψηφία τωνμ/Ε είναι :

o Ο απαριθμητής προγράμματος PC (Program Counter).o Ο καταχωρητής εντολών IR (Instruction Register).o Ο δείκτης στοίβας SP (Stack Pointer).o Ο καταχωρητής κατάστασης SR (Status Register).

3.2 Αρχές λειτουργίας καιαρχιτεκτονική μικροεπεξεργαστών.

1

2

3

4

5

6

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

24

1. Αριθμητική και λογική μονάδα(arithmetic and logic unit)

o Η αριθμητική και λογική μονάδα εκτελείαριθμητικές και λογικές πράξεις.

o Τα δεδομένα με τα οποία εκτελούνται οιπράξεις αυτές βρίσκονται σε δύοκαταχωρητές : συσσωρευτής ACC(accumulator) & προσωρινόςκαταχωρητής TEMP (temporary).

o Το αποτέλεσμα της πράξης φυλάσσεταιστον συσσωρευτή.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

25

1. Αριθμητική και λογική μονάδα(arithmetic and logic unit)

o Οι συνηθισμένες πράξεις που εκτελούνταιείναι :

o Δυαδική πρόσθεση και αφαίρεση.o Λογικό AND, OR, XOR.o Συμπλήρωμα ως προς 1 και ως προς 2.o Ολίσθηση και περιστροφή δεξιά ήαριστερά.

o Πολλαπλασιασμός και διαίρεση (ΌΧΙ σεόλους τους μ/Ε).

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

26

1. Αριθμητική και λογική μονάδα(arithmetic and logic unit)

o Το αποτέλεσμα της πράξης επηρεάζειεπίσης μια σειρά από flip flops πουονομάζονται σημαίες (flags). Π.χ.

o Εάν προκύψει κρατούμενο.o Εάν το αποτέλεσμα είναι μηδέν 0.o Κ.λ.πo Το σύνολο των σημαιών αποτελεί τονκαταχωρητή κατάστασης SR (statusregister).

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

27

2. Μονάδα ελέγχου

o Η μονάδα ελέγχου ελέγχει και συγχρονίζειτη μεταφορά και επεξεργασία τωνδεδομένων.

o Χρησιμοποιεί ως είσοδο ένα εξωτερικόρολόι (clk) και παράγει σήματα χρονισμούκαι ελέγχου που ρυθμίζουν τις μεταφορέςδεδομένων και τις πράξεις πουπεριλαμβάνονται σε κάθε εντολή.

2. Μονάδα ελέγχου

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

29

3. Απαριθμητής προγράμματος PC.

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

o Μπορεί να απευθυνθεί σε οποιαδήποτεθέση μνήμης.

o Όταν η είσοδος reset είναι «1» ο PCπαίρνει την τιμή «0000» ή κάποιαπροκαθορισμένη αρχική τιμή.

3. Απαριθμητής προγράμματος PC.o Όταν το resetξαναγυρίσει στο«0» τότε ημονάδα ελέγχουCU μεταφέρει ταπεριεχόμενα τουPC στοναπομονωτήδιευθύνσεων AL(address latch)δίνοντας έτσι τηνδιεύθυνση τηςπρώτης εντολήςπου θαεκτελεστεί.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

31

3. Απαριθμητής προγράμματος PC.

o Έτσι ξεκινάει με την εκτέλεση της πρώτηςεντολής που βρίσκεται στην θέση «0».

o Οι πρώτες θέσεις μνήμης αντιστοιχούν σεδιευθύνσεις της μνήμης ROM.

o Το πρόγραμμα που περιέχεται σε αυτές τιςθέσεις είναι σημαντικό για την ομαλή λειτουργίατου συστήματος.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

32

4. Καταχωρητής εντολών IR.o Είναι ένας καταχωρητής στον οποίο μεταφέρεται ηεντολή που διαβάστηκε από τη μνήμη.

o Στην συνέχεια αποκωδικοποιείται μέσω τουαποκωδικοποιητή εντολών προκειμένου να εκτελεστεί.

o Οι εντολές ενός μ/Ε μπορεί να έχουν μήκος 1 ήπερισσότερες λέξεις μνήμης.

o Η πρώτη λέξη περιέχει τον κωδικό λειτουργίας(operation code ή opcode) δηλαδή το είδος τηςεντολής (πράξη, μεταφορά δεδομένων κλπ).

o Με αυτό ο μ/Ε γνωρίζει πόσες και ποιες θέσεις μνήμηςκαταλαμβάνει η εντολή καθώς και ποιες ενέργειεςπρέπει να κάνει στην συνέχεια.

4. Καταχωρητής εντολών IR.o Κατά την διάρκειαανάκλησης τηςεντολής (instructionfetch), η πρώτη λέξημνήμης μεταφέρεταιαπό την μνήμη μέσωτου εξωτερικούδιαδρόμουδεδομένων στονκαταχωρητήεντολών.

o Ο οποίος παρέχειπληροφορίες για τοείδος της εντολήςστην CU.

4. Καταχωρητής εντολών IR.o Ο PC αυξάνεταιαυτόματα κατά «1» (μεεντολή της CU) οπότεπεριέχει την διεύθυνσητης επόμενης εντολής.

o Εάν η εντολήκαταλαμβάνειπερισσότερες από μίαθέσεις τότε η CUπροχωρά στηνανάγνωση όλων τωνυπολοίπων θέσεων μετην βοήθεια του PC.

o Όταν φορτωθούν όλεςοι λέξεις εκτελείτε ηεντολή.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

35

5. Δείκτης στοίβας SP.

o Ο δείκτης στοίβας SP (Stack Pointer) είναι έναδείκτης διευθύνσεων της κορυφής της στοίβας ηοποία βρίσκεται στην κύρια μνήμη.

o Η στοίβα είναι μια περιοχή της μνήμης η οποίαχρησιμοποιείται κυρίως για την εξυπηρέτησηκλήσεων διακοπών και υπορουτινών.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

36

6. Καταχωρητής κατάστασης SR.

o Ο καταχωρητής αυτός δίνει πληροφορίεςσχετικά με το αποτελέσματα της τελευταίαςεντολής που εκτελέστηκε και έχει σχέση με τηνALU.

o Περιλαμβάνει κάποιες σημαίες συνθήκης(σήματα) που επηρεάζονται από τοαποτέλεσμα.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

37

6. Καταχωρητής κατάστασης SR.

o Σημαία μηδενισμού (Z, Zero) : αν το αποτέλεσμα μίαςεντολής είναι «0» τότε Ζ=«1», διαφορετικά Ζ=«0».

o Σημαία προσήμου (S, Sign) : αν το MSB τουαποτελέσματος μιας πράξης είναι «1» (ο αριθμός είναιαρνητικός) τότε S=“1” αλλιώς S=“0”.

o Σημαία ισοτιμίας (P, Parity) : αν το αποτέλεσμα μιαςπράξης έχει άρτιο αριθμό «1» δηλαδή άρτια ισοτιμία,τότε P=“1”, αλλιώς P=“0”.

o Σημαία κρατούμενου (C, Carry) : αν η πράξη είχε ωςαποτέλεσμα να προκύψει κρατούμενο (πρόσθεση) ήδανικό (αφαίρεση) τότε C=‘1’, αλλιώς C=‘0’.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

38

3.3 Εντολές μ/Ε.3.3.1 Εκτέλεση εντολής.

o Η εκτέλεση μιας εντολής περιλαμβάνει τις ακόλουθεςφάσεις :

o Κλήση εντολής : μεταφέρεται ο κώδικας της εντολήςαπό τη μνήμη (αυτήν που δείχνει ο PC).

o Αποκωδικοποίηση : αν η εντολή περιέχει και άλλα byteτότε μεταφέρεται από τη μνήμη η υπόλοιπη εντολή,αλλιώς ερμηνεύεται και εκτελείται.

o Εκτέλεση : η φάση αυτή εξαρτάται από το είδος τηςεντολής.

o Συνήθως οι εντολές αποθηκεύονται σε διαδοχικέςθέσεις μνήμης σύμφωνα με τη σειρά που πρέπει ναεκτελεστούν.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

39

3.3.2 Γλώσσα μηχανής καισυμβολική γλώσσα.

o Κάθε εντολή με μία ή περισσότερες λέξεις χωρίζεται σεδύο τμήματα :

o Τον κώδικα εντολής (opcode) που έχει μήκος «κ»δυαδικά ψηφία.

o Το τμήμα διευθύνσεως που έχει μήκος «τ» δυαδικάψηφία.

o Το άθροισμα «κ+τ» των δυαδικών ψηφίων δίνει τομήκος της εντολής.

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

3.3.2 Γλώσσα μηχανής καισυμβολική γλώσσα.

o Το σύνολο των εντολών τις οποίες μπορεί ναεκτελέσει ένας μ/Ε ονομάζεται ρεπερτόριοεντολών (instruction set).

o Κάθε μια από αυτές αντιστοιχίζεται σε έναδυαδικό αριθμό «κ» δυαδικών ψηφίων ο οποίοςτη συμβολίζει.

o Π.χ. 25=32 εντολές.

3.3.2 Γλώσσα μηχανής καισυμβολική γλώσσα.

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

o Το τμήμα διευθύνσεως παριστάνει μιαδιεύθυνση μνήμης ή έναν καταχωρητή.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

42

3.3.2 Γλώσσα μηχανής καισυμβολική γλώσσα.

o Ένα πρόγραμμα με εντολές γραμμένες στοδυαδικό σύστημα ονομάζεται πρόγραμμά σεγλώσσα μηχανής (machine language).

o Η συγγραφή ενός προγράμματος σε τέτοιαγλώσσα έχει πολλά μειονεκτήματα.

o Έτσι αντικαθιστούμε κάθε εντολή με μία λέξησυμβολική που θυμίζει την λειτουργία της.

o Ένα πρόγραμμα με συμβολικές εντολέςονομάζεται πρόγραμμα σε συμβολική γλώσσα(assembly language).

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

43

3.3.2 Γλώσσα μηχανής καισυμβολική γλώσσα.

o Για κάθε εντολή στο ρεπερτόριο υπάρχει ηαντίστοιχη σε συμβολική γλώσσα.

o Για να μπορέσει να εκτελεστεί ένα τέτοιοπρόγραμμα από τον μ/Ε θα πρέπει ναμεταφραστεί σε γλώσσα μηχανής. Αυτό γίνεταιμέσω ενός κατάλληλου προγράμματος(software) που ονομάζεταισυμβολομεταφραστής (assembler).

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

44

3.3.3 Κύκλοι εντολής και κύκλοιμηχανής.

o Η ανάκληση και εκτέλεση μιας εντολής αποτελεί ένακύκλο εντολής.

o Ένας κύκλος εντολής αποτελείται από μία ήπερισσότερες λειτουργίες ανάγνωσης ή εγγραφής στημνήμη ή στη μονάδα εισόδου – εξόδου.

o Κάθε αναφορά σε μονάδα εισόδου – εξόδου ή στηνμνήμη απαιτεί ένα κύκλο μηχανής.

o Κάθε φορά που μια λέξη μνήμης μεταφέρεται από καιπρος τον μ/Ε εκτελείται ένας κύκλος μηχανής.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

45

3.3.3 Κύκλοι εντολής και κύκλοιμηχανής.

o Οι πιο συνηθισμένοι κύκλοι που συναντάμε σεέναν μ/Ε είναι οι ακόλουθοι.

o Ανάκληση κώδικα (opcode fetch).o Ανάγνωση από τη μνήμη (memory read).o Εγγραφή στη μνήμη (memory write).o Ανάγνωση I/O (I/O read) : είσοδος.o Εγγραφή I/O (I/O write) : έξοδος.o Αναγνώριση διακοπής (interrupt acknowledge).o «άεργος» κύκλος (bus idle).

3.3.3 Κύκλοι εντολής και κύκλοι μηχανής.

o Ένας κύκλος μηχανής ενεργοποιείται από την μονάδαελέγχου CU του μ/Ε όταν λάβει τον κώδικα εντολής.

o Η ανάκληση εντολής σε ένα κύκλο εντολής απαιτεί ένακύκλο μηχανής για κάθε λέξη που ανακαλείται.

o Π.χ εάν η εντολή έχει μήκος 3 λέξεις τότε η ανάκλησητης διαρκεί 3 κύκλους μηχανής.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

47

3.3.3 Κύκλοι εντολής και κύκλοιμηχανής.

o Ένας κύκλος μηχανής είναι ή περίοδος τηςσυχνότητας λειτουργίας του μ/Ε. Τ=1/F.

o Π.χ αν η συχνότητα λειτουργίας είναι 100MHzτότε ένας κύκλος μηχανής διαρκεί 10nsec.

o Αν μια εντολή έχει μήκος 3 λέξεων για ναεκτελεστεί χρειάζεται 3*10nsec=30nsec. Δηλαδή3 κύκλους μηχανής.

o Τα 30nsec είναι ένας κύκλος εντολής.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

48

3.3.4 Είδη εντολώνo Εντολές μεταφοράς δεδομένων. Οι εντολές αυτέςμεταφέρουν δεδομένα μεταξύ καταχωρητών και μνήμηςκαι δεν επηρεάζουν τις σημαίες κατάστασης (flags).

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

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

49

3.3.4 Είδη εντολώνo Εντολές λογικών πράξεων. Εκτελούν πράξεις σεδεδομένα «λέξεις» που βρίσκονται στους καταχωρητές,στη μνήμη και στις σημαίες.

o Εντολές άλματος. Οι εντολές ενός προγράμματοςεκτελούνται με την σειρά, οι εντολές άλματος αλλάζουντην ροή εκτέλεσης, γι’ αυτό ονομάζονται και εντολέςδιακλάδωσης.

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

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

50

3.3.4 Είδη εντολών

o Οι εντολές άλματος χωρίς συνθήκη μεταφέρουντην καθορισμένη διεύθυνση στον PC.

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

o Αν ναι τότε φορτώνουν την διεύθυνση αυτήστον PC.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

51

3.4 Τρόποι αναφοράς στην μνήμη.

o Όπως ξέρουμε, μια εντολή αποτελείται από το τμήματου κώδικα και το τμήμα της διεύθυνσης.

o Το τμήμα της διεύθυνσης χρησιμοποιείται για να βρεθείη ενεργή διεύθυνση (effective address), δηλαδή η θέσηαπό την οποία θα διαβαστεί το όρισμα (δεδομένο) τηςεντολής.

o Στην πράξη δεν υποστηρίζονται όλοι οι τρόποιαναφοράς στην μνήμη από όλου τους μ/Ε και είναιδυνατό διαφορετικοί μ/Ε να αναφέρονται στον ίδιοτρόπο χρησιμοποιώντας διαφορετικά ονόματα.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

52

3.4 Τρόποι αναφοράς στην μνήμη.

o Άμεση αναφορά στη μνήμη (immediateaddressing).

o Η τιμή του ορίσματος (δεδομένου) είναι τμήματης εντολής ή ακολουθεί μετά τον κωδικό. Και οκωδικός και το δεδομένο καλούνται από τημνήμη με τον PC.

o Δεν απαιτείται επιπλέων προσπέλαση στημνήμη πέραν από την ανάγνωση της εντολής.

3.4 Τρόποι αναφοράς στην μνήμη.o Π.χ η εντολή

“ADD 30h” θαμπορούσε νασημαίνει«πρόσθεσεστην τρέχουσατιμή τουσυσσωρευτήACC τοδεκαεξαδικόαριθμό 30»

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

54

3.4 Τρόποι αναφοράς στην μνήμη.

o Απευθείας αναφορά στη μνήμη (directaddressing).

o Το δεδομένο βρίσκεται σε μία θέση μνήμης καιαμέσως μετά τον κωδικό της εντολής υπάρχει ηαυτή η διεύθυνση.

o Ο τρόπος αυτός είναι γρήγορος άλλαπεριορίζεται ο αριθμός των θέσεων από τοναριθμό των δυαδικών ψηφίων της διεύθυνσης.

3.4 Τρόποι αναφοράς στην μνήμη.

o Π.χ η εντολή“ADD [30h]” θαμπορούσε νασημαίνει«πρόσθεσεστην τρέχουσατιμή τουσυσσωρευτήACC τη τιμήπου βρίσκεταιστην διεύθυνσημνήμης 30»

3.4 Τρόποι αναφοράς στην μνήμη.o Αναφορά στη μνήμηκαταχωρητών(registeraddressing).

o Το δεδομένοπεριέχεται σε ένανεσωτερικόκαταχωρητή τουμ/Ε.

o Π.χ “ADD A”«πρόσθεσε στηντρέχουσα τιμή τουσυσσωρευτή ACCτη τιμή τουκαταχωρητή Α»

3.4 Τρόποι αναφοράς στην μνήμη.o Έμμεση αναφορά μέσωκαταχωρητή (registerindirect addressing).

o Ο κώδικας της εντολήςπροσδιορίζει ένανκαταχωρητή του μ/Ε οοποίος περιέχει τηδιεύθυνση μνήμης πουπεριέχει το δεδομένο.

o Π.χ “ADD [A]”«πρόσθεσε στηντρέχουσα τιμή τουσυσσωρευτή ACC τητιμή που βρίσκεται στηνθέση μνήμης πουδείχνει ο καταχωρητήςΑ»

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

58

3.5 Χαρακτηριστικά και κατηγορίες μ/Ε.

o Τα κυριότερα χαρακτηριστικάτων μ/Ε είναι :

o Η συχνότητα λειτουργίας(operating frequency).

o Το μήκος λέξης (word length).o Το ρεπερτόριο εντολών

(instruction set).

overclocking

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

59

3.5 Χαρακτηριστικά και κατηγορίες μ/Ε.

o Η συχνότητα λειτουργίας (operating frequency).o Για να εκτελέσει μια εντολή ο μ/Ε, εκτελεί μια σειρά απόδιαδοχικές λειτουργίες, για το συγχρονισμό τους είναιαπαραίτητο ένα ρολόι.

o Το ρολόι παράγεται από εξωτερικό κύκλωμα, είναιτετραγωνικής μορφής με πλάτος από 0-5 V.

o Η συχνότητα του ρολογιού επιλέγεται να είναι ίση μετην μέγιστη επιτρεπόμενη συχνότητα λειτουργίας τουμ/Ε.

o Όσο μεγαλύτερη είναι τόσο πιο γρήγορα εκτελεί τηςεντολές ο μ/Ε.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

60

3.5 Χαρακτηριστικά και κατηγορίες μ/Ε.

o Εάν προσπαθήσουμε να υπερβούμε τηνμέγιστη συχνότητα λειτουργίας το αποτέλεσμαθα είναι είτε λανθασμένη λειτουργία τουολοκληρωμένου ή και η καταστροφή του.

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

o Ένας κύκλος εντολής αποτελείται από ένα καιπερισσότερους κύκλους μηχανής.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

61

3.5 Χαρακτηριστικά και κατηγορίες μ/Ε.

o Το μήκος λέξης (word length).o Ένας μ/Ε εκτελεί αριθμητικές και λογικέςπράξεις μεταξύ των καταχωρητών του, ταδεδομένα εισάγονται από την μνήμη και τιςπεριφερειακές μονάδες σε κάποιο καταχωρητήκαι μετά γίνεται η επεξεργασία τους.

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

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

62

3.5 Χαρακτηριστικά και κατηγορίες μ/Ε.

o Εάν το μήκος των δεδομένων είναι ίδιο με τωνκαταχωρητών τότε δεν υπάρχει πρόβλημα.

o Εάν όμως οι καταχωρητές είναι μικρότεροι τότε πρώταγίνεται ή πράξη μεταξύ των τμημάτων LSB, ανπροκύψει κρατούμενο μεταφέρεται στην επόμενηπράξη.

o Μετά πραγματοποιείτε η πράξη μεταξύ των τμημάτωνMSB μαζί με το κρατούμενο. Και το κρατούμενο απόαυτήν την πράξη προστίθεται στο τέλος.

o Έτσι για την εκτέλεση της πρόσθεσης απαιτούνται δύοεντολές.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

63

3.5 Χαρακτηριστικά και κατηγορίες μ/Ε.

o Άρα το μήκος των καταχωρητών του μ/Ε επηρεάζει τηνταχύτητα με την οποία εκτελούνται οι πράξεις.

o Σύμφωνα με αυτό οι μ/Ε χωρίζονται σε :o 8-μπιτους, μέγεθος καταχωρητή 8 bit. Ο μεγαλύτεροςακέραιος αριθμός που μπορεί να αποθηκευτεί 255.

o 16-μπιτους, 16 bit, 65.535o 32-μπιτους, 32 bit, 4.294.967.295o 64-μπιτους, 64 bit, 18.446.744.073.709.551.615

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

64

3.5 Χαρακτηριστικά και κατηγορίες μ/Ε.

o Το ρεπερτόριο εντολών (instruction set).o Είναι το σύνολο των εντολών που μπορεί να εκτελέσει.o Είναι καθοριστικός παράγοντας για να αποφασίσουμεεάν είναι κατάλληλος για την εφαρμογή μας.

o Π.χ επεξεργασία φωνής, χρειαζόμαστε μ/Ε που ναεκτελεί γρήγορα μαθηματικές πράξεις.

o Ψηφιακό τηλεφωνικό κέντρο, μ/Ε με εντολές γιαγρήγορη μεταφορά δεδομένων.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

65

3.5 Χαρακτηριστικά και κατηγορίες μ/Ε.

o Επίσης θα πρέπει να υπάρχει συμβατότητα μεπαλαιοτέρους μ/Ε.

o Δηλαδή ένα πρόγραμμα που εκτελούσε ένας παλιόςμ/Ε να μπορεί να το εκτελεί και ο νέος, δηλαδή θαπρέπει να περιέχει όλες τις εντολές του προηγούμενουμ/Ε της εταιρίας.

o Με βάση το κριτήριο του μεγέθους του ρεπερτορίουδιακρίνονται σε δύο κατηγορίες :

o Μειωμένου ρεπερτορίου.o Διευρυμένου ρεπερτορίου.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

66

3.5 Χαρακτηριστικά και κατηγορίες μ/Ε.

o Ανάλογα ονομάστηκαν και τα συστήματα πουτους χρησιμοποιούσαν :

o Υπολογιστικά συστήματα διευρυμένουρεπερτορίου. CISC (Complex Instruction SetComputers).

o Υπολογιστικά συστήματα μειωμένουρεπερτορίου. RISC (Reduced Instruction SetComputers).

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

67

3.5 Χαρακτηριστικά και κατηγορίες μ/Ε.

o Ένα διευρυμένο ρεπερτόριο εντολών περιλαμβάνει πιοπολύπλοκες εντολές, άρα με λιγότερες εντολές μπορείνα κάνει πιο πολύπλοκες διαδικασίες, επομένως θαείναι και πιο ισχυροί.

o Ύστερα από μελέτες προέκυψαν τα εξήςσυμπεράσματα :

o Όσο μεγαλύτερο είναι το ρεπερτόριο τόσο πιοπολύπλοκή η σχεδίαση του και πιο μεγάληκαθυστέρηση για την εκτέλεση κάθε εντολής.

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

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

68

3.5 Χαρακτηριστικά και κατηγορίες μ/Ε.

o Τελικά οι σχεδιαστές άρχισαν να σχεδιάζουνμ/Ε με όσο το δυνατόν πιο μικρό ρεπερτόριοεντολών όπου η κάθε μια από τις οποίεςεκτελείται όσο το δυνατόν πιο γρήγορα.

o Δηλαδή κυριάρχησαν οι μ/Ε RISC.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

69

3.6 Οικογένειες μ/Ε.

o Με τον όρο οικογένεια μ/Ε εννοούμε μια σειράεπεξεργαστών που έχουν κατασκευαστεί απότην ίδια εταιρεία και είναι συμβατοί μεταξύ τους.

o Με τον όρο συμβατότητα εννοούμε ότι ένανεότερο μέλος της οικογένειας μπορεί ναεκτελέσει εντολές ενός προηγούμενου(αρχαιότερου) μέλους.

o Υπάρχουν πολλές εταιρίες οι πιο γνωστές είναιτης Intel, Motorola, AMD.

3.6 Οικογένειες μ/Ε.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

71

3.6 Οικογένειες μ/Ε. Στο διαδίκτυο

o CPUso ZILOGo INTELo List of Intel microprocessorso List of AMD microprocessorso MICROPROCESSORo COMPUTER HISTORY MUSEUMo VLSI MICROPROCESSORS

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

72

3.7 Μικροελεγκτέςo Ένα μικρουπολογιστικό σύστημα αποτελείται από έναμικροεπεξεργαστή, μνήμη και μονάδες εισόδου -εξόδου.

o Ένας μ/Ε μπορεί να εκτελεί υπολογισμούς και ναεπεξεργάζεται δεδομένα γρήγορα και αξιόπιστα καιπροκειμένου να επικοινωνήσει με το περιβάλλον τουπρέπει να συνδεθεί με κάποιες περιφερειακές μονάδεςόπως :

o Μνήμη (ROM, RAM).o Ελεγκτής διακοπών από περιφερειακές μονάδες.o Θύρες (ports) επικοινωνίας με τις μονάδες εισόδου –εξόδου.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

73

3.7 Μικροελεγκτές

o Ένα μικρουπολογιστικό σύστημα μπορεί ναχρησιμοποιηθεί για να ελέγξει ένα σύστημα (π.χβιομηχανικό αυτοματισμό) όπου θα πρέπει ναδεχτεί αναλογικά σήματα (π.χ. θερμοκρασία) ταοποία θα πρέπει να μετατραπούν σε ψηφιακάμέσο ενός μετατροπέα A/D.

o Έτσι η σχεδίαση ενός τέτοιου συστήματος είναιπολύπλοκη λόγου του συγχρονισμού πουαπαιτούν όλες αυτές οι μονάδες.

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

74

3.7 Μικροελεγκτές

o Μία λύση είναι η κατασκευή ενός ολοκληρωμένουκυκλώματος το οποίο θα περιλαμβάνει κάποιες από τιςαπαραίτητες περιφερειακές συσκευές.

o Ένα τέτοιο κύκλωμα ονομάζεται μικροελεγκτής(microcontroller).

o Είναι κατάλληλοι για εφαρμογές στις οποίες υπάρχειαυξημένη ανάγκη για χρήση περιφερειακών συσκευών.

o Το κριτήριο επιλογής ενός μικροελεγκτή είναι το είδοςκαι οι δυνατότητες των περιφερειακών που διαθέτει.

1. Μνήμη ROM,RAM

2. Θύρες εισόδου– εξόδου, καισειριακής,παράλληληςεπικοινωνίας.

3. Μονάδααναγνώρισηςδιακοπών.

4. A/D.

5. Μετρητέςχρόνου,χρονιστές(timers).

12/2/2012 ΛΕΥΘΕΡΟΥΔΗΣ ΘΕΟΔΩΡΟΣ ΠΕ1708

77

3.7 Μικροελεγκτές. Στο διαδίκτυο

o MCUo PIC MICROCONTROLLERo http://www.microcontroller.com/o ELECTRONIC CIRCUITS BASED ON

AVR MICROCONTROLLER.o Build Your Own Microcontroller

Projectso http://www.microchip.com/o http://www.freescale.com/