簡易檢索 / 詳目顯示

研究生: 徐偉哲
Wei-Che Hsu
論文名稱: 浮動累加器架構
Floating Accumulator Architecture
指導教授: 黃元欣
Yuan-Shin Hwang
口試委員: 謝仁偉
Jen-Wei Hsieh
黃冠寰
Gwan-Hwan Hwang
學位類別: 碩士
Master
系所名稱: 電資學院 - 資訊工程系
Department of Computer Science and Information Engineering
論文出版年: 2014
畢業學年度: 103
語文別: 中文
論文頁數: 50
中文關鍵詞: 編譯器暫存器架構
外文關鍵詞: compiler, register, architecture
相關次數: 點閱:187下載:7
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報

我們創造出一種新穎的暫存器架構,結合累加器以及暫存器的優點,可有效提升暫存器數目且不需增加編碼空間,使得編譯器或程式設計師可以使用更多的暫存器來提高程式的效率。


This paper presents a new ISA called floating accumulator architecture (FAA) that can expand the number of ISA registers without increasing the instruction length. Unlike the accumulator architecture whose accumulator is a fixed, special register, FAA dynamically chooses a register from the general-purpose register file as the accumulator. Since the accumulator implicitly stores the result, the destination register field can be omitted from FAA instructions, resulting in a saving of 3 to 5 bits for each instruction.

論文摘要 誌謝 目錄 第一章 序論 1.1 研究背景 1.2 研究動機 1.3 研究目的 1.4 研究方法 1.5 論文架構 第二章 文獻回顧 2.1 微處理器硬體架構 2.2 增加暫存器數目相關 2.2.1 切換暫存器空間(Change Register Bank) 2.2.2 犧牲條件執行指令(Trading conditional execution) 2.2.3 指令編碼方式 第三章 方法 3.1 概念 3.1.1浮動累加器架構 3.1.2浮動暫存器語意 3.1.3浮動暫存器範例 3.2 編譯器(LLVM) 3.2.1 編譯器最佳化 Pass 3.3 組譯器(Assembler) 3.3.1 修正演算法 3.3.2 最佳化演算法 3.4 模擬器(Simplescalar) 第四章 實驗結果 4.1 實驗平台 4.2 效能評估 第五章 結論 5.1 結論 5.2 未來展望 參考文獻

[1] John Bunda, Donald Fussell, Roy Jenevein, and W. Athas. 16-bit vs. 32-bit instructions for
pipelined microprocessors. In Proceedings of the 20th Annual International Symposium of
Computer Architecture, pages 237–246, 1993.
[2] Harvey G. Cragon. Computer Architecture and Implementation. Cambridge University Press,
2000.
[3] Ashok Halambi, Aviral Shrivastava, Partha Biswasand Nikil Dutt, and Alex Nicolau. A design
space exploration framework for reduced bit-width instruction set architecture (rISA) design.
In Proceedings of the 15th international symposium on System Synthesis, pages 120 – 125,
2002.
[4] John L. Hennessy and David A. Patterson. Computer Architecture: A Quantative Approach.
Morgan Kaufmann, 3rd edition, 2003.
[5] Ho-Seop Kim and James E. Smith. An instruction set and microarchitecture for instruction
level distributed processing. In Proceedings of the 29th Annual International Symposium on
Computer Architecture (ISCA.02), pages 71–81, 2002.
[6] Arvind Krishnaswamy and Rajiv Gupta. Efficient use of invisible registers in thumb code. In
Proceedings of the 38th annual IEEE/ACM International Symposium on Microarchitecture,
pages 30–42, 2005.
[7] MIPS Technologies. MIPS32 Architecture for Programmers Volume IV-a: The MIPS16 Appli-
cation Specific Extension to the MIPS32 Architecture, 2001.
[8] David A. Patternson and John L. Hennessy. Computer Organization and Design: The Hard-
ware/Software Interface. Morgan Kaufmann, 3rd edition, 2005.
[9] Andrew Sloss, Dominic Symes, and Chris Wright. ARM System Developer’s Guide: Design-
ing and Optimizing System Software. Morgan Kaufmann, 2004.
[10] Increasing the Number of Effective Registers in a Low-Power Processor Using a Windowed
Register File. Rajiv a. ravindran and robert m. senger and eric d. marsman and ganesh s. dasika
and matthew r. guthaus and scott a. mahlke and richard b. brown. In Proceedings of the 2003
International Conference on Compilers, Architecture, and Synthesis for Embedded Systems,
pages 125–136, 2003.
[11] D. Weaver and T. Germond. The SPARC Architecture Manual. SPARC International, Inc.,
1994.
[12] Xiaotong Zhuang and Santosh Pande. Differential register allocation. In Proceedings of the
2005 ACM SIGPLAN Conference on Programming Language Design and Implementation,
pages 168–179, 2005.
[13] Xiaotong Zhuang, Tao Zhang, and Santosh Pande. Hardware-managed register allocation for
embedded processors. In Proceedings of the 2004 ACM SIGPLAN/SIGBED conference on
Languages, compilers, and tools for embedded systems, pages 192–201, 2004.

QR CODE