Βιογραφίες Χαρακτηριστικά Ανάλυση

Βασικές αρχές της τεχνολογίας μικροεπεξεργαστών.

Κρατικό Ινστιτούτο Μηχανικής Φυσικής της Μόσχας

(Πολυτεχνείο)

Σχολή Αυτοματισμών και Ηλεκτρονικών

ΒΑΣΕΙΣ ΤΕΧΝΟΛΟΓΙΑΣ ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΩΝ

1. Γενική δομήκαι αρχές λειτουργίας

συστήματα μικροεπεξεργαστών

2. Σύστημα εντολών μικροεπεξεργαστών και μέθοδοι διευθυνσιοδότησης τελεστών

3. Εφαρμογή και οργάνωση της μνήμης

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

Βασικές αρχές της τεχνολογίας μικροεπεξεργαστών

μικροεπεξεργαστήςονομάζεται συσκευή ελεγχόμενη από πρόγραμμα για την επεξεργασία ψηφιακών πληροφοριών και τη διαχείριση της διαδικασίας επεξεργασίας, που υλοποιείται με τη μορφή ολοκληρωμένου κυκλώματος μεγάλου (LSI) ή εξαιρετικά μεγάλου (VLSI). Έτσι, ο μικροεπεξεργαστής λειτουργεί ως επεξεργαστής σε ψηφιακά συστήματα για διάφορους σκοπούς. Αυτά μπορεί να είναι συστήματα επεξεργασίας πληροφοριών (υπολογιστές), συστήματα ελέγχου αντικειμένων και διεργασιών, συστήματα μέτρησης πληροφοριών και άλλοι τύποι συστημάτων που χρησιμοποιούνται στη βιομηχανία, οικιακές συσκευές, εξοπλισμός επικοινωνίας και πολλούς άλλους τομείς εφαρμογής.

4. Γενική δομή και αρχές λειτουργίας

συστήματα μικροεπεξεργαστών

Τα περισσότερα συστήματα μικροεπεξεργαστών έχουν μια δομή κορμού-αρθρωτή (Εικ. 1.1), στην οποία μεμονωμένες συσκευές (modules) που απαρτίζουν το σύστημα ανταλλάσσουν πληροφορίες μέσω ενός κοινού διαύλου συστήματος - του κορμού.

DIV_ADBLOCK273">

Μνήμη μόνο για ανάγνωση (ROM)χρησιμεύει για την αποθήκευση σταθερών και τυπικών (αμετάβλητων) προγραμμάτων. Η ROM συνήθως περιέχει προγράμματα για την αρχική προετοιμασία (εκκίνηση) συστημάτων, δοκιμαστικά και διαγνωστικά προγράμματα και άλλο λογισμικό σέρβις που δεν αλλάζει κατά τη λειτουργία των συστημάτων. Σε συστήματα μικροεπεξεργαστών που ελέγχουν ορισμένα αντικείμενα χρησιμοποιώντας σταθερά ή σπάνια αλλαγμένα προγράμματα, ROM (μνήμη ROM - Μνήμη μόνο για ανάγνωση) ή επαναπρογραμματιζόμενη ROM (μνήμη EPROM - Ηλεκτρικά προγραμματιζόμενη μνήμη μόνο για ανάγνωση ή μνήμη flash) χρησιμοποιείται επίσης για την αποθήκευσή τους.

Οι υπόλοιπες συσκευές είναι εξωτερικές και συνδέονται στο σύστημα χρησιμοποιώντας συσκευές διασύνδεσης (ID) που εφαρμόζουν συγκεκριμένα πρωτόκολλα για παράλληλη ή σειριακή ανταλλαγή. εξωτερικές συσκευέςείναι ένα πληκτρολόγιο, μια οθόνη, εξωτερικές συσκευές αποθήκευσης (VZU) που χρησιμοποιούν δισκέτες ή σκληρούς μαγνητικούς δίσκους, οπτικούς δίσκους (CD-ROM), μαγνητικές ταινίες και άλλους τύπους μέσων πληροφοριών, αισθητήρες και μετατροπείς πληροφοριών (αναλογικό σε ψηφιακό ή ψηφιακό- σε αναλογικό), διάφοροι ενεργοποιητές (δείκτες, εκτυπωτές, ηλεκτρικοί κινητήρες, ρελέ και άλλοι). Για υλοποίηση διαφορετικούς τρόπους λειτουργίαςπρόσθετες συσκευές μπορούν να συνδεθούν στο σύστημα - ελεγκτέςδιακοπές, άμεση πρόσβαση στη μνήμη και άλλα που εκτελούν τις απαραίτητες ειδικές λειτουργίες ελέγχου.

Αυτή η δομή αντιστοιχεί στην αρχιτεκτονική Von Neumann που προτάθηκε από αυτόν τον επιστήμονα στη δεκαετία του '40 για την υλοποίηση των πρώτων μοντέλων ψηφιακών υπολογιστών. Άλλες επιλογές για αρχιτεκτονικές επεξεργαστών θα εξεταστούν παρακάτω.

Δίαυλος συστήματοςπεριέχει αρκετές δεκάδες (σε πολύπλοκα συστήματα πάνω από 100) αγωγούς, οι οποίοι, σύμφωνα με τον λειτουργικό τους σκοπό, χωρίζονται σε ξεχωριστούς διαύλους - διεύθυνση A, δεδομένα D και έλεγχος C. ΛάστιχοΕΝΑχρησιμεύει για τη μεταφορά της διεύθυνσης, η οποία σχηματίζεται από τον μικροεπεξεργαστή και σας επιτρέπει να επιλέξετε την απαιτούμενη κυψέλη μνήμης της RAM (ROM) ή την απαιτούμενη IU κατά την πρόσβαση σε μια εξωτερική συσκευή. Λάστιχορεχρησιμεύει για τη λήψη εντολών που προέρχονται από τη RAM ή τη ROM στη μονάδα ελέγχου του μικροεπεξεργαστή και για τη μεταφορά επεξεργασμένων δεδομένων (τελεστών) μεταξύ του μικροεπεξεργαστή και της RAM ή της ROM (εξωτερική συσκευή). Με λάστιχοντομεταδίδονται διάφορα σήματα ελέγχου που καθορίζουν τους τρόπους λειτουργίας της μνήμης (εγγραφή ή ανάγνωση), των συσκευών διασύνδεσης (είσοδος ή έξοδος πληροφοριών) και του μικροεπεξεργαστή (εκκίνηση, αιτήματα υπηρεσίας εξωτερικής συσκευής, πληροφορίες σχετικά με τον τρέχοντα τρόπο λειτουργίας και άλλα σήματα).

Το πλάτος bit του διαύλου δεδομένων D συνήθως αντιστοιχεί στο πλάτος bit των τελεστών που επεξεργάζεται ο μικροεπεξεργαστής. Επομένως, ο δίαυλος D περιέχει 8, 16 ή 32 γραμμές για τη μετάδοση των αντίστοιχων bits δεδομένων και εντολών. Ορισμένα πρόσφατα μοντέλα μικροεπεξεργαστών χρησιμοποιούν τον εκτεταμένο δίαυλο D για να επιτρέψουν τη μετάδοση πολλαπλών εντολών ή τελεστών ταυτόχρονα. Για παράδειγμα, οι μικροεπεξεργαστές Pentium 32 bit διαθέτουν δίαυλο δεδομένων 64 bit.

Το πλάτος του διαύλου διευθύνσεων Α καθορίζει τη μέγιστη ποσότητα εξωτερικής μνήμης που απευθύνεται από τον επεξεργαστή. Για παράδειγμα, ένας δίαυλος A 16-bit μπορεί να διευθύνει μνήμη έως και 64 KB, ενώ ένας δίαυλος A 32-bit μπορεί να διευθύνει έως και 4 GB. Οι επεξεργαστές Pentium II, Pentium III, Pentium 4 διαθέτουν δίαυλο διευθύνσεων 36-bit που παρέχει πρόσβαση στη μνήμη έως και 64 GB. Θα πρέπει να σημειωθεί ότι σε έναν αριθμό μικροεπεξεργαστών, για παράδειγμα, στον Pentium, αντί για ψηφία χαμηλής τάξης της διεύθυνσης, δημιουργούνται σήματα ανάκτησης των αντίστοιχων byte (σήματα ανάκτησης byte BEi, όπου i είναι ο αριθμός byte), τα οποία επιτρέπουν την οργάνωση της αποθήκευσης των byte σε ξεχωριστές τράπεζες μνήμης.

Σε πολλά συστήματα μικροεπεξεργαστών, η μεταφορά διεύθυνσης και δεδομένων συνοδεύεται από την αποστολή bit ισοτιμίας, τα οποία παρέχουν τον εντοπισμό πιθανών σφαλμάτων που συμβαίνουν κατά την ανταλλαγή. Στην περίπτωση αυτή, συνήθως υλοποιείται ισοτιμία byte-by-byte, στην οποία κάθε byte της διεύθυνσης ή των δεδομένων συνοδεύεται από ένα επιπλέον (9ο) bit ισοτιμίας που έρχεται σε ξεχωριστή έξοδο του μικροεπεξεργαστή.

Σε ορισμένα συστήματα, για τη μείωση του αριθμού των απαιτούμενων γραμμών επικοινωνίας και των αντίστοιχων απαγωγών και επαφών, πολυπλεξία διευθύνσεων και γραμμών δεδομένων.Σε τέτοια συστήματα, οι ίδιες γραμμές επικοινωνίας χρησιμοποιούνται για τη μετάδοση της διεύθυνσης και των δεδομένων, στα οποία εκδίδεται αρχικά η διεύθυνση και στη συνέχεια φθάνουν τα δεδομένα. Για παράδειγμα, οι μικροελεγκτές 16-bit της οικογένειας MCS-196 που κατασκευάζονται από την Intel διαθέτουν πολυπλεξικό δίαυλο διευθύνσεων δεδομένων AD 16-bit. Η ανταλλαγή πληροφοριών μέσω του πολυπλεξικού διαύλου AD απαιτεί την εισαγωγή ενός ξεχωριστού μητρώου για την αποθήκευση της διεύθυνσης κατά τη μεταφορά δεδομένων. Αυτό απαιτεί επίσης επιπλέον χρόνο για την υλοποίηση της ανταλλαγής, η οποία μειώνει κάπως την απόδοση του συστήματος.

Το πλάτος του διαύλου ελέγχου C καθορίζεται από την οργάνωση του συστήματος, τις δυνατότητες υλοποίησης διαφόρων τρόπων λειτουργίας του, τις μεθόδους που χρησιμοποιούνται για τον έλεγχο του μικροεπεξεργαστή και άλλες συσκευές. Επομένως, το σύνολο των σημάτων ελέγχου που μεταδίδονται μέσω του διαύλου C είναι ξεχωριστό για κάθε μοντέλο μικροεπεξεργαστή. Υπάρχει ένας αριθμός σημάτων ελέγχου που χρησιμοποιούνται στα περισσότερα συστήματα μικροεπεξεργαστών. Αυτά περιλαμβάνουν σήματα αρχικής εκκίνησης (RESET), σήματα που καθορίζουν τον τρόπο λειτουργίας της μνήμης (ανάγνωση - RD, εγγραφή - WR), σήματα απαραίτητα για την υλοποίηση διακοπών και μια σειρά από άλλα. Σε απλά συστήματα, μόνο λίγες γραμμές μπορούν να χρησιμοποιηθούν για τη μετάδοση σημάτων ελέγχου, ενώ σε πολύπλοκα συστήματα, ο αριθμός αυτών των γραμμών είναι αρκετές δεκάδες.

Κατά τη λειτουργία του συστήματος μικροεπεξεργαστή, εφαρμόζονται οι ακόλουθοι κύριοι τρόποι λειτουργίας του:

Εκτέλεση του κύριου προγράμματος.

Κλήση υπορουτίνας.

Διακοπές και εξαιρέσεις εξυπηρέτησης.

Άμεση πρόσβαση στη μνήμη.

Ας εξετάσουμε τις βασικές αρχές για την εφαρμογή αυτών των τρόπων.

Εκτέλεση του κύριου προγράμματος.

Σε αυτή τη λειτουργία, ο επεξεργαστής επιλέγει την επόμενη εντολή προγράμματος από τη μνήμη RAM και εκτελεί την αντίστοιχη λειτουργία. Η εντολή είναι multi-bit δυάδικος αριθμός(Εικ. 1.2), το οποίο αποτελείται από δύο μέρη (πεδία) - τον κωδικό λειτουργίας COP και τον κώδικα διευθυνσιοδότησης τελεστών CAD. Ο κωδικός λειτουργίας COP καθορίζει τον τύπο της λειτουργίας που εκτελείται από αυτήν την εντολή και ο κώδικας διεύθυνσης CAD καθορίζει την επιλογή των τελεστών (μέθοδος διεύθυνσης) στους οποίους εκτελείται η καθορισμένη λειτουργία. Ανάλογα με τον τύπο του μικροεπεξεργαστή, η εντολή μπορεί να περιέχει διαφορετικό αριθμό bit (bytes). Για παράδειγμα, οι οδηγίες του επεξεργαστή Pentium περιέχουν από 1 έως 15 byte και οι επεξεργαστές RISC συνήθως χρησιμοποιούν μια σταθερή μορφή 4 byte για οποιαδήποτε εντολή.

Κωδικός λειτουργίας (COP)

Κωδικός Διεύθυνσης τελεστή (CAD)

Ρύζι. 1.2. Μορφή τυπικής εντολής μικροεπεξεργαστή

Για την αποθήκευση της διεύθυνσης της επόμενης εντολής, χρησιμοποιείται ένας ειδικός καταχωρητής επεξεργαστή - μετρητής προγράμματοςΗ/Υ(Μετρητής προγράμματος), τα περιεχόμενα του οποίου προσαυξάνονται αυτόματα κατά 1 μετά την ανάκτηση του επόμενου byte εντολής. Έτσι, διασφαλίζεται η διαδοχική ανάκτηση εντολών κατά την εκτέλεση του προγράμματος. Όταν επιλεγεί η επόμενη εντολή, τα περιεχόμενα Η/Υεισάγει το δίαυλο διευθύνσεων, διασφαλίζοντας ότι η επόμενη εντολή του προγράμματος που εκτελείται διαβάζεται από τη μνήμη RAM. Κατά την εφαρμογή άνευ όρων ή υπό όρους άλματα (διακλάδωση) ή άλλες αλλαγές στην ακολουθία εκτέλεσης εντολών, φόρτωση σε Η/Υνέο περιεχόμενο, με αποτέλεσμα τη μετάβαση σε άλλο κλάδο ή υπορουτίνα προγράμματος.

Στους επεξεργαστές Pentium και σε άλλα μοντέλα μικροεπεξεργαστών της Intel (8086, 80186, 80286, 386, 486), υλοποιείται μια τμηματοποιημένη οργάνωση μνήμης. Σε αυτήν την περίπτωση, η διεύθυνση της επιλεγμένης εντολής καθορίζεται από τα περιεχόμενα δύο καταχωρητών - του δείκτη εντολών EIP, υποδεικνύοντας τη θέση της εντολής στο τμήμα προγράμματος και τον καταχωρητή τμήματος CS, το οποίο καθορίζει την αρχική (βασική) διεύθυνση αυτού του τμήματος. Μητρώα EIPκαι CSεκτελούν τις λειτουργίες ενός μετρητή προγράμματος σε αυτούς τους μικροεπεξεργαστές Η/Υ:

(EIP) + (CS) = διεύθυνση επόμενης εντολής (PC).

Διάφορες εντολές μεταφοράς ελέγχου υλοποιούνται αλλάζοντας τα περιεχόμενα των καταχωρητών EIPκαι CS.

Η εντολή που λαμβάνεται από τη μνήμη RAM εισέρχεται στον καταχωρητή εντολών, ο οποίος είναι μέρος της μονάδας ελέγχου επεξεργαστή. Στη συνέχεια γίνεται η αποκωδικοποίηση της εντολής, κατά την οποία καθορίζεται το είδος της λειτουργίας που εκτελείται (αποκωδικοποίηση CPC) και σχηματίζεται η διεύθυνση των απαραίτητων τελεστών (αποκωδικοποίηση CAD). Σύμφωνα με τον κωδικό της λαμβανόμενης εντολής, δημιουργείται η CU του επεξεργαστή ακολουθία μικροεντολών, παρέχοντας την εκτέλεση μιας δεδομένης λειτουργίας. Κάθε μικροεντολή εκτελείται κατά τη διάρκεια ένας κύκλος μηχανής - περίοδος παλμών ρολογιούTt, η οποία ρυθμίζεται από τη συχνότητα ρολογιού του μικροεπεξεργαστή Ft = 1/Tt. Οι παλμοί ρολογιού με συχνότητα Ft παράγονται από μια γεννήτρια παλμών ρολογιού (GTI), η οποία αποτελεί μέρος του μικροεπεξεργαστή ή υλοποιείται ως εξωτερική συσκευή συνδεδεμένη στην αντίστοιχη είσοδο του μικροεπεξεργαστή. Η τιμή Tt καθορίζει τον χρόνο εκτέλεσης μεμονωμένων μικροεντολών, η ακολουθία των οποίων παρέχει το απαιτούμενο αποτέλεσμα της λειτουργίας (εισερχόμενη εντολή).

Κάθε εισερχόμενη εντολή απαιτεί έναν ορισμένο αριθμό κύκλων εντολών και κύκλων για να εκτελεστεί. κύκλος εντολώνείναι ο χρόνος που χρειάζεται για να αποκτήσετε πρόσβαση στη μνήμη RAM ή σε μια εξωτερική συσκευή χρησιμοποιώντας το δίαυλο συστήματος. Συνήθως, η υλοποίηση ενός τέτοιου κύκλου διαρκεί από 2 έως 4 ρολόγια συστήματος(περίοδοι ρολογιού διαύλου) που απαιτούνται για τον ορισμό της απαιτούμενης διεύθυνσης, έκδοση σημάτων που καθορίζουν τον τύπο του κύκλου - ανάγνωση ή εγγραφή, λήψη σήματος έτοιμου για ανταλλαγή (από μνήμη ή εξωτερικές συσκευές) και στην πραγματικότητα μεταφορά δεδομένων ή εντολών. Με τη σύγχρονη τεχνολογία μητρικής πλακέτας, η συχνότητα ρολογιού του διαύλου είναι συνήθως δεκάδες MHz (οι τυπικές τιμές είναι 25, 33, 50, 66, 75, 100, 133 MHz).

Όταν κάθε εντολή εκτελείται στους πρώτους κύκλους, λαμβάνεται από τη μνήμη RAM στη διεύθυνση που καθορίζεται από τα περιεχόμενα του μετρητή προγράμματος Η/Υ. Η επακόλουθη αποκωδικοποίηση της επιλεγμένης εντολής καθορίζει τον απαιτούμενο αριθμό κύκλων για την εκτέλεσή της. Εάν η εντολή δεν απαιτεί ανάγνωση τελεστών από τη μνήμη (εξωτερικές συσκευές) ή εγγραφή στη μνήμη (έξοδος σε εξωτερικές συσκευές) των αποτελεσμάτων της λειτουργίας, τότε μια τέτοια εντολή εκτελείται σε έναν κύκλο. Κατά την ανάγνωση τελεστών από τη μνήμη (εξωτερικές συσκευές) ή την εγγραφή του αποτελέσματος στη μνήμη (έξοδος σε εξωτερικές συσκευές), απαιτούνται πρόσθετοι κύκλοι ανάγνωσης (εισόδου) ή εγγραφής (εξόδου). Ανάλογα με το πλάτος bit των τελεστών που υποβάλλονται σε επεξεργασία και το πλάτος bit του διαύλου συστήματος που χρησιμοποιείται, ο αριθμός των κύκλων που απαιτούνται για την εκτέλεση εντολών μπορεί να ποικίλλει: από 1 (ανάκτηση εντολών) έως 4-5 (ανάλογα με την εντολή, το πλάτος του διαύλου και τελεστές).

Κύκλος μηχανής (επεξεργαστής).στα συστήματα μικροεπεξεργαστή είναι η διάρκεια της περιόδου των σημάτων ρολογιού Tt, η οποία ορίζεται από τη συχνότητα ρολογιού του μικροεπεξεργαστή Ft = 1/Tt. Όταν εκτελείτε λειτουργίες που δεν απαιτούν πρόσβαση στο δίαυλο συστήματος, αυτή η συχνότητα καθορίζει την απόδοση του μικροεπεξεργαστή. Για τους σύγχρονους μικροεπεξεργαστές, η συχνότητα Ft φτάνει το 1 GHz ή περισσότερο (τα τελευταία μοντέλα μικροεπεξεργαστών Pentium, AMD K7, Alpha και άλλα). Έτσι, η επεξεργασία των πληροφοριών εντός του επεξεργαστή (χωρίς πρόσβαση στο δίαυλο συστήματος) είναι πολύ ταχύτερη από την ανταλλαγή μέσω του διαύλου. Εάν η συχνότητα ρολογιού του μικροεπεξεργαστή διαφέρει από την τιμή ανταλλαγής στο δίαυλο συστήματος, τότε η έξοδος δεδομένων στον δίαυλο υλοποιείται χρησιμοποιώντας μια ενδιάμεση μνήμη buffer, η οποία αποθηκεύει τα δεδομένα που αποστέλλονται από τον μικροεπεξεργαστή στον δίαυλο συστήματος. Τα δεδομένα λαμβάνονται από την προσωρινή μνήμη και τροφοδοτούνται στο δίαυλο συστήματος με συχνότητα που αντιστοιχεί στη συναλλαγματική ισοτιμία σε αυτόν τον δίαυλο.

Η τρέχουσα κατάσταση του επεξεργαστή κατά την εκτέλεση του προγράμματος καθορίζεται από τα περιεχόμενα μητρώο κατάστασηςSR(Κρατικό μητρώο, στους μικροεπεξεργαστές Pentium αυτός ο καταχωρητής ονομάζεται ΕΣΗΜΑΙΑ). Αυτό το μητρώο περιέχει bits ελέγχου, καθορίζοντας τον τρόπο λειτουργίας του επεξεργαστή και bits χαρακτηριστικών (σημαίες), υποδεικνύοντας τα χαρακτηριστικά του αποτελέσματος της εκτελεσθείσας λειτουργίας:

Ν- πινακίδα(το πιο σημαντικό κομμάτι του αποτελέσματος), N=0 εάν το αποτέλεσμα είναι θετικό, N=1 εάν το αποτέλεσμα είναι αρνητικό.

Γ - ένα σημάδι μεταφοράς, C=1, εάν η πράξη οδήγησε σε μεταφορά από το ψηφίο υψηλής τάξης του αποτελέσματος.

V- σημάδι υπερχείλισης, V=1, εάν το πλέγμα δυαδικών ψηφίων του επεξεργαστή έχει ξεχειλίσει κατά την εκτέλεση εργασιών σε αριθμούς με υπογραφή.

Ζ- σημάδι μηδέν, Z=1, αν το αποτέλεσμα της πράξης είναι μηδέν.

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

Κλήση υπορουτίνας

Η κλήση στην υπορουτίνα υλοποιείται όταν μια ειδική εντολή εισέρχεται στον μικροεπεξεργαστή ΚΛΗΣΗ (σε ορισμένους επεξεργαστές, αυτή η οδηγία έχει μνημονική σημείωση JSR – Jump-to-SubRoutine) που καθορίζει τη διεύθυνση της πρώτης εντολής της καλούμενης υπορουτίνας. Αυτή η διεύθυνση φορτώνεται σε Η/Υ, παρέχοντας την ανάκτηση της πρώτης εντολής της υπορουτίνας στον επόμενο κύκλο εντολών. Προκαταρκτικά, εκτελείται η διαδικασία αποθήκευσης του τρέχοντος περιεχομένου σε ειδικό μητρώο ή κελί μνήμης. Η/Υ, όπου αποθηκεύεται η διεύθυνση της επόμενης εντολής του κύριου προγράμματος, ώστε να μπορεί να επιστραφεί μετά την εκτέλεση της υπορουτίνας. Η επιστροφή στο κύριο πρόγραμμα υλοποιείται όταν ληφθεί μια εντολή ΕΠΙΣΤΡΟΦΗ (μνημονική σημειογραφία ΜΟΥΣΚΕΥΩ ) που τερματίζει την υπορουτίνα. Με αυτήν την εντολή, το αποθηκευμένο περιεχόμενο Η/Υφορτώνεται ξανά στον μετρητή προγράμματος, εκτελώντας την εντολή που ακολούθησε την εντολή στο αρχικό πρόγραμμα ΚΛΗΣΗ .

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

https://pandia.ru/text/78/380/images/image003_87.gif" width="545" height="217 src=">

Εικ.1.4. Επιλογές υλοποίησης στοίβας: εγγραφή στοίβας (α) και

στοίβα που υλοποιείται στη μνήμη RAM (β)

εγγραφή στοίβας(Εικ. 1.4, α) υλοποιείται με χρήση καταχωρητών αντίστροφης μετατόπισης. Κάθε ομάδα ΚΛΗΣΗ προκαλεί την ώθηση του επόμενου περιεχομένου στη στοίβα Η/Υ. Με εντολή ΕΠΙΣΤΡΟΦΗ η κατεύθυνση αλλαγής αντιστρέφεται και το τελευταίο εισερχόμενο περιεχόμενο βγαίνει από τη στοίβα Η/Υ. Έτσι, διασφαλίζεται η εκτέλεση ένθετων υπορουτίνων. Ο πιθανός αριθμός ένθετων υπορουτίνων καθορίζεται από το βάθος της στοίβας, δηλαδή από το πλάτος των καταχωρητών μετατόπισης που χρησιμοποιούνται. Εάν ο αριθμός των φωλιών υπερβαίνει το βάθος της στοίβας, οι πρώτες τιμές ωθούνται στη στοίβα Η/Υχάνονται, δηλαδή δεν θα παρέχεται επιστροφή στο κύριο πρόγραμμα. Επομένως, όταν χρησιμοποιείτε τη στοίβα καταχωρητών, είναι απαραίτητος ο αυστηρός έλεγχος του αριθμού των φωλιών. Αυτή η υλοποίηση της στοίβας χρησιμοποιείται σε συστήματα που επιλύουν προβλήματα με περιορισμένο αριθμό ένθετων υπορουτίνων (συνήθως όχι περισσότερο από 10-20).

Παρέχει σημαντικά περισσότερες ευκαιρίες για ένθεση υπορουτίνων υλοποίηση στοίβας στη μνήμη RAM(Εικ. 1.4, β). Σε αυτήν την περίπτωση, μέρος της μνήμης RAM εκχωρείται για να λειτουργήσει ως στοίβα. Η διεύθυνση σε κελιά στοίβας πραγματοποιείται χρησιμοποιώντας έναν ειδικό καταχωρητή - τον δείκτη στοίβας SP(Stack Pointer), που εισάγεται στην CU του επεξεργαστή. Κανω ΕΓΓΡΑΦΗ SPπεριέχει τη διεύθυνση του επάνω συμπληρωμένου κελιού στη στοίβα όπου είναι αποθηκευμένη η τιμή Η/Υ, καταγράφονται κατά την εκτέλεση της εντολής ΚΛΗΣΗ . Όταν έρθει μια νέα εντολή ΚΛΗΣΗ περιεχόμενο SPμειώνεται αυτόματα κατά 1, απευθυνόμενος στην επόμενη μη συμπληρωμένη θέση στοίβας. Η ληφθείσα διεύθυνση (SP-1) εκδίδεται στο δίαυλο Α και το περιεχόμενο αποστέλλεται στο δίαυλο δεδομένων D Η/Υ, που πρέπει να αποθηκευτούν στη στοίβα. Έτσι, πραγματοποιείται διαδοχική πλήρωση των κελιών στοίβας «από κάτω προς τα πάνω», ενώ SPαπευθύνεται πάντα στην κορυφή της στοίβας. Με εντολή ΕΠΙΣΤΡΟΦΗ τρέχον περιεχόμενο SPεκδίδεται στο δίαυλο Α και ο δίαυλος D διαβάζει την τελευταία γραπτή τιμή από την κορυφή της στοίβας Η/Υ. Μετά από αυτό το περιεχόμενο SPαυξάνεται κατά 1 για την αντιμετώπιση της προηγούμενης τιμής Η/Υ, αποθηκευμένο στη στοίβα. Δεδομένου ότι η RAM είναι συνήθως ένα σημαντικό ποσό, μπορεί να διατεθεί αρκετός χώρος για να χωρέσει τη στοίβα. ένας μεγάλος αριθμός απόκύτταρα μνήμης, παρέχοντας το απαραίτητο επίπεδο υπορουτίνας ένθεσης.

Διακοπές και εξαιρέσεις σέρβις

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

διακοπές(διακοπή) είναι καταστάσεις που συμβαίνουν όταν λαμβάνονται κατάλληλες εντολές (διακοπές λογισμικού) ή σήματα από εξωτερικές συσκευές (διακοπές υλικού). Εξαιρέσεις(εξαίρεση) είναι μη φυσιολογικές καταστάσεις (λάθη) που συμβαίνουν κατά τη λειτουργία του επεξεργαστή. Όταν εντοπίζονται τέτοια σφάλματα, τα αντίστοιχα μπλοκ που ελέγχουν τη λειτουργία του επεξεργαστή δημιουργούν εσωτερικά σήματα αιτήματος που διασφαλίζουν ότι καλείται η απαραίτητη ρουτίνα σέρβις. Η ταξινόμηση των διακοπών και των εξαιρέσεων απεικονίζεται στο Σχήμα 1.5.

DIV_ADBLOCK283">

Οι διακοπές λογισμικού υλοποιούνται κατά την άφιξη ειδικές ομάδες (INTn , INT 3 ΜΕΣΑ για μικροεπεξεργαστές Pentium, TRAPn για μικροεπεξεργαστές της οικογένειας MC68000 και άλλους). Αυτές οι εντολές προκαλούν μια μετάβαση στην εκτέλεση τυπικών ρουτινών υπηρεσιών, για την τοποθέτηση των οποίων εκχωρούνται ορισμένες θέσεις στη μνήμη RAM. Έτσι, κατά την κλήση ρουτίνες υπηρεσίας, υλοποιείται η πρόσβαση σε σταθερές διευθύνσεις.

Οι αιτίες των διακοπών υλικού είναι αιτήματα από διάφορες εξωτερικές (περιφερειακές) συσκευές του συστήματος. Αυτά τα αιτήματα έρχονται στις εξωτερικές ακίδες του μικροεπεξεργαστή ή δημιουργούνται από περιφερειακές συσκευές που βρίσκονται στο ίδιο τσιπ με τον επεξεργαστή. Οι διακοπές υλικού μπορεί να είναι μεταμφιεσμένοςή μη μάσκαρα.

Οι αιτήσεις διακοπής με δυνατότητα επικάλυψης εξυπηρετούνται μόνο εάν το αντίστοιχο bit ελέγχου I στον καταχωρητή κατάστασης SR, η οποία ονομάζεται μάσκα διακοπής, έχει τιμή 1. Σε επεξεργαστές Pentium, αυτό είναι το bit IF στον καταχωρητή ΕΣΗΜΑΙΑ. Με τη βοήθεια ειδικών εντολών, η τιμή αυτού του bit μπορεί να οριστεί στο 1 ή να επαναφερθεί στο 0. Έτσι, είναι δυνατή η ενεργοποίηση ή απενεργοποίηση της υπηρεσίας λαμβανόμενων διακοπών υλικού όταν εκτελούνται ορισμένα προγράμματα ή τμήματα τους. Όταν φθάνουν πολλά αιτήματα ταυτόχρονα, η υπηρεσία υλοποιείται σύμφωνα με την προτεραιότητά τους. Σε ορισμένα συστήματα μικροεπεξεργαστών, περιλαμβάνονται ειδικά μικροκυκλώματα για να διασφαλίζεται η κατά προτεραιότητα εξυπηρέτηση των αιτημάτων από πολλές εξωτερικές συσκευές - ελεγκτές διακοπής.Ορισμένοι τύποι μικροεπεξεργαστών διαθέτουν εσωτερικούς ελεγκτές για την οργάνωση διακοπών προτεραιότητας.

Τα αιτήματα διακοπής που δεν μπορούν να καλυφθούν εξυπηρετούνται πρώτα και δεν μπορούν να καλυφθούν. Συνήθως, ο μικροεπεξεργαστής έχει μία είσοδο για την υποβολή αιτημάτων που δεν μπορούν να καλύψουν τα οποία δημιουργούνται όταν συμβαίνουν καταστάσεις έκτακτης ανάγκης. Τις περισσότερες φορές, αυτή η είσοδος χρησιμοποιείται για τον έλεγχο της τάσης τροφοδοσίας. Εάν η τάση τροφοδοσίας είναι εκτός εύρους, τότε ένας ειδικός αισθητήρας δημιουργεί ένα αίτημα διακοπής χωρίς μάσκα προς τον μικροεπεξεργαστή. Σε αυτήν την περίπτωση, το τροφοδοτικό πρέπει για κάποιο χρονικό διάστημα (περίπου 10 ms) να διατηρήσει το απαιτούμενο επίπεδο τάσης τροφοδοσίας, κατά το οποίο ο μικροεπεξεργαστής εκτελεί μια υπορουτίνα για την επανεγγραφή πληροφοριών σε έναν μαγνητικό δίσκο επαρκή για να συνεχίσει το πρόγραμμα που έχει διακοπεί μετά την επαναφορά της κανονικής λειτουργίας τροφοδοσίας .

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

Οι λόγοι για εξαιρέσεις μπορεί να είναι διάφορα σφάλματα και μη φυσιολογικές καταστάσεις που συμβαίνουν κατά τη λειτουργία του συστήματος. ΔΙΑΦΟΡΕΤΙΚΟΙ ΤΥΠΟΙΟι μικροεπεξεργαστές ελέγχουν διαφορετικές παραλλαγές αυτού του είδους καταστάσεων. Τυπικές αιτίες εξαιρέσεων είναι, για παράδειγμα, η χρήση μηδενικού διαιρέτη κατά την εκτέλεση μιας εντολής διαίρεσης (διαίρεση με 0). ανάκτηση λανθασμένου κωδικού εντολής. υπερβαίνει το επιτρεπόμενο κομμάτι της μνήμης. λήψη εντολών, η εκτέλεση των οποίων απαγορεύεται σε αυτόν τον τρόπο λειτουργίας του μικροεπεξεργαστή, και μια σειρά άλλων. Οι αντίστοιχοι λόγοι εξαίρεσης θα συζητηθούν στην περιγραφή συγκεκριμένων τύπων μικροεπεξεργαστών.

Άμεση πρόσβαση στη μνήμη.

Η λειτουργία DMA (Direct Memory Access) χρησιμοποιείται εάν είναι απαραίτητο να μεταφερθεί σημαντικός όγκος πληροφοριών μεταξύ της RAM και κάποιας εξωτερικής συσκευής που υποβάλλει το κατάλληλο αίτημα στο σύστημα. Η υλοποίηση μιας τέτοιας μεταφοράς με ένα κατάλληλο πρόγραμμα ανταλλαγής απαιτεί την εκτέλεση ξεχωριστής εντολής μεταφοράς για τη μεταφορά κάθε byte ή λέξης. Αυτό απαιτεί μια συγκεκριμένη ποσότητα μνήμης για την αποθήκευση του προγράμματος και απαιτεί σημαντικό χρονικό διάστημα για την εκτέλεσή του.

Στα περισσότερα σύγχρονα συστήματα μικροεπεξεργαστών, η μεταφορά συστοιχιών πληροφοριών παρέχεται με τη βοήθεια ειδικών συσκευών - ελεγκτών DMA, οι οποίοι εφαρμόζουν τη λειτουργία άμεσης πρόσβασης στη μνήμη. Όταν λαμβάνεται ένα αίτημα από μια εξωτερική συσκευή, ο ελεγκτής εκδίδει ένα αντίστοιχο σήμα στον μικροεπεξεργαστή. Έχοντας λάβει αυτό το σήμα, ο μικροεπεξεργαστής ολοκληρώνει τον επόμενο κύκλο ανταλλαγής στο δίαυλο συστήματος και αποσυνδέεται από αυτόν, δηλαδή μεταφέρει τις εξόδους του που συνδέονται με τους διαύλους A, D και τις γραμμές ελέγχου της RAM και των εξωτερικών συσκευών στο off (υψηλή -σύνθετη αντίσταση) κατάσταση. Σε αυτήν την περίπτωση, ο μικροεπεξεργαστής εκδίδει ένα σήμα άδειας στον ελεγκτή DMA για την υλοποίηση άμεσης πρόσβασης. Με τη λήψη αυτού του σήματος, ο ελεγκτής αναλαμβάνει τον έλεγχο του συστήματος. Στέλνει στο δίαυλο Α τις διευθύνσεις των κυψελών RAM με τις οποίες εκτελείται ο τρέχων κύκλος ανταλλαγής, παράγει τα απαραίτητα σήματα που καθορίζουν τον τρόπο λειτουργίας της μνήμης RAM (εγγραφή ή ανάγνωση) και τη συσκευή διασύνδεσης μέσω της οποίας αποστέλλονται οι πληροφορίες (είσοδος ή παραγωγή).

Τα σήματα αίτησης και επιβεβαίωσης DMA μεταδίδονται μεταξύ του μικροεπεξεργαστή και του ελεγκτή DMA στις αντίστοιχες γραμμές του διαύλου ελέγχου C.

Ο ελεγκτής DMA είναι προ-προγραμματισμένος για να εκτελεί τις καθορισμένες λειτουργίες. Περιέχει τις αρχικές διευθύνσεις των συστοιχιών μνήμης στη RAM, από τις οποίες ξεκινά η διαδικασία ανταλλαγής, και τα μεγέθη των συστοιχιών που θα μεταφερθούν. Συνήθως, ο ελεγκτής DMA εξυπηρετεί αιτήματα από πολλές εξωτερικές συσκευές, επομένως είναι προγραμματισμένος να υλοποιεί μια συγκεκριμένη προτεραιότητα της υπηρεσίας τους σε περίπτωση ταυτόχρονης λήψης πολλών αιτημάτων. Ο ελεγκτής προγραμματίζεται στέλνοντάς του τα απαραίτητα μηνύματα ελέγχου. Αυτά τα μηνύματα συνήθως εισάγονται εκ των προτέρων στον ελεγκτή από τον μικροεπεξεργαστή όταν εκτελεί ένα ειδικό πρόγραμμα προετοιμασίας ελεγκτή DMA.

2. Σύστημα εντολών μικροεπεξεργαστών και μέθοδοι διευθυνσιοδότησης τελεστών

Οι περισσότεροι μικροεπεξεργαστές χειρίζονται τους ακόλουθους τύπους ακεραίων δεδομένων:

Λέξεις (16 bit),

Διπλές λέξεις (32 bit).

Ορισμένοι τύποι μικροεπεξεργαστών επεξεργάζονται επίσης λέξεις τετραπλού (64 bit), BCD (Δυαδικό Κωδικοποιημένο Δεκαδικό, αναπαράσταση ενός δεκαδικό ψηφίοχρησιμοποιώντας ένα τετράδιο 4 bit, το οποίο ονομάζεται nibble ή nibble), μια σειρά χαρακτήρων. Η σύνθεση των σύγχρονων μικροεπεξεργαστών υψηλής απόδοσης περιλαμβάνει επίσης μονάδες που επεξεργάζονται αριθμούς που παρουσιάζονται σε μορφή κινητής υποδιαστολής (μονάδες FPU - Μονάδες κινητής υποδιαστολής) και εκτελούν επεξεργασία δεδομένων βίντεο και ήχου, για τις οποίες χρησιμοποιούνται ειδικές μορφές αναπαράστασης.

Επεξεργασμένα δεδομένα - οι τελεστές μπορούν να βρίσκονται σε καταχωρητές ή μνήμη (RAM, ROM ή cache). Η επιλογή ενός τελεστή - ένα byte, μια λέξη ή μια διπλή λέξη, πραγματοποιείται σύμφωνα με τον αριθμό μητρώου (όνομα) που καθορίζεται στην εντολή ή τη διεύθυνση του αντίστοιχου κελιού μνήμης.

Κατά την τοποθέτηση εντολών και δεδομένων στη μνήμη, χρησιμοποιούνται δύο επιλογές για τη διάταξη των byte σε λέξεις:

Ξεκινώντας από το χαμηλό byte ("Little-Endian"),

Ξεκινώντας από το υψηλό byte ("Big-Endian").

Όταν χρησιμοποιείτε την τοποθέτηση "Little-Endian", το χαμηλό byte βρίσκεται στο κελί μνήμης με χαμηλότερη διεύθυνση (Εικ. 1.6, α). Αυτή η επιλογή τοποθέτησης εφαρμόζεται σε μικροεπεξεργαστές που κατασκευάζονται από τις Intel, AMD, Hitachi και ορισμένους άλλους κατασκευαστές. Όταν τοποθετείτε το "Big-Endian", το υψηλό byte βρίσκεται σε ένα κελί με χαμηλότερη διεύθυνση (Εικ. 1.6, β). Αυτή η διάταξη των byte παρέχεται από μικροεπεξεργαστές Motorola, ορισμένα μοντέλα μικροεπεξεργαστών που κατασκευάζονται από την IBM και ορισμένες άλλες εταιρείες. Κατά την πρόσβαση στη μνήμη, ο μικροεπεξεργαστής απευθύνεται σε ένα κελί με χαμηλότερη διεύθυνση, οπότε όταν τοποθετείται το "Little-Endian", η εντολή ή ο τελεστής επιλέγεται ξεκινώντας από το χαμηλό byte και όταν τοποθετείται το "Big-Endian", από το υψηλό byte. Για το λόγο αυτό, απευθείας μεταφορά λογισμικόμεταξύ συστημάτων που χρησιμοποιούν μικροεπεξεργαστές με διαφορετικές επιλογέςΗ τοποθέτηση των bytes, αποδεικνύεται σχεδόν αδύνατο. Για την επίλυση αυτού του προβλήματος, ορισμένοι σύγχρονοι μικροεπεξεργαστές, όπως οι οικογένειες PowerPC, εφαρμόζουν και τα δύο πιθανές επιλογέςτοποθέτηση και διευθυνσιοδότηση byte - "Little-Endian" ή "Big-Endian". Η επιλογή της απαιτούμενης επιλογής ρυθμίζεται μέσω προγραμματισμού.

χαμηλό byte

υψηλό byte

χαμηλό byte

υψηλό byte

υψηλό byte

χαμηλό byte

υψηλό byte

χαμηλό byte

Εικ.1.6. Διεύθυνση bytes με μια λέξη και διπλή λέξηκατά την τοποθέτηση

Βασικοί ορισμοί:

Ηλεκτρονικό σύστημα- σε αυτήν την περίπτωση, είναι οποιαδήποτε ηλεκτρονική μονάδα, μονάδα, συσκευή ή συγκρότημα που επεξεργάζεται πληροφορίες.

Μια εργασία είναι ένα σύνολο λειτουργιών που απαιτείται να εκτελέσει ένα ηλεκτρονικό σύστημα.

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

Ευελιξία είναι η ικανότητα ενός συστήματος να προσαρμόζεται σε διαφορετικές εργασίες.

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

Διεπαφή - μια συμφωνία για την ανταλλαγή πληροφοριών, κανόνες για την ανταλλαγή πληροφοριών, που συνεπάγεται ηλεκτρική, λογική και εποικοδομητική συμβατότητα συσκευών που συμμετέχουν στην ανταλλαγή. Ένα άλλο όνομα είναι σύζευξη.

Ένα σύστημα μικροεπεξεργαστή μπορεί να θεωρηθεί ως ειδική περίπτωση ενός ηλεκτρονικού συστήματος σχεδιασμένου να επεξεργάζεται σήματα εισόδου και να εκδίδει σήματα εξόδου (Εικ. 1.1). Στην περίπτωση αυτή, ως σήματα εισόδου και εξόδου μπορούν να χρησιμοποιηθούν αναλογικά σήματα, μεμονωμένα ψηφιακά σήματα, ψηφιακοί κωδικοί, ακολουθίες ψηφιακών κωδικών. Μέσα στο σύστημα, σήματα (ή πληροφορίες) μπορούν να αποθηκευτούν, να συσσωρευτούν, αλλά η ουσία αυτού δεν αλλάζει. Εάν το σύστημα είναι ψηφιακό (και τα συστήματα μικροεπεξεργαστή ταξινομούνται ως ψηφιακά), τότε τα αναλογικά σήματα εισόδου μετατρέπονται σε ακολουθίες δειγματοληπτικών κωδικών χρησιμοποιώντας το ADC και τα αναλογικά σήματα εξόδου σχηματίζονται από την ακολουθία δειγματοληπτικών κωδικών χρησιμοποιώντας το DAC. Η επεξεργασία και αποθήκευση των πληροφοριών πραγματοποιείται σε ψηφιακή μορφή.

Ένα χαρακτηριστικό γνώρισμα ενός παραδοσιακού ψηφιακού συστήματος είναι ότι οι αλγόριθμοι επεξεργασίας και αποθήκευσης πληροφοριών σε αυτό συνδέονται αυστηρά με το κύκλωμα του συστήματος. Δηλαδή, η αλλαγή αυτών των αλγορίθμων είναι δυνατή μόνο με την αλλαγή της δομής του συστήματος, την αντικατάσταση των ηλεκτρονικών εξαρτημάτων που περιλαμβάνονται στο σύστημα ή/και των συνδέσεων μεταξύ τους. Για παράδειγμα, εάν χρειαζόμαστε μια πρόσθετη λειτουργία άθροισης, τότε πρέπει να προσθέσουμε έναν επιπλέον αθροιστή στη δομή του συστήματος. Ή εάν χρειαζόμαστε μια πρόσθετη συνάρτηση αποθήκευσης του κώδικα για έναν κύκλο, τότε πρέπει να προσθέσουμε έναν ακόμη καταχωρητή στη δομή. Φυσικά, αυτό είναι πρακτικά αδύνατο να γίνει κατά τη λειτουργία· απαιτείται ένας νέος κύκλος παραγωγής σχεδιασμού, κατασκευής και εντοπισμού σφαλμάτων ολόκληρου του συστήματος. Αυτός είναι ο λόγος για τον οποίο το παραδοσιακό ψηφιακό σύστημα αναφέρεται συχνά ως σύστημα «σκληρής λογικής».

Ρύζι. 1.1. Ηλεκτρονικό σύστημα.

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

Πρώτον, ένα εξειδικευμένο σύστημα (σε αντίθεση με ένα καθολικό) δεν έχει ποτέ πλεονασμό υλικού, δηλαδή, κάθε στοιχείο του λειτουργεί απαραίτητα με πλήρη χωρητικότητα (φυσικά, εάν αυτό το σύστημα είναι σωστά σχεδιασμένο).

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

Αλλά ταυτόχρονα, ένα μεγάλο μειονέκτημα ενός ψηφιακού συστήματος που βασίζεται στη «σκληρή λογική» είναι ότι για κάθε νέα εργασία πρέπει να σχεδιάζεται και να κατασκευάζεται εκ νέου. Αυτή είναι μια μακρά, δαπανηρή διαδικασία που απαιτεί καλλιτέχνες υψηλής εξειδίκευσης. Και αν το πρόβλημα που επιλύεται αλλάξει ξαφνικά, τότε όλος ο εξοπλισμός πρέπει να αντικατασταθεί πλήρως. Στον ταχέως μεταβαλλόμενο κόσμο μας, αυτό είναι αρκετά σπάταλο.

Ο τρόπος για να ξεπεραστεί αυτό το μειονέκτημα είναι αρκετά προφανής: είναι απαραίτητο να χτιστεί ένα σύστημα που θα μπορούσε εύκολα να προσαρμοστεί σε οποιαδήποτε εργασία, να αναδημιουργηθεί από τον έναν αλγόριθμο λειτουργίας στον άλλο χωρίς να αλλάξει το υλικό. Και τότε θα μπορούσαμε να ορίσουμε αυτόν ή τον άλλον αλγόριθμο εισάγοντας στο σύστημα κάποιες πρόσθετες πληροφορίες ελέγχου, το πρόγραμμα του συστήματος (Εικ. 1.2). Τότε το σύστημα θα γίνει καθολικό, ή προγραμματιζόμενο, όχι άκαμπτο, αλλά ευέλικτο. Αυτό ακριβώς παρέχει το σύστημα μικροεπεξεργαστή.

Ρύζι. 1.2. Προγραμματιζόμενο (γνωστό και ως καθολικό) ηλεκτρονικό σύστημα.

Αλλά οποιαδήποτε καθολικότητα οδηγεί αναγκαστικά σε πλεονασμό. Εξάλλου, η λύση του πιο δύσκολου προβλήματος απαιτεί πολύ περισσότερα χρήματα από τη λύση του πιο απλού προβλήματος. Ως εκ τούτου, η πολυπλοκότητα του καθολικού συστήματος θα πρέπει να είναι τέτοια που να εξασφαλίζει τη λύση του πιο δύσκολου προβλήματος και κατά την επίλυση ενός απλού προβλήματος, το σύστημα δεν θα λειτουργεί με πλήρη δυναμικότητα, δεν θα χρησιμοποιεί όλους τους πόρους του. Και όσο πιο απλό είναι το πρόβλημα που πρέπει να λυθεί, τόσο μεγαλύτερος είναι ο πλεονασμός και τόσο λιγότερο δικαιολογημένο γίνεται καθολικότητα. Ο πλεονασμός οδηγεί σε αύξηση του κόστους του συστήματος, μείωση της αξιοπιστίας του, αύξηση της κατανάλωσης ενέργειας κ.λπ.

Επιπλέον, η ευελιξία, κατά κανόνα, οδηγεί σε σημαντική μείωση της απόδοσης. Είναι απλώς αδύνατο να βελτιστοποιηθεί ένα καθολικό σύστημα έτσι ώστε κάθε νέα εργασία να επιλύεται όσο το δυνατόν γρηγορότερα. Ο γενικός κανόνας είναι ο εξής: όσο μεγαλύτερη είναι η ευελιξία, η ευελιξία, τόσο μικρότερη είναι η ταχύτητα. Επιπλέον, για τα καθολικά συστήματα δεν υπάρχουν τέτοιες εργασίες (ακόμα και οι πιο απλές) που θα μπορούσαν να επιλύσουν με τη μεγαλύτερη δυνατή ταχύτητα. Όλα πρέπει να πληρωθούν.

Έτσι, μπορεί να εξαχθεί το ακόλουθο συμπέρασμα. Τα συστήματα που βασίζονται στη «σκληρή λογική» είναι καλά όπου το πρόβλημα που επιλύεται δεν αλλάζει για μεγάλο χρονικό διάστημα, όπου απαιτείται η υψηλότερη ταχύτητα, όπου οι αλγόριθμοι επεξεργασίας πληροφοριών είναι εξαιρετικά απλοί. Και τα καθολικά, προγραμματιζόμενα συστήματα είναι καλά όπου οι εργασίες που επιλύονται αλλάζουν συχνά, όπου η υψηλή ταχύτητα δεν είναι πολύ σημαντική, όπου οι αλγόριθμοι επεξεργασίας πληροφοριών είναι πολύπλοκοι. Δηλαδή, κάθε σύστημα είναι καλό στη θέση του.

Ωστόσο, τις τελευταίες δεκαετίες, η ταχύτητα των καθολικών συστημάτων (μικροεπεξεργαστής) έχει αυξηθεί πολύ (κατά αρκετές τάξεις μεγέθους). Επιπλέον, ο μεγάλος όγκος παραγωγής μικροκυκλωμάτων για αυτά τα συστήματα έχει οδηγήσει σε απότομη μείωση του κόστους τους. Ως αποτέλεσμα, το πεδίο εφαρμογής των συστημάτων «σκληρής λογικής» έχει περιοριστεί απότομα. Επιπλέον, τα προγραμματιζόμενα συστήματα που έχουν σχεδιαστεί για να επιλύουν ένα πρόβλημα ή περισσότερα σχετικά προβλήματα αναπτύσσονται με υψηλό ρυθμό. Συνδυάζουν με επιτυχία τόσο τα πλεονεκτήματα των συστημάτων «σκληρής λογικής» όσο και των προγραμματιζόμενων συστημάτων, παρέχοντας έναν συνδυασμό επαρκώς υψηλής απόδοσης και την απαραίτητη ευελιξία. Συνεχίζεται λοιπόν η καταστολή της «σκληρής λογικής».

1.1. Τι είναι ένας μικροεπεξεργαστής;

Ο πυρήνας κάθε συστήματος μικροεπεξεργαστή είναι ένας μικροεπεξεργαστής ή απλά ένας επεξεργαστής (από τον αγγλικό επεξεργαστή). Είναι πιο σωστό να μεταφραστεί αυτή η λέξη στα ρωσικά ως "επεξεργαστής", καθώς είναι ο μικροεπεξεργαστής που είναι ο κόμβος, το μπλοκ που εκτελεί όλη την επεξεργασία των πληροφοριών μέσα στο σύστημα μικροεπεξεργαστή. Οι υπόλοιποι κόμβοι εκτελούν μόνο βοηθητικές λειτουργίες: αποθήκευση πληροφοριών (συμπεριλαμβανομένων πληροφοριών ελέγχου, δηλαδή προγραμμάτων), επικοινωνία με εξωτερικές συσκευές, επικοινωνία με τον χρήστη κ.λπ. Ο επεξεργαστής αντικαθιστά ουσιαστικά όλη τη «σκληρή λογική» που θα χρειαζόταν σε ένα παραδοσιακό ψηφιακό σύστημα. Εκτελεί αριθμητικές λειτουργίες (πρόσθεση, πολλαπλασιασμός κ.λπ.), λογικές συναρτήσεις (shift, σύγκριση, κάλυψη κώδικα κ.λπ.), προσωρινή αποθήκευση κωδικών (σε εσωτερικούς καταχωρητές), μεταφορά κωδικών μεταξύ κόμβων του συστήματος μικροεπεξεργαστή και πολλά άλλα. Ο αριθμός τέτοιων στοιχειωδών λειτουργιών που εκτελούνται από τον επεξεργαστή μπορεί να φτάσει αρκετές εκατοντάδες. Ο επεξεργαστής μπορεί να συγκριθεί με τον εγκέφαλο του συστήματος.

Αλλά ταυτόχρονα, πρέπει να ληφθεί υπόψη ότι ο επεξεργαστής εκτελεί όλες τις λειτουργίες του διαδοχικά, δηλαδή τη μία μετά την άλλη, με τη σειρά του. Φυσικά, υπάρχουν επεξεργαστές με παράλληλη εκτέλεση κάποιων λειτουργιών, υπάρχουν επίσης συστήματα μικροεπεξεργαστών στα οποία αρκετοί επεξεργαστές εργάζονται για την ίδια εργασία παράλληλα, αλλά αυτές είναι σπάνιες εξαιρέσεις. Από τη μία πλευρά, η διαδοχική εκτέλεση των λειτουργιών είναι ένα αναμφισβήτητο πλεονέκτημα, καθώς επιτρέπει τη χρήση μόνο ενός επεξεργαστή για την εκτέλεση οποιουδήποτε, των πιο περίπλοκων αλγορίθμων επεξεργασίας πληροφοριών. Όμως, από την άλλη πλευρά, η διαδοχική εκτέλεση των πράξεων οδηγεί στο γεγονός ότι ο χρόνος εκτέλεσης του αλγορίθμου εξαρτάται από την πολυπλοκότητά του. Οι απλοί αλγόριθμοι τρέχουν πιο γρήγορα από τους σύνθετους. Δηλαδή, ένα σύστημα μικροεπεξεργαστή είναι σε θέση να κάνει τα πάντα, αλλά δεν λειτουργεί πολύ γρήγορα, επειδή όλες οι ροές πληροφοριών πρέπει να περάσουν από έναν μόνο κόμβο - έναν μικροεπεξεργαστή (Εικ. 1.3). Σε ένα παραδοσιακό ψηφιακό σύστημα, είναι εύκολο να οργανωθεί η παράλληλη επεξεργασία όλων των ροών πληροφοριών, ωστόσο, με κόστος την περίπλοκη του κυκλώματος.

Ρύζι. 1.3. Οι πληροφορίες ρέουν σε ένα σύστημα μικροεπεξεργαστή.

Έτσι, ο μικροεπεξεργαστής είναι ικανός να εκτελέσει πολλές λειτουργίες. Πώς ξέρει όμως τι επέμβαση πρέπει να κάνει αυτή τη στιγμή; Αυτό καθορίζεται από τις πληροφορίες ελέγχου, το πρόγραμμα. Το πρόγραμμα είναι ένα σύνολο εντολών (οδηγιών), δηλαδή ψηφιακούς κωδικούς, αποκρυπτογραφώντας τους οποίους, ο επεξεργαστής θα ξέρει τι πρέπει να κάνει. Το πρόγραμμα από την αρχή μέχρι το τέλος συντάσσεται από ένα άτομο, έναν προγραμματιστή και ο επεξεργαστής ενεργεί ως υπάκουος εκτελεστής αυτού του προγράμματος, δεν δείχνει καμία πρωτοβουλία (εκτός φυσικά εάν είναι σε καλή κατάσταση). Επομένως, η σύγκριση του επεξεργαστή με τον εγκέφαλο δεν είναι πολύ σωστή. Είναι απλώς ένας εκτελεστής του αλγορίθμου που ένα άτομο έχει συντάξει για αυτόν εκ των προτέρων. Οποιαδήποτε απόκλιση από αυτόν τον αλγόριθμο μπορεί να προκληθεί μόνο από δυσλειτουργία του επεξεργαστή ή ορισμένων άλλων στοιχείων του συστήματος μικροεπεξεργαστή.

Όλες οι εντολές που εκτελούνται από τον επεξεργαστή σχηματίζουν ένα σύνολο εντολών επεξεργαστή. Η δομή και ο όγκος του συνόλου οδηγιών του επεξεργαστή καθορίζουν την ταχύτητα, την ευελιξία και την ευκολία χρήσης του. Συνολικά, ο επεξεργαστής μπορεί να έχει από πολλές δεκάδες έως αρκετές εκατοντάδες εντολές. Το σύστημα εντολών μπορεί να σχεδιαστεί για ένα στενό εύρος εργασιών προς επίλυση (για εξειδικευμένους επεξεργαστές) ή για το ευρύτερο δυνατό φάσμα εργασιών (για επεξεργαστές γενικής χρήσης). Οι κωδικοί εντολών μπορεί να έχουν διαφορετικό αριθμό ψηφίων (καταλαμβάνουν από ένα έως πολλά byte). Κάθε εντολή έχει τον δικό της χρόνο εκτέλεσης, επομένως ο χρόνος εκτέλεσης ολόκληρου του προγράμματος εξαρτάται όχι μόνο από τον αριθμό των εντολών του προγράμματος, αλλά και από τις εντολές που χρησιμοποιούνται.

Για την εκτέλεση εντολών, η δομή του επεξεργαστή περιλαμβάνει εσωτερικούς καταχωρητές, μια αριθμητική λογική μονάδα (ALU, ALU - Arithmetic Logic Unit), πολυπλέκτης, buffers, καταχωρητές και άλλους κόμβους. Η λειτουργία όλων των κόμβων συγχρονίζεται από ένα κοινό εξωτερικό σήμα ρολογιού του επεξεργαστή. Δηλαδή, ο επεξεργαστής είναι μια αρκετά πολύπλοκη ψηφιακή συσκευή (Εικ. 1.4).

Ρύζι. 1.4. Ένα παράδειγμα της δομής του απλούστερου επεξεργαστή.

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

1.2. Δομή ζεύξης διαύλου

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

Με την κλασική δομή των επικοινωνιών (Εικ. 1.5), όλα τα σήματα και οι κώδικες μεταξύ συσκευών μεταδίδονται μέσω ξεχωριστών γραμμών επικοινωνίας. Κάθε συσκευή που εισέρχεται στο σύστημα μεταδίδει τα σήματα και τους κωδικούς της ανεξάρτητα από άλλες συσκευές. Ταυτόχρονα, πολλές γραμμές επικοινωνίας και διαφορετικά πρωτόκολλα ανταλλαγής πληροφοριών λαμβάνονται στο σύστημα.

Με μια δομή διαύλου επικοινωνιών (Εικ. 1.6), όλα τα σήματα μεταξύ συσκευών μεταδίδονται μέσω των ίδιων γραμμών επικοινωνίας, αλλά σε διαφορετικούς χρόνους (αυτό ονομάζεται πολυπλεξική μετάδοση). Επιπλέον, η μετάδοση σε όλες τις γραμμές επικοινωνίας μπορεί να πραγματοποιηθεί και προς τις δύο κατευθύνσεις (η λεγόμενη αμφίδρομη μετάδοση). Ως αποτέλεσμα, ο αριθμός των γραμμών επικοινωνίας μειώνεται σημαντικά και οι κανόνες ανταλλαγής (πρωτόκολλα) απλοποιούνται. Μια ομάδα γραμμών επικοινωνίας μέσω των οποίων μεταδίδονται σήματα ή κώδικες ονομάζεται δίαυλος.

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

Ρύζι. 1.6. Δομή διαύλου των συνδέσεων.

Το μεγάλο πλεονέκτημα της δομής του διαύλου των επικοινωνιών είναι ότι όλες οι συσκευές που συνδέονται με το δίαυλο πρέπει να λαμβάνουν και να μεταδίδουν πληροφορίες σύμφωνα με τους ίδιους κανόνες (πρωτόκολλα ανταλλαγής πληροφοριών στο δίαυλο). Κατά συνέπεια, όλοι οι κόμβοι που είναι υπεύθυνοι για την ανταλλαγή με το δίαυλο σε αυτές τις συσκευές πρέπει να είναι ομοιόμορφοι, ενοποιημένοι.

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

Μια τυπική δομή ενός συστήματος μικροεπεξεργαστή φαίνεται στο σχήμα. 1.10. Περιλαμβάνει τρεις κύριους τύπους συσκευών:

ΕΠΕΞΕΡΓΑΣΤΗΣ;

μνήμη, συμπεριλαμβανομένης της μνήμης τυχαίας πρόσβασης (RAM, RAM - Μνήμη τυχαίας πρόσβασης) και της μνήμης μόνο για ανάγνωση (ROM, ROM - Μνήμη μόνο για ανάγνωση), η οποία χρησιμοποιείται για την αποθήκευση δεδομένων και προγραμμάτων.

συσκευές εισόδου/εξόδου (I/O - Input/Output Devices), οι οποίες χρησιμοποιούνται για τη σύνδεση του συστήματος μικροεπεξεργαστή με εξωτερικές συσκευές, για τη λήψη (εισόδου, ανάγνωσης, ανάγνωσης) σημάτων εισόδου και έκδοσης σημάτων (έξοδος, εγγραφή, εγγραφή) εξόδου.

Ρύζι. 1.10. Η δομή του συστήματος μικροεπεξεργαστή.

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

Δίαυλος διεύθυνσης (Διεύθυνση Λεωφορείο);

δίαυλος δεδομένων (Data Bus);

Δίαυλος ελέγχου (Control Bus);

power bus (Power Bus).

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

Ο δίαυλος δεδομένων είναι ο κύριος δίαυλος που χρησιμοποιείται για τη μεταφορά κωδικών πληροφοριών μεταξύ όλων των συσκευών του συστήματος μικροεπεξεργαστή. Συνήθως, ένας επεξεργαστής εμπλέκεται στη μεταφορά πληροφοριών, ο οποίος μεταδίδει έναν κωδικό δεδομένων σε κάποια συσκευή ή κυψέλη μνήμης ή λαμβάνει έναν κωδικό δεδομένων από κάποια συσκευή ή κυψέλη μνήμης. Αλλά είναι επίσης δυνατή η μεταφορά πληροφοριών μεταξύ συσκευών χωρίς τη συμμετοχή του επεξεργαστή. Ο δίαυλος δεδομένων είναι πάντα αμφίδρομος.

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

Τέλος, ο δίαυλος ισχύος έχει σχεδιαστεί όχι για να στέλνει σήματα πληροφοριών, αλλά για να τροφοδοτεί το σύστημα. Αποτελείται από ηλεκτροφόρα καλώδια και κοινό καλώδιο. Ένα σύστημα μικροεπεξεργαστή μπορεί να έχει ένα μόνο τροφοδοτικό (συνήθως +5 V) ή πολλαπλά τροφοδοτικά (συνήθως επίσης -5 V, +12 V και -12 V). Κάθε τάση τροφοδοσίας έχει τη δική της γραμμή επικοινωνίας. Όλες οι συσκευές συνδέονται σε αυτές τις γραμμές παράλληλα.

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

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

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

Είναι σημαντικό να ληφθεί υπόψη ότι οι συσκευές I/O είναι τις περισσότερες φορές συσκευές "σκληρής λογικής". Μερικές από τις λειτουργίες που εκτελούνται από το σύστημα μικροεπεξεργαστή μπορούν να τους ανατεθούν. Επομένως, ο προγραμματιστής έχει πάντα την ευκαιρία να αναδιανέμει τις λειτουργίες του συστήματος μεταξύ των υλοποιήσεων υλικού και λογισμικού με τον βέλτιστο τρόπο. Η υλοποίηση υλικού επιταχύνει την εκτέλεση της λειτουργίας, αλλά στερείται ευελιξίας. Η υλοποίηση του λογισμικού είναι πολύ πιο αργή, αλλά παρέχει μεγάλη ευελιξία. Η υλοποίηση λειτουργιών μέσω υλικού αυξάνει το κόστος του συστήματος και την κατανάλωση ενέργειας, ενώ η εφαρμογή λογισμικού όχι. Τις περισσότερες φορές, χρησιμοποιείται ένας συνδυασμός λειτουργιών υλικού και λογισμικού.

Μερικές φορές οι συσκευές εισόδου/εξόδου ενσωματώνουν έναν επεξεργαστή, δηλαδή αντιπροσωπεύουν ένα μικρό εξειδικευμένο σύστημα μικροεπεξεργαστή. Αυτό σας επιτρέπει να μετατοπίσετε ορισμένες από τις λειτουργίες λογισμικού σε συσκευές I/O, κατά την εκφόρτωση ΕΠΕΞΕΡΓΑΣΤΗΣσυστήματα.

1.3. Τρόποι λειτουργίας του συστήματος μικροεπεξεργαστή

Όπως έχει ήδη σημειωθεί, το σύστημα μικροεπεξεργαστή παρέχει μεγάλη ευελιξία, μπορεί να προσαρμοστεί σε οποιαδήποτε εργασία. Αυτή η ευελιξία οφείλεται κατά κύριο λόγο στο γεγονός ότι οι λειτουργίες που εκτελεί το σύστημα καθορίζονται από το πρόγραμμα (λογισμικό, λογισμικό) που εκτελεί ο επεξεργαστής. Το υλικό (hardware, hardware) παραμένει αμετάβλητο για οποιαδήποτε εργασία. Γράφοντας ένα πρόγραμμα στη μνήμη του συστήματος, μπορείτε να κάνετε το σύστημα μικροεπεξεργαστή να εκτελέσει οποιαδήποτε εργασία υποστηρίζεται από αυτό το υλικό. Επιπλέον, η οργάνωση διαύλου των συνδέσεων συστήματος μικροεπεξεργαστή καθιστά αρκετά εύκολη την αντικατάσταση μονάδων υλικού, για παράδειγμα, αντικατάσταση μνήμης με νέα μεγαλύτερης ή μεγαλύτερης ταχύτητας, προσθήκη ή αναβάθμιση συσκευών εισόδου/εξόδου και, τέλος, αντικατάσταση του επεξεργαστή με ένα πιο ισχυρό. Αυτό καθιστά επίσης δυνατή την αύξηση της ευελιξίας του συστήματος, την παράταση της διάρκειας ζωής του με οποιαδήποτε αλλαγή στις απαιτήσεις για αυτό.

Αλλά η ευελιξία του συστήματος μικροεπεξεργαστή δεν καθορίζεται μόνο από αυτό. Η επιλογή του τρόπου λειτουργίας του συστήματος, δηλαδή του τρόπου ανταλλαγής πληροφοριών μέσω του αυτοκινητόδρομου συστήματος (λεωφορείο), βοηθά επίσης να συντονιστείτε στην εργασία.

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

ανταλλαγή πληροφοριών προγράμματος·

ανταλλαγή χρησιμοποιώντας διακοπές (Interrupts)?

ανταλλαγή με χρήση άμεσης πρόσβασης στη μνήμη (DMA, DMA - Direct Memory Access).

Η ανταλλαγή πληροφοριών λογισμικού είναι η κύρια σε κάθε σύστημα μικροεπεξεργαστή. Παρέχεται πάντα, χωρίς αυτό άλλοι τρόποι ανταλλαγής είναι αδύνατοι. Σε αυτήν τη λειτουργία, ο επεξεργαστής είναι ο μοναδικός ιδιοκτήτης (ή κύριος) του διαύλου συστήματος. Όλες οι λειτουργίες (κύκλοι) ανταλλαγής πληροφοριών σε αυτήν την περίπτωση ξεκινούν μόνο από τον επεξεργαστή, όλες εκτελούνται αυστηρά με τη σειρά που ορίζεται από το εκτελέσιμο πρόγραμμα.

Ο επεξεργαστής διαβάζει (επιλέγει) κώδικες εντολών από τη μνήμη και τους εκτελεί διαβάζοντας δεδομένα από τη μνήμη ή από συσκευή I/O, επεξεργάζοντάς τους, γράφοντας δεδομένα στη μνήμη ή μεταφέροντάς τους σε συσκευή I/O. Η διαδρομή του επεξεργαστή μέσω του προγράμματος μπορεί να είναι γραμμική, κυκλική, μπορεί να περιέχει μεταβάσεις (άλματα), αλλά είναι πάντα συνεχής και πλήρως υπό τον έλεγχο του επεξεργαστή. Ο επεξεργαστής δεν ανταποκρίνεται σε εξωτερικά συμβάντα που δεν σχετίζονται με το πρόγραμμα (Εικ. 1.11). Όλα τα σήματα στον αυτοκινητόδρομο σε αυτήν την περίπτωση ελέγχονται από τον επεξεργαστή.

Ρύζι. 1.11. Ανταλλαγή πληροφοριών λογισμικού.

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

ΣΤΟ γενική περίπτωσηΜπορείτε να οργανώσετε μια αντίδραση σε ένα εξωτερικό γεγονός με τρεις διαφορετικούς τρόπους:

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

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

χρησιμοποιώντας άμεση πρόσβαση στη μνήμη, δηλαδή χωρίς τη συμμετοχή του επεξεργαστή όταν αποσυνδεθεί από τον κορμό του συστήματος.

Αυτές οι τρεις μέθοδοι μπορούν να επεξηγηθούν με το ακόλουθο απλό παράδειγμα. Ας υποθέσουμε ότι φτιάχνετε μόνοι σας το πρωινό σας βάζοντας το γάλα στη φωτιά να βράσει. Φυσικά, είναι απαραίτητο να αντιδράσουμε στο βράσιμο του γάλακτος και μάλιστα επειγόντως. Πώς να το οργανώσετε; Ο πρώτος τρόπος είναι να παρακολουθείτε συνεχώς το γάλα, αλλά μετά δεν θα μπορείτε να κάνετε κάτι άλλο. Θα ήταν πιο σωστό να ρίχνετε τακτικά μια ματιά στο γάλα ενώ παράλληλα κάνετε κάτι άλλο. Αυτή είναι μια λειτουργία προγράμματος ψηφοφορίας σημαίας. Ο δεύτερος τρόπος είναι να εγκαταστήσετε έναν αισθητήρα στο τηγάνι με το γάλα που θα κάνει ηχητικό σήμα όταν το γάλα βράσει, και ήρεμα να κάνετε άλλα πράγματα. Όταν ακούς το σήμα, σβήνεις το γάλα. Είναι αλήθεια ότι μπορεί να χρειαστεί να ολοκληρώσετε πρώτα αυτό που ξεκινήσατε, οπότε η αντίδρασή σας θα είναι πιο αργή από ό,τι στην πρώτη περίπτωση. Τέλος, ο τρίτος τρόπος είναι να συνδέσετε τον αισθητήρα στο τηγάνι στο χειριστήριο της σόμπας, ώστε όταν βράσει το γάλα, ο καυστήρας να σβήσει χωρίς τη συμμετοχή σας (ωστόσο, η αναλογία με το RAP δεν είναι πολύ ακριβής εδώ, αφού σε αυτήν την περίπτωση τη στιγμή της δράσης δεν απομακρυνθείτε από την εργασία).

Η πρώτη περίπτωση με το polling the flag υλοποιείται στο σύστημα μικροεπεξεργαστή με συνεχή ανάγνωση πληροφοριών από τον επεξεργαστή από τη συσκευή εισόδου/εξόδου που σχετίζεται με την εξωτερική συσκευή, η συμπεριφορά της οποίας πρέπει να ανταποκριθεί επειγόντως.

Στη δεύτερη περίπτωση, στη λειτουργία διακοπής, ο επεξεργαστής, έχοντας λάβει ένα αίτημα διακοπής από μια εξωτερική συσκευή (συχνά ονομάζεται IRQ - Interrupt ReQuest), τερματίζει την εκτέλεση της τρέχουσας εντολής και προχωρά στον χειριστή διακοπής. Έχοντας ολοκληρώσει την εκτέλεση του προγράμματος υπηρεσίας διακοπής, επιστρέφει στο διακοπτόμενο πρόγραμμα από το σημείο όπου διακόπηκε (Εικ. 1.12).

Το σημαντικό εδώ είναι ότι όλη η εργασία, όπως στην περίπτωση της λειτουργίας προγράμματος, πραγματοποιείται από τον ίδιο τον επεξεργαστή, ένα εξωτερικό συμβάν απλώς του αποσπά προσωρινά την προσοχή. Η απόκριση σε ένα συμβάν εξωτερικής διακοπής είναι γενικά πιο αργή από ό,τι στη λειτουργία προγράμματος. Όπως και στην περίπτωση της ανταλλαγής λογισμικού, εδώ όλα τα σήματα στο δίαυλο εκτίθενται από τον επεξεργαστή, δηλαδή ελέγχει πλήρως το δίαυλο. Για την εξυπηρέτηση των διακοπών, μερικές φορές εισάγεται στο σύστημα μια ειδική μονάδα ελεγκτή διακοπών, η οποία όμως δεν συμμετέχει στην ανταλλαγή πληροφοριών. Σκοπός του είναι να διευκολύνει τον επεξεργαστή να χειρίζεται αιτήματα εξωτερικών διακοπών. Αυτός ο ελεγκτής ελέγχεται συνήθως μέσω προγραμματισμού από τον επεξεργαστή μέσω του διαύλου συστήματος.

Ρύζι. 1.12. Διακοπή της υπηρεσίας.

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

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

Η λειτουργία DMA περιορίζεται στη μεταφορά πληροφοριών από μια συσκευή I/O στη μνήμη ή από τη μνήμη σε μια συσκευή I/O. Όταν ολοκληρωθεί η μεταφορά της πληροφορίας, ο επεξεργαστής επιστρέφει ξανά στο διακοπτόμενο πρόγραμμα, συνεχίζοντας το από το σημείο που διακόπηκε (Εικ. 1.13). Αυτό είναι παρόμοιο με τη λειτουργία υπηρεσίας διακοπής, αλλά σε αυτήν την περίπτωση ο επεξεργαστής δεν συμμετέχει στην ανταλλαγή. Όπως και στην περίπτωση των διακοπών, η απόκριση σε ένα εξωτερικό συμβάν στο DMA είναι πολύ πιο αργή από ό,τι στη λειτουργία προγράμματος.

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

Ρύζι. 1.13. Υπηρεσία PDP.

Ρύζι. 1.14. Οι πληροφορίες ρέουν στη λειτουργία PDP.

Κατ' αρχήν, ο ελεγκτής DMA μπορεί να είναι μέρος μιας συσκευής I/O που χρειάζεται λειτουργία DMA ή ακόμα και μέρος πολλών συσκευών I/O. Θεωρητικά, η άμεση ανταλλαγή πρόσβασης στη μνήμη μπορεί να παρέχει υψηλότερο ρυθμό μεταφοράς πληροφοριών από την ανταλλαγή λογισμικού, καθώς ο επεξεργαστής μεταφέρει δεδομένα πιο αργά από έναν αποκλειστικό ελεγκτή DMA. Ωστόσο, αυτό το πλεονέκτημα δεν γίνεται πάντα αντιληπτό στην πράξη. Η συναλλαγματική ισοτιμία στη λειτουργία DMA συνήθως περιορίζεται από τις δυνατότητες της ραχοκοκαλιάς. Επιπλέον, η ανάγκη προγραμματισμού των λειτουργιών του ελεγκτή DMA μπορεί να αναιρέσει το κέρδος από τον υψηλότερο ρυθμό μεταφοράς δεδομένων στη λειτουργία DMA. Ως εκ τούτου, το καθεστώς PDP χρησιμοποιείται σπάνια.

Εάν το σύστημα διαθέτει ήδη έναν ανεξάρτητο ελεγκτή DMA, τότε σε ορισμένες περιπτώσεις αυτό μπορεί να απλοποιήσει σημαντικά τον εξοπλισμό των συσκευών εισόδου/εξόδου που λειτουργούν στη λειτουργία DMA. Αυτό, ίσως, είναι το μόνο αδιαμφισβήτητο πλεονέκτημα του καθεστώτος RAP.

1.4. Αρχιτεκτονική συστημάτων μικροεπεξεργαστών

Μέχρι τώρα, έχουμε εξετάσει μόνο έναν τύπο αρχιτεκτονικής συστημάτων μικροεπεξεργαστών - μια αρχιτεκτονική με έναν κοινό, ενιαίο δίαυλο για δεδομένα και εντολές (αρχιτεκτονική ενός διαύλου ή Princeton, αρχιτεκτονική von Neumann). Αντίστοιχα, το σύστημα σε αυτή την περίπτωση έχει μία κοινή μνήμη, τόσο για δεδομένα όσο και για εντολές (Εικ. 1.15).

Ρύζι. 1.15. Αρχιτεκτονική με κοινό δίαυλο δεδομένων και εντολών.

Υπάρχει όμως και ένας εναλλακτικός τύπος αρχιτεκτονικής συστήματος μικροεπεξεργαστή - μια αρχιτεκτονική με ξεχωριστούς διαύλους δεδομένων και εντολών (αρχιτεκτονική δύο διαύλων ή Harvard). Αυτή η αρχιτεκτονική προϋποθέτει ότι το σύστημα έχει ξεχωριστή μνήμη για δεδομένα και ξεχωριστή μνήμη για εντολές (Εικ. 1.16). Η ανταλλαγή του επεξεργαστή με καθένα από τους δύο τύπους μνήμης γίνεται στον δικό του δίαυλο.

Η κοινή αρχιτεκτονική διαύλου είναι πολύ πιο κοινή και χρησιμοποιείται, για παράδειγμα, σε προσωπικούς υπολογιστές και σύνθετους μικροϋπολογιστές. Η αρχιτεκτονική split bus χρησιμοποιείται κυρίως σε μικροελεγκτές ενός chip.

Εξετάστε μερικά από τα πλεονεκτήματα και τα μειονεκτήματα και των δύο αρχιτεκτονικών λύσεων.

Η αρχιτεκτονική με ένα κοινό δίαυλο (Princeton, Von Neumann) είναι απλούστερη, δεν απαιτεί από τον επεξεργαστή να εξυπηρετεί ταυτόχρονα δύο λεωφορεία, να ελέγχει την ανταλλαγή σε δύο λεωφορεία ταυτόχρονα. Η παρουσία μιας ενιαίας μνήμης δεδομένων και εντολών σάς επιτρέπει να κατανέμετε ευέλικτα τον όγκο της μεταξύ δεδομένων και κωδικών εντολών. Για παράδειγμα, σε ορισμένες περιπτώσεις, χρειάζεστε ένα μεγάλο και πολύπλοκο πρόγραμμα και δεν χρειάζεται να αποθηκεύσετε πάρα πολλά δεδομένα στη μνήμη. Σε άλλες περιπτώσεις, αντίθετα, το πρόγραμμα απαιτείται να είναι απλό, αλλά απαιτούνται μεγάλες ποσότητες αποθηκευμένων δεδομένων. Η ανακατανομή της μνήμης δεν προκαλεί προβλήματα, το κύριο πράγμα είναι ότι το πρόγραμμα και τα δεδομένα ταιριάζουν στη μνήμη του συστήματος. Κατά κανόνα, σε συστήματα με τέτοια αρχιτεκτονική, η μνήμη είναι αρκετά μεγάλη (έως δεκάδες και εκατοντάδες megabyte). Αυτό σας επιτρέπει να λύσετε τα πιο περίπλοκα προβλήματα.

Ρύζι. 1.16. Αρχιτεκτονική με ξεχωριστούς διαύλους δεδομένων και εντολών.

Η αρχιτεκτονική με ξεχωριστούς διαύλους δεδομένων και εντολών είναι πιο περίπλοκη, αναγκάζει τον επεξεργαστή να εργάζεται ταυτόχρονα με δύο ροές κώδικα, να εξυπηρετεί την ανταλλαγή σε δύο διαύλους ταυτόχρονα. Το πρόγραμμα μπορεί να τοποθετηθεί μόνο στη μνήμη εντολών, τα δεδομένα μπορούν να τοποθετηθούν μόνο στη μνήμη δεδομένων. Μια τόσο στενή εξειδίκευση περιορίζει το εύρος των εργασιών που επιλύονται από το σύστημα, καθώς δεν παρέχει τη δυνατότητα ευέλικτης ανακατανομής μνήμης. Η μνήμη δεδομένων και η μνήμη εντολών σε αυτήν την περίπτωση δεν είναι πολύ μεγάλες, επομένως η χρήση συστημάτων με αυτήν την αρχιτεκτονική περιορίζεται συνήθως σε όχι πολύ περίπλοκες εργασίες.

Ποιο είναι το πλεονέκτημα μιας αρχιτεκτονικής dual-bus (Harvard); Πρώτα από όλα, στην ταχύτητα.

Το γεγονός είναι ότι με μία μόνο εντολή και δίαυλο δεδομένων, ο επεξεργαστής αναγκάζεται να λαμβάνει δεδομένα (από τη μνήμη ή μια συσκευή I / O) και να μεταδίδει δεδομένα (στη μνήμη ή σε μια συσκευή I / O) και σε αυτόν τον δίαυλο. ως εντολές ανάγνωσης από τη μνήμη. Φυσικά, αυτές οι μεταφορές κωδικών κατά μήκος του κορμού δεν μπορούν να συμβούν ταυτόχρονα, πρέπει να εκτελούνται με τη σειρά τους. Οι σύγχρονοι επεξεργαστές είναι σε θέση να συνδυάζουν έγκαιρα την εκτέλεση εντολών και τους κύκλους ανταλλαγής στο δίαυλο συστήματος. Η χρήση τεχνολογιών διοχέτευσης και γρήγορης κρυφής μνήμης τους επιτρέπει να επιταχύνουν τη διαδικασία αλληλεπίδρασης με σχετικά αργή μνήμη συστήματος. Η αύξηση της συχνότητας του ρολογιού και η βελτίωση της δομής των επεξεργαστών καθιστούν δυνατή τη μείωση του χρόνου εκτέλεσης των εντολών. Αλλά μια περαιτέρω αύξηση στην απόδοση του συστήματος είναι δυνατή μόνο με το συνδυασμό μεταφοράς δεδομένων και ανάγνωσης εντολών, δηλαδή με μετάβαση σε μια αρχιτεκτονική δύο διαύλων.

Στην περίπτωση μιας αρχιτεκτονικής δύο λεωφορείων, η ανταλλαγή και στα δύο λεωφορεία μπορεί να είναι ανεξάρτητη, παράλληλη χρονικά. Αντίστοιχα, οι δομές διαύλου (ο αριθμός των δυαδικών ψηφίων του κώδικα διεύθυνσης και του κώδικα δεδομένων, η σειρά και η ταχύτητα ανταλλαγής πληροφοριών κ.λπ.) μπορούν να επιλεγούν βέλτιστα για την εργασία που επιλύει κάθε δίαυλος. Επομένως, ceteris paribus, η μετάβαση σε μια αρχιτεκτονική δύο διαύλων επιταχύνει τη λειτουργία ενός συστήματος μικροεπεξεργαστή, αν και απαιτεί πρόσθετο κόστος υλικού και περιπλέκει τη δομή του επεξεργαστή. Η μνήμη δεδομένων σε αυτήν την περίπτωση έχει τη δική της κατανομή διευθύνσεων και η μνήμη εντολών τη δική της.

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

1.5. Τύποι συστημάτων μικροεπεξεργαστή

Το εύρος εφαρμογής της τεχνολογίας μικροεπεξεργαστών είναι πλέον πολύ ευρύ, οι απαιτήσεις για συστήματα μικροεπεξεργαστών είναι πολύ διαφορετικές. Ως εκ τούτου, έχουν δημιουργηθεί διάφοροι τύποι συστημάτων μικροεπεξεργαστών, που διαφέρουν ως προς την ισχύ, την ευελιξία, την ταχύτητα και τις δομικές διαφορές. Οι κύριοι τύποι είναι:

μικροελεγκτές - ο απλούστερος τύπος συστημάτων μικροεπεξεργαστή στα οποία όλοι ή περισσότεροι από τους κόμβους του συστήματος κατασκευάζονται με τη μορφή ενός μικροκυκλώματος.

ελεγκτές - συστήματα μικροεπεξεργαστή ελέγχου, κατασκευασμένα με τη μορφή ξεχωριστών μονάδων.

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

Οι υπολογιστές (συμπεριλαμβανομένων των προσωπικών) είναι τα πιο ισχυρά και πιο ευέλικτα συστήματα μικροεπεξεργαστών.

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

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

Οι ελεγκτές, κατά κανόνα, δημιουργούνται για την επίλυση μιας συγκεκριμένης εργασίας ή μιας ομάδας σχετικών εργασιών. Συνήθως δεν έχουν τη δυνατότητα σύνδεσης πρόσθετων κόμβων και συσκευών, για παράδειγμα, μεγάλη μνήμη, εγκαταστάσεις I/O. Ο δίαυλος συστήματός τους είναι τις περισσότερες φορές απρόσιτος στον χρήστη. Η δομή του ελεγκτή είναι απλή και βελτιστοποιημένη για μέγιστη απόδοση. Στις περισσότερες περιπτώσεις, τα εκτελέσιμα προγράμματα αποθηκεύονται στη μόνιμη μνήμη και δεν αλλάζουν. Δομικά, οι ελεγκτές παράγονται σε έκδοση μονής πλακέτας.

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

Τέλος, οι υπολογιστές και οι πιο συνηθισμένοι από αυτούς - οι προσωπικοί υπολογιστές - είναι το πιο ευέλικτο από τα συστήματα μικροεπεξεργαστών. Προβλέπουν αναγκαστικά τη δυνατότητα εκσυγχρονισμού, καθώς και άφθονες ευκαιρίες για σύνδεση νέων συσκευών. Ο δίαυλος συστήματός τους είναι, φυσικά, διαθέσιμος στον χρήστη. Επιπλέον, οι εξωτερικές συσκευές μπορούν να συνδεθούν στον υπολογιστή μέσω πολλών ενσωματωμένων θυρών επικοινωνίας (ο αριθμός των θυρών μερικές φορές φτάνει τις 10). Ένας υπολογιστής έχει πάντα πολύ ανεπτυγμένα μέσα επικοινωνίας με τον χρήστη, μέσα μακροπρόθεσμης αποθήκευσης πληροφοριών μεγάλου όγκου, μέσα επικοινωνίας με άλλους υπολογιστές μέσω δικτύων πληροφοριών. Οι τομείς εφαρμογής των υπολογιστών μπορεί να είναι πολύ διαφορετικοί: μαθηματικοί υπολογισμοί, διατήρηση πρόσβασης σε βάσεις δεδομένων, έλεγχος της λειτουργίας πολύπλοκων ηλεκτρονικών συστημάτων, παιχνίδια υπολογιστών, προετοιμασία εγγράφων κ.λπ.

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

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

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

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

Στο διάγραμμα, βλέπουμε τα κύρια στοιχεία της απλούστερης συσκευής μικροεπεξεργαστή. Όλα τα ονόματα δίνονται σε ρωσική και αγγλική έκδοση. Επιπλέον, εάν πρόκειται να συνεχίσετε να ασχολείστε με την τεχνολογία μικροεπεξεργαστών, να είστε προετοιμασμένοι για το γεγονός ότι στην πραγματική πράξη θα συναντηθείτε αποκλειστικά με αγγλικές ονομασίες. Ας αποκρυπτογραφήσουμε αυτές τις σημειώσεις:

ΕΠΕΞΕΡΓΑΣΤΗΣ- κεντρική μονάδα επεξεργασίας (κεντρική μονάδα επεξεργασίας - CPU)

ΕΜΒΟΛΟ- Μνήμη τυχαίας πρόσβασης (RAM)

ROM- Μνήμη μόνο για ανάγνωση (ROM)

ΛιμάνιΕΓΩ /Ο– θύρα εισόδου/εξόδου

Τι είναι ένας επεξεργαστής γνωρίζετε ήδη λίγο. Η RAM και η ROM είναι δύο τύποι μνήμης. Δεν μπορούσαν να χωριστούν. Ο επεξεργαστής δεν τα διαχωρίζει και λειτουργεί και με τους δύο τύπους μνήμης με τον ίδιο τρόπο. Αλλά υπάρχει μια αρκετά σημαντική διαφορά μεταξύ τους. Η RAM αποθηκεύει πληροφορίες μόνο όταν υπάρχει τάση τροφοδοσίας. Το κλασικό παράδειγμα κυψέλης RAM είναι ο απλούστερος καταχωρητής που έχει δημιουργηθεί σε D-flip-flops. Οι πληροφορίες μπορούν να εγγραφούν σε ένα τέτοιο μητρώο και θα αποθηκευτούν εκεί. Αλλά μετά την απενεργοποίηση της τροφοδοσίας, την επόμενη φορά που θα την ενεργοποιήσετε, όλα τα D-flip-flops του καταχωρητή θα ρυθμιστούν σε τυχαία θέση. Οι πληροφορίες θα χαθούν. Η μνήμη RAM που βασίζεται σε παράλληλους καταχωρητές δεν χρησιμοποιείται πλέον σχεδόν. Ωστόσο, μέχρι σήμερα, δεν έχει εφευρεθεί μια αρκετά γρήγορη συσκευή μνήμης που να μην χάνει πληροφορίες όταν απενεργοποιείται η τροφοδοσία.

Οι σύγχρονες RAM είναι χτισμένες σε διαφορετικές αρχές. Τώρα η λεγόμενη δυναμική μνήμη RAM κυριαρχεί στην τεχνολογία μικροεπεξεργαστή. Για την αποθήκευση πληροφοριών, χρησιμοποιούν μικροσκοπικούς πυκνωτές κατασκευασμένους με ενσωματωμένο τρόπο σε κρύσταλλο πυριτίου. Κάθε πυκνωτής αποθηκεύει ένα bit πληροφοριών. Το σήμα εισόδου, χρησιμοποιώντας έναν αποκωδικοποιητή, εφαρμόζεται σε αυτόν τον πυκνωτή και, εάν είναι μια λογική μονάδα, τότε ο πυκνωτής φορτίζεται. Εάν είναι λογικό μηδέν, τότε αποφορτίζεται. Στη συνέχεια, ο εσωτερικός διακόπτης αποσυνδέει τον πυκνωτή από όλα τα κυκλώματα και οι φορτισμένοι πυκνωτές αποθηκεύουν το φορτίο τους για κάποιο χρονικό διάστημα. Αλλά αυτοί οι πυκνωτές είναι πολύ μικροί. Και η χωρητικότητά τους είναι επίσης μικρή. Επομένως, διατηρούν τη φόρτισή τους μόνο για λίγα χιλιοστά του δευτερολέπτου. Προκειμένου όποια πληροφορία και αν χαθεί, χρησιμοποιείται ένα σχήμα αναγέννησης μνήμης. Όλα τα κελιά μνήμης είναι οργανωμένα ως ένα σύνολο συμβολοσειρών. Ένα ειδικό κύκλωμα διαβάζει περιοδικά πληροφορίες από τη μνήμη γραμμή προς γραμμή. Μετά την ανάγνωση της επόμενης γραμμής, οι πληροφορίες ανάγνωσης γράφονται ξανά στα ίδια κελιά μνήμης. Στη συνέχεια, οι πυκνωτές φορτίζονται ξανά. Για να λειτουργεί κανονικά η DRAM, το κύκλωμα της συσκευής μικροεπεξεργαστή πρέπει να παρέχει συνεχώς τέτοια αναγέννηση καθ' όλη τη διάρκεια της λειτουργίας του συστήματος. Η μνήμη RAM των σύγχρονων μεγάλων υπολογιστών είναι επίσης διατεταγμένη σύμφωνα με τη δυναμική αρχή. Ωστόσο, το κύκλωμα αναγέννησης είναι ενσωματωμένο στα ίδια τα τσιπ RAM.

Οι ROM κατασκευάζονται χρησιμοποιώντας διαφορετική τεχνολογία. Ονομάζονται μόνιμες συσκευές αποθήκευσης γιατί οι πληροφορίες τους γράφονται μία φορά, είτε κατά την παραγωγή τους είτε αμέσως πριν από τη χρήση, χρησιμοποιώντας ειδικούς προγραμματιστές. Η αρχή της αποθήκευσης πληροφοριών βασίζεται στην καύση εσωτερικών jumper σε ειδικά μικροκυκλώματα. Κάθε βραχυκυκλωτήρας έχει σχεδιαστεί για να αποθηκεύει ένα bit πληροφοριών. Εάν υπάρχει ένα jumper, τότε αυτό σημαίνει ότι ένα μόνο bit πληροφοριών αποθηκεύεται σε αυτό το κελί. Αν καεί, τότε το κελί είναι μηδέν. Ο επεξεργαστής μπορεί να διαβάσει πληροφορίες μόνο από τη ROM. Δεν είναι δυνατή η εγγραφή πληροφοριών στη ROM. Ωστόσο, εάν ο μικροεπεξεργαστής εξακολουθεί να προσπαθεί να γράψει, τότε δεν θα συμβεί τίποτα κακό. Δεν θα καταγραφεί τίποτα. Το κελί θα διατηρήσει αυτό που ήταν πριν από την προσπάθεια εγγραφής. Τα τσιπ ROM απλά δεν έχουν είσοδο εγγραφής (WR).

Οι θύρες εισόδου/εξόδου (ή απλώς θύρες) είναι συνηθισμένοι καταχωρητές. Χρησιμεύουν για να διασφαλίσουν ότι το σύστημα μικροεπεξεργαστή μπορεί να ελέγχει οποιεσδήποτε εξωτερικές συσκευές. Από τη μία πλευρά, συνδέονται λεωφορεία συστήματος σε αυτά και από την άλλη συνδέονται εξωτερικές συσκευές. Για παράδειγμα, οι μετατροπείς ψηφιακού σε αναλογικό (DAC) μπορούν να συνδεθούν στις εξόδους των θυρών εξόδου και μέσω ειδικών ηλεκτρονικών πλήκτρων, ηλεκτρομαγνητικών ρελέ, λαμπτήρων, LED, κινητήρων, ηλεκτρομαγνητικών και οποιωνδήποτε ενεργοποιητών. Μπορείτε να συνδέσετε μετατροπείς αναλογικού σε ψηφιακό (ADC), κουμπιά, αισθητήρες στις εισόδους των θυρών εισόδου. Με τη βοήθεια θυρών, μπορείτε ακόμη και να κάνετε διακόπτες στο ίδιο το κύκλωμα της συσκευής μικροεπεξεργαστή χρησιμοποιώντας κλειδιά και λογικά στοιχεία. Σε αυτήν την περίπτωση, η συσκευή μικροεπεξεργαστή γίνεται ευέλικτη και ικανή να προσαρμόζεται αυτόματα στην εργασία που εκτελείται.

Στο διάγραμμα, στο Σχ. Το σχήμα 24 δείχνει τους τρεις κύριους διαύλους του συστήματος μικροεπεξεργαστή. Μαζί αποτελούν το δίαυλο συστήματος. Ο δίαυλος συστήματος αποτελείται από τα ακόλουθα στοιχεία:

SD- Δίαυλος δεδομένων (Δίαυλος δεδομένων)

ΗΠΑ– Δίαυλος διευθύνσεων (Δίαυλος ADDR)

SHU- Δίαυλος ελέγχου (Δίαυλος CONTROL)

Δίαυλος δεδομένων.

Αυτός ο δίαυλος έχει σχεδιαστεί για να μεταφέρει δεδομένα από τον μικροεπεξεργαστή σε περιφερειακές συσκευές και αντίστροφα. Να σας υπενθυμίσω ότι οι περιφερειακές συσκευές για τον επεξεργαστή είναι συσκευές μνήμης (RAM και ROM) και θύρες εισόδου/εξόδου. Σε απλούς ελεγκτές μικροεπεξεργαστή, συνήθως έχει 8 bit. Σε πιο σύνθετα - 16, 32, 64 ... Ο αριθμός των ψηφίων είναι πάντα πολλαπλάσιο του οκτώ. Ένα byte πληροφοριών (δηλαδή ένας δυαδικός αριθμός οκτώ bit) μεταδίδεται σε οκτώ bit. Δεκαέξι bit μπορούν να μεταδώσουν δύο byte ταυτόχρονα. Σε ένα δίαυλο 32 bit, οι πληροφορίες μπορούν να μεταφερθούν με τρεις τρόπους: ένα byte (στα χαμηλότερα οκτώ bit), δύο byte (στο κάτω 16) και 4 byte ταυτόχρονα. Μια παρόμοια αρχή χρησιμοποιείται στον δίαυλο 64-bit. Έτσι, όπως μπορούμε να δούμε, ένα byte έχει γίνει επίσης ένα είδος προτύπου, μια μονάδα μέτρησης δεδομένων.

Διεύθυνση λεωφορείου.

Σχεδιασμένο για να μεταφέρει τη διεύθυνση σε όλες τις περιφερειακές συσκευές (τόσο σε συσκευές μνήμης όσο και σε θύρες I/O). Ο αριθμός των bit του διαύλου διευθύνσεων είναι πολύ διαφορετικός. Για παράδειγμα, ο μικροεπεξεργαστής της σειράς K580IK80 έχει 16 bit διεύθυνσης. Αυτό μπορεί να θεωρηθεί ως το ελάχιστο ποσό. Ο επεξεργαστής Intel 8086, στον οποίο είναι συναρμολογημένος ο πρόγονος όλων των σύγχρονων προσωπικών υπολογιστών, ο IBM PC-XT, έχει 20 bit διεύθυνσης. Οι σύγχρονοι επεξεργαστές έχουν έως και 32 bit ή περισσότερα. Ο αριθμός των bit του διαύλου διευθύνσεων καθορίζει πόσα κελιά μνήμης μπορεί να απευθυνθεί ένας επεξεργαστής. Ένας επεξεργαστής με δίαυλο δεδομένων δεκαέξι bit μπορεί να έχει πρόσβαση σε 2 16 (δηλαδή, 65536) κελιά μνήμης. Αυτός ο αριθμός ονομάζεται ποσότητα μνήμης. Δηλαδή, με άλλο τρόπο μπορούμε να πούμε ότι ένας τέτοιος επεξεργαστής έχει διευθυνσιοδοτούμενη μνήμη 65536 byte.

Η πληροφορική χρησιμοποιεί μια ασυνήθιστη διάσταση για να μετρήσει την ποσότητα της μνήμης. Ο αριθμός 1024 (και αυτό είναι 2 10) byte πληροφοριών ονομάζεται συνήθως Kilobyte. Γιατί 1024 και όχι 1000; Λοιπόν, πρώτον, επειδή ο αριθμός των κελιών μνήμης που απευθύνονται από οποιονδήποτε μικροεπεξεργαστή είναι πάντα μια τιμή ίση με οποιαδήποτε ισχύ δύο. Για παράδειγμα, για να διευθύνετε 1024 κελιά μνήμης, χρειάζεστε έναν δίαυλο διευθύνσεων που έχει ακριβώς 10 bit. Σε αυτή την περίπτωση, το λεωφορείο δεν θα είναι περιττό. Αν θέλαμε να έχουμε μόνο 1000 κελιά μνήμης, τότε για να παρέχουμε τη δυνατότητα πρόσβασης σε οποιοδήποτε από αυτά, θα χρειαζόμασταν 10 bit διεύθυνσης, αφού με εννέα bit είναι δυνατή η πρόσβαση μόνο σε 512 κελιά. Επομένως, κανείς δεν έχει φτιάξει ποτέ μια συσκευή αποθήκευσης με όγκο όχι ίσο με μία από τις δυνάμεις των δύο. Είναι λογικό ότι είναι πιο βολικό να μετράτε την ποσότητα της μνήμης σε ποσότητες από την ίδια σειρά.

Επομένως, ένα kilobyte ισούται με 1024 byte. Ένα megabyte ισούται με 1024 kilobyte. Ένα gigabyte ισούται με 1024 megabyte. Λοιπόν, η τεχνική μας δεν έχει προχωρήσει ακόμη περισσότερο. Μέχρι στιγμής, η ποσότητα της μνήμης που χρησιμοποιείται πραγματικά στους σύγχρονους υπολογιστές δεν ξεπερνά τα λίγα gigabyte.

Ο ίδιος δίαυλος δεδομένων χρησιμοποιείται για τη διεύθυνση των θυρών I/O. Αλλά σε αντίθεση με τον τρόπο ανταλλαγής δεδομένων με RAM, κατά την ανταλλαγή με ROM, συνήθως χρησιμοποιούνται μόνο οκτώ (σπάνια 16) bit χαμηλής τάξης του ίδιου διαύλου διευθύνσεων. Αυτό οφείλεται στο γεγονός ότι σε ένα πραγματικό σύστημα μικροεπεξεργαστή υπάρχουν πολύ λιγότερες θύρες I/O από τις κυψέλες μνήμης.

Λεωφορείο ελέγχου.

Αυτός ο δίαυλος δεν έχει την ίδια καθαρή δομή με τον δίαυλο δεδομένων ή τον δίαυλο διευθύνσεων. Ο δίαυλος ελέγχου συνδυάζει συμβατικά ένα σύνολο γραμμών που μεταδίδουν διάφορα σήματα ελέγχου από τον επεξεργαστή σε όλες τις περιφερειακές συσκευές και αντίστροφα. Τι είναι αυτές οι γραμμές. Σε κάθε δίαυλο ελέγχου, υπάρχουν απαραίτητα γραμμές που μεταδίδουν τα ακόλουθα σήματα:

RD– σήμα ανάγνωσης

WR– σήμα καταγραφής

MREQ– σήμα, αρχικοποίηση συσκευών μνήμης (RAM ή ROM)

IORQ– σήμα εκκίνησης της θύρας εισόδου/εξόδου

Επιπλέον, τα σήματα διαύλου ελέγχου περιλαμβάνουν:

ΕΤΟΙΜΟΣ- σήμα ετοιμότητας

ΕΠΑΝΑΦΟΡΑ- σήμα επαναφοράς

Και μερικά ακόμη ειδικά σήματα, για τα οποία θα μιλήσουμε αργότερα.

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

Ας εξετάσουμε λεπτομερέστερα πώς το σύστημα μικροεπεξεργαστή που φαίνεται στο Σχ. 28. Στον κύριο τρόπο λειτουργίας, ολόκληρο το σύστημα μικροεπεξεργαστή ελέγχεται από την κεντρική μονάδα επεξεργασίας (CPU). Ταυτόχρονα, μπορεί να εκτελέσει τέσσερις βασικές λειτουργίες: ανάγνωση από ένα κελί μνήμης, εγγραφή σε ένα κελί μνήμης, ανάγνωση από μια θύρα και εγγραφή σε μια θύρα.

Για να διαβάσει ένα byte από ένα κελί μνήμης, ο επεξεργαστής ορίζει πρώτα τη διεύθυνση του επιθυμητού κελιού στο δίαυλο διευθύνσεων. Στη συνέχεια ρυθμίζει το σήμα MREQ σε ενεργή κατάσταση(Μητρώο 0). Αυτό το σήμα πηγαίνει στις συσκευές μνήμης και χρησιμεύει ως άδεια για την εργασία τους. Σε αυτή την περίπτωση, το σήμα IORQ παραμένει ίσο με το ημερολόγιο. 1. Επομένως, οι θύρες I/O του συστήματος μικροεπεξεργαστή δεν είναι ενεργές.

Την επόμενη χρονική στιγμή, ο επεξεργαστής αλλάζει το σήμα RD στην ενεργή κατάσταση. Αυτό το σήμα αποστέλλεται τόσο στις συσκευές μνήμης όσο και στις θύρες I/O. Ωστόσο, οι θύρες δεν ανταποκρίνονται σε αυτό επειδή απενεργοποιούνται από ένα υψηλό σήμα IORQ. Η συσκευή μνήμης, αντίθετα, έχοντας λάβει τα σήματα ελέγχου RD και MREQ, εξάγει ένα byte πληροφοριών στον δίαυλο δεδομένων από το κελί μνήμης του οποίου η διεύθυνση εισέρχεται μέσω του διαύλου διευθύνσεων.

Η διαδικασία εγγραφής δεδομένων στη μνήμη πραγματοποιείται με την ακόλουθη σειρά: Πρώτον, ο κεντρικός επεξεργαστής τοποθετεί τη διεύθυνση του επιθυμητού κελιού μνήμης στο δίαυλο διευθύνσεων. Στη συνέχεια, ορίζει το byte στο δίαυλο δεδομένων που θα εγγραφεί σε αυτό το κελί. Μετά από αυτό, ενεργοποιείται το σήμα MREQ, επιτρέποντας την πρόσβαση στη μονάδα μνήμης. Και μόνο τότε ο επεξεργαστής θέτει το σήμα WR στην ενεργή (καταγραφή 0) κατάσταση. Με αυτό το σήμα, ένα byte γράφεται στο κελί μνήμης, η διεύθυνση του οποίου υπάρχει στο δίαυλο διευθύνσεων.

Ορισμένοι τύποι μνήμης είναι πολύ αργοί. Μπορεί να μην έχουν χρόνο να εκδώσουν πληροφορίες ή να τις γράψουν τόσο γρήγορα όσο μπορεί να κάνει ο κεντρικός επεξεργαστής. Για τον συντονισμό της λειτουργίας συσκευών αργής μνήμης με γρήγορους επεξεργαστές, υπάρχει σήμα ΕΤΟΙΜΟ (ετοιμότητα). Αμέσως αφού ο επεξεργαστής ρυθμίσει το σήμα ανάγνωσης ή εγγραφής στην ενεργή κατάσταση, η συσκευή μνήμης θέτει το σήμα READY στην παθητική κατάσταση (log. 0). Αυτό το επίπεδο σήματος σημαίνει ότι η εξωτερική συσκευή δεν είναι έτοιμη, δηλαδή δεν έχει εκτελέσει ακόμη την εντολή. Το σήμα READY αποστέλλεται στον επεξεργαστή και μεταβαίνει σε κατάσταση αναμονής. Όταν η συσκευή μνήμης εκτελέσει την εντολή, θα θέσει το σήμα στην ενεργή κατάσταση (ημερολόγιο 1). Ο επεξεργαστής, έχοντας λάβει αυτό το σήμα, συνεχίζει να λειτουργεί. Το σήμα READY ισχύει επίσης για αργές θύρες I/O.

Οι λειτουργίες ανάγνωσης και εγγραφής με θύρες I/O είναι παρόμοιες με τις λειτουργίες ανάγνωσης/εγγραφής με RAM. Η μόνη διαφορά είναι ότι αντί για το σήμα MREQ, το σήμα IORQ μεταβαίνει στην ενεργή κατάσταση, επιτρέποντας στις θύρες να λειτουργούν.

Όπως φαίνεται από το διάγραμμα (Εικ. 24), πολλές μονάδες μνήμης, καθώς και πολλές θύρες, μπορούν να συνδεθούν σε έναν δίαυλο συστήματος. Όλες οι συσκευές συνδέονται παράλληλα με όλους τους διαύλους. Πώς συμβαίνει ο επεξεργαστής να γράφει πληροφορίες στη μονάδα μνήμης στην οποία χρειάζεται και ταυτόχρονα να μην εμπίπτει σε άλλες μονάδες; Για αυτό, ένας ειδικός αποκωδικοποιητής είναι ενσωματωμένος σε κάθε μονάδα μνήμης. Λαμβάνει σήματα από τα bit υψηλής τάξης του διαύλου διευθύνσεων. Περαιτέρω, με τη βοήθεια εσωτερικών βραχυκυκλωτικών, για κάθε ενότητα, επιλέγεται το δικό της εύρος διευθύνσεων έτσι ώστε οι μονάδες να καταλαμβάνουν διαφορετικές μη τέμνουσες περιοχές. Για να γίνει αυτό πιο σαφές, ας υποθέσουμε ότι έχουμε τέσσερις μονάδες μνήμης με δεκαέξι κελιά η καθεμία. Για την αντιμετώπιση δεκαέξι κελιών, αρκούν τέσσερα bit του διαύλου διευθύνσεων. Θα χρειαστούν άλλα δύο ψηφία για να επιλέξετε μία από τις ενότητες. Επομένως, τα τέσσερα λιγότερο σημαντικά bit του διαύλου δεδομένων (D 0..D 3) τροφοδοτούνται σε όλες τις μονάδες μνήμης παράλληλα και χρησιμοποιούνται για την επιλογή ενός από τα κελιά στη μονάδα. Τα επόμενα δύο bit (D 4, D 5) τροφοδοτούνται στους αποκωδικοποιητές επιλεγμένων μονάδων. Τέτοιες μονάδες ονομάζονται επίσης τράπεζες μνήμης. Οι βραχυκυκλωτήρες στις επιλεγμένες μονάδες πρέπει να ρυθμιστούν έτσι ώστε η πρώτη μονάδα (τράπεζα μνήμης) να ενεργοποιείται όταν τα bit D4, D5 λάβουν την τιμή 00 2 . Στη δεύτερη ενότητα, οι βραχυκυκλωτήρες πρέπει να ρυθμιστούν στη θέση όπου θα ενεργοποιηθεί η μονάδα εάν τα D 5, D 5 έχουν ρυθμιστεί στο 01 2 . Η τρίτη ενότητα ενεργοποιείται στο D 4, D 5 =10 2 και η τέταρτη στο 11 2 . Με αυτήν τη μέθοδο ενεργοποίησης μονάδων μνήμης, η πρώτη τράπεζα μνήμης θα καταλαμβάνει διευθύνσεις από 000000 2 έως 001111 2 στο χώρο διευθύνσεων. Η δεύτερη τράπεζα - διευθύνσεις από 010000 2 έως 011111 2. Το τρίτο είναι από 100000 2 έως 101111 2 . Και το τέταρτο - από 110000 2 έως 111111 2 . Έτσι, ο επεξεργαστής θα μπορεί να έχει πρόσβαση σε οποιοδήποτε κελί οποιασδήποτε τράπεζας μνήμης. Και ταυτόχρονα, όλες οι μονάδες θα συνδέονται παράλληλα με όλους τους διαύλους του συστήματος μικροεπεξεργαστή.

Ολοκληρώνοντας αυτό το κεφάλαιο, είναι απαραίτητο να πούμε για ένα ακόμη στοιχείο που υπάρχει απαραίτητα σε οποιοδήποτε σύστημα μικροεπεξεργαστή. Αυτή είναι μια γεννήτρια ρολογιού. Στο σχ. 24 η γεννήτρια ρολογιού δεν εμφανίζεται για λόγους απλότητας. Κάθε λειτουργία στο σύστημα μικροεπεξεργαστή χωρίζεται σε πολλούς κύκλους. Η γεννήτρια ρολογιού παράγει ορθογώνιους παλμούς που τροφοδοτούνται σε μια ειδική είσοδο του μικροεπεξεργαστή και μερικές φορές σε κάποια άλλα μικροκυκλώματα του συστήματος μικροεπεξεργαστή. Αυτοί οι παλμοί συγχρονίζουν όλες τις διεργασίες που συμβαίνουν στο σύστημα μικροεπεξεργαστή και, τελικά, καθορίζουν την ταχύτητα ολόκληρου του συστήματος. Για μικροελεγκτές AT 89C 2051 και παρόμοιους, η γεννήτρια ρολογιού είναι μέρος του ίδιου του τσιπ ελεγκτή.

1.1 Ορισμός μικροεπεξεργαστή

Στις αρχές της δεκαετίας του 1970, οι τεχνολογικές εξελίξεις στη μικροηλεκτρονική οδήγησαν στη δημιουργία ενός νέου βάση στοιχείουηλεκτρονικά - μικροηλεκτρονικά μεγάλα ολοκληρωμένα κυκλώματα (LSI) (ενότητα 1 κεφάλαιο 1.6.3) . Σύμφωνα με τον βαθμό ολοκλήρωσης (ο αριθμός των ενεργών στοιχείων: διόδους και τρανζίστορ), τα ολοκληρωμένα κυκλώματα (IC) χωρίζονται υπό όρους σε IC με χαμηλό βαθμό ολοκλήρωσης - έως και 100 ενεργά στοιχεία, μεσαίου βαθμούενοποίηση (SIS) - έως 1000 ενεργά στοιχεία, LSI - πάνω από 1000 ενεργά στοιχεία, VLSI - πάνω από 10000 στοιχεία. Κυκλοφορία νέου BIS στις σύγχρονο επίπεδοο αυτοματισμός σχεδιασμού είναι μια πολύ περίπλοκη και δαπανηρή διαδικασία λόγω του υψηλού αρχικού κόστους ανάπτυξης της λογικής δομής και τοπολογίας του, της κατασκευής φωτομάσκας και τεχνολογική προετοιμασίαπαραγωγή. Πρόκειται για 0,5-1 χρόνο δουλειάς μεγάλης ομάδας. Επομένως, η κατασκευή LSI δικαιολογείται οικονομικά όταν παράγονται, υπολογίζονται σε δεκάδες ή εκατοντάδες χιλιάδες τεμάχια ετησίως. Είναι σχεδόν αδύνατο να παραχθεί εξειδικευμένο LSI για κάθε συγκεκριμένη εφαρμογή. Ως αποτέλεσμα της αναζήτησης περιοχών μαζικής εφαρμογής μικροκυκλωμάτων με υψηλό επίπεδο ολοκλήρωσης, οι προγραμματιστές τους πρότειναν την ιδέα της δημιουργίας ενός καθολικού LSI ή ενός συγκεκριμένου συνόλου LSI, η εξειδίκευση των οποίων για κάθε συγκεκριμένη εφαρμογή δεν επιτυγχάνεται από κύκλωμα, αλλά από λογισμικό. Έτσι εμφανίστηκαν τα τυπικά καθολικά στοιχεία - μικροεπεξεργαστής LSI με δομή παρόμοια με αυτή ενός υπολογιστή.

Ο μικροεπεξεργαστής (MP) είναι μια συσκευή επεξεργασίας και ελέγχου ικανή να επεξεργάζεται πληροφορίες, να λαμβάνει αποφάσεις, να εισάγει και να εξάγει πληροφορίες υπό τον έλεγχο του προγράμματος και κατασκευάζεται με τη μορφή ενός ή περισσότερων LSI.


1.2 Τεχνολογία κατασκευής MP LSI

Υπάρχουν δύο τύποι τεχνολογίας κατασκευής LSI: διπολική - βασισμένη στη χρήση διπολικών τρανζίστορ και MOS (μέταλλο - οξείδιο - ημιαγωγός) - τεχνολογία που βασίζεται στη χρήση τρανζίστορ φαινομένου πεδίου.

Τα LSI που κατασκευάζονται με χρήση διπολικής τεχνολογίας διαφέρουν στις σχηματικές μεθόδους εφαρμογής τους. Βασικά, χρησιμοποιείται λογική τρανζίστορ-τρανζίστορ με διόδους Schottky (TTLSh) και λογική συζευγμένης εκπομπής (ECL). Η λογική TTLSH χρησιμοποιεί διπολικά τρανζίστορ n-p-n, συμπληρωμένα με διόδους Schottky (DSh). Το DS είναι μια επαφή ανορθωτή στη διεπαφή μετάλλου-ημιαγωγού Al-nSi. Στο μέταλλο και το πυρίτιο, οι περισσότεροι φορείς του ίδιου τύπου είναι τα ηλεκτρόνια και δεν υπάρχουν φορείς μειοψηφίας. Τα LH ανοίγουν σε U=0,1-0,3 V και έχουν απότομο χαρακτηριστικό ρεύμα-τάση. Συνδέονται παράλληλα με τον συλλέκτη μετάβαση n-p-nτρανζίστορ και σχηματίζουν ένα τρανζίστορ Schottky, που κατασκευάζεται σε ενιαίο τεχνολογική διαδικασία. Η χρήση LH αυξάνει σημαντικά την ταχύτητα του τρανζίστορ, καθώς ο κορεσμός της διασταύρωσης του συλλέκτη εξαλείφεται και δεν υπάρχει απορρόφηση φορτίων σε αυτό.

Πρώτη γενιά

4004 - 1971

Η ιστορία του MP ξεκίνησε το 1971, όταν η INTEL (το όνομά της προέρχεται από τις λέξεις Integrated Electronics) κυκλοφόρησε το πρώτο MP i4004, που κατασκευάστηκε με τεχνολογία p-MOS με ανάλυση 10 microns. Είχε πλάτος δεδομένων 4 bit, δυνατότητα διευθυνσιοδότησης 640 byte μνήμης, συχνότητα ρολογιού f=108 kHz και εκτελούσε 60 kop/sec. Ένας τέτοιος επεξεργαστής θα μπορούσε ήδη να λειτουργήσει ως υπολογιστικός πυρήνας μιας αριθμομηχανής. Περιείχε 2300 τρανζίστορ.

8008 - 1972

Το 1972, εμφανίστηκε το πρώτο βελτιωμένο MP i8008 οκτώ bit, κατασκευασμένο επίσης με τεχνολογία p-MOS. Στεγαζόταν σε συσκευασία 16 ακίδων. Εκτελέστηκαν 48 εντολές, διεύθυνση 16 Kb μνήμης, f=800 KHz. Είχε 7 εσωτερικούς καταχωρητές 8-bit και μια εσωτερική στοίβα 7 επιπέδων.

Δεύτερη γενιά

8080 - 1974

Το 1974 εμφανίστηκε το i8080 MP, που κατασκευάστηκε με τεχνολογία n-MOS με ανάλυση 6 microns, που επέτρεψε την τοποθέτηση 6000 τρανζίστορ σε έναν κρύσταλλο. Ο επεξεργαστής απαιτούσε τρία τροφοδοτικά (+5, +12, -5 V) και πολύπλοκο συγχρονισμό push-pull σε συχνότητα 2 MHz. Το πλήρες ανάλογο της ρωσικής παραγωγής KR580VM80 συζητείται λεπτομερώς παραπάνω. Ταυτόχρονα, η Motorola κυκλοφόρησε το M6800 MP, το οποίο διέφερε από το i8080 στο ότι είχε μία τάση τροφοδοσίας, ένα πιο ισχυρό σύστημα διακοπής, περιείχε δύο μπαταρίες, αλλά δεν είχε RON. Τα δεδομένα για επεξεργασία ανακτήθηκαν από την εξωτερική μνήμη και στη συνέχεια επιστράφηκαν εκεί. Οι εντολές μνήμης είναι πιο σύντομες και απλούστερες από ό,τι στο BM80, αλλά η μεταφορά διαρκεί περισσότερο. Μέχρι σήμερα δεν έχουν αποκαλυφθεί πλεονεκτήματα στην εσωτερική δομή του M6800. Απομένουν δύο ανταγωνιστικές οικογένειες Intel και Motorola. Ωστόσο, το μεγαλύτερο μέρος της παγκόσμιας και της ρωσικής αγοράς καταλαμβάνεται από προϊόντα Intel.

Ο επόμενος ήταν ο επεξεργαστής i8085 (f=5 MHz, 6500 τρανζίστορ, 370 kop/s, τεχνολογία 3 micron). Διατήρησε τη δημοφιλή αρχιτεκτονική μητρώου i8080 και συμβατότητα λογισμικού, αλλά πρόσθεσε μια σειριακή θύρα διεπαφής, μια γεννήτρια ρολογιού και έναν ελεγκτή συστήματος. Η τάση τροφοδοσίας είναι μία: + 5V.

Ζ80 - 1977

Μερικοί από τους προγραμματιστές της Intel που δεν συμφωνούσαν με ορισμένες αποφάσεις διαχείρισης μετακόμισαν στη Zilog και το 1977 δημιούργησαν το Z80 MP (το ρωσικό ανάλογο του K1810VM80). Αυτό το MP χρησιμοποιήθηκε στον βρετανικό υπολογιστή "Spectrum" από τον Sincler, ο οποίος θεωρήθηκε ο καλύτερος εκπρόσωπος του MP 8 bit της 2ης γενιάς.

τρίτη γενιά

8086 - 1978

Αυτή η γενιά βουλευτών Intel έθεσε τα θεμέλια για τους σύγχρονους προσωπικούς υπολογιστές. Το 1978 κυκλοφόρησε ο επεξεργαστής 16-bit i8086. Τα δεδομένα του: f=5 MHz, απόδοση 330kop/s, τεχνολογία 3μm, τρανζίστορ 29k. Άρχισε να χρησιμοποιεί τμηματοποίηση μνήμης και ένα νέο σχήμα κωδικοποίησης εντολών.

8088 - 1979

Ωστόσο, η πολύ περίπλοκη και ακριβή τεχνολογία παραγωγής αυτού του επεξεργαστή ανάγκασε την Intel να κυκλοφορήσει μια κάπως απλοποιημένη έκδοση που ονομάζεται i8088 από το 1979, ο δίαυλος δεδομένων του οποίου ήταν μόνο 8 bit. Αυτόν τον επεξεργαστή επέλεξε η IBM για τον πρώτο της προσωπικό υπολογιστή, το μοντέλο IBM PC / XT.

80186 - 1980

Το 1980 δημιουργήθηκε το MP i80186. Σε σύγκριση με το i8086, περιλαμβάνει επιπλέον δύο ανεξάρτητα κανάλια DMA υψηλής ταχύτητας, έναν προγραμματιζόμενο ελεγκτή διακοπής και παράγονται σήματα για την επιλογή 7 περιφερειακών συσκευών. Υπάρχουν 16 εσωτερικοί προγραμματιζόμενοι χρονοδιακόπτες, δύο από αυτούς έχουν έξοδο προς τα έξω, ενώ οι υπόλοιποι μπορούν να δημιουργήσουν χρονικές καθυστερήσεις. Ουρά εντολών - 6 byte (στο i8088 - 4 byte). Υπάρχουν 10 επιπλέον εντολές που επιταχύνουν την εκτέλεση των προγραμμάτων σε σύγκριση με το i8086. Ωστόσο, αυτός ο επεξεργαστής δεν χρησιμοποιήθηκε ευρέως σε υπολογιστές.

τέταρτη γενιά

80286 - 1982

Το 1982, εμφανίστηκε ο επεξεργαστής i80286, ο οποίος χρησιμοποιήθηκε από την IBM στον υπολογιστή PC / AT (AT - Advanced Technology - υποσχόμενη τεχνολογία). Είχε ήδη 134 χιλιάδες τρανζίστορ (τεχνολογία 1,5 micron) και απευθυνόταν έως και 16 MB φυσικής μνήμης. Θα μπορούσε να λειτουργήσει σε δύο τρόπους: πραγματικό και προστατευμένο. Σε πραγματική λειτουργία, το i80286 λειτουργεί όπως ένα i8086 με αυξημένη απόδοση (f έως 20 MHz). Η μνήμη θεωρείται ως ένας αριθμός τμημάτων, καθένα από τα οποία περιέχει 2 16 byte. Τα τμήματα ξεκινούν από διευθύνσεις που είναι πολλαπλάσια του 16 (τα χαμηλότερα 4 bit διευθύνσεων είναι πάντα 0). Τα τμήματα μπορούν να οριστούν αυθαίρετα σε προγράμματα. Οι διευθύνσεις τμημάτων αποθηκεύονται σε καταχωρητές τμημάτων. Σε προστατευμένη λειτουργία, η διεύθυνση υψηλού τμήματος δεν υπολογίζεται προσθέτοντας 4 μηδενικά στην αρχή, αλλά εξάγεται από πίνακες που έχουν ευρετηριαστεί χρησιμοποιώντας καταχωρητές τμημάτων. Αυτό σας επιτρέπει να εργάζεστε με μεγάλες ποσότητες πληροφοριών, ο όγκος των οποίων υπερβαίνει την ποσότητα της φυσικής μνήμης. Εάν η φυσική μνήμη είναι πλήρως φορτωμένη, τότε τα δεδομένα που δεν χωρούν βρίσκονται στον σκληρό δίσκο. Επιπλέον, η προστατευμένη λειτουργία μπορεί να υποστηρίξει πολλαπλές εργασίες. Για το σκοπό αυτό δημιουργήθηκε το λειτουργικό σύστημα OS/2.

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

Πέμπτη γενιά

80386 - 1985

Ο πρώτος αντιπρόσωπός του ήταν ένα 32-bit MP i80386DX που περιείχε 275 χιλιάδες τρανζίστορ, τεχνολογία 1,5 micron, διευθυνσιοδοτούμενη φυσική μνήμη 4 GB. Υπάρχουν νέοι καταχωρητές, νέες λειτουργίες 32-bit.

Για να εκτελεί το MP προγράμματα γραμμένα για προηγούμενες γενιές, έχει τρεις τρόπους λειτουργίας.

Μετά την επαναφορά ή την εφαρμογή της τάσης τροφοδοσίας, το MP μπαίνει σε πραγματική λειτουργία και λειτουργεί σαν ένα πολύ γρήγορο i8086, αλλά, κατόπιν αιτήματος του προγραμματιστή, με 32 bit. Όλες οι ενέργειες: διευθυνσιοδότηση, πρόσβαση στη μνήμη, χειρισμός διακοπών εκτελούνται όπως στο i8086. Η δεύτερη λειτουργία - προστατευμένη, ενεργοποιείται με τη φόρτωση μιας συγκεκριμένης λέξης κατάστασης στον καταχωρητή ελέγχου. Σε αυτήν την περίπτωση, το MP λειτουργεί ως i80286 σε προστατευμένη λειτουργία. Εφαρμόστηκε multitasking, προστασία μνήμης με χρήση μηχανισμού προνομίων τεσσάρων επιπέδων και σελιδοποίησης του. Το MP λειτουργεί ως πολλαπλοί εικονικοί επεξεργαστές με κοινόχρηστη μνήμη, καθένας από τους οποίους μπορεί να είναι σε λειτουργίες i8086, i80286 ή i80386.

Στην τρίτη, εικονική λειτουργία, τα πλεονεκτήματα αυτού του επεξεργαστή αποκαλύπτονται πλήρως. Εδώ, χρησιμοποιούνται πλήρως και τα 32 bit της διεύθυνσης και είναι δυνατή η εργασία με εικονική μνήμη. Μόνο με την εμφάνιση του i80386 ξεκίνησε η ταχεία εισαγωγή των Windows, καθώς η ισχύς των επεξεργαστών προηγούμενων γενεών ήταν ανεπαρκής για τα Windows.

80386SX - 1988

Το 1988 εμφανίστηκε ο επεξεργαστής i80386SX, ο οποίος γέμισε το κενό μεταξύ του ήδη ξεπερασμένου επεξεργαστή i80286 και του πανάκριβου επεξεργαστή i80386DX. Αλλάζω σε μητρική πλακέταΟ ξεπερασμένος επεξεργαστής i80286 στο i80386DX δεν είναι δυνατός λόγω του μεγαλύτερου πλάτους του διαύλου δεδομένων του τελευταίου. Ο επεξεργαστής i80386SX επιτρέπει μια τέτοια αντικατάσταση. Οι εσωτερικές διεργασίες στο i80386SX είναι οι ίδιες όπως στο i80386DX, αλλά η επικοινωνία με το "εξωτερικό περιβάλλον" πραγματοποιείται μόνο μέσω διαύλου 16 bit. Ως αποτέλεσμα, η επικοινωνία πραγματοποιείται σε 2 βήματα των 16 bit, γεγονός που επιβραδύνει την εργασία κατά περίπου 10%. Ένας άλλος περιορισμός του επεξεργαστή i80386SX είναι ο δίαυλος διευθύνσεων 24-bit, ο οποίος περιορίζει το μέγεθος της μνήμης RAM στα 16 MB. Μετά το αναθεωρημένο MP i80386SX, η Intel δημιούργησε και κυκλοφόρησε στην αγορά τον επεξεργαστή i80386SL με συχνότητα ρολογιού 33 MHz, βασισμένο σε δομές CMOS που παρέχουν ελάχιστη κατανάλωση ενέργειας. Χάρη σε αυτό, άρχισαν να αναπτύσσονται προσωπικοί υπολογιστές με μπαταρίες όπως τα Notebook.

έκτη γενιά

80486 - 1989

Εμφανίστηκε το 1989 ως MP i80486DX. Σε αντίθεση με το MP των προηγούμενων γενεών, αυτό το MP δεν αντιπροσωπεύει κάτι θεμελιωδώς νέο. Σε αυτό, ο επεξεργαστής i80386, ο συμεπεξεργαστής i80387 και η κύρια κρυφή μνήμη χωρητικότητας 8 KB αντιγράφηκαν σε ένα τσιπ.

Σημείωση.

Παρά την αρχιτεκτονική των 32 bit που κληρονομήθηκε από το i80386 MP, ως αποτέλεσμα του συνδυασμού του επεξεργαστή, του συνεπεξεργαστή και της κρυφής μνήμης σε ένα τσιπ και άλλες βελτιώσεις, το i80486 στην ίδια συχνότητα ρολογιού εκτελεί υπολογισμούς 3-4 φορές πιο γρήγορα από τον προκάτοχό του.

Η Intel βελτιώνει αυτόν τον επεξεργαστή όλη την ώρα και κυκλοφόρησε ο i80486DX2 MP, στον οποίο η συχνότητα εξωτερικού ρολογιού διπλασιάζεται από τον χαλαζία του μικροκυκλώματος και ο i80486DX4, στον οποίο η συχνότητα πολλαπλασιάζεται επί 3. Σε αυτούς τους επεξεργαστές, όλα οδηγίες που δεν απαιτούν μεταφορά δεδομένων σε εξωτερικό δίαυλο, εκτελούνται 2-3 φορές πιο γρήγορα. Μόνο ο χρόνος που αφιερώνεται στην πρόσβαση στη μνήμη RAM και σε πιο αργά περιφερειακά μειώνουν την ταχύτητα της εργασίας. Εξάλλου, στο i80486DX4 η μνήμη cache αυξάνεται έως και 16 KB.

Γενιές Pentiums

Pentium P5 - 1993

Το 1993 εμφανίστηκε το i80586, στο οποίο δόθηκε το όνομα Pentium (P5). Ήταν ένας επεξεργαστής 32 bit με συχνότητα εξωτερικού ρολογιού 66 MHz, κατασκευασμένος χρησιμοποιώντας τεχνολογία υπομικρών με δομή CMOS (0,8 μικρά) που περιείχε 3,1 εκατομμύρια τρανζίστορ. Το Pentium διαθέτει δύο χώρους διευθύνσεων 32-bit (λογικούς και φυσικούς), έναν δίαυλο δεδομένων 64-bit και 2 αγωγούς επεξεργασίας εντολών που λειτουργούν παράλληλα. Δύο σύνολα εντολών εκτελούνται ταυτόχρονα. Η κρυφή μνήμη 16 KB χωρίζεται σε προσωρινή μνήμη εντολών 8 KB και κρυφή μνήμη δεδομένων 8 KB. Περιέχει μια νέα μονάδα κινητής υποδιαστολής που εκτελεί λειτουργίες 4-8 φορές πιο γρήγορα από το i80486.

P54, Pentium Pro - 1994

Το 1994 εμφανίστηκαν οι επεξεργαστές Pentium δεύτερης γενιάς (P54). Με σχεδόν τον ίδιο αριθμό τρανζίστορ, κατασκευάστηκαν χρησιμοποιώντας τεχνολογία 0,6 micron, η οποία κατέστησε δυνατή τη μείωση της κατανάλωσης ενέργειας. Η τάση τροφοδοσίας μειώθηκε στα 3,3 V. Εφαρμόστηκε πολλαπλασιασμός εσωτερικής συχνότητας. Στην περίπτωση αυτή, τα κυκλώματα διασύνδεσης του εξωτερικού διαύλου συστήματος λειτουργούν σε συχνότητες 50,60,66 MHz, ενώ ο πυρήνας του επεξεργαστή λειτουργεί σε υψηλότερη συχνότητα (75,90,100,120,133, 150, 166 και 200 ​​MHz). Ο διαχωρισμός συχνότητας καθιστά δυνατή την πραγματοποίηση των επιτευγμάτων της τεχνολογίας κατασκευής MP, τα οποία είναι σημαντικά μπροστά από τις δυνατότητες αύξησης της απόδοσης της μνήμης. Ο συντελεστής πολλαπλασιασμού (1,5;2;2,5;3) ρυθμίζεται από ένα συνδυασμό επιπέδων σήματος σε δύο εισόδους ελέγχου. Επεξεργαστές με διαφορετικές έννοιες f, που υποδεικνύεται στη σήμανση στο σώμα, κατασκευάζονται σύμφωνα με τα ίδια πρότυπα. Οι σημάνσεις συχνότητας εφαρμόζονται μετά από αυστηρές δοκιμές διαλογής. Ανάλογα με τη συχνότητα στην οποία το MP πέρασε τελείως τον έλεγχο εξόδου.

Παράλληλα με τον Pentium, αναπτύχθηκε και ο επεξεργαστής Pentium Pro. Η κύρια διαφορά του στην αρχή της οργάνωσης του υπολογισμού είναι η δυναμική εκτέλεση. Σε αυτήν την περίπτωση, εντός του επεξεργαστή, οι οδηγίες ενδέχεται να μην εκτελούνται με τη σειρά που αναλαμβάνει το πρόγραμμα. Αυτό βελτιώνει την απόδοση χωρίς να αυξάνει το f. Επιπλέον, έχει υιοθετηθεί μια αρχιτεκτονική διπλού ανεξάρτητου διαύλου για την αύξηση της συνολικής απόδοσης. Ένας δίαυλος είναι ο δίαυλος συστήματος, χρησιμοποιείται για την επικοινωνία με τον πυρήνα της κύριας μνήμης και των συσκευών διασύνδεσης. Το άλλο προορίζεται αποκλειστικά για ανταλλαγή με τη δευτερεύουσα μνήμη cache των 256 KB (512 KB) που είναι ενσωματωμένη στη θήκη MP. Για να μειωθεί η θέρμανση του κρυστάλλου, είναι δυνατή η άμεση μείωση της κατανάλωσης ενέργειας κατά περίπου 10 φορές, σταματώντας το ρολόι των περισσότερων κόμβων επεξεργαστή. Το MP μεταβαίνει σε αυτή την κατάσταση με ένα σήμα από τον εσωτερικό αισθητήρα θερμοκρασίας, καθώς και με την εκτέλεση της εντολής HALT.

Pentium MMX - 1997

Το 1997 κυκλοφόρησε ο επεξεργαστής Pentium MMX (P55C). Η τεχνολογία MMX αντιπροσωπεύει την πιο σημαντική βελτίωση στην αρχιτεκτονική του επεξεργαστή Intel από την εισαγωγή του i80386. Το κρύσταλλο Pentium MMX έχει επιφάνεια 50% μεγαλύτερη από το κλασικό Pentium. Τα κυκλώματα προσωρινής αποθήκευσης των κυκλωμάτων εξόδου του μικροκυκλώματος λειτουργούν με τάση 3,3 V, το εσωτερικό κύκλωμα είναι 2,8 V για επιτραπέζιους υπολογιστές και 2,45 V για μοντέλα φορητών υπολογιστών.

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

Η ουσία της τεχνολογίας MMX είναι η εμφάνιση στον επεξεργαστή 8 νέων εικονικών καταχωρητών 64-bit και 57 νέων οδηγιών για την επίλυση προβλημάτων πολυμέσων. Οι οκτώ νέοι καταχωρητές είναι εικονικοί επειδή αυτοί οι καταχωρητές είναι φυσικά καταχωρητές συνεπεξεργαστή. Έτσι, διατηρείται η συμβατότητα με προηγούμενες γενιές προγραμμάτων.

Pentium II - 1997

Τον Μάιο του 1997, το Pentium II, που κατασκευάστηκε με τεχνολογία 0,3 micron, εμφανίστηκε στην αγορά. Είναι μια ελαφρώς απογυμνωμένη έκδοση του πυρήνα Pentium Pro με υψηλότερη εσωτερική ταχύτητα ρολογιού, στην οποία έχει εισαχθεί η υποστήριξη MMX. Αυτός ο επεξεργαστής χρησιμοποιεί μια νέα τεχνολογία - ένα τσιπ με πυρήνα επεξεργαστή και ένα σύνολο τσιπ στατικής μνήμης και πρόσθετα κυκλώματα που υλοποιούν τη δευτερεύουσα κρυφή μνήμη τοποθετούνται σε μια μικρή πλακέτα τυπωμένου κυκλώματος - μια κασέτα. Όλοι οι κρύσταλλοι καλύπτονται με κοινό καπάκι και ψύχονται από ειδικό ανεμιστήρα.

Η εσωτερική συχνότητα ρολογιού είναι 233.266.300 MHz, η εξωτερική παραμένει 66,6 MHz.

Ο επεξεργαστής έχει πρόσθετες λειτουργίες χαμηλής κατανάλωσης:
1. Sleep ("Sleep mode"), όταν δεν χρονίζει τους εσωτερικούς του κόμβους, εκτός από το κύκλωμα πολλαπλασιαστή συχνότητας.
2. Βαθύς ύπνος («Βαθύς ύπνος»). Εμφανίζεται όταν αφαιρείται ένα εξωτερικό ρολόι. Σε αυτή τη λειτουργία, ο επεξεργαστής δεν εκτελεί καμία λειτουργία και το ρεύμα που καταναλώνεται προσδιορίζεται μόνο από ρεύματα διαρροής.

Pentium III - 1999

Το 1999 εμφανίστηκε ο επεξεργαστής Pentium III των 600 MHz που περιείχε 9,5 εκατομμύρια τρανζίστορ. Σύμφωνα με την Intel, αυτός ο επεξεργαστής θα σας επιτρέψει να λαμβάνετε πληροφορίες ήχου και βίντεο από το Διαδίκτυο, καθώς και τρισδιάστατα γραφικά υψηλής ποιότητας. Σύμφωνα με τις προβλέψεις των κατασκευαστικών εταιρειών, η περαιτέρω ανάπτυξη της τεχνολογίας παραγωγής MP θα πάει προς την κατεύθυνση της αύξησης της πυκνότητας των τρανζίστορ σε ένα τσιπ, της αύξησης του αριθμού των στρωμάτων επιμετάλλωσης και της αύξησης της συχνότητας ρολογιού, μαζί με τη μείωση της τάσης τροφοδοσίας και συγκεκριμένη (ανά τρανζίστορ) καταναλωμένη ηλεκτρική και απελευθερωμένη θερμική ενέργεια. Επί του παρόντος, παράγεται ο επεξεργαστής Pentium IV, η συχνότητα ρολογιού του οποίου έχει φτάσει τα 3000 MHz.

Το τεχνολογικό όριο των γραμμικών διαστάσεων των τρανζίστορ σε ένα τσιπ, λόγω φυσικών περιορισμών, είναι περίπου 0,05 μικρά. Στον δρόμο για περαιτέρω ελαχιστοποίηση, εκτός από φυσικούς περιορισμούς, υπάρχουν και οικονομικοί. Για κάθε επόμενη γενιά τσιπ, το κόστος της τεχνολογίας διπλασιάζεται. Το 1986, το i80386 κατασκευάστηκε σε εργοστάσιο 200 εκατομμυρίων δολαρίων. Το εργοστάσιο της Intel αξίζει επί του παρόντος 2,4 δισεκατομμύρια δολάρια. Επομένως, ένα εργοστάσιο που παράγει τσιπ με τεχνολογία 0,25 micron θα κοστίσει 10 δισεκατομμύρια δολάρια. Ο χρόνος παραγωγής για MP αυξάνεται. Έτσι, ο επεξεργαστής Pentium παράγεται σε 6 μήνες, και ο νεότερος Pentium Pro - σε 9 μήνες. Οι γενιές MP αλλάζουν κάθε 2-3 χρόνια. Με κάθε γενιά, οι γραμμικές διαστάσεις των στοιχείων μειώνονται κατά περίπου 1,5 φορές. Το 2000, το πλάτος των αγωγών ήταν 0,2 μm και το 2006 έφτασε τα 0,1 μm, η συχνότητα ρολογιού έχει ήδη ξεπεράσει τα 2000 MHz.

Τα παραπάνω σύντομα δεδομένα για την ανάπτυξη MP χρησιμοποιώντας το παράδειγμα προϊόντων Intel δείχνουν πόσο γρήγορα αναπτύσσεται και βελτιώνεται η παραγωγή MP. Κανένας άλλος κλάδος της τεχνολογίας δεν αναπτύσσεται τόσο γρήγορα. Ο Gordon Moore, ο ιδρυτής της Intel, το εξέφρασε πολύ μεταφορικά: «Εάν η αυτοκινητοβιομηχανία αναπτύχθηκε με την ταχύτητα της βιομηχανίας ημιαγωγών, τότε σήμερα μια Rolls-Royce θα κόστιζε 3 δολάρια, θα μπορούσε να διανύσει μισό εκατομμύριο μίλια με ένα γαλόνι βενζίνης και θα ήταν φθηνότερο να το πετάξεις παρά να πληρώσεις για στάθμευση.

Σε αυτήν την ανασκόπηση, λαμβάνονται υπόψη μόνο οι επεξεργαστές Intel. Να σημειωθεί ότι ανάλογη πορεία εξέλιξης περνά και η τεχνολογία άλλων εταιρειών που παράγουν επεξεργαστές, όπως η AMD, η Cyrix, η Motorola και άλλες. Αλλά ο κορυφαίος "trendsetter" σε αυτόν τον αγώνα για ποιότητα παραμένει η Intel.


9 Μικροεπεξεργαστές και μικροϋπολογιστές σε εξοπλισμό πληροφοριών και μετρήσεων

9.1 Οι κύριες λειτουργίες του MP στον εξοπλισμό μέτρησης

Τα πιο συχνά χρησιμοποιούμενα ενσωματωμένα MP και MK. Βελτιώνουν σημαντικά τα χαρακτηριστικά των συσκευών (ακρίβεια, αξιοπιστία, απόδοση κ.λπ.). Η χρήση του ενσωματωμένου MP επιτρέπει τη μετατροπή μιας συσκευής μίας λειτουργίας σε πολυλειτουργική, συνδυάζοντας πολλές λειτουργικές μονάδες μαζί με συσκευές μεταγωγής σε μία μονάδα. Το MP κάνει μια τέτοια συσκευή προγραμματιζόμενη.

Το MP βελτιώνει την ακρίβεια της συσκευής μέτρησης αντισταθμίζοντας αυτόματα τη μηδενική ρύθμιση πριν από την έναρξη των μετρήσεων, εκτελώντας αυτόματα βαθμονόμηση (αυτοβαθμονόμηση, αυτοέλεγχο) και αυτόματη στατιστική επεξεργασίααποτελέσματα μετρήσεων.

Η MT επεκτείνει τις δυνατότητες μέτρησης των οργάνων μέσω της χρήσης έμμεσων και συγκεντρωτικών μετρήσεων. Στις έμμεσες μετρήσεις, δεν μετριέται η επιθυμητή παράμετρος, αλλά άλλες παράμετροι με τις οποίες η επιθυμητή σχετίζεται με μια λειτουργική εξάρτηση. Για παράδειγμα, η ισχύς μπορεί να προσδιοριστεί μετρώντας την τάση και την αντίσταση και να υπολογιστεί χρησιμοποιώντας τον τύπο P=U 2 /R. Όταν χρησιμοποιείται η μέθοδος των αθροιστικών μετρήσεων, μετρώνται ταυτόχρονα πολλές ομώνυμες φυσικές ποσότητες, για τις οποίες οι επιθυμητές τιμές των ποσοτήτων βρίσκονται λύνοντας ένα σύστημα εξισώσεων. Σε αυτή την περίπτωση, το ΜΤ είναι προγραμματισμένο να εφαρμόζει τις απαραίτητες αναλυτικές εξαρτήσεις.


9.2 Παραδείγματα χρήσης MP σε εξοπλισμό μέτρησης

9.2.1 Ψηφιακός μετρητής συχνοτήτων μικροεπεξεργαστή

Για τη μέτρηση των υψηλών συχνοτήτων, χρησιμοποιείται μια άμεση μέθοδος, στην οποία επιλέγεται ένα συγκεκριμένο χρονικό διάστημα και μετράται ο αριθμός των περιόδων του υπό μελέτη σήματος. Η ακρίβεια μέτρησης αυξάνεται με την αύξηση του αριθμού των περιόδων Ν. Σε χαμηλές συχνότητες, αυτό θα απαιτούσε πολύ χρόνο. Επομένως, σε χαμηλές συχνότητες, χρησιμοποιείται μια έμμεση μέθοδος. Το πλάτος της προσωρινής πύλης επιλέγεται ως πολλαπλάσιο της περιόδου του σήματος υπό μελέτη qTx, η πύλη γεμίζει με παλμούς της γεννήτριας γνωστής συχνότητας F sch και μετράται ο αριθμός των παλμών n. Και οι δύο μέθοδοι απεικονίζονται στο Σχήμα 9-1


Εικ.9-1 Διαγράμματα χρονισμού της διαδικασίας μέτρησης συχνότητας.

Εδώ:
α - μετρημένο σήμα.
β - σήμα που μετατρέπεται σε μια ακολουθία παλμών.
γ - χρονικό διάστημα για έμμεση μέτρηση.
d - πλήρωση παλμών κατά την έμμεση μέτρηση.
e - χρονικό διάστημα για άμεση μέτρηση.
e - έκρηξη παλμών κατά την άμεση μέτρηση.

Το σχήμα 9-2 δείχνει δομικό σχήμασυσκευή για τη μέτρηση της συχνότητας του σήματος με άμεσες και έμμεσες μεθόδους υπό τον έλεγχο του MP, στην οποία σημειώνονται τα σημεία που αντιστοιχούν στα διαγράμματα χρόνου.


Εικ.9-2

άμεση μέθοδος

Όταν A 0 =1, εφαρμόζεται μια μέθοδος άμεσης μέτρησης. Οι πολυπλέκτης επιλέγουν εισόδους x 1 . Το MP δημιουργεί μια προσωρινή πύλη με διάρκεια T. Εάν ο μετρητής μετράει N παλμούς σε αυτό το διάστημα, τότε T=nT x, ή T=n/F x, επομένως F x =n/T.

έμμεση μέθοδος

Όταν επιλέγονται A 0 =0, x 0 είσοδοι των πολυπλέκτη και εφαρμόζεται μια μέθοδος έμμεσης μέτρησης. Ο προσωρινός διαμορφωτής πύλης περιέχει έναν διαιρέτη συχνότητας με συντελεστή μετατροπής q=2 k, όπου το k επιλέγεται έτσι ώστε να ληφθεί ο αριθμός παλμών (γραφική παράσταση d) που παρέχει την απαιτούμενη ακρίβεια μέτρησης F x . Στο διάστημα qT x fit n παλμοί qT x =nT mid ή q/F x =n/F mid, άρα F x =qF mid /n.


9.2.2 Μετρητής ευρείας εμβέλειας

Χρησιμοποιεί μια ετεροδύναμη μέθοδο για τη μείωση της συχνότητας του μετρούμενου σήματος. Εάν αναμίξετε το μετρούμενο σήμα F meas με το σήμα τοπικού ταλαντωτή (βοηθητική γεννήτρια) F 1 , το αποτέλεσμα είναι σήματα με συχνότητες F meas +nF 1 και F meas -nF 1 . Για τη μείωση της συχνότητας, χρησιμοποιείται η παραλλαγή F meas -nF 1 =F pr, όπου F pr είναι η ενδιάμεση συχνότητα που εκχωρείται από το επόμενο μπλοκ.


Εικ.9-3

PSCH - προγραμματιζόμενος συνθέτης συχνότητας (τοπικός ταλαντωτής).
UPCH - ενισχυτής ενδιάμεσης συχνότητας.
TsCH - ψηφιακός μετρητής συχνότητας τύπου εικ.9-2

Κατά τη λειτουργία, το MP αλλάζει το F synth στην τιμή F "synth, στην οποία

F meas -F "synth \u003d F ave. Στη συνέχεια F meas \u003d F pr + nF "synth.


9.2.3 Γεννήτρια μέτρησης με έλεγχο MP

Οι πιο συχνά χρησιμοποιούμενες είναι λειτουργικές γεννήτριες που παράγουν σήματα διαφόρων σχημάτων (τριγωνικά, ορθογώνια, ημιτονοειδή και άλλα) με κανονικοποιημένα μετρολογικά χαρακτηριστικά. Το εύρος συχνοτήτων τέτοιων γεννητριών είναι 10 -6 Hz - 50 * 10 6 Hz. Το σχήμα 9-4 δείχνει ένα μπλοκ διάγραμμα μιας τέτοιας γεννήτριας.


Εικ.9-4

Εδώ, το BS είναι ένα προγραμματιζόμενο μπλοκ μετρητών, το GTI είναι μια προγραμματιζόμενη γεννήτρια ρολογιού.

Αφού ο χειριστής εισαγάγει τη συνάρτηση f(t) για να δημιουργήσει ένα σήμα της ίδιας μορφής, ο MP υπολογίζει τα δείγματα f(t i) στο διάστημα μιας περιόδου με δεδομένο ρυθμό δειγματοληψίας. Οι αναγνώσεις εγγράφονται στη μνήμη RAM. Το σήμα εξόδου GTI πηγαίνει στο BS, όπου σχηματίζεται η διεύθυνση RAM.


9.2.4 Ψηφιακά φίλτρα

Ένα ψηφιακό φίλτρο είναι μια συσκευή που μετατρέπει ένα διακριτό σήμα x n σε ένα άλλο διακριτό σήμα y n , και τα ίδια τα σήματα x n και y n είναι δυαδικοί ψηφιακοί κώδικες.

Το αναλογικό φίλτρο είναι ένα επιλεκτικό κύκλωμα συχνότητας που εκτελεί κάποιο γραμμικό μετασχηματισμό από ένα συνεχές σήμα εισόδου U 1 (t) σε ένα συνεχές σήμα εξόδου U 2 (t). Αντίθετα, το ψηφιακό φίλτρο μετατρέπει την ψηφιακή ακολουθία εισόδου x(nT) στην ψηφιακή ακολουθία εξόδου y(nT). Εξετάστε τη μετατροπή ενός αναλογικού φίλτρου σε ψηφιακό χρησιμοποιώντας τα πιο απλά φίλτρα ως παραδείγματα.

Το απλούστερο αναλογικό υψηλοπερατό φίλτρο είναι ένα κύκλωμα RC (Εικόνα 9-5).


Εικ.9-5

Ας ορίσουμε την αναλογία μεταξύ της τάσης εισόδου και εξόδου.

U 2 (t) \u003d i (t) * R \u003d RC * d (U 1 -U 2) / dt (1)

Ας αντιπροσωπεύσουμε τα U 1 (t) και U 2 (t) με τις αντίστοιχες ψηφιακές ακολουθίες U 1 =x(nT) και U 2 =y(nT), τότε:

Αντικαθιστώντας το (2) στο (1), παίρνουμε:

Σημαίνω

.

Η έκφραση που προκύπτει καθορίζει τον αλγόριθμο για τον υπολογισμό του σήματος εξόδου του φίλτρου Y n στο ν-ο βήμα κβαντισμού, ανάλογα με την τιμή του στο προηγούμενο n-1-ο βήμα, τις τιμές του σήματος εισόδου X n , X n -1 και το βήμα δειγματοληψίας τ. Ας ορίσουμε την μεταβατική απόκριση του υψηλοπερατού φίλτρου.

Αν επιλέξουμε το βήμα δειγματοληψίας τ=1, τότε παίρνουμε

X(nT)=1 για n>=0, X(nT)=0 για n<0.

Με μικρότερο βήμα τ=0,125 έχουμε

Όταν χρησιμοποιείτε ένα αναλογικό φίλτρο, η επίλυση της διαφορικής του εξίσωσης δίνει

Το σχήμα 90-6 δείχνει τις τιμές του σήματος εξόδου που υπολογίζονται από τους τύπους (3), (4) και (5) και τα αντίστοιχα γραφήματα.


Εικ.9-6

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

Το απλούστερο αναλογικό χαμηλοπερατό φίλτρο φαίνεται στο Σχήμα 9-7.


Εικόνα 9-7

Περιγράφεται από την εξίσωση:

Ας προχωρήσουμε σε προσαυξήσεις:

και τελικά:

Μπορεί να φανεί ότι σε αυτή την περίπτωση, καθώς το τ μειώνεται, η μεταβατική απόκριση του ψηφιακού φίλτρου προσεγγίζει επ' αόριστον τη μεταβατική απόκριση του αναλογικού φίλτρου.

Στα ψηφιακά φίλτρα, όλα καταλήγουν σε πράξεις πολλαπλασιασμού με κάποιους συντελεστές και πρόσθεση. Τα παραπάνω φίλτρα είναι φίλτρα πρώτης τάξης. Τα καλύτερα αποτελέσματα επιτυγχάνονται από φίλτρα υψηλότερων τάξεων, στα οποία χρησιμοποιούνται οι τιμές των x και y που καθυστερούν κατά πολλά βήματα για τον υπολογισμό της τιμής εξόδου Y n.

Ο υπολογισμός μιας τέτοιας έκφρασης είναι πολύ εύκολος στον προγραμματισμό και την εκτέλεση στο MP. Τα καθυστερημένα σήματα τοποθετούνται στη στοίβα.


10 Δοκιμές συστημάτων μικροεπεξεργαστών

10.1 Δοκιμή με στατικά σήματα

Στα συστήματα μικροεπεξεργαστών, οι ροές δεδομένων είναι μη περιοδικές, οι διάρκειες του σήματος αλλάζουν, γεγονός που προκαλεί μεγάλες δυσκολίες στη δοκιμή και τη διάγνωση - στον προσδιορισμό της αιτίας των σφαλμάτων. Ένας τρόπος για να ξεπεραστούν αυτές οι δυσκολίες είναι η στατική δοκιμή του συστήματος. Για MP K580VM80, αυτό γίνεται ως εξής. Το MP δεν είναι κολλημένο στην πλακέτα, αλλά είναι εγκατεστημένο στον πίνακα. Κατά τη δοκιμή, το MP αφαιρείται και τοποθετείται ένα μπλοκ προσαρμογέα για την προσομοίωση και την ένδειξη σημάτων. Οι διακόπτες εναλλαγής συνδέονται με τις ακίδες του διαύλου διευθύνσεων, οι διακόπτες εναλλαγής συνδέονται με το δίαυλο δεδομένων μέσω κυκλωμάτων τριών καταστάσεων και οι λυχνίες LED μέσω λογικών στοιχείων ανοιχτού συλλέκτη. Καλώντας τις απαραίτητες διευθύνσεις και τα σήματα εξόδου του MP με διακόπτες εναλλαγής, μπορείτε να δοκιμάσετε το σύστημα.


10.2 Αυτοδιάγνωση συστημάτων μικροεπεξεργαστών

Το Autodiagnostics είναι ένα ενσωματωμένο διαγνωστικό που βασίζεται στη χρήση εσωτερικών διαγνωστικών προγραμμάτων. Αυτά τα προγράμματα μπορεί να εκτελούνται μόνοι τους ή να επικαλούνται ο χρήστης του συστήματος. Καθορίζονται κατά το σχεδιασμό ενός συστήματος μικροεπεξεργαστή.


10.3 Λογικοί αναλυτές

Η δοκιμή με στατικά σήματα είναι μια αργή και όχι πάντα εφαρμόσιμη διαδικασία. Πιο καθολική είναι η χρήση ειδικών συσκευών - λογικών αναλυτών.


10.3.1 Αναλυτές λογικής κατάστασης (σύγχρονη λειτουργία)

Είναι διαθέσιμα σε εκδόσεις 8, 12, 16 και 32 bit. Οι πληροφορίες εξόδου δίνονται με τη μορφή πινάκων μονάδων και μηδενικών, οκταδικών ή δεκαεξαδικών κωδικών. Ο αναλυτής συνδέεται με τον υπό δοκιμή δίαυλο και ένας πίνακας ή οθόνη εμφανίζει έναν πίνακα με n καταστάσεις διαύλου, ξεκινώντας από την καθορισμένη κατάσταση ή n προηγούμενες καταστάσεις. Παρόμοιοι αναλυτές κατασκευάζονται σύμφωνα με το μπλοκ διάγραμμα του Σχ. 10-1.


Εικ.10-1

K0-K15 - συγκριτές σημάτων εισόδου.
R - ποτενσιόμετρο για τη ρύθμιση του επιπέδου σύγκρισης.
KC - σύγκριση λέξεων.
Kl - πληκτρολόγιο εισαγωγής λέξης.
FUS - γεννήτρια σήματος ελέγχου.
Rg0-Rg15 - καταχωρητές μετατόπισης (ενότητα 2, κεφάλαιο 7.2) για την καταγραφή 16 τιμών της i-ης εισόδου.
f:n - διαιρέτης συχνότητας. BPR - μπλοκ μετατροπής.

Στην αρχή της εργασίας του λογικού αναλυτή, πληκτρολογείται μια λέξη στο πληκτρολόγιο, από την οποία εκτελείται η ανάλυση. Εάν ο κωδικός στις εξόδους K0-K15 και ο καλούμενος κωδικός ταιριάζουν, το COP δημιουργεί έναν παλμό, υπό την επίδραση του οποίου το FUS παράγει σήματα ελέγχου US1 και US2. Με την άφιξη κάθε παλμού ρολογιού TI, εμφανίζεται ένας παλμός μέτρησης US1 * TI στην έξοδο του μετρητή - διαιρέτη. Αφού φτάσουν n παλμοί ρολογιού, ο σύνδεσμος &2 κλείνει και η εγγραφή στους καταχωρητές σταματά. Το μπλοκ μετατροπής από n τιμές εξόδου των καταχωρητών Rg0-Rg15 σχηματίζει έναν πίνακα στην οθόνη εμφάνισης που περιέχει n γραμμές.


10.3.2 Αναλυτές λογικού χρονισμού (ασύγχρονη λειτουργία)

Τέτοιοι αναλυτές σαρώνουν τα σήματα εισόδου σε συχνότητα πολύ μεγαλύτερη από τη συχνότητα των σημάτων. Αυτό επιτρέπει όχι μόνο τον προσδιορισμό της παρουσίας ή απουσίας ενός σήματος σε κάθε περίοδο ρολογιού, αλλά και τη διερεύνηση της δυναμικής της αλλαγής, τον εντοπισμό παραμορφώσεων στο μπροστινό μέρος, τις βραχυπρόθεσμες κορυφές, τις βυθίσεις κ.λπ. Οι αναλυτές ασύγχρονης λειτουργίας χρονίζονται σε πολύ υψηλότερη εσωτερική συχνότητα. Οι συσκευές παράγονται με f=20, 50, 100, 200 MHz. Χρησιμοποιούν πρόσθετα κυκλώματα ενεργοποίησης για τη στερέωση ψευδών παλμών έως και 5 ns, γεγονός που καθιστά πολύ πιο εύκολο τον εντοπισμό τέτοιων παλμών.


10.4 Εξομοιωτές εντός κυκλώματος

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

Ο εξομοιωτής εντός κυκλώματος μπορεί να λειτουργήσει στους τρόπους μέτρησης της κατάστασης διαφόρων κόμβων MPS, βήμα προς βήμα εκτέλεση του προγράμματος χρήστη. Με τη βοήθειά του, ελέγχονται ο πυρήνας MPS, τα trunks, πραγματοποιούνται δοκιμές ROM και RAM. Η καλύτερη επιλογή δοκιμής είναι ο συνδυασμός μεθόδων εξομοίωσης εντός κυκλώματος και ανάλυσης υπογραφής.


10.5 Ανάλυση υπογραφών

Η υπογραφή είναι ένας αριθμός που αποτελείται από 4 χαρακτήρες ενός δεκαεξαδικού κώδικα και χαρακτηρίζει υπό όρους, αλλά αναμφισβήτητα έναν συγκεκριμένο κόμβο της ελεγχόμενης συσκευής. Η υπογραφή καθορίζεται από το εργοστάσιο - τον κατασκευαστή της συσκευής και υποδεικνύεται σε μεμονωμένα σημεία του κυκλώματος (Εικ. 10-2) ή στις οδηγίες για τη συσκευή.

Εικ.10-2 Υπογραφές που υποδεικνύονται στο διάγραμμα της συσκευής

Η υπογραφή σχηματίζεται από το σήμα δοκιμής (ακολουθία δοκιμής) που παράγεται από το MP. Μια ακολουθία δοκιμής που αποτελείται από τουλάχιστον 16 μηδενικά και ένα τροφοδοτείται στην είσοδο οποιουδήποτε κόμβου. Από την έξοδο του κόμβου (ελεγχόμενο σημείο), η ήδη μετατραπείσα ακολουθία αφαιρείται και τροφοδοτείται στην είσοδο του αναλυτή υπογραφής. Ο αναλυτής υπογραφής περιέχει ένα μπλοκ δημιουργίας υπογραφών BFS (Εικ. 10-3), που αποτελείται από 16 σκανδαλισμούς διασυνδεδεμένους μέσω του modulo αθροιστών 2. Όταν ο αναλυτής λειτουργεί, εκτελείται η λειτουργία διαίρεσης πολυωνύμων. Η ακολουθία εισόδου σχηματίζει ένα μέρισμα, το κύκλωμα FFS είναι ένας διαιρέτης και το αποτέλεσμα που καταγράφεται σε έναυσμα μετά το τέλος της ακολουθίας δοκιμής είναι το υπόλοιπο της διαίρεσης. Εάν οι ακολουθίες δοκιμών στον κατασκευαστή και στον καταναλωτή που διεξάγει τη δοκιμή είναι οι ίδιες, καθώς και το ίδιο BFS, τότε κατά τον έλεγχο μιας μονάδας εργασίας, η υπογραφή που προκύπτει ταιριάζει με την υπογραφή που καθορίζεται στην τεκμηρίωση.


Εικ.10-3

Η πιθανότητα να ληφθούν οι ίδιες υπογραφές για δύο δυαδικές ακολουθίες που διαφέρουν μεταξύ τους κατά ένα bit είναι ίση με μηδέν και που διαφέρει κατά πολλά λανθασμένα bit είναι 0,00001526. Με άλλα λόγια, η εμπιστοσύνη ανίχνευσης σφάλματος >=99,998%. Ο έλεγχος μεμονωμένων κόμβων της συσκευής περιορίζεται στον προσδιορισμό της υπογραφής στην έξοδο του κόμβου. Εάν ταιριάζει με το εργοστασιακό, η μονάδα λειτουργεί.


11 Διασφάλιση θορύβου των συστημάτων μικροεπεξεργαστών

11.1 Καταστολή κύριας γραμμής

Κατά την ανάπτυξη συστημάτων μικροεπεξεργαστή, είναι απαραίτητο να δοθεί προσοχή Ιδιαίτερη προσοχήγια προστασία από παρεμβολές που οδηγούν σε δυσλειτουργίες. Ένα σημαντικό μέρος των παρεμβολών προέρχεται από το δίκτυο. Ένα MPS που είναι καλά εδραιωμένο στο εργαστήριο μπορεί να είναι εντελώς μη λειτουργικό σε περιβάλλον παραγωγής λόγω παρεμβολών. Παρεμβολές συμβαίνουν κατά τη διάρκεια ξαφνικών αλλαγών στο φορτίο του δικτύου, για παράδειγμα, όταν είναι ενεργοποιημένος ένας ισχυρός ηλεκτροκινητήρας, φούρνος, μηχανή συγκόλλησης. Επομένως, εάν είναι δυνατόν, η απομόνωση από τέτοιες πηγές παρεμβολών θα πρέπει να πραγματοποιείται μέσω του δικτύου. Το σχήμα 11-1 δείχνει διάφορες επιλογέςσύνδεση συσκευών που περιλαμβάνουν μικροεπεξεργαστή Η καλύτερη επιλογή είναι να τροφοδοτήσετε το MPS και τους καταναλωτές που δημιουργούν ισχυρούς παλμούς ρεύματος (κινητήρες).


Εικ.11-1

Για την καταστολή βραχυπρόθεσμων παρεμβολών, έχει εγκατασταθεί ένα φίλτρο δικτύου Εικ. 11-2.


Εικ.11-2

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


11.2 Καταστολή παρεμβολών στην παροχή ρεύματος

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

Μέθοδοι καταστολής:
1. Οι πρωτεύουσες και δευτερεύουσες περιελίξεις ενός μετασχηματιστή ισχύος βρίσκονται σε διαφορετικά πηνία. Αυτό μειώνει σημαντικά τη χωρητική σύζευξη διασύνδεσης, αλλά μειώνει την απόδοση του μετασχηματιστή.
2. Οι περιελίξεις βρίσκονται σε ένα πηνίο, αλλά χωρίζονται από ένα πλέγμα από φύλλο χαλκού πάχους τουλάχιστον 0,2 mm, το οποίο συνδέεται με τη γείωση του σώματος. Η ασπίδα δεν πρέπει ποτέ να βραχυκυκλώνεται!
3. Το πρωτεύον τύλιγμα είναι πλήρως κλεισμένο σε σήτα (όχι βραχυκυκλωμένο), το οποίο είναι γειωμένο.
4. Το πρωτεύον και το δευτερεύον τύλιγμα περικλείονται σε ξεχωριστά σήτες και τοποθετείται ένα διαχωριστικό πλέγμα μεταξύ τους. Όλες οι οθόνες είναι γειωμένες. Παράλληλα με το πρωτεύον τύλιγμα, μια αλυσίδα συνδεδεμένων σε σειρά C \u003d 0,1 μF και R \u003d 100 Ohm συνδέεται για την απόσβεση της ενέργειας τη στιγμή της διακοπής λειτουργίας.

11.3 Κανόνες γείωσης

Σε δομικά τελειωμένες μονάδες, υπάρχουν πάντα δύο τύποι λεωφορείων "εδάφους" - αμάξωμα και κύκλωμα.

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

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

Η ελάχιστη αμοιβαία παρεμβολή επιτυγχάνεται όταν οι δίαυλοι γείωσης του κυκλώματος συνδυάζονται σε ένα σημείο και οι δίαυλοι θήκης σε άλλο σημείο (Εικ. 11-3). Η απόσταση μεταξύ των σημείων επιλέγεται πειραματικά. Σε ορισμένες περιπτώσεις, το σημείο Α μπορεί να μην είναι συνδεδεμένο με το δίαυλο γείωσης του δωματίου.


Εικ.11-3


11.4 Καταστολή παρεμβολών στα δευτερεύοντα κυκλώματα τροφοδοσίας

Τις στιγμές μεταγωγής των ολοκληρωμένων κυκλωμάτων και στα κυκλώματα εξόδου ώθησης-έλξης, εμφανίζονται μεγάλες υπερτάσεις ρεύματος. Λόγω της πεπερασμένης επαγωγής των ράγες ισχύος στις πλακέτες, προκαλούν παλμούς τάσης. Εάν τα ελαστικά είναι λεπτά και δεν υπάρχουν χωρητικότητες αποσύνδεσης, τότε εμφανίζονται παλμοί με πλάτος έως 2 V στο "μακρινό" άκρο του διαύλου! Το επίπεδο τέτοιων παλμών αντιστοιχεί σε μια λογική μονάδα, η οποία προκαλεί αστοχίες. Για να εξαλείψετε αυτό το αποτέλεσμα, ακολουθήστε αυτές τις συστάσεις:
1. Οι ράγες ισχύος και γείωσης στις σανίδες πρέπει να έχουν ελάχιστη επαγωγή. Για να γίνει αυτό, τους δίνεται μια δομή πλέγματος που καλύπτει ολόκληρη την ελεύθερη επιφάνεια της σανίδας.
2. Οι εξωτερικοί δίαυλοι τροφοδοσίας και γείωσης συνδέονται στην πλακέτα μέσω πολλών επαφών που είναι ομοιόμορφα κατανεμημένες στον σύνδεσμο.
3. Οι παρεμβολές καταστέλλονται κοντά στα σημεία εμφάνισής τους. Για να γίνει αυτό, ένας πυκνωτής C = 0,02 μF εγκαθίσταται κοντά σε κάθε κύκλωμα TTL για την εξάλειψη των παρεμβολών υψηλής συχνότητας και ένας ηλεκτρολυτικός πυκνωτής C = 100 μF εγκαθίσταται επιπλέον σε μια ομάδα κυκλωμάτων 10-15.