Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Εργαστήριο 9: Εισαγωγή στην Ομοχειρία (Pipelining - Διοχέτευση) Μανόλης Γ.Η.

Σχετικά έγγραφα
Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Εργαστήριο 10: Επίδοση Επεξεργαστών, CPI. Μανόλης Γ.Η. Κατεβαίνης

τατιςτική ςτην Εκπαίδευςη II

ΠΕΡΙΓΡΑΦΙΚΗ και ΕΠΑΓΩΓΙΚΗ ΣΤΑΤΙΣΤΙΚΗ

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ασκήσεις 7: Πρόγραμμα Συνδεδεμένης Λίστας και Διαδικασιών. Μανόλης Γ.Η.

ΠΕΡΙΓΡΑΦΙΚΗ και ΕΠΑΓΩΓΙΚΗ ΣΤΑΤΙΣΤΙΚΗ

Λογική Δημήτρης Πλεξουσάκης Φροντιστήριο 5: Προτασιακός Λογισμός: Κατασκευή Μοντέλων Τμήμα Επιστήμης Υπολογιστών

Η ΔΙΔΑΣΚΑΛΙΑ ΤΗΣ ΙΣΤΟΡΙΑΣ ΣΤΗΝ ΕΛΛΗΝΙΚΗ ΔΙΑΣΠΟΡΑ (A06 11)

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

Γνωστική Ψυχολογία 3

Ιστορίας της παιδείας από τα κάτω Α03 06

Γνωστική Ψυχολογία 3

Γνωστική Ψυχολογία 3

ΜΕΤΑΒΑΣΗ ΑΠΟ ΤΟ ΝΗΠΙΑΓΩΓΕΙΟ ΣΤΟ ΔΗΜΟΤΙΚΟ ΣΧΟΛΕΙΟ: ΕΚΠΑΙΔΕΥΤΙΚΟΙ ΣΧΕΔΙΑΣΜΟΙ ΚΑΙ ΔΙΔΑΚΤΙΚΕΣ ΠΡΑΚΤΙΚΕΣ

τατιςτική ςτην Εκπαίδευςη II

Λογική. Δημήτρης Πλεξουσάκης. Ασκήσεις 2ου Φροντιστηρίου: Προτασιακός Λογισμός: Κανονικές Μορφές, Απλός Αλγόριθμος Μετατροπής σε CNF/DNF, Άρνηση

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Διαλέξεις 6: Κάλεσμα Διαδικασιών, Χρήση και Σώσιμο Καταχωρητών. Μανόλης Γ.Η.

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Διδακτική Φυσικών Επιστημών στην Προσχολική Εκπαίδευση

ΨΥΧΟΠΑΙΔΑΓΩΓΙΚΗ ΤΗΣ ΠΡΟΣΧΟΛΙΚΗΣ ΗΛΙΚΙΑΣ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Εισαγωγή στην Επιστήμη και Τεχνολογία των Υπηρεσιών

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Εργαστήριο 8: Μία Απλή Υλοποίηση του MIPS σε Έναν Κύκλο Ρολογιού ανά Εντολή

ΜΕΤΑΒΑΣΗ ΑΠΟ ΤΟ ΝΗΠΙΑΓΩΓΕΙΟ ΣΤΟ ΔΗΜΟΤΙΚΟ ΣΧΟΛΕΙΟ: ΕΚΠΑΙΔΕΥΤΙΚΟΙ ΣΧΕΔΙΑΣΜΟΙ ΚΑΙ ΔΙΔΑΚΤΙΚΕΣ ΠΡΑΚΤΙΚΕΣ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Συστήματα Αυτομάτου Ελέγχου. Ενότητα Α: Γραμμικά Συστήματα

ΠΕΡΙΓΡΑΦΙΚΗ και ΕΠΑΓΩΓΙΚΗ ΣΤΑΤΙΣΤΙΚΗ

ΒΟΗΘΗΤΙΚΕΣ ΣΗΜΕΙΩΣΕΙΣ

Λογική Δημήτρης Πλεξουσάκης Ασκήσεις στον Κατηγορηματικό Λογισμό Τμήμα Επιστήμης Υπολογιστών

Η ΔΙΔΑΣΚΑΛΙΑ ΤΗΣ ΙΣΤΟΡΙΑΣ ΣΤΗΝ ΕΛΛΗΝΙΚΗ ΔΙΑΣΠΟΡΑ (A06 11)

ΔΗΜΟΣΙΑ ΟΙΚΟΝΟΜΙΚΗ Ι

ΔΙΟΙΚΗΤΙΚΗ ΕΠΙΣΤΗΜΗ. Ενότητα #10: ΔΙΟΙΚΗΣΗ ΟΛΙΚΗΣ ΠΟΙΟΤΗΤΑΣ ΚΑΙ ΑΝΑΣΧΕΔΙΑΣΜΟΣ ΔΙΑΔΙΚΑΣΙΑΣ

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

Λογική Δημήτρης Πλεξουσάκης Φροντιστήριο 6: Προτασιακός Λογισμός: Μέθοδος Επίλυσης Τμήμα Επιστήμης Υπολογιστών

ΜΕΤΑΒΑΣΗ ΑΠΟ ΤΟ ΝΗΠΙΑΓΩΓΕΙΟ ΣΤΟ ΔΗΜΟΤΙΚΟ ΣΧΟΛΕΙΟ: ΕΚΠΑΙΔΕΥΤΙΚΟΙ ΣΧΕΔΙΑΣΜΟΙ ΚΑΙ ΔΙΔΑΚΤΙΚΕΣ ΠΡΑΚΤΙΚΕΣ

Ιστορίας της παιδείας από τα κάτω Α03 06

ΜΕΤΑΒΑΣΗ ΑΠΟ ΤΟ ΝΗΠΙΑΓΩΓΕΙΟ ΣΤΟ ΔΗΜΟΤΙΚΟ ΣΧΟΛΕΙΟ: ΕΚΠΑΙΔΕΥΤΙΚΟΙ ΣΧΕΔΙΑΣΜΟΙ ΚΑΙ ΔΙΔΑΚΤΙΚΕΣ ΠΡΑΚΤΙΚΕΣ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

ΠΕΡΙΓΡΑΦΙΚΗ και ΕΠΑΓΩΓΙΚΗ ΣΤΑΤΙΣΤΙΚΗ

Μακροοικονομική Θεωρία Ι

ΠΕΡΙΓΡΑΦΙΚΗ και ΕΠΑΓΩΓΙΚΗ ΣΤΑΤΙΣΤΙΚΗ

Γνωστική Ψυχολογία 3

Διοικητική Λογιστική

ΠΕΡΙΓΡΑΦΙΚΗ και ΕΠΑΓΩΓΙΚΗ ΣΤΑΤΙΣΤΙΚΗ

Μακροοικονομική Θεωρία Ι

ΔΙΔΑΚΤΙΚΗ ΜΕΘΟΔΟΛΟΓΙΑ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Διδακτική Φυσικών Επιστημών στην Προσχολική Εκπαίδευση

Εισαγωγή στις Βάσεις Δεδομζνων II

Μακροοικονομική Θεωρία Ι

Μακροοικονομική Θεωρία Ι

Ιστορίας της παιδείας από τα κάτω Α03 06

Υδραυλικά & Πνευματικά ΣΑΕ

ΕΚΠΑΙΔΕΥΤΙΚΗ ΑΞΙΟΛΟΓΗΣΗ

ΠΕΡΙΓΡΑΦΙΚΗ και ΕΠΑΓΩΓΙΚΗ ΣΤΑΤΙΣΤΙΚΗ

Λογιστικές Εφαρμογές Εργαστήριο

ΔΙΔΑΚΤΙΚΗ ΜΕΘΟΔΟΛΟΓΙΑ

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ασκήσεις 5: Εντολές Συγκρίσεων και Μεταφοράς Ελέγχου. Μανόλης Γ.Η.

Ιστορίας της παιδείας από τα κάτω Α03 06

ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΕΠΙΔΟΣΗΣ ΤΩΝ ΜΑΘΗΤΩΝ ΚΕΦΑΛΑΙΟ 8: Επεξεργασία και ερμηνεία αξιολογικών δεδομένων του μαθητή

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Δημήτρης Πλεξουσάκης

ΟΙΚΟΝΟΜΙΚΗ ΑΝΑΛΥΣΗ Ενότητα #4: ΙΣΟΡΡΟΠΙΑ ΑΓΟΡΩΝ

ΔΙΟΙΚΗΤΙΚΗ ΕΠΙΣΤΗΜΗ ΚΕΦΑΛΑΙΟ 2#: ΕΙΣΑΓΩΓΗ ΣTΗ ΔΙΟΙΚΗΤΙΚΗ ΕΠΙΣΤΗΜΗ

ΜΑΚΡΟΟΙΚΟΝΟΜΙΚΗ ΘΕΩΡΙΑ ΙΙ

ΕΚΠΑΙΔΕΥΤΙΚΗ ΑΞΙΟΛΟΓΗΣΗ

Hase οδηγίες χρήσης.

Γνωστική Ψυχολογία 3

Τεχνικό Σχέδιο - CAD

Επιπλέον διδακτικό υλικό κρυφών μνημών: set-associative caches, πολιτικές αντικατάστασης, χειρισμός εγγραφών

ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΕΠΙΔΟΣΗΣ ΤΩΝ ΜΑΘΗΤΩΝ ΚΕΦΑΛΑΙΟ 4: Παιδαγωγική και κοινωνική υπόσταση της αξιολόγησης

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

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

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Φροντιστήριο 4: Μορφολογική Παραγωγή. Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών

Λογική. Φροντιστήριο 3: Συνεπαγωγή/Ισοδυναμία, Ταυτολογίες/Αντινομίες, Πλήρης Αλγόριθμος Μετατροπής σε CNF

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Διδακτική Φυσικών Επιστημών στην Προσχολική Εκπαίδευση

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

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

Προγραμματισμός Η/Υ. Βασικές Προγραμματιστικές Δομές. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

ΔΙΔΑΚΤΙΚΗ ΜΕΘΟΔΟΛΟΓΙΑ

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

ΠΕΡΙΓΡΑΦΙΚΗ και ΕΠΑΓΩΓΙΚΗ ΣΤΑΤΙΣΤΙΚΗ

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

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

ΑΞΙΟΛΟΓΗΣΗ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΕΡΓΟΥ ΚΑΙ ΑΠΟΤΕΛΕΣΜΑΤΙΚΟΤΗΤΑ ΣΧΟΛΕΙΟΥ ΚΕΦΑΛΑΙΟ 12: Η αξιολόγηση του έργου των εκπαιδευτικών στη χώρα μας σήμερα

Chapter 5. Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου. Ενδέκατη (11 η ) δίωρη διάλεξη.

Μακροοικονομική Θεωρία Ι

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Διδακτική Φυσικών Επιστημών στην Προσχολική Εκπαίδευση

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

Βάσεις Περιβαλλοντικών Δεδομένων

Διοικητική Λογιστική

Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων VLSI II

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 3: Έλεγχοι στατιστικών υποθέσεων

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 1: Καταχώρηση δεδομένων

9 ο ΕΡΓΑΣΤΗΡΙΟ ΣΗΜΑΤΑ & ΣΥΣΤΗΜΑΤΑ

ΟΙΚΟΝΟΜΙΚΗ ΑΝΑΛΥΣΗ Ενότητα #7: ΚΑΤΑΝΑΛΩΤΕΣ, ΠΑΡΑΓΩΓΟΙ ΚΑΙ ΑΠΟΤΕΛΕΣΜΑΤΙΚΟΤΗΤΑ ΑΓΟΡΩΝ

Multi Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές

Διδακτική Πληροφορικής

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 2: Περιγραφική στατιστική

Πληροφορική. Εργαστηριακή Ενότητα 3 η : Επεξεργασία Κελιών Γραμμών & Στηλών. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

ΜΕΤΑΒΑΣΗ ΑΠΟ ΤΟ ΝΗΠΙΑΓΩΓΕΙΟ ΣΤΟ ΔΗΜΟΤΙΚΟ ΣΧΟΛΕΙΟ: ΕΚΠΑΙΔΕΥΤΙΚΟΙ ΣΧΕΔΙΑΣΜΟΙ ΚΑΙ ΔΙΔΑΚΤΙΚΕΣ ΠΡΑΚΤΙΚΕΣ

ΠΛΕ- 027 Μικροεπεξεργαστές 6ο μάθημα: Αρχιτεκτονική πυρήνα: υλοποίηση με διοχέτευση

Transcript:

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Οργάνωση Υπολογιστών Εργαστήριο 9: Εισαγωγή στην Ομοχειρία (Pipelining - Διοχέτευση) Μανόλης Γ.Η. Κατεβαίνης Τμήμα Επιστήμης Υπολογιστών

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται στην άδεια χρήσης Creative Commons και ειδικότερα Αναφορά Μη εμπορική Χρήση Όχι Παράγωγο Έργο 3.0 Ελλάδα (Attribution Non Commercial Non-derivatives 3.0 Greece). CC BY-NC-ND 3.0 GR Εξαιρείται από την ως άνω άδεια υλικό που περιλαμβάνεται στις διαφάνειες του μαθήματος, και υπόκειται σε άλλου τύπου άδεια χρήσης. Η άδεια χρήσης στην οποία υπόκειται το υλικό αυτό αναφέρεται ρητώς. Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Πανεπιστήμιο Κρήτης» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους.

Άσκηση 9: Εισαγωγή στην Ομοχειρία (Pipelining - Διοχέτευση) Βιβλίο (4η έκδοση): Διαβάστε τις ενότητες 4.5 έως και 4.8, σελίδες 389-448. 9.1 Εισαγωγικά, Παροχή, Καθυστέρηση, το Παράδειγμα της Μπουγάδας: Διαβάστε τις σελίδες 389-392, και δείτε το video της διάλεξης 9.1: Εισαγωγή, Παροχή, Καθυστέρηση, Παράδειγμα Μπουγάδας. 9.2 Η Βασική Ιδέα του Pipelined Datapath: Δείτε το video της διάλεξης 9.2: Βασική ιδέα του Pipelined Datapath, και διαβάστε από το βιβλίο τις σελίδες 405-409. 9.3 Παροχή και Καθυστέρηση, ξανά: Διαβάστε τις σελίδες 393-394, και δείτε το video της διάλεξης 9.3: Παροχή και καθυστέρηση... ξανά! 9.4 Λεπτομερής Λειτουργία του Pipelined Datapath χωρίς Αλληλεξαρτήσεις ή Διακλαδώσεις: Δείτε το video της διάλεξης στο 9.4: Λεπτομερής Λειτουργία του Pipelined Datapath χωρίς Αλληλεξαρτήσεις ή Διακλαδώσεις, και διαβάστε από το βιβλίο τις σελίδες 409-417. 9.5 Γραφική Αναπαράσταση της Ομοχειρίας: Δείτε το video της διάλεξης 9.5: Γραφική Αναπαράσταση Ομοχειρίας, και διαβάστε από το βιβλίο τις σελίδες 417-420. 9.6 Μονάδα Ελέγχου γιά την Ομοχειρία: Δείτε το video της διάλεξης 9.6: Μονάδα Ελέγχου για την Ομοχειρία, και διαβάστε από το βιβλίο τις σελίδες 420-425. 9.7 Εντολές ALU: 4 ή 5 Βαθμίδες; Δείτε το video της διάλεξης 9.7: Εντολές ALU: 4 ή 5 Βαθμίδες; 9.8 Αλληλεξαρτήσεις μεταξύ Εντολών ALU: Προσπέρασμα το βιβλίο τις σελίδες 395-397, καθώς και τις 425-434 οι οποίες καλύπτουν επίσης και τα παρακάτω θέματα 9.9 και 9.10. Στις σελίδες 430-434, λάβετε υπ' όψη σας ότι εμείς στις διαλέξεις βάλαμε το κύκλωμα ελέγχου / ανίχνευσης γιά την ύπαρξη αλληλεξαρτήσεων και την απόφαση προσπεράσματος στη δεύτερη βαθμίδα της pipeline, όπως κάνουν οι κανονικοί επεξεργαστές, και όχι στην τρίτη όπως κάνει το βιβλίο γιά λόγους απλότητας. Ο λόγος να βάλει κανείς το κύκλωμα αυτό στη δεύτερη βαθμίδα είναι ότι εκεί υπάρχει "ελεύθερος" χρόνος να γίνει αυτή η δουλειά εν παραλλήλω με την ανάγνωση καταχωρητών (δηλαδή χωρίς να χάνεται επιπλέον χρόνος ειδικά γιά αυτή τη δουλειά), ενώ εάν αυτό τοποθετηθεί στην τρίτη βαθμίδα, τότε στην αρχή του κύκλου

ρολογιού, στην τρίτη βαθμίδα, το datapath δεν κάνει τίποτα χρήσιμο περιμένοντας να αποφασίσει το κύκλωμα αυτό εάν πρέπει ή δεν πρέπει να γίνει προσπέρασμα, και από πού. 9.9 Datapath γιά Προσπεράσματα: που έγραφε το θέμα 9.8 παραπάνω. 9.10 Έλεγχος γιά Προσπεράσματα: που έγραφε το θέμα 9.8 παραπάνω. 9.11 Εξάρτηση από προηγούμενη Εντολή Load: Αναμονή το βιβλίο τις σελίδες 397-398, καθώς και τις 434-438 οι οποίες καλύπτουν επίσης και το παρακάτω θέμα 9.12. 9.12 Κύκλωμα Ελέγχου γιά Αναμονή: που έγραφε το θέμα 9.11 παραπάνω. 9.13 Στατική Αναδιάταξη Εντολών γιά την Αποφυγή Αναμονών: το βιβλίο τις σελίδες 398-399. 9.14 Αλληλεξαρτήσεις RAW, WAW, WAR: Δείτε το video της διάλεξης από τον ιστότοπο βιντεοσκοπήσεων του μαθήματος. 9.15 Οι Αλληλεξαρτήσεις στη δική μας Pipeline, Συνολικά: Δείτε το video της διάλεξης από τον ιστότοπο βιντεοσκοπήσεων του μαθήματος. 9.16 Διακλαδώσεις και Άλματα, Υπόθεση Αποτυχίας της Διακλάδωσης και Ακύρωση Εντολών εάν αυτή Επιτύχει: το βιβλίο τις σελίδες 399-405 και 438-442. 9.17 Πρόβλεψη Διακλαδώσεων: το βιβλίο τις σελίδες 442-448. Άσκηση 9: Οπτικοποίηση του Pipelining: Στην άσκηση αυτή θα χρησιμοποιήστε έναν προσομοιωτή γιά την οπτικοποίηση της λειτουργίας της απλής pipeline του MIPS που είδαμε στο μάθημα. Πρόκειται γιά το εργαλείο "Hase" που έχει αναπτυχθεί στο Πανεπιστήμιο του Εδιμβούργου, που μπορεί να χρησιμοποιηθεί γιά πλήθος

σκοπών, μεταξύ των οποιων και γιά την οπτικοποίηση της δικής μας pipeline, και που είναι διαθέσιμο δωρεάν από το Διαδίκτυο: www.icsa.inf.ed.ac.uk/research/groups/hase/ (αλλά που σας προτείνουμε να το εγκαταστήσετε από την περιοχή του μαθήματός μας, σύμφωνα με τις εξής οδηγίες). (1) Απαριθμηστε τις βαθμίδες (στάδια) της pipeline του επεξεργαστή και για την κάθε μία περιγράψτε περιληπτικά (2-3 προτάσεις) την λειτουργία της. (2) Ποιές βαθμίδες είναι απαραίτητες για ολες τις εντολές; Δηλαδή, ποιά στάδια της pipeline εκτελούν κάποια χρήσιμη λειτουργία για όλες τις εντολές, ανεξαρτήτως τύπου; (3) Στην Pipeline υπάρχουν κάποια στάδια τα οποία δεν εκτελούν κάποια χρήσιμη λειτουργία για κάποιους τύπους εντολών. Ποιά στάδια ειναι αυτά; Ποιο στάδιο δεν κάνει κάποια χρήσιμη λειτουργία για τις εντολές αριθμητικής; Ποιό στάδιο δεν κάνει κάποια χρήσιμη λειτουργία για τις εντολές store; (4) Ακολουθήστε τις παραπάνω οδηγίες ώστε να εγκαταστήσετε στην περιοχή σας τον προσομοιωτή Hase. Παρατηρήστε την εκτέλεση των εντολών και πώς αυτές μεταβαίνουν από το ένα στάδιο της pipeline στο επόμενο μέχρι την ολοκλήρωση τους. Γράψτε μερικές δικές σας αλληλουχίες εντολών και παρατηρήστε την εκτελεση τους. Συγκεκριμένα, γράψτε μερικές εντολές αριθμητικών πράξεων μεταξύ καταχωρητών, μερικές μεταξύ καταχωρητών και σταθερών, καθώς και μερικές εντολές load και store. Για κάθε μία απο αυτές τις (τρεις) περιπτώσεις γράψτε στην αναφορά σας τις εντολές που εκτελέσατε (τα περιεχόμενα του αρχείου "MEMORY.instr_mem.mem") συνοδευόμενα απο ένα screenshot απο την προσομοίωση. (5) τρέξτε τις εξής δυο ακολουθίες εντολών: ADD R1 R2 R3 ADD R1 R1 R2 BREAK ADD R1 R2 R3 ADD R4 R4 R6 BREAK Υπάρχει διαφορά ανάμεσα στον χρόνο εκτέλεσης των δυο ακολουθιών; Πόση είναι και που οφείλεται; Στο σχηματικό Pipeline (κατω αριστερά στο σχήμα του datapath) μπορείτε να δείτε ποιά εντολή βρίσκεται σε κάθε στάδιο του Pipeline, τι διαφορετικό παρατηρείτε στην εκτέλεση των δυο ακολουθιών; Ποιά εντολή περιμένει στην δευτερη ακολουθία; Σε ποιο στάδιο και γιατί; (6) Βασισμένοι στις διαπιστώσεις τις προηγούμενης ερώτησης μπορείτε να πείτε αν υπάρχει Forwarding στο datapath που προσομοιώσατε; Τι θα άλλαζε αν ήταν διαφορετικά απο ότι είναι; Θα προχωρούσε στην εκτέλεση η εντολή που περιμένει για το αποτέλεσμα της προηγούμενης νωρίτερα/αργότερα αν ήταν διαφορετικά;