Electrical computers and digital processing systems: processing – Architecture based instruction processing – Stack based computer
Reexamination Certificate
2005-09-27
2005-09-27
Courtenay, III, St. John (Department: 2194)
Electrical computers and digital processing systems: processing
Architecture based instruction processing
Stack based computer
C711S006000, C718S001000
Reexamination Certificate
active
06950923
ABSTRACT:
A memory architecture in accordance with an embodiment of the present invention improves the speed of method invocation. Specifically, method frames of method calls are stored in two different memory circuits. The first memory circuit stores the execution environment of each method call, and the second memory circuit stores parameters, variables or operands of the method calls. In one embodiment the execution environment includes a return program counter, a return frame, a return constant pool, a current method vector, and a current monitor address. In some embodiments, the memory circuits are stacks; therefore, the stack management unit to cache can be used to cache either or both memory circuits. The stack management unit can include a stack cache to accelerate data transfers between a stack-based computing system and the stacks. In one embodiment, the stack management unit includes a stack cache, a dribble manager unit, and a stack control unit. The dribble manager unit includes a fill control unit and a spill control unit. Since the vast majority of memory accesses to the stack occur at or near the top of the stack, the dribble manager unit maintains the top portion of the stack in the stack cache. When the stack-based computing system is popping data off of the stack and a fill condition occurs, the fill control unit transfer data from the stack to the bottom of the stack cache to maintain the top portion of the stack in the stack cache. Typically, a fill condition occurs as the stack cache becomes empty and a spill condition occurs as the stack cache becomes full.
REFERENCES:
patent: 3810117 (1974-05-01), Healey
patent: 3878513 (1975-04-01), Werner
patent: 3889243 (1975-06-01), Drimak
patent: 3924245 (1975-12-01), Eaton et al.
patent: 4268903 (1981-05-01), Miki et al.
patent: 4325118 (1982-04-01), DeVita et al.
patent: 4354232 (1982-10-01), Ryan
patent: 4375678 (1983-03-01), Krebs, Jr.
patent: 4524416 (1985-06-01), Stanley et al.
patent: 4530049 (1985-07-01), Zee
patent: 4600986 (1986-07-01), Scheuneman et al.
patent: 4674032 (1987-06-01), Michaelson
patent: 4761733 (1988-08-01), McCrocklin et al.
patent: 4811208 (1989-03-01), Myers et al.
patent: 4951194 (1990-08-01), Bradley et al.
patent: 5043870 (1991-08-01), Ditzel et al.
patent: 5093777 (1992-03-01), Ryan
patent: 5107457 (1992-04-01), Hayes et al.
patent: 5115500 (1992-05-01), Larsen
patent: 5142635 (1992-08-01), Saini
patent: 5157777 (1992-10-01), Lai et al.
patent: 5210874 (1993-05-01), Karger
patent: 5377339 (1994-12-01), Saito et al.
patent: 5471591 (1995-11-01), Edmondson et al.
patent: 5471602 (1995-11-01), DeLano
patent: 5481684 (1996-01-01), Richter et al.
patent: 5481693 (1996-01-01), Blomgren et al.
patent: 5485572 (1996-01-01), Overley
patent: 5535350 (1996-07-01), Maemura
patent: 5564031 (1996-10-01), Amerson et al.
patent: 5598546 (1997-01-01), Blomgren
patent: 5603006 (1997-02-01), Satake et al.
patent: 5619666 (1997-04-01), Coon et al.
patent: 5630066 (1997-05-01), Gosling
patent: 5634027 (1997-05-01), Saito
patent: 5636362 (1997-06-01), Stone et al.
patent: 5638525 (1997-06-01), Hammond et al.
patent: 5687336 (1997-11-01), Shen et al.
patent: 5761408 (1998-06-01), Kolawa et al.
patent: 5784553 (1998-07-01), Kolawa et al.
patent: 5805918 (1998-09-01), Blomgren et al.
patent: 5925123 (1999-07-01), Tremblay et al.
patent: 6076155 (2000-06-01), Blomgren et al.
patent: 6532531 (2003-03-01), O'Connor et al.
patent: 0 169 565 (1986-01-01), None
patent: 0 199 173 (1986-10-01), None
patent: 0 241 909 (1987-10-01), None
patent: 0 506 021 (1992-09-01), None
patent: 0 709 767 (1996-05-01), None
patent: S62-120542 (1987-06-01), None
patent: S62-232036 (1987-10-01), None
patent: 62-242243 (1987-10-01), None
patent: H4-363704 (1992-12-01), None
patent: 7-281897 (1995-10-01), None
XP000033120, author unknown, “Up Pops A 32Bit Stack Microprocessor”, Electronic Engineering, vol. 61, No. 750, Jun. 1989, p. 79.
XP000042867, Atkinson, R.R., et al., “The Dragon Processor”, Second International Conference on Architectural Support for Programming Languages and Operating Systems, No. 1987, Oct. 5, 1987, pp. 65-69.
XP002032257, Stanley et al., “A Performance Analysis of Automatically Managed Top of Stack Buffers”, 14th Annual International Symposium on Computer Architecture, Jun. 2, 1987, pp. 272-281.
XP000002633, Burnley, P., “CPU Architecture for Realtime VME Systems”, Microprocessors and Microsystems, London, BR, vol. 12, No. 3, Apr. 1988, pp. 153-158.
XP00413173, Lopriore, L., “Line Fetch/Prefetch in a Stack Cache Memory”, Microprocessors and Micorosystems, vol. 17, No. 9, Nov. 1, 1993, pp. 547-555.
Microsoft Press Computer Dictionary, 2nd Ed., 1994, p. 279.
XP002030199, Moser, C. W., Jr., “Increasing an Instruction Set Without Increasing Word Length”, Electronics, vol. 48, No. 3, Feb. 6, 1975, pp. 114-115.
XP000616964, Heuser, L. et al., “Language Constructs to Express Distribution of Object-oriented Applications”, Technology of Object Oriented Languages & Systems Processings of the International Conference, Nov. 13, 1989, pp. 355-361.
XP000566684, Grogono, P., “Comments, Assertions, and Pragmas”, SIGPLAN Notices, vol. 24, No. 3, Mar. 1, 1989, pp. 79-84.
XP000023134, “System/370 Emulator Assist Processor For a Reduced Instruction Set Computer”, IBM Technical Disclosure Bulletin, vol. 30, No. 10, Mar. 1988, pp. 308-309.
XP000570180, van Hoff, A., “Java and Internet Programming”, Dr. Dobbs Journal, vol. 20, No. 8, Aug. 1, 1995, pp. 56, 58, 60-61, 101-102.
XP002037753, Jensen, K. and Wirth, N., “PASCAL User Manual and Report,” Springer-Verlag, N.Y., U.S., 1975, pp. 100-103.
Bakewell, H., Quammen, D. and Wang, P., “Mapping Concurrent Programs to VLIW Processors”, Association for Computing Machinery, 1991, pp. 21-27.
“Pecan On UNIX” (Pecan's Pascal compiler) (product announcement), EXE. vol. 4, No. 11, May 1990, p. 8.
Takaaki, Higuchi, “Java and HotJava Extending WWW Functions”, Nikkei Bite, vol. 144, Nikkei Business Pub. Inc., Nov. 1, 1995, pp. 256-269.
O'Connor James Michael
Tremblay Marc
Courtenay III St. John
Gunnison McKay & Hodgson, L.L.P.
Sun Microsystems Inc.
LandOfFree
Method frame storage using multiple memory circuits does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method frame storage using multiple memory circuits, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method frame storage using multiple memory circuits will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3422858