Blatt 14, Aufgabe 3
10.02.2010 16:02:05
In der Aufgabe steht, es geht um die ALU des ReTI, allerdings steht auch da, dass die ALU die Codierung von Kap. 10,2 verwendet.

Das widerspricht sich ein bisschen oder? die ALU des ReTI ist doch nicht die ALU der besagten Folie, denn die ReTI ALU ist ja mächtiger, die kann ja noch die bedingten Jump-Befehle berechnen, was die ALU auf der Folie offenkundig nicht kann.
Re: Blatt 14, Aufgabe 3
10.02.2010 17:14:31
Nein, die ReTI-ALU soll exakt die ALU sein (bzw. exakt den gleichen Funktionsumfang haben) wie die ALU in Kap. 10.2 und damit hat sie auch die gleichen Funktionseingänge (okok... in Kap. 10.2 heißen sie "s" und bei der ReTI "f", aber es sind die gleichen gemeint)

Nun hast du aber natürlich die große ReTI-Verschwörung aufgedeckt (Mist): wir haben gar nicht erwähnt, wie die unbedingten Sprünge ausgewertet werden, bzw. die Conditions.
Angedeutet wird das in Kapitel 13.2, Folie 12. Der gesamte Inhalt des Akkumulators (ACC[31:0]) wird an die PALs geschickt, die die Kontrollsignale berechnen. Die Sprungbedingungen werden also über PALs getestet. Inwieweit das geschickt/effizient/whatever ist, sei mal dahingestellt.

Wiedemauchsei: Die ALU in der ReTI kann nicht mehr - insbesondere kann sie keine Sprungbefehle auswerten, das passiert in den PALs.
Wenn überhaupt macht die ALU in Kap. 10.2 mehr als die ReTI... immerhin wäre sie theoretisch in der Lage 000...0 oder 111...1 auszugeben, was in der Programmcodierung der ReTI nicht vorgesehen ist. (für den spitzfindigen Magmaster: auf diese Art und Weise könnte man natürlich auch eine 111...1 schnell in ein Register speichern, aber auch hier: es ist kein Befehl "lege ALU auf 111...1" vorgesehen, auch wenn man ihn theoretisch anwenden könnte)