Claims
- 1. A method for manipulating data from a processor on a stack memory, the method comprising:aligning a stack pointer in said stack memory to a first memory address in said stack memory; incrementing said stack pointer to a second memory address to create an empty memory address in said stack memory; saving data from at least one register into said stack memory at said second memory address indicated by said stack pointer; performing processor operations; restoring data from said stack memory into said at least one register after completion of said processor operations; decrementing said stack pointer from said second memory location to said first memory location wherein said empty memory address in said stack memory is removed; aligning said stack pointer to a new memory address when said stack pointer indicates only an odd address after said saving step is complete; and unaligning said stack pointer from said new memory address to said odd address.
- 2. The method of claim 1, wherein said performing step includes performing processor operations on said stack memory.
- 3. The method of claim 1, wherein said new memory address is a next even address above said odd address.
- 4. The method of claim 1, wherein said aligning step includes setting a stack pointer align bit, wherein said stack pointer bit is equal to one when said stack pointer indicates said odd address.
- 5. The method of claim 4, wherein said unaligning step is executed when said stack pointer align bit is equal to one.
- 6. The method of claim 4, wherein said stack pointer align bit is saved with said data on at least one register in said saving step.
- 7. The method of claim 1, wherein said incrementing step is executed in response to an interrupt signal from said processor.
- 8. The method of claim 1, wherein said performing step further comprises aligning said stack pointer to an even address during said operations.
- 9. A method for manipulating data from a processor on a stack memory, the method comprising the steps of:aligning a stack pointer in said stack memory to a first memory address in said stack memory; incrementing said stack pointer to a second memory address to create an empty memory address in said stack memory; saving data from at least one register into said stack memory at said second memory address, indicated by said stack pointer; aligning said stack pointer to a next even address and setting a stack pointer align bit on said at least one register equal to one when said stack pointer indicates only an odd address after said saving step is complete; performing processor operations; unaligning said stack pointer from said next even address to said odd address when said second aligning step is executed and said stack pointer align bit is equal to one; restoring data from said stack memory into said at least one register after completion of said processor operations; and decrementing said stack pointer from said second memory address to said first memory address and removing said empty memory address in said stack memory.
- 10. The method of claim 9, wherein said stack pointer align bit is saved in said saving step.
- 11. The method of claim 9, wherein said data is 32-bit words.
- 12. The method of claim 9, wherein said first aligning step aligns said stack pointer to a next empty location in said stack memory.
- 13. The method of claim 9, said saving step comprising:writing said data in said at least one register into said stack memory.
- 14. The method of claim 9, said restoring step comprising:reading said data from stack memory into said at least one register.
Parent Case Info
This application claims benefit of Provisional Appln. 60/078,699 filed Mar. 20, 1998.
US Referenced Citations (8)
Number |
Name |
Date |
Kind |
3889243 |
Drimak |
Jun 1975 |
A |
4419726 |
Weidner |
Dec 1983 |
A |
5335332 |
Christopher, Jr. et al. |
Aug 1994 |
A |
5396624 |
Campbell, Jr. |
Mar 1995 |
A |
5687336 |
Shen et al. |
Nov 1997 |
A |
5761491 |
Circello et al. |
Jun 1998 |
A |
6070010 |
Keenleyside et al. |
May 2000 |
A |
6085307 |
Evoy et al. |
Jul 2000 |
A |
Non-Patent Literature Citations (1)
Entry |
Langdon, Jr., “Computer Design” 1982, pp. 103-106 and 115-118. |
Provisional Applications (1)
|
Number |
Date |
Country |
|
60/078699 |
Mar 1998 |
US |