Microprogramming and its relationship to emulation and technology

This paper is a survey of the development and future trends in microprogramming. We show how the structure of microprogrammed processors has been shaped primarily by two factors: the state of (semiconductor) technology and the task of emulation. The other main theme of this article is that it is a fruitless exercise to try to characterize and understand microprogramming in terms of how it differs from 'regular' programming. The right approach to understanding microprogramming is to recognize that it is primarily applied to the task of emulation (interpretation). Through this approach the evolution of microprogramming, independent of a particular technology and type of instruction set being emulated, is reviewed and future trends indicated.