楊佳玲臺灣大學:資訊工程學研究所王順英Wang, Shun-YingShun-YingWang2007-11-262018-07-052007-11-262018-07-052007http://ntur.lib.ntu.edu.tw//handle/246246/53969在目前的嵌入式處理器中,也開始採用動態的分支預測器來解決管線式處理器架構執行分支指令時,可能造成的效能衰減。目前的動態分支預測器,大多依據分支指令在通用處理器上的執行行為而設計,這會使得動態分支預測器著重的分支行為,以適應各類型應用程式為考量。而嵌入式系統,擁有與通用處理器不同的特性,嵌入式的處理器,往往面對的是執行固定、少變化的特殊應用程式,例如:通訊或多媒體應用程式…等等,則其所產生的分支指令執行行為也可能與通用處理器上不同。因此,本篇論文藉由詳盡地模擬各式常用的動態分支預測器及實作數個低功耗分支預測器技術,以期了解多媒體應用程式在嵌入式處理器上執行時,分支預測器呈現之特性與適用性。Modern embedded processors employ dynamic branch prediction to reduce performance penalty caused by branch instructions. Existing branch predictor designs are all based on the behavior of applications on a GPP (general purpose processor). However, for an embedded system, such as smart phone, multimedia applications are the main workload. Therefore, in this thesis, we performed detailed performance/power characterization of multimedia applications and implemented several famous power-aware prediction techniques. We believe that identifying important characteristics of different branch predictor design of multimedia applications is important for choosing an adequate branch predictor for embedded processors.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 2 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5 3 Branch Predictor Studied . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.1 Branch Prediction Schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7 3.1.1 Bimodal Predictor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7 3.1.2 Global History Predictor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8 3.1.3 Local History Predictor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9 3.1.4 Hybrid Predictor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.2 Branch Prediction Schemes with Low-Power Consideration . . . . . . . . . . . 11 3.2.1 Banking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 3.2.2 Prediction Probe Detector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 3.2.3 Branch Predictor Prediction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.2.4 Selective Predictor Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 4 Simulation Methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 4.1 Simulator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 4.2 Benchmarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 4.3 Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 5 Simulation Results. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 5.1 Design Space Exploration for Branch Prediction Schemes . . . . . . . . . . . . . 23 5.1.1 Bimodal Branch Predictor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 5.1.2 Global History Predictor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27 5.1.3 Local History Predictor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 5.1.4 Hybrid Predictor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34 5.1.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35 5.2 Evaluation of Low-Power Branch Prediction Schemes . . . . . . . . . . . . . . . . . .38 5.2.1 Banking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38 5.2.2 Prediction Probe Detector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39 5.2.3 Branch Predictor Prediction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 5.2.4 Selective Predictor Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46 Bibliography. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48612152 bytesapplication/pdfen-US分支預測器多媒體應用程式效能功耗branch predictormultimedia applicationperformancepower針對多媒體應用程式之分支預測器效能/功耗特性分析Performance/Power Characterization of Branch Prediction for Multimedia Applicationsthesishttp://ntur.lib.ntu.edu.tw/bitstream/246246/53969/1/ntu-96-R93922104-1.pdf