| 研究生: |
李宣賢 Lee, Hsuan-hsien |
|---|---|
| 論文名稱: |
符合ARMv6格式多核心系統之Dual-port Memory Management Unit之設計 Design of a dual-port Memory Management Unit for multi-core system conforming to ARMv6 format |
| 指導教授: |
陳中和
Chen, Chung-ho |
| 學位類別: |
碩士 Master |
| 系所名稱: |
電機資訊學院 - 電機工程學系碩士在職專班 Department of Electrical Engineering (on the job class) |
| 論文出版年: | 2009 |
| 畢業學年度: | 97 |
| 語文別: | 中文 |
| 論文頁數: | 76 |
| 中文關鍵詞: | dual-port TLB 、多核心系統 、BPLRU 、ARMv6 MMU架構 |
| 外文關鍵詞: | BPLRU, multi-core system, dual-port TLB, ARMv6 MMU architecture |
| 相關次數: | 點閱:103 下載:1 |
| 分享至: |
| 查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
多核心系統之記憶體管理單元(Memory Management Unit,MMU)設計的挑戰在於多核心系統支援、高效率與低功率消耗。因此,本論文專注探討分析MMU架構、dual-port架構與TLB替換機制來實現解決這些挑戰且實現符合ARMv6架構之記憶體管理單元。
實驗的環境為本實驗室所設計之Superscalar平台,包含一個以Register Update Unit Base所設計之九級管線超純量架構:Symphony32,以及同為dual-port之data cache。於最後數據分析中可以看出:在單核心系統下,dual-port架構的記憶體存取次數較single-port架構減少均方根值9.72%;並減少處理器存取記憶體時間均方根值19.25%。面積更只有採用direct-mapped TLB架構的四成,以較小的面積,保有最佳化效率及較低的功率損耗。
In this thesis, we design a Memory Management Unit (MMU) which supports multi-core system and conforms to the ARMv6 format. We analyze and discuss the architecture of ARMv6 MMU. First, we explain the benefits of using dual-port structure. Secondly, we analyze and select the replacement algorithm for the TLB. Finally, we show the implementation of the ARMv6 MMU which bases on the outcome of the evaluation and the real needs.
A Superscalar platform including Symphony32, a Register Update Unit Based nine-stage pipeline superscalar processor, the dual-port MMU, and a dual-port data cache is our experimental environment. Based on this single-core environment, the simulation results illustrate that the TLB architecture and the replacement policy are the key factors that reduce 99.2% of TLB misses on average compared with a direct-mapped design and 9.72% reduction of memory access compared with the single-port architecture. Therefore, the proposed MMU clearly presents itself to be an effective MMU design for our multi-core system.
[1] ARM Corporation, “ARM11 MPCore Processor Technical Reference Manual”.
[2] ARM Corporation, “ARM Architecture Reference Manual”.
[3] MIPS, “MIPS R4000 Microprocessor User’s Manual”.
[4] 林璟汶, “符合電子系統層級設計概念之可參數化超純量亂序執行微處理器設計、分析與實現,” 碩士論文, 國立成功大學電腦與通信工程研究所, 2008.
[5] T. Takayanagi, et al., “Embedded Memory Design for a Four Issue Superscalar RISC Microprocessor,” In Proc. IEEE 1994 Conf. on Custom Integrated Circuits, pp 585-590, May 1994.
[6] I. Kadayif, A. Sivasubramaniam, M. Kandemir, G. Kandirajuand, and G. Chen, “Generating Physical Address Directly for Saving Instruction TLB Energy,” In Proc. 35th Annual IEEE/ACM International Symposium on Microarchitecture, pp. 185-196. Nov. 2002.
[7] R. Jeyapaul, S. Marathe, and A. Shrivastava, “Code Transformations for TLB Power Reduction,” In International Conference on VLSI Design, pp: 413-418, Jan. 2009.
[8] J. H. Choi, J. H. Lee, S. W. Jeong, S. D. Kim, and C. Weems, “A Low Power TLB Structure for Embedded Systems,” In Computer Architecture Letters, Vol. 1, pp: 3-3, Jan. 2002.
[9] Y.-J. Chang, “An Ultra Low-Power TLB Design,” In Proc. 2006 DATE ’06 on Design, Automation and Test in Europe, Vol. 1, pp: 1-6, Mar. 2006.
[10] Y.-J. Chang and M.-F. Lan, “Two New Techniques Integrated for Energy-Efficient TLB Design,” In IEEE Trans. on Very Large Scale Integration (VLSI) Systems, Vol. 15, pp: 13-23, Jan. 2007.
[11] J. R. Haigh, M. W. Wilkerson, J. B. Miller, T. S. Beatty, S. J. Strazdus, and L. T.Clark, “A low-power 2.5-GHz 90-nm level 1 cache and memory management unit,” In IEEE Journal of Solid-State, Vol. 40, pp: 1190-1199, May 2005.
[12] Mibench test bench, http://www.eecs.umich.edu/mibench/
[13] ARM Corporation, “ARM Developer Suite - Version 1.2 - ADS Debug Target Guide.”
[14] ARM Corporation, “ARM Developer Suite - Version 1.2 - ARM ELF Specification.”
[15] ARM Corporation, “ARM Developer Suite - Version 1.2 - AXD and arm Debuggers Guide.”
[16] ARM Corporation, “ARM Developer Suite - Version 1.2 - Assembler Guide.”
[17] ARM Corporation, “ARM Developer Suite - Version 1.2 - Codewarrior IDE Guide.”
[18] ARM Corporation, “ARM Developer Suite - Version 1.2 - Compilers and Libraries Guide.”
[19] ARM Corporation, “ARM Developer Suite - Version 1.2 - Developer Guide.”
[20] ARM Corporation, “ARM Developer Suite - Version 1.2 - Getting Started.”
[21] ARM Corporation, “ARM Developer Suite - Version 1.2 - Installation and License Management Guide.”
[22] ARM Corporation, “ARM Developer Suite - Version 1.2 - Linker and Utilities Guide.”
[23] H. Ghasemzadeh, S. Mazrouee, and M. Reza Kakoee, “Modified Pseudo LRU Replacement Algorithm,” In ECBS 2006, 13th Annual IEEE International Symposium and Workshop on Engineering of Computer Based Systems, pp: 376-342, Mar. 2006.
[24] C.-Y. Tseng and H.-C. Chen, “The Design of Way-Prediction Scheme in Set-Associative Cache for Energy Efficient Embedded System,” In 2009, CMC ’09. WRI International Conference on Communications and Mobile Computing, Vol. 3, pp: 3-7, Jan. 2009.
[25] M. Soryani, M. Sharifi, and M. Hossein Rezvani, “Performance Evaluation of Cache Memory Organizations in Embedded Systems,” In ITNG ’07. Fourth International Conference on Information Technology, pp: 1045-1050, Apr. 2007.
[26] H.-K. Jung, et al., “Performance Improvement and Low Power Design of Embedded Processor,” In 2008. ICCIT ’08. Third International Conference on Convergence and Hybrid Information Technology, Vol. 2 pp: 140-145, Nov. 2008.
[27] TSMC 0.18 μm Process 1.8-Volt SAGE-XTM Standard Cell Library Databook
[28] Stanford Parallel Applications for Shared Memory (SPLASH) test bench, http://www-flash.stanford.edu/apps/SPLASH/