|
ABSTRACT
A new instruction fetch method, forward semantic, is offered to enable the deeply pipelined processors to fetch one useful instruction every cycle. Forward semantic is an improved alternative to the delayed branching (with or without squashing), with five major advantages. Fist, no restriction is imposed on the type of instructions filling the branch slots, which allows a large number of slots to be filled. Second, no modification to the offsets and displacements is necessary when an instruction is copied to fill a branch slot, which simplifies the linker implementation. Third, an interrupted program can resume execution with a single program counter, eliminating the need for reloading the instruction pipeline before resuming execution. Fourth, programs compiled with N slots can execute on pipelines requiring K (K ≤ N) slots, which makes family architecture compatibility possible . Lastly, the filling of branch slots is totally transparent to code compaction and software interlocking schemes. These advantages combine to provide an efficient instruction fetch mechanism and to eliminate artificial penalties on branch cost. At the cost of 11% static code expansion, forward semantic achieves an instruction fetch cost of 1.2 cycles for pipelines requiring 10 slots for each taken branch. This level of instruction fetch efficiency has never been achieved before with conventional instruction fetch methods. The branch cost is dictated by the accuracy of the compile-time branch prediction rather than artificial limitations, such as data dependencies, which prevent the slots from being filled. These results are measured from the execution of real UNIX and CAD programs with complex control structures.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
P. M. Kogge, The Architecture of Pipelined Computers, pp. 237-243, McGraw-Hill, 1981.
|
| |
2
|
|
| |
3
|
J. K. F. Lee and A. J. Smith, "Branch Prediction Strategies and Branch Target Buffer Design,' IEEE Computer, January 1984.
|
| |
4
|
J. A. DeRosa and H. M. Levy, "An Evaluation of Branch Architectures,' Proceedings of the 15th International Symposium on Computer Architecture, Honolulu, Hawaii, May 30 -June 2,1988.
|
 |
5
|
|
 |
6
|
|
 |
7
|
|
 |
8
|
|
| |
9
|
D. A. Patterson and C. H. Sequin, "A VLSI RISC,' IEEE Computer, pp. 8 - 21, September, 1982.
|
| |
10
|
J. L. Hennessy , N. Jouppi, F. Baskett, and J. Gill, "MIPS: A VLSI Processor Architecture,' Proceedings of the CMU Conference on VLSI Systems and Computations, October 1981.
|
| |
11
|
J. S. Bimbaum and W. S. Worley, "Beyond RISC: High Precision Architecture,' Spring COMPCON, p. 40.1986.
|
 |
12
|
|
| |
13
|
Mark Hill , Susan Eggers , Jim Larus , George Taylor , Glenn Adams , B. K. Bose , Garth Gibson , Paul Hansen , Jon Keller , Shing Kong , Corinna Lee , Daebum Lee , Joan Pendleton , Scott Ritchie , David Wood , Ben Zorn , Paul Hilfinger , Dave Hodges , Randy Katz , John Ousterhout , Dave Patterson, Design decisions in SPUR, Computer, v.19 n.11, p.8-22, Nov. 1986
[doi> 10.1109/MC.1986.1663096]
|
 |
14
|
|
| |
15
|
G. Kane, MIPS R2000 RISC Architecture, Prentice Hall, Englewood Cliffs, NJ, 1987.
|
| |
16
|
|
 |
17
|
|
 |
18
|
|
 |
19
|
|
| |
20
|
S. Weiss and J. E. Smith, "Instruction Issue Logic in Pipelined Supercomputers," IEEE Transactions on Computers, vol. C-33, pp. 1013--1022, IEEE, November 1984.
|
 |
21
|
Y. N. Patt , W. M. Hwu , M. Shebanow, HPS, a new microarchitecture: rationale and introduction, Proceedings of the 18th annual workshop on Microprogramming, p.103-108, December 03-06, 1985, Pacific Grove, California, United States
|
| |
22
|
|
| |
23
|
|
| |
24
|
R. M. Tomasulo, "An Efficient Algorithm for Exploiting Multiple Arithmetic Units," IBM Journal of Research and Development, vol. 11, pp. 25-33, January 1967.
|
| |
25
|
|
| |
26
|
|
CITED BY 5
|
|
J. M. Mulder , R. J. Portier , A. Srivastava, A framework for high-speed controller design, Proceedings of the 23rd annual workshop and symposium on Microprogramming and microarchitecture, p.90-96, November 27-29, 1990, Orlando, Florida, United States
|
|
|
|
|
|
Pohua P. Chang , Scott A. Mahlke , William Y. Chen , Nancy J. Warter , Wen-mei W. Hwu, IMPACT: an architectural framework for multiple-instruction-issue processors, 25 years of the international symposia on Computer architecture (selected papers), p.408-417, June 27-July 02, 1998, Barcelona, Spain
|
|
|
|
|
|
|
|