KR20230064847A - 메모리 장치, 호스트 장치 및 메모리 장치의 구동 방법 - Google Patents

메모리 장치, 호스트 장치 및 메모리 장치의 구동 방법 Download PDF

Info

Publication number
KR20230064847A
KR20230064847A KR1020210150385A KR20210150385A KR20230064847A KR 20230064847 A KR20230064847 A KR 20230064847A KR 1020210150385 A KR1020210150385 A KR 1020210150385A KR 20210150385 A KR20210150385 A KR 20210150385A KR 20230064847 A KR20230064847 A KR 20230064847A
Authority
KR
South Korea
Prior art keywords
pull
signal
data signal
circuit
data
Prior art date
Application number
KR1020210150385A
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 KR1020210150385A priority Critical patent/KR20230064847A/ko
Priority to US17/810,929 priority patent/US20230138845A1/en
Priority to EP22184408.7A priority patent/EP4177889A1/en
Priority to CN202211012386.9A priority patent/CN116072167A/zh
Publication of KR20230064847A publication Critical patent/KR20230064847A/ko

Links

Images

Classifications

    • 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/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • 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 
    • 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/1057Data output buffers, e.g. comprising level conversion circuits, circuits for adapting load
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • 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/4072Circuits for initialization, powering up or down, clearing memory or presetting
    • 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 
    • G11C11/4096Input/output [I/O] data management or control circuits, e.g. reading or writing circuits, I/O drivers or bit-line switches 
    • 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
    • G11C7/1084Data input buffers, e.g. comprising level conversion circuits, circuits for adapting load
    • 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/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/1096Write circuits, e.g. I/O line write drivers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/12Bit line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, equalising circuits, for bit lines
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/10Aspects relating to interfaces of memory device to external buses
    • G11C2207/101Analog or multilevel bus
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/0005Modifications of input or output impedance

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Dc Digital Transmission (AREA)
  • Dram (AREA)

Abstract

메모리 장치, 호스트 장치 및 메모리 장치의 구동 방법이 제공된다. 메모리 장치는, 전송 드라이버에 데이터 신호를 제공하는 데이터 신호 생성기, 데이터 신호를 기초로, 제1 내지 제3 신호 레벨 중 어느 하나의 신호 레벨을 갖는 멀티 레벨 신호를 출력하는 전송 드라이버, 외부로부터 피드백 신호를 제공받고 이를 디코딩하는 커맨드 디코더, 커맨드 디코더의 디코딩 결과에 기초하여 데이터 신호를 조절하는 데이터 신호 컨트롤러, 및 커맨드 디코더의 디코딩 결과에 기초하여 제1 내지 제3 신호 레벨 중 적어도 하나를 조절하는 구동 강도(drive strength) 컨트롤러를 포함한다.

Description

메모리 장치, 호스트 장치 및 메모리 장치의 구동 방법{Memory device, host device and method for operating the memory device}
본 발명은 메모리 장치, 호스트 장치 및 메모리 장치의 구동 방법에 관한 것이다.
일반적으로 PAM(Pulse Amplitude Modulation)-N(N은 3이상의 자연수)의 멀티 레벨 신호 시스템에서는 N개의 데이터 레벨간 선형성(linearity) 확보를 위해 송신단에서 출력 신호의 신호 레벨 간격이 일정하도록 멀티 레벨 신호를 송신한다.
그러나, 수신단의 동작 특성, 또는 예를 들어 링크 시스템(link system)과 같은 신호 송수신 시스템의 환경(예를 들어, 데이터 인코딩을 적용하는 환경)에 따라, 수신단의 센싱 마진(sensing margin)이 신호 레벨(또는 데이터 레벨) 별로 상이할 수 있다.
이렇게 신호 레벨 별로 센싱 마진이 차이나는 것은 송신단에서 송신한 신호와 수신단에서 수신한 신호 간에 타이밍 스큐(timing skew)가 존재하기 때문일 수 있는데, 이러한 현상은 송신단과 수신단 사이의 통신 신뢰성을 저하시키는 요소이므로, 이를 개선하기 위한 연구가 필요하다.
본 발명이 해결하고자 하는 기술적 과제는 신뢰성 있는 신호 통신이 가능한 메모리 장치를 제공하는 것이다.
본 발명이 해결하고자 하는 다른 기술적 과제는 신뢰성 있는 신호 통신이 가능한 호스트 장치를 제공하는 것이다.
본 발명이 해결하고자 하는 또 다른 기술적 과제는 신뢰성 있는 신호 통신이 가능한 메모리 장치의 구동 방법을 제공하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상기 기술적 과제를 달성하기 위한 몇몇 실시예에 따른 메모리 장치는, 전송 드라이버에 데이터 신호를 제공하는 데이터 신호 생성기, 데이터 신호를 기초로, 제1 내지 제3 신호 레벨 중 어느 하나의 신호 레벨을 갖는 멀티 레벨 신호를 출력하는 전송 드라이버, 외부로부터 피드백 신호를 제공받고 이를 디코딩하는 커맨드 디코더, 커맨드 디코더의 디코딩 결과에 기초하여 데이터 신호를 조절하는 데이터 신호 컨트롤러, 및 커맨드 디코더의 디코딩 결과에 기초하여 제1 내지 제3 신호 레벨 중 적어도 하나를 조절하는 구동 강도(drive strength) 컨트롤러를 포함한다.
상기 기술적 과제를 달성하기 위한 몇몇 실시예에 따른 메모리 장치는, 데이터 신호를 기초로 제1 내지 제4 신호 레벨 중 어느 하나의 신호 레벨을 갖는 제1 멀티 레벨 신호를 출력하는 전송 드라이버, 및 외부로부터 피드백 신호를 제공받고, 이를 기초로 전송 드라이버가 제1 멀티 레벨 신호와 다른 제2 멀티 레벨 신호를 출력하도록 제어하는 컨트롤러를 포함하되, 컨트롤러는, 데이터 신호를 조절하고, 제1 내지 제4 신호 레벨 중 적어도 하나를 조절하여 전송 드라이버가 제2 멀티 레벨 신호를 출력하도록 제어한다.
상기 기술적 과제를 달성하기 위한 몇몇 실시예에 따른 호스트 장치는, 제1 데이터 신호를 기초로 생성되고, 제1 내지 제3 신호 레벨 중 어느 하나의 신호 레벨을 갖는 제1 멀티 레벨 신호를 수신하는 수신 드라이버, 및 수신 드라이버에 수신된 제1 멀티 레벨 신호를 확인하고, 제1 데이터 신호를 조절할 것을 지시하는 제1 커맨드와, 제1 내지 제3 신호 레벨 중 적어도 하나를 조절할 것을 지시하는 제2 커맨드를 포함하는 피드백 신호를 생성하여 출력하는 신호 컨트롤러를 포함한다.
상기 기술적 과제를 달성하기 위한 몇몇 실시예에 따른 메모리 장치의 구동 방법은, 외부로 부터 피드백 신호를 수신하고, 수신된 피드백 신호를 기초로, 데이터 신호와 전송 드라이버의 온 저항 중 적어도 하나를 조절하고, 조절된 데이터 신호와 조절된 전송 드라이버의 온 저항 중 적어도 하나를 이용하여 멀티 레벨 신호를 생성하고, 생성된 멀티 레벨 신호를 출력하는 것을 포함한다.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
도 1은 몇몇 실시예에 따른 메모리 시스템을 도시한 도면이다.
도 2는 도 1의 전송 드라이버를 도시한 도면이다.
도 3은 도 2의 풀업 회로를 도시한 도면이다.
도 4a 내지 도 4d는 도 3의 풀업 유닛을 도시한 도면들이다.
도 5는 도 2의 풀다운 회로를 도시한 도면이다.
도 6a 및 6b는 도 5의 풀다운 유닛을 도시한 도면들이다.
도 7은 도 1의 컨트롤러를 도시한 도면이다.
도 8 내지 도 11c는 도 7의 데이터 신호 컨트롤러의 동작을 설명하기 위한 도면들이다.
도 12 및 도 13은 도 1의 전송 드라이버가 멀티 레벨 신호를 생성하는 동작을 설명하기 위한 도면들이다.
도 14 내지 도 17은 도 7의 구동 강도 컨트롤러의 동작을 설명하기 위한 도면들이다.
도 18은 몇몇 실시예에 따른 메모리 시스템의 동작을 도시한 순서도이다.
도 19 내지 도 21은 몇몇 실시예에 따른 메모리 시스템의 동작을 설명하기 위한 도면들이다.
도 22a는 다른 몇몇 실시예에 따른 전송 드라이버를 도시한 도면들이다.
도 22b 및 22c는 도 22a의 전송 드라이버의 동작을 설명하기 위한 도면들이다.
도 22d는 다른 몇몇 실시예에 따른 전송 드라이버를 도시한 도면들이다.
도 23은 다른 몇몇 실시예에 따른 메모리 장치를 도시한 도면이다.
도 24는 다른 몇몇 실시예에 따른 메모리 시스템을 도시한 도면이다.
도 25는 몇몇 실시예에 따른 신호 송수신 시스템을 도시한 도면이다.
도 26은 몇몇 실시예에 따른 메모리 시스템이 탑재된 차량(vehicle)을 도시한 도면이다.
도 27은 몇몇 실시예에 따른 메모리 장치가 적용된 시스템을 도시한 도면이다.
이하, 첨부된 도면을 참조하여 본 발명의 기술적 사상에 따른 실시예들에 대해 설명한다.
도 1은 몇몇 실시예에 따른 메모리 시스템을 도시한 도면이다.
도 1을 참조하면, 메모리 시스템은 메모리 장치(100)와 호스트 장치(200)를 포함한다.
메모리 장치(100)는 호스트 장치(200)로부터의 요청에 따라 데이터를 저장하기 위한 저장 매체들을 포함할 수 있다. 몇몇 실시예에서, 메모리 장치(100)는 DRAM(Dynamic Random Memory)을 포함할 수 있다.
하지만, 실시예들이 이에 제한되는 것은 아니며, 메모리 장치(100)는 SSD(Solid State Drive), 임베디드(embedded) 메모리 및 착탈 가능한 외장(external) 메모리 중 적어도 하나를 포함할 수 있다. 메모리 장치(100)가 SSD인 경우, 메모리 장치(100)는 NVMe(non-volatile memory express) 표준을 따르는 장치일 수 있다. 메모리 장치(100)가 임베디드 메모리 혹은 외장(external) 메모리인 경우, 메모리 장치(100)는 UFS(universal flash storage) 혹은 eMMC(embedded multi-media card) 표준을 따르는 장치일 수 있다. 호스트 장치(200)와 메모리 장치(100)는 각각 채용된 표준 프로토콜에 따른 패킷을 생성하고 이를 전송할 수 있다.
메모리 장치(100)가 플래시 메모리를 포함할 때, 플래시 메모리는 2D NAND 메모리 어레이나 3D(또는 수직형, Vertical) NAND(VNAND) 메모리 어레이를 포함할 수 있다. 몇몇 실시예에서, 메모리 장치(100)는 다른 다양한 종류의 비휘발성 메모리들을 포함할 수도 있다. 예를 들어, 메모리 장치(100)는 MRAM(Magnetic RAM), 스핀전달토크 MRAM(Spin-Transfer Torque MRAM), Conductive bridging RAM(CBRAM), FeRAM(Ferroelectric RAM), PRAM(Phase RAM), 저항 메모리(Resistive RAM) 및 다른 다양한 종류의 메모리를 포함할 수 있다.
메모리 장치(100)는 데이터 신호 생성기(DSG), 전송 드라이버(TX), 컨트롤러(CON)를 포함할 수 있다. 메모리 장치(100)는 호스트 장치(200)로부터의 요청에 따라 데이터를 저장하기 위한 도시되지 않은 더 많은 구성요소들을 더 포함할 수 있다.
데이터 신호 생성기(DSG)는 전송 드라이버(TX)에 데이터 신호를 제공할 수 있다. 데이터 신호 생성기(DSG)가 생성하는 데이터 신호에 대한 구체적인 설명은 후술한다.
전송 드라이버(TX)는 데이터 신호 생성기(DSG)가 생성한 데이터 신호를 기초로 멀티 레벨 신호(MLS)를 채널에 출력할 수 있다. 본 개시에서 멀티 레벨 신호(MLS)는 적어도 3개의 신호 레벨 중 어느 하나의 신호 레벨을 갖는 신호를 의미한다.
예를 들어, 메모리 시스템이 PAM-3을 이용하여 통신을 수행하는 경우, 멀티 레벨 신호(MLS)는 제1 내지 제3 신호 레벨 중 어느 하나의 신호 레벨을 갖도록 전송된다. 그리고, 메모리 시스템이 PAM-4를 이용하여 통신을 수행하는 경우, 멀티 레벨 신호(MLS)는 제1 내지 제4 신호 레벨 중 어느 하나의 신호 레벨을 갖도록 전송된다.
예를 들어, 메모리 시스템이 PAM-N(N은 3이상의 자연수)을 이용하여 통신을 수행하는 경우, 멀티 레벨 신호(MLS)는 제1 내지 제N 신호 레벨 중 어느 하나의 신호 레벨을 갖도록 전송된다.
이하에서는, 메모리 시스템이 PAM-4를 이용하여 통신을 수행하는 예를 들어, 본 발명의 실시예들을 설명할 것이나, 실시예들이 이하의 예시에 제한되는 것은 아니다.
도 2는 도 1의 전송 드라이버를 도시한 도면이다. 도 3은 도 2의 풀업 회로를 도시한 도면이다. 도 4a 내지 도 4d는 도 3의 풀업 유닛을 도시한 도면들이다. 도 5는 도 2의 풀다운 회로를 도시한 도면이다. 도 6a 및 6b는 도 5의 풀다운 유닛을 도시한 도면들이다.
도 2를 참조하면, 전송 드라이버(TX)는 풀업(pull up) 회로들(PUC1, PUC2, PUC3)과 풀다운(pull down) 회로들(PDC1, PDC2, PDC3)을 포함할 수 있다.
데이터 신호 생성기(도 1의 DSG)는 전송 드라이버(TX)가 전송하고자 하는 데이터에 따라 풀업 데이터 신호들(PDATA1~PDATA3)을 생성할 수 있다. 몇몇 실시예에서, 전송 드라이버(TX)가 전송하고자 하는 2비트의 데이터에 대해, 데이터 신호 생성기(도 1의 DSG)는 1비트의 풀업 데이터 신호(PDATA1)와, 1비트의 풀업 데이터 신호(PDATA2)와 1비트의 풀업 데이터 신호(PDATA3)를 생성할 수 있으나, 실시예가 이에 제한되는 것은 아니다.
풀업 데이터 신호(PDATA1)는 풀업 회로(PUC1)의 턴온(turn on) 여부를 결정하고, 풀업 데이터 신호(PDATA2)는 풀업 회로(PUC2)의 턴온 여부를 결정하고, 풀업 데이터 신호(PDATA3)는 풀업 회로(PUC3)의 턴온 여부를 결정할 수 있다.
풀업 인에이블 코드(PECODE1)는 풀업 회로(PUC1)에 제공될 수 있다. 풀업 인에이블 코드(PECODE1)는 풀업 회로(PUC1) 내에서 인에이블되는 풀업 유닛의 개수를 결정할 수 있다. 풀업 인에이블 코드(PECODE2)는 풀업 회로(PUC2)에 제공될 수 있다. 풀업 인에이블 코드(PECODE2)는 풀업 회로(PUC2) 내에서 인에이블되는 풀업 유닛의 개수를 결정할 수 있다. 풀업 인에이블 코드(PECODE3)는 풀업 회로(PUC3)에 제공될 수 있다. 풀업 인에이블 코드(PECODE3)는 풀업 회로(PUC3) 내에서 인에이블되는 풀업 유닛의 개수를 결정할 수 있다.
본 실시예에서, 풀업 데이터 신호들(PDATA1~PDATA3)은 서로 독립적인 신호들이고, 풀업 인에이블 코드들(PECODE1, PECODE2, PECODE3)은 서로 독립적인 코드들일 수 있다. 이에 따라, 풀업 회로들(PUC1, PUC2, PUC3)이 서로 독립적으로 턴온되거나 턴오프(turn off)되고, 각 풀업 회로들(PUC1, PUC2, PUC3) 내에서 인에이블되는 풀업 유닛의 개수가 서로 독립적일 수 있다.
도 3을 참조하면, 풀업 회로(PUC1)는 풀업 인에이블 코드(PECODE1)를 기초로 인에이블되는 복수의 풀업 유닛(PU1~PUM)을 포함할 수 있다. 비록 상세하게 도시하지 않았으나, 풀업 회로(PUC2)와 풀업 회로(PUC3)도 동일한 구성을 가질 수 있다.
풀업 회로(PUC1)에 포함되는 풀업 유닛(PU1~PUM)의 개수는 풀업 인에이블 코드(PECODE1)의 비트 수와 관련 있을 수 있다. 예를 들어, 풀업 인에이블 코드(PECODE1)의 비트 수가 5비트인 경우, 풀업 회로(PUC1)는 31개의 풀업 유닛(PU1~PUM)을 포함할 수 있다. (즉, M = 31)
풀업 인에이블 코드(PECODE1)는 풀업 회로(PUC1)에 포함되는 풀업 유닛(PU1~PUM) 중 인에이블되는 풀업 유닛(PU1~PUM)의 개수를 결정할 수 있다.
예를 들어, 풀업 유닛이 도 4a에 도시된 것 같이 PMOS 트랜지스터로 구성되고, 풀업 인에이블 코드(PECODE1)가 5비트이고 그 값이 11111인 경우, 풀업 회로(PUC1)에 포함되는 31개의 풀업 유닛(PU1~PUM)이 모두 디스에이블될 수 있다.
예를 들어, 풀업 유닛이 도 4a에 도시된 것 같이 PMOS 트랜지스터로 구성되고, 풀업 인에이블 코드(PECODE1)가 5비트이고 그 값이 11110인 경우, 풀업 회로(PUC1)에 포함되는 31개의 풀업 유닛(PU1~PUM) 중 1개의 풀업 유닛(예를 들어, PU1)이 인에이블되고, 나머지 풀업 유닛(PU2~PUM)이 디스에이블될 수 있다.
예를 들어, 풀업 유닛이 도 4a에 도시된 것 같이 PMOS 트랜지스터로 구성되고, 풀업 인에이블 코드(PECODE1)가 5비트이고 그 값이 00000인 경우, 풀업 회로(PUC1)에 포함되는 31개의 풀업 유닛(PU1~PUM)이 모두 인에이블 될 수 있다.
앞서 설명한 것과 같이, 풀업 인에이블 코드들(PECODE1, PECODE2, PECODE3)은 서로 독립적인 코드들이므로, 풀업 회로들(PUC1, PUC2, PUC3) 내에서 인에이블되는 풀업 유닛들(PU1~PUM)의 개수는 서로 독립적일 수 있다.
예를 들어, 풀업 인에이블 코드들(PECODE1, PECODE2, PECODE3)이 각각 5비트이고, 그 값이 서로 다를 때, 풀업 회로(PUC1) 내에서 인에이블 되는 풀업 유닛(PU1~PUM)의 개수와, 풀업 회로(PUC2) 내에서 인에이블 되는 풀업 유닛(PU1~PUM)의 개수와, 풀업 회로(PUC3) 내에서 인에이블 되는 풀업 유닛(PU1~PUM)의 개수가 서로 다를 수 있다.
도 4a를 참조하면, 풀업 유닛(PU1)은 PMOS로 구성된 풀업 인에이블 트랜지스터(ETP1)와 PMOS로 구성된 풀업 데이터 트랜지스터(DTP1)와 풀업 저항(RP)을 포함할 수 있다.
풀업 인에이블 트랜지스터(ETP1)는 풀업 인에이블 코드(PECODE1)를 기초로 턴온되고, 풀업 데이터 트랜지스터(DTP1)는 풀업 데이터 신호(PDATA1)를 기초로 턴온될 수 있다.
몇몇 실시예에서, 풀업 유닛(PU1)은 도 4b에 도시된 것과 같이 풀업 저항(RP)이 생략되어 실시될 수도 있다. 그리고, 도면에서는 비록 풀업 유닛(PU1)의 구조만 도시하였으나, 도시되지 않은 다른 풀업 유닛들(PU2~PUM)도 동일한 구조를 가질 수 있다.
도 4c를 참조하면, 풀업 유닛(PU1)은 NMOS로 구성된 풀업 인에이블 트랜지스터(ETP2)와 NMOS로 구성된 풀업 데이터 트랜지스터(DTP)와 풀업 저항(RP)을 포함할 수 있다. 풀업 인에이블 트랜지스터(ETP1)는 풀업 인에이블 코드(PECODE1)를 기초로 턴온되고, 풀업 데이터 트랜지스터(DTP1)는 풀업 데이터 신호(PDATA1)를 기초로 턴온될 수 있다. 도면에서는 비록 풀업 유닛(PU1)의 구조만 도시하였으나, 도시되지 않은 다른 풀업 유닛들(PU2~PUM)도 동일한 구조를 가질 수 있다.
이와 같이, 풀업 인에이블 트랜지스터(ETP2)와 풀업 데이터 트랜지스터(DTP)가 NMOS로 구성될 경우, 예를 들어, 풀업 인에이블 코드(PECODE1)가 5비트이고 그 값이 00000인 경우, 풀업 회로(PUC1)에 포함되는 31개의 풀업 유닛(PU1~PUM)이 모두 디스에이블될 수 있다. 그리고, 예를 들어, 풀업 인에이블 코드(PECODE1)가 5비트이고, 그 값이 11111인 경우, 풀업 회로(PUC1)에 포함되는 31개의 풀업 유닛(PU1~PUM)이 모두 인에이블 될 수 있다.
몇몇 실시예에서, 풀업 유닛(PU1)은 도 4d에 도시된 것과 같이 풀업 저항(RP)이 생략되어 실시될 수 있다.
다시 도 2를 참조하면, 데이터 신호 생성기(도 1의 DSG)는 전송 드라이버(TX)가 전송하고자 하는 데이터에 따라 풀다운 데이터 신호들(NDATA1~NDATA3)을 생성할 수 있다. 몇몇 실시예에서, 전송 드라이버(TX)가 전송하고자 하는 2비트의 데이터에 대해, 데이터 신호 생성기(도 1의 DSG)는 1비트의 풀다운 데이터 신호(NDATA1)와, 1비트의 풀다운 데이터 신호(NDATA2)와 1비트의 풀다운 데이터 신호(NDATA3)를 생성할 수 있으나, 실시예가 이에 제한되는 것은 아니다.
풀다운 데이터 신호(NDATA1)는 풀다운 회로(PDC1)의 턴온 여부를 결정하고, 풀다운 데이터 신호(NDATA2)는 풀다운 회로(PDC2)의 턴온 여부를 결정하고, 풀다운 데이터 신호(NDATA3)는 풀다운 회로(PDC3)의 턴온 여부를 결정할 수 있다.
풀다운 인에이블 코드(NECODE1)는 풀다운 회로(PDC1)에 제공될 수 있다. 풀다운 인에이블 코드(NECODE1)는 풀다운 회로(PDC1) 내에서 인에이블되는 풀다운 유닛의 개수를 결정할 수 있다. 풀다운 인에이블 코드(NECODE2)는 풀다운 회로(PDC2)에 제공될 수 있다. 풀다운 인에이블 코드(NECODE2)는 풀다운 회로(PDC2) 내에서 인에이블되는 풀다운 유닛의 개수를 결정할 수 있다. 풀다운 인에이블 코드(NECODE3)는 풀다운 회로(PDC3)에 제공될 수 있다. 풀다운 인에이블 코드(NECODE3)는 풀다운 회로(PDC3) 내에서 인에이블되는 풀다운 유닛의 개수를 결정할 수 있다.
본 실시예에서, 풀다운 데이터 신호들(NDATA1~NDATA3)은 서로 독립적인 신호들이고, 풀다운 인에이블 코드들(NECODE1, NECODE2, NECODE3)은 서로 독립적인 코드들일 수 있다. 이에 따라, 풀다운 회로들(PDC1, PDC2, PDC3)이 서로 독립적으로 턴온되거나 턴오프되고, 각 풀다운 회로들(PDC1, PDC2, PDC3) 내에서 인에이블되는 풀다운 유닛의 개수가 서로 독립적일 수 있다.
도 5를 참조하면, 풀다운 회로(PDC1)는 풀다운 인에이블 코드(NECODE1)를 기초로 인에이블되는 복수의 풀다운 유닛(PD1~PDM)을 포함할 수 있다. 비록 상세하게 도시하지 않았으나, 풀다운 회로(PDC2)와 풀다운 회로(PDC3)도 동일한 구성을 가질 수 있다.
풀다운 회로(PDC1)에 포함되는 풀다운 유닛(PD1~PDM)의 개수는 풀다운 인에이블 코드(NECODE1)의 비트 수와 관련 있을 수 있다. 예를 들어, 풀다운 인에이블 코드(NECODE1)의 비트 수가 5비트인 경우, 풀다운 회로(PDC1)는 31개의 풀다운 유닛(PD1~PDM)을 포함할 수 있다. (즉, M = 31)
몇몇 실시예에서, 풀업 회로들(PUC1, PUC2, PUC3)에 포함되는 풀업 유닛들의 수와 풀다운 회로들(PDC1, PDC2, PDC3)에 포함되는 풀다운 유닛들의 수는 서로 동일할 수 있다.
풀다운 인에이블 코드(NECODE1)는 풀다운 회로(PDC1)에 포함되는 풀다운 유닛(PD1~PDM) 중 인에이블되는 풀다운 유닛(PD1~PDM)의 개수를 결정할 수 있다.
예를 들어, 풀다운 유닛이 도 6a에 도시된 것 같이 NMOS 트랜지스터로 구성되고, 풀다운 인에이블 코드(NECODE1)가 5비트이고 그 값이 00000인 경우, 풀다운 회로(PDC1)에 포함되는 31개의 풀다운 유닛(PD1~PDM)이 모두 디스에이블될 수 있다.
예를 들어, 풀다운 유닛이 도 6a에 도시된 것 같이 NMOS 트랜지스터로 구성되고, 풀다운 인에이블 코드(NECODE1)가 5비트이고, 그 값이 00010인 경우, 풀다운 회로(PDC1)에 포함되는 31개의 풀다운 유닛(PD1~PDM) 중 2개의 풀다운 유닛(예를 들어, PD1, PD2)이 인에이블되고, 나머지 풀다운 유닛(PD3~PDM)이 디스에이블될 수 있다.
예를 들어, 풀다운 유닛이 도 6a에 도시된 것 같이 NMOS 트랜지스터로 구성되고, 풀다운 인에이블 코드(NECODE1)가 5비트이고, 그 값이 11111인 경우, 풀다운 회로(PDC1)에 포함되는 31개의 풀다운 유닛(PD1~PDM)이 모두 인에이블 될 수 있다.
앞서 설명한 것과 같이, 풀다운 인에이블 코드들(NECODE1, NECODE2, NECODE3)은 서로 독립적인 코드들이므로, 풀다운 회로들(PDC1, PDC2, PDC3) 내에서 인에이블되는 풀다운 유닛들(PD1~PDM)의 개수는 서로 독립적일 수 있다.
예를 들어, 풀다운 인에이블 코드들(NECODE1, NECODE2, NECODE3)이 각각 5비트이고, 그 값이 서로 다를 때, 풀다운 회로(PDC1) 내에서 인에이블되는 풀다운 유닛(PD1~PDM)의 개수와, 풀다운 회로(PDC2) 내에서 인에이블되는 풀다운 유닛(PD1~PDM)의 개수와, 풀다운 회로(PDC3) 내에서 인에이블되는 풀다운 유닛(PD1~PDM)의 개수가 서로 다를 수 있다.
도 6a를 참조하면, 풀다운 유닛(PD1)은 풀다운 인에이블 트랜지스터(ETN)와 풀다운 데이터 트랜지스터(DTN)와 풀다운 저항(RN)을 포함할 수 있다.
도면에서는 비록 풀다운 유닛(PD1)의 구조만 도시하였으나, 도시되지 않은 다른 풀다운 유닛들(PD2~PDM)도 동일한 구조를 가질 수 있다.
풀다운 인에이블 트랜지스터(ETN)는 풀다운 인에이블 코드(NECODE1)를 기초로 턴온되고, 풀다운 데이터 트랜지스터(DTN)는 풀다운 데이터 신호(NDATA1)를 기초로 턴온될 수 있다.
몇몇 실시예에서, 풀다운 유닛(PD1)은 도 6b에 도시된 것과 같이 풀다운 저항(RN)이 생략되어 실시될 수 있다.
도 2를 참조하면, 풀업 회로들(PUC1, PUC2, PUC3)과 풀다운 회로들(PDC1, PDC2, PDC3)의 온 저항(Ron)이 조절됨에 따라, 출력 노드(OUT)에 전원 전압(VDD)으로부터 분배된 전압이 인가되고, 이 전압을 출력 패드(PAD)로 출력하여 멀티 레벨 신호가 전송 드라이버(TX)로부터 출력될 수 있다. 몇몇 실시예에서, 풀업 회로들(PUC1, PUC2, PUC3)과 풀다운 회로들(PDC1, PDC2, PDC3)의 온 저항은 ODT(On Die Termination) 저항(Rodt)과 임피던스 매칭되도록 조절될 수 있다.
풀업 회로들(PUC1, PUC2, PUC3)과 풀다운 회로들(PDC1, PDC2, PDC3)의 온 저항이 조절되어 전송 드라이버(TX)가 멀티 레벨 신호를 출력하는 동작에 대한 구체적인 설명은 후술한다.
다시 도 1을 참조하면, 호스트 장치(200)는 수신 드라이버(RX)와 신호 컨트롤러(SC)를 포함할 수 있다. 몇몇 실시예에서, 호스트 장치(200)는 도시되지 않은 더 많은 구성요소를 포함할 수 있다.
몇몇 실시예에서, 호스트 장치(200)는 애플리케이션 프로세서(Application Processor) 또는 애플리케이션 프로세서에 구비되는 다수의 모듈들 중 어느 하나일 수 있으며, 애플리케이션 프로세서는 시스템 온 칩(System on Chip, SoC)으로 구현될 수 있다. 또한, 몇몇 실시예에서, 메모리 장치(100)와 호스트 장치(200)는 시스템 온 칩으로 구현될 수 있다.
수신 드라이버(RX)는 메모리 장치(100)로부터 채널을 통해 전송된 멀티 레벨 신호(MLS)를 수신할 수 있다. 메모리 장치(100)와 호스트 장치(200)의 동작 환경에 따라, 또는 채널 환경에 따라 메모리 장치(100)의 전송 드라이버(TX)에서 전송한 멀티 레벨 신호(MLS)와 호스트 장치(200)의 수신 드라이버(RX)에서 수신한 멀티 레벨 신호(MLS) 사이에는 예를 들어, 타이밍 스큐(timing skew)와 같은 차이가 발생할 수 있다.
신호 컨트롤러(SC)는 이러한 타이밍 스큐 발생 여부를 확인할 수 있다. 몇몇 실시예에서, 신호 컨트롤러(SC)는 이러한 타이밍 스큐 발생 여부를 확인하기 위한 EOM(Eye Open Monitor)을 포함할 수 있으나, 실시예들이 이에 제한되는 것은 아니다.
신호 컨트롤러(SC)는 타이밍 스큐 발생 여부를 확인하여 피드백 신호(FS)를 생성할 수 있다.
이러한 피드백 신호(FS)는 송신 드라이버(TX)에 제공되는 데이터 신호(예를 들어, 도 2의 PDATA1~PDATA3, NDATA1~NDATA3)를 조절하는 제1 커맨드를 포함할 수 있다. 그리고, 피드백 신호(FS)는 송신 드라이버(TX)의 인에이블 코드들(예를 들어, 도 2의 PECODE1~PECODE3, NECODE1~NECODE3)을 조절하여 풀업 회로들(도 2의 PUC1~PUC3, PDC1~PDC3)의 온 저항을 조절함으로써 멀티 레벨 신호(MLS)의 신호 레벨이 조절되도록 하는 제2 커맨드를 포함할 수 있다.
신호 컨트롤러(SC)는 수신 드라이버(RX)에 수신된 멀티 레벨 신호(MLS)를 확인하고, 필요한 커맨드를 피드백 신호(FS)에 포함시켜 메모리 장치(100)에 전송할 수 있다.
예를 들어, 송신 드라이버(TX)에 제공되는 데이터 신호에 대한 조절이 필요한 경우, 신호 컨트롤러(SC)는 제1 커맨드를 포함하는 피드백 신호(FS)를 메모리 장치(100)에 전송할 수 있다. 그리고, 멀티 레벨 신호(MLS)의 신호 레벨 조절이 필요한 경우, 신호 컨트롤러(SC)는 제2 커맨드를 포함하는 피드백 신호(FS)를 메모리 장치(100)에 전송할 수 있다. 그리고, 송신 드라이버(TX)에 제공되는 데이터 신호에 대한 조절과 멀티 레벨 신호(MLS)의 신호 레벨 조절이 모두 필요한 경우, 신호 컨트롤러(SC)는 제1 커맨드와 제2 커맨드를 모두 포함하는 피드백 신호(FS)를 메모리 장치(100)에 전송할 수 있다.
즉, 본 실시예에서는 수신 드라이버(RX)를 포함하는 호스트 장치(200)에서 통신 신뢰성을 높이기 위해 수신 드라이버(RX)의 드라이빙 파라미터와 같은 수신 특성을 조절하는 것이 아니라, 피드백 신호(FS)를 통해 전송 드라이버(TX)를 포함하는 메모리 장치(100)에서 신호 특성을 조절하도록 한다.
메모리 장치(100)의 컨트롤러(CON)는 호스트 장치(200)로부터 피드백 신호(FS)를 제공받을 수 있다. 그리고, 컨트롤러(CON)는 피드백 신호(FS)에 기초하여 제1 컨트롤 신호(CON1)를 데이터 신호 생성기(DSG)에 제공하여 데이터 신호가 조절되도록 하거나, 제2 컨트롤 신호(CON2)를 송신 드라이버(TX)에 제공하여 멀티 레벨 신호(MSL)의 신호 레벨이 조절되도록 할 수 있다. 이하, 도 7을 참조하여, 이러한 컨트롤러(CON)에 대해 보다 구체적으로 설명한다.
도 7은 도 1의 컨트롤러를 도시한 도면이다.
도 7을 참조하면, 컨트롤러(CON)는 커맨드 디코더(CD), 데이터 신호 컨트롤러(DSC1), 구동 강도 컨트롤러(DSC2)를 포함할 수 있다.
커맨드 디코더(CD)는 피드백 신호(FS)를 제공받고 이를 디코딩할 수 있다. 피드백 신호(FS)에 송신 드라이버(TX)에 제공되는 데이터 신호에 대한 조절을 지시하는 제1 커맨드가 포함된 경우, 커맨드 디코더(CD)는 데이터 신호 컨트롤러(DSC1)를 제어하여 제1 컨트롤 신호(CON1)가 출력되도록 할 수 있다. 피드백 신호(FS)에 멀티 레벨 신호(MLS)의 신호 레벨 조절을 지시하는 제2 커맨드가 포함된 경우, 커맨드 디코더(CD)는 구동 강도 컨트롤러(DSC2)를 제어하여 제2 컨트롤 신호(CON2)가 출력되도록 할 수 있다. 한편, 피드백 신호(FS)에 제1 커맨드와 제2 커맨드가 모두 포함된 경우, 커맨드 디코더(CD)는 데이터 신호 컨트롤러(DSC1)를 제어하여 제1 컨트롤 신호(CON1)가 출력되도록 하고, 구동 강도 컨트롤러(DSC2)를 제어하여 제2 컨트롤 신호(CON2)가 출력되도록 할 수 있다.
이하, 도 8 내지 도 11c를 참조하여, 데이터 신호 컨트롤러(DSC1)가 데이터 신호를 제어하는 동작에 대해 설명한다.
도 1, 도 2 및 도 8을 참조하면, 데이터 신호 생성기(DSG)는 도 8에 도시된 것과 같은 풀업 데이터 신호들(PDATA1~PDATA3)과 풀다운 데이터 신호들(NDATA1~NDATA3)을 생성하여 송신 드라이버(TX)에 제공할 수 있다. 도 8은 풀업 회로들(PUC1~PUC3)이 PMOS 트랜지스터로 구성되고, 풀다운 회로들(PDC1~PDC3)이 NMOS 트랜지스터로 구성된 실시예의 풀업 데이터 신호들(PDATA1~PDATA3)과 풀다운 데이터 신호들(NDATA1~NDATA3)을 도시한 도면이다.
호스트 장치(200)로부터 제공된 피드백 신호(FS)에 데이터 신호의 슬로프(slope)를 조절하도록 지시하는 제1 커맨드가 포함된 경우, 데이터 신호 생성기(DSG)는 도 9에 도시된 것과 같이, 풀업 데이터 신호들(PDATA1~PDATA3)과 풀다운 데이터 신호들(NDATA1~NDATA3)의 슬로프를 조절할 수 있다. 이렇게 풀업 데이터 신호들(PDATA1~PDATA3)과 풀다운 데이터 신호들(NDATA1~NDATA3)의 슬로프가 조절될 경우, 호스트 장치(200)에 수신되는 멀티 레벨 신호(MLS)의 타이밍 스큐가 줄어들 수 있다.
호스트 장치(200)로부터 제공된 피드백 신호(FS)에 데이터 신호의 듀티비(duty ratio)를 조절하도록 지시하는 제1 커맨드가 포함된 경우, 데이터 신호 생성기(DSG)는 도 10에 도시된 것과 같이, 풀업 데이터 신호들(PDATA1~PDATA3)과 풀다운 데이터 신호들(NDATA1~NDATA3)의 듀티비를 조절할 수 있다.
이렇게 풀업 데이터 신호들(PDATA1~PDATA3)과 풀다운 데이터 신호들(NDATA1~NDATA3)의 듀티비가 조절될 경우, 호스트 장치(200)에 수신되는 멀티 레벨 신호(MLS)의 타이밍 스큐가 줄어들 수 있다.
호스트 장치(200)로부터 제공된 피드백 신호(FS)에 데이터 신호의 지연량(delay amount)을 조절하도록 지시하는 제1 커맨드가 포함된 경우, 데이터 신호 생성기(DSG)는 도 11a에 도시된 것과 같이, 풀업 데이터 신호들(PDATA1~PDATA3)과 풀다운 데이터 신호들(NDATA1~NDATA3)의 지연량을 조절할 수 있다.
이렇게 풀업 데이터 신호들(PDATA1~PDATA3)과 풀다운 데이터 신호들(NDATA1~NDATA3)의 지연량이 조절될 경우, 호스트 장치(200)에 수신되는 멀티 레벨 신호(MLS)의 타이밍 스큐가 줄어들 수 있다.
몇몇 실시예에서, 풀업 데이터 신호들(PDATA1~PDATA3)과 풀다운 데이터 신호들(NDATA1~NDATA3)이 서로 독립적인 신호들이므로, 데이터 신호 생성기(DSG)는 피드백 신호(FS)에 포함된 제1 커맨드에 기초하여 풀업 데이터 신호들(PDATA1~PDATA3)과 풀다운 데이터 신호들(NDATA1~NDATA3)을 서로 독립적으로 조절할 수도 있다.
예를 들어, 데이터 신호 생성기(DSG)는 도 11b에 도시된 것과 같이, 풀업 데이터 신호(PDATA1)와 풀다운 데이터 신호(NDATA1)의 듀티비는 조절하지 않고, 풀업 데이터 신호들(PDATA2, PDATA3)과 풀다운 데이터 신호들(NDATA2, NDATA3)의 듀티비를 조절할 수 있다.
또한, 예를 들어, 데이터 신호 생성기(DSG)는 도 11c에 도시된 것과 같이, 풀업 데이터 신호(PDATA1)와 풀다운 데이터 신호(NDATA1)에 대해서는 슬로프를 조절하고, 풀업 데이터 신호(PDATA2)와 풀다운 데이터 신호(NDATA2)에 대해서는 듀티비를 조절하고, 풀업 데이터 신호(PDATA3)와 풀다운 데이터 신호(NDATA3)에 대해서는 지연량을 조절할 수도 있다. 즉, 데이터 신호 컨트롤러(DSC1)와 데이터 신호 생성기(DSG)는 피드백 신호(FS)에 포함된 제1 커맨드에 기초하여, 예시되지 않은 다양한 방법으로 풀업 데이터 신호들(PDATA1~PDATA3)과 풀다운 데이터 신호들(NDATA1~NDATA3)을 서로 독립적으로 조절할 수 있다.
이하, 도 12 내지 도 17을 참조하여, 구동 강도 컨트롤러(SDC2)가 멀티 레벨 신호의 신호 레벨을 제어하는 동작에 대해 설명한다. 먼저, 도 12 및 도 13을 참조하여, 전송 드라이버(TX)가 멀티 레벨 신호를 생성하는 동작에 대해 설명한다.
도 12 및 도 13은 도 1의 전송 드라이버가 멀티 레벨 신호를 생성하는 동작을 설명하기 위한 도면들이다.
도 2, 도 12 및 도 13을 참조하면, 앞서 설명한 것과 같이 전송 드라이버(TX)는 풀업 회로들(PUC1~PUC3)이 각각 풀업 데이터 신호들(PDATA1~PDATA3)에 의해 턴온 또는 턴오프되고, 풀다운 회로들(PDC1~PDC3)이 각각 풀다운 데이터 신호들(NDATA1~NDATA3)에 의해 턴온 또는 턴오프됨으로써 멀티 레벨 신호(MLS)를 출력할 수 있다.
이하에서는 동작 설명을 위해, 도 2의 풀업 회로들(PUC1, PUC2, PUC3) 각각이 인에이블(이하, 턴온과 같은 개념으로 설명한다) 되었을 때의 저항이 120 Ω, 풀다운 회로들(PDC1, PDC2, PDC3) 각각이 인에이블 되었을 때의 저항이 120 Ω인 것을 예로 들어 설명한다. 그리고, 접지 터미네이션(GND termination) 방식의 ODT 저항(Rodt)이 40 Ω인 것을 예로 들어 설명한다.
호스트 장치(200)의 수신 드라이버(RX)에서 수신하는 멀티 레벨 신호(MLS)의 신호 레벨은 아래 수학식1과 같이 표현될 수 있다.
<수학식1>
Signal level = ( Rpd ∥ Rodt / (Rpu + (Rpd ∥ Rodt))) * Vdd
여기서, Rpd는 풀다운 회로의 저항 값이고, Rpu는 풀업 회로의 저항 값이고, Rodt는 ODT 저항의 저항 값이다. Rpd ∥ Rodt는 Rpd와 Rodt의 병렬 저항 값이다.
도 2, 도 12 및 도 13을 참조하면, 송신 드라이버(TX)에서 출력하는 데이터가 11일 때, 데이터 생성기(DSG)는 풀업 회로들(PUC1, PUC2, PUC3)을 모두 인에이블하는 풀업 데이터 신호들(PDATA1~PDATA3)과 풀다운 회로들(PDC1, PDC2, PDC3)을 모두 디스에이블하는 풀다운 데이터 신호들(NDATA1~NDATA3)을 생성한다.
이에 따라, 풀업 회로들(PUC1, PUC2, PUC3)이 모두 인에이블되고, 풀다운 회로들(PDC1, PDC2, PDC3)이 모두 디스에이블된다. 이에 따라, Rpu 값은 40Ω, Rpd ∥ Rodt는 40Ω이 되어, 멀티 레벨 신호(MLS)가 40Ω / ( 40Ω + 40Ω ) * Vdd = 1/2 * Vdd의 신호 레벨(LV1)을 갖는다.
다음, 송신 드라이버(TX)에서 출력하는 데이터가 10일 때, 데이터 생성기(DSG)는 풀업 회로들(PUC2, PUC3)과 풀다운 회로(PDC3)를 인에이블하고, 풀업 회로(PUC1)와 풀다운 회로들(PDC1, PDC2)을 디스에이블하는 풀업 데이터 신호들(PDATA1~PDATA3)과 풀다운 데이터 신호들(NDATA1~NDATA3)을 생성한다.
이에 따라, 풀업 회로들(PUC2, PUC3)과 풀다운 회로(PDC3)가 인에이블되고, 풀업 회로(PUC1)와 풀다운 회로들(PDC1, PDC2)이 디스에이블된다. 이에 따라, Rpu 값은 60Ω, Rpd ∥ Rodt는 30Ω이 되어, 멀티 레벨 신호(MLS)가 30Ω / ( 60Ω + 30Ω ) * Vdd = 1/3 * Vdd의 신호 레벨(LV2)을 갖는다.
다음, 송신 드라이버(TX)에서 출력하는 데이터가 01일 때, 데이터 생성기(DSG)는 풀업 회로(PUC3)와 풀다운 회로들(PDC2, PDC3)가 인에이블되고, 풀업 회로들(PUC1, PUC2)와 풀다운 회로(PDC1)가 디스에이블되는 풀업 데이터 신호들(PDATA1~PDATA3)과 풀다운 데이터 신호들(NDATA1~NDATA3)을 생성한다.
이에 따라, 풀업 회로(PUC3)와 풀다운 회로들(PDC2, PDC3)가 인에이블되고, 풀업 회로들(PUC1, PUC2)와 풀다운 회로(PDC1)가 디스에이블된다. 이에 따라, Rpu 값은 120Ω, Rpd ∥ Rodt는 24Ω이 되어, 멀티 레벨 신호(MLS)가 24Ω / ( 120Ω + 24Ω ) * Vdd = 1/6 * Vdd의 신호 레벨(LV3)을 갖는다.
다음, 송신 드라이버(TX)에서 출력하는 데이터가 00일 때, 데이터 생성기(DSG)는 풀업 회로들(PUC1, PUC2, PUC3)이 모두 디스에이블되고, 풀다운 회로들(PDC1, PDC2, PDC3)이 모두 인에이블되는 풀업 데이터 신호들(PDATA1~PDATA3)과 풀다운 데이터 신호들(NDATA1~NDATA3)을 생성한다.
이에 따라, 풀업 회로들(PUC1, PUC2, PUC3)이 모두 디스에이블되고, 풀다운 회로들(PDC1, PDC2, PDC3)이 모두 인에이블된다. 풀업 회로들(PUC1, PUC2, PUC3)이 모두 디스에이블되어 멀티 레벨 신호(MLS)가 0 * Vdd의 신호 레벨(LV4)을 갖는다.
이처럼 멀티 레벨 신호(MLS)의 신호 레벨은 풀업 회로들(PUC1, PUC2, PUC3)과 풀다운 회로들(PDC1, PDC2, PDC3)의 온 저항(on resistance)에 의해 결정될 수 있다.
구동 강도 컨트롤러(SDC2)는 풀업 회로들(PUC1, PUC2, PUC3)과 풀다운 회로들(PDC1, PDC2, PDC3)의 온 저항을 추가로 조절하여 멀티 레벨 신호(MLS)의 신호 레벨을 조절할 수 있다.
도 14를 참조하면, 앞서 설명한 것과 같이, 각 풀업 회로들(PUC1, PUC2, PUC3)은 복수의 풀업 유닛들(PU)을 포함할 수 있다. 그리고, 풀업 인에이블 코드들(PECODE1, PECODE2, PECODE3)은 각 풀업 회로들(PUC1, PUC2, PUC3)에 포함된 풀업 유닛들(PU) 중 인에이블되는 풀업 유닛들(PU)의 개수를 결정할 수 있다. 몇몇 실시예에서, 구동 강도 컨트롤러(SDC2)는 풀업 인에이블 코드들(PECODE1, PECODE2, PECODE3)을 조절하여 각 풀업 회로들(PUC1, PUC2, PUC3) 내에서 인이에블되는 풀업 유닛들(PU)의 개수를 조절함으로써, 각 풀업 회로들(PUC1, PUC2, PUC3)의 온 저항을 추가로 조절할 수 있다.
몇몇 실시예에서, 구동 강도 컨트롤러(SDC2)는 도 14에 도시된 것과 같이, 풀업 인에이블 코드들(PECODE1, PECODE2, PECODE3)을 조절하여 각 풀업 회로들(PUC1, PUC2, PUC3) 내에서 인이에블되는 풀업 유닛들(PU)의 개수가 더 많아지도록 할 수 있다. 이 경우, 각 풀업 회로들(PUC1, PUC2, PUC3)의 온 저항이 감소하고, 이에 따라, 멀티 레벨 신호(MLS)의 신호 레벨을 증가시킬 수 있다.
몇몇 실시예에서, 구동 강도 컨트롤러(SDC2)는 도 15에 도시된 것과 같이, 풀업 인에이블 코드들(PECODE1, PECODE2, PECODE3)을 조절하여 각 풀업 회로들(PUC1, PUC2, PUC3) 내에서 인이에블되는 풀업 유닛들(PU)의 개수가 더 적어지도록 할 수 있다. 이 경우, 각 풀업 회로들(PUC1, PUC2, PUC3)의 온 저항이 증가하고, 이에 따라, 멀티 레벨 신호(MLS)의 신호 레벨이 감소될 수 있다.
몇몇 실시예에서, 구동 강도 컨트롤러(SDC2)는 도 16에 도시된 것과 같이, 풀업 인에이블 코드들(PECODE1, PECODE2, PECODE3)을 조절하여 각 풀업 회로들(PUC1, PUC2, PUC3) 내에서 인이에블되는 풀업 유닛들(PU)의 개수를 서로 다르게 조절할 수도 있다. 예를 들어, 구동 강도 컨트롤러(SDC2)는 풀업 회로(PUC1) 내에서 인에이블되는 풀업 유닛(PU)의 개수가 풀업 회로(PUC2) 내에서 인에이블되는 풀업 유닛(PU)의 개수보다 많고, 풀업 회로(PUC3) 내에서 인에이블되는 풀업 유닛(PU)의 개수는 변동이 없도록 조절할 수 있다. 이 경우, 풀업 회로들(PUC1, PUC2)의 온 저항이 감소함에 따라, 멀티 레벨 신호(MLS)의 신호 레벨을 증가시킬 수 있다.
몇몇 실시예에서, 구동 강도 컨트롤러(SDC2)는 도 17에 도시된 것과 같이, 풀업 인에이블 코드들(PECODE1, PECODE2, PECODE3)을 조절하여 각 풀업 회로들(PUC1, PUC2, PUC3) 내에서 인이에블되는 풀업 유닛들(PU)의 개수를 서로 다르게 조절할 수도 있다. 예를 들어, 구동 강도 컨트롤러(SDC2)는 풀업 회로(PUC2) 내에서 인에이블되는 풀업 유닛(PU)의 개수가 풀업 회로(PUC3) 내에서 인에이블되는 풀업 유닛(PU)의 개수보다 적고, 풀업 회로(PUC1) 내에서 인에이블되는 풀업 유닛(PU)의 개수는 변동이 없도록 조절할 수 있다. 이 경우, 풀업 회로들(PUC2, PUC3)의 온 저항이 증가함에 따라, 멀티 레벨 신호(MLS)의 신호 레벨을 감소시킬 수 있다.
도 14 내지 도 17에서는 구동 강도 컨트롤러(SDC2)가 풀업 회로들(PUC1, PUC2, PUC3)의 온 저항을 조절하는 예시만 설명하였으나, 구동 강도 컨트롤러(SDC2)는 풀다운 인에이블 코드들(NECODE1, NECODE2, NECODE3)을 조절하여 유사하게 풀다운 회로들(PDC1, PDC2, PDC3)의 온 저항을 조절하여 멀티 레벨 신호(MLS)의 신호 레벨을 조절할 수 있다.
이하, 도 18 내지 도 21을 참조하여, 몇몇 실시예에 따른 메모리 시스템의 동작을 설명한다.
도 18은 몇몇 실시예에 따른 메모리 시스템의 동작을 도시한 순서도이다. 도 19 내지 도 21은 몇몇 실시예에 따른 메모리 시스템의 동작을 설명하기 위한 도면들이다.
도 1 및 도 18을 참조하면, 메모리 장치(100)가 초기화 된다(S100). 예를 들어, 메모리 장치(100)가 처음 구동을 시작하거나, 메모리 장치(100)에 슬립 모드에서 깨어나거나, 메모리 장치(100)에 파워가 공급되기 시작하는 경우, 초기화가 진행될 수 있다.
다음, 메모리 장치(100)가 멀티 레벨 신호(MLS)를 호스트 장치(200)에 전송한다(S110).
멀티 레벨 신호(MLS)를 수신한 호스트 장치(200)는 비트 에러율(BER; Bit Error Rate)이 임계 값 이하인지 확인한다(S120).
만약, 비트 에러율이 임계 값 이하라면(S120-Y), 메모리 장치(100)에 OK 응답 신호를 전송한다(S130).
이와 같이, 비트 에러율이 임계 값 이하인 경우는, 도 19에 도시된 것과 같이, 송신 드라이버(TX)에서 전송한 멀티 레벨 신호와 수신 드라이버(RX)에서 수신한 멀티 레벨 신호 간에 타이밍 스큐(도 20의 TSK)가 존재하지 않는 경우이다. 이 경우, 수신 드라이버(RX)에서의 센싱 마진(SM)이 충분하므로, 비트 에러율이 높지 않다.
다시 도 18을 참조하면, 만약, 비트 에러율이 임계 값 이상이라면(S120-N), 호스트 장치(200)는 앞서 설명한 동작을 통해 피드백 신호를 생성한다(S140).
이와 같이, 비트 에러율이 임계 값 이상인 경우는, 도 20에 도시된 것과 같이, 송신 드라이버(TX)에서 전송한 멀티 레벨 신호와 달리 수신 드라이버(RX)에서 수신한 멀티 레벨 신호에서 각 신호 레벨 간에 타이밍 스큐(TSK)가 존재하는 경우이다. 이 경우, 수신 드라이버(RX)에서의 각 신호 레벨의 최적 샘플링 타이밍이 상이하므로, 특정 샘플링 타이밍에서 특정 신호 레벨에 대한 센싱 마진(SM)이 충분하지 못하여 비트 에러율이 높을 수 있다.
다시 도 18을 참조하면, 호스트 장치(200)가 피드백 신호를 메모리 장치에 전송한다(S150).
앞서 설명한 것과 같이, 피드백 신호는 송신 드라이버(TX)에서 출력하는 멀티 레벨 신호를 조절하기 위한 제1 커맨드와 제2 커맨드를 포함할 수 있다. 피드백 신호를 제공받는 메모리 장치(100)는 앞서 설명한 조절을 수행하여, 도 21에 도시된 것과 같이 타이밍 스큐(TSK)를 보상하기 위한 멀티 레벨 신호를 출력할 수 있다. 이에 따라, 수신 드라이버(RX)에는 비트 에러율이 낮은 멀티 레벨 신호가 수신될 수 있다.
이와 같이 본 실시예에 따른 메모리 시스템에서는, 수신 드라이버(RX)를 포함하는 호스트 장치(200)에서 통신 신뢰성을 높이기 위해 수신 드라이버(RX)의 드라이빙 파라미터와 같은 수신 특성을 조절하는 것이 아니라, 피드백 신호(FS)를 통해 전송 드라이버(TX)를 포함하는 메모리 장치(100)에서 신호 특성을 조절하도록 한다. 그리고, 수신 드라이버(RX)에서의 타이밍 스큐를 보상하기 위해서, 송신 드라이버(TX)에 제공되는 데이터 신호를 조절할 뿐만 아니라, 송신 드라이버(TX)에 포함된 풀업 회로와 풀다운 회로의 온 저항을 추가로 조절하여 멀티 레벨 신호의 신호 레벨도 조절한다. 따라서, 메모리 장치(100)와 호스트 장치(200) 간의 신뢰성 있는 신호 통신이 가능하다.
도 22a는 다른 몇몇 실시예에 따른 전송 드라이버를 도시한 도면이다. 도 22b 및 22c는 도 22a의 전송 드라이버의 동작을 설명하기 위한 도면들이다.
이하에서는 앞서 설명한 실시예와 중복된 설명은 생략하고 차이점을 위주로 설명한다.
도 22a를 참조하면, 본 실시예에 따른 전송 드라이버(TX)는 전원 전압 터미네이션(VDD termination) 방식의 ODT 저항(Rodt)을 포함할 수 있다.
이 경우, 도 22b 내지 도 22c에 도시된 것과 같이, 송신 드라이버(TX)에서 출력하는 데이터가 데이터가 11일 때, 데이터 생성기(DSG)는 풀업 회로들(PUC1, PUC2, PUC3)을 모두 인에이블하는 풀업 데이터 신호들(PDATA1~PDATA3)과 풀다운 회로들(PDC1, PDC2, PDC3)을 모두 디스에이블하는 풀다운 데이터 신호들(NDATA1~NDATA3)을 생성한다.
이에 따라, 풀업 회로들(PUC1, PUC2, PUC3)이 모두 인에이블되고, 풀다운 회로들(PDC1, PDC2, PDC3)이 모두 디스에이블어, 멀티 레벨 신호(MLS)가 1 * Vdd의 신호 레벨을 가질 수 있다.
다음, 송신 드라이버(TX)에서 출력하는 데이터가 10일 때, 데이터 생성기(DSG)는 풀업 회로들(PUC2, PUC3)과 풀다운 회로(PDC3)를 인에이블하고, 풀업 회로(PUC1)와 풀다운 회로들(PDC1, PDC2)을 디스에이블하는 풀업 데이터 신호들(PDATA1~PDATA3)과 풀다운 데이터 신호들(NDATA1~NDATA3)을 생성한다.
이에 따라, 풀업 회로들(PUC2, PUC3)과 풀다운 회로(PDC3)가 인에이블되고, 풀업 회로(PUC1)와 풀다운 회로들(PDC1, PDC2)이 디스에이블 되어, 멀티 레벨 신호(MLS)가 5/6 * Vdd의 신호 레벨을 가질 수 있다.
다음, 송신 드라이버(TX)에서 출력하는 데이터가 01일 때, 데이터 생성기(DSG)는 풀업 회로(PUC3)와 풀다운 회로들(PDC2, PDC3)이 인에이블되고, 풀업 회로들(PUC1, PUC2)와 풀다운 회로(PDC1)가 디스에이블되는 풀업 데이터 신호들(PDATA1~PDATA3)과 풀다운 데이터 신호들(NDATA1~NDATA3)을 생성한다.
이에 따라, 풀업 회로 (PUC3)와 풀다운 회로들(PDC2, PDC3)이 인에이블되고, 풀업 회로들(PUC1, PUC2)와 풀다운 회로(PDC1)가 디스에이블 되어, 멀티 레벨 신호(MLS)가 4/6 * Vdd의 신호 레벨을 가질 수 있다.
다음, 송신 드라이버(TX)에서 출력하는 데이터가 00일 때, 데이터 생성기(DSG)는 풀업 회로들(PUC1, PUC2, PUC3)이 모두 디스에이블되고, 풀다운 회로들(PDC1, PDC2, PDC3)이 모두 인에이블되는 풀업 데이터 신호들(PDATA1~PDATA3)과 풀다운 데이터 신호들(NDATA1~NDATA3)을 생성한다.
이에 따라, 풀업 회로들(PUC1, PUC2, PUC3)이 모두 디스에이블되고, 풀다운 회로들(PDC1, PDC2, PDC3)이 모두 인에이블되어 멀티 레벨 신호(MLS)가 3/6 * Vdd의 신호 레벨을 가질 수 있다.
본 기술 분야의 통상의 지식을 가진 사람이라면 이러한 풀업 회로와 풀다운 회로의 동작을 이해할 수 있을 것인 바, 중복된 자세한 설명은 생략한다.
도 22d는 다른 몇몇 실시예에 따른 전송 드라이버를 도시한 도면이다. 이하에서도 앞서 설명한 실시예와 중복된 설명은 생략하고 차이점을 위주로 설명한다.
도 22d를 참조하면, 본 실시예에 따른 전송 드라이버(TX)는 풀업 회로들(PUC11, PUC12)과 풀다운 회로들(PDC11, PDC12)을 포함할 수 있다.
앞서 도 2에 도시된 실시예에서는, 전송 드라이버(TX)가 각각에 독립적인 풀업 인에이블 코드들이 인가되는 3개의 풀업 회로와 각각에 독립적인 풀다운 인에이블 코드들이 인가되는 3개의 풀다운 회로를 포함하였으나, 본 실시예에서는, 풀업 회로(PUC11)에는 풀업 데이터 신호(PDATA1)와 풀업 인에이블 코드(PECODE11)가 인가되고, 풀업 회로(PUC12)에는 풀업 데이터 신호(PDATA2)와 풀업 인에이블 코드(PECODE12)가 인가되고, 풀다운 회로(PDC11)에는 풀다운 데이터 신호(NDATA1)와 풀다운 인에이블 코드(NECODE11)가 인가되고, 풀다운 회로(PDC12)에는 풀다운 데이터 신호(NDATA2)와 풀다운 인에이블 코드(NECODE12)가 인가된다.
앞서 설명한 실시예에서는, 전송 드라이버(TX)가 예를 들어, 11과 같은 2비트의 데이터 신호를 전송할 때, 데이터 신호 생성기(DSG)가 각각 독립적인 3개의 풀업 데이터 신호들(PDATA1~PDATA3)과 3개의 풀다운 데이터 신호들(NDATA1~NDATA3)을 생성하였으나, 본 실시예에서는 전송 드라이버(TX)가 예를 들어, 11과 같은 2비트의 데이터 신호를 전송할 때, 데이터 신호 생성기(DSG)가 각각 독립적인 2개의 풀업 데이터 신호들(PDATA1, PDATA2)과 2개의 풀다운 데이터 신호들(NDATA1, NDATA2)을 생성한다.
몇몇 실시예에서, 풀업 데이터 신호(PDATA1), 풀다운 데이터 신호(NDATA1), 풀업 인에이블 코드(PECODE11), 및 풀다운 인에이블 코드(NECODE11)는 MSB(Most Significant Bit)이고, 풀업 데이터 신호(PDATA2), 풀다운 데이터 신호(NDATA2), 풀업 인에이블 코드(PECODE12) 및 풀다운 인에이블 코드(NECODE12)는 LSB(Least Significant Bit)일 수 있으나, 실시예들이 이에 제한되는 것은 아니다.
도 23은 다른 몇몇 실시예에 따른 메모리 장치를 도시한 도면이다.
도 23은 앞서 설명한 메모리 장치(도 1의 100)가 DRAM인 경우를 예시한 도면이다.
도 23을 참조하면, 메모리 장치(300)는 제어 로직(310), 어드레스 레지스터(320), 뱅크 제어 로직(330), 로우 어드레스 멀티플렉서(340), 리프레시 어드레스 생성기(345), 컬럼 어드레스 래치(350), 로우 디코더(360), 컬럼 디코더(370), 센스 앰프부(385), 입출력 게이팅 회로(390), 메모리 셀 어레이(MCA), ECC 엔진(ECE), 데이터 입출력 버퍼(395)를 포함할 수 있다.
메모리 셀 어레이(MCA)는 데이터를 저장하기 위한 복수의 메모리 셀(MC)들을 포함할 수 있다. 예를 들어, 메모리 셀 어레이(MCA)는 제1 내지 제8 뱅크 어레이들(BA1~BA8)을 포함할 수 있다. 제1 내지 제8 뱅크 어레이들(BA1~BA8) 각각은 복수의 워드라인(WL)들과 복수의 비트라인(BTL)들 및 워드라인(WL)들과 비트라인(BTL)들이 교차하는 영역에 배치되는 복수의 메모리 셀(MC)들을 포함할 수 있다.
메모리 셀 어레이(MCA)는 제1 내지 제8 뱅크 어레이들(BA1~BA8)을 포함할 수 있다. 도 23에서는 8개의 뱅크 어레이들(BA1~BA8)을 포함하는 메모리 장치(300)를 도시하였으나, 실시예들이 이에 제한되는 것은 아니고, 메모리 장치(300)는 임의의 개수의 뱅크 어레이들을 포함할 수 있다.
제어 로직(310)은 메모리 장치(300)의 동작을 제어할 수 있다. 예를 들어, 제어 로직(310)은 메모리 장치(300)가 데이터를 라이트하는 동작 또는 데이터를 리드하는 동작을 수행하도록 제어 신호들(CTL1, CTL2)을 생성할 수 있다. 제어 로직(310)은 외부 호스트 장치로부터 수신된 커맨드(CMD)를 디코딩하는 커맨드 디코더(311), 메모리 장치(300)의 동작 모드를 설정하기 위한 모드 레지스터(312)를 포함할 수 있다.
예를 들어, 커맨드 디코더(311)는 라이트 인에이블 신호, 로우 어드레스 스트로브 신호, 컬럼 어드레스 스트로브 신호, 칩 선택 신호 등을 디코딩하여 커맨드(CMD)에 대응하는 제어 신호들을 생성할 수 있다. 제어 로직(310)은 동기 방식으로 메모리 장치(300)를 구동하기 위한 클럭 신호 및 클럭 인에이블 신호를 수신할 수도 있다.
또한, 제어 로직(310)은 리프레시 커맨드에 응답하여 리프레시 어드레스 생성기(345)가 리프레시 로우 어드레스(REF_ADDR)를 생성하도록 제어할 수 있다.
어드레스 레지스터(320)는 외부 호스트 장치로부터 어드레스(ADDR)를 수신할 수 있다. 예를 들어, 어드레스 레지스터(320)는 뱅크 어드레스(BANK_ADDR), 로우 어드레스 (ROW_ADDR), 컬럼 어드레스(COL_ADDR)를 포함하는 어드레스(ADDR)를 수신할 수 있다. 어드레스 레지스터(320)는 수신된 뱅크 어드레스(BANK_ADDR)를 뱅크 제어 로직(330)에 제공할 수 있고, 수신된 로우 어드레스(ROW_ADDR)를 로우 어드레스 멀티플렉서(340)에 제공할 수 있고, 수신된 컬럼 어드레스(COL_ADDR)를 컬럼 어드레스 래치(350)에 제공할 수 있다.
뱅크 제어 로직(330)은 어드레스 레지스터(320)로부터 수신된 뱅크 어드레스(BANK_ADDR)에 응답하여 뱅크 제어 신호들을 생성할 수 있다. 이러한 뱅크 제어 신호들에 응답하여, 제1 내지 제8 뱅크 로우 디코더들(360a~360h) 중 뱅크 어드레스(BANK_ADDR)에 대응하는 뱅크 로우 디코더가 활성화되고 제1 내지 제8 뱅크 컬럼 디코더들(370a~370h) 중 뱅크 어드레스(BANK_ADDR)에 대응하는 뱅크 컬럼 디코더가 활성화될 수 있다.
로우 어드레스 멀티플렉서(340)는 어드레스 레지스터(320)로부터 로우 어드레스(ROW_ADDR)를 수신하고, 리프레시 어드레스 생성기(345)로부터 리프레시 로우 어드레스(REF_ADDR)를 수신할 수 있다. 로우 어드레스 멀티플렉서(340)는 어드레스 레지스터(320)로부터 수신된 로우 어드레스(ROW_ADDR) 또는 리프레시 어드레스 생성기(345)로부터 수신된 리프레시 로우 어드레스(REF_ADDR)를 로우 어드레스(RA)로서 선택적으로 출력할 수 있다. 로우 어드레스 멀티플렉서(340)로부터 출력된 로우 어드레스(RA)는 제1 내지 제8 뱅크 로우 디코더들(360a~360h)에 각각 인가될 수 있다.
리프레시 어드레스 생성기(345)는 메모리 셀들을 리프레시하기 위한 리프레시 로우 어드레스(REF_ADDR)를 생성할 수 있다. 리프레시 어드레스 생성기(345)는 리프레시 로우 어드레스(REF_ADDR)를 로우 어드레스 멀티플렉서(340)에 제공할 수 있다. 이에 따라, 리프레시 로우 어드레스(REF_ADDR)에 대응하는 워드 라인에 배치되는 메모리 셀들이 리프레시될 수 있다.
컬럼 어드레스 래치(350)는 어드레스 레지스터(320)로부터 컬럼 어드레스(COL_ADDR)를 수신하고, 수신된 컬럼 어드레스(COL_ADDR)를 일시적으로 저장할 수 있다. 또한, 컬럼 어드레스 래치(350)는, 버스트 모드에서, 수신된 컬럼 어드레스(COL_ADDR)를 점진적으로 증가시킬 수 있다. 컬럼 어드레스 래치(350)는 일시적으로 저장된 또는 점진적으로 증가된 컬럼 어드레스(COL_ADDR)를 제1 내지 제8 뱅크 컬럼 디코더들(370a~370h)에 각각 인가할 수 있다.
로우 디코더(360)는 제1 내지 제8 뱅크 어레이들(BA1~BA8)에 각각 연결된 제1 내지 제8 뱅크 로우 디코더들(360a~360h)을 포함할 수 있다. 컬럼 디코더(370)는 제1 내지 제8 뱅크 어레이들(BA1~BA8)에 각각 연결된 제1 내지 제8 뱅크 컬럼 디코더들(370a~370h)을 포함할 수 있다. 센스 앰프부(385)는 제1 내지 제8 뱅크 어레이들(BA1~BA8)에 각각 연결된 제1 내지 제8 뱅크 센스 앰프들(385a~385h)을 포함할 수 있다.
제1 내지 제8 뱅크 로우 디코더들(360a~360h) 중 뱅크 제어 로직(330)에 의해 활성화된 뱅크 로우 디코더는 로우 어드레스 멀티플렉서(340)로부터 출력된 로우 어드레스(RA)를 디코딩하여 로우 어드레스(RA)에 대응하는 워드 라인을 활성화할 수 있다. 예를 들어, 활성화된 뱅크 로우 디코더는 로우 어드레스(RA)에 대응하는 워드 라인에 워드 라인 구동 전압을 인가할 수 있다.
제1 내지 제8 뱅크 컬럼 디코더들(370a~370h) 중 뱅크 제어 로직(330)에 의해 활성화된 뱅크 컬럼 디코더는 입출력 게이팅 회로(390)를 통하여 뱅크 어드레스(BANK_ADDR) 및 컬럼 어드레스(COL_ADDR)에 대응하는 뱅크 센스 앰프(385a~385h)를 활성화할 수 있다.
입출력 게이팅 회로(390)는 입출력 데이터를 게이팅하는 회로들과 함께, 입력 데이터 마스크 로직, 제1 내지 제8 뱅크 어레이들(BA1~BA8)로부터 출력된 데이터를 저장하기 위한 리드 데이터 래치들, 제1 내지 제8 뱅크 어레이들(BA1~BA8)에 데이터를 라이트하기 위한 라이트 드라이버들을 포함할 수 있다.
제1 내지 제8 뱅크 어레이들(BA1~BA8) 중 하나의 뱅크 어레이에서 리드될 코드워드(CW)는 하나의 뱅크 어레이에 대응하는 뱅크 센스 앰프(385a~385h)에 의해 감지되고, 리드 데이터 래치들에 저장될 수 있다.
ECC 엔진(ECE)은 리드 데이터 래치들에 저장된 코드워드(CW)에 대하여 ECC 디코딩을 수행할 수 있다. ECC 엔진(ECE)은 코드워드(CW)의 데이터에서 에러가 검출되는 경우, 정정된 데이터 신호(DQ)를 데이터 입출력 버퍼(395)를 통하여 외부의 메모리 컨트롤러에 제공할 수 있다.
제1 내지 제8 뱅크 어레이들(BA1~BA8) 중 하나의 뱅크 어레이에 라이트될 데이터 신호(DQ)는 ECC 엔진(ECE)에 제공되고, ECC 엔진(ECE)은 데이터 신호(DQ)에 기초하여 패리티 비트들을 생성하고, 데이터 신호(DQ)와 패리티 비트들을 입출력 게이팅 회로(390)에 제공할 수 있다. 입출력 게이팅 회로(390)는 라이트 드라이버들을 통하여 데이터 신호(DQ)와 패리티 비트들을 하나의 뱅크 어레이의 서브 페이지에 기입할 수 있다.
데이터 입출력 버퍼(395)는 외부(예를 들어, 호스트)로부터 데이터 신호(DQ)와 데이터 스트로브 신호(DQS)를 제공받거나 외부로 데이터 신호(DQ)와 데이터 스트로브 신호(DQS)를 전송할 수 있다.
몇몇 실시예에서, 데이터 입출력 버퍼(395)는 데이터 신호(DQ)를 제공받거나 전송하는 제1 데이터 입출력 버퍼(예를 들어, 데이터 버퍼)와 데이터 스트로브 신호(DQS)를 제공받거나 전송하는 제2 데이터 입출력 버퍼(예를 들어, 데이터 스트로브 버퍼)를 포함할 수 있다.
데이터 입출력 버퍼(395)는 라이트 동작에서 데이터 신호(DQ)(예를 들어, 라이트 데이터)를 버퍼링(buffering) 또는 드라이빙(driving)하여 ECC 엔진(ECE)에 제공할 수 있고, 리드 동작에서는 ECC 엔진(ECE)으로부터 제공되는 데이터 신호(DQ)(예를 들어, 리드 데이터)를 버퍼링하거나 드라이빙하여 외부 호스트 장치에 제공할 수 있다.
몇몇 실시예에서, 앞서 설명한 송신 드라이버(도 1의 TX)는 예를 들어, 데이터 입출력 버퍼(395)에 포함될 수 있다. 그리고, 제어 로직(310)은 앞서 설명한 컨트롤러(도 1의 CON)의 동작을 수행할 수 있다.
도 24는 다른 몇몇 실시예에 따른 메모리 시스템을 도시한 도면이다.
이하에서도 앞서 설명한 실시예들과 차이점을 위주로 설명한다.
도 24를 참조하면, 본 실시예에서는 호스트 장치(400)가 데이터 신호 생성기(DSG), 전송 드라이버(TX), 컨트롤러(CON)를 포함할 수 있다. 그리고, 메모리 장치(500)가 수신 드라이버(RX)와 신호 컨트롤러(SC)를 포함할 수 있다.
도 25는 몇몇 실시예에 따른 신호 송수신 시스템을 도시한 도면이다.
이하에서도 앞서 설명한 실시예들과 차이점을 위주로 설명한다.
도 25를 참조하면, 데이터 전송 장치(600)는 데이터 신호 생성기(DSG), 전송 드라이버(TX), 컨트롤러(CON)를 포함할 수 있다. 그리고, 데이터 수신 장치(700)는 수신 드라이버(RX)와 신호 컨트롤러(SC)를 포함할 수 있다.
데이터 전송 장치(600)는 데이터 수신 장치(700)에 데이터 신호를 전송하는 다양한 종류의 전자 장치를 포함할 수 있다. 그리고, 데이터 수신 장치(700)는 데이터 전송 장치(600)로부터 데이터 신호를 수신하는 다양한 종류의 전자 장치를 포함할 수 있다. 채널은 유선 채널과 무선 채널을 모두 포함할 수 있다.
도 26은 몇몇 실시예에 따른 메모리 시스템이 탑재된 차량(vehicle)을 도시한 도면이다.
차량(700)은 복수 개의 전자 제어 장치(ECU: Electronic Control Unit, 710), 및 저장 장치(720)를 포함할 수 있다.
복수 개의 전자 제어 장치(710)의 각 전자 제어 장치는 차량(700)에 마련된 복수 개의 장치 중 적어도 하나의 장치에 전기적, 기계적, 통신적으로 연결되고, 어느 하나의 기능 수행 명령에 기초하여 적어도 하나의 장치의 동작을 제어할 수 있다.
여기서, 복수 개의 장치는 적어도 하나의 기능 수행을 위해 요구되는 정보를 획득하는 획득 장치(730)와, 적어도 하나의 기능을 수행하는 드라이빙 유닛(740)을 포함할 수 있다.
예를 들어, 획득 장치(730)는 각종 검출부 및 영상 획득부를 포함할 수 있고, 드라이빙 유닛(740)은 공조 장치의 팬 및 압축기, 통풍장치의 팬, 동력 장치의 엔진 및 모터, 조향 장치의 모터, 제동 장치의 모터 및 밸브, 도어나 테일 게이트의 개폐 장치 등을 포함할 수 있다.
복수 개의 전자 제어 장치(710)는, 예를 들어, 이더넷, 저전압 차동 신호(LVDS) 통신, LIN(Local Interconnect Network) 통신 중 적어도 하나를 이용하여 획득 장치(730) 및 드라이빙 유닛(740)과 통신을 수행할 수 있다.
복수 개의 전자 제어 장치(710)는, 획득 장치(730)를 통해 획득된 정보에 기초하여 기능 수행의 필요 여부를 판단하고 기능 수행이 필요하다고 판단되면 해당 기능을 수행하는 드라이빙 유닛(740)의 동작을 제어하되, 획득된 정보에 기초하여 그 동작 량을 제어할 수 있다. 이 때, 복수 개의 전자 제어 장치(710)는, 획득된 정보를 저장 장치(720)에 저장하거나 저장 장치(720)에 저장된 정보를 리드하여 사용할 수 있다. 몇몇 실시예에서, 복수 개의 전자 제어 장치(710)는 앞서 설명한 호스트 장치(도 1의 200)에 대응되고, 저장 장치(720)는 앞서 설명한 메모리 장치(도 1의 100)에 대응될 수 있다.
복수 개의 전자 제어 장치(710)는, 입력부(730)를 통해 입력된 기능 수행 명령에 기초하여 해당 기능을 수행하는 드라이빙 유닛(740)의 동작을 제어하는 것도 가능하고, 입력부(730)를 통해 입력된 정보에 대응하는 설정량을 확인하고 확인된 설정량에 기초하여 해당 기능을 수행하는 드라이빙 유닛(740)의 동작을 제어하는 것도 가능하다.
각 전자 제어 장치(710)는, 독립적으로 어느 하나의 기능을 제어하거나, 또는 다른 전자 제어 장치와 서로 연계하여 어느 하나의 기능을 제어할 수 있다.
예를 들어, 충돌 방지 장치의 전자 제어 장치는 거리 검출부를 통해 검출된 장애물과의 거리가 기준 거리 이내이면 스피커를 통해 장애물과의 충돌에 대한 경고음을 출력하도록 할 수 있다.
자율 주행 제어 장치의 전자 제어 장치는 차량용 단말기의 전자 제어 장치, 영상 획득부의 전자 제어 장치 및 충돌 방지 장치의 전자 제어 장치와 연계하여, 내비게이션 정보, 도로 영상 정보 및 장애물과의 거리 정보를 수신하고 수신된 정보들을 이용하여 동력 장치, 제동 장치 및 조향 장치를 제어함으로써 자율 주행을 수행할 수 있다.
연결 제어 장치(CCU: Connectivity Control Unit, 760)는 복수 개의 전자 제어 장치들(710)과 각각 전기적, 기계적, 통신적으로 연결되고, 복수 개의 전자 제어 장치들(710)과 각각 통신을 수행한다.
즉, 연결 제어 장치(760)는 차량 내부에 마련된 복수 개의 전자 제어 장치들(710)과 직접 통신을 수행하는 것도 가능하고, 외부의 서버와 통신을 수행하는 것도 가능하며, 인터페이스를 통해 외부 단말기와 통신을 수행하는 것도 가능하다.
여기서 연결 제어 장치(760)는 복수 개의 전자 제어 장치(710)들과 통신을 수행할 수 있고, 안테나(미도시)와 RF 통신을 이용하여 서버(810)와 통신을 수행할 수 있다.
또한, 연결 제어 장치(760)는 무선 통신으로 서버(810)와 통신을 수행할 수 있다. 이 때, 연결 제어 장치(760)와 서버(810) 간의 무선 통신은 와이파이(Wifi) 모듈, 와이브로(Wireless broadband) 모듈 외에도, GSM(global System for Mobile Communication), CDMA(Code Division Multiple Access), WCDMA(Wideband Code Division Multiple Access), UMTS(universal mobile telecommunications system), TDMA(Time Division Multiple Access), LTE(Long Term Evolution) 등 다양한 무선 통신 방식을 통해서 가능하다.
도 27은 몇몇 실시예에 따른 메모리 장치가 적용된 시스템을 도시한 도면이다.
도 27의 시스템(1000)은 기본적으로 휴대용 통신 단말기(mobile phone), 스마트폰(smart phone), 태블릿 PC(tablet personal computer), 웨어러블 기기, 헬스케어 기기 또는 IOT(internet of things) 기기와 같은 모바일(mobile) 시스템일 수 있다. 하지만 도 27의 시스템(1000)은 반드시 모바일 시스템에 한정되는 것은 아니고, 개인용 컴퓨터(personal computer), 랩탑(laptop) 컴퓨터, 서버(server), 미디어 재생기(media player) 또는 내비게이션(navigation)과 같은 차량용 장비(automotive device) 등이 될 수도 있다.
도 27을 참조하면, 시스템(1000)은 메인 프로세서(main processor)(1100), 메모리(1200a, 1200b) 및 스토리지 장치(1300a, 1300b)를 포함할 수 있으며, 추가로 촬영 장치(image capturing device)(1410), 사용자 입력 장치(user input device)(1420), 센서(1430), 통신 장치(1440), 디스플레이(1450), 스피커(1460), 전력 공급 장치(power supplying device)(1470) 및 연결 인터페이스(connecting interface)(1480) 중 하나 이상을 포함할 수 있다.
메인 프로세서(1100)는 시스템(1000)의 전반적인 동작, 보다 구체적으로는 시스템(1000)을 이루는 다른 구성 요소들의 동작을 제어할 수 있다. 이와 같은 메인 프로세서(1100)는 범용 프로세서, 전용 프로세서 또는 애플리케이션 프로세서(application processor) 등으로 구현될 수 있다.
메인 프로세서(1100)는 하나 이상의 CPU 코어(1110)를 포함할 수 있으며, 메모리(1200a, 1200b) 및/또는 스토리지 장치(1300a, 1300b)를 제어하기 위한 컨트롤러(1120)를 더 포함할 수 있다. 실시예에 따라서는, 메인 프로세서(1100)는 AI(artificial intelligence) 데이터 연산 등 고속 데이터 연산을 위한 전용 회로인 가속기(accelerator)(1130)를 더 포함할 수 있다. 이와 같은 가속기(1130)는 GPU(Graphics Processing Unit), NPU(Neural Processing Unit) 및/또는 DPU(Data Processing Unit) 등을 포함할 수 있으며, 메인 프로세서(1100)의 다른 구성 요소와는 물리적으로 독립된 별개의 칩(chip)으로 구현될 수도 있다.
메모리(1200a, 1200b)는 시스템(1000)의 주기억 장치로 사용될 수 있으며, SRAM 및/또는 DRAM 등의 휘발성 메모리를 포함할 수 있으나, 플래시 메모리, PRAM 및/또는 RRAM 등의 비휘발성 메모리를 포함할 수도 있다. 메모리(1200a, 1200b)는 메인 프로세서(1100)와 동일한 패키지 내에 구현되는 것도 가능하다.
스토리지 장치(1300a, 1300b)는 전원 공급 여부와 관계없이 데이터를 저장하는 비휘발성 저장 장치로서 기능할 수 있으며, 메모리(1200a, 1200b)에 비해 상대적으로 큰 저장 용량을 가질 수 있다. 스토리지 장치(1300a, 1300b)는 스토리지 컨트롤러(1310a, 1310b)와, 스토리지 컨트롤러(1310a, 1310b)의 제어 하에 데이터를 저장하는 비휘발성 메모리(non-volatile memory, NVM)(1320a, 1320b)를 포함할 수 있다. 비휘발성 메모리(1320a, 1320b)는 2D(2-dimensional) 구조 혹은 3D(3-dimensional) V-NAND(Vertical NAND) 구조의 플래시 메모리를 포함할 수 있으나, PRAM 및/또는 RRAM 등의 다른 종류의 비휘발성 메모리를 포함할 수도 있다.
스토리지 장치(1300a, 1300b)는 메인 프로세서(1100)와는 물리적으로 분리된 상태로 시스템(1000)에 포함될 수도 있고, 메인 프로세서(1100)와 동일한 패키지 내에 구현될 수도 있다. 또한, 스토리지 장치(1300a, 1300b)는 SSD(solid state device) 혹은 메모리 카드(memory card)와 같은 형태를 가짐으로써, 후술할 연결 인터페이스(1480)와 같은 인터페이스를 통해 시스템(1000)의 다른 구성 요소들과 탈부착 가능하도록 결합될 수도 있다. 이와 같은 스토리지 장치(1300a, 1300b)는 UFS(Universal Flash Storage), eMMC(embedded multi-media card) 혹은 NVMe(non-volatile memory express)와 같은 표준 규약이 적용되는 장치일 수 있으나, 반드시 이에 한정되는 건 아니다.
촬영 장치(1410)는 정지 영상 또는 동영상을 촬영할 수 있으며, 카메라(camera), 캠코더(camcorder) 및/또는 웹캠(webcam) 등일 수 있다.
사용자 입력 장치(1420)는 시스템(1000)의 사용자로부터 입력된 다양한 유형의 데이터를 수신할 수 있으며, 터치 패드(touch pad), 키패드(keyboard), 키보드(keyboard), 마우스(mouse) 및/또는 마이크(microphone) 등일 수 있다.
센서(1430)는 시스템(1000)의 외부로부터 획득될 수 있는 다양한 유형의 물리량을 감지하고, 감지된 물리량을 전기 신호로 변환할 수 있다. 이와 같은 센서(1430)는 온도 센서, 압력 센서, 조도 센서, 위치 센서, 가속도 센서, 바이오 센서(biosensor) 및/또는 자이로스코프(gyroscope) 센서 등일 수 있다.
통신 장치(1440)는 다양한 통신 규약에 따라 시스템(1000) 외부의 다른 장치들과의 사이에서 신호의 송신 및 수신을 수행할 수 있다. 이와 같은 통신 장치(1440)는 안테나, 트랜시버(transceiver) 및/또는 모뎀(MODEM) 등을 포함하여 구현될 수 있다.
디스플레이(1450) 및 스피커(1460)는 시스템(1000)의 사용자에게 각각 시각적 정보와 청각적 정보를 출력하는 출력 장치로 기능할 수 있다.
전력 공급 장치(1470)는 시스템(1000)에 내장된 배터리(도시 안함) 및/또는외부 전원으로부터 공급되는 전력을 적절히 변환하여 시스템(1000)의 각 구성 요소들에게 공급할 수 있다.
연결 인터페이스(1480)는 시스템(1000)과, 시스템(1000)에 연결되어 시스템(1000과 데이터를 주고받을 수 있는 외부 장치 사이의 연결을 제공할 수 있다. 연결 인터페이스(1480)는 ATA(Advanced Technology Attachment), SATA(Serial ATA), e-SATA(external SATA), SCSI(Small Computer Small Interface), SAS(Serial Attached SCSI), PCI(Peripheral Component Interconnection), PCIe(PCI express), NVMe, IEEE 1394, USB(universal serial bus), SD(secure digital) 카드, MMC(multi-media card), eMMC, UFS, eUFS(embedded Universal Flash Storage), CF(compact flash) 카드 인터페이스 등과 같은 다양한 인터페이스 방식으로 구현될 수 있다.
몇몇 실시예에서, 앞서 설명한 메모리 장치(도 1의 100)는 예를 들어, 메모리(1200a, 1200b)에 대응되고, 호스트 장치(도 1의 200)는 예를 들어, 메인 프로세서(1100)에 대응될 수 있다. 몇몇 실시예에서, 앞서 설명한 메모리 장치(도 1의 100)는 예를 들어, 스토리지 장치(1300a, 1300b)에 대응되고, 호스트 장치(도 1의 200)는 예를 들어, 메인 프로세서(1100)에 대응될 수 있다.
몇몇 실시예에서, 앞서 설명한 데이터 전송 장치(도 25의 600)는 촬영 장치(1410), 사용자 입력 장치(1420), 센서(1430), 통신 장치(1440) 중 적어도 하나에 대응될 수 있으며, 데이터 수신 장치(도 25의 700)는 디스플레이(1450), 스피커(1460) 중 적어도 하나에 대응될 수 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였으나, 본 발명은 상기 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 제조될 수 있으며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
100: 메모리 장치
200: 호스트 장치

Claims (20)

  1. 전송 드라이버에 데이터 신호를 제공하는 데이터 신호 생성기;
    상기 데이터 신호를 기초로, 제1 내지 제3 신호 레벨 중 어느 하나의 신호 레벨을 갖는 멀티 레벨 신호를 출력하는 전송 드라이버;
    외부로부터 피드백 신호를 제공받고 이를 디코딩하는 커맨드 디코더;
    상기 커맨드 디코더의 디코딩 결과에 기초하여 상기 데이터 신호를 조절하는 데이터 신호 컨트롤러; 및
    상기 커맨드 디코더의 디코딩 결과에 기초하여 상기 제1 내지 제3 신호 레벨 중 적어도 하나를 조절하는 구동 강도(drive strength) 컨트롤러를 포함하는 메모리 장치.
  2. 제1항에 있어서,
    상기 데이터 신호 컨트롤러는,
    상기 커맨드 디코더의 디코딩 결과에 기초하여 상기 데이터 신호의 슬로프(slope)를 조절하는 메모리 장치.
  3. 제1항에 있어서,
    상기 데이터 신호 컨트롤러는,
    상기 커맨드 디코더의 디코딩 결과에 기초하여 상기 데이터 신호의 듀티비(duty ratio)를 조절하는 메모리 장치.
  4. 제1항에 있어서,
    상기 데이터 신호 컨트롤러는,
    상기 커맨드 디코더의 디코딩 결과에 기초하여 상기 데이터 신호의 지연량(delay amount)을 조절하는 메모리 장치.
  5. 제1항에 있어서,
    상기 데이터 신호는,
    제1 데이터 신호와 제2 데이터 신호를 포함하고,
    상기 전송 드라이버는,
    상기 제1 데이터 신호를 제공받는 풀업(pull up) 회로와 상기 제2 데이터 신호를 제공받는 풀다운(pull down) 회로를 포함하고,
    상기 구동 강도 컨트롤러는,
    상기 풀업 회로와 상기 풀다운 회로의 온 저항(Ron)을 조절하여 상기 제1 내지 제3 신호 레벨 중 적어도 하나를 조절하는 메모리 장치.
  6. 제5항에 있어서,
    상기 풀업 회로는,
    제1 풀업 인에이블(enable) 코드를 기초로 인에이블되는 복수의 제1 풀업 유닛을 포함하는 제1 풀업 회로와,
    상기 제1 풀업 인에이블 코드와 다른 제2 풀업 인에이블 코드를 기초로 인에이블되는 복수의 제2 풀업 유닛을 포함하는 제2 풀업 회로를 포함하고,
    상기 풀다운 회로는,
    제1 풀다운 인에이블 코드를 기초로 인에이블되는 복수의 제1 풀다운 유닛을 포함하는 제1 풀다운 회로와,
    상기 제1 풀다운 인에이블 코드와 다른 제2 풀다운 인에이블 코드를 기초로 인에이블되는 복수의 제2 풀다운 유닛을 포함하는 제2 풀다운 회로를 포함하는 메모리 장치.
  7. 제6항에 있어서,
    상기 구동 강도 컨트롤러는,
    상기 제1 및 제2 풀업 인에이블 코드와 상기 제1 및 제2 풀다운 인에이블 코드 중 적어도 하나를 조절하여 상기 제1 내지 제3 신호 레벨 중 적어도 하나를 조절하는 메모리 장치.
  8. 제6항에 있어서,
    상기 풀업 회로는,
    상기 제1 및 제2 풀업 인에이블 코드와 다른 제3 풀업 인에이블 코드를 기초로 인에이블되는 복수의 제3 풀업 유닛을 포함하는 제3 풀업 회로를 더 포함하고,
    상기 풀다운 회로는,
    상기 제1 및 제2 풀다운 인에이블 코드와 다른 제3 풀다운 인에이블 코드를 기초로 인에이블되는 복수의 제3 풀다운 유닛을 포함하는 제3 풀다운 회로를 더 포함하는 메모리 장치.
  9. 제8항에 있어서,
    상기 구동 강도 컨트롤러는,
    상기 제1 내지 제3 풀업 인에이블 코드와 상기 제1 내지 제3 풀다운 인에이블 코드 중 적어도 하나를 조절하여 상기 제1 내지 제3 신호 레벨 중 적어도 하나를 조절하는 메모리 장치.
  10. 제1항에 있어서,
    상기 피드백 신호는 상기 데이터 신호를 조절할 것을 지시하는 제1 커맨드와 상기 제1 내지 제3 신호 레벨 중 적어도 하나를 조절할 것을 지시하는 제2 커맨드 중 적어도 하나를 포함하는 메모리 장치.
  11. 데이터 신호를 기초로 제1 내지 제4 신호 레벨 중 어느 하나의 신호 레벨을 갖는 제1 멀티 레벨 신호를 출력하는 전송 드라이버; 및
    외부로부터 피드백 신호를 제공받고, 이를 기초로 상기 전송 드라이버가 상기 제1 멀티 레벨 신호와 다른 제2 멀티 레벨 신호를 출력하도록 제어하는 컨트롤러를 포함하되,
    상기 컨트롤러는,
    상기 데이터 신호를 조절하고, 상기 제1 내지 제4 신호 레벨 중 적어도 하나를 조절하여 상기 전송 드라이버가 상기 제2 멀티 레벨 신호를 출력하도록 제어하는 메모리 장치.
  12. 제11항에 있어서,
    상기 피드백 신호는, 상기 데이터 신호를 조절할 것을 지시하는 제1 커맨드와 상기 제1 내지 제4 신호 레벨 중 적어도 하나를 조절할 것을 지시하는 제2 커맨드를 포함하는 메모리 장치.
  13. 제11항에 있어서,
    상기 데이터 신호는,
    제1 데이터 신호와 제2 데이터 신호를 포함하고,
    상기 전송 드라이버는,
    상기 제1 데이터 신호를 제공받는 풀업(pull up) 회로와 상기 제2 데이터 신호를 제공받는 풀다운(pull down) 회로를 포함하고,
    상기 컨트롤러는,
    상기 풀업 회로와 상기 풀다운 회로의 온 저항(Ron)을 조절하여 상기 제1 내지 제4 신호 레벨 중 적어도 하나를 조절하는 메모리 장치.
  14. 제13항에 있어서,
    상기 컨트롤러는,
    상기 데이터 신호의 슬로프와 듀티비와 지연량 중 적어도 하나를 조절하는 메모리 장치.
  15. 제13항에 있어서,
    상기 풀업 회로는,
    제1 풀업 인에이블 코드를 기초로 인에이블되는 제1 풀업 회로와,
    상기 제1 풀업 인에이블 코드와 다른 제2 풀업 인에이블 코드를 기초로 인에이블되는 제2 풀업 회로와,
    상기 제1 및 제2 풀업 인에이블 코드와 다른 제3 풀업 인에이블 코드를 기초로 인에이블되는 제3 풀업 회로를 포함하고,
    상기 풀다운 회로는,
    제1 풀다운 인에이블 코드를 기초로 인에이블되는 제1 풀다운 회로와,
    상기 제1 풀다운 인에이블 코드와 다른 제2 풀다운 인에이블 코드를 기초로 인에이블되는 제2 풀다운 회로와,
    상기 제1 및 제2 풀다운 인에이블 코드와 다른 제3 풀다운 인에이블 코드를 기초로 인에이블되는 제3 풀다운 회로를 포함하고,
    상기 컨트롤러는,
    상기 제1 내지 제3 풀업 인에이블 코드와 상기 제1 내지 제3 풀다운 인에이블 코드 중 적어도 하나를 조절하여 상기 제1 내지 제4 신호 레벨 중 적어도 하나를 조절하는 메모리 장치.
  16. 제15항에 있어서,
    상기 제1 내지 제3 풀업 회로가 인에이블되고, 상기 제1 내지 제3 풀다운 회로가 디스에이블되는 것에 응답하여, 상기 전송 드라이버는 상기 제1 신호 레벨을 갖는 멀티 레벨 신호를 출력하고,
    상기 제2 및 제3 풀업 회로와 상기 제3 풀다운 회로가 인에이블되고, 상기 제1 풀업 회로와 상기 제1 및 제2 풀다운 회로가 디스에이블되는 것에 응답하여, 상기 전송 드라이버는 상기 제2 신호 레벨을 갖는 멀티 레벨 신호를 출력하고,
    상기 제3 풀업 회로와, 상기 제2 및 제3 풀다운 회로가 인에이블되고, 상기 제1 및 제2 풀업 회로와 상기 제1 풀다운 회로가 디스에이블되는 것에 응답하여, 상기 전송 드라이버는 상기 제3 신호 레벨을 갖는 멀티 레벨 신호를 출력하고,
    상기 제1 내지 제3 풀다운 회로가 인에이블되고, 상기 제1 내지 제3 풀업 회로가 디스에이블되는 것에 응답하여, 상기 전송 드라이버는 상기 제4 신호 레벨을 갖는 멀티 레벨 신호를 출력하는 메모리 장치.
  17. 제1 데이터 신호를 기초로 생성되고, 제1 내지 제3 신호 레벨 중 어느 하나의 신호 레벨을 갖는 제1 멀티 레벨 신호를 수신하는 수신 드라이버; 및
    상기 수신 드라이버에 수신된 상기 제1 멀티 레벨 신호를 확인하고, 상기 제1 데이터 신호를 조절할 것을 지시하는 제1 커맨드와, 상기 제1 내지 제3 신호 레벨 중 적어도 하나를 조절할 것을 지시하는 제2 커맨드를 포함하는 피드백 신호를 생성하여 출력하는 신호 컨트롤러를 포함하는 호스트 장치.
  18. 제17항에 있어서,
    상기 신호 컨트롤러는, 상기 수신 드라이버에 수신된 제1 멀티 레벨 신호의 타이밍 스큐(timing skew)를 확인하여 상기 피드백 신호를 생성하는 호스트 장치.
  19. 제18항에 있어서,
    상기 신호 컨트롤러는, 상기 수신 드라이버에 수신된 제1 멀티 레벨 신호의 타이밍 스큐를 확인하기 위한 EOM(Eye Open Monitor)을 포함하는 호스트 장치.
  20. 제18항에 있어서,
    상기 신호 컨트롤러가 상기 피드백 신호를 출력한 후, 상기 수신 드라이버는 상기 제1 데이터 신호를 조절한 제2 데이터 신호를 기초로 생성되고, 상기 타이밍 스큐가 조절된 제1 멀티 레벨 신호를 수신하는 호스트 장치.
KR1020210150385A 2021-11-04 2021-11-04 메모리 장치, 호스트 장치 및 메모리 장치의 구동 방법 KR20230064847A (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020210150385A KR20230064847A (ko) 2021-11-04 2021-11-04 메모리 장치, 호스트 장치 및 메모리 장치의 구동 방법
US17/810,929 US20230138845A1 (en) 2021-11-04 2022-07-06 Memory device, host device and method of operating the memory device
EP22184408.7A EP4177889A1 (en) 2021-11-04 2022-07-12 Memory device, host device and method of operating the memory device
CN202211012386.9A CN116072167A (zh) 2021-11-04 2022-08-23 存储器装置、主机装置和操作存储器装置的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210150385A KR20230064847A (ko) 2021-11-04 2021-11-04 메모리 장치, 호스트 장치 및 메모리 장치의 구동 방법

Publications (1)

Publication Number Publication Date
KR20230064847A true KR20230064847A (ko) 2023-05-11

Family

ID=83149108

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210150385A KR20230064847A (ko) 2021-11-04 2021-11-04 메모리 장치, 호스트 장치 및 메모리 장치의 구동 방법

Country Status (4)

Country Link
US (1) US20230138845A1 (ko)
EP (1) EP4177889A1 (ko)
KR (1) KR20230064847A (ko)
CN (1) CN116072167A (ko)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101226685B1 (ko) 2007-11-08 2013-01-25 삼성전자주식회사 수직형 반도체 소자 및 그 제조 방법.
KR101691092B1 (ko) 2010-08-26 2016-12-30 삼성전자주식회사 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템
US8553466B2 (en) 2010-03-04 2013-10-08 Samsung Electronics Co., Ltd. Non-volatile memory device, erasing method thereof, and memory system including the same
US9536970B2 (en) 2010-03-26 2017-01-03 Samsung Electronics Co., Ltd. Three-dimensional semiconductor memory devices and methods of fabricating the same
KR101682666B1 (ko) 2010-08-11 2016-12-07 삼성전자주식회사 비휘발성 메모리 장치, 그것의 채널 부스팅 방법, 그것의 프로그램 방법 및 그것을 포함하는 메모리 시스템
US9218575B2 (en) * 2013-09-04 2015-12-22 Intel Corporation Periodic training for unmatched signal receiver
KR102656219B1 (ko) * 2016-11-07 2024-04-11 삼성전자주식회사 메모리 장치, 그것을 포함하는 메모리 시스템, 및 그것의 슬루 레이트 조정 방법
US10998011B2 (en) * 2018-08-21 2021-05-04 Micron Technology, Inc. Drive strength calibration for multi-level signaling
CN112669890A (zh) * 2019-10-16 2021-04-16 长鑫存储技术有限公司 输出驱动电路及存储器
US11309013B2 (en) * 2020-04-29 2022-04-19 Samsung Electronics Co., Ltd. Memory device for reducing resources used for training

Also Published As

Publication number Publication date
EP4177889A1 (en) 2023-05-10
CN116072167A (zh) 2023-05-05
US20230138845A1 (en) 2023-05-04

Similar Documents

Publication Publication Date Title
US8391088B2 (en) Pseudo-open drain type output driver having de-emphasis function, semiconductor memory device, and control method thereof
US9543952B2 (en) Semiconductor memory device and a method of operating the same
US20220121585A1 (en) Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding
US20170154668A1 (en) Calibration circuit and memory device including the same
US9478267B1 (en) Semiconductor memory apparatus, and impedance calibration circuit and method thereof
KR20190099933A (ko) 외부의 전압을 기반으로 동작 모드를 결정하는 메모리 장치 및 그 동작방법
US10535396B2 (en) Memory device write circuitry
US11587598B2 (en) Memory device for generating pulse amplitude modulation-based DQ signal and memory system including the same
KR102656219B1 (ko) 메모리 장치, 그것을 포함하는 메모리 시스템, 및 그것의 슬루 레이트 조정 방법
KR101894469B1 (ko) 제어신호생성회로 및 이를 이용한 반도체모듈 및 반도체시스템
US11449274B2 (en) Memory device, data outputting method thereof, and memory system having the same
CN107408086B (zh) 用于存储器的非对称输入/输出接口的装置及方法
US10373674B2 (en) Apparatuses and methods for data transmission offset values in burst transmissions
KR20190056890A (ko) 메모리 장치 및 그것의 동작 방법
US10418088B2 (en) Power reduction technique during read/write bursts
KR20230064847A (ko) 메모리 장치, 호스트 장치 및 메모리 장치의 구동 방법
US10824503B2 (en) Systems and methods for performing a write pattern in memory devices
TWI817407B (zh) 透過訊號線連接至外部裝置的設備
US20230060813A1 (en) Data Masking for Pulse Amplitude Modulation
US20240212725A1 (en) Memory device and method for training per-pin operation parameters
US20230142493A1 (en) Apparatus and method for zq calibration
US10255967B1 (en) Power reduction technique during write bursts
CN117651929A (zh) 脉冲振幅调制的终止
KR20220011226A (ko) 메모리 판정 피드백 등화기