非挥发性记忆装置及其数据处理方法

文档序号:6599275阅读:175来源:国知局
专利名称:非挥发性记忆装置及其数据处理方法
技术领域
本发明涉及非挥发性内存(non-volatile memory),更具体地说,涉及与非门闪存 (NAND flash memory)及其数据处理方法。
背景技术
由于非挥发性内存,比如闪存,可被电性抹除并重新编程(r印rogram),且具有尺 寸小、省电和低成本等优点,因此广泛地用于各种消费性电子装置中,例如移动电话、数字 相机、个人数字助理(Personal Digital Assistant, PDA)等,作为一般数据储存及传输之用。闪存可分成与非门闪存与或非门闪存(NOR flash memory)。相比于或非门闪存, 与非门闪存的成本较低、记忆容量较大、且具有较快的写入速度及抹除速度。这使得与非门 闪存普遍地作为便携式产品的储存媒介,用以储存各种多媒体数据。一般而言,当存取与非门闪存时,以序列传送的方式来传送欲存取的数据。随着数 据传输速率的不断提升,数据传输时更容易受噪声干扰等问题影响,进而大幅增加数据传 输错误的发生率。在此情况下,由于常用的与非门闪存并无法实时测知数据传输错误的发 生,故无法确知欲存取的地址或数据是否正确。进一步,错误的存取地址或存取数据,还可 能导致与非门闪存进行数据无法回复的错误编程或抹除操作。因此,需要一种适用于与非门闪存的数据处理方法,能够在操作与非门闪存时,实 时地测知传输错误情况的发生,并采取适当的措施,用以提升与非门闪存的可靠性。

发明内容
本发明的实施例提供一种数据处理方法,适用于非挥发性记忆装置。所述非挥发 性记忆装置包括控制器及与非门闪存。首先,由所述控制器将目标命令及对应的目标地址 序列传送至所述与非门闪存。接着,所述与非门闪存根据所述目标地址计算出第一数值。其 次,所述控制器将对应于所述目标地址的循环冗余校验码传送至所述与非门闪存。然后,所 述与非门闪存根据所述第一数值及所述循环冗余校验码进行循环冗余校验,用以判断是否 发生传送错误。在一实施例中,当所述传送错误发生时,设定状态缓存器,以通知所述控制 器重新传送所述目标命令及对应的所述目标地址。另一方面,本发明的实施例提供一种数据处理方法,适用于非挥发性记忆装置。所 述非挥发性记忆装置包括控制器及与非门闪存。首先,所述控制器将读取命令及对应的读 取地址序列传送至所述与非门闪存。接着,所述与非门闪存根据所述读取地址执行读取操 作,并将所读取的既定数据序列传送至所述控制器。其次,所述控制器根据所述既定数据计 算出第一数值。然后,所述与非门闪存将对应于所述既定数据的循环冗余校验码传送至所 述控制器。接下来,所述控制器根据所述第一数值及所述循环冗余校验码进行循环冗余校 验,用以判断是否发生传送错误。在一实施例中,当所述传送错误发生时,所述控制器重新 传送所述读取命令及对应的所述读取地址。
另一方面,本发明的实施例提供一种非挥发性记忆装置。所述非挥发性记忆装置 包括控制器、总线及与非门闪存。所述控制器用以提供目标命令及对应的目标地址。所述 总线用以序列传送所述目标命令及对应的所述目标地址。所述与非门闪存经由所述总线耦 接至所述控制器,包括与非门快闪数组、输入/输出电路及引擎。所述输入/输出电路用以 接收所述目标命令及对应的所述目标地址。所述引擎耦接至所述输入/输出电路,用以根 据所述目标地址计算出第一数值,并根据所述第一数值及由所述控制器所接收且对应于所 述目标地址的循环冗余校验码进行循环冗余校验,用以判断是否发生传送错误。在一实施 例中,当所述传送错误发生时,所述引擎设定状态缓存器,以通知所述控制器重新传送所述 目标命令及对应的所述目标地址。另一方面,本发明的实施例提供一种非挥发性记忆装置。所述非挥发性记忆装置 包括控制器、总线及与非门闪存。所述控制器用以提供读取命令及对应的读取地址。所述 总线用以序列传送所述读取命令及对应的所述读取地址。所述与非门闪存经由所述总线耦 接至所述控制器,包括与非门快闪数组、输入/输出电路及引擎。所述与非门快闪数组用以 根据所述读取地址执行读取操作。所述输入/输出电路用以将由所述与非门快闪数组所读 取的既定数据经由所述总线序列传送至所述控制器。所述引擎耦接至所述输入/输出电 路,用以将对应于所述既定数据的一循环冗余校验码传送至所述控制器。所述控制器根据 所述既定数据计算出第一数值,并根据所述第一数值及所述循环冗余校验码进行循环冗余 校验,用以判断是否发生传送错误。在一实施例中,当所述传送错误发生时,所述控制器重 新传送所述读取命令及对应的所述读取地址。为使本发明的上述目的、特征和优点能更明显易懂,下文特举实施例,并配合所附 图示,详细说明如下。


图1显示依据本发明实施例的非挥发性记忆装置模块图;图2显示依据本发明实施例的数据处理方法流程图;图3显示依据本发明实施例的编程操作时序图;图4显示依据本发明另一实施例的数据处理方法流程图;图5显示依据本发明实施例的抹除操作时序图;图6显示依据本发明另一实施例的数据处理方法流程图;图7显示依据本发明实施例的读取操作时序图。主要组件符号说明10 非挥发性记忆装置 102 控制器104 与非门闪存106 总线110 与非门快闪数组 112 静态存取内存114 控制逻辑电路116 循环冗余校验引擎118 输入/输出电路
具体实施例方式图1显示依据本发明实施例的非挥发性记忆装置10模块图。参考图1的实施例,非挥发性记忆装置10包括控制器102和与非门闪存104。控 制器102用以提供来自于外部主机(未图标)的目标命令及对应的目标地址。控制器102经由总线106,例如通用序列汇排流(Universal SerialBuS,USB),耦接至与非门闪存104, 用以将目标命令及对应的目标地址序列传送至与非门闪存104。在一实施例中,非挥发性记忆装置10可为安全数字(SD)卡、多媒体卡(MMC)、 Micro SD卡、记忆条(MQ卡或高容量记忆条(MS Pro)卡等储存媒介。除此之外,控制器 102与与非门闪存104可各自以集成电路(Integrated Circuit, IC)加以实现。进一步,与非门闪存104包括与非门快闪数组110、静态存取内存(SRAM) 112、控制 逻辑电路114及输入/输出电路118。在一实施例中,与非门快闪数组110可包括多个内存 库(bank),每一内存库均由多个记忆单元(cell)以数组形式所组成。参考图1,控制逻辑电路114从控制器102接收多个存取信号。在一实施例中,存 取信号可包括芯片致能信号(CE#)、命令锁存(latch)致能信号(CLE)、地址锁存致能信号 (ALE)、写入致能信号(WE#)、读取致能信号(RE#)及待命/忙碌信号(R/B#)。输入/输出电 路118经由总线106接收控制器102所发送的目标命令、对应的目标地址或欲写入的数据, 并根据该等存取信号锁存目标命令及对应的目标地址。与非门快闪数组110便根据已锁存 的目标命令及对应的目标地址进行编程(program)操作、读取操作及抹除操作。举例来讲, 当目标命令对应于读取操作时,与非门快闪数组110可根据已锁存的目标地址读取所储存 的数据,并将其暂存于静态存取内存112中。之后,经由总线106,输入/输出电路118将所 读取的数据传送至控制器102。在图1的实施例中,与非门闪存104进一步包括循环冗余校验(CyclicRedundancy Check, CRC)引擎116,耦接至输入/输出电路118。当输入/输出电路118经由总线106接 收控制器所发送的地址或数据后,利用循环冗余校验引擎116,便能够实时地测知地址或数 据传送错误情况的发生,并采取适当的措施,详细操作方式及数据处理流程,将配合图2至 图7的实施例详细说明如下。图2显示依据本发明实施例的数据处理方法20流程图。图3显示依据本发明实 施例的编程操作时序图。参考图1至图3,假设外部主机(未图示)欲将数据写入至非挥发性记忆装置10 中。外部主机先将第一写入命令80h及对应的目标地址ADDRESS发送至控制器102。之后,控制器102便将第一写入命令80h及对应的目标地址ADDRESS经由总线106 序列传送至与非门闪存104的输入/输出电路118(步骤S2(^)。在一实施例中,目标地址 ADDRESS可包括行地址及列地址,用以表示与非门快闪数组110的写入地址。具体地,控制器102进一步地传送写入地址循环冗余校验命令WRITEADDR_CRC至 与非门闪存104。响应于控制器102的写入地址循环冗余校验命令WRITEADDR_CRC,循环冗 余校验引擎116随即根据目标地址ADDRESS计算出第一数值(步骤S204)。接着,控制器102将对应于目标地址ADDRESS的循环冗余校验码,如图3所示的 CRCl,传送至与非门闪存104 (步骤S206)。在一实施例中,第一数值及循环冗余校验码CRCl 均可利用CRC-7多项式来产生,但不限于此。之后,循环冗余校验引擎116根据第一数值及循环冗余校验码CRCl进行循环冗余 校验,用以判断是否发生传送错误(步骤S208)。在一实施例中,当第一数值与循环冗余校验码CRC 1相符时,则表示所接收到的 目标地址ADDRESS正确。反之,当第一数值与循环冗余校验码CRCl不相符时,则表示由于总线106异常或噪声干扰等问题所导致的传送错误,可能使得目标地址ADDRESS在传送过 程中发生遗失或损坏的情况。具体地,当循环冗余校验失败时,亦即发生传送错误时,循环冗余校验引擎116随 即设定一状态缓存器(未图示),用以通知控制器102重新传送第一写入命令80h及目标地 址 ADDRESS。另一方面,当循环冗余校验成功时,经由总线106,控制器102将写入数据DATA_IN 序列传送至与非门闪存104的输入/输出电路118(步骤S210)。在一实施例中,可将写入 数据DATA_IN暂存于静态存取内存112中。之后,控制器102进一步地传送一写入数据循环冗余校验命令WRITEDATA_CRC至 与非门闪存104。同样地,响应于控制器102的写入数据循环冗余校验命令WRITEDATA_CRC, 循环冗余校验引擎116随即根据写入数据DATA_IN计算出第二数值(步骤S212)。接着,控制器102将对应于写入数据DATA_IN的循环冗余校验码,如图3所示的 CRC2,传送至与非门闪存104 (步骤S214)。在一实施例中,第二数值及循环冗余校验码CRC2 均可利用CRC-7多项式来产生,但不限于此。再者,循环冗余校验引擎116根据第二数值及循环冗余校验码CRC2进行第二次循 环冗余校验,用以判断是否发生传送错误(步骤S216)。类似地,当第二数值与循环冗余校 验码CRC2的循环冗余校验失败时,即发生传送错误时,循环冗余校验引擎116随即设定状 态缓存器,用以通知控制器102重新传送第一写入命令80h及目标地址ADDRESS。当第二次循环冗余校验成功时,表示控制器102传送目标地址ADDRESS及写入数 据DATA_IN的过程中并没有发生任何数据传送错误。在此情况下,控制器102发送第二写 入命令IOh至与非门闪存104。响应于第二写入命令10h,与非门快闪数组110根据待命/ 忙碌信号R/B#的指示执行一编程操作(步骤S218)。换言之,与非门快闪数组110依序将 写入数据DATA_IN写入至目标地址ADDRESS。待编程操作完成之后,控制器102接着传送读 取状态命令70h至与非门闪存104,用以读取状态缓存器的状态值REG。通过状态缓存器的 状态值REG,便可以通知控制器102是否发生传送错误及数据是否成功写入。图4显示依据本发明另一实施例的数据处理方法40流程图。图5显示依据本发 明实施例的抹除操作时序图。参考图1、图4及图5,假设外部主机(未图示)欲抹除储存于非挥发性记忆装置 10的特定数据。外部主机先将第一抹除命令60h及对应的目标地址ADDRESS发送至控制器 102。类似地,控制器102将第一抹除命令50h及对应的目标地址ADDRESS经由总线106 序列传送至与非门闪存104的输入/输出电路118(步骤S402)。然后,控制器102传送抹除地址循环冗余校验命令ERASEADDR_CRC至与非门闪存 104。响应于抹除地址循环冗余校验命令ERASEADDR_CRC,循环冗余校验引擎116随即根据 目标地址ADDRESS计算出第一数值(步骤S404)。接着,控制器102将对应于目标地址ADDRESS的循环冗余校验码,如图5所示的 CRC3,传送至与非门闪存104 (步骤S406)。在一实施例中,第一数值及循环冗余校验码CRC3 均可利用CRC-7多项式来产生,但不限于此。之后,循环冗余校验引擎116根据第一数值及循环冗余校验码CRC3进行循环冗余校验,用以判断是否发生传送错误(步骤S408)。当循环冗余校验失败时,循环冗余校验引擎116设定状态缓存器的状态值REG,用 以通知控制器102重新传送第一抹除命令60h及目标地址ADDRESS。另一方面,当循环冗余校验成功时,控制器102发送第二抹除命令DOh至与非门 闪存104。响应于第二抹除命令DOh,与非门快闪数组110根据待命/忙碌信号R/B#的指 示对目标地址ADDRESS进行一抹除操作(步骤S410)。如上所述,抹除操作完成后,控制器 102传送读取状态命令70h至与非门闪存104,用以读取状态缓存器的状态值REG。通过状 态缓存器的状态值REG,便可以通知控制器102是否发生传送错误及是否成功抹除目标地 址 ADDRESS。图6显示依据本发明另一实施例的数据处理方法60流程图。图7显示依据本发 明实施例的读取操作时序图。参考图1、图6及图7,假设外部主机(未图示)欲读取储存于非挥发性记忆装置 10的既定数据。外部主机先将读取命令OOh及对应的读取地址ADDRESS发送至控制器102。类似地,控制器102将读取命令OOh及对应的读取地址ADDRESS经由总线106序 列传送至与非门闪存104的输入/输出电路118(步骤S602)。接下来,与非门快闪数组110根据待命/忙碌信号R/B#的指示对读取地址 ADDRESS进行一读取操作,并将所读取的既定数据暂存于静态存取内存112中。之后,输入/ 输出电路112将既定数据DATA_0UT经由总线106序列传送至控制器102 (步骤S604)。同 时,控制器102还根据所接收的既定数据DATA_0UT计算出第一数值(步骤S606)。进一步,控制器102传送读取数据循环冗余校验命令READDATA_CRC至与非门闪存 104。响应于读取数据循环冗余校验命令READDATA_CRC,循环冗余校验引擎116随即将对 应于既定数据DATA_0UT的循环冗余校验码,如图7所示的CRC4,传送至控制器102(步骤 S608)。在一实施例中,第一数值及循环冗余校验码CRC4均可利用CRC-7多项式来产生,但 不限于此。之后,控制器102根据第一数值及循环冗余校验码CRC4进行循环冗余校验,用以 判断是否发生传送错误(步骤S610)。当循环冗余校验失败时,控制器102便重新传送读取命令OOh及对应的读取地址 ADDRESS。综上所述,依据本发明实施例所提供的非挥发性记忆装置,如与非门闪存,及其数 据处理方法,能够通过循环冗余校验的方式,实时地测知传输错误情况的发生,并采取适当 的措施,例如通知控制器或主机重新传送数据。此方式不仅能与现存的储存媒体协议保持 回溯兼容性(backwardcompatibility),同时还能提升与非门闪存的可靠性。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何本领域的 技术人员,在不脱离本发明的精神和范围内,可做些许修改与变化,因此本发明的保护范围 当以权利要求所界定的为准。
权利要求
1.一种数据处理方法,其特征在于,适用于非挥发性记忆装置,其中,所述非挥发性记 忆装置包括控制器及与非门闪存,所述数据处理方法包括由所述控制器将目标命令及对应的目标地址序列传送至所述与非门闪存; 所述与非门闪存根据所述目标地址计算出第一数值;所述控制器将对应于所述目标地址的循环冗余校验码传送至所述与非门闪存; 所述与非门闪存根据所述第一数值及所述循环冗余校验码进行循环冗余校验,用以判 断是否发生传送错误;及当所述传送错误发生时,设定状态缓存器,以通知所述控制器重新传送所述目标命令 及对应的所述目标地址。
2.根据权利要求1所述的数据处理方法,其特征在于,其中,所述与非门闪存计算所述 第一数值,以回应于由所述控制器所接收的第一循环冗余校验命令。
3.根据权利要求1所述的数据处理方法,其特征在于,还包括 判断所述目标命令是否为写入命令;当所述目标命令为所述写入命令时,所述控制器将所述写入命令所对应的写入数据序 列传送至所述与非门闪存;所述与非门闪存根据所述写入数据计算出第二数值;所述控制器将对应于所述写入数据的另一循环冗余校验码传送至所述与非门闪存; 所述与非门闪存根据所述第二数值及所述另一循环冗余校验码进行循环冗余校验,用 以判断是否发生所述传送错误;及当所述传送错误发生时,设定所述状态缓存器,以通知所述控制器重新传送所述写入 命令及对应的所述目标地址。
4.根据权利要求3所述的数据处理方法,其特征在于,其中,所述与非门闪存计算所述 第二数值,以回应于由所述控制器所接收的第二循环冗余校验命令。
5.根据权利要求3所述的数据处理方法,其特征在于,还包括当所述目标地址及所述写入数据传送无误时,所述与非门闪存根据所述写入命令所对 应的所述目标地址及所述写入数据执行编程操作。
6.根据权利要求1所述的数据处理方法,其特征在于,还包括 判断所述目标命令是否为抹除命令;当所述目标命令为所述抹除命令且所述目标地址传送无误时,所述与非门闪存根据所 述目标地址执行抹除操作。
7.一种数据处理方法,其特征在于,适用于一非挥发性记忆装置,其中,所述非挥发性 记忆装置包括控制器及与非门闪存,所述数据处理方法包括所述控制器将读取命令及对应的读取地址序列传送至所述与非门闪存; 所述与非门闪存根据所述读取地址执行读取操作,并将所读取的既定数据序列传送至 所述控制器;所述控制器根据所述既定数据计算出第一数值;所述与非门闪存将对应于所述既定数据的循环冗余校验码传送至所述控制器; 所述控制器根据所述第一数值及所述循环冗余校验码进行循环冗余校验,用以判断是 否发生传送错误;及当所述传送错误发生时,所述控制器重新传送所述读取命令及对应的所述读取地址。
8.根据权利要求7所述的数据处理方法,其特征在于,其中,所述与非门闪存将所述循 环冗余校验码传送至所述控制器,以回应于由所述控制器所接收的循环冗余校验命令。
9.一种非挥发性记忆装置,其特征在于,包括控制器,用以提供目标命令及对应的目标地址;总线,用以序列传送所述目标命令及对应的所述目标地址;及与非门闪存,经由所述总线耦接至所述控制器,包括与非门快闪数组;输入/输出电路,用以接收所述目标命令及对应的所述目标地址;及引擎,耦接至所述输入/输出电路,用以根据所述目标地址计算出第一数值,并根据所 述第一数值及由所述控制器所接收且对应于所述目标地址的循环冗余校验码进行循环冗 余校验,用以判断是否发生传送错误,其中,当所述传送错误发生时,所述引擎设定状态缓存器,以通知所述控制器重新传送 所述目标命令及对应的所述目标地址。
10.根据权利要求9所述的非挥发性记忆装置,其特征在于,其中,所述引擎计算所述 第一数值,以回应于由所述控制器所接收的第一循环冗余校验命令。
11.根据权利要求9所述的非挥发性记忆装置,其特征在于,其中,所述输入/输出电路 进一步判断所述目标命令是否为写入命令,而当所述目标命令为所述写入命令时,所述输 入/输出电路经由所述总线从所述控制器接收所述写入命令所对应的写入数据,用以使所 述引擎根据所述写入数据计算出第二数值,并根据所述第二数值及由所述控制器所接收且 对应于所述写入数据的另一循环冗余校验码进行循环冗余校验,以判断是否发生所述传送 错误,且其中,当所述传送错误发生时,所述引擎设定所述状态缓存器,以通知所述控制器 重新传送所述目标命令及对应的所述目标地址。
12.根据权利要求11所述的非挥发性记忆装置,其特征在于,其中,所述引擎计算所述 第二数值,以回应于由所述控制器所接收的第二循环冗余校验命令。
13.根据权利要求11所述的非挥发性记忆装置,其特征在于,其中,当所述目标地址及 所述写入数据传送无误时,所述与非门快闪数组根据所述写入命令所对应的所述目标地址 及所述写入数据执行编程操作。
14.根据权利要求9所述的非挥发性记忆装置,其特征在于,其中,所述输入/输出电路 进一步判断所述目标命令是否为抹除命令,而当所述目标命令为所述抹除命令且所述目标 地址传送无误时,所述与非门快闪数组根据所述目标地址执行抹除操作。
全文摘要
本发明涉及非挥发性记忆装置及其数据处理方法。非挥发性记忆装置包括控制器和与非门闪存。首先,由控制器将目标命令及对应的目标地址序列传送至与非门闪存。接着,与非门闪存根据目标地址计算出第一数值。其次,控制器将对应于目标地址的循环冗余校验码传送至与非门闪存。然后,与非门闪存根据第一数值及该循环冗余校验码进行循环冗余校验,用以判断是否发生传送错误。当传送错误发生时,设定状态缓存器,以通知控制器重新传送目标命令及对应的目标地址。
文档编号G06F11/08GK102147753SQ20101012574
公开日2011年8月10日 申请日期2010年2月10日 优先权日2010年2月10日
发明者欧旭斌 申请人:慧荣科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1