簡易檢索 / 詳目顯示

研究生: 錢郁翔
Chien, Yu-Shiang
論文名稱: 競爭感知混合式晶片內建記憶體管理機制之設計
Design of a Contention-aware Hybrid On-Chip Memory Management Mechanism
指導教授: 張大緯
Chang, Da-Wei
學位類別: 碩士
Master
系所名稱: 電機資訊學院 - 資訊工程學系
Department of Computer Science and Information Engineering
論文出版年: 2013
畢業學年度: 101
語文別: 英文
論文頁數: 53
中文關鍵詞: 草稿式記憶體混合式內建記憶體資料配置快取記憶體競爭
外文關鍵詞: scratchpad memory, hybrid on-chip memory, data allocation, cache contention
相關次數: 點閱:78下載:0
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 由於草稿式記憶體 (Scratchpad Memory) 比常用的快取記憶體(Cache)有更小的能源消耗及面積,因此草稿式記憶體已經漸漸地被嵌入式系統使用。在快取記憶體和草稿式記憶體被提出之後,混合式晶片內建記憶體也被提出,混合式晶片內建記憶體含有一塊草稿式記憶體及一塊迷你快取記憶體。為了在混合式晶片內建記憶體架構下減少晶片外記憶體的存取次數,有些相關的研究將最常被存取的資料放到草稿式記憶體來。然而,這些方法可能是無效的,因為最常被存取的資料不一定是最常造成晶片外記憶體存取的資料。晶片外記憶體存取是快取記憶體失效造成的,所以減少快取記憶體失效次數才能減少晶片外記憶體存取次數。因此我們用快取記憶體失效次數來決定資料是否該搬到草稿式記憶體。我們提出了頁失效紀錄電路 (page miss bookkeeping circuit) 來統計每一頁資料的失效次數。當一頁資料的失效次數超過設定的門檻值就會被搬到草稿式記憶體。跟快取記憶體相比,我們的方法減少平均耗能延遲乘積 (EDP) 49%。跟在[19]所提出的方法相比,我們減少了平均耗能延遲乘積26%。

    Scratchpad memories (SPM) have been increasingly used in embedded system due to their higher energy and area efficiency compared to ordinary caches. Hybrid on-chip memory architecture that combines SPM with a mini cache is also proposed. In order to reduce off-chip memory access in hybrid on-chip memory architecture, some related works put the most frequently accessed data into SPM. However, these methods may be ineffective because the most frequently accessed data may be not the main cause of off-chip memory access. Instead, off-chip memory accesses are caused by cache miss, and reducing cache misses can reduce off-chip memory accesses. Therefore, in this work, we propose using cache miss as a criterion to determine whether a page should be moved to SPM. We propose a page miss bookkeeping circuit to calculate the number of cache misses happened in a page. When the number of misses in a page is higher than a threshold, the page is moved to SPM. Compared to cache on-chip memory architecture, experimental results show our method can reduce the energy delay production (EDP) by 49%. Compare to the work in [19], our method can reduce the EDP by 26%.

    摘要 iv Abstract v 誌謝 vi Content vii List of Tables viii List of Figures ix Chpater 1 Introduction 1 Chapter 2 Related Works 8 2-1. Static Allocation Method 8 2-2. Dynamic Allocation Method 10 Chapter 3 Contention-Aware SPM Allocatoin Method 15 3-1. Proposed Architecture 16 3-2. Access Flow 19 3-3. Dynamic Threshold 20 Chapter 4 Experimental Setup and Results 24 4-1. Experimental Setup 24 4-2. Static and Dynamic Threshold Comparison on Hybrid On-chip Memory 26 4-3. EDP Comparison of Hybrid On-chip Memory and Cache-only On-chip Memory 29 4-4. EDP Comparision with Different Associativity of Hybrid On-chip Memory with Dynamic Thresholds 45 4-5. EDP of Hybrid On-chip Memory with Dynamic Thresholds under Different Threshold Adjusting Period 48 4-6. Area Comparison 49 Chapter 5 Conclusion 50 References 51

    [1] M. Verma and P. Marwedel. “Overlay techniques for scratchpad memories in low-power embedded processors,” IEEE Trans. on VLSI, vol. 14, pp.802-815, 2006.
    [2] T.R. Mück and A.A. Fröhlich, “A run-time memory management approach for scratch-pad-based embedded systems,” IEEE Conf. on ETFA, pp. 1-4, 2010.
    [3] R. Banakar, S. Steinke, B. Lee, M. Balakrishnan, and P. Marwedel. “Scratchpad Memory: A Design Alternative for Cache On-chip memory in Embedded Systems,” ACM Symp. on CODES, pp. 73-78, 2002.
    [4] V. Suhendra, T. Mitra, A. Roychoudhury, and T. Chen. “WCET centric data allocation to scratchpad memory,” IEEE Symp. on RTSS, pp. 223-232, 2005.
    [5] O. Avissar, R. Barua, D. Stewart, “Heterogeneous memory management for embedded systems,” ACM Conf. on CASES, pp. 34–43, 2001.
    [6] O. Avissar, R. Barua, D. Stewart, “An optimal memory allocation scheme for scratch-pad-based embedded systems,” ACM Trans. on TECS, vol. 1, pp. 6–26, 2002
    [7] P.R. Panda, N.D. Dutt, A. Nicolau, “On-chip vs. off-chip memory: the data partitioning problem in embedded processor-based systems,” ACM Trans. on TODAES, vol. 5, 2000, pp. 682–704.
    [8] S. Steinke, L. Wehmeyer, B. Sik Lee, P. Marwedel, “Assigning program and data objects to scratchpad for energy reduction,” IEEE Conf. on DATE, pp. 409-415, 2002.
    [9] F. Angiolini, L. Benini, A. Caprara, “Polynomial-time algorithm for on-chip scratchpad memory partitioning,” ACM Conf. on CASES, pp. 318-326, 2003.
    [10] A. Dominguez, S. Udayakumaran, R. Barua, “Heap data allocation to scratch-pad memory in embedded systems,” Journal of Embedded Computing, vol.1, pp.521-540, 2005.
    [11] J. Ramanujam, M.J. Irwin, N. Vijaykrishnan, I. Kadayif, A. Parikh, “Dynamic management of scratch-pad memory space,” ACM Conf. on DAC, pp. 690–695, 2001.
    [12] S. Udayakumaran, R. Barua, “Compiler-decided dynamic memory allocation for scratch-pad based embedded systems,” ACM Conf. on CASES, pp. 276–286, 2003.
    [13] Z. H. Chen and A. W. Y. Su, “A hardware/software framework for instruction and data scratchpad memory allocation,” ACM Trans. on TACO, vol. 7, pp. 2:1–2:27, 2010.
    [14] A. Janapsatya, S. Parameswaran, and A. Ignjatovic, “Hardware/software managed scratchpad memory for embedded system,” IEEE/ACM Conf. on ICCAD, pp. 370–377, 2004.
    [15] R. Pyka, C. Fa¨sbach, M. Verma, H. Falk, and P. Marwedel, “Operating system integrated energy aware scratchpad allocation strategies for multiprocess applications,” ACM Workshop on SCOPES, pp. 41–50, 2007
    [16] H. Takase, H. Tomiyama, and H. Takada, “Partitioning and allocation of scratch-pad memory for priority-based preemptive multi-task systems,” IEEE Conf. on DATE, pp. 1124–1129, 2010.
    [17] L. Bathen et al. “SPMVisor: dynamic scratchpad memory virtualization for secure, low power, and high performance distributed on-chip memories” IEEE/ACM/IFIP Conf. on CODES+ISSS, pp. 79-88, 2011.
    [18] B. Egger, J. Lee, and H. Shin, “Scratchpad memory management in a multitasking environment,” ACM Conf. on EMSOFT, pp. 265–274, 2008.
    [19] Ji, W., Deng, N., Shi, F., Zuo, Q., Li, J.: “Dynamic and adaptive spm management for a multi-task environment,” Journal of Systems Architecture, vol. 57, pp. 181–192, 2011.
    [20] N. Muralimanohar, R. Balasubramonian, and N.P. Jouppi. “CACTI 6.0: A tool to understand large caches,” in HP Tech Report HPL-2009-85, 2009.
    [21] M.R. Guthaus, J.S. Ringenberg, D. Ernst, T.M. Austin, T. Mudge, R.B. Brown, “Mibench: A free, commercially representative embedded benchmark suite,” IEEE Workshop on WWC, pp. 3-14, 2001.
    [22] P.R. Panda, N.D. Dutt, A. Nicolau “Efficient utilization of scratch-pad memory in embedded processor applications.” IEEE Conf. on EDTC, pp.7-11, 1997.
    [23] D.C. Burger and T.M. Austin. “The Simplescalar Tool Set, Version 2.0,” ACM SIGARCH Computer Architecture News, pp. 13-25, 1997.
    [24] S. Blagodurov, S. Zhuravlev, and A. Fedorova. “Contention-aware scheduling on multicore systems.” ACM Trans. on TOCS, vol. 28, pp.1-45, 2010.
    [25] F. Angiolini, L. Benini, A. Caprara, “An efficient profile-based algorithm for scratchpad memory partitioning,” IEEE Trans. on Computer-Aided Design of Integrated Circuits and Systems, pp. 1660-1676, 2005.
    [26] T. R. Muck and A. A. Frohlich, "Run-time scratch-pad memory management for embedded systems," in IECON 2011 - 37th Annual Conference on IEEE Industrial Electronics Society, 2011, pp.2833-2838.
    [27] S. Park, H. W. Park, S. Ha “A novel techinique to Use Scratch-pad memory for stack management,” in DATE pp.1-6, 2007.
    [28] J. Hu, C. J. Xue, Q. Zhuge, W. C. Tseng, E. M. Sha, “Towards energy efficient hybrid on-chip scratch pad memory with non-volatile Memory,” in DATE pp.1-6, 2011.
    [29] M. Kandemir, J. Ramanujam, A.Choudhary, “Exploiting shared scratch pad memory space in embedded multiprocessor system,” in DAC, pp. 219-224, 2002.
    [30] B. Egger, S. Kim, C. Jang, J. Lee, S. L. Min, H. Shin, “Scratchpad memory management techniques for code in embedded systems without an MMU,” IEEE Transaction on Computer, pp.1047-1062, 2010.
    [31] V. Suhendra, C. Raghavan, T. Mitra, “Integrated scratchpad memory optimization and task scheduling for mpsoc architectures,” ACM Conf. on CASES, pp. 401-410, 2006
    [32] S. Chattopadhyay, A. Roychoudhury, “Static bus schedule aware scratchpad allocation in multiprocessor,” ACM Conf. on LCTES, pp. 11-20, 2011.
    [33] O. Ozturk, M. Kandemir, I. Kolcu, “Shared Scratch-Pad Memory Space Management, ” in ISQED, pp. 576-584, 2006.
    [34] Q. Wan, H. Wu, J. Xue, “WCET-aware data selection and allocation for scratchpad memory,” ACM Conf. on LCTES, pp. 41-50, 2012.
    [35] Design Compiler, Synopsys Inc. (http://www.synopsys.com).
    [36] C. Zilles, G. Soh, “Excution-based prediction using speculative slices,” IEEE Symp. on Computer Architecture, pp. 2-13, 2001

    下載圖示 校內:2023-12-31公開
    校外:2023-12-31公開
    QR CODE