[CALU] Re: decode stage: call/ret

  • From: Benedikt Huber <benedikt@xxxxxxxxxxxxxxxxxx>
  • To: calu-ss2010-tuwien@xxxxxxxxxxxxx
  • Date: Mon, 17 May 2010 07:42:34 +0200

On 17.05.2010, at 06:56, Günther Wimpassinger wrote:
Zitat von Benedikt Huber <benedikt@xxxxxxxxxxxxxxxxxx>:

Hi Martin,
frage zu call/ret in der Decode Stage:
>  type stack_sel_type is (STACK_ALU, STACK_PRED)
a) Beim call sollte es doch STACK_ALU (als Z + immediate/ret_addr) und nicht STACK_PRED sein, oder? Hab ich jetzt mal geaendert. b) Ich verstehe, dass bei ireturn eigentlich auch die predicates gepopped werden sollen, aber mit der aktuellen Architektur geht das so nicht, oder?
Ein Interrupt oder ein Call ist es so, dass an einer Stackposition
sowohl die Predicates als auch die Returnadresse gespeichert werden.
Darum sieht der Input/Output vom Stack auch relativ komplex im
Blockdiagramm aus.
Im Blockdiagramm sieht es so aus, alsu wuerden entweder die Predicates or das Immediate als Input fuer den Stack ausgewaehlt (der mux mit Kontrolleitung stack-sel). Und auch in der Implementierung scheint es so zu sein (bis jetzt). Fall es quasi auch einen stack_sel_type 'STACK_BOTH' gibt, gehen sich zwei Woerter aus in einem Taktzyzklus?
lg, benedikt


Other related posts: