跳到主要內容

臺灣博碩士論文加值系統

(18.97.14.86) 您好!臺灣時間:2025/02/12 11:45
字體大小: 字級放大   字級縮小   預設字形  
回查詢結果 :::

詳目顯示

: 
twitterline
研究生:周錦泰
研究生(外文):Chin-tai Chou
論文名稱:多型於硬體的設計與實作
論文名稱(外文):Design and Implementation of Software Polymorphism in Hardware
指導教授:鄭福炯鄭福炯引用關係
指導教授(外文):Fu-chiung Cheng
學位類別:碩士
校院名稱:大同大學
系所名稱:資訊工程學系(所)
學門:工程學門
學類:電資工程學類
論文種類:學術論文
論文出版年:2006
畢業學年度:94
語文別:英文
論文頁數:100
中文關鍵詞:多型非同步電路自時系統軟硬體共同設計
外文關鍵詞:Asynchronous circuitSelf-timed systemHardware/Software codesignPolymorphism
相關次數:
  • 被引用被引用:0
  • 點閱點閱:220
  • 評分評分:
  • 下載下載:8
  • 收藏至我的研究室書目清單書目收藏:0
製程的進步讓單位面積的電晶體容量成指數的成長。為了解決設計成本與複雜度以指數成長的問題,我們需要更高抽象層次這設計方法。物件導向的設計方法能夠降低設計軟體的複雜度,因此也逐漸受硬體設計者所青睞。多型與物件繼承是物件導向設計方法中的一個很重要的特性。然而在硬體設計領域中,多型與物件繼承卻很少被討論。在本論文中,我們提出了一個將多型與物件繼承實作於硬體的方法。透過IMT (instance method table)與OMU (object management unit),我們可以很容易的將多型與物件繼承整合到軟硬體共同設計的系統中。在我們的實驗中,硬體多型的速度比軟體多型快4.85倍,能量消耗卻只有軟體多型的22.7%。
Small feature size results in exponential increasing of transistor counts in a single chip. To avoid exponential increasing design cost and complexity, design at higher abstraction level must be raised. Object-oriented design methodology helps to decrease design complexity in software and thus is becoming more and more popular in the field of hardware design. Polymorphism and object inheritance are two of the essential features of object-oriented design methodology, however, are rarely discussed in hardware development. In this thesis, we propose a novel approach to implement software object and polymorphism in hardware. With a software/hardware interface with IMT (instance method table) and OMU (object management unit), we show that the object inheritance and polymorphism mechanism can be easily integrated into a hardware/software codesign system. Our experiment shows that hardware polymorphism can obtain a speedup of 4.85 in speed over software one and use only 22.7% of the energy.
ABSTRACT...........................................................................................................................................I
中文摘要................................................................................................................................................II
TABLE OF CONTENTS....................................................................................................................III
LIST OF FIGURES..............................................................................................................................V
LIST OF TABLES.............................................................................................................................VII
CHAPTER 1 INTRODUCTION...........................................................................................................1
CHAPTER 2 BACKGROUND.............................................................................................................3
2.1 RELATED WORKS...........................................................................................................................3
2.2 THE ARCHITECTURE OF JAVA VIRTUAL MACHINE...........................................................................5
2.3 METHOD CALL BINDING.................................................................................................................6
2.3.1 Static Binding........................................................................................................................7
2.3.2 Dynamic Binding...................................................................................................................9
2.4 POLYMORPHISM...........................................................................................................................10
CHAPTER 3 SOCAD OVERVIEW...................................................................................................13
CHAPTER 4 DESIGN OF SOFTWARE POLYMORPHISM IN HARDWARE...........................25
4.1 OBJECT-ORIENTED HARDWARE DESIGN........................................................................................25
4.1.1 Hardware Method Implementation......................................................................................26
4.1.2 Hardware Object Implementation........................................................................................28
4.1.3 Hardware Inheritance Implementation................................................................................30
4.1.3.1 Field Inheritance..........................................................................................................................30
4.1.3.2 Method inheritance......................................................................................................................31
4.1.4 Hardware Polymorphism Implementation...........................................................................32
4.1.4.1 Hardware IPs...............................................................................................................................33
4.1.4.2 Java Stack....................................................................................................................................34
4.1.4.3 Hardware Object Heap.................................................................................................................36
4.1.4.4 Object Management Unit.............................................................................................................36
4.1.4.5 Software/Hardware Interface.......................................................................................................38
4.1.4.6 Extended Bytecodes.....................................................................................................................41
4.2 STATIC METHOD CALL VS. DYNAMIC METHOD CALL...................................................................43
CHAPTER 5 IMPLEMENTATION OF HARDWARE POLYMORPHISM..................................47
5.1 THE IMPLEMENTATION FLOW........................................................................................................47
5.2 COMPILATION FLOW FOR HARDWARE PART...................................................................................48
iv
5.2.1 Analysis phase......................................................................................................................49
5.2.2 Transformation phase..........................................................................................................51
5.2.3 Construction phase..............................................................................................................52
5.2.4 SOCAD Synthesis Phase......................................................................................................55
5.3 COMPILATION FLOW FOR SOFTWARE PART.....................................................................................55
5.3.1 Bytecode Transformer..........................................................................................................55
5.4 EXAMPLE.....................................................................................................................................58
5.4.1 Pure Software System...........................................................................................................59
5.4.2 Hardware software codesign system....................................................................................60
5.4.2.1 Analysis Phase.............................................................................................................................61
5.4.2.2 Transformation phase...................................................................................................................61
5.4.2.3 Construction phase.......................................................................................................................63
5.4.2.4 Synthesis phase...........................................................................................................................64
5.4.2.5 Bytecode transformation..............................................................................................................65
CHAPTER 6 EXPERIMENTAL RESULTS......................................................................................67
6.1 EXPERIMENTAL RESULTS OF HARDWARE METHODS VS. SOFTWARE METHODS...............................68
6.2 EXPERIMENTAL RESULTS OF CODESIGN VS. SOFTWARE SYSTEMS..................................................70
CHAPTER 7 CONCLUSIONS AND FUTURE WORK...................................................................73
BIBLIOGRAPHY...............................................................................................................................75
APPENDIX A. JAVA ENCRYPTION/DECRYPTION EXAMPLE................................................79
APPENDIX B. IMPLEMENTATION OF HARDWARE POLYMORPHISM...............................81
APPENDIX C. JAVA BYTECODES...................................................................................................97
[1]International Technology Roadmap for Semiconductors (ITRS) Desgin, 2001
[2]Victor R. Basili , Lionel C. Briand , Walcélio L. Melo, How reuse influences productivity in object-oriented systems, Communications of the ACM, v.39 n.10, p.104-116, October 1996
[3]M. Goudarzi, The ODYSSEY Methodology: ASIP-Based Design of Embedded Systems from Object-Oriented System-Level Models, Ph.D. thesis, Sharif University of Technology, 2005
[4]ODETTE Project: Object-Oriented co-Design and functional Test Techniques, http://odette.offis.de , 2004
[5]M. Goudarzi, S. Hessabi, A. Mycroft, “Object-oriented ASIP Design and Synthesis,” Proc. of Forum on specification and Design Languages (FDL’03), September 2003
[6]M. Goudarzi, S. Hessabi, “Synthesis of Object-Oriented Descriptions Modeled at Functional-Level,” Proc. of International Conference on Electronics, Control and Signal processing (ICECS’03), Singapore, December 2003
[7]M. Goudarzi, S. Hessabi, A. Mycroft, “Object-Oriented Embedded System Development Based on Synthesis and Reuse of OO-ASIPs,” Journal of Universal Computer Science, Springer-Verlag, In Press, September 2004
[8]M. Goudarzi, S. Hessabi, and A. Mycroft. Overhead-free polymorphism in network-on-chip implementation of object-oriented models. Proc. of Design Automation and Test in Europe (DATE), 2004, Paris
[9]M. Goudarzi, S. Hessabi, “The ODYSSEY Tool-Set for System-Level Synthesis of Object-Oriented Models,” in SAMOS V: Embedded Computer Systems: Architectures, MOdeling, and Simulation, Greece, Springer-Verlag LNCS 3553, pp. 394-403, July 2005
[10]M. Radetzki, “Synthesis of digital circuits from object-oriented specifications”. PhD Thesis, University of Oldenburg, 2000
[11]E. Grimpe and F. Oppenheimer, Object-oriented high level synthesis based on SystemC. In ICECS 2001: The 8th IEEE International Conference on Electronics, Circuits and Systems, volume 1, pages 529 – 534, St. Julian’s, Malta, September 2001
[12]E. Grimpe and F. Oppenheimer. Aspects of object oriented hardware modeling with SystemC-Plus. In Anne Mignotte, Eugenio Villar, and Lynn Horobin, editors, System on Chip Design Languages. Extended Papers: Best of FDL01 and HDLCon01., pages 213-223. Kluwer Academic Publishers, Boston, USA, 2002
[13]E. Grimpe, F. Oppenheimer, T. Fandry, et al., SystemC object-oriented extensions and synthesis features, Forum on Design Languages FDL '02, 24.-27. September, Marseille
[14]A. Schallenberg, W. Nebel, and F. Oppenheimer. Designing for dynamic partially reconfigurable fpgas with SystemC and OSSS. Proc. Of Forum on specification & Design Languages (FDL), 2004
[15]Sun Microsystem Inc., Java Virtual Machine Specification (2nd Edition), 1999
[16]Bruce Eckel, Thinking in Java (3rd Edition), Pearson Education, Inc., 2003
[17]Bill Venners, Inside the Java 2 Virtual Machine, The McGraw-Hill Companies, Inc., 1999
[18]Sun Microsystem Inc., http://java.sun.com
[19]A. Davis and S.M. Nowick. An Introduction to Asynchronous Circuit Design. Computer Science Department, University of Utah, Sep. 1997
[20]J. Sparso and S. Furber, Principle of Asynchronous Circuit Design, Kluwer Academic Publishers, 2001
[21]S. Hauck, Asynchronous Design Methodologies: An Overview, Proceeding of the IEEE, 83(1):69-93, January 1995
[22]SOCAD, A CAD tool for SOC Design, by 4C lab of CSE department of Tatung University. http://4c.cse.ttu.edu.tw/snipsnap/space/SoCAD
[23]Kendall Scott Martin Fowler. UML Distilled: A Brief Guide to the Standard Object Modeling Language (2nd Edition), Addison-Wesley, Inc., 1999
[24]Chih-Chiang Nien, Compiling Java Program into Activity Diagram, 2003
[25]Fu-Chiung Cheng and Hung-Chi Wu, Design and Implementation of Software Objects in Hardware, (To appear) IEEE Int. Conf. Computer Design (ICCD), October 2006
[26]JavaCC: Java Compiler Compiler, https://javacc.dev.java.net/
[27]JTB: Java Tree Builder, http://compilers.cs.ucla.edu/jtb/
[28]Erich Gamma , Richard Helm , Ralph Johnson , John Vlissides, Design patterns: elements of reusable object-oriented software, Addison-Wesley Longman Publishing Co., Inc., Boston, MA, 1995
[29]Ping-Yun Wang, Design and Implementation of Asynchronous Java Processor, 2004
[30]BCEL: Byte Code Engineering Library, http://jakarta.apache.org/bcel/
[31]jclasslib, http://www.ej-technologies.com/products/jclasslib/overview.html
[32]The VHDL source code download site, http://homepage.ttu.edu.tw/g9306009
QRCODE
 
 
 
 
 
                                                                                                                                                                                                                                                                                                                                                                                                               
第一頁 上一頁 下一頁 最後一頁 top
1. 12. 沈進成、周君妍(民95),整合行銷傳播對忠誠度之中介影響變數之研究-以古坑華山為例,旅遊管理研究,5(2)195~220頁。
2. 12. 沈進成、周君妍(民95),整合行銷傳播對忠誠度之中介影響變數之研究-以古坑華山為例,旅遊管理研究,5(2)195~220頁。
3. 11. 沈進成、王伯文(民93),民宿體驗對遊客意象及忠誠度影響關係研究-以奮起湖地區為例,旅遊管理研究,4(2)195~213頁。
4. 11. 沈進成、王伯文(民93),民宿體驗對遊客意象及忠誠度影響關係研究-以奮起湖地區為例,旅遊管理研究,4(2)195~213頁。
5. 10. 沈進成、謝金燕(民92),宗教觀光吸引力、滿意度與忠誠度關係之研究-以高雄佛光山為例,旅遊管理研究,3(1)79~95頁。
6. 10. 沈進成、謝金燕(民92),宗教觀光吸引力、滿意度與忠誠度關係之研究-以高雄佛光山為例,旅遊管理研究,3(1)79~95頁。
7. 9. 陳勁甫、林淑萍(民91),國內航空客運旅客對網路訂位售票滿意度分析之研究,旅遊管理研究,2(1),1~22頁。
8. 9. 陳勁甫、林淑萍(民91),國內航空客運旅客對網路訂位售票滿意度分析之研究,旅遊管理研究,2(1),1~22頁。
9. 8. 詹雅瑜、蔡進發、董育任、黃宗成(民91),國立中正文化中心國家音樂廰觀賞者對表演藝術節目與設施評估之研究,旅遊管理研究,2(2),1~22頁。
10. 8. 詹雅瑜、蔡進發、董育任、黃宗成(民91),國立中正文化中心國家音樂廰觀賞者對表演藝術節目與設施評估之研究,旅遊管理研究,2(2),1~22頁。
11. 6. 鄭琦玉、楊文燦(民84),遊憩衝擊認知及其滿意度關係之研究,戶外遊憩研究,8(2),109~132頁。
12. 6. 鄭琦玉、楊文燦(民84),遊憩衝擊認知及其滿意度關係之研究,戶外遊憩研究,8(2),109~132頁。
13. 5. 陳碧娟(民92),嘉義市管樂節十年回顧與展望,嘉義大學人文藝術學報,第二期,183~208頁。
14. 5. 陳碧娟(民92),嘉義市管樂節十年回顧與展望,嘉義大學人文藝術學報,第二期,183~208頁。
15. 3. 汪大雄、王培蓉、林振榮(民88),扇平自然教育區遊憩效益之經濟評估,臺灣林業科學,14(4),457-468頁。