节点文献

一种支持多重循环软件流水的寄存器结构

A Novel Register File Structure Supporting for Software Pipelining of Nested Loops

  • 推荐 CAJ下载
  • PDF下载
  • 不支持迅雷等下载工具,请取消加速工具后下载。

【作者】 容红波汤志忠

【Author】 RONG Hong bo TANG Zhi zhong(Department of Computer Science and Technology Tsinghua University Beijing 100084)

【机构】 清华大学计算机科学与技术系!北京100084

【摘要】 寄存器结构及其分配是软件流水算法的关键之一 .为支持多重循环的软件流水 ,该文提出一种新颖的寄存器结构 :半共享跳跃式流水寄存器堆 .它可以有效地解决多重循环软件流水下的特殊问题 ,即 :同层次和跨层次的寄存器重命名问题以及断流问题 ;有效地消除外层循环的体间读写相关 ,提高程序的指令级并行度 .它有 3种分配方式可供灵活使用 :单个寄存器、流水寄存器和寄存器组方式 .流水寄存器方式对生存期确定的、局限于一个循环层次的寄存器重命名问题提供简单而有效的支持 .寄存器组分配方式解决了多重循环软件流水时变量生存期不确定的情况 .跳跃操作为解决断流问题提供了快速数据传送 .工程实践表明 ,这种寄存器堆结构及其分配方式是十分有效的

【Abstract】 The structure and allocation of the register file is a key factor affecting the performance of software pipelining. To support software pipelining of nested loops, a novel register file, partly shared leaping pipeline register file, is presented and its allocation is discussed. The register file effectively addresses the special problems in software pipelining nested loops, i.e., intra and inter level register renaming, and iteration discontinuity. Three allocation styles are designed for flexible application: single, pipeline and groupe register styles. Pipeline registers effectively supports intra level register renaming with deterministic lifetime. A variable, which generally has deterministic lifetime, may have non deterministic lifetime in software pipelining nested loops. Group registers address such a problem. To make a paused iteration continue execution again, a leaping operation provides quick data transmission between registers. The engineering practice has proved the efficiency of the structure and its allocation method.

【基金】 国家自然科学基金!(No.6 97730 2 8)
  • 【文献出处】 软件学报 ,JOURNAL OF SOFTWARE , 编辑部邮箱 ,2000年03期
  • 【分类号】TP332.11
  • 【被引频次】2
  • 【下载频次】75
节点文献中: 

本文链接的文献网络图示:

本文的引文网络