KR20200052562A - 스토리지 장치 - Google Patents
스토리지 장치 Download PDFInfo
- Publication number
- KR20200052562A KR20200052562A KR1020180135620A KR20180135620A KR20200052562A KR 20200052562 A KR20200052562 A KR 20200052562A KR 1020180135620 A KR1020180135620 A KR 1020180135620A KR 20180135620 A KR20180135620 A KR 20180135620A KR 20200052562 A KR20200052562 A KR 20200052562A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- controller
- signal
- nonvolatile memory
- memory device
- Prior art date
Links
- 238000012549 training Methods 0.000 claims abstract description 98
- 230000008859 change Effects 0.000 claims description 14
- 238000000034 method Methods 0.000 claims description 14
- 230000007704 transition Effects 0.000 claims description 8
- 230000015654 memory Effects 0.000 description 43
- 239000008186 active pharmaceutical agent Substances 0.000 description 31
- 238000012795 verification Methods 0.000 description 31
- 230000004044 response Effects 0.000 description 9
- 101000585693 Homo sapiens Mitochondrial 2-oxodicarboxylate carrier Proteins 0.000 description 7
- 101001041245 Homo sapiens Ornithine decarboxylase Proteins 0.000 description 7
- 102100021079 Ornithine decarboxylase Human genes 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000001934 delay Effects 0.000 description 5
- 230000007423 decrease Effects 0.000 description 4
- 230000003111 delayed effect Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 239000004065 semiconductor Substances 0.000 description 4
- 101100481702 Arabidopsis thaliana TMK1 gene Proteins 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 2
- 101000631929 Homo sapiens Sodium-dependent serotonin transporter Proteins 0.000 description 1
- 102100028874 Sodium-dependent serotonin transporter Human genes 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
- G11C7/1066—Output synchronization
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/32—Timing circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
- G11C7/222—Clock generating, synchronizing or distributing circuits within memory device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1078—Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/22—Control and timing of internal memory operations
- G11C2207/2254—Calibration
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)
- Memory System (AREA)
- Read Only Memory (AREA)
- Dram (AREA)
Abstract
본 발명은 스토리지 장치에 관한 것이다. 본 발명의 스토리지 장치는 불휘발성 메모리 장치, 그리고 데이터 입력 및 출력 라인을 통해 불휘발성 메모리 장치와 데이터 신호를 교환하고, 그리고 데이터 스트로브 라인을 통해 불휘발성 메모리 장치와 데이터 스트로브 신호를 교환하도록 구성되는 제어기를 포함한다. 트레이닝 동작 시에, 불휘발성 메모리 장치 및 제어기 중 적어도 하나는 데이터 신호의 지연량을 제1 보폭으로 조절하는 거친 트레이닝 및 데이터 신호의 지연량을 제1 보폭보다 작은 제2 보폭으로 조절하는 정교한 트레이닝을 수행하도록 구성된다.
Description
본 발명은 반도체 장치에 관한 것으로, 더 상세하게는 데이터 신호의 타이밍과 데이터 스트로브 신호의 타이밍을 정렬하고, 검증하고, 그리고 조절하는 스토리지 장치에 관한 것이다.
반도체 소자의 제조 기술이 발전하면서, 하나의 반도체 장치의 기능이 향상되고 있다. 특히, 불휘발성 메모리 장치 및 제어기를 포함하는 스토리지 장치에서, 불휘발성 메모리 장치와 제어기가 데이터 신호들을 교환하는 속도가 향상되고 있다.
데이터 신호들을 교환하는 속도가 향상됨에 따라, 데이터 신호들이 정보를 유지하는 시간이 짧아지고, 데이터 신호를 정확하게 식별할 수 있는 마진(margin)이 감소한다. 고속으로 전송되는 데이터 신호들을 정확하게 식별하기 위하여, 불휘발성 메모리 장치 또는 제어기에서 데이터 신호들을 전송하는 타이밍들을 조절하는 트레이닝 동작이 도입되고 있다.
트레이닝 동작을 수행하는 데에 소비되는 시간은 스토리지 장치의 동작 성능을 낮출 수 있다. 또한, 트레이닝 동작이 완료된 후에, 환경의 변화에 따라 불휘발성 메모리 장치 또는 제어기가 데이터 신호들을 전송하는 타이밍들이 변경될 수 있다.
본 발명은 상술된 문제를 해결하기 위한 것으로, 본 발명의 목적은 트레이닝 동작에 필요한 시간을 줄이고, 데이터 전송 타이밍들이 변경되었는지 검증하고, 그리고 환경의 변화에 따라 데이터 전송 타이밍들을 동적으로 조절하는 스토리지 장치를 제공하는 데에 있다.
본 발명의 실시 예에 따른 스토리지 장치는 불휘발성 메모리 장치, 그리고 데이터 입력 및 출력 라인을 통해 불휘발성 메모리 장치와 데이터 신호를 교환하고, 그리고 데이터 스트로브 라인을 통해 불휘발성 메모리 장치와 데이터 스트로브 신호를 교환하도록 구성되는 제어기를 포함한다. 트레이닝 동작 시에, 불휘발성 메모리 장치 및 제어기 중 적어도 하나는 데이터 신호의 지연량을 제1 보폭(stride)으로 조절하는 거친 트레이닝 및 데이터 신호의 지연량을 제1 보폭보다 작은 제2 보폭으로 조절하는 정교한 트레이닝을 수행하도록 구성된다.
본 발명의 실시 예에 따른 스토리지 장치는 불휘발성 메모리 장치, 그리고 데이터 입력 및 출력 라인들을 통해 불휘발성 메모리 장치와 데이터 신호들을 교환하고, 그리고 데이터 스트로브 라인을 통해 불휘발성 메모리 장치와 데이터 스트로브 신호를 교환하도록 구성되는 제어기를 포함한다. 트레이닝 동작 시에, 제어기 및 불휘발성 메모리 장치는 데이터 신호들의 중앙 위치들 및 데이터 스트로브 신호가 천이하는 타이밍을 정렬하도록 구성된다. 제어기는 데이터 신호들 중 가장 폭이 좁은 신호의 경계들의 정보를 저장한다. 트레이닝 동작이 완료된 후에, 제어기는 경계들의 정보들을 이용하여 데이터 신호들의 중앙 위치들과 데이터 스트로브 신호가 천이하는 타이밍의 정렬을 검증하도록 구성된다.
본 발명의 실시 예에 따른 스토리지 장치는 불휘발성 메모리 장치, 그리고 데이터 입력 및 출력 라인을 통해 불휘발성 메모리 장치와 데이터 신호를 교환하고, 그리고 데이터 스트로브 라인을 통해 불휘발성 메모리 장치와 데이터 스트로브 신호를 교환하도록 구성되는 제어기를 포함한다. 트레이닝 동작 시에, 제어기 및 불휘발성 메모리 장치는 데이터 신호를 전송하는 제1 지연량을 조절함으로써, 데이터 신호의 중앙 위치 및 데이터 스트로브 신호가 천이하는 타이밍을 정렬하도록 구성된다. 제어기 및 불휘발성 메모리 장치 중 적어도 하나는 데이터 스트로브 신호의 하나의 주기의 길이의 변화에 따라 데이터 스트로브 신호의 제2 지연량을 조절한다.
본 발명에 따르면, 트레이닝 동작은 제1 보폭을 이용한 거친 트레이닝 및 제2 보폭을 이용한 정교한 트레이닝을 이용하여 수행된다. 또한, 트레이닝 동작이 완료된 후에 검증 값들이 저장되고, 검증 값들을 이용하여 데이터 신호들의 지연량들이 변경되었는지 검증된다. 뿐만 아니라, 데이터 스트로브 신호의 하나의 주기가 변화함에 따라, 데이터 신호들의 지연량들이 조절된다. 따라서, 감소된 시간으로 트레이닝 동작을 수행하고, 데이터 신호들의 지연량들을 검증하고 동적으로 조절하는 스토리지 장치가 제공된다.
도 1은 본 발명의 실시 예에 따른 스토리지 장치를 보여주는 블록도이다.
도 2는 본 발명의 실시 예에 따른 불휘발성 메모리 장치를 보여주는 블록도이다.
도 3은 본 발명의 실시 예에 따른 스토리지 장치의 동작 방법을 보여주는 순서도이다.
도 4는 스토리지 장치가 제1 보폭 및 제2 보폭으로 트레이닝 동작을 수행하는 예를 보여주는 순서도이다.
도 5는 특정한 데이터 신호의 제1 경계에 대응하는 지연량을 결정하는 예를 보여준다.
도 6은 불휘발성 메모리 장치의 입력 및 출력 회로의 예를 보여준다.
도 7은 도 6의 출력 지연 회로의 예를 보여준다.
도 8은 제어기의 메모리 인터페이스의 예를 보여준다.
도 9는 제1 내지 제8 데이터 입력 및 출력 라인들의 데이터 신호들의 지연량들이 데이터 스트로브 신호에 정렬된 예를 보여준다.
도 10은 스토리지 장치가 데이터 신호들의 지연량들을 검증하는 방법의 예를 보여주는 순서도이다.
도 11은 제1 검증 값 및 제2 검증 값과 비교하여 데이터 신호들의 지연량들이 변경된 예를 보여준다.
도 12는 스토리지 장치가 데이터 스트로브 신호의 변화에 따라 데이터 스트로브 신호의 지연량을 조절하는 예를 보여주는 순서도이다.
도 13은 스토리지 장치가 데이터 스트로브 신호의 하나의 주기의 길이를 측정하는 예를 보여준다.
도 14는 데이터 스트로브 신호의 잠금 값이 감소한 예를 보여준다.
도 15는 데이터 스트로브 신호의 변화에 따라 데이터 신호들의 지연량들을 조절하는 예를 보여준다.
도 16은 데이터 스트로브 신호의 잠금 값이 증가한 예를 보여준다.
도 2는 본 발명의 실시 예에 따른 불휘발성 메모리 장치를 보여주는 블록도이다.
도 3은 본 발명의 실시 예에 따른 스토리지 장치의 동작 방법을 보여주는 순서도이다.
도 4는 스토리지 장치가 제1 보폭 및 제2 보폭으로 트레이닝 동작을 수행하는 예를 보여주는 순서도이다.
도 5는 특정한 데이터 신호의 제1 경계에 대응하는 지연량을 결정하는 예를 보여준다.
도 6은 불휘발성 메모리 장치의 입력 및 출력 회로의 예를 보여준다.
도 7은 도 6의 출력 지연 회로의 예를 보여준다.
도 8은 제어기의 메모리 인터페이스의 예를 보여준다.
도 9는 제1 내지 제8 데이터 입력 및 출력 라인들의 데이터 신호들의 지연량들이 데이터 스트로브 신호에 정렬된 예를 보여준다.
도 10은 스토리지 장치가 데이터 신호들의 지연량들을 검증하는 방법의 예를 보여주는 순서도이다.
도 11은 제1 검증 값 및 제2 검증 값과 비교하여 데이터 신호들의 지연량들이 변경된 예를 보여준다.
도 12는 스토리지 장치가 데이터 스트로브 신호의 변화에 따라 데이터 스트로브 신호의 지연량을 조절하는 예를 보여주는 순서도이다.
도 13은 스토리지 장치가 데이터 스트로브 신호의 하나의 주기의 길이를 측정하는 예를 보여준다.
도 14는 데이터 스트로브 신호의 잠금 값이 감소한 예를 보여준다.
도 15는 데이터 스트로브 신호의 변화에 따라 데이터 신호들의 지연량들을 조절하는 예를 보여준다.
도 16은 데이터 스트로브 신호의 잠금 값이 증가한 예를 보여준다.
이하에서, 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있을 정도로, 본 발명의 실시 예들이 명확하고 상세하게 기재될 것이다.
도 1은 본 발명의 실시 예에 따른 스토리지 장치(100)를 보여주는 블록도이다. 도 1을 참조하면, 스토리지 장치(100)는 불휘발성 메모리 장치(110) 및 제어기(120)를 포함한다. 불휘발성 메모리 장치(110)는 플래시 메모리, 상 변화 메모리(PRAM), 자기저항 메모리(MRAM), 저항성 메모리(RRAM), 강유전체 메모리(FRAM) 등과 같은 다양한 메모리들을 포함할 수 있다.
불휘발성 메모리 장치(110)는 동종의 메모리들 또는 이종의 메모리들을 포함할 수 있다. 불휘발성 메모리 장치(110)는 데이터 입력 및 출력 라인들(DQs) 및 제어 라인들(CT)을 통해 제어기(120)와 통신할 수 있다.
제어기(120)는 불휘발성 메모리 장치(110)를 제어하도록 구성된다. 제어기(120)는 데이터 입력 및 출력 라인들(DQs)을 통해 불휘발성 메모리 장치(110)와 데이터를 통신할 수 있다. 제어기(120)는 제어 라인들(CT)을 통해 제어 신호들을 전송 및 수신함으로써 불휘발성 메모리 장치(110)를 제어할 수 있다. 예를 들어, 제어기(120)는 쓰기, 읽기 또는 소거를 수행하도록 불휘발성 메모리 장치(110)를 제어할 수 있다.
또한, 제어기(120)는 불휘발성 메모리 장치(110)와 트레이닝 동작을 수행할 수 있다. 트레이닝 동작은 제어기(120) 또는 불휘발성 메모리 장치(110)가 데이터 입력 및 출력 라인들(DQs)을 통해 데이터 신호들을 전송하는 타이밍들을 조절(예를 들어, 정렬)하는 것을 포함할 수 있다. 데이터 신호들을 전송하는 타이밍들을 조절함으로써, 데이터 신호들을 수신하는 정확도 및 신뢰도가 향상될 수 있다.
트레이닝 동작은 스토리지 장치(100)에 전원이 공급된 후에 또는 스토리지 장치(100)가 절전 모드로부터 정상 모드로 복원된 후에 수행될 수 있다. 트레이닝 동작은 제어기(120)가 불휘발성 메모리 장치(110)를 통상적으로 제어(예를 들어, 쓰기, 읽기 또는 소거를 수행하도록 제어)하기 전에 수행될 수 있다.
제어기(120)는 메모리 인터페이스(121), 입력 및 출력 트레이너(122), 그리고 메모리(123)를 포함한다. 메모리 인터페이스(121)는 불휘발성 메모리 장치(110)와 실질적인 통신을 수행할 수 있다. 예를 들어, 메모리 인터페이스(121)는 미리 약속된 규칙에 의해 정해진 레벨들 및 타이밍들을 갖는 신호들(예를 들어, 데이터 신호들 및 제어 신호들)을 불휘발성 메모리 장치(110)와 교환할 수 있다.
입력 및 출력 트레이너(122)는 메모리 인터페이스(121)를 통해 불휘발성 메모리 장치(110)와 트레이닝 동작을 수행할 수 있다. 입력 및 출력 트레이너(122)는 트레이닝 동작에 필요한 정보들 또는 트레이닝 동작에 의해 획득되는 정보들(예를 들어, 지연량들)을 메모리(123)에 저장할 수 있다. 입력 및 출력 트레이너(122)는 메모리(123)를 이용하여 불휘발성 메모리 장치(110)와 트레이닝 동작을 수행할 수 있다.
도 2는 본 발명의 실시 예에 따른 불휘발성 메모리 장치(110)를 보여주는 블록도이다. 도 1 및 도 2를 참조하면, 불휘발성 메모리 장치(110)는 메모리 셀 어레이(111), 행 디코더 회로(112), 페이지 버퍼 회로(113), 입력 및 출력 회로(114), 패스-페일 체크 회로(115), 그리고 제어 로직 회로(116)를 포함한다.
메모리 셀 어레이(111)는 복수의 메모리 블록들(BLK1~BLKz)을 포함한다. 각 메모리 블록은 복수의 메모리 셀들을 포함한다. 각 메모리 블록은 적어도 하나의 접지 선택 라인(GSL), 복수의 워드 라인들(WL), 그리고 적어도 하나의 스트링 선택 라인(SSL)을 통해 행 디코더 회로(112)에 연결될 수 있다. 각 메모리 블록은 복수의 비트 라인들(BL)을 통해 페이지 버퍼 회로(113)에 연결될 수 있다. 복수의 메모리 블록들(BLK1~BLKz)은 복수의 비트 라인들(BL)에 공통으로 연결될 수 있다.
예시적으로, 복수의 메모리 블록들(BLK1~BLKz) 각각은 소거 동작의 단위일 수 있다. 메모리 셀 어레이(111)의 메모리 셀들은 하나의 메모리 블록의 단위로 소거될 수 있다. 하나의 메모리 블록에 속한 메모리 셀들은 동시에 소거될 수 있다. 다른 예로서, 각 메모리 블록은 복수의 서브 블록들로 분할될 수 있다. 복수의 서브 블록들 각각은 소거 동작의 단위일 수 있다.
행 디코더 회로(112)는 복수의 접지 선택 라인들(GSL), 복수의 워드 라인들(WL), 그리고 복수의 스트링 선택 라인들(SSL)을 통해 메모리 셀 어레이(111)에 연결된다. 행 디코더 회로(112)는 제어 로직 회로(116)의 제어에 따라 동작한다. 행 디코더 회로(112)는 입력 및 출력 회로(114)로부터 행 주소(RA)를 수신할 수 있다. 행 디코더 회로(112)는 수신된 행 주소를 디코딩하고, 디코딩된 주소에 따라 스트링 선택 라인들(SSL), 워드 라인들(WL), 그리고 접지 선택 라인들(GSL)에 인가되는 전압들을 제어할 수 있다.
페이지 버퍼 회로(113)는 복수의 비트 라인들(BL)을 통해 메모리 셀 어레이(111)에 연결된다. 페이지 버퍼 회로(113)는 복수의 데이터 라인들(DL)을 통해 입력 및 출력 회로(114)와 연결된다. 페이지 버퍼 회로(113)는 제어 로직 회로(116)의 제어에 따라 동작한다.
쓰기 동작 시에, 페이지 버퍼 회로(113)는 메모리 셀들에 프로그램될 데이터 비트들을 저장할 수 있다. 저장된 데이터 비트들에 기반하여, 페이지 버퍼 회로(113)는 복수의 비트 라인들(BL)에 전압들을 인가할 수 있다. 예를 들어, 페이지 버퍼 회로(113)는 쓰기 드라이버로 기능할 수 있다. 읽기 동작 또는 검증 읽기 시에, 페이지 버퍼 회로(113)는 비트 라인들(BL)의 전압들을 센싱하고, 센싱 결과를 저장할 수 있다. 예를 들어, 페이지 버퍼 회로(113)는 감지 증폭기로 기능할 수 있다.
입력 및 출력 회로(114)는 복수의 데이터 라인들(DL)을 통해 페이지 버퍼 회로(113)와 연결된다. 입력 및 출력 회로(114)는 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 제어기(120)와 연결될 수 있다. 예를 들어, 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)은 도 1을 참조하여 설명된 데이터 입력 및 출력 라인들(DQs)에 포함될 수 있다.
입력 및 출력 회로(114)는 페이지 버퍼 회로(113)에 의해 읽힌 데이터 비트들을 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 데이터 신호들로서 제어기(120)로 출력할 수 있다. 또한, 입력 및 출력 회로(114)는 제어기(120)로부터 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 수신되는 데이터 신호들을 데이터 비트들로서 페이지 버퍼 회로(113)로 전달할 수 있다.
입력 및 출력 회로(114)는 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 주소를 수신할 수 있다. 입력 및 출력 회로(114)는 수신되는 주소들 중 행 주소(RA)를 행 디코더 회로(112)로 전달할 수 있다. 입력 및 출력 회로(114)는 수신되는 주소들 중 열 주소를 이용하여 페이지 버퍼 회로(113)에 데이터 비트들을 저장하거나 또는 페이지 버퍼 회로(113)에 저장된 데이터 비트들을 읽을 수 있다.
입력 및 출력 회로(114)는 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 커맨드(CMD)를 수신할 수 있다. 입력 및 출력 회로(114)는 수신되는 커맨드(CMD)를 제어 로직 회로(116)로 전달할 수 있다. 입력 및 출력 회로(114)는 제어기(120)로부터 데이터 스트로브 신호(DQS)를 수신할 수 있다. 입력 및 출력 회로(114)는 데이터 스트로브 신호(DQS)에 동기되어 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 수신되는 데이터 신호들을 데이터 비트들로 래치할 수 있다.
입력 및 출력 회로(114)는 제어기(120)로 데이터 스트로브 신호(DQS)를 출력할 수 있다. 입력 및 출력 회로(114)는 데이터 비트들을 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 데이터 신호들로 전송하는 타이밍에 동기되어, 데이터 스트로브 신호(DQS)를 출력할 수 있다. 데이터 스트로브 신호(DQS)는 제어 라인들(CT) 중 일부를 통해 수신 및 출력될 수 있다.
예를 들어, 제어기(120)로부터 불휘발성 메모리 장치(110)로 데이터 신호들이 전송될 때, 데이터 스트로브 신호(DQS)는 제어기(120)에 의해 제어될 수 있다. 불휘발성 메모리 장치(110)로부터 제어기(120)로 데이터 신호들이 전송될 때, 데이터 스트로브 신호(DQS)는 불휘발성 메모리 장치(110)에 의해 제어될 수 있다.
입력 및 출력 회로(114)는 제어기(120)로 레디/비지 신호(R/B)를 출력할 수 있다. 예를 들어, 입력 및 출력 회로(114)가 제어기(120)로부터 커맨드, 주소 또는 데이터 비트들을 수신할 수 있을 때, 입력 및 출력 회로(114)는 레디 상태를 가리키는 레디/비지 신호(R/B)를 출력할 수 있다. 입력 및 출력 회로(114)가 제어기(120)로부터 커맨드, 주소 또는 데이터 비트들을 수신할 수 없을 때, 입력 및 출력 회로(114)는 비지 상태를 가리키는 레디/비지 신호(R/B)를 출력할 수 있다. 레디/비지 신호(R/B)는 제어 라인들(CT) 중 일부를 통해 출력될 수 있다.
패스-페일 체크 회로(PFC)(115)는 검증 읽기 후에, 페이지 버퍼 회로(113)로부터 센싱 결과를 수신할 수 있다. 수신된 센싱 결과에 기반하여, 패스-페일 체크 회로(115)는 쓰기(또는 소거)의 패스 또는 페일을 판별할 수 있다. 패스 또는 페일의 판별 결과는 제어 로직 회로(116)로 전달된다.
제어 로직 회로(116)는 제어기(120)로부터 주소 래치 인에이블 신호(ALE), 커맨드 래치 인에이블 신호(CLE), 쓰기 인에이블 신호(/WE), 읽기 인에이블 신호(/RE), 그리고 칩 인에이블 신호(/CE)를 수신할 수 있다. 주소 래치 인에이블 신호(ALE), 커맨드 래치 인에이블 신호(CLE), 쓰기 인에이블 신호(/WE), 읽기 인에이블 신호(/RE), 그리고 칩 인에이블 신호(/CE)는 제어 라인들(CT) 중 일부를 통해 수신될 수 있다.
주소 래치 인에이블 신호(ALE)는 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 입력되는 데이터 신호들이 주소임을 가리킨다. 주소 래치 인에이블 신호(ALE)가 활성화되면, 제어 로직 회로(116)는 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 수신되는 데이터 신호들을 주소로 처리할 수 있다. 예를 들어, 제어 로직 회로(116)는 행 주소(RA)가 행 디코더 회로(112)로 전달되도록 불휘발성 메모리 장치(110)를 제어할 수 있다.
커맨드 래치 인에이블 신호(CLE)는 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 입력되는 데이터 신호들이 커맨드(CMD)임을 가리킨다. 커맨드 래치 인에이블 신호(CLE)가 활성화되면, 제어 로직 회로(116)는 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 수신되는 데이터 신호들을 커맨드(CMD)로 처리할 수 있다. 예를 들어, 제어 로직 회로(116)는 입력 및 출력 회로(114)에 저장된 커맨드(CMD)를 가져오고(fetch), 가져온 커맨드를 실행할 수 있다.
쓰기 인에이블 신호(/WE)는 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 커맨드(CMD) 또는 주소가 입력될 때, 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)의 데이터 비트들을 저장(또는 래치)하는 타이밍을 가리킬 수 있다. 읽기 인에이블 신호(/RE)는 제어기(120)가 읽기(또는 출력) 시에 불휘발성 메모리 장치(110)에 임시의 클럭을 제공하는 데에 사용될 수 있다.
예를 들어, 읽기 동작 시에, 제어기(120)는 읽기 인에이블 신호(/RE)를 하이 레벨과 로우 레벨로 주기적으로 토글할 수 있다. 제어 로직 회로(116)는 읽기 인에이블 신호(/RE)를 입력 및 출력 회로(114)로 전달할 수 있다. 입력 및 출력 회로(114)는 읽기 인에이블 신호(/RE)를 지연하여 데이터 스트로브 신호(DQS)를 생성할 수 있다. 입력 및 출력 회로(114)는 생성된 데이터 스트로브 신호(DQS)와 동기하여 데이터 신호들을 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 전송할 수 있다.
칩 인에이블 신호(/CE)는 불휘발성 메모리 장치(110)를 활성화할 수 있다. 제어기(120)가 칩 인에이블 신호(/CE)를 활성화한 때에, 불휘발성 메모리 장치(110)는 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 전달되는 데이터 신호들을 수신할 수 있다. 제어기(120)가 칩 인에이블 신호(/CE)를 비활성화한 때에, 불휘발성 메모리 장치(110)는 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 전달되는 데이터 신호들을 무시할 수 있다.
제어 로직 회로(116)는 출력 트레이너(117)를 포함한다. 출력 트레이너(117)는 읽기 동작 시에 입력 및 출력 회로(114)가 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 출력하는 데이터 신호들에 대한 트레이닝 동작을 수행할 수 있다. 트레이닝 동작은 첨부된 도면들을 참조하여 아래에서 더 상세히 설명된다.
도 3은 본 발명의 실시 예에 따른 스토리지 장치(100)의 동작 방법을 보여주는 순서도이다. 도 1 내지 도 3을 참조하면, S110 단계에서, 스토리지 장치(100)는 제1 보폭(stride) 및 제2 보폭으로 트레이닝 동작을 수행할 수 있다. 불휘발성 메모리 장치(110) 또는 제어기(120)는 제1 보폭 및 제2 보폭으로 데이터 신호들을 전송할 때의 지연량들을 조절하며 트레이닝 동작을 수행할 수 있다. 둘 이상의 보폭들로 트레이닝 동작을 수행함으로써, 트레이닝 동작의 소요 시간이 감소할 수 있다.
S120 단계에서, 스토리지 장치(100)는 트레이닝 결과에 기반하여 데이터 스트로브 신호(DQS)의 지연량을 조절함으로써, 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 전송되는 데이터 신호들의 지연량들을 검증할 수 있다. 예를 들어, 불휘발성 메모리 장치(110) 또는 제어기(120)는 트레이닝 동작에 의해 정렬된 데이터 신호들의 지연량들이 왜곡되거나 어긋나는지를 검증할 수 있다. 데이터 신호들의 지연량들을 검증함으로써, 스토리지 장치(100)의 신뢰성이 향상될 수 있다.
S130 단계에서, 스토리지 장치(100)는 데이터 스트로브 신호(DQS)의 변화에 기반하여 데이터 스트로브 신호(DQS)의 지연량을 조절할 수 있다. 예를 들어, 불휘발성 메모리 장치(110) 또는 제어기(120)는 데이터 스트로브 신호(DQS)의 하나의 주기의 길이의 변화에 따라 데이터 스트로브 신호(DQS)의 지연량을 조절할 수 있다. 따라서, 데이터 스트로브 신호(DQS)의 변화에 의해 데이터 신호들의 전송 타이밍들이 왜곡되거나 어긋나는 것이 보상된다.
도 4는 스토리지 장치(100)가 제1 보폭 및 제2 보폭으로 트레이닝 동작을 수행(도 3의 S110 단계)하는 예를 보여주는 순서도이다. 도 1, 도 2 및 도 4를 참조하면, S210 단계에서, 불휘발성 메모리 장치(110) 또는 제어기(120)는 데이터 스트로브 신호(DQS)와 함께 데이터 신호들을 전송할 수 있다.
예를 들어, 트레이닝 동작은 읽기 트레이닝 및 쓰기 트레이닝을 포함할 수 있다. 읽기 트레이닝은 불휘발성 메모리 장치(110)가 데이터 스트로브 신호(DQS) 및 데이터 신호들을 전송하는 타이밍들을 정렬할 수 있다 쓰기 트레이닝은 제어기(120)가 데이터 스트로브 신호(DQS) 및 데이터 신호들을 전송하는 타이밍들을 정렬할 수 있다.
읽기 트레이닝 시에, 제어기(120)의 제어에 따라, 불휘발성 메모리 장치(110)의 출력 트레이너(117)는 특정한 데이터 비트들을 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 데이터 신호들로서 제어기(120)로 출력할 수 있다. 불휘발성 메모리 장치(110)는 데이터 신호들과 함께 데이터 스트로브 신호(DQS)를 전송할 수 있다.
쓰기 트레이닝 시에, 제어기(120)의 입력 및 출력 트레이너(122)는 특정한 데이터 비트들을 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 데이터 신호들로서 불휘발성 메모리 장치(110)로 출력할 수 있다. 제어기(120)는 데이터 신호들과 함께 데이터 스트로브 신호(DQS)를 불휘발성 메모리 장치(110)로 출력할 수 있다. 불휘발성 메모리 장치(110)는 데이터 스트로브 신호(DQS)에 동기되어 데이터 신호들을 래치하여 데이터 비트들을 저장할 수 있다.
S220 단계에서, 제어기(120)는 첫 번째 패스가 발생하는지 판단할 수 있다. 예를 들어, 읽기 트레이닝 시에, 제어기(120)는 불휘발성 메모리 장치(110)로부터 수신되는 데이터 스트로브 신호(DQS)에 동기되어 데이터 신호들을 데이터 비트들로 래치할 수 있다.
래치된 데이터 비트들이 특정한 데이터 비트들과 일치할 때에, 즉 특정한 데이터 비트들이 정확하게 식별될 때에, 제어기(120)의 입력 및 출력 트레이너(122)는 패스를 판단할 수 있다. 래치된 데이터 비트들 중 적어도 하나가 특정한 데이터 비트들 중 대응하는 하나와 일치하지 않을 때, 즉 특정한 데이터 비트들 중 적어도 하나가 정확하지 않게 식별될 때에, 제어기(120)의 입력 및 출력 트레이너(122)는 페일을 판단할 수 있다.
쓰기 트레이닝 시에, 제어기(120)는 불휘발성 메모리 장치(110)에 데이터 비트들을 요청할 수 있다. 불휘발성 메모리 장치(110)는 저장된 데이터 비트들을 제2 데이터 신호들로서 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)을 통해 제어기(120)로 전송할 수 있다. 불휘발성 메모리 장치(110)는 제2 데이터 신호들과 함께 데이터 스트로브 신호(DQS)를 제어기(120)로 전송할 수 있다.
제어기(120)는 데이터 스트로브 신호(DQS)에 동기되어 제2 데이터 신호들을 래치하여 제2 데이터 비트들로 저장할 수 있다. 제2 데이터 비트들이 특정한 데이터 비트들과 일치할 때, 제어기(120)의 입력 및 출력 트레이너(122)는 패스를 판단할 수 있다. 제2 데이터 비트들 중 적어도 하나가 특정한 데이터 비트들 중 대응하는 하나와 일치하지 않을 때, 제어기(120)의 입력 및 출력 트레이너(122)는 페일을 판단할 수 있다.
S220 단계에서 패스가 판단되지 않으면, S230 단계가 수행된다. S230 단계에서, 스토리지 장치(100)는 데이터 신호들의 지연량들을 제1 보폭으로 조절할 수 있다. 예를 들어, 읽기 트레이닝 시에, 불휘발성 메모리 장치(110)의 출력 트레이너(117)는 데이터 신호들을 전송하는 지연량들을 제1 보폭으로 늘릴 수 있다. 쓰기 트레이닝 시에, 제어기(120)의 입력 및 출력 트레이너(122)는 데이터 신호들을 전송하는 지연량들을 제1 보폭으로 늘릴 수 있다. 이후에, S210 단계가 다시 수행된다.
S220 단계에서 처음으로 패스가 판단되면, S240 단계가 수행된다. S240 단계에서, 스토리지 장치(100)는 데이터 신호들의 지연량들을 복원하고, 그리고 데이터 신호들의 지연량들을 제2 보폭으로 조절할 수 있다. 예를 들어, 출력 트레이너(117)(읽기 트레이닝 시에) 또는 입력 및 출력 트레이너(122)(쓰기 트레이닝 시에)는 데이터 신호들의 지연량들을 제1 보폭만큼 줄임으로써, 데이터 신호들의 지연량들을 복원할 수 있다.
이후에, 출력 트레이너(117) 또는 입력 및 출력 트레이너(122)는 데이터 신호들의 지연량들을 제2 보폭만큼 늘릴 수 있다. 예를 들어, 제2 보폭은 제1 보폭보다 작을 수 있다.
S250 단계에서, 스토리지 장치(100)는 데이터 스트로브 신호(DQS)와 함께 데이터 신호들을 전송할 수 있다. 출력 트레이너(117)(읽기 트레이닝 시에) 또는 입력 및 출력 트레이너(122)(쓰기 트레이닝 시에)는 제2 보폭만큼 조절된 지연량들로 데이터 신호들을 전송할 수 있다.
S260 단계에서, S220 단계와 마찬가지로, 제어기(120)의 입력 및 출력 트레이너(122)는 제2 보폭으로 지연량들이 조절되기 시작한 후에 처음으로 패스가 검출되는지 판단할 수 있다.
S260 단계에서 페일이 판단되면, S270 단계가 수행된다. S270 단계에서, S230 단계와 유사하게, 스토리지 장치(100)는 데이터 신호들의 지연량들을 제2 보폭만큼 늘릴 수 있다. 이후에 S260 단계가 수행된다.
S260 단계에서 처음으로 패스가 판단되면, S280 단계가 수행된다. S280 단계에서, 제어기(120)의 입력 및 출력 트레이너(122)는 데이터 신호들의 제1 경계들에 대응하는 지연량들을 확정할 수 있다.
도 5는 특정한 데이터 신호의 제1 경계에 대응하는 지연량을 결정(도 4의 S260 단계)하는 예를 보여준다. 도 1, 도 2 및 도 5를 참조하면, 제어기(120) 또는 불휘발성 메모리 장치(110)는 데이터 스트로브 신호(DQS)의 지연량을 고정하고, 데이터 신호(DS)의 지연량을 조절하면서 데이터 스트로브 신호(DQS) 및 데이터 신호(DS)를 반복적으로 전송할 수 있다.
데이터 스트로브 신호(DQS)는 프리엠블 구간이 경과한 후에 하이 레벨과 로우 레벨의 천이를 시작할 수 있다. 읽기 트레이닝 시에, 제어기(120)는 데이터 스트로브 신호(DQS)의 목표 타이밍(Ttar)에 동기되어 데이터 신호(DS)를 식별할 수 있다. 즉, 데이터 신호(DS)의 유효 구간(예를 들어, 육각형으로 표시된 구간)이 목표 타이밍(Ttar)과 중첩될 때, 제어기(120)는 데이터 신호(DS)를 정확하게(또는 올바르게) 식별할 수 있다.
쓰기 트레이닝 시에, 불휘발성 메모리 장치(110)는 데이터 스트로브 신호(DQS)의 목표 타이밍(Ttar)에 동기되어 데이터 신호(DS)를 식별할 수 있다. 즉, 데이터 신호(DS)의 유효 구간(예를 들어, 육각형으로 표시된 구간)이 목표 타이밍(Ttar)과 중첩될 때, 불휘발성 메모리 장치(110)는 데이터 신호(DS)를 정확하게(또는 올바르게) 식별할 수 있으며, 정확한(또는 올바른) 제2 데이터 신호를 제어기(120)에 반환할 수 있다.
제1 타이밍(T1)에, 제어기(120) 또는 불휘발성 메모리 장치(110)는 지연량을 '0'으로 조절하고 또는 '0'의 초기 지연량을 갖고 데이터 신호(DS)를 전송할 수 있다. 데이터 신호(DS)의 유효 구간이 목표 타이밍(Ttar)과 중첩되지 않으므로, 제어기(120)는 페일을 판단할 수 있다.
제어기(120) 또는 불휘발성 메모리 장치(110)는 데이터 신호(DS)의 지연량을 제1 보폭(ST1)만큼 늘릴 수 있다. 예를 들어, 제1 보폭(ST1)의 지연량은 '4'일 수 있다. 제2 타이밍(T2)에, 제어기(120) 또는 불휘발성 메모리 장치(110)는 '4'의 지연량을 갖고 데이터 신호(DS)를 전송할 수 있다. 데이터 신호(DS)의 유효 구간이 목표 타이밍(Ttar)과 중첩되지 않으므로, 제어기(120)는 페일을 판단할 수 있다.
제어기(120) 또는 불휘발성 메모리 장치(110)는 데이터 신호(DS)의 지연량을 제1 보폭(ST1)만큼 늘릴 수 있다. 제3 타이밍(T3)에, 제어기(120) 또는 불휘발성 메모리 장치(110)는 '8'의 지연량을 갖고 데이터 신호(DS)를 전송할 수 있다. 데이터 신호(DS)의 유효 구간이 목표 타이밍(Ttar)과 중첩되지 않으므로, 제어기(120)는 페일을 판단할 수 있다.
제어기(120) 또는 불휘발성 메모리 장치(110)는 데이터 신호(DS)의 지연량을 제1 보폭(ST1)만큼 늘릴 수 있다. 제4 타이밍(T4)에, 제어기(120) 또는 불휘발성 메모리 장치(110)는 '12'의 지연량을 갖고 데이터 신호(DS)를 전송할 수 있다. 데이터 신호(DS)의 유효 구간이 목표 타이밍(Ttar)과 중첩되므로, 제어기(120)는 패스를 판단할 수 있다.
제1 보폭으로 첫 번째 패스를 찾는 것은 거친 트레이닝일 수 있다. 거친 트레이닝으로 첫 번째 패스의 위치를 찾은 후에, 제2 보폭으로 첫 번째 패스를 찾는 정교한 트레이닝이 수행될 수 있다.
제어기(120) 또는 불휘발성 메모리 장치(110)는 데이터 신호(DS)의 지연량을 바로 이전의 지연량인 '8'로 복원할 수 있다. 또한, 제어기(120) 또는 불휘발성 메모리 장치(110)는 데이터 신호(DS)의 지연량을 제2 보폭(ST2)만큼 늘릴 수 있다. 예를 들어, 제2 보폭(ST2)의 지연량은 '1'일 수 있다. 제5 타이밍(T5)에, 제어기(120) 또는 불휘발성 메모리 장치(110)는 '9'의 지연량을 갖고 데이터 신호(DS)를 전송할 수 있다. 데이터 신호(DS)의 유효 구간이 목표 타이밍(Ttar)과 중첩되지 않으므로, 제어기(120)는 페일을 판단할 수 있다.
제어기(120) 또는 불휘발성 메모리 장치(110)는 데이터 신호(DS)의 지연량을 제2 보폭(ST2)만큼 늘릴 수 있다. 제6 타이밍(T6)에, 제어기(120) 또는 불휘발성 메모리 장치(110)는 '10'의 지연량을 갖고 데이터 신호(DS)를 전송할 수 있다. 데이터 신호(DS)의 유효 구간이 목표 타이밍(Ttar)과 중첩되므로, 제어기(120)는 패스를 판단할 수 있다.
제어기(120)는 '9' 또는 '10'의 지연량이 데이터 신호(DS)의 제1 경계(예를 들어, 우측 경계)에 대응함을 확정할 수 있다. 이와 같이 제1 경계를 찾는 과정은 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)의 데이터 신호들 각각에 대해 수행될 수 있다. 제어기(120)는 데이터 신호들이 제1 경계들(예를 들어, 우측 경계들)에 대응하는 지연량들을 각각 확정할 수 있다.
도 4 및 도 5를 참조하여 설명된 것과 유사하게, 데이터 신호들의 제2 경계들(예를 들어, 좌측 경계들)이 확정될 수 있다. 도 4 및 도 5를 참조하여 설명된 것과 같이 제1 경계들이 확정된 후에, 제어기(120) 또는 불휘발성 메모리 장치(110)는 데이터 신호들의 지연량들을 더 증가시키며 데이터 신호들의 제2 경계들을 찾을 수 있다.
예를 들어, 도 4의 S220 단계 및 S260 단계에서 첫 번째 패스를 판단하는 것이 첫 번째 페일을 판단하는 것으로 대체되면, 도 4의 방법은 데이터 신호들의 제2 경계들을 찾는 것에 적용될 수 있다. 도 5를 참조하여 설명된 것과 같이, 불휘발성 메모리 장치(110) 또는 제어기는 제1 보폭(ST1)으로 지연량을 증가시키며 데이터 신호(DS) 및 데이터 스트로브 신호(DQS)를 전송할 수 있다.
데이터 신호(DS)의 유효 구간이 목표 타이밍(Ttar)을 지난 때에, 제어기(120)는 첫 번째 페일을 판단할 수 있다. 불휘발성 메모리 장치(110) 또는 제어기(120)는 데이터 신호(DS)의 지연량을 바로 이전의 지연량으로 복원하고, 제2 보폭(ST2)만큼 증가시키며 첫 번째 페일을 찾을 수 있다. 정교한 트레이닝에서 첫 번째 페일이 식별된 때의 지연량이 데이터 신호(DS)의 제2 경계에 해당하는 지연량으로 확정될 수 있다.
제어기(120)는 데이터 신호들의 제1 경계들에 해당하는 지연량들 및 제2 경계들에 해당하는 지연량들로부터, 데이터 신호들의 중앙에 해당하는 지연량들을 계산할 수 있다. 제어기(120)의 입력 및 출력 트레이너(122)는 불휘발성 메모리 장치(110)의 입력 및 출력 회로(114)의 데이터 신호들의 지연량들을 읽기 트레이닝에서 계산된 중앙에 해당하는 지연량들로 설정할 수 있다.
제어기(120)의 입력 및 출력 트레이너(122)는 메모리 인터페이스(121)의 데이터 신호들의 지연량들을 쓰기 트레이닝에서 계산된 중앙에 해당하는 지연량들로 설정할 수 있다. 지연량들이 설정되면, 데이터 신호들의 중앙들은 데이터 스트로브 신호(DQS)의 목표 타이밍(Ttar)에 정렬될 수 있다.
도 5에서, 데이터 신호들의 지연량들은 제1 보폭(ST1) 및 제2 보폭(ST2)을 이용하여 조절되는 것으로 설명되었다. 그러나 데이터 신호들의 지연량들은 셋 이상의 보폭들을 이용하여 조절될 수 있다.
도 6은 불휘발성 메모리 장치(110)의 입력 및 출력 회로(114)의 예를 보여준다. 예시적으로, 입력 및 출력 회로(114)의 구성 요소들 중에서 제어기(120)로 신호를 출력하는 구성 요소들이 도 6에 도시된다. 도 2 및 도 6을 참조하면, 입력 및 출력 회로(114)는 제1 내지 제8 데이터 입력 및 출력 패드들(DQP1~DQP8), 데이터 스트로브 패드(DQSP), 제1 내지 제9 출력 지연 회로들(114_1~114_9), 그리고 버퍼(114_10)를 포함한다.
제1 내지 제8 데이터 입력 및 출력 패드들(DQP1~DQP8)은 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)에 연결될 수 있다. 데이터 스트로브 패드(DQSP)는 데이터 스트로브 신호(DQS)를 전송하는 제어 라인에 연결될 수 있다.
제1 내지 제8 출력 지연 회로들(114_1~114_8)은 제1 내지 제8 데이터 입력 및 출력 패드들(DQP1~DQP8)에 각각 연결된다. 제1 내지 제8 출력 지연 회로들(114_1~114_8)은 버퍼(114_10)로부터 전달되는 데이터 비트들을 데이터 신호들로서 제1 내지 제8 데이터 입력 및 출력 패드들(DQP1~DQP8)로 각각 전송할 수 있다. 제1 내지 제8 출력 지연 회로들(114_1~114_8)은 제어 로직 회로(116)로부터 전달되는 제1 내지 제8 출력 지연 제어 신호들(ODC1~ODC8)을 각각 수신할 수 있다.
제1 내지 제8 출력 지연 회로들(114_1~114_8)은 제1 내지 제8 출력 지연 제어 신호들(ODC1~ODC8)에 응답하여, 데이터 신호들을 출력하는 타이밍들(예를 들어, 지연량들)을 각각 개별적으로 제어할 수 있다. 예를 들어, 제1 출력 지연 회로(114_1)는 제1 출력 지연 제어 신호(ODC1)에 응답하여, 버퍼(114_10)로부터 전달되는 데이터 비트를 데이터 신호로 전송하는 타이밍(지연량)을 조절할 수 있다.
읽기 트레이닝 시에, 제1 내지 제8 출력 지연 회로들(114_1~114_8)은 제1 내지 제8 출력 지연 제어 신호들(ODC1~ODC8)에 응답하여 제1 보폭(ST1) 또는 제2 보폭(ST2)으로 데이터 신호들의 지연량들을 각각 조절할 수 있다. 읽기 트레이닝이 완료된 후에, 제1 내지 제8 출력 지연 회로들(114_1~114_8)은 제1 내지 제8 출력 지연 제어 신호들(ODC1~ODC8)에 응답하여 데이터 신호들의 지연량들을 확정할 수 있다.
제9 출력 지연 회로(114_9)는 제어 로직 회로(116)로부터 수신되는 읽기 인에이블 신호(RE)를 지연하여 데이터 스트로브 신호(DQS)로서 데이터 스트로브 패드(DQSP)로 출력할 수 있다. 제9 출력 지연 회로(114_9)는 제9 출력 지연 제어 신호(ODC9)에 응답하여, 데이터 스트로브 신호(DQS)의 지연량을 조절할 수 있다.
버퍼(114_10)는 제1 내지 제8 출력 지연 회로들(114_1~114_8)에 데이터 비트들을 전달할 수 있다. 예를 들어, 트레이닝 동작 시에, 제어 로직 회로(116)로부터 전달되는 데이터 비트들(DB)이 버퍼(114_10)에 저장되고 그리고 출력 지연 회로들(114_1~114_8)로 전달될 수 있다. 트레이닝 동작을 수행하지 않는 통상적인 동작 시에, 페이지 버퍼 회로(113)로부터 전달되는 데이터(DATA)가 버퍼(114_10)에 저장되고 그리고 출력 지연 회로들(114_1~114_8)로 전달될 수 있다.
도 7은 도 6의 출력 지연 회로(114_1)의 예를 보여준다. 도 1, 도 2, 도 6 및 도 7을 참조하면, 출력 지연 회로(114_1)는 제1 지연 그룹(DG1), 제2 지연 그룹(DG2), 그리고 멀티플렉서(MUX)를 포함할 수 있다. 제1 지연 그룹(DG1) 및 제2 지연 그룹(DG2)은 순차 연결될 수 있다. 제1 지연 그룹(DG1)에 버퍼(114_10)로부터 전달되는 데이터 비트가 입력될 수 있다. 제2 지연 그룹(DG2)에 제1 지연 그룹(DG1)의 출력이 전달될 수 있다.
제1 지연 그룹(DG1) 및 제2 지연 그룹(DG2) 각각은 네 개의 지연기들(D)을 포함할 수 있다. 제1 지연 그룹(DG1) 및 제2 지연 그룹(DG2)의 각각은 데이터 신호의 지연량을 제1 보폭(ST1)만큼 늘릴 수 있다. 제1 보폭(ST1)의 지연량은 네 개의 지연기들(D)에 해당하며, '4'의 지연량으로 불릴 수 있다. 지연기들(D)의 각각은 데이터 신호의 지연량을 제2 보폭(ST2)만큼 늘릴 수 있다. 제2 보폭(ST2)의 지연량은 '1'일 수 있다.
멀티플렉서(MUX)는 버퍼(114_10)로부터 출력되는 데이터 비트, 제1 지연 그룹(DG1) 및 제2 지연 그룹(DG2)에 의해 지연된 데이터 비트들, 그리고 제1 지연 그룹(DG1) 및 제2 지연 그룹(DG2)의 내부의 지연기들(D)에 의해 지연된 데이터 비트들(예를 들어, 서로 다른 지연량들을 갖는 데이터 비트들)을 수신할 수 있다.
멀티플렉서(MUX)는 제1 출력 지연 제어 신호(ODC1)에 응답하여, 입력된 데이터 비트들 중 하나의 데이터 비트를 데이터 신호로서 데이터 입력 및 출력 패드(DQP1)로 전송할 수 있다. 즉, 제어 로직 회로(116) 또는 출력 트레이너(117)는 출력 지연 제어 신호(ODC1)에 의해 선택되는 데이터 비트를 조절함으로써, 출력 지연 회로(114_1)가 데이터 비트를 출력하는 타이밍(예를 들어, 지연량)을 조절할 수 있다.
도 7에 출력 지연 회로(114_1)만이 도시되지만, 다른 출력 지연 회로들(114_2~114_9) 도한 도 7에 도시된 것과 동일한 구조들을 가질 수 있다. 제어 로직 회로(116)의 출력 트레이너(117)는 제1 내지 제89 출력 지연 제어 신호들(ODC1~ODC9)을 개별적으로 조절함으로써, 제1 내지 제8 출력 지연 회로들(114_1~114_8)이 데이터 신호들을 전송하는 타이밍들(예를 들어, 지연량들) 및 제9 출력 지연 회로(114_9)가 데이터 스트로브 신호(DQS)를 전송하는 타이밍을 개별적으로 제어할 수 있다.
도 7에서, 두 개의 지연 그룹들이 도시되지만, 출력 지연 회로(114_1)에 포함되는 지연 그룹들의 수는 한정되지 않는다. 또한, 도 7에서 하나의 지연 그룹에 네 개의 지연기들이 포함되지만, 하나의 지연 그룹에 포함되는 지연기들의 수는 한정되지 않는다.
도 8은 제어기(120)의 메모리 인터페이스(121)의 예를 보여준다. 예시적으로, 메모리 인터페이스(121)의 구성 요소들 중에서 제어기(120)가 불휘발성 메모리 장치(110)로 신호를 전송하는 것과 연관된 구성 요소들이 도 8에 도시된다. 도 1 및 도 8을 참조하면, 메모리 인터페이스(121)는 제1 내지 제8 데이터 입력 및 출력 패드들(DQP1~DQP8), 데이터 스트로브 패드(DQSP), 제1 내지 제8 입력 지연 회로들(121_1~121_8), 그리고 데이터 스트로브 신호(DQS) 생성기(121_9)를 포함한다.
제1 내지 제8 데이터 입력 및 출력 패드들(DQP1~DQP8)은 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)에 연결된다. 데이터 스트로브 패드(DQSP)는 데이터 스트로브 신호(DQS)를 전달하는 제어 라인에 연결된다.
제1 내지 제8 입력 지연 회로들(121_1~121_8)은 제1 내지 제8 데이터 입력 및 출력 패드들(DQP1~DQP8)에 각각 연결된다. 트레이닝 동작 시에, 제1 내지 제8 입력 지연 회로들(121_1~121_8)은 메모리(123)로부터 입력 및 출력 트레이너(122)를 통해 전달되는 데이터 비트들을 데이터 신호들로서 제1 내지 제8 데이터 입력 및 출력 패드들(DQP1~DQP8)로 각각 전송할 수 있다. 트레이닝 동작이 아닌 통상의 동작 시에, 제1 내지 제8 입력 지연 회로들(121_1~121_8)은 제어기(120)에 의해 요청된 데이터 비트들을 데이터 신호들로서 제1 내지 제8 데이터 입력 및 출력 패드들(DQP1~DQP8)로 각각 전송할 수 있다.
트레이닝 동작 시에, 제1 내지 제8 입력 지연 회로들(121_1~121_8)은 입력 및 출력 트레이너(122)로부터 전달되는 제1 내지 제8 입력 지연 제어 신호들(IDC1~IDC8)을 각각 수신할 수 있다.
제1 내지 제8 입력 지연 회로들(121_1~121_8)은 입력 지연 제어 신호들(IDC1~IDC8)에 응답하여, 데이터 신호들을 전송하는 타이밍들(예를 들어, 지연량들)을 각각 개별적으로 제어할 수 있다. 예를 들어, 제1 입력 지연 회로(121_1)는 제1 입력 지연 제어 신호(IDC1)에 응답하여, 입력 및 출력 트레이너(122)로부터 전달되는 데이터 신호를 전송하는 타이밍(지연량)을 조절할 수 있다. 예시적으로, 제1 내지 제8 입력 지연 회로들(121_1~121_8)은 도 7에 도시된 것과 동일한 구조를 가질 수 있다.
쓰기 트레이닝 시에, 제1 내지 제8 입력 지연 회로들(121_1~121_8)은 제1 내지 제8 입력 지연 제어 신호들(IDC1~IDC8)에 응답하여 제1 보폭(ST1) 또는 제2 보폭(ST2)으로 데이터 신호들의 지연량들을 각각 조절할 수 있다. 쓰기 트레이닝이 완료된 후에, 제1 내지 제8 입력 지연 회로들(121_1~121_8)은 제1 내지 제8 입력 지연 제어 신호들(IDC1~IDC8)에 응답하여 데이터 신호들의 지연량들을 확정할 수 있다.
데이터 스트로브 신호(DQS) 생성기(121_9)는 클럭(CLK)을 수신할 수 있다. 클럭(CLK)은 제어기(120)의 내부에서 생성되거나 또는 외부 장치로부터 제어기(120)로 공급될 수 있다. 데이터 스트로브 신호(DQS) 생성기(121_9)는 클럭(CLK)을 이용하여 데이터 스트로브 신호(DQS)를 생성할 수 있다.
데이터 스트로브 신호(DQS) 생성기(121_9)는 입력 및 출력 트레이너(122)로부터 제9 입력 지연 제어 신호(IDC9)를 수신할 수 있다. 제9 입력 지연 제어 신호(IDC9)에 응답하여, 데이터 스트로브 신호(DQS) 생성기(121_9)는 데이터 스트로브 신호(DQS)를 전송하는 타이밍(예를 들어, 지연량)을 조절할 수 있다. 예시적으로, 데이터 스트로브 신호(DQS) 생성기(121_9)는 도 7에 도시된 것과 동일한 구조를 가질 수 있다.
도 9는 제1 내지 제8 데이터 입력 및 출력 라인들(DQ1~DQ8)의 데이터 신호들의 지연량들이 데이터 스트로브 신호(DQS)에 정렬된 예를 보여준다. 데이터 신호들이 데이터 스트로브 신호(DQS)에 정렬된 때에, 불휘발성 메모리 장치(110) 또는 제어기(120)는 도 9에 도시된 바와 같이 데이터 스트로브 신호(DQS) 및 데이터 신호들을 전송할 수 있다. 데이터 신호들의 중앙들은 데이터 스트로브 신호(DQS)가 토글하는 엣지에 동기될 수 있다.
예시적으로, 입력 및 출력 회로(114) 또는 메모리 인터페이스(121)의 구조적 특성 또는 공정상의 변인에 의해, 데이터 신호들의 유효 구간들은 서로 다를 수 있다. 제어기(120)는 읽기 트레이닝이 완료된 후에, 유효 구간이 가장 짧은 데이터 신호의 제1 경계 및 제2 경계에 해당하는 지연량들을 저장할 수 있다.
예를 들어, 제어기(120)는 유효 구간이 가장 짧은 제5 데이터 입력 및 출력 라인(DQ5)의 데이터 신호의 제1 경계에 해당하는 지연량(파선) 또는 해당 지연량으로부터 마진(margin)에 해당하는 지연량을 감한 지연량(1점 쇄선)을 제1 검증 값으로 저장할 수 있다.
제어기(120)는 유효 구간이 가장 짧은 제5 데이터 입력 및 출력 라인(DQ5)의 데이터 신호의 제2 경계에 해당하는 지연량(파선) 또는 해당 지연량으로부터 마진(margin)에 해당하는 지연량을 더한 지연량(1점 쇄선)을 제2 검증 값으로 저장할 수 있다.
마찬가지로, 제어기(120)는 쓰기 트레이닝이 완료된 후에 제1 검증 값 및 제2 검증 값을 저장할 수 있다. 제어기(120)는 제1 검증 값 및 제2 검증 값을 이용하여, 데이터 신호들의 지연량들이 변하거나 왜곡되었는지를 검증할 수 있다.
도 10은 스토리지 장치(100)가 데이터 신호들의 지연량들을 검증하는 방법의 예를 보여주는 순서도이다. 도 1, 도 2 및 도 10을 참조하면, S310 단계에서, 제어기(120)는 트레이닝 동작(예를 들어, 읽기 트레이닝 또는 쓰기 트레이닝)이 완료된 후에, 제1 검증 값 및 제2 검증 값을 저장할 수 있다.
S320 단계에서, 제어기(120)는 검증 이벤트가 발생하는지 판단할 수 있다. 예를 들어, 읽기 에러가 발생할 때, 데이터의 전송 에러가 발생할 때, 제어기(120)는 검증 이벤트가 발생한 것으로 판단할 수 있다. 검증 이벤트가 발생하지 않으면, 검증 없이 프로세스가 종료된다. 검증 이벤트가 발생하면, S330 단계가 수행된다.
S330 단계에서, 스토리지 장치(100)는 검증 값들을 이용하여 데이터 신호들의 지연량들을 검증할 수 있다. S340 단계에서, 지연 에러가 발생한 것으로 판단되면, S350 단계가 수행된다. S350 단계에서, 스토리지 장치(100)는 트레이닝 동작(예를 들어, 읽기 트레이닝 또는 쓰기 트레이닝)을 다시 수행하여, 데이터 신호들의 지연량들을 다시 정렬할 수 있다.
S340 단계에서 지연 에러가 발생하지 않은 것으로 판단되면, S360 단계가 수행된다. S360 단계에서, 스토리지 장치(100)는 에러 처리를 수행할 수 있다. 예를 들어, 스토리지 장치(100)는 에러를 처리하기 위해 주어진 코드를 수행하거나, 구성 요소들 중 일부를 리셋하거나, 또는 구성 요소들 전부를 리셋할 수 있다.
도 11은 제1 검증 값 및 제2 검증 값과 비교하여 데이터 신호들의 지연량들이 변경된 예를 보여준다. 도 9와 비교하면, 데이터 신호들의 전송 타이밍들이 당겨질 수 있다. 검증 이벤트가 발생한 때에, 불휘발성 메모리 장치(110) 또는 제어기(120)는 데이터 스트로브 신호(DQS)의 지연량을 제1 검증 값 및 제2 검증 값으로 설정하고 데이터가 정확하게(또는 올바르게) 전달되는지 판단할 수 있다.
예시적으로, 제1 검증 값 및 제2 검증 값으로, 제5 데이터 입력 및 출력 라인(DQ5)의 데이터 신호의 경계에 해당하는 지연량들(파선)이 사용되는 예가 도 11에 도시된다.
불휘발성 메모리 장치(110) 또는 제어기(120)는 데이터 스트로브 신호(DQS)의 지연량을 제1 검증 값으로 조절하여, 제1 데이터 스트로브 신호(DQS1) 및 데이터 신호들을 전송할 수 있다. 이때, 제어기(120) 또는 불휘발성 메모리 장치(110)에서 제5 데이터 입력 및 출력 라인(DQ5)의 데이터 신호가 정확하지 않게(또는 올바르지 않게) 식별된다. 데이터 신호들 중 적어도 하나가 정확하지 않게 식별되면, 데이터 신호들의 지연량들이 당겨진 것이 확인될 수 있다.
불휘발성 메모리 장치(110) 또는 제어기(120)는 데이터 스트로브 신호(DQS)의 지연량을 제2 검증 값으로 조절하여, 제2 데이터 스트로브 신호(DQS2) 및 데이터 신호들을 전송할 수 있다. 이때, 제어기(120) 또는 불휘발성 메모리 장치(110)에서 데이터 신호들이 정확하게(또는 올바르게) 식별된다. 데이터 신호들 중 적어도 하나가 정확하지 않게 식별되면, 데이터 신호들의 지연량들이 늘어난 것이 확인될 수 있다.
도 12는 스토리지 장치(100)가 데이터 스트로브 신호(DQS)의 변화에 따라 데이터 스트로브 신호의 지연량을 조절하는 예를 보여주는 순서도이다. 도 1, 도 2 및 도 12를 참조하면, S410 단계에서, 제어기(120)는 트레이닝 동작 시에 데이터 스트로브 신호(DQS)의 하나의 주기의 길이를 저장할 수 있다.
S420 단계에서, 제어기(120)는 조절 이벤트가 발생하는지 판단할 수 있다. 예를 들어, 데이터 스트로브 신호(DQS)의 하나의 주기의 길이가 문턱 이상 변화할 때, 또는 온도가 문턱 이상 변화할 때 발생할 수 있다. 조절 이벤트가 발생하지 않으면 프로세스가 종료된다. 조절 이벤트가 발생하면 S430 단계가 수행된다. S430 단계에서, 제어기(120)는 데이터 스트로브 신호(DQS)의 저장된 길이 및 현재 길이 사이의 차이에 기반하여 데이터 스트로브 신호(DQS)의 지연량을 조절할 수 있다.
도 13은 스토리지 장치(100)가 데이터 스트로브 신호(DQS)의 하나의 주기의 길이를 측정하는 예를 보여준다. 도 1, 도 2 및 도 13을 참조하면, 제어기(120)는 데이터 스트로브 신호(DQS)의 하나의 주기의 길이를 잠금 값(lock value)으로 측정할 수 있다.
예를 들어, 제어기(120)는 데이터 스트로브 신호(DQS)의 하나의 주기가 몇 개의 지연기들에 해당하는지를 잠금 값으로 검출할 수 있다. 예를 들어, 트레이닝 동작이 수행된 때에, 잠금 값은 '100'일 수 있다. 즉, 데이터 스트로브 신호(DQS)의 하나의 주기는 '100'의 지연량으로 나타내어질 수 있다.
데이터 스트로브 신호(DQS)의 하나의 주기는 360°의 위상으로 나타내어질 수 있다. 트레이닝 동작이 완료되면, 데이터 스트로브 신호는 데이터 신호들, 예를 들어 제1 데이터 입력 및 출력 라인(DQ1)의 데이터 신호보다 90° 지연될 수 있다. 데이터 스트로브 신호(DQS)가 90° 지연되면, 데이터 스트로브 신호(DQS)의 토글 타이밍은 데이터 신호의 중앙에 정렬될 수 있다.
예를 들어, 데이터 스트로브 신호(DQS)의 잠금 값이 '100'일 때, 데이터 신호와 데이터 스트로브 신호(DQS) 사이의 지연량은 '100'의 1/4인 '25'로 조절될 수 있다. 데이터 스트로브 신호(DQS)의 총 지연량에 따라 데이터 스트로브 신호(DQS)가 천이하기 시작하는 타이밍이 결정될 수 있다. 예를 들어, 데이터 스트로브 신호(DQS)의 총 지연량은 '30'일 수 있다. 데이터 신호의 지연량에 따라 데이터 신호가 전송되기 시작하는 타이밍이 결정될 수 있다. 예를 들어, 데이터 신호의 지연량은 '5'일 수 있다.
그러나 데이터 신호와 데이터 스트로브 신호(DQS) 사이의 정렬은 데이터 스트로브 신호(DQS)의 하나의 주기의 길이(또는 주파수)가 달라짐에 따라 어긋날 수 있다.
도 14는 데이터 스트로브 신호(DQS)의 잠금 값이 감소한 예를 보여준다. 도 1, 도 2 및 도 14를 참조하면, 데이터 스트로브 신호(DQS)의 잠금 값은 '100'으로부터 '80'으로 감소한다. 데이터 스트로브 신호(DQS)의 잠금 값이 감소하는 것과 동일한 비율로, 데이터 신호들, 예를 들어 제1 데이터 입력 및 출력 라인(DQ1)의 데이터 신호의 유효 구간 또한 감소할 수 있다.
데이터 스트로브 신호(DQS)의 잠금 값이 감소하여도, 데이터 스트로브 신호(DQS)의 지연량 및 데이터 신호의 지연량은 유지될 수 있다. 즉, 데이터 스트로브 신호(DQS)가 천이하기 시작하는 타이밍은 '30'의 지연량에 해당하고, 데이터 신호가 전송되기 시작하는 타이밍은 '5'의 지연량에 해당할 수 있다. 이때, 도 14에 도시된 바와 같이, 데이터 스트로브 신호(DQS)의 천이 타이밍과 데이터 신호의 중앙의 정렬이 어긋날 수 있다.
도 15는 데이터 스트로브 신호(DQS)의 변화에 따라 데이터 신호들의 지연량들을 조절하는 예를 보여준다. 도 1, 도 2 및 도 15를 참조하면, 데이터 스트로브 신호(DQS)의 잠금 값이 '20' 감소한 만큼, 데이터 스트로브 신호(DQS)의 총 지연량은 '20'의 1/4인 '5'만큼 감소할 수 있다.
데이터 스트로브 신호(DQS)의 지연량이 '5'만큼 감소하면, 데이터 스트로브 신호(DQS)와 데이터 신호, 예를 들어 제1 데이터 입력 및 출력 라인(DQ1)의 데이터 신호 사이의 지연량의 차이는 '20'이 된다. '20'의 지연량은 데이터 스트로브 신호(DQS)의 하나의 주기의 길이의 1/4에 해당하며, 90°의 위상에 해당할 수 있다. 따라서, 데이터 스트로브 신호(DQS)의 토글 타이밍과 데이터 신호들의 중앙들이 다시 정렬될 수 있다.
도 16은 데이터 스트로브 신호(DQS)의 잠금 값이 증가한 예를 보여준다. 도 1, 도 2 및 도 16을 참조하면, 데이터 스트로브 신호(DQS)의 잠금 값은 '100'으로부터 '120'으로 증가한다. 데이터 스트로브 신호(DQS)의 잠금 값이 증가하는 것과 동일한 비율로, 데이터 신호들, 예를 들어 제1 데이터 입력 및 출력 라인(DQ1)의 데이터 신호의 유효 구간 또한 증가할 수 있다.
데이터 스트로브 신호(DQS)의 잠금 값이 증가하여도, 데이터 스트로브 신호(DQS)의 지연량 및 데이터 신호의 지연량은 유지될 수 있다. 즉, 데이터 스트로브 신호(DQS)가 천이하기 시작하는 타이밍은 '30'의 지연량에 해당하고, 데이터 신호가 전송되기 시작하는 타이밍은 '5'의 지연량에 해당할 수 있다. 이때, 도 14에 도시된 바와 같이, 데이터 스트로브 신호(DQS)의 천이 타이밍과 데이터 신호의 중앙의 정렬이 어긋날 수 있다.
도 17은 데이터 스트로브 신호(DQS)의 변화에 따라 데이터 신호들의 지연량들을 조절하는 예를 보여준다. 도 1, 도 2 및 도 17을 참조하면, 데이터 스트로브 신호(DQS)의 잠금 값이 '20' 증가한 만큼, 데이터 스트로브 신호(DQS)의 총 지연량은 '20'의 1/4인 '5'만큼 증가할 수 있다.
데이터 스트로브 신호(DQS)의 지연량이 '5'만큼 증가하면, 데이터 스트로브 신호(DQS)와 데이터 신호, 예를 들어 제1 데이터 입력 및 출력 라인(DQ1)의 데이터 신호 사이의 지연량의 차이는 '30'이 된다. '30'의 지연량은 데이터 스트로브 신호(DQS)의 하나의 주기의 길이의 1/4에 해당하며, 90°의 위상에 해당할 수 있다. 따라서, 데이터 스트로브 신호(DQS)의 토글 타이밍과 데이터 신호들의 중앙들이 다시 정렬될 수 있다.
도 13 내지 도 17에서, 데이터 스트로브 신호(DQS)의 주기의 길이(또는 주파수)의 변화에 따라 데이터 스트로브 신호(DQS)의 지연량으 조절되는 것으로 설명되었다. 그러나 데이터 스트로브 신호(DQS) 대신에 데이터 신호들의 지연량들이 공통으로 조절될 수 있다.
예를 들어, 데이터 스트로브 신호(DQS)의 지연량이 '5'만큼 감소되어야 할 때(도 14 및 도 15 참조), 데이터 스트로브 신호(DQS) 대신에 데이터 신호들의 지연량들이 '5'만큼 증가될 수 있다. 데이터 스트로브 신호(DQS)의 지연량이 '5'만큼 증가되어야 할 때(도 16 및 도 17 참조), 데이터 스트로브 신호(DQS) 대신에 데이터 신호들의 지연량들이 '5'만큼 감소할 수 있다.
상술된 바와 같이, 본 발명의 실시 예에 따른 스토리지 장치(100)는 제1 보폭 및 제2 보폭으로 트레이닝 동작을 수행할 수 있다. 따라서, 트레이닝 동작에 필요한 시간이 감소한다. 또한, 본 발명의 실시 예에 따른 스토리지 장치(100)는 제1 검증 값 및 제2 검증 값으로 데이터 신호들의 지연량들을 검증할 수 있다. 따라서, 스토리지 장치(100)의 신뢰성이 향상된다.
또한, 본 발명의 실시 예에 따른 스토리지 장치(100)는 데이터 스트로브 신호(DQS)의 주기의 길이(또는 주파수)의 변화에 따라 데이터 스트로브 신호(DQS)의 지연량을 동적으로 조절한다. 따라서, 데이터 스트로브 신호(DQS)의 주기의 길이(또는 주파수)가 의도적으로 또는 의도하지 않았지만 변하는 경우, 트레이닝 동작을 다시 수행할 필요 없이 데이터 신호들과 데이터 스트로브 신호가 정렬될 수 있다.
상술된 바와 같이, 제1, 제2, 제3 등의 용어들을 사용하여 스토리지 장치(100)의 구성 요소들이 설명되었다. 그러나 제1, 제2, 제3 등과 같은 용어들은 구성 요소들을 서로 구별하기 위해 사용되며, 본 발명을 한정하지 않는다. 예를 들어, 제1, 제2, 제3 등과 같은 용어들은 순서 또는 임의의 형태의 수치적 의미를 내포하지 않는다.
상술된 실시 예들에서, 블록들을 사용하여 본 발명의 실시 예들에 따른 구성 요소들이 참조되었다. 블록들은 IC (Integrated Circuit), ASIC (Application Specific IC), FPGA (Field Programmable Gate Array), CPLD (Complex Programmable Logic Device) 등과 같은 다양한 하드웨어 장치들, 하드웨어 장치들에서 구동되는 펌웨어, 응용과 같은 소프트웨어, 또는 하드웨어 장치와 소프트웨어가 조합된 형태로 구현될 수 있다. 또한, 블록들은 IC 내의 반도체 소자들로 구성되는 회로들 또는 IP (Intellectual Property)를 포함할 수 있다.
상술된 내용은 본 발명을 실시하기 위한 구체적인 실시 예들이다. 본 발명은 상술된 실시 예들뿐만 아니라, 단순하게 설계 변경되거나 용이하게 변경할 수 있는 실시 예들 또한 포함할 것이다. 또한, 본 발명은 실시 예들을 이용하여 용이하게 변형하여 실시할 수 있는 기술들도 포함될 것이다. 따라서, 본 발명의 범위는 상술된 실시 예들에 국한되어 정해져서는 안되며 후술하는 특허청구범위뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 할 것이다.
100: 스토리지 장치
110: 불휘발성 메모리 장치
111: 메모리 셀 어레이
112: 행 디코더 회로
113: 페이지 버퍼 회로
114: 입력 및 출력 회로
115: 패스-페일 체크 회로
116: 제어 로직 회로
117: 출력 트레이너
120: 제어기
121: 메모리 인터페이스
122: 입력 및 출력 트레이너
123: 메모리
110: 불휘발성 메모리 장치
111: 메모리 셀 어레이
112: 행 디코더 회로
113: 페이지 버퍼 회로
114: 입력 및 출력 회로
115: 패스-페일 체크 회로
116: 제어 로직 회로
117: 출력 트레이너
120: 제어기
121: 메모리 인터페이스
122: 입력 및 출력 트레이너
123: 메모리
Claims (10)
- 불휘발성 메모리 장치; 그리고
데이터 입력 및 출력 라인을 통해 상기 불휘발성 메모리 장치와 데이터 신호를 교환하고, 그리고 데이터 스트로브 라인을 통해 상기 불휘발성 메모리 장치와 데이터 스트로브 신호를 교환하도록 구성되는 제어기를 포함하고,
트레이닝 동작 시에, 상기 불휘발성 메모리 장치 및 상기 제어기 중 적어도 하나는 상기 데이터 신호의 지연량을 제1 보폭(stride)으로 조절하는 거친 트레이닝 및 상기 데이터 신호의 상기 지연량을 상기 제1 보폭보다 작은 제2 보폭으로 조절하는 정교한 트레이닝을 수행하도록 구성되는 스토리지 장치. - 제1항에 있어서,
상기 트레이닝 동작은 읽기 트레이닝을 포함하고,
상기 읽기 트레이닝 시에, 상기 불휘발성 메모리 장치는 상기 데이터 신호의 상기 지연량을 조절하며 상기 데이터 신호 및 상기 데이터 스트로브 신호를 상기 제어기로 전송하고,
상기 제어기는 상기 데이터 스트로브 신호에 동기되어 상기 데이터 신호를 식별하고,
상기 제어기에서 상기 데이터 신호가 정확하지 않게 식별되는 동안, 상기 불휘발성 메모리 장치는 상기 데이터 신호의 상기 지연량을 상기 제1 보폭만큼 증가시키며 상기 데이터 신호 및 상기 데이터 스트로브 신호를 상기 제어기로 전송하는 스토리지 장치. - 제2항에 있어서,
상기 제어기에서 상기 데이터 신호가 처음으로 정확히 식별될 때, 상기 불휘발성 메모리 장치는 상기 데이터 신호의 상기 지연량을 상기 제1 보폭만큼 줄이고, 상기 데이터 신호의 상기 지연량을 상기 제2 보폭만큼 증가시키고, 그리고 상기 데이터 신호 및 상기 데이터 스트로브 신호를 상기 제어기로 전송하는 스토리지 장치. - 제3항에 있어서,
상기 불휘발성 메모리 장치가 상기 지연량을 상기 제2 보폭만큼 증가시킨 후에, 상기 제어기는 상기 제어기에서 상기 데이터 신호가 정확하지 않게 식별되는 동안, 상기 불휘발성 메모리 장치는 상기 데이터 신호의 상기 지연량을 상기 제2 보폭만큼 증가시키고, 그리고 상기 데이터 신호 및 상기 데이터 스트로브 신호를 상기 제어기로 전송하는 스토리지 장치. - 제4항에 있어서,
상기 데이터 신호의 상기 지연량을 상기 제2 보폭만큼 증가시키는 상기 정교한 트레이닝이 시작된 후에, 상기 제어기에서 상기 데이터 신호가 처음으로 정확하게 식별될 때, 상기 제어기는 상기 데이터 신호의 경계를 식별하는 스토리지 장치. - 제1항에 있어서,
상기 트레이닝 동작은 읽기 트레이닝을 포함하고,
상기 읽기 트레이닝 시에, 상기 불휘발성 메모리 장치는 상기 데이터 신호의 상기 지연량을 조절하며 상기 데이터 신호 및 상기 데이터 스트로브 신호를 상기 제어기로 전송하고,
상기 제어기는 상기 데이터 스트로브 신호에 동기되어 상기 데이터 신호를 식별하고,
상기 제어기에서 상기 데이터 신호가 정확하게 식별되는 동안, 상기 불휘발성 메모리 장치는 상기 데이터 신호의 상기 지연량을 상기 제1 보폭만큼 증가시키며 상기 데이터 신호 및 상기 데이터 스트로브 신호를 상기 제어기로 전송하는 스토리지 장치. - 제6항에 있어서,
상기 제어기에서 상기 데이터 신호가 처음으로 정확하지 않게 식별될 때, 상기 불휘발성 메모리 장치는 상기 데이터 신호의 상기 지연량을 상기 제1 보폭만큼 줄이고, 상기 데이터 신호의 상기 지연량을 상기 제2 보폭만큼 증가시키고, 그리고 상기 데이터 신호 및 상기 데이터 스트로브 신호를 상기 제어기로 전송하는 스토리지 장치. - 제1항에 있어서,
상기 트레이닝 동작은 쓰기 트레이닝을 포함하고,
상기 쓰기 트레이닝 시에, 상기 제어기는 상기 데이터 신호의 상기 지연량을 조절하며 상기 데이터 신호 및 상기 데이터 스트로브 신호를 상기 불휘발성 메모리 장치로 전송하고, 그리고 상기 불휘발성 메모리 장치로부터 상기 데이터 신호에 대응하는 제2 데이터 신호 및 제2 데이터 스트로브 신호를 수신하고,
상기 제어기는 상기 제2 데이터 스트로브 신호에 동기되어 상기 제2 데이터 신호를 식별하고,
상기 제어기에서 상기 제2 데이터 신호가 정확하지 않게 식별되는 동안, 상기 제어기는 상기 데이터 신호의 상기 지연량을 상기 제1 보폭만큼 증가시키며 상기 데이터 신호 및 상기 데이터 스트로브 신호를 상기 불휘발성 메모리 장치로 전송하고, 그리고 상기 불휘발성 메모리 장치로부터 상기 데이터 신호에 대응하는 제2 데이터 신호 및 상기 데이터 스트로브 신호를 수신하고,
상기 제어기에서 상기 제2 데이터 신호가 처음으로 정확하게 식별될 때, 상기 제어기는 상기 데이터 신호의 상기 지연량을 상기 제1 보폭만큼 줄이고, 상기 데이터 신호의 상기 지연량을 상기 제2 보폭만큼 증가시키고, 그리고 상기 데이터 신호 및 상기 데이터 스트로브 신호를 상기 불휘발성 메모리 장치로 전송하고, 그리고 상기 불휘발성 메모리 장치로부터 상기 제2 데이터 신호 및 상기 제2 데이터 스트로브 신호를 수신하는 스토리지 장치. - 불휘발성 메모리 장치; 그리고
데이터 입력 및 출력 라인들을 통해 상기 불휘발성 메모리 장치와 데이터 신호들을 교환하고, 그리고 데이터 스트로브 라인을 통해 상기 불휘발성 메모리 장치와 데이터 스트로브 신호를 교환하도록 구성되는 제어기를 포함하고,
트레이닝 동작 시에, 상기 제어기 및 상기 불휘발성 메모리 장치는 상기 데이터 신호들의 중앙 위치들 및 상기 데이터 스트로브 신호가 천이하는 타이밍을 정렬하도록 구성되고,
상기 제어기는 상기 데이터 신호들 중 가장 폭이 좁은 신호의 경계들의 정보들을 저장하고,
상기 트레이닝 동작이 완료된 후에, 상기 제어기는 상기 경계들의 정보들을 이용하여 상기 데이터 신호들의 상기 중앙 위치들과 상기 데이터 스트로브 신호가 천이하는 상기 타이밍의 정렬을 검증하도록 구성되는 스토리지 장치. - 불휘발성 메모리 장치; 그리고
데이터 입력 및 출력 라인을 통해 상기 불휘발성 메모리 장치와 데이터 신호를 교환하고, 그리고 데이터 스트로브 라인을 통해 상기 불휘발성 메모리 장치와 데이터 스트로브 신호를 교환하도록 구성되는 제어기를 포함하고,
트레이닝 동작 시에, 상기 제어기 및 상기 불휘발성 메모리 장치는 상기 데이터 신호를 전송하는 제1 지연량을 조절함으로써, 상기 데이터 신호의 중앙 위치 및 상기 데이터 스트로브 신호가 천이하는 타이밍을 정렬하도록 구성되고,
상기 제어기 및 상기 불휘발성 메모리 장치 중 적어도 하나는 상기 데이터 스트로브 신호의 하나의 주기의 길이의 변화에 따라 상기 데이터 스트로브 신호의 제2 지연량을 조절하도록 구성되는 스토리지 장치.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180135620A KR102693546B1 (ko) | 2018-11-07 | 2018-11-07 | 스토리지 장치 |
US16/410,370 US10930329B2 (en) | 2018-11-07 | 2019-05-13 | Storage device adjusting a timing of a data signal and a data strobe signal |
CN201910627799.XA CN111161780A (zh) | 2018-11-07 | 2019-07-12 | 存储装置 |
US17/178,397 US11158359B2 (en) | 2018-11-07 | 2021-02-18 | Storage device adjusting a timing of a data signal and a data strobe signal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180135620A KR102693546B1 (ko) | 2018-11-07 | 2018-11-07 | 스토리지 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200052562A true KR20200052562A (ko) | 2020-05-15 |
KR102693546B1 KR102693546B1 (ko) | 2024-08-08 |
Family
ID=70458822
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180135620A KR102693546B1 (ko) | 2018-11-07 | 2018-11-07 | 스토리지 장치 |
Country Status (3)
Country | Link |
---|---|
US (2) | US10930329B2 (ko) |
KR (1) | KR102693546B1 (ko) |
CN (1) | CN111161780A (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11756599B2 (en) | 2020-12-15 | 2023-09-12 | Samsung Electronics Co., Ltd. | Storage controller, storage device, and operation method of storage device |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102687267B1 (ko) | 2016-12-15 | 2024-07-22 | 에스케이하이닉스 주식회사 | 반도체 장치, 반도체 시스템 및 트레이닝 방법 |
CN108646984B (zh) * | 2018-05-16 | 2020-01-03 | 华为技术有限公司 | 一种dqs位置调整方法和装置 |
KR102478044B1 (ko) * | 2018-05-18 | 2022-12-16 | 에스케이하이닉스 주식회사 | 반도체 시스템 |
KR102693546B1 (ko) | 2018-11-07 | 2024-08-08 | 삼성전자주식회사 | 스토리지 장치 |
JP2021149659A (ja) * | 2020-03-19 | 2021-09-27 | キオクシア株式会社 | 半導体集積回路、メモリコントローラ、およびメモリシステム |
JP2022010951A (ja) * | 2020-06-29 | 2022-01-17 | キオクシア株式会社 | 半導体記憶装置 |
US11809719B2 (en) | 2021-02-02 | 2023-11-07 | Nvidia Corporation | Techniques for performing write training on a dynamic random-access memory |
US11742007B2 (en) * | 2021-02-02 | 2023-08-29 | Nvidia Corporation | Techniques for performing write training on a dynamic random-access memory |
CN115599715A (zh) * | 2021-04-27 | 2023-01-13 | 长江存储科技有限责任公司(Cn) | 存储器写入的训练方法和系统 |
US12019512B2 (en) * | 2022-06-01 | 2024-06-25 | Micron Technology, Inc. | System and method to control memory error detection with automatic disabling |
KR20240098639A (ko) * | 2022-12-21 | 2024-06-28 | 삼성전자주식회사 | 저장 장치 및 그것의 데이터 트레이닝 방법 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090154256A1 (en) * | 2007-10-24 | 2009-06-18 | Samsung Electronics Co., Ltd. | Integrated Circuit Memory Devices Including Delayed Clock Inputs for Input/Output Buffers and Related Systems and Methods |
KR20100117345A (ko) * | 2009-04-24 | 2010-11-03 | 삼성전자주식회사 | 반도체 메모리 장치 |
KR20140062410A (ko) * | 2012-11-14 | 2014-05-23 | 후지쯔 세미컨덕터 가부시키가이샤 | 병직렬 변환 회로, 인터페이스 회로 및 제어 장치 |
KR20160144545A (ko) * | 2015-06-08 | 2016-12-19 | 삼성전자주식회사 | 스토리지 장치 및 스토리지 장치의 동작 방법 |
KR20170008062A (ko) * | 2015-07-13 | 2017-01-23 | 에스케이하이닉스 주식회사 | 트레이닝 동작을 수행하는 메모리 장치 및 이를 이용하는 메모리 시스템 |
KR20170038501A (ko) * | 2015-09-30 | 2017-04-07 | 삼성전자주식회사 | 샘플링 포인트를 독립적으로 조절할 수 있는 데이터 처리 회로와 이를 포함하는 데이터 처리 시스템 |
US20170192913A1 (en) * | 2013-01-08 | 2017-07-06 | Taiwan Semiconductor Manufacturing Co., Ltd. | Data sampling alignment method for memory interface |
US20180007728A1 (en) * | 2015-11-04 | 2018-01-04 | Motorola Mobility Llc | Wireless ad hoc network assembly using network coding |
KR20180053835A (ko) * | 2016-11-14 | 2018-05-24 | 에스케이하이닉스 주식회사 | 수신 회로, 이를 포함하는 반도체 장치 및 시스템 |
KR20180104839A (ko) * | 2017-03-14 | 2018-09-27 | 에스케이하이닉스 주식회사 | 데이터 전송 트레이닝 방법 및 이를 수행하는 데이터 저장 장치 |
Family Cites Families (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3235682B2 (ja) | 1992-12-14 | 2001-12-04 | 大日本インキ化学工業株式会社 | 筒状多孔質炭素成形体の製造方法 |
TW576976B (en) * | 2002-06-26 | 2004-02-21 | Via Tech Inc | Output circuit of strobe signal or parallel data signal |
US6940768B2 (en) | 2003-11-04 | 2005-09-06 | Agere Systems Inc. | Programmable data strobe offset with DLL for double data rate (DDR) RAM memory |
US7940877B1 (en) | 2003-11-26 | 2011-05-10 | Altera Corporation | Signal edge detection circuitry and methods |
KR100515073B1 (ko) * | 2003-12-29 | 2005-09-16 | 주식회사 하이닉스반도체 | 효율적으로 데이터 셋업타임을 조정할 수 있는 반도체메모리 장치 및 그 구동 방법 |
US7400670B2 (en) | 2004-01-28 | 2008-07-15 | Rambus, Inc. | Periodic calibration for communication channels by drift tracking |
US7034589B2 (en) | 2004-02-26 | 2006-04-25 | Silicon Integrated Systems Corp. | Multi-stage delay clock generator |
US7171321B2 (en) * | 2004-08-20 | 2007-01-30 | Rambus Inc. | Individual data line strobe-offset control in memory systems |
US7443741B2 (en) | 2005-07-07 | 2008-10-28 | Lsi Corporation | DQS strobe centering (data eye training) method |
US8121237B2 (en) | 2006-03-16 | 2012-02-21 | Rambus Inc. | Signaling system with adaptive timing calibration |
US7671648B2 (en) | 2006-10-27 | 2010-03-02 | Micron Technology, Inc. | System and method for an accuracy-enhanced DLL during a measure initialization mode |
KR101470975B1 (ko) | 2007-12-21 | 2014-12-09 | 램버스 인코포레이티드 | 메모리 시스템 내 기록 타이밍을 교정하기 위한 방법 및 장치 |
US8111564B2 (en) | 2009-01-29 | 2012-02-07 | International Business Machines Corporation | Setting controller termination in a memory controller and memory device interface in a communication bus |
US8645743B2 (en) | 2010-11-22 | 2014-02-04 | Apple Inc. | Mechanism for an efficient DLL training protocol during a frequency change |
JP2013004131A (ja) | 2011-06-14 | 2013-01-07 | Renesas Electronics Corp | メモリインターフェース回路 |
US8605539B2 (en) | 2011-08-16 | 2013-12-10 | Lsi Corporation | Hardware-based data eye training for high speed links |
US8897084B2 (en) | 2011-09-08 | 2014-11-25 | Apple Inc. | Dynamic data strobe detection |
US9183125B2 (en) | 2011-12-19 | 2015-11-10 | Advanced Micro Devices, Inc. | DDR receiver enable cycle training |
US8520455B2 (en) * | 2012-01-10 | 2013-08-27 | Apple Inc. | Method and apparatus for training a DLL in a memory subsystem |
KR20140041207A (ko) | 2012-09-27 | 2014-04-04 | 삼성전자주식회사 | 데이터 스큐 보상 방법 및 이를 적용한 메모리 컨트롤러 |
US8780655B1 (en) | 2012-12-24 | 2014-07-15 | Arm Limited | Method and apparatus for aligning a clock signal and a data strobe signal in a memory system |
JP6179206B2 (ja) | 2013-06-11 | 2017-08-16 | 株式会社リコー | メモリ制御装置 |
US9640277B2 (en) | 2013-12-28 | 2017-05-02 | Intel Corporation | Avoiding DQS false sampling triggers |
US9147463B1 (en) | 2014-03-25 | 2015-09-29 | Megachips Corporation | Method and apparatus for data capture in DDR memory interface |
US9514420B2 (en) * | 2014-08-15 | 2016-12-06 | Rambus Inc. | Strobe gating adaption and training in a memory controller |
US9811273B1 (en) * | 2014-12-23 | 2017-11-07 | Cadence Design Systems, Inc. | System and method for reliable high-speed data transfer in multiple data rate nonvolatile memory |
US9305622B1 (en) | 2015-01-23 | 2016-04-05 | Apple Inc. | Data strobe to data delay calibration |
US9251906B1 (en) * | 2015-05-18 | 2016-02-02 | Freescale Semiconductor, Inc. | Data strobe signal generation for flash memory |
KR20160147517A (ko) | 2015-06-15 | 2016-12-23 | 에스케이하이닉스 주식회사 | 반도체시스템 |
US9614533B2 (en) | 2015-06-19 | 2017-04-04 | Intel Corporation | Digital phase control with programmable tracking slope |
US9620184B1 (en) | 2015-12-16 | 2017-04-11 | International Business Machines Corporation | Efficient calibration of memory devices |
US9715907B1 (en) | 2016-05-09 | 2017-07-25 | Invecas, Inc. | Optimal data eye for improved Vref margin |
JP6832777B2 (ja) * | 2017-03-31 | 2021-02-24 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
KR102273191B1 (ko) * | 2017-09-08 | 2021-07-06 | 삼성전자주식회사 | 스토리지 장치 및 그것의 데이터 트레이닝 방법 |
KR102693546B1 (ko) | 2018-11-07 | 2024-08-08 | 삼성전자주식회사 | 스토리지 장치 |
-
2018
- 2018-11-07 KR KR1020180135620A patent/KR102693546B1/ko active IP Right Grant
-
2019
- 2019-05-13 US US16/410,370 patent/US10930329B2/en active Active
- 2019-07-12 CN CN201910627799.XA patent/CN111161780A/zh active Pending
-
2021
- 2021-02-18 US US17/178,397 patent/US11158359B2/en active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090154256A1 (en) * | 2007-10-24 | 2009-06-18 | Samsung Electronics Co., Ltd. | Integrated Circuit Memory Devices Including Delayed Clock Inputs for Input/Output Buffers and Related Systems and Methods |
KR20100117345A (ko) * | 2009-04-24 | 2010-11-03 | 삼성전자주식회사 | 반도체 메모리 장치 |
KR20140062410A (ko) * | 2012-11-14 | 2014-05-23 | 후지쯔 세미컨덕터 가부시키가이샤 | 병직렬 변환 회로, 인터페이스 회로 및 제어 장치 |
US20170192913A1 (en) * | 2013-01-08 | 2017-07-06 | Taiwan Semiconductor Manufacturing Co., Ltd. | Data sampling alignment method for memory interface |
KR20160144545A (ko) * | 2015-06-08 | 2016-12-19 | 삼성전자주식회사 | 스토리지 장치 및 스토리지 장치의 동작 방법 |
KR20170008062A (ko) * | 2015-07-13 | 2017-01-23 | 에스케이하이닉스 주식회사 | 트레이닝 동작을 수행하는 메모리 장치 및 이를 이용하는 메모리 시스템 |
KR20170038501A (ko) * | 2015-09-30 | 2017-04-07 | 삼성전자주식회사 | 샘플링 포인트를 독립적으로 조절할 수 있는 데이터 처리 회로와 이를 포함하는 데이터 처리 시스템 |
US20180007728A1 (en) * | 2015-11-04 | 2018-01-04 | Motorola Mobility Llc | Wireless ad hoc network assembly using network coding |
KR20180053835A (ko) * | 2016-11-14 | 2018-05-24 | 에스케이하이닉스 주식회사 | 수신 회로, 이를 포함하는 반도체 장치 및 시스템 |
KR20180104839A (ko) * | 2017-03-14 | 2018-09-27 | 에스케이하이닉스 주식회사 | 데이터 전송 트레이닝 방법 및 이를 수행하는 데이터 저장 장치 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11756599B2 (en) | 2020-12-15 | 2023-09-12 | Samsung Electronics Co., Ltd. | Storage controller, storage device, and operation method of storage device |
Also Published As
Publication number | Publication date |
---|---|
KR102693546B1 (ko) | 2024-08-08 |
US11158359B2 (en) | 2021-10-26 |
CN111161780A (zh) | 2020-05-15 |
US20210201969A1 (en) | 2021-07-01 |
US10930329B2 (en) | 2021-02-23 |
US20200143854A1 (en) | 2020-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102693546B1 (ko) | 스토리지 장치 | |
US10366023B2 (en) | Operation methods of nonvolatile memory devices and operation methods of memory controllers | |
CN109686388B (zh) | 存储设备和存储设备的操作方法 | |
US11238954B2 (en) | Nonvolatile memory device, storage device including nonvolatile memory devices, and method of training data input and output lines between controller and nonvolatile memory devices | |
US10754563B2 (en) | Memory device for efficiently determining whether to perform re-training operation and memory system including the same | |
KR101596827B1 (ko) | 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템 | |
US20200294605A1 (en) | Memory system | |
CN107146639B (zh) | 半导体存储装置及存储器系统 | |
US11017841B2 (en) | Nonvolatile memory device, operating method of nonvolatile memory device, and storage device including nonvolatile memory device | |
US11461172B2 (en) | Storage device and operating method of storage device | |
US10008252B2 (en) | Semiconductor system capable of storing different setting information in plurality of semiconductor chips sharing command/address information | |
US20200150893A1 (en) | Storage device having wide input/output and method of operating the same | |
US11699469B2 (en) | Operating method of host device and memory device and memory system | |
JPWO2005093760A1 (ja) | 半導体装置および半導体装置にデータを書き込む方法 | |
US20230078945A1 (en) | Semiconductor memory device | |
JP5270627B2 (ja) | 半導体装置 | |
US20170323671A1 (en) | Control circuit and memory device having the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |