KR20120136674A - 에러 정정회로를 구비한 온 칩 데이터 스크러빙 장치 및 방법 - Google Patents

에러 정정회로를 구비한 온 칩 데이터 스크러빙 장치 및 방법 Download PDF

Info

Publication number
KR20120136674A
KR20120136674A KR1020110055744A KR20110055744A KR20120136674A KR 20120136674 A KR20120136674 A KR 20120136674A KR 1020110055744 A KR1020110055744 A KR 1020110055744A KR 20110055744 A KR20110055744 A KR 20110055744A KR 20120136674 A KR20120136674 A KR 20120136674A
Authority
KR
South Korea
Prior art keywords
command
error
page
refresh
scrubbing
Prior art date
Application number
KR1020110055744A
Other languages
English (en)
Other versions
KR101873526B1 (ko
Inventor
강욱성
유학수
박철우
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020110055744A priority Critical patent/KR101873526B1/ko
Priority to US13/241,205 priority patent/US9053813B2/en
Priority to TW101107250A priority patent/TWI579844B/zh
Priority to DE201210207562 priority patent/DE102012207562A1/de
Priority to JP2012131050A priority patent/JP6291157B2/ja
Priority to CN2012101878137A priority patent/CN102820049A/zh
Publication of KR20120136674A publication Critical patent/KR20120136674A/ko
Priority to US14/699,201 priority patent/US9600362B2/en
Application granted granted Critical
Publication of KR101873526B1 publication Critical patent/KR101873526B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital 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/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40611External triggering or timing of internal or partially internal refresh operations, e.g. auto-refresh or CAS-before-RAS triggered refresh
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • G06F11/106Correcting systematically all correctable errors, i.e. scrubbing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital 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/406Management or control of the refreshing or charge-regeneration cycles
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital 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/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40618Refresh operations over multiple banks or interleaving
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital 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/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40622Partial refresh of memory arrays
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0409Online test
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0411Online error correction

Abstract

반도체 메모리 장치의 칩 내부에서 데이터 스크러빙을 수행하는 에러 정정회로를 구비한 온 칩 데이터 스크러빙 장치 및 방법이 개시된다. 본 발명의 실시예에 따른 반도체 메모리 장치의 동작방법은, 콘트롤러로부터 제1 커맨드를 수신하는 단계와, 상기 제1 커맨드에 응답하여 메모리 어레이의 페이지를 활성화하는 단계와, 상기 활성화된 페이지의 적어도 하나의 서브 페이지를 선택하는 단계와, 상기 선택된 서브 페이지로부터 리드된 데이터에 대해 에러를 검출하는 단계와, 에러 정정된 데이터를 상기 서브 페이지에 재기록하는 단계를 구비하는 것을 특징으로 한다.

Description

에러 정정회로를 구비한 온 칩 데이터 스크러빙 장치 및 방법{On-chip data scrubbing method and apparatus with ECC}
본 발명은 에러 정정회로를 구비한 온 칩 데이터 스크러빙 장치 및 방법에 관한 것으로서, 자세하게는 반도체 메모리 장치의 칩 내부에서 데이터 스크러빙을 수행하는 에러 정정회로를 구비한 온 칩 데이터 스크러빙 장치 및 방법에 관한 것이다.
고성능 전자 시스템에 널리 사용되고 있는 반도체 메모리 장치는 그 용량 및 속도가 모두 증가하고 있다. 반도체 메모리 장치의 일예로서 DRAM은 휘발성 메모리(volatile-memory)로서, 커패시터에 저장되어 있는 전하(charge)에 의해 데이터를 판정하는 메모리이다. 커패시터에 저장된 전하는 시간이 지나면 다양한 형태로 누설(leakage)될 수 있으므로, 커패시터에 저장된 데이터가 소멸되는 것을 방지하기 위하여 데이터를 재충전하는 리프레쉬(refresh) 동작이 요구된다.
반도체 메모리 장치가 노트북 컴퓨터, 휴대폰 등 모바일 장치에 널리 이용됨에 따라 반도체 메모리 장치의 전력 소모를 감소시킬 필요성이 존재한다. 그러나, DRAM과 같은 동적 메모리 장치의 경우 리프레쉬 동작을 수행하기 때문에 대기전력 소모가 증가하는 문제가 발생한다. 또한 DRAM이 고집적화됨에 따라 커패시터의 커패시턴스 값이 감소하게 되므로, 싱글 비트(single bit) 이상의 에러들이 발생하여 데이터의 신뢰성을 저하시키는 문제가 발생한다.
본 발명은 상기와 같은 문제점을 해결하기 위한 것으로서, 오토 리프레쉬에 소모되는 전력을 감소한 에러 정정회로를 구비하는 온 칩 데이터 스크러빙 장치 및 방법을 제공하는 것을 목적으로 한다.
본 발명의 다른 목적은, 싱글 비트(single bit) 이상의 에러의 축적을 방지하고 데이터의 신뢰성을 향상시킨 에러 정정회로를 구비하는 온 칩 데이터 스크러빙 장치 및 방법을 제공하는 것을 목적으로 한다.
상기와 같은 목적을 달성하기 위하여, 본 발명의 일실시예에 따른 반도체 메모리 장치의 동작방법은, 콘트롤러로부터 제1 커맨드를 수신하는 단계와, 상기 제1 커맨드에 응답하여 메모리 어레이의 페이지를 활성화하는 단계와, 상기 활성화된 페이지의 적어도 하나의 서브 페이지를 선택하는 단계와, 상기 선택된 서브 페이지로부터 리드된 데이터에 대해 에러를 검출하는 단계와, 에러 정정된 데이터를 상기 서브 페이지에 재기록하는 단계를 구비하는 것을 특징으로 한다.
한편, 본 발명의 일실시예에 따른 반도체 메모리 장치는, 다수의 페이지를 포함하는 뱅크를 구비하고, 각각의 페이지는 다수의 서브 페이지들을 포함하는 메모리 어레이와, 외부로부터의 커맨드를 디코딩하여 내부 제어신호를 생성하는 커맨드 디코더와, 상기 메모리 어레이의 리드 데이터에 대한 에러 검출 및 정정 동작을 수행하는 에러 정정회로 및 외부로부터의 제1 커맨드에 응답하여, 상기 메모리 어레이의 페이지를 활성화하고 상기 활성화된 페이지의 적어도 하나의 서브 페이지를 선택하며 상기 선택된 서브 페이지의 에러 검출 결과에 따라 에러 정정된 데이터를 상기 서브 페이지에 재기록하도록 제어하는 스크러빙 리프레쉬 관리부를 구비하는 것을 특징으로 한다.
한편, 본 발명의 다른 실시예에 따른 반도체 메모리 장치는, 메모리 어레이와, 외부로부터의 커맨드를 디코딩하여 내부 제어신호를 생성하는 커맨드 디코더와, 상기 메모리 어레이의 리드 데이터에 대한 에러 검출 및 정정 동작을 수행하는 에러 정정회로 및 상기 에러 검출 결과를 수신하고, 상기 메모리 어레이의 동일 위치의 데이터에 대해 적어도 2 회 이상 에러가 발생하였지를 판단하여 상기 메모리 어레이에 대한 하드 페일(hard-fail)의 존재 여부를 검출하는 하드 페일 검출부를 구비하는 것을 특징으로 한다.
한편, 본 발명의 다른 실시예에 따른 반도체 메모리 장치의 동작방법은, 외부의 콘트롤러로부터 제1 커맨드를 수신하는 단계와, 상기 제1 커맨드에 응답하여 메모리 어레이의 데이터를 리드하는 단계와, 상기 리드된 데이터에 대해 에러를 1차 검출하는 단계와, 상기 1차 검출 단계에서 에러가 검출된 경우, 상기 에러가 검출된 위치의 데이터에 대해 에러를 2차 검출하는 단계 및 상기 2차 검출 단계에서 에러가 재검출된 경우, 상기 외부의 콘트롤러에 홀드 명령을 제공하고, 상기 에러가 재검출된 영역을 리페어하는 단계를 구비하는 것을 특징으로 한다.
한편, 본 발명의 일실시예에 따른 메모리 모듈은, 모듈 보드 및 상기 모듈 보드 상에 장착되는 하나 이상의 제1 메모리 칩을 구비하고, 상기 제1 메모리 칩은, 다수의 페이지를 포함하는 뱅크를 구비하고, 각각의 페이지는 다수의 서브 페이지들을 포함하는 메모리 어레이와, 외부의 콘트롤러로부터의 커맨드를 디코딩하여 내부 제어신호를 생성하는 커맨드 디코더와, 상기 메모리 어레이의 리드 데이터에 대한 에러 검출 및 정정 동작을 수행하는 에러 정정회로 및 상기 콘트롤러로부터의 제1 커맨드에 응답하여, 상기 메모리 어레이의 페이지를 활성화하고 상기 활성화된 페이지의 적어도 하나의 서브 페이지를 선택하며 상기 선택된 서브 페이지의 에러 검출 결과에 따라 에러 정정된 데이터를 상기 서브 페이지에 재기록하도록 제어하는 스크러빙 리프레쉬 관리부를 구비하는 것을 특징으로 한다.
한편, 본 발명의 일실시예에 따른 메모리 모듈의 동작방법은, 메모리 칩 별로 테스트를 수행하여 오토 리프레쉬 주기를 설정하는 단계와, 상기 오토 리프레쉬 주기 정보를 불휘발성 형태로 저장하는 단계와, 상기 메모리 모듈이 초기 구동될 때 상기 오토 리프레쉬 주기 정보를 외부의 콘트롤러로 제공하는 단계와, 상기 오토 리프레쉬 주기 정보에 대응하는 주기마다 상기 외부의 콘트롤러로부터 오토 리프레쉬 커맨드를 수신하는 단계와, 오토 리프레쉬를 수행하는 단계와, 외부의 콘트롤러로부터의 리드 커맨드에 응답하여 데이터 리드 동작을 수행하는 단계 및 상기 리드된 데이터에 대한 에러 검출 및 정정 동작을 수행하는 단계를 구비하는 것을 특징으로 한다.
한편, 본 발명의 일실시예에 따른 메모리 시스템은, 콘트롤러 및 하나 이상의 반도체 메모리 장치를 구비하고, 상기 반도체 메모리 장치는, 다수의 페이지를 포함하는 뱅크를 구비하고, 각각의 페이지는 다수의 서브 페이지들을 포함하는 메모리 어레이와, 상기 콘트롤러로부터의 커맨드를 디코딩하여 내부 제어신호를 생성하는 커맨드 디코더와, 상기 메모리 어레이의 리드 데이터에 대한 에러 검출 및 정정 동작을 수행하는 에러 정정회로 및 상기 콘트롤러로부터의 제1 커맨드에 응답하여, 상기 메모리 어레이의 페이지를 활성화하고 상기 활성화된 페이지의 적어도 하나의 서브 페이지를 선택하며 상기 선택된 서브 페이지의 에러 검출 결과에 따라 에러 정정된 데이터를 상기 서브 페이지에 재기록하도록 제어하는 스크러빙 리프레쉬 관리부를 구비하는 것을 특징으로 한다.
상기와 같은 본 발명의 에러 정정회로를 구비하는 온 칩 데이터 스크러빙 장치 및 방법에 따르면, 오토 리프레쉬 주기를 증가함에 의하여 오토 리프레쉬 동작시 소모되는 전력을 감소함과 함께 오토 리프레쉬 주기 증가에 따른 비트 에러의 발생을 방지할 수 있는 효과가 있다. 또한, 스크러빙 리프레쉬 동작에 의하여 싱글 비트(single bit) 이상의 에러의 축적을 방지하고, 에러 통계를 모니터링함에 따라 하드 페일 검출 및 리페어 동작을 수행함으로써 데이터의 신뢰성을 향상시킬 수 있는 효과가 있다.
도 1은 본 발명이 적용되는 반도체 메모리 장치, 메모리 모듈 및 메모리 시스템을 나타내는 블록도이다.
도 2a,b는 도 1의 DRAM 칩의 일 구현예를 나타내는 블록도 및 오토 리프레쉬 주기를 증가시키는 일예를 나타내는 도면이다.
도 3은 오토 리프레쉬 주기정보를 DRAM 칩 내에 저장한 일예를 나타내는 메모리 시스템의 블록도이다.
도 4는 오토 리프레쉬 주기정보를 메모리 모듈의 SPD에 저장한 일예를 나타내는 메모리 시스템의 블록도이다.
도 5는 본 발명의 일실시예에 따른 반도체 메모리 장치의 동작방법을 나타내는 플로우차트이다.
도 6은 본 발명의 다른 실시예에 따른 반도체 메모리 장치를 나타내는 블록도이다.
도 7은 스크러빙 리프레쉬 동작의 일예를 나타내는 도면이다.
도 8a,b는 도 6의 스크러빙 리프레쉬 관리부의 일 구현예를 나타내는 블록도이다.
도 9a,b는 신규 커맨드에 의해 스크러빙 리프레쉬가 수행되는 예를 나타내는 도면이다.
도 10은 도 9a의 반도체 메모리 장치의 동작방법을 나타내는 플로우차트이다.
도 11은 리프레쉬 커맨드에 의해 스크러빙 리프레쉬가 수행되는 예를 나타내는 도면이다.
도 12는 도 11a의 반도체 메모리 장치의 동작방법을 나타내는 플로우차트이다.
도 13a,b는 본 발명의 다른 실시예에 따른 메모리 시스템을 나타내는 블록도이다.
도 14a,b는 본 발명의 또 다른 실시예에 따른 메모리 시스템을 나타내는 블록도이다.
도 15는 본 발명의 다른 실시예에 따른 메모리 시스템의 동작방법을 나타내는 플로우차트이다.
도 16은 도 15의 메모리 시스템의 동작방법에 적용되는 DRAM 칩의 일 구현예를 나타내는 블록도이다.
도 17은 도 15의 메모리 시스템의 동작방법에 적용되는 DRAM 칩의 다른 구현예를 나타내는 블록도이다.
도 18은 본 발명의 실시예가 적용되는 메모리 시스템의 일예를 나타내는 블록도이다.
도 19는 본 발명의 실시예가 적용되는 메모리 시스템의 다른 예를 나타내는 블록도이다.
도 20은 본 발명의 일실시예에 따른 메모리 시스템이 장착된 컴퓨팅 시스템을 나타내는 블록도이다.
이하에서는 본 발명의 바람직한 실시예가, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 본 발명의 철저한 이해를 제공할 의도 외에는 다른 의도 없이, 첨부한 도면들을 참조로 하여 상세히 설명될 것이다.
반도체 메모리 장치로서 DRAM(Dynamic Randon Access Memory)은 유한 데이터 보유(Finite Data Retention) 특성을 가지므로, 정상적인 셀의 경우도 스펙(Spec)에서 정한 시간이 지나면 그 데이터의 유효성이 보장될 수 없다. 이에 대응하기 위한 정책의 일예로서, 리프레쉬 정책은, 스펙(Spec) 값이 64ms인 경우 상기 스펙(Spec) 값으로 설정되는 리프레쉬 주기마다 DRAM 셀에 저장된 데이터를 리프레쉬한다.
DRAM 셀이 점차 작아짐에 따라 데이터 보유 특성이 저하되므로 스펙(Spec) 값은 더 작은 값으로 수정될 가능성이 있으며, 이 경우 리프레쉬를 더 자주 수행하게 되므로 전력 소모가 증가된다. 또한, DRAM 셀이 점차 작아짐에 따라 싱글 비트(single bit) 이상의 에러들이 발생하여 에러 정정 회로(ECC)에 의해 에러가 정정되지 않거나, 물리적인 에러(예컨대, 하드 페일(hard fail))가 발생할 확률이 증가한다.
이하의 본 발명의 실시예에서는, 전력 소모를 감소함과 함께 에러의 축적을 방지하여 데이터의 신뢰성을 향상할 수 있는 반도체 메모리 장치 및 이를 포함하는 메모리 모듈, 메모리 시스템이 개시된다.
도 1은 본 발명이 적용되는 반도체 메모리 장치, 메모리 모듈 및 메모리 시스템을 나타내는 블록도이다. 도 1에 도시된 바와 같이, 본 발명의 일실시예에 따른 메모리 시스템(100)은 메모리 모듈(1000)과 메모리 콘트롤러(2000)를 포함한다. 또한, 메모리 모듈(1000)은 모듈 보드(Module board) 상에 장착된 하나 이상의 반도체 메모리 장치(1100)를 구비하며, 예컨대 상기 반도체 메모리 장치(1100)는 DRAM 칩일 수 있다. DRAM 칩은 DRAM 셀이 어레이 형태로 배치되는 메모리 어레이를 포함한다. 이하의 설명에서는, 반도체 메모리 장치(1100)가 DRAM 칩인 것으로 가정한다.
메모리 콘트롤러(2000)는 메모리 모듈(1000)에 구비되는 반도체 메모리 장치(1100)를 제어하기 위한 각종 신호들, 예컨대 커맨드/어드레스(CMD/ADD), 클록 신호(CLK)를 제공하고, 메모리 모듈(1000)와 통신하여 데이터(DQ)를 메모리 모듈(1000)로 제공하거나 데이터(DQ)를 메모리 모듈(1000)로부터 수신한다. DRAM 칩(1100)은 메모리 어레이를 포함하며, 메모리 어레이는 다수 개의 뱅크(Bank)를 포함할 수 있다. 또한 각각의 뱅크는 다수 개의 페이지(Page)를 포함할 수 있다. 페이지는 한 번의 RAS Active 명령이 인가되었을 때 뱅크로부터 비트라인 센스앰프로 이동되는 데이터 블록을 나타내며, 각각의 페이지는 다수의 영역(이하, 서브 페이지로 지칭함)으로 구분될 수 있다.
도 2a,b는 도 1의 DRAM 칩의 일 구현예를 나타내는 블록도 및 오토 리프레쉬 주기를 증가시키는 일예를 나타내는 도면이다. 도 2a에 도시된 바와 같이, DRAM 칩(1100)은 다수의 DRAM 셀을 포함하는 메모리 어레이(1110), 로우 디코더(1121), 드라이버/센스앰프(1122) 및 칼럼 디코더(1123)를 포함한다. 또한, 데이터의 입출력과 관련하여, DRAM 칩(1100)은 에러 정정 회로(1170) 및 리드/라이트 데이터 경로부(1181, 1182)를 포함한다. 또한, 메모리 어레이(1110)의 구동을 위한 주변 회로로서, DRAM 칩(1100)은 커맨드 디코더(1130), 리프레쉬 제어회로(1140), 내부 어드레스 발생부(1151) 및 어드레스 버퍼부(1152)를 구비할 수 있으며, 또한 리프레쉬의 주기 정보(예컨대, 오토 리프레쉬 주기정보, Cycle Info)를 불휘발성 형태로 저장하는 주기정보 저장부(1160)를 구비할 수 있다.
커맨드 디코더(1130)는 외부로부터 입력되는 커맨드(CMD)를 디코딩하여 DRAM 칩(1100)을 구동하기 위한 하나 이상의 내부 제어신호를 발생한다. 또한, 외부의 어드레스(ADDR)는 어드레스 버퍼부(1152)로 제공되며, 로우를 선택하기 위한 로우 어드레스(ADD_R)와 칼럼을 선택하기 위한 칼럼 어드레스(ADD_C)는 각각 로우 디코더(1121) 및 칼럼 디코더(1123)로 제공된다. 한편, 커맨드 디코더(1130)의 디코딩 결과에 따라 DRAM 칩(1100)은 오토 리프레쉬 모드나 셀프 리프레쉬 모드로 진입할 수 있으며, 리프레쉬 제어회로(1140)는 커맨드 디코더(1130)의 디코딩 결과에 응답하여 리프레쉬 신호(REF_S)를 발생한다. 또한, 내부 어드레스 발생부(1151)는 상기 리프레쉬 신호(REF_S)에 응답하여 리프레쉬가 수행될 페이지(Page)를 선택하기 위한 내부 어드레스(ADI)를 발생하고 이를 어드레스 버퍼부(1152)로 제공한다. 어드레스 버퍼부(1152)는 그 내부에 스위치(미도시)를 구비할 수 있으며, 리드/라이트 동작시에는 외부의 어드레스(ADDR)를 선택적으로 출력하고 오토 리프레쉬 모드나 셀프 리프레쉬 모드로 진입시에는 내부 어드레스(ADI)를 선택적으로 출력한다.
오토 리프레쉬 동작시 DRAM 칩(1100)에서 소모되는 전력을 감소하기 위하여 오토 리프레쉬 주기를 증가시킨다. 이를 위하여, DRAM 칩(1100)의 테스트 모드에서 오토 리프레쉬 주기를 조절하여 테스트를 수행하고, 에러 정정이 가능한 비트 에러가 발생할 때까지 오토 리프레쉬 주기를 증가시킨다. 에러 정정회로(1170)가 싱글 비트 에러를 정정 가능한 헤밍 코드(Hamming code)를 이용하는 경우, 싱글 비트 에러가 발생하는 수준까지 오토 리프레쉬 주기를 증가시키고, 해당 오토 리프레쉬 주기 정보를 주기정보 저장부(1160)에 저장한다. 데이터 리드시, 메모리 어레이(1110)에서 리드된 데이터는 에러 정정회로(1170)로 제공되고, 에러가 발생된 비트가 정정되어 출력된다.
주기정보 저장부(1160)에 저장된 오토 리프레쉬 주기 정보는 DRAM 칩(1100) 구동시 외부의 콘트롤러(미도시)로 제공된다. 외부의 콘트롤러는 오토 리프레쉬 주기 정보를 참조하고, 상기 정보에 대응하는 주기로서 오토 리프레쉬 커맨드를 DRAM 칩(1100)으로 제공한다. 리프레쉬 제어부(1140)는, 주기정보 저장부(1160)에 저장된 정보에 관계된 오토 리프레쉬 커맨드에 응답하여 오토 리프레쉬를 수행한다. 전술한 바와 같이, 수신되는 오토 리프레쉬 커맨드의 주기는 싱글 비트 에러를 발생시키는 수준까지 증대되며, 메모리 어레이(1110)에서 리드된 데이터에 에러가 발생하는 경우, 에러 정정회로(1170)는 에러를 검출 및 정정하고 리드 데이터 출력경로(1182)를 통해 에러 정정된 데이터를 외부로 제공한다.
오토 리프레쉬 주기를 증가시키기 위한 방편으로서, 도 2a에서는 DRAM 칩(1100) 내에 오토 리프레쉬 주기 정보를 불휘발성 형태로 저장하고, DRAM 칩(1100) 구동시 오토 리프레쉬 주기 정보를 외부의 콘트롤러로 제공하는 예가 설명되었다. 이러한 경우에는 콘트롤러 측면에서 기존 대비 변경 사항이 발생하게 된다. 반면에, 도 2b는 콘트롤러의 측면에서는 기존 대비 변경사항 없이 DRAM 칩(1100) 내에서 히든(hidden) 방식으로 오토 리프레쉬 주기를 증가시키는 일예를 나타낸다.
예컨대, DRAM 칩(1100)에서 64ms마다 모든 뱅크의 페이지들을 리프레쉬하도록 스펙으로 정의된 경우, 리프레쉬 커맨드가 수신될 때마다 모든 뱅크 내에서 특정 워드라인에 연결된 페이지가 동시에 리프레쉬되고, 내부 카운터에 의하여 리프레쉬 되는 페이지를 순차적으로 하나씩 증가시킨다. 도 2b에 도시된 히든 방식의 경우, 외부 콘트롤러는 기존 대비 변경사항 없이 64ms의 스펙을 만족하도록 리프레쉬 커맨드를 제공하며, DRAM 칩(1100)은 리프레쉬 커맨드를 수신할 때마다 일부의 뱅크만을 리프레쉬되도록 함으로써 DRAM 칩(1100) 내부적으로 오토 리프레쉬 주기가 증가하는 효과를 갖도록 한다. 도 2b의 경우 오토 리프레쉬 주기를 2 배 증가시키는 예를 나타내며, 도 2b에 도시된 바와 같이 하나의 리프레쉬 주기 동안 일부의 뱅크들(뱅크 A, B)의 페이지를 활성화하여 리프레쉬를 수행하고, 다음의 리프레쉬 주기 동안 나머지 뱅크들(뱅크 C, D)의 페이지를 활성화하여 리프레쉬를 수행한다. 이에 따라, 상기 스펙의 두 배의 주기(128ms) 동안 전체 뱅크들(뱅크 A, B, C, D)이 리프레쉬 된다. 리프레쉬 커맨드에 응답하여 선택되는 뱅크들의 수를 조절함으로써 오토 리프레쉬 주기를 다르게 조절할 수 있다.
도 3은 오토 리프레쉬 주기정보를 DRAM 칩 내에 저장한 일예를 나타내는 메모리 시스템의 블록도이다. 도 3에 도시된 바와 같이, DRAM 칩의 테스트 단계에서 설정된 오토 리프레쉬 주기정보(Cycle Info)가 DRAM 칩(1100) 내에 불휘발성 형태로 저장될 수 있다. 주기정보 저장부(1160)는 불휘발성 메모리나, 안티퓨즈(anti-fuse) 또는 전기적 퓨즈(e-fuse) 등의 형태 중 어느 하나로 구현될 수 있으며, 도 3에서는 그 일예로서 주기정보 저장부(1160)가 전기적 퓨즈(e-fuse)로 구현된다. 메모리 시스템(100)의 초기 동작시, 메모리 모듈(1000)에 장착된 DRAM 칩(1100) 내의 주기정보 저장부(1160)에 저장된 오토 리프레쉬 주기정보(Cycle Info)는 메모리 콘트롤러(2000)로 제공된다. 메모리 콘트롤러(2000)는 상기 오토 리프레쉬 주기정보(Cycle Info)를 참조하여 소정의 주기로서 오토 리프레쉬 커맨드(CMD_ref)를 발생하고 이를 메모리 모듈(1000)로 제공한다.
전술한 바와 같이, 메모리 콘트롤러(2000)로 제공되는 오토 리프레쉬 커맨드(CMD_ref)의 주기는 DRAM 칩(1100) 내의 주기정보 저장부(1160)에 저장된 정보에 대응하는 값을 가지며, 또한 DRAM 칩(1100)의 데이터에 발생한 에러가 에러 정정회로(미도시)에 의해 정정 가능한 한도에서 오토 리프레쉬의 주기가 증가된다. 이에 따라, 오토 리프레쉬 동작에 따른 전력 소모를 감소시킴과 동시에, 리프레쉬 주기 증가에 따라 발생한 에러가 DRAM 칩(1100) 내에서 정정되도록 한다.
도 4는 오토 리프레쉬 주기정보를 메모리 모듈의 SPD에 저장한 일예를 나타내는 메모리 시스템의 블록도이다. 메모리 모듈(1000)이 서버(server)용 모듈인 RDIMM(Registered Dual in-line memory module) 등의 형태를 갖는 경우, 메모리 모듈(1000)에는 해당 모듈 정보 및/또는 DRAM 칩(1100)의 정보를 불휘발성 형태로 저장하는 SPD(Serial-presence detect, 1300)가 장착될 수 있다. SPD(1300)는 불휘발성 메모리(일예로서, EEPROM)를 구비할 수 있으며, DRAM 칩(1100)에 대한 각종 정보(예컨대, 로우 및 칼럼 어드레스의 개수, 데이터 폭(width), 랭크의 수, 랭크당 메모리 밀도, 메모리 장치의 개수 및 메모리 장치당 메모리 밀도 등)나, DRAM 칩(1100)의 테스트 단계에서 설정된 오토 리프레쉬 주기정보(Cycle Info) 등을 저장한다. 메모리 시스템(100)의 초기 동작시 SPD(1300)에 저장된 오토 리프레쉬 주기정보(Cycle Info)가 메모리 콘트롤러(2000)로 제공되며, 또한, 메모리 콘트롤러(2000)는 상기 오토 리프레쉬 주기정보(Cycle Info)를 참조하여 소정의 주기로서 오토 리프레쉬 커맨드(CMD_ref)를 발생하고 이를 메모리 모듈(1000)로 제공한다.
한편, 앞선 도면들에는 도시되지 않았으나, DRAM 칩 별로 구분하여 오토 리프레쉬 주기를 설정하는 것이 아니라, 다수의 DRAM 칩에 대해 증대된 주기를 일괄적으로 정의하고 테스트 모드시 에러의 발생을 스크린할 수 있다. 테스트 모드시, 일괄적으로 정의된 주기에 따라 오토 리프레쉬 동작을 수행하고, 이에 따른 에러의 발생을 스크린함에 의하여 소정의 조건을 만족하지 못하는 칩을 페일 칩(fail chip)으로 판별한다. 일괄적으로 정의된 오토 리프레쉬 주기정보를 DRAM 칩 내에 저장하거나 SPD에 저장하며, 또한 해당 메모리 모듈의 오토 리프레쉬 주기정보가 스펙으로 정의된 값임을 나타내는 정보를 DRAM 칩 내 또는 SPD에 더 저장할 수 있다.
도 5는 본 발명의 일실시예에 따른 반도체 메모리 장치의 동작방법을 나타내는 플로우차트이다.
도 5에 도시된 바와 같이, 메모리 칩(예컨대, DRAM 칩) 별로 테스트를 수행하며(S11), 테스트 수행 결과에 따라 오토 리프레쉬 주기를 설정한다(S12). 또한, 설정된 오토 리프레쉬 주기정보를 DRAM 칩 내에 또는 메모리 모듈의 SPD에 불휘발성 형태로 저장한다(S13). 도 5에는 도시되지 않았으나, 전술한 바와 같이 테스트 동작에 있어서 다수의 DRAM 칩에 대해 오토 리프레쉬 주기를 일괄적으로 스펙으로 정의하고, 테스트 결과 해당 스펙을 만족하지 못하는 DRAM 칩을 페일(fail) 처리할 수도 있다. 또한, 오토 리프레쉬 주기를 설정함에 있어서, DRAM 칩 내에 구비되는 에러 정정회로에 의해 에러가 정정 가능한 수준까지 오토 리프레쉬 주기를 증가하여 설정할 수 있다.
이후, DRAM 칩이 초기 구동되며(S14), 불휘발성 형태로 저장된 오토 리프레쉬 주기정보가 외부의 콘트롤러로 제공된다(S15). 외부의 콘트롤러는 수신된 오토 리프레쉬 주기정보를 참조하여 이에 관계된 주기를 갖는 오토 리프레쉬 커맨드를 발생하며, DRAM 칩은 상기 오토 리프레쉬 주기정보와 관계된 주기를 갖는 오토 리프레쉬 커맨드를 수신한다(S16).
DRAM 칩은 수신된 오토 리프레쉬 커맨드에 응답하여 오토 리프레쉬 동작을 수행하며(S17), 이후 외부로부터 리드 커맨드가 수신되는 경우 이에 응답하여 리드 동작을 수행한다(S18). 또한 리드된 데이터에 대하여 에러 검출 및 정정 동작이 수행되며, 에러 정정된 데이터는 외부로 출력된다(S19).
도 6은 본 발명의 다른 실시예에 따른 반도체 메모리 장치를 나타내는 블록도이다. 도 6에서는 반도체 메모리 장치로서 DRAM 칩이 도시되어 있으며, 본 실시예는 이외에도 도 6의 DRAM 칩을 포함하는 메모리 모듈 및 메모리 시스템에 모두 적용될 수 있다.
도 6에 도시된 바와 같이, DRAM 칩(3000)은 다수의 DRAM 셀을 포함하는 메모리 어레이(3100), 로우 디코더(3210), 칼럼 디코더(3220), 드라이버/센스앰프(3230), 커맨드 디코더(3300), 어드레스 버퍼(3400), 에러 정정회로(3500) 및 리드/라이트 데이터 경로부(3610, 3620)를 포함한다. 또한, 본 실시예에 따른 스크러빙 리프레쉬 동작과 관련하여, DRAM 칩(3000)은 스크러빙 리프레쉬 동작을 관리하는 스크러빙 리프레쉬 관리부(3700)를 포함하며, 스크러빙 리프레쉬 관리부(3700)는 적어도 하나의 카운터, 예컨대 로우 카운터(3710)와 페이지 세그먼트 카운터(3720)를 포함할 수 있다. 또한, DRAM 칩(3000)은 동작 모드 설정을 위한 MRS 코드가 저장되는 모드 레지스터 세트(Mode Register Set, MRS, 3800)를 더 포함할 수 있으며, DRAM 칩(3000)의 초기 동작시 MRS(3800)로부터의 MRS 코드에 따라 DRAM 칩(3000) 내의 각종 회로 블록들의 동작 환경이 설정된다. 도 6에서는 본 발명의 실시예에 따라 에러 정정회로(3500) 및 스크러빙 리프레쉬 관리부(3700)로 MRS 코드가 제공되는 예가 도시되어 있으나, 이외에도 다른 회로 블록들이 MRS 코드에 따라 그 동작 환경이 설정될 수 있다.
DRAM 칩에서는 레이턴시 페널티(latency penalty) 최소화 등의 이유로 간단한 헤밍 코드가 주로 이용되고 있으나, 이러한 경우 싱글 비트 에러만 정정 가능하다는 한계가 발생한다. DRAM 셀의 사이즈가 점차 감소함에 따라 두 개 비트 이상의 에러들이 발생할 확률이 증대되며, 이러한 경우 에러를 정정할 수 없는 문제가 발생한다. 본 실시예에서는 두 개 비트 이상의 에러들이 누적되는 것을 방지하기 위하여 DRAM 칩 내에 스크러빙 리프레쉬 개념이 도입된다. 스크러빙 리프레쉬 개념은 리프레쉬를 수행함과 함께 스크러빙 동작을 수행하는 개념으로서, 예컨대 메모리 어레이(3100)의 페이지를 활성화함에 의하여 리프레쉬 효과를 발생시키면서, 활성화된 페이지의 데이터의 에러를 모니터링하고 에러 정정된 데이터를 메모리 어레이(3100)에 라이트 백하는 것으로 정의될 수 있다. 도 7은 스크러빙 리프레쉬 동작의 일예를 나타내는 도면으로서, 본 발명의 실시예에 따른 스크러빙 리프레쉬 동작을 도 6 및 도 7을 참조하여 설명하면 다음과 같다.
도 7에서는 메모리 어레이(3100)의 어느 하나의 뱅크(BANK A)의 페이지가 8Kb의 사이즈를 가지고 서브 페이지가 128b를 갖는 예가 도시된다. 또한, 각각의 서브 페이지에 대응하여 8b의 패리티가 저장되며, 128b의 서브 페이지의 데이터와 8b의 패리티가 순차적으로 리드되어 ECC부(3500)로 제공된다. 에러 검출 및 정정과 관련하여 헤밍 코드가 ECC부(3500)에 적용될 수 있으며, 리드/라이트 시 적용하는 ECC 방식과 코드워드 길이(codeword length)는 본 실시예에 따른 스크러빙 리프레쉬의 동작에 동일하게 적용될 수 있다.
스크러빙 리프레쉬 관리부(3700)는 외부의 커맨드에 응답하여 스크러빙 리프레쉬 동작을 관리한다. 외부의 커맨드로서, 신규하게 정의되는 커맨드에 응답하여 스크러빙 리프레쉬 동작이 수행될 수 있으며, 또는 일반적인 커맨드들 중 어느 하나의 커맨드에 응답하여 스크러빙 리프레쉬 동작이 수행될 수 있다. 구체적으로는, 메모리 어레이(3100)에 대한 리드 동작을 위한 리드 커맨드와 서로 다른 신호의 조합(예컨대, /CS, /RAS, /CAS 및 /WE 등의 신호의 조합)을 갖는 커맨드(예컨대, 스크러빙 리프레쉬 커맨드)가 신규하게 정의되고, 상기 커맨드에 응답하여 스크러빙 리프레쉬 동작이 수행될 수 있다. 즉, 스크러빙 리프레쉬 커맨드를 정의하는 경우, 메모리 콘트롤러와 메모리 장치 사이의 협의에 의하여 /CS, /RAS, /CAS 및 /WE 등의 신호의 논리 하이 또는 논리 로우를 설정하여 상기 스크러빙 리프레쉬 커맨드를 정의할 수 있다. 또는, 메모리 동작을 위한 다수의 커맨드들 중, 리프레쉬 커맨드에 응답하여 스크러빙 리프레쉬 동작이 수행될 수 있다.
스크러빙 리프레쉬 커맨드에 응답하여 하나의 페이지가 활성화되고, 상기 페이지의 일부 또는 전체 서브 페이지들에 대한 스크러빙을 위하여 서브 페이지 단위의 데이터 및 이에 대응하는 패리티들이 리드된다. 리드된 데이터 및 패리티는 에러 정정회로(3500)로 제공되며, 에러 정정회로(3500)은 데이터에 대한 에러 검출 및 정정 동작을 수행한다. 또한, 에러 정정된 데이터는 메모리 어레이(3100)의 해당 위치에 라이트 백(write back)된다. 라이트 백(write back) 동작의 경우 에러가 검출 결과에 관계없이 수행될 수 있으며, 또는 에러가 검출된 경우에만 에러 정정된 데이터를 라이트 백(write back) 할 수 있다.
상기와 같은 스크러빙 리프레쉬에 포함되는 각종 동작들은 다양한 형태로 구현될 수 있다. 예컨대, 스크러빙 리프레쉬 커맨드에 응답하여 로우 카운터(3710)가 카운팅 동작을 수행함에 따라 메모리 어레이(3100)의 어느 하나의 페이지(예컨대, 제n 페이지)가 활성화된다. 또한, 페이지 세그먼트 카운터(3720)가 카운팅 동작을 수행함에 따라 상기 활성화된 페이지 내의 하나 이상의 서브 페이지를 순차적으로 선택한다. 선택된 서브 페이지에 대해 스크러빙 동작(에러 검출/정정 및 라이트 백 동작)을 수행한다. 이와 같은 동작이 완료되면 활성화된 페이지를 비활성화시키며, 이후 스크러빙 리프레쉬 커맨드가 수신되면 로우 카운터(3710)의 카운팅 동작에 의하여 다음의 하나의 페이지(예컨대, 제n+1 페이지)가 활성화된다.
한편, 신규하게 정의되는 스크러빙 리프레쉬 커맨드를 이용하는 경우와, 어느 하나의 기 정의되는 커맨드를 이용하는 경우, 하나의 커맨드에 응답하여 스크러빙 리프레쉬되는 서브 페이지들의 개수는 달리 설정될 수 있다. 스크러빙 리프레쉬 커맨드가 신규하게 정의되는 경우, 상기 스크러빙 리프레쉬 커맨드의 수신 주기(ts2s)는 콘트롤러와 반도체 메모리 장치 사이에서 새로이 협의될 수 있다. 스펙으로 정의된 리프레쉬 주기(예컨대 64ms)마다 메모리 어레이(3100)의 모든 페이지가 적어도 1회 활성화되도록 스크러빙 리프레쉬 커맨드가 반도체 메모리 장치로 제공되며, 상기 스크러빙 리프레쉬 커맨드의 수신 주기(ts2s)는 상기 리프레쉬 주기를 만족하는 범위 내에서 길게 설정될 수 있다. 또한, 상기 스크러빙 리프레쉬 커맨드의 수신 주기(ts2s)가 길게 설정될수록, 하나의 스크러빙 리프레쉬 커맨드에 응답하여 선택되는 서브 페이지들의 개수(또는, 스크러빙 되는 서브 페이지들의 개수)를 증가시킬 수 있다.
반면에, 기 정의된 커맨드로서 오토 리프레쉬 커맨드가 이용되는 경우, 오토 리프레쉬 커맨드의 수신 주기가 스펙으로 정의되어 있으며, 상기 수신 주기 내에서 스크러빙 처리가 가능한 개수의 서브 페이지가 선택되도록 한다. 예컨대, 신규 정의되는 스크러빙 리프레쉬 커맨드를 이용하는 경우, 하나의 스크러빙 리프레쉬 커맨드에 응답하여 하나의 페이지에 포함되는 모든 서브 페이지들에 대한 스크러빙 동작을 수행할 수 있다. 반면에, 오토 리프레쉬 커맨드를 이용하는 경우, 하나의 스크러빙 리프레쉬 커맨드에 응답하여 하나의 서브 페이지에 대한 스크러빙 동작을 수행할 수 있다.
한편, 스크러빙 동작은 DRAM 칩(3000) 내에서 소모되는 전력을 증가시킬 수 있는 동작으로서, 스크러빙 동작과 관계없이 데이터의 에러가 발생하지 않거나 에러 정정 가능한 에러만이 발생하는 경우에는 상기 스크러빙 동작을 수행하지 않는 것이 유리할 것이다. 기존의 리프레쉬 커맨드 이외에 스크러빙 리프레쉬 커맨드가 신규하게 정의되는 경우에는, 상기 스크러빙 리프레쉬 커맨드에 응답하여 스크러빙 리프레쉬 관리부(3700)는 페이지 활성화, 서브 페이지 선택, 에러 검출 및 라이트 백 동작을 일련하게 수행할 것이며, 리프레쉬 커맨드가 수신되는 경우에는 이에 응답하여 페이지를 활성화하여 리프레쉬 동작을 수행할 것이다. 이에 따라, 메모리 콘트롤러 측면에서 스크러빙 리프레쉬 커맨드를 제공하지 않음으로써 스크러빙 동작이 수행되지 않도록 할 수 있다.
반면에, 기존의 리프레쉬 커맨드를 이용하여 스크러빙 리프레쉬 동작을 수행하는 경우, 스크러빙 동작의 수행 여부를 설정할 필요가 있다. MRS(3800)는 스크러빙 동작에 관계된 MRS 코드를 포함하며, 상기 MRS(3800) 설정에 따라 스크러빙을 수행하도록 또는 스크러빙을 수행하지 않도록 모드를 변환시킬 수 있다. 예컨대, 스크러빙 수행 모드로 설정되는 경우, 전술한 실시예에서와 같이 DRAM 기존의 커맨드, 예컨대 리프레쉬 커맨드에 응답하여 스크러빙 리프레쉬 동작을 수행한다. 반면에, 스크러빙 비수행 모드로 설정되는 경우, MRS(3800)로부터의 MRS 코드에 따라 ECC부(3500)나 스크러빙 리프레쉬 관리부(3700)의 스크러빙 동작과 관계된 회로는 디스에이블(disable)될 것이며, 이에 따라 상기 리프레쉬 커맨드에 응답하여 페이지를 선택함으로써 리프레쉬 동작을 수행하는 반면에, 전술한 바와 같은 스크러빙에 관계된 데이터 에러 검출 및 라이트 백 동작 등은 생략될 수 있다.
한편, 도 6에서는 리프레쉬 동작을 위한 기존의 리프레쉬 제어부나 어드레스 카운터(이상 미도시)가 생략된 예가 도시되었으나, 본 발명의 실시예는 상기 기존의 리프레쉬 제어부나 어드레스 카운터 이외에 스크러빙 리프레쉬 관리부(3700)가 더 구비되도록 구현될 수도 있다. 또한, 스크러빙 리프레쉬 커맨드가 신규하게 정의됨으로써, 리프레쉬 커맨드 수신시 상기 리프레쉬 제어부(미도시)가 동작하고, 스크러빙 리프레쉬 커맨드 수신시 스크러빙 리프레쉬 관리부(3700)가 동작할 수 있다. 이 경우에는, 스크러빙 리프레쉬 동작의 차단을 위하여, MRS 코드에 의하여 스크러빙 리프레쉬 관리부(3700)가 전체적으로 디스에이블되는 방식이 적용될 수 있다.
도 8a,b는 도 6의 스크러빙 리프레쉬 관리부(3700)의 일 구현예를 나타내는 블록도이다. 도 8a는 MRS 코드에 의한 스크러빙 리프레쉬 모드 설정이 적용된 스크러빙 리프레쉬 관리부(3700)의 일예를 나타낸다. 도 8a,b에도시된 바와 같이, 스크러빙 리프레쉬 관리부(3700)는 스크러빙 리프레쉬 동작을 전반적으로 관리하기 위한 제어신호를 발생하는 제어신호 발생부(3730) 및 에러 정정회로로부터의 에러 검출 결과를 수신하는 검출신호 수신부(3740)를 포함할 수 있다. 또한, 전술한 바와 같이 상기 스크러빙 리프레쉬 관리부(3700)는 로우 카운터(3710) 및 페이지 세그먼트 카운터(3720)를 더 포함할 수 있다.
제어신호 발생부(3730)는 내부 제어신호(CTRL_INT) 및 클록 신호(CLK) 등을 수신하고, 스크러빙 리프레쉬 동작을 수행하기 위한 각종 제어신호들(SIG_SCREF)을 발생한다. 스크러빙 리프레쉬 동작을 위한 외부 커맨드가 수신되는 경우, 제어신호 발생부(3730)는 이를 디코딩한 내부 제어신호(CTRL_INT)에 응답하여 로우 카운터(3710) 및 페이지 세그먼트 카운터(3720)의 카운팅 동작을 제어하고, 각종 제어신호들(SIG_SCREF)을 발생하여 에러 정정회로 등 스크러빙 리프레쉬 동작과 관계된 구성들의 동작을 제어한다. 또한, 메모리 어레이의 데이터 리드 동작이나 라이트 백 동작은 로우 카운터(3710) 및 페이지 세그먼트 카운터(3720)로부터의 카운팅 신호(CNT_ROW, CNT_CLM)에 의하여 메모리 어레이의 위치가 지정될 수 있다.
스크러빙 리프레쉬 동작에 따라, 메모리 어레이에서 리드된 데이터에 대한 에러 검출 동작이 수행되고 그 검출 결과는 검출신호 수신부(3740)로 제공된다. 검출 결과에 따라, 에러 정정된 데이터를 메모리 어레이에 라이트 백 하는 동작이 수행된다.
한편, 도 8a에 도시된 바와 같이, 반도체 메모리 장치의 초기 동작시 MRS 코드(MRS Code)에 의하여 스크러빙 리프레쉬의 모드 설정이 제어될 수 있다. MRS 코드(MRS Code)는 제어신호 발생부(3730), 검출신호 수신부(3740) 및 페이지 세그먼트 카운터(3720) 등으로 제공될 수 있다. 검출신호 수신부(3740) 및 페이지 세그먼트 카운터(3720)는 상기 MRS 코드(MRS Code)에 의해 디스에이블 될 수 있으며, 제어신호 발생부(3730)는 MRS 코드(MRS Code)에 의해 설정된 모드에 따른 제어 동작을 수행한다. 스크러빙 리프레쉬 모드가 설정된 경우, 스크러빙 리프레쉬 관리부(3700)는 외부로부터의 커맨드(예컨대, 리프레쉬 커맨드)에 응답하여 전술한 바와 같은 스크러빙 리프레쉬 동작을 수행할 수 있다. 반면에, 스크러빙 리프레쉬 모드가 비설정된 경우, 스크러빙 리프레쉬 관리부(3700)는 스크러빙 동작을 위한 일련의 동작을 스킵한다. 예컨대, 리프레쉬 커맨드가 수신되는 경우, 로우 카운터(3710)의 카운팅 동작에 따라 리프레쉬를 위한 페이지가 선택되는 반면에, 스크러빙 동작을 위한 데이터 에러 검출 및 라이트 백 등 일련의 동작이 스킵된다.
도 9a,b는 신규 커맨드에 의해 스크러빙 리프레쉬가 수행되는 예를 나타내는 도면이다. 도 9a에 도시된 바와 같이, 커맨드 디코더(3300)는 외부로부터의 스크러빙 리프레쉬 커맨드(CMD_SCREF)를 수신하고 디코딩하여 내부 커맨드를 발생한다. 또한, 내부 커맨드는 스크러빙 리프레쉬 관리부(3700)로 제공되며, 상기 로우 카운터(3710) 및 페이지 세그먼트 카운터(3720)의 카운팅 동작이 수행되고, 카운팅 결과는 로우 디코더(3210) 및 칼럼 디코더(3220)으로 제공된다. 도 9a에는 카운터들(3710, 3720)이 커맨드 디코더(3300)로부터의 내부 커맨드에 응답하는 것으로 도시되어 있으나, 전술한 바와 같이 카운터들(3710, 3720)는 스크러빙 리프레쉬 관리부(3700) 내의 기타 다른 구성(예컨대, 제어신호 발생부)에 의해 제어될 수도 있다. 또한, 외부 어드레스 또는 내부에서 생성된 어드레스(ADD)는 어드레스 버퍼(3400)를 거쳐 로우 디코더(3210) 및 칼럼 디코더(3220)로 제공된다. 메모리 어레이(3100)의 데이터 및 패리티는 드라이버/센스앰프(3230)를 거쳐 에러 정정회로(3500)로 제공되며, 데이터 에러 검출/정정 및 라이트 백 동작이 순차적으로 수행된다.
한편, 도 9b에 도시된 바와 같이, 스크러빙 리프레쉬 커맨드(SCREF)가 수신될 때마다 어느 하나의 페이지가 활성화되고(ACT0), 활성화된 페이지의 하나 이상의 서브 페이지들이 순차적으로 선택된다. 예컨대, 제1 서브 페이지가 선택되어 해당 데이터에 대한 에러 검출/정정 동작이 수행되고, 에러 정정된 데이터가 메모리 어레이(3100)에 라이트 백 된다(WR0). 하나의 페이지에 64 개의 서브 페이지가 정의되는 경우, 제2 내지 제64 서브 페이지에 대하여 에러 검출/정정 동작 및 데이터 라이트 백 동작이 순차적으로 수행된다(WR1~WR63). 하나의 스크러빙 리프레쉬 커맨드(SCREF)에 대응하여 동작이 완료되면 상기 페이지가 비활성화된다(PRE).
이후, 다음의 스크러빙 리프레쉬 커맨드(SCREF)가 수신되면, 다른 하나의 페이지가 활성화되며(ACT1), 활성화된 페이지의 64 개의 서브 페이지들에 대한 스크러빙 리프레쉬 동작이 수행된다. 메모리 어레이(3100)가 다수 개의 뱅크를 구비하는 경우, 모든 뱅크들에 대하여 상기 스크러빙 리프레쉬 동작이 동시에 수행될 수 있다. 또한, 도 9b에서는 하나의 스크러빙 리프레쉬 커맨드(SCREF)에 응답하여 하나의 페이지의 모든 서브 페이지들에 대해 스크러빙 동작이 순차적으로 수행되는 것이 예시되었으나, 하나의 페이지의 일부 서브 페이지들에 대해서만 스크러빙 동작이 수행될 수도 있다.
이와 같은 방식에 따르면, 스크러빙 리프레쉬를 위한 새로운 커맨드가 정의된다. 또한, 스크러빙 리프레쉬 커맨드의 주기를 설정함에 있어서, 전력 소모 및 에러 축적 방지 효율간의 트레이드 오프를 고려하여 결정될 수 있다.
도 10은 도 9a의 반도체 메모리 장치의 동작방법을 나타내는 플로우차트이다. 도 10에 도시된 바와 같이, DRAM 칩은 외부의 콘트롤러로부터 제공되는 스크러빙 리프레쉬 커맨드를 수신하고(S21), 스크러빙 리프레쉬 커맨드에 응답하여 어느 하나의 페이지(예컨대, 제n 페이지)가 활성화된다(S22). 또한 제n 페이지의 데이터가 리드되며(S23), 리드된 데이터에 대한 에러 검출/정정 동작이 수행된다(S24). 에러 검출 결과에 따라 에러 정정된 데이터가 메모리 어레이에 라이트 백 된다(S25).
전술한 바와 같이, 어느 하나의 활성화된 페이지가 다수 개의 서브 페이지들을 포함하는 경우, 하나의 스크러빙 리프레쉬 커맨드에 응답하여 전체 서브 페이지에 대해 스크러빙 동작이 순차적으로 수행될 수도 있으며 일부의 서브 페이지에 대해서만 스크러빙 동작이 수행될 수도 있다. 스크러빙 처리되는 서브 페이지들의 개수는, 상기 스크러빙 리프레쉬 커맨드의 수신 주기의 설정 값에 따라 결정될 수 있으며, 상기 설정 값 내에서 스크러빙 동작이 처리 가능한 서브 페이지의 개수를 고려하여 상기 서브 페이지들의 개수가 결정될 수 있다.
도 11은 리프레쉬 커맨드에 의해 스크러빙 리프레쉬가 수행되는 예를 나타내는 도면이다. 리프레쉬 커맨드로서, 도 11에는 오토 리프레쉬 커맨드(REF)가 이용되는 예가 도시된다. 그러나, 본 발명은 이에 국한될 필요는 없으며, 셀프 리프레쉬 수행시 전술한 스크러빙 동작이 수행하여도 무방하다. 예컨대, 셀프 리프레쉬를 수행하기 위한 커맨드는 외부에서 제공되는 것이 아니라 반도체 메모리 장치 내부에서 일정 주기로 생성된다. 외부의 커맨드가 소정의 신호의 조합을 가지는 경우 셀프 리프레쉬 진입 모드로 진입하며, 상기 셀프 리프레쉬 진입 모드시 셀프 리프레쉬 동작을 위한 커맨드가 반도체 메모리 장치 내부에서 생성된다. 상기 내부에서 생성된 커맨드를 이용하여 전술한 스크러빙 리프레쉬 동작이 수행되도록 할 수 있다.
도 11에 도시된 바와 같이, 오토 리프레쉬 커맨드(REF)가 수신될 때마다 어느 하나의 페이지가 활성화되며(ACT0), 활성화된 페이지의 어느 하나의 서브 페이지가 선택된다. 예컨대, 제1 페이지의 제1 서브 페이지가 선택되어 해당 데이터에 대한 에러 검출/정정 동작이 수행되고, 에러 정정된 데이터가 메모리 어레이(3100)에 라이트 백 된다(WR0). 현재의 오토 리프레쉬 커맨드(REF)에 대응하여 라이트 백 동작(WR0)이 완료되면 상기 제1 페이지가 비활성화된다(PRE0). 즉, 활성화된 제1 페이지 전체에 대해 리프레쉬의 효과가 발생하며, 선택된 제1 서브 페이지에 대해 에러 검출/정정 및 라이트 백 동작이 수행됨에 따라 스크러빙 효과가 발생하도록 한다. 전술한 바와 같이, 메모리 어레이가 다수 개의 뱅크를 구비하는 경우, 모든 뱅크들에 대하여 상기 스크러빙 리프레쉬 동작이 동시에 수행될 수 있다. 또한, 도 11에는 하나의 오토 리프레쉬 커맨드(REF)에 대응하여 활성화된 페이지의 어느 하나의 서브 페이지에 대해서 스크러빙 동작을 수행하는 예가 도시되어 있으나, 상기 오토 리프레쉬 커맨드(REF)의 수신 주기를 고려하여 두 개 이상의 서브 페이지에 대해 스크러빙 동작이 수행될 수 있다.
이후, 다음의 오토 리프레쉬 커맨드(REF)가 수신되면, 제2 페이지가 활성화되며 제2 페이지의 제1 서브 페이지가 선택된다. 또한, 제2 페이지의 제1 서브 페이지의 데이터에 대한 에러 검출/정정 동작이 수행되고, 에러 정정된 데이터가 메모리 어레이(3100)에 라이트 백 된다(WR1). 상기 라이트 백 동작(WR1)이 완료되면 상기 제2 페이지가 비활성화된다(PRE1).
상기와 같은 동작에 따라 전체 페이지에 대해 활성화가 이루어지고 나면, 다음의 리프레쉬 주기에서는 활성화된 페이지의 제2 서브 페이지에 대한 스크러빙 동작이 수행된다. 이와 마찬가지로 그 다음의 리프레쉬 주기에서는 선택된 페이지의 제3 서브 페이지에 대한 스크러빙 동작이 수행된다. 만약, 리프레쉬 주기가 64ms로 정의되고 하나의 페이지가 64 개의 서브 페이지들을 포함하며, 하나의 오토 리프레쉬 커맨드 당 하나의 서브 페이지에 대해 에러 검출/정정 및 라이트 백 동작이 수행되는 경우, 전체 페이지들에 대해 스크러빙 동작을 완료하는 데는 64*64ms 시간이 소요된다. 에러 검출/정정을 위한 스크러빙 동작은 일반 리프레쉬 동작에 비하여 빠른 속도로 수행될 필요는 없으므로 시간이 더 소요되어도 무방하다. 또한 도 11의 실시예에 따르면, 별도의 신규한 커맨드를 정의할 필요 없이 DRAM 칩 자체에서 스크러빙 리프레쉬 동작을 수행할 수 있다.
도 12는 도 11의 반도체 메모리 장치의 동작방법을 나타내는 플로우차트이다. 도 12에 도시된 바와 같이, DRAM 칩은 외부의 콘트롤러로부터 제공되는 리프레쉬 커맨드를 수신하고(S31), 리프레쉬 커맨드에 응답하여 어느 하나의 페이지(예컨대, 제n 페이지)가 활성화된다(S32). 제n 페이지에 포함되는 다수의 서브 페이지들 중 어느 하나의 서브 페이지의 데이터가 리드되며(S33), 리드된 데이터에 대한 에러 검출/정정 동작이 수행된다(S34). 또한, 에러 검출 결과에 따라 에러 정정된 데이터가 메모리 어레이에 라이트 백 되며(S35), 활성화된 제n 페이지에 대한 하나 또는 그 이상의 서브 페이지에 대한 스크러빙 동작이 완료되면 상기 제n 페이지를 비활성화한다(S36).
도 13a,b는 본 발명의 다른 실시예에 따른 메모리 시스템을 나타내는 블록도이다. 도 13a,b에서는, 본 발명의 실시예에 따른 스크러빙 리프레쉬 동작을 DRAM 칩 내에서 수행하는 반면에, 에러 정정 동작을 콘트롤러에서 수행하는 실시예가 도시된다.
도 13a에 도시된 바와 같이, 메모리 시스템(4000)은 콘트롤러(4100)와 메모리 모듈(4200)을 구비하며, 메모리 모듈(4200)은 하나 이상의 DRAM 칩(4210)을 포함한다. 콘트롤러(4100)는 메모리 모듈(4200)로부터 데이터 및/또는 패리티를 수신하여 에러 검출 및 정정 동작을 수행하는 에러 정정회로(4110)를 포함하며, 각각의 DRAM 칩(4210)은 칩 내에서 스크러빙 리프레쉬 동작을 수행하기 위한 스크러빙 리프레쉬 관리부(4211)를 포함한다. 또한, 전술한 실시예에서 설명된 바와 같이, 스크러빙 리프레쉬 동작시 선택된 서브 페이지의 데이터에 대한 스크러빙 동작을 위하여 에러 정정회로(미도시)가 각각의 DRAM 칩(4210)에 구비될 수 있다. 또한, 도 13a의 메모리 모듈(4200)은 서버(server)용 모듈인 RDIMM(Registered Dual in-line memory module)이 적용된 예를 나타내며, 레지스터(4220) 및 PLL(4230)이 메모리 모듈(4200)의 모듈 보드 상에 장착될 수 있다.
콘트롤러(4110)와 메모리 모듈(4200)은 각종 시스템 버스를 통해 데이터(DQ), 커맨드/어드레스(CA) 및 클록신호(CLK)를 통해 통신한다. 데이터(DQ)는 모듈 보드 상에 배치되는 데이터 버스(미도시)를 통해 DRAM 칩(4210) 각각으로 제공되며, 레지스터(4220)는 커맨드/어드레스(CA)를 버퍼링하고 버퍼링된 커맨드/어드레스(CA)를 DRAM 칩(4210)으로 제공한다. 또한, PLL(4230)는 클록신호(CLK)를 수신하고 이를 위상 조절하며, 위상 조절된 클록신호들(CLKs)을 DRAM 칩(4210)으로 제공한다 .
도 13b는 도 13a의 메모리 모듈의 일 구현예를 나타내는 블록도로서, 도 13b에 도시된 바와 같이 메모리 모듈(4200)은 다수 개의 DRAM 칩(4210)과 하나의 ECC 칩(4240)을 포함할 수 있다. ECC 칩(4240) 또한 DRAM 칩으로 구현될 수 있으며, 에러 검출 및 정정을 위한 패리티를 저장한다. 다수 개의 DRAM 칩(4210)으로부터 리드된 데이터와 ECC 칩(4240)으로부터 리드된 패리티는 콘트롤러(4110)로 제공되고, 콘트롤러(4110)는 리드된 데이터에 대한 에러를 검출 및 정정한다.
한편, 스크러빙 리프레쉬 동작과 관련하여, 콘트롤러(4110)로부터의 스크러빙 리프레쉬 커맨드 또는 리프레쉬 커맨드가 메모리 모듈(4200)로 제공된다. DRAM 칩(4210)은 상기 커맨드에 응답하여 스크러빙 리프레쉬 동작을 수행하며, 이를 위하여 DRAM 칩(4210) 각각의 메모리 어레이(미도시)에서 리드된 데이터 및/또는 패리티가 DRAM 칩(4210) 내의 에러 정정회로로 제공된다. 에러 검출 결과에 따라, 데이터에 에러 비트가 발생한 경우에는 이를 정정하고, 정정된 데이터를 메모리 어레이에 라이트 백 한다.
상기와 같은 실시예에 따르면, 스크러빙 리프레쉬를 위한 에러 검출/정정 동작과 리드 데이터에 대한 싱글 비트 에러를 정정하기 위한 에러 검출/정정 동작을 이원화시킬 수 있다. 이 경우, 스크러빙 리프레쉬 동작은 레이턴시(latency)에 영향을 미치지 않으므로 보다 강력한 에러 검출/정정 방식이 스크러빙 리프레쉬에 적용될 수 있다. 예컨대, 멀티비트 에러도 정정이 가능한 방식을 스크러빙 리프레쉬 동작에 적용시키고, 데이터 리드시 발생할 수 있는 싱글에러 비트는 콘트롤러(4110)에 의해 정정되도록 할 수 있다.
도 14a,b는 본 발명의 또 다른 실시예에 따른 메모리 시스템을 나타내는 블록도이다. 도 14a,b에서 또한, 본 발명의 실시예에 따른 스크러빙 리프레쉬 동작을 DRAM 칩 내에서 수행하는 반면에, 에러 정정 동작을 콘트롤러에서 수행하는 실시예가 도시되며, 도 14a의 메모리 모듈(5200)은 FBDIMM(Fully-buffered DIMM)이 적용된 예를 나타낸다.
도 14a에 도시된 바와 같이, 메모리 시스템(5000)은 콘트롤러(5100)와 메모리 모듈(5200)을 구비하며, 메모리 모듈(5200)은 하나 이상의 DRAM 칩(5210) 및 AMB(Advanced Memory Buffer, 5220)를 포함한다. FBDIMM 형태의 메모리 모듈(5200)은 콘트롤러(5100)와 통신하며, 콘트롤러(5100)와 메모리 모듈(5200) 내의 AMB(5220)는 포인트 투 포인트(point-to-point) 방식으로 서로 접속되어 직렬 통신한다. 이에 따르면, 메모리 시스템(5000)에 접속되는 메모리 모듈(5200) 수를 증가시킬 수 있으므로 대용량화가 가능하며, 또한 FBDIMM은 패킷 프로토콜(packet protocol)을 이용하기 때문에 고속 동작이 가능하다.
콘트롤러(5100)는 메모리 모듈(5200)로부터 데이터 및/또는 패리티를 수신하여 에러 검출 및 정정 동작을 수행하는 에러 정정회로(5110)를 포함하며, 각각의 DRAM 칩(5210)은 칩 내에서 스크러빙 리프레쉬 동작을 수행하기 위한 스크러빙 리프레쉬 관리부(5211)를 포함한다. 또한, 전술한 바와 같이, 스크러빙 리프레쉬 동작시 선택된 서브 페이지에 대한 스크러빙 동작을 위하여, 에러 검출/정정 동작을 위한 에러 정정회로(미도시)가 각각의 DRAM 칩(5210)에 구비될 수 있다.
도 14b는 도 14a의 메모리 모듈의 일 구현예를 나타내는 블록도로서, 도 14b에 도시된 바와 같이 메모리 모듈(5200)은 다수 개의 DRAM 칩(5210)과 AMB(5220)를 포함한다. 데이터 리드시, 다수 개의 DRAM 칩(5210)으로부터 리드된 데이터 및/또는 패리티는 AMB(5220)를 거쳐 콘트롤러(5100)로 제공되며, 콘트롤러(5100)의 에러 정정회로(5110)는 상기 리드된 데이터에 대해 싱글 비트의 에러 발생을 검출하고 이를 정정한다. 또한, DRAM 칩(5210)은 콘트롤러(5100)로부터의 스크러빙 리프레쉬 커맨드 또는 리프레쉬 커맨드에 응답하여 스크러빙 리프레쉬 동작을 수행하며, 스크러빙 리프레쉬 동작시 메모리 어레이(미도시)에서 리드된 데이터 및/또는 패리티가 DRAM 칩(5210) 내의 에러 정정회로(미도시)로 제공된다. 에러 검출 결과에 따라, 데이터에 에러 비트가 발생한 경우에는 이를 정정하고, 정정된 데이터를 메모리 어레이에 라이트 백 한다.
도 14a,b의 실시예에서 또한 스크러빙 리프레쉬를 위한 에러 검출/정정 동작과 리드 데이터에 대한 싱글 비트 에러를 정정하기 위한 에러 검출/정정 동작이 이원화되어 수행되며, 이에 따라 보다 강력한 에러 검출/정정 방식이 스크러빙 리프레쉬에 적용될 수 있다. 따라서 DRAM 셀의 사이즈 감소에 따라 발생할 수 있는 에러 정정 불가능한 에러(예컨대, 멀티비트 에러)를 방지할 수 있다.
전술한 실시예에서는, 본 발명의 실시예가 RDIMM이나 FBDIMM에 적용되는 예를 나타내었으나, 본 발명의 실시예는 이에 국한될 필요는 없다. 본 발명의 실시예에 따른 스크러빙 리프레쉬는 다양한 형태의 반도체 메모리 장치, 메모리 모듈 및 시스템 등에 적용될 수 있으며, 예컨대 다른 형태의 메모리 모듈(SIMM(Single in-line memory module), DIMM(Dual in-line memory module), SO-DIMM(Small-outline DIMM), UDIMM(Unbuffered DIMM), RBDIMM(Rank-buffered DIMMmini-DIMM 및 micro-DIMM)에 적용될 수도 있다.
도 15는 본 발명의 다른 실시예에 따른 메모리 시스템의 동작방법을 나타내는 플로우차트이다. 스크러빙 리프레쉬 동작을 계속 수행하게 되면, 메모리 어레이에 대한 전반적인 에러 통계를 얻을 수 있다. 특히, 에러의 발생이 소프트 에러가 아닌 물리적인 결함에 의한 하드 페일(hard-fail)에 의한 것임을 검출하고, 하드 페일의 존재가 검출된 경우에는 메모리 어레이의 해당 로우 및 칼럼에 대한 구제(repair)를 수행함으로써 에러 발생을 방지할 수 있다.
도 15에 도시된 바와 같이, 외부의 콘트롤러로부터의 스크러빙 리프레쉬 커맨드나 리프레쉬 커맨드를 수신함에 따라 스크러빙 리프레쉬 동작을 개시한다(S41). 이에 따라, 메모리 어레이에 대한 데이터 리드 동작을 수행하고(S42), 리드된 데이터에 대한 에러 검출 동작을 수행한다(S43).
에러가 검출되지 않은 경우에는 리드된 데이터에 대한 에러 검출 동작을 반복적으로 수행하며, 에러가 검출된 경우에는 에러가 검출된 위치에 대한 데이터를 다시 리드하는 동작을 수행한다(S44). 재리드된 데이터에 대한 에러 검출 동작이 다시 수행되며(S45), 재검출 결과 동일 위치에서 에러가 재검출되지 않으면 다음의 리드된 데이터에 대한 에러 검출 동작을 반복적으로 수행한다. 반면에, 재검출 결과 동일 위치에서 에러가 재검출된 경우 해당 에러를 하드 페일(hard-fail)에 의한 것으로 판단하고, 외부의 콘트롤러로 동작을 일시 중단할 것으로 요청하는 홀드 신호를 출력한다(S46). 도 15에서는 동일한 위치에서 에러가 2 회 발생한 경우 하드 페일에 의한 것으로 판단하나, 이와 같은 하드 페일의 판단 기준은 달리 설정될 수도 있다.
이후, 하드 페일(hard-fail)이 발생한 메모리 어레이의 결함 영역(예컨대, 로우 및/또는 칼럼 영역)을 리던던시 영역으로 대체하기 위한 동작을 수행한다. 이를 위하여, 먼저 대체를 수행할 리던던시 자원이 존재하는지를 판별하며(S47), 리던던시 자원이 존재하는 경우 하드 페일(hard-fail)이 발생한 영역의 데이터를 메모리 어레이의 다른 영역에 이동시킨다(S48). 이후, 결함 영역을 리던던시 자원으로 대체하고 상기 데이터를 리던던시 자원에 이동함에 의하여 리페어 동작을 수행하고(S49), 외부의 콘트롤러에 동작을 재시작할 것을 나타내는 요청 신호를 출력한다(S50). 반면에, 리던던시 자원이 존재하지 않는 것으로 판별된 경우에는 해당 DRAM 칩을 페일 판정할 수 있다(S51).
한편, 본 실시예에 있어서도 전술한 스크러빙 리프레쉬 동작이 동일 또는 유사하게 적용될 수 있다. 예컨대, 도 15에서는 도시되지 않았으나 리드된 데이터에 대한 에러를 검출하는 단계(S43)에서 에러가 검출된 경우, 해당 에러를 정정하고 이를 메모리 어레이의 동일 위치에 라이트 백 할 수 있다. 이후, 라이트 백 된 데이터에 대해 재리드 동작을 수행하고 이에 대해 에러 재검출 동작을 수행한다. 에러 재검출 결과에 따라 하드 페일(hard-fail)의 존재 여부를 판별할 수 있다.
도 16은 도 15의 메모리 시스템의 동작방법에 적용되는 DRAM 칩의 일 구현예를 나타내는 블록도이다. 도 16에 도시된 바와 같이, DRAM 칩(6000)은 다수의 DRAM 셀을 포함하는 메모리 어레이(6100), 로우 디코더(6210), 칼럼 디코더(6220), 드라이버/센스앰프(6230), 커맨드 디코더(6300), 어드레스 버퍼(6400), 에러 정정회로(6500) 및 리드/라이트 데이터 경로부(6610, 6620)를 포함한다. 또한, 본 실시예에 따른 하드 페일 판별 및 리페어 동작과 관련하여, DRAM 칩(6000)은 스크러빙 리프레쉬 동작을 관리하는 스크러빙 리프레쉬 관리부(6700), 하드 페일의 존재 여부를 검출하는 하드 페일 검출부(6800) 및 리페어 로직(6900)을 더 포함할 수 있다. 메모리 어레이(6100)는 하드 페일이 존재하는 결함 영역을 대체하기 위한 리던던시 영역을 더 포함할 수 있으며, 또한 스크러빙 리프레쉬 관리부(6700)는 적어도 하나의 카운터, 예컨대 로우 카운터(6710)와 페이지 세그먼트 카운터(6720)를 포함할 수 있다. 또한, 하드 페일 검출부(6800)는 에러의 발생 횟수를 카운팅하기 위한 카운터(6810)를 포함할 수 있다. 도 16에 도시된 DRAM 칩(6000)의 구체적인 동작을 설명함에 있어서, 전술한 실시예에서와 동일 또는 유사한 구성은 그 동작 또한 동일 또는 유사하므로 이에 대한 구체적인 설명은 생략한다.
외부의 콘트롤러로부터 스크러빙 리프레쉬 커맨드, 또는 리프레쉬 커맨드가 수신됨에 따라 DRAM 칩(6000) 내에서 스크러빙 리프레쉬 동작이 수행된다. 스크러빙 리프레쉬 관리부(6700)는 상기 커맨드의 수신에 응답하여 카운팅 동작을 수행한다. 카운팅 결과에 따라 스크러빙 리프레쉬를 수행할 메모리 어레이(6100)의 페이지가 선택되고, 스크러빙을 수행할 서브 페이지가 선택되어 그 데이터가 에러 정정회로(6500)로 제공되며, 에러 검출 결과가 스크러빙 하드 페일 검출부(6800)로 제공된다. 에러가 검출된 경우, 메모리 어레이(6100)의 동일 위치에 대한 데이터의 재리드 동작이 수행된다.
재리드된 데이터 또한 에러 정정회로(6500)로 제공되며, 에러 검출 결과는 하드 페일 검출부(6800)로 제공된다. 하드 페일 검출부(6800)는 동일 위치에서 리드된 데이터에 대한 에러 검출 횟수를 카운팅하고, 소정의 임계값 이상 에러 검출 횟수가 카운팅 된 경우 메모리 어레이(6100)의 해당 영역에 하드 페일이 발생한 것으로 검출한다. 그 검출 결과는 리페어 로직(6900)으로 제공되며, 리페어 로직(6900)은 하드 페일이 발생한 메모리 어레이(6100)의 결함 영역을 리던던시 영역을 대체하는 동작을 수행한다. 상기 대체 동작은 하드 페일이 발생한 영역의 어드레스와 리던던시 영역의 어드레스를 교환함에 의하여 수행될 수 있으며, 리페어 로직(6900)은 상기와 같은 어드레스 교환에 기반하여 하드 페일이 발생한 결함 영역을 리던던시 영역으로 대체할 수 있다.
도 17은 도 15의 메모리 시스템의 동작방법에 적용되는 DRAM 칩의 다른 구현예를 나타내는 블록도이다. 도 17에 도시된 바와 같이, DRAM 칩(7000)은 다수의 DRAM 셀을 포함하는 메모리 어레이(7100), 로우 디코더(7210), 칼럼 디코더(7220), 드라이버/센스앰프(7230), 커맨드 디코더(7300), 어드레스 버퍼(7400), 에러 정정회로(7500) 및 리드/라이트 데이터 경로부(7610, 7620)를 포함한다. 또한, 본 실시예에 따른 하드 페일 판별 및 리페어 동작과 관련하여, DRAM 칩(7000)은 스크러빙 리프레쉬 동작을 관리하는 스크러빙 리프레쉬 관리부(7700), 하드 페일의 존재 여부를 검출하는 하드 페일 검출부(7800) 및 어레이 전압 발생부(7900)을 더 포함할 수 있다. 또한 스크러빙 리프레쉬 관리부(7700)는 적어도 하나의 카운터, 예컨대 로우 카운터(7710)와 페이지 세그먼트 카운터(7720)를 포함할 수 있으며, 하드 페일 검출부(7800)는 에러의 발생 횟수를 카운팅하기 위한 카운터(7810)를 포함할 수 있다.
외부의 콘트롤러로부터 스크러빙 리프레쉬 커맨드, 또는 리프레쉬 커맨드가 수신됨에 따라 DRAM 칩(7000) 내에서 스크러빙 리프레쉬 동작이 수행되며, 스크러빙 리프레쉬를 수행할 메모리 어레이(7100)의 데이터가 리드되어 에러 정정회로(7500)로 제공된다. 에러 검출 결과가 스크러빙 하드 페일 검출부(7800)로 제공되고, 에러 검출 결과에 따라 메모리 어레이(7100)의 동일 위치에 대한 데이터의 재리드 동작이 수행된다.
재리드된 데이터에 대한 에러 검출 결과가 하드 페일 검출부(7800)로 제공되며, 하드 페일 검출부(7800)는 동일 영역에 대한 에러 검출 결과를 분석한 결과 신호를 어레이 전압 발생부(7900)로 제공한다. 상기 결과 신호는 어레이 전압 발생부(7900)에서 발생되는 메모리 어레이로 제공되는 어레이 전압의 레벨을 변동하기 위한 제어신호일 수 있다. 즉, 하드 페일 검출부(7800)는 스크러빙 리프레쉬 동작 동안 메모리 어레이(7100)의 페일 발생율을 모니터링하고, 그 결과에 따라 어레이 전압의 레벨을 증가하거나 감소시키기 위한 제어신호를 발생할 수 있다.
앞선 도면들에는 도시되지 않았으나, 하드 페일 발생에 대응하는 구제 동작은 다양한 형태로 구현이 가능한다. 예컨대, 메모리 어레이에 대한 하드 페일 발생여부를 모니터링하고, 하드 페일 양상을 검출한 결과에 따라 데이터 리드 동작시 에러를 감소시키는 방향으로 보정을 수행할 수 있다. 또한, 에러 발생 정보를 외부의 콘트롤러로 제공하여, 외부의 콘트롤러 차원에서 에러를 감소시키기 위한 방안(예컨대, 리프레쉬의 주기를 조절)이 수행되도록 할 수도 있다.
도 18은 본 발명의 실시예가 적용되는 메모리 시스템의 일예를 나타내는 블록도이다. 도 18의 메모리 시스템(8000A)은 콘트롤러(8100A)와 메모리 모듈(8200A)을 포함하고, 상기 메모리 모듈(8200A)은 모듈 보드(Module Board) 상에 장착된 마스터 칩(8210A)과 하나 이상의 슬레이브 칩(8220A)을 포함한다. 예컨대, 하나의 마스터 칩(8210A)과 n 개의 슬레이브 칩(8220A)이 모듈 보드(Module Board) 상에 장착된 예가 도 18에 도시된다.
마스터 칩(8210A)은 외부의 콘트롤러(8100A)와 클록 신호(CLK), 커맨드/어드레스 신호(CA) 및 데이터(DQ) 등을 송수신한다. 마스터 칩(8210A)은 콘트롤러(8100A)와의 인터페이스를 위한 인터페이스 회로(미도시)를 구비하고, 인터페이스 회로를 통하여 콘트롤러(8100A)로부터의 신호를 슬레이브 칩(8220A)으로 전달하며, 또한 슬레이브 칩(8220A)으로부터의 신호를 콘트롤러(8100A)로 전달한다.
본 발명의 실시예에 따른 스크러빙 리프레쉬 동작을 수행하기 위하여, 마스터 칩(8210A)은 콘트롤러(8100A)로부터의 스크러빙 리프레쉬 커맨드, 또는 리프레쉬 커맨드에 응답하여 동작하는 스크러빙 리프레쉬 관리부(8211A)를 포함할 수 있다. 스크러빙 리프레쉬 동작시, 마스터 칩(8210A) 및/또는 슬레이브 칩(8220A)의 데이터가 마스터 칩(8210A) 내의 에러 정정회로(미도시)로 제공되며, 에러 검출 결과에 따라 에러 정정 및 라이트 백 동작이 수행된다. 또한, 전술한 실시예에서와 같이, 스크러빙 리프레쉬 동작을 통하여 마스터 칩(8210A) 및 슬레이브 칩(8220A)에서의 에러 통계를 모니터링하고, 하드 페일 발생시 이를 구제하기 위한 동작이 마스터 칩(8210A)에서 수행될 수 있다.
한편, 도 18에는 도시되지 않았으나, 스크러빙 리프레쉬 동작을 위한 에러 정정회로의 동작과 리드/라이트 동작을 위한 에러 정정회로의 동작은, 시스템 구현의 정책에 따라 이원화될 수 있으며 또는 그렇지 않을 수도 있다. 예컨대, 상기 에러 정정회로의 동작은 마스터 칩(8210A) 내에서 일원화시킬 수 있으며, 이에 따라 마스터 칩(8210A) 내에서 리드/라이트 동작을 위한 에러 정정회로의 동작이 수행되며, 또한 마스터 칩(8210A)에서 리드 데이터에 대한 싱글 비트의 에러가 정정될 수 있다. 반면에, 상기 에러 정정회로의 동작을 이원화시키는 경우, 마스터 칩(8210A) 내에서 스크러빙 리프레쉬를 위한 에러 정정회로의 동작이 수행되며, 리드/라이트 동작과 관련된 에러 정정회로의 동작은 콘트롤러(8100A) 내에서 수행될 수 있다.
도 19는 본 발명의 실시예가 적용되는 메모리 시스템의 다른 예를 나타내는 블록도이다. 도 19의 메모리 시스템(8000B)은 콘트롤러(8100B)와 메모리 모듈(8200B)을 포함하고, 상기 메모리 모듈(8200B)은 모듈 보드(Module Board) 상에 장착된 다수 개의 반도체 메모리 장치(8210B)를 포함하고, 각각의 반도체 메모리 장치(8210B)는 다수 개의 DRAM 칩이 적층된 구조를 갖는다. 또한, 상기 다수 개의 DRAM 칩은 하나 이상의 마스터 칩(8211B)과 하나 이상의 슬레이브 칩(8212B)을 포함할 수 있으며, 마스터 칩(8211B)과 슬레이브 칩(8212B)은 스루 실리콘 비아(Through Silicon Via, TSV)를 통해 신호를 송수신할 수 있다.
마스터 칩(8211B)은 외부의 콘트롤러(8212B)와 클록 신호(CLK), 커맨드/어드레스 신호(CA) 및 데이터(DQ) 등을 송수신하며, 외부로부터의 신호를 스루 실리콘 비아(TSV)를 통해 슬레이브 칩(8212B)으로 전달하거나, 슬레이브 칩(8212B)으로부터의 신호를 외부의 콘트롤러(8212B)로 제공한다. 또한, 본 발명의 실시예에 따른 스크러빙 리프레쉬 동작을 수행하기 위하여, 마스터 칩(8211B)은 콘트롤러(8100B)로부터의 스크러빙 리프레쉬 커맨드, 또는 리프레쉬 커맨드에 응답하여 동작하는 스크러빙 리프레쉬 관리부(8211B)를 포함할 수 있다. 스크러빙 리프레쉬 동작시, 해당 반도체 메모리 장치(8210B) 내의 데이터 및/또는 패리티는 마스터 칩(8211B)으로 제공되고, 에러 검출 결과에 따라 에러 정정 및 라이트 백 동작이 수행된다. 또한, 전술한 실시예에서와 같이, 스크러빙 리프레쉬 동작을 통하여 마스터 칩(8211B) 및 슬레이브 칩(8212B)에서의 에러 통계를 모니터링하고, 하드 페일 발생시 이를 구제하기 위한 동작이 마스터 칩(8211B)에서 수행될 수 있다.
도 20은 본 발명의 일실시예에 따른 메모리 시스템이 장착된 컴퓨팅 시스템을 나타내는 블록도이다. 모바일 기기나 데스크 탑 컴퓨터와 같은 정보 처리 시스템에 본 발명의 반도체 메모리 장치가 램(9200)으로 장착될 수 있다. 램(9200)으로 장착되는 반도체 메모리 장치는 앞서 설명되었던 다수의 실시예들 중 어느 하나가 적용될 수 있다. 예컨대, 램(9200)은 앞선 실시예들 중 반도체 메모리 장치가 적용될 수 있으며, 또는 메모리 모듈 형태로 적용될 수도 있다. 또한, 도 19의 램(9200)은 메모리 메모리 장치와 메모리 콘트롤러를 포함하는 개념일 수 있다.
본 발명의 일실시예에 따른 컴퓨팅 시스템(9000)은 중앙처리 장치(9100), 램(9200), 유저 인터페이스(9300)와 불휘발성 메모리(9400)를 포함하며, 이들 구성요소는 각각 버스(9500)에 전기적으로 연결되어 있다. 불휘발성 메모리(9400)는 SSD나 HDD와 같은 대용량 저장 장치가 사용될 수 있다.
상기 컴퓨팅 시스템(9000)에서, 앞선 실시예들에서와 같이 램(9200)은, 데이터를 저장하기 위한 DRAM 셀을 포함하는 DRAM 칩(미도시)을 포함하며, 각각의 DRAM 칩 내에는 본 발명의 실시예에 따른 스크러빙 리프레쉬 동작을 수행하기 위한 구성이 구비된다. 예컨대, 램(9200)에 구비되는 DRAM 칩 각각에는 콘트롤러로부터의 커맨드에 응답하여 데이터 리드, 에러 검출/정정 및 데이터 라이트 백 동작을 순차적으로 수행하기 위한 구성이 구비된다. 이에 따라, DRAM 칩 내의 데이터에서 에러가 축적되는 것을 방지하며 신뢰도를 향상한 데이터가 DRAM 칩에서 리드되어 컴퓨팅 시스템(9000)의 동작에 이용될 수 있다.
상기한 실시예의 설명은 본 발명의 더욱 철저한 이해를 위하여 도면을 참조로 예를 든 것에 불과하므로, 본 발명을 한정하는 의미로 해석되어서는 안될 것이다. 또한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기본적 원리를 벗어나지 않는 범위 내에서 다양한 변화와 변경이 가능함은 명백하다 할 것이다.

Claims (30)

  1. 외부의 콘트롤러와 통신하는 반도체 메모리 장치의 동작방법에 있어서,
    상기 콘트롤러로부터 제1 커맨드를 수신하는 단계;
    상기 제1 커맨드에 응답하여 메모리 어레이의 페이지를 활성화하는 단계;
    상기 활성화된 페이지의 적어도 하나의 서브 페이지를 선택하는 단계;
    상기 선택된 서브 페이지로부터 리드된 데이터에 대해 에러를 검출하는 단계;
    에러 정정된 데이터를 상기 서브 페이지에 재기록하는 단계를 구비하는 반도체 메모리 장치의 동작방법.
  2. 제1항에 있어서,
    초기 구동시 모드 레지스터 세트(Mode Register Set, MRS) 코드를 발생하는 단계; 및
    상기 MRS 코드에 따라 스크러빙 리프레쉬 모드를 설정하는 단계를 더 구비하는 반도체 메모리 장치의 동작방법.
  3. 제2항에 있어서,
    상기 MRS 코드가 제1 상태인 경우, 상기 스크러빙 리프레쉬 모드가 설정되며,
    상기 스크러빙 리프레쉬 모드 설정시, 상기 제1 커맨드 수신에 대응하여 상기 서브 페이지 선택, 에러 검출 및 재기록 단계를 일련하게 수행하는 반도체 메모리 장치의 동작방법.
  4. 제3항에 있어서,
    상기 MRS 코드가 제2 상태인 경우, 상기 스크러빙 리프레쉬 모드 설정이 차단되며,
    상기 스크러빙 리프레쉬 모드 차단시, 상기 제1 커맨드 수신에 대응하여 상기 서브 페이지 선택, 에러 검출 및 재기록 단계가 스킵되는 반도체 메모리 장치의 동작방법.
  5. 제1항에 있어서,
    상기 제1 커맨드는, 상기 반도체 메모리 장치의 리드 동작을 위한 리드 커맨드와 서로 다른 신호의 조합으로 이루어지는 반도체 메모리 장치의 동작방법.
  6. 제5항에 있어서,
    상기 메모리 어레이는 다수의 페이지를 포함하는 뱅크를 구비하고, 각각의 페이지는 다수의 서브 페이지들을 포함하며,
    상기 제1 커맨드에 응답하여 어느 하나의 페이지가 활성화되고, 선택된 페이지의 적어도 두 개의 서브 페이지에 대해 에러 정정된 데이터를 재기록하는 반도체 메모리 장치의 동작방법.
  7. 제1항에 있어서,
    상기 메모리 어레이는 n 개의 페이지들을 포함하고(단, n은 2 이상의 정수), 상기 제1 커맨드는 소정의 주기에 따라 수신되며,
    상기 페이지를 활성화하기 위한 제1 카운팅 동작이 수행되고, 상기 제1 카운팅 동작에 의해 상기 n 개의 페이지가 순차적으로 활성화되는 반도체 메모리 장치의 동작방법.
  8. 제7항에 있어서,
    상기 서브 페이지를 선택하기 위한 제2 카운팅 동작이 수행되고, 어느 하나의 선택된 페이지의 복수의 서브 페이지들이 순차적으로 선택되는 반도체 메모리 장치의 동작방법.
  9. 제7항에 있어서,
    상기 서브 페이지를 선택하기 위한 제2 카운팅 동작이 수행되고, 상기 n 개의 페이지가 순차적으로 활성화되는 동안 각 페이지의 제1 서브 페이지가 선택되며, 다음의 n 개의 페이지가 순차적으로 활성화되는 동안 각 페이지의 제2 서브 페이지가 선택되는 반도체 메모리 장치의 동작방법.
  10. 제1항에 있어서,
    상기 제1 커맨드는, 상기 반도체 메모리 장치의 리프레쉬 동작을 위한 리프레쉬 커맨드인 반도체 메모리 장치의 동작방법.
  11. 제10항에 있어서,
    상기 메모리 어레이는 다수의 페이지를 포함하는 뱅크를 구비하고, 각각의 페이지는 다수의 서브 페이지들을 포함하며,
    상기 리프레쉬 커맨드에 응답하여 어느 하나의 페이지가 활성화되고, 상기 활성화된 페이지의 어느 하나의 서브 페이지에 대해 에러 정정된 데이터를 재기록하는 반도체 메모리 장치의 동작방법.
  12. 다수의 페이지를 포함하는 뱅크를 구비하고, 각각의 페이지는 다수의 서브 페이지들을 포함하는 메모리 어레이;
    외부로부터의 커맨드를 디코딩하여 내부 제어신호를 생성하는 커맨드 디코더;
    상기 메모리 어레이의 리드 데이터에 대한 에러 검출 및 정정 동작을 수행하는 에러 정정회로; 및
    외부로부터의 제1 커맨드에 응답하여, 상기 메모리 어레이의 페이지를 활성화하고 상기 활성화된 페이지의 적어도 하나의 서브 페이지를 선택하며 상기 선택된 서브 페이지의 에러 검출 결과에 따라 에러 정정된 데이터를 상기 서브 페이지에 재기록하도록 제어하는 스크러빙 리프레쉬 관리부를 구비하는 반도체 메모리 장치.
  13. 제12항에 있어서, 상기 스크러빙 리프레쉬 관리부는,
    상기 제1 커맨드의 수신에 응답하여 상기 다수의 페이지들 중 어느 하나를 활성화하기 위한 카운팅 동작을 수행하는 제1 카운터; 및
    상기 제1 커맨드의 수신에 응답하여 상기 다수의 서브 페이지들 중 적어도 하나를 선택하기 위한 카운팅 동작을 수행하는 제2 카운터를 구비하는 반도체 메모리 장치.
  14. 제13항에 있어서,
    상기 메모리 어레이는 n 개의 페이지들을 포함하고(단, n은 2 이상의 정수),
    상기 제1 카운터의 카운팅 동작에 의해 상기 n 개의 페이지들이 순차적으로 활성화되고,
    상기 제2 카운터의 카운팅 동작에 의해 활성화된 페이지의 적어도 하나의 서브 페이지가 선택되는 반도체 메모리 장치.
  15. 제12항에 있어서,
    스크러빙 리프레쉬 모드를 설정하기 위한 MRS(Mode Register Set, MRS) 코드를 저장하는 MRS부를 더 구비하고,
    초기 구동시 MRS 코드가 상기 스크러빙 리프레쉬 관리부로 제공되는 반도체 메모리 장치.
  16. 제15항에 있어서,
    상기 스크러빙 리프레쉬 모드 설정시, 상기 스크러빙 리프레쉬 관리부는 상기 제1 커맨드 수신에 대응하여 상기 서브 페이지 선택, 에러 검출 및 재기록 동작이 일련하게 수행되도록 제어하며,
    상기 스크러빙 리프레쉬 모드 차단시, 상기 스크러빙 리프레쉬 관리부는 상기 제1 커맨드 수신에 대응하여 상기 서브 페이지 선택, 에러 검출 및 재기록 동작이 스킵되도록 제어하는 반도체 메모리 장치.
  17. 메모리 어레이;
    외부로부터의 커맨드를 디코딩하여 내부 제어신호를 생성하는 커맨드 디코더;
    상기 메모리 어레이의 리드 데이터에 대한 에러 검출 및 정정 동작을 수행하는 에러 정정회로; 및
    상기 에러 검출 결과를 수신하고, 상기 메모리 어레이의 동일 위치의 데이터에 대해 적어도 2 회 이상 에러가 발생하였지를 판단하여 상기 메모리 어레이에 대한 하드 페일(hard-fail)의 존재 여부를 검출하는 하드 페일 검출부를 구비하는 반도체 메모리 장치.
  18. 제17항에 있어서,
    상기 하드 페일의 검출 결과에 따라, 상기 메모리 어레이의 결함 영역을 리던던시 영역으로 대체하는 리페어 로직을 더 구비하는 반도체 메모리 장치.
  19. 제17항에 있어서,
    상기 하드 페일의 검출 결과에 따라, 상기 메모리 어레이로 제공되는 어레이 전압의 레벨을 변동하는 어레이 전압 생성부를 더 구비하는 반도체 메모리 장치.
  20. 제17항에 있어서,
    외부로부터의 제1 커맨드에 응답하여, 상기 메모리 어레이의 페이지를 활성화하고 상기 활성화된 페이지의 적어도 하나의 서브 페이지를 선택하며 상기 선택된 서브 페이지의 에러 검출 결과에 따라 에러 정정된 데이터를 상기 서브 페이지에 재기록하도록 제어하는 스크러빙 리프레쉬 관리부를 더 구비하고,
    상기 제1 커맨드에 응답하여 수행된 에러 검출 결과에 기반하여 상기 하드 페일(hard-fail)의 존재 여부가 검출되는 반도체 메모리 장치.
  21. 제17항에 있어서, 상기 하드 페일 검출부는,
    상기 하드 페일의 존재가 검출된 경우, 외부의 콘트롤러의 동작을 홀드시키기 위한 홀드 신호를 발생하는 반도체 메모리 장치.
  22. 외부의 콘트롤러와 통신하는 반도체 메모리 장치의 동작방법에 있어서,
    상기 콘트롤러로부터 제1 커맨드를 수신하는 단계;
    상기 제1 커맨드에 응답하여 메모리 어레이의 데이터를 리드하는 단계;
    상기 리드된 데이터에 대해 에러를 1차 검출하는 단계;
    상기 1차 검출 단계에서 에러가 검출된 경우, 상기 에러가 검출된 위치의 데이터에 대해 에러를 2차 검출하는 단계; 및
    상기 2차 검출 단계에서 에러가 재검출된 경우, 상기 외부의 콘트롤러에 홀드 명령을 제공하고, 상기 에러가 재검출된 영역을 리페어하는 단계를 구비하는 반도체 메모리 장치의 동작방법.
  23. 제22항에 있어서,
    상기 1차 검출 단계에서 에러가 검출된 경우, 해당 데이터에 대한 에러 정정하는 단계 및 에러 정정된 데이터를 상기 메모리 어레이에 재기록하는 단계를 더 구비하고,
    상기 2차 검출 단계는, 상기 재기록된 데이터에 대해 에러를 검출하는 반도체 메모리 장치의 동작방법.
  24. 모듈 보드; 및
    상기 모듈 보드 상에 장착되는 하나 이상의 제1 메모리 칩을 구비하고,
    상기 제1 메모리 칩은,
    다수의 페이지를 포함하는 뱅크를 구비하고, 각각의 페이지는 다수의 서브 페이지들을 포함하는 메모리 어레이;
    외부의 콘트롤러로부터의 커맨드를 디코딩하여 내부 제어신호를 생성하는 커맨드 디코더;
    상기 메모리 어레이의 리드 데이터에 대한 에러 검출 및 정정 동작을 수행하는 에러 정정회로; 및
    상기 콘트롤러로부터의 제1 커맨드에 응답하여, 상기 메모리 어레이의 페이지를 활성화하고 상기 활성화된 페이지의 적어도 하나의 서브 페이지를 선택하며 상기 선택된 서브 페이지의 에러 검출 결과에 따라 에러 정정된 데이터를 상기 서브 페이지에 재기록하도록 제어하는 스크러빙 리프레쉬 관리부를 구비하는 메모리 모듈.
  25. 제24항에 있어서,
    상기 모듈 보드 상에 장착되며, 데이터의 에러 검출/정정을 위한 패리티를 저장하는 하나 이상의 제2 메모리 칩을 더 구비하고,
    상기 콘트롤러로부터의 제2 커맨드에 응답하여 상기 데이터 및 패리티를 리드하고 이를 상기 콘트롤러로 제공하는 메모리 모듈.
  26. 제24항에 있어서,
    상기 패리티는 상기 데이터에 대한 싱글비트 에러를 정정하기 위한 패리티 값을 가지며,
    상기 에러 정정회로는 멀티비트 에러를 정정하기 위한 코드를 이용하는 메모리 모듈.
  27. 다수의 메모리 칩이 장착된 메모리 모듈의 동작방법에 있어서,
    메모리 칩 별로 테스트를 수행하여 오토 리프레쉬 주기를 설정하는 단계;
    상기 오토 리프레쉬 주기 정보를 불휘발성 형태로 저장하는 단계;
    상기 메모리 모듈이 초기 구동될 때 상기 오토 리프레쉬 주기 정보를 외부의 콘트롤러로 제공하는 단계;
    상기 오토 리프레쉬 주기 정보에 대응하는 주기에 따라 상기 외부의 콘트롤러로부터 오토 리프레쉬 커맨드를 수신하는 단계;
    오토 리프레쉬를 수행하는 단계;
    외부의 콘트롤러로부터의 리드 커맨드에 응답하여 데이터 리드 동작을 수행하는 단계; 및
    상기 리드된 데이터에 대한 에러 검출 및 정정 동작을 수행하는 단계를 구비하는 메모리 모듈의 동작방법.
  28. 제27항에 있어서,
    상기 오토 리프레쉬 주기 정보는 상기 메모리 칩 각각의 내부에 저장되는 메모리 모듈의 동작방법.
  29. 제27항에 있어서,
    상기 오토 리프레쉬 주기 정보는 상기 메모리 모듈의 SPD에 저장되는 메모리 모듈의 동작방법.
  30. 콘트롤러 및
    하나 이상의 반도체 메모리 장치를 구비하고,
    상기 반도체 메모리 장치는,
    다수의 페이지를 포함하는 뱅크를 구비하고, 각각의 페이지는 다수의 서브 페이지들을 포함하는 메모리 어레이;
    상기 콘트롤러로부터의 커맨드를 디코딩하여 내부 제어신호를 생성하는 커맨드 디코더;
    상기 메모리 어레이의 리드 데이터에 대한 에러 검출 및 정정 동작을 수행하는 에러 정정회로; 및
    상기 콘트롤러로부터의 제1 커맨드에 응답하여, 상기 메모리 어레이의 페이지를 활성화하고 상기 활성화된 페이지의 적어도 하나의 서브 페이지를 선택하며 상기 선택된 서브 페이지의 에러 검출 결과에 따라 에러 정정된 데이터를 상기 서브 페이지에 재기록하도록 제어하는 스크러빙 리프레쉬 관리부를 구비하는 메모리 시스템.
KR1020110055744A 2011-06-09 2011-06-09 에러 정정회로를 구비한 온 칩 데이터 스크러빙 장치 및 방법 KR101873526B1 (ko)

Priority Applications (7)

Application Number Priority Date Filing Date Title
KR1020110055744A KR101873526B1 (ko) 2011-06-09 2011-06-09 에러 정정회로를 구비한 온 칩 데이터 스크러빙 장치 및 방법
US13/241,205 US9053813B2 (en) 2011-06-09 2011-09-23 Method and apparatus for refreshing and data scrubbing memory device
TW101107250A TWI579844B (zh) 2011-06-09 2012-03-05 記憶體器件之更新與資料清理方法以及其裝置
DE201210207562 DE102012207562A1 (de) 2011-06-09 2012-05-07 Verfahren und Managementeinheit zum Auffrischen sowie Speicherbauelement
JP2012131050A JP6291157B2 (ja) 2011-06-09 2012-06-08 エラー訂正回路を具備したオンチップ・データ・スクラビング装置及び方法
CN2012101878137A CN102820049A (zh) 2011-06-09 2012-06-08 用于刷新以及数据清理存储器件的方法和装置
US14/699,201 US9600362B2 (en) 2011-06-09 2015-04-29 Method and apparatus for refreshing and data scrubbing memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110055744A KR101873526B1 (ko) 2011-06-09 2011-06-09 에러 정정회로를 구비한 온 칩 데이터 스크러빙 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20120136674A true KR20120136674A (ko) 2012-12-20
KR101873526B1 KR101873526B1 (ko) 2018-07-02

Family

ID=47294147

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110055744A KR101873526B1 (ko) 2011-06-09 2011-06-09 에러 정정회로를 구비한 온 칩 데이터 스크러빙 장치 및 방법

Country Status (5)

Country Link
US (2) US9053813B2 (ko)
JP (1) JP6291157B2 (ko)
KR (1) KR101873526B1 (ko)
CN (1) CN102820049A (ko)
TW (1) TWI579844B (ko)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101653999B1 (ko) * 2015-04-02 2016-09-09 서울시립대학교 산학협력단 낸드 플래시 기반의 스토리지 시스템 및 데이터 보존 강화 방법
KR20160120935A (ko) 2015-04-09 2016-10-19 경희대학교 산학협력단 메모리, 방사능 환경에서 메모리의 동작 방법, 전력제어 장치 및 전력제어 방법
KR20170004322A (ko) * 2015-07-02 2017-01-11 에스케이하이닉스 주식회사 반도체 장치 및 그 동작 방법
US9632856B2 (en) 2013-02-26 2017-04-25 Samsung Electronics Co., Ltd. Semiconductor memory devices including error correction circuits and methods of operating the semiconductor memory devices
KR20170056823A (ko) * 2015-11-16 2017-05-24 삼성전자주식회사 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 메모리 시스템의 동작 방법
KR20170056825A (ko) * 2015-11-16 2017-05-24 삼성전자주식회사 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 이의 동작 방법
US10096345B2 (en) 2016-08-23 2018-10-09 SK Hynix Inc. Semiconductor devices
US10153028B2 (en) 2017-01-06 2018-12-11 SK Hynix Inc. Semiconductor devices
KR20190137281A (ko) * 2018-06-01 2019-12-11 삼성전자주식회사 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 반도체 메모리 장치의 동작 방법
US10671478B2 (en) 2016-11-28 2020-06-02 Samsung Electronics Co., Ltd. Scrubbing controllers of semiconductor memory devices, semiconductor memory devices and methods of operating the same
US10761747B2 (en) 2017-11-08 2020-09-01 SK Hynix Inc. Memory device and memory system including the same
US10936409B2 (en) 2018-04-09 2021-03-02 SK Hynix Inc. Memory system and operating method of the memory system
US10964406B2 (en) 2017-11-24 2021-03-30 SK Hynix Inc. Methods of scrubbing errors and semiconductor modules using the same
US11615861B2 (en) 2020-12-29 2023-03-28 Samsung Electronics Co., Ltd. Semiconductor memory devices and methods of operating semiconductor memory devices

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101873526B1 (ko) 2011-06-09 2018-07-02 삼성전자주식회사 에러 정정회로를 구비한 온 칩 데이터 스크러빙 장치 및 방법
WO2013068862A1 (en) * 2011-11-11 2013-05-16 International Business Machines Corporation Memory module and memory controller for controlling a memory module
US11024352B2 (en) 2012-04-10 2021-06-01 Samsung Electronics Co., Ltd. Memory system for access concentration decrease management and access concentration decrease method
US20140219007A1 (en) * 2013-02-07 2014-08-07 Nvidia Corporation Dram with segmented page configuration
US9454451B2 (en) * 2013-02-11 2016-09-27 Arm Limited Apparatus and method for performing data scrubbing on a memory device
KR20160038034A (ko) * 2013-07-27 2016-04-06 넷리스트 인코포레이티드 로컬 동기화를 갖는 메모리 모듈
US9529673B2 (en) * 2013-07-30 2016-12-27 Taiwan Semiconductor Manufacturing Company, Ltd. Memory device having adjustable refresh period and method of operating the same
CN105684089A (zh) 2013-08-28 2016-06-15 慧与发展有限责任合伙企业 刷新速率调整
US9281046B2 (en) * 2013-10-08 2016-03-08 Advanced Micro Devices, Inc. Data processor with memory controller for high reliability operation and method
KR102144367B1 (ko) * 2013-10-22 2020-08-14 삼성전자주식회사 반도체 패키지 및 이의 제조 방법
US9274888B2 (en) 2013-11-15 2016-03-01 Qualcomm Incorporated Method and apparatus for multiple-bit DRAM error recovery
AR099040A1 (es) 2014-01-09 2016-06-22 Qualcomm Inc Sistemas y métodos de comunicación de canal de retorno de la memoria dinámica de acceso aleatorio (dram)
US10248331B2 (en) 2014-07-23 2019-04-02 Hewlett Packard Enterprise Development Lp Delayed read indication
KR102189780B1 (ko) * 2014-08-11 2020-12-11 삼성전자주식회사 반도체 메모리 장치 및 이를 포함하는 메모리 시스템
KR102210327B1 (ko) 2014-08-21 2021-02-01 삼성전자주식회사 에러 알림 기능이 있는 메모리 장치
KR102204390B1 (ko) 2014-09-12 2021-01-18 삼성전자주식회사 빠른 불량 셀 구제 동작의 메모리 장치
KR102252376B1 (ko) 2014-12-08 2021-05-14 삼성전자주식회사 셀 특성 플래그를 이용하여 리프레쉬 동작을 제어하는 메모리 장치
RU2682843C1 (ru) * 2015-03-10 2019-03-21 Тосиба Мемори Корпорейшн Устройство памяти и система памяти
CN106527959B (zh) * 2015-09-10 2019-07-26 阿里巴巴集团控股有限公司 刷新磁盘输入输出请求的处理方法及设备
KR20170045806A (ko) * 2015-10-20 2017-04-28 삼성전자주식회사 반도체 메모리 장치 및 이의 동작 방법
US10504578B2 (en) 2015-10-25 2019-12-10 Hewlett Packard Enterprise Development Lp Volatile memory device with automatic lower power state
US10193576B2 (en) * 2015-10-30 2019-01-29 Toshiba Memory Corporation Memory system and memory device
US9880900B2 (en) 2015-12-08 2018-01-30 Nvidia Corporation Method for scrubbing and correcting DRAM memory data with internal error-correcting code (ECC) bits contemporaneously during self-refresh state
US9823964B2 (en) 2015-12-08 2017-11-21 Nvidia Corporation Method for memory scrub of DRAM with internal error correcting code (ECC) bits during either memory activate and/or precharge operation
US10049006B2 (en) 2015-12-08 2018-08-14 Nvidia Corporation Controller-based memory scrub for DRAMs with internal error-correcting code (ECC) bits contemporaneously during auto refresh or by using masked write commands
WO2017111887A1 (en) 2015-12-21 2017-06-29 Hewlett Packard Enterprise Development Lp Memory throttling
US10467020B2 (en) * 2016-02-26 2019-11-05 Toshiba Memory Corporation Memory device, and information-processing device
US10628248B2 (en) * 2016-03-15 2020-04-21 International Business Machines Corporation Autonomous dram scrub and error counting
KR102636039B1 (ko) * 2016-05-12 2024-02-14 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 읽기 방법 및 카피백 방법
EP3553662A1 (en) * 2016-05-28 2019-10-16 Advanced Micro Devices, Inc. Intergral post package repair
US10042700B2 (en) * 2016-05-28 2018-08-07 Advanced Micro Devices, Inc. Integral post package repair
US20180061484A1 (en) * 2016-08-29 2018-03-01 Apple Inc. Systems and Methods for Memory Refresh Timing
KR102508132B1 (ko) 2016-10-31 2023-03-09 주식회사 멤레이 자기 저항 메모리 모듈 및 이를 포함하는 컴퓨팅 디바이스
US10042702B2 (en) * 2016-11-07 2018-08-07 SK Hynix Inc. Memory device transferring data between master and slave device and semiconductor package including the same
US9865323B1 (en) * 2016-12-07 2018-01-09 Toshiba Memory Corporation Memory device including volatile memory, nonvolatile memory and controller
KR20180106494A (ko) * 2017-03-20 2018-10-01 에스케이하이닉스 주식회사 반도체장치
KR102243582B1 (ko) * 2017-04-24 2021-04-23 에스케이하이닉스 주식회사 반도체장치
KR20180129233A (ko) * 2017-05-26 2018-12-05 에스케이하이닉스 주식회사 리프레시 동작을 제어하는 반도체 장치 및 이를 포함하는 메모리 시스템
US10482943B2 (en) 2017-06-28 2019-11-19 Qualcomm Incorporated Systems and methods for improved error correction in a refreshable memory
US20190066760A1 (en) * 2017-08-23 2019-02-28 Nanya Technology Corporation Dram and method for operating the same
KR102415867B1 (ko) * 2017-11-29 2022-07-04 에스케이하이닉스 주식회사 메모리 셀의 결함을 제거하기 위한 메모리 시스템 및 그의 동작 방법
US11004495B2 (en) * 2017-12-18 2021-05-11 SK Hynix Inc. Data storage device and operating method thereof
KR102393427B1 (ko) * 2017-12-19 2022-05-03 에스케이하이닉스 주식회사 반도체장치 및 반도체시스템
US10635327B2 (en) * 2018-01-31 2020-04-28 Western Digital Technologies, Inc. Data availability during memory inaccessibility
KR102457630B1 (ko) * 2018-04-17 2022-10-24 에스케이하이닉스 주식회사 반도체 장치 및 이를 포함하는 메모리 모듈
CN110838314A (zh) * 2018-08-17 2020-02-25 北京兆易创新科技股份有限公司 一种存储数据的加固方法及装置
KR102583266B1 (ko) * 2018-10-24 2023-09-27 삼성전자주식회사 스토리지 모듈, 스토리지 모듈의 동작 방법, 및 스토리지 모듈을 제어하는 호스트의 동작 방법
KR102649315B1 (ko) 2018-12-03 2024-03-20 삼성전자주식회사 휘발성 메모리 장치를 포함하는 메모리 모듈 및 이를 포함하는 메모리 시스템
KR102145688B1 (ko) * 2019-06-18 2020-08-19 윈본드 일렉트로닉스 코포레이션 메모리 장치
JP7016332B2 (ja) 2019-07-05 2022-02-04 華邦電子股▲ふん▼有限公司 半導体メモリ装置
CN112216335B (zh) * 2019-07-09 2022-12-02 长鑫存储技术有限公司 存储器故障处理方法和装置
WO2021010941A1 (en) * 2019-07-12 2021-01-21 Hewlett-Packard Development Company, L.P. Data updates for controllers
KR102139888B1 (ko) * 2019-07-23 2020-07-31 윈본드 일렉트로닉스 코포레이션 반도체 메모리 장치
KR20210026201A (ko) * 2019-08-29 2021-03-10 삼성전자주식회사 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 이의 리페어 제어 방법
US11010243B2 (en) 2019-09-09 2021-05-18 Winbond Electronics Corp. Memory apparatus with error bit correction in data reading period
KR20210088917A (ko) 2020-01-07 2021-07-15 삼성전자주식회사 반도체 메모리 장치 및 이를 포함하는 메모리 시스템 및 반도체 메모리 장치의 동작 방법
US20200176072A1 (en) * 2020-02-04 2020-06-04 Intel Corporation Dynamic random access memory built-in self-test power fail mitigation
EP3913634A1 (en) 2020-05-22 2021-11-24 Nxp B.V. Memory testing by reading and verifying again memory locations after read access
CN111679792B (zh) * 2020-06-04 2023-04-07 四川九州电子科技股份有限公司 一种嵌入式设备NandFlash I/O数据监测系统及方法
US20220051744A1 (en) * 2020-08-17 2022-02-17 Mediatek Inc. Memory controller with adaptive refresh rate controlled by error bit information
WO2022058768A1 (en) * 2020-09-21 2022-03-24 Micron Technology, Inc Memory apparatus and method for operating the same
KR20220039432A (ko) 2020-09-22 2022-03-29 삼성전자주식회사 반도체 메모리 장치 및 반도체 메모리 장치의 동작 방법
US11579964B2 (en) 2020-12-22 2023-02-14 Micron Technology, Inc. Parity data in dynamic random access memory (DRAM)
KR20230012274A (ko) 2021-07-15 2023-01-26 삼성전자주식회사 메모리 장치 동작 방법, 메모리 컨트롤러의 동작 방법 및 메모리 시스템
US11605441B1 (en) * 2021-08-30 2023-03-14 Samsung Electronics Co., Ltd. Memory systems having memory devices therein with enhanced error correction capability and methods of operating same
TWI792754B (zh) * 2021-12-09 2023-02-11 力晶積成電子製造股份有限公司 具有高資料頻寬的記憶體裝置

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4369510A (en) * 1980-07-25 1983-01-18 Honeywell Information Systems Inc. Soft error rewrite control system
JPS60225954A (ja) * 1984-04-25 1985-11-11 Nec Corp 記憶装置
JPS61123957A (ja) * 1984-11-21 1986-06-11 Nec Corp 記憶装置
JPH087995B2 (ja) * 1985-08-16 1996-01-29 富士通株式会社 ダイナミツク半導体記憶装置のリフレツシユ方法および装置
JPH01248399A (ja) * 1988-03-28 1989-10-03 Mitsubishi Electric Corp 半導体記憶装置
EP0424301A3 (en) * 1989-10-18 1992-09-16 International Business Machines Corporation Overlapped data scrubbing with data refreshing
US5127014A (en) 1990-02-13 1992-06-30 Hewlett-Packard Company Dram on-chip error correction/detection
US6751698B1 (en) * 1999-09-29 2004-06-15 Silicon Graphics, Inc. Multiprocessor node controller circuit and method
DE60126533T2 (de) * 2000-06-19 2007-11-22 Broadcom Corp., Irvine Vermittlungsstelle mit einer Speicherverwaltungeinheit zur Verbesserung der Flusssteurung
JP2002056671A (ja) 2000-08-14 2002-02-22 Hitachi Ltd ダイナミック型ramのデータ保持方法と半導体集積回路装置
US6658610B1 (en) * 2000-09-25 2003-12-02 International Business Machines Corporation Compilable address magnitude comparator for memory array self-testing
US7051264B2 (en) 2001-11-14 2006-05-23 Monolithic System Technology, Inc. Error correcting memory and method of operating same
US6838331B2 (en) * 2002-04-09 2005-01-04 Micron Technology, Inc. Method and system for dynamically operating memory in a power-saving error correction mode
US6957308B1 (en) * 2002-07-11 2005-10-18 Advanced Micro Devices, Inc. DRAM supporting different burst-length accesses without changing the burst length setting in the mode register
KR100502659B1 (ko) * 2002-10-31 2005-07-22 주식회사 하이닉스반도체 저전력 셀프 리프레쉬 장치를 구비한 반도체 메모리 장치
US6781908B1 (en) 2003-02-19 2004-08-24 Freescale Semiconductor, Inc. Memory having variable refresh control and method therefor
US7320100B2 (en) * 2003-05-20 2008-01-15 Cray Inc. Apparatus and method for memory with bit swapping on the fly and testing
US8205146B2 (en) * 2005-07-21 2012-06-19 Hewlett-Packard Development Company, L.P. Persistent error detection in digital memory
US20070022244A1 (en) * 2005-07-25 2007-01-25 Honeywell International Inc. Methods and systems for refresh and error scrubbing of dynamic memory devices
KR100855578B1 (ko) * 2007-04-30 2008-09-01 삼성전자주식회사 반도체 메모리 소자의 리프레시 주기 제어회로 및 리프레시주기 제어방법
CN101796497B (zh) 2007-07-18 2012-03-21 富士通株式会社 存储器刷新装置和存储器刷新方法
US8826097B2 (en) * 2011-03-30 2014-09-02 Arm Limited Memory scrubbing
KR101873526B1 (ko) 2011-06-09 2018-07-02 삼성전자주식회사 에러 정정회로를 구비한 온 칩 데이터 스크러빙 장치 및 방법
US11092567B2 (en) * 2017-03-21 2021-08-17 International Business Machines Corporation Biosensor electrode having three-dimensional structured sensing surfaces

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9632856B2 (en) 2013-02-26 2017-04-25 Samsung Electronics Co., Ltd. Semiconductor memory devices including error correction circuits and methods of operating the semiconductor memory devices
US10684793B2 (en) 2013-02-26 2020-06-16 Samsung Electronics Co., Ltd. Semiconductor memory devices including error correction circuits and methods of operating the semiconductor memory devices
KR101653999B1 (ko) * 2015-04-02 2016-09-09 서울시립대학교 산학협력단 낸드 플래시 기반의 스토리지 시스템 및 데이터 보존 강화 방법
KR20160120935A (ko) 2015-04-09 2016-10-19 경희대학교 산학협력단 메모리, 방사능 환경에서 메모리의 동작 방법, 전력제어 장치 및 전력제어 방법
KR20170004322A (ko) * 2015-07-02 2017-01-11 에스케이하이닉스 주식회사 반도체 장치 및 그 동작 방법
US9589676B2 (en) 2015-07-02 2017-03-07 SK Hynix Inc. Semiconductor device and operating method thereof
KR20170056823A (ko) * 2015-11-16 2017-05-24 삼성전자주식회사 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 메모리 시스템의 동작 방법
KR20170056825A (ko) * 2015-11-16 2017-05-24 삼성전자주식회사 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 이의 동작 방법
US10096345B2 (en) 2016-08-23 2018-10-09 SK Hynix Inc. Semiconductor devices
US10671478B2 (en) 2016-11-28 2020-06-02 Samsung Electronics Co., Ltd. Scrubbing controllers of semiconductor memory devices, semiconductor memory devices and methods of operating the same
US10153028B2 (en) 2017-01-06 2018-12-11 SK Hynix Inc. Semiconductor devices
US10761747B2 (en) 2017-11-08 2020-09-01 SK Hynix Inc. Memory device and memory system including the same
US10964406B2 (en) 2017-11-24 2021-03-30 SK Hynix Inc. Methods of scrubbing errors and semiconductor modules using the same
US10936409B2 (en) 2018-04-09 2021-03-02 SK Hynix Inc. Memory system and operating method of the memory system
KR20190137281A (ko) * 2018-06-01 2019-12-11 삼성전자주식회사 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 반도체 메모리 장치의 동작 방법
US11615861B2 (en) 2020-12-29 2023-03-28 Samsung Electronics Co., Ltd. Semiconductor memory devices and methods of operating semiconductor memory devices

Also Published As

Publication number Publication date
JP6291157B2 (ja) 2018-03-14
JP2012256414A (ja) 2012-12-27
US20120317352A1 (en) 2012-12-13
US9053813B2 (en) 2015-06-09
US20150248329A1 (en) 2015-09-03
US9600362B2 (en) 2017-03-21
CN102820049A (zh) 2012-12-12
TWI579844B (zh) 2017-04-21
TW201250682A (en) 2012-12-16
KR101873526B1 (ko) 2018-07-02

Similar Documents

Publication Publication Date Title
KR101873526B1 (ko) 에러 정정회로를 구비한 온 칩 데이터 스크러빙 장치 및 방법
US11646090B2 (en) DRAM retention test method for dynamic error correction
US8588017B2 (en) Memory circuits, systems, and modules for performing DRAM refresh operations and methods of operating the same
US9087614B2 (en) Memory modules and memory systems
US8495438B2 (en) Technique for memory imprint reliability improvement
US10049006B2 (en) Controller-based memory scrub for DRAMs with internal error-correcting code (ECC) bits contemporaneously during auto refresh or by using masked write commands
US7483319B2 (en) Method and system for reducing volatile memory DRAM power budget
US9823964B2 (en) Method for memory scrub of DRAM with internal error correcting code (ECC) bits during either memory activate and/or precharge operation
US8117519B2 (en) Memory apparatus and method using erasure error correction to reduce power consumption
US9880900B2 (en) Method for scrubbing and correcting DRAM memory data with internal error-correcting code (ECC) bits contemporaneously during self-refresh state
US20080189481A1 (en) Methods and systems for storing data based on a reliability requirement
KR20170054182A (ko) 반도체 장치
CN114077384A (zh) 存储器装置和用于控制存储器装置的刷新操作的方法
KR20210088917A (ko) 반도체 메모리 장치 및 이를 포함하는 메모리 시스템 및 반도체 메모리 장치의 동작 방법
CN114078510A (zh) 半导体存储器装置和操作半导体存储器装置的方法
US20230142474A1 (en) Memory device and memory system including the same
KR102076067B1 (ko) 메모리 모듈 및 메모리 시스템
CN114253759A (zh) 半导体存储器件和操作半导体存储器件的方法
US11664084B2 (en) Memory device on-die ECC data

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant