TW201234177A - Data access method, and memory controller and memory storage apparatus using the same - Google Patents

Data access method, and memory controller and memory storage apparatus using the same Download PDF

Info

Publication number
TW201234177A
TW201234177A TW100104919A TW100104919A TW201234177A TW 201234177 A TW201234177 A TW 201234177A TW 100104919 A TW100104919 A TW 100104919A TW 100104919 A TW100104919 A TW 100104919A TW 201234177 A TW201234177 A TW 201234177A
Authority
TW
Taiwan
Prior art keywords
module
data
access
physical
thread
Prior art date
Application number
TW100104919A
Other languages
English (en)
Other versions
TWI526828B (zh
Inventor
Ching-Wen Chang
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 TW100104919A priority Critical patent/TWI526828B/zh
Priority to US13/095,909 priority patent/US8914587B2/en
Publication of TW201234177A publication Critical patent/TW201234177A/zh
Application granted granted Critical
Publication of TWI526828B publication Critical patent/TWI526828B/zh

Links

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
    • 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
    • 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/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • 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/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • G06F13/1626Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests
    • 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/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1663Access to shared memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0038System on Chip

Landscapes

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

Description

201234177 PSPD-2010-0036 36499twf.doc/n 六、發明說明: 【發明所屬之技術領域】 法,且特別是有關於 可複寫式非揮發性記 本發明疋有關於一種資料存取方 一種用於透過多個執行緒模組的存取 料存取方法及使用此方法的記憶體控制 憶體模組的資料名 記憶體儲存裝置。 使得增來:成=式 非揮發性 5己憶體(rewritable non-volatile
y王口口,狀,萆圮型電腦。固態硬 就是-種以快閃記憶體作為儲存媒體的儲存褒置。因此 近年快閃記憶體產業成為電子產業中相t朗的一環。 可複寫式非揮發性記憶體儲存裝置具有多個實體區塊 (physical bloCk),且每—實體區塊具有多個實體頁面 (physicai page) ’ Μ在實醜塊中寫人資料時㈣依據實 體頁面的順序依序地寫H此外,已被寫人資料之每 體頁面並S先被抹除後才能再次用於寫人資料。特別是, 實體區塊η為抹除之最小單位,並且實體頁面為程式化(亦稱 寫入)的最小單元。因此,在快閃記憶體儲存系统的管理 中,實體區塊會被區分為資料區與閒置區。 資料區的實體區塊是用以儲存主機系統所儲存之資 201234177 PSPD-2010-0036 36499twf.d〇c/ti 來Ϊ ’記憶體管理電路會將主機系統所存取的邏 址轉換為邏輯區塊的邏輯頁面並且將邏輯區塊的 =j映^貝料^的實體區塊的實體頁面。也就是 2)?如’記憶體管理電路會使用邏輯區塊-實體區塊映 輯區塊與資料區的實體區塊的映射關係,其 頁面是依序的對應所映射之實體區塊 呈實體區塊是用以輪替#料區中的實體區塊。 德:,已寫入資料的實體區塊必須被抹除 用μ再★用於寫人#料,而閒的實體區塊是被設計 :寫入更新貧料以替換原先映射邏輯區塊的實體區塊。 ==在隱區中的實體區塊為空或可使㈣區塊,即無 5己錄資料或標記為已沒用的無效資料。 由於資料區的實體區塊與閒置區的實體區塊是以輪替 =來以儲存主機系統所寫人的資料。為了能夠讓主機系 —丨貞·存㈣輪㈣式儲存㈣的實魏塊,可複 寫式非揮發性賴贿存㈣纽供邏龍塊並且將主機 糸統所存取之邏財純崎叙此㈣無塊内之邏輯 頁面。具體來說,可複寫式非揮發性記憶體儲存裝置會將 主機所存取的賴存取健㈣至縣的雜區塊,並且 透過在邏輯區塊-實體區塊映射表(logical blockphysical block mapping table)中記錄與更新邏輯區塊與資料區的實 S. 5 201234177 PSPD-2010-0036 36499twf.doc/n 體區塊之_映射關縣反映實魏塊的 機僅需依據邏輯存取位址進行存取,而 統:依據,區塊-實體區塊映射表在所映射 上進行貧料的讀取或寫人。 Μ㈣塊 具體來說’當主機系統欲將資料儲存於—邏 址時’快閃記.it雜射、統的控制電路 邏輯區塊’從間置區中提取-實體區 新貝料日寫人至從閒置區中提取的實體區塊(亦忠 體區塊),以替換原先映射此邏輯區塊 ;二 區塊。之後,當主二= 存編須進 之邏輯區塊的有效資料合併(即體區塊 都合併至-個實體區塊中㈣於此私區塊的資料 例如,在資料合併過程中,可複 儲,置:將母實體區塊内的有效資料複製到子實= 塊,並且將此邏輯區塊重新映射至子實體區塊(即,此 體區塊將被_至資_。料, & 置會將原本資料區的母實體區塊進行抹除並= 至閒置區。 隨著-個邏輯區塊的容量越來越大 狀更長的時間來進行上述St 併私w订下-個寫人指令。此外,當記憶體儲存裝 201234177 PSPD-2010-0036 36499twf.doc/n
置僅被配置一個資料匯流排來連接控制電路與可複寫式非 揮發性S己憶體模組並且多個執行緒模組被配置來存取此可 複寫式非揮發性記憶體模組時,由於此些執行緒模組是共 用-個資料匯流排來傳輸資料,因此使得執行寫人指令的 =需時間更長。例如’倘若以f景方式處理㈣的存取的 背f執行緒觀正在執行上述資料合併程相s人資料並 且前景執行緒模組接收到主機系統的寫入指令時,前景執 打,模組必縣待背景執行緒歡完成㈣合併程序之後 才能執行此g人指令。制是,前純行緒觀在執行此 寫入指令之前可能亦需先執行資料合併程序,因此,執行 =入指令所需的時間會變的相當長,使得前景執行緒模 ,.且‘、、'法即時回應主機系統,而造成逾時(time㈣問題。 【發明内容】 ,發明提供—㈣料存取方法、記憶體控制器與記憶 裳置’其能夠在以多執行緒存取非揮發性記憶體模 ,、且的架構下避免逾時問題。 _實施例提出—種#料存取方法,用於透過 二粗執行緒模組在—可複寫式非揮發性記,_模組上存取 此可複g式雜發性記憶雜組具有多個實體區塊 ^體區塊具有依序排列的多個實體頁面,此些執 組包括第—執行緒模組與第二執行緒模組,第二執 r F =組執仃T寫人指令以將多個頁面資料寫人至此些實 °°之中的第—實體區塊中。本資料存取方法包括指派
S 7 201234177 10-0036 36499twf.doc/n 一存取執行權給此第二執行緒模組並且藉由此第執 模組將上述頁面資料之中預定數量的頁面資上= 匯流排寫入至第二實體區塊的預定數量之實體頁面中,其 中第一執行緒模組在將預定數量的頁面資料經由資料匯流 排寫入至第二貫體區塊之後釋放此存取執行權並且此預定 數里〗於任一貫體區塊所具有的頁面數。本資料存取方法 也匕括在第一執行緒模組釋放此存取執行權之後,判斷是 否接收到應由第一執行緒模組所執行之存取指令。本資料 存取方法還包括,當判斷接收到應由第一執行緒模組所執 /于=存,扣々時,指派此存取執行權給第—執行緒模組並 且藉由第一執行緒模組在此些實體區塊之中的第一實俨區 =執行此存取指令,其中第—執行緒模組在執行此^ 才曰々之後釋放此存取執行權。 在本發明之—實施例中,上述之資料存取方法更包 —執行_轉放存取執行權之後,指派上述存 述頁:執行緒模組並且藉由第二執行緒模纽將上 中的另—預定數量的頁面資料經由上述資料 广排寫人至第二實體區塊的另__預定數 :,其中第二執行緒模組在將預定數量的頁面資 料匯流排寫人至第二實體區塊之後釋放此存取由貝 括:實關巾’以之資料耗方法更包 取執行權給第二執行緒模組 執仃緒模組將此些頁面資料之中的另-預定數 201234177 PSPD-2010-0036 36499twf.doc/n 料經由貧料匯流排寫入至第二實體區塊的另一預定數量的 實體頁面中,其中第二執行緒模組在將頁面資料經由資料 匯流排寫入至第二實體區塊之後釋放此存取執行權。 在本發明之一實施例十,上述之資料存取方法更包 括:配置多铺輯區塊以映射至少部分的實體區塊;將此 些邏輯區額分為-第—分魏與H龍;藉由第 -執行緒模組獨立地存取映射第—分割區之^1輯區塊的實 體區塊;以及藉由第二執行緒模域立地存取映射分 副區之邏輯區塊的實魏塊’其中第—實體區塊映射第一 分割區之邏輯區塊的其中之―,並且第二實體區塊映射第 一分割區之邏輯區塊的其中之一。 在本發明之-實施例中,上述之㈣麵方法 括:,由第-執行緒處理第—指令;以及藉 =模組處理第二指令,其中當第―指令及第二指令皆帝 令第―指令優先於第高並且上述存取指令i 本發明範例實施例提出一種資料存 多個執行緒模組在可複寫式非揮==且=過 料’此可複寫式非揮發性記憶體模组具有多個貧 :每产區塊具有依序排列的多個實體頁面,==並 啫广括第一執行緒模組與第二執行緒模組,第:執;: 區塊之中的第二實趙區塊些實體 些頁面資料之中尚未被寫人的頁面資料的數目=== ^1- 9 201234177 1"ϋ^υ-2υΐ〇-〇〇36 36499twf.d〇c/n 汉門檻值。本資料存取方法還包括,當判斷此些頁面資料 之中尚未被寫入的頁面資料的數目小於此預設門檻值時, 則指派此存取執行權給第二執行緒模組並且藉由第二執行 緒模、、且將此些頁面貢料之中尚未被寫入的頁面資料經由資 ^匯^_排寫人至第二實體區塊中。本資料存取方法亦包 ^酬此些頁面資料之中尚未被寫人的頁面資料的數 -tr此預針m值時,則判斷是否接收到應由第一執 订緒核、,且所執行之存取指令。本 模^由此=給第—執行緒模組並且藉由此第一執行緒 匯流排在此些實體區塊之中的第-實體區 指令二=:執::第一執行緒模組在執行此存取 指派施例中,上述之資料存取方法更包括 .组將藉由第二執行绪模 r八至第,區 第二執行緒模組在將預定數量的頁面中 t實體區塊之後釋放此存取執行權。:此 預設門插值的步驟是在第二執行緒小於 之後被執行。 、釋放此存取執行權 在本發明之—實施射,當第— 行緒模組皆需被執行時,第一執行緒模組是== 201234177 PSPD-2010-0036 36499twf.doc/n 行,並且第二執行緒模組是以背景模式執行。 本發明範例實施例提出一種記憶體控制器,用於控 可複寫式非揮發性記憶體模組,其中此可複寫式 記憶體模組具有多個實體區塊,並且每一實體區塊具 序排列的乡個實體頁面。本雜餘繼包括記憶體介、 與記憶體管理電路。記憶體介面用以_至可複寫式非 發性記憶龍組。記減管理電路輕接至記題介面,並 且用以執行-寫人指令以將多個頁面資料寫人至此些實 區塊之中的第二實舰塊中。在此’記憶體管理電路包括 第-執行緒模組、第二執行緒模組以及_至此第一執 緒模組與第二執行緒模組的資源分配模組。 ^指派存取執行權給第二執行緒模組並料二執行= ^此些頁面資料之中的預定數量的頁面資料經由一資料 ^排寫人至第二實體區塊的預定數量的實體頁面中,、且 組在將預缝量的頁面㈣經由資料匯流 以二實體區塊之後釋放此存取執行權並且 到、於任-實顏塊有的頁錢。 :模組釋放此存取執行權之後,資源分配模二= 由第—執行緒模組所執行之存取指令。並且,當判 ,收到應由第-執行__執行之存取指令時,此資 執ί=組指派此存取執行權給第-執行緒模組並且第-組經由資料匯流排在此些實體區塊之中的第一實 存取指令之後釋纽錄執=第執⑽触在執行此 11 201234177 10-0036 36499twf.doc/n hi本發明之—貫施例t,在第—執行緒模組釋放上述 ^執,之後,上述之資源分配指派此存取執行^ 中口 =執行緒模組並且第二執行緒模組將此些頁面資料之 ί 頁面資料經由上述資料匯流排寫入至 弟-實體區塊的另-預定數量的實體頁面中,盆 將此預定數量的頁面資料經由此資料匯流_ 第一Λ體區塊之後釋放此存取執行權。 ·'' 行铁it發明之—實施例中’當判斷未接收到應由第一執 ^^所執行之存取指令時,上述之資源分配模組指派 ^權給第二執行緒模組並且第二執行緒模組將此些 流排的:一預定數量的頁面資料經由上述資料匯 龙=入至苐二實體區塊的另一預定數量的實體頁面中, 料組在將此預定數量的頁面資料經由此資 匯々,L排寫入至第二實體區塊之後釋放此存取執行權。 多個、之—實闕巾’上叙記賴管理電路配置 二==射至少部分的上述實體區塊並且將此些 U刀為第-分割區與第二分割區。在此,第 二轉第一分之邏輯區塊的實體區 輯祕一執仃緒模組獨立地存取映射第二分割區之邏 塊,其中第-實體區塊映射第-分割區之 之邏輯區塊的其=_:並且第二實體區塊映射第二分割區 可複例提出—種記憶_]器,用於控制 寫式非揮發性記憶體模組,其中此可複寫式非揮發性 12 201234177 PSPD-2010-0036 36499twf.doc/n s己憶體模組具有多個貫體區塊’並且每一實體區塊具有依 序排列的多個實體頁面。本記憶體控制器包括記憶體介面 與圮憶體官理電路。記憶體介面用以耦接至可複寫式非揮 發性記憶體模組。記憶體管理電路耦接至記憶體介面,並 且用以執行一寫入指令以將多個頁面資料寫入至此些實體 區塊之中的第二實體區塊中。在此,記憶體管理電路包括 第一執行緒模組、第二執行緒模組以及耦接至此第一執行 緒模組與第二執行賴組的資源分配模組0 #源分配模組 判斷此些頁面資料之中尚未被寫人的f面資料的數目是否 小於一預設門檻值。並且,當判斷此些頁面資料之中尚未 被寫入的1面資料的數目小於預設門難時,資源分配模 組指派此存取執行權給第二執行緒模組並a第二執行緒模 組f此些頁面資料之中尚未被寫人的頁面資料經由此資料 排寫入至第二實體區塊中。另外,當判斷此些頁面資 之中尚未被寫人的頁面資料的數目非小於預設門 ^資t配模組會判斷是否接收到應由第—執行緒模組 槿也^取指令。並且,當判斷接收到應由第—執行緒 =3 存取指令時,資源分配模組指派此存取Μ 排订緒核組並且第—執行緒模組經由此資料匯流 人,盆體區塊之中的第·"實體區塊上執行此存取指 ‘執;亍權第一執行緒I组在執行此存取指令之後釋放此存 取執 ^ π弟一執行緒模組並且第二執行緒模組將此些頁
S 13 201234177 PSPD-2010-0036 36499twf.doc/n 面資料之中的預定數量的頁面資料經由一資料匯流排寫入 至第二實體區塊的預定數量的實體頁面中,其中第二執行 緒模組在將預定數量的頁面資料經由資料匯流排寫入至第 二實體區塊之後釋放此存取執行權。此外,資源分配模組 在第二執行緒模組釋放此存取執行權之後,判斷此些頁面 貧料之中尚未被寫入的頁面資料的數目是否小於上述預設 門播值。 在本發明之-實施例中,上述第一執行緒模組用以處 理第一扣令,並且第二執行緒模組用以處理第二指令,其 中當第-指令及第二指令皆需被處理時,第—指令優先於 第二指令。並且,上述之存取指令屬於第—指令。、 本發明範例實施例提出—種記憶體儲存展置, 上述:複寫式非揮發性記憶體池與上述記憶體控制器括 土於上述,本發明範例實施例的資料存取 體控制器與記憶體儲存裝置A 27 5己憶 取非揮發性記憶體模組可多執行緒存 【實施方式】 [第一範例實施例] 範例實施例繪示 主機系統與 圖1A是根據本發明第一 記憶體儲存裝置。 請參照圖1A,主機系統 1000 一般包括電腦1100與輸 201234177 PSPD-2010-0036 36499twf.doc/n 入/輸出(input/output,I/O)裝置1106。電腦1100包括微處 理器 1102、隨機存取記憶體(random access memory, RAM) 1104、系統匯流排ii〇8與資料傳輸介面ul〇。輸入/輸出 裝置1106包括如圖1B的滑鼠1202、鍵盤12〇4、顯示器12〇6 與印表機1208。必須瞭解的是,圖1B所示的裝置非限制輸 入/輸出裝置1106,輸入/輸出裝置1106可更包括其他裝置。 在本發明實施例中,記憶體儲存裝置1〇〇是透過資料 Φ 傳輸介面1H0與主機系統1000的其他元件耦接。藉由微 處理器1102、隨機存取記憶體1104與輸入/輸出裝置11〇6 的運作可將寅料寫入至記憶體儲存裝置1 〇〇或從記憶體儲 存裝置100中讀取資料。例如,記憶體儲存裝置1〇〇可以 是如圖1B所示的隨身碟1212、記憶卡1214或固態硬碟 (Solid State Ddve, SSD)1216等的非揮發性記憶體儲存裝 置。 一般而言,主機系統1000可實質地為可儲存資料的任 意系統。雖然在本範例實施例中,主機系統1000是以電腦 • 系統來作說明,然而,在本發明另一範例實施例中主機系 統1000可以是數位相機、攝影機、通信裝置、音訊播放器 或視訊播放器等系統。例如,在主機系統為數位相機(攝影 機)1310時,非揮發性記憶體儲存裝置則為其所使用的
卡 1312、MMC 卡 1314、記憶棒(memory stick)1316、CF 卡1318或嵌入式儲存裝置1320(如圖ic所示卜嵌入式儲 存裝置1320包括嵌入式多媒體卡(Embedded eMMC)。值得-提的是,獻式多媒體卡是直接搞接於主 15 201234177 PSPD-2010-0036 36499twf.doc/n 機系統的基板上。 圖2是繪示圖1A所示的記憶體儲存裝置的概要方塊 圖。 5月參如圖2 ’ s己憶體儲存裝置1〇〇包括連接写102、 記憶體控制器104與可複寫式非揮發性記憶體模組1〇6。 在本範例實施例中,連接器102為安全數位(Secure Digital,SD)介面連接器。然而,必須瞭解的是,本發明不 限於此,連接器102亦可以是通用序列匯流排(Universal Serial Bus,USB)連接器、電氣和電子工程師協會(難㈣〇f
Electrical and Electronic Engineers,IEEE) 1394 連接 p、高 (Peripheral Component Interconnect Express,PCI Express)連接器、序列先進附件(se制
Advaneed Teehnobgy Attachment,SATA)連接器、記情樁 (Memory Stick, MS)介面連接器、多媒體儲存 Mecha Card,MMC)介面連接器、小型快閃(c〇mpact服啦 CF)介面連㈣、整合式_電子介面伽聊㈣以心 Electronics,IDE)連接器或其他適合的連接器。 s己憶體控制器104用以執行以硬體型式或拿刃體型式實 作的夕個邏輯閑或控制齡,並且根據主機系統 1000的指 々在可複料非揮發性記㈣ 入、讀取與抹除等運作。 貝叶幻馬 可複寫式非揮發性記憶體模@ 1G6是麵接至記憶體控 104 ’並且用以儲存主機系統觸〇所寫入之資料。特 別疋’可複寫式非揮發性記憶體模组1〇6是經由單一資料 201234177 PSPD-2010-0036 36499tw£doc/n 匯流排106a耦接至記憶體控制器i〇4。 可複寫式非揮發性記憶體模組106具有實體區塊 310(0)〜310(R)。每一實體區塊分別具有複數個實體頁面, 其中屬於同一個實體區塊之實體頁面可被獨立地寫入且被 同時地抹除。例如,每一實體區塊是由128個實體頁面所 組成。然而’必須瞭解的是’本發明不限於此,每一實體 區塊是可由64個實體頁面、256個實體頁面或其他任意個 實體頁面所組成。 ® 更詳細來說,實體區塊為抹除之最小單位。亦即,每 一實體區塊含有最小數目之一併被抹除之記憶胞。實體頁 面為程式化的最小單位。即,實體頁面為寫入資料的最小 單位。然而’必須瞭解的是,在本發明另一範例實施例中, 寫入資料的最小單位亦可以是扇區(Sector)或其他大小。每 一實體頁面通常包括資料位元區D與冗餘位元區R。資料 位元區D用以儲存使用者的資料,而冗餘位元區R用以儲 存系統的資料(例如,錯誤檢查與校正碼)。 • 在本範例實施例中,可複寫式非揮發性記憶體模組 106為多階記憶胞(Multi Level Cell, MLC)NAND快閃記憶 體模組。然而,本發明不限於此,可複寫式非揮發性記憶 體模組106亦可是單階記憶胞(Single Level Cell, SLC)NAND快閃記憶體模組、其他快閃記憶體模組或其他 具有相同特性的記憶體模組。 圖3與圖4是根據本發明第一範例實施例所繪示的管 理實體區塊的示意圖。 5 17 201234177 FSF D-2010-0036 36499twf.doc/n 請參照圖3,記憶體控制器104會將實體區塊 310(0)〜310(R)邏輯地分組為資料區502、閒置區5〇4、系 統區506與取代區508。 邏輯上屬於資料區502與閒置區504的實體區塊是用 以儲存資料。具體來說,資料區502是已儲存資料的實體 區塊’而閒置區504的實體區塊是用以替換資料區502的 實體區塊。因此,閒置區504的實體區塊為空或可使用的 實體區塊’即無記錄資料或標記為已沒用的無效資料。也 就是說’在閒置區504中的實體區塊已被執行抹除運作, 或者當閒置區504中的實體區塊被提取用於儲存資料之前 所長:取之貫體區塊會被執行抹除運作。因此,閒置區504 的實體區塊為可被使用的實體區塊。 邏輯上屬於系統區506的實體區塊是用以記錄系統資 料,其中此系統資料包括關於可複寫式非揮發性記憶體模 組的製造商與型號、可複寫式非揮發性記憶體模組的實體 區塊數、每一實體區塊的實體頁面數等。 一邏輯上屬於取代區508中的實體區塊是用以取代壞實 體區塊。例如,非揮發性記憶體模組1〇6於出廠時會預留 4/〇的實體區塊作為更換使用。也就是說,當資料區5〇2、 閒,區504與系統區506中的實體區塊損毁時,預留於取 代區508中的實體區塊會被用來取代損壞的實體區塊。因 此’偶若取代區中仍存有正常之實體區塊且發生實體 J塊^毁時’記憶體控制器1(H會從取代區娜中提取正 私的Λ體區塊來更換損毁的實體區塊。倘若取代區5〇8.中 201234177 PSPD-2010-0036 36499twf.doc/n 無正常之實體區塊且發生實體區塊損毀時,則記憶體控制 器1〇4會將整個記憶體儲存裝置100宣告為寫入保護(write protect)狀態,而無法再寫入資料。 、特別是’資料區502 '閒置區5〇4、系統區5〇6與取 代區通之實體區塊的數量會依據不同的記憶體規格而有 所不同。此外,必須瞭解的是,在記憶體儲存裝置削的 運作期間,實體區塊關聯至資料區5〇2、閒置區5〇4、系统 φ 區506與取代區的分組關係會動態地變動。例如,當 閒置區504中的實體區塊損壞而被取代區的實體區塊取代 時,則原本取代區508的實體區塊會被關聯至閒置區5〇4。 —請參照圖4,如上所述,資料區5〇2與閒置區5〇4的 實體區塊是以輪:#方式來儲存主機纽1GGG所寫入之資 料。在本範例實施例中,記憶體控制器1〇4會配置邏輯區 塊510(0)〜510(H)以映射以上述輪替方式來儲存資料之實 體區塊。特別是,記憶體控制器1〇4會將邏輯區塊 510(0)〜510(H)劃分為包含邏輯區塊51〇(〇)〜51〇(L)的第一 _ 分割區610與包含邏輯區塊510(L+1)〜510(H)的第二分割 區 620。 在此’第一分割區610是用以提供給主機系統1000 識別與一般存取的分割區。例如,當記憶體儲存裝置1〇〇 耦接至主機系統1000時,在信號交換(handshaking)之後主 機系統1000就會識別記憶體儲存裝置1〇〇為大容量儲存類 別並且可存取空間為第一分割區610。 例如,記憶體控制器1〇4會將邏輯區塊51〇(〇)〜51〇(L) 201234177 rsrL>-2Ul0-0036 36499twf.doc/n 的邏輯頁面映射至主機系統1000所存取的邏輯存取位址 710(0)〜710(M),以利主機系統1〇〇〇來存取資料。例如, §己憶體控制裔104會初始地將第一分割區邏輯區塊 510(0)〜510(L)映射至屬於資料區5〇2的實體區塊。具體來 說,當記憶體儲存裝置1〇〇被完成製造時,邏輯區塊 510(0)〜510(L)分別地映射至資料區502的實體區塊 310(0)〜310(L)。也就是說’ 一個邏輯區塊會映射資料區 中的一個實體區塊。在此,記憶體控制器1〇4會建立邏輯 區塊-實體區塊映射表(logical block_physical bl〇ck咖咖叩 table),以記錄邏輯區塊與實體區塊之間的映射關係。也就 是說,記憶體控制器104會將主機系統1000欲存取的邏輯 存取位址轉換成對應之邏輯區塊的邏輯頁面’由此透過查 詢邏輯區塊-實體區塊映射表於實體頁面中存取資料。 第二分割區620是屬於特定應用之儲存區。例如,在 本發明一範例實例中,第二分割區620是用於存放經過複 雜之加解密機制(例如,符合聯邦資訊處理標準(F^eral
Information Processing Standards,FIPS) 140-2 的第三等級戋更 高等級或者符合EMV EL的第三等級或更高等級的加l 機制)所加密的安全資料,並且主機系統1〇〇〇僅能透過& 定溝通軟體與身份識別才能存取儲存於第二分割區62〇的 資料。也就是說,當記憶體儲存裝置1〇〇耦接至主機系統 1000時,主機系統1〇〇〇的槽案系統無法識別出第二^叫 區620的存在。例如,第二分割區62〇的儲存空間;^為 智慧卡(smart card)應用程式的資料儲存區,其中主機系統 201234177 PSPD-2010-003 6 36499twf.doc/n 1000必須使用此智慧卡應用裎式且通過身份認證後方可 存取第二分割區620中的安全資料。 圖5〜圖7是根據本發明第一範例實施例所繪示的寫 入資料的範例。在此,是以寫入資料至第一分割區61〇的 邏輯區塊為例來進行說明,然而,其運作方式亦適用於寫 入資料至第二分割區620的邏輯區塊。 請同時參照圖5〜圖7,例如,在邏輯區塊51〇(〇)是映 射至貫體區塊310(0)的狀態下,當記憶體控制器1〇4從主 機系統1000中接收到寫入指令而欲寫入資料至屬於邏輯 區塊510(0)的邏輯頁面時,記憶體控制器1〇4會依據邏輯 ^塊-實體區塊映射表識別邏輯區塊训⑼目前是映射至 實體區塊310(0)並且從間置區5〇4中提取實體區塊 310(D+1)作為替換實體區塊來輪替實體區塊⑼。缺 而,當記憶體控制器、1〇4將新資料寫入至子實體區塊 310(D+1)的同時,記憶體控制器1〇4不 的所有有效資料搬移至實體區塊释;而抹= _ . ^ 31〇(〇)。具體來說’記憶體控制器104會將實體 欲寫人實體頁面之前的有效資料(即,實體區 ()的第0實體頁面與第】實體頁面中的資 圖5,二31。_)的第G實體頁面與第1實體頁面中、(如 且將新資料寫人至實體區塊的第 即體頁面中(如圖6所示)。此時,記憶體控制器H)4 可= 。因為實體區塊31〇(〇)中的有效資料有 才呆作(例如,寫入指令)中變成無效, 因此立刻 *-ι 21 201234177 1-^0-2010-0036 36499twf.doc/n 將實體區塊310(0)中的其他有效資料 == = ;謂的搬移。此外,資料二: 寫入至實體區塊_實體頁面,因此,記憶體控制器⑽ 僅會先搬移欲寫人f體;^之前的纽資料(即 體區塊3H)⑼的第〇實體頁面與第〇實體頁面 且暫不搬移其餘有效資料(即,儲存在實體 5〜(K-1)實體頁面中資料)。 、乐
…在本範例實施例中,暫時地維持此等暫態_的運作 稱為開啟(open)母子區塊’並且原實體區塊(例如,上述 體區塊310(0))稱為母實體區塊而替換實體區塊(例如,上 述與實體區塊310(D+1))稱為子實體區塊。
之後,當需要將實體區塊31〇(〇)與實體區塊31〇(D+1) 的資料合併(merge)時,記憶體控制器1〇4會將實體區塊 310(0)與貝體區塊31〇(D+l)的資料整併至一個實體區塊, 由此提升實體區塊的使用效率。在此,合併母子區塊的運 作稱為資料合併程序或關閉(close)母子區塊。例如’如圖 7所示,當進行關閉母子區塊時,記憶體控制器1〇4會將 實體區塊310(0)中剩餘的有效資料(即,實體區塊31〇(〇) 的第5〜(K-1)實體頁面中的資料)複製至替換實體區塊 31〇(D+l)的第5實體頁面〜第(K-1)實體頁面中,然後對實 體區塊310(0)執行抹除操作並將抹除後之實體區塊31〇(〇) 關聯至閒置區504,同時,將實體區塊310(D+1)關聯至資 料£ 502。也就疋§兌,§己憶體控制器1〇4會在邏輯區塊_實 體區塊映射表中將邏輯區塊510(0)重新映射至實體區塊 22 201234177 PSPD-2010-0036 36499twf.doc/n 置區的實體區塊 310(D+1)。此外,在本範例實施例中,記憶體控制哭 會建立閒置區實魏塊表(未繪示)來記錄目前被關聯至閒 值得-提的是’閒置區504中實體區塊的 的,基此,在s己憶體儲存裝置1〇〇運作期間,開啟之 區塊的組數亦會受到限制。因此,當記憶體儲存襄置刚 接收到來自於主機系統麵的寫入指令時,倘若已開
子區塊^組數達到上限時,記憶體控制器綱需關閉至少 -組目前⑽啟之母子區驗才可執行此寫入指令。 例如,在記憶體儲存裝置100為SD記憶卡的例子中, ^啟之母子區塊的组數的上限—般是設定為i。例如, 當在如圖6所示的狀態下並且記憶體控制器104從主機系 統麵巾f收到寫人指令聽S人資料至屬於邏輯區塊 510(1)的邏輯存取位址時,記憶體控制器1〇4必須先關閉 母子區塊(如圖7所示),並且之後,再㈣置區5〇4提取 一個實體區塊來開啟母子區塊(如圖5〜6所示)以完成資料 寫入。 。。圖8疋根據本發明第一範例實施例所緣示的記憶體控 制器的概要方塊圖。 請參照圖8 ’記憶體控制器104包括記憶體管理電路 202、主機介面2〇4與記憶體介面。 ,记憶體管理電路2〇2用以控制記憶體控制器1〇4的整 ^運作。具體來說’記憶體管理電路202具有多個控制指 7,並且在記憶體儲存裝置100運作時,此些控制指令會 23 201234177 PSPD-2010.0036 36499twf.doc/n 抹除等運作。 T _寫入、讀取與 θ、,本範例實施例中’言己憶體管理電路2〇2的控 :以勒體型式來實作。例如’記憶體管理二; 處理器單元(未繪示)與唯讀記憶體 /八有破 :=被燒錄至此唯讀記憶體中。當^體ϋΓΐ: 2 ’此些控制指令會由微處理器單元來執行以進 枓的寫入、讀取與抹除等運作。 、 =發明另-範例實施例中,記憶體管理電路2〇2的 控制才曰令亦可以程式碼型式儲存於可複寫式非揮發性記憶 體,組106的特定區域(例如,記憶體模組中專用於存放^ 統資料的系統區)中。此外,記憶體管理電路2〇2具有微處 理器單元(未㈣)、唯讀記憶體(讀示)及隨機存取記憶^ (二未繪示)。特別是,此唯讀記憶體具有驅動碼段,並且當 屺憶體控制器104被致能時,微處理器單元會先執行此驅 動碼段來將儲存於可複寫式非揮發性記憶體模組1〇6中之 控制指令載入至記憶體管理電路202的隨機存取記憶體 中。之後,微處理器單元會運轉此些控制指令以執行資料 的寫入、讀取與抹除等運作《此外,在本發明另—範例實 施例中,記憶體管理電路202的控制指令亦可以一硬體型 式來實作。 24 201234177 PSPD-2010-0036 36499twf.doc/n 主機介面204是耦接至記憶體管理電路2〇2並且用以 接收與識別主機系統1000所傳送的指令與資料。也就是 說’主機系統1000所傳送的指令與資料會透過主機介面 204來傳送至記憶體管理電路2〇2。在本範例實施例中,主 機介面204是對應連接器102為SD介面。。然而,必須 瞭解的是本發明不限於此,主機介面2〇4亦可以是USB介
面、PATA 介面、IEEE 1394 介面、PCI Express 介面、SATA φ 介面、MS介面、MMC介面、CF介面、IDE介面或其他 適合的資料傳輸介面。 記憶體介面206是耦接至記憶體管理電路2〇2並且用 以存取可複寫式非揮發性記憶體模組1〇6。也就是說,欲 寫入至可複寫式非揮發性記憶體模組1〇6的資料會經由記 憶體介面206轉換為可複寫式非揮發性記憶體模組1〇6所 能接受的格式。 在本發明一範例實施例中,記憶體控制器1〇4還包括 緩衝記憶體252。緩衝記憶體252是轉接至記憶體管理電 • 路202並且用以暫存來自於主機系統1000的資料與指令或 來自於可複寫式非揮發性記憶體模組106的資料了 ^ 在本發明一範例實施例中,記憶體控制器104還包括 電源管理電路254。電源管理電路254是輕接至記憶體管 理電路202並且用以控制記憶體儲存裳置1〇〇的電源。 在本發明一範例實施例中,記憶體控制器104還包括 錯誤檢查與校正電路256。錯誤檢查與校正電路256是耦 接至記憶體管理電路2〇2並且用以執行錯誤檢查斑校正程
•V 25 201234177 PSPD-201〇-〇〇36 36499twf.doc/n 序以確保資料的正雜。具體來說,#記憶體管理電路2〇2 ^主機系統麵中接收到寫入指令時,錯誤檢查與校正電 2%會為對應此寫入指令的f料產生對應的錯誤檢查與 (Error Checking and Correcting Code, ECC Code) » ϋ 且記憶體管理電路2〇2會將對應此寫入指令的資料血對應 的錯,查與校正瑪寫人至可複寫式非揮發性記憶體模= 。之後,當記憶體管理電路202從可複寫式非揮發 性記憶體模組觸中讀取資料時會同時讀取此資料對應的
錯誤,查與权正碼’並且錯誤檢查與校正電路Μ6會依據 =錯决k查與校正碼對所讀取的資料執行錯誤檢查與校正 程序。 —在本範例實施例中,記憶體管理電路2〇2包括第一執 仃緒模組282、第二執行緒模組284與資源分配模組施。 第一執行緒模組282與第二執行緒模組284是透過記 隐體介面206與資料匯流排! 〇6a來存取可複寫式非揮發性 3己憶體模組1G6。例如,本範例實施例中,第—執行緒模
組282用以獨立地管理與存取第一分割區61〇,並且第二 執1 亍,模組284用以獨立地管理與存取第二分割區62(^ 也就疋說,在本範例實施例中,第一執行緒模組282僅能 存取第一分割區610而無法存取第二分割區620,並第二 執仃緒模組284僅能存取第二分割區620而無法存取第一 分割區610。 值得一提的是,在本發明範例實施例中,第一執行緒 模組282與第二執行緒模組284是共同地使用資料區5〇2 26 201234177 PSPD-2010-0036 36499twf.doc/n 與閒置區504的實體區塊來寫入欲儲存於第一分割區6川 與第二分割區620之邏輯區塊的資料。因此,第— 核組282與第二執行緒模組284是使用相同的記憶體管理 規則(例如,如圖3〜7所示)來存取可複寫式非揮發; 體模組106的實體區塊。 然而,在本發明另-範例實施例中,第一執行緒模組 282與第二執行緒模組284亦可個別使用不同的記憶體管 理規則來存取可複寫式非揮發性記憶體模組1〇6的士體區 塊、。例如,可複寫式非揮發性記憶體模組1〇6的實體區二 會被區分為獨立指派給第—執行緒模組282的實體區塊與 獨立指派給第二執行緒模組2料的實體區塊,基此,第一 執行緒模組282與第二執行緒模組284就可根據本身的管 理規則來分組實體區塊以映射邏輯區塊。 例々在本發明範例實施例中,第一執行緒模組282 相對於第二執行緒模組284,是用以處理具有較嚴格的資 料處理時限要求的資料類型的指令(在此,稱為第一指 泰 々)例如第執行緒模組282用以執行是來自於主機系 、先1000的屬於安全數位卡(Secure Digital Card)指令或 MMCCM^Media Card)卡指令的存取指令,以將欲儲存 至第一分割區610的資料寫入至實體區塊或從第一分割區 =的邏輯區塊所映射之實體區塊中讀取資料。在本範例 中’第一執行緒模組Μ2肖以執行優先等級較高的 ,式‘令的模組’亦即當多卫的主機系統1Q⑻同時在處理 多個程式時’第—執行賴組Μ2在處理的程式或指令, a 27 201234177 PSPD-2010-003 6 36499twf.doc/n 會成為目前使用中的程式,亦即成為以前景(f〇regr〇und)模 式執行之模組。 例如,在本發明範例實施例中,第二執行緒模組284 相對於第一執行緒模組282,是用以處理具有較寬鬆的資 料處理時限要求的資料類型的指令(在此,稱為^二指 々)例如,弟一執行緒模組284是用以處理屬於智慧卡 (=mart Card)指令或 USB (Universal Serial Bus)指令的存取
指令。在本範例實施例中第二執行緒模組284用以執行優 先等級較低的程式指令的模組,亦即當多工的主機系統 1000同時在處理多個程式時,第二執行緒模組2料在處理 的程式或齡’是處於非制巾的程式,亦即成為以背景 _kgr_d)模式執行之模組。其中,在另一範例實施例 中’主機系統1GGG上的作業程式,只會將例如特定裝置的 控制權交予第-執行緒模組,而第二執行緒模組對此特定 裝置的控制權則會自動被釋放。
;體來說’當主_統誦透過特定智慧卡應用牙 式傳达的指令·應用程式協定資料單) (Command-Application Pr〇t〇c〇1 以仏咖,C Ap 給記 3d’記憶體管理電路2G2會識別出此智! 订緒模組284會以背景方式來執行Μ 〜、卡扣7也就疋5兄,當第二執行緒模組284執行指令時 記憶體管理電路2G2仍會透過主機介面204接收來自^ 機系統誦的指令。例如,當第二執行緒模組284執^ 入指令以將資料寫入至映射第二分割區二 28 201234177 PSPD-2010-0036 36499twf.doc/n 實體區塊時,記憶體管理電路2〇2仍可從主機系統1〇〇〇 中接收用以存取第一分割區610的存取指令。 資源分配模組286用以指派可複寫式非揮發性記憶體 模組106的存取執行權給第一執行緒模組282與第二執行 緒模組284。具體來說,第一執行緒模組282與第二執行 緒模組284都必須透過記憶體介面2〇6與資料匯流排1〇如 來存取可複寫式非揮發性記憶體模組1〇6,因此,為了使 • 存取通道(即,記憶體介面2〇6與資料匯流排106a)能夠輪 替地傳送第二執行緒模組282與第二執行緒模組284所下 達的指令,資齡配模組286被配置以協調存取通道的使 用權。例如’資源指派單元1〇46為即時作業系統(偏 Operation System,RTOS)。然而,必須瞭解的是,本 不限於此。 值知一提的是,在本範例實施例中,當記憶體管理電 路202接收到欲存取第一分割區61〇的存取指令,第一執 模組282必髓速完成此麵齡’㈣會發生逾時 ς題。如上所述’當第二執行緒模組284以背景方式執行 f入指令時,記憶體管理電路搬仍可能從主機系統刚 =收到欲存取第-分割區⑽的存取指令。縣第一執行 二模組282等待第二執行緒模组a% $成寫入指令後再執 仃所接收到的存取指令時,記憶體儲存裝置1〇〇可能 生逾時問題。 例如’在記憶體儲存裝置1〇〇為SD記憶卡的例子中, 仃寫入指令的時間必須小於,毫秒_liseeGnd,㈣, *«·«· 29 201234177 PSPD-2010.Q036 36499twf.doc/n 而執行讀取指令的時間必須小於i5〇 執行上述資料合併程序需耗 。:、、、' 而,一般來說’ 行緒模組282等待15() ' H如,假設第一執 令時進行㈣合併料以執行寫入指 ,250ms。再者,假設第—執行緒模組2 = : ^ 亦必定超過15Gmse π成此讀取指令的時間
為避免上述逾時問題,在本發明範 二執行緒模組284欲以背f方式例中,弟 入至•舻〜 執寫指令以將資料寫 第二二"二:,貧源分配模組286會指派存取執行權給 ίΐϊΐϋί ΐ二並且在第二執行緒模組284完成預定 /實體頁面的寫入時,資源分配模組286會要求第二 284釋放存取執行權並且判斷是否將存取執i 權才曰,底給第一執行緒模組282。
具體,說,可複寫式非揮發性記憶體模組1〇6是以實 體頁面為單元來寫入資料,因此,第二執行緒模組284會 將欲寫入的資料分成多個頁面資料並且以每-頁面資料^ 分批地被傳送至可複寫式非揮發性記憶體模組1〇6中。^ 且,在第二執行緒模組284傳送預定數量之頁面資料至可 複寫式非揮發性記憶體模組1〇6之後,資源分配模組286 會立刻要求第二執行緒模組284釋放存取執行權並且確認 記憶體儲存裝置丨00是否接收到應由第一執行模組282所 30 201234177 PSPD'2〇1〇'°036 36499twf.doc/n 的存取指令。特別是’當接收到應由第-偏-f 派3的^取指令,資源分配模組286會將存取丁執^權Ϊ 景方式所執行之寫入指令。之後,在第以背 指令完成此存取指令並且釋放存取 制莫=8t配餘Μ0會再將棘執行權指派給第二執行 將、一,以使第二執打緒模組m繼續執行寫入指令 數4的1面資㈣送給可複寫式非揮發性記憶 一才06。在本範例實施例中,預定數量為1,但必項瞭 解的是,本發明不限於此,預定數量可以是小於一個^ 區塊所具有的實體頁面的數目(即,頁面數)的任意數。、 t由於第二執行緒模組284是以背景方式來處理的寫入 指令,因此,延遲第二執行緒模組284執行寫入指令的時 間將不會造成記憶體儲存裝置100的逾時。 圖9疋根據本發明第一範例實施例所繪示之資料存取 方法的流程圖’其繪示當第二執行緒模組284以背景方式 來執行寫入指令以將多筆頁面資料寫入至實體區塊(以下 稱為第一實體區塊)時存取資料的步驟。 請參照圖9,首先,在步驟S9〇l中,將存取執行權指 派給第二執行緒模組284。 之後’在步驟S903中,藉由第二執行緒模組284將 此些頁面資料之中預定數量的頁面資料經由資料匯流排 106a依序地寫入至第二實體區塊的預定數量之實體頁面 中並且在寫入此預定數量之頁面資料之後使第二執行緒模 2 31 201234177 PSPD-2010-0036 36499twf.d〇c/n 組284釋放存取執行權。 然後,在步驟上 行緒模組282所執行之存取指^斷是否接收到應由第1 it若未接收到應由第—執行緒模組282所執杆 2時:則在步驟_中, 執C存取 的頁面資料是否皆已被寫人。 巧弟—貫體區塊 2右欲寫入至第二實體區塊的頁面資料之 未被寫=的頁面資料時,執行步驟S9(H。 有還 B主,Γ奴寫入至第二實體區塊的頁面資料皆已被窝入 時,結束圖9的流程。 铍寫入 偶若接收到應由第一執行緒模組282職行之存 :上二_卜將存取執行權指派給第-‘ ΓΓ 在步驟S9n中,藉由第一執行緒模組 2,射之實體區塊(以下稱為第—實體區塊)上執行此 子取私令並且在執行此存取指令之後使第一執行緒 =2釋放存取執行權。之後,步驟S9〇7會被執行。 [第二範例實施例] 本發明第二範例實施例的記憶體儲存裝置與主機系 統本質上是相同於第一範例實施例的記憶體儲存裝置與主 機統’其中差異僅在於第二範例實施例的記憶體控制器 =貧源分配模組更會根據第二執行緒模組的執行狀況來決 定存取執行權的指派。以下將利用第一範例實例的圖式與 乡考編號來說明第二範例實施例與第一範例實施例的差異 之處。 八 32 201234177 PSPD-2010-0036 36499twf.doc/n 在第二範例實施射,當第二執行緒模组284欲以背 行寫人指令以將頁Μ料寫人至實體區塊時,資 i 撕會指派存取執行權給第二執行緒模組 特別疋,貧源分配模組286會 區塊的頁面資料之中尚未 貝枓的數目疋否小於一預設門檻值。 倘若尚未被寫入之頁面資料的數 組286會指派存取執行權給二執= 杈、、且284,並且在將此些尚未被寫入之 體區塊後再釋放存取執行權。 ,‘、·、 檻值寫^之頁面㈣的數目非小於此預設門 ί模組配模组m會指派存取執行權給第二執行 組撕完成^286會在第二執行緒模 284㈣的寫入時要求第二執行緒模組 第勃"I裙订權’並且判斷是否將存取執行權指派給 弟一執行緒模組282。。 緒模尚^ Ϊ 一執行緒模組282在等待第二執行 不會造成逾時問題時,資源分配模組 ,it接存執行權給第二執行緒模組284,直到第二 根棱印284凡成寫入指令為止。在此,預設門檻值是 ▲十二Γ -儲存裝置1G。能夠承受之最大延遲時間來估 ’第—執行緒模組284需於25〇咖内回應主機系 、、、 的寫入指令並且執行此寫入指令需耗費150ms
S 33 201234177 PSPD-2010-0036 36499twf.doc/n 時,則最大延麟間為lGGms。倘若假設第二執行緒模組 284寫入-個頁面資料需要2ms時,則此預設門植值會被 設定為50。基此’可避免頻繁地指派_放存取執行權。 圖10疋根據本發明第二範例實施例所繪示的資料存 取方法的流程圖,躲示當第二執行緒模組284以背景方 式來執行寫人指令以將多筆頁㈣料寫人至實體區塊(以 下稱為第二貫體區塊)時存取資料的步驟。
請參關10,首先,在步驟Sl〇〇1中,將存取執行權 指派給第二執行緒模組284。 之後,在步驟S1003巾,藉由第二執行緒模組284系 此些頁面資料之中的預定數量之頁面資料經由資料匯流去 l〇6a依序地寫人至第二實體區塊的預定數量之實體頁茂 士並且在寫人此頁面資料之後使第二執行緒模組284釋方 存取執行權。 、,後,在步驟81〇〇5卜判斷是否接收到應由第 行緒杈組282所執行之存取指令。
1若未接收到應由第—執行緒模組撕所執行之存写 面二:步驟_7中’判斷欲寫入至第二實體區$ 的頁面貝料疋否皆已被寫入。 倘右欲寫入至第二實體區塊 Λ抖的數目是否小於最小門檻值。 ^^ ^ f ^ 9 # ^ ^ ^ ^ Π ^ 34 201234177 PSPD-2010-0036 36499twf.doc/n 倘若還未被寫人的W面資料 時,則在步驟S1011 _ ’蔣左兩说_數目小於最J門松值 模組284。然後,在步驟Sl〇订,指派給第/二執行緒 2 84將還未被寫入的頁面f ’藉由第二執行緒模組 寫入至第二實體區塊並且在料匯流排腕依序地 執行緒模組撕釋放存取執^此些頁面資料之後使第二 倘若欲寫入至第二實妒p·抬 時,結束圖的流程。塊的頁面資料皆已被寫入 組中,觸接㈣應由第一執行緒模 n扣仃子取心令時,則在步驟Sl015中,將存取 給執行緒模組282 °並且,在步驟 第- 體& 282在映射之實體區塊(以下稱為 此存取指令並且在執行此存取指令 之後使第-執行緒模組282釋放存 si〇〇7會被執行。 帛 <俊步驟 ;綜上所述,在以多個執行緒來存取可複寫式 冗憶體模_架構下,本發明範例實施例的資料存ς方 法三記憶體控制n與記憶體儲存裝置能_免等候一 執行緒因等候第二執行緒而造成的逾時問題。 雖然本發明已以實施例揭露如上,然其並非用以限— 本發明’任何所屬技術領域中具有通常知識者,在不^二 本發明之精神和範圍内,當可作些許之更動與潤飾,故本 發明之保護範圍當視後附之申請專利範圍所界定者為準。
S 35 201234177 PSPD-2010-0036 36499twf.doc/n 【圖式簡單說明】 圖1A是根據本發明第一範例實施例繪示主機系統與 記憶體儲存裝置。 圖1Β是根據本發明範例實施例所繪示的電腦、輸入/ 輸出裝置與記憶體儲存装置的示意圖。 圖1C是根據本發明另一範例實施例所繪示的主機系 統與§己憶體儲存裝置的示意圖。 圖2是繪示圖ία所示的記憶體儲存裝置的概要方塊 圖。 · 圖3與圖4是根據本發明第一範例實施例所繪示的管 理實體區塊的示意圖。 圖5〜圖7是根據本發明第一範例實施例所繪示的寫 入貧料的蛇例。 圖8是根據本發明第一範例實施例所繪示的記憶體控 制器的概要方塊圖。 圖9是根據本發明第一範例實施例所繪示之資料存取 方法的流程圖。 籲 圖10是根據本發明第二範例實施例所繪示的資料存 取方法的流程圖。 【主要元件符號說明】 1000 .主機系統 1100 :電腦 1102 :微處理器 36 201234177 PSPD-2010-0036 36499twf.doc/n 1104 :隨機存取記憶體 1106 :輸入/輸出裝置 1108 :系統匯流排 1110 :資料傳輸介面 1202 :滑鼠 1204 :鍵盤 1206 :顯示器 1208 :印表機 ® 1212 :隨身碟 1214 :記憶卡 1216 :固態硬碟 1310 :數位相機 1312 : SD 卡 1314 : MMC 卡 1316 :記憶棒 1318 : CF 卡 • mo:嵌入式儲存裝置 100 :記憶體儲存裝置 102 :連接器 104 :記憶體控制器 106 :可複寫式非揮發性記憶體模組 106a:資料匯流排 310(0)〜310(R):實體區塊 502 .糸統區 μ. 37 201234177 PSPD-2010-003 6 36499twf.doc/n 504 :資料區 506 :閒置區 508 :取代區 510(0)〜510(H):邏輯區塊 610 :第一分割區 620 :第二分割區 710(0)〜710(M):邏輯存取位址 202 :記憶體管理電路 204 :主機介面 206 :記憶體介面 252 :缓衝記憶體 254 :電源管理電路 256 :錯誤檢查與校正電路 282 :第一執行緒模組 284 :第二執行緒模組 286 :資源分配模組 S901、S903、S905、S907、S909、S911 :資料存取的 步驟 S10(H、S1003、S1005、S1007、S1009、S1011、S1013、 S1015、S1017 :資料存取的步驟 38

Claims (1)

  1. 201234177 PSPD-2010-0036 36499twf.doc/n 七、申請專利範圍: 可複存取方法,用於透過多個執行緒模組在〆 ^揮發性記憶體模組具有多個實體區塊,每 二依ίΓ㈣多個實體頁面,該些執行緒模組包括 =組:行-寫入指蝴多個頁面資料寫入:: 3的;第二實體區塊中’該㈣存取方法㈣: 第二=二 ==:緒r並且藉由該 緒模組在:i實體頁面中,其中該第二執行 由該資料匯二:*面貝料之中的該預定數量的頁面資料經 行權並且至該第二實體區塊之後釋放該存取執 2並且小於任—該些實體區塊所具有的頁面 祕ίίί:執行緒釋賴存取執簡之後,判斷是 =接收到應由該第-執行緒模組所執行的-存取指^!= 取指I日^斷5!^到應由該第""執行緒模組所執行的該存 以-存取執行權給該第一執行緒模組並且 之中的-第-實體區塊上執行該存取指令,其;;= 订緒桓組在執行該存取指令之後釋放該存取執行權第 S' 39 201234177 ^U-2O10-0036 36499twf.doc/n 括 2·如申請專利範圍第1項所述之資料存取方法,更包 在該第一執行緒模組釋放該存取執行權之後,指派該 存取執行權給該第二執行賴組並且藉由該第二執行绪模 頁面資料之中的另—預定數量的頁面資料經由該 ^匯流排寫人第二實舰塊⑽些實體頁面之中的 數量的實體頁面中,其中該第二執行緒模組在將 :二頁面貝料之中的該另一預定數量的頁面資料經由該 ;匯流排寫人·第二實體區塊之後釋放财取執行權。' 括:3·如巾請專利範圍第丨項所述之資料存取方法,更包 存取未接收到應由該第―執行緒模組所執行之該 且择’職派該存取執行權給.二執行緒模組並 數C 緒模刪些頁面資料之中的另-預定 的料經由該資料匯:ί”人至該第二實體區塊 該第-I *之中的另—預疋數I的實體頁面中,其中 量C莫組在將該些頁面資料之中的該另-預定數 資料匯流排寫入至該第二實體區塊之 4·如申請專利範圍第i項所述之資料存取方法更包 配置多個邏輯區塊以映射至少 區 將兮此少丨刀的該些實體區塊; :將。亥些邏輯區塊劃分為—第—分割區與—第二分害, 201234177 Fi>PD-2〇10-0036 36499twf.doc/n 藉由該第一執行緒模組獨立地存取映射該第、宝 區之該些邏輯區塊的該些實體區塊;以及 刀^ 藉由該第二執行緒模組獨立地存取映射該第-八室, 區之該些邏輯區塊的該些實體區.塊, 刀。J 其中該第-實體區塊映射該第-分割區之該 區塊的其中之-’並且該第二實體區塊映射該第二二 之該些邏輯區塊的其中之一。 刀口 .5.如申請專利範圍第丨項所述之資料存取方法,更包 括· 藉由該第一執行緒模組處理一第一指令;以及 藉由5亥第一執行緒模組處理一第二指令, -指===該第二指令皆需被處理時,該第 其中该存取指令屬於該第一指令。 ㈣® 存取方法’用於透過多個執行緒模組在一 =i 記憶體模組上存取資料,該可複寫式非 憶體模組具有多個實體區塊,每—該些實體區塊 二抽2 ?列的多個實體頁面,該些執行緒模組包括一第 與—第二執行緒模組,並城第二執行緒模 ’且士订f入指令以將多個頁面資料寫入至該些實體區塊 之的f一實體區塊中’該資料存取方法包括: 判斷该些頁面資料之中尚未被寫人的頁面資料的數 目疋1小於一預設門檻值; 富岁】斷°亥二頁面資料之中尚未被寫入的頁面資料的 41 201234177 ^SFL»-^u 10-0036 36499twf.doc/n 數目小於該預設門檻值時, 執行緒模組並且藉由該第曰派該存取執行權給該第二 中尚未被寫入的頁面資料:3=::頁面資料之 實體區塊中; 茨貝科匯流排寫入至該第二 當判斷該些頁面資料之中 數目非小於該預設門襤值時° 入的頁面資料的 一執行緒模組所執行之_存取^^疋否接收到應由該第 取指雜行之該存 中的-第-實體區塊上執行該===之 緒模,在執行該存取指令之後釋放該存取執:權,亍 括:7.如申請專利範圍第6項所述之資料存取方法,更包 第二^該 緒模組在將該預定數量的頁面資料經由該資料^二^ 至該第二實體區塊之後釋放該存取執行權, ’’’’ 其中域判_些頁面資料之+尚未 資料的數目是否小於該預設門魏的步驟面 緒模組釋放該存取執行權之後被執行。抑弟一執仃 8·如申請專利範圍帛7項戶斤述之資料存取方法,更包 201234177 PSPD-2010-0036 36499twf.doc/n 括 在該第一執行緒模級釋 存取執行縣該第二存取執賴之後’指派該 組將該些頁面資料之巾的另由該第二執行緒模 資料匯流排寫入頁面資料經由該 ,一狀數量的實體頁面中,其中該第二3d :該些頁面資料之中的該預定數量的另一頁面資 】料匯流排寫入至該第二實體區塊之後釋放該存二 括:9.如申請專利第7賴述之㈣存取方法,更包 當判斷未接收到應由該第—執行緒模組所執該 存取指令時,指派該存取執 _ ^ ,由轉—執行緒模組將該些頁面資料之中的另 置的頁面㈣經由該龍隨排g 的兮此杳躺百=丄 土乂币—只體區塊中 μ二實體頁面之中的另一預定數量的實體頁面中盆 j二執行緒池在將該些頁面資料之中_預定數量的 另一頁面讀經由該:紐匯流排寫人至該帛 後釋放該存取執行權。 3體£塊之 10.如申料職圍第7 述之㈣存取方法 包括: 配置多個邏輯區塊以映射至少部分的該 區將該些邏輯區塊劃分為一第一分割區與—第:分割 #·ν . 43 201234177 PSFD-2010-0036 36499twf.doc/n 藉由該第一執行緒模組獨 區之該些邏輯區塊的該此 地存取映射該第—分 藉由該第二執行緒模二及 區之該些邏輯區塊的該些實體區塊存取映射該第二分割 其中該第-實體區塊映射該’ 區塊的其中之一,並且該第二每^刀割區之該些邏輯 之該些邏輯區塊的其中之一。貝髖區塊映射該第二分割區 11.如申請專利範圍第 包括: 6項所述之資料存取方法,更
    被執行時,該第-執行緒模;^是以緒模組皆需 該第二執行賴組是以-背景模式^域行’並且 12. -種記憶體控㈣,用於控制—可複 其中該可複寫式非揮發性記憶體模組具有 :會硖苜並且每—該些實體區塊具有依序排列的多 個實體頁面,§亥記憶體控制器包括:
    體模面心_至該爾式非揮發性記憶 了記憶體管理電路’轉接至該記憶體介面,其中該記 憶體官理電路用以執行—寫人指令以將多個頁面資料寫入 至該些實體區塊之中的一第二實體區塊中, 其中該記憶體管理電路包括一第一執行緒模組、一第 二執行緒模組以及耦接至該第一執行緒模組與該第二執行 緒模組的一資源分配模組, 44 201234177 PSPD-2010-0036 36499twf.doc/n 其中該資料指派電路用以指派—存取執行權給 二執打緒模組並且該第二執行緒模組將該些頁面資料之 的-預定數量的頁面資料經由一資料匯流排寫入 實體區塊中的該些實體頁面之中的一預定數量的實體 中,其中該第二執行緒模組在將該預定數量面 ㈣資料匯流排寫入至該第二實體區塊之後釋; g權並且_定數量小於任—該些實體區塊所具有的頁面 在該第二執行緒模組釋放該存取執 ===接收到應-第-執行緒二= 取指= 執行之該存 鈾耔祕抬知杜 模、、且晶派該存取執行權給該第一 些實趙區塊之中Ϊί ^執ί緒模組經由該㈣匯流排在該 中二執其 行權。 做4存取指令之後概該存取執 二圍第/2項所述之記憶體控制器, 嘗馮二 Μ 執行緒模組釋放該存取執行權之後, 貧源分配模組指派該存取執行權給 ^仃^後違 :第Ϊ執行緒模組將該些頁面資料‘中的另:預定 頁面資料經由該資料in Μ力預疋數里的 實體頁面之中的另一預二數:=該第二實體區塊的該些 執行緒模組在將該體頁面中,其中該第二 -貝面貝枓之中的該另一預定數量的頁 5 45 201234177 PSPD-2010-0036 36499twf.doc/n 面資料經由該資料匯、户M亩 該存取執行權。L排寫入至該第二實體區塊之後釋敌 立中圍第12項所述之記憶體控制器, 之該存取指令時,則哕資、爲八弟執订>、者杈組所執行 里、頁面貝料經由該資料匯流排寫入至 體頁面中’其,該第二執行緒模 菌一實體4經由該資料匯流排寫入至該 第-貫體£塊之後釋放該存取執行權。 1主4 15. 如申請專利範圍第12項 其中該記憶體管理電路配置多^二、1益’ 少部分的該4b實體區媸#日Μ 、輯區塊以映射至 分割區與獻將轉邏魅關分為-第- 區之該些邏輯區塊的H實H地存取映射該第—分割 區之存取映射該第二分割 其中該第一實體區塊映射該第— 區塊的其中之-,並且該第二實體第區塊;^區之該些邏輯 之該些邏輯區塊的其中之一。紅塊映射該第二分割區 16. 如申請專利範圍第12項所述 中當該第-執行緒模組及該第二執 1 ’盗’其 吼仃緒榼組皆需被執行 46 201234177 PSPD-2010-0036 36499twf.doc/n ,,該第-歸緒驗是以―前景㈣ 執行緒模組是以一背景模式執行。 並^弟一 Π· 一種記憶體控制器,用於控制 性記憶體模組,其中該可複寫式非脉式非揮發 多個杏邦# 非揮發性記憶體模組具有 夕個貝體&塊’並且母-該些實體區塊具有依 個實體頁面,該記憶體控制器包括: 、夕 一記憶體介面,用_接至料 體模組;以及 、开评A i生U己憶 -記憶體管㈣路,_至該記髓介面, 憶體管^路用以執行-寫人指令以將多個頁面資^寫= 至《亥些貝體區塊之中的一第二實體區塊中, 其中該記憶體管理電路包括—第—執行緒模組、 -^緒模组以及耦接至該第_執行緒模組與該第 緒模組的一資源分配模组, 丁 其中該資源分配模組判斷該些頁面資料之 寫入的頁面資料的數目是否小於一預設門檻值,°破 其中當判斷該些頁面資料之中尚未^入的頁面次 料的數目小於該賴門M值時,_魏分轉 貝 權給該第二t行緒模組並且該第二執行緒 Μ二頁面賁料之中尚未被寫入的頁面 排寫入至該第二實體區塊中, 貝枓匯流 其中當判斷該些頁面資料之中尚未被寫入的頁面資 ,的數目翻、於該預設門檻值時,麟#齡配模組判斷 疋否接收到應由該第一執行緒模組所執行之一存取指令, S 47 201234177 PSPD-2010-0036 36499twf.doc/n 其中當判斷接收到應由該第一執行緒模組所執行之 該存取指令時,該資源分配模組指派該存取執行權給該第 一執行緒模組並且該第一執行緒模組經由該資料匯流排在 °亥些貝體區塊之中的一第一實體區塊上執行該存取指令, 其中該第一執行緒模組在執行該存取指令之後釋放該 執行權。 _ 18.如申請專利範圍第17項所述之記憶體控制器,其 中該資源分配模組指派一存取執行權給該第二執行緒模組 並且該第二執行緒模組將該些頁面資料之中的一預定數量 的頁面資料經由一資料匯流排寫入至該第二實體區塊中二 該些實體頁面之中的-預定數量的實體頁面中,其中該第 一執行緒模組在將該預定數量的頁面資料經由該資料匯产 排寫入至該第二實體區塊之後釋放該存取執行權, 叫 其中該資齡模組在該第二執行賴組釋放該 =行權之,’判斷該些頁面資料之中尚未被寫入的頁面 貝料的數目是否小於該預設門檻值。 i9m專利範圍第18項所述之記憶體控制器,发 執行緒模組釋放該存取執行權之後,該資齡 =模j派該存取執行權給該第二執行賴組並且該第二 執仃緒模組將該些頁面資料之中的另一預处 頁面入至該第二實體區塊中的該些實體 量的實體頁面中,其中該第二執行 料之中的該另-預定數量的頁面資 U心流排寫人至該第二實體區塊之後釋放 48 201234177 PSPD-2010-0036 36499twf.doc/n 取執行權。 20,如申請專利範圍第18項 其中當判斷未接❹m由該第制器, 之該存取齡時,該㈣麵·組所執行 苐-執行緒模組並且該第二執 =仃核給該 ,中’其中該第二執行緒模組在 ,定數量的另一頁面資料經 匯中 第二實體區塊之後釋放該存取執行權。—寫入至該 2Λ如/料魏㈣18項所狀記憶體控制器, ^中該記憶體管理電路配置多個邏輯區塊以^ >、口 p刀的該些實體區塊並且將該些邏輯 分割區與一第二分割區, -】刀為一弟一 其中該第一執行緒模組獨立地存取映射該第—八 區之該些邏輯區塊的該些實體區塊, 刀。, 其中該第二執行緒模組獨立地存取映射該第二分 區之該些邏輯區塊的該些實體區塊, 刀。 。其中該第一實體區塊映射該第一分割區之該些邏輯 區塊的其中之一,並且該第二實體區塊映射該第二分割區 之δ亥些邏輯區塊的其令之一。 > ^2.如申請專利範圍第17項所述之記憶體控制器,其 中該第一執行緒模組用以處理一第〆指令,並且該第°二^ 行緒模組用以處理一第二指令, 49 201234177 PSPD-2010-0036 36499twf.doc/n •i二U曰7及5亥第二指令皆需被處理時’該第 一指令優先於該第二指令, 其中該存取指令屬於該第一指令。 23. —種記憶體儲存裝置,包^ : 换揮發性記憶體模組,具有多個實體區 /、母“二只體區塊具有依序排列的多個實體頁 W,以及 -記憶麵制n r記憶體模組,該記憶體控制器=二;== 及複Ϊ式非揮發性記憶體模組的-記憶體介面以 及麵接至該6己憶體介面的一記憶體管理電路, 其中該記憶體管理電路用以執行一寫入指令 :頁面貧枓寫入至該些實體區塊之中的一第二實體區塊 其中該記憶體管理電路包括—第—執行緒模組、 -執仃緒模組以及_至該第—執行緒 緒模組的一資源分配模組, 哀弟一執仃 其中θ貝料指派電路用以指派—存取執行權給 二執行緒模組並且該第二執行緒模組將該些頁面資= 的-預定數量的頁面資料經由—資料匯流排寫— 實體區塊中的該些實體頁面之中的—預定數量的^二 令’其t該第二執行緒模組在將該預定數量的二次面 由該資料匯流排寫入至該第二實體區塊之後釋=料經 行權並且該預定數量小於任一該些實體區塊所息=子取執 >、有的頁面 50 201234177 PSPD-201〇-〇〇36 36499twf.doc/n 數; 在該第二執行緒模組釋放該 分配模組判斷是否接收到應由該 仃權之後,該資源 一存取指令;以及 一執行緒模組所執行之 當判斷接收到應由該第一勃 取指令時,則該資源分配模組指H模組所執行之該存 執行緒模組並且該第-執行緒行權給該第一 些實體區塊之中的—第―實體區塊3該=匯流排在該 :r執行緒一存取= :二Π=23項所述之記憶體儲存裝置, 該第二上執行緒模組並且 實體頁面之中的二實體區塊的該些 ^模組在將該些頁面資料之十的該另一職量A 面Μ料經由該資斜匯治妯诠、 月疋敎里的頁 該存取執行權。㈨‘,,、至該第二實醜塊之後釋放 盆中Hi專利乾圍第23項所述之記憶體儲存裝置, 之該未接收到應由該第-執行緒模組所執行 兮^ —執二日,’職㈣分賴組指派該躲執行權給 第:執行緒模組將該些頁面資料 里的頁面資料經由該資料匯流排寫入至 S 51 201234177 ΐ"^υ-2υ10-0036 36499twf.doc/n 該第二實體區塊的該些實體頁面之中的另一預定數量的實 體頁面中,其中該第二執行緒模組在將該些頁面資料之中 的該另一預定數量的頁面資料經由該資料匯流排寫入至該 第二實體區塊之後釋放該存取執行權。 26. 如申請專利範圍第23項所述之記憶體儲存裝置, 其中該記憶體管理電路配置多個邏輯區塊以映射至 少部分的該些實體區塊並且將該些邏輯區塊劃分為一第一 分割區與一第二分割區, 其中該第一執行緒模組獨立地存取映射該第一分割 區之該些缝輯區塊的該些實體區塊’ 其中該第二執行緒模組獨立地存取映射該第二分割 區之該些缝輯區塊的該些貫體區塊^ 其中該第一實體區塊映射該第一分割區之該些邏輯 區塊的其中之一,並且該第二實體區塊映射該第二分割區 之該些邏輯區塊的其中之一。 27. 如申請專利範圍第23項所述之記憶體儲存裝 置,其中當該第一執行緒模組及該第二執行緒模組皆需被 執行時,該第一執行緒模組是以一前景模式執行,並且該 第二執行緒模組是以一背景模式執行。 28. —種記憶體儲存裝置,包括: 一可複寫式非揮發性記憶體模組,具有多個實體區 塊,其中每一該些實體區塊具有依序排列的多個實體頁 面;以及 一記憶體控制器,耦接至該連接器與該可複寫式非揮 52 201234177 PSPD-2010-0036 36499twf.doc/n = 該記憶體控制器包括-主機介面、用以 式非揮發性記憶體模組的一記憶體介面以 耦接至.亥5己憶體介面的一記憶體管理電路, 個頁憶體管理電路用以執行—寫人指令以將多 中 4寫人至該些實體區塊之中的—第二實體區塊 绪模組的-資源該4 一執行緒模组與該第二執行 其中該資源分配模組判斷 寫入 該些頁面資料上:===_組將 排寫入至該第二實體區塊中,頁面貝科經由該資料匯流 料的數目之中尚未被寫入的頁面資 是否r峨由該第一執:绪模组 其中當判斷接收到應㈣m—^仃之-存取指令, 該存取指令時,該_分轉㈣執^緒模組所執行之 -執行緒模組並且該第—執:5亥存取執行權給該第 該些實體區塊之中的一第=、、’且經由該資料匯流排在 其執行緒模組在執行該二取 53 201234177 PSPD-2010-0036 36499twf.doc/n 執行權》 29.如申請專利範圍第28項所述之記憶 置,其中该貪源分配模組指派一存取執行權給二二: 緒模組並且該第二執行緒模組將該些頁面資料之二一= 定數量的頁面資料經由―資料匯流排寫, =該些實體頁面之中的-預定數量的實體3體; ^亥第二執行緒模組在將該預定數量的頁面資料 ς 料匯流排寫人至該第二實舰塊之後釋朗存取執^貝 :中該資源分轉組⑽第二執行緒模 ,霍之後’判斷該些頁面資料之中尚未被寫:::子 貧料的數目是否小於該預設門檻值。 ..... 置乂0中專:範圍第29項所述之記憶體儲存裝 資源ϋ Ϊ 放該存取執行權之後,該 驾^ 該存取執行權給該第二執行緒模組並且 頁組將該些頁面資料之中的另一預定數量的 另一預定數量的實體頁面中,其中該第 講模組在將該些頁面資料之中的該 2=:;資料匯流排寫入至該第二實體區= 申請專利範圍第29項所述之記憶體儲存裝置, 之該;到八應由該第:執行緒模組所執行 第二勃〜寸Μ貝源分配模組指派該存取執行權給該 一執仃緒触並且料二執行雜組將該些頁面資料之 54 201234177 PSPD-2010-0036 36499twf.doc/n 中的另一 預疋數置的貝面—貝料經由該資料陧说徘寫入 第二實體區塊中的該些實體頁面之中的另—預定數量 f 體頁面中,其中該第二執行緒模組在將該些頁面資^、貫 的該另一預定數量的頁面資料經由該資料匯流排寫’^ 第二實體區塊之後釋放該存取執行權。 ‘”、入至#亥 32.如申請專利範圍f 29項所述之記憶體儲 其中該記憶體管理電路配置多個邏輯區塊以映^ , 少部分的該些實體區塊並且將該些邏輯區塊 、射至 分割區與一第二分割區, -刀”、、一第一 其中該第一執行緒模組獨立地存取映射該八 區之該些邏輯區塊的該些實體區塊, X 分割 其中該第二執行緒模組獨立地存取映 區之該些邏輯區塊的該些實體區塊, W —为割 其中該第一實體區塊映射該第一分 區塊的其中之―,並且該第二實體區塊映射 ^邏輯 之該些邏輯區塊的其中之一。 第一分割區 t如巾請專利範圍第28項所述之記 置/、中該第一執行緒模組用以處理一第一二—啫存羞 第二執行緒模組用以處理一第二指令, ㈢7,並且該 其中當該第一指令及該第-j t人t匕^ 一指令優先於該第二』^ ”需被處理時,該第 其中該存取指令屬於該第一指令。 S 55
TW100104919A 2011-02-15 2011-02-15 資料存取方法及使用此方法的記憶體控制器與儲存裝置 TWI526828B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW100104919A TWI526828B (zh) 2011-02-15 2011-02-15 資料存取方法及使用此方法的記憶體控制器與儲存裝置
US13/095,909 US8914587B2 (en) 2011-02-15 2011-04-28 Multi-threaded memory operation using block write interruption after a number or threshold of pages have been written in order to service another request

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW100104919A TWI526828B (zh) 2011-02-15 2011-02-15 資料存取方法及使用此方法的記憶體控制器與儲存裝置

Publications (2)

Publication Number Publication Date
TW201234177A true TW201234177A (en) 2012-08-16
TWI526828B TWI526828B (zh) 2016-03-21

Family

ID=46637787

Family Applications (1)

Application Number Title Priority Date Filing Date
TW100104919A TWI526828B (zh) 2011-02-15 2011-02-15 資料存取方法及使用此方法的記憶體控制器與儲存裝置

Country Status (2)

Country Link
US (1) US8914587B2 (zh)
TW (1) TWI526828B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI633437B (zh) * 2017-05-26 2018-08-21 慧榮科技股份有限公司 偵測使用中邏輯頁面之資料儲存裝置與資料儲存方法

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI471862B (zh) 2011-08-19 2015-02-01 Silicon Motion Inc 快閃記憶體控制器
US20130145095A1 (en) * 2011-12-06 2013-06-06 Lsi Corporation Melthod and system for integrating the functions of a cache system with a storage tiering system
US20150058529A1 (en) * 2013-08-21 2015-02-26 Sandisk Technologies Inc. Systems and methods of processing access requests at a data storage device
US9639478B2 (en) 2014-01-17 2017-05-02 International Business Machines Corporation Controlling direct memory access page mappings
US9203619B2 (en) 2014-01-21 2015-12-01 Vormetric, Inc. Online data transformation
KR20190026246A (ko) * 2017-09-04 2019-03-13 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
CN114726765B (zh) * 2022-02-28 2023-04-07 福建星云检测技术有限公司 一种锂电池测试系统控制方法及装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7062615B2 (en) 2003-08-29 2006-06-13 Emulex Design & Manufacturing Corporation Multi-channel memory access arbitration method and system
US7380073B2 (en) * 2003-11-26 2008-05-27 Sas Institute Inc. Computer-implemented system and method for lock handling
JP4737438B2 (ja) * 2004-09-16 2011-08-03 日本電気株式会社 複数の処理ユニットでリソースを共有する情報処理装置
US8904400B2 (en) * 2007-09-11 2014-12-02 2236008 Ontario Inc. Processing system having a partitioning component for resource partitioning
US8312230B2 (en) * 2008-06-06 2012-11-13 International Business Machines Corporation Dynamic control of partition memory affinity in a shared memory partition data processing system
US8209439B2 (en) * 2008-08-25 2012-06-26 Sandisk Il Ltd. Managing multiple concurrent operations with various priority levels in a local storage device
JP5270268B2 (ja) * 2008-09-05 2013-08-21 インターナショナル・ビジネス・マシーンズ・コーポレーション 共有データへの排他的アクセスを許すためのコンピュータ・システム、並びにその方法及びコンピュータ読み取り可能な記録媒体
US7941616B2 (en) * 2008-10-21 2011-05-10 Microsoft Corporation System to reduce interference in concurrent programs
TWI417884B (zh) 2009-04-23 2013-12-01 Phison Electronics Corp 用於快閃記憶體的資料存取方法、儲存系統與控制器
US8375175B2 (en) * 2009-12-09 2013-02-12 Oracle America, Inc. Fast and efficient reacquisition of locks for transactional memory systems
US20110252185A1 (en) * 2010-04-08 2011-10-13 Silicon Storage Technology, Inc. Method Of Operating A NAND Memory Controller To Minimize Read Latency Time

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI633437B (zh) * 2017-05-26 2018-08-21 慧榮科技股份有限公司 偵測使用中邏輯頁面之資料儲存裝置與資料儲存方法
US10783069B2 (en) 2017-05-26 2020-09-22 Silicon Motion, Inc. Data storage device and data storage method for detecting currently-used logical pages using leaping linear search with decreasing step

Also Published As

Publication number Publication date
US8914587B2 (en) 2014-12-16
TWI526828B (zh) 2016-03-21
US20120210045A1 (en) 2012-08-16

Similar Documents

Publication Publication Date Title
TW201234177A (en) Data access method, and memory controller and memory storage apparatus using the same
Lee et al. Asynchronous {I/O} stack: A low-latency kernel {I/O} stack for {Ultra-Low} latency {SSDs}
CN110674059B (zh) 基于服务质量进行仲裁以优化企业固态驱动器
US10817415B2 (en) Data storage device and method including device or controller-based space allocation and host-based mapping table searching
US9021178B2 (en) High performance path for command processing
JP6985011B2 (ja) アクセス保護スキームを確保するための装置及び方法
TW200834593A (en) Command scheduling method and apparatus of virtual file system embodied in nonvolatile data storage device
US10068109B2 (en) Secure subsystem
TWI477964B (zh) 在記憶體中頁面存取之控制系統及方法
TWI302707B (en) Mass storage device having both xip function and storage function
US20170322897A1 (en) Systems and methods for processing a submission queue
TW201250691A (en) Efficient buffering for a system having non-volatile memory
KR20160096279A (ko) 가상화 기능을 지원하는 스토리지 장치 및 사용자 장치
TWI678618B (zh) 快閃記憶裝置的命名空間操作方法及裝置
KR20170011350A (ko) 가상 머신을 지원하는 스토리지 장치, 그것을 포함하는 스토리지 시스템 및 그것의 동작 방법
US20190220404A1 (en) Storage device storing data in order based on barrier command
TW201111985A (en) Data read method, and flash memory controller and storage system using the same
TW200839511A (en) Cooperative memory management and method thereof
CN103207846A (zh) 内存控制器及控制方法
TW201135462A (en) Method of dynamically switching partitions, memory card controller and memory card storage system
US20150154132A1 (en) System and method of arbitration associated with a multi-threaded system
TW200933367A (en) Method, system and controller for transmitting and dispatching data stream
CN109213423B (zh) 基于地址屏障无锁处理并发io命令
US20120102012A1 (en) Cross-region access method for embedded file system
KR20190086341A (ko) 배리어 커맨드에 기초하여 데이터를 순서대로 저장하는 스토리지 장치