当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于动态ECC码率调整的方法、装置和系统制造方法及图纸

技术编号:4435816 阅读:206 留言:0更新日期:2012-04-11 18:40
公开了用于动态调整差错控制编码(ECC)码率的方法、装置和系统。在一个实施例中,码率可以从第一码率改变到第二码率,以响应误比特率的改变。

【技术实现步骤摘要】
【国外来华专利技术】专利说明用于动态ECC码率调整的方法、装置和系统
技术介绍
存储器设备的存储和精确保存数据的能力非常重要。随着存储器设备利用工艺缩放技术(scaling of process technology)不断变得越来越小,危害存储数据的完整性的比特错误变得愈加成问题。比特错误在多层单元(MLC)存储器中也可能成为问题,其中一个以上比特存储于单个存储器单元中。 误比特率(BER)对于存储器设备是非静态的,并且当内存被使用时和当存储器单元保存电荷的能力下降时,误比特率会随着时间而改变。 附图说明 从与下列附图结合的以下详细描述,可得到对本专利技术的实施例的更好理解,其中 图1是示出根据一些实施例的用于执行纠错的装置的框图。 图2是示出对于存储器设备的外出错误率(outgoing error rate)相对于码率的图。 图3是示出根据一些实施例的生成不可纠正码字信号的流程图。 图4是示出根据一些实施例的码率的调整的流程图。 图5是示出根据一些实施例的码率的调整的流程图。 图6是根据一些实施例的系统的图示。 具体实施例方式 在下列说明中,提到许多特定细节。但是,应该理解,没有这些特定细节,本专利技术的实施例也可被实现。在其它情况下,公知的电路、结构和技术并没有详细示出,以免混淆对本说明的理解。 对“一个实施例”、“实施例”、“示例实施例”、“各种实施例”等的引用,表示如此描述的本专利技术的实施例可以包括特定特征、结构或特性,但不是每一个实施例都必须包括这些特定特征、结构或特性。此外,一些实施例可具有为其它实施例所描述的特征的一些或全部,或不具有这些特征。 在接下来的说明书和权利要求中,术语“耦合”和“连接”以及它们的派生词可能被使用。应该理解,这些术语并不旨在作为对于彼此的同义词。相反,在特定实施例中,“连接”用于表示两个或更多元件处于与彼此的直接的物理或者电接触中。“耦合”用于表示两个或更多元件彼此交互或合作,但它们可以处于直接的物理或电接触中,或者不必处于直接的物理或电接触中。 如权利要求中所用的,除非另有说明,描述普通元件的序数形容词“第一”、“第二”、“第三”等的使用,仅仅表示正在提及相似元件的不同实例,而并非旨在暗示如此描述的元件在时间上、在空间上、在排列中、或以其它任何方式必须在给定的序列中。 本专利技术的各种实施例可以在硬件、固件和软件之一中实施或在它们的任意组合中实施。本专利技术也可以作为包含于机器可读介质中或其上的指令来实施,这些指令可被一个或多个处理器读取并执行,以使得能够执行本文所述的操作。机器可读介质可包括用于存储、传输、和/或接收机器(例如,计算机)可读形式的信息的任何机制。例如,机器可读介质可包括存储介质,例如但不限于只读存储器(ROM)、随机访问存储器(RAM)、磁盘存储介质、光存储介质;闪速存储器设备等。机器可读介质还可以包括已经被调制以编码指令的传播的信号,例如但不限于电磁的、光的、或声学的载波信号。 术语“无线”和其派生词可用于描述通过使用调制的电磁辐射通过非固体介质传送数据的电路、设备、系统、方法、技术、通信信道等。该术语并非暗示相关设备不包含任何线路,尽管在一些实施例中它们可能确实不包含。术语“移动无线设备”用于描述通信时可以运动的无线设备。 图1示出根据一些实施例的纠错装置的框图。纠错装置包括存储器阵列(102)、耦合到存储器阵列(102)的差错控制编码(ECC)引擎(104)、和耦合到ECC引擎(104)的误比特率监视器(106)。在一些实施例中,存储器阵列(102)、ECC引擎(104)、和误比特率监视器(106)可以位于单个管芯上,例如,在存储器设备上。在其它实施例中,这些组件可以位于单个封装中的不同管芯中。在还有的其它实施例中,存储器阵列可以是存储器设备的一部分,而ECC引擎和误比特率监视器是与存储器设备分离的存储器控制器设备的一部分。其它配置也是可能的。 存储器阵列(102)可以是存储器单元的阵列,例如,非易失性闪速存储器单元。在一些实施例中,非易失性存储器单元可以能够在每个单元存储多于一个比特。例如,存储器单元可以是能够在每个单元中存储两个或更多比特的多层闪速存储器单元(MLC)。在一些实施例中,阵列可以是NAND闪速存储器单元的阵列。但是,应理解,实施例也可适用于其它类型的存储器,包括但不限于,NOR闪速存储器器、相变存储器,或适合于使用ECC部署纠错的任何其它类型的存储器。 存储器阵列既存储信息数据,也存储ECC奇偶数据。这些数据可以用包含信息和奇偶数据的码字的形式来存储。当在本文中使用时,从存储器阵列(102)读取的数据称为外出数据(110)。写入到存储器阵列(102)的数据称为编程数据(112)。 当数据写入到存储器阵列时,ECC引擎(104)计算奇偶数据,并在向存储器阵列作为码字写入数据之前,形成包含信息和奇偶数据的码字。ECC引擎还对先前作为码字编程的外出数据执行纠错。 ECC引擎(104)可使用多个差错控制码之一来形成码字并执行纠错。例如,ECC引擎可使用BCH码或Reed-Solomon码,或可使用另外一种差错控制码。 通常对于分组码(block code)的类别,对于一定范围的码率(即,码字中,信息比特的数量k与总比特数n的比率),ECC引擎(104)能纠正达到预定数量t的错误。对于包含t个或更少错误的码字,这些错误将被ECC引擎(104)纠正,并生成后ECC数据(114)。后ECC数据(114)可包括信息和奇偶比特,以及错误信息。对于可纠正的码字,后ECC信息和奇偶比特将是无错误的,并且关于纠正的错误(如果有)的数量的信息将由ECC引擎(104)生成。例如,在BCH码中,纠正的错误的数量的确定等于错误定位器多项式的阶数。每个码字中纠正的错误的数量可由比特错误监视器(106)用于估计误比特率。 如果码字包含多于t个错误,则码字不能被纠正,并且ECC引擎(104)将发送不可纠正码字信号(116)到误比特率监视器(106)。对于不可纠正的码字,信息和奇偶比特将包含至少一个错误。ECC引擎将不能提供纠正的错误的准确数量,但这个数量将被假设大于t。 在一些实施例中,ECC引擎(104)的码率可以通过增加或减少码字的长度来改变。例如,码字可以从(n)缩短至(n-1),其中1是每个码字中减少的比特数量。通过将码字缩短1比特,码率会从(k/n)改变至(k-1)/(n-1)。因此,无需修改ECC引擎的编码或解码能力,也可改变ECC引擎的码率。 误比特率监视器(106)至少部分地基于从ECC引擎(104)接收的不可纠正码字信号,来动态确定误比特率。如果误比特率偏离期望误比特率达到预定阈值,则误比特率监视器(106)向ECC引擎发送表示码率必须被调整的信号(120)。期望误比特率和预定义阈值都可以是用户可配置的值。 如果由误比特率监视器确定的误比特率大于期望误比特率达到预定阈值,则码率改变信号(120)将表示应该降低ECC引擎的码率。如果由误比特率监视器确定的误比特率小于期望误比特率达到预定阈值,则码率改变信号(120)将表示应该增大ECC引擎的码率。 通过改变ECC引擎的各种参数,可以改变码率,包括,但不限于,改变码字长度或改变最大纠正的数量。在一些实本文档来自技高网...

【技术保护点】
一种方法,包括: 将差错控制编码(ECC)码率从第一码率改变到第二码率以响应误比特率的改变。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:P梁CF曼C翁
申请(专利权)人:英特尔公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1