KR20220165482A - 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 동작 방법 - Google Patents

메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 동작 방법 Download PDF

Info

Publication number
KR20220165482A
KR20220165482A KR1020210074166A KR20210074166A KR20220165482A KR 20220165482 A KR20220165482 A KR 20220165482A KR 1020210074166 A KR1020210074166 A KR 1020210074166A KR 20210074166 A KR20210074166 A KR 20210074166A KR 20220165482 A KR20220165482 A KR 20220165482A
Authority
KR
South Korea
Prior art keywords
training
memory device
dca
code value
memory
Prior art date
Application number
KR1020210074166A
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 KR1020210074166A priority Critical patent/KR20220165482A/ko
Priority to US17/567,306 priority patent/US11705172B2/en
Priority to CN202210631179.5A priority patent/CN115458006A/zh
Publication of KR20220165482A publication Critical patent/KR20220165482A/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • 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/409Read-write [R-W] circuits 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/023Detection or location of defective auxiliary circuits, e.g. defective refresh counters in clock generator or timing circuitry
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • G11C29/50012Marginal testing, e.g. race, voltage or current testing of timing
    • 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/1066Output synchronization
    • 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/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • 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/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1093Input synchronization
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/18Address timing or clocking circuits; Address control signal generation or management, e.g. for row address strobe [RAS] or column address strobe [CAS] signals
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/156Arrangements in which a continuous pulse train is transformed into a train having a desired pattern
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/22Control and timing of internal memory operations
    • G11C2207/2254Calibration

Landscapes

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

Abstract

본 발명의 메모리 장치의 동작 방법은, 듀티 트레이닝 요청을 수신하는 단계, 제 1 구간에서 쓰기 패스를 위한 제 1 트레이닝을 수행하는 단계, 상기 제 1 트레이닝의 결과값을 저장하는 단계, 제 2 구간에서 읽기 패스를 위한 제 2 트레이닝을 수행하는 단계, 상기 제 2 트레이닝의 결과값을 저장하는 단계, 상기 제 1 트레이닝의 결과값을 외부의 장치로 전송하는 단계, 및 상기 외부의 장치로부터 상기 제 1 트레이닝 결과값에 대응하는 DCA(Duty Cycle Adjuster) 코드값을 수신하는 단계를 포함할 수 있다.

Description

메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 동작 방법{MEMORY DEVICE, MEMORY SYSTEM HAVING THE SAME AND OPERATING METHOD THEREOF}
본 발명 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 동작 방법에 관한 것이다.
LPDDR(Low Power Double Data Rate) DRAM(Dynamic Random Access Memory) 등과 같은 모바일향 반도체 메모리 장치는 모바일 전자기기에 주로 사용되고 있다. 모바일 전자기기에 AP(Application processor)가 멀티 코어 중의 하나로 탑재되는 경우 LPDDR DRAM 등과 같은 반도체 메모리 장치는 AP의 작업용 메모리로서 활용될 수 있다.
본 발명의 목적은, 신규한 듀티 에러를 보상하는 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 동작 방법을 제공하는데 있다.
본 발명의 실시 예에 따른 메모리 장치는, 제 1 코드값을 저장하는 제 1 레지스터; 제 2 코드값을 저장하는 제 2 레지스터; 제 1 트레이닝 정보를 저장하는 제 3 레지스터; 동작 모드 정보에 따라 상기 제 1 코드값 및 상기 제 2 코드값 중에서 어느 하나를 선택하고, 상기 선택된 코드값에 따라 데이터 전송 클록의 듀티를 조절하는 듀티 사이클 조절기; 및 외부 장치의 트레이닝 요청에 따라 쓰기 패스에 대하여 제 1 트레이닝을 수행하고, 읽기 패스에 대하여 제 2 트레이닝을 수행하는 듀티 사이클 모니터를 포함하고, 상기 제 1 코드값은 외부의 장치로부터 전송되고, 상기 제 2 코드값은 상기 제 2 트레이닝의 결과값에 대응하고, 상기 제 1 트레이닝 정보는 상기 제 1 트레이닝의 결과값을 포함할 수 있다.
본 발명의 실시 예에 따른 메모리 장치의 동작 방법은, 듀티 트레이닝 요청을 수신하는 단계; 제 1 구간에서 쓰기 패스를 위한 제 1 트레이닝을 수행하는 단계; 상기 제 1 트레이닝의 결과값을 저장하는 단계; 제 2 구간에서 읽기 패스를 위한 제 2 트레이닝을 수행하는 단계; 상기 제 2 트레이닝의 결과값을 저장하는 단계; 상기 제 1 트레이닝의 결과값을 외부의 장치로 전송하는 단계; 및 상기 외부의 장치로부터 상기 제 1 트레이닝 결과값에 대응하는 DCA(Duty Cycle Adjuster) 코드값을 수신하는 단계를 포함할 수 있다.
본 발명의 실시 예에 따른 메모리 시스템은, 메모리 장치; 및 상기 메모리 장치를 제어하는 메모리 제어기를 포함하고, 상기 메모리 장치는 상기 메모리 장치의 듀티 트레이닝 요청을 수신하고, 상기 듀티 트레이닝 요청에 응답하여 쓰기 패스에 대한 제 1 트레이닝을 수행하고, 읽기 패스에 대한 제 2 트레이닝을 수행하고, 상기 제 1 트레이닝의 결과값을 상기 메모리 제어기로 전송하고, 상기 메모리 제어기로부터 상기 제 1 트레이닝의 결과값에 대응하는 제 1 코드값을 수신하는 것을 특징으로 할 수 있다.
본 발명의 실시 예에 따른 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 동작 방법은, 읽기 패스에 대하여 내부적으로 듀티 트레이닝을 수행하고, 이러한 트레이닝 결과에 따라 읽기 모드시 듀티 에러를 보상할 수 있다.
본 발명의 실시 예에 따른 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 동작 방법은, 읽기 모드 및 쓰기 모드의 각각에 최적의 듀티를 보상함으로써, 데이터의 신뢰성을 개선할 수 있다.
이하에 첨부되는 도면들은 본 실시 예에 관한 이해를 돕기 위한 것으로, 상세한 설명과 함께 실시 예들을 제공한다.
도 1은 본 발명의 실시 예에 따른 메모리 시스템을 예시적으로 보여주는 도면이다.
도 2는 본 발명의 실시 예에 따른 메모리 장치(100)를 예시적으로 보여주는 도면이다.
도 3은 본 발명의 실시 예에 따른 메모리 장치(100)에서 DCA-DCM 트레이닝을 하는 타이밍을 예시적으로 보여주는 도면이다.
도 4a은 DCA 트레이닝 전의 듀티 에러를 보여주는 도면이고, 도 4b는 본 발명의 실시 예에 따른 트레이닝 이후의 듀티 에러 보정을 보여주는 도면이다.
도 5는 본 발명의 실시 예에 따른 듀티 보정 방법을 예시적으로 보여주는 흐름도이다.
도 6은 본 발명의 실시 예에 따른 메모리 시스템의 DCA 트레이닝을 예시적으로 보여주는 래더 다이어그램이다.
도 7은 본 발명의 실시 예에 따른 메모리 장치(700)를 보여주는 도면이다.
도 8은 본 발명의 실시 예에 따른 SoC-DRAM의 WCK 트레이닝을 예시적으로 보여주는 도면이다. 도 8을 참조하면, 메모리 시스템(20)은 DRAM(100a) 및 SoC(200a)를 포함할 수 있다.
도 9는 본 발명의 실시 예에 따른 적어도 하나의 커맨드/어드레스 캘리브레이션을 수행하는 메모리 시스템을 예시적으로 보여주는 도면이다.
도 10은 본 발명의 실시 예에 따른 전자 장치(2000)를 보여주는 도면이다.
아래에서는 도면들을 이용하여 본 발명의 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시 할 수 있을 정도로 본 발명의 내용을 명확하고 상세하게 기재할 것이다.
도 1은 본 발명의 실시 예에 따른 메모리 시스템을 예시적으로 보여주는 도면이다. 도 1을 참조하면, 메모리 시스템(10)은 메모리 장치(100) 및 메모리 제어기(200)를 포함할 수 있다.
메모리 시스템(10)은 개인용 컴퓨터(Personal Computer: PC) 혹은 모바일 전자기기 내에 포함되도록 구현될 수 있다. 모바일 전자기기는 랩탑 컴퓨터, 이동 전화기, 스마트폰, 태블릿 PC, PDA(Personal Digital Assistant), EDA(Enterprise Digital Assistant), 디지털 스틸 카메라(digital still camera), 디지털 비디오 카메라(digital video camera), PMP(Portable Multimedia Player), PND(Personal Navigation Device 혹은 Portable Navigation Device), 휴대용 게임 콘솔(handheld game console), 모바일 인터넷 장치(Mobile Internet Device(MID)), 웨어러블 컴퓨터, IoT(Internet of Things) 장치, IoE(Internet of Everything) 장치, 혹은 드론(drone)으로 구현될 수 있다.
메모리 장치(100)는 휘발성 메모리 장치로 구현될 수 있다. 휘발성 메모리 장치는 RAM(Random Access Memory), DRAM(Dynamic RAM), SRAM (Static RAM), 혹은LPDDR(Low Power Double Data Rate) DRAM로 구현될 수 있다. 휘발성 메모리 장치는 전원이 중단될 때 저장된 데이터를 잃어버린다. 이와 대조적으로, 자기 랜덤 억세스 메모리(Magnetic RAM: MRAM)과 같은 비휘발성 메모리 장치는 전원 공급이 중단된 후에도 저장된 데이터를 유지할 수 있다. 따라서, 전원 불량 혹은 전원 차단에 의하여 데이터의 소실을 원하지 않는 경우에, 비휘발성 메모리 장치가 선호적으로 사용될 수 있다. 특히, STT-MRAM(Spin Transfer Torque MRAM)이 메모리를 구성하는 경우에 DRAM이 갖는 빠른 응답 시간의 장점에 더하여 MRAM이 갖는 비휘발성 장점이 부가될 수 있다. 실시 예에 있어서, 메모리 장치(100)는 비휘발성 메모리 장치로 구현될 수 있다. 예시적으로, 메모리 장치(100)는 EEPROM(electrically erasable programmable read-only memory), 플래시(flash) 메모리, MRAM, STT-MRAM, FeRAM(ferroelectric RAM), PRAM(Phase change RAM), 저항 메모리(Resistive RAM(RRAM)), 나노튜브RRAM(nanotube RRAM), 폴리머 RAM(Polymer RAM (PoRAM)), 나노 부유 게이트 메모리(Nano Floating Gate Memory(NFGM)), 홀로그래픽 메모리(holographic memory), 분자 전자 메모리 소자(molecular electronics memory device), 혹은 절연 저항 변화 메모리(insulator resistance change memory)로 구현될 수 있다.
메모리 장치(100)는 제 1, 제 2, 및 제 3 레지스터들(101, 102, 103), 및 듀티 사이클 모니터(110, DCM), 및 듀티 사이클 조절기(120, DCA)를 포함할 수 있다.
제 1 레지스터(101)는 제어기(200)로부터 전송된 쓰기 모드 DCA 코드값(DCA_CODE_WR, 제 1 코드값)를 저장할 수 있다. 여기서 쓰기 모드 DCA 코드값(DCA_CODE_WR)은 제 1 DCA 트레이닝에 의해 결정된 값이다. 실시 예에 있어서, 제 1 DCA 트레이닝은 쓰기 패스에 대하여 메모리 제어기(200)의 DCA 트레이닝 요청에 의해 초기화 동작에서 수행되거나, 메모리 제어기(200)의 요청에 따라 실시간으로 수행될 수 있다.
제 2 레지스터(102)는 읽기 모드 DCA 코드값(DCA_CODE_RD, 제 2 코드값)를 저장할 수 있다. 여기서 읽기 모드 DCA 코드값(DCA_CODE_RD)는 제 2 DCA 트레이닝에 의해 결정된 값이다. 실시 예에 있어서, 제 2 DCA 트레이닝은 읽기 패스에 대하여 메모리 제어기(200)의 DCA 트레이닝 요청에 의해 메모리 장치(100)의 내부적으로 수행될 수 있다.
제 3 레지스터(103)는 메모리 제어기(200)의 DCA 트레이닝 요청에 따른 제 1 트레이닝의 결과값을 저장할 수 있다.
듀티 사이클 조절기(120, DCA)는 DCA 코드값을 이용하여 듀티를 최적하도록 구현될 수 있다. 예를 들어, 듀티 사이클 조절기(120)는 쓰기 모드에서 제 1 레지스터(101)에 저장된 제 1 코드값(DCA_CODE_WR)에 따라 데이터 전송 클록(WCK)의 듀티를 조절할 수 있다. 또한, 듀티 사이클 조절기(120)는 읽기 모드에서 제 2 레지스터(102)에 저장된 제 2 코드값(DCA_CODE_RD)에 따라 데이터 전송 클록(WCK)의 듀티를 조절할 수 있다.
듀티 사이클 모니터(130, DCM)는 클록, 예를 들어, 데이터 전송 클록(WCK)의 듀티를 모니터링 하도록 구현될 수 있다. 예를 들어, 듀티 사이클 모니터(130)는 제 1 DCA 트레이닝 구간에서 쓰기 패스를 경유하는 데이터 전송 클록(WCK)의 듀티를 모니터링 할 수 있다. 또한, 듀티 사이클 모니터(130)는 제 2 DCA 트레이닝 구간에서 읽기 패스를 경유하는 데이터 전송 클록(WCK)의 듀티를 모니터링 할 수 있다.
메모리 제어기(200)는 집적 회로, 시스템 온 칩(System on Chip: SoC), 어플리케이션 프로세서(Application Processor: AP), 모바일 AP, 칩셋, 혹은 칩들의 집합으로 구현될 수 있다. 메모리 제어기(200)는 램(Random Access Memory: RAM), 중앙 처리 유닛(Central Processing Unit: CPU), 그래픽 처리 유닛 (Graphics Processing Unit: GPU), 신경망 처리 유닛(Neural Processing Unit: NPU) 혹은 모뎀을 포함할 수 있다. 실시 예에 있어서, 메모리 제어기(200)는 모뎀의 기능과 AP의 기능을 수행할 수 있다.
메모리 제어기(200)는 메모리 장치(100)에 저장된 데이터를 읽거나 메모리 장치(100)에 데이터를 쓰도록 메모리 장치(100)를 제어하도록 구현될 수 있다. 메모리 제어기(200)는 클록(CK)에 동기하여 메모리 장치(100)에 커맨드(CMD)와 어드레스(ADD)를 제공함으로써, 메모리 장치(100)에 대한 쓰기 동작 혹은 읽기 동작을 제어할 수 있다. 또한, 데이터(DQ)는 메모리 제어기(200)와 메모리 장치(100) 사이에서 데이터 전송 클록(WCK)에 동기하여 송수신될 수 있다.
메모리 제어기(200)는 메모리 장치(100)의 듀티를 제어하는 듀티 제어기(210)를 포함할 수 있다. 듀티 제어기(210)는, 데이터 전송 클록(WCK)을 메모리 장치(100)로 전송하고, 메모리 장치(100)로부터 DCA 트레이닝에 관련된 트레이닝 정보(T_INF)를 수신하고, 트레이닝 정보(T_INF)에 대응하는 쓰기 모드 DCA 코드값(DCA_CODE_WR)를 출력할 수 있다.
메모리 장치(100)는 DCA-DCM 트레이닝 동안에 쓰기 모드를 위한 듀티 에러 정보(예를 들어, DCA_CODE_WR)와 읽기 모드를 위한 듀티 에러 정보(예를 들어, DCA_CODE_RD)를 2개의 서로 다른 레지스터들(101, 102)에 저장하고, 쓰기 동작/읽기 동작에서 선택적으로 적용할 수 있다.
일반적으로 LPDDR5/DDR5와 같은 고속 DRAM은, 외부 블록의 듀티 사이클 왜곡과 공정, 전압, 온도 산포에 따른 내부 듀티 사이클 왜곡에 의해 데이터 출력 유효 아이(data output valid eye) 감소로 나타나고 있다. LPDDR5은 DCA-DCM Training 구간 동안에 데이터 감지 증폭기에서 사용하는 4-위상 클록을 검출함으로써, 듀티 사이클 보정을 수행하고 있다. 이 때, 쓰기 동작에서 tDSH 마진을 최적화 되고 이다. 하지만, 쓰기 패스와 읽기 패스가 분리 되어 있기 때문에 DCA-DCM Training 결과가 읽기 클록 듀티 보정 및 읽기 마진의 특성 최적화에 어려움이 야기된다. 반면에, 본 발명의 실시 예에 따른 메모리 장치(100)는 읽기 동작의 클록 듀티 정보(예를 들어, DCA_CODE_RD)와 쓰기 동작의 클록 듀티 정보(예를 들어, DCA_CODE_WR)를 구별함으로써, 읽기 동작 혹은 쓰기 동작에 따라 최적의 듀티 보상을 수행할 수 있다.
본 발명의 실시 예에 따른 메모리 시스템(10)은 읽기/쓰기 모드에서 최적의 클록 듀티를 보상하는 메모리 장치(100)를 구비함으로써, 전체적인 시스템 성능을 향상시킬 수 있다.
도 2는 본 발명의 실시 예에 따른 메모리 장치(100)를 예시적으로 보여주는 도면이다. 도 2를 참조하면, 메모리 장치(100)는, 레지스터들(101, 102, 103), 제 1 멀티플렉서(105), 제 2 멀티플렉서(106), 디-멀티플렉서(107), 듀티 사이클 모니터(110, DCM), 및 듀티 사이클 조절기(120, DCA)를 포함할 수 있다.
제 1 레지스터(101)는 쓰기 모드 DCA 코드(DCA_CODE_WR)를 저장할 수 있다. 여기서 쓰기 모드 DCA 코드(DCA_CODE_WR, 제 1 코드값)는 제어기(도 1 참조, 200; AP)로부터 수신될 수 있다.
제 2 레지스터(102)는 읽기 모드 DAC 코드(DCA_CODE_RD, 제 2 코드값)를 저장할 수 있다. 여기서 읽기 모드 DCA 코드(DCA_CODE_RD)는 메모리 장치(100)의 내부에서 읽기 패스(140)에 대한 트레이닝에 의거하여 생성될 수 있다.
제 3 레지스터(103)는 메모리 장치(100)의 쓰기 패스(130)에 대한 트레이닝에 따른 트레이닝 결과값을 저장할 수 있다.
제 1 멀티플렉서(105)는 쓰기/읽기 모드 정보에 의거하여 제 1 레지스터(101)의 저장된 제 1 코드 값과 제 2 레지스터(102)에 저장된 제 2 코드 값 중에서 어느 하나를 선택하도록 구현될 수 있다. 예를 들어, 쓰기 모드에서 제 1 멀티 플렉서(105)는 제 1 레지스터(101)에 저장된 코드값을 DCA 코드값으로 선택할 수 있다. 반면에, 읽기 모드에서 제 1 멀티 플렉서(105)는 제 2 레지스터(102)에 저장된 코드값을 DCA 코드값으로 선택할 수 있다.
제 2 멀티플렉서(106)는 쓰기 패스(130)를 경유한 클록 및 읽기 패스(140)를 경유한 클록 중에서 어느 하나를 선택하도록 구현될 수 있다. 예를 들어, 제 2 멀티 플렉서(106)는 DCA 트레이닝 구간 중에서 제 1 구간에서 쓰기 패스(130)를 경유한 클록을 선택할 수 있다. 반면에, 제 2 멀티 플렉서(106)는 DCA 트레이닝 구간 중에서 제 2 구간에서 읽기 패스(130)를 경유한 클록을 선택할 수 있다.
디-멀티플렉서(107)는 듀티 사이클 모니터(110, DCM)을 출력값을 제 1 구간에서 제 3 레지스터(103)에 저장시킬 수 있다. 또한, 디-멀티플렉서(107)는 듀티 사이클 모니터(110, DCM)을 출력값을 제 2 구간에서 제 2 레지스터(102)에 저장시킬 수 있다.
메모리 장치(100)는 쓰기 패스(130)/읽기 패스(140)를 독립적으로 DCA-DCM training을 수행함으로써, 쓰기/읽기 동작에 따라 최적 DCA 코드값을 생성할 수 있다.
도 3은 본 발명의 실시 예에 따른 메모리 장치(100)에서 DCA-DCM 트레이닝을 하는 타이밍을 예시적으로 보여주는 도면이다.
도 3을 참조하면, DCA 트레이닝 활성화 신호(DCA_EN)은 쓰기 패스 트레이닝 활성화 신호(WP_EN)와 읽기 패스 트레이닝 활성화 신호(RD_EN)로 분할 될 수 있다. DCM 트레이닝을 활성화하는 전체 구간(tDCMM)은 쓰기 패스(130)에 대한 제 1 트레이닝을 위한 제 1 구간(tDCMM/2)과 읽기 패스(140)에 대한 제 2 트레이닝을 위한 제 2 구간(tDCMM/2)을 포함할 수 있다. 실시 예에 있어서, 전체 구간(tDCMM)은 2μs일 수 있다. 제 1 구간 및 제 2 구간은 각각 1μs 일 수 있다. 하지만, 본 발명에 이러한 수치들에 제한되지 않는다고 이해되어야 할 것이다.
도 3에 도시된 바와 같이, DCM 트레이닝은 쓰기 패스(130)를 위한 제 1 트레이닝을 먼저 수행한 후, 읽기 패스(140)를 위한 제 2 트레이닝을 수행할 수 있다. 반대로, DCM 트레이닝은 읽기 패스(140)를 위한 트레이닝을 먼저 수행한 후에 쓰기 패스(130)를 위한 트레이닝을 수행할 수도 있다.
실시 예에 있어서, 트레이닝 구간(tDCMM)을 내부적으로 절반씩 분할하여 (tDCMM/2) 쓰기 패스(130)와 읽기 패스(140)의 각각 공통의 단일 DCA(110)로 트레이닝이 수행될 수 있다.
도 4a은 DCA 트레이닝 전의 듀티 에러를 보여주는 도면이고, 도 4b는 본 발명의 실시 예에 따른 트레이닝 이후의 듀티 에러 보정을 보여주는 도면이다. 도 4a에 도시된 바와 같이, DCA 트레이닝 전에는 쓰기 모드(WR) 및 읽기 모드(RD)에서 듀티 에러가 존재하고 있다. 반면에, DCA 트레이닝 이후에는 도 4b에 도시된 바와 같이, 읽기 모드(RD) 및 쓰기 모드(WR)에서 듀티 에러가 0%로 보정되고 있다.
도 5는 본 발명의 실시 예에 따른 듀티 보정 방법을 예시적으로 보여주는 흐름도이다. 도 1 내지 도 5를 참조하면, 듀티 보정 방법은 다음과 같이 진행될 수 있다.
제어기(200)는 DCA 트레이닝을 위하여 클록을 고주파수로 변환할 수 있다(S110). 제어기(200)는 DCA 트레이닝을 위한 데이터 전송 클록(WCK)을 메모리 장치(100)로 전송할 수 있다(S111). 제어기(200)는 MRW에 의해 DCA 를 제어할 수 있다(S112).
메모리 장치(100)는 내부적으로 DCA 트레이닝 구간(tDCMM)을 분할 수 있다(S113). 제 1 트레이닝 구간(tDCMM/2)에서 쓰기 패스(130)에 대한 DCM 결과값이 제 1 레지스터(101)에 저장될 수 있다(S114). 제 1 트레이닝 구간(tDCMM/2) 이후에, 제 2 트레이닝 구간에서 읽기 패스(140)에 대한 DCM 결과값이 제 2 레지스터(102)에 저장될 수 있다(S115). 제어기(200)는 제 1 레지스터(101)를 체크함으로써 쓰기 패스(130)에 대한 DCA 결과값을 가져올 수 있다. S113, S114, 및 S115 단계들이 한번 더 진행될 수 있다(S116). 이후에 DCA 코드의 끝이 sweep 되었는가 판별될 수 있다(S117). 만일, DCA 코드의 끝이 sweep 되었다면, DCA 캘리브레이션 동작에서 빠져나올 수 있다(S118). 이후에 캘리브레이션 된 DCA 코드가 메모리 장치(100)에 전송될 수 있다(S119). 반면에, DCA 코드의 끝이 sweep 되어 않았다면, S112 단계가 진행될 수 있다.
도 6은 본 발명의 실시 예에 따른 메모리 시스템의 DCA 트레이닝을 예시적으로 보여주는 래더 다이어그램이다. 도 1 내지 도6을 참조하면, DCA 트레이닝은 다음과 같이 진행될 수 있다.
제어기(CNTL)는 메모리 장치(MEM)에 듀티 조정을 위한 DCA 트레이닝을 요청할 수 있다(S10). 메모리 장치(MEM)는 이러한 요청에 응답하여 DCA 트레이닝을 수행할 수 있다. 우선적으로 메모리 장치(MEM)는 쓰기 패스(130, 도 2 참조)에 대한 DCA 트레이닝을 수행할 수 있다(S11). 이때, 메모리 장치(MEM)는 쓰기 패스(130)에 대한 DCM 결과값을 레지스터(101)에 저장할 수 있다(S12). 다음으로 메모리 장치(MEM)는 읽기 패스(140, 도 2 참조)에 대한 DCA 트레이닝을 수행할 수 있다(S13). 이때, 메모리 장치(MEM)는 읽기 패스(140)에 대한 DCM 결과값에 대응하는 읽기 모드 DCA 코드값(DCA_CODE_RD)을 레지스터(102)에 저장할 수 있다(S14).
이후, 제어기(CNTL)는 메모리 장치(MEM)의 제 1 레지스터(101)에 저장된 쓰기 패스(130)을 위한 DCM 결과값을 읽어올 수 있다(S150). 제어기(CNTL)는 쓰기 패스(130)를 위한 DCM 결과값을 이용하여 쓰기 모드 DCA 코드값(DCA_CODE_WR)를 생성하고, 쓰기 모드 DCA 코드값(DCA_CODE_WR)를 메모리 장치(MEM)로 전송할 수 있다(S16).
실시 예에 있어서, Write path clock의 duty를 모니터링 함으로써, AP로 피드백하고, AP 에서 결정한 Write path DCA 제어 code를 수신할 수 있다.
실시 예에 있어서, Read path clock의 duty 모니터링 정보는 AP로 피드백 하지 않는다. Read path 최적 DCA 코드는 내부 별도 register에 저장될 수 있다(on-chip hidden self-calibration).
실시 예에 있어서, DRAM Write/Read 동작 모드에 따라 register에 구분 저장된 최적 DCA 코드가 선택적으로 사용될 수 있다.
도 7은 본 발명의 실시 예에 따른 메모리 장치(700)를 보여주는 도면이다. 도 7을 참조하면, 메모리 장치(700)는, 듀티 보정 회로(701), 메모리 셀 어레이(710), 로우 디코더(720), 컬럼 디코더(730), 감지 증폭 회로(740), 어드레스 레지스터(750), 뱅크 제어 로직(752), 리프레쉬 카운터(754), 로우 어드레스 멀티플렉서(756), 컬럼 어드레스 래치(758), 제어 로직(760), 리페어 제어회로(766), 타이밍 제어 회로(764), 입출력 게이팅 회로(770), 에러 정정 회로(780), 및 데이터 입출력 버퍼(782)를 포함할 수 있다.
듀티 보정 회로(701)는, 도 1 내지 도 6에서 설명된 바와 같이, 쓰기 패스에대한 제 1 DCA 트레이닝과 읽기 패스에 대한 제 2 DCA 트레이닝을 수행하고, 읽기/쓰기 모드에 최적의 DCA 코드값을 저장할 수 있다.
메모리 셀 어레이(710)는 제 1 내지 제 8 뱅크들(711 ~ 718)을 포함할 수 있다. 한편, 메모리 셀 어레이(710)의 뱅크의 개수는 여기에 제한되지 않는다고 이해되어야 할 것이다. 로우 디코더(720)는 제 1 내지 제 8 뱅크들(711 ~ 718)에 각각 연결된 제 1 내지 제 8 뱅크 로우 디코더들(721 ~ 728)을 포함할 수 있다. 컬럼 디코더(730)는 제 1 내지 제 8 뱅크들(711 ~ 718)에 각각 연결된 제 1 내지 제 8 뱅크 컬럼 디코더들(731 ~ 738)을 포함할 수 있다. 감지 증폭 회로(740)는 제 1 내지 제 8 뱅크들(711 ~ 718)에 각각 연결된 제 1 내지 제 8 뱅크 센스 앰프들(741 ~ 748)을 포함할 수 있다.
한편, 제 1 내지 제 8 뱅크들(711 ~ 718), 제 1 내지 제8 뱅크 로우 디코더들(721 ~ 728), 제 1 내지 제 8 뱅크 컬럼 디코더들(731 ~ 738), 제 1 내지 제 8 뱅크 센스 앰프들(741 ~ 748)은 제 1 내지 제 8 뱅크들을 각각 구성할 수 있다. 제 1 내지 제 8 뱅크들(711 ~ 718)의 각각은 워드라인(WL)들과 비트라인(BL)들이 교차하는 지점에 형성되는 복수의 메모리 셀(MC)들을 포함할 수 있다.
어드레스 레지스터(750)는 외부의 메모리 제어기로부터 뱅크 어드레스(BANK_ADDR), 로우 어드레스(ROW_ADDR) 및 컬럼 어드레스(COL_ADDR)를 갖는 어드레스(ADDR)를 수신 및 저장할 수 있다. 어드레스 레지스터(750)는 수신된 뱅크 어드레스(BANK_ADDR)를 뱅크 제어 로직(752)에 제공하고, 수신된 로우 어드레스(ROW_ADDR)를 로우 어드레스 멀티플렉서(756)에 제공하며, 수신된 컬럼 어드레스(COL_ADDR)를 컬럼 어드레스 래치(758)에 제공할 수 있다.
뱅크 제어 로직(752)은 뱅크 어드레스(BANK_ADDR)에 응답하여 뱅크 제어 신호들을 생성할 수 있다. 뱅크 제어 신호들에 응답하여 제 1 내지 제 8 뱅크 로우 디코더들(721 ~ 728) 중에서 뱅크 어드레스(BANK_ADDR)에 대응하는 뱅크 로우 디코더가 활성화될 수 있다. 뱅크 제어 신호들에 응답하여 제 1 내지 제 8 뱅크 컬럼 디코더들(731 ~ 738) 중에서 뱅크 어드레스(BANK_ADDR)에 대응하는 뱅크 컬럼 디코더가 활성화될 수 있다.
로우 어드레스 멀티플렉서(756)는 어드레스 레지스터(750)로부터 로우 어드레스(ROW_ADDR)를 수신하고, 리프레쉬 카운터(754)로부터 리프레쉬 로우 어드레스(REF_ADDR)를 수신할 수 있다. 로우 어드레스 멀티플렉서(756)는 로우 어드레스(ROW_ADDR) 혹은 리프레쉬 로우 어드레스(REF_ADDR)를 로우 어드레스(RA)로서 선택적으로 출력할 수 있다. 로우 어드레스 멀티플렉서(756)로부터 출력된 로우 어드레스(RA)는 제 1 내지 제 8 뱅크 로우 디코더들(721 ~ 728)에 각각 인가될 수 있다.
제 1 내지 제 8 뱅크 로우 디코더들(721 ~ 728) 중에서 뱅크 제어 로직(752)에 의해 활성화된 뱅크 로우 디코더는 로우 어드레스 멀티플렉서(756)로부터 출력된 로우 어드레스(RA)를 디코딩하여 로우 어드레스에 대응하는 워드라인을 활성화할 수 있다. 예를 들어, 활성화된 뱅크 로우 디코더는 로우 어드레스에 대응하는 워드라인에 워드라인 구동 전압을 인가할 수 있다. 또한, 활성화된 뱅크 로우 디코더는 로우 어드레스에 대응하는 워드라인을 활성화하는 것과 동시에 리페어 제어회로(766)로부터 출력되는 리던던시 로우 어드레스에 대응하는 리던던시 워드라인을 활성화할 수 있다.
컬럼 어드레스 래치(758)는 어드레스 레지스터(750)로부터 컬럼 어드레스(COL_ADDR)를 수신하고, 수신된 컬럼 어드레스(COL_ADDR)를 일시적으로 저장할 수 있다. 또한, 컬럼 어드레스 래치(758)는, 버스트(burst) 모드에서, 수신된 컬럼 어드레스(COL_ADDR)를 점진적으로 증가시킬 수 있다. 컬럼 어드레스 래치(758)는 일시적으로 저장된 혹은 점진적으로 증가한 컬럼 어드레스(COL_ADDR)를 제 1 내지 제 8 뱅크 컬럼 디코더들(731 ~ 738)에 각각 인가할 수 있다.
제 1 내지 제 8 뱅크 컬럼 디코더들(731 ~ 738) 중에서 뱅크 제어 로직(752)에 의해 활성화된 뱅크 컬럼 디코더는 입출력 게이팅 회로(770)를 통하여 뱅크 어드레스(BANK_ADDR) 및 컬럼 어드레스(COL_ADDR)에 대응하는 센스 앰프를 활성화할 수 있다. 또한, 활성화된 뱅크 컬럼 디코더는 리페어 제어회로(766)로부터 출력되는 컬럼 리페어 신호(CRP)에 응답하여 컬럼 리페어 동작을 수행할 수 있다.
제어 로직(760)은 메모리 장치(700)의 동작을 제어하도록 구현될 수 있다. 예를 들어, 제어 로직(760)은 반도체 메모리 장치(700)가 쓰기 동작 혹은 읽기 동작을 수행하도록 제어 신호들을 생성할 수 있다. 제어 로직(760)은 메모리 제어기로부터 수신되는 명령(CMD)을 디코딩하는 커맨드 디코더(761) 및 메모리 장치(700)의 동작 모드를 설정하기 위한 모드 레지스터 셋(762)를 포함할 수 있다.
예를 들어, 커맨드 디코더(761)는 라이트 인에이블 신호(/WE), 로우 어드레스 스트로브 신호(/RAS), 컬럼 어드레스 스트로브 신호(/CAS), 칩 선택 신호(/CS) 등을 디코딩함으로써 명령(CMD)에 대응하는 동작 제어 신호들(ACT, PCH, WE, RD)을 생성할 수 있다. 제어 로직(760)은 동작 제어 신호들(ACT, PCH, WE, RD)을 타이밍 제어 회로(764)에 제공할 수 있다. 제어 신호들(ACT, PCH, WR, RD)은 액티브 신호(ACT), 프리차지 신호(PCH), 쓰기 신호(WR) 및 읽기 신호(RD)를 포함할 수 있다.
입출력 게이팅 회로(770)의 입출력 게이팅 회로들 각각은 입출력 데이터를 게이팅하는 회로들과 함께, 입력 데이터 마스크 로직, 제 1 내지 제 8 뱅크들(711 ~ 718)로부터 출력된 데이터를 저장하기 위한 읽기 데이터 래치들, 및 제 1 내지 제 8 뱅크들(711 ~ 718)에 데이터를 쓰기 위한 쓰기 드라이버들을 포함할 수 있다.
제 1 내지 제 8 뱅크들(711 ~ 718) 중에서 하나의 뱅크에서 읽혀질 코드워드(CW; codeword)는 하나의 뱅크에 대응하는 센스 앰프에 의해 감지되고, 읽기 데이터 래치들에 저장될 수 있다. 읽기 데이터 래치들에 저장된 코드워드(CW)는 에러 정정 회로(780)에 의하여 ECC 디코딩이 수행된 후, 데이터 입출력 버퍼(782)를 통하여 메모리 제어기에 제공될 수 있다. 제 1 내지 제 8 뱅크들(210 ~ 218) 중에서 하나의 뱅크에 쓰여질 데이터(DQ)는 에러 정정 회로(780)에서 ECC 인코딩을 수행한 후 쓰기 드라이버들을 통하여 하나의 뱅크에 쓰여 질 수 있다.
데이터 입출력 버퍼(782)는 쓰기 동작에서 메모리 제어기로부터 제공되는 클록(CLK)에 근거로 하여 데이터(DQ)를 에러 정정 회로(780)에 제공하고, 읽기 동작에서 에러 정정 회로(780)로부터 제공되는 데이터(DQ)를 메모리 제어기에 제공할 수 있다.
에러 정정 회로(ECC, 780)는 쓰기 동작에서 데이터 입출력 버퍼(782)로부터 제공되는 데이터(DQ)의 데이터 비트들에 근거로 하여 패리티 비트들을 생성하고, 데이터(DQ)와 패리티 비트들을 포함하는 코드워드(code word)를 입출력 게이팅 회로(770)에 제공하고, 입출력 게이팅 회로(770)은 코드워드를 뱅크에 쓸 수 있다. 또한, 에러 정정 회로(780)는 읽기 동작에서 하나의 뱅크에서 읽혀진 코드워드(CW)를 입출력 게이팅 회로(770)로부터 제공 받을 수 있다. 에러 정정 회로(780)는 읽혀진 코드워드(CW)에 포함되는 패리티 비트들을 이용하여 데이터(DQ)에 대한 ECC 디코딩을 수행하여 데이터(DQ)에 포함되는 적어도 하나의 에러 비트를 정정하여 데이터 입출력 버퍼(782)에 제공할 수 있다.
본 발명의 실시 예에 따른 메모리 장치(700)는, 고속에서 읽기/쓰기 모드에 최적의 듀티 보정을 수행함으로써, 데이터의 송수신 성능을 크게 개선할 수 있다.
도 8은 본 발명의 실시 예에 따른 SoC-DRAM의 WCK 트레이닝을 예시적으로 보여주는 도면이다. 도 8을 참조하면, 메모리 시스템(20)은 DRAM(100a) 및 SoC(200a)를 포함할 수 있다.
SoC(200a)은 WCK2CK에 동기화하여 CAS 커맨드를 DRAM(100a)에 발행할 수 있다. DRAM(100a)는 CAS 커맨드에 응답하여 모드 레지스터(MR)를 설정함으로써 DCM을 시작할 수 있다. DCM는 제 1 트레이닝 구간(tDCMM/2) 동안 쓰기 패스에 대한 제 1 트레이닝을 수행하고, 제 2 트레이닝 구간(tDCMM/2) 동안 읽기 패스에 대한 제 2 트레이닝을 수행할 수 있다. 제 1 트레이닝에 대한 결과값은 쓰기 레지스터에 저장되고, 제 2 트레이닝에 대한 결과값은 읽기 레지스터에 저장될 수 있다. 상술된 트레이닝들은 적어도 한 번 더 반복될 수 있다. 이후에, 쓰기 레지스터에 저장된 트레이닝 정보는 SoC(200a)로 출력될 수 있다. 이때, DCA는 sweep(청소)될 수 있다. 이후에 SoC(200a)는 트레이닝 정보에 대응하는 제 1 DCA 코드값을 DRAM(100a)로 전송할 수 있다. DRAM(100a)는 쓰기 모드시 제 1 DCA 코드값에 따라 듀티를 보상하고, 읽기 모드시 제 2 DCA 코드값에 따라 듀티를 보상할 수 있다. 여기서 제 2 DCA 코드값은 읽기 레지스터에 저장된 트레이닝 정보에 대응할 수 있다.
실시 예에 있어서, 2-랭크 시스템의 경우에, 각 랭크마다 상술된 과정들이 반복될 수 있다.
도 9는 본 발명의 실시 예에 따른 적어도 하나의 커맨드/어드레스 캘리브레이션을 수행하는 메모리 시스템을 예시적으로 보여주는 도면이다. 도 9를 참조하면, 메모리 시스템(1000)은 제어기(1800)와 메모리 장치(1900)를 포함할 수 있다. 제어기(1800)는 클록 발생기(1801), 커맨드/어드레스(CA) 발생기(1802), 커맨드/어드레스 레퍼런스 발생기(1803), 레지스터(1804), 비교기(1806), 위상/타이밍 제어기(1808), 및 데이터 입출력기(1810, 1812)를 포함할 수 있다. 제어기(1800)는 클록 발생기(1801)에서 생성되는 클록(CK)를 클록 라인을 통해 메모리 장치(1900)로 제공할 수 있다.
실시 예에 있어서, 메모리 시스템(1000)은 인터페이스에 별도로 커맨드/어드레스의 레퍼런스 신호(CA_Ref) 라인을 포함하고 있다. 커맨드/어드레스의 레퍼런스 신호(CA_Ref) 라인은 캘리브레이션 모드에서 커맨드/어드레스의 기준값인 커맨드/어드레스의 레퍼런스 신호(CA_Ref)를 송수신 하는 역할을 수행할 수 있다.
이러한 커맨드/어드레스의 기준값을 이용한 캘리브레이션 결과값을 위상/타이밍 제어기(1808)에 제공해서 커맨드/어드레스 신호(CA)의 위상/타이밍을 조정할 수 있다. 별도의 커맨드/어드레스의 레퍼런스 신호(CA_Ref) 라인이 있으므로 커맨드/어드레스(CA) 신호를 전송하는 동작을 하면서 동시에 커맨드/어드레스(CA) 신호의 위상/타이밍을 조정할 수 있는 캘리브레이션 동작을 수행할 수 있는 장점이 있다.
CA 발생기(1802)는 위상/타이밍 제어기(1808)의 제어 신호(CTR)에 응답하여 위상 혹은 타이밍을 조정된 커맨드/어드레스 신호(CA)를 발생하고, CA 버스를 통해 메모리 장치(1900)로 전송할 수 있다.
커맨드/어드레스 레퍼런스 발생기(1803)는 커맨드/어드레스 발생기(1802)와 동일하게 구성되며, 커맨드/어드레스 발생기(1802)에서 발생되는 커맨드/어드레스 신호(CA)와 동일한 제 1 커맨드/어드레스 레퍼런스 신호(CA_Ref1)를 발생할 수 있다.
제 1 커맨드/어드레스 레퍼런스 신호(CA_Ref1)는 레지스터(1804)로 제공된다. 또한, 제 1 커맨드/어드레스 레퍼런스 신호(CA_Ref1)는 데이터 출력기(1812)를 통해 CA 레퍼런스 버스(12)로 전송되고, CA 레퍼런스 버스(16)를 통해 메모리 장치(1900)로 제공된다.
레지스터(1804)는 제 1 커맨드/어드레스 레퍼런스 신호(CA_Ref1)를 저장할 수 있다. 비교기(1806)는 레지스터(1804)에 저장된 제 1 커맨드/어드레스 레퍼런스 신호(CA_Ref1)와 데이터 입력기(1810)로부터 출력되는 제3 커맨드/어드레스 레퍼런스 신호(CA_Ref3)를 비교할 수 있다. 비교기(1804)는 제 1 커맨드/어드레스 레퍼런스 신호(CA_Ref1)와 제3 커맨드/어드레스 레퍼런스 신호(CA_Ref3)의 데이터를 비교하여 패스 혹은 페일 신호(P/F)를 발생할 수 있다.
위상/타이밍 제어기(1808)는 비교기(1806)의 패스 혹은 페일 신호(P/F)에 따라 커맨드/어드레스 신호(CA)의 위상 변이(shift)를 지시하는 제어 신호(CTR)를 발생할 수 있다. 제어 신호(CTR)는 커맨드/어드레스 신호(CA)의 위상 혹은 타이밍을 조정하여, 위상 조정된 커맨드/어드레스 신호(CA)를 발생시킬 수 있다.
데이터 입력기(1810)는, 메모리 장치(1900)로부터 CA 레퍼런스 버스를 통해 전달되는 제 2 커맨드/어드레스 레퍼런스 신호(CA_Ref2)를 수신하여 제3 커맨드/어드레스 레퍼런스 신호(CA_Ref3)로서 비교기(1806)로 전달할 수 있다.
데이터 출력기(1812)는 커맨드/어드레스 레퍼런스 발생기(1803)에서 발생된 제 1 커맨드/어드레스 레퍼런스 신호(CA_Ref1)를 수신하여 CA 레퍼런스 버스(12)로 전송할 수 있다.
메모리 장치(1900)는 클록 버퍼(1902), 커맨드/어드레스(CA) 수신기(1904), 커맨드/어드레스 레퍼런스 수신기(1906), 및 데이터 입출력기(1908, 910)를 포함할 수 있다. 클록 버퍼(1902)는 클록 라인을 통해 전달되는 클록(CK)를 수신하여 내부 클록(ICK)를 발생할 수 있다. CA 수신기(1904)는 내부 클록(ICK)에 응답하여 칩 선택 신호(/CS), 클록 인에이블 신호(CKE) 및 CA 버스를 통해 전달되는 커맨드/어드레스 신호(CA)를 수신할 수 있다.
클록 인에이블 신호(CKE)는 CA 버스를 통해 전달되는 커맨드/어드레스 신호(CA)의 리드 커맨드로 작용하는 의사 커맨드(pseudo command)로 사용될 수 있다. CA 수신기(1904)는 클록 인에이블 신호(CKE)가 활성화일 때에 커맨드/어드레스 신호(CA)를 수신할 수 있다.
데이터 입력기(1908)는 제어기(1800)로부터 CA 레퍼런스 버스를 통해 전달되는 제 1 커맨드/어드레스 레퍼런스 신호(CA_Ref1)를 수신하여 커맨드/어드레스 레퍼런스 수신기(1906)로 전달할 수 있다. 커맨드/어드레스 레퍼런스 수신기(1906)는 CA 수신기(1904)와 동일하게 구성될 수 있다. 커맨드/어드레스 레퍼런스 수신기(1906)는 내부 클록(ICK)에 응답하여 칩 선택 신호(/CS), 클록 인에이블 신호(CKE) 및 CA 레퍼런스 버스를 통해 전달되는 제 1 커맨드/어드레스 레퍼런스 신호(CA_Ref1)를 수신하여 제 2 커맨드/어드레스 레퍼런스 신호(CA_Ref2)를 발생할 수 있다.
제 2 커맨드/어드레스 레퍼런스 신호(CA_Ref2)는, CA 수신기(1904)에서 내부 클록(ICK)에 응답하여 칩 선택 신호(/CS), 클록 인에이블 신호(CKE) 및 CA 버스를 통해 전달되는 커맨드/어드레스 신호(CA)를 수신하여 출력하는 신호와 동일할 수 있다. 제 2 커맨드/어드레스 레퍼런스 신호(CA_Ref2)는 데이터 출력기(1910)를 통해 CA 레퍼런스 버스로 전달될 수 있다.
메모리 시스템(1000)에서 이루어지는 CA 캘리브레이션은 다음과 같다. 제어기(1800)의 CA 발생기(1802)는 위상/타이밍 제어기(1808)의 제어 신호(CTR)에 응답하여 커맨드/어드레스 신호(CA)의 위상 혹은 타이밍을 조정하여 커맨드/어드레스 신호(CA)를 CA 버스로 전송할 수 있다. 커맨드/어드레스 레퍼런스 발생기(1803)는 커맨드/어드레스 신호(CA)와 동일한 제 1 커맨드/어드레스 레퍼런스 신호(CA_Ref1)를 발생하여 CA 레퍼런스 버스로 전달할 수 있다.
메모리 장치(1900)의 CA 레퍼런스 수신기(1906)는 내부 클록(ICK)와 클록 인에이블 신호(CKE)에 따라 제 1 커맨드/어드레스 레퍼런스 신호(CA_Ref1)를 수신하여 제 2 커맨드/어드레스 레퍼런스 신호(CA_Ref2)를 발생할 수 있다. 메모리 장치(1900)의 제 2 커맨드/어드레스 레퍼런스 신호(CA_Ref2)는 CA 레퍼런스 버스로 전송될 수 있다.
제어기(1800)는 CA 레퍼런스 버스를 통해 전송되는 제 2 커맨드/어드레스 레퍼런스 신호(CA_Ref2)를 제 2 커맨드/어드레스 레퍼런스 신호(CA_Ref2)로써 비교기(1806)로 전송할 수 있다. 비교기(1806)는 제 1 커맨드/어드레스 레퍼런스 신호(CA_Ref1)와 제 2 커맨드/어드레스 레퍼런스 신호(CA_Ref2)의 데이터를 비교하여 패스 혹은 페일 신호(P/F)를 발생할 수 있다. 위상/타이밍 제어기(1808)는 비교기(1806)의 패스 혹은 페일 신호(P/F)에 따라 커맨드/어드레스 신호(CA)의 위상 변이(shift)를 지시하는 제어 신호(CTR)를 발생할 수 있다. CA 발생기(1802)는 제어 신호(CTR)에 따라 위상 조정된 커맨드/어드레스 신호(CA)를 발생시킬 수 있다.
이러한 CA 캘리브레이션 동작의 반복으로, 제어기(1800)의 위상/타이밍 제어기(1808)는 패스(P)된 위치들의 중간을 커맨드/어드레스 신호(CA) 윈도우의 중간으로 판별하고, 클록(CK)의 엣지에 커맨드/어드레스 신호(CA) 윈도우의 중간이 오도록 커맨드/어드레스 신호(CA)를 발생하여 메모리 장치(1900)로 제공할 수 있다. 이에 따라, 메모리 장치(1900)는 클록(CK)의 상승/하강 엣지에서 클록 쌍(CK, CKB)의 상승/하강 엣지에 유효 윈도우의 중간이 위치하는 커맨드/어드레스 신호(CA)를 수신할 수 있다.
도 9에 도시된 바와 같이, 메모리 시스템(1000)의 제어기(1800) 및 메모리 장치(1900)는 각각 대응하는 트랜시버들(1820, 1920)을 포함할 수 있다. 특히, 메모리 장치(1900)는 데이터 전송 클록(WCK)를 수신하여, RDQS 신호를 출력하는 듀티 보정 회로(1930; DCC)를 포함할 수 있다. 여기서 듀티 보정 회로(1930)는 도 1 내지 도 8에서 설명된 바와 같이, 쓰기/읽기 동작시 대응하는 최적의 DCA 코드값에 따라 클록 듀티를 보정할 수 있다.
도 10은 본 발명의 실시 예에 따른 전자 장치(2000)를 보여주는 도면이다. 도 10을 참조하면, 전자 장치(2000)는 메모리 장치(2200), SoC(System-on Chip, 2300), 및 기판(2400)을 포함할 수 있다.
메모리 장치(2200)는 수직 방향으로 적층된 메모리 다이들(2210, 2220)과 버퍼 다이(2230)를 포함할 수 있다. 메모리 장치(2200)는 고대역폭을 제공하는 HBM(High Bandwidth Memory) 장치일 수 있다. 메모리 장치(2200)는 기판(2400)의 일면에 배치 될 수 있고 그리고 메모리 장치(2200)의 일면에는 솔더 볼(Solder ball) 혹은 범프(Bump)가 배치될 수 있다. 솔더 볼 혹은 범프를 통해 메모리 장치(2200)와 기판(2400)이 서로 전기적으로 연결될 수 있다. 관통 전극들(TSV)은 메모리 다이들(2210, 2220)과 버퍼 다이(2230) 간의 물리적인 혹은 전기적인 경로들을 제공할 수 있다. 예를 들어, 관통 전극들(TSV)은 매트리스 배열로 배치될 수 있고 배치 위치는 도 10에 도시된 것으로 한정되지 않는다. 메모리 장치(2200)는 도 1 내지 도 9에서 설명된 바와 같이, 읽기/쓰기 모드에서 최적의 클록 듀티 보정을 수행하도록 구현될 수 있다.
메모리 다이(2210)는 제 1 영역(2211)과 제 2 영역(2212)을 포함할 수 있다. 제 1 영역(2211)은 메모리 장치(1200)의 구성 요소들이 배치될 수 있다. 제 2 영역(2212)은 관통 전극들(TSV)이 배치될 수 있고 관통 전극들(TSV)을 통해 신호를 전송하거나 수신하기 위한 회로들이 배치될 수 있다. 메모리 다이(2220)는 메모리 다이(2210)와 실질적으로 동일하게 구현될 수 있다. 버퍼 다이(2210; 코어 다이 혹은 로직 다이)는 제 1 영역(2231)과 제 2 영역(2232)을 포함할 수 있다. 제 1 영역(2231)은 SoC(2300)로부터 입출력 경로들(I/O Path)을 통해 전송되는 명령, 어드레스, 데이터 입출력 신호(CMD, ADD, DQ)를 수신하는 적어도 하나의 수신기가 배치될 수 있다. 또한, 제 1 영역(2231)에는 상술된 메모리 장치(1200)의 구성 요소들이 배치될 수 있다. 제 2 영역(2232)은 관통 전극들(TSV)이 배치될 수 있고 관통 전극들(TSV)을 통해 신호를 전송하거나 수신하기 위한 회로들이 배치될 수 있다.
SoC(2300)는 기판(2400)의 일면에 배치될 수 있다. 또한, SoC(2300)의 일면에는 솔더 볼 혹은 범프가 배치될 수 있다. 솔더 볼 혹은 범프를 통해 SoC(2300)와 기판(2400)이 서로 전기적으로 연결될 수 있다. SoC(2300)는 메모리 제어기(1300), 메모리 제어기(1300)의 구성 요소들, 프로세서, 온-칩 메모리 등을 포함할 수 있다. SoC(2300)는 메모리 장치(2200)로부터 입출력 경로들(I/O Path)을 통해 전송되는 데이터 입출력 신호(DQ)를 수신하는 적어도 하나의 수신기를 포함할 수 있다.
기판(2400)은 SoC(2300)와 메모리 장치(2200)간의 입출력 경로를 제공할 수 있다. 예를 들어, 기판(2400)은 인쇄 회로 기판, 연성 회로 기판, 세라믹 기판, 혹은 인터포저(interposer)일 수 있다. 기판(2400)이 인터포저인 경우, 기판(2400)은 실리콘 웨이퍼를 이용하여 구현될 수 있다. 기판(2400)의 내부에는 다수의 입출력 경로들(I/O Path)이 구현될 수 있다.
한편, 상술된 본 발명의 내용은 발명을 실시하기 위한 구체적인 실시 예들에 불과하다. 본 발명은 구체적이고 실제로 이용할 수 있는 수단 자체뿐 아니라, 장차 기술로 활용 할 수 있는 추상적이고 개념적인 아이디어인 기술적 사상을 포함 할 것이다.
10: 메모리 시스템
100: 메모리 장치
101: 제 1 레지스터
102: 제 2 레지스터
103: 제 3 레지스터
110: 듀티 사이클 조절기
120: 듀티 사이클 모니터
200: 메모리 제어기
210: 듀티 제어기

Claims (10)

  1. 제 1 코드값을 저장하는 제 1 레지스터;
    제 2 코드값을 저장하는 제 2 레지스터;
    제 1 트레이닝 정보를 저장하는 제 3 레지스터;
    동작 모드 정보에 따라 상기 제 1 코드값 및 상기 제 2 코드값 중에서 어느 하나를 선택하고, 상기 선택된 코드값에 따라 데이터 전송 클록의 듀티를 조절하는 듀티 사이클 조절기; 및
    외부 장치의 트레이닝 요청에 따라 쓰기 패스에 대하여 제 1 트레이닝을 수행하고, 읽기 패스에 대하여 제 2 트레이닝을 수행하는 듀티 사이클 모니터를 포함하고,
    상기 제 1 코드값은 외부의 장치로부터 전송되고,
    상기 제 2 코드값은 상기 제 2 트레이닝의 결과값에 대응하고,
    상기 제 1 트레이닝 정보는 상기 제 1 트레이닝의 결과값을 포함하는 메모리 장치.
  2. 제 1 항에 있어서,
    상기 동작 모드 정보에 응답하여 상기 제 1 레지스터에 저장된 제 1 코드값과 상기 제 2 레지스터에 저장된 제 2 코드값 중에서 어느 하나를 선택하는 제 1 멀티플렉서를 더 포함하는 메모리 장치.
  3. 제 1 항에 있어서,
    상기 쓰기 패스를 경유한 제 1 신호와 상기 읽기 패스를 경유한 제 2 신호 중에서 어느 하나를 선택하는 제 2 멀티플렉서를 더 포함하는 메모리 장치.
  4. 제 3 항에 있어서,
    상기 제 2 멀티 플렉서는, 상기 제 1 트레이닝에서 상기 쓰기 패스를 경유한 상기 제 1 신호를 상기 듀티 사이클 모니터로 출력하고, 상기 제 2 트레이닝에서 상기 읽기 패스를 경유한 상기 제 2 신호를 상기 듀티 사이클 모니터로 출력하는 것을 특징으로 하는 메모리 장치.
  5. 제 3 항에 있어서,
    상기 제 1 트레이닝을 먼저 수행한 후에, 상기 제 2 트레이닝이 수행되는 것을 특징으로 하는 메모리 장치.
  6. 제 3 항에 있어서,
    상기 제 2 트레이닝을 먼저 수행한 후에, 상기 제 1 트레이닝이 수행되는 것을 특징으로 하는 메모리 장치.
  7. 제 1 항에 있어서,
    상기 트레이닝 요청에 따라 상기 제 1 및 제 2 트레이닝들이 적어도 2 번 반복적으로 수행되는 것을 특징으로 하는 메모리 장치.
  8. 제 1 항에 있어서,
    상기 제 1 및 상기 제 2 트레이닝 이후에 상기 제 1 레지스터에 저장된 상기 제 1 코드값은 스윕(sweep)되는 것을 특징으로 하는 메모리 장치.
  9. 듀티 트레이닝 요청을 수신하는 단계;
    제 1 구간에서 쓰기 패스를 위한 제 1 트레이닝을 수행하는 단계;
    상기 제 1 트레이닝의 결과값을 저장하는 단계;
    제 2 구간에서 읽기 패스를 위한 제 2 트레이닝을 수행하는 단계;
    상기 제 2 트레이닝의 결과값을 저장하는 단계;
    상기 제 1 트레이닝의 결과값을 외부의 장치로 전송하는 단계; 및
    상기 외부의 장치로부터 상기 제 1 트레이닝 결과값에 대응하는 DCA(Duty Cycle Adjuster) 코드값을 수신하는 단계를 포함하는 방법.
  10. 메모리 장치; 및
    상기 메모리 장치를 제어하는 메모리 제어기를 포함하고,
    상기 메모리 장치는 상기 메모리 장치의 듀티 트레이닝 요청을 수신하고,
    상기 듀티 트레이닝 요청에 응답하여 쓰기 패스에 대한 제 1 트레이닝을 수행하고, 읽기 패스에 대한 제 2 트레이닝을 수행하고, 상기 제 1 트레이닝의 결과값을 상기 메모리 제어기로 전송하고, 상기 메모리 제어기로부터 상기 제 1 트레이닝의 결과값에 대응하는 제 1 코드값을 수신하는 것을 특징으로 하는 메모리 시스템.
KR1020210074166A 2021-06-08 2021-06-08 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 동작 방법 KR20220165482A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020210074166A KR20220165482A (ko) 2021-06-08 2021-06-08 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 동작 방법
US17/567,306 US11705172B2 (en) 2021-06-08 2022-01-03 Memory device, memory system including the same and operating method thereof
CN202210631179.5A CN115458006A (zh) 2021-06-08 2022-06-06 存储器装置、包括存储器装置的存储器***及其操作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210074166A KR20220165482A (ko) 2021-06-08 2021-06-08 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 동작 방법

Publications (1)

Publication Number Publication Date
KR20220165482A true KR20220165482A (ko) 2022-12-15

Family

ID=84284319

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210074166A KR20220165482A (ko) 2021-06-08 2021-06-08 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 동작 방법

Country Status (3)

Country Link
US (1) US11705172B2 (ko)
KR (1) KR20220165482A (ko)
CN (1) CN115458006A (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230342321A1 (en) * 2022-04-25 2023-10-26 Dell Products L.P. Enhanced eye-width margin using duty cycle adjust

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100645461B1 (ko) 2004-06-30 2006-11-15 주식회사 하이닉스반도체 듀티 싸이클 교정이 가능한 디지털 지연 고정 루프 및그의 제어 방법
US7671647B2 (en) 2006-01-26 2010-03-02 Micron Technology, Inc. Apparatus and method for trimming static delay of a synchronizing circuit
KR100942953B1 (ko) * 2008-06-30 2010-02-17 주식회사 하이닉스반도체 데이터 전달 회로 및 그를 포함하는 반도체 메모리 장치
US8181056B2 (en) 2008-09-30 2012-05-15 Mosaid Technologies Incorporated Serial-connected memory system with output delay adjustment
KR101009335B1 (ko) * 2008-12-29 2011-01-19 주식회사 하이닉스반도체 반도체 메모리 장치 및 그 구동방법
KR101791456B1 (ko) * 2010-10-11 2017-11-21 삼성전자주식회사 라이트 트레이닝 방법 및 이를 수행하는 반도체 장치
US9190129B2 (en) * 2013-05-31 2015-11-17 Avago Technologies General Ip (Singapore) Pte. Ltd. Continuous tuning of preamble release timing in a double data-rate memory device interface
US9934831B2 (en) * 2014-04-07 2018-04-03 Micron Technology, Inc. Apparatuses and methods for storing and writing multiple parameter codes for memory operating parameters
US10430092B1 (en) * 2014-07-28 2019-10-01 Rambus Inc. Memory controller systems with nonvolatile memory for storing operating parameters
US9461631B1 (en) 2015-02-05 2016-10-04 Altera Corporation Circuitry and methods for measuring and correcting duty-cycle distortion
KR102323569B1 (ko) 2015-09-30 2021-11-08 삼성전자주식회사 샘플링 포인트를 독립적으로 조절할 수 있는 데이터 처리 회로와 이를 포함하는 데이터 처리 시스템
KR20180034738A (ko) * 2016-09-26 2018-04-05 삼성전자주식회사 메모리 장치 및 그것의 분주 클록 보정 방법
US10395704B2 (en) 2017-12-22 2019-08-27 Micron Technology, Inc. Apparatuses and methods for duty cycle error correction of clock signals
KR102473661B1 (ko) 2018-01-31 2022-12-02 삼성전자주식회사 듀티 사이클을 조절하는 메모리 장치 및 이를 포함하는 메모리 시스템
US10923175B2 (en) 2018-01-31 2021-02-16 Samsung Electronics Co., Ltd. Memory device adjusting duty cycle and memory system having the same
US10715127B2 (en) 2018-11-21 2020-07-14 Micron Technology, Inc. Apparatuses and methods for using look-ahead duty cycle correction to determine duty cycle adjustment values while a semiconductor device remains in operation

Also Published As

Publication number Publication date
CN115458006A (zh) 2022-12-09
US11705172B2 (en) 2023-07-18
US20220392503A1 (en) 2022-12-08

Similar Documents

Publication Publication Date Title
US11239960B2 (en) Characterization of in-chip error correction circuits and related semiconductor memory devices/memory systems
US11438016B2 (en) Error detection code generation circuits of semiconductor devices, memory controllers including the same and semiconductor memory devices including the same
US9825631B1 (en) Impedance calibration circuit of semiconductor memory device, semiconductor memory device and method of operating the same
US20190206478A1 (en) Memory device for receiving operation codes through dq pins, a memory module including the same, and a setting method of the memory module
US10423483B2 (en) Semiconductor memory device and method for controlling write timing of parity data
US10002045B2 (en) Semiconductor memory devices having input/output gating circuit and memory systems including the same
US11573916B2 (en) Apparatuses and methods for writing data to a memory
TWI814364B (zh) 執行資料訓練的記憶體控制器、包括記憶體控制器的系統晶片以及記憶體控制器的操作方法
US20220165321A1 (en) Semiconductor memory devices and memory systems including the same
US11705172B2 (en) Memory device, memory system including the same and operating method thereof
US11776617B2 (en) Application processors and electronic devices including the same
US11948621B2 (en) Memory devices, memory systems having the same, and operating methods thereof
US11915782B2 (en) Semiconductor device and electronic device including the same
CN117457044A (zh) 半导体存储器装置和包括半导体存储器装置的存储器***

Legal Events

Date Code Title Description
A201 Request for examination