[Advcomparch] Απορία για Commit εντολών και Reorder Buffer

Konstantinos Nikas knikas at cslab.ece.ntua.gr
Sat May 25 22:15:52 EEST 2013


Κι όμως ακριβώς για αυτό το λόγο το γίνεται issue στον 8o. Πιο συγκεκριμένα:

Η εντολή LD που αναφέρεις είναι η 5η εντολή και αφού ο ROB έχει 6 θέσεις
υπάρχει κενή θέση για να γίνει issue στον κύκλο 5. Δεν γίνεται όμως λόγω
structural hazard, μιας και δεν υπάρχει κενή θέση στο Load Queue (έχουν
καταληφθεί από τις 2 προηγούμενες LD).

Στον κύκλο 7 η πρώτη LD κάνει WR. Tο οποίο σημαίνει ότι γράφει το
αποτέλεσμα της στον ROB και αδειάζει και το reservation station της, δηλαδή
τη θέση που καταλαμβάνει στο Load queue. Επομένως, στον κύκλο 8 δεν υπάρχει
πλέον structural hazard και η επόμενη LD μπορεί να γίνει κανονικά issue.

K.


2013/5/25 Orestis Vasios <el08197 at mail.ntua.gr>

> Καλησπέρα,
>
> Με αφορμή αυτή την απάντηση, στις λύσεις των θεμάτων Ιουλίου 2012 (
> http://www.cslab.ntua.gr/**courses/advcomparch/2012/**
> files/exams/adv_ca-Jul2012.pdf<http://www.cslab.ntua.gr/courses/advcomparch/2012/files/exams/adv_ca-Jul2012.pdf>
> **) δε θα έπρεπε η 5η εντολή (LD F0, 8(R1)) να γίνει issue στον 9ο κύκλο;
> Μέχρι να κάνει commit η 1η εντολή (LD F0, 0(R1)) φτάνουμε στον 8ο κύκλο,
> άρα στον επόμενό του θα δούμε ότι έχουμε κενή θέση στο load queue. Σωστά;
>
> Ευχαριστώ εκ των προτέρων.
> Ορέστης Βάσιος
>
> On Sat, 25 May 2013 12:35:18 +0300, Konstantinos Nikas wrote:
>
>> Καλημέρα,
>>
>> τα κυκλώματα του pipeline είναι σύγχρονα,
>> το οποίο σημαίνει ότι όλα τα στάδια
>> του λειτουργούν σε κάποια (θετική ή
>> αρνητική) ακμή του ρολογιού. Για αυτό
>> το λόγο και ένα στάδιο μπορεί να δει τι
>> αλλαγές που κάνει κάποιο άλλο στάδιο
>> όταν έρθει η επόμενη ακμή του
>> ρολογιού.
>>
>> Επομένως, αν το CMT κάνει reset ένα entry του
>> ROB στον κύκλο n τότε το IS θα δεί ότι
>> είναι άδειο και θα στείλει τη νέα
>> εντολή στο n+1.
>>
>> Κ.
>>
>> 2013/5/23 Christos Sakaridis
>>
>>  Καλησπέρα!
>>>    Θα ήθελα να ρωτήσω κάτι που ίσως
>>> είχε διευκρινιστεί στο αντίστοιχο
>>> μάθημα αλλά δυστυχώς δεν είχα την
>>> ευκαιρία να το παρακολουθήσω.
>>>
>>> Έστω ότι στον κύκλο k ο ROB είναι
>>> πλήρης και η εντολή που αντιστοιχεί
>>> στο entry στο οποίο δείχνει ο commit pointer
>>> κάνει Write Result, οπότε γίνεται ready για
>>> commit. Στον κύκλο k+1, στον οποίο θα γίνει
>>> commit η εντολή και θα αδειάσει αυτό το
>>> entry, θα μπει ταυτόχρονα σε αυτό η
>>> επόμενη προς έκδοση εντολή ή θα
>>> γίνει στον κύκλο k+2 το issue και η
>>> κατάληψη του άδειου entry από τη νέα
>>> εντολή;
>>>
>>> Ευχαριστώ εκ των προτέρων για τον
>>> κόπο σας!
>>>
>>> Χρήστος Σακαρίδης
>>> ______________________________**_________________
>>> Advcomparch mailing list
>>> Advcomparch at lists.cslab.ece.**ntua.gr<Advcomparch at lists.cslab.ece.ntua.gr>[1]
>>> http://lists.cslab.ece.ntua.**gr/mailman/listinfo/**advcomparch<http://lists.cslab.ece.ntua.gr/mailman/listinfo/advcomparch>[2]
>>>
>>
>> --
>> Dr. Konstantinos Nikas
>> Computing Systems Laboratory
>> School of Electrical and Computer Engineering
>> National Technical University of Athens
>>
>> Tel: +30-210-7724159
>>  e-mail: knikas at cslab.ece.ntua.gr [4]
>> http://www.cslab.ece.ntua.gr/~**knikas<http://www.cslab.ece.ntua.gr/~knikas>[5]
>>
>> Links:
>> ------
>> [1] mailto:Advcomparch at lists.**cslab.ece.ntua.gr<Advcomparch at lists.cslab.ece.ntua.gr>
>> [2] http://lists.cslab.ece.ntua.**gr/mailman/listinfo/**advcomparch<http://lists.cslab.ece.ntua.gr/mailman/listinfo/advcomparch>
>> [3] mailto:christos.sakaridis@**yahoo.com <christos.sakaridis at yahoo.com>
>> [4] mailto:knikas at cslab.ece.ntua.**gr <knikas at cslab.ece.ntua.gr>
>> [5] http://www.cslab.ece.ntua.gr/~**knikas<http://www.cslab.ece.ntua.gr/~knikas>
>>
>
> ______________________________**_________________
> Advcomparch mailing list
> Advcomparch at lists.cslab.ece.**ntua.gr<Advcomparch at lists.cslab.ece.ntua.gr>
> http://lists.cslab.ece.ntua.**gr/mailman/listinfo/**advcomparch<http://lists.cslab.ece.ntua.gr/mailman/listinfo/advcomparch>
>



-- 
Dr. Konstantinos Nikas
Computing Systems Laboratory
School of Electrical and Computer Engineering
National Technical University of Athens

Tel: +30-210-7724159
e-mail: knikas at cslab.ece.ntua.gr
http://www.cslab.ece.ntua.gr/~knikas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cslab.ece.ntua.gr/pipermail/advcomparch/attachments/20130525/226f9d25/attachment.htm>


More information about the Advcomparch mailing list