Όπως τονίσαμε παραπάνω, εξαιτίας της διακλάδωσης έχουμε καθυστέρηση κατά τρεις κύκλους ρολογιού. Αυτό όμως είναι αρκετά μεγάλη απώλεια. Θεωρήστε συχνότητα διακλάδωσης 30% και ιδανικό CPI ίσο με 1. Ακόμα και σε αυτή την περίπτωση η μηχανή με καθυστερήσεις διακλαδώσεων, επιτυγχάνει μόνο τη μισή ιδανική αύξηση ταχύτητας από τη σωλήνωση. Η καθυστέρηση αυτή ονομάζεται ποινή διακλάδωσης.
Συνειδητοποιούμε, δηλαδή, ότι είναι εξαιρετικά σημαντικό να μειώσουμε την ποινή διακλάδωσης. Ο αριθμός των κύκλων ρολογιού σε μια καθυστέρηση διακλάδωσης μπορεί να μειωθεί με δύο βήματα. Πρέπει και τα δύο αυτά βήματα να γίνουν όσο πιο νωρίς γίνεται μέσα στη σωλήνωση:
ΔΡΑΣΤΗΡΙΟΤΗΤΑ 3
Στον υπολογιστή DLX, οι διακλαδώσεις (BEQZ και BNEZ) απαιτούν έλεγχο ενός καταχωρητή για το αν είναι ίσος με το μηδέν ή αν δεν είναι αντίστοιχα. Έτσι, είναι δυνατό να ολοκληρώσουμε αυτή την απόφαση μέχρι το τέλος του σταδίου ID, μεταφέροντας τον έλεγχο της ισότητας με το μηδέν σε αυτό το στάδιο.
Για να καταφέρουμε να υπολογίσουμε τη διεύθυνση στόχου της διακλάδωσης κατά τη διάρκεια του σταδίου ID, είναι αναγκαίο να έχουμε έναν ξεχωριστό αθροιστή, αφού η κύρια ALU, η οποία έχει χρησιμοποιηθεί για αυτό τον σκοπό μέχρι στιγμής, δεν μπορεί να χρησιμοποιηθεί νωρίτερα από το στάδιο EX.
Υπάρχουν υπολογιστές οι οποίοι έχουν ξεχωριστά στάδια για την αποκωδικοποίηση και την ανάκληση καταχωρητών. Στην περίπτωση αυτή, πιθανά να υπάρχει μία καθυστέρηση διακλάδωσης, ίση τουλάχιστον με ένα κύκλο ρολογιού.
Αν η καθυστέρηση διακλάδωσης δεν ξεπεραστεί, τότε γίνεται ποινή διακλάδωσης. Μάλιστα όσο πιο βαθιά είναι η σωλήνωση, τόσο χειρότερη είναι η ποινή διακλάδωσης σε κύκλους ρολογιού.
Οι συνέπειες στην απόδοση, που έχει μία μεγαλύτερης διάρκειας ποινή διακλάδωσης, εξαρτάται από το ολικό CPI του υπολογιστή. Ένας υπολογιστής με υψηλό CPI αντέχει να έχει πιο ακριβές διακλαδώσεις γιατί το ποσοστό της απόδοσης του υπολογιστή που θα χαθεί από τις διακλαδώσεις είναι λιγότερο.
Συμπεριφορά διακλάδωσης σε προγράμματα
Οι διακλαδώσεις υπό συνθήκη χωρίζονται σε δύο κατηγορίες:
ΔΡΑΣΤΗΡΙΟΤΗΤΑ 4
Πραγματικά, στατιστικά στοιχεία δείχνουν ότι: Επομένως η πιθανότητα ακολούθησης μίας διακλάδωσης οπισθοδρόμησης είναι μεγαλύτερη από αυτή μίας διακλάδωσης προώθησης.
1)το 60% των διακλαδώσεων προώθησης ακολουθούνται κατά μέσο όρο
και
2)το 85% των διακλαδώσεων οπισθοδρόμησης ακολουθούνται κατά μέσο όρο.
|
|