201009577 PSPD-2008-0025 28851twf.doc/n 九、發明說明: 【發明所屬之技術領域】 本發明是有_ -種料快閃記憶_ 料傳輸方 法以及使用此方法的快閃記憶體儲存系統及发 特別是有關於於透料—資龍流排^資料至且 有多個快問記憶體晶粒的快閃記憶體晶片的 ς 以及使用此方法的快閃記紐儲存系統及其控制器。】 【先前技術】 數位相機、手機相機與ΜΡ3在這幾年來的 速,使得、;肖費者_存舰的需求也急速增加。由於ς閃 S己憶體(Flash Memm:y)具有資料轉紐 許并 特性’適合可攜式應用,最適合使: 适類可攜式由電池供電的產品上。固態硬碟就是一種以 NAND快閃記憶體作為儲存媒體的儲存装置。 身又來說陕閃圮憶體儲存系統的快閃記情體曰 ㈣)中的快閃記憶體晶粒(_,i分為多個== (umt)’此些早认―般可由—個實聽塊或多個實體區 所組成。,些單元會料為資料區(她峨)與備職 (啊e聽)。歸類為資料區的實體單 令所寫入的有效資料,而制區中的單元是 入指令時替換資料區中的實體單元。具體來說,當= 統巧主機系統的寫入指令而欲對資料區的 只體早7G進仃寫人時’㈣記憶_存系統會從備用區中 201009577 ί·〇ί·ι^υι^-0025 28851twf.doc/n 提取實體單元並且將在資料區中欲更新之實體單元中 ,舊資料與欲寫入的新資料寫入至從備用區中提取的實體 單兀並且將已寫入新資料的實體單元關聯為資料區,並且 將原本資料區的實體單元進行抹除並關聯為備用區。為了 月b,讓主機系統能夠順利地存取以輪替方式儲存資料二實 體單元,快閃記憶體儲存系統會配置邏輯單元以供主機系 統進行存取,其中邏輯單元是根據實體單元以一個或多個 ❿ 1舰塊的大,】、來配置。也就是說,快閃記憶體儲存系統 會建立邏輯-實體對映表,並且在此表中記錄與更新邏輯單 兀與育料區的實體單元之間的對映關係來反映實體單元的 輪替,所以主機系統僅需要針對所提供邏輯單元進行存取 而快閃記憶體儲存系統會依據邏輯_實體對映表來對所對 映的實體單元進行讀取或寫入資料。 然而,在快閃記憶體製程上的進步使得每一實體區塊 的。又冲谷里會越來越大的同時,亦造成上述搬移有效舊資 料的時間會相對的增加,也就是,快閃記憶體儲存系統程 _ 式化(program)快閃記憶體晶粒的時間會隨之增加。為了加 速快閃圮憶體儲存系統寫入速度,目前發展出將多個快閃 記憶體晶粒封裝為一個快閃記憶體晶片並且在寫入大量資 料牯以一交錯程式化(interleave pr〇gram)方式在多個快閃 記憶體晶粒間輪流地寫入資料。具體來說,由於用以傳送 資料至决閃s己憶體晶粒之資料匯流排(data bus)所需的時 間遠低於程式化快閃記憶體晶粒所需的時間,因此一般來 說在每一快閃記憶體晶粒中會配置一個缓衝區(buffer)並 201009577 riru-zuu6-0025 28851twf.doc/n 且當快閃記舰儲㈣統的控制^ 晶粒時資料嫩緣 至快閃記賴晶_實㈣塊巾,其中 粒 ==至實體區塊的期間亦稱為此快閃記== 體。5 ft / ^ a多個㈣記憶體晶㈣快閃記憶 體曰曰片的例子中記憶_存系 為多個子資料、以交錯方式將子資料輪=
至未處於忙翻的㈣記賴晶粒的緩衝區以及再分別地 ^多個子龍寫人至多個實體區塊的方式來縮短寫入 資料所需的時間。 然而’在上述運作過程中會將屬於連續邏輯位, 同-邏輯區塊)的資料分散寫人至屬於不同㈣記憶體晶 粒的多個實體區塊中’因此後續當控制器僅更新屬於其中 -,邏輯區塊的資料時,控制器仍必須同時更新與搬移多 個實體區射的資料,因此會增加寫人資料所需的時間。 此外,因為在更新資料時需對多個實體區塊進行抹除 ㈣㈣’因此會增加實體區塊㈣損叫低侧記憶體儲 存系統的壽命。 【發明内容】 一有鑑於此’本發明提供—種龍傳輸方法,其能夠提 升資料寫入的效率並且能夠減少實體區塊的磨損。 此外’本發明提供-種控制器,其使用上述資料傳輸 方法來傳m其㈣提升資料寫人的效率並且能夠減 7 201009577 raru-W-0025 28851twf.d〇C/n 少實體區塊的磨損。 、、,者,本發明提供一種快閃記憶體儲存系統,其使用 上述貧料傳輸方法來傳輸資料,其能夠提升資料寫 率並且能夠減少實體區塊的磨損。 > 本發明提出一種資料傳輸方法,適用於快閃記憶體儲 存系統,其中此快閃記憶體儲存系統具有多個實體^塊, 而此些實體區塊分組為多個快閃記憶體群組並且此些快 • 記憶體群組是與同一資料匯流排連接。此資料傳輸方法包 括··提供多個邏輯扇區與多個邏輯區塊,其中邏輯扇 是對映邏輯區塊,且邏輯區塊是對映實體區塊;將屬於連 續的邏輯扇區的扇區資料依序地分組成多個區塊資料其 中母一區塊資料是對應其中一個邏輯區塊;以及將屬於同 一個區塊資料的扇區資料傳送與寫入至同一個實體區塊 中Ο 在本發明之一實施例中,上述之資料傳輸方法更包括 以一交錯方式透過資料匯流排以區塊資料為單位將扇區資 .料分別地傳送至快閃記憶體群組中,其中至少部分該些扇 區資料會同步地寫入至該些快閃記憶體群組。 在本發明之一實施例中,上述之每一快閃記憶體群組 是由至少一記憶體晶粒所組成,並且每一記憶體晶粒的實 體區塊的一部分會界定為一備用區,其中屬於同一個區塊 資料的扇區資料會被寫入至從同一個快閃記憶體晶粒的備 用區中所提取的實體區塊中。 在本發明之一實施例中,上述之資料傳輸方法更包括 8 201009577 ι_ 〇上 uwvu-0025 28851twf.doc/n 為每一快閃記憶體晶粒單獨地記錄一邏輯_實體對映表。 在本發明之一實施例中,上述之資料傳輸方法更包括 為每一快閃記憶體晶粒單獨地執行一平均抹損程序。 在本發明之一實施例中,上述之資料傳輸方法更包括 在每一快閃記憶體晶粒中執行一回複製(c〇pyback)指令以 在每一快閃記憶體晶粒的實體區塊之間複製資料。 本發明亦提供一種快閃記憶體儲存系統及其控制 曝器,此快閃§己憶體儲存系統包括多個實體區塊_、至少一資 料匯流排、快取記憶體、連接器以及控制器,其中實體區 塊分組為多個快閃記憶體群組並且資料匯流排是連接至該 些快閃記憶體群組。此控制器是電性連接至上述快取記憶 體、資料匯流排與連接器’並且此控制器包括微處理器單 元以及耦接至微處理器單元的快閃記憶體介面模組、緩衝 記憶體、主機介面模組與記憶體管理模組。特別是,此記 憶體管理模組具有可由上述微處理器單元執行的多個機器 指令以對快閃記憶體完成上述資料傳輸方法。 •在本發明之一實施例中,上述之快閃記憶體儲存系統 為隨身碟、快閃記憶卡或固態硬碟。 本發明因採用將快取記憶體中資料依據邏輯位址以 邏輯區塊為單位進行排列與分組,並且以交錯方式傳送至 快閃記憶體晶片的多個快閃記憶體晶粒中,因此可在快閃 5己憶體儲存系統執行交錯程式化(interleave program)模式 來寫入資料時,將屬於連續邏輯位址的資料集中在同一快 閃記憶體晶粒的實體區塊中,由此提升在後續更新資料時 201009577 ^ifu-zvv^-OOlS 2885 ltwf.doc/n 的寫入速度並且減少實體區塊的抹除次數。 為讓本發明之上述特徵和優點能更明顯易懂,下文特 舉較佳實施例,並配合所附圖式,作詳細說明如下。 【實施方式】 的概實施例繪示快閃記憶體儲存系統 的概要方免圖3月參照圖i,快閃記憶體儲存系統⑽ ❹ 括控制器(亦稱控制器系統)110、連接器12 ⑽以及快閃記憶體晶片(flashme贿y ehip)⑽取錢體 通常快閃記憶體儲存系統100會與 使用,以使主機系統20〇 呪〇〇起 系統100或從快啊仲=讀寫人至快閃記憶體儲存 實施例中,快閃刚中讀取資料。在本 State D,ve,SSD)〇^^ ^ t«(S〇lid 中快閃記憶體儲存夺统1〇〇、、疋*本發明另一實施例 控制器uo;:;=:可以是記憶卡或隨身碟。 機械指令以配合連接哭j體型式或_型式實作的多個 體晶片H0來進行資二二快取記憶體130與快閃記憶 器110包括微處理器單」子、讀取與抹除等運作。控制 閃記憶體介面模組1兀j0a、記憶體管理模組ll〇b、快 組110e。 C、緩衝記憶體11〇d與主機介面模 微處理器單元u 閃記憶體介面模組u〇a =與記憶體管理模組ll〇b、快 組ilOe等協同合作 /衝纪憶體與主機介面模 仃快柯記憶體儲存系統卿的各種 28851twf.doc/n 201009577 Γ OJTJL/-/-V/V/O-0025 運作。 記憶體管理模組議是耗接至微處理器單元㈣。 記憶體管理模組n〇b具有可由微處理器單元i舰執行 多個機器指令以管理快閃記憶體晶片_,例如平均磨 損、區塊管理功能、維護邏輯-實體對映表(卿_她 二特別是’在本發明實施例中,記憶體 可完成根據本實施例的資料傳輸步驟 ❹ 在本實施例中’記憶體管理模組11%是以一物體型式 例如以程式語言撰寫程式相關機械 ^並讀存雜式記龍(例如,唯讀記龍(Read⑽y 體ΓΓίΓ!!)财作記紐管理触膽。#快閃記憶 指令會間接地_個機11 51留-+戰至綾衝憶體U〇d中並且由微處理 二^、+、工a來執行或直接由微處理器單元隱來執行以 =成上述平均磨損功能、壞區塊管理魏、維護邏輯 能等° _是’㈣器ug藉由執行記憶體 例的械指令絲完絲據本發明實施 在本發明另—實施例中,記憶體管理模組110b的機械 亦可以勒體型式儲存於快閃記憶體晶片14〇的特定區 ^如’快_憶體中專用於存放系統資料的系統區) 5樣的,當快閃記憶體儲存系統1〇〇運作 细莫組mb的多個機器指令會被載入至緩衝;= π 201009577 r oriy-zi/uo-0025 2885 ltwf.doc/n ll〇d中並且由微處理器單元UOa來執行。此外,在本發 明另-實施例中記憶體管理模組職亦可以—硬體型^ 實作在控制器110中。 决閃η己隐體w面模組u〇c是耗接至微處理器單元 110a並且用以存取快閃記憶體晶片14〇。也就是欲寫入 至快閃記憶體晶片140的資料會經由快閃記憶體介面模組 110c轉換為快閃§己憶體晶片mo所能接受的格式。 緩衝記憶體ii〇d是耦接至微處理器單元u〇a並且用 以暫時地儲存系統資料(例如邏輯_實體對映表)或者主機 系統200所讀取或寫入的資料。在本實施例中,緩衝記憶 體ii〇d為靜態隨機存取記憶體(statie rand〇m access memory,SRAM)。然而’必須瞭解的是,本發明不限於此, 動態隨機存取記憶體(Dynamic Rand()m Aeeess DRAM)、磁阻式記憶體(Magnet〇resistive Ran(join Access Memoty,MRAM)、相變化記憶體(Phase Change Rand()m
Access Memory,PRAM)或其他適合的記憶體亦可應用於 本發明。
主機介面模組ll〇e是耦接至微處理器單元11〇a並且 用以接收與識別主機系統200所傳送的指令。也就是,主 機系統200所傳送的指令與資料會透過主機介面模組ll〇e 來傳送至微處理器單元ll〇a。在本實施例中,主機介面模 組110e為PCI Express介面。然而,必須瞭解的是本發明 不限於此,主機介面模組11〇6亦可以是USB介面、IEEE 1394介面、SD介面、MS介面、MMC介面、SATA介面、 12 201009577 ir〇r^uU(}-〇〇25 28851twf.doc/n PATA "面、CF介面、ide介面或其他適合的資料傳輪介 面特別疋,主機介面模組11〇e會與連接器12〇相對應。 也就是,主機介面模組11〇e必須與連接器12〇互相搭配。 此外,雖未繪示於本實施例,但控制器11〇可更包括 錯誤校正模組與電源管理模組等用於控制快閃記憶體晶片 的一般功能模組。 連接器120用以透過匯流排3〇〇連接主機系統2〇〇。 φ 在本實施例中,連接器120為PCI Express連接器。然而, 必須瞭解的是本發明不限於此,連接器12〇亦可以是USB 連接器、IEEE 1394連接器、SD連接器、Ms連接器、MMc 連接器、SATA連接器、CF連接器、IDE連接器、pATA 連接器或其他適合的連接器。 快取記憶體130是電性連接至控制器11(),並且用以 暫存主機系統200所傳送的資料,以提升快閃記憶體儲存 系統100的存取速度。在本實施例中,快取記憶體為 動態隨機存取記憶體(Dynamic Random Aeeess Memoiy, ® DRAM)。然而,本發明不限於此,在本發明另一實施例中 亦可使用雙倍資料傳輸率動態隨機存取記憶體(D〇uble Data Rate DRAM,DDR DRAM)作為快取記憶體 130。 快閃記憶體晶片140是電性連接至控制器no並且用 以儲存資料。在本實施中快閃記憶體晶片14〇為多層記憶 胞(Multi Level Cell,MLC)NAND快閃記憶體晶片。然而, 必須瞭解的是’本發明不限於此。在本發明另一實施例中, 單層記憶胞(Single Level Cell,SLC)NAND快閃記憶體晶 13 201009577 r or v3-0025 2885 ltwf.doc/n 片亦可應用於本發明。 圖2是根據本發明實施例繪示快閃記憶體晶片的方塊 圖。在本實施例中快閃記憶體晶片140包括第一快閃記憶 體晶粒(flash memory die)142、第二快閃記憶體晶粒144、 第三快閃記憶體晶粒146、第四快閃記憶體晶粒148以及 用以在控制器110與快閃記憶體晶片140之間傳輸資料的 資料匯流排149。在本實施例中,第一快閃記憶體晶粒 • 142、第二快閃記憶體晶粒144、第三快閃記憶體晶粒146、 第四快閃記憶體晶粒148是分別地由一晶片致能(chip enable,CE)腳位(未繪示)來致能。然而,本發明不限於此, 在本發明另一實施例中亦可以一個CE腳位致能多個快閃 記憶體晶粒,此時以同一個CE腳位致能的多個快閃記憶 體晶粒稱之為快閃記憶體群組。在本實施例中,由於第一 快閃記憶體晶粒142、第二快閃記憶體晶粒144、第三快閃 記憶體晶粒146的第四快閃記憶體晶粒148是分別以一晶 片致能腳位來致能,因此在本實施例中一個快閃記憶體晶 • 粒為一個快閃記憶體群組。 為了管理上的方便,快閃記憶體儲存系統100的控制 器110會將第一快閃記憶體晶粒142、第二快閃記憶體晶 粒144、第三快閃記憶體晶粒146與第四快閃記憶體晶粒 148劃分為多個實體單元(physical unit)。一般來說,實體 單元可包括一個實體區塊或多個實體區塊,並且以實體單 元為單位來進行實體區塊的管理。在本實施例中一個實體 單元為一個實體區塊,因此在本實施例中是以實體區塊為 14 201009577 r or xy^\j\j0~0025 28851twf,doc/n 單位來進行管理。錢’本發明不限於此,在本發明另一 實施例中-個,閃記憶體晶粒可由多個區塊面(細〇所組 成’並且實體單7L是由屬於不_塊面的多個實體區塊所 組成’此時會以多區塊面存取模式來進行存取。
實體區塊為電路上抹除快閃記憶體的最小單元。亦 即’每-實體區塊含有最小數目之—併被抹除之記憶胞。 每-實體區塊通常會分割為數個頁面(page),並且頁面為 程式化(program)快閃記憶體的最小單元。但要特別說明的 是於有些不同的快閃記憶體設計,最小的程式化 可 為一個扇區(sector)。也就是說,一個頁面中有多個扇區並 以一個扇區為程式化的最小單元。換言之,在本實施例中 頁面為寫入資料或讀取資料的最小單元。每—頁面通常包 括使用者資料區D與冗餘區R。使用者資料區用以儲存使 用者的資料,而冗餘區用以儲存系統的資料(例如,錯誤校 正碼(error correcting code,ECC))。 為對應於磁碟驅動器的扇區(sector)大小,—般而言, 使用者資料區D通常為512位元組,而冗餘區R通常為 16位元組。也就是,一個頁面為一個扇區。然而,亦可以 多個扇區形成一個頁面。在本實施例中,快閃記憶體區塊 的一個頁面是包括4個扇區。 一般而言’實體區塊可由任意數目的頁面所組成,例 如64個頁面、128個頁面、256個頁面等。在本實施例中, 實體區塊是包括256個頁面。此外,在第一快閃記憶體晶 粒142、第二快閃記憶體晶粒144、第三快閃記憶體晶粒 15 201009577 raru-^uus-0025 28851twf.doc/n =6 ^四快閃記憶體晶粒148 t的實體區塊 =數個區域(職)’以區域來管理記憶體某種= 地操作以増加操作執行的平行程度且簡“理 的眚Ξ「3ΐ是根據本發明實施例繪示快閃記憶體晶片140 的實體區塊的概要示意圖。 曰乃 必須瞭解的是,在此描述快閃記憶體 取”、“搬移,,、“交換”、“替換,,、“輪替, 等詞來操作快閃記憶體晶片14G中的實體 射 概念。也就是說,快閃記憶體之實體區塊的實際 更動,岐邏輯上對快閃記紐的實舰塊進 、’ =提的是’下述實體區塊的運作是控制器11G執^記 體官理模組110b的機械指令所完成。 仃記隐 請參照圖3A’在本發明實施例中,為 式化(即,寫人)資料,控㈣11G會 f A率地程 ^ 14? ^ . 將第快閃記憶體晶 ❹ 46144 ' ’、第四决閃δ己憶體晶粒M8中的實體區塊在邏輯上界 定為系統區202、資料區204與備用區2〇6。如前所述,第 -快閃記憶體晶粒142、第二賴記憶體晶粒144、第三快 閃記憶體晶粒146與第四關記憶體晶粒148的實體區塊 會以輪替方式提供域祕·_存資料目此控制器 110會提供多個邏輯位址給主機系統200以進行資料存 取,並且透過維護邏輯-實體對映表來記錄邏輯位址所對映 的實體區塊。 16 201009577 ^tu-zu^〇〇25 28851twf.d〇c/n 具體來說,在本實施例中快閃記憶體晶片140是以實 體區塊為單位來進行管理,因此控制器110是以邏輯區塊 210為單位來管理邏輯-實體對映表。此外,主機系統200 是以扇區為單位來存取資料,因此控制器110會提供以邏 輯扇區為單位的邏輯位址給主機系統200進行存取,並且 控制器110會將以邏輯扇區為單位的邏輯位址轉換為以邏 輯區塊為單位的邏輯位址由此依據所建立與維護的邏輯_ φ 實體對映表來在快閃記憶體晶粒的實體區塊的頁面位址中 進行資料的存取。 系統區202中的實體區塊用以記錄系統資料,此系統 資料包括關於每一快閃記憶體晶粒中實體區塊被劃分的區 域數、每一區域的實體區塊數、每一實體區塊的頁面數、 記錄邏輯位址與實體位址對映關係的邏輯-實體對映表 (logical-physical mapping table)等。 資料區204中的實體區塊用以儲存使用者的資料,— 般來說就是主機系統2〇〇所存取之邏輯區塊210所對映的 β 實體區塊。 備用區206中的實體區塊是用以替換資料區2〇4中的 實體區塊,因此在備用區2〇6中的實體區塊為空或可使用 的區塊’即無記錄資料或標記為已沒用的無效資料。 特別是,資料區204與備用區206的實體區塊會以輪 替方式來儲存主機系統200對快閃記憶體儲存系統1〇〇所 寫入的資料。具體來說,由於在快閃記憶體中每個實體位 址僅能程式化一次,因此若要對已寫過資料的位址再次寫 17 201009577 r οη-#-ζυυ8-0025 2885 ltwf.doc/n 入資料時’必須先執行抹除(erase)的動作。然而,如前所 述快閃記憶體寫入單位為頁面,其是小於快閃記憶體的抹 除單元(即,實體區塊)。因此,若要執行實體區塊的抹除 動作時,必須先將欲抹除實體區塊中的有效頁面的資料複 製至其它實體區塊後才可進行實體區塊的抹除動作。 圖3B是根據本發明實施例繪示實體區塊的運作示意 圖。
請同時參照圖3A與3B,例如,當主機系統欲寫入資 料至邏輯區塊LB時,假設控制器11〇透過邏輯-實體對映 表得知邏輯區塊LB目前是對映資料區2〇4中的實體區塊 PD。因此,快閃記憶體儲存系統會對實體區塊中 的資料進行更新,期間,控制器11〇會從備用區2〇6中提 取實體區塊SD來取代資料區2〇4的實體區塊pD。然而, 當將新資料寫人至實體區塊SD的同時,不會立刻將實體 區塊PD中的王有效資料都搬移至實體區塊而抹除 實體區塊PD。具體來說,控制器11〇會將實體區塊pD中 欲寫入頁面位址之前的有效資料(即,頁pG與ρι)複製至 實體區塊SD(如圖3B的⑻),並且將新資料寫入至實體區 塊SD(T實體區塊SD的頁p2與p3)中(如圖犯的⑽。 此日部分有效舊資料與新資料的實體區塊SD會處 此暫時狀態可稱為母子區塊 1巾财效資料可能在下個 ’、 個寫入指令)中變成無效,因此立刻將奋 體區塊PD中的全部有效資料搬移至實體區塊SD可能& 201009577 ±-^υ-ζυυ8-〇〇25 28851twf.doc/n ===維持此種暫態關係的動作-般可 真正合併時的内容 IT的整個實體區塊,由此提 (〇所干,關閉(close)母子區塊。例如’如圖犯的 :實=_塊心關::二 叉關聯為資料區204,並且在邏輯-實體對映 =輯區塊LB的對映更改為實體區塊奶,由成 只體區塊PD與實體區塊SD的輪替(或交換)。 成 於當開啟母子區塊時㈣記憶體系統儲存此關 續資料的存取,因此可開啟母子區 置㈢依據控制器110巾緩衝記憶體u〇d的大小而 鲁 ,’在本實施例令快閃記憶體儲存系統!⑻最多‘二 暫態關係。也就是說,在快閃記憶體儲存系 ^ 組母子區塊的狀態且主機系統細對快閃 系統刚下達寫入指令的例子中,倘若主機系 j2〇〇欲寫人的邏輯區塊並非對映已開啟的母子區塊時斤 組母子_開啟-組™ &必須瞭解的是,在本實施例中是以實體區塊為單位來 官理快閃記憶體WMO,因此上述以輪替方式儲存資料 201009577 rsi^u-zuu8-0025 28851twf.doc/n (即’開啟與關閉母子區塊)是以實體區塊為單位來進行描 述。然而,在本發明另一實施例中,當以包括多個實體區 塊的實體單元來管理快閃記憶體晶片14〇時,上述輪替、 提取、交換等運作會以實體單元為單位來進行。 請再參照圖2,在本實施例中,雖然控制器ιι〇是以 —條資料匯流排149連接至快閃記憶體晶片⑽,然而快 閃記憶體晶片140具有多個快閃記憶體晶粒(即,第一快閃 記憶體晶粒142、第二快閃記憶體晶粒144、第三快閃記憶 體晶粒146與第四快閃記憶體晶粒148),因此在如前所述 程式=快閃記憶體晶粒所需的時間遠高於資料匯流排i 4 9 傳輸資料所需的時間下,控制器11〇的微處理器單元u〇a 可透過執行記憶體管理模組u〇b的機械指令來以交錯糕 式化(interleave program)模式寫入資料,由此提升快閃記憶 體儲存系統100的資料寫入效率。 例如控制器110會以寫入單位(例如,頁面)將欲寫 入的資料DATA分割為多個子資料DATA1、data2、 • DAT^3與DATA4,然後以交錯方式透過資料匯流排149 將子= 貝料輪流地寫入至不同的快閃記憶體晶粒中。也就是 說,控制器110可先將子資料廳…傳輸至第一快閃記 ,體晶粒142賴衝區後,由第_快閃記㈣晶粒ι42進 行程式化子資料DATA1的運作。然後,在第—快間記憶 體晶粒142處於忙碌期時,控制器110可將資料DATA2 傳輸至第二快閃記憶體晶粒的緩衝區後,由第二快閃記憶 體晶粒144進行程式化子資料DATA2的運作。接著,在 20 201009577 r or jl/-zuu〇-0025 28851twf.doc/n 第-快閃記憶體晶粒M2與第二快閃記憶體晶粒i44都處 於忙碌期時,控制器110可將資料DATA3傳輪至第三快 記憶體晶粒14 6的緩衝區後,由第三快閃記憶體晶粒i 4 6 進行程式化子#料DATA3的運作。最後,在帛—快閃記 憶體晶粒M2、第二快閃記憶體晶粒144與第三快閃記憶 體晶粒146都處於忙碌期時,控制器11〇可將資料〇ατα4 ❹
傳輸至第四快閃記憶體晶粒148的緩衝區後,由第四快閃 記憶體晶粒148騎程式化子㈣DATA4崎作。因此, 在部分資料可進行同步寫人下縮短㈣記㈣儲存系統 100寫入資料所需的時間。 值得-提的是,在本實施例中,當控制器110從快取 5己憶體130傳輸大量屬於連續邏輯位址的資 體晶片_,並執行交錯程式化(interleaveprogram= 時,控制器110會以間隔(或交錯)方式讀取快取記憶體13〇 中的資料來傳輸至快閃記憶體晶片14〇。 具體來說,控制器110會將快取記憶體13〇 ♦屬於連 續,輯位址(即,邏輯扇區)的扇區資料(即,以扇區為單位 的資料)依序地排列,並且依序地將所排列的扇區資料分組 為以邏輯區塊的大小為單位的區塊資料。接著,控制器 會以父錯方式從快取記憶體130中讀取的扇區資料並以頁 面為單位傳送至快閃記憶體晶片140的快閃記憶體晶粒 中,其中在本實施例中一個頁面包括4個扇區資料。 圖4A是根據本發明實施例緣示從快取記憶體中傳輸 資料至快閃§己憶體晶片的範例示意圖,並且圖4b是繪示 21 201009577 r^riv-zuu8-0025 2885 ltwf.doc/π 圖4Α所示範例的交錯程式化之時序圖。為了方便說明本 範例’在圖4Α的快取記憶體130中僅繪示部分扇區位址, 然而必須瞭解的是,快取記憶體130還可包括其他扇區位 址。類似地,在圖4Α的第一快閃記憶體晶粒142、第二快 閃記憶體晶粒144、第三快閃記憶體晶粒146與第四快閃 記憶體晶粒148中僅繪示部分實體區塊’然而必須瞭解的 是第一,决閃記憶體晶粒142、第二快閃記憶體晶粒144、第 三快閃記憶體晶粒146與第四快閃記憶體晶粒148還包括 W 其他實體區塊。 請參照圖4A與圖4B,在此假設快閃記憶體儲存系統 100已從主機系統200中接受到欲寫入連續邏輯位址的扇 區資料SDATA(l)〜(4n) ’並且暫存於快取記憶體13〇中。 控制器110會根據邏輯扇區LS(1)〜LS(4n)的順序依序地排 列扇區資料SDATA(l)〜(4n) ’並且以邏輯區塊為單位分組 扇區資料SDATA⑴〜(4n),其中扇區資料SDATA(l)〜(4n) 可分別地歸屬為4個邏輯區塊LB1〜LB4。 • 當控制器H0透過資料匯流排149傳送扇區資料 SDATA(l)〜(4n)至快閃記憶體晶片HO時,控制器110會 以頁面為單位將邏輯扇區LS(1)〜LS(4)中的資料(即,扇區 資料SDATA(l)〜(4))傳送至第一快閃記憶體晶粒142的實 體區塊142-1的緩衝區中(如圖4B所示的傳輸T(l))。接 著,在第一快閃記憶體晶粒142處於忙碌期(即,寫入資料 期間)時控制器110會將邏輯扇區LS(n+l)〜LS(n+4)中的資 料(即,扇區資料SDATA(n+l)〜(n+4))傳送至第二快閃記憶 22 201009577 Γ〇η^-^υυδ-0025 28851twf.doc/n 體晶粒144的實體區塊144-1的緩衝區中(如圖4Β所示的 傳輸T(2))。然後,在第一快閃記憶體晶粒142與第二快閃 記憶體晶粒144處於忙碌期時,控制器110會將邏輯扇區 LS(2n+l)〜LS(2n+4)中的資料(即,扇區資料 SDATA(2n+l)〜(2n+4))傳送至第三快閃記憶體晶粒146的 實體區塊146-1的緩衝區中(如圖4B所示的傳輸T(3)),並 且在第一快閃記憶體晶粒142、第二快閃記憶體晶粒144 與第三快閃記憶體晶粒146處於忙碌期時,將邏輯扇區 9 LS(3n+l)〜LS(3n+4)中的資料(即,扇區資料 SDATA(3n+1)〜(3n+4))傳送至第四快閃記憶體晶粒148的 實體區塊148-1的緩衝區中(如圖4B所示的傳輸T(4))。 然後,控制器110會確認第一快閃記憶體晶粒142是 否已完成扇區資料SDATA(l)〜⑷的寫入,倘若第一快閃記 憶體晶粒142已完成扇區資料SDATA(l)〜(4)的寫入(即, 處於非忙碌期)時’控制器110會再將邏輯扇區Ls(2)〜LS(8) 中的資料(即,扇區資料SDATA(2)〜(8))傳送至第一快閃記 • 憶體晶粒142的實體區塊142-1的緩衝區中(如圖4B所示 的傳輸T(5))。接著,控制器11〇會判斷第二快閃記憶體晶 粒144是否已完成扇區資料sDATA(n+l)〜(η+4)的寫入, 倘若第二快閃記憶體晶粒144已完成扇區資料 SDATA(n+l)〜(η+4)的寫入時,控制器11〇會再將邏輯扇區 LS(n+5)〜LS(n+8)中的資料(即,扇區資料 SDATA(n+5)〜(n+8))傳送至第二快閃記憶體晶粒144的實 體區塊144-1的缓衝區中(如圖4B所示的傳輸τ(6))。然 23 201009577 x χ^-^νν3-0025 2885 ltwf.doc/n 後’控制器110會判斷第三快閃記憶體晶粒146是否已完 成扇區資料SDATA(2n+1)〜(2η+4)的寫入,倘若第三快閃 記憶體晶粒146已完成扇區資料sDATA(2n+l)〜(2η+4)的 寫入時’控制器110會再將邏輯扇區LS(2n+5)〜LS(2n+8) 中的資料(即,扇區資料SDATA(2n+5)〜(2n+8))傳送至第三 快閃記憶體晶粒146的實體區塊146-1的緩衝區中(如圖4B 所示的傳輸T(7))。接著,控制器110會判斷第四快閃記憶 ❹ 體晶粒148是否已完成扇區資料SDATA(3n+l)〜(3η+4)的 寫入,倘若第四快閃記憶體晶粒148已完成扇區資料 SDATA(3n+l)〜(3η+4)的寫入時,控制器會再將邏輯扇 區LS(3n+5)〜LS(3n+8)中的資料(即,扇區資料 SDATA(3n+5)〜(3n+8))傳送至第四快閃記憶體晶粒Mg的 實體區塊148-1的緩衝區中(如圖4B所示的傳輸τ(8;))。之 後’以此類推直到控制器110將邏輯扇區Lg(l)〜LS(4n)中 的資料都傳輸至快閃s己憶體晶片140為止(即,完成圖4B 所示的傳輸T(l)〜T(n)為止)。 _ 基於上述’藉由使用交錯程式化模式,透過資料匯流 排149將扇區資料SDATA(l)〜(4n)以交錯與循環方式輪 流地傳送至快閃記憶體晶片140的第—快閃記憶體晶粒 142、第一快閃記憶體晶粒144、第三快閃記憶體晶粒146 與第四快閃記憶體晶粒H8中。因此,控制器11〇可將屬 於同一個區塊貢料内的扇區資料傳輸至同一個快閃記憶體 晶粒的實體區塊中。 圖5是根據本發明實施例綠示資料傳輸步驟的流程 24 8-0025 28851twf.doc/n 201009577 圖’其中此些步驟是控制器110的微處理器單元u〇a執一 記憶體管理模組110b的機械指令所完成。必須瞭解的是^ 本發明所提出的資料傳輸步驟不限於圖5所示的執^ 序,此領域技術人員可根據本發明的精神任意更動資g傳 輸步驟的順序。此外,由於本實施例的重點是描述使 錯程式化模式寫人資料至制記㈣晶片⑽的資 方式,因此圖5所繪示的步驟僅描述針對寫人指令^ 參 理。對於讀取指令或其他指令的處理則可依照—般已知= 技術進行,在此不詳細描述。 u 請參照圖5,當快閃記憶體儲存系、统1〇〇連接至 系統200並啟動後,在步驟隨中控制器㈣會提供= 邏輯扇區為單位的邏輯位址給域純以 提供以邏輯扇區為單位的邏輯位址 疋配&主機糸統200以扇區為單位的存取特性。 在步驟S503中控制器11〇會提 邏輯扇區轉換為對映的邏輯區塊:==;且將 =器===為單位進行存取’因 實趙區_大小騎礎㈣輯顧轉換為以 w接者在步驟S5G5巾控彻UG會等待*接收從主 的寫入指令與欲寫入的資料。之後,在 ί體130中/ '㊆UG會將所接收的資料暫存於快取記 田控制器110欲將暫存於快取記憶體13〇中的資料程 25 201009577 lft --------ί 0025 28851twf.doc/n 式化(I3寫入)至快閃5己憶體晶片時,在步驟M〇9中 控制器110會將儲存在快取記憶體1;30中屬於連續邏輯扇 區的扇區資料依序地排列並且分組成多個區塊資料。特別 是,控制器110在分組扇區資料時,會將每一區塊資料對 應上述所提供的邏輯區塊。倘若所分組的區塊資料不足以 填滿所對應的邏輯區塊(即,€更新此邏輯 資料)時姻U0會以所對應邏輯區塊舊資:: ❹^更新的貧料合併為一個完整的區塊資料,也就是如圖沌 動作’其中資料整併的過程可在快取記憶體130或 控制器110中的緩衝記憶體11〇d中完成。 最後’在步驟S5U中控制n 11G會以交錯方式透過 流排M9將所分組區塊資料中的扇區㈣分別地傳 备,^己憶體晶片14〇並且以交錯程式化模式在快閃記 Τ、144、146與148中寫入扇區資料。在步驟 1後,資料傳輸流程會回至步驟S5〇5中等待下一個寫 ❹ 。雖糾示於圖5中,但此領域熟知技藝者可輕易 料傳輸步驟會在接收到關機或電源情指令 區换f得—提的是’如上所述㈣記倾晶片140的實體 塊=輪替方式儲存核純寫人至雜區塊的資 ^此為了能夠在實魅塊不斷輪制過財將所更新 11〇貝Γ可平均地分散在多個快閃記憶體晶粒中,當控制器 備㈣206 +提取實體區塊來替換欲寫入之邏輯區 子映之育料區204中的實體區塊時,控制器110會判 26 201009577 λ. uj. ^ .£-w8-0025 2885 ltwf.doc/n 辦在h料£ 204中欲被更新的實體區塊是屬於那個快閃纪 憶體晶粒(即’第一快閃記憶體晶粒142、第二快閃記憶體 晶粒144、第三快閃記憶體晶粒146與第四快閃記憶體晶 粒148)中的實體區塊,並且僅從備用區2〇6中提取對應^ 屬快閃記憶體晶粒的實體區塊來執行上述替換的運作。 具體來說,備用區206會依據第一快閃記憶體晶粒 142、第一快閃s己憶體晶粒144、第三快閃記憶體晶粒Mg φ 與第四快閃記憶體晶粒H8分別地區分為備用區2〇6a、備 用區206b、備用區206c與備用區206d。當欲被更新的實 體£塊為第一快閃§己憶體晶粒142的實體區塊時,則從備 用區206a中提取實體區塊,當欲被更新的實體區塊為第二 快閃記憶體晶粒144的實體區塊時,則從備用區2〇6b中提 取實體區塊,當欲被更新的實體區塊為第三快閃記憶體晶 粒146的實體區塊時,則從備用區2〇6c中提取實體區塊, 以及當欲被更新的實體區塊為第四快閃記憶體晶粒148的 實體區塊時,則從備用區206d中提取實體區塊。 • 特別是,由於在本實施例中僅會提取對應備用區的實 體區塊來開啟母子區塊,所以控制器110有可能同時為屬 於同一個快閃記憶體晶粒的五個母區塊來開啟子區塊。因 此,在本實施例中,在每一備用區(即,備用區206a、備 用區206b、備用區206c與備用區206d)中都必須配置足夠 處理五組母子區塊的實體區塊數目。此外,控制器1 會 為快閃記憶體晶片140的第一快閃記憶體晶粒142、第二 快閃記憶體晶粒144、第三快閃記憶體晶粒146與第四快 27 201009577δ,025 2885 ltwf.doc/n 閃€憶體晶粒MS分別地建立與維護一個邏輯-實體對映 表來記錄上述的對映關係。也就是說,在本實施例中合記 錄與更新4個邏輯_實體對映表。 曰 曰此外,由於第—快閃記憶體晶粒142、第二快閃記憶 體晶粒144、第三快閃記憶體晶粒146與第四快閃記憶體 晶粒148具有獨立的邏輯_實體對映表,因此在本發明^一 實把例中亦可針對第一快閃記憶體晶粒142、第二快閃記 ❹ 憶體晶粒M4、第三快閃記憶體晶粒146與第四快閃記憶 體aa粒14 8分別地進行平均抹損(wear_ieveiing)程序。平均 磨損程序是此領域熟知的技術,在此省略其詳細運作的描 述。 另外,由於控制器110在開啟母子區塊時,母子區塊 皆會是屬於同一快閃記憶體晶粒,因此在本發明另—實施 例中’控制斋1 1 〇可使用回複製(C0pybaCk)指令來加速母 子區塊之間的資料搬移(如圖3B所示)。 綜上所述,本發明所提出的資料傳輸方法是在使用交 ❹ 錯程式化模式時’以邏輯區塊為單位且非連續方式將快取 記憶體中的資料交錯地傳送至快閃記憶體晶片的快閃記憶 體晶粒中,因此可避免屬於連續邏輯位址的資料分散在不 同快閃記憶體晶粒中,由此提升在後續更新資料時的寫入 速度並且減少實體區塊的抹除次數。此外,在使用本發明 的傳輸方式下,輪替儲存資料的實體區塊皆會屬於同一個 快閃記憶體晶粒,因此可使用回複製指令來加速資料的寫 入0 28 201009577 _ ______J8-0025 2885 ltwf.d〇c/n 雖然本發明已以較佳實施例揭露如上,然其 限定本發明’任何所屬祕領域巾具有通常知識者 脫離本發明之精神和範圍内,當可作些許之更動與 因此本發明之保魏圍當視後社申請專利範圍所界定者
【圖式簡單說明】 圖1是根據本發明一實施例繪示快閃記憶 的概要方塊圖。 " 體儲存系統 圖圖2是根據本發明實施例繪示快閃記憶體晶片的方塊 圖3A是根據本發明實施例繪示快閃記憶體晶 體區塊的概要示意圖。 4 80 的實 圖3B是根據本發明實施例繪示快閃記憶體晶 體區塊的運作示意圖。 片的實
次 4A是根據本發明實施例繪示從快取記憶體中傳 資料至快閃記憶體晶片的範例示意圖。 圖4B疋繪示圖4A所示範例的交錯程式化之時序圖。 圖5疋根據本發明實施例繪示資料傳輸步驟的流程 【主要元件符號說明】 10〇 :快閃記憶體儲存系統 110 :控制器 29 201009577· 28851twf.doc/n
Λ. Λ. V 110a :微處理器單元 110b :記憶體管理模組 110c :快閃記憶體介面模組 110d :緩衝記憶體 110e :主機介面模組 120 :連接器 130 :快取記憶體 140 :快閃記憶體晶片 142、144、146、148 :快閃記憶體晶粒 142-1、144-1、146-1、1484、PD、SD :實體區塊 149 資料匯流排 200 主機系統 202 糸統區 204 資料區 206、206a、206b、206c、206d :備用區 210、LB、LB1、LB2、LB3、LB4 :邏輯區塊 • 300:匯流排 LS(1)〜LS(4n):邏輯扇區 SDATA(l)~(4n):扇區資料 傳輸:T(l)〜ΊΧη) S501、S503、S505、S507、S509、S511 ··資料傳輸步 30