Αρχιτεκτονική Υπολογιστών

Σχετικά έγγραφα
Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών

Διασυνδετικοί Δίαυλοι. Τι διασυνδέει ένας δίαυλος; Μεταφορά δεδομένων. Διασύνδεση Εισόδου-Εξόδου. Μ.Στεφανιδάκης

Διασύνδεση Εισόδου-Εξόδου

Αρχιτεκτονική Υπολογιστών

Οργάνωση Υπολογιστών (IΙI)

Βασικές συσκευές Ε/Ε. Είσοδος Έξοδος στον υπολογιστή. Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (IΙI) Μ.

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών

Εισαγωγή στην πληροφορική

ΠΛΕ- 027 Μικροεπεξεργαστές 11ο μάθημα: Είσοδος- Εξοδος (Ε/Ε)

Μικροβιολογία & Υγιεινή Τροφίμων

Αρχιτεκτονική Υπολογιστών

Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Ιστορία της μετάφρασης

i Όλες οι σύγχρονες ΚΜΕ είναι πολυπλοκότερες!

Κύρια μνήμη. Μοντέλο λειτουργίας μνήμης. Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (ΙI)

ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Υ

Αρχιτεκτονική υπολογιστών

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Κρυφές Μνήμες. (οργάνωση, λειτουργία και απόδοση)

Λειτουργικά Συστήματα

Υποστήριξη Λ.Σ. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Υπολογιστές Ι. Άδειες Χρήσης. Δομή του προγράμματος. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Ιεραρχία Μνήμης. Ιεραρχία μνήμης και τοπικότητα. Σκοπός της Ιεραρχίας Μνήμης. Κρυφές Μνήμες

i Στα σύγχρονα συστήματα η κύρια μνήμη δεν συνδέεται απευθείας με τον επεξεργαστή

Κεντρική Μονάδα Επεξεργασίας

Μάθημα 3.8 Τεχνικές μεταφοράς δεδομένων Λειτουργία τακτικής σάρωσης (Polling) Λειτουργία Διακοπών DMA (Direct Memory Access)

Τεχνολογία Πολυμέσων. Ενότητα # 3: Συστήματα πολυμέσων Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Μάθημα 8: Επικοινωνία Συσκευών με τον Επεξεργαστή

Αρχιτεκτονική Υπολογιστών

Τεχνολογίες Κύριας Μνήμης

Λειτουργικά Συστήματα (ΗΥ321)

Οργάνωση Υπολογιστών (ΙI)

Τίτλος Μαθήματος: Ηλεκτρονικοί Υπολογιστές IΙΙ. Διδάσκων: Επίκουρος Καθηγητής Αθανάσιος Σταυρακούδης

Υπολογιστές Ι. Άδειες Χρήσης. Εισαγωγή. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Δείκτες Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Ηλεκτρονικοί Υπολογιστές IV

Ηλεκτρονικοί Υπολογιστές I

Εισαγωγή στην Πληροφορική

Εισαγωγή στην Επιστήμη των Υπολογιστών

Αρχιτεκτονική υπολογιστών

Εισαγωγή στους Αλγορίθμους

Αρχιτεκτονική Υπολογιστών

Εκκλησιαστικό Δίκαιο. Ενότητα 10η: Ιερά Σύνοδος της Ιεραρχίας και Διαρκής Ιερά Σύνοδος Κυριάκος Κυριαζόπουλος Τμήμα Νομικής Α.Π.Θ.

Ηλεκτρονικοί Υπολογιστές IV

ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ)

Οργάνωση Υπολογιστών

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ. Πιθανότητες. Συνδυαστική Ανάλυση Διδάσκων: Επίκουρος Καθηγητής Κωνσταντίνος Μπλέκας

Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2)

Εισαγωγή στους Αλγορίθμους

Εισαγωγή στην Επιστήμη των Υπολογιστών

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών Εικονική Μνήμη. (και ο ρόλος της στην ιεραρχία μνήμης)

Ιεραρχία Μνήμης. Εικονική μνήμη (virtual memory) Επεκτείνοντας την Ιεραρχία Μνήμης. Εικονική Μνήμη. Μ.Στεφανιδάκης

Γενικά Μαθηματικά Ι. Ενότητα 15: Ολοκληρώματα Με Ρητές Και Τριγωνομετρικές Συναρτήσεις Λουκάς Βλάχος Τμήμα Φυσικής

Εφαρμοσμένη Στατιστική

Τεχνολογία Λογισμικού

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική Ι. Ενότητα 6 : Εκτέλεση πράξεων, Αρχιτεκτονική Η/Υ. Δρ.

Βασικοί άξονες Μαθηματικά στην εκπαίδευση:

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Ιστορία της μετάφρασης

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

Αρχιτεκτονική-ΙI Ενότητα 4 :

Συστήματα Αναμονής. Ενότητα 1: Εισαγωγή. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Εικονική Μνήμη (Virtual Μemory)

ΓΕΝΙΚΗ ΚΑΙ ΑΝΟΡΓΑΝΗ ΧΗΜΕΙΑ

Σύστημα διασύνδεσης και. διαδικασία εισόδου-εξόδου

Γενικά Μαθηματικά Ι. Ενότητα 12: Κριτήρια Σύγκλισης Σειρών. Λουκάς Βλάχος Τμήμα Φυσικής ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Εκκλησιαστικό Δίκαιο

Βάσεις Δεδομένων Ενότητα 1

Βασικές Αρχές Φαρμακοκινητικής

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού σε κατάσταση Κορεσμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

Μηχανολογικό Σχέδιο Ι

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

Εισαγωγή στη Δικτύωση Υπολογιστών

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

Αρχιτεκτονική υπολογιστών

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Τίτλος Μαθήματος: Μαθηματική Ανάλυση Ενότητα Γ. Ολοκληρωτικός Λογισμός

Εκκλησιαστικό Δίκαιο

Προγραμματισμός Η/Υ. 7 η ενότητα: Αρχεία. Τμήμα. Τεχνολόγων Περιβάλλοντος. ΤΕΙ Ιονίων Νήσων. Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων

Ηλεκτρισμός & Μαγνητισμός

Λογικά σύμβολα των CPU, RAM, ROM και I/O module

Εισαγωγή στη Δικτύωση Υπολογιστών

Λογιστική Κόστους Ενότητα 8: Κοστολογική διάρθρωση Κύρια / Βοηθητικά Κέντρα Κόστους.

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Αρχιτεκτονική Υπολογιστών

Επικοινωνία Ανθρώπου- Υπολογιστή Σχεδίαση Αλληλεπίδρασης

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Εισαγωγή στην Διοίκηση Επιχειρήσεων

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Δομή του προγράμματος. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Αρχιτεκτονική Υπολογιστών

Transcript:

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Αρχιτεκτονική Υπολογιστών Υποσύστημα εισόδου εξόδου Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς.

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Υπο- σύστημα εισόδου- εξόδου (Ι/Ο) Αρης Ευθυμίου

Το σημερινό μάθημα! Εισαγωγή είδη, χαρακτηριστικά συσκευών! Προγραμματιστικό μοντέλο I/O Λ.Σ. και Ι/Ο memory mapped I/O, ειδικές εντολές polling interrupt driven I/O DMA! Υλοποίηση συστήματος Ι/Ο 2

Υποσύστημα εισόδου/εξόδου 3

Σημασία I/O! Απαραίτητο για αλληλεπίδραση με Η/Υ! Παρέχει στον υπολογιστή «μόνιμη» αποθήκευση! Μεγάλο πεδίο για πολλές και ενδιαφέρουσες εφαρμογές 4

Συσκευές εισόδου- εξόδου! Τεράστια ποικιλία 8 τάξεις μεγέθους διαφορά στο ρυθμό μεταφοράς 5

Σημαντικά χαρακτηριστικά! Αξιοπιστία (dependability) εξαιρετικά σημαντικός παράγοντας για πολλές συσκευές I/O π.χ. σύγκριση «ενόχλησης» από υπολογιστή που κολάει, κατεστραμένο σκληρό δίσκο! Κόστος! Επεκτασιμότητα στα περισσότερα είδη υπολογιστών εξαιρετικά σημαντικό σε servers! Επίδοση (performance) χρόνος απόκρισης (response pme, latency) ρυθμός διεκπεραίωσης (I/O bandwidth) 6

Επίδοση (performance) Ι/Ο Δύο μέτρα ρυθμού διεκπεραίωσης: 1. Ποσότητα δεδομένων που μεταφέρεται ανά μονάδα χρόνου (data rate) σημαντικό για «μεγάλες» προσπελάσεις 2. Αριθμός προσπελάσεων I/O ανά μονάδα χρόνου (Ι/Ο rate) σημαντικό για πολλές «μικρές» προσπελάσεις! Χρόνος απόκρισης εξαρτάται από το ρυθμό π.χ. απόκριση κλήσης συστήματος διαβάσματος αρχείου:! χρόνος αναζήτησης αρχείου! χρόνος μεταφοράς δεδομένων στη μνήμη 7

Χαρακτηριστικά I/O ανά είδος Η/Υ! Είδη υπολογιστών ενσωμματωμένοι (embedded), προσωπικοί (desktop/laptop), server (εξυπηρετητές)! Συσκευές όλων των ειδών Η/Υ: αξιοπιστία, κόστος! Ενσωμματωμένοι, προσωπικοί χρόνος απόκρισης, ποικιλία συσκευών! Servers ρυθμός διεκπεραίωσης επεκτασιμότητα 8

Προγραμματιστικό μοντέλο I/O συχνά αναφέρεται ως δίαυλος (bus)! Μοιάζει πολύ με αυτό της μνήμης: οι συναλλαγές (Ι/Ο transacpons) ξεκινούν από τον επεξεργαστή! συχνός όρος master για το εξάρτημα που κατευθύνει τη συναλλαγή Δίνεται μια διεύθυνση, και τα δεδομένα είτε:! διαβάζονται είσοδος από το περιφερειακό! γράφονται έξοδος στο περιφερειακό 9

Εμπλοκή του Λ.Σ.! Πολλαπλοί χρήστες, διεργασίες μοιράζονται το υποσύστημα Ι/Ο! Τα περιφερειακά συχνά προκαλούν διακοπές (interrupts, exceppons) αυτόματη αλλαγή σε κατάσταση συστήματος, εκτέλεση υπορουτινας χειρισμού (interrupt handler)! Πολύπλοκη διαχείριση συσκευών σε χαμηλό επίπεδο απαιτεί τη διαχείριση μιας σειράς ταυτόχρονων συμβάντων λεπτομερείς απαιτήσεις για σωστό έλεγχο της συσκευής 10

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

Επικοινωνία Λ.Σ. - συσκευών! Επίδοση εντολών στη συσκευή όχι μόνο ανάγνωση/εγγραφή αλλά και εργασίες της συσκευής, π.χ. αναζήτηση αρχείου στο δίσκο (seek)! Ενημέρωση (nopficapon) του Λ.Σ. από τη συσκευή π.χ. ολοκλήρωση μιας εργασίας, αντιμετώπιση λάθους! Μεταφορά δεδομένων μεταξύ μνήμης συσκευής και προς τις δύο κατευθύνσεις ανάλογα με τη συσκευή 12

Επίδοση εντολών σε συσκευή Δύο τρόποι με τους οποίους ο επεξεργαστής απευθύνεται σε μια συσκευή (address a device)! memory mapped I/O μέρος του χώρου διευθύνσεων (address space) αντιστοιχεί στις συσκευές αναγνώσεις και εγγραφές (load, store) του επεξεργαστή ερμηνεύονται από τη συσκευή ώς εντολές πρός τη συσκευή μηχανισμός μετάφρασης εξασφαλίζει ότι μόνο το Λ.Σ. μπορεί να απευθυνθεί στις συσκευές! ειδικές εντολές I/O παρόμοιες με load/store αλλά σε ειδικές διευθύσεις Ι/Ο! ή αριθμό συσκευής επιτρέπονται μόνο σε κατάσταση συστήματος 13

Επικοινωνία με τον επεξεργαστή! Το σύστημα διασύνδεσης (interconnect) κατευθύνει τις προσπελάσεις σε συσκευές στον αντίστοιχο ελεγκτή (device controller) είτε είναι memory mapped είτε ειδικές εντολές! Ο ελεγκτής ερμηνεύει την προσπέλαση και κατευθύνει τη συσκευή ανάλογα π.χ. τα δεδομένα μιας εγγραφής αποκωδικοποιούνται και ερμηνεύονται ως εντολή! Οι συσκευές είναι αργές δεν μπορούν να δεχθούν εντολές με το ρυθμό του επεξεργαστή δεν μπορούν να δώσουν δεδομένα με το ρυθμό του επεξεργαστή 14

Polling! Ελεγχος «κατάστασης» της συσκευής πρίν την επίδοση εντολής σε αυτή! Δύο καταχωρητές διευθύνσεις της συσκευής Καταχωρητής κατάστασης (Status) κάποιο bit δείχνει αν η συσκευή είναι έτοιμη (ready) να δεχθεί εντολές Καταχωρητής εντολής/δεδομένων εδώ γράφει ο επεξεργαστής τα δεδομένα/εντολή προς τη συσκευή! Επανάληψη ανάγνωσης του καταχωρητή κατάστασης μέχρι το ready bit να είναι 1! Εγγραφή στον καταχωρητή εντολής/δεδομένων 15

Παράδειγμα! Mars tool: keyboard, display MMIO simulator! 2 ζεύγη καταχωρητών για είσοδο έξοδο control/status, data 16

Κώδικας assembly li $t0, 0xffff0000 rd_poll: lw $v0, 0($t0) andi $v0, $v0, 0x01 beq $v0, $zero, rd_poll # end of loop lw $a0, 4($t0) li $t0, 0xffff0008 wr_poll: lw $v0, 0($t0) andi $v0, $v0, 0x01 beq $v0, $zero, wr_poll # end of loop sw $a0, 4($t0) 17

Polling! Χρήσιμο για ενσωμματωμένα συστήματα «πραγματικού χρόνου» (real pme embedded systems) χρόνος εισόδου- εξόδου προβλέψιμος! Μεγάλη δαπάνη χρόνου σε αρκετές περιπτώσεις! Παράδειγμα: Υπολογιστής 1Ghz (1ns περίοδος) 400 κύκλοι για polling Ποντίκι 30 φορές το δευτερόλεπτο Ποσοστό χρόνου υπολογιστή για polling? 30 x 400 = 12000 εντολές / δευτερόλεπτο 12000 / 109 = 0.0012% 18

Polling για δίσκο!!!! Ιδιος επεξεργαστής, χρόνος για poll Ανάγνωση 512Β κάθε φορά Ταχύτητα μεταφοράς: 256ΜΒ/s Δεν θέλουμε να χάσουμε δεδομένα: 256MB/s / 512B/poll = 500K polls / s 500K*400 / 109 = 20%! Υπερβολικά πολύς χρόνος για να σπαταληθεί! 19

Interrupt- driven I/O! Αντί για περιοδική εξέταση του ready bit, η συσκευή διακόπτει τον επεξεργαστή! Μειωνεκτήματα: χρόνος διακοπής: αλλαγή κατάστασης επεξεργαστή, αποθήκευση κατάστασης διεργασίας, λιγότερο προβλέψιμος χρόνος απόκρισης:! οι διακοπές μπορεί να έχουν απαγορευθεί για κάποιο χρόνο! υψηλότερης προτεραιότητας διακοπές 20

Μεταφορά δεδομένων! Με polling ή interrupt- driven I/O μπορούν να δοθούν εντολές σε μία συσκευή! Με τον ίδιο μηχανισμό μεταφέρονται και δεδομένα όπως είδαμε στο παράδειγμα του Mars! Για μεγάλο όγκο δεδομένων, ο χρόνος μεταφοράς είναι μεγάλος ακόμη και αγνοώντας το χρόνο διακοπής/polling πολλά συνεχόμενα load ή store! χωρίς cache, και με καθυστέρηση > της κύριας μνήμης! Μηχανισμός μεταφοράς δεδομένων από- προς μνήμη, χωρίς την παρέμβαση του επεξεργαστή Direct Memory Access DMA 21

DMA! Ειδικός ελεγκτής (επιπλέον υλικό) παρόμοια με τον coproc 0 του MIPS λειτουργεί ως master: κατευθύνει τις συναλλαγές έχει πρόσβαση στη κύρια μνήμη! μέχρι τώρα μόνο ο επεξεργαστής είχε! Βήματα: επεξεργαστής θεσπίζει (set up) πληροφορίες μεταφοράς γράφοντας σε κατχωρητές του ελεγκτή DMA ο ελεγκτής πραγματοποιεί τις μεταφορές δεδομένων, μία προς μία στο τέλος διακόπτει τον επεξεργαστή για να ενημερώσει ότι η μεταφορά ολοκληρώθηκε! ή συνέβει κάποιο σφάλμα 22

Πληροφορίες DMA! Πληροφορίες που παρέχει ο επεξεργαστής: Η συσκευή με την οποία θα γίνει η μεταφορά! κάποιας μορφής διεύθυνση Κατεύθυνση μεταφοράς! ανάγνωση/εγγραφή Αρχική διεύθυνση στη μνήμη Αριθμος bytes προς μεταφορά! Επικοινωνία ελεγκτή DMA με συσκευή αντί για polling, blocking read/write η συσκευή αποκρίνεται στην προσπέλαση όταν είναι έτοιμη ειδικά σήματα για «τέλος δεδομένων» ή «σφάλμα»! Πολλαπλά «κανάλια DMA» ικανότητα για ταυτόχρονες μεταφορές προς πολλές συσκευές 23

Κύρια μνήμη και DMA! Επεξεργαστής και ελεγκτής DMA συναγωνίζονται για πρόσβαση στη κύρια μνήμη! cycle stealing: ο ελεγκτής έχει μεγαλύτερη προτεραιότητα και κλέβει προσπελάσεις μνήμης από τον επεξεργαστή κρυφή μνήμη εξυπηρετεί τις περισσότερες προσπελάσεις του επεξεργαστή συσκευές έχουν πιο «άκαμπτες προθεσμίες» δεν συμβαίνει συχνά! block/burst mode: αποκλειστική πρόσβαση στη μνήμη για έναν αριθμό συνεχόμενων κύκλων 24

Πρόβλημα συνοχής μνήμης! Αγγλικός όρος: memory coherence! Ο ελεγκτής DMA διαβάζει/γράφει απευθείας στη κύρια μνήμη! Ο επεξεργαστής μέσω της κρυφής μνήμης! Προβλήματα: εγγραφή (από ελεγκτή DMA) στη κύρια μνήμη τιμών που έχουν προηγουμένως αντιγραφεί στην κρυφή! ο επεξεργαστής διαβάζει τα παλιά δεδομένα (stale) write- back κρυφή μνήμη: ανάγνωση από ελεγκτή DMA παλιών δεδομένων από κύρια μνήμη! Λύσεις: προσπελάσεις DMA μέσω κρυφής μνήμης 25

Λύσεις προβλήματος συνοχής! Προσπελάσεις DMA μέσω κρυφής μνήμης καθυστέρηση επεξεργαστή δεν εφαρμόζεται στην πράξη! Cache flushing: άδειασμα γραμμών κρυφής μνήμης αν χρησιμοποιούνται για Ι/Ο από Λ.Σ. με βοήθεια από υλικό! Επιλεκτική ακύρωση/άδειασμα γραμμών παρακολούθηση προσπελάσεων κύριας μνήμης από την κρυφή εγγραφή στη κύρια γραμμής που βρίσκεται στην $, ακύρωση της γραμμής ανάγνωση στη κύρια γραμμής που βρίσκεται στην $, η $ παρακάμπτει την κύρια και δίνει τα (τελευταία) δεδομένα 26

Εικονική μνήμη και DMA! DMA χρησιμοποιεί φυσικές διευθύνσεις μνήμης! Μεταφορές από DMA που ξεπερνούν το όριο μιας σελίδας μνήμης; τα δεδομένα είναι σε συνεχόμενες εικονικές σελίδες μπορεί να αντιστοιχούν σε διαφορετικές φυσικές σελίδες! Λύσεις μεταφορές μόνο μέσα σε όρια σελίδων! μεγάλες μεταφορές σπάνε σε κομμάτια εικονικές διευθύνσεις για DMA! με ένα πολύ μικρό «TLB» μέσα στον ελεγκτή 27

Προγραμματιστική όψη Ι/Ο! Βασισμένο σε δίαυλο (bus) μοιραζόμενο μέσο μετάδοσης μια ομάδα παράλληλα καλώδια συνδέονται σε πολλές συσκευές! Η αληθινή όψη σε παλιούς υπολογιστές 28

Χαρακτηριστικά διάυλου! Πλεονεκτήματα: «Ευκολία» (versaplity): απλός, ενιαίος τρόπος για όλες τις συσκευές Οικονομία: τα καλώδια μοιράζονται από πολλές συσκευές! Μειονεκτήματα: θέτει άνω όριο στο μέγιστο ρυθμό μετάδοσης τεράστιες διαφορές στις ταχύτητες μετάδοσης των συσκευών! ειδικά της κύριας μνήμης 29

Ιεραρχία «διαύλων»! Αργές συσκευές συνδέονται χαμηλότερα στην ιεραρχία! Γέφυρες (bridge): μεταφέρουν εντολές/δεδομένα μεταξύ επιπέδων! Στηρίζεται σε σύγχρονους, παράλληλους διαύλους (synchronous, parallel bus) 30

Προβλήματα παράλληλων συνδέσεων! Τα σήματα στέλνονται ταυτόχρονα! Τα καλώδια έχουν ελαφρώς διαφορετικά χαρακτηριστικά μήκος, επίπεδο στην πλακέτα, «θόρυβο»,...! Στον προορισμό φτάνουν με διαφορετικές καθυστερήσεις pming skew! Σε ένα πολύ γρήγορο σύστημα δύσκολα ξεχωρίζει το κάθε «κύμα» ταυτόχρονων σημάτων Οριο: μερκές 100ς MT/s 31

Σειριακή μετάδοση! Αποστολή ενός bit κάθε φορά συνήθως σε 2 καλώδια: διαφορικό ζεύγος πιο ανθεκτικό σε «θόρυβο»! Επιτυγχάνονται πολύ μεγάλοι ρυθμοί μετάδοσης GT/s, Giga (109) transfers / second! Παράλληλα ξεχωριστά lanes για επιπλέον ταχύτητα το PCI express (PCIe) ορίζει μέχρι 32 lanes (x32)! πρακτικά οι μεγαλύτερες κάρτες είναι x16 32

Μοντέρνα συστήματα I/O! Σε προσωπικούς υπολογιστές και servers χρησιμοποιείται η διασύνδεση PCI express Κανονικό δίκτυο Σύνδεσμοι point- to- point! Σήμερα: PCIe v3 7.877 Gbit/s κάθε lane PCIe 4, αναμένεται 2016, 2x 33

Υποσύστημα Ι/Ο x86! Το North bridge πλέον ενσωματωμμένο στο Ο.Κ. του επεξεργαστή 34

Επόμενο μάθημα Είσοδος/έξοδος μέρος 2: δίσκος, flash, Αξιοπιστία, RAID 35

Τέλος Ενότητας

Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Πανεπιστήμιο Ιωαννίνων» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους.

Σημειώματα

Σημείωμα Ιστορικού Εκδόσεων Έργου Το παρόν έργο αποτελεί την έκδοση 1.0. Έχουν προηγηθεί οι κάτωθι εκδόσεις: Έκδοση 1.0 διαθέσιμη εδώ. http://ecourse.uoi.gr/course/view.php?id=1307.

Σημείωμα Αναφοράς Copyright Πανεπιστήμιο Ιωαννίνων, Διδάσκων: Επίκουρος Καθηγητής Αριστείδης Ευθυμίου. «Αρχιτεκτονική Υπολογιστών. Υποσύστημα εισόδου εξόδου». Έκδοση: 1.0. Ιωάννινα 2014. Διαθέσιμο από τη δικτυακή διεύθυνση: http://ecourse.uoi.gr/course/view.php?id=1307.

Σημείωμα Αδειοδότησης Το παρόν υλικό διατίθεται με τους όρους της άδειας χρήσης Creative Commons Αναφορά Δημιουργού - Παρόμοια Διανομή, Διεθνής Έκδοση 4.0 [1] ή μεταγενέστερη. [1] https://creativecommons.org/licenses/by-sa/4.0/.