TW201633138A - 記憶體系統及其操作方法 - Google Patents
記憶體系統及其操作方法 Download PDFInfo
- Publication number
- TW201633138A TW201633138A TW104120204A TW104120204A TW201633138A TW 201633138 A TW201633138 A TW 201633138A TW 104120204 A TW104120204 A TW 104120204A TW 104120204 A TW104120204 A TW 104120204A TW 201633138 A TW201633138 A TW 201633138A
- Authority
- TW
- Taiwan
- Prior art keywords
- reset
- instructions
- instruction
- memory
- memory device
- Prior art date
Links
- 230000015654 memory Effects 0.000 title claims abstract description 251
- 238000000034 method Methods 0.000 title claims description 27
- 230000007717 exclusion Effects 0.000 claims description 17
- 230000004044 response Effects 0.000 abstract description 13
- 239000004020 conductor Substances 0.000 description 77
- 239000010410 layer Substances 0.000 description 75
- 239000003989 dielectric material Substances 0.000 description 33
- 239000000758 substrate Substances 0.000 description 31
- 239000000463 material Substances 0.000 description 29
- 238000010586 diagram Methods 0.000 description 15
- 239000002019 doping agent Substances 0.000 description 13
- 238000012545 processing Methods 0.000 description 13
- 238000007726 management method Methods 0.000 description 11
- 239000002344 surface layer Substances 0.000 description 10
- 239000000872 buffer Substances 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 229910052732 germanium Inorganic materials 0.000 description 9
- GNPVGFCGXDBREM-UHFFFAOYSA-N germanium atom Chemical compound [Ge] GNPVGFCGXDBREM-UHFFFAOYSA-N 0.000 description 9
- 238000012937 correction Methods 0.000 description 8
- 238000013461 design Methods 0.000 description 7
- 101100049574 Human herpesvirus 6A (strain Uganda-1102) U5 gene Proteins 0.000 description 6
- 239000004065 semiconductor Substances 0.000 description 6
- 101150064834 ssl1 gene Proteins 0.000 description 6
- 238000013500 data storage Methods 0.000 description 5
- 101150062870 ssl3 gene Proteins 0.000 description 5
- 101000641216 Aquareovirus G (isolate American grass carp/USA/PB01-155/-) Non-structural protein 4 Proteins 0.000 description 4
- 102100031885 General transcription and DNA repair factor IIH helicase subunit XPB Human genes 0.000 description 4
- 101000920748 Homo sapiens General transcription and DNA repair factor IIH helicase subunit XPB Proteins 0.000 description 4
- 101710092886 Integrator complex subunit 3 Proteins 0.000 description 3
- 102100025254 Neurogenic locus notch homolog protein 4 Human genes 0.000 description 3
- 101150101057 PBA1 gene Proteins 0.000 description 3
- 101100520663 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) ADD66 gene Proteins 0.000 description 3
- 238000009413 insulation Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 229910052715 tantalum Inorganic materials 0.000 description 3
- GUVRBAGPIYLISA-UHFFFAOYSA-N tantalum atom Chemical compound [Ta] GUVRBAGPIYLISA-UHFFFAOYSA-N 0.000 description 3
- 230000005641 tunneling Effects 0.000 description 3
- IJGRMHOSHXDMSA-UHFFFAOYSA-N Atomic nitrogen Chemical compound N#N IJGRMHOSHXDMSA-UHFFFAOYSA-N 0.000 description 2
- 101000927946 Homo sapiens LisH domain-containing protein ARMC9 Proteins 0.000 description 2
- 102100024061 Integrator complex subunit 1 Human genes 0.000 description 2
- 101710092857 Integrator complex subunit 1 Proteins 0.000 description 2
- 101710092887 Integrator complex subunit 4 Proteins 0.000 description 2
- XEEYBQQBJWHFJM-UHFFFAOYSA-N Iron Chemical compound [Fe] XEEYBQQBJWHFJM-UHFFFAOYSA-N 0.000 description 2
- 102100036882 LisH domain-containing protein ARMC9 Human genes 0.000 description 2
- 102100037075 Proto-oncogene Wnt-3 Human genes 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 229910000449 hafnium oxide Inorganic materials 0.000 description 2
- WIHZLLGSGQNAGK-UHFFFAOYSA-N hafnium(4+);oxygen(2-) Chemical compound [O-2].[O-2].[Hf+4] WIHZLLGSGQNAGK-UHFFFAOYSA-N 0.000 description 2
- 239000007769 metal material Substances 0.000 description 2
- MWUXSHHQAYIFBG-UHFFFAOYSA-N nitrogen oxide Inorganic materials O=[N] MWUXSHHQAYIFBG-UHFFFAOYSA-N 0.000 description 2
- TWNQGVIAIRXVLR-UHFFFAOYSA-N oxo(oxoalumanyloxy)alumane Chemical compound O=[Al]O[Al]=O TWNQGVIAIRXVLR-UHFFFAOYSA-N 0.000 description 2
- RVTZCBVAJQQJTK-UHFFFAOYSA-N oxygen(2-);zirconium(4+) Chemical compound [O-2].[O-2].[Zr+4] RVTZCBVAJQQJTK-UHFFFAOYSA-N 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 229910021420 polycrystalline silicon Inorganic materials 0.000 description 2
- 229920005591 polysilicon Polymers 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 229910001928 zirconium oxide Inorganic materials 0.000 description 2
- 101100321938 Arabidopsis thaliana AAPT2 gene Proteins 0.000 description 1
- 101100078997 Arabidopsis thaliana MWL1 gene Proteins 0.000 description 1
- 101100078998 Arabidopsis thaliana MWL2 gene Proteins 0.000 description 1
- 102100028043 Fibroblast growth factor 3 Human genes 0.000 description 1
- 101000949825 Homo sapiens Meiotic recombination protein DMC1/LIM15 homolog Proteins 0.000 description 1
- 101001046894 Homo sapiens Protein HID1 Proteins 0.000 description 1
- 101000934888 Homo sapiens Succinate dehydrogenase cytochrome b560 subunit, mitochondrial Proteins 0.000 description 1
- 108050002021 Integrator complex subunit 2 Proteins 0.000 description 1
- 101150013204 MPS2 gene Proteins 0.000 description 1
- 102100022877 Protein HID1 Human genes 0.000 description 1
- 102100025393 Succinate dehydrogenase cytochrome b560 subunit, mitochondrial Human genes 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000002542 deteriorative effect Effects 0.000 description 1
- 101150013423 dsl-1 gene Proteins 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 239000011810 insulating material Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 229910052742 iron Inorganic materials 0.000 description 1
- 229910052751 metal Inorganic materials 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 229960003753 nitric oxide Drugs 0.000 description 1
- 229910052757 nitrogen Inorganic materials 0.000 description 1
- 230000000149 penetrating effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/32—Timing circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/18—Handling requests for interconnection or transfer for access to memory bus based on priority control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
- G06F9/3816—Instruction alignment, e.g. cache line crossing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/20—Initialising; Data preset; Chip identification
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1078—Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
- G11C7/109—Control signal input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/20—Memory cell initialisation circuits, e.g. when powering up or down, memory clear, latent image memory
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
- Human Computer Interaction (AREA)
Abstract
本發明揭示一種記憶體系統,其包含:一指令儲存單元,用來儲存從一主機接收的最多N個指令;K個記憶體裝置,每一者都用於基於該等最多N個指令來儲存最多M個指令並執行每一組操作,以在輸入順序中回應所儲存的該等最多M個指令;以及一重設單元,用於只要從該主機接收的該等指令被儲存在該指令儲存單元內,就基於有關在各該K個記憶體裝置中各該最多N個指令與各該最多M個指令的執行資訊,重設該等最多N個指令的執行順序,並將該等N個指令分配至該等K個記憶體裝置,該執行資訊包含一邏輯位址、一實體位址、一長度以及一對應指令的使用時間。
Description
本發明的示範具體實施例係關於半導體設計技術,尤其係關於其中重新安排並使用依序從一主機接收的指令執行順序之記憶體系統。
本發明主張的優先權為在2015年3月6日向韓國智慧財產局提出申請的申請案,其韓國申請案號為10-2015-0031639,在此併入其全部參考內容。
電腦環境範例已經轉移至可隨時隨地使用的普及計算系統,由於此因素,像是行動電話、數位相機以及筆記型電腦這些可攜式電子裝置的使用率迅速提高。這些可攜式電子裝置一般使用具備記憶體裝置的記憶體系統(也就是資料儲存裝置)。該資料儲存裝置用來作為該等可攜式電子裝置的主記憶體裝置或輔助記憶體裝置。
因為使用記憶體裝置的資料儲存裝置並無移動零件,因此提供優異的穩定性、耐用度、高資訊存取速度以及低耗電量。具備這些優點的資料儲存裝置之範例包含通用序列匯流排(USB,universal serial bus)記憶體裝置、具備許多介面的記憶卡以及固態硬碟(SSD,solid state drives)。
許多具體實施例係指向一種利用率能最大化的記憶體系統,利用檢查從一主機依序接收的各該指令上之執行情況,然後重新安排該等指令的
執行順序。
在一個具體實施例內,一記憶體系統可包含:一指令儲存單元,適合用來儲存從一主機接收的最多N個指令;K個記憶體裝置,每一者都適合基於該等最多N個指令來儲存最多M個指令並執行每一組操作,以輸入順序回應所儲存的最多M個指令;以及一重設單元,適合用來只要從該主機接收的該等指令被儲存在該指令儲存單元內,就基於有關在各該K個記憶體裝置中各該最多N個指令與各該最多M個指令的執行資訊,重設該等最多N個指令的執行順序,並將該等N個指令分配至該等K個記憶體裝置,其中該執行資訊包含一邏輯位址、一實體位址、一長度以及一對應指令的使用時間。
當最近從該主機接收並儲存在該指令儲存單元內的該指令之長度大於一設定長度時,該重設單元可從執行順序為要重設的一目標當中排除該指令,設定排除的指令為一排除指令,並重設剩餘(N-1)個指令的執行順序。
在將所有該等剩餘(N-1)個指令分配至該等K個記憶體裝置之後,該重設單元可將該排除指令分配至該等K個記憶體裝置,並將接收自該主機的一指令分配在該排除指令之後。
該重設單元可包含:基於使用儲存在各該K個記憶體裝置內所有該等最多M個指令所需的時間,將該等K個記憶體裝置分類成具有一較高第一優先權的一第一重設記憶體裝置及具有一較低第一優先權的一第二重設記憶體裝置;以及將屬於該等最多N個指令且對應至該第一重設記憶體裝置的指令設定為第一重設指令,並且將屬於該等最多N個指令並且對應至該第二重設記憶體裝置的指令設定為第二重設指令。
該重設單元可包含:將需要相對短的時間來使用儲存在各該K
個記憶體裝置內所有該等最多M個指令之一或多個記憶體裝置設定為該第一重設記憶體裝置;以及將該第一重設記憶體裝置以外的剩餘記憶體裝置設定為該第二重設記憶體裝置。
該重設單元可包含:基於儲存在一或多個各該第一重設記憶體裝置內該等最多M個指令的該實體位址值與一或多個該等第一重設指令的該實體位址值間之關聯性,將一或多個該等第一重設指令分類成具有一較高第二優先權的一第三重設指令及具有一較低第二優先權的一第四重設指令;將該第三重設指令的一執行順序提升到該第四重設指令的一執行順序之前;以及將對應至該第三重設指令的該第一重設記憶體裝置設定為一第三重設記憶體裝置,並且將對應至該第四重設指令的該第一重設記憶體裝置設定為一第四重設記憶體裝置。
該重設單元可包含:基於儲存在一或多個各該第一重設記憶體裝置內該等M個指令的該等實體位址值,將對應至一或多個該等第一重設指令的該等實體位址值為連續且具有相同值的該第一重設指令設定為該第三重設指令;以及將對應至一或多個該等第一重設指令的該等實體位址值為不連續且不具有相同值的該第一重設指令設定為該第四重設指令。
該重設單元可包含:基於儲存在一或多個各該第四重設記憶體裝置內一些指令,將一或多個該等第四重設指令分類成具有一較高第三優先權的一第五重設指令及具有一較低第三優先權的一第六重設指令;以及將該第五重設指令的一執行順序提升到該第六重設指令的一執行順序之前。
該重設單元可包含:將屬於一或多個該等第四重設指令且其對應至其中已儲存相對少量指令的該第四重設記憶體裝置之第四重設指令設定為
該第五重設指令;以及將該第五重設指令以外之剩餘的第四重設指令設定為該第六重設指令。
當該重設單元將該等最多N個指令的二或多個指令分類成該等第六重設指令,則可以輸入順序決定二或多個該等第六重設指令的執行順序。
該重設單元可將屬於該等最多N個指令且具有連續邏輯位址值的二或多個指令組合成一群組,並同時對該群組施加該第一優先權至該第三優先權的控制。
該重設單元可控制包含在該群組內的二或多個該等指令之執行順序,使得具有一較前邏輯位址值的一指令被首先使用、具有一較後邏輯位址值的一指令被稍後使用,並且總是連續使用該等指令。
當接收自該主機的一指令被儲存在該指令儲存單元內且一設定指令數量或更多數量已經儲存在該指令儲存單元內時,則該重設單元可重設儲存在該指令儲存單元內該等最多N個指令之執行順序,並將該等最多N個指令分配至該等K個記憶體裝置。
在一個具體實施例內,一種記憶體系統之操作方法包含K個記憶體裝置,每一者都適合基於接收自一主機的最多N個指令來儲存最多M個指令並執行每一組操作,以輸入順序回應該等最多M個指令的一記憶體系統之操作方法,該操作方法可包含:將來自該主機的該等最多N個指令依序儲存在一集合儲存空間內;以及只要從該主機接收的該等指令被儲存在該指令儲存單元內,就根據有關儲存在該集合儲存空間內各該最多N個指令以及儲存在各該K個記憶體裝置內各該最多M個指令之執行資訊,重設儲存在該集合儲存空間內該等最多N個指令的執行順序,並將該等重設的N個指令分配至該等K個記憶
體裝置,其中該執行資訊包含一邏輯位址、一實體位址、一長度以及一對應指令的使用時間。
該等最多N個指令執行順序的重設以及該等重設的最多N個指令至該等K個記憶體裝置的分配可包含:當該最近儲存指令的長度大於一設定長度時,將最近從該主機接收並儲存在該集合儲存空間內的該指令設定為一排除指令;將儲存在該集合儲存空間內該排除指令之前的剩餘(N-1)個指令分配至該等K個記憶體裝置;將該排除指令分配至該等K個記憶體裝置;以及在該排除指令之後,將接收自該主機的該指令分配至該等K個記憶體裝置內。
該等最多N個指令執行順序的重設以及該等重設的最多N個指令至該等K個記憶體裝置的分配可包含:將使用儲存在各該K個記憶體裝置內所有該等最多M個指令所需時間相對短的一記憶體裝置設定為具有一較高第一優先權之一第一重設記憶體裝置,以及將除了該第一重設記憶體裝置以外剩餘記憶體裝置設定為具有一較低第一優先權之一第二重設記憶體裝置;以及將屬於儲存在該集合儲存空間內該等最多N個指令且對應至該第一重設記憶體裝置的該指令設定為一第一重設指令,並且將屬於儲存在該集合儲存空間內該等最多N個指令並且對應至該第二重設記憶體裝置的該指令設定為一第二重設指令。
該等最多N個指令之執行順序的重設以及該等重設的最多N個指令至該等K個記憶體裝置的分配可包含:根據儲存在一或多個各該第一重設記憶體裝置內該等M個指令的該實體位址值,將對應至當一或多個該等第一重設指令實體位址值為連續且具有相同值時的該第一重設指令設定為具有一較高第二優先權的一第三重設指令,並且將對應至當一或多個該等第一重設指令實
體位址值為不連續且不具有相同值時的該第一重設指令設定為具有一較低第二優先權的一第四重設指令;將該第三重設指令的一執行順序提升到該第四重設指令的一執行順序之前;以及將對應至該第三重設指令的該第一重設記憶體裝置設定為一第三重設記憶體裝置,並且將對應至該第四重設指令的該第一重設記憶體裝置設定為一第四重設記憶體裝置。
該等最多N個指令之執行順序的重設以及該等重設的最多N個指令至該等K個記憶體裝置的分配可包含:將屬於一或多個該等第四重設記憶體裝置且儲存具有儲存在一或多個各該第四重設記憶體裝置內相對少量指令的該指令之該第四重設指令,設定為具有一較高第三優先權之一第五重設指令,並且將除了該第五重設指令以外的剩餘第四重設指令設定為第六重設指令;以及將該第五重設指令的一執行順序提升到該第六重設指令的一執行順序之前。
該等最多N個指令的該執行順序重設以及該重設的最多N個指令至該等K個記憶體裝置分配,當儲存在該集合儲存空間內的該等最多N個指令之一或多者被分類成該等第六重設指令時,可以輸入順序決定二或多個該等第六重設指令的執行順序。
屬於儲存在該集合儲存空間內該等最多N個指令,且其具有連續邏輯位址值的二或多個指令組合成一群組,並且該第一優先權至該第三優先權的控制同時施加於該群組。
100‧‧‧資料處理系統
10‧‧‧記憶體裝置
20‧‧‧記憶體裝置
30‧‧‧記憶體裝置
40‧‧‧記憶體裝置
50‧‧‧指令儲存單元
60‧‧‧重設單元
102‧‧‧主機
110‧‧‧記憶體系統
130‧‧‧控制器
132‧‧‧主機介面單元
134‧‧‧處理器
138‧‧‧錯誤校正碼單元
140‧‧‧電源管理單元
142‧‧‧NAND快閃控制器
144‧‧‧記憶體
150‧‧‧記憶體裝置
152‧‧‧記憶體區塊
154‧‧‧記憶體區塊
156‧‧‧記憶體區塊
210‧‧‧第零區塊
220‧‧‧第一區塊
230‧‧‧第二區塊
240‧‧‧第N-1區塊
300‧‧‧記憶體裝置
310‧‧‧電壓供應區塊
320‧‧‧讀/寫電路
322‧‧‧分頁緩衝區
324‧‧‧分頁緩衝區
326‧‧‧分頁緩衝區
330‧‧‧記憶體區塊
340‧‧‧胞串
5111‧‧‧基板
5112‧‧‧介電材料
5113‧‧‧柱
5114‧‧‧表面層
5115‧‧‧內層
5116‧‧‧介電層
5117‧‧‧第一子絕緣層
5118‧‧‧第二子絕緣層
5119‧‧‧第三子絕緣層
5211-5291‧‧‧導電材料
5212-5292‧‧‧導電材料
5213-5293‧‧‧導電材料
5233‧‧‧控制閘
5311-5314‧‧‧摻雜區
5320‧‧‧汲極
5331-5333‧‧‧導電材料
6311‧‧‧基板
6312‧‧‧摻雜材料層
6321‧‧‧第一導電材料層
6322‧‧‧第二導電材料層
6323‧‧‧第三導電材料層
6324‧‧‧第四導電材料層
6325‧‧‧第五導電材料層
6326‧‧‧第六導電材料層
6327‧‧‧第七導電材料層
6328‧‧‧第八導電材料層
6340‧‧‧汲極
6351‧‧‧第一上方導電材料層
6352‧‧‧第二上方導電材料層
6361‧‧‧內部材料層
6362‧‧‧中間層
6363‧‧‧表面層
BL‧‧‧位元線
BL1‧‧‧第一位元線
BL2‧‧‧第二位元線
BL3‧‧‧第三位元線
BLK0~BLKN-1‧‧‧記憶體區塊
BUF_CMD<1:8>‧‧‧第一指令至第八指令
CMD_INFO‧‧‧執行資訊
CSL‧‧‧共用源極線
DWL‧‧‧虛擬字元線
GSL‧‧‧接地選擇線
HOST‧‧‧主機
INT‧‧‧資訊
LBA‧‧‧邏輯位址
MM_CMD4<1:4>‧‧‧第一指令至第四指令
MM_INFO‧‧‧執行資訊
NS‧‧‧NAND串
OUT_CMD‧‧‧指令
OUT_ORDER‧‧‧執行順序
OT‧‧‧使用時間
PBA‧‧‧實體位址
SSL‧‧‧串選擇線
SSL1‧‧‧第一串選擇線
SSL2‧‧‧第二串選擇線
SSL3‧‧‧第三串選擇線
WL‧‧‧字元線
〔圖1〕為例示根據一個具體實施例的一記憶體系統內含之一資料處理系統之圖式。
〔圖2〕為例示圖1內所示該記憶體系統內一記憶體裝置之圖式。
〔圖3〕為例示根據一個具體實施例的一記憶體裝置內一記憶體區塊之電路圖。
〔圖4〕至〔圖11〕為示意性例示圖2內所示該記憶體裝置的圖式。
〔圖12〕為例示根據本發明一個具體實施例的一記憶體系統之方塊圖。
〔圖13〕為解釋依照本發明一個具體實施例的圖12內該記憶體系統之操作方法之流程圖。
〔圖14A〕至〔圖14D〕為例示依照本發明一個具體實施例的圖12內該記憶體系統資料處理操作之方塊圖。
底下將參照附圖來更詳細說明各種具體實施例。不過,本發明可以有不同形式的修改,並且不應受限於此處所揭之具體實施例。而是,提供這些具體實施例,如此使得本說明書將會更周密及更完全,並且將本發明之範疇完整傳達給本發明所屬技術領域之具有通常知識者。通篇說明書中,在本發明的各個圖式與具體實施例內之相同的元件符號代表相同的部件。
圖1為示意性例示根據一個具體實施例的一記憶體系統內含之一資料處理系統之圖式。
請參閱圖1,一資料處理系統100包含一主機102以及一記憶體系統110。
主機102可例如包含一可攜式電子裝置(例如行動電話、MP3播放器、及筆記型電腦)或一電子裝置(例如桌上型電腦、遊戲主機、TV、及投影機)。
記憶體系統110操作以回應來自主機102的請求,尤其是,儲存要由主機102存取的資料。換言之,記憶體系統110可用來作為主機102的主要記憶體裝置或輔助記憶體裝置。記憶體系統110可依照要與主機102電耦接的主機介面協定而用各種儲存裝置之任一者來實施。例如,記憶體系統110可用各種儲存裝置(例如固態硬碟、多媒體卡(MMC,multimedia card)、嵌入式多媒體卡(eMMC,embedded MMC)、小型多媒體卡(RS-MMC,reduced size MMC)、微型多媒體卡(micro-MMC)、安全數位(SD,secure digital)卡、迷你安全數位(mini-SD)卡、微型安全數位(micro-SD)卡、通用序列匯流排(USB,universal storage bus)儲存裝置、通用快閃儲存(UFS,universal flash storage)裝置、小型快閃(CF,compact flash)卡、智慧媒體(SM,smart media)卡(SMC)、記憶棒等等)之任一者來實施。
記憶體系統110可用揮發性記憶體裝置(例如動態隨機存取記憶體(DRAM)和靜態隨機存取記憶體(SRAM))或非揮發性記憶體裝置(例如唯讀記憶體(ROM)、遮罩唯讀記憶體(MROM)、可程式化唯讀記憶體(PROM)、可抹除可程式化唯讀記憶體(EPROM)、電子可抹除可程式化唯讀記憶體(EEPROM)、鐵電式隨機存取記憶體(FRAM)、相變式隨機存取記憶體(PRAM)、磁阻式隨機存取記憶體(MRAM)以及電阻式隨機存取記憶體(RRAM))來實施。
記憶體系統110包含一記憶體裝置150,儲存要由主機102存取的資料,以及一控制器130,控制記憶體裝置150內資料的儲存。
控制器130和記憶體裝置150可整合成一個半導體裝置。例如,控制器130和記憶體裝置150可整合為一個半導體裝置,並配置成固態硬碟(SSD,solid-state drive)。當使用記憶體系統110做為SSD時,可顯著提高與記憶體系
統110電耦接的主機102之操作速度。
控制器130和記憶體裝置150可整合為一個半導體裝置,並設置一記憶卡。例如,控制器130和記憶體裝置150可整合成一個半導體裝置且設置一記憶卡(例如個人電腦記憶卡國際協會(PCMCIA)卡、小型快閃(CF)卡、智慧媒體(SM)卡(SMC)、記憶棒、多媒體卡(MMC)、小型多媒體卡(RS-MMC)、微型多媒體卡(micro-MMC)、安全數位(SD)卡、mini-SD、micro-SD、高容量安全數位(SDHC)卡以及通用快閃儲存(UFS)卡)。
於另一實施例中,記憶體系統110可配置成電腦、掌上型電腦(UMPC,ultra mobile PC)、工作站(workstation)、上網本(net-book)、個人數位助理(PDA,personal digital assistant)、可攜式電腦(portable computer)、網路平板電腦(web tablet)、平板電腦(tablet computer)、無線電話(wireless phone)、行動電話(mobile phone)、智慧型手機(smart phone)、電子書閱讀器(e-book)、可攜式多媒體播放器(PMP,portable multimedia player)、可攜式遊戲裝置(portable game player)、導航裝置(navigation device)、黑盒子(black box)、數位相機(digital camera)、數位多媒體廣播(DMB,digital multimedia broadcasting)播放器、3D電視、智慧型電視(smart television)、數位音頻記錄器(digital audio recorder)、數位音頻播放器(a digital audio player)、數位圖像記錄器(digital picture recorder)、數位圖像播放器digital picture player、數位影音記錄器(digital video recorder)、數位影音播放器(digital video player)、配置數據中心的儲存裝置、能在無線環境中收發資訊的裝置、配置家用網路的各種電子裝置之其一者、配置電腦網路的各種電子裝置之其一者、配置遠程通信網路的各種電子裝置之其一者、RFID裝置、或配置電腦系統的各種組件元件之其一者。
記憶體系統110的記憶體裝置150可在電源供應中斷時保留儲存的資料,尤其是,在寫入操作期間儲存由主機102提供的該資料,並在讀取操作期間將儲存的資料提供給主機102。記憶體裝置150可包含複數個記憶體區塊152、154和156。各該記憶體區塊152、154和156都包含複數個分頁,各該分頁都包含複數個記憶胞,分別與複數個字元線(WL,word line)電耦接。記憶體裝置150可為非揮發性記憶體裝置,例如快閃記憶體。該快閃記憶體可具有3D堆疊結構,因為稍後將參閱圖2至圖11來詳細說明記憶體裝置150的結構以及記憶體裝置150的3D堆疊結構,所以在此省略其詳細說明。
記憶體系統110的控制器130控制記憶體裝置150,以回應來自主機102的請求。例如,控制器130將從記憶體裝置150讀取的資料提供給主機102,並且將主機102提供的資料儲存至記憶體裝置150內。為此,控制器130控制記憶體裝置150的整體操作(例如讀取操作、寫入操作、編程操作以及抹除操作)。
詳細來說,控制器130包含一主機介面單元132、一處理器134、一錯誤校正碼(ECC,error correction code)單元138、一電源管理單元140、一反及(NAND)快閃控制器142以及一記憶體144。
主機介面單元132處理主機102提供的指令與資料,並可配置成透過各種介面協定(例如通用序列匯流排(USB,universal serial bus)、多媒體卡(MMC,multi-media card)、高速週邊組件互連(PCI-E,peripheral component interconnect express)、序列附加SCSI(SAS)、序列先進技術附件(SATA,serial advanced technology attachment)、平行先進技術附件(PATA,parallel advanced technology attachment)、小型電腦系統介面(SCSI,small computer system
interface)、先進小型磁碟介面(ESDI,enhanced small disk interface)以及整合磁碟電子裝置(IDE,integrated drive electronics))之至少一者與主機102通訊。
ECC單元138偵測並校正在該讀取操作期間從記憶體裝置150讀取的資料內含之錯誤。也就是,在已經從記憶體裝置150讀取的該資料上執行一錯誤校正解碼操作之後,ECC單元138可判定該錯誤校正解碼操作是否成功、根據該判定結果輸出一指示訊號,以及根據一ECC解碼處理所產生的一同位位元(parity bit)來校正該讀取資料的錯誤位元。若錯誤位元之數量等於或大於可校正錯誤位元的臨界數量,則ECC單元138不會校正錯誤位元,並且若無法校正該等錯誤位元,可輸出一錯誤校正失敗訊號。
ECC單元138可根據一編碼調變(例如低密度同位元檢查(LDPC,low-density parity-check)碼、博斯-喬赫里-霍克文黑姆(BCH,Bose-Chaudhuri-Hocquenghem)碼、turbo碼、里德-所羅門(RS,Reed-Solomon)碼、一卷積碼、遞歸系統碼(RSC,Recursive Systematic Code)、一網格編碼調變(TCM,Trellis-Coded Modulation)、一區塊編碼調變(BCM,Block Coded Modulation)等等)來執行一校正錯誤操作。ECC單元138可包含用於錯誤校正操作的所有電路、系統或裝置。
PMU 140提供並管理控制器130的電源,也就是控制器130內含組件元件的電源。
NFC 142作為控制器130與記憶體裝置150之間的記憶體介面,讓控制器130控制記憶體裝置150以回應來自主機102的請求。當記憶體裝置150為一快閃記憶體時,尤其是,當記憶體裝置150為NAND快閃記憶體時,NFC 142產生控制訊號給記憶體裝置150並在處理器134的控制之下處理資料。
記憶體144作為記憶體系統110和控制器130的一工作記憶體,並且儲存用於驅動記憶體系統110與控制器130的資料。詳細來說,當控制器130控制記憶體裝置150以回應來自主機102的一請求時(例如當控制器130將從記憶體裝置150讀取的該資料提供給主機102且將從主機102提供的該資料儲存在記憶體裝置150內時,並且為上述目的當控制器130控制記憶體裝置150的操作(例如讀取操作、寫入操作、編程操作和抹除操作)時),記憶體144儲存讓藉由記憶體系統110(也就是在控制器130與記憶體裝置150之間)執行之這類操作所需的資料。
記憶體144可用揮發性記憶體來實施。例如,記憶體144可用靜態隨機存取記憶體(SRAM)或動態隨機存取記憶體(DRAM)來實施。如上所述,記憶體144儲存在主機102與記憶體裝置150之間執行該讀取操作與寫入操作所需的資料。為了儲存該資料,記憶體144包含一程式記憶體、一資料記憶體、一寫入緩衝區、一讀取緩衝區、一映射緩衝區等等。
處理器134控制記憶體系統110的一般操作,並且控制用於記憶體裝置150的一寫入操作或一讀取操作,以回應來自主機102的一寫入請求或一讀取請求。處理器134驅動被稱之為快閃轉譯層(FTL,flash translation layer)的韌體,來控制記憶體系統110的一般操作。處理器134可用一微處理器或一中央處理單元(CPU,central processing unit)來實現。
用於執行記憶體裝置150的不良管理(例如不良區塊管理)之管理單元(圖未示)包含於處理器134內。該管理單元檢查包含在記憶體裝置150內該等記憶體區塊之間的一不良區塊,並執行該不良區塊管理來將已檢查的不良區塊處理為不良。若記憶體裝置150為一快閃記憶體(例如一NAND快閃記憶
體),則在該寫入操作期間(例如在該程式操作期間)由於一NAND邏輯函數的特性,可能會發生程式錯誤。該不良管理,也就是用於處理其中已經發生程式錯誤(也就是不良)之記憶體區塊所提及的不良區塊管理,並且,該不良管理將已經編程失敗的資料寫入(亦即編程)至新的記憶體區塊內。另外,當記憶體裝置150具有一3D堆疊結構時,因為記憶體裝置150的利用效率以及記憶體系統100的可靠度會在將對應的記憶體區塊處理為不良區塊時因為編程失敗而顯著惡化,所以需要可靠的不良區塊管理。此後,將參照圖2至圖11詳細說明根據具體實施例的該記憶體系統內之記憶體裝置。
圖2為示意性例示圖1內根據一個具體實施例的記憶體系統110內記憶體裝置150之圖式。
請參閱圖2,記憶體裝置150包含複數個記憶體區塊,例如一第零區塊(BLOCK0)210、一第一區塊(BLOCK1)220、一第二區塊(BLOCK2)230以及第N-1區塊(BLOCKN-1)240。各該區塊210、220、230和240都包含複數個分頁,例如2M個分頁(2MPAGES)。雖然為了方便起見,說明各該記憶體區塊都包含2M個分頁,應注意者,各該記憶體區塊都可包含M個分頁。各該分頁都包含複數個記憶胞,分別與複數個字元線(WL,word line)電耦接。
另外,記憶體裝置150可包含複數個記憶體區塊,根據每個記憶胞內可儲存或表示的位元數,為單階儲存單元(SLC,single level cell)記憶體區塊以及多階儲存單元(MLC,multi-level cell)記憶體區塊。該SLC記憶體區塊包含用每個都可儲存1個位元資料的記憶胞來實施的複數個分頁,並且可具有
高資料計算效能以及優異的耐用度。該MLC記憶體區塊包含用每個都可儲存多個位元資料(例如二個或多個位元資料)的記憶胞來實施的複數
個分頁,並且可具有比該SLC記憶體區塊更大的資料儲存空間(也就是可具有較高的整合度)。包含用每個都可儲存3個位元資料的記憶胞來實施的複數個分頁的一MLC記憶體區塊,可定義為三階儲存單元(TLC,triple level cell)記憶體區塊。
各該記憶體區塊210、220、230和240都可在一寫入操作期間儲存圖1之主機102所提供的該資料,以及在一寫入操作期間將所儲存的資料提供給主機102。
圖3為示意性例示圖2內根據一個具體實施例的該記憶體裝置內一記憶體區塊之電路圖。
請參閱圖3,記憶體裝置300的記憶體區塊330可包含分別電耦接至位元線BL0至BLm-1的複數個胞串340。每一行(column)的胞串340都可包含至少一個汲極選擇電晶體DST以及至少一個源極選擇電晶體SST。複數個記憶胞或記憶胞電晶體MC0至MCn-1可在該等選擇電晶體DST與SST之間電耦接。每一記憶胞MC0至MCn-1都可由在每個都儲存多個位元資料資訊的一多階儲存單元(MLC)所形成。胞串340可分別電耦接至該等對應位元線BLO至BLm-1。
雖然圖3顯示記憶體區塊330用NAND快閃記憶胞配置成範例,應注意者,依照具體實施例的記憶體裝置300之記憶體區塊330並不受限於一NAND快閃記憶體,而可用一NOR快閃記憶體、其中至少有兩種記憶胞組合的複合式快閃記憶體、或其中記憶體晶片內建控制器的一單一NAND快閃記憶體來實現。一半導體裝置的操作特性不僅適用於一快閃記憶體裝置,其中一電荷儲存層由一導電浮動閘所設置,而且也適用於一電荷捕捉快閃(CTF,
charge trap flash),其中一電荷儲存層由一介電層所設置。
記憶體裝置300的電壓供應區塊310可根據一操作模式,將字元線電壓(例如一編程電壓、一讀取電壓以及一通過電壓)供應給個別字元線,並且可提供電壓給成批(bulk),例如其中形成該等記憶胞的井區域。電壓供應區塊310可在一控制電路(圖未示)的控制之下執行一電壓產生操作,電壓供應區塊310可產生複數個可變讀取電壓來產生複數個讀取資料、在該控制電路的控制之下選擇該等記憶體區塊或記憶胞陣列之扇區之其一者、選擇該已選取記憶體區塊的該等字元線之其一者,以及提供該等字元線電壓給該已選取字元線和未選取的字元線。
記憶體裝置300的讀/寫電路320受到該控制電路的控制,並且可根據一操作模式作為一感應放大器或一寫入驅動器。例如,在一確認/正常讀取操作期間,讀/寫電路320可作為一感應放大器,用於讀取來自該記憶胞陣列的資料。另外在一編程操作期間,讀/寫電路320可作為一寫入驅動器,用於根據要儲存在該記憶胞陣列內的資料來驅動位元線。讀/寫電路320可在該編程操作期間,從一緩衝區(圖未示)接收要寫入該記憶胞陣列的資料,並且可根據該輸入資料來驅動該等位元線。為此,讀/寫電路320可包含分別對應至行(或位元線)或行配對(或位元線配對)的複數個分頁緩衝區322、324和326,並且每一分頁緩衝區322、324和326內可包含複數個鎖存器(圖未示)。
此後當記憶體裝置150用三維(3D)非揮發性記憶體裝置實施時,將參閱圖4至圖11,詳細描述依照具體實施例的該記憶體系統110內之記憶體裝置150。
圖4為例示圖2內所示依照一個具體實施例的記憶體裝置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的特定記憶體區塊之透視圖。圖6為沿著圖5內所示該記憶體區塊BLKi的I-I’線之剖面圖。
請參閱圖5和圖6,記憶體裝置150的該等複數個記憶體區塊之間該特定記憶體區塊BLKi可包含往該第一方向至第三方向延伸的結構。
一基板5111可被提供。例如,基板5111可包含摻雜一第一型摻雜物的矽材料。例如,基板5111可包含摻雜p型摻雜物的一矽材料或一p型井(例如一口袋p型井),並且包含圍繞該p型井的一n型井。雖然為了簡化檢視,在具體實施例內已經解釋基板5111為p型矽,應注意者,基板5111並不受限於p型矽。
在基板5111之上可提供沿著該第一方向延伸的複數個摻雜區5311、5312、5313和5314。例如,該等複數個摻雜區5311、5312、5313和5314可為與基板5111不同的第二型(亦即摻雜第二型摻雜物)。例如,該等複數個摻雜區5311、5312、5313和5314可摻雜n型摻雜物。雖然為了方便起見,在具體實施例內已經解釋第一摻雜區至第四摻雜區5311、5312、5313和5314為n型,應注意者,第一摻雜區至第四摻雜區5311、5312、5313和5314並不受限於n型。
在基板5111之上第一摻雜區5311與第二摻雜區5312之間的區域內,可在該第二方向內依序提供往該第一方向延伸的複數個介電材料5112。例如,複數個介電材料5112與基板5111在該第二方向上相隔一預定距離。例如,複數個介電材料5112彼此可在該第二方向上相隔一預定距離。例如,介電材料5112可包含例如氧化矽的一介電材料。
在基板5111之上第一摻雜區5311與第二摻雜區5312之間的區域內,可提供依序放置於該第一方向上並且通過該第二方向上的介電材料5112之複數個柱5113。例如,複數個柱5113可通過介電材料5112,並且可與基板5111電耦接。例如,每一柱5113都可由複數個材料設置。例如,每一柱5113的一表面層5114都可包含摻雜第一型(亦即摻雜第一型摻雜物)的一矽材料。例如,每一柱5113的表面層5114都可包含摻雜與基板5111相同型摻雜物之一矽材料。雖然為了方便起見,在具體實施例內已經解釋每一柱5113的表面層5114為p型矽,應注意者,柱5113的表面層5114並不受限於p型矽。
每一柱5113的一內層5115都可由介電材料形成,例如,每一柱5113的內層5115都可填入例如氧化矽的介電材料。
在該第一摻雜區5311與第二摻雜區5312之間的區域內,沿著介電材料5112、柱5113以及基板5111的露出表面,可提供一介電層5116。例如,介電層5116的厚度可小於介電材料5112之間距離的一半。換言之,在(i)介電材料5112的一第一介電材料底部表面之上提供的介電層5116與(ii)介電材料5112的一第二介電材料頂端表面之上提供的介電層5116之間,可提供其中放置不同於介電材料5112與介電層5116之材料的一區域。介電材料5112位於該第一介電材料底下。
在第一摻雜區5311和第二摻雜區5312之間的區域內,可在介
電層5116的該露出表面之上提供導電材料5211、5221、5231、5241、5251、5261、5271、5281和5291。例如,在基板5111與和基板5111相鄰的介電材料5112之間,可提供沿著該第一方向延伸的導電材料5211。尤其是,在(i)基板5111之上放置的介電層5116與(ii)和基板5111相鄰的介電材料5112底部表面之上放置的介電層5116之間,可提供沿著該第一方向延伸的導電材料5211。
在(i)介電材料5112的一特定介電材料頂端表面之上放置的介電層5116與(ii)介電材料5112的另一介電材料(放置在該特定介電材料5112之上)的底部表面之上放置之介電層5116之間,可提供沿著該第一方向延伸的導電材料。例如,在絕緣材料5112之間可提供沿著該第一方向延伸的複數個導電材料5221、5231、5241、5251、5261、5271和5281。在最上面的介電材料5112之上可提供沿著該第一方向延伸的導電材料5291。例如,沿著該第一方向延伸的複數個導電材料5221、5231、5241、5251、5261、5271、5281和5291可為一金屬材料。例如,沿著該第一方向延伸的複數個導電材料5221、5231、5241、5251、5261、5271、5281和5291可為例如多晶矽的一導電材料。
在第二摻雜區5312與第三摻雜區5313之間的區域內,可提供與在第一摻雜區5311與第二摻雜區5312之間的結構相同的結構。例如,在第二摻雜區5312與第三摻雜區5313之間的區域內,可提供沿著該第一方向延伸的複數個介電材料5112、依序排列在該第一方向上並且在該第二方向上穿透複數個介電材料5112之複數個柱5113、在複數個介電材料5112與複數個柱5113的該露出表面之上提供之介電層5116、及可在該第一方向內延伸的複數個導電材料5212、5222、5232、5242、5252、5262、5272、5282和5292。
在第三摻雜區5313與第四摻雜區5314之間的區域內,可提供與在第一摻雜區5311與第二摻雜區5312之間的結構相同的結構。例如,在第三摻雜區5313與第四摻雜區5314之間的區域內,可提供沿著該第一方向延伸的複數個介電材料5112、依序排列在該第一方向內並且在該第二方向穿透複數個介電材料5112之複數個柱5113、複數個介電材料5112與複數個柱5113的該露出表面之上提供之介電層5116、及可在該第一方向內延伸的複數個導電材料5213、5223、5233、5243、5253、5263、5273、5283和5293。
在複數個柱5113之上可分別提供汲極5320。例如,汲極5320可為摻雜第二型摻雜物的矽材料。例如,汲極5320可為摻雜該n型的矽材料(即是摻雜n型摻雜物)。雖然為了方便起見,在具體實施例內已經解釋包含n型矽的汲極5320,應注意者,汲極5320並不受限於n型矽。例如,每一汲極5320的寬度可比每一對應的柱5113寬度還要寬。例如,在每一對應柱5113的頂端表面之上,可提供焊墊形狀的每一汲極5320。
在汲極5330之上可提供往該第三方向延伸的導電材料5331、5332和5333,導電材料5331、5332和5333大體上可沿著該第一方向放置,個
別導電材料5331、5332和5333可與對應區域的汲極5320電耦接。例如,汲極5320和沿著該第三方向延伸的導電材料5331、5332和5333可透過接觸塞(contact plug)彼此電耦接。例如,沿著該第三方向延伸的導電材料5331、5332和5333可為金屬材料。例如,沿著該第三方向延伸的導電材料5331、5332和5333可為例如多晶矽的導電材料。
在圖5和圖6內,個別的柱5113可與介電層5116以及沿著該第一方向延伸的導電材料5211至5291、5212至5292以及5213至5293一起形成一串。例如,個別的柱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可為一高k介電層(例如氧化鋁層、氧化鋯層等等),其具有大於第一子介電層5117和第二子介電層5118的一
介電常數。
導電材料5233可作為一閘門或一控制閘。也就是,該閘門或控制閘5233、阻擋介電層5119、電荷儲存層5118、穿隧介電層5117以及本體5114可形成一電晶體或一記憶胞電晶體結構。例如,第一至第三子介電層5117、5118和5119可形成一氧化物-氮-氧化物(ONO)結構。在具體實施例中,為了方便解釋之目的,每一柱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。換言之,如此該等閘門或控制閘可往該第一方向延伸,並形成字元線WL以及至少二條選擇線,例如至少一條串選擇線SSL以及至少一條接地選擇線GSL。
沿著該第三方向延伸的導電材料5331、5332和5333可電耦接至該NAND串NS的末端。例如,沿著該第三方向延伸的導電材料5331、5332和5333可作為位元線BL。也就是,在一個記憶體區塊BLKi內,該等複數個NAND串NS可電耦接至一條位元線BL。
沿著該第一方向延伸的第二型摻雜區5311、5312、5313和5314可提供至該NAND串NS的另一末端。沿著該第一方向延伸的第二型摻雜區5311、5312、5313和5314可作為共用源極線CSL。
換言之,該記憶體區塊BLKi包含沿著垂直於基板5111的一方向(例如一第二方向)延伸的複數個NAND串NS,並可作為一NAND快閃記憶體區塊(例如一電荷捕捉型記憶體),其中複數個NAND串NS電耦接至一條位元線BL。
雖然在圖5至圖7內已例示在9層內提供在該第一方向上延伸的導電材料5211至5291、5212至5292和5213至5293,應注意者,往該第一方向延伸的導電材料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、5312、5313和5314的數量可受控制。
進一步,雖然在圖5至圖7內已經例示3個NAND串NS已電耦接至一個導電材料,應注意者,該具體實施例並不受限於在該第一方向上延伸並電耦接至一個導電材料的3個NAND串NS。例如,n個NAND串NS可電耦接至往該第一方向延伸的一個導電材料,其中n為正整數。根據電耦接至往
該第一方向延伸的一個導電材料之NAND串NS數量,可控制位元線5331、5332和5333的數量。
圖8為例示參閱圖5至圖7所述具有一第一結構的該記憶體區塊BLKi之等效電路圖。
請參閱圖8,在具有該第一結構的該特定區塊BLKi內,在一第一位元線BL1與一共用源極線CSL之間可提供NAND串NS11至NS31,該第一位元線BL1可對應至圖5和圖6之在該第三方向上延伸的導電材料5331。在一第二位元線BL2與該共用源極線CSL之間可提供NAND串NS12至NS32,該第二位元線BL2可對應至圖5和圖6之在該第三方向上延伸的導電材料5332。在一第三位元線BL3與該共用源極線CSL之間可提供NAND串NS13至NS33。該第三位元線BL3可對應至圖5和圖6之在該第三方向上延伸的導電材料5333。
每一NAND串NS的一串選擇電晶體SST都可電耦接至一對應的位元線BL。每一NAND串NS的一接地選擇電晶體GST都可電耦接至該共用源極線CSL。每一NAND串NS的該串選擇電晶體SST與該接地選擇電晶體GST之間都可提供記憶胞MC。
在具體實施例內,為了方便解釋之目的,該NAND串NS可根據列(row)與行(column)之單元來定義以作為範例來解釋,其中共同電耦接至一條位元線的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、5312、5313和5314可彼此電耦接。例如,第一至第四摻雜區5311、5312、5313和5314可透過接點電耦接至一上層,在該上層上,第一至第四摻雜區5311、5312、5313和5314可電耦接。
換言之,如圖8內所示,相同高度或階層的該等字元線WL可電耦接。因此,當選擇一指定高度上的一特定字元線WL,則可選取電耦接至該特定字元線WL的所有NAND串NS。不同列內的該等NAND串NS可電耦接至不同的串選擇線SSL。因此,在已電耦接至相同字元線WL的該等NAND串NS之間,利用選擇該等串選擇線SSL1至SSL3之其一者,在該未選取列內的該等NAND串NS可與該等位元線BL1至BL3電絕緣。換言之,利用選擇該等串選擇線SSL1至SSL3之其一者,就可選擇該等NAND串SL的一列。再者,利用選擇該等位元線BL1至BL3之其一者,可以行為單位選擇該選取列內的該等NAND串NS。
在每一NAND串NS內,可提供一虛擬記憶胞DMC。在第8圖內,在每一MAMD串NS內一第三記憶胞MC3與一第四記憶胞MC4之間提供該虛擬記憶胞DMC。如此,在該虛擬記憶胞DNC與該接地選擇電晶體GST之
間可提供該第一至第三記憶胞MC1至MC3,在該虛擬記憶胞DMC與該串選擇電晶體SST之間可提供該第四至第六記憶胞MC4至MC6。每一NAND串NS內該等記憶胞MC都可利用該虛擬記憶胞DMC分類成記憶胞群組。在該已分類的記憶胞群組內,與該接地選擇電晶體GST相鄰的記憶胞(例如MC1至MC3)可稱為一下方記憶胞群組,並且與該串選擇電晶體SST相鄰的記憶胞(例如MC4至MC6)可稱為一上方記憶胞群組。
此後將參閱圖9至圖11詳細描述,根據具體實施例的記憶體系統內記憶體裝置用與該第一結構不同結構中三維(3D)非揮發性記憶體裝置來實施。
圖9為示意性例示根據具體實施例用三維(3D)非揮發性記憶體裝置來實施的該記憶體裝置之透視圖,該裝置具有與上面參閱圖5至圖8所描述的該第一結構不同之該第二結構,以及顯示具有圖4內該等複數個記憶體區塊中該第二結構的一特定記憶體區塊BLKj,並且圖10為例示沿著圖9內VII-VII’線的該特定記憶體區塊BLKj之剖面圖。
請參閱圖9和圖10,圖1中記憶體裝置150的該等複數個記憶體區塊之間該特定記憶體區塊BLKi可包含在該第一方向至第三方向上延伸的結構。
一基板6311可被提供。例如,基板6311可包含摻雜一第一型摻雜物的矽材料。例如,基板6311可包含摻雜p型摻雜物的一矽材料或一p型井(例如一口袋p型井),並且包含圍繞該p型井的一n型井。雖然為了方便解釋,在具體實施例內已經解釋基板6311為p型矽,應注意者,基板6311並不受限於p型矽。
在基板6311之上,提供在該X軸方面與該Y軸方向上延伸的第一至第四導電材料6321、6322、6323和6324。第一至第四導電材料6321、6322、6323和6324在該Z軸方向上相隔一預定距離。
在基板6311之上,提供在該X軸方面與該Y軸方向上延伸的第五至第八導電材料6325、6326、6327和6328。第五至第八導電材料6325、6326、6327和6328在該Z軸方向上相隔該預定距離。第五至第八導電材料6325、6326、6327和6328可在該Y軸方向上與第一至第四導電材料6321、6322、6323和6324相隔。
提供通過第一至第四導電材料6321、6322、6323和6324的複數個下方柱DP,每一下方柱DP都在該Z軸方向內延伸。另外,提供通過第五至第八導電材料6325、6326、6327和6328的複數個上方柱UP,每一上方柱UP都在該Z軸方向上延伸。
該等下方柱DP與該等上方柱UP之每一者都包含一內部材料6361、一中間層6362以及一表面層6363。中間層6362作為該單元電晶體的一通道。表面層6363包含一阻擋介電層、一電荷儲存層以及一穿隧介電層。
該下方柱DP與該上方柱UP透過一管閘PG電耦接。該管閘PG可位於基板6311內。例如,該管閘PG可包含相同材料的該下方柱DP與該上方柱UP。
在該下方柱DP之上,提供在該X軸方面與該Y軸方向上延伸的一第二型摻雜材料6312。例如,該第二型摻雜材料6312可包含一n型矽材料。第二型摻雜材料6312作為該共用源極線CSL。
在該上方柱之上提供汲極6340。例如,汲極6340可包含一n型
矽材料。在汲極6340之上,提供在該Y軸方向上延伸的第一上方導電材料6351和第二上方導電材料6352。
第一上方導電材料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、6322、6323和6324形成一下方串,該上方柱UP以及與該上方柱UP相鄰的第五至第八導電材料6325、6326、6327和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,在具有該第二結構的該特定記憶體區塊BLKj內,在記憶體區塊150的該等複數個區塊之間,如上面參閱圖9和圖10之說明,可用定義複數個配對之提供胞串,其每一者都透過該管閘PG電耦接的一個上方串與一個下方串來實施。
換言之,在具有該第二結構的該特定記憶體區塊BLKj內,沿著一第一通道CH1(圖未示)堆疊的記憶胞CG0至CG31,例如至少一個源極選擇閘SSG和至少一個汲極選擇閘DSG可形成一第一串ST1,並且沿著一第二通道CH2(圖未示)堆疊的記憶胞CG0至CG31,例如至少一個源極選擇閘SSG和至少一個汲極選擇閘DSG可形成一第二串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為例示根據本發明具體實施例的一記憶體系統之方塊圖。
請參閱圖12,依照本發明具體實施例的該記憶體系統包含複數個記憶體裝置10、20、30和40、一指令儲存單元50以及一重設單元60。
用來參考,各該記憶體裝置10、20、30和40都可對應至圖1內所例示記憶體系統110的記憶體裝置150。更進一步,在圖12內,包含第一至第四記憶體裝置10、20、30和40,但這是為了方便描述,可包含小於或大於4個記憶體裝置。因此在以下說明中,假設該記憶體系統內含第一至第四記憶體裝置10、20、30和40。
指令儲存單元50可儲存接收自一主機HOST的最多N個指令OUT_CMD。在此案例中,指令儲存單元50將接收自該主機HOST的該等指令OUT_CMD依序儲存在一佇列表單內。
例如,若指令儲存單元50內未儲存任何指令,則指令儲存單元50可將接收自該主機HOST的第一指令OUT_CMD儲存為一第N指令
BUF_CMDN。接下來,指令儲存單元50可將接收自該主機HOST的第二指令OUT_CMD儲存為一第(N-1)指令BUF_CMDN-1。若指令儲存單元50將接收自該主機HOST的第N指令OUT_CMD儲存為第一指令BUF_CMD1,則指令儲存單元50內最多可儲存N個指令。
在此案例中,指令儲存單元50可利用將接收自該主機HOST的該等指令OUT_CMD位移來儲存該等指令OUT_CMD。例如,若指令儲存單元50內未儲存任何指令,則指令儲存單元50可將接收自該主機HOST的第一指令OUT_CMD儲存為第一指令BUF_CMD1。接下來,當從該主機HOST接收第二指令OUT_CMD時,指令儲存單元50將該第一指令BUF_CMD1位移為第二指令BUF_CMD2,並將新接收的第二指令OUT_CMD儲存為該第一指令BUF_CMD1。接下來,當從該主機HOST接收第三指令OUT_CMD時,指令儲存單元50將該先前的第二指令BUF_CMD2位移為第三指令BUF_CMD3、將該先前的第一指令BUF_CMD1位移為第二指令BUF_CMD2,並將新接收的第三指令OUT_CMD儲存為該第一指令BUF_CMD1。在此案例中,指令儲存單元50內儲存最多N個指令。
用來參考,在圖12內,N假設為8,並且接收自該主機HOST的8個指令OUT_CMD都例示為儲存成指令BUF_CMD<1:8>。不過,N之值為8僅為範例,並且,N可依照設計而被定義為大於或小於8之值。因此在以下說明當中,N假設為8。更進一步,假設指令儲存單元50利用依序位移該等指令OUT_CMD,儲存接收自該主機HOST的該等指令OUT_CMD。也就是,儲存在指令儲存單元50內該等最多8個指令BUF_CMD<1:8>之該第一指令BUF_CMD1為最近儲存的指令。
各該記憶體裝置10、20、30和40都將接收自該主機HOST的該等指令OUT_CMD除以一最多M,並儲存該等指令。也就是,接收自該主機HOST的該等指令OUT_CMD都儲存在指令儲存單元50內、傳輸至複數個記憶胞10、20、30和40,並分配與儲存在複數個記憶胞10、20、30和40內。在此案例中,最多M個指令MM_CMD1#、MM_CMD2#、MM_CMD3#和MM_CMD4#分別儲存在複數個記憶胞10、20、30和40內。
用來參考,在圖12內,M假設為4,並且該等最多四個指令MM_CMD1<1:4>、MM_CMD2<1:4>、MM_CMD3<1:4>和MM_CMD4<1:4>已例示為分別儲存在複數個記憶體裝置10、20、30和40內。不過,M之值為4僅為範例,並且,M可依照設計而定義為大於或小於4之值。因此在以下說明當中,M假設為4。
更進一步,複數個記憶體裝置10、20、30和40執行個別設定操作,以回應以輸入順序儲存於其中的該等最多四個指令MM_CMD1<1:4>、MM_CMD2<1:4>、MM_CMD3<1:4>和MM_CMD4<1:4>。例如,運用第一記憶體裝置10,假設其中儲存兩個指令MM_CMD1<1:2>,並且剩餘兩個指令MM_CMD1<3:4>的儲存空間空著。在此案例中,第一記憶體裝置10執行一第一操作設定,以回應一第一指令MM_CMD11。在該第一操作設定終止之後,第一記憶體裝置10執行一第二操作設定,以回應一第二指令MM_CMD12。如此,第一記憶體裝置10依序執行該第一操作設定和該第二操作設定,以回應該第一指令MM_CMD11和第二指令MM_CMD12。在此案例中,若第一記憶體裝置10內儲存該等四個指令MM_CMD1<1:4>,則依序執行四次設定操作。
不管何時將接收自該主機HOST的該指令OUT_CMD儲存在指
令儲存單元50內,重設單元60基於執行資訊CMD_INFO<1:8>和執行資訊MM_INFO<1:4><1:4>,重設要儲存在指令儲存單元50內該等最多8個指令BUF_CMD<1:8>的執行順序OUT_ORDER<1:8>,並將該等重設指令BUF_CMD<1:8>分配至第一至第四記憶體裝置10、20、30和40。在此,該執行順序CMD_INFO<1:8>包含要儲存在指令儲存單元50內的該等個別最多8個指令BUF_CMD<1:8>,並且該執行資訊MM_INFO<1:4><1:4>為有關要分別在第一至第四記憶體裝置10、20、30和40內儲存最多四個的該等個別最多16個指令MM_CMD<1:4><1:4>之資訊。
在此案例中,輸入至重設單元60的總共最多24個指令BUF_CMD<1:8>和MM_CMD<1:4><1:4>之每一者上的該執行資訊CMD_INFO<1:8>和MM_INFO<1:4><1:4>都可包含一邏輯位址LBA#、一實體位址PBA#、一長度LTH#以及一使用時間OT#,對應至該等總共最多24個指令BUF_CMD<1:8>和MM_CMD<1:4><1:4>之每一者。當之前已經包含在該記憶體系統內時,則輸入該等總共最多24個指令BUF_CMD<1:8>和MM_CMD<1:4><1:4>之每一者上該執行資訊CMD_INFO<1:8>和MM_INFO<1:4><1:4>,而不管該指令OUT_CMD不用一個別產生電路自該主機HOST接收。需要包含並輸入的資訊可依設計改變。
儲存在指令儲存單元50內該等最多8個指令BUF_CMD<1:8>上的該執行資訊CMD_INFO<1:8>可內含實體位址PBA<1:8>、邏輯位址LBA<1:8>和長度LTH<1:8>,因為重設單元60使用該實體位址PBA<1:8>、該邏輯位址LBA<1:8>和該長度LTH<1:8>。
更進一步,包含於儲存在第一至第四記憶體裝置10、20、30和
40內該等總共最多16個指令MM_CMD<1:4><1:4>上該執行資訊MM_INFO<1:4><1:4>內的實體位址PBA<1:4><1:4>和使用時間OT<1:4><1:4>最多為四個,因為重設單元60使用該實體位址PBA<1:4><1:4>和該使用時間OT<1:4><1:4>。
重設單元60接收分別儲存在第一至第四記憶體裝置10、20、30和40內該等指令數上的資訊INT<1:4>,搭配該等總共最多24個指令BUF_CMD<1:8>和MM_CMD<1:4><1:4>上的該執行資訊CMD_INFO<1:8>和MM_INFO<1:4><1:4>、重設儲存在指令儲存單元50內的該等最多8個指令BUF_CMD<1:8>之該等執行順序OUT_ORDER<1:8>,並且將該等重設指令BUF_CMD<1:8>分配至第一至第四記憶體裝置10、20、30和40。
在此案例中,如圖12內所例示,在第一至第四記憶體裝置10、20、30和40之內可產生儲存在第一至第四記憶體裝置10、20、30和40內該等指令數上的該資訊INT<1:4>。更進一步,在某些具體實施例內,可使用個別元件產生該等指令數上的該資訊INT<1:4>,用於計數在指令儲存單元50之內第一至第四記憶體裝置10、20、30和40之間傳輸的該等指令數。也就是,產生該等指令數上分別儲存在第一至第四記憶體裝置10、20、30和40內該資訊INT<1:4>的方法可依照設計來決定。
更進一步,當接收自該主機HOST的該指令OUT_CMD儲存在指令儲存單元50內,並且在已儲存該等最多8個指令BUF_CMD<1:8>的指令儲存單元50內儲存大於數量設定之指令時,則重設單元60重設該等最多8個指令BUF_CMD<1:8>的執行順序OUT_ORDER<1:8>,並將該等重設指令BUF_CMD<1:8>分配至第一至第四記憶體裝置10、20、30和40。也就是,當指
令儲存單元50內只儲存非常少量指令時,就不足以執行重設該等指令執行順序的操作。如此,只有當指令儲存單元50內已儲存超過設定數量的指令時,才會執行重設該等指令執行順序的操作。例如,當指令儲存單元50內已儲存三或多個指令BUF_CMD<1:3>時,則可執行重設該等三或多個指令BUF_CMD<1:3>的該等執行順序OUT_ORDER<1:8>。在此案例中,該設定數量(也就是用於操作指令儲存單元50的基數)可依照設計改變。該設定數量可為大於或小於3之數。
圖13為例示圖12內依照本發明一個具體實施例的該記憶體系統之操作方法的流程圖。
請參閱圖13,在此將詳細解釋以根據本發明具體實施例的該記憶體系統內指令儲存單元50所儲存之該等指令BUF_CMD<1:8>為基礎之操作方法。
在一輸入操作S130內,從該主機HOST接收該等指令OUT_CMD並依序儲存在指令儲存單元50內。如上所述,儲存在指令儲存單元50內該等最多8個指令BUF_CMD<1:8>的該等執行順序OUT_ORDER<1:8>由重設單元60重設,並分配至第一至第四記憶體裝置10、20、30和40。
在一長度決定操作S131內,判定最近儲存在指令儲存單元50內該第一指令BUF_CMD1的該長度LTH1是否大於一設定長度。
當最近儲存在指令儲存單元50內該第一指令BUF_CMD1的該長度LTH1大於該設定長度時,則執行一操作S134,以將該最近儲存的第一指令BUF_CMD1設定為一「排除指令」,如此將該第一指令BUF_CMD1排除在一重設操作S133的目標之外,其中重設單元60重設該等最多8個指令BUF_CMD<1:8>的該等執行順序OUT_ORDER<1:8>。
在屬於該等最多8個指令BUF_CMD<1:8>的該第一指令BUF_CMD1儲存在指令儲存單元50內並且已最近儲存被設定為該「排除指令」之後,則執行用於重設只有該等剩餘最多7個指令BUF_CMD<2:8>的該等執行順序OUT_ORDER<2:8>之該重設操作S133。
在此案例中,該「排除指令」使用在一操作S135內,用於在該重設操作S133內將所有該等剩餘最多7個指令BUF_CMD<2:8>分配至第一至第四記憶體裝置10、20、30和40之後,最終將該第一指令BUF_CMD1分配至第一至第四記憶體裝置10、20、30和40。
例如,假設該等8個指令BUF_CMD<1:8>已經儲存在指令儲存單元50內,並且最近所接收之該第一指令BUF_CMD1的該長度LTH1大於該設定長度,則將該第一指令BUF_CMD1設定為該「排除指令」,並且該第一指令BUF_CMD1的該執行順序OUT_ORDER1變成該等8個指令BUF_CMD<1:8>的最後一個。也就是,在用於重設該等8個指令BUF_CMD<1:8>的該等執行順序OUT_ORDER<1:8>之該重設操作S133內,已經將該等8個指令BUF_CMD<1:8>的該第二至第八指令BUF_CMD<2:8>分配至第一至第四記憶體裝置10、20、30和40之後,則最終執行用於將該第一指令BUF_CMD1(也就是該「排除指令」)分配至第一至第四記憶體裝置10、20、30和40的該操作S135。
更進一步,在該長度決定操作S131內,用來作為一基數的該指令BUF_CMD#之該長度LTH#為輸入/輸出至/來自該第一至第四記憶體裝置10、20、30和40的資料之大小,以回應一對應指令BUF_CMD#。例如,4Kb的資料可輸入/輸出至/來自第一至第四記憶體裝置10、20、30和40、1Mb的資料可輸入/輸出至/來自第一至第四記憶體裝置10、20、30和40,或者1Gb的資
料可輸入/輸出至/來自第一至第四記憶體裝置10、20、30和40,以回應一對應指令BUF_CMD#。當假設該設定長度為10Mb時,4Kb的資料可輸入/輸出至/來自第一至第四記憶體裝置10、20、30和40或者1Mb的資料可輸入/輸出至/來自第一至第四記憶體裝置10、20、30和40,以回應該對應的指令BUF_CMD#小於該設定長度。反之,1Gb的資料可輸入/輸出至/來自第一至第四記憶體裝置10、20、30和40,以回應該對應的指令BUF_CMD#大於該設定長度。
為何需要該長度決定操作S131的原因在於,用於輸入/輸出資料至/來自該第一至第四記憶體裝置10、20、30和40來回應一對應指令BUF_CMD#的時間會隨該資料大小增加而增加。因此,若大小相對較大的一指令並未透過該長度決定操作S131控制成具有最後順序,則大小相對較小的指令可省略不執行,而執行大小相對非常大的該指令。結果,整個記憶體系統的資料處理速度會降低。
在此並不考慮在該重設操作S133內,儲存在指令儲存單元50內的該第二至第八指令BUF_CMD<2:8>在設定為該「排除指令」的該第一指令BUF_CMD1之前分配至第一至第四記憶體裝置10、20、30和40。
當儲存於指令儲存單元50內的該第二至第八指令BUF_CMD<2:8>,在設定為該「排除指令」的該第一指令BUF_CMD1之前分配至第一至第四記憶體裝置10、20、30和40並用於該重設操作S133內,則該指令OUT_CMD可為從該主機HOST新接收並儲存在指令儲存單元50內。如此,若要在該「排除指令」之後儲存在指令儲存單元50內的該指令OUT_CMD要透過該重設操作S133在該「排除指令」之前執行,則該「排除指令」的執行順序可無限下降。為此,要在該「排除指令」之後儲存在指令儲存單元50內的該指
令OUT_CMD可在該「排除指令」執行之後施加至該重設操作S133。
在一群組檢查操作S132內,若儲存在指令儲存單元50內該等最多8個指令BUF_CMD<1:8>的二或多個指令具有連續邏輯位址LBA#之值,則該等二或多個指令可組合成一群組。結果,該重設操作S133同時施加至組合成為該群組的二或多個指令。也就是,若該等二或多個指令的該等邏輯位址LBA#具有連續值,這表示該主機HOST極有可能可連續輸入/輸出資料用於一特定用途。因此,可更有效率在該連續狀態內使用二或多個具有連續邏輯位址LBA#的指令。
更進一步,有關在該群組檢查操作S132內用來將該等二或多個指令結合成該群組的順序,可先使用具有較前邏輯位址LBA#的指令,然後使用具有較後邏輯位址LBA#的指令。在某些具體實施例內,根據設計可先使用具有較後邏輯位址LBA#的指令,然後使用具有較前邏輯位址LBA#的指令。
在該重設操作S133內,透過三個條件逐步重設該等最多8個指令BUF_CMD<1:8>的該等執行順序OUT_ORDER<1:8>。
當已經進入該重設操作S133,首先基於在一操作S1331內是否滿足第一條件「條件A」,決定該等最多8個指令BUF_CMD<1:8>的第一優先權。在該第一條件「條件A」內,基於使用儲存在第一至第四記憶體裝置10、20、30和40內所有該等最多四個指令MM_CMD<1:4><1:4>所需的使用時間OT<1:4><1:4>,將第一至第四記憶體裝置10、20、30和40分類成具有一較高第一優先權的「第一重設記憶體裝置」及具有一較低第一優先權的「第二重設記憶體裝置」。
如此,具有需要相對短使用時間OT<1:4><1:4>來使用儲存在第
一至第四記憶體裝置10、20、30和40內所有該等最多四個指令MM_CMD<1:4><1:4>的一記憶體裝置可設定為該「第一重設記憶體裝置」。該「第一重設記憶體裝置」以外第一至第四記憶體裝置10、20、30和40的該剩餘記憶體裝置可設定為該「第二重設記憶體裝置」。
例如,假設執行一設定操作來回應儲存在第一記憶體裝置10內所有該最多四個指令MM_CMD1<1:4>所需的一使用時間OT1<1:4>小於執行設定操作來回應儲存在剩餘的第二至第四記憶體裝置20、30和40之每一者內所有該最多四個指令MM_CMD<2:4><1:4>所需之使用時間OT<1:4><1:4>,第一記憶體裝置10可設定為該「第一重設記憶體裝置」,並且剩餘的第二至第四記憶體裝置20、30和40可設定為該「第二重設記憶體裝置」。
在此案例中,在該操作S1331內,屬於儲存在指令儲存單元50內該等最多8個指令BUF_CMD<1:8>並且對應至該「第一重設記憶體裝置」的一指令BUF_CMD#可設定為「第一重設指令」,屬於儲存在指令儲存單元50內該等最多8個指令BUF_CMD<1:8>並且對應至該「第二重設記憶體裝置」的一指令BUF_CMD#可設定為「第二重設指令」。
符合該第一條件「條件A」的該「第一重設指令」總是存在,因為該第一條件「條件A」為相對觀點。因此,決定是否滿足一第二條件「條件B」只相關於該「第一重設指令」。如此在該操作S1332內,根據是否滿足該第二條件「條件B」,決定一或多個「第一重設指令」之每一者的第二優先權。
在該第二條件「條件B」內,根據儲存在一或多個各該「第一重設記憶體裝置」內該等最多四個指令MM_CMD#的該實體位址PBA#之值與一或多個該等「第一重設指令」的該實體位址PBA#之值間的關聯性,將一或多個
該等「第一重設指令」分類成具有一較高第二優先權的一「第三重設指令」以及具有一較低第二優先權的一「第四重設指令」。
如此在該操作S1332內,根據儲存在一或多個各該「第一重設記憶體裝置」內該等最多四個指令MM_CMD#的該實體位址PBA#之值,連續或具有與一或多個該等「第一重設記憶體裝置」的該實體位址PBA#之值相同值的一「第一重設指令」可設定為該「第三重設指令」,並且不連續或不具有與一或多個該等「第一重設記憶體裝置」的該實體位址PBA#之值相同值的一「第一重設指令」可設定為該「第四重設指令」。
在此案例中,屬於該「第一重設記憶體裝置」並且對應至該「第三重設指令」的一記憶體裝置可設定為該「第三重設記憶體裝置」,屬於該「第一重設記憶體裝置」並且對應至該「第四重設指令」的一記憶體裝置可設定為該「第四重設記憶體裝置」。
更進一步,相較於該「第四重設指令」,提前該「第三重設指令」的該執行順序。如此,該「第三重設指令」直接分配至第一至第四記憶體裝置10、20、30和40,並且不改變用於操作S1334內。
符合該第二條件「條件B」的該「第三重設指令」可存在或可不存在,因為該第二條件「條件B」為絕對觀點。因此,若該「第三重設指令」不存在,則只相關於一「第四重設指令」決定是否滿足一第三條件「條件C」。如此在該操作S1333內,基於是否滿足該第三條件「條件C」,決定一或多個「第四重設指令」之每一者的第三優先權。
在該第三條件「條件C」內,根據儲存在第一至第四記憶體裝置10、20、30和40的該「第四重設記憶體裝置」內指令MM_CMD#之數量INT#,
將一或多個「第四重設指令」分類成具有一較高第三優先權的一「第五重設指令」,以及具有一較低第三優先權的一「第六重設指令」。
如此在該操作S1333內,將屬於一或多個該等「第四重設指令」並且對應至其中已儲存相對少量指令MM_CMD#的一「第四重設記憶體裝置」之一「第四重設指令」,可設定為該「第五重設指令」,而該「第五重設指令」以外的剩餘「第四重設指令」則可設定為該「第六重設指令」。
在此案例中,屬於該「第四重設記憶體裝置」並且對應至該「第五重設指令」的一記憶體裝置可設定為該「第五重設記憶體裝置」,屬於該「第四重設記憶體裝置」並且對應至該「第六重設指令」的一記憶體裝置可設定為該「第六重設記憶體裝置」。
例如,假設若第一至第四記憶體裝置10、20、30和40的第一記憶體裝置10和第三記憶體裝置30都已經設定為該「第四重設記憶體裝置」,則兩指令MM_CMD1<1:2>已經儲存在第一記憶體裝置10內,並且一指令MM_CMD31已經儲存在第三記憶體裝置30內。此時,對應至第三記憶體裝置30的一「第四重設指令」可設定為一「第五重設指令」,並且對應至第一記憶體裝置10的一「第四重設指令」可設定為一「第六重設指令」。更進一步,第三記憶體裝置30可設定為一「第五重設記憶體裝置」,並且第一記憶體裝置10可設定為一「第六重設記憶體裝置」。
更進一步,相較於該「第六重設指令」,提前該「第五重設指令」的該執行順序。如此,該「第五重設指令」直接分配至第一至第四記憶體裝置10、20、30和40,並且用於操作S1334內。
在檢查是否滿足該第三條件「條件C」之後,終止該重設操作
S133。雖然已經終止該「重設操作」,可能會有順序尚未決定的指令。如此儲存在指令儲存單元50內該等最多8個指令BUF_CMD<1:8>之二或多者可分類成為「第六重設指令」。在此案例中,可使用兩種處理方法。
在第一方法中,利用在二或多個「第六重設指令」上重複執行該重設操作S133,可清楚決定該等二或多個「第六重設指令」的順序。一般而言,當三或多個指令分類成「第六重設指令」時,可使用此方法。
在第二方法中,已經決定二或多個「第六重設指令」的順序,使得該等二或多個「第六重設指令」已經接收自該主機HOST。一般而言,當二或更少指令分類成「第六重設指令」時,可使用此方法。
根據設計,該第一方法和該第二方法之任一者都可選取並使用,或該第一方法和該第二方法可適當混合與使用。
圖14A至圖14D為例示圖12內依照本發明具體實施例的該記憶體系統資料處理操作之方塊圖。
請參閱圖14A至14D,可了解根據本發明的具體實施例,具有許多值的指令都儲存在圖12內該記憶體系統的指令儲存單元50內。
尤其是,底下將描述儲存在指令儲存單元50內的8個指令BUF_CMD<1:8>。該第一指令BUF_CMD1為用於讀取儲存在一邏輯位址LBA900內資料的指令。底下描述在該第一指令BUF_CMD1上的執行資訊CMD_INFO1。一實體位址PBA1指示第二記憶體裝置20的該第二區塊之該第一分頁,即是{記憶體,區塊,分頁}=2,2,1,並且一長度LTH1為1Gb。
該第二指令BUF_CMD2為用於讀取儲存在一邏輯位址LBA400內資料的指令。底下描述在該第二指令BUF_CMD2上的執行資訊
CMD_INFO2。一實體位址PBA2指示第一記憶體裝置10的該第三區塊之該第八分頁,即是{記憶體,區塊,分頁}=1,3,8,並且一長度LTH2為4Kb。
該第三指令BUF_CMD3為用於讀取儲存在一邏輯位址LBA800內資料的指令。底下描述在該第三指令BUF_CMD3上的執行資訊CMD_INFO3。一實體位址PBA3指示第三記憶體裝置30的該第十一區塊之該第五分頁,即是{記憶體,區塊,分頁}=3,11,5,並且一長度LTH3為1Kb。
該第四指令BUF_CMD4為用於讀取儲存在一邏輯位址LBA100內資料的指令。底下描述在該第四指令BUF_CMD4上的執行資訊CMD_INFO4。一實體位址PBA4指示第一記憶體裝置10的該第三區塊之該第八分頁,即是{記憶體,區塊,分頁}=1,3,8,並且一長度LTH1為8Kb。
該第五指令BUF_CMD5為用於讀取儲存在一邏輯位址LBA700內資料的指令。底下描述在該第五指令BUF_CMD5上的執行資訊CMD_INFO5。一實體位址PBA5指示第三記憶體裝置30的該第十區塊之該第十二分頁,即是{記憶體,區塊,分頁}=3,10,20,並且一長度LTH5為16Kb。
該第六指令BUF_CMD6為用於讀取儲存在一邏輯位址LBA300內資料的指令。底下描述在該第六指令BUF_CMD6上的執行資訊CMD_INFO6。一實體位址PBA6指示第三記憶體裝置30的該第七區塊之該第五分頁,即是{記憶體,區塊,分頁}=3,7,5,並且一長度LTH6為4Kb。
該第七指令BUF_CMD7為用於讀取儲存在一邏輯位址LBA50內資料的指令。底下描述在該第七指令BUF_CMD7上的執行資訊CMD_INFO7。一實體位址PBA7指示第四記憶體裝置40的該第九區塊之該第五分頁,即是{記憶體,區塊,分頁}=4,9,5,並且一長度LTH1為32Kb。
該第八指令BUF_CMD8為用於讀取儲存在一邏輯位址LBA40內資料的指令。底下描述在該第八指令BUF_CMD8上的執行資訊CMD_INFO8。一實體位址PBA8指示第四記憶體裝置40的該第九區塊之該第六分頁,即是{記憶體,區塊,分頁}=4,9,6,並且一長度LTH8為32Kb。
同樣地,可了解第一至第四記憶體裝置10、20、30和40也儲存具有許多值的指令並執行其設定操作。
尤其是,底下描述儲存在第一至第四記憶體裝置10、20、30和40之每一者內的指令MM_CMD<1:4>#。第一記憶體裝置10內只儲存一個指令MM_CMD11,並且第一記憶體裝置10的該第一指令MM_CMD11為用於寫入資料的指令。此時,指令數量上的資訊INT1設定為「1」。底下描述在第一記憶體裝置10的該第一指令MM_CMD11上之執行資訊MM_INFO11。一實體位址PBA11指示第一記憶體裝置10的該第十二區塊之該第十一分頁,即是{記憶體,區塊,分頁}=1,12,11,並且一執行時間OT11為500us。
第二記憶體裝置20內只儲存一個指令MM_CMD21,並且第二記憶體裝置20的該第一指令MM_CMD21為用於寫入資料的指令。此時,指令數量上的資訊INT2設定為「1」。底下描述在第二記憶體裝置20的該第一指令MM_CMD21上之執行資訊MM_INFO21。一實體位址PBA21指示第二記憶體裝置20的該第五區塊之該第二十二分頁,即是{記憶體,區塊,分頁}=2,5,22,並且一執行時間OT21為2500us。
第三記憶體裝置30內只儲存一個指令MM_CMD31,並且第三記憶體裝置30的該第一指令MM_CMD31為用於寫入資料的指令。此時,指令數量上的資訊INT3設定為「1」。底下描述在第三記憶體裝置30的該第一指令
MM_CMD31上之執行資訊MM_INFO31。一實體位址PBA31指示第三記憶體裝置30的該第十四區塊之該第十一分頁,即是{記憶體,區塊,分頁}=3,14,11,並且一執行時間OT31為500us。
第四記憶體裝置40內只儲存兩個指令MM_CMD4<1:2>,並且第四記憶體裝置40的該第一和該第二指令MM_CMD4<1:2>為用於寫入資料的指令。此時,指令數量上的資訊INT4設定為「2」。底下描述在第四記憶體裝置40的該第一指令MM_CMD41上之執行資訊MM_INFO41。一實體位址PBA41指示第四記憶體裝置40的該第十一區塊之該第十九分頁,即是{記憶體,區塊,分頁}=4,11,19。底下描述在第四記憶體裝置40的該第二指令MM_CMD42上之執行資訊MM_INFO42。一實體位址PBA42指示第四記憶體裝置40的該第十九區塊之該第二十五分頁,即是{記憶體,區塊,分頁}=4,19,25。第四記憶體裝置40的該第一指令MM_CMD41和第二指令MM_CMD42之總執行時間OT41+42為3000us。
請參閱圖14A,可了解儲存在指令儲存單元50內該等8個指令BUF_CMD<1:8>的該第一指令BUF_CMD1之該長度LTH1為1Gb,這長度相對長。如此,該第一指令BUF_CMD1設定為一「排除指令」。
因此,該第一指令BUF_CMD1可利用該長度決定操作S131設定為該「排除指令」,並且利用重設單元60的該重設操作S133只能重設剩餘第二至第八指令BUF_CMD<2:8>的該執行順序OUT_ORDER<2:8>。
在此案例中,在執行由重設單元60重設的該等第二至第八指令BUF_CMD<2:8>之所有順序,以及用於將該等重設的第二至第八指令BUF_CMD<2:8>分配至第一至第四記憶體裝置10、20、30和40之該操作S133
之後,則執行用於最終分配該第一指令BUF_CMD1的該操作S135。為此,將該參考編號「8」指派給該第一指令BUF_CMD1,表示該第一指令BUF_CMD1第八個執行,也就是最後一個。
請參閱圖14B,可了解儲存在指令儲存單元50內該等8個指令BUF_CMD<1:8>的該第七指令BUF_CMD7與該第八指令BUF_CMD8之該邏輯位址LBA7和LBA8都具有連續值。如此,可了解該第七和該第八邏輯位址LBA7和LBA8具有連續邏輯位址,因為該第七指令BUF_CMD7的該邏輯位址LBA7之值為50並且該第八指令BUF_CMD8的該邏輯位址LBA8之值為40。
因此,利用該群組檢查操作S132將該第七指令BUF_CMD7和該第八指令BUF_CMD8結合成一群組。如此,當利用重設單元60的該重設操作S133重設該第七指令BUF_CMD7和該第八指令BUF_CMD8的該等執行順序OUT_ORDER7和OUT_ORDER8時,總是一起施加該第七指令BUF_CMD7和該第八指令BUF_CMD8。
如上述,雖然第七指令BUF_CMD7和該第八指令BUF_CMD8已經組合成該群組,不過該第八指令BUF_CMD8的該邏輯位址LBA8之值早於該第七指令BUF_CMD7的該邏輯位址LBA7之值,因為該第七指令BUF_CMD7的該邏輯位址LBA7之值為50並且該第八指令BUF_CMD8的該邏輯位址LBA8之值為40。
因此,當決定該第七指令BUF_CMD7和該第八指令BUF_CMD8組合成該群組的該重設順序,則先執行該第八指令BUF_CMD8,然後以對應的順序執行該第七指令BUF_CMD7。
該第七指令BUF_CMD7和該第八指令BUF_CMD8組合成該群
組,搭配該等第二至第六指令BUF_CMD<2:6>,進入重設單元60的該重設操作S133內,如此重設該等執行順序。
因此,根據有關組合成該群組的該第七指令BUF_CMD7和該第八指令BUF_CMD8以及該等第二至第六指令BUF_CMD<2:6>是否滿足該第一條件「條件A」,來決定第一優先權。
根據使用儲存在第一至第四記憶體裝置10、20、30和40內所有該等最多四個指令MM_CMD<1:4><1:4>所需的使用時間OT<1:4><1:4>,決定是否滿足該第一條件「條件A」。
此後說明第一至第四記憶體裝置10、20、30和40的該使用時間OT<1:4><1:4>。第一記憶體裝置10的該使用時間OT11為500us、第二記憶體裝置20的該使用時間OT21為2500us、第三記憶體裝置30的該使用時間OT31為500us、及第四記憶體裝置40的該使用時間OT41+42為3000us。
因此,屬於儲存在指令儲存單元50內該等8個指令BUF_CMD<1:8>並且對應至該第一記憶體裝置10和第三記憶體裝置30的該等第二至第六指令BUF_CMD<2:6>變成「第一重設指令」。更進一步,屬於儲存在指令儲存單元50內該等8個指令BUF_CMD<1:8>並且對應至第四記憶體裝置40並且結合成該群組的該第七和該第八指令BUF_CMD<7:8>,由於第四記憶體裝置40相對長的使用時間OT41+42,即是3000us,因此變成「第二重設指令」。
如上所述,因為結合成該群組的該第七和該第八指令BUF_CMD<7:8>具有該低於該等剩餘第二至第六指令BUF_CMD<2:6>之第一優先權,則在該重設操作S133內組合成該群組的該第七和該第八指令BUF_CMD<7:8>之該等執行順序OUT_ORDER<7:8>受到控制,如此落後於該等
第二至第六指令BUF_CMD<2:6>的該等執行順序OUT_ORDER<2:6>。針對此因素,在圖14B內,參考編號「6」指派給該第八指令BUF_CMD8,代表該第八指令BUF_CMD8第六個執行,並且參考編號「7」指派給該第七指令BUF_CMD7,代表該第七指令BUF_CMD7第八個執行。
請參閱圖14C,根據關於該等第二至第六指令BUF_CMD<2:6>之每一者,也就是該「第一重設指令」,是否滿足該第二條件「條件B」,來決定第二優先權。
是否滿足該第二條件「條件B」,係根據儲存在一或多個「第一重設記憶體裝置」之每一者內該等最多四個指令MM_CMD#的該實體位址PBA#之值與一或多個「第一重設指令」的該實體位址PBA#之值間之關聯性來決定。
此後,描述分別儲存在第一記憶體裝置10和第三記憶體裝置30內之該等指令MM_CMD1#和MM_CMD3#的該等實體位址PBA1#和PBA3#之值間之關聯性,也就是該「第一重設記憶體裝置」,並且該等第二至第六指令BUF_CMD<2:6>(也就是該「第一重設指令」)的該等實體位址PBA<2:6>之值。
首先,第一記憶體裝置10的該第一指令MM_CMD11之該實體位址PBA11指示第一記憶體裝置10的第十二區塊之該第十一分頁,即是{記憶體,區塊,分頁}=1,12,11。第三記憶體裝置30的該第一指令MM_CMD31之該實體位址PBA31指示第三記憶體裝置30的第十四區塊之該第十一分頁,即是{記憶體,區塊,分頁}=3,14,11。
更進一步,該第二指令BUF_CMD2的該實體位址PBA2指示第一記憶體裝置10的該第三區塊之該第八分頁,即是{記憶體,區塊,分頁}=1,3,8。該第三指令BUF_CMD3的該實體位址PBA3指示第三記憶體裝置30的
該第十一區塊之該第五分頁,即是{記憶體,區塊,分頁}=3,11,5。該第四指令BUF_CMD4的該實體位址PBA4指示第一記憶體裝置10的該第三區塊之該第八分頁,即是{記憶體,區塊,分頁}=1,3,8。該第五指令BUF_CMD5的該實體位址PBA5指示第三記憶體裝置30的該第十區塊之該第二十分頁,即是{記憶體,區塊,分頁}=3,10,20。該第六指令BUF_CMD6的該實體位址PBA6指示第三記憶體裝置30的該第七區塊之該第五分頁,即是{記憶體,區塊,分頁}=3,7,5。
如上所述,儲存在第一記憶體裝置10和第三記憶體裝置30內之該等指令MM_CMD1#和MM_CMD3#的該等實體位址PBA1#和PBA3#之值,也就是該「第一重設記憶體裝置」,與該等第二至第六指令BUF_CMD<2:6>,也就是該「第一重設指令」,的該等實體位址PBA<2:6>之值沒有任何關聯性。
因此,並無指令屬於變成該「第一重設指令」的該等第二至第六指令BUF_CMD<2:6>,因為其符合該第一條件「條件A」並且符合該第二條件「條件B」。所有該等第二至第六指令BUF_CMD<2:6>都分類成該「第四重設指令」。
接下來,根據關於已經變成「第四重設指令」的該等第二至第六指令BUF_CMD<2:6>之每一者,是否滿足該第三條件「條件C」,來決定第三優先權,因為其符合該第一條件「條件A」但是並不符合該第二條件「條件B」。
而是否滿足該第三條件「條件C」,係根據儲存在一或多個「第四重設指令」之每一者內指令MM_CMD#的數量INT#來決定。
此後,描述指令MM_CMD1#和MM_CMD3#的數量分別儲存在第一記憶體裝置10和第三記憶體裝置30內,也就是該「第四重設記憶體裝置」。
首先,只有一個指令MM_CMD11儲存在其中可儲存該等最多四個指令MM_CMD1<1:4>的第一記憶體裝置10之第一空間內。
更進一步,只有一個指令MM_CMD31儲存在其中可儲存該等最多四個指令MM_CMD3<1:4>的第三記憶體裝置30之第一空間內。
如上所述,只有指令MM_CMD11和MM_CMD31分別儲存在第一記憶體裝置10和第三記憶體裝置30內,也就是該「第四重設記憶體裝置」。也就是,第一記憶體裝置10和第三記憶體裝置30都具有較高第三優先權,並且對應至第一記憶體裝置10和第三記憶體裝置30的該等第二至第六指令BUF_CMD<2:6>分類成具有較高第三優先權的「第五重設指令」。
在此案例中,因為只需要選擇該等第二至第六指令BUF_CMD<2:6>其中之一,因此將第一順序指派給屬於該等第二至第六指令BUF_CMD<2:6>並且最上面輸入的該第六指令BUF_CMD6。為此,將該參考編號「1」指派給該第六指令BUF_CMD6,表示該第六指令BUF_CMD6第一個執行。
更進一步,若該第六指令BUF_CMD6執行一次,這表示該第六指令BUF_CMD6被分配至並儲存在第三記憶體裝置30內。因此,有關儲存在第三記憶體裝置30內的指令將改變如下。
兩個指令MM_CMD3<1:2>已經儲存在第三記憶體裝置30內,第三記憶體裝置30的該第一指令MM_CMD31為用於寫入資料的指令,並且第三記憶體裝置30的該第二指令MM_CMD32為用於讀取資料的指令。在此時,指令數量上的該資訊INT3從「1」改變為「2」。底下描述在第三記憶體裝置30的該第一指令MM_CMD31上之執行資訊MM_INFO31。該實體位址PBA31指
示第三記憶體裝置30的該第十四區塊之該第十一分頁,即是{記憶體,區塊,分頁}=3,14,11。底下描述在第三記憶體裝置30的該第二指令MM_CMD32上之執行資訊MM_INFO32。一實體位址PBA32指示第三記憶體裝置30的該第七區塊之該第五分頁,即是{記憶體,區塊,分頁}=3,7,5。第三記憶體裝置30的該第一指令MM_CMD31和第二指令MM_CMD32之總執行時間OT31+32為600us。
如上述,已經利用該重設操作S133透過該等第一至第三條件「條件A」、「條件B」和「條件C」,決定儲存在指令儲存單元50內該等8個指令BUF_CMD<1:8>中該等第六至第八指令BUF_CMD<6:8>之該等執行順序OUT_ORDER<6:8>,但是尚未決定該等剩餘第二至第五指令BUF_CMD<2:5>的該等執行順序OUT_ORDER<2:5>。因此,重複執行該重設操作S133。
指令屬於該等第二至第五指令BUF_CMD<2:5>並且分類成「第一重設指令」,因為其符合該第一條件「條件A」包含該第二指令BUF_CMD2以及該第四指令BUF_CMD4。更進一步,因為並無指令屬於該第二指令BUF_CMD2和該第四指令BUF_CMD4並且符合該第二條件「條件B」,該第二指令BUF_CMD2和該第四指令BUF_CMD4都已分類成「第四重設指令」。更進一步,該第二指令BUF_CMD2和該第四指令BUF_CMD4都為「第五重設指令」,因為其符合該第三條件「條件C」。一第二順序指派給屬於該第二指令BUF_CMD2的該第四指令BUF_CMD4,並且該第四指令BUF_CMD4透過這種處理設定為「第五重設指令」並且最先輸入。
為此,將該參考編號「2」指派給該第四指令BUF_CMD4,表示該第四指令BUF_CMD4第二個執行。
更進一步,若該第四指令BUF_CMD4第二個執行,這表示該第四指令BUF_CMD4被分配至並儲存在第一記憶體裝置10內。因此,有關儲存在第一記憶體裝置10內的指令將改變如下。
該等兩個指令MM_CMD1<1:2>已經儲存在第一記憶體裝置10內,第一記憶體裝置10的該第一指令MM_CMD11為用於寫入資料的指令,並且第一記憶體裝置10的該第二指令MM_CMD12為用於讀取資料的指令。在此時,指令數量上的該資訊INT1從「1」改變為「2」。底下描述在第一記憶體裝置10的該第一指令MM_CMD11上之執行資訊MM_INFO11。該實體位址PBA11指示第一記憶體裝置10的該第十二區塊之該第十一分頁,即是{記憶體,區塊,分頁}=1,12,11。底下描述在第一記憶體裝置10的該第二指令MM_CMD12上之執行資訊MM_INFO12。該實體位址PBA12指示第一記憶體裝置10的該第三區塊之該第八分頁,即是{記憶體,區塊,分頁}=1,3,8。第一記憶體裝置10的該第一指令MM_CMD11和第二指令MM_CMD12之總執行時間OT11+12為600us。
請參閱圖14D,可了解在圖14C內該第六指令BUF_CMD6分配至第三記憶體裝置30以及該第四指令BUF_CMD4分配至第一記憶體裝置10之後,分配該等剩餘第二指令BUF_CMD2、第三指令BUF_CMD3和第五指令BUF_CMD5之處理。
指令屬於該第二指令BUF_CMD2、該第三指令BUF_CMD3和該第五指令BUF_CMD5並且分類成「第一重設指令」,因為其符合該第一條件「條件A」包含該第二B指令UF_CMD2、該第三指令BUF_CMD3和該第五指令BUF_CMD5。更進一步,一指令屬於該第二指令BUF_CMD2、該第三指令
BUF_CMD3和該第五指令BUF_CMD5並且分類成「第三重設指令」,因為其符合該第二條件「條件B」包含該第二BUF_CMD2。尤其是,可了解該第二指令BUF_CMD2符合該第二條件「條件B」,因為該第二指令BUF_CMD2的該實體位址PBA2與第一記憶體裝置10中該第二指令BUF_CMD2的該實體位址PBA12相同,也就是,第一記憶體裝置10的該第三區塊之該第八分頁,即是{記憶體,區塊,分頁}=1,3,8。一第三順序立刻指派給該第二指令BUF_CMD2,不用考慮該第三條件「條件C」。為此,將該參考編號「3」指派給該第二指令BUF_CMD2,表示該第二指令BUF_CMD2第三個執行。
更進一步,若該第二指令BUF_CMD2第三個執行,這表示該第二指令BUF_CMD2被分配至並儲存在第一記憶體裝置10內。因此,有關儲存在第一記憶體裝置10內的指令將改變如下。
三個指令MM_CMD11、MM_CMD12和MM_CMD13已經儲存在第一記憶體裝置10內,第一記憶體裝置10的該第一指令MM_CMD11為一用於寫入資料的指令,並且第一記憶體裝置10的該第二和該第三指令MM_CMD1<2:3>為用於讀取資料的指令。底下描述在第一記憶體裝置10的該第一指令MM_CMD11上之執行資訊MM_INFO11。該實體位址PBA11指示第一記憶體裝置10的該第十二區塊之該第十一分頁,即是{記憶體,區塊,分頁}=1,12,11。底下描述在第一記憶體裝置10的該第二指令MM_CMD12上之執行資訊MM_INFO12。該實體位址PBA12指示第一記憶體裝置10的該第三區塊之該第八分頁,即是{記憶體,區塊,分頁}=1,3,8。底下描述在第一記憶體裝置10的該第三指令MM_CMD13上之執行資訊MM_INFO13。該實體位址PBA13指示第一記憶體裝置10的該第三區塊之該第八分頁,即是{記憶體,區
塊,分頁}=1,3,8。第一記憶體裝置10的該第一指令MM_CMD11、該第二指令MM_CMD12和該第三指令MM_CMD13之總執行時間OT11+12+13為700us。
該第二指令BUF_CMD2的該執行順序OUT_ORDER2已經利用該重設操作S133透過該第一條件「條件A」和該第二條件「條件B」來決定,但是該第三指令BUF_CMD3和該第五指令BUF_CMD5的該等執行順序OUT_ORDER3和OUT_ORDER5尚未決定。因此,重複執行該重設操作S133。
指令屬於該等第三指令BUF_CMD3和第五指令BUF_CMD5並且分類成「第一重設指令」,因為其符合該第一條件「條件A」包含該第三指令BUF_CMD3以及該第五指令BUF_CMD5。更進一步,該第三指令BUF_CMD3和第五指令BUF_CMD5分類成「第四重設指令」,因為並無指令屬於該第三指令BUF_CMD3和第五指令BUF_CMD5並且符合該第二條件「條件B」。更進一步,該第三指令BUF_CMD3和該第五指令BUF_CMD5都分類成「第五重設指令」,因為其符合該第三條件「條件C」。一第四順序指派給屬於該第三指令BUF_CMD3的該第五指令BUF_CMD5,並且該第五指令BUF_CMD5透過這種處理設定為「第五重設指令」並且最先輸入,並且一第五順序指派給該第三指令BUF_CMD3。
因此,參考編號「4」指派給該第五指令BUF_CMD5,代表該第五指令BUF_CMD5第四個執行,並且參考編號「5」指派給該第三指令BUF_CMD3,代表該第三指令BUF_CMD3第五個執行。
更進一步,若該第五指令BUF_CMD5第四個執行並且該第三指令BUF_CMD3第五個執行,這表示該第五指令BUF_CMD5和該第三指令
BUF_CMD3被分配至並儲存在第三記憶體裝置30內。因此,有關儲存在第三記憶體裝置30內的指令將改變如下。
四個指令MM_CMD3<1:4>已經儲存在第三記憶體裝置30內,第三記憶體裝置30的該第一指令MM_CMD31為用於寫入資料的指令,並且第三記憶體裝置30的該第二至第四指令MM_CMD3<2:4>為用於讀取資料的指令。在此時,指令數量上的該資訊INT3從「2」改變為「4」。底下描述在第三記憶體裝置30的該第一指令MM_CMD31上之執行資訊MM_INFO31。該實體位址PBA31指示第三記憶體裝置30的該第十四區塊之該第十一分頁,即是{記憶體,區塊,分頁}=3,14,11。底下描述在第三記憶體裝置30的該第二指令MM_CMD32上之執行資訊MM_INFO32。該實體位址PBA32指示第三記憶體裝置30的該第七區塊之該第五分頁,即是{記憶體,區塊,分頁}=3,7,5。底下描述在第三記憶體裝置30的該第三指令MM_CMD33上之執行資訊MM_INFO33。一實體位址PBA33指示第三記憶體裝置30的該第十區塊之該第二十分頁,即是{記憶體,區塊,分頁}=3,10,20。底下描述在第三記憶體裝置30的該第四指令MM_CMD34上之執行資訊MM_INFO34。一實體位址PBA34指示第三記憶體裝置30的該第十一區塊之該第五分頁,即是{記憶體,區塊,分頁}=3,11,5。第三記憶體裝置30的該第一指令MM_CMD31、第二指令MM_CMD32、第三指令MM_CMD33和第四指令MM_CMD34之總執行時間OT31+32+33+34為800us。
在透過前述重設操作S133決定儲存在指令儲存單元50內該等第二至第五指令BUF_CMD<2:5>的該等執行順序OUT_ORDER<2:5>之後,則依序執行先前已經決定執行順序的該第七指令BUF_CMD7、該第八指令
BUF_CMD8和該第一指令BUF_CMD1。
首先,若該第八指令BUF_CMD8第六個執行並且該第七指令BUF_CMD7第七個執行,這表示該第八指令BUF_CMD8和該第七指令BUF_CMD7被分配至並儲存在第四記憶體裝置40內。因此,有關儲存在第四記憶體裝置40內的指令將改變如下。
四個指令MM_CMD4<1:4>已經儲存在第四記憶體裝置40內,其中第四記憶體裝置40的該第一和該第二指令MM_CMD4<1:2>為用於寫入資料的指令,並且第四記憶體裝置40的該第三和該第四指令MM_CMD4<3:4>為用於讀取資料的指令。在此時,指令數量上的該資訊INT4從「2」改變為「4」。底下將描述在第四記憶體裝置40的該第一指令MM_CMD41上之執行資訊MM_INFO41。該實體位址PBA41指示第四記憶體裝置40的該第十一區塊之該第十九分頁,即是{記憶體,區塊,分頁}=4,11,19。底下將描述在第四記憶體裝置40的該第二指令MM_CMD42上之執行資訊MM_INFO42。該實體位址PBA42指示第四記憶體裝置40的該第十九區塊之該第二十五分頁,即是{記憶體,區塊,分頁}=4,19,25。底下描述在第四記憶體裝置40的該第三指令MM_CMD43上之執行資訊MM_INFO43。一實體位址PBA43指示第四記憶體裝置40的該第九區塊之該第六分頁,即是{記憶體,區塊,分頁}=4,9,6。底下描述在第四記憶體裝置40的該第四指令MM_CMD44上之執行資訊MM_INFO44。一實體位址PBA44指示第四記憶體裝置40的該第九區塊之該第五分頁,即是{記憶體,區塊,分頁}=4,9,5。第四記憶體裝置40的該第一指令MM_CMD41、第二指令MM_CMD42、第三指令MM_CMD43和第四指令MM_CMD44之總執行時間OT41+42+43+44為3200us。
更進一步,若該第一指令BUF_CMD1第八個執行,這表示該第一指令BUF_CMD1被分配至並儲存在第二記憶體裝置20內。因此,有關儲存在第二記憶體裝置20內的指令將改變如下。
該等兩個指令MM_CMD2<1:2>已經儲存在第二記憶體裝置20內,第二記憶體裝置20的該第一指令MM_CMD21為用於寫入資料的指令,並且第二記憶體裝置20的該第二指令MM_CMD22為用於讀取資料的指令。底下將描述在第二記憶體裝置20的該第一指令MM_CMD21上之執行資訊MM_INFO21。該實體位址PBA21指示第二記憶體裝置20的該第五區塊之該第二十二分頁,即是{記憶體,區塊,分頁}=2,5,22。底下描述在第二記憶體裝置20的該第二指令MM_CMD22上之執行資訊MM_INFO22。一實體位址PBA22指示第二記憶體裝置20的該第二區塊之該第一分頁,即是{記憶體,區塊,分頁}=2,2,1。第二記憶體裝置20的該第一指令MM_CMD21和第二指令MM_CMD22之總執行時間OT21+22為22500us。
如上所述,根據本發明的具體實施例,檢查依序接收自一主機的複數個指令之每一者之該等執行條件,並且重新安排執行該等複數個指令的順序。然後,在已經檢查具有不同優先權的多個重新安排條件之後,執行重新安排該等指令順序的操作。
因此,可將記憶體系統效能最大化。
更進一步,該主機用於等待指令的時間具有縮至最短之優點。
雖然已經為了例示目的描述各種具體實施例,不過本發明所屬技術領域中具有通常知識者將了解,在不脫離本發明之精神與範疇之下可進行許多變更與修改,如以下申請專利範圍所定義。
10‧‧‧記憶體裝置
20‧‧‧記憶體裝置
30‧‧‧記憶體裝置
40‧‧‧記憶體裝置
50‧‧‧指令儲存單元
60‧‧‧重設單元
BUF_CMD‧‧‧指令
CMD_INFO‧‧‧執行資訊
MM_INFO‧‧‧執行資訊
OUT_CMD‧‧‧指令
OUT_ORDER‧‧‧執行順序
INT‧‧‧資訊
Claims (20)
- 一種記憶體系統,包含:一指令儲存單元,適合用來儲存從一主機所接收的最多N個指令;K個記憶體裝置,每一者都適合基於該等最多N個指令來儲存最多M個指令並執行每一組操作,以輸入順序回應所儲存的最多M個指令;以及一重設單元,適合用來只要從該主機接收的該等指令儲存在該指令儲存單元內,就基於有關各該K個記憶體裝置內該等最多N個指令與各該最多M個指令的執行資訊,重設該等最多N個指令的執行順序,並將該等N個指令分配至該等K個記憶體裝置,其中該執行資訊包含一邏輯位址、一實體位址、一長度以及一對應指令的使用時間。
- 如申請專利範圍第1項所述之記憶體系統,其中當最近從該主機接收並儲存在該指令儲存單元內的該指令之長度大於一設定長度時,該重設單元從執行順序為要重設的一目標當中排除該指令,設定所排除的指令為一排除指令,並重設剩餘(N-1)個指令的執行順序。
- 如申請專利範圍第2項所述之記憶體系統,其中在將所有該等剩餘(N-1)個指令分配至該等K個記憶體裝置之後,該重設單元將該排除指令分配至該等K個記憶體裝置,並將該主機接收自的一指令分配在該排除指令之後。
- 如申請專利範圍第1項所述之記憶體系統,其中該重設單元適合用來:基於使用儲存在各該K個記憶體裝置內所有該等最多M個指令所需的時間,將該等K個記憶體裝置分類成具有一較高第一優先權的一第一重設記憶體裝置及具有一較低第一優先權的一第二重設記憶體裝置;以及 將屬於該等最多N個指令且對應至該第一重設記憶體裝置的指令設定為第一重設指令,並且將屬於該等最多N個指令並且對應至該第二重設記憶體裝置的指令設定為第二重設指令。
- 如申請專利範圍第4項所述之記憶體系統,其中該重設單元適合用來:將需要相對短的時間來使用儲存在各該K個記憶體裝置內所有該等最多M個指令之一或多個記憶體裝置設定為該第一重設記憶體裝置;以及將該第一重設記憶體裝置以外的剩餘記憶體裝置設定為該第二重設記憶體裝置。
- 如申請專利範圍第4項所述之記憶體系統,其中該重設單元適合用來:基於儲存在一或多個各該第一重設記憶體裝置內該等最多M個指令的該實體位址值與一或多個該等第一重設指令的該實體位址值間之關聯性,將一或多個該等第一重設指令分類成具有一較高第二優先權的一第三重設指令及具有一較低第二優先權的一第四重設指令;將該第三重設指令的一執行順序提升到該第四重設指令的一執行順序之前;以及將對應至該第三重設指令的該第一重設記憶體裝置設定為一第三重設記憶體裝置,並且將對應至該第四重設指令的該第一重設記憶體裝置設定為一第四重設記憶體裝置。
- 如申請專利範圍第6項所述之記憶體系統,其中該重設單元適合用來:基於儲存在一或多個各該第一重設記憶體裝置內該等M個指令的該等實體位址值,將對應至一或多個該等第一重設指令的該等實體位址值為連續且具有相同值的該第一重設指令設定為該第三重設指令;以及 將對應至一或多個該等第一重設指令的該等實體位址值為不連續且不具有相同值的該第一重設指令設定為該第四重設指令。
- 如申請專利範圍第7項所述之記憶體系統,其中該重設單元適合用來:基於儲存在一或多個各該第四重設記憶體裝置內一些指令,將一或多個該等第四重設指令分類成具有一較高第三優先權的一第五重設指令及具有一較低第三優先權的一第六重設指令;以及將該第五重設指令的一執行順序提升到該第六重設指令的一執行順序之前。
- 如申請專利範圍第8項所述之記憶體系統,其中該重設單元適合用來:將屬於一或多個該等第四重設指令且其對應至其中已儲存相對少量指令的該第四重設記憶體裝置之第四重設指令設定為該第五重設指令;以及將該第五重設指令以外之剩餘的第四重設指令設定為該第六重設指令。
- 如申請專利範圍第8項所述之記憶體系統,其中當該重設單元將該等最多N個指令的二或多個指令分類成該等第六重設指令時,則以輸入順序決定該等二或多個第六重設指令的執行順序。
- 如申請專利範圍第8項所述之記憶體系統,其中該重設單元將屬於該等最多N個指令且具有連續邏輯位址值的二或多個指令組合成一群組,並同時對該群組施加該第一優先權至該第三優先權的控制。
- 如申請專利範圍第11項所述之記憶體系統,其中該重設單元控制包含在該群組內的二或多個該等指令之執行順序,使得具有一較前邏輯位址值的一指令被首先使用、具有一較後邏輯位址值的一指令被稍後使用,並且總是連續使用該等指令。
- 如申請專利範圍第1項所述之記憶體系統,其中當接收自該主機的一指令儲存在該指令儲存單元內且一設定指令數量或更多數量已經儲存在該指令儲存單元內時,則該重設單元重設儲存在該指令儲存單元內該等最多N個指令之執行順序,並將該等最多N個指令分配至該等K個記憶體裝置。
- 一種記憶體系統之操作方法,其中該系統包含K個記憶體裝置,每一者都適合基於接收自一主機的最多N個指令來儲存最多M個指令並執行每一組操作,以輸入順序回應該等最多M個指令,該操作方法包含:將來自該主機的該等最多N個指令依序儲存在一集合儲存空間內;以及只要從該主機接收的該等指令儲存在該指令儲存單元內,就根據有關儲存在該集合儲存空間內各該最多N個指令以及儲存在各該K個記憶體裝置內各該最多M個指令之執行資訊,重設儲存在該集合儲存空間內該等最多N個指令的執行順序,並將該等重設的最多N個指令分配至該等K個記憶體裝置,其中該執行資訊包含一邏輯位址、一實體位址、一長度以及一對應指令的使用時間。
- 如申請專利範圍第14項所述之操作方法,其中該等最多N個指令之執行順序的重設以及該等重設的最多N個指令至該等K個記憶體裝置的分配包含:當該最近儲存指令的長度大於一設定長度時,將最近從該主機接收並儲存在該集合儲存空間內的該指令設定為一排除指令;將儲存在該集合儲存空間內該排除指令之前的剩餘(N-1)個指令分配至該等K個記憶體裝置;將該排除指令分配至該等K個記憶體裝置;以及 在該排除指令之後,將接收自該主機的該指令分配至該等K個記憶體裝置內。
- 如申請專利範圍第14項所述之操作方法,其中該等最多N個指令之執行順序的重設以及該等重設的最多N個指令至該等K個記憶體裝置的分配包含:將使用儲存在各該K個記憶體裝置內所有該等最多M個指令所需時間相對短的一記憶體裝置設定為具有一較高第一優先權之一第一重設記憶體裝置,以及將除了該第一重設記憶體裝置以外剩餘記憶體裝置設定為具有一較低第一優先權之一第二重設記憶體裝置;以及將屬於儲存在該集合儲存空間內該等最多N個指令且對應至該第一重設記憶體裝置的該指令設定為一第一重設指令,並且將屬於儲存在該集合儲存空間內該等最多N個指令並且對應至該第二重設記憶體裝置的該指令設定為一第二重設指令。
- 如申請專利範圍第16項所述之操作方法,其中該等最多N個指令之執行順序的重設以及該等重設的最多N個指令至該等K個記憶體裝置的分配包含:根據儲存在一或多個各該第一重設記憶體裝置內該等M個指令的該實體位址值,將對應至當一或多個該等第一重設指令之實體位址值為連續且具有相同值時的該第一重設指令設定為具有一較高第二優先權的一第三重設指令,並且將對應至當一或多個該等第一重設指令之實體位址值為不連續且不具有相同值時的該第一重設指令設定為具有一較低第二優先權的一第四重設指令;將該第三重設指令的一執行順序提升到該第四重設指令的一執行順序之前;以及 將對應至該第三重設指令的該第一重設記憶體裝置設定為一第三重設記憶體裝置,並且將對應至該第四重設指令的該第一重設記憶體裝置設定為一第四重設記憶體裝置。
- 如申請專利範圍第17項所述之操作方法,其中該等最多N個指令之執行順序的重設以及該等重設的最多N個指令至該等K個記憶體裝置的分配包含:將屬於一或多個該等第四重設記憶體裝置,並儲存該具有儲存於一或多個各該第四重設記憶體裝置內相對少量指令的該指令之該第四重設指令,設定為具有一較高第三優先權之一第五重設指令,並且將除了該第五重設指令以外的剩餘第四重設指令設定為第六重設指令;以及將該第五重設指令的一執行順序提升到該第六重設指令的一執行順序之前。
- 如申請專利範圍第18項所述之操作方法,其中該等最多N個指令的該執行順序重設以及該重設的最多N個指令至該等K個記憶體裝置分配,當儲存在該集合儲存空間內的該等最多N個指令之一或多者被分類成該等第六重設指令時,以輸入順序決定二或多個該等第六重設指令的執行順序。
- 如申請專利範圍第18項所述之操作方法,其中屬於儲存在該集合儲存空間內該等最多N個指令並具有連續邏輯位址值的二或多個指令組合成一群組,並且該第一優先權至該第三優先權的控制同時施加於該群組。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150031639A KR102364381B1 (ko) | 2015-03-06 | 2015-03-06 | 메모리 시스템 및 그의 동작방법 |
??10-2015-0031639 | 2015-03-06 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201633138A true TW201633138A (zh) | 2016-09-16 |
TWI648626B TWI648626B (zh) | 2019-01-21 |
Family
ID=56850806
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW104120204A TWI648626B (zh) | 2015-03-06 | 2015-06-23 | 記憶體系統及其操作方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9754675B2 (zh) |
KR (1) | KR102364381B1 (zh) |
CN (1) | CN105938418B (zh) |
TW (1) | TWI648626B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI621021B (zh) * | 2017-08-25 | 2018-04-11 | 慧榮科技股份有限公司 | 用以優化資料儲存裝置之資料儲存方法及其資料儲存裝置 |
TWI643067B (zh) * | 2017-04-14 | 2018-12-01 | 國立臺灣科技大學 | 三維非及閘快閃記憶體及其記憶體管理方法 |
TWI663543B (zh) * | 2016-09-20 | 2019-06-21 | 東芝記憶體股份有限公司 | Memory system |
TWI819086B (zh) * | 2018-11-02 | 2023-10-21 | 南韓商愛思開海力士有限公司 | 半導體裝置和該半導體裝置的操作方法 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9659958B2 (en) * | 2015-10-13 | 2017-05-23 | Samsung Elctronics Co., Ltd. | Three-dimensional semiconductor memory device |
US10983949B2 (en) * | 2016-02-29 | 2021-04-20 | Red Hat, Inc. | File system quota versioning |
KR20190110360A (ko) * | 2018-03-20 | 2019-09-30 | 에스케이하이닉스 주식회사 | 컨트롤러, 이를 포함하는 시스템 및 그 동작 방법 |
US11275527B1 (en) | 2019-06-11 | 2022-03-15 | Western Digital Technologies, Inc. | Execution condition embedded in a command or a request to storage device |
CN112860321A (zh) * | 2021-01-29 | 2021-05-28 | 上海阵量智能科技有限公司 | 命令下发方法、处理设备及存储介质 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI320905B (en) * | 2006-07-21 | 2010-02-21 | Via Tech Inc | Buffer control method and device thereof |
JP2008041207A (ja) * | 2006-08-09 | 2008-02-21 | Sony Corp | 電子機器、制御方法、および制御プログラム |
KR101474344B1 (ko) * | 2008-07-11 | 2014-12-18 | 시게이트 테크놀로지 엘엘씨 | 캐시 플러시 제어 방법 및 이를 이용한 데이터 저장 시스템 |
KR101050339B1 (ko) | 2008-08-19 | 2011-07-19 | 재단법인서울대학교산학협력재단 | 플래시 메모리 장치 및 데이터 읽기 방법 |
KR101505005B1 (ko) | 2008-12-05 | 2015-03-24 | 삼성전자주식회사 | 메모리 장치 및 메모리 장치의 관리 방법 |
CN101770438B (zh) * | 2008-12-31 | 2013-08-28 | 凌阳科技股份有限公司 | 存储器存取的控制系统和方法 |
US8566507B2 (en) * | 2009-04-08 | 2013-10-22 | Google Inc. | Data storage device capable of recognizing and controlling multiple types of memory chips |
KR101662824B1 (ko) * | 2009-07-08 | 2016-10-06 | 삼성전자주식회사 | 고체 상태 드라이브 장치 및 그것의 구동 방법 |
US20120221767A1 (en) | 2011-02-28 | 2012-08-30 | Apple Inc. | Efficient buffering for a system having non-volatile memory |
CN103019971A (zh) * | 2012-11-25 | 2013-04-03 | 向志华 | 快速响应trim命令的方法、SSD控制器及系统 |
US9465555B2 (en) * | 2013-08-12 | 2016-10-11 | Seagate Technology Llc | Method and apparatus for efficient processing of disparate data storage commands |
-
2015
- 2015-03-06 KR KR1020150031639A patent/KR102364381B1/ko active IP Right Grant
- 2015-06-18 US US14/743,947 patent/US9754675B2/en active Active
- 2015-06-23 TW TW104120204A patent/TWI648626B/zh active
- 2015-10-16 CN CN201510674188.2A patent/CN105938418B/zh active Active
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI663543B (zh) * | 2016-09-20 | 2019-06-21 | 東芝記憶體股份有限公司 | Memory system |
TWI643067B (zh) * | 2017-04-14 | 2018-12-01 | 國立臺灣科技大學 | 三維非及閘快閃記憶體及其記憶體管理方法 |
TWI621021B (zh) * | 2017-08-25 | 2018-04-11 | 慧榮科技股份有限公司 | 用以優化資料儲存裝置之資料儲存方法及其資料儲存裝置 |
US10528289B2 (en) | 2017-08-25 | 2020-01-07 | Silicon Motion, Inc. | Data storage method for optimizing data storage device and its data storage device |
TWI819086B (zh) * | 2018-11-02 | 2023-10-21 | 南韓商愛思開海力士有限公司 | 半導體裝置和該半導體裝置的操作方法 |
Also Published As
Publication number | Publication date |
---|---|
KR20160107970A (ko) | 2016-09-19 |
CN105938418B (zh) | 2020-05-08 |
CN105938418A (zh) | 2016-09-14 |
US20160259585A1 (en) | 2016-09-08 |
US9754675B2 (en) | 2017-09-05 |
KR102364381B1 (ko) | 2022-02-18 |
TWI648626B (zh) | 2019-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106708757B (zh) | 存储器系统及其操作方法 | |
CN105989885B (zh) | 存储系统及其操作方法 | |
US10019376B2 (en) | Memory system and operating method thereof | |
TWI648626B (zh) | 記憶體系統及其操作方法 | |
CN105608015B (zh) | 存储系统及其操作方法 | |
CN105739914B (zh) | 数据处理系统及其操作方法 | |
CN106776352B (zh) | 存储器系统和存储器系统的操作方法 | |
CN106710615B (zh) | 存储器系统和存储器系统的操作方法 | |
CN106960679B (zh) | 存储器系统及存储器系统的操作方法 | |
CN106802770B (zh) | 存储器系统及其操作方法 | |
TW201719378A (zh) | 記憶體系統及其操作方法 | |
US9886381B2 (en) | Memory system and operating method thereof | |
CN106933506B (zh) | 存储器系统及存储器系统的操作方法 | |
KR20170050953A (ko) | 메모리 시스템 및 그의 동작방법 | |
CN110390984B (zh) | 存储器系统和存储器系统的操作方法 | |
CN106935264B (zh) | 存储器系统及其操作方法 | |
CN107025065B (zh) | 存储器系统及其操作方法 | |
CN106933505B (zh) | 存储器系统及其操作方法 | |
CN106560781B (zh) | 数据处理系统 | |
CN106775443B (zh) | 存储器系统及其操作方法 | |
CN106775441B (zh) | 存储器系统 | |
CN106126437B (zh) | 存储系统 | |
US10007617B2 (en) | Data processing system and operation method thereof | |
KR20170027036A (ko) | 데이터 처리 시스템 | |
KR20170008339A (ko) | 메모리 시스템 및 메모리 시스템의 동작 방법 |