Κεφάλαιο 5 | Ενότητα 6 | Ερωτήσεις επισκόπησης | Επόμενο | Λεξικό όρων

  Η πρόσβαση στην αρτηρία

Τώρα που έχουμε αναλύσει μερικές από τις πολλές σχεδιαστικές επιλογές για τις αρτηρίες μπορούμε να ασχοληθούμε με ένα από τα σημαντικότερα θέματα στη σχεδίαση αρτηριών: Πώς μία αρτηρία δεσμεύεται από μία συσκευή που επιθυμεί να την χρησιμοποιήσει για επικοινωνία;

  Σχήμα ελέγχου για την πρόσβαση στην αρτηρία

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

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

   Σύστημα με ένα κύριο αρτηρίας

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

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

ΔΡΑΣΤΗΡΙΟΤΗΤΑ 1

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

 

ΑΠΑΝΤΗΣΗ ΔΡΑΣΤΗΡΙΟΤΗΤΑΣ 1

 

   Εναλλακτική οργάνωση με πολλαπλούς κυρίους

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

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

Αυτός ο μηχανισμός, η διαιτησία αρτηρίας, περιγράφεται παρακάτω.