Forward semantic: a compiler-assisted instruction fetch method for heavily pipelined processors

Author:

Chang P.-H.1,Hwu W.-M. W.1

Affiliation:

1. Coordinated Science Laboratory, University of Illinois, 1101 W. Springfield Ave., Urbana, IL

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.

Publisher

Association for Computing Machinery (ACM)

Reference26 articles.

1. P. M. Kogge The Architecture of Pipelined Computers pp. 237-243 McGraw-Hill 1981.]] P. M. Kogge The Architecture of Pipelined Computers pp. 237-243 McGraw-Hill 1981.]]

2. J. K. F. Lee and A. J. Smith "Branch Prediction Strategies and Branch Target Buffer Design ' IEEE Computer January 1984.]] J. K. F. Lee and A. J. Smith "Branch Prediction Strategies and Branch Target Buffer Design ' IEEE Computer January 1984.]]

3. 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.]] 10.1145/30350.30352 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.]] 10.1145/30350.30352

4. Reducing the Cost of Branches;McFarling S.;The 13th International Symposium on Computer Architecture Conference Proceedings,1986

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3