TWI815462B - 支援用於記憶體之資料失效之方法及設備 - Google Patents
支援用於記憶體之資料失效之方法及設備 Download PDFInfo
- Publication number
- TWI815462B TWI815462B TW111118840A TW111118840A TWI815462B TW I815462 B TWI815462 B TW I815462B TW 111118840 A TW111118840 A TW 111118840A TW 111118840 A TW111118840 A TW 111118840A TW I815462 B TWI815462 B TW I815462B
- Authority
- TW
- Taiwan
- Prior art keywords
- memory
- data
- scrambling
- addresses
- address
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 230000006870 function Effects 0.000 claims description 46
- 238000004891 communication Methods 0.000 claims description 19
- 238000012360 testing method Methods 0.000 claims description 18
- 230000004044 response Effects 0.000 claims description 17
- 230000008439 repair process Effects 0.000 claims description 13
- 230000002950 deficient Effects 0.000 claims description 7
- 230000008569 process Effects 0.000 claims description 7
- 239000003990 capacitor Substances 0.000 description 13
- 230000000875 corresponding effect Effects 0.000 description 9
- 238000012937 correction Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 239000000758 substrate Substances 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000010287 polarization Effects 0.000 description 5
- 239000004065 semiconductor Substances 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000011664 signaling Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 239000000523 sample Substances 0.000 description 3
- XEEYBQQBJWHFJM-UHFFFAOYSA-N Iron Chemical compound [Fe] XEEYBQQBJWHFJM-UHFFFAOYSA-N 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 2
- 239000000969 carrier Substances 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 239000004020 conductor Substances 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 238000013075 data extraction Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- JBRZTFJDHDCESZ-UHFFFAOYSA-N AsGa Chemical compound [As]#[Ga] JBRZTFJDHDCESZ-UHFFFAOYSA-N 0.000 description 1
- ZOXJGFHDIHLPTG-UHFFFAOYSA-N Boron Chemical compound [B] ZOXJGFHDIHLPTG-UHFFFAOYSA-N 0.000 description 1
- 229910002601 GaN Inorganic materials 0.000 description 1
- 229910001218 Gallium arsenide Inorganic materials 0.000 description 1
- JMASRVWKEDWRBT-UHFFFAOYSA-N Gallium nitride Chemical compound [Ga]#N JMASRVWKEDWRBT-UHFFFAOYSA-N 0.000 description 1
- OAICVXFJPJFONN-UHFFFAOYSA-N Phosphorus Chemical compound [P] OAICVXFJPJFONN-UHFFFAOYSA-N 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 229910000577 Silicon-germanium Inorganic materials 0.000 description 1
- LEVVHYCKPQWKOP-UHFFFAOYSA-N [Si].[Ge] Chemical compound [Si].[Ge] LEVVHYCKPQWKOP-UHFFFAOYSA-N 0.000 description 1
- 229910045601 alloy Inorganic materials 0.000 description 1
- 239000000956 alloy Substances 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 229910052785 arsenic Inorganic materials 0.000 description 1
- RQNWIZPPADIBDY-UHFFFAOYSA-N arsenic atom Chemical compound [As] RQNWIZPPADIBDY-UHFFFAOYSA-N 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 229910052796 boron Inorganic materials 0.000 description 1
- 239000013626 chemical specie Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005669 field effect Effects 0.000 description 1
- 230000008014 freezing Effects 0.000 description 1
- 238000007710 freezing Methods 0.000 description 1
- 229910052732 germanium Inorganic materials 0.000 description 1
- GNPVGFCGXDBREM-UHFFFAOYSA-N germanium atom Chemical compound [Ge] GNPVGFCGXDBREM-UHFFFAOYSA-N 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 239000012212 insulator Substances 0.000 description 1
- 238000005468 ion implantation Methods 0.000 description 1
- 229910052742 iron Inorganic materials 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 239000006249 magnetic particle Substances 0.000 description 1
- 229910052751 metal Inorganic materials 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 229910052698 phosphorus Inorganic materials 0.000 description 1
- 239000011574 phosphorus Substances 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 229910052594 sapphire Inorganic materials 0.000 description 1
- 239000010980 sapphire Substances 0.000 description 1
- 230000007781 signaling event Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
- G06F21/79—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/062—Securing storage systems
- G06F3/0623—Securing storage systems in relation to content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/44—Indication or identification of errors, e.g. for repair
- G11C29/4401—Indication or identification of errors, e.g. for repair for self repair
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/588—Random number generators, i.e. based on natural stochastic processes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/08—Randomization, e.g. dummy operations or using noise
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Power Engineering (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Peptides Or Proteins (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Storage Device Security (AREA)
Abstract
描述用於記憶體操作之方法、系統及裝置。在一第一事件之一發生之後,可針對一記憶體裝置之第一位址產生第一擾亂序列,其中該等第一位址可與在該記憶體裝置處接收之命令相關聯。可基於該等第一擾亂序列存取該記憶體陣列之對應於該等第一位址之部分。在一後續事件之一發生之後,可針對該等第一位址產生第二擾亂序列,其中該等第二擾亂序列可不同於第一擾亂序列。在該後續事件之該發生之後,可基於該等第二擾亂序列存取該記憶體陣列之該等部分。
Description
本技術領域係關於用於記憶體之資料失效。
記憶體裝置廣泛用來將資訊儲存於各種電子裝置中,諸如電腦、使用者裝置、無線通信裝置、相機、數位顯示器及類似者。藉由將一記憶體裝置內之記憶體胞元程式化為各種狀態而儲存資訊。例如,二進位記憶體胞元可程式化為兩種支援狀態之一者,其等通常由一邏輯1或一邏輯0表示。在一些實例中,單個記憶體胞元可支援多於兩種狀態,可儲存該等狀態之任一者。為了存取經儲存資訊,該裝置之一組件可讀取或感測記憶體裝置中之至少一種經儲存狀態。為了儲存資訊,該裝置之一組件可將狀態寫入或程式化於記憶體裝置中。
存在各種類型之記憶體裝置,包含磁性硬碟、隨機存取記憶體(RAM)、唯讀記憶體(ROM)、動態RAM(DRAM)、同步動態RAM(SDRAM)、靜態RAM(SRAM)、鐵電RAM(FeRAM)、磁性RAM(MRAM)、電阻式RAM(RRAM)、快閃記憶體、相變記憶體(PCM)等等。即使在不存在一外部電源之情況下,非揮發性記憶體,例如FeRAM亦可長時間維持其等經儲存邏輯狀態。當與一外部電源斷開連接時,揮發性記憶體裝置,例如DRAM可能丟失其等經儲存狀態。FeRAM可能夠達
成類似於揮發性記憶體之密度,但歸因於使用一鐵電電容器作為一儲存裝置而可能具有非揮發性性質。
100:系統
105:主機裝置
110:記憶體裝置
115:通道
120:外部記憶體控制器
125:處理器
130:基本輸入/輸出系統(BIOS)組件
135:匯流排
155:裝置記憶體控制器
160-a:記憶體晶粒
160-b:記憶體晶粒
160-N:記憶體晶粒
165-a:本端記憶體控制器
165-b:本端記憶體控制器
165-N:本端記憶體控制器
170-a:記憶體陣列
170-b:記憶體陣列
170-N:記憶體陣列
186:命令及位址(CA)通道
188:時脈信號(CK)通道
190:資料(DQ)通道
192:其他通道
200:記憶體晶粒
205:記憶體胞元
210:字線
215:數位線
220:板線
225:列解碼器
230:行解碼器
235:板驅動器
240:電容器
245:切換組件
250:感測組件
255:參考
260:輸入/輸出
265:本端記憶體控制器
300:記憶體裝置
303:記憶體陣列
305:熔絲陣列
306:第一組熔絲
307:第二組熔絲
309:測試組件
310-1:第一記憶體庫
315:資料提取電路系統
320:錯誤校正電路系統
330:資料路徑多工器
335:擾亂序列產生器
340:隨機數產生器
345:雜湊電路系統
350:擾亂器
353:互斥或(XOR)邏輯
355:外部介面
360:命令介面
365:位址解碼器
370:資料介面
400:流程圖
405:方塊
410:方塊
415:方塊
420:方塊
425:方塊
430:方塊
500:流程圖
505:方塊
510:方塊
515:方塊
520:方塊
525:方塊
530:方塊
535:方塊
540:方塊
545:方塊
550:方塊
555:方塊
600:方塊圖
620:記憶體陣列
625:擾亂序列產生器
630:資料組件
635:命令介面
640:資料介面
645:隨機數產生器
700:方法
705:操作
710:操作
715:操作
720:操作
圖1繪示根據如本文中所揭示之實例之支援用於記憶體之資料失效之一系統之一實例。
圖2繪示根據如本文中所揭示之實例之支援用於記憶體之資料失效之一記憶體晶粒之一實例。
圖3繪示根據如本文中所揭示之實例之支援用於記憶體之資料失效之一記憶體裝置之一實例。
圖4及圖5繪示根據如本文中所揭示之實例之支援用於記憶體之資料失效之流程圖之實例。
圖6展示根據如本文中所揭示之實例之支援用於記憶體之資料失效之一記憶體陣列之一方塊圖。
圖7展示繪示根據如本文中所揭示之實例之支援用於記憶體之資料失效之一或若干方法之一流程圖。
本專利申請案主張Vimercati等人在2021年5月26日申請、標題為「DATA INVALIDATION FOR MEMORY」之美國專利申請案第17/331,578號之優先權,該案讓渡給其受讓人,且其全文以引用的方式明確地併入本文中。
一記憶體裝置可包含非揮發性記憶體胞元、揮發性記憶體
胞元或兩者。非揮發性記憶體胞元可在自記憶體裝置移除電力時保持其等邏輯狀態,而揮發性記憶體胞元可在自記憶體裝置移除電力時(例如,幾乎瞬時)丟失其等邏輯狀態。基於儲存於揮發性記憶體胞元中之資料將在自記憶體裝置移除電力時變為無效之理解,一主機裝置處之一應用程式可將敏感資訊儲存於揮發性記憶體胞元中。
然而,在一些實例中,一記憶體裝置可包含具有非揮發性性質(例如,可在自記憶體裝置移除電力時保持記憶體胞元之邏輯狀態)及揮發性性質(例如,記憶體胞元之邏輯狀態可在經過一段時間之後降級並丟失)。鐵電隨機存取記憶體(FeRAM)胞元可為具有非揮發性及揮發性性質兩者之記憶體胞元之一實例,以及諸如PCM胞元、MRAM胞元及類似者之其他技術。此外,即使傳統上被認為係揮發性之記憶體胞元亦可能在某種程度上展現非揮發性,其中邏輯狀態被保持達某一持續時間(儘管相對於傳統上被認為係非揮發性之記憶體胞元而言,可能係一短持續時間)。因此,在一些情況下,揮發性可能係一程度問題,且一給定類型之一記憶體胞元展現非揮發性(例如,在不存在電力之情況下保留資料)之程度(例如,持續時間)可取決於一或多個條件(例如,該記憶體胞元之一溫度)。因此,在一些情況下,任何類型之記憶體胞元可被視為在某種程度上具有非揮發性及揮發性性質兩者。
在一些情況下,一主機裝置處之應用程式可將敏感資訊儲存(例如,寫入、程式化)至記憶體胞元。若記憶體胞元至少展現一些非揮發性性質,則敏感資訊可能容易受到不必要資料搜集嘗試(例如,由網路罪犯)之影響。例如,存取記憶體裝置(包含在記憶體裝置與一電源斷開連接之後)之一惡意行為者可能夠藉由檢查由記憶體胞元保持之邏輯狀態而
存取所儲存資料。
為了使儲存敏感資料之應用程式能夠使用主要包含具有非揮發性性質之記憶體胞元(例如,至少展現某種程度之非揮發性之記憶體胞元,即使在一些情況下此等記憶體胞元亦展現某種程度之揮發性)之一記憶體裝置,可建立用於在一事件之發生之後使儲存於記憶體胞元中之資料失效之技術。在一些實例中,在發生一第一事件(例如,一通電事件)之後,可針對記憶體裝置之一或多個位址產生一或多個擾亂序列,例如,在接收與存取一或多個位址處之記憶體胞元(例如,一記憶體胞元頁面或一預取記憶體胞元群組)相關聯之命令時。一或多個擾亂序列可用來存取一或多個位址處之記憶體胞元,例如,以在將資料寫入至記憶體胞元之前擾亂資料且對自記憶體胞元讀取之資料進行解擾。在一些實例中,在發生一後續事件(例如,另一通電事件)之後,可針對記憶體裝置之一或多個位址產生一或多個不同擾亂序列,其中該等不同擾亂序列可用來存取一或多個位址處之記憶體胞元,因此使儲存於記憶體胞元中之資料失效。
在一些實例中,實施一雜湊函數之電路系統用來基於與在記憶體裝置處接收之命令相關聯之位址及回應於事件之發生而產生之一第一隨機數產生一或多個擾亂序列。雜湊函數亦可用來基於與在記憶體裝置處接收之第二命令相關聯之位址及回應於隨後事件之發生而產生之一第二隨機數產生一或多個不同擾亂序列。一雜湊函數可基於隨機數之小變化而針對記憶體裝置之位址產生實質上不同的擾亂序列。
藉由基於一事件之發生針對記憶體裝置之位址產生新擾亂序列集,可使在該事件之發生之前儲存於記憶體胞元中之資料失效。再者,藉由針對記憶體裝置之位址產生不同擾亂序列(例如,代替針對記憶
體裝置產生一個擾亂序列),與對儲存於記憶體裝置處之資料進行解擾(例如,由一惡意行為者)相關聯之一複雜性可增加。
最初在系統及晶粒之背景下描述本發明之特徵。亦在記憶體裝置及流程圖之背景內容中描述本發明之特徵。本發明之此等及其他特徵係藉由與用於記憶體之資料失效相關之設備圖及流程圖進一步繪示且參考該等設備圖及流程圖進行描述。
圖1繪示根據如本文中所揭示之實例之支援用於記憶體之資料失效之一系統100之一實例。系統100可包含一主機裝置105、一記憶體裝置110及將主機裝置105與記憶體裝置110耦合之複數個通道115。系統100可包含一或多個記憶體裝置110,但可在單個記憶體裝置(例如,記憶體裝置110)之背景內容中描述一或多個記憶體裝置110之態樣。
系統100可包含一電子裝置之部分,諸如一運算裝置、一行動運算裝置、一無線裝置、一圖形處理裝置、一車輛或其他系統。例如,系統100可繪示一電腦、一膝上型電腦、一平板電腦、一智慧型電話、一蜂巢電話、一可穿戴裝置、一網際網路連接裝置、一車輛控制器或類似者之態樣。記憶體裝置110可為該系統之可操作以儲存系統100之一或多個其他組件之資料之一組件。
系統100之至少部分可為主機裝置105之實例。主機裝置105可為使用記憶體來執行程序之一裝置內,諸如一運算裝置、一行動運算裝置、一無線裝置、一圖形處理裝置、一電腦、一膝上型電腦、一平板電腦、一智慧型電話、一蜂巢電話、一可穿戴裝置、一網際網路連接裝置、一車輛控制器、一系統單晶片(SoC)或某一其他固定或可攜式電子裝置以及其他實例內之一處理器或其他電路系統之一實例。在一些實例中,
主機裝置105可指代實施一外部記憶體控制器120之功能之硬體、韌體、軟體或其等組合。在一些實例中,外部記憶體控制器120可被稱為主機或主機裝置105。
一記憶體裝置110可為可操作以提供可由系統100使用或引用之實體記憶體位址/空間之一獨立裝置或一組件。在一些實例中,一記憶體裝置110可組態以與一或多種不同類型之主機裝置一起工作。主機裝置105與記憶體裝置110之間的傳訊可為可操作以支援以下一或多者:用來調變信號之調變方案;用於傳達信號之各種接腳組態;用於主機裝置105及記憶體裝置110之實體封裝之各種外觀尺寸;主機裝置105與記憶體裝置110之間的時脈傳訊及同步;時序約定;或其他因素。
記憶體裝置110可為可操作以儲存用於主機裝置105之組件之資料。在一些實例中,記憶體裝置110可充當主機裝置105之一輔助型或從屬型裝置(例如,回應於且執行由主機裝置105透過外部記憶體控制器120提供之命令)。此等命令可包含用於一寫入操作之一寫入命令、用於一讀取操作之一讀取命令、用於一再新操作之一再新命令或其他命令之一或多者。
主機裝置105可包含一外部記憶體控制器120、一處理器125、一基本輸入/輸出系統(BIOS)組件130或其他組件(諸如一或多個周邊組件或一或多個輸入/輸出控制器)之一或多者。主機裝置105之組件可使用一匯流排135彼此耦合。
處理器125可為可操作以針對系統100之至少部分或主機裝置105之至少部分提供控制或其他功能性。處理器125可為一通用處理器、一數位信號處理器(DSP)、一特定應用積體電路(ASIC)、一場可程式
化閘陣列(FPGA)或其他可程式化邏輯裝置、離散閘或電晶體邏輯、離散硬體組件或此等組件之一組合。在此等實例中,處理器125可為一中央處理單元(CPU)、一圖形處理單元(GPU)、一通用GPU(GPGPU)或一SoC之一實例以及其他實例。在一些實例中,外部記憶體控制器120可由處理器125實施或為處理器125之一部分。
BIOS組件130可為包含操作為韌體之一BIOS之一軟體組件,其可初始化及運行系統100或主機裝置105之各種硬體組件。BIOS組件130亦可管理處理器125與系統100或主機裝置105之各種組件之間的資料流。BIOS組件130可包含儲存於唯讀記憶體(ROM)、快閃記憶體或其他非揮發性記憶體之一或多者中之一程式或軟體。
記憶體裝置110可包含用來支援用於資料儲存之一所要容量或一指定容量之一裝置記憶體控制器155及一或多個記憶體晶粒160(例如,記憶體晶片)。各記憶體晶粒160(例如,記憶體晶粒160-a、記憶體晶粒160-b、記憶體晶粒160-N)可包含一本端記憶體控制器165(例如,本端記憶體控制器165-a、本端記憶體控制器165-b、本端記憶體控制器165-N)及一記憶體陣列170(例如,記憶體陣列170-a、記憶體陣列170-b、記憶體陣列170-N)。一記憶體陣列170可為一記憶體胞元集合(例如,一或多個柵格、一或多個記憶庫、一或多個微磚、一或多個區段),其中各記憶體胞元可操作以儲存至少一個資料位元。包含兩個或更多個記憶體晶粒160之一記憶體裝置110可被稱為多晶粒記憶體或多晶粒封裝或多晶片記憶體或多晶片封裝。
裝置記憶體控制器155可包含可操作以控制記憶體裝置110之操作之電路、邏輯或組件。裝置記憶體控制器155可包含使記憶體裝置
110能夠執行各種操作之硬體、韌體或指令且可操作以接收、傳輸或執行與記憶體裝置110之組件相關之命令、資料或控制資訊。裝置記憶體控制器155可為可操作以與外部記憶體控制器120、一或多個記憶體晶粒160、或處理器125之一或多者進行通信。在一些實例中,裝置記憶體控制器155可控制本文中結合記憶體晶粒160之本端記憶體控制器165所描述之記憶體裝置110之操作。
在一些實例中,記憶體裝置110可自主機裝置105接收資料或命令或兩者。例如,記憶體裝置110可接收指示記憶體裝置110欲儲存主機裝置105之資料之一寫入命令或指示記憶體裝置110欲將儲存於一記憶體晶粒160中之資料提供至主機裝置105之一讀取命令。
一本端記憶體控制器165(例如,在一記憶體晶粒160本端)可包含可操作以控制記憶體晶粒160之操作之電路、邏輯或組件。在一些實例中,一本端記憶體控制器165可為可操作以與裝置記憶體控制器155進行通信(例如,接收或傳輸資料或命令或兩者)。在一些實例中,一記憶體裝置110可不包含一裝置記憶體控制器155及一本端記憶體控制器165,或外部記憶體控制器120可執行本文中所描述之各種功能。因而,一本端記憶體控制器165可為可操作以與裝置記憶體控制器155進行通信,與其他本端記憶體控制器165進行通信,或與外部記憶體控制器120或處理器125或其等組合直接通信。可包含於裝置記憶體控制器155或本端記憶體控制器165或兩者中之組件之實例可包含用於(例如,自外部記憶體控制器120)接收信號之接收器、用於傳輸信號(例如,至外部記憶體控制器120)之傳輸器、用於解碼或解調變經接收信號之解碼器、用於編碼或調變待傳輸信號之編碼器、或可操作用於支援裝置記憶體控制器155或本端記憶體
控制器165或兩者之所描述操作之各種其他電路或控制器。
外部記憶體控制器120可為可操作以實現系統100或主機裝置105之組件(例如,處理器125)與記憶體裝置110之間的資訊、資料或命令之一或多者之傳達。外部記憶體控制器120可轉換或轉譯在主機裝置105與記憶體裝置110之組件之間交換之通信。在一些實例中,可由處理器125實施本文中所描述之外部記憶體控制器120或系統100或主機裝置105之其他組件,或其功能。例如,外部記憶體控制器120可為由處理器125或系統100或主機裝置105之其他組件實施之硬體、韌體或軟體,或其等某一組合。儘管外部記憶體控制器120被描繪為在記憶體裝置110外部,但在一些實例中,可由一記憶體裝置110之一或多個組件(例如,一裝置記憶體控制器155、一本端記憶體控制器165)實施本文中所描述之外部記憶體控制器120或其功能,或反之亦然。
主機裝置105之組件可使用一或多個通道115與記憶體裝置110交換資訊。通道115可為可操作以支援外部記憶體控制器120與記憶體裝置110之間的通信。各通道115可為在主機裝置105與該記憶體裝置之間載送資訊之傳輸媒體之實例。各通道115可包含在與系統100之組件相關聯之端子之間的一或多個信號路徑或傳輸媒體(例如,導體)。一信號路徑可為可操作以載送一信號之一導電路徑之一實例。例如,一通道115可包含一第一端子,該第一端子包含在主機裝置105處之一或多個接腳或墊及在記憶體裝置110處之一或多個接腳或墊。一接腳可為系統100之一裝置之一導電輸入或輸出點之一實例,且一接腳可為可操作以充當一通道之部分。
通道115(及相關聯信號路徑及端子)可專用於傳達一或多
種類型之資訊。例如,通道115可包含一或多個命令及位址(CA)通道186、一或多個時脈信號(CK)通道188、一或多個資料(DQ)通道190、一或多個其他通道192或其等組合。在一些實例中,可使用單倍資料速率(SDR)傳訊或雙倍資料速率(DDR)傳訊透過通道115傳達傳訊。在SDR傳訊中,可針對各時脈循環(例如,在一時脈信號之一上升或下降邊緣上)登記一信號之一個調變符號(例如,信號位準)。在DDR傳訊中,可針對各時脈循環(例如,在一時脈信號之一上升邊緣及一下降邊緣兩者上)登記一信號之兩個調變符號(例如,信號位準)。
在一些實例中,CA通道186可為可操作以在主機裝置105與記憶體裝置110之間傳達命令,包含與命令相關聯之控制資訊(例如,位址資訊)。例如,由CA通道186攜載之命令可攜載具有所要資料之一位址之一讀取命令。在一些實例中,一CA通道186可包含用來對位址或命令資料之一或多者進行解碼之任何數量之信號路徑(例如,八個或九個信號路徑)。
在一些實例中,資料通道190可為可操作以在主機裝置105與記憶體裝置110之間傳達資料或控制資訊之一或多者。例如,資料通道190可傳達待寫入至記憶體裝置110之資訊(例如,雙向)或自記憶體裝置110讀取之資訊。
通道115可包含任何數量之信號路徑(包含單個信號路徑)。在一些實例中,一通道115可包含多個個別信號路徑。例如,一通道可為x4(例如,包含四個信號路徑)、x8(例如,包含八個信號路徑)、x16(包含十六個信號路徑)等。
一記憶體裝置110可在一第一事件之一發生之後針對記憶
體裝置110之第一位址產生第一擾亂序列。在一些實例中,第一位址可與在記憶體裝置110處接收之命令相關聯。在第一事件之發生之後,記憶體裝置110可使用第一擾亂序列存取對應於第一位址之一記憶體陣列170之部分。在一後續事件之發生之後,記憶體裝置110可針對第一位址產生第二擾亂序列。在一些實例中,第二擾亂序列可不同於第一擾亂序列。在後續事件之發生之後,記憶體裝置110可使用第二擾亂序列存取記憶體陣列170之部分。
圖2繪示根據如本文中所揭示之實例之支援用於記憶體之資料失效之一記憶體晶粒200之一實例。記憶體晶粒200可為參考圖1所描述之記憶體晶粒160之一實例。在一些實例中,記憶體晶粒200可被稱為記憶體晶片、記憶體裝置或電子記憶體設備。記憶體晶粒200可包含一或多個記憶體胞元205,該一或多個記憶體胞元可各為可程式化以儲存不同邏輯狀態(例如,程式化為一組兩種或更多種可能狀態之一者)。例如,一記憶體胞元205可為可操作以一次儲存一個資訊位元(例如,一邏輯0或一邏輯1)。在一些實例中,一記憶體胞元205(例如,一多位階記憶體胞元)可為可操作以一次儲存多於一個資訊位元(例如,邏輯00、邏輯01、邏輯10、邏輯11)。在一些實例中,記憶體胞元205可配置成一陣列,諸如參考圖1描述之一記憶體陣列170。
一記憶體胞元205可儲存代表一電容器中之可程式化狀態之一狀態(例如,極化狀態或介電電荷)。在FeRAM架構中,記憶體胞元205可包含一電容器240,該電容器包含一鐵電材料以儲存代表可程式化狀態之一電荷及/或一極化。記憶體胞元205可包含諸如電容器240之一邏輯儲存組件,及一切換組件245。電容器240可為一鐵電電容器之一實
例。電容器240之一第一節點可與切換組件245耦合且電容器240之一第二節點可與一板線220耦合。切換組件245可為一電晶體或任何其他類型之切換裝置之一實例,其選擇性地建立或解除建立兩個組件之間的電子通信。
記憶體晶粒200可包含配置成一圖案,諸如一柵格狀圖案之存取線(例如,字線210、數位線215及板線220)。一存取線可為與一記憶體胞元205耦合之一導電線且可用來對記憶體胞元205執行存取操作。在一些實例中,字線210可被稱為列線。在一些實例中,數位線215可被稱為行線或位元線。在不失理解或操作之情況下,對存取線、列線、行線、字線、數位線、位元線或板線或其等類似物之引用可互換。記憶體胞元205可定位於字線210、數位線215及/或板線220之相交點處。
可藉由啟動或選擇諸如一字線210、一數位線215及/或一板線220之存取線而對記憶體胞元205執行諸如讀取及寫入之操作。藉由加偏壓於一字線210、一數位線215及一板線220(例如,將一電壓施加至字線210、數位線215或板線220),可在其等相交點處存取單個記憶體胞元205。啟動或選擇一字線210、一數位線215或一板線220可包含將一電壓施加至各自線。
可透過一列解碼器225、一行解碼器230及一板驅動器235控制存取記憶體胞元205。例如,一列解碼器225可自本端記憶體控制器265接收一列位址且基於經接收列位址啟動一字線210。一行解碼器230自本端記憶體控制器265接收一行位址且基於經接收行位址啟動一數位線215。板驅動器235可自本端記憶體控制器265接收一板位址且基於經接收板位址啟動一板線220。
選擇或取消選擇記憶體胞元205可藉由啟動或撤銷啟動切換組件245而完成。電容器240可使用切換組件245與數位線215進行電子通信。例如,電容器240可在切換組件245被撤銷啟動時與數位線215隔離,且電容器240在切換組件245被啟動時與數位線215耦合。
感測組件250可判定儲存於記憶體胞元205之電容器240上之一狀態(例如,一極化狀態或一電荷)且基於經偵測狀態判定記憶體胞元205之一邏輯狀態。感測組件250可包含用來放大記憶體胞元205之信號輸出之一或多個感測放大器。感測組件250可比較跨數位線215自記憶體胞元205接收之信號與一參考255(例如,一參考電壓)。記憶體胞元205之經偵測邏輯狀態可作為感測組件250之一輸出提供(例如,至一輸入/輸出260),且可向包含記憶體晶粒200之一記憶體裝置110之另一組件指示經偵測邏輯狀態。
本端記憶體控制器265可透過各種組件(例如,列解碼器225、行解碼器230、板驅動器235及感測組件250)控制記憶體胞元205之操作。本端記憶體控制器265可為參考圖1所描述之本端記憶體控制器165之一實例。在一些實例中,列解碼器225、行解碼器230、板驅動器235及感測組件250之一或多者可與本端記憶體控制器265共置。本端記憶體控制器265可為可操作以自一或多個不同記憶體控制器(例如,與一主機裝置105相關聯之一外部記憶體控制器120、與記憶體晶粒200相關聯之另一控制器)接收命令或資料之一或多者,將命令或資料(或兩者)轉譯成可由記憶體晶粒200使用之資訊,對記憶體晶粒200執行一或多個操作,且基於執行一或多個操作而將資料自記憶體晶粒200傳達至一主機裝置105。本端記憶體控制器265可產生列信號及行位址信號以啟動目標字線210、目
標數位線215及目標板線220。本端記憶體控制器265亦可產生及控制在記憶體晶粒200之操作期間所使用之各種電壓或電流。一般而言,本文中所論述之一經施加電壓或電流之振幅、形狀、或持續時間可變動且可針對在操作記憶體晶粒200中所論述之各種操作而不同。
本端記憶體控制器265可為可操作以對記憶體晶粒200之一或多個記憶體胞元205執行一或多個存取操作。存取操作之實例可包含一寫入操作、一讀取操作、一再新操作、一預充電操作或一啟動操作等等。在一些實例中,可藉由本端記憶體控制器265回應於(例如,來自一主機裝置105之)各種存取命令而執行或以其他方式協調存取操作。本端記憶體控制器265可為可操作以執行此處未列出之其他存取操作或與記憶體晶粒200之操作相關但與存取記憶體胞元205不直接相關之其他操作。
包含一或多個記憶體晶粒,諸如記憶體晶粒200之一記憶體裝置可包含非揮發性記憶體胞元(例如,與非(NAND)記憶體胞元)、揮發性記憶體胞元(例如,DRAM胞元)或兩者。一非揮發性記憶體胞元可被程式化於可在未將電壓施加至該記憶體胞元或未跨該記憶體胞元施加電壓時(例如,在記憶體晶粒與一電源斷開連接時)保持之多個穩定邏輯狀態之一者中。非揮發性記憶體胞元可在記憶體晶粒斷電之後保持其等經程式化邏輯狀態達數月或數年。因此,當記憶體晶粒重新連接至電源時,在記憶體晶粒之操作期間由一非揮發性記憶體胞元儲存之資料可在記憶體晶粒之後存取。相比之下,一揮發性記憶體胞元可被程式化於可在一電壓不再施加至記憶體胞元或不再跨記憶體胞元施加電壓之情況下(例如,在記憶體晶粒與一電源斷開連接之情況下)丟失之多個不穩定邏輯狀態之一者中。揮發性記憶體胞元可能在記憶體晶粒斷電數秒內失去其等邏輯狀態。在一
些實例中,可在記憶體晶粒200之操作期間使用週期性再新操作來維持揮發性記憶體胞元之一邏輯狀態。
在一些實例中,記憶體裝置可包含一記憶體晶粒,該記憶體晶粒具有展現非揮發性性質(例如,可在自記憶體裝置移除電力時保持記憶體胞元之邏輯狀態)及揮發性性質(例如,記憶體胞元之邏輯狀態可能在經過一段時間之後降級並丟失)之記憶體胞元。例如,記憶體晶粒可包含被程式化成可在記憶體晶粒斷電時保持之多個穩定邏輯狀態之一者之記憶體胞元。然而,一旦記憶體晶粒斷電,記憶體胞元之邏輯狀態便可迅速降級(相對於非揮發性記憶體胞元)。即,此等記憶體胞元可能在記憶體晶粒斷電數分鐘、數小時或數天內失去其等邏輯狀態。
在一些實例中,一FeRAM胞元係展現非揮發性及揮發性性質之一記憶體胞元之一實例,且記憶體晶粒200可為包含具有非揮發性及揮發性性質之記憶體胞元之一記憶體晶粒之一實例。即,一FeRAM胞元之一剩餘極化可在未將電壓施加至FeRAM胞元或未跨FeRAM胞元施加電壓時儲存FeRAM胞元之邏輯狀態。然而,FeRAM胞元之剩餘極化可能相對於非揮發性記憶體胞元迅速降級,例如,在數分鐘、數小時或數天內。在一些實例中,一DRAM胞元係展現非揮發性及揮發性性質之一記憶體胞元之一實例,例如,基於在其間DRAM胞元在失去電力之後保持其狀態之短持續時間。在一些實例中,一DRAM胞元保持其狀態之持續時間可藉由凍結包含DRAM胞元之記憶體晶粒來延長。
在一些實例中,記憶體裝置可包含記憶體晶粒200。在一些實例中,記憶體晶粒200可用來儲存相關聯於與記憶體晶粒200耦合之一主機裝置(或一主機裝置之一使用者)之敏感資訊(例如,信用卡資訊、
個人資訊、位置資訊等),例如,針對在主機裝置上運行之一應用程式。在一些實例中,基於記憶體晶粒200包含揮發性記憶體胞元(例如,若記憶體晶粒200係一DRAM裝置),主機裝置處之一應用程式可使用記憶體晶粒200來儲存敏感資訊,例如,若記憶體晶粒200包含揮發性及非揮發性記憶體胞元兩者,則主機裝置處之一應用程式可將敏感資訊儲存於記憶體晶粒200之揮發性記憶體胞元中。在一些實例中,主機裝置處之一應用程式將敏感資訊儲存於記憶體晶粒200之揮發性記憶體胞元中,應理解,當記憶體晶粒200與一電源斷開連接時,先前儲存於記憶體晶粒200中之資料將變為無效,例如基於在電源斷開連接時丟失記憶體胞元之邏輯狀態。
在一些實例中,沒有(或少量)揮發性記憶體胞元可包含於記憶體晶粒200中以用於儲存應用程式資料。在此等情況下,主機裝置處之應用程式可將敏感資訊儲存於具有非揮發性及揮發性性質之記憶體胞元中或拒絕將資料儲存於記憶體晶粒200中。若應用程式將敏感資訊儲存於具有非揮發性性質之記憶體胞元中,則敏感資訊可能容易受到不必要資料搜集嘗試(例如,網路罪犯)之影響。例如,存取記憶體晶粒200(包含在記憶體晶粒200與一電源斷開連接之後)之一惡意行為者可能夠藉由檢查由記憶體胞元保持之邏輯狀態而存取所儲存資料。
在一些實例中,為了防止一惡意行為者存取儲存於記憶體晶粒200中之資料,可在通電時擦除儲存於記憶體晶粒200中之資料,此可能非期望地增加一通電序列之一持續時間。在一些實例中,為了防止一惡意行為者存取儲存於記憶體晶粒200中之資料且為了避免增加通電序列之一持續時間,可在斷電時擦除儲存於記憶體晶粒200中之資料;然而,在一些實例中,記憶體裝置可能無法在失去電力之前擦除所有資料。
為了使儲存敏感資料之應用程式能夠使用主要包含具有非揮發性性質之記憶體胞元之一記憶體晶粒(例如,記憶體晶粒200),可建立用於使儲存於記憶體胞元中之資料失效之技術。在一些實例中,在發生一第一事件(例如,一通電事件)之後,可針對記憶體裝置之一或多個位址產生一或多個擾亂序列,例如,在接收與存取一或多個位址處之記憶體胞元(例如,一記憶體胞元頁面或一預取記憶體胞元群組)相關聯之命令(例如,讀取或寫入命令)時。一或多個擾亂序列可用來存取一或多個位址處之記憶體胞元,例如,以在將資料寫入至記憶體胞元之前擾亂資料且對自記憶體胞元讀取之資料進行解擾。在一些實例中,在發生一後續事件(例如,另一通電事件)之後,可針對記憶體裝置之一或多個位址產生一或多個不同擾亂序列,其中該等不同擾亂序列可用來存取一或多個位址處之記憶體胞元,因此使儲存於記憶體胞元中之資料失效。
在一些實例中,實施一雜湊函數之電路系統用來基於與在記憶體裝置處接收之命令相關聯之位址及回應於事件之發生而產生之一第一隨機數產生一或多個擾亂序列。在後續事件之發生之後,雜湊函數亦可用來基於與在記憶體裝置處接收之第二命令相關聯之位址及回應於後續事件之發生而產生之一第二隨機數產生一或多個不同擾亂序列。
圖3繪示根據如本文中所揭示之實例之支援用於記憶體之資料失效之一記憶體裝置300之一實例。
記憶體裝置300可為如參考圖1所描述之一記憶體裝置110之一實例。記憶體裝置300可包含外部介面355、擾亂序列產生器335、擾亂器350、資料路徑多工器330、記憶體陣列303、熔絲陣列305及測試組件309。
外部介面355可經組態以與一主機裝置(例如,諸如圖1之主機裝置105)介接。例如,外部介面355可經組態以接收及處理自主機裝置接收之命令。外部介面亦可經組態以處理及儲存自主機裝置接收之資料,且擷取及輸出資料至主機裝置。外部介面355可包含命令介面360、位址解碼器365及資料介面370。
命令介面360可經組態以接收及處理來自主機裝置之命令(例如,讀取及寫入命令)。在一些實例中,命令介面360可經組態以判定一經接收命令之一類型,例如,該命令是否為一讀取或寫入命令,以及其他命令。
位址解碼器365可經組態以接收與在命令介面360處接收之命令相關聯之位址。在一些實例中,該等位址與該等命令一起接收,例如,在相同於該等命令之一匯流排上或作為該等命令之部分。在其他實例中,該等位址獨立於該等命令接收,例如,可在不同於該等命令之一匯流排上接收該等位址。在一些實例中,記憶體裝置300可將位址與命令相互關聯,例如,基於經接收命令與位址之間的一基於時間之關係。
位址解碼器365可經組態以判定一經接收位址之一記憶體庫位址、一列位址、一行位址或其等任何組合。一記憶體庫位址可佔據該位址之m個位元,一列位址可佔據該位址之n個位元,且行位址可佔據該位址之p個位元。在一些實例中,一經接收位址對應於記憶體裝置300中之一頁面。在一些實例中,一頁面可包含1024個位元。對應於一頁面之一位址可被稱為頁面位址。在一些實例中,一經接收位址對應於記憶體裝置300中之一頁面之一部分(例如,一子頁面),其中該頁面之該部分可與一預取大小相關聯。在一些實例中,該頁面之該部分可包含256個位元。
對應於一頁面之一部分之一位址可被稱為預取位址。
資料介面370可經組態以在記憶體裝置300與主機裝置之間傳達資料。在一些實例中,資料介面370可經組態以自主機裝置接收與待儲存於記憶體裝置300中之資料相關聯之信號。資料介面亦可經組態以將與自記憶體陣列303讀取之資料相關聯之信號輸出至主機裝置。資料介面370可包含可與一資料匯流排之導電線(例如,八個導電線)耦合之一組接腳(例如,八個導電接腳)。在一些實例中,資料透過資料介面370以256個位元之群組傳達。
擾亂序列產生器335可使用電路系統來實施且經組態以針對記憶體裝置300之位址產生擾亂序列。在一些實例中,擾亂序列產生器335可經組態以針對記憶體裝置300之各位址(或針對各位址群組)產生唯一擾亂序列,例如,在接收該等位址時。在一些實例中,在針對一位址產生一擾亂序列之後,擾亂序列產生器335可使用一相同擾亂序列來存取該位址處之記憶體胞元,直至一事件(例如,一通電事件或一傳訊事件)之一發生。基於該事件之發生,擾亂序列產生器335可針對該等位址產生新擾亂序列。在一些實例中,擾亂序列產生器335可自記憶體裝置300內或自一主機裝置接收觸發新擾亂序列之產生之一信號。在一些實例中,由擾亂序列產生器335產生之一擾亂序列可被稱為密鑰。若針對一頁面位址產生擾亂序列,則擾亂序列可被稱為頁面密鑰。若針對一預取位址產生擾亂序列,則擾亂序列可被稱為預取密鑰。擾亂序列產生器335可包含隨機數產生器340及雜湊電路系統345。
隨機數產生器340可基於一事件(例如,一通電事件或一傳訊事件)之發生隨機地產生一數字。在一些實例中,隨機數產生器340可在
接收觸發新隨機數之產生之一信號之後產生一新隨機數,例如,若主機裝置處之一應用程式發送一信號以使儲存於該應用程式之記憶體裝置300中之資料失效。隨機數產生器340可在電路系統(類比或數位)或程式碼中實施。在一些實例中,隨機數可包含一定數量之位元(例如,16個位元、32個位元、64個位元),其中增加數量之位元可增加與擾亂在記憶體裝置300與一主機裝置之間傳達之資料相關聯之一安全性。
雜湊電路系統345可經組態以基於一隨機數及一位址產生一擾亂序列。雜湊電路系統345可經組態使得雜湊電路系統345之輸入之小變化(例如,改變隨機數之單個位元、將隨機數之一值改變達單個數位等)導致雜湊電路系統345之一輸出之大變化。再者,雜湊電路系統345可經組態使得雜湊函數之輸出對於同一輸入集係可重複的。因此,若不改變隨機數,則雜湊電路系統345可針對記憶體裝置300之一位址產生一相同擾亂序列。但若改變隨機數(例如,達少量,諸如改變一個位元),則雜湊電路系統345可針對同一位址產生一實質上不同擾亂序列(例如,可改變超過三分之一之位元,擾亂序列之值之一差可大於可能用於一擾亂序列之最小值與最大值之間的差之三分之一)。另外,基於已知輸入及輸出對雜湊電路系統345之雜湊函數進行逆向工程可係極其困難的。
雜湊電路系統345可在電路系統中實施。例如,雜湊電路系統345可使用包含一多工器及一互斥或(XOR)閘之電路來實施。在一些實例中,由隨機數產生器340產生之一隨機數及由位址解碼器365解碼之一位址可為多工器之輸入,其中多工器之一輸出及該位址可為XOR閘之輸入。此一電路可在一第一擾亂層級內及在後續擾亂層級中再現。在一些實例中,一第一擾亂層級中之電路之輸出及一第二擾亂層級中之電路之輸
入可隨機地彼此連接(例如,在一佈線程序中)。在此等情況下,不同記憶體裝置中之雜湊電路可以一隨機化方式實施彼此不同之雜湊函數。在一些實例中,一位址及隨機數可在輸入至雜湊函數之前進行組合(在該情況下,雜湊函數可具有單個輸入)。例如,該位址及隨機數可加在一起、彼此相乘,該隨機數可附加至該位址等。
擾亂器350可使用電路系統來實施且經組態以基於由擾亂序列產生器335輸出之擾亂序列擾亂在記憶體裝置300與主機裝置之間傳達之資料/對該資料解擾。擾亂器350可包含XOR邏輯353,在將資料寫入至記憶體裝置300時,該XOR邏輯將一XOR函數應用於自主機裝置接收(例如,經由資料介面370)之資料及擾亂序列,例如,以在將資料儲存於記憶體裝置300中之前對擾亂該資料。再者,在自記憶體裝置300讀取資料時,XOR邏輯353可將一XOR函數應用於自記憶體陣列303擷取之資料及擾亂序列,例如,以在將自記憶體陣列303讀取之資料輸出至主機裝置(例如,經由資料介面370)之前擾亂該資料。在一些實例中,XOR邏輯353可包含一組XOR閘(例如,128個邏輯閘、256個邏輯閘等),其中一XOR邏輯閘之一第一輸入可接收自資料介面接收之一資料封包之一位元及自擾亂序列產生器335接收之一擾亂序列之一位元。在一些實例中,可將擾亂序列之一位元提供至多個XOR邏輯閘。
資料路徑多工器330可用來在記憶體陣列303之一適當部分(例如,與資料相關聯之記憶體庫,或由與資料相關聯之位址指示之記憶體庫、列及行)與擾亂器350之間路由資料。在一些實例中,資料路徑多工器330識別與待寫入至記憶體陣列303或自記憶體陣列303讀取之資料相關聯之記憶體庫且記憶體庫中之電路系統存取記憶體陣列303之適當部分。
記憶體陣列303可經組態以儲存資料。記憶體陣列303可包含一或多個記憶體胞元陣列。在一些實例中,記憶體陣列303包含展現非揮發性性質(例如,非揮發性及揮發性性質兩者)之記憶體胞元。例如,記憶體陣列303可包含FeRAM胞元。在一些實例中,記憶體陣列303可包含DRAM胞元,該等DRAM胞元可在正常操作中之瞬時持續時間或在經受降低的溫度時之較長持續時間內展現非揮發性性質。記憶體陣列303中之記憶體胞元可被分組成記憶體庫310。記憶體庫310可包含資料提取電路系統及錯誤校正電路系統。例如,第一記憶體庫310-1可包含資料提取電路系統315及錯誤校正電路系統320。資料提取電路系統315可經組態以基於一經接收預取位址自一記憶體頁面擷取資料之部分。錯誤校正電路系統320可經組態以偵測及/或實現偵測儲存於第一記憶體庫310-1中或自第一記憶體庫310-1擷取之資料中之錯誤。在一些實例中,錯誤校正電路系統320可經組態以在將一資料集儲存於記憶體裝置300中之前產生錯誤校正位元,其中錯誤校正位元可用來偵測及/或糾正自記憶體裝置300擷取之錯誤。
熔絲陣列305可經組態以儲存用來修復(例如,代替)記憶體庫310中之有缺陷記憶體位址之記憶體位址。用來修復有缺陷記憶體位址之記憶體位址可被稱為修復位址且可經存取以代替有缺陷記憶體位址。熔絲陣列305可包含一熔絲陣列,其中資料可永久地(例如,藉由熔融連接熔絲之兩個端子之一電線)或半永久地(例如,以一不易改變的方式)儲存於熔絲中。熔絲陣列305可包含第一組熔絲306及第二組熔絲307。第二組熔絲307可跨第一組熔絲分佈(例如,以一不對稱方式)。第一組熔絲306可經組態以儲存修復位址。
熔絲陣列305可將儲存於熔絲中之資訊廣播至記憶體陣列303中之所有記憶體庫310,例如,在一熔絲廣播序列中。熔絲廣播序列可經定時使得循序廣播熔絲資訊儲存於適當記憶體庫中。在一些實例中,熔絲陣列305可儲存用來停用記憶體裝置300之擾亂功能性之一程式碼(例如,在第二組熔絲307中),其中該程式碼可包含於熔絲廣播序列中。在一些實例中,該程式碼之位元(例如,0100110100)可非循序地分佈於熔絲廣播序列之不同部分中。在一些實例中,記憶體裝置300處之一控制器基於偵測到該程式碼而停用擾亂序列產生器或擾亂器350之至少一者。
測試組件309可經組態以促進記憶體裝置300處之一測試程序。在一些實例中,測試組件309可經組態以啟動記憶體裝置300處之一測試模式。在一些實例中,測試組件309可經組態以觸發熔絲陣列305以傳輸包含修復資訊及用於停用擾亂特徵(例如,用於停用或繞過擾亂序列產生器335、擾亂器350或兩者)之一程式碼之一熔絲廣播序列。
圖4繪示根據如本文中所揭示之實例之支援用於記憶體之資料失效之一流程圖400之一實例。
流程圖400可由一記憶體裝置,諸如圖1及圖3之記憶體裝置110或記憶體裝置300執行。在一些實例中,流程圖400繪示經執行以支援用於使儲存於記憶體中之資料失效之技術之一實例性操作集。例如,流程圖400描繪用於在接收命令時針對位址產生唯一擾亂序列且使用該等擾亂序列來存取該等位址處之記憶體胞元之操作。
應理解,流程圖400中所描述之操作之一或多者可在程序中更早或更晚地執行、被省略、用另一操作替換、用另一操作補充或與另一操作組合。再者,可包含本文中所描述之未包含於流程圖400中之額外
操作。
在方塊405處,可識別一事件之一發生(例如由記憶體裝置或一隨機數產生器(例如,圖3之隨機數產生器340))。在一些實例中,經識別事件係一通電事件,例如,若一電力供應軌之一電壓超過一臨限值或一電流位準超過一臨限值,則可能發生該事件。在一些實例中,記憶體裝置中之一電源電路識別通電事件且將一信號發送至隨機數產生器340。在一些實例中,經識別事件係一安全事件,例如,記憶體裝置中之一安全組件可偵測自記憶體裝置竊取資料之一惡意嘗試。在一些實例中,經識別事件係一應用程式驅動事件,例如,一主機裝置處之一應用程式可發送指示儲存於記憶體裝置中之資料不再由該應用程式使用之一信號。在一些實例中,經識別事件係一基於定時器之事件,例如,在一資料集儲存於記憶體裝置中時啟動之一定時器可能期滿。
在方塊410處,可基於上文所描述之事件之一或多者之一發生產生一隨機數(例如,由隨機數產生器)。隨機產生數字可替換一先前產生隨機數且(例如,由一擾亂序列產生器,諸如圖3之擾亂序列產生器335)用於擾亂序列之後續產生。基於產生新隨機數,當前儲存於記憶體裝置中之資料可失效,例如,因為基於新隨機數產生之一新擾亂序列集可用來擾亂儲存於記憶體裝置中之資料/對該資料解擾。在一些實例中,包含於隨機數中之位元之一數量係基於該裝置之一所要安全級別。在一些實例中,為了增加安全性,可增加包含於隨機數中之位元之數量(例如,自32個位元增加至128個位元)。
在方塊415處,可自一主機裝置接收一或多個命令,例如,在記憶體裝置之一命令介面(例如,圖3之命令介面360)處。在一些實
例中,該等命令可包含在其等處執行命令之位址。在其他實例中,可在記憶體裝置處單獨地接收位址,其中該等位址可與該等命令相互關聯,例如,基於一基於時間之關係。一或多個命令可包含讀取命令、寫入命令或兩者,以及其他類型之命令。
在方塊420處,可對與命令相關聯之一或多個位址進行解碼(例如,由圖3之位址解碼器365)。在一些實例中,一或多個位址用來對一記憶體頁面進行定址。在其他實例中,一或多個位址用來對一記憶體子頁面進行定址。一或多個位址可包含指示一記憶庫位址之一第一部分、指示一列位址之一第二部分及指示一行位址之一第三部分。在一些實例中,可將經解碼之一或多個位址提供至擾亂序列產生器。
在方塊425處,可基於隨機數及一或多個位址產生一或多個擾亂序列(其可被稱為密鑰)(例如,由擾亂序列產生器)。在一些實例中,針對在記憶體裝置處接收之各命令/位址對產生一擾亂序列。例如,在記憶體裝置處接收一第一命令之後,擾亂序列產生器可基於與第一命令相關聯之一第一位址及隨機數產生一第一擾亂序列。隨後,針對在記憶體裝置處接收之下一命令,擾亂序列產生器可基於與第二命令相關聯之一第二位址及隨機數產生一第二擾亂序列。在一些實例中,第一位址及第二位址係相同的,且因此,第一擾亂序列及第二擾亂序列係相同的。
在一些實例中,擾亂序列產生器針對記憶體裝置中之各位址產生唯一擾亂序列,例如,若記憶體裝置包含2億個唯一預取位址,則擾亂序列產生器可產生2億個唯一擾亂序列。在其他實例中,擾亂序列產生器針對記憶體裝置中之位址群組產生唯一擾亂序列,例如,若記憶體裝置包含2億個唯一預取位址,則擾亂序列產生器可產生1億個唯一擾亂序
列。在一些實例中,一位址群組可包含連續位址,例如,彼此在同一記憶庫及列中之位址。針對位址群組產生擾亂序列可允許將擾亂序列用於臨限數量之位址,此可降低與產生擾亂序列相關聯之一複雜性。
包含於擾亂序列中之位元之一數量可基於在記憶體裝置與主機裝置之間傳達之資料之一大小。例如,若在記憶體裝置與主機裝置之間傳達之資料包含256個位元,則擾亂序列可包含256個位元。在其他實例中,若在記憶體裝置與主機裝置之間傳達之資料包含256個位元,則擾亂序列可包含128個位元,在此等情況下,擾亂序列之各位元可用來隨機地翻轉(或不翻轉)資料之兩個位元。使用較小擾亂序列可降低與產生擾亂序列相關聯之一複雜性。
在一些實例中,可僅針對特定記憶體庫,例如,高安全性記憶體庫產生擾亂序列。一主機裝置處之應用程式可判定高安全性記憶體庫之一位置且將敏感資訊儲存於高安全性記憶體庫中,應理解,高安全性記憶體庫中之資料將在一事件之發生之後失效(例如,一應用程式啟動或環境啟動事件)。
在一些實例中,一雜湊函數(例如,其可由諸如圖3之雜湊電路系統345之電路系統實施)包含於擾亂序列產生器中且用來基於隨機數及一或多個位址產生一或多個擾亂序列。在一些實例中,雜湊函數基於一新隨機數針對同一位址集產生一不同擾亂序列集,其中隨機數相對於先前隨機數之一改變可為小,單個位元可經翻轉,隨機數之值之間的差可為一等。在一些實例中,針對同一位址集,不同擾亂序列集可實質上不同於先前擾亂序列集,例如,各位址可與相對於先前擾亂序列具有多個經翻轉位元之一新擾亂序列相關聯。
在方塊430處,可基於擾亂序列擾亂輸入至記憶體裝置之資料(例如,由一擾亂器,諸如圖3之擾亂器350)。另外或替代地,可基於擾亂序列對自記憶體裝置輸出之資料解擾(例如,亦由擾亂器,該擾亂器在此等情況下可作為一解擾器操作)。在一些實例中,用來在將資料寫入至記憶體裝置之一位址處之記憶體胞元之前擾亂資料之一擾亂序列亦用來對自記憶體裝置之該位址處之記憶體胞元讀取之資料進行解擾。在一些實例中,對應於一命令(例如,一寫入命令)之資料可在接收該命令、對一相關聯位址進行解碼及針對該相關聯位址產生一擾亂序列之一或多者之後(或同時)接收。資料及擾亂序列可輸入至擾亂器,且擾亂器可輸出經擾亂資料。經擾亂資料連同位址資訊一起可傳遞至一資料路徑多工器,該資料路徑多工器可將經擾亂資料路由至相關聯位址處之記憶體胞元。隨後,可接收與同一位址相關聯之另一命令(例如,一讀取命令)。在此等情況下,可產生相同擾亂序列,且記憶體裝置可自該位址處之記憶體胞元擷取經擾亂資料。經擾亂資料及擾亂序列可應用於該擾亂器,該擾亂器可輸出(例如,經由資料介面)匹配原始接收資料之經解擾資料。資料可類似地寫入至記憶體裝置之其他位址處之記憶體胞元及自記憶體裝置之位址處之儲存有效資料之記憶體胞元讀取。
在一些實例中,可在每命令基礎上產生擾亂序列。因此,可產生擾亂序列且將其等應用於即時輸入至記憶體裝置或自記憶體裝置輸出之對應資料集。在一些實例中,若接收快取記憶體中之一記憶體位址,則可快取及存取針對最近接收記憶體位址之經產生擾亂序列,例如,代替重新計算擾亂序列。
在一些實例中,在執行方塊430處所描述之操作之後,可
能發生與使記憶體裝置處之資料失效相關聯之一事件。在此等情況下,記憶體裝置可識別事件之發生,如參考方塊405類似地描述。在此等實例中,在識別事件之發生之後,記憶體裝置可重複在方塊410至方塊430處所描述之操作。在此等情況下,可基於事件之發生產生一新隨機數,如參考方塊410類似地描述。再者,可基於新隨機數之產生針對記憶體裝置之位址產生新擾亂序列,如參考方塊415至方塊425類似地描述,例如,在事件之前針對一位址產生之一擾亂序列可(例如,實質上)不同於在該事件之後針對該位址產生之一擾亂序列。且新擾亂序列可用來將資料輸入至記憶體裝置及自記憶體裝置輸出資料,如參考方塊430類似地描述。
圖5繪示根據如本文中所揭示之實例之支援用於記憶體之資料失效之一流程圖500之一實例。
流程圖500可由一記憶體裝置,諸如圖1及圖3之記憶體裝置110或記憶體裝置300執行。在一些實例中,流程圖500繪示經執行以支援用於記憶體之資料失效之一實例性操作集。例如,流程圖500描繪用於以一安全方式停用記憶體裝置之一擾亂特徵(例如,參考圖1至圖3所描述之擾亂特徵)之操作。
應理解,流程圖500中所描述之操作之一或多者可在該程序中更早或更晚地執行、被省略、用另一操作替換、用另一操作補充或與另一操作組合。再者,可包含本文中所描述之未包含於流程圖500中之額外操作。
在方塊505處,可將電力供應至記憶體裝置。在一些實例中,記憶體裝置可基於將電力供應至記憶體裝置而執行一通電序列。在一些實例中,作為通電序列之部分,將一信號發送至一擾亂序列產生器之一
隨機數產生器,該隨機數產生器觸發隨機數以隨機地產生一數字。再者,在預設情況下,可在將電力供應至記憶體裝置時啟用與擾亂寫入至記憶體裝置或自記憶體裝置讀取之資料/對該資料解擾相關聯之電路系統。
在方塊510處,可廣播熔絲資訊,例如,至記憶體裝置中之記憶體庫。熔絲資訊可包含指示有缺陷記憶體胞元之一位址以及代替有缺陷記憶體胞元使用之修復記憶體胞元之一位址之修復資訊。熔絲資訊可以確保適當熔絲資訊儲存於一適當記憶體庫中之一廣播序列廣播至記憶體庫,例如,藉由將一符記自一個記憶體庫傳遞至另一記憶體庫。
在方塊515處,可判定是否針對記憶體裝置啟用一探測或測試模式。當針對記憶體裝置啟用一探測或測試模式時,重要的是,寫入至記憶體裝置之資料相同於儲存於記憶體裝置中之資料,即,重要的是,資料不被擾亂。因此,可期望用於選擇性地停用本文中所描述之擾亂特徵之一程序。同時,用於混淆用來停用擾亂特徵之程序之一技術對於防止惡意行為者使用該技術停用擾亂特徵,繞過由擾亂特徵提供之保護可係重要的。在一些實例中,若記憶體裝置不處於一探測或測試模式,則記憶體裝置可執行在方塊520所描述之操作。否則,記憶體裝置可執行在方塊525至方塊555處所描述之所有操作(或子集)。
在方塊520處,可基於參考圖4所描述之擾亂程序存取記憶體庫。即,可針對與在記憶體裝置處接收之命令相關聯之位址產生唯一擾亂序列,且可使用擾亂序列擾亂寫入至記憶體裝置/自記憶體裝置讀取之資料/對該資料解擾。再者,若在記憶體裝置處發生一失效事件(例如,通電、一定時器期滿、一失效信號之一接收等),則可產生一新隨機數及一擾亂序列集。在一些實例中,在判定既不啟用一探測模式亦不啟用測試模
式之後執行在方塊510所描述之操作,例如,以避免執行重複熔絲廣播序列。
在方塊525處,可存取與停用擾亂特徵相關聯之一組熔絲。該組熔絲可儲存當在記憶體裝置處接收時致使記憶體裝置停用擾亂特徵之一程式碼(其可被稱為停用程式碼)。在一些實例中,該組熔絲係跨一熔絲陣列分佈。
在方塊530處,可以熔絲廣播序列廣播熔絲資訊,其中可將停用程式碼嵌入熔絲廣播序列中。在一些實例中,在熔絲廣播序列之不同部分中傳輸停用程式碼之不同位元,其中停用程式碼之位元之位置對於記憶體裝置之一控制器可係已知的。在一些實例中,在廣播序列中非循序地傳輸停用程式碼之不同位元,例如,使得在廣播序列之一第一部分中傳輸之程式碼之一初始傳輸位元可對應於該程式碼之一後續位元(例如,該程式碼之一第三位元),等等。
在方塊535處,可執行探測或測試操作。在此等情況下,可將資料寫入至記憶體裝置或自記憶體裝置讀取資料而不被擾亂或解擾。
在方塊540處,可存取與啟用擾亂序列相關聯之一組熔絲。在一些實例中,與啟用擾亂序列相關聯之該組熔絲相同於與停用擾亂序列相關聯之該組熔絲。在一些實例中,與啟用擾亂序列相關聯之該組熔絲不同於與停用擾亂序列相關聯之該組熔絲,在此等情況下,與啟用擾亂序列相關聯之該組熔絲可儲存一啟用程式碼。
在方塊545處,可執行一後續熔斷廣播序列,其中可將啟用程式碼嵌入熔斷廣播序列中。
在方塊550處,記憶體裝置可基於對啟用程式碼進行解碼
而啟用擾亂特徵。在一些實例中,在啟用擾亂特徵之後,記憶體裝置可檢查以判定在進入使用擾亂特徵之一操作模式之前是否啟用一新探測或測試模式。
在方塊555處,可自記憶體裝置移除電力。隨後,可將電力供應至記憶體裝置,在該情況下,記憶體裝置可重複在方塊505處開始之以上操作。
圖6展示根據如本文中所揭示之實例之支援用於記憶體之資料失效之一記憶體陣列620之一方塊圖600。記憶體陣列620可為如參考圖1至圖5所描述之一記憶體裝置之態樣之一實例。記憶體陣列620或其各種組件可為用來執行如本文中所描述之用於記憶體之資料失效之各個態樣之構件之一實例。例如,記憶體陣列620可包含一擾亂序列產生器625、一資料組件630、一命令介面635、一資料介面640、一隨機數產生器645或其等任何組合。此等組件之各者可彼此直接或間接地進行通信(例如,經由一或多個匯流排)。
擾亂序列產生器625可經組態為或以其他方式支援用於以下動作之一構件:在一第一事件之後,針對與第一複數個命令相關聯地接收之複數個位址產生一第一擾亂序列集。資料組件630可經組態為或以其他方式支援用於以下動作之一構件:回應於該第一複數個命令,至少部分地基於該第一擾亂序列集存取一記憶體陣列之部分,該記憶體陣列之該等部分對應於該複數個位址。在一些實例中,擾亂序列產生器625可經組態為或以其他方式支援用於以下動作之一構件:在一後續事件之後,針對如與第二複數個命令相關聯地接收之該複數個位址產生一第二擾亂序列集,該第二擾亂序列集不同於該第一擾亂序列集。在一些實例中,資料組件
630可經組態為或以其他方式支援用於以下動作之一構件:回應於該第二複數個命令,至少部分地基於該第二擾亂序列集存取該記憶體陣列之該等部分。在一些實例中,在該後續事件之前儲存於該記憶體陣列中之資料至少部分地基於產生該第二擾亂序列集而失效。
在一些實例中,命令介面635可經組態為或以其他方式支援用於以下動作之一構件:接收與該複數個位址之一位址相關聯之該第一複數個命令之一命令,其中產生該第一擾亂序列集包含至少部分地基於該位址產生一擾亂序列。在一些實例中,資料介面640可經組態為或以其他方式支援用於以下動作之一構件:接收與該命令及該位址相關聯之一資料集,其中至少部分地基於該第一擾亂序列集存取該記憶體陣列之該等部分包含使用該擾亂序列擾亂該資料集以獲得一經擾亂資料集;及將該經擾亂資料集寫入至該記憶體陣列之對應於該位址之一部分。
在一些實例中,命令介面635可經組態為或以其他方式支援用於以下動作之一構件:接收與該複數個位址之該位址相關聯之該第一複數個命令之一第二命令,其中至少部分地基於該第一擾亂序列集存取該記憶體陣列之該等部分包含至少部分地基於接收該第二命令而自該記憶體陣列之該等部分擷取該經擾亂資料集;使用該擾亂序列對該經擾亂資料集進行解擾以獲得該資料集;及回應該第二命令而輸出該資料集。
在一些實例中,該擾亂序列之一大小等於該資料集之一大小,且該擾亂序列之各位元對應於該資料集之一各自位元。在一些實例中,該擾亂序列之一大小小於該資料集之一大小,且該擾亂序列之各位元對應於該資料集之各自複數個位元。
在一些實例中,為了支援產生該第一擾亂序列集,隨機數
產生器645可經組態為或以其他方式支援用於以下動作之一構件:至少部分地基於該第一事件之一發生隨機地產生一數字。在一些實例中,為了支援產生該第一擾亂序列集,擾亂序列產生器625可經組態為或以其他方式支援用於以下動作之一構件:將該數字及該複數個位址輸入至一雜湊函數,其中該雜湊函數至少部分地基於該數字及該複數個位址輸出該第一擾亂序列集。
在一些實例中,為了支援產生該第二擾亂序列集,隨機數產生器645可經組態為或以其他方式支援用於以下動作之一構件:至少部分地基於該後續事件之一發生隨機地產生一第二數字。在一些實例中,為了支援產生該第二擾亂序列集,擾亂序列產生器625可經組態為或以其他方式支援用於以下動作之一構件:將該第二數字及該複數個位址輸入至該雜湊函數,其中該雜湊函數至少部分地基於該第二數字及該複數個位址輸出該第二擾亂序列集。在一些實例中,該第一事件包含一第一通電序列,且該後續事件包含一第二通電序列。
在一些實例中,擾亂序列產生器625可經組態為或以其他方式支援用於以下動作之一構件:接收用於使儲存於該記憶體陣列中之資料失效之一信號,其中該後續事件包含接收該信號。
在一些實例中,擾亂序列產生器625可經組態為或以其他方式支援用於以下動作之一構件:至少部分地基於一通電序列之一發生啟用與擾亂傳達至該記憶體陣列或自該記憶體陣列傳達之資料相關聯之一模式。在一些實例中,擾亂序列產生器625可經組態為或以其他方式支援用於以下動作之一構件:至少部分地基於包含於一熔絲廣播序列中之一程式碼停用該模式。在一些實例中,資料組件630可經組態為或以其他方式支
援用於以下動作之一構件:回應於第三複數個命令,至少部分地基於停用該模式而在不擾亂傳達至該記憶體陣列或自該記憶體陣列傳達之資料之情況下存取該記憶體陣列之該等部分。
在一些實例中,擾亂序列產生器625可經組態為或以其他方式支援用於以下動作之一構件:至少部分地基於包含於一第二熔絲廣播序列中之一第二程式碼、一第二通電序列之一發生或兩者重新啟用該模式,其中產生該第一擾亂序列集至少部分地基於重新啟用該模式。
在一些實例中,在該第一事件之後,該第一擾亂序列集合之各擾亂序列對應於該複數個位址之一各自位址,且在該後續事件之後,該第二擾亂序列集合之各擾亂序列對應於至該複數個位址之一各自位址。
圖7展示繪示根據如本文中所揭示之實例之支援用於記憶體之資料失效之一方法700之一流程圖。方法700之操作可由如本文中所描述之一記憶體陣列或其組件實施。例如,方法700之操作可由如參考圖1至圖6所描述之一記憶體陣列執行。在一些實例中,一記憶體陣列可執行一指令集來控制該裝置之功能元件以執行所描述功能。另外或替代地,記憶體陣列可使用專用硬體執行所描述功能之態樣。
在705處,該方法可包含在一第一事件之後,針對與第一複數個命令相關聯地接收之複數個位址產生一第一擾亂序列集。705之操作可根據如本文中所揭示之實例來執行。在一些實例中,705之操作之態樣可由如參考圖6所描述之一擾亂序列產生器625執行。
在710處,該方法可包含回應於該第一複數個命令,至少部分地基於該第一擾亂序列集存取一記憶體陣列之部分,該記憶體陣列之該等部分對應於該複數個位址。710之操作可根據如本文中所揭示之實例
來執行。在一些實例中,710之操作之態樣可由如參考圖6所描述之一資料組件630執行。
在715處,該方法可包含在一後續事件之後,針對如與第二複數個命令相關聯地接收之該複數個位址產生一第二擾亂序列集,該第二擾亂序列集不同於該第一擾亂序列集。715之操作可根據如本文中所揭示之實例來執行。在一些實例中,715之操作之態樣可由如參考圖6所描述之一擾亂序列產生器625執行。
在720處,該方法可包含回應於該第二複數個命令,至少部分地基於該第二擾亂序列集存取該記憶體陣列之該等部分。720之操作可根據如本文中所揭示之實例來執行。在一些實例中,720之操作之態樣可由如參考圖6所描述之一資料組件630執行。
在一些實例中,如本文中所描述之一設備可執行一或若干方法,諸如方法700。該設備可包含用於以下動作之操作、特徵、電路系統、邏輯、構件或指令(例如,儲存可由一處理器執行之指令之一非暫時性電腦可讀媒體):在一第一事件之後,針對與第一複數個命令相關聯地接收之複數個位址產生一第一擾亂序列集;回應於該第一複數個命令,至少部分地基於該第一擾亂序列集存取一記憶體陣列之部分,該記憶體陣列之該等部分對應於該複數個位址;在一後續事件之後,針對如與第二複數個命令相關聯地接收之該複數個位址產生一第二擾亂序列集,該第二擾亂序列集不同於該第一擾亂序列集;及回應於該第二複數個命令,至少部分地基於該第二擾亂序列集存取該記憶體陣列之該等部分。
本文中所描述之方法700及設備之一些實例可進一步包含用於以下動作之操作、特徵、電路系統、邏輯、構件或指令:接收與該複
數個位址之一位址相關聯之該第一複數個命令之一命令,其中產生該第一擾亂序列集包含至少部分地基於該位址產生一擾亂序列;及接收與該命令及該位址相關聯之一資料集,其中至少部分地基於該第一擾亂序列集存取該記憶體陣列之該等部分包含使用該擾亂序列擾亂該資料集以獲得一經擾亂資料集;及將該經擾亂資料集寫入至該記憶體陣列之對應於該位址之一部分。
本文中所描述之方法700及設備之一些實例可進一步包含用於以下動作之操作、特徵、電路系統、邏輯、構件或指令:接收與該複數個位址之該位址相關聯之該第一複數個命令之一第二命令,其中至少部分地基於該第一擾亂序列集存取該記憶體陣列之該等部分包含至少部分地基於接收該第二命令而自該記憶體陣列之該等部分擷取該經擾亂資料集;使用該擾亂序列對該經擾亂資料集進行解擾以獲得該資料集;及回應該第二命令而輸出該資料集。
在本文中所描述之方法700及設備之一些實例中,該擾亂序列之一大小可等於該資料集之一大小,且該擾亂序列之各位元對應於該資料集之一各自位元。
在本文中所描述之方法700及設備之一些實例中,該擾亂序列之一大小可小於該資料集之一大小,且該擾亂序列之各位元對應於該資料集之各自複數個位元。
在本文中所描述之方法700及設備之一些實例中,產生該第一擾亂序列集可包含用於以下動作之操作、特徵、電路系統、邏輯、構件或指令:至少部分地基於該第一事件之一發生隨機地產生一數字;及將該數字及該複數個位址輸入至一雜湊函數,其中該雜湊函數至少部分地基
於該數字及該複數個位址輸出該第一擾亂序列集。
在本文中所描述之方法700及設備之一些實例中,產生該第二擾亂序列集可包含用於以下動作之操作、特徵、電路系統、邏輯、構件或指令:至少部分地基於該後續事件之一發生隨機地產生一第二數字;及將該第二數字及該複數個位址輸入至該雜湊函數,其中該雜湊函數至少部分地基於該第二數字及該複數個位址輸出該第二擾亂序列集。
在本文中所描述之方法700及設備之一些實例中,該第一事件包含一第一通電序列,且該後續事件包含一第二通電序列。
本文中所描述之方法700及設備之一些實例可進一步包含用於以下動作之操作、特徵、電路系統、邏輯、構件或指令:接收用於使儲存於該記憶體陣列中之資料失效之一信號,其中該後續事件包含接收該信號。
本文中所描述之方法700及設備之一些實例可進一步包含用於以下動作之操作、特徵、電路系統、邏輯、構件或指令:至少部分地基於一通電序列之一發生啟用與擾亂傳達至該記憶體陣列或自該記憶體陣列傳達之資料相關聯之一模式;至少部分地基於包含於一熔絲廣播序列中之一程式碼停用該模式;及回應於第三複數個命令,至少部分地基於停用該模式而在不擾亂傳達至該記憶體陣列或自該記憶體陣列傳達之資料之情況下存取該記憶體陣列之該等部分。
本文中所描述之方法700及設備之一些實例可進一步包含用於以下動作之操作、特徵、電路系統、邏輯、構件或指令:至少部分地基於包含於一第二熔絲廣播序列中之一第二程式碼、一第二通電序列之一發生或兩者重新啟用該模式,其中產生該第一擾亂序列集可至少部分地基
於重新啟用該模式。
在本文中所描述之方法700及設備之一些實例中,在該後續事件之前儲存於該記憶體陣列中之資料可至少部分地基於產生該第二擾亂序列集而失效。
在本文中所描述之方法700及設備之一些實例中,在該第一事件之後,該第一擾亂序列集之各擾亂序列對應於該複數個位址之一各自位址,且在該後續事件之後,該第二擾亂序列集之各擾亂序列對應於該複數個位址之一各自位址。
應注意,本文中所描述之方法係可能實施方案,且可重新配置或以其他方式修改操作及步驟且其他實施方案係可能的。此外,可組合來自兩種或更多種方法之部分。
描述另一設備。該設備可包含:一記憶體陣列(例如,記憶體陣列303);第一電路系統(例如,擾亂序列產生器335),其經組態以在一第一事件之後針對該記憶體陣列之複數個位址產生一第一擾亂序列集,且在一後續事件之後針對該複數個位址產生不同於該第一擾亂序列集之一第二擾亂序列集;及第二電路系統(例如,擾亂器350),其與該記憶體陣列及該第一電路系統耦合,該第二電路系統經組態以在該第一事件之後至少部分地基於該第一擾亂序列集且在該後續事件之後至少部分地基於該第二擾亂序列集擾亂與該複數個位址相關聯之資料。
在一些實例中,該設備可包含一外部介面(例如,外部介面355),該外部介面與該第二電路系統耦合,其中該第二電路系統可進一步經組態以擾亂在該記憶體陣列與該外部介面之間傳達之資料。
在該設備之一些實例中,該第一電路系統包含:第三電路
系統(例如,隨機數產生器340),其經組態以至少部分地基於一事件之一發生隨機地產生一數字;及第四電路系統(例如,雜湊電路系統345),其與該第三電路系統耦合且經組態以實施一雜湊函數,該第四電路系統經組態以至少部分地基於自該第三電路系統接收之一最新近數字、該複數個位址及該雜湊函數輸出擾亂序列。
在該設備之一些實例中,該第二電路系統包含互斥或邏輯(例如,XOR邏輯353),該互斥或邏輯經組態以將由該第一電路系統針對一位址產生之一擾亂序列應用於可與相同於該位址之一命令相關聯之一資料集。
在一些實例中,該設備可包含一熔絲陣列(例如,熔絲陣列305),該熔絲陣列包含:第一組熔絲(例如,第一組熔絲306),其包含指示該記憶體陣列中可能有缺陷之第一位址之修復資訊;及第二組熔絲(例如,第二組熔絲307),其包含用於停用與擾亂傳達至該記憶體陣列及自該記憶體陣列傳達之資料相關聯之一模式之一程式碼,其中該熔絲陣列可經組態以將該修復資訊、該程式碼或兩者廣播至該記憶體陣列。
在一些實例中,該設備可包含一測試組件(例如,測試組件309),該測試組件與該熔絲陣列耦合且經組態以停用該模式,以觸發包含該程式碼及該修復資訊之一熔絲廣播序列,其中可在該熔絲廣播序列期間非循序地傳輸該程式碼之位元。
在該設備之一些實例中,該第一電路系統及該第二電路系統之至少一者可進一步經組態以至少部分地基於自該熔絲陣列廣播該程式碼而停用。
描述另一設備。該設備可包含:一記憶體陣列(例如,記憶
體陣列303),其包含記憶體胞元(例如,記憶體胞元205);一外部介面(例如,外部介面355),其與該記憶體陣列耦合且經組態以接收用於存取該記憶體陣列之命令,該等命令與該記憶體陣列之位址相關聯;一隨機數產生器(例如,隨機數產生器340),其經組態以至少部分地基於一事件之一發生產生一隨機數;第一邏輯(例如,雜湊電路系統345),其與該隨機數產生器及該外部介面耦合且經組態以實施一雜湊函數以針對自該外部介面接收之一位址集獲得一擾亂序列集,其中該擾亂序列集至少部分地基於該隨機數、該位址集及該雜湊函數;及第二邏輯(例如,擾亂器350),其與該第一邏輯耦合且經組態以至少部分地基於該擾亂序列集擾亂傳達至該記憶體陣列之與該位址集相關聯之記憶體胞元或自該記憶體陣列之與該位址集相關聯之記憶體胞元傳達之資料。
在該設備之一些實例中,該外部介面包含:一命令介面(例如,命令介面360),其經組態以自一主機接收該等命令且處理該等命令;一位址組件(例如,其可包含位址解碼器365),其與該第一邏輯耦合且經組態以獲得與該等命令相關聯之該等位址且將該等位址提供至該第一邏輯;及資料接腳(例如,作為資料介面370之部分),其等與該第二邏輯耦合,經組態以在該外部介面與該主機之間傳達資料。
在該設備之一些實例中,該第二邏輯包含互斥或邏輯(例如,XOR邏輯353),該互斥或邏輯經組態以將該擾亂序列集與相關聯於該位址集之資料集組合。
在一些實例中,該設備可包含一多工器(例如,資料路徑多工器330),該多工器與該第二邏輯耦合且經組態以將自該第二邏輯接收之經擾亂資料集路由至該記憶體陣列之與該位址集相關聯之該等記憶體胞
元。
在一些實例中,該設備可包含一熔絲陣列(例如,熔絲陣列305),該熔絲陣列包含一組熔絲,該組熔絲經組態以儲存用於停用與擾亂傳達至該記憶體陣列或自該記憶體陣列傳達之資料相關聯之一模式之一程式碼。
可使用多種不同科技及技術之任一者表示本文中所描述之資訊及信號。例如,可由電壓、電流、電磁波、磁場或磁性粒子、光場或光學粒子或其等任何組合表示可貫穿該描述所引用之資料、指令、命令、資訊、信號、位元、符號及晶片。一些圖式可將信號繪示為單個信號;然而,該信號可表示信號之一匯流排,其中該匯流排可具有多種位元寬度。
術語「電子連通」、「導電接觸」、「連接」及「耦合」可指代組件之間的一關係,該關係支援組件之間的信號流。若在組件之間存在可隨時支援組件之間的信號流之任何導電路徑,則組件被視為彼此電子連通(或導電接觸或連接或耦合)。在任何給定時間,基於包含所連接組件之裝置之操作,彼此電子連通(或導電接觸或連接或耦合)之組件之間的導電路徑可為一開路或一閉路。所連接組件之間的導電路徑可為該等組件之間的一直接導電路徑或所連接組件之間的導電路徑可為可包含中間組件,諸如開關、電晶體或其他組件之一間接導電路徑。在一些實例中,可例如使用諸如開關或電晶體之一或多個中間組件將所連接組件之間的信號流中斷一段時間。
術語「隔離」指代其中信號當前不能在組件之間流動之組件之間的一關係。若在組件之間存在一開路,則該等組件彼此隔離。例如,藉由定位於組件之間的一開關分離之兩個組件在該開關斷開時彼此隔
離。當一控制器將兩個組件彼此隔離時,該控制器影響防止信號使用先前允許信號流動之一導電路徑在該等組件之間流動之一變化。
如本文中所使用,術語「實質上」意謂經修飾特性(例如,由術語實質上修飾之一動詞或形容詞)不需要係絕對的,但足夠接近以達成該特性之優點。
本文中所論述之裝置(包含一記憶體陣列)可形成於一半導體基板上,諸如矽、鍺、矽鍺合金、砷化鎵、氮化鎵等。在一些實例中,該基板係一半導體晶圓。在其他情況下,該基板可為一絕緣體上矽(SOI)基板(諸如玻璃上矽(SOG)或藍寶石上矽(SOS))或另一基板上之半導體材料磊晶層。可透過使用各種化學物種,包含但不限於磷、硼或砷進行摻雜來控制基板或基板之子區之導電率。可藉由離子植入或藉由任何其他摻雜手段在基板之初始形成或生長期間執行摻雜。
本文中所論述之一切換組件或一電晶體可表示一場效電晶體(FET)且包括包含一源極、汲極及閘極之一三端子裝置。該等端子可透過導電材料,例如金屬連接至其他電子元件。源極及汲極可為導電的且可包括一重度摻雜,例如簡併半導體區。可藉由一輕度摻雜半導體區或通道分離源極及汲極。若該通道係n型(即,多數載子係電子),則FET可被稱為n型FET。若該通道係p型(即,多數載子係電洞),則FET可被稱為p型FET。該通道可藉由一絕緣閘極氧化物封端。可藉由將一電壓施加至閘極而控制通道導電率。例如,將一正電壓或負電壓分別施加至一n型FET或一p型FET可導致該通道變成導電。當將大於或等於一電晶體之臨限電壓之一電壓施加至電晶體閘極時,可「開啟」或「啟動」該電晶體。當將小於電晶體之臨限電壓之一電壓施加至電晶體閘極時,可「關閉」或「撤銷
啟動」該電晶體。
本文中結合隨附圖式所闡述之描述描寫實例組態且不表示可實施或在發明申請專利範圍之範疇內之所有實例。本文中所使用之術語「實例性」意謂「充當一實例、例項或圖解」且非「較佳」或「優於其他實例」。實施方式包含具特定細節以提供對所描述技術之一理解。然而,可在沒有此等特定細節之情況下實踐此等技術。在一些例項中,以方塊圖形式展示熟知架構及裝置以避免混淆所描述實例之概念。
在附圖中,類似組件或特徵可具有相同參考標籤。此外,可藉由在參考標籤後加一破折號及區分類似組件之一第二標籤而區分相同類型之各種組件。若在說明書中僅使用第一參考標籤,則該描述可適用於具有相同第一參考標籤之類似組件之任一者,而無關於第二參考標籤。
可在硬體、由一處理器執行之軟體、韌體或其等任何組合中實施本文中所描述之功能。若在由一處理器執行之軟體中實施,則可將功能作為一或多個指令或碼儲存於一電腦可讀媒體上或經由一電腦可讀媒體傳輸。其他實例及實施方案係在本發明及隨附發明申請專利範圍之範疇內。例如,歸因於軟體之性質,可使用由一處理器執行之軟體、硬體、韌體、硬接線或此等之任一者之組合實施本文中所描述之功能。實施功能之特徵亦可實體上定位於各種位置處,包含經分佈使得在不同實體位置處實施功能之部分。
例如,可運用經設計以執行本文中所描述之功能之一通用處理器、一DSP、一ASIC、一FPGA或其他可程式化邏輯裝置、離散閘或電晶體邏輯、離散硬體組件或其等任何組合來實施或執行結合本發明所描述之各種闡釋性方塊及模組。一通用處理器可為一微處理器,但在替代方
案中,該處理器可為任何處理器、控制器、微控制器或狀態機。一處理器亦可實施為運算裝置之一組合(例如,一DSP及一微處理器之一組合、多個微處理器、結合一DSP核心之一或多個微處理器或任何其他此組態)。
如本文中所使用,包含在發明申請專利範圍中,如一項目清單(例如,以諸如「至少一者」或「一或多者」之一片語開始之一項目清單)中所使用之「或」指示一包含新清單,使得例如A、B或C之至少一者之一清單意謂A或B或C或AB或AC或BC或ABC(即,A及B及C)。再者,如本文中所使用,片語「基於」不應被解釋為對一條件閉集之一參考。例如,在不脫離本發明之範疇之情況下,描述為「基於條件A」之一實例步驟可基於一條件A及一條件B兩者。換言之,如本文中所使用,片語「基於」應以相同於片語「至少部分地基於」之方式進行解釋。
電腦可讀媒體包含非暫時性電腦儲存媒體及包含促進一電腦程式自一個位置傳送至另一位置之任何媒體之通信媒體兩者。一非暫時性儲存媒體可為可由一通用或專用電腦存取之任何可用媒體。舉例而言而非限制,非暫時性電腦可讀媒體可包括RAM、ROM、電可擦除可程式化唯讀記憶體(EEPROM)、光碟(CD)ROM或其他光碟儲存裝置、磁碟儲存裝置或其他磁性儲存裝置,或可用來以指令或資料架構之形式載送或儲存所要程式碼構件且可由一通用或專用電腦或一通用或專用處理器存取之任何其他非暫時性媒體。再者,任何連接被適宜地稱為電腦可讀媒體。例如,若使用一同軸電纜、光纖電纜、雙絞線、數位用戶線(DSL)或諸如紅外線、無線電及微波之無線科技自一網站、伺服器或其他遠端源傳輸軟體,則同軸電纜、光纖纜線、雙絞線、數位用戶線(DSL)或諸如紅外線、無線電及微波之無線科技包含於媒體之定義中。如本文中所使用,磁碟及
光碟包含CD、雷射光碟、光碟、數位多功能光碟(DVD)、軟碟及藍光光碟,其中磁碟通常磁性地重現資料,而光碟運用雷射光學地重現資料。此等之組合亦包含於電腦可讀媒體之範疇內。
提供本文中之描述以使熟習此項技術者能夠進行或使用本發明。熟習此項技術者將明白本發明之各種修改,且在不脫離本發明之範疇之情況下本文中所定義之通用原理可應用於其他變動。因此,本發明不限於本文中所描述之實例及設計,而是應符合與本文中所揭示之原理及新穎特徵一致之最寬範疇。
300:記憶體裝置
303:記憶體陣列
305:熔絲陣列
306:第一組熔絲
307:第二組熔絲
309:測試組件
310-1:第一記憶體庫
315:資料提取電路系統
320:錯誤校正電路系統
330:資料路徑多工器
335:擾亂序列產生器
340:隨機數產生器
345:雜湊電路系統
350:擾亂器
353:互斥或(XOR)邏輯
355:外部介面
360:命令介面
365:位址解碼器
370:資料介面
Claims (25)
- 一種操作記憶體裝置之方法,其包括:在一第一事件之後,針對與第一複數個命令相關聯地接收之複數個位址產生一第一擾亂序列集;回應於該第一複數個命令,至少部分地基於該第一擾亂序列集存取一記憶體陣列之部分,該記憶體陣列之該等部分對應於該複數個位址;在一後續事件之後,針對如與第二複數個命令相關聯地接收之該複數個位址產生一第二擾亂序列集,該第二擾亂序列集不同於該第一擾亂序列集;及回應於該第二複數個命令,至少部分地基於該第二擾亂序列集存取該記憶體陣列之該等部分。
- 如請求項1之方法,其進一步包括:接收與該複數個位址之一位址相關聯之該第一複數個命令之一命令,其中產生該第一擾亂序列集包括至少部分地基於該位址產生一擾亂序列;及接收與該命令及該位址相關聯之一資料集,其中至少部分地基於該第一擾亂序列集存取該記憶體陣列之該等部分包括:使用該擾亂序列擾亂該資料集以獲得一經擾亂資料集,及將該經擾亂資料集寫入至該記憶體陣列之對應於該位址之一部分。
- 如請求項2之方法,其進一步包括:接收與該複數個位址之該位址相關聯之該第一複數個命令之一第二命令,其中至少部分地基於該第一擾亂序列集存取該記憶體陣列之該等部分包括:至少部分地基於接收該第二命令而自該記憶體陣列之該等部分擷取該經擾亂資料集,使用該擾亂序列對該經擾亂資料集進行解擾以獲得該資料集,及回應該第二命令而輸出該資料集。
- 如請求項2之方法,其中該擾亂序列之一大小等於該資料集之一大小,且該擾亂序列之各位元對應於該資料集之一各自位元。
- 如請求項2之方法,其中該擾亂序列之一大小小於該資料集之一大小,且該擾亂序列之各位元對應於該資料集之各自複數個位元。
- 如請求項1之方法,其中產生該第一擾亂序列集包括:至少部分地基於該第一事件之一發生隨機地產生一數字;及將該數字及該複數個位址輸入至一雜湊函數,其中該雜湊函數至少部分地基於該數字及該複數個位址輸出該第一擾亂序列集。
- 如請求項6之方法,其中產生該第二擾亂序列集包括:至少部分地基於該後續事件之一發生隨機地產生一第二數字;及將該第二數字及該複數個位址輸入至該雜湊函數,其中該雜湊函數 至少部分地基於該第二數字及該複數個位址輸出該第二擾亂序列集。
- 如請求項1之方法,其中:該第一事件包括一第一通電序列;且該後續事件包括一第二通電序列。
- 如請求項1之方法,其進一步包括:接收用於使儲存於該記憶體陣列中之資料失效之一信號,其中該後續事件包括接收該信號。
- 如請求項1之方法,其進一步包括:至少部分地基於一通電序列之一發生啟用與擾亂傳達至該記憶體陣列或自該記憶體陣列傳達之資料相關聯之一模式;至少部分地基於包含於一熔絲廣播序列中之一程式碼停用該模式;及回應於第三複數個命令,至少部分地基於停用該模式而在不擾亂傳達至該記憶體陣列或自該記憶體陣列傳達之資料之情況下存取該記憶體陣列之該等部分。
- 如請求項10之方法,其進一步包括:至少部分地基於包含於一第二熔絲廣播序列中之一第二程式碼、一第二通電序列之一發生或兩者重新啟用該模式,其中產生該第一擾亂序列集至少部分地基於重新啟用該模式。
- 如請求項1之方法,其中在該後續事件之前儲存於該記憶體陣列中之資料至少部分地基於產生該第二擾亂序列集而失效。
- 如請求項1之方法,其中在該第一事件之後,該第一擾亂序列集之各擾亂序列對應於該複數個位址之一各自位址,且在該後續事件之後,該第二擾亂序列集之各擾亂序列對應於該複數個位址之一各自位址。
- 一種記憶體設備,其包括:一記憶體陣列;第一電路系統,其經組態以在一第一事件之後針對該記憶體陣列之複數個位址產生一第一擾亂序列集,且在一後續事件之後針對該複數個位址產生不同於該第一擾亂序列集之一第二擾亂序列集;及第二電路系統,其與該記憶體陣列及該第一電路系統耦合,該第二電路系統經組態以在該第一事件之後至少部分地基於該第一擾亂序列集且在該後續事件之後至少部分地基於該第二擾亂序列集而擾亂與該複數個位址相關聯之資料。
- 如請求項14之記憶體設備,其進一步包括:一外部介面,其與該第二電路系統耦合,其中該第二電路系統進一步經組態以擾亂在該記憶體陣列與該外部介面之間傳達之資料。
- 如請求項14之記憶體設備,其中該第一電路系統包括: 第三電路系統,其經組態以至少部分地基於一事件之一發生隨機地產生一數字;及第四電路系統,其與該第三電路系統耦合且經組態以實施一雜湊函數,該第四電路系統經組態以至少部分地基於自該第三電路系統接收之一最新近數字、該複數個位址及該雜湊函數而輸出擾亂序列。
- 如請求項14之記憶體設備,其中該第二電路系統包括:互斥或邏輯,其經組態以將由該第一電路系統針對一位址產生之一擾亂序列應用於與相同於該位址之一命令相關聯之一資料集。
- 如請求項14之記憶體設備,其進一步包括:一熔絲陣列,其包括:一第一組熔絲,其包括指示該記憶體陣列中有缺陷之第一位址之修復資訊;及一第二組熔絲,其包括用於停用與擾亂傳達至該記憶體陣列及自該記憶體陣列傳達之資料相關聯之一模式之一程式碼,其中該熔絲陣列經組態以將該修復資訊、該程式碼或兩者廣播至該記憶體陣列。
- 如請求項18之記憶體設備,其進一步包括:一測試組件,其與該熔絲陣列耦合且經組態以停用該模式,以觸發包括該程式碼及該修復資訊之一熔絲廣播序列,其中在該熔絲廣播序列期間非循序地傳輸該程式碼之位元。
- 如請求項18之記憶體設備,其中:該第一電路系統及該第二電路系統之至少一者進一步經組態以至少部分地基於自該熔絲陣列廣播該程式碼而停用。
- 一種記憶體設備,其包括:一記憶體陣列,其包括記憶體胞元;一外部介面,其與該記憶體陣列耦合且經組態以接收用於存取該記憶體陣列之命令,該等命令與該記憶體陣列之位址相關聯;一隨機數產生器,其經組態以至少部分地基於一事件之一發生產生一第一隨機數並至少部分地基於一後續事件之一發生產生一第二隨機數;第一邏輯,其與該隨機數產生器及該外部介面耦合且經組態以實施一雜湊函數以針對自該外部介面接收之一位址集獲得一第一擾亂序列集及一第二擾亂序列集,其中該第一擾亂序列集至少部分地基於該第一隨機數、該位址集及該雜湊函數,且其中該第二擾亂序列集至少部分地基於該第二隨機數、該位址集及該雜湊函數,且其中該第二擾亂序列集不同於該第一擾亂序列集;及第二邏輯,其與該第一邏輯耦合且經組態以在該事件之後至少部分地基於該第一擾亂序列集並在該後續事件之後至少部分地基於該第二擾亂序列集擾亂傳達至該記憶體陣列之與該位址集相關聯之一或多個記憶體胞元或自該記憶體陣列之與該位址集相關聯之該一或多個記憶體胞元傳達之資料。
- 如請求項21之記憶體設備,其中該外部介面包括:一命令介面,其經組態以自一主機接收該等命令且處理該等命令;一位址組件,其與該第一邏輯耦合且經組態以獲得與該等命令相關聯之該等位址且將該等位址提供至該第一邏輯;及資料接腳,其等與該第二邏輯耦合,經組態以在該外部介面與該主機之間傳達資料。
- 如請求項21之記憶體設備,其中該第二邏輯包括:互斥或邏輯,其經組態以將該第一擾亂序列集及該第二擾亂序列集與相關聯於該位址集之各自資料集組合。
- 如請求項21之記憶體設備,其進一步包括:一多工器,其與該第二邏輯耦合且經組態以將自該第二邏輯接收之經擾亂資料集路由至該記憶體陣列之與該位址集相關聯之該等記憶體胞元。
- 如請求項21之記憶體設備,其進一步包括:一熔絲陣列,其包括一組熔絲,該組熔絲經組態以儲存用於停用與擾亂傳達至該記憶體陣列或自該記憶體陣列傳達之資料相關聯之一模式之一程式碼。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/331,578 | 2021-05-26 | ||
US17/331,578 US20220385451A1 (en) | 2021-05-26 | 2021-05-26 | Data invalidation for memory |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202318208A TW202318208A (zh) | 2023-05-01 |
TWI815462B true TWI815462B (zh) | 2023-09-11 |
Family
ID=84193471
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111118840A TWI815462B (zh) | 2021-05-26 | 2022-05-20 | 支援用於記憶體之資料失效之方法及設備 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20220385451A1 (zh) |
EP (1) | EP4348431A1 (zh) |
CN (1) | CN117296046A (zh) |
TW (1) | TWI815462B (zh) |
WO (1) | WO2022251777A1 (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9383969B2 (en) * | 2011-04-05 | 2016-07-05 | Intrinsic Id B.V. | Random number generating system based on memory start-up noise |
US20200401549A1 (en) * | 2019-06-20 | 2020-12-24 | Analog Devices International Unlimited Company | Multi-i/o serial peripheral interface for precision converters |
TW202109335A (zh) * | 2019-08-16 | 2021-03-01 | 熵碼科技股份有限公司 | 記憶體裝置 |
US10991409B2 (en) * | 2019-07-19 | 2021-04-27 | SK Hynix Inc. | Encoder for memory system and method thereof |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7873837B1 (en) * | 2000-01-06 | 2011-01-18 | Super Talent Electronics, Inc. | Data security for electronic data flash card |
FR2980285B1 (fr) * | 2011-09-15 | 2013-11-15 | Maxim Integrated Products | Systemes et procedes de gestion de cles cryptographiques dans un microcontroleur securise |
KR20140027596A (ko) * | 2012-07-24 | 2014-03-07 | 삼성전자주식회사 | 메모리 시스템 및 메모리 시스템에서의 암호화 방법 |
US20140310534A1 (en) * | 2013-04-15 | 2014-10-16 | Apple Inc. | Data scrambling in memory devices using combined sequences |
US9576624B2 (en) * | 2014-06-30 | 2017-02-21 | Seagate Technology Llc | Multi-dimentional data randomization |
US9954681B2 (en) * | 2015-06-10 | 2018-04-24 | Nxp Usa, Inc. | Systems and methods for data encryption |
-
2021
- 2021-05-26 US US17/331,578 patent/US20220385451A1/en active Pending
-
2022
- 2022-05-06 EP EP22812355.0A patent/EP4348431A1/en active Pending
- 2022-05-06 CN CN202280034300.4A patent/CN117296046A/zh active Pending
- 2022-05-06 WO PCT/US2022/072166 patent/WO2022251777A1/en active Application Filing
- 2022-05-20 TW TW111118840A patent/TWI815462B/zh active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9383969B2 (en) * | 2011-04-05 | 2016-07-05 | Intrinsic Id B.V. | Random number generating system based on memory start-up noise |
US20200401549A1 (en) * | 2019-06-20 | 2020-12-24 | Analog Devices International Unlimited Company | Multi-i/o serial peripheral interface for precision converters |
US10991409B2 (en) * | 2019-07-19 | 2021-04-27 | SK Hynix Inc. | Encoder for memory system and method thereof |
TW202109335A (zh) * | 2019-08-16 | 2021-03-01 | 熵碼科技股份有限公司 | 記憶體裝置 |
Also Published As
Publication number | Publication date |
---|---|
CN117296046A (zh) | 2023-12-26 |
US20220385451A1 (en) | 2022-12-01 |
WO2022251777A1 (en) | 2022-12-01 |
EP4348431A1 (en) | 2024-04-10 |
TW202318208A (zh) | 2023-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11625170B2 (en) | Row hammer protection for a memory device | |
CN111352871B (zh) | 针对存储器装置的降级传信 | |
US11257534B2 (en) | Current monitor for a memory device | |
TWI815462B (zh) | 支援用於記憶體之資料失效之方法及設備 | |
US11948656B1 (en) | Counter management for memory systems | |
US12001707B2 (en) | Host verification for a memory device | |
US20230350580A1 (en) | Techniques for non-volatile data protection | |
US11948655B2 (en) | Indicating a blocked repair operation | |
US20230205874A1 (en) | Voltage input and clock speed change determination to detect attack | |
US20220057960A1 (en) | Host verification for a memory device | |
US20230205430A1 (en) | Verification of a volatile memory using a unique identifier | |
US11886745B2 (en) | Illegal operation reaction at a memory device | |
US11791011B1 (en) | Self-repair verification | |
US20230350582A1 (en) | Data masking for memory | |
US20230394143A1 (en) | Protective actions for a memory device based on detecting an attack | |
US11948622B2 (en) | Generating access line voltages | |
US20230325507A1 (en) | Secure operating system update | |
US20230197180A1 (en) | Address fault detection | |
US20230334152A1 (en) | Temperature change measurement to detect attack | |
TW202341136A (zh) | 電力狀態過渡時之單元干擾 | |
KR20220168994A (ko) | 셀 데이터 벌크 리셋 | |
CN112820335A (zh) | 用于存储器感测的快速激活 | |
CN116361789A (zh) | 用以检测攻击的训练程序改变确定 | |
CN117149055A (zh) | 基于检测攻击的用于存储器装置的保护性动作 | |
CN112786082A (zh) | 用于存储器感测的快速预充电 |