跳到主要內容

臺灣博碩士論文加值系統

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

詳目顯示

我願授權國圖
: 
twitterline
研究生:吳家慶
研究生(外文):Chia-Ching Wu
論文名稱:物件導向程式設計之功率分析:C++與C語言之比較
論文名稱(外文):Power Analysis of Object-Oriented Programming Style: Comparison between C++ and C
指導教授:賴飛羆賴飛羆引用關係
指導教授(外文):Prof. Feipei Lai
學位類別:碩士
校院名稱:國立臺灣大學
系所名稱:資訊工程學研究所
學門:工程學門
學類:電資工程學類
論文種類:學術論文
論文出版年:2003
畢業學年度:91
語文別:英文
論文頁數:65
中文關鍵詞:低功率物件導向程式設計嵌入式系統
外文關鍵詞:Low powerObject-Oriented ProgrammingEmbedded system
相關次數:
  • 被引用被引用:0
  • 點閱點閱:318
  • 評分評分:
  • 下載下載:0
  • 收藏至我的研究室書目清單書目收藏:0
隨著可攜式計算系統的快速發展,系統單晶片(System-On-a-Chip; SOC)整合多媒體等大量視訊語音功能,在功率限制因素下,使得低功率(low-power)系統設計成為一重要趨勢。根據以往的研究顯示在系統階層(System-Level)設計,使用低功率的設計方法(包括硬體/軟體設計、演算法設計等),可節省較多的功率消耗。過去在軟體設計方法中,大都以提升探討程式撰寫最佳化上為主。但針對程序導向程式設計C語言與物件導向程式設計C++語言在功率消耗方面差異性的評估,至今仍未被深入探討。本篇論文針對C++與C語言不同風格,依照實際上功率分析數據,來比較兩者在功率消耗上的優劣。從實驗結果得知,物件導向程式設計C++的類別(class)與結構(struct)兩者功率消耗相等;而物件導向程式設計C++比程序導向程式設計C語言,在等效(equivalent)撰寫方式下,平均減少約5.12%功率消耗及減少17.18%執行時間。此結果可提供可攜式設備應用軟體設計語言之選擇的重要參考依據。
The increasing popularity of embedded systems and wireless communication device drives the need for low power design. Software has become one of the critical roles of these systems. In the past low power software design only focused on the optimization of C program, however, Object-Oriented Programming (OOP) provides significant improvement for programs writing and generality. But power analysis of object-oriented programming style has not yet been explored deeply. In this thesis, we propose a way to compute the energy cost of OOP. The purpose of this thesis is to explore the power analysis of OOP style. From the experimental results, C++ can save power dissipation up to 5.12% and 17.18% of execution time compared with the C language. This analysis can be used to guide the selecting low power software for embedded systems.
第一章 簡介 I
第二章 計算耗能與執行時間的方法 II
第三章 物件導向程式設計功率分析 III
第四章 實驗結果與分析 IV
第五章 結論 V

1 Introduction 1
1.1 Low Power Requirement 1
1.2 Low Power Design at Various Levels of Abstraction 1
1.3 Power Estimation at Various Levels 4
1.4 Motivation 6
1.5 Related Work 6
1.6 Outline of the Following Chapters 7

2 Analysis Methodology 8
2.1 Energy Analysis Methodology 8
2.1.1 Definition of Power and Energy 8
2.1.2 Energy Cost Computation 10
2.2 Execution Time Analysis Methodology 18
2.2.1 Definition of Execution Time 18
2.2.2 Execution Time Computation 18

3 Power Dissipation of OOP Writing Style 19
3.1 The Reason of Choosing C and C++ 19
3.1.1 Object-Oriented Programming 19
3.1.2 The Relationship between C and C++ 22
3.2 The OOP Style 24
3.2.1 Encapsulation with Data Hiding 24
3.2.2 Inheritance and Class Hierarchy 24
3.2.3 Polymorphism with Dynamic Binding 25
3.2.4 The Program Framework 27
3.2.5 An Example 30
3.2.6 The Relationship between Struct and Class in C++ 31
3.3 Writing an Equivalent C Program 33
3.3.1 Encapsulation with Data Hiding 33
3.3.2 Inheritance and Class Hierarchy 33
3.3.3 Polymorphism with Dynamic Binding 34

4 Simulation Environment and Experimental Results 36
4.1 Simulation Environment 36
4.1.1 Hardware Environment 36
4.1.2 Software Environment 37
4.1.3 Simulation Flow 39
4.2 Experimental Results 41
4.2.1 Computation Methodology Comparison 41
4.2.2 Comparison between Class and Struct in C++ 42
4.2.3 Comparison between Class in C++ and Struct in C 45
4.3 Discussion 49

5 Conclusions and Future Work 51

Bibliography 52
Appendix 55

[1]Shanq-Jang Ruan, Synthesis of Low Power Pipelined Logic Circuits Using Bipartition and Encoding Techniques. The Ph.D dissertation of National Taiwan University, Oct. 2002.
[2]Kun-Lin Tsai, Refunction Based Multipartition Architecture for Low Power Circuit Design. The thesis of National Taiwan University, June 2001.
[3]H. Tomyiama, H., T. Ishihara, A. Inoue, H. Yasuura, “Instruction scheduling for power reduction in processor-based system design, ” DATE, 1998.
[4]Robert Lafore, Object-Oriented Programming in Turbo C++. Waite Group Press, 1991.
[5]V. Tiwari, S. Malik, A. Wolfe, “Instruction Level Power Analysis, Journal of VLSI Signal Processing Systems,” no.1, pp.223-238, 1996.
[6]M. Loukides, A. Oram, Programming with GNU Software, O’Reilly & Associates Inc. Taiwan Branch, 1998.
[7]Kaushik Roy and Sharat C. Prasad, Low-Power CMOS VLSI Circuit Design, Wiely-Interscience, 2000.
[8]Bjarne Stroustrup, The Design and Evolution of C++. Addison Wesley, 1994.
[9]K. Naik & David S.L. Wei, “Software Implementation Strategies for Power-Conscious System,” in: Mobile Networks and Application 6,291-305, 2001.
[10]V. Tiwari, S. Malik and A. Wolfe, Power analysis of the Intel 486DX2, Technical report No. CE-M94-5. EECS Department Princeton University, Jan. 1994.
[11]V. Tiwari, S. Malik and A. Wolfe, “Power analysis of embedded software: A first step towards software power minimization,” IEEE Transactions on VLSI Systems 2(4) 437–445, Dec. 1994.
[12]S. Sengupta & C. P. Korobkin, C++ Object-Oriented Data Structures. Springer-Verlag 1994.
[13]S. Meyers, Effective C++ Second Edition. Addison-Wesley, 1998.
[14]http://www.arm.com
[15]E. Horowitz, S. Sahni and S. Anderson-Freed, Fundamentals of Data Structures in C. Computer Science Press, 1993.
[16]R. Sedgewick, Algorithms in C. Addison-Wesley, 1990.
[17]S.Furber, ARM System-on-Chip Architecture. Addison Wesley Longman, 2000.
[18]www.EventHelix.com
[19]M.T. Lee, V. Tiwari, S. Malik and M. Fujita, “Power analysis and minimization techniques for embedded DSP software,” IEEE Transactions on VLSI Systems 5(1)123–135, Mar. 1997.
[20]V. Tiwari and M.T.-C. Lee, “Power analysis of 32-bit embedded micro-controller,” VLSI Design 7(3)225–242, 1998.
[21]V. Tiwari, S. Malik and A. Wolfe, “Power analysis of embedded software: A first step towards software power minimization,” IEEE Transactions on VLSI Systems 2(4) 437–445, Dec. 1994.
[22]T. Sato, Y. Ootaguro, M. Nagamatsu, and H.tago, “Evaluation of Architecture-Level Power Estimation for CMOS RISC Processor,” in Proceedings of the Symposium on Low Power Electronics, pp. 44-45, 1995.
[23]H. Mehta, R.M. Owens, M.J. Irvin, R. Chen, D. Ghosh, “Techniques for low energy software,” ISLPED, 1997.
[24]V. Tiwari, A. Wolfe and M. T.-C. Lee, “Instruction Level Power Analysis and Optimization of Software”, Journal of VLSI Signal Processing,, 1-18, 1996.
[25]E. Horowitz, S. Sahni, S. Rajasekran, Computer Algorithms C++. Computer Science Press, 1998.
[26]E. Horowitz, S. Sahni, S. Anderson-Freed, Fundaments of Data Structure in C, W. H. Freeman, 1993.
[27]M. Mullin, Object Oriented Program Design with Examples in C++. Addison-Wesley Publishing Company, Inc.
[28]S. Oualline, Practical C++ Programming. O’Reilly & Associates, Inc.
[29]Grady Booch, James Rumbaugh, and Ivar Jacobson, The Unified Modeling Language User Guide. Reading MA: Addison-Wesley, 1999.
[30]http://wwww.soft-design.com/softinfo/objects.html.
[31]G. Eggers and H.C.Zeidler, “Efficient Clock-Cycle Precise Simulation at Architecture Level in C++,” IEEE 222-227, 2000.
[32]Bjarne Stroustrup, The C++ programming language. Addison Wesley 1997.
[33]C.C.Hwang et al, “Object-Oriented Program Behavior Analysis Based on Control Patterns, “ IEEE 81-87, 2001.
[34]Tajana Simunic, Energy Efficient System Design and Utilization. Ph.D dissertation of Standford University, Feb. 2001.
[35]Jay Ranade & Saba Zamir, C++ Primer for C Porgrammers. McGraw-Hill, 1992.
[36]Ira Pohl, C++ for C Programmers. Benjamin, Cummings, 1994.
[37]B.Stroustrup, The C++ Programming Language. Addison-Wesley, 2nd Edition, 1991.
[38]B. Stroustrup, The Design and Evolutions of C++. Addison-Wesley, 1994.
[39]E. Z. Zhou, “Object-oriented Programming, C++ and Power System Simulation”, IEEE Transactions on Power Systems, Vol. 11, No. 1, Feb. 1996.
[40]T.Faison, Borland C++ 4 – Object-Oriented Programming. Sams, 3rd Edition, 1994.
[41]W. Saritch, Problem Solving with C++ -- The Object of Programming. Addison-Wesley, 1996.
[42]Stanley B. Lippman, INSIDE THE C++ OBJECT MODEL. Addison-Wesley, 1996.
[43]Booch, Rumbaugh, and Jacobson. The Unified Modeling Language User Guide. Addison-Wesley, 1999.
[44]Si Alhir. UML in a Nutshell. O’Reilly, 1998.
[45]Flowler. UML Distilled. Addison-Wesley, 1997.
[46]http://www.omg.org/
[47]Massoud Pedrama, “Power Minimization in IC Design: Principles and Applications,” ACM Transactions on Design Automation of Electronic System, vol. 1, No. 1, pp. 3-56, Jan. 1996.
[48]S. C. Prasad and K. Roy, "Circuit Optimization for Minimization of Power Cosumption Under Delay Constraint," Proceedings of the International Workshop on Low Power Design, pp.15-20, April 1994.
[49]C. H. Tan and J. Allen, "Minimization of Power in VLSI Circuits Using Transistor Sizing, Input Reordering, and Statistical Power Estimation," Proceedings of the International Workshop on Low Power Design, pp.464-467, April 1994.
[50]James B. Kuo, and Jea-Hong Lou, Low-Voltage CMOS VLSI Circuits. Wiley-Interscience 1999.
[51]Davari. B., Dennard. R. H., and Shanidi. G. G., “CMOS scaling for high performance and low power,” Proc. IEEE 83. 4 pp. 595-606, 1995.
QRCODE
 
 
 
 
 
                                                                                                                                                                                                                                                                                                                                                                                                               
第一頁 上一頁 下一頁 最後一頁 top
無相關期刊