CN112965670A - 主机存储器缓冲区管理方法、存储装置与控制电路单元 - Google Patents

主机存储器缓冲区管理方法、存储装置与控制电路单元 Download PDF

Info

Publication number
CN112965670A
CN112965670A CN202110438051.2A CN202110438051A CN112965670A CN 112965670 A CN112965670 A CN 112965670A CN 202110438051 A CN202110438051 A CN 202110438051A CN 112965670 A CN112965670 A CN 112965670A
Authority
CN
China
Prior art keywords
memory
storage device
host
memory storage
buffer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110438051.2A
Other languages
English (en)
Other versions
CN112965670B (zh
Inventor
贺孝淇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Phison Electronics Corp
Original Assignee
Phison Electronics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Phison Electronics Corp filed Critical Phison Electronics Corp
Priority to CN202110438051.2A priority Critical patent/CN112965670B/zh
Publication of CN112965670A publication Critical patent/CN112965670A/zh
Application granted granted Critical
Publication of CN112965670B publication Critical patent/CN112965670B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明提供一种主机存储器缓冲区管理方法、存储器存储装置与存储器控制电路单元。所述方法包括:检测是否发生系统异常;响应于判断发生系统异常,将存储于主机系统的数据缓冲区中的第一指令及对应第一指令的第一数据复制至存储器存储装置中;在复制完第一指令及第一数据后执行初始化操作,其中初始化操作对存储器存储装置的部分硬件电路进行初始化,对另一部分硬件电路不进行初始化;以及在初始化存储器存储装置的部分硬件电路后,重新执行存储于存储器存储装置中的第一指令。

Description

主机存储器缓冲区管理方法、存储装置与控制电路单元
技术领域
本发明涉及一种存储器缓冲区配置技术,尤其涉及一种主机存储器缓冲区管理方法、存储器存储装置与存储器控制电路单元。
背景技术
数码相机、移动电话与MP3播放器在这几年来的成长十分迅速,使得消费者对存储媒体的需求也急速增加。由于可复写式非易失性存储器模块(rewritable non-volatilememory module)(例如,快闪存储器)具有数据非易失性、省电、体积小,以及无机械结构等特性,所以非常适合内建于上述所举例的各种可携式多媒体装置中。
对于不同功能的存储器存储装置,为了能够完全发挥存储器存储装置提高电子设备性能的作用,目前主机系统已具备为存储器存储装置提供主机存储器缓冲区(hostmemory buffer,HMB)的功能。例如存储空间为1TB的SSD(Solid State Drives)固态硬盘,主机系统例如提供存储空间大小约为1GB作为其主机存储器缓冲区。
然而,当主机存储器缓冲区的数据出现错误时,为了确保存储器存储装置的稳定性,一般会选择放弃主机存储器缓冲区所存储的数据,并重置(reset)存储器存储装置。但是,此做法会让主机系统发现存储器存储装置有异常状况。
发明内容
本发明提供一种主机存储器缓冲区管理方法、存储器存储装置与存储器控制电路单元,能够对主机存储器缓冲区的数据发生不预期的错误时进行补救,并提升存储器的运作效率。
本发明提供一种主机存储器缓冲区管理方法,适用于主机系统及存储器存储装置,所述主机系统包括主机存储器缓冲区及数据缓冲区,所述存储器存储装置包括可复写式非易失性存储器模块。所述方法包括:检测是否发生系统异常;响应于判断发生所述系统异常,将存储于所述主机系统的所述数据缓冲区中的第一指令及对应所述第一指令的第一数据复制至所述存储器存储装置中;在复制完所述第一指令及所述第一数据后执行初始化操作,其中所述初始化操作对所述存储器存储装置的部分硬件电路进行初始化,对另一部分硬件电路不进行初始化;以及在初始化所述存储器存储装置的所述部分硬件电路后,重新执行存储于所述存储器存储装置中的所述第一指令。
在本发明的一范例实施例中,在响应于判断发生所述系统异常,将存储于所述主机系统的数据缓冲区中的所述第一指令及对应所述第一指令的所述第一数据复制至所述存储器存储装置中的步骤之前,所述方法还包括:载入所述存储器存储装置的选项只读存储器的初始化程序至所述主机系统的随机存取存储器;以及执行所述初始化程序,以在所述主机系统的所述随机存取存储器中配置连续实体地址给所述存储器存储装置作为所述存储器存储装置的所述主机存储器缓冲区。其中所述主机存储器缓冲区用于存储逻辑至实体映射表。
在本发明的一范例实施例中,上述的存储器存储装置不包括动态随机存取存储器。
在本发明的一范例实施例中,上述的系统异常包括所述主机系统不正常的重新启动或断电。
在本发明的一范例实施例中,上述的系统异常包括所述主机存储器缓冲区中存储的逻辑至实体映射表存在错误。
在本发明的一范例实施例中,上述的方法还包括:根据一映射表状态标记判断所述主机存储器缓冲区中存储的逻辑至实体映射表是否存在错误。其中所述映射表状态标记由所述主机系统根据循环冗余校验比特确认所述主机存储器缓冲区中存储的所述逻辑至实体映射存在错误时产生。
在本发明的一范例实施例中,上述的部分硬件电路包括所述存储器存储装置中用以耦接至所述可复写式非易失性存储器模块的存储器接口,上述的另一部分硬件电路包括所述存储器存储装置中用以耦接至所述主机系统的主机接口。
在本发明的一范例实施例中,在初始化所述存储器存储装置的所述部分硬件电路后,重新执行存储于所述存储器存储装置中的所述第一指令的步骤包括:在初始化所述存储器存储装置的所述部分硬件电路后,根据所述可复写式非易失性存储器模块中的数据来重新建立逻辑至实体映射表;以及根据重新建立的所述逻辑至实体映射表重新执行存储于所述存储器存储装置中的所述第一指令。
本发明提供一种存储器存储装置,包括连接接口单元、可复写式非易失性存储器模块以及存储器控制电路单元。所述连接接口单元用以电性连接至主机系统,所述主机系统包括主机存储器缓冲区及数据缓冲区。所述存储器控制电路单元耦接至所述连接接口单元与所述可复写式非易失性存储器模块。所述存储器控制电路单元用以检测是否发生系统异常。所述存储器控制电路单元还用以响应于判断发生所述系统异常,将存储于所述主机系统的所述数据缓冲区中的第一指令及对应所述第一指令的第一数据复制至所述存储器存储装置中。所述存储器控制电路单元还用以在复制完所述第一指令及所述第一数据后执行初始化操作,其中所述初始化操作对所述存储器存储装置的部分硬件电路进行初始化,对另一部分硬件电路不进行初始化。并且,所述存储器控制电路单元还用以在初始化所述存储器存储装置的所述部分硬件电路后,重新执行存储于所述存储器存储装置中的所述第一指令。
在本发明的一范例实施例中,上述的存储器存储装置还包括选项只读存储器。并且在响应于判断发生所述系统异常,将存储于所述主机系统的数据缓冲区中的所述第一指令及对应所述第一指令的所述第一数据复制至所述存储器存储装置中的运作之前,所述存储器控制电路单元还用以:载入所述存储器存储装置的所述选项只读存储器的初始化程序至所述主机系统的随机存取存储器;以及执行所述初始化程序,以在所述主机系统的所述随机存取存储器中配置连续实体地址给所述存储器存储装置作为所述存储器存储装置的所述主机存储器缓冲区。其中所述主机存储器缓冲区用于存储逻辑至实体映射表。
在本发明的一范例实施例中,上述的存储器存储装置不包括动态随机存取存储器。
在本发明的一范例实施例中,上述的系统异常包括所述主机系统不正常的重新启动或断电。
在本发明的一范例实施例中,上述的系统异常包括所述主机存储器缓冲区中存储的逻辑至实体映射表存在错误。
在本发明的一范例实施例中,上述的存储器控制电路单元还用以:根据映射表状态标记判断所述主机存储器缓冲区中存储的逻辑至实体映射表是否存在错误。其中所述映射表状态标记由所述主机系统根据循环冗余校验比特确认所述主机存储器缓冲区中存储的所述逻辑至实体映射存在错误时产生。
在本发明的一范例实施例中,上述的部分硬件电路包括所述存储器控制电路单元中用以耦接至所述可复写式非易失性存储器模块的存储器接口,上述的另一部分硬件电路包括所述存储器控制电路单元中用以耦接至所述连接接口单元的主机接口。
在本发明的一范例实施例中,在初始化所述存储器存储装置的所述部分硬件电路后,重新执行存储于所述存储器存储装置中的所述第一指令的运作包括:所述存储器控制电路单元还用以在初始化所述存储器存储装置的所述部分硬件电路后,根据所述可复写式非易失性存储器模块中的数据来重新建立逻辑至实体映射表。并且,所述存储器控制电路单元还用以根据重新建立的所述逻辑至实体映射表重新执行存储于所述存储器存储装置中的所述第一指令。
本发明提供一种存储器控制电路单元,设置于存储器存储装置中并用于控制可复写式非易失性存储器模块。所述存储器控制电路单元包括:主机接口、存储器接口、缓冲存储器以及存储器管理电路。所述主机接口用以耦接至主机系统,所述主机系统包括主机存储器缓冲区及数据缓冲区。所述存储器接口用以耦接至所述可复写式非易失性存储器模块。所述存储器管理电路耦接至所述主机接口与所述存储器接口。所述存储器管理电路用以检测是否发生系统异常。所述存储器管理电路还用以响应于判断发生所述系统异常,将存储于所述主机系统的所述数据缓冲区中的第一指令及对应所述第一指令的第一数据复制至所述存储器存储装置中。所述存储器管理电路还用以在复制完所述第一指令及所述第一数据后执行初始化操作,其中所述初始化操作对所述存储器存储装置的部分硬件电路进行初始化,对另一部分硬件电路不进行初始化。并且,所述存储器管理电路还用以在初始化所述存储器存储装置的所述部分硬件电路后,重新执行存储于所述存储器存储装置中的所述第一指令。
在本发明的一范例实施例中,上述的存储器存储装置还包括选项只读存储器。并且在响应于判断发生所述系统异常,将存储于所述主机系统的数据缓冲区中的所述第一指令及对应所述第一指令的所述第一数据复制至所述存储器存储装置中的运作之前,所述存储器管理电路还用以:载入所述存储器存储装置的所述选项只读存储器的初始化程序至所述主机系统的随机存取存储器;以及执行所述初始化程序,以在所述主机系统的所述随机存取存储器中配置连续实体地址给所述存储器存储装置作为所述存储器存储装置的所述主机存储器缓冲区。其中所述主机存储器缓冲区用于存储逻辑至实体映射表。
在本发明的一范例实施例中,上述的存储器存储装置不包括动态随机存取存储器。
在本发明的一范例实施例中,上述的系统异常包括所述主机系统不正常的重新启动或断电。
在本发明的一范例实施例中,上述的系统异常包括所述主机存储器缓冲区中存储的逻辑至实体映射表存在错误。
在本发明的一范例实施例中,上述的存储器管理电路还用以:根据映射表状态标记判断所述主机存储器缓冲区中存储的逻辑至实体映射表是否存在错误。其中所述映射表状态标记由所述主机系统根据循环冗余校验比特确认所述主机存储器缓冲区中存储的所述逻辑至实体映射存在错误时产生。
在本发明的一范例实施例中,上述的部分硬件电路包括所述存储器接口,上述的另一部分硬件电路包括所述主机接口。
在本发明的一范例实施例中,在初始化所述存储器存储装置的所述部分硬件电路后,重新执行存储于所述存储器存储装置中的所述第一指令的运作包括:所述存储器管理电路还用以在初始化所述存储器存储装置的所述部分硬件电路后,根据所述可复写式非易失性存储器模块中的数据来重新建立逻辑至实体映射表。并且,所述存储器管理电路还用以根据重新建立的所述逻辑至实体映射表重新执行存储于所述存储器存储装置中的所述第一指令。
基于上述,本发明实施例提供的主机存储器缓冲区管理方法、存储器存储装置与存储器控制电路单元,在主机存储器缓冲区发生不预期的错误时通过将未完成的指令存储至存储器存储装置并初始化存储器存储装置中的部分硬件电路来避免指令及数据遗失,并确保主机系统不会察觉存储器存储装置有任何异常。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。
附图说明
图1是根据一范例实施例所示出的主机系统、存储器存储装置及输入/输出(I/O)装置的示意图;
图2是根据另一范例实施例所示出的主机系统、存储器存储装置及输入/输出(I/O)装置的示意图;
图3是根据另一范例实施例所示出的主机系统与存储器存储装置的示意图;
图4是根据本发明的一范例实施例所示出的主机系统与存储器存储装置的概要方块图;
图5是根据本发明的一范例实施例所示出的存储器控制电路单元的概要方块图;
图6是根据本发明的一范例实施例所示出的主机系统、存储器存储装置的概要方块图;
图7是根据本发明的一范例实施例所示出的主机存储器缓冲区管理方法的流程图;
图8是根据本发明的一范例实施例所示出的主机存储器缓冲区管理方法的流程图。
具体实施方式
现将详细地参考本发明的示范性实施例,示范性实施例的实例说明于附图中。只要有可能,相同元件符号在附图和描述中用来表示相同或相似部分。
一般而言,存储器存储装置(亦称,存储器存储系统)包括可复写式非易失性存储器模块与控制器(亦称,控制电路单元)。通常存储器存储装置是与主机系统一起使用,以使主机系统可将数据写入至存储器存储装置或从存储器存储装置中读取数据。
图1是根据一范例实施例所示出的主机系统、存储器存储装置及输入/输出(I/O)装置的示意图。且图2是根据另一范例实施例所示出的主机系统、存储器存储装置及输入/输出(I/O)装置的示意图。
请参照图1与图2,主机系统11一般包括处理器111、随机存取存储器(randomaccess memory,RAM)112、只读存储器(read only memory,ROM)113及数据传输接口114。处理器111、随机存取存储器112、只读存储器113及数据传输接口114皆耦接至系统总线(system bus)110。
在本范例实施例中,主机系统11是通过数据传输接口114与存储器存储装置10耦接。例如,主机系统11可经由数据传输接口114将数据写入至存储器存储装置10或从存储器存储装置10中读取数据。此外,主机系统11是通过系统总线110与I/O装置12耦接。例如,主机系统11可经由系统总线110将输出信号传送至I/O装置12或从I/O装置12接收输入信号。
在本范例实施例中,处理器111、随机存取存储器112、只读存储器113及数据传输接口114是可设置在主机系统11的主机板20上。数据传输接口114的数目可以是一或多个。通过数据传输接口114,主机板20可以经由有线或无线方式耦接至存储器存储装置10。存储器存储装置10可例如是随身盘201、存储卡202、固态硬盘(Solid State Drive,SSD)203或无线存储器存储装置204。无线存储器存储装置204可例如是近距离无线通信(Near FieldCommunication Storage,NFC)存储器存储装置、无线传真(WiFi)存储器存储装置、蓝牙(Bluetooth)存储器存储装置或低功耗蓝牙存储器存储装置(例如,iBeacon)等以各式无线通信技术为基础的存储器存储装置。此外,主机板20也可以通过系统总线110耦接至全球定位系统(Global Positioning System,GPS)模块205、网络接口卡206、无线传输装置207、键盘208、屏幕209、喇叭210等各式I/O装置。例如,在一范例实施例中,主机板20可通过无线传输装置207存取无线存储器存储装置204。
在一范例实施例中,所提及的主机系统为可实质地与存储器存储装置配合以存储数据的任意系统。虽然在上述范例实施例中,主机系统是以计算机系统来作说明,然而,图3是根据另一范例实施例所示出的主机系统与存储器存储装置的示意图。请参照图3,在另一范例实施例中,主机系统31也可以是数码相机、摄影机、通讯装置、音频播放器、视频播放器或平板电脑等系统,而存储器存储装置30可为其所使用的SD卡32、CF卡33或嵌入式存储装置34等各式非易失性存储器存储装置。嵌入式存储装置34包括嵌入式多媒体卡(embeddedMMC,eMMC)341和/或嵌入式多芯片封装存储装置(embedded Multi Chip Package,eMCP)342等各类型将存储器模块直接耦接于主机系统的基板上的嵌入式存储装置。
图4是根据本发明的一范例实施例所示出的主机系统与存储器存储装置的概要方块图。
请参照图4,存储器存储装置10包括连接接口单元402、存储器控制电路单元404与可复写式非易失性存储器模块406与选项只读存储器(Option Read-Only Memory,OptionROM)408。
在本范例实施例中,连接接口单元402是相容于安全数字(Secure Digital,SD)接口标准。然而,必须了解的是,本发明不限于此,连接接口单元402亦可以是符合串行高级附件(Serial Advanced Technology Attachment,SATA)标准、并行高级附件(ParallelAdvanced Technology Attachment,PATA)标准、电气和电子工程师协会(Institute ofElectrical and Electronic Engineers,IEEE)1394标准、高速周边零件连接接口(Peripheral Component Interconnect Express,PCI Express)标准、通用串行总线(Universal Serial Bus,USB)标准、超高速一代(Ultra High Speed-I,UHS-I)接口标准、超高速二代(Ultra High Speed-II,UHS-II)接口标准、存储棒(Memory Stick,MS)接口标准、多芯片封装(Multi-Chip Package)接口标准、多媒体存储卡(Multi Media Card,MMC)接口标准、嵌入式多媒体存储卡(Embedded Multimedia Card,eMMC)接口标准、通用快闪存储器(Universal Flash Storage,UFS)接口标准、嵌入式多芯片封装(embedded MultiChip Package,eMCP)接口标准、小型快闪(Compact Flash,CF)接口标准、整合式驱动电子接口(Integrated Device Electronics,IDE)标准或其他适合的标准。在本范例实施例中,连接接口单元402可与存储器控制电路单元404封装在一个芯片中,或者连接接口单元402是布设于一包含存储器控制电路单元的芯片外。
存储器控制电路单元404用以执行以硬件型式或固件型式实作的多个逻辑门或控制指令,并且根据主机系统11的指令在可复写式非易失性存储器模块406中进行数据的写入、读取与抹除等操作。
可复写式非易失性存储器模块406是耦接至存储器控制电路单元404,并且用以存储主机系统11所写入的数据。可复写式非易失性存储器模块406具有实体抹除单元410(0)~410(N)。例如,实体抹除单元410(0)~410(N)可属于同一个存储器晶粒(die)或者属于不同的存储器晶粒。每一实体抹除单元分别具有多个个实体程序化单元,其中属于同一个实体抹除单元的实体程序化单元可被独立地写入且被同时地抹除。然而,必须了解的是,本发明不限于此,每一实体抹除单元是可由64个实体程序化单元、256个实体程序化单元或其他任意个实体程序化单元所组成。
更详细来说,实体抹除单元为抹除的最小单位。亦即,每一实体抹除单元含有最小数目之一并被抹除的存储单元。实体程序化单元为程序化的最小单元。即,实体程序化单元为写入数据的最小单元。每一实体程序化单元通常包括数据比特区与冗余(redundancy)比特区。数据比特区包含多个实体存取地址用以存储使用者的数据,而冗余比特区用以存储系统的数据(例如,控制信息与错误更正码等管理数据)。在本范例实施例中,每一个实体程序化单元的数据比特区中会包含8个实体存取地址,且一个实体存取地址的大小为512字节(byte)。然而,在其他范例实施例中,数据比特区中也可包含数目更多或更少的实体存取地址,本发明并不限制实体存取地址的大小以及个数。例如,在一范例实施例中,实体抹除单元为实体区块(block),并且实体程序化单元为实体页面(page)或实体扇区(sector),但本发明不以此为限。
在本范例实施例中,可复写式非易失性存储器模块406为单阶存储单元(SingleLevel Cell,SLC)NAND型快闪存储器模块(即,一个存储单元中可存储1个数据比特的快闪存储器模块)。然而,本发明不限于此,可复写式非易失性存储器模块406亦可是多阶存储单元(Multi Level Cell,MLC)NAND型快闪存储器模块(即,一个存储单元中可存储2个数据比特的快闪存储器模块)、复数阶存储单元(Trinary Level Cell,TLC)NAND型快闪存储器模块(即,一个存储单元中可存储3个数据比特的快闪存储器模块)或其他具有相同特性的存储器模块。具体来说,同一条字线上的存储单元可组成一或多个实体程序化单元。若每一个存储单元可存储2个以上的比特,则同一条字线上的实体程序化单元可至少可被分类为下实体程序化单元与上实体程序化单元。例如,一存储单元的最低有效位(LeastSignificant Bit,LSB)是属于下实体程序化单元,并且一存储单元的最高有效位(MostSignificant Bit,MSB)是属于上实体程序化单元。一般来说,在MLC NAND型快闪存储器中,下实体程序化单元的写入速度会大于上实体程序化单元的写入速度,和/或下实体程序化单元的可靠度是高于上实体程序化单元的可靠度。
可复写式非易失性存储器模块406中的每一个存储单元是以电压(以下亦称为临界电压)的改变来存储一或多个比特。具体来说,每一个存储单元的控制门极(controlgate)与通道之间有一个电荷捕捉层。通过施予一写入电压至控制门极,可以改变电荷补捉层的电子量,进而改变存储单元的临界电压。此改变存储单元的临界电压的操作亦称为“把数据写入至存储单元”或“程序化(programming)存储单元”。随着临界电压的改变,可复写式非易失性存储器模块406中的每一个存储单元具有多个存储状态。通过施予读取电压可以判断一个存储单元是属于哪一个存储状态,藉此取得此存储单元所存储的一或多个比特。
选项只读存储器408是耦接至存储器控制电路单元404并且通过存储器控制电路单元404执行选项只读存储器408内存储的加电自检程序、多个初始化程序等程序以提供实现例如加电自检(Power-on self-test,POST)、初始化等操作的固件。
图5是根据本发明的一范例实施例所示出的存储器控制电路单元的概要方块图。
请参照图5,存储器控制电路单元404包括存储器管理电路502、主机接口504与存储器接口506。
存储器管理电路502用以控制存储器控制电路单元404的整体运作。具体来说,存储器管理电路502具有多个控制指令,并且在存储器存储装置10运作时,此些控制指令会被执行以进行数据的写入、读取与抹除等运作。
在本范例实施例中,存储器管理电路502的控制指令是以固件型式来实作。例如,存储器管理电路502具有微处理器单元(未示出)与只读存储器(未示出),并且此些控制指令是被烧录至此只读存储器中。当存储器存储装置10运作时,此些控制指令会由微处理器单元来执行以进行数据的写入、读取与抹除等运作。
在本发明另一范例实施例中,存储器管理电路502的控制指令亦可以程序码型式存储于可复写式非易失性存储器模块406的特定区域(例如,存储器模块中专用于存放系统数据的系统区)中。此外,存储器管理电路502具有微处理器单元(未示出)、只读存储器(未示出)及随机存取存储器(未示出)。特别是,此只读存储器具有驱动码,并且当存储器控制电路单元404被致能时,微处理器单元会先执行此驱动码段来将存储于可复写式非易失性存储器模块406中的控制指令载入至存储器管理电路502的随机存取存储器中。之后,微处理器单元会运转此些控制指令以进行数据的写入、读取与抹除等运作。
此外,在本发明另一范例实施例中,存储器管理电路502的控制指令亦可以一硬件型式来实作。例如,存储器管理电路502包括微控制器、存储单元管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路。存储单元管理电路、存储器写入电路、存储器读取电路、存储器抹除电路与数据处理电路是耦接至微控制器。其中,存储单元管理电路用以管理可复写式非易失性存储器模块406的实体抹除单元;存储器写入电路用以对可复写式非易失性存储器模块406下达写入指令以将数据写入至可复写式非易失性存储器模块406中;存储器读取电路用以对可复写式非易失性存储器模块406下达读取指令以从可复写式非易失性存储器模块406中读取数据;存储器抹除电路用以对可复写式非易失性存储器模块406下达抹除指令以将数据从可复写式非易失性存储器模块406中抹除;而数据处理电路用以处理欲写入至可复写式非易失性存储器模块406的数据以及从可复写式非易失性存储器模块406中读取的数据。
主机接口504是耦接至存储器管理电路502并且用以耦接至连接接口单元402,以接收与识别主机系统11所传送的指令与数据。也就是说,主机系统11所传送的指令与数据会通过主机接口504来传送至存储器管理电路502。在本范例实施例中,主机接口504是相容于SATA标准。然而,必须了解的是本发明不限于此,主机接口504亦可以是相容于PATA标准、IEEE 1394标准、PCI Express标准、USB标准、UHS-I接口标准、UHS-II接口标准、SD标准、MS标准、MMC标准、CF标准、IDE标准或其他适合的数据传输标准。
存储器接口506是耦接至存储器管理电路502并且用以存取可复写式非易失性存储器模块406及选项只读存储器408。也就是说,欲写入至可复写式非易失性存储器模块406的数据会经由存储器接口506转换为可复写式非易失性存储器模块406所能接受的格式。存储器管理电路502通过存储器接口506将选项只读存储器408存储的初始化程序载入主机系统11。
具体来说,若存储器管理电路502要存取可复写式非易失性存储器模块406,存储器接口506会传送对应的指令序列。例如,这些指令序列可包括指示写入数据的写入指令序列、指示读取数据的读取指令序列、指示抹除数据的抹除指令序列、以及用以指示各种存储器操作(例如,改变读取电压电平或执行垃圾收集操作等等)的相对应的指令序列。这些指令序列例如是由存储器管理电路502产生并且通过存储器接口506传送至可复写式非易失性存储器模块406。这些指令序列可包括一或多个信号,或是在总线上的数据。这些信号或数据可包括指令码或程序码。例如,在读取指令序列中,会包括读取的辨识码、存储器地址等信息。
在一范例实施例中,存储器控制电路单元404还包括缓冲存储器508、电源管理电路510与错误检查与校正电路512。
缓冲存储器508是耦接至存储器管理电路502并且用以暂存来自于主机系统11的数据与指令或来自于可复写式非易失性存储器模块406的数据。例如,缓冲存储器508可以包括动态随机存取存储器(Dynamic Random Access Memory,DRAM)或静态随机存取存储器(Static Random Access Memory,SRAM)等任何会因断电或电压供应不稳而遗失已存储的数据的存储器。此外,缓冲存储器508是以芯片组或系统单芯片(System on Chip,SoC)的方式实作在存储器控制电路单元404内,或者是被独立于存储器控制电路单元404之外,本发明不在此限制。电源管理电路510是耦接至存储器管理电路502并且用以控制存储器存储装置10的电源。
错误检查与校正电路512是耦接至存储器管理电路502并且用以执行错误检查与校正程序以确保数据的正确性。具体来说,当存储器管理电路502从主机系统11中接收到写入指令时,错误检查与校正电路512会为对应此写入指令的数据产生对应的错误检查与校正码(Error Checking and Correcting Code,ECC Code),并且存储器管理电路502会将对应此写入指令的数据与对应的错误检查与校正码写入至可复写式非易失性存储器模块406中。之后,当存储器管理电路502从可复写式非易失性存储器模块406中读取数据时会同时读取此数据对应的错误检查与校正码,并且错误检查与校正电路512会根据此错误检查与校正码对所读取的数据执行错误检查与校正程序。
在本范例实施例中,错误检查与校正电路512是以低密度奇偶检查码(lowdensity parity code,LDPC)来实作。然而,在另一范例实施例中,错误检查与校正电路512也可以BCH码、回旋码(convolutional code)、涡轮码(turbo code)、比特翻转(bitflipping)等编码/解码算法来实作。
具体来说,存储器管理电路502会依据所接收的数据及对应的错误检查与校正码(以下亦称为错误校正码)来产生错误校正码框(ECC Frame)并且将错误校正码框写入至可复写式非易失性存储器模块406中。之后,当存储器管理电路502从可复写式非易失性存储器模块406读取数据时,错误检查与校正电路512会根据错误校正码框中的错误校正码来验证所读取的数据的正确性。
以下描述存储器管理电路502、主机接口504与存储器接口506、缓冲存储器508、电源管理电路510与错误检查与校正电路512所执行的操作,亦可参考为由存储器控制电路单元404所执行。
在一范例实施例中,存储器管理电路502会将可复写式非易失性存储器模块406划分为多个实体单元(例如,实体抹除单元),并且将此些实体单元会分组至数据区(dataarea)与备用区(spare area)。数据区中的实体单元是用以存储数据,而备用区中的实体单元则是用以在执行写入指令时替换数据区中的实体单元。具体来说,当存储器存储装置10接受到主机系统11的写入指令而欲对数据区的实体单元进行写入时,存储器管理电路502会从备用区中提取一实体单元并且将在数据区中欲写入的实体单元中的有效旧数据与欲写入的新数据写入至从备用区中提取的实体单元并且将已写入新数据的实体单元关联为数据区,并且将原本数据区的实体单元进行抹除并关联为备用区。为了能够让主机系统11能够顺利地存取以轮替方式存储数据的实体单元,存储器管理电路502会提供逻辑单元给主机系统11。也就是说,存储器管理电路502会建立逻辑至实体映射表(logical tophysical mapping table)或实体至逻辑映射表(physical to logical mapping table),并且在所述映射表中记录与更新逻辑单元与数据区的实体单元之间的对映关系来反映实体单元的轮替,所以主机系统11仅需要针对所提供逻辑单元进行写入而存储器管理电路502会依据逻辑至实体映射表或实体至逻辑映射表对所对映的实体单元进行读取或写入数据。
随着存储器制程上的进步而使得每一实体单元的设计容量与数量会越来越大的同时,所述映射表的大小以及所需的更新时间也相应地增加。目前主机系统已具备为存储器存储装置提供主机存储器缓冲区(host memory buffer,HMB)的功能,并且主机存储器缓冲区用于存储上述映射表。
图6是根据本发明的一范例实施例所示出的主机系统、存储器存储装置的概要方块图。
请参照图6,主机系统11包括随机存取存储器112,可以依据与主机系统11电性连接的存储器存储装置10的存储器配置参数在随机存取存储器112上配置连续实体地址以作为主机存储器缓冲区1121给存储器存储装置10。主机存储器缓冲区1121用于当主机系统11使用与其电性连接的存储器存储装置10时,可提供给存储器存储装置10作为扩展的存储器,以提高存储器存储装置10的性能。此外,随机存取存储器112还包括数据缓冲区1122,数据缓冲区1122可作为一个快取存储器,主机系统11会先将指令与对应指令的数据暂时地存储在此快取存储器中以增进整体系统的运作效率。在一实施例中,可配置动态随机存取存储器中的连续实体地址作为主机存储器缓冲区1121,数据缓冲区1122可实施为静态随机存取存储器(即SRAM),本发明不在此限制。在本范例实施例中,存储器管理电路502会直接通过主机接口504连接至连接接口单元402,以与主机存储器缓冲区1121进行数据传输。也就是说,存储器管理电路502所传送的指令与数据会通过主机接口504通过连接接口单元402来传送至主机存储器缓冲区1121。
存储器存储装置10包括选项只读存储器408。选项只读存储器408内存储有初始化程序(亦称为第一初始化程序)。于一范例实施例中,存储器存储装置10以固态硬盘为例。在本实施例中,存储器存储装置10可以不具有动态随机存取存储器(DRAM-Less)。然而必须了解的是,存储器存储装置10也可以是随身盘等其他可外接于主机系统11并且可提高主机系统性能的电子装置,本发明不在此限制。
存储器存储装置10电性连接于主机系统11上时,主机系统11扫描与其电性连接的存储器存储装置10,若存储器存储装置10的选项只读存储器408内存储有第一初始化程序,则主机系统11会将此第一初始化程序载入至主机系统11的随机存取存储器112中并执行此第一初始化程序。并且,主机系统11根据此第一初始化程序设定的存储器配置参数在随机存取存储器112中配置连续实体地址作为主机存储器缓冲区1121,并且在此连续实体地址的主机存储器缓冲区1121上设定标记。存储器管理电路502存储此标记在存储器存储装置10。
在本范例实施例中,存储器管理电路502可操作主机存储器缓冲区1121。例如,存储器管理电路502可存储逻辑至实体映射表于主机存储器缓冲区1121。然而,主机存储器缓冲区1121是设置在主机系统11上。换句话说,当存储器存储装置10支援主机存储器缓冲区功能时,存储器存储装置10耦接主机系统11的主机存储器缓冲区1121,并将逻辑至实体映射表传送至主机存储器缓冲区1121存储。并且当存储器存储装置10接收到来自主机系统11的指令时,存储器管理电路502可存取主机存储器缓冲区1121中存储的逻辑至实体映射表。
在本范例实施例中,存储器管理电路502会检测是否发生系统异常。系统异常包括主机系统11不正常的重新启动或断电,或主机存储器缓冲区1121中存储的逻辑至实体映射表存在错误。
在一范例实施例中,存储器管理电路502可根据一断电状态标记判断主机系统11前一次的重新启动或断电是否为异常重新启动或异常断电。此异常重新启动例如是运作异常而导致主机系统11重新启动,而异常断电例如是突然的断电或电压供应不稳而导致主机系统11不正常关机。此断电状态标记是在主机系统11发生异常重新启动或异常断电时由主机系统11的处理器(未示出)产生。此外,此断电状态标记可以是存储于存储器存储装置10。在本范例实施例中,若存储器管理电路502检测到断电状态标记,则可判断发生系统异常。
在一范例实施例中,存储器管理电路502可根据一映射表状态标记判断主机存储器缓冲区1121中存储的逻辑至实体映射表是否存在错误。此映射表状态标记是在主机系统11检测到主机存储器缓冲区1121中存储的逻辑至实体映射存在错误时由主机系统11的处理器(未示出)产生。例如,主机系统11可利用循环冗余校验(cyclic redundancy check,CRC)检测主机存储器缓冲区1121中存储的逻辑至实体映射是否存在错误。具体来说,存储器管理电路502可以产生逻辑至实体映射表的循环冗余校验(CRC)比特,并将逻辑至实体映射表与循环冗余校验比特存储至主机存储器缓冲区1121。存储器管理电路502可利用所需的任何方式产生循环冗余校验比特,本发明不在此限制。主机系统11会根据循环冗余校验比特确认主机存储器缓冲区1121中存储的逻辑至实体映射表是否存在错误,并在确认逻辑至实体映射表存在错误时产生映射状态标记。
当发生上述系统异常时,表示主机系统11的主机存储器缓冲区1121不稳定。在本范例实施例中,响应于判断发生所述系统异常,存储器管理电路502将暂存于主机系统11的数据缓冲区1122中的指令(亦称为第一指令)及对应第一指令的数据(亦称为第一数据)复制至存储器存储装置10中。例如,存储器管理电路502可将第一指令及第一数据复制至存储器存储装置10的缓冲存储器508中,或者复制至可复写式非易失性存储器模块中。具体来说,存储器管理电路502可先判断当前数据缓冲区1122是否存储未处理的指令(outstanding command)或中断事件(interrupt event)。若数据缓冲区1122存储未处理的指令或中断事件,则存储器管理电路502将此些未处理的指令或中断事件复制至存储器存储装置10中。
主机系统11系统异常时,为了维持主机系统的稳定性可能会初始化硬件电路,而造成随机存取存储器112存储的数据遗失。如此一来,通过将备份第一指令及第一数据复制至存储器存储装置10,可避免未执行完成的指令及数据遗失。
存储器管理电路502在复制完第一指令及第一数据后执行初始化操作,以初始化存储器存储装置10中的部分硬件电路,且对另一部分硬件电路不进行初始化。例如,部分硬件电路包括存储器接口506,另一部分硬件电路包括主机接口504,但本发明不以此为限。在一范例实施例中,存储器管理电路502对存储器管理电路502、主机接口504及缓冲存储器508以外的部分硬件电路进行初始化。此些部分硬件电路例如包括与可复写式非易失性存储器模块406进行沟通的存储器接口506等,本发明不在此限制。具体来说,存储器管理电路502会从选项只读存储器408载入初始化程序(亦称为第二初始化程序)至缓冲存储器508并且执行初始化操作以初始化存储器存储装置10中存储器管理电路502、主机接口504及缓冲存储器508以外的部分硬件电路。
存储器管理电路502在初始化存储器存储装置10的部分硬件电路后,重新执行存储于存储器存储装置10中的第一指令。具体来说,存储器管理电路502可先判断当前存储器存储装置10的缓冲存储器508或可复写式非易失性存储器模块406是否存储未处理的指令或中断事件。若缓冲存储器508存储未处理的指令或中断事件,则存储器管理电路502重新执行此些未处理的指令或中断事件。
在一范例实施例中,存储器管理电路502可在初始化存储器存储装置10的部分硬件电路后,根据可复写式非易失性存储器模块406中的数据来重新建立逻辑至实体映射表。在重新建立逻辑至实体映射表后,存储器管理电路502根据重新建立的逻辑至实体映射表重新执行存储于存储器存储装置10中的第一指令。
例如,存储器管理电路502可根据可复写式非易失性存储器模块406中的多个实体至逻辑映射信息以及对应于该些实体至逻辑映射信息的多个时间信息重新建立逻辑至实体映射表。然而,上述有关重新建立逻辑至实体映射表的技术概念为本领域技术人员所熟知的技术手段,于此不再赘述。
并且,存储器管理电路502可将重新建立的逻辑至实体映射表回存至缓冲存储器508,尔后在特定时间将重新建立的逻辑至实体映射表存储至可复写式非易失性存储器模块406。换句话说,存储器存储装置10暂时舍弃主机系统11的主机存储器缓冲区1121,而使用自身的缓冲存储器508暂存逻辑至实体映射表。
图7是根据本发明的一范例实施例所示出的主机存储器缓冲区管理方法的流程图。请参图7,在步骤S702中,检测是否发生系统异常。在步骤S704中,响应于判断发生系统异常,将存储于主机系统的数据缓冲区中的第一指令及对应第一指令的第一数据复制至存储器存储装置中。在步骤S706中,在复制完第一指令及第一数据后执行初始化操作,其中初始化操作对存储器存储装置的部分硬件电路进行初始化,对另一部分硬件电路不进行初始化。在步骤S708中,在初始化存储器存储装置的部分硬件电路后,重新执行存储于存储器存储装置中的第一指令。
图8是根据本发明的一范例实施例所示出的主机存储器缓冲区管理方法的流程图。请参图8,在步骤S7081中,在初始化存储器存储装置的部分硬件电路后,根据可复写式非易失性存储器模块中的数据来重新建立逻辑至实体映射表。在步骤S7082中,根据重新建立的逻辑至实体映射表重新执行存储于存储器存储装置中的第一指令。
然而,图7与图8中各步骤已详细说明如上,在此便不再赘述。值得注意的是,图7与图8中各步骤可以实作为多个程序码或是电路,本发明不加以限制。此外,图7与图8的方法可以搭配以上范例实施例使用,也可以单独使用,本发明不加以限制。
综上所述,本发明实施例提供的主机存储器缓冲区管理方法、存储器存储装置与存储器控制电路单元,在主机系统或主机存储器缓冲区发生系统异常时将未完成的指令存储至存储器存储装置,并初始化存储器存储装置中的部分硬件电路。如此一来,可避免指令及数据遗失,并确保主机系统不会察觉存储器存储装置有任何异常。除此之外,还可在初始化存储器存储装置中的部分硬件电路之后重建逻辑至实体映射表,以根据重建的逻辑至实体映射表重新执行指令。基此,能够对主机存储器缓冲区的数据发生不预期的错误时进行补救,并提升存储器的运作效率。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (24)

1.一种主机存储器缓冲区管理方法,适用于主机系统及存储器存储装置,所述主机系统包括主机存储器缓冲区及数据缓冲区,所述存储器存储装置包括可复写式非易失性存储器模块,所述方法包括:
检测是否发生系统异常;
响应于判断发生所述系统异常,将存储于所述主机系统的所述数据缓冲区中的第一指令及对应所述第一指令的第一数据复制至所述存储器存储装置中;
在复制完所述第一指令及所述第一数据后执行初始化操作,其中所述初始化操作对所述存储器存储装置的部分硬件电路进行初始化,对另一部分硬件电路不进行初始化;以及
在初始化所述存储器存储装置的所述部分硬件电路后,重新执行存储于所述存储器存储装置中的所述第一指令。
2.根据权利要求1所述的主机存储器缓冲区管理方法,其中在响应于判断发生所述系统异常,将存储于所述主机系统的数据缓冲区中的所述第一指令及对应所述第一指令的所述第一数据复制至所述存储器存储装置中的步骤之前,所述方法还包括:
载入所述存储器存储装置的选项只读存储器的初始化程序至所述主机系统的随机存取存储器;以及
执行所述初始化程序,以在所述主机系统的所述随机存取存储器中配置连续实体地址给所述存储器存储装置作为所述存储器存储装置的所述主机存储器缓冲区,
其中所述主机存储器缓冲区用于存储逻辑至实体映射表。
3.根据权利要求1所述的主机存储器缓冲区管理方法,其中所述存储器存储装置不包括动态随机存取存储器。
4.根据权利要求1所述的主机存储器缓冲区管理方法,其中所述系统异常包括所述主机系统不正常的重新启动或断电。
5.根据权利要求1所述的主机存储器缓冲区管理方法,其中所述系统异常包括所述主机存储器缓冲区中存储的逻辑至实体映射表存在错误。
6.根据权利要求5所述的主机存储器缓冲区管理方法,其中所述方法还包括:
根据映射表状态标记判断所述主机存储器缓冲区中存储的逻辑至实体映射表是否存在错误,
其中所述映射表状态标记由所述主机系统根据循环冗余校验比特确认所述主机存储器缓冲区中存储的所述逻辑至实体映射存在错误时产生。
7.根据权利要求1所述的主机存储器缓冲区管理方法,其中所述部分硬件电路包括所述存储器存储装置中用以耦接至所述可复写式非易失性存储器模块的存储器接口,所述另一部分硬件电路包括所述存储器存储装置中用以耦接至所述主机系统的主机接口。
8.根据权利要求1所述的主机存储器缓冲区管理方法,其中在初始化所述存储器存储装置的所述部分硬件电路后,重新执行存储于所述存储器存储装置中的所述第一指令的步骤包括:
在初始化所述存储器存储装置的所述部分硬件电路后,根据所述可复写式非易失性存储器模块中的数据来重新建立逻辑至实体映射表;以及
根据重新建立的所述逻辑至实体映射表重新执行存储于所述存储器存储装置中的所述第一指令。
9.一种存储器存储装置,包括:
连接接口单元,用以电性连接至主机系统,所述主机系统包括主机存储器缓冲区及数据缓冲区;
可复写式非易失性存储器模块;
存储器控制电路单元,耦接至所述连接接口单元与所述可复写式非易失性存储器模块,
其中所述存储器控制电路单元用以检测是否发生系统异常,
其中所述存储器控制电路单元还用以响应于判断发生所述系统异常,将存储于所述主机系统的所述数据缓冲区中的第一指令及对应所述第一指令的第一数据复制至所述存储器存储装置中,
其中所述存储器控制电路单元还用以在复制完所述第一指令及所述第一数据后执行初始化操作,其中所述初始化操作对所述存储器存储装置的部分硬件电路进行初始化,对另一部分硬件电路不进行初始化,并且
其中所述存储器控制电路单元还用以在初始化所述存储器存储装置的所述部分硬件电路后,重新执行存储于所述存储器存储装置中的所述第一指令。
10.根据权利要求9所述的存储器存储装置,其中所述存储器存储装置还包括选项只读存储器,并且在响应于判断发生所述系统异常,将存储于所述主机系统的数据缓冲区中的所述第一指令及对应所述第一指令的所述第一数据复制至所述存储器存储装置中的运作之前,所述存储器控制电路单元还用以:
载入所述存储器存储装置的所述选项只读存储器的初始化程序至所述主机系统的随机存取存储器,并且
执行所述初始化程序,以在所述主机系统的所述随机存取存储器中配置连续实体地址给所述存储器存储装置作为所述存储器存储装置的所述主机存储器缓冲区,
其中所述主机存储器缓冲区用于存储逻辑至实体映射表。
11.根据权利要求9所述的存储器存储装置,其中所述存储器存储装置不包括动态随机存取存储器。
12.根据权利要求9所述的存储器存储装置,其中所述系统异常包括所述主机系统不正常的重新启动或断电。
13.根据权利要求9所述的存储器存储装置,其中所述系统异常包括所述主机存储器缓冲区中存储的逻辑至实体映射表存在错误。
14.根据权利要求13所述的存储器存储装置,其中所述存储器控制电路单元还用以:
根据映射表状态标记判断所述主机存储器缓冲区中存储的逻辑至实体映射表是否存在错误,
其中所述映射表状态标记由所述主机系统根据循环冗余校验比特确认所述主机存储器缓冲区中存储的所述逻辑至实体映射存在错误时产生。
15.根据权利要求9所述的存储器存储装置,其中所述部分硬件电路包括所述存储器控制电路单元中用以耦接至所述可复写式非易失性存储器模块的存储器接口,所述另一部分硬件电路包括所述存储器控制电路单元中用以耦接至所述连接接口单元的主机接口。
16.根据权利要求9所述的存储器存储装置,其中在初始化所述存储器存储装置的所述部分硬件电路后,重新执行存储于所述存储器存储装置中的所述第一指令的运作包括:
所述存储器控制电路单元还用以在初始化所述存储器存储装置的所述部分硬件电路后,根据所述可复写式非易失性存储器模块中的数据来重新建立逻辑至实体映射表,并且
所述存储器控制电路单元还用以根据重新建立的所述逻辑至实体映射表重新执行存储于所述存储器存储装置中的所述第一指令。
17.一种存储器控制电路单元,设置于存储器存储装置中并用于控制可复写式非易失性存储器模块,所述存储器控制电路单元包括:
主机接口,用以耦接至主机系统,所述主机系统包括主机存储器缓冲区及数据缓冲区;
存储器接口,用以耦接至所述可复写式非易失性存储器模块;
缓冲存储器;以及
存储器管理电路,耦接至所述主机接口与所述存储器接口,
其中所述存储器管理电路用以检测是否发生系统异常,
其中所述存储器管理电路还用以响应于判断发生所述系统异常,将存储于所述主机系统的所述数据缓冲区中的第一指令及对应所述第一指令的第一数据复制至所述存储器存储装置中,
其中所述存储器管理电路还用以在复制完所述第一指令及所述第一数据后执行初始化操作,其中所述初始化操作对所述存储器存储装置的部分硬件电路进行初始化,对另一部分硬件电路不进行初始化,并且
其中所述存储器管理电路还用以在初始化所述存储器存储装置的所述部分硬件电路后,重新执行存储于所述存储器存储装置中的所述第一指令。
18.根据权利要求17所述的存储器控制电路单元,其中所述存储器存储装置还包括选项只读存储器,并且在响应于判断发生所述系统异常,将存储于所述主机系统的数据缓冲区中的所述第一指令及对应所述第一指令的所述第一数据复制至所述存储器存储装置中的运作之前,所述存储器管理电路还用以:
载入所述存储器存储装置的所述选项只读存储器的初始化程序至所述主机系统的随机存取存储器,并且
执行所述初始化程序,以在所述主机系统的所述随机存取存储器中配置连续实体地址给所述存储器存储装置作为所述存储器存储装置的所述主机存储器缓冲区,
其中所述主机存储器缓冲区用于存储逻辑至实体映射表。
19.根据权利要求17所述的存储器控制电路单元,其中所述存储器存储装置不包括动态随机存取存储器。
20.根据权利要求17所述的存储器控制电路单元,其中所述系统异常包括所述主机系统不正常的重新启动或断电。
21.根据权利要求17所述的存储器控制电路单元,其中所述系统异常包括所述主机存储器缓冲区中存储的逻辑至实体映射表存在错误。
22.根据权利要求21所述的存储器控制电路单元,其中所述存储器管理电路还用以:
根据映射表状态标记判断所述主机存储器缓冲区中存储的逻辑至实体映射表是否存在错误,
其中所述映射表状态标记由所述主机系统根据循环冗余校验比特确认所述主机存储器缓冲区中存储的所述逻辑至实体映射存在错误时产生。
23.根据权利要求17所述的存储器控制电路单元,其中所述部分硬件电路包括所述存储器接口,所述另一部分硬件电路包括所述主机接口。
24.根据权利要求17所述的存储器控制电路单元,其中在初始化所述存储器存储装置的所述部分硬件电路后,重新执行存储于所述存储器存储装置中的所述第一指令的运作包括:
所述存储器管理电路还用以在初始化所述存储器存储装置的所述部分硬件电路后,根据所述可复写式非易失性存储器模块中的数据来重新建立逻辑至实体映射表,并且
所述存储器管理电路还用以根据重新建立的所述逻辑至实体映射表重新执行存储于所述存储器存储装置中的所述第一指令。
CN202110438051.2A 2021-04-22 2021-04-22 主机存储器缓冲区管理方法、存储装置与控制电路单元 Active CN112965670B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110438051.2A CN112965670B (zh) 2021-04-22 2021-04-22 主机存储器缓冲区管理方法、存储装置与控制电路单元

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110438051.2A CN112965670B (zh) 2021-04-22 2021-04-22 主机存储器缓冲区管理方法、存储装置与控制电路单元

Publications (2)

Publication Number Publication Date
CN112965670A true CN112965670A (zh) 2021-06-15
CN112965670B CN112965670B (zh) 2023-08-01

Family

ID=76281021

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110438051.2A Active CN112965670B (zh) 2021-04-22 2021-04-22 主机存储器缓冲区管理方法、存储装置与控制电路单元

Country Status (1)

Country Link
CN (1) CN112965670B (zh)

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200627153A (en) * 2004-08-05 2006-08-01 Ibm Bootable post crash analysis environment
US20170083451A1 (en) * 2015-09-23 2017-03-23 Phison Electronics Corp. Buffer memory management method, memory control circuit unit and memory storage device
CN106681652A (zh) * 2016-08-26 2017-05-17 合肥兆芯电子有限公司 存储器管理方法、存储器控制电路单元与存储器存储装置
US20170168890A1 (en) * 2015-12-09 2017-06-15 Samsung Electronics Co., Ltd. Electronic system with memory data protection mechanism and method of operation thereof
US20180129414A1 (en) * 2016-11-07 2018-05-10 Phison Electronics Corp. Memory management method, memory control circuit unit and memory storage device
TW201931131A (zh) * 2017-10-30 2019-08-01 美商美光科技公司 動態邏輯/實體快取記憶體
TW201933126A (zh) * 2017-12-19 2019-08-16 韓商愛思開海力士有限公司 記憶體系統、其操作方法以及包括其的資料處理系統
US20190294331A1 (en) * 2011-08-01 2019-09-26 Toshiba Memory Corporation Data writing processing into memory of a semiconductor memory device by using a memory of a host device
TW201939283A (zh) * 2018-03-14 2019-10-01 群聯電子股份有限公司 主機記憶體緩衝區配置方法、記憶體儲存裝置與記憶體控制電路單元
CN110297595A (zh) * 2018-03-21 2019-10-01 群联电子股份有限公司 主机存储器缓冲区配置方法、储存装置与控制电路单元
TW202009695A (zh) * 2018-08-23 2020-03-01 慧榮科技股份有限公司 資料儲存裝置及其共享控制器中記憶體的方法
TW202009717A (zh) * 2018-08-21 2020-03-01 日商東芝記憶體股份有限公司 記憶裝置及程式
US20200073595A1 (en) * 2018-09-02 2020-03-05 Silicon Motion Inc. Flash memory controller capable of improving IOPS performance and corresponding method
TW202028982A (zh) * 2019-01-21 2020-08-01 慧榮科技股份有限公司 新竹縣竹北市台元街36 號8樓之1 資料儲存裝置及用於存取邏輯至物理位址映射表之方法

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200627153A (en) * 2004-08-05 2006-08-01 Ibm Bootable post crash analysis environment
US20190294331A1 (en) * 2011-08-01 2019-09-26 Toshiba Memory Corporation Data writing processing into memory of a semiconductor memory device by using a memory of a host device
US20170083451A1 (en) * 2015-09-23 2017-03-23 Phison Electronics Corp. Buffer memory management method, memory control circuit unit and memory storage device
US20170168890A1 (en) * 2015-12-09 2017-06-15 Samsung Electronics Co., Ltd. Electronic system with memory data protection mechanism and method of operation thereof
CN106681652A (zh) * 2016-08-26 2017-05-17 合肥兆芯电子有限公司 存储器管理方法、存储器控制电路单元与存储器存储装置
US20180129414A1 (en) * 2016-11-07 2018-05-10 Phison Electronics Corp. Memory management method, memory control circuit unit and memory storage device
TW201931131A (zh) * 2017-10-30 2019-08-01 美商美光科技公司 動態邏輯/實體快取記憶體
TW201933126A (zh) * 2017-12-19 2019-08-16 韓商愛思開海力士有限公司 記憶體系統、其操作方法以及包括其的資料處理系統
TW201939283A (zh) * 2018-03-14 2019-10-01 群聯電子股份有限公司 主機記憶體緩衝區配置方法、記憶體儲存裝置與記憶體控制電路單元
CN110297595A (zh) * 2018-03-21 2019-10-01 群联电子股份有限公司 主机存储器缓冲区配置方法、储存装置与控制电路单元
TW202009717A (zh) * 2018-08-21 2020-03-01 日商東芝記憶體股份有限公司 記憶裝置及程式
TW202009695A (zh) * 2018-08-23 2020-03-01 慧榮科技股份有限公司 資料儲存裝置及其共享控制器中記憶體的方法
US20200073595A1 (en) * 2018-09-02 2020-03-05 Silicon Motion Inc. Flash memory controller capable of improving IOPS performance and corresponding method
TW202028982A (zh) * 2019-01-21 2020-08-01 慧榮科技股份有限公司 新竹縣竹北市台元街36 號8樓之1 資料儲存裝置及用於存取邏輯至物理位址映射表之方法

Also Published As

Publication number Publication date
CN112965670B (zh) 2023-08-01

Similar Documents

Publication Publication Date Title
TWI591482B (zh) 資料保護方法、記憶體控制電路單元及記憶體儲存裝置
TWI802324B (zh) 異常斷電恢復方法、記憶體控制電路單元以及記憶體儲存裝置
CN113140253B (zh) 存储器管理方法、存储器存储装置及存储器控制电路单元
US11614997B2 (en) Memory storage apparatus with protection of command data in a host buffer in response to a system abnormality
CN107045890B (zh) 数据保护方法、存储器控制电路单元及存储器存储装置
CN113138720B (zh) 数据存储方法、存储器控制电路单元以及存储器存储装置
CN112051971B (zh) 数据整并方法、存储器存储装置及存储器控制电路单元
CN114822664B (zh) 基于数据优先级的风险评估方法、存储装置及控制电路
US20240028506A1 (en) Mapping table re-building method, memory storage device and memory control circuit unit
CN112051963A (zh) 数据写入方法、存储器控制电路单元以及存储器存储装置
CN113724774B (zh) 解码方法、存储器存储装置及存储器控制电路单元
CN111831210B (zh) 存储器管理方法、存储器控制电路单元及存储器存储装置
CN112965670B (zh) 主机存储器缓冲区管理方法、存储装置与控制电路单元
CN111610937A (zh) 数据写入方法、存储器存储装置及存储器控制电路单元
CN113360429B (zh) 数据重建方法、存储器存储装置及存储器控制电路单元
CN113724773B (zh) 存储器管理方法、存储器存储装置及存储器控制电路单元
TWI826161B (zh) 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元
CN111724851B (zh) 数据保护方法、存储器存储装置及存储器控制电路单元
CN112347010B (zh) 存储器控制方法、存储器存储装置及存储器控制电路单元
CN111240602B (zh) 闪存的数据整理方法、控制电路单元与存储装置
CN111858389B (zh) 数据写入方法、存储器控制电路单元以及存储器存储装置
CN115857808A (zh) 存储器管理方法、存储器存储装置及存储器控制电路单元
CN114637630A (zh) 异常断电恢复方法、存储器控制器及存储器存储装置
CN114661233A (zh) 表格排序方法、存储器存储装置及存储器控制电路单元
CN114708898A (zh) 表格管理方法、存储器存储装置及存储器控制电路单元

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant