KR20210052710A - 동작 온도에 기초하여 동작 주기를 조절하는 메모리 장치 - Google Patents

동작 온도에 기초하여 동작 주기를 조절하는 메모리 장치 Download PDF

Info

Publication number
KR20210052710A
KR20210052710A KR1020190136697A KR20190136697A KR20210052710A KR 20210052710 A KR20210052710 A KR 20210052710A KR 1020190136697 A KR1020190136697 A KR 1020190136697A KR 20190136697 A KR20190136697 A KR 20190136697A KR 20210052710 A KR20210052710 A KR 20210052710A
Authority
KR
South Korea
Prior art keywords
temperature
period
code
memory device
signal
Prior art date
Application number
KR1020190136697A
Other languages
English (en)
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 KR1020190136697A priority Critical patent/KR20210052710A/ko
Priority to US16/919,808 priority patent/US11024359B2/en
Priority to CN202010749109.0A priority patent/CN112750481A/zh
Publication of KR20210052710A publication Critical patent/KR20210052710A/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
    • 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
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/04Arrangements for writing information into, or reading information out from, a digital store with means for avoiding disturbances due to temperature effects

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Dram (AREA)

Abstract

본 발명은 동작 온도에 기초하여 동작 주기를 조절하는 메모리 장치를 제고아한다. 본 발명의 실시 예에 따른 메모리 장치는, 셀 어레이 및 주기 계산 회로를 포함한다. 주기 계산 회로는 메모리 장치의 동작 온도에 기초하여, 셀 어레이에 수행되는 리프레쉬 동작의 동작 주기를 계산한다. 주기 계산 회로는 동작 온도가 제 1 온도보다 낮은 경우, 온도가 높은 순서대로 나열된 제 2 온도 내지 제 N 온도에 대응하는 제 2 기울기 값 내지 제 N 기울기 값 중 하나 이상의 기울기 값을 적분하여 동작 주기를 계산한다. N은 2 이상의 자연수다. 하나 이상의 기울기 값의 개수는 동작 온도에 기초한다.

Description

동작 온도에 기초하여 동작 주기를 조절하는 메모리 장치{MEMORY DEVICE ADJUSTING OPERATING CYCLE BASED ON OPERATING TEMPERATURE}
본 발명은 메모리 장치에 관한 것으로, 좀 더 상세하게는 동작 온도에 기초하여 동작 주기를 조절하는 메모리 장치에 관한 것이다.
반도체 기술이 증가함에 따라, 전자 시스템에 사용되는 반도체 메모리 장치의 용량 및 속도는 비약적으로 증가하고 있다. 반도체 메모리 장치는 휘발성메모리 장치와 불휘발성 메모리 장치로 분류된다. 휘발성 메모리 장치의 대표적인 예로는, 디램(Dynamic Random Access Memory, DRAM)이 있다.
디램은 셀 커패시터(Cell Capacitor)에 충전되는 전하(Charge) 형태로 데이터를 저장한다. 셀 커패시터에 저장된 전하는 시간의 경과에 따라 누설되므로, 디램에 저장된 데이터는 시간이 지남에 따라 소실된다. 따라서, 디램은 저장된 데이터를 유지하기 위해 주기적으로 리프레쉬(Refresh) 동작을 수행하여야 한다.
디램은 리프레쉬 동작을 효율적으로 수행하기 위해, 리프레쉬 주기를 제어할 수 있다. 다만, 리프레쉬 주기를 제어하는 것과 관련하여, 디램에 많은 양의 데이터가 저장되어야 한다.
본 발명은 상술된 기술적 과제를 해결하기 위한 것으로써, 본 발명의 목적은 보다 적은 양의 데이터를 이용하여 동작 주기를 조절하는 메모리 장치를 제공하는 데 있다.
본 발명의 실시 예에 따른 메모리 장치는, 셀 어레이 및 주기 계산 회로를 포함할 수 있다. 주기 계산 회로는 메모리 장치의 동작 온도에 기초하여, 셀 어레이에 수행되는 리프레쉬 동작의 동작 주기를 계산할 수 있다. 주기 계산 회로는 동작 온도가 제 1 온도보다 낮은 경우, 온도가 높은 순서대로 나열된 제 2 온도 내지 제 N 온도에 대응하는 제 2 기울기 값 내지 제 N 기울기 값 중 하나 이상의 기울기 값을 적분하여 동작 주기를 계산 할 수 있다. N은 2 이상의 자연수일 수 있다. 하나 이상의 기울기 값의 개수는 동작 온도에 기초할 수 있다.
본 발명의 실시 예에 따른 메모리 장치는, 셀 어레이 및 주기 계산 회로를 포함할 수 있다. 주기 계산 회로는 메모리 장치의 동작 온도에 기초하여, 셀 어레이에 수행되는 리프레쉬 동작의 동작 주기를 계산할 수 있다. 주기 계산 회로는 제 1 온도 코드를 출력한 후, 동작 온도를 나타내는 동작 온도 코드와 제 1 온도 코드가 일치하지 않는 경우 제 2 온도 코드를 후속으로 출력하는 코드 생성 회로, 제 2 온도 코드에 대응하는 기울기 값을 출력하는 매칭 회로, 및 기울기 값을 제 1 온도 코드에 대응하는 제 1 주기에 더하여, 제 2 온도 코드에 대응하는 제 2 주기를 계산하는 적분 회로를 포함할 수 있다.
본 발명의 실시 예에 따른 메모리 장치는, 셀 어레이 및 주기 계산 회로를 포함할 수 있다. 주기 계산 회로는 메모리 장치의 동작 온도에 기초하여, 셀 어레이에 수행되는 리프레쉬 동작의 동작 주기를 계산할 수 있다. 주기 계산 회로는 동작 온도와 제 1 온도가 일치하지 않는 경우, 제 1 논리 값의 제어 신호를 출력하는 비교기, 동작 온도와 제 1 온도가 일치하지 않는 경우, 제 2 온도에 대응하는 기울기 값을 출력하는 매칭 회로, 및 제 1 논리 값의 제어 신호가 수신되는 경우, 제 1 온도에 대응하는 제 1 주기에 기울기 값을 더하여 제 2 온도에 대응하는 제 2 주기를 계산하는 적분 회로를 포함할 수 있다.
본 발명의 실시 예에 따르면, 메모리 장치는 동작 온도의 변화에 대한 동작 주기의 변화율에 관한 온도-기울기 데이터를 이용하여, 동작 온도에 따라 동작 주기를 조절할 수 있다. 즉, 메모리 장치는 상대적으로 적은 양의 데이터를 이용하여, 동작 온도에 따라 동작 주기를 조절할 수 있다.
도 1은 본 발명의 실시 예에 따른 전자 장치를 보여주는 블록도이다.
도 2는 셀 어레이와 함께 리프레쉬 제어 회로의 구성 요소들을 보여주는 블록도이다.
도 3은 도 2의 리프레쉬 제어 회로가 리프레쉬 신호를 생성하는 방법을 설명하기 위한 흐름도이다.
도 4는 메모리 장치가 동작 주기들에 대한 데이터를 저장하는 경우를 설명하기 위한 그래프이다.
도 5는 도 2의 리프레쉬 제어 회로가 기울기 값들에 대한 데이터를 저장하는 경우를 설명하기 위한 그래프이다.
도 6은 도 2의 리프레쉬 제어 회로에 저장되는 매칭 데이터를 설명하기 위한 표이다.
도 7은 도 5의 기울기 값들의 다른 실시 예를 설명하기 위한 그래프이다.
도 8은 도 2의 주기 계산 회로의 동작을 설명하기 위한 블록도이다.
도 9는 도 8의 코드 생성 회로 및 비교기의 동작을 설명하기 위한 흐름도이다.
도 10은 도 8의 매칭 회로 및 적분 회로의 동작을 설명하기 위한 흐름도이다.
도 11은 도 8의 주기 계산 회로의 구성들의 상호작용을 보여주는 흐름도이다.
도 12는 도 8의 주기 계산 회로의 예시적인 구성을 보여주는 블록도이다.
도 13은 도 2의 주기 조절 회로의 동작을 설명하기 위한 블록도이다.
도 14은 도 13의 제 1 분주기의 동작을 설명하기 위한 블록도이다.
도 15는 도 13의 제 2 분주기의 동작을 설명하기 위한 블록도이다.
도 16은 도 14의 연장 신호에 관하여 설명하기 위한 타이밍도이다.
도 17은 도 15의 리프레쉬 신호에 관하여 설명하기 위한 타이밍도이다.
도 18은 도 13의 주기 조절 회로의 동작을 설명하기 위한 흐름도이다.
도 19는 본 발명의 실시 예에 따른 전자 장치의 동작을 설명하기 위한 블록도이다.
이하에서, 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있을 정도로, 본 발명의 실시 예들이 명확하고 상세하게 기재될 것이다.
도 1은 본 발명의 실시 예에 따른 전자 장치를 보여주는 블록도이다.
전자 장치(10000)는 셀 어레이(1100), 제어 로직(100), 행 디코더(1300), 쓰기 드라이버 및 감지 증폭기(1400), 그리고 버퍼(1500)를 포함할 수 있다.
셀 어레이(1100)는 행들 및 열들로 배열된 메모리 셀들을 포함한다. 메모리 셀들의 행들은 워드 라인들(WL)에 연결되고, 메모리 셀들의 열들은 비트 라인들(BL)에 연결될 수 있다. 셀 어레이(1100)는 동적 랜덤 액세스 메모리(DRAM) 셀들, 상 변화 랜덤 액세스 메모리(PRAM) 셀들, 자기 랜덤 액세스 메모리 셀들(MRAM), 강유전체 랜덤 액세스 메모리(FRAM) 셀들, 또는 저항성 랜덤 액세스 메모리(RRAM) 셀들을 포함할 수 있다.
행 디코더(1300)는 워드 라인들(WL)을 통해 셀 어레이(1100)에 연결된다. 행 디코더(1300)는 제어 로직(100)으로부터 수신되는 어드레스에 따라, 워드 라인들에 전압들을 인가할 수 있다. 쓰기 드라이버 및 감지 증폭기(1400)는 비트 라인들(BL)을 통해 셀 어레이(1100)에 연결된다.
쓰기 드라이버 및 감지 증폭기(1400)는 제어 로직(100)으로부터 수신되는 어드레스에 따라 비트 라인들(BL)에 전압들을 인가하거나 또는 비트 라인들(BL)의 전압들을 샘플링할 수 있다. 쓰기 드라이버 및 감지 증폭기(1400)는 버퍼(1500)와 데이터를 통신할 수 있다.
쓰기 드라이버 및 감지 증폭기(1400)는 버퍼(1500)로부터 전달되는 데이터에 따라 비트 라인들(BL)의 전압들을 조절함으로써, 버퍼(1500)로부터 전달되는 데이터를 셀 어레이(1100)의 메모리 셀들에 저장할 수 있다. 쓰기 드라이버 및 감지 증폭기(1400)는 비트 라인들(BL)의 전압들을 샘플링함으로써 셀 어레이(1100)의 메모리 셀들로부터 데이터을 읽고, 읽혀진 데이터를 버퍼(1500)로 전달할 수 있다.
버퍼(1500)는 전달된 데이터를 데이터 패드(DQ)를 통해 호스트(2000)로 전달할 수 있다. 또한, 버퍼(1500)는 데이터 패드(DQ)를 통해 호스트(2000)로부터 데이터를 수신할 수 있다.
제어 로직(100)은 행 디코더(1300), 쓰기 드라이버 및 감지 증폭기(1400), 그리고 버퍼(1500)를 제어할 수 있다. 제어 로직(100)은 호스트(200)로부터 커맨드(CMD), 어드레스(ADDR) 및 제어 신호(CTRL)에 기초하여, 행 디코더(1300), 쓰기 드라이버 및 감지 증폭기(1400), 및 버퍼(1500)를 제어할 수 있다. 구체적으로, 제어 로직(100)은 행 디코더(1300), 쓰기 드라이버 및 감지 증폭기(1400), 및 버퍼(1500)를 제어하여, 셀 어레이(1100)에 쓰기(write) 동작, 읽기(read) 동작 또는 리프레쉬(refresh) 동작을 수행할 수 있다.
제어 로직(100)은 리프레쉬 제어 회로(1200)를 포함할 수 있다. 본 발명의 실시 예에 따른 리프레쉬 제어 회로(1200)는 메모리 장치(1000)의 동작 온도에 대응하는 동작 주기로 리프레쉬 동작을 수행할 수 있다. 리프레쉬 제어 회로(1200)는 온도-기울기 데이터를 이용하여, 동작 온도에 대응하는 동작 주기를 계산할 수 있다. 리프레쉬 제어 회로(1200)는 제어 신호(CTRL)에 기초하여, 제어 로직(100)에 저장된 온도-기울기 데이터를 변환할 수 있다. 온도-기울기 데이터는 도 5를 참조하여 자세하게 설명된다.
리프레쉬 제어 회로(1200)는 리프레쉬 동작을 위해 행 디코더(1300) 및 쓰기 드라이버 및 감지 증폭기(1400)로 리프레쉬 동작 관련 신호들을 출력한다. 다만, 이하 도면들에서는 도면이 복잡해지는 것을 방지하기 위해, 리프레쉬 제어 회로(1200)가 셀 어레이(1100)로 리프레쉬 신호를 출력하는 것으로 표현된다. 리프레쉬 제어 회로(1200)가 셀 어레이(1100)로 리프레쉬 신호를 출력하는 것은 리프레쉬 제어 회로(1200)가 리프레쉬 신호에 포함된 정보들을 행 디코더(1300) 및 쓰기 드라이버 및 감지 증폭기(1400)에 제공하는 것을 의미한다.
도 2는 셀 어레이와 함께 리프레쉬 제어 회로의 구성 요소들을 보여주는 블록도이다.
도 1 및 도 2를 참조하면, 메모리 장치(1000)는 동작 온도에 대응하는 동작 주기로 동작을 수행할 수 있다. 이하 설명들에서, “동작 온도”는 메모리 장치(1000)의 온도를 의미한다. 리프레쉬 제어 회로(1200)는 온도 감지 회로(1210)를 이용하여 동작 온도에 대한 정보를 얻을 수 있다. 또한, “동작 주기”는 동작 온도에서, 메모리 장치(1000)가 특정 동작을 수행하는 주기를 의미한다.
예로서, 메모리 장치(1000)는 셀 어레이(1100)에 데이터를 저장하는 디램(Dynamic Random Access Memory, DRAM)일 수 있다. 이하에서, 메모리 장치(1000)는 디램인 것으로 가정된다. 또한, 이하 설명들에서, 메모리 장치(1000)가 동작 주기마다 리프레쉬 동작을 수행하는 것에 관하여 개시된다. 메모리 장치(1000)가 디램인 경우, 메모리 장치(1000)는 버퍼, 워킹 메모리, 또는 메인 메모리의 용도로 사용될 수 있다.
메모리 장치(1000)는 리프레쉬 제어 회로(1200)의 제어에 따라, 셀 어레이(1100)의 리프레쉬 동작을 수행할 수 있다.
셀 어레이(1100)는 셀 어레이(1100) 내에 있는 셀 커패시터에 충전되는 전하 형태로 데이터를 저장할 수 있다. 셀 커패시터에 저장된 전하는 시간이 지남에 따라 외부로 누설될 수 있다. 따라서, 메모리 장치(1000)는 저장된 데이터를 유지하기 위해, 셀 어레이(1100)에 주기적으로 리프레쉬 동작을 수행할 수 있다. 리프레쉬 동작이 수행되는 동안, 셀 어레이(1100)에 리프레쉬 전류가 흐를 수 있다. 메모리 장치(1000)는 리프레쉬 전류 소모를 줄이기 위해, 동작 온도에 기초하여 리프레쉬 주기를 조절할 수 있다. 셀 어레이(1100)의 데이터 유지 시간은 동작 온도가 낮아질수록 길어질 수 있다. 따라서, 메모리 장치(1000)는 동작 온도가 낮은 상태에서는, 리프레쉬 주기를 상대적으로 높여 리프레쉬 전류 소모를 줄일 수 있다.
리프레쉬 제어 회로(1200)는 온도 감지 회로(1210), 주기 계산 회로(1220) 및 주기 조절 회로(1230)를 포함할 수 있다. 리프레쉬 제어 회로(1200)는 동작 온도에 대응하는 동작 주기마다, 리프레쉬 동작을 수행할 수 있다.
온도 감지 회로(1210)는 메모리 장치(1000)의 온도를 감지할 수 있다. 예로서, 온도 감지 회로(1210)는 온도 감지 회로(1210)가 내장된 칩의 온도를 감지할 수 있다. 온도 감지 회로(1210)는 감지된 동작 온도를 동작 온도 코드(Tcode<0:7>)로 변환할 수 있다.
이하, 동작 온도 코드(Tcode<0:7>)는 8개의 비트들이 나열된 코드로 설명된다. 다만, 본 발명은 이에 한정되지 않고, 동작 온도 코드는 복수의 비트가 나열된 코드일 수 있다. 구체적으로, 동작 온도 코드(Tcode<0:7>)는 '00000000'부터 '11111111'까지의 논리값들 중 하나일 수 있다. 동작 온도는 온도가 높은 순서대로 '00000000'에서부터 '11111111'까지 대응할 수 있다. 예로서, 동작 온도 '120℃'가 동작 온도 코드(Tcode<0:7>) '00000000'에 대응하는 경우, 동작 온도 '100℃'는 동작 온도 코드(Tcode<0:7>) '00000010'에 대응할 수 있다. 또한, 동작 온도 '0℃'는 동작 온도 코드(Tcode<0:7>) '11111111'에 대응할 수 있다.
주기 계산 회로(1220)는 온도-기울기 데이터를 저장할 수 있다. 주기 계산 회로(1220)는 저장소(storage)에 온도-기울기 데이터를 저장할 수 있다.
예로서, 저장소는 주기 계산 회로(1220) 내에 있는 휘발성 또는 불휘발성 메모리 일 수 있다. 저장소가 휘발성 메모리인 경우, 메모리 장치(1000)가 리셋(reset)될 때마다 메모리 장치(1000)는 저장소에 온도-기울기 데이터를 기록할 수 있다. 또한, 저장소가 불휘발성 메모리인 경우, 메모리 장치(1000)는 도 1의 호스트(2000)의 제어에 따라, 저장소에 저장된 온도-기울기 데이터를 변환할 수 있다. 메모리 장치(1000)가 호스트(2000)의 제어에 따라, 저장소에 저장된 온도-기울기 데이터를 변환하는 동작은 도 19를 참조하여 자세하게 설명된다. 다만, 본 발명은 이에 한정되지 않고, 저장소는 주기 계산 회로(1220) 외부에 있는 휘발성 또는 불휘발성 메모리 일 수도 있다.
이하 설명들에서, 온도-기울기 데이터는 온도들과 기울기 값들을 매칭하기 위한 데이터를 의미한다. 구체적으로, 온도-기울기 데이터는 온도들을 나타내는 온도 데이터, 기울기 값들을 나타내는 기울기 데이터 및 온도들과 기울기 값들의 대응 관계를 나타내는 매칭 데이터를 포함할 수 있다. 기울기 값들은 온도들이 속하는 온도 구간들 각각에서의 온도 변화에 대한 주기의 변화율을 나타낼 수 있다. 온도-기울기 데이터는 도 5 및 도 6을 참조하여 자세하게 설명된다.
주기 계산 회로(1220)는 동작 온도 코드(Tcode<0:7>)를 수신할 수 있다. 주기 계산 회로(1220)는 동작 온도 코드(Tcode<0:7>) 및 온도-기울기 데이터에 기초하여, 동작 온도에 대응하는 동작 주기를 계산할 수 있다. “동작 주기”는 온도 감지 회로(1210)에서 감지된 동작 온도에 대응하는 동작 주기를 의미한다.
구체적으로, 주기 계산 회로(1220)는 기울기 값들을 적분하여, 동작 주기를 계산할 수 있다. 주기 계산 회로(1220)는 계산된 동작 주기를 동작 주기 코드(Ccode<0:8>)로 변환할 수 있다. 이하, 동작 주기 코드(Ccode<0:8>)는 9개의 비트들로 구성되는 것으로 가정되지만, 본 발명은 이에 한정되지 않는다. 주기 계산 회로(1220)의 구성들 및 동작들은 도 8 내지 도 12를 참조하여 자세하게 설명된다.
주기 조절 회로(1230)는 동작 주기 코드(Ccode<0:8>)를 수신할 수 있다. 동작 주기 코드(Ccode<0:8>)는 동작 주기를 나타낼 수 있다.
주기 조절 회로(1230)는 기본 주기를 갖는 기본 주기 신호를 생성할 수 있다. 주기 조절 회로(1230)는 기본 주기 신호를 동작 주기를 갖는 리프레쉬 신호(rs0)로 변환할 수 있다. 주기 조절 회로(1230)의 구성들 및 동작들은 도 13 내지 도 18을 참조하여 자세하게 설명된다.
리프레쉬 제어 회로(1200)는 리프레쉬 신호(rs0)를 이용하여, 동작 주기마다 셀 어레이(1100)를 리프레쉬할 수 있다. 정확하게는 리프레쉬 제어 회로(1200)가 리프레쉬 신호(rs0)를 도 1의 행 디코더(1300), 쓰기 드라이버 및 감지 증폭기(1400)로 출력하지만, 설명의 편의를 위해, 리프레쉬 제어 회로(1200)가 리프레쉬 신호(rs0)를 셀 어레이(1100)로 출력하는 것으로 표현된다.
요약하자면, 제 1 주기마다, 온도 감지 회로(1210)는 동작 온도를 감지하여, 동작 온도 코드(Tcode<0:7>)를 출력할 수 있다. 제 2 주기마다 주기 계산 회로(1220)는 기준 온도 코드를 생성하고, 동작 온도 코드(Tcode<0:7>)와 기준 온도 코드를 비교하는 동작을 수행할 수 있다. 제 2 주기는 제 1 주기보다 짧을 수 있다. 주기 계산 회로(1220)는 동작 온도 코드(Tcode<0:7>)와 기준 온도 코드가 일치할 때까지, 기준 온도 코드의 논리 값을 '00000000'에서부터 증가시키며 비교 동작을 반복 수행할 수 있다. 주기 계산 회로(1220)는 동작 온도 코드(Tcode<0:7>)와 기준 온도 코드가 일치하는 경우, 동작 주기 코드(Ccode<0:8>)를 출력할 수 있다. 구체적으로, 주기 계산 회로(1220)는 동작 온도 코드(Tcode<0:7>)와 기준 온도 코드가 일치할 때까지, 적분 연산을 반복하여 동작 주기 코드(Ccode<0:8>)를 생성할 수 있다. 주기 계산 회로(1220)는 동작 주기 코드(Ccode<0:8>)를 출력한 후 리셋 될 수 있다. 리셋된 후 새로운 동작 온도 코드(Tcode<0:7>)가 수신되면, 주기 계산 회로(1220)는 동작 온도 코드(Tcode<0:7>)와 기준 온도 코드가 일치할 때까지, 제 2 주기마다 기준 온도 코드의 논리 값을 '00000000'에서부터 증가시키며 비교 동작을 반복 수행할 수 있다.
도 3은 도 2의 리프레쉬 제어 회로가 리프레쉬 신호를 생성하는 방법을 설명하기 위한 흐름도이다.
S110 동작에서, 리프레쉬 제어 회로(1200)는 메모리 장치(1000)의 동작 온도를 감지할 수 있다. 리프레쉬 제어 회로(1200)는 감지된 동작 온도를 동작 온도 코드로 변환할 수 있다.
S120 동작에서, 리프레쉬 제어 회로(1200)는 동작 온도 코드에 기초하여, 동작 주기를 계산할 수 있다. 구체적으로, 리프레쉬 제어 회로(1200)는 기울기 값들을 적분하여, 동작 주기를 계산할 수 있다. 계산된 동작 주기는 동작 온도 코드 및/또는 동작 온도에 대응하는 주기일 수 있다.
S130 동작에서, 리프레쉬 제어 회로(1200)는 기본 주기를 갖는 기본 신호를 생성할 수 있다. 리프레쉬 제어 회로(1200)는 기본 신호를 이용하여, 동작 주기를 갖는 리프레쉬 신호를 생성할 수 있다.
S140 동작에서, 리프레쉬 제어 회로(1200)는 리프레쉬 신호를 이용하여, 동작 주기마다 셀 어레이(1100)를 리프레쉬 할 수 있다.
도 4는 메모리 장치가 동작 주기들에 대한 데이터를 저장하는 경우를 설명하기 위한 그래프이다. 그래프의 가로축은 도 1의 메모리 장치(1000)의 동작 온도를 나타낸다. 그래프의 세로축은 메모리 장치(1000)가 동작 온도에 따라 리프레쉬 동작을 수행하는 동작 주기를 나타낸다.
메모리 장치는 동작 온도에 따라 상이한 동작 주기들로 리프레쉬 동작을 수행할 수 있다. 도 4의 그래프는 동작 온도와 동작 주기의 상관 관계를 나타낸다. 다만, 도 4의 그래프는 예시적인 그래프이며, 본 발명은 이에 한정되지는 않는다. 도 4의 그래프는 보다 더 완만한 기울기를 갖거나, 보다 더 가파른 기울기를 가질 수도 있다. 도 4의 그래프는 메모리 장치가 동작 온도 'T0', 'T1', 'T2' … 'Tn -2', 'Tn-1', 'Tn'에서 각각 동작 주기 'C0', 'C1', 'C2' … 'Cn -2', 'Cn -1', 'Cn'로 리프레쉬 동작을 수행함을 나타낸다. 'n'은 2 이상의 자연수를 의미한다.
메모리 장치는 온도-주기 데이터를 저장할 수 있다. 메모리 장치는 온도-주기 데이터를 이용하여, 동작 온도에 대응하는 동작 주기로 리프레쉬 동작을 수행할 수 있다. 온도-주기 데이터는 온도들(T0~Tn)과 동작 주기들(C0~Cn)을 매칭하기 위한 데이터를 의미한다. 구체적으로, 온도-주기 데이터는 온도들(T0~Tn)을 나타내는 온도 데이터, 동작 주기들(C0~Cn)을 나타내는 주기 데이터 및 온도들(T0~Tn)과 동작 주기들(C0~Cn)의 대응 관계를 나타내는 매칭 데이터를 포함할 수 있다.
일반적으로 리프레쉬 제어 회로에는 100개 이상의 온도들에 관한 정보가 저장되므로, 'n'이 100 이상일 수 있다. 도 4의 그래프를 참고하면, 동작 주기는 동작 온도가 증가함에 따라 비선형적으로 감소한다. 즉, 주기 데이터는 넓은 범위의 동작 주기들을 표현할 수 있어야 한다. 따라서, 'n'이 100인 경우, 주기 데이터는 동작 주기를 나타내기 위해 일반적으로 9개 이상의 비트들로 구성된다. 이 경우, 메모리 장치에 저장되어야 하는 주기 데이터의 크기 및 매칭 데이터의 크기가 상대적으로 커진다. 즉, 메모리 장치에 온도-주기 데이터가 저장되는 경우, 메모리 장치는 저장 용량을 비효율적으로 사용하게 된다.
도 5는 도 2의 리프레쉬 제어 회로가 기울기 값들에 대한 데이터를 저장하는 경우를 설명하기 위한 그래프이다. 그래프의 가로축은 도 1의 메모리 장치(1000)의 동작 온도를 나타낸다. 그래프의 세로축은 메모리 장치(1000)가 동작 온도에 따라 리프레쉬 동작을 수행하는 동작 주기를 나타낸다.
도 4를 참조하여 설명된 것처럼, 그래프(g0)는 동작 온도의 변화에 따른 동작 주기의 변화량을 나타낸다. 또한, 도 4를 참조하여 설명한 것과 유사하게, 도 2의 리프레쉬 제어 회로(1220)도 동작 온도에 따라 상이한 동작 주기들로 리프레쉬 동작을 수행할 수 있다. 다만, 리프레쉬 제어 회로(1220)는 도 4에서 설명된 메모리 장치와 달리, 온도-기울기 데이터를 저장할 수 있다.
리프레쉬 제어 회로(1220)는 온도-기울기 데이터를 이용하여, 동작 주기로 리프레쉬 동작을 수행할 수 있다. 온도-기울기 데이터는 온도들과 기울기 값들을 매칭하기 위한 데이터를 의미한다. 구체적으로, 리프레쉬 제어 회로(1220)는 온도-기울기 데이터를 이용하여, 적분 연산을 통해 동작 주기를 계산할 수 있다. 구체적으로, 온도-기울기 데이터는 온도 데이터, 기울기 데이터 및 매칭 데이터를 포함할 수 있다. 온도 데이터는 온도들(T0~Tn)을 나타낼 수 있다. 기울기 데이터는 기울기 값들(S1~Sm)을 나타낼 수 있다. 'm'은 2 이상이고, 도 4의 'n'이하인 자연수일 수 있다. 매칭 데이터는 온도들(T1~Tn)과 기울기 값들(S1~Sm)의 대응 관계 및 온도(T0)와 동작 주기(C0)의 대응 관계를 나타낼 수 있다. 온도들(T0~Tn) 중 가장 높은 온도(T0)에 대응하는 동작 주기(C0)는 적분 연산의 초기값이 될 수 있다. 즉, 온도(T0)는 기울기 값이 아닌 동작 주기(C0)에 매칭될 수 있다.
도 5의 그래프를 구체적으로 살펴보면, 동작 온도 구간(T0~Tn)은 m개의 온도 구간들(R1~Rm)로 구분될 수 있다. “동작 온도 구간(T0~Tn)”은 메모리 장치(1000)가 동작할 수 있는 온도 구간을 의미한다. 기울기 값들(S1~Sm)은 각각 온도 구간들(R1~Rm)에 대응할 수 있다. 기울기 값들(S1~Sm)은 온도 구간들(R1~Rm) 각각에서의 온도 변화에 대한 주기의 변화율일 수 있다. 'm'이 'n' 보다 작으므로, 온도 구간들(Rm~R1) 중 적어도 하나의 온도 구간(Rk)에는 복수의 온도들이 포함될 수 있다. 'k'는 1 이상이고, 'm'이하인 자연수일 수 있다. 동일한 온도 구간에 포함되는 온도들은 동일한 기울기 값들을 가질 수 있다.
온도 구간들(R1~Rm)은 온도들(T0~Tn)을 포함할 수 있다. 이하 설명들에서, 온도들(T0, T1)은 온도 구간(R1)에, 온도(T2)는 온도 구간(R2)에, 온도들(Tn -2, Tn - 1)은 온도 구간(Rm - 1)에, 온도들(Tn)은 온도 구간(Rm)에 포함되는 것으로 가정된다. 다만, 본 발명은 이에 한정되지 않으며, 'm' 및 'n'의 크기, 온도 구간들 각각의 길이, 사용자의 설정에 따라, 온도들과 온도 구간들 사이의 관계가 달라질 수 있다. 예로서, 사용자의 설정에 따라, 온도 구간(Rp-)의 왼쪽 경계에 위치하는 온도(Tk)가 온도 구간(Rp +1-)에 포함될지, 온도 구간(Rp-)에 포함될지 여부가 결정될 수 있다. 다른 예로서, 사용자의 설정에 따라, 온도 구간(Rp-)의 오른쪽 경계에 위치하는 온도(Tk)가 온도 구간(Rp -1-)에 포함될지, 온도 구간(Rp-)에 포함될지 여부가 결정될 수 있다. 'p'는 1보다 크고, 'm'보다 작은 자연수일 수 있다.
온도 구간(Rk)이 기울기 값(Sk)에 대응하는 경우, 온도 구간(Rk)에 속하는 온도들은 기울기 값(Sk)에 대응할 수 있다. 예로서, 온도 구간(R1)에 속하는 온도(T1)은 기울기 값(S1)에 대응될 수 있다. 매칭 데이터는 이러한 대응 관계를 나타내며, 이는 도 6을 참조하여 자세하게 설명된다.
도 5에 도시된 것처럼, 그래프(g0)는 피크(peak)와 같이 기울기가 급변하는 구간이 없고 비교적 완만한 기울기를 갖는 곡선일 수 있다. 기울기 값들(S1~Sm)의 변동폭이 크지 않으므로, 기울기 데이터는 비교적 적은 수의 비트들로 기울기 값들을 표현할 수 있다. 즉, 기울기 데이터는 도 4를 참조하여 설명된 주기 데이터보다 적은 수의 비트들로 구성될 수 있다. 'm'이 25인 경우, 기울기 데이터는 기울기 값을 나타내기 위해 일반적으로 3개의 비트들로 구성될 수 있다. 다만, 본 발명은 이에 한정되지 않고, 기울기 데이터는 복수의 비트로 구성될 수 있다.
즉, 예로서, 'm' 및 'n'이 각각 '25' 및 '100'인 경우, 기울기 데이터는 기울기 값들을 저장하기 위해 '75(=3*25)'개의 비트들을 포함할 수 있고, 주기 데이터는 동작 주기 값들을 저장하기 위해 '900(=9*100)'개의 비트들을 포함할 수 있다.
따라서, 리프레쉬 제어 회로(1220)가 온도-기울기 데이터를 저장하는 경우, 리프레쉬 제어 회로(1220)에 저장되어야 하는 데이터의 양이 상대적으로 적을 수 있다. 이 경우, 리프레쉬 제어 회로(1220)는 저장 용량을 효율적으로 사용할 수 있고, 리프레쉬 제어 회로(1220)는 상대적으로 작은 크기로 구현될 수 있다.
사용자는 기울기 데이터를 변경함으로써, 온도들(T0~Tn)과 동작 주기들(C0~Cn) 간의 대응 관계를 변경할 수 있다. 즉, 사용자가 온도들(T0~Tn)과 동작 주기들(C0~Cn) 간의 대응 관계를 변경하고자 하는 경우에 조작해야될 데이터의 양이 비교적 적을 수 있다. 따라서, 사용자는 테스트 단계에서 온도들(T0~Tn)과 주기들(C0~Cn) 간의 대응 관계를 다양하게 변경해볼 수 있고, 리프레쉬 전류 소모를 최소화하는 대응 관계를 보다 쉽게 발견할 수 있다.
도 6은 도 2의 리프레쉬 제어 회로에 저장되는 매칭 데이터를 설명하기 위한 표이다. 도 6을 설명하기 위해, 도 4 및 도 5가 함게 참조된다.
매칭 데이터는 온도들(T1~Tn)과 기울기 값들(S1~Sm)의 대응 관계 및 온도(T0)와 동작 주기(C0)의 대응 관계를 나타낼 수 있다. 도 5를 참조하여 설명한 것처럼, 온도 구간(Rk)이 기울기 값(Sk)에 대응하는 경우, 온도 구간(Rk)에 속하는 온도들은 기울기 값(Sk)에 대응할 수 있다. 다만, 예외적으로, 온도(T0)는 동작 주기(C0)에 매칭될 수 있다.
구체적으로, 온도(T1)는 기울기 값(S1)에, 온도(T2)는 기울기 값(S2)에, 온도들(Tn-2, Tn - 1)은 기울기 값(Sm - 1)에, 온도(Tn)는 기울기 값(Sm)에 대응할 수 있다. 온도-기울기 데이터는 온도들(T1~Tn)과 기울기 값들(S1~Sm)간의 이러한 대응 관계를 나타낼 수 있다. 따라서, 리프레쉬 제어 회로(1200)는 온도-기울기 데이터를 이용하여, 동작 온도를 동작 온도에 대응하는 기울기 값으로 매칭할 수 있다.
도 7은 도 5의 기울기 값들의 다른 실시 예를 설명하기 위한 그래프이다. 그래프의 가로축은 도 1의 메모리 장치(1000)의 동작 온도를 나타낸다. 그래프의 세로축은 메모리 장치(1000)가 동작 온도에 따라 리프레쉬 동작을 수행하는 동작 주기를 나타낸다.
도 5를 참조하여서는, 기울기 값들(S1~Sm)이 온도 구간들(R1~Rm) 각각에서의 온도 변화에 대한 주기의 변화율인 것으로 설명된다. 그러나, 본 발명은 이에 한정되지 않고, 기울기 값들(S1~Sm)은 온도 구간들(R1~Rm)에서 온도의 변화에 따른 주기의 변화량과 관련되는 값일 수 있다. 예로서, 도 7에 도시된 것과 같이, 기울기 값들(S1'~Sm')은 온도 구간들(Rm~R1) 오른쪽 경계에서의 접선의 기울기일 수 있다. 또한, 도 7에 도시되지는 않지만, 기울기 값들(S1'~Sm')은 온도 구간들(Rm~R1) 왼쪽 경계에서의 접선의 기울기일 수도 있다.
도 8은 도 2의 주기 계산 회로의 동작을 설명하기 위한 블록도이다.
주기 계산 회로(1220)는 코드 생성 회로(1221), 비교기(1222), 매칭 회로(1223) 및 적분 회로(1224)를 포함할 수 있다.
코드 생성 회로(1221)는 기준 온도 코드(Rcode<0:7>)를 생성할 수 있다. 기준 온도 코드(Rcode<0:7>)는 기준 온도를 나타낼 수 있다. 이하에서, 기준 온도 코드(Rcode<0:7>)는 8개의 비트들로 구성되는 것으로 가정된다. 그러나, 본 발명은 이에 한정되지 않고, 기준 온도 코드(Rcode<0:7>)는 하나 이상의 비트들로 구성될 수 있다.
기준 온도 코드(Rcode<0:7>)는 '00000000'과 '11111111' 사이의 논리 값일 수 있다. 기준 온도 코드(Rcode<0:7>)의 논리 값이 증가할수록, 기준 온도 코드(Rcode<0:7>)는 더 낮은 기준 온도를 나타낼 수 있다.
예로서, 도 2의 메모리 장치(1000)가 도 4의 온도(T0)와 도 4의 온도(Tn)사이에서 동작하는 경우, '00000000'의 기준 온도 코드(Rcode<0:7>)는 온도(T0)를 나타내고, '00000001'의 기준 온도 코드(Rcode<0:7>)는 온도(T1)를 나타낼 수 있다. 또한, '11111111'의 기준 온도 코드(Rcode<0:7>)는 온도(Tn)를 나타낼 수 있다. 다만, 본 발명은 이에 한정되지 않고, 도 4의 온도들(T0~Tn)의 개수, 단위 온도의 크기 또는 기준 온도 코드(Rcode<0:7>)의 비트들의 수에 따라, 기준 온도 코드(Rcode<0:7>)의 변화에 따른 온도의 변화량이 달라질 수 있다.
코드 생성 회로(1221)는 기준 온도 코드(Rcode<0:7>)를 비교기(1222)로 출력할 수 있다. 비교기(1222)는 동작 온도 코드(Tcode<0:7>)와 기준 온도 코드(Rcode<0:7>)를 비교할 수 있다. 동작 온도 코드(Tcode<0:7>)가 기준 온도 코드(Rcode<0:7>)와 일치하지 않는 경우, 비교기(1222)는 코드 생성 회로(1221)로 제 1 논리 값을 갖는 제어 신호(cs0)를 출력할 수 있다. 또한, 동작 온도 코드(Tcode<0:7>)가 기준 온도 코드(Rcode<0:7>)와 일치하는 경우, 비교기(1222)는 코드 생성 회로(1221)로 제 2 논리 값을 갖는 제어 신호(cs0)를 출력할 수 있다.
동작 온도 코드(Tcode<0:7>)가 기준 온도 코드(Rcode<0:7>)와 일치하지 않는다는 것은 동작 온도가 기준 온도와 일치하지 않는다는 것을 의미한다. 또한, 동작 온도 코드(Tcode<0:7>)가 기준 온도 코드(Rcode<0:7>)와 일치한다는 것은 동작 온도가 기준 온도와 일치한다는 것을 의미한다.
이하 설명들에서, 제어 신호(cs0)는 선택적으로 제 1의 논리 값 또는 제 2의 논리 값을 갖는 것으로 가정된다. 제 1 논리 값이 '0'인 경우 제 2 논리 값은 '1'을, 제 1 논리 값이 '1'인 경우 제 2 논리 값은 '0'을 의미할 수 있다. 다만, 본 발명은 이에 한정되지 않고, 제 1 논리 값 및 제 2 논리 값은 각각 제 1 전압 레벨 및 제 2 전압 레벨을 의미할 수도 있다.
제 1 논리 값을 갖는 제어 신호(cs0)가 수신되는 경우, 코드 생성 회로(1221)는 이전에 출력했던 기준 온도 코드(Rcode<0:7>)를 논리 값 '1'만큼 증가시킬 수 있다. 즉, 코드 생성 회로(1221)는 제 1 논리 값의 제어 신호(cs0)가 수신될 때마다, 이전에 출력했던 기준 온도 코드(Rcode<0:7>)를 논리 값 '1'만큼씩 증가시킬 수 있다.
제 2 논리 값을 갖는 제어 신호(cs0)가 수신되는 경우, 코드 생성 회로(1221)는 리셋될 수 있다. 코드 생성 회로(1221)가 리셋된다는 것은 코드 생성 회로(1221)가 다시 '00000000'의 논리 값을 갖는 기준 온도 코드(Rcode<0:7>)를 생성한다는 것을 의미한다.
리셋된 후 도 2의 온도 감지 회로(1210)로부터 동작 온도 코드(Tcode<0:7>)가 수신되면, 코드 생성 회로(1221)는 다시 '00000000'의 논리 값을 갖는 기준 온도 코드(Rcode<0:7>)를 생성할 수 있다. 구체적으로, 동작 온도 코드(Tcode<0:7>)는 제 1 주기마다 온도 감지 회로(1210)로부터 출력되고, 코드 생성 회로(1221)는 제 2 주기마다 논리 값을 증가시키며 기준 온도 코드(Rcode<0:7>)를 생성할 수 있다. 제 2 주기는 제 1 주기보다 작아, 코드 생성 회로(1221)는 기준 온도 코드(Rcode<0:7>)가 동작 온도 코드(Tcode<0:7>)와 일치할 때까지 여러 번 기준 온도 코드(Rcode<0:7>)를 생성할 수 있다.
코드 생성 회로(1221)는 기준 온도 코드(Rcode<0:7>)를 매칭 회로(1223)로 출력할 수 있다. 매칭 회로(1223)는 도 5 및 도 6을 참조하여 설명된 온도-기울기 데이터를 저장할 수 있다. 매칭 회로(1223)는 온도-기울기 데이터 및 기준 온도 코드(Rcode<0:7>)에 기초하여, 기준 온도를 기준 온도에 대응하는 기울기 값으로 매칭시킬 수 있다. 매칭 회로(1223)는 기준 온도에 대응하는 기울기 값을 적분 회로(1224)로 출력할 수 있다. 예로서, '00000001'의 기준 온도 코드(Rcode<0:7>)가 수신되는 경우, 매칭 회로(1223)는 기준 온도(T1)에 대응하는 기울기 값(S1)을 출력할 수 있다. 다만, '00000000'의 기준 온도 코드(Rcode<0:7>)가 수신되는 경우, 매칭 회로(1223)는 동작 주기(C0)를 출력할 수 있다. 동작 주기(C0)는 적분 회로(1224)에서 수행되는 적분 연산의 초기값이 될 수 있다.
코드 생성 회로(1221)는 기준 온도 코드(Rcode<0:7>)가 동작 온도 코드(Tcode<0:7>)와 일치할 때까지, 기준 온도 코드를 '1'의 논리 값씩 증가시키면서 차례대로 출력할 수 있다. 따라서, 매칭 회로(1223)도 기준 온도 코드(Rcode<0:7>)가 동작 온도 코드(Tcode<0:7>)와 일치할 때까지, 기준 온도 코드들에 대응하는 기울기 값들을 차례대로 출력할 수 있다.
적분 회로(1224)는 수신되는 기울기 값들을 차례대로 적분할 수 있다. 적분 회로(1224)는 기울기 값들을 적분하여, 동작 주기를 계산할 수 있다. 즉, 적분 회로(1224)는 기준 온도 코드(Rcode<0:7>)와 동작 온도 코드(Tcode<0:7>)가 일치할 때까지 적분을 수행하여, 동작 주기를 계산할 수 있다.
예로서, 동작 온도가 온도(Tk)인 경우를 설명한다. 'k'는 1 이상이고, n 이하인 정수로 가정된다. 매칭 회로(1223)는 '00000000'의 기준 온도 코드(Rcode<0:7>)가 수신되면, 동작 주기(C0)를 출력할 수 있다. 매칭 회로(1223) '00000000'의 기준 온도 코드(Rcode<0:7>)를 수신한 후에, '00000001'의 기준 온도 코드(Rcode<0:7>)를 수신할 수 있다. 매칭 회로(1223)는 '00000001'의 기준 온도 코드(Rcode<0:7>)가 수신되면, 기울기 값(S1)을 출력할 수 있다. 적분 회로(1224)는 온도(T0)에 기울기 값(S1)을 더할 수 있다. 적분 회로(1224)는 계산된 적분 연산 결과(T0+S1)를 저장할 수 있다. 매칭 회로(1223)는 온도(Tk)를 나타내는 기준 온도 코드(Rcode<0:7>)가 수신될 때까지, 기울기 값들을 순차적으로 출력할 수 있다. 적분 회로(1224)는 수신되는 기울기 값들을 이전 적분 연산의 결과(T0+S1)에 순차적으로 더할 수 있다. 따라서, 적분 회로(1224)는 최종적으로 적분 연산 값(T0+S1+…+ Sk)을 얻을 수 있다. 적분 연산 결과(T0+S1+…+ Sk)는 온도(Tk)에 대응되는 동작 주기일 수 있다.
앞서 설명되었듯이, 비교기(1222)는 동작 온도 코드(Tcode<0:7>)와 기준 온도 코드(Rcode<0:7>)의 일치 여부에 따라, 상이한 논리 값들을 갖는 제어 신호(cs0)를 출력할 수 있다. 동작 온도 코드(Tcode<0:7>)가 기준 온도 코드(Rcode<0:7>)와 일치하지 않는 경우, 비교기(1222)는 제 1 논리 값을 갖는 제어 신호(cs0)를 적분 회로(1224)로 출력할 수 있다. 이 경우, 적분 회로(1224)는 계속하여 적분 연산을 수행할 수 있다. 동작 온도 코드(Tcode<0:7>)가 기준 온도 코드(Rcode<0:7>)와 일치하는 경우, 비교기(1222)는 제 2 논리 값을 갖는 제어 신호(cs0)를 적분 회로(1224)로 출력할 수 있다. 이 경우, 적분 회로(1224)는 적분 연산의 결과를 동작 주기 코드(Ccode<0:8>)로 변환하여 출력할 수 있다. 동작 주기 코드(Ccode<0:8>)는 동작 주기를 나타낼 수 있다. 동작 주기 코드(Ccode<0:8>)는 9개의 비트들이 나열된 코드일 수 있다.
적분 회로(1224)는 동작 주기 코드(Ccode<0:8>)를 출력 한 후, 제 2 논리 값을 갖는 제어 신호(cs0)에 의해 리셋될 수 있다. 적분 회로(1224)는 리셋되면, 저장된 적분 연산 값을 '0'으로 초기화할 수 있다.
도 9는 도 8의 코드 생성 회로 및 비교기의 동작을 설명하기 위한 흐름도이다.
동작 온도 코드(Tcode<0:7>)가 '00000000'이면, 코드 생성 회로(1221)는 '00000000'의 기준 온도 코드(Rcode<0:7>)를 생성한 후에 리셋될 수 있다. 도 9를 참조하여서는, 도 8의 코드 생성 회로(1221)가 '00000000'의 기준 온도 코드(Rcode<0:7>)를 생성한 후의 동작들이 설명된다. 또한, 동작 온도 코드(Tcode<0:7>)의 논리 값은 '00000000'보다 큰 것으로 가정된다.
S210 동작에서, 코드 생성 회로(1221)는 기준 온도 코드(Rcode<0:7>)를 생성할 수 있다.
S220 동작에서, 코드 생성 회로(1221)는 생성된 기준 온도 코드(Rcode<0:7>)를 도 8의 비교기(1222)로 출력할 수 있다.
S230 동작에서, 비교기(1222)는 기준 온도 코드(Rcode<0:7>)와 동작 온도 코드(Tcode<0:7>)를 비교할 수 있다.
기준 온도 코드(Rcode<0:7>)가 동작 온도 코드(Tcode<0:7>)와 일치하지 않는 경우, S240 동작이 수행될 수 있다. S240 동작에서, 비교기(1222)는 제 1 논리 값을 갖는 제어 신호(cs0)를 출력할 수 있다. 제 1 논리 값을 갖는 제어 신호(cs0)가 수신되는 경우, 코드 생성 회로(1221)는 새로운 기준 온도 코드(Rcode<0:7>)를 생성할 수 있다. 즉, S240 동작이 수행된 후에 S210~S230 동작들이 다시 수행될 수 있다. S210 동작에서, 코드 생성 회로(1221)는 이전에 생성된 기준 온도 코드(Rcode<0:7>)보다 논리 값 '1'만큼 큰 새로운 기준 온도 코드(Rcode<0:7>)를 생성할 수 있다.
기준 온도 코드(Rcode<0:7>)가 동작 온도 코드(Tcode<0:7>)와 일치하는 경우, S245 동작이 수행될 수 있다. S245 동작에서, 비교기(1222)는 제 2 논리 값을 갖는 제어 신호(cs0)를 출력할 수 있다. 제 2 논리 값을 갖는 제어 신호(cs0)가 수신되는 경우, S250 동작에서, 코드 생성 회로(1221)는 리셋될 수 있다. 코드 생성 회로(1221)는 리셋된 후, 다시 '00000000'의 기준 온도 코드(Rcode<0:7>)를 생성할 수 있다.
도 10은 도 8의 매칭 회로 및 적분 회로의 동작을 설명하기 위한 흐름도이다.
동작 온도 코드(Tcode<0:7>)가 '00000000'이면, 도 8의 적분 회로(1224)는 동작 주기(C0)에 대응하는 동작 주기 코드(Ccode<0:8>)를 출력한 직후에 리셋될 수 있다. 도 10을 참조하여서는, 도 8의 매칭 회로(1223)가 '00000000'의 기준 온도 코드(Rcode<0:7>)에 대응하는 동작 주기(C0)를 출력한 이후의 동작들이 설명된다. 도 9를 참조한 설명에서와 같이, 동작 온도 코드(Tcode<0:7>)는 '00000000'보다 큰 것으로 가정된다.
S310 동작에서, 매칭 회로(1223)는 코드 생성 회로(1221)로부터 기준 온도 코드(Rcode<0:7>)를 수신할 수 있다.
S320 동작에서, 매칭 회로(1223)는 기준 온도 코드(Rcode<0:7>)를 기울기 값에 매칭시킬 수 있다.
S330 동작에서, 매칭 회로(1223)는 기준 온도 코드(Rcode<0:7>)와 매칭되는 기울기 값을 적분 회로(1224)로 출력할 수 있다.
S340 동작에서, 적분 회로(1224)는 이전 적분 연산의 결과에 기울기 값을 더할 수 있다. 예로서, 기준 온도 코드(Rcode<0:7>)가 '00000010'인 경우, 이전 적분 연산의 결과는 'C0+S1'일 수 있다.
S350 동작에서, 적분 회로(1224)는 비교기(1222)로부터 제어 신호(cs0)를 수신할 수 있다.
적분 회로(1224)로 제 1 논리 값을 갖는 제어 신호(cs0)가 수신되는 경우, S310 내지 S350 동작들이 다시 수행될 수 있다. 이 경우, S310 동작에서 매칭 회로(1223)로 수신되는 기준 온도 코드(Rcode<0:7>)는 이전에 수신되었던 기준 온도 코드(Rcode<0:7>) 보다 논리 값 '1'만큼 클 수 있다.
적분 회로(1224)로 제 2 논리 값을 갖는 제어 신호(cs0)가 수신되는 경우, S360 동작이 수행될 수 있다. S360 동작에서, 적분 회로(1224)는 적분 연산의 결과를 동작 주기 코드(Ccode<0:8>)로 변환하여 출력할 수 있다. 적분 회로(1224)는 동작 주기 코드(Ccode<0:8>)를 출력한 후 리셋될 수 있다. 적분 회로(1224)가 리셋되는 경우, 적분 회로(1224)에 저장되어 있는 적분 연산의 결과는 '0'으로 초기화될 수 있다.
도 11은 도 8의 주기 계산 회로의 구성들의 상호작용을 보여주는 흐름도이다.
도 11을 참조하여서는, 코드 생성 회로(1221)가 '00000000'의 기준 온도 코드(Rcode<0:7>)를 출력한 이후의 동작들이 설명된다. 또한, 동작 온도 코드(Tcode<0:7>)는 '00000000'보다 큰 것으로 가정된다.
S410 동작에서, 코드 생성 회로(1221)는 기준 온도 코드(Rcode<0:7>)를 생성할 수 있다.
S420 및 S430 동작들에서, 코드 생성 회로(1221)는 기준 온도 코드(Rcode<0:7>)를 비교기(1222) 및 매칭 회로(1223)로 출력할 수 있다.
S440 동작에서, 매칭 회로(1223)는 기준 온도 코드(Rcode<0:7>)를 기울기 값에 매칭시킬 수 있다.
S450 동작에서, 매칭 회로(1223)는 매칭된 기울기 값을 적분 회로(1224)로 출력할 수 있다.
S460 동작에서, 적분 회로(1224)는 수신된 기울기 값을 이전 적분 연산의 결과에 더할 수 있다.
S470 동작에서, 비교기(1222)는 S420 동작에서 수신된 기준 온도 코드(Rcode<0:7>)를 동작 온도 코드(Tcode<0:7>)와 비교할 수 있다.
S480 및 S485 동작들에서, 비교기(1222)는 비교 결과에 따라, 제어 신호(cs0)를 코드 생성 회로(1221) 및 적분 회로(1224)로 출력할 수 있다. 제어 신호(cs0)의 논리 값에 따라, 도 8의 주기 계산 회로(1220)의 구성들(1221, 1222, 1223, 1224)은 상이한 동작들을 제공할 수 있다. 구체적으로, 제 1 논리 값의 제어 신호(cs0)가 출력되는 경우, 주기 계산 회로(1220)의 구성들(1221, 1222, 1223, 1224)은 제 2 논리 값의 제어 신호(cs0)가 출력될 때까지 S410 내지 S485 동작들을 반복하여 수행할 수 있다. 제 2 논리 값의 제어 신호(cs0)가 출력되는 경우, 주기 계산 회로(1220)의 구성들(1221, 1224)은 리셋될 수 있다.
도 12는 도 8의 주기 계산 회로의 예시적인 구성을 보여주는 블록도이다.
주기 계산 회로(1220a)의 구성들(1221a, 1222, 1223, 1224a)은 도 8의 주기 계산 회로의 구성들(1221, 1222, 1223, 1224)과 실질적으로 동일한 동작들을 제공할 수 있다. 따라서, 도 12를 참조하여서는, 코드 생성 회로(1221a) 및 적분 회로(1224a)의 구성들이 자세하게 설명되고, 중복되는 설명은 생략된다.
코드 생성 회로(1221a)는 오실레이터(1221a_1) 및 카운터(1221a_2)를 포함할 수 있다. 오실레이터(1221a_1)는 교류 신호를 생성할 수 있다. 교류 신호의 주기는 도 2의 온도 감지 회로(1210)가 동작 온도를 감지하는 주기보다 짧을 수 있다.
카운터(1221a_2)는 오실레이터(1221a_1)로부터 교류 신호를 수신할 수 있다. 카운터(1221a_2)는 교류 신호에 기초하여, 기준 온도 코드(Rcode<0:7>)를 생성할 수 있다. 카운터(1221a_2)는 비동기식 카운터일 수 있다. 기준 온도 코드가 n개의 비트들로 구성되는 경우, 카운터(1221a_2)는 n개의 플립플롭들로 구성될 수 있다. 즉, 본 설명에서, 카운터(1221a_2)는 8개의 플립플롭(flip-flop)들을 포함할 수 있다. 예로서, 플립플롭들은 T 플립플롭들, D 플립플롭들, 또는 JK 플립플롭들일 수 있다. 카운터(1221a_2)는 교류 신호의 펄스가 입력될 때마다, 기준 온도 코드(Rcode<0:7>)의 논리 값 '1'씩 증가시킬 수 있다. 제어 신호(cs0)에 의해 리셋된 경우, 카운터(1221a_2)는 교류 신호의 펄스가 입력되면 다시 기준 온도 코드(Rcode<0:7>)의 논리 값을 '00000000'에서부터 증가시킬 수 있다.
적분 회로(1224a)는 가산기(1224a_1)를 포함할 수 있다. 가산기(1224a_1)는 덧셈 연산을 수행한 후, 덧셈 연산의 결과를 저장할 수 있다. 덧셈 연산 및 덧셈 연산의 결과는 이전의 설명들에서의 적분 연산 및 적분 연산의 결과를 의미한다. 가산기(1224a_1)는 매칭 회로(1223)로부터 기울기 값을 수신할 수 있다. 가산기(1224a_1)는 저장되어 있는 덧셈 연산의 결과에 기울기 값을 더할 수 있다. 가산기(1224a_1)는 제 2 논리 값의 제어 신호(cs0)가 수신될 때까지, 상기 동작을 반복할 수 있다. 가산기(1224a_1)는 제 2 논리 값의 제어 신호(cs0)가 수신되는 경우, 덧셈 연산의 결과를 동작 주기 코드(Ccode<0:8>)로 변환하여 출력할 수 있다.
도 13은 도 2의 주기 조절 회로의 동작을 설명하기 위한 블록도이다.
주기 조절 회로(1230)는 오실레이터(1231), 제 1 분주기(1232) 및 제 2 분주기(1233)를 포함할 수 있다. 주기 조절 회로(1230)는 도 2의 주기 계산 회로(1220)로부터 동작 주기 코드(Ccode<0:8>)를 수신할 수 있다. 주기 조절 회로(1230)는 오실레이터(1231)에서 생성되는 기본 신호(bs0) 및 동작 주기 코드(Ccode<0:8>)에 기초하여, 리프레쉬 신호(rs0)를 출력할 수 있다. 도 2의 리프레쉬 제어 회로(1200)는 리프레쉬 신호(rs0)를 이용하여, 도 2의 셀 어레이(1100)를 리프레쉬할 수 있다.
오실레이터(1231)는 기본 주기를 갖는 기본 신호(bs0)를 생성할 수 있다. 기본 신호(bs0)는 기본 주기를 갖는 교류 신호일 수 있다. 오실레이터(1231)는 기본 신호(bs0)를 제 1 분주기(1232)로 출력할 수 있다. 오실레이터(1231)는 도 12의 오실레이터(1221a_1)와 동일한 오실레이터일 수 있다.
제 1 분주기(1232)는 기본 신호(bs0)를 수신할 수 있다.
제 1 분주기(1232)는 하위 비트 신호(CT<0:5>)를 수신할 수 있다. 이하 설명들에서, “하위 비트 신호(CT<0:5>)”는 동작 주기 코드(Ccode<0:8>)의 하위 6개의 비트들이 나열된 신호를 의미한다. 또한, “상위 비트 신호(DT<0:2>)”는 동작 주기 코드(Ccode<0:8>)의 상위 3개의 비트들이 나열된 신호를 의미한다. 다만, 본 발명은 이에 한정되지 않고, 하위 비트 신호는 동작 주기 코드(Ccode<0:8>)의 일부 비트들이 나열된 신호이고, 상위 비트 신호는 동작 주기 코드(Ccode<0:8>)의 나머지 비트들이 나열된 신호일 수 있다.
제 1 분주기(1232)는 하위 비트 신호(CT<0:5>) 및 기본 신호(bs0)에 기초하여, 연장 신호(es0)를 생성할 수 있다. 연장 신호(es0)의 주기는 기본 신호(bs0)의 주기보다 길 수 있다. 이하 설명들에서, 연장 신호(es0)의 주기는 “연장 주기”로 표현되고, 기본 신호(bs0)의 주기는 “기본 주기”로 표현된다.
제 1 분주기(1232)는 제 2 분주기(1233)로 연장 신호(es0)를 출력할 수 있다.
제 2 분주기(1233)는 상위 비트 신호(DT<0:2>) 및 연장 신호(es0)에 기초하여, 리프레쉬 신호(rs0)를 생성할 수 있다. 리프레쉬 신호(rs0)의 주기는 연장 신호(es0)의 주기와 같거나, 연장 신호(es0)의 주기보다 길 수 있다. 리프레쉬 신호(rs0)의 주기는 동작 주기 코드(Ccode<0:8>)가 나타내는 동작 주기일 수 있다. 이하 설명들에서, 리프레쉬 신호(rs0)의 주기는 “동작 주기”로 표현된다.
도 14는 도 13의 제 1 분주기의 동작을 설명하기 위한 블록도이다.
제 1 분주기(1232)는 제 1 카운터(1232_1) 및 비교기(1232_2)를 포함할 수 있다.
제 1 카운터(1232_1)는 플립플롭들을 포함할 수 있다. 플립플롭들의 개수는 하위 비트 신호(CT<0:5>)의 비트들의 개수보다 하나 더 클 수 있다. 즉, 제 1 카운터(1232_1)는 7개의 플립플롭들을 포함할 수 있다. 예로서, 플립플롭들은 T 플립플롭들, D 플립플롭들, 또는 JK 플립플롭들일 수 있다. 이하 설명들에서, 제 1 카운터(1232_1)는 D 플립플롭들을 포함하는 것으로 가정되지만, 본 발명은 이에 한정되지 않는다.
제 1 카운터(1232_1)는 비동기식 카운터일 수 있다. 일렬로 나열된 플립플롭들 중 첫번째 플립플롭은 클럭 단자로 기본 신호(bs0)를 입력받을 수 있다. 플립플롭들 중 첫번째 플립플롭을 제외한 나머지 플립플롭들은 왼쪽에 위치한 플립플롭의 Q' 단자에서 출력되는 신호를 클럭 단자로 입력받을 수 있다. 또한, 플립플롭들은 Q' 단자에서 출력되는 신호를 D 단자로 입력받을 수 있다.
위와 같은 구성으로 인해, n번째 플립플롭의 Q 단자에서 출력되는 신호(Qn)는 기본 주기의 2n배의 주기를 가질 수 있다. 이하 설명들에서, “n번째 플립플롭”은 플립플롭들 중 가장 왼쪽에 위치한 플립플롭으로부터 n번째에 위치하는 플립플롭을 의미한다.
제 1 카운터(1232_1)는 제 1 카운트 코드(Qcode<0:6>)를 출력할 수 있다. 제 1 카운트 코드(Qcode<0:6>)는 7개의 비트들로 구성될 수 있다. 제 1 카운트 코드(Qcode<0:6>)의 비트들은 오른쪽에서부터 차례대로 신호들(Q0~Q6)의 논리 값들을 나타낼 수 있다. 제 1 카운터(1232_1)는 기본 신호(bs0)의 펄스가 입력될 때마다 제 1 카운트 코드(Qcode<0:6>)의 논리 값을 '1'씩 증가시킬 수 있다. 즉, 기본 신호(bs0)의 펄스가 입력될 때마다, 제 1 카운트 코드(Qcode<0:6>)의 논리 값은 '0000000'에서부터 논리 값 '1'씩 증가할 수 있다. 이하 설명들에서, 제 1 카운터(1232_1)는 펄스의 상승 에지가 입력될 때마다, 제 1 카운트 코드(Qcode<0:6>)의 논리 값을 '1'씩 증가시키는 것으로 가정된다. 그러나, 본 발명은 이에 한정되지 않고, 제 1 카운터(1232_1)는 펄스의 하강 에지가 입력될 때마다, 제 1 카운트 코드(Qcode<0:6>)의 논리 값을 '1'씩 증가시킬 수도 있다.
제 1 분주기(1232)는 하위 비트 코드(CT<0:5>)를 하위 비트 코드(CT<0:5:High>)로 변형할 수 있다. 하위 비트 코드(CT<0:5:High>)는 하위 비트 코드(CT<0:5>)의 가장 왼쪽에 논리 값 '1'을 갖는 비트가 추가된 코드일 수 있다.
비교기(1232_2)는 제 1 카운트 코드(Qcode<0:6>) 및 변형된 하위 비트 코드(CT<0:5:High>)를 비교할 수 있다. 앞에서 설명하였듯이, 기본 신호(bs0)의 펄스가 입력될 때마다 제 1 카운트 코드(Qcode<0:6>)의 논리 값이 '1'씩 증가하므로, 비교기(1232_2)로 입력되는 제 1 카운트 코드(Qcode<0:6>)의 논리 값은 기본 주기마다 '1'씩 증가할 수 있다. 비교기(1232_2)는 하위 비트 코드(CT<0:5:High>)의 논리 값이 제 1 카운트 코드(Qcode<0:6>)의 논리 값과 일치해질 때까지, 비교 동작을 반복 수행할 수 있다.
비교기(1232_2)는 하위 비트 코드(CT<0:5:High>)와 제 1 카운트 코드(Qcode<0:6>)가 일치하는 경우, 연장 신호(es0)를 출력할 수 있다.
또한, 비교기(1232_2)는 하위 비트 코드(CT<0:5:High>)와 제 1 카운트 코드(Qcode<0:6>)가 일치하는 경우, 제 1 카운터(1232_1)를 리셋할 수 있다. 제 1 카운터(1232_1)는 리셋되는 경우, 다시 제 1 카운트 코드(Qcode<0:6>)의 논리 값을 '0000000'에서부터 '1'만큼씩 증가시킬 수 있다. 비교기(1232_2)는 다시 비교 동작을 수행할 수 있다. 비교기(1232_2)는 하위 비트 코드(CT<0:5:High>)와 제 1 카운트 코드(Qcode<0:6>)가 일치하는 경우, 다시 연장 신호(es0)를 출력할 수 있다. 즉, 연장 신호(es0)는 일정 주기마다 출력될 수 있다. 이하 설명들에서, 연장 신호(es0)의 주기는 “연장 주기”로 표현된다.
도 15는 도 13의 제 2 분주기의 동작을 설명하기 위한 블록도이다.
제 2 분주기(1233)는 제 2 카운터(1233_1), 디코더(1233_2) 및 선택 회로(1233_3)를 포함할 수 있다.
제 2 카운터(1233_1)는 플립플롭들을 포함할 수 있다. 상위 비트 신호(DT<0:2>)의 비트들의 개수가 n개인 경우, 플립플롭들의 개수는 2n개일 수 있다. 본 설명에서, 상위 비트 신호(DT<0:2>)의 비트들의 개수가 3개이므로, 제 2 카운터(1233_1)는 8개의 플립플롭들을 포함할 수 있다. 예로서, 플립플롭들은 T 플립플롭들, D 플립플롭들, 또는 JK 플립플롭들일 수 있다. 이하 설명들에서, 제 2 카운터(1233_1)는 D 플립플롭들을 포함하는 것으로 가정되지만, 본 발명은 이에 한정되지 않는다.
제 2 카운터(1233_1)는 비동기식 카운터일 수 있다. 일렬로 나열된 플립플롭들 중 첫번째 플립플롭은 클럭 단자로 연장 신호(es0)를 입력받을 수 있다. 플립플롭들 중 첫번째 플립플롭을 제외한 나머지 플립플롭들은 왼쪽에 위치한 플립플롭의 Q' 단자에서 출력되는 신호를 클럭 단자로 입력받을 수 있다. 또한, 플립플롭들은 Q' 단자에서 출력되는 신호를 D 단자로 입력받을 수 있다. 플립플롭들은 클럭 단자로 펄스가 입력될 때마다, 토글될 수 있다. 구체적으로, 플립플롭들은 클럭 단자로 펄스의 상승 에지가 입력될 때마다, 토글될 수 있다. 그러나, 본 발명은 이에 한정되지 않고, 플립플롭들은 펄스의 하강 에지가 입력될 때마다, 토글될 수 있다. 위와 같은 구성으로 인해, n번째 플립플롭의 Q 단자에서 출력되는 신호(Dn)는 연장 주기의 2n배의 주기를 가질 수 있다.
제 2 카운터(1233_1)는 신호들(D0~Dn)을 선택 회로(1233_3)로 출력할 수 있다.
디코더(1233_2)는 상위 비트 코드(DT<0:2>)를 수신할 수 있다. 디코더(1233_2)는 상위 비트 코드(DT<0:2>)를 디코딩하여 선택 코드(DT_sel<0:7>)를 생성할 수 있다.
선택 회로(1233_3)는 신호들(D0~Dn) 및 선택 코드(DT_sel<0:7>)를 수신할 수 있다. 선택 회로(1233_3)는 선택 코드(DT_sel<0:7>)에 기초하여, 신호들(D0~Dn) 중 하나의 신호를 선택할 수 있다. 구체적으로, 선택 회로(1233_3)는 선택 코드(DT_sel<0:7>)의 비트들(DT_sel0~DT_sel7)과 신호들(D0~Dn)을 각각 매칭시킬 수 있다. 선택 회로(1233_3)는 비트들(DT_sel0~DT_sel7) 중 논리 값 '1'을 나타내는 비트에 매칭되는 신호를 선택할 수 있다.
예로서, 상위 비트 코드(DT<0:2>)가 'i'의 값을 나타내는 경우, 비트(DT_seli-1)가 '1'을 나타내고, 나머지 비트들 비트들은 '0'을 나타낼 수 있다. 이 경우, 신호(Di - 1)가 선택될 수 있다. 선택된 신호(Di - 1)는 연장 주기의 2i-1배의 주기를 가질 수 있다. 이하 설명들에서, 선택된 신호는 리프레쉬 신호(rs0)로 표현된다. 선택 회로(1233_3)는 리프레쉬 신호(rs0)를 출력할 수 있다. 'i'는 1보다 이상 7이하인 자연수일 수 있다.
도 16은 도 14의 연장 신호에 관하여 설명하기 위한 타이밍도이다.
도 14의 비교기(1232_2)는 제 1 카운트 코드(Qcode<0:6>)가 하위 비트 코드(CT<0:5:High>)와 일치하는 시각 't1'에서, 연장 신호(es0)를 출력할 수 있다. 또한, 비교기(1232_2)는 연장 신호(es0)를 출력한 후 시각 't2'에서, 도 14의 제 1 카운터(1232_1)를 리셋할 수 있다.
제 1 카운터(1232_1)가 리셋되는 경우, 신호들(Q0~Q6)의 논리 값들은 모두 '0'이 될 수 있다. 제 1 카운터(1232_1)가 리셋된 후, 제 1 분주기(1233)는 시각 't2'와 't4' 사이에서, 시각 't0'와 't2' 사이에서 수행되었던 동작을 다시 수행할 수 있다. 즉, 시각 't2'와 't4' 사이에서 수행되는 동작은 시각 't0'와 't2' 사이에서 수행되는 동작과 대응할 수 있다. 따라서, 연장 신호(es0)는 연장 주기('t2- t0')마다 출력될 수 있다. 연장 신호(es0)의 연장 주기는 't4- t2'로도 표현될 수 있다.
도 14에서 설명되었듯이, 하위 비트 코드(CT<0:5>)는 '1'의 논리 값을 갖는 최상위 비트가 추가된 하위 비트 코드(CT<0:5:High>)로 변경될 수 있다. 하위 비트 코드(CT<0:5:High>)가 나타내는 주기는 하위 비트 코드(CT<0:5>)가 나타내는 주기보다 길다. 따라서, 제 1 분주기(1233)는 하위 비트 코드(CT<0:5:High>)를 이용하여, 연장 주기를 보다 더 길게 만들 수 있다. 연장 주기는 '1000000'의 코드가 나타내는 주기와 '1111111'의 코드가 나타내는 주기 사이의 주기일 수 있다.
도 17은 도 15의 리프레쉬 신호에 관하여 설명하기 위한 타이밍도이다.
도 17에 도시된 그래프를 참조하여, 도 15의 리프레쉬 신호(rs0)가 가질 수 있는 동작 주기가 설명된다. 다만, 설명의 편의를 위해, 신호들(D0~D2)의 파형들만 도시되고, 나머지 신호들(D3~D7)의 파형들은 생략된다.
그래프(g10)는 연장 신호(es0)의 파형을 나타낼 수 있다. 연장 신호(es0)의 연장 주기는 'dp0'와 'dp1' 사이에 있을 수 있다. 연장 신호(es0)는 하위 비트 코드(CT<0:5:High>)가 '1000000'인 경우 주기 'dp0'를 가질 수 있으며, 하위 비트 코드(CT<0:5:High>)가 '1111111'인 경우 주기 'dp1'를 가질 수 있다. 신호(D0)의 파형은 연장 신호(es0)의 파형과 동일한 형태이므로, 그래프(g10)는 신호(D0)의 파형도 나타낸다. 즉, 주기 'dp0'는 하위 비트 코드(CT<0:5:High>)가 '1000000'이고 신호(D0)가 선택된 경우의 동작 주기일 수 있다. 또한, 주기 'dp1'는 하위 비트 코드(CT<0:5:High>)가 '1111111'이고 신호(D0)가 선택된 경우의 동작 주기일 수 있다.
그래프(g11)는 신호(D1)의 파형을 나타낼 수 있다. 신호(D1)의 주기는 연장 신호(es0)가 갖는 주기의 2배일 수 있다. 즉, 그래프(g11)의 기울기는 그래프(g10)의 기울기의 2배일 수 있다. 신호(D1)의 주기는 'dp1'와 'dp2' 사이에 있을 수 있다. 구체적으로, 주기 'dp1'는 하위 비트 코드(CT<0:5:High>)가 '1000000'이고 신호(D1)가 선택된 경우의 동작 주기일 수 있다. 또한, 주기 'dp2'는 하위 비트 코드(CT<0:5:High>)가 '1111111'이고 신호(D1)가 선택된 경우의 동작 주기일 수 있다.
다시 말하자면, 도 15의 제 2 분주기(1233)는 신호(D0)를 이용하여 'dp0'와 'dp1' 사이의 주기를 갖는 리프레쉬 신호(rs0)를 출력할 수 있으며, 신호(D1)를 이용하여 'dp1'와 'dp2' 사이의 주기를 갖는 신호(rs0)를 출력할 수 있다. 이는, 신호들(D0~D7)이 출력가능한 주기의 범위가 연속적이면서도 겹치지 않는다는 것을 의미한다. 즉, 도 13의 주기 조절 회로(1230)는 적절하게 변형된 하위 비트 코드(CT<0:5:High>)를 사용함으로써, 리프레쉬 신호(rs0)가 출력가능한 주기의 범위를 보다 넓힐 수 있다. 또한, 주기 조절 회로(1230)는 리프레쉬 신호(rs0)의 주기를 쉽게 조절할 수 있다.
도 18은 도 13의 주기 조절 회로의 동작을 설명하기 위한 흐름도이다.
S510 동작에서, 도 13의 오실레이터(1231)는 기본 신호(bs0)를 출력할 수 있다.
S515 동작에서, 도 13의 제 1 분주기(1232)는 기본 신호(bs0)를 이용하여, 제 1 카운트 코드(Qcode<0:6>)를 생성할 수 있다.
S520 동작에서, 제 1 분주기(1232)는 하위 비트 코드(CT<0:5:High>)와 제 1 카운트 코드(Qcode<0:6>)를 비교할 수 있다. 하위 비트 코드(CT<0:5:High>)는 도 14에서 설명되었는바, 중복되는 설명은 생략된다.
하위 비트 코드(CT<0:5:High>)와 제 1 카운트 코드(Qcode<0:6>)가 일치하지 않으면, 다시 S515 및 S520 동작이 수행된다.
하위 비트 코드(CT<0:5:High>)와 제 1 카운트 코드(Qcode<0:6>)가 일치하면, 다시 S525 동작이 수행된다. S525 동작에서, 제 1 분주기(1232)는 연장 신호(es0)를 출력할 수 있다.
S530 동작에서, 도 13의 제 2 분주기(1233)는 연장 신호(es0)를 이용하여 신호들(D0~D7)을 출력할 수 있다.
S540 동작에서, 제 2 분주기(1233)는 상위 비트 코드(DT<0:2>)를 디코딩하여 선택 코드(DT_sel<0:7>)를 생성할 수 있다.
S550 동작에서, 제 2 분주기(1233)는 선택 코드(DT_sel<0:7>)에 기초하여, 신호들(D0~D7) 중에서 리프레쉬 신호(rs0)를 선택할 수 있다.
S560 동작에서, 제 2 분주기(1233)는 선택된 리프레쉬 신호(rs0)를 출력할 수 있다.
도 19는 본 발명의 실시 예에 따른 전자 장치의 동작을 설명하기 위한 블록도이다.
전자 장치(10000)는 호스트(2000) 및 메모리 장치(1000a)를 포함할 수 있다. 예를 들어, 전자 장치(10000)는 호스트(2000) 및 메모리 장치(1000a)를 모두 포함하는 단일의 시스템일 수 있다. 또는, 전자 장치(10000)의 호스트(2000) 및 메모리 장치(1000a)는 서로 별도의 장치로 구현될 수 있다. 메모리 장치(1000a)는 도 2의 메모리 장치(1000)와 실질적으로 동일한 동작들을 제공할 수 있다.
예를 들어, 호스트(2000)는 범용 프로세서 또는 어플리케이션 프로세서(Application Processor)를 포함하는 프로세서 회로 또는 전자 장치일 수 있다. 또는, 호스트(0)는 하나 이상의 프로세서들을 포함하는 컴퓨팅 장치(예컨대, 퍼스널 컴퓨터(Personal Computer), 주변 장치, 디지털 카메라, PDA(Personal Digital Assistant), PMP(Portable Media Player), 스마트폰(Smartphone), 태블릿(Tablet), 웨어러블(Wearable) 장치 등)일 수 있다. 다만, 이 예들은 본 발명을 제한하기 위한 것은 아니다.
메모리 장치(1000a)는 휘발성 메모리를 포함하는 어떠한 저장 매체로든 구현될 수 있다. 예를 들어, 메모리 장치(1000a)는 DRAM(Dynamic random access memory), SRAM(Static random access memory), TRAM(Thyristor RAM), Z-RAM(Zero capacitor RAM), 또는 TTRAM(Twin transistor RAM), MRAM 등을 포함할 수 있다. 본 발명은 휘발성 메모리를 포함하는 어떠한 저장 매체에든 적용될 수 있다. 예를 들어, 메모리 장치(1000a)는 UDIMM(Unbuffered Dual In-Line Memory Module), RDIMM(Registered DIMM), LRDIMM(Load Reduced DIMM), NVDIMM(Non Volatile DIMM) 등을 포함할 수 있다. 위 가정은 단지 본 발명의 이해를 돕기 위한 예시일 뿐이고, 본 발명을 제한하기 위한 것은 아니다.
메모리 장치(1000a)는 호스트(2000)와 통신할 수 있다. 호스트(2000)는 메모리 장치(1000a)의 리프레쉬 동작을 제어할 수 있다. 구체적으로, 호스트(2000)는 전자 장치(10000)의 전력 상황 등에 따라, 메모리 장치(1000a)의 온도-기울기 데이터를 변경하기 위한 제어 신호를 출력할 수 있다. 온도-기울기 데이터의 양은 상대적으로 적기 때문에, 메모리 장치(1000a)는 호스트(2000)의 제어에 따라, 온도-기울기 데이터를 변환할 수 있다. 메모리 장치(1000a)는 호스트(2000)의 제어에 따라, 온도-기울기 데이터가 새로운 대응 관계를 나타내도록 온도-기울기 데이터를 변환할 수 있다.
따라서, 메모리 장치(1000a)는 전력 문제로 인해 리프레쉬 동작 주기를 더 낮춰야 되는 경우이거나, 반대로 리프레쉬 동작 주기를 더 높여야 되는 경우에, 동작 온도에 따른 동작 주기를 조절할 수 있다.
상술된 내용은 본 발명을 실시하기 위한 구체적인 실시 예들이다. 본 발명은 상술된 실시 예들뿐만 아니라, 단순하게 설계 변경되거나 용이하게 변경할 수 있는 실시 예들 또한 포함할 것이다. 또한, 본 발명은 실시 예들을 이용하여 용이하게 변형하여 실시할 수 있는 기술들도 포함될 것이다. 따라서, 본 발명의 범위는 상술된 실시 예들에 국한되어 정해져서는 안되며 후술하는 특허청구범위뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 할 것이다.

Claims (10)

  1. 메모리 장치에 있어서,
    셀 어레이; 및
    상기 메모리 장치의 동작 온도에 기초하여, 상기 셀 어레이에 수행되는 리프레쉬 동작의 동작 주기를 계산하는 주기 계산 회로를 포함하되,
    상기 주기 계산 회로는 상기 동작 온도가 제 1 온도보다 낮은 경우, 온도가 높은 순서대로 나열된 제 2 온도 내지 제 N 온도에 대응하는 제 2 기울기 값 내지 제 N 기울기 값 중 하나 이상의 기울기 값을 적분하여 상기 동작 주기를 계산하고,
    상기 N은 2 이상의 자연수이고,
    상기 하나 이상의 기울기 값의 개수는 상기 동작 온도에 기초하는 메모리 장치.
  2. 제 1 항에 있어서,
    상기 제 2 기울기 값 내지 상기 제 N 기울기 값은 상기 제 2 온도 내지 상기 제 N 온도가 속하는 온도 구간들 각각에서의 온도 변화에 따른 주기의 변화율에 기초하는 메모리 장치.
  3. 제 1 항에 있어서,
    상기 제 2 온도 내지 상기 제 N 온도 중 동일한 온도 구간에 속하는 온도들은 대응하는 기울기 값들이 동일한 메모리 장치.
  4. 제 1 항에 있어서,
    상기 주기 계산 회로는 상기 동작 온도가 제 K 온도인 경우, 상기 제 1 온도에 대응하는 제 1 주기에 상기 제 2 기울기 값부터 제 K 기울기 값까지를 적분하여 상기 동작 주기를 계산하고,
    상기 제 K 온도는 상기 제 2 온도 내지 상기 제 N 온도 중 하나이고,
    상기 K는 2 이상이고 상기 N 이하의 자연수인 메모리 장치.
  5. 제 1 항에 있어서,
    상기 주기 계산 회로는 상기 제 2 온도 내지 상기 제 N 온도와 상기 제 2 기울기 값 내지 상기 제 N 기울기 값 사이의 대응 관계를 나타내는 온도-기울기 데이터를 저장하는 저장소(storage)를 포함하고, 상기 메모리 장치의 외부에 있는 호스트의 제어에 따라, 상기 온도-기울기 데이터가 새로운 대응 관계를 나타내도록 상기 온도-기울기 데이터를 변환하는 메모리 장치.
  6. 제 1 항에 있어서,
    상기 주기 계산 회로는 상기 주기 계산 회로에서 계산된 상기 동작 주기를 나타내는 동작 주기 코드를 출력하고,
    상기 동작 주기 코드의 적어도 하나의 비트에 기초하여 제 1 변환된 동작 주기 코드를 생성하고, 상기 동작 주기 코드의 적어도 하나의 나머지 비트에 기초하여 제 2 변환된 동작 주기 코드를 생성하여, 기본 주기를 갖는 기본 신호를 상기 동작 주기를 갖는 리프레쉬 신호로 변환하는 주기 조절 회로를 더 포함하는 메모리 장치.
  7. 제 6 항에 있어서,
    상기 주기 조절 회로는:
    상기 기본 신호를 입력받아 카운팅 코드를 출력하는 제 1 카운터;
    상기 카운팅 코드와 상기 제 1 변환된 동작 주기 코드를 비교하여, 연장 신호를 출력하는 비교기;
    상기 연장 신호를 입력받아 카운팅 신호들을 출력하는 제 2 카운터; 및
    상기 제 2 변환된 동작 주기 코드에 기초하여 상기 카운팅 신호들 중 상기 동작 주기를 갖는 카운팅 신호를 선택하고, 상기 카운팅 신호에 기초하여 상기 리프레쉬 신호를 출력하는 선택 회로를 포함하는 메모리 장치.
  8. 제 7 항에 있어서,
    상기 주기 조절 회로는 상기 제 1 변환된 동작 주기 코드의 논리 값을 조절하여, 상기 카운팅 신호들의 주기들을 조절하는 메모리 장치.
  9. 메모리 장치에 있어서,
    셀 어레이; 및
    상기 메모리 장치의 동작 온도에 기초하여, 상기 셀 어레이에 수행되는 리프레쉬 동작의 동작 주기를 계산하는 주기 계산 회로를 포함하되,
    상기 주기 계산 회로는:
    제 1 온도 코드를 출력한 후, 상기 동작 온도를 나타내는 동작 온도 코드와 상기 제 1 온도 코드가 일치하지 않는 경우 제 2 온도 코드를 후속으로 출력하는 코드 생성 회로;
    상기 제 2 온도 코드에 대응하는 기울기 값을 출력하는 매칭 회로; 및
    상기 기울기 값을 상기 제 1 온도 코드에 대응하는 제 1 주기에 더하여, 상기 제 2 온도 코드에 대응하는 제 2 주기를 계산하는 적분 회로를 포함하는 메모리 장치.
  10. 제 9 항에 있어서,
    상기 기울기 값을 나타내는 비트들의 개수는 상기 동작 주기를 나타내는 비트들의 개수보다 적은 메모리 장치.
KR1020190136697A 2019-10-30 2019-10-30 동작 온도에 기초하여 동작 주기를 조절하는 메모리 장치 KR20210052710A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020190136697A KR20210052710A (ko) 2019-10-30 2019-10-30 동작 온도에 기초하여 동작 주기를 조절하는 메모리 장치
US16/919,808 US11024359B2 (en) 2019-10-30 2020-07-02 Memory devices adjusting operating cycle based on operating temperature
CN202010749109.0A CN112750481A (zh) 2019-10-30 2020-07-30 存储器装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190136697A KR20210052710A (ko) 2019-10-30 2019-10-30 동작 온도에 기초하여 동작 주기를 조절하는 메모리 장치

Publications (1)

Publication Number Publication Date
KR20210052710A true KR20210052710A (ko) 2021-05-11

Family

ID=75645346

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190136697A KR20210052710A (ko) 2019-10-30 2019-10-30 동작 온도에 기초하여 동작 주기를 조절하는 메모리 장치

Country Status (3)

Country Link
US (1) US11024359B2 (ko)
KR (1) KR20210052710A (ko)
CN (1) CN112750481A (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11940831B2 (en) * 2021-12-07 2024-03-26 Infineon Technologies LLC Current generator for memory sensing
CN114837982B (zh) * 2022-06-10 2024-02-09 重庆蓝岸科技股份有限公司 风扇散热最佳控制方法及***

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3712537B2 (ja) 1998-08-06 2005-11-02 富士通株式会社 温度検出回路、温度検出回路の校正方法、及び、半導体記憶装置
US6531911B1 (en) * 2000-07-07 2003-03-11 Ibm Corporation Low-power band-gap reference and temperature sensor circuit
US7583551B2 (en) * 2004-03-10 2009-09-01 Micron Technology, Inc. Power management control and controlling memory refresh operations
KR20050118952A (ko) * 2004-06-15 2005-12-20 삼성전자주식회사 히스테리리스 특성을 갖는 온도 감지 회로
KR100610011B1 (ko) 2004-07-29 2006-08-09 삼성전자주식회사 셀프 리프레쉬 주기 제어회로
US7200062B2 (en) 2004-08-31 2007-04-03 Micron Technology, Inc. Method and system for reducing the peak current in refreshing dynamic random access memory devices
KR100652422B1 (ko) 2005-08-10 2006-12-01 삼성전자주식회사 온-칩 온도 센서 및 온도 검출 방법, 이를 이용한 리프레쉬제어 방법
JP4850578B2 (ja) * 2006-05-19 2012-01-11 富士通セミコンダクター株式会社 半導体記憶装置及びリフレッシュ周期制御方法
US7522464B2 (en) 2006-07-26 2009-04-21 Zmos Technology, Inc. Dynamic memory refresh configurations and leakage control methods
US7894289B2 (en) 2006-10-11 2011-02-22 Micron Technology, Inc. Memory system and method using partial ECC to achieve low power refresh and fast access to data
US8572333B2 (en) 2008-12-30 2013-10-29 Micron Technology, Inc. Non-volatile memory with extended operating temperature range
KR101975029B1 (ko) * 2012-05-17 2019-08-23 삼성전자주식회사 리프레쉬 주기를 조절하는 반도체 메모리 장치, 메모리 시스템 및 그 동작방법
KR102276249B1 (ko) * 2014-06-18 2021-07-12 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그 동작 방법
KR102373543B1 (ko) * 2015-04-08 2022-03-11 삼성전자주식회사 멀티칩 패키지에서 온도 편차를 이용하여 동작 제어하는 방법 및 장치
KR20170040838A (ko) 2015-10-05 2017-04-14 에스케이하이닉스 주식회사 반도체장치
KR102427894B1 (ko) 2016-03-17 2022-08-03 에스케이하이닉스 주식회사 반도체장치 및 반도체시스템
KR102408867B1 (ko) * 2017-12-20 2022-06-14 삼성전자주식회사 반도체 메모리 장치, 메모리 시스템 및 반도체 메모리 장치의 동작 방법

Also Published As

Publication number Publication date
US20210134357A1 (en) 2021-05-06
CN112750481A (zh) 2021-05-04
US11024359B2 (en) 2021-06-01

Similar Documents

Publication Publication Date Title
US10860222B2 (en) Memory devices performing refresh operations with row hammer handling and memory systems including such memory devices
US10665273B2 (en) Semiconductor memory devices, memory systems and refresh methods of the same
KR102399475B1 (ko) 리프레쉬 콘트롤러 및 이를 포함하는 메모리 장치
CN106057233B (zh) 在多芯片封装中使用温度偏差来控制操作的方法和器件
US9275717B2 (en) Refresh address generator, volatile memory device including the same and method of refreshing the volatile memory device
US10223273B2 (en) Memory access method, storage-class memory, and computer system
JP6178499B2 (ja) ダイナミックランダムアクセスメモリのスマートリフレッシュのための方法およびシステム
TWI615855B (zh) 位址偵測電路及具有該位址偵測電路之記憶體裝置
US9129704B2 (en) Semiconductor memory devices and semiconductor systems including the same
KR20170030305A (ko) 메모리 장치의 리프레쉬 방법
KR20180022016A (ko) 반도체장치
US11024359B2 (en) Memory devices adjusting operating cycle based on operating temperature
CN107369464A (zh) 存储模块及包括其的***
JP2018512690A (ja) 記憶素子をリフレッシュするためのシステムおよび方法
US10325643B2 (en) Method of refreshing memory device and memory system based on storage capacity
JP3705276B2 (ja) 半導体メモリ装置におけるリフレッシュ制御および内部電圧の生成
KR20180072314A (ko) 반도체장치
KR20220121596A (ko) 반도체 메모리 장치를 포함하는 메모리 시스템
KR20170093053A (ko) 리프레시 정보 생성기를 포함하는 휘발성 메모리 장치 및 전자 장치, 그것의 정보 제공 방법, 그리고 그것의 리프레시 제어 방법
US11804254B2 (en) Memory device and method of refreshing memory device based on temperature
US6195304B1 (en) Semiconductor memory device and its refresh address signal generating method adapted to reduce power consumption during refresh operation
KR20180125657A (ko) 반도체장치
JP4207905B2 (ja) 半導体メモリ装置におけるリフレッシュ制御および内部電圧の生成
JP4100403B2 (ja) 半導体メモリ装置におけるリフレッシュ制御および内部電圧の生成
JPS61227295A (ja) 半導体記憶装置