© 2000 Scenix Semiconductor, Inc. All rights reserved. - 33 - www.scenix.com SX18AC/SX20AC/SX28AC/SX18AC75/SX20AC75/SX28AC75 15.12    Subroutine Operation 15.12.1  Push Operation
When   a   subroutine   is   called,   the   return   address   is
pushed   onto   the   subroutine   stack.   Specifically,   each
address in the stack is moved to the next lower level in
order  to  make  room  for  the  new  address  to  be  stored.
Stack  1  receives  the  contents  of  the  program  counter.
Stack 8 is overwritten with what was in Stack 7. The con-
tents of stack 8 are lost.
15.12.2  Pop Operation
When  a  return  instruction  is  executed  the  subroutine
stack is popped. Specifically, the contents of Stack 1 are
copied into the program counter and the contents of each
stack level are moved to the next higher level. For exam-
ple, Stack 1 receives the contents of Stack 2, etc., until
Stack 7 is overwritten with the contents of Stack 8. Stack
8 is left unchanged, so the contents of Stack 8 are dupli-
cated in Stack 7.
PC<10:0> STACK 1 STACK 2 STACK 3 STACK 4 STACK 5 STACK 6 STACK 7 STACK 8 PC<10:0> STACK 1 STACK 2 STACK 3 STACK 4 STACK 5 STACK 6 STACK 7 STACK 8