TWI716381B - 資料處理系統 - Google Patents

資料處理系統 Download PDF

Info

Publication number
TWI716381B
TWI716381B TW105105974A TW105105974A TWI716381B TW I716381 B TWI716381 B TW I716381B TW 105105974 A TW105105974 A TW 105105974A TW 105105974 A TW105105974 A TW 105105974A TW I716381 B TWI716381 B TW I716381B
Authority
TW
Taiwan
Prior art keywords
physical address
address
physical
memory
logical address
Prior art date
Application number
TW105105974A
Other languages
English (en)
Other versions
TW201714093A (zh
Inventor
鄭炳洙
Original Assignee
韓商愛思開海力士有限公司
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 韓商愛思開海力士有限公司 filed Critical 韓商愛思開海力士有限公司
Publication of TW201714093A publication Critical patent/TW201714093A/zh
Application granted granted Critical
Publication of TWI716381B publication Critical patent/TWI716381B/zh

Links

Images

Classifications

    • 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/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • 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/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1009Address translation using page tables, e.g. page table structures
    • 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • 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/0625Power saving in 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • 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/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • 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
    • 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/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory
    • G06F2212/2022Flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7205Cleaning, compaction, garbage collection, erase control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Abstract

本發明提供一種資料處理系統,其可以包括包含來自主機的邏輯位址和命令並行地被應用至其的第一和第二記憶體系統的至少兩個記憶體系統。第一記憶體系統可以儲存用於實體地指示包括在第一非揮發性記憶體裝置中的多個第一頁面的多個第一實體位址作為第一表,以及根據通過對被應用的邏輯位址執行預設操作產生的實體位址是否存在於第一表中來確定是否執行對應於被應用的命令的預設操作,以及第二記憶體系統可以儲存用於實體地指示包含在第二非揮發性記憶體裝置中的多個第二頁面的多個第二實體位址作為第二表,以及根據通過對被應用的邏輯位址執行預設操作產生的實體位址是否存在於第二表中來確定是否執行對應於被應用的命令的預設操作。

Description

資料處理系統
本申請要求於2015年10月5日遞交至韓國知識產權局的申請號為10-2015-0139452的韓國專利申請的優先權,其全部內容在此通過引用併入本文。
本發明的示例性實施例關於一種半導體設計技術,且更特別地關於一種包含多個記憶體系統的資料處理系統。
電腦環境範例已經轉變至可隨時隨地使用的普遍計算系統。因此,諸如移動電話、數位相機和筆記型電腦的可攜式電子裝置的使用一直快速增加。通常,這些可攜式電子裝置使用具有記憶體裝置(即資料儲存裝置)的記憶體系統。資料儲存裝置可以被用作為可攜式電子裝置的主記憶體裝置或輔助記憶體裝置。
由於使用基於半導體的記憶體裝置的資料儲存裝置沒有移動部件,所以它們提供良好的穩定性、耐用性、高的資訊存取速度以及低功耗。具有這種優點的資料儲存裝置的示例包括通用序列匯流排(USB,universal serial bus)記憶體裝置、具有各種介面的記憶卡以及固態驅動器(SSD,solid state drive)。
多種實施例關於一種甚至當資料處理系統包括相互並行操作的多個記憶體系統時能夠容易地搜尋與主機應用的邏輯位址對應的實體位址的資 料處理系統。
在實施例中,資料處理系統可以包括包含來自主機的邏輯位址和命令被並行地應用至其的第一和第二記憶體系統的至少兩個記憶體系統。第一記憶體系統可以儲存用於實體地指示包括在第一非揮發性記憶體裝置中的多個第一頁面的多個第一實體位址作為第一表,以及根據通過對應用的邏輯位址執行預設運算產生的實體位址是否存在於第一表中確定是否執行對應於被應用的命令的預設操作,以及第二記憶體系統可以儲存用於實體地指示包含在第二非揮發性記憶體裝置中的多個第二頁面的多個第二實體位址作為第二表,以及根據通過對應用的邏輯位址執行預設運算產生的實體位址是否存在於第二表中確定是否執行對應於被應用的命令的預設操作。
第一記憶體系統可以包括:第一非揮發性記憶體裝置,其包括多個第一頁面且適用於儲存第一表;以及第一控制器,其適用於通過對被應用的邏輯位址執行預設運算產生實體位址、檢查所產生的實體位址是否存在於儲存在第一非揮發性記憶體裝置中的第一表中以及根據檢查結果確定是否執行對應於命令的預設操作。
第二記憶體系統可以包括:第二非揮發性記憶體裝置,其包括多個第二頁面且適用於儲存第二表;以及第二控制器,其適用於通過對被應用的邏輯位址執行預設操作產生實體位址、檢查所產生的實體位址是否存在於儲存在第二非揮發性記憶體裝置中的第二表中以及根據檢查結果確定是否執行對應於命令的預設操作。
第一和第二記憶體系統中的每個可以同時通過對被應用的邏輯位址執行預設操作產生實體位址。
第一表可以在邏輯位址對應於各自的第一實體位址的狀態下儲存用於通過預設運算產生多個第一實體位址的邏輯位址。
當對應於被應用的命令的預設操作是寫入操作時,第一記憶體系統可以比較通過對被應用的邏輯位址執行預設操作產生的實體位址與多個第一實體位址,以及檢查是否存在與實體位址一致的第一實體位址,當與實體位址一致的第一實體位址可能存在時,第一記憶體系統可以複查連接至對應的第一實體位址的邏輯位址是否存在,當被連接至對應的第一實體位址的邏輯位址不存在時,在被應用的邏輯位址被連接至對應的第一實體位址的狀態下,第一記憶體系統可以將被應用的邏輯位址儲存在第一表中,以及當連接至對應第一實體位址的邏輯位址存在時,第一記憶體系統可以改變在多個第一頁面中與對應的第一實體位址對應的第一頁面為無效狀態,以及傳輸資訊至主機。
當對應於被應用的命令的預設操作為讀取操作時,第一記憶體系統可以比較通過對被應用的邏輯位址執行預設操作產生的實體位址與多個第一實體位址,以及檢查是否存在與實體位址一致的第一實體位址,當存在與實體位址一致的第一實體位址時,第一記憶體系統可以複查連接至對應的第一實體位址的邏輯位址是否與被應用的邏輯位址一致,以及當邏輯位址與被應用的邏輯位址一致時,第一記憶體系統可以使用對應的第一實體位址從第一非揮發性記憶體裝置執行讀取操作。
在複製指示資訊被連接至各自的第一實體位址的狀態下,第一表可以儲存複製指示資訊,其中複製指示資訊指示被連接至各自的第一實體位址的邏輯位址是否被複製。
當對應於被應用的命令的預設操作是寫入操作時,第一記憶體 系統可以比較通過對被應用的邏輯位址執行預設操作產生的實體位址與多個第一實體位址,以及檢查是否存在與實體位址一致的第一實體位址,當與實體位址一致的第一實體位址存在時,第一記憶體系統可以複查連接至對應的第一實體位址的邏輯位址是否存在,當被連接至對應的第一實體位址的邏輯位址不存在時,在被應用的邏輯位址的值及複製指示資訊的初始值被連接至對應的第一實體位址的狀態下,第一記憶體系統可以將被應用的邏輯位址和複製指示資訊儲存在第一表中,以及當被連接至對應的第一實體位址的邏輯位址存在時,第一記憶體系統可以在多個第一實體位址中選擇任意一個不具有被連接至其的邏輯位址的第一實體位址、儲存被選擇的第一實體位址的值作為被連接至對應的第一實體位址的複製指示資訊以及在被應用的邏輯位址的值和複製指示資訊的初始值被連接至被選擇的第一實體位址的狀態下,將被應用的邏輯位址和複製指示資訊儲存在第一表中。
當對應於被應用的命令的預設操作是讀取操作時,第一記憶體系統可以比較通過對被應用的邏輯位址執行預設操作產生的實體位址與多個第一實體位址,以及檢查是否存在與實體位址一致的第一實體位址,當與實體位址一致的第一實體位址存在時,第一記憶體系統可以複查連接至對應的第一實體位址的複製指示資訊是否具有初始值,當複製指示資訊具有初始值時,第一記憶體系統可以複查被連接至對應的第一實體位址的邏輯位址是否與被應用的邏輯位址一致,以及只有在邏輯位址與被應用的邏輯位址一致的情况下使用對應的第一實體位址從第一非揮發性記憶體裝置執行讀取操作,以及當複製指示資訊不具有初始值時,第一記憶體系統可以在多個第一實體位址中選擇具有與連接至對應的第一實體位址的複製指示資訊相同的值的實體位址、設置被選擇的第 一實體位址為對應的第一實體位址以及重複複查操作直至被連接至對應的第一實體位址的複製指示資訊成為初始值為止。
在邏輯位址對應於各自的第二實體位址的狀態下,第二表可以儲存用於通過預設運算產生多個第二實體位址的邏輯位址。
當對應於被應用的命令的預設操作是寫入操作時,第二記憶體系統可以比較通過對被應用的邏輯位址執行預設操作產生的實體位址與多個第二實體位址,以及檢查是否存在與實體位址一致的第二實體位址,當與實體位址一致的第二實體位址存在時,第二記憶體系統可以複查連接至對應的第二實體位址的邏輯位址是否存在,當被連接至對應的第二實體位址的邏輯位址不存在時,在被應用的邏輯位址被連接至對應的第二實體位址的狀態下,第二記憶體系統可以將被應用的邏輯位址儲存在第二表中,以及當連接至對應的第二實體位址的邏輯位址存在時,第二記憶體系統可以改變在多個第二頁面中與對應的第二實體位址對應的第二頁面為無效狀態,以及傳輸資訊至主機。
當對應於被應用的命令的預設操作為讀取操作時,第二記憶體系統可以比較通過對被應用的邏輯位址執行預設操作產生的實體位址與多個第二實體位址,以及檢查是否存在與實體位址一致的第二實體位址,當存在與實體位址一致的第二實體位址時,第二記憶體系統可以複查連接至對應的第二實體位址的邏輯位址是否與被應用的邏輯位址一致,以及當邏輯位址與被應用的邏輯位址一致時,第二記憶體系統可以使用對應的第二實體位址從第二非揮發性記憶體裝置執行讀取操作。
在複製指示資訊被連接至多個第二實體位址的狀態下,第二表可以儲存複製指示資訊,該複製指示資訊指示被連接至各自的第二實體位址的 邏輯位址是否被複製。
當對應於被應用的命令的預設操作是寫入操作時,第二記憶體系統可以比較通過對被應用的邏輯位址執行預設操作產生的實體位址與多個第二實體位址,以及檢查是否存在與實體位址一致的第二實體位址,當與實體位址一致的第二實體位址存在時,第二記憶體系統可以複查連接至對應的第二實體位址的邏輯位址是否存在,當被連接至對應的第二實體位址的邏輯位址不存在時,在邏輯位址的值及複製指示資訊的初始值被連接至對應的第二實體位址的狀態下,第二記憶體系統可以將被應用的邏輯位址和複製指示資訊儲存在第二表中,以及當被連接至對應的第二實體位址的邏輯位址存在時,第二記憶體系統可以在多個第二實體位址中選擇任意一個不具有被連接至其的邏輯位址的第二實體位址、儲存被選擇的第二實體位址作為被連接至對應的第二實體位址的複製指示資訊以及在被應用的邏輯位址的值和複製指示資訊的初始值被連接至被選擇的第二實體位址的狀態下,將被應用的邏輯位址和複製指示資訊儲存在第二表中。
當對應於被應用的命令的預設操作是讀取操作時,第二記憶體系統可以比較通過對被應用的邏輯位址執行預設操作產生的實體位址與多個第二實體位址,以及檢查是否存在與實體位址一致的第二實體位址,當與實體位址一致的第二實體位址存在時,第二記憶體系統可以複查連接至對應的第二實體位址的複製指示資訊是否具有初始值,當複製指示資訊具有初始值時,第二記憶體系統可以複查被連接至對應的第二實體位址的邏輯位址是否與被應用的邏輯位址一致,以及只有在被連接至對應的第二實體位址的邏輯位址與被應用的邏輯位址一致的情况下使用對應的第二實體位址從第二非揮發性記憶體裝置執行 讀取操作,以及當複製指示資訊不具有初始值時,第二記憶體系統可以在多個第二實體位址中選擇具有與連接至對應的第二實體位址的複製指示資訊相同的值的第二實體位址,設置被選擇的第二實體位址為對應的第二實體位址,以及重複複查操作直至被連接至對應的第二實體位址的複製指示資訊成為初始值為止。
預設操作可以包括用於響應於其數量對應於第一實體位址的數量與第二實體位址的數量之和的被應用的邏輯位址的值在多個第一實體位址和多個第二實體位址中選擇和產生任意一個實體位址的散列操作。
預設操作可以包括用於響應於其數量對應於第一實體位址的數量與第二實體位址的數量之和的被應用的邏輯位址的值在多個第一實體位址和多個第二實體位址中選擇和產生任意一個實體位址的二元搜尋操作。
100:資料處理系統
102:主機
110:記憶體系統
130:控制器
132:主機介面
134:處理器
138:錯誤校正碼(ECC)單元
140:電源管理單元(PMU)
142:NAND快閃控制器(NFC)
144:記憶體
150:記憶體裝置
152:記憶體區塊
154:記憶體區塊
156:記憶體區塊
210~240:記憶體區塊
310:電壓供應區塊;電壓產生器
320:讀取/寫入電路
322:頁面緩衝器(PB)
324:頁面緩衝器(PB)
326:頁面緩衝器(PB)
340:胞串
1101:第一記憶體系統
1102:第二記憶體系統
1301:第一控制器
1302:第二控制器
1321:第一主機介面
1322:第二主機介面
1341:第一處理器
1342:第二處理器
1421:第一記憶體介面
1422:第二記憶體介面
1441:第一記憶體
1442:第二記憶體
1501:第一記憶體裝置
1502:第二記憶體裝置
5111:基板
5112:介電材料
5113:柱狀物
5114:表面層
5115:內層
5116:介電層
5117~5119:子介電層
5211~5291:導電材料
5212~5292:導電材料
5213~5293:導電材料
5311~5314:摻雜區域
5320:汲極
5331~5333:導電材料
6311:基板
6312:摻雜材料
6321~6324:第一導電材料~第四導電材料
6325~6328:第五導電材料~第八導電材料
6340:汲極
6351:第一上部導電材料
6352:第二上部導電材料
6361:內部材料
6362:中間層
6363:表面層
BL:位元線
BL0~BLm-1:位元線
BLK0~BLKN-1:記憶體區塊
BLKi:記憶體區塊
BLKj:記憶體區塊
BLOCK10:區塊
BLOCK11:區塊
BLOCK20:區塊
BLOCK21:區塊
CHAIN:複製指示資訊
CHANNEL1:第一通道
CHANNEL2:第二通道
CSL:共源極線
DMC:虛擬記憶胞
DMC1:第一虛擬記憶胞
DP:下部柱狀物
DSG2:汲極選擇閘
DSL:汲極選擇線
DSL1:第一汲極選擇線
DSL2:第二汲極選擇線
DST:汲極選擇電晶體
DWL:虛擬字元線
DWL1:第一虛擬字元線
GSL:接地選擇線
GST:接地選擇電晶體
LPN:邏輯位址
MC:記憶胞
MC0~MCn-1:記憶胞電晶體
MMC1~MMC4:第一主記憶胞~第四主記憶胞
MWL1~MWL4:第一主字元線~第四主字元線
NFC1:第一NAND快閃控制器
NFC2:第二NAND快閃控制器
NS:NAND串
NS11~NS31:NAND串
NS12~NS32:NAND串
NS13~NS33:NAND串
P11~P18:第一頁面
P21~P28:第二頁面
PG:管閘
PPN:實體位址
PPN1:第一實體位址
PPN2:第二實體位址
SSG2:源極選擇閘
SSL:源極選擇線
SSL1:第一源極選擇線
SSL2:第二源極選擇線
SSL3:第三源極選擇線
SST:源極選擇電晶體
ST1:第一串
ST2:第二串
TB1:第一表
TB2:第二表
TS:電晶體結構
UP:上部柱狀物
WL:字元線
S110~S1030:步驟
〔圖1〕是示出根據本發明的實施例的包括記憶體系統的資料處理系統的簡圖。
〔圖2〕是示出根據本發明的實施例的記憶體系統的記憶體裝置的簡圖。
〔圖3〕是示出根據本發明的實施例的記憶體裝置的記憶體區塊的電路圖。
〔圖4、圖5、圖6、圖7、圖8、圖9、圖10及圖11〕是圖示地示出根據本發明的多種實施例的記憶體裝置的簡圖。
〔圖12〕是示出根據本發明的實施例的包括多個記憶體裝置的資料處理系統的示例的簡圖。
〔圖13〕是示出根據本發明的實施例的圖12的資料處理的位址映射方法的簡圖。
〔圖14〕是示出根據本發明的另一實施例的包括多個記憶體裝置的資料處理系統的簡圖。
〔圖15A至圖15E〕是示出根據本發明的實施例的圖14的資料處理系統的位址映射方法的簡圖。
下面將參照附圖更詳細地描述各種實施例。然而,本發明可以不同的形式呈現且不應被解釋為限於在本文中提出的實施例。而是,這些實施例被提供使得本公開將是徹底且完整的,並將本發明充分傳達給本領域技術人員。在整個公開中,相似的元件符號指的是本發明的各種附圖和實施例中的相似部件。
參照圖1,根據本發明的實施例,提供一種資料處理系統。資料處理系統100可以包括主機102和記憶體系統110。
主機102可以包括例如諸如移動電話、MP3播放器和膝上型電腦的可攜式電子裝置或諸如桌上型電腦、遊戲機、電視和投影機的電子裝置。
記憶體系統110可以響應於來自主機102的請求操作。記憶體系統可例如儲存待被主機102存取的資料。記憶體系統110可以被用作主機102的主記憶體系統或輔助記憶體系統。記憶體系統110可以根據主機介面132的協定與主機102電連接。記憶體系統110可以利用諸如以下的各種儲存裝置中的任意一個來實施:固態驅動器(SSD)、多媒體卡(MMC,multimedia card)、嵌入式MMC(eMMC,embedded MMC)、減小尺寸的MMC(RS-MMC,reduced size MMC)以及微型-MMC、安全數位(SD)卡、迷你-SD及微型-SD、通用序列匯流排(USB)儲存裝置、通用快閃儲存(UFS,universal flash storage)裝置、標準快閃(CF,compact flash)卡、智慧型媒體(SM,smart media)卡、記憶棒等。
用於記憶體系統110的儲存裝置可以利用諸如動態隨機存取記憶體(DRAM,dynamic random access memory)和靜態隨機存取記憶體(SRAM,static random access memory)的揮發性記憶體裝置來實施。用於記憶體系統110的儲存裝置可以利用諸如唯讀記憶體(ROM,read only memory)、遮罩ROM(MROM,mask ROM)、可編程ROM(PROM,programmable ROM)、可抹除可編程ROM(EPROM,erasable programmable ROM)、電可抹除可編程ROM(EEPROM,electrically erasable programmable ROM)、鐵電隨機存取記憶體(FRAM,ferroelectrically erasable programmable ROM)、相變RAM(PRAM,phase change RAM)、磁阻RAM(MRAM,magnetoresistive RAM)以及電阻式RAM(RRAM,resistive RAM)的非揮發性記憶體裝置來實施。
記憶體系統110可以包括用於儲存待被主機102存取的資料的記憶體裝置150。記憶體系統110可以包括用於在記憶體裝置150中控制資料的儲存的控制器130。
控制器130和記憶體裝置150可以被集成在單個半導體裝置中。例如,單個半導體裝置可以是固態驅動器(SSD)。當記憶體系統110被用作SSD時,主機102的操作速度可以被顯著地提高。
控制器130和記憶體裝置150可以被集成在單個半導體裝置中,配置為記憶卡。控制器130和記憶卡150可以被集成在單個半導體裝置中,配置為記憶卡,諸如個人電腦記憶卡國際協會(PCMCIA,personal computer memory card international association)卡、標準快閃(CF)卡、智慧型媒體(SM)卡(SMC,smart media card)、記憶棒、多媒體卡(MMC,multimedia card)、RS-MMC和微型-MMC、安全數位(SD)卡、迷你-SD、微型-SD和SDHC以及通用快閃(UFS) 裝置。
再如,記憶體系統110可以被配置為電腦、超級移動PC(UMPC,ultra-mobile PC)、工作站、小筆電(net-book)、個人數位助理(PDA,personal digital assistant)、可攜式電腦、網路平板、平板電腦、桌上型電腦、無線電話、移動電話、智慧型電話、電子書、可攜式多媒體播放器(PMP,portable multimedia player)、可攜式遊戲機、導航裝置、黑盒子、數位相機、數位多媒體廣播(DMB,digital multimedia broadcasting)播放器、三維(3D)電視、智慧型電視、數位音頻記錄器、數位音頻播放器、數位影像記錄器、數位影像播放器、數位視頻記錄器、數位視頻播放器、配置資料中心的儲存器、能夠在無線環境下傳輸和接收資訊的裝置、配置家庭網路的各種電子裝置中的一個、配置電腦網路的各種電子裝置中的一個、配置遠程資訊處理網路的各種電子裝置中的一個、RFID裝置或配置計算系統的各種組成元件中的一個。
記憶體系統110的記憶體裝置150可以在電源被中斷時保留儲存的資料。例如,記憶體裝置150可以在寫入操作期間儲存由主機102提供的資料。記憶體裝置例如還可以在讀取操作期間將儲存的資料提供至主機102。記憶體裝置150可以包括多個記憶體區塊152、154和156。記憶體區塊152、154和156中的每個可以包括多個頁面。每個頁面可以包括多個記憶胞,多個字元線(WL,word line)被電連接至多個記憶胞。
記憶體裝置150可以是非揮發性記憶體裝置,例如,快閃記憶體。快閃記憶體可以具有三維(3D)堆疊結構。稍後將參照圖2至圖11更詳細地描述記憶體裝置150的結構和記憶體裝置150的三維(3D)堆疊結構。
記憶體系統110的控制器130可以響應於來自主機102的請求 控制記憶體裝置150。例如,控制器130可以將從記憶體裝置150讀取的資料提供至主機102,以及將從主機102提供的資料儲存在記憶體裝置150中。為了這個目的,控制器130可以控制記憶體裝置150的全部操作,諸如讀取操作、寫入操作、編程操作和抹除操作。
在實施例中,控制器130可以包括主機介面132、處理器134、錯誤校正碼(ECC,error correction code)單元138、電源管理單元140、NAND快閃控制器142和記憶體144。
主機介面132可以處理由主機102提供的命令和資料,以及可以通過諸如以下的各種介面協定中的至少一個與主機102通訊:通用序列匯流排(USB)、多媒體卡(MMC)、高速外圍組件互連(PCI-E,peripheral component interconnect express)、串列SCSI(SAS,serial attached SCSI)、串行高級技術附件(SATA,serial advanced technology attachment)、並行高級技術附件(PATA,parallel advanced techonology attachment)、小型電腦系統介面(SCSI,small computer system interface)、加强型小型磁盤介面(ESDI,enhanced small disk interface)以及集成驅動電子(IDE,integrated drive electronic)。
ECC單元138可以在讀取操作期間檢測和校正從記憶體裝置150讀取的資料中的錯誤。在錯誤位元的數量大於或等於可校正錯誤位元的閾值數量時,ECC單元138可不校正錯誤位,以及可以輸出指示校正錯誤位失敗的錯誤校正失敗訊號。
ECC單元138可以基於諸如以下的編碼調製執行錯誤校正操作:低密度奇偶校驗檢查(LDPC,low density parity check)碼、博斯-喬德裏-霍昆格姆(BCH,Bose-Chaudhuri-Hocquenghem)碼、渦輪碼(turbo code)、裏德-所羅 門(RS,Reed-Solomon)碼、卷積碼(convolution code)、遞歸系統碼(RSC,recursive systematic code)、格碼調製(TCM,trellis-coded modulation)、塊編碼調製(BCM,block coded modulation)等。ECC單元138可以包括用於錯誤校正操作的全部電路、系統或裝置。
PMU 140可以提供和管理控制器130的電源,即,用於包括在控制器130中的組成元件的電源。
NFC 142可以作為控制器130和記憶體裝置150之間的記憶體介面以允許控制器130響應於來自主機102的請求控制記憶體裝置150。當記憶體裝置150為快閃記憶體時,尤其當記憶體裝置150為NAND快閃記憶體時,NFC 142可以在處理器134的控制下產生用於記憶體裝置150的控制訊號並處理資料。
記憶體144可以作為記憶體系統110和控制器130的工作記憶體,並儲存用於驅動記憶體系統110和控制器130的資料。控制器130可以響應於來自主機102的請求控制記憶體裝置150。例如,控制器130可以將從記憶體裝置150讀取的資料提供至主機102,並將由主機102提供的資料儲存在記憶體裝置150中。當控制器130控制記憶體裝置150的操作時,記憶體144可以儲存由控制器130和記憶體裝置150用於讀取操作、寫入操作、編程操作和抹除操作的資料。
記憶體144可以利用揮發性記憶體來實施。記憶體144可以利用靜態隨機存取記憶體(SRAM)或動態隨機存取記憶體(DRAM)來實施。如上所述,記憶體144可以儲存由主機102和記憶體裝置150用於讀取和寫入操作的資料。為了儲存資料,記憶體144可以包括程序記憶體、資料記憶體、寫入 緩衝器、讀取緩衝器、映射緩衝器等。
處理器134可以響應於來自主機102的寫入請求或讀取請求控制記憶體系統110的一般操作以及用於記憶體裝置150的寫入操作或讀取操作。處理器134可以驅動被稱為快閃轉換層(FTL,flash translation layer)的韌體以控制記憶體系統110的一般操作。處理器134可以利用微處理器或中央處理單元(CPU,central processing unit)來實施。
管理單元(未示出)可以被包括在處理器134中,且可以執行記憶體裝置150的壞區塊管理。管理單元可以找到處於用於進一步使用的不令人滿意的條件中的包括在記憶體裝置150中的的壞記憶體區塊,並在壞記憶體區塊上執行壞區塊管理。當記憶體裝置150為快閃記憶體例如NAND快閃記憶體時,由於NAND邏輯功能的特性,編程失敗可發生在寫入操作期間,例如,發生在編程操作期間。在壞區塊管理期間,編程失敗的記憶體區塊或壞記憶體區塊的資料可以被編程在新的記憶體區塊中。並且,由於編程失敗導致的壞區塊使具有3D堆疊結構的記憶體裝置150的利用效率和記憶體系統100的可靠性嚴重地惡化,因此需要可靠的壞區塊管理。
現在參照圖2,根據實施例,記憶體裝置150可以包括多個記憶體區塊,例如,第零至第(N-1)區塊210至240。多個記憶體區塊210至240中的每一個可以包括多個頁面,例如,2M數量的頁面(2M個頁面),本發明將不限於此。多個頁面中的每一個可以包括多個記憶胞,其中多個字元線可被電連接至多個記憶胞。
並且,根據可以被儲存或表達在每一記憶胞中的位元的數量,記憶體裝置150可以包括多個記憶體區塊,諸如單層單元(SLC,single level cell) 記憶體區塊和或多層單元(MLC,multi-level cell)記憶體區塊。SLC記憶體區塊可以包括包含記憶胞的多個頁面,每個記憶胞能夠儲存1位元資料。MLC記憶體區塊可以包括具有記憶胞的多個頁面,每個記憶胞能夠儲存多位資料例如兩位或更多位資料。包括利用每個都能夠儲存3位元資料的記憶胞實施的多個頁面的MLC記憶體區塊可以被定義為三層單元(TLC,triple level cell)記憶體區塊。
多個記憶體區塊210至240中的每一個可以在寫入操作期間儲存從主機裝置102提供的資料,並且還可以在讀取操作期間向主機102提供儲存的資料。
圖3為示出在圖1中所示的多個記憶體區塊152至156中的一個的電路圖。
參照圖3,記憶體裝置150的記憶體區塊152可以包括分別電連接至位元線BL0至BLm-1的多個胞串340。每一行的胞串340可以包括至少一個汲極選擇電晶體DST和至少一個源極選擇電晶體SST。多個記憶胞或多個記憶胞電晶體MC0至MCn-1可以串聯地被電連接在選擇電晶體DST和SST之間。各自的記憶胞電晶體MC0至MCn-1可以通過多層單元(MLC)來配置,每個MLC儲存多個位元的資料資訊。作為參考,在圖3中,“DSL”表示汲極選擇線,“SSL”表示源極選擇線,以及“CSL”表示共源極線。
儘管圖3示出通過NAND快閃儲單元配置的記憶體區塊152作為示例,但要注意的是,記憶體裝置150的記憶體區塊152並不限於NAND快閃記憶體且可以通過NOR快閃記憶體、結合至少兩種記憶胞的混合快閃記憶體或控制器內置在存記憶體晶片中的1-NAND快閃記憶體來實現。半導體裝置的 操作特徵可以不僅被應用至具有通過導電浮閘配置的電荷儲存層的快閃記憶體裝置而且可以被應用至具有通過介電層配置的電荷儲存層的電荷捕獲快閃(CTF,charge trap flash)。
記憶體裝置150的電壓產生器310可以提供待根據操作模式被供應至各自的字元線的字元線電壓,例如,編程電壓、讀取電壓和過電壓,以及待被供應至體材料(bulk)例如形成有記憶胞的阱區的電壓。電壓產生器310可在控制電路(未示出)的控制下執行電壓生成操作。電壓產生器310可以生成多個可變的讀取電壓以生成多個讀取資料、在控制電路的控制下選擇記憶體區塊或記憶胞陣列的扇區中的一個、選擇被選擇的記憶體區塊的字元線中的一個以及將字元線電壓提供至被選擇的字元線和未被選擇的字元線。
記憶體裝置150的讀取/寫入電路320可以通過控制電路來控制,以及可以根據操作模式作為讀出放大器或寫入驅動器。在驗證/正常讀取操作期間,讀取/寫入電路320可以作為讀出放大器以用於從記憶胞陣列讀取資料。而且,在編程操作期間,讀取/寫入電路320可以作為根據待被儲存在記憶胞陣列中的資料驅動位元線的寫入驅動器。讀取/寫入電路320可以在編程操作期間從緩衝器(未示出)接收待被寫入記憶胞陣列的資料,並可以根據被輸入的資料驅動位元線。為了這個目的,讀取/寫入電路320可以包括分別對應於行(或位元線)或行對(或位元線對)的多個頁面緩衝器322、324和326。多個鎖存器(未示出)可以被包括在頁面緩衝器322、324和326中的每一個中。
圖4至11為示出圖1中所示的記憶體裝置150的示意圖。參照圖4,記憶體裝置150可以包括多個記憶體區塊BLK0至BLKN-1。記憶體區塊BLK0至BLKN-1中的每個可以三維(3D)結構或垂直結構實現。各自的記憶體 區塊BLK0至BLKN-1可以包括在第一至第三方向例如x軸方向、y軸方向和z軸方向上延伸的結構。
各自的記憶體區塊BLK0至BLKN-1可以包括在第二方向上延伸的多個NAND串NS。多個NAND串NS可以在第一方向和第三方向上提供。每一NAND串NS可以被電連接至位元線BL、至少一個源極選擇線SSL、至少一個接地選擇線GSL、多個字元線WL、至少一個虛擬字元線DWL以及共源極線CSL。也就是說,各自的記憶體區塊BLK0至BLKN-1可以被電連接至多個位線BL、多個源極選擇線SSL、多個接地選擇線GSL、多個字元線WL、多個虛擬字元線DWL以及多個共源極線CSL。
圖5是圖4中所示的多個記憶體區塊BLK0至BLKN-1中的單個記憶體區塊BLKi的立體圖。圖6為圖5中所示的記憶體區塊BLKi的沿線I-I’截取的截面圖。
參照圖5和圖6,記憶體裝置150的多個記憶體區塊中的記憶體區塊BLKi可以包括在第一至第三方向上延伸的結構。
基板5111可以被提供。基板5111可以包括摻雜有第一類型雜質的矽材料。基板5111可以包括摻雜有p-型雜質的矽材料或可以是p-型阱,例如,袋(pocket)p-阱,以及包括環繞p-型阱的n-型阱。儘管假設基板5111為p-型矽,但要注意的是,基板5111不限於p-型矽。
在第一方向上延伸的多個摻雜區域5311至5314可以沿第三方向以規律隔開的間隔被設置在基板5111上。多個摻雜區域5311至5314可以包含不同於基板5111的第二類型的雜質。多個摻雜區域5311至5314可以摻雜有n-型雜質。儘管在這裏假設第一至第四摻雜區域5311至5314為n-型,但要注意 的是,第一至第四摻雜區域5311至5314不限於為n-型。
在第一和第二摻雜區域5311和5312之間的基板5111上的區域中,在第一方向上延伸的多個介電材料5112可以在第二方向上順序地設置。介電材料5112和基板5111可以在第二方向上彼此隔開預定距離。介電材料5112可以包括諸如二氧化矽的介電材料。
在第一和第二摻雜區域5311和5312之間的基板5111上的區域中,可設置在第一方向上以規律隔開的間隔順序地設置且在第二方向上穿過介電材料5112的多個柱狀物5113。多個柱狀物5113可以分別穿過介電材料5112且可以與基板5111電連接。每一柱狀物5113可以通過多種材料來配置。每一柱狀物5113的表面層5114可以包括摻雜有第一類型雜質的矽材料。每一柱狀物5113的表面層5114可以包括摻雜有與基板5111一樣類型的雜質的矽材料。儘管在這裏假設每一柱狀物5113的表面層5114可以包括p-型矽,但每一柱狀物5113的表面層5114不限於為p-型矽。
每一柱狀物5113的內層5115可以由介電材料形成。每一柱狀物5113的內層5115可以被諸如二氧化矽的介電材料填充。
在第一和第二摻雜區域5311和5312之間的區域中,介電層5116可以沿著介電材料5112、柱狀物5113和基板5111的暴露表面設置。介電層5116的厚度可以小於介電層材料5112之間的距離的一半。換言之,可設置不同於介電材料5112和介電層5116的材料的區域可以被設置在(i)被設置在介電材料5112的第一介電材料的底面上的介電層5116和(ii)被設置在介電材料5112的第二介電材料的頂面上的介電層5116之間。介電材料5112可位於第一介電材料下方。
在第一和第二摻雜區域5311和5312之間的區域中,導電材料5211至5291可以被設置在介電層5116的暴露表面上。在第一方向上延伸的導電材料5211可以被設置在鄰近基板5111的介電材料5112和基板5111之間。尤其是,在第一方向上延伸的導電材料5211可以被設置在(i)設置在基板5111上的介電層5116和(ii)設置在鄰近基板5111的介電材料5112的底面上的介電層5116之間。
在第一方向上延伸的導電材料可以被設置在(i)設置在介電材料5112中的一個的頂面上的介電層5116和(ii)設置在被設置在特定介電材料5112上的介電材料5112的另一個介電材料的底面上的介電層5116之間。在第一方向上延伸的導電材料5221至5281可以被設置在介電材料5112之間。在第一方向上延伸的導電材料5291可以被設置在最上面的介電材料5112上。在第一方向上延伸的導電材料5211至5291可以是金屬材料。在第一方向上延伸的導電材料5211至5291可以是諸如多晶矽的導電材料。
在第二和第三摻雜區域5312和5313之間的區域中,可設置與在第一和第二摻雜區域5311和5312之間的結構相同的結構。例如,在第二和第三摻雜區域5312和5313之間的區域中,可設置在第一方向上延伸的多個介電材料5112、順序地設置在第一方向上且在第二方向上穿過多個介電材料5112的多個柱狀物5113、設置在多個介電材料5112和多個柱狀物5113的暴露表面上的介電層5116以及在第一方向上延伸的多個導電材料5212至5292。
在第三和第四摻雜區域5313和5314之間的區域中,可設置與第一和第二摻雜區域5311和5312之間相同的結構。例如,在第三和第四摻雜區域5313和5314之間的區域中,可設置在第一方向上延伸的多個介電材料5112、 順序地設置在第一方向上且在第二方向上穿過多個介電材料5112的多個柱狀物5113、設置在多個介電材料5112和多個柱狀物5113的暴露表面上的介電層5116以及在第一方向上延伸的多個導電材料5213至5293。
汲極5320可以分別設置在多個柱狀物5113上。汲極5320可以是摻雜有第二類型雜質的矽材料。汲極5320可以是摻有n-型雜質的矽材料。儘管為了方便起見假設汲極5320包括n-型矽,但要注意的是,汲極5320不限於為n-型矽。例如,每一汲極5320的寬度可以大於每一對應的柱狀物5113的寬度。每一汲極5320可以焊墊的形狀設置在每一對應的柱狀物5113的頂面上。
在第三方向上延伸的導電材料5331至5333可以設置在汲極5320上。導電材料5331至5333可以順序地設置在第一方向上。各自的導電材料5331至5333可以與對應區域的汲極5320電連接。在第三方向上延伸的汲極5320和導電材料5331至5333可以通過接觸插塞被電連接。在第三方向上延伸的導電材料5331至5333可以是金屬材料。在第三方向上延伸的導電材料5331至5333可以是諸如多晶矽的導電材料。
在圖5和圖6中,各自的柱狀物5113可以與介電層5116和在第一方向上延伸的導電材料5211至5291、5212至5292和5213至5293一起形成NAND串NS。各自的柱狀物5113可以與介電層5116和在第一方向上延伸的導電材料5211至5291、5212至5292和5213至5293一起形成NAND串NS。每一NAND串NS可以包括多個電晶體結構TS。
圖7是圖6中所示的電晶體結構TS的截面圖。
參照圖7,在圖6中所示的電晶體結構TS中,介電層5116可以包括第一至第三子子介電層5117、5118和5119。
在每一柱狀物5113中的p-型矽的表面層5114可以作為主體。鄰近柱狀物5113的第一子介電層5117可以作為穿遂介電層,以及可以包括熱氧化層。
第二子介電層5118可以作為電荷儲存層。第二子介電層5118可以作為電荷捕獲層,且可以包括氮化物層或諸如氧化鋁層、二氧化鉿層等的金屬氧化物層。
鄰近導電材料5233的第三子介電層5119可以作為阻斷介電層。鄰近在第一方向上延伸的導電材料5233的第三子介電層5119可以被形成為單層或多層。第三子介電層5119可以是介電常數可大於第一子介電層5117和第二子介電層5118的諸如氧化鋁層、二氧化鉿層等的高k介電層。
導電材料5233可以作為閘或控制閘。即,閘或控制閘5233、阻斷介電層5119、電荷儲存層5118、穿遂介電層5117和主體5114可以形成電晶體或記憶胞電晶體結構。例如,第一至第三子介電層5117至5119可以形成氧化物-氮化物-氧化物(ONO,oxide-intride-oxide)結構。在實施例中,為了方便起見,在每一柱狀物5113中的p-型矽的表面層5114將被稱為第二方向上的主體。
記憶體區塊BLKi可以包括多個柱狀物5113。即,記憶體區塊BLKi可以包括多個NAND串NS。具體地,記憶體區塊BLKi可以包括在第二方向或垂直於基板5111的方向上延伸的多個NAND串NS。
每一NAND串NS可以包括在第二方向上設置的多個電晶體結構TS。每一NAND串NS的多個電晶體結構TS中的至少一個可以作為源極選擇電晶體SST。每一NAND串NS的多個電晶體結構TS中的至少一個可以作為接地選擇電晶體GST。
閘或控制閘可以對應於在第一方向上延伸的導電材料5211至5291、5212至5292和5213至5293。換言之,閘或控制閘可以在第一方向上延伸並形成字元線和至少兩個選擇線、至少一個源極選擇線SSL以及至少一個接地選擇線GSL。
在第三方向上延伸的導電材料5331至5333可以被電連接至NAND串NS的一端。在第三方向上延伸的導電材料5331至5333可以作為位元線BL。即,在一個記憶體區塊BLKi中,多個NAND串NS可以被電連接至一個位元線BL。
在第一方向上延伸的第二類型摻雜區域5311至5314可以被設置為NAND串NS的其它端。在第一方向上延伸的第二類型摻雜區域5311至5314可以作為共源極線CSL。
即,記憶體區塊BLKi可以包括在垂直於基板5111的方向例如第二方向上延伸的多個NAND串NS,並且可以作為例如電荷捕獲型記憶體的NAND快閃記憶體區塊,在NAND快閃記憶體區塊中,多個NAND串NS被電連接至一個位元線BL。
儘管在圖5至圖7中示出在第一方向上延伸的導電材料5211至5291、5212至5292和5213至5293被設置在9層中,但要注意的是,在第一方向上延伸的導電材料5211至5291、5212至5292和5213至5293不限於被設置在9層中。例如,在第一方向上延伸的導電材料被設置在8層、16層或任意多個層中。換言之,在一個NAND串NS中,電晶體的數量可以是8個、16個或更多個。
儘管在圖5至圖7中示出3個NAND串NS被電連接至一個位 元線BL,但要注意的是,實施例不限於具有被電連接至一個位元線BL的3個NAND串NS。在記憶體區塊BLKi中,m數量的NAND串NS可以被電連接至一個位元線BL,m為正整數。根據被電連接至一個位元線BL的NAND串NS的數量,也可以控制在第一方向上延伸的導電材料5211至5291、5212至5292和5213至5293的數量和共源極線5311至5314的數量。
進一步地,儘管圖5至圖7示出3個NAND串NS被電連接至在第一方向上延伸的一個導電材料,但要注意的是,實施例不限於具有被電連接至在第一方向上延伸的一個導電材料的3個NAND串NS。例如,n數量的NAND串NS可以被電連接至在第一方向上延伸的一個導電材料,n為正整數。根據被電連接至在第一方向上延伸的一個導電材料的NAND串NS的數量,也可以控制位元線5331至5333的數量。
圖8為示出參照圖5至圖7描述的具有第一結構的記憶體區塊BLKi的等效電路圖。
參照圖8,在具有第一結構的記憶體區塊BLKi中,NAND串NS11至NS31可以被設置在第一位線BL1和共源極線CSL之間。第一位元線BL1可以對應於在第三方向上延伸的圖5和圖6的導電材料5331。NAND串NS12至NS32可以被設置在第二位線BL2和共源極線CSL之間。第二位線BL2可以對應於在第三方向上延伸的圖5和圖6的導電材料5332。NAND串NS13至NS33可以被設置在第三位線BL3和共源極線CSL之間。第三位線BL3可以對應於在第三方向上延伸的圖5和圖6的導電材料5333。
每一NAND串NS的源極選擇電晶體SST可以被電連接至對應的位元線BL。每一NAND串NS的接地選擇電晶體GST可以被電連接至共源 極線CSL。記憶胞MC可以被設置在每一NAND串NS的源極選擇電晶體SST和接地選擇電晶體GST之間。
在這個示例中,NAND串NS可以通過列和行的單元定義以及被電連接至一個位線的NAND串NS可以形成一行。被電連接至第一位線BL1的NAND串NS11至NS31可以對應於第一行,被電連接至第二位線BL2的NAND串NS12至NS32可以對應於第二行,以及被電連接至第三位線BL3的NAND串NS13至NS33可以對應於第三行。被電連接至一個源極選擇線SSL的NAND串NS可以形成一列。被電連接至第一源極選擇線SSL1的NAND串NS11至NS13可以形成第一列,被連接至第二源極選擇線SSL2的NAND串NS21至NS23可以形成第二列,以及被電連接至第三源極選擇線SSL3的NAND串NS31至NS33可以形成第三列。
在每一NAND串NS中,高度可以被定義。在每一NAND串NS中,鄰近接地選擇電晶體GST的記憶胞MC1的高度可以具有值“1”。在每一NAND串NS中,當從基板5111開始測量時,記憶胞的高度可以隨著記憶胞靠近源極選擇電晶體SST而增加。在每一NAND串NS中,鄰近源極選擇電晶體SST的記憶胞MC6的高度可以為7。
在相同列中的NAND串NS的源極選擇電晶體SST可以共享源極選擇線SSL。在不同列中的NAND串NS的源極選擇電晶體SST可以分別地電連接至不同的源極選擇線SSL1、SSL2和SSL3。
在相同列中的NAND串NS中的相同高度處的記憶胞可以共享字元線WL。即,在相同的高度處,被電連接至不同列中的NAND串NS的記憶胞MC的字元線WL可以被電連接。在相同列的NAND串NS中的相同高度處 的虛擬記憶胞DMC可以共享虛擬字元線DWL。即,在相同高度或水平處,被電連接至不同列中的NAND串NS的虛擬記憶胞DMC的虛擬字元線DWL可以被電連接。
位於相同水平或高度或層處的字元線WL或虛擬字元線DWL可以在可設置在第一方向上延伸的導電材料5211至5291、5212至5292和5213至5293的層處彼此電連接。在第一方向上延伸的導電材料5211至5291、5212至5292和5213至5293可以通過接觸部被共同地電連接至上層。在上層處,在第一方向上延伸的導電材料5211至5291、5212至5292和5213至5293可以被電連接。換言之,在相同列中的NAND串NS的接地選擇電晶體GST可以共享接地選擇線GSL。進一步地,在不同列中的NAND串NS的接地選擇電晶體GST可以共享接地選擇線GSL。即,NAND串NS11至NS13、NS21至NS23和NS31至NS33可以被電連接至接地選擇線GSL。
共源極線CSL可以被電連接至NAND串NS。在有源區域上和在基板5111上,第一至第四摻雜區域5311至5314可以被電連接。第一至第四摻雜區域5311至5314可以通過接觸部被電連接至上層,且在上層處,第一至第四摻雜區域5311至5314可以被電連接。
即,如圖8中所示,相同高度或水平的字元線WL可以被電連接。因此,當在特定高度處的字元線WL被選擇時,被電連接至該字元線WL的全部NAND串NS可以被選擇。在不同列中的NAND串NS可以被電連接至不同的源極選擇線SSL。因此,在被電連接至相同的字元線WL的NAND串NS中,通過選擇源極選擇線SSL1至SSL3中的一個,在未被選擇的列中的NAND串NS可與位元線BL1至BL3電隔離。換言之,通過選擇源極選擇線SSL1至 SSL3中的一個,NAND串NS的列可以被選擇。而且,通過選擇位線BL1至BL3中的一個,在被選擇的列中的NAND串NS可以在行的單元中被選擇。
在每一NAND串NS中,可設置虛擬記憶胞DMC。在圖8中,虛擬記憶胞DMC可以設置在每一NAND串NS中的第三記憶胞MC3和第四記憶胞MC4之間。即,第一至第三記憶胞MC1至MC3可以被設置在虛擬記憶胞DMC和接地選擇電晶體GST之間。第四至第六記憶胞MC4至MC6可以被設置在虛擬記憶胞DMC和源極選擇電晶體SST之間。每一NAND串NS的記憶胞MC可以通過虛擬記憶胞DMC被劃分成記憶胞組。在被劃分的記憶胞組中,鄰近接地選擇電晶體GST的記憶胞例如MC1至MC3可以被稱為較低記憶胞組,以及鄰近源極選擇電晶體SST的記憶胞例如MC4至MC6可以被稱為較高記憶胞組。
在下文中,將參照圖9至圖11做出詳細說明,圖9至圖11示出根據本發明的實施例的記憶體系統中的利用不同於第一結構的三維(3D)非揮發性記憶體裝置來實施的記憶體裝置。
圖9為圖示地示出利用不同於上文參照圖5至圖8描述的第一結構的三維(3D)非揮發性記憶體裝置來實施的記憶體裝置且示出圖4的多個記憶體區塊的記憶體區塊BLKj的立體圖。圖10是示出沿圖9的線VII-VII’截取的記憶體區塊BLKj的截面圖。
參照圖9和圖10,在圖1的記憶體裝置150的多個記憶體區塊中的記憶體區塊BLKj可以包括在第一至第三方向上延伸的結構。
基板6311可以被提供。例如,基板6311可以包括摻雜有第一類型雜質的矽材料。例如,基板6311可以包括摻雜有p-型雜質的矽材料或可以是 p-型阱,例如,袋p-阱,以及包括環繞p-型阱的n-型阱。儘管為了方便起見在實施例中假設基板6311為p-型矽,但要注意的是,基板6311不限於為p-型矽。
在x軸方向和y軸方向上延伸的第一至第四導電材料6321至6324被設置在基板6311上方。第一至第四導電材料6321至6324可以在z軸方向上隔開預定距離。
在x軸方向和y軸方向上延伸的第五至第八導電材料6325至6328可以被設置在基板6311上方。第五至第八導電材料6325至6328可以在z軸方向上隔開預定距離。第五至第八導電材料6325至6328可以在y軸方向上與第一至第四導電材料6321至6324隔開。
穿過第一至第四導電材料6321至6324的多個下部柱狀物DP可以被設置。每一個下部柱狀物DP在z軸方向上延伸。而且,穿過第五至第八導電材料6325至6328的多個上部柱狀物UP可以被設置。每一個上部柱狀物UP在z軸方向上延伸。
下部柱狀物DP和上部柱狀物UP中的每一個可以包括內部材料6361、中間層6362以及表面層6363。中間層6362可以作為單元電晶體的通道。表面層6363可以包括阻斷介電層、電荷儲存層和穿遂介電層。
下部柱狀物DP和上部柱狀物UP可以通過管閘PG電連接。管閘PG可以被設置在基板6311中。例如,管閘PG可以包括與下部柱狀物DP和上部柱狀物UP相同的材料。
在x軸方向和y軸方向上延伸的第二類型的摻雜材料6312可以被設置在下部柱狀物DP上方。例如,第二類型的摻雜材料6312可以包括n-型矽材料。第二類型的摻雜材料6312可以作為共源極線CSL。
汲極6340可以被設置在上部柱狀物UP上方。汲極6340可以包括n-型矽材料。在y軸方向上延伸的第一上部導電材料6351和第二上部導電材料6352可以被設置在汲極6340上方。
第一上部導電材料6351和第二上部導電材料6352可以在x軸方向上分開。第一上部導電材料6351和第二上部導電材料6352可以由金屬形成。第一上部導電材料6351和第二上部導電材料6352及汲極6340可以通過接觸插塞被電連接。第一上部導電材料6351和第二上部導電材料6352分別作為第一位元線BL1和第二位元線BL2。
第一導電材料6321可以作為源極選擇線SSL,第二導電材料6322可以作為第一虛擬字元線DWL1,以及第三導電材料6323和第四導電材料6324分別作為第一主字元線MWL1和第二主字元線MWL2。第五導電材料6325和第六導電材料6326分別作為第三主字元線MWL3和第四主字元線MWL4,第七導電材料6327可以作為第二虛擬字元線DWL2,以及第八導電材料6328可以作為汲極選擇線DSL。
下部柱狀物DP和鄰近下部柱狀物DP的第一至第四導電材料6321至6324形成下部串。上部柱狀物UP和鄰近上部柱狀物UP的第五至第八導電材料6325至6328形成上部串。下部串和上部串可以通過管閘PG電連接。下部串的一端可以被電連接至作為共源極線CSL的第二類型的摻雜材料6312。上部串的一端可以通過汲極6340被電連接至對應的位線。一個下部串和一個上部串形成一個胞串,胞串被電連接在作為共源極線CSL的第二類型的摻雜材料6312與作為位線BL的上部導電材料層6351和6352中的對應的一個之間。
即,下部串可以包括源極選擇電晶體SST、第一虛擬記憶胞 DMC1及第一主記憶胞MMC1和第二主記憶胞MMC2。上部串可以包括第三主記憶胞MMC3和第四主記憶胞MMC4、第二虛擬記憶胞DMC2及汲極選擇電晶體DST。
在圖9和圖10中,上部串和下部串可形成NAND串NS,以及NAND串NS可以包括多個電晶體結構TS。因為上文參照圖7詳細地說明了在圖9和圖10中的包括在NAND串NS中的電晶體結構,在此將省略其詳細說明。
圖11是示出如上文參照圖9和圖10所述的具有第二結構的記憶體區塊BLKj的等效電路的電路圖。為方便起見,僅示出形成在第二結構中的記憶體區塊BLKj中的一對的第一串和第二串。
參照圖11,在記憶體裝置150的多個塊中的具有第二結構的記憶體區塊BLKj中,胞串可以定義多個對的這種方式來設置,其中,胞串中的每一個利用如上文參照圖9和圖10所述的通過管閘PG被電連接的一個上部串和一個字符下部串來實施。
即,在具有第二結構的特定記憶體區塊BLKj中,沿著第一通道CH1(未示出)堆疊的記憶胞CG0至CG31例如至少一個源極選擇閘SSG1和至少一個汲極選擇閘DSG1可以形成第一串ST1,以及沿著第二通道CH2(未示出)堆疊的記憶胞CG0至CG31例如至少一個源極選擇閘SSG2和至少一個汲極選擇閘DSG2可以形成第二串ST2。
第一串ST1和第二串ST2可以被電連接至相同的汲極選擇線DSL和相同的源極選擇線SSL。第一串ST1可以被電連接至第一位線BL1,以及第二串ST2可以被電連接至第二位線BL2。
儘管在圖11中描述了第一串ST1和第二串ST2被電連接至相同的汲極選擇線DSL和相同的源極選擇線SSL,但可以想到第一串ST1和第二串ST2可以被電連接至相同的源極選擇線SSL和相同的位線BL,第一串ST1可以被電連接至第一汲極選擇線DSL1且第二串ST2可以被電連接至第二汲極選擇線DSL2。進一步地,可以想到第一串ST1和第二串ST2可以被電連接至相同的汲極選擇線DSL和相同的位線BL,第一串ST1可以被電連接至第一源極選擇線SSL1且第二串ST2可以被電連接至第二源極選擇線SSL2。
圖12示出根據本發明的實施例的包括多個記憶體裝置1501和1502的資料處理系統100。
在圖12中,只有兩個非揮發性記憶體裝置1501和1502被示出,然而,應該注意的是,這個配置只是一個示例。
例如,資料處理系統100可以包括更大數量的非揮發性記憶體裝置作為多個記憶體裝置。例如,在實施例中,每一個都具有128GB的容量的8個非揮發性記憶體裝置可以被包括作為多個記憶體裝置,導致資料處理系統100具有1TB的總容量。此外,應該注意的是,為了方便說明,圖12並未示出包括在圖1的控制器130中的ECC和電源管理單元140。因此,ECC 138和電源管理單元140也可以被包括在圖12的控制器130中。
更具體地說,圖12中所示的資料處理系統100可以包括主機102和記憶體系統110。記憶體系統110可以包括控制器130和多個記憶體裝置1501和1502。控制器130可以包括主機介面132、記憶體144、處理器134以及作為NAND快閃控制器(NFC,NAND flash controller)的第一和第二記憶體介面1421和1422。
第一非揮發性記憶體裝置1501可以通過第一記憶體介面1421被連接至第一通道CHANNEL1。第二非揮發性記憶體裝置1502可以通過第二記憶體介面1422被連接至第二通道CHANNEL2。主機102可以通過主機介面132被連接至第一通道CHANNEL1和第二通道CHANNEL2。
在控制器130內,處理器134和記憶體144可以同時被連接至第一通道CHANNEL1和第二通道CHANNEL2。因此,多個記憶體裝置1501和1502可以被操作,同時共享處理器134和記憶體144。
總之,相較於圖1的資料處理系統100,圖12中所示的資料處理系統可以再多包括一個通道和一個記憶體裝置。為了便於說明,圖12示出對應於兩個記憶體裝置1501和1502包括只兩個通道CHANNEL1和CHANNEL2的配置。然而,應該注意的是,可以包括任意數量的通道和記憶體裝置。在實施例中,包含有8個記憶體裝置和8個對應的通道和通道介面的資料處理系統100可以被提供。在以下的實施例中,將進一步作為示例描述兩個記憶體裝置1501和1502被包括在如圖12中所示的資料處理系統100中的情况。
圖13是示出圖12中示出的包含有多個記憶體裝置的資料處理系統的位址映射方法的簡圖。
圖13示出用於在圖12的包括第一和第二記憶體裝置1501和1502的資料處理系統100中將邏輯位址LPN映射至實體位址PPN的方法。
第一記憶體裝置1501可以包括多個第一塊,為了便於說明,其中只有兩個區塊即BLOCK10和BLOCK11被示出。在這個示例中,多個第一區塊BLOCK10、BLOCK11中的每一個可以包括多個第一頁面,為了便於說明,其中只有8個頁面即頁面P11、P12、P13、P14、P15、P16、P17、P18被示出。 此外,為了便於說明,多個實體位址PPN中只有8個實體位址被示出,即,實體位址1000、1001、1002、1003、1004、1005、1006和1007。實體位址1000、1001、1002、1003、1004、1005、1006和1007可以指示可以被預先地設置和固定的各自的第一頁面P11、P12、P13、P14、P15、P16、P17和P18。實體位址PPN 1000、1001、1002、1003、1004、1005、1006和1007的值需要被知道,以為了向第一記憶體裝置1501輸入資料/從第一記憶體裝置1501輸出資料。
第二記憶體裝置1502可以包括多個第二塊,為了便於說明,其中只有兩個區塊即區塊BLOCK20和BLOCK21被示出。在這個示例中,多個第二區塊BLOCK20、BLOCK21可以包括多個第二頁面,為了便於說明,其中只有8頁面即頁面P21、P22、P23、P24、P25、P26、P27和P28被示出。此外,多個實體位址PPN中只有8個被示出,即,實體位址PPN 10、11、12、13、14、15、16和17,其指示可以被預先地設置和固定的各自的第二頁面P21、P22、P23、P24、P25、P26、P27和P28。指示多個第二頁面P21、P22、P23、P24、P25、P26、P27和P28的實體位址PPN 10、11、12、13、14、15、16和17的值可能需要被知道,以為了向第二記憶體裝置1502輸入資料/從第二記憶體裝置1502輸出資料。
當第一和第二記憶體裝置1501和1502中的每個均使用實體位址PPN時,主機102可使用邏輯位址LPN。因此,可能需要將在主機102中使用的邏輯位址LPN映射至在第一和第二記憶體裝置1501和1502中使用的實體位址PPN的操作。當第一和第二記憶體裝置1501和1502是在頁面基礎上執行資料讀取/寫入操作以及在塊基礎上執行資料抹除操作的非揮發性記憶體裝置而主機102在頁面基礎上執行資料讀取/寫入/抹除操作時,可能需要位址映射操作。
因此,在圖13中所示的位址映射表被用於將從主機102輸入的邏輯位址LPN改變為實體位址PPN之後,資料可以被輸入至第一和第二記憶體裝置1501和1502和/或從第一和第二記憶體裝置1501和1502輸出。
在這個示例中,位址映射表可以使用基於邏輯位址LPN分配實體位址PPN的方法。即,當在能夠由主機102設置的全部邏輯位址LPN基於位址映射表被儲存的狀態下特定的邏輯位址LPN的值由主機102存取(寫入或抹除)時,對應於特定邏輯位址LPN的實體位址PPN的值可以被更新。
例如,當為了讓主機102讀取儲存在邏輯位址LPN中的資料,具有值22的邏輯位址被存取時(情况1),資料處理系統100可以在位址映射表中搜尋連接至具有值22的邏輯位址的具有值1004的實體位址PPN。然後,根據被搜尋的具有值1004的實體位址PPN,資料處理系統100可以執行存取第一記憶體裝置1501的第一區塊BLOCK11的頁面P15的讀取操作以將儲存在頁面P15中的資料輸出至主機102。
相似地,當為了將從主機102輸入的資料寫入至邏輯位址LPN,具有值102的邏輯位址LPN被存取時(情况2),資料處理系統100可以在位址映射表中搜尋連接至具有值102的邏輯位址LPN的具有值13的實體位址PPN。然後,根據被搜尋的具有值13的實體位址PPN,資料處理系統100可以執行存取第二記憶體裝置1502的第零區塊BLOCK20的頁面P24的寫入操作以將從主機102輸入的資料儲存在頁面P24中。作為參考,儘管操作的詳細說明被省略,但將具有值102的邏輯位址LPN連接至具有值13的實體位址PPN的操作可以在寫入操作之前被執行。此外,由具有值13的實體位址PPN指示的第二記憶體裝置1502的第零區塊BLOCK20的頁面P24可以是其中未儲存資料的自由頁 面。
因為主機102可存取的全部邏輯位址LPN的值和對應於邏輯位址LPN的全部實體位址PPN的值可以相互對應並被儲存為表,所以位址映射表可以具有相當大的大小。因此,位址映射表的整個資訊可以被儲存在第一和第二記憶體裝置1501和1502中,且處理器134可以僅將位址映射表的一部分裝載到記憶體144中,並使用被裝載的部分。
例如,假設分別包含在第一和第二記憶體裝置1501和1502中的的頁面P11、P12、P13、P14、P15、P16、P17、P18和P21、P22、P23、P24、P25、P26、P27、P28中的每個可以具有4KB(2^15)的容量,且邏輯位址LPN和實體位址PPN中的每個可以具有32比特(2^5)的大小。在這種情况下,當第一和第二記憶體裝置1501和1502中的每個被設置以具有128GB(2^40)的容量使得總容量被設置為256GB(2^41)時,對應於第一和第二記憶體裝置1501和1502中的每個的位址映射表的大小可以被設置為128MB(2^30)。因此,位址映射表的總大小可以被設置為256MB(2^31)。由於位址映射表可以具有相當大的大小,所以位址映射表的整個資訊可以被儲存在第一和第二記憶體裝置1501和1502中,且處理器134可以僅將位址映射表的一部分裝載至記憶體144中並使用被裝載的部分。
如參照圖12所述,第一和第二記憶體裝置1501和1502共享處理器134和記憶體144,且主機102可能沒有區分第一和第二記憶體裝置1501和1502的方法。例如,儘管每個均具有128GB的容量的兩個記憶體裝置1501和1502在記憶體系統110內被清楚地彼此區分,但主機102只認為具有256GB容量的記憶體系統110被連接到主機102。
因此,從主機102傳輸到記憶體系統110的邏輯位址LPN的值可以在第一和第二記憶體裝置1501和1502之間不區分。然而,記憶體系統110可以在第一和第二記憶體裝置1501和1502之間區分,並可將實體位址PPN的值映射至從主機102傳輸的邏輯位址LPN的值。
由於主機102不能區分包含在記憶體裝置110中的第一和第二記憶體裝置1501和1502,所以為了使位址映射操作順利,位址映射表可能需要被複製並儲存在第一和第二記憶體裝置1501和1502中。
例如,指示對應於第一記憶體裝置1501的實體位址PPN的邏輯位址LPN可以從主機102輸入,然後指示對應於第二記憶體裝置1502的實體位址PPN的邏輯位址LPN可以被輸入。在這個示例中,當被儲存在第一記憶體裝置1501中的位址映射表只儲存關於用於對應於第一記憶體裝置1501的實體位址PPN的邏輯位址LPN的資訊時,指示對應於第二記憶體裝置1502的實體位址PPN的邏輯位址LPN不能在被儲存在第一記憶體裝置1501中的位址映射表中被搜尋到。然而,在這種情况下,處理器134不能確定是額外地裝載儲存在第一記憶體裝置1501中的位址映射表以搜尋邏輯位址還是在儲存在第二記憶體裝置1502中的位址映射表中搜尋邏輯位址。為了這個原因,常規操作不能被執行。因此,用於儲存關於用於對應於第一和第二記憶體裝置1501和1502兩者的實體位址PPN的邏輯位址LPN的資訊的位址映射表可能需要被複製並儲存在第一和第二記憶體裝置1501和1502中。例如,當包括對應於第一記憶體裝置1501的實體位址PPN和用於實體位址PPN的邏輯位址LPN的位址映射表的大小被設置為128MB且包括對應於第二記憶體裝置1502的實體位址PPN和用於實體位址PPN的邏輯位址LPN的位址映射表的大小被設置為128MB時,包 括對應於第一和第二記憶體裝置1501和1502兩者的實體位址PPN及用於實體位址PPN的邏輯位址LPN的位址映射表的大小可以被設置為256MB。在這種情况下,具有256MB大小的位址映射表可能需要被儲存在第一記憶體裝置1501中,且具有256MB大小的位址映射表可能也需要被儲存在第二記憶體裝置1502中。
總之,在包含第一和第二記憶體裝置1501和1502的記憶體系統110中,位址映射表可能需要被複製並儲存在第一和第二記憶體裝置1501和1502的每個中。在上述實施例中,由於第一和第二記憶體裝置1501和1502被包含在記憶體系統110中,位址映射表可以只被複製和儲存在第一和第二記憶體裝置1501和1502中。然而,當記憶體系統110包括8個記憶體裝置時,位址映射表可能需要被複製和儲存在8個記憶體裝置中。例如,當對應於8個記憶體裝置的每一個的位址映射表的大小為128MB時,對應於全部8個記憶體裝置的位址映射表的大小可以被設置為1GB,以及具有1GB大小的位址映射表可以被複製並儲存在8個記憶體裝置的每一個中。
圖14是示出包含多個記憶體裝置的資料處理系統的另一個示例的簡圖。
參照圖14,兩個記憶體系統1101和1102被包含而作為多個記憶體系統,但這只是示例。更大數量的記憶體系統可以被包含而作為多個記憶體系統。例如,當一個記憶體系統1101包含具有128GB容量的一個記憶體裝置時,為了包括八個記憶體裝置,八個記憶體系統可以被設置為多個記憶體系統。在這種情况下,資料處理系統100可以具有1TB的總容量。此外,圖14示出包含在圖1的控制器130中的ECC單元138和電源管理單元140並未被包含在包 括在各自記憶體系統1101和1102中的控制器1301和1302中。然而,省略ECC單元138和電源管理單元140的說明只是為了便於說明,並且ECC單元138和電源管理單元140可以被包含在控制器1301和1302中。
具體地,圖14中所示的資料處理系統100可以包括主機102、第一記憶體系統1101以及第二記憶體系統1102。第一記憶體系統1101可以包括第一控制器1301和作為第一非揮發性記憶體裝置的第一記憶體裝置1501。第一控制器1301可以包括第一主機介面1321、第一記憶體1441、第一處理器1341以及作為第一NAND快閃控制器(NFC1)的第一記憶體介面1421。第二記憶體系統1102可以包括第二控制器1302和作為第二非揮發性記憶體裝置的第二記憶體裝置1502。第二控制器1302可以包括第二主機介面1322、第二記憶體1442、第二處理器1342以及諸如第二NAND快閃控制器(NFC2)的第二記憶體介面1422。
第一記憶體裝置1501可以通過第一記憶體介面1421被連接至第一通道CHANNEL1。
第二記憶體裝置1502可以通過第二記憶體介面1422被連接至第二通道CHANNEL2。
主機102可以通過第一主機介面1321被連接至第一通道CHANNEL1,且通過第二主機介面1322被連接至第二通道CHANNEL2。即,主機102可以同時被連接至第一通道CHANNEL1和第二通道CHANNEL2。
第一處理器1341和第一記憶體1441可以被連接至第一通道CHANNEL1且被用於控制第一記憶體裝置1501。
包括在第二控制器1302中的第二處理器1342和第二記憶體 1442可以被連接至第二通道CHANNEL2且被用於控制第二記憶體裝置1502。
總之,圖14中所示的資料處理系統100可以包括兩個記憶體系統1101和1102作為圖1中所示的記憶體系統110。在圖14的實施例中,在這個例子中,第一和第二記憶體系統1101和1102可以並行地被連接至主機102,以及並行地接收命令、位址和資料(未示出)。為了說明的簡便,圖14只示出兩個記憶體系統1101和1102,每個記憶體系統分別包含有一個記憶體裝置1501和1502,使得只有兩個記憶體裝置1501和1502被包含在資料處理系統100中。然而,應該注意的是,本發明不限於這種方式且許多其它組合可以被採用。例如,在實施例中,八個記憶體系統可以被包含在資料處理系統100中,每個均包含有記憶體裝置以為了將八個記憶體裝置包括在資料處理系統100中。在本實施例中,兩個記憶體系統1101和1102被包括在資料處理系統100中的情况將被作為示例以用於進一步說明。
圖15A至15E是示出在圖14中所示的包含有多個記憶體裝置的資料處理系統的位址映射方法的簡圖。
圖15A至圖15E示出用於在如圖14中所示的在分別包含具有第一記憶體裝置1501的第一記憶體系統1101和具有第二記憶體裝置1502的第二記憶體系統1102的資料處理系統100中將邏輯位址LPN映射至實體位址PPN的方法。
第一,第一記憶體裝置1501可以包括多個第一區塊,為了便利只示出其中的兩個區塊,即區塊BLOCK10和BLOCK11。在這個示例中,第一區塊BLOCK10和BLOCK11可以包括多個第一頁面,為了便利只示出其中的八個頁面,即P11、P12、P13、P14、P15、P16、P17和P18。指示第一記憶體裝置 1501的各自的第一頁面P11、P12、P13、P14、P15、P16、P17和P18的實體位址PPN 1000、1001、1002、1003、1004、1005、1006和1007可以被預先設置和固定。即,指示多個第一頁面P11、P12、P13、P14、P15、P16、P17和P18的實體位址PPN的值可能需要被知道,以為了向第一記憶體裝置1501輸入資料和/或從第一記憶體裝置1501輸出資料。
第二記憶體裝置1502可以包括多個第二區塊,為了便利只示出其中的兩區塊,即區塊BLOCK20和BLOCK21。在這個示例中,第二區塊BLOCK20和BLOCK21可以包括多個第二頁面,為了便利只示出其中的八個頁面,即頁面P21、P22、P23、P24、P25、P26、P27和P28。指示第二記憶體裝置1502的各自的第二頁面P21、P22、P23、P24、P25、P26、P27和P28的實體位址PPN 10、11、12、13、14、15、16和17可以被預先設置和固定。即,指示多個第二頁面P21、P22、P23、P24、P25、P26、P27和P28的實體位址PPN的值可能需要被知道,以為了向第二記憶體裝置1502輸入資料和/或從第二記憶體裝置1502輸出資料。
當第一和第二記憶體裝置1501和1502的每個使用實體位址PPN時,主機102可以使用邏輯位址LPN。因此,可能需要將在主機102中使用的邏輯位址LPN映射至在第一和第二記憶體裝置1501和1502中使用的實體位址PPN的操作。這樣的位址映射操作可能被需要的原因是第一和第二記憶體裝置1501和1502為在頁面基礎上執行資料讀取/寫入操作而在區塊基礎上執行資料抹除操作的非揮發性記憶體裝置,而主機102在頁面基礎上執行資料讀取/寫入/抹除操作。
因此,如圖15A至15E中所示,預設操作可以通過第一和第二 處理器1341和1342執行,以及用於基於實體位址PPN更新邏輯位址LPN的值的位址映射表可以被使用以向第一和第二記憶體裝置1501和1502輸入資料和/或從第一和第二記憶體裝置1501和1502輸出資料。
具體地,第一記憶體系統1101可以儲存多個第一實體位址PPN1的值以作為第一表TB1,為了便利只示出其中八個,用於實體地指示包括在第一記憶體裝置1501中的各自的第一頁面P11、P12、P13、P14、P15、P16、P17和P18。根據通過對主機102應用的邏輯位址LPN執行預設運算而產生的實體位址PPN的值是否在第一表TB1中存在,第一記憶體系統1101可以確定是否執行對應於主機102應用的命令(未示出)的預設操作。
在這個示例中,第一記憶體裝置1501可以儲存第一表TB1,以及第一處理器1341可以將第一表TB1的一部分裝載到第一記憶體1441中並使用被裝載的部分。
第一控制器1301可以對主機102應用的邏輯位址LPN執行預設運算,並產生實體位址PPN。在這個示例中,第一控制器1301可以檢查所產生的實體位址PPN是否存在於儲存在第一記憶體裝置1501中的第一表TB1中。當檢查到實體位址PPN存在時,第一控制器1301可以執行對應於主機102應用的命令(未示出)的預設操作。另一方面,當檢查到實體位址PPN不存在時,第一控制器1301可以忽略主機102應用的命令並且不執行操作。
具體地,第二記憶體系統1102可以儲存用於實體地指示包括在第二記憶體裝置1502中的各自的第二頁面P21、P22、P23、P24、P25、P26、P27、P28......的多個第二實體位址PPN1的值以作為第二表TB2。根據通過對主機102應用的邏輯位址執行預設運算而產生的實體位址PPN的值是否存在於 第二表TB2中,第二記憶體系統1102可以確定是否執行對應於主機102應用的命令(未示出)的預設操作。
在這個示例中,第二記憶體裝置1502可以儲存第二表TB2,以及第二處理器1342可以將第二表TB2的一部分裝載到第二記憶體1442中並且使用被裝載的部分。
第二控制器1302可以對主機102應用的邏輯位址LPN執行預設運算,並產生實體位址PPN。在這個示例中,第二控制器1302可以檢查所產生的實體位址PPN是否存在於儲存在第二記憶體裝置1502中的第二表TB2中。當檢查到實體位址PPN存在時,第二控制器1302可以執行對應於主機102應用的命令(未示出)的預設操作。另一方面,當檢查到實體位址PPN不存在時,第二控制器1302可以忽略主機102應用的命令,並且不執行操作。
如上所述,第一記憶體系統1101可以對主機102應用的邏輯位址LPN執行預設運算,並產生實體位址PPN。相似地,第二記憶體系統1102可以對主機102應用的邏輯位址LPN執行預設運算,並產生實體位址PPN。
在這個示例中,在第一記憶體系統1101中被執行的對邏輯位址的預設運算與在第二記憶體系統1102中對邏輯位址執行的預設運算相同。此外,在第一記憶體系統1101中對邏輯位址執行預設運算的時間點與在第二記憶體系統1102中對邏輯位址執行預設運算的時間點相等。這是因為第一和第二記憶體系統1101和1102被並行地連接至主機102且同時地接收邏輯位址LPN,如圖14中所示。
在實施例中,預設運算可以包括用於響應於主機102應用的各自的邏輯位址LPN在多個第一和第二實體位址PPN1和PPN2中選擇任意一個 實體位址PPN的散列操作。在這個示例中,主機102應用的邏輯位址LPN的數量可以對應於第一和第二實體位址PPN1和PPN2的數量之和。
在另一個實施例中,預設運算可以對應於用於響應於主機102應用的各自的邏輯位址LPN在多個第一和第二實體位址PPN1和PPN2中選擇任意一個實體位址PPN的二元搜尋操作。在這個示例中,主機102應用的邏輯位址LPN的數量可對應於第一和第二實體位址PPN1和PPN2的數量之和。
如上所述,預設運算可以響應於輸入邏輯位址LPN通過數學運算計算和產生實體位址PPN。因此,只要運算可以響應於輸入的邏輯位址LPN通過數學運算計算和產生實體位址PPN,則任何適合的操作可以被應用。作為參考,由於散列和二元搜尋操作廣為知曉,在此省略其詳細的說明。
圖15A和圖15B示出第一和第二表TB1和TB2的第一實施例。參照圖15A和圖15B,第一表TB1可以儲存指示包括在第一記憶體裝置1501中的多個各自的第一頁面的多個第一實體位址PPN1,其中,為了便於說明只示出其中八個第一實體位址,且為了便於說明只示出其中八個第一頁面,即頁面P11、P12、P13、P14、P15、P16、P17和P18。在第一表TB1中,用於通過預設運算產生各自的第一實體位址PPN1的邏輯位址LPN可以在邏輯位址LPN可對應於各自的第一實體位址PPN1的狀態下被儲存。
相似地,第二表TB2可以儲存指示包括在第二記憶體裝置1502中的多個各自的第二頁面的多個第二實體位址PPN2,其中,為了便於說明只示出其中八個第二實體位址,且為了便於說明只示出其中八個第二頁面,即頁面P21、P22、P23、P24、P25、P26、P27和P28。在第二表TB2中,用於通過預設運算產生各自的第二實體位址PPN2的邏輯位址LPN可以在邏輯位址LPN可 對應於各自的第二實體位址PPN2的狀態下被儲存。
參照圖15A,對應於主機102應用的命令(未示出)的預設操作可以是讀取操作。
當從主機102輸入的具有值22的邏輯位址LPN可以並行地被應用至第一和第二記憶體系統1101和1102(S110、S210),第一和第二處理器1341和1342可以同時通過執行用於具有值22的邏輯位址LPN的預設運算產生具有值1004的實體位址PPN(S120、S220)。第一和第二處理器1341和1342可以分別在第一和第二表TB1和TB2中搜尋具有值1004的實體位址PPN,以及檢查與實體位址PPN相一致的值是否存在於第一和或第二表TB1和TB2中。
根據檢查結果,值1004可存在於包含在第一表TB1中的多個第一實體位址PPN1中(S130)。因此,第一處理器1341可以複查在多個第一實體位址PPN1中對應於值1004的邏輯位址LPN是否可以具有與主機102應用的邏輯位址LPN相同的值(S140)。在這個示例中,由於值1004並不存在於包括在第二表TB2中的多個第二實體位址PPN2中,第二記憶體系統1102可不執行任何操作(S230)。
根據複查結果,在多個第一實體位址PPN1中對應於值1004的邏輯位址LPN的值可以為22(S240),其指示邏輯位址LPN可以具有與主機102應用的邏輯位址LPN相同的值。因此,根據具有值1004的第一實體位址PPN1,第一記憶體系統1101可以執行存取第一記憶體裝置1501的第一塊BLOCK11的頁面P15的讀取操作以將儲存在頁面P15中的資料輸出至主機102。
雖然未示出,但多個第一實體位址PPN1中對應於值1004的邏輯位址LPN的值可能不是22,表明由於在預設運算中發生的錯誤導致讀取操作 不正常。因此,代替讀取資料,讀取錯誤可以被產生並傳輸至主機102。
圖15A示出儲存在第一表TB1中的第一實體位址PPN1中的一些實體位址PPN1即實體位址PPN1 1004、1005和1006可以對應於各自的邏輯位址LPN 22、21和20,而實體位址PPN1 1001、1002和1003可以不對應於任何邏輯位址LPN(空)。此外,圖15A示出儲存在第二表TB2中的第二實體位址PPN2中的一些實體位址PPN2即實體位址PPN2 12、13、14和15可以對應於邏輯位址LPN 103、102、101和100,而實體位址PPN2 10和11可以不對應於邏輯位址LPN(空)。
當邏輯位址LPN的值在第一和第二表TB1和TB2中為空時,其可以表明資料從未通過來自主機102的指示相應的實體位址PPN的邏輯位址LPN被寫入。即,當邏輯位址LPN的值在第一和第二表TB1和TB2中為空時,通過相應的實體位址PPN1和PPN2指示的頁面可以被視為自由區域。
例如,當沒有資料被寫入第一和第二記憶體系統1101和1102中時,多個第一頁面P11、P12、P13、P14、P15、P16、P17、P18......以及多個第二頁面P21、P22、P23、P24、P25、P26、P27、P28......可以為自由區域。因此,在這種情况下,只有第一和第二實體位址PPN1和PPN2可以被儲存在第一和第二表TB1和TB2中,以及沒有邏輯位址LPN可以被儲存在第一和第二表TB1和TB2中。
參照圖15B,對應於主機102應用的命令(未示出)的預設操作可以是寫入操作。特別地,當第一和第二表TB1和TB2如圖15A中所示的配置時,寫入操作可以被執行以改變第一和第二表TB1和TB2,例如,如圖15B中所示。
例如,具有值200的邏輯位址LPN可以從主機102被接收,以及可以並行地被應用至第一和第二記憶體系統1101和1102(S310、S410)。然後,第一和第二處理器1341和1342可以通過執行用於具有值200的邏輯位址LPN的預設運算同時地產生具有值10的實體位址PPN(S320、S420)。第一和第二處理器1341和1342可以在第一和第二表TB1和TB2中搜尋具有值10的實體位址PPN,以及檢查與實體位址PPN一致的值是否可能存在於第一和第二表TB1和TB2中。
根據圖15B的實施例,搜尋結果示出值10可存在於包括在第二表TB2中的多個第二實體位址PPN1中。因此,第二處理器1342可以接著檢查多個第二實體位址PPN2中對應於值10的邏輯位址的值是否為空。在這個示例中,由於值10不存在於包含在第一表TB1中的多個第一實體位址PPN1中,所以第一記憶體系統1101可不執行操作(S330)。
根據檢查結果,在圖15A的狀態中,在多個第二實體位址PPN2中對應於值10的邏輯位址LPN的值為空。因此,如圖15B所示,主機102應用的邏輯位址LPN的值200可以對應於多個第二實體位址PPN2中的值10並且然後被儲存(S430)。然後,根據具有值10的第二實體位址PPN2,第二記憶體系統1102可以執行存取第二記憶體裝置1502的第零區塊BLOCK20的頁面P21的寫入操作以用於將從主機102輸入的資料儲存在頁面P21中(S440)。
另一方面,當多個第二實體位址PPN2中對應於值10的邏輯位址LPN的值不為空時,其可以表明特定的資料已經被儲存在通過具有值10的第二實體位址PPN2指示的第二記憶體裝置1502的第零區塊BLOCK20的頁面P21中以及資料的值可能需要被更新。因此,當多個第二實體位址PPN2中對應 於值10的邏輯位址LPN的值不為空時,儲存在通過具有值10的第二實體位址PPN2指示的第二記憶體裝置1502的第零區塊BLOCK20的頁面P21中的資料可以被改變為無效狀態。然後,資訊可以被傳輸至主機102使得主機102應用的資料被儲存在另一個實體區域中。
圖15C至圖15E示出第一和第二表TB1和TB2的第二實施例。
參照圖15C至圖15E,第一表TB1可以儲存指示包含在第一記憶體裝置1501中的多個各自的第一頁面P11、P12、P13、P14、P15、P16、P17、P18......的多個實體位址PPN1。此外,第一表TB1可以儲存邏輯位址LPN的值以用於在邏輯位址LPN可以對應於各自的第一實體位址PPN1的狀態下通過預設運算產生各自的第一實體位址PPN1。此外,第一表TB1可以在複製指示資訊CHAIN的值可對應於各自的第一實體位址PPN1的狀態下儲存複製指示資訊CHAIN的值,複製指示資訊CHAIN指示被連接至各自的第一實體位址PPN1的邏輯位址LPN是否被複製。
相似地,第二表TB2可以儲存指示包含在第二記憶體裝置1502中的各自的第二頁面P21、P22、P23、P24、P25、P26、P27、P28......的多個第二實體位址PPN2。此外,第二表TB2可以儲存邏輯位址LPN的值以用於在邏輯位址LPN可以對應於各自的第二實體位址PPN2的狀態下通過預設運算產生各自的第二實體位址PPN2。此外,第二表TB2可以在複製指示資訊CHAIN的值可對應於各自的第二實體位址PPN2的狀態下儲存複製指示資訊CHAIN的值,複製指示資訊CHAIN指示被連接至各自的第二實體位址PPN2的邏輯位址LPN是否被複製。
參照圖15C,對應於主機102應用的命令(未示出)的預設操作 可以是讀取操作。
例如,具有值103的邏輯位址LPN可以從主機102被接收,以及可以並行地被應用至第一和第二記憶體系統1101和1102(S510、S610)。然後,第一和第二處理器1341和1342可以同時通過執行用於具有值103的邏輯位址LPN的預設運算產生具有值15的實體位址PPN(S520、S620)。第一和第二處理器1341和1342可以在第一和第二表TB1和TB2中搜尋具有值15的實體位址PPN,以及檢查與實體位址PPN一致的值是否可能存在於第一和第二表TB1和TB2中。
根據檢查結果,值15可存在於包含在第二表TB2中的多個第二實體位址PPN2中。因此,第二處理器1342可以檢查在多個第二實體位址PPN2中對應於值15的複製指示資訊CHAIN的值是否可能具有初始值-1(S630)。在這個示例中,由於值15不存在於包括在第一表TB1中的多個第一實體位址PPN1中,所以第一記憶體系統1101可不執行操作(S530)。
根據檢查結果,多個第二實體位址PPN2中對應於值15的複製指示資訊CHAIN的值是12(S630),其表明複製指示資訊CHAIN的值不是初始值-1。因此,第二處理器1342可以在多個實體位址PPN2中選擇具有值12的實體位址PPN(S640),實體位址PPN具有與被連接至具有值15的第二實體位址PPN2的複製指示資訊CHAIN相同的值,以及第二處理器1342可以複查被連接至具有值12的被選擇的第二實體位址PPN2的複製指示資訊CHAIN是否可能具有初始值-1(S650)。
根據複查結果,在多個第二實體位址PPN2中對應於值12的複製指示資訊CHAIN的值為-1(S650),其表明複製指示資訊CHAIN可以具有初 始值-1。因此,第二處理器1342可以複查在多個第二實體位址PPN2中對應於值12的邏輯位址LPN是否可能具有與主機102應用的邏輯位址LPN相同的值。
根據複查的結果,在多個第二實體位址PPN2中對應於值12的邏輯位址LPN的值可以是103,其表明邏輯位址可以具有與主機102應用的邏輯位址LPN相同的值。因此,根據具有值12的第二實體位址PPN2,第二記憶體系統1102可以執行存取第二記憶體裝置1502的第零區塊BLOCK20的頁面P23的讀取操作以將儲存在頁面P23中的資料輸出至主機102(S660)。
雖然未示出,但當即使在多個第二實體位址PPN2中對應於值15的複製指示資訊CHAIN的值可能為-1但邏輯位址LPN的值可能不是103時,其可表明由於在預設運算中發生錯誤導致讀取操作不正常。因此,代替讀取資料,讀取錯誤可以被產生並傳輸至主機102。
雖然未示出,但當在多個第二實體位址PPN2中對應於值12的複製指示資訊CHAIN的值可能不是-1時,第二記憶體系統1102可以重複在多個第二實體位址PPN2中選擇具有與複製指示資訊CHAIN相同的值的實體位址PPN以及檢查被連接至被選擇的第二實體位址PPN2的複製指示資訊CHAIN的值的操作。操作可被重複直至被連接至被選擇的第二實體位址PPN2的複製指示資訊CHAIN可具有初始值-1且實際的讀取操作被執行為止。
圖15C示出儲存在第一表TB1中的第一實體位址PPN1中的一些實體位址PPN1 1004、1005和1006可以分別地對應於邏輯位址LPN 22、21和20以及複製指示資訊-1、-1和-1,然而實體位址1001、1002和1003可能不對應於邏輯位址LPN和複製指示資訊CHAIN(即,空)。圖15C示出儲存在第二表TB2中的第二實體位址PPN2中的一些實體位址PPN2 12、13、14和15可 以分別對應於邏輯位址LPN103、102、101和100以及複製指示資訊CHAIN-1、-1、-1和12,然而實體位址10和11可不對應於邏輯位址LPN和複製指示資訊CHAIN(即,空)。
當邏輯位址LPN和複製指示資訊CHAIN的值在第一和第二表TB1和TB2中為空時,其可表明資料從未通過指示來自主機102的對應的實體位址PPN的邏輯位址LPN被寫入。即,當邏輯位址LPN和複製指示資訊CHAIN的值在第一和第二表TB1和TB2中為空時,通過對應的實體位址PPN1和PPN2指示的頁面可以被視為自由區域。
例如,當沒有資料被寫入第一和第二記憶體系統1101和1102中時,多個第一頁面P11、P12、P13、P14、P15、P16、P17、P18……和多個第二頁面P21、P22、P23、P24、P25、P26、P27、P28……可以是自由區域。因此,只有第一和第二實體位址PPN1和PPN2可以被儲存在第一和第二表TB1和TB2中,然而邏輯位址和複製指示資訊CHAIN可不被儲存在其中。
參照圖15D和圖15E,對應於主機102應用的命令(未示出)的預設操作可以是寫入操作。特別地,當第一和第二表TB1和TB2如圖15C中所示配置時,寫入操作可以被執行以改變第一和第二表TB1和TB2,例如,如圖15D或圖15E中所示。
參照圖15D,具有值66的邏輯位址LPN可以並行地被應用至第一和第二記憶體系統1101和1102(S710、S810),第一和第二處理器1341和1342隨後可以同時通過執行用於具有值66的邏輯位址LPN的預設運算產生具有值1002的實體位址PPN(S720、S820)。第一和第二處理器1341和1342可以在第一和第二表TB1和TB2中搜尋具有值1002的實體位址PPN,以及檢查 與實體位址PPN一致的值是否可能存在於第一和第二表TB1和TB2中。
根據搜尋結果,值1002可以存在於包含在第一表TB1中的多個第一實體位址PPN1中,如圖15D的實施例所示。因此,第一處理器1341可以隨後檢查在多個第一實體位址PPN1中對應於值1002的邏輯位址LPN的值是否可能為空(S730)。在這個示例中,由於值1002不存在於包含在第二表TB2中的多個第二實體位址PPN2中,所以第二記憶體系統1102可不執行操作(S830)。
根據檢查結果,在多個第一實體位址PPN1中對應於值1002的邏輯位址LPN的值可能如圖15C中所示已經為空。因此,如圖15D中所示,第一記憶體系統1101可以在邏輯位址LPN和複製資訊CHAIN對應於多個第一實體位址PPN1中的值1002的狀態中儲存主機102應用的具有值66的邏輯位址LPN及具有初始值-1的複製指示資訊CHAIN。根據具有值1002的第一實體位址PPN1,第一記憶體系統1101可以執行存取第一記憶體裝置1501的第零區塊BLOCK10的頁面P13的寫入操作以用於將從主機102輸入的資料儲存到頁面P13中(S740)。
參照圖15E,具有值42的邏輯位址LPN可以從主機102被輸入且可並行地被應用至第一和第二記憶體系統1101和1102(S910、S1010)。然後,第一和第二處理器1341和1342可以同時通過執行用於具有值42的邏輯位址LPN的預設運算產生具有值1005的實體位址PPN(S920、S1020)。第一和第二處理器1341和1342可以在第一和第二表TB1和TB2中搜尋具有值1005的實體位址PPN,以及檢查在第一和第二表TB1和TB2中是否可能存在與實體位址PPN一致的值。
根據搜尋結果,值1005可存在於包含在第一表TB1中的多個第 一實體位址PPN1中。因此,第一處理器1341可以檢查在多個第一實體位址PPN1中對應於值1005的邏輯位址LPN的值是否為空(S930)。在這個示例中,由於值1005不存在於包含在第二表TB2中的多個第二實體位址PPN2中,所以第二記憶體系統1102可不執行任何操作(S1030)。
檢查結果可以表明在圖15C的情况中在多個第一實體位址PPN1中對應於值1005的邏輯位址LPN的值為21(S930)。這可以表明特定的資料已經被儲存在由第一實體位址PPN11005指示的第一記憶體裝置1501的第一塊BLOCK11的頁面P16中且其值可能需要被更新。因此,儲存在由具有值1005的第一實體位址PPN1指示的第一記憶體裝置1501的第一塊BLOCK11的頁面P16中的資料可以被改變為無效資料。
之後,第一記憶體系統1101可以在多個第一實體位址PPN1中選擇沒有邏輯位址LPN連接至其的任意一個第一實體位址PPN1。在這個示例中,由於具有值1001的第一實體位址PPN1可能沒有邏輯位址LPN連接至其(空),所以第一實體位址PPN1可以如圖15E中所示被選擇(S940)。被選擇的第一實體位址PPN1的值1001可以被儲存為具有值1005的第一實體位址PPN1的複製指示資訊CHAIN,其被確定以用於儲存無效資料。即,值1001可以被儲存為具有值1005的第一實體位址PPN1的複製指示資訊CHAIN的值。
此外,第一記憶體系統1101可以在邏輯位址LPN和複製指示資訊CHAIN可對應於具有值1001的第一實體位址PPN1的狀態中儲存主機102應用的具有值42的邏輯位址LPN以及具有初始值-1的複製指示資訊CHAIN(S950)。
然後,根據具有值1001的第一實體位址PPN1,第一記憶體系 統1101可以執行存取第一記憶體裝置1501的第零區塊BLOCK10的頁面P12的寫入操作以用於將從主機102接收的資料儲存在頁面P12中(S960)。
在參照圖14和圖15A至圖15E描述的包括第一和第二記憶體裝置1501和1502的資料處理系統100中,主機102可能也不能區分第一和第二記憶體裝置1501和1502。
然而,由於位址映射表不是基於從主機102接收的邏輯位址LPN配置的,而是位址映射表是基於實體位址PPN且主機102應用的邏輯位址LPN通過預設運算被轉譯成實體位址PPN,即使位址映射表未被複製和儲存,順利的位址映射操作可以被執行。
具體地,在本實施例中,第一記憶體系統1101可以只包括基於指示包含在第一記憶體裝置1501中的多個第一頁面P11、P12、P13、P14、P15、P16、P17、P18……的第一實體位址PPN1的第一表TB1,以及第二記憶體系統1102可以只包括基於指示包含在第二記憶體裝置1502中的多個第一頁面P11、P12、P13、P14、P15、P16、P17、P18……的第二實體位址PPN2的第二表TB2。
在這個狀態下,從主機102輸入的邏輯位址LPN可以通過預設運算被轉譯成實體位址PPN,以及實體位址PPN可以被直接地在第一和第二表TB1和TB2中同時地搜尋。
在這個示例中,第一處理器1341和第一記憶體1441可以獨立地只控制第一記憶體裝置1501的操作,以及第二處理器1342和第二記憶體1442可以獨立地只控制第二記憶體裝置1502的操作。
因此,第一和第二處理器1341和1342中的每個可以對主機102應用的邏輯位址LPN執行預設運算,並行地產生實體位址PPN。此外,通過預 設運算產生的實體位址可以同時地在第一和第二表TB1和TB2中被搜尋。這可以表明確定通過預設運算產生的實體位址PPN可以存在於第一和第二表TB1和TB2中的哪個表中作為搜尋結果的操作能夠被容易地執行。
因此,儘管第一記憶體系統1101只包括第一表TB1以及第二記憶體系統1102只包括第二表TB2,但是位址映射操作可以被順利地執行。
例如,假設對應於具有128GB大小的第一記憶體裝置1501的第一表TB1的大小為128M,以及對應於具有128GB大小的第二記憶體裝置1502的第二表TB2的大小為128M。在這種情况下,儘管只有具有128M大小的第一表TB1被儲存在第一記憶體裝置1501中以及只有具有128M大小的第二表TB2被儲存在第二記憶體裝置1502中,但是位址映射操作可以被順利地執行。
此外,甚至當資料處理系統100包含除第一和第二記憶體裝置1501和1502以外的更大數量的記憶體裝置時,例如,甚至當資料處理系統100包括八個記憶體裝置時,位址映射操作可以在八個記憶體裝置的每一個包含對應的位址映射表的情况下被順利地執行。
根據本發明的實施例,包括在資料處理系統中的各自的記憶體系統可以基於指示各自的記憶體系統的實體位址設置位址表,以便位址映射表被分布和儲存在各自的記憶體系統中。此外,各自的記憶體系統可以通過並行操作將主機應用的邏輯位址轉譯成實體位址,以及隨後在被分布在各自的記憶體系統中的位址表中搜尋被轉譯的實體位址。
因此,被各自的記憶體系統中的位址表所占用的區域可以被最小化。
儘管為了說明的目的已經描述了各種實施例,但對於本領域技術人員將顯而易見的是,在不脫離如請求項所限定的本發明的精神和範圍的情况下可以做出各種改變和變換。
100:資料處理系統
102:主機
1101:第一記憶體系統
1102:第二記憶體系統
1301:第一控制器
1302:第二控制器
1321:第一主機介面
1322:第二主機介面
1341:第一處理器
1342:第二處理器
1421:第一記憶體介面
1422:第二記憶體介面
1441:第一記憶體
1442:第二記憶體
1501:第一記憶體裝置
1502:第二記憶體裝置

Claims (18)

  1. 一種資料處理系統,其包括:至少兩個記憶體系統,其包括第一記憶體系統和第二記憶體系統,來自主機的邏輯位址和命令被並行地應用至該第一記憶體系統和該第二記憶體系統,其中該第一記憶體系統儲存用於實體地指示包括在第一非揮發性記憶體裝置中的多個第一頁面的多個第一實體位址和對應於該等第一實體位址的多個邏輯位址作為第一表,通過對被應用的邏輯位址執行預設運算產生實體位址,以及根據所產生的實體位址是否包括在該第一表的該等第一實體位址中,確定是否執行對應於被應用的命令的預設操作,以及第二記憶體系統儲存用於實體地指示包含在第二非揮發性記憶體裝置中的多個第二頁面的多個第二實體位址和對應於該等第二實體位址的多個邏輯位址作為第二表,通過對被應用的邏輯位址執行該預設運算產生實體位址,以及根據所產生的實體位址是否包括在該第二表的該等第二實體位址中,確定是否執行對應於被應用的命令的預設操作,其中該預設運算包括散列操作和二元搜尋操作,其中該預設操作包括寫入操作和讀取操作。
  2. 如請求項1所述的資料處理系統,其中該第一記憶體系統包括:該第一非揮發性記憶體裝置,其包括該等第一頁面,且適用於儲存該第一表;以及 第一控制器,其適用於通過對被應用的邏輯位址執行該預設運算產生實體位址、檢查所產生的實體位址是否存在於儲存在該第一非揮發性記憶體裝置中的第一表中以及根據檢查結果確定是否執行對應於命令的預設操作。
  3. 如請求項2所述的資料處理系統,其中該第二記憶體系統包括:該第二非揮發性記憶體裝置,其包括該等第二頁面,且適用於儲存該第二表;以及第二控制器,其適用於通過對被應用的邏輯位址執行該預設運算產生實體位址、檢查所產生的實體位址是否存在於儲存在該第二非揮發性記憶體裝置中的第二表中以及根據檢查結果確定是否執行對應於命令的預設操作。
  4. 如請求項1所述的資料處理系統,其中該第一記憶體系統和該第二記憶體系統中的每個同時通過對被應用的邏輯位址執行該預設運算產生該實體位址。
  5. 如請求項1所述的資料處理系統,其中該第一表在該邏輯位址對應於各自的第一實體位址的狀態下儲存用於通過該預設運算產生該等第一實體位址的邏輯位址。
  6. 如請求項5所述的資料處理系統,其中當對應於被應用的命令的預設操作為寫入操作時,該第一記憶體系統比較通過對被應用的邏輯位址執行該預設運算產生的實體位址與該等第一實體位址,以及檢查是否存在與該實體位址一致的第一實體位址,當與該實體位址一致的第一實體位址存在時,該第一記憶體系統複查被連接至對應的第一實體位址的邏輯位址是否存在, 當被連接至對應的第一實體位址的邏輯位址不存在時,該第一記憶體系統在被應用的邏輯位址被連接至對應的第一實體位址的狀態下將被應用的邏輯位址儲存在該第一表中,以及當被連接至對應的第一實體位址的邏輯位址存在時,該第一記憶體系統改變該等第一頁面中對應於對應第一實體位址的第一頁面為無效狀態,以及傳輸資訊至該主機。
  7. 如請求項6所述的資料處理系統,其中當對應於被應用的命令的預設操作為讀取操作時,該第一記憶體系統比較通過對被應用的邏輯位址執行該預設運算產生的實體位址與第一實體位址,以及檢查是否存在與該實體位址一致的第一實體位址,當與該實體位址一致的第一實體位址存在時,該第一記憶體系統複查被連接至對應的第一實體位址的邏輯位址是否與被應用的邏輯位址一致,以及當該邏輯位址與被應用的邏輯位址一致時,該第一記憶體系統使用對應的第一實體位址從該第一非揮發性記憶體裝置執行該讀取操作。
  8. 如請求項5所述的資料處理系統,其中在複製指示資訊被連接至各該第一實體位址的狀態下,該第一表儲存該複製指示資訊,該複製指示資訊指示被連接至各該第一實體位址的邏輯位址是否被複製。
  9. 如請求項8所述的資料處理系統,其中當對應於被應用的命令的預設操作為寫入操作時,該第一記憶體系統比較通過對被應用的邏輯位址執行該預設運算產生的實體位址與該等第一實體位址,以及檢查是否存在與該實體位址一致的第一實體位址, 當與該實體位址一致的第一實體位址存在時,該第一記憶體系統複查被連接至對應的第一實體位址的邏輯位址是否存在,當被連接至對應的第一實體位址的邏輯位址不存在時,該第一記憶體系統在被應用的邏輯位址的值和該複製指示資訊的初始值被連接至對應的第一實體位址的狀態下將被應用的邏輯位址和該複製指示資訊儲存在該第一表中,以及當被連接至對應的第一實體位址的邏輯位址存在時,該第一記憶體系統在該等第一實體位址中選擇沒有連接邏輯位址的任意一個第一實體位址、儲存被選擇的第一實體位址的值作為被連接至對應的第一實體位址的複製指示資訊以及在被應用的邏輯位址的值和該複製指示資訊的初始值被連接至被選擇的第一實體位址的狀態下將被應用的邏輯位址和該複製指示資訊儲存在該第一表中。
  10. 如請求項9所述的資料處理系統,其中當對應於被應用的命令的預設操作為讀取操作時,該第一記憶體系統比較通過對被應用的邏輯位址執行該預設運算產生的實體位址與該等第一實體位址比較,以及檢查是否存在與該實體位址一致的第一實體位址,當與該實體位址一致的第一實體位址存在時,該第一記憶體系統複查被連接至對應的第一實體位址的複製指示資訊是否具有該初始值,當該複製指示資訊具有該初始值時,該第一記憶體系統複查被連接至對應的第一實體位址的邏輯位址是否與被應用的邏輯位址一致,以及只在該邏輯位址與被應用的邏輯位址一致的情况下使用對應的第一實體位址從該第一非揮發性記憶體裝置執行該讀取操作,以及 當該複製指示資訊不具有該初始值時,該第一記憶體系統在該等第一實體位址中選擇具有與被連接至對應的第一實體位址的複製指示資訊相同的值的實體位址、設置被選擇的第一實體位址為對應的第一實體位址以及重複複查操作直至被連接至對應的第一實體位址的複製指示資訊成為該初始值為止。
  11. 如請求項5所述的資料處理系統,其中在邏輯位址對應於各自的第二實體位址的狀態下,該第二表儲存用於通過該預設運算產生該等第二實體位址的邏輯位址。
  12. 如請求項11所述的資料處理系統,其中當對應於被應用的命令的預設操作為寫入操作時,該第二記憶體系統比較通過對被應用的邏輯位址執行該預設運算產生的實體位址與第二實體位址,以及檢查是否存在與該實體位址一致的第二實體位址,當與該實體位址一致的第二實體位址存在時,該第二記憶體系統複查被連接至對應的第二實體位址的邏輯位址是否存在,當連接至對應的第二實體位址的邏輯位址不存在時,該第二記憶體系統在被應用的邏輯位址被連接至對應的第二實體位址的狀態下將被應用的邏輯位址儲存在該第二表中,以及當被連接至對應的第二實體位址的邏輯位址存在時,該第二記憶體系統改變在該等第二頁面中對應於對應的第二實體位址的第二頁面為無效狀態,並傳輸資訊至該主機。
  13. 如請求項12所述的資料處理系統,其中當對應於被應用的命令的預設操作為讀取操作時,該第二記憶體系統比較通過對被應用的邏輯位址 執行該預設運算產生的實體位址與第二實體位址,以及檢查是否存在與該實體位址一致的第二實體位址,當與該實體位址一致的第二實體位址存在時,該第二記憶體系統複查被連接至對應的第二實體位址的邏輯位址是否與被應用的邏輯位址一致,以及當該邏輯位址與被應用的邏輯位址一致時,該第二記憶體系統使用對應的第二實體位址從該第二非揮發性記憶體裝置執行該讀取操作。
  14. 如請求項11所述的資料處理系統,其中在複製指示資訊被連接至該等第二實體位址的狀態下,該第二表儲存該複製指示資訊,該複製指示資訊指示被連接至各該第二實體位址的邏輯位址是否被複製。
  15. 如請求項14所述的資料處理系統,其中當對應於被應用的命令的預設操作為寫入操作時,該第二記憶體系統比較通過對被應用的邏輯位址上執行該預設運算產生的實體位址與該等第二實體位址,以及檢查是否存在與該實體位址一致的第二實體位址,當與該實體位址一致的第二實體位址存在時,該第二記憶體系統複查被連接至對應的第二實體位址的邏輯位址是否存在,當被連接至對應的第二實體位址的邏輯位址不存在時,該第二記憶體系統在該邏輯位址的值和該複製指示資訊的初始值被連接至對應的第二實體位址的狀態下將被應用的邏輯位址和該複製指示資訊儲存在該第二表中,以及當被連接至對應的第二實體位址的該邏輯位址存在時,該第二記憶體系統在該等第二實體位址中選擇沒有連接邏輯位址的任意一個第二實體位址、儲存被選擇的第二實體位址作為被連接至對應的第二實體位址的複製指示資訊以及在被應用的邏輯位址的值和該複製指示資訊的初始值被連接至被選擇 的第二實體位址的狀態下將被應用的邏輯位址和該複製指示資訊儲存在該第二表中。
  16. 如請求項15所述的資料處理系統,其中當對應於被應用的命令的預設操作為讀取操作時,該第二記憶體系統比較通過對被應用的邏輯位址執行該預設運算產生的實體位址與第二實體位址,以及檢查是否存在與該實體位址一致的第二實體位址,當與該實體位址一致的第二實體位址存在時,該第二記憶體系統複查被連接至對應的第二實體位址的複製指示資訊是否具有該初始值,當該複製指示資訊具有該初始值時,該第二記憶體系統複查被連接至對應的第二實體位址的邏輯位址是否與被應用的邏輯位址一致,以及只在被連接至對應的第二實體位址的邏輯位址與被應用的邏輯位址一致的情况下使用對應的第二實體位址從該第二非揮發性記憶體裝置執行該讀取操作,以及當該複製指示資訊不具有該初始值時,該第二記憶體系統在該等第二實體位址中選擇具有與被連接至對應的第二實體位址的複製資訊相同的值的第二實體位址、設置被選擇的第二實體位址為對應的第二實體位址以及重複複查操作直至被連接至對應的第二實體位址的複製指示資訊成為該初始值為止。
  17. 如請求項1所述的資料處理系統,其中該散列操作用於響應於其數量對應於該第一實體位址的數量和該第二實體位址的數量之和的被應用的邏輯位址的值在該等第一實體位址和該等第二實體位址中選擇和產生任意一個實體位址。
  18. 如請求項1所述的資料處理系統,其中該二元搜尋操作用於響應於其數量對應於該第一實體位址的數量和該第二實體位址的數量之和的被應 用的邏輯位址的值在該等第一實體位址和該等第二實體位址中選擇和產生任意一個實體位址。
TW105105974A 2015-10-05 2016-02-26 資料處理系統 TWI716381B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2015-0139452 2015-10-05
KR1020150139452A KR20170040466A (ko) 2015-10-05 2015-10-05 데이터 처리 시스템

Publications (2)

Publication Number Publication Date
TW201714093A TW201714093A (zh) 2017-04-16
TWI716381B true TWI716381B (zh) 2021-01-21

Family

ID=58446752

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105105974A TWI716381B (zh) 2015-10-05 2016-02-26 資料處理系統

Country Status (4)

Country Link
US (1) US9977625B2 (zh)
KR (1) KR20170040466A (zh)
CN (1) CN106560781B (zh)
TW (1) TWI716381B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI639918B (zh) * 2017-05-11 2018-11-01 慧榮科技股份有限公司 資料儲存裝置以及其操作方法
EP3445017B1 (en) * 2017-08-16 2019-10-09 Veoneer Sweden AB A method relating to a motor vehicle driver assistance system
KR102642430B1 (ko) * 2018-05-04 2024-03-04 에스케이하이닉스 주식회사 데이터 처리 시스템 및 그 구동방법
KR102653837B1 (ko) * 2018-07-27 2024-04-02 에스케이하이닉스 주식회사 메모리 모듈 및 데이터 처리 시스템
CN111435287B (zh) * 2019-01-14 2023-06-27 群联电子股份有限公司 存储器控制方法、存储器存储装置及存储器控制电路单元

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6934796B1 (en) * 2002-02-01 2005-08-23 Netlogic Microsystems, Inc. Content addressable memory with hashing function
US20110016261A1 (en) * 2009-07-17 2011-01-20 Genesys Logic, Inc. Parallel processing architecture of flash memory and method thereof

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7610438B2 (en) 2000-01-06 2009-10-27 Super Talent Electronics, Inc. Flash-memory card for caching a hard disk drive with data-area toggling of pointers stored in a RAM lookup table
US9798470B2 (en) * 2015-01-23 2017-10-24 Toshiba Memory Corporation Memory system for storing and processing translation information
KR102398611B1 (ko) * 2015-05-07 2022-05-17 에스케이하이닉스 주식회사 메모리 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6934796B1 (en) * 2002-02-01 2005-08-23 Netlogic Microsystems, Inc. Content addressable memory with hashing function
US20110016261A1 (en) * 2009-07-17 2011-01-20 Genesys Logic, Inc. Parallel processing architecture of flash memory and method thereof

Also Published As

Publication number Publication date
KR20170040466A (ko) 2017-04-13
US9977625B2 (en) 2018-05-22
CN106560781A (zh) 2017-04-12
TW201714093A (zh) 2017-04-16
US20170097794A1 (en) 2017-04-06
CN106560781B (zh) 2020-06-05

Similar Documents

Publication Publication Date Title
CN105739914B (zh) 数据处理系统及其操作方法
US9940063B2 (en) Memory system and operating method thereof
KR20170056765A (ko) 메모리 시스템 및 메모리 시스템의 동작 방법
TWI686814B (zh) 記憶體系統和記憶體系統的操作方法
TWI648626B (zh) 記憶體系統及其操作方法
US10534703B2 (en) Memory system and operation method thereof
CN106802770B (zh) 存储器系统及其操作方法
KR20170050953A (ko) 메모리 시스템 및 그의 동작방법
TWI693607B (zh) 記憶體系統及記憶體系統的操作方法
TWI716381B (zh) 資料處理系統
TWI720985B (zh) 記憶體系統及其操作方法
KR20170056767A (ko) 메모리 시스템 및 메모리 시스템의 동작 방법
CN110390984B (zh) 存储器系统和存储器系统的操作方法
KR20170078315A (ko) 메모리 시스템 및 메모리 시스템의 동작방법
CN106126437B (zh) 存储系统
US20170060470A1 (en) Memory system and operating method thereof
US20170115914A1 (en) Memory system and operating method thereof
US20170060923A1 (en) Data processing system
KR20170014496A (ko) 메모리 시스템 및 그의 동작방법
KR20170008339A (ko) 메모리 시스템 및 메모리 시스템의 동작 방법
KR20170073944A (ko) 데이터 처리 시스템 및 데이터 처리 시스템의 동작방법
KR20160148940A (ko) 메모리 시스템 및 그의 동작방법
CN107025177B (zh) 存储器系统及其操作方法
CN107315537B (zh) 存储器系统及其操作方法
KR20170007958A (ko) 메모리 시스템