CN101770809B - 用于非易失性存储器掉电后的恢复的方法和系统 - Google Patents
用于非易失性存储器掉电后的恢复的方法和系统 Download PDFInfo
- Publication number
- CN101770809B CN101770809B CN200910222338.0A CN200910222338A CN101770809B CN 101770809 B CN101770809 B CN 101770809B CN 200910222338 A CN200910222338 A CN 200910222338A CN 101770809 B CN101770809 B CN 101770809B
- Authority
- CN
- China
- Prior art keywords
- page
- free
- piece
- data
- mark
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1009—Address translation using page tables, e.g. page table structures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- 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/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7202—Allocation control and policies
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7209—Validity control, e.g. using flags, time stamps or sequence numbers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US12/347,935 US9612954B2 (en) | 2008-12-31 | 2008-12-31 | Recovery for non-volatile memory after power loss |
| US12/347,935 | 2008-12-31 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN101770809A CN101770809A (zh) | 2010-07-07 |
| CN101770809B true CN101770809B (zh) | 2014-03-26 |
Family
ID=42221053
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN200910222338.0A Active CN101770809B (zh) | 2008-12-31 | 2009-11-13 | 用于非易失性存储器掉电后的恢复的方法和系统 |
Country Status (6)
| Country | Link |
|---|---|
| US (2) | US9612954B2 (enExample) |
| JP (1) | JP5528782B2 (enExample) |
| KR (1) | KR101613678B1 (enExample) |
| CN (1) | CN101770809B (enExample) |
| DE (1) | DE102009051862A1 (enExample) |
| SG (2) | SG196777A1 (enExample) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN108874318A (zh) * | 2018-06-22 | 2018-11-23 | 郑州云海信息技术有限公司 | 固态硬盘的数据恢复方法以及固态硬盘 |
| US10552311B2 (en) | 2008-12-31 | 2020-02-04 | Micron Technology, Inc. | Recovery for non-volatile memory after power loss |
Families Citing this family (56)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101409766B1 (ko) * | 2007-06-18 | 2014-06-19 | 삼성전자주식회사 | 외부 장치 접속 처리 방법 및 시스템과, 이를 이용하는휴대 단말기 |
| US8443167B1 (en) | 2009-12-16 | 2013-05-14 | Western Digital Technologies, Inc. | Data storage device employing a run-length mapping table and a single address mapping table |
| US8194340B1 (en) | 2010-03-18 | 2012-06-05 | Western Digital Technologies, Inc. | Disk drive framing write data with in-line mapping data during write operations |
| US8856438B1 (en) | 2011-12-09 | 2014-10-07 | Western Digital Technologies, Inc. | Disk drive with reduced-size translation table |
| US8693133B1 (en) | 2010-03-22 | 2014-04-08 | Western Digital Technologies, Inc. | Systems and methods for improving sequential data rate performance using sorted data zones for butterfly format |
| US8699185B1 (en) | 2012-12-10 | 2014-04-15 | Western Digital Technologies, Inc. | Disk drive defining guard bands to support zone sequentiality when butterfly writing shingled data tracks |
| US8687306B1 (en) | 2010-03-22 | 2014-04-01 | Western Digital Technologies, Inc. | Systems and methods for improving sequential data rate performance using sorted data zones |
| US9330715B1 (en) | 2010-03-22 | 2016-05-03 | Western Digital Technologies, Inc. | Mapping of shingled magnetic recording media |
| US20120117303A1 (en) * | 2010-11-04 | 2012-05-10 | Numonyx B.V. | Metadata storage associated with flash translation layer |
| US8601313B1 (en) | 2010-12-13 | 2013-12-03 | Western Digital Technologies, Inc. | System and method for a data reliability scheme in a solid state memory |
| US8601311B2 (en) | 2010-12-14 | 2013-12-03 | Western Digital Technologies, Inc. | System and method for using over-provisioned data capacity to maintain a data redundancy scheme in a solid state memory |
| US8615681B2 (en) | 2010-12-14 | 2013-12-24 | Western Digital Technologies, Inc. | System and method for maintaining a data redundancy scheme in a solid state memory in the event of a power loss |
| US8683113B2 (en) * | 2011-02-04 | 2014-03-25 | Western Digital Technologies, Inc. | Concurrently searching multiple devices of a non-volatile semiconductor memory |
| US8700950B1 (en) | 2011-02-11 | 2014-04-15 | Western Digital Technologies, Inc. | System and method for data error recovery in a solid state subsystem |
| US8700951B1 (en) * | 2011-03-09 | 2014-04-15 | Western Digital Technologies, Inc. | System and method for improving a data redundancy scheme in a solid state subsystem with additional metadata |
| US9361044B2 (en) * | 2011-03-28 | 2016-06-07 | Western Digital Technologies, Inc. | Power-safe data management system |
| US8793429B1 (en) | 2011-06-03 | 2014-07-29 | Western Digital Technologies, Inc. | Solid-state drive with reduced power up time |
| CN103106143B (zh) * | 2011-11-11 | 2016-01-13 | 光宝科技股份有限公司 | 固态储存装置及其逻辑至实体对应表建立方法 |
| CN102426856B (zh) * | 2011-12-08 | 2016-04-13 | 上海新储集成电路有限公司 | 基于相变存储单元的非易失性d触发器电路及实现方法 |
| CN103164345B (zh) * | 2011-12-08 | 2016-04-27 | 光宝科技股份有限公司 | 固态存储装置遭遇断电后的数据存储方法 |
| US9213493B1 (en) | 2011-12-16 | 2015-12-15 | Western Digital Technologies, Inc. | Sorted serpentine mapping for storage drives |
| US9158700B2 (en) * | 2012-01-20 | 2015-10-13 | Seagate Technology Llc | Storing cached data in over-provisioned memory in response to power loss |
| US20140013031A1 (en) * | 2012-07-09 | 2014-01-09 | Yoko Masuo | Data storage apparatus, memory control method, and electronic apparatus having a data storage apparatus |
| US9478271B2 (en) * | 2013-03-14 | 2016-10-25 | Seagate Technology Llc | Nonvolatile memory data recovery after power failure |
| KR102127284B1 (ko) | 2013-07-01 | 2020-06-26 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 관리 방법 |
| KR20150015621A (ko) * | 2013-07-31 | 2015-02-11 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
| US10643668B1 (en) * | 2013-08-27 | 2020-05-05 | Seagate Technology Llc | Power loss data block marking |
| JP6263068B2 (ja) * | 2014-03-28 | 2018-01-17 | 株式会社メガチップス | 半導体記憶装置 |
| KR102272228B1 (ko) * | 2014-05-13 | 2021-07-06 | 삼성전자주식회사 | 불휘발성 메모리 장치, 그것을 포함하는 저장 장치 및 그것의 동작 방법 |
| US8953269B1 (en) | 2014-07-18 | 2015-02-10 | Western Digital Technologies, Inc. | Management of data objects in a data object zone |
| US9875055B1 (en) | 2014-08-04 | 2018-01-23 | Western Digital Technologies, Inc. | Check-pointing of metadata |
| US9904688B2 (en) | 2014-09-30 | 2018-02-27 | International Business Machines Corporation | Buffering and replicating data written to a distributed storage system |
| US9916325B2 (en) | 2014-09-30 | 2018-03-13 | International Business Machines Corporation | Quick initialization of data regions in a distributed storage system |
| US9728278B2 (en) * | 2014-10-24 | 2017-08-08 | Micron Technology, Inc. | Threshold voltage margin analysis |
| US9785362B2 (en) * | 2015-07-16 | 2017-10-10 | Qualcomm Incorporated | Method and apparatus for managing corruption of flash memory contents |
| WO2017014793A1 (en) * | 2015-07-23 | 2017-01-26 | Hewlett Packard Enterprise Development Lp | Preserving volatile memory across a computer system disruption |
| US10838818B2 (en) | 2015-09-18 | 2020-11-17 | Hewlett Packard Enterprise Development Lp | Memory persistence from a volatile memory to a non-volatile memory |
| KR102625637B1 (ko) * | 2016-02-01 | 2024-01-17 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
| FR3051574A1 (fr) * | 2016-05-20 | 2017-11-24 | Proton World Int Nv | Gestion du stockage dans une memoire flash |
| US10521126B2 (en) | 2016-08-11 | 2019-12-31 | Tuxera, Inc. | Systems and methods for writing back data to a storage device |
| FR3055992A1 (fr) | 2016-09-09 | 2018-03-16 | Proton World International N.V. | Gestion d'index dans une memoire flash |
| TWI607312B (zh) | 2016-10-07 | 2017-12-01 | 慧榮科技股份有限公司 | 資料儲存裝置及其資料寫入方法 |
| US10168905B1 (en) | 2017-06-07 | 2019-01-01 | International Business Machines Corporation | Multi-channel nonvolatile memory power loss management |
| US10096380B1 (en) * | 2017-08-31 | 2018-10-09 | Micron Technology, Inc. | Erase page check |
| FR3072476A1 (fr) | 2017-10-13 | 2019-04-19 | Proton World International N.V. | Unite logique de memoire pour memoire flash |
| US11163679B2 (en) * | 2018-04-04 | 2021-11-02 | SK Hynix Inc. | Garbage collection strategy for memory system and method of executing such garbage collection |
| US11042451B2 (en) | 2018-12-14 | 2021-06-22 | International Business Machines Corporation | Restoring data lost from battery-backed cache |
| US10747612B2 (en) * | 2018-12-31 | 2020-08-18 | Micron Technology, Inc. | Multi-page parity protection with power loss handling |
| TWI745695B (zh) * | 2019-05-22 | 2021-11-11 | 慧榮科技股份有限公司 | 用來進行無預警斷電復原管理之方法、記憶裝置及其控制器以及電子裝置 |
| TWI718975B (zh) * | 2020-07-17 | 2021-02-11 | 汎思數據股份有限公司 | 提高記憶體資料讀寫速度的方法及裝置 |
| KR20220066601A (ko) * | 2020-11-16 | 2022-05-24 | 삼성전자주식회사 | 스토리지 장치, 상기 스토리지 장치를 포함하는 전자 시스템 및 상기 스토리지 장치의 동작 방법 |
| CN113885791B (zh) * | 2021-09-08 | 2024-07-16 | 北京维普无限智能技术有限公司 | Flash存储器的数据写入方法、读取方法和装置 |
| CN114327258B (zh) * | 2021-11-30 | 2023-08-15 | 苏州浪潮智能科技有限公司 | 一种固态硬盘处理方法、系统、设备及计算机存储介质 |
| JP2023136083A (ja) | 2022-03-16 | 2023-09-29 | キオクシア株式会社 | メモリシステムおよび制御方法 |
| CN115237352B (zh) * | 2022-08-03 | 2023-08-15 | 中国电子科技集团公司信息科学研究院 | 隐匿存储方法、装置、存储介质和电子设备 |
| CN117251116B (zh) * | 2023-11-14 | 2024-02-20 | 苏州元脑智能科技有限公司 | 非易失性存储器的擦写方法及装置 |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5404485A (en) * | 1993-03-08 | 1995-04-04 | M-Systems Flash Disk Pioneers Ltd. | Flash file system |
| US6170066B1 (en) * | 1995-09-29 | 2001-01-02 | Intel Corporation | Power-off recovery management for sector based flash media managers |
| US6675278B1 (en) * | 2000-04-19 | 2004-01-06 | Motorola, Inc. | Method and apparatus for managing memory |
| CN1991790A (zh) * | 2005-12-27 | 2007-07-04 | 三星电子株式会社 | 使用非易失性存储器作为高速缓存器的存储设备及其方法 |
| CN101025715A (zh) * | 2007-03-07 | 2007-08-29 | 北京飞天诚信科技有限公司 | 基于非易失性存储器中两个连续逻辑块的掉电保护方法 |
Family Cites Families (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4814971A (en) * | 1985-09-11 | 1989-03-21 | Texas Instruments Incorporated | Virtual memory recovery system using persistent roots for selective garbage collection and sibling page timestamping for defining checkpoint state |
| US5337275A (en) * | 1992-10-30 | 1994-08-09 | Intel Corporation | Method for releasing space in flash EEPROM memory array to allow the storage of compressed data |
| JP3726663B2 (ja) | 2000-09-07 | 2005-12-14 | 日産自動車株式会社 | 電子制御装置の制御データ記憶装置 |
| JP3692313B2 (ja) | 2001-06-28 | 2005-09-07 | 松下電器産業株式会社 | 不揮発性メモリの制御方法 |
| JP3928724B2 (ja) | 2003-02-20 | 2007-06-13 | ソニー株式会社 | 記録媒体の記録制御方法および記録媒体の記録制御装置 |
| DE10321104B4 (de) | 2003-05-09 | 2016-04-07 | Robert Bosch Gmbh | Verfahren zur Ablage von veränderlichen Daten |
| JP2005085011A (ja) * | 2003-09-09 | 2005-03-31 | Renesas Technology Corp | 不揮発性メモリ制御装置 |
| JP3969494B2 (ja) | 2004-08-31 | 2007-09-05 | 三菱電機株式会社 | 車載電子制御装置 |
| JP4843222B2 (ja) | 2005-01-11 | 2011-12-21 | 株式会社東芝 | 半導体記憶装置の制御方法、メモリカード、及びホスト機器 |
| JP5162846B2 (ja) | 2005-07-29 | 2013-03-13 | ソニー株式会社 | 記憶装置、コンピュータシステム、および記憶システム |
| KR100781515B1 (ko) * | 2006-01-10 | 2007-12-03 | 삼성전자주식회사 | 트랜잭션 처리를 위한 로그 정보 관리 시스템 및 방법 |
| WO2008087634A1 (en) | 2007-01-18 | 2008-07-24 | Sandisk Il Ltd. | A method and system for facilitating fast wake-up of a flash memory system |
| US7725437B2 (en) * | 2007-07-31 | 2010-05-25 | Hewlett-Packard Development Company, L.P. | Providing an index for a data store |
| US9542431B2 (en) * | 2008-10-24 | 2017-01-10 | Microsoft Technology Licensing, Llc | Cyclic commit transaction protocol |
| US9612954B2 (en) | 2008-12-31 | 2017-04-04 | Micron Technology, Inc. | Recovery for non-volatile memory after power loss |
-
2008
- 2008-12-31 US US12/347,935 patent/US9612954B2/en active Active
-
2009
- 2009-11-04 DE DE102009051862A patent/DE102009051862A1/de not_active Withdrawn
- 2009-11-05 JP JP2009269278A patent/JP5528782B2/ja active Active
- 2009-11-09 SG SG2013096912A patent/SG196777A1/en unknown
- 2009-11-09 SG SG200907451-9A patent/SG162655A1/en unknown
- 2009-11-13 CN CN200910222338.0A patent/CN101770809B/zh active Active
- 2009-11-13 KR KR1020090109644A patent/KR101613678B1/ko active Active
-
2017
- 2017-04-03 US US15/477,169 patent/US10552311B2/en active Active
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5404485A (en) * | 1993-03-08 | 1995-04-04 | M-Systems Flash Disk Pioneers Ltd. | Flash file system |
| US6170066B1 (en) * | 1995-09-29 | 2001-01-02 | Intel Corporation | Power-off recovery management for sector based flash media managers |
| US6675278B1 (en) * | 2000-04-19 | 2004-01-06 | Motorola, Inc. | Method and apparatus for managing memory |
| CN1991790A (zh) * | 2005-12-27 | 2007-07-04 | 三星电子株式会社 | 使用非易失性存储器作为高速缓存器的存储设备及其方法 |
| CN101025715A (zh) * | 2007-03-07 | 2007-08-29 | 北京飞天诚信科技有限公司 | 基于非易失性存储器中两个连续逻辑块的掉电保护方法 |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10552311B2 (en) | 2008-12-31 | 2020-02-04 | Micron Technology, Inc. | Recovery for non-volatile memory after power loss |
| CN108874318A (zh) * | 2018-06-22 | 2018-11-23 | 郑州云海信息技术有限公司 | 固态硬盘的数据恢复方法以及固态硬盘 |
| CN108874318B (zh) * | 2018-06-22 | 2021-09-17 | 郑州云海信息技术有限公司 | 固态硬盘的数据恢复方法以及固态硬盘 |
Also Published As
| Publication number | Publication date |
|---|---|
| US20100169543A1 (en) | 2010-07-01 |
| DE102009051862A1 (de) | 2010-07-01 |
| KR20100080350A (ko) | 2010-07-08 |
| SG196777A1 (en) | 2014-02-13 |
| JP5528782B2 (ja) | 2014-06-25 |
| US9612954B2 (en) | 2017-04-04 |
| SG162655A1 (en) | 2010-07-29 |
| JP2010157216A (ja) | 2010-07-15 |
| CN101770809A (zh) | 2010-07-07 |
| US20170206157A1 (en) | 2017-07-20 |
| KR101613678B1 (ko) | 2016-04-19 |
| US10552311B2 (en) | 2020-02-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN101770809B (zh) | 用于非易失性存储器掉电后的恢复的方法和系统 | |
| US10452535B2 (en) | Method for reusing destination block related to garbage collection in memory device, associated memory device and controller thereof, and associated electronic device | |
| US8914702B2 (en) | Bit error repair method and information processing apparatus | |
| JP4129381B2 (ja) | 不揮発性半導体記憶装置 | |
| JP4570891B2 (ja) | 記憶装置 | |
| TWI489466B (zh) | 記憶體抹除方法、記憶體控制器與記憶體儲存裝置 | |
| TWI421683B (zh) | 資料管理方法、記憶體控制器與記憶體儲存裝置 | |
| CN107704338B (zh) | 一种资料储存型闪存的数据恢复方法和装置 | |
| TWI509615B (zh) | 資料儲存方法、記憶體控制器與記憶體儲存裝置 | |
| CN103514103A (zh) | 数据保护方法、存储器控制器与存储器储存装置 | |
| US12307236B2 (en) | Firmware updating method and data storage device utilizing the same | |
| CN113434086B (zh) | 数据存储方法、装置、非易失性存储器件和存储器 | |
| JP4239754B2 (ja) | 不揮発メモリシステム | |
| US6381175B2 (en) | Method and system for validating flash memory | |
| KR100652506B1 (ko) | 시스템 운용 데이터 자가 복구 장치 및 방법 | |
| KR102711942B1 (ko) | 에러 복구 방법, 이를 이용한 마이크로 컨트롤러 유닛, 및 상기 마이크로 컨트롤러를 포함하는 배터리 장치 | |
| US12307237B2 (en) | Firmware updating method and data storage device utilizing the same | |
| CN116913349B (zh) | 擦除干扰检测方法、修复方法、装置、芯片及电子设备 | |
| CN114385082A (zh) | Nor闪存的数据处理方法、存储介质及ssd设备 | |
| CN120892257A (zh) | 一种掉电数据保持方法、装置及嵌入式处理器 | |
| US11881276B2 (en) | Error correcting code decoder | |
| CN113946469B (zh) | 一种固态硬盘的数据纠错处理方法及装置 | |
| CN112309474B (zh) | 一种提高全芯片擦除速度的方法 | |
| CN113345505B (zh) | 闪存及闪存的工作方法 | |
| CN104598167B (zh) | 存储器抹除方法、存储器控制器与存储器储存装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |