Hallo ,
ich habe noch nicht ganz den Pipeline kapiert.
und zwar nehmen wir an so ne aufgabe:
s sind die Befehlen
s1 jump s3
s2 load 100 R4
s3 Load R1
s4 load 300 R2
s5 mul R1R2 R1
s6 add R1R2 R2
Was soll ich zuerst machen?
ich gehe so vor.
1 datenabhängigkeiten herausfinden ( truedipendence, antidip. ,outputdepence) (wozu dient es überhaupt ? also sie helfen mir nicht , um den anzahl der nops zu definieren . oder?)
2 5stufige tabelle machen
fetch - decode operande holen execute save
s1
s2 s1
.......
dann mit dieser tabelle muss man vor alllem die die execute und operande holen phasen schauen und sehen ob konflikten auftreten.
wenn ja nops einfügen.
meine frage ist : geht es irgendwie auch ohne die Tabelle zu machen und dementsprechend schneller?
Wie kann man z.B. erkennen, dass nach dem jump müssen 3 nops anstatt 2 nops gestellt werden
danke
3 mal bearbeitet. Zuletzt am 02.03.2010 21:45 von Baldini.