Μια εντολή j είναι εξαρτώμενη, όσον αφορά τα δεδομένα (data dependent), από μία εντολή i αν ισχύει μία από τις ακόλουθες συνθήκες:
Η δεύτερη συνθήκη δηλώνει ότι μία εντολή εξαρτάται από μία άλλη, αν υπάρχει μεταξύ τους μία 'αλυσίδα' από εξαρτήσεις δεδομένων. Πιθανόν η αλυσίδα δεδομένων να είναι τόσο μεγάλη, όσο και ολόκληρο το πρόγραμμα.
ΔΡΑΣΤΗΡΙΟΤΗΤΑ 1
ΔΡΑΣΤΗΡΙΟΤΗΤΑ 2
ΑΠΑΝΤΗΣΗ ΔΡΑΣΤΗΡΙΟΤΗΤΑΣ 2
Εκτελώντας αυτές τις εντολές ταυτόχρονα σε έναν επεξεργαστή με κλείδωμα σωλήνωσης, αυτός εντοπίζει κινδύνους και καθυστερήσεις, μειώνοντας ή εξαλείφοντας έτσι, την επικάλυψη των εντολών. Ένας επεξεργαστής χωρίς κλείδωμα σωλήνωσης βασίζεται στο προγραμματισμό ενός μεταγλωττιστή. Όμως, ο μεταγλωττιστής δεν μπορεί να προγραμματίσει εξαρτώμενες εντολές ώστε να έχουμε πλήρη επικάλυψη.
Η σπουδαιότητα της εξάρτησης δεδομένων συνίσταται στο γεγονός ότι η εξάρτηση:
ΔΡΑΣΤΗΡΙΟΤΗΤΑ 3
ΑΠΑΝΤΗΣΗ ΔΡΑΣΤΗΡΙΟΤΗΤΑΣ 3
Παράδειγμα 2o
ΔΡΑΣΤΗΡΙΟΤΗΤΑ 4
ΔΡΑΣΤΗΡΙΟΤΗΤΑ 5
![]() |
![]() |
![]() |
![]() |
![]() |