KR102358552B1 - 선택적 페이지-기반 리프레시를 이용하는 메모리 디바이스 - Google Patents
선택적 페이지-기반 리프레시를 이용하는 메모리 디바이스 Download PDFInfo
- Publication number
- KR102358552B1 KR102358552B1 KR1020207005042A KR20207005042A KR102358552B1 KR 102358552 B1 KR102358552 B1 KR 102358552B1 KR 1020207005042 A KR1020207005042 A KR 1020207005042A KR 20207005042 A KR20207005042 A KR 20207005042A KR 102358552 B1 KR102358552 B1 KR 102358552B1
- Authority
- KR
- South Korea
- Prior art keywords
- memory
- refresh
- subset
- pages
- refresh schedule
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
- G06F13/1636—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement using refresh
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
- G11C11/40615—Internal triggering or timing of refresh, e.g. hidden refresh, self refresh, pseudo-SRAMs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/02—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
- G11C11/16—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
- G11C11/165—Auxiliary circuits
- G11C11/1675—Writing or programming circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/22—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using ferroelectric elements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/22—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using ferroelectric elements
- G11C11/225—Auxiliary circuits
- G11C11/2275—Writing or programming circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/408—Address circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0033—Disturbance prevention or evaluation; Refreshing of disturbed memory data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
- G11C11/40603—Arbitration, priority and concurrent access to memory cells for read/write or refresh operations
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
- G11C11/40618—Refresh operations over multiple banks or interleaving
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0004—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising amorphous/crystalline phase transition cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0009—RRAM elements whose operation depends upon chemical change
- G11C13/0014—RRAM elements whose operation depends upon chemical change comprising cells based on organic memory material
- G11C13/0016—RRAM elements whose operation depends upon chemical change comprising cells based on organic memory material comprising polymers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Dram (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
- Chemical & Material Sciences (AREA)
- Crystallography & Structural Chemistry (AREA)
Abstract
선택적 페이지-기반 리프레시를 이용하는 메모리 디바이스 및 시스템의 여러 실시형태가 본 명세서에 개시된다. 일 실시형태에서, 메모리 디바이스는 복수의 메모리 페이지를 포함하는 적어도 하나의 메모리 영역을 가진 메인 메모리에 동작 가능하게 결합된 제어기를 포함한다. 제어기는 메모리 디바이스 상에 그리고/또는 호스트 디바이스 상에 저장된 하나 이상의 리프레시 스케줄 표에서, 리프레시 스케줄을 가진 복수의 메모리 페이지에서 메모리 페이지의 서브세트를 추적하도록 구성된다. 몇몇 실시형태에서, 제어기는 리프레시 스케줄에 따라 메모리 페이지의 서브세트를 리프레싱하도록 더 구성된다.
Description
개시된 실시형태는 메모리 디바이스 및 시스템에 관한 것이며, 특히 선택적 페이지-기반 리프레시를 이용하는 메모리 디바이스에 관한 것이다.
메모리 디바이스는 컴퓨터 또는 다른 전자 디바이스에서 내부의, 반도체, 집적 회로 그리고/또는 외부 착탈 가능한 디바이스로서 빈번하게 제공된다. 휘발성 및 비-휘발성 메모리를 포함하는, 많은 상이한 유형의 메모리가 있다. 특히, 랜덤-액세스 메모리(RAM), 동적 랜덤 액세스 메모리(DRAM) 및 동기식 동적 랜덤 액세스 메모리(SDRAM)를 포함하는, 휘발성 메모리는 그의 데이터를 유지하기 위해 인가된 전력의 소스를 요구할 수 있으며 매우 다양한 기술에서 이용 가능하다. 휘발성 메모리는 동작 동안 빈번하게 메모리 제어기에 의해 액세스되는 정보를 저장하며, 종종 비-휘발성 메모리보다 빠른 판독 및/또는 기록 시간을 보인다. 비-휘발성 메모리는, 반대로, 외부에서 동력이 공급되지 않을 때에도 그의 저장된 데이터를 유지할 수 있다. 특히, 플래시 메모리(예컨대, NAND 및 NOR), 상 변화 메모리(PCM), 저항성 랜덤 액세스 메모리(RRAM), 강유전성 랜덤 액세스 메모리(FeRAM 또는 FRAM), 및 자기 랜덤 액세스 메모리(MRAM)를 포함하는, 비-휘발성 메모리가 또한 다양한 기술에서 이용 가능하다.
몇몇 비-휘발성 메모리 기술(예컨대, 강유전성 메모리, 고분자 메모리 등)의 하나의 단점은 이들 기술이 그들의 메모리 셀이 연장된 시간 기간 동안 동일한 데이터 상태로 남아있을 때 임프린트(imprint)를 겪을 수 있다는 것이다. 데이터 상태가 메모리 셀에 새겨질 때, 메모리 셀은 메모리 제어기가 메모리 셀을 삭제하고 그리고/또는 그것을 상이한 데이터 상태로 프로그래밍하려고 시도할 때에도 상기 데이터를 유지하려는 경향이 있다. 따라서, 이들 임프린트에 취약한 메모리 기술은 데이터 상태가 메모리 셀로 새겨지는 것을 방지하기 위해 (예컨대, 메모리 셀에서 극성 및/또는 데이터 상태를 변경함으로써) 주기적으로 리프레시되어야 한다. 그러나, 이들 비-휘발성 메모리 기술을 위해 요구된 리프레시의 수는 특히, 메모리 기술이 더 치밀해짐에 따라, 많은 양의 에너지 및 메모리의 많은 양의 활동 시간(active time)을 소비할 수 있다.
도 1은 본 기술의 실시형태에 따라 구성된 메모리 디바이스를 가진 시스템의 블록도이다.
도 2a 및 도 2b는 본 기술의 여러 실시형태에 따른 선택적 페이지-기반 리프레시를 예시한 표이다.
도 3a 및 도 3b는 본 기술의 여러 실시형태에 따른 선택적 페이지-기반 리프레시를 예시한 표이다.
도 4A 내지 도 4B는 본 기술의 실시형태에 따른 메모리 디바이스를 동작시키는 방법을 예시한 흐름도이다.
도 5A 내지 도 5B는 본 기술의 실시형태에 따른 메모리 디바이스를 동작시키는 부가적인 방법을 예시한 흐름도이다.
도 6은 본 기술의 실시형태에 따른 메모리 디바이스를 포함하는 시스템의 개략도이다.
도 2a 및 도 2b는 본 기술의 여러 실시형태에 따른 선택적 페이지-기반 리프레시를 예시한 표이다.
도 3a 및 도 3b는 본 기술의 여러 실시형태에 따른 선택적 페이지-기반 리프레시를 예시한 표이다.
도 4A 내지 도 4B는 본 기술의 실시형태에 따른 메모리 디바이스를 동작시키는 방법을 예시한 흐름도이다.
도 5A 내지 도 5B는 본 기술의 실시형태에 따른 메모리 디바이스를 동작시키는 부가적인 방법을 예시한 흐름도이다.
도 6은 본 기술의 실시형태에 따른 메모리 디바이스를 포함하는 시스템의 개략도이다.
이하에서 보다 상세하게 설명되는 바와 같이, 본 기술은 선택적 페이지-기반 리프레시를 이용하는 메모리 디바이스 및 관련 시스템에 관한 것이다. 이 기술분야의 숙련자는, 그러나, 기술이 부가적인 실시형태를 가질 수 있으며 기술이 도 1 내지 도 6을 참조하여 이하에서 설명되는 실시형태의 세부사항 중 몇몇 없이 실시될 수 있다는 것을 이해할 것이다. 이하에서의 예시된 실시형태에서, 메모리 디바이스는 주로 강유전성 저장 미디어를 통합한 디바이스의 맥락에서 설명된다. 본 기술의 다른 실시형태에 따라 구성된 메모리 디바이스는, 그러나, NAND, NOR, PCM, RRAM, MRAM, 판독 전용 메모리(ROM), 삭제 가능한 프로그램 가능 ROM(EROM), 전기적으로 삭제 가능한 프로그램 가능 ROM(EEPROM), 및 휘발성 저장 미디어를 포함하는, 다른 저장 미디어와 같은, 다른 유형의 저장 미디어를 포함할 수 있다.
본 기술의 일 실시형태는 제어기 및 메인 메모리를 포함하는 메모리 디바이스이다. 메인 메모리는 복수의 메모리 페이지를 가진 메모리 영역을 포함한다. 제어기는 메인 메모리에 동작 가능하게 결합되며 각각 제1 임프린트-리프레시 스케줄 및 제2 리프레시 임프린트-리프레시 스케줄을 가진 메인 메모리에서 복수의 메모리 페이지의 제1 서브세트 및 제2 서브세트를 추적하도록 구성된다. 제어기는 또한 대응하는 제1 및 제2 임프린트-리프레시 스케줄에 따라 복수의 메모리 페이지의 제1 서브세트 및 제2 서브세트를 리프레싱하도록 구성된다.
임프린트-리프레시 스케줄은 얼마나 자주 메모리 페이지가 임프린트 효과에 대응하기 위해 리프레싱되는지를 지시하기 위해 사용될 수 있다. 이러한 방식으로, 메모리 디바이스 내에서 메모리 페이지를 리프레싱하는데 쓴 메모리 디바이스의 활동 시간 및 소비된 에너지는 메모리 페이지의 분류 및/또는 유형(예컨대, 리프레시, 리프레시-없음(no-refresh), 매우-빈번한 리프레시, 빈번한 리프레시, 간헐적 리프레시 등)에 따라 관리될 수 있다.
도 1은 본 기술의 실시형태에 따라 구성된 메모리 디바이스(100)를 가진 시스템(101)의 블록도이다. 도시된 바와 같이, 메모리 디바이스(100)는 메인 메모리(102) 및 메인 메모리(102)를 호스트 디바이스(108)(예컨대, 업스트림 중앙 프로세서(CPU))에 동작 가능하게 결합한 제어기(106)를 포함한다. 메인 메모리(102)는, 복수의 메모리 셀(122)을 포함하는, 복수의 메모리 영역, 또는 메모리 유닛(120)을 포함한다. 메모리 유닛(120)은 개개의 메모리 다이, 단일 메모리 다이에서의 메모리 평면, 스루-실리콘 비아(TSV)와 수직으로 연결된 메모리 다이의 스택 등일 수 있다. 일 실시형태에서, 메모리 유닛(120)의 각각은 반도체 다이로부터 형성되며 단일 디바이스 패키지(도시되지 않음)에서 다른 메모리 유닛 다이와 배열될 수 있다. 다른 실시형태에서, 메모리 유닛(120) 중 하나 이상은 단일 다이 상에서 같은 장소에 배치되며 그리고/또는 다수의 디바이스 패키지에 걸쳐 분포될 수 있다. 메모리 셀(122)은, 예를 들어, 영구적으로 또는 반-영구적으로 데이터를 저장하도록 구성된 강유전성 및/또는 다른 적절한 저장 요소(예컨대, 용량성, 상 변화, 자기저항성 등)를 포함할 수 있다. 메인 메모리(102) 및/또는 개개의 메모리 유닛(120)은 또한 정보를 처리하고 그리고/또는 제어기(106)와 통신하기 위해서와 같은, 메모리 셀(122)및 다른 기능을 액세스하고 그리고/또는 프로그램(예컨대, 기록)하기 위해, 다중화기, 디코더, 버퍼, 판독/기록 드라이버, 어드레스 레지스터, 데이터 아웃/데이터 인 레지스터 등과 같은, 다른 회로 구성요소(도시되지 않음)(예컨대, 메모리 서브시스템)를 포함할 수 있다.
메모리 셀(122)은 (예컨대, 각각 워드 라인에 대응하는) 행(row)(124) 및 (예컨대, 각각 비트 라인에 대응하는) 열(column)(126)에 배열될 수 있다. 각각의 워드 라인(124)은 상기 워드 라인(124)의 메모리 셀(122)이 저장하도록 구성되는 데이터 상태의 수에 의존하여, 하나 이상의 메모리 페이지를 포괄할 수 있다. 예시된 실시형태에서, 예를 들어, 메모리 셀(122)은 각각이 두 개의 데이터 상태 중 하나를 저장하도록 구성되는 강유전성 메모리 셀일 수 있으며, 단일 워드 라인(124)은 단일 메모리 페이지를 포괄할 수 있다. 둘 이상의 데이터 상태(예컨대, 4, 8, 또는 그 이상의 데이터 상태)를 저장하도록 구성된 메모리 셀을 가진 다른 실시형태에서, 단일 워드 라인(124)은 둘 이상의 메모리 페이지를 포괄할 수 있다. 이들 및 다른 실시형태에서, 메모리 페이지는 각각의 셀에서 두 개의 데이터 상태 중 하나를 저장하도록 구성된 메모리 셀(122)로 구성된 워드 라인(124)이 두 개의 메모리 페이지를 포괄할 수 있도록 인터리빙될 수 있다. 예를 들어, 워드 라인(124)은 "짝수-홀수 비트 라인 아키텍처"로 배열될 수 있는데, 여기서, 예컨대, 단일 워드 라인(124)의 홀수-넘버링된 열(126)에서의 메모리 셀(122) 모두는 제1 메모리 페이지로서 그룹핑되며, 동일한 워드 라인(124)의 짝수-넘버링된 열(126)에서의 메모리 셀(122) 모두는 제2 메모리 페이지로서 그룹핑된다. 짝수-홀수 비트 라인 아키텍처가 각각의 셀에서 더 많은 수의 데이터 상태를 저장하는 메모리 셀(122)의 워드 라인(124)에서 이용될 때, 워드 라인(124) 당 메모리 페이지의 수는 훨씬 더 높을 수 있다(예컨대, 4, 6, 8 등).
다른 실시형태에서, 메모리 셀(122)은 예시된 실시형태에서 도시된 것과는 상이한 유형의 그룹 및/또는 계층으로 배열될 수 있다. 또한, 예시된 실시형태에서 예시의 목적을 위해 특정한 수의 메모리 셀, 행, 열, 블록, 및 메모리 유닛으로 도시되지만, 다른 실시형태에서, 메모리 셀, 행, 열, 및 메모리 유닛의 수는 달라질 수 있으며, 예시된 예에서 도시된 것보다 스케일이 더 크거나 또는 더 작을 수 있다. 예를 들어, 몇몇 실시형태에서, 메모리 디바이스(100)는 단지 하나의 메모리 유닛(120)만을 포함할 수 있다. 대안적으로, 메모리 디바이스(100)는 2, 3, 4, 8, 10, 또는 그 이상(예컨대, 16, 12, 64 이상)의 메모리 유닛(120)을 포함할 수 있다. 메모리 유닛(120)이 각각 두 개의 메모리 블록(128)을 포함하는 것으로 도 1에 도시되지만, 다른 실시형태에서, 각각의 메모리 유닛(120)은 1, 3, 4, 8, 또는 그 이상(예컨대, 16, 32, 64, 100, 128, 256 이상)의 메모리 블록(128)을 포함할 수 있다. 몇몇 실시형태에서, 각각의 메모리 블록(128)은 예컨대, 215 메모리 페이지를 포함할 수 있으며, 블록 내에서의 각각의 메모리 페이지는 예컨대, 212 메모리 셀(122)을 포함할 수 있다.
제어기(106)는 마이크로제어기, 특수 목적 논리 회로(예컨대, 필드 프로그램 가능한 게이트 어레이(FPGA), 애플리케이션 특정 집적 회로(ASIC) 등), 또는 다른 적절한 프로세서일 수 있다. 제어기(106)는 메모리에 저장된 명령어를 실행하도록 구성된 프로세서(130)를 포함할 수 있다. 예시된 예에서, 제어기(106)의 메모리는 메인 메모리(102)를 관리하는 것 및 메모리 디바이스(200)와 호스트 디바이스(108) 간의 통신을 핸들링하는 것을 포함하는, 메모리 디바이스(100)의 동작을 제어하기 위한 다양한 프로세스, 논리 흐름, 및 루틴을 저장하도록 구성된 내장 메모리(132)를 포함한다. 몇몇 실시형태에서, 내장 메모리(132)는 예컨대, 메모리 포인터, 인출 데이터 등을 저장한 메모리 레지스터를 포함할 수 있다. 내장 메모리(132)는 또한 마이크로-코드를 저장하기 위한 판독-전용 메모리(ROM)를 포함할 수 있다. 도 1에 예시된 대표적인 메모리 디바이스(100)는 제어기(106)를 포함하지만, 본 기술의 또 다른 실시형태에서, 메모리 디바이스는 제어기를 포함하지 않을 수 있으며, 대신에 (예컨대, 외부 호스트에 의해, 또는 메모리 디바이스로부터 분리된 프로세서 또는 제어기에 의해 제공되는) 외부 제어에 의존할 수 있다.
동작 시, 제어기(106)는 메모리 페이지 및/또는 메모리 블록(128)의 그룹으로부터 판독하고 그리고/또는 그에 기록하는 것에 의해서와 같은, 메인 메모리(102)의 다양한 메모리 영역을 직접 판독하고, 기록하거나, 또는 그 외 프로그램(예컨대, 삭제)할 수 있다. FRAM-기반 및 다른 메모리 유형에서, 기록 동작은 종종 데이터 값(예컨대, 각각이 논리 0 또는 논리 1의 값을 갖는 데이터 비트의 스트링)을 나타내는 특정 극성을 가진 선택된 메모리 페이지에서 메모리 셀(122)을 프로그래밍하는 것을 포함한다. 삭제 동작은, 삭제 동작이 특정 극성 및 데이터 상태(예컨대, 논리 0)로 메모리 셀(122)을 재-프로그래밍한다는 것을 제외하고, 기록 동작과 유사하다.
제어기(106)는 호스트-디바이스 인터페이스(115)를 통해 호스트 디바이스(108)와 통신한다. 몇몇 실시형태에서, 호스트 디바이스(108) 및 제어기(106)는 직렬 접속 SCSI(SAS), 직렬 AT 접속(SATA) 인터페이스, 주변 구성요소 상호 연결 고속(PCIe), 또는 다른 적절한 인터페이스(예컨대, 병렬 인터페이스)와 같은 직렬 인터페이스를 통해 통신할 수 있다. 호스트 디바이스(108)는 다양한 요청을 (예컨대, 패킷 또는 패킷의 스트림의 형태로) 제어기(106)에 전송할 수 있다. 요청은 정보를 기록하고, 삭제하고, 반환하기 위해, 및/또는 특정한 동작(예컨대, TRIM 동작)을 수행하기 위해 명령을 포함할 수 있다.
상기 논의된 바와 같이, 메모리 셀(122)은 이들이 연장된 시간 기간 동안 동일한 극성 및/또는 데이터 상태에 남아있을 때 임프린트를 겪을 수 있다. 이러한 효과에 대응하기 위해, 제어기(106) 및/또는 메인 메모리(102)는 메모리 셀(122)을 (예컨대, 그의 극성을 역전시키거나 또는 그 외 그의 데이터 상태를 변경함으로써) 주기적으로 리프레시할 수 있다. 그러나, 요구된 리프레시의 수는 특히, 메인 메모리(102) 내에서의 메모리 셀(122)의 수가 증가함에 따라, 많은 양의 에너지 및 메모리 디바이스(100)의 많은 양의 활동 시간을 소비할 수 있다. 또한, 메인 메모리(102) 내에서의 메모리 셀(122) 모두가 동일한 레이트로 리프레싱될 필요는 없다. 예를 들어, 메인 메모리(102) 내에서의 메모리 셀(122) 중 몇몇은 제어기(106), 메인 메모리(102) 및/또는 호스트 디바이스(108)가 이들 메모리 페이지에서 메모리 셀(122)에 기록하는 것을 방지하도록 판독-전용 페이지로서 표시되는 메모리 페이지에서 그룹핑될 수 있다. 이들 판독-전용 메모리 페이지는 종종 메모리 디바이스(100)의 수명 동안 수정될 것으로 예상되지 않는 데이터를 저장하는 코드 페이지, 캐싱된 파일 페이지, 및 다른 메모리 페이지를 포함한다. 임프린트가 이들 메모리 페이지에서 우려가 덜하기 때문에(예컨대, 이들 셀에서 데이터를 변경하기 위한 무능, 또는 그의 어려움이 문제를 야기하는 것으로 예상되지 않으므로), 이들 페이지에서 메모리 셀(122)은 빈번하게 판독, 삭제 및/또는 프로그래밍되는 (또는 심지어, 몇몇 실시형태에서, 전혀) 데이터를 포함하는 메모리 페이지에서의 메모리 셀(122)만큼 종종 또는 규칙적으로 리프레싱될 필요는 없다. 또한 이하에서 설명되는 바와 같이, 제어기(106), 메인 메모리(102)(예컨대, 메인 메모리의 메모리 서브시스템), 및/또는 호스트 디바이스(108)는 또한 하나의 분류 및/또는 유형의 메모리 페이지의 메모리 페이지를 또 다른 분류 및/또는 유형의 메모리 페이지로 변환시킬 수 있다. 그러므로, 상이한 임프린트-리프레시 스케줄을 가지며 메모리 리프레시 동작에 의해 소비된 에너지 및 활동 시간을 줄이기 위해 덜 적극적인 리프레시 스케줄을 요구할 수 있는 메모리 페이지를 추적하는 것이 바람직하다.
이하에서 보다 상세하게 설명되는 바와 같이, 시스템(101)은 상이한 임프린트-리프레시 스케줄을 가진 메모리 페이지를 추적하기 위해 (예컨대, 메모리 다이, 메모리 유닛(120), 및/또는 메모리 블록(128) 단위에 기초하여) 표(144)를 이용한다. 도 1에 예시된 실시형태에서, 표(144)는 제어기(106)의 내장 메모리(132)에 저장된다. 다른 실시형태에서, 표(144)는 (예컨대, 내장 메모리(132) 상에 표(144)를 저장하는 것 외에 또는 그 대신에) 메인 메모리(102) 상에 그리고/또는 호스트 디바이스(108) 상에와 같은, 다른 위치에 저장될 수 있다.
도 2a 및 도 2b는 본 기술의 실시형태에 따른 선택적 페이지-기반 리프레시를 예시한 표이다. 도 2a를 참조하면, 메모리 디바이스(100)(도 1) 및/또는 호스트 디바이스(108)(도 1)는 임프린트-리프레시 스케줄 표(244a)에서 리프레시-없음 메모리 페이지로서 표시된 메모리 페이지의 범위를 추적한다. 도시된 바와 같이, 임프린트-리프레시 스케줄 표(244a)는 n 수의 메모리 영역(예컨대, 메모리 다이 및/또는 메모리 유닛(120); 도 1) 내에서의 m 수의 메모리 블록(예컨대, 메모리 블록(128); 도 1)에서 메모리 페이지를 추적한다. 예시된 실시형태에서, 각각의 메모리 블록은 64개 메모리 페이지를 포함한다. 다른 실시형태에서, 메모리 블록은 상이한 수의 메모리 페이지(예컨대, 10, 16, 32, 100, 128, 256, 512, 1048개 메모리 페이지)를 포함할 수 있다.
임프린트-리프레시 스케줄 표(244a)는 다른 메모리 페이지만큼 빈번하게 리프레싱될 필요가 없는 각각의 메모리 블록에 메모리 페이지의 하나 이상의 범위를 저장한다. 예를 들어, 임프린트-리프레시 스케줄 표(244a)에서의 엔트리(251)는 메모리 영역 1의 메모리 블록 1에 대응한다. 엔트리(251)에서, 메모리 페이지 39 내지 54는 리프레시-없음 메모리 페이지로서 표시되었다. 따라서, 메모리 페이지 39 내지 54 내에서의 메모리 셀은 메모리 블록 1 내에서 리프레시 메모리 페이지 1 내지 38 및 55 내지 64 내에서의 메모리 셀만큼 빈번하게 리프레싱될 필요가 없다. 유사하게, 다수의 리프레시-없음 영역이, 메모리 영역 1 내에서의 메모리 블록 3에 대응하는, 엔트리(253)에 기록된다. 그러므로, 메모리 블록 3에서 메모리 페이지 16 내지 24 및 메모리 페이지 43 내지 47은 리프레시-없음 메모리 페이지로서 표시되었으며, 이들 리프레시-없음 메모리 페이지에서의 메모리 셀은 빈번한 리프레시 동작을 요구하지 않는다. 반대로, 메모리 영역 1 내에서의 메모리 블록 2에 대응하는, 엔트리(252)는 기록된 리프레시-없음 영역 없이 예시된다. 따라서, 메모리 블록 2 내에서의 메모리 페이지 중 어떤 것도 리프레시-없음 메모리 페이지로서 표시되지 않았다. 이와 같이, 메모리 블록 2의 메모리 페이지 1 내지 64는 리프레시 메모리 페이지이며 빈번하고 규칙적인 리프레시 동작을 겪는다.
이하에서 추가로 상세하게 설명되는 바와 같이, 메모리 디바이스(100) 및/또는 호스트 디바이스(108)는 메모리의 물리적으로 인접한 위치에 동일한 분류 또는 유형(예컨대, 리프레시 및/또는 리프레시-없음)의 메모리 페이지를 위치시키기 위해 알고리즘을 이용하며, 그에 의해 임프린트-리프레시 스케줄 표(244a)에 저장될 필요가 있는 메모리 페이지의 범위의 수 및 메모리 페이지의 각각의 범위에서의 메모리 페이지의 수를 제한할 수 있다. 임프린트-리프레시 스케줄 표(244a)에 저장된 리프레시-없음 영역의 수를 제한하는 것은 임프린트-리프레시 스케줄 표(244a)를 저장하기 위해 요구된 메모리의 양을 최소화할 수 있으며, 이것은 임프린트-리프레시 스케줄 표(244a)가 엄격한 메모리 제약을 가진 위치에 저장되도록 허용할 수 있다. 예를 들어, 임프린트-리프레시 스케줄 표(244a)의 엔트리(255)는 임프린트-리프레시 스케줄 표(244a)의 엔트리(253)와 동일한 수의 메모리 페이지(즉, 총 14개 메모리 페이지)를 커버하는 리프레시-없음 영역을 포함한다. 그러나, 알고리즘은 리프레시-없음 메모리 페이지를 메모리 블록(m-2)의 첫 14개 메모리 페이지에 통합하여, 엔트리(253)에서의 두 개의 리프레시-없음 영역에 비교하여 엔트리(255)에 단지 하나의 리프레시-없음 영역만을 필요하게 한다. 그러므로, 엔트리(255)를 위해 이용된 메모리의 양은 엔트리(253)를 위해 이용된 메모리의 양보다 적다. 다른 실시형태에서, 알고리즘은 리프레시-없음 메모리 페이지를 메모리의 다른 물리적으로 인접한 위치에 통합할 수 있다. 예를 들어, 알고리즘은 리프레시-없음 메모리 페이지를 메모리 블록 내에서의 물리적으로 인접한 메모리 페이지로 그리고/또는 임프린트-리프레시 스케줄 표(244a)의, 각각 엔트리(256 및 257)에 예시된 바와 같이 메모리 블록의 끝에 위치된 물리적으로 인접한 메모리 페이지에 통합할 수 있다.
이제 도 2b를 참조하면, 메모리 디바이스(100) 및/또는 호스트 디바이스(108)는 임프린트-리프레시 스케줄 표(244b)에서 리프레시-없음 메모리 페이지로 표시된 메모리 페이지의 범위를 추적한다. 임프린트-리프레시 스케줄 표(244b)는 임프린트-리프레시 스케줄 표(244b)가 각각의 리프레시-없음 영역의 종료 페이지를 기록하지 않는다는 점을 제외하고 임프린트-리프레시 스케줄 표(244a)와 유사하다. 대신에, 임프린트-리프레시 스케줄 표(244b)는 각각의 리프레시-없음 영역의 시작 페이지 및 길이를 기록한다. 예를 들어, 도 2b에서 임프린트-리프레시 스케줄 표(244b)의 엔트리(271)에 기록된 리프레시-없음 영역은 도 2a에서의 임프린트-리프레시 스케줄 표(244a)의 엔트리(251)에 기록된 리프레시-없음 영역과 동일하다. 그러나, 임프린트-리프레시 스케줄 표(244b)는 임프린트-리프레시 스케줄 표(244a)에 기록된 메모리 영역의 종료 페이지(즉, 메모리 페이지(54))보다는 리프레시-없음 영역의 길이(즉, 메모리 페이지(39)로 시작하는 16개의 메모리 페이지)를 기록한다.
도 3a 및 도 3b는 각각 본 기술에 따른 선택적 페이지-기반 리프레시의 대안적인 실시형태를 예시한 표(344a 및 344b)이다. 예시된 실시형태에서, 메모리 디바이스(100) 및/또는 호스트 디바이스(108)는 임프린트-리프레시 스케줄 표(344a 및 344b)에서 리프레시-없음 메모리 페이지로 표시되지 않은 메모리 페이지의 범위를 추적한다. 따라서, 임프린트-리프레시 스케줄 표(344a 및 344b)(도 3a 및 도 3b)는 임프린트-리프레시 스케줄 표(344a 및 344b)가 빈번하게 리프레싱될 필요가 없는 메모리 페이지(예컨대, 리프레시-없음 메모리 페이지) 대신에 빈번하게 리프레시되어야 하는 메모리 페이지(예컨대, 리프레시 메모리 페이지)를 추적한다는 점을 제외하고, 각각 임프린트-리프레시 스케줄 표(244a 및 244b)(도 2a 및 도 2b)와 유사하다. 도 3a에서의 엔트리(355 내지 357) 및 도 3b에서의 엔트리(375 내지 377)에서 도시된 바와 같이, 임프린트-리프레시 스케줄 표(344a 및 344b)는 또한 임프린트-리프레시 스케줄 표(344a 및 344b)를 저장하도록 요구된 양이 최소이도록 리프레시-없음 메모리 영역을 물리적으로 인접한 메모리 위치에 통합하는 것에서 이익을 얻을 수 있는데, 이는 상기 표로 하여금 엄격한 메모리 제약을 가진 위치에 저장되게 한다.
도 2a 내지 도 3b에 예시된 실시형태에서 도시되지 않지만, 임프린트-리프레시 스케줄 표(244a, 244b, 344a 및/또는 344b)는 다른 실시형태에서 부가적인 열 및/또는 정보를 포함할 수 있다. 예를 들어, 임프린트-리프레시 스케줄 표(244a, 244b, 344a, 및/또는 344b)는 개개의 메모리 페이지, 리프레시-없음 영역, 및/또는 리프레시 영역에 대한 임프린트-리프레시 스케줄 및/또는 임프린트-리프레시 지속 기간에 관련된 부가적인 열 및/또는 정보를 포함할 수 있다. 다시 말해서, 메모리 디바이스(100)(도 1) 및/또는 호스트 디바이스(108)(도 1)는 메모리 페이지의 분류 또는 유형(예컨대, 리프레시, 리프레시-없음, 매우-빈번한 리프레시, 빈번한 리프레시, 간헐적 리프레시 등)에 그리고/또는 다른 파라미터(예컨대, 메인 메모리(102)에서 메모리 페이지의 물리적 위치, 메모리 페이지가 사용 중이 아니며 즉각적인 사용을 위해 이용 가능함을 나타내는 플래그 등)에 의존하여 메모리 페이지 및/또는 메모리 페이지의 영역에 다양한 임프린트-리프레시 스케줄 및 지속 기간을 할당할 수 있다. 본 기술에 따른 리프레시-없음 메모리 페이지를 위한 임프린트-리프레시 스케줄의 예는 임프린트 효과를 방지하기 위해 리프레시 메모리 페이지를 리프레싱하는 것의 부분만큼(예컨대, 1/10, 1/4, 1/3, 1/2, 2/3, 3/4, 9/10) 종종 리프레시-없음 메모리 페이지를 리프레싱하는 것을 포함한다. 다른 실시형태에서, 리프레시-없음 메모리 페이지를 위한 임프린트-리프레시 스케줄은 대응하는 리프레시-없음 메모리 페이지에 대한 리프레시 동작을 함께 허용하지 않을 수 있다. 반대로, 리프레시-없음 또는 또 다른 분류 또는 유형의 메모리 페이지로 변환되는 다른 메모리 페이지에 대한 본 기술에 따른 임프린트-리프레시 스케줄의 예는 임프린트 효과를 방지하기 위해 적어도 리프레시 메모리 페이지를 리프레싱하는 것만큼 및/또는 그의 배수만큼(예컨대, 1.5, 2, 3, 5배) 종종 이들 메모리 페이지를 리프레싱하는 것을 포함한다. 또한, 몇몇 실시형태에서, 메모리 페이지를 위해 스케줄링된 리프레시 동작의 빈도는 대응하는 임프린트-리프레시 스케줄 표에서 수정(예컨대, 증가 및/또는 감소)되고 그리고/또는 업데이트될 수 있다. 예를 들어, 메모리 페이지에 대한 리프레시 동작의 빈도는, 예컨대 원치 않는 임프린트 효과가 메모리 페이지의 메모리 셀에서 발견된다면 증가될 수 있으며 그리고/또는 메모리 페이지에 대한 리프레시 동작의 빈도는 예컨대, 시스템 요구를 수용하기 위해(예컨대, 메모리 리프레시 동작에 의해 소비된 에너지 및/또는 활동 시간을 줄이기 위해) 감소될 수 있다. 다른 실시형태에서, 메모리 디바이스(100) 및/또는 호스트 디바이스(108)는 임프린트-리프레시 스케줄 표에 저장된 임프린트-리프레시 스케줄을 수정하거나 또는 업데이트하지 않고 임프린트-리프레시 스케줄 표에 저장된 임프린트-리프레시 스케줄에 대한 예외를 허락할 수 있다.
게다가, 도 2a 내지 도 3b에 예시된 실시형태는 단지 두 개의 분류 및 유형의 메모리 페이지(즉, 리프레시 메모리 페이지 및 리프레시-없음 메모리 페이지)만으로 도시되지만, 하나 이상의 임프린트-리프레시 스케줄 표(예컨대, 임프린트-리프레시 스케줄 표(244a, 244b, 344a, 및/또는 344b))가 다른 실시형태에서, 리프레시 메모리 페이지 및/또는 리프레시-없음 메모리 페이지 외에 또는 그 대신에 다른 분류 및/또는 유형(예컨대, 매우-빈번한 리프레시, 빈번한 리프레시, 간헐적 리프레시 등)의 메모리 페이지를 추적하기 위해 사용될 수 있다. 예를 들어, 몇몇 실시형태에서, 단일 임프린트-리프레시 스케줄 표는 추적되는 분류 및 유형의 메모리 페이지가 있는 것만큼 많은 임프린트-리프레시 스케줄 표가 있도록 단일 분류 또는 유형의 메모리 페이지를 추적하기 위해 사용될 수 있다. 다른 실시형태에서, 단일 임프린트-리프레시 스케줄 표는 메모리 디바이스를 위해 단지 하나의 임프린트-리프레시 스케줄 표가 있도록 모든 분류 및 유형의 메모리 페이지를 추적하기 위해 사용될 수 있다. 계속해서 다른 실시형태에서, 하나 이상의 임프린트-리프레시 스케줄 표는 메모리 디바이스의 지정된 메모리 영역(예컨대, 메모리 블록, 다이 및/또는 유닛)에서 하나 이상의 분류 및/또는 유형의 메모리 페이지를 추적하기 위해 사용될 수 있다.
도 4 내지 도 5B는 본 기술의 실시형태에 따른 메모리 디바이스를 동작시키기 위한 루틴(460, 470, 580a, 및 580b)을 각각 예시한 흐름도이다. 루틴(460, 470, 580a, 및 580b)은 예를 들어, 제어기(106)(도 1), 메인 메모리(102)(도 1)(예컨대, 메인 메모리(102)의 메모리 서브세트), 및/또는 호스트 디바이스(108)(도 1)에 의해 실행될 수 있다.
도 4A를 참조하면, 루틴(460)은 예컨대, 메인 메모리(102)(도 1) 상에, 제어기(106)(도 1) 상에, 그리고/또는 호스트 디바이스(108)(도 1) 상에 저장된 임프린트-리프레시 스케줄 표를 참조함으로써 메모리 영역에서 메모리 페이지를 리프레싱할지를 결정한다. 몇몇 실시형태에서, 임프린트-리프레시 스케줄 표는 도 2a, 도 2b, 도 3a, 및/또는 도 3b에서 설명된 임프린트-리프레시 스케줄 표와 유사할 수 있다. 블록 461에서, 루틴(460)은, 임프린트-리프레시 스케줄 표에서, 적어도 메모리 페이지의 서브세트 내에서 메모리 페이지의 분류 및/또는 유형(예컨대, 리프레시, 리프레시-없음, 간헐적-리프레시 등)에 기초하여 하나 이상의 임프린트-리프레시 스케줄을 가진 메모리 영역 내에서의 메모리 페이지의 서브세트를 추적함으로써 시작한다. 예를 들어, 몇몇 실시형태에서, 루틴(460)은 주기적인 또는 규칙적으로 스케줄링된 간격에서의 리프레시 동작(예컨대, 리프레시 메모리 페이지에 대한), 특정 이벤트의 발생 후(예컨대, 특정 수의 판독, 기록, 삭제, 또는 다른 시스템 동작이 발생한 후) 또는 미리 결정된 양의 시간이 경과한 후(예컨대, 간헐적-리프레시 메모리 페이지에 대한) 자동으로 리프레시 동작, 및/또는 어떤 리프레시 동작도 없음(예컨대, 리프레시-없음 메모리 페이지에 대한)을 규정하는 임프린트-리프레시 스케줄을 할당할 수 있다. 블록 462에서, 루틴(460)은 메모리 페이지의 서브세트에 대한 하나 이상의 임프린트-리프레시 스케줄에 따라 메모리 페이지의 서브세트를 리프레싱하도록 진행될 수 있다.
이제 도 4B를 참조하면, 루틴(470)은 예컨대, 제어기(106) 및/또는 호스트 디바이스(108)로부터 수신된 명령어에 따라 메모리 페이지의 서브세트에 대한 하나 이상의 임프린트-리프레시 스케줄을 업데이트할 수 있다. 몇몇 실시형태에서, 명령어는 사용자 프롬프트될 수 있다. 다른 실시형태에서, 명령어는 자동적일 수 있다. 예를 들어, 제어기(106) 및/또는 호스트 디바이스(108)는 특정 이벤트의 발생 후(예컨대, 특정 수의 판독, 기록, 삭제, 또는 다른 시스템 동작이 메모리 페이지에 대해 수행된 후), 메모리 페이지가 미리 결정된 양의 시간 동안 액세스되지 않은 후, 및/또는 원치 않는 임프린트 효과가 메모리 페이지의 하나 이상의 메모리 셀에서 발견된 후 자동으로 하나 이상의 임프린트-리프레시 스케줄을 업데이트하기 위한 명령어를 전송할 수 있다. 블록 471에서, 루틴(470)은, 예컨대, 메모리 페이지의 서브세트 내에서의 메모리 페이지를 참조하는 하나 이상의 논리 어드레스를 포함하는 임프린트-리프레시 명령어를 수신할 수 있다.
블록 472에서, 루틴(470)은, 수신된 명령어에 따라, 명령어에서 참조된 메모리 페이지에 대응하는 하나 이상의 임프린트-리프레시 스케줄을 업데이트하고 그리고/또는 수정할 수 있다. 예를 들어, 수신된 명령어는 (예컨대, 이하의 도 5A 및 도 5B를 참조하여 이하에서 논의되는 바와 같이, 참조된 메모리 페이지가 상이한 분류 및/또는 유형의 메모리 페이지로 변환될 때; 원치 않는 임프린트 효과가 참조된 메모리 페이지의 메모리 셀에서 발견될 때; 시스템 요구를 수용하기 위해; 그리고/또는 메모리 디바이스의 전력 스케줄에 따라) 참조된 메모리 페이지 상에서 리프레시 동작의 빈도 및/또는 지속 기간을 증가시키고 그리고/또는 감소시킴으로써 임프린트-리프레시 스케줄 표에 저장된 하나 이상의 임프린트-리프레시 스케줄을 변경하도록 루틴(470)에 지시할 수 있다. 이들 및 다른 실시형태에서, 수신된 명령어는 그 외 하나 이상의 임프린트-리프레시 스케줄을 수정하지 않고 임프린트-리프레시 스케줄 표에 저장된 하나 이상의 임프린트-리프레시 스케줄에 대한 예외를 만들도록 루틴(470)에 지시할 수 있다. 예를 들어, 수신된 명령어는 (예컨대, 루틴(470)이 참조된 메모리 페이지를 상이한 분류 및/또는 유형의 메모리 페이지로 변환시키는 것을 예상할 때 그리고/또는 바람직하지 않은 임프린트 효과가 참조된 메모리 페이지의 메모리 셀에서 발견될 때) 참조된 메모리 페이지가 일시적인 적극적 리프레시 동작을 겪도록 루틴(470)에 지시할 수 있다.
이제 도 5A 내지 도 5B를 참조하면, 루틴(580a 및 580b)은 (예컨대, 임프린트-리프레시 스케줄 표(들)를 저장하기 위해 요구된 메모리 공간을 최소화하기 위해) 리프레시-없음 및/또는 다른 분류 또는 유형의 메모리 페이지를 메모리의 물리적으로 인접한 위치에 통합할 수 있다. 루틴(580a)은 메모리 페이지를 리프레시-없음 메모리 페이지로 변환시키기 위해 실행될 수 있다. 반대로, 루틴(580b)은 메모리 페이지(예컨대, 리프레시-없음 메모리 페이지)를 다른 분류(들) 및/또는 유형(들)의 메모리 페이지로 변환시키기 위해 실행될 수 있다.
이제 도 5A를 참조하면, 루틴(580a)은 하나 이상의 메모리 페이지(예컨대, 리프레시 및/또는 다른 분류 및/또는 유형의 메모리 페이지)를 리프레시-없음 메모리 페이지(들)로 변환시키기 위한 명령어를 수신함으로써 시작된다(블록 581a). 블록 582a에서, 루틴(580a)은 예를 들어, 제어기(106) 상에, 메인 메모리(102) 상에, 그리고/또는 호스트 디바이스(108) 상에 저장된 임프린트-리프레시 스케줄 표로부터 (예컨대, 선택된 메모리 블록, 메모리 다이 및/또는 메모리 유닛의) 대응하는 리프레시-없음 영역(들)을 검색할 수 있다. 루틴(580a)은 하나 이상의 메모리 페이지가 대응하는 리프레시-없음 영역(들)에 대해 물리적으로 인접한 위치에 위치되는지를 결정하도록 진행된다(판단 블록 583a). 루틴(580a)이 하나 이상의 메모리 페이지가 대응하는 리프레시-없음 영역(들)에 대해 물리적으로 인접한 위치에 위치된다고 결정하면, 루틴(580a)은 하나 이상의 메모리 페이지를 리프레시-없음 메모리 페이지(들)로 변환시킬 수 있으며(블록 586a) 블록(587a)으로 진행될 수 있다. 몇몇 실시형태에서, 루틴(580a)은 블록(587a)으로 진행되기 전에 성공 메시지를 반환할 수 있다.
다른 한편으로, 루틴(580a)이 하나 이상의 메모리 페이지가 대응하는 리프레시-없음 영역(들)에 대해 물리적으로 인접한 위치에 위치되지 않는다고 결정하면(판단 블록 583a), 루틴(580a)은 하나 이상의 메모리 페이지에 그리고/또는 대응하는 리프레시-없음 영역(들)에 저장된 데이터를 재배치하고, 재배열하며, 그리고/또는 물리적으로 인접한 메모리 위치에 통합할 수 있다(블록 585a). 몇몇 실시형태에서, 루틴(580a)은 리프레시-없음 메모리 영역(들)의 리프레시-없음 메모리 페이지에 저장된 데이터를 재배치할 때 대응하는 리프레시-없음 영역(들)에서의 리프레시-없음 메모리 페이지를 리프레시 및/또는 다른 분류 및/또는 유형의 메모리 페이지로 그리고/또는 그 반대로 변환시킬 수 있다. 루틴(580a)이 하나 이상의 메모리 페이지(들)에 그리고/또는 대응하는 리프레시-없음 영역(들)에서의 리프레시-없음 메모리 페이지에 저장된 데이터를 재배치하고, 재배열하며, 그리고/또는 물리적으로 인접한 메모리 위치에 통합한 후, 루틴(580a)은 하나 이상의 메모리 페이지 및/또는 이들의 재배치된 데이터를 포함하는 메모리 페이지를 리프레시-없음 메모리 페이지로 변환시킬 수 있으며(블록 586a) 블록(587a)으로 진행될 수 있다. 몇몇 실시형태에서, 루틴(580a)은 블록(587a)으로 진행되기 전에 성공 메시지를 반환할 수 있다.
이제 도 5B를 참조하면, 루틴(580b)은 몇 가지 예외를 지니지만 도 5A의 루틴(580a)과 유사하다. 상기 논의된 바와 같이, 루틴(580b)은 메모리 페이지(예컨대, 리프레시-없음 메모리 페이지)를 리프레시 및/또는 다른 분류 및/또는 유형의 메모리 페이지로 변환시키기 위해 실행될 수 있다. 루틴(580b)은 하나 이상의 리프레시-없음 메모리 페이지를 다른 분류(들) 및/또는 유형(들)의 메모리 페이지로 변환시키기 위한 명령어를 수신함으로써 시작된다(블록 581a). 블록 582b에서, 루틴(580b)은 예를 들어, 메인 메모리(102) 상에, 제어기(106) 상에, 그리고/또는 호스트 디바이스(108) 상에 저장된 임프린트-리프레시 스케줄 표로부터 대응하는 리프레시-없음 영역(들)을 검색한다.
판단 블록(583b)에서, 루틴(580b)은 하나 이상의 리프레시-없음 메모리 페이지가 대응하는 리프레시-없음 영역(들)에 물리적으로 인접하는지를 결정한다. 예를 들어, 몇몇 실시형태에서, 루틴(583b)은 하나 이상의 리프레시-없음 메모리 페이지가 대응하는 리프레시-없음 영역에 대하여 이전에 물리적으로 인접한 메모리 위치에 통합되지 않았으며, 따라서 대응하는 리프레시-없음 영역(들)에 물리적으로 인접하지 않는다고 결정할 수 있다. 다른 실시형태에서, 루틴(583b)은 하나 이상의 리프레시-없음 메모리 페이지가 대응하는 리프레시-없음 영역(들)의 전체 길이를 포괄하는지를 결정함으로써 하나 이상의 리프레시-없음 메모리 페이지가 대응하는 리프레시-없음 영역(들)에 물리적으로 인접하는지를 결정할 수 있다. 하나 이상의 메모리 페이지가 대응하는 리프레시-없음 영역(들)의 전체 길이를 포괄하지 않는다면, 루틴(580b)은 하나 이상의 메모리 페이지가 대응하는 리프레시-없음 영역(들)에 물리적으로 인접한다고 결정할 수 있다. 다른 한편으로, 하나 이상의 메모리 페이지가 대응하는 리프레시-없음 영역(들)의 전체 길이를 포괄한다면, 루틴(580b)은 하나 이상의 메모리 페이지가 대응하는 리프레시-없음 영역(들)에 물리적으로 인접하지 않다고 결정할 수 있다.
루틴(580b)이 하나 이상의 리프레시-없음 메모리 페이지가 대응하는 리프레시-없음 영역(들)에 대해 물리적으로 인접한 위치에 위치되지 않는다고 결정하면, 루틴(580b)은 하나 이상의 리프레시-없음 메모리 페이지를 다른 분류(들) 및/또는 유형(들)의 메모리 페이지로 변환시킬 수 있으며(블록 586b) 블록(587b)으로 진행될 수 있다. 몇몇 실시형태에서, 루틴(580b)은 블록(587b)으로 진행되기 전에 성공 메시지를 반환할 수 있다. 다른 한편으로, 루틴(580b)이 하나 이상의 리프레시-없음 메모리 페이지가 대응하는 리프레시-없음 영역(들)에 대해 물리적으로 인접한 위치에 위치된다고 결정하면(판단 블록 583b), 루틴(580b)은 하나 이상의 리프레시-없음 메모리 페이지가 대응하는 리프레시-없음 영역(들)의 시작(예컨대, 시작 메모리 페이지) 또는 종료(예컨대, 종료 메모리 페이지)에 위치되는지를 결정하도록 진행될 수 있다(판단 블록 584b). 루틴(580b)이 하나 이상의 리프레시-없음 메모리 페이지가 대응하는 리프레시-없음 영역(들)의 시작 및/또는 종료라고 결정하면, 루틴(580b)은 하나 이상의 리프레시-없음 메모리 페이지를 다른 분류(들) 및/또는 유형(들)의 메모리 페이지로 변환시킬 수 있으며(블록 586b) 블록(587b)으로 진행될 수 있다. 몇몇 실시형태에서, 루틴(580b)은 블록(587b)으로 진행되기 전에 성공 메시지를 반환할 수 있다.
루틴(580b)이 하나 이상의 리프레시-없음 메모리 페이지가 대응하는 리프레시-없음 영역(들)의 시작(예컨대, 시작 페이지) 또는 종료(예컨대, 종료 페이지)에 위치되지 않는다고 결정하면(예컨대, 루틴(580b)은 하나 이상의 리프레시-없음 메모리 페이지가 대응하는 리프레시-없음 영역(들)의 내부 리프레시-없음 메모리 페이지에 위치된다고 결정한다)(판단 블록 584b), 루틴(580b)은 하나 이상의 리프레시-없음 메모리 페이지에 그리고/또는 대응하는 리프레시-없음 영역(들)에서의 리프레시-없음 메모리 페이지에 저장된 데이터를 재배치하고, 재배열하며, 그리고/또는 물리적으로 인접한 메모리 위치에 통합할 수 있다(블록 585b). 몇몇 실시형태에서, 루틴(580b)은 리프레시-없음 영역(들)의 리프레시-없음 메모리 페이지에 저장된 데이터를 재배치할 때 대응하는 리프레시-없음 영역(들)에서의 리프레시-없음 메모리 페이지를 다른 분류(들) 및/또는 유형(들)의 메모리 페이지로 그리고/또는 그 반대로 변환시킬 수 있다. 루틴(580b)이 하나 이상의 리프레시-없음 메모리 페이지(들)에 그리고/또는 대응하는 리프레시-없음 영역(들)에서의 리프레시-없음 메모리 페이지에 저장된 데이터를 재배치하고, 재배열하며, 그리고/또는 물리적으로 인접한 메모리 위치에 통합한 후, 루틴(580b)은 하나 이상의 리프레시-없음 메모리 페이지 및/또는 이들의 재배치된 데이터를 포함하는 메모리 페이지를 다른 분류(들) 및/또는 유형(들)의 메모리 페이지로 변환시킬 수 있으며(블록 586b) 블록(587b)으로 진행될 수 있다. 몇몇 실시형태에서, 루틴(580b)은 블록(587b)으로 진행되기 전에 성공 메시지를 반환할 수 있다.
도 6은 본 기술의 실시형태에 따른 메모리 디바이스를 포함하는 시스템의 개략도이다. 도 1 내지 도 5B를 참조하여 위에서 기재된 상기 메모리 디바이스 중 임의의 것은 무수한 보다 큰 그리고/또는 보다 복잡한 시스템에 통합될 수 있으며, 그 대표적인 예는 도 6에 개략적으로 도시된 시스템(690)이다. 시스템(690)은 반도체 디바이스 어셈블리(600), 전원(692), 드라이버(694), 프로세서(696), 및/또는 다른 서브시스템 및 구성요소(698)를 포함할 수 있다. 반도체 디바이스 어셈블리(600)는 도 1 내지 도 5B를 참조하여 상기 설명된 메모리 디바이스의 어셈블리와 일반적으로 유사한 특징을 포함할 수 있으며, 그러므로 선택적 페이지-기반 리프레시의 다양한 특징을 포함할 수 있다. 결과적인 시스템(690)은, 메모리 저장, 데이터 처리, 및/또는 다른 적절한 기능과 같은, 매우 다양한 기능 중 임의의 것을 수행할 수 있다. 따라서, 대표적인 시스템(690)은, 제한 없이, 핸드-헬드 디바이스(예컨대, 이동 전화, 태블릿, 디지털 판독기, 및 디지털 오디오 플레이어), 컴퓨터, 차량, 기기, 및 다른 제품을 포함할 수 있다. 시스템(690)의 구성요소는 단일 유닛에 수용되거나 또는 다수의, 상호 연결된 유닛을 통해 (예컨대, 통신 네트워크를 통해) 분배될 수 있다. 시스템(690)의 구성요소는 또한 원격 디바이스 및 매우 다양한 컴퓨터 판독 미디어 중 임의의 것을 포함할 수 있다.
이상의 내용으로부터, 본 발명의 특정 실시형태는 본 명세서에서 예시의 목적을 위해 설명되었지만, 다양한 수정이 개시 내용으로부터 벗어나지 않고 이루어질 수 있다는 것이 이해될 것이다. 예를 들어, 도 5B에 도시되지 않지만, 루틴(580b)은, 몇몇 실시형태에서, 다른 분류(들) 및/또는 유형(들)의 메모리 페이지(예컨대, 리프레시 메모리 페이지, 간헐적-리프레시 메모리 페이지 등) 내 데이터를 대응하는 분류(들) 및/또는 유형(들)의 메모리 페이지에 대하여 재배치하고, 재배열하며, 물리적으로 인접한 메모리 위치에 통합할 수 있다. 그렇게 할 때, 루틴(580b)은 메모리 페이지를 다른 분류(들) 및/또는 유형(들)의 메모리 페이지로 변환시킬 수 있다. 또한, 특정한 실시형태의 맥락에서 설명된 새로운 기술의 특정한 양상이 또한 다른 실시형태에서 조합되거나 또는 제거될 수 있다. 게다가, 새로운 기술의 특정한 실시형태와 연관된 이점이 이들 실시형태의 맥락에서 설명되었지만, 다른 실시형태가 또한 이러한 이점을 보일 수 있으며 모든 실시형태가 반드시 기술의 범위 내에 있기 위해 이러한 이점을 보일 필요는 없다. 따라서, 개시 내용 및 연관된 기술은 명확하게 도시되거나 또는 설명되지 않은 다른 실시형태를 포함할 수 있다.
Claims (34)
- 메모리 디바이스로서,
복수의 메모리 페이지를 포괄하는 복수의 비-휘발성 메모리 셀을 가진 메모리 영역을 포함하는 비-휘발성 메인 메모리; 및
상기 비-휘발성 메인 메모리에 동작 가능하게 결합된 제어기를 포함하되, 상기 제어기는,
제1 리프레시 스케줄을 가진 상기 복수의 메모리 페이지의 제1 서브세트 및 상기 제1 리프레시 스케줄과 상이한 제2 리프레시 스케줄을 가진 상기 복수의 메모리 페이지의 제2 서브세트를 추적하도록,
상기 제1 리프레시 스케줄에 따라 상기 메모리 페이지의 제1 서브세트를 리프레싱하도록, 그리고
상기 제2 리프레시 스케줄에 따라 상기 메모리 페이지의 제2 서브세트를 리프레싱하도록
구성된, 상기 제어기를 포함하는, 메모리 디바이스. - 제1항에 있어서, 상기 제1 서브세트는 메모리 페이지의 인접한 범위이며, 상기 제어기는 상기 범위의 제1 페이지의 식별자 및 상기 범위의 마지막 페이지의 식별자를 사용하여 상기 제1 서브세트를 추적하도록 구성되는, 메모리 디바이스.
- 제1항에 있어서, 상기 제1 서브세트는 메모리 페이지의 인접한 범위이며, 상기 제어기는 상기 범위의 제1 페이지의 식별자 및 상기 범위의 길이를 사용하여 상기 제1 서브세트를 추적하도록 구성되는, 메모리 디바이스.
- 제1항에 있어서, 상기 제어기는 제1 메모리 페이지를 상기 제1 서브세트로부터 상기 제2 서브세트로 변환시키도록 더 구성되는, 메모리 디바이스.
- 제4항에 있어서, 상기 제어기는 상기 제1 메모리 페이지를 반복적으로 리프레싱함으로써 상기 제1 메모리 페이지로부터 임프린트를 제거하도록 더 구성되는, 메모리 디바이스.
- 제1항에 있어서, 상기 제어기는 또한 상기 제1 서브세트에 대응하는 메모리 페이지 내 데이터를 상기 복수의 메모리 페이지 내에서의 물리적으로 인접한 메모리 페이지에 통합하도록 구성되는, 메모리 디바이스.
- 제1항에 있어서, 상기 제어기는,
상기 제1 리프레시 스케줄 및 상기 제2 리프레시 스케줄과는 상이한 제3 리프레시 스케줄을 가진 상기 복수의 메모리 페이지의 제3 서브세트를 추적하도록 더 구성되는, 메모리 디바이스. - 제7항에 있어서, 상기 제3 리프레시 스케줄은 상기 제3 서브세트를 결코 리프레싱하지 않는 것에 대응하는, 메모리 디바이스.
- 제1항에 있어서, 상기 제1 및 제2 리프레시 스케줄 중 적어도 하나는 마지막 리프레시 동작 이래 경과된 시간의 함수인, 메모리 디바이스.
- 제1항에 있어서, 상기 제1 및 제2 리프레시 스케줄 중 적어도 하나는 마지막 리프레시 동작 이래 동작의 수의 함수인, 메모리 디바이스.
- 제1항에 있어서, 상기 메모리 영역은 강유전성 메모리인, 메모리 디바이스.
- 제1항에 있어서, 상기 메모리 영역은 고분자 메모리인, 메모리 디바이스.
- 제1항에 있어서, 상기 제어기는 상기 메인 메모리 및 상기 제어기 중 적어도 하나에 저장된 하나 이상의 리프레시 스케줄 표에서 상기 제1 서브세트 및 상기 제2 서브세트를 추적하도록 구성되는, 메모리 디바이스.
- 복수의 메모리 페이지를 포괄하는 복수의 비-휘발성 메모리 셀을 가진 메모리 디바이스를 관리하는 방법으로서,
제1 리프레시 스케줄을 가진 상기 복수의 메모리 페이지의 제1 서브세트 및 상기 제1 리프레시 스케줄과는 상이한 제2 리프레시 스케줄을 가진 상기 복수의 메모리 페이지의 제2 서브세트를 추적하는 단계,
상기 제1 리프레시 스케줄에 따라 상기 메모리 페이지의 제1 서브세트를 리프레싱하는 단계, 및
상기 제2 리프레시 스케줄에 따라 상기 메모리 페이지의 제2 서브세트를 리프레싱하는 단계를 포함하는, 메모리 디바이스를 관리하는 방법. - 제14항에 있어서, 상기 제1 리프레시 스케줄 및 상기 제2 리프레시 스케줄과는 상이한 제3 리프레시 스케줄을 가진 상기 복수의 메모리 페이지의 제3 서브세트를 추적하는 단계를 더 포함하는, 메모리 디바이스를 관리하는 방법.
- 제14항에 있어서, 제1 메모리 페이지를 상기 제1 서브세트로부터 상기 제2 서브세트로 변환시키는 단계를 더 포함하는, 메모리 디바이스를 관리하는 방법.
- 제16항에 있어서, 상기 제1 서브세트에 대응하는 메모리 페이지 내 데이터를 상기 복수의 메모리 페이지 내에서의 물리적으로 인접한 메모리 페이지에 통합하는 단계를 더 포함하는, 메모리 디바이스를 관리하는 방법.
- 제16항에 있어서, 상기 제1 서브세트 및 상기 제2 서브세트는 하나 이상의 리프레시 스케줄 표에서 추적되며 상기 방법은, 상기 하나 이상의 리프레시 스케줄 표에서, 상기 제1 메모리 페이지에 대응하는 상기 제1 리프레시 스케줄을 제3 리프레시 스케줄로 업데이트하는 단계를 더 포함하는, 메모리 디바이스를 관리하는 방법.
- 제18항에 있어서, 상기 제3 리프레시 스케줄은 상기 제1 메모리 페이지가 적어도 상기 제2 서브세트에 대응하는 상기 제2 리프레시 스케줄만큼 자주 리프레시 동작을 겪는, 메모리 디바이스를 관리하는 방법.
- 제19항에 있어서, 상기 제1 리프레시 스케줄은 상기 제1 서브세트를 결코 리프레싱하지 않는 것에 대응하는, 메모리 디바이스를 관리하는 방법.
- 제15항에 있어서, 상기 제3 리프레시 스케줄은 제1 메모리 페이지에서 임프린트를 제거하기 위해 상기 제1 메모리 페이지를 반복적으로 리프레싱하는 것에 대응하는, 메모리 디바이스를 관리하는 방법.
- 제14항에 있어서, 상기 제1 서브세트에 대응하는 메모리 페이지 내 데이터를 상기 복수의 메모리 페이지 내에서의 물리적으로 인접한 메모리 페이지에 통합하는 단계를 더 포함하는, 메모리 디바이스를 관리하는 방법.
- 메모리 시스템으로서,
호스트 디바이스; 및
제어기 및 상기 제어기에 동작 가능하게 결합된 비-휘발성 메인 메모리를 포함하는 메모리 디바이스로서, 상기 비-휘발성 메인 메모리는 복수의 메모리 페이지를 포괄하는 복수의 비-휘발성 메모리 셀을 포함하는 메모리 영역을 가진, 상기 메모리 디바이스를 포함하되,
상기 제어기는,
제1 리프레시 스케줄을 가진 상기 복수의 메모리 페이지의 제1 서브세트 및 상기 제1 리프레시 스케줄과 상이한 제2 리프레시 스케줄을 가진 상기 복수의 메모리 페이지의 제2 서브세트를 추적하도록,
상기 제1 리프레시 스케줄에 따라 상기 메모리 페이지의 제1 서브세트를 리프레싱하도록, 그리고
상기 제2 리프레시 스케줄에 따라 상기 메모리 페이지의 제2 서브세트를 리프레싱하도록 구성되는, 메모리 시스템. - 제23항에 있어서, 상기 제어기는 상기 메인 메모리, 상기 제어기, 및 상기 호스트 디바이스 중 적어도 하나 상에 저장된 하나 이상의 리프레시 스케줄 표에서 상기 제1 서브세트 및 상기 제2 서브세트를 추적하도록 구성되는, 메모리 시스템.
- 제24항에 있어서, 상기 제어기는 제1 메모리 페이지를 상기 제1 서브세트로부터 상기 제2 서브세트로 변환시키도록 더 구성되는, 메모리 시스템.
- 제25항에 있어서, 상기 메인 메모리, 상기 제어기, 및 상기 호스트 디바이스 중 적어도 하나는, 상기 하나 이상의 리프레시 스케줄 표에서, 상기 제1 메모리 페이지에 대응하는 상기 제1 리프레시 스케줄을 제3 리프레시 스케줄로 업데이트하도록 상기 제어기에 지시하기 위해 구성되는, 메모리 시스템.
- 제26항에 있어서, 상기 제3 리프레시 스케줄은 상기 제1 리프레시 스케줄 및 상기 제2 리프레시 스케줄과 상이한, 메모리 시스템.
- 제23항에 있어서, 상기 제1 서브세트는 메모리 페이지의 연속적인 범위이며, 상기 제어기는 상기 범위의 제1 페이지의 식별자 및 상기 범위의 마지막 페이지의 식별자를 사용하여 상기 제1 서브세트를 추적하도록 구성되는, 메모리 시스템.
- 제23항에 있어서, 상기 제1 서브세트는 메모리 페이지의 연속적인 범위이며, 상기 제어기는 상기 범위의 제1 페이지의 식별자 및 상기 범위의 길이를 사용하여 상기 제1 서브세트를 추적하도록 구성되는, 메모리 시스템.
- 제23항에 있어서, 상기 메모리 영역은 강유전성 메모리인, 메모리 시스템.
- 제4항에 있어서, 상기 제1 리프레시 스케줄은 제1 빈도에 따라 상기 제1 서브세트를 리프레싱하는 것에 대응하고, 상기 제2 리프레시 스케줄은 상기 제1 빈도보다 적은 제2 빈도에 따라 상기 제2 서브세트를 리프레싱하는 것에 대응하는, 메모리 디바이스.
- 제4항에 있어서, 상기 제1 리프레시 스케줄은 제1 빈도에 따라 상기 제1 서브세트를 리프레싱하는 것에 대응하고, 상기 제2 리프레시 스케줄은 상기 제2 서브세트를 리프레싱하지 않는 것에 대응하는, 메모리 디바이스.
- 제4항에 있어서, 상기 제1 리프레시 스케줄은 상기 제1 서브세트를 리프레싱하지 않는 것에 대응하고, 상기 제2 리프레시 스케줄은 영이 아닌 빈도에 따라 상기 제2 서브세트를 리프레싱하는 것에 대응하는, 메모리 디바이스.
- 제1항에 있어서, 메모리 페이지의 상기 제1 서브세트 또는 상기 제2 서브세트를 리프레싱하기 위해, 상기 메모리 디바이스는, 상기 제1 서브세트 또는 상기 제2 서브세트에 대응하는 비-휘발성 메모리 셀의 데이터 상태 또는 극성을 변경하도록 구성되는, 메모리 디바이스.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020227003002A KR20220018092A (ko) | 2017-07-28 | 2018-07-17 | 선택적 페이지-기반 리프레시를 이용하는 메모리 디바이스 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/663,641 US10109339B1 (en) | 2017-07-28 | 2017-07-28 | Memory devices with selective page-based refresh |
US15/663,641 | 2017-07-28 | ||
PCT/US2018/042397 WO2019022993A1 (en) | 2017-07-28 | 2018-07-17 | MEMORY DEVICES WITH SELECTIVE REFRESH BASED ON PAGES |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020227003002A Division KR20220018092A (ko) | 2017-07-28 | 2018-07-17 | 선택적 페이지-기반 리프레시를 이용하는 메모리 디바이스 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200022055A KR20200022055A (ko) | 2020-03-02 |
KR102358552B1 true KR102358552B1 (ko) | 2022-02-08 |
Family
ID=63833286
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020207005042A KR102358552B1 (ko) | 2017-07-28 | 2018-07-17 | 선택적 페이지-기반 리프레시를 이용하는 메모리 디바이스 |
KR1020227003002A KR20220018092A (ko) | 2017-07-28 | 2018-07-17 | 선택적 페이지-기반 리프레시를 이용하는 메모리 디바이스 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020227003002A KR20220018092A (ko) | 2017-07-28 | 2018-07-17 | 선택적 페이지-기반 리프레시를 이용하는 메모리 디바이스 |
Country Status (6)
Country | Link |
---|---|
US (5) | US10109339B1 (ko) |
EP (1) | EP3659037A4 (ko) |
KR (2) | KR102358552B1 (ko) |
CN (1) | CN110832468A (ko) |
TW (1) | TWI684867B (ko) |
WO (1) | WO2019022993A1 (ko) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10109339B1 (en) * | 2017-07-28 | 2018-10-23 | Micron Technology, Inc. | Memory devices with selective page-based refresh |
CN110729006B (zh) * | 2018-07-16 | 2022-07-05 | 超威半导体(上海)有限公司 | 存储器控制器中的刷新方案 |
US12019506B2 (en) | 2019-09-24 | 2024-06-25 | Micron Technology, Inc. | Imprint recovery management for memory systems |
FR3147658A1 (fr) * | 2023-04-06 | 2024-10-11 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | Circuit mémoire |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070183242A1 (en) * | 2006-01-23 | 2007-08-09 | Sanyo Electric Co., Ltd. | Memory |
US20120099389A1 (en) * | 2010-10-20 | 2012-04-26 | Samsung Electronics Co., Ltd. | Memory circuits, systems, and modules for performing dram refresh operations and methods of operating the same |
Family Cites Families (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6940774B2 (en) | 2001-07-26 | 2005-09-06 | Infineon Technologies Ag | Integrated dynamic memory and operating method |
US8077535B2 (en) | 2006-07-31 | 2011-12-13 | Google Inc. | Memory refresh apparatus and method |
US7444577B2 (en) * | 2005-08-04 | 2008-10-28 | Rambus Inc. | Memory device testing to support address-differentiated refresh rates |
JP4537909B2 (ja) * | 2005-08-08 | 2010-09-08 | 株式会社東芝 | 情報記録装置 |
JP5661227B2 (ja) * | 2007-02-07 | 2015-01-28 | 株式会社メガチップス | メモリコントローラ |
US7975170B2 (en) * | 2007-06-15 | 2011-07-05 | Qimonda Ag | Memory refresh system and method |
US20090040167A1 (en) * | 2007-08-06 | 2009-02-12 | Wein-Town Sun | Programmable nonvolatile memory embedded in a timing controller for storing lookup tables |
EP2077559B1 (en) * | 2007-12-27 | 2012-11-07 | Hagiwara Solutions Co., Ltd. | Refresh method of a flash memory |
US8495438B2 (en) | 2007-12-28 | 2013-07-23 | Texas Instruments Incorporated | Technique for memory imprint reliability improvement |
US8612718B2 (en) * | 2009-08-19 | 2013-12-17 | Seagate Technology Llc | Mapping alignment |
US8688894B2 (en) | 2009-09-03 | 2014-04-01 | Pioneer Chip Technology Ltd. | Page based management of flash storage |
JP5430484B2 (ja) * | 2010-04-15 | 2014-02-26 | ルネサスエレクトロニクス株式会社 | 半導体記憶装置、及びその制御方法 |
KR101962874B1 (ko) * | 2012-04-24 | 2019-03-27 | 삼성전자주식회사 | 메모리 장치, 메모리 컨트롤러, 메모리 시스템 및 이의 동작 방법 |
KR101966858B1 (ko) * | 2012-04-24 | 2019-04-08 | 삼성전자주식회사 | 휘발성 메모리 장치의 동작 방법, 휘발성 메모리 장치 및 메모리 시스템의 제어 방법 |
KR101975029B1 (ko) * | 2012-05-17 | 2019-08-23 | 삼성전자주식회사 | 리프레쉬 주기를 조절하는 반도체 메모리 장치, 메모리 시스템 및 그 동작방법 |
KR101932663B1 (ko) * | 2012-07-12 | 2018-12-26 | 삼성전자 주식회사 | 리프레쉬 주기 정보를 저장하는 반도체 메모리 장치 및 그 동작방법 |
US9318199B2 (en) * | 2012-10-26 | 2016-04-19 | Micron Technology, Inc. | Partial page memory operations |
US9087614B2 (en) * | 2012-11-27 | 2015-07-21 | Samsung Electronics Co., Ltd. | Memory modules and memory systems |
KR20140076735A (ko) * | 2012-12-13 | 2014-06-23 | 삼성전자주식회사 | 휘발성 메모리 장치 및 메모리 시스템 |
KR101587683B1 (ko) * | 2013-02-15 | 2016-01-21 | 제일모직주식회사 | 태양전지 전극 형성용 조성물 및 이로부터 제조된 전극 |
US9224449B2 (en) * | 2013-03-11 | 2015-12-29 | Nvidia Corporation | Variable dynamic memory refresh |
US9368187B2 (en) * | 2013-07-11 | 2016-06-14 | Qualcomm Incorporated | Insertion-override counter to support multiple memory refresh rates |
US9524771B2 (en) * | 2013-07-12 | 2016-12-20 | Qualcomm Incorporated | DRAM sub-array level autonomic refresh memory controller optimization |
US9228468B2 (en) * | 2014-02-04 | 2016-01-05 | Cummins Inc. | Targeted regeneration of a catalyst in an aftertreatment system |
US20150318035A1 (en) * | 2014-05-02 | 2015-11-05 | Qualcomm Incorporated | Priority adjustment of dynamic random access memory (dram) transactions prior to issuing a per-bank refresh for reducing dram unavailability |
KR20160056056A (ko) * | 2014-11-11 | 2016-05-19 | 삼성전자주식회사 | 반도체 메모리 장치 및 이를 포함하는 메모리 시스템 |
US9418723B2 (en) * | 2014-12-23 | 2016-08-16 | Intel Corporation | Techniques to reduce memory cell refreshes for a memory device |
KR102333361B1 (ko) | 2015-11-23 | 2021-12-06 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
US10175889B2 (en) * | 2016-03-10 | 2019-01-08 | Toshiba Memory Corporation | Memory system capable of accessing memory cell arrays in parallel |
US10324955B2 (en) * | 2016-09-30 | 2019-06-18 | International Business Machines Corporation | Inter-table parallel refresh maximizer |
TWI592800B (zh) | 2016-10-04 | 2017-07-21 | 大心電子(英屬維京群島)股份有限公司 | 記憶體管理方法及使用所述方法的儲存控制器 |
TWI587135B (zh) | 2016-11-23 | 2017-06-11 | 群聯電子股份有限公司 | 資料儲存方法、記憶體儲存裝置及記憶體控制電路單元 |
US10109339B1 (en) * | 2017-07-28 | 2018-10-23 | Micron Technology, Inc. | Memory devices with selective page-based refresh |
US11100013B2 (en) * | 2018-08-08 | 2021-08-24 | Apple Inc. | Scheduling of read and write memory access requests |
-
2017
- 2017-07-28 US US15/663,641 patent/US10109339B1/en active Active
-
2018
- 2018-06-26 US US16/019,483 patent/US10431289B2/en active Active
- 2018-07-17 EP EP18838907.6A patent/EP3659037A4/en not_active Withdrawn
- 2018-07-17 KR KR1020207005042A patent/KR102358552B1/ko active IP Right Grant
- 2018-07-17 WO PCT/US2018/042397 patent/WO2019022993A1/en active Application Filing
- 2018-07-17 KR KR1020227003002A patent/KR20220018092A/ko active IP Right Grant
- 2018-07-17 CN CN201880044604.2A patent/CN110832468A/zh not_active Withdrawn
- 2018-07-27 TW TW107125996A patent/TWI684867B/zh active
-
2019
- 2019-06-28 US US16/456,493 patent/US10748598B2/en active Active
-
2020
- 2020-07-10 US US16/926,582 patent/US11200938B2/en active Active
-
2021
- 2021-11-30 US US17/539,052 patent/US11621029B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070183242A1 (en) * | 2006-01-23 | 2007-08-09 | Sanyo Electric Co., Ltd. | Memory |
US20120099389A1 (en) * | 2010-10-20 | 2012-04-26 | Samsung Electronics Co., Ltd. | Memory circuits, systems, and modules for performing dram refresh operations and methods of operating the same |
Also Published As
Publication number | Publication date |
---|---|
US11200938B2 (en) | 2021-12-14 |
US10109339B1 (en) | 2018-10-23 |
US20190318779A1 (en) | 2019-10-17 |
EP3659037A4 (en) | 2021-04-21 |
US11621029B2 (en) | 2023-04-04 |
US20200342933A1 (en) | 2020-10-29 |
KR20220018092A (ko) | 2022-02-14 |
US20190035453A1 (en) | 2019-01-31 |
TW201911064A (zh) | 2019-03-16 |
WO2019022993A1 (en) | 2019-01-31 |
US10748598B2 (en) | 2020-08-18 |
TWI684867B (zh) | 2020-02-11 |
EP3659037A1 (en) | 2020-06-03 |
US10431289B2 (en) | 2019-10-01 |
US20220084582A1 (en) | 2022-03-17 |
KR20200022055A (ko) | 2020-03-02 |
CN110832468A (zh) | 2020-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102358552B1 (ko) | 선택적 페이지-기반 리프레시를 이용하는 메모리 디바이스 | |
TWI679642B (zh) | 用於組態和控制非揮發性快取記憶體的系統及方法 | |
US9542344B2 (en) | Datapath management in a memory controller | |
JP5567263B2 (ja) | メモリの管理方法 | |
KR101889298B1 (ko) | 불휘발성 메모리를 포함하는 메모리 장치 및 불휘발성 메모리의 제어 방법 | |
US10037167B2 (en) | Multiple scheduling schemes for handling read requests | |
KR102403253B1 (ko) | 불휘발성 메모리 장치를 포함하는 스토리지 장치 | |
US20200218458A1 (en) | Distribution of Logical-to-Physical Address Entries Across Bank Groups | |
US9081665B2 (en) | Apparatus, methods and architecture to increase write performance and endurance of non-volatile solid state memory components | |
KR102377469B1 (ko) | 불휘발성 메모리 장치, 불휘발성 메모리 장치를 포함하는 스토리지 장치 및 불휘발성 메모리 장치의 동작 방법 | |
US20140082265A1 (en) | Data storage device and flash memory control method thereof | |
US9846643B2 (en) | Methods for maintaining a storage mapping table and apparatuses using the same | |
US11301150B2 (en) | Memory controller and method for updating address mapping information | |
US20100030948A1 (en) | Solid state storage system with data attribute wear leveling and method of controlling the solid state storage system | |
JP2015535118A (ja) | データストレージデバイスにおける下位ページ破損を回避するための方法及び装置 | |
US10929303B2 (en) | Data storage device utilizing virtual blocks to improve performance and data storage method thereof | |
US20140328127A1 (en) | Method of Managing Non-Volatile Memory and Non-Volatile Storage Device Using the Same | |
CN115373591B (zh) | 存储器子系统中根据选定调度排序的命令调度 | |
CN113946283A (zh) | 存储器装置的分区命名空间中的部分区存储器单元处置 | |
KR20200076923A (ko) | 저장 장치, 컨트롤러 및 저장 장치의 동작 방법 | |
US20240028231A1 (en) | Random Storage Access and Data Erasure for Improved Performance and Reduced Write Amplification | |
US20240028230A1 (en) | Storage Access Communications and Data Placement for Improved Performance and Reduced Write Amplification | |
JP2005250619A5 (ko) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |