闪存控制器及其方法技术

技术编号:7251248 阅读:116 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种闪存控制器及其方法,其中该闪存控制器包含闪存接口控制器、主机接口控制器、随机存取存储器接口控制器、错误更正码编码器、错误更正码分割器、错误更正码建构器和一错误更正码解码器。该主机接口控制器发送消息数据至一主机以及自该主机接收消息数据。该错误更正码编码器产生对应至该写入数据的一可变长度的错误更正码。该错误更正码分割器根据该产生的错误更正码的长度切割该产生的错误更正码成多个错误更正码片段,并发送该等错误更正码片段至该闪存接口控制器。该错误更正码建构器合并该等错误更正码片段以建构成一错误更正码。该错误更正码解码器更正读取消息数据的错误,并发送更正后的读取消息数据至该主机接口控制器。

【技术实现步骤摘要】

本专利技术是关于闪存,特别是关于闪存的错误更正码的方法和系统。
技术介绍
由于功能持续的进步,闪存已在各种应用中(例如可携式装置)成为传统马达驱动磁盘外的另一种选择。由于闪存没有机械构件,相较于马达驱动磁盘,闪存具有抗震动、 低功率消耗及高速等优点。然而,闪存仍存在某些限制,其中之一便是闪存内的每一读写单元需在写入前执行消除操作(EraseOperation)以消除前一笔数据。另一限制是闪存内的每一读写单元皆具有消除/写入的次数限制,超过该次数限制将产生位损坏的现象,损害到使用者数据。传统上,闪存可应用错误更正码、平均耗损算法(wear levelingalgorithm)或是损坏区块管理(bad block management)等技术以减少因上述限制所造成的效能降低,并延长闪存的生命期。为应用错误更正码、平均耗损算法或是损坏区块管理等技术,每一快闪页 (闪存中最小的读写单元)皆包含一数据区间(Data Area)和一备用区间(Spare Area), 其中该数据区间储存使用者的数据,而备用区间储存管理数据,包含错误更正码、平均耗损算法或是损坏区块管理等技术所需的数据。然而,闪存必须一次消除一快闪区块(Flash Block),而每一快闪区块包含32个或更多的快闪页(Flash I^age)。因此,若一快闪页的损坏位超过其所能更正的能力,损坏区块管理技术会将整个快闪区块标示为已损坏快闪区块。一旦被标示为已损坏快闪区块,所有位于该损坏快闪区块内的快闪页将无法再被存取。若该损坏快闪区块内的其它快闪页仍具有更正错误能力的话,如此的标示将造成资源浪费。目前有一种方法和系统可根据需求增加错误更正码的长度进而增强错误更正码的能力,以延长闪存的使用寿命。在产生错误更正码后,使用者数据被储存于闪存的一快闪页的数据区间,而该错误更正码并分割(segment)为多个片段并储存于多个快闪页的备用区间。该种方法和系统适用于可切割(partition)其快闪页的备用区间的闪存。然而,对于无法切割其快闪页的备用区间的闪存而言,需要一种更方便的方法和系统。据此,业界所需要的是一种系统及方法,其适用于无法切割其快闪页的备用区间的闪存以延长其使用寿命。
技术实现思路
本专利技术的部分实施例提供了动态分配每一个快闪区块的备用区间的方法。换言之,每一储存于一闪存内的消息数据皆可拥有不同长度的错误更正码数据,故达成根据每一快闪页的特性,付予其不同的错误更正能力。该等不同的错误更正能力可延长闪存的生命期。本专利技术揭示一种闪存控制器,包含一闪存接口控制器、一主机接口控制器、一随机存取存储器接口控制器、一错误更正码编码器、一错误更正码分割器、一错误更正码建构器和一错误更正码解码器。该闪存接口控制器被设置以储存消息数据、错误更正码片段和链接串行(Linked-Iist)至一闪存,以及自该闪存读取消息数据,错误更正码片段和该等链接串行。该主机接口控制器被设置以发送消息数据至一主机以及自该主机接收消息数据。该随机存取存储器接口控制器被设置以储存该等链接串行至一随机存取存储器以及自该随机存取存储器读取该等链接串行。该错误更正码编码器被设置以在操作于一写入操作(Write Operation)时,自该主机接口控制器接收欲写入至该闪存的一写入数据(Write Datum)并产生对应至该写入数据的一可变长度的错误更正码。该错误更正码分割器被设置以在操作于一写入操作时,根据该产生的错误更正码的长度分割该产生的错误更正码成多个错误更正码片段,并发送该等错误更正码片段至该闪存接口控制器。该错误更正码建构器被设置以在操作于一读取操作(Read Operation)时,自该闪存接口控制器接收对应至一自该闪存读取的一读取数据(Read Datum)的多个错误更正码片段,并合并该等错误更正码片段以建构成一错误更正码。该错误更正码解码器被设置以在操作于一读取操作时,根据该读取数据和该建构的错误更正码更正该读取数据的错误,并发送该更正后的读取数据至该主机接口控制器。该等错误更正码片段的链接关系(link relation)被表示于该等链接串行。本专利技术揭示一种写入数据和其对应的错误更正码至一闪存的方法,包含下列步骤自一闪存的至少一延长页(Extended Page)的至少一备用区间(Spare Area)读取一链接串行,其中每一延长页是由多个快闪页(Flash Page)合并而成;根据一欲写入至该闪存的一写入数据产生一错误更正码,其中该错误更正码的长度取决于该链接串行的结点 (node)数目;根据该错误更正码的长度分割该错误更正码成多个错误更正码片段;储存该写入数据至该闪存的一延长页的一延长数据区间(Extended Data Area);以及根据该链接串行储存该等错误更正码片段至该闪存的至少一延长页的多个备用区间。本专利技术揭示一种自一闪存读取数据和其对应的错误更正码的方法,包含下列步骤自一闪存的至少一延长页的至少一备用区间读取一链接串行,其中每一延长页是由多个快闪页合并而成;自该闪存的一延长页的一延长数据区间读取一读取数据;根据该链接串行自该闪存的至少一延长页的多个备用区间读取多个错误更正码片段;合并该等错误更正码片段成一错误更正码;以及根据该读取数据和该错误更正码更正该消息数据。根据本专利技术所提供的,对于容易发生损坏的快闪页而言,本专利技术即通过增加其错误更正码数据的长度加强其错误更正能力。由于每一个快闪页的备用区间的空间有限,每一个编码出的错误更正码数据即加以分割以形成多个错误更正码片段,使其得以储存至多个快闪页的备用区间。如此,不易发生损坏的快闪页可分享其备用区间给容易发生损坏的快闪页。因此,即使在同一个快闪区块的快闪页的损坏率皆不变,其损坏率仍可通过本专利技术加以平衡而延后该快闪区块被标示为损坏快闪区块的时间。上文已经概略地叙述本专利技术的技术特征,俾使下文的详细描述得以获得较佳了解。构成本专利技术的申请专利范围标的的其它技术特征将描述于下文。本专利技术所属
中具有通常知识者应可了解,下文揭示的概念与特定实施例可作为基础而相当轻易地予以修改或设计其它结构或制程而实现与本专利技术相同的目的。本专利技术所属
中具有通常知识者亦应可了解,这类等效的建构并无法脱离所附的申请专利范围所提出的本专利技术的精神和范围。附图说明图1显示本专利技术的一实施例的闪存控制器的示意图;图2显示本专利技术的一实施例的一快闪区块的架构的示意图;图3显示本专利技术的一实施例的共享备用区间的格式的示意图;图4显示本专利技术的一实施例的一种写入数据和其对应的错误更正码至一闪存的方法的流程图;以及图5显示本专利技术的一实施例的一种自一闪存读取消息数据和其对应的错误更正码至的方法的流程图。100闪存系统102闪存控制器104错误更正码控制器106主机接口控制器108闪存接口控制器110随机存取存储器接口控制器1000闪存210错误更正码编码器212错误更正码分割器214错误更正码建构器216错误更正码解码器2000主机300随机存取存储器300快闪区块302快闪页304数据区间306备用区间308延伸页402 ‘410步骤502 ^ 510步骤具体实施例方式本专利技术在此所探讨的方向为一种。为了能彻底地了解本专利技术,将在下列的描述中提出详尽的步骤及组本文档来自技高网
...

【技术保护点】

【技术特征摘要】
...

【专利技术属性】
技术研发人员:钟胜民
申请(专利权)人:财团法人工业技术研究院
类型:发明
国别省市:

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

1
相关领域技术