TW201401048A - 控制裝置、記憶裝置及資料寫入方法 - Google Patents
控制裝置、記憶裝置及資料寫入方法 Download PDFInfo
- Publication number
- TW201401048A TW201401048A TW102108719A TW102108719A TW201401048A TW 201401048 A TW201401048 A TW 201401048A TW 102108719 A TW102108719 A TW 102108719A TW 102108719 A TW102108719 A TW 102108719A TW 201401048 A TW201401048 A TW 201401048A
- Authority
- TW
- Taiwan
- Prior art keywords
- page
- physical
- data
- logical
- writing
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5642—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7202—Allocation control and policies
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7207—Details relating to flash memory management management of metadata or control data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Read Only Memory (AREA)
- Memory System (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本發明之目的係針對下層頁面與上層頁面有寫入速度差之非揮發性記憶體,使主機資料之寫入速度高速化。非揮發性記憶體係於1個記憶單元中進行2位元以上之多值記憶,作為設定實體位址之實體頁面至少具有用以多值記憶之下層頁面與上層頁面,按實體位址順序使用各頁面並進行資料寫入。根據來自主機機器之對該非揮發性記憶體之資料寫入請求,進行被供給之主機資料之寫入。此情形時,以從下層頁面開始進行對應於下次資料寫入請求之資料寫入之方式,執行資料寫入直至下層頁面之上一個頁面為止。
Description
本發明係關於控制裝置、記憶裝置及資料寫入方法。尤其係關於對在1個單元進行2位元以上之多值記憶之非揮發性記憶體之寫入控制。
〔專利文獻1〕日本特開2009-70098號公報
〔專利文獻2〕日本特開2007-334852號公報
〔專利文獻3〕日本特開2007-193838號公報
〔專利文獻4〕日本特開2007-58840號公報
〔專利文獻5〕日本特開2010-198407號公報
〔專利文獻6〕日本特開2007-94921號公報
例如使用NAND型快閃記憶體等非揮發性記憶體之記憶裝置正普及。非揮發性記憶體例如利用在各種電子機器、資訊處理裝置等所使用之記憶卡、SSD(Solid State Drive:固態硬碟)、eMMC(Embedded MultiMedia Card:嵌入式多媒體卡)等中。
上述專利文獻1~4中揭示有使用快閃記憶體之記憶裝置。
又例如NAND型快閃記憶體等中,除以1個閾值判斷1個單元之浮置閘極中電子之蓄積量(電荷量)而記憶1位元之資訊之SLC(Single Level Cell:單層單元)外,已知有以4個以上多值判斷電荷量之差異
而記憶2位元以上之MLC(Multi Level Cell:多層單元)。
另,作為狹義之MLC特別係指2位元記憶者,亦有將3位元記憶者稱作TLC(Triple Level Cell:三層單元)之情形。
上述專利文獻5、6中揭示有於1個單元記憶複數位元資料之多值快閃記憶體。
該等NAND型快閃記憶體等中,使用實體位址(PBA:Physical Block Address:實體區塊位址)作為實體記憶區域之位址。藉此設定有實體區塊、實體頁面、實體磁區。以複數個實體磁區構成實體頁面,以複數個實體頁面構成實體區塊。
刪除(清除)可以實體區塊為單位進行,寫入(程式)及讀出(讀取)可以實體頁面為單位進行。
自主機側或記憶體控制部側之位址指定係使用邏輯位址(LBA:Logical Block Address)。將根據邏輯位址之邏輯區塊、邏輯頁面與上述實體位址建立關聯。藉此,請求存取時邏輯位址被轉換成實體位址,執行向實際快閃記憶體之存取。
多值NAND型快閃記憶體之情形中,設定上層頁面、下層頁面作為被賦予實體位址之實體頁面。
例如2位元記憶之MLC之情形中,設定作為下層頁面之下頁面(Lower Page)與作為上層頁面之上頁面(Upper Page)。
3位元記憶之TLC之情形中,設定作為下層頁面之下頁面、作為中層頁面之中頁面(Middle Page)、及作為上層頁面之上頁面。
將多值NAND型快閃記憶體作為記憶裝置使用之記憶體裝置中,藉由使用寫入速度為高速之下頁面,可實現存取速度之高速化。
但僅使用下頁面之情形中,作為快閃記憶體,導致MLC之情形
中僅可使用一半,TLC之情形中僅可使用1/3區域。
再者,近年之多值NAND型快閃記憶體具有不允許僅使用下頁面,必須對可能對中頁面及上頁面之低速且共用實體單元之實體頁面之資料帶來損壞之實體頁面亦進行寫入之制約。
又,作為近年之主機裝置之傾向,如實體頁面尺寸以下之小尺寸之存取增加。此時,若對低速之中頁面或上頁面進行寫入,則可看到自主機機器之寫入極端變慢,產生主機裝置之性能下降。
本發明係鑑於上述,其目的係可對進行多值記憶之非揮發性記憶體高速地進行主機資料寫入,提高系統性能。
本發明之控制裝置具備控制部,其根據來自主機機器之資料寫入請求,對於非揮發性記憶體進行被供給之主機資料之寫入控制,且以從下層頁面開始進行對應於下次資料寫入請求之資料寫入之方式,執行資料寫入直至下層頁面之上一個實體頁面為止;該非揮發性記憶體係於1個記憶單元中進行2位元以上之多值記憶,作為設定實體位址之實體頁面至少具有用以多值記憶之下層頁面與上層頁面,且按實體位址順序使用各實體頁面並進行資料寫入。
本發明之記憶裝置具有該控制部與上述非揮發性記憶體。
本發明之資料寫入方法係根據來自主機機器之資料寫入請求,對非揮發性記憶體進行被供給之主機資料之寫入,且以從下層頁面開始進行對應於下次資料寫入請求之資料寫入之方式,執行資料寫入直至下層頁面之上一個實體頁面為止。
根據如此本發明之技術,產生某資料寫入請求之情形中,進行主機資料之寫入,但視需要亦進行非主機資料之寫入等,成為對應於下次寫入請求之資料寫入從下層頁面開始之狀態。因此,例如小尺寸之主機資料等僅對下層頁面寫入即可結束之情形變多。
根據本發明,根據資料寫入請求而將主機資料寫入於非揮發性記憶體之情形中,從下層頁面開始寫入。藉由使用寫入速度較快之下層頁面,從而實現主機資料之高速寫入。尤其來自主機機器之小尺寸之資料寫入請求較多之情形中為有效。
1‧‧‧記憶卡
2‧‧‧主機機器
11‧‧‧控制部
12‧‧‧內部RAM
13‧‧‧裝置介面
14‧‧‧緩衝器RAM
15‧‧‧非揮發性記憶體
BL0~BLn‧‧‧位元線
MT‧‧‧記憶單元
PB0~PBn‧‧‧實體區塊
PBx‧‧‧實體區塊
PPe‧‧‧最後使用完頁面
PP‧‧‧實體頁面
PP0~PP15‧‧‧實體頁面
PP0~PPq‧‧‧實體頁面PP之位址
SL‧‧‧共用源極線
SG0‧‧‧汲極側選擇閘極線
SGL‧‧‧源極側選擇閘極線
ST10~ST1n‧‧‧選擇閘極電晶體
ST20~ST2n‧‧‧選擇閘極電晶體
WL0~WLm‧‧‧字元線
圖1係本發明之實施形態之記憶卡之方塊圖。
圖2係實施形態之非揮發性記憶體中之實體區塊與實體頁面之說明圖。
圖3係實施形態之多值NAND型快閃記憶體之說明圖。
圖4係實施形態之多值NAND型快閃記憶體之記憶動作之說明圖。
圖5A、B係實施形態之實體頁面之說明圖。
圖6係實施形態之資料寫入時之處理之流程圖。
圖7係實施形態之主機資料寫入時之動作例之說明圖。
圖8A、B係實施形態之主機資料及管理資訊寫入時之動作例之說明圖。
圖9A、B係實施形態之主機資料及管理資訊寫入時之動作例之說明圖。
圖10係本發明之實施形態之管理資訊寫入時點之說明圖。
圖11係實施形態之管理資訊讀入處理之流程圖。
圖12A、B、C係實施形態之管理資訊讀入動作之說明圖。
圖13A、B係實施形態之邏輯/實體位址轉換表格構築處理之說明圖。
圖14A、B、C係實施形態之邏輯/實體位址轉換表格之說明圖。
圖15係實施形態之邏輯/實體位址轉換表格讀入處理之流程圖。
以下對實施形態按以下順序說明。另,實施形態所示之記憶卡1成請求項所言之記憶裝置之實施形態。又,記憶卡1內之控制部11係請求項所言之控制裝置之實施形態,基於控制部11之控制所執行之資料寫入方法成請求項所言之資料寫入方法之實施形態。
<1.記憶卡構成>
<2. MLC/TLC>
<3.資料寫入控制處理>
<4.管理資訊讀入處理>
<5.對邏輯/實體位址轉換表格之應用例>
<6.變化例>
<1.記憶卡構成>
圖1係顯示實施形態之記憶卡1之構成例。
記憶卡1與主機機器2連接,作為記憶裝置使用。主機機器2例如設想個人電腦、數位相機、視訊攝像機、聲音播放機、視訊播放機、遊戲機、行動電話、PDA(Personal Digital Assistant:個人數位助理)等資訊終端等各種電子機器、資訊處理裝置。
記憶卡1具備控制部11、內部RAM(Random Access Memory:隨機存取記憶體)12、裝置介面13、緩衝器RAM及非揮發性記憶體(Non-Volatile Memory)15。
控制部11藉由CPU(Central Processing Unit:中央處理單元)形成,控制記憶卡1全體。因此控制部11依次執行置於內部RAM12之命令編碼。控制部11主要執行對應於來自主機機器2之命令之資料寫入或讀出。因此控制部11進行裝置介面13之與主機機器2之資料傳送接收動作控制、緩衝器RAM14之寫入/讀出動作之控制、向非揮發性記憶體15之存取動作之控制。
內部RAM12例如以SRAM(Static Random Access Memory:靜態隨機存取記憶體)構成。內部RAM12作為控制部11執行之程式(韌體)之記憶或工作區域使用。
裝置介面13進行與主機機器2間之通訊。
緩衝器RAM14用於與主機機器2間之傳送資料(寫入資料或讀出資料)之緩衝。
非揮發性記憶體15例如係多值NAND型快閃記憶體。
即本實施形態之情形中,該非揮發性記憶體15於1個記憶單元進行2位元以上之多值記憶,作為設定有實體位址之實體頁面至少具有用以多值記憶之下層頁面(下頁面)與上層頁面(上頁面)。並且,成各實體頁面按實體位址順序使用而進行資料寫入之多值NAND型快閃記憶體。
作為記憶卡1之基本動作,資料寫入時從主機機器2發送來寫入請求,且發送寫入位址(邏輯位址)、資料尺寸,進而應寫入之資料。
從主機機器2發送來之應寫入資料由裝置介面13接收,於緩衝器RAM14緩衝。然後基於控制部11之控制,資料寫入於非揮發性記憶體15。控制部11根據寫入請求、寫入位址、資料尺寸控制該等動作。
資料讀出時從主機機器2連同讀出請求發送來讀出位址(邏輯位址)、資料尺寸。控制部11基於讀出位址、資料尺寸從非揮發性記憶體15進行指示之資料之讀出,於緩衝器RAM14進行緩衝。又,控制部11對經緩衝之讀出資料進行錯誤訂正處理等。然後,讀出資料從緩衝器RAM14向裝置介面13傳送,向主機機器2發送。
如上所述,非揮發性記憶體15使用實體位址作為實體記憶區域之位址。藉此設定實體區塊(Physical Block)、實體頁面(Physical Page)、實體磁區(Physical Sector)。以複數個實體磁區構成實體頁面,又以複數個實體頁面構成實體區塊。
圖2係模式化顯示作為實體區塊PB之n+1個實體區塊PB0~PBn。此處顯示1個實體區塊PB之16個實體頁面PP(PP0~PP15)。另,不限於1個實體區塊PB以16個實體頁面PP形成,亦可進而存在實體頁面PP16以後。圖式亦可認為係實體區塊PB內之一部份。
1個實體頁面PP例如為16Kbyte等。雖未圖示,但該實體頁面PP內分成複數個實體磁區。
又,成多值NAND型快閃記憶體之本例之非揮發性記憶體15中,作為各實體頁面,分配有下頁面、上頁面。
刪除(清除)可以實體區塊為單位進行,寫入(程式)及讀出(引線)可以實體頁面單位進行。即,實體區塊成為實體刪除單位,實體頁面成為實體寫入單位。
自主機機器2側之位址指定使用邏輯位址。根據邏輯位址之邏輯區塊、邏輯頁面、邏輯磁區與上述實體位址建立關聯。即,控制部11形成將邏輯位址與實體位址建立關聯之邏輯/實體位址轉換表格,在來自主機機器2之存取請求時,參照邏輯/實體位址轉換表格將指定之邏輯位址轉換成實體位址。然後根據實體位址,執行對實際非揮發性記憶體15之存取。
本實施形態之情形中,控制部11亦進行表示邏輯位址與實體位址之對應關係之邏輯/實體位址轉換表格之生成或更新。
又,基於控制部11之管理,例如於內部RAM12上記憶控制部11生成、更新之邏輯/實體位址轉換表格。
又,本實施形態中,實體區塊PB允許將邏輯位址為非連續之資料寫入於連續之實體頁面PP中。
另,將自主機機器2之請求寫入或讀出之資料(主機機器2以邏輯位址管理之資料)稱作「主機資料」。
又,本實施形態中,控制部11根據來自主機機器2之資料寫入請
求,對作為上述多值NAND型快閃記憶體之非揮發性記憶體15進行被供給之主機資料之寫入控制,此時,以對應於下次資料寫入請求之主機資料之寫入從下頁面開始之方式,進行執行資料寫入之控制直至下頁面之上一個實體頁面為止。
因此本例之情形中,控制部11在對應於資料寫入請求之主機資料之寫入未達下頁面之上一個實體頁面就結束之情形中,執行非主機資料之寫入,直至下頁面之上一個實體頁面為止。所謂非主機資料,例如係上述邏輯/實體位址轉換表格等控制部11使用之管理資訊。
另,作為管理資訊不限於邏輯/實體位址轉換表格,例如考慮主機資料為著作權內容資料之情形之著作權資訊、或非揮發性記憶體15中表示錯誤產生之實體位址之錯誤資訊等之各種例。亦可為記憶卡1之製品資訊、序號等資訊、使用歷程資訊等。
又,所謂非主機資料不限於管理資訊,係指從主機機器2進行資料寫入請求之主機資料以外之資料。
<2. MLC/TLC>
此處,針對稱作MLC、TLC之多值NAND型快閃記憶體進行說明。
圖3係顯示作為實施形態之非揮發性記憶體15之多值NAND型快閃記憶體之內部構成。
如圖3所示,多值NAND型快閃記憶體構成可複數個電性重寫之記憶單元MT配置成矩陣狀之記憶單元陣列。
記憶單元MT串聯連接,成為以選擇閘極電晶體ST夾持兩端之構成。將該構成稱作NAND串。此處,各NAND串係m個記憶單元MT串聯連接而構成。
各NAND串之一端經由連接於汲極側選擇閘極線SG0之選擇閘極電晶體ST10~ST1n與位元線BL0~BLn連接,另一端經由連接於源極側
選擇閘極線SGL之選擇閘極電晶體ST20~ST2n與共用源極線SL連接。NAND串之n行位元線各別之記憶單元MT之控制閘極與字元線WL0~WLm連接。
將以相同字元線WL0~WLm連接之複數個記憶單元MT稱作頁面。該頁面在單層單元(SLC)之情形中,由複數個記憶單元MT集合構成1個實體頁面。
由於本發明之記憶單元MT設想為可記憶多位元資料之多層單元,因此上述頁面為相當於其位元數之頁面數。圖3中顯示可記憶2位元資料之記憶單元MT,上述複數個記憶單元MT為2個實體頁面。將其對應顯示於圖3之右側。
即,每條字元線WL0~WLm為下頁面、上頁面。
對每個下頁面、上頁面分配有作為實體頁面PP之位址(PP0~PPq)。另,此處圖示之作為實體頁面PP之位址PP0~PPq之分配僅為一例。
寫入動作、讀出動作以該頁面為單位進行。寫入以下頁面至上頁面之順序進行,無法按上頁面至下頁面之順序寫入。若上頁面之寫入失敗,則原理上有下頁面之內容損毀(消失)之情形。
根據圖4說明多值NAND型快閃記憶體之寫入動作概念。圖4係模式化顯示於1個記憶單元MT進行2位元記憶之4值資料(2位元)記憶方式下之閾值分佈者。
如圖所示,每記憶單元MT可記憶2頁面份之資料。寫入係以從下頁面至上頁面之順序進行。
記憶單元MT可保持以上頁面資料「x」與下頁面資料「y」定義之4值資料「xy」之任1個。該4值資料「xy」按記憶單元MT之閾值電壓之順序,例如分配有資料「11」、「01」、「00」、「10」。
資料「11」係記憶單元MT之閾值電壓為負之刪除狀態。另,資
料之分配規則不限於此。又,本實施形態中,舉之後可於1個記憶單元MT記憶2位元值者進行說明,但亦可為於1個記憶單元MT進行3位元以上之記憶之構成。
下頁面寫入動作中,對資料「11」(刪除狀態)之記憶單元MT選擇性藉由下位元資料「y」之寫入,寫入資料「10」。
上頁面寫入動作中,對資料「11」之記憶單元MT與資料「10」之記憶單元MT分別選擇性進行上位元資料「x」之寫入,寫入資料「01」及資料「00」。
上頁面寫入前之資料「10」之閾值分佈位於上頁面寫入後之資料「01」與資料「00」之閾值分佈之中間左右,一般言之,與上頁面寫入後之閾值分佈相比變廣。
即,上頁面寫入後成為對電荷量以3個閾值識別各值之狀態。
如此之多值NAND型快閃記憶體中,可知相對於下頁面寫入所需要之時間,上頁面寫入所需要之時間較長。由於如圖4所示之電荷量轉移處理,例如有上頁面寫入所需要之時間變成下頁面寫入所需要時間之5倍左右之情形。
圖5A係顯示MLC中之實體頁面位址之分配例。
此處顯示1個實體區塊中之實體頁面PP,但於各實體頁面PP上分配有「0」、「1」、「2」...之頁面位址。將其作為實體頁面「PP0」、「PP1」、...「PP15」表示。
各實體頁面中,「Lower」表示下頁面,「Upper」表示上頁面。該例中,實體頁面PP0~PP3、PP6、PP7、PP10、PP11、PP14、PP15係下頁面。又,實體頁面PP4、PP5、PP8、PP9、PP12、PP13係上頁面。
對該實體區塊PB以頁面位址順序使用實體頁面PP進行資料寫入。即,按實體頁面PP0、PP1...PP15之順序使用。例如如圖3所示,
成為於每條字元線WL0~WLm,下頁面、上頁面共用記憶單元之形態,例如實體頁面PP0(下頁面)與實體頁面PP4(上頁面)成以相同字元線之記憶單元MT共用之形態。然後,以該圖5之頁面位址順序使用實體頁面PP,從而下頁面與上頁面之組合中必須先於下頁面進行寫入。
圖5B係顯示TLC中之實體頁面位址之分配例。
各實體頁面中,「Lower」表示下頁面,「Middle」表示中頁面、「Upper」表示上頁面。該例中,實體頁面PP0、PP1、PP3、PP6、PP9、PP12、PP15係下頁面。又,實體頁面PP2、PP4、PP7、PP10、PP13係中頁面。又,實體頁面PP5、PP8、PP11、PP14係上頁面。
TLC中,成下頁面、中頁面、上頁面共用記憶單元之形態,藉由如圖5B般設定實體頁面位址,從而以各記憶單元觀察時,寫入動作必須以下頁面、中頁面、上頁面之順序進行。
<3.資料寫入控制處理>
本實施形態之控制部11例如在如上述圖5A、圖5B之實體區塊內,對頁面位址順序之實體頁面PP進行來自主機機器2請求之主機資料之寫入。
此時,連續持續主機資料之寫入之期間不僅包含下頁面,亦包含中頁面或上頁面進行寫入。
然後,主機資料之寫入結束之實體頁面之下個實體頁面係下頁面之情形中,在該時點結束處理。
但在主機資料之寫入結束之頁面之下個頁面非下頁面之情形中,至下個下頁面之上一個實體頁面為止進行管理資訊(例如邏輯/實體位址轉換表格)之寫入,成為如從下頁面開始下次寫入之狀態。
圖6係說明利用控制部11之資料寫入控制處理例。
控制部11作為步驟F101,根據來自主機機器2之資料寫入請求,進行進行寫入之主機資料之匯入或邏輯位址之獲取等。
具體言之,控制部11對發送來之主機資料經由裝置介面13暫時儲存於緩衝器RAM14中。又,控制部11根據經由裝置介面13發送之寫入請求之命令,掌握寫入之主機資料之邏輯位址與資料量。
步驟F102中,製作或更新應對應於此次資料寫入之邏輯/實體位址轉換表格。此處,進行將使進行此次寫入之主機資料之邏輯位址與實體位址對應之記入追加於邏輯/實體位址轉換表格之處理。
另,邏輯/實體位址轉換表格係上述管理資訊之1例,但關於邏輯/實體位址轉換表格之動作歸總後述。
接著,控制部11於步驟F103進行此次寫入請求之主機資料之寫入控制。具體言之,根據此次步驟F102中記入於邏輯/實體位址轉換表格之實體位址,將暫時儲存於緩衝器RAM14之主機資料記憶於非揮發性記憶體15中。例如對如圖5A之實體區塊PB從頁面位址較小之實體位址PP進行寫入。
進行主機資料之寫入後進行步驟F104之判斷。此處,確認進行此次之主機資料寫入之最後實體頁面之下個實體頁面PP,即根據下次之寫入請求進行寫入之實體頁面PP是否為下頁面。換言之,判斷下頁面之上一個實體頁面是否結束寫入。
若下個實體頁面PP係下頁面,則保持原狀結束對應於此次之寫入請求之處理。
另一方面,若下個實體頁面PP非下頁面,則從步驟F104向F105進展,對下個實體頁面PP進行管理資訊之寫入。
作為管理資訊,例如進行著作權資訊、錯誤表格、邏輯/實體位址轉換表格等之寫入。該等可全部亦可一部份。又,亦可為該等以外之管理資訊。
然後再次進行步驟F104之判斷,若下個實體頁面PP為下頁面則結束處理,但若下個實體頁面PP非下頁面,則再次於步驟F105進而
對下個實體頁面PP進行管理資訊之寫入。
以圖7、圖8、圖9說明根據如此處理進行之寫入動作。
圖7、圖8A、圖9A表示對某實體區塊PBx進行此次之主機資料之寫入之狀態。圖中,各實體頁面PP內之「Data」表示經寫入主機資料之狀態。
該圖7係此次之主機資料基於步驟F103之寫入控制,寫入至實體頁面PP0~PP9為止之情形。此時,下個實體頁面PP10成為下頁面。因此步驟F104中,以下個實體頁面PP為下頁面,保持原狀結束對應於此次寫入請求之處理。
圖8A係此次之主機資料基於步驟F103之寫入控制,寫入至實體頁面PP0~PP8為止之情形。此時,下個實體頁面PP9為上頁面。因此步驟F104中判斷下個實體頁面並非下頁面,步驟F105中如圖8B所示於下個實體頁面PP9上進行管理資訊MGT之寫入。於是接著步驟F104中,判斷下個實體頁面PP10為下頁面,藉此結束對應於此次寫入請求之一連串處理。
圖9A係此次之主機資料基於步驟F103之寫入控制,寫入至實體頁面PP0~PP7為止之情形。此時,下個實體頁面PP8係上頁面。因此步驟F104中判斷下個實體頁面並非下頁面。因此步驟F105中,如圖9B所示於實體頁面PP8進行管理資訊MGT之寫入。但該時點下,下個實體頁面PP9亦係上頁面。因此進而從步驟F104向F105進展,如圖9B所示亦於下個實體頁面PP9進行管理資訊MGT之寫入。
其後之步驟F104中,判斷下個實體頁面PP10為下頁面,藉此結束對應於此次寫入請求之一連串處理。
如上,本實施形態之資料寫入動作下,進行主機資料之寫入時,以對應於下次資料寫入請求之資料寫入從下頁面開始之方式,進行一些資料寫入直至下頁面之上一個實體頁面PP為止。
即,主機資料之寫入結束之時點下,若下個實體頁面為下頁面,則在該時點結束一連串寫入動作。
又,主機資料之寫入結束之時刻下,若下個實體頁面非下頁面,則進行管理資訊之寫入,直至成為下個實體頁面成下頁面之狀態為止,結束一連串寫入動作。
藉此,有來自主機機器2之寫入請求時,主機資料之寫入必然從下頁面開始。藉此實現寫入存取之高速化。
作為從主機機器2供給之主機資料,有串流資料等資料尺寸較大者,或例如4Kbyte、8Kbyte等寫入於1個實體頁面PP之資料尺寸較小者。
實體頁面PP以頁面位址順序使用,因此比較大尺寸之主機資料無關下頁面/上頁面,按實體位址順序使用,進行寫入。例如圖7、圖8、圖9之例中,顯示需要10個實體頁面左右之主機資料之寫入例,但此時如圖示,以實體位址順序將下頁面/上頁面兩者用於主機資料之寫入。
先前敘述過下頁面與上頁面寫入速度有較大差異,但如此平均地使用下頁面/上頁面之主機資料之情形中,藉由使用上頁面之寫入速度並非那樣成為問題。亦有藉由亦使用下頁面而全體平均化之情形。
另一方面,以1實體頁面等結束寫入之小尺寸主機資料之情形中,使用下頁面之情形與使用上頁面之情形中,明顯後者存取速度下降。
但本實施形態之情形中,寫入請求時必須從下頁面開始,因此小尺寸主機資料幾乎僅使用下頁面進行寫入。因此尤其多產生小尺寸寫入請求之動作環境下,存取速度格外提高。
又,大尺寸主機資料之寫入之情形中,亦含上頁面進行寫入,
因此不會浪費上頁面側,可有效使用非揮發性記憶體15之容量。
又,進行根據步驟F105之管理資訊寫入,只要控制部11對主機機器2進行主機資料之寫入結束通知後進行即可。從而由主機機器2而言可提高主機資料之寫入存取速度,主機機器2側之應用程式等之處理亦可高速化。
圖10係顯示主機機器2與記憶卡1(控制部11)之通訊例。
主機機器2發出寫入命令時,在記憶卡1側如圖示進行主機資料之寫入。作為控制部11進行圖6之步驟F103之處理。該步驟F103中進行主機資料之寫入後,根據其結束,控制部11對主機機器2進行結束通知。
然後其後,下個頁面非下頁面之情形中,作為步驟F105之處理,進行管理資訊寫入。
因此如由圖10可知,管理資訊寫入在無自主機機器2之寫入請求之期間進行。結果向上頁面之管理資訊之寫入所需要之時間不包含在由主機機器2而言之寫入存取時間內,實現由主機機器2而言之高速存取。
然後,自主機機器2發出下個寫入命令時,主機資料之寫入從下頁面進行。
如此,控制部11對主機機器2通知對於資料寫入請求之寫入結束後,若有需要則至下頁面之上一個實體頁面為止執行管理資訊之寫入,亦對由主機機器2而言之寫入存取時間之縮短有效。
<4.管理資訊讀入處理>
如上述,主機資料之寫入時,有於上頁面寫入管理資訊之情形。此處,說明控制部11讀出管理資訊之情形之動作例。
圖11係顯示控制部11之管理資訊讀入處理例。
控制部11可於必要時以圖11之處理讀入記憶於非揮發性記憶體15
之管理資訊。
另,此處僅顯示檢索目標之管理資訊之處理例。作為管理資訊之1個,先前敍述有邏輯/實體位址轉換表格,但再構築邏輯.實體位址轉換表格之情形之處理之後詳細說明。
首先,控制部11於步驟F201對欲進行管理資訊讀入之對象實體區塊PBx進行最後使用完頁面PPe之檢索。例如作為二分檢索等,可搜索最後使用完之實體頁面PPe。
實體區塊PB係從實體頁面PP0依序使用者,最後使用完之實體頁面PPe係該時點下之前進行最新資料寫入之實體頁面PP。
圖12A係顯示之前進行資料寫入至實體頁面PP9為止之實體區塊PBx,此時,實體區塊PBx係在箭頭方向依序使用各實體頁面PP進行寫入者。然後,最後使用完之實體頁面PPe成為實體頁面PP9。
所謂二分檢索,例如係一面確認中央之實體頁面PP一面探索最後使用完之實體頁面PPe之方法。
作為1個實體區塊PB以16個實體頁面PP0~PP15而構成,由圖12A而言,首先例如確認實體頁面PP7。若實體頁面PP7寫入完,則最後使用完之實體頁面PPe係實體頁面PP7~PP15之任一者。因此接著確認實體頁面PP11。實體頁面PP11若未使用,則最後使用完之實體頁面PPe係實體頁面PP7~PP10之任一者。因此接著確認實體頁面PP9。如此一面確認中央之實體頁面PP一面追加,探索最後使用完之實體頁面PPe。
若發現最後使用完之實體頁面PPe,則控制部11於步驟F202判斷該最後使用完之實體頁面PP是否為下頁面。
若非下頁面,則控制部11於步驟F203回溯實體位址較小者檢索最近之非下頁面(即狹義之MLC之情形為上頁面)。
步驟F204中控制部11判斷於非下頁面是否記憶有目標之管理資
訊。
步驟F201檢索到之最後使用完之實體頁面PPe為上頁面之情形中,判斷於該最後使用完之實體頁面PPe是否記憶有讀入目標之管理資訊。
又,步驟F201檢索到之最後使用完之實體頁面PPe為下頁面,且步驟F203中檢索到最近之上頁面之情形中,判斷於該檢索到之上頁面是否記憶有讀入目標之管理資訊。
另,此處所言之目標之管理資訊,係此次處理欲讀出之管理資訊之類別。例如若為欲讀出作為管理資訊記憶之著作權資訊之處理,則目標之管理資訊成為著作權資訊。
然後,若存在目標之管理資訊則向步驟F206進展,從該實體頁面讀入管理資訊,結束處理。
圖12B係顯示最後使用完之實體頁面PPe為上頁面之實體頁面PP9之情形。此時,若最後使用完之實體頁面PPe(PP9)中記憶有目標之管理資訊MGT,則如圖示從該實體頁面PP9將其讀入。
圖12C係顯示最後使用完之實體頁面PPe為下頁面之實體頁面PP10之情形。此時,對最後使用完之實體頁面PPe(PP10)檢索最近之上頁面,確認實體頁面PP9中有無目標之管理資訊MGT。然後,若記憶有目標之管理資訊MGT,則如圖示從該實體頁面PP9將其讀入。
另一方面,步驟F204中判斷未記憶有目標之管理資訊時,在步驟F205中判斷到達最小實體位址之非下頁面之前,於步驟F203中倒序檢索最近之非下頁面,同樣判斷是否存在目標之管理資訊。然後,發現目標之管理資訊後於步驟F205讀入該管理資訊。
另,步驟F205中判斷為非下頁面之最初實體頁面之情形,例如圖12之例中而言係即使檢索非下頁面至實體位址最小之上頁面(PP4),亦判斷未記憶有目標之管理資訊之情形。
此時,控制部11於步驟F207作為無目標之管理資訊結束處理。
如此之管理資訊讀入處理中,可更有效且短時間讀出最新之管理資訊。作為管理資訊,除邏輯/實體位址轉換表格外,例如設想有著作權資訊或錯誤資訊等各種各樣者,例如欲讀入最新錯誤資訊之情形中,若將該錯誤資訊作為目標之管理資訊進行圖11之處理,則可高效讀出錯誤資訊。
即,根據上述資料寫入處理,主機資料之寫入上使用下頁面與上頁面兩者,但用於管理資訊之寫入則為非下頁面(MLC中僅上頁面)。因此,從最後使用完之實體頁面PPe僅檢索上頁面,從而可迅速發現最新管理資訊。僅在該時點欲讀入最近之前記憶之邏輯/實體位址轉換表格之情形亦成為較佳處理。
<5.對邏輯/實體位址轉換表格之應用例>
以上實施形態中,針對將作為管理資訊之邏輯/實體位址轉換表格記憶於上頁面之情形進行說明。
本實施形態中,允許對實體區塊PB將邏輯位址為非連續之主機資料寫入於連續之實體頁面PP中。
作為先前之一般寫入方式之一,寫入於實體區塊PB內之主機資料有邏輯位址成連續之方式。如此則下次獲取寫入於實體區塊PB內之主機資料之資訊之情形中,發現實體區塊PB內之最後使用完之實體頁面PP,讀出寫入於該實體頁面PP之冗餘區域之主機資料之邏輯位址資訊,從而可知該實體區塊PB中記憶有哪個範圍之邏輯位址之主機資料。即,如此則控制部11可簡單掌握對於該實體區塊PB之邏輯位址與實體位址之對應關係。
但該方式之情形中,寫入於實體區塊PB之主機資料經常需要邏輯位址為連續,因此主機裝置2欲寫入非連續邏輯位址之主機資料之情形,或更新已寫入之某邏輯位址之主機資料之情形中,無法有效使
用實體區塊PB。此時,以在實體區塊PB內邏輯位址成連續狀態之方式,多產生從某實體區塊PBx向其他實體區塊PBy拷貝主機資料之所謂垃圾收集,會顯著降低裝置壽命及寫入速度。
作為其他寫入方式,有允許對實體區塊PB連續寫入具備非連續邏輯位址之主機資料之方式。
此時,即使要求非順序主機資料之寫入或記憶完之某邏輯位址之主機資料之改寫,亦可不進行垃圾收集地對應。即,只要將請求寫入之主機資料寫入於實體區塊PB內之最後使用完之實體頁面之下個實體頁面PP即可。
但此時,控制部11為了知道記憶於某實體區塊PB之主機資料之邏輯位址與實體位址之對應關係,需要讀出該實體區塊PB之所有寫入完之實體頁面PP,獲取寫入於各實體頁面PP之冗餘區域之邏輯位址之資訊,構築對應關係之資訊(即邏輯/實體位址轉換表格)。作為結果,會導致顯著降低主機資料之寫入速度、讀出速度。
本實施形態中,使用允許對實體區塊PB連續寫入具備非連續邏輯位址之主機資料之方式。藉此可享受減少上述垃圾收集機會之優點。
基於此,主機資料之寫入時如上所述,以下次寫入從下頁面開始之方式,於必要時寫入管理資訊(此處為邏輯/實體位址轉換表格),從而可有效且短時間內執行用以生成、更新邏輯/實體位址轉換表格之動作。
因此,控制部11在實體區塊PB內,從最後使用完之實體頁面PPe向開頭側之實體頁面PP依次檢測實體頁面內是否記憶有邏輯/實體位址轉換表格,進行獲取最初發現之邏輯/實體位址轉換表格之處理。然後,使用該獲得之邏輯/實體位址轉換表格及未記憶有邏輯/實體位址轉換表格之實體頁面PP之邏輯位址資訊,更新邏輯/實體位址轉換
表格。
圖13A、圖14A說明邏輯/實體位址轉換表格之例。
圖13A係顯示某實體區塊PBx之各實體頁面PP0~PP15之記憶狀態。
假設1個實體頁面PP為16Kbyte。又,主機資料以4Kbyte為單位賦予邏輯位址。圖之框中之數值表示邏輯位址(LBA)。又,(L)表示下頁面,(U)表示上頁面。
該圖之例係對於該實體區塊PBx,根據某時點之寫入請求首先於實體頁面PP0寫入邏輯位址「1」「2」「3」「4」之主機資料者。此時,由於下個實體頁面PP1為下頁面,因此不進行管理資訊寫入。
下個寫入請求中,將相同邏輯位址「1」「2」「3」「4」之主機資料寫入於實體頁面PP1。此時由於下個實體頁面PP2亦為下頁面,因此亦不進行管理資訊寫入。
再者,依下個寫入請求,將邏輯位址「1000」「1001」「1002」「1003」之主機資料寫入於實體頁面PP2。此時下個實體頁面PP3亦為下頁面,因此亦不進行管理資訊寫入。
再者,依下個寫入請求,將邏輯位址「3000」~「3011」之主機資料寫入於實體頁面PP3~PP5。此時下個實體頁面PP6亦為下頁面,因此亦不進行管理資訊寫入。
其後,進行向實體頁面PP6之邏輯位址「9」「10」「11」「12」之主機資料之寫入、向實體頁面PP7之邏輯位址「100」「101」「102」「103」之主機資料之更新寫入,於實體頁面PP8、PP9進行管理資訊MGT之寫入。
對應於該圖13A之記憶狀態之邏輯/實體位址轉換表格例如如圖14A,成為使邏輯位址(LBA)與實體位址PP(Physical Page:實體頁面)對應之表格。
例如顯示以邏輯位址「1」為開頭之邏輯位址「1」「2」「3」「4」之最新主機資料記憶於實體頁面PP1。
又,顯示以邏輯位址「9」為開頭之邏輯位址「9」「10」「11」「12」之最新主機資料記憶於實體頁面PP6。
其他亦相同,顯示記憶有各邏輯位址之最新主機資料之實體頁面PP。
如此,邏輯/實體位址轉換表格中記憶有表示各實體頁面PP與記憶於該實體頁面PP之主機資料之邏輯位址之對應關係之資訊。
藉由構築如此之邏輯/實體位址轉換表格,從而控制部11可掌握主機機器2以邏輯位址指定之主機資料記憶於實體頁面PBx中哪個實體頁面PP上。
說明上,將記入於邏輯/實體位址轉換表格之各對應資訊稱作「邏輯對應資料」。
另,作為邏輯/實體位址轉換表格,如圖14B所示,亦可進而對應實體區塊PB(Physical Block:實體區塊)之號碼。
記憶管理資訊MGT係主機資料之記憶結束後之下個實體頁面PP非下頁面之情形,因此某實體區塊PBx之邏輯/實體位址轉換表格未必一定限於記憶於該實體區塊PBx內。亦允許將因此之例如實體區塊PBx之邏輯/實體位址轉換表格寫入於其他實體區塊PBy之實體頁面PP內之管理資訊寫入機器。若考慮如此情形,則如圖14B,與各邏輯位址對應地,管理實體區塊PB之號碼與實體頁面PP之號碼較佳。
如此將邏輯/實體位址轉換表格作為管理資訊寫入於管理頁面PP之情形中,控制部11於必要時可如下獲取最新邏輯/實體位址轉換表格。
圖15係顯示藉由控制部11之邏輯/實體位址轉換表格讀入處理。控制部11在電源投入時或進行上述圖6之步驟F102之處理準備時點,
或在其他任意時點,可進行該圖15之邏輯/實體位址轉換表格讀入處理。
首先,控制部11於步驟F301對構成邏輯/實體位址轉換表格之對象之實體區塊PBx進行最後使用完之頁面PPe之檢索。例如利用二分檢索搜索最後使用完之實體頁面PPe。圖13A之情形中,最後使用完之實體頁面PPe成為實體頁面PP9。
發現最後使用完之實體頁面PPe後,控制部11於步驟F302執行該最後使用完之實體頁面PPe之讀出,確認記憶之資料內容。尤其確認最後使用完之實體頁面PPe中是否包含邏輯/實體位址轉換表格。
於最後使用完之實體頁面PPe中記憶有邏輯/實體位址轉換表格之情形中,控制部11從步驟F303向步驟F307進展,匯入該邏輯/實體位址轉換表格。
例如圖13A之情形中,最後使用完之實體頁面PPe為實體頁面PP9,作為此處之管理表格MGT記憶有邏輯/實體位址轉換表格。
如此情形中,作為圖13A之箭頭R所示,控制部11匯入記憶於經檢索之最後使用完之實體頁面PPe之邏輯/實體位址轉換表格。
記憶於該最後使用完之實體頁面PPe之邏輯/實體位址轉換表格係包含對於記憶於該時點之該實體區塊PBx之所有主機資料之邏輯實體對應資料之最新者。
例如資料寫入時於圖6之步驟F102中,對於之後欲寫入之主機資料生成邏輯實體對應資料,記入於邏輯/實體位址轉換表格。每次資料寫入就進行圖6之步驟F102之處理,從而例如向圖13A之實體頁面PP7寫入邏輯位址「100」「101」「102」「103」時,控制部11於步驟F102更新之邏輯/實體位址轉換表格成如圖14A所示。因此寫入於實體頁面PP8、PP9之邏輯/實體位址轉換表格成記入有至實體頁面PP7之邏輯實體對應資料之最新狀態。
即,如此從最後使用完之實體頁面PPe讀入邏輯/實體位址轉換表格之情形中,可獲得最新的邏輯/實體位址轉換表格。
另一方面,最後使用完之實體頁面Ppe中不包含邏輯/實體位址轉換表格之情形中,控制部11從步驟F303向F304進展,確認記憶於該實體頁面PP(此時為最後使用完之實體頁面PPe)之主機資料之邏輯位址LBA並記憶。
然後,若該實體頁面PP並非對象實體區塊PBx開頭之實體頁面PP0,則從步驟F305向F306進展,進行前1個實體頁面PP之讀出,步驟F303中確認該實體頁面PP中是否記憶有邏輯/實體位址轉換表格。
若該實體頁面PP中亦未記憶有邏輯/實體位址轉換表格,則控制部11又於步驟F304確認記憶於該實體頁面PP之主機資料之邏輯位址LBA並記憶。然後,若該實體資料PP並非對象實體區塊PBx開頭之實體頁面PP0,則從步驟F305向F306進展,進而進行前1個實體頁面PP之讀出,步驟F303中確認該實體頁面PP中是否記憶有邏輯/實體位址轉換表格。
即,步驟F304→F305→F306→F303之處理成為從最後使用完之實體頁面PPe依次追溯之前的實體頁面PP,一面記憶各實體頁面PP之主機資料之邏輯位址,一面找出記憶有邏輯/實體位址轉換表格之實體頁面PP之處理。
該過程中,確認某實體頁面PP中存在邏輯/實體位址轉換表格後,控制部11從步驟F303向F307進展,從該實體頁面PP匯入邏輯/實體位址轉換表格。然後此時,將匯入之邏輯/實體位址轉換表格更新為最新狀態。
例如圖13B中,顯示最後使用完之實體頁面PPe=實體頁面PP10,該實體頁面PP10中不存在邏輯/實體位址轉換表格之情形。
此時,如作為箭頭S所示進行前1個實體頁面PP之確認。該例中
若記憶於前1個實體頁面PP9之管理資訊MGT包含邏輯/實體位址轉換表格,則如作為箭頭R所示,從實體頁面PP9匯入邏輯/實體位址轉換表格。
如此記憶於最後使用完之實體頁面PPe以外之實體頁面PP之邏輯/實體位址轉換表格不包含對於記憶於該時點之該實體區塊PBx之所有主機資料之邏輯實體對應資料。例如該圖13B之例中,匯入之邏輯/實體位址轉換表格不包含對於實體頁面PP10之邏輯實體對應資料。
因此步驟F307中,以將對於該實體頁面PP10之邏輯實體對應資料反映於邏輯/實體位址轉換表格之方式,進行邏輯/實體位址轉換表格之更新。
藉此獲得最新狀態之邏輯/實體位址轉換表格。此時,最新邏輯/實體位址轉換表格變成在圖14A之內容中加入有使實體頁面PP10與邏輯位址「5」「6」「7」「8」建立關聯之邏輯實體對應資料之如圖14C所示。
另,步驟F305中判斷為開頭之實體頁面PP0之情形,係該實體區塊PBx中任一實體頁面PP中都未記憶有邏輯/實體位址轉換表格之情形。
此時,控制部11以步驟F307重新構築邏輯/實體位址轉換表格。
即,對於從最後使用完之實體頁面PPe至開頭之實體頁面PP0之各實體頁面PP,使用於步驟F304記憶之邏輯位址,生成關於各邏輯位址之邏輯實體對應資料,生成邏輯/實體位址轉換表格。藉此獲得最新狀態之邏輯/實體位址轉換表格。
例如電源投入時,或用以準備資料寫入等需要獲取邏輯/實體位址轉換表格之情形中,只要如上所述獲取最新的邏輯/實體位址轉換表格即可。
尤其可從最後使用完之實體頁面PPe發現邏輯/實體位址轉換表格
之情形中,只要讀入邏輯/實體位址轉換表格即可。又,在從最後使用完之實體頁面PPe追溯之實體頁面PP上發現邏輯/實體位址轉換表格之情形中,只要以對讀入之邏輯/實體位址轉換表格反映至此為止之各實體頁面PP之內容之方式更新即可。
即,本實施形態之情形中,邏輯/實體位址轉換表格作為管理資訊MGT之1個被寫入,從而不太會產生為了獲得最新之邏輯/實體位址轉換表格,而必須探索全部實體頁面之情況,可獲得可迅速獲取最新的邏輯/實體位址轉換表格之情形變多之優點。
尤其作為來自主機機器2之寫入請求,小尺寸主機資料之寫入較多之情形中,於上頁面寫入邏輯/實體位址轉換表格之可能性變高。此時,對最新的邏輯/實體位址轉換表格之迅速讀出有利。
另,根據寫入請求進行上述圖6之處理之情形中,步驟F102中,對如上獲取之最新邏輯/實體位址轉換表格實施反映進行此次寫入之主機資料之內容之更新即可。因此邏輯/實體位址轉換表格作為管理資訊被記憶係對資料寫入處理之效率化亦有效。
又,邏輯/實體位址轉換表格寫入於實體頁面PP中,如上述可讀出其並構築最新的邏輯/實體位址轉換表格,此在中途電源中斷等異常情況下亦可高效進行回復,亦可提高資料之可靠性。
<6.變化例>
以上針對實施形態進行說明,但作為實施形態之構成、處理可考慮各種變化例。
實施形態中主要以MLC(狹義)之情形說明,但如圖5B之TLC之情形亦可應用本發明之技術。此時,圖6之步驟F104之判斷下所謂「非下頁面」只要為上頁面或中頁面之情形即可。即,下個實體頁面PP若為中頁面或上頁面,則於步驟F105進行管理資訊寫入。
又,圖11之步驟F203、F208之「非下頁面」只要為上頁面或中
頁面即可。
即TLC之情形,與下頁面相比,中頁面、上頁面寫入速度變慢,因此將中頁面、上頁面用於管理資訊之寫入。
又實施形態中,控制部11以對應於下次資料寫入請求之資料寫入從下頁面開始之方式,執行管理資訊之寫入直至下頁面之上一個實體頁面為止,但未必一定係管理資訊。
例如亦可將仿真資料、隨機資料或一般不從主機機器2直接參考之資料等寫入於上頁面或中頁面。即只要執行非主機資料之寫入即可。該意思在圖6之步驟F105中作為非主機資料亦可執行多種資訊或無意義之資料寫入。
又,本實施形態中舉記憶卡1之例,但非揮發性記憶體15、控制部11為獨立構成之情形中亦可應用本發明之技術。
本發明之技術亦可應用於各種記憶卡、SSD、eMMC等。
另,本技術亦可採用如下構成。
(1)一種控制裝置,其具備控制部,該控制部根據來自主機機器之資料寫入請求,對於非揮發性記憶體進行被供給之主機資料之寫入控制,且以從下層頁面開始進行對應於下次資料寫入請求之資料寫入之方式,執行資料寫入直至下層頁面之上一個實體頁面為止;該非揮發性記憶體係於1個記憶單元中進行2位元以上之多值記憶,作為設定實體位址之實體頁面至少具有用以多值記憶之下層頁面與上層頁面,且按實體位址順序使用各實體頁面並進行資料寫入。
(2)如上述(1)之控制裝置,其中上述控制部係在對應於資料寫入請求之主機資料之寫入未達下層頁面之上一個實體頁面即已結束之情形中,執行非主機資料之寫入直至下層頁面之上一個實體頁面為止。
(3)如上述(1)或(2)之控制裝置,其中上述控制部係在對應於資料寫入請求之主機資料之寫入未達下層頁面之上一個實體頁面即已結束
之情形中,將對資料寫入請求之寫入結束向上述主機機器通知後,執行非主機資料之寫入直至下層頁面之上一個實體頁面為止。
(4)如上述(2)或(3)之控制裝置,其中上述非主機資料係上述控制部所使用之管理資訊。
(5)如上述(4)之控制裝置,其中上述控制部對上述非揮發性記憶體進行下層頁面以外之實體頁面之檢索,而進行讀出上述管理資訊之控制。
(6)如上述(2)至(5)中任一項之控制裝置,其中上述非主機資料係表示主機資料之邏輯位址與上述非揮發性記憶體上之實體位址之對應之邏輯/實體位址轉換表格。
(7)如上述(6)之控制裝置,其中上述非揮發性記憶體中,由複數個實體頁面形成實體區塊,
上述控制部:在上述實體區塊內,從最後使用完之實體頁面向開頭側之實體頁面依次檢索實體頁面內是否記憶有上述邏輯/實體位址轉換表格,進行獲取最初發現之上述邏輯/實體位址轉換表格之處理,且使用經獲取之邏輯/實體位址轉換表格及未記憶有邏輯/實體位址轉換表格之實體頁面之邏輯位址資訊,獲取最新之邏輯/實體位址轉換表格。
(8)如上述(1)至(7)中任一項之控制裝置,其中上述非揮發性記憶體係多值NAND型快閃記憶體。
Claims (10)
- 一種控制裝置,其具備控制部,該控制部根據來自主機機器之資料寫入請求,對於非揮發性記憶體進行被供給之主機資料之寫入控制,且以從下層頁面開始進行對應於下次資料寫入請求之資料寫入之方式,執行資料寫入直至下層頁面之上一個實體頁面為止;該非揮發性記憶體係於1個記憶單元中進行2位元以上之多值記憶,作為設定實體位址之實體頁面至少具有用以多值記憶之下層頁面與上層頁面,且按實體位址順序使用各實體頁面並進行資料寫入。
- 如請求項1之控制裝置,其中上述控制部係在對應於資料寫入請求之主機資料之寫入未達下層頁面之上一個實體頁面即已結束之情形下,執行非主機資料之寫入直至下層頁面之上一個實體頁面為止。
- 如請求項1之控制裝置,其中上述控制部係在對應於資料寫入請求之主機資料之寫入未達下層頁面之上一個實體頁面即已結束之情形下,將對資料寫入請求之寫入結束向上述主機機器通知後,執行非主機資料之寫入直至下層頁面之上一個實體頁面為止。
- 如請求項2之控制裝置,其中上述非主機資料係上述控制部所使用之管理資訊。
- 如請求項4之控制裝置,其中上述控制部對上述非揮發性記憶體進行下層頁面以外之實體頁面之檢索,而進行讀出上述管理資訊之控制。
- 如請求項2之控制裝置,其中上述非主機資料係表示主機資料之邏輯位址與上述非揮發性記憶體上之實體位址之對應之邏輯/實 體位址轉換表格。
- 如請求項6之控制裝置,其中上述非揮發性記憶體中,由複數個實體頁面形成實體區塊,上述控制部:在上述實體區塊內,從最後使用完之實體頁面向開頭側之實體頁面依次檢索實體頁面內是否記憶有上述邏輯/實體位址轉換表格,進行獲取最初發現之上述邏輯/實體位址轉換表格之處理,且使用經獲取之邏輯/實體位址轉換表格及未記憶有邏輯/實體位址轉換表格之實體頁面之邏輯位址資訊,獲取最新之邏輯/實體位址轉換表格。
- 如請求項1之控制裝置,其中上述非揮發性記憶體係多值NAND型快閃記憶體。
- 一種記憶裝置,其具備:非揮發性記憶體,其於1個記憶單元中進行2位元以上之多值記憶,作為設定實體位址之實體頁面至少具有用以多值記憶之下層頁面與上層頁面,且按實體位址順序使用各實體頁面並進行資料寫入;及控制部,其根據來自主機機器之資料寫入請求,對上述非揮發性記憶體進行被供給之主機資料之寫入控制,且以從下層頁面開始進行對應於下次資料寫入請求之資料寫入之方式,執行資料寫入直至下層頁面之上一個實體頁面為止。
- 一種資料寫入方法,其係對於非揮發性記憶體之資料寫入方法,該非揮發性記憶體係於1個記憶單元中進行2位元以上之多值記憶,作為設定有實體位址之實體頁面至少具有用以多值記憶之下層頁面與上層頁面,且按實體位址順序使用各實體頁面 並進行資料寫入者;且上述資料寫入方法根據來自主機機器之資料寫入請求,對上述非揮發性記憶體進行被供給之主機資料之寫入控制,且以從下層頁面開始進行對應於下次資料寫入請求之資料寫入之方式,執行資料寫入直至下層頁面之上一個實體頁面為止。
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012106830A JP5929485B2 (ja) | 2012-05-08 | 2012-05-08 | 制御装置、記憶装置、データ書込方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| TW201401048A true TW201401048A (zh) | 2014-01-01 |
Family
ID=49534164
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW102108719A TW201401048A (zh) | 2012-05-08 | 2013-03-12 | 控制裝置、記憶裝置及資料寫入方法 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US9454475B2 (zh) |
| JP (1) | JP5929485B2 (zh) |
| KR (1) | KR20130125303A (zh) |
| CN (1) | CN103389881A (zh) |
| TW (1) | TW201401048A (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI603191B (zh) * | 2014-09-26 | 2017-10-21 | 英特爾公司 | 用於使用反及頁面緩衝器來增進固態硬碟之移轉緩衝器之使用的方法和系統 |
Families Citing this family (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103729303B (zh) * | 2014-01-20 | 2017-03-29 | 飞天诚信科技股份有限公司 | 一种Flash的数据写入和读取方法 |
| TWI545571B (zh) * | 2014-02-18 | 2016-08-11 | 慧榮科技股份有限公司 | 存取快閃記憶體的方法及相關的控制器與記憶裝置 |
| US10489241B2 (en) * | 2015-12-30 | 2019-11-26 | Arteris, Inc. | Control and address redundancy in storage buffer |
| CN107092560B (zh) * | 2016-02-17 | 2020-06-16 | 建兴储存科技(广州)有限公司 | 固态储存装置及运用于其中的快闪转换层对应表重建方法 |
| CN109086006B (zh) * | 2018-07-24 | 2021-10-15 | 浪潮电子信息产业股份有限公司 | 一种数据读取的方法以及相关装置 |
| CN109189348B (zh) * | 2018-10-08 | 2020-07-24 | 华中科技大学 | 基于电荷捕获型3d tlc闪存的存储系统的读性能优化方法 |
| CN110471863A (zh) * | 2019-08-13 | 2019-11-19 | 深圳忆联信息系统有限公司 | 基于固态硬盘的数据写入读取方法、装置和计算机设备 |
Family Cites Families (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5162846B2 (ja) | 2005-07-29 | 2013-03-13 | ソニー株式会社 | 記憶装置、コンピュータシステム、および記憶システム |
| JP2007094921A (ja) | 2005-09-30 | 2007-04-12 | Toshiba Corp | メモリカードとその制御方法 |
| JP5076411B2 (ja) | 2005-11-30 | 2012-11-21 | ソニー株式会社 | 記憶装置、コンピュータシステム |
| JP2008112285A (ja) * | 2006-10-30 | 2008-05-15 | Toshiba Corp | 不揮発性メモリシステム |
| JP4537420B2 (ja) | 2007-04-02 | 2010-09-01 | 株式会社リコー | Simd型マイクロプロセッサ |
| JP4356782B2 (ja) | 2007-09-12 | 2009-11-04 | ソニー株式会社 | メモリ装置、メモリ制御方法、およびプログラム |
| JP4649503B2 (ja) * | 2008-08-13 | 2011-03-09 | 株式会社東芝 | 半導体装置 |
| JP4666081B2 (ja) * | 2009-02-09 | 2011-04-06 | Tdk株式会社 | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
| JP2010198407A (ja) | 2009-02-26 | 2010-09-09 | Sony Corp | 情報処理装置、およびデータ記録制御方法、並びにプログラム |
| JP2010282492A (ja) * | 2009-06-05 | 2010-12-16 | Toshiba Corp | メモリシステム |
| JP4956593B2 (ja) * | 2009-09-08 | 2012-06-20 | 株式会社東芝 | メモリシステム |
-
2012
- 2012-05-08 JP JP2012106830A patent/JP5929485B2/ja not_active Expired - Fee Related
-
2013
- 2013-03-12 TW TW102108719A patent/TW201401048A/zh unknown
- 2013-04-25 US US13/870,722 patent/US9454475B2/en not_active Expired - Fee Related
- 2013-04-26 KR KR1020130046708A patent/KR20130125303A/ko not_active Withdrawn
- 2013-04-28 CN CN2013101571119A patent/CN103389881A/zh active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI603191B (zh) * | 2014-09-26 | 2017-10-21 | 英特爾公司 | 用於使用反及頁面緩衝器來增進固態硬碟之移轉緩衝器之使用的方法和系統 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP5929485B2 (ja) | 2016-06-08 |
| CN103389881A (zh) | 2013-11-13 |
| US9454475B2 (en) | 2016-09-27 |
| US20130304971A1 (en) | 2013-11-14 |
| KR20130125303A (ko) | 2013-11-18 |
| JP2013235630A (ja) | 2013-11-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11301373B2 (en) | Reconstruction of address mapping in a host of a storage system | |
| US8495280B2 (en) | Flash memory system and designing method of flash translation layer thereof | |
| TW201401048A (zh) | 控制裝置、記憶裝置及資料寫入方法 | |
| CN103425588B (zh) | 数据储存装置和快闪存储器的区块管理方法 | |
| CN101154190B (zh) | 映射信息管理设备和方法 | |
| US8321624B2 (en) | Memory device and management method of memory device | |
| US10922011B2 (en) | Controllers configured to perform secure deletion, key-value storage devices including said controllers, and methods of operation thereof | |
| US11556249B2 (en) | Delaying random data relocation for reducing write amplification in storage devices | |
| CN108027764B (zh) | 可转换的叶的存储器映射 | |
| CN109521944B (zh) | 数据储存装置以及数据储存方法 | |
| CN111338562A (zh) | 数据存储装置与数据处理方法 | |
| US9858003B2 (en) | Storage system that reliably stores lower page data | |
| JP6072428B2 (ja) | 制御装置、記憶装置、記憶制御方法 | |
| US11126624B2 (en) | Trie search engine | |
| CN103365790B (zh) | 存储器控制器、存储装置与数据写入方法 | |
| US11657000B2 (en) | Controller and memory system including the same | |
| JP4558052B2 (ja) | メモリシステム | |
| TWI909500B (zh) | 半導體記憶裝置、記憶體系統及控制方法 | |
| CN115079928B (zh) | 跳跃式资料清除方法与资料储存系统 | |
| TW202514625A (zh) | 半導體記憶裝置、記憶體系統及控制方法 | |
| JP2025522175A (ja) | データ検索を実行するメモリコントローラおよびメモリシステム |