KR102696294B1 - Semiconductor memory device having calibration circuit and training method thereof - Google Patents
Semiconductor memory device having calibration circuit and training method thereof Download PDFInfo
- Publication number
- KR102696294B1 KR102696294B1 KR1020190031885A KR20190031885A KR102696294B1 KR 102696294 B1 KR102696294 B1 KR 102696294B1 KR 1020190031885 A KR1020190031885 A KR 1020190031885A KR 20190031885 A KR20190031885 A KR 20190031885A KR 102696294 B1 KR102696294 B1 KR 102696294B1
- Authority
- KR
- South Korea
- Prior art keywords
- signal
- nth
- output
- code
- activated
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital 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/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/4076—Timing circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/028—Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/50—Marginal testing, e.g. race, voltage or current testing
- G11C29/50012—Marginal testing, e.g. race, voltage or current testing of timing
-
- 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/1057—Data output buffers, e.g. comprising level conversion circuits, circuits for adapting load
-
- 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
- G11C7/1084—Data input buffers, e.g. comprising level conversion circuits, circuits for adapting load
-
- 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
- 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
- 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/225—Clock input buffers
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M9/00—Parallel/series conversion or vice versa
-
- 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/023—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in clock generator or timing circuitry
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Dram (AREA)
Abstract
반도체 장치는, 트레이닝 모드 시, 제 1 내지 제 N 출력 클럭에 대응되는 펄스를 데이터 스트로브 패드로 순차적으로 출력하는 송신 회로; 상기 데이터 스트로브 패드로 입력되는 상기 펄스의 라이징 에지와 폴링 에지에 각각 활성화되는 라이징 신호 및 폴링 신호를 생성하는 수신 회로; 구간 신호에 따라, 상기 라이징 신호 및 상기 폴링 신호의 위상차에 대응되는 검출 코드를 제 1 내지 제 N 레지스터에 순차적으로 저장하여 제 1 내지 제 N 저장값의 평균값을 산출하고, 상기 평균값과 상기 제 1 내지 제 N 저장값의 편차를 상기 제 1 내지 제 N 레지스터에 재저장하는 캘리브레이션 회로; 및 상기 제 1 내지 제 N 레지스터의 재저장값을 이용하여 상기 제 1 내지 제 N 출력 클럭의 듀티비를 보정하는 클럭 생성 회로를 포함할 수 있다. The semiconductor device may include, in a training mode, a transmitter circuit which sequentially outputs pulses corresponding to first to Nth output clocks to a data strobe pad; a receiver circuit which generates a rising signal and a falling signal which are activated respectively at a rising edge and a falling edge of the pulses input to the data strobe pad; a calibration circuit which sequentially stores detection codes corresponding to a phase difference of the rising signal and the falling signal in first to Nth registers according to an interval signal, calculates an average value of the first to Nth stored values, and re-stores a deviation of the average value and the first to Nth stored values in the first to Nth registers; and a clock generation circuit which corrects a duty ratio of the first to Nth output clocks using the re-stored values of the first to Nth registers.
Description
본 발명은 반도체 설계 기술에 관한 것으로, 특히, 구체적으로는 스트로브 신호에 따라 데이터를 입출력하는 반도체 장치의 캘리브레이션 회로에 관한 것이다.The present invention relates to semiconductor design technology, and more particularly, to a calibration circuit for a semiconductor device that inputs and outputs data according to a strobe signal.
일반적으로 반도체 장치는 데이터 출력 동작을 위해 데이터 출력 버퍼를 구비한다. 그리고 데이터 출력 버퍼는 글로벌 입출력 라인을 통해 전달되는 데이터를 스트로브 신호에 동기시켜 출력하는 기능을 수행한다. 스트로브 신호는 출력 클럭의 라이징 에지에 따라 활성화되는 라이징 클럭 또는 출력 클럭의 폴링 에지에 따라 활성화되는 폴링 클럭을 이용하여 생성될 수 있다. 스트로브 신호를 생성하기 위해 스트로브 신호 생성 회로가 구비될 수 있다. In general, a semiconductor device is provided with a data output buffer for data output operation. And the data output buffer performs a function of synchronizing data transmitted through a global input/output line with a strobe signal and outputting it. The strobe signal can be generated using a rising clock that is activated according to a rising edge of the output clock or a falling clock that is activated according to a falling edge of the output clock. A strobe signal generation circuit can be provided to generate the strobe signal.
일반적으로 지연 고정 라인(Delay Locked Loop: DLL) 회로는 반도체 장치의 내부에 존재하는 지연 소자들의 지연값을 보상하기 위해 외부 클럭보다 소정 시간 앞선 위상을 갖는 출력 클럭을 생성하고, 이를 라이징 클럭과 폴링 클럭으로 분할한 후, 각각의 듀티비를 50%로 조정하는 동작을 수행한다. 따라서 이상적으로는 스트로브 신호 생성 회로에 전달되는 라이징 클럭과 폴링 클럭 각각의 듀티비에 변함이 없어야 하나, 공정, 전압, 온도(PVT) 변동, 클럭의 전송 라인에 존재하는 저항 및 노이즈 등의 영향으로 실제로는 각 듀티비가 변화하게 된다. 이처럼 라이징 클럭과 폴링 클럭 각각의 듀티비가 50%이 아닌 상황에서 스트로브 신호를 생성하게 되면, 스트로브 신호의 활성화 구간이 변화하게 되어 데이터 출력 버퍼의 동작을 정확히 제어할 수 없게 되며, 심할 경우 데이터 출력 동작이 수행되지 않는 오동작이 발생할 수 있다.In general, a delay locked loop (DLL) circuit generates an output clock that has a phase that is a predetermined amount of time ahead of an external clock in order to compensate for the delay values of the delay elements inside a semiconductor device, divides it into a rising clock and a falling clock, and then adjusts the duty ratio of each to 50%. Therefore, ideally, the duty ratios of the rising clock and the falling clock transmitted to the strobe signal generation circuit should not change, but in reality, each duty ratio changes due to process, voltage, temperature (PVT) fluctuations, resistance in the clock transmission line, and noise. If a strobe signal is generated in a situation where the duty ratio of the rising clock and the falling clock is not 50%, the activation section of the strobe signal changes, making it impossible to accurately control the operation of the data output buffer. In severe cases, a malfunction may occur in which the data output operation is not performed.
본 발명의 실시예들은, 정확한 듀티비를 가지는 스트로브 신호를 생성할 수 있는 캘리브레이션 회로를 포함하는 반도체 장치를 제공하는 것이다.Embodiments of the present invention provide a semiconductor device including a calibration circuit capable of generating a strobe signal having an accurate duty ratio.
본 발명의 일 실시예에 따른 반도체 장치는, 트레이닝 모드 시, 제 1 내지 제 N 출력 클럭에 대응되는 펄스를 데이터 스트로브 패드로 순차적으로 출력하는 송신 회로; 상기 데이터 스트로브 패드로 입력되는 상기 펄스의 라이징 에지와 폴링 에지에 각각 활성화되는 라이징 신호 및 폴링 신호를 생성하는 수신 회로; 구간 신호에 따라, 상기 라이징 신호 및 상기 폴링 신호의 위상차에 대응되는 검출 코드를 제 1 내지 제 N 레지스터에 순차적으로 저장하여 제 1 내지 제 N 저장값의 평균값을 산출하고, 상기 평균값과 상기 제 1 내지 제 N 저장값의 편차를 상기 제 1 내지 제 N 레지스터에 재저장하는 캘리브레이션 회로; 및 상기 제 1 내지 제 N 레지스터의 재저장값을 이용하여 상기 제 1 내지 제 N 출력 클럭의 듀티비를 보정하는 클럭 생성 회로를 포함할 수 있다.According to one embodiment of the present invention, a semiconductor device may include: a transmitter circuit which sequentially outputs pulses corresponding to first to Nth output clocks to a data strobe pad in a training mode; a receiver circuit which generates a rising signal and a falling signal which are activated respectively at a rising edge and a falling edge of the pulses input to the data strobe pad; a calibration circuit which sequentially stores detection codes corresponding to a phase difference of the rising signal and the falling signal in first to Nth registers according to an interval signal, calculates an average value of the first to Nth stored values, and re-stores a deviation of the average value and the first to Nth stored values in the first to Nth registers; and a clock generation circuit which corrects a duty ratio of the first to Nth output clocks using the re-stored values of the first to Nth registers.
본 발명의 일 실시예에 따른 캘리브레이션 회로는, 트레이닝 모드 시, 제 1 내지 제 N 출력 클럭에 대응되는 펄스를 데이터 스트로브 패드로 순차적으로 출력하는 단계; 상기 데이터 스트로브 패드로 입력되는 상기 펄스의 라이징 에지와 폴링 에지에 각각 활성화되는 라이징 신호 및 폴링 신호를 생성하는 단계; 상기 라이징 신호 및 상기 폴링 신호의 위상차에 대응되는 검출 코드를 제 1 내지 제 N 레지스터에 순차적으로 저장하고, 제 1 내지 제 N 저장값을 누적 합산하여 합산 신호를 생성하는 단계; 상기 합산 신호를 토대로 제 1 내지 제 N 저장값의 평균값을 산출하고, 상기 평균값과 상기 제 1 내지 제 N 저장값의 편차를 상기 제 1 내지 제 N 레지스터에 재저장하는 단계; 및 상기 제 1 내지 제 N 레지스터의 재저장값을 이용하여 상기 제 1 내지 제 N 출력 클럭의 듀티비를 보정하는 단계를 포함할 수 있다.According to one embodiment of the present invention, a calibration circuit may include, in a training mode, a step of sequentially outputting pulses corresponding to first to Nth output clocks to a data strobe pad; a step of generating a rising signal and a falling signal, which are activated respectively at a rising edge and a falling edge of the pulses input to the data strobe pad; a step of sequentially storing detection codes corresponding to a phase difference of the rising signal and the falling signal in first to Nth registers, and generating a sum signal by accumulating and summing the first to Nth stored values; a step of calculating an average value of the first to Nth stored values based on the sum signal, and re-storing a deviation between the average value and the first to Nth stored values in the first to Nth registers; and a step of correcting a duty ratio of the first to Nth output clocks using the re-stored values of the first to Nth registers.
본 발명의 일 실시예에 따른 반도체 장치의 트레이닝 방법은, 라이징 신호 및 상기 폴링 신호의 위상차를 검출하여 검출 코드를 생성하는 검출부; 구간 신호에 따라 상기 검출 코드 또는 누적 편차 코드를 선택하고, 제 1 내지 제 N 레지스터 제어 신호에 따라 선택된 코드를 제 1 내지 제 N 레지스터에 저장하는 저장부; 상기 제 1 내지 제 N 레지스터 제어 신호 및 상기 구간 신호에 따라, 상기 제 1 내지 제 N 레지스터에 저장된 제 1 내지 제 N 저장값을 누적 합산하여 합산 신호를 출력하거나, 편차 코드를 누적 합산하여 상기 누적 편차 코드를 출력하는 누적 합산부; 상기 합산 신호를 토대로 평균값을 산출하는 평균 계산부; 및 선택 신호에 따라 상기 제 1 내지 제 N-1 저장값 중 하나를 선택하고, 상기 평균값과 상기 선택된 저장값의 차이를 상기 편차 코드로 출력하는 편차 계산부를 포함할 수 있다.A training method for a semiconductor device according to one embodiment of the present invention may include: a detection unit which detects a phase difference between a rising signal and the falling signal to generate a detection code; a storage unit which selects the detection code or the accumulated deviation code according to an interval signal, and stores the selected code in first to Nth registers according to first to Nth register control signals; an accumulative summation unit which accumulates and sums first to Nth storage values stored in the first to Nth registers according to the first to Nth register control signals and the interval signal, and outputs a summation signal or accumulates and sums deviation codes and outputs the accumulated deviation code; an average calculation unit which calculates an average based on the summation signal; and a deviation calculation unit which selects one of the first to N-1th storage values according to a selection signal, and outputs a difference between the average value and the selected storage value as the deviation code.
제안된 실시예에 따른 반도체 장치는, 데이터 스트로브 패드를 통해 최종적으로 출력되는 스트로브 신호의 1-비트 펄스폭을 일정하게 유지할 수 있다. A semiconductor device according to the proposed embodiment can maintain a constant 1-bit pulse width of a strobe signal finally output through a data strobe pad.
또한, 제안된 실시예에 따른 반도체 장치는, 정확한 듀티비를 가지는 스트로브 신호를 제공함으로써 데이터 출력 동작의 신뢰성을 향상시킬 수 있다.In addition, the semiconductor device according to the proposed embodiment can improve the reliability of data output operation by providing a strobe signal having an accurate duty ratio.
도 1 은 본 발명의 실시예에 따른 반도체 장치의 블록도 이다.
도 2a 및 도 2b 는 도 1 의 송신 회로의 동작을 설명하기 위한 파형도 이다.
도 3 은 도 1 의 패턴 생성부의 회로도 이다.
도 4 는 도 3 의 패턴 생성부의 동작을 설명하기 위한 파형도 이다.
도 5 는 도 1 의 캘리브레이션 회로 및 캘리브레이션 제어 회로의 상세 블록도 이다.
도 6 은 도 5 의 트리밍 제어기의 블록도 이다.
도 7 은 도 6 의 주기 생성기의 회로도 이다.
도 8 은 도 6 의 코드 변환기의 회로도 이다.
도 9 는 도 6 의 초기 구간 설정부의 회로도 이다.
도 10 은 도 6 의 코드 출력기의 회로도 이다.
도 11 은 도 5 의 저장부 및 평균-편차 계산부의 회로도 이다.
도 12 는 도 5 의 캘리브레이션 제어 회로의 상세 블록도 이다.
도 13 은 도 12 의 구간 정의부의 회로도 이다.
도 14 는 도 13 의 구간 정의부의 동작을 설명하기 위한 파형도 이다.
도 15 는 도 12 의 제어 신호 생성부의 상세 회로도 이다.
도 16a 및 도 16b 는 도 5 의 캘리브레이션 회로 및 캘리브레이션 제어 회로의 동작을 설명하기 위한 파형도 이다.
도 17 은 본 발명의 실시예에 따른 반도체 장치의 트레이닝 동작을 설명하기 위한 순서도 이다.
도 18 은 도 17 의 트레이닝 동작에 따른 출력 클럭들의 듀티 보정을 보여주는 도면 이다. FIG. 1 is a block diagram of a semiconductor device according to an embodiment of the present invention.
FIG. 2a and FIG. 2b are waveform diagrams for explaining the operation of the transmitter circuit of FIG. 1.
Figure 3 is a circuit diagram of the pattern generation unit of Figure 1.
Figure 4 is a waveform diagram for explaining the operation of the pattern generation unit of Figure 3.
Figure 5 is a detailed block diagram of the calibration circuit and calibration control circuit of Figure 1.
Figure 6 is a block diagram of the trimming controller of Figure 5.
Fig. 7 is a circuit diagram of the periodic generator of Fig. 6.
Fig. 8 is a circuit diagram of the code converter of Fig. 6.
Fig. 9 is a circuit diagram of the initial section setting section of Fig. 6.
Fig. 10 is a circuit diagram of the code output device of Fig. 6.
Figure 11 is a circuit diagram of the storage unit and mean-deviation calculation unit of Figure 5.
Figure 12 is a detailed block diagram of the calibration control circuit of Figure 5.
Figure 13 is a circuit diagram of the section definition part of Figure 12.
Figure 14 is a waveform diagram for explaining the operation of the interval definition part of Figure 13.
Figure 15 is a detailed circuit diagram of the control signal generation unit of Figure 12.
FIG. 16a and FIG. 16b are waveform diagrams for explaining the operation of the calibration circuit and calibration control circuit of FIG. 5.
FIG. 17 is a flowchart for explaining a training operation of a semiconductor device according to an embodiment of the present invention.
Figure 18 is a diagram showing duty correction of output clocks according to the training operation of Figure 17.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있도록 상세히 설명하기 위하여, 본 발명의 가장 바람직한 실시예들을 첨부 도면을 참조하여 설명하고자 한다. Hereinafter, in order to enable a person having ordinary skill in the art to easily implement the technical idea of the present invention, the most preferred embodiments of the present invention will be described in detail with reference to the attached drawings.
도 1 은 본 발명의 실시예에 따른 반도체 장치(100)의 블록도 이다.FIG. 1 is a block diagram of a semiconductor device (100) according to an embodiment of the present invention.
도 1 을 참조하면, 반도체 장치(100)는, 클럭 생성 회로(110), 송신 회로(120), 수신 회로(130) 및 캘리브레이션 회로(140)를 포함할 수 있다. Referring to FIG. 1, a semiconductor device (100) may include a clock generation circuit (110), a transmission circuit (120), a reception circuit (130), and a calibration circuit (140).
클럭 생성 회로(110)는, 클럭 패드(CLK_P)를 통해 외부에서 입력되는 클럭(CLK)을 토대로 출력 클럭들(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)을 생성할 수 있다. 출력 클럭들(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)은, 소정의 위상차로 활성화되는 다중 위상 클럭일 수 있다. 이하에서는, 출력 클럭들(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)이 4-phase 클럭인 경우를 예로 들어 설명하기로 한다. 이 경우, 출력 클럭들(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)은 4-phase (즉, 90도)의 위상차로 활성화되는 제 1 내지 제 4 출력 클럭(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)을 포함할 수 있다. The clock generation circuit (110) can generate output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK) based on a clock (CLK) input from the outside through a clock pad (CLK_P). The output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK) can be multi-phase clocks activated with a predetermined phase difference. Hereinafter, a case in which the output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK) are 4-phase clocks will be described as an example. In this case, the output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK) can include first to fourth output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK) activated with a phase difference of 4-phase (i.e., 90 degrees).
보다 자세하게, 클럭 생성 회로(110)는, 클럭 버퍼(112) 및 클럭 생성부(114)를 포함할 수 있다. In more detail, the clock generation circuit (110) may include a clock buffer (112) and a clock generation unit (114).
클럭 버퍼(112)는, 클럭 패드(CLK_P)를 통해 외부에서 입력되는 클럭(CLK)을 버퍼링하여 내부 클럭(CLKI)을 출력할 수 있다. 클럭 생성부(114)는, 내부 클럭(CLKI)을 토대로 4-phase (즉, 90도)의 위상차로 활성화되는 제 1 내지 제 4 출력 클럭(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)을 생성할 수 있다. 본 발명의 실시예에 따른 클럭 생성 회로(110)의 클럭 생성부(114)는, 제 1 내지 제 3 캘리브레이션 코드(R1_F1<0:3>, F1_R2<0:3>, R2_F2<0:3>)에 따라 제 1 내지 제 4 출력 클럭(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)의 듀티비를 각각 보정할 수 있다. The clock buffer (112) can buffer a clock (CLK) input from the outside through a clock pad (CLK_P) and output an internal clock (CLKI). The clock generation unit (114) can generate first to fourth output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK) that are activated with a phase difference of 4 phases (i.e., 90 degrees) based on the internal clock (CLKI). The clock generation unit (114) of the clock generation circuit (110) according to the embodiment of the present invention can correct the duty ratios of the first to fourth output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK) according to the first to third calibration codes (R1_F1<0:3>, F1_R2<0:3>, R2_F2<0:3>), respectively.
송신 회로(120)는, 노멀 동작(즉, 리드 동작) 시, 제 1 내지 제 4 출력 클럭(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)에 따라 제 1 내지 제 4 입력 데이터(BL0~BL3)를 각각 래치하여 일정 주기로 토글링하는 스트로브 신호(DQS)를 생성할 수 있다. 송신 회로(120)는, 스트로브 신호(DQS)를 데이터 스트로브 패드(DQS_P)로 출력할 수 있다. 제 1 내지 제 4 입력 데이터(BL0~BL3) 각각은, 로직 하이 레벨 또는 로직 로우 레벨을 유지하는 신호일 수 있다. The transmitter circuit (120) can, during normal operation (i.e., read operation), latch the first to fourth input data (BL0 to BL3) according to the first to fourth output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK) and generate a strobe signal (DQS) that toggles at a constant cycle. The transmitter circuit (120) can output the strobe signal (DQS) to a data strobe pad (DQS_P). Each of the first to fourth input data (BL0 to BL3) can be a signal that maintains a logic high level or a logic low level.
도 2a 를 참조하면, 리드 동작 시 송신 회로(120)의 동작이 도시되어 있다. Referring to FIG. 2a, the operation of the transmitter circuit (120) during lead operation is illustrated.
도 2a 에 도시된 바와 같이, 버스트 랭쓰(Burst length: BL)가 16 인 경우, 로직 하이 레벨의 제 1 및 제 3 입력 데이터(BL0, BL2)와, 로직 로우 레벨의 제 2 및 제 4 입력 데이터(BL1, BL3)가 제공될 수 있다. 송신 회로(120)는, 제 1 내지 제 4 출력 클럭(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)에 따라 제 1 내지 제 4 입력 데이터(BL0~BL3)를 각각 4 번씩 래치하여 H-L-H-L-H-L-H-L-H-L-H-L-H-L-H-L의 순서로 16 번 토글링하는 스트로브 신호(DQS)를 생성할 수 있다. 데이터 출력 버퍼(미도시)는, 스트로브 신호(DQS)의 라이징 에지 및 폴링 에지에 따라 16 개의 출력 데이터(D0~D15)를 데이터 입출력 (DQ) 패드를 통해 순차적으로 외부로 출력할 수 있다. 이 때, 출력 데이터(D0, D4, D8, D12)는 제 1 출력 클럭(R1DOCLK)에 동기되어 출력되고, 출력 데이터(D1, D5, D9, D13)는 제 2 출력 클럭(F1DOCLK)에 동기되어 출력되고, 출력 데이터(D2, D6, D10, D14)는 제 3 출력 클럭(R2DOCLK)에 동기되어 출력되고, 출력 데이터(D3, D7, D11, D15)는 제 4 출력 클럭(F1DOCLK)에 동기되어 출력됨을 알 수 있다. As illustrated in FIG. 2A, when the burst length (BL) is 16, the first and third input data (BL0, BL2) at a logic high level and the second and fourth input data (BL1, BL3) at a logic low level can be provided. The transmitting circuit (120) can generate a strobe signal (DQS) that toggles 16 times in the order of H-L-H-L-H-L-H-L-H-L-H-L-H-L-H-L-L by latching the first to fourth input data (BL0 to BL3) four times each according to the first to fourth output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK). The data output buffer (not shown) can sequentially output 16 output data (D0 to D15) to the outside through the data input/output (DQ) pad according to the rising edge and falling edge of the strobe signal (DQS). At this time, it can be seen that the output data (D0, D4, D8, D12) are output in synchronization with the first output clock (R1DOCLK), the output data (D1, D5, D9, D13) are output in synchronization with the second output clock (F1DOCLK), the output data (D2, D6, D10, D14) are output in synchronization with the third output clock (R2DOCLK), and the output data (D3, D7, D11, D15) are output in synchronization with the fourth output clock (F1DOCLK).
다시 도 1 을 참조하면, 송신 회로(120)는, 트레이닝 모드 시, 제 1 내지 제 4 출력 클럭(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)에 대응되는 펄스를 데이터 스트로브 패드(DQS_P)로 순차적으로 출력할 수 있다. 송신 회로(120)는, 트레이닝 모드 시, 제 1 및 제 2 테스트 신호(R1DOA, R2DOA)에 따라 제 1 내지 제 4 패턴 데이터(BL0_CALP~BL3_CALP)를 생성하고, 제 1 내지 제 4 출력 클럭(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)에 따라 제 1 내지 제 4 패턴 데이터(BL0_CALP~BL3_CALP)를 각각 래치하여 소정 패턴으로 활성화되는 트레이닝 신호(TRS)를 생성할 수 있다. 송신 회로(120)는, 트레이닝 신호(TRS)를 데이터 스트로브 패드(DQS_P)로 출력할 수 있다. 제 1 내지 제 4 패턴 데이터(BL0_CALP~BL3_CALP) 각각은, 제 1 및 제 2 테스트 신호(R1DOA, R2DOA)의 소정 주기 동안, 순차적으로 로직 하이 레벨을 유지하는 신호일 수 있다. 제 1 내지 제 4 패턴 데이터(BL0_CALP~BL3_CALP) 각각은, 서로 겹치지 않는 활성화 구간을 가질 수 있다. Referring back to FIG. 1, the transmitter circuit (120) can sequentially output pulses corresponding to the first to fourth output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK) to the data strobe pad (DQS_P) in the training mode. The transmitter circuit (120) can generate the first to fourth pattern data (BL0_CALP to BL3_CALP) according to the first and second test signals (R1DOA, R2DOA) in the training mode, and latch the first to fourth pattern data (BL0_CALP to BL3_CALP) according to the first to fourth output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK) to generate a training signal (TRS) activated in a predetermined pattern. The transmitter circuit (120) can output a training signal (TRS) to a data strobe pad (DQS_P). Each of the first to fourth pattern data (BL0_CALP to BL3_CALP) can be a signal that sequentially maintains a logic high level during a predetermined period of the first and second test signals (R1DOA, R2DOA). Each of the first to fourth pattern data (BL0_CALP to BL3_CALP) can have an activation section that does not overlap each other.
도 2b 를 참조하면, 트레이닝 모드 시 송신 회로(120)의 동작이 도시되어 있다. Referring to FIG. 2b, the operation of the transmitter circuit (120) in training mode is illustrated.
도 2b 에 도시된 바와 같이, 트레이닝 모드 시 제 1 및 제 2 테스트 신호(R1DOA, R2DOA)가 동일 주기로 소정 위상차로 입력된다. 제 1 및 제 2 테스트 신호(R1DOA, R2DOA)는, 제 1 내지 제 4 출력 클럭(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)의 2 배의 주기를 가질 수 있다. 송신 회로(120)는, 제 1 테스트 신호(R1DOA)의 소정 주기 동안 활성화되는 제 1 패턴 데이터(BL0_CALP)를 생성할 수 있다. 송신 회로(120)는, 제 1 패턴 데이터(BL0_CALP)가 비활성화된 후 제 1 테스트 신호(R1DOA)의 소정 주기 동안 활성화되는 제 2 패턴 데이터(BL1_CALP)를 생성할 수 있다. 송신 회로(120)는, 제 2 패턴 데이터(BL1_CALP)가 비활성화된 후 제 2 테스트 신호(R2DOA)의 소정 주기 동안 활성화되는 제 3 패턴 데이터(BL2_CALP)를 생성할 수 있다. 송신 회로(120)는, 제 3 패턴 데이터(BL2_CALP)가 비활성화된 후 제 2 테스트 신호(R2DOA)의 소정 주기 동안 활성화되는 제 4 패턴 데이터(BL3_CALP)를 생성할 수 있다. As illustrated in FIG. 2B, in the training mode, the first and second test signals (R1DOA, R2DOA) are input with a predetermined phase difference in the same period. The first and second test signals (R1DOA, R2DOA) may have a period that is twice that of the first to fourth output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK). The transmitting circuit (120) may generate the first pattern data (BL0_CALP) that is activated during the predetermined period of the first test signal (R1DOA). The transmitting circuit (120) may generate the second pattern data (BL1_CALP) that is activated during the predetermined period of the first test signal (R1DOA) after the first pattern data (BL0_CALP) is deactivated. The transmitter circuit (120) can generate third pattern data (BL2_CALP) that is activated during a predetermined period of the second test signal (R2DOA) after the second pattern data (BL1_CALP) is deactivated. The transmitter circuit (120) can generate fourth pattern data (BL3_CALP) that is activated during a predetermined period of the second test signal (R2DOA) after the third pattern data (BL2_CALP) is deactivated.
송신 회로(120)는, 제 1 내지 제 4 출력 클럭(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)에 따라 제 1 내지 제 4 패턴 데이터(BL0_CALP~BL3_CALP)를 각각 래치하여 소정 패턴으로 활성화되는 트레이닝 신호(TRS)를 생성할 수 있다. 즉, 트레이닝 신호(TRS)는, 제 1 패턴 데이터(BL0_CALP)의 활성화 구간 동안 H-L-L-L의 펄스로, 제 2 패턴 데이터(BL1_CALP)의 활성화 구간 동안 L-H-L-L의 펄스로, 제 3 패턴 데이터(BL2_CALP)의 활성화 구간 동안 L-L-H-L의 펄스로, 제 4 패턴 데이터(BL3_CALP)의 활성화 구간 동안 L-L-L-H의 펄스로 출력될 수 있다. The transmitter circuit (120) can latch the first to fourth pattern data (BL0_CALP to BL3_CALP) according to the first to fourth output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK), respectively, to generate a training signal (TRS) activated in a predetermined pattern. That is, the training signal (TRS) can be output as a pulse of H-L-L-L during the activation period of the first pattern data (BL0_CALP), as a pulse of L-H-L-L during the activation period of the second pattern data (BL1_CALP), as a pulse of L-L-H-L during the activation period of the third pattern data (BL2_CALP), and as a pulse of L-L-L-H during the activation period of the fourth pattern data (BL3_CALP).
다시 도 1 을 참조하면, 송신 회로(120)는, 패턴 생성부(122), 직렬화부(124) 및 출력 드라이버(126)를 포함할 수 있다. Referring again to FIG. 1, the transmitter circuit (120) may include a pattern generation unit (122), a serialization unit (124), and an output driver (126).
패턴 생성부(122)는, 트레이닝 모드 시 활성화되는 트레이닝 모드 신호(CAL_EN)에 따라 인에이블되고, 트레이닝 동작이 종료됨을 알리는 트레이닝 종료 신호(CAL_OFF)에 따라 디스에이블될 수 있다. 패턴 생성부(122)는, 제 1 및 제 2 테스트 신호(R1DOA, R2DOA)를 이용하여 제 1 내지 제 4 패턴 데이터(BL0_CALP~BL3_CALP)를 생성할 수 있다. 예를 들어, 패턴 생성부(122)는, 제 1 테스트 신호(R1DOA)의 소정 주기 동안 순차적으로 활성화되는 제 1 및 제 2 패턴 데이터(BL0_CALP, BL1_CALP)를 생성한 후, 제 2 테스트 신호(R2DOA)의 소정 주기 동안 순차적으로 활성화되는 제 3 및 제 4 패턴 데이터(BL2_CALP, BL3_CALP)를 생성할 수 있다. 제 1 내지 제 4 패턴 데이터(BL0_CALP~BL3_CALP) 각각은, 서로 겹치지 않는 활성화 구간을 가질 수 있다.The pattern generation unit (122) can be enabled according to a training mode signal (CAL_EN) that is activated in the training mode, and can be disabled according to a training end signal (CAL_OFF) that notifies that the training operation is terminated. The pattern generation unit (122) can generate first to fourth pattern data (BL0_CALP to BL3_CALP) using the first and second test signals (R1DOA, R2DOA). For example, the pattern generation unit (122) can generate first and second pattern data (BL0_CALP, BL1_CALP) that are sequentially activated during a predetermined period of the first test signal (R1DOA), and then generate third and fourth pattern data (BL2_CALP, BL3_CALP) that are sequentially activated during a predetermined period of the second test signal (R2DOA). Each of the first to fourth pattern data (BL0_CALP to BL3_CALP) can have activation sections that do not overlap each other.
직렬화부(124)는, 제 1 내지 제 4 출력 클럭(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)에 따라 제 1 내지 제 4 입력 데이터(BL0~BL3) 또는 제 1 내지 제 4 패턴 데이터(BL0_CALP~BL3_CALP)를 각각 래치하고, 래치된 신호들을 직렬화하여 풀업 제어 신호(PU) 및 풀다운 제어 신호(PD)를 생성할 수 있다. 직렬화부(124)는, 리드 동작 시, 제 1 내지 제 4 출력 클럭(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)에 따라 제 1 내지 제 4 입력 데이터(BL0~BL3)를 각각 래치하고, 래치된 신호들을 직렬화하여 풀업 제어 신호(PU) 및 풀다운 제어 신호(PD)를 생성할 수 있다. 반면, 직렬화부(124)는, 트레이닝 모드 시, 제 1 내지 제 4 출력 클럭(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)에 따라 제 1 내지 제 4 패턴 데이터(BL0_CALP~BL3_CALP)를 각각 래치하고, 래치된 신호들을 직렬화하여 풀업 제어 신호(PU) 및 풀다운 제어 신호(PD)를 생성할 수 있다.The serialization unit (124) can latch the first to fourth input data (BL0 to BL3) or the first to fourth pattern data (BL0_CALP to BL3_CALP) according to the first to fourth output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK), respectively, and serialize the latched signals to generate a pull-up control signal (PU) and a pull-down control signal (PD). The serialization unit (124), during a read operation, can latch the first to fourth input data (BL0 to BL3) according to the first to fourth output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK), respectively, and serialize the latched signals to generate a pull-up control signal (PU) and a pull-down control signal (PD). On the other hand, the serialization unit (124) can, in training mode, latch the first to fourth pattern data (BL0_CALP to BL3_CALP) according to the first to fourth output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK), and serialize the latched signals to generate a pull-up control signal (PU) and a pull-down control signal (PD).
출력 드라이버(126)는, 풀업 제어 신호(PU) 및 풀다운 제어 신호(PD)에 따라 데이터 스트로브 패드(DQS_P)를 구동하여 스트로브 신호(DQS) 또는 트레이닝 신호(TRS)를 출력할 수 있다. The output driver (126) can drive the data strobe pad (DQS_P) according to the pull-up control signal (PU) and the pull-down control signal (PD) to output a strobe signal (DQS) or a training signal (TRS).
수신 회로(130)는, 노멀 동작(즉, 라이트 동작) 시 데이터 스트로브 패드(DQS_P)로 입력되는 스트로브 신호(DQS), 또는 트레이닝 모드 시 데이터 스트로브 패드(DQS_P)로 입력되는 트레이닝 신호(TRS)의 라이징 에지와 폴링 에지에 각각 활성화되는 라이징 신호(IDQS) 및 폴링 신호(QDQS)를 생성할 수 있다. 이 때, 수신 회로(130)는, 라이징 신호(IDQS) 및 폴링 신호(QDQS)가 스트로브 신호(DQS)의 2 배의 주기를 가지도록 생성할 수 있다. 일반적으로, 수신 회로(130)는, 라이트 동작 시에만 활성화되지만, 본 발명의 실시예에 따른 수신 회로(130)는, 트레이닝 모드 시에도 인에이블 되어, 데이터 스트로브 패드(DQS_P)로 입력되는 트레이닝 신호(TRS)를 입력받을 수 있다. The receiving circuit (130) can generate a rising signal (IDQS) and a falling signal (QDQS) that are activated at the rising edge and the falling edge of a strobe signal (DQS) input to a data strobe pad (DQS_P) during a normal operation (i.e., a write operation), or a training signal (TRS) input to the data strobe pad (DQS_P) during a training mode, respectively. At this time, the receiving circuit (130) can generate the rising signal (IDQS) and the falling signal (QDQS) so that they have a period twice that of the strobe signal (DQS). In general, the receiving circuit (130) is activated only during a write operation, but the receiving circuit (130) according to the embodiment of the present invention is enabled even during the training mode to receive the training signal (TRS) input to the data strobe pad (DQS_P).
보다 자세하게, 수신 회로(130)는, 입력 버퍼(132)와 분주기(134)를 포함할 수 있다. In more detail, the receiving circuit (130) may include an input buffer (132) and a divider (134).
입력 버퍼(132)는, 라이트 동작 시 데이터 스트로브 패드(DQS_P)로 입력되는 스트로브 신호(DQS) 또는 트레이닝 모드 시 데이터 스트로브 패드(DQS_P)로 입력되는 트레이닝 신호(TRS)를 버퍼링하여 내부 스트로브 신호(DQSI)를 출력할 수 있다. 입력 버퍼(132)는, 트레이닝 모드 신호(CAL_EN)에 따라 인에이블될 수 있다.The input buffer (132) can output an internal strobe signal (DQSI) by buffering a strobe signal (DQS) input to a data strobe pad (DQS_P) during light operation or a training signal (TRS) input to a data strobe pad (DQS_P) during training mode. The input buffer (132) can be enabled according to a training mode signal (CAL_EN).
분주기(134)는, 내부 스트로브 신호(DQSI)의 주파수를 소정 수(예를 들어, 2)로 분주하고, 분주된 신호의 라이징 에지와 폴링 에지에 각각 활성화되는 라이징 신호(IDQS) 및 폴링 신호(QDQS)를 생성할 수 있다. 참고로, 분주기(134)는, 내부 스트로브 신호(DQSI)의 주파수를 2 분주하여, 내부 스트로브 신호(DQSI)의 라이징 에지에 활성화되는 제 1 라이징 신호(IDQS)를 생성하고, 제 1 라이징 신호(IDQS)를 반전하여 제 2 라이징 신호(IDQSB)를 생성하고, 내부 스트로브 신호(DQSI)의 폴링 에지에 활성화되는 제 1 폴링 신호(QDQS)를 생성하고, 제 1 폴링 신호(QDQS)를 반전하여 제 2 폴링 신호(QDQSB)를 생성할 수 있다. 본 발명의 실시예에서는, 트레이닝 동작 시, 분주기(134)가 제 1 라이징 신호(IDQS) 및 제 1 폴링 신호(QDQS)를 이용하는 경우를 예로 들어 설명한다. The divider (134) can divide the frequency of the internal strobe signal (DQSI) by a predetermined number (for example, 2) and generate a rising signal (IDQS) and a falling signal (QDQS) that are activated at the rising edge and the falling edge of the divided signal, respectively. For reference, the divider (134) can divide the frequency of the internal strobe signal (DQSI) by 2 to generate a first rising signal (IDQS) that is activated at the rising edge of the internal strobe signal (DQSI), invert the first rising signal (IDQS) to generate a second rising signal (IDQSB), generate a first falling signal (QDQS) that is activated at the falling edge of the internal strobe signal (DQSI), and invert the first falling signal (QDQS) to generate a second falling signal (QDQSB). In an embodiment of the present invention, a case in which the divider (134) uses the first rising signal (IDQS) and the first falling signal (QDQS) during a training operation is described as an example.
캘리브레이션 회로(140)는, 구간 신호(SAR_EN)에 따라, 라이징 신호(IDQS) 및 폴링 신호(QDQS)의 위상차에 대응되는 검출 코드(미도시)를 제 1 내지 제 4 레지스터(미도시)에 순차적으로 저장할 수 있다. 캘리브레이션 회로(140)는, 구간 신호(SAR_EN)에 따라, 제 1 내지 제 4 레지스터의 제 1 내지 제 4 저장값의 평균값을 산출하고, 평균값과 제 1 내지 제 4 저장값의 편차를 제 1 내지 제 4 레지스터에 각각 재저장할 수 있다. 제 1 내지 제 4 레지스터에 재저장된 제 1 내지 제 4 저장값은 제 1 내지 제 3 캘리브레이션 코드(R1_F1<0:3>, F1_R2<0:3>, R2_F2<0:3>)로 출력될 수 있다. 캘리브레이션 회로(140)는, 트레이닝 모드 신호(CAL_EN)에 따라 활성화될 수 있다. The calibration circuit (140) can sequentially store detection codes (not shown) corresponding to the phase difference of the rising signal (IDQS) and the falling signal (QDQS) in the first to fourth registers (not shown) according to the interval signal (SAR_EN). The calibration circuit (140) can calculate an average value of the first to fourth storage values of the first to fourth registers according to the interval signal (SAR_EN) and re-store a deviation between the average value and the first to fourth storage values in the first to fourth registers, respectively. The first to fourth storage values re-stored in the first to fourth registers can be output as the first to third calibration codes (R1_F1<0:3>, F1_R2<0:3>, R2_F2<0:3>). The calibration circuit (140) can be activated according to the training mode signal (CAL_EN).
한편, 반도체 장치(100)는, 캘리브레이션 회로(140)를 제어하기 위한 캘리브레이션 제어 회로(150)를 더 포함할 수 있다. 캘리브레이션 제어 회로(150)는, 트레이닝 모드 신호(CAL_EN)에 따라 활성화되며, 라이징 신호(IDQS) 및 폴링 신호(QDQS) 중 적어도 하나의 신호에 따라 소정 주기로 활성화되는 시드 신호(SEED)에 따라 구간 신호(SAR_EN) 및 순차적으로 활성화되는 제 1 내지 제 4 레지스터 제어 신호(REG0P~REG3P)를 생성할 수 있다. 예를 들어, 캘리브레이션 제어 회로(150)는, 트레이닝 모드 신호(CAL_EN)에 따라 활성화되고, 시드 신호(SEED)가 소정 횟수의 활성화된 후 비활성화되는 구간 신호(SAR_EN)를 생성할 수 있다. 또한, 캘리브레이션 제어 회로(150)는, 캘리브레이션 회로(140)가 제 1 내지 제 4 저장값의 편차를 제 1 내지 제 4 레지스터에 재저장한 후 활성화되는 트레이닝 종료 신호(CAL_OFF)를 생성할 수 있다. Meanwhile, the semiconductor device (100) may further include a calibration control circuit (150) for controlling the calibration circuit (140). The calibration control circuit (150) may be activated according to a training mode signal (CAL_EN) and may generate an interval signal (SAR_EN) and first to fourth register control signals (REG0P to REG3P) that are sequentially activated according to a seed signal (SEED) that is activated at a predetermined cycle according to at least one of a rising signal (IDQS) and a falling signal (QDQS). For example, the calibration control circuit (150) may be activated according to a training mode signal (CAL_EN) and may generate an interval signal (SAR_EN) that is deactivated after the seed signal (SEED) is activated a predetermined number of times. Additionally, the calibration control circuit (150) can generate a training end signal (CAL_OFF) that is activated after the calibration circuit (140) re-stores the deviations of the first to fourth storage values in the first to fourth registers.
캘리브레이션 회로(140)는, 구간 신호(SAR_EN)가 활성화되면, 제 1 내지 제 4 레지스터 제어 신호(REG0P~REG3P)에 따라 검출 코드를 제 1 내지 제 4 레지스터에 순차적으로 저장하고, 제 1 내지 제 4 저장값을 누적 합산하여 합산 신호(미도시)를 생성할 수 있다. 또한, 캘리브레이션 회로(140)는, 구간 신호(SAR_EN)가 비활성화되면, 합산 신호를 토대로 평균값을 산출하고, 제 1 내지 제 4 레지스터 제어 신호(REG0P~REG3P)에 따라 제 1 내지 제 4 저장값에 대응되는 편차를 제 1 내지 제 4 레지스터에 순차적으로 재저장할 수 있다. 최종적으로, 제 1 내지 제 4 레지스터는, 재저장된 제 1 내지 제 4 저장값을 제 1 내지 제 3 캘리브레이션 코드(R1_F1<0:3>, F1_R2<0:3>, R2_F2<0:3>)로 출력할 수 있다. 이하, 본 발명의 실시예에서는, 캘리브레이션 회로(140)가 제 1 내지 제 4 저장값의 평균값을 산출하고, 평균값과 제 1 내지 제 3 저장값의 편차를 제 1 내지 제 3 레지스터에 각각 재저장하여 제 1 내지 제 3 캘리브레이션 코드(R1_F1<0:3>, F1_R2<0:3>, R2_F2<0:3>)로 출력하는 경우를 예로 들어 설명한다. 하지만, 제안 발명은 이에 한정되지 않으며, 캘리브레이션 회로(140)가 다양한 방법으로 평균값과 제 1 내지 제 4 저장값의 편차를 제 1 내지 제 4 레지스터에 재저장할 수 있다.The calibration circuit (140) can sequentially store detection codes in the first to fourth registers according to the first to fourth register control signals (REG0P to REG3P) when the interval signal (SAR_EN) is activated, and generate a sum signal (not shown) by accumulating and adding the first to fourth storage values. In addition, the calibration circuit (140) can calculate an average value based on the sum signal when the interval signal (SAR_EN) is deactivated, and sequentially re-store deviations corresponding to the first to fourth storage values in the first to fourth registers according to the first to fourth register control signals (REG0P to REG3P). Finally, the first to fourth registers can output the restored first to fourth storage values as the first to third calibration codes (R1_F1<0:3>, F1_R2<0:3>, R2_F2<0:3>). Hereinafter, in the embodiment of the present invention, a case in which the calibration circuit (140) calculates an average value of the first to fourth storage values, re-stores the deviations between the average value and the first to third storage values in the first to third registers, and outputs the first to third calibration codes (R1_F1<0:3>, F1_R2<0:3>, R2_F2<0:3>) will be described as an example. However, the proposed invention is not limited thereto, and the calibration circuit (140) can re-store the deviations between the average value and the first to fourth storage values in the first to fourth registers in various ways.
한편, 도 1 에는, 캘리브레이션 회로(140)가, 라이징 신호(IDQS) 및 폴링 신호(QDQS) 중 적어도 하나의 신호에 따라 시드 신호(SEED)를 생성하고, 캘리브레이션 제어 회로(150)가 시드 신호(SEED)에 따라 제 1 내지 제 4 레지스터 제어 신호(REG0P~REG3P) 및 구간 신호(SAR_EN)를 생성하는 점이 도시되어 있다. 하지만, 제안 발명은 이에 한정되지 않으며, 캘리브레이션 제어 회로(150)가 라이징 신호(IDQS) 및 폴링 신호(QDQS) 중 적어도 하나의 신호에 따라 시드 신호(SEED)를 생성할 수 있다. 또한, 캘리브레이션 제어 회로(150)는, 제 1 내지 제 4 레지스터 제어 신호(REG0P~REG3P) 및 구간 신호(SAR_EN) 이외에도, 캘리브레이션 회로(140)를 제어하기 위한 제어 신호들을 생성할 수 있다. 이에 대한 설명은 도 5 에서 상세히 설명하기로 한다. Meanwhile, FIG. 1 illustrates that the calibration circuit (140) generates a seed signal (SEED) in response to at least one of the rising signal (IDQS) and the falling signal (QDQS), and the calibration control circuit (150) generates first to fourth register control signals (REG0P to REG3P) and an interval signal (SAR_EN) in response to the seed signal (SEED). However, the proposed invention is not limited thereto, and the calibration control circuit (150) may generate the seed signal (SEED) in response to at least one of the rising signal (IDQS) and the falling signal (QDQS). In addition, the calibration control circuit (150) may generate control signals for controlling the calibration circuit (140) in addition to the first to fourth register control signals (REG0P to REG3P) and the interval signal (SAR_EN). This will be described in detail in Fig. 5.
상기와 같이, 본 발명의 실시예에 따른 반도체 장치는, 트레이닝 모드 시, 각 출력 클럭에 대응되는 펄스들로 구성된 트레이닝 신호를 데이터 스트로브 패드로 순차적으로 출력하고, 데이터 스트로브 패드를 통해 최종적으로 전달되는 트레이닝 신호를 피드백 받을 수 있다. 또한, 피드백된 펄스들의 라이징 에지와 폴링 에지에 대응되는 라이징 신호(IDQS) 및 폴링 신호(QDQS)의 위상차를 측정하여 피드백된 펄스들의 각 펄스폭을 검출할 수 있다. 검출된 각 펄스폭을 레지스터들에 저장하고 저장된 값을 이용하여 평균값 및 편차를 계산하여 각 출력 클력의 듀티비를 개별적으로 보정함으로써 스트로브 신호의 1-비트 펄스폭을 일정하게 유지할 수 있다. As described above, the semiconductor device according to the embodiment of the present invention can, in the training mode, sequentially output a training signal composed of pulses corresponding to each output clock to the data strobe pad, and receive a feedback of the training signal finally transmitted through the data strobe pad. In addition, the phase difference between the rising signal (IDQS) and the falling signal (QDQS) corresponding to the rising edge and falling edge of the fed-back pulses can be measured to detect each pulse width of the fed-back pulses. The detected pulse widths are stored in registers, and the average value and the deviation are calculated using the stored values to individually correct the duty ratio of each output clock, thereby maintaining the 1-bit pulse width of the strobe signal constant.
도 3 은 도 1 의 패턴 생성부(122)의 회로도 이다. Figure 3 is a circuit diagram of the pattern generation unit (122) of Figure 1.
도 3 을 참조하면, 패턴 생성부(122)는, 제 1 주파수 분주기(210), 제 2 주파수 분주기(220), 제 1 신호 생성기(230), 제 2 신호 생성기(240) 및 패턴 조합기(250)를 포함할 수 있다. 또한, 패턴 생성부(122)는, 트레이닝 모드 신호(CAL_EN) 및 트레이닝 종료 신호(CAL_OFF)의 반전 신호를 로직 낸드 연산하여 패턴 구간 신호(PT)를 생성하는 리셋 제어기(260)을 더 포함할 수 있다. 제 1 주파수 분주기(210), 제 2 주파수 분주기(220), 제 1 신호 생성기(230) 및 제 2 신호 생성기(240)는, 패턴 구간 신호(PT)에 따라 초기화될 수 있다. Referring to FIG. 3, the pattern generation unit (122) may include a first frequency divider (210), a second frequency divider (220), a first signal generator (230), a second signal generator (240), and a pattern combiner (250). In addition, the pattern generation unit (122) may further include a reset controller (260) that generates a pattern interval signal (PT) by performing a logic NAND operation on an inverted signal of a training mode signal (CAL_EN) and a training end signal (CAL_OFF). The first frequency divider (210), the second frequency divider (220), the first signal generator (230), and the second signal generator (240) may be initialized according to the pattern interval signal (PT).
제 1 주파수 분주기(210)는, 제 1 테스트 신호(R1DOA)의 주파수를 소정 주기(예를 들어, 2 )로 분주하여 제 1 분주 클럭(R1DOACLK)을 생성할 수 있다. 제 2 주파수 분주기(220)는, 제 2 테스트 신호(R2DOA)의 주파수를 소정 주기(예를 들어, 2)로 분주하여 제 2 분주 클럭(R2DOACLK)을 생성할 수 있다. 제 1 주파수 분주기(210) 및 제 2 주파수 분주기(220)는, 제 1 및 제 2 테스트 신호(R1DOA, R2DOA) 중 대응되는 신호를 클럭단으로 입력받고, 출력단(Q)의 반전 신호를 입력단(D)으로 입력받고, 패턴 구간 신호(PT)를 리셋 신호(R)로 입력받는 D-플립플롭으로 구성될 수 있다. The first frequency divider (210) can divide the frequency of the first test signal (R1DOA) by a predetermined period (for example, 2) to generate a first divided clock (R1DOACLK). The second frequency divider (220) can divide the frequency of the second test signal (R2DOA) by a predetermined period (for example, 2) to generate a second divided clock (R2DOACLK). The first frequency divider (210) and the second frequency divider (220) can be configured as a D flip-flop that receives a corresponding signal among the first and second test signals (R1DOA, R2DOA) as a clock terminal, receives an inverted signal of an output terminal (Q) as an input terminal (D), and receives a pattern interval signal (PT) as a reset signal (R).
제 1 신호 생성기(230)는, 제 1 분주 클럭(R1DOACLK)에 따라 순차적으로 활성화되는 제 1 내지 제 7 쉬프트 신호(D0~D6)를 생성할 수 있다. 제 1 신호 생성기(230)는, 직렬 연결되어 제 1 분주 클럭(R1DOACLK)의 폴링 에지에 동기되어 제 1 내지 제 7 쉬프트 신호(D0~D6)를 각각 출력하는 제 1 내지 제 7 쉬프터(231~237)로 구성될 수 있다. 제 1 내지 제 7 쉬프터(231~237) 각각은, 제 1 분주 클럭(R1DOACLK)의 반전 신호를 클럭단으로 입력받고, 앞단의 출력단(Q)의 신호를 입력단(D)으로 입력받고, 패턴 구간 신호(PT)를 리셋 신호(R)로 입력받는 D-플립플롭으로 구성될 수 있다. 제 1 쉬프터(231)는, 전원 전압(VDD)을 입력단(D)으로 입력받을 수 있다. The first signal generator (230) can generate first to seventh shift signals (D0 to D6) that are sequentially activated according to the first divided clock (R1DOACLK). The first signal generator (230) can be composed of first to seventh shifters (231 to 237) that are connected in series and output the first to seventh shift signals (D0 to D6) respectively in synchronization with the falling edge of the first divided clock (R1DOACLK). Each of the first to seventh shifters (231 to 237) can be composed of a D flip-flop that receives an inverted signal of the first divided clock (R1DOACLK) as a clock terminal, a signal of an output terminal (Q) of a front terminal as an input terminal (D), and receives a pattern interval signal (PT) as a reset signal (R). The first shifter (231) can receive power voltage (VDD) as input terminal (D).
제 2 신호 생성기(240)는, 제 1 신호 생성기(230)의 출력(즉, 제 7 쉬프트 신호(D6))을 입력받아 제 2 분주 클럭(R2DOACLK)에 따라 순차적으로 활성화되는 제 8 내지 제 11 쉬프트 신호(D7~D10)를 생성할 수 있다. 제 2 신호 생성기(240)는, 직렬 연결되어 제 2 분주 클럭(R2DOACLK)의 폴링 에지에 동기되어 제 8 내지 제 11 쉬프트 신호(D7~D10)를 각각 출력하는 제 8 내지 제 11 쉬프터(241~244)로 구성될 수 있다. 제 8 내지 제 11 쉬프터(241~244) 각각은, 제 2 분주 클럭(R2DOACLK)의 반전 신호를 클럭단으로 입력받고, 앞단의 출력단(Q)의 신호를 입력단(D)으로 입력받고, 패턴 구간 신호(PT)를 리셋 신호(R)로 입력받는 D-플립플롭으로 구성될 수 있다. 제 8 쉬프터(241)는, 제 7 쉬프트 신호(D6)를 입력단(D)으로 입력받을 수 있다.The second signal generator (240) can receive the output of the first signal generator (230) (i.e., the seventh shift signal (D6)) and generate the eighth to eleventh shift signals (D7 to D10) that are sequentially activated according to the second divided clock (R2DOACLK). The second signal generator (240) can be composed of the eighth to eleventh shifters (241 to 244) that are connected in series and output the eighth to eleventh shift signals (D7 to D10) respectively in synchronization with the falling edge of the second divided clock (R2DOACLK). Each of the eighth to eleventh shifters (241 to 244) may be configured as a D flip-flop that receives an inversion signal of a second divided clock (R2DOACLK) as a clock terminal, a signal of an output terminal (Q) of a previous stage as an input terminal (D), and a pattern interval signal (PT) as a reset signal (R). The eighth shifter (241) may receive a seventh shift signal (D6) as an input terminal (D).
패턴 조합기(250)는, 제 1 내지 제 11 쉬프트 신호(D0~D10) 중 적어도 두 개를 조합하여 제 1 내지 제 4 패턴 데이터(BL0_CALP~BL3_CALP)를 출력할 수 있다. 바람직하게, 패턴 조합기(250)는, 제 1 신호 생성기(230)로부터 출력되는 제 1 내지 제 7 쉬프트 신호(D0~D6) 중 하나와, 제 2 신호 생성기(240)로부터 출력되는 제 8 내지 제 11 쉬프트 신호(D7~D10) 중 하나를 조합하여 제 1 내지 제 4 패턴 데이터(BL0_CALP~BL3_CALP) 중 하나로 출력할 수 있다. 예를 들어, 패턴 조합기(250)는, 제 1 쉬프트 신호(D0)와 제 5 쉬프트 신호(D4)의 반전 신호를 로직 앤드 연산하여 제 1 패턴 데이터(BL0_CALP)를 생성하고, 제 5 쉬프트 신호(D4)와 제 7 쉬프트 신호(D6)의 반전 신호를 로직 앤드 연산하여 제 2 패턴 데이터(BL1_CALP)를 생성하고, 제 7 쉬프트 신호(D6)와 제 9 쉬프트 신호(D8)의 반전 신호를 로직 앤드 연산하여 제 3 패턴 데이터(BL2_CALP)를 생성하고, 제 9 쉬프트 신호(D8)와 전지 전압(VSS)를 로직 앤드 연산하여 제 4 패턴 데이터(BL3_CALP)를 생성할 수 있다. The pattern combiner (250) can output the first to fourth pattern data (BL0_CALP to BL3_CALP) by combining at least two of the first to eleventh shift signals (D0 to D10). Preferably, the pattern combiner (250) can output the first to fourth pattern data (BL0_CALP to BL3_CALP) by combining one of the first to seventh shift signals (D0 to D6) output from the first signal generator (230) and one of the eighth to eleventh shift signals (D7 to D10) output from the second signal generator (240). For example, the pattern combiner (250) can generate first pattern data (BL0_CALP) by performing a logic-AND operation on the inverted signals of the first shift signal (D0) and the fifth shift signal (D4), generate second pattern data (BL1_CALP) by performing a logic-AND operation on the inverted signals of the fifth shift signal (D4) and the seventh shift signal (D6), generate third pattern data (BL2_CALP) by performing a logic-AND operation on the inverted signals of the seventh shift signal (D6) and the ninth shift signal (D8), and generate fourth pattern data (BL3_CALP) by performing a logic-AND operation on the ninth shift signal (D8) and the battery voltage (VSS).
도 4 는 도 3 의 패턴 생성부(122)의 동작을 설명하기 위한 파형도 이다. Figure 4 is a waveform diagram for explaining the operation of the pattern generation unit (122) of Figure 3.
도 4 를 참조하면, 리셋 제어기(260)는, 트레이닝 모드 신호(CAL_EN)에 따라 패턴 구간 신호(PT)를 로직 로우 레벨로 생성할 수 있다. Referring to FIG. 4, the reset controller (260) can generate a pattern interval signal (PT) at a logic low level according to a training mode signal (CAL_EN).
패턴 구간 신호(PT)가 로직 로우 레벨이 되면, 제 1 주파수 분주기(210)는, 제 1 테스트 신호(R1DOA)를 2 분주하여 제 1 분주 클럭(R1DOACLK)을 생성하고, 제 2 주파수 분주기(220)는, 제 2 테스트 신호(R2DOA)를 2 분주하여 제 2 분주 클럭(R2DOACLK)을 생성한다. 제 1 신호 생성기(230)는, 제 1 분주 클럭(R1DOACLK)의 폴링 에지에 따라 제 1 내지 제 7 쉬프트 신호(D0~D6)를 순차적으로 활성화시켜 출력할 수 있다. 제 2 신호 생성기(240)는, 제 7 쉬프트 신호(D6)의 활성화 이후 제 2 분주 클럭(R2DOACLK)의 폴링 에지에 따라 제 8 내지 제 11 쉬프트 신호(D7~D10)를 순차적으로 활성화시켜 출력할 수 있다. When the pattern interval signal (PT) becomes a logic low level, the first frequency divider (210) divides the first test signal (R1DOA) by two to generate a first divided clock (R1DOACLK), and the second frequency divider (220) divides the second test signal (R2DOA) by two to generate a second divided clock (R2DOACLK). The first signal generator (230) can sequentially activate and output the first to seventh shift signals (D0 to D6) according to the falling edge of the first divided clock (R1DOACLK). The second signal generator (240) can sequentially activate and output the eighth to eleventh shift signals (D7 to D10) according to the falling edge of the second divided clock (R2DOACLK) after the activation of the seventh shift signal (D6).
패턴 조합기(250)는, 제 1 쉬프트 신호(D0)의 라이징 에지와 제 5 쉬프트 신호(D4)의 라이징 에지 사이의 활성화 구간을 가지는 제 1 패턴 데이터(BL0_CALP)를 생성하고, 제 5 쉬프트 신호(D4)의 라이징 에지와 제 7 쉬프트 신호(D6)의 라이징 에지 사이의 활성화 구간을 가지는 제 2 패턴 데이터(BL1_CALP)를 생성하고, 제 7 쉬프트 신호(D6)의 라이징 에지와 제 9 쉬프트 신호(D8)의 라이징 에지 사이의 활성화 구간을 가지는 제 3 패턴 데이터(BL2_CALP)를 생성하고, 제 9 쉬프트 신호(D8)의 라이징 에지와 트레이닝 모드 신호(CAL_EN)의 라이징 에지 사이의 활성화 구간을 가지는 제 4 패턴 데이터(BL3_CALP)를 생성할 수 있다. The pattern combiner (250) can generate first pattern data (BL0_CALP) having an activation section between the rising edge of the first shift signal (D0) and the rising edge of the fifth shift signal (D4), generate second pattern data (BL1_CALP) having an activation section between the rising edge of the fifth shift signal (D4) and the rising edge of the seventh shift signal (D6), generate third pattern data (BL2_CALP) having an activation section between the rising edge of the seventh shift signal (D6) and the rising edge of the ninth shift signal (D8), and generate fourth pattern data (BL3_CALP) having an activation section between the rising edge of the ninth shift signal (D8) and the rising edge of the training mode signal (CAL_EN).
이 후, 리셋 제어기(260)는, 트레이닝 종료 신호(CAL_OFF)가 로직 하이 레벨로 활성화됨에 따라 로직 하이 레벨의 패턴 구간 신호(PT)를 생성할 수 있다.After this, the reset controller (260) can generate a pattern interval signal (PT) of a logic high level as the training end signal (CAL_OFF) is activated to a logic high level.
제 1 주파수 분주기(210), 제 2 주파수 분주기(220), 제 1 신호 생성기(230) 및 제 2 신호 생성기(240)는, 패턴 구간 신호(PT)에 따라 초기화되어, 제 1 내지 제 4 패턴 데이터(BL0_CALP~BL3_CALP)는 초기화될 수 있다. The first frequency divider (210), the second frequency divider (220), the first signal generator (230), and the second signal generator (240) are initialized according to the pattern interval signal (PT), so that the first to fourth pattern data (BL0_CALP to BL3_CALP) can be initialized.
상기와 같이, 패턴 생성부(122)는, 제 1 및 제 2 테스트 신호(R1DOA, R2DOA)를 이용하여 순차적으로 활성화되되 서로 겹치지 않는 활성화 구간을 가지는 제 1 내지 제 4 패턴 데이터(BL0_CALP~BL3_CALP)를 생성할 수 있다. As described above, the pattern generation unit (122) can generate first to fourth pattern data (BL0_CALP to BL3_CALP) that are sequentially activated using the first and second test signals (R1DOA, R2DOA) but have activation sections that do not overlap each other.
한편, 도 4 에 도시된 바와 같이, 제 1 패턴 데이터(BL0_CALP) 및 제 4 패턴 데이터(BL3_CALP)는, 제 2 및 제 3 패턴 데이터(BL1_CALP, BL2_CALP)의 적어도 2 배의 구간 동안 활성화될 수 있다. 이는, 제 1 패턴 데이터(BL0_CALP)의 활성화 구간의 초기 구간이 캘리브레이션 회로(140)의 초기 트리밍 설정 동작을 수행하기 위해 할당되고, 제 4 패턴 데이터(BL3_CALP)의 후기 구간이 편차 계산 동작을 수행하기 위해 할당되기 때문이다. 이와 관련한 자세한 설명은 도 5 에서 설명하기로 한다. Meanwhile, as illustrated in FIG. 4, the first pattern data (BL0_CALP) and the fourth pattern data (BL3_CALP) can be activated for at least twice as long as the second and third pattern data (BL1_CALP, BL2_CALP). This is because the initial section of the activation section of the first pattern data (BL0_CALP) is allocated to perform the initial trimming setting operation of the calibration circuit (140), and the latter section of the fourth pattern data (BL3_CALP) is allocated to perform the deviation calculation operation. A detailed description thereof will be described with reference to FIG. 5.
도 5 는 도 1 의 캘리브레이션 회로(140) 및 캘리브레이션 제어 회로(150)의 상세 블록도 이다. Fig. 5 is a detailed block diagram of the calibration circuit (140) and calibration control circuit (150) of Fig. 1.
도 5 를 참조하면, 캘리브레이션 회로(140)는, 검출부(310), 저장부(320) 및 평균-편차 계산부(330)를 포함할 수 있다. Referring to FIG. 5, the calibration circuit (140) may include a detection unit (310), a storage unit (320), and an average-deviation calculation unit (330).
검출부(310)는, 라이징 신호(IDQS) 및 폴링 신호(QDQS)의 위상차를 검출하여 검출 코드(DOUT<0:3>)를 생성할 수 있다. The detection unit (310) can detect the phase difference between the rising signal (IDQS) and the falling signal (QDQS) and generate a detection code (DOUT<0:3>).
보다 자세하게, 검출부(310)는, 제 1 트리머(312), 제 2 트리머(314), 비교기(316) 및 트리밍 제어기(318)를 포함할 수 잇다. In more detail, the detection unit (310) may include a first trimmer (312), a second trimmer (314), a comparator (316), and a trimming controller (318).
제 1 트리머(312)는, 트리밍 코드(D_TRIM<0:5>)에 따라 지연량이 조절되는 지연 라인으로 구현되며, 제 2 트리머(314)는, 검출 코드(DOUT<0:3>)에 따라 지연량이 조절되는 지연 라인으로 구현될 수 있다. 제 1 트리머(312) 및 제 2 트리머(314)는, 직렬 연결되어, 라이징 신호(IDQS)를 소정 시간 지연시켜 지연된 라이징 신호(IDQSD)를 출력할 수 있다. 비교기(316)는, 지연된 라이징 신호(IDQSD) 및 폴링 신호(QDQS)의 위상차를 비교하여 비교 신호(COMP)를 출력할 수 있다. 바람직하게, 비교기(316)는, 지연된 라이징 신호(IDQSD)를 입력단으로 입력받고 폴링 신호(QDQS)를 클럭 신호로 입력받아 비교 신호(COMP)를 출력단으로 출력하는 D-플립플롭으로 구성될 수 있다. 즉, 비교기(316)는, 폴링 신호(QDQS)에 따라 지연된 라이징 신호(IDQSD)를 래치하여 비교 신호(COMP)로 출력할 수 있다. 트리밍 제어기(318)는, 트레이닝 모드 신호(CAL_EN)가 활성화되면, 폴링 신호(QDQS)에 따라 소정 주기로 활성화되는 시드 신호(SEED) 및 제 1 내지 제 7 펄스 신호(P0~P6)를 생성할 수 있다. 트리밍 제어기(318)는, 시드 신호(SEED) 및 제 1 내지 제 7 펄스 신호(P0~P6)에 따라, 비교 신호(COMP)에 대응되는 트리밍 코드(D_TRIM<0:5>) 및 검출 코드(DOUT<0:3>)를 생성할 수 있다. The first trimmer (312) may be implemented as a delay line whose delay amount is adjusted according to a trimming code (D_TRIM<0:5>), and the second trimmer (314) may be implemented as a delay line whose delay amount is adjusted according to a detection code (DOUT<0:3>). The first trimmer (312) and the second trimmer (314) may be connected in series to delay a rising signal (IDQS) by a predetermined time and output a delayed rising signal (IDQSD). The comparator (316) may compare a phase difference between the delayed rising signal (IDQSD) and the falling signal (QDQS) and output a comparison signal (COMP). Preferably, the comparator (316) may be configured as a D flip-flop which receives the delayed rising signal (IDQSD) as an input terminal, receives the falling signal (QDQS) as a clock signal, and outputs the comparison signal (COMP) as an output terminal. That is, the comparator (316) can latch the delayed rising signal (IDQSD) according to the polling signal (QDQS) and output it as the comparison signal (COMP). The trimming controller (318) can generate a seed signal (SEED) and first to seventh pulse signals (P0 to P6) that are activated at a predetermined cycle according to the polling signal (QDQS) when the training mode signal (CAL_EN) is activated. The trimming controller (318) can generate a trimming code (D_TRIM<0:5>) and a detection code (DOUT<0:3>) corresponding to the comparison signal (COMP) according to the seed signal (SEED) and the first to seventh pulse signals (P0 to P6).
저장부(320)는, 제 1 내지 제 4 레지스터 제어 신호(REG0P~REG3P)에 따라 각각 활성화되는 제 1 내지 제 4 레지스터(미도시)를 포함할 수 있다. 저장부(320)는, 구간 신호(SAR_EN)가 활성화되면, 제 1 내지 제 4 레지스터 제어 신호(REG0P~REG3P)에 따라 검출 코드(DOUT<0:3>)를 순차적으로 제 1 내지 제 4 레지스터에 저장할 수 있다. 저장부(320)는, 구간 신호(SAR_EN)가 비활성화되면, 제 1 내지 제 4 레지스터 제어 신호(REG0P~REG3P)에 따라 평균-편차 계산부(330)로부터 제공되는 누적 편차 코드(FB_DEV<0:3>)를 순차적으로 제 1 내지 제 4 레지스터에 저장할 수 있다. The storage unit (320) may include first to fourth registers (not shown) that are activated according to the first to fourth register control signals (REG0P to REG3P), respectively. When the interval signal (SAR_EN) is activated, the storage unit (320) may sequentially store the detection code (DOUT<0:3>) in the first to fourth registers according to the first to fourth register control signals (REG0P to REG3P). When the interval signal (SAR_EN) is deactivated, the storage unit (320) may sequentially store the accumulated deviation code (FB_DEV<0:3>) provided from the average-deviation calculation unit (330) in the first to fourth registers according to the first to fourth register control signals (REG0P to REG3P).
평균-편차 계산부(330)는, 구간 신호(SAR_EN)가 활성화되면, 제 1 내지 제 4 레지스터 제어 신호(REG0P~REG3P) 및 누적 클럭(ACC_CLK)에 따라 제 1 내지 제 4 저장값을 누적하여 합산 신호를 생성할 수 있다. 평균-편차 계산부(330)는, 구간 신호(SAR_EN)가 비활성화되면, 누적 클럭(ACC_CLK), 누적 리셋 신호(ACC_RST), 평균 산출 신호(REG_QW) 및 선택 신호(REG_SEL<0:2>)에 따라, 합산 신호를 토대로 평균값을 산출하고, 평균값과 제 1 내지 제 4 저장값 간의 편차에 대응되는 누적 편차 코드(FB_DEV<0:3>)를 산출하여 저장부(320)로 제공할 수 있다. The mean-deviation calculation unit (330) can generate a sum signal by accumulating the first to fourth storage values according to the first to fourth register control signals (REG0P to REG3P) and the accumulation clock (ACC_CLK) when the interval signal (SAR_EN) is activated. The mean-deviation calculation unit (330) can calculate an average value based on the sum signal according to the accumulation clock (ACC_CLK), the accumulation reset signal (ACC_RST), the average calculation signal (REG_QW), and the selection signal (REG_SEL<0:2>) when the interval signal (SAR_EN) is deactivated, and can calculate an accumulated deviation code (FB_DEV<0:3>) corresponding to a deviation between the average value and the first to fourth storage values and provide the calculated average value to the storage unit (320).
한편, 캘리브레이션 제어 회로(150)는, 트레이닝 모드 신호(CAL_EN)에 따라 활성화되어, 시드 신호(SEED) 및 제 1 내지 제 7 펄스 신호(P0~P6) 중 일부 신호들(예를 들어, 제 3 펄스 신호(P2) 및 제 5 펄스 신호(P4))에 따라, 제 1 내지 제 4 레지스터 제어 신호(REG0P~REG3P), 구간 신호(SAR_EN), 누적 클럭(ACC_CLK), 누적 리셋 신호(ACC_RST), 평균 산출 신호(REG_QW) 및 선택 신호(REG_SEL<0:2>)를 생성할 수 있다. 이와 관련한 자세한 설명은 도 8 에서 설명하기로 한다.Meanwhile, the calibration control circuit (150) is activated according to the training mode signal (CAL_EN) and can generate the first to fourth register control signals (REG0P to REG3P), an interval signal (SAR_EN), an accumulation clock (ACC_CLK), an accumulation reset signal (ACC_RST), an average calculation signal (REG_QW), and a selection signal (REG_SEL<0:2>) according to some signals (e.g., the third pulse signal (P2) and the fifth pulse signal (P4)) among the seed signal (SEED) and the first to seventh pulse signals (P0 to P6). A detailed description thereof will be given with reference to FIG. 8.
참고로, 도 4 에서 설명된 제 1 패턴 데이터(BL0_CALP)의 활성화 구간의 초기 구간 동안, 트리밍 코드(D_TRIM<0:5>)에 따라 제 1 트리머(312)의 지연량이 설정될 수 있다. 이 후, 제 1 패턴 데이터(BL0_CALP)의 활성화 구간의 후기 구간과, 제 2 및 제 3 패턴 데이터(BL1_CALP, BL2_CALP)의 활성화 구간과 제 4 패턴 데이터(BL3_CALP)의 활성화 구간의 초기 구간 동안, 검출 코드(DOUT<0:3>)에 따라 제 2 트리머(314)의 지연량이 조절될 수 있다. 이하에서는, 제 1 트리머(312)의 지연량을 설정하는 동작을 초기 트리밍 설정 동작으로 정의하고, 제 2 트리머(314)의 지연량을 조절하는 동작을 위상 검출 동작으로 정의하기로 한다. 이 후, 제 4 패턴 데이터(BL3_CALP)의 활성화 구간의 후기 구간 동안 평균-편차 계산부(330)의 평균-편차 계산 동작이 수행될 수 있다. For reference, during the initial section of the activation section of the first pattern data (BL0_CALP) described in FIG. 4, the delay amount of the first trimmer (312) can be set according to the trimming code (D_TRIM<0:5>). Thereafter, during the latter section of the activation section of the first pattern data (BL0_CALP), the activation sections of the second and third pattern data (BL1_CALP, BL2_CALP) and the initial section of the activation section of the fourth pattern data (BL3_CALP), the delay amount of the second trimmer (314) can be adjusted according to the detection code (DOUT<0:3>). Hereinafter, the operation of setting the delay amount of the first trimmer (312) is defined as the initial trimming setting operation, and the operation of adjusting the delay amount of the second trimmer (314) is defined as the phase detection operation. After this, the average-deviation calculation operation of the average-deviation calculation unit (330) can be performed during the latter section of the activation section of the fourth pattern data (BL3_CALP).
상기와 같이, 캘리브레이션 회로(140)의 검출부(310)는, 트레이닝 모드 신호(CAL_EN)가 활성화되면, 초기 트리밍 설정 동작을 수행하여 제 1 트리머(312)의 지연량을 설정하고, 이후 위상 검출 동작을 통해 제 2 트리머(314)의 지연량을 조절할 수 있다. 구간 신호(SAR_EN)가 활성화되면, 저장부(320)는 검출 코드(DOUT<0:3>)를 순차적으로 제 1 내지 제 4 레지스터에 저장할 수 있다. 이 후, 구간 신호(SAR_EN)가 비활성화되면, 평균-편차 계산부(330)는 제 1 내지 제 4 저장값의 평균값을 산출하고, 평균값과 제 1 내지 제 4 저장값의 편차에 대응되는 누적 편차 코드(FB_DEV<0:3>)를 산출하여 저장부(320)로 제공할 수 있다. 저장부(320)는 평균-편차 계산부(330)로부터 제공되는 누적 편차 코드(FB_DEV<0:3>)를 순차적으로 제 1 내지 제 3 레지스터에 재저장할 수 있다. 제 1 내지 제 3 레지스터에 재저장된 제 1 내지 제 3 저장값은 제 1 내지 제 3 캘리브레이션 코드(R1_F1<0:3>, F1_R2<0:3>, R2_F2<0:3>)로 각각 출력될 수 있다.As described above, when the training mode signal (CAL_EN) is activated, the detection unit (310) of the calibration circuit (140) performs an initial trimming setting operation to set the delay amount of the first trimmer (312), and then adjusts the delay amount of the second trimmer (314) through a phase detection operation. When the interval signal (SAR_EN) is activated, the storage unit (320) can sequentially store the detection code (DOUT<0:3>) in the first to fourth registers. Thereafter, when the interval signal (SAR_EN) is deactivated, the mean-deviation calculation unit (330) can calculate an average value of the first to fourth storage values, and calculate an accumulated deviation code (FB_DEV<0:3>) corresponding to a deviation between the average value and the first to fourth storage values, and provide the calculated accumulated deviation code to the storage unit (320). The storage unit (320) can sequentially re-store the accumulated deviation code (FB_DEV<0:3>) provided from the mean-deviation calculation unit (330) in the first to third registers. The first to third storage values restored to the first to third registers can be output as the first to third calibration codes (R1_F1<0:3>, F1_R2<0:3>, R2_F2<0:3>), respectively.
도 6 은 도 5 의 트리밍 제어기(318)의 블록도 이다. FIG. 6 is a block diagram of the trimming controller (318) of FIG. 5.
도 6 을 참조하면, 트리밍 제어기(318)는, 주기 생성기(410), 코드 변환기(420), 초기 구간 설정기(430) 및 코드 출력기(440)를 포함할 수 있다. Referring to FIG. 6, the trimming controller (318) may include a cycle generator (410), a code converter (420), an initial interval setter (430), and a code outputter (440).
주기 생성기(410)는, 트레이닝 모드 신호(CAL_EN)가 활성화되면, 반전된 폴링 신호(QDQSB)에 따라 시드 신호(SEED) 및 제 1 내지 제 7 펄스 신호(P0~P6)를 순차적으로 활성화시킬 수 있다. 시드 신호(SEED) 및 제 1 내지 제 7 펄스 신호(P0~P6)는, 로직 로우 레벨로 소정 구간 활성화되는 펄스 신호일 수 있다. 한편, 본 실시예에서는, 주기 생성부(410)가 반전된 폴링 신호(QDQSB)를 이용하는 것으로 설명하였지만, 제안 발명은 이에 한정되지 않으며, 실시예에 따라, 폴링 신호(QDQS) 또는 반전된 폴링 신호(QDQSB) 중 하나를 이용할 수 있다. The period generator (410) can sequentially activate the seed signal (SEED) and the first to seventh pulse signals (P0 to P6) according to the inverted polling signal (QDQSB) when the training mode signal (CAL_EN) is activated. The seed signal (SEED) and the first to seventh pulse signals (P0 to P6) can be pulse signals that are activated for a predetermined period at a logic low level. Meanwhile, in the present embodiment, the period generator (410) is described as using the inverted polling signal (QDQSB), but the proposed invention is not limited thereto, and according to an embodiment, either the polling signal (QDQS) or the inverted polling signal (QDQSB) can be used.
보다 자세하게, 주기 생성기(410)는, 시드 신호 생성기(412) 및 펄스 생성기(414)를 포함할 수 있다.In more detail, the period generator (410) may include a seed signal generator (412) and a pulse generator (414).
시드 신호 생성기(412)는, 트레이닝 모드 신호(CAL_EN)가 활성화되면, 반전된 폴링 신호(QDQSB) 및 제 7 펄스 신호(P6)에 따라 시드 신호(SEED)를 일정한 주기로 활성화시킬 수 있다. 펄스 생성기(414)는, 시드 신호(SEED)의 비활성화에 따라 순차적으로 활성화되는 제 1 펄스 신호(P0~P6)를 생성할 수 있다. The seed signal generator (412) can activate the seed signal (SEED) at a constant cycle according to the inverted polling signal (QDQSB) and the seventh pulse signal (P6) when the training mode signal (CAL_EN) is activated. The pulse generator (414) can generate the first pulse signal (P0 to P6) that is sequentially activated according to the deactivation of the seed signal (SEED).
코드 변환기(420)는, 시드 신호(SEED) 및 제 1 내지 제 7 펄스 신호(P0~P6)에 따라, 비교 신호(COMP)를 예비 코드(DOUT_PRE<0:5>)로 변환할 수 있다. 코드 변환기(420)는, 시드 신호(SEED)가 활성화되면 초기화되어, 제 1 내지 제 7 펄스 신호(P0~P6)에 따라 순차적으로 입력되는 비교 신호(COMP)를 예비 코드(DOUT_PRE<0:5>)로 변환할 수 있다.The code converter (420) can convert the comparison signal (COMP) into a preliminary code (DOUT_PRE<0:5>) according to the seed signal (SEED) and the first to seventh pulse signals (P0 to P6). The code converter (420) is initialized when the seed signal (SEED) is activated, and can convert the comparison signal (COMP) sequentially input according to the first to seventh pulse signals (P0 to P6) into a preliminary code (DOUT_PRE<0:5>).
초기 구간 설정부(430)는, 트레이닝 모드 신호(CAL_EN) 및 제 7 펄스 신호(P6)에 따라 트리밍 구간 신호(TRIM)를 생성할 수 있다. 초기 구간 설정부(430)는, 트레이닝 모드 신호(CAL_EN)의 비활성화 구간, 즉, 트레이닝 동작 전에 로직 하이 레벨로 설정되고, 제 7 펄스 신호(P6)에 따라 로직 로우 레벨로 비활성화되는 트리밍 구간 신호(TRIM)를 생성할 수 있다. 또한, 트리밍 구간 신호(TRIM)를 반전하여 반전된 트리밍 구간 신호(TRIMB)를 생성할 수 있다. 트리밍 구간 신호(TRIM)는, 초기 트리밍 설정 동작과 위상 검출 동작을 구분하기 위한 신호로, 도 4 에서 설명된 제 1 패턴 데이터(BL0_CALP)의 활성화 구간의 초기 구간 동안 로직 하이 레벨로 활성화될 수 있다. The initial section setting unit (430) can generate a trimming section signal (TRIM) according to the training mode signal (CAL_EN) and the seventh pulse signal (P6). The initial section setting unit (430) can generate a trimming section signal (TRIM) that is set to a logic high level during an inactive section of the training mode signal (CAL_EN), i.e., before a training operation, and is inactivated to a logic low level according to the seventh pulse signal (P6). In addition, the trimming section signal (TRIM) can be inverted to generate an inverted trimming section signal (TRIMB). The trimming section signal (TRIM) is a signal for distinguishing an initial trimming setting operation from a phase detection operation, and can be activated to a logic high level during an initial section of an active section of the first pattern data (BL0_CALP) described in FIG. 4.
코드 출력기(440)는, 트리밍 구간 신호(TRIM) 및 반전된 트리밍 구간 신호(TRIMB)에 따라 예비 코드(DOUT_PRE<0:5>)를 트리밍 코드(D_TRIM<0:5>) 또는 검출 코드(DOUT<0:3>)로 출력할 수 있다. 코드 출력기(440)는, 트리밍 구간 신호(TRIM)가 활성화되는 초기 트리밍 설정 동작 시, 예비 코드(DOUT_PRE<0:5>)를 트리밍 코드(D_TRIM<0:5>)로 출력하고, 제 7 펄스 신호(P6)에 동기되어 예비 코드(DOUT_PRE<0:5>)를 내부 래치(미도시)에 저장할 수 있다. 코드 출력기(440)는, 트리밍 구간 신호(TRIM)가 비활성화되는 위상 검출 동작 시, 래치에 저장된 코드를 트리밍 코드(D_TRIM<0:5>)로 출력하고, 예비 코드(DOUT_PRE<0:5>)를 검출 코드(DOUT<0:3>)로 출력할 수 있다. The code output unit (440) can output the preliminary code (DOUT_PRE<0:5>) as a trimming code (D_TRIM<0:5>) or a detection code (DOUT<0:3>) according to the trimming interval signal (TRIM) and the inverted trimming interval signal (TRIMB). The code output unit (440) can output the preliminary code (DOUT_PRE<0:5>) as a trimming code (D_TRIM<0:5>) during the initial trimming setting operation in which the trimming interval signal (TRIM) is activated, and can store the preliminary code (DOUT_PRE<0:5>) in an internal latch (not shown) in synchronization with the seventh pulse signal (P6). The code output device (440) can output the code stored in the latch as a trimming code (D_TRIM<0:5>) and output the reserve code (DOUT_PRE<0:5>) as a detection code (DOUT<0:3>) during a phase detection operation in which the trimming interval signal (TRIM) is deactivated.
도 7 은 도 6 의 주기 생성기(410)의 회로도 이다. Fig. 7 is a circuit diagram of the period generator (410) of Fig. 6.
도 7 을 참조하면, 시드 신호 생성기(412)는, 직렬 연결된 제 1 및 제 2 D-플립플롭(412A, 412B), 시드 신호 출력기(412C) 및 셋 조합기(412D)를 포함할 수 있다. Referring to FIG. 7, the seed signal generator (412) may include serially connected first and second D-flip-flops (412A, 412B), a seed signal outputter (412C), and a set combiner (412D).
제 1 D-플립플롭(412A)은, 접지 전압(VSS)을 입력단(D)으로 입력 받으며, 반전된 폴링 신호(QDQSB)를 클럭 신호로 입력받고, 셋 조합 신호(S3)를 셋 바 신호(SB)로 입력받아 출력단(Q)으로 제 1 출력 신호(S1)을 출력할 수 있다. 제 2 D-플립플롭(412B)은, 제 1 출력 신호(S1)을 입력단(D)으로 입력 받으며, 반전된 폴링 신호(QDQSB)를 클럭 신호로 입력받고, 셋 조합 신호(S3)를 셋 바 신호(SB)로 입력받아 출력단(Q)으로 제 2 출력 신호(S2)을 출력할 수 있다. 시드 신호 출력기(412C)는, 제 1 출력 신호(S1) 및 제 2 출력 신호(S2)를 조합하여 시드 신호(SEED)로 출력할 수 있다. 시드 신호 출력기(412C)는, 제 1 출력 신호(S1)가 로직 하이 레벨이고, 제 2 출력 신호(S2)가 로직 로우 레벨일 때 로직 로우 레벨로 활성화되는 시드 신호(SEED)를 출력할 수 있다. 셋 조합기(412D)는, 트레이닝 모드 신호(CAL_EN)와 제 7 펄스 신호(P6)를 로직 낸드 연산하여 셋 조합 신호(S3)를 생성할 수 있다. 즉, 셋 조합기(412D)는, 트레이닝 모드 신호(CAL_EN)와 제 7 펄스 신호(P6) 중 하나라도 로직 로우 레벨이 되면 로직 하이 레벨의 셋 조합 신호(S3)를 출력할 수 있다. The first D flip-flop (412A) can receive a ground voltage (VSS) as an input terminal (D), receive an inverted falling signal (QDQSB) as a clock signal, and receive a set combination signal (S3) as a set bar signal (SB) to output a first output signal (S1) to an output terminal (Q). The second D flip-flop (412B) can receive a first output signal (S1) as an input terminal (D), receive an inverted falling signal (QDQSB) as a clock signal, and receive a set combination signal (S3) as a set bar signal (SB) to output a second output signal (S2) to an output terminal (Q). The seed signal output unit (412C) can combine the first output signal (S1) and the second output signal (S2) and output a seed signal (SEED). The seed signal output unit (412C) can output a seed signal (SEED) that is activated to a logic low level when the first output signal (S1) is at a logic high level and the second output signal (S2) is at a logic low level. The set combiner (412D) can generate a set combination signal (S3) by performing a logic NAND operation on the training mode signal (CAL_EN) and the seventh pulse signal (P6). That is, the set combiner (412D) can output the set combination signal (S3) of a logic high level when at least one of the training mode signal (CAL_EN) and the seventh pulse signal (P6) becomes a logic low level.
상기의 구성으로, 시드 신호 생성기(412)는, 트레이닝 모드 신호(CAL_EN)의 비활성화 구간, 즉, 트레이닝 동작 전에 로직 하이 레벨로 설정되고, 제 7 펄스 신호(P6)에 따라 소정 주기로 로직 로우 레벨로 활성화되는 시드 신호(SEED)를 출력할 수 있다. With the above configuration, the seed signal generator (412) can output a seed signal (SEED) that is set to a logic high level during the deactivation period of the training mode signal (CAL_EN), i.e., before the training operation, and is activated to a logic low level at a predetermined cycle according to the seventh pulse signal (P6).
펄스 생성기(414)는, 직렬 연결된 제 3 내지 제 9 D-플립플롭(414A~414G)을 포함할 수 있다. The pulse generator (414) may include third to ninth D-flip-flops (414A to 414G) connected in series.
제 3 내지 제 9 D-플립플롭(414A~414G)은, 트레이닝 모드 신호(CAL_EN)를 셋 바 신호(SB)로 입력받고, 반전된 폴링 신호(QDQSB)를 클럭 신호로 입력받을 수 있다. 제 3 D-플립플롭(414A)은, 시드 신호(SEED)를 입력단(D)으로 입력받아 출력단(Q)으로 제 1 펄스 신호(P0)를 출력할 수 있다. 제 4 내지 제 9 D-플립플롭(414B~414G)은, 앞단의 출력 신호를 입력단(D)으로 입력받아 출력단(Q)으로 제 2 내지 제 7 펄스 신호(P1~P6)를 순차적으로 출력할 수 있다. The third to ninth D flip-flops (414A to 414G) can receive a training mode signal (CAL_EN) as a set bar signal (SB) and an inverted polling signal (QDQSB) as a clock signal. The third D flip-flop (414A) can receive a seed signal (SEED) as an input terminal (D) and output a first pulse signal (P0) as an output terminal (Q). The fourth to ninth D flip-flops (414B to 414G) can receive an output signal of a previous stage as an input terminal (D) and sequentially output the second to seventh pulse signals (P1 to P6) as an output terminal (Q).
상기의 구성으로, 펄스 생성기(414)는, 트레이닝 모드 신호(CAL_EN)의 비활성화 구간, 즉, 트레이닝 동작 전에 로직 하이 레벨로 설정되고, 로직 로우 레벨의 시드 신호(SEED)가 입력된 후 반전된 폴링 신호(QDQSB)의 토글링에 따라 순차적으로 로직 로우 레벨로 활성화되는 제 1 내지 제 7 펄스 신호(P0~P6)를 출력할 수 있다. With the above configuration, the pulse generator (414) can output the first to seventh pulse signals (P0 to P6) that are set to a logic high level during the inactive section of the training mode signal (CAL_EN), i.e., before the training operation, and are sequentially activated to a logic low level according to the toggling of the inverted polling signal (QDQSB) after the seed signal (SEED) of a logic low level is input.
도 8 은 도 6 의 코드 변환기(420)의 회로도 이다. Fig. 8 is a circuit diagram of the code converter (420) of Fig. 6.
도 8 을 참조하면, 코드 변환기(420)는, 제 1 내지 제 7 D-플립플롭(420A~420G)을 포함할 수 있다. Referring to FIG. 8, the code converter (420) may include first to seventh D-flip-flops (420A to 420G).
제 1 내지 제 7 D-플립플롭(420A~420G)은, 비교 신호(COMP)를 입력단(D)으로 입력받고, 시드 신호(SEED)를 리셋 바 신호(RB)로 입력받고, 제 7 내지 제 1 펄스 신호(P6~P0)를 셋 바 신호(SB)로 각각 입력받을 수 있다. 제 1 D-플립플롭(420A)은, 접지 전압(VSS)을 클럭 신호로 입력받고, 제 2 내지 제 7 D-플립플롭(420B~420G)은, 제 1 내지 제 6 D-플립플롭(420A~420F)의 출력단(Q)의 신호를 클럭 신호로 입력받아 예비 코드(DOUT_PRE<0:5>)를 출력할 수 있다. The first to seventh D flip-flops (420A to 420G) can receive a comparison signal (COMP) as an input terminal (D), a seed signal (SEED) as a reset bar signal (RB), and the seventh to first pulse signals (P6 to P0) as a set bar signal (SB), respectively. The first D flip-flop (420A) can receive a ground voltage (VSS) as a clock signal, and the second to seventh D flip-flops (420B to 420G) can receive a signal of an output terminal (Q) of the first to sixth D flip-flops (420A to 420F) as a clock signal and output a preliminary code (DOUT_PRE<0:5>).
상기의 구성으로, 코드 변환기(420)는, 시드 신호(SEED)가 활성화되면 로직 로우 레벨로 초기화되고, 제 1 내지 제 7 펄스 신호(P0~P6)에 따라 순차적으로 입력되는 비교 신호(COMP)를 예비 코드(DOUT_PRE<0:5>)의 역순(즉, DOUT_PRE<5:0>)으로 변환하여 출력할 수 있다.With the above configuration, the code converter (420) is initialized to a logic low level when the seed signal (SEED) is activated, and can convert and output the comparison signal (COMP) sequentially input according to the first to seventh pulse signals (P0 to P6) into the reverse order of the preliminary code (DOUT_PRE<0:5>) (i.e., DOUT_PRE<5:0>).
도 9 는 도 6 의 초기 구간 설정부(430)의 회로도 이다. Fig. 9 is a circuit diagram of the initial section setting unit (430) of Fig. 6.
도 9 를 참조하면, 초기 구간 설정부(430)는, D-플립플롭(432) 및 인버터(434)를 포함할 수 있다. Referring to FIG. 9, the initial section setting unit (430) may include a D flip-flop (432) and an inverter (434).
D-플립플롭(432)은, 접지 전압(VSS)을 입력단(D)으로 입력받고, 트레이닝 모드 신호(CAL_EN)를 셋 바 신호(SB)를 입력받고, 제 7 펄스 신호(P6)를 클럭 신호로 입력받아 트리밍 구간 신호(TRIM)를 출력할 수 있다. 인버터(434)는, 트리밍 구간 신호(TRIM)를 반전하여 반전된 트리밍 구간 신호(TRIMB)를 출력할 수 있다. The D flip-flop (432) can receive a ground voltage (VSS) as an input terminal (D), a training mode signal (CAL_EN), a set bar signal (SB), and a seventh pulse signal (P6) as a clock signal to output a trimming interval signal (TRIM). The inverter (434) can invert the trimming interval signal (TRIM) and output an inverted trimming interval signal (TRIMB).
상기의 구성으로, 초기 구간 설정부(430)는, 트레이닝 모드 신호(CAL_EN)의 비활성화 구간, 즉, 트레이닝 동작 전에 로직 하이 레벨로 설정되고, 제 7 펄스 신호(P6)의 활성화에 따라 로직 로우 레벨로 비활성화되는 트리밍 구간 신호(TRIM)를 생성할 수 있다. With the above configuration, the initial section setting unit (430) can generate a trimming section signal (TRIM) that is set to a logic high level before the training operation, i.e., the deactivation section of the training mode signal (CAL_EN), and is deactivated to a logic low level according to the activation of the seventh pulse signal (P6).
도 10 은 도 6 의 코드 출력기(440)의 회로도 이다. Fig. 10 is a circuit diagram of the code output device (440) of Fig. 6.
도 10 을 참조하면, 코드 출력기(440)는, 타이밍 제어기(442), 래치(444) 및 선택 출력기(446)를 포함할 수 있다. Referring to FIG. 10, the code output unit (440) may include a timing controller (442), a latch (444), and a selection output unit (446).
타이밍 제어기(442)는, 트리밍 구간 신호(TRIM)의 활성화 구간 동안 제 7 펄스 신호(P6)를 반전하여 타이밍 신호(T1)를 출력할 수 있다. 타이밍 제어기(442)는, 인버터(442A) 및 제 1 앤드 게이트(442B)를 포함할 수 있다. 인버터(442A)는, 제 7 펄스 신호(P6)를 반전하고, 제 1 앤드 게이트(442B)는, 인버터(442A)의 출력과 트리밍 구간 신호(TRIM)를 로직 앤드 연산할 수 있다. The timing controller (442) can output a timing signal (T1) by inverting the seventh pulse signal (P6) during the activation period of the trimming interval signal (TRIM). The timing controller (442) can include an inverter (442A) and a first AND gate (442B). The inverter (442A) can invert the seventh pulse signal (P6), and the first AND gate (442B) can perform a logic AND operation on the output of the inverter (442A) and the trimming interval signal (TRIM).
래치(444)는, 타이밍 신호(T1)에 따라 예비 코드(DOUT_PRE<0:5>)를 저장할 수 있다. The latch (444) can store a preliminary code (DOUT_PRE<0:5>) according to the timing signal (T1).
선택 출력기(446)는, 트리밍 구간 신호(TRIM) 및 반전된 트리밍 구간 신호(TRIMB)에 따라 예비 코드(DOUT_PRE<0:5>)를 트리밍 코드(D_TRIM<0:5>) 또는 검출 코드(DOUT<0:3>)로 출력할 수 있다. 선택 출력기(446)는, 제 2 내지 제 4 앤드 게이트(446A~446C) 및 오아 게이트(446D)를 포함할 수 있다. 제 2 앤드 게이트(446A)는, 반전된 트리밍 구간 신호(TRIMB)와 예비 코드(DOUT_PRE<0:5>)를 로직 앤드 연산하여 검출 코드(DOUT<0:3>)로 출력할 수 있다. 제 3 앤드 게이트(446B)는, 트리밍 구간 신호(TRIM)와 예비 코드(DOUT_PRE<0:5>)를 로직 앤드 연산하고, 제 4 앤드 게이트(446C)는, 반전된 트리밍 구간 신호(TRIMB)와 래치(444)에 저장된 코드를 로직 앤드 연산할 수 있다. 오아 게이트(446D)는, 제 3 앤드 게이트(446B) 및 제 4 앤드 게이트(446C)의 출력을 로직 오아 연산하여 트리밍 코드(D_TRIM<0:5>)로 출력할 수 있다. The selection output unit (446) can output the preliminary code (DOUT_PRE<0:5>) as the trimming code (D_TRIM<0:5>) or the detection code (DOUT<0:3>) according to the trimming interval signal (TRIM) and the inverted trimming interval signal (TRIMB). The selection output unit (446) can include second to fourth AND gates (446A to 446C) and an OR gate (446D). The second AND gate (446A) can perform a logic AND operation on the inverted trimming interval signal (TRIMB) and the preliminary code (DOUT_PRE<0:5>) and output the detection code (DOUT<0:3>). The third AND gate (446B) can perform a logic AND operation on the trimming interval signal (TRIM) and the preliminary code (DOUT_PRE<0:5>), and the fourth AND gate (446C) can perform a logic AND operation on the inverted trimming interval signal (TRIMB) and the code stored in the latch (444). The OR gate (446D) can perform a logic OR operation on the outputs of the third AND gate (446B) and the fourth AND gate (446C) and output the trimming code (D_TRIM<0:5>).
상기의 구성으로, 코드 출력기(440)는, 트리밍 구간 신호(TRIM)가 활성화되면, 예비 코드(DOUT_PRE<0:5>)를 트리밍 코드(D_TRIM<0:5>)로 출력하고, 타이밍 신호(T1)에 따라 래치(444)에 트리밍 코드(D_TRIM<0:5>)를 저장할 수 있다. 반면, 코드 출력기(440)는, 트리밍 구간 신호(TRIM)가 비활성화되면, 예비 코드(DOUT_PRE<0:5>)를 검출 코드(DOUT<0:3>)로 출력하고, 래치(444)에 저장된 코드를 트리밍 코드(D_TRIM<0:5>)로 출력할 수 있다.With the above configuration, the code output unit (440) can output the preliminary code (DOUT_PRE<0:5>) as a trimming code (D_TRIM<0:5>) when the trimming interval signal (TRIM) is activated, and store the trimming code (D_TRIM<0:5>) in the latch (444) according to the timing signal (T1). On the other hand, when the trimming interval signal (TRIM) is deactivated, the code output unit (440) can output the preliminary code (DOUT_PRE<0:5>) as a detection code (DOUT<0:3>), and output the code stored in the latch (444) as a trimming code (D_TRIM<0:5>).
도 11 은 도 5 의 저장부(320) 및 평균-편차 계산부(330)의 회로도 이다. Figure 11 is a circuit diagram of the storage unit (320) and the average-deviation calculation unit (330) of Figure 5.
도 11 을 참조하면, 저장부(320)는, 저장 선택기(321) 및 제 1 내지 제 4 레지스터(322~325)를 포함할 수 있다. Referring to FIG. 11, the storage unit (320) may include a storage selector (321) and first to fourth registers (322 to 325).
저장 선택기(321)는, 구간 신호(SAR_EN)가 활성화되면 검출부(310)로부터 제공되는 검출 코드(DOUT<0:3>)를 선택하고, 구간 신호(SAR_EN)가 비활성화되면 평균-편차 계산부(330)로부터 제공되는 누적 편차 코드(FB_DEV<0:3>)를 선택하여 출력할 수 있다. 제 1 내지 제 4 레지스터(322~325)는, 제 1 내지 제 4 레지스터 제어 신호(REG0P~REG3P)에 따라 순차적으로 활성화되어, 저장 선택기(321)의 출력을 저장할 수 있다. The storage selector (321) can select and output a detection code (DOUT<0:3>) provided from the detection unit (310) when the interval signal (SAR_EN) is activated, and select and output an accumulated deviation code (FB_DEV<0:3>) provided from the average-deviation calculation unit (330) when the interval signal (SAR_EN) is deactivated. The first to fourth registers (322 to 325) can be sequentially activated according to the first to fourth register control signals (REG0P to REG3P) to store the output of the storage selector (321).
평균-편차 계산부(330)는, 누적 합산부(332), 평균 계산부(334) 및 편차 계산부(336)를 포함할 수 있다. The mean-deviation calculation unit (330) may include a cumulative summation unit (332), an average calculation unit (334), and a deviation calculation unit (336).
누적 합산부(332)는, 구간 신호(SAR_EN)가 활성화되면, 제 1 내지 제 4 레지스터 제어 신호(REG0P~REG3P) 및 누적 클럭(ACC_CLK)에 따라, 제 1 내지 제 4 레지스터(322~325)에 저장된 제 1 내지 제 4 저장값을 누적 합산하여 합산 신호(SUM<0:3>)를 출력할 수 있다. 누적 합산부(332)는, 구간 신호(SAR_EN)가 비활성화되면, 누적 클럭(ACC_CLK) 및 누적 리셋 신호(ACC_RST)에 따라 편차 계산부(336)로부터 제공되는 편차 코드(DEV<0:3>)를 누적 합산하여 누적 편차 코드(FB_DEV<0:3>)를 출력할 수 있다. The cumulative summing unit (332) can output a sum signal (SUM<0:3>) by cumulatively summing the first to fourth storage values stored in the first to fourth registers (322 to 325) according to the first to fourth register control signals (REG0P to REG3P) and the cumulative clock (ACC_CLK) when the interval signal (SAR_EN) is activated. The cumulative summing unit (332) can output a cumulative deviation code (FB_DEV<0:3>) by cumulatively summing the deviation code (DEV<0:3>) provided from the deviation calculation unit (336) according to the cumulative clock (ACC_CLK) and the cumulative reset signal (ACC_RST) when the interval signal (SAR_EN) is deactivated.
보다 자세하게, 누적 합산부(332)는, 제 1 누적 선택기(332A), 제 2 누적 선택기(332B), 가산기(332C) 및 D-플립플롭(332D)을 포함할 수 있다. In more detail, the cumulative adder (332) may include a first cumulative selector (332A), a second cumulative selector (332B), an adder (332C), and a D-flip-flop (332D).
제 1 누적 선택기(332A)는, 제 1 내지 제 4 레지스터 제어 신호(REG0P~REG3P)에 따라 제 1 내지 제 4 저장값을 선택하여 출력할 수 있다. 제 2 누적 선택기(332B)는, 구간 신호(SAR_EN)에 따라 제 1 누적 선택기(332A)의 출력 또는 편차 계산부(336)로부터 출력되는 편차 코드(DEV<0:3>)를 선택하여 출력할 수 있다. 가산기(332C)는, 제 2 누적 선택기(332B)의 출력과 D-플립플롭(332D)의 출력을 더할 수 있다. D-플립플롭(332D)은, 누적 리셋 신호(ACC_RST)에 따라 초기화되며, 누적 클럭(ACC_CLK)에 따라 가산기(332C)의 출력을 저장할 수 있다. 상기의 구성으로, 누적 합산부(332)는, 구간 신호(SAR_EN)가 활성화되면, 누적 클럭(ACC_CLK)에 따라 제 1 내지 제 4 레지스터(322~325)의 제 1 내지 제 4 저장값을 순차적으로 누적 합산하여 합산 신호(SUM<0:3>)를 출력할 수 있다. 또한, 누적 합산부(332)는, 구간 신호(SAR_EN)가 비활성화되면, 누적 클럭(ACC_CLK)에 따라 편차 코드(DEV<0:3>)를 순차적으로 누적 합산하여 누적 편차 코드(FB_DEV<0:3>)를 출력할 수 있다. The first accumulation selector (332A) can select and output the first to fourth storage values according to the first to fourth register control signals (REG0P to REG3P). The second accumulation selector (332B) can select and output the output of the first accumulation selector (332A) or the deviation code (DEV<0:3>) output from the deviation calculation unit (336) according to the interval signal (SAR_EN). The adder (332C) can add the output of the second accumulation selector (332B) and the output of the D flip-flop (332D). The D flip-flop (332D) is initialized according to the accumulation reset signal (ACC_RST) and can store the output of the adder (332C) according to the accumulation clock (ACC_CLK). With the above configuration, the cumulative adder (332) can sequentially cumulatively add the first to fourth storage values of the first to fourth registers (322 to 325) according to the cumulative clock (ACC_CLK) when the interval signal (SAR_EN) is activated and output the sum signal (SUM<0:3>). In addition, the cumulative adder (332) can sequentially cumulatively add the deviation codes (DEV<0:3>) according to the cumulative clock (ACC_CLK) and output the cumulative deviation codes (FB_DEV<0:3>) when the interval signal (SAR_EN) is deactivated.
평균 계산부(334)는, 평균 산출 신호(REG_QW)에 따라 합산 신호(SUM<0:3>)를 제 1 내지 제 4 레지스터(322~325)의 개수(즉, 4)로 나눈 값을 평균값, 즉, 평균 코드(AVG<0:3>)로 출력할 수 있다. 바람직하게, 평균 계산부(334)는, 평균 산출 신호(REG_QW)에 따라서, 합산 신호(SUM<0:3>)의 각 비트를 제 1 내지 제 4 레지스터(322~325)의 개수(즉, 4)에 대응되는 횟수(2 회) 만큼 오른쪽으로 쉬프팅하여 평균 코드(AVG<0:3>)를 출력하는 쉬프터로 구현될 수 있다. 편차 계산부(336)는, 선택 신호(REG_SEL<0:2>)에 따라 평균 코드(AVG<0:3>)로부터 제 1 내지 제 3 저장값을 각각 빼서 편차 코드(DEV<0:3>)를 산출할 수 있다. The average calculation unit (334) can output an average value, i.e., an average code (AVG<0:3>), by dividing the sum signal (SUM<0:3>) by the number of the first to fourth registers (322 to 325) (i.e., 4) according to the average calculation signal (REG_QW). Preferably, the average calculation unit (334) can be implemented as a shifter that shifts each bit of the sum signal (SUM<0:3>) to the right a number of times (2 times) corresponding to the number of the first to fourth registers (322 to 325) (i.e., 4), according to the average calculation signal (REG_QW), and outputs the average code (AVG<0:3>). The deviation calculation unit (336) can calculate a deviation code (DEV<0:3>) by subtracting the first to third storage values from the average code (AVG<0:3>) according to the selection signal (REG_SEL<0:2>).
편차 계산부(336)는, 편차 선택기(336A) 및 감산기(336B)를 포함할 수 있다. 편차 선택기(336A)는, 선택 신호(REG_SEL<0:2>)에 따라 제 1 내지 제 3 저장값 중 하나를 선택하여 출력할 수 있다. 감산기(336B)는, 평균 코드(AVG<0:3>)와 편차 선택기(336A)의 출력의 차를 편차 코드(DEV<0:3>)로 출력할 수 있다. The deviation calculation unit (336) may include a deviation selector (336A) and a subtractor (336B). The deviation selector (336A) may select and output one of the first to third storage values according to a selection signal (REG_SEL<0:2>). The subtractor (336B) may output the difference between the average code (AVG<0:3>) and the output of the deviation selector (336A) as a deviation code (DEV<0:3>).
상기와 같이, 평균-편차 계산부(330)는, 구간 신호(SAR_EN)가 활성화되면, 제 1 내지 제 4 레지스터 제어 신호(REG0P~REG3P) 및 누적 클럭(ACC_CLK)에 따라 제 1 내지 제 4 저장값을 순차적으로 누적하여 합산 신호(SUM<0:3>)를 생성할 수 있다. 또한, 평균-편차 계산부(330)는, 구간 신호(SAR_EN)가 비활성화되면, 평균 산출 신호(REG_QW)에 따라 합산 신호(SUM<0:3>)를 토대로 평균 코드(AVG<0:3>)를 산출하고, 선택 신호(REG_SEL<0:2>)에 따라 평균 코드(AVG<0:3>)와 제 1 내지 제 3 저장값의 누적 편차 코드(FB_DEV<0:3>)를 산출하여 저장부(320)로 제공할 수 있다. 한편, 도 11 에서 설명된 평균-편차 계산부(330)는, 편차 코드(DEV<0:3>)를 누적하여 산출된 누적 편차 코드(FB_DEV<0:3>)를 저장부(320)로 제공하는 것으로 설명되었지만, 제안 발명은 이에 한정되지 않는다. 실시예에 따라, 평균-편차 계산부(330)는, 편차 코드(DEV<0:3>)를 누적하지 않고 저장부(320)로 제공할 수 있다. As described above, the mean-deviation calculation unit (330) can sequentially accumulate the first to fourth storage values according to the first to fourth register control signals (REG0P to REG3P) and the accumulation clock (ACC_CLK) when the interval signal (SAR_EN) is activated to generate a sum signal (SUM<0:3>). In addition, the mean-deviation calculation unit (330) can calculate an average code (AVG<0:3>) based on the sum signal (SUM<0:3>) according to the average calculation signal (REG_QW) when the interval signal (SAR_EN) is deactivated, and can calculate an average code (AVG<0:3>) and an accumulated deviation code (FB_DEV<0:3>) of the first to third storage values according to a selection signal (REG_SEL<0:2>) and provide the result to the storage unit (320). Meanwhile, the mean-deviation calculation unit (330) described in Fig. 11 has been described as providing the accumulated deviation code (FB_DEV<0:3>) calculated by accumulating the deviation code (DEV<0:3>) to the storage unit (320), but the proposed invention is not limited thereto. According to an embodiment, the mean-deviation calculation unit (330) may provide the deviation code (DEV<0:3>) to the storage unit (320) without accumulating it.
도 12 는 도 5 의 캘리브레이션 제어 회로(150)의 상세 블록도 이다. Figure 12 is a detailed block diagram of the calibration control circuit (150) of Figure 5.
도 12 를 참조하면, 캘리브레이션 제어 회로(150)는, 구간 정의부(510) 및 제어 신호 생성부(520)를 포함할 수 있다. Referring to FIG. 12, the calibration control circuit (150) may include an interval definition unit (510) and a control signal generation unit (520).
구간 정의부(510)는, 트레이닝 모드 신호(CAL_EN)가 활성화되면, 시드 신호(SEED)의 각 주기마다 활성화되는 제 1 내지 제 6 구간 정의 신호(C0_C1~C5_C6)를 생성할 수 있다. 예를 들어, 구간 정의부(510)는, 시드 신호(SEED)의 제 1 라이징 에지와 제 2 라이징 에지 사이에 활성화 구간을 가지는 제 1 구간 정의 신호(C0_C1)를 생성하고, 제 2 라이징 에지와 제 3 라이징 에지 사이에 활성화 구간을 가지는 제 2 구간 정의 신호(C1_C2)를 생성할 수 있다. 제 1 내지 제 6 구간 정의 신호(C0_C1~C5_C6)는, 로직 로우 레벨로 활성화되는 신호일 수 있다. 또한, 구간 정의부(510)는, 트레이닝 모드 신호(CAL_EN)에 따라 활성화되고, 제 1 내지 제 6 구간 정의 신호(C0_C1~C5_C6) 중 하나에 따라 비활성화되는 구간 신호(SAR_EN)를 생성할 수 있다. 바람직하게, 구간 정의부(510)는, 제 1 내지 제 6 구간 정의 신호(C0_C1~C5_C6) 중 제 5 구간 정의 신호(C4_C5)에 따라 구간 신호(SAR_EN)를 비활성화 시킬 수 있다. The interval definition unit (510) can generate first to sixth interval definition signals (C0_C1 to C5_C6) that are activated for each period of the seed signal (SEED) when the training mode signal (CAL_EN) is activated. For example, the interval definition unit (510) can generate a first interval definition signal (C0_C1) that has an activation period between the first rising edge and the second rising edge of the seed signal (SEED), and can generate a second interval definition signal (C1_C2) that has an activation period between the second rising edge and the third rising edge. The first to sixth interval definition signals (C0_C1 to C5_C6) can be signals that are activated at a logic low level. In addition, the interval definition unit (510) can generate an interval signal (SAR_EN) that is activated according to a training mode signal (CAL_EN) and deactivated according to one of the first to sixth interval definition signals (C0_C1 to C5_C6). Preferably, the interval definition unit (510) can deactivate the interval signal (SAR_EN) according to a fifth interval definition signal (C4_C5) among the first to sixth interval definition signals (C0_C1 to C5_C6).
제어 신호 생성부(520)는, 제 1 내지 제 6 구간 정의 신호(C0_C1~C5_C6) 및 구간 신호(SAR_EN)에 따라 제 1 내지 제 4 레지스터 제어 신호(REG0P~REG3P)를 생성할 수 있다. The control signal generation unit (520) can generate the first to fourth register control signals (REG0P to REG3P) according to the first to sixth section definition signals (C0_C1 to C5_C6) and the section signal (SAR_EN).
보다 자세하게, 제어 신호 생성부(520)는, 제 1 내지 제 3 제어 신호 생성기(522~526)를 포함할 수 있다. 제 1 제어 신호 생성기(522)는, 제 1 내지 제 6 구간 정의 신호(C0_C1~C5_C6), 구간 신호(SAR_EN), 제 3 펄스 신호(P2) 및 제 5 펄스 신호(P4)에 따라, 제 1 내지 제 4 레지스터 제어 신호(REG0P~REG3P)를 생성할 수 있다. 제 2 제어 신호 생성기(524)는, 제 1 내지 제 6 구간 정의 신호(C0_C1~C5_C6), 구간 신호(SAR_EN) 및 제 3 펄스 신호(P2)에 따라, 평균 산출 신호(REG_QW), 선택 신호(REG_SEL<0:2>) 및 트레이닝 종료 신호(CAL_OFF)를 생성할 수 있다. 제 3 제어 신호 생성기(526)는, 제 1 내지 제 6 구간 정의 신호(C0_C1~C5_C6), 구간 신호(SAR_EN), 제 3 펄스 신호(P2) 및 시드 신호(SEED)에 따라, 누적 클럭(ACC_CLK) 및 누적 리셋 신호(ACC_RST)를 생성할 수 있다.In more detail, the control signal generator (520) may include first to third control signal generators (522 to 526). The first control signal generator (522) may generate first to fourth register control signals (REG0P to REG3P) according to the first to sixth interval definition signals (C0_C1 to C5_C6), the interval signal (SAR_EN), the third pulse signal (P2), and the fifth pulse signal (P4). The second control signal generator (524) may generate an average calculation signal (REG_QW), a selection signal (REG_SEL<0:2>), and a training end signal (CAL_OFF) according to the first to sixth interval definition signals (C0_C1 to C5_C6), the interval signal (SAR_EN), and the third pulse signal (P2). The third control signal generator (526) can generate an accumulated clock (ACC_CLK) and an accumulated reset signal (ACC_RST) according to the first to sixth interval definition signals (C0_C1 to C5_C6), an interval signal (SAR_EN), a third pulse signal (P2), and a seed signal (SEED).
도 13 은 도 12 의 구간 정의부(510)의 회로도 이다. Fig. 13 is a circuit diagram of the section definition part (510) of Fig. 12.
도 13 을 참조하면, 구간 정의부(510)는, 제 1 내지 제 8 D-플립플롭(511~518), 제 1 내지 제 6 비교기(511A~511F) 및 클럭 조합기(511G)를 포함할 수 있다. Referring to FIG. 13, the interval definition unit (510) may include first to eighth D-flip-flops (511 to 518), first to sixth comparators (511A to 511F), and a clock combiner (511G).
제 1 내지 제 7 D-플립플롭(511~517)은, 직렬 연결되어, 트레이닝 모드 신호(CAL_EN)를 셋 바 신호(SB)로 입력받고, 시드 신호(SEED)를 클럭 신호로 입력받아 제 1 내지 제 7 예비 구간 신호(C0~C6)를 출력할 수 있다. 제 1 D-플립플롭(511)은, 제 7 D-플립플롭(517)의 출력단(Q)의 반전된 신호를 입력단(D)으로 입력받아 출력단(Q)으로 제 1 예비 구간 신호(C0)를 출력할 수 있다. 제 2 내지 제 7 D-플립플롭(512~517)은, 앞단의 출력 신호를 입력단(D)으로 입력받아 출력단(Q)으로 제 2 내지 제 7 예비 구간 신호(C1~C6)를 순차적으로 출력할 수 있다. The first to seventh D flip-flops (511 to 517) are connected in series, and can receive a training mode signal (CAL_EN) as a set bar signal (SB) and a seed signal (SEED) as a clock signal to output the first to seventh reserve section signals (C0 to C6). The first D flip-flop (511) can receive an inverted signal of an output terminal (Q) of the seventh D flip-flop (517) as an input terminal (D) and output the first reserve section signal (C0) as an output terminal (Q). The second to seventh D flip-flops (512 to 517) can receive an output signal of a previous stage as an input terminal (D) and sequentially output the second to seventh reserve section signals (C1 to C6) as an output terminal (Q).
제 1 내지 제 6 비교기(511A~511F)는, 인접한 두 개의 예비 구간 신호(C1~C6)를 비교하여 제 1 내지 제 6 구간 정의 신호(C0_C1~C5_C6)를 출력할 수 있다. 제 1 내지 제 6 비교기(511A~511F)는, 인접한 두 개의 예비 구간 신호(C1~C6)를 로직 XNOR 연산하여 제 1 내지 제 6 구간 정의 신호(C0_C1~C5_C6)를 출력하는 XNOR 게이트로 구현될 수 있다. 예를 들어, 제 1 비교기(511A)는, 제 1 예비 구간 신호(C0)과 제 2 예비 구간 신호(C1)가 서로 다른 로직 레벨을 가지는 경우, 로직 로우 레벨이 되는 제 1 구간 정의 신호(C0_C1)를 출력할 수 있다. The first to sixth comparators (511A to 511F) can compare two adjacent reserve section signals (C1 to C6) to output the first to sixth section defining signals (C0_C1 to C5_C6). The first to sixth comparators (511A to 511F) can be implemented as XNOR gates that perform a logic XNOR operation on two adjacent reserve section signals (C1 to C6) to output the first to sixth section defining signals (C0_C1 to C5_C6). For example, the first comparator (511A) can output the first section defining signal (C0_C1) that becomes a logic low level when the first reserve section signal (C0) and the second reserve section signal (C1) have different logic levels.
클럭 조합기(511G)는, 제 5 구간 정의 신호(C4_C5)와 시드 신호(SEED)를 로직 오아 연산하여 구간 클럭(T2)을 생성할 수 있다. 즉, 클럭 조합기(511G)는, 제 5 구간 정의 신호(C4_C5)와 시드 신호(SEED)가 모두 로직 로우 레벨이 될 때 로직 로우 레벨의 구간 클럭(T2)을 출력할 수 있다. The clock combiner (511G) can generate an interval clock (T2) by performing a logic OR operation on the fifth interval defining signal (C4_C5) and the seed signal (SEED). That is, the clock combiner (511G) can output an interval clock (T2) at a logic low level when both the fifth interval defining signal (C4_C5) and the seed signal (SEED) are at a logic low level.
제 8 D-플립플롭(518)는, 트레이닝 모드 신호(CAL_EN)를 셋 바 신호(SB)로 입력받고, 접지 전압(VSS)를 입력단(D)으로 입력받고, 구간 클럭(T2)을 클럭 신호로 입력받아 구간 신호(SAR_EN)를 출력할 수 있다.The 8th D flip-flop (518) can receive a training mode signal (CAL_EN) as a set bar signal (SB), a ground voltage (VSS) as an input terminal (D), and an interval clock (T2) as a clock signal to output an interval signal (SAR_EN).
도 14 는 도 13 의 구간 정의부(510)의 동작을 설명하기 위한 파형도 이다.Figure 14 is a waveform diagram for explaining the operation of the interval definition part (510) of Figure 13.
도 14 를 참조하면, 트레이닝 모드 신호(CAL_EN)의 비활성화 구간, 즉, 트레이닝 동작 전에 제 1 내지 제 8 D-플립플롭(511~518)은 제 1 내지 제 7 예비 구간 신호(C0~C6) 및 구간 신호(SAR_EN)는 로직 로직 하이 레벨로 설정된다. Referring to FIG. 14, during the deactivation period of the training mode signal (CAL_EN), i.e., before the training operation, the first to eighth D flip-flops (511 to 518) are set to the first to seventh reserve period signals (C0 to C6) and the period signal (SAR_EN) to a logic high level.
트레이닝 모드 신호(CAL_EN)가 활성화되면, 제 1 내지 제 7 D-플립플롭(511~517)은, 시드 신호(SEED)의 라이징 에지에 따라 제 1 내지 제 7 예비 구간 신호(C0~C6)를 순차적으로 로직 로우 레벨로 출력할 수 있다. 제 1 내지 제 6 비교기(511A~511F)는, 인접한 두 개의 예비 구간 신호(C1~C6)가 서로 다른 로직 레벨을 가지는 경우, 제 1 내지 제 6 구간 정의 신호(C0_C1~C5_C6)를 로직 로우 레벨로 출력할 수 있다. When the training mode signal (CAL_EN) is activated, the first to seventh D flip-flops (511 to 517) can sequentially output the first to seventh reserve section signals (C0 to C6) at a logic low level according to the rising edge of the seed signal (SEED). The first to sixth comparators (511A to 511F) can output the first to sixth section defining signals (C0_C1 to C5_C6) at a logic low level when two adjacent reserve section signals (C1 to C6) have different logic levels.
클럭 조합기(511G)는, 제 5 구간 정의 신호(C4_C5)와 시드 신호(SEED)가 모두 로직 로우 레벨이 될 때 로직 로우 레벨의 구간 클럭(T2)을 출력할 수 있다. 제 8 D-플립플롭(518)는, 구간 클럭(T2)의 라이징 에지에 동기되어 구간 신호(SAR_EN)를 로직 로우 레벨로 비활성화시켜 출력할 수 있다. The clock combiner (511G) can output an interval clock (T2) at a logic low level when both the fifth interval definition signal (C4_C5) and the seed signal (SEED) are at a logic low level. The eighth D flip-flop (518) can output an interval signal (SAR_EN) by deactivating it to a logic low level in synchronization with the rising edge of the interval clock (T2).
도 15 는 도 12 의 제어 신호 생성부(520)의 회로도 이다. Fig. 15 is a circuit diagram of the control signal generation unit (520) of Fig. 12.
도 15 를 참조하면, 제 1 제어 신호 생성기(522)는, 제 1 내지 제 4 조합기(522A~522D)를 포함할 수 있다. Referring to FIG. 15, the first control signal generator (522) may include first to fourth combiners (522A to 522D).
제 1 조합기(522A)는, 구간 신호(SAR_EN)가 활성화되면, 제 2 구간 정의 신호(C1_C2)와 제 5 펄스 신호(P4)에 따라 제 1 레지스터 제어 신호(REG0P)를 출력하고, 구간 신호(SAR_EN)가 비활성화되면, 제 3 구간 정의 신호(C2_C3)와 제 3 펄스 신호(P2)에 따라 제 1 레지스터 제어 신호(REG0P)를 출력할 수 있다. 제 1 조합기(522A)는, 구간 신호(SAR_EN)가 활성화되면, 제 2 구간 정의 신호(C1_C2)와 제 5 펄스 신호(P4)가 모두 로직 로우 레벨이 될 때 제 1 레지스터 제어 신호(REG0P)를 출력하고, 구간 신호(SAR_EN)가 비활성화되면, 제 3 구간 정의 신호(C2_C3)와 제 3 펄스 신호(P2)가 모두 로직 로우 레벨이 될 때 제 1 레지스터 제어 신호(REG0P)를 출력할 수 있다. 제 2 조합기(522B)는, 구간 신호(SAR_EN)가 활성화되면, 제 3 구간 정의 신호(C2_C3)와 제 5 펄스 신호(P4)에 따라 제 2 레지스터 제어 신호(REG1P)를 출력하고, 구간 신호(SAR_EN)가 비활성화되면, 제 4 구간 정의 신호(C3_C4)와 제 3 펄스 신호(P2)에 따라 제 2 레지스터 제어 신호(REG1P)를 출력할 수 있다. 제 3 조합기(522C)는, 구간 신호(SAR_EN)가 활성화되면, 제 4 구간 정의 신호(C3_C4)와 제 5 펄스 신호(P4)에 따라 제 3 레지스터 제어 신호(REG2P)를 출력하고, 구간 신호(SAR_EN)가 비활성화되면, 제 5 구간 정의 신호(C4_C5)와 제 3 펄스 신호(P2)에 따라 제 3 레지스터 제어 신호(REG2P)를 출력할 수 있다. 제 4 조합기(522D)는, 구간 신호(SAR_EN)가 활성화되면, 제 5 구간 정의 신호(C4_C5)와 제 5 펄스 신호(P4)에 따라 제 4 레지스터 제어 신호(REG3P)를 출력할 수 있다.The first combiner (522A) can output the first register control signal (REG0P) according to the second interval definition signal (C1_C2) and the fifth pulse signal (P4) when the interval signal (SAR_EN) is activated, and can output the first register control signal (REG0P) according to the third interval definition signal (C2_C3) and the third pulse signal (P2) when the interval signal (SAR_EN) is deactivated. The first combiner (522A) can output the first register control signal (REG0P) when the second interval definition signal (C1_C2) and the fifth pulse signal (P4) are both at a logic low level when the interval signal (SAR_EN) is activated, and can output the first register control signal (REG0P) when the third interval definition signal (C2_C3) and the third pulse signal (P2) are both at a logic low level when the interval signal (SAR_EN) is deactivated. The second combiner (522B) can output the second register control signal (REG1P) according to the third interval definition signal (C2_C3) and the fifth pulse signal (P4) when the interval signal (SAR_EN) is activated, and can output the second register control signal (REG1P) according to the fourth interval definition signal (C3_C4) and the third pulse signal (P2) when the interval signal (SAR_EN) is deactivated. The third combiner (522C) can output the third register control signal (REG2P) according to the fourth interval definition signal (C3_C4) and the fifth pulse signal (P4) when the interval signal (SAR_EN) is activated, and can output the third register control signal (REG2P) according to the fifth interval definition signal (C4_C5) and the third pulse signal (P2) when the interval signal (SAR_EN) is deactivated. The fourth combiner (522D) can output the fourth register control signal (REG3P) according to the fifth interval definition signal (C4_C5) and the fifth pulse signal (P4) when the interval signal (SAR_EN) is activated.
제 2 제어 신호 생성기(524)는, 제 5 내지 제 8 조합기(524A~524D)를 포함할 수 있다. The second control signal generator (524) may include fifth to eighth combiners (524A to 524D).
제 5 조합기(524A)는, 구간 신호(SAR_EN)가 비활성화되면, 제 1 구간 정의 신호(C0_C1)와 제 3 펄스 신호(P2)에 따라 선택 신호(REG_SEL<0:2>)의 제 1 비트(REG_SEL<0>)를 출력할 수 있다. 즉, 제 5 조합기(524A)는, 제 1 구간 정의 신호(C0_C1)와 제 3 펄스 신호(P2)가 모두 로직 로우 레벨이 될 때 제 1 비트(REG_SEL<0>)를 출력할 수 있다. 이 때, 제 5 조합기(524A)는, 제 1 비트(REG_SEL<0>)와 동일한 로직 레벨의 평균 산출 신호(REG_QW)를 출력할 수 있다. 제 6 조합기(524B)는, 구간 신호(SAR_EN)가 비활성화되면, 제 3 구간 정의 신호(C2_C3)와 제 3 펄스 신호(P2)에 따라 선택 신호(REG_SEL<0:2>)의 제 2 비트(REG_SEL<1>)를 출력할 수 있다. 제 7 조합기(524C)는, 구간 신호(SAR_EN)가 비활성화되면, 제 4 구간 정의 신호(C3_C4)와 제 3 펄스 신호(P2)에 따라 선택 신호(REG_SEL<0:2>)의 제 3 비트(REG_SEL<2>)를 출력할 수 있다. 제 8 조합기(524D)는, 구간 신호(SAR_EN)가 비활성화되면, 제 6 구간 정의 신호(C5_C6)와 제 3 펄스 신호(P2)에 따라 클럭 펄스 신호(CAL_OFFP)를 생성하고, 클럭 펄스 신호(CAL_OFFP)에 따라 트레이닝 종료 신호(CAL_OFF)를 로직 하이 레벨로 활성화시켜 출력할 수 있다. The fifth combiner (524A) can output the first bit (REG_SEL<0>) of the selection signal (REG_SEL<0:2>) according to the first interval defining signal (C0_C1) and the third pulse signal (P2) when the interval signal (SAR_EN) is deactivated. That is, the fifth combiner (524A) can output the first bit (REG_SEL<0>) when both the first interval defining signal (C0_C1) and the third pulse signal (P2) become logic low levels. At this time, the fifth combiner (524A) can output the average calculation signal (REG_QW) having the same logic level as the first bit (REG_SEL<0>). The sixth combiner (524B) can output the second bit (REG_SEL<1>) of the selection signal (REG_SEL<0:2>) according to the third interval definition signal (C2_C3) and the third pulse signal (P2) when the interval signal (SAR_EN) is deactivated. The seventh combiner (524C) can output the third bit (REG_SEL<2>) of the selection signal (REG_SEL<0:2>) according to the fourth interval definition signal (C3_C4) and the third pulse signal (P2) when the interval signal (SAR_EN) is deactivated. The 8th combiner (524D) can generate a clock pulse signal (CAL_OFFP) according to the 6th interval definition signal (C5_C6) and the 3rd pulse signal (P2) when the interval signal (SAR_EN) is deactivated, and can activate and output a training end signal (CAL_OFF) to a logic high level according to the clock pulse signal (CAL_OFFP).
제 3 제어 신호 생성기(526)는, 제 9 조합기(526A) 및 제 10 조합기(526B)를 포함할 수 있다. The third control signal generator (526) may include a ninth combiner (526A) and a tenth combiner (526B).
제 9 조합기(526A)는, 구간 신호(SAR_EN)가 활성화되면, 제 2 내지 제 5 구간 정의 신호(C1_C2~C4_C5) 및 시드 신호(SEED)에 따라 누적 클럭(ACC_CLK)을 출력하고, 구간 신호(SAR_EN)가 비활성화되면, 제 2 내지 제 4 구간 정의 신호(C1_C2~C3_C4) 및 시드 신호(SEED)에 따라 누적 클럭(ACC_CLK)을 출력할 수 있다. 즉, 제 9 조합기(526A)는, 구간 신호(SAR_EN)가 활성화되면, 제 2 내지 제 5 구간 정의 신호(C1_C2~C4_C5) 중 어느 하나라도 로직 로우 레벨일 때 시드 신호(SEED)가 로직 로우 레벨이 되면 누적 클럭(ACC_CLK)을 출력할 수 있다. 또한, 제 8 조합기(526A)는, 구간 신호(SAR_EN)가 비활성화되면, 제 2 내지 제 4 구간 정의 신호(C1_C2~C3_C4) 중 어느 하나라도 로직 로우 레벨일 때 시드 신호(SEED)가 로직 로우 레벨이 되면 누적 클럭(ACC_CLK)을 출력할 수 있다. 제 10 조합기(526B)는, 구간 신호(SAR_EN)가 비활성화되면, 제 2 구간 정의 신호(C1_C2)와 제 3 펄스 신호(P2)에 따라 누적 리셋 신호(ACC_RST)를 출력할 수 있다.The ninth combiner (526A) can output an accumulation clock (ACC_CLK) according to the second to fifth interval definition signals (C1_C2 to C4_C5) and the seed signal (SEED) when the interval signal (SAR_EN) is activated, and can output an accumulation clock (ACC_CLK) according to the second to fourth interval definition signals (C1_C2 to C3_C4) and the seed signal (SEED) when the interval signal (SAR_EN) is deactivated. That is, the ninth combiner (526A) can output an accumulation clock (ACC_CLK) when the seed signal (SEED) becomes a logic low level when any one of the second to fifth interval definition signals (C1_C2 to C4_C5) is at a logic low level when the interval signal (SAR_EN) is activated. In addition, the 8th combiner (526A) can output an accumulated clock (ACC_CLK) when the seed signal (SEED) becomes a logic low level when any one of the 2nd to 4th interval defining signals (C1_C2 to C3_C4) is at a logic low level when the interval signal (SAR_EN) is deactivated. The 10th combiner (526B) can output an accumulated reset signal (ACC_RST) according to the 2nd interval defining signal (C1_C2) and the 3rd pulse signal (P2) when the interval signal (SAR_EN) is deactivated.
한편, 도 15 에 도시된 제 1 내지 제 10 조합기(522A~522D, 524D~524C, 526A, 526B)의 로직들은 하나의 예시일 뿐 제안 발명은 이에 한정되지 않으며 캘리브레이션 회로(140) 및 캘리브레이션 제어 회로(150)의 타이밍을 제어하기 위한 다양한 로직들로 구현될 수 있다. Meanwhile, the logics of the first to tenth combiners (522A to 522D, 524D to 524C, 526A, 526B) illustrated in FIG. 15 are only an example and the proposed invention is not limited thereto, and can be implemented with various logics for controlling the timing of the calibration circuit (140) and the calibration control circuit (150).
이하, 도 5 내지 도 16b 을 참조하여, 캘리브레이션 회로(140) 및 캘리브레이션 제어 회로(150)의 동작을 설명하기로 한다. Hereinafter, the operation of the calibration circuit (140) and the calibration control circuit (150) will be described with reference to FIGS. 5 to 16b.
도 16a 및 도 16b 는 도 5 의 캘리브레이션 회로(140) 및 캘리브레이션 제어 회로(150)의 동작을 설명하기 위한 파형도 이다. 참고로, 도 16a 및 도 16b 에 도시되지 않았지만, 도 14 에 도시된 바와 같이, 제 1 내지 제 6 구간 정의 신호(C0_C1~C5_C6)는, 시드 신호(SEED)의 인접한 라이징 에지 사이에서 순차적인 활성화 구간을 가질 수 있다. 예를 들어, 제 1 구간 정의 신호(C0_C1)는, 시드 신호(SEED)의 제 1 라이징 에지와 제 2 라이징 에지 사이의 구간, 제 7 라이징 에지와 제 8 라이징 에지 사이의 구간에서 로직 로우 레벨로 활성화될 수 있다. FIGS. 16A and 16B are waveform diagrams for explaining the operation of the calibration circuit (140) and the calibration control circuit (150) of FIG. 5. For reference, although not shown in FIGS. 16A and 16B, as shown in FIG. 14, the first to sixth interval defining signals (C0_C1 to C5_C6) may have sequential activation intervals between adjacent rising edges of the seed signal (SEED). For example, the first interval defining signal (C0_C1) may be activated to a logic low level in the interval between the first rising edge and the second rising edge of the seed signal (SEED) and in the interval between the seventh rising edge and the eighth rising edge.
도 16a 를 참조하면, 반전된 폴링 신호(QDQSB)에 따라 시드 신호(SEED) 및 제 1 내지 제 7 펄스 신호(P0~P6)가 순차적으로 활성화된다. 지연된 라이징 신호(IDQSD) 및 폴링 신호(QDQS)의 위상차를 비교하여 비교 신호(COMP)가 출력되고, 시드 신호(SEED) 및 제 1 내지 제 7 펄스 신호(P0~P6)에 따라, 비교 신호(COMP)는 예비 코드(DOUT_PRE<0:5>)의 역순(즉, DOUT_PRE<5:0>)으로 변환되어 출력된다. 이 때, 로직 하이 레벨의 트리밍 구간 신호(TRIM)에 따라, 예비 코드(DOUT_PRE<0:5>)는 트리밍 코드(D_TRIM<0:5>)로 출력되어, 제 1 트리머(312)의 지연량이 설정된다. 라이징 신호(IDQS) 및 폴링 신호(QDQS)가 입력될 때 마다 상기의 동작들이 반복 수행되여 최종적으로 트리밍 코드(D_TRIM<0:5>)가 출력될 수 있다. 상기의 동작을 도 4 에서 설명된 제 1 패턴 데이터(BL0_CALP)의 활성화 구간의 초기 구간(즉, 시드 신호(SEED)의 한 주기) 동안 수행되는 초기 트리밍 설정 동작으로 정의할 수 있다. Referring to FIG. 16A, the seed signal (SEED) and the first to seventh pulse signals (P0 to P6) are sequentially activated according to the inverted falling signal (QDQSB). The phase difference of the delayed rising signal (IDQSD) and the falling signal (QDQS) is compared to output the comparison signal (COMP), and according to the seed signal (SEED) and the first to seventh pulse signals (P0 to P6), the comparison signal (COMP) is converted into the reverse order (i.e., DOUT_PRE<5:0>) of the preliminary code (DOUT_PRE<0:5>) and output. At this time, according to the trimming section signal (TRIM) of the logic high level, the preliminary code (DOUT_PRE<0:5>) is output as the trimming code (D_TRIM<0:5>), so that the delay amount of the first trimmer (312) is set. The above operations may be repeatedly performed whenever a rising signal (IDQS) and a falling signal (QDQS) are input, so that a trimming code (D_TRIM<0:5>) may be finally output. The above operations may be defined as an initial trimming setting operation performed during an initial section (i.e., one period of the seed signal (SEED)) of the activation section of the first pattern data (BL0_CALP) described in Fig. 4.
이 후, 제 7 펄스 신호(P6)의 활성화에 따라 트리밍 구간 신호(TRIM)이 로직 로우 레벨로 비활성화된다. After this, the trimming interval signal (TRIM) is deactivated to a logic low level according to the activation of the 7th pulse signal (P6).
제 1 패턴 데이터(BL0_CALP)의 활성화 구간의 후기 구간(즉, 시드 신호(SEED)의 다음 주기) 동안, 로직 로우 레벨의 트리밍 구간 신호(TRIM)에 따라, 라이징 신호(IDQS)와 폴링 신호(QDQS)의 위상차에 대응되는 예비 코드(DOUT_PRE<0:5>)가 검출 코드(DOUT<0:3>)로 출력되어, 제 2 트리머(314)의 지연량이 조절된다. 제 1 레지스터 제어 신호(REG0P)가 활성화되면, 최종적으로 검출 코드(DOUT<0:3>)가 제 1 레지스터(322)에 저장되고, 누적 클럭(ACC_CLK)에 따라 제 1 레지스터(322)에 저장된 제 1 저장값이 합산 신호(SUM<0:3>)로 출력된다. During the latter period of the activation period of the first pattern data (BL0_CALP) (i.e., the next period of the seed signal (SEED)), a preliminary code (DOUT_PRE<0:5>) corresponding to the phase difference between the rising signal (IDQS) and the falling signal (QDQS) is output as a detection code (DOUT<0:3>) according to a trimming period signal (TRIM) of a logic low level, so that the delay amount of the second trimmer (314) is adjusted. When the first register control signal (REG0P) is activated, the detection code (DOUT<0:3>) is finally stored in the first register (322), and the first storage value stored in the first register (322) is output as a sum signal (SUM<0:3>) according to the accumulation clock (ACC_CLK).
제 2 패턴 데이터(BL1_CALP)의 활성화 구간(즉, 시드 신호(SEED)의 다음 한 주기) 동안, 라이징 신호(IDQS)와 폴링 신호(QDQS)의 위상차에 대응되는 예비 코드(DOUT_PRE<0:5>)가 검출 코드(DOUT<0:3>)로 출력되어, 제 2 트리머(314)의 지연량이 조절된다. 제 2 레지스터 제어 신호(REG1P)에 따라 최종적으로 검출 코드(DOUT<0:3>)가 제 2 레지스터(323)에 저장되고, 누적 클럭(ACC_CLK)에 따라 기존의 합산 신호(SUM<0:3>)(즉, 제 1 저장값)과 제 2 레지스터(323)에 저장된 제 2 저장값이 누적 합산되어 합산 신호(SUM<0:3>)로 출력될 수 있다. 마찬가지로, 제 3 패턴 데이터(BL2_CALP)의 활성화 구간(즉, 시드 신호(SEED)의 다음 한 주기) 동안, 제 3 레지스터 제어 신호(REG2P) 및 누적 클럭(ACC_CLK)에 따라, 기존의 합산 신호(SUM<0:3>)(즉, 제 1 및 제 2 저장값의 합)과 제 3 레지스터(324)에 저장된 제 3 저장값이 누적 합산되어 합산 신호(SUM<0:3>)로 출력될 수 있다. 최종적으로, 제 4 패턴 데이터(BL3_CALP)의 활성화 구간의 초기 구간(즉, 시드 신호(SEED)의 다음 한 주기) 동안, 제 1 내지 4 저장값이 누적 합산되어 최종적으로 합산 신호(SUM<0:3>)로 출력될 수 있다.During the activation section of the second pattern data (BL1_CALP) (i.e., the next cycle of the seed signal (SEED)), a preliminary code (DOUT_PRE<0:5>) corresponding to the phase difference between the rising signal (IDQS) and the falling signal (QDQS) is output as a detection code (DOUT<0:3>), so that the delay amount of the second trimmer (314) is adjusted. The detection code (DOUT<0:3>) is finally stored in the second register (323) according to the second register control signal (REG1P), and according to the accumulation clock (ACC_CLK), the existing sum signal (SUM<0:3>) (i.e., the first storage value) and the second storage value stored in the second register (323) can be cumulatively added and output as a sum signal (SUM<0:3>). Similarly, during the activation period of the third pattern data (BL2_CALP) (i.e., one cycle following the seed signal (SEED)), according to the third register control signal (REG2P) and the accumulation clock (ACC_CLK), the existing sum signal (SUM<0:3>) (i.e., the sum of the first and second storage values) and the third storage value stored in the third register (324) may be cumulatively added and output as the sum signal (SUM<0:3>). Finally, during the initial period of the activation period of the fourth pattern data (BL3_CALP) (i.e., one cycle following the seed signal (SEED)), the first to fourth storage values may be cumulatively added and finally output as the sum signal (SUM<0:3>).
상기와 같이, 제 1 패턴 데이터(BL0_CALP)의 활성화 구간의 후기 구간과, 제 2 및 제 3 패턴 데이터(BL1_CALP, BL2_CALP)의 활성화 구간과 제 4 패턴 데이터(BL3_CALP)의 활성화 구간의 초기 구간 동안, 라이징 신호(IDQS)와 폴링 신호(QDQS)의 위상차에 대응되는 검출 코드(DOUT<0:3>)를 각 레지스터에 저장하는 동작을 위상 검출 동작으로 정의할 수 있다. As described above, during the latter period of the activation period of the first pattern data (BL0_CALP), the activation periods of the second and third pattern data (BL1_CALP, BL2_CALP) and the early period of the activation period of the fourth pattern data (BL3_CALP), an operation of storing a detection code (DOUT<0:3>) corresponding to the phase difference between the rising signal (IDQS) and the falling signal (QDQS) in each register can be defined as a phase detection operation.
이후, 구간 신호(SAR_EN)는 로직 로우 레벨로 비활성화된다. 이에 따라, 평균-편차 계산부(330)의 평균-편차 계산 동작이 수행될 수 있다.Thereafter, the interval signal (SAR_EN) is deactivated to a logic low level. Accordingly, the average-deviation calculation operation of the average-deviation calculation unit (330) can be performed.
도 16b 를 참조하면, 평균 산출 신호(REG_QW) 및 선택 신호(REG_SEL<0:2>)의 제 1 비트(REG_SEL<0>)가 활성화된다. 평균 산출 신호(REG_QW)에 따라 합산 신호(SUM<0:3>)를 토대로 평균 코드(AVG<0:3>)가 산출되고, 제 1 비트(REG_SEL<0>)에 따라 평균 코드(AVG<0:3>)로부터 제 1 저장값을 뺀 편차 코드(DEV<0:3>)가 산출될 수 있다. Referring to FIG. 16b, the first bit (REG_SEL<0>) of the average calculation signal (REG_QW) and the selection signal (REG_SEL<0:2>) is activated. Based on the sum signal (SUM<0:3>) according to the average calculation signal (REG_QW), an average code (AVG<0:3>) can be calculated, and based on the first bit (REG_SEL<0>), a deviation code (DEV<0:3>) can be calculated by subtracting a first storage value from the average code (AVG<0:3>).
한편, 누적 리셋 신호(ACC_RST)가 활성화되어 합산 신호(SUM<0:3>)가 초기화 될 수 있다. 누적 클럭(ACC_CLK)에 따라 편차 코드(DEV<0:3>)가 합산 신호(SUM<0:3>)로 출력된다. 이 때, 합산 신호(SUM<0:3>)는, 누적 편차 코드(FB_DEV<0:3>)로 제공될 수 있다. 제 3 펄스 신호(P2)에 따라 제 1 레지스터 제어 신호(REG0P)가 활성화되어 누적 편차 코드(FB_DEV<0:3>)가 제 1 레지스터(322)에 재저장될 수 있다. 이와 동시에, 선택 신호(REG_SEL<0:2>)의 제 2 비트(REG_SEL<1>)가 활성화되고, 평균 코드(AVG<0:3>)로부터 제 2 저장값을 뺀 편차 코드(DEV<0:3>)가 산출될 수 있다. 누적 클럭(ACC_CLK)에 따라, 편차 코드(DEV<0:3>)와 기존의 합산 신호(SUM<0:3>)가 누적 합산되어 누적 편차 코드(FB_DEV<0:3>)로 출력될 수 있다. 제 2 레지스터 제어 신호(REG1P)가 활성화되면, 누적 편차 코드(FB_DEV<0:3>)가 제 2 레지스터(323)에 재저장될 수 있다. 마찬가지로, 선택 신호(REG_SEL<0:2>)의 제 3 비트(REG_SEL<2>) 및 누적 클럭(ACC_CLK)이 순차적으로 활성화되면, 편차 코드(DEV<0:3>)와 기존의 합산 신호(SUM<0:3>)가 누적 합산되어 누적 편차 코드(FB_DEV<0:3>)로 출력되고, 제 3 레지스터 제어 신호(REG2P)에 따라 누적 편차 코드(FB_DEV<0:3>)가 제 3 레지스터(324)에 재저장될 수 있다. Meanwhile, the accumulated reset signal (ACC_RST) may be activated so that the summation signal (SUM<0:3>) may be initialized. The deviation code (DEV<0:3>) is output as the summation signal (SUM<0:3>) according to the accumulated clock (ACC_CLK). At this time, the summation signal (SUM<0:3>) may be provided as the accumulated deviation code (FB_DEV<0:3>). The first register control signal (REG0P) may be activated according to the third pulse signal (P2) so that the accumulated deviation code (FB_DEV<0:3>) may be re-stored in the first register (322). At the same time, the second bit (REG_SEL<1>) of the selection signal (REG_SEL<0:2>) may be activated, and the deviation code (DEV<0:3>) may be calculated by subtracting the second storage value from the average code (AVG<0:3>). According to the accumulated clock (ACC_CLK), the deviation code (DEV<0:3>) and the existing sum signal (SUM<0:3>) can be accumulated and output as the accumulated deviation code (FB_DEV<0:3>). When the second register control signal (REG1P) is activated, the accumulated deviation code (FB_DEV<0:3>) can be re-stored in the second register (323). Similarly, when the third bit (REG_SEL<2>) of the selection signal (REG_SEL<0:2>) and the accumulation clock (ACC_CLK) are sequentially activated, the deviation code (DEV<0:3>) and the existing summation signal (SUM<0:3>) are cumulatively added and output as the accumulated deviation code (FB_DEV<0:3>), and the accumulated deviation code (FB_DEV<0:3>) can be restored in the third register (324) according to the third register control signal (REG2P).
상기의 평균-편차 계산 동작에 따라 누적 편차 코드(FB_DEV<0:3>)는 제 1 내지 제 3 레지스터(322~324)에 각각 저장될 수 있다. 제 1 내지 제 3 레지스터(322~324)에 저장된 누적 편차 코드(FB_DEV<0:3>)는, 제 1 내지 제 3 캘리브레이션 코드(R1_F1<0:3>, F1_R2<0:3>, R2_F2<0:3>)로 각각 출력되어, 제 1 내지 제 4 출력 클럭(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)의 듀티비를 보정하는 데 이용될 수 있다. According to the above mean-deviation calculation operation, the accumulated deviation code (FB_DEV<0:3>) can be stored in the first to third registers (322 to 324), respectively. The accumulated deviation code (FB_DEV<0:3>) stored in the first to third registers (322 to 324) can be output as the first to third calibration codes (R1_F1<0:3>, F1_R2<0:3>, R2_F2<0:3>), respectively, and can be used to correct the duty ratios of the first to fourth output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK).
도 17 은 본 발명의 실시예에 따른 반도체 장치의 트레이닝 동작을 설명하기 위한 순서도 이다. 도 18 은 도 17 의 트레이닝 동작에 따른 출력 클럭들의 듀티 보정을 보여주는 도면 이다. FIG. 17 is a flowchart for explaining a training operation of a semiconductor device according to an embodiment of the present invention. FIG. 18 is a diagram showing duty correction of output clocks according to the training operation of FIG. 17.
도 17 을 참조하면, 송신 회로(120)는, 트레이닝 모드 시, 제 1 패턴 데이터(BL0_CALP)의 활성화 구간 동안 제 1 출력 클럭(R1DOCLK)에 대응되는 H-L-L-L의 펄스로 트레이닝 신호(TRS)가 데이터 스트로브 패드(DQS_P)로 출력된다(S1701). 수신 회로(130)는, 데이터 스트로브 패드(DQS_P)로 입력되는 트레이닝 신호(TRS)의 라이징 에지와 폴링 에지에 각각 활성화되는 라이징 신호(IDQS) 및 폴링 신호(QDQS)를 생성한다(S1702).Referring to FIG. 17, the transmitting circuit (120) outputs a training signal (TRS) to the data strobe pad (DQS_P) as a pulse of H-L-L-L corresponding to the first output clock (R1DOCLK) during the activation period of the first pattern data (BL0_CALP) in the training mode (S1701). The receiving circuit (130) generates a rising signal (IDQS) and a falling signal (QDQS) that are activated at the rising edge and falling edge of the training signal (TRS) input to the data strobe pad (DQS_P), respectively (S1702).
도 16a 에서 설명된 바와 같이, 제 1 패턴 데이터(BL0_CALP)의 활성화 구간의 초기 구간 동안, 캘리브레이션 회로(140)는, 라이징 신호(IDQS) 및 폴링 신호(QDQS)의 위상차에 대응되는 트리밍 코드(D_TRIM<0:5>)를 이용하여 제 1 트리머(312)의 지연량을 설정하는 초기 트리밍 설정 동작을 수행한다(S1703). As described in FIG. 16a, during the initial section of the activation section of the first pattern data (BL0_CALP), the calibration circuit (140) performs an initial trimming setting operation that sets the delay amount of the first trimmer (312) using the trimming code (D_TRIM<0:5>) corresponding to the phase difference of the rising signal (IDQS) and the falling signal (QDQS) (S1703).
이 후, 제 1 패턴 데이터(BL0_CALP)의 활성화 구간의 후기 구간 동안, 캘리브레이션 회로(140)는, 라이징 신호(IDQS) 및 폴링 신호(QDQS)의 위상차에 대응되는 검출 코드(DOUT<0:3>)를 제 1 레지스터(322)에 저장하는 위상 검출 동작을 수행한다(S1704). Thereafter, during the latter period of the activation period of the first pattern data (BL0_CALP), the calibration circuit (140) performs a phase detection operation of storing a detection code (DOUT<0:3>) corresponding to the phase difference between the rising signal (IDQS) and the falling signal (QDQS) in the first register (322) (S1704).
이 후, 제 2 패턴 데이터(BL1_CALP)의 활성화 구간 동안, 제 2 출력 클럭(F1DOCLK)에 대응되는 대응되는 L-H-L-L의 펄스로 트레이닝 신호(TRS)가 데이터 스트로브 패드(DQS_P)로 출력된다(S1706). 수신 회로(130)는, 트레이닝 신호(TRS)의 라이징 에지와 폴링 에지에 각각 활성화되는 라이징 신호(IDQS) 및 폴링 신호(QDQS)를 생성한다(S1707). 캘리브레이션 회로(140)는, 라이징 신호(IDQS) 및 폴링 신호(QDQS)의 위상차에 대응되는 검출 코드(DOUT<0:3>)를 제 2 레지스터(323)에 저장하는 위상 검출 동작을 수행한다(S1704).Thereafter, during the activation section of the second pattern data (BL1_CALP), the training signal (TRS) is output to the data strobe pad (DQS_P) as a corresponding L-H-L-L pulse corresponding to the second output clock (F1DOCLK) (S1706). The receiving circuit (130) generates a rising signal (IDQS) and a falling signal (QDQS) which are activated at the rising edge and the falling edge of the training signal (TRS), respectively (S1707). The calibration circuit (140) performs a phase detection operation of storing a detection code (DOUT<0:3>) corresponding to the phase difference between the rising signal (IDQS) and the falling signal (QDQS) in the second register (323) (S1704).
마찬가지로, 제 3 패턴 데이터(BL2_CALP)의 활성화 구간 동안, 제 3 출력 클럭(R2DOCLK)에 대응되는 L-L-H-L의 펄스로 트레이닝 신호(TRS)가 데이터 스트로브 패드(DQS_P)로 출력된다(S1706), 수신 회로(130)는, 트레이닝 신호(TRS)의 라이징 에지와 폴링 에지에 각각 활성화되는 라이징 신호(IDQS) 및 폴링 신호(QDQS)를 생성한다(S1707). 캘리브레이션 회로(140)는, 라이징 신호(IDQS) 및 폴링 신호(QDQS)의 위상차에 대응되는 검출 코드(DOUT<0:3>)를 제 3 레지스터(324)에 저장하는 위상 검출 동작을 수행한다(S1704). Similarly, during the activation period of the third pattern data (BL2_CALP), the training signal (TRS) is output to the data strobe pad (DQS_P) as a pulse of L-L-H-L corresponding to the third output clock (R2DOCLK) (S1706), and the receiving circuit (130) generates a rising signal (IDQS) and a falling signal (QDQS) which are activated at the rising edge and the falling edge of the training signal (TRS), respectively (S1707). The calibration circuit (140) performs a phase detection operation of storing a detection code (DOUT<0:3>) corresponding to the phase difference of the rising signal (IDQS) and the falling signal (QDQS) in the third register (324) (S1704).
마지막으로, 제 4 패턴 데이터(BL3_CALP)의 활성화 구간 동안, 제 4 출력 클럭(F2DOCLK)에 대응되는 L-L-L-H의 펄스로 트레이닝 신호(TRS)가 데이터 스트로브 패드(DQS_P)로 출력된다(S1706). 수신 회로(130)는, 트레이닝 신호(TRS)의 라이징 에지와 폴링 에지에 각각 활성화되는 라이징 신호(IDQS) 및 폴링 신호(QDQS)를 생성한다(S1707). 캘리브레이션 회로(140)는, 라이징 신호(IDQS) 및 폴링 신호(QDQS)의 위상차에 대응되는 검출 코드(DOUT<0:3>)를 제 4 레지스터(325)에 저장하는 위상 검출 동작을 수행한다(S1704). 위상 검출 동작 시, 제 1 내지 제 4 레지스터(322~325)에 저장된 제 1 내지 4 저장값이 누적 합산되어 최종적으로 합산 신호(SUM<0:3>)로 출력될 수 있다Finally, during the activation period of the fourth pattern data (BL3_CALP), the training signal (TRS) is output to the data strobe pad (DQS_P) as a pulse of L-L-L-H corresponding to the fourth output clock (F2DOCLK) (S1706). The receiving circuit (130) generates a rising signal (IDQS) and a falling signal (QDQS) which are activated at the rising edge and the falling edge of the training signal (TRS), respectively (S1707). The calibration circuit (140) performs a phase detection operation of storing a detection code (DOUT<0:3>) corresponding to the phase difference of the rising signal (IDQS) and the falling signal (QDQS) in the fourth register (325) (S1704). When the phase detection operation is performed, the first to fourth storage values stored in the first to fourth registers (322 to 325) can be accumulated and finally output as a sum signal (SUM<0:3>).
이 후, 구간 신호(SAR_EN)가 로직 로우 레벨로 비활성화되면(S1705), 평균-편차 계산 동작이 수행될 수 있다. 캘리브레이션 회로(140)는, 합산 신호(SUM<0:3>)를 토대로 평균 코드(AVG<0:3>)를 산출한다(S1708). 캘리브레이션 회로(140)는, 평균 코드(AVG<0:3>)로부터 제 1 저장값을 뺀 편차 코드(DEV<0:3>)를 제 1 레지스터(322)에 재저장하고, 평균 코드(AVG<0:3>)로부터 제 2 저장값을 뺀 편차 코드(DEV<0:3>)와 이전의 누적 편차 코드를 합산하여 새로운 누적 편차 코드(FB_DEV<0:3>)를 제 2 레지스터(323)에 재저장하고, 평균 코드(AVG<0:3>)로부터 제 3 저장값을 뺀 편차 코드(DEV<0:3>)와 이전의 누적 편차 코드를 합산하여 새로운 누적 편차 코드(FB_DEV<0:3>)를 제 3 레지스터(324)에 재저장할 수 있다(S1709). 재저장된 제 1 내지 제 3 저장값은 제 1 내지 제 3 캘리브레이션 코드(R1_F1<0:3>, F1_R2<0:3>, R2_F2<0:3>)로 각각 출력될 수 있다. 이 후, 클럭 생성 회로(110)는, 제 1 내지 제 3 캘리브레이션 코드(R1_F1<0:3>, F1_R2<0:3>, R2_F2<0:3>)에 따라 제 1 내지 제 4 출력 클럭(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)의 듀티비를 보정할 수 있다(S1710). After this, when the interval signal (SAR_EN) is deactivated to a logic low level (S1705), the average-deviation calculation operation can be performed. The calibration circuit (140) calculates the average code (AVG<0:3>) based on the sum signal (SUM<0:3>) (S1708). The calibration circuit (140) can re-store the deviation code (DEV<0:3>) obtained by subtracting the first storage value from the average code (AVG<0:3>) in the first register (322), add the deviation code (DEV<0:3>) obtained by subtracting the second storage value from the average code (AVG<0:3>) and the previous accumulated deviation code to re-store the new accumulated deviation code (FB_DEV<0:3>) in the second register (323), and add the deviation code (DEV<0:3>) obtained by subtracting the third storage value from the average code (AVG<0:3>) and the previous accumulated deviation code to re-store the new accumulated deviation code (FB_DEV<0:3>) in the third register (324) (S1709). The first to third stored values that have been restored can be output as the first to third calibration codes (R1_F1<0:3>, F1_R2<0:3>, R2_F2<0:3>), respectively. Thereafter, the clock generation circuit (110) can correct the duty ratio of the first to fourth output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK) according to the first to third calibration codes (R1_F1<0:3>, F1_R2<0:3>, R2_F2<0:3>) (S1710).
도 18 을 참조하면, 트레이닝 동작 전에, 제 1 내지 제 4 출력 클럭(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)의 듀티비가 틀어져 스트로브 신호(DQS)의 1-비트 펄스폭이 254 ps - 215 ps - 248 ps - 203 ps 으로 출력된다고 가정한다. 스트로브 신호(DQS)가 4 개의 출력 클럭에 따라 생성되므로 4-비트 펄스폭은 일정할 수 있다. 즉, 4-비트 펄스폭은 254+215+248+203=950 ps으로 고정되어 있으며, 이상적인 1-비트 펄스폭은 230 ps 일 수 있다. 이 때, 스트로브 신호(DQS)가 입출력 경로를 지나면서 발생할 수 있는 옵셋(err)이 있더라도, 동일한 경로를 통과하므로 스트로브 신호(DQS)의 1-비트 펄스폭은 254+err ps - 215+err ps - 248+err ps - 203+err ps 가 될 수 있다. Referring to FIG. 18, it is assumed that before the training operation, the duty ratios of the first to fourth output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK) are different so that the 1-bit pulse width of the strobe signal (DQS) is output as 254 ps - 215 ps - 248 ps - 203 ps. Since the strobe signal (DQS) is generated according to the four output clocks, the 4-bit pulse width can be constant. That is, the 4-bit pulse width is fixed to 254 + 215 + 248 + 203 = 950 ps, and the ideal 1-bit pulse width can be 230 ps. At this time, even if there is an offset (err) that may occur as the strobe signal (DQS) passes through the input/output path, since it passes through the same path, the 1-bit pulse width of the strobe signal (DQS) can be 254+err ps - 215+err ps - 248+err ps - 203+err ps.
본 발명의 실시예에서, 캘리브레이션 회로(140)는, 950+4*err의 합산 신호(SUM<0:3>)를 토대로 230+err의 평균 코드(AVG<0:3>)를 산출할 수 있다. 캘리브레이션 회로(140)는, 평균 코드(AVG<0:3>)로부터 254+err의 제 1 저장값을 뺀 -24 ps의 누적 편차 코드(FB_DEV<0:3>)를 제 1 레지스터(322)에 재저장하고, 평균 코드(AVG<0:3>)로부터 215+err의 제 2 저장값을 뺀 15 ps의 편차 코드(DEV<0:3>)와 이전의 -24 ps의 누적 편차 코드를 합산하여 -9 ps 의 누적 편차 코드(FB_DEV<0:3>)를 제 2 레지스터(323)에 재저장하고, 평균 코드(AVG<0:3>)로부터 248+err의 제 3 저장값을 뺀 -18 ps의 편차 코드(DEV<0:3>)와 이전의 -9 ps의 누적 편차 코드를 합산하여 -27 ps 의 누적 편차 코드(FB_DEV<0:3>)를 제 3 레지스터(324)에 재저장할 수 있다. In an embodiment of the present invention, the calibration circuit (140) can produce an average code (AVG<0:3>) of 230+err based on a sum signal (SUM<0:3>) of 950+4*err. The calibration circuit (140) re-stores the -24 ps accumulated deviation code (FB_DEV<0:3>) obtained by subtracting the first storage value of 254+err from the average code (AVG<0:3>) into the first register (322), adds the 15 ps deviation code (DEV<0:3>) obtained by subtracting the second storage value of 215+err from the average code (AVG<0:3>) and the previous -24 ps accumulated deviation code to re-store the -9 ps accumulated deviation code (FB_DEV<0:3>) into the second register (323), and adds the -18 ps deviation code (DEV<0:3>) obtained by subtracting the third storage value of 248+err from the average code (AVG<0:3>) and the previous -9 ps accumulated deviation code to generate the -27 ps accumulated deviation. The code (FB_DEV<0:3>) can be re-saved to the third register (324).
재저장된 제 1 내지 제 3 저장값(-24 ps, -9 ps, -27 ps)은 제 1 내지 제 3 캘리브레이션 코드(R1_F1<0:3>, F1_R2<0:3>, R2_F2<0:3>)로 각각 출력되어, 제 1 내지 제 4 출력 클럭(R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK)의 듀티비를 보정할 수 있다. The first to third stored values (-24 ps, -9 ps, -27 ps) that have been restored are output as the first to third calibration codes (R1_F1<0:3>, F1_R2<0:3>, R2_F2<0:3>), respectively, so that the duty ratio of the first to fourth output clocks (R1DOCLK, F1DOCLK, R2DOCLK, F2DOCLK) can be corrected.
상기와 같이, 본 발명의 실시예에 따른 반도체 장치는, 스트로브 신호의 1-비트 펄스폭을 일정하게 유지할 수 있어 데이터 출력 동작의 신뢰성을 향상시킬 수 있다.As described above, the semiconductor device according to the embodiment of the present invention can maintain the 1-bit pulse width of the strobe signal constant, thereby improving the reliability of the data output operation.
본 발명의 기술 사상은 상기 바람직한 실시예에 따라 구체적으로 기록되었으나, 상기한 실시예는 그 설명을 위한 것이며 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명의 기술 분야의 통상의 전문가라면 본 발명의 기술 사상의 범위 내에서 다양한 실시예가 가능함을 이해할 수 있을 것이다. Although the technical idea of the present invention has been specifically described according to the above preferred embodiments, it should be noted that the above embodiments are for the purpose of explanation and not for the purpose of limitation. In addition, a person skilled in the art of the present invention will be able to understand that various embodiments are possible within the scope of the technical idea of the present invention.
예컨대, 전술한 실시예에서 예시한 논리 게이트 및 트랜지스터는 입력되는 신호의 극성에 따라 그 위치 및 종류가 다르게 구현되어야 할 것이다.For example, the logic gates and transistors exemplified in the above-described embodiments may have to be implemented in different positions and types depending on the polarity of the input signal.
Claims (20)
상기 데이터 스트로브 패드로 입력되는 상기 펄스의 라이징 에지와 폴링 에지에 각각 활성화되는 라이징 신호 및 폴링 신호를 생성하는 수신 회로;
구간 신호에 따라, 상기 라이징 신호 및 상기 폴링 신호의 위상차에 대응되는 검출 코드를 제 1 내지 제 N 레지스터에 순차적으로 저장하여 제 1 내지 제 N 저장값의 평균값을 산출하고, 상기 평균값과 상기 제 1 내지 제 N 저장값의 편차를 상기 제 1 내지 제 N 레지스터에 재저장하는 캘리브레이션 회로; 및
상기 제 1 내지 제 N 레지스터의 재저장값을 이용하여 상기 제 1 내지 제 N 출력 클럭의 듀티비를 보정하는 클럭 생성 회로
를 포함하는 반도체 장치.
A transmitter circuit that sequentially outputs pulses corresponding to the first to Nth output clocks to the data strobe pad in training mode;
A receiving circuit which generates a rising signal and a falling signal which are activated respectively at the rising edge and the falling edge of the pulse input to the data strobe pad;
A calibration circuit that sequentially stores detection codes corresponding to the phase difference of the rising signal and the falling signal in the first to Nth registers according to the interval signal, calculates an average value of the first to Nth stored values, and re-stores the deviation between the average value and the first to Nth stored values in the first to Nth registers; and
A clock generation circuit that corrects the duty ratio of the first to Nth output clocks by using the restored values of the first to Nth registers
A semiconductor device comprising:
상기 트레이닝 모드 시, 상기 라이징 신호 및 상기 폴링 신호 중 적어도 하나에 따라 소정 주기로 활성화되는 시드 신호에 따라 상기 구간 신호와 순차적으로 활성화되는 제 1 내지 제 N 레지스터 제어 신호를 생성하는 캘리브레이션 제어 회로
를 더 포함하는 반도체 장치.
In paragraph 1,
In the training mode, a calibration control circuit that generates the first to Nth register control signals that are sequentially activated with the interval signal according to a seed signal that is activated at a predetermined cycle according to at least one of the rising signal and the falling signal.
A semiconductor device further comprising:
상기 캘리브레이션 회로는,
상기 구간 신호가 활성화되면, 상기 제 1 내지 제 N 레지스터 제어 신호에 따라 상기 검출 코드를 상기 제 1 내지 제 N 레지스터에 순차적으로 저장하고, 상기 제 1 내지 제 N 저장값을 누적 합산하여 합산 신호를 생성하고,
상기 구간 신호가 비활성화되면, 상기 합산 신호를 토대로 상기 평균값을 산출하고, 상기 평균값과 상기 제 1 내지 제 N 저장값의 상기 편차를 상기 제 1 내지 제 N 레지스터에 재저장하는
반도체 장치.
In the second paragraph,
The above calibration circuit,
When the above-mentioned section signal is activated, the detection code is sequentially stored in the first to Nth registers according to the first to Nth register control signals, and the first to Nth stored values are accumulated to generate a sum signal.
When the above-mentioned interval signal is deactivated, the average value is calculated based on the above-mentioned sum signal, and the deviation between the average value and the first to Nth storage values is re-stored in the first to Nth registers.
Semiconductor devices.
상기 캘리브레이션 제어 회로는,
상기 시드 신호의 각 주기마다 활성화되는 다수의 구간 정의 신호들을 생성하고, 트레이닝 모드 신호에 따라 활성화되고 상기 다수의 구간 정의 신호들 중 하나에 따라 비활성화되는 상기 구간 신호를 생성하는 구간 정의부; 및
상기 구간 신호 및 상기 구간 정의 신호들에 따라 상기 제 1 내지 제 N 레지스터 제어 신호를 생성하는 제어 신호 생성부
를 포함하는 반도체 장치.
In the second paragraph,
The above calibration control circuit,
An interval defining unit that generates a plurality of interval defining signals that are activated for each period of the seed signal, and generates the interval signal that is activated according to a training mode signal and deactivated according to one of the plurality of interval defining signals; and
A control signal generation unit that generates the first to Nth register control signals according to the above-mentioned interval signals and the above-mentioned interval definition signals.
A semiconductor device comprising:
상기 캘리브레이션 회로는,
상기 라이징 신호 및 상기 폴링 신호의 위상차를 검출하여 상기 검출 코드를 생성하는 검출부;
상기 구간 신호가 활성화되면, 제 1 내지 제 N 레지스터 제어 신호에 따라 상기 검출 코드를 상기 제 1 내지 제 N 레지스터에 순차적으로 저장하고, 상기 구간 신호가 비활성화되면, 상기 제 1 내지 제 N 레지스터 제어 신호에 따라 상기 편차를 상기 제 1 내지 제 N 레지스터에 순차적으로 저장하는 저장부; 및
상기 구간 신호가 활성화되면 상기 제 1 내지 제 N 레지스터 제어 신호에 따라 상기 제 1 내지 제 N 저장값을 누적 합산하여 합산 신호를 생성하고,상기 구간 신호가 비활성화되면 상기 합산 신호를 토대로 상기 평균값을 산출하고, 상기 평균값과 상기 제 1 내지 제 N 저장값의 상기 편차를 산출하는 평균-편차 계산부
를 포함하는 반도체 장치.
In paragraph 1,
The above calibration circuit,
A detection unit that detects the phase difference between the rising signal and the falling signal and generates the detection code;
A storage unit that sequentially stores the detection code in the first to Nth registers according to the first to Nth register control signals when the above-mentioned interval signal is activated, and sequentially stores the deviation in the first to Nth registers according to the first to Nth register control signals when the above-mentioned interval signal is deactivated; and
When the above-mentioned interval signal is activated, the first to Nth storage values are accumulated and added according to the first to Nth register control signals to generate a sum signal, and when the above-mentioned interval signal is deactivated, the average value is calculated based on the sum signal, and an average-deviation calculation unit calculates the deviation between the average value and the first to Nth storage values.
A semiconductor device comprising:
상기 검출부는,
트리밍 코드에 따라 지연량이 설정되며, 상기 라이징 신호를 지연하는 제 1 트리머;
상기 검출 코드에 따라 지연량이 조절되며, 상기 제 1 트리머의 출력을 지연하여 지연된 라이징 신호를 출력하는 제 2 트리머;
상기 지연된 라이징 신호 및 상기 폴링 신호의 위상차를 비교하여 비교 신호를 출력하는 비교기; 및
상기 폴링 신호에 따라 소정 주기로 활성화되는 시드 신호를 생성하고, 상기 시드 신호에 따라 상기 비교 신호에 대응되는 상기 트리밍 코드 및 상기 검출 코드를 생성하는 트리밍 제어기
를 포함하는 반도체 장치.
In paragraph 5,
The above detection unit,
A first trimmer for delaying the rising signal, the delay amount being set according to the trimming code;
A second trimmer, which adjusts the delay amount according to the above detection code and delays the output of the first trimmer to output a delayed rising signal;
A comparator for comparing the phase difference between the delayed rising signal and the falling signal and outputting a comparison signal; and
A trimming controller that generates a seed signal that is activated at a predetermined cycle according to the polling signal, and generates the trimming code and the detection code corresponding to the comparison signal according to the seed signal.
A semiconductor device comprising:
상기 트리밍 제어기는,
상기 폴링 신호에 따라 순차적으로 활성화되는 상기 시드 신호 및 다수의 펄스 신호들을 생성하는 주기 생성기;
상기 시드 신호 및 상기 펄스 신호들에 따라, 상기 비교 신호를 예비 코드로 변환하는 코드 변환기;
상기 펄스 신호들 중 하나에 따라 트리밍 구간 신호를 생성하는 초기 구간 설정부; 및
상기 트리밍 구간 신호에 따라 상기 예비 코드를 상기 트리밍 코드 또는 상기 검출 코드로 출력하는 코드 출력기
를 포함하는 반도체 장치.
In paragraph 6,
The above trimming controller,
A period generator for generating the seed signal and a plurality of pulse signals that are sequentially activated according to the polling signal;
A code converter that converts the comparison signal into a preliminary code according to the seed signal and the pulse signals;
An initial interval setting unit for generating a trimming interval signal according to one of the above pulse signals; and
A code output device that outputs the preliminary code as the trimming code or the detection code according to the trimming section signal.
A semiconductor device comprising:
상기 저장부는,
상기 구간 신호가 활성화되면 상기 검출 코드를 선택하고, 상기 구간 신호가 비활성화되면 상기 편차를 선택하여 출력하는 저장 선택기; 및
상기 제 1 내지 제 N 레지스터 제어 신호에 따라 순차적으로 활성화되어, 상기 저장 선택기의 출력을 저장하는 상기 제 1 내지 제 N 레지스터
를 포함하는 반도체 장치.
In paragraph 5,
The above storage unit is,
A storage selector for selecting the detection code when the above-mentioned interval signal is activated and for selecting and outputting the deviation when the above-mentioned interval signal is deactivated; and
The first to Nth registers are sequentially activated according to the first to Nth register control signals and store the output of the storage selector.
A semiconductor device comprising:
상기 평균-편차 계산부는,
상기 구간 신호가 활성화되면, 상기 제 1 내지 제 N 레지스터 제어 신호에 따라 상기 제 1 내지 제 N 저장값을 누적 합산하여 상기 합산 신호를 출력하는 누적 합산부;
상기 구간 신호가 비활성화되면, 상기 합산 신호를 토대로 상기 평균값으로 산출하는 평균 계산부; 및
상기 평균값으로부터 상기 제 1 내지 제 N 저장값을 각각 빼서 상기 편차를 산출하는 편차 계산부
를 포함하는 반도체 장치.
In paragraph 5,
The above mean-deviation calculation section,
An accumulative summing unit that accumulates and sums the first to Nth storage values according to the first to Nth register control signals and outputs the summing signal when the above-mentioned interval signal is activated;
When the above-mentioned interval signal is deactivated, an average calculation unit that calculates the average value based on the above-mentioned sum signal; and
A deviation calculation unit that calculates the deviation by subtracting the first to Nth storage values from the average value.
A semiconductor device comprising:
상기 송신 회로는,
트레이닝 모드 신호에 따라 인에이블 되어, 제 1 및 제 2 테스트 신호를 이용하여 순차적으로 활성화되며, 서로 겹치지 않는 활성화 구간을 가지는 제 1 내지 제 N 패턴 데이터를 생성하는 패턴 생성부;
상기 제 1 내지 제 N 출력 클럭에 따라 상기 제 1 내지 제 N 패턴 데이터를 각각 래치하고, 래치된 신호들을 직렬화하여 풀업 제어 신호 및 풀다운 제어 신호를 생성하는 직렬화부; 및
상기 풀업 제어 신호 및 상기 풀다운 제어 신호에 따라 상기 데이터 스트로브 패드를 구동하는 출력 드라이버
를 포함하는 반도체 장치.
In paragraph 1,
The above transmitting circuit,
A pattern generation unit that is enabled according to a training mode signal, sequentially activated using the first and second test signals, and generates first to Nth pattern data having non-overlapping activation sections;
A serialization unit that latches the first to Nth pattern data according to the first to Nth output clocks, and serializes the latched signals to generate a pull-up control signal and a pull-down control signal; and
An output driver that drives the data strobe pad according to the pull-up control signal and the pull-down control signal.
A semiconductor device comprising:
상기 패턴 생성부는,
상기 트레이닝 모드 신호에 따라, 상기 제 1 및 제 2 테스트 신호의 주파수를 소정 주기로 분주하여 제 1 분주 클럭 및 제 2 분주 클럭을 생성하는 주파수 분주기;
상기 제 1 분주 클럭에 따라 순차적으로 활성화되는 다수의 쉬프트 신호를 생성하는 제 1 신호 생성기;
상기 제 1 신호 생성기의 마지막 쉬프트 신호를 입력받아, 상기 제 2 분주 클럭에 따라 순차적으로 활성화되는 다수의 쉬프트 신호를 생성하는 제 2 신호 생성기; 및
상기 쉬프트 신호들 중 적어도 두 개를 조합하여 상기 제 1 내지 제 N 패턴 데이터를 출력하는 패턴 조합기
를 포함하는 반도체 장치.
In Article 10,
The above pattern generating unit,
A frequency divider that divides the frequencies of the first and second test signals into predetermined cycles according to the training mode signal to generate a first divided clock and a second divided clock;
A first signal generator generating a plurality of shift signals sequentially activated according to the first divided clock;
A second signal generator that receives the last shift signal of the first signal generator and generates a plurality of shift signals that are sequentially activated according to the second divided clock; and
A pattern combiner that outputs the first to Nth pattern data by combining at least two of the above shift signals.
A semiconductor device comprising:
상기 패턴 조합기는,
상기 제 1 신호 생성기로부터 제공되는 상기 쉬프트 신호들 중 하나와, 상기 제 2 신호 생성기로부터 제공되는 상기 쉬프트 신호들 중 하나를 조합하여 상기 제 1 내지 제 N 패턴 데이터 중 하나로 출력하는 반도체 장치.
In Article 11,
The above pattern combiner is,
A semiconductor device that combines one of the shift signals provided from the first signal generator and one of the shift signals provided from the second signal generator to output one of the first to Nth pattern data.
상기 수신 회로는,
트레이닝 모드 신호에 따라, 상기 데이터 스트로브 패드로 입력되는 상기 펄스를 버퍼링하여 내부 스트로브 신호를 출력하는 입력 버퍼; 및
상기 내부 스트로브 신호의 주파수를 소정 수로 분주하고, 분주된 신호의 라이징 에지와 폴링 에지에 각각 활성화되는 상기 라이징 신호 및 상기 폴링 신호를 생성하는 분주기
를 포함하는 반도체 장치.
In paragraph 1,
The above receiving circuit,
An input buffer that buffers the pulse input to the data strobe pad according to the training mode signal and outputs an internal strobe signal; and
A divider that divides the frequency of the internal strobe signal into a predetermined number and generates the rising signal and the falling signal, which are activated at the rising edge and the falling edge of the divided signal, respectively.
A semiconductor device comprising:
상기 데이터 스트로브 패드로 입력되는 상기 펄스의 라이징 에지와 폴링 에지에 각각 활성화되는 라이징 신호 및 폴링 신호를 생성하는 단계;
상기 라이징 신호 및 상기 폴링 신호의 위상차에 대응되는 검출 코드를 제 1 내지 제 N 레지스터에 순차적으로 저장하고, 제 1 내지 제 N 저장값을 누적 합산하여 합산 신호를 생성하는 단계;
상기 합산 신호를 토대로 제 1 내지 제 N 저장값의 평균값을 산출하고, 상기 평균값과 상기 제 1 내지 제 N 저장값의 편차를 상기 제 1 내지 제 N 레지스터에 재저장하는 단계; 및
상기 제 1 내지 제 N 레지스터의 재저장값을 이용하여 상기 제 1 내지 제 N 출력 클럭의 듀티비를 보정하는 단계
를 포함하는 반도체 장치의 트레이닝 방법.
A step of sequentially outputting pulses corresponding to the first to Nth output clocks to the data strobe pad in training mode;
A step of generating a rising signal and a falling signal, which are activated respectively at the rising edge and falling edge of the pulse input to the data strobe pad;
A step of sequentially storing detection codes corresponding to the phase difference of the rising signal and the falling signal in the first to Nth registers, and generating a sum signal by accumulating and adding the first to Nth stored values;
A step of calculating an average value of the first to Nth storage values based on the above sum signal, and re-storing the deviation between the average value and the first to Nth storage values in the first to Nth registers; and
A step of correcting the duty ratio of the first to Nth output clocks using the restored values of the first to Nth registers.
A training method for a semiconductor device including a .
상기 제 1 내지 제 N 출력 클럭에 대응되는 펄스를 데이터 스트로브 패드로 순차적으로 출력하는 단계는,
상기 트레이닝 모드 시, 순차적으로 활성화되며 서로 겹치지 않는 활성화 구간을 가지는 제 1 내지 제 N 패턴 데이터를 생성하는 단계; 및
상기 제 1 내지 제 N 출력 클럭에 따라 상기 제 1 내지 제 N 패턴 데이터를 각각 래치하여 상기 데이터 스트로브 패드로 출력하는 단계
를 포함하는 반도체 장치의 트레이닝 방법.
In Article 14,
The step of sequentially outputting pulses corresponding to the first to Nth output clocks to the data strobe pad is:
In the above training mode, a step of generating first to Nth pattern data having activation sections that are sequentially activated and do not overlap each other; and
A step of latching the first to Nth pattern data according to the first to Nth output clocks and outputting them to the data strobe pad.
A training method for a semiconductor device including a .
상기 N은 4이고, 상기 제 1 출력 클럭에 대응되는 펄스는, H-L-L-L의 패턴을 가지며,
상기 제 2 출력 클럭에 대응되는 펄스는, L-H-L-L의 패턴을 가지며,
상기 제 3 출력 클럭에 대응되는 펄스는, L-L-H-L의 패턴을 가지며,
상기 제 4 출력 클럭에 대응되는 펄스는, L-L-L-H의 패턴
을 가지는 반도체 장치의 트레이닝 방법.
In Article 14,
The above N is 4, and the pulse corresponding to the first output clock has a pattern of HLLL,
The pulse corresponding to the above second output clock has a pattern of LHLL,
The pulse corresponding to the third output clock has a pattern of LLHL,
The pulse corresponding to the above fourth output clock is the pattern of LLLH
A training method for a semiconductor device having a .
트리밍 코드에 따라 상기 라이징 신호를 제 1 지연시키는 단계;
상기 검출 코드에 따라 상기 제 1 지연된 신호를 제 2 지연시켜 지연된 라이징 신호를 생성하는 단계;
상기 지연된 라이징 신호 및 상기 폴링 신호의 위상차를 비교하여 비교 신호를 출력하는 단계; 및
상기 폴링 신호에 따라 소정 주기로 활성화되는 시드 신호를 생성하고, 상기 시드 신호에 따라, 상기 비교 신호에 대응되는 상기 트리밍 코드 및 상기 검출 코드를 생성하는 단계
를 더 포함하는 반도체 장치의 트레이닝 방법.
In Article 14,
A step of first delaying the rising signal according to a trimming code;
A step of generating a delayed rising signal by delaying the first delayed signal a second time according to the detection code;
A step of comparing the phase difference between the delayed rising signal and the falling signal and outputting a comparison signal; and
A step of generating a seed signal that is activated at a predetermined cycle according to the polling signal, and generating the trimming code and the detection code corresponding to the comparison signal according to the seed signal.
A training method for a semiconductor device further comprising:
구간 신호에 따라 상기 검출 코드 또는 누적 편차 코드를 선택하고, 제 1 내지 제 N 레지스터 제어 신호에 따라 선택된 코드를 제 1 내지 제 N 레지스터에 저장하는 저장부;
상기 제 1 내지 제 N 레지스터 제어 신호 및 상기 구간 신호에 따라, 상기 제 1 내지 제 N 레지스터에 저장된 제 1 내지 제 N 저장값을 누적 합산하여 합산 신호를 출력하거나, 편차 코드를 누적 합산하여 상기 누적 편차 코드를 출력하는 누적 합산부;
상기 합산 신호를 토대로 평균값을 산출하는 평균 계산부; 및
선택 신호에 따라 상기 제 1 내지 제 N-1 저장값 중 하나를 선택하고, 상기 평균값과 상기 선택된 저장값의 차이를 상기 편차 코드로 출력하는 편차 계산부
를 포함하는 캘리브레이션 회로.
A detection unit that detects the phase difference between a rising signal and a falling signal to generate a detection code;
A storage unit which selects the detection code or the accumulated deviation code according to the interval signal and stores the selected code in the first to Nth registers according to the first to Nth register control signals;
An accumulative adding unit that cumulatively adds the first to Nth storage values stored in the first to Nth registers according to the first to Nth register control signals and the interval signal and outputs a sum signal, or cumulatively adds deviation codes and outputs the accumulated deviation code;
An average calculation unit that calculates an average value based on the above sum signal; and
A deviation calculation unit that selects one of the first to N-1 storage values according to a selection signal and outputs the difference between the average value and the selected storage value as the deviation code.
A calibration circuit including:
상기 누적 합산부는,
상기 제 1 내지 제 N 레지스터 제어 신호에 따라 상기 제 1 내지 제 N 저장값 중 하나를 선택하여 출력하는 제 1 누적 선택기;
상기 구간 신호에 따라 상기 제 1 누적 선택기의 출력과 상기 편차 코드 중 하나를 선택하여 출력하는 제 2 누적 선택기;
상기 제 2 누적 선택기의 출력과 상기 합산 신호 혹은 상기 누적 편차 코드를 합산하는 가산기; 및
누적 클럭에 따라 상기 가산기의 출력을 저장하는 플립플롭
을 포함하는 캘리브레이션 회로.
In Article 18,
The above cumulative sum is,
A first accumulator selector for selecting and outputting one of the first to Nth storage values according to the first to Nth register control signals;
A second accumulator selector that selects and outputs one of the outputs of the first accumulator selector and the deviation code according to the above-mentioned interval signal;
An adder for adding the output of the second cumulative selector and the sum signal or the cumulative deviation code; and
A flip-flop that stores the output of the adder according to the cumulative clock.
A calibration circuit including:
상기 편차 계산부는,
상기 선택 신호에 따라 상기 제 1 내지 제 3 저장값 중 하나를 선택하는 편차 선택기; 및
상기 평균값과 상기 편차 선택기의 출력의 차를 상기 편차 코드로 출력하는 감산기
를 포함하는 캘리브레이션 회로.In Article 18,
The above deviation calculation section,
A deviation selector for selecting one of the first to third storage values according to the selection signal; and
A subtractor that outputs the difference between the above average value and the output of the above deviation selector as the above deviation code.
A calibration circuit including:
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020190031885A KR102696294B1 (en) | 2019-03-20 | 2019-03-20 | Semiconductor memory device having calibration circuit and training method thereof |
| US16/670,719 US11024350B2 (en) | 2019-03-20 | 2019-10-31 | Semiconductor device including a calibration circuit capable of generating strobe signals and clock signals having accurate duty ratio and training method thereof |
| CN201911292000.2A CN111724835A (en) | 2019-03-20 | 2019-12-16 | Semiconductor device including calibration circuit and training method therefor |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020190031885A KR102696294B1 (en) | 2019-03-20 | 2019-03-20 | Semiconductor memory device having calibration circuit and training method thereof |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| KR20200112040A KR20200112040A (en) | 2020-10-05 |
| KR102696294B1 true KR102696294B1 (en) | 2024-08-20 |
Family
ID=72513717
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020190031885A Active KR102696294B1 (en) | 2019-03-20 | 2019-03-20 | Semiconductor memory device having calibration circuit and training method thereof |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US11024350B2 (en) |
| KR (1) | KR102696294B1 (en) |
| CN (1) | CN111724835A (en) |
Families Citing this family (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11783908B2 (en) | 2019-10-11 | 2023-10-10 | SK Hynix Inc. | Stacked semiconductor device and semiconductor system including the same |
| KR102768342B1 (en) | 2019-10-11 | 2025-02-18 | 에스케이하이닉스 주식회사 | Stacked memory device and memory system including the same |
| CN115565576B (en) | 2021-07-02 | 2025-07-04 | 长鑫存储技术有限公司 | A signal generation circuit, method and semiconductor memory |
| CN115565577B (en) * | 2021-07-02 | 2024-07-05 | 长鑫存储技术有限公司 | Signal generation circuit and method and semiconductor memory |
| KR102881958B1 (en) * | 2021-09-10 | 2025-11-06 | 에스케이하이닉스 주식회사 | Semiconductor device |
| KR102754773B1 (en) * | 2022-03-28 | 2025-01-21 | 주식회사 피델릭스 | Data input buffer for effectively calibrating offset |
| CN115064195A (en) * | 2022-06-30 | 2022-09-16 | 东芯半导体股份有限公司 | Memory and method of decoupling the same |
| CN116137535B (en) * | 2023-02-09 | 2023-08-29 | 上海奎芯集成电路设计有限公司 | Parallel-to-serial conversion circuit and method for generating parallel-to-serial conversion clock signal |
| CN117112030B (en) * | 2023-09-12 | 2024-03-26 | 南京微盟电子有限公司 | Register set address automatic accumulation circuit and application method |
| CN118566706B (en) * | 2024-04-29 | 2025-04-01 | 上海锐星微电子科技有限公司 | A digital chip trimming method based on improved Trim algorithm |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20170270982A1 (en) | 2016-03-16 | 2017-09-21 | SK Hynix Inc. | Semiconductor system and operating method thereof |
Family Cites Families (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003059298A (en) * | 2001-08-09 | 2003-02-28 | Mitsubishi Electric Corp | Semiconductor storage device |
| KR100670654B1 (en) * | 2005-06-30 | 2007-01-17 | 주식회사 하이닉스반도체 | Semiconductor memory device to increase domain crossing margin |
| US7698589B2 (en) | 2006-03-21 | 2010-04-13 | Mediatek Inc. | Memory controller and device with data strobe calibration |
| KR100813554B1 (en) | 2007-01-10 | 2008-03-17 | 주식회사 하이닉스반도체 | Data output strobe signal generation circuit and semiconductor memory device including the same |
| EP3399523B1 (en) * | 2007-12-21 | 2020-05-13 | Rambus Inc. | Method and apparatus for calibrating write timing in a memory system |
| JP5407551B2 (en) * | 2009-05-22 | 2014-02-05 | 富士通セミコンダクター株式会社 | Timing adjustment circuit and timing adjustment method |
| KR20160029391A (en) * | 2014-09-05 | 2016-03-15 | 에스케이하이닉스 주식회사 | Output timing control circuit of semiconductor apparatus and method of the same |
| KR20170013486A (en) * | 2015-07-27 | 2017-02-07 | 에스케이하이닉스 주식회사 | Semiconductor device and semiconductor system |
| KR102536657B1 (en) * | 2016-07-12 | 2023-05-30 | 에스케이하이닉스 주식회사 | Semiconductor device and semiconductor system |
| KR102410014B1 (en) * | 2017-08-03 | 2022-06-21 | 삼성전자주식회사 | Clock jitter measurement circuit and semiconductor device including the same |
| US10727824B2 (en) | 2018-02-01 | 2020-07-28 | SK Hynix Inc. | Strobe generation circuit and semiconductor device including the same |
| KR20190093293A (en) | 2018-02-01 | 2019-08-09 | 에스케이하이닉스 주식회사 | Serializer and semiconductor system including the same |
| KR102520259B1 (en) * | 2018-03-09 | 2023-04-11 | 에스케이하이닉스 주식회사 | Semiconductor system |
| JP7066556B2 (en) * | 2018-07-11 | 2022-05-13 | キオクシア株式会社 | Memory system |
-
2019
- 2019-03-20 KR KR1020190031885A patent/KR102696294B1/en active Active
- 2019-10-31 US US16/670,719 patent/US11024350B2/en active Active
- 2019-12-16 CN CN201911292000.2A patent/CN111724835A/en not_active Withdrawn
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20170270982A1 (en) | 2016-03-16 | 2017-09-21 | SK Hynix Inc. | Semiconductor system and operating method thereof |
Also Published As
| Publication number | Publication date |
|---|---|
| KR20200112040A (en) | 2020-10-05 |
| US11024350B2 (en) | 2021-06-01 |
| US20200302979A1 (en) | 2020-09-24 |
| CN111724835A (en) | 2020-09-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR102696294B1 (en) | Semiconductor memory device having calibration circuit and training method thereof | |
| US10862460B2 (en) | Duty cycle controller | |
| US7368966B2 (en) | Clock generator and clock duty cycle correction method | |
| US7719334B2 (en) | Apparatus and method for multi-phase clock generation | |
| KR100937949B1 (en) | Delay locked loop circuit | |
| US20140125387A1 (en) | Semiconductor device including a delay locked loop circuit | |
| US20190363724A1 (en) | Dll circuit having variable clock divider | |
| US20170288656A1 (en) | Device for correcting multi-phase clock signal | |
| US10305497B2 (en) | Semiconductor integrated circuit, DLL circuit, and duty cycle correction circuit | |
| US20110204942A1 (en) | Clock control circuit and semiconductor device including the same | |
| US20040000934A1 (en) | Clock divider and method for dividing clock signal in DLL circuit | |
| US7825710B2 (en) | Delay-locked loop circuits and method for generating transmission core clock signals | |
| US7486125B2 (en) | Delay cells and delay line circuits having the same | |
| US7940096B2 (en) | Register controlled delay locked loop circuit | |
| US8729940B2 (en) | Delay locked loop circuit and semiconductor device having the same | |
| KR100525096B1 (en) | DLL circuit | |
| US7884661B2 (en) | Clock generator circuit, method of clock generating, and data output circuit using the clock generating circuit and method | |
| US7952413B2 (en) | Clock generating circuit and clock generating method thereof | |
| US7057428B2 (en) | Circuit for generating phase comparison signal | |
| US7656207B2 (en) | Delay locked loop circuit having coarse lock time adaptive to frequency band and semiconductor memory device having the delay locked loop circuit | |
| CN105261382A (en) | Output circuit | |
| KR100873625B1 (en) | Multi Phase Clock Generation Circuit | |
| US8970268B2 (en) | Semiconductor apparatus | |
| US9647650B2 (en) | Clock generating device | |
| US20150002203A1 (en) | Integrated circuit |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20190320 |
|
| PG1501 | Laying open of application | ||
| A201 | Request for examination | ||
| PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20220126 Comment text: Request for Examination of Application Patent event code: PA02011R01I Patent event date: 20190320 Comment text: Patent Application |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20230926 Patent event code: PE09021S01D |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20240731 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20240813 Patent event code: PR07011E01D |
|
| PR1002 | Payment of registration fee |
Payment date: 20240814 End annual number: 3 Start annual number: 1 |
|
| PG1601 | Publication of registration |