KR101702201B1 - 솔리드 스테이트 드라이브(ssd)에 대한 최적화된 컨텍스트 드롭 - Google Patents
솔리드 스테이트 드라이브(ssd)에 대한 최적화된 컨텍스트 드롭 Download PDFInfo
- Publication number
- KR101702201B1 KR101702201B1 KR1020147033549A KR20147033549A KR101702201B1 KR 101702201 B1 KR101702201 B1 KR 101702201B1 KR 1020147033549 A KR1020147033549 A KR 1020147033549A KR 20147033549 A KR20147033549 A KR 20147033549A KR 101702201 B1 KR101702201 B1 KR 101702201B1
- Authority
- KR
- South Korea
- Prior art keywords
- segments
- paging table
- paging
- segment
- queue
- Prior art date
Links
- 239000007787 solid Substances 0.000 title description 2
- 238000000034 method Methods 0.000 claims abstract description 40
- 238000011084 recovery Methods 0.000 claims abstract description 33
- 238000013507 mapping Methods 0.000 claims description 17
- 230000008859 change Effects 0.000 claims description 14
- 239000003550 marker Substances 0.000 claims description 10
- 230000001172 regenerating effect Effects 0.000 claims description 7
- 230000008929 regeneration Effects 0.000 claims description 3
- 238000011069 regeneration method Methods 0.000 claims description 3
- 230000002085 persistent effect Effects 0.000 claims description 2
- 230000000977 initiatory effect Effects 0.000 claims 3
- 230000006735 deficit Effects 0.000 claims 2
- 238000001514 detection method Methods 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 11
- 230000007246 mechanism Effects 0.000 abstract description 6
- 238000013459 approach Methods 0.000 description 21
- 238000010586 diagram Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 3
- 239000000872 buffer Substances 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011010 flushing procedure Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000002070 nanowire Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
-
- 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/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; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1441—Resetting or repowering
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
도 1은 본 명세서의 구성과 함께 사용하기에 적합한 컴퓨팅 환경의 컨텍스트 다이어그램(context diagram)이다.
도 2는 도 1에서와 같은 페이징 테이블 스토리지(paging table storage)의 블럭도이다.
도 3은 도 1의 환경에서 페이징 테이블(L2P) 스토리지 및 복구의 순서도이다.
도 4는 도 3의 접근방식의 타이밍 다이어그램이다.
도 5는 도 4의 메모리 컴포넌트에서 사용되는 시스템 및 사용자 밴드를 도시한다.
도 6 내지 도 9는 본 명세서에 정의되는 바와 같은 전력 손실 및 복구 메커니즘의 순서도이다.
Claims (21)
- 데이터를 저장하는 방법으로서,
페이징 테이블로부터 불휘발성 메모리에 기입된 페이징 테이블 세그먼트들의 시퀀스(a sequence of paging table segments)를 식별하는 단계- 상기 페이징 테이블은 가상 참조(virtual reference)를 상기 불휘발성 메모리에서의 물리적 위치(physical location)로 전환함 -;
상기 식별된 시퀀스를 세그먼트들에 대한 포인터들의 FIFO(First-In, First-Out) 정리(ordering)를 사용하여 큐(queue)에 유지하는 단계 - 상기 세그먼트들은 상기 불휘발성 메모리에 대한 L2P(Logical to Physical) 맵핑으로부터의 페이지들을 나타내며, 상기 L2P 맵핑은 호스트 컴퓨팅 디바이스로부터의 대용량 스토리지 이용을 지원함 -;
각각의 페이징 테이블 세그먼트에 대해, 기입된 순서에 대응하는 시퀀스 번호(sequence number) 및 해당 세그먼트에서의 변화들에 대응하는 적어도 하나의 마커(marker)를 저장하는 단계; 및
상기 페이징 테이블의 적어도 일부의 손상(compromise)의 검출시, 상기 저장된 마커들로부터 상기 변화들을 재생(replaying)하고 상기 손상된 페이징 테이블 세그먼트들을 재건(regenerating)함으로써 상기 식별된 시퀀스에 대응하는 페이징 테이블 세그먼트들을 재생성(recreating)하는 단계
를 포함하고,
상기 재생 단계는,
상기 저장된 시퀀스 번호들을 횡단(traverse)하여 상기 불휘발성 메모리에 기입된 페이지들의 순서(ordering of pages)를 식별하는 단계 - 상기 세그먼트들은 변화들을 나타내는 마커들을 포함함 -, 및
시퀀스 번호에 의해 식별되는 최종 페이지-아웃된(paged-out) 세그먼트를 스캔함으로써 상기 손상 이전에 기입된 최종 페이징 테이블 세그먼트로부터 변화된 세그먼트들의 재생을 시작하는 단계를 더 포함하고, 상기 최종 페이지-아웃된 세그먼트는 상기 세그먼트가 처음 변경될 때 기입 스트림 포인터들의 위치들을 지정하고, 이 세그먼트로부터 재생을 시작하는, 방법. - 삭제
- 제1항에 있어서,
상기 재생성 단계는,
상기 큐로부터 상기 불휘발성 메모리에 기입된 최종 페이징 테이블 세그먼트를 스캔하는 단계;
상기 시퀀스 번호들에 기초하여 연속적인 페이징 테이블 세그먼트들을 식별하는 단계; 및
상기 페이징 테이블 세그먼트들과 함께 저장된 마커들로부터, 상기 손상시 손실된 상기 페이징 테이블에 대한 변화들을 판정하는 단계를 더 포함하는, 방법. - 삭제
- L2P(Logical to Physical) 맵핑 테이블을 저장하는 방법을 수행하는 명령어들이 인코드된 적어도 하나의 비일시적 컴퓨터 판독가능 매체로서,
상기 명령어들은 호스트 컴퓨팅 디바이스 상에서 실행시 상기 컴퓨팅 디바이스로 하여금:
불휘발성 메모리에 기입된 페이징 테이블의 세그먼트들을 정리하는(ordering) 큐를 유지하고 - 상기 페이징 테이블은 PLR(Power Loss Recovery)을 예상하고 메모리 페이지 리다이렉션(redirection)을 위한 것임 -, 세그먼트들에 대한 포인터들의 FIFO(First-In, First-Out) 정리를 사용하여 큐를 포함하여 식별된 시퀀스를 유지하는 단계 - 상기 세그먼트들은 상기 불휘발성 메모리에 대한 L2P(Logical to Physical) 맵핑으로부터의 페이지들을 나타내며, 상기 L2P 맵핑은 호스트 컴퓨팅 디바이스로부터의 대용량 스토리지 이용을 지원함 -;
상기 큐로부터의 페이징 테이블 세그먼트들을 상기 페이징 테이블 세그먼트들의 기입 순서에 기초하는 대응 시퀀스 번호와 함께 저장하는 단계;
상기 페이징 테이블의 손상시, 상기 시퀀스 번호에 기초하여 최종 저장된 페이징 테이블 세그먼트를 식별하는 단계;
상기 시퀀스 번호들에 기초하여, 상기 페이징 테이블 세그먼트들 각각을 재생하는 단계; 및
각각의 페이징 테이블 세그먼트와 함께 저장된 마커들에 기초하여, 상기 페이징 테이블을 손상 이전 상태(pre-compromise state)로 재생성하는 단계
를 포함하는 방법을 수행하게 하고,
상기 재생 단계는,
상기 저장된 시퀀스 번호들을 횡단하여 상기 불휘발성 메모리에 기입된 페이지들의 순서를 식별하는 단계 - 상기 세그먼트들은 변화들을 나타내는 마커들을 포함함 -, 및
시퀀스 번호에 의해 식별되는 최종 페이지-아웃된 세그먼트를 스캔함으로써 상기 손상 이전에 기입된 최종 페이징 테이블 세그먼트로부터 변화된 세그먼트들의 재생을 시작하는 단계를 더 포함하고, 상기 최종 페이지-아웃된 세그먼트는 상기 세그먼트가 처음 변경될 때 기입 스트림 포인터들의 위치들을 지정하고, 이 세그먼트로부터 재생을 시작하는, 비일시적 컴퓨터 판독가능 매체. - 제5항에 있어서,
상기 방법은, 상기 식별된 시퀀스를 세그먼트들의 FIFO(First-In, First-Out) 정리를 사용하여 큐에 유지하는 단계를 더 포함하고, 상기 세그먼트들은 상기 불휘발성 메모리에 대한 L2P(Logical to Physical) 맵핑으로부터의 페이지들을 나타내며, 상기 L2P 맵핑은 호스트 컴퓨팅 디바이스로부터의 대용량 스토리지 이용을 지원하는, 비일시적 컴퓨터 판독가능 매체. - 제5항에 있어서,
상기 재생성 단계는,
상기 불휘발성 메모리에 기입된 최종 페이징 테이블 세그먼트를 스캔하는 단계;
상기 시퀀스 번호들에 기초하여 연속적인 페이징 테이블 세그먼트들을 식별하는 단계; 및
상기 페이징 테이블 세그먼트들과 함께 저장된 마커들로부터, 상기 손상시 손실된 상기 페이징 테이블에 대한 변화들을 판정하는 단계를 더 포함하는, 비일시적 컴퓨터 판독가능 매체. - 제7항에 있어서,
상기 재생은 상기 저장된 시퀀스 번호들을 횡단하여 상기 불휘발성 메모리에 기입된 페이지들의 순서를 식별하고, 상기 세그먼트들은 변화들을 나타내는 마커들을 포함하며,
상기 손상 이전에 기입된 최종 페이징 테이블 세그먼트로부터 변화된 세그먼트들의 재생을 시작하는, 비일시적 컴퓨터 판독가능 매체. - 제5항에 있어서,
상기 손상을 검출하는 단계는 전력 손실을 식별하는 단계를 더 포함하고, 상기 전력 손실은 재시작시 PLR(Power Loss Recovery)을 불러오고(invoke), 상기 PLR은 상기 불휘발성 메모리에 대한 최근 변화들을 저장하고 있는 시스템 밴드(system band)들을 식별하는, 비일시적 컴퓨터 판독가능 매체. - 제5항에 있어서,
상기 방법은, 사용자 기입 스트림 및 시스템 기입 스트림을 기입하는 단계를 더 포함하고, 상기 시스템 기입 스트림은 시스템 개시 태스크들에 대응하고, 상기 페이징 테이블 세그먼트들은 상기 시스템 기입 스트림을 사용하여 저장되며 시스템 밴드들에서 식별되고, 각각의 밴드는 복수의 페이징 테이블 세그먼트를 나타내는, 비일시적 컴퓨터 판독가능 매체. - 제5항에 있어서,
상기 큐를 유지하는 단계는,
상기 페이징 테이블 세그먼트들을 페이징 메모리 영역에 저장하는 단계, 및 상기 큐에 기초하여 상기 페이징 메모리 영역으로부터 상기 페이징 테이블 세그먼트들을 기입하는 단계를 더 포함하고, 상기 불휘발성 메모리는 지속적이고 전원과는 독립적인, 비일시적 컴퓨터 판독가능 매체. - 제11항에 있어서,
상기 큐를 유지하는 단계는,
상기 페이징 테이블의 적어도 일부를 상기 페이징 메모리 영역에 저장하는 단계;
상기 페이징 테이블의 적어도 일부를 상기 불휘발성 메모리에 저장하는 단계; 및
상기 페이징 테이블 세그먼트들을 상기 큐에서의 순서에 기초하여 기입하는 단계를 더 포함하고, 상기 PLR(Power Loss Recovery)는 상기 큐에서의 세그먼트 수에 의해 제한되는, 비일시적 컴퓨터 판독가능 매체. - 제5항에 있어서,
상기 큐를 유지하는 단계는,
페이징 테이블 세그먼트에 대해 변경이 이루어지면 해당 페이징 테이블 세그먼트를 오염된 것으로서 마킹(marking)하는 단계;
오염된 세그먼트들을 마킹된 순서로 큐에 더하여(enqueuing), 상기 오염된 세그먼트에 의해 참조되는 메모리 페이지가 상기 불휘발성 메모리에 미리 기입되도록 하는 단계;
상기 오염된 세그먼트들에 대해서만 시동시 PLR을 시작하는 단계; 및
이미 기입된 페이징 테이블 세그먼트를 나타내는 시스템 밴드들로부터 마커 정보를 복구하는 단계를 더 포함하는, 비일시적 컴퓨터 판독가능 매체. - 제5항에 있어서,
재생중 페이징을 절감하는 단계를 더 포함하고,
각각의 저장된 페이징 테이블 세그먼트에 대해, 해당 페이징 테이블 세그먼트에 표현되는 변경된 메모리 세그먼트들의 리스트를 식별하는 단계;
재생중, 상기 변경된 메모리 세그먼트들의 리스트를 횡단하는 단계; 및
상기 변경된 메모리 세그먼트들에 관계된 맵핑 정보만을 사용하여 상기 페이징 테이블을 재생성하는 단계를 더 포함하는, 비일시적 컴퓨터 판독가능 매체. - 데이터를 저장하는 컴퓨팅 장치로서,
PLR(Power Loss Recovery)을 예상하고 메모리 페이지 리다이렉션을 위한 페이징 테이블을 저장하는 페이징 메모리;
불휘발성 메모리에 기입되는 상기 페이징 테이블의 세그먼트들을 정리하는 큐 - 상기 큐는 세그먼트들에 대한 포인터들의 FIFO(First-In, First-Out) 정리를 사용하고, 상기 큐는 식별된 시퀀스를 유지하고, 상기 세그먼트들은 상기 불휘발성 메모리에 대한 L2P(Logical to Physical) 맵핑으로부터의 페이지들을 나타내며, 상기 L2P 맵핑은 호스트 컴퓨팅 디바이스로부터의 대용량 스토리지 이용을 지원함 -;
상기 큐로부터의 페이징 테이블 세그먼트들을 상기 페이징 테이블 세그먼트들의 기입 순서에 기초하는 대응 시퀀스 번호와 함께 저장하는 스토리지 로직;
상기 페이징 테이블의 손상시, 상기 시퀀스 번호에 기초하여 최종 저장된 페이징 테이블 세그먼트를 식별하는 전력 손실 복구(PLR) 로직;
상기 시퀀스 번호들에 기초하여, 상기 페이징 테이블 세그먼트들 각각을 재생하는 상기 불휘발성 메모리로의 인터페이스; 및
각 페이징 테이블 세그먼트와 함께 저장된 마커들에 기초하여, 상기 페이징 테이블을 손상 이전 상태로 재생성하는 상기 페이징 메모리로의 인터페이스
를 포함하고,
상기 인터페이스들은,
상기 저장된 시퀀스 번호들을 횡단하여 상기 불휘발성 메모리에 기입된 페이지들의 순서를 식별하고 - 상기 세그먼트들은 변화들을 나타내는 마커들을 포함함 -,
시퀀스 번호에 의해 식별되는 최종 페이지-아웃된 세그먼트를 스캔함으로써 상기 손상 이전에 기입된 최종 페이징 테이블 세그먼트로부터 변화된 세그먼트들의 재생을 시작하도록 구성되고, 상기 최종 페이지-아웃된 세그먼트는 상기 세그먼트가 처음 변경될 때 기입 스트림 포인터들의 위치들을 지정하고, 이 세그먼트로부터 재생을 시작하는, 컴퓨팅 장치. - 삭제
- 제15항에 있어서,
사용자 기입 스트림 및 시스템 기입 스트림을 더 포함하고, 상기 시스템 기입 스트림은 시스템 개시 태스크들에 대응하고, 상기 페이징 테이블 세그먼트들은 상기 시스템 기입 스트림을 사용하여 저장되며 시스템 밴드들에서 식별되고, 각각의 밴드는 복수의 페이징 테이블 세그먼트를 나타내는, 컴퓨팅 장치. - 제15항에 있어서,
상기 스토리지 로직은, 상기 페이징 테이블 세그먼트들을 페이징 메모리 영역에 저장하고, 상기 큐에 기초하여 상기 페이징 메모리 영역으로부터 상기 페이징 테이블 세그먼트들을 기입함으로써 상기 큐를 유지하고, 상기 불휘발성 메모리는 지속적이고 전원과는 독립적인, 컴퓨팅 장치. - 제18항에 있어서,
상기 스토리지 로직은,
상기 페이징 테이블의 적어도 일부를 상기 페이징 메모리 영역에 저장하고;
상기 페이징 테이블의 적어도 일부를 상기 불휘발성 메모리에 저장하며;
상기 페이징 테이블 세그먼트들을 상기 큐에서의 순서에 기초하여 기입하도록 더욱 구성되고, 상기 전력 손실 복구는 상기 큐에서의 세그먼트 수에 의해 제한되는, 컴퓨팅 장치. - 제15항에 있어서,
상기 페이징 테이블 세그먼트들은 마커들을 더 포함하고, 상기 전력 손실 복구(PLR) 로직은 상기 저장된 시퀀스 번호들을 횡단하여 상기 불휘발성 메모리에 기입된 페이지들의 순서를 식별하고, 상기 세그먼트들은 변화들을 나타내는 마커들을 포함하며, 상기 전력 손실 복구(PLR) 로직은 상기 손상 이전에 기입된 최종 페이징 테이블 세그먼트로부터 변화된 세그먼트들의 재생을 시작하는, 컴퓨팅 장치. - 제1항에 있어서,
상기 식별된 시퀀스를 유지하는 단계는 FIFO 정책을 이용한 퇴출(eviction)을 위해, 세그먼트들이 변경되는 순서를 계속 파악하기 위한 FIFO 큐를 포함하는, 방법.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/537,377 | 2012-06-29 | ||
US13/537,377 US9037820B2 (en) | 2012-06-29 | 2012-06-29 | Optimized context drop for a solid state drive (SSD) |
PCT/US2013/047992 WO2014004731A1 (en) | 2012-06-29 | 2013-06-26 | Optimized context drop for a solid state drive (ssd) |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150035560A KR20150035560A (ko) | 2015-04-06 |
KR101702201B1 true KR101702201B1 (ko) | 2017-02-03 |
Family
ID=49779426
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020147033549A KR101702201B1 (ko) | 2012-06-29 | 2013-06-26 | 솔리드 스테이트 드라이브(ssd)에 대한 최적화된 컨텍스트 드롭 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9037820B2 (ko) |
KR (1) | KR101702201B1 (ko) |
CN (1) | CN104350477B (ko) |
BR (1) | BR112014029956B1 (ko) |
WO (1) | WO2014004731A1 (ko) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2742429A4 (en) | 2011-08-09 | 2015-03-25 | Lsi Corp | I / O DEVICE AND INTERACTION WITH DATA PROCESSING HOST |
US9037820B2 (en) | 2012-06-29 | 2015-05-19 | Intel Corporation | Optimized context drop for a solid state drive (SSD) |
US9141505B1 (en) * | 2012-09-27 | 2015-09-22 | Emc Corporation | Adaptive failure survivability in a storage system using save time and data transfer after power loss |
TWI596612B (zh) * | 2015-12-04 | 2017-08-21 | 群聯電子股份有限公司 | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 |
US9432183B1 (en) * | 2015-12-08 | 2016-08-30 | International Business Machines Corporation | Encrypted data exchange between computer systems |
CN106873901B (zh) * | 2015-12-11 | 2020-02-07 | 群联电子股份有限公司 | 存储器管理方法、存储器控制电路单元与存储器存储装置 |
US9746895B2 (en) * | 2016-01-22 | 2017-08-29 | Microsoft Technology Licensing, Llc | Use of volatile memory as non-volatile memory |
US10157004B2 (en) * | 2016-04-14 | 2018-12-18 | Sandisk Technologies Llc | Storage system and method for recovering data corrupted in a host memory buffer |
US9940261B2 (en) | 2016-05-05 | 2018-04-10 | Western Digital Technology, Inc. | Zoning of logical to physical data address translation tables with parallelized log list replay |
US9946489B2 (en) | 2016-07-27 | 2018-04-17 | Western Digital Technologies, Inc. | Multi-stream journaled replay |
KR102707003B1 (ko) | 2016-08-25 | 2024-09-19 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
US10031689B2 (en) | 2016-09-15 | 2018-07-24 | Western Digital Technologies, Inc. | Stream management for storage devices |
US10409494B2 (en) * | 2017-01-27 | 2019-09-10 | Wyse Technology L.L.C. | Enabling redirection of mass storage devices of any interface |
US10261721B2 (en) | 2017-05-05 | 2019-04-16 | Macronix International Co., Ltd. | Memory system and operating method thereof |
US11221956B2 (en) * | 2017-05-31 | 2022-01-11 | Seagate Technology Llc | Hybrid storage device with three-level memory mapping |
US10635331B2 (en) | 2017-07-05 | 2020-04-28 | Western Digital Technologies, Inc. | Distribution of logical-to-physical address entries across bank groups |
US10732864B2 (en) | 2017-08-02 | 2020-08-04 | Western Digital Technologies, Inc. | Internal power analyzer for data storage device |
CN107577551A (zh) * | 2017-09-06 | 2018-01-12 | 郑州云海信息技术有限公司 | 一种固态硬盘写失败处理方法及系统 |
US11579789B2 (en) | 2017-09-29 | 2023-02-14 | Apple Inc. | Techniques for managing context information for a storage device |
US11163679B2 (en) * | 2018-04-04 | 2021-11-02 | SK Hynix Inc. | Garbage collection strategy for memory system and method of executing such garbage collection |
US10496334B2 (en) | 2018-05-04 | 2019-12-03 | Western Digital Technologies, Inc. | Solid state drive using two-level indirection architecture |
CN110471788B (zh) * | 2018-05-08 | 2024-03-15 | 美光科技公司 | 异步功率损耗影响的数据结构 |
US10636495B2 (en) | 2018-06-12 | 2020-04-28 | Western Digital Technologies, Inc. | Adjustable read retry order based on decoding success trend |
US11126368B2 (en) * | 2019-04-30 | 2021-09-21 | Western Digital Technologies, Inc. | Systems and methods for finding a last good page in NAND open block |
US10860221B1 (en) * | 2019-07-05 | 2020-12-08 | EMC IP Holding Company LLC | Page write to non-volatile data storage with failure recovery |
CN110517002B (zh) * | 2019-08-29 | 2022-11-15 | 烟台大学 | 基于强化学习的生产控制方法 |
US11704192B2 (en) | 2019-12-12 | 2023-07-18 | Pure Storage, Inc. | Budgeting open blocks based on power loss protection |
US11416144B2 (en) | 2019-12-12 | 2022-08-16 | Pure Storage, Inc. | Dynamic use of segment or zone power loss protection in a flash device |
US11620234B2 (en) | 2020-06-29 | 2023-04-04 | Western Digital Technologies, Inc. | Operation-deterministic write operations for data recovery and integrity checks |
US11782831B2 (en) | 2021-09-01 | 2023-10-10 | Micron Technology, Inc. | Managing power loss in a memory device |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6189074B1 (en) * | 1997-03-19 | 2001-02-13 | Advanced Micro Devices, Inc. | Mechanism for storing system level attributes in a translation lookaside buffer |
US20050240531A1 (en) * | 2004-04-23 | 2005-10-27 | Wolff Gregory J Jr | System and method for the efficient exchange and pricing of services and intangible works |
US20060136685A1 (en) * | 2004-12-17 | 2006-06-22 | Sanrad Ltd. | Method and system to maintain data consistency over an internet small computer system interface (iSCSI) network |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7321951B2 (en) | 2003-11-17 | 2008-01-22 | Micron Technology, Inc. | Method for testing flash memory power loss recovery |
US7613894B2 (en) | 2005-09-02 | 2009-11-03 | Hong Yu Wang | Power loss recovery in non-volatile memory |
EP1873642B1 (en) * | 2006-06-29 | 2009-08-19 | Incard SA | Transaction method for managing the storing of persistent data in a transaction stack |
US7941692B2 (en) | 2007-12-31 | 2011-05-10 | Intel Corporation | NAND power fail recovery |
US8572309B2 (en) | 2009-03-12 | 2013-10-29 | Marvell World Trade Ltd. | Apparatus and method to protect metadata against unexpected power down |
US8612666B2 (en) | 2009-06-30 | 2013-12-17 | Intel Corporation | Method and system for managing a NAND flash memory by paging segments of a logical to physical address map to a non-volatile memory |
US8990476B2 (en) * | 2009-10-01 | 2015-03-24 | Micron Technology, Inc. | Power interrupt management |
US8886870B2 (en) | 2010-05-25 | 2014-11-11 | Marvell World Trade Ltd. | Memory access table saving and restoring system and methods |
US9037820B2 (en) | 2012-06-29 | 2015-05-19 | Intel Corporation | Optimized context drop for a solid state drive (SSD) |
-
2012
- 2012-06-29 US US13/537,377 patent/US9037820B2/en not_active Expired - Fee Related
-
2013
- 2013-06-26 WO PCT/US2013/047992 patent/WO2014004731A1/en active Application Filing
- 2013-06-26 CN CN201380027956.4A patent/CN104350477B/zh active Active
- 2013-06-26 BR BR112014029956-0A patent/BR112014029956B1/pt active IP Right Grant
- 2013-06-26 KR KR1020147033549A patent/KR101702201B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6189074B1 (en) * | 1997-03-19 | 2001-02-13 | Advanced Micro Devices, Inc. | Mechanism for storing system level attributes in a translation lookaside buffer |
US20050240531A1 (en) * | 2004-04-23 | 2005-10-27 | Wolff Gregory J Jr | System and method for the efficient exchange and pricing of services and intangible works |
US20060136685A1 (en) * | 2004-12-17 | 2006-06-22 | Sanrad Ltd. | Method and system to maintain data consistency over an internet small computer system interface (iSCSI) network |
Also Published As
Publication number | Publication date |
---|---|
US9037820B2 (en) | 2015-05-19 |
BR112014029956B1 (pt) | 2022-02-08 |
CN104350477B (zh) | 2017-07-07 |
US20140006683A1 (en) | 2014-01-02 |
WO2014004731A1 (en) | 2014-01-03 |
CN104350477A (zh) | 2015-02-11 |
KR20150035560A (ko) | 2015-04-06 |
BR112014029956A2 (pt) | 2017-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101702201B1 (ko) | 솔리드 스테이트 드라이브(ssd)에 대한 최적화된 컨텍스트 드롭 | |
US8327076B2 (en) | Systems and methods of tiered caching | |
US20200034304A1 (en) | Techniques to perform power fail-safe caching without atomic metadata | |
US8214581B2 (en) | System and method for cache synchronization | |
US10776153B2 (en) | Information processing device and system capable of preventing loss of user data | |
US8065472B2 (en) | System and method for improving data integrity and memory performance using non-volatile media | |
JP5254031B2 (ja) | メモリの書き込み及び損耗性能の最適化 | |
US20180107601A1 (en) | Cache architecture and algorithms for hybrid object storage devices | |
JP2009181314A (ja) | 情報記録装置およびその制御方法 | |
JP2009048613A (ja) | ソリッドステートメモリ、それを含むコンピュータシステム及びその動作方法 | |
US8862819B2 (en) | Log structure array | |
US9514052B2 (en) | Write-through-and-back-cache | |
US8938641B2 (en) | Method and apparatus for synchronizing storage volumes | |
US9471252B2 (en) | Use of flash cache to improve tiered migration performance | |
KR102152724B1 (ko) | 감시 시스템의 영상 관리 장치 및 방법 | |
US20090138657A1 (en) | Data backup system for logical volume manager and method thereof | |
JP2004157859A (ja) | データストレージ装置及びデータストレージ方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0105 | International application |
Patent event date: 20141128 Patent event code: PA01051R01D Comment text: International Patent Application |
|
PG1501 | Laying open of application | ||
A201 | Request for examination | ||
PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20150424 Comment text: Request for Examination of Application |
|
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20160819 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20170111 |
|
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20170125 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20170125 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
FPAY | Annual fee payment |
Payment date: 20200103 Year of fee payment: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20200103 Start annual number: 4 End annual number: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20200928 Start annual number: 5 End annual number: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20220103 Start annual number: 6 End annual number: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20231004 Start annual number: 8 End annual number: 8 |
|
PR1001 | Payment of annual fee |
Payment date: 20241230 Start annual number: 9 End annual number: 9 |