TWI631460B - 資料讀取方法、記憶體控制電路單元與記憶體儲存裝置 - Google Patents

資料讀取方法、記憶體控制電路單元與記憶體儲存裝置 Download PDF

Info

Publication number
TWI631460B
TWI631460B TW106116782A TW106116782A TWI631460B TW I631460 B TWI631460 B TW I631460B TW 106116782 A TW106116782 A TW 106116782A TW 106116782 A TW106116782 A TW 106116782A TW I631460 B TWI631460 B TW I631460B
Authority
TW
Taiwan
Prior art keywords
unit
entity
address
stylized
plane
Prior art date
Application number
TW106116782A
Other languages
English (en)
Other versions
TW201901433A (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 群聯電子股份有限公司
Priority to TW106116782A priority Critical patent/TWI631460B/zh
Priority to US15/648,459 priority patent/US20180335942A1/en
Application granted granted Critical
Publication of TWI631460B publication Critical patent/TWI631460B/zh
Publication of TW201901433A publication Critical patent/TW201901433A/zh

Links

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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • 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
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash 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/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
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7208Multiple device management, e.g. distributing data over multiple flash devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Read Only Memory (AREA)
  • Memory System (AREA)

Abstract

一種用於可複寫式非揮發性記憶體模組的資料讀取方法,包括接收指示從多個邏輯位址讀取資料的讀取指令;選取所述邏輯位址中符合預定條件之多個所選取的邏輯位址,其中所選取的邏輯位址包括映射至第一實體程式化單元的第一邏輯位址與映射至第二實體程式化單元的第二邏輯位址,其中預定條件包括第一實體程式化單元屬於第一平面,第二實體程式化單元屬於第二平面,第一平面與第二平面不同且屬於同一晶粒,且第一實體程式化單元的第一地址索引值與第二實體程式化單元的第二地址索引值不同;以及平行地讀取屬於所選取的邏輯位址的資料。

Description

資料讀取方法、記憶體控制電路單元與記憶體儲存裝置
本發明是有關於一種資料讀取方法,且特別是有關於一種可複寫式非揮發性記憶體模組的資料讀取方法、記憶體控制電路單元與記憶體儲存裝置。
數位相機、手機與MP3播放器在這幾年來的成長十分迅速,使得消費者對儲存媒體的需求也急速增加。由於可複寫式非揮發性記憶體模組(rewritable non-volatile memory module)具有資料非揮發性、省電、體積小、無機械結構、讀寫速度快等特性,非常適合作為各種可攜式電子產品的儲存媒體而設置在各種可攜式電子產品中。
一般來說,在配置了具有多個晶粒(die)或多個平面(plane)的可複寫式非揮發性記憶體模組的儲存裝置中,記憶體控制器可使用多平面(multi-plane)存取操作來加快資料的存取速度。例如,記憶體控制器可藉由多平面讀取操作而同時對屬於不同晶粒或屬於不同平面的多個實體程式化單元下達讀取指令以同時讀取儲存在上述的多個實體程式化單元中的資料。
然而,傳統上,記憶體控制器只能在要執行循序讀取(sequential read)時才能使用多平面讀取操作來同時讀取儲存在屬於不同平面的多個實體程式化單元中的資料。也就是說,只有在欲讀取的多個實體程式化單元在其所屬的平面中的位置彼此相同的情況下才能執行多平面讀取操作。基於此限制,記憶體控制器便無法使用多平面讀取操作來加快隨機讀取的讀取速度,以致於多平面讀取操作的效果非常差。
本發明提供一種資料讀取方法、記憶體控制電路單元與記憶體儲存裝置,可提升對應隨機讀取操作的讀取速度。
本發明的一範例實施例提出一種用於可複寫式非揮發性記憶體模組的資料讀取方法。所述可複寫式非揮發性記憶體模組具有至少一晶粒、複數個平面與複數個實體程式化單元。本資料讀取方法包括從主機系統接收至少一讀取指令,其中所述至少一讀取指令指示讀取屬於複數個邏輯位址的資料。再者,本資料讀取方法也包括選取所述複數個邏輯位址中符合預定條件之複數個所選取的邏輯位址,其中所述複數個所選取的邏輯位址至少包括第一邏輯位址與第二邏輯位址,所述第一邏輯位址映射至所述複數個實體程式化單元中的第一實體程式化單元,所述第二邏輯位址映射至所述複數個實體程式化單元中的第二實體程式化單元,其中所述預定條件包括所述第一實體程式化單元屬於所述複數個平面中的第一平面,所述第二實體程式化單元屬於所述複數個平面中的第二平面,所述第一平面不同於所述第二平面,所述第一平面與所述第二平面屬於所述至少一晶粒中的同一晶粒,且對應所述第一實體程式化單元的一第一地址索引值與對應所述第二實體程式化單元的一第二地址索引值不同。此外,本資料讀取方法還包括執行對應所述複數個所選取的邏輯位址的讀取操作以平行地讀取屬於所述複數個所選取的邏輯位址的資料。
在本發明的一範例實施例中,所述複數個所選取的邏輯位址更包括第三邏輯位址與第四邏輯位址。所述第三邏輯位址映射至所述複數個實體程式化單元中的第三實體程式化單元,所述第四邏輯位址映射至所述複數個實體程式化單元中的第四實體程式化單元,其中所述預定條件更包括所述第三實體程式化單元屬於所述複數個平面中的第三平面,所述第四實體程式化單元屬於所述複數個平面中的第四平面,所述第一平面、所述第二平面、所述第三平面與所述第四平面彼此不相同,且所述第一平面、所述第二平面、所述第三平面與所述第四平面屬於所述至少一晶粒中的同一晶粒。
在本發明的一範例實施例中,所述資料讀取方法更包括:根據預定規則決定所述複數個邏輯位址的讀取順序;以及根據所述讀取順序執行對應所述複數個邏輯位址的至少一讀取操作。所述至少一讀取操作包括對應所述複數個所選取的邏輯位址的所述讀取操作。
在本發明的一範例實施例中,所述複數個邏輯位址更包括不符合所述預定條件的至少一邏輯位址。上述的根據所述讀取順序執行對應所述複數個邏輯位址的所述至少一讀取操作的步驟包括:根據所述讀取順序執行對應所述複數個所選取的邏輯位址的所述讀取操作,並且在完成對應所述複數個所選取的邏輯位址的所述讀取操作之後,執行對應不符合所述預定條件的所述至少一邏輯位址的至少一讀取操作。
在本發明的一範例實施例中,所述複數個邏輯位址更包括不符合所述預定條件的至少一邏輯位址。上述的根據所述讀取順序執行對應所述複數個邏輯位址的所述至少一讀取操作的步驟包括:根據所述讀取順序執行對應不符合所述預定條件的所述至少一邏輯位址的至少一讀取操作,並且在完成對應不符合所述預定條件的所述至少一邏輯位址的所述至少一讀取操作之後,執行對應所述複數個所選取的邏輯位址的所述讀取操作。
在本發明的一範例實施例中,所述複數個實體程式化單元被區分為第一使用區域與第二使用區域,其中屬於所述第一使用區域的實體程式化單元是以第一程式化模式被程式化,並且屬於所述第二使用區域的實體程式化單元是以第二程式化模式被程式化,其中所述預定條件更包括所述第一實體程式化單元與所述第二實體程式化單元屬於相同的使用區域。
在本發明的一範例實施例中,所述第一程式化模式為單階記憶胞程式化模式,並且所述第二程式化模式為複數階記憶胞程式化模式。
在本發明的一範例實施例中,所述複數個平面中的每一個平面包括複數個實體抹除單元,且所述複數個實體抹除單元中的每一個實體抹除單元包括所述複數個實體程式化單元中的部分的實體程式化單元。所述第一實體程式化單元屬於所述複數個實體抹除單元中的一第一實體抹除單元,且所述第二實體程式化單元屬於所述複數個實體抹除單元中的一第二實體抹除單元,其中所述第一地址索引值用以指示所述第一實體程式化單元的起始位址相對於所述第一實體抹除單元的起始位址的地址偏移量,且所述第二地址索引值用以指示所述第二實體程式化單元的起始位址相對於所述第二實體抹除單元的起始位址的地址偏移量。
在本發明的一範例實施例中,上述的執行對應所述複數個所選取的邏輯位址的所述讀取操作以平行地讀取屬於所述複數個所選取的邏輯位址的資料的步驟包括:發送位址指令,其中所述位址指令只包括對應所述第一實體程式化單元的列位址與對應所述第二實體程式化單元的列位址,或者只包括對應所述第一實體程式化單元的行位址與對應所述第二實體程式化單元的行位址;以及發送讀取作動指令以根據所述位址指令平行地讀取儲存在所述第一實體程式化單元與所述第二實體程式化單元中的資料。
本發明的一範例實施例提出一種用於控制可複寫式非揮發性記憶體模組的記憶體控制電路單元。所述可複寫式非揮發性記憶體模組具有至少一晶粒、複數個平面與複數個實體程式化單元。所述記憶體控制電路單元包括主機介面、記憶體介面與記憶體管理電路。所述主機介面用以耦接至主機系統。所述記憶體介面用以耦接至所述可複寫式非揮發性記憶體模組。所述記憶體管理電路耦接至所述主機介面與所述記憶體介面。所述記憶體管理電路用以從所述主機系統接收至少一讀取指令,其中所述至少一讀取指令指示讀取屬於複數個邏輯位址的資料。所述記憶體管理電路更用以選取所述複數個邏輯位址中符合預定條件之複數個所選取的邏輯位址,其中所述複數個所選取的邏輯位址至少包括第一邏輯位址與第二邏輯位址,所述第一邏輯位址映射至所述複數個實體程式化單元中的第一實體程式化單元,所述第二邏輯位址映射至所述複數個實體程式化單元中的第二實體程式化單元,其中所述預定條件包括所述第一實體程式化單元屬於所述複數個平面中的第一平面,所述第二實體程式化單元屬於所述複數個平面中的第二平面,所述第一平面不同於所述第二平面,所述第一平面與所述第二平面屬於所述至少一晶粒中的同一晶粒,且對應所述第一實體程式化單元的第一地址索引值與對應所述第二實體程式化單元的第二地址索引值不同。所述記憶體管理電路更用以執行對應所述複數個所選取的邏輯位址的讀取操作以平行地讀取屬於所述複數個所選取的邏輯位址的資料。
在本發明的一範例實施例中,所述複數個所選取的邏輯位址更包括第三邏輯位址與第四邏輯位址,所述第三邏輯位址映射至所述複數個實體程式化單元中的第三實體程式化單元,所述第四邏輯位址映射至所述複數個實體程式化單元中的第四實體程式化單元,其中所述預定條件更包括所述第三實體程式化單元屬於所述複數個平面中的第三平面,所述第四實體程式化單元屬於所述複數個平面中的第四平面,所述第一平面、所述第二平面、所述第三平面與所述第四平面彼此不相同,並且所述第一平面、所述第二平面、所述第三平面與所述第四平面屬於所述至少一晶粒中的同一晶粒。
在本發明的一範例實施例中,所述記憶體管理電路更用以根據預定規則決定所述複數個邏輯位址的讀取順序,並且根據所述讀取順序執行對應所述複數個邏輯位址的至少一讀取操作。所述至少一讀取操作包括對應所述複數個所選取的邏輯位址的所述讀取操作。
在本發明的一範例實施例中,所述複數個邏輯位址更包括不符合所述預定條件的至少一邏輯位址。所述記憶體管理電路根據所述讀取順序執行對應所述複數個邏輯位址的所述至少一讀取操作的操作包括:根據所述讀取順序執行對應所述複數個所選取的邏輯位址的所述讀取操作,並且在完成對應所述複數個所選取的邏輯位址的所述讀取操作之後,執行對應不符合所述預定條件的所述至少一邏輯位址的至少一讀取操作。
在本發明的一範例實施例中,所述複數個邏輯位址更包括不符合所述預定條件的至少一邏輯位址。所述記憶體管理電路根據所述讀取順序執行對應所述複數個邏輯位址的所述至少一讀取操作的操作包括:根據所述讀取順序執行對應不符合所述預定條件的所述至少一邏輯位址的至少一讀取操作,並且在完成對應不符合所述預定條件的所述至少一邏輯位址的所述至少一讀取操作之後,執行對應所述複數個所選取的邏輯位址的所述讀取操作。
在本發明的一範例實施例中,所述複數個實體程式化單元被區分為第一使用區域與第二使用區域。屬於所述第一使用區域的實體程式化單元是以第一程式化模式被程式化,並且屬於所述第二使用區域的實體程式化單元是以第二程式化模式被程式化。所述預定條件更包括所述第一實體程式化單元與所述第二實體程式化單元屬於相同的使用區域。
在本發明的一範例實施例中,所述第一程式化模式為單階記憶胞程式化模式,並且所述第二程式化模式為複數階記憶胞程式化模式。
在本發明的一範例實施例中,所述複數個平面中的每一個平面包括複數個實體抹除單元,且所述複數個實體抹除單元中的每一個實體抹除單元包括所述複數個實體程式化單元中的部分的實體程式化單元。所述第一實體程式化單元屬於所述複數個實體抹除單元中的第一實體抹除單元,且所述第二實體程式化單元屬於所述複數個實體抹除單元中的第二實體抹除單元。所述第一地址索引值用以指示所述第一實體程式化單元的起始位址相對於所述第一實體抹除單元的起始位址的地址偏移量,且所述第二地址索引值用以指示所述第二實體程式化單元的起始位址相對於所述第二實體抹除單元的起始位址的地址偏移量。
在本發明的一範例實施例中,所述記憶體管理電路執行對應所述複數個所選取的邏輯位址的所述讀取操作以平行地讀取屬於所述複數個所選取的邏輯位址的資料的操作包括:發送位址指令,其中所述位址指令只包括對應所述第一實體程式化單元的列位址與對應所述第二實體程式化單元的列位址,或者只包括對應所述第一實體程式化單元的行位址與對應所述第二實體程式化單元的行位址;以及發送讀取作動指令以根據所述位址指令平行地讀取儲存在所述第一實體程式化單元與所述第二實體程式化單元中的資料。
本發明的一範例實施例提出一種記憶體儲存裝置。所述記憶體儲存裝置包括連接介面單元、可複寫式可複寫式非揮發性記憶體模組與記憶體控制電路單元。所述連接介面單元用以耦接至主機系統。所述可複寫式非揮發性記憶體模組具有複數個晶粒、複數個平面與複數個實體程式化單元。所述記憶體控制電路單元耦接至所述連接介面單元與所述可複寫式可複寫式非揮發性記憶體模組。所述記憶體控制電路單元用以從所述主機系統接收至少一讀取指令,其中所述至少一讀取指令指示讀取屬於複數個邏輯位址的資料。所述記憶體控制電路單元更用以選取所述複數個邏輯位址中符合預定條件之複數個所選取的邏輯位址,其中所述複數個所選取的邏輯位址至少包括第一邏輯位址與第二邏輯位址,所述第一邏輯位址映射至所述複數個實體程式化單元中的第一實體程式化單元,所述第二邏輯位址映射至所述複數個實體程式化單元中的第二實體程式化單元,其中所述預定條件包括所述第一實體程式化單元屬於所述複數個平面中的第一平面,所述第二實體程式化單元屬於所述複數個平面中的第二平面,所述第一平面不同於所述第二平面,所述第一平面與所述第二平面屬於所述至少一晶粒中的同一晶粒,且對應所述第一實體程式化單元的第一地址索引值與對應所述第二實體程式化單元的第二地址索引值不同。所述記憶體控制電路單元更用以執行對應所述複數個所選取的邏輯位址的讀取操作以平行地讀取屬於所述複數個所選取的邏輯位址的資料。
在本發明的一範例實施例中,所述複數個所選取的邏輯位址更包括第三邏輯位址與第四邏輯位址,所述第三邏輯位址映射至所述複數個實體程式化單元中的第三實體程式化單元,所述第四邏輯位址映射至所述複數個實體程式化單元中的第四實體程式化單元,其中所述預定條件更包括所述第三實體程式化單元屬於所述複數個平面中的第三平面,所述第四實體程式化單元屬於所述複數個平面中的第四平面,所述第一平面、所述第二平面、所述第三平面與所述第四平面彼此不相同,並且所述第一平面、所述第二平面、所述第三平面與所述第四平面屬於所述至少一晶粒中的同一晶粒。
在本發明的一範例實施例中,所述記憶體控制電路單元更用以根據預定規則決定所述複數個邏輯位址的讀取順序,並且根據所述讀取順序執行對應所述複數個邏輯位址的至少一讀取操作。所述至少一讀取操作包括對應所述複數個所選取的邏輯位址的所述讀取操作。
在本發明的一範例實施例中,所述複數個邏輯位址更包括不符合所述預定條件的至少一邏輯位址。所述記憶體控制電路單元根據所述讀取順序執行對應所述複數個邏輯位址的所述至少一讀取操作的操作包括:根據所述讀取順序執行對應所述複數個所選取的邏輯位址的所述讀取操作,並且在完成對應所述複數個所選取的邏輯位址的所述讀取操作之後,執行對應不符合所述預定條件的所述至少一邏輯位址的至少一讀取操作。
在本發明的一範例實施例中,所述複數個邏輯位址更包括不符合所述預定條件的至少一邏輯位址。所述記憶體控制電路單元根據所述讀取順序執行對應所述複數個邏輯位址的所述至少一讀取操作的操作包括:根據所述讀取順序執行對應不符合所述預定條件的所述至少一邏輯位址的至少一讀取操作,並且在完成對應不符合所述預定條件的所述至少一邏輯位址的所述至少一讀取操作之後,執行對應所述複數個所選取的邏輯位址的所述讀取操作。
在本發明的一範例實施例中,所述複數個實體程式化單元被區分為第一使用區域與第二使用區域。屬於所述第一使用區域的實體程式化單元是以第一程式化模式被程式化,並且屬於所述第二使用區域的實體程式化單元是以第二程式化模式被程式化。所述預定條件更包括所述第一實體程式化單元與所述第二實體程式化單元屬於相同的使用區域。
在本發明的一範例實施例中,所述第一程式化模式為單階記憶胞程式化模式,並且所述第二程式化模式為複數階記憶胞程式化模式。
在本發明的一範例實施例中,所述複數個平面中的每一個平面包括複數個實體抹除單元,且所述複數個實體抹除單元中的每一個實體抹除單元包括所述複數個實體程式化單元中的部分的實體程式化單元。所述第一實體程式化單元屬於所述複數個實體抹除單元中的第一實體抹除單元,且所述第二實體程式化單元屬於所述複數個實體抹除單元中的第二實體抹除單元。所述第一地址索引值用以指示所述第一實體程式化單元的起始位址相對於所述第一實體抹除單元的起始位址的地址偏移量,且所述第二地址索引值用以指示所述第二實體程式化單元的起始位址相對於所述第二實體抹除單元的起始位址的地址偏移量。
在本發明的一範例實施例中,所述記憶體控制電路單元執行對應所述複數個所選取的邏輯位址的所述讀取操作以平行地讀取屬於所述複數個所選取的邏輯位址的資料的操作包括:發送位址指令,其中所述位址指令只包括對應所述第一實體程式化單元的列位址與對應所述第二實體程式化單元的列位址,或者只包括對應所述第一實體程式化單元的行位址與對應所述第二實體程式化單元的行位址;以及發送讀取作動指令以根據所述位址指令平行地讀取儲存在所述第一實體程式化單元與所述第二實體程式化單元中的資料。
基於上述,本發明可選取屬於不同平面但屬於同一晶粒的多個實體程式化單元來執行多平面讀取操作,並且此些實體程式化單元對應不同的地址偏移值。因此,儲存在對應隨機讀取操作的實體程式化單元中的資料可使用多平面讀取操作而同時地被讀取。基此,可加快對應隨機讀取的資料的讀取速度。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
一般而言,記憶體儲存裝置(亦稱,記憶體儲存系統)包括可複寫式非揮發性記憶體模組與控制器(亦稱,控制電路單元)。通常記憶體儲存裝置是與主機系統一起使用,以使主機系統可將資料寫入至記憶體儲存裝置或從記憶體儲存裝置中讀取資料。
圖1是依據一範例實施例所繪示的主機系統、記憶體儲存裝置及輸入/輸出(I/O)裝置的示意圖,並且圖2是依據另一範例實施例所繪示的主機系統、記憶體儲存裝置及輸入/輸出(I/O)裝置的示意圖。
請參照圖1與圖2,主機系統11一般包括處理器111、隨機存取記憶體(random access 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 Field Communication 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包括嵌入式多媒體卡(embedded MMC, eMMC)341及/或嵌入式多晶片封裝儲存裝置(embedded Multi Chip Package, eMCP)342等各類型將記憶體模組直接耦接於主機系統的基板上的嵌入式儲存裝置。
圖4A是依據一範例實施例所繪示的記憶體儲存裝置的概要方塊圖。
請參照圖4A,記憶體儲存裝置10包括連接介面單元402、記憶體控制電路單元404與可複寫式非揮發性記憶體模組406。
連接介面單元402用以將記憶體儲存裝置10耦接至主機系統11。在本範例實施例中,連接介面單元402是相容於安全數位(Secure Digital, SD)介面標準。然而,必須瞭解的是,本發明不限於此,連接介面單元402亦可以是符合序列先進附件(Serial Advanced Technology Attachment, SATA)標準、並列先進附件(Parallel Advanced Technology Attachment, PATA)標準、電氣和電子工程師協會(Institute of Electrical 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 Multi Chip Package, eMCP)介面標準、小型快閃(Compact Flash, CF)介面標準、整合式驅動電子介面(Integrated Device Electronics, IDE)標準或其他適合的標準。連接介面單元402可與記憶體控制電路單元404封裝在一個晶片中,或者連接介面單元402是佈設於一包含記憶體控制電路單元之晶片外。
記憶體控制電路單元404用以執行以硬體型式或韌體型式實作的多個邏輯閘或控制指令,並且依據主機系統11的指令在可複寫式非揮發性記憶體模組406中進行資料的寫入、讀取與抹除等操作。
可複寫式非揮發性記憶體模組406是耦接至記憶體控制電路單元404,並且用以儲存主機系統11所寫入之資料。在本範例實施例中,可複寫式非揮發性記憶體模組406為複數階記憶胞(Trinary Level Cell,TLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存3個資料位元的快閃記憶體模組)。然而,本發明不限於此,可複寫式非揮發性記憶體模組406亦可是多階記憶胞(Multi Level Cell,MLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存2個資料位元的快閃記憶體模組)、單階記憶胞(Single Level Cell,SLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存1個資料位元的快閃記憶體模組)或其他具有相同特性的記憶體模組。
在本範例實施例中,可複寫式非揮發性記憶體模組406的記憶胞會構成多個實體程式化單元,並且此些實體程式化單元會構成多個實體抹除單元。例如,同一條字元線上的記憶胞會組成一或多個實體程式化單元。倘若每一個記憶胞可儲存2個以上的資料位元,則同一條字元線上的實體程式化單元至少可被分類為下實體程式化單元與上實體程式化單元。舉例而言,SLC NAND型快閃記憶體的每個記憶胞可儲存1個位元的資料,因此,在SLC NAND型快閃記憶體中,排列在同一條字元線上的數個記憶胞是對應一個實體程式化單元。相對於SLC NAND型快閃記憶體來說,MLC NAND型快閃記憶體的每個記憶胞可儲存2個位元的資料,其中每一個儲存狀態(即,“11”、“10”、“01”與“00”)包括最低有效位元(Least Significant Bit, LSB)以及最高有效位元(Most Significant Bit, MSB)。例如,儲存狀態中從左側算起之第1個位元的值為LSB,而從左側算起之第2個位元的值為MSB。因此,排列在同一條字元線上的數個記憶胞可組成2個實體程式化單元,其中由此些記憶胞之LSB所組成的實體程式化單元稱為下實體程式化單元(low physical programming unit),並且由此些記憶胞之MSB所組成的實體程式化單元稱為上實體程式化單元(upper physical programming unit)。一般來說,在MLC NAND型快閃記憶體中,下實體程式化單元的寫入速度會大於上實體程式化單元的寫入速度,及/或下實體程式化單元的可靠度是高於上實體程式化單元的可靠度。
類似地,在TLC NAND型快閃記憶體中,每個記憶胞可儲存3個位元的資料,其中每一個儲存狀態(即,“111”、“110”、“101”、“100”、“011”、“010”、“001”與“000”)包括左側算起之第1個位元的LSB、從左側算起之第2個位元的中間有效位元(Center Significant Bit, CSB)以及從左側算起之第3個位元的MSB。因此,排列在同一條字元線上的數個記憶胞可組成3個實體程式化單元,其中由此些記憶胞之LSB所組成的實體程式化單元稱為下實體程式化單元,由此些記憶胞之CSB所組成的實體程式化單元稱為中實體程式化單元,並且由此些記憶胞之MSB所組成的實體程式化單元稱為上實體程式化單元。
在本範例實施例中,實體程式化單元為程式化的最小單元。即,實體程式化單元為寫入資料的最小單元。例如,實體程式化單元為實體頁面(page)或是實體扇(sector)。若實體程式化單元為實體頁面,則此些實體程式化單元通常包括資料位元區與冗餘(redundancy)位元區。資料位元區包含多個實體扇,用以儲存使用者資料,而冗餘位元區用以儲存系統資料(例如,錯誤更正碼等管理資料)。在本範例實施例中,資料位元區包含32個實體扇,且一個實體扇的大小為512位元組(byte, B)。然而,在其他範例實施例中,資料位元區中也可包含8個、16個或數目更多或更少的實體扇,並且每一個實體扇的大小也可以是更大或更小。另一方面,實體抹除單元為抹除之最小單位。亦即,每一實體抹除單元含有最小數目之一併被抹除之記憶胞。例如,實體抹除單元為實體區塊(block)。
在本範例實施例中,可複寫式非揮發性記憶體模組406具有多個平面(plane),並且每一個平面屬於一個晶粒(die)。在一範例實施例中,平面的數目可大於晶粒的數目。也就是說,兩個或兩個以上的平面可屬於一個晶粒。可複寫式非揮發性記憶體模組406中的每一個實體抹除單元是屬於一個平面。每一個平面可包括多個實體抹除單元與多個實體程式化單元。
圖4B是依據一範例實施例所繪示的記憶體控制電路單元耦接可複寫式非揮發性記憶體模組的示意圖。
請參照圖4B,可複寫式非揮發性記憶體模組406具有一個晶粒D0,且晶粒D0包括四個平面P0~P3。平面P0~P3中的每一個平面具有多個實體抹除單元,並且每一個實體抹除單元具有多個實體程式化單元。
在本範例實施例中,晶粒D0是藉由一個晶片致能(chip enable)接腳耦接至記憶體控制電路單元404。記憶體控制電路單元404可發送致能訊號至晶粒D0的晶片致能接腳來致能晶粒D0。當晶粒D0被致能之後,記憶體控制電路單元404與晶粒D0之間可藉由一個通道408(例如,資料匯流排)來傳遞資料。也就是說,屬於一個晶粒D0的平面P0~P3的實體程式化單元是經由通道408來存取,並且儲存在平面P0~P3中的資料可使用多平面存取操作而經由通道408來平行地讀取。
然而,在具有多個晶粒的例子中,記憶體控制電路單元404也可藉由一個致能訊號來同時致能多個晶粒,或者藉由多個致能訊號來分別致能多個晶粒。並且,儲存在不同的晶粒中的資料可經由不同的通道來存取。以圖4B為例,假設平面P0與平面P1屬於一個晶粒,而平面P2與平面P3屬於另一個晶粒。儲存在平面P0與平面P1的資料可經由一個通道來存取,而儲存在平面P2中與平面P3的資料經由另一個通道來存取。
圖5是依據本發明的一範例實施例所繪示的可複寫式非揮發性記憶體模組的概要方塊圖。圖6是依據本發明的一範例實施例所繪示的記憶胞陣列的示意圖。
請參照圖5,可複寫式非揮發性記憶體模組406包括記憶胞陣列412、字元線控制電路414、位元線控制電路416、行解碼器(column decoder)418、資料輸入/輸出緩衝器420與控制電路422。
在本範例實施例中,記憶胞陣列412可包括用以儲存資料的多個記憶胞432、多個選擇閘汲極(select gate drain, SGD)電晶體442與多個選擇閘源極(select gate source, SGS)電晶體444、以及連接此些記憶胞的多條位元線434、多條字元線436、與共用源極線438(如圖6所示)。記憶胞432是以陣列方式(或立體堆疊的方式)配置在位元線434與字元線436的交叉點上。當從記憶體控制電路單元404接收到寫入指令或讀取指令時,控制電路422會控制字元線控制電路414、位元線控制電路416、行解碼器418、資料輸入/輸出緩衝器420來寫入資料至記憶胞陣列412或從記憶胞陣列412中讀取資料,其中字元線控制電路414用以控制施予至字元線436的電壓,位元線控制電路416用以控制施予至位元線434的電壓,行解碼器418依據指令中的列位址以選擇對應的位元線,並且資料輸入/輸出緩衝器420用以暫存資料。
可複寫式非揮發性記憶體模組406中的每一個記憶胞是以臨界電壓的改變來儲存一或多個位元。具體來說,每一個記憶胞的控制閘極(control gate)與通道之間有一個電荷捕捉層。透過施予一寫入電壓至控制閘極,可以改變電荷補捉層的電子量,因而改變了記憶胞的臨界電壓。此改變臨界電壓的程序亦稱為“把資料寫入至記憶胞”或“程式化記憶胞”。隨著臨界電壓的改變,記憶胞陣列412的每一個記憶胞具有多個儲存狀態。並且透過讀取電壓可以判斷記憶胞是屬於哪一個儲存狀態,藉此取得記憶胞所儲存的一或多個位元。
圖7是依據一範例實施例所繪示的記憶體控制電路單元的概要方塊圖。
請參照圖7,記憶體控制電路單元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。也就是說,欲寫入至可複寫式非揮發性記憶體模組406的資料會經由記憶體介面506轉換為可複寫式非揮發性記憶體模組406所能接受的格式。
在一範例實施例中,記憶體控制電路單元404還包括緩衝記憶體508、電源管理電路510與錯誤檢查與校正電路512。
緩衝記憶體508是耦接至記憶體管理電路502並且用以暫存來自於主機系統11的資料與指令或來自於可複寫式非揮發性記憶體模組406的資料。
電源管理電路510是耦接至記憶體管理電路502並且用以控制記憶體儲存裝置10的電源。
錯誤檢查與校正電路512是耦接至記憶體管理電路502並且用以執行錯誤檢查與校正程序以確保資料的正確性。例如,當記憶體管理電路502從主機系統11中接收到寫入指令時,錯誤檢查與校正電路512會為對應此寫入指令的資料產生對應的錯誤更正碼(error correcting code, ECC)及/或錯誤檢查碼(error detecting code,EDC),並且記憶體管理電路502會將對應此寫入指令的資料與對應的錯誤更正碼及/或錯誤檢查碼寫入至可複寫式非揮發性記憶體模組406中。之後,當記憶體管理電路502從可複寫式非揮發性記憶體模組406中讀取資料時會同時讀取此資料對應的錯誤更正碼及/或錯誤檢查碼,並且錯誤檢查與校正電路512會依據此錯誤更正碼及/或錯誤檢查碼對所讀取的資料執行錯誤檢查與校正程序。
以下描述記憶體管理電路502、主機介面504與記憶體介面506、緩衝記憶體508、電源管理電路510與錯誤檢查與校正電路512所執行的操作,亦可參考為由記憶體控制電路單元404所執行。
圖8是依據本發明的一範例實施例所繪示的管理可複寫式非揮發性記憶體模組的示意圖。
請參照圖8,記憶體管理電路502會將可複寫式非揮發性記憶體模組406的實體單元610(0)~610(B)邏輯地分組至儲存區601與替換區602。儲存區601中的實體單元610(0)~610(A)是用以儲存資料,而替換區602中的實體單元610(A+1)~610(B)則是用以替換儲存區601中損壞的實體單元。例如,若從某一個實體單元中讀取的資料所包含的錯誤過多而無法被更正時,此實體單元會被視為是損壞的實體單元。須注意的是,若替換區602中沒有可用的實體抹除單元,則記憶體管理電路502可能會將整個記憶體儲存裝置10宣告為寫入保護(write protect)狀態,而無法再寫入資料。
在本範例實施例中,每一個實體單元是指一個實體抹除單元。然而,在另一範例實施例中,一個實體單元亦可以是指一個實體位址、一個實體程式化單元或由多個連續或不連續的實體位址組成。記憶體管理電路502會配置邏輯單元612(0)~612(C)以映射儲存區601中的實體單元610(0)~610(A)。在本範例實施例中,每一個邏輯單元是指一個邏輯位址。然而,在另一範例實施例中,一個邏輯單元也可以是指一個邏輯程式化單元、一個邏輯抹除單元或者由多個連續或不連續的邏輯位址組成。此外,邏輯單元612(0)~612(C)中的每一者可被映射至一或多個實體單元。
在本範例實施例中,記憶體管理電路502會將邏輯單元與實體單元之間的映射關係(亦稱為邏輯-實體位址映射關係)記錄於至少一邏輯-實體位址映射表。當主機系統11欲從記憶體儲存裝置10讀取資料或寫入資料至記憶體儲存裝置10時,記憶體管理電路502可根據此邏輯-實體位址映射表來執行對於記憶體儲存裝置10的資料存取操作。
當主機系統11欲讀取儲存在可複寫式非揮發性記憶體模組406的資料時,主機系統11會傳送一或多個讀取指令。記憶體管理電路502可將從主機系統11所接收的讀取指令暫存在緩衝記憶體508中。例如,記憶體管理電路502可建立一個指令佇列(command queue)來儲存所接收的讀取指令。此些讀取指令會指示讀取複數個邏輯位址,而記憶體管理電路502會根據此些邏輯位址執行讀取操作。在本範例實施例中,一個讀取指令會指示一個邏輯位址,並且一個邏輯位址可映射一個實體程式化單元。然而,在其他的範例實施例中,一個讀取指令也可指示讀取多個邏輯位址。換句話說,主機系統11可傳送一個讀取指令來指示讀取儲存在可複寫式非揮發性記憶體模組406的複數個實體程式化單元中的多筆資料。
在一範例實施例中,在根據讀取指令指示的邏輯位址執行讀取操作之前,記憶體管理電路502會根據預定規則來決定對應此些邏輯位址的讀取順序。在一範例實施例中,預定規則是根據可複寫式非揮發性記憶體模組406的晶粒與平面來設定。例如,根據預定規則,記憶體管理電路502可優先執行對應至一個晶粒的邏輯位址的讀取操作,再執行對應至另一個晶粒的邏輯位址的讀取操作。或者,根據預定規則,記憶體管理電路502可優先執行對應至不同平面的邏輯位址的讀取操作。或者,根據預定規則,記憶體管理電路502可優先執行可平行地讀取的資料的讀取操作,再執行不可平行地讀取的資料的讀取操作。或者,根據預定規則,記憶體管理電路502可優先執行不可平行地讀取的資料的讀取操作,再執行可平行地讀取的資料的讀取操作。
在另一範例實施例中,可複寫式非揮發性記憶體模組406的實體抹除單元還可被區分為屬於第一使用區域的實體抹除單元與屬於第二使用區域的實體抹除單元。也就是說,可複寫式非揮發性記憶體模組406的實體程式化單元可被區分為屬於第一使用區域的實體程式化單元與屬於第二使用區域的實體程式化單元。屬於第一使用區域的實體程式化單元是以第一程式化模式來程式化,而屬於第二使用區域的實體程式化單元是以第二程式化模式來程式化。換句話說,儲存在屬於第一使用區域的實體程式化單元中的資料是以第一程式化模式被程式化,而儲存在屬於第二使用區域的實體程式化單元中的資料是以第二程式化模式被程式化。在此範例實施例中,預定規則還可根據可複寫式非揮發性記憶體模組406的第一使用區域與第二使用區域來設定。例如,根據預定規則,記憶體管理電路502可優先執行對應至第一使用區域的邏輯地址的讀取操作,再執行對應至第二使用區域的邏輯地址的讀取操作。
在本範例實施例中,以第一程式化模式來程式化的記憶胞可儲存第一數目之位元的資料,而以第二程式化模式來程式化的記憶胞可儲存第二數目之位元的資料,其中第二數目大於第一數目。舉例而言,第一程式化模式可為單階記憶胞(SLC)程式化模式,第二程式化模式可為複數階記憶胞(TLC)程式化模式或多階記憶胞(MLC)程式化模式。在SLC程式化模式中,一個記憶胞可儲存一個位元的資料。在MLC程式化模式中,一個記憶胞可儲存兩個位元的資料。在TLC程式化模式中,一個記憶胞可儲存三個位元的資料。然而,本發明不以此為限。第一數目也可大於第二數目。在此情況下,第一程式化模式可為TLC程式化模式或MLC程式化模式,第二程式化模式可為SLC程式化模式。
此外,在另一範例實施例中,儲存在實體程式化單元中的資料具有對應的優先等級。在此範例實施例中,預定規則還可根據資料的優先等級來設定,並且記憶體管理電路502會優先執行優先等級較高的資料的讀取操作。資料的優先等級可根據資料的屬性或是資料的儲存區域來決定。資料的屬性可為資料的重要性、資料的更新頻率或資料的種類(例如,系統資料)等。例如,重要性高的資料的優先等級高於重要性低的資料的優先等級。更新頻率高的資料的優先等級高於更新頻率低的資料。系統資料具有最高的優先等級。資料的儲存區域可為上述依程式化模式所區分的第一使用區域與第二使用區域。例如,屬於第一使用區域的資料(也就是以SLC程式化模式程式化的資料)為重要性較高的資料,因而具有較高的優先等級。屬於第二使用區域的資料(也就是以MLC程式化模式或TLC程式化模式程式化的資料)屬於重要性較低的資料,因而具有較低的優先等級。
簡單來說,預定規則可根據可複寫式非揮發性記憶體模組406的晶粒、平面、使用區域、資料為可平行地讀取的資料或不可平行地讀取的資料、或資料的優先等級來設定。記憶體管理電路502可根據預定規則來決定來自於主機系統11的讀取指令所指示的多個邏輯位址的讀取順序,並且依據讀取順序執行對應此些邏輯位址的一個或多個讀取操作。此外,記憶體管理電路502是根據一預定條件從上述的多個邏輯位址中選取對應可平行讀取的資料的邏輯位址來執行平行讀取操作。換句話說,對應此些邏輯位址的一個或多個讀取操作會包括對應符合預定條件的邏輯位址的平行讀取操作。在一範例實施例中,預定條件包括所選取的多個邏輯位址所映射的多個實體程式化單元分別屬於不同的多個平面,此些平面屬於同一晶粒,並且此些實體程式化單元的地址索引值彼此不同。在另一範例實施例中,預定條件還包括此些實體程式化單元屬於相同的使用區域。
圖9是依據本發明的一範例實施例所繪示的對應讀取指令的實體程式化單元的示意圖。圖9中的可複寫式非揮發性記憶體模組406的架構與圖4B的可複寫式非揮發性記憶體模組406的架構相同。需注意的是,圖9中各實體抹除單元與各實體程式化單元的位置僅為示意,並非用以限制其在可複寫式非揮發性記憶體模組406中實際的位置。以下將基於圖9來說明本發明的資料讀取方法。
請參照圖9,可複寫式非揮發性記憶體模組406包括晶粒D0,且晶粒D0包括平面P0~P3。記憶體管理電路502是經由一個通道來存取儲存在晶粒D0中的資料。實體抹除單元710與實體抹除單元750屬於平面P0;實體抹除單元720與實體抹除單元760屬於平面P1;實體抹除單元730屬於平面P2;實體抹除單元740屬於平面P3。實體程式化單元711與實體程式化單元712屬於實體抹除單元710;實體程式化單元721屬於實體抹除單元720;實體程式化單元731屬於實體抹除單元730;實體程式化單元741屬於實體抹除單元740;實體程式化單元751屬於實體抹除單元750;實體程式化單元761屬於實體抹除單元760。
假設記憶體管理電路502從主機系統11接收多個讀取指令,並且此些讀取指令指示從多個邏輯位址讀取資料。記憶體管理電路502會根據預定規則決定對應此些邏輯位址的讀取順序。此外,記憶體管理電路502也會從此些邏輯位址中選取符合預定條件的多個邏輯位址。舉例而言,屬於此些邏輯位址的資料包括符合預定條件的多個邏輯位址與不符合預定條件的至少一邏輯位址。記憶體管理電路502會根據此些邏輯位址所映射的多個實體程式化單元來選取符合預定條件的多個邏輯位址。在本範例實施例中,符合預定條件的多個邏輯位址所映射的多個實體程式化單元中的資料可被平行地讀取。之後,記憶體管理電路502可優先地執行對應符合預定條件的邏輯位址的資料以平行地讀取符合預定條件的邏輯位址所映射的的實體程式化單元中的資料。儲存在此些所選取的邏輯位址所映射的實體程式化單元中的資料可藉由一個多平面讀取操作而同時被讀取。
在本範例實施例中,記憶體管理電路502使用多平面讀取操作而可經由一個通道來平行地讀取儲存在晶粒D0的不同平面的多個實體程式化單元中的資料。在執行多平面讀取操作時,記憶體管理電路502會先發送位址指令至可複寫式非揮發性記憶體模組406,此位址指令可只包括要平行地讀取的多個實體程式化單元的列位址。接著,記憶體管理電路502會再發送讀取作動指令至可複寫式非揮發性記憶體模組406,以指示根據位址指令執行讀取操作。之後,記憶體管理電路502可再次發送位址指令至可複寫式非揮發性記憶體模組406,此位址指令可只包括此些要平行地讀取的多個實體程式化單元的行位址。之後,記憶體管理電路502會再發送讀取作動指令至可複寫式非揮發性記憶體模組406,以指示根據此些要平行地讀取的多個實體程式化單元的行位址執行讀取操作。
在一範例實施例中,記憶體管理電路502會選取屬於同一個晶粒的不同平面的多個實體程式化單元以選取出符合預定條件的邏輯位址。以圖9為例,假設來自於主機系統11的讀取指令依序指示的多個邏輯位址分別映射至實體程式化單元711、實體程式化單元712、實體程式化單元731、實體程式化單元721、實體程式化單元741與實體程式化單元751。如圖9所示,實體程式化單元711屬於平面P0,實體程式化單元721屬於平面P1,實體程式化單元731屬於平面P2並且實體程式化單元741屬於平面P3。因此,記憶體管理電路502會選取實體程式化單元711、實體程式化單元721、實體程式化單元731與實體程式化單元741來執行多平面讀取操作。
當記憶體管理電路502根據此些讀取指令執行讀取操作時,記憶體管理電路502會優先地執行多平面讀取操作。在一個晶粒包括四個平面的例子中,記憶體管理電路502執行的多平面讀取操作可為四平面讀取操作。例如,記憶體管理電路502可執行一個四平面讀取操作而平行地讀取儲存在實體程式化單元711、實體程式化單元721、實體程式化單元731與實體程式化單元741中的資料。
值得一提的是,雖然在本範例實施例中,可複寫式非揮發性記憶體模組406的一個晶粒包括四個平面,但是本發明並不限於此。然而,在另一範例實施例中,可複寫式非揮發性記憶體模組406的一個晶粒也可包括其他數目的平面,例如,一個晶粒包括兩個平面。
以圖9為例,假設晶粒D0僅包括平面P0與P1。假設來自於主機系統11的讀取指令依序指示的多個邏輯位址分別映射至實體程式化單元711、實體程式化單元712、實體程式化單元731、實體程式化單元721、實體程式化單元741與實體程式化單元751。記憶體管理電路502會選取實體程式化單元711與實體程式化單元721來執行一個多平面讀取操作以執行映射至實體程式化單元711與實體程式化單元721的邏輯位址的讀取操作,並且選取實體程式化單元731與實體程式化單元741來執行另一多平面讀取操作以執行映射至實體程式化單元731與實體程式化單元741的邏輯位址的讀取操作。在此情況下,記憶體管理電路502執行的多平面讀取操作可為兩平面讀取操作。例如,記憶體管理電路502可執行一個兩平面讀取操作而平行地讀取儲存在實體程式化單元711與實體程式化單元721中的資料,並且執行另一個兩平面讀取操作而平行地讀取儲存在實體程式化單元731與實體程式化單元741中的資料。
在完成多平面讀取操作之後,記憶體管理電路502可對其餘的實體程式化單元(例如實體程式化單元712與實體程式化單元751)執行讀取操作。在一範例實施例中,在完成對實體程式化單元711、實體程式化單元721、實體程式化單元731與實體程式化單元741的四平面讀取操作之後,記憶體管理電路502會分別地讀取儲存在實體程式化單元712與實體程式化單元751的資料。映射至實體程式化單元712與實體程式化單元751的邏輯位址即為不符合預定條件的邏輯位址。記憶體管理電路502可根據讀取指令指示的順序來依序地讀取儲存在實體程式化單元712與實體程式化單元751中的資料。在另一範例實施例中,在完成對實體程式化單元711與實體程式化單元721的兩平面讀取操作之後,記憶體管理電路502會分別地讀取儲存在實體程式化單元712與實體程式化單元751的資料。之後,記憶體管理電路502可再執行實體程式化單元731與實體程式化單元741的兩平面讀取操作。或者,在完成對實體程式化單元711與實體程式化單元721的兩平面讀取操作以及實體程式化單元731與實體程式化單元741的兩平面讀取操作之後,記憶體管理電路502再分別地讀取儲存在實體程式化單元712與實體程式化單元751的資料。
換句話說,記憶體管理電路502可先讀取可平行地讀取的資料(也就是對應符合預定條件的邏輯位址的資料),再分別地讀取的資料(也就是對應不符合預定條件的邏輯位址的資料)。然而,本發明並不以此為限。在其他的範例實施例中,記憶體管理電路502也可先分別地讀取不符合預定條件的邏輯位址不可平行地讀取的資料,再讀取可平行地讀取的資料。
特別的是,在本發明中,可藉由一個多平面讀取操作來平行地讀取資料的多個實體程式化單元可具有不同的地址索引值。也就是說,符合預定條件的邏輯位址所映射的實體程式化單元可具有不同的地址索引值。一個實體程式化單元的地址索引值可用以指示此實體程式化單元的起始位址相對於一特定位址的偏移量。此特定位址可以是一個實體程式化單元所屬的實體抹除單元的起始位址。地址索引值可以預定標記或偏移量來表示。在本範例實施例中,假設實體程式化單元711為實體抹除單元710中的第i個實體程式化單元,則實體程式化單元711的預定標記可為i,而實體程式化單元711的偏移量可為一個實體程式化單元的大小乘以i。因此,根據地址索引值,實體程式化單元711被識別為實體抹除單元710中的第i個實體程式化單元,而實體程式化單元721被識別為實體抹除單元720中的第j個實體程式化單元,並且i可不等於j。類似地,根據地址索引值,實體程式化單元731可被識別為實體抹除單元730中的第m個實體程式化單元,而實體程式化單元741可被識別為實體抹除單元740中的第n個實體程式化單元,並且m可不等於n。
在另一範例實施例中,可複寫式非揮發性記憶體模組406的實體抹除單元還被區分為屬於第一使用區域的實體抹除單元與屬於第二使用區域的實體抹除單元。在此範例實施例中,符合預定條件的邏輯位址所映射的實體程式化單元屬於相同的使用區域。也就是說,記憶體管理電路502會找出屬於不同平面並且屬於相同的使用區域(例如第一使用區域或第二使用區域)的多個實體程式化單元,並且平行地讀取儲存在此些實體程式化單元的資料。
更詳細地說,記憶體管理電路502會選取屬於不同平面並且屬於相同的使用區域的多個實體程式化單元來執行多平面讀取操作,此些實體程式化單元可包括具有不同的地址索引值的實體程式化單元。屬於相同的使用區域的實體程式化單元亦即以相同的程式化模式來程式化的實體程式化單元。
在一範例實施例中,假設平面P0~P3屬於同一個晶粒,並且來自於主機系統11的讀取指令依序指示的多個邏輯位址分別映射至實體抹除單元710的實體程式化單元711、實體抹除單元730的實體程式化單元731、實體抹除單元720的實體程式化單元721與實體抹除單元740的實體程式化單元741。實體程式化單元711、實體程式化單元721、實體程式化單元731與實體程式化單元741屬於不同平面並且都屬於第一使用區域(或第二使用區域)。記憶體管理電路502會選取實體程式化單元711、實體程式化單元721、實體程式化單元731與實體程式化單元741來執行多平面讀取操作。因此,在執行讀取操作時,記憶體管理電路502會執行一個四平面讀取操作而平行地讀取儲存在實體程式化單元711、實體程式化單元721、實體程式化單元731與實體程式化單元741中的資料。
在另一範例實施例中,假設平面P0與平面P1屬於一個晶粒,而平面P2與平面P3屬於另一個晶粒,並且來自於主機系統11的讀取指令依序指示的多個邏輯位址分別映射至實體抹除單元720的實體程式化單元721、實體抹除單元760的實體程式化單元761、實體抹除單元710的實體程式化單元711與實體抹除單元750的實體程式化單元751。實體程式化單元721與實體程式化單元751屬於同一個晶粒的不同平面並且都屬於第一使用區域。實體程式化單元711與實體程式化單元761屬於同一個晶粒的不同平面並且都屬於第二使用區域。記憶體管理電路502會選取實體程式化單元721與實體程式化單元751來執行多平面讀取操作。此外,記憶體管理電路502會選取實體程式化單元761與實體程式化單元711來執行多平面讀取操作。因此,記憶體管理電路502可執行一個兩平面讀取操作而平行地讀取儲存在實體程式化單元721與實體程式化單元751中的資料。記憶體管理電路502還可執行另一個兩平面讀取操作而平行地讀取儲存在實體程式化單元711與實體程式化單元761中的資料。特別的是,實體程式化單元711的地址索引值可不同於實體程式化單元761的地址索引值,而且實體程式化單元721的地址索引值可不同於實體程式化單元751的地址索引值。
在另一範例實施例中,假設來自於主機系統11的讀取指令依序指示的多個邏輯位址分別映射至實體抹除單元710的實體程式化單元711與實體抹除單元720的實體程式化單元721。實體程式化單元711屬於第一使用區域,而實體程式化單元721屬於第二使用區域。記憶體管理電路502會分別地讀取儲存在實體程式化單元711中的資料與儲存在實體程式化單元721中的資料。也就是說,由於實體程式化單元711的程式化模式不同於實體程式化單元721的程式化模式,因此,即使實體程式化單元711與實體程式化單元721屬於同一個晶粒的不同平面,記憶體管理電路502也不會選取實體程式化單元711與實體程式化單元721來執行多平面讀取操作。
圖10是依據本發明的一範例實施例所繪示的資料讀取方法的流程圖。
請參照圖10,在步驟S1001中,記憶體管理電路502從主機系統11接收至少一讀取指令,其中至少一讀取指令指示讀取屬於複數個邏輯位址的資料。
接著,在步驟S1003中,記憶體管理電路502會選取此些邏輯位址中符合預定條件之複數個所選取的邏輯位址,其中所選取的邏輯位址至少包括第一邏輯位址與第二邏輯位址,第一邏輯位址映射至第一實體程式化單元,第二邏輯位址映射至第二實體程式化單元,其中預定條件包括第一實體程式化單元屬於第一平面,第二實體程式化單元屬於第二平面,第一平面不同於第二平面,第一平面與第二平面屬於同一晶粒,且對應第一實體程式化單元的第一地址索引值與對應第二實體程式化單元的第二地址索引值不同。在一範例實施例中,第一實體程式化單元與第二實體程式化單元是以相同的程式化模式被程式化而屬於相同的使用區域。
在步驟 S1005中,記憶體管理電路502會執行對應所選取的邏輯位址的讀取操作以平行地讀取屬於所選取的邏輯位址的資料。換句話說,記憶體管理電路502可使用一個多平面讀取操作來平行地讀取儲存在第一實體程式化單元與第二實體程式化單元中的資料。此外,記憶體管理電路502還可根據預定規則決定對應此些邏輯位址的讀取順序,並且根據讀取順序來依序執行對應符合預定條件的所選取的邏輯位址的讀取操作與對應不符合預定條件的邏輯位址的讀取操作。圖10的上述各步驟已於前述的範例實施例中詳細說明,於此不再贅述。
綜上所述,本發明藉由選取屬於一個晶粒的不同平面並且對應不同的地址索引值的多個實體程式化單元來執行多平面讀取操作,使得儲存在對應隨機讀取操作的實體程式化單元中的資料可使用多平面讀取操作而同時地被讀取。基此,可加快對應隨機讀取操作的資料的讀取速度。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
10‧‧‧記憶體儲存裝置
11‧‧‧主機系統
12‧‧‧輸入/輸出(I/O)裝置
110‧‧‧系統匯流排
111‧‧‧處理器
112‧‧‧隨機存取記憶體(RAM)
113‧‧‧唯讀記憶體(ROM)
114‧‧‧資料傳輸介面
20‧‧‧主機板
201‧‧‧隨身碟
202‧‧‧記憶卡
203‧‧‧固態硬碟
204‧‧‧無線記憶體儲存裝置
205‧‧‧全球定位系統模組
206‧‧‧網路介面卡
207‧‧‧無線傳輸裝置
208‧‧‧鍵盤
209‧‧‧螢幕
210‧‧‧喇叭
30‧‧‧記憶體儲存裝置
31‧‧‧主機系統
32‧‧‧SD卡
33‧‧‧CF卡
34‧‧‧嵌入式儲存裝置
341‧‧‧嵌入式多媒體卡
342‧‧‧嵌入式多晶片封裝儲存裝置
402‧‧‧連接介面單元
404‧‧‧記憶體控制電路單元
406‧‧‧可複寫式非揮發性記憶體模組
408‧‧‧通道
D0‧‧‧晶粒
P0、P1、P2、P3‧‧‧平面
412‧‧‧記憶胞陣列
414‧‧‧字元線控制電路
416‧‧‧位元線控制電路
418‧‧‧行解碼器
420‧‧‧資料輸入/輸出緩衝器
422‧‧‧控制電路
432‧‧‧記憶胞
434‧‧‧位元線
436‧‧‧字元線
438‧‧‧共用源極線
442、444‧‧‧電晶體
502‧‧‧記憶體管理電路
504‧‧‧主機介面
506‧‧‧記憶體介面
508‧‧‧緩衝記憶體
510‧‧‧電源管理電路
512‧‧‧錯誤檢查與校正電路
601‧‧‧儲存區
602‧‧‧替換區
610(0)~610(A)、610(A+1)~610(B)‧‧‧實體單元
612(0)~612(C)‧‧‧邏輯單元
710、720、730、740、750、760‧‧‧實體抹除單元
711、712、721、731、741、751、761‧‧‧實體程式化單元
S1001‧‧‧從主機系統接收至少一讀取指令,其中至少一讀取指令指示讀取屬於複數個邏輯位址的資料的步驟
S1003‧‧‧選取此些邏輯位址中符合預定條件之複數個所選取的邏輯位址,其中所選取的邏輯位址至少包括第一邏輯位址與第二邏輯位址,第一邏輯位址映射至第一實體程式化單元,第二邏輯位址映射至第二實體程式化單元,其中預定條件包括第一實體程式化單元屬於第一平面,第二實體程式化單元屬於第二平面,第一平面不同於第二平面,第一平面與第二平面屬於同一晶粒,且對應第一實體程式化單元的第一地址索引值與對應第二實體程式化單元的第二地址索引值不同的步驟
S1005‧‧‧執行對應所選取的邏輯位址的讀取操作以平行地讀取屬於所選取的邏輯位址的資料的步驟
圖1是依據一範例實施例所繪示的主機系統、記憶體儲存裝置及輸入/輸出(I/O)裝置的示意圖。 圖2是依據另一範例實施例所繪示的主機系統、記憶體儲存裝置及輸入/輸出(I/O)裝置的示意圖。 圖3是依據另一範例實施例所繪示的主機系統與記憶體儲存裝置的示意圖。 圖4A是依據本發明的一範例實施例所繪示的記憶體儲存裝置的概要方塊圖。 圖4B是依據一範例實施例所繪示的記憶體控制電路單元耦接可複寫式非揮發性記憶體模組的示意圖。 圖5是依據本發明的一範例實施例所繪示的可複寫式非揮發性記憶體模組的概要方塊圖。 圖6是依據本發明的一範例實施例所繪示的記憶胞陣列的示意圖。 圖7是依據本發明的一範例實施例所繪示的記憶體控制電路單元的概要方塊圖。 圖8是依據本發明的一範例實施例所繪示的管理可複寫式非揮發性記憶體模組的示意圖。 圖9是依據本發明的一範例實施例所繪示的對應讀取指令的實體程式化單元的示意圖。 圖10是依據本發明的一範例實施例所繪示的資料讀取方法的流程圖。

Claims (27)

  1. 一種資料讀取方法,用於一可複寫式非揮發性記憶體模組,其中所述可複寫式非揮發性記憶體模組具有至少一晶粒、複數個平面與複數個實體程式化單元,所述資料讀取方法包括:從一主機系統接收至少一讀取指令,其中所述至少一讀取指令指示讀取屬於複數個邏輯位址的資料;選取所述複數個邏輯位址中符合一預定條件之複數個所選取的邏輯位址,其中所述複數個所選取的邏輯位址至少包括一第一邏輯位址與一第二邏輯位址,所述第一邏輯位址映射至所述複數個實體程式化單元中的一第一實體程式化單元,所述第二邏輯位址映射至所述複數個實體程式化單元中的一第二實體程式化單元,其中所述預定條件包括所述第一實體程式化單元屬於所述複數個平面中的一第一平面,所述第二實體程式化單元屬於所述複數個平面中的一第二平面,所述第一平面不同於所述第二平面,所述第一平面與所述第二平面屬於所述至少一晶粒中的同一晶粒,且對應所述第一實體程式化單元的一第一地址索引值與對應所述第二實體程式化單元的一第二地址索引值不同;以及執行對應所述複數個所選取的邏輯位址的一讀取操作以平行地讀取屬於所述複數個所選取的邏輯位址的資料。
  2. 如申請專利範圍第1項所述的資料讀取方法,其中所述複數個所選取的邏輯位址更包括一第三邏輯位址與一第四邏輯位址,所述第三邏輯位址映射至所述複數個實體程式化單元中的一 第三實體程式化單元,所述第四邏輯位址映射至所述複數個實體程式化單元中的一第四實體程式化單元,其中所述預定條件更包括所述第三實體程式化單元屬於所述複數個平面中的一第三平面,所述第四實體程式化單元屬於所述複數個平面中的一第四平面,所述第一平面、所述第二平面、所述第三平面與所述第四平面彼此不相同,且所述第一平面、所述第二平面、所述第三平面與所述第四平面屬於所述至少一晶粒中的同一晶粒。
  3. 如申請專利範圍第1項所述的資料讀取方法,更包括:根據一預定規則決定所述複數個邏輯位址的一讀取順序;以及根據所述讀取順序執行對應所述複數個邏輯位址的至少一讀取操作,其中所述至少一讀取操作包括對應所述複數個所選取的邏輯位址的所述讀取操作。
  4. 如申請專利範圍第3項所述的資料讀取方法,其中所述複數個邏輯位址更包括不符合所述預定條件的至少一邏輯位址,其中根據所述讀取順序執行對應所述複數個邏輯位址的所述至少一讀取操作的步驟包括:根據所述讀取順序執行對應所述複數個所選取的邏輯位址的所述讀取操作,並且在完成對應所述複數個所選取的邏輯位址的所述讀取操作之後,執行對應不符合所述預定條件的所述至少一邏輯位址的至少一讀取操作。
  5. 如申請專利範圍第3項所述的資料讀取方法,其中所述複數個邏輯位址更包括不符合所述預定條件的至少一邏輯位址,其中根據所述讀取順序執行所述複數個邏輯位址的所述至少一讀取操作的步驟包括:根據所述讀取順序執行對應不符合所述預定條件的所述至少一邏輯位址的至少一讀取操作,並且在完成對應不符合所述預定條件的所述至少一邏輯位址的所述至少一讀取操作之後,執行對應所述複數個所選取的邏輯位址的所述讀取操作。
  6. 如申請專利範圍第1項所述的資料讀取方法,其中所述複數個實體程式化單元被區分為一第一使用區域與一第二使用區域,其中屬於所述第一使用區域的實體程式化單元是以一第一程式化模式被程式化,並且屬於所述第二使用區域的實體程式化單元是以一第二程式化模式被程式化,其中所述預定條件更包括所述第一實體程式化單元與所述第二實體程式化單元屬於相同的使用區域。
  7. 如申請專利範圍第6項所述的資料讀取方法,其中所述第一程式化模式為單階記憶胞程式化模式,並且所述第二程式化模式為複數階記憶胞程式化模式。
  8. 如申請專利範圍第1項所述的資料讀取方法,其中所述複數個平面中的每一個平面包括複數個實體抹除單元,且所述複數個實體抹除單元中的每一個實體抹除單元包括所述複數個實體程式化單元中的部分的實體程式化單元, 其中所述第一實體程式化單元屬於所述複數個實體抹除單元中的一第一實體抹除單元,且所述第二實體程式化單元屬於所述複數個實體抹除單元中的一第二實體抹除單元,其中所述第一地址索引值用以指示所述第一實體程式化單元的起始位址相對於所述第一實體抹除單元的起始位址的地址偏移量,且所述第二地址索引值用以指示所述第二實體程式化單元的起始位址相對於所述第二實體抹除單元的起始位址的地址偏移量。
  9. 如申請專利範圍第1項所述的資料讀取方法,其中執行對應所述複數個所選取的邏輯位址的所述讀取操作以平行地讀取屬於所述複數個所選取的邏輯位址的資料的步驟包括:發送一位址指令,其中所述位址指令只包括對應所述第一實體程式化單元的列位址與對應所述第二實體程式化單元的列位址,或者只包括對應所述第一實體程式化單元的行位址與對應所述第二實體程式化單元的行位址;以及發送一讀取作動指令以根據所述位址指令平行地讀取儲存在所述第一實體程式化單元與所述第二實體程式化單元中的資料。
  10. 一種記憶體控制電路單元,用於控制一可複寫式非揮發性記憶體模組,其中所述可複寫式非揮發性記憶體模組具有至少一晶粒、複數個平面與複數個實體程式化單元,所述記憶體控制電路單元包括:一主機介面,用以耦接至一主機系統;一記憶體介面,用以耦接至所述可複寫式非揮發性記憶體模 組;以及一記憶體管理電路,耦接至所述主機介面與所述記憶體介面,其中所述記憶體管理電路用以從所述主機系統接收至少一讀取指令,其中所述至少一讀取指令指示讀取屬於複數個邏輯位址的資料,其中所述記憶體管理電路更用以選取所述複數個邏輯位址中符合一預定條件之複數個所選取的邏輯位址,其中所述複數個所選取的邏輯位址至少包括一第一邏輯位址與一第二邏輯位址,所述第一邏輯位址映射至所述複數個實體程式化單元中的一第一實體程式化單元,所述第二邏輯位址映射至所述複數個實體程式化單元中的一第二實體程式化單元,其中所述預定條件包括所述第一實體程式化單元屬於所述複數個平面的一第一平面,所述第二實體程式化單元屬於所述複數個平面的一第二平面,所述第一平面不同於所述第二平面,所述第一平面與所述第二平面屬於所述至少一晶粒中的同一晶粒,且對應所述第一實體程式化單元的一第一地址索引值與對應所述第二實體程式化單元的一第二地址索引值不同,其中所述記憶體管理電路更用以執行對應所述複數個所選取的邏輯位址的一讀取操作以平行地讀取屬於所述複數個所選取的邏輯位址的資料。
  11. 如申請專利範圍第10項所述的記憶體控制電路單元,其中所述複數個所選取的邏輯位址更包括一第三邏輯位址與一第 四邏輯位址,所述第三邏輯位址映射至所述複數個實體程式化單元中的一第三實體程式化單元,所述第四邏輯位址映射至所述複數個實體程式化單元中的一第四實體程式化單元,其中所述預定條件更包括所述第三實體程式化單元屬於所述複數個平面中的一第三平面,所述第四實體程式化單元屬於所述複數個平面中的一第四平面,所述第一平面、所述第二平面、所述第三平面與所述第四平面彼此不相同,並且所述第一平面、所述第二平面、所述第三平面與所述第四平面屬於所述至少一晶粒中的同一晶粒。
  12. 如申請專利範圍第10項所述的記憶體控制電路單元,其中所述記憶體管理電路更用以根據一預定規則決定所述複數個邏輯位址的一讀取順序,並且根據所述讀取順序執行對應所述複數個邏輯位址的至少一讀取操作,其中所述至少一讀取操作包括對應所述複數個所選取的邏輯位址的所述讀取操作。
  13. 如申請專利範圍第12項所述的記憶體控制電路單元,其中所述複數個邏輯位址更包括不符合所述預定條件的至少一邏輯位址,其中所述記憶體管理電路根據所述讀取順序執行對應所述複數個邏輯位址的所述至少一讀取操作的操作包括:根據所述讀取順序執行對應所述複數個所選取的邏輯位址的所述讀取操作,並且在完成對應所述複數個所選取的邏輯位址的所述讀取操作之後,執行對應不符合所述預定條件的所述至少一邏輯位址的至少一讀取操作。
  14. 如申請專利範圍第12項所述的記憶體控制電路單元,其中所述複數個邏輯位址更包括不符合所述預定條件的至少一邏輯位址,其中所述記憶體管理電路根據所述讀取順序執行所述複數個邏輯位址的所述至少一讀取操作的操作包括:根據所述讀取順序執行對應不符合所述預定條件的所述至少一邏輯位址的至少一讀取操作,並且在完成對應不符合所述預定條件的所述至少一邏輯位址的所述至少一讀取操作之後,執行對應所述複數個所選取的邏輯位址的所述讀取操作。
  15. 如申請專利範圍第10項所述的記憶體控制電路單元,其中所述複數個實體程式化單元被區分為一第一使用區域與一第二使用區域,其中屬於所述第一使用區域的實體程式化單元是以一第一程式化模式被程式化,並且屬於所述第二使用區域的實體程式化單元是以一第二程式化模式被程式化,其中所述預定條件更包括所述第一實體程式化單元與所述第二實體程式化單元屬於相同的使用區域。
  16. 如申請專利範圍第15項所述的記憶體控制電路單元,其中所述第一程式化模式為單階記憶胞程式化模式,並且所述第二程式化模式為複數階記憶胞程式化模式。
  17. 如申請專利範圍第10項所述的記憶體控制電路單元,其中所述複數個平面中的每一個平面包括複數個實體抹除單元,且所述複數個實體抹除單元中的每一個實體抹除單元包括所述複數個實體程式化單元中的部分的實體程式化單元, 其中所述第一實體程式化單元屬於所述複數個實體抹除單元中的一第一實體抹除單元,且所述第二實體程式化單元屬於所述複數個實體抹除單元中的一第二實體抹除單元,其中所述第一地址索引值用以指示所述第一實體程式化單元的起始位址相對於所述第一實體抹除單元的起始位址的地址偏移量,且所述第二地址索引值用以指示所述第二實體程式化單元的起始位址相對於所述第二實體抹除單元的起始位址的地址偏移量。
  18. 如申請專利範圍第10項所述的記憶體控制電路單元,其中所述記憶體管理電路執行對應所述複數個所選取的邏輯位址的所述讀取操作以平行地讀取屬於所述複數個所選取的邏輯位址的資料的操作包括:發送一位址指令,其中所述位址指令只包括對應所述第一實體程式化單元的列位址與對應所述第二實體程式化單元的列位址,或者只包括對應所述第一實體程式化單元的行位址與對應所述第二實體程式化單元的行位址;以及發送一讀取作動指令以根據所述位址指令平行地讀取儲存在所述第一實體程式化單元與所述第二實體程式化單元中的資料。
  19. 一種記憶體儲存裝置,包括:一連接介面單元,用以耦接至一主機系統;一可複寫式可複寫式非揮發性記憶體模組,具有至少一晶粒、複數個平面與複數個實體程式化單元;以及一記憶體控制電路單元,耦接至所述連接介面單元與所述可 複寫式可複寫式非揮發性記憶體模組,其中所述記憶體控制電路單元用以從所述主機系統接收至少一讀取指令,其中所述至少一讀取指令指示讀取屬於複數個邏輯位址的資料,其中所述記憶體控制電路單元更用以選取所述複數個邏輯位址中符合一預定條件之複數個所選取的邏輯位址,其中所述複數個所選取的邏輯位址至少包括一第一邏輯位址與一第二邏輯位址,所述第一邏輯位址映射至所述複數個實體程式化單元中的一第一實體程式化單元,所述第二邏輯位址映射至所述複數個實體程式化單元中的一第二實體程式化單元,其中所述預定條件包括所述第一實體程式化單元屬於所述複數個平面中的一第一平面,所述第二實體程式化單元屬於所述複數個平面中的一第二平面,所述第一平面不同於所述第二平面,所述第一平面與所述第二平面屬於所述至少一晶粒中的同一晶粒,且對應所述第一實體程式化單元的一第一地址索引值與對應所述第二實體程式化單元的一第二地址索引值不同,其中所述記憶體控制電路單元更用以執行對應所述複數個所選取的邏輯位址的一讀取操作以平行地讀取屬於所述複數個所選取的邏輯位址的資料。
  20. 如申請專利範圍第19項所述的記憶體儲存裝置,其中所述複數個所選取的邏輯位址更包括一第三邏輯位址與一第四邏輯位址,其中所述第三邏輯位址映射至所述複數個實體程式化單 元中的一第三實體程式化單元,所述第四邏輯位址映射至所述複數個實體程式化單元中的一第四實體程式化單元,其中所述預定條件更包括所述第三實體程式化單元屬於所述複數個平面中的一第三平面,所述第四實體程式化單元屬於所述複數個平面中的一第四平面,所述第一平面、所述第二平面、所述第三平面與所述第四平面彼此不相同,且所述第一平面、所述第二平面、所述第三平面與所述第四平面屬於所述至少一晶粒中的同一晶粒。
  21. 如申請專利範圍第19項所述的記憶體儲存裝置,其中所述記憶體控制電路單元更用以根據一預定規則決定所述複數個邏輯位址的一讀取順序,並且根據所述讀取順序執行對應所述複數個邏輯位址的至少一讀取操作,其中所述至少一讀取操作包括對應所述複數個所選取的邏輯位址的所述讀取操作。
  22. 如申請專利範圍第21項所述的記憶體儲存裝置,其中所述複數個邏輯位址更包括不符合所述預定條件的至少一邏輯位址,其中所述記憶體控制電路單元根據所述讀取順序執行對應所述複數個邏輯位址的所述至少一讀取操作的操作包括:根據所述讀取順序執行對應所述複數個所選取的邏輯位址的所述讀取操作,並且在完成對應所述複數個所選取的邏輯位址的所述讀取操作之後,執行對應不符合所述預定條件的所述至少一邏輯位址的至少一讀取操作。
  23. 如申請專利範圍第21項所述的記憶體儲存裝置,其中所述複數個邏輯位址更包括不符合所述預定條件的至少一邏輯位址,其中所述記憶體控制電路單元根據所述讀取順序執行所述複數個邏輯位址的所述至少一讀取操作的操作包括:根據所述讀取順序執行對應不符合所述預定條件的所述至少一邏輯位址的至少一讀取操作,並且在完成對應不符合所述預定條件的所述至少一邏輯位址的所述至少一讀取操作之後,執行對應所述複數個所選取的邏輯位址的所述讀取操作。
  24. 如申請專利範圍第19項所述的記憶體儲存裝置,其中所述複數個實體程式化單元被區分為一第一使用區域與一第二使用區域,其中屬於所述第一使用區域的實體程式化單元是以一第一程式化模式被程式化,並且屬於所述第二使用區域的實體程式化單元是以一第二程式化模式被程式化,其中所述預定條件更包括所述第一實體程式化單元與所述第二實體程式化單元屬於相同的使用區域。
  25. 如申請專利範圍第24項所述的記憶體儲存裝置,其中所述第一程式化模式為單階記憶胞程式化模式,並且所述第二程式化模式為複數階記憶胞程式化模式。
  26. 如申請專利範圍第19項所述的記憶體儲存裝置,其中所述複數個平面中的每一個平面包括複數個實體抹除單元,且所述複數個實體抹除單元中的每一個實體抹除單元包括所述複數個實體程式化單元中的部分的實體程式化單元, 其中所述第一實體程式化單元屬於所述複數個實體抹除單元中的一第一實體抹除單元,且所述第二實體程式化單元屬於所述複數個實體抹除單元中的一第二實體抹除單元,其中所述第一地址索引值用以指示所述第一實體程式化單元的起始位址相對於所述第一實體抹除單元的起始位址的地址偏移量,且所述第二地址索引值用以指示所述第二實體程式化單元的起始位址相對於所述第二實體抹除單元的起始位址的地址偏移量。
  27. 如申請專利範圍第19項所述的記憶體儲存裝置,其中所述記憶體控制電路單元執行對應所述複數個所選取的邏輯位址的所述讀取操作以平行地讀取屬於所述複數個所選取的邏輯位址的資料的操作包括:發送一位址指令,其中所述位址指令只包括對應所述第一實體程式化單元的列位址與對應所述第二實體程式化單元的列位址,或者只包括對應所述第一實體程式化單元的行位址與對應所述第二實體程式化單元的行位址;以及發送一讀取作動指令以根據所述位址指令平行地讀取儲存在所述第一實體程式化單元與所述第二實體程式化單元中的資料。
TW106116782A 2017-05-19 2017-05-19 資料讀取方法、記憶體控制電路單元與記憶體儲存裝置 TWI631460B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW106116782A TWI631460B (zh) 2017-05-19 2017-05-19 資料讀取方法、記憶體控制電路單元與記憶體儲存裝置
US15/648,459 US20180335942A1 (en) 2017-05-19 2017-07-13 Data reading method, memory control circuit unit and memory storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW106116782A TWI631460B (zh) 2017-05-19 2017-05-19 資料讀取方法、記憶體控制電路單元與記憶體儲存裝置

Publications (2)

Publication Number Publication Date
TWI631460B true TWI631460B (zh) 2018-08-01
TW201901433A TW201901433A (zh) 2019-01-01

Family

ID=63959858

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106116782A TWI631460B (zh) 2017-05-19 2017-05-19 資料讀取方法、記憶體控制電路單元與記憶體儲存裝置

Country Status (2)

Country Link
US (1) US20180335942A1 (zh)
TW (1) TWI631460B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102516547B1 (ko) * 2018-03-08 2023-04-03 에스케이하이닉스 주식회사 메모리 컨트롤러 및 이를 포함하는 메모리 시스템
TWI732642B (zh) * 2020-08-03 2021-07-01 群聯電子股份有限公司 資料寫入方法、記憶體控制電路單元以及記憶體儲存裝置
CN113885808B (zh) * 2021-10-28 2024-03-15 合肥兆芯电子有限公司 映射信息记录方法以及存储器控制电路单元与存储装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200825738A (en) * 2006-08-04 2008-06-16 Sandisk Corp Phased garbage collection
TW200935420A (en) * 2007-12-31 2009-08-16 Sandisk Il Ltd System, method and memory device providing data scrambling compatible with on-chip copy operation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200825738A (en) * 2006-08-04 2008-06-16 Sandisk Corp Phased garbage collection
TW200935420A (en) * 2007-12-31 2009-08-16 Sandisk Il Ltd System, method and memory device providing data scrambling compatible with on-chip copy operation

Also Published As

Publication number Publication date
TW201901433A (zh) 2019-01-01
US20180335942A1 (en) 2018-11-22

Similar Documents

Publication Publication Date Title
TWI575374B (zh) 映射表格更新方法、記憶體儲存裝置及記憶體控制電路單元
TWI649754B (zh) 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元
TWI592799B (zh) 映射表更新方法、記憶體控制電路單元及記憶體儲存裝置
TWI668570B (zh) 資料整併方法、記憶體儲存裝置及記憶體控制電路單元
TWI554885B (zh) 記憶體管理方法、記憶體控制電路單元及記憶體儲存裝置
TWI591482B (zh) 資料保護方法、記憶體控制電路單元及記憶體儲存裝置
TWI688953B (zh) 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元
TW201837712A (zh) 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
TW201913383A (zh) 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置
TWI644210B (zh) 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置
CN111078146B (zh) 存储器管理方法、存储器存储装置及存储器控制电路单元
TWI631460B (zh) 資料讀取方法、記憶體控制電路單元與記憶體儲存裝置
TWI717751B (zh) 資料寫入方法、記憶體控制電路單元及記憶體儲存裝置
TW202004506A (zh) 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元
TWI658402B (zh) 資料寫入方法、記憶體控制電路單元及記憶體儲存裝置
TW201719413A (zh) 資料程式化方法、記憶體儲存裝置及記憶體控制電路單元
CN110837339A (zh) 数据整并方法、存储器存储装置及存储器控制电路单元
TWI635495B (zh) 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
US20240028506A1 (en) Mapping table re-building method, memory storage device and memory control circuit unit
US10824368B2 (en) Data storing method, memory control circuit unit and memory storage device
TW201802820A (zh) 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元
TWI591641B (zh) 資料程式化方法、記憶體控制電路單元及記憶體儲存裝置
TWI823792B (zh) 映射表更新方法、記憶體儲存裝置及記憶體控制電路單元
TWI780003B (zh) 記憶體控制方法、記憶體儲存裝置及記憶體控制電路單元
TWI771243B (zh) 記憶體控制方法、記憶體儲存裝置及記憶體控制電路單元