用于一存储器元件产生一低级错误更正码的控制器及其方法技术

技术编号:3089108 阅读:198 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种用于一存储器元件产生一低级错误更正码的控制器及其方法。该存储器元件仅支持利用低级ECC技术的闪存,例如SLC(single-level cell;单电平储存格)闪存。借助一具有一ECC引擎的控制器,该存储器元件可在从利用高级ECC技术的闪存(例如MLC(multi-level cell;多电平储存格)读取数据时,直接为自身产生一正确的ECC。借此,该存储器元件亦可支持利用高级ECC技术的闪存,并缩短数据读取时间。

【技术实现步骤摘要】

本专利技术是关于一种用于一存储器元件产生一低级错误更正码(error-correction-code; ECC)的控制器及其方法。更具体说,本专利技术是关于一种 用于一仅支持低级ECC技术的存储器元件产生一 ECC的控制器及其方法。
技术介绍
错误更正码(error-correction-code; ECC)已应用达数十年之久,且于多种应 用中具有优良的追踪记录。举例而言, 一利用单电平储存格(single-level cell; SLC) 技术的闪存是使用汉明(Hamming) ECC,用以执行1位错误更正。控制该闪存的 一主机要求自该闪存传送至该主机的数据须携带一 HM ECC,使主机随即可根据 该HMECC更正该数据(若需要)。然而,当对闪存应用高级且更复杂的技术时, 例如利用使各闪存储存格储存二或更多数据位的多电平储存格(multilevel-cell; MLC)技术时,HMECC等低级ECC技术便无法执行一更正追踪记录功能以及提 供用以更正数据的足够信息(若需要)。因此,已逐渐地普遍使用例如罗德索罗门 (Reed-Solomon; RS) ECC等高级ECC技术以为高级快闪技术提供8位错误更正 能力。对于例如MMC 2.0及SD 2.0等某些快闪存储卡规范,应用高级ECC的闪存 元件可于传送数据至主机前更正该数据。因此,传送至主机的数据不需要一ECC。 然而,为满足彼等期望数据带有一ECC的主机的要求,具有高级ECC的闪存元件 仍须产生一ECC,且可能会出现某些问题。举例而言,当一主机自一闪存元件读取数据、且该主机需要具有一ECC才能 更正读取数据时,该闪存元件便须提供ECC。在图1中,数据10是来自闪存,且包含主要数据11、备用数据12、以及一 RS ECC13。数据10被传送至闪存元件的一控制器20,由控制器20处理数据10 并输出已处理的数据30至主机。数据30包含主要数据31、备用数据32以及一HM ECC 33。控制器20包含一缓冲器21、 一备用寄存器22、 一ECC引擎23、以及一 HM ECC编码器24。主要数据11是传送至缓冲器21及ECC引擎23,备用数据12则 传送至备用寄存器22及ECC引擎23。 RS ECC 13是传送至ECC引擎23。 ECC引 擎23接收到主要数据11、备用数据12及RSECC 13后,产生一更新讯息104至 缓冲器21及备用寄存器22,以用于分别更正主要数据ll及备用数据12。由于主机需要一 HM ECC,故HM ECC编码器24随即根据分别来自缓冲器 21与备用寄存器22的已更新的主要数据及已更新的备用数据,产生HMECC33。 控制器20输出已更新的主要数据作为已更新的主要数据31 ,并输出已更新的备用 数据作为已更新的备用数据32。主机随后撷取已更新的主要数据31、已更新的备 用数据32、以及HMECC33。现有技术耗用二次错误更正算法运算,非常耗费运 算时间。因此,如何产生一正确的ECC、且不会浪费较多时间不止一次地读取数据, 对于一仅支持低级ECC技术的存储器元件而言甚为重要。
技术实现思路
本专利技术的主要目的在于提供一种用于根据一高级ECC为一存储器元件产生一 低级ECC的控制器。本专利技术的另一目的在于提供一种用于根据一高级ECC为一存储器元件产生一 低级ECC的方法。为达成前述目的,借助一具有一应用高级ECC技术的ECC引擎的控制器,该 存储器元件可在自存储器读取数据时直接为其自身产生一正确ECC。且该控制器 亦根据该高级ECC,产生一低级ECC。因此,该存储器元件亦可支持利用高级ECC 技术的存储器,并缩短数据读取时间。下面将配合附图对本专利技术的较佳实施例进行详细的说明,以便所属
具 有通常知识者可更清楚了解本专利技术的其它目的,以及本专利技术的技术手段及实施态 样,其中附图说明图1是先前技术于数据读取周期中的方块图; 图2是本专利技术于数据读取周期中的方块图;以及图3是本专利技术于数据写入周期中的方块图。 具体实施例方式以下将通过实施例来阐述本专利技术,其是根据一高级ECC而产生一低级ECC。 然而,本专利技术的实施例并非仅限于任何特定的环境、应用或实施方式。因此,下文 关于实施例的说明仅为阐释本专利技术的目的,而非用以限制本专利技术。图2例示应用本专利技术、通过一控制器处理从一存储器元件至一主机的数据(亦 即读取步骤)的方块图。该实施例是以一闪存元件为例,然而,其并非用以限制本 专利技术,任何需要一低级ECC的存储器元件皆可应用本专利技术。该闪存元件可是一尖 端数字图像卡(extreme Digital Picture card, xD card)、一智能型媒体卡(Smart Media card)或一存储棒卡(Memory Stick card)。该闪存元件应用一高级错误更正算法 (在此处是一罗德索罗门(RS)算法)来产生一RS ECC及一低级ECC (此处是 一HMECC)。在其它实施例中,该高级错误更正算法可是一博斯-乔赫里-霍克文 黑姆(Bose-Chaudhury-Hocquenghem; BCH)算法或其它恰当算法。一控制器50自该闪存元件接收数据40,并将数据40处理成已更新的数据60, 以供传送至主机。数据40包含主要数据41、备用数据42以及一RS ECC 43。控 制器50包含一缓冲器51、 一备用寄存器52以及一ECC引擎53。已更新的数据 60包含已更新的主要数据61、已更新的备用数据62以及一HMECC63。ECC引擎53还包含一 RS ECC译码器532、 一 HM ECC编码器533以及一 RS ECC编码器531 ,其中RS ECC译码器532及HM ECC编码器533是用于读取 步骤,而RS ECC编码器531则用于写入步骤。缓冲器51及RS ECC译码器532 二者皆接收主要数据41 ,备用寄存器52及RS ECC 532 二者皆接收备用数据42, 且RS ECC译码器532亦接收RS ECC 43。接着,RS译码器532根据RS ECC 43, 依照一 RS算法译码该主要数据41及备用数据42,并产生更新讯息至缓冲器51、 备用寄存器52及HMECC编码器533,以用于分别更新该主要数据、更新该备用 数据以及产生HMECC63。下文将详细说明如何产生已更新的主要数据61、已更 新的备用数据62、以及HMECC63。根据RSECC43, RSECC译码器532可依照一相应的译码算法(于本实施例 中是一 RS算法)侦测主要数据41及备用数据42的错误地址,并产生一更新讯息 504,该更新讯息504记录主要数据11及备用数据42的所有错误地址。最后,RS ECC译码器532输出该更新讯息504至缓冲器51及备用寄存器52以用于修正数据,并输出至HMECC编码器533以用于产生正确的HMECC。然后,输出己更新的主要数据并将其标记为已更新的主要数据61,且然后输 出已更新的备用数据并将其标记为已更新的备用数据62。因主要数据41与备用数 据42 二者皆借助RS ECC译码器532所产生的更新讯息504得到更新,故已更新 的主要数据61与已更新的备用数据62二者皆包含无错误数据,因为更新讯息504 可较图1的更新讯息104提供更多的错本文档来自技高网
...

【技术保护点】
一种用于一存储器元件产生一低级错误更正码的方法,该方法包含下列步骤: 由该存储器元件接收一数据,其中该数据包含一主要数据、一备用数据及一高级错误更正码; 根据该高级错误更正码,利用一译码算法侦测该主要数据及该备用数据的多个错误地址; 根据这些多个错误地址,产生一更新讯息;以及 根据该更新讯息,产生该低级错误更正码。

【技术特征摘要】
US 2007-9-11 60/971,328;US 2008-4-15 12/103,1601. 一种用于一存储器元件产生一低级错误更正码的方法,该方法包含下列步骤由该存储器元件接收一数据,其中该数据包含一主要数据、一备用数据及一高级错误更正码;根据该高级错误更正码,利用一译码算法侦测该主要数据及该备用数据的多个错误地址;根据这些多个错误地址,产生一更新讯息;以及根据该更新讯息,产生该低级错误更正码。2. 根据权利要求1所述的方法,其特征在于还包含借助该更新讯息以更新该 主要数据及该备用数据的步骤。3. 根据权利要求2所述的方法,其特征在于已更新的该主要数据及己更新的 该备用数据包含无错误数据。4. 根据权利要求3所述的方法,其特征在于该低级错误更正码代表无错误的 已更新的该主要数据及该备用数据。5. —种用于一存...

【专利技术属性】
技术研发人员:许胜一
申请(专利权)人:慧荣科技股份有限公司
类型:发明
国别省市:71[中国|台湾]

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

1