TWI233616B - Silicon storage media and controller thereof, controlling method thereof, and data frame based storage media - Google Patents

Silicon storage media and controller thereof, controlling method thereof, and data frame based storage media Download PDF

Info

Publication number
TWI233616B
TWI233616B TW093112722A TW93112722A TWI233616B TW I233616 B TWI233616 B TW I233616B TW 093112722 A TW093112722 A TW 093112722A TW 93112722 A TW93112722 A TW 93112722A TW I233616 B TWI233616 B TW I233616B
Authority
TW
Taiwan
Prior art keywords
data
memory
block
data frame
address
Prior art date
Application number
TW093112722A
Other languages
English (en)
Other versions
TW200537497A (en
Inventor
Hsiang-An Hsieh
Original Assignee
Carry Computer Eng 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 Carry Computer Eng Co Ltd filed Critical Carry Computer Eng Co Ltd
Priority to TW093112722A priority Critical patent/TWI233616B/zh
Priority to US10/904,824 priority patent/US20050249008A1/en
Priority to DE102004059750A priority patent/DE102004059750A1/de
Priority to JP2005017400A priority patent/JP2005322209A/ja
Application granted granted Critical
Publication of TWI233616B publication Critical patent/TWI233616B/zh
Publication of TW200537497A publication Critical patent/TW200537497A/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
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Description

1233616 -- β^ 五、發明說明(1) 發明所屬之技術領域 本發明是有關於一種矽儲存媒體控制器,且特別是有 關於一種以可變長度資料框架為基礎之矽儲存媒體控制 器。 先前技徽
目前採用矽晶片製成之記憶體作為矽儲存媒體已日漸 普及,大部份均係透過一控制器連接系統端介面,將資訊 寫入記憶體,或自記憶體讀取並傳輸至系統端。其中石夕儲 存媒體因具備耗電低、可靠度南、容量大、存取速度快等 特點,廣泛應用於各種可攜式數位電子裝置,如:數位相 機、數位隨身聽、個人數位助理(P e r s ο n a 1 D i g i t a 1
Assistant, PDA)等產品,使用量迅速成長。矽儲存媒體 亦因而衍生出多種不同的型態,目前主要有:C〇mpact Flash Card (CF) -Memory Stick Card (MS) >Secure
Digital Card (SD)、Smart Media Card (SM)等多種形 U/l卜丨在個5電。腦的應用領域,可輕易透過通用序列 排(Universal Serial bus,USB)介面安 鼢碟亦於近年演變成備受歡迎的新興產品。、 、 可穩ΐ 2 ί採用石夕晶片製成之記憶體作為石夕儲存搵辦夕 其内U制器= = ;用内建之記憶
攜式健存裝置之主要己憶體之内容。因此,上述可 本的目的,主要的課題ί ^ t晶片記憶體。故為達降低成 %马充分發揮記憶體有限的容量。
1233616 五、發明說明(2) 習知石夕儲左 中為主,其對昭方^制器以直接記錄原始資料至記忾體 低早位容量:即「 寫作業之最 容量之「冗餘區間=頁」胃/)為基礎:並利用記憶頁 照碼,修正碼等資 罝1111 /二a二ea ,5己錄邏輯位址對 最常採用之單:^。9二一_區:之容量,通常以錯存裝置 (sector)的容量;另亦提供單一記憶頁容個早立磁區 組、二,區容量達64位元組的新式記憶體8位元 邏輯位址對昭碼7二f道思:在早一 §己憶頁中記錄對應之 參考第\:圖:未導入資料壓縮/解壓縮之功能 架構方塊圖。石夕儲存媒體1〇 内部 統介面1 1 2與存取石夕儲在搵e I 透過糸 斜,將杳祖新:/ΙΛ储存媒體系統溝通傳輪指令與資 寫入弋情俨〗2ίΛ /料緩衝區116後,透過記憶體介面118 寫°己隐體1 2 〇 ,或者是自記憶體1 2 0讀取資料並將資料暫 存於資料緩衝區116後,诱捫备姑八以1<?=科並將貝料暫 料的系統端。 i i過糸統"面112傳回要求讀取資 欠、,系統端傳入之原始資料於記錄至記憶體中時,除原始 資料以外,,同時記錄資料區塊狀態屬性旗標(status flag)、錯誤修正碼(err〇r c〇rrecti〇n c〇de)、邏輯定址 記錄(logic address)等相關控制用資訊。在此定義相關 控制用資訊各位元,其中·· 資料區塊狀態屬性旗標··用以標示一記憶體區塊内存放之
12745twf.ptd 第8頁 1233616 五、發明說明(3) 資料所屬狀 「區塊不良 資料並且將 塊内記錄資 則將此區塊 料區塊於所 後,即可經 錯誤修正碼 位元組之錯 錄原始資料 並將正確的 的記憶單元 其他「抹寫 「區塊不良 邏輯定址記 配合記憶體 利用。因而 順序有相當 換電路或定 方式,產生 體定址之間 以後仍舊能 始資料以及 如上所 態係為^ 」(bad) 旗標變更 料所用之 標示為「 存放之資 過抹寫作 :透過特 誤修正碼 之記憶單 資料傳回 發生錯誤 後」資料 j ° 錄:原始 適用之實 其配置順 大的差異 址轉換控 一個在系 的轉換對 持續保留 其對應之 述,茲以 抹寫後」(erased)、 「使用中」、或 。若為抹寫後,則可用於記錄更新的 為「使用中」。若於寫入過程發現區 記憶體不良而無法正確保存資料時, 區塊不良」。標示為「使用中」的資 料更新並轉移到其它「抹寫後」區塊 業而還原為「抹寫後」狀態。 定之演算法,依原始資料產生出數個 。在根據檢驗錯誤修正碼而偵測出記 元發生錯誤時,可以據以修正錯誤, 系統端。微控制器發現記錄原始資料 時,會隨即將正確的資料轉移複製到 區塊,並且將故障的資料區塊標示為 資料存放於記憶體時,微處理器必須 體定址方式進行適當之規劃、配置與 序與系統端存取時所採用之邏輯定址 。因而於控制器内部即需具備定址轉 制流程,並依據記憶體空間規劃作業 統端傳入之邏輯定址與記憶體端之實 照表。為了在系統端關閉記憶卡電源 此種對照?係,因此必須同時保存原 邏輯定址記錄。 應用較廣泛的NAND快閃記憶體為例,
12745twf.ptd 第9頁 1233616 五、發明說明(4) 描述記憶體中資料區塊之記錄格式,如第 存單位為5 2 8位元的N A N D快閃記憶體為例 位元組作為記錄原始資料之儲存空間,其 為控制資訊記錄區)則用於記錄前述之控 存放所有必要之控制之資訊之後,控制資 有部分保留空間並未加以使用。 綜上所述,習知的矽儲存媒體控制器 料之結構中,原始資料未經壓縮處理,直 中規劃之位置,使得該種矽儲存媒體僅能 的方式才得以提高存儲量,而無法經由如 記憶卡儲存容量提升之感。且傳統矽儲存 頁」為讀寫存取之單位,即便增加壓縮機 取的單位過小而使壓縮效能不佳,另外, 錯誤偵測修正碼等控制資訊雖均註記在各 的冗餘區段中,但其中尚有若干空間未加 關聯對照表係以長度固定之原始資料對應 頁」之關係而建立。換句話說,從讀取、 料,直到更新關聯對照表之種種作業過程 定之原始資料為基準。但是此種固定長度 法在具備壓縮機制之矽儲存媒體中以既有 行資料的讀寫對應。 發明内容 因此,本發明的目的就是在提供一種 器,其中以較大的存取單位,如記憶區塊 1 B圖所示。以儲 ,即係以其中5 1 2 餘1 6位元組(稱 制資訊。一般在 訊記錄區通常尚 的架 接儲 增加 壓縮 媒體 制, 有關 「記 以利 至記 寫入 ,都 的儲 的關 構與 存至 記憶 等方 係以 亦因 對照 憶頁 用。 憶體 與更 是以 存架 聯對 記錄資 記憶體 體硬體 式產生 「記憶 讀寫存 指標與 」保留 另外其 「記憶 新資 長度固 構卻無 照表進 矽儲存媒體控制 ,作為資料框架
12745twf.ptd 第10頁 1233616 五、發明說明(5) 的資料記錄 對照表緩衝 聯對照表提 本發明 之架構、控 制器更新資 區」之關聯 架之前置描 本發明 之架構、控 關聯對照表 搜尋資料對 資料框架進 設一「定址 本發明 體的儲存容 資料儲存前 本發明(一) 儲存空間, 述元」,後 記錄容量接 後,才記錄 中存放之「 置描述元」 格式區」 供後 的另 制方 料框 對照 述元 之再 制方 緩衝 照碼 行資 對照 所提 量, 加以 可使 並經 端增 近一 至記 資料 中統 與對照模式,同時於控制器增設一 「關聯 (translation table buffer),以記錄關 續存取作業參考。 一目的是提供一種矽儲存媒體及其控制器 法、資料記錄格式與對照模式,其中之控 架時,同步更新記錄於「關聯對照表緩衝 表,並將其對照關係標註於更新後資料框 目的是提供一 法、 , ,取 料傳 模組 供之 可另 壓縮 原始 過控 設「 「記 憶體 框架 一註 貧料記錄格 依據系統端 得對應之記 回系統或更 」(address 矽儲存媒體 外包括資料 並在資料言買 資料經過壓 制器壓縮後 後置資料錯 憶區塊」儲 中規劃之位 」為基礎’ 記對照指標 種矽儲存媒體及其控制器 式與對照模式,為加速於 下達之讀寫存取指令住址 憶體區塊位址,以迅速讀 新作業,得於控制器中增 mapping module) ° 控制器,若為提升儲存媒 壓縮/解壓縮單元,且在 取時加以解壓縮。因此, 縮之程序而縮小其佔用之 之資料前端增設「前置描 誤檢查碼」而構成一儲存 存容量之「資料框架」 置;(二)以「記憶區塊」 在「資料框架」中之「前 與錯誤偵測修正碼,可進
12745twf.ptd 第11頁 1233616 五、發明說明(6) 一步減少該等資 高矽儲存媒體記 有效空間。(三) 資料構成「資料 取、寫入與資料 原始資料長度不 本發明中的 制器於啟動時進 描述元之標示, 聯。「關聯對照 有記憶體内所有 建立後並須於系 以維持對照關聯 錄元」(mapping 錄記憶體中一組 表緩衝區容量大 之多募,控制器 視系統當時存取 取效率於緩衝區 兩組或以上之部 對照記錄元 間儲存資料框架 控制器啟動 塊狀態與資料框 訊佔用每一個記 錄容量實際應用 其關聯對照表須 框架」為基礎之 ,以及更關聯對 等之「資料框架 資料框架得存放 行掃描並建立關 重建此資料框架 表」係由控制器 記憶區塊所儲存 統端寫入或更新 的正確性。「關 e n t r y )戶斤組成 記憶區塊之狀態 小,以及適配之 付視狀況*次建 區間建立部分之 中,以分區方式 分關聯對照表。 内,須依據對應 標示之資訊,註 後,讀取記憶體 架之前置描述元 憶頁之儲存空間,藉以提 於儲存系統端可用資訊之 配合對應長度可變之原始 關係而建立。其進行讀 照表之作業,均須以對應 」為基準。 於記憶體中任意位置,控 聯對照表時,即可依此前 與原始資料之間的對照關 於啟動時掃描記憶體内所 之資料框架所建立而成, 資料時,持續進行更新, 聯對照表」係由「對照記 ,每一組對照記錄元可記 。視控制器内建關聯對照 記憶體内含記憶區塊數量 立完整之關聯對照表,或 關聯對照表,或為提高存 劃分特定範圍,分別建立 之記憶區塊的狀態,或其 記其内容。 内各記憶區塊中標註之區 ,並將資訊記錄至關聯對
12745twf.ptd 第12頁 1233616 五、發明說明(7) 照表中對照該記憶區塊之對照記錄元。關聯對照表可採用 雙向串列連結的方式。使控制器得以自起始位址開始向下 連結資料框架對應之系統端位址與記錄之記憶區塊位置, 或以反向為之。 當控制器組建關聯對照表完成後,即可接受系統端下 達存取指令。若系統端下達讀取指令時,控制器隨即於關 聯對照表中搜尋,檢查是否能在對照表中取得對應系統端 讀取位址之記憶區塊與資料框架之位址。若能取得對照之 資料框架位址,則讀取資料框架進入資料緩衝區,進行解 壓縮後,將原始資料傳回系統端。若未能取得對照之資料 框架位址,則逕行傳回預設之資料形式。 另一方面,若系統端下達寫入指令時,控制器隨即於 關聯對照表中搜尋,檢查是否能在對照表中取得對應系統 端讀取位址之記憶區塊與資料框架之位址。若能取得對照 之資料框架位址,則讀取資料框架進入資料緩衝區,進行 解壓縮後,以系統端傳入之更新資料更新資料框架,然後 取得未使用記憶區塊記錄更新後之資料框架,用於記錄更 新前資料框架之記憶區塊,則予以抹寫;進行上述作業 時,同步更新關聯對照表。若未能取得對照之資料框架位 址,則直接將系統端寫入之資料組建成資料框架,並取得 未使用之記憶區塊記錄儲存新建立之資料框架;進行上述 作業時,並同步更新關聯對照表。 綜上所述,若能夠在資料框架為基礎之矽儲存媒體中 結合壓縮原始資料,或解壓縮記錄在記憶體内容的「資料
12745twf.ptd 第13頁 1233616 五、發明說明(8) 框架」,均配合本發 一 照表,於存取時所二之對照方法,於啟動時建 3制,然係Π新,習知石夕儲存媒體控制器雖 -;貝料進仃壓縮後所妾β己錄、存儲原始資料的方法, 由此對於日益普及ί的狀況與因應的方法並無前 憶n往往佔產品存媒體應用而言’高 =二屋縮/解塵縮方法與成本結構中相當高的百分比,若能 =較低容量之記憶、發明,應用於矽儲存媒體, 的進而降低成本及轾,,達到提高實際記錄容量的目 、 又者,本發明之作高產品價值。 j1為提高系統端存^流程得透過控制器執行勒體 内建於定址對斗之速度,亦得以硬體線 if後Ϊ存取目標位址對83二中,使控制器得迅速搜尋判斷 仃後續作業。 ,照於關聯對照表之中的狀況,二 為讓本發明之上 ”懂’下文特舉—m,目的、特徵、和優點能更明 、、’田說明如下: 實施例’並配合所附圖式,作詳 裔z 〇内包括一糸統與石夕儲在说雜以主丨。》 · 父換管道之系統端介面211、—間資料ιφ ^ . ,,212 ^ ^ 12745twf.ptd 第14頁 1233616 五、發明說明(9) 控制器2 1 0之間資料交換管道的記憶體介面2 1 6 ;另外,為 實現資料壓縮功能,控制器2 1 0更包括一資料壓縮/解壓縮 模組2 1 4 ;而為與系統以及記憶體2 2 0間資料存取速度加 快,控制器2 1 0更包括暫存與系統間交換資料用的第一、 第二系統端資料緩衝區2 1 3 a、b以及暫存與記憶體2 2 0間交 換資料用的第一、第二記憶體資料緩衝區2 1 5 a、b ;另一 方面亦可以僅以單一的系統端資料緩衝區2 1 3 a與記憶體資 料緩衝區2 1 5 a作為暫存資料的緩衝區即可,端看設計時的 考量方向。 請參考第3圖,為支援前述壓縮架構下的矽儲存媒 體,本發明在控制器3 1 0内亦内建一關聯對照表緩衝區 3 1 7,其内儲存一種記錄固定資料長度(由系統端傳送)與 可變資料長度(由壓縮機制產生)間位址轉換關係之關聯對 照表(將在後續說明中描述如何建立該關聯對照表),供作 資料存取參考用,另外,為加速資料搜尋作業,更内建一 定址對照模組3 1 8,作為系統端下達之存取指令之依據, 取得對應之記憶體2 2 0的一記憶區塊位址,並讀取資料框 架進行資料傳回系統或更新作業。 矽儲存媒體310包括一記憶體32 0,該記憶體3 2 0包括 多數個記憶區塊,每一記憶區塊包括僅以一資料框架格式 作為資料儲存、存取的依據,其中每一資料框架包含的資 料型態係經資料壓縮器3 1 4a壓縮系統端傳送的固定長度資 料而成的可變資料長度,而為統一管理該些壓縮資料,在 該資料框架前端設立一前置描述元、後端設立一錯誤檢查
12745twf.ptd 第15頁 1233616 五、發明說明(ίο) 碼,請參考第4 A圖。藉此之設計,即可不需在每一記憶頁 皆放置控制資訊,亦可增加未使用空間的使用率,而在前 置描述元與錯誤檢查碼間則記錄複數個壓縮後的磁區資 料。 其中,「前置描述元」中標示有壓縮後資料對應之原 始資料起始位址與資料長度,其資料框架前置描述元格式 如表一所列: 資料樞架前置描述元格式 位址 長度 名稱 定義 0 1 BS Block Status纪憶區塊狀態 FF:表示抹寫後 F0:表示使用中 00:表示不良 1 4 SA Start Address資料封包對應原始資料起始位址 5 1 DL Data Length原始資料長度 f以磁區-sector為單位,代表容量512位元组) 6 1 AI Al gorithm Indi cat or塵縮演算法指標 7 1 PI Parameter Indicator 參數表指標 表一 要注意的是,本發明中的矽儲存媒體控制器,在具備 壓縮/解壓縮功能時才需要在前置描述元内加入壓縮演算 法指標及參數表指標。此外,該前置描述元的格式不限於 表一中所列示,各位元所記載的資料屬性及資料長度只要
12745twf.ptd 第16頁 1233616 五、發明說明(11) 能成功對照到原始資料,均在本發明所可應用的範圍之 内〇 在前述關於關聯對照表的建立,即是依據讀取資料框 架的前置描述元而建立,該關聯對照表係由複數個對照記 錄元(mapping entry)所構成(請參考第4B圖),藉此決定 資料框架所對應之原始資料的容量與儲存位置,同時作為 系統端線性連續位址與矽儲存媒體端記憶體的非線性片段 化的定址對應模式。 在一實施例中,對照記錄元内依據對應之記憶區塊所 儲存之前置描述元,構成的格式與代表意義如下表所列
12745twf.ptd 第17頁 1233616 五、發明說明(12) 位址(位元) 名稱 長度 說明 0〜7 BS 4 Block Status·纪憶區塊狀態。 F:採寫後 使用中 3:不良 8〜31 SA 28 Start Address-資料框架對應之LB A 起始位址 32 〜39 FL 8 Frame Length-資料框架内含原始資 料長度,以磁區為舉位 40 〜51 PE 12 Previous Entry-對照前一資料框架之 對照記錄元; FFF係一預設值,表起始資料框架 52 〜63 NE 12 Next Entry-對照下一資料框架之對照 錄元, fff係一預設值,表最終資料框架 表二 其中,視控制器3 1 0内建關聯對照表緩衝區3 1 7容量大 小,以及適配之記憶體3 2 0内含記憶區塊數量之多寡,控 制器3 1 0得視狀況一次建立完整之關聯對照表,同時視系 統端當時存取區間而可建立部分之關聯對照表,以分區方 式劃分特定範圍,分別建立兩組或以上之部分關聯對照 表。 當存在一特定之矽儲存媒體,其記憶體中僅存放有系
12745twf.ptd 第18頁 1233616 五、發明說明(13) 統初始化後載入之基礎資料。在此採用習知的F Α τ 1 2 ;):當案 系統為例,矽儲存媒體中所記錄之原始資料至少包括Y開 機記錄磁區(master boot record)、磁區分割表 (partition table)、分割區開機記錄(partiti〇n b〇〇t sector)、根目錄(root directory)、檔案配置表(f"e allocation table )等資訊。例如該矽儲存媒體採用容量 為1 6 Μ B (百萬位元組)之記憶體,每一記憶頁容量為 5 2 8 Β (位元組),每一記憶區塊容量為3 2記憶頁相當於 1 6 Κ Β (彳千位元組)。則上述原始資料依系統端線性連續定址 方式,佔用位址〇〜47合計48個磁區,容量相當於24ΚΒ之區 間。分布情形如表三所列示。 原始資料位址 資料長度 0 1 MBR·主開機記錄磁 區,磁區分割表 1〜26 26 未使用 27 1 BPB·分割區開機·記錄 28 〜29 2 FAT-樓案配置表 30 〜31 2 FAT-檔案配置表『副本) 32-47 16 Root Directory-根目錄 表三 若將上述資訊壓縮後’因其中原始資料位址1至2 6之 間並未記錄任何資訊’其内容全部設定為初始值〇 X F F,因
12745twf.ptd 第19頁 1233616 五、發明說明(14) 而可達到相當高的壓縮比,其餘資訊僅佔用2 2個磁區,相 當於1 1 K B容量之原始資料。由此可知上述初始化原始資 訊,將可輕易在壓縮構成容量低於1 6 K B之資料框架。' 此時,該等系統初始化後載入之基礎資料僅需一資料 框架即可加以儲存,其中因對應之原始起始位址為〇,'資 料長度4 8,即以下表說明該資料框架的前置描述元記錄胃狀 況0 BS SA DL AI PI OxFO 0x00 0x00 0x00 0x00 0x30 Oxmm Oxnn 其中的A I、P I依控制器視原始資料特性選定夕县^ 、心 < 敢適懕給士 法而定,以Oxmm、Oxnri表示。 难万 請再次參照第4B圖,當控制器3 1 〇掃描到上 前置記錄元時,因係矽儲存媒體初始化的壯能’L表二的 塊位址為0之第一記憶區塊記錄此資料框架時,|此u & 續原始資料與資料框架之間的關係如第4B圖 合則_線性連 在「系統端線性連續定址」部份代表發 f示。 述進行初始化後,僅有LBA = 0至LBA = 47之區門4子媒體依前 有意義資訊時的情形,其中已使用之區塊H48磁區記錄 示。而第4B圖中「記憶體端非線性片段化異滿的深色表 疋址」部份代表
12745twf.ptd 第20頁 1233616 五、發明說明(15) 記憶體内部,以記憶區塊為單位存放資料框架以儲存縮後 資料的情形。另外第4 B圖中的「控制器内部關聯對照表」 部份表控制器内部,於矽儲媒體啟體後,建立關聯對照表 連結系統端線性連續定址至記憶體端之非線性片段化定址 的情形。由於是第一個使用中的記憶區塊,其在關聯對照 表中對應建置一對照記錄元,其内記錄之資訊如下表:
位址(位元) 名稱 長度 說明 0〜7 BS 4 c:使用中 8〜31 SA 28 Start Address=0x0 0 32-39 FL 8 Frame Length=0x3 0 40-51 PE 12 Previous Entry=FFF 52-63 ΝΈ 12 Next Entry=FFF 表五 以下將對關聯對照表的建立作一更詳細說明。 請參考第5圖,係繪示控制器於啟動(s 5 0 2 )後組建關 聯對照表的流程示意圖。首先偵測適配記憶體形式與容量 (s504),其中先定義最末區塊為last_block,接著規劃與 初始化關聯對照表緩衝區(s 5 0 6 ),並開始讀取掃描記憶區 塊BA = 0 (s 5 0 8 )。接下來讀取每一記憶區塊狀的前置描述 元(s 5 1 0 )以及將讀取的標註區塊狀態記錄於對照記錄元 (s 5 1 2 )。此時判別記憶區塊狀態(s 5 0 1 ),若區塊處於使用 中,則對照記錄元標註起始位址(S A )及資料長度
12745twf.ptd 第21頁 1233616 五、發明說明(16) (D L ) ( s 5 1 4 ),並更新關聯對照表使用中區塊串列連結 (s 5 1 6 )及更新關聯對照表未使用區塊串列連結(s 5 1 8 )。若 判別記憶區塊狀態處於未使用,則直接更新關聯對照表未 使用區塊串列連結(s 5 1 8 )。此時若發現區塊不良,則折回 判定記憶區塊狀態步驟(s 5 0 1 )。若無發現不良狀況,則判 別最末區塊是否符合6八=183。1)1〇〇1^(5 5 0 3 ),若是,則關 聯對照表組建完成(s 5 2 2 );若否,則掃描下一記憶區塊 BA = BA+1 ,且繼續讀取記憶區塊的前置描述元(s51 0)。 其中因為關聯對照表的建立牵涉到一未使用區塊串列 連結表以及一使用區塊串列連結表,以本發明之一較佳實 施例而言,係採用雙向串列連結的資料結構方式,使控制 器得以自起始位址開始向下或反向連結資料框架對應之系 統端位址與記錄之記憶區塊位置。 以下即再詳細說明該兩種串列連結表的建立過程。 首先請合併參照第4 B與第6圖,所繪示的是記憶區塊 未使用時,更新「未使用區塊」之串列聯結表的方式。建 立此未使用的串列連結表是以第4B圖所示之EMPTY與 EMP —END兩個指標作為參考指標,首先先初始化該兩個指 標值為一預設值(如FFF),同時將記憶體的BA(Block Address)言史為0(s602) ’當在步驟s601發現有未使用的§己 憶區塊(BS = FF),則先判斷EMPTY指標是否為一預設值 (s 6 0 3 ),若是,則表示是首次發現未使用的記憶區塊,因 此將該兩個指標皆設為此首次未使用區塊的位址 (Ε Μ P T Y = B A與Ε Μ P - E N D = B A ),同時在對應該區塊的對照記錄
12745twf.ptd 第22頁 1233616 五、發明說明(17) 元中記錄PE(BA) = FFF以及NE(BA) = FFF(s 6 0 4 ),但當判斷為 一非首次未使用區塊,則同樣更新該未使用區塊對應的對 照記錄元,包括將PE(BA)設為EMP-END以及將NE(BA)設為 FFF,同時將指標EMP — END指向該記憶區塊的位址 (BA)(s606);不論進行上述之s604或s606步驟,接著會判 斷該區塊是否為一最後區塊(s 6 0 5 ),若否,則繼續針對下 一區塊進行上述s 6 0 1後續的動作,若已是最後的區塊,則 表示未使用記憶區塊的串列連結表已建立完成(s 6 1 0 )。 請合併參照第4 B與第7圖,繪示的是記憶區塊使用 時,更新「使用區塊」之串列聯結表的方式。建立此使用 區塊的串列連結表是以第4B圖所示之START與END兩個指標 作為參考指標。同樣一開始先初始化START與END指標為一 預設值(如FFF),同時將記憶體的BA(Block Address)設為 0 ( s 7 0 2 ),須依據資料框架前置描述元標註之起始位址 (S A )與資料長度(DL )參數,搜尋將該對照記錄元插入串列 連結資料結構的位置,並更新前一第對照記錄元之NE指 標,以及後一筆對照記錄元之PE指標,同時將前一筆對照 記錄元之BA登錄為此筆對照記錄元之NE,將後一筆對照記 錄元之BA登錄為此筆對照記錄元之PE。接著判別是否發現 使用中區塊BS = F0(s701 ),若是,判別是否為首次發現 (s 7 0 3 )。若為首次,則設START = BA,END = BA, PE(BA) = FFF,NE(BA) = FFF(s704 ),但若非為首次發現,則 搜尋一插入點,其中先將一代表插入點指標BA-I NS設為 START指標所指向的對照記錄元(s710),在插入前尚需判
12745twf.ptd 第23頁 1233616 五、發明說明(18) 斷搜尋到的非首次的使用區塊SA值是否小於該插入點指標 BA—I NS所指向的值’若是,則判斷BA_I NS指標值的前一對 照記錄元是否為一第一個使用區塊(s 7 〇 7 ),若是,則需先 更新S T A R T指標為此搜尋到的區塊位址,再將記錄元插入 串列連結(s 7 0 6 ) ’若否即直接進行記錄元的插入(s 7 〇 6 ); 但當該搜尋到的使用區塊SA值大於或等於該插入點指標 B A 一 I N S所指向的值(s 7 0 5 ),則續判斷該b A _ I N S的下一對照
記錄元是否為最後的使用區塊(s7〇9),若是,則更新END 指標並且將搜尋到的使用區塊標記為最後的使用區塊 (s 7 1 4 )’再將對照該最後區塊的對照記錄元插入至使用中 串列連結中(s 7 0 8 ),但當B A _ I N S的下一對照記錄元非為最 後的使用區塊,則針對下一個B a 一 I N S進行判斷,當上述掃 描作業至最後一塊區塊時即完成使用中區塊的串列連結 表。 記要注意的是,本發明一較佳實施例中的關聯對照表係採 用雙$串列連結的方式以建立使用中記憶區塊與系統端定 址之^的對照關係。惟若為減少控制器須内建之緩衝區大 ΐ L ^為提高搜尋對應記憶區塊位址之效能,亦可採用其 匕適用之資料結構。 c S 8 f ί第8圖’當上述控制器組建關聯對照表完成 =姑紗ί ’即可待命接受系統端下的存取指令(s8 04 )。當 傳送至矽喝取心令寺會將所需資料的LBA位址與資料長度 stGt ^ /堵存媒體(s8 0 6 )時’此時砍儲存媒體的控制器從 曰向的記憶區塊位址開始於關聯對照表中搜尋對
1233616 五、發明說明(19) 照的資料框架(s 8 0 8 ),其中當欲讀取的資料起點與資料長 度非座落在最開始記憶區塊的位址起點時(s 8 0 1與s 8 0 3 ), 則進入B結點而傳回預設值,代表欲讀取的資料非在該記 憶體中,但當部分資料長度座落在最開始記憶區塊的位址 起點後時(s 8 0 1與s 8 0 3 ),則傳回部份預設值及部分讀取的 資料至系統端(s810與s8 0 5、s812),另外,當欲讀取資料 的起始位址與資料區段皆座落在最開始記憶區塊的位址起 點與其資料框架大小範圍内時(s 8 0 5與s 8 0 7 ),,則讀取資 料框架進入資料緩衝區,進行解壓縮後(s 8 1 2 ),將原始資 料傳回系統端(s 8 1 6 )。但當欲讀取資料的起始位址座落在 最開始記憶區塊的位址起點,但其部分欲讀取資料範圍座 落於資料框架大小範圍外時(s 8 0 5與s 8 0 7 ),則傳回部份 資料長度,同時更新起始位址以在下一次將剩餘資料傳輸 完成,而在其他狀況時,則表示未能取得對照之資料框架 位址’可逕行傳回預設之資料形式(s 8 1 8 )。 其中當控制器更新資料框架時,亦更新關聯對照表緩 衝區,並將一種對照關係記錄於前置描述元中,而定址對 照模組記錄原始資料的位址,並依據該系統下達的讀寫存 取指令位址搜尋關聯對照表緩衝區,取得對應之記憶區 塊,並自對應的記憶區塊中讀取所包含的資料框架。 參照第9圖〜第1 2圖,其中第9圖為寫入作業主流程示 意圖’第1 0圖〜第丨2圖為依據傳輸起點與傳輸範圍與資料 框架的相對關係不同所示的副流程示意圖。 先參考第9圖。當控制器組建關聯對照表完成後
j2745twf.ptd
第25頁 1233616 五、發明說明(20) (s 9 0 2 ),即可待命接受系統端下存取指令(s 9 0 4 )。當系統 端下達寫入指令時(s 9 0 6 ),控制器隨即於關聯對照表中搜 尋,檢查是否能在對照表中取得對應系統端讀取位址之記 憶區塊位址(s 9 0 8 )。然後以步驟s 9 0 1、s 9 0 3、s 9 0 5、 s 9 0 7、s 9 0 9與s 9 1 1 ,分別判斷欲寫入的資料係為一更新資 料或為新寫入的資料,因此共有五種可能狀態,分別為傳 輸起點與資料範圍在框架外的ConditionA(s910)、傳輸起 點在框架外但資料範圍在框架内的C ο n d i t i ο η B ( s 9 1 2 )、傳 輸起點與資料範圍皆在框架内的ConditionC(s914)、傳輸 起點在框架内但部份資料範圍在框架外的
ConditionD(s916)以及傳輸起點與資料範圍在框架外且座 落於最後框架後方的ConditionE(s920),以下將再詳細說 明該五種狀況。 值得注意的是,前述作業流程得透控制器執行韌體實 作達成,為提高系統端存取資料之速度,亦得以硬體線路 將部份功能内建於定址對照模組中,使控制器得迅速搜尋 判斷系統端存取目標位址對照於關聯對照表之中的狀況, 並執行後續作業。 在此說明第10圖〜第12圖中的A、B、C、D、E五種狀 況: 狀況A : 參考第1 0圖。搜尋關聯對照表結果,系統寫入目標位 址起點,以及傳輸資料長度範圍,均落在既有資料框架 外,且起始位址在資料框架B A註記之資料長度。因此直接
12745twf.ptd 第26頁 i^36l6_ 五、發明說明(21) 樞^使=記憶區塊關聯對照表取得EMPTY儲存記錄新資料 增ί次=Β Α Γ為使用中關聯對照表起始位置s T A R τ ’則新 插入3 _ Μ ^插入至使用中關聯對照表最:前方’否則 指掩 用中關聯對照表BA前,PE(BA)後;並更新各項相關 狀況B : 拖加I考第1 〇圖。系統寫入目標起始位址起點在既有資料 很罙外,彳曰僖齡次、 1 一1寻輸貝料長度範圍則有部份落在既有資 木。此*日存,4+料4 盥你、、w Λ ^ f別段未落入既有資料框架的部份處理方式 ^況c’ ·相同’針對後段落返回主流程進行後續處理。
參考第1 1圖。搜尋關聯對照表結果,系統寫入目標位 址起點以及傳輪資料長度範圍,均落在既有資料框架。 因此直接自使用中之記憶區塊關聯對照表取得對應之記憶 區塊BA讀取資料進行解壓縮。自系統端傳原始資料 “
XyR-Length更新原始資料後,重新進行壓縮組件新資料框 架。自未使用記憶區塊關聯對照表取得empty,將更新後 資料框架儲存記錄至記憶區塊EMPTY。若BA恰為使用中關 聯對照表起始位置START,則更新後之資料框架NEW插入至 使用中關聯對照表最前,否則插入使用中關聯對照表BA、
P E ( B A)後;並更新各項相關指標。β a記憶區塊則予以抹 寫,並插入未使用記憶區塊關聯對照表最後方。 狀況D : 參考第1 1圖。搜尋關聯對照表結果,系統寫入目標位
12745twf.ptd 第27頁 1233616
址起點,落在既有資料框加· 欠 資料框架原始資料長度以二。’但資料傳輸範圍則超出對照 料框架的部份處理方式盥 此時’針對前段落入既有資 出既有資料框架的部份了 11011 c相同,針對後段超
Star t 一 LBA與資料傳輪县库γ 起始位址 後續處理。 寻輸長度XF[後返回主流程進行 狀況E :
參考第1 2圖。搜尋關聯對照表結果,系統寫入目標位 址起點’以及傳輸資料長度範圍,均落在既有資料框架以 外’且起始住址在最後一組資料框架^(意即 PE(BA) = = FFF)之資料長度後。因此直接自未使用記憶區塊 關聯對照表取得EMPTY,並自系統端傳入原始資料組件資 料框架儲存記錄至NEW插入至使用中關聯對照表最後,並 更新各項相關指標。 雖然本發明已以一較佳實施例揭露如上,然其並非用 以限定本發明,任何熟習此技藝者,在不脫離本發明之精 神和範圍内,當可作些許之更動與潤飾,因此本發明之保 護範圍當視後附之申請專利範圍所界定者為準。
12745twf.ptd 第28頁 1233616 圖式簡單說明 第1 A圖是依照習知所繪示之矽儲存媒體及其系統内部 架構示意圖。 第1 B圖是依照N A N D型快閃記憶體所繪示之記憶體中資 料區塊記錄格式示意圖。 第2圖是依照習知所繪示具備資料壓縮功能之矽儲存 媒體示意圖。 第3圖是依照本發明中一較佳實施例所繪示之以標示 對照之資料框架為基礎之矽儲存媒體及其控制器的示意 圖。 第4 A圖是依照本發明中較佳實施例所繪示之資料框架 及其前置描述元的格式示意圖。 第4 B圖是依照本發明中一較佳實施例所繪示之矽儲存 媒體初始化後之關聯對照情形示意圖。 第5圖是依照本發明中一較佳實施例所繪示之以標示 對照之資料框架為基礎之矽儲存媒體控制器放啟動後組建 關聯對照表的流程示意圖。 第6圖是依照本發明中一較佳實施例所繪示當記憶體 區塊未使用時更新未使用區塊之串列聯結表方法的流程示 意圖。 第7圖是依照本發明中一較佳實施例所繪示當記憶體 區塊使用中時新使用中區塊之串結表方法的流程示意圖。 第8圖是依照本發明中一較佳實施例所繪示當系統端 讀取資料的作業流程圖示意圖。 第9圖是依照本發明中一較佳實施例所繪示當系統端
12745twf.ptd 第29頁 1233616 圖式簡單說明 寫入資料的作業流程圖示意圖。 第1 〇圖是依照本發明中一較佳實施例所繪示當系統端 寫入資料時一些情況的作業流程圖示意圖。 第1 1圖是依照本發明中一較佳實施例所繪示當系統端 寫入資料時再一些情況的作業流程圖示意圖。 第1 2圖是依照本發明中一較佳實施例所繪示當系統端 寫入資料時又一些情況的作業流程圖示意圖。 圖式標記說明 100 矽儲存媒體 110 控制器 112 系統介面 114 微處理器 116 資料緩衝區 118 記憶體介面 120 記憶體 2 0 0 具資料壓縮功能之矽儲存媒體 210 控制器 21 1 系統端介面 213a 第一系統端資料緩衝區 213b 第二系統端資料緩衝區 214a 資料壓縮器 214b 資料解壓縮器 215a 第一記憶體資料緩衝區
12745twf.ptd 第30頁 1233616 圖式簡單說明 2 15b 第二記憶體資料緩衝區 216 記憶體介面 2 2 0 記憶體 3 0 0 資料框架為基礎之矽儲存媒體 3 10 矽儲存媒體控制器 3 11 系統端介面 3 13a 第一系統端資料緩衝區 313b 第二系統端資料緩衝區 314a 資料壓縮器 314b 資料解壓縮器 315a 第一記憶體資料緩衝區 315b 第二記憶體資料緩衝區 316 記憶體介面 317 關聯對照表緩衝區 3 18 定址對照模組 3 2 0 記憶體 5 0 0 以標示對照之資料框架為基礎之矽儲存媒體控制器 放啟動後組建關聯對照表的流程圖 6 0 0 當記憶體區塊未使用時更新未使用區塊之串列聯結 表方法的流程圖 7 0 0 當記憶體區塊使用中時新使用中區塊之串結表方法 的流程圖 8 0 0 當系統端讀取資料的作業流程圖 9 0 0 當系統端寫入資料的作業流程圖
12745twf.ptd 第 31 頁 1233616 圖式簡單說明 1 0 0 0 當系統端寫入資料時一些情況的作業流程圖圖 1100 當系統端寫入資料時再一些情況的作業流程圖 1 2 0 0 當系統端寫入資料時又一些情況的作業流程圖 12745twf.ptd 第32頁

Claims (1)

1233616 六、申請專利範圍 1 . 一種矽儲存媒體,適用於與一系統之間資料的讀取 與寫入,包括: 一記憶體,包括多數個記憶區塊,每一該些記憶區塊 包括以一資料框架為單位的儲存資料,該資料框架包括一 前置描述元,複數個磁區資料,以及一錯誤檢查碼,其中 該前置描述元位於該資料框架之最前端;以及 一控制單元,包括: 一關聯對照表緩衝區;以及 一定址對照模組, 其中,當該控制單元 聯對照表緩衝區,並將一 該定址對照模組記錄一原 的一讀寫存取指令位址搜 應之該記憶區塊,並自對 該資料框架。 2. 如申請專利範圍第1 制單元更包括: 一系統端介面,係該 管道; 一第一系統端資料緩 一微處理器,係用來 更新該資料框架時,亦 對照關係記錄於該前置 始資料的位址,依據該 尋該關聯對照表緩衝區 應的該記憶區塊中讀取 更新該關 描述元, 系統下達 ,取得對 所包含的 項所述之矽儲存媒體,其中該控 系統與該控制單元之間資料交換 衝區,用來暫存資料; 執行讀取、寫入與抹寫之相關作 業; 以及 之間的資 第一資料端資料緩衝區,用來暫存資料; 記憶體介面,係該些記憶體與該控制單元
12745twf.ptd 第33頁 1233616 六、申請專利範圍 料交換管道。 3. 如申請專利範圍第1項所述之矽儲存媒體,其中該控 制單元更包括一資料壓縮/解壓縮模組。 4. 如申請專利範圍第3項所述之矽儲存媒體,其中該控 制單元更包括一第二系統端資料緩衝區及一第二記憶體資 料緩衝區,作為該資料壓縮/解壓縮模組分別與該系統端 介面及該記憶體介面之間的資料暫存。 5. 一種矽儲存媒體控制器,適用於依照一系統下的一 存取指令控制與至少一記憶體之間的資料存取,該矽儲存 媒體控制器包括: # 一系統端介面,係該系統與該矽儲存媒體控制器之間 資料交換管道; 一第一系統端資料緩衝區,用來暫存資料; 一微處理器,係用來執行讀取、寫入與抹寫之相關作 業; 一關聯對照表緩衝區,以記錄一關聯對照表作為資料 存取參考; 一定址對照模組,以作為該系統端下達之該存取指令 之依據,取得對應之該記憶體的一記憶區塊位址,並讀取 該資料框架進行資料傳回系統或更新作業; 一第一資料端資料緩衝區,用來暫存資料;以及 一記憶體介面,係該些記憶體與該矽儲存媒體控制器 之間的資料交換管道。 6. 如申請專利範圍第5項所述之矽儲存媒體控制器,更
12745twf.ptd 第34頁 1233616 六、申請專利範圍 包括一資料壓縮/解壓縮模組。 7. 如申請專利範圍第6項所述之矽儲存媒體控制器,更 包括一第二系統端資料緩衝區及一第二記憶體資料緩衝 區,作為該資料壓縮/解壓縮模組分別與該系統端介面及 該記憶體介面之間的資料暫存。' 8. 一種矽儲存媒體控制方法,包括一控制單元與至少 一用以記錄資料框架之記憶體,該矽儲存媒體控制方法包 括: 根據讀取該資料框架時所取得的一前置描述元,建立 一關聯對照表; 根據該關聯對照表,決定該資料框架所對應之一原始 資料的容量與儲存位置, 其中,該前置描述元位於該資料框架的最前端,且該 資料框架的資料儲存量係依據該儲存媒體的基本抹寫單位 而定。 9. 如申請專利範圍第8項所述之矽儲存媒體控制方法, 其中該前置描述元包括: 一記憶區塊狀態; 一對應原始資料之資料框架的記憶體起始位址;以及 一原始資料長度。 10. 如申請專利範圍第9項所述之矽儲存媒體控制方 法,其中該關聯對照表係由複數個對照記錄元所組成,而 每一該些對照記錄元儲存之資訊包括: 一記憶區塊狀態;
12745twf.ptd 第35頁 1233616 六、申請專利範圍 一對應原始資料之資料框架的記憶體起始位址; 一原始資料長度; 前一資料框架之對照記錄元位址;以及 下一資料框架之對照記錄元位址。 11. 如申請專利範圍第1 0項所述之矽儲存媒體控制方 法,其中當該原始資料係經壓縮而以該資料框架格式儲存 於該抹寫單位中,則該前置描述元與該對照記錄元儲存之 資訊更包括: 一壓縮演算法指標;以及 一參數表指標, 其中,壓縮該原始資料時所用之演算法種類係根據該 壓縮演算法指標而得,且壓縮該原始資料時所用之參數係 由該參數表指標而得。 12. 如申請專利範圍第8項所述之矽儲存媒體控制方 法,其中該關聯對照表的建立更包括: 建立一未使用區塊串列連結表; 建立一使用區塊串列連結表;以及 視存取狀況更新該未使用區塊串列連結表與該使用區 塊串列連結表。 13. 如申請專利範圍第1 2項所述之矽儲存媒體控制方 法,其中建立該未使用區塊串列連結表之步驟包括: a. 循序搜尋該些記憶區塊; b. 當找到一個未使用之記憶區塊,且該未使用區塊串 列連結表為空時,則設定此未使用之記憶區塊為該未使用
12745twf.ptd 第36頁 1233616 六、申請專利範圍 區塊串列連結表之一起始區塊與一最後區塊,並將該未使 用區塊之一前一區塊與一後一區塊的值設定為一預設值; C .當找到一個未使用之記憶區塊,且該未使用區塊串 列連結表中之該最後區塊已指向一個合法的未使用記憶區 塊時,則進行下列步驟: c 1 .將該最後區塊設定為此次所找到的未使用之 記憶區塊; c 2.將該合法的未使用記憶區塊的該後一區塊的 值設定為此次所找到的未使用之記憶區塊; c 3.將此次所找到的未使用之記憶區塊的該前一 區塊的值設定為該合法的未使用記憶區塊;以及 c 4.將此次所找到的未使用之記憶區塊的該後一 區塊的值設定為該預設值;以及 d.根據該些未使用之記憶區塊間的連結關係來建立該 未使用記憶區塊串列連結表。 14. 如申請專利範圍第1 3項所述之矽儲存媒體控制方 法,其中該預設值為F F F。 15. 如申請專利範圍第1 2項所述之矽儲存媒體控制方 法,其中建立該使用區塊串列連結表之步驟包括: a. 循序搜尋該些記憶區塊; b. 依據已使用之該些記憶區塊所儲存之該些資料框架 中的該些前置描述元所標註之該些原始資料起始位址與該 些原始資料長度,判斷已使用之該些記憶區塊的排列順 序;
12745twf.ptd 第37頁 1233616 六、申請專利範圍 C .根據已使用之該些記憶區塊的排列順序來建立該使 用區塊串列連結表。 16. 如申請專利範圍第1 5項所述之矽儲存媒體控制方 法,其中之步驟b包括: b 1 .搜尋一此筆對照記錄元插入該使用區塊串列連結 表的位置; b 2 .更新一前一對照記錄元之指標,以及一後一對照 記錄元之指標;以及 b 3 .同時將該前一對照記錄元之位址登錄為該此筆對 照記錄元之該後一對照記錄元,將該後一筆對照記錄元之 位址登錄為該此筆對照記錄元之該前一對照記錄元。 17. 如申請專利範圍第8項所述之矽儲存媒體控制方 法,其中該系統端傳送一讀取指令時,該矽儲存媒體控制 方法包括: 於該關聯對照表中搜尋對應於該系統端讀取位址之該 記憶區塊與該資料框架之一對應位址; 若取得該對應位址,則讀取該資料框架進行解壓縮, 並將該原始資料傳回該系統端;以及 若未能取得該對應位址,則傳回一預設資料形式。 18. 如申請專利範圍第8項所述之矽儲存媒體控制方 法,其中該系統端傳送一寫入指令時,該矽儲存媒體控制 方法包括: 於該關聯對照表中搜尋對應於該系統端讀取位址之該 記憶區塊與該資料框架之一對應位址;
12745twf.ptd 第38頁 1233616 六、申請專利範圍 若能取 緩衝區進行 資料框架; 取得一 用於記 並更新 若 成該資 立之該 19. 法,其 圍在該 組成該 的該原 20. 法,其 該資料 的長度 一使用 置。 21. 法,其 資料框 系統端 錄更 該關 未能 料框 資料 如申 中當 資料 資料 始資 如申 中當 範圍 ,再 中之 如申 中當 架内 傳送 得該對應位址,則讀取該資料框架進入該資料 解壓縮,以該系統端傳入之一更新資料更新該 未使用之記憶區塊記錄更新後之該資料框架, 新前該資料框架之該記憶區塊,則予以抹寫, 聯對照表;以及 取得該對應位址,則將該系統端寫入資料組建 架,並取得一未使用之記憶區塊記錄儲存新建 框架,並更新該關聯對照表。 請專利範圍第1 8項所述之矽儲存媒體控制方 該系統端傳輸該資料的一資料起點與一資料範 框架外時,該系統端傳入的該資料進行壓縮以 框架,更新一使用中之關聯對照表,並插入新 料起始位置。 請專利範圍第1 8項所述之矽儲存媒體控制方 該系統端傳輸的該資料起點在該資料框架外, 在該資料框架内時,調整該系統端傳入該資料 針對該資料進行壓縮以組成該資料框架,更新 關聯對照表,並插入新的該原始資料起始位 請專利範圍第1 8項所述之矽儲存媒體控制方 該系統端傳輸的該資料起點與該資料範圍在該 時9讀取該資料框架並解壓縮還原該資料’將 之資料與該還原資料一併壓縮重組成一資料框
12745twf.ptd 第39頁 1233616 六、申請專利範圍 架大小,更新一使用中之關聯對照表,並插入新的該原始 資料起始位址,更新一未使用之關聯對照表。 22. 如申請專利範圍第1 8項所述之矽儲存媒體控制方 法,其中當該系統端傳輸的該資料起點在該資料框架内, 該資料範圍在該資料框架外時,調整該原始資料長度,再 讀取該資料框架並解壓縮還原該資料,將系統端傳送之資 料與該還原資料一併壓縮重組成一資料框架大小,更新一 使用中之關聯對照表,並插入新的該原始資料起始位址, 更新一未使用之關聯對照表。 23. 如申請專利範圍第1 8項所述之矽儲存媒體控制方 法,其中當該系統端傳輸的該資料起點與該資料範圍在該 資料框架外且落於最後的該資料框架的後方時,該系統端 傳入該資料以進行壓縮並組建該資料框架,更新一未使用 之關聯對照表,再更新一使用中之關聯對照表。
12745twf.ptd 第40頁
TW093112722A 2004-05-06 2004-05-06 Silicon storage media and controller thereof, controlling method thereof, and data frame based storage media TWI233616B (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
TW093112722A TWI233616B (en) 2004-05-06 2004-05-06 Silicon storage media and controller thereof, controlling method thereof, and data frame based storage media
US10/904,824 US20050249008A1 (en) 2004-05-06 2004-12-01 Silicon storage media, and controller thereof, controlling method thereof, and data frame based storage media
DE102004059750A DE102004059750A1 (de) 2004-05-06 2004-12-11 Siliziumspeichermedium, Steuereinheit und Steuerverfahren hiervon und ein auf einem Datenframe basierendes Speichermedium
JP2005017400A JP2005322209A (ja) 2004-05-06 2005-01-25 シリコン記憶媒体制御方法およびシリコン記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW093112722A TWI233616B (en) 2004-05-06 2004-05-06 Silicon storage media and controller thereof, controlling method thereof, and data frame based storage media

Publications (2)

Publication Number Publication Date
TWI233616B true TWI233616B (en) 2005-06-01
TW200537497A TW200537497A (en) 2005-11-16

Family

ID=35220076

Family Applications (1)

Application Number Title Priority Date Filing Date
TW093112722A TWI233616B (en) 2004-05-06 2004-05-06 Silicon storage media and controller thereof, controlling method thereof, and data frame based storage media

Country Status (4)

Country Link
US (1) US20050249008A1 (zh)
JP (1) JP2005322209A (zh)
DE (1) DE102004059750A1 (zh)
TW (1) TWI233616B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8429375B1 (en) 2006-06-16 2013-04-23 Synopsys, Inc. Memory management unit (MMU) to make only one time programmable (OTP) memory appear multiple times programmable (MTP)
JP5556809B2 (ja) 2009-03-30 2014-07-23 日本電気株式会社 情報処理システム、情報圧縮装置、情報復元装置、情報処理方法及びそのプログラム
WO2011046677A2 (en) * 2009-10-13 2011-04-21 Rambus Inc. Dynamic protocol for communicating command and address information
CN103729315B (zh) * 2012-10-15 2016-12-21 华为技术有限公司 一种地址压缩、解压缩的方法、压缩器和解压缩器
CN105426317B (zh) * 2015-10-29 2018-10-23 浙江卓奥科技股份有限公司 一种往Flash中存放用户数据的存储方法及读取方法
US9946462B1 (en) * 2016-02-15 2018-04-17 Seagate Technology Llc Address mapping table compression
US9952771B1 (en) * 2016-03-31 2018-04-24 EMC IP Holding Company LLC Method and system for choosing an optimal compression algorithm
KR102659832B1 (ko) * 2019-03-05 2024-04-22 삼성전자주식회사 데이터 저장 장치 및 시스템

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61281636A (ja) * 1985-05-29 1986-12-12 Kenwood Corp 時分割多重伝送方式
JPH0736373A (ja) * 1993-07-16 1995-02-07 Omron Corp プログラマブルコントローラ
US5655113A (en) * 1994-07-05 1997-08-05 Monolithic System Technology, Inc. Resynchronization circuit for a memory system and method of operating same
JPH0879672A (ja) * 1994-09-02 1996-03-22 Sanyo Electric Co Ltd 静止画再生装置
JP3123366B2 (ja) * 1994-09-30 2001-01-09 日本ビクター株式会社 情報記憶管理装置
JP3593818B2 (ja) * 1996-09-30 2004-11-24 株式会社日立製作所 非接触icカード
US6658480B2 (en) * 1997-10-14 2003-12-02 Alacritech, Inc. Intelligent network interface system and method for accelerated protocol processing
US6477143B1 (en) * 1998-01-25 2002-11-05 Dror Ginossar Method and apparatus for packet network congestion avoidance and control
JP4240610B2 (ja) * 1998-11-27 2009-03-18 株式会社日立製作所 計算機システム
US7538694B2 (en) * 1999-01-29 2009-05-26 Mossman Holdings Llc Network device with improved storage density and access speed using compression techniques
JP2001043092A (ja) * 1999-07-30 2001-02-16 Nec Ic Microcomput Syst Ltd タスク間メッセージ通信方法
US20030185301A1 (en) * 2002-04-02 2003-10-02 Abrams Thomas Algie Video appliance
US7373500B2 (en) * 2003-04-15 2008-05-13 Sun Microsystems, Inc. Secure network processing
US20040210663A1 (en) * 2003-04-15 2004-10-21 Paul Phillips Object-aware transport-layer network processing engine

Also Published As

Publication number Publication date
DE102004059750A1 (de) 2005-11-24
US20050249008A1 (en) 2005-11-10
TW200537497A (en) 2005-11-16
JP2005322209A (ja) 2005-11-17

Similar Documents

Publication Publication Date Title
US7461198B2 (en) System and method for configuration and management of flash memory
JP4633802B2 (ja) 不揮発性記憶装置及びデータ読み出し方法及び管理テーブル作成方法
US6938144B2 (en) Address conversion unit for memory device
US9529709B2 (en) Apparatuses for managing and accessing flash memory module
US7516296B2 (en) Flash memory storage device and read/write method
US8510502B2 (en) Data writing method, and memory controller and memory storage apparatus using the same
US20070214309A1 (en) Nonvolatile storage device and data writing method thereof
US20110238629A1 (en) Uncorrectable error handling schemes for non-volatile memories
US20110231597A1 (en) Data access method, memory controller and memory storage system
JP2005267628A (ja) Nandフラッシュメモリを使用するメモリカード及びそれの動作方法
US20080028132A1 (en) Non-volatile storage device, data storage system, and data storage method
US8549212B2 (en) Flash storage device and operation method thereof
US9176865B2 (en) Data writing method, memory controller, and memory storage device
TW200407769A (en) Semiconductor memory apparatus, and method for writing data in the flush memory device
TW200926182A (en) Memory apparatus and method for accessing a flash memory, and method of evenly using blocks of the flash memory
US9389998B2 (en) Memory formatting method, memory controller, and memory storage apparatus
US20120198131A1 (en) Data writing method for rewritable non-volatile memory, and memory controller and memory storage apparatus using the same
JP2005322209A (ja) シリコン記憶媒体制御方法およびシリコン記憶媒体
CN107045423B (zh) 存储器装置及其数据存取方法
US8380920B2 (en) Flash storage device and data access method of flash memory
TWI762275B (zh) 借助專用位元資訊來執行一記憶體裝置之存取管理之方法、記憶體裝置、電子裝置、應用於一記憶體裝置之控制器以及主機裝置
US8762685B2 (en) Data writing method, memory controller and memory storage apparatus
US7689807B2 (en) Mass storage device, mass storage controller and methods for use therewith
JP2005322208A (ja) シリコン記憶メディア、コントローラ及びそのアクセス方法
US20110161386A1 (en) Semiconductor device with a plurality of write conditions and memory system

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees