[CALU] Re: werd mich mal um die stall detection unit kümmern

  • From: Günther Wimpassinger <e0525147@xxxxxxxxxxxxxxxxxxxx>
  • To: calu-ss2010-tuwien@xxxxxxxxxxxxx
  • Date: Sat, 15 May 2010 16:07:20 +0200

Zitat von Martin Elshuber <e9825286@xxxxxxxxxxxxxxxxxxxx>:


frage zu datadependencies:
 grundsätzlich wird die stalldetection unit in etwa so aussehen:

 stall2id=stall2if=stall2ex=stall2wb=emitnop2id=emitnop2ex=0;

 if (id.needs_ra and ex.wb_en=1 and ex.rd=id.ra) or
    (id.needs_rb and ex.wb_en=1 and ex.rd=id.rb) or
    (id.needs_rx and ex.wb_en=1 and ex.rd=id.rx) then
 {
   stall2if=stall2id='1';
   emitnop2id='1';
 }
 ....


 nun die frage:
   die signale "needs_r?" bedeuten, ob der befehl überhaupt das
jeweilige register lesen wird.
   Es macht wenig sinn bei "xor r1,r1,r1; orm r2,r3,1" zu stallen da
orm die 1 als immendiate und nicht als r1 interpretiert.    wohin
würdest du die generierung dieser drei werte geben?
   in meinen augen sollten sie von opdecode generiert werden

Gehört IMHO nach "opdecode". Ob der Inhalt von "rd" überhaupt
verwendet wird, hängt von "wb_en" ab, wenn ich das richtig verstehe.

lg
Günther



Other related posts: