储存媒体、存取系统及方法

文档序号:6506866阅读:158来源:国知局
储存媒体、存取系统及方法
【专利摘要】本发明提出一种储存媒体,用以接收一主机装置所提供的一写入资料,并提供一读取资料给主机装置,并包括一第一模块以及一第二模块。第一模块包括一第一存储阵列以及一第一控制器。第一存储阵列储存写入资料。第一控制器读取第一存储阵列,用以产生一第一读取结果。第二模块包括一第二存储阵列以及一第二控制器。第二存储阵列储存写入资料。第二控制器用以存取第二存储阵列。当第一读取结果具有一错误,并且第一控制器无法校正错误时,第一控制器要求第二控制器读取第二存储阵列,用以产生一第二读取结果。第二控制器将第二读取结果作为读取资料。
【专利说明】储存媒体、存取系统及方法
【技术领域】
[0001]本发明系有关于一种存取系统,特别是有关于一种具有多个储存模块的存取系统。
【背景技术】
[0002]NAND快闪存储器已经成为现在资料储存的主流,并大幅应用于电子产品中。NAND快闪存储器亦可制作成存储卡或是随身碟。快闪存储卡包括,小型快闪(Compact Flash ;CF)卡、多媒体卡(Multi Media Card ;MMC)、嵌入式多媒体卡(Embedded MultiMedia Card ;eMMC)、智慧媒体(Smart Media ;SM)卡、安全数字(Secured Digital ;SD)卡。
[0003]然而,当快闪存储卡发生异常时,便无法再继续与一主机装置进行沟通。举例而言,当快闪存储卡进行一错误确认校正(ECC)动作时,若动作失败,快闪存储卡将无法把资料传给主机装置,造成主机装置在读取资料时,无法读到正确的资料。

【发明内容】

[0004]本发明提供一种储存媒体,用以接收一主机装置所提供的一写入资料,并提供一读取资料给主机装置,并包括一第一模块以及一第二模块。第一模块包括一第一存储阵列以及一第一控制器。第一存储阵列储存写入资料。第一控制器读取第一存储阵列,用以产生一第一读取结果。第二模块包括一第二存储阵列以及一第二控制器。第二存储阵列储存写入资料。第二控制器用以存取第二存储阵列。当第一读取结果具有一错误,并且第一控制器无法校正错误时,第一控制器要求第二控制器读取第二存储阵列,用以产生一第二读取结果。第二控制器将第二读取结果作为读取资料。
[0005]本发明另提供一种存取系统,包括一主机装置以及一储存媒体。主机装置提供一写入资料或是接收一读取资料。储存媒体与主机装置进行资料传输,并包括一第一模块以及一第二模块。第一模块包括一第一存储阵列以及一第一控制器。第一存储阵列储存写入资料。第一控制器读取第一存储阵列,用以产生一第一读取结果。第二模块包括一第二存储阵列以及一第二控制器。第二存储阵列储存写入资料。第二控制器存取第二存储阵列。当第一读取结果具有一错误,并且第一控制器无法校正错误时,第一控制器要求第二控制器读取第二存储阵列,用以产生一第二读取结果。第二控制器将第二读取结果作为读取资料,提供给主机装置。
[0006]本发明更提供一种存取方法,适用于一储存媒体。储存媒体具有一第一模块以及一第二模块。第一模块具有一第一控制器以及一第一存储阵列。第二模块具有一第二控制器以及一第二存储阵列。本发明的存取方法包括,令第一控制器接收一读取命令,并根据该读取命令,读取第一存储阵列,用以产生一第一读取结果;当第一读取结果具有一错误,并且错误无法被校正时,要求第二控制器读取第二存储阵列,用以产生一第二读取结果,并将第二读取结果作为一读取资料;以及提供读取资料给一主机装置。【专利附图】

【附图说明】
[0007]为让本发明的上述目的、特征和优点能更明显易懂,以下结合附图对本发明的【具体实施方式】作详细说明,其中:
[0008]图1为本发明的存取系统的示意图。
[0009]图2为本发明的储存媒体的一可能实施例。
[0010]图3-6为本发明的存取方法的可能流程图。
[0011]主要元件符号说明:
[0012]100:存取系统;
[0013]110:主机装置;
[0014]120:储存媒体;
[0015]211、221:控制器;
[0016]212、222:存储阵列;
[0017]213、223:错误确认校正引擎;
[0018]311 ?315、411 ?416、511 ?516、611 ?614:步骤;
[0019]M1-Mn:储存模块;
[0020]Vdd, Clock、CMD, DATO ?DAT3:传输线。
【具体实施方式】
[0021]图1为本发明的存取系统的示意图。如图所示,存取系统100包括一主机装置110以及一储存媒体120。主机装置110写入资料至储存媒体120,或是读取储存媒体120所储存的资料。
[0022]本发明并不限定储存媒体120的种类。只要具有储存功能的装置,均可作为储存媒体120。在本实施例中,储存媒体120为一安全数字(Secure Digital ;SD)卡,并且透过一 SD协定,与主机装置110进行资料传输。如图所示,SD协定使用多条传输线Vdd、Clock、CMD、DAT0?DAT3。在其它实施例中,储存媒体120为一嵌入式多媒体卡(EmbeddedMultiMediaCard ;eMMC)。
[0023]在本实施例中,储存媒体120具有储存模块M1?Mn。本发明并不限定储存模块M1?Mn的种类。在一可能实施例中,储存模块M1?Mn均为微型(Micro) SD卡。储存模块M1?Mn具有不同的识别码(Card Identification number)。根据识别码的设定,便可将储存模块M1?Mn的一者预设成一主模块,而其它储存模块均作为子模块。
[0024]举例而言,假设储存模块M1的产品序号为O,而储存模块M2?Mn的产品序号均大于储存模块M1的产品序号,则储存模块M1将被预设成一主模块,而储存模块M2?Mn被预设成子模块。
[0025]在一初始化期间,主机装置110询问储存媒体120是否就绪(ready)。由于储存模块M1为主模块,因此,在储存模块M1?Mn均就绪后,统一由储存模块M1产生一回复讯息给主机装置110。在本实施例中,储存模块M1借由至少一传输线,询问储存模块M2?Mn是否就绪。以SD协定为例,储存模块M1是透过传输线DATl及DAT2与储存模块M2?Mn进行沟通。
[0026]当储存模块M1?Mn之一者未就绪时,储存模块M1发出一未就绪回复给主机装置110。主机装置110将再度发出一询问命令,直到储存模块M1发出一就绪回复。在一可能实施例中,当储存模块M1~Mn均就绪时,储存模块M1将传输线DATO的电位设定成低电位。主机装置110根据传输线DATO的电位,便可得知储存媒体120已就绪。
[0027]在一写入期间,主机装置110发出一写入资料给储存媒体120。待所有模块均储存写入资料后,由储存模块M1产生一回复讯息给主机装置110。在一可能实施例中,当储存模块札~Mn之一者尚未完成写入动作时,储存模块M1将传输线DATO的电位设定成低电位。
[0028]在一读取期间,储存模块M1根据一地址信息,读取本身所储存的资料,并对读取结果进行一错误确认校正动作。当储存模块M1的读取结果不具有错误,或是错误可被校正时,储存模块M1将读取结果作为一读取资料,并透过传输线DATO~DAT3提供给主机装置110。在一可能实施例中,当储存模块M1将传输线DATO~DAT3的地址设定成低电位时,主机装置110便得知储存媒体120已准备输出一读取资料。
[0029]然而,当储存模块M1的读取结果具有一错误,并且此错误无法被校正时,如错误的比特数过多,储存模块M1要求储存模块M2~Mn之一者作为一主模块。在一可能实施例中,若储存模块M2的产品序号小于储存模块M3~Mn时,则储存模块M2作为一新的主模块。
[0030]储存模块M2根据主机装置110所提供的一地址信息,读取本身所储存的资料,并对读取结果进行一错误确认校正动作。当储存模块M2的读取结果不具有错误,或是错误可被校正时,储存模块M2将读取结果作为一读取资料,透过传输线DATO~DAT3提供给主机装置110。此时,储存模块M2将传输线DATO~DAT3的地址设定成低电位,用以表示已备妥一读取资料。
[0031 ] 在一可能实施例中,当储存模块M1要求储存模块M2提供读取资料给主机装置110时,储存模块M2便作为一主模块。此时,储存模块M1可作为一子模块,或是不再使用储存模块 M115
[0032]新的主模块(即储存模块M2)将与主机装置110进行资料传输,直到无法提供正确的资料给主机装置110时,再要求其它子模块(M1或M3~Mn的一者)作为一主模块,继续提供资料给主机装置110。
[0033]在已知的储存媒体中,一旦储存媒体的存储阵列发生异常,主机装置便没有机会读取到正确的资料。然而,由于本发明储存媒体120具有多个储存模块,因此,当主储存模块发生异常时,改由另一模块提供资料给主机装置110,因此,可维持主机装置110与储存媒体120间的资料传输状态。
[0034]在另一可能实施例中,当储存模块M1无法提供正确的资料给主机装置110,并改由储存模块M2提供读取资料给主机装置110时,储存模块M1根据储存模块M2所提供的读取资料,更新本身所储存的资料。因此,更新后的储存模块M1仍可作为一次储存模块。
[0035]本发明并不限定储存模块M1~Mn之间的传输协定。在本实施例中,储存模块M1~Mn之间的传输协定为一 SD协定。在其它实施例中,储存模块M1~Mn之间的传输协定为两线(two wire)的通讯协定,如一内部整合电路(Inter-1ntegrated Circuit ;I2C)协定或是一非同步接收传输( Universal Asynchronous Receiver Transmitter ;UART)协定。
[0036]由于储存模块M1~Mn的内部电路架构均相同,故图2仅显示储存模块M1及仏。图2为本发明的储存媒体的一可能实施例。如图所示,储存模块M1包括一控制器211以及一存储阵列212。储存模块M2包括一控制器221以及一存储阵列222。控制器211用以存取存储阵列212。控制器221用以存取存储阵列222。在一可能实施例中,存储阵列212和222为独立的NAND快闪存储器。因此,存储阵列212和222可共用同一控制器。
[0037]在本实施例中,储存模块札及仏各自还包括一错误确认校正引擎(ErrorChecking and Correcting engine) 213及223。错误确认校正引擎213用以校正控制器211所接收到的资料。错误确认校正引擎223用以校正控制器221所接收到的资料。
[0038]以错误确认校正引擎213为例,控制器211读取存储阵列212所储存的资料,并提供读取结果给错误确认校正引擎213,进行错误校正。错误确认校正引擎213再将校正后的结果回传给控制器211。在一可能实施例中,错误确认校正引擎213整合于控制器211之中。
[0039]在一读取期间,当储存模块M1系为主模块时,控制器211根据一地址信息,读取存储阵列212,用以产生一第一读取结果。控制器211对第一读取结果进行一错误确认校正动作。当第一读取结果不具有错误,或是错误可被校正时,控制器211将第一读取结果作为一读取资料,透过传输线DATO~DAT3提供给主机装置110。
[0040]然而,当第一读取结果具有一错误,并且此错误无法被校正时,如错误的比特数过多,储存模块M1要求储存模块M2作为一主模块。在本实施例中,控制器221读取存储阵列222,并对一第二读取结果进行一错误确认校正动作。当第二读取结果不具有错误,或是错误可被校正时,控制器221将第二读取结果作为一读取资料,透过传输线DATO~DAT3提供给主机装置110。
[0041]在另一可能实施例中,当控制器211无法提供正确的资料给主机装置110,并改由控制器221根据一地址信息,提供资料给主机装置110时,控制器211根据该地址信息,将控制器221所读取到的资 料回存至存储阵列212中。因此,储存模块M1可再重新作为一主模块,或是作为一子模块。
[0042]图3为本发明的存取方法的一可能流程图。本发明的存取方法适用于一储存媒体。以图2为例,储存媒体具有一第一模块M1以及一第二模块M2。第一模块M1具有一第一控制器211以及一第一存储阵列212,第二模块M2具有一第二控制器221以及一第二存储阵列222。在本实施例中,假设第一模块M1为一主模块,而第二模块M2为一子模块。
[0043]首先,接收一读取命令(步骤311)。在一可能实施例中,读取命令是由一主机装置所发出。在本实施例中,由于第一模块M1为主模块,因此,第一控制器211根据读取命令中的一地址信息,读取第一存储阵列212,用以产生第一读取结果。
[0044]判断该第一读取结果是否具有一无法校正的错误(步骤312)。当第一读取结果具有一错误,并且该错误无法被校正时,读取第二模块,用以产生一第二读取结果,并将第二读取结果作为一读取资料(步骤313)。在本实施例中,当第一控制器211无法提供资料时,第一控制器211要求第二控制器221读取第二存储阵列222。因此,第二控制器221根据读取命令中的地址信息,读取第二存储阵列222,用以产生一第二读取结果。
[0045]本发明并不限定第一及第二控制器间的传输协定。第一控制器可根据一安全数字(Secure Digital ;SD)协定、一内部整合电路(Inter-1ntegrated Circuit ;I2C)协定或是一非同步接收传输(Universal Asynchronous Receiver Transmitter ;UART)协定,与第二控制器进行沟通。
[0046]当第一读取结果的错误可被校正时,将第一读取结果作为一读取资料(步骤314)。最后,将读取资料提供给一主机装置(步骤315)。在一可能实施例中,当第一读取结果发生错误,并且无法被校正时,可根据一地址信息,将第二读取结果储存于第一存储阵列中。
[0047]图4为本发明的存取方法的另一可能流程图。在一写入期间,接收一写入资料(步骤411)。在一可能实施例中,写入资料系由一主机装置所提供。在图2中,模块乂及仏储存与入资料。
[0048]接着,判断第一及第二模块是否已闲置(步骤412)。在本实施例中,由于模块M1为主模块,因此,模块M1透过至少一传输线,询问模块M2是否已完成写入动作。在一可能实施例中,模块M1系透过SD协定中的传输线DATl及DAT2,判断模块M2是否已完成写入动作。
[0049]当模块M1及M2均为闲置时,表示模块M1及M2已完成写入动作,因此,发出一完成回复(步骤415),并结束写入动作(步骤416)。在本实施例中,统一由第一模块发出一完成回复给主机装置。在一可能实施例中,当模块M1及M2已完成写入动作时,模块M1将传输线DATO的电位设定成高电位。
[0050]当模块M1及M2尚未闲置时,表不模块M1及M2尚未完成写入动作,因此,发出一未完成回复(步骤413)。在本实施例中,当模块M1及M2未完成写入动作时,模块M1将传输线DATO的电位设定成低电位,并继续储存该写入资料(步骤414)。
[0051]图5为本发明的存取方法的另一可能流程图。首先,接收一询问命令(步骤511)。在本实施例中,询问命令系由一主机装置所发出。主机装置在进行写入及读取动作前,可先发出一询问命令,用以询问储存媒体是否已就绪。
[0052]接着,判断储存媒体是否已就绪(步骤512)。在本实施例中,第一模块系为一主模块,因此,透过传输线DATl及DAT2询问第二模块是否已经就绪。在一可能实施例中,第一模块具有一操作条件寄存器(Operating Conditions Register ;0CR)。操作条件寄存器具有一忙碌比特(busy bit)或称为电源就绪比特(Card power up status bit)。当忙碌比特为I时,表示第一及第二模块已就绪,当忙碌比特为O时,表示第一及第二模块未就绪。第一模块等待所有模块皆就后,将忙碌比特设定为I。主机装置读取第一模块的操作条件寄存器的忙碌比特,便可得知第一及第二模块是否已就绪。
[0053]当储存媒体的第一及第二模块已就绪时,发出一就绪回复(步骤513),并结束初始化动作(步骤514)。在本实施例中,就绪回复就是把操作条件寄存器的忙碌比特设定成
1。在另一可能实施例中,第一模块系利用传输线DATl及DAT2与第二模块沟通。
[0054]当第一或第二模块尚未就绪时,产生一未就绪回复(步骤515),并发出未就绪回复(步骤516)。在本实施例中,步骤515系将第一模块的操作条件寄存器的忙碌比特设定成0,而步骤516系将操作条件寄存器的各比特状态提供给主机装置。主机装置根据操作条件寄存器的忙碌比特,便可得知第一及第二模块尚未就绪,故将再发出一询问命令,直到储存媒体就绪。
[0055]图6为本发明的存取方法的另一可能流程图。在本实施例中,系假设储存媒体为一 SD卡。首先,接收一 SD命令(步骤611)。在其它可能实施例中,一主机装置根据储存媒体的种类,发出相对应的命令,用以初始化储存媒体。
[0056]接着,判断储存媒体是否闲置(步骤612)。在本实施例中,第一模块透过传输线DATl及DAT2,询问第二模块是否已闲置。当第一及第二模块均已闲置时,发出一闲置回复(步骤613)。在一可能实施例中,第一模块令传输线DATO为一闲置电位,如高电位。主机装置根据传输线DATO的电位,便可得知储存媒体是否已闲置。
[0057]当第一或第二模块未闲置时,发出一未闲置回复(步骤614),并回到步骤612,继续判断第一及第二模块是否已就绪。在本实施例中,第一模块令传输线DATO为一忙碌电位,如低电位。
[0058]由于储存媒体具有多个储存模块,每一储存模块储存相同的资料。当一主机装置欲读取储存媒体时,一主储存模块负责与主机装置进行沟通,并与其它储存模块进行沟通。当该主储存模块无法提供正确的资料时,如错误比特过多,改由另一储存模块与主机装置进行沟通。因此,主机装置可正常地进行存取动作。
[0059]除非另作定义,在此所有词汇(包含技术与科学词汇)均属本发明所属【技术领域】中普通技术人员的一般理解。此外,除非明白表示,词汇于一般字典中的定义应解释为与其相关【技术领域】的文章中意义一致,而不应解释为理想状态或过分正式的语态。
[0060]虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的修改和完善,因此本发明的保护范围当以权利要求书所界定的为准。
【权利要求】
1.一种储存媒体,用以接收一主机装置所提供的一写入资料,并提供一读取资料给该主机装置,包括: 一第一模块,包括: 一第一存储阵列,储存该写入资料; 一第一控制器,读取该第一存储阵列,用以产生一第一读取结果;以及 一第二模块,包括: 一第二存储阵列,储存该写入资料;以及 一第二控制器,用以存取该第二存储阵列; 其中,当该第一读取结果具有一错误,并且该第一控制器无法校正该错误时,该第一控制器要求该第二控制器读取该第二存储阵列,用以产生一第二读取结果,该第二控制器将该第二读取结果作为该读取资料,并输出给该主机装置。
2.如权利要求1所述的储存媒体,其特征在于,当该第一控制器可校正该错误时,该第一控制器将该第一读取结果作为该读取资料。
3.如权利要求1所述的储存媒体,其特征在于,当该错误无法校正时,该第二控制器根据一地址信息,读取该第二存储阵列,用以产生该第二读取结果,该第一控制器根据该地址信息,将该第二读取结果储存于该第一存储阵列。
4.如权利要求1所述的储存媒体,其特征在于,在一写入期间,该第一控制器及第二控制器将该写入资料写入该第一存储阵列及第二存储阵列,并且该第一控制器确认该第二控制器是否已将该写入资料写入该第二存储阵列。
5.如权利要求4所述的储存媒体,其特征在于,当第二控制器已将该写入资料写入该第二存储阵列时,该第一控制器发出一回复信号给该主机装置。
6.如权利要求1所述的储存媒体,其特征在于,该第一控制器根据一安全数字协定、一内部整合电路协定或是一非同步接收传输协定,与该第二控制器进行沟通。
7.—种存取系统,包括: 一主机装置,提供一写入资料或是接收一读取资料;以及 一储存媒体,与该主机装置进行资料传输,并包括: 一第一模块,包括: 一第一存储阵列,储存该写入资料; 一第一控制器,读取该第一存储阵列,用以产生一第一读取结果;以及 一第二模块,包括: 一第二存储阵列,储存该写入资料;以及 一第二控制器,用以存取该第二存储阵列; 其中,当该第一读取结果具有一错误,并且该第一控制器无法校正该错误时,该第一控制器要求该第二控制器读取该第二存储阵列,用以产生一第二读取结果,该第二控制器将该第二读取结果作为该读取资料,提供给该主机装置。
8.如权利要求7所述的存取系统,其特征在于,当该第一控制器可校正该错误时,该第一控制器将该第一读取结果作为该读取资料。
9.如权利要求7所述的存取系统,其特征在于,当该错误无法校正时,该第二控制器根据一地址信息,读取该第二存储阵列,用以产生该第二读取结果,该第一控制器根据该地址信息,将该第二读取结果储存于该第一存储阵列。
10.如权利要求7所述的存取系统,其特征在于,在一写入期间,该第一及第二控制器将该写入资料写入该第一及第二存储阵列,并且该第一控制器确认该第二控制器是否已将该写入资料写入该第二存储阵列。
11.如权利要求10所述的存取系统,其特征在于,当第二控制器已将该写入资料写入该第二存储阵列时,该第一控制器发出一回复信号给该主机装置。
12.如权利要求7所述的存取系统,其特征在于,该第一控制器根据一安全数字协定、一内部整合电路协定或是一非同步接收传输协定,与该第二控制器进行沟通。
13.一种存取方法,适用于一储存媒体,该储存媒体具有一第一模块以及一第二模块,该第一模块具有一第一控制器以及一第一存储阵列,该第二模块具有一第二控制器以及一第二存储阵列,该存取方法包括: 令该第一控制器接收一读取命令,并根据该读取命令,读取该第一存储阵列,用以产生一第一读取结果; 当该第一读取结果具有一错误,并且该错误无法被校正时,要求该第二控制器读取该第二存储阵列,用以产生一第二读取结果,并将该第二读取结果作为一读取资料;以及 提供该读取资料给一主机装置。
14.如权利要求13所述的存取方法,还包括: 当该错误可被校正时,将该第一读取结果作为该读取资料。
15.如权利要求13所述的存取方法,还包括: 根据一地址信息,读取该第二存储阵列,用以产生该第二读取结果。
16.如权利要求15所述的存取方法,还包括: 当该错误无法校正时,根据该地址信息,将该第二读取结果储存于该第一存储阵列。
17.如权利要求13所述的存取方法,其特征在于,要求该第二控制器读取该第二存储阵列的步骤是由该第一控制器所执行。
18.如权利要求17所述的存取方法,其特征在于,该第一控制器根据一安全数字协定、一内部整合电路协定或是一非同步接收传输协定,与该第二控制器进行沟通。
【文档编号】G06F13/16GK103809918SQ201310332293
【公开日】2014年5月21日 申请日期:2013年7月30日 优先权日:2012年11月12日
【发明者】刘丞伟, 欧旭斌 申请人:慧荣科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1