研究生: |
吳曙宇 Wu, Shu-yu |
---|---|
論文名稱: |
一個加強記憶體可靠度的三維乘積碼 A 3D Product Code for Enhancing Memory Reliability |
指導教授: |
吳誠文
Wu, Cheng-Wen |
口試委員: |
李昆忠
李鎮宜 謝東佑 |
學位類別: |
碩士 Master |
系所名稱: |
電機資訊學院 - 電機工程學系 Department of Electrical Engineering |
論文出版年: | 2012 |
畢業學年度: | 100 |
語文別: | 英文 |
論文頁數: | 75 |
中文關鍵詞: | 乘積碼 、記憶體 、三維晶片 、可靠度 |
外文關鍵詞: | product code |
相關次數: | 點閱:1 下載:0 |
分享至: |
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
隨著需要處理的資料量越來越大,記憶體的需求度也越來越高,在提高記憶體的容量之際,卻也因此造成錯誤的發生率增加,所以如何提高記憶體的可靠度是一個越來越重要的問題。錯誤更正碼在記憶體系統中的使用是一個能夠提高記憶體可靠度的方法。在這篇論文中我們改造了傳統的乘積碼設計出一種加強記憶體可靠度的三維乘積碼。由於三維乘積碼可以更正兩個錯誤,因此其更正能力比傳統僅能更正單一錯誤的乘積碼更好。我們也探討三維乘積碼的編碼和解碼方式、如何更正一個錯誤和兩個錯誤的狀況,以及為何能比傳統乘積碼更好的更正能力。另外我們也設計了三維乘積碼的編碼和解碼的硬體。但是由於三維乘積碼使用了更多的校驗位,為了評估花費成本和得到效益(包括可靠度和平均存活時間)之間的關係,我們提出了一個評估指標稱為“MTTF to overhead”。從這個指標我們可以發現雖然三維乘積碼使用了更多的校驗位,但是卻得到更多平均存活時間的效益,使得使用三維乘積碼的記憶體有更好的可靠度。在實驗中我們做了包括傳統乘積碼和三維乘積碼之間以及三維乘積碼和漢明碼之間不同長度的CODEWORD之間可靠度、平均存活時間還有成本的比較。最後我們發現三維乘積碼除了更正兩個錯誤之外,在不增加校驗位的數量下,三維乘積碼有機會可以更正三個錯誤,所以去設計出一個可以更正三個錯誤的三維乘積碼將是一個未來可以繼續研究的方向。
In this thesis we modify the traditional product code to propose a 3D product code for enhancing memory reliability. The correction ability of the 3D product code is better than traditional product code because it is a double error correction (DEC) code rather than a single error correction (SEC) code which the traditional product code is. The use of parity bits in the 3D product code is more than in traditional product code. We discuss the way of encoding and decoding, and how to correct single error and double errors. We also design the hardware of the encoder and decoder. In order to estimate the tradeoff between the parity cost and MTTF benefit, we proposed an index called “MTTF to overhead.” We find out although 3D product code needs more area (an additional layer of parity bits) but gains higher reliability and MTTF than the traditional product code by the index. Finally we find out there is opportunity to correct triple errors without increasing additional parity bits by the 3D product code, so how to design a triple error correction (TEC) 3D product code is a worthy way to do.
[1] R. W. Hamming, "Error Detecting and Error Correcting Codes," Bell System Tech. J., vol. XXVI, pp. 147-160, Apr. 1950.
[2] P. Elias, "Error-free Coding," IRE Trans. Inform. Theory, vol. PGIT-4, pp.29-37, Sept. 1954.
[3] M. Y. Hsiao, "A Class of Optimal Minimum Odd-weight-column SEC-DED Codes," IBM J. Res. Devel., pp. 395-401, July 1970.
[4]Intel Corporation Memory Design Handbook, pp. 4-13–4-33, Jan. 1981.
[5] R. M. Tanner, "Fault-Tolerant 256K Memory Designs," IEEE Trans Comput., vol. C-33, pp. 314-322, Apr. 1984.
[6] R. Pyndiah, "Near-optimum decoding of product codes: Block turbo codes," IEEE Trans Commun., vol. 46, pp. 1003-1010, Aug. 1998
[7] K. Puttaswamy and G. H. Loh., "3D-integrated Sram Components for High-performance Microprocessors, " Computers, IEEE Transactions on, 58(10):1369 –1381, 2009.
[8] A. Papanikolaou, D. Soudris, R. Radolcic, Three Dimensional System Integration, Springer, 1st Edition, 2011.
[9] S. Lin, D. J. Costello, Error Control coding: Fundamentals and Application, Prentice Hall, 2nd Edition, 2004.
[10] C. L. Bertin, D. J. Perlman, S. N. Shanken, "Evaluation of a 3D memory cube system," Electronic Components and Technology Conference, 1993.
[11] C.-L. Su, Y.-T. Yeh, and C.-W. Wu, "An integrated ECC and redundancy repair scheme for memory reliability enhancement," in Proc. IEEE Int. Symp. on Defect and Fault Tolerance in VLSI Systems (DFT), Monterey, CA, Oct. 2005, pp. 81~89.
[12] T. Vogelsang, "Understanding the Energy Consumption of Dynamic Random Access Memories," MICRO, 2010.
[13] T. Fuja, “linear Sum Codes for Random Access Memories,” IEEE Trans Comput., vol. C-37, no. 9, pp. 1030-1042, Sept. 1988.
[14] T.-D. Chiueh, “A Static RAM Chip with On-Chip Error Correction,” IEEE J. Solid-State Circuits, vol. 25, no. 5, pp. 1290-1294, Oct. 1990.
[15] H. Choi, W. Liu, and W. Sung, “VLSI Implementation of BCH Error Correction for Multilevel Cell NAND Flash Memory,” IEEE Trans. VLSI Systems, vol. 18, no. 5, pp.843-847, May 2010.
[16] H. Alhussien, “An Iteratively Decodable Tensor Product code with Application to Data Storage,” IEEE J. on Selected Areas in Commun., vol. 28, no. 2, Feb. 2010.
[17] W.K. Jenkins, “Failure Resistant Digital Filters Based on Residue Number System Product codes,” ICASSP 1982.
[18] S. P. Park, “Soft-Error-Resilient FPGAs Using Built-In 2D Hamming Product Code,” IEEE Trans. VLSI Systems, vol. 20, no. 2, pp.248-256, Feb. 2012.
[19] B. Parhami, “Detection of Storage Errors in Mass Memories Using Low-Cost Arithmetic Error Codes,” IEEE Trans Comput., vol. C-27, pp. 302-308, Apr. 1978.
[20] J. J. Metzner, “Convolutionally Encoded Memory Protection,” IEEE Trans Comput., vol. C-31, pp. 547-551, June 1982.
[21] C. Yang, Y. Emre, C. Chakrabarti, T. Mudge “Flexible Product Code-based ECC Schemes for MLC NAND Flash Memories,” IEEE Workshop on SiPS, pp.255-260, 2011.
[22] C.-E. Yang, Y. Emre, “Product Code Schemes for Error Correction in MLC NAND Flash Meories,” IEEE Trans. VLSI Systems, vol. 20, no. 12, pp.2302-2314, Dec. 2012.