KR102398209B1 - 반도체 메모리 장치, 메모리 시스템 그리고 그것의 리프레쉬 방법 - Google Patents

반도체 메모리 장치, 메모리 시스템 그리고 그것의 리프레쉬 방법 Download PDF

Info

Publication number
KR102398209B1
KR102398209B1 KR1020170146808A KR20170146808A KR102398209B1 KR 102398209 B1 KR102398209 B1 KR 102398209B1 KR 1020170146808 A KR1020170146808 A KR 1020170146808A KR 20170146808 A KR20170146808 A KR 20170146808A KR 102398209 B1 KR102398209 B1 KR 102398209B1
Authority
KR
South Korea
Prior art keywords
refresh
dram
time
control logic
data
Prior art date
Application number
KR1020170146808A
Other languages
English (en)
Other versions
KR20190051313A (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 KR1020170146808A priority Critical patent/KR102398209B1/ko
Priority to US16/032,361 priority patent/US10692561B2/en
Priority to DE102018121929.6A priority patent/DE102018121929A1/de
Priority to CN201811218388.7A priority patent/CN109754832B/zh
Priority to JP2018204999A priority patent/JP2019087297A/ja
Publication of KR20190051313A publication Critical patent/KR20190051313A/ko
Application granted granted Critical
Publication of KR102398209B1 publication Critical patent/KR102398209B1/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/40615Internal triggering or timing of refresh, e.g. hidden refresh, self refresh, pseudo-SRAMs
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • 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/40603Arbitration, priority and concurrent access to memory cells for read/write or refresh operations
    • 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/40626Temperature related aspects of refresh operations
    • 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/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/408Address circuits
    • G11C11/4087Address decoders, e.g. bit - or word line decoders; Multiple line decoders
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1063Control signal output circuits, e.g. status or busy flags, feedback command signals
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/70SSIS architectures; Circuits associated therewith
    • H04N25/76Addressed sensors, e.g. MOS or CMOS sensors
    • H04N25/77Pixel circuitry, e.g. memories, A/D converters, pixel amplifiers, shared circuits or shared components
    • H04N25/772Pixel circuitry, e.g. memories, A/D converters, pixel amplifiers, shared circuits or shared components comprising A/D, V/T, V/F, I/T or I/F converters

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)

Abstract

본 발명의 실시 예에 따른 반도체 메모리 장치는, 데이터를 저장하는 복수의 디램 셀들을 포함하는 셀 어레이, 그리고 외부로부터 제공되는 접근 시나리오 정보에 따라 상기 복수의 디램 셀들을 리프레쉬하기 위한 리프레쉬 제어 로직을 포함하되, 상기 리프레쉬 제어 로직은 상기 데이터를 상기 복수의 디램 셀들에 기입하는 규칙에 대응하는 접근 시나리오 정보 및 상기 복수의 디램 셀들의 리텐션 특성을 참조하여 상기 복수 디램 셀들의 리프레쉬 시간을 결정하고, 결정된 상기 리프레쉬 시간에 따라 상기 복수의 디램 셀들을 리프레쉬한다.

Description

반도체 메모리 장치, 메모리 시스템 그리고 그것의 리프레쉬 방법{SEMICONDUCTOR MEMORY DEVICE, MEMORY SYSTME, AND REFRESH METHOD THEREOF}
본 발명은 반도체 메모리 장치에 관한 것으로 더욱 상세하게는 규정된 시나리오 범위에서 동작하는 반도체 메모리 장치, 메모리 시스템, 그리고 그것의 리프레쉬 방법에 관한 것이다.
사용자들의 고성능 요구에 따라 다양한 전자 시스템에 사용되는 반도체 메모리 장치의 용량 및 속도는 비약적으로 증가하고 있다. 특히, 휘발성 메모리 장치의 대표적인 예로 디램(Dynamic Random Access Memory; 이하, DRAM)을 들 수 있다. 디램(DRAM)은 셀 커패시터(Cell Capacitor)에 충전되는 전하(Charge) 형태로 데이터를 저장한다. 셀 커패시터에 저장된 전하는 시간의 경과에 따라 누설되므로, 디램(DRAM)은 유한 데이터 보유(Finite Data Retention) 특성을 갖는다.
유한 데이터 보유 특성에 따라, 디램(DRAM)에서는 저장된 데이터를 유지하기 위하여 리프레쉬(Refresh) 동작을 수행한다. 즉, 디램은 리프레쉬 동작을 통해서 셀 커패시터에 저장된 데이터를 유지할 수 있다. 따라서, 디램에 접근하는 호스트는 디램이 주기적으로 또는 필요시 리프레쉬를 수행하도록 관리하고 제어해야 한다. 디램은 호스트에서 제공되는 리프레쉬 명령에 따라 주어진 주기로 메모리 셀들을 리프레쉬한다. 리프레쉬를 제어하기 위해서 호스트의 시스템 복잡도가 증가한다. 디램도 외부 명령어를 디코딩하여 리프레쉬를 수행하기 위해서는 명령어 디코더나 타이머와 같은 구성들을 구비해야 한다.
특정 시스템에서는, 디램에 랜덤하게 접근하는 것이 아니라, 주어진 시나리오에 기반하여 정해진 시간에 디램에 데이터를 읽고 쓰는 접근 방식을 사용하고 있다. 예를 들면, 디램이 이미지 데이터를 일시 저장하는 프레임 버퍼로 사용되는 경우, 이미지 처리 프로세서는 랜덤하게 디램에 접근하는 것이 아니라 정해진 시나리오에 기반하여 규칙적으로 디램에 접근한다.
시나리오 기반으로 디램에 접근하는 경우, 디램은 추가적인 외부의 리프레쉬 명령어없이 리프레쉬 가능한 시점에 리프레쉬 동작을 수행할 수 있다. 이러한 시나리오 기반으로 접근되는 디램의 경우, 리프레쉬 동작의 효율성을 높여 시스템의 단순화 및 저전력화를 구현할 수 있다.
본 발명의 목적은 시나리오 기반으로 접근되는 반도체 메모리 장치에서 리프레쉬 효율을 높일 수 있는 반도체 메모리 장치 및 리프레쉬 방법을 제공하는데 있다.
상기 목적을 달성하기 위한 본 발명의 실시 예에 따른 반도체 메모리 장치는, 데이터를 저장하는 복수의 디램 셀들을 포함하는 셀 어레이, 그리고 외부로부터 제공되는 접근 시나리오 정보에 따라 상기 복수의 디램 셀들을 리프레쉬하기 위한 리프레쉬 제어 로직을 포함하되, 상기 리프레쉬 제어 로직은 상기 데이터를 상기 복수의 디램 셀들에 기입하는 규칙에 대응하는 접근 시나리오 정보 및 상기 복수의 디램 셀들의 리텐션 특성을 참조하여 상기 복수 디램 셀들의 리프레쉬 시간을 결정하고, 결정된 상기 리프레쉬 시간에 따라 상기 복수의 디램 셀들을 리프레쉬한다.
상기 목적을 달성하기 위한 본 발명의 실시 예에 따른 메모리 시스템은, 접근 시나리오에 따라 버퍼 메모리에 데이터 리텐션 시간 동안 데이터를 기록하고 읽어내는 호스트, 그리고 상기 버퍼 메모리로 제공되며, 상기 접근 시나리오의 시간 정보를 제공받아 상기 데이터 리텐션 시간 동안 상기 호스트가 접근을 중지하는 비동작 구간에서 상기 데이터가 기록된 메모리 영역을 셀프 리프레쉬하는 디램을 포함하되, 상기 호스트는 상기 시간 정보와 리프레쉬 인에이블 신호를 사용하여 상기 디램의 셀프 리프레쉬 동작을 제어한다.
상기 목적을 달성하기 위한 본 발명의 실시 예에 따른 접근 시나리오 기반으로 데이터가 기입되고 독출되는 반도체 메모리 장치의 리프레쉬 방법은, 외부로부터 상기 접근 시나리오에 따른 데이터 리텐션 시간 및 상기 데이터 리텐션 시간에 포함되는 비동작 시간의 길이를 수신하는 단계, 상기 비동작 시간과 메모리 셀들이 특성 파라미터를 사용하여 상기 데이터가 기입된 메모리 영역의 리프레쉬 시간을 계산하는 단계, 그리고 상기 계산된 리프레쉬 시간에 따라 상기 비동작 시간 동안 상기 메모리 영역을 리프레쉬하는 단계를 포함한다.
이상의 본 발명의 실시 예에 따르면, 시나리오 기반으로 접근되는 반도체 메모리 장치의 리프레쉬 효율을 높일 수 있으며, 리프레쉬 동작에 소요되는 비용 절감이 가능하다.
도 1은 본 발명의 실시 예에 따른 메모리 시스템을 보여주는 블록도이다.
도 2는 호스트가 시나리오 기반으로 디램에 접근하는 방식을 예시적으로 보여주는 도면이다.
도 3은 도 1의 호스트의 예를 보여주는 블록도이다.
도 4는 본 발명의 실시 예에 따른 시나리오 기반의 리프레쉬 동작을 수행하는 디램을 보여주는 블록도이다.
도 5는 도 4의 리프레쉬 제어 로직의 예시적인 구성을 보여주는 블록도이다.
도 6a 및 도 6b는 도 5에 도시된 리프레쉬 모드 레지스터의 예시적인 구성을 보여주는 표이다.
도 7은 도 4의 리프레쉬 제어 로직의 동작을 간략히 보여주는 순서도이다.
도 8은 본 발명의 메모리 시스템에서 호스트와 디램간의 상호 작용을 예시적으로 보여주는 도면이다.
도 9는 본 발명의 다른 실시 예에 따른 시나리오 기반의 리프레쉬 동작을 수행하는 디램을 보여주는 블록도이다.
도 10은 도 9의 리프레쉬 제어 로직의 일 예를 보여주는 블록도이다.
도 11은 도 9의 리프레쉬 제어 로직의 다른 예를 보여주는 블록도이다.
도 12는 도 9의 리프레쉬 제어 로직의 또 다른 예를 보여주는 블록도이다.
도 13은 본 발명의 다른 실시 예에 따른 메모리 시스템을 보여주는 블록도이다.
도 14는 도 13의 디램의 일 예를 보여주는 블록도이다.
도 15는 도 14의 리프레쉬 제어 로직의 동작을 간략히 보여주는 순서도이다.
도 16은 본 발명의 반도체 메모리 장치를 포함하는 휴대용 단말기를 예시적으로 보여주는 블록도이다.
앞의 일반적인 설명 및 다음의 상세한 설명 모두 예시적이라는 것이 이해되어야 하며, 청구된 발명의 부가적인 설명이 제공되는 것으로 여겨져야 한다. 참조 부호들이 본 발명의 바람직한 실시 예들에 상세히 표시되어 있으며, 그것의 예들이 참조 도면들에 표시되어 있다. 가능한 어떤 경우에도, 동일한 참조 번호들이 동일한 또는 유사한 부분을 참조하기 위해서 설명 및 도면들에 사용된다.
이하에서는, 동기식 디램(SDRAM)이 본 발명의 특징 및 기능을 설명하기 위한 반도체 장치의 예로서 사용될 것이다. 하지만, 이 기술 분야에 정통한 사람은 여기에 기재된 내용에 따라 본 발명의 다른 이점들 및 성능을 쉽게 이해할 수 있을 것이다. 본 발명은 다른 실시 예들을 통해 또한, 구현되거나 적용될 수 있을 것이다. 게다가, 상세한 설명은 본 발명의 범위, 기술적 사상 그리고 다른 목적으로부터 상당히 벗어나지 않고 관점 및 응용에 따라 수정되거나 변경될 수 있다.
도 1은 본 발명의 실시 예에 따른 메모리 시스템을 간략히 보여주는 블록도이다. 도 1을 참조하면, 본 발명의 실시 예에 따른 메모리 시스템은 호스트(10)와 디램(100)를 포함한다.
호스트(10)는 디램(100)을 버퍼, 워킹 메모리, 또는 메인 메모리의 용도로 사용할 수 있다. 특히, 호스트(10)는 시나리오 기반으로 디램(100)에 접근한다. 예를 들면, 호스트(10)는 고정된 용량의 데이터를 기입하고, 저장된 데이터를 정해진 시간 동안만 유지하는 방식으로 디램(100)에 접근할 수 있다. 즉, 호스트(10)는 디램(100)을 시나리오 기반의 버퍼 메모리(Buffer memory)로 사용할 수 있다. 모바일폰, 디지털 TV용 애플리케이션 프로세서(AP), FRC(Frame Rate Control)용 장치 등과 같은 시스템에 사용되는 프레임 버퍼(frame buffer)는 이러한 시나리오 기반의 접근 방식에 따라 제어된다.
호스트(10)는 내부적으로 디램(100)에 접근하기 위한 고정된 디램 접근 시나리오(15)를 포함할 수 있다. 호스트(10)의 디램(100)으로의 접근은 디램 접근 시나리오(15) 규칙에 따라 이루어질 것이다. 호스트(10)는 디램 접근 시나리오(15)에 근거한 디램(100)에 접근 시나리오 정보(Access Scenario Information: 이하, ASI)를 디램(100)에 전달할 수 있다. 접근 시나리오 정보(ASI)는 다양한 메시지 방식으로 제공될 수도 있지만, 모드 레지스터 쓰기(Mode Register Write: MRW) 형태로 디램(100)에 전달될 수 있다.
디램(100)은 호스트(10)로부터 제공된 접근 시나리오 정보(ASI)에 따라 셀 어레이(110)의 리프레쉬 동작(Refresh operation)을 수행할 수 있다. 접근 시나리오 정보(ASI)가 기입된 모드 레지스터(미도시됨)를 참조하여, 디램(100)의 리프레쉬 제어 로직(170)은 셀 어레이(110)를 리프레쉬하기 위한 최적 리프레쉬 시간을 계산한다. 리프레쉬 시간은 복수의 행들이 리프레쉬되는 시간 간격을 의미한다. 리프레쉬 제어 로직(170)은 리프레쉬가 가능한 시간 구간에서 계산된 최적 리프레쉬 시간에 따라 메모리 셀들의 리프레쉬를 수행할 것이다.
도 2는 호스트가 시나리오 기반으로 디램에 접근하는 방식을 예시적으로 보여주는 도면이다. 도 2를 참조하면, 호스트(10)는 디램(100)에 T2 시간까지 데이터를 기입하고, 이후 T3 시간까지 기입된 데이터를 독출해야 한다. 디램(100)이 이미지 처리 장치의 프레임 버퍼와 같은 방식으로 구동될 때 이러한 접근 시나리오에 따라 데이터의 입출력이 수행될 것이다.
먼저, 호스트(10)는 디램(100)에 T2 시간까지 데이터를 기입한다. 예를 들면, 센싱된 이미지 데이터가 T2 시간 동안 디램(100)에 기입될 것이다. 이때, 쓰기 동작에서의 디램(100)의 대역폭(BW2)은 읽기 구간에서의 대역폭(BW1)보다 큰 것을 알 수 있다. 쓰기가 완료되면, T3 시간까지 이미지 데이터의 처리를 위해 이미지 처리 프로세서(ISP)와 같은 장치에서 디램(100)에 기입된 데이터를 읽어낼 것이다. 따라서, T3 시간까지는 디램(100)에 기입된 데이터는 유지되어야 한다. 따라서, 하나의 프레임 데이터를 버퍼링해야 하는 T0 시간에서 T3 시간까지는, 디램 리프레쉬 동작이 수행되어야 할 것이다. 기입된 데이터 단위가 디램에 유지되어야 하는 T0 시간에서 T3 시간을 데이터 리텐션 시간(tRETN)이라 칭하기로 한다.
쓰기 구간(T0~T2)의 일부 구간(T0~T1)에서의 호스트(10)가 디램(100)에 데이터를 기입하는 양상이 하단에 세부적으로 도시되어 있다. 쓰기 구간(T0~t1)에서는 실질적으로 데이터가 디램(100)에 공급되며, 디램(100)의 메모리 셀들에 데이터가 저장된다. 이어서 호스트(10)가 디램 접근이 아닌 다른 처리 동작을 수행하기 위해 제공되는 비동작 구간(NOP, t1~t2)이 이어진다. 그리고 다시 쓰기 구간(t2~t3)에서는 호스트(10)는 디램(100)에 데이터를 기입할 것이다. 이어서, 비동작 구간(NOP, t3~t3) 동안 데이터의 쓰기가 중지된 후, t4 시점에서 데이터 쓰기는 재개된다.
여기서, 디램(100)에 데이터가 기입되는 쓰기 구간의 크기(ΔTW)의 크기와 비동작 구간(ΔTN)은 고정적인 값으로 제공된다. 즉, 일정한 기간 동안 데이터를 기입하고, 일정한 기간 동안 데이터의 기입이 중지된다. 이러한 비동작 구간은 읽기 동작에서도 동일하게 제공된다.
호스트(10)는 하나의 데이터 단위(예를 들면, 하나의 이미지 프레임이나 블록 데이터)를 디램(10)에 기입한 후에 유지되어야 하는 데이터 리텐션 시간(tRETN)의 길이 정보를 가지고 있다. 또한, 호스트(10)는 쓰기 동작 또는 읽기 동작이 중지되는 비동작 구간(NOP)의 길이 정보도 가지고 있다. 이러한 정보는 접근 시나리오 정보(ASI)로서 디램(100)에 제공될 수 있다. 디램(100)은 접근 시나리오 정보(ASI)를 사용하여 데이터 리텐션 시간(tRETN) 내에 리프레쉬 가능 여부, 리프레쉬 시간 등을 계산할 수 있다.
도 3은 도 1의 호스트의 예를 보여주는 블록도이다. 도 3을 참조하면, 호스트(10)는 이미지를 센싱하여 처리하는 이미지 처리 시스템으로 제공될 수 있다. 호스트(10)는 이미지 센서(16), 이미지 신호 프로세서(17), 그리고 디램 컨트롤러(18)를 포함할 수 있다.
이미지 센서(16)는 액티브 픽셀 센서(APS: Active Pixel Sensor) 어레이(11), 행 디코더(12), 상관 이중 샘플러(13), 아날로그-디지털 컨버터(14), 그리고 타이밍 컨트롤러(15)를 포함할 수 있다. 액티브 픽셀 센서 어레이(11)는 2차원적으로 배열된 복수의 픽셀들을 포함한다. 각각의 픽셀들은 광신호를 전기적 신호로 변환한다. 액티브 픽셀 센서 어레이(11)는 구동 신호들에 응답하여 각각의 픽셀들에 의해서 센싱된 전기적 신호를 복수의 칼럼 라인을 통해서 상관 이중 샘플러(13)에 제공한다. 행 디코더(12)는 타이밍 컨트롤러(17)의 제어에 따라 액티브 픽셀 센서 어레이(11)의 어느 하나의 행을 선택할 수 있다. 상관 이중 샘플러(13)는 타이밍 컨트롤러(17)의 제어에 따라 샘플링된 칼럼들 각각의 기준 신호(REF)/영상 신호(IMG)를 복수의 칼럼 단위로 아날로그-디지털 컨버터(14)에 전달할 것이다. 아날로그-디지털 컨버터(14)는 상관 이중 샘플러(13)로부터 출력되는 각각의 칼럼들에 대한 상관 이중 샘플링 신호(REF/IMG)를 디지털 신호로 변환하여 출력한다.
이미지 신호 프로세서(17)는 이미지 센서(16)에서 생성된 이미지 데이터를 처리한다. 이미지 신호 프로세서(17)는 이미지 센서(16)에서 출력되는 미가공 데이터(Raw Data) 형태의 이미지 데이터를 처리한다. 이미지 신호 프로세서(17)는 렌즈 등의 광학계 보정처리나 이미지 센서의 편차에서 발생하는 결함 보정 등과 같은 화소 단위의 처리를 수행할 수 있다. 이미지 신호 프로세서(17)는 이미지 센서(16)에 포함되는 IP 형태로 구성될 수도 있을 것이다.
디램 컨트롤러(18)는 이미지 센서(16)로부터 출력되는 이미지 데이터를 디램(100)에 기입하고, 디램(100)에 저장된 데이터를 독출하여 이미지 신호 프로세서(17)에 제공한다. 예를 들면, 디램 컨트롤러(18)는 프레임 단위의 이미지 데이터(Image data)를 디램(100)에 저장한 후에, 다시 이미지 신호 프로세서(17)에 전달할 것이다. 이러한 이미지 데이터의 저장과 독출 동작은 도 2의 설명과 같이 시나리오 기반으로 수행된다. 즉, 하나의 프레임에 대한 쓰기와 읽기는 정해진 시간 동안 수행된다.
디램 컨트롤러(18)는 이러한 시나리오 기반의 접근을 위해 디램(100)에 접근 시나리오 정보(ASI)를 제공한다. 그러면, 디램(100)은 접근 시나리오 정보(ASI)에 따라 리프레쉬 동작을 수행할 수 있다. 만일, 접근 시나리오 정보(ASI) 만으로 디램(100) 내부에서 리프레쉬 주기를 결정하기 어려운 경우, 이러한 상태를 모드 레지스터 읽기(MRR) 정보로 디램 컨트롤러(18)에 제공될 것이다. 디램 컨트롤러(18)는 디램(100)의 리프레쉬를 인에이블하는 리프레쉬 인에이블 신호(Ref_EN)를 디램(100)에 제공할 수도 있을 것이다. 리프레쉬 인에이블 신호(Ref_EN)는 예를 들면 디램(100)으로의 접근이 존재하지 않는 비동작 구간(NOP)에서 활성화될 수 있다.
도 4는 본 발명의 실시 예에 따른 시나리오 기반의 리프레쉬 동작을 수행하는 디램을 보여주는 블록도이다. 도 4를 참조하면, 디램(100)은 셀 어레이(110), 행 디코더(120), 어드레스 버퍼(130), 열 디코더(140), 감지 증폭기(150), 데이터 버퍼(160), 리프레쉬 제어 로직(170), 명령어 디코더(180), 그리고 모드 레지스터 셋(190)을 포함할 수 있다.
셀 어레이(110)는 복수의 메모리 셀들(MCs)이 각각 워드 라인(WL)들과 비트 라인(BL)들에 연결되어 행 방향과 열 방향으로 배열된다. 각각의 메모리 셀들은 셀 커패시터(Cell Capacitor)와 액세스 트랜지스터(Access Transistor)로 구성될 수 있다. 액세스 트랜지스터의 게이트는 행 방향으로 배열된 워드 라인(WL)들 중 어느 하나에 연결된다. 액세스 트랜지스터의 일단은 열 방향으로 배열되어 있는 비트 라인(BL) 혹은 상보 비트 라인(BLB)에 연결된다. 액세스 트랜지스터의 타단은 셀 커패시터에 연결될 수 있다.
행 디코더(120)는 입력되는 어드레스(ADD)에 응답하여 액세스될 메모리 셀의 워드 라인을 선택한다. 행 디코더(120)는 입력되는 어드레스(ADD)를 디코딩하여 해당 워드 라인을 인에이블(Enable)한다. 또한, 행 디코더(120)는 셀프 리프레쉬 동작 모드에서는 어드레스 카운터(미도시됨)로부터 발생되는 행 어드레스를 디코딩하여 해당 워드 라인을 인에이블할 수 있다. 열 디코더(140)는 데이터가 입력 혹은 출력될 메모리 셀의 비트 라인을 선택한다.
어드레스 버퍼(130)는 외부에서 입력되는 어드레스(ADD)를 일시 저장한다. 어드레스 버퍼(130)는 저장된 어드레스를 행 디코더(120) 또는 열 디코더(140)에 공급한다. 어드레스 버퍼(130)에 의해서 외부 시그널링 방식의 어드레스(ADD)가 반도체 메모리 장치(100)의 내부의 시그널링 방식으로 변환될 수 있다.
감지 증폭기(150)는 선택된 비트 라인으로 선택된 메모리 셀에 데이터를 기입하거나, 이미 기입된 데이터를 센싱한다. 감지 증폭기(150)는 메모리 셀에 저장된 데이터를 비트 라인을 통해서 센싱하여 출력할 수 있다. 또한, 감지 증폭기(150)는 입력되는 데이터를 선택된 메모리 셀에 저장하기 위한 구성들을 더 포함할 수 있다. 감지 증폭기(150)는 리프레쉬 동작시 메모리 셀에 저장된 데이터를 재기입할 수 있다. 감지 증폭기(150)는 본 발명의 리프레쉬 제어 로직(170)의 제어에 따라 선택된 메모리 셀들에 대한 리프레쉬 동작을 수행할 수 있다. 즉, 감지 증폭기(150)는 리프레쉬를 위해서 선택된 메모리 셀들의 데이터를 증폭하여 재기입할 수 있다. 이러한 리프레쉬 동작을 위해 감지 증폭기(150)는 도시되지 않았지만, 비트 라인들(BL, BLB) 중에 저전위의 비트 라인을 방전하는 N 감지 증폭기(NSA)와 비트 라인들(BL, BLB) 중에 고전위의 비트 라인을 충전하는 P 감지 증폭기(PSA)를 포함할 수 있다.
리프레쉬 제어 로직(170)은 호스트(10)로부터 제공되는 접근 시나리오 정보(ASI)를 사용하여 셀 어레이(110)의 리프레쉬 동작을 수행한다. 리프레쉬 제어 로직(170)은 명령어 디코더(180)로부터의 제어없이 디램(100)의 리프레쉬 동작을 수행할 수 있다. 리프레쉬 제어 로직(170)은 접근 시나리오 정보(ASI)로부터 호스트(10)의 접근 시나리오에서 규정된 데이터 리텐션 시간(tRETN)을 인식할 수 있다. 그리고 리프레쉬 제어 로직(170)은 접근 시나리오 정보(ASI)로부터 데이터 리텐션 시간(tRETN) 내에 존재하는 비동작 구간들(ΔTN)의 길이와 수를 파악하여 전체 비동작 구간의 길이를 계산할 수 있다. 그러면, 모든 워드 라인들이 리프레쉬되기 위한 워드 라인별 리프레쉬 시간(tRC)이 결정될 수 있다. 그리고 결정된 값을 이용하여 리프레쉬 클록(Ref_CLK)의 주파수가 결정될 수 있다.
리프레쉬 제어 로직(170)은 행들의 수와 셀 특성을 참조하여 하나의 행이 리프레쉬되는 최적의 리프레쉬 시간(tRC_opt)을 결정할 수 있다. 그리고 리프레쉬 제어 로직(170)은 결정된 최적의 리프레쉬 시간(tRC_opt)에 따라 비동작 구간에서 리프레쉬를 실행할 것이다. 즉, 리프레쉬 제어 로직(170)은 리프레쉬 인에이블 신호(Ref_EN)가 활성화되는 구간에서 결정된 최적의 리프레쉬 시간(tRC_opt)에 따라 메모리 셀들을 리프레쉬할 것이다. 만일, 호스트(10)로부터 제공되는 접근 시나리오 정보(ASI)에서 리프레쉬 가능한 시간이 모든 행들을 리프레쉬하기에 부족한 경우, 리프레쉬 제어 로직(170)은 외부에 리프레쉬를 수행할 시간이 부족함을 모드 레지스터 읽기(MRR) 방식으로 전달할 수 있다.
명령어 디코더(180)는 외부로부터 인가되는 신호들(/RAC, /CAS, /WE)을 참조하여 입력되는 명령어를 판단한다. 명령어 디코더(180)는 외부로부터 제공되는 명령어에 응답하여 데이터를 셀 어레이(110)에 기입하거나 독출할 수 있다. 또한, 명령어 디코더(180)는 외부에서 제공되는 명령어와 어드레스에 따라 모드 셋 레지스터(190)에 데이터를 기입할 수 있다. 하지만, 본 발명의 명령어 디코더(180)는 오토 리프레쉬 명령을 인식하고 리프레쉬 동작을 지시하는 디코딩 부분은 구비하지 않을 수 있다. 일반적으로 오토 리프레쉬 동작(Auto Refresh Operation)은 제어 신호들(/RAS, /CAS, /WE)의 조합을 통해서 입력될 것이다. 그러면, 명령어 디코더(180)에 의해서 리프레쉬 동작이 판단되고, 리프레쉬 명령이 리프레쉬 제어 로직(170)에 제공되어야 한다. 하지만, 본 발명의 명령어 디코더(180)는 이러한 오토 리프레쉬 명령을 디코딩하거나 수행하는 구성이나 기능은 포함할 필요가 없다. 시나리오 기반의 셀프 리프레쉬가 리프레쉬 제어 로직(170)에 의해서 수행되기 때문이다.
이상에서 도시된 본 발명의 실시 예에 따른 디램(100)은 외부로부터 제공되는 접근 시나리오 정보(ASI)를 이용하여 선택된 메모리 영역의 각 행들을 리프레쉬하기 위한 리프레쉬 시간(tRC)을 결정할 수 있다. 그리고 결정된 리프레쉬 시간에 따라 리프레쉬 인에이블 신호(Ref_EN)가 활성화되는 비동작 구간 동안 리프레쉬 동작을 수행할 수 있다. 따라서, 본 발명의 디램(100)에서 명령어 기반의 오토 리프레쉬 동작을 위한 구성이나 기능은 구비될 필요가 없다.
도 5는 도 4의 리프레쉬 제어 로직의 예시적인 구성을 간략히 보여주는 블록도이다. 도 5를 참조하면, 리프레쉬 제어 로직(170)은 리프레쉬 모드 레지스터(171), 리프레쉬 클록 컨트롤러(173), 그리고 리프레쉬 클록(Ref_CLK)을 생성하는 오실레이터(175)를 포함할 수 있다.
리프레쉬 모드 레지스터(171)는 리프레쉬 타임 레지스터(172)와 페일 비트 모드 레지스터(174)를 포함할 수 있다. 리프레쉬 타임 레지스터(172)는 접근 시나리오 정보(ASI)에 포함되는 셀프 리프레쉬 동작의 수행이 가능한 총 리프레쉬 시간(tREF_tot)을 저장한다. 예를 들면, 데이터 리텐션 시간(tRETN)에 포함되는 비동작 구간의 총 길이 정보가 총 리프레쉬 시간(tREF_tot)일 수 있다.
페일 비트 모드 레지스터(174)는 허용되는 페일 비트 수(nFB)에 따른 셀의 리프레쉬 주기(tREF)를 제공하기 위한 레지스터이다. 즉, 디램(100) 내부에 구비되는 에러 정정 블록(ECC)의 정정 능력에 따라 각 행들에 대한 리프레쉬 주기가 제공될 수 있다. 만일, 에러 정정 능력이 상대적으로 큰 경우, 각 행들에 대한 리프레쉬 주기는 증가할 수 있을 것이다. 결과적으로 허용되는 페일 비트의 수를 참조하면 각 행들에 수행되는 리프레쉬의 회수를 줄일 수 있을 것이다.
리프레쉬 클록 컨트롤러(173)는 리프레쉬 모드 레지스터(171)로부터 제공되는 총 리프레쉬 시간(tREF_tot) 또는 페일 비트 수(nFB)를 참조하여 각 행들이 리프레쉬되는 시간(tRC)을 결정한다. 즉, 행들 전체의 리프레쉬 횟수와 주기가 결정되면, 리프레쉬 클록 컨트롤러(173)는 오실레이터(175)로부터 제공되는 리프레쉬 클록(Ref_CLK)의 주파수를 조정할 수 있다. 따라서, 리프레쉬 클록 컨트롤러(173)는 최적의 리프레쉬 동작을 위한 조정된 리프레쉬 클록(Ref_CLK')을 생성할 수 있을 것이다.
도 6a 및 도 6b는 도 5에 도시된 리프레쉬 모드 레지스터의 예시적인 구성을 보여주는 표이다. 도 6a는 리프레쉬 타임 레지스터(172)를, 그리고 도 6b는 페일 비트 모드 레지스터(174)를 예시적으로 보여준다.
도 6a를 참조하면, 리프레쉬 타임 레지스터(172)에는 호스트(10)로부터 제공되는 총 리프레쉬 시간(tREF_tot)에 대응하는 레지스터 값이 저장된다. 예를 들면, 호스트(10)는 비동작 구간(NOP)의 총 길이에 대응하는 총 리프레쉬 시간(tREF_tot)이 8ms 이상이고 256ms보다 짧은 경우, 리프레쉬 타임 레지스터(172)에 '00'을 기입할 것이다. 호스트(10)는 비동작 구간(NOP)의 총 길이에 대응하는 총 리프레쉬 시간(tREF_tot)이 4ms 이상이고 8ms보다 짧은 경우, 리프레쉬 타임 레지스터(172)에 '01'을 기입할 수 있다. 그리고 호스트(10)는 비동작 구간(NOP)의 총 길이에 대응하는 총 리프레쉬 시간(tREF_tot)이 2ms 이상이고 4ms보다 짧은 경우, 리프레쉬 타임 레지스터(172)에 '10'을 기입할 것이다. 하지만, 호스트(10)는 비동작 구간의 총 길이에 대응하는 총 리프레쉬 시간(tREF_tot)이 2ms보다 짧은 경우, 리프레쉬 타임 레지스터(172)에 데이터를 기입하지 않을 수 있다. 이 경우, 또 다른 방식의 리프레쉬 동작이 수행될 수 있다.
도 6b는 페일 비트 모드 레지스터(174)이다. 페일 비트 모드 레지스터(174)는 허용 가능한 페일 비트의 수(nFB)에 따른 리프레쉬 주기(tREF)를 나타낸다. 만일, 페일 비트가 발생하지 않아야 하는 경우, 셀의 리프레쉬 주기(tREF)는 32ms를 나타내고, 호스트(10)는 페일 비트 모드 레지스터(174)에 '00'을 기입할 수 있다. 하지만, 10비트 이하의 페일 비트가 허용되는 경우라면, 리프레쉬 주기(tREF)는 128ms로 설정될 수 있고, 페일 비트 모드 레지스터(174)에 '01'을 기입할 수 있다. 하지만, 이 경우 디램(100)은 에러 정정 블록(ECC)을 사용하는 셀프 리프레쉬를 수행해야 할 것이다. 만일, 허용 가능한 에러 비트의 수가 11-비트보다 크고 100-비트 이하인 경우라면, 리프레쉬 주기(tREF)는 256ms로 설정될 수 있고, 페일 비트 모드 레지스터(174)에 '10'을 기입할 수 있다. 하지만, 디램(100) 내부적으로는 셀프 리프레쉬가 수행되어야 한다. 또한, 허용 가능한 에러 비트의 수가 100-비트 이상인 경우라면, 리프레쉬 주기(tREF)는 256ms 이상으로 설정될 수 있고, 페일 비트 모드 레지스터(174)에 '11'을 기입할 수 있다.
도 7은 도 4의 리프레쉬 제어 로직의 동작을 간략히 보여주는 순서도이다. 도 7을 참조하면, 리프레쉬 제어 로직(170)은 호스트(10)로부터 제공되는 접근 시나리오 정보(ASI)를 사용하여 셀프 리프레쉬를 위한 리프레쉬 시간(tRC)을 구할 수 있다.
S110 단계에서, 리프레쉬 제어 로직(170)은 호스트(10)로부터 접근 시나리오 정보(ASI)가 전달되는 모니터링한다. 이러한 접근 시나리오 정보(ASI)의 모니터링 동작은 디램(100)의 부팅이나 메모리 시스템의 부팅 또는 초기화 동작시에 시작될 수 있다. 호스트(10)로부터의 접근 시나리오 정보(ASI)가 수신되지 못한 것으로 판단되면(No 방향), 리프레쉬 제어 로직(170)은 접근 시나리오 정보(ASI)에 대한 모니터링 동작을 지속한다. 반면, 호스트(10)로부터의 접근 시나리오 정보(ASI)가 수신된 것으로 판단되면(Yes 방향), 절차는 S120 단계로 이동한다.
S120 단계에서, 리프레쉬 제어 로직(170)은 호스트(10)로부터 제공된 접근 시나리오 정보(ASI)를 참조하여 메모리 셀 또는 각 행을 리프레쉬하기 위한 리프레쉬 시간(tRC)을 계산할 수 있다. 예를 들면, 접근 시나리오 정보(ASI)를 통해서 확인되는 총 리프레쉬 시간(tREF_tot)을 행들의 수로 나누면, 각 행들을 모두 최소 1회 리프레쉬할 수 있는 리프레쉬 시간(tRC)이 계산될 수 있다.
S130 단계에서, 리프레쉬 시간(tRC)이 기준 시간(Reference time)과 비교된다. 리프레쉬 시간(tRC)이 기준 시간(Reference time)보다 긴 경우(Yes 방향), 디램(100)에서 셀프 리프레쉬를 수행할 수 있음을 의미한다. 따라서, 절차는 리프레쉬를 진행하기 위한 S140 단계로 이동한다. 반면, 리프레쉬 시간(tRC)이 기준 시간(Reference time) 이하인 경우(No 방향), 리프레쉬해야 할 행들의 수가 셀프 리프레쉬 능력을 초과한 것을 의미한다. 따라서, 총 리프레쉬 시간(tREF_tot) 이내에 모든 행들에 대한 리프레쉬가 불가함을 디램(100) 외부로 전달하기 위해, 절차는 S170 단계로 이동한다.
S140 단계에서, 리프레쉬 제어 로직(170)은 리프레쉬를 수행할 수 있는 비동작 구간 동안에 수행할 리프레쉬 회수를 결정한다. 즉, 리프레쉬 제어 로직(170)은 총 리프레쉬 시간(tREF_tot) 동안 최소한의 리프레쉬 시간(tRC) 또는 최적의 리프레쉬 시간(tRC_opt)을 결정할 수 있을 것이다. 그리고 리프레쉬 제어 로직(170)은 결정된 리프레쉬 시간(tRC)에 따라 리프레쉬 클록이 생성되도록 리프레쉬 동작 파라미터를 설정할 것이다.
S150 단계에서, 리프레쉬 제어 로직(170)은 호스트(10)로부터 리프레쉬 인에이블 신호(Ref_EN)를 모니터링한다. 예를 들면, 리프레쉬 인에이블 신호(Ref_EN)는 비 비동작 구간(NOP)에 활성화될 수 있다. 리프레쉬 제어 로직(170)은 리프레쉬 인에이블 신호(Ref_EN)가 활성화되지 않았으면, 리프레쉬 인에이블 신호(Ref_EN)의 활성화를 지속적으로 모니터링할 것이다. 반면, 리프레쉬 인에이블 신호(Ref_EN)가 활성화된 것으로 검출되면, 절차는 S160 단계로 이동한다.
S160 단계에서, 리프레쉬 제어 로직(170)은 리프레쉬 인에이블 신호(Ref_EN)가 활성화되는 구간 동안 계산된 리프레쉬 시간(tRC)에 따른 셀프 리프레쉬를 수행할 것이다.
S170 단계에서, 리프레쉬 제어 로직(170)은 주어진 총 리프레쉬 시간(tREF_tot) 동안 모든 행들을 최소한 1회 리프레쉬하는 것이 불가능함을 외부에 알리기 위한 신호를 제공한다. 예를 들면, 모드 레지스터 읽기(MRR)를 통해서 호스트(10)에 리프레쉬가 불가함을 알려줄 수 있다.
이상에서는 본 발명의 리프레쉬 제어 로직(170)이 리프레쉬 명령어없이 접근 시나리오 정보(ASI)를 사용하여 리프레쉬 시간(tRC)을 구하고, 리프레쉬를 수행하는 절차가 설명되었다. 하지만, 리프레쉬 제어 로직(170)의 기능은 설명된 예에만 국한되지 않는다. 앞서 설명했듯이 리프레쉬 제어 로직(170)이 허용 가능한 페일 비트의 크기를 추가로 사용하여 리프레쉬 시간(tRC)을 계산하고, 계산된 리프레쉬 시간(tRC)에 따라 셀프 리프레쉬 동작을 수행할 수 있을 것이다.
도 8은 본 발명의 메모리 시스템에서 호스트와 디램간의 상호 작용을 예시적으로 보여주는 도면이다. 도 8을 참조하면, 호스트(10)는 모드 레지스터 쓰기(MRW)를 통해서 접근 시나리오 정보(ASI)를 디램(100)에 총 리프레쉬 시간(tREF_tot)을 알려줄 수 있다. 그리고 디램(100)은 총 리프레쉬 시간(tREF_tot)을 기반으로 최적의 리프레쉬 시간(tRC)을 계산할 수 있다.
S11 단계에서, 호스트(10)는 디램(100)에 모드 레지스터 쓰기(MRW)를 통해서 접근 시나리오 정보(ASI)를 전달한다. 접근 시나리오 정보(ASI)에는 디램(100)에서 데이터가 유지되어야 할 데이터 리텐션 시간(tRETN)과, 데이터 리텐션 시간(tRETN) 동안 리프레쉬의 수행이 가능한 총 리프레쉬 시간(tREF_tot) 정보가 포함될 수 있다.
S12 단계에서, 디램(100)은 총 리프레쉬 시간(tREF_tot)을 이용하여 리프레쉬 시간(tRC)을 계산한다.
S13 단계에서, 디램(100)은 리프레쉬 시간(tRC)이 기준 시간보다 짧은지 검출할 수 있다. 만일, 리프레쉬 시간(tRC)의 최소값이 기준 시간보다 짧은 경우(No 방향), 디램(100)의 셀프 리프레쉬를 통해서는 모든 행들에 대한 리프레쉬를 수행할 수 없음을 의미한다. 따라서, S17 단계로 이동하여 디램(100)은 호스트(10)에 셀프 리프레쉬를 할 수 없음을 알리는 모드 레지스터 읽기(MRR) 값을 제공한다. 하지만, 리프레쉬 시간(tRC)의 최소값이 기준 시간보다 같거나 긴 경우(Yes 방향), 디램(100)의 셀프 리프레쉬를 통해서는 모든 행들은 최소 1회의 리프레쉬를 수행할 수 있음을 의미한다. 따라서, 절차는 S14 단계로 이동한다.
S14 단계에서, 디램(100)은 리프레쉬 시간(tRC)의 계산이 완료되었음을 호스트(10)에 알려주는 응답을 전송한다.
S15 단계에서, 호스트(10)는 디램(100)에 리프레쉬 인에이블 신호(Ref_EN)를 전달한다.
S16 단계에서, 디램(100)은 리프레쉬 인에이블 신호(Ref_EN)가 활성화된 상태에서, 리프레쉬 시간(tRC)에 따라 셀프 리프레쉬를 수행할 수 있다.
이상에서는 리프레쉬 명령어없이 호스트(10)에서 제공되는 접근 시나리오 정보(ASI)를 기반으로 리프레쉬 시간(tRC)을 계산하고, 최적의 셀프 리프레쉬 동작을 수행하는 디램(100)의 동작시 설명되었다.
도 9는 본 발명의 다른 실시 예에 따른 시나리오 기반의 리프레쉬 동작을 수행하는 디램을 보여주는 블록도이다. 도 9를 참조하면, 디램(200)은 셀 어레이(210), 행 디코더(220), 어드레스 버퍼(230), 열 디코더(240), 감지 증폭기(250), 데이터 버퍼(260), 에러 정정 블록(265), 리프레쉬 제어 로직(270), 명령어 디코더(280), 모드 레지스터 셋(290), 그리고 온도 센서(295)를 포함할 수 있다. 여기서, 셀 어레이(210), 행 디코더(220), 어드레스 버퍼(230), 열 디코더(240), 감지 증폭기(250), 데이터 버퍼(260), 명령어 디코더(280), 모드 레지스터 셋(290) 등은 앞서 설명된 도 4의 그것들과 실질적으로 동일하다. 따라서, 반복되는 설명은 생략한다.
일반적으로, 메모리 셀의 리프레쉬 주기(tREF)는 온도에 영향을 받는다. 따라서, 외부에서 제공되는 접근 시나리오 정보(ASI)를 사용하여 리프레쉬 시간(tRC)을 결정할 때, 디램(200)의 구동 온도를 고려하면 보다 효율적인 리프레쉬가 가능하다. 더불어, 앞서 설명된 도 6b의 페일 비트 모드 레지스터(174)의 허용가능한 페일 비트의 수에 따라 리프레쉬 주기는 조정될 수 있다. 즉, 에러 정정 능력에 따라 각 행들의 리프레쉬 주기를 조정할 수 있음을 의미한다.
리프레쉬 제어 로직(270)은 호스트(10)로부터 제공되는 접근 시나리오 정보(ASI)를 사용하여 셀 어레이(210)의 리프레쉬 동작을 수행한다. 리프레쉬 제어 로직(270)은 명령어 디코더(280)로부터의 제어없이 디램(200)의 리프레쉬 동작을 수행할 수 있다. 리프레쉬 제어 로직(270)은 접근 시나리오 정보(ASI)로부터 호스트(10)의 접근 시나리오에서 규정된 데이터 리텐션 시간(tRETN)을 인식할 수 있다. 그리고 리프레쉬 제어 로직(270)은 접근 시나리오 정보(ASI)로부터 데이터 리텐션 시간(tRETN) 내에 존재하는 비동작 구간(NOP)들의 길이와 수를 파악하여 전체 비동작 구간의 길이를 검출할 수 있다. 그러면, 모든 워드 라인들이 리프레쉬되기 위한 워드 라인별 리프레쉬 시간이 결정될 수 있다. 그리고 결정된 값을 이용하여 리프레쉬 클록(Ref_CLK)의 주파수가 결정될 수 있다.
에러 정정 블록(265)은 디램(200)에 내장되는 온칩 에러 검출 및 정정 블록으로 제공된다. 에러 정정 블록(265)은 데이터 버퍼(260)를 통해서 입력되는 데이터를 ECC 인코딩하여 반환할 수 있다. 에러 정정 블록(265)은 데이터 버퍼(260)를 통해서 외부로 출력되는 데이터를 ECC 디코딩할 수 있다. 에러 정정 블록(265)은 예를 들면, 입력되는 데이터를 복수의 부호어 단위로 분할하고, 각각의 부호어(Codeword)에는 에러를 검출할 수 있는 패리티를 생성하여 부가하는 식으로 ECC 인코딩을 수행할 수 있다. 에러 정정 블록(265)은 ECC 디코딩시 패리티를 사용하여 에러의 존재 여부를 검출한다. 예를 들면, BCH 부호(Bose-Chaudhuri Hocquenghem code)를 사용하는 ECC 디코딩에서는, 패리티를 사용하여 에러 비트와 에러 위치가 검출될 수 있다. 에러 위치가 검출되면, 에러 정정 블록(265)은 데이터 버퍼(260) 상에서 에러 위치에 대응하는 비트를 정정된 비트로 덮어쓰기(예를 들면, 비트 전환)하는 방식으로 에러가 정정될 수 있다. 특히, 에러 정정 블록(265)은 정정할 수 있는 에러 비트 수에 대한 정보(ECC_info)를 리프레쉬 제어 로직(270)에 제공할 수 있다.
온도 센서(295)는 디램(100)의 내부 구동 온도를 감지하고, 그 결과값인 현재 온도 정보(C_Temp)를 리프레쉬 제어 로직(270)에 제공할 수 있다. 온도 센서(295)는, 예를 들면 온도에 따라 변하는 기전력을 사용하는 열기전력형(또는, 열전쌍) 센서, 온도에 따라 변화하는 저항의 크기를 감지하는 열도전형 센서 등이 사용될 수 있다. 하지만, 온도 센서(295)의 온도 측정 방식은 여기에 국한되지 않으며 다양하게 적용될 수 있음은 잘 이해될 것이다.
리프레쉬 제어 로직(270)은 행들의 수와 셀 특성을 참조하여 하나의 행이 리프레쉬되는 리프레쉬 시간(tRC)을 결정할 수 있다. 특히, 리프레쉬 제어 로직(270)은 에러 정정 정보(ECC_info), 현재 온도 정보(C_Temp), 그리고 결정된 리프레쉬 시간(tRC) 중 적어도 하나를 참조하여 비동작 구간(NOP)에서 리프레쉬를 실행할 것이다. 리프레쉬 제어 로직(270)은 에러 정정 정보(ECC_info)에 의하여 앞서 설명된 도 6b의 페일 비트 모드 레지스터(174)가 설정될 수 있다.
리프레쉬 제어 로직(270)은 외부로부터 제공되는 접근 시나리오 정보(ASI)와 에러 정정 정보(ECC_info) 또는 현재 온도 정보(C_Temp)를 조합하여 메모리 셀들 각각 또는 각 행들의 최적 리프레쉬 시간(tRC_opt)을 결정할 것이다. 그리고 리프레쉬 제어 로직(270)은 리프레쉬 인에이블 신호(Ref_EN)가 활성화되는 구간에서 결정된 최적 리프레쉬 시간(tRC_opt)에 따라 메모리 셀들 또는 각 행들을 리프레쉬할 것이다.
또한, 리프레쉬 제어 로직(270)은 접근 시나리오 정보(ASI)와 에러 정정 정보(ECC_info) 또는 현재 온도 정보(C_Temp)를 고려하여 리프레쉬를 수행할 시간이 부족함을 알리는 플래그 신호(MRR)를 외부에 전달할 수 있다. 즉, 리프레쉬 제어 로직(270)은 에러 정정 정보(ECC_info) 또는 현재 온도 정보(C_Temp)를 고려할 때, 접근 시나리오 정보(ASI)에서 제공되는 총 리프레쉬 시간(tREF_tot)이 부족한지를 판단할 수 있다.
명령어 디코더(280)는 외부로부터 인가되는 신호들(/RAC, /CAS, /WE)을 참조하여 입력되는 명령어를 판단한다. 명령어 디코더(280)는 외부로부터 제공되는 명령어에 응답하여 데이터를 셀 어레이(210)에 기입하거나 독출할 수 있다. 또한, 외부에서 제공되는 명령어와 어드레스에 따라 모드 셋 레지스터(290)에 데이터를 기입할 수 있다. 본 발명의 명령어 디코더(280)는 오토 리프레쉬 명령(Auto refresh command)을 인식하고 리프레쉬 동작을 지시하는 디코딩 부분은 구비하지 않을 수 있다.
이상에서 도시된 본 발명의 실시 예에 따른 디램(200)은 외부로부터 제공되는 접근 시나리오 정보(ASI)와, 에러 정정 정보(ECC_info, 또는 페일 비트 수) 또는 현재 온도 정보(C_Temp)를 이용하여 셀프 리프레쉬 동작을 수행할 수 있다.
도 10은 도 9의 리프레쉬 제어 로직의 일 실시 예를 보여주는 블록도이다. 도 10을 참조하면, 리프레쉬 제어 로직(270a)은 리프레쉬 모드 레지스터(271), 리프레쉬 클록 컨트롤러(273a), 그리고 오실레이터(275)를 포함할 수 있다.
리프레쉬 모드 레지스터(271)는 리프레쉬 타임 레지스터(272)와 페일 비트 모드 레지스터(274)를 포함할 수 있다. 리프레쉬 타임 레지스터(272)는 접근 시나리오 정보(ASI)에 포함되는 셀프 리프레쉬 동작의 수행이 가능한 총 리프레쉬 시간(tREF_tot)을 저장한다. 예를 들면, 데이터 리텐션 구간(tRETN)에 포함되는 비동작 구간의 총 길이 정보가 총 리프레쉬 시간(tREF_tot)일 수 있다. 물론, 리프레쉬 모드 레지스터(271)에는 데이터 리텐션 구간(tRETN)의 길이 정보도 더 포함될 수 있음은 잘 이해될 것이다.
페일 비트 모드 레지스터(274)는 허용되는 페일 비트의 수에 따른 셀의 리프레쉬 주기(tREF)를 제공하기 위한 레지스터이다. 즉, 디램(200) 내부에 구비되는 에러 정정 블록(265)의 정정 능력에 따라 각 행들에 대한 리프레쉬 주기가 제공될 수 있다. 페일 비트 모드 레지스터(274)는 에러 정정 블록(265)으로부터 제공되는 에러 정정 정보(ECC_info)를 사용하여 채워질 수 있다. 에러 정정 블록(265)의 에러 정정 능력이 클수록, 메모리 셀들 또는 각 행들에 대한 리프레쉬 주기가 증가할 수 있을 것이다. 즉, 데이터의 신뢰성을 보장하기 위한 리프레쉬 횟수가 감소될 수 있음을 의미한다.
리프레쉬 클록 컨트롤러(273a)는 리프레쉬 모드 레지스터(271)로부터 제공되는 총 리프레쉬 시간(tREF_tot) 또는 페일 비트 수(nFB)를 참조하여 각 행들의 리프레쉬 시간(tRC)을 결정한다. 즉, 행들 전체의 리프레쉬 횟수와 주기가 결정되면, 리프레쉬 클록 컨트롤러(273a)는 오실레이터(275)로부터 제공되는 리프레쉬 클록(Ref_CLK)의 주파수를 조정할 수 있다. 따라서, 리프레쉬 클록 컨트롤러(273a)는 최적의 리프레쉬 동작을 위한 조정된 리프레쉬 클록(Ref_CLK')을 생성할 수 있을 것이다.
도 11은 도 9의 리프레쉬 제어 로직의 다른 실시 예를 보여주는 블록도이다. 도 11을 참조하면, 리프레쉬 제어 로직(270b)은 리프레쉬 모드 레지스터(271), 리프레쉬 클록 컨트롤러(273b), 그리고 오실레이터(275)를 포함할 수 있다.
리프레쉬 모드 레지스터(271)는 리프레쉬 타임 레지스터(272)와 페일 비트 모드 레지스터(274)를 포함할 수 있다. 리프레쉬 타임 레지스터(272)는 접근 시나리오 정보(ASI)에 포함되는 셀프 리프레쉬 동작의 수행이 가능한 총 리프레쉬 시간(tREF_tot)을 저장한다. 그리고 리프레쉬 모드 레지스터(271)는 저장된 총 리프레쉬 시간(tREF_tot)을 리프레쉬 클록 컨트롤러(273b)에 제공할 수 있다. 이때, 페일 비트 모드 레지스터(274)에 저장된 허용 가능한 페일 비트(nFB)의 수는 리프레쉬 클록 컨트롤러(273b)에 제공되지 않을 수도 있다.
리프레쉬 클록 컨트롤러(273b)는 리프레쉬 모드 레지스터(271)로부터 제공되는 총 리프레쉬 시간(tREF_tot)과 온도 센서(295)로부터 제공되는 현재 온도 정보(C_Temp)를 참조하여 각 행들의 리프레쉬 시간(tRC)을 결정할 수 있다. 즉, 리프레쉬 클록 컨트롤러(273b)는 현재 온도에서의 최적 리프레쉬 시간(tRC_opt)을 계산할 수 있다. 이러한 온도에 따른 최적 리프레쉬 시간(tRC_opt)의 계산을 위해 리프레쉬 제어 로직(270b)은 별도의 맵핑 테이블을 더 포함할 수도 있을 것이다.
메모리 셀들 또는 행들 전체의 리프레쉬 횟수와 주기가 결정되면, 리프레쉬 클록 컨트롤러(273b)는 오실레이터(275)로부터 제공되는 리프레쉬 클록(Ref_CLK)의 주파수를 조정할 수 있다. 따라서, 리프레쉬 클록 컨트롤러(273)는 최적의 리프레쉬 동작을 위한 조정된 리프레쉬 클록(Ref_CLK')을 생성할 수 있을 것이다.
도 12는 도 9의 리프레쉬 제어 로직의 또 다른 실시 예를 보여주는 블록도이다. 도 12를 참조하면, 리프레쉬 제어 로직(270c)은 리프레쉬 모드 레지스터(271), 리프레쉬 클록 컨트롤러(273c), 그리고 오실레이터(275)를 포함할 수 있다.
리프레쉬 모드 레지스터(271)는 리프레쉬 타임 레지스터(272)와 페일 비트 모드 레지스터(274)를 포함할 수 있다. 리프레쉬 타임 레지스터(272)는 접근 시나리오 정보(ASI)에 포함되는 셀프 리프레쉬 동작의 수행이 가능한 총 리프레쉬 시간(tREF_tot)을 저장한다. 그리고 리프레쉬 모드 레지스터(271)는 저장된 총 리프레쉬 시간(tREF_tot)을 리프레쉬 클록 컨트롤러(273c)에 제공할 수 있다. 페일 비트 모드 레지스터(274)는 리프레쉬 동작시 허용되는 페일 비트의 수(nFB)에 따른 셀의 리프레쉬 주기(tREF)를 제공하기 위한 레지스터이다. 즉, 디램(200) 내부에 구비되는 에러 정정 블록(265)의 정정 능력에 따라 각 행들에 대한 리프레쉬 주기가 제공될 수 있다. 페일 비트 모드 레지스터(274)는 에러 정정 블록(265)으로부터 제공되는 에러 정정 정보(ECC_info)를 사용하여 채워질 수 있다.
리프레쉬 클록 컨트롤러(273c)는 리프레쉬 모드 레지스터(271)로부터 제공되는 총 리프레쉬 시간(tREF_tot), 리프레쉬 동작시 허용되는 페일 비트의 수(nFB), 그리고 온도 센서(295)로부터 제공되는 현재 온도 정보(C_Temp)를 수신한다. 리프레쉬 클록 컨트롤러(273c)는 총 리프레쉬 시간(tREF_tot), 리프레쉬 동작시 허용되는 페일 비트의 수(nFB), 그리고 현재 온도 정보(C_Temp)를 참조하여 각 행들의 최적 리프레쉬 시간(tRC_opt)을 계산할 수 있다.
각 행들의 최적 리프레쉬 시간(tRC_opt)이 결정되면, 리프레쉬 클록 컨트롤러(273a)는 오실레이터(275)로부터 제공되는 리프레쉬 클록(Ref_CLK)의 주파수를 조정할 수 있다. 따라서, 리프레쉬 클록 컨트롤러(273a)는 최적의 리프레쉬 동작을 위한 조정된 리프레쉬 클록(Ref_CLK')을 생성할 수 있을 것이다.
이상에서는 외부로부터 제공되는 접근 시나리오 정보(ASI)와 디램(200)의 에러 정정 능력, 그리고 현재 구동 온도에 따라 최적의 리프레쉬 동작을 결정하는 리프레쉬 제어 로직(270)의 실시 예들이 설명되었다. 하지만, 리프레쉬 제어 로직(270)이 온도나 에러 정정 능력 이외에도 다양한 디램(200)의 특성(예를 들면, 공정 특성)을 참조하여 최적 리프레쉬 시간(tRC_opt)을 계산할 수 있음은 잘 이해될 것이다.
도 13은 본 발명의 다른 실시 예에 따른 메모리 시스템을 보여주는 블록도이다. 도 13을 참조하면, 본 발명의 다른 실시 예에 따른 메모리 시스템은 호스트(30)와 디램(300)를 포함한다.
호스트(30)는 디램(100)을 버퍼 용도 또는 워킹 메모리나 메인 메모리 용도로 사용할 수 있다. 특히, 호스트(30)는 시나리오 기반으로 디램(300)에 접근한다. 예를 들면, 호스트(30)는 고정된 용량의 데이터를 기입하고, 저장된 데이터를 정해진 시간 동안만 유지하는 방식으로 디램(300)에 접근할 수 있다. 즉, 호스트(30)는 디램(300)을 시나리오 기반으로 접근하기 위한 버퍼 메모리(Buffer memory)로 사용할 수 있다.
호스트(30)는 내부적으로 디램(300)에 접근하기 위한 고정된 디램 접근 시나리오(35)를 포함할 수 있다. 호스트(30)는 크게 두 가지 방식으로 디램(300)에 접근할 수 있다. 예를 들면, 호스트(30)는 디램(300)의 제 1 영역(312)에는 디램 접근 시나리오(35) 규칙에 따라 접근하지만, 디램(300)의 제 2 영역(314)에는 랜덤 접근 방식으로 접근할 수 있다. 따라서, 호스트(30)는 디램 접근 시나리오(35)에 따라 제 1 영역(312)에 접근할 때에는 접근 시나리오 정보(ASI)를 디램(300)에 전달할 수 있다. 반면, 호스트(30)는 제 2 영역(314)에 접근할 때에는 랜덤한 접근을 위해 접근 영역 정보(Access Area Information: 이하, AAI)를 디램(300)에 제공할 수 있다. 접근 영역 정보(AAI)는 어드레스 형태나 레지스터 쓰기 형태로도 제공될 수 있을 것이다.
디램(300)은 호스트(30)로부터 제공되는 접근 영역 정보(AAI)에 따라 또는 접근 시나리오 정보(ASI)에 따라 셀 어레이(310)의 리프레쉬를 수행할 수 있다. 만일, 접근 영역 정보(AAI)가 시나리오 기반의 접근을 수행하기 위한 제 1 영역(312)에 대응하는 경우, 디램(300)은 리프레쉬 명령어 없이 접근 시나리오 정보(ASI)를 사용하여 셀프 리프레쉬를 수행할 것이다. 반면, 접근 영역 정보(AAI)가 랜덤 접근을 위해 제공되는 제 2 영역(314)에 대응하는 경우, 디램(300)은 오토 리프레쉬 명령어에 따라 제 2 영역(314)에 대한 리프레쉬 동작을 수행할 것이다. 디램(300)의 리프레쉬 제어 로직(370)은 접근 영역 정보(AAI)에 따라 셀프 리프레쉬 또는 명령어에 따라 수행하는 오토 리프레쉬를 수행할 것이다.
도 14는 도 13의 디램의 일 예를 보여주는 블록도이다. 도 14를 참조하면, 디램(300)은 셀 어레이(310), 행 디코더(320), 어드레스 버퍼(330), 열 디코더(340), 감지 증폭기(350), 데이터 버퍼(360), 리프레쉬 제어 로직(370), 명령어 디코더(380), 모드 레지스터 셋(390)을 포함할 수 있다. 여기서, 행 디코더(320), 어드레스 버퍼(330), 열 디코더(340), 감지 증폭기(350), 데이터 버퍼(360), 모드 레지스터 셋(390) 등은 도 4의 그것들과 실질적으로 동일하므로, 이것들에 대해 설명은 생략하기로 한다.
셀 어레이(310)는 복수의 뱅크 단위(예를 들면, Bank0~Bank3)로 액티브될 수 있고 접근된다. 그리고 복수의 뱅크들은 각각 접근 시나리오 정보(ASI)에 따라 접근되는 제 1 영역(312)과 접근 시나리오 정보(ASI)에 관계없이 랜덤하게 접근되는 제 2 영역(314)으로 구분될 수 있다.
리프레쉬 제어 로직(370)은 호스트(30, 도 13 참조)로부터 제공되는 접근 영역 정보(AAI) 및 접근 시나리오 정보(ASI)를 사용하여 셀 어레이(310)의 리프레쉬 동작을 수행한다. 리프레쉬 제어 로직(370)은 접근 영역 정보(AAI)가 제 1 영역(312)에 해당하는 경우, 명령어 디코더(380)로부터의 제어없이 리프레쉬 동작을 수행할 수 있다. 반면, 리프레쉬 제어 로직(370)은 접근 영역 정보(AAI)가 제 2 영역(314)에 해당하는 경우, 명령어 디코더(380)로부터의 오토 리프레쉬(Auto refresh) 명령어에 따라 선택된 메모리 영역에 대한 리프레쉬 동작을 수행할 수 있다.
명령어 디코더(380)는 외부로부터 인가되는 신호들(/RAC, /CAS, /WE)을 참조하여 입력되는 명령어를 판단한다. 명령어 디코더(380)는 외부로부터 제공되는 명령어에 응답하여 데이터를 셀 어레이(310)에 기입하거나 독출할 수 있다. 또한, 외부에서 제공되는 명령어와 어드레스에 따라 모드 셋 레지스터(390)에 데이터를 기입할 수 있다. 특히, 본 발명의 명령어 디코더(380)는 제 1 영역(312)에 대한 접근이 발생하는 시점에서는 리프레쉬 제어 동작을 비활성화한다. 반면, 명령어 디코더(380)는 제 2 영역(314)에 대한 접근이 발생하는 시점에서는 외부로부터 제공되는 리프레쉬 명령어에 근거하여 메모리 셀들을 리프레쉬할 것이다.
이상에서 도시된 본 발명의 실시 예에 따른 디램(300)은 외부로부터 제공되는 접근 영역 정보(AAI) 및 접근 시나리오 정보(ASI)를 사용하여 셀 어레이(310)의 리프레쉬 동작을 수행한다. 만일, 접근 시나리오 정보(ASI)를 사용하여 메모리 셀의 리프레쉬가 불가한 경우, 디램(300)은 외부에 모드 레지스터 읽기(MRR) 정보를 제공하여 이러한 상태를 알려 줄 수 있다. 그리고 호스트(30)의 제어에 따라 오토 리프레쉬 동작이 가능한 제 2 영역(314)이 선택되도록 동작할 수 있을 것이다.
도시되지는 않았지만, 디램(300)은 에러 정정 블록(ECC)이나 온도 센서(Temperature Sensor)를 더 포함할 수 있음은 잘 이해될 것이다. 그리고 디램(300)은 접근 시나리오 정보(ASI)를 사용하여 리프레쉬 동작을 수행할 때, 현재 온도 및 허용 가능한 페일 비트의 수를 참조하여 최적 리프레쉬 시간(tRC_opt)을 결정할 수 있을 것이다.
도 15는 도 14의 리프레쉬 제어 로직의 동작을 간략히 보여주는 순서도이다. 도 15를 참조하면, 리프레쉬 제어 로직(370)은 호스트(30)로부터 제공되는 접근 영역 정보(AAI) 및 접근 시나리오 정보(ASI)를 사용하여 셀 어레이(310)의 리프레쉬 동작을 수행한다.
S210 단계에서, 리프레쉬 제어 로직(370)은 호스트(30)로부터 접근 영역 정보(AAI)를 수신한다. 접근 영역 정보(AAI)는 모드 레지스터와 같은 레지스터 쓰기 방식이나, 어드레스 버퍼(330, 도 13 참조)로부터 제공되는 뱅크 어드레스(Bank address)를 통해서도 생성될 수 있을 것이다.
S220 단계에서, 리프레쉬 제어 로직(370)은 접근 영역 정보(AAI)에 따라 동작 분기를 수행한다. 접근 영역 정보(AAI)가 시나리오 기반의 접근 영역으로 할당된 제 1 영역(312)을 지시하는 경우, 절차는 S230 단계로 이동한다. 반면, 접근 영역 정보(AAI)가 랜덤 접근 영역으로 할당된 제 2 영역(314)을 지시하는 경우, 절차는 S225 단계로 이동한다.
S225 단계에서, 리프레쉬 제어 로직(370)은 접근 시나리오 정보(ASI)에 관계없이 외부에서 제공된 리프레쉬 명령어에 기반하여 선택된 메모리 영역의 리프레쉬 동작을 수행할 것이다. 즉, 리프레쉬 제어 로직(370)은 명령어 디코더(380)로부터의 오토 리프레쉬(Auto refresh) 명령어에 따라 선택된 메모리 영역에 대한 리프레쉬 동작을 수행할 것이다.
S230 단계에서, 리프레쉬 제어 로직(370)은 호스트(30)로부터의 접근 시나리오 정보(ASI)를 수신한다. 접근 시나리오 정보(ASI)에 의해 리프레쉬 제어 로직(370)은 총 리프레쉬 시간(tREF_tot)과 데이터 리텐션 시간(tRETN)을 확인할 수 있다.
S240 단계에서, 리프레쉬 제어 로직(370)은 호스트(10)로부터 제공된 접근 시나리오 정보(ASI)를 참조하여 메모리 셀 또는 각 행을 리프레쉬하기 위한 리프레쉬 시간을 계산할 수 있다. 예를 들면, 접근 시나리오 정보(ASI)를 통해서 확인되는 총 리프레쉬 시간(tREF_tot)을 행들의 수로 나누면, 각 행들을 모두 최소 1회 리프레쉬할 수 있는 리프레쉬 시간(tRC)이 계산될 수 있다. 또한, 리프레쉬 제어 로직(370)은 온도 정보나 페일 비트 정보를 이용하여 최적 리프레쉬 시간(tRC_opt)을 조정할 수 있을 것이다.
S250 단계에서, 계산된 리프레쉬 시간(tRC)이 기준 시간(Reference time)과 비교된다. 리프레쉬 시간(tRC)이 기준 시간(Reference time)보다 긴 경우(Yes 방향), 디램(300)에서 셀프 리프레쉬를 수행할 수 있음을 의미한다. 따라서, 절차는 리프레쉬를 진행하기 위한 S260 단계로 이동한다. 반면, 리프레쉬 시간(tRC)이 기준 시간(Reference time) 이하인 경우(No 방향), 총 리프레쉬 시간(tREF_tot) 이내에 셀프 리프레쉬의 실행이 불가함을 의미한다. 따라서, 총 리프레쉬 시간(tREF_tot) 이내에 모든 행들에 대한 리프레쉬가 불가함을 디램(300) 외부로 전달하기 위해 절차는 S290 단계로 이동한다.
S260 단계에서, 리프레쉬 제어 로직(370)은 저장된 데이터가 유지되어야 하는 리텐션 구간에서 리프레쉬를 수행할 수 있는 비동작 구간 동안에 수행할 리프레쉬 회수를 결정한다. 즉, 총 리프레쉬 시간(tREF_tot) 동안 데이터가 유지되기 위한 최소한의 리프레쉬 시간(tRC) 또는 최적의 리프레쉬 시간(tRC_opt)을 결정할 수 있을 것이다.
S270 단계에서, 리프레쉬 제어 로직(370)은 호스트(30)로부터 리프레쉬 인에이블 신호(Ref_EN)를 모니터링한다. 예를 들면, 리프레쉬 인에이블 신호(Ref_EN)는 비 비동작 구간(NOP)에 활성화될 수 있다. 리프레쉬 제어 로직(370)은 리프레쉬 인에이블 신호(Ref_EN)가 활성화되지 않았으면, 리프레쉬 인에이블 신호(Ref_EN)의 활성화를 지속적으로 모니터링할 것이다. 반면, 리프레쉬 인에이블 신호(Ref_EN)가 활성화된 것으로 검출되면, 절차는 S280 단계로 이동한다.
S280 단계에서, 리프레쉬 제어 로직(370)은 리프레쉬 인에이블 신호(Ref_EN)가 활성화되는 구간 동안, 리프레쉬 시간(tRC)에 따른 셀프 리프레쉬를 수행할 것이다.
S290 단계에서, 리프레쉬 제어 로직(370)은 주어진 총 리프레쉬 시간(tREF_tot) 동안 모든 행들을 최소한 1회 리프레쉬하는 것이 불가능함을 외부에 알리기 위한 신호를 제공한다. 예를 들면, 모드 레지스터 읽기(MRR)를 통해서 호스트(30)에 리프레쉬가 불가함을 알려줄 수 있다. 그러면 호스트(30)는 명령어를 통한 리프레쉬를 수행할 수 있다.
이상에서는 본 발명의 리프레쉬 제어 로직(370)은 선택된 메모리 영역에 따라 오토 리프레쉬 또는 명령어 없이 수행되는 셀프 리프레쉬를 수행할 수 있음이 설명되었다.
도 16은 본 발명의 반도체 메모리 장치를 포함하는 휴대용 단말기를 예시적으로 보여주는 블록도이다. 도 16을 참조하면, 본 발명의 실시 예에 따른 휴대용 단말기(1000)는 이미지 처리부(1100), 무선 송수신부(1200), 오디오 처리부(1300), PMIC(1400), 배터리(1450), 메모리(1500), 유저 인터페이스(1600), 그리고 컨트롤러(1700)를 포함한다.
이미지 처리부(1100)는 렌즈(1110), 이미지 센서(1120), 이미지 프로세서(1130), 그리고 디스플레이부(1140)를 포함한다. 무선 송수신부(1200)는 안테나(1210), 트랜시버(1220), 모뎀(1230)을 포함한다. 오디오 처리부(1300)는 오디오 프로세서(1310), 마이크(1320), 그리고 스피커(1330)를 포함한다. 이미지 파일 생성부(1400)는 휴대용 단말기(1000)의 내부에서 이미지 파일을 생성하기 위한 구성이다. 여기서, 디램(1500)은 휴대용 단말기(1000)의 워킹 메모리로 사용될 수 있다. 더불어, 디램(1500)은 이미지 처리부(1100)의 버퍼 메모리로 사용될 수 있을 것이다. 유저 인터페이스(1600)는 사용자 입력 신호를 제공받기 위한 구성이다.
여기서, 디램(1500)은 모바일 디램으로 제공될 수 있다. 디램(1500)은 시나리오 기반으로 접근될 때, 외부 명령어 없이 최적의 리프레쉬 시간에 따라 메모리 셀들을 리프레쉬하는 리프레쉬 컨트롤 로직(1510)을 포함할 수 있다.
한편, 본 발명의 상세한 설명에서는 구체적인 실시 예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 상술한 실시 예에 국한되어 정해져서는 안되며 후술하는 특허청구범위뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 한다.

Claims (20)

  1. 데이터를 저장하는 복수의 디램 셀들을 포함하는 셀 어레이; 그리고
    외부로부터 제공되는 접근 시나리오 정보에 따라 상기 복수의 디램 셀들을 리프레쉬하기 위한 리프레쉬 제어 로직을 포함하되,
    상기 리프레쉬 제어 로직은 상기 접근 시나리오 정보 및 상기 복수의 디램 셀들의 리텐션 특성을 참조하여 상기 복수의 디램 셀들의 리프레쉬 시간을 결정하고, 상기 결정된 리프레쉬 시간에 따라 상기 복수의 디램 셀들을 리프레쉬하며,
    상기 접근 시나리오 정보는,
    상기 복수의 디램 셀들에 상기 데이터가 유지되는 데이터 리텐션 시간; 및
    상기 데이터 리텐션 시간 동안에 상기 복수의 디램 셀들로의 접근이 차단되는 적어도 하나의 비동작 구간에 대응하는 총 리프레쉬 시간을 포함하는 반도체 메모리 장치.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 리프레쉬 제어 로직은, 상기 총 리프레쉬 시간을 상기 셀 어레이의 행들의 수로 나누어 상기 리프레쉬 시간을 계산하는 반도체 메모리 장치.
  4. 제 1 항에 있어서,
    상기 리프레쉬 제어 로직은, 상기 총 리프레쉬 시간이 상기 복수의 디램 셀들을 리프레쉬하기에 짧은 경우, 외부로 리프레쉬 불가 정보를 모드 레지스터 읽기(MRR) 방식으로 출력하는 반도체 메모리 장치.
  5. 제 1 항에 있어서,
    상기 리프레쉬 제어 로직은, 상기 총 리프레쉬 시간을 저장하기 위한 리프레쉬 시간 레지스터와, 그리고 페일 비트 수에 따라 조정 가능한 리프레쉬 시간을 저장하는 페일 비트 모드 레지스터를 포함하는 리프레쉬 모드 레지스터를 포함하는 반도체 메모리 장치.
  6. 제 5 항에 있어서,
    상기 리프레쉬 제어 로직은, 상기 리프레쉬 모드 레지스터로부터 상기 총 리프레쉬 시간 또는 상기 페일 비트 수를 참조하여 리프레쉬 클록의 주파수를 조정하는 리프레쉬 클록 컨트롤러를 더 포함하는 반도체 메모리 장치.
  7. 제 1 항에 있어서,
    상기 리프레쉬 제어 로직은, 상기 외부로부터 제공되며 상기 적어도 하나의 비동작 구간에서 활성화되는 리프레쉬 인에이블 신호에 응답하여 상기 복수의 디램 셀들을 리프레쉬하는 반도체 메모리 장치.
  8. 제 1 항에 있어서,
    상기 복수의 디램 셀들의 구동 온도를 센싱하여 상기 리프레쉬 제어 로직에 제공하는 온도 센서를 더 포함하되, 상기 리프레쉬 제어 로직은 상기 구동 온도에 따라 상기 리프레쉬 시간을 조정하는 반도체 메모리 장치.
  9. 제 1 항에 있어서,
    상기 외부로부터의 명령어를 디코딩하여 제어 신호를 생성하는 명령어 디코더를 더 포함하되, 상기 명령어 디코더는 리프레쉬 명령어를 수행하는 모드를 갖지 않는 반도체 메모리 장치.
  10. 제 9 항에 있어서,
    상기 리프레쉬 제어 로직은 리프레쉬 모드 레지스터를 포함하고, 상기 접근 시나리오 정보는 상기 리프레쉬 모드 레지스터에 레지스터 쓰기 방식으로 입력되는 반도체 메모리 장치.
  11. 접근 시나리오에 따라 버퍼에 데이터 리텐션 시간 동안 데이터를 기록하고 읽어내는 호스트; 그리고
    상기 버퍼로 제공되며, 상기 접근 시나리오의 시간 정보를 제공받아 상기 데이터 리텐션 시간 동안 상기 호스트가 접근을 중지하는 비동작 구간에서 상기 데이터가 기록된 메모리 영역을 셀프 리프레쉬하는 상기 버퍼로서 동작하는 디램을 포함하되,
    상기 호스트는 상기 시간 정보와 리프레쉬 인에이블 신호를 사용하여 상기 디램의 셀프 리프레쉬 동작을 제어하고,
    상기 시간 정보는, 상기 비동작 구간의 길이 정보를 포함하고,
    상기 디램은 상기 비동작 구간의 상기 길이 정보를 이용하여 상기 메모리 영역의 각 행들의 리프레쉬 시간을 계산하는 리프레쉬 제어 로직을 포함하는 메모리 시스템.
  12. 제 11 항에 있어서,
    상기 호스트는 상기 디램을 프레임 버퍼로 사용하는 이미지 처리 장치인 것을 특징으로 하는 메모리 시스템.
  13. 제 11 항에 있어서,
    상기 리프레쉬 제어 로직은, 상기 디램의 구동 온도, 그리고 상기 디램의 허용 가능한 페일 비트의 수들 중 적어도 하나를 이용하여 상기 메모리 영역의 각 행들의 리프레쉬 시간을 계산하는 메모리 시스템.
  14. 제 11 항에 있어서,
    상기 디램은 상기 접근 시나리오에 따라 접근되는 제 1 메모리 영역과, 상기 접근 시나리오에 관계없이 랜덤 접근이 가능한 제 2 메모리 영역을 포함하는 메모리 시스템.
  15. 제 14 항에 있어서,
    상기 호스트는 접근 영역 정보를 제공하여 상기 디램이 상기 제 1 메모리 영역 또는 상기 제 2 메모리 영역의 리프레쉬 모드를 선택하도록 제어하는 메모리 시스템.
  16. 제 15 항에 있어서,
    상기 제 2 메모리 영역의 리프레쉬 동작은 상기 호스트에 의해서 제공되는 명령어에 따라 수행되는 오토 리프레쉬 동작인 메모리 시스템.
  17. 접근 시나리오 기반으로 데이터가 기입되고 독출되는 반도체 메모리 장치의 리프레쉬 방법에 있어서:
    외부로부터 상기 접근 시나리오에 따른 데이터 리텐션 시간 및 상기 데이터 리텐션 시간에 포함되는 비동작 구간의 길이를 수신하는 단계;
    상기 비동작 구간의 상기 길이와 메모리 셀들의 특성 파라미터를 사용하여 상기 데이터가 기입된 메모리 영역의 리프레쉬 시간을 계산하는 단계; 그리고
    상기 계산된 리프레쉬 시간에 따라 상기 비동작 구간 동안 상기 메모리 영역을 리프레쉬하는 단계를 포함하는 리프레쉬 방법.
  18. 제 17 항에 있어서,
    상기 리프레쉬 시간을 계산하는 단계에서, 상기 반도체 메모리 장치에 포함되는 에러 정정 블록의 정정 가능한 에러 비트 수를 참조하여 상기 리프레쉬 시간이 결정되는 리프레쉬 방법.
  19. 제 17 항에 있어서,
    상기 리프레쉬 시간을 계산하는 단계에서, 상기 반도체 메모리 장치의 동작 온도를 참조하여 상기 리프레쉬 시간이 결정되는 리프레쉬 방법.
  20. 제 17 항에 있어서,
    상기 리프레쉬하는 단계에서, 상기 반도체 메모리 장치는 리프레쉬 명령없이 상기 비동작 구간 동안 활성화되는 리프레쉬 인에이블 신호에 응답하여 상기 메모리 영역을 리프레쉬하는 리프레쉬 방법.
KR1020170146808A 2017-11-06 2017-11-06 반도체 메모리 장치, 메모리 시스템 그리고 그것의 리프레쉬 방법 KR102398209B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020170146808A KR102398209B1 (ko) 2017-11-06 2017-11-06 반도체 메모리 장치, 메모리 시스템 그리고 그것의 리프레쉬 방법
US16/032,361 US10692561B2 (en) 2017-11-06 2018-07-11 Semiconductor memory device, memory system, and refresh method thereof
DE102018121929.6A DE102018121929A1 (de) 2017-11-06 2018-09-07 Halbleiterspeichervorrichtung, Speichersystem und Auffrischverfahren davon
CN201811218388.7A CN109754832B (zh) 2017-11-06 2018-10-18 半导体存储器件、存储器***及其刷新方法
JP2018204999A JP2019087297A (ja) 2017-11-06 2018-10-31 半導体メモリ装置及びメモリシステム、並びにそのリフレッシュ方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170146808A KR102398209B1 (ko) 2017-11-06 2017-11-06 반도체 메모리 장치, 메모리 시스템 그리고 그것의 리프레쉬 방법

Publications (2)

Publication Number Publication Date
KR20190051313A KR20190051313A (ko) 2019-05-15
KR102398209B1 true KR102398209B1 (ko) 2022-05-17

Family

ID=66179217

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170146808A KR102398209B1 (ko) 2017-11-06 2017-11-06 반도체 메모리 장치, 메모리 시스템 그리고 그것의 리프레쉬 방법

Country Status (5)

Country Link
US (1) US10692561B2 (ko)
JP (1) JP2019087297A (ko)
KR (1) KR102398209B1 (ko)
CN (1) CN109754832B (ko)
DE (1) DE102018121929A1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10636476B2 (en) * 2018-11-01 2020-04-28 Intel Corporation Row hammer mitigation with randomization of target row selection
KR20210053017A (ko) * 2019-11-01 2021-05-11 삼성전자주식회사 프로세싱 소자를 포함하는 메모리 장치 및 상기 메모리 장치를 포함하는 메모리 시스템
US20220051744A1 (en) * 2020-08-17 2022-02-17 Mediatek Inc. Memory controller with adaptive refresh rate controlled by error bit information
US11809743B2 (en) * 2020-09-21 2023-11-07 Advanced Micro Devices, Inc. Refresh management list for DRAM
KR20220070997A (ko) * 2020-11-23 2022-05-31 에스케이하이닉스 주식회사 컨트롤러 및 이를 포함하는 메모리 시스템
JP7143463B2 (ja) * 2021-02-26 2022-09-28 華邦電子股▲ふん▼有限公司 半導体記憶装置
KR20230018873A (ko) 2021-07-30 2023-02-07 에스케이하이닉스 주식회사 메모리 시스템 및 그 동작 방법
US20230061037A1 (en) * 2021-09-01 2023-03-02 Micron Technology, Inc. Apparatus with power-based data protection mechanism and methods for operating the same
CN115954026B (zh) * 2023-03-10 2023-07-28 长鑫存储技术有限公司 刷新次数确定方法及设备
CN117393016B (zh) * 2023-12-11 2024-03-08 浙江力积存储科技有限公司 三维存储器架构及其刷新方法和存储器

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070253269A1 (en) 2006-04-28 2007-11-01 Mosaid Technologies Incorporated Dynamic random access memory device and method for self-refreshing memory cells with temperature compensated self-refresh

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4154010B2 (ja) 1997-07-17 2008-09-24 キヤノン株式会社 メモリ制御装置およびメモリ制御方法
TW594743B (en) 2001-11-07 2004-06-21 Fujitsu Ltd Memory device and internal control method therefor
KR100612950B1 (ko) 2004-04-22 2006-08-14 주식회사 하이닉스반도체 외부클럭을 사용한 디램의 라스타임 제어회로 및 라스타임제어방법
KR100634440B1 (ko) 2004-11-05 2006-10-16 삼성전자주식회사 오토-리프레쉬 명령에 선별적으로 동작하는 디램, 그것의오토-리프레쉬 동작을 제어하는 메모리, 디램 및 메모리를포함한 메모리 시스템, 그리고 그것의 동작 방법들
US7454586B2 (en) 2005-03-30 2008-11-18 Intel Corporation Memory device commands
KR100838375B1 (ko) 2006-04-28 2008-06-13 주식회사 하이닉스반도체 반도체 메모리 장치
US20080151670A1 (en) 2006-12-22 2008-06-26 Tomohiro Kawakubo Memory device, memory controller and memory system
JP2011165247A (ja) * 2010-02-08 2011-08-25 Seiko Epson Corp 電子機器
US8787105B2 (en) * 2012-05-10 2014-07-22 Nanya Technology Corporation Dynamic random access memory with multiple thermal sensors disposed therein and control method thereof
KR101932663B1 (ko) 2012-07-12 2018-12-26 삼성전자 주식회사 리프레쉬 주기 정보를 저장하는 반도체 메모리 장치 및 그 동작방법
US9147461B1 (en) * 2012-11-28 2015-09-29 Samsung Electronics Co., Ltd. Semiconductor memory device performing a refresh operation, and memory system including the same
KR20140081346A (ko) 2012-12-21 2014-07-01 에스케이하이닉스 주식회사 온도 보상 셀프 리프레쉬 장치
US9704557B2 (en) * 2013-09-25 2017-07-11 Qualcomm Incorporated Method and apparatus for storing retention time profile information based on retention time and temperature
KR20160094767A (ko) 2015-02-02 2016-08-10 삼성전자주식회사 아이들 구간에서 정보 전달 기능을 수행하는 메모리 장치 및 방법
KR20160104977A (ko) 2015-02-27 2016-09-06 에스케이하이닉스 주식회사 반도체 메모리 장치 및 리프레쉬 제어 방법
KR20160138616A (ko) 2015-05-26 2016-12-06 에스케이하이닉스 주식회사 셀프 리프레쉬 장치
KR102326018B1 (ko) 2015-08-24 2021-11-12 삼성전자주식회사 메모리 시스템
KR102354987B1 (ko) 2015-10-22 2022-01-24 삼성전자주식회사 온도에 따라 셀프 리프레쉬 사이클을 제어하는 리프레쉬 방법
US9754655B2 (en) 2015-11-24 2017-09-05 Qualcomm Incorporated Controlling a refresh mode of a dynamic random access memory (DRAM) die

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070253269A1 (en) 2006-04-28 2007-11-01 Mosaid Technologies Incorporated Dynamic random access memory device and method for self-refreshing memory cells with temperature compensated self-refresh

Also Published As

Publication number Publication date
CN109754832B (zh) 2023-06-09
US20190139596A1 (en) 2019-05-09
US10692561B2 (en) 2020-06-23
CN109754832A (zh) 2019-05-14
DE102018121929A1 (de) 2019-05-09
JP2019087297A (ja) 2019-06-06
KR20190051313A (ko) 2019-05-15

Similar Documents

Publication Publication Date Title
KR102398209B1 (ko) 반도체 메모리 장치, 메모리 시스템 그리고 그것의 리프레쉬 방법
US10529406B2 (en) Memory device and refresh method thereof
KR101688180B1 (ko) 낮은 전력 자체-정정 능력을 갖는 임베딩된 dram
US11887650B2 (en) Semiconductor memory device managing flexible refresh skip area
JP4733123B2 (ja) 温度測定によって半導体メモリ装置内のダイナミックリフレッシュを改善するための装置と方法
US7710809B2 (en) Self refresh operation of semiconductor memory device
US7894289B2 (en) Memory system and method using partial ECC to achieve low power refresh and fast access to data
KR20190137281A (ko) 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 반도체 메모리 장치의 동작 방법
US8358554B2 (en) Semiconductor memory device performing partial self refresh and memory system including same
US20140355332A1 (en) Volatile memory device and refresh method thereof
CN107845397B (zh) 存储器***以及处理器***
US20100142291A1 (en) Mobile system on chip (SoC) and mobile terminal using the mobile SoC, and method for refreshing a memory in the mobile SoC
JP2005032428A (ja) メモリのリフレッシュ周期を制御するメモリコントローラおよびリフレッシュ周期制御方法
JP2004079162A (ja) リフレッシュフラグを発生させる半導体メモリ装置及び半導体メモリシステム
KR20180135662A (ko) 메모리 장치, 메모리 시스템 및 메모리 장치의 동작 방법
KR20210088917A (ko) 반도체 메모리 장치 및 이를 포함하는 메모리 시스템 및 반도체 메모리 장치의 동작 방법
KR20220094489A (ko) 반도체 메모리 장치 및 반도체 메모리 장치의 동작 방법
JP4289825B2 (ja) 半導体記憶装置
KR101578789B1 (ko) 동적 메모리 장치의 리프레쉬 주기 결정 방법 및 그 동작 메모리 장치
JP4934118B2 (ja) 半導体記憶装置
JP2005196952A (ja) ダイナミック半導体記憶装置及びこの装置の節電モード動作方法
JP7143463B2 (ja) 半導体記憶装置

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