專利名稱:閃存裝置及其運作方法
技術(shù)領(lǐng)域:
本發(fā)明有關(guān)于閃存裝置,特別是有關(guān)于多層單元(multi-level cell, MLC)閃
存裝置。
背景技術(shù):
NAND型閃存可分為單層單元(single-level cell, SLC)閃存與多層單元 (niulti-level cell, MLC)閃存。單層單元閃存的一個存儲單元僅能儲存一位的數(shù) 據(jù)。多層單元閃存的一個存儲單元則能儲存多個位的數(shù)據(jù)。因此,當(dāng)具有相同數(shù)目 的存儲單元時,多層單元閃存較單層單元閃存具有較多的數(shù)據(jù)儲存量。因此,相較 于同樣容量的單層單元閃存,多層單元閃存具有較低的生產(chǎn)成本。
多層單元閃存包含多個區(qū)塊(block),每個區(qū)塊包括多個分頁(page)以供儲存 數(shù)據(jù)。多層單元閃存的分頁又可再區(qū)分為弱分頁(weak page)與強(qiáng)分頁(strong page)。弱分頁具有較低的可寫入次數(shù)(data endurance)、可讀出次數(shù)(data retention),以及較慢的數(shù)據(jù)存取速度。強(qiáng)分頁具有較高的可寫入次數(shù)、可讀出次 數(shù),以及較快的數(shù)據(jù)存取速度。由于多層單元閃存的弱分頁數(shù)目與強(qiáng)分頁數(shù)目相同, 因此平均而言,單層單元閃存的分頁較多層單元閃存的分頁具有較高的可寫入次 數(shù)、可讀出次數(shù),以及較快的數(shù)據(jù)存取速度。
主機(jī)使用的數(shù)據(jù)可大致區(qū)分為系統(tǒng)數(shù)據(jù)與使用者數(shù)據(jù)。系統(tǒng)數(shù)據(jù)具有較高的 重要性,因此需要較一般的使用者數(shù)據(jù)為高的數(shù)據(jù)儲存穩(wěn)定性以及較快的數(shù)據(jù)存取 速度。而使用者數(shù)據(jù)需要較大的數(shù)據(jù)儲存空間。為了配合兩種數(shù)據(jù)的需求,傳統(tǒng)的 閃存裝置同時需要具有兩種不同型式的閃存。圖1顯示傳統(tǒng)的閃存裝置104的區(qū)塊 圖。閃存裝置104包括控制器112、閃存114、及閃存116。閃存114為具較高的 數(shù)據(jù)儲存穩(wěn)定性及較快數(shù)據(jù)存取速度的N0R型閃存或單層單元閃存。閃存116為具 較大的數(shù)據(jù)容量的多層單元閃存。
然而,由于傳統(tǒng)的閃存裝置104具有兩種不同型式的閃存114及116,因此具
7有較高的線路設(shè)計復(fù)雜度。舉例來說,閃存114及116可能需要不同的數(shù)據(jù)總線及 芯片使能線路。較高的線路設(shè)計復(fù)雜度會增加閃存裝置104的生產(chǎn)成本。此外,控 制器112對閃存114及116的存取方式也較為復(fù)雜。因此,需要一種閃存裝置,僅 包括單一的閃存,卻能同時運用兩種不同性質(zhì)的數(shù)據(jù)儲存區(qū)。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的目的在于提供一種閃存裝置,以解決傳統(tǒng)技術(shù)存在的問 題。于一實施例中,該閃存裝置耦接至一主機(jī),包括一多層單元(multi-level cell, MLC)閃存以及一控制器。該多層單元閃存包括一加速區(qū)(Turbo area)及一正常區(qū), 該加速區(qū)包括多個第一區(qū)塊(block),該正常區(qū)包括多個第二區(qū)塊,且每一該些第 一區(qū)塊及每一該些第二區(qū)塊皆包括多個分頁(page),其中該些分頁被區(qū)分為具有高 數(shù)據(jù)讀寫次數(shù)(data endurance)的強(qiáng)分頁(strong page)與具有低數(shù)據(jù)讀寫次數(shù)弱 分頁(weak page)。該控制器自該主機(jī)接收欲寫入該閃存裝置的一寫入數(shù)據(jù),判斷 是否該寫入數(shù)據(jù)為重要數(shù)據(jù),當(dāng)該寫入數(shù)據(jù)為重要數(shù)據(jù)時將該寫入數(shù)據(jù)寫入該加速 區(qū)的該些第一區(qū)塊的強(qiáng)分頁,以及當(dāng)該寫入數(shù)據(jù)不為重要數(shù)據(jù)時將該寫入數(shù)據(jù)寫入 該正常區(qū)的該些第二區(qū)塊的分頁。
本發(fā)明提供一種閃存裝置的運作方法。于一實施例中,該閃存裝置耦接至一 主機(jī)。首先,區(qū)分一多層單元(multi-level cell, MLC)閃存的多個區(qū)塊(block) 為一加速區(qū)(Turbo area)所包括的多個第一區(qū)塊及一正常區(qū)所包括多個第二區(qū)塊, 其中每一該些第一區(qū)塊及每一該些第二區(qū)塊皆包括多個分頁(page),且該些分頁被 區(qū)分為具有高數(shù)據(jù)讀寫次數(shù)(data endurance)的強(qiáng)分頁(strong page)與具有低數(shù) 據(jù)讀寫次數(shù)弱分頁(weak page)。接著,自該主機(jī)接收欲寫入該閃存裝置的一寫入 數(shù)據(jù)。接著,判斷是否該寫入數(shù)據(jù)為重要數(shù)據(jù)。當(dāng)該寫入數(shù)據(jù)為重要數(shù)據(jù)時,將該 寫入數(shù)據(jù)寫入該加速區(qū)的該些第一區(qū)塊的強(qiáng)分頁。當(dāng)該寫入數(shù)據(jù)不為重要數(shù)據(jù)時, 將該寫入數(shù)據(jù)寫入該正常區(qū)的該些第二區(qū)塊的分頁。
本發(fā)明提供一種閃存裝置。于一實施例中,該閃存裝置耦接至一主機(jī),包括 多個多層單元(multi-level cell, MLC)閃存以及一控制器。每一該些多層單元閃 存包括一加速區(qū)(Turbo area)及一正常區(qū),該些加速區(qū)及該些正常區(qū)均包括多個區(qū) 塊(block),每一該些區(qū)塊皆包括多個分頁(page),其中該些分頁被區(qū)分為具有高
8數(shù)據(jù)讀寫次數(shù)(data endurance)的強(qiáng)分頁(strong page)與具有低數(shù)據(jù)讀寫次數(shù)弱
分頁(weak page)。該控制器自該主機(jī)接收欲寫入該閃存裝置的一寫入數(shù)據(jù),判斷
是否該寫入數(shù)據(jù)為重要數(shù)據(jù),當(dāng)該寫入數(shù)據(jù)為重要數(shù)據(jù)時將該寫入數(shù)據(jù)寫入該些多 層單元閃存的該些加速區(qū)的相同次序的區(qū)塊的強(qiáng)分頁,以及當(dāng)該寫入數(shù)據(jù)不為重要
數(shù)據(jù)時將該寫入數(shù)據(jù)寫入該些多層單元閃存的該些正常區(qū)的相同次序的區(qū)塊的分 頁。
本發(fā)明更提供一種閃存裝置。于一實施例中,該閃存裝置耦接至一主機(jī),包 括一加速(Turbo)多層單元(multi-level cell, MLC)閃存、 一多層單元閃存、以及 一控制器。該加速多層單元閃存包括多個第一區(qū)塊(block),且每一該些第一區(qū)塊 包括多個分頁(page),其中該些第一區(qū)塊的該些分頁被區(qū)分為具有高數(shù)據(jù)讀寫次數(shù) (data endurance)的強(qiáng)分頁(strong page)與具有低數(shù)據(jù)讀寫次數(shù)弱分頁(weak page)。該多層單元閃存包括多個第二區(qū)塊,且每一該些第二區(qū)塊皆包括多個分頁。 該控制器自該主機(jī)接收欲寫入該閃存裝置的一寫入數(shù)據(jù),判斷是否該寫入數(shù)據(jù)為重 要數(shù)據(jù),當(dāng)該寫入數(shù)據(jù)為重要數(shù)據(jù)時將該寫入數(shù)據(jù)寫入該加速多層單元閃存的該些 第一區(qū)塊的強(qiáng)分頁,以及當(dāng)該寫入數(shù)據(jù)不為重要數(shù)據(jù)時將該寫入數(shù)據(jù)寫入該多層單 元閃存的該些第二區(qū)塊的分頁。
為了讓本發(fā)明的上述和其它目的、特征、和優(yōu)點能更明顯易懂,下文特舉數(shù) 較佳實施例,并配合附圖,作詳細(xì)說明如下
圖1為傳統(tǒng)的閃存裝置的區(qū)塊圖; 圖2為依據(jù)本發(fā)明的閃存裝置的一實施例的區(qū)塊圖; 圖3為依據(jù)本發(fā)明的一區(qū)塊所包括的強(qiáng)分頁與弱分頁的示意圖; 圖4為依據(jù)本發(fā)明的將數(shù)據(jù)寫入多層單元閃存的方法的流程圖 圖5為依據(jù)本發(fā)明的交錯式(interleaving)閃存裝置的區(qū)塊圖 圖6為依據(jù)本發(fā)明的多頻道(multi-channel)閃存裝置的區(qū)塊圖; 圖7為依據(jù)本發(fā)明的多頻道(raulti-channel)兼交錯式(interleaving)閃存裝 置700的區(qū)塊圖;以及
圖8為依據(jù)本發(fā)明的閃存裝置的一實施例的區(qū)塊圖。
具體實施例方式
圖2為依據(jù)本發(fā)明的閃存裝置204的區(qū)塊圖。閃存裝置204耦接至主機(jī)202, 并為主機(jī)202儲存數(shù)據(jù)。于一實施例中,閃存裝置204包括一控制器212及一多層 單元(multi-level cell, MLC)閃存214。多層單元閃存214包括多個區(qū)塊(block),該 些區(qū)塊被區(qū)分為兩群區(qū)塊,分別為加速區(qū)222及正常區(qū)224。加速區(qū)222包括區(qū)塊 231、 232、、 23M,而正常區(qū)224包括區(qū)塊251、 252、…、25N。無論是加速區(qū) 222的區(qū)塊231 23M或是正常區(qū)224的區(qū)塊251 25N皆包括多個分頁(page)用以儲 存數(shù)據(jù)。
多層單元閃存214所包括的區(qū)塊231-23M及251-25N所包括的分頁可被區(qū)分 為強(qiáng)分頁(strong page)及弱分頁(weak page)。圖3為依據(jù)本發(fā)明的一區(qū)塊300所包 括的強(qiáng)分頁與弱分頁的示意圖。區(qū)塊300包括分頁0開始的多個分頁,而該些分頁 的半數(shù)為強(qiáng)分頁且半數(shù)為弱分頁。于一實施例中,分頁0、分頁1、分頁2、分頁3、 分頁6、分頁7、分頁IO、分頁ll等為強(qiáng)分頁,因此分別被標(biāo)示為SO、 Sl、 S2、 S3、 S4、 S5、 S6、及S7等等。分頁4、分頁5、分頁8、分頁9、分頁12、分頁 13等為弱分頁,因此分別被標(biāo)示為WO、 Wl、 W2、 W3、 W4、 W5等等。強(qiáng)分頁 具有較高的可寫入次數(shù)(dataendurance)、可讀出次數(shù)(data rfctention),以及較快的數(shù) 據(jù)存取速度。弱分頁具有較低的可寫入次數(shù)、可讀出次數(shù),以及較慢的數(shù)據(jù)存取速 度。于一實施例中,控制器212依據(jù)一分頁對應(yīng)表以決定其所存取的多層單元閃存 214的區(qū)塊的分頁為強(qiáng)分頁或弱分頁。
為了提升加速區(qū)222的區(qū)塊所儲存的數(shù)據(jù)的數(shù)據(jù)存取速度,并提高加速區(qū)222 的區(qū)塊的可寫入次數(shù)及可讀出次數(shù),控制器212僅使用加速區(qū)222的區(qū)塊的強(qiáng)分頁 以儲存數(shù)據(jù)。由于強(qiáng)分頁具有較高的可寫入沐數(shù)、可讀出次數(shù)、以及較快的數(shù)據(jù)存 取速度,因此加速區(qū)222的效能可顯著提升。于一實施例中,加速區(qū)222的可寫入 次數(shù)可被提升5倍以上,而可讀出次數(shù)可被提升5倍~10倍。當(dāng)然,由于控制器212 僅使用加速區(qū)222的區(qū)塊的強(qiáng)分頁以儲存數(shù)據(jù),而未利用加速區(qū)222的區(qū)塊的弱分 頁,因此控制器212所使用的加速區(qū)222的區(qū)塊的數(shù)據(jù)容量較原本減半。
反之,當(dāng)控制器212使用正常區(qū)224時,均等地使用正常區(qū)222的區(qū)塊的強(qiáng) 分頁及弱分頁以儲存數(shù)據(jù),以維持正常區(qū)224的數(shù)據(jù)容量。因此,多層單元閃存214便同時包括具有較高數(shù)據(jù)存取速度的加速區(qū)222的區(qū)塊231~23M以及具有較 大數(shù)據(jù)容量的正常區(qū)224的區(qū)塊251 25N。于一實施例中,為了避免加速區(qū)222 的區(qū)塊222 23M與正常區(qū)224的區(qū)塊251~25N互相干擾,因此控制器212對加速 區(qū)222所包括的區(qū)塊231 23M獨立進(jìn)行磨損平均(wear-leveling),并對正常區(qū)224 所包括的區(qū)塊251 25N獨立進(jìn)行磨損平均。同時,控制器212以不同的地址鏈接 表以分別記錄加速區(qū)222的區(qū)塊231 23M與正常區(qū)224的區(qū)塊251 25N的實體地 址與邏輯地址的對應(yīng)關(guān)系,以進(jìn)行邏輯地址與實體地址的轉(zhuǎn)換。
圖4為依據(jù)本發(fā)明的將數(shù)據(jù)寫入多層單元閃存214的方法400的流程圖???制器212首先自主機(jī)202接收欲寫入閃存裝置204的一寫入數(shù)據(jù)(步驟402)??刂?器212接著判斷該寫入數(shù)據(jù)是否為重要數(shù)據(jù)(步驟404),以決定要將該寫入數(shù)據(jù)寫 入多層單元閃存214的加速區(qū)214的區(qū)塊231~23M或正常區(qū)224的區(qū)塊251~25N。 于一實施例中,重要數(shù)據(jù)可為主機(jī)202的系統(tǒng)數(shù)據(jù),而當(dāng)該寫入數(shù)據(jù)為使用者數(shù)據(jù) 時,該寫入數(shù)據(jù)不為重要數(shù)據(jù)。于一實施例中,主機(jī)212使用的邏輯地址范圍依據(jù) 一界限值被區(qū)分為一第一邏輯地址范圍與一第二邏輯地址范圍。邏輯地址位于第一 邏輯地址范圍的數(shù)據(jù)會被控制器212認(rèn)為是重要的系統(tǒng)數(shù)據(jù)。
例如,假設(shè)主機(jī)212所運用的邏輯地址范圍為0-4095,而界限值被設(shè)定為 1024,則第一邏輯地址范圍包括0~1023的邏輯地址,而第二邏輯地址范圍包括 1024 4095的邏輯地址。此時,控制器212依據(jù)自主機(jī)202所接收的該寫入數(shù)據(jù)的 邏輯地址與該界限值的相對大小以判斷是否該寫入數(shù)據(jù)為重要數(shù)據(jù)。于一實施例 中,若該寫入數(shù)據(jù)的邏輯地址小于該界限值時,則該寫入數(shù)據(jù)的邏輯地址位于第一 邏輯地址范圍,而控制器212判斷該寫入數(shù)據(jù)為重要數(shù)據(jù)。
接著,控制器212依該寫入數(shù)據(jù)是否為重要數(shù)據(jù)而決定要將該數(shù)據(jù)寫入多層 單元閃存214的加速區(qū)222或正常區(qū)224。當(dāng)控制器212決定該寫入數(shù)據(jù)為重要數(shù) 據(jù)時,控制器212自多層單元閃存214的加速區(qū)222取得一區(qū)塊(步驟406),并將 該寫入數(shù)據(jù)寫入加速區(qū)222的該區(qū)塊的多個強(qiáng)分頁(步驟408)。于一實施例中,控 制器211自加速區(qū)的區(qū)塊231 23M中選取一目標(biāo)區(qū)塊,自該目標(biāo)區(qū)塊中選取多個 目標(biāo)分頁,判斷是否該些目標(biāo)分頁為強(qiáng)分頁,以及當(dāng)該些目標(biāo)分頁為強(qiáng)分頁時將該 寫入數(shù)據(jù)寫入該些目標(biāo)分頁。當(dāng)控制器212決定該寫入數(shù)據(jù)不為重要數(shù)據(jù)時,控制 器212自多層單元閃存214的正常區(qū)224取得一區(qū)塊(步驟412),并將該寫入數(shù)據(jù)寫入正常區(qū)224的該區(qū)塊的分頁(步驟414),而不區(qū)分該被寫入分頁為弱分頁或強(qiáng)分頁。
圖5為依據(jù)本發(fā)明的交錯式(interleaving)閃存裝置500的區(qū)塊圖。于一實施例中,閃存裝置500包括一控制器501以及兩多層單元閃存502、 504??刂破?01與多層單元閃存502、 504之間耦接一數(shù)據(jù)總線。與圖2的多層單元閃存214相同,多層單元閃存502包括加速區(qū)520及正常區(qū)530,而多層單元閃存504包括加速區(qū)540及正常區(qū)550。加速區(qū)520所包含的區(qū)塊521~52M與加速區(qū)540所包含的相同次序的區(qū)塊541~54M具相對應(yīng)的關(guān)系。同樣的,正常區(qū)530所包含的區(qū)塊531~53N與正常區(qū)550所包含的相同次序的區(qū)塊551~55N具相對應(yīng)的關(guān)系??刂破?01僅使用加速區(qū)520與540的區(qū)塊的強(qiáng)分頁以存取數(shù)據(jù),而控制器501使用正常區(qū)530與550的區(qū)塊的所有分頁以存取數(shù)據(jù)。
控制器501可分別藉芯片使能信號CE1與CE2以分別使能多層單元閃存502、504。當(dāng)控制器501自一主機(jī)接收一寫入數(shù)據(jù),控制器501如方法400般判斷是否該寫入數(shù)據(jù)為重要數(shù)據(jù)。當(dāng)寫入數(shù)據(jù)為重要數(shù)據(jù)時,控制器501將寫入數(shù)據(jù)寫入多層單元閃存502及504的加速區(qū)520及540的次序相對應(yīng)的區(qū)塊的對應(yīng)分頁,而當(dāng)寫入數(shù)據(jù)不為重要數(shù)據(jù)時,控制器501將寫入數(shù)據(jù)寫入多層單元閃存502及504的正常區(qū)520及540的次序相對應(yīng)的區(qū)塊的對應(yīng)分頁。由于只有一個數(shù)據(jù)總線以傳送寫入數(shù)據(jù),控制器501以交錯的方式輪流使能多層單元閃存502、 504,以將寫入數(shù)據(jù)寫入多層單元閃存502及504的的次序相對應(yīng)的區(qū)塊的對應(yīng)分頁。
于一實施例中,控制器501將寫入數(shù)據(jù)的奇數(shù)區(qū)段(sector)寫入多層單元閃存502的加速區(qū)520的第X區(qū)塊第Y強(qiáng)分頁,且該控制器501接著將寫入數(shù)據(jù)的偶數(shù)區(qū)段寫入多層單元閃存504的加速區(qū)540的第X區(qū)塊第Y強(qiáng)分頁。于另一實施例中,控制器501將寫入數(shù)據(jù)的奇數(shù)字節(jié)(byte)寫入多層單元閃存502的加速區(qū)520的第X區(qū)塊第Y強(qiáng)分頁,且該控制器501接著將寫入數(shù)據(jù)的偶數(shù)字節(jié)寫入多層單元閃存504的加速區(qū)540的第X區(qū)塊第Y強(qiáng)分頁。此外,為了避免加速區(qū)520的區(qū)塊521~52M及加速區(qū)540的區(qū)塊541~54M與正常區(qū)530的區(qū)塊531~53N及正常區(qū)550的區(qū)塊551~55N互相干擾,因此控制器501對加速區(qū)520的區(qū)塊521~52M及加速區(qū)540的區(qū)塊541-54M獨立進(jìn)行磨損平均(wear-leveling),并對正常區(qū)530的區(qū)塊531~53N及正常區(qū)550的區(qū)塊551 55N獨立進(jìn)行磨損平均。
12圖6為依據(jù)本發(fā)明的多頻道(multi-channel)閃存裝置600的區(qū)塊圖。于一實施例中,閃存裝置600包括一控制器601以及兩多層單元閃存602、 604??刂破?01與多層單元閃存602、 604之間分別耦接數(shù)據(jù)總線D1、 D2。與圖2的多層單元閃存214相同,多層單元閃存602包括加速區(qū)620及正常區(qū)630,而多層單元閃存604包括加速區(qū)640及正常區(qū)650。加速區(qū)620所包含的區(qū)塊621-62M與加速區(qū)620所包含的相同次序的區(qū)塊641 64M具相對應(yīng)的關(guān)系。同樣的,正常區(qū)630所包含的區(qū)塊631 63N與正常區(qū)650所包含的相同次序的區(qū)塊651 65N具相對應(yīng)的關(guān)系??刂破?01僅使用加速區(qū)620與640的區(qū)塊的強(qiáng)分頁以存取數(shù)據(jù),而控制器601使用正常區(qū)630與650的區(qū)塊的所有分頁以存取數(shù)據(jù)。
控制器601可分別藉數(shù)據(jù)總線Dl與D2以分別將寫入數(shù)據(jù)傳送至多層單元閃存602、 604。當(dāng)控制器601自一主機(jī)接收一寫入數(shù)據(jù),控制器601如方法400般判斷是否該寫入數(shù)據(jù)為重要數(shù)據(jù)。當(dāng)寫入數(shù)據(jù)為重要數(shù)據(jù)時,控制器601將寫入數(shù)據(jù)寫入多層單元閃存602及604的加速區(qū)620及640的次序相對應(yīng)的區(qū)塊的對應(yīng)分頁,而當(dāng)寫入數(shù)據(jù)不為重要數(shù)據(jù)時,控制器601將寫入數(shù)據(jù)寫入多層單元閃存602及604的正常區(qū)620及640的次序相對應(yīng)的區(qū)塊的對應(yīng)分頁。控制器601以交錯的方式輪流傳送部份寫入數(shù)據(jù)至多層單元閃存602、 604,以將寫入數(shù)據(jù)寫入多層單元閃存602及604的次序相對應(yīng)的區(qū)塊的對應(yīng)分頁。
于一實施例中,控制器601將寫入數(shù)據(jù)的奇數(shù)區(qū)段(sector)寫入多層單元閃存602的加速區(qū)620的第X區(qū)塊第Y強(qiáng)分頁,且該控制器601接著將寫入數(shù)據(jù)的偶數(shù)區(qū)段寫入多層單元閃存604的加速區(qū)640的第X區(qū)塊第Y強(qiáng)分頁。于另一實施例中,控制器601將寫入數(shù)據(jù)的奇數(shù)字節(jié)(byte)寫入多層單元閃存602的加速區(qū)620的第X區(qū)塊第Y強(qiáng)分頁,且該控制器601接著將寫入數(shù)據(jù)的偶數(shù)字節(jié)寫入多層單元閃存604的加速區(qū)640的第X區(qū)塊第Y強(qiáng)分頁。此外,為了避免加速區(qū)620的區(qū)塊621~62M及加速區(qū)640的區(qū)塊641~64M與正常區(qū)630的區(qū)塊631~63N及正常區(qū)650的區(qū)塊651~65N互相干擾,因此控制器601對加速區(qū)620的區(qū)塊621~52M及加速區(qū)640的區(qū)塊641~64M獨立進(jìn)行磨損平均(wear-leveling),并對正常區(qū)630的區(qū)塊631 63N及正常區(qū)650的區(qū)塊651~65N獨立進(jìn)行磨損平均。
圖7為依據(jù)本發(fā)明的多頻道(multi-channel)兼交錯式(interleaving)閃存裝置700的區(qū)塊圖。于一實施例中,閃存裝置700包括一控制器701,兩個加速多層單元閃存720、 740,以及兩個多層單元閃存730、 750??刂破?01與多層單元閃存720、730之間耦接數(shù)據(jù)總線D1,而控制器701與多層單元閃存740、 750之間耦接數(shù)據(jù)總線D2。加速多層單元閃存720所包含的區(qū)塊721 72M與加速多層單元閃存740所包含的相同次序的區(qū)塊741~74M具相對應(yīng)的關(guān)系。同樣的,多層單元閃存730所包含的區(qū)塊731~73N與多層單元閃存750所包含的相同次序的區(qū)塊751~75N具相對應(yīng)的關(guān)系??刂破?01僅使用加速多層單元閃存720、 740的區(qū)塊的強(qiáng)分頁以存取數(shù)據(jù),而控制器701使用多層單元閃存730、 750的區(qū)塊的所有分頁以存取數(shù)據(jù)。
控制器701可藉芯片使能信號CE1以使能多層單元閃存720、 740,并藉芯片使能信號CE2以使能多層單元閃存730、 750。當(dāng)芯片使能信號CE1被使能時,控制器701可藉數(shù)據(jù)總線Dl將寫入數(shù)據(jù)傳送至加速多層單元閃存720;當(dāng)芯片使能信號CE2被使能時,控制器701可藉數(shù)據(jù)總線D2將寫入數(shù)據(jù)傳送至加速多層單元閃存740。當(dāng)芯片使能信號CE1被使能時,控制器701可藉數(shù)據(jù)總線Dl將寫入數(shù)據(jù)傳送至多層單元閃存730;當(dāng)芯片使能信號CE2被使能時,控制器701可藉數(shù)據(jù)總線D2將寫入數(shù)據(jù)傳送至多層單元閃存750。當(dāng)控制器701自一主機(jī)接收一寫入數(shù)據(jù),控制器701如方法400般判斷是否該寫入數(shù)據(jù)為重要數(shù)據(jù)。當(dāng)寫入數(shù)據(jù)為重要數(shù)據(jù)時,控制器701將寫入數(shù)據(jù)寫入加速多層單元閃存720及740的次序相對應(yīng)的區(qū)塊的對應(yīng)分頁,而當(dāng)寫入數(shù)據(jù)不為重要數(shù)據(jù)時,控制器701將寫入數(shù)據(jù)寫入多層單元閃存730及750的次序相對應(yīng)的區(qū)塊的對應(yīng)分頁。
于一實施例中,控制器701將寫入數(shù)據(jù)的奇數(shù)區(qū)段(sector)寫入加速多層單元閃存720的第X區(qū)塊第Y強(qiáng)分頁,且該控制器701接著將寫入數(shù)據(jù)的偶數(shù)區(qū)段寫入加速多層單元閃存740的第X區(qū)塊第Y強(qiáng)分頁。于另一實施例中,控制器701將寫入數(shù)據(jù)的奇數(shù)字節(jié)(byte)寫入加速多層單元閃存720的第X區(qū)塊第Y強(qiáng)分頁,且該控制器701接著將寫入數(shù)據(jù)的偶數(shù)字節(jié)寫入加速多層單元閃存740的第X區(qū)塊第Y強(qiáng)分頁。此外,為了避免閃存720的區(qū)塊721~72M及閃存740的區(qū)塊741 74M與閃存730的區(qū)塊731-73N及閃存750的區(qū)塊751~75N互相干擾,因此控制器701對閃存720的區(qū)塊721 72M及閃存740的區(qū)塊741 74M獨立進(jìn)行磨損平均(wear-leveling),并對閃存730的區(qū)塊731~73N及閃存750的區(qū)塊751 75N獨立進(jìn)行磨損平均。圖2的閃存裝置204是將一多層單元閃存214的多個區(qū)塊區(qū)分為加速區(qū)222及224,而控制器212僅使用加速區(qū)222的區(qū)塊231~23M的強(qiáng)分頁以存儲數(shù)據(jù),藉此提高加速區(qū)222的數(shù)據(jù)存取速度,從而顯著提升加速區(qū)222的效能。當(dāng)閃存裝置同時具有兩個以上的多層單元閃存時,控制器亦可僅單一多層單元閃存的區(qū)塊的強(qiáng)分頁以存儲數(shù)據(jù),而提升該多層單元閃存的效能。圖8為依據(jù)本發(fā)明的閃存裝置804的區(qū)塊圖。于一實施例中,閃存裝置804包括控制器812、加速多層單元閃存822、以及多層單元閃存824??刂破?12僅使用加速多層單元閃存822的區(qū)塊831~83M的強(qiáng)分頁以存儲數(shù)據(jù),藉此提高加速多層單元閃存822的數(shù)據(jù)存取速度,從而顯著提升加速多層單元閃存822的效能。反之,控制器812使用多層單元閃存824的區(qū)塊S51 85N的所有分頁以存儲數(shù)據(jù),藉此提高多層單元閃存824的數(shù)據(jù)存儲容量。因此,閃存裝置804仍可如圖2的閃存裝置204般,同時具有兩種不同性質(zhì)的多層單元閃存822、 824的優(yōu)點。
雖然本發(fā)明已以較佳實施例揭露如上,然其并非用以限定本發(fā)明,任何熟習(xí)此項技術(shù)者,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可作些許的更動與潤飾,因此本發(fā)明的保護(hù)范圍當(dāng)以權(quán)利要求所界定的為準(zhǔn)。
權(quán)利要求
1.一種閃存裝置,耦接至一主機(jī),包括一多層單元閃存,包括一加速區(qū)及一正常區(qū),該加速區(qū)包括多個第一區(qū)塊,該正常區(qū)包括多個第二區(qū)塊,且每一該些第一區(qū)塊及每一該些第二區(qū)塊皆包括多個分頁,其中該些分頁被區(qū)分為具有高數(shù)據(jù)讀寫次數(shù)的強(qiáng)分頁與具有低數(shù)據(jù)讀寫次數(shù)弱分頁;以及一控制器,自該主機(jī)接收欲寫入該閃存裝置的一寫入數(shù)據(jù),判斷是否該寫入數(shù)據(jù)為重要數(shù)據(jù),當(dāng)該寫入數(shù)據(jù)為重要數(shù)據(jù)時將該寫入數(shù)據(jù)寫入該加速區(qū)的該些第一區(qū)塊的強(qiáng)分頁,以及當(dāng)該寫入數(shù)據(jù)不為重要數(shù)據(jù)時將該寫入數(shù)據(jù)寫入該正常區(qū)的該些第二區(qū)塊的分頁。
2. 如權(quán)利要求1所述的閃存裝置,其特征在于,該主機(jī)使用的邏輯地址范圍依據(jù)一界限值被區(qū)分為一第一邏輯地址范圍與一第二邏輯地址范圍,而該控制器自該主機(jī)接收該寫入數(shù)據(jù)的一邏輯地址,并比較該邏輯地址與該界限值的大小以判斷是否該寫入數(shù)據(jù)為重要數(shù)據(jù)。
3. 如權(quán)利要求2所述的閃存裝置,其特征在于,當(dāng)該邏輯地址小于該界限值時,該控制器判斷該寫入數(shù)據(jù)為重要數(shù)據(jù)。
4. 如權(quán)利要求2所述的閃存裝置,其特征在于,該控制器維護(hù)一第一地址鏈接表以記錄該加速區(qū)的該些第一區(qū)塊的實體地址與該第一邏輯區(qū)間的邏輯地址的對應(yīng)關(guān)系,而該控制器維護(hù)一第二地址鏈接表以記錄該正常區(qū)的該些第二區(qū)塊的實體地址與該第二邏輯區(qū)間的邏輯地址的對應(yīng)關(guān)系。
5. 如權(quán)利要求1所述的閃存裝置,其特征在于,該控制器對該加速區(qū)所包括的該些第一區(qū)塊獨立進(jìn)行磨損平均,而該控制器對該正常區(qū)所包括的該些第二區(qū)塊獨立進(jìn)行磨損平均。
6. 如權(quán)利要求1所述的閃存裝置,其特征在于,當(dāng)該寫入數(shù)據(jù)為重要數(shù)據(jù)時,該控制器自該些第一區(qū)塊中選取一目標(biāo)區(qū)塊,自該目標(biāo)區(qū)塊中選取多個目標(biāo)分頁,判斷是否該些目標(biāo)分頁為強(qiáng)分頁,以及當(dāng)該些目標(biāo)分頁為強(qiáng)分頁時將該寫入數(shù)據(jù)寫入該些目標(biāo)分頁。
7. 如權(quán)利要求1所述的閃存裝置,其特征在于,當(dāng)該寫入數(shù)據(jù)為該主機(jī)的系統(tǒng)數(shù)據(jù)時,該寫入數(shù)據(jù)為重要數(shù)據(jù);而當(dāng)該寫入數(shù)據(jù)為使用者數(shù)據(jù)時,該寫入數(shù)據(jù) 不為重要數(shù)據(jù)。
8. —種閃存裝置的運作方法,其中該閃存裝置耦接至一主機(jī),該方法包括 區(qū)分一多層單元閃存的多個區(qū)塊為一加速區(qū)所包括的多個第一區(qū)塊及一正常區(qū)所包括多個第二區(qū)塊,其中每一該些第一區(qū)塊及每一該些第二區(qū)塊皆包括多個分 頁,且該些分頁被區(qū)分為具有高數(shù)據(jù)讀寫次數(shù)的強(qiáng)分頁與具有低數(shù)據(jù)讀寫次數(shù)弱分頁;自該主機(jī)接收欲寫入該閃存裝置的一寫入數(shù)據(jù); 判斷是否該寫入數(shù)據(jù)為重要數(shù)據(jù);當(dāng)該寫入數(shù)據(jù)為重要數(shù)據(jù)時,將該寫入數(shù)據(jù)寫入該加速區(qū)的該些第一區(qū)塊的 強(qiáng)分頁;以及當(dāng)該寫入數(shù)據(jù)不為重要數(shù)據(jù)時,將該寫入數(shù)據(jù)寫入該正常區(qū)的該些第二區(qū)塊 的分頁。
9. 如權(quán)利要求8所述的閃存裝置的運作方法,其特征在于,該方法更包括依 據(jù)一界限值區(qū)分該主機(jī)使用的邏輯地址范圍為一第一邏輯地址范圍與一第二邏輯 地址范圍,而判斷該寫入數(shù)據(jù)是否為重要數(shù)據(jù)的步驟更包括自該主機(jī)接收該寫入數(shù)據(jù)的一邏輯地址;以及比較該邏輯地址與該界限值的大小以判斷是否該寫入數(shù)據(jù)為重要數(shù)據(jù)。
10. 如權(quán)利要求9所述的閃存裝置的運作方法,其特征在于,當(dāng)該邏輯地址小 于該界限值時,該控制器判斷該寫入數(shù)據(jù)為重要數(shù)據(jù)。
11. 如權(quán)利要求9所述的閃存裝置的運作方法,其特征在于,該方法更包括 維護(hù)一第一地址鏈接表以記錄該加速區(qū)的該些第一區(qū)塊的實體地址與該第一邏輯區(qū)間的邏輯地址的對應(yīng)關(guān)系;以及維護(hù)一第二地址鏈接表以記錄該正常區(qū)的該些第二區(qū)塊的實體地址與該第二 邏輯區(qū)間的邏輯地址的對應(yīng)關(guān)系。
12. 如權(quán)利要求8所述的閃存裝置的運作方法,其特征在于,該方法更包括 對該加速區(qū)所包括的該些第一區(qū)塊獨立進(jìn)行磨損平均;以及 對該正常區(qū)所包括的該些第二區(qū)塊獨立進(jìn)行磨損平均。
13. 如權(quán)利要求8所述的閃存裝置的運作方法,其特征在于,當(dāng)該寫入數(shù)據(jù)為重要數(shù)據(jù)時,將該寫入數(shù)據(jù)寫入該加速區(qū)的該些第一區(qū)塊的強(qiáng)分頁的步驟包括自該些第一區(qū)塊中選取一目標(biāo)區(qū)塊;自該目標(biāo)區(qū)塊中選取多個目標(biāo)分頁;判斷是否該些目標(biāo)分頁為強(qiáng)分頁;以及當(dāng)該些目標(biāo)分頁為強(qiáng)分頁時,將該寫入數(shù)據(jù)寫入該些目標(biāo)分頁。
14. 如權(quán)利要求8所述的閃存裝置的運作方法,其特征在于,當(dāng)該寫入數(shù)據(jù)為該主機(jī)的系統(tǒng)數(shù)據(jù)時,該寫入數(shù)據(jù)為重要數(shù)據(jù);而當(dāng)該寫入數(shù)據(jù)為使用者數(shù)據(jù)時,該寫入數(shù)據(jù)不為重要數(shù)據(jù)。
15. —種閃存裝置,耦接至一主機(jī),包括多個多層單元閃存,每一該些多層單元閃存包括一加速區(qū)及一正常區(qū),該些加速區(qū)及該些正常區(qū)均包括多個區(qū)塊,每一該些區(qū)塊皆包括多個分頁,其中該些分頁被區(qū)分為具有高數(shù)據(jù)讀寫次數(shù)的強(qiáng)分頁與具有低數(shù)據(jù)讀寫次數(shù)弱分頁;以及一控制器,自該主機(jī)接收欲寫入該閃存裝置的一寫入數(shù)據(jù),判斷是否該寫入數(shù)據(jù)為重要數(shù)據(jù),當(dāng)該寫入數(shù)據(jù)為重要數(shù)據(jù)時將該寫入數(shù)據(jù)寫入該些多層單元閃存的該些加速區(qū)的相同次序的區(qū)塊的強(qiáng)分頁,以及當(dāng)該寫入數(shù)據(jù)不為重要數(shù)據(jù)時將該寫入數(shù)據(jù)寫入該些多層單元閃存的該些正常區(qū)的相同次序的區(qū)塊的分頁。
16. 如權(quán)利要求15所述的閃存裝置,其特征在于,該些多層單元閃存包括一第一多層單元閃存及一第二多層單元閃存,且當(dāng)該寫入數(shù)據(jù)為重要數(shù)據(jù)時,該控制器將該寫入數(shù)據(jù)的奇數(shù)區(qū)段寫入該第一多層單元閃存的加速區(qū)的一第一強(qiáng)分頁,且該控制器將該寫入數(shù)據(jù)的偶數(shù)區(qū)段寫入該第二多層單元閃存的加速區(qū)的一第二強(qiáng)分頁,其中該第一強(qiáng)分頁與該第二強(qiáng)分頁于該第一多層單元閃存及該第二多層單元閃存的該些加速區(qū)具有相同的次序。
17. 如權(quán)利要求15所述的閃存裝置,其特征在于,該些多層單元閃存包括一第一多層單元閃存及一第二多層單元閃存,且當(dāng)該寫入數(shù)據(jù)為重要數(shù)據(jù)時,該控制器將該寫入數(shù)據(jù)的奇數(shù)字節(jié)寫入該第一多層單元閃存的加速區(qū)的一第一強(qiáng)分頁,且該控制器將該寫入數(shù)據(jù)的偶數(shù)字節(jié)寫入該第二多層單元閃存的加速區(qū)的一第二強(qiáng)分頁,其中該第一強(qiáng)分頁與該第二強(qiáng)分頁于該第一多層單元閃存及該第二多層單元閃存的該些加速區(qū)具有相同的次序。
18. 如權(quán)利要求15所述的閃存裝置,其特征在于,該主機(jī)使用的邏輯地址范圍依據(jù)一界限值被區(qū)分為一第一邏輯地址范圍與一第二邏輯地址范圍,而該控制器 自該主機(jī)接收該寫入數(shù)據(jù)的一邏輯地址,并比較該邏輯地址與該界限值的大小以判 斷是否該寫入數(shù)據(jù)為重要數(shù)據(jù)。
19. 如權(quán)利要求15所述的閃存裝置,其特征在于,該控制器對該些多層單元 閃存的該些加速區(qū)所包括的區(qū)塊獨立進(jìn)行磨損平均,而該控制器對該些多層單元閃 存的該些正常區(qū)所包括的區(qū)塊獨立進(jìn)行磨損平均。
20. 如權(quán)利要求15所述的閃存裝置,其特征在于,該些多層單元閃存與該控 制器之間耦接多個數(shù)據(jù)總線,而該控制器將該寫入數(shù)據(jù)的部份數(shù)據(jù)經(jīng)由該些數(shù)據(jù)總 線分別寫入該些多層單元閃存。
21. 如權(quán)利要求15所述的閃存裝置,其特征在于,該控制器可經(jīng)由多個芯片 使能信號以分別使能該些多層單元閃存,而該控制器依序使能該些多層單元閃存以 將該寫入數(shù)據(jù)的部份數(shù)據(jù)分別寫入該些多層單元閃存。
22. —種閃存裝置,耦接至一主機(jī),包括-一加速多層單元閃存,包括多個第一區(qū)塊,且每一該些第一區(qū)塊包括多個分 頁,其中該些第一區(qū)塊的該些分頁被區(qū)分為具有高數(shù)據(jù)讀寫次數(shù)的強(qiáng)分頁與具有低 數(shù)據(jù)讀寫次數(shù)弱分頁;以及一多層單元閃存,包括多個第二區(qū)塊,且每一該些第二區(qū)塊皆包括多個分頁;以及一控制器,自該主機(jī)接收欲寫入該閃存裝置的一寫入數(shù)據(jù),判斷是否該寫入 數(shù)據(jù)為重要數(shù)據(jù),當(dāng)該寫入數(shù)據(jù)為重要數(shù)據(jù)時將該寫入數(shù)據(jù)寫入該加速多層單元閃 存的該些第一區(qū)塊的強(qiáng)分頁,以及當(dāng)該寫入數(shù)據(jù)不為重要數(shù)據(jù)時將該寫入數(shù)據(jù)寫入 該多層單元閃存的該些第二區(qū)塊的分頁。
23. 如權(quán)利要求22所述的閃存裝置,其特征在于,該主機(jī)使用的邏輯地址范 圍依據(jù)一界限值被區(qū)分為一第一邏輯地址范圍與一第二邏輯地址范圍,而該控制器 自該主機(jī)接收該寫入數(shù)據(jù)的一邏輯地址,并比較該邏輯地址與該界限值的大小以判 斷是否該寫入數(shù)據(jù)為重要數(shù)據(jù)。
24. 如權(quán)利要求23所述的閃存裝置,其特征在于,當(dāng)該邏輯地址小于該界限 值時,該控制器判斷該寫入數(shù)據(jù)為重要數(shù)據(jù)。
25. 如權(quán)利要求23所述的閃存裝置,其特征在于,該控制器維護(hù)一第一地址鏈接表以記錄該加速區(qū)的該些第一區(qū)塊的實體地址與該第一邏輯區(qū)間的邏輯地址 的對應(yīng)關(guān)系,而該控制器維護(hù)一第二地址鏈接表以記錄該正常區(qū)的該些第二區(qū)塊的 實體地址與該第二邏輯區(qū)間的邏輯地址的對應(yīng)關(guān)系。
26. 如權(quán)利要求22所述的閃存裝置,其特征在于,該控制器對該加速多層單 元閃存所包括的該些第一區(qū)塊獨立進(jìn)行磨損平均,而該控制器對該多層單元閃存所 包括的該些第二區(qū)塊獨立進(jìn)行磨損平均。
27. 如權(quán)利要求22所述的閃存裝置,其特征在于,當(dāng)該寫入數(shù)據(jù)為重要數(shù)據(jù) 時,該控制器自該些第一區(qū)塊中選取一目標(biāo)區(qū)塊,自該目標(biāo)區(qū)塊中選取多個目標(biāo)分 頁,判斷是否該些目標(biāo)分頁為強(qiáng)分頁,以及當(dāng)該些目標(biāo)分頁為強(qiáng)分頁時將該寫入數(shù) 據(jù)寫入該些目標(biāo)分頁。
28. 如權(quán)利要求22所述的閃存裝置,其特征在于,當(dāng)該寫入數(shù)據(jù)為該主機(jī)的 系統(tǒng)數(shù)據(jù)時,該寫入數(shù)據(jù)為重要數(shù)據(jù);而當(dāng)該寫入數(shù)據(jù)為使用者數(shù)據(jù)時,該寫入數(shù) 據(jù)不為重要數(shù)據(jù)。
全文摘要
本發(fā)明提供一種閃存裝置及其運作方法。于一實施例中,該閃存裝置耦接至一主機(jī),包括一多層單元閃存以及一控制器。該多層單元閃存包括一加速區(qū)及一正常區(qū),該加速區(qū)包括多個第一區(qū)塊,該正常區(qū)包括多個第二區(qū)塊,且每一該些第一區(qū)塊及每一該些第二區(qū)塊皆包括多個分頁,其中該些分頁被區(qū)分為具有高數(shù)據(jù)讀寫次數(shù)的強(qiáng)分頁與具有低數(shù)據(jù)讀寫次數(shù)弱分頁。該控制器自該主機(jī)接收欲寫入該閃存裝置的一寫入數(shù)據(jù),判斷是否該寫入數(shù)據(jù)為重要數(shù)據(jù),當(dāng)該寫入數(shù)據(jù)為重要數(shù)據(jù)時將該寫入數(shù)據(jù)寫入該加速區(qū)的該些第一區(qū)塊的強(qiáng)分頁,以及當(dāng)該寫入數(shù)據(jù)不為重要數(shù)據(jù)時將該寫入數(shù)據(jù)寫入該正常區(qū)的該些第二區(qū)塊的分頁。
文檔編號G06F12/06GK101676886SQ200910168700
公開日2010年3月24日 申請日期2009年8月28日 優(yōu)先權(quán)日2008年9月17日
發(fā)明者林財成 申請人:慧國(上海)軟件科技有限公司;慧榮科技股份有限公司