[Advcomparch] ID/IS Register

Μιχάλης Βήχος m_vichos at hotmail.com
Wed Jul 1 22:02:04 EEST 2009


Είναι πολύ πιθανό να μην έχω κατανοήσει και πολύ καλά το αντικείμενο και η ερώτηση μου μου να μη στέκει...

Διαβάζοντας όμως τις λύσεις που ανέβηκαν για την άσκηση 3 μου δημιουργήθηκε η εξής απορία:

 

Στην εκτέλεση του αλγόριθμου χωρίς ROB στο κύκλο 15 ξεκινά το IS της εντολής DIV.D F6 F2 F4. Φυσικά το στάδιο δε μπορεί να ολοκληρωθεί άμεσα καθώς δεν υπάρχει ελέυθερος RS. Τελικά το IS στάδιο της εντολής ολοκληρόνεται στον κύκλο 21. Εντομεταξύ, στο διάστημα 15-22 εκτελούνται τα στάδια IF και ID για 7 εντολές. Τέλος στον κύκλο 23 γίνεται το IS στάδιο της εντολής που είχε ολοκληρώσει το ID στάδιο 8 κύκλους πριν και είχε "επικαλυφθεί" απο άλλες 7 εντολές. Αυτό που θέλω να πώ, είναι ότι για να δουλέψει κάτι τέτοιο θα πρέπει ανάμεσα στα στάδια ID και IS να υπάρχουν 7 Register Files ώστε να περιμένουν όλες αυτές οι εντολές που έχουν ολοκληρώσει το ID (κάτι που αναιρεί όλη τη προηγούμενη λογική της εκτέλεσης). Μήπως θα ήταν πιο σωστό, όταν το στάδιο IS μίας εντολής δε μπορεί να ολοκληρωθεί, να περιμένουν και όλα τα προηγούμενα στάδια; Έχω καταλάβει κάτι λάθος;

_________________________________________________________________
Windows LiveT: Keep your life in sync. Check it out!
http://windowslive.com/explore?ocid=TXT_TAGLM_WL_t1_allup_explore_012009
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cslab.ece.ntua.gr/pipermail/advcomparch/attachments/20090701/605513a0/attachment.htm>


More information about the Advcomparch mailing list