基于BCH码的快闪存储器控制器设计BCH

上传人:hs****ma 文档编号:467966240 上传时间:2023-05-13 格式:DOC 页数:42 大小:834KB
返回 下载 相关 举报
基于BCH码的快闪存储器控制器设计BCH_第1页
第1页 / 共42页
基于BCH码的快闪存储器控制器设计BCH_第2页
第2页 / 共42页
基于BCH码的快闪存储器控制器设计BCH_第3页
第3页 / 共42页
基于BCH码的快闪存储器控制器设计BCH_第4页
第4页 / 共42页
基于BCH码的快闪存储器控制器设计BCH_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《基于BCH码的快闪存储器控制器设计BCH》由会员分享,可在线阅读,更多相关《基于BCH码的快闪存储器控制器设计BCH(42页珍藏版)》请在金锄头文库上搜索。

1、.毕 业 论 文设 计论文设计题目:快闪存储器控制器设计姓 名学 号学 院专 业年 级指导教师2012年 5 月4日目录目录1摘要3Abstract4第1章引言51.1 快闪存储器简介51.2 闪存中的纠错码ECC技术51.3 论文的研究容与组织构造6第2章 ECC整体设计82.1 ECC简介82.2 功能要求82.3 本章总结10第3章 BCH码113.1 伽罗华域113.2 BCH码的编码133.3 BCH码的解码163.3.1 伴随式的求解方法163.3.2 错误位置多项式的高速求解法183.3.3 全并行钱氏搜索机203.4 本章总结21第4章 BCH编解码器的设计234.1 BCH编

2、码器234.2 BCH解码器254.2.1 伴随式计算模块264.2.2 错误位置多项式计算模块284.2.3 钱氏搜索机314.3 ECC模块的验证324.4 本章总结33第5章总结35辞36参考文献37附录A 英文翻译原文39附录 B 译文481.1.摘要论文对于 flash存储器控制器的设计,主要是针对于其中的错误检查与纠错ECC模块.ECC模块是存储器控制器的核心模块,主要对输入和输出数据进展编解码并纠正其中的错误。本论文中的ECC模块主要采用了BCH15,7,2码。对于编码采用了线性反响电路移位存放器的方法,对于解码采用了三个模块:伴随式计算模块、错误位置多项式模块和钱氏搜索机。BC

3、H码以其较强的纠错能力和构造方便的优点,在无线寻呼和无线数据通信中被广泛应用。利用单片机用软件的方法实现BCH15,7,2码的ECC模块很多资料都已经介绍。但由于采用单片机以软件的方法实现,其译码器具有速度慢、系统稳定性差等缺点,本论文介绍了采用FPGA设计的采用BCH(15,7,2)码的ECC模块。先对ECC模块进展VHDL代码的编写,然后利用ALTERA的QUARTUS II集成开发环境进展了综合、仿真。采用硬件的方法实现的ECC模块具有速度快、性能稳定以及易于大规模集成等优点。关键词:快闪存储器控制器;ECC模块;BCH码;FPGA;AbstractThis thesis mainly

4、introduced the module of the error correction code(ECC), which is the most important module in the flash controller. The module of ECC can acplish the event that encode the data-in and decode the data-out and correct the error data. The module of ECC use the BCH(15,7,2) code in this thesis. For the

5、encode, the module of linear feedback shift register can make it work. For the decode, it has three modules: finding polynomials, finding the coefficient of the error locator polynomialand chien. Because of its strong ability of correcting errors and convenient construction ,the BCH code is widely u

6、sed in the radio paging and Wireless data munication. Much material has introduced the way of acplishing the BCH(15,7,2) code using the MCU in the software. Because the way of acplishing the code of BCH(15,7,2) using the MCU in the software is very slow and the stability of the system is bad ,this t

7、hesis introduced the BCH(15,7,2) code in the module of ECC designed by FPGA. Firstly, we write the code of VHDL of the module of the ECC, then we will acplish the synthesis and verification and so on. The advantage of using hardware to acplish the module of ECC is the fast speed and good stability a

8、nd easy large-scale integration and so on.Keywords: flash controller ; ECC ; BCH code ; FPGA1.1.1.第1章引言1.1 快闪存储器简介在当今数字技术飞速开展的时代,flash因其非易失性和可擦除性,以及具有更小的体积、更快的写入和擦除速度、更多的可擦除次数以及更低廉的每比特价格等特点得到了迅速开展,在数码相机、手机、移动存储卡、掌上电脑和MP3播放器等设备中得到广泛的使用。随着flash单片存储容量的不断提升和当前flash擦写速度的不断提高,数据存储与读取的可靠性变得越来越低,迫切需要一种实时、高速

9、的技术对flash中存储和读取的数据进展纠错以保证数据的可靠性。在flash的过失类型设计中错误是以位的形式分散在整个数据块中的,所以具有可控、随机错误纠错能力的BCH码适用于flash的纠错。目前大局部flash的PER为,为使PER低于这个行业平安标准,需要的纠错能力为15 bit左右。因此必须提高编码译码器的纠错能力。1.2 闪存中的纠错码ECC技术ECC校验是一种存纠错技术,它是现在比较先进的存错误检查和更正手段。ECC是“Error Checking and Correcting的简写,中文名称是“错误检查和纠正。ECC是一种能够实现“错误检查和纠正的技术,ECC存就是应用了这种技术

10、的存,一般多应用在效劳器及图形工作站上,这将使整个电脑系统在工作时更加趋于平安稳定。在ECC技术出现以前,存中应用最多的是奇偶校验Parity。但Parity有个缺点,当存查到*个数据有错误时,并不一定能确定在哪一个位,也就不一定能修正错误,所以带有奇偶校验的存的主要功能仅仅是“发现错误,并能纠正局部简单的错误。Parity存是通过在原来数据位的根底上增加一个数据位来检查当前8位数据的正确性,但随着数据位的增加Parity用来检验的数据位也成倍增加,就是说当数据位为16位时它需要增加2位用于检验,当数据位为32位时则需增加4位,依此类推。特别是当数据量非常大时,数据出错的几率也就越大,对于只能

11、纠正简单错误的奇偶检验的方法就显得力不从心了,因此出现了一种新的错误检查与纠正ECC技术,这种技术也是在原来的数据位上外加校验位来实现的。不同的是两者增加的方法不一样,这也就导致了两者的主要功能不一样。它与Parity不同的是如果数据位是8位,则需要增加5位来进展ECC错误检查和纠正,数据位每增加一倍,ECC只增加一位检验位,也就是说当数据位为16位时ECC位为6位,32位时ECC位为7位,数据位为64位时ECC位为8位,依此类推,数据位每增加一倍,ECC位只增加一位。总之,在存中ECC能够容许错误,并可以将错误更正,使系统得以持续正常的操作,不致因错误而中断,且ECC具有自动更正的能力。1.

12、3 论文的研究容与组织构造随着快闪存储器工艺技术的不断进步,快闪存储器单元的可靠性严重下降,因此通过设计方法提高系统的可靠性变得愈加严重。纠错码作为一种能够有效提高系统可靠性的技术,虽然广发应用于通信系统中,但快闪存储器在数据存储过程中产生错误的机制与通信系统在数据传输过程中产生错误的机制并不同,因而两者的错误率特点有着明显的差异。随着快闪存储器的不断使用,错误比特率呈现出单调递增的趋势。快闪存储器中的纠错系统必须采用硬件实现。快闪存储器的随机时间短,对解码器的解码延迟,数据吞吐量等指标有着非常苛刻的要求,ECC有更强的纠错性能和动态可调节的能力。论文的后续章节就应用于快闪存储器控制器中的EC

13、C模块进展了深入的分析和研究。采用了BCH(15,7,2)码,可对7位的信息码纠正2比特的错误,生成15位的码字。第1章是引言。第2章主要介绍整个ECC模块的顶层原理图设计,介绍顶层模块的组成以及各个底层模块在顶层模块中的位置和作用。第3章主要介绍ECC模块中BCH编解码器的原理和相应的运算。第4章主要介绍ECC模块中BCH编解码器的电路构造设计,对于编码器采用了线性反响移位存放器的方法,防止了复杂的除法运算。对于解码器采用了三级流水线的方法,先对解码器的三个模块:伴随式计算模块、错误位置多项式计算模块和钱氏搜索机进展设计,再将三个模块与编码器进展连接,并进展了仿真验证。其中,伴随式计算模块采

14、用了线性反响移位存放器的方法;错误位置多项式计算模块采用了基于PETERSON矩阵的直接求解法,整个电路有AND和*OR逻辑实现,设计简单,速度高;钱氏搜索机采用了全并行的方法,由*OR树实现,提高了速度。第5章为本论文的总结。第2章ECC整体设计2.1ECC简介ECC第一次提出是在1948年Claude Shannon的论文“A Mathematical Theory of munication 中,经过几十年的开展,ECC技术目前已广发应用于通信系统、无线应用、光盘存储等领域。ECC技术的原理是:向原始的信息数据中添加冗余位,进展编码;对接收到的信息,利用冗余位能够找出接收信息中的错误位置

15、,并进展纠正,从而恢复原始的存储数据,这个过程也称为解码。纠错码通常分为两大类:线性码和卷积码。线性码的特点是进展数据处理的单位是码字codeword,码字是具有固定长度的信息块。一个n位线性码的码字是由原始的k位信息加上相应的冗余位组成,如图2.1所示。另外,对于线性码,码字中每位信息受到的噪声相互独立,因此码字中的错误具有随机性的特点。相反,卷积码是将信息数据看成连续的比特流,因而卷积进展数据处理的单位是比特。在存储系统中,存储器以码字为单位进展数据的写入和读取操作的,因而采用线性码实现存储系统的纠错。本论文所关注的是线性码在快闪存储器控制器中的应用。本论文所采用的BCH码就是线性码的一种。图2.1 ECC码字的组成2.2 功能要求应用于快闪存储器中的ECC模块主要由编码器和解码器两局部组成。本论文中的ECC技术采用了BCH(15,7,2)码。BCH15,7,2码实现对7位的信息码字进展2位的纠错,生成8位的校验码。将7位的数据写入到闪存时,首先编码器产生相应的冗余位,形成一个15位的码字。读取时,解码器搜索码字中的错误,并在其纠错能力围纠正相应的错误,从而恢复正确的数据信息,输出7位的信息码。论文中的ECC整体设计如图2.2所示。图2.2 快

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号