2

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

Πολυπλέκτες. 0 x 0 F = S x 0 + Sx 1 1 x 1

HY225 Οργάνωςη Τπολογιςτών

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

ΕΝΟΤΗΤΑ 2: ΤΟ ΛΟΓΙΣΜΙΚΟ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ. ΚΕΦΑΛΑΙΟ 5: Γνωριμία με το λογιςμικό του υπολογιςτι

Διάλεξη 11 Προώθηση (Forwarding)

3 θ διάλεξθ Επανάλθψθ, Επιςκόπθςθ των βαςικϊν γνϊςεων τθσ Ψθφιακισ Σχεδίαςθσ

ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 7 θ Διάλεξθ Διαχείριςθ Μνιμθσ Μζροσ Γ

ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 3 ο Εργαςτιριο υγχρονιςμόσ Διεργαςιϊν

Παράςταςη ςυμπλήρωμα ωσ προσ 1

ΘΥ101: Ειςαγωγι ςτθν Πλθροφορικι

x n D 2 ENCODER m - σε n (m 2 n ) x 1 Παραδείγματα κωδικοποιθτϊν είναι ο κωδικοποιθτισ οκταδικοφ ςε δυαδικό και ο κωδικοποιθτισ BCD ςε δυαδικό.

Ακολουκιακά Λογικά Κυκλώματα

Η γλώςςα προγραμματιςμού C

Σχεδίαση μονάδας ελέγχου επεξεργαστή

Δείκτεσ Διαχείριςθ Μνιμθσ. Βαγγζλθσ Οικονόμου Διάλεξθ 8

30 min κάθε «φάση» Pipeline: Ένα παράδειγµα από.τη καθηµερινή ζωή. 1. Πλυντήριο. 2. Στεγνωτήριο. 3. ίπλωµα. 4. αποθήκευση. προσέγγιση για 4.

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

Διάλεξη 12 Καθυστερήσεις (Stalls)

Διάλεξη 12 Καθυστερήσεις (Stalls) Εκκενώσεις Εντολών (Flushing)

Σχεδίαςη Σφγχρονων Ακολουθιακών Κυκλωμάτων

Παράςταςη ακεραίων ςτο ςυςτημα ςυμπλήρωμα ωσ προσ 2

Παραπάνω παρουςιάηεται ο πιο ςυνικθσ χωροκζτθςθ αρικμθτικϊν, λογικϊν κυκλωμάτων. Η μονάδα επεξεργαςίασ είναι θ λζξθ (λ.χ. 32-bit ςε επεξεργαςτζσ,

Κάνουμε κλικ ςτθν επιλογι του οριηόντιου μενοφ «Get Skype»για να κατεβάςουμε ςτον υπολογιςτι μασ το πρόγραμμα του Skype.

Τμήματα Μνήμησ Υπολογιςμόσ Φυςικών διευθύνςεων. Εκπαιδεφτρια: Μαρία Πολίτθ

17. Πολυδιάςτατοι πίνακεσ

Διαδικαςία Διαχείριςθσ Στθλϊν Βιβλίου Εςόδων - Εξόδων. (v.1.0.7)

ΡΟΓΑΜΜΑΤΙΣΤΙΚΟ ΡΕΙΒΑΛΛΟΝ MICRO WORLDS PRO

8 τριγωνομετρία. βαςικζσ ζννοιεσ. γ ςφω. εφω και γ. κεφάλαιο

Πωσ δθμιουργώ φακζλουσ;

Αςκιςεισ ςε (i) Δομζσ Ευρετθρίων και Οργάνωςθ Αρχείων (ii) Κανονικοποίθςθ

ΕΦΑΡΜΟΓΖσ ΒΆΕΩΝ ΔΕΔΟΜΖΝΩΝ ΚΑΙ ΔΙΑΔΙΚΣΥΟΤ. Ειρινθ Φιλιοποφλου

Λαμβάνοντασ υπόψη ότι κατά την πρόςθεςη δφο δυαδικϊν ψηφίων ιςχφει: Κρατοφμενο

Μάθημα 9 ο ΤΕΧΝΙΚΕΣ ΔΙΑΧΕΙΡΙΣΗΣ ΕΙΚΟΝΙΚΗΣ ΜΝΗΜΗΣ

Οδηγίες αναβάθμισης χαρτών

Μθχανολογικό Σχζδιο, από τθ κεωρία ςτο πρακτζο Χριςτοσ Καμποφρθσ, Κων/νοσ Βαταβάλθσ

Πλαγιογώνια Συςτήματα Συντεταγμζνων Γιϊργοσ Καςαπίδθσ

Πόςο εκτατό μπορεί να είναι ζνα μη εκτατό νήμα και πόςο φυςικό. μπορεί να είναι ζνα μηχανικό ςτερεό. Συνιςταμζνη δφναμη versus «κατανεμημζνησ» δφναμησ

Ελλθνικι Δθμοκρατία Σεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Ψθφιακά Ηλεκτρονικά. Ενότθτα 10 : Καταχωρθτζσ Φϊτιοσ Βαρτηιϊτθσ

ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 2 ο Εργαςτιριο Διαχείριςθ Διεργαςιϊν

Ιδιότθτεσ πεδίων Γενικζσ.

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΔΕΥΤΕΡΗ ΠΡΟΟΔΟΣ ΣΤΗΝ ΟΡΓΑΝΩΣΗ ΣΤΟΥΣ Η/Y (ΗΥ232)

Οδηγίεσ προσ τουσ εκπαιδευτικοφσ για το μοντζλο του Άβακα

1. Κατέβαςμα του VirtueMart

ςυςτιματα γραμμικϊν εξιςϊςεων

Πρόςβαςη και δήλωςη μαθημάτων ςτον Εφδοξο

Διαχείριςθ του φακζλου "public_html" ςτο ΠΣΔ

Ανάλυςη κλειςτϊν δικτφων

ΕΡΓΑΣΗΡΙΟ ΕΦΑΡΜΟΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ

Modellus 4.01 Συ ντομοσ Οδηγο σ

Άςκθςθ 1θ: Να γραφεί αλγόρικμοσ που κα δθμιουργεί με τθ βοικεια διπλοφ επαναλθπτικοφ βρόχου, τον ακόλουκο διςδιάςτατο πίνακα:

Joomla! - User Guide

Εγχειρίδιο Χρήςησ Προςωποποιημζνων Υπηρεςιών Γ.Ε.ΜΗ. (Εθνικό Τυπογραφείο)

Πωσ δημιουργώ μάθημα ςτο e-class του ΠΣΔ [επίπεδο 1]

ΕΝΟΣΗΣΑ 1: ΓΝΩΡIΖΩ ΣΟΝ ΤΠΟΛΟΓΙΣΗ. ΚΕΦΑΛΑΙΟ 2: Σο Τλικό του Τπολογιςτι

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

Στα προθγοφμενα δφο εργαςτιρια είδαμε τθ δομι απόφαςθσ (ι επιλογισ ι ελζγχου ροισ). Ασ κυμθκοφμε:

Ενδεικτικζσ Λφςεισ Θεμάτων

Μετατροπι Αναλογικοφ Σιματοσ ςε Ψθφιακό. Διάλεξθ 10

Σ ΤΑΤ Ι Σ Τ Ι Κ Η. Statisticum collegium V

Ηλεκτρονικι Επιχειρθςιακι Δράςθ Εργαςτιριο 1

ΕΝΟΣΗΣΑ 1: ΓΝΩΡIΖΩ ΣΟΝ ΤΠΟΛΟΓΙΣΗ. ΚΕΦΑΛΑΙΟ 3: Εργονομία

ΕΦΑΡΜΟΓΕ ΒΑΕΩΝ ΔΕΔΟΜΕΝΩΝ ΣΗ ΝΟΗΛΕΤΣΙΚΗ. Φιλιοποφλου Ειρινθ

Ηλιακι Θζρμανςθ οικίασ

ΛΕΙΤΟΥΓΙΚΆ ΣΥΣΤΉΜΑΤΑ. 5 ο Εργαςτιριο Ειςαγωγι ςτθ Γραμμι Εντολϊν

Εγχειρίδιο Χρήςησ Προςωποποιημζνων Υπηρεςιών Γ.Ε.ΜΗ. (Εθνικό Τυπογραφείο)

Δίκτυα Υπολογιςτϊν 2-Rooftop Networking Project

ΕΝΟΣΗΣΑ 1: ΓΝΩΡIΖΩ ΣΟΝ ΤΠΟΛΟΓΙΣΗ Ω ΕΝΙΑΙΟ ΤΣΗΜΑ. ΚΕΦΑΛΑΙΟ 2: Σο Εςωτερικό του Τπολογιςτι

Κατά τθν ενεργοποίθςθ τθσ ιδιότθτασ αυτισ ενδζχεται να εμφανιςτεί ζνα μινυμα ςαν αυτό τθσ παρακάτω εικόνασ. Απλά επιβεβαιϊςτε πατϊντασ ΟΚ.

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 13. Διακλαδώσεις. Νίκος Μπέλλας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ

Α) Ενδεικτικϋσ απαντόςεισ των θεμϊτων

Εγχειρίδιο Χριςθσ τθσ διαδικτυακισ εφαρμογισ «Υποβολι και παρακολοφκθςθ τθσ ζγκριςθσ Εκπαιδευτικών Πακζτων»

ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 3 θ Διάλεξθ υγχρονιςμόσ Διεργαςιϊν

Σφντομεσ Οδθγίεσ Χριςθσ

ΛΕΙΤΟΥΓΙΚΆ ΣΥΣΤΉΜΑΤΑ. 6 θ Διάλεξθ Διαχείριςθ Μνιμθσ Μζροσ Β

ΠΑΝΕΠΙΣΘΜΙΟ ΔΤΣΙΚΘ ΜΑΚΕΔΟΝΙΑ ΣΜΘΜΑ ΜΘΧΑΝΙΚΩΝ ΠΛΘΡΟΦΟΡΙΚΘ ΚΑΙ ΣΘΛΕΠΙΚΟΙΝΩΝΙΩΝ. Λειτουργικά υςτιματα, 4 ο Εξάμθνο Ψθφιακι χεδίαςθ ΙΙ, 4 ο Εξάμθνο

Ψθφιακά Ηλεκτρονικά. Ενότθτα 5 : Ανάλυςθ κυκλώματοσ με D και JK FLIP- FLOP Φώτιοσ Βαρτηιώτθσ

ΤΙΤΛΟΣ: "SWITCH-ΠΩ ΝΑ ΚΑΣΑΦΕΡΕΙ ΣΗΝ ΑΛΛΑΓΗ ΟΣΑΝ Η ΑΛΛΑΓΗ ΕΙΝΑΙ ΔΤΚΟΛΗ" Σσγγραφείς: Chip Heath & Dan Heath. Εκδόζεις: Κσριάκος Παπαδόποσλος/ΕΕΔΕ

Ελλθνικι Δθμοκρατία Σεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Ψθφιακά Ηλεκτρονικά. Ενότθτα 9 : Διαδικαςία φνκεςθσ Φϊτιοσ Βαρτηιϊτθσ

ΦΥΕ 14 ΑΚΑΔ. ΕΤΟΣ Η ΕΡΓΑΣΙΑ. Ημερομηνία παράδοςησ: 12 Νοεμβρίου (Όλεσ οι αςκιςεισ βακμολογοφνται ιςοτίμωσ με 10 μονάδεσ θ κάκε μία)

ΑΝΑΠΣΤΞΘ ΕΦΑΡΜΟΓΩΝ Ε ΠΡΟΓΡΑΜΜΑΣΙΣΙΚΟ ΠΕΡΙΒΑΛΛΟΝ 3 ο ΓΕΝΙΚΟ ΛΤΚΕΙΟ Ν. ΜΤΡΝΘ- ΕΠΙΜΕΛΕΙΑ: ΠΤΡΙΔΑΚΘ Λ.

Ιςοηυγιςμζνα δζντρα και Β- δζντρα. Δομζσ Δεδομζνων

3 ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ ( while, do while )

Οδηγίεσ για την Τποβολή Καταςτάςεων υμφωνητικών μζςω xml αρχείου

Ειςαγωγι ςτθν Επιςτιμθ Υπολογιςτϊν. Ειςαγωγι ςτθν Python

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control)

ΧΗΥΙΑΚΟ ΔΚΠΑΙΔΔΤΣΙΚΟ ΒΟΗΘΗΜΑ «ΥΤΙΚΗ ΘΔΣΙΚΗ ΚΑΙ ΣΔΦΝΟΛΟΓΙΚΗ ΚΑΣΔΤΘΤΝΗ» ΦΥΣΙΚΗ ΘΔΤΙΚΗΣ ΚΑΙ ΤΔΧΝΟΛΟΓΙΚΗΣ ΚΑΤΔΥΘΥΝΣΗΣ ΘΔΜΑ Α ΘΔΜΑ Β

ΕΝΟΤΗΤΑ 2: ΕΠΙΚΟΙΝΩΝΩ ΜΕ ΤΟΝ ΥΠΟΛΟΓΙΣΤΗ. ΚΕΦΑΛΑΙΟ 5: Αρχεία - Φάκελοι

Εφδοξοσ+ Συνδεκείτε ςτθν Εφαρμογι Φοιτθτϊν και μεταβείτε ςτθ ςελίδα «Ανταλλαγι Βιβλίων (Εφδοξοσ+)».

ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 8 θ Διάλεξθ Ιδεατι Μνιμθ Μζροσ Α

ΕΡΓΑΣΗΡΙΑΚΗ ΑΚΗΗ 4.1

ΕΝΟΤΗΤΑ 2: ΤΟ ΛΟΓΙΣΜΙΚΟ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ. ΚΕΦΑΛΑΙΟ 6: Το γραφικό περιβάλλον Επικοινωνίασ (Γ.Π.Ε)

Ελλθνικι Δθμοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Ψθφιακά Ηλεκτρονικά. Ενότθτα 13 : Άλλοι Μετρθτζσ Φϊτιοσ Βαρτηιϊτθσ

Μεθολογία αςκιςεων αραίωςησ και ανάμειξησ διαλυμάτων (με τθν ίδια δ. ουςία).

2 η Ενδιάμεση Εξέταση Λύσεις/Απαντήσεις

Οδηγίεσ προσ τουσ εκπαιδευτικοφσ για το μοντζλο τησ Αριθμογραμμήσ

Διδάςκων: Κωνςταντίνοσ τεφανίδθσ

Electronics μαηί με τα ςυνοδευτικά καλϊδια και το αιςκθτιριο κερμοκραςίασ LM335 που περιζχονται

Δομζσ Δεδομζνων Πίνακεσ

Η θεωρία τησ ςτατιςτικήσ ςε ερωτήςεισ-απαντήςεισ Μέροσ 1 ον (έωσ ομαδοποίηςη δεδομένων)

Transcript:

1

2

3

Η βαςικι ιδζα του pipelining ι τθσ παράλλθλθσ επιμζρουσ εκτζλεςθσ είναι θ διαίρεςθ μιασ εργαςίασ ςε μικρά και ανεξάρτθτα βιματα, τα οποία μποροφν να ςυντελεςτοφν παράλλθλα. Τυπικό παράδειγμα αποτελοφν οι γραμμζσ ςυναρμολόγθςθσ, όπου για να ςυναρμολογιςουμε λ.χ. μια πλακζτα ι ζνα αυτοκίνθτο ζνα προσ ζνα, διαιροφμε τθν ςυναρμολόγθςθ ςε μικρά, ανεξάρτθτα βιματα. Ζτςι, το κάκε ανεξάρτθτο βιμα μπορεί να εκτελείται παράλλθλα, ςε διαφορετικά αντικείμενα προσ ςυναρμολόγθςθ, όπωσ φαίνεται ςτο παραπάνω ςχιμα με τα 5 βιματα. Αρχικά για τθν εκτζλεςθ τθσ διαδικαςίασ απαιτοφντο 5 βιματα. Με τθν ειςαγωγι του pipeline 5 βακμίδων, πάλι απαιτοφνται 5 βιματα ανά βιμα ολοκλθρϊνεται μια νζα διαδικαςία! Άρα ζχουμε κερδίςει x5 ωσ προσ τθν ροι. 4

Η ιδζα τθσ παράλλθλθσ επιμζρουσ εκτζλεςθσ διαδικαςίασ μπορεί να εφαρμοςτεί και τθν διαδικαςία εκτζλεςθσ των εντολϊν. Όπωσ είδαμε θ εκτζλεςθ τθσ κάκε εντολισ απαρτίηεται από βιματα. Ζτςι, εφαρμόηοντασ τθν ιδζα τθσ παράλλθλθσ εκτζλεςθσ των βθμάτων μποροφμε να πολλαπλαςιάςουμε τθν ροι των εντολϊν! Σθμαντικοί παράγοντεσ για τθν δθμιουργία του pipeline των εντολϊν (τα ςτάδια φαίνονται παραπάνω) είναι: τα βιματα πρζπει να απαιτοφν (περίπου) ίςο χρόνο, μια και ςε κάκε κφκλο-βιμα προχωράει θ διαδικαςία κατά 1 βιμα. Άρα, ο ςτόχοσ του ςχεδιαςτι είναι πάντα να εξιςορροπιςει το pipeline! όλεσ οι εντολζσ του επεξεργαςτι πρζπει να μπαίνουν ςε αυτό το πλαίςιο. Το τελευταίο εξαςφαλίηεται από το ISA του MIPS, ωσ RISC. Σε αρχιτεκτονικζσ CISC, λ.χ. με πολφπλοκεσ εντολζσ δεν μπορεί άμεςα να εφαρμοςτεί θ διαδικαςία του pipelining. 5

6

Στα παραπάνω ςχιματα βλζπουμε ξεκάκαρα το πλεονζκτθμα τθσ υλοποίθςθ με pipeline ωσ προσ τθν απόδοςθ του επεξεργαςτι. Μια και ο απαιτοφμενοσ κφκλοσ είναι 40ns, όπωσ και προςδιορίηεται από τθν εκτζλεςθ τθσ αργότερθσ εντολισ, δθλ. lw, ο επεξεργαςτισ με CPI=1 και χωρίσ pipelining κα εκτελεί μια εντολι ανά 40ns. Με τθν χριςθ του pipelining όμωσ, όπωσ φαίνεται ςτο κάτω διάγραμμα, με μια εντολι να εκτελείται ανά ςτάδιο, ο κφκλοσ του μθχανιματοσ ορίηεται ωσ 10ns (τθν κακυςτζρθςθ του πιο αργοφ ςταδίου), και ολοκλθρϊνεται θ εκτζλεςθ τθσ κάκε εντολισ ςε 10ns (εκτόσ αν το pipeline ιταν άδειο). Άρα, πετφχαμε τετραπλάςια απόδοςθ. 7

8

9

Οι εντολζσ του MIPS, λόγω και του ςυνόλου εντολϊν του διαιροφνται με εφκολο και φυςικό τρόπο ςτα 5 βιματα που είδαμε και ςτθν προθγοφμενθ διάλεξθ: 1. IF Φόρτωςθ Εντολισ 2. ID Αποκωδικοποίθςθ Εντολισ, Ανάκτθςθ Τιμϊν των Καταχωρθτϊν 3. EX Εκτζλεςθ Αρικμθτικισ-Λογικισ Πράξθσ ι Υπολογιςμό τελικισ διεφκυνςθσ 4. MEM Προςπζλαςθ μνιμθσ 5. WB Εγγραφι αποτελζςματοσ ςτο Αρχείο Καταχωρθτϊν Τα παραπάνω ςτάδια εκτζλεςθσ τθσ εντολισ μποροφν να αποτελζςουν 1-1 και ςτάδια pipeline, δθλ. το κάκε ςτάδιο θ εντολι ν και οι επόμενεσ, (ν+1), (ν+2), κτλ. να μπαίνουν ςτο pipeline, ανά ςτάδιο (Αριςτερά Δεξιά). Ζτςι, όταν θ ν κα είναι ςτο ςτάδιο ID, θ (ν+1) κα είναι ςτο IF, ενϊ οι (ν-1), (ν-2), (ν-3) ςτα EX, MEM, WB αντίςτοιχα. Ανά κφκλο το pipeline εξελίςςεται ανά βιμα. Σε διάφορα ςτάδια του pipeline παραπάνω παρατθροφμε ςυνδζςεισ από Δεξιά Αριςτερά. Αυτζσ, μια και ζχουν αντίκετθ φορά από τισ εντολζσ εγκυμονοφν τουσ λεγόμενουσ «κινδφνουσ» (hazards), δθλ. περιπτϊςεισ όπου οι εξαρτιςεισ μεταξφ των εντολϊν μποροφν να επθρεάςουν τθν λειτουργία του pipeline. Αυτι θ περίπτωςθ 10

Στο pipeline, οι εντολζσ κατευκφνονται και εκτελοφνται ανά βιμα από αριςτερά ςτα δεξιά ςε 5 ςτάδια, IF ID EX MEM WB. Επιπλζον, θ κάκε εντολι καταλαμβάνει μόνο 1 από τα 5 ςτάδια του pipeline κατά τθν διάρκεια αυτισ τθσ ςταδιακισ εκτζλεςθσ, και εκτόσ ειδικϊν περιπτϊςεων (hazards, παρακάτω) δεν επιτρζπεται να χρθςιμοποιεί πόρουσ από άλλα ςτάδια. Επιπλζον, ςε κάκε ςτάδιο παράγονται αποτελζςματα που πρζπει να χρθςιμοποιθκοφν ςτο επόμενο. Για να αποκθκευτοφν αυτά χρθςιμοποιοφνται καταχωρθτζσ μεταξφ των ςταδίων, οι οποίοι αποκθκεφουν όλθ τθν τοπικι πλθροφορία που παράγεται ςτον κφκλο ν μιασ εντολισ για να τθν χρθςιμοποιιςει ςτον (ν+1). Παραπάνω βλζπουμε ότι χρειαηόμαςτε 4 ςυνολικά καταχωρθτζσ για να διαχωρίςουμε τθν τοπικι πλθροφορία μεταξφ των 5 ςταδίων: IF/ID, ID/EX, EX/MEM και MEM/WB. 11

12

Στισ επόμενεσ διαφάνειεσ επιδεικνφουμε τθν εντζλεςθ μιασ εντολισ lw, sw ςτο pipeline. O ςκιαςμόσ δεξιά ςτα ςχιματα αντιςτοιχεί ςε ανάγνωςθ, ενϊ αριςτερά ςε εγγραφι. Παραπάνω δθλαδι θ εντολι lw ι sw διαβάηεται από τθν IM, και παράλλθλα υπολογίηεται θ τιμι του (PC+4). Τα δυο αυτά δεδομζνα αποκθκεφονται ςτον καταχωρθτι IF/ID μεταξφ των ςταδίων 1, 2. Ο (PC+4) είναι απαραίτθτοσ να αποκθκευτεί ςτθν μνιμθ των ςταδίων μια και αν θ εντολι ιταν beq, bne, θ αρχικι τιμι του PC κα ιταν ςχετικι με το βάκοσ του pipeline. Ζτςι, είναι απλοφςτερο να αποκθκευτεί όλθ θ τοπικι πλθροφορία, όπωσ είπαμε νωρίτερα. 13

Στο επόμενο ςτάδιο, ID, διαβάηεται θ τιμι του καταχωρθτι για το lw, sw, και επιπλζον θ 16-bit άμεςθ τιμι μετατρζπεται ςε 32-bit. Όλεσ οι τοπικζσ τιμζσ πάλι πρζπει να αποκθκευτοφν ςτον ςχετικό καταχωρθτι, δθλ. ID/EX. Συνεπϊσ, αποκθκεφονται όλεσ οι τιμζσ από το RF που διαβάηονται, θ 32-bit τιμι του άμεςου και η τιμή (PC + 4) που είχε προκφψει από το IF. Ζτςι, μποροφμε και ςυγκεντρϊνουμε κατά τθν πορεία εκτζλεςθσ τθσ εντολισ όλεσ τισ απαιτοφμενεσ πλθροφορίεσ από τα ςχετικά ςτάδια που τισ παράγουν. Τισ προωκοφμε μζχρι να πάψουν να είναι χριςιμεσ. Επιπλζον, παρόλο που κα μποροφςαμε να είμαςτε επιλεκτικοί ςτο τι αποκθκεφουμε, λ.χ. αν θ εντολι είναι lw, sw τότε δεν χρειάηεται θ τιμι (PC + 4) ι δεν χρειάηεται θ τιμι του 2 ου καταχωρθτι, ςυνικωσ για απλότθτα ςτθν ςχεδίαςθ/επαλικευςθ αποκθκεφουμε όλεσ τισ ςχετικζσ πλθροφορίεσ που μεταφζρονται από ςτάδιο ςε ςτάδιο. 14

Στο ςτάδιο ΕΧ θ εντολι lw, sw κα εκτελζςει τον ςχετικό υπολογιςμό τελικισ διεφκυνςθσ και τα ςχετικά αποτελζςματα κα αποκθκευτοφν ςτον καταχωρθτι EX/MEM. Επιπλζον, ςε περίπτωςθ εντολισ κατά ςυνκικθ βρόχου βλζπουμε ότι ο υπολογιςμόσ γίνεται ςτο ςτάδιο EX. O λόγοσ που ο ςχετικόσ ακροιςτισ για τον PC βρίςκεται εδϊ ςτο ΕΧ, αντί λ.χ. του IF είναι για να είναι εξιςορροπθμζνθ θ κακυςτζρθςθ των ςταδίων. Εφόςον το EX ζχει ιδθ τθν ALU, ζνασ ακροιςτισ που λειτουργεί παράλλθλα με αυτι δεν επιβαρφνει τθν κακυςτζρθςθ του. Αντικζτωσ, ςτο IF υπάρχει ιδθ ζνασ ακροιςτισ και θ ανάγνωςθ παράλλθλα τθσ IM. Για να βάηαμε τον υπολογιςμό ςτο IF κα ζπρεπε να βάλουμε τον ακροιςτι μετά τθν μνιμθ (και τθν προζκταςθ πρόςθμου), κάτι που κα επιβάρυνε ςθμαντικά τθν τοπικι του κακυςτζρθςθ (ΙΜ 32-bit Add). 15

Συνεχίηοντασ ςτο ΜΕΜ θ μεν lw κα διαβάςει από τθν μνιμθ και κα αποκθκεφςει τα δεδομζνα ςτον καταχωρθτι MEM/WB, θ δε sw μόνο κα αποκθκεφςει τα δεδομζνα ςτθν μνιμθ και δεν χρειάηεται να ςυντελζςει κάποια περαιτζρω ενζργεια. Ζτςι, το επόμενο και τελευταίο ςτάδιο τθσ lw είναι θ εγγραφι ςτον καταχωρθτι rt. 16

Παρατθροφμε όμωσ ότι ςτο παραπάνω datapath θ ςχετικι πλθροφορία, δθλ. ο αρικμόσ του rt τθσ lw δεν είναι πλζον διακζςιμοσ μια και όπωσ φαίνεται ςτο ςχιμα αυτόσ φορτϊνεται από τθν αποκωδικοποίθςθ τθσ εντολισ και τα ςχετικά δεδομζνα του καταχωρθτι IF/ID. Συνεπϊσ, κα πρζπει να τροποποιιςουμε το παραπάνω datapath, ζτςι ϊςτε να αποκθκεφει τα δεδομζνα του rt (αλλά γενικότερα και του rd για τισ εντολζσ τφπου R όπωσ κα δοφμε αργότερα) ςτουσ καταχωρθτζσ του pipeline, δθλ. ID/EX ΕΧ/ΜΕΜ και τελικά MEM/WB, όπου και χρειάηονται οι ςχετικοί αρικμοί των καταχωρθτϊν για τθν αποκικευςθ των δεδομζνων. 17

Με τθν παραπάνω τροποποίθςθ, όπου θ εντολι (lw εδϊ) κρατά και μετακινεί μαηί τθσ τον rt φαίνεται θ βαςικι φιλοςοφία και απαίτθςθ του pipelining, δθλ. θ ανεξαρτθςία των ςταδίων και θ χριςθ μόνο τοπικισ πλθροφορίασ και όχι από τα υπόλοιπα ςτάδια. Ομοίωσ, παραπάνω ζχουμε χειριςτεί τισ εντολζσ beq, bne, με τθν ςχετικι προϊκθςθ του PC από αριςτερά προσ τα δεξιά, μζχρι θ τιμι εγγραφισ και θ ςυνκικθ, να είναι πλζον δεδομζνεσ. 18

Για τθν sw, ςτο ςτάδιο EX κζλουμε να υπολογίςουμε τθν τελικι διεφκυνςθ για τθν εγγραφι, ομοίωσ με τθν lw. Επιπλζον όμωσ, κζλουμε και να προωκιςουμε τα δεδομζνα που διαβάςαμε από το RF, ςτο ςτάδιο ID, για να εγγραφοφν ςτθν μνιμθ ςτο ςτάδιο MEM. Ζτςι, προωκοφμε, όπωσ φαίνεται ςτο παραπάνω ςχιμα τα δεδομζνα του rt, χωρίσ επεξεργαςία ςτο MEM. 19

Εδϊ, ζχοντασ όλα τα δεδομζνα διακζςιμα για τθν εγγραφι, δθλ. τελικι διεφκυνςθ και τα περιεχόμενα του rt, γίνεται θ πρόςβαςθ και θ εγγραφι ςτθν μνιμθ και πρακτικά θ sw ζχει ολοκλθρωκεί. 20

Στο ςτάδιο WB, παρόλο που θ sw δεν ζχει ςυγκεκριμζνο ζργο να διατελζςει, λόγω του pipelining κα πρζπει να μείνει ουςιαςτικά ςε αυτό το ςτάδιο. Δεν μπορεί να «βγεί νωρίτερα», ή οι παρακάτω τισ εντολζσ να προχωρήςουν (όπωσ ςτην υλοποίηςη των πολλαπλϊν κφκλων), μια και οι παρακάτω τισ εντολζσ ζχουν ήδη μπεί ςτο pipeline. Ζτςι, ςτθν υλοποίθςθ με pipelining, όλεσ οι εντολζσ, ανεξαρτιτωσ του αν χρθςιμοποιοφν όλα τα ςτάδια (ο αρικμόσ των οποίων αντιςτοιχεί ςτθν εντολι που απαιτεί τα περιςςότερα, δθλ. lw), κα πρζπει υποχρεωτικά να περάςουν από αυτά και να μείνουν ςε αυτά 1 κφκλο, εφόςον τισ ακολουκοφν ιδθ οι επόμενεσ τουσ. 21

22

Το παραπάνω διάγραμμα εκτζλεςθσ πολλαπλϊν κφκλων διαβάηεται ωσ εξισ: θ ροι των εντολϊν είναι από πάνω (παλαιότερεσ) προσ τα κάτω (νεότερεσ) και ςτον δεξιό, κάκετο άξονα ςτον οριηόντιο άξονα απεικονίηονται τα ςτάδια του pipeline, και μια και το κάκε ςτάδιο διαρκεί 1 κφκλο, ο οριηόντιοσ άξονασ αντιςτοιχεί και ςτον αρικμό των κφκλων. οριηόντια απεικονίηουμε τθν κάκε εντολι «ςαν να εκτελείται μόνθ τθσ ςε 1 datapath», ενϊ κάκετα, ςε κάκε κφκλο μποροφμε να εντοπίςουμε ποιζσ εντολζσ βρίςκονται ταυτόχρονα, και ςε ποιο ςτάδιο του datapath θ κάκεμια. 23

24

Το παραπάνω διάγραμμα 1 κφκλου μασ δείχνει τθν κατάςταςθ του pipeline ςε κάποιον κφκλο και τισ εντολζσ που εμπεριζχονται ςε αυτό. Παραπάνω, παρατθροφμε επιπλζον ότι χρειαηόμαςτε ακόμα ζνα πολυπλζκτθ για τον καταχωρθτι εγγραφισ, rt ι rd, ο οποίοσ εξαρτάται από τον τφπο τθσ εντολισ, όπωσ ακριβϊσ και ςτον μθ-pipelined επεξεργαςτι. 25

26

Παραπάνω βλζπουμε τα απαιτοφμενα ςιματα ελζγχου για τισ ςχετικζσ μονάδεσ και τα διάφορα ςτάδια του pipeline. Τϊρα, ο ζλεγχοσ δεν μπορεί να είναι μια ΜΠΚ, μια και διαφορετικζσ εντολζσ εκτελοφνται παράλλθλα ςε διαφορετικά ςτάδια του pipeline, λ.χ. τα ςιματα Branch και Zero μπορεί να είναι ενεργά ςτο MEM, ενϊ το ALUOp αφορά μια επόμενθ εντολι τφπου R, και ςτο WB εκτελεί τθν εγγραφι τθσ μια lw. Άρα, ο ζλεγχοσ ςε pipelined επεξεργαςτι διαφζρει από τθν ΜΠΚ του επεξεργαςτι πολλαπλϊν κφκλων μια και ακολουκεί τθν ίδια φιλοςοφία με τα δεδομζνα, ότι όλα τα ςιματα ελζγχου πρζπει να είναι τοπικά ςτο ςχετικό ςτάδιο του pipeline και να μθν επικοινωνοφν με άλλα ςτάδια που κα ζχουν άλλεσ εντολζσ. Συνεπϊσ, και τα ςήματα ελζγχου, αφοφ προςδιοριςτοφν ςτο κατάλληλο ςτάδιο, πρζπει να μεταφζρονται ςτουσ καταχωρητζσ του pipeline, ζτςι ϊςτε να υπάρχει ςυνοχι ελζγχου/δεδομζνων. Ζνα μεγάλο μζροσ από αυτά παράγονται ςτθν αποκωδικοποίθςθ τθσ εντολισ (ID), τα υπόλοιπα ςτθν πορεία. Ζτςι, χρθςιμοποιοφμε ςτο ID, παρόμοια ςυνδυαςτικι λογικι όπωσ για τον επεξεργαςτι 1 κφκλου (ορίηουμε άμεςα όλα τα ςιματα του datapath που μποροφμε), και τα μεταφζρουμε ςτον ID/EX. Κατά τθν πορεία τθσ εντολισ, που κα προςτεκοφν και άλλα, π.χ. Zero, τα επιςυνάπτουμε ςτουσ καταχωρθτζσ του pipeline. 27

Παραπάνω φαίνεται θ δομι παραγωγισ/ςυλλογισ ςθμάτων ελζγχου ςτο pipeline. Όπωσ ειπϊκθκε νωρίτερα, τα ςήματα ελζγχου, αφοφ προςδιοριςτοφν ςτο κατάλληλο ςτάδιο, πρζπει να μεταφζρονται ςτουσ καταχωρητζσ του pipeline, ζτςι ϊςτε να υπάρχει ςυνοχι ελζγχου/δεδομζνων. Ζνα μεγάλο μζροσ από αυτά παράγονται ςτθν αποκωδικοποίθςθ τθσ εντολισ (ID), τα υπόλοιπα ςτθν πορεία. Ζτςι, χρθςιμοποιοφμε ςτο ID, παρόμοια ςυνδυαςτικι λογικι όπωσ για τον επεξεργαςτι 1 κφκλου (ορίηουμε άμεςα όλα τα ςιματα του datapath που μποροφμε), και τα μεταφζρουμε ςτον ID/EX. Κατά τθν πορεία τθσ εντολισ, που κα προςτεκοφν και άλλα, π.χ. Zero, τα επιςυνάπτουμε ςτουσ καταχωρθτζσ του pipeline. 28

Το παραπάνω διάγραμμα αποτελεί τθν ςφηευξθ του pipelined datapath μαηί με τον απαιτοφμενο pipelined ζλεγχο. Εδϊ παρατθροφμε αναλυτικά ότι: θ πλθκϊρα των ςθμάτων ελζγχου παράγεται ςτο ID, και μεταφζρεται ςε «ομάδεσ» ανάλογα με το ςτάδιο όπου αυτά κα χρθςιμοποιθκοφν τα ςιματα ALUOp, AluSrc, Branch, RegWrite, MemWrite, MemRead, MemtoReg, RegDst, κτλ. κακορίηονται ςτο ID, όπωσ ςτον επεξεργαςτι 1 κφκλου. Χρθςιμοποιοφνται ςε επόμενα ςτάδια του pipeline, λ.χ. το Branch ςτο MEM, το ALUOp ςτο EX, το RegDst ςτο WB 29

30

31

Παραπάνω βλζπουμε ότι μια εξάρτθςθ ανάγνωςθσ μετά από εγγραφι δθμιουργεί μια «επικίνδυνθ κατάςταςθ» ςτθν ομαλι ροι του pipeline, θ οποία χρειάηεται ειδικό χειριςμό. Ζτςι, εφόςον θ sub διαβάηει τον $s0 ςτο ςτάδιο ID, ενϊ θ add τον γράφει ςτο WB (κα μποροφςε να είναι και lw), ζτςι αν ευκυγραμμίςουμε το ID τθσ sub με το WB τθσ add κα ζχουμε αποφφγει τον κίνδυνο. Αυτι θ ευκυγράμμιςθ ςυνεπάγεται κακυςτζρθςθ 2 κφκλων, μια και το IF τθσ sub μετατοπίηεται κατά 2 κφκλουσ αριςτερότερα από τθν προβλεπόμενθ του κζςθ. Η κακυςτζρθςθ αυτι ςυνθκίηεται να ςυμβολίηεται με φοφςκεσ, δθλαδι κενά ςτάδια του pipeline. Κοιτϊντασ κάκετα φαίνεται ότι όταν το add είναι ςτο EX, τα ID, IF είναι κενά (ςυνεπϊσ κακυςτζρθςθ 2 κφκλων). Επίςθσ, όταν το add είναι ςτο MEM, τα EX, ID είναι κενά, κτλ. 32

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

34

Μια μζκοδοσ για να αποφφγουμε τθν αναμονι των ςταδίων του pipeline λόγω των εξαρτιςεων των δεδομζνων είναι αντί να περιμζνουμε τθν διακεςιμότθτα των δεδομζνων ςτουσ ςχετικοφσ καταχωρθτζσ, να αποςτζλουμε τα δεδομζνα, το νωρίτερο δυνατό μόλισ είναι ζτοιμα δθλαδι, από το ζνα ςτάδιο άμεςα ςτο άλλο. Αυτό μπορεί να γίνει ςυγκρίνοντασ τουσ αρικμοφσ των καταχωρθτϊν ςτα διαφορετικά ςτάδια (rs του ενόσ με rt, rd του άλλου) και άμεςθ προϊκθςθ με πολυπλζκτεσ. Παραπάνω βλζπουμε τθν περίπτωςθ όπου μια και θ τιμι του $s0 προωκείται άμεςα από το EX του ςτο EX του sub, ζχει λυκεί το προθγοφμενο ηιτθμα τθσ αναμονισ (των 2 κφκλων). 35

36

Όπωσ βλζπουμε ςτο παραπάνω ςχιμα, αν θ lw ακολουκείται από εντολι θ οποία χρθςιμοποιεί το αποτζλεςμα τθσ, κα πρζπει να προωκθκοφν τα δεδομζνα τθσ lw από το MEM τθσ ςτο ΕΧ τθσ επόμενθ εντολισ. Όμωσ, απαιτείται 1 κφκλοσ κακυςτζρθςθσ για να γίνει θ προϊκθςθ, μια και το MEM κα ευκυγραμμιηόταν με το EX. Η προϊκθςθ λοιπόν, δεν λφνει τζτοιου είδουσ εξάρτθςθ, αλλά τθν μειϊνει (ςε 1 αντί 2 κφκλουσ). 37

Το παραπάνω πρόγραμμα χωρίσ κακυςτεριςεισ ςτο pipeline απαιτεί (7 + 4) = 11 κφκλουσ, 7 από τουσ αρικμοφσ των εντολϊν και 4 μια και από τθν είςοδο τθσ τελευταίασ εντολισ μζχρι τθσ λιξθσ τθσ απαιτοφνται ακόμα 4 κφκλοι. Οι κακυςτεριςεισ ι διακοπζσ λόγω των εξαρτιςεων (δεξιά) ανεβάηουν τον αρικμό των κφκλων κατά 2. Αντικζτωσ, αριςτερά, αναδιοργανϊνοντασ τισ εντολζσ, οι εξαρτιςεισ ζχουν απομακρυνκεί πζραν τθσ 1 εντολισ, ζτςι δεν ςυντελείται κακυςτζρθςθ. 38

39

Παραπάνω φαίνεται μια αλλθλουχία εντολϊν R και sw με εξαρτιςεισ ςτον $2 και διαφορετικι απόςταςθ μεταξφ τουσ, δθλ. 1 2, 1 3, 1 4 και ςτα δυο δρϊμενα και 1 5. Μασ ενδιαφζρει να μελετιςουμε το πϊσ κα αποφαςιςτεί θ προϊκθςθ μεταξφ των διαφορετικϊν ςταδίων των παραπάνω εντολϊν. 40

Στο παραπάνω ςχιμα φαίνεται αναλυτικά το διάγραμμα πολλαπλϊν κφκλων του pipeline για το προθγοφμενο παράδειγμα εντολϊν. Βλζπουμε τα εξισ: sub and : θ προϊκθςθ γίνεται από EX EX sub or : θ προϊκθςθ γίνεται από MEM EX ςτθν add, θ εγγραφι του αποτελζςματοσ τθσ sub ςυμπίπτει με τθν ανάγνωςθ τθσ add. Το RF υποςτθρίηει ταυτόχρονθ ανάγνωςθ/εγγραφι (από το 1 ο μιςό ςτο 2 ο μιςό του κφκλου), ςυνεπϊσ δεν χρειάηεται άμεςθ προϊκθςθ. ςτθν sw, το αποτζλεςμα τθσ sub ζχει γραφτεί ςτο RF, ςυνεπϊσ ο καταχωρθτισ διαβάηεται από το RF. 41

Από τα προθγοφμενα, είςαι ςαφζσ ότι θ απαιτοφμενθ προϊκθςθ μεταξφ ςταδίων του pipeline είναι: EX EX και MEM EX. Άρα μζνει να προςδιορίςουμε το πϊσ κα διαγιγνϊςκεται θ ανάγκθ τθσ προϊκθςθσ. Αυτό μπορεί να γίνει ςυγκρίνοντασ τουσ αρικμοφσ των καταχωρθτϊν ςτο κάκε ςτάδιο, δθλ. ςτουσ καταχωρθτζσ του pipeline, οι οποίοι αφοροφν είτε τουσ δυο καταχωρθτζσ των δρϊμενων, είτε του αποτελζςματοσ. Ζτςι, οι καταχωρθτζσ των ςταδίων ορίηονται ωσ <Στάδιο>.καταχωρθτισ, και κατόπιν ελζγχουμε τισ ςυνκικεσ παραπάνω. 42

43

Παραπάνω φαίνεται θ επιπλζον μονάδα «Forwarding unit», θ οποία ςυντελεί τθν προϊκθςθ των δεδομζνων. Συγκεκριμζνα, όπωσ φαίνεται ςτο ςχιμα, οι είςοδοι του Forwarding unit είναι: ID/EX.Rs, ID/EX.Rt EX/MEM.Rd MEM/WB/Rd Και οι ζξοδοι είναι: ForwardA, ForwardB Οι ζξοδοι χρθςιμοποιοφνται ςτουσ πολυπλζκτεσ τθσ ειςόδου τθσ ALU, όπου πλζον τα δεδομζνα από τα ΕΧ/ΜΕΜ και MEM/WB ςυνδζονται απευκείασ, και ζτςι όταν πλθροφνται οι προχποκζςεισ. 44

45

Το παραπάνω παράδειγμα μασ δείχνει, ότι ςε περίπτωςθ ταυτόχρονθσ εξάρτθςθσ, κζλουμε πάντα το τελευταίο αποτζλεςμα, δθλ. αν οι ςυνκικεσ προϊκθςθσ ενεργοποιοφνται (για τουσ αρικμοφσ καταχωρθτϊν) και για το ΜΕΜ, και για το ΕΧ, τότε προωκοφμε από το EX. 46

47

Στο παραπάνω ςχιμα φαίνεται θ πλιρθσ δομι του pipelined επεξεργαςτι με τθν επιπρόςκετθ μονάδα προϊκθςθσ, και τθν λογικι ελζγχου του pipeline, όπωσ τθν περιγράψαμε νωρίτερα. 48

49

Όπωσ ειπϊκθκε νωρίτερα, ο κίνδυνοσ για εξάρτθςθ από lw δεν μπορεί να λυκεί μζςω προϊκθςθσ. Ζτςι, πρζπει να διαγνωςτεί θ ανάγκθ κακυςτζρθςθσ του 1 κφκλου για τισ εντολζσ lw. Προςζξτε ότι θ 2 θ εντολι μετά τθν lw χρθςιμοποιεί τισ ςυνκικεσ προϊκθςθσ, δθλ. τθν προϊκθςθ ΜΕΜ ΕΧ, άρα δεν χρειάηεται κάποιον ειδικό χειριςμό. 50

51

52

Παραπάνω βλζπουμε γραφικά τθν ειςαγωγι τθσ κακυςτζρθςθσ ςτθν 2 θ εντολι, και τθν επανεκτζλεςθ των ςταδίων ID, IF για τθν 2 θ και 1 θ εντολι αντίςτοιχα. 53

54

Παραπάνω βλζπουμε το datapath του επεξεργαςτι με τθν λογικι προϊκθςθσ και ειςαγωγισ κακυςτζρθςθσ για κινδφνουσ lw. Στθν περίπτωςθ κινδφνου lw: ο πολυπλζκτθσ ςτο ID μθδενίηει τα ςιματα για το EX, το ςιμα IF/ID.Write μζνει μθδζν για να διατθριςει τθν εντολι ςτο ID, το ςιμα PCWrite μζνει μθδζν για να μθν προχωριςει ο PC. Με τισ παραπάνω ενζργειεσ ειςάγεται κακυςτζρθςθ 1 κφκλου ςτο EX, όπωσ επεξθγικθκε νωρίτερα. 55

56

57

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

Μεταφζροντασ τον υπολογιςμό τθσ διεφκυνςθσ και τθσ ςυνκικθσ του βρόχου ςτο ID κερδίηουμε 2 κφκλουσ, δθλ. θ κακυςτζρθςθ λόγω βρόχου γίνεται ζνασ από τρείσ κφκλουσ. 59

60

Η παροφςα αρχιτεκτονικι δεν υποςτθρίηει προϊκθςθ ςτο ςτάδιο ID! 61

62

63

64

65

66

67

68

69

Παραπάνω βλζπουμε το ςενάριο όπου θ add κάνει overflow ςτο ςτάδιο EX. 70

Όλεσ οι εντολζσ που βρίςκονται μετά το ςτάδιο όπου προιλκε θ εξαίρεςθ ςυνεχίηουν κανονικά. Η εντολι που βρίςκονται ςτο ςτάδιο ςτο οποίο προζκυψε θ εξαίρεςθ, και όλεσ οι προθγοφμενεσ που βρίςκονται ςτο pipeline απαλείφονται, κζτοντασ ταυτόχρονα όλα τα ςιματα ελζγχου τουσ ςε μθδζν, όπωσ φαίνεται παραπάνω. Επίςθσ, ο PC γράφεται ςτθν εξαίρεςθ και το IF ξεκινάει (ςτον επόμενο κφκλο) από τθν διεφκυνςθ του χειριςτι των εξαιρζςεων/διακοπϊν. 71