TWI364660B - Method for managing a storage medium - Google Patents

Method for managing a storage medium Download PDF

Info

Publication number
TWI364660B
TWI364660B TW96143104A TW96143104A TWI364660B TW I364660 B TWI364660 B TW I364660B TW 96143104 A TW96143104 A TW 96143104A TW 96143104 A TW96143104 A TW 96143104A TW I364660 B TWI364660 B TW I364660B
Authority
TW
Taiwan
Prior art keywords
address
physical
block
logical
storage medium
Prior art date
Application number
TW96143104A
Other languages
English (en)
Other versions
TW200921388A (en
Inventor
Zhong Zhiyuan
Original Assignee
Netac Technology Co Ltd
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 Netac Technology Co Ltd filed Critical Netac Technology Co Ltd
Priority to TW96143104A priority Critical patent/TWI364660B/zh
Publication of TW200921388A publication Critical patent/TW200921388A/zh
Application granted granted Critical
Publication of TWI364660B publication Critical patent/TWI364660B/zh

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

1364660 九、發明說明: 【發明所屬之技術領域】 本發明涉及一種靜態記憶體領域’特別涉及一種儲存 媒體管理方法。 【先前技術】 現有對儲存媒體的管理方法一般是建立物理位址與邏 〇輯位址的對照表,參照第一圖所示的邏輯塊與物理塊對照 關係示意圖,通過對照表可查找與邏輯塊對應的物理塊,'' 冨有物理塊成為壞塊時可將其剔除不用。然而隨著儲存媒 體的容量越來越大,對照表的資料量也越來越大,要在嵌 入式系統的記憶體中保存整個儲存媒體的對照表,幾乎是 不實際的。 現有一種分段管理技術,對儲存媒體的物理塊分段進 行官理。如第二圖所示的邏輯塊與物理塊對照關係示意 3圖,設儲存媒體有《»個物理塊,分為L·個區域,每個區域 N塊,分別對每個物理塊區域做物理位址與邏輯位址的對 照表。只有使用到相應邏輯位址區域的時候才在記憶體中 建立與該邏輯位址所在區域相應的對照表,這樣就在記憶 體空間和效率之間取得了一個折衷。但這也引起了另一個 問題,因為儲存空間被物理分割,各區域之間就被隔絕。 根據儲存媒體的實際使用特點,某些區域的物理塊經常被 使用,另外一些區域的物理塊卻很少使用,於是會導致使 用的不均衡,某些物理塊已經達到壽命的極限,而某些物 理位址,將寫命令要官 — 理位址中;將血寫上料禺到與交換塊對應的物 _ /、舄p 7扣疋迴輯位址對應的物理位址中不 f寫命令覆蓋的原有資料搬遷到與交換塊對應的物理位址 ’建立父換塊與寫命令指定邏輯位址對應的物理位址之 ::的對應關係,建立寫命令指定邏輯位址與交換塊對應的 位址之間的對應關係;擦除與交換塊對應的物理位 址0 土处根據至夕一區域邏輯位址與物理位址的對應關係 行訪門7 7的步驟還包括:更新至少一區域邏輯位址盥 物理位址的對應關係,更新對照表的步驟。 ’、 _込將Z、寫'卩令指定邏輯位址對應的物理位址中不被 寫命令覆蓋的原有資料搬遷到與交換塊對應的物理位址中 I括將與寫τ令指定邏輯位址對應的物理位址與交換塊 ’ΐ? 2物理位址比較,得到不被寫命令指定寫入新資料的 未才曰疋位址’將未指定位址中的資料複製到與交換塊對應 的物理位址中。 上述儲存媒體管理方法單獨使用一交換塊,或輪流使 用至少一交換塊。 本發明通過將儲存媒體的邏輯位址劃分多個區域,各 ί域分別組織對照表’實現佔用極少量的記憶體完成大容 里储存媒體的管理;本發明還利用交換塊實現各個區域之 ,的物理塊相互交換,從而消除了區域間磨損不均衡的問 題β同4避免了整個區域資料的搬_而導致的性能不穩定 問題,安全穩定,易於實現。 9 【實施方式】 本發明目的的麻招 丄 參照附圖做進一步::功能特點及優點將結合實施例, 參照第三圖,+山 塊對照關係示专圖 '明第一實施例的邏輯塊與物理 Γ ΡίΛςίί . “㈤,本貧施例應用於快閃記憶體介質 對儲二媒體中作對照表,但僅在邏輯域 邏輯區域都可以對日在物理域不劃分區域,每個 邏輯位址的時候,=媒體的物理塊。當訪問到某 到記憶體中。、轉位址所在區域的對照表载入 現物置交換塊(swap),通過共用交換塊實 見物理塊的父換,從而消除物理塊磨損不均衡的問題。 判八ir::’设儲存媒體共有m個物理塊,將邏輯位址 j刀為個區域,分別是區域〇、區域1……區域L,各 個區域N個邏輯塊,每個邏輯塊分別與一個物理塊建立: 照關係,例如區域〇的邏輯塊〇對應物理Μ,區 邏輯塊X對應物理塊y。再設置—邏輯交換塊, _; 物理塊Z。 嗯 ^_^_表1所示的邏對日g ,:
邏輯位 區起 10 區域1 • · · 址 0 1 • · · N 0 «· · X • · · N • · · 土舍 物理位 址 1 6 • ·» 0 4 »·« y -—— • · · 2 • · · 〜 — Z 1364660 • < 表 1 接收到對儲存媒體的訪人 的處理過程袁昭第i η ρ 7後,本實施例對寫命令 ^…、第五圖包括如下步驟: 步驟S11 ,收到對邏輯 步⑽,計算邏輯塊入新資料的寫命令; 牛驄ςη # 屬於哪個邏輯區域; 乂驟813,將該邏輯區域 步驟S14,查對照表 :至“己憶體; 到對應的物理塊7 ; ㈣康避輯塊X的邏輯位址查找 步驟S1.5,取預先定義的交換塊; 步驟S16,將寫命令要寫入 換塊對應的物理塊z中; <輯塊X的新貧料寫到交 步驟S17,將物理塊7中不被寫命 搬遷到物理塊z中; 是息的原有貝枓 步驟S18,將交換塊改為與物 X改為與物理塊z對應;、物理”對應,將邏輯塊 束。步驟S19,擦除交換塊對應的物理塊y,寫過程結 參照第四圖所示的經過上述寫過程後,邏輯塊與物理 亚對照關係變化示意圖,邏輯塊x中的原有資料和寫命人 要馬入的新資料都寫入物理塊z中’而將交換塊從物理^ =物理塊y。同理’對每一個寫命令,都僅载入一個 =域的對照表,使用交換塊寫入資料,既實現了分區域 理儲存媒體’減少佔用記憶體,.又實現了物理塊的使用 衡’還無需對整個區域資料進行搬遷。 1364660 上述步驟S12,計算邏輯塊X屬於哪個邏輯區域,具 體來說在對邏輯位址分區時,每個邏輯區域的大小都是預 先a又疋的’確定下來一般無需改變,如一個區域包括1024 個邏輯塊。當收到訪問命令後,本實施例可以通過邏輯位 址來推算要訪問的塊屬於哪個邏輯區域。一個區域包括 1024個邏輯塊為例’則可算出邏輯塊0到邏輯塊1023都屬 於區域0 ’而邏輯塊1〇24至邏輯塊2〇47都屬於區域1,依 此類推。
上述步驟S13,將該邏輯區域的對照表載入到記憶 體,其中載入是指把對照表讀取到記憶體中,具體載入方 式見下文說明。 上述步驟S16 ,將寫命令要寫入邏輯塊X的新資料寫 到交換塊對應的物理塊z中是採用現有的寫操作技術完成 的,完成一個寫操作可以分為兩個步驟,一個是設備從主
機接收資料,存到設備的緩衝區’然後從緩衝區把資料寫 入flash。本貫施例從寫命令中得知要對邏輯塊X寫入資 料’而邏輯塊X對應物理塊y,物理塊7本身是存有原有 資料的,根據快閃記憶體的特性,物理塊 料的’必須把物理塊⑼除才可以再寫入資料。但= 除物理塊y,原有㈣就會錢。因此不能直接把緩衝區 的貧料Μ物理塊y ’而只能寫到交換塊對應的物理塊z 完成將緩衝區資料寫入交換塊的寫操作後,物 和交換塊對應的物理塊〇各保存了邏輯Μ的―部分資 ι^〇4〇ου 料在以後的麵作令是無法使用的,因此還需要把物理塊 ^的原有資料搬遷到物理塊ζ巾。至此,邏輯塊X的所 ::料都保存在物理塊ζ中了’物理塊y中雖然存有原有 貝已^:無用了’就可以把物理塊y擦除。當然也可 :在物理塊y擦除以後,把物理塊Z中的所有資料重新拷 、回物理塊y ’但這樣明顯效率很低。因此本實施例只 把物理塊y與物理塊Z與邏輯塊的對應關係交換一下,把 塊y對應交換塊,物理塊2對應邏輯塊χ,節省了 _ 次貧料搬遷的操作,提高了效率。 -料2步驟Μ7 ’將物理塊7中不被寫命令覆蓋的原有 包括步驟: 祝百的貝枓搬遷技術,具體 步驟sm,從寫命令中取得要寫人新資料的指定位 iit 9 ,將指定位址與物理塊y的位址比較,得到 不,寫:1定寫人新資料的未指定位址,這些未指定位 址中的貝料是不被新資料覆蓋的原有資料; 步驟S173 ’將未覆蓋位址中的搭士 ^ z的相應位址中,流程結束的原有㈣複製到物理塊 直』的特性是要先擦除才能寫資料,如果 料的物理塊寫入新資料,很可能造 成原有貝丢失’故本實施例在每 都使用交換塊,以保證原有㈣㈣全。τ寫貝心^ 本貫鈀例對於讀命令的處理過程如下. 13 丄叶oou 收到讀取邏輯塊X資料的讀命令; 。十异邏輯塊X屬於哪個邏輯區域; 將該邏輯區域的對照表载入到記憶體; 查對照表,根據邏輯塊χ的邏輯位址查找 y ; 步驟S25,讀取物理塊y中的指定資料; 步驟S26 ’返回讀到的資料,讀過程結束。
步驟S21, 步驟S22, 步驟S23, 步驟S24, 到對應的物理塊 矣知月提出第一貫施例’在第一實施例基礎上對對照 表和父換塊的管理提出改進。 本實施例至少在儲存媒體量產的時候建立一完整對照 :完整對照表 '可使所有邏輯位址都與好的物理塊 起來’而不對應壞物理塊’將壞的物理塊忽略不使 用’建立邏輯位址與所有好塊的物理位址之間的對應關 係0 例如儲存媒體共有1G個物理塊,其中物理塊2是壞 =建立完整對照表的做法是··從邏輯塊Q和物理塊〇開 二从立對^,先為邏輯塊〇找一個物理塊與之對應,檢測 故塊0是好塊就把物理塊〇對應到邏輯塊〇;再順序 幻找一個物理塊與之對應,因為物理塊〇已經有 以順序檢測物理塊1,物理塊u好塊就把 對到邏輯塊1。再為邏輯塊2找一値物理塊與之 二' 因為物理塊丨之前的塊都操作過了,就從物理塊2 、=秘發現物理塊2是壞塊,不能將物理塊2與任何一個 ^ 對應,於是再往後找到物理塊3,發現物理塊3是

Claims (1)

  1. 丄 JU-r wv 丄 JU-r wv 卜\年二.月江之曰修正替換頁 十、申請專利範圍: L —種儲存媒體管理方法,包括: 分區域管理邏輯 位址的對應關係Γ步:;少一區域邏輯位址與物理 將所述至少—r 在記憶體中的步:位址與物理位址的對應關係載入 彳+ = p it至^ 一區域邏輯位址與物理位址的對應關係執 们·汸問命令的步驟; # ^ ί至〆父換塊以建立交換塊的邏輯位址與物理位址 對應關係的步驟; 7 根據所述至少一區域邏輯位址與物理位址的對應 關係執行訪問命令的步驟包括: ---的视;t主xj立址, 將寫命令要寫入的新資料寫到與交換塊對應的物理位 » y /根據所述至少一區域邏輯位址與物理位址的對應關 係’查找與寫命令指定邏輯位址對應的物理位址 膝旮人入π〜. 址中 —將所述與寫命令指定邏輯位址對應的物理位址中不被 寫命令覆蓋的原有資料搬_與所述交換塊對應的所述物 理位址令; 建立所述乂換塊與寫命令指定邏輯位址對應的所述物 理㈣之㈣對應_、,建立所述寫命令減邏輯位址與 所述父換塊對應的所述物理位址之間的對應關係;以及 擦除與所述交換塊對應的所述物理位址。 2·如請求項1所述㈣存媒體管理方法,其中,所述分 1364660 年1月ϊ·2曰修正替換頁 區域官理邏輯位址,建立至少一區域邏輯位址與物理位址 的對應關係的步驟包括: 將邏輯位址劃分為至少兩個區域; 至 > 一所述區域中的邏輯位址’分別建立與所述儲存媒 體的任一物理位址之間的對應關係; 將所述對應關係形成所述至少兩個區域的對照表;以及 將至少一個所述區域的對照表加載在記憶體中。 3.如請求項2所述的儲存媒體管理方法,其中,將所述 至少一區域邏輯位址與物理位址的對應關係載入在記憶體 中的步驟包括: 根j康訪問„-卩令计具指定邏輯塊屬於哪一區域; 判斷記憶體中的所述區域的對照表是否對應指定邏輯塊 所屬區域; 將心疋邏輯塊所屬區域的所述區域的對照表載入到記憶 體中,替換記憶體中的所述區域的對照表。 4, ·、如Γ求項2所述的儲存媒體管理方法,其中,將所述 區域邏輯位址與物理位址的對應關係載入在記憶體 中的步驟還包括: 將至^所述區域的對照表保存在外部儲存媒體中的步 .々明求項1所述的儲存媒體管理法, 區域管理邏輯位址,访〜· T m 建立至乂 一區域邏輯位址與物理位址 的對應關係的步驟包括. 將邏輯位址割分兔 刀马至少兩個區域; 22 對各區域中的_位址,建立 ^ 之間對應關係,形成完整對照表。 物理位址 6.如請求項5所述的儲存媒體管理 至少-區域邏輯位址與物理位 關㈣=將所述 中的步驟包括·· 于應關係载入在記憶體 將所述完整對照表保存在外部儲存媒體中. 將所述完㈣照表的#訊保存在記憶體中; 根據訪問命令計算指定邏輯塊屬於哪一區域. 根據所述完整對照表的資訊找到所述完整對昭表. 將所述完整對照表中,衣 表載入到記憶體中。9疋朴塊所屬區域的部分對照 區i = 2 4所述的儲存媒體管理方法,其中,將所述 :二广.…、、保存在外部儲存媒體中是指將該區域的對照 餘區^。至少一物理塊中,或是保存在至少一物理塊的冗 完整對日^項6所述的儲存媒體管理方法,其中,將所述 SI至i二保存在外部儲存媒體中是指將該完整對照表保 物理塊中’或是保存在至少一物理塊的冗餘區 甲0 9·如請求項? 至少—區。所述的儲存媒體管理方法,其中,根據所述 的牛驟1°域邏輯位址與物理位址的對應關係執行訪問命令 的V觸更包括: 更新至少一 ^ 所述區扶 區或邏輯位址與物理位址的對應關係’更新 ,2的對照表的步驟。 23 !364660 、》丨¥上月日修正替換買 10.如請求項5所、+、认 -~—Izl ,1、一。q 3所述的儲存媒體管理方法,其中,根據 所it至y區域邏輯位址與物理位址的對應關係執行訪問 命令的步驟更包括: 更新至少區域邏輯位址與物理位址的對應關係,更新 所述元整對照表的步驟。 U.如清求項1所述的儲存媒體管理方法,其中,將所 迷與寫》卩令指定邏輯位址對應的物理位址中不被寫命令覆 盖的原有貢料搬遷到與交換塊對應的物理位址中包括: 將與寫命令指定邏輯位址對應的物理位址與交換塊對應 的物理位址比較’得到不被寫命令指定寫入新資 料的未指 定位址; 將未指定位址中的資料複製到與交換塊對應的物理位址 中。 24
TW96143104A 2007-11-14 2007-11-14 Method for managing a storage medium TWI364660B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW96143104A TWI364660B (en) 2007-11-14 2007-11-14 Method for managing a storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW96143104A TWI364660B (en) 2007-11-14 2007-11-14 Method for managing a storage medium

Publications (2)

Publication Number Publication Date
TW200921388A TW200921388A (en) 2009-05-16
TWI364660B true TWI364660B (en) 2012-05-21

Family

ID=44727834

Family Applications (1)

Application Number Title Priority Date Filing Date
TW96143104A TWI364660B (en) 2007-11-14 2007-11-14 Method for managing a storage medium

Country Status (1)

Country Link
TW (1) TWI364660B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI704456B (zh) * 2018-11-22 2020-09-11 慧榮科技股份有限公司 資料儲存裝置與資料存取方法

Also Published As

Publication number Publication date
TW200921388A (en) 2009-05-16

Similar Documents

Publication Publication Date Title
KR100725390B1 (ko) 수정 빈도를 고려하여 데이터를 비휘발성 캐쉬부에저장하는 장치 및 방법
JP4956922B2 (ja) 記憶装置
US8364931B2 (en) Memory system and mapping methods using a random write page mapping table
JP5535128B2 (ja) メモリシステム
US20080120488A1 (en) Apparatus and method of managing nonvolatile memory
US20080109590A1 (en) Flash memory system and garbage collection method thereof
US20080082729A1 (en) Device driver including a flash memory file system and method thereof and a flash memory device and method thereof
JP2008016003A (ja) メモリー格納装置及びその読み書き方法
JP2004013895A (ja) フラッシュメモリ用のファイルシステム
JP2011530133A (ja) キャッシュコンテンツの記憶管理
US20150212937A1 (en) Storage translation layer
TW201135738A (en) Erase command caching to improve erase performance on flash memory
TW576966B (en) Non-volatile cache integrated with mass storage device
KR102449585B1 (ko) 버저닝 저장 장치 및 방법
US9921954B1 (en) Method and system for split flash memory management between host and storage controller
TWI473100B (zh) Flash memory system and its operation method
KR20070096429A (ko) 빠른 마운팅을 지원하는 낸드 플래시 메모리에 적용되는파일시스템
JP2018101411A (ja) データストレージデバイスおよびその操作方法
US10114576B2 (en) Storage device metadata synchronization
KR20100115090A (ko) 버퍼를 고려한 가비지 컬렉션 기법
TWI718710B (zh) 資料儲存裝置以及非揮發式記憶體控制方法
TW201111987A (en) Memory system
TW201017407A (en) Nonvolatile data storage system and method thereof
JP5338859B2 (ja) 記憶装置および情報処理システム
KR20140100113A (ko) 저장 장치 및 그것의 데이터 처리 방법