DocumentCode
1084183
Title
The microarchitecture of superscalar processors
Author
Smith, James E. ; Sohi, Gurindar S.
Author_Institution
Dept. of Electr. & Comput. Eng., Wisconsin Univ., Madison, WI, USA
Volume
83
Issue
12
fYear
1995
fDate
12/1/1995 12:00:00 AM
Firstpage
1609
Lastpage
1624
Abstract
Superscalar processing is the latest in along series of innovations aimed at producing ever-faster microprocessors. By exploiting instruction-level parallelism, superscalar processors are capable of executing more than one instruction in a clock cycle. This paper discusses the microarchitecture of superscalar processors. We begin with a discussion of the general problem solved by superscalar processors: converting an ostensibly sequential program into a more parallel one. The principles underlying this process, and the constraints that must be met, are discussed. The paper then provides a description of the specific implementation techniques used in the important phases of superscalar processing. The major phases include: (1) instruction fetching and conditional branch processing, (2) the determination of data dependences involving register values, (3) the initiation, or issuing, of instructions for parallel execution, (4) the communication of data values through memory via loads and stores, and (5) committing the process state in correct order so that precise interrupts can be supported. Examples of recent superscalar microprocessors, the MIPS R10000, the DEC 21164, and the AMD K5 are used to illustrate a variety of superscalar methods
Keywords
microprocessor chips; parallel architectures; parallel machines; parallel programming; reviews; AMD K5; DEC 21164; MIPS R10000; conditional branch processing; data dependences; instruction fetching; instruction-level parallelism; interrupts; microarchitecture; microprocessors; register values; superscalar processors; Clocks; Dynamic scheduling; Microarchitecture; Microprocessors; Parallel processing; Pipeline processing; Processor scheduling; Reduced instruction set computing; Registers; Technological innovation;
fLanguage
English
Journal_Title
Proceedings of the IEEE
Publisher
ieee
ISSN
0018-9219
Type
jour
DOI
10.1109/5.476078
Filename
476078
Link To Document