Κεφάλαιο 1 | Ενότητα5 | Ερωτήσεις επισκόπησης | Επόμενο| Λεξικό όρων

Κλείδωμα της σωλήνωσης

ΔΡΑΣΤΗΡΙΟΤΗΤΑ 1

Έστω το παρακάτω τμήμα κώδικα ακολουθίας εντολών:

LW R1, 0 ( R2 )
SUB R4, R1, R5
AND R6, R1, R7
OR R8, R1, R9


· Μπορείτε να σχεδιάσετε τη δίοδο δεδομένων της σωλήνωσης με προώθηση, για την εκτέλεση των εντολών; Αν όχι, να μελετήσετε την ενότητα 4 «Κίνδυνοι δεδομένων».
· Να προσδιορίσετε τα σημεία στα οποία μπορεί να παρουσιαστεί κίνδυνος δεδομένων.
· Θεωρείτε πως οι κίνδυνοι που προκύπτουν μπορούν να αντιμετωπιστούν με την τεχνική της προώθησης;

 

ΑΠΑΝΤΗΣΗ ΔΡΑΣΤΗΡΙΟΤΗΤΑΣ 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 φορές ταχύτερος.