SlideShare a Scribd company logo
1 of 216
Download to read offline
Mικροεπεξεργαστές
ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ
Σχολή Θετικών Επιστηµών και Τεχνολογίας
Πρόγραµµα Σπουδών
ΠΛΗΡΟΦΟΡΙΚΗ
Θεµατική Eνότητα
ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Tόµος Γ'
Mικροεπεξεργαστές
ΓEΩPΓIOΣ AΛEΞIOY
Kαθηγητής Tµήµατος Mηχανικών H/Y & Πληροφορικής Πανεπιστηµίου Πατρών
ΠATPA 2001
ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ
Σχολή Θετικών Επιστηµών και Τεχνολογίας
Πρόγραµµα Σπουδών
ΠΛHPOΦOPIKH
Θεµατική Ενότητα
ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
Τόµος Γ'
Mικροεπεξεργαστές
Συγγραφή
ΓEΩPΓIOΣ AΛEΞIOY
Kαθηγητής Tµήµατος Mηχανικών H/Y & Πληροφορικής Πανεπιστηµίου Πατρών
Κριτική Ανάγνωση
ANTΩNHΣ ΠAΣXAΛHΣ
Eπίκουρος Kαθηγητής Tµήµατος Πληροφορικής & Tηλεπικοινωνιών
Πανεπιστηµίου Aθηνών
Ακαδηµαϊκός Υπεύθυνος για την επιστηµονική επιµέλεια του τόµου
ΣΩKPATHΣ KATΣIKAΣ
Καθηγητής Tµήµατος Mαθηµατικών Πανεπιστηµίου Aιγαίου
Επιµέλεια στη µέθοδο της εκπαίδευσης από απόσταση
ΓEPAΣIMOΣ MΩPAΊTHΣ
Γλωσσική Επιµέλεια
EΛΠI∆A BAKAΛOΓΛOY
Τεχνική Επιµέλεια
ΕΣΠΙ ΕΚ∆ΟΤΙΚΗ Ε.Π.Ε.
Καλλιτεχνική Επιµέλεια – Σελιδοποίηση
TYPORAMA
Συντονισµός ανάπτυξης εκπαιδευτικού υλικού και γενική επιµέλεια των εκδόσεων
ΟΜΑ∆Α ΕΚΤΕΛΕΣΗΣ ΕΡΓΟΥ ΕΑΠ / 2001
ISBN: 960–538–197–4
Kωδικός Έκδοσης: ΠΛH 21/3
Copyright 2000 για την Ελλάδα και όλο τον κόσµο
ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ
Οδός Παπαφλέσσα & Υψηλάντη, 26222 Πάτρα – Τηλ: (0610) 314094, 314206 Φαξ: (0610) 317244
Σύµφωνα µε το Ν. 2121/1993, απαγορεύεται η συνολική ή αποσπασµατική αναδηµοσίευση του βιβλίου αυτού
ή η αναπαραγωγή του µε οποιοδήποτε µέσο χωρίς την άδεια του εκδότη.
¶ÂÚȯfiÌÂÓ·
K ∂ º ∞ § ∞ π √ 1
EÈÛ·ÁˆÁ‹
Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά
Eισαγωγικές παρατηρήσεις ............................................................................................................... 11
1.1 H ανάγκη: Έξυπνα, ευέλικτα συστήµατα µε µικρό µέγεθος .............. 13
1.2 O τρόπος: Oλοκληρωµένα κυκλώµατα ................................................................ 13
1.3 Tο αποτέλεσµα: H εµφάνιση των µικρο–επεξεργαστών ....................... 18
1.4 Mικροϋπολογιστές και µικροεπεξεργαστές ...................................................... 19
1.5 Iστορική αναδροµή ................................................................................................................ 24
Σύνοψη .............................................................................................................................................................. 26
Bιβλιογραφία ................................................................................................................................................ 27
K ∂ º ∞ § ∞ π √ 2
OÈ MÈÎÚÔÂÂÍÂÚÁ·ÛÙ¤˜
Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά
Eισαγωγικές παρατηρήσεις ............................................................................................................... 29
2.1 H Aρχιτεκτονική των µικροεπεξεργαστών......................................................... 31
2.1.1 Aριθµητική και λογική µονάδα ..................................................................... 31
2.1.2 Mονάδα ελέγχου ......................................................................................................... 33
2.1.3 Kαταχωρητές ................................................................................................................. 35
2.2 Oι δίαυλοι διευθύνσεων/δεδοµένων/ελέγχου .................................................. 37
2.3 O χρονισµός των εντολών (κύκλος εντολής–µηχανής–ρολογιού) 41
2.4 Tο σύνολο εντολών του µικροεπεξεργαστή ..................................................... 46
2.5 Oι τρόποι διευθυνσιοδότησης των εντολών
Σκοπός, Προσδοκώµενα αποτελέσµατα, Eισαγωγικές παρατηρήσεις ........... 53
Σύνοψη .............................................................................................................................................................. 58
2.6 Tι πρέπει να γνωρίζουµε για ένα µικροεπεξεργαστή ................................ 63
Σύνοψη .............................................................................................................................................................. 65
Bιβλιογραφία ................................................................................................................................................ 67
6 M π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ∂ ™
K ∂ º ∞ § ∞ π √ 3
O MÈÎÚÔÂÂÍÂÚÁ·ÛÙ‹˜ Intel 8080/8085
Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά
Eισαγωγικές παρατηρήσεις ............................................................................................................... 69
3.1 H αρχιτεκτονική του 8080................................................................................................. 71
3.1.1 Γενικά χαρακτηριστικά ......................................................................................... 71
3.1.2 Oι καταχωρητές του 8080 .................................................................................. 73
3.1.3 Aκροδέκτες και σήµατα ....................................................................................... 75
3.2 Kύκλοι µηχανής και σήµατα κατάστασης .......................................................... 78
3.3 H χρονική ακολουθία εκτέλεσης εντολών
Σκοπός, Προσδοκώµενα αποτελέσµατα, Eισαγωγικές παρατηρήσεις ........... 82
3.4 Oι καταστάσεις Wait, Hold & Halt
Σκοπός, Προσδοκώµενα αποτελέσµατα, Eισαγωγικές παρατηρήσεις ........... 87
3.5 H αρχικοποίηση του 8080 ................................................................................................ 92
3.6 Oι διακοπίες στον 8080 ...................................................................................................... 92
3.7 Tρόποι διευθυνσιοδότησης – Σύνολο εντολών ............................................. 96
3.8 Συσκευές υποστήριξης ........................................................................................................ 97
3.9 ∆ιαφορές του 8080 µε τον 8085 .............................................................................. 100
Σύνοψη ........................................................................................................................................................... 102
Bιβλιογραφία ............................................................................................................................................. 104
K ∂ º ∞ § ∞ π √ 4
O MÈÎÚÔÂÂÍÂÚÁ·ÛÙ‹˜ Motorola 6800
Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά
Eισαγωγικές παρατηρήσεις ............................................................................................................ 105
4.1 H αρχιτεκτονική του 6800 ............................................................................................ 107
4.1.1 Γενικά χαρακτηριστικά ...................................................................................... 107
4.1.2 Oι καταχωρητές του 6800 ............................................................................... 109
4.1.3 Aκροδέκτες και σήµατα .................................................................................... 111
4.2 Xρονισµός του 6800 – Xρονική ακολουθία εκτέλεσης εντολών
Σκοπός, Προσδοκώµενα αποτελέσµατα, Eισαγωγικές παρατηρήσεις ........ 115
4.3 Oι καταστάσεις Wait, Hold & Halt ........................................................................ 119
4.4 Oι διακοπές στον 6800 ..................................................................................................... 123
4.5 Σύνολο εντολών – Tρόποι διευθυνσιοδότησης .......................................... 125
4.6 Σύγκριση του 6800 µε τον 8080/8085 ................................................................ 128
Σύνοψη ........................................................................................................................................................... 130
Bιβλιογραφία ............................................................................................................................................. 132
K ∂ º ∞ § ∞ π √ 5
O MÈÎÚÔÂÂÍÂÚÁ·ÛÙ‹˜ Intel 8086/8088
Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά
Eισαγωγικές παρατηρήσεις ............................................................................................................ 133
5.1 H αρχιτεκτονική του 8086
Σκοπός, Προσδοκώµενα αποτελέσµατα, Eισαγωγικές παρατηρήσεις ........ 135
5.1.1 Γενικά χαρακτηριστικά ...................................................................................... 135
5.1.2 H οργάνωση της µνήµης .................................................................................. 138
5.1.3 Oι καταχωρητές του 8086 ............................................................................... 140
5.1.4 Aκροδέκτες και σήµατα .................................................................................... 142
Σύνοψη ........................................................................................................................................................... 144
5.2 O χρονισµός του 8086 ...................................................................................................... 145
5.3 H αρχικοποίηση και οι διακοπές του 8086 ..................................................... 147
5.4 Tο σύνολο εντολών και οι τρόποι διευθυνσιοδότησης
Σκοπός, Προσδοκώµενα αποτελέσµατα, Eισαγωγικές παρατηρήσεις ........ 149
Σύνοψη ........................................................................................................................................................... 152
Bιβλιογραφία ............................................................................................................................................. 154
K ∂ º ∞ § ∞ π √ 6
OÏÔÎÏËڈ̤ӷ MÈÎÚÔ¸ÔÏÔÁÈÛÙÈο ™˘ÛÙ‹Ì·Ù·
Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά
Eισαγωγικές παρατηρήσεις ............................................................................................................ 155
6.1 Bασικές αρχές – Συσκευές διασύνδεσης .......................................................... 157
6.2 ∆ιασύνδεση µνηµών Rom ............................................................................................. 158
6.3 ∆ιασύνδεση µνηµών Ram ............................................................................................. 161
6.4 ∆ιασύνδεση συσκευών εισόδου / εξόδου
Σκοπός, Προσδοκώµενα αποτελέσµατα, Eισαγωγικές παρατηρήσεις ........ 163
6.5 Συστήµατα ανάπτυξης µικροϋπολογιστικών συστηµάτων .............. 170
Σύνοψη ........................................................................................................................................................... 170
Bιβλιογραφία ............................................................................................................................................. 172
7¶ E P I E X O M E N A
K ∂ º ∞ § ∞ π √ 7
E›ÏÔÁÔ˜: ™‡Á¯ÚÔÓ˜ T¿ÛÂȘ ™¯Â‰È·ÛÌÔ‡ MÈÎÚÔÂÂÍÂÚÁ·ÛÙÒÓ
Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά
Eισαγωγικές παρατηρήσεις ............................................................................................................ 173
7.1 H εξέλιξη των µικροεπεξεργαστών – Σύγχρονα κυκλώµατα ......... 174
Σύνοψη ........................................................................................................................................................... 176
Aπαντήσεις Aσκήσεων Aυτοαξιολόγησης ..................................................................... 177
Eνδεικτικές Aπαντήσεις ∆ραστηριοτήτων ..................................................................... 203
Γλωσσάρι ..................................................................................................................................................... 208
¶ÚfiÏÔÁÔ˜
Tο βιβλίο αυτό γράφτηκε για να καλύψει τις ανάγκες του µαθήµατος
«Mικροεπεξεργαστές» του Eλληνικού Aνοικτού Πανεπιστηµίου.
Bασίστηκε κυρίως στη σειρά των περισσότερων από δέκα χρόνων διδασκα-
λίας του αντίστοιχου µαθήµατος στο τµήµα Mηχανικών Hλεκτρονικών Yπο-
λογιστών και Πληροφορικής του Πανεπιστηµίου Πατρών και επιπλέον στις
αρχές της «Aνοικτής και εξ αποστάσεως Eκπαίδευσης», όπως αυτές έχουν
διαµορφωθεί τα τελευταία χρόνια στην Eλληνική πραγµατικότητα µε βάση
και τη διεθνή εµπειρία και πρακτική.
Στο βιβλίο περιλαµβάνεται αρχικά µια εισαγωγική ιστορική αναδροµή για
τους Mικροεπεξεργαστές και τη Mικροηλεκτρονική από την εµφάνισή τους
µέχρι σήµερα. Aκολουθούν βασικά στοιχεία αρχιτεκτονικής και προγραµ-
µατισµού των Mικροεπεξεργαστών.
Στη συνέχεια παρατίθενται, όσο γίνεται πιο αναλυτικά, οι δύο κυριότερες
οικογένειες µικροεπεξεργαστών των 8 bits, της INTEL και της
MOTOROLA. Στο επόµενο κεφάλαιο ασχολούµαστε µε τους µικροεπεξερ-
γαστές των 16 bits µε την παρουσίαση του αντιπροσωπευτικότερου του
είδους 8086 της INTEL. Στο τελευταίο κεφάλαιο δίνονται οι βασικές αρχές
και η µεθοδολογία σχεδιασµού συστηµάτων βασισµένων στους µικροεπε-
ξεργαστές και τις περιφερειακές συσκευές τους.
Tο βιβλίο έχει σαν επίλογο µια σύντοµη αναφορά στις σύγχρονες τάσεις σχε-
διασµού µικροεπεξεργαστών.
Tελειώνοντας, θέλω να ευχαριστήσω όλους όσους, έµµεσα ή άµεσα, βοή-
θησαν στο γράψιµο αυτού του βιβλίου, τους φοιτητές µου, τους κριτικούς
αναγνώστες και ιδιαίτερα τον συνεργάτη µου ∆ηµήτρη Mπακάλη, Mηχανι-
κό H/Y και Πληροφορικής, για την πολύ σηµαντική του βοήθεια σε όλο το
διάστηµα των σχεδόν δύο χρόνων ενασχόλησης µε αυτό το βιβλίο.
Γ.Φ. Aλεξίου
Πάτρα 2000
EÈÛ·ÁˆÁ‹
™ÎÔfi˜
Μελετώντας αυτό το κεφάλαιο θα γνωρίσετε τις ανάγκες που επέβαλαν την
εµφάνιση των µικροεπεξεργαστών, τις τεχνολογικές εξελίξεις, που έκαναν
εφικτή αυτή την εµφάνιση, καθώς και τη ραγδαία εξέλιξή τους µέσα από µία
µικρή ιστορική αναδροµή από τον πρώτο µικροεπεξεργαστή µέχρι σήµερα.
¶ÚÔÛ‰ÔÎÒÌÂÓ· ·ÔÙÂϤÛÌ·Ù·
Όταν θα ολοκληρώσετε τη µελέτη αυτού του κεφαλαίου, θα είστε σε θέση να:
• αναφέρετε τη βασική ανάγκη, η οποία οδήγησε στην ανάπτυξη των µικρο-
επεξεργαστών.
• δώσετε τουλάχιστον τρία παραδείγµατα εφαρµογών, τα οποία απαιτούν τη
χρήση µικροεπεξεργαστή.
• ορίσετε τι είναι και από τι αποτελούνται τα ολοκληρωµένα κυκλώµατα.
• περιγράψετε πέντε κατηγορίες των ολοκληρωµένων κυκλωµάτων ως προς
το µέγεθός τους και το πλήθος των τρανσίστορς, που περιέχουν.
• δώσετε τα τέσσερα κυριότερα πλεονεκτήµατα, που έχουν τα ολοκληρωµέ-
να κυκλώµατα.
• περιγράψετε τα έξι βασικά βήµατα που απαιτούνται για την κατασκευή τους.
• απαριθµήσετε τις βασικές χρονολογίες–σταθµούς στην ιστορία των µικρο-
επεξεργαστών.
• δώσετε τον ορισµό ενός µικροϋπολογιστικού συστήµατος και να περιγρά-
ψετε τα τρία βασικά τµήµατα, από τα οποία αποτελείται.
• δώσετε τον ορισµό ενός µικροεπεξεργαστή και να αναφέρετε τα τρία βασι-
κά του τµήµατα.
• περιγράψετε τους τρεις διαύλους επικοινωνίας, που συναντάµε σ’ ένα
µικροϋπολογιστικό σύστηµα.
• ορίσετε τη γενική µορφή των εντολών, τις οποίες καταλαβαίνει ένας µικρο-
επεξεργαστής.
ŒÓÓÔȘ ÎÏÂȉȿ
1∫ ∂ º ∞ § ∞ π √
• ∆ίαυλος ∆εδοµένων
• ∆ίαυλος ∆ιευθύνσεων
• ∆ίαυλος Ελέγχου.
• Μικροεπεξεργαστής
• Μικροϋπολογιστής
• Ολοκληρωµένο Κύκλωµα
1 2 K E º A § A I O 1 : E I ™ A ° ø ° H
∂ÈÛ·ÁˆÁÈΤ˜ ·Ú·ÙËÚ‹ÛÂȘ
Το πρώτο κεφάλαιο του βιβλίου αποτελεί µια µικρή εισαγωγή στον κόσµο των
µικροϋπολογιστών και των µικροεπεξεργαστών. Ως τέτοιο, δεν περιέχει
δυσκολονόητες έννοιες, αλλά σας προετοιµάζει για τα κεφάλαια που θα ακο-
λουθήσουν.
Θα πρέπει να δώσετε ιδιαίτερη προσοχή στην ενότητα 1.4, στην οποία ανα-
φέρονται βασικές έννοιες, οι οποίες θα αναλυθούν µε µεγάλη λεπτοµέρεια
στο κεφάλαιο 2.
1.1 H AÓ¿ÁÎË: ŒÍ˘Ó·, ¢¤ÏÈÎÙ· Û˘ÛÙ‹Ì·Ù· Ì ÌÈÎÚfi ̤ÁÂıÔ˜
Καθώς οι υπολογιστές εξελίσσονταν, ένα από τα πιο σηµαντικά προβλήµα-
τα που παρουσιάστηκαν ήταν το πώς θα µπορούσαν να χρησιµοποιηθούν σε
όσο το δυνατόν περισσότερες καθηµερινές εφαρµογές. Πολλές συσκευές
(ηλεκτρικές συσκευές, συσκευές ελέγχου µηχανών, συστήµατα σηµατοδό-
τησης) θα µπορούσαν να γίνουν πολύ πιο αποδοτικές και λειτουργικές, εάν
µπορούσαν να χρησιµοποιήσουν την «ευφυΐα» και την ευκολία, µε την οποία
κάνουν πράξεις οι υπολογιστές. Φυσικά, ήταν αδύνατο να δεσµευτεί ένας
µεγάλος ή έστω ένας µεσαίων δυνατοτήτων υπολογιστής σ’ αυτού του είδους
τις εφαρµογές κυρίως λόγω του υπερβολικού τους µεγέθους και κόστους.
Το ζητούµενο, λοιπόν, ήταν να κατασκευασθεί ένα σύστηµα που να περιέ-
χει τόσο τα κυκλώµατα όσο και τη βασική λογική (πρόγραµµα) έτσι ώστε
να µπορεί να αντεπεξέλθει στο σύνολο των απαιτούµενων εφαρµογών.
Συνεπώς, η λύση θα ήταν ένας ολοκληρωµένος αυτοδύναµος υπολογιστής
µέσα σ’ ένα µοναδικό ολοκληρωµένο κύκλωµα, ο οποίος θα έπρεπε να είχε
τη δυνατότητα αποθήκευσης προγραµµάτων και εκτέλεσης σύνθετων µαθη-
µατικών πράξεων.
Βέβαια, όπως συνήθως γίνεται, οι απαιτήσεις της βιοµηχανίας και οι δυνα-
τότητες των σχεδιαστών υπολογιστών ήταν αδύνατο να γεφυρωθούν. Φυσι-
κά ήταν δυνατό να δοθεί λύση σε µερικές από τις απαιτήσεις, αλλά η κατα-
σκευή ενός υπολογιστή πάνω σ’ ένα µοναδικό ολοκληρωµένο κύκλωµα φαι-
νόταν σαν µία µακρινή επιδίωξη. Τη λύση φάνηκε να τη δίνει η τεχνολογία
ολοκληρωµένων κυκλωµάτων, όταν µπόρεσε να τοποθετήσει χιλιάδες
κυκλώµατα πάνω σε µια πολύ µικρή επιφάνεια.
1.2 O TÚfiÔ˜: OÏÔÎÏËڈ̤ӷ ΢ÎÏÒÌ·Ù·
Όλα τα λογικά κυκλώµατα σήµερα κατασκευάζονται µε τη µορφή ολοκλη-
ρωµένων κυκλωµάτων (integrated circuits, ICs). Τα ολοκληρωµένα κυκλώ-
µατα αποτελούνται από ένα κοµµάτι αγώγιµου υλικού (πυριτίου), πάνω στο
οποίο έχει δηµιουργηθεί το κύκλωµα, το οποίο επιθυµούµε, µε τρανσίστορς
(transistors), διόδους, αντιστάσεις και πυκνωτές. Το κοµµάτι αυτό του πυρι-
τίου προστατεύεται από πλαστικό ή κεραµικό περίβληµα, ενώ οι είσοδοι και
οι έξοδοι του κυκλώµατος καταλήγουν σε µεταλλικές επαφές εκτός περι-
βλήµατος, που ονοµάζονται ακροδέκτες (pins). Η µορφή ενός ολοκληρωµέ-
νου κυκλώµατος φαίνεται στο σχήµα 1.1.
1 31 . 1 H A ¡ ∞ ° ∫ ∏ : ∂ • À ¶ ¡ ∞ , ∂ À ∂ § π ∫ ∆∞ ™ À ™ ∆ ∏ ª ∞∆∞ ª ∂ ª π ∫ ƒ √ ª ∂ ° ∂ £ √ ™
1 4 K E º A § A I O 1 : E I ™ A ° ø ° H
Τα κυριότερα πλεονεκτήµατα, που έχουν τα ολοκληρωµένα κυκλώµατα, είναι
το µικρό µέγεθός τους, η µικρή κατανάλωση ισχύος, το µικρό κόστος και η
µεγάλη αξιοπιστία τους.
∆είκτης αρίθµησης∆είκτες αρίθµησης
(α)
Mικροεπεξεργαστής 40-pin DIP
σε πλαστικό περίβληµα
(β)
Mικροεπεξεργαστής 40-pin DIP
σε κεραµικό περίβληµα
(γ)
H αρίθµηση των ακροδεκτών
σε πλαστικό περίβληµα
(δ)
H αρίθµηση των ακροδεκτών
σε κεραµικό περίβληµα
40 21
1 20
40 21
1 20
™¯‹Ì· 1.1
Η µορφή
των ολοκληρωµένων
κυκλωµάτων
των µικροεπεξεργαστών
Τα ολοκληρωµένα κυκλώµατα χωρίζονται σε κατηγορίες ανάλογα µε τον
αριθµό των τρανσίστορς, που περιέχονται πάνω στην επιφάνεια του αγώγι-
µου υλικού. Σε γενικές γραµµές διαχωρίζονται ως εξής:
• Κυκλώµατα µικρής κλίµακας ολοκλήρωσης (Small Scale Integration ή SSI),
που περιέχουν µερικά µόνο τρανσίστορς.
• Κυκλώµατα µεσαίας κλίµακας ολοκλήρωσης (Medium Scale Integration ή
MSI), που περιέχουν από µερικές δεκάδες µέχρι εκατοντάδες τρανσίστορς.
• Κυκλώµατα µεγάλης κλίµακας ολοκλήρωσης (Large Scale Integration ή
LSI), που περιέχουν από µερικές εκατοντάδες έως χιλιάδες τρανσίστορς.
• Κυκλώµατα πολύ µεγάλης κλίµακας ολοκλήρωσης (Very Large Scale
Integration ή VLSI), που περιέχουν από µερικές χιλιάδες έως εκατοντά-
δες χιλιάδες τρανσίστορς.
• Κυκλώµατα εξαιρετικά υψηλής κλίµακας ολοκλήρωσης (Ultra Large Scale
Integration ή ULSI), που περιέχουν από ένα εκατοµµύριο τρανσίστορς και
πάνω.
Καθώς ο αριθµός των τρανσίστορς, που περικλείονται σε µια επιφάνεια ενός
ολοκληρωµένου κυκλώµατος, είναι τροµακτικά µεγάλος, είναι αδύνατη
πλέον η σχεδίασή του χωρίς τη χρήση υπολογιστή. Κατά τη διάρκεια σχε-
δίασης, ο σχεδιαστής χρησιµοποιεί έναν τερµατικό σταθµό για να σχεδιάσει
σε αυτόν το γράφηµα του λογικού κυκλώµατος, που θα αποτυπωθεί πάνω
στην επιφάνεια πυριτίου. Κατόπιν, µε τη βοήθεια ειδικών προγραµµάτων
αποθηκευµένων στον υπολογιστή και ειδικών εργαλείων, το γράφηµα αυτό
θα σχηµατιστεί πάνω στην επιφάνεια του ολοκληρωµένου κυκλώµατος.
Μετά το τέλος της διαδικασίας σχεδιασµού, ακολουθεί η διαδικασία παρα-
γωγής και ελέγχου ορθής λειτουργίας του ολοκληρωµένου κυκλώµατος. Τα
ολοκληρωµένα κυκλώµατα κατασκευάζονται σε δεκάδες ή εκατοντάδες, ανά-
λογα µε το µέγεθός τους, πάνω σε ένα δίσκο πυριτίου, ο οποίος ονοµάζεται
wafer (παρατηρήστε το σχήµα 1.2). Το wafer περιέχει εκτός από τα κυκλώ-
µατα, τα οποία επιθυµούµε να κατασκευάσουµε, και κυκλώµατα ελέγχου της
διαδικασίας (test structures). Τα κυκλώµατα αυτά έχουν ως στόχο την παρα-
κολούθηση της διαδικασίας παραγωγής από τον κατασκευαστή και τον έλεγ-
χο ποιότητας του αποτελέσµατος. Σε περίπτωση, που κάποια κυκλώµατα
ελέγχου δείξουν προβληµατική συµπεριφορά, αυτόµατα σταµατάει η διαδι-
κασία και o δίσκος πυριτίου απορρίπτεται.
Το πρώτο βήµα που έχουµε εποµένως είναι η κατασκευή του δίσκου πυριτί-
ου. Η διαδικασία αποτύπωσης των κυκλωµάτων πάνω σε αυτόν ακολουθεί
διάφορα στάδια. Αρχικά έχουµε την κατασκευή µιας απόλυτα καθαρής ηµια-
γώγιµης επιφάνειας, στην οποία υπεισάγονται προσµίξεις µε τη βοήθεια ενός
µονωτικού επιστρώµατος οξειδίου για να αποδοθούν οι απαραίτητες ηλε-
κτρικές ιδιότητες. Πάνω στην επιφάνεια αυτή επιτίθεται προστατευτικό επί-
χρισµα και εκτίθεται σε ακτινοβολία µέσω µασκών, µετά καθαρίζεται,
χαράσσεται µε οξέα, προστίθενται καινούργιες προσµίξεις και η διαδικασία
αυτή επαναλαµβάνεται µέχρις ότου χαραχτούν όλα τα κυκλώµατα.
Το επόµενο βήµα είναι ο έλεγχος των πλακιδίων (dies), που παράγονται. Η
διαδικασία ελέγχου βασίζεται στην εφαρµογή σηµάτων ελέγχου στα σηµεία
των εξωτερικών συνδεσµολογιών κάθε πλακιδίου. Όσα δεν έχουν σωστή
απόκριση, σηµειώνονται ως ελαττωµατικά.
1 51 . 2 O T ƒ √ ¶ √ ™ : O § √ ∫ § ∏ ƒ ø ª ∂ ¡ ∞ ∫ À ∫ § ø ª ∞∆∞
1 6 K E º A § A I O 1 : E I ™ A ° ø ° H
Στη συνέχεια, όπως φαίνεται στο σχήµα 1.3, οι δίσκοι πυριτίου κόβονται στα
επιµέρους τµήµατα, που είναι τα ολοκληρωµένα κυκλώµατα, και τα ελατ-
τωµατικά απορρίπτονται. Το κάθε ολοκληρωµένο κύκλωµα, που προκύπτει,
™¯‹Ì· 1.2
Η διαδικασία
κατασκευής των
ολοκληρωµένων
κυκλωµάτων
τοποθετείται σε µία βάση (πλαστικό ή κεραµικό περίβληµα) και οι γραµµές,
που έχει, συνδέονται µε χρυσά σύρµατα στους ακροδέκτες της βάσης. Τέλος
τοποθετείται το πάνω µέρος του περιβλήµατος και τα ολοκληρωµένα κυκλώ-
µατα είναι έτοιµα.
1 71 . 2 O T ƒ √ ¶ √ ™ : O § √ ∫ § ∏ ƒ ø ª ∂ ¡ ∞ ∫ À ∫ § ø ª ∞∆∞
™¯‹Ì· 1.3
Η κοπή των πλακιδίων
από το δίσκο πυριτίου
Μετά από το σηµείο αυτό γίνεται και ο τελικός έλεγχος των ολοκληρωµένων
κυκλωµάτων σχετικά µε την τήρηση των προδιαγραφών λειτουργίας τους
και την τήρηση των ζητούµενων χαρακτηριστικών.
Τι είναι τα ολοκληρωµένα κυκλώµατα; Από τι αποτελούνται; ÕÛÎËÛË
∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘
1.1
1 8 K E º A § A I O 1 : E I ™ A ° ø ° H
1.3 TÔ AÔÙ¤ÏÂÛÌ·: H ÂÌÊ¿ÓÈÛË ÙˆÓ ÌÈÎÚÔ–ÂÂÍÂÚÁ·ÛÙÒÓ
Το αποτέλεσµα της εµφάνισης της τεχνολογίας των ολοκληρωµένων κυκλω-
µάτων ήταν η ενσωµάτωση σε ένα µόνο ολοκληρωµένο κύκλωµα όλης της
κεντρικής µονάδας επεξεργασίας, η οποία βέβαια θα έπρεπε να προγραµµα-
τίζεται για να περιέχει τις βασικότερες λειτουργίες ενός ψηφιακού υπολογι-
στή. Το κύκλωµα αυτό ονοµάστηκε µικροεπεξεργαστής. Η µνήµη του βρί-
σκεται σε αρκετά ολοκληρωµένα κυκλώµατα περιορισµένων αποθηκευτι-
κών δυνατοτήτων, τα οποία το συνοδεύουν. Επίσης υποστηρίζεται και από
µια πλειάδα α) ολοκληρωµένων κυκλωµάτων για να διασυνδέεται κατάλλη-
λα και µε τον εξωτερικό κόσµο µια και δεν έχει ενσωµατωµένες αυτές τις
δυνατότητες και β) ολοκληρωµένων κυκλωµάτων, που επιτελούν τις λει-
τουργίες χρονισµού και προώθησης δεδοµένων στον τελικό τους προορισµό.
Η ανάπτυξη της τεχνολογίας των ολοκληρωµένων κυκλωµάτων τις τελευταίες
δεκαετίες έδωσε τη δυνατότητα να µπορούν να ενσωµατωθούν σε ένα ολο-
κληρωµένο κύκλωµα όλο και πιο πολύπλοκα κυκλώµατα (από τον πρώτο
Αντιστοιχίστε τις κατηγορίες των ολοκληρωµένων κυκλωµάτων µε τον
αριθµό των τρανσίστορς, τα οποία περιέχουν:
SSI µεταξύ 10 και 100
MSI λιγότερα από 10
LSI µεταξύ 10.000 και 1.000.000
VLSI πάνω από 1.000.000
ULSI µεταξύ 100 και 10.000
ÕÛÎËÛË
∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘
1.2
Αναφέρετε ποια είναι τα τέσσερα κυριότερα πλεονεκτήµατα των ολοκλη-
ρωµένων κυκλωµάτων.
ÕÛÎËÛË
∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘
1.3
Απαριθµήστε τα βασικά βήµατα στη διαδικασία κατασκευής ενός ολο-
κληρωµένου κυκλώµατος.
ÕÛÎËÛË
∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘
1.4
µικροεπεξεργαστή, που είχε 2 χιλιάδες τρανσίστορς, έχουµε φτάσει πλέον σε
επεξεργαστές µε πάνω από 7 εκατοµµύρια τρανσίστορς σε ένα και µόνο ολο-
κληρωµένο κύκλωµα) µε αποτέλεσµα τη γρήγορη ανάπτυξη των µικροεπεξερ-
γαστών και την ολοένα και πιο συχνή χρήση τους τόσο σε πολύπλοκες υπολο-
γιστικές συσκευές όσο και σε απλές οικιακές συσκευές ή συστήµατα ελέγχου.
1.4 MÈÎÚÔ¸ÔÏÔÁÈÛÙ¤˜ Î·È ÌÈÎÚÔÂÂÍÂÚÁ·ÛÙ¤˜
Η οργάνωση των µικροϋπολογιστικών συστηµάτων είναι παρόµοια µε εκεί-
νη των κλασικών υπολογιστικών συστηµάτων (main frame, mini). Αποτε-
λούνται, όπως µπορείτε να παρατηρήσετε στο σχήµα 1.4, από τις παρακάτω
λειτουργικές µονάδες:
• Mονάδες εισόδου/εξόδου, µε τις οποίες το σύστηµα επικοινωνεί µε το εξω-
τερικό του περιβάλλον.
• Tο µικροεπεξεργαστή (ή αλλιώς κεντρική µονάδα επεξεργασίας), η οποία
περιλαµβάνει την αριθµητική και λογική µονάδα, που επεξεργάζεται τα
δεδοµένα, τη µονάδα ελέγχου, που είναι υπεύθυνη για τον έλεγχο και το
συντονισµό όλων των µονάδων του συστήµατος, και τους καταχωρητές,
που χρησιµεύουν για προσωρινή αποθήκευση.
• Tην κύρια µνήµη, που χρησιµεύει για την αποθήκευση των εντολών του προ-
γράµµατος, των αρχικών δεδοµένων και των ενδιάµεσων αποτελεσµάτων.
1 91 . 4 M π ∫ ƒ √ À ¶ √ § √ ° π ™ ∆ ∂ ™ ∫ ∞ π ª π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ∂ ™
EIΣO∆OΣ
INPUT
EΞO∆OΣ
OUTPUT
KME (CPU)
Mονάδα ελέγχου
+
Aριθµητική λογική µονάδα
(Control + arithmetic)
Mνήµη
προγράµµατος
Mνήµη
δεδοµένων
Mνήµη (Memory)
™¯‹Ì· 1.4
Ένα τυπικό µικροϋπολογι-
στικό σύστηµα
Τα µηχανικά και ηλεκτρονικά µέρη του µικροϋπολογιστικού συστήµατος
αποτελούν το υλικό (hardware), ενώ το σύνολο των προγραµµάτων και εντο-
2 0 K E º A § A I O 1 : E I ™ A ° ø ° H
λών που κατευθύνουν τη λειτουργία του αποτελούν το λογισµικό (software).
Ο συνδυασµός υλικού και λογισµικού αναφέρεται µερικές φορές σαν υλικο-
λογισµικό (firmware).
Το ιδιαίτερο χαρακτηριστικό σε σχέση µε άλλα υπολογιστικά συστήµατα
είναι ότι ολόκληρη η µονάδα επεξεργασίας περιέχεται σε ένα ολοκληρωµέ-
νο κύκλωµα, που κατασκευάζεται σε ένα µικρό κοµµάτι πυριτίου και ανα-
φέρεται σαν µικροεπεξεργαστής. Η ενσωµάτωση όλων των στοιχείων της
κεντρικής µονάδας επεξεργασίας σε ένα µόνο ολοκληρωµένο κύκλωµα, συν-
δυάζει τα πλεονεκτήµατα του µικρού µεγέθους, της υψηλής αξιοπιστίας και
του χαµηλού κόστους. Ο µικροεπεξεργαστής συνδέεται κατάλληλα µε τα
ολοκληρωµένα κυκλώµατα της µνήµης και των µονάδων εισόδου/εξόδου,
για να αποτελέσει το υπολογιστικό σύστηµα που ονοµάζουµε µικροϋπολογι-
στή ή µικροϋπολογιστικό σύστηµα.
Eίσοδοι
Input(s)
Έξοδοι
Output(s)
Mικροεπεξεργαστής
CPU
control + arithmetic
Mνήµη
προγράµµατος
Mνήµη
δεδοµένων
Γραµµέςελέγχου
∆ίαυλοςδιευθύνσεων(16γραµµές)
∆ίαυλοςδιεδοµένων(8γραµµές)
™¯‹Ì· 1.5
Οι δίαυλοι επικοινωνίας
του µικροϋπολογιστή
Θα πρέπει να αναφέρουµε επίσης ότι και οι µικροεπεξεργαστές, όπως άλλω-
στε και όλα τα λογικά κυκλώµατα, λειτουργούν µε βάση τη δυαδική λογική,
όπου µε τη βοήθεια δύο µόνο λογικών καταστάσεων (λογικό 0 και λογικό 1),
που αναπαρίστανται µε επίπεδα ηλεκτρικών τάσεων, εκτελούν όλες τις αριθ-
µητικές πράξεις. Η τεχνική αυτή επιβλήθηκε για λόγους τεχνολογικής αξιο-
πιστίας. Έτσι οι πληροφορίες που ανταλλάσσει ο µικροεπεξεργαστής µε τη
µνήµη και τις µονάδες εισόδου/εξόδου είναι συνδυασµοί δυαδικών ψηφίων.
Η µεταφορά της δυαδικής πληροφορίας ανάµεσα στις διάφορες µονάδες του
µικροϋπολογιστή γίνεται παράλληλα από ένα σύνολο γραµµών, που αναφέ-
ρονται σαν δίαυλος δεδοµένων (data bus). Οι γραµµές αυτές αναφέρονται
σαν γραµµές δεδοµένων (data lines). Ο δίαυλος δεδοµένων δεν λύνει όλα τα
προβλήµατα µεταφοράς της πληροφορίας. Ο µικροεπεξεργαστής θα πρέπει
να έχει τη δυνατότητα επιλογής της µονάδας, µε την οποία θα επικοινωνή-
σει, και να µπορεί να την ειδοποιήσει ότι θα στείλει ή θα πάρει δεδοµένα από
αυτή. Για το λόγο αυτό διαθέτει δύο ακόµα διαύλους, το δίαυλο διευθύνσε-
ων (address bus) και το δίαυλο ελέγχου (control bus). Οι γραµµές των διαύ-
λων αυτών λέγονται αντίστοιχα γραµµές διευθύνσεων (address lines) και
γραµµές ελέγχου (control lines). Με τις γραµµές διευθύνσεων ο µικροεπε-
ξεργαστής στέλνει τη δυαδική διεύθυνση της θέσης µνήµης ή της µονάδας
εισόδου/εξόδου, µε την οποία θέλει να επικοινωνήσει, και µε τις γραµµές
ελέγχου τα κατάλληλα ηλεκτρικά σήµατα για την ενεργοποίηση των επιθυ-
µητών λειτουργιών της µνήµης ή των µονάδων εισόδου/εξόδου. Παρατηρή-
στε στο σχήµα 1.5 τον τρόπο µε τον οποίο συνδέονται οι δίαυλοι επικοινω-
νίας σε ένα τυπικό µικροϋπολογιστικό σύστηµα.
Η απαίτηση της ενεργοποίησης στοιχειωδών λειτουργιών σε προκαθορι-
σµένα χρονικά διαστήµατα, δηµιουργεί την ανάγκη ύπαρξης µιας βάσης χρό-
νου, που αναφέρεται ως κύκλωµα χρονισµού (clock). Το κύκλωµα χρονισµού
αποτελείται συνήθως από ένα κρυσταλλικό ταλαντωτή, που παράγει τετρα-
γωνικούς παλµούς σταθερής συχνότητας. Η συχνότητα αυτή του ταλαντω-
τή καθορίζει και τη συχνότητα λειτουργίας του µικροεπεξεργαστή.
Σε κάθε υπολογιστή η κύρια µνήµη αποτελείται από ένα σύνολο θέσεων,
καθεµία από τις οποίες περιλαµβάνει ένα ή περισσότερα αποθηκευτικά κύτ-
ταρα (storage cells) ικανά να αποθηκεύσουν πληροφορία ενός δυαδικού
ψηφίου 0 ή 1 (binary digit – bit). Η διάκριση µεταξύ δύο θέσεων γίνεται από
ένα χαρακτηριστικό αριθµό, που ονοµάζεται διεύθυνση. Η αρίθµηση των
θέσεων µνήµης αρχίζει από τον αριθµό 0 και είναι συνεχής. Ο αριθµός, που
2 11 . 4 M π ∫ ƒ √ À ¶ √ § √ ° π ™ ∆ ∂ ™ ∫ ∞ π ª π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ∂ ™
2 2 K E º A § A I O 1 : E I ™ A ° ø ° H
αντιστοιχεί στην τελευταία θέση µνήµης, το πλήθος δηλαδή των θέσεων µνή-
µης, διαφέρει από σύστηµα σε σύστηµα και εξαρτάται αποκλειστικά από την
κατασκευή της κεντρικής µονάδας επεξεργασίας και τον τρόπο σύνδεσής της
µε την κύρια µνήµη.
Στην περίπτωση που κάθε θέση µνήµης περιέχει ένα µόνο αποθηκευτικό κύτ-
ταρο, λέµε ότι είναι οργανωµένη σε δυαδικά ψηφία, ενώ, όταν περιέχει περισ-
σότερα από ένα αποθηκευτικά κύτταρα, λέµε ότι είναι οργανωµένη σε λέξεις.
Το πλήθος των αποθηκευτικών κυττάρων της λέξης είναι δύναµη του δύο.
Μια οµάδα από 8 δυαδικά ψηφία ονοµάζεται ψηφιολέξη (byte). Συνήθως η
ψηφιολέξη χωρίζεται σε δύο οµάδες των 4 δυαδικών ψηφίων, καθεµία από τις
οποίες ονοµάζεται ηµιψηφιολέξη (nibble). Η πρώτη από τα αριστερά συµβο-
λίζεται µε NBH (Nibble Byte High) και η δεύτερη µε NBL (Nibble Byte Low).
Kωδικός
λειτουργίας
Έντελο 1 Έντελο 2
Πεδίο
πηγής
Πεδίο
προορισµού
™¯‹Ì· 1.6
Η µορφή των εντολών
Όπως είπαµε και νωρίτερα, ο µικροεπεξεργαστής δέχεται και εκτελεί οδη-
γίες. Οι οδηγίες αυτές βρίσκονται συνήθως αποθηκευµένες στη µνήµη µε τη
µορφή εντολών.
Κάθε εντολή αποτελείται συνήθως από τρία πεδία:
• το πεδίο του κωδικού λειτουργίας (operation code), το οποίο περιέχει τον
κωδικό της εντολής και υπαγορεύει στην κεντρική µονάδα επεξεργασίας
την εκτέλεση της συγκεκριµένης λειτουργίας,
• το έντελο ή αλλιώς πεδίο πηγής (source operand field), που περιέχει τα
δεδοµένα ή τη διεύθυνση των δεδοµένων, τα οποία θα χειριστεί η κεντρι-
κή µονάδα επεξεργασίας κατά την εκτέλεση της εντολής,
• το έντελο ή αλλιώς πεδίο προορισµού (destination operand field), που
δηλώνει τη θέση όπου θα αποθηκευτεί το αποτέλεσµα.
Ανάλογα µε την εσωτερική οργάνωση, που έχει ο κάθε µικροεπεξεργαστής,
εµφανίζονται πολλές φορές διαφοροποιήσεις από τη γενική περίπτωση, που
αναφέραµε παραπάνω. Έτσι π.χ. µπορεί να υπάρχουν εντολές µε τρία έντε-
λα (όπως συµβαίνει στην περίπτωση µιας εντολής πρόσθεσης δύο αριθµών)
ή µε ένα έντελο ή µε κανένα (στην περίπτωση αυτή ο κωδικός λειτουργίας
περιέχει και το πού θα εφαρµοστεί η εντολή).
2 31 . 4 M π ∫ ƒ √ À ¶ √ § √ ° π ™ ∆ ∂ ™ ∫ ∞ π ª π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ∂ ™
Προσπαθήστε να εξηγήσετε ποια απαίτηση των κατασκευαστών συστηµά-
των οδήγησε στην εµφάνιση των µικροεπεξεργαστών. Σκεφτείτε παραδείγ-
µατα από την καθηµερινή ζωή και από τις συσκευές, τις οποίες χρησιµοποι-
είτε συχνά, και αναφέρετε τρία παραδείγµατα συσκευών ή γενικότερα συστη-
µάτων, που να χρησιµοποιούν µικροεπεξεργαστές. Για να οδηγηθείτε σε
σωστό δρόµο σκεφτείτε ενέργειες, που κάνουν οι σύγχρονες συσκευές και
δεν υπήρχαν στις παλαιότερες. Προσπαθήστε σε κάθε παράδειγµα να προσ-
διορίσετε α) ποια είναι η πληροφορία, την οποία επεξεργάζεται ο µικροεπε-
ξεργαστής, β) ποια είναι η είσοδος σε αυτόν και γ) ποια είναι η έξοδος της
επεξεργασίας. Ο χρόνος απασχόλησής σας για την ολοκλήρωση αυτής της
δραστηριότητας εκτιµάµε πως δεν θα ξεπεράσει τα 30 περίπου λεπτά.
¢Ú·ÛÙËÚÈfiÙËÙ·
1.1
Ποια είναι τα τρία βασικά τµήµατα, από τα οποία αποτελείται ένα µικρο-
ϋπολογιστικό σύστηµα;
ÕÛÎËÛË
∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘
1.5
Τα µικροϋπολογιστικά συστήµατα επικοινωνούν µεταξύ τους µέσω τριών
διαύλων. Αντιστοιχίστε το όνοµα του καθενός από αυτούς µε τις ενέργειες
που εµφανίζονται στη δεξιά στήλη:
∆ίαυλος ∆εδοµένων Mεταφέρει τη διεύθυνση της θέσης µνή-
µης ή της συσκευής Ι/Ο, µε την οποία
ανταλλάσσονται δεδοµένα.
∆ίαυλος ∆ιευθύνσεων Mεταφέρει τη χρήσιµη πληροφορία,
δηλαδή τα δεδοµένα.
∆ίαυλος Ελέγχου Eνεργοποιεί ή απενεργοποιεί τη µνήµη
και τις συσκευές Ι/Ο, επιλέγει εάν θα
γίνει ανάγνωση ή εγγραφή στη µνήµη.
ÕÛÎËÛË
∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘
1.6
2 4 K E º A § A I O 1 : E I ™ A ° ø ° H
1.5 IÛÙÔÚÈ΋ ·Ó·‰ÚÔÌ‹
Ο πρώτος µικροεπεξεργαστής έκανε την εµφάνιση του στις αρχές του 1972,
σχεδόν τρεις δεκαετίες µετά από τους πρώτους ηλεκτρονικούς υπολογιστές. Η
εξέλιξη των µικροεπεξεργαστών θυµίζει πολύ την αντίστοιχη εξέλιξη των
µεσαίων υπολογιστών. Όπως δηλαδή οι σχεδιαστές των µεσαίων υπολογιστών
µετέφεραν σε αυτούς τις ιδέες τους από τη σχεδίαση µεγάλων συστηµάτων,
έτσι και οι σχεδιαστές των µικροεπεξεργαστών υιοθέτησαν πολλά στοιχεία της
οργάνωσης και της αρχιτεκτονικής των µεσαίων και µεγάλων συστηµάτων.
Στους µικροεπεξεργαστές της τελευταίας γενιάς άρχισαν ήδη να εφαρµόζο-
νται προχωρηµένα στοιχεία αρχιτεκτονικής, µε αποτέλεσµα σήµερα να είναι
ασαφής ο διαχωρισµός ανάµεσα στους µεσαίους υπολογιστές και σε συστή-
µατα βασισµένα σε µικροεπεξεργαστές.
Ποια είναι τα τρία πεδία, από τα οποία αποτελείται, στη γενική περίπτω-
ση, µία εντολή;
ÕÛÎËÛË
∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘
1.7
™¯‹Ì· 1.7
Γνωστοί µικροεπεξεργαστές:
α) 8080Α,
β) 8086–8088 και
γ) Pentium–II
Χρονολογίες–σταθµοί στην ιστορία των (µικρο)επεξεργαστών µπορούν να
θεωρηθούν οι παρακάτω:
• 1971: Η Intel παρουσιάζει τον πρώτο µικροεπεξεργαστή, τον 4004. Έχει
δίαυλο δεδοµένων πλάτους 4 bit, κατασκευάζεται µε 2.300 τρανσίστορς
και έχει συχνότητα λειτουργίας 108 kHz. Μέσα στην επόµενη χρονιά
εµφανίζεται ο διάδοχος του 8008.
• 1974: Εµφάνιση του 8–bit µικροεπεξεργαστή Intel 8080 ως αποτέλεσµα
της εξέλιξης του 8008. Έχει συχνότητα λειτουργίας 2 MHz και η κατα-
σκευή του απαιτεί 6.000 τρανσίστορς. Απάντηση της Zilog µε τον Z80
και της Motorola µε τον 6800, o οποίος έχει 4.000 τρανσίστορς και ίδια
συχνότητα λειτουργίας µε τον 8080.
• 1975: Η Intel αναβαθµίζει τον 8080 σε 8085.
• 1978: Εµφανίζονται οι πρώτοι 16–bit µικροεπεξεργαστές (δηλαδή ο δίαυ-
λος δεδοµένων τους έχει πλάτος 16 bit). H Intel παρουσιάζει τον
8086/8088, του οποίου η συχνότητα λειτουργίας έχει ανέβει πλέον στα 10
MHz και η κατασκευή του απαιτεί 29.000 τρανσίστορς. Η Motorola εµφα-
νίζει τον 68000 µε συχνότητα λειτουργίας 8 MHz, ο οποίος περιέχει
68.000 τρανσίστορς (από αυτό το γεγονός πήρε και το όνοµά του).
• 1982: Εµφανίζεται ο Intel 80286, ο οποίος περιέχει 134.000 τρανσίστορς
και έχει συχνότητα λειτουργίας 12,5 MHz. Αντίστοιχα η Motorola εµφα-
νίζει τον 68010.
• 1985: Εµφανίζονται οι πρώτοι 32–bit µικροεπεξεργαστές. Από τη µια ο
Intel 80386, ο οποίος περιέχει 275.000 τρανσίστορς και συχνότητα λει-
τουργίας 33 MHz και από την άλλη ο Motorola 68020 µε 200.000 τραν-
σίστορς και 16 MHz. Οι εξελίξεις πλέον είναι ραγδαίες.
• 1989: Εµφανίζεται ο 32–bit µικροεπεξεργαστής Intel 80486, ο οποίος έχει
1.200.000 τρανσίστορς και συχνότητα λειτουργίας 50 MHz.
• 1993: Εµφανίζεται ο Intel Pentium, ο οποίος περιέχει 3.100.000 τρανσί-
στορς και η συχνότητα λειτουργίας του έχει φτάσει στα 166 MHz.
• 1993: H Digital παρουσιάζει τον πρώτο 64–bit µικροεπεξεργαστή Alpha.
• 1997: H Intel ανακοινώνει τον Pentium II. Η συχνότητα λειτουργίας του
βρίσκεται στα 300 MHz και το ολοκληρωµένο κύκλωµά του αποτελεί-
ται από 7.700.000 τρανσίστορς.
• 1999: H Intel ανακοινώνει τον Pentium III µε συχνότητα λειτουργίας 450
MHz (σήµερα έχει φτάσει στο 1.13 GHz). Tο ολοκληρωµένο κύκλωµα
αποτελείται από 9.500.000 τρανσίστορς.
2 51 . 5 I ™ ∆ √ ƒ π ∫ ∏ ∞ ¡ ∞ ¢ ƒ √ ª ∏
Στην ενότητα 1.5 κάναµε µια ιστορική αναδροµή και είδαµε πώς εξελί-
χθηκαν οι µικροεπεξεργαστές µέχρι σήµερα. Τα κυριότερα χαρακτηριστι-
κά, στα οποία αναφερθήκαµε, ήταν το µήκος λέξης του µικροεπεξεργαστή
¢Ú·ÛÙËÚÈfiÙËÙ·
1.2
2 6 K E º A § A I O 1 : E I ™ A ° ø ° H
(δηλαδή το πλήθος των γραµµών δεδοµένων), η χρονιά εµφάνισής του, η
συχνότητα λειτουργίας του και ο αριθµός των τρανσίστορς, που περιέχει.
∆ηµιουργήστε ένα συγκεντρωτικό πίνακα µε όλα αυτά τα χαρακτηριστικά
για κάθε επεξεργαστή της Intel, τον οποίο γνωρίζετε. Ο χρόνος απασχόλη-
σής σας για την ολοκλήρωση αυτής της δραστηριότητας εκτιµάµε πως δεν
θα ξεπεράσει τα 30 περίπου λεπτά.
Ετοιµάστε µε τα στοιχεία, τα οποία έχετε από την ενότητα 1.5 είτε από
τη δραστηριότητα 2 του κεφαλαίου 1, µία γραφική παράσταση µε τον
αριθµό των τρανσίστορς στα ολοκληρωµένα κυκλώµατα σε σχέση µε τις
χρονολογίες εµφάνισης τους. Παρατηρήστε τη γραφική παράσταση και
βρείτε τη σχέση που συνδέει τις δύο παραµέτρους (είναι γραµµική;
πολυωνυµική; εκθετική;).
ÕÛÎËÛË
∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘
1.8
™‡ÓÔ„Ë
Η επιθυµία των κατασκευαστών συστηµάτων να δηµιουργήσουν όλο και πιο
έξυπνα συστήµατα µε περισσότερες δυνατότητες και µε µικρότερο µέγεθος
οδήγησε στην ανάγκη για ενσωµάτωση όλων των λειτουργιών ενός ολόκλη-
ρου υπολογιστή σε ένα ή µερικά ολοκληρωµένα κυκλώµατα.
Η ανάπτυξη της τεχνολογίας κατασκευής των τελευταίων µε την συνεχή αύξη-
ση του αριθµού των τρανσίστορς, που θα µπορούσαν να αποθηκευτούν σε
αυτά, µε το µικρό κόστος, τη µικρή κατανάλωση ισχύος και την αξιόπιστη
λειτουργία τους παρείχε αυτή τη δυνατότητα. Έτσι σήµερα η χρήση µικροε-
πεξεργαστών σε συσκευές της καθηµερινής µας ζωής, σε βιοµηχανικά συστή-
µατα ελέγχου και σε πολλά άλλα συστήµατα είναι πλέον δεδοµένη.
Όλα τα συστήµατα, τα οποία περιέχουν κάποιο µικροεπεξεργαστή, ονοµάζο-
νται µικροϋπολογιστές ή µικροϋπολογιστικά συστήµατα. Τα συστήµατα αυτά
περιέχουν ακόµα µονάδες εισόδου/εξόδου για να επικοινωνούν µε το περι-
βάλλον και την κύρια µνήµη για να αποθηκεύουν τα δεδοµένα και τις εντο-
λές του προγράµµατος, το οποίο εκτελεί ο µικροεπεξεργαστής. Οι εντολές
είναι αποθηκευµένες στην κύρια µνήµη και αποτελούνται από τον κωδικό
λειτουργίας, που καθορίζει τι πρέπει να κάνει η κάθε εντολή, και τα έντελα
πηγής και προορισµού, που περιέχουν είτε τις διευθύνσεις, στις οποίες βρί-
σκονται τα δεδοµένα, είτε τα ίδια τα δεδοµένα.
Η επικοινωνία µεταξύ των διαφόρων µονάδων ενός µικροϋπολογιστή γίνε-
ται µέσω τριών διαύλων, του διαύλου δεδοµένων για τη µεταφορά των δεδο-
µένων, του διαύλου διευθύνσεων για την επιλογή της θέσης µνήµης ή µονά-
δας εισόδου/εξόδου, από την οποία θα µεταφερθούν τα δεδοµένα, και του
διαύλου ελέγχου για τον έλεγχο των διαφόρων λειτουργιών του συστήµατος.
Οι γραµµές, που περιέχουν οι δίαυλοι αυτοί, ονοµάζονται αντίστοιχα γραµ-
µές δεδοµένων, γραµµές διευθύνσεων και γραµµές ελέγχου.
Η ανάπτυξη των µικροεπεξεργαστών ήταν ραγδαία. Από τον πρώτο µικροε-
πεξεργαστή (Intel 4004), ο οποίος εµφανίστηκε το 1971 µε 2.300 τρανσίστορς
και συχνότητα λειτουργίας 108 kHz, έχουµε φτάσει σήµερα σε επεξεργαστές
(Intel Pentium III), που περιέχουν 9.500.000 τρανσίστορς και συχνότητες λει-
τουργίας µέχρι 1.13 MHz, µε αποτέλεσµα να δηµιουργούνται όλο και πιο
ισχυρά και γρήγορα µικροϋπολογιστικά συστήµατα.
BÈ‚ÏÈÔÁÚ·Ê›·
Τώρα που τελειώσατε µε το εισαγωγικό κεφάλαιο, εάν µπορείτε να διαθέσετε
κάποιον επιπλέον χρόνο, καλό θα ήταν να µελετήσετε τα παρακάτω κείµενα:
Theory and Problems of Microprocessor Fundamentals, Schaum’s Outline
Series, Roger L. Tokheim, Κεφάλαιο 1. Στο κεφάλαιο αυτό θα βρείτε ένα
πολύ ωραίο παράδειγµα, το οποίο περιγράφει πώς λειτουργεί ένας µικρο-
ϋπολογιστής.
Theory and Problems of Microprocessor Fundamentals, Schaum’s Outline
Series, Roger L. Tokheim, Κεφάλαιο 3. Το κεφάλαιο αυτό θα σας θυµίσει
βασικά κυκλώµατα σχεδιασµού, όπως τις βασικές πύλες AND, OR, NOT,
τα flip–flops, τους κωδικοποιητές και αποκωδικοποιητές, τους αποµονω-
τές και τις µνήµες. Όλα αυτά τα κυκλώµατα θα µας είναι χρήσιµα στο σχε-
διασµό µικροϋπολογιστικών συστηµάτων, που θα δούµε στο κεφάλαιο 7.
Εάν πάλι δεν έχετε χρόνο, µην ανησυχείτε. Στα επόµενα κεφάλαια θα ανα-
λύσουµε ένα προς ένα τα θέµατα που µας χρειάζονται, για να αποκτήσε-
τε µια ολοκληρωµένη άποψη για τους µικροεπεξεργαστές.
2 7B π µ § π √ ° ƒ∞ º π ∞
OÈ MÈÎÚÔÂÂÍÂÚÁ·ÛÙ¤˜
™ÎÔfi˜
Μελετώντας αυτό το κεφάλαιο θα γνωρίσετε ένα γενικό µικροεπεξεργαστή,
τα βασικά τµήµατα, από τα οποία αυτός αποτελείται, καθώς επίσης και τις
βασικές αρχές και χαρακτηριστικά λειτουργίας του χωρίς να αναφερόµαστε
σε κάποιο συγκεκριµένο µικροεπεξεργαστή.
¶ÚÔÛ‰ÔÎÒÌÂÓ· ·ÔÙÂϤÛÌ·Ù·
Όταν θα ολοκληρώσετε τη µελέτη αυτού του κεφαλαίου, θα είστε σε θέση να:
• εξηγήσετε σε µία παράγραφο τις βασικές λειτουργίες που επιτελούν τα τρία
τµήµατα, από τα οποία αποτελείται ένας µικροεπεξεργαστής.
• ορίσετε ποιες είναι οι αριθµητικές και ποιες οι λογικές πράξεις, που γίνο-
νται µέσα στην αριθµητική και λογική µονάδα.
• αναφέρετε τα πέντε βασικά κυκλώµατα, από τα οποία αποτελείται η αριθ-
µητική και λογική µονάδα.
• ορίσετε τι είναι ένας καταχωρητής και πού µας χρησιµεύει.
• αναφέρετε τους έξι βασικούς τύπους καταχωρητών και τη λειτουργία που
επιτελεί ο καθένας από αυτούς.
• καταγράψετε τον τρόπο, µε τον οποίο οι µικροεπεξεργαστές µας δείχνουν
την κατάσταση, στην οποία βρίσκονται µετά από την εκτέλεση µιας εντο-
λής ή λειτουργίας.
• διαχωρίσετε τους τρεις διαύλους επικοινωνίας µε βάση την πληροφορία,
την οποία µεταφέρουν.
• ορίσετε µε ποιόν τρόπο αρχικοποιούµε ένα µικροεπεξεργαστή.
• χωρίσετε το χρόνο, που απαιτείται για την εκτέλεση µιας εντολής, σε µικρό-
τερα τµήµατα.
• αναφέρετε τις έξι βασικές κατηγορίες, στις οποίες χωρίζεται το σύνολο
εντολών ενός µικροεπεξεργαστή.
• ορίσετε τους εφτά διαφορετικούς τρόπους, µε τους οποίους µια εντολή καθο-
ρίζει πού βρίσκονται τα δεδοµένα, τα οποία αυτή χρειάζεται για να εκτελεστεί.
2∫ ∂ º ∞ § ∞ π √
3 0 K E º A § A I O 2 : O π M π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ∂ ™
∂ÈÛ·ÁˆÁÈΤ˜ ·Ú·ÙËÚ‹ÛÂȘ
Το κεφάλαιο αυτό αποτελεί ίσως το σηµαντικότερο κεφάλαιο του βιβλίου και
γι’ αυτό θα πρέπει να το µελετήσετε µε ιδιαίτερη προσοχή. Αναπτύσσονται
πολλές νέες έννοιες, οι οποίες θα χρησιµεύσουν στα επόµενα κεφάλαια, και
γι’ αυτό χρειάζονται ίσως αρκετές αναγνώσεις του κειµένου από σας για να
τις καταλάβετε πλήρως. Μην προχωρήσετε στο κεφάλαιο 3 πριν κατανοήσε-
τε τα περιεχόµενα του κεφαλαίου αυτού.
• Αριθµητική και Λογική Μονάδα
• ∆είκτης Σωρού
• ∆ίαυλος ∆εδοµένων
• ∆ίαυλος ∆ιευθύνσεων
• ∆ίαυλος Ελέγχου
• Ενεργή ∆ιεύθυνση
• Καταχωρητής
• Καταχωρητής Γενικού Σκοπού
• Καταχωρητής Εντολών
• Kαταχωρητής Κατάστασης Επε-
ξεργαστή
• Κύκλος Εντολής
• Κύκλος Μηχανής
• Κύκλος Ρολογιού
• Κύκλωµα Χρονισµού
• Μετρητής Προγράµµατος
• Μικροεπεξεργαστής
• Μικροϋπολογιστής
• Μονάδα Ελέγχου
• Σύνολο Εντολών
• Συσσωρευτής
• Τρόποι ∆ιευθυνσιοδότησης
ŒÓÓÔȘ ÎÏÂȉȿ
2.1 H AÚ¯ÈÙÂÎÙÔÓÈ΋ ÙˆÓ ÌÈÎÚÔÂÂÍÂÚÁ·ÛÙÒÓ
Στο κεφάλαιο 1 είδαµε ότι η κεντρική µονάδα επεξεργασίας (ΚΜΕ) ή µικρο-
επεξεργαστής (microprocessor) είναι αυτή που ρυθµίζει όλες τις ενέργειες,
που επιτελούνται στο µικροϋπολογιστικό σύστηµα.
3 12 . 1 H A ƒ Ã π ∆ ∂ ∫ ∆ √ ¡ π ∫ ∏ ∆ ø ¡ ª π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ø ¡
Eίσοδος
∆εδοµένα
Eντολές
Eντολές Aποτελέσµατα
Aριθµητική
λογική µονάδα
Eνεργοποίηση
Έξοδος
Aποτελέσµατα
KME
∆ιεύθυνση
∆εδοµένα
MNHMH
∆εδοµένα
Έλεγχος
Eντολές
Mονάδα ελέγχου
™¯‹Ì· 2.1
Ο µικροεπεξεργαστής
Ο µικροεπεξεργαστής καθορίζει τη σειρά εκτέλεσης των εντολών. Κατά τη
διάρκεια εκτέλεσης των εντολών συντονίζει τη µεταφορά των δεδοµένων
από τις εισόδους προς αυτόν και προς την κύρια µνήµη. Επεξεργάζεται τα
δεδοµένα σύµφωνα µε το πρόγραµµα επεξεργασίας του µικροϋπολογιστικού
συστήµατος ώστε να ανταποκρίνονται στη ζητούµενη εφαρµογή. Επίσης
κατευθύνει τη µεταφορά δεδοµένων από τον ίδιο ή από την κύρια µνήµη
προς τις εξόδους του.
Οι µικροεπεξεργαστές αποτελούνται βασικά από τρία τµήµατα (δείτε το
σχήµα 2.1), τα οποία συνεργάζονται αρµονικά µεταξύ τους: την αριθµητι-
κή και λογική µονάδα (arithmetic and logic unit, ALU), τη µονάδα ελέγχου
(control unit, CU) και τους καταχωρητές (registers). Ας δούµε το κάθε
τµήµα ξεχωριστά.
2.1.1 AÚÈıÌËÙÈ΋ Î·È ÏÔÁÈ΋ ÌÔÓ¿‰·
Η εκτέλεση των διαφόρων λογικών και αριθµητικών πράξεων, που απαι-
τούνται από το σύνολο εντολών ενός µικροεπεξεργαστή, πραγµατοποιείται
σ’ αυτό το τµήµα του, που καλείται αριθµητική και λογική µονάδα (ALU).
3 2 K E º A § A I O 2 : O π M π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ∂ ™
Ως αριθµητικές πράξεις εννοούµε την πρόσθεση και την αφαίρεση δύο αριθ-
µών, την αύξηση και την ελάττωση ενός αριθµού κατά ένα, το συµπλήρωµα
ενός αριθµού ως προς 1 ή ως προς 2.
Οι λογικές πράξεις εφαρµόζονται κατά κύριο λόγο σε δυαδικά δεδοµένα και
δεν είναι άλλες από τις γνωστές µας ΚΑΙ (AND), Ή (OR) και ΟΧΙ (NOT).
Εκτός από αυτές, λογικές πράξεις θεωρούνται και η ολίσθηση ή η περι-
στροφή ενός αριθµού και η σύγκριση δύο αριθµών.
Η εκτέλεση καθεµιάς από τις πράξεις αυτές µπορεί να υπάρχει είτε αυτούσια
ενσωµατωµένη µέσα στο µικροεπεξεργαστή µε τη µορφή µίας εντολής (π.χ.
πρόσθεση) είτε να απαιτεί την εκτέλεση µιας ακολουθίας πολλών εντολών.
Είναι ευνόητο ότι πράξεις, όπως είναι ο πολλαπλασιασµός, η διαίρεση, η εύρε-
ση ρίζας, η διαφόριση, ολοκλήρωση και διάφορες άλλες, που απαιτούν πολύ-
πλοκους υπολογισµούς µε πολλές µετακινήσεις δεδοµένων, το υλικό του
µικροεπεξεργαστή δεν είναι σε θέση από µόνο του να τις αντιµετωπίσει. Αντί-
θετα, επειδή όλες αυτές οι πράξεις αναλύονται σε συνδυασµό βασικών αριθ-
µητικών εντολών (π.χ. η εύρεση ρίζας αριθµού µπορεί να γίνει µε διαδοχικές
αφαιρέσεις), µπορούν πολύ εύκολα να υλοποιηθούν ως ακολουθία βασικών
εντολών, που µπορούν να εκτελεστούν στην αριθµητική και λογική µονάδα.
Φυσικά, όταν χρησιµοποιείται το υλικό για να εκτελέσει ακόµα και τις πιο
πολύπλοκες πράξεις, η ταχύτητα εκτέλεσής τους είναι πολύ µεγαλύτερη.
Σε πολλές περιπτώσεις οι λογικές και αριθµητικές πράξεις είναι µικροπρο-
γραµµατιζόµενες. Ο µικροπρογραµµατισµός αποβλέπει στη γρηγορότερη εκτέ-
λεση των πράξεων και στην επίτευξη µεγαλύτερων ταχυτήτων. Με βάση αυτόν,
χωριστές µνήµες ελέγχου (control memories) περιέχουν το µικροπρόγραµµα,
OλισθητήςAθροιστής
Συγκριτής
Aριθµητική λογική µονάδα
Tελεστής AΈλεγχος
Tελεστής B
Kρατούµενο
Kατάσταση Aποτέλεσµα™¯‹Ì· 2.2
Η αριθµητική και
λογική µονάδα
το οποίο ανταποκρίνεται στις γενικές εντολές του χρήστη και καθοδηγεί την
αριθµητική και λογική µονάδα ώστε να εκτελέσει τις απαιτούµενες λειτουργίες.
Τα δεδοµένα, πάνω στα οποία θα πρέπει να λειτουργήσει η αριθµητική και
λογική µονάδα, είναι αποθηκευµένα στη µνήµη σαν τµήµα της εντολής. Η
αποκωδικοποίηση της εντολής καταλήγει στην εκποµπή ενός σήµατος από
τη µονάδα ελέγχου προς την αριθµητική και λογική µονάδα, ενεργοποιώντας
τα κατάλληλα κυκλώµατα της µονάδας αυτής. Μετά την εκτέλεση της απαι-
τούµενης πράξης, η µονάδα ελέγχου προωθεί την επόµενη εντολή, που πρό-
κειται να εκτελεστεί, και έτσι επαναλαµβάνεται ο κύκλος αυτός, εφόσον
βέβαια απαιτείται ξανά η ενεργοποίηση της αριθµητικής µονάδας.
Τα κυκλώµατα, τα οποία περιέχονται σε µια αριθµητική και λογική µονάδα
(δείτε το σχήµα 2.2), διαφέρουν από µικροεπεξεργαστή σε µικροεπεξεργα-
στή, αλλά συνήθως υπάρχουν τα ακόλουθα κυκλώµατα:
1. Ένας αθροιστής (adder) για να εκτελεί τις βασικές αριθµητικές πράξεις.
2. Ένας συγκριτής (comparator), ο οποίος µπορεί να συγκρίνει τους αριθ-
µούς που τοποθετούνται στους καταχωρητές εντέλων.
3. Ένας ολισθητής (shifter), ο οποίος εκτελεί την ολίσθηση ή περιστροφή
ενός αριθµού.
4. Μία µονάδα λογικής επεξεργασίας, που εκτελεί λογικές πράξεις πάνω
στους αριθµούς, που τοποθετούνται στους καταχωρητές εντέλων.
5. Κάποιοι καταχωρητές για να αποθηκεύονται οι αριθµοί και τα αποτελέ-
σµατα των πράξεων (µην ανησυχείτε, για τους καταχωρητές θα µιλή-
σουµε στην υποενότητα 2.1.3).
Με βάση τα παραπάνω βασικά κυκλώµατα µπορούν να υλοποιηθούν και
όλες οι υπόλοιπες πράξεις, π.χ. η αφαίρεση δύο αριθµών µπορεί να υλοποι-
ηθεί ως πρόσθεση του πρώτου µε το συµπλήρωµα του δεύτερου (εποµένως
δεν απαιτείται η ύπαρξη ενός αφαιρέτη), ο πολλαπλασιασµός και η διαίρε-
ση απαιτούν διαδοχικές αυξήσεις και ολισθήσεις, ενώ η τετραγωνική ρίζα
µπορεί να υλοποιηθεί µε διαδοχικές αφαιρέσεις, κ.ο.κ.
2.1.2 MÔÓ¿‰· ÂϤÁ¯Ô˘
Όπως είναι ήδη γνωστό, ο µικροεπεξεργαστής λειτουργεί µε σειριακό τρόπο
ανάλογα µε τις υποδείξεις των εντολών του αποθηκευµένου προγράµµατος.
Αλλά βέβαια το πρόγραµµα από µόνο του δεν είναι αρκετό για να κατευθύ-
νει τη λειτουργία του. Για παράδειγµα ο µικροεπεξεργαστής θα πρέπει να
3 32 . 1 H A ƒ Ã π ∆ ∂ ∫ ∆ √ ¡ π ∫ ∏ ∆ ø ¡ ª π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ø ¡
3 4 K E º A § A I O 2 : O π M π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ∂ ™
γνωρίζει πού είναι αποθηκευµένη (σε ποια διεύθυνση) µέσα στη µνήµη η
πρώτη εκτελέσιµη εντολή του προγράµµατος. Θα πρέπει ακολούθως ν’ ανα-
πτύξει τα κατάλληλα σήµατα ελέγχου, που θα αποσπάσουν την εντολή από
τη µνήµη και έπειτα θα πρέπει να εξετάσει το περιεχόµενο της εντολής αυτής
για να αποφασίσει για τις ενέργειες, που αυτή απαιτεί.
Η µνήµη, οι µονάδες εισόδου/εξόδου, καθώς και η αριθµητική και λογική
µονάδα, θα πρέπει να ενεργοποιηθούν στα κατάλληλα χρονικά διαστήµατα
ώστε να εκτελέσουν την αποκωδικοποιηµένη εντολή µε τέτοιο τρόπο ώστε
οι λειτουργίες αυτές να µην παρεµβάλλονται µεταξύ τους και να µην δηµι-
ουργούν ανεπιθύµητα αποτελέσµατα.
Όλες αυτές οι απαιτήσεις οδηγούν στην ανάγκη της παρουσίας της µονάδας
ελέγχου (ΜΕ). Σε γενικές γραµµές, η µονάδα ελέγχου είναι το κατευθυντήριο
κέντρο του µικροεπεξεργαστή και παρέχει τις λειτουργίες χρονισµού, αποκω-
δικοποίησης και ενεργοποίησης για όλα τα τµήµατα του µικροϋπολογιστή. Στο
σχήµα 2.3 φαίνεται το λειτουργικό διάγραµµα µιας τυπικής µονάδας ελέγχου.
Η βασική πηγή για όλα τα σήµατα ελέγχου, που κατευθύνουν τις συσκευές
του συστήµατος, είναι το ρολόι. Οι απαιτήσεις για χρονισµό σ’ ένα µικροϋ-
πολογιστικό σύστηµα ποικίλλουν από σχετικά µεγάλης διάρκειας παλµούς
(secs ή msecs) µέχρι πολύ µικρής διάρκειας (nsecs). Η φύση των σηµάτων
χρονισµού είναι τέτοια ώστε οι παλµοί να εµφανίζονται και να διαρκούν µόνο
για ένα απαιτούµενο χρονικό διάστηµα, να επαναλαµβάνονται µε µια καθο-
ρισµένη ακολουθία ή να εµφανίζονται µετά από απαίτηση.
Είναι γνωστό ότι µια εντολή χωρίζεται σε δύο τµήµατα: στον κώδικα λει-
τουργίας (operation code) και στο έντελο (operand), δηλαδή τη διεύθυνση του
δεδοµένου, πάνω στο οποίο θα επενεργήσει ο κώδικας λειτουργίας. Ο κώδι-
κας λειτουργίας εξετάζεται από τον αποκωδικοποιητή εντολών για να αποφα-
σίσει ποιες λειτουργίες θα πρέπει να ακολουθήσουν. Για να µπορέσει να εκτε-
λεστεί αυτή η διαδικασία θα πρέπει πρώτα ο κώδικας λειτουργίας της εντολής
να µεταφερθεί στον καταχωρητή εντολής της µονάδας ελέγχου. Ο καταχωρη-
τής εντολής χρησιµοποιείται για να διαφυλάσσει τον κώδικα λειτουργίας, ενώ
αυτή αποκωδικοποιείται. Ο αποκωδικοποιητής εντολών είναι κατασκευασµέ-
νος από πύλες, έτσι ώστε να αναγνωρίζει µόνο συγκεκριµένους συνδυασµούς
δυαδικών συµβόλων, αυτούς που αντιστοιχούν σε πραγµατικές εντολές. Ένας
ξεχωριστός συνδυασµός πυλών χρησιµοποιείται συνήθως για την αναγνώρι-
ση κάθε κώδικα λειτουργίας και η έξοδος του αποκωδικοποιητή εντολών είναι
ένα ξεχωριστό σήµα, που ενεργοποιεί το κατάλληλο κύκλωµα της γεννήτριας
ελέγχου, που αντιστοιχεί στο συγκεκριµένο κώδικα λειτουργίας.
Η γεννήτρια ελέγχου (control generator) αποτελείται επίσης από πύλες, που
συνδυάζουν την έξοδο του αποκωδικοποιητή εντολών µε τα κυκλώµατα χρο-
νισµού έτσι ώστε να κατευθύνονται τα υπόλοιπα τµήµατα του µικροϋπολο-
γιστή και να ενεργοποιούνται πάντα µε τη σωστή σειρά λειτουργίας. Θα πρέ-
πει να αναφερθεί επίσης ότι η µονάδα ελέγχου συνήθως περιέχει και άλλους
ειδικούς καταχωρητές, όπως το µετρητή προγράµµατος, τον καταχωρητή
κατάστασης επεξεργαστή (processor status word ή PSW) και το δείκτη
σωρού (stack pointer), για τους οποίους θα µιλήσουµε στη συνέχεια.
2.1.3 K·Ù·¯ˆÚËÙ¤˜
Οι καταχωρητές (registers) χρησιµεύουν για την αποθήκευση προσωρινών
αποτελεσµάτων ή δεδοµένων, που έχουν σηµασία για το µικροεπεξεργαστή.
Παρά το γεγονός ότι το πλήθος και το είδος των καταχωρητών είναι διαφο-
ρετικό σε κάθε µικροεπεξεργαστή, συνήθως συναντάµε τους παρακάτω:
3 52 . 1 H A ƒ Ã π ∆ ∂ ∫ ∆ √ ¡ π ∫ ∏ ∆ ø ¡ ª π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ø ¡
Pολόι
Γεννήτρια
χρονισµού
Γεννήτρια
ελέγχου
Aποκωδικο-
ποιητής
εντολών
Kαταχωρητής
εντολών
Kαταχωρητής
δεδοµένων
Mετρητής
προγράµµατος
Προς δίαυλο
διευθύνσεων
Aπό και προς
δίαυλο
δεδοµένων
Σήµατα χρονισµού
και ελέγχου
™¯‹Ì· 2.3
Η µονάδα ελέγχου
3 6 K E º A § A I O 2 : O π M π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ∂ ™
Συσσωρευτής (accumulator): Bρίσκεται στην αριθµητική και λογική µονάδα
και χρησιµοποιείται για να αποθηκεύει (α) τον έναν από τους αριθµούς που
απαιτούνται για να εκτελεστεί η πράξη και (β) το αποτέλεσµα της πράξης.
Καταχωρητής γενικού σκοπού (general purpose register): Bρίσκεται στην
αριθµητική και λογική µονάδα και χρησιµοποιείται για να αποθηκεύει τον
άλλο αριθµό που απαιτείται για να εκτελεστεί µία πράξη, καθώς και ως απο-
θηκευτικός χώρος για ενδιάµεσα αποτελέσµατα. Οι καταχωρητές αυτοί µπο-
ρούν να αποθηκεύσουν επίσης τη διεύθυνση της θέσης µνήµης, όπου βρί-
σκονται οι αριθµοί, ή τη διεύθυνση της θέσης µνήµης, όπου θα αποθηκευτεί
το αποτέλεσµα. Σε πολλούς επεξεργαστές η ύπαρξη πολλών καταχωρητών
γενικού σκοπού καθιστά περιττή την ύπαρξη του συσσωρευτή.
Kαταχωρητής κατάστασης επεξεργαστή (processor status word): Bρίσκεται
και αυτός στην αριθµητική και λογική µονάδα. Συνήθως αποτελείται από ένα
σύνολο από δυαδικά ψηφία (bits), που ονοµάζονται δείκτες (flags) ή σηµαί-
ες κατάστασης. Αυτά χρησιµοποιούνται για να δείχνουν στο χρήστη την
παρούσα κατάσταση του µικροεπεξεργαστή, καθώς επίσης και χαρακτηρι-
στικά γνωρίσµατα των αποτελεσµάτων της προηγούµενης πράξης. Όλοι οι
µικροεπεξεργαστές είναι σε θέση µέσω του καταχωρητή κατάστασης να υπο-
δείξουν ένα µηδενικό αποτέλεσµα (zero), ένα αρνητικό αποτέλεσµα
(negative), ένα κρατούµενο (carry), µία υπερχείλιση (overflow), κ.λπ.
Καταχωρητής εντολών (instruction register): Bρίσκεται στη µονάδα ελέγχου
του µικροεπεξεργαστή και χρησιµοποιείται για να αποθηκεύει τον κώδικα
λειτουργίας της εντολής, ενώ αυτή αποκωδικοποιείται για να εκτελεστεί.
S Z … O C
∆ιακόπτης κρατούµενου
(Carry flag)
∆ιακόπτης υπερχείλησης
(Overflow flag)
∆ιακόπτης µηδενικού
αποτελέσµατος
(Zero flag)
∆ιακόπτης προσήµου
(Sign flag)
™¯‹Ì· 2.4
Ο καταχωρητής κατάστα-
σης επεξεργαστή
Μετρητής προγράµµατος (program counter): Bρίσκεται και αυτός στη µονά-
δα ελέγχου και αποθηκεύει τη διεύθυνση της θέσης µνήµης, στην οποία βρί-
σκεται η επόµενη προς εκτέλεση εντολή, έτσι ώστε να ανακληθεί από τη
µνήµη, όταν τελειώσει η εκτέλεση της τρέχουσας εντολής.
∆είκτης σωρού (stack pointer): Όλοι οι µικροεπεξεργαστές χρησιµοποιούν
µια περιοχή για αποθήκευση δεδοµένων. Η περιοχή αυτή ονοµάζεται σωρός
(stack). Ο σωρός µπορεί να είναι ένα σύνολο από καταχωρητές µέσα στο
µικροεπεξεργαστή είτε ένα τµήµα της κύριας µνήµης (RAM). Ο σωρός χρη-
σιµοποιείται για να αποθηκεύει ενδιάµεσα αποτελέσµατα αλλά και πληρο-
φορίες, που αφορούν συνήθως στο µικροεπεξεργαστή. Συνήθως ο σωρός
είναι της µορφής Last In First Out (LIFO), όπου η τελευταία πληροφορία,
που τοποθετείται στο σωρό, είναι και η πρώτη που θα πρέπει να αποσπαστεί.
O δείκτης σωρού δείχνει πάντα στην κορυφή του σωρού, η οποία περιέχει
την τελευταία πληροφορία, που τοποθετήθηκε στο σωρό.
3 72 . 2 O π ¢ π ∞ À § √ π ¢ π ∂ À £ À ¡ ™ ∂ ø ¡ / ¢ ∂ ¢ √ ª ∂ ¡ ø ¡ / ∂ § ∂ ° Ã √ À
Ένας µικροεπεξεργαστής αποτελείται από τα εξής τρία τµήµατα:
α) …
β) …
γ) …
ÕÛÎËÛË
∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘
2.1
Οι διάφορες πράξεις µεταξύ των δεδοµένων γίνονται στο τµήµα εκείνο του
µικροεπεξεργαστή που ονοµάζεται ……………………………………
Απαριθµήστε τα κυκλώµατα, τα οποία υπάρχουν συνήθως στο τµήµα αυτό.
ÕÛÎËÛË
∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘
2.2
Ποιοι καταχωρητές βρίσκονται στην αριθµητική και λογική µονάδα, ποιοι
στη µονάδα ελέγχου και τι λειτουργία επιτελεί ο καθένας από αυτούς;
ÕÛÎËÛË
∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘
2.3
2.2 OÈ ¢›·˘ÏÔÈ ‰È¢ı‡ÓÛˆÓ/‰Â‰Ô̤ӈÓ/ÂϤÁ¯Ô˘
Οι περισσότεροι µικροϋπολογιστές αναπτύσσονται γύρω από ένα δίαυλο
(bus). Ο δίαυλος αυτός είναι ένα σύνολο από γραµµές (καλώδια), που συν-
δέουν τα διάφορα τµήµατα του µικροϋπολογιστή. Για παράδειγµα συνδέουν
όλα τα σήµατα ελέγχου, δεδοµένων και διευθύνσεων από το ένα τµήµα του
3 8 K E º A § A I O 2 : O π M π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ∂ ™
στο άλλο. Η λειτουργία του διαύλου είναι να παρέχει ένα µονοπάτι επικοι-
νωνίας µεταξύ δύο ή περισσότερων τµηµάτων του µικροϋπολογιστή.
KME Σύστηµα µνήµης
Σύστηµα
εισόδου–εξόδου
∆ίαυλος ελέγχου
∆ίαυλος διευθύνσεων
∆ίαυλος δεδοµένων
™¯‹Ì· 2.5
Οι δίαυλοι διευθύνσεων –
δεδοµένων – ελέγχου
Το τµήµα του µικροεπεξεργαστή, που αποτελεί τη µονάδα ελέγχου, αποφα-
σίζει για το ποιο από τα τµήµατα του µικροϋπολογιστή πρόκειται να προω-
θήσει µια πληροφορία και ποια άλλα τµήµατα πρόκειται να χρησιµοποιή-
σουν την πληροφορία αυτή. Στο σχήµα 1.5 του προηγούµενου κεφαλαίου
είδαµε την οργάνωση ενός µικροϋπολογιστικού συστήµατος, που αναπτύσ-
σεται γύρω από ένα δίαυλο. Μερικές από τις γραµµές του διαύλου είναι αφιε-
ρωµένες µόνο στη µεταφορά διευθύνσεων µνήµης, άλλες στη µεταφορά
δεδοµένων, ενώ άλλες µεταφέρουν µόνο σήµατα ελέγχου. Όλα συνεπώς τα
τµήµατα του µικροϋπολογιστή, όπως άλλωστε φαίνεται και στο σχήµα 2.5,
χρησιµοποιούν αυτές τις γραµµές διευθύνσεων, δεδοµένων και ελέγχου, που
σχετίζονται άµεσα µε τη λειτουργία που εκτελούν.
Ο δίαυλος δεδοµένων µεταφέρει είτε εντολές, που πρόκειται να αποκωδικο-
ποιηθούν, είτε πληροφορίες, που πρόκειται να επεξεργαστούν. Είναι ένας
δίαυλος διπλής κατεύθυνσης (bidirectional), πράγµα το οποίο σηµαίνει ότι
µπορεί να µεταφέρει πληροφορίες από το µικροεπεξεργαστή στα άλλα τµή-
µατα του µικροϋπολογιστή σε µία χρονική περίοδο (π.χ. όταν αποθηκεύο-
νται τα αποτελέσµατα µιας αριθµητικής πράξης στην κύρια µνήµη), ενώ σε
άλλες περιόδους οι πληροφορίες µπορεί να µεταφέρονται από διάφορα τµή-
µατα του µικροϋπολογιστή προς το µικροεπεξεργαστή (π.χ. όταν µεταφέρο-
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές
Mικροεπεξεργαστές

More Related Content

What's hot

κλασικη εποχη σχεδιαγραμμα
κλασικη εποχη   σχεδιαγραμμακλασικη εποχη   σχεδιαγραμμα
κλασικη εποχη σχεδιαγραμμα
Eleni Kots
 
ΠΕΛΟΠΟΝΝΗΣΙΑΚΟΣ ΠΟΛΕΜΟΣ
ΠΕΛΟΠΟΝΝΗΣΙΑΚΟΣ ΠΟΛΕΜΟΣΠΕΛΟΠΟΝΝΗΣΙΑΚΟΣ ΠΟΛΕΜΟΣ
ΠΕΛΟΠΟΝΝΗΣΙΑΚΟΣ ΠΟΛΕΜΟΣ
6o Lykeio Kavalas
 
η δίκη του θηραμένη
η δίκη του θηραμένηη δίκη του θηραμένη
η δίκη του θηραμένη
antonxatzi
 
διδακτικο σεναριο ιστοριας α'λυκειου
διδακτικο σεναριο ιστοριας α'λυκειουδιδακτικο σεναριο ιστοριας α'λυκειου
διδακτικο σεναριο ιστοριας α'λυκειου
mgpanousi1
 
1. η συμμαχια τησ δηλου . η συμμαχια οργανο τησ αθηναϊκησ ηγεμονιασ
1. η συμμαχια τησ δηλου . η συμμαχια οργανο τησ αθηναϊκησ ηγεμονιασ1. η συμμαχια τησ δηλου . η συμμαχια οργανο τησ αθηναϊκησ ηγεμονιασ
1. η συμμαχια τησ δηλου . η συμμαχια οργανο τησ αθηναϊκησ ηγεμονιασ
mavraroda
 
Αίγυπτος
ΑίγυπτοςΑίγυπτος
Αίγυπτος
stelmanta
 

What's hot (20)

8 ερωτησεις και απαντησεις
8 ερωτησεις και απαντησεις8 ερωτησεις και απαντησεις
8 ερωτησεις και απαντησεις
 
Αρριανού Αλεξάνδρου Ανάβαση
Αρριανού Αλεξάνδρου ΑνάβασηΑρριανού Αλεξάνδρου Ανάβαση
Αρριανού Αλεξάνδρου Ανάβαση
 
5.η ρωμαϊκή αυτοκρατορία
5.η ρωμαϊκή αυτοκρατορία5.η ρωμαϊκή αυτοκρατορία
5.η ρωμαϊκή αυτοκρατορία
 
Ιστορία Α Γυμνασίου κεφάλαιο β κυκλαδικός πολιτισμός.
 Ιστορία Α Γυμνασίου κεφάλαιο β  κυκλαδικός πολιτισμός. Ιστορία Α Γυμνασίου κεφάλαιο β  κυκλαδικός πολιτισμός.
Ιστορία Α Γυμνασίου κεφάλαιο β κυκλαδικός πολιτισμός.
 
κλασικη εποχη σχεδιαγραμμα
κλασικη εποχη   σχεδιαγραμμακλασικη εποχη   σχεδιαγραμμα
κλασικη εποχη σχεδιαγραμμα
 
ΠΕΛΟΠΟΝΝΗΣΙΑΚΟΣ ΠΟΛΕΜΟΣ
ΠΕΛΟΠΟΝΝΗΣΙΑΚΟΣ ΠΟΛΕΜΟΣΠΕΛΟΠΟΝΝΗΣΙΑΚΟΣ ΠΟΛΕΜΟΣ
ΠΕΛΟΠΟΝΝΗΣΙΑΚΟΣ ΠΟΛΕΜΟΣ
 
Το Ημερολόγιο της Άννας Φρανκ
Το Ημερολόγιο της Άννας ΦρανκΤο Ημερολόγιο της Άννας Φρανκ
Το Ημερολόγιο της Άννας Φρανκ
 
EΛΕΝΗ ΤΟΥ ΕΥΡΙΠΙΔΗ ΣΕ ΚΟΜΙΚΣ
EΛΕΝΗ ΤΟΥ ΕΥΡΙΠΙΔΗ ΣΕ ΚΟΜΙΚΣEΛΕΝΗ ΤΟΥ ΕΥΡΙΠΙΔΗ ΣΕ ΚΟΜΙΚΣ
EΛΕΝΗ ΤΟΥ ΕΥΡΙΠΙΔΗ ΣΕ ΚΟΜΙΚΣ
 
Κυκλαδικός πολιτισμός
Κυκλαδικός πολιτισμόςΚυκλαδικός πολιτισμός
Κυκλαδικός πολιτισμός
 
Το εμπόριο και ο πολιτισμός του Ισλάμ.
Το εμπόριο και ο πολιτισμός του Ισλάμ.Το εμπόριο και ο πολιτισμός του Ισλάμ.
Το εμπόριο και ο πολιτισμός του Ισλάμ.
 
Θουκυδίδης "Περικλέους Επιτάφιος" : Κριτήρια αξιολόγησης Κ.Ε.Ε.
Θουκυδίδης "Περικλέους Επιτάφιος" : Κριτήρια αξιολόγησης Κ.Ε.Ε.Θουκυδίδης "Περικλέους Επιτάφιος" : Κριτήρια αξιολόγησης Κ.Ε.Ε.
Θουκυδίδης "Περικλέους Επιτάφιος" : Κριτήρια αξιολόγησης Κ.Ε.Ε.
 
η δίκη του θηραμένη
η δίκη του θηραμένηη δίκη του θηραμένη
η δίκη του θηραμένη
 
Ευριπίδη Ελένη, Β΄ επεισόδιο, 4η σκηνή, στ. 942-1139
Ευριπίδη Ελένη, Β΄ επεισόδιο, 4η σκηνή, στ. 942-1139Ευριπίδη Ελένη, Β΄ επεισόδιο, 4η σκηνή, στ. 942-1139
Ευριπίδη Ελένη, Β΄ επεισόδιο, 4η σκηνή, στ. 942-1139
 
A ΛΥΚΕΙΟΥ ΜΑΘΗΜΑ 13 ΠΕΡΣΙΚΟΙ ΠΟΛΕΜΟΙ
A ΛΥΚΕΙΟΥ ΜΑΘΗΜΑ 13 ΠΕΡΣΙΚΟΙ ΠΟΛΕΜΟΙA ΛΥΚΕΙΟΥ ΜΑΘΗΜΑ 13 ΠΕΡΣΙΚΟΙ ΠΟΛΕΜΟΙ
A ΛΥΚΕΙΟΥ ΜΑΘΗΜΑ 13 ΠΕΡΣΙΚΟΙ ΠΟΛΕΜΟΙ
 
3. Σπάρτη
3. Σπάρτη3. Σπάρτη
3. Σπάρτη
 
διδακτικο σεναριο ιστοριας α'λυκειου
διδακτικο σεναριο ιστοριας α'λυκειουδιδακτικο σεναριο ιστοριας α'λυκειου
διδακτικο σεναριο ιστοριας α'λυκειου
 
Η Λατινοκρατία στην Ελλάδα
Η Λατινοκρατία στην ΕλλάδαΗ Λατινοκρατία στην Ελλάδα
Η Λατινοκρατία στην Ελλάδα
 
1. η συμμαχια τησ δηλου . η συμμαχια οργανο τησ αθηναϊκησ ηγεμονιασ
1. η συμμαχια τησ δηλου . η συμμαχια οργανο τησ αθηναϊκησ ηγεμονιασ1. η συμμαχια τησ δηλου . η συμμαχια οργανο τησ αθηναϊκησ ηγεμονιασ
1. η συμμαχια τησ δηλου . η συμμαχια οργανο τησ αθηναϊκησ ηγεμονιασ
 
Αίγυπτος
ΑίγυπτοςΑίγυπτος
Αίγυπτος
 
Η λύση του Γόρδιου δεσμού
Η λύση του Γόρδιου δεσμούΗ λύση του Γόρδιου δεσμού
Η λύση του Γόρδιου δεσμού
 

Similar to Mικροεπεξεργαστές

Aρχιτεκτονική yπολογιστών i nikolos
Aρχιτεκτονική yπολογιστών i nikolosAρχιτεκτονική yπολογιστών i nikolos
Aρχιτεκτονική yπολογιστών i nikolos
Spyridon Athanasiadis
 
Εφαρμογες Γεωπληροφορικης στα Τεχνικα Εργα - 2η έκδοση
Εφαρμογες Γεωπληροφορικης στα Τεχνικα Εργα - 2η έκδοσηΕφαρμογες Γεωπληροφορικης στα Τεχνικα Εργα - 2η έκδοση
Εφαρμογες Γεωπληροφορικης στα Τεχνικα Εργα - 2η έκδοση
John Tzortzakis
 
τεχνολογίες διαδικτύου πανεπιστημιο πατρων
τεχνολογίες διαδικτύου πανεπιστημιο πατρωντεχνολογίες διαδικτύου πανεπιστημιο πατρων
τεχνολογίες διαδικτύου πανεπιστημιο πατρων
Maria Pappi
 
Δημιουργία Πλατφόρμας Διεξαγωγής Online Διαγωνισμών Προγραμματισμού
Δημιουργία Πλατφόρμας Διεξαγωγής Online Διαγωνισμών ΠρογραμματισμούΔημιουργία Πλατφόρμας Διεξαγωγής Online Διαγωνισμών Προγραμματισμού
Δημιουργία Πλατφόρμας Διεξαγωγής Online Διαγωνισμών Προγραμματισμού
Stesia Papavasileiou
 

Similar to Mικροεπεξεργαστές (20)

Aρχιτεκτονική yπολογιστών i nikolos
Aρχιτεκτονική yπολογιστών i nikolosAρχιτεκτονική yπολογιστών i nikolos
Aρχιτεκτονική yπολογιστών i nikolos
 
Book didaktiki pliroforikis
Book didaktiki pliroforikisBook didaktiki pliroforikis
Book didaktiki pliroforikis
 
Fortran notes panepistimio_kritis
Fortran notes panepistimio_kritisFortran notes panepistimio_kritis
Fortran notes panepistimio_kritis
 
Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ - Β' τάξη ΓΕΛ
Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ - Β' τάξη ΓΕΛΕισαγωγή στις Αρχές της Επιστήμης των Η/Υ - Β' τάξη ΓΕΛ
Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ - Β' τάξη ΓΕΛ
 
Εισαγωγή στις Αρχές της επιστήμης Υπολογιστών Β΄ Λυκείου(βιβλίο)
Εισαγωγή στις Αρχές της επιστήμης Υπολογιστών Β΄ Λυκείου(βιβλίο)Εισαγωγή στις Αρχές της επιστήμης Υπολογιστών Β΄ Λυκείου(βιβλίο)
Εισαγωγή στις Αρχές της επιστήμης Υπολογιστών Β΄ Λυκείου(βιβλίο)
 
Eisagogi epistimi ypologiston
Eisagogi epistimi ypologistonEisagogi epistimi ypologiston
Eisagogi epistimi ypologiston
 
Eisagogi epistimi ypologiston
Eisagogi epistimi ypologistonEisagogi epistimi ypologiston
Eisagogi epistimi ypologiston
 
Β ΕΠΑΛ ΒΙΒΛΙΟ - Eisagogi epistimi ypologiston
Β ΕΠΑΛ ΒΙΒΛΙΟ - Eisagogi epistimi ypologiston Β ΕΠΑΛ ΒΙΒΛΙΟ - Eisagogi epistimi ypologiston
Β ΕΠΑΛ ΒΙΒΛΙΟ - Eisagogi epistimi ypologiston
 
Τσικολάτας Α. (2009). Εργαλεία Διοικητικής Λογιστικής και Μέτρησης Απόδοσης. ...
Τσικολάτας Α. (2009). Εργαλεία Διοικητικής Λογιστικής και Μέτρησης Απόδοσης. ...Τσικολάτας Α. (2009). Εργαλεία Διοικητικής Λογιστικής και Μέτρησης Απόδοσης. ...
Τσικολάτας Α. (2009). Εργαλεία Διοικητικής Λογιστικής και Μέτρησης Απόδοσης. ...
 
Εφαρμογες Γεωπληροφορικης στα Τεχνικα Εργα - 2η έκδοση
Εφαρμογες Γεωπληροφορικης στα Τεχνικα Εργα - 2η έκδοσηΕφαρμογες Γεωπληροφορικης στα Τεχνικα Εργα - 2η έκδοση
Εφαρμογες Γεωπληροφορικης στα Τεχνικα Εργα - 2η έκδοση
 
Επιχειρηματικά μοντέλα για ευέλικτη παροχή υπηρεσιών σε δυναμικά αναπροσαρμοζ...
Επιχειρηματικά μοντέλα για ευέλικτη παροχή υπηρεσιών σε δυναμικά αναπροσαρμοζ...Επιχειρηματικά μοντέλα για ευέλικτη παροχή υπηρεσιών σε δυναμικά αναπροσαρμοζ...
Επιχειρηματικά μοντέλα για ευέλικτη παροχή υπηρεσιών σε δυναμικά αναπροσαρμοζ...
 
τεχνολογίες διαδικτύου πανεπιστημιο πατρων
τεχνολογίες διαδικτύου πανεπιστημιο πατρωντεχνολογίες διαδικτύου πανεπιστημιο πατρων
τεχνολογίες διαδικτύου πανεπιστημιο πατρων
 
Υπολογιστικη πολυπλοκοτητα
Υπολογιστικη πολυπλοκοτηταΥπολογιστικη πολυπλοκοτητα
Υπολογιστικη πολυπλοκοτητα
 
Website with Embedded Forum Construction
Website with Embedded Forum ConstructionWebsite with Embedded Forum Construction
Website with Embedded Forum Construction
 
μελέτη σύγκρισης των κυριότερων Open Source CMS
μελέτη σύγκρισης των κυριότερων Open Source CMSμελέτη σύγκρισης των κυριότερων Open Source CMS
μελέτη σύγκρισης των κυριότερων Open Source CMS
 
Semadic audio modeling nikolaidis dimitrios εργασια .up dated
Semadic audio modeling nikolaidis dimitrios εργασια .up datedSemadic audio modeling nikolaidis dimitrios εργασια .up dated
Semadic audio modeling nikolaidis dimitrios εργασια .up dated
 
αναφορά
αναφοράαναφορά
αναφορά
 
Δημιουργία Πλατφόρμας Διεξαγωγής Online Διαγωνισμών Προγραμματισμού
Δημιουργία Πλατφόρμας Διεξαγωγής Online Διαγωνισμών ΠρογραμματισμούΔημιουργία Πλατφόρμας Διεξαγωγής Online Διαγωνισμών Προγραμματισμού
Δημιουργία Πλατφόρμας Διεξαγωγής Online Διαγωνισμών Προγραμματισμού
 
Τσικολάτας Α. (2004). Ανάλυση Οικονομικών Καταστάσεων. Αριθμοδείκτες. Case St...
Τσικολάτας Α. (2004). Ανάλυση Οικονομικών Καταστάσεων. Αριθμοδείκτες. Case St...Τσικολάτας Α. (2004). Ανάλυση Οικονομικών Καταστάσεων. Αριθμοδείκτες. Case St...
Τσικολάτας Α. (2004). Ανάλυση Οικονομικών Καταστάσεων. Αριθμοδείκτες. Case St...
 
Python tutorial by example
Python tutorial by examplePython tutorial by example
Python tutorial by example
 

Mικροεπεξεργαστές

  • 2.
  • 3. ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Σχολή Θετικών Επιστηµών και Τεχνολογίας Πρόγραµµα Σπουδών ΠΛΗΡΟΦΟΡΙΚΗ Θεµατική Eνότητα ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Tόµος Γ' Mικροεπεξεργαστές ΓEΩPΓIOΣ AΛEΞIOY Kαθηγητής Tµήµατος Mηχανικών H/Y & Πληροφορικής Πανεπιστηµίου Πατρών ΠATPA 2001
  • 4. ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Σχολή Θετικών Επιστηµών και Τεχνολογίας Πρόγραµµα Σπουδών ΠΛHPOΦOPIKH Θεµατική Ενότητα ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Τόµος Γ' Mικροεπεξεργαστές Συγγραφή ΓEΩPΓIOΣ AΛEΞIOY Kαθηγητής Tµήµατος Mηχανικών H/Y & Πληροφορικής Πανεπιστηµίου Πατρών Κριτική Ανάγνωση ANTΩNHΣ ΠAΣXAΛHΣ Eπίκουρος Kαθηγητής Tµήµατος Πληροφορικής & Tηλεπικοινωνιών Πανεπιστηµίου Aθηνών Ακαδηµαϊκός Υπεύθυνος για την επιστηµονική επιµέλεια του τόµου ΣΩKPATHΣ KATΣIKAΣ Καθηγητής Tµήµατος Mαθηµατικών Πανεπιστηµίου Aιγαίου Επιµέλεια στη µέθοδο της εκπαίδευσης από απόσταση ΓEPAΣIMOΣ MΩPAΊTHΣ Γλωσσική Επιµέλεια EΛΠI∆A BAKAΛOΓΛOY Τεχνική Επιµέλεια ΕΣΠΙ ΕΚ∆ΟΤΙΚΗ Ε.Π.Ε. Καλλιτεχνική Επιµέλεια – Σελιδοποίηση TYPORAMA Συντονισµός ανάπτυξης εκπαιδευτικού υλικού και γενική επιµέλεια των εκδόσεων ΟΜΑ∆Α ΕΚΤΕΛΕΣΗΣ ΕΡΓΟΥ ΕΑΠ / 2001 ISBN: 960–538–197–4 Kωδικός Έκδοσης: ΠΛH 21/3 Copyright 2000 για την Ελλάδα και όλο τον κόσµο ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Οδός Παπαφλέσσα & Υψηλάντη, 26222 Πάτρα – Τηλ: (0610) 314094, 314206 Φαξ: (0610) 317244 Σύµφωνα µε το Ν. 2121/1993, απαγορεύεται η συνολική ή αποσπασµατική αναδηµοσίευση του βιβλίου αυτού ή η αναπαραγωγή του µε οποιοδήποτε µέσο χωρίς την άδεια του εκδότη.
  • 5. ¶ÂÚȯfiÌÂÓ· K ∂ º ∞ § ∞ π √ 1 EÈÛ·ÁˆÁ‹ Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά Eισαγωγικές παρατηρήσεις ............................................................................................................... 11 1.1 H ανάγκη: Έξυπνα, ευέλικτα συστήµατα µε µικρό µέγεθος .............. 13 1.2 O τρόπος: Oλοκληρωµένα κυκλώµατα ................................................................ 13 1.3 Tο αποτέλεσµα: H εµφάνιση των µικρο–επεξεργαστών ....................... 18 1.4 Mικροϋπολογιστές και µικροεπεξεργαστές ...................................................... 19 1.5 Iστορική αναδροµή ................................................................................................................ 24 Σύνοψη .............................................................................................................................................................. 26 Bιβλιογραφία ................................................................................................................................................ 27 K ∂ º ∞ § ∞ π √ 2 OÈ MÈÎÚÔÂÂÍÂÚÁ·ÛÙ¤˜ Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά Eισαγωγικές παρατηρήσεις ............................................................................................................... 29 2.1 H Aρχιτεκτονική των µικροεπεξεργαστών......................................................... 31 2.1.1 Aριθµητική και λογική µονάδα ..................................................................... 31 2.1.2 Mονάδα ελέγχου ......................................................................................................... 33 2.1.3 Kαταχωρητές ................................................................................................................. 35 2.2 Oι δίαυλοι διευθύνσεων/δεδοµένων/ελέγχου .................................................. 37 2.3 O χρονισµός των εντολών (κύκλος εντολής–µηχανής–ρολογιού) 41 2.4 Tο σύνολο εντολών του µικροεπεξεργαστή ..................................................... 46 2.5 Oι τρόποι διευθυνσιοδότησης των εντολών Σκοπός, Προσδοκώµενα αποτελέσµατα, Eισαγωγικές παρατηρήσεις ........... 53 Σύνοψη .............................................................................................................................................................. 58 2.6 Tι πρέπει να γνωρίζουµε για ένα µικροεπεξεργαστή ................................ 63 Σύνοψη .............................................................................................................................................................. 65 Bιβλιογραφία ................................................................................................................................................ 67
  • 6. 6 M π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ∂ ™ K ∂ º ∞ § ∞ π √ 3 O MÈÎÚÔÂÂÍÂÚÁ·ÛÙ‹˜ Intel 8080/8085 Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά Eισαγωγικές παρατηρήσεις ............................................................................................................... 69 3.1 H αρχιτεκτονική του 8080................................................................................................. 71 3.1.1 Γενικά χαρακτηριστικά ......................................................................................... 71 3.1.2 Oι καταχωρητές του 8080 .................................................................................. 73 3.1.3 Aκροδέκτες και σήµατα ....................................................................................... 75 3.2 Kύκλοι µηχανής και σήµατα κατάστασης .......................................................... 78 3.3 H χρονική ακολουθία εκτέλεσης εντολών Σκοπός, Προσδοκώµενα αποτελέσµατα, Eισαγωγικές παρατηρήσεις ........... 82 3.4 Oι καταστάσεις Wait, Hold & Halt Σκοπός, Προσδοκώµενα αποτελέσµατα, Eισαγωγικές παρατηρήσεις ........... 87 3.5 H αρχικοποίηση του 8080 ................................................................................................ 92 3.6 Oι διακοπίες στον 8080 ...................................................................................................... 92 3.7 Tρόποι διευθυνσιοδότησης – Σύνολο εντολών ............................................. 96 3.8 Συσκευές υποστήριξης ........................................................................................................ 97 3.9 ∆ιαφορές του 8080 µε τον 8085 .............................................................................. 100 Σύνοψη ........................................................................................................................................................... 102 Bιβλιογραφία ............................................................................................................................................. 104 K ∂ º ∞ § ∞ π √ 4 O MÈÎÚÔÂÂÍÂÚÁ·ÛÙ‹˜ Motorola 6800 Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά Eισαγωγικές παρατηρήσεις ............................................................................................................ 105 4.1 H αρχιτεκτονική του 6800 ............................................................................................ 107 4.1.1 Γενικά χαρακτηριστικά ...................................................................................... 107 4.1.2 Oι καταχωρητές του 6800 ............................................................................... 109 4.1.3 Aκροδέκτες και σήµατα .................................................................................... 111 4.2 Xρονισµός του 6800 – Xρονική ακολουθία εκτέλεσης εντολών Σκοπός, Προσδοκώµενα αποτελέσµατα, Eισαγωγικές παρατηρήσεις ........ 115 4.3 Oι καταστάσεις Wait, Hold & Halt ........................................................................ 119 4.4 Oι διακοπές στον 6800 ..................................................................................................... 123 4.5 Σύνολο εντολών – Tρόποι διευθυνσιοδότησης .......................................... 125 4.6 Σύγκριση του 6800 µε τον 8080/8085 ................................................................ 128 Σύνοψη ........................................................................................................................................................... 130
  • 7. Bιβλιογραφία ............................................................................................................................................. 132 K ∂ º ∞ § ∞ π √ 5 O MÈÎÚÔÂÂÍÂÚÁ·ÛÙ‹˜ Intel 8086/8088 Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά Eισαγωγικές παρατηρήσεις ............................................................................................................ 133 5.1 H αρχιτεκτονική του 8086 Σκοπός, Προσδοκώµενα αποτελέσµατα, Eισαγωγικές παρατηρήσεις ........ 135 5.1.1 Γενικά χαρακτηριστικά ...................................................................................... 135 5.1.2 H οργάνωση της µνήµης .................................................................................. 138 5.1.3 Oι καταχωρητές του 8086 ............................................................................... 140 5.1.4 Aκροδέκτες και σήµατα .................................................................................... 142 Σύνοψη ........................................................................................................................................................... 144 5.2 O χρονισµός του 8086 ...................................................................................................... 145 5.3 H αρχικοποίηση και οι διακοπές του 8086 ..................................................... 147 5.4 Tο σύνολο εντολών και οι τρόποι διευθυνσιοδότησης Σκοπός, Προσδοκώµενα αποτελέσµατα, Eισαγωγικές παρατηρήσεις ........ 149 Σύνοψη ........................................................................................................................................................... 152 Bιβλιογραφία ............................................................................................................................................. 154 K ∂ º ∞ § ∞ π √ 6 OÏÔÎÏËڈ̤ӷ MÈÎÚÔ¸ÔÏÔÁÈÛÙÈο ™˘ÛÙ‹Ì·Ù· Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά Eισαγωγικές παρατηρήσεις ............................................................................................................ 155 6.1 Bασικές αρχές – Συσκευές διασύνδεσης .......................................................... 157 6.2 ∆ιασύνδεση µνηµών Rom ............................................................................................. 158 6.3 ∆ιασύνδεση µνηµών Ram ............................................................................................. 161 6.4 ∆ιασύνδεση συσκευών εισόδου / εξόδου Σκοπός, Προσδοκώµενα αποτελέσµατα, Eισαγωγικές παρατηρήσεις ........ 163 6.5 Συστήµατα ανάπτυξης µικροϋπολογιστικών συστηµάτων .............. 170 Σύνοψη ........................................................................................................................................................... 170 Bιβλιογραφία ............................................................................................................................................. 172 7¶ E P I E X O M E N A
  • 8. K ∂ º ∞ § ∞ π √ 7 E›ÏÔÁÔ˜: ™‡Á¯ÚÔÓ˜ T¿ÛÂȘ ™¯Â‰È·ÛÌÔ‡ MÈÎÚÔÂÂÍÂÚÁ·ÛÙÒÓ Σκοπός, Προσδοκώµενα αποτελέσµατα, Έννοιες κλειδιά Eισαγωγικές παρατηρήσεις ............................................................................................................ 173 7.1 H εξέλιξη των µικροεπεξεργαστών – Σύγχρονα κυκλώµατα ......... 174 Σύνοψη ........................................................................................................................................................... 176 Aπαντήσεις Aσκήσεων Aυτοαξιολόγησης ..................................................................... 177 Eνδεικτικές Aπαντήσεις ∆ραστηριοτήτων ..................................................................... 203 Γλωσσάρι ..................................................................................................................................................... 208
  • 9. ¶ÚfiÏÔÁÔ˜ Tο βιβλίο αυτό γράφτηκε για να καλύψει τις ανάγκες του µαθήµατος «Mικροεπεξεργαστές» του Eλληνικού Aνοικτού Πανεπιστηµίου. Bασίστηκε κυρίως στη σειρά των περισσότερων από δέκα χρόνων διδασκα- λίας του αντίστοιχου µαθήµατος στο τµήµα Mηχανικών Hλεκτρονικών Yπο- λογιστών και Πληροφορικής του Πανεπιστηµίου Πατρών και επιπλέον στις αρχές της «Aνοικτής και εξ αποστάσεως Eκπαίδευσης», όπως αυτές έχουν διαµορφωθεί τα τελευταία χρόνια στην Eλληνική πραγµατικότητα µε βάση και τη διεθνή εµπειρία και πρακτική. Στο βιβλίο περιλαµβάνεται αρχικά µια εισαγωγική ιστορική αναδροµή για τους Mικροεπεξεργαστές και τη Mικροηλεκτρονική από την εµφάνισή τους µέχρι σήµερα. Aκολουθούν βασικά στοιχεία αρχιτεκτονικής και προγραµ- µατισµού των Mικροεπεξεργαστών. Στη συνέχεια παρατίθενται, όσο γίνεται πιο αναλυτικά, οι δύο κυριότερες οικογένειες µικροεπεξεργαστών των 8 bits, της INTEL και της MOTOROLA. Στο επόµενο κεφάλαιο ασχολούµαστε µε τους µικροεπεξερ- γαστές των 16 bits µε την παρουσίαση του αντιπροσωπευτικότερου του είδους 8086 της INTEL. Στο τελευταίο κεφάλαιο δίνονται οι βασικές αρχές και η µεθοδολογία σχεδιασµού συστηµάτων βασισµένων στους µικροεπε- ξεργαστές και τις περιφερειακές συσκευές τους. Tο βιβλίο έχει σαν επίλογο µια σύντοµη αναφορά στις σύγχρονες τάσεις σχε- διασµού µικροεπεξεργαστών. Tελειώνοντας, θέλω να ευχαριστήσω όλους όσους, έµµεσα ή άµεσα, βοή- θησαν στο γράψιµο αυτού του βιβλίου, τους φοιτητές µου, τους κριτικούς αναγνώστες και ιδιαίτερα τον συνεργάτη µου ∆ηµήτρη Mπακάλη, Mηχανι- κό H/Y και Πληροφορικής, για την πολύ σηµαντική του βοήθεια σε όλο το διάστηµα των σχεδόν δύο χρόνων ενασχόλησης µε αυτό το βιβλίο. Γ.Φ. Aλεξίου Πάτρα 2000
  • 10.
  • 11. EÈÛ·ÁˆÁ‹ ™ÎÔfi˜ Μελετώντας αυτό το κεφάλαιο θα γνωρίσετε τις ανάγκες που επέβαλαν την εµφάνιση των µικροεπεξεργαστών, τις τεχνολογικές εξελίξεις, που έκαναν εφικτή αυτή την εµφάνιση, καθώς και τη ραγδαία εξέλιξή τους µέσα από µία µικρή ιστορική αναδροµή από τον πρώτο µικροεπεξεργαστή µέχρι σήµερα. ¶ÚÔÛ‰ÔÎÒÌÂÓ· ·ÔÙÂϤÛÌ·Ù· Όταν θα ολοκληρώσετε τη µελέτη αυτού του κεφαλαίου, θα είστε σε θέση να: • αναφέρετε τη βασική ανάγκη, η οποία οδήγησε στην ανάπτυξη των µικρο- επεξεργαστών. • δώσετε τουλάχιστον τρία παραδείγµατα εφαρµογών, τα οποία απαιτούν τη χρήση µικροεπεξεργαστή. • ορίσετε τι είναι και από τι αποτελούνται τα ολοκληρωµένα κυκλώµατα. • περιγράψετε πέντε κατηγορίες των ολοκληρωµένων κυκλωµάτων ως προς το µέγεθός τους και το πλήθος των τρανσίστορς, που περιέχουν. • δώσετε τα τέσσερα κυριότερα πλεονεκτήµατα, που έχουν τα ολοκληρωµέ- να κυκλώµατα. • περιγράψετε τα έξι βασικά βήµατα που απαιτούνται για την κατασκευή τους. • απαριθµήσετε τις βασικές χρονολογίες–σταθµούς στην ιστορία των µικρο- επεξεργαστών. • δώσετε τον ορισµό ενός µικροϋπολογιστικού συστήµατος και να περιγρά- ψετε τα τρία βασικά τµήµατα, από τα οποία αποτελείται. • δώσετε τον ορισµό ενός µικροεπεξεργαστή και να αναφέρετε τα τρία βασι- κά του τµήµατα. • περιγράψετε τους τρεις διαύλους επικοινωνίας, που συναντάµε σ’ ένα µικροϋπολογιστικό σύστηµα. • ορίσετε τη γενική µορφή των εντολών, τις οποίες καταλαβαίνει ένας µικρο- επεξεργαστής. ŒÓÓÔȘ ÎÏÂȉȿ 1∫ ∂ º ∞ § ∞ π √ • ∆ίαυλος ∆εδοµένων • ∆ίαυλος ∆ιευθύνσεων • ∆ίαυλος Ελέγχου. • Μικροεπεξεργαστής • Μικροϋπολογιστής • Ολοκληρωµένο Κύκλωµα
  • 12. 1 2 K E º A § A I O 1 : E I ™ A ° ø ° H ∂ÈÛ·ÁˆÁÈΤ˜ ·Ú·ÙËÚ‹ÛÂȘ Το πρώτο κεφάλαιο του βιβλίου αποτελεί µια µικρή εισαγωγή στον κόσµο των µικροϋπολογιστών και των µικροεπεξεργαστών. Ως τέτοιο, δεν περιέχει δυσκολονόητες έννοιες, αλλά σας προετοιµάζει για τα κεφάλαια που θα ακο- λουθήσουν. Θα πρέπει να δώσετε ιδιαίτερη προσοχή στην ενότητα 1.4, στην οποία ανα- φέρονται βασικές έννοιες, οι οποίες θα αναλυθούν µε µεγάλη λεπτοµέρεια στο κεφάλαιο 2.
  • 13. 1.1 H AÓ¿ÁÎË: ŒÍ˘Ó·, ¢¤ÏÈÎÙ· Û˘ÛÙ‹Ì·Ù· Ì ÌÈÎÚfi ̤ÁÂıÔ˜ Καθώς οι υπολογιστές εξελίσσονταν, ένα από τα πιο σηµαντικά προβλήµα- τα που παρουσιάστηκαν ήταν το πώς θα µπορούσαν να χρησιµοποιηθούν σε όσο το δυνατόν περισσότερες καθηµερινές εφαρµογές. Πολλές συσκευές (ηλεκτρικές συσκευές, συσκευές ελέγχου µηχανών, συστήµατα σηµατοδό- τησης) θα µπορούσαν να γίνουν πολύ πιο αποδοτικές και λειτουργικές, εάν µπορούσαν να χρησιµοποιήσουν την «ευφυΐα» και την ευκολία, µε την οποία κάνουν πράξεις οι υπολογιστές. Φυσικά, ήταν αδύνατο να δεσµευτεί ένας µεγάλος ή έστω ένας µεσαίων δυνατοτήτων υπολογιστής σ’ αυτού του είδους τις εφαρµογές κυρίως λόγω του υπερβολικού τους µεγέθους και κόστους. Το ζητούµενο, λοιπόν, ήταν να κατασκευασθεί ένα σύστηµα που να περιέ- χει τόσο τα κυκλώµατα όσο και τη βασική λογική (πρόγραµµα) έτσι ώστε να µπορεί να αντεπεξέλθει στο σύνολο των απαιτούµενων εφαρµογών. Συνεπώς, η λύση θα ήταν ένας ολοκληρωµένος αυτοδύναµος υπολογιστής µέσα σ’ ένα µοναδικό ολοκληρωµένο κύκλωµα, ο οποίος θα έπρεπε να είχε τη δυνατότητα αποθήκευσης προγραµµάτων και εκτέλεσης σύνθετων µαθη- µατικών πράξεων. Βέβαια, όπως συνήθως γίνεται, οι απαιτήσεις της βιοµηχανίας και οι δυνα- τότητες των σχεδιαστών υπολογιστών ήταν αδύνατο να γεφυρωθούν. Φυσι- κά ήταν δυνατό να δοθεί λύση σε µερικές από τις απαιτήσεις, αλλά η κατα- σκευή ενός υπολογιστή πάνω σ’ ένα µοναδικό ολοκληρωµένο κύκλωµα φαι- νόταν σαν µία µακρινή επιδίωξη. Τη λύση φάνηκε να τη δίνει η τεχνολογία ολοκληρωµένων κυκλωµάτων, όταν µπόρεσε να τοποθετήσει χιλιάδες κυκλώµατα πάνω σε µια πολύ µικρή επιφάνεια. 1.2 O TÚfiÔ˜: OÏÔÎÏËڈ̤ӷ ΢ÎÏÒÌ·Ù· Όλα τα λογικά κυκλώµατα σήµερα κατασκευάζονται µε τη µορφή ολοκλη- ρωµένων κυκλωµάτων (integrated circuits, ICs). Τα ολοκληρωµένα κυκλώ- µατα αποτελούνται από ένα κοµµάτι αγώγιµου υλικού (πυριτίου), πάνω στο οποίο έχει δηµιουργηθεί το κύκλωµα, το οποίο επιθυµούµε, µε τρανσίστορς (transistors), διόδους, αντιστάσεις και πυκνωτές. Το κοµµάτι αυτό του πυρι- τίου προστατεύεται από πλαστικό ή κεραµικό περίβληµα, ενώ οι είσοδοι και οι έξοδοι του κυκλώµατος καταλήγουν σε µεταλλικές επαφές εκτός περι- βλήµατος, που ονοµάζονται ακροδέκτες (pins). Η µορφή ενός ολοκληρωµέ- νου κυκλώµατος φαίνεται στο σχήµα 1.1. 1 31 . 1 H A ¡ ∞ ° ∫ ∏ : ∂ • À ¶ ¡ ∞ , ∂ À ∂ § π ∫ ∆∞ ™ À ™ ∆ ∏ ª ∞∆∞ ª ∂ ª π ∫ ƒ √ ª ∂ ° ∂ £ √ ™
  • 14. 1 4 K E º A § A I O 1 : E I ™ A ° ø ° H Τα κυριότερα πλεονεκτήµατα, που έχουν τα ολοκληρωµένα κυκλώµατα, είναι το µικρό µέγεθός τους, η µικρή κατανάλωση ισχύος, το µικρό κόστος και η µεγάλη αξιοπιστία τους. ∆είκτης αρίθµησης∆είκτες αρίθµησης (α) Mικροεπεξεργαστής 40-pin DIP σε πλαστικό περίβληµα (β) Mικροεπεξεργαστής 40-pin DIP σε κεραµικό περίβληµα (γ) H αρίθµηση των ακροδεκτών σε πλαστικό περίβληµα (δ) H αρίθµηση των ακροδεκτών σε κεραµικό περίβληµα 40 21 1 20 40 21 1 20 ™¯‹Ì· 1.1 Η µορφή των ολοκληρωµένων κυκλωµάτων των µικροεπεξεργαστών Τα ολοκληρωµένα κυκλώµατα χωρίζονται σε κατηγορίες ανάλογα µε τον αριθµό των τρανσίστορς, που περιέχονται πάνω στην επιφάνεια του αγώγι- µου υλικού. Σε γενικές γραµµές διαχωρίζονται ως εξής: • Κυκλώµατα µικρής κλίµακας ολοκλήρωσης (Small Scale Integration ή SSI), που περιέχουν µερικά µόνο τρανσίστορς. • Κυκλώµατα µεσαίας κλίµακας ολοκλήρωσης (Medium Scale Integration ή MSI), που περιέχουν από µερικές δεκάδες µέχρι εκατοντάδες τρανσίστορς. • Κυκλώµατα µεγάλης κλίµακας ολοκλήρωσης (Large Scale Integration ή LSI), που περιέχουν από µερικές εκατοντάδες έως χιλιάδες τρανσίστορς. • Κυκλώµατα πολύ µεγάλης κλίµακας ολοκλήρωσης (Very Large Scale Integration ή VLSI), που περιέχουν από µερικές χιλιάδες έως εκατοντά- δες χιλιάδες τρανσίστορς.
  • 15. • Κυκλώµατα εξαιρετικά υψηλής κλίµακας ολοκλήρωσης (Ultra Large Scale Integration ή ULSI), που περιέχουν από ένα εκατοµµύριο τρανσίστορς και πάνω. Καθώς ο αριθµός των τρανσίστορς, που περικλείονται σε µια επιφάνεια ενός ολοκληρωµένου κυκλώµατος, είναι τροµακτικά µεγάλος, είναι αδύνατη πλέον η σχεδίασή του χωρίς τη χρήση υπολογιστή. Κατά τη διάρκεια σχε- δίασης, ο σχεδιαστής χρησιµοποιεί έναν τερµατικό σταθµό για να σχεδιάσει σε αυτόν το γράφηµα του λογικού κυκλώµατος, που θα αποτυπωθεί πάνω στην επιφάνεια πυριτίου. Κατόπιν, µε τη βοήθεια ειδικών προγραµµάτων αποθηκευµένων στον υπολογιστή και ειδικών εργαλείων, το γράφηµα αυτό θα σχηµατιστεί πάνω στην επιφάνεια του ολοκληρωµένου κυκλώµατος. Μετά το τέλος της διαδικασίας σχεδιασµού, ακολουθεί η διαδικασία παρα- γωγής και ελέγχου ορθής λειτουργίας του ολοκληρωµένου κυκλώµατος. Τα ολοκληρωµένα κυκλώµατα κατασκευάζονται σε δεκάδες ή εκατοντάδες, ανά- λογα µε το µέγεθός τους, πάνω σε ένα δίσκο πυριτίου, ο οποίος ονοµάζεται wafer (παρατηρήστε το σχήµα 1.2). Το wafer περιέχει εκτός από τα κυκλώ- µατα, τα οποία επιθυµούµε να κατασκευάσουµε, και κυκλώµατα ελέγχου της διαδικασίας (test structures). Τα κυκλώµατα αυτά έχουν ως στόχο την παρα- κολούθηση της διαδικασίας παραγωγής από τον κατασκευαστή και τον έλεγ- χο ποιότητας του αποτελέσµατος. Σε περίπτωση, που κάποια κυκλώµατα ελέγχου δείξουν προβληµατική συµπεριφορά, αυτόµατα σταµατάει η διαδι- κασία και o δίσκος πυριτίου απορρίπτεται. Το πρώτο βήµα που έχουµε εποµένως είναι η κατασκευή του δίσκου πυριτί- ου. Η διαδικασία αποτύπωσης των κυκλωµάτων πάνω σε αυτόν ακολουθεί διάφορα στάδια. Αρχικά έχουµε την κατασκευή µιας απόλυτα καθαρής ηµια- γώγιµης επιφάνειας, στην οποία υπεισάγονται προσµίξεις µε τη βοήθεια ενός µονωτικού επιστρώµατος οξειδίου για να αποδοθούν οι απαραίτητες ηλε- κτρικές ιδιότητες. Πάνω στην επιφάνεια αυτή επιτίθεται προστατευτικό επί- χρισµα και εκτίθεται σε ακτινοβολία µέσω µασκών, µετά καθαρίζεται, χαράσσεται µε οξέα, προστίθενται καινούργιες προσµίξεις και η διαδικασία αυτή επαναλαµβάνεται µέχρις ότου χαραχτούν όλα τα κυκλώµατα. Το επόµενο βήµα είναι ο έλεγχος των πλακιδίων (dies), που παράγονται. Η διαδικασία ελέγχου βασίζεται στην εφαρµογή σηµάτων ελέγχου στα σηµεία των εξωτερικών συνδεσµολογιών κάθε πλακιδίου. Όσα δεν έχουν σωστή απόκριση, σηµειώνονται ως ελαττωµατικά. 1 51 . 2 O T ƒ √ ¶ √ ™ : O § √ ∫ § ∏ ƒ ø ª ∂ ¡ ∞ ∫ À ∫ § ø ª ∞∆∞
  • 16. 1 6 K E º A § A I O 1 : E I ™ A ° ø ° H Στη συνέχεια, όπως φαίνεται στο σχήµα 1.3, οι δίσκοι πυριτίου κόβονται στα επιµέρους τµήµατα, που είναι τα ολοκληρωµένα κυκλώµατα, και τα ελατ- τωµατικά απορρίπτονται. Το κάθε ολοκληρωµένο κύκλωµα, που προκύπτει, ™¯‹Ì· 1.2 Η διαδικασία κατασκευής των ολοκληρωµένων κυκλωµάτων
  • 17. τοποθετείται σε µία βάση (πλαστικό ή κεραµικό περίβληµα) και οι γραµµές, που έχει, συνδέονται µε χρυσά σύρµατα στους ακροδέκτες της βάσης. Τέλος τοποθετείται το πάνω µέρος του περιβλήµατος και τα ολοκληρωµένα κυκλώ- µατα είναι έτοιµα. 1 71 . 2 O T ƒ √ ¶ √ ™ : O § √ ∫ § ∏ ƒ ø ª ∂ ¡ ∞ ∫ À ∫ § ø ª ∞∆∞ ™¯‹Ì· 1.3 Η κοπή των πλακιδίων από το δίσκο πυριτίου Μετά από το σηµείο αυτό γίνεται και ο τελικός έλεγχος των ολοκληρωµένων κυκλωµάτων σχετικά µε την τήρηση των προδιαγραφών λειτουργίας τους και την τήρηση των ζητούµενων χαρακτηριστικών. Τι είναι τα ολοκληρωµένα κυκλώµατα; Από τι αποτελούνται; ÕÛÎËÛË ∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 1.1
  • 18. 1 8 K E º A § A I O 1 : E I ™ A ° ø ° H 1.3 TÔ AÔÙ¤ÏÂÛÌ·: H ÂÌÊ¿ÓÈÛË ÙˆÓ ÌÈÎÚÔ–ÂÂÍÂÚÁ·ÛÙÒÓ Το αποτέλεσµα της εµφάνισης της τεχνολογίας των ολοκληρωµένων κυκλω- µάτων ήταν η ενσωµάτωση σε ένα µόνο ολοκληρωµένο κύκλωµα όλης της κεντρικής µονάδας επεξεργασίας, η οποία βέβαια θα έπρεπε να προγραµµα- τίζεται για να περιέχει τις βασικότερες λειτουργίες ενός ψηφιακού υπολογι- στή. Το κύκλωµα αυτό ονοµάστηκε µικροεπεξεργαστής. Η µνήµη του βρί- σκεται σε αρκετά ολοκληρωµένα κυκλώµατα περιορισµένων αποθηκευτι- κών δυνατοτήτων, τα οποία το συνοδεύουν. Επίσης υποστηρίζεται και από µια πλειάδα α) ολοκληρωµένων κυκλωµάτων για να διασυνδέεται κατάλλη- λα και µε τον εξωτερικό κόσµο µια και δεν έχει ενσωµατωµένες αυτές τις δυνατότητες και β) ολοκληρωµένων κυκλωµάτων, που επιτελούν τις λει- τουργίες χρονισµού και προώθησης δεδοµένων στον τελικό τους προορισµό. Η ανάπτυξη της τεχνολογίας των ολοκληρωµένων κυκλωµάτων τις τελευταίες δεκαετίες έδωσε τη δυνατότητα να µπορούν να ενσωµατωθούν σε ένα ολο- κληρωµένο κύκλωµα όλο και πιο πολύπλοκα κυκλώµατα (από τον πρώτο Αντιστοιχίστε τις κατηγορίες των ολοκληρωµένων κυκλωµάτων µε τον αριθµό των τρανσίστορς, τα οποία περιέχουν: SSI µεταξύ 10 και 100 MSI λιγότερα από 10 LSI µεταξύ 10.000 και 1.000.000 VLSI πάνω από 1.000.000 ULSI µεταξύ 100 και 10.000 ÕÛÎËÛË ∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 1.2 Αναφέρετε ποια είναι τα τέσσερα κυριότερα πλεονεκτήµατα των ολοκλη- ρωµένων κυκλωµάτων. ÕÛÎËÛË ∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 1.3 Απαριθµήστε τα βασικά βήµατα στη διαδικασία κατασκευής ενός ολο- κληρωµένου κυκλώµατος. ÕÛÎËÛË ∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 1.4
  • 19. µικροεπεξεργαστή, που είχε 2 χιλιάδες τρανσίστορς, έχουµε φτάσει πλέον σε επεξεργαστές µε πάνω από 7 εκατοµµύρια τρανσίστορς σε ένα και µόνο ολο- κληρωµένο κύκλωµα) µε αποτέλεσµα τη γρήγορη ανάπτυξη των µικροεπεξερ- γαστών και την ολοένα και πιο συχνή χρήση τους τόσο σε πολύπλοκες υπολο- γιστικές συσκευές όσο και σε απλές οικιακές συσκευές ή συστήµατα ελέγχου. 1.4 MÈÎÚÔ¸ÔÏÔÁÈÛÙ¤˜ Î·È ÌÈÎÚÔÂÂÍÂÚÁ·ÛÙ¤˜ Η οργάνωση των µικροϋπολογιστικών συστηµάτων είναι παρόµοια µε εκεί- νη των κλασικών υπολογιστικών συστηµάτων (main frame, mini). Αποτε- λούνται, όπως µπορείτε να παρατηρήσετε στο σχήµα 1.4, από τις παρακάτω λειτουργικές µονάδες: • Mονάδες εισόδου/εξόδου, µε τις οποίες το σύστηµα επικοινωνεί µε το εξω- τερικό του περιβάλλον. • Tο µικροεπεξεργαστή (ή αλλιώς κεντρική µονάδα επεξεργασίας), η οποία περιλαµβάνει την αριθµητική και λογική µονάδα, που επεξεργάζεται τα δεδοµένα, τη µονάδα ελέγχου, που είναι υπεύθυνη για τον έλεγχο και το συντονισµό όλων των µονάδων του συστήµατος, και τους καταχωρητές, που χρησιµεύουν για προσωρινή αποθήκευση. • Tην κύρια µνήµη, που χρησιµεύει για την αποθήκευση των εντολών του προ- γράµµατος, των αρχικών δεδοµένων και των ενδιάµεσων αποτελεσµάτων. 1 91 . 4 M π ∫ ƒ √ À ¶ √ § √ ° π ™ ∆ ∂ ™ ∫ ∞ π ª π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ∂ ™ EIΣO∆OΣ INPUT EΞO∆OΣ OUTPUT KME (CPU) Mονάδα ελέγχου + Aριθµητική λογική µονάδα (Control + arithmetic) Mνήµη προγράµµατος Mνήµη δεδοµένων Mνήµη (Memory) ™¯‹Ì· 1.4 Ένα τυπικό µικροϋπολογι- στικό σύστηµα Τα µηχανικά και ηλεκτρονικά µέρη του µικροϋπολογιστικού συστήµατος αποτελούν το υλικό (hardware), ενώ το σύνολο των προγραµµάτων και εντο-
  • 20. 2 0 K E º A § A I O 1 : E I ™ A ° ø ° H λών που κατευθύνουν τη λειτουργία του αποτελούν το λογισµικό (software). Ο συνδυασµός υλικού και λογισµικού αναφέρεται µερικές φορές σαν υλικο- λογισµικό (firmware). Το ιδιαίτερο χαρακτηριστικό σε σχέση µε άλλα υπολογιστικά συστήµατα είναι ότι ολόκληρη η µονάδα επεξεργασίας περιέχεται σε ένα ολοκληρωµέ- νο κύκλωµα, που κατασκευάζεται σε ένα µικρό κοµµάτι πυριτίου και ανα- φέρεται σαν µικροεπεξεργαστής. Η ενσωµάτωση όλων των στοιχείων της κεντρικής µονάδας επεξεργασίας σε ένα µόνο ολοκληρωµένο κύκλωµα, συν- δυάζει τα πλεονεκτήµατα του µικρού µεγέθους, της υψηλής αξιοπιστίας και του χαµηλού κόστους. Ο µικροεπεξεργαστής συνδέεται κατάλληλα µε τα ολοκληρωµένα κυκλώµατα της µνήµης και των µονάδων εισόδου/εξόδου, για να αποτελέσει το υπολογιστικό σύστηµα που ονοµάζουµε µικροϋπολογι- στή ή µικροϋπολογιστικό σύστηµα. Eίσοδοι Input(s) Έξοδοι Output(s) Mικροεπεξεργαστής CPU control + arithmetic Mνήµη προγράµµατος Mνήµη δεδοµένων Γραµµέςελέγχου ∆ίαυλοςδιευθύνσεων(16γραµµές) ∆ίαυλοςδιεδοµένων(8γραµµές) ™¯‹Ì· 1.5 Οι δίαυλοι επικοινωνίας του µικροϋπολογιστή
  • 21. Θα πρέπει να αναφέρουµε επίσης ότι και οι µικροεπεξεργαστές, όπως άλλω- στε και όλα τα λογικά κυκλώµατα, λειτουργούν µε βάση τη δυαδική λογική, όπου µε τη βοήθεια δύο µόνο λογικών καταστάσεων (λογικό 0 και λογικό 1), που αναπαρίστανται µε επίπεδα ηλεκτρικών τάσεων, εκτελούν όλες τις αριθ- µητικές πράξεις. Η τεχνική αυτή επιβλήθηκε για λόγους τεχνολογικής αξιο- πιστίας. Έτσι οι πληροφορίες που ανταλλάσσει ο µικροεπεξεργαστής µε τη µνήµη και τις µονάδες εισόδου/εξόδου είναι συνδυασµοί δυαδικών ψηφίων. Η µεταφορά της δυαδικής πληροφορίας ανάµεσα στις διάφορες µονάδες του µικροϋπολογιστή γίνεται παράλληλα από ένα σύνολο γραµµών, που αναφέ- ρονται σαν δίαυλος δεδοµένων (data bus). Οι γραµµές αυτές αναφέρονται σαν γραµµές δεδοµένων (data lines). Ο δίαυλος δεδοµένων δεν λύνει όλα τα προβλήµατα µεταφοράς της πληροφορίας. Ο µικροεπεξεργαστής θα πρέπει να έχει τη δυνατότητα επιλογής της µονάδας, µε την οποία θα επικοινωνή- σει, και να µπορεί να την ειδοποιήσει ότι θα στείλει ή θα πάρει δεδοµένα από αυτή. Για το λόγο αυτό διαθέτει δύο ακόµα διαύλους, το δίαυλο διευθύνσε- ων (address bus) και το δίαυλο ελέγχου (control bus). Οι γραµµές των διαύ- λων αυτών λέγονται αντίστοιχα γραµµές διευθύνσεων (address lines) και γραµµές ελέγχου (control lines). Με τις γραµµές διευθύνσεων ο µικροεπε- ξεργαστής στέλνει τη δυαδική διεύθυνση της θέσης µνήµης ή της µονάδας εισόδου/εξόδου, µε την οποία θέλει να επικοινωνήσει, και µε τις γραµµές ελέγχου τα κατάλληλα ηλεκτρικά σήµατα για την ενεργοποίηση των επιθυ- µητών λειτουργιών της µνήµης ή των µονάδων εισόδου/εξόδου. Παρατηρή- στε στο σχήµα 1.5 τον τρόπο µε τον οποίο συνδέονται οι δίαυλοι επικοινω- νίας σε ένα τυπικό µικροϋπολογιστικό σύστηµα. Η απαίτηση της ενεργοποίησης στοιχειωδών λειτουργιών σε προκαθορι- σµένα χρονικά διαστήµατα, δηµιουργεί την ανάγκη ύπαρξης µιας βάσης χρό- νου, που αναφέρεται ως κύκλωµα χρονισµού (clock). Το κύκλωµα χρονισµού αποτελείται συνήθως από ένα κρυσταλλικό ταλαντωτή, που παράγει τετρα- γωνικούς παλµούς σταθερής συχνότητας. Η συχνότητα αυτή του ταλαντω- τή καθορίζει και τη συχνότητα λειτουργίας του µικροεπεξεργαστή. Σε κάθε υπολογιστή η κύρια µνήµη αποτελείται από ένα σύνολο θέσεων, καθεµία από τις οποίες περιλαµβάνει ένα ή περισσότερα αποθηκευτικά κύτ- ταρα (storage cells) ικανά να αποθηκεύσουν πληροφορία ενός δυαδικού ψηφίου 0 ή 1 (binary digit – bit). Η διάκριση µεταξύ δύο θέσεων γίνεται από ένα χαρακτηριστικό αριθµό, που ονοµάζεται διεύθυνση. Η αρίθµηση των θέσεων µνήµης αρχίζει από τον αριθµό 0 και είναι συνεχής. Ο αριθµός, που 2 11 . 4 M π ∫ ƒ √ À ¶ √ § √ ° π ™ ∆ ∂ ™ ∫ ∞ π ª π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ∂ ™
  • 22. 2 2 K E º A § A I O 1 : E I ™ A ° ø ° H αντιστοιχεί στην τελευταία θέση µνήµης, το πλήθος δηλαδή των θέσεων µνή- µης, διαφέρει από σύστηµα σε σύστηµα και εξαρτάται αποκλειστικά από την κατασκευή της κεντρικής µονάδας επεξεργασίας και τον τρόπο σύνδεσής της µε την κύρια µνήµη. Στην περίπτωση που κάθε θέση µνήµης περιέχει ένα µόνο αποθηκευτικό κύτ- ταρο, λέµε ότι είναι οργανωµένη σε δυαδικά ψηφία, ενώ, όταν περιέχει περισ- σότερα από ένα αποθηκευτικά κύτταρα, λέµε ότι είναι οργανωµένη σε λέξεις. Το πλήθος των αποθηκευτικών κυττάρων της λέξης είναι δύναµη του δύο. Μια οµάδα από 8 δυαδικά ψηφία ονοµάζεται ψηφιολέξη (byte). Συνήθως η ψηφιολέξη χωρίζεται σε δύο οµάδες των 4 δυαδικών ψηφίων, καθεµία από τις οποίες ονοµάζεται ηµιψηφιολέξη (nibble). Η πρώτη από τα αριστερά συµβο- λίζεται µε NBH (Nibble Byte High) και η δεύτερη µε NBL (Nibble Byte Low). Kωδικός λειτουργίας Έντελο 1 Έντελο 2 Πεδίο πηγής Πεδίο προορισµού ™¯‹Ì· 1.6 Η µορφή των εντολών Όπως είπαµε και νωρίτερα, ο µικροεπεξεργαστής δέχεται και εκτελεί οδη- γίες. Οι οδηγίες αυτές βρίσκονται συνήθως αποθηκευµένες στη µνήµη µε τη µορφή εντολών. Κάθε εντολή αποτελείται συνήθως από τρία πεδία: • το πεδίο του κωδικού λειτουργίας (operation code), το οποίο περιέχει τον κωδικό της εντολής και υπαγορεύει στην κεντρική µονάδα επεξεργασίας την εκτέλεση της συγκεκριµένης λειτουργίας, • το έντελο ή αλλιώς πεδίο πηγής (source operand field), που περιέχει τα δεδοµένα ή τη διεύθυνση των δεδοµένων, τα οποία θα χειριστεί η κεντρι- κή µονάδα επεξεργασίας κατά την εκτέλεση της εντολής, • το έντελο ή αλλιώς πεδίο προορισµού (destination operand field), που δηλώνει τη θέση όπου θα αποθηκευτεί το αποτέλεσµα. Ανάλογα µε την εσωτερική οργάνωση, που έχει ο κάθε µικροεπεξεργαστής,
  • 23. εµφανίζονται πολλές φορές διαφοροποιήσεις από τη γενική περίπτωση, που αναφέραµε παραπάνω. Έτσι π.χ. µπορεί να υπάρχουν εντολές µε τρία έντε- λα (όπως συµβαίνει στην περίπτωση µιας εντολής πρόσθεσης δύο αριθµών) ή µε ένα έντελο ή µε κανένα (στην περίπτωση αυτή ο κωδικός λειτουργίας περιέχει και το πού θα εφαρµοστεί η εντολή). 2 31 . 4 M π ∫ ƒ √ À ¶ √ § √ ° π ™ ∆ ∂ ™ ∫ ∞ π ª π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ∂ ™ Προσπαθήστε να εξηγήσετε ποια απαίτηση των κατασκευαστών συστηµά- των οδήγησε στην εµφάνιση των µικροεπεξεργαστών. Σκεφτείτε παραδείγ- µατα από την καθηµερινή ζωή και από τις συσκευές, τις οποίες χρησιµοποι- είτε συχνά, και αναφέρετε τρία παραδείγµατα συσκευών ή γενικότερα συστη- µάτων, που να χρησιµοποιούν µικροεπεξεργαστές. Για να οδηγηθείτε σε σωστό δρόµο σκεφτείτε ενέργειες, που κάνουν οι σύγχρονες συσκευές και δεν υπήρχαν στις παλαιότερες. Προσπαθήστε σε κάθε παράδειγµα να προσ- διορίσετε α) ποια είναι η πληροφορία, την οποία επεξεργάζεται ο µικροεπε- ξεργαστής, β) ποια είναι η είσοδος σε αυτόν και γ) ποια είναι η έξοδος της επεξεργασίας. Ο χρόνος απασχόλησής σας για την ολοκλήρωση αυτής της δραστηριότητας εκτιµάµε πως δεν θα ξεπεράσει τα 30 περίπου λεπτά. ¢Ú·ÛÙËÚÈfiÙËÙ· 1.1 Ποια είναι τα τρία βασικά τµήµατα, από τα οποία αποτελείται ένα µικρο- ϋπολογιστικό σύστηµα; ÕÛÎËÛË ∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 1.5 Τα µικροϋπολογιστικά συστήµατα επικοινωνούν µεταξύ τους µέσω τριών διαύλων. Αντιστοιχίστε το όνοµα του καθενός από αυτούς µε τις ενέργειες που εµφανίζονται στη δεξιά στήλη: ∆ίαυλος ∆εδοµένων Mεταφέρει τη διεύθυνση της θέσης µνή- µης ή της συσκευής Ι/Ο, µε την οποία ανταλλάσσονται δεδοµένα. ∆ίαυλος ∆ιευθύνσεων Mεταφέρει τη χρήσιµη πληροφορία, δηλαδή τα δεδοµένα. ∆ίαυλος Ελέγχου Eνεργοποιεί ή απενεργοποιεί τη µνήµη και τις συσκευές Ι/Ο, επιλέγει εάν θα γίνει ανάγνωση ή εγγραφή στη µνήµη. ÕÛÎËÛË ∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 1.6
  • 24. 2 4 K E º A § A I O 1 : E I ™ A ° ø ° H 1.5 IÛÙÔÚÈ΋ ·Ó·‰ÚÔÌ‹ Ο πρώτος µικροεπεξεργαστής έκανε την εµφάνιση του στις αρχές του 1972, σχεδόν τρεις δεκαετίες µετά από τους πρώτους ηλεκτρονικούς υπολογιστές. Η εξέλιξη των µικροεπεξεργαστών θυµίζει πολύ την αντίστοιχη εξέλιξη των µεσαίων υπολογιστών. Όπως δηλαδή οι σχεδιαστές των µεσαίων υπολογιστών µετέφεραν σε αυτούς τις ιδέες τους από τη σχεδίαση µεγάλων συστηµάτων, έτσι και οι σχεδιαστές των µικροεπεξεργαστών υιοθέτησαν πολλά στοιχεία της οργάνωσης και της αρχιτεκτονικής των µεσαίων και µεγάλων συστηµάτων. Στους µικροεπεξεργαστές της τελευταίας γενιάς άρχισαν ήδη να εφαρµόζο- νται προχωρηµένα στοιχεία αρχιτεκτονικής, µε αποτέλεσµα σήµερα να είναι ασαφής ο διαχωρισµός ανάµεσα στους µεσαίους υπολογιστές και σε συστή- µατα βασισµένα σε µικροεπεξεργαστές. Ποια είναι τα τρία πεδία, από τα οποία αποτελείται, στη γενική περίπτω- ση, µία εντολή; ÕÛÎËÛË ∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 1.7 ™¯‹Ì· 1.7 Γνωστοί µικροεπεξεργαστές: α) 8080Α, β) 8086–8088 και γ) Pentium–II Χρονολογίες–σταθµοί στην ιστορία των (µικρο)επεξεργαστών µπορούν να θεωρηθούν οι παρακάτω: • 1971: Η Intel παρουσιάζει τον πρώτο µικροεπεξεργαστή, τον 4004. Έχει δίαυλο δεδοµένων πλάτους 4 bit, κατασκευάζεται µε 2.300 τρανσίστορς και έχει συχνότητα λειτουργίας 108 kHz. Μέσα στην επόµενη χρονιά εµφανίζεται ο διάδοχος του 8008. • 1974: Εµφάνιση του 8–bit µικροεπεξεργαστή Intel 8080 ως αποτέλεσµα
  • 25. της εξέλιξης του 8008. Έχει συχνότητα λειτουργίας 2 MHz και η κατα- σκευή του απαιτεί 6.000 τρανσίστορς. Απάντηση της Zilog µε τον Z80 και της Motorola µε τον 6800, o οποίος έχει 4.000 τρανσίστορς και ίδια συχνότητα λειτουργίας µε τον 8080. • 1975: Η Intel αναβαθµίζει τον 8080 σε 8085. • 1978: Εµφανίζονται οι πρώτοι 16–bit µικροεπεξεργαστές (δηλαδή ο δίαυ- λος δεδοµένων τους έχει πλάτος 16 bit). H Intel παρουσιάζει τον 8086/8088, του οποίου η συχνότητα λειτουργίας έχει ανέβει πλέον στα 10 MHz και η κατασκευή του απαιτεί 29.000 τρανσίστορς. Η Motorola εµφα- νίζει τον 68000 µε συχνότητα λειτουργίας 8 MHz, ο οποίος περιέχει 68.000 τρανσίστορς (από αυτό το γεγονός πήρε και το όνοµά του). • 1982: Εµφανίζεται ο Intel 80286, ο οποίος περιέχει 134.000 τρανσίστορς και έχει συχνότητα λειτουργίας 12,5 MHz. Αντίστοιχα η Motorola εµφα- νίζει τον 68010. • 1985: Εµφανίζονται οι πρώτοι 32–bit µικροεπεξεργαστές. Από τη µια ο Intel 80386, ο οποίος περιέχει 275.000 τρανσίστορς και συχνότητα λει- τουργίας 33 MHz και από την άλλη ο Motorola 68020 µε 200.000 τραν- σίστορς και 16 MHz. Οι εξελίξεις πλέον είναι ραγδαίες. • 1989: Εµφανίζεται ο 32–bit µικροεπεξεργαστής Intel 80486, ο οποίος έχει 1.200.000 τρανσίστορς και συχνότητα λειτουργίας 50 MHz. • 1993: Εµφανίζεται ο Intel Pentium, ο οποίος περιέχει 3.100.000 τρανσί- στορς και η συχνότητα λειτουργίας του έχει φτάσει στα 166 MHz. • 1993: H Digital παρουσιάζει τον πρώτο 64–bit µικροεπεξεργαστή Alpha. • 1997: H Intel ανακοινώνει τον Pentium II. Η συχνότητα λειτουργίας του βρίσκεται στα 300 MHz και το ολοκληρωµένο κύκλωµά του αποτελεί- ται από 7.700.000 τρανσίστορς. • 1999: H Intel ανακοινώνει τον Pentium III µε συχνότητα λειτουργίας 450 MHz (σήµερα έχει φτάσει στο 1.13 GHz). Tο ολοκληρωµένο κύκλωµα αποτελείται από 9.500.000 τρανσίστορς. 2 51 . 5 I ™ ∆ √ ƒ π ∫ ∏ ∞ ¡ ∞ ¢ ƒ √ ª ∏ Στην ενότητα 1.5 κάναµε µια ιστορική αναδροµή και είδαµε πώς εξελί- χθηκαν οι µικροεπεξεργαστές µέχρι σήµερα. Τα κυριότερα χαρακτηριστι- κά, στα οποία αναφερθήκαµε, ήταν το µήκος λέξης του µικροεπεξεργαστή ¢Ú·ÛÙËÚÈfiÙËÙ· 1.2
  • 26. 2 6 K E º A § A I O 1 : E I ™ A ° ø ° H (δηλαδή το πλήθος των γραµµών δεδοµένων), η χρονιά εµφάνισής του, η συχνότητα λειτουργίας του και ο αριθµός των τρανσίστορς, που περιέχει. ∆ηµιουργήστε ένα συγκεντρωτικό πίνακα µε όλα αυτά τα χαρακτηριστικά για κάθε επεξεργαστή της Intel, τον οποίο γνωρίζετε. Ο χρόνος απασχόλη- σής σας για την ολοκλήρωση αυτής της δραστηριότητας εκτιµάµε πως δεν θα ξεπεράσει τα 30 περίπου λεπτά. Ετοιµάστε µε τα στοιχεία, τα οποία έχετε από την ενότητα 1.5 είτε από τη δραστηριότητα 2 του κεφαλαίου 1, µία γραφική παράσταση µε τον αριθµό των τρανσίστορς στα ολοκληρωµένα κυκλώµατα σε σχέση µε τις χρονολογίες εµφάνισης τους. Παρατηρήστε τη γραφική παράσταση και βρείτε τη σχέση που συνδέει τις δύο παραµέτρους (είναι γραµµική; πολυωνυµική; εκθετική;). ÕÛÎËÛË ∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 1.8 ™‡ÓÔ„Ë Η επιθυµία των κατασκευαστών συστηµάτων να δηµιουργήσουν όλο και πιο έξυπνα συστήµατα µε περισσότερες δυνατότητες και µε µικρότερο µέγεθος οδήγησε στην ανάγκη για ενσωµάτωση όλων των λειτουργιών ενός ολόκλη- ρου υπολογιστή σε ένα ή µερικά ολοκληρωµένα κυκλώµατα. Η ανάπτυξη της τεχνολογίας κατασκευής των τελευταίων µε την συνεχή αύξη- ση του αριθµού των τρανσίστορς, που θα µπορούσαν να αποθηκευτούν σε αυτά, µε το µικρό κόστος, τη µικρή κατανάλωση ισχύος και την αξιόπιστη λειτουργία τους παρείχε αυτή τη δυνατότητα. Έτσι σήµερα η χρήση µικροε- πεξεργαστών σε συσκευές της καθηµερινής µας ζωής, σε βιοµηχανικά συστή- µατα ελέγχου και σε πολλά άλλα συστήµατα είναι πλέον δεδοµένη. Όλα τα συστήµατα, τα οποία περιέχουν κάποιο µικροεπεξεργαστή, ονοµάζο- νται µικροϋπολογιστές ή µικροϋπολογιστικά συστήµατα. Τα συστήµατα αυτά περιέχουν ακόµα µονάδες εισόδου/εξόδου για να επικοινωνούν µε το περι- βάλλον και την κύρια µνήµη για να αποθηκεύουν τα δεδοµένα και τις εντο- λές του προγράµµατος, το οποίο εκτελεί ο µικροεπεξεργαστής. Οι εντολές είναι αποθηκευµένες στην κύρια µνήµη και αποτελούνται από τον κωδικό λειτουργίας, που καθορίζει τι πρέπει να κάνει η κάθε εντολή, και τα έντελα πηγής και προορισµού, που περιέχουν είτε τις διευθύνσεις, στις οποίες βρί- σκονται τα δεδοµένα, είτε τα ίδια τα δεδοµένα.
  • 27. Η επικοινωνία µεταξύ των διαφόρων µονάδων ενός µικροϋπολογιστή γίνε- ται µέσω τριών διαύλων, του διαύλου δεδοµένων για τη µεταφορά των δεδο- µένων, του διαύλου διευθύνσεων για την επιλογή της θέσης µνήµης ή µονά- δας εισόδου/εξόδου, από την οποία θα µεταφερθούν τα δεδοµένα, και του διαύλου ελέγχου για τον έλεγχο των διαφόρων λειτουργιών του συστήµατος. Οι γραµµές, που περιέχουν οι δίαυλοι αυτοί, ονοµάζονται αντίστοιχα γραµ- µές δεδοµένων, γραµµές διευθύνσεων και γραµµές ελέγχου. Η ανάπτυξη των µικροεπεξεργαστών ήταν ραγδαία. Από τον πρώτο µικροε- πεξεργαστή (Intel 4004), ο οποίος εµφανίστηκε το 1971 µε 2.300 τρανσίστορς και συχνότητα λειτουργίας 108 kHz, έχουµε φτάσει σήµερα σε επεξεργαστές (Intel Pentium III), που περιέχουν 9.500.000 τρανσίστορς και συχνότητες λει- τουργίας µέχρι 1.13 MHz, µε αποτέλεσµα να δηµιουργούνται όλο και πιο ισχυρά και γρήγορα µικροϋπολογιστικά συστήµατα. BÈ‚ÏÈÔÁÚ·Ê›· Τώρα που τελειώσατε µε το εισαγωγικό κεφάλαιο, εάν µπορείτε να διαθέσετε κάποιον επιπλέον χρόνο, καλό θα ήταν να µελετήσετε τα παρακάτω κείµενα: Theory and Problems of Microprocessor Fundamentals, Schaum’s Outline Series, Roger L. Tokheim, Κεφάλαιο 1. Στο κεφάλαιο αυτό θα βρείτε ένα πολύ ωραίο παράδειγµα, το οποίο περιγράφει πώς λειτουργεί ένας µικρο- ϋπολογιστής. Theory and Problems of Microprocessor Fundamentals, Schaum’s Outline Series, Roger L. Tokheim, Κεφάλαιο 3. Το κεφάλαιο αυτό θα σας θυµίσει βασικά κυκλώµατα σχεδιασµού, όπως τις βασικές πύλες AND, OR, NOT, τα flip–flops, τους κωδικοποιητές και αποκωδικοποιητές, τους αποµονω- τές και τις µνήµες. Όλα αυτά τα κυκλώµατα θα µας είναι χρήσιµα στο σχε- διασµό µικροϋπολογιστικών συστηµάτων, που θα δούµε στο κεφάλαιο 7. Εάν πάλι δεν έχετε χρόνο, µην ανησυχείτε. Στα επόµενα κεφάλαια θα ανα- λύσουµε ένα προς ένα τα θέµατα που µας χρειάζονται, για να αποκτήσε- τε µια ολοκληρωµένη άποψη για τους µικροεπεξεργαστές. 2 7B π µ § π √ ° ƒ∞ º π ∞
  • 28.
  • 29. OÈ MÈÎÚÔÂÂÍÂÚÁ·ÛÙ¤˜ ™ÎÔfi˜ Μελετώντας αυτό το κεφάλαιο θα γνωρίσετε ένα γενικό µικροεπεξεργαστή, τα βασικά τµήµατα, από τα οποία αυτός αποτελείται, καθώς επίσης και τις βασικές αρχές και χαρακτηριστικά λειτουργίας του χωρίς να αναφερόµαστε σε κάποιο συγκεκριµένο µικροεπεξεργαστή. ¶ÚÔÛ‰ÔÎÒÌÂÓ· ·ÔÙÂϤÛÌ·Ù· Όταν θα ολοκληρώσετε τη µελέτη αυτού του κεφαλαίου, θα είστε σε θέση να: • εξηγήσετε σε µία παράγραφο τις βασικές λειτουργίες που επιτελούν τα τρία τµήµατα, από τα οποία αποτελείται ένας µικροεπεξεργαστής. • ορίσετε ποιες είναι οι αριθµητικές και ποιες οι λογικές πράξεις, που γίνο- νται µέσα στην αριθµητική και λογική µονάδα. • αναφέρετε τα πέντε βασικά κυκλώµατα, από τα οποία αποτελείται η αριθ- µητική και λογική µονάδα. • ορίσετε τι είναι ένας καταχωρητής και πού µας χρησιµεύει. • αναφέρετε τους έξι βασικούς τύπους καταχωρητών και τη λειτουργία που επιτελεί ο καθένας από αυτούς. • καταγράψετε τον τρόπο, µε τον οποίο οι µικροεπεξεργαστές µας δείχνουν την κατάσταση, στην οποία βρίσκονται µετά από την εκτέλεση µιας εντο- λής ή λειτουργίας. • διαχωρίσετε τους τρεις διαύλους επικοινωνίας µε βάση την πληροφορία, την οποία µεταφέρουν. • ορίσετε µε ποιόν τρόπο αρχικοποιούµε ένα µικροεπεξεργαστή. • χωρίσετε το χρόνο, που απαιτείται για την εκτέλεση µιας εντολής, σε µικρό- τερα τµήµατα. • αναφέρετε τις έξι βασικές κατηγορίες, στις οποίες χωρίζεται το σύνολο εντολών ενός µικροεπεξεργαστή. • ορίσετε τους εφτά διαφορετικούς τρόπους, µε τους οποίους µια εντολή καθο- ρίζει πού βρίσκονται τα δεδοµένα, τα οποία αυτή χρειάζεται για να εκτελεστεί. 2∫ ∂ º ∞ § ∞ π √
  • 30. 3 0 K E º A § A I O 2 : O π M π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ∂ ™ ∂ÈÛ·ÁˆÁÈΤ˜ ·Ú·ÙËÚ‹ÛÂȘ Το κεφάλαιο αυτό αποτελεί ίσως το σηµαντικότερο κεφάλαιο του βιβλίου και γι’ αυτό θα πρέπει να το µελετήσετε µε ιδιαίτερη προσοχή. Αναπτύσσονται πολλές νέες έννοιες, οι οποίες θα χρησιµεύσουν στα επόµενα κεφάλαια, και γι’ αυτό χρειάζονται ίσως αρκετές αναγνώσεις του κειµένου από σας για να τις καταλάβετε πλήρως. Μην προχωρήσετε στο κεφάλαιο 3 πριν κατανοήσε- τε τα περιεχόµενα του κεφαλαίου αυτού. • Αριθµητική και Λογική Μονάδα • ∆είκτης Σωρού • ∆ίαυλος ∆εδοµένων • ∆ίαυλος ∆ιευθύνσεων • ∆ίαυλος Ελέγχου • Ενεργή ∆ιεύθυνση • Καταχωρητής • Καταχωρητής Γενικού Σκοπού • Καταχωρητής Εντολών • Kαταχωρητής Κατάστασης Επε- ξεργαστή • Κύκλος Εντολής • Κύκλος Μηχανής • Κύκλος Ρολογιού • Κύκλωµα Χρονισµού • Μετρητής Προγράµµατος • Μικροεπεξεργαστής • Μικροϋπολογιστής • Μονάδα Ελέγχου • Σύνολο Εντολών • Συσσωρευτής • Τρόποι ∆ιευθυνσιοδότησης ŒÓÓÔȘ ÎÏÂȉȿ
  • 31. 2.1 H AÚ¯ÈÙÂÎÙÔÓÈ΋ ÙˆÓ ÌÈÎÚÔÂÂÍÂÚÁ·ÛÙÒÓ Στο κεφάλαιο 1 είδαµε ότι η κεντρική µονάδα επεξεργασίας (ΚΜΕ) ή µικρο- επεξεργαστής (microprocessor) είναι αυτή που ρυθµίζει όλες τις ενέργειες, που επιτελούνται στο µικροϋπολογιστικό σύστηµα. 3 12 . 1 H A ƒ à π ∆ ∂ ∫ ∆ √ ¡ π ∫ ∏ ∆ ø ¡ ª π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ø ¡ Eίσοδος ∆εδοµένα Eντολές Eντολές Aποτελέσµατα Aριθµητική λογική µονάδα Eνεργοποίηση Έξοδος Aποτελέσµατα KME ∆ιεύθυνση ∆εδοµένα MNHMH ∆εδοµένα Έλεγχος Eντολές Mονάδα ελέγχου ™¯‹Ì· 2.1 Ο µικροεπεξεργαστής Ο µικροεπεξεργαστής καθορίζει τη σειρά εκτέλεσης των εντολών. Κατά τη διάρκεια εκτέλεσης των εντολών συντονίζει τη µεταφορά των δεδοµένων από τις εισόδους προς αυτόν και προς την κύρια µνήµη. Επεξεργάζεται τα δεδοµένα σύµφωνα µε το πρόγραµµα επεξεργασίας του µικροϋπολογιστικού συστήµατος ώστε να ανταποκρίνονται στη ζητούµενη εφαρµογή. Επίσης κατευθύνει τη µεταφορά δεδοµένων από τον ίδιο ή από την κύρια µνήµη προς τις εξόδους του. Οι µικροεπεξεργαστές αποτελούνται βασικά από τρία τµήµατα (δείτε το σχήµα 2.1), τα οποία συνεργάζονται αρµονικά µεταξύ τους: την αριθµητι- κή και λογική µονάδα (arithmetic and logic unit, ALU), τη µονάδα ελέγχου (control unit, CU) και τους καταχωρητές (registers). Ας δούµε το κάθε τµήµα ξεχωριστά. 2.1.1 AÚÈıÌËÙÈ΋ Î·È ÏÔÁÈ΋ ÌÔÓ¿‰· Η εκτέλεση των διαφόρων λογικών και αριθµητικών πράξεων, που απαι- τούνται από το σύνολο εντολών ενός µικροεπεξεργαστή, πραγµατοποιείται σ’ αυτό το τµήµα του, που καλείται αριθµητική και λογική µονάδα (ALU).
  • 32. 3 2 K E º A § A I O 2 : O π M π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ∂ ™ Ως αριθµητικές πράξεις εννοούµε την πρόσθεση και την αφαίρεση δύο αριθ- µών, την αύξηση και την ελάττωση ενός αριθµού κατά ένα, το συµπλήρωµα ενός αριθµού ως προς 1 ή ως προς 2. Οι λογικές πράξεις εφαρµόζονται κατά κύριο λόγο σε δυαδικά δεδοµένα και δεν είναι άλλες από τις γνωστές µας ΚΑΙ (AND), Ή (OR) και ΟΧΙ (NOT). Εκτός από αυτές, λογικές πράξεις θεωρούνται και η ολίσθηση ή η περι- στροφή ενός αριθµού και η σύγκριση δύο αριθµών. Η εκτέλεση καθεµιάς από τις πράξεις αυτές µπορεί να υπάρχει είτε αυτούσια ενσωµατωµένη µέσα στο µικροεπεξεργαστή µε τη µορφή µίας εντολής (π.χ. πρόσθεση) είτε να απαιτεί την εκτέλεση µιας ακολουθίας πολλών εντολών. Είναι ευνόητο ότι πράξεις, όπως είναι ο πολλαπλασιασµός, η διαίρεση, η εύρε- ση ρίζας, η διαφόριση, ολοκλήρωση και διάφορες άλλες, που απαιτούν πολύ- πλοκους υπολογισµούς µε πολλές µετακινήσεις δεδοµένων, το υλικό του µικροεπεξεργαστή δεν είναι σε θέση από µόνο του να τις αντιµετωπίσει. Αντί- θετα, επειδή όλες αυτές οι πράξεις αναλύονται σε συνδυασµό βασικών αριθ- µητικών εντολών (π.χ. η εύρεση ρίζας αριθµού µπορεί να γίνει µε διαδοχικές αφαιρέσεις), µπορούν πολύ εύκολα να υλοποιηθούν ως ακολουθία βασικών εντολών, που µπορούν να εκτελεστούν στην αριθµητική και λογική µονάδα. Φυσικά, όταν χρησιµοποιείται το υλικό για να εκτελέσει ακόµα και τις πιο πολύπλοκες πράξεις, η ταχύτητα εκτέλεσής τους είναι πολύ µεγαλύτερη. Σε πολλές περιπτώσεις οι λογικές και αριθµητικές πράξεις είναι µικροπρο- γραµµατιζόµενες. Ο µικροπρογραµµατισµός αποβλέπει στη γρηγορότερη εκτέ- λεση των πράξεων και στην επίτευξη µεγαλύτερων ταχυτήτων. Με βάση αυτόν, χωριστές µνήµες ελέγχου (control memories) περιέχουν το µικροπρόγραµµα, OλισθητήςAθροιστής Συγκριτής Aριθµητική λογική µονάδα Tελεστής AΈλεγχος Tελεστής B Kρατούµενο Kατάσταση Aποτέλεσµα™¯‹Ì· 2.2 Η αριθµητική και λογική µονάδα
  • 33. το οποίο ανταποκρίνεται στις γενικές εντολές του χρήστη και καθοδηγεί την αριθµητική και λογική µονάδα ώστε να εκτελέσει τις απαιτούµενες λειτουργίες. Τα δεδοµένα, πάνω στα οποία θα πρέπει να λειτουργήσει η αριθµητική και λογική µονάδα, είναι αποθηκευµένα στη µνήµη σαν τµήµα της εντολής. Η αποκωδικοποίηση της εντολής καταλήγει στην εκποµπή ενός σήµατος από τη µονάδα ελέγχου προς την αριθµητική και λογική µονάδα, ενεργοποιώντας τα κατάλληλα κυκλώµατα της µονάδας αυτής. Μετά την εκτέλεση της απαι- τούµενης πράξης, η µονάδα ελέγχου προωθεί την επόµενη εντολή, που πρό- κειται να εκτελεστεί, και έτσι επαναλαµβάνεται ο κύκλος αυτός, εφόσον βέβαια απαιτείται ξανά η ενεργοποίηση της αριθµητικής µονάδας. Τα κυκλώµατα, τα οποία περιέχονται σε µια αριθµητική και λογική µονάδα (δείτε το σχήµα 2.2), διαφέρουν από µικροεπεξεργαστή σε µικροεπεξεργα- στή, αλλά συνήθως υπάρχουν τα ακόλουθα κυκλώµατα: 1. Ένας αθροιστής (adder) για να εκτελεί τις βασικές αριθµητικές πράξεις. 2. Ένας συγκριτής (comparator), ο οποίος µπορεί να συγκρίνει τους αριθ- µούς που τοποθετούνται στους καταχωρητές εντέλων. 3. Ένας ολισθητής (shifter), ο οποίος εκτελεί την ολίσθηση ή περιστροφή ενός αριθµού. 4. Μία µονάδα λογικής επεξεργασίας, που εκτελεί λογικές πράξεις πάνω στους αριθµούς, που τοποθετούνται στους καταχωρητές εντέλων. 5. Κάποιοι καταχωρητές για να αποθηκεύονται οι αριθµοί και τα αποτελέ- σµατα των πράξεων (µην ανησυχείτε, για τους καταχωρητές θα µιλή- σουµε στην υποενότητα 2.1.3). Με βάση τα παραπάνω βασικά κυκλώµατα µπορούν να υλοποιηθούν και όλες οι υπόλοιπες πράξεις, π.χ. η αφαίρεση δύο αριθµών µπορεί να υλοποι- ηθεί ως πρόσθεση του πρώτου µε το συµπλήρωµα του δεύτερου (εποµένως δεν απαιτείται η ύπαρξη ενός αφαιρέτη), ο πολλαπλασιασµός και η διαίρε- ση απαιτούν διαδοχικές αυξήσεις και ολισθήσεις, ενώ η τετραγωνική ρίζα µπορεί να υλοποιηθεί µε διαδοχικές αφαιρέσεις, κ.ο.κ. 2.1.2 MÔÓ¿‰· ÂϤÁ¯Ô˘ Όπως είναι ήδη γνωστό, ο µικροεπεξεργαστής λειτουργεί µε σειριακό τρόπο ανάλογα µε τις υποδείξεις των εντολών του αποθηκευµένου προγράµµατος. Αλλά βέβαια το πρόγραµµα από µόνο του δεν είναι αρκετό για να κατευθύ- νει τη λειτουργία του. Για παράδειγµα ο µικροεπεξεργαστής θα πρέπει να 3 32 . 1 H A ƒ à π ∆ ∂ ∫ ∆ √ ¡ π ∫ ∏ ∆ ø ¡ ª π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ø ¡
  • 34. 3 4 K E º A § A I O 2 : O π M π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ∂ ™ γνωρίζει πού είναι αποθηκευµένη (σε ποια διεύθυνση) µέσα στη µνήµη η πρώτη εκτελέσιµη εντολή του προγράµµατος. Θα πρέπει ακολούθως ν’ ανα- πτύξει τα κατάλληλα σήµατα ελέγχου, που θα αποσπάσουν την εντολή από τη µνήµη και έπειτα θα πρέπει να εξετάσει το περιεχόµενο της εντολής αυτής για να αποφασίσει για τις ενέργειες, που αυτή απαιτεί. Η µνήµη, οι µονάδες εισόδου/εξόδου, καθώς και η αριθµητική και λογική µονάδα, θα πρέπει να ενεργοποιηθούν στα κατάλληλα χρονικά διαστήµατα ώστε να εκτελέσουν την αποκωδικοποιηµένη εντολή µε τέτοιο τρόπο ώστε οι λειτουργίες αυτές να µην παρεµβάλλονται µεταξύ τους και να µην δηµι- ουργούν ανεπιθύµητα αποτελέσµατα. Όλες αυτές οι απαιτήσεις οδηγούν στην ανάγκη της παρουσίας της µονάδας ελέγχου (ΜΕ). Σε γενικές γραµµές, η µονάδα ελέγχου είναι το κατευθυντήριο κέντρο του µικροεπεξεργαστή και παρέχει τις λειτουργίες χρονισµού, αποκω- δικοποίησης και ενεργοποίησης για όλα τα τµήµατα του µικροϋπολογιστή. Στο σχήµα 2.3 φαίνεται το λειτουργικό διάγραµµα µιας τυπικής µονάδας ελέγχου. Η βασική πηγή για όλα τα σήµατα ελέγχου, που κατευθύνουν τις συσκευές του συστήµατος, είναι το ρολόι. Οι απαιτήσεις για χρονισµό σ’ ένα µικροϋ- πολογιστικό σύστηµα ποικίλλουν από σχετικά µεγάλης διάρκειας παλµούς (secs ή msecs) µέχρι πολύ µικρής διάρκειας (nsecs). Η φύση των σηµάτων χρονισµού είναι τέτοια ώστε οι παλµοί να εµφανίζονται και να διαρκούν µόνο για ένα απαιτούµενο χρονικό διάστηµα, να επαναλαµβάνονται µε µια καθο- ρισµένη ακολουθία ή να εµφανίζονται µετά από απαίτηση. Είναι γνωστό ότι µια εντολή χωρίζεται σε δύο τµήµατα: στον κώδικα λει- τουργίας (operation code) και στο έντελο (operand), δηλαδή τη διεύθυνση του δεδοµένου, πάνω στο οποίο θα επενεργήσει ο κώδικας λειτουργίας. Ο κώδι- κας λειτουργίας εξετάζεται από τον αποκωδικοποιητή εντολών για να αποφα- σίσει ποιες λειτουργίες θα πρέπει να ακολουθήσουν. Για να µπορέσει να εκτε- λεστεί αυτή η διαδικασία θα πρέπει πρώτα ο κώδικας λειτουργίας της εντολής να µεταφερθεί στον καταχωρητή εντολής της µονάδας ελέγχου. Ο καταχωρη- τής εντολής χρησιµοποιείται για να διαφυλάσσει τον κώδικα λειτουργίας, ενώ αυτή αποκωδικοποιείται. Ο αποκωδικοποιητής εντολών είναι κατασκευασµέ- νος από πύλες, έτσι ώστε να αναγνωρίζει µόνο συγκεκριµένους συνδυασµούς δυαδικών συµβόλων, αυτούς που αντιστοιχούν σε πραγµατικές εντολές. Ένας ξεχωριστός συνδυασµός πυλών χρησιµοποιείται συνήθως για την αναγνώρι- ση κάθε κώδικα λειτουργίας και η έξοδος του αποκωδικοποιητή εντολών είναι
  • 35. ένα ξεχωριστό σήµα, που ενεργοποιεί το κατάλληλο κύκλωµα της γεννήτριας ελέγχου, που αντιστοιχεί στο συγκεκριµένο κώδικα λειτουργίας. Η γεννήτρια ελέγχου (control generator) αποτελείται επίσης από πύλες, που συνδυάζουν την έξοδο του αποκωδικοποιητή εντολών µε τα κυκλώµατα χρο- νισµού έτσι ώστε να κατευθύνονται τα υπόλοιπα τµήµατα του µικροϋπολο- γιστή και να ενεργοποιούνται πάντα µε τη σωστή σειρά λειτουργίας. Θα πρέ- πει να αναφερθεί επίσης ότι η µονάδα ελέγχου συνήθως περιέχει και άλλους ειδικούς καταχωρητές, όπως το µετρητή προγράµµατος, τον καταχωρητή κατάστασης επεξεργαστή (processor status word ή PSW) και το δείκτη σωρού (stack pointer), για τους οποίους θα µιλήσουµε στη συνέχεια. 2.1.3 K·Ù·¯ˆÚËÙ¤˜ Οι καταχωρητές (registers) χρησιµεύουν για την αποθήκευση προσωρινών αποτελεσµάτων ή δεδοµένων, που έχουν σηµασία για το µικροεπεξεργαστή. Παρά το γεγονός ότι το πλήθος και το είδος των καταχωρητών είναι διαφο- ρετικό σε κάθε µικροεπεξεργαστή, συνήθως συναντάµε τους παρακάτω: 3 52 . 1 H A ƒ à π ∆ ∂ ∫ ∆ √ ¡ π ∫ ∏ ∆ ø ¡ ª π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ø ¡ Pολόι Γεννήτρια χρονισµού Γεννήτρια ελέγχου Aποκωδικο- ποιητής εντολών Kαταχωρητής εντολών Kαταχωρητής δεδοµένων Mετρητής προγράµµατος Προς δίαυλο διευθύνσεων Aπό και προς δίαυλο δεδοµένων Σήµατα χρονισµού και ελέγχου ™¯‹Ì· 2.3 Η µονάδα ελέγχου
  • 36. 3 6 K E º A § A I O 2 : O π M π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ∂ ™ Συσσωρευτής (accumulator): Bρίσκεται στην αριθµητική και λογική µονάδα και χρησιµοποιείται για να αποθηκεύει (α) τον έναν από τους αριθµούς που απαιτούνται για να εκτελεστεί η πράξη και (β) το αποτέλεσµα της πράξης. Καταχωρητής γενικού σκοπού (general purpose register): Bρίσκεται στην αριθµητική και λογική µονάδα και χρησιµοποιείται για να αποθηκεύει τον άλλο αριθµό που απαιτείται για να εκτελεστεί µία πράξη, καθώς και ως απο- θηκευτικός χώρος για ενδιάµεσα αποτελέσµατα. Οι καταχωρητές αυτοί µπο- ρούν να αποθηκεύσουν επίσης τη διεύθυνση της θέσης µνήµης, όπου βρί- σκονται οι αριθµοί, ή τη διεύθυνση της θέσης µνήµης, όπου θα αποθηκευτεί το αποτέλεσµα. Σε πολλούς επεξεργαστές η ύπαρξη πολλών καταχωρητών γενικού σκοπού καθιστά περιττή την ύπαρξη του συσσωρευτή. Kαταχωρητής κατάστασης επεξεργαστή (processor status word): Bρίσκεται και αυτός στην αριθµητική και λογική µονάδα. Συνήθως αποτελείται από ένα σύνολο από δυαδικά ψηφία (bits), που ονοµάζονται δείκτες (flags) ή σηµαί- ες κατάστασης. Αυτά χρησιµοποιούνται για να δείχνουν στο χρήστη την παρούσα κατάσταση του µικροεπεξεργαστή, καθώς επίσης και χαρακτηρι- στικά γνωρίσµατα των αποτελεσµάτων της προηγούµενης πράξης. Όλοι οι µικροεπεξεργαστές είναι σε θέση µέσω του καταχωρητή κατάστασης να υπο- δείξουν ένα µηδενικό αποτέλεσµα (zero), ένα αρνητικό αποτέλεσµα (negative), ένα κρατούµενο (carry), µία υπερχείλιση (overflow), κ.λπ. Καταχωρητής εντολών (instruction register): Bρίσκεται στη µονάδα ελέγχου του µικροεπεξεργαστή και χρησιµοποιείται για να αποθηκεύει τον κώδικα λειτουργίας της εντολής, ενώ αυτή αποκωδικοποιείται για να εκτελεστεί. S Z … O C ∆ιακόπτης κρατούµενου (Carry flag) ∆ιακόπτης υπερχείλησης (Overflow flag) ∆ιακόπτης µηδενικού αποτελέσµατος (Zero flag) ∆ιακόπτης προσήµου (Sign flag) ™¯‹Ì· 2.4 Ο καταχωρητής κατάστα- σης επεξεργαστή
  • 37. Μετρητής προγράµµατος (program counter): Bρίσκεται και αυτός στη µονά- δα ελέγχου και αποθηκεύει τη διεύθυνση της θέσης µνήµης, στην οποία βρί- σκεται η επόµενη προς εκτέλεση εντολή, έτσι ώστε να ανακληθεί από τη µνήµη, όταν τελειώσει η εκτέλεση της τρέχουσας εντολής. ∆είκτης σωρού (stack pointer): Όλοι οι µικροεπεξεργαστές χρησιµοποιούν µια περιοχή για αποθήκευση δεδοµένων. Η περιοχή αυτή ονοµάζεται σωρός (stack). Ο σωρός µπορεί να είναι ένα σύνολο από καταχωρητές µέσα στο µικροεπεξεργαστή είτε ένα τµήµα της κύριας µνήµης (RAM). Ο σωρός χρη- σιµοποιείται για να αποθηκεύει ενδιάµεσα αποτελέσµατα αλλά και πληρο- φορίες, που αφορούν συνήθως στο µικροεπεξεργαστή. Συνήθως ο σωρός είναι της µορφής Last In First Out (LIFO), όπου η τελευταία πληροφορία, που τοποθετείται στο σωρό, είναι και η πρώτη που θα πρέπει να αποσπαστεί. O δείκτης σωρού δείχνει πάντα στην κορυφή του σωρού, η οποία περιέχει την τελευταία πληροφορία, που τοποθετήθηκε στο σωρό. 3 72 . 2 O π ¢ π ∞ À § √ π ¢ π ∂ À £ À ¡ ™ ∂ ø ¡ / ¢ ∂ ¢ √ ª ∂ ¡ ø ¡ / ∂ § ∂ ° à √ À Ένας µικροεπεξεργαστής αποτελείται από τα εξής τρία τµήµατα: α) … β) … γ) … ÕÛÎËÛË ∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 2.1 Οι διάφορες πράξεις µεταξύ των δεδοµένων γίνονται στο τµήµα εκείνο του µικροεπεξεργαστή που ονοµάζεται …………………………………… Απαριθµήστε τα κυκλώµατα, τα οποία υπάρχουν συνήθως στο τµήµα αυτό. ÕÛÎËÛË ∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 2.2 Ποιοι καταχωρητές βρίσκονται στην αριθµητική και λογική µονάδα, ποιοι στη µονάδα ελέγχου και τι λειτουργία επιτελεί ο καθένας από αυτούς; ÕÛÎËÛË ∞˘ÙÔ·ÍÈÔÏfiÁËÛ˘ 2.3 2.2 OÈ ¢›·˘ÏÔÈ ‰È¢ı‡ÓÛˆÓ/‰Â‰Ô̤ӈÓ/ÂϤÁ¯Ô˘ Οι περισσότεροι µικροϋπολογιστές αναπτύσσονται γύρω από ένα δίαυλο (bus). Ο δίαυλος αυτός είναι ένα σύνολο από γραµµές (καλώδια), που συν- δέουν τα διάφορα τµήµατα του µικροϋπολογιστή. Για παράδειγµα συνδέουν όλα τα σήµατα ελέγχου, δεδοµένων και διευθύνσεων από το ένα τµήµα του
  • 38. 3 8 K E º A § A I O 2 : O π M π ∫ ƒ √ ∂ ¶ ∂ • ∂ ƒ °∞ ™ ∆ ∂ ™ στο άλλο. Η λειτουργία του διαύλου είναι να παρέχει ένα µονοπάτι επικοι- νωνίας µεταξύ δύο ή περισσότερων τµηµάτων του µικροϋπολογιστή. KME Σύστηµα µνήµης Σύστηµα εισόδου–εξόδου ∆ίαυλος ελέγχου ∆ίαυλος διευθύνσεων ∆ίαυλος δεδοµένων ™¯‹Ì· 2.5 Οι δίαυλοι διευθύνσεων – δεδοµένων – ελέγχου Το τµήµα του µικροεπεξεργαστή, που αποτελεί τη µονάδα ελέγχου, αποφα- σίζει για το ποιο από τα τµήµατα του µικροϋπολογιστή πρόκειται να προω- θήσει µια πληροφορία και ποια άλλα τµήµατα πρόκειται να χρησιµοποιή- σουν την πληροφορία αυτή. Στο σχήµα 1.5 του προηγούµενου κεφαλαίου είδαµε την οργάνωση ενός µικροϋπολογιστικού συστήµατος, που αναπτύσ- σεται γύρω από ένα δίαυλο. Μερικές από τις γραµµές του διαύλου είναι αφιε- ρωµένες µόνο στη µεταφορά διευθύνσεων µνήµης, άλλες στη µεταφορά δεδοµένων, ενώ άλλες µεταφέρουν µόνο σήµατα ελέγχου. Όλα συνεπώς τα τµήµατα του µικροϋπολογιστή, όπως άλλωστε φαίνεται και στο σχήµα 2.5, χρησιµοποιούν αυτές τις γραµµές διευθύνσεων, δεδοµένων και ελέγχου, που σχετίζονται άµεσα µε τη λειτουργία που εκτελούν. Ο δίαυλος δεδοµένων µεταφέρει είτε εντολές, που πρόκειται να αποκωδικο- ποιηθούν, είτε πληροφορίες, που πρόκειται να επεξεργαστούν. Είναι ένας δίαυλος διπλής κατεύθυνσης (bidirectional), πράγµα το οποίο σηµαίνει ότι µπορεί να µεταφέρει πληροφορίες από το µικροεπεξεργαστή στα άλλα τµή- µατα του µικροϋπολογιστή σε µία χρονική περίοδο (π.χ. όταν αποθηκεύο- νται τα αποτελέσµατα µιας αριθµητικής πράξης στην κύρια µνήµη), ενώ σε άλλες περιόδους οι πληροφορίες µπορεί να µεταφέρονται από διάφορα τµή- µατα του µικροϋπολογιστή προς το µικροεπεξεργαστή (π.χ. όταν µεταφέρο-