[Advcomparch] Μερικές ερωτήσεις για τη L.D

Μιχάλης Βήχος m_vichos at hotmail.com
Wed Jun 24 00:06:54 EEST 2009


Έστω οι ακόλουθες εκτελέσεις εντολών (από την άσκηση).

DADDI R1,R1,#16
BNEZ R1,foo ;Η διακλάδωση έχει προβλεφθεί TAKEN
L.D F2,0(R1) 

Αν δεν κάνω λάθος, τη στιγμή που που η DADDI είναι σε στάδιο WB γίνεται ISSUE η L.D. Η τελική τιμή της R1 δεν είναι ακόμα γνωστή. Προφανώς η L.D θα πρέπει να περιμένει για 1 κύκλο. Λέω κάτι λάθος? 
Τι θα πρέπει να μπει στο πεδίο ADDRESS του RS Load(x)? Θα πρέπει να το αφήσω κενό και
να το συμπληρώσω στον επόμενο κύκλο όπου η R1 θα έχει υπολογιστεί? Θα μπορούσα να βάλω κάτι τις μορφής Μ[0+Int1] (Int1 είναι ο RS που έχει δεσμέυση η DADDI)?

Και κάτι ακόμα...

Οι RS των εντολών MUL.D, DADDI κτλ. έχουν τα πεδία Qj και Qk που κρατούν τα ονόματα των RS από τα οποία περιμένω αποτέλεσμα. Αν αυτά τα πεδία είναι κενά έχω έτοιμα τα δεδομένα και επομένως μπορώ να συνεχίσω την εκτέλεση. Υπάρχει κάποιο ανάλογο πεδίο για τους RS των εντολών L.D? Χωρίς ένα ανάλογο πεδίο πως θα ξέρω ποιον RS θα περιμένω να ελευθερωθεί για να συνεχίσω την εκτέλεση μίας L.D?

 

Ζητώ συγγνώμη αν οι απαντήσεις στα ερωτήματα μου βρίσκονται κάπου στο βιβλίο ή στις διαφάνειες. Μέχρι τώρα δεν μπόρεσα να βρώ κάτι.

_________________________________________________________________
Invite your mail contacts to join your friends list with Windows Live Spaces. It's easy!
http://spaces.live.com/spacesapi.aspx?wx_action=create&wx_url=/friends.aspx&mkt=en-us
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cslab.ece.ntua.gr/pipermail/advcomparch/attachments/20090624/49052306/attachment.htm>


More information about the Advcomparch mailing list