KR20130068915A - 메모리 시스템 및 그 동작 제어 방법 - Google Patents
메모리 시스템 및 그 동작 제어 방법 Download PDFInfo
- Publication number
- KR20130068915A KR20130068915A KR1020110136365A KR20110136365A KR20130068915A KR 20130068915 A KR20130068915 A KR 20130068915A KR 1020110136365 A KR1020110136365 A KR 1020110136365A KR 20110136365 A KR20110136365 A KR 20110136365A KR 20130068915 A KR20130068915 A KR 20130068915A
- Authority
- KR
- South Korea
- Prior art keywords
- memory
- cell
- weak
- information
- memory device
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- 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/409—Read-write [R-W] circuits
- G11C11/4096—Input/output [I/O] data management or control circuits, e.g. reading or writing circuits, I/O drivers or bit-line switches
-
- 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
-
- 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
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- Dram (AREA)
Abstract
메모리 시스템 및 그 동작 제어 방법이개시된다. 본 발명에 따른 메모리 시스템은, 복수의 메모리 셀과, 복수의 메모리 셀 중 위크 셀의 정보를 저장하는 제1 저장부를 포함하는 메모리 장치, 메모리 셀의 동작에 관한 동작 명령 신호를 상기 메모리 장치로 전송하며, 메모리 장치로부터 위크 셀의 정보를 받아, 메모리 장치의 동작을 제어하는 메모리 컨트롤러를 포함하고, 메모리 장치는, 동작 명령 신호가 전송되면, 동작 명령 신호에 대응하는 메모리 셀이 상기 위크 셀인 경우, 위크 셀의 정보를 상기 메모리 컨트롤러로 전송한다. 이에 의해, 쓰기 동작시 위크 메모리 셀인 경우에 위크 메모리 셀에 관한 정보를 메모리 컨트롤러로 제공하여 동작시킴으로써, 정보의 저장공간을 최소화시키면서도, 위크 메모리 셀을 노말 메모리 셀과 독립적으로 관리하여, 리프레쉬, 쓰기 동작을 효율적으로 수행할 수 있다.
Description
본 발명은 메모리 시스템 및 그 동작 제어 방법에 관한 것으로, 보다 상세하게는 메모리 시스템의 성능을 향상 시킬 수 있는 메모리 시스템 및 그 동작 제어 방법에 관한 것이다.
최근 스마트 폰 등을 포함하는 모바일(mobile) 전자 제품에서 대용량 DRAM(Dynamic Random Access Memory, 이하 DRAM)의 수요가 증가하고 있다. 일반적으로, DRAM과 같은 메모리 장치는 메모리 셀에 저장된 데이터가 누설전류에 의하여 변경될 수 있다. 따라서, 메모리 셀에 저장된 데이터를 주기적으로 재충전하기 위하여 리프레쉬(Refresh)동작이 요구된다.
또한, DRAM의 공정 스케일링(Scaling)이 지속됨에 따라, 메모리 셀의 커패시턴스가 작아져 리프레쉬 주기가 점점 짧아지고 있다. 따라서, 기존의 리프레쉬 주기, 혹은 쓰기 동작시 소요되는 시간을 그대로 유지하면서 DRAM을 생산하는 것은 수율의 하락을 가져온다.
모든 메모리 셀들에 저장된 데이터를 보장하기 위해서는 데이터 보유시간(retention time)이 짧은 메모리 셀들(이하, 위크 메모리 셀들이라 함)을 기준으로 리프레쉬 시간이 결정되어야 한다. 따라서, 데이터 보유시간이 긴 메모리 셀들(이하, 노말 메모리 셀들이라 함)도 위크 메모리 셀들의 데이터 보유시간을 기준으로 리프레쉬 되어야 한다. 결과적으로, 메모리 셀들 중 대부분의 메모리 셀들의 데이터 보유시간이 길더라도, 데이터 보유시간이 짧은 위크 메모리 셀들을 기준으로 자주 리프레쉬 되어야 한다. 이는 오토-리프레쉬 및 셀프-리프레쉬 동작들을 수행할 때 소모되는 전력이 증가함을 나타낸다.
한편, 위크 메모리 셀들을 별도로 관리하여 메모리 시스템을 제어하는 방법이 있을 수 있다. 그러나, 리드, 라이트 등의 동작을 하지 않는 유후 셀에 관하여까지 해당 셀의 정보를 메모리 콘트롤러에서 관리하는 것은 비효율적이다.
따라서, 본 발명이 이루고자 하는 기술적인 과제는, 쓰기 동작시에 위크 메모리 셀 여부를 판단하여 메모리 셀의 동작을 스케쥴링 할 수 있는 메모리 시스템, 및 그의 동작 제어 방법을 제공하는 것이다.
상술한 과제를 해결하기 위한 본 발명의 실시예에 따른 메모리 시스템은, 복수의 메모리 셀과, 상기 복수의 메모리 셀 중 위크 셀의 정보를 저장하는 제1 저장부를 포함하는 메모리 장치; 및 상기 메모리 셀의 동작에 관한 동작 명령 신호를 상기 메모리 장치로 전송하며, 상기 제1 저장부로부터 상기 위크 셀의 정보를 받아, 상기 메모리 장치의 동작을 제어하는 메모리 컨트롤러를 포함하고, 상기 메모리 장치는, 상기 동작 명령 신호가 전송되고, 상기 동작 명령 신호에 대응하는 메모리 셀이 상기 위크 셀인 경우, 상기 위크 셀의 정보를 상기 메모리 컨트롤러로 전송한다.
상기 메모리 시스템은, 상기 메모리 장치와 상기 메모리 컨트롤러 사이에 상기 위크 셀의 정보를 전송하는 전송 라인을 포함한다.
상기 메모리 장치는, 상기 동작 명령 신호에 대응하는 메모리 셀이 상기 위크 셀인 경우, 플래그 신호를 변경하고, 상기 플래그 신호에 기초하여 상기 위크 셀의 정보를 상기 메모리 컨트롤러로 전송한다.
상기 플래그 신호는 상기 동작 명령 신호가 전송된 시점으로부터 미리 설정된 시간 이후에 변경된다.
상기 메모리 컨트롤러는, 상기 동작 명령 신호에 대응하는 메모리 셀이 상기 위크 셀인 경우, 상기 위크 셀에 대하여 ROR(Ras Only Refresh)을 수행하여, 상기 위크 셀의 어드레스를 상기 메모리 장치로 전송한다.
상기 메모리 컨트롤러는, 상기 쓰기명령신호에 대응하는 메모리 셀이 노말 메모리 셀인 경우, 상기 노말 메모리 셀에 대하여 오토 리프레쉬를 수행한다.
상기 제1 저장부는, 상기 위크 셀의 어드레스와 비트형태로 변환된 위크 셀의 정보를 테이블형태로 저장한다.
상기 메모리 장치는, 상기 메모리 컨트롤러에서 억세스하는 위크 셀이 복수개인 경우, 상기 복수의 위크 셀 중, 데이터 유지시간이 가장 짧은 위크 셀에 관한 정보를 상기 메모리 컨트롤러로 전송한다.
상기 메모리 장치는, 상기 데이터 유지시간이 가장 짧은 위크 셀에 저장된 데이터가 로우인 경우, 상기 데이터 유지시간이 가장 짧은 위크 셀에 관한 정보를 상기 메모리 컨트롤러로 전송하지 않는다.
상기 메모리 장치는, 상기 메모리 컨트롤러에서 억세스하는 위크 셀이 복수개인 경우, 상기 복수의 위크 셀 중, 쓰기 시간이 가장 긴 위크 셀에 관한 정보를 상기 메모리 컨트롤러로 전송한다.
상기 메모리 장치는, 상기 쓰기 시간이 가장 긴 위크 셀에 저장된 데이터가 로우인 경우, 상기 쓰기 시간이 가장 긴 위크 셀에 관한 정보를 상기 메모리 컨트롤러로 전송하지 않는다.
상기 메모리 컨트롤러는, 상기 메모리 장치로부터 전송받은 상기 위크 셀의 정보를 페이지 단위로 저장하는 제2 저장부; 및 상기 메모리 장치의 동작을 제어하는 제어부를 포함하고, 동일한 페이지에 속하는 위크 셀 중 데이터 유지시간이 가장 짧은 위크 셀을 기준으로 상기 제2 저장부에 저장된 상기 위크 셀의 정보를 업데이트 한다.
상기 메모리 컨트롤러는, 상기 동일한 페이지에 속하는 위크 셀 중 쓰기 시간이 가장 긴 위크 셀을 기준으로 상기 제2 저장부에 저장된 상기 위크 셀의 정보를 업데이트 한다.
상기 제2 저장부는 상기 위크 셀에 대응하는 상기 데이터 유지시간, 쓰기 시간, 페이지 어드레스, 및 최종 리드 동작 시간을 저장하며, 상기 메모리 컨트롤러는, 상기 동일한 페이지를 구성하는 위크 셀에 대한 최종 리드 동작시간으로부터 소요된 시간이 미리 설정된 시간보다 큰 경우, 해당하는 페이지에 속한 위크 셀의 정보를 삭제한다.
상술한 과제를 해결하기 위한 본 발명의 실시예에 따른 전자 시스템은 메모리 시스템; 및 상기 메모리 컨트롤러로부터 상기 제2 저장부에 저장된 테이블을 전송받아 저장하고, 상기 메모리 장치가 접근하면, 상기 전송받아 저장한 테이블을 상기 메모리 컨트롤러로 전송하는 대용량 저장장치를 포함한다.
상술한 과제를 해결하기 위한 본 발명의 실시예에 따른 메모리 시스템 동작 제어 방법은 복수의 메모리 셀을 포함하는 메모리 장치를 테스트하여, 제1 저장부에 위크 셀 정보를 테이블 형태로 저장하는 단계; 메모리 컨트롤러에서 동작 명령 신호를 전송하는 단계; 상기 전송된 동작 명령 신호를 상기 메모리 장치에서 수신하여, 상기 동작 명령 신호에 대응하는 메모리 셀이 위크 셀인 경우, 위크 셀 정보를 메모리 컨트롤러로 전송하는 단계; 상기 전송되는 위크 셀 정보 중 데이터 유지시간이 가장 작거나, 쓰기 시간이 가장 긴 정보에 관한 테이블을 생성하여 상기 메모리 컨트롤러에 저장하는 단계; 상기 메모리 컨트롤러에 저장된 테이블에 기초하여 상기 메모리 장치의 리프레쉬, 읽기 또는 쓰기동작을 제어하는 단계를 포함한다.
본 발명의 실시예에 따르면, 쓰기 동작시 위크 메모리 셀인 경우에 위크 메모리 셀에 관한 정보를 메모리 컨트롤러로 제공하여 동작시킴으로써, 정보의 저장공간을 최소화시키면서도, 위크 메모리 셀을 노말 메모리 셀과 독립적으로 관리하여, 리프레쉬, 쓰기 동작을 효율적으로 수행할 수 있다.
또한, DRAM의 경우 논리 로우의 데이터 값이 저장되는 경우와, 논리 하이의 데이터 값이 저장되는 경우, 메모리 셀에서 전송하는 정보에 차이를 두어 효율적으로 리프레쉬 주기를 조절할 수 있다.
또한, 일정시간 이상으로 읽기 동작이 수행되지 않으면, 데이터를 삭제하여, 효율적인 데이터 관리를 할 수 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 일 실시예에 따른 전자 시스템의 개략적인 블록도이다.
도 2는 본 발명의 일 실시예에 따른 메모리 시스템의 개략적인 블록도이다.
도 3은 본 발명의 일 실시예에 따른 메모리 장치의 개략적인 블록 구성도이다.
도 4a 내지 도 4b는 본 발명의 일 실시예에 따른 메모리 장치의 메모리 셀과 이에 관한 위크 셀의 정보를 표현한 테이블을 도시한다.
도 5a 내지 도 5b는 본 발명의 일 실시예에 따른 메모리 장치의 메모리 셀과 이에 따라 메모리 컨트롤러에 저장되는 위크 셀의 정보에 대한 표를 도시한다.
도 6은, 본 발명의 실시예에 따른 메모리 장치와 메모리 컨트롤러의 동작에 대한 타이밍 도이다.
도 7은 본 발명의 일 실시예에 따른 메모리 컨트롤러의 일부를 도시한 블록도이다.
도 8은 본 발명의 실시예에 따른 메모리 컨트롤러의 제2 저장부에 포함된 표를 도시한다.
도 9는 본 발명의 실시예에 따른 메모리 시스템의 동작 제어 방법을 도시한 순서도이다.
도 10은 본 발명의 일 실시예에 따른 전자 시스템을 나타내는 도면이다.
도 1은 본 발명의 일 실시예에 따른 전자 시스템의 개략적인 블록도이다.
도 2는 본 발명의 일 실시예에 따른 메모리 시스템의 개략적인 블록도이다.
도 3은 본 발명의 일 실시예에 따른 메모리 장치의 개략적인 블록 구성도이다.
도 4a 내지 도 4b는 본 발명의 일 실시예에 따른 메모리 장치의 메모리 셀과 이에 관한 위크 셀의 정보를 표현한 테이블을 도시한다.
도 5a 내지 도 5b는 본 발명의 일 실시예에 따른 메모리 장치의 메모리 셀과 이에 따라 메모리 컨트롤러에 저장되는 위크 셀의 정보에 대한 표를 도시한다.
도 6은, 본 발명의 실시예에 따른 메모리 장치와 메모리 컨트롤러의 동작에 대한 타이밍 도이다.
도 7은 본 발명의 일 실시예에 따른 메모리 컨트롤러의 일부를 도시한 블록도이다.
도 8은 본 발명의 실시예에 따른 메모리 컨트롤러의 제2 저장부에 포함된 표를 도시한다.
도 9는 본 발명의 실시예에 따른 메모리 시스템의 동작 제어 방법을 도시한 순서도이다.
도 10은 본 발명의 일 실시예에 따른 전자 시스템을 나타내는 도면이다.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 또는 기능적 설명들은 단지 본 발명의 개념에 따른 실시 예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시 예들은 다양한 형태들로 실시될 수 있으며 본 명세서에 설명된 실시 예들에 한정되지 않는다.
본 발명의 개념에 따른 실시 예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시 예들을 도면에 예시하고 본 명세서에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예들을 특정한 개시 형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1구성요소는 제2구성요소로 명명될 수 있고, 유사하게 제2구성요소는 제1구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다.
도 1은 본 발명의 일 실시예에 따른 전자 시스템(10)의 개략적인 블록도이다.
본 발명의 일 실시예에 따른 전자 시스템(10)은 메모리 시스템(300) 및 호스트(20)를 포함한다. 메모리 시스템(300)은 메모리 컨트롤러(200) 및 메모리 장치들(100, 100', 100")을 포함할 수 있다.
호스트(20)는 PCI-E(Peripheral Component Interconnect - Express), ATA(Advanced Technology Attachment), SATA(Serial ATA), PATA(Parallel ATA), 또는 SAS(serial attached SCSI)와 같은 인터페이스 프로토콜을 사용하여 메모리 시스템(300)과 통신할 수 있다. 그러나, 호스트(20)와 메모리 시스템(300)간의 인터페이스 프로토콜들은 상술한 예에 한정되지 않으며, USB(Universal Serial Bus), MMC(Multi-Media Card), ESDI(Enhanced Small Disk Interface), 또는 IDE(Integrated Drive Electronics) 등과 같은 다른 인터페이스 프로토콜들 중 하나일 수 있다.
메모리 컨트롤러(Memory Controller)(200)는 메모리 시스템(Memory System)(300)의 동작을 전반적으로 제어하며, 호스트(20)와 메모리 장치들(100, 100', 100") 간의 제반 데이터 교환을 제어한다. 예컨대, 메모리 컨트롤러(200)는 호스트(20)의 요청에 따라 메모리 장치들(100, 100', 100")을 제어하여 데이터를 쓰거나(write) 데이터를 읽는다(read).
또한, 메모리 컨트롤러(200)는 메모리 장치들(100, 100', 100")을 제어하기 위한 커맨드(command)들을 인가하여, 메모리 장치들(100, 100', 100")의 동작을 제어한다.
메모리 장치들(100, 100', 100")은 DRAM(Dynamic Random Access Memory) 및 비휘발성 메모리(NVM: Non-Volatile Vemory)를 포함하며, 비휘발성 메모리는 EEPROM, 플래시 메모리, MRAM(Magnetic RAM), 스핀전달토크 MRAM(Spin-Transfer Torque MRAM), FeRAM(Ferroelectiric RAM), PRAM(Phase change RAM), RRAM(Resistive RAM), 나노튜브 RRAM(nanotube RRAM), 폴리머 RAM(Polymer RAM), 나노 부유 게이트 메모리(Nano Floating Gate Memory), 홀로그래픽 메모리(holographic memory), 분자 전자 메모리 소자(Molecular Electronics Memory Device) 또는 절연 저항 변화 메모리(Insulator Resistance Change Memory)를 포함할 수 있다.
본 발명의 실시예에 따른 메모리 시스템(300)은 모바일 기기, 노트북, 데스크 톱 컴퓨터와 같은 시스템에 장착될 수 있으나, 이에 한정되지 않는다.
도 2는 본 발명의 일 실시예에 따른 메모리 시스템(300)의 개략적인 블록도이다. 본 발명에서는 메모리 컨트롤러(200)에 대응되는 하나의 메모리 장치(100)만을 예로 들어 설명한다.
메모리 시스템(300)은 메모리 장치(100)와 메모리 컨트롤러(200)를 포함하며, 메모리 장치(100)와 메모리 컨트롤러(200) 사이를 연결하는 데이터(DQ)핀, 어드레스(ADD) 핀, 커맨드(CMD) 핀, 및 정보 비트(IB) 핀을 포함할 수 있다.
도 1 및 도 2를 참조하면, 메모리 컨트롤러(200)는 호스트(20)의 요청에 기초하여 데이터(DQ) 핀을 통해 메모리 장치(100)로 데이터를 입력하거나 메모리 장치(100)로부터 데이터를 출력할 수 있다. 또한, 메모리 컨트롤러(200)는 어드레스(ADD) 핀을 통해 메모리 장치(100)로 어드레스를 입력하거나, 메모리 장치(100)로부터 어드레스를 출력할 수 있다.
또한, 메모리 컨트롤러(200)는 커맨드(CMD) 핀을 통해 메모리 장치(100)로 액티브(active), 라이트(write), 리드(read), 리프레쉬(refresh) 등의 동작을 위한 커맨드(동작 명령 신호)를 입력할 수 있다.
또한, 메모리 컨트롤러(200)는 정보 비트(Information Bit : IB) 핀을 통하여 메모리 장치(100)내에 포함된 메모리 셀 중 위크 셀의 정보를 메모리 장치(100)로부터 전송 받을 수 있다. 정보 비트(IB) 핀은 기존의 데이터(DQ) 핀, 어드레스(ADD) 핀, 커맨드(CMD) 핀과 독립적으로 구성될 수 있다. 또는, 메모리 장치(100)는 위크 셀의 정보를 기존의 데이터(DQ) 핀, 어드레스(ADD) 핀, 커맨드(CMD) 핀 중 적어도 하나의 핀을 통하여 메모리 컨트롤러(200)로 전송할 수도 있다.
메모리 컨트롤러(200)는 메모리 장치(100)의 액티브(active) 동작을 위한 커맨드(CMD)와 함께 어드레스 신호(ADD)를 인가하고, 라이트(write) 동작 및 리드(read) 동작을 위한 커맨드(CMD)와 함께 어드레스 신호(ADD)를 인가하며, 리프레쉬(refresh) 동작을 위한 커맨드(CMD)와 함께 어드레스 신호(ADD)를 인가하는 동작을 연속적으로 수행할 수 있다.
도 3은 본 발명의 일 실시예에 따른 메모리 장치(100)의 개략적인 블록 구성도이다.
도 1 내지 도 3을 참조하면, 메모리 장치(100)는 메모리 셀 어레이(Memory Cell Array)(110), 로우 디코더(Row Decoder)(120), 센스 앰프(Sense Amplifier)(130), 컬럼 디코더(Column Decoder)(140), 제어 회로(Contro Circuit)(150), 커맨드 디코더(Command Decoder)(160), 어드레스 버퍼(Address Buffer)(170), 제1 저장부(180), 버퍼(182), 및 데이터 입출력부(190)를 포함한다. 메모리 장치(100)의 개략적인 동작은 다음과 같다.
메모리 셀 어레이(110)는 다수의 메모리 셀들이 로우(row) 방향과 컬럼(column) 방향으로 배열되어 있는 데이터 저장 장소이다. 센스 앰프(130)는 메모리 셀의 데이터를 감지 증폭하고, 메모리 셀로 데이터를 저장한다. 메모리 셀 어레이(110)는 복수의 메모리 뱅크를 가질 수 있다.
데이터 입출력부(190)를 통하여 입력된 데이터는 어드레스 신호(ADD)에 기초하여 메모리 셀 어레이(110)에 라이트(write)되고, 어드레스 신호(ADD)에 기초하여 메모리 셀 어레이(110)로부터 리드(read)된 데이터는 데이터 입출력부(190)를 통하여 메모리 컨트롤러(200)로 출력된다.
데이터가 라이트(write)되거나 혹은 리드(read)될 메모리 셀을 지정하기 위하여 메모리 컨트롤러(200)에서 출력된 어드레스 신호(ADD)가 어드레스 버퍼(170)로 입력된다. 어드레스 버퍼(170)는 메모리 컨트롤러(200)에서 출력되는 어드레스 신호(ADD)를 일시적으로 저장한다.
제1 저장부(180)는, 메모리 셀 어레이(110)에 포함된 복수의 메모리 셀에 대하여 테스트한 후, 성능이 좋지 않은 메모리 셀 즉, 위크 셀(weak cell)에 관한 정보를 저장할 수 있다.
구체적으로 메모리 장치(100)가 DRAM인 경우, 리프레쉬 주기가 짧아 큰 전력 소모를 가져오게 하는 메모리 셀이나, 쓰기 시간이 길어 전체적인 메모리 장치(100)의 동작 속도의 저하를 가져오게 하는 메모리 셀을 위크 셀이라 할 수 있다.
또한, 메모리 장치(100)가 PRAM의 경우, 시간이 지남에 따라 셀 테이터의 열화 조건이 발생하여 데이터 유지시간의 짧아지게 된 메모리 셀을 위크 셀이라 할 수 있다.
또한, 메모리 장치(100)가 플래쉬 메모리(Flash Memory Device)의 경우, 플래쉬 메모리는 반복적으로 프로그램(program)되고 소거(erase)될 수 있으나, 소거/프로그램 사이클은 소정의 횟수 이내로 제한되게 된다. 즉, 반복적인 소거/프로그램 사이클은 플래쉬 메모리 트랜지스터의 산화막들에게 스트레스를 야기시키고, 플래쉬 메모리 셀의 문턱전압을 변화시킬 수 있다. 이에 따라, 읽기 마진이 감소되고, 읽기 에러 또는 읽기 실패가 유발되는 메모리 셀이 생기게 된다. 이러한 셀을 위크 셀이라 할 수 있다.
그러나 이는 일 예일뿐, 다른 종류의 메모리 장치(100)의 메모리 셀 중 쓰기와 읽기 등의 동작이 반복됨에 따라 메모리 셀의 성능이 저하된 셀을 위크 셀이라 할 수 있다.
제1 저장부(180)는 미리 테스트 된 위크 셀의 어드레스와 위크 셀에 관한 정보를 매칭시켜 테이블(table) 형태로 저장한다. 예컨대, 테이블 형태로 저장된 위크 셀의 정보는 위크 셀의 특성에 따라 그룹화되어 제1 저장부(180)에 저장되며, 위크 셀들의 어드레스와, 데이터 유지 시간(retention time), 및 쓰기 시간(tWR)을 포함할 수 있다.
메모리 컨트롤러(200)로부터 어드레스(ADD) 핀을 통해 어드레스 버퍼(170)로 억세스(access)할 메모리 셀의 어드레스가 전송되고 커맨드(CMD) 핀을 통해 동작 명령 신호가 전송될 수 있다. 이하, 동작 명령 신호 중에 일 실시예로 쓰기 명령 신호에 기초하여 설명하기로 한다. 이는 읽기, 리프레쉬 명령 신호의 경우 쓰기 동작이 먼저 수행되기 때문이다.
메모리 컨트롤러(200)로부터 어드레스(ADD) 핀을 통해 어드레스 버퍼(170)로 억세스(access)할 메모리 셀의 어드레스가 전송되고 커맨드(CMD) 핀을 통해 쓰기 명령 신호(write command)가 전송되면, 메모리 장치(100)의 제어 회로(150)는 쓰기 명령 신호에 대응하는 메모리 셀의 어드레스와 제1 저장부(180)에 저장된 위크 셀의 어드레스를 비교한다. 비교 결과, 메모리 컨트롤러(200)의 쓰기 명령 신호에 대응하는 메모리 셀이 위크 셀이라면, 이에 관하여 메모리 장치(100)는 제1 저장부(180)에 저장된 해당 위크 셀의 정보를 버퍼(182)를 거쳐 메모리 컨트롤러(200)로 전송할 수 있다.
로우 디코더(120)는 데이터가 입력 혹은 출력될 메모리 셀과 연결된 워드라인을 지정하기 위하여 어드레스 버퍼(170)로부터 출력된 어드레스 신호(ADD) 중 로우 어드레스(row address)를 디코딩한다.
즉, 로우 디코더(120)는 데이터 라이트(write) 혹은 리드(read) 모드에서는 어드레스 버퍼(170)로부터 출력된 로우 어드레스를 디코딩하여 해당 워드라인을 인에이블한다. 또한, 로우 디코더(120)는 제어 회로(150)로부터 발생되는 로우 어드레스에 기초하여 해당 워드라인을 리프레쉬(refresh) 하도록 한다.
컬럼 디코더(140)는 데이터가 입력 혹은 출력될 메모리 셀과 연결된 비트라인을 지정하기 위하여, 어드레스 버퍼(170)로부터 출력된 어드레스 신호(ADD) 중 컬럼 어드레스(column address)를 디코딩한다.
메모리 셀 어레이(110)는 로우 및 컬럼 어드레스에 의해 지정된 메모리 셀로부터 데이터를 리드(read)하거나 혹은 메모리 셀로 데이터를 라이트(write)한다.
커맨드 디코더(160)는 메모리 컨트롤러(200)로부터 인가되는 커맨드(CMD)신호들을 수신하고, 이 신호들을 디코딩하여 디코딩된 동작 명령 신호(예컨대, 액티브 신호, 리드 신호, 라이트 신호, 리프레쉬 신호)를 내부적으로 생성한다.
제어 회로(150)는 예컨대, 커맨드 디코더(160)로부터 디코딩된 리프레쉬 명령 신호를 인가받아 메모리 셀 어레이(110)의 하나의 워드라인을 리프레쉬 하기 위해 내부 로우 어드레스를 로우 디코더(120)로 출력할 수 있다.
제어 회로(150)는, 커맨드 디코더(160)를 통해 메모리 컨트롤러(200)에서 전달된 쓰기 명령 신호와 이에 해당하는 메모리 셀의 어드레스를 전송받는다.
제어 회로(150)는, 메모리 셀 어레이(110) 중 위크 셀의 어드레스와 쓰기 명령 신호에 따른 메모리 셀의 어드레스를 비교한다. 제어 회로(150)는 쓰기 명령 신호에 따른 메모리 셀이 위크 셀인 경우, 제1 저장부(180)에 위크 셀의 어드레스와 그에 따른 정보 비트(IB)를 제2 저장부(240)로 전송한다.
또한, 제어 회로(150)는 쓰기 명령 신호에 따른 메모리 셀이 위크 셀인 경우, 플래그 신호를 변경한다. 변경된 플래그 신호와, 이에 따른 위크 셀의 정보는 버퍼(182)를 통해 각각 제2 저장부(240)와 메모리 컨트롤러(200)의 제어부(230)로 전송된다.
제1 저장부(180)에 저장된 정보 비트(IB)는 데이터 핀(DQ), 커맨드 핀(CMD), 어드레스 핀(ADD)을 통해 전송될 수 있고, 데이터 핀(DQ), 커맨드 핀(CMD), 어드레스 핀(ADD)과는 별도로 정보 비트(IB)핀을 통해 전송될 수 있다.
또한, 제어 회로(150)의 플래그 신호는 별도의 핀을 통해 전송될 수도 있고, 데이터 핀(DQ), 커맨드 핀(CMD), 어드레스 핀(ADD)을 통해 전송될 수 있다.
또한, 도 3에는 도시되지는 않았지만, 메모리 장치(100)는 클럭 신호를 발생하기 위한 클럭 회로(미도시), 외부로부터 인가되는 전원 전압을 수신하여 내부전압을 생성하거나 분배하는 전원 회로(미도시) 등을 더 구비할 수 있다.
본 발명의 실시예에 따른 메모리 컨트롤러(200)는, 커맨드 발생부(210), I/O 버퍼(220), 제어부(230), 및 제2 저장부(240)를 포함할 수 있다.
커맨드 발생부(210)는 메모리 장치(100)가 액티브, 리드, 라이트, 리프레쉬 등의 동작을 수행하도록 제어부(230)의 제어를 받아 동작 명령 신호를 생성한다.
제어부(230)는 제2 저장부(240)에 저장된 위크 셀을 포함하는 페이지에 관한 정보를 전송받는다. 제어부(230)는 이를 분석하여 위크 셀과 노말 셀에 각각 맞추어 리드, 라이트, 리프레쉬 동작을 수행하도록 메모리 장치(100)를 제어할 수 있다. 커맨드 발생부(210)는 제어부(230)의 제어를 받아 동작 명령 신호를 생성할 수 있다.
I/O 버퍼(220)는 메모리 장치(100)로 전달하거나, 메모리 장치(100)로부터 전달되는 신호들을 임시적으로 저장할 수 있다. 메모리 장치(100)는 I/O 버퍼(220)와 어드레스(ADD) 핀, 데이터(DQ) 핀, 커맨트(CMD) 핀을 통해 연결된다. 또한, I/O 버퍼(220)를 통해 메모리 컨트롤러(200)의 데이터, 어드레스, 동작 명령 신호등을 메모리 장치(100)로 전송할 수 있다.
제2 저장부(240)는 위크 셀에 대응하는 데이터 유지시간(data retention time), 쓰기 시간(tWR), 위크 셀이 포함된 페이지의 어드레스(address), 및 해당하는 페이지에 최종으로 리드 동작이 수행된 시간에 관한 정보를 테이블 형태로 저장할 수 있다.
이 때, 메모리 컨트롤러(200)는 동일한 페이지를 구성하는 위크 셀에 대한 최종 리드 동작시간으로부터 소요된 시간이 미리 설정된 시간보다 큰 경우, 해당하는 페이지에 속한 위크 셀의 정보를 무효화(invalid) 시킬 수 있다. 이는 어느 하나의 페이지(page)에 속하는 메모리 셀에 대하여 최종 리드 동작이 수행된 이후, 미리 결정된 시간이 경과하여도 동일한 메모리 셀에 대하여 리드 동작 명령이 없는 경우, 해당하는 메모리 셀을 포함하는 페이지는 불필요한 데이터를 가지고 있다고 판단할 수 있기 때문이다. 이를 통하여, 메모리 컨트롤러(200)는 제2 저장부(240)에 구비되는 테이블이 오버플로우(overflow)되지 않도록 조절할 수 있다.
테이블의 예시적인 형태와, 테이블의 오버플로우(overflow)를 방지하는 컨트롤에 관하여는 도 8에서 후술하기로 한다.
도 4a 내지 도 4b는 본 발명의 일 실시예에 따른 메모리 장치의 메모리 셀과 이에 관한 위크 셀의 정보를 표현한 테이블을 도시한다.
도 3 내지 도 4b를 참조하면, 메모리 셀 어레이(110)는 복수의 메모리 셀들을 포함하고, 복수의 메모리 셀은 하나의 페이지(page)를 구성할 수 있다. 본 발명의 일 예를 도시한 도 4a를 참조하면, 페이지 1(page1)은 복수의 셀을 포함하며, 복수의 메모리 셀 중 메모리 컨트롤러(200)로부터 쓰기 동작 명령을 받은 메모리 셀은 C1 내지 C7의 셀들이다.
어드레스가 C1인 메모리 셀은 데이터 유지시간이 노말 셀(Normal cell)보다 짧은 위크 셀이고, 어드레스가 C3 인 메모리 셀은 데이터 1(high)을 갖는 경우에 데이터 유지 시간이 노말 셀보다 짧은 위크 셀이다. 어드레스가 C5인 메모리 셀은 쓰기 시간이 노말 셀보다 긴 위크 셀이며, 어드레스가 C7인 메모리 셀은 데이터 1(high)을 갖는 경우에 쓰기 시간이 노말 셀보다 긴 위크 셀이다. 어드레스가 C2, C4, C6인 메모리 셀들은 노말 셀이다.
위크 셀은 각 메모리 셀의 특성에 따라, 상이한 특성을 갖는다. 예컨대, C1의 어드레스를 갖는 위크 셀의 데이터 유지 시간이 32ms이고, C3의 어드레스를 갖는 위크 셀의 데이터 유지 시간이 16ms라면 이를 기초로, 위크 셀 중 데이터 유지시간이 32ms 또는 16ms 인 위크 셀들을 각각의 그룹으로 분류할 수 있다.
또는, C5의 어드레스를 갖는 위크 셀의 쓰기 시간이 20ns이고, C7의 어드레스를 갖는 위크 셀의 쓰기 시간이 40ns라면, 이를 기초로 위크 셀 중 쓰기 시간이 20ns 혹은 40ns인 위크 셀들을 각각의 그룹으로 분류할 수 있다.
본 발명의 일 예를 도시한 도 4b를 참조하면, 그룹(Group)1은 C1의 어드레스를 갖는 위크 셀을 포함하며, 그룹 1에 속한 메모리 셀의 데이터 유지시간은 32ms이다. 그룹 2는, C3의 어드레스를 갖는 위크 셀을 포함하며, 그룹 2에 속한 메모리 셀의 데이터 유지시간은 16ms이다. 그룹 3은 C5의 어드레스를 갖는 위크 셀을 포함하며, 그룹 3에 속한 메모리 셀의 쓰기 시간은 20ns이다. 그룹 4는 C7의 어드레스를 갖는 위크 셀을 포함하며, 그룹 4에 속한 메모리 셀의 쓰기 시간은 40ns이다.
제1 저장부(180)는 데이터 유지시간(Retention Time), 혹은 쓰기 시간(tWR) 등을 기준으로 테이블 형태로 위크 셀의 정보를 저장한다.
도 4b를 참조하면, 정보 비트(Information Bit : IB)는 예컨대 4개의 그룹으로 나누어지며, 그룹을 나눈 기준이 2가지인 경우, 3bit로 이루어질 수 있다. 즉, 상술한 예를 기준으로 정보 비트(IB)의 구성은 맨 앞자리와 나머지 2개의 자리로 구성될 수 있다. 정보 비트 맨 앞자리는 어떠한 특성에 관한 정보인지 여부를 표현한다.
예컨대, 맨 앞자리의 비트가 0인 경우 데이터 유지 시간이 노말 셀보다 긴 위크 셀이라는 것을 나타낸다. 맨 앞자리의 비트가 1인 경우, 쓰기 시간이 노말 셀 보다 길다는 것을 나타낸다.
나머지 두자리의 비트는 맨 앞자리의 비트가 0인 경우, 데이터 유지 시간에 관한 정보를 나타내며, 맨 앞자리의 비트가 1인 경우, 쓰기 시간에 관한 정보를 나타낸다. 예를 들어, 정보 비트 "001, 010"에서 맨 앞자리의 0은 데이터 유지 시간에 관한 것임을 나타내며, 뒤의 두 비트 01, 10은 각각 데이터 유지시간이 32ms, 16ms 임을 의미한다.
도 5a 내지 도 5b는 본 발명의 일 실시예에 따른 메모리 장치(100)의 메모리 셀과 이에 따라 메모리 컨트롤러(200)에 저장되는 위크 셀의 정보에 대한 표를 도시한다.
도 3 내지 도 5b를 참조하면, 도 4a에 도시된 바와 동일하게, 메모리 셀 어레이(110)는 복수의 메모리 셀들을 포함하고, 복수의 메모리 셀은 하나의 페이지를 구성할 수 있다. 본 발명의 일 예를 도시한 도 5a를 참조하면, 페이지 1(page1)은 복수의 셀을 포함하며, 복수의 메모리 셀 중 메모리 컨트롤러(200)로부터 쓰기 동작 명령을 받은 메모리 셀은 C1 내지 C7의 셀들이다.
어드레스가 C1인 메모리 셀은 데이터 유지시간이 노말 셀(Normal cell)보다 짧은 위크 셀이고, 어드레스가 C3 인 메모리 셀은 데이터 1(high)을 갖는 경우에 데이터 유지 시간이 노말 셀보다 짧은 위크 셀이다. 어드레스가 C5인 메모리 셀은 쓰기 시간이 노말 셀보다 긴 위크 셀이며, 어드레스가 C7인 메모리 셀은 데이터 1(high)을 갖는 경우에 쓰기 시간이 노말 셀보다 긴 위크 셀이다. 어드레스가 C2, C4, C6인 메모리 셀들은 노말 셀이다.
도 5a에 도시된 A1 내지 A4는, 복수의 메모리 셀에 데이터를 라이트(write)하는 과정에서 A1 내지 A4에 포함된 위크 셀의 종류에 따라 메모리 컨트롤러(200)의 제2 저장부(240)에 저장되는 위크 셀의 정보의 변화를 나타내기 위해 임의로 설정된 영역이다.
도 5b는 제2 저장부(240)에 저장된 테이블(Weak Page Management Table)에 기록되는 정보의 변화를 도시한 것으로, 초기 상태(Initial State) 표에는 아무런 정보도 기록되어 있지 않다.
이후, 메모리 컨트롤러(200)는 페이지 1(page 1)의 셀 중 C1의 어드레스를 갖는 위크 셀이 포함된 A1의 영역에 쓰기 명령 신호를 전송한다. C1의 어드레스를 갖는 위크 셀은 노말 셀보다 데이터 유지 시간이 짧은 셀이고, 따라서, 메모리 장치(100)는 데이터 유지 시간에 관한 정보를 메모리 컨트롤러(200)에 전송한다.
C1의 어드레스를 갖는 위크 셀에 관한 정보는 상술한 도 4b와 같이 정보 비트(IB)로 저장되어 있으며, 메모리 장치(100)는 이러한 정보 비트(IB)를 메모리 컨트롤러(200)에 전송한다. 제2 저장부(240)는 메모리 장치(100)로부터 전송 받은 정보 비트(IB)를 테이블 형태로 저장할 수 있다.
페이지 1(page 1)에 대한 쓰기 동작이 계속 됨에 따라, 데이터 유지 시간이 더 짧거나, 쓰기 시간이 더 긴 메모리 셀이 존재할 수 있다. 따라서, 페이지 1에 관한 위크 셀 정보는 쓰기 동작이 진행됨에 따라 계속 업데이트(update) 될 수 있다.
즉, 메모리 컨트롤러(200)는, 동일한 페이지에 속하는 위크 셀 중 쓰기 시간이 가장 긴 위크 셀을 기준으로 제2 저장부(240)에 저장되어 있던 위크 셀의 정보를 업데이트할 수 있다. 또한, 메모리 컨트롤러(200)는 동일한 페이지에 속하는 위크 셀 중 데이터 유지 시간이 가장 짧은 위크 셀을 기준으로 제2 저장부(240)에 저장된 위크 셀의 정보를 업데이트 할 수 있다.
이러한 과정은 일 예로 도 5a 및 도 5b에 도시되어 있다.
도 3, 도 5a 및 도 5b를 참조하여 설명하면, 메모리 컨트롤러(200)는 페이지 1의 셀 중 C3의 어드레스를 갖는 위크 셀이 포함된 A2의 영역에 쓰기 명령 신호를 전송한다. C3의 어드레스를 갖는 위크 셀은 노말 셀보다 데이터 유지 시간이 짧을 뿐 아니라 데이터 1(예컨대, 로직 high)을 갖는 경우에 데이터 유지 시간이 C1의 어드레스를 갖는 위크 셀보다도 짧은 위크 셀이다. 데이터 유지 시간과 관련된 리프레쉬 동작을 위해서는 가장 리프레쉬 주기가 짧은 메모리 셀을 기준으로 리프레쉬 주기를 설정해야 하므로, 페이지 1과 관련하여 제2 저장부(240)에 저장된 위크 셀의 정보는 C3의 어드레스를 갖는 위크 셀의 정보로 수정될 수 있다. 도면에 도시된 예로 Retention 부분이 "001"의 비트 값을 갖는다.
또한, 메모리 컨트롤러(200)는 페이지 1의 셀 중 C5의 어드레스를 갖는 위크 셀이 포함된 A3의 영역에 쓰기 명령 신호를 전송한다. C5의 어드레스를 갖는 위크 셀은 노말 셀보다 쓰기 시간이 더 길다. 따라서, 메모리 장치(100)는 C5 의 어드레스를 갖는 위크 셀에 관한 정보를 메모리 컨트롤러(200)에 전송한다. 도면에 도시된 예로 "write time"이 디폴트(default)에서 "101"로 변경되었다.
이어서, 메모리 컨트롤러(200)는 페이지 1의 셀 중 C7의 어드레스를 갖는 위크 셀이 포함된 A4의 영역에 쓰기 명령 신호를 전송한다. C7의 어드레스를 갖는 위크 셀은 노말 셀보다 쓰기 시간이 길 뿐 아니라 데이터 1(예컨대, 로직 high)을 갖는 경우에 쓰기 시간이 C5의 어드레스를 갖는 위크 셀보다도 짧은 위크 셀이다. 쓰기 시간과 관련된 쓰기 동작을 위해서는 가장 쓰기 시간이 긴 메모리 셀을 기준으로 쓰기 시간을 설정해야 하므로, 페이지 1과 관련하여 제2 저장부(240)에 저장된 위크 셀의 정보는 C7의 어드레스를 갖는 위크 셀의 정보로 수정될 수 있다. 도면에 도시된 예로 Write부분이 "111"로 업데이트 될 수 있다.
다만, C5의 어드레스를 갖는 위크 셀과, C7의 어드레스를 갖는 위크 셀은 데이터 유지 시간과는 무관하므로, 데이터 유지 시간과 관련된 C1, C3의 어드레스를 갖는 위크 셀 중 가장 짧은 데이터 유지 시간을 가진 C3의 어드레스를 갖는 위크 셀에 맞게 데이터 유지 시간에 대한 정보는 변경되지 않는다.
도 5a 내지 도 5b는 페이지 1에 관한 위크 셀 정보 전송에 대해서만 도시하고 있으나, 페이지 별로 각각 동일한 과정으로 위크 셀 정보가 전송된다. 또한, 도시한 영역은 순차적이지 않을 수 있다. A1 영역 내지 A4 영역의 메모리 셀에 쓰기 명령 신호를 전송하는 순서는 무관하다.
또한, 정보 비트(IB)의 비트 수는 한정되지 않으며, 노말 셀과 위크 셀들의 차이를 구분할 수 있는 특성의 개수와, 하나의 특성에 대하여 몇 종류의 수치로 분류하는지 여부에 따라 상이하게 결정될 수 있다.
또한, 하나의 페이지 내에서도 서브 페이지로 나누어, 각 서브 페이지 별로 위크 셀의 정보를 저장하고 업데이트 할 수 있다. 이러한 경우, 제2 저장부(240)에 저장되는 테이블 형태의 위크 셀 정보는 서브 페이지 별로 저장될 수 있다.
도 6은, 본 발명의 실시예에 따른 메모리 장치(100)와 메모리 컨트롤러(200)의 동작에 대한 타이밍 도이다.
메모리 컨트롤러(200)는 액티브 신호(ACT)를 출력하며, 뱅크(BANK)와 메모리 셀의 로우 어드레스(ROW ADDRESS, RAa)를 설정한다.
메모리 컨트롤러(200)는 뱅크(BANK)와 메모리 셀의 로우 어드레스를 설정한 후, 쓰기 명령 신호(WR)를 출력한다. 이 때, 메모리 컨트롤러(200)는 컬럼 어드레스(Column Address)를 설정한다.
쓰기 명령 신호(WR)가 출력되고, 데이터를 기입할 메모리 셀의 컬럼 어드레스와 로우 어드레스가 모두 정해지게 되면, 메모리 컨트롤러(200)는 쓰기 명령 신호와 데이터를 라이트(write)할 메모리 셀의 컬럼 어드레스, 및 로우 어드레스를 메모리 장치(100)로 전송한다.
메모리 장치(100)는 메모리 컨트롤러(200)에서 전송한 쓰기 명령 신호에
대응하는 메모리 셀이 위크 셀인지 여부를 판단한다. 메모리 장치(100)는 위크 셀인지 여부를 판별하기 위하여, 제1 저장부(180)에 저장된 위크 셀의 어드레스와 비교할 수 있다.
메모리 장치(100)는 메모리 컨트롤러(200)에서 쓰기 요청한 메모리 셀이 위크 셀인 경우, 해당 위크 셀에 관한 정보를 메모리 컨트롤러(200)로 전송할 수 있다.
구체적으로 제어 회로(150)는 메모리 컨트롤러(200)에서 쓰기 요청한 메모리 셀이 위크 셀인 경우, 플래그 신호를 하이(high) 상태에서 로우(low)상태로 변경한다. 로우(low) 상태로 플래그 신호가 변경되면, 제1 저장부(180)는 저장된 정보 비트(IB)를 메모리 컨트롤러(200)의 제2 저장부(240)로 전송할 수 있다. 또한, 제어 회로(150)는 변경된 플래그 신호를 제어부(230)로 전송하여, 제2 저장부(240)에 저장된 정보 비트(IB)를 인지할 수 있다.
이때, 제어 회로(150)는 메모리 컨트롤러(200)의 쓰기 명령 신호가 전송된 시점으로부터 미리 설정된 시간(tmpd) 후에 플래그 신호를 로우(low)로 변경할 수 있다. 따라서, 메모리 컨트롤러(200)의 쓰기 명령 신호가 전송된 시점으로부터 미리 설정된 시간(tmpd) 후에 제1 저장부(180)의 정보 비트를 메모리 컨트롤러(200)로 전송할 수 있다.
도 7은 본 발명의 일 실시예에 따른 메모리 컨트롤러(200)의 일부를 도시한 블록도이다.
상술한 바와 같이 메모리 컨트롤러(200)는 커맨드 발생부(210), I/O 버퍼(220), 제어부(230) 및 제2 저장부(240)를 포함할 수 있다.
커맨드 발생부(210)는 오토 리프레쉬 커맨드 발생부(Auto Refresh Command Generator)(330), ROR 리프레쉬 커맨드 발생부(ROR Refresh Command Generator)(340), 및 라이트 커맨드 발생부(Write Command Generator)(350)를 포함할 수 있다.
제어부(230)는 제2 저장부(240)를 통하여 위크 셀을 포함하는 페이지에 관한 정보가 전송되면, 리프레쉬 과정의 경우 ROR(Ras Only Refresh, 이하 ROR) 리프레쉬 커맨드 발생부(340)를 통해 ROR 리프레쉬 명령 신호를 생성한다. 생성된 ROR 리프레쉬 명령 신호는 I/O 버퍼(220)를 통하여 메모리 장치(100)로 전송된다.
반면에 제어부(230)는 제2 저장부(240)를 통하여 위크 셀을 포함하는 페이지에 관한 정보가 전송되는 경우가 아니라면, 오토 리프레쉬 커맨드 발생부(330)를 통하여 오토 리프레쉬 명령 신호를 생성한다. 생성된 오토 리프레쉬 명령 신호는 I/O 버퍼(220)를 통하여 메모리 장치(100)로 전송된다.
오토 리프레쉬와 ROR 리프레쉬의 차이는 오토 리프레쉬의 경우, 리프레쉬 명령 신호만 메모리 장치(100)로 전송하나, ROR 리프레쉬의 경우, 리프레쉬 명령 신호 뿐만 아니라 리프레쉬 할 메모리 셀의 어드레스도 함께 전송된다는 차이점이 있다. 즉, 메모리 컨트롤러(200)는 위크 셀을 리프레쉬 하는 경우, ROR 리프레쉬 하도록 ROR 리프레쉬 명령 신호와 위크 셀의 어드레스를 메모리 장치(100)로 전송하며, 노말 셀을 리프레쉬 하는 경우, 오토 리프레쉬 하도록 오토 리프레쉬 명령 신호를 메모리 장치(100)로 전송한다.
한편, ROR 리프레쉬 커맨드 발생부(340)는 리프레쉬 동작을 수행할 위크 셀의 데이터 유지 시간에 관한 정보를 제2 저장부(240)로부터 전송받아, 이에 기초하여 ROR 리프레쉬를 수행할 수 있다.
라이트 커맨드 발생부(350)는, 제2 저장부(240)를 통하여 위크 셀을 포함하는 페이지에 관한 정보가 전송되는 경우, 쓰기 명령 신호를 생성한다.
도 8은 본 발명의 실시예에 따른 메모리 컨트롤러(200)의 제2 저장부(240)에 포함된 표(240')를 도시한다.
제2 저장부(240)는 페이지 별로 해당 페이지에 포함된 위크 셀에 관한 정보들을 테이블 형태로 저장한다. 예컨대, 위크 셀에 관한 정보는 데이터 유지 시간, 쓰기 시간 등이 있다. 또한, 제2 저장부(240)는, 각각의 페이지를 구성하는 위크 셀들의 최종 리드 시간(Last Read Time Stamp)을 저장할 수 있다.
최종 리드 시간은 각각의 페이지를 구성하는 위크 셀들에 대하여, 가장 최근에 메모리 컨트롤러(200)로부터 리드 명령 신호를 받은 시간을 지칭한다. 메모리 컨트롤러(200)로부터 리드 명령 신호를 받은 시간이 현재로부터 가깝다면, 해당하는 페이지에는 필요한 데이터가 기입되어 있을 확률이 높다. 반면에, 가장 최근에 메모리 컨트롤러(200)로부터 리드 명령 신호를 받은 시간이 미리 정해진 간격의 시간보다 큰 경우, 해당하는 페이지를 구성하는 메모리 셀에는 필요하지 않은 데이터가 기입되어 있을 확률이 높다.
따라서, 최종 리드 시각 이후에 어느 정도의 시간이 지났다면 해당하는 페이지를 구성하는 메모리 셀에 기입된 데이터가 불필요하다고 판단할 수 있는지에 따라, 미리 시간 간격의 크기(tint)를 설정할 수 있다.
제어부(230')는 미리 설정된 시간 간격(tint)과, 테이블에 저장된 페이지 중 어느 하나의 최종 리드 시간(tx)을 더하고, 이를 현재 시각(tc)과 비교할 수 있다. 제어부(230')는 현재 시각(tc)보다 미리 설정된 시간간격(tint)과 최종 리드 시간(tx)의 합이 크다면, 해당 페이지의 위크 셀 정보를 그대로 제2 저장부(240)에 저장한다.
반면에, 제어부(230)는 현재 시각(tc)보다 미리 설정된 시간간격(tint)과 최종 리드 시간(tx)의 합이 작다면, 해당하는 페이지는 무효화 할 수 있다. 따라서, 제어부(230)는 해당하는 페이지에 관한 위크 셀의 정보를 삭제할 수 있다. 또한, 제어부(230)는 해당하는 페이지에 관한 정보가 저장된 테이블 위에 다른 페이지에 관한 정보를 덧씌워 기록할 수 있다.
도 9는 본 발명의 실시예에 따른 메모리 시스템의 동작 제어 방법을 도시한 순서도이다.
도 3 및 도 9를 참조하면, 복수의 메모리 셀을 포함하는 메모리 장치에 대해 데이터 유지 시간 혹은 쓰기 시간등을 미리 테스트하여, 제1 저장부(180)에 위크 셀 정보를 테이블 형태로 저장한다(S901). 메모리 컨트롤러(200)에서 쓰기 명령 신호를 생성하여 메모리 장치(100)로 전송하면(S903), 전송된 쓰기 명령 신호에 대응하는 메모리 셀이 위크 셀인 경우, 메모리 장치(100)는 위크 셀 정보를 메모리 컨트롤러(200)로 전송한다(S905). 제2 저장부(240)는 전송되는 위크 셀 정보 중 데이터 유지시간(retention time)이 가장 작거나, 쓰기 시간(tWR)이 가장 긴 정보에 관한 테이블을 생성하여 저장할 수 있다(S907). 메모리 컨트롤러(200)는 제2 저장부(240)에 저장된 테이블에 기초하여 메모리 장치(100)의 리프레쉬 또는 쓰기동작을 제어할 수 있다(S909).
본 발명의 실시예들에 따른 메모리 장치 또는 메모리 시스템은 전자 시스템에 장착될 수 있다. 이러한 전자 시스템의 일 예가 도 10에 예시되어 있다.
도 10은 본 발명의 일 실시예에 따른 전자 시스템(700)을 나타내는 도면이다.
도 3 및 도 10을 참조하면, 전자 시스템(700)은 본 발명의 일 실시예에 따른 메모리 시스템(300), 비휘발성 메모리(NVM, 710), 대용량 저장장치(720), CPU(730) 및 I/O 인터페이스(740)를 포함하며, 이들은 버스(800)를 통해 서로 연결될 수 있다.
비휘발성 메모리(710)는 플래시 메모리, PRAM 및 MRAM을 포함하며, 대용량 저장장치(Mass Storage)(720)는 SSD, HDD 및 NAS 등을 포함한다. 비휘발성 메모리(710) 또는 대용량 저장장치(720)는 시스템 OS 및 기타 어플리케이션들의 파일을 저장할 수 있다.
또한, 대용량 저장장치(720)는 메모리 컨트롤러(200)로부터 버스(800)를 통하여 제2 저장부(240)에 저장된 테이블을 전송 받아 저장할 수 있다. 이후, 대용량 저장 장치(720)는 동일한 메모리 장치(100)가 접근할 경우, 저장한 테이블을 메모리 컨트롤러(200)에 전송할 수 있다. 이에 의해 메모리 컨트롤러(200)는 메모리 장치(100)를 구성하는 메모리 셀들의 정보를 알 수 있다. 다만, 메모리 컨트롤러(200)는 메모리 장치(100)의 메모리 셀들 중, 쓰기 동작 명령을 받은 셀 그 중에서도 위크 셀에 관한 정보만 저장한다. 따라서, 바람직하게는 메모리 시스템(300)을 통하여 동일한 응용프로그램을 실행하거나, 동일한 어플리케이션을 실행할 때, 대용량 저장장치(720)로부터 저장된 위크 셀의 정보를 전송받아 이에 기초하여 메모리 장치(100)를 제어할 수 있을 것이다.
I/O 인터페이스(740)는 네트워크에 접속할 수 있는 네트워크 포트 또는 네트워크에 직접 연결될 수 있다.
전자 시스템(700)의 동작 동안, CPU(730)가 메모리 시스템(300)을 통제할 수 있으며, 이를 통해 메모리 장치(100)는 메모리 장치(100)에 대응되는 리프레쉬 특성 정보에 따라 워드 라인들을 리프레쉬 시킬 수 있다.
여기서, 전자 시스템(700) 내의 특정 컴포넌트들이 변경될 수 있다. 예를 들어, CPU(730)는 다양한 타입의 CPU 중 어느 하나일 수 있고, 메모리 장치(100)는 DRAM 또는 리프레쉬를 필요로 하는 다른 타입의 메모리를 포함하는 다양한 타입의 메모리 중 임의의 메모리일 수 있다. 또한, 전자 시스템(700)의 실시예들은 또한 도 10에 도시된 장치들에 한정되지 않으며, 추가 장치들을 포함할 수 있다.
본 발명의 실시예에 따른 메모리 장치(100) 그리고/또는 메모리 컨트롤러(200)는 다양한 형태들의 패키지를 이용하여 실장될 수 있다. 예를 들면, 본 발명의 실시예에 따른 메모리 장치(100) 및/또는 메모리 컨트롤러(200)는 PoP(Package on Package), Ball grid arrays(BGAs), Chip scale packages(CSPs), Plastic Leaded Chip Carrier(PLCC), Plastic Dual In-Line Package(PDIP), Die in Waffle Pack, Die in Wafer Form, Chip On Board(COB), Ceramic Dual In-Line Package(CERDIP), Plastic Metric Quad Flat Pack(MQFP), Small Outline(SOIC), Shrink Small Outline Package(SSOP), Thin Small Outline(TSOP), Thin Quad Flatpack(TQFP), System In Package(SIP), Multi Chip Package(MCP), Wafer-level Fabricated Package(WFP), Wafer-Level Processed Stack Package(WSP) 등과 같은 패키지들을 이용하여 실장될 수 있다.
또한, 메모리 장치(100)와 메모리 컨트롤러(200)는 메모리 카드를 구성할 수 있다. 이러한 경우, 메모리 컨트롤러(200)는 USB(Universal Serial Bus), MMC(multi-media card), PCI-E(peripheral component interconnect - express), SATA(serial ATA), PATA(parallel ATA), SCSI(small computer system interface), ESDI(enhanced small disk interface), 그리고 IDE(Integrated Drive Electronics) 등과 같은 다양한 인터페이스 프로토콜들 중 하나를 통해 외부(예를 들면, 호스트)와 통신하도록 구성될 수 있다.
이상에서는 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
10, 700 : 전자시스템 100 : 메모리 장치
110 : 메모리 셀 어레이 120 : 로우 디코더
130 : 센스 앰프 140 : 컬럼 디코더
150 : 제어 회로 160 : 커맨드 디코더
170 : 어드레스 버퍼 180 : 제1 저장부
182 : 버퍼 200 : 메모리 컨트롤러
210 : 커맨드 발생부 220 : I/O 버퍼
230 : 제어부 240 : 제2 저장부
300 : 메모리 시스템 330 : 오토 리프레쉬 커맨드 발생부
340 : ROR 리프레쉬 커맨드 발생부
350 : 쓰기 커맨드 발생부
110 : 메모리 셀 어레이 120 : 로우 디코더
130 : 센스 앰프 140 : 컬럼 디코더
150 : 제어 회로 160 : 커맨드 디코더
170 : 어드레스 버퍼 180 : 제1 저장부
182 : 버퍼 200 : 메모리 컨트롤러
210 : 커맨드 발생부 220 : I/O 버퍼
230 : 제어부 240 : 제2 저장부
300 : 메모리 시스템 330 : 오토 리프레쉬 커맨드 발생부
340 : ROR 리프레쉬 커맨드 발생부
350 : 쓰기 커맨드 발생부
Claims (11)
- 복수의 메모리 셀과, 상기 복수의 메모리 셀 중 위크 셀의 정보를 저장하는 제1 저장부를 포함하는 메모리 장치; 및
상기 메모리 셀의 동작에 관한 동작 명령 신호를 상기 메모리 장치로 전송하며, 상기 제1 저장부로부터 상기 위크 셀의 정보를 받아, 상기 메모리 장치의 동작을 제어하는 메모리 컨트롤러를 포함하고,
상기 메모리 장치는, 상기 동작 명령 신호가 상기 메모리 컨트롤러로부터
전송되고, 상기 동작 명령 신호에 대응하는 메모리 셀이 상기 위크 셀인 경우, 상기 위크 셀의 정보를 상기 메모리 컨트롤러로 전송하는 메모리 시스템. - 제1항에 있어서, 상기 메모리 시스템은,
상기 메모리 장치와 상기 메모리 컨트롤러 사이에 위치하며, 상기 위크 셀의 정보를 전송하는 전송 라인을 포함하는 메모리 시스템. - 제1항에 있어서, 상기 메모리 장치는,
상기 동작 명령 신호에 대응하는 메모리 셀이 상기 위크 셀인 경우, 플래그 신호를 변경하고, 상기 플래그 신호에 기초하여 상기 위크 셀의 정보를 상기 메모리 컨트롤러로 전송하는 메모리 시스템. - 제1항에 있어서, 상기 메모리 장치는,
상기 메모리 컨트롤러에서 전송한 쓰기 동작 명령에 대응하는 위크 셀이 복수개인 경우, 상기 복수의 위크 셀 중, 데이터 유지시간이 가장 짧은 위크 셀에 관한 정보를 상기 메모리 컨트롤러로 전송하는 메모리 시스템. - 제4항에 있어서, 상기 메모리 장치는,
상기 데이터 유지시간이 가장 짧은 위크 셀에 쓰여진 데이터가 하이(high)인 경우, 상기 데이터 유지시간이 가장 짧은 위크 셀에 관한 정보를 상기 메모리 컨트롤러로 전송하는 메모리 시스템. - 제1항에 있어서, 상기 메모리 장치는,
상기 메모리 컨트롤러에서 전송한 쓰기 동작 명령에 대응하는 위크 셀이 복수개인 경우, 상기 복수의 위크 셀 중, 쓰기 시간이 가장 긴 위크 셀에 관한 정보를 상기 메모리 컨트롤러로 전송하는 메모리 시스템. - 제6항에 있어서, 상기 메모리 장치는,
상기 쓰기 시간이 가장 긴 위크 셀에 쓰여진 데이터가 하이(high)인 경우, 상기 쓰기 시간이 가장 긴 위크 셀에 관한 정보를 상기 메모리 컨트롤러로 전송하는 메모리 시스템. - 제1항에 있어서, 상기 메모리 컨트롤러는,
상기 메모리 장치로부터 전송받은 상기 위크 셀의 정보를 페이지 단위로저장하는 제2 저장부; 및
상기 제2 저장부에 저장된 위크 셀의 정보에 기초하여 메모리 장치의 동작을 제어하는 제어부를 포함하고,
동일한 페이지에 속하는 위크 셀 중 데이터 유지시간이 가장 짧은 위크 셀을 기준으로 상기 제2 저장부에 저장된 상기 위크 셀의 정보를 업데이트 하는 메모리 시스템. - 제8항에 있어서, 상기 메모리 컨트롤러는,
상기 동일한 페이지에 속하는 위크 셀 중 쓰기 시간이 가장 긴 위크 셀을 기준으로 상기 제2 저장부에 저장된 상기 위크 셀의 정보를 업데이트 하는 메모리 시스템. - 제8항에 있어서,
상기 제2 저장부에 저장되는 상기 위크 셀의 정보는 상기 데이터 유지시간, 쓰기 시간, 페이지 어드레스, 및 최종 리드 동작 시간을 포함하며,
상기 메모리 컨트롤러는, 상기 동일한 페이지를 구성하는 위크 셀에 대한최종 리드 동작시간으로부터 소요된 시간이 미리 설정된 시간보다 큰 경우, 해당하는 페이지에 속한 위크 셀의 정보를 무효화하는 메모리 시스템. - 복수의 메모리 셀을 포함하는 메모리 장치를 테스트하여, 제1 저장부에 위크 셀 정보를 테이블 형태로 저장하는 단계;
메모리 컨트롤러에서 동작 명령 신호를 전송하는 단계;
상기 전송된 동작 명령 신호를 상기 메모리 장치에서 수신하여, 상기 동작 명령 신호에 대응하는 메모리 셀이 위크 셀인 경우, 위크 셀 정보를 메모리 컨트롤러로 전송하는 단계;
상기 전송되는 위크 셀 정보 중 데이터 유지시간이 가장 작거나, 쓰기 시간이 가장 긴 정보에 관한 테이블을 생성하여 상기 메모리 컨트롤러에 저장하는 단계; 및
상기 메모리 컨트롤러에 저장된 테이블에 기초하여 상기 메모리 장치의 리프레쉬, 읽기 또는 쓰기 동작을 제어하는 단계를 포함하는 메모리 시스템의 동작 제어 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110136365A KR101893895B1 (ko) | 2011-12-16 | 2011-12-16 | 메모리 시스템 및 그 동작 제어 방법 |
US13/676,610 US8935467B2 (en) | 2011-12-16 | 2012-11-14 | Memory system, and a method of controlling an operation thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110136365A KR101893895B1 (ko) | 2011-12-16 | 2011-12-16 | 메모리 시스템 및 그 동작 제어 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130068915A true KR20130068915A (ko) | 2013-06-26 |
KR101893895B1 KR101893895B1 (ko) | 2018-09-03 |
Family
ID=48611417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110136365A KR101893895B1 (ko) | 2011-12-16 | 2011-12-16 | 메모리 시스템 및 그 동작 제어 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8935467B2 (ko) |
KR (1) | KR101893895B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140123230A (ko) * | 2013-04-12 | 2014-10-22 | 삼성전자주식회사 | 플래시 메모리와 메모리 컨트롤러를 포함하는 데이터 저장 장치 및 그것의 배드 페이지 관리 방법 |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101966858B1 (ko) | 2012-04-24 | 2019-04-08 | 삼성전자주식회사 | 휘발성 메모리 장치의 동작 방법, 휘발성 메모리 장치 및 메모리 시스템의 제어 방법 |
US9368187B2 (en) * | 2013-07-11 | 2016-06-14 | Qualcomm Incorporated | Insertion-override counter to support multiple memory refresh rates |
CN103500131B (zh) * | 2013-09-18 | 2015-09-09 | 华为技术有限公司 | 一种存储系统掉电数据备份方法及存储系统控制器 |
US9465426B2 (en) | 2013-09-18 | 2016-10-11 | Huawei Technologies Co., Ltd. | Method for backing up data in a case of power failure of storage system, and storage system controller |
KR20160056056A (ko) | 2014-11-11 | 2016-05-19 | 삼성전자주식회사 | 반도체 메모리 장치 및 이를 포함하는 메모리 시스템 |
KR102252376B1 (ko) | 2014-12-08 | 2021-05-14 | 삼성전자주식회사 | 셀 특성 플래그를 이용하여 리프레쉬 동작을 제어하는 메모리 장치 |
KR20160069213A (ko) * | 2014-12-08 | 2016-06-16 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 |
KR20170118484A (ko) | 2016-04-15 | 2017-10-25 | 에스케이하이닉스 주식회사 | 리프레쉬 제어 장치 |
KR102517700B1 (ko) * | 2016-06-10 | 2023-04-05 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 및 그의 동작 방법 |
JP2018156715A (ja) * | 2017-03-21 | 2018-10-04 | 東芝メモリ株式会社 | 半導体記憶装置 |
TWI796924B (zh) * | 2022-01-05 | 2023-03-21 | 華邦電子股份有限公司 | 記憶體裝置 |
US12045509B2 (en) | 2022-06-17 | 2024-07-23 | SanDisk Technologies, Inc. | Data storage device with weak bits handling |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090161459A1 (en) * | 2007-12-20 | 2009-06-25 | Agere Systems Inc. | Dynamic Random Access Memory With Low-Power Refresh |
KR20120120769A (ko) * | 2011-04-25 | 2012-11-02 | 에스케이하이닉스 주식회사 | 메모리와 메모리 콘트롤러를 포함하는 메모리 시스템, 및 이의 동작방법 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0675502B1 (en) * | 1989-04-13 | 2005-05-25 | SanDisk Corporation | Multiple sector erase flash EEPROM system |
US5644545A (en) | 1996-02-14 | 1997-07-01 | United Memories, Inc. | Bimodal refresh circuit and method for using same to reduce standby current and enhance yields of dynamic memory products |
US7099221B2 (en) | 2004-05-06 | 2006-08-29 | Micron Technology, Inc. | Memory controller method and system compensating for memory cell data losses |
US8060774B2 (en) * | 2005-06-24 | 2011-11-15 | Google Inc. | Memory systems and memory modules |
US7478285B2 (en) | 2005-12-30 | 2009-01-13 | Silicon Graphics, Inc. | Generation and use of system level defect tables for main memory |
US8171380B2 (en) * | 2006-10-10 | 2012-05-01 | Marvell World Trade Ltd. | Adaptive systems and methods for storing and retrieving data to and from memory cells |
US7872929B2 (en) | 2009-04-28 | 2011-01-18 | Lsi Corporation | Accessing memory cells in a memory circuit |
US8711647B2 (en) * | 2011-05-09 | 2014-04-29 | Inphi Corporation | DRAM refresh method and system |
KR101879442B1 (ko) * | 2011-05-25 | 2018-07-18 | 삼성전자주식회사 | 휘발성 메모리 장치의 리프레쉬 방법, 리프레쉬 어드레스 생성기 및 휘발성 메모리 장치 |
-
2011
- 2011-12-16 KR KR1020110136365A patent/KR101893895B1/ko active IP Right Grant
-
2012
- 2012-11-14 US US13/676,610 patent/US8935467B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090161459A1 (en) * | 2007-12-20 | 2009-06-25 | Agere Systems Inc. | Dynamic Random Access Memory With Low-Power Refresh |
KR20120120769A (ko) * | 2011-04-25 | 2012-11-02 | 에스케이하이닉스 주식회사 | 메모리와 메모리 콘트롤러를 포함하는 메모리 시스템, 및 이의 동작방법 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140123230A (ko) * | 2013-04-12 | 2014-10-22 | 삼성전자주식회사 | 플래시 메모리와 메모리 컨트롤러를 포함하는 데이터 저장 장치 및 그것의 배드 페이지 관리 방법 |
Also Published As
Publication number | Publication date |
---|---|
US8935467B2 (en) | 2015-01-13 |
KR101893895B1 (ko) | 2018-09-03 |
US20130159617A1 (en) | 2013-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101893895B1 (ko) | 메모리 시스템 및 그 동작 제어 방법 | |
US20130329491A1 (en) | Hybrid Memory Module | |
CN105808455B (zh) | 访问内存的方法、存储级内存及计算机系统 | |
US11669451B2 (en) | Multi-plane switching of non-volatile memory | |
KR20210061174A (ko) | 메모리 컨트롤러 및 그 동작 방법 | |
US11699491B2 (en) | Double interleaved programming of a memory device in a memory sub-system | |
US20240311307A1 (en) | Concurrent page cache resource access in a multi-plane memory device | |
US20230176972A1 (en) | Memory performance during program suspend protocol | |
US20240231675A1 (en) | Status polling based on die-generated pulsed signal | |
US20220147274A1 (en) | Storage device and operating method thereof | |
US11645008B2 (en) | Memory system and operating method thereof for controlling a multi-plane read operation | |
KR20220085708A (ko) | 고체 상태 드라이브 내의 영구적 메모리 내의 논리 대 물리 어드레스 인디렉션 테이블 | |
KR101861647B1 (ko) | 메모리 시스템 및 그 리프레시 제어 방법 | |
US20230367723A1 (en) | Data burst queue management | |
US11862257B2 (en) | Managing programming convergence associated with memory cells of a memory sub-system | |
US11664079B2 (en) | Intervallic dynamic start voltage and program verify sampling in a memory sub-system | |
US20230393748A1 (en) | Memory system refresh management | |
KR102695482B1 (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
US9424922B2 (en) | Semiconductor memory device, operating method thereof, and data storage device including the same | |
US11636893B2 (en) | Memory device with multiple row buffers | |
US11636904B2 (en) | Almost ready memory management | |
US11842078B2 (en) | Asynchronous interrupt event handling in multi-plane memory devices | |
US11756612B2 (en) | All levels dynamic start voltage programming of a memory device in a memory sub-system | |
US20230359398A1 (en) | Enabling multiple data capacity modes at a memory sub-system | |
KR20120049031A (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 |