[Advcomparch] TOMASULO

Τσιχριτζή Τσιχριτζή
Tue Jul 3 19:35:50 EEST 2012


 1) Στην άσκηση υποθέτουμε ότι ο R1 περιέχει τη διεύθυνση βάσης ενός 
 πίνακα, δηλαδή η διεύθυνση 0(R1)=A(0). Στη load όμως δίνει offset οπότε 
 αφού φορτώνεις το 8(R1) τότε προφανώς φορτώνεις το A(1).

 2) Τσέκαρε τις διαφάνειες του μαθηματος απ'τη σελίδα 30 και μετά για 
 τους two-level predictors. (μ,ν) σημαίνει ότι ο προβλέπτης κρατά 
 ιστορικό των τελευταίων μ διακλαδώσεων. Δηλαδή υπάρχει ένας καταχωρητής 
 μήκους μ bits (Branch History Register) στον οποίο αποθηκεύονται 0 ή 1 
 ανάλογα με τα αποτέλεσματα των τελευταίων μ διακλαδώσεων. Αυτό σημαίνει 
 ότι υπάρχουν 2^μ πιθανοί συνδυασμοί taken/not taken για τις τελευταίες μ 
 διακλαδώσεις. Αν το σκεφτείς κι αλλιώς ένας δυαδικός αριθμός μ ψηφίων 
 μπορεί να πάρει 2^μ διαφορετικές τιμές.

 Εκτός απ'τον BHR, τώρα, υπάρχει ένας πίνακας (Pattern History Table) 
 από ν-bit προβλέπτες όπου η κάθε καταχώρηση του πίνακα αντιστοιχεί στην 
 πρόβλεψη για το εκάστοτε ιστορικό.

 Ένας (1,1) global predictor λοιπόν διατηρεί ιστορικό μίας διακλάδωσης, 
 άρα ενός μπιτ, κι έτσι έχουμε δύο περιπτώσεις: 0 ή 1. Για τις δύο αυτές 
 περιπτώσεις διατηρούμε 2 ξεχωριστούς προβλέπτες του 1 μπιτ. Αν η πιο 
 πρόσφατη διακλάδωση ήταν 0 (not taken) τότε στην επόμενη διακλάδωση η 
 πρόβλεψη θα προέλθει απ'τον πρώτο 1-bit προβλέπτη. Αν η πιο πρόσφατη 
 διακλάδωση ήταν 1 (taken) τότε στην επόμενη διακλάδωση η πρόβλεψη θα 
 προέλθει απ' τον δεύτερο 1-bit προβλέπτη.

 Πρόσεξε όμως ότι μόλις γίνει γνωστό το πραγματικό αποτέλεσμα της 
 διακλάδωσης ενημερώνεται μόνο ένας εκ των δύο 1-bit predictors που 
 διαθέτεις! Όχι και οι δύο! Ενημερώνεις, δηλαδή, μόνο αυτόν που 
 χρησιμοποιηθηκε.

 Ελπίζω να βοήθησα!

 On Tue, 3 Jul 2012 18:06:18 +0300, manos panagiwtakhs wrote:
> Καλησπερα,
> ασχολουμαι με την φετινη 3η ασκηση και
> συγκεκριμενα στο Β κομματι που εχουμε
> και ROB.εχω τις 2 εξης αποριες:
> 1)στη πρωτη εντολη LD F0,8(R1) γιατι εμείς
> αρχικά κάνουμε load το Α[1] και οχι το Α[0]?
> 2)μηπως θα ητάν εύκολη μια σύντομη
> περιγραφη ενός global predictor (1,1) η αν
> υπαρχει καποιο παραδειγμα που μπορω
> να δω για να καταλαβω τη μεταβολη του
> history?
> ευχαριστω εκ των προτερων


More information about the Advcomparch mailing list