TWI727985B - 資料儲存裝置及其操作方法 - Google Patents

資料儲存裝置及其操作方法 Download PDF

Info

Publication number
TWI727985B
TWI727985B TW105134323A TW105134323A TWI727985B TW I727985 B TWI727985 B TW I727985B TW 105134323 A TW105134323 A TW 105134323A TW 105134323 A TW105134323 A TW 105134323A TW I727985 B TWI727985 B TW I727985B
Authority
TW
Taiwan
Prior art keywords
data
control unit
memory
storage device
buffer
Prior art date
Application number
TW105134323A
Other languages
English (en)
Other versions
TW201800931A (zh
Inventor
申東才
Original Assignee
韓商愛思開海力士有限公司
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 韓商愛思開海力士有限公司 filed Critical 韓商愛思開海力士有限公司
Publication of TW201800931A publication Critical patent/TW201800931A/zh
Application granted granted Critical
Publication of TWI727985B publication Critical patent/TWI727985B/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • 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
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/266Arrangements to supply power to external peripherals either directly from the computer or under computer control, e.g. supply of power through the communication port, computer controlled power-strips
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0787Storage of error reports, e.g. persistent data storage, storage using memory protection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • 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/0653Monitoring storage devices or 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/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/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/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • 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]
    • 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/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/14Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
    • G11C5/147Voltage reference generators, voltage or current regulators; Internally lowered supply levels; Compensation for voltage drops
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7203Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/30Power supply circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/14Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
    • G11C5/143Detection of memory cassette insertion or removal; Continuity checks of supply or ground lines; Detection of supply variations, interruptions or levels ; Switching between alternative supplies
    • G11C5/144Detection of predetermined disconnection or reduction of power supply, e.g. power down or power standby

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Power Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

一種資料儲存裝置包括:一非揮發性記憶體裝置;一控制單元,其配置為產生其中寫入用於控制非揮發性記憶體裝置的工作的描述符;一記憶體控制單元,其配置為基於描述符向非揮發性記憶體裝置提供控制信號和寫入資料;以及一電壓偵測器,其配置為在提供給記憶體控制單元的第一工作電壓或提供給非揮發性記憶體裝置的第二工作電壓下降的情況下向記憶體控制單元提供電壓降信號。

Description

資料儲存裝置及其操作方法 相關申請的交叉引用
本申請案在35U.S.C§ 119(a)下請求於2016年6月17日提交的申請號為10-2016-0075996的韓國專利申請的優先權,其全部內容透過引用併入本文。
各種實施例大致上關於一種使用非揮發性記憶體裝置作為儲存介質的資料儲存裝置。
近來,用於電腦環境的範例已經變成普遍存在的計算,使得可以在任何時間和任何地方使用電腦系統。由於這個事實,諸如行動電話、數位相機和筆記型電腦的可擕式電子設備的使用迅速增加。通常,這種可擕式電子設備使用一種利用記憶體裝置的資料儲存裝置。資料儲存裝置用於儲存將在可擕式電子設備中使用的資料。
使用記憶體裝置的資料儲存裝置提供的優點在於,由於沒有機械驅動部件,所以穩定性和耐久性優異,資訊存取速度高且功耗小。具有這種優點的資料儲存裝置包括通用序列匯流排(USB)記憶體裝置、具有各種介面的儲存卡、通用快閃儲存(UFS)裝置和固態驅動器(SSD)。
各種實施例關於一種即使在工作電壓下降時也能夠提高儲存在非揮發性記憶體裝置中的資料的可靠性的資料儲存裝置及其操作方法。
在實施例中,一種資料儲存裝置可包括:一非揮發性記憶體裝置;一控制單元,其配置為產生其中寫入用於控制非揮發性記憶體裝置工作的描述符;一記憶體控制單元,其配置為基於該描述符向非揮發性記憶體裝置提供控制信號和寫入資料;以及一電壓偵測器,其配置為在提供給記憶體控制單元的第一工作電壓或提供給非揮發性記憶體裝置的第二工作電壓下降的情況下,向記憶體控制單元提供電壓降信號。
在實施例中,一種用於操作一資料儲存裝置的方法,該資料儲存裝置包括一非揮發性記憶體裝置和一控制非揮發性記憶體裝置的控制器,該方法可包括:向非揮發性記憶體裝置提供資料;在完全提供資料之前,確定在提供給控制器的第一工作電壓和提供給非揮發性記憶體裝置的第二工作電壓中的任一個中是否已經發生電壓降;以及,在確定發生電壓降的情況下,保持對儲存資料的資料緩衝記憶體的區域的分配。
在實施例中,一種資料儲存裝置可包括:一非揮發性記憶體裝置;一控制單元,其配置為產生寫入用於控制非揮發性記憶體裝置工作的第一描述符;一記憶體控制單元,其配置為基於該第一描述符向非揮發性記憶體裝置提供控制信號和資料;以及一電壓偵測器,其配置為在提供給記憶體控制單元的第一工作電壓和提供給非揮發性記憶體裝置的第二工作電壓中的任一個下 降時,向記憶體控制單元提供電壓降信號,其中,記憶體控制單元透過第一描述符向控制單元報告指示已經發生電壓降的電力狀態資訊。
根據所述實施例,即使工作電壓下降,也可以將資料穩定地儲存在非揮發性記憶體裝置中。
100:資料儲存裝置
110:電源塊
120:非揮發性記憶體裝置
130:控制器
140:控制單元
150:工作記憶體
160:記憶體控制單元
170:電壓偵測器
180:資料緩衝記憶體
190:緩衝管理器
1000:資料處理系統
1100:主機裝置
1200:資料儲存裝置
1210:控制器
1211:主機介面單元
1212:控制單元
1213:記憶體介面單元
1214:隨機存取記憶體
1215:錯誤校正碼(ECC)單元
1220:非揮發性記憶體裝置
2000:資料處理系統
2100:主機裝置
2200:固態驅動器(SSD)
2210:SSD控制器
2211:記憶體介面單元
2212:主機介面單元
2213:錯誤校正碼(ECC)單元
2214:控制單元
2215:隨機存取記憶體
2220:緩衝記憶體裝置
2231~223n:非揮發性記憶體裝置
2240:電源
2241:輔助電源
2250:信號連接器
2260:電源連接器
3000:電腦系統
3100:網路介面卡
3200:中央處理單元(CPU)
3300:資料儲存裝置
3400:隨機存取記憶體(RAM)
3500:唯讀記憶體(ROM)
3600:使用者介面
3700:系統匯流排
S105~S170:步驟
圖1是示出根據實施例的資料儲存裝置的方塊圖。
圖2是描述根據實施例的由控制單元產生的描述符的圖。
圖3是描述根據實施例的電壓偵測器的操作的表。
圖4是描述根據實施例的記憶體控制單元的操作的圖。
圖5和圖6是描述根據實施例的緩衝管理器的操作的圖。
圖7是描述根據實施例的控制器的操作的流程圖。
圖8是示出根據實施例的資料處理系統的方塊圖。
圖9是示出根據實施例的包括固態驅動器(SSD)的資料處理系統的方塊圖。
圖10是示出圖9所示的SSD控制器的方塊圖。
圖11是示出安裝有根據實施例的資料儲存裝置的電腦系統的方塊圖。
在下文中,將參考附圖透過實施例的各種示例來描述資料儲存裝置及其操作方法。
在本發明中,在結合附圖閱讀以下示例性實施例之後,實現它們的優點、特徵和方法將變得更加明顯。然而,本發明可以以不同的形式實施,並且不應被解釋為限於本文所闡述的實施例。相反地,提供這些實施例以詳細地描述本發明至本發明所屬技術領域的人士能夠容易地應用本發明的技術構思的程度。
在本文中應當理解,本發明的實施例不限於附圖中所示的細節,並且附圖不必按比例繪製,並且在一些實例中,可能已將比例擴大以更清楚地描繪本發明的某些特徵。儘管本文使用了特定術語,但是應當理解,本文所使用的術語僅用於描述特定實施例的目的,並不意圖限定本發明的範圍。
如本文所使用的,術語“和/或”包括一個或多個相關所列項目的任何和所有組合。應當理解,當元件被稱為在另一元件“上”,“連接到”或“耦接到”另一元件時,其可以直接在另一元件上、連接到或耦接到另一元件,或者可以存在中間元件。如本文所使用的,單數形式也旨在包括複數形式,除非上下文另有明確指示。還應當理解,當在本說明書中使用術語“包括(includes)”和/或“包括有(including)”時,其指定存在至少一個所述特徵、步驟、操作和/或元件,但不排除存在或增加一個或多個其它特徵、步驟、操作和/或其元件。
在下文中,將參考附圖並透過實施例的各種示例來描述資料儲存裝置及其操作方法。
圖1是示出根據實施例的資料儲存裝置100的方塊圖。
參考圖1,資料儲存裝置100可包括非揮發性記憶體裝置120和控制器130。資料儲存裝置100還包括電源塊110。控制器130可包括控制單元 140、工作記憶體150、記憶體控制單元160、電壓偵測器170、資料緩衝記憶體180和緩衝管理器190。
資料儲存裝置100可儲存由諸如行動電話、MP3播放機、膝上型電腦、桌上型電腦、遊戲機、電視(TV)、車載娛樂資訊系統等的主機裝置(未示出)存取的資料。資料儲存裝置100也可被稱為記憶體系統。
資料儲存裝置100可根據與主機裝置電連接的介面的協定被製造成各種類型儲存裝置中的任一種。例如,資料儲存裝置100可被配置為各種儲存裝置中的任一種,例如固態驅動器,MMC、eMMC、RS-MMC和微型MMC形式的多媒體卡,SD、迷你SD和微型SD形式的安全數位卡,通用序列匯流排(USB)儲存裝置,通用快閃儲存(UFS)裝置,國際個人電腦記憶卡協會(PCMCIA)卡類型儲存裝置,周邊元件連接(PCI)卡類型儲存裝置,匯流排界面(PCI-E)卡類型儲存裝置,標準快閃記憶體(CF)卡,智慧媒體卡,記憶棒等。
資料儲存裝置100可被製造成各種類型的封裝類型中的任一種。例如,資料儲存裝置100可被製造成諸如疊層封裝(POP)、系統級封裝(SIP)、系統級晶片(SOC)、多晶片封裝(MCP)、板上晶片封裝(COB)、晶片級組合封裝(WFP)和晶片級堆疊封裝(WSP)的各種類型的封裝類型中的任一種。
資料儲存裝置100可包括電源塊110。電源塊110可由電源、電源管理積體電路(PMIC)等構成。
電源塊110可透過使用從外部裝置(未示出)提供的外部電壓Vext產生工作電壓V1和V2。電源塊110可以向控制器130提供工作電壓V1和V2。
雖然未示出,但工作電壓V1和V2可透過電力線被提供給控制器130的各自的內部塊。例如,第一工作電壓V1可提供給記憶體控制單元160。例如,第二工作電壓V2可透過記憶體控制單元160提供給非揮發性記憶體裝置120。
非揮發性記憶體裝置120可作為資料儲存裝置100的儲存介質來操作。非揮發性記憶體裝置120可被配置為諸如NAND快閃記憶體裝置、NOR快閃記憶體裝置、使用鐵電電容器的鐵電隨機存取記憶體(FRAM)、使用隧道磁阻(TMR)層的磁隨機存取記憶體(MRAM)、使用硫族化物合金的相變隨機存取記憶體(PCRAM)、以及使用過渡金屬氧化物的電阻式隨機存取記憶體(RERAM)的各種類型的非揮發性記憶體裝置中的任何一種。FRAM、MRAM、PCRAM和RERAM是一種能夠隨機存取記憶體單元的非揮發性隨機存取記憶體裝置。非揮發性記憶體裝置120可被配置為NAND快閃記憶體裝置與上述各種類型的非揮發性隨機存取記憶體裝置的組合。
非揮發性記憶體裝置120可透過通道CH與控制器130連接。通道CH可表示能夠傳送諸如命令、位址、控制時脈信號的控制信號和資料的信號線。
控制器130可使用從電源塊110提供的工作電壓V1來操作。
控制單元140可控制控制器130的一般操作。控制單元140可驅動載入在工作記憶體150中的代碼類型的指令或演算法,即,韌體或軟體,並且可控制控制器130的內部功能塊的操作。控制單元140可由微控制單元(MCU)或中央處理單元(CPU)構成。
工作記憶體150可儲存將被控制單元140驅動的軟體。此外,工作記憶體150可儲存驅動軟體所需的資料。工作記憶體150可由諸如動態隨機存取記憶體(DRAM)或靜態隨機存取記憶體(SRAM)的隨機存取記憶體構成。
記憶體控制單元160可基於由控制單元140產生的描述符來控制非揮發性記憶體裝置120。稍後將參考圖2詳細描述該描述符。記憶體控制單元160也可被稱為記憶體介面單元。
記憶體控制單元160可基於描述符向非揮發性記憶體裝置120提供控制信號。控制信號可包括用於控制非揮發性記憶體裝置120的命令、位址、控制時脈信號等。記憶體控制單元160可基於描述符將儲存在資料緩衝記憶體180中的資料提供給非揮發性記憶體裝置120。記憶體控制單元160可包括用於產生並驅動控制信號和資料的輸入/輸出驅動器(IO驅動器)161。
電壓偵測器170可偵測從電源塊110提供給控制器130的工作電壓V1和V2的電壓位準。基於偵測工作電壓V1和V2的電壓位準的結果,電壓偵測器170可向記憶體控制單元160提供電壓降信號VD。稍後將參考圖3詳細描述電壓偵測器170的操作。
資料緩衝記憶體180可暫時儲存待被儲存在非揮發性記憶體裝置120中的資料。資料緩衝記憶體180可緩衝從非揮發性記憶體裝置120中讀取的資料。儘管未示出,為了方便管理資料緩衝記憶體180可被分為複數個區域。
緩衝管理器190可將資料緩衝記憶體180分為複數個區域。緩衝管理器190可分配或釋放資料緩衝記憶體180的區域。區域的分配可表示其中資料被儲存在相應區域中的狀態或者表示儲存在相應區域中的資料有效。區域的 釋放可以表示其中資料沒有被儲存在相應區域中的狀態或者表示儲存在相應區域中的資料無效。
緩衝管理器190可產生並管理緩衝記憶體管理表以分配或釋放資料緩衝記憶體180的區域。
緩衝管理器190可根據從記憶體控制單元160提供的緩衝釋放信號RB來釋放資料緩衝記憶體180的區域。緩衝管理器190可根據從記憶體控制單元160提供的緩衝保持信號MB保持資料緩衝記憶體180的區域的分配。稍後將參考圖5和圖6詳細描述緩衝管理器190的操作。
圖2是描述根據實施例由圖1的控制單元140產生的描述符DSC的圖。
參考圖2,描述符DSC可表示工作命令,在該工作命令中將被記憶體控制單元160處理以控制非揮發性記憶體裝置120的任務被寫入。描述符DSC可由控制單元140產生,並且由記憶體控制單元160解碼並執行。為此,描述符DSC可包括由控制單元140或由控制單元140驅動的韌體管理的韌體管理資訊FMI、記憶體控制單元160的操作所需的記憶體控制單元操作資訊MCUOI以及記憶體控制單元160參考的以控制非揮發性記憶體裝置120的非揮發性記憶體裝置控制資訊NVMCI。
韌體管理資訊FMI可包括在產生描述符DSC時分配的描述符識別字ID和儲存描述符DSC的工作記憶體150的位址DSCADD。
此外,韌體管理資訊FMI可包括作為描述符DSC的處理結果、被報告給控制單元140的非揮發性記憶體裝置120的狀態資訊ST和指示工作電壓V1和V2是否下降的電源狀態資訊PWST。透過參考非揮發性記憶體裝置120的 狀態資訊ST和電源狀態資訊PWST,控制單元140可以為諸如根據描述符DSC執行的錯誤處理操作的操作執行後續措施。
記憶體控制單元操作資訊MCUOI可包括指示諸如待被非揮發性記憶體裝置120執行的讀取或寫入操作的操作的操作資訊OP。記憶體控制單元操作資訊MCUOI可進一步包括待被儲存在非揮發性記憶體裝置120中的資料被儲存於其中的資料緩衝記憶體180的位址DBADD或從非揮發性記憶體裝置120讀取的資料的將被儲存於其中的資料緩衝記憶體180的位址DBADD。
非揮發性記憶體裝置控制資訊NVMCI可包括將提供給非揮發性記憶體裝置120的命令CMD和位址ADD,以及表示儲存在非揮發性記憶體裝置120中的資料的大小或者從非揮發性記憶體裝置120中讀取的資料的大小的資料大小資訊DTS。
圖3是描述根據實施例的圖1的電壓偵測器170的操作的表。如上所述,第一工作電壓V1是提供給控制器130的內部功能塊的工作電壓,第二工作電壓V2是提供給非揮發性記憶體裝置120的工作電壓。
電壓偵測器170可偵測第一工作電壓V1的位準是否小於第一閾值電壓Vth1的位準。當第一工作電壓V1的位準小於第一閾值電壓Vth1的位準時,電壓偵測器170可向記憶體控制單元160提供指示已經發生電壓降的電壓降信號VD。
電壓偵測器170可偵測第二工作電壓V2的位準是否小於第二閾值電壓Vth2的位準。當第二工作電壓V2的位準小於第二閾值電壓Vth2的位準時,電壓偵測器170可向記憶體控制單元160提供指示已經發生電壓降的電壓降信號VD。
即,當在第一工作電壓V1和第二工作電壓V2中的任一個中發生電壓降時,電壓偵測器170可向記憶體控制單元160提供電壓降信號VD。
圖4是描述根據實施例的圖1的記憶體控制單元160的操作的圖。例如,基於描述符控制非揮發性記憶體裝置120的寫入操作的記憶體控制單元160的控制信號和資料的傳輸過程在圖4中被示出。
記憶體控制單元160可向非揮發性記憶體裝置120提供命令寫入操作的第一命令CMD1。記憶體控制單元160可向非揮發性記憶體裝置120提供其中將要儲存資料的非揮發性記憶體裝置120的記憶體單元的位址ADD。
記憶體控制單元160可向非揮發性記憶體裝置120提供資料D1至Dn。將資料D1至Dn提供給非揮發性記憶體裝置120的時段將被定義為資料輸入時段Din。在資料輸入時段Din之後,記憶體控制單元160可基於從電壓偵測器170提供的電壓降信號VD向緩衝管理器190提供緩衝保持信號MB或緩衝釋放信號RB。
當在資料輸入時段Din結束之前,即在資料的提供完成之前,接收到電壓降信號VD時,記憶體控制單元160可向緩衝管理器190提供緩衝保持信號MB。相反地,當在資料輸入時段Din結束之前沒有接收到電壓降信號VD時,則記憶體控制單元160可向緩衝管理器190提供緩衝釋放信號RB。
在資料輸入時段Din之後,記憶體控制單元160可向非揮發性記憶體裝置120提供命令啟動內部操作ITOP的第二命令CMD2。內部操作ITOP可表示其中資料D1至Dn實際被儲存在非揮發性記憶體裝置120的記憶體單元中的操作。此外,第二命令CMD2的傳輸過程可被省略。
在內部操作時間tITOP或tPROG過去之後,記憶體控制單元160可向非揮發性記憶體裝置120提供用於確定非揮發性記憶體裝置120的狀態的第三命令CMD3。非揮發性記憶體裝置120可向記憶體控制單元160提供由狀態資訊ST所表示的執行的寫入操作的結果,即,寫入操作是否已經通過或失敗。
在接收到非揮發性記憶體裝置120的狀態資訊ST之後,基於從非揮發性儲存裝置120提供的狀態資訊ST和電壓偵測器170提供的電壓降信號VD,記憶體控制單元160可透過描述符DSC向控制單元140報告非揮發性記憶體裝置120的狀態資訊ST和電源狀態資訊PWST。
圖5和圖6是描述根據實施例的圖1的緩衝管理器190的操作的簡圖。圖5示出當接收到緩衝釋放信號RB時緩衝管理器190的操作,並且圖6示出當接收到緩衝保持信號MB時緩衝管理器190的操作。在描述圖5和圖6時,假定資料緩衝記憶體180的第一區域A1被分配(ALC)以儲存圖4的資料D1至Dn。在圖5和圖6的緩衝記憶體管理表中,符號“O”可表示相應的區域被分配,符號“X”可表示相應的區域從分配中釋放。
參考圖5,如果在資料輸入時段Din之後接收到緩衝釋放信號RB,則緩衝管理器190可釋放儲存資料D1至Dn的第一區域A1的分配。即,緩衝管理器190可更新緩衝記憶體管理表以指示第一區域A1從分配中釋放。
即使資料D1至Dn實際上沒有被擦除,但由緩衝管理器190從分配中釋放的第一區域A1被認為是其中沒有儲存資料的區域。從分配中釋放的第一區域A1可被重新分配以儲存其他資料。
參考圖6,如果在資料輸入時段Din之後接收到緩衝保持信號MB,則緩衝管理器190可保持其中儲存資料D1至Dn的第一區域A1的分配。 即,如果在資料輸入時段Din之後接收到緩衝保持信號MB,則緩衝管理器190可不釋放其中儲存資料D1至Dn的第一區域A1的分配。即,緩衝管理器190可保持緩衝記憶體管理表以指示第一區域A1被分配。
如果保持第一區域A1的分配,則第一區域A1不會被重新分配以儲存其他資料。這表示儲存在第一區域A1中的資料D1至Dn可與之前一樣連續被存取。儲存在第一區域A1中的資料D1至Dn可用於控制單元140的錯誤處理操作。
圖7是描述根據實施例的控制器130的操作的流程圖。下面將參照圖1和圖7的控制器130詳細描述控制器130的操作。
參考圖7,在步驟S105,基於由控制單元140產生的描述符,記憶體控制單元160可向非揮發性記憶體裝置120提供寫入命令和位址。
在步驟S110,基於該描述符,記憶體控制單元160可向非揮發性記憶體裝置120提供儲存在資料緩衝記憶體180中的寫入資料。即,如在圖4中所示的資料輸入時段Din中一樣,記憶體控制單元160可向非揮發性記憶體裝置120傳輸寫入資料。
在步驟S115,記憶體控制單元160可確定是否已經發生電壓降。例如,記憶體控制單元160可在寫入資料被完全提供之前確定是否已經從電壓偵測器170接收到電壓降信號VD。
當確定沒有發生電壓降(S115=否)時,該過程可進入到步驟S120。
在步驟S120,記憶體控制單元160可向緩衝管理器190提供緩衝釋放信號RB。
在步驟S125,根據從記憶體控制單元160提供的緩衝釋放信號RB,緩衝管理器190可釋放其中儲存寫入資料的區域的分配。例如,緩衝管理器190可更新緩衝記憶體管理表使得儲存有寫入資料的區域從分配中釋放。
在步驟S130,在經過內部操作時間tITOP之後,記憶體控制單元160可確定非揮發性記憶體裝置120的狀態。例如,記憶體控制單元160可向非揮發性記憶體裝置120提供用於確定非揮發性記憶體裝置120的狀態的命令。非揮發性記憶體裝置120可根據這種命令向記憶體控制單元160提供狀態資訊ST,即,指示寫入操作是否已經通過或失敗的資訊。
在步驟S135,記憶體控制單元160可透過描述符向控制單元140報告非揮發性記憶體裝置120的狀態資訊ST和電源狀態資訊PWST。由於沒有發生電壓降,電源狀態資訊PWST可以表示正常。
相反地,當確定已經發生了電壓降時(S115=是),該過程可進入到步驟S150。
在步驟S150,記憶體控制單元160可向緩衝管理器190提供緩衝保持信號MB。
在步驟S155,根據從記憶體控制單元160提供的緩衝保持信號MB,緩衝管理器190可保持儲存有寫入資料的區域的分配。
在步驟S160,在經過內部操作時間tITOP之後,記憶體控制單元160可確定非揮發性記憶體裝置120的狀態。例如,記憶體控制單元160可向非揮發性記憶體裝置120提供用於確定非揮發性記憶體裝置120的狀態的命令。非揮發性記憶體裝置120可根據這種命令向記憶體控制單元160提供狀態資訊ST,即,指示寫入操作是否已經通過或失敗的資訊。
在步驟S165,記憶體控制單元160可透過描述符向控制單元140報告非揮發性記憶體裝置120的狀態資訊ST和電源狀態資訊PWST。由於已經發生電壓降,電源狀態資訊PWST可以表示電壓降發生。
在步驟S170,控制單元140可再次對寫入資料執行寫入操作。即,基於來自記憶體控制單元160報告的電源狀態資訊PWST,控制單元140可確定寫入資料被不穩定地輸入。控制單元140可對寫入資料執行錯誤處理操作。例如,控制單元140可產生新的描述符,使得再次執行保存在資料緩衝記憶體180中的寫入資料的寫入操作。記憶體控制單元160可基於新產生的描述符執行從步驟S105開始的寫入處理。
圖8是說明根據實施例的資料處理系統1000的方塊圖。
參考圖8,資料處理系統1000可包括主機裝置1100和資料儲存裝置1200。
資料儲存裝置1200可包括控制器1210和非揮發性記憶體裝置1220。資料儲存裝置1200可透過連接到諸如行動電話、MP3播放機、膝上型電腦、裝上型電腦、遊戲機、電視(TV)、車載式資訊娛樂系統等的主機裝置1100而被使用。資料儲存裝置1200也被稱為記憶體系統。
控制器1210可包括主機介面單元1211、控制單元1212、記憶體介面單元1213、隨機存取記憶體1214和錯誤校正碼(ECC)單元1215。
主機介面單元1211可連接主機裝置1100和控制器1210。例如,主機介面單元1211可透過諸如通用序列匯流排(USB)協議、通用快閃記憶體(UFS)協定、多媒體卡(MMC)協定、周邊元件連接(PCI)協定、串列匯流排(PCI-E)協定、並行高級技術附件(PATA)協定、串列高級技術附件(SATA)協定,小 型電腦系統介面(SCSI)協定和串列連接SCSI(SAS)協定的各種介面協定中的一個與主機裝置1100溝通。
控制單元1212可控制控制器1210的一般操作來回應來自主機裝置1100的請求。控制單元1212可驅動用於控制非揮發性記憶體裝置1220的韌體或軟體。
隨機存取記憶體1214可用作控制單元1212的工作記憶體。隨機存取記憶體1214可用作暫時儲存從非揮發性記憶體裝置1220讀出的資料或者從主機裝置1100提供的資料的緩衝記憶體。
記憶體介面單元1213可連接控制器1210和非揮發性記憶體裝置1220。記憶體介面單元1213可向非揮發性記憶體裝置1220提供命令和位址。此外,記憶體介面單元1213可與非揮發性記憶體裝置1220交換資料。
ECC單元1215可使用預定的錯誤校正碼對將儲存在非揮發性記憶體裝置1220中的資料進行編碼。此外,ECC單元1215可使用預定的錯誤校正碼對從非揮發性記憶體裝置1220讀出的資料進行解碼。
非揮發性記憶體裝置1220可用作資料儲存裝置1200的儲存介質。非揮發性記憶體裝置1220可包括複數個非揮發性記憶體晶片或管芯NVM_1至NVM_k。
控制器1210和非揮發性記憶體裝置1220可被製造成各種資料儲存裝置中的任一種。例如,控制器1210和非揮發性記憶體裝置1220可集成到一個半導體裝置中,並且可被製造成MMC、eMMC、RS-MMC和微MMC形式的多媒體卡、SD、小型SD和微型SD形式的安全數位卡、通用序列匯流排(USB) 儲存裝置、通用快閃記憶體(UFS)裝置、國際個人電腦記憶卡協會(PCMCIA)卡、緊湊型快閃記憶體(CF)卡、智慧媒體卡、記憶棒等的任一種。
圖9是示出根據實施例的包括固態驅動器(SSD)的資料處理系統2000的方塊圖。
如圖9所示,資料處理系統2000可包括主機裝置2100和固態驅動器(SSD)2200。
SSD2200可包括SSD控制器2210、緩衝記憶體裝置2220、非揮發性記憶體裝置2231至223n、電源2240、信號連接器2250和電源連接器2260。
SSD控制器2210回應於來自主機裝置2100的請求可存取非揮發性記憶體裝置2231至223n。
緩衝記憶體裝置2220可將資料暫時儲存在非揮發性記憶體裝置2231至223n中。此外,緩衝記憶體裝置2220可暫時儲存從非揮發性記憶體裝置2231至223n中讀出的資料。暫時儲存在緩衝記憶體裝置2220中的資料可在SSD控制器2210的控制下被傳輸到主機裝置2100或非揮發性記憶體裝置2231至223n。
非揮發性記憶體裝置2231至223n可用作SSD 2200的儲存介質。非揮發性記憶體裝置2231至223n可透過複數個通道CH1至CHn與SSD控制器2210分別連接。一個或複數個非揮發性記憶體裝置可連接到一個通道。連接到每個通道的非揮發性記憶體裝置可連接到相同的信號匯流排和資料匯流排。
電源2240可將透過電源連接器2260輸入的電源PWR提供到SSD 2200的內部。電源2240可包括輔助電源2241。輔助電源2241可提供電源以使 SSD 2200在突然發生斷電時正常地終止。輔助電源2241可包括能夠對電源PWR充電的大容量電容器。
SSD控制器2210可透過信號連接器2250與主機裝置2100交換信號SGL。信號SGL可包括命令、位址、資料等。根據主機裝置2100和SSD 2200之間的介面方案,信號連接器2250可透過諸如通用快閃記憶體(UFS)、並行高級技術附件(PATA)、串列高級技術附件(SATA)、小型電腦系統介面(SCSI)、串列連接SCSI(SAS)、周邊元件連接(PCI)和串列匯流排(PCI-E)協定等的連接器配置。
圖10是示出圖9所示的SSD控制器2210的方塊圖。
參考圖10,SSD控制器2210可包括記憶體介面單元2211、主機介面單元2212、錯誤校正碼(ECC)單元2213、控制單元2214和隨機存取記憶體2215。
記憶體介面單元2211可向非揮發性記憶體裝置2231至223n提供諸如命令和位址的控制信號。此外,記憶體介面單元2211可與非揮發性記憶體裝置2231至223n交換資料。記憶體介面單元2211可在控制單元2214的控制下將從緩衝記憶體裝置2220傳輸的資料分配到各個通道CH1至CHn。此外,記憶體介面單元2211可在控制單元2214的控制下將從非揮發性記憶體裝置2231至223n中讀出的資料傳輸到緩衝記憶體裝置2220。
主機介面單元2212可提供對應於主機裝置2100的協定的關於SSD 2200的介面連接。例如,主機介面單元2212可透過通用快閃記憶體(UFS)、並行高級技術附件(PATA)、串列高級技術附件(SATA)、小型電腦系統介面(SCSI)、串列連接SCSI(SAS)、周邊元件連接(PCI)和串列匯流排(PCI-E)協 定中的任一個與主機裝置2100溝通。此外,主機介面單元2212可執行支援主機裝置2100的磁片類比功能以將SSD 2200識別為硬碟驅動器(HDD)。
控制單元2214可分析並處理從主機裝置2100輸入的信號SGL。控制單元2214可根據用於驅動SSD 2200的韌體或軟體控制緩衝記憶體裝置2220和非揮發性記憶體裝置2231至223n的操作。隨機存取記憶體2215可用作用於驅動韌體或軟體的工作記憶體。
ECC單元2213可在儲存在緩衝記憶體裝置2220中的資料之中產生待被傳輸到非揮發性記憶體裝置2231至223n的同位資料。產生的同位資料可與資料一起儲存在非揮發性記憶體裝置2231至223n中。ECC單元2213可偵測從非揮發性記憶體裝置2231至223n讀出的資料的錯誤。當偵測到的錯誤在可校正範圍內時,ECC單元2213可校正偵測到的錯誤。
圖11是示出根據實施例的安裝有資料儲存裝置的電腦系統3000的方塊圖。
如圖11所示,電腦系統3000包括電連接到系統匯流排3700的網路介面卡3100、中央處理單元(CPU)3200、資料儲存裝置3300、隨機存取記憶體(RAM)3400、唯讀記憶體(ROM)3500和使用者介面3600。資料儲存裝置3300可由圖1所示的資料儲存裝置100、圖8所示的資料儲存裝置1200或圖9所示的SSD 2200配置。
網路介面卡3100可在電腦系統3000和外部網路之間提供介面連接。中央處理單元3200可執行用於驅動駐留在RAM 3400的作業系統或應用程式的一般操作處理。
資料儲存裝置3300可儲存電腦系統3000中所需的通用資料。例如,用於驅動電腦系統3000的作業系統、應用程式、各種程式模組、程式資料和使用者資料可儲存在資料儲存裝置3300中。
RAM 3400可用作電腦系統3000的工作記憶體。在開機時,從資料儲存裝置3300中讀出的作業系統、應用程式、各種程式模組和驅動程式所需的程式資料被載入到RAM 3400中。在作業系統被驅動之前啟動的基本輸入/輸出系統(BIOS)可儲存在ROM 3500中。電腦系統3000和使用者之間的資訊交換可透過使用者介面3600來實現。
雖然上面已經描述了各種實施例,但是本發明所屬技術領域技術的人士應理解所描述的實施例僅是示例。因此,本文所描述的資料儲存裝置及其操作方法不應基於所描述的實施例被限定。
100:資料儲存裝置
110:電源塊
120:非揮發性記憶體裝置
130:控制器
140:控制單元
150:工作記憶體
160:記憶體控制單元
170:電壓偵測器
180:資料緩衝記憶體
190:緩衝管理器

Claims (20)

  1. 一種資料儲存裝置,其包括:一非揮發性記憶體裝置;一控制單元,其配置為產生包括用於控制該非揮發性記憶體裝置的任務的描述符;一記憶體控制單元,其配置為基於該描述符向該非揮發性記憶體裝置提供控制信號和寫入資料;和一電壓偵測器,其配置為當提供給該記憶體控制單元的一第一工作電壓和提供給該非揮發性記憶體裝置的一第二工作電壓中的至少一個下降時,向該記憶體控制單元提供一電壓降信號,其中,在該寫入資料完全提供之前,該電壓偵測器提供該電壓降信號,以及該控制單元基於指示已經發生電壓降的電源狀態資訊確定該寫入資料輸入不穩定,並於該寫入資料完全提供之後,基於一確定結果再次產生一個新的描述符。
  2. 如請求項1所述的資料儲存裝置,進一步包括:一資料緩衝記憶體,其配置為暫時儲存該寫入資料;和一緩衝管理器,其配置為管理該資料緩衝記憶體的區域的分配和釋放。
  3. 如請求項2所述的資料儲存裝置,其中,當在該寫入資料的提供完成之前接收到該電壓降信號時,該記憶體控制單元向控制儲存有該寫入資料的區域的分配的該緩衝管理器提供一緩衝保持信號而不釋放分配,因此儲存有該寫入資料的區域不被新分配用於儲存其他寫入資料。
  4. 如請求項3所述的資料儲存裝置,其中,該緩衝管理器根據該緩衝保持信號保持儲存有該寫入資料的區域的分配。
  5. 如請求項3所述的資料儲存裝置,其中,該記憶體控制單元透過該描述符向該控制單元報告指示已經發生該電壓降的該電源狀態資訊。
  6. 如請求項5所述的資料儲存裝置,其中,該控制單元基於該電源狀態資訊對該寫入資料再次執行一寫入操作。
  7. 如請求項2所述的資料儲存裝置,其中當在該寫入資料的提供完成之前沒有接收到該電壓降信號時,該記憶體控制單元向該緩衝管理器提供一緩衝釋放信號以控制儲存有該寫入資料的該區域的分配來釋放分配。
  8. 如請求項7所述的資料儲存裝置,其中該緩衝管理器根據該緩衝釋放信號釋放儲存有該寫入資料的區域的分配。
  9. 如請求項1所述的資料儲存裝置,其中當該第一工作電壓的位準小於一第一閾值電壓的位準時,該電壓偵測器向該記憶體控制單元提供該電壓降信號。
  10. 如請求項1所述的資料儲存裝置,其中當該第二工作電壓的位準小於一第二閾值電壓的位準時,該電壓偵測器向該記憶體控制單元提供該電壓降信號。
  11. 一種用於操作一資料儲存裝置的方法,其包括一非揮發性記憶體裝置和一控制該非揮發性記憶體裝置的控制器,該方法包括:向該非揮發性記憶體裝置提供資料; 在完全提供該資料之前,確定在提供給該控制器的一第一工作電壓和提供給該非揮發性記憶體裝置的一第二工作電壓中的至少一個中是否已經發生一電壓降;並且當確定已經發生該電壓降時,於該寫入資料完全提供之後,保持對儲存該資料的一資料緩衝記憶體的區域的分配。
  12. 如請求項11所述的方法,進一步包括:再次對該資料執行一寫入操作。
  13. 如請求項11所述的方法,進一步包括:當確定沒有發生該電壓降時,釋放對儲存該資料的該資料緩衝記憶體的該區域的分配。
  14. 一種資料儲存裝置,其包括:一非揮發性記憶體裝置;一控制單元,其配置為產生包括用於控制該非揮發性記憶體裝置的任務的一第一描述符;一記憶體控制單元,其配置為基於該第一描述符向該非揮發性記憶體裝置提供控制信號和資料;和一電壓偵測器,其配置為當提供給該記憶體控制單元的一第一工作電壓和提供給該非揮發性記憶體裝置的一第二工作電壓中的至少一個下降時,向該記憶體控制單元提供一電壓降信號,其中,於該寫入資料完全提供之前,該電壓偵測器提供該電壓降信號,以及 該控制單元基於指示已經發生一電壓降的電源狀態資訊,確定該寫入資料輸入不穩定,並於該寫入資料完全提供之後,基於一確定結果產生一第二描述符,以及該記憶體控制單元透過該第一描述符向該控制單元報告指示已經發生該電壓降的該電源狀態資訊。
  15. 如請求項14所述的資料儲存裝置,其中,該控制單元透過參考該電源狀態資訊對根據該第一描述符執行的資料的寫入操作執行一錯誤處理操作。
  16. 如請求項15所述的資料儲存裝置,其中,該記憶體控制單元基於該第二描述符再次執行該資料的寫入操作。
  17. 如請求項16所述的資料儲存裝置,其中,該記憶體控制單元基於該第二描述符向該非揮發性記憶體裝置再次提供該控制信號和該資料。
  18. 如請求項14所述的資料存放裝置,進一步包括:一資料緩衝記憶體,其配置為儲存該資料;和一緩衝管理器,其配置為管理該資料緩衝記憶體的區域的分配和釋放。
  19. 如請求項18所述的資料儲存裝置,其中,該記憶體控制單元基於該電壓降信號向該緩衝管理器提供一緩衝保持信號。
  20. 如請求項19所述的資料儲存裝置,其中,該緩衝管理器根據該緩衝保持信號保持對儲存有該資料的該資料緩衝記憶體的區域的分配,因此儲存有該寫入資料的該資料緩衝記憶體的該區域不被新分配用於儲存其他寫入資料。
TW105134323A 2016-06-17 2016-10-24 資料儲存裝置及其操作方法 TWI727985B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR1020160075996A KR102609473B1 (ko) 2016-06-17 2016-06-17 데이터 저장 장치 및 그것의 동작 방법
??10-2016-0075996 2016-06-17
KR10-2016-0075996 2016-06-17

Publications (2)

Publication Number Publication Date
TW201800931A TW201800931A (zh) 2018-01-01
TWI727985B true TWI727985B (zh) 2021-05-21

Family

ID=60660160

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105134323A TWI727985B (zh) 2016-06-17 2016-10-24 資料儲存裝置及其操作方法

Country Status (4)

Country Link
US (1) US10073637B2 (zh)
KR (1) KR102609473B1 (zh)
CN (1) CN107526694B (zh)
TW (1) TWI727985B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10283566B2 (en) * 2017-06-01 2019-05-07 Sandisk Technologies Llc Three-dimensional memory device with through-stack contact via structures and method of making thereof
TWI798034B (zh) * 2022-03-23 2023-04-01 慧榮科技股份有限公司 記憶體控制器與資料處理方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060179204A1 (en) * 2005-02-08 2006-08-10 Cohen Earl T Method and apparatus for communicating over a resource interconnect
US20090013113A1 (en) * 2007-07-03 2009-01-08 Henry Russell J Methods and systems for interprocessor message exchange between devices using only write bus transactions
US20120011298A1 (en) * 2010-07-07 2012-01-12 Chi Kong Lee Interface management control systems and methods for non-volatile semiconductor memory
US20130301373A1 (en) * 2012-05-14 2013-11-14 Eugene Jinglun Tam Memory Chip Power Management
TW201532056A (zh) * 2013-12-06 2015-08-16 Sandisk Technologies Inc 用於資料儲存裝置之多重電源供應輸送
US9224433B1 (en) * 2014-04-09 2015-12-29 Altera Corporation Method and apparatus for power supply aware memory access operations in an integrated circuit

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5371709A (en) * 1993-04-01 1994-12-06 Microchip Technology Incorporated Power management system for serial EEPROM device
US6822899B1 (en) * 2002-12-23 2004-11-23 Cypress Semiconductor Corporation Method of protecting flash memory from data corruption during fast power down events
JP4870409B2 (ja) * 2004-10-26 2012-02-08 三星電子株式会社 不揮発性メモリ装置及びそれのプログラム方法
JP4881856B2 (ja) * 2005-03-28 2012-02-22 パナソニック株式会社 記憶装置
US20070130390A1 (en) * 2005-11-21 2007-06-07 Yi-Hsien Hao Method and apparatus for effective package memory bandwidth management
KR101507975B1 (ko) * 2007-09-19 2015-04-06 마벨 월드 트레이드 리미티드 솔리드 스테이트 메모리 제어기를 위한 플렉시블 시퀀서 디자인 아키텍쳐
KR101602939B1 (ko) * 2009-10-16 2016-03-15 삼성전자주식회사 불휘발성 메모리 시스템 및 그것의 데이터 관리 방법
CN102473141B (zh) * 2010-03-26 2015-08-05 松下电器产业株式会社 非易失性存储装置以及存储控制器

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060179204A1 (en) * 2005-02-08 2006-08-10 Cohen Earl T Method and apparatus for communicating over a resource interconnect
US20090013113A1 (en) * 2007-07-03 2009-01-08 Henry Russell J Methods and systems for interprocessor message exchange between devices using only write bus transactions
US20120011298A1 (en) * 2010-07-07 2012-01-12 Chi Kong Lee Interface management control systems and methods for non-volatile semiconductor memory
US20130301373A1 (en) * 2012-05-14 2013-11-14 Eugene Jinglun Tam Memory Chip Power Management
TW201532056A (zh) * 2013-12-06 2015-08-16 Sandisk Technologies Inc 用於資料儲存裝置之多重電源供應輸送
US9224433B1 (en) * 2014-04-09 2015-12-29 Altera Corporation Method and apparatus for power supply aware memory access operations in an integrated circuit

Also Published As

Publication number Publication date
TW201800931A (zh) 2018-01-01
KR102609473B1 (ko) 2023-12-04
US10073637B2 (en) 2018-09-11
US20170364286A1 (en) 2017-12-21
KR20170142483A (ko) 2017-12-28
CN107526694A (zh) 2017-12-29
CN107526694B (zh) 2021-05-04

Similar Documents

Publication Publication Date Title
US11854596B2 (en) Data storage device and operating method thereof
US10303378B2 (en) Data storage device
US9189397B2 (en) Data storage device including buffer memory
CN111506516A (zh) 数据存储装置及数据存储装置的操作方法
KR102225313B1 (ko) 데이터 저장 장치의 동작 방법
US9977735B2 (en) Data storage device and operating method thereof
KR20200085967A (ko) 데이터 저장 장치 및 그 동작 방법
US10747462B2 (en) Data processing system and operating method thereof
KR20160025292A (ko) 데이터 저장 장치, 그것을 포함하는 데이터 처리 시스템 및 그것의 동작 방법
JP2021125248A (ja) コントローラ、コントローラの動作方法及びそれを含む保存装置
US20210326060A1 (en) Nonvolatile memory device, data storage device including the same and operating method thereof
US10096371B2 (en) Data storage device and operating method thereof
TWI727985B (zh) 資料儲存裝置及其操作方法
CN107219998B (zh) 数据存储装置及其操作方法
TW201824279A (zh) 非揮發性記憶體裝置和包括其的數據儲存裝置之操作方法
CN108417232B (zh) 数据存储装置及其操作方法
US20220107757A1 (en) Host, data storage device, data processing system and data processing method
US10657046B2 (en) Data storage device and operating method thereof
KR102695482B1 (ko) 데이터 저장 장치 및 그것의 동작 방법
KR20220076803A (ko) 데이터 저장 장치 및 그것의 동작 방법
KR102697889B1 (ko) 데이터 저장 장치 및 그것의 동작 방법
CN111324302B (zh) 数据存储装置及其操作方法
US11314461B2 (en) Data storage device and operating method of checking success of garbage collection operation
KR102707997B1 (ko) 컨트롤러, 메모리 시스템 및 그것의 동작 방법
KR20150072485A (ko) 데이터 저장 장치 및 그것의 동작 방법