ΔΡΑΣΤΗΡΙΟΤΗΤΑ 1
LW | R1, | 0 ( R2 ) | |
SUB | R4, | R1, | R5 |
AND | R6, | R1, | R7 |
OR | R8, | R1, | R9 |
ΑΠΑΝΤΗΣΗ ΔΡΑΣΤΗΡΙΟΤΗΤΑΣ 1 Η προώθηση δεν μπορεί να αντιμετωπίσει μία καθυστέρηση της εντολής φόρτωσης, όπως φαίνεται στη δραστηριότητα 1. Για να αντιμετωπίσουμε το πρόβλημα αυτό πρέπει να προσθέσουμε κατάλληλο υλικό, το οποίο ονομάζεται κλείδωμα σωλήνωσης.
Το κλείδωμα της σωλήνωσης ανιχνεύει έναν κίνδυνο και καθυστερεί τη σωλήνωση μέχρι να απαλειφθεί ο κίνδυνος αυτός. Έτσι, το κλείδωμα της σωλήνωσης καθυστερεί τη σωλήνωση ξεκινώντας με την εντολή εκείνη, η οποία θέλει να χρησιμοποιήσει τα αποτελέσματα, τα οποία όμως δεν έχει ακόμα παράγει η πηγαία εντολή. Μάλιστα, το κλείδωμα καθυστερεί τη σωλήνωση αρκετά ώστε η πηγαία εντολή να έχει παράγει τα αποτελέσματα. Παράδειγμα Απάντηση:
Υποθέστε ότι το 30% των εντολών είναι εντολές φόρτωσης, και τις μισές φορές, η εντολή που ακολουθεί μία εντολή φόρτωσης εξαρτάται από το αποτέλεσμα της φόρτωσης. Αν αυτός ο κίνδυνος προκαλεί καθυστέρηση ενός κύκλου, πόσο ταχύτερος είναι ο ιδανικά σωληνωμένος υπολογιστής (με CPI= 1), ο οποίος δεν καθυστερεί τη σωλήνωση, από την πραγματική σωλήνωση; Αγνοείστε όποιες καθυστερήσεις δεν είναι καθυστερήσεις σωλήνωσης.
Το CPI για μια εντολή που ακολουθεί μια εντολή φόρτωσης είναι 1.5, αφού προκαλεί καθυστέρηση τις μισές φορές. Επειδή οι εντολές φόρτωσης αποτελούν το 30% του συνόλου, το πραγματικό CPI είναι:
(Εντολές προγράμματος–Εντολές φόρτωσης)*CPIιδανικό + (Εντολές φόρτωσης)*CPI1,5
= (1-0.3)*1+0.3*1.5 =1.15
Ο ιδανικός υπολογιστής θα είναι ταχύτερος κατά τον λόγο των CPIs.
Άρα ο ιδανικός υπολογιστής είναι 1.15 φορές ταχύτερος.
|
|