近年來,能源消耗的問題因為攜帶式電子產品、嵌入式系統的日益普及變得非常重要,除了硬體上對於低功率加強的相關設計,最後在硬體平台上面執行的嵌入式軟體,其執行效率的好壞與否也在能源消耗上扮演重要角色。本計畫將針對軟體在產生過程中做最佳化的處理,即在編譯(Compilation)過程改進原有的程式碼,促使軟體可以只利用較少的能源就能達原有的效能表現。因為編譯器可以掌握程式每個流程(Routine)以及其流向(Flow),並且在編譯時期就能瞭解流程中有哪些運算單元或是硬體模組會被使用到,有哪些模組是可以休眠或是關閉的。因此我們所做的最佳化改進,即是在不降低效能表現(Performance)的前提之下,減少處理器中各個硬體模組的時脈樹(Clock Tree)活動時間,以達到降低電源消耗量的目的。
Power consumption becomes an important issue nowadays for the variable portable and embedded appliances. Not only the hardware-oriented low power design, but also the embedded applications play a very significant role on run-time power consumption. This paper focuses on the optimizations for compiler code generation which achieve less run-time power usage without any degrade to application performance. Compiler has the awareness of every routine, its control flow direction, and the utilization of the hardware modules. As a result, Power Aware Compiler provides an automatically optimization for minimizing the clock tree activity for less power consumption, yet with neither performance downgrade nor the annotations from the skilled and experienced programncers, for the run-time applications.