簡易檢索 / 詳目顯示

研究生: 柯博儒
Ke, Bo-Ru
論文名稱: Design and Evaluation of the Low-Density Parity-Check CODEC for Non-Volatile Memories
用於非揮發性記憶體之低密度同位檢查編解碼器設計與評估
指導教授: 黃稚存
Huang, Chih-Tsun
口試委員:
學位類別: 碩士
Master
系所名稱: 電機資訊學院 - 資訊工程學系
Computer Science
論文出版年: 2009
畢業學年度: 97
語文別: 英文
論文頁數: 73
中文關鍵詞: 用於非揮發性記憶體之低密度同位檢查編解碼器設計與評估
相關次數: 點閱:2下載:0
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 隨著快閃記憶體的需求快速增加,快閃記憶體的可靠性也越來越重要;利用快閃記憶體的非揮發性的特質,錯誤更正碼(Error Correcting Code)被廣泛的使用在快閃記憶體上。

    在本論文中,我們針對快閃記憶體設計了BCH 碼(Bose-Chaudhuri-Hocquenghem)及低密度同位元編解碼 (Low-Density Parity-Check),我們也建立了一個評估框架來評估分析不同錯誤更正碼的錯誤更正能力。我們設計了一個由BCH碼及LDPC所組成的混合編解碼,為了要最佳化混合編解碼,我們評估現有混合科技應用在快閃記憶體上的錯誤更正能力;關於快閃記憶體的限制,我們以實際上應用的面積及時間的需求為目標。考慮到實作成硬體,我們採用QC(Quasi-cyclic)-LDPC碼做為混合編解碼中的LDPC碼;經過分析的結果,我們採用Turbo-decoding message-passing (TDMP)演算法作為LDPC碼的解碼演算法。在分析完快閃記憶體系統之後,我們也針對我們的設計提出了硬體架構;最後將對於我們的與他人的硬體架構作了比較;在相同的硬體環境之下,我們的解碼器只需要相對於其他解碼器十分之一的記憶體,而且解碼器的效能仍滿足快閃記憶體的時間限制;結果顯示我們的混合編解碼較適合快閃記憶體的應用。

    關於未來的展望,我們可以考慮採用歐幾里德幾何(EG)-LDPC碼,EG-LDPC碼對於多層單元快閃記憶體會有更好的錯誤更政能力;另外,編解碼器的硬體架構也還有改善的空間。


    Flash memory, as its rapidly increasing demand recently, suffers from the reliability issue.
    However, due to its non-volatile nature, error correcting codec (ECC) are widely adopted
    for flash memory.
    In this thesis, we design the error correcting codes, including low-density parity-check
    (LDPC) and Bose-Chaudhuri-Hocquenghem (BCH) codes for flash memories. We also establish
    an evaluation framework for the performance analysis among different ECCs. To
    optimize the design parameters of the hybrid codes that integrate LDPC and BCH codes,
    we evaluate the existing hybrid technologies for error correcting scheme of the non-volatile
    memory. We target at the specification of a flash memory with realistic spare capacity
    and timing requirement. Considering the practical hardware implementation, we design and
    evaluate quasi-cyclic (QC) LDPC codes. The cyclic encoding and turbo-decoding messagepassing
    (TDMP) algorithm are analyzed as the encoding and decoding algorithm. With the
    evaluation result for the proposed flash memory system, the hardware architecture of the
    encoder and decoder are also presented. Finally, the comparison of the proposed architecture
    with other works is made. The memory usage of our decoder can be as low as 10%
    of previous work, while the decoding cycle is within the specification of the flash memory
    system. The result shows that our hybrid LDPC and ECC scheme is efficient for non-volatile
    memory.
    Our future work include the study of Euclidean geometric (EG) LDPC codes, the improvement
    of the encoder and decoder architecture and the construction of specific error
    model of dedicate the non-volatile memory.

    1 Introduction 1 1.1 Error correcting codes for non-volatile memories . . . . . . . . . . . . . . . . 1 1.2 Introduction of ECC codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.3 Motivation and contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.4 Thesis organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2 Previous Work and Motivation 5 2.1 AWGN channel model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.2 Error correcting codes overview . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.2.1 BCH codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.2.2 LDPC codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.2.3 Parity check matrix construction of LDPC codes . . . . . . . . . . . . 11 2.2.4 Encoding algorithm of LDPC codes . . . . . . . . . . . . . . . . . . . 20 2.2.5 Decoding algorithm of LDPC codes . . . . . . . . . . . . . . . . . . . 25 2.3 Our observation and motivation . . . . . . . . . . . . . . . . . . . . . . . . . 36 3 The proposed LDPC code for flash memory 37 3.1 Architecture of flash memory . . . . . . . . . . . . . . . . . . . . . . . . . . 37 3.2 Specification of flash memory . . . . . . . . . . . . . . . . . . . . . . . . . . 37 3.3 The proposed LDPC code . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 3.3.1 Parity check matrix selection . . . . . . . . . . . . . . . . . . . . . . 40 3.3.2 Bit node degree decision . . . . . . . . . . . . . . . . . . . . . . . . . 41 3.3.3 Soft information vs. hard information . . . . . . . . . . . . . . . . . . 42 ii 3.3.4 LDPC + BCH decoding . . . . . . . . . . . . . . . . . . . . . . . . . 44 3.3.5 LDPC performance in fixed-number-error model . . . . . . . . . . . . 47 3.3.6 Circulant size of QC-LDPC parity check matrix . . . . . . . . . . . . 49 3.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 4 Architecture Design 52 4.1 CODEC block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 4.2 Encoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 4.2.1 Encoding flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 4.2.2 Circuit implementation for encoder . . . . . . . . . . . . . . . . . . . 53 4.3 Decoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 4.3.1 Decoding flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 4.3.2 R value compact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 4.3.3 Circuit implementation for decoder . . . . . . . . . . . . . . . . . . . 59 5 Experimental Results and Analysis 66 5.1 Memory usage of decoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 5.2 Throughput of decoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 5.3 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 6 Conclusions and future work 70 6.1 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 6.2 Future work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

    DEVICE AND NON-VOLATILE STORAGE SYSTEM”,
    Mar 2008.
    [2] A. Morello, ”DVB-S2: The second generation standard for satellite broad-band services”,
    IEEE, vol. 94, no. 1, pp. 210V227, Jan. 2006.
    [3] A. Hocquenghem, ”Codes correcteurs d’erreurs”, Chiffres (Paris), vol. 2, pp. 147V156,
    September 1959.
    [4] R. C. Bose, and Dwijendra K. Ray-Chaudhuri, ”On A Class of Error Correcting Binary
    Group Codes”, Information and Control, vol 3, pp. 68-79, March 1960.
    [5] R.T. Chien, ”Cyclic Decoding Procedure for the Bose-Chaudhuri-Hocquenghem Codes”,
    IEEE Transactions on Information Theory, vol. IT-10, pp. 357-363, October 1964.
    [6] R. G. Gallager, ”Low density parity check codes,” IRE Transactions on Information
    Theory, vol. IT-8, pp. 21V28, Jan. 1962.
    [7] R. M. Tanner, ”A recursive approach to low complexity codes,” IEEE Transactions on
    Information Theory, pp. 533-547, Sept. 1981.
    [8] Jr. Shu Lin and Daniel J. Costello, ”Error Control Coding”, Pearson, 2004.
    [9] A. Sridharan T.E. Fuja R. Tanner, D. Sridhara and D. Costello Jr, ”Ldpc block and
    convolutional codes based on circulant matrices”, IEEE Transactions on Information
    Theory, vol. 50, no. 12, pp. 2966V2984, Dec. 2004.
    71
    [10] Djurdjevic Lei Chen, Ivana and Shu Lin, ”Near-shannon-limit quasi-cyclic low-density
    parity-check codes”, IEEE Communications Magazine, vol. 52, July 2004.
    [11] X.-Y. Hu, E. Eleftheriou, and D.-M. Arnold, ”Progressive edge-growth Tanner graphs”,
    IEEE Global Telecommunications Conf.(GLOBECOM), San Antonio, TX, Nov. 2001.
    [12] Zongwang Li, and Kumar, B.V.K.V., ”A class of good quasi-cyclic low-density parity
    check codes based on progressive edge growth graph”, sl Thirty-Eighth Asilomar
    Conference on Signals Systems and Computers, vol. 2, pp. 1990V1994, Nov. 2004.
    [13] S. Chang R. Echard, ”The  rotation low-density parity check codes”, GLOBECOM2001
    , pp. 980-84, Nov. 2001.
    [14] T. J. Richardson and R. L. Urbanke, ”Ecient encoding of low-density parity check
    codes”, IEEE Transactions on Information Theory, vol. 47, no. 2, pp. 638-635, Feb.
    2001.
    [15] Z Li, L Chen, L Zeng, S Lin, and WH Fong, ”Efficient encoding of quasi-cyclic lowdensity
    parity-check codes”, IEEE Transactions on Communications, vol. 54, no. 1, pp.
    71V81, Jan. 2006.
    [16] Y. Dai, Z. Yan, and N. Chen, ”High-throughput turbo-sum-product decoding of LDPC
    codes”, CISS 2006, pp. 839V844, Mar. 2006.
    [17] Y. Dai, Z. Yan, and N. Chen, ”Memory Efficient Decoder Architectures for Quasi-Cyclic
    LDPC Codes”, IEEE Transactions on Circuits and Systems I: Regular Papers, vol. 55,
    pp. 2898-2911, Oct. 2008.
    [18] Mansour M.M., and Shanbhag N.R., ”High-throughput LDPC decoders”, vol. 11, pp.
    976-996, Dec. 2003.
    [19] X. Y. Hu, E. Eleftheriou, D. M. Arnold, and A. Dholakia, ”Efficient implementation of
    the sum-product algorithm for decoding LDPC codes”, IEEE Global Telecommunications
    Conference, vol. 2, pp. 25-29, Nov. 2001.
    [20] M. P. C. Fossorier, M. Mihaljevic, and H. Imai, ”Reduced complexity of low-density
    parity check codes based on belief propagation”, IEEE Transactions on Communication,
    vol. 47, no. 5, pp. 673-680. May 1999.
    [21] ”http://www.cs.toronto.edu/sradford/ldpc.software.html”

    無法下載圖示 全文公開日期 本全文未授權公開 (校內網路)
    全文公開日期 本全文未授權公開 (校外網路)

    QR CODE