Achieving minimal and deterministic interrupt execution in stack-based processor architectures

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Whilst stack-processors have enjoyed a renewed interest since the emergence of JAVA technology, stack-processors suffer from a major bottleneck - the constant movement of stack content to and from memory (stack-spilling). With 70% to 80% of instructions generating a stack-spill (see introduction), performance can be significantly diminished in the absence of a cache. In order to overcome this problem, very small and simple 'stack buffers' may be used to eliminate virtually all stack-spills for very little cost in silicon. Unfortunately this introduces an indeterministic element of system behaviour, especially with respect to interrupts.

In this paper the positive benefits of stack-buffers are assessed, as well as the penalties introduced in terms of interrupt performance in a stack-based architecture. Then a new mechanism for managing interrupt conditions with stack buffers, "stack buffer windowing" is presented. This is shown to deliver deterministic interrupt response whilst maintaining the reduced stack-spill overheads associated with normal buffering schemes.

Original languageEnglish
Title of host publicationPROCEEDINGS OF THE 26TH EUROMICRO CONFERENCE, VOLS I AND II
EditorsF Vajda
Place of PublicationLOS ALAMITOS
PublisherIEEE Computer Society
Pages368-375
Number of pages8
ISBN (Print)0-7695-0781-6
Publication statusPublished - 2000
Event26th Euromicro Conference - MAASTRICHT
Duration: 5 Sept 20007 Sept 2000

Conference

Conference26th Euromicro Conference
CityMAASTRICHT
Period5/09/007/09/00

Cite this