KR100521049B1 - 더블 데이터 레이트 싱크로너스 디램의 쓰기 회로 - Google Patents

더블 데이터 레이트 싱크로너스 디램의 쓰기 회로 Download PDF

Info

Publication number
KR100521049B1
KR100521049B1 KR10-2003-0100162A KR20030100162A KR100521049B1 KR 100521049 B1 KR100521049 B1 KR 100521049B1 KR 20030100162 A KR20030100162 A KR 20030100162A KR 100521049 B1 KR100521049 B1 KR 100521049B1
Authority
KR
South Korea
Prior art keywords
signal
input
output
write
data
Prior art date
Application number
KR10-2003-0100162A
Other languages
English (en)
Other versions
KR20050070525A (ko
Inventor
조용덕
Original Assignee
주식회사 하이닉스반도체
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 하이닉스반도체 filed Critical 주식회사 하이닉스반도체
Priority to KR10-2003-0100162A priority Critical patent/KR100521049B1/ko
Priority to US10/880,381 priority patent/US7042799B2/en
Priority to TW093119299A priority patent/TWI264725B/zh
Publication of KR20050070525A publication Critical patent/KR20050070525A/ko
Application granted granted Critical
Publication of KR100521049B1 publication Critical patent/KR100521049B1/ko

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1093Input synchronization
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1072Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers for memories with random access ports synchronised on clock signal pulse trains, e.g. synchronous memories, self timed memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1096Write circuits, e.g. I/O line write drivers

Abstract

본 발명은 DDR SDRAM(Double Data Rate Synchronous DRAM)의 쓰기 회로에 관한 것으로, DDR SDRAM의 쓰기 동작시 클럭 도메인 크로싱(clock domain crossing)이 쓰기 드라이버에서 발생되도록 하고, 내부 데이터 스트로브 신호의 폴링을 일정 시간 지연시킨 것을 입력 데이터 스트로브 바 신호(dinstb_e 및 dinstb_o)로 사용함으로써 gio 버스 라인에 항상 올바른 데이터가 전송되도록 한다. 또한, 스큐 검출 회로를 사용하여 클럭과 데이터 스트로브와의 스큐(tDQSS)를 검출하고, 스큐 보상 회로에서 자동적으로 스큐(tDQSS)를 보상함으로써 클럭과 데이터 스트로브와의 타이밍 오류 관점에서 볼 때 종래 방식에 비해 최대 2배정도의 마진(0.5tCK)을 확보함으로써 보다 안정적으로 쓰기 동작이 가능하게 되었으며 향후 고속 DDR SDRAM의 구현에 크게 기여할 수 있는 DDR SDRAM의 쓰기 회로가 제시된다.

Description

더블 데이터 레이트 싱크로너스 디램의 쓰기 회로{Write circuit of the Double Data Rate Synchronous DRAM}
본 발명은 더블 데이터 레이트 싱크로너스 디램(Double Data Rate Synchronous DRAM; DDR SDRAM)의 쓰기 회로에 관한 것으로, 특히 데이터 쓰기 동작시 클럭 도메인 크로싱(clock domain crossing)이 쓰기 드라이버에서 발생되도록 하고, 내부 데이터 스트로브 신호의 폴링을 일정 시간 지연시킨 것을 입력 데이터 스트로브 바 신호로 사용함으로써 gio 버스 라인에 항상 올바른 데이터가 전송되도록 하는 동시에 클럭과 데이터 스트로브 신호와의 스큐를 감지하여 보상해 줌으로써 메모리 소자의 고속동작을 실현할 수 있게 하는 DDR SDRAM의 쓰기 회로에 관한 것이다.
최근, DDR SDRAM의 동작 속도가 비약적으로 발전함에 따라 외부 소자와의 인터페이스가 점점 더 중요하게 되었다. 예를 들면, 데이터 읽기(Read) 동작의 경우 클럭과 관련된 파라미터 tAC(DQ output access time from CK, /CK), tDQSCK(DQS output access time from CK, /CK) 뿐만 아니라 출력의 슬루율(slew rate), 지터(jitter), 데이터 아이(data eye), 듀티(duty)와 같은 신호 보전(signal integrity) 특성이 좋아야 실장에서 고속으로 동작할 수 있다. tAC나 tDQSCK와 같은 파라미터는 DDR SDRAM 내부에 클럭과 데이터 출력의 스큐(skew)를 보상해 주는 DLL(Delay Locked Loop) 회로가 있으므로 파라미터 값의 조정이 비교적 쉽다.
한편 데이터 쓰기(write) 동작의 경우 데이터 스트로브 자체의 파라미터 tWPRE(write preamble), tWPST(write postamble)등 뿐만 아니라 클럭과 데이터 스트로브와의 스큐를 나타내는 파라미터인 tDQSS(write command to first DQS rising edge) 또한 중요한 파라미터이다. 그런데 데이터 쓰기 동작에서 실장 응용시 PCB (Printed Circuit Board)상에서 클럭과 데이터 스트로브 신호 라인(signal line)의 길이가 정확히 일치하지 않고, 입력 캐패시턴스(input capacitance) 값도 다르므로 항상 스큐를 가지게 된다.
따라서, 실장(외부) tDQSS 값이 허용 범위인 tDQSS_Min(=0.75tCK)과 tDQSS_Max(=1.25tCK)를 벗어나거나 허용 범위를 만족한다고 할지라도 칩 내부에서 생성된 내부 데이터 스트로브(ids)가 내부 클럭(iclk)과 만나는 클럭 도메인 크로싱 영역(clock domain crossing area)에서 공정(Process), 전압(Voltage), 온도(Temperature)등의 변화로 인해 타이밍 마진(timing margin)이 부족하게 되면 쓰기 동작시 오동작을 유발하게 된다.
상기와 같은 문제점을 자세히 설명하기 위해 종래의 쓰기 동작과 관련된 블록도를 도 1에 나타내었으며, 이와 관련된 타이밍도를 도 2, 도 3 및 도 4에 나타내었다.
도 1은 종래의 DDR SDRAM의 쓰기 동작과 관련된 블럭도로서, 그 구성 및 동작을 설명하면 다음과 같다.
데이터 입력 버퍼(101)는 입력 데이터(DIN)를 입력하고, n-비트 데이터(n-bit data)를 출력하며, n-비트 데이터(n-bit data)는 제 1 및 제 2 n-비트 데이터 레지스터(108 및 109)에 입력된다.
데이터 스트로브 발생기(104)는 데이터 스트로브 버퍼(102)를 통해 입력된 데이터 스트로브(DS)를 이용하여 데이터 스트로브 라이징 신호(dsr)와 데이터 스트로브 폴링 신호(dsf)를 출력한다. 데이터 스트로브 라이징 신호(dsr)와 데이터 스트로브 폴링 신호(dsf)는 각각 제 1 및 제 2 n-비트 데이터 레지스터(108 및 109)에 입력되는데, 클럭의 라이징(rising)에서 입력되는 데이터의 경우 데이터 스트로브 라이징 신호(dsr)가 제 1 n-비트 데이터 레지스터(108)에 입력되고, 클럭의 폴링(falling)에서 입력되는 데이터의 경우 데이터 스트로브 폴링 신호(dsf)가 제 2 n-비트 데이터 레지스터(109)에 입력된다.
제 1 n-비트 데이터 레지스터(108)는 n-비트 데이터(n-bit data)와 데이터 스트로브 라이징 신호(dsr)를 입력하고, 제 2 n-비트 데이터 레지스터(109)는 n-비트 데이터(n-bit data)와 데이터 스트로브 폴링 신호(dsf)를 입력한다. 그리고, 제 3 n-비트 데이터 레지스터(110)는 제 1 n-비트 데이터 레지스터(108)에 저장된 데이터와 데이터 스트로브 폴링 신호(dsf)를 입력한다. 이에 의해 클럭의 라이징 데이터나 폴링 데이터 모두 데이터 스트로브의 폴링 에지에 정렬되게 된다. 이때, 제 1 및 제 2 n-비트 데이터 레지스터(108 및 109)에 입력되는 데이터는 내부 데이터 스토로브인 데이터 스트로브 라이징 신호(dsr)와 데이터 스트로브 폴링 신호(dsf)에 대해 각각 셋업 시간(setup time)과 홀드 시간(hold time)을 만족하기만 하면 된다.
데이터 스트로브 폴링 신호(dsf)에 정렬된 두 종류의 n-bit 데이터(algn_rdata 및 algn_fdata)는 제 1 및 제 2 지연 수단(111 및 112)을 통해 멀티플렉서(113)에 입력되고, 멀티플렉서(113)는 이들 신호를 이용하여 n-bit 데이터(mux_rdata, mux_fdata)를 출력한다. 멀티플렉서(113)의 출력 데이터(mux_rdata, mux_fdata)는 2n-비트 데이터 레지스터(114)에 입력된다.
한편, 클럭 발생기(105)는 클럭 입력 버퍼(103)를 통해 입력된 클럭(CLK) 및 그 반전 신호(/CLK)를 입력하여 내부 클럭(iCLK)를 생성한다. 클럭 발생기(105)로부터 생성된 내부 클럭(iCLK)은 입력 데이터 스트로브 발생기(106)와 쓰기 스트로브 발생기(107)에 입력된다. 입력 데이터 스트로브 발생기(106)는 내부 클럭(iCLK)과 스타트 어드레스 플래그(flag_SA)를 입력하여 데이터 입력 스트로브 이븐 신호(dinstb_e)와 데이터 입력 스트로브 오드 신호(dinstb_o)를 출력하고, 이들 신호는 2n-비트 데이터 레지스터(114)에 입력된다. 여기서, 스타트 어드레스 플래그(flag_SA)는 쓰기 동작시 스타트 어드레스가 이븐(even) 또는 오드(odd)인지를 판별하여 각각 로우 또는 하이 상태의 값을 가지며, 이븐 어드레스(even address)일 경우 데이터 입력 스트로브 이븐 신호(dinstb_e)를 발생시키고, 오드 어드레스(odd address)의 경우 데이터 입력 스트로브 오드 신호(dinstb_o)를 발생시킨다. 또한, 내부 클럭(iCLK)를 입력한 쓰기 스트로브 발생기(107)는 쓰기 스트로브 신호(wtstb)를 출력하고, 이 신호는 제 1 및 제 2 쓰기 드라이버(117 및 118)에 입력된다.
2n-비트 데이터 레지스터(114)는 멀티플렉서(113)의 출력 데이터(mux_rdata 및 mux_fdata)를 입력 데이터 스트로브 발생기(106)로부터 입력된 데이터 입력 스트로브 이븐 신호(dinstb_e) 및 데이터 입력 스트로브 오드 신호(dinstb_o)에 따라 클럭 도메인(clock domain)을 변환시키고, 이븐 데이터(gio_edata)와 오드 데이터(gio_odata)로 분류시켜 출력한다. 2n-비트 데이터 레지스터(114)로부터 출력된 이븐 데이터(gio_edata)와 오드 데이터(gio_odata)는 제 1 및 제 2 gio 버스라인(115 및 116)를 통해 제 1 및 제 2 쓰기 드라이버(117 및 108)에 입력된다. 그런데, 멀티플렉서(113)의 출력 데이터(mux_rdata 및 mux_fdata)와 데이터 스트로브 발생기(106)의 출력 신호(dinstb_e 및 dinstb_o) 간의 타이밍이 맞지 않으면 제 1 및 제 2 gio 버스 라인(115 및 116)을 통해 올바른 데이터가 전송될 수 없게 된다. 결국 상기 타이밍은 내부 데이터 스트로브 폴링 신호(dsf)와 입력 데이터 스트로브 신호(dinstb_e 및 dinstb_o)와의 상호간 스큐(skew)에 의해 결정된다. 이들 스큐는 데이터 스트로브 신호(DS)의 tDQSS_Min과 tDQSS_Max 값를 동시에 고려한 후 제 1 및 제 2 지연 수단(111 및 112)의 딜레이와 입력 데이터 스트로브 발생기(106) 내부의 클럭 딜레이 조정으로 타이밍 마진이 양쪽 모두 최대가 되도록 최적화해야 한다. 그러나 현실적으로 모든 공정, 전압 및 온도 변화에 대해 스큐를 최적화하기는 힘든 일이다. 특히 그래픽 메모리와 같이 고속으로 동작하는 소자의 경우 tDQSS_Min/tDQSS_Max 값 자체가 매우 작으므로 더욱더 엄격하게 스큐를 제어할 필요가 있다.
최종적으로 제 1 및 제 2 쓰기 드라이버(117 및 118)는 제 1 및 제 2 gio 버스 라인(115 및 116)를 통해 입력된 n-비트 데이터(gio_edata, gio_odata)를 DRAM 코어(Core)(119)에 저장하며, 이때 내부 클럭(iCLK)을 가지고 쓰기 스트로 발생기(107)에 의해 생성된 쓰기 스트로브 신호(wtstb)에 동기되어 로컬 입출력(lio) 버스 라인에 데이터를 실어준다. 이때 데이터 쓰기 스트로브 신호(wtstb)의 타이밍은 입력 데이터 스트로브 신호(dinstb_e 및 dinstb_o)에 대해 제 1 및 제 2 gio 버스 라인(117 및 118)의 딜레이와 제 1 및 제 2 쓰기 드라이버(117 및 118)의 셋업 시간 및 홀드 시간을 고려하기만 하면 된다.
도 2 및 도 3은 도 1의 구성에 대해 각각 tDQSS_Min과 tDQSS_Max일 때의 타이밍도를 나타낸 것이다.
먼저 도 2의 경우 T0에서 쓰기 명령(Write command)이 입력되며, 버스트 렝스(Burst Length; BL)가 4, tDQSS가 0.75tCK, 스타트 어드레스(SA)가 이븐(even) 일 때 각 신호의 파형을 나타낸다. T1에서 클럭(CLK)의 라이징 에지에 비해 데이터 스트로브(DS)의 라이징 에지가 0.25tCK만큼 먼저 입력된다. 따라서, T2에서 내부 클럭(iCLK)보다 소량의 딜레이 후에 발생한 입력 데이터 스트로브 이븐 신호(dinstb_e)는 멀티플렉서의 출력 데이터(mux_rdata 및 mux_fdata)에 대해 프리마진(pre_margin)보다 포스트마진(post_margin)쪽이 더 취약하게 된다.
도 3의 경우 T0에서 쓰기 명령(Write command)이 입력되며, 버스트 렝스(Burst Length; BL)가 4, tDQSS가 1.25tCK, 스타트 어드레스(SA)가 오드(odd)일 때 각 신호의 파형을 나타낸다. T1에서 클럭(CLK)의 라이징 에지에 비해 데이터 스트로브(DS)의 라이징 에지가 0.25tCK만큼 나중에 입력된다. 따라서, T2에서 내부 클럭(iCLK)보다 소량의 딜레이 후에 발생한 입력 데이터 스트로브 오드 신호(dinstb_o)는 멀티플렉서의 출력 데이터(mux_rdata 및 mux_fdata)에 대해 포스트마진(post_margin)보다 프리마진(pre_margin)쪽이 더 취약하게 된다.
상기 두가지 예를 종합적으로 고려한 것이 도 4의 타이밍도이다. 도 4는 일반적으로 tDQSS와 tDQSS의 값이 클럭(CLK)에 비해 빠른 경우나 느린 경우를 동시에 고려하여 것으로서, 멀티플렉서의 출력 데이터 mux_rdata/mux_fdata@tDQSS(fast)와 mux_rdata/mux_fdata@tDQSS(slow)의 두 경우에 대해 입력 데이터 스트로브 신호(dinstb_e 및 dinstb_o)가 가장 최대의 타이밍 마진을 얻기 위한 조건과 더불어 쓰기 성공(Write Pass) 조건 및 쓰기 실패(Write Fail) 조건을 동시에 보여주고 있다.
도 4에서 볼 수 있는 바와 같이 td =|tskew_dinstb - tskew_dsf - td_mux|라고 정의하고 도 1에서 설명된 제 1 및 제 2 지연 수단(111 및 112)의 데이터 딜레이 시간을 0이라고 가정한다면, 입력 데이터 스트로브 신호(dinstb_e 및 dinstb_o)가 멀티플렉서의 출력 데이터에 대해 프리마진(pre_margin)과 포스트마진(post_margin) 두가지 관점에서 최대의 타이밍 마진을 얻기 위해서는 td=0가 되어야 한다. 즉, tskew_dinstb = tskew_dsf + td_mux의 관계식을 만족해야 한다. 그러나, 실제적으로 공정, 전압 및 온도의 변화로 인하여 td=0을 만족시키는 것은 거의 불가능하며 td가 성공 영역(Pass Region)안에 존재하면 된다. 이 경우 조건식은 td < tvalid_data/2를 만족하면 되는데, tDQSS_Min=0.75tCK와 tDQSS_Max=1.25tCK의 허용 범위에서는 tvalid_data = tCK - (tDQSS_Max - tDQSS_Min) = 0.5tCK이므로 td < 0.25tCK 조건식을 만족하면 된다.
만일 tCK=3ns(주파수=666㎒)로 동작하는 그래픽 메모리의 경우 모든 공정, 전압 및 온도 조건에 대해 최대 허용 스큐 td는 0.75ns를 넘으면 안된다. 실제 약간의 마진을 고려한다면 이보다 작은 값을 가져야 되며 멀티플렉서의 출력 데이터에 대한 입력 데이터 스트로브 신호(dinstb_e 및 dinstb_o)의 스큐 td는 동작 주파수가 높을수록 매우 작은 범위내에서 제어가 되어야 하는 어려운 점이 존재한다.
본 발명의 목적은 DDR SDRAM의 쓰기 동작시 클럭과 데이터 스트로브 신호의 스큐를 검출하고 이를 보상하여 매우 높은 주파수에서도 안정적으로 데이터 쓰기 동작을 실시할 수 있는 DDR SDRAM의 쓰기 회로를 제공하는데 있다.
본 발명의 다른 목적은 DDR SDRAM의 쓰기 동작시 클럭 도메인 크로싱(clock domain crssing)이 쓰기 드라이버에서 발생되도록 하고, 내부 데이터 스트로브 신호의 폴링을 일정 시간 지연시킨 것을 입력 데이터 스트로브 바 신호로 사용함으로써 gio 버스 라인에 항상 올바른 데이터가 전송되도록 할 수 있는 DDR SDRAM의 쓰기 회로를 제공하는데 있다.
본 발명에서는 종래의 문제점을 해결하기 위해 클럭 도메인 크로싱(clock domain crssing)이 일어나는 곳을 쓰기 드라이버로 옮기고 입력 데이터 스트로브 폴링 신호(dsf)를 일정 시간 지연시킨 것을 입력 데이터 스트로브 신호(dinstb_e 및 dinstb_o)로 사용함으로써 gio 버스 라인에 항상 올바른 데이터가 실리게 하였다. 또한, 스큐 검출기(skew detector)를 사용하여 클럭과 데이터 스트로브와의 스큐(tDQSS)를 감지하고 직접 동기형 미러 딜레이(Direct Synchronous Mirror Delay) 방식의 지연 고정 루프(Delay Locked Loop; DLL)를 이용한 스큐 보상 회로에서 자동적으로 스큐(tDQSS)를 보상해줌으로써 클럭과 데이터 스트로브와의 타이밍 마진을 크게 개선하였다.
본 발명에 따른 DDR SDRAM의 쓰기 회로는 데이터 스트로브 라이징 신호 및 폴링 신호에 따라 라이징 및 폴링 데이터를 출력하기 위한 멀티플렉서와, 스타트 어드레스 플래그에 따라 상기 데이터 스트로브 폴링 신호를 이용하여 데이터 입력 스트로브 이븐 신호와 데이터 입력 스트로브 오드 신호를 출력하기 위한 입력 데이터 스트로브 발생기와, 내부 클럭에 대한 내부 데이터 스트로브 신호의 스큐를 검출하여 스큐 검출 신호를 출력하기 위한 스큐 검출기와, 상기 스큐 검출 신호에 따라 상기 내부 클럭을 제어하여 상기 스큐가 보상된 프리 쓰기 스트로브 신호를 출력하기 위한 스큐 보상 회로와, 상기 프리 쓰기 스트로브 신호에 따라 쓰기 스트로브 신호를 출력하기 위한 쓰기 스트로브 발생기와, 상기 데이터 입력 스트로브 이븐 신호 및 상기 데이터 입력 스트로브 오드 신호에 따라 상기 멀티플렉서로부터 출력되는 데이터를 이븐 데이터와 오드 데이터로 분류하여 제 1 및 제 2 gio 버스 라인을 통해 출력하기 위한 데이터 레지스터와, 상기 쓰기 스트로브 신호에 동기시켜 제 1 및 제 2 로컬 입출력 버스 라인을 통해 DRAM 코어에 입력시키기 위한 제 1 및 제 2 쓰기 드라이버로 이루어진다.
상기 스타트 어드레스 플래그는 쓰기 동작시 스타트 어드레스가 이븐 또는 오드인지에 따라 서로 다른 상태의 값을 갖는다.
상기 입력 데이터 스트로브 발생기는 상기 스타트 어드레스 플래그가 이븐 어드레스일 경우 상기 데이터 입력 스트로브 이븐 신호를 발생시키고, 상기 스타트 어드레스 플래그가 오드 어드레스일 경우 상기 데이터 입력 스트로브 오드 신호를 발생시킨다.
상기 스큐 검출기는 액티브 명령 및 쓰기 명령이 입력된 후 상기 내부 클럭에 대한 상기 내부 스트로브 신호의 지연에 따른 상기 스큐를 검출하기 위한 검출부와, 상기 액티브 명령이 입력된 후 상기 쓰기 명령이 최초로 입력되었을 경우에만 상기 스큐를 검출하도록 상기 검출부를 제어하기 위한 제어부로 구성된다.
상기 검출부는 상기 제어부의 제어 신호에 따라 상기 내부 클럭과 소정 시간 지연된 상기 내부 클럭을 입력하여 상기 내부 클럭의 라이징에서 클럭 라이징 신호를 출력하기 위한 제 1 NAND 게이트와, 상기 제어부의 상기 제어 신호에 따라 상기 내부 데이터 스트로브 신호와 소정 시간 지연된 상기 내부 데이터 스트로브 신호를 입력하여 상기 내부 데이터 스트로브 신호의 라이징에서 데이터 스트로브 라이징 신호를 출력하기 위한 제 2 NAND 게이트와, 상기 제어부의 상기 제어 신호에 따라 상기 클럭 라이징 신호와 상기 데이터 스트로브 라이징 신호를 래치하여 상기 스큐 검출 신호를 출력하기 위한 래치로 구성된다.
상기 제어부는 쓰기 명령에 따라 상기 쓰기 신호를 발생시키기 위한 제 1 신호 발생 수단과, 액티브 신호 및 프리차지 신호에 따라 액티브 신호를 발생시키기 위한 제 2 신호 발생 수단과, 상기 내부 클럭과 소정 시간 지연된 상기 내부 클럭을 입력하여 상기 내부 클럭의 폴링 에지에서 클럭 폴링 신호를 출력하기 위한 제 1 NOR 게이트와, 상기 내부 데이터 스트로브 신호와 소정 시간 지연된 상기 내부 데이터 스트로브 신호를 입력하여 상기 내부 데이터 스트로브의 폴링 에지에서 데이터 스트로브 폴링 신호를 출력하기 위한 제 2 NOR 게이트와, 상기 클럭 폴링 신호, 상기 쓰기 신호 및 상기 액티브 신호에 따라 상기 쓰기 명령을 상기 내부 클럭의 폴링에 동기시킨 쓰기 신호를 출력하기 위한 제 1 NAND 게이트와, 상기 데이터 스트로브 폴링 신호, 마스크 신호 및 상기 액티브 신호에 따라 스큐 검출이 종료되었을 경우 상기 데이터 스트로브 신호의 폴링에 동기시켜 데이터 스트로브 폴링 바 신호를 출력하기 위한 제 2 NAND 게이트와, 상기 쓰기 신호 및 상기 데이터 스트로브 폴링 바 신호를 래치하여 상기 쓰기 명령이 입력된 클럭의 폴링부터 첫번째 데이터 스트로브의 폴링까지 인에이블되는 쓰기 데이터 스트로브 폴링 신호를 출력하기 위한 래치와, 상기 쓰기 데이터 스트로브 폴링 신호 및 마스크 신호에 따라 제어 신를 발생시키기 위한 제 3 NAND 게이트와, 상기 윈도우 신호 및 상기 데이터 스트로브 라이징 신호에 따라 상기 스큐 검출이 종료되었을 경우 또는 상기 내부 데이터 스트로브 신호가 상기 내부 클럭보다 위상이 앞서는 경우 리셋 신호를 발생시키기 위한 제 3 NOR 게이트와, 상기 리셋 신호에 따라 상기 마스크 신호를 생성하기 위한 제 3 신호 발생 수단으로 구성된 DDR SDRAM의 쓰기 회로.
상기 제 1 신호 발생 수단은 상기 쓰기 명령 및 액티브 신호의 반전 신호에 따라 전원 전압을 인가하기 위한 스위칭 수단과, 상기 스위칭 수단에 의해 인가된 전원 전압을 래치하기 위한 래치로 구성된다.
상기 스위칭 수단은 상기 쓰기 신호에 따라 출력 노드에 전원 전압을 인가하기 위한 PMOS 트랜지스터와, 상기 액티브 신호에 따라 상기 출력 노드의 전위를 접지 전원 레벨로 조정하기 위한 NMOS 트랜지스터로 구성된다.
제 2 신호 발생 수단은 파워업 신호에 따라 액티브 신호와 프리차지 신호를 래치하기 위한 래치이다.
상기 제 3 신호 발생 수단은 상기 리셋 신호 및 상기 액티브 신호의 반전 신호에 따라 전원 전압을 인가하기 위한 스위칭 수단과, 상기 스위칭 수단에 의해 인가된 전원 전압을 래치하여 상기 마스크 신호를 출력하기 위한 래치로 구성된다.
상기 스위칭 수단은 상기 리셋 신호에 따라 출력 노드에 전원 전압을 인가하기 위한 PMOS 트랜지스터와, 상기 액티브 신호에 따라 상기 출력 노드의 전위를 접지 전원 레벨로 조정하기 위한 NMOS 트랜지스터로 구성된다.
상기 스큐 보상 회로는 상기 스큐 검출 신호를 입력하기 위한 제 1 입력 버퍼와, 상기 액티브 신호를 입력하여 리셋 신호를 생성하기 위한 제 2 입력 버퍼와, 상기 내부 클럭을 버스트 쓰기 동작동안 입력하기 위한 입력 드라이버와, 상기 스큐 검출 신호의 펄스 폭을 측정하기 위해 순방향으로 지연시키기 위한 순방향 지연 어레이부와, 상기 리셋 신호에 따라 초기화되고, 상기 순방향 지연 어레이부의 상기 지연단의 출력에 따라 래치되는 데이터가 조절되는 래치부와, 상기 순방향 지연 어레이부에 상기 스큐 검출 신호가 입력되면 초기값과 반대의 로직값으로 되어 상기 스큐 검출 신호의 폭에 해당하는 써모미터 디지털 코드를 생성하기 위한 코드 변환부와, 상기 입력 드라이버의 출력 신호 및 상기 코드 변환부의 출력 신호를 입력하기 위한 클럭 게이트부와, 상기 순방향 지연 어레이부에서 측정된 상기 스큐 검출 신호의 펄스 폭만큼 반대 방향으로 지연시키기 위한 역방향 지연 어레이부와, 상기 역방향 지연 어레이부의 출력 신호를 프리 쓰기 스트로브 신호로서 출력하기 위한 출력 버퍼로 구성된다.
상기 순방향 지연 어레이부는 다수의 지연단으로 구성되며, 상기 다수의 지연단 각각은 상기 제 1 입력 버퍼를 통해 입력된 상기 스큐 검출 신호와 이전 지연단의 출력 신호를 입력하는 제 1 NAND 게이트와, 상기 제 1 NAND 게이트의 출력 신호와 전원 전압을 입력하는 제 2 NAND 게이트로 구성된다.
상기 래치부는 다수의 래치단으로 구성되며, 상기 래치단 각각은 두개의 인버터로 구성되어 상기 순방향 지연 어레이부의 상기 지연단의 출력 신호를 래치하고, 출력 신호가 상기 역방향 지연 어레이부의 상기 지연단으로 입력되는 래치와, 상기 순방향 지연 어레이부의 상기 지연단 각각의 출력 신호에 따라 상기 래치의 전위를 조절하기 위한 제 1 NMOS 트랜지스터와, 상기 리셋 신호에 따라 상기 래치를 초기화시키기 위한 제 2 NMOS 트랜지스터로 구성된다.
상기 코드 변환부는 다수의 NOR 게이트로 구성되며, 상기 각각의 NOR 게이트는 상기 NOR 게이트에 대응되는 상기 래치부의 상기 래치단의 입력 전위와 다음단의 래치단의 출력 전위를 입력하여 논리 조합한다.
상기 입력 드라이버는 상기 내부 클럭과 상기 쓰기 버스트 플래그를 입력하기 위한 NAND 게이트와, 상기 NAND 게이트의 출력 신호를 반전시키기 위한 인버터로 구성된다.
상기 클럭 게이트부는 다수의 NAND 게이트로 구성되며, 상기 각각의 NAND 게이트는 상기 입력 드라이버의 출력 신호와 상기 코드 변환부의 상기 NOR 게이트의 출력 신호를 입력한다.
상기 역방향 지연 어레이부는 상기 순방향 지연 어레이부와 반대 방향으로 지연되도록 다수의 지연단으로 구성되어 이전의 지연단의 출력 신호와 상기 래치부의 상기 래치단의 출력 신호를 조합하는 제 1 NAND 게이트와, 상기 제 1 NAND 게이트의 출력 신호와 상기 클럭 게이트부의 상기 NAND 게이트의 출력 신호를 입력하는 제 2 NAND 게이트로 구성된다.
이하, 첨부된 도면을 참조하여 본 발명을 상세히 설명하기로 한다.
도 5는 본 발명에 따른 DDR SDRAM의 쓰기 동작과 관련된 블럭도로서, 도 1에서 설명된 종래의 구성과 비교하면 다음과 같은 차이가 있다. 먼저, 입력 데이터 스트로브 신호(dinstb_e 및 dinstb_o)가 내부 클럭(iCLK)에 의해 생성되는 것이 아니라 내부 데이터 스트로브(ids)에 의해 생성되기 때문에 2n-비트 데이터 레지스터에서 이종의 클럭 도메인 크로싱이 발생되지 않는다. 그리고, 실제적인 클럭 도메인 크로싱은 쓰기 드라이버에서 발생된다. 또한, 쓰기 스트로브(wtstb)는 스큐 감지기(skew detector)와 스큐 보상 회로(skew compensation circuit)를 이용하여 tDQSS 스큐가 제거된 프리 쓰기 스트로브(pre_wtstb)를 일정 시간 딜레이시켜 발생시킨다. 이때, 스큐 보상 회로로 사용된 직접 동기형 미러 딜레이(Direct Synchronous Mirror Delay) 방식의 지연 고정 루프(Delay Locked Loop; DLL)는 클럭(CLK)과 데이터 스트로브(DS)와의 빠른 고정(fast locking)을 위해 새롭게 고안하였다.
도 5를 이용하여 본 발명에 따른 DDR SDRAM의 쓰기 동작과 관련된 블럭도의 구성 및 구동 방법을 설명하면 다음과 같다.
데이터 입력 버퍼(201)는 입력 데이터(DIN)를 입력하여 n-비트 데이터(n-bit data)를 출력하고, n-비트 데이터(n-bit data)는 제 1 및 제 2 n-비트 데이터 레지스터(208 및 209)에 입력된다.
데이터 스트로브 발생기(204)는 데이터 스트로브 버퍼(202)를 통해 데이터 스트로브(DS)를 입력하여 데이터 스트로브 라이징 신호(dsr), 데이터 스트로브 폴링 신호(dsf) 및 내부 데이터 스트로브 신호(ids)를 출력한다. 데이터 스트로브 라이징 신호(dsr)는 제 1 n-비트 데이터 레지스터(208)에 입력되고, 데이터 스트로브 폴링 신호(dsf)는 제 2 n-비트 데이터 레지스터(209) 및 입력 데이터 스트로브 발생기(206)에 입력되며, 내부 데이터 스트로브 신호(ids)는 스큐 검출기(220)에 입력된다. 여기서, 클럭의 라이징(rising)에서 입력되는 데이터의 경우 데이터 스트로브 라이징 신호(dsr)가 제 1 n-비트 데이터 레지스터(208)에 입력되고, 클럭의 폴링(falling)에서 입력되는 데이터의 경우 데이터 스트로브 폴링 신호(dsf)가 제 2 n-비트 데이터 레지스터(209) 및 입력 데이터 스트로브 발생기(206)에 입력된다.
제 1 n-비트 데이터 레지스터(208)는 n-비트 데이터(n-bit data)와 데이터 스트로브 라이징 신호(dsr)를 입력하고, 제 2 n-비트 데이터 레지스터(209)는 n-비트 데이터(n-bit data)와 데이터 스트로브 폴링 신호(dsf)를 입력한다. 그리고, 제 3 n-비트 데이터 레지스터(210)는 제 1 n-비트 데이터 레지스터(208)에 저장된 데이터와 데이터 스트로브 폴링 신호(dsf)를 입력한다. 이에 의해 클럭의 라이징 데이터나 폴링 데이터 모두 데이터 스트로브의 폴링 에지에 정렬되게 된다. 이때, 제 1 및 제 2 n-비트 데이터 레지스터(208 및 209)에 입력되는 데이터는 내부 데이터 스토로브인 데이터 스트로브 라이징 신호(dsr)와 데이터 스트로브 폴링 신호(dsf)에 대해 각각 셋업 시간(setup time)과 홀드 시간(hold time)을 만족하기만 하면 된다.
데이터 스트로브 폴링 신호(dsf)에 정렬된 두 종류의 n-bit 데이터(algn_rdata 및 algn_fdata)는 멀티플렉서(213)에 입력되고, 멀티플렉서(213)는 이들 신호를 이용하여 n-bit 데이터(mux_rdata, mux_fdata)를 출력한다. 멀티플렉서(213)의 출력 데이터(mux_rdata 및 mux_fdata)는 2n-비트 데이터 레지스터(214)에 입력된다.
한편, 입력 데이터 스트로브 발생기(206)는 스타트 어드레스 플래그(flag_SA)와 데이터 스트로브 폴링 신호(dsf)를 입력하여 데이터 입력 스트로브 이븐 신호(dinstb_e)와 데이터 입력 스트로브 오드 신호(dinstb_o)를 출력하고, 이들 신호는 2n-비트 데이터 레지스터(214)에 입력된다. 여기서, 스타트 어드레스 플래그(flag_SA)는 쓰기 동작시 스타트 어드레스가 이븐(even) 또는 오드(odd)인지를 판별하여 각각 로우 또는 하이 상태의 값을 가지며, 이븐 어드레스(even address)일 경우 데이터 입력 스트로브 이븐 신호(dinstb_e)를 발생시키고, 오드 어드레스(odd address)의 경우 데이터 입력 스트로브 오드 신호(dinstb_o)를 발생시킨다.
그리고, 클럭 발생기(205)는 클럭 입력 버퍼(203)를 통해 입력된 클럭(CLK) 및 그 반전 신호(/CLK)를 입력하여 내부 클럭(iCLK)를 생성한다. 클럭 발생기(205)로부터 생성된 내부 클럭(iCLK)은 스큐 검출기(220)와 스큐 보상 회로(221)에 입력된다. 스큐 검출기(220)는 데이터 스트로브 발생기(204)로부터 입력 데이터 스트로브 신호(ids)와 클럭 발생기(205)로부터 내부 클럭(iCLK)를 입력하여 클럭대비 데이터 스트로브의 스큐에 해당하는 파라미터인 tDQSS를 검출하여 (tDQSS-tCK)에 해당하는 펄스 폭을 출력하는 스큐 검출 신호(dtskew)를 생성한다. 그리고, 스큐 보상 회로(221)는 클럭 발생기(205)로부터 내부 클럭(iCLK)를 입력하고 스큐 검출기(220)로부터 출력 신호(dtskew)를 입력하여 tDQSS 스큐가 제거된 프리 쓰기 스트로브 신호(pre_wtstb)를 출력한다. 또한, 쓰기 스트로브 발생기(207)는 프리 쓰기 스트로브 신호(pre_wtstb)를 입력하여 쓰기 스트로브 신호(wtstb)출력하고, 이 신호는 제 1 및 제 2 쓰기 드라이버(217 및 218)에 입력된다.
2n-비트 데이터 레지스터(214)는 멀티플렉서(213)의 출력 데이터(mux_rdata 및 mux_fdata)를 입력 데이터 스트로브 발생기(106)로부터 입력된 데이터 입력 스트로브 신호(dinstb_o) 및 데이터 입력 스트로브 오드 신호(dinstb_o)에 따라 이븐 데이터(gio_edata)와 오드 데이터(gio_odata)로 분류하여 출력한다. 2n-비트 데이터 레지스터(214)로부터 출력된 이븐 데이터(gio_edata)와 오드 데이터(gio_odata)는 제 1 및 제 2 gio 버스 라인(215 및 216)를 통해 제 1 및 제 2 쓰기 드라이버(217 및 208)에 입력된다.
최종적으로 제 1 및 제 2 쓰기 드라이버(217 및 218)는 제 1 및 제 2 gio 버스 라인(215 및 216)를 통해 입력된 n-비트 데이터(gio_edata 및 gio_odata)를 DRAM 코어(Core)(219)에 저장하며, 이때 내부 클럭(iCLK)을 가지고 쓰기 스트로 발생기(207)에 의해 생성된 쓰기 스트로브 신호(wtstb)에 동기되어 로컬 입출력 버스 라인에 데이터를 실어준다. 이때 데이터 쓰기 스트로브 신호(wtstb)의 타이밍은 입력 데이터 스트로브 신호(dinstb_e 및 dinstb_o)에 대해 제 1 및 제 2 gio 버스 라인(217 및 218)의 딜레이와 제 1 및 제 2 쓰기 드라이버(217 및 218)의 셋업 시간 및 홀드 시간을 고려하기만 하면 된다.
상기와 같이 구성되는 본 발명에 따른 DDR SDRAM의 쓰기 동작은 gio 버스 라인(215 및 216)를 이용하여 타이밍 에러없이 항상 올바른 데이터를 전송하기 위해 2n-비트 데이터 레지스터(214)에서 내부 클럭(iCLK)으로 동기시키지 않고 내부 데이터 스트로브 신호(ids) 자체로 동기시키면 이종의 클럭 사용으로 인한 타이밍 마진을 고려하지 않아도 되며, 쓰기 드라이버(217 및 218)에 발생되는 이종 클럭간의 도메인 크로싱은 스큐 보상 회로(221)에서 미리 tDQSS를 보상해 줌으로써 이종 클럭간에 타이밍 마진이나 스큐를 고려하지 않아도 된다.
도 6 및 도 7은 본 발명에 따른 DDR SDRAM의 쓰기 동작에 관련된 동작 타이밍도로서, 각각 tDQSS_Min과 tDQSS_Max일 때의 타이밍도를 나타낸다.
도 6은 T0에서 쓰기 명령(Write command)이 입력되며 버스트 렝스(BL)가 4, tDQSS가 0.75tCK, 스타트 어드레스(SA)가 이븐(even)일 때 각 신호의 동작 파형을 나타낸다. T1, T2에서 내부 데이터 스트로브 폴링 신호(dsf)에 동기되어 멀티플렉서(213)의 출력 데이터(mux_rdata 및 mux_fdata)가 정렬되고, 입력 데이터 스트로브 이븐 신호(dinstb_e)가 데이터 스트로브 폴링 신호(dsf)를 일정 시간(td_mux + tsetup_dinstb)만큼 딜레이시켜 만들어 진다면 프리마진(pre_margin)은 고려하지 않아도 되며 포스트마진(post_margin)은 다음 데이터 스트로브 폴링 신호(dsf)까지 이므로 역시 고려하지 않아도 된다.
도 7은 T0에서 쓰기 명령(Write command)이 입력되며 버스트 렝스(BL)가 4, tDQSS가 1.25tCK, 스타트 어드레스(SA)가 오드(odd)일 때 각 신호의 동작 파형을 나타낸다. 도 7의 경우도 도 6의 경우와 마찬가지이므로 2n-비트 데이터 레지스터(214)에서 이종 클럭간의 도메인 크로싱이 발생할 때 나타나는 타이밍 마진 문제는 발생하지 않게 된다. 다만 여기서 제 1 및 제 2 쓰기 드라이버(217 및 218)에서 발생되는 클럭 도메인 크로싱 타이밍 문제만 고려하면 된다. 이를 설명하기 위해 도 8의 타이밍도가 제시되었다.
도 8에서 쓰기 스트로브 신호(wtstb)는 T2 이후에 발생하며 쓰기 동작시 성공 조건은 다음식과 같다.
tskew_wrstb > tDQSS_Max - tCK + tskew_dsf + tsetup_dinstb + td_gio + tsetup_wrstb
tskew_wrstb < tDQSS_Min - 0.5tCK + tskew_dsf + tsetup_dinstb + td_gio + tsetup_wrstb
[수학식 1]과 [수학식 2]는 각각 tDQSS_Max와 tDQSS_Min일 때의 조건식에 해당되며 두 식을 동식에 만족시켜야만 된다. tskew_wrstb를 [수학식 3]으로 분류하여 정의하면 아래와 같다.
tskew_wrstb = tcomp + tskew_dsf + tsetup_dinstb + td_gio + tsetup_wrstb
여기서, tcomp는 스큐보상시간이다.
[수학식 3]을 [수학식 1]과 [수학식 2]에 각각 대입하여 풀면 다음과 같다.
tcomp > tDQSS_Max - tCK
tcomp < tDQSS_Min - 0.5tCK
그런데, 데이터 스트로브가 클럭에 대해 tDQSS값이 1tCK보다 작다면 스큐보상이 필요하지 않으므로 즉, tcomp=0이 되므로 [수학식 3]과 [수학식 5]는 [수학식 6]과 [수학식 7]로 정리될 수 있다.
tskew_wrstb = tskew_dsf + tsetup_dinstb + td_gio + tsetup_wrstb
0 < tDQSS_Min - 0.5tCK
결론적으로 [수학식 4]와 [수학식 7]을 만족하면 된다. 따라서, 도 5와 같은 쓰기 동작 구조에서 tDQSS_Min은 0.5tCK보다 큰 값을 가지면 되고, tDQSS_Max은 (tcomp+tCK)보다 작아야 되므로 tcomp에 의존하게 된다. tcomp를 0.5tCK까지 감당하도록 설계한다면 tDQSS 파라미터 값은 0.5tCK부터 1.5tCK가지 확장된다. 이 경우 DDR SDRAM의 쓰기 동작은 종래의 것보다 최대 2배정도 타이밍 마진을 가지게 되므로 안정적이고 고속의 쓰기 동작이 가능해 진다.
도 9는 본 발명에 따른 DDR SDRAM의 쓰기 동작에 적용되는 스큐 검출기의 회로도로서, 클럭 대비 데이터 스트로브의 스큐에 해당하는 파라미터인 tDQSS를 감지하여 (tDQSS-tCK)에 해당하는 펄스폭을 출력하는 스큐 검출 신호(dtskew)를 생성하는데, 그 구성을 설명하면 다음과 같다.
다수의 인버터로 구성된 제 1 지연 수단(301)은 내부 클럭(iclk)을 지연시키고, 다수의 인버터로 구성된 제 2 지연 수단(302)는 내부 데이터 스트로브 신호(ids)를 지연시킨다.
제 1 NAND 게이트(303)는 윈도우 신호(dtwindow), 내부 클럭(iclk) 및 제 1 지연 수단(301)를 통해 지연된 내부 클럭(iclk)을 입력하여 클럭 라이징 바 신호(clkrpz)를 출력한다. 제 2 NAND 게이트(304)는 윈도우 신호(dtwindow), 내부 데이터 스트로브 신호(ids) 및 제 2 지연 수단(302)를 통해 지연된 내부 데이터 스트로브 신호(ids)를 입력하여 데이터 스트로브 라이징 바 신호(dsrpz)를 출력한다.
제 1 래치(307)는 제 3 NAND 게이트(305)와 제 4 NAND 게이트(306)로 구성되어 클럭 라이징 바 신호(clkrpz)와 데이터 스트로브 라이징 바 신호(dsrpz)를 입력하여 래치하는데, 제 3 NAND 게이트(305)는 클럭 라이징 바 신호(clkrpz)와 제 4 NAND 게이트(306)의 출력 신호를 입력하고, 제 4 NAND 게이트(306)는 윈도우 신호(dtwindow), 데이터 스트로브 라이징 바 신호(dsrpz) 및 제 3 NAND 게이트(307)의 출력 신호를 입력한다. 제 1 래치(307)에 래치된 데이터는 출력 드라이버(308)을 통해 스큐 검출 신호(dtskew)로서 출력된다.
제 1 NOR 게이트(309)는 내부 데이터 스트로브 신호(ids)와 제 2 지연 수단(302)을 통해 지연된 내부 데이터 스트로브 신호(ids)를 입력하여 데이터 스트로브 폴링 신호(dsfp)를 출력한다. 그리고, 제 2 NOR 게이트(310)는 내부 클럭(iclk)과 제 1 지연 수단(301)을 통해 지연된 내부 클럭(iclk)를 입력하여 클럭 폴링 신호(clkfp)를 출력한다.
제 1 PMOS 트랜지스터(P301)는 전원 단자(VDD)와 제 1 노드(Q301) 사이에 접속되어 쓰기 바 신호(writez)에 따라 구동되며, 제 1 NMOS 트랜지스터(N301)는 제 1 노드(Q301)와 접지 단자(VSS) 사이에 접속되어 제 4 인버터(I304)의 출력 신호인 라스 액티브 바 신호(rasatvz)에 따라 구동된다. 제 1 및 제 2 인버터(I301 및 I302)로 구성된 제 2 래치(311)는 제 1 노드(Q301)의 전위를 래치한다. 제 3 인버터(I303)는 제 2 래치(311)의 출력을 반전시켜 제 2 노드(Q302)의 전위를 결정한다.
제 3 래치(314)는 제 5 NAND 게이트(312)와 제 6 NAND 게이트(313)로 구성되어 액티브 바 신호(activez)와 프리차지 바 신호(pcgz)를 입력하여 래치하는데, 제 5 NAND 게이트(312)는 액티브 바 신호(activez)와 제 6 NAND 게이트(313)의 출력 신호를 입력하고, 제 6 NAND 게이트(313)는 프리차지 바 신호(pcgz)와 제 5 NAND 게이트(312)의 출력 신호 및 파워업 신호(pwrup)를 입력한다. 제 4 인버터(I304)는 제 2 래치(314)의 출력 신호를 반전시켜 라스 액티브 바 신호(rasatvz)를 출력하고, 제 5 인버터(I305)는 라스 액티브 바 신호(rasatvz)를 반전시켜 라스 액티브 신호(rasatv)를 출력한다.
제 7 NAND 게이트(315)는 라스 액티브 신호(rasatv), 클럭 폴링 신호(clkfp) 및 제 2 노드(Q302)의 전위를 입력하여 쓰기 바 신호(wtpz)를 출력한다. 제 8 NAND 게이트(316)는 라스 액티브 신호(rasatv), 데이터 스트로브 폴링 신호(dsfp) 및 제 9 인버터(I309)의 출력에 따라 결정되는 제 3 노드(Q303)의 전위를 입력하여 데이터 스트로브 바 신호(dsfpz)를 출력한다.
제 4 래치(319)는 제 9 NAND 게이트(317)와 제 10 NAND 게이트(318)로 구성되어 쓰기 바 신호(wtpz)와 데이터 스트로브 폴링 바 신호(dsfpz)를 래치하여 쓰기 데이터 스트로브 신호(wtdsf)를 출력하는데, 제 9 NAND 게이트(317)는 쓰기 바 신호(wtpz)와 제 10 NAND 게이트(318)의 출력 신호를 입력하고, 제 10 NAND 게이트(318)는 데이터 스트로브 폴링 바 신호(dsfpz)와 제 9 NAND 게이트(317)의 출력 신호 및 라스 액티브 신호(rasatv)를 입력한다.
제 11 NAND 게이트(320)는 쓰기 데이터 스트로브 신호(wtdsf)와 제 5 래치(322)의 출력 신호인 마스크 신호(dtmask)를 입력한다. 제 3 NOR 게이트(321)는 제 11 NAND 게이트(320)의 출력 신호와 제 2 NAND 게이트(304)의 출력 신호인 데이터 스트로브 라이징 바 신호(dsrpz)를 입력하여 리셋 바 신호(resetpz)를 생성한다. 제 6 인버터(I306)는 제 11 NAND 게이트(320)의 출력 신호를 반전시켜 윈도우 신호(dtwindow)를 출력한다.
전원 단자(VDD)와 제 4 노드(Q304) 사이에 접속된 제 2 PMOS 트랜지스터(P302)는 리셋 바 신호(resetpz)에 따라 구동되며, 제 4 노드(Q304)와 접지 단자(VSS) 사이에 접속된 제 2 NMOS 트랜지스터(N302)는 라스 액티브 바 신호(rasatvz)에 따라 구동된다.
제 7 인버터(I307)와 제 8 인버터(I308)로 구성된 제 5 래치(322)는 제 4 노드(Q304)의 전위를 래치하고, 마스크 신호(dtmask)를 출력한다. 제 9 인버터(I309)는 마스크 신호(dtmask)를 반전시켜 제 3 노드(Q303)의 전위를 결정한다.
상기와 같이 구성되는 본 발명에 따른 스큐 검출기의 구동 방법을 도 10의 동작 타이밍도를 이용하여 설명하는데, 클럭(clk)보다 데이터 스트로브 신호(ds)가 늦게 입력되는 경우에 발생하는 스큐를 검출하는 방법을 설명하기로 한다. 또한, 도 10에 도시된 바와 같이 클럭(clk)이 인가되면서 내부 클럭(iclk)이 생성되고 뱅크 액티브 명령(ACTIVE)이 입력된 후 쓰기 명령(WRITE)이 입력되며, 데이터 스트로브 신호(ds)가 인가되면서 내부 데이터 스트로브 신호(ids)가 입력되는데, 이러한 시간 순서로 스큐 검출기의 구동 방법을 설명하기로 한다.
A) 액티브 명령(ACTIVE) 인가
내부 클럭(iclk)과 제 1 지연 수단(301)에 의해 지연된 내부 클럭(iclk)은 제 1 NAND 게이트(303)에 의해 논리 조합되어 클럭 라이징 바 신호(clkrpz)가 출력되는데, 클럭 라이징 바 신호(clkrpz)는 윈도우 신호(dtwindow)가 하이 상태일 때 로우 상태로 되며, 그 이외의 경우에는 하이 상태를 유지한다. 마찬가지로, 내부 데이터 스트로브(ids)와 제 2 지연 수단(302)에 의해 지연된 내부 데이터 스트로브 신호(ids)는 제 2 NAND 게이트(304)에 의해 논리 조합되어 데이터 스트로브 라이징 바 신호(dsrpz)가 출력되는데, 데이터 스트로브 라이징 바 신호(dsrpz)는 윈도우 신호(dtwindow)가 하이 상태일 때 로우 상태로 되며, 그 이외의 경우에는 하이 상태를 유지한다. 하이 상태를 유지하는 클럭 라이징 바 신호(clkrpz)와 하이 상태를 유지하는 데이터 스트로브 라이징 바 신호(dsrpz)는 로우 상태의 윈도우 신호(dtwindow)와 함께 제 1 래치(307)에 래치되고 로우 상태의 신호를 출력한다. 로우 상태로 출력된 제 1 래치(307)의 출력 신호는 출력 드라이버(308)를 통해 로우 상태의 스큐 검출 신호(dtskew)로서 출력된다.
그리고, 제 1 NOR 게이트(309)는 내부 데이터 스트로브 신호(ids)와 제 2 지연 수단(302)를 통해 지연된 내부 데이터 스트로브 신호(ids)를 입력하여 논리 조합하는데, 제 1 NOR 게이트(309)는 쓰기 명령(WRITE)이 입력되고 내부 데이터 스트로브 신호(ids)가 하이 상태에서 로우 상태로 천이하는 경우에만 제 2 지연 수단(302)의 지연 시간동안 하이 상태의 데이터 스트로브 폴링 신호(dsfp)를 출력하고, 그 이외의 동안에는 로우 상태의 데이터 스트로브 폴링 신호(dsfp)를 출력한다. 마찬가지로, 제 2 NOR 게이트(310)는 내부 클럭(iclk)과 제 1 지연 수단(301)을 통해 지연된 내부 클럭(iclk)를 입력하여 논리 조합하는데, 제 2 NOR 게이트(310)는 쓰기 명령(WRITE)이 입력되고 내부 클럭(iclk)이 하이 상태에서 로우 상태로 천이하는 경우에만 제 1 지연 수단(301)의 지연 시간동안 하이 상태의 클럭 폴링 신호(clkfp)를 출력하고, 그 이외의 동안에는 로우 상태의 클럭 폴링 신호(clkfp)를 출력한다.
한편, 뱅크 액티브 명령(ACTIVE)이 활성화되면 프리차지 바 신호(pcgz)는 하이 상태로 인가되고 액티브 바 신호(activez)는 로우 상태로 인가된다. 따라서, 제 3 래치(314)는 액티브 바 신호(activez)를 래치하여 하이 상태의 신호를 출력하게 되고, 제 4 인버터(I304)는 제 3 래치(314)의 출력 신호를 반전시켜 로우 상태의 라스 액티브 바 신호(rasatvz)를 출력한다. 로우 상태의 라스 액티브 바 신호(rasatvz)는 제 1 및 제 2 NMOS 트랜지스터(N301 및 N302)를 턴오프시킨다. 또한, 제 5 인버터(I305)는 로우 상태의 라스 액티브 바 신호(rasatvz)를 반전시켜 하이 상태의 라스 액티브 신호(rasatv)를 출력한다. 하이 상태의 라스 액티브 신호(rasatv)에 의해 제 7 및 제 8 NAND 게이트(315 및 316), 그리고 제 4 래치(319)가 인에이블된다.
B) 쓰기 명령(WRITE) 입력
쓰기 명령(WRITE)이 입력되면 쓰기 바 신호(wrtiez)가 로우 상태로 입력되어 제 1 PMOS 트랜지스터(P301)를 턴온시킨다. 이때, 제 1 NMOS 트랜지스터(N301)는 로우 상태의 라스 액티브 바 신호(rasatvz)에 의해 턴오프된 상태를 유지한다. 따라서, 제 2 래치(311)는 하이 상태의 제 1 노드(Q301)의 전위를 래치하고, 로우 상태의 신호를 출력한다. 로우 상태의 제 2 래치(311)의 출력 신호는 제 3 인버터(I303)에 의해 반전되어 제 2 노드(Q302)는 하이 상태를 유지하게 된다. 즉, 쓰기 명령이 입력되면 제 2 노드(Q302)는 하이 상태를 유지하게 된다.
한편, 하이 상태의 제 2 노드(Q302)의 전위, 로우 상태의 클럭 폴링 신호(clkfp) 및 하이 상태의 라스 액티브 신호(rasatv)는 제 7 NAND 게이트(315)에 입력되고, 제 7 NAND 게이트(315)는 하이 상태의 쓰기 바 신호(wtpz)를 출력한다. 그리고, 로우 상태의 제 3 노드(Q303)의 전위, 로우 상태의 데이터 스트로브 폴링 신호(dsfp) 및 하이 상태의 라스 액티브 신호(rasatv)는 제 8 NAND 게이트(316)에 입력되고, 제 8 NAND 게이트(316)는 하이 상태의 데이터 스트로브 폴링 바 신호(dsfpz)를 출력한다. 하이 상태의 쓰기 바 신호(wtpz) 및 하이 상태의 데이터 스트로브 폴링 바 신호(dsfpz)는 제 4 래치(317)에 래치되고, 제 4 래치(317)는 로우 상태의 쓰기 데이터 스트로브 폴링 신호(wtdsf)를 출력한다. 로우 상태의 쓰기 데이터 스트로브 폴링 신호(wtdsf)는 하이 상태의 제 5 래치(322)의 출력 신호인 마스크 신호(dtmask)와 제 11 NAND 게이트(320)에 입력되고, 제 11 NAND 게이트(320)는 하이 상태의 신호를 출력한다. 하이 상태의 제 11 NAND 게이트(320)의 출력 신호는 제 6 인버터(I306)를 통해 로우 상태의 윈도우 신호(dtwindow)로 반전되어 제 1 및 제 2 NAND 게이트(303 및 304), 그리고 제 1 래치(307)의 제 4 NAND 게이트(306)으로 입력된다. 따라서, 제 1 NAND 게이트(303)는 하이 상태의 클럭 라이징 바 신호(clkrpz)를 출력하고, 제 2 NAND 게이트(304)는 하이 상태의 데이터 스트로브 라이징 바 신호(dsrpz)를 출력한다. 이는 제 1 래치(307)에 래치되어 로우 상태의 신호가 출력된다. 로우 상태로 출력된 신호는 제 3 지연 수단(308)에 의해 지연되어 로우 상태의 스큐 검출 신호(dtskew)로 출력된다.
그리고, 하이 상태의 제 11 NAND 게이트(320)의 출력 신호는 제 3 NOR 게이트(321) 및 제 10 인버터(I310)에 의해 하이 상태의 리셋 바 신호(resetpz)가 되고, 하이 상태의 리셋 바 신호(resetpz)에 의해 제 2 PMOS 트랜지스터(P302)는 턴오프된다. 따라서, 제 5 래치(322)는 이전 데이터를 래치하며, 하이 상태의 마스크 신호(dtmask)를 출력한다. 하이 상태의 마스크 신호(dtmask)는 제 9 인버터(I309)에 의해 로우 상태로 반전되어 제 8 NAND 게이트(316)으로 입력된다.
c) 내부 클럭의 라이징 및 내부 스트로브 신호의 폴링
이제, 내부 클럭보다 내부 데이터 스트로브 신호가 지연되어 입력될 경우 내부 클럭의 라이징에서 내부 스트로브 신호는 폴링되는데, 이때의 동작을 살펴보기로 한다.
쓰기 명령(WRITE)이 입력된 후 내부 클럭(iclk)의 폴링에서 클럭 폴링 신호(clkfp)는 하이 상태로 반전하고, 내부 데이터 스트로브 신호(ids)가 내부 클럭(iclk)보다 지연되어 입력되기 때문에 데이터 스트로브 폴링 신호(dsfp)는 로우 상태를 유지하게 된다. 따라서, 제 1 NAND 게이트(315)는 하이 상태의 제 2 노드(Q302)의 전위, 하이 상태의 클럭 폴링 신호(clkfp) 및 하이 상태의 라스 액티브 신호(rasatv)를 입력하여 로우 상태의 쓰기 바 신호(wtpz)를 출력한다. 그리고, 제 8 NAND 게이트(316)는 로우 상태의 제 3 노드(Q303)의 전위, 로우 상태의 데이터 스트로브 폴링 신호(dsfp) 및 하이 상태의 라스 액티브 신호(rasatv)를 입력하여 하이 상태의 데이터 스트로브 폴링 바 신호(dsfpz)를 출력한다. 로우 상태의 쓰기 바 신호(wtpz) 및 하이 상태의 데이터 스트로브 폴링 바 신호(dsfpz)는 제 4 래치(317)에 래치되고, 제 4 래치(317)는 하이 상태의 쓰기 데이터 스트로브 폴링 신호(wtdsf)를 출력한다. 하이 상태의 쓰기 데이터 스트로브 폴링 신호(wtdsf)는 하이 상태의 제 5 래치(322)의 출력 신호(dtmask)와 제 11 NAND 게이트(320)에 입력되고, 제 11 NAND 게이트(320)는 로우 상태의 신호를 출력한다. 로우 상태의 제 11 NAND 게이트(320)의 출력 신호는 제 6 인버터(I306)를 통해 하이 상태의 윈도우 신호(dtwindow)로 반전되어 제 1 및 제 2 NAND 게이트(303 및 304), 그리고 제 1 래치(307)의 제 4 NAND 게이트(306)로 입력된다. 따라서, 제 1 NAND 게이트(303)는 로우 상태의 클럭 라이징 바 신호(clkrpz)를 출력하고, 이는 제 1 래치(307)에 래치되어 하이 상태의 신호가 출력된다. 이때, 내부 데이터 스트로브 신호(ids)는 내부 클럭(iclk)에 비해 지연되어 입력되므로 데이터 스트로브 라이징 바 신호(dsrpz)는 하이 상태로 유지된다. 하이 상태로 출력된 제 1 래치(307)의 출력 신호는 출력 드라이버(308)에 의해 하이 상태의 스큐 검출 신호(dtskew)로 출력된다.
그리고, 로우 상태의 제 11 NAND 게이트(320)의 출력 신호는 하이 상태의 데이터 스트로브 라이징 바 신호(dsrpz)와 함께 제 3 NOR 게이트(321)에 입력되고, 제 3 NOR 게이트(321)는 로우 상태의 리셋 바 신호(resetpz)를 출력한다. 로우 상태의 리셋 바 신호(resetpz)에 의해 제 2 PMOS 트랜지스터(P302)는 턴온된다. 이때, 제 2 NMOS 트랜지스터(N302)는 로우 상태의 라스 액티브 바 신호(rasatvb)에 의해 턴오프 상태이기 때문에 제 4 노드(Q304)는 하이 상태로 된다. 따라서, 제 5 래치(322)는 제 4 노드(Q304)의 전위를 래치하며, 로우 상태의 마스크 신호(dtmask)를 출력한다. 로우 상태의 마스크 신호(dtmask)는 제 9 인버터(I309)에 의해 하이 상태로 반전되어 제 8 NAND 게이트(316)으로 입력된다.
d) 내부 클럭의 라이징 및 내부 데이터 스트로브의 폴링
쓰기 명령(WRITE)이 입력된 후 내부 클럭(iclk)의 라이징에서 클럭 폴링 신호(clkfp)는 로우 상태로 되고, 내부 데이터 스트로브 신호(ids)의 폴링에서 데이터 스트로브 폴링 신호(dsfp)는 하이 상태로 된다. 따라서, 제 7 NAND 게이트(315)는 하이 상태의 제 2 노드(Q302)의 전위, 로우 상태의 클럭 폴링 신호(clkfp) 및 하이 상태의 라스 액티브 신호(rasatv)를 입력하여 하이 상태의 쓰기 바 신호(wtpz)를 출력한다. 그리고, 제 8 NAND 게이트(316)는 하이 상태의 제 3 노드(Q303)의 전위, 하이 상태의 데이터 스트로브 폴링 신호(dsfp) 및 하이 상태의 라스 액티브 신호(rasatv)를 입력하여 로우 상태의 데이터 스트로브 폴링 바 신호(dsfpz)를 출력한다. 하이 상태의 쓰기 바 신호(wtpz) 및 로우 상태의 데이터 스트로브 폴링 바 신호(dsfpz)는 제 4 래치(317)에 래치되고, 제 4 래치(317)는 로우 상태의 쓰기 데이터 스트로브 폴링 신호(wtdsf)를 출력한다. 로우 상태의 쓰기 데이터 스트로브 폴링 신호(wtdsf)는 로우 상태의 마스크 신호(dtmask)와 제 11 NAND 게이트(320)에 입력되고, 제 11 NAND 게이트(320)는 하이 상태의 신호를 출력한다. 하이 상태의 제 11 NAND 게이트(320)의 출력 신호는 제 6 인버터(I306)를 통해 로우 상태의 윈도우 신호(dtwindow)로 반전되어 제 1 및 제 2 NAND 게이트(303 및 304), 그리고 제 1 래치(307)의 제 4 NAND 게이트(306)로 입력된다. 따라서, 내부 클럭(iclk)의 폴링에서 클럭 라이징 바 신호(clkrpz)는 하이 상태가 되고, 이와 시간 지연되어 입력되는 내부 데이터 스트로브 신호(ids)의 라이징에서 데이터 스트로브 라이징 바 신호(dsrpz)는 로우 상태로 되어 제 1 래치(307)에 래치되고, 제 1 래치(307)는 로우 상태의 신호를 출력한다. 로우 상태로 출력된 신호는 출력 드라이버(308)에 의해 로우 상태의 스큐 검출 신호(dtskew)로 출력된다.
그리고, 하이 상태의 제 11 NAND 게이트(320)의 출력 신호는 하이 상태의 데이터 스트로브 라이징 바 신호(dsrpz)와 함께 제 3 NOR 게이트(321)에 입력되고, 제 3 NOR 게이트(321)는 로우 상태의 신호를 리셋 바 신호(resetpz)를 출력한다. 하이 상태의 리셋 바 신호(resetpz)에 의해 제 2 PMOS 트랜지스터(P302)는 턴온되고 제 4 노드(Q304)는 하이 상태로 된다. 하이 상태의 제 4 노드(Q304)의 전위는 제 5 래치(322)에 래치되고, 제 5 래치(322)는 로우 상태의 마스크 신호(dtmask)를 출력한다. 로우 상태의 마스크 신호(dtmask)는 제 9 인버터(I309)에 의해 하이 상태로 반전되어 제 8 NAND 게이트(316)으로 입력된다.
상기한 바와 같이 본 발명에 따른 스큐 검출 회로는 뱅크 액티브 명령(ACTIVE) 및 쓰기 명령(WRITE)이 입력된 후 내부 클럭(iclk)보다 지연되어 내부 데이터 스트로브 신호(ids)가 입력될 경우 이를 검출하여 스큐 검출 신호(dtskew)를 출력한다. 즉, tDQSS가 tCK보다 큰 경우에 스큐 검출 신호(dtskew)를 생성하고 그렇치 않은 경우는 항상 로우 상태의 신호를 출력한다.
한편, 쓰기 데이터 스트로브 신호(wtdsf)는 쓰기 명령이 입력된 후 내부 클럭(iclk)의 폴링에서 내부 데이터 스트로브 신호(ids)의 첫번째 폴링까지 하이 상태를 유지한다. 그리고, 윈도우 신호(dtwindow)는 쓰기 데이터 스트로브 신호(wtdsf)의 윈도우 폭과 스큐 검출이 종료되었음을 알려주는 마스크 신호(dtmask)의 조합으로 생성되기 때문에 스큐 검출 신호(dtskew)는 쓰기 명령이 반복해서 들어올지라도 뱅크가 액티브된 후 쓰기 명령이 최초로 입력되었을 때만 단 한번 발생한다. 따라서 전체 스큐 검출 회로는 뱅크가 액티브된 후 첫번째 쓰기 명령에서만 동작하며 연속적으로 버스트(Burst) 쓰기 동작이 일어나더라도 이를 무시해 버린다. 이것은 스큐 검출 회로의 오동작을 방지하고 전류 소비를 줄이기 위함이다. 스큐 검출 신호(dtskew)는 쓰기 명령이 입력된 다음 내부 클럭의 라이징에서 하이 상태가 된 후 첫번째 데이터 스트로브 신호의 라이징에서 로우 상태로 천이함으로써 클럭과 데이터 스트로브 신호간의 스큐를 검출한다.
도 11은 본 발명에 따른 스큐 보상 회로도로서, 그 구성을 설명하면 다음과 같다.
제 1 입력 버퍼(401)는 다수의 인버터로 구성되며, 스큐 검출 회로로부터의 스큐 검출 신호(dtskew)를 입력한다. 제 2 입력 버퍼(402)는 다수의 인버터로 구성되며, 라스 액티브 신호(rasatv)를 입력한다. 제 1 인버터(403)는 제 2 입력 버퍼(402)의 출력 신호를 반전시켜 리셋 신호(reset)를 생성한다. 리셋 신호(reset)는 래치부(420)를 구성하는 각 래치(421 내지 42n)를 초기화시킨다.
순방향 지연 어레이부(410)는 다수의 지연단(411 내지 41n)으로 구성되어 스큐 검출 신호(dtskew)에 대하여 라스 액티브 신호(rasatv)의 지연 시간을 조절하며, 각 지연단(411 내지 41n)은 제 1 입력 버퍼(401)를 통해 입력된 스큐 검출 신호(dtskew)와 이전 지연단의 출력 신호를 입력하는 제 1 NAND 게이트와 제 1 NAND 게이트의 출력 신호와 전원 전압을 입력하는 제 2 NAND 게이트로 구성된다. 예를들어 두번째 지연단(412)은 제 1 입력 버퍼(401)를 통해 입력된 스큐 검출 신호(dtskew)와 첫번째 지연단(411)의 출력 신호를 입력하는 제 1 NAND 게이트와 제 1 NAND 게이트의 출력 신호와 전원 전압을 입력하는 제 2 NAND 게이트로 구성된다.
래치부(420)는 다수의 래치단(421 내지 42n)으로 구성되며, 각 래치단(421 내지 42n)은 순방향 지연 어레이부(410)의 지연단(411 내지 41n)의 출력에 따라 래치되는 데이터가 조절되며, 각 래치단(421 내지 42n)에 래치된 데이터는 역방향 지연 래치부(450)의 각 래치단(451 내지 45n)에 입력된다. 한편, 래치단(421 내지 42n) 각각은 두개의 인버터로 구성된 래치와 순방향 지연 어레이부(410)의 지연단(411 내지 41n) 각각의 출력 신호에 따라 래치의 전위를 조절하기 위한 제 1 NMOS 트랜지스터 및 리셋 신호(reset)에 따라 래치를 초기화시키기 위한 제 1 NMOS 트랜지스터로 구성된다.
코드 변환부(430)는 순방향 지연 어레이부(410)에 스큐 검출 신호(dtskew)가 입력되면 초기값과 반대의 로직값으로 되어 스큐 검출 신호(dtskew)의 폭에 해당하는 써모미터(thermometer) 디지털 코드를 생성한다. 코드 변환부(430)는 다수의 NOR 게이트(431 내지 43n)로 구성되며, 각 NOR 게이트(431 내지 43n)는 그 NOR 게이트에 대응되는 래치부(420)의 래치단(421 내지 42n)의 입력 전위와 다음단의 래치단(421 내지 42n)의 출력 전위를 입력하여 논리 조합한다. 예를들어 제 2 NOR 게이트(432)는 제 2 래치단(422)의 입력 전위와 제 3 래치단(423)의 출력 전위를 입력한다.
NAND 게이트(404)는 내부 클럭(iclk)과 쓰기 버스트 플래그(flag_wburst)를 입력하여 논리 조합하여 인버터(405)는 NAND 게이트(404)의 출력 신호를 반전시킨다. 이에 의해 내부 클럭(cilk)이 버스트 쓰기 동작동안 입력된다.
클럭 게이트부(440)는 다수의 NAND 게이트(441 내지 44n)로 구성되며, 다수의 각각의 NAND 게이트(441 내지 44n)는 인버터(405)의 출력 신호와 코드 변환부(430)의 NOR 게이트(431 내지 43n)의 출력 신호를 입력하여 논리 조합한다.
역방향 지연 어레이부(450)는 순방향 지연 어레이부(460)와 반대 방향으로 지연되도록 다수의 지연단(451 내지 45n)으로 구성되어 이전의 지연단의 출력 신호와 래치부(420)의 래치단(421 내지 42n)의 출력 신호를 조합하는 제 1 NAND 게이트와 제 1 NAND 게이트의 출력 신호와 클럭 게이트부(440)의 NAND 게이트(441 내지 44n)의 출력 신호를 입력하는 제 2 NAND 게이트로 구성된다.
출력 버퍼(406)는 역방향 지연 어레이부(450)의 출력 신호를 프리 쓰기 스트로브 바(pre_wtstb)로서 출력한다.
상기와 같이 구성되는 본 발명에 따른 스큐 보상 회로의 구동 방법을 도 12의 타이밍도를 이용하여 설명하면 다음과 같다.
먼저, 클럭(clk)에 동기되어 뱅크 액티브 명령(ACTIVE)이 입력되면, 하이 상태의 리셋 신호(reset)에 따라 래치부(420)가 초기화된다. 그리고, 쓰기 명령(WRITE)이 입력되면 내부 클럭(iclk)과 내부 데이터 스트로브 신호(ids)와의 스큐를 검출하여 스큐 검출 신호(dtskew)가 발생된다.
제 1 입력 버퍼(401)를 통해 입력된 스큐 검출 신호(dtskew)와 제 2 입력 버퍼(402)를 통해 입력된 카스 액티브 신호(casatv)는 순방향 지연 어레이부(410)에 입력된다. 순방향 지연 어레이부(410)는 각 지연단으로부터 일정 시간동안 지연되면서 출력 신호가 정합되게 된다. 즉, 순방향 지연 어레이부(410)의 각 지연단을 통해 지연되면서 스큐 검출 신호(dtskew)와 카스 액티브 신호(casatv)와 정합되게 된다. 여기서, 순방향 지연 어레이부(410)의 각 지연단의 출력 신호는 입력 신호가 정합되지 않을 경우 하이 상태로 출력되고, 입력 신호가 정합되었을 경우 로우 상태로 출력된다. 예를들어, 제 4 지연단(414)에서 입력 신호가 정합되었다면 제 1 내지 제 3 지연단(411 내지 413)의 출력 신호는 하이 상태가 되고, 제 4 내지 제 n 지연단(414)의 출력 신호는 로우 상태가 된다.
한편, 정방향 지연 어레이부(410)의 각 지연단(411 내지 41n)의 출력 신호에 의해 래치부(420)의 각 래치단(421 내지 42n)이 래치하는 데이터가 조절되는데, 제 1 내지 제 3 지연단(411 내지 413)은 하이 상태의 신호를 출력하고 제 4 내지 제 n 지연단(414 내지 41n)는 로우 상태의 신호를 출력하기 때문에 제 1 내지 제 3 래치단(421 내지 423)의 입력단은 로우 상태가 되고, 제 4 내지 제 n 래치단(421 내지 42n)의 입력단은 하이 상태가 된다. 따라서, 제 1 내지 제 3 래치단(421 내지 423)의 출력단은 하이 상태가 되고, 제 4 내지 제 n 래치단(421 내지 42n)의 출력단은 로우 상태가 된다.
그리고, 코드 변환부(430)를 구성하는 다수의 NOR 게이트(431 내지 43n) 각각은 그 NOR 게이트에 대응되는 래치부(420)의 래치단(421 내지 42n)의 입력 전위와 다음단의 래치단(421 내지 42n)의 출력 전위를 입력하여 논리 조합하는데, 제 3 NOR 게이트(433)는 로우 상태의 제 3 래치단(423)의 입력단의 전위와 로우 상태의 제 4 래치단(424)의 출력단의 전위를 입력하여 하이 상태의 신호를 출력하고, 나머지 NOR 게이트들은 로우 상태의 신호를 출력한다.
쓰기 버스트 플래그 신호(flag_wburst)는 쓰기 명령이 입력된 후 2 클럭후에 로우 상태에서 하이 상태로 천이하고, 쓰기 동작이 종료되면 하이 상태에서 로우 상태로 천이하는 신호이다. 내부 클럭(iclk)과 이러한 쓰기 버스트 플래그 신호(flag_wburst)를 입력하는 NAND 게이트(404)는 쓰기 버스트 플래스 신호(flag_wburst)가 하이 상태로 입력되면 내부 클럭(iclk)의 상태에 따라 출력이 결정되는데, 내부 클럭(iclk)이 하이 상태로 입력되면 로우 상태의 신호가 출력되고, 내부 클럭(iclk)이 로우 상태로 입력되면 하이 상태의 신호가 출력된다. 따라서, 인버터(405)는 NAND 게이트(404)의 출력 신호를 반전시켜 내부 클럭(iclk)과 같은 위상의 신호를 출력한다. 이러한 인버터(405)의 출력 신호는 클럭 게이트부(440)를 구성하는 각 NAND 게이트(441 내지 44n)에 입력되는데, 제 3 NAND 게이트(443)만이 코드 변환부(430)의 제 3 NOR 게이트(433)의 하이 상태의 출력 신호를 입력하기 때문에 인버터(405)의 출력 신호와 반대 위상의 신호를 출력한다. 즉, 제 3 NAND 게이트(443)는 인버터(405)의 출력 신호가 하이 상태이면 로우 상태의 신호를 출력하고, 인버터(405)의 출력 신호가 로우 상태이면 하이 상태의 신호를 출력한다. 이때, 나머지 NAND 게이트들은 항상 하이 상태의 신호를 출력한다.
래치부(420)의 각 래치단(421 내지 42n)의 출력 신호와 클럭 게이트부(440)의 각 NAND 게이트(441 내지 44n)의 출력 신호는 역방향 지연 어레이부(450)에 입력되는데, 이전의 지연단의 출력 신호와 래치부(420)의 래치단(421 내지 42n)의 출력 신호는 제 1 NAND 게이트에 입력되고, 제 1 NAND 게이트의 출력 신호와 클럭 게이트부(440)의 NAND 게이트(441 내지 44n)의 출력 신호는 제 2 NAND 게이트로 입력된다. 따라서, 역방향 지연 어레이부(450)는 순방향 지연 어레이부(410)에 의해 지연된 시간동안 다시 지연되어 출력된다. 역방향 지연 어레이부(450)의 출력 신호는 출력 버퍼(406)을 통해 프리 쓰기 스트로브 바 신호(pre_wtstb)로서 출력되고, 프리 쓰기 스트로브 바 신호(pre_wtstb)는 내부 데이터 스트로브 신호(ids)의 두번째 펄스의 라이징부터 록킹(locking)된다.
상술한 바와 같이 본 발명에 의하면 DDR SDRAM의 쓰기 동작시 클럭 도메인 크로싱(clock domain crssing)이 쓰기 드라이버에서 발생되도록 하고, 내부 데이터 스트로브 신호의 폴링을 일정 시간 지연시킨 것을 입력 데이터 스트로브 바 신호(dinstb_e 및 dinstb_o)로 사용함으로써 gio 버스 라인에 항상 올바른 데이터가 전송되도록 한다. 또한, 스큐 검출 회로를 사용하여 클럭과 데이터 스트로브와의 스큐(tDQSS)를 검출하고, 스큐 보상 회로에서 자동적으로 스큐(tDQSS)를 보상함으로써 클럭과 데이터 스트로브와의 타이밍 오류 관점에서 볼 때 종래 방식에 비해 최대 2배정도의 마진(0.5tCK)을 확보함으로써 보다 안정적으로 쓰기 동작이 가능하게 되었으며 향후 고속 DDR SDRAM의 구현에 크게 기여할 수 있다.
도 1은 종래의 DDR SDRAM의 쓰기 동작 관련 블럭도.
도 2 내지 도 4는 도 1의 쓰기 동작 관련 타이밍도.
도 5는 본 발명에 따른 DDR SDRAM의 쓰기 동작 관련 블럭도.
도 6 내지 도 8은 도 2의 쓰기 동작 관련 타이밍도.
도 9는 본 발명에 따른 DDR SDRAM의 쓰기 동작에 적용되는 스큐 검출기의 회로도.
도 10은 도 9의 동작 타이밍도.
도 11은 본 발명에 따른 DDR SDRAM의 쓰기 동작에 적용되는 스큐 보상 회로도.
도 12는 도 11의 동작 타이밍도.
<도면의 주요 부분에 대한 부호의 설명>
101 및 201 : 데이터 입력 버퍼
102 및 202 : 데이터 스트로브 입력 버버
103 및 203 : 클럭 입력 버퍼
104 및 204 : 데이터 스트로브 발생기
105 및 205 : 클럭 발생기
106 및 206 : 입력 데이터 스트로브 발생기
107 및 207 : 쓰기 스트로브 발생기
108 및 208 : 제 1 n-비트 데이터 레지스터
109 및 209 : 제 2 n-비트 데이터 레지스터
110 및 210 : 제 3 n-비트 데이터 레지스터
111 및 112 : 지연 수단
113 및 213 : 멀티플렉서
114 및 214 : 2n-비트 데이터 레지스터
115 및 215 : 제 1 gio 버스 라인
116 및 216 : 제 2 gio 버스 라인
117 및 217 : 제 1 쓰기 드라이버
118 및 218 : 제 2 쓰기 드라이버
219 : DRAM 코어
220 : 스큐 검출기
221 : 스큐 보상 회로

Claims (18)

  1. 데이터 스트로브 라이징 신호 및 폴링 신호에 따라 라이징 및 폴링 데이터를 출력하기 위한 멀티플렉서;
    스타트 어드레스 플래그에 따라 상기 데이터 스트로브 폴링 신호를 이용하여 데이터 입력 스트로브 이븐 신호와 데이터 입력 스트로브 오드 신호를 출력하기 위한 입력 데이터 스트로브 발생기;
    내부 클럭에 대한 내부 데이터 스트로브 신호의 스큐를 검출하여 스큐 검출 신호를 출력하기 위한 스큐 검출기;
    상기 스큐 검출 신호에 따라 상기 내부 클럭을 제어하여 상기 스큐가 보상된 프리 쓰기 스트로브 신호를 출력하기 위한 스큐 보상 회로;
    상기 프리 쓰기 스트로브 신호에 따라 쓰기 스트로브 신호를 출력하기 위한 쓰기 스트로브 발생기;
    상기 데이터 입력 스트로브 이븐 신호 및 상기 데이터 입력 스트로브 오드 신호에 따라 상기 멀티플렉서로부터 출력되는 데이터를 이븐 데이터와 오드 데이터로 분류하여 제 1 및 제 2 gio 버스 라인을 통해 출력하기 위한 데이터 레지스터;
    상기 쓰기 스트로브 신호에 동기시켜 제 1 및 제 2 로컬 입출력 버스 라인을 통해 DRAM 코어에 입력시키기 위한 제 1 및 제 2 쓰기 드라이버로 이루어진 DDR SDRAM의 쓰기 회로.
  2. 제 1 항에 있어서, 상기 스타트 어드레스 플래그는 쓰기 동작시 스타트 어드레스가 이븐 또는 오드인지에 따라 서로 다른 상태의 값을 가지는 DDR SDRAM의 쓰기 회로.
  3. 제 1 항에 있어서, 상기 입력 데이터 스트로브 발생기는 상기 스타트 어드레스 플래그가 이븐 어드레스일 경우 상기 데이터 입력 스트로브 이븐 신호를 발생시키고, 상기 스타트 어드레스 플래그가 오드 어드레스일 경우 상기 데이터 입력 스트로브 오드 신호를 발생시키는 DDR SDRAM의 쓰기 회로.
  4. 제 1 항에 있어서, 상기 스큐 검출기는 액티브 명령 및 쓰기 명령이 입력된 후 상기 내부 클럭에 대한 상기 내부 스트로브 신호의 지연에 따른 상기 스큐를 검출하기 위한 검출부; 및
    상기 액티브 명령이 입력된 후 상기 쓰기 명령이 최초로 입력되었을 경우에만 상기 스큐를 검출하도록 상기 검출부를 제어하기 위한 제어부로 구성된 DDR SDRAM의 쓰기 회로.
  5. 제 4 항에 있어서, 상기 검출부는 상기 제어부의 제어 신호에 따라 상기 내부 클럭과 소정 시간 지연된 상기 내부 클럭을 입력하여 상기 내부 클럭의 라이징에서 클럭 라이징 신호를 출력하기 위한 제 1 NAND 게이트;
    상기 제어부의 상기 제어 신호에 따라 상기 내부 데이터 스트로브 신호와 소정 시간 지연된 상기 내부 데이터 스트로브 신호를 입력하여 상기 내부 데이터 스트로브 신호의 라이징에서 데이터 스트로브 라이징 신호를 출력하기 위한 제 2 NAND 게이트; 및
    상기 제어부의 상기 제어 신호에 따라 상기 클럭 라이징 신호와 상기 데이터 스트로브 라이징 신호를 래치하여 상기 스큐 검출 신호를 출력하기 위한 래치로 구성된 DDR SDRAM의 쓰기 회로.
  6. 제 4 항에 있어서, 상기 제어부는 쓰기 명령에 따라 상기 쓰기 신호를 발생시키기 위한 제 1 신호 발생 수단;
    액티브 신호 및 프리차지 신호에 따라 액티브 신호를 발생시키기 위한 제 2 신호 발생 수단;
    상기 내부 클럭과 소정 시간 지연된 상기 내부 클럭을 입력하여 상기 내부 클럭의 폴링 에지에서 클럭 폴링 신호를 출력하기 위한 제 1 NOR 게이트;
    상기 내부 데이터 스트로브 신호와 소정 시간 지연된 상기 내부 데이터 스트로브 신호를 입력하여 상기 내부 데이터 스트로브의 폴링 에지에서 데이터 스트로브 폴링 신호를 출력하기 위한 제 2 NOR 게이트;
    상기 클럭 폴링 신호, 상기 쓰기 신호 및 상기 액티브 신호에 따라 상기 쓰기 명령을 상기 내부 클럭의 폴링에 동기시킨 쓰기 신호를 출력하기 위한 제 1 NAND 게이트;
    상기 데이터 스트로브 폴링 신호, 마스크 신호 및 상기 액티브 신호에 따라 스큐 검출이 종료되었을 경우 상기 데이터 스트로브 신호의 폴링에 동기시켜 데이터 스트로브 폴링 바 신호를 출력하기 위한 제 2 NAND 게이트;
    상기 쓰기 신호 및 상기 데이터 스트로브 폴링 바 신호를 래치하여 상기 쓰기 명령이 입력된 클럭의 폴링부터 첫번째 데이터 스트로브의 폴링까지 인에이블되는 쓰기 데이터 스트로브 폴링 신호를 출력하기 위한 래치;
    상기 쓰기 데이터 스트로브 폴링 신호 및 마스크 신호에 따라 제어 신를 발생시키기 위한 제 3 NAND 게이트;
    상기 윈도우 신호 및 상기 데이터 스트로브 라이징 신호에 따라 상기 스큐 검출이 종료되었을 경우 또는 상기 내부 데이터 스트로브 신호가 상기 내부 클럭보다 위상이 앞서는 경우 리셋 신호를 발생시키기 위한 제 3 NOR 게이트;
    상기 리셋 신호에 따라 상기 마스크 신호를 생성하기 위한 제 3 신호 발생 수단으로 구성된 DDR SDRAM의 쓰기 회로.
  7. 제 6 항에 있어서, 상기 제 1 신호 발생 수단은 상기 쓰기 명령 및 액티브 신호의 반전 신호에 따라 전원 전압을 인가하기 위한 스위칭 수단; 및
    상기 스위칭 수단에 의해 인가된 전원 전압을 래치하기 위한 래치로 구성된 DDR SDRAM의 쓰기 회로.
  8. 제 7 항에 있어서, 상기 스위칭 수단은 상기 쓰기 신호에 따라 출력 노드에 전원 전압을 인가하기 위한 PMOS 트랜지스터; 및
    상기 액티브 신호에 따라 상기 출력 노드의 전위를 접지 전원 레벨로 조정하기 위한 NMOS 트랜지스터로 구성된 DDR SDRAM의 쓰기 회로.
  9. 제 6 항에 있어서, 상기 제 2 신호 발생 수단은 파워업 신호에 따라 액티브 신호와 프리차지 신호를 래치하기 위한 래치인 DDR SDRAM의 쓰기 회로.
  10. 제 6 항에 있어서, 상기 제 3 신호 발생 수단은 상기 리셋 신호 및 상기 액티브 신호의 반전 신호에 따라 전원 전압을 인가하기 위한 스위칭 수단; 및
    상기 스위칭 수단에 의해 인가된 전원 전압을 래치하여 상기 마스크 신호를 출력하기 위한 래치로 구성된 DDR SDRAM의 쓰기 회로.
  11. 제 10 항에 있어서, 상기 스위칭 수단은 상기 리셋 신호에 따라 출력 노드에 전원 전압을 인가하기 위한 PMOS 트랜지스터; 및
    상기 액티브 신호에 따라 상기 출력 노드의 전위를 접지 전원 레벨로 조정하기 위한 NMOS 트랜지스터로 구성된 DDR SDRAM의 쓰기 회로.
  12. 제 1 항에 있어서, 상기 스큐 보상 회로는 상기 스큐 검출 신호를 입력하기 위한 제 1 입력 버퍼;
    상기 액티브 신호를 입력하여 리셋 신호를 생성하기 위한 제 2 입력 버퍼;
    상기 내부 클럭을 버스트 쓰기 동작동안 입력하기 위한 입력 드라이버;
    상기 스큐 검출 신호의 펄스 폭을 측정하기 위해 순방향으로 지연시키기 위한 순방향 지연 어레이부;
    상기 리셋 신호에 따라 초기화되고, 상기 순방향 지연 어레이부의 상기 지연단의 출력에 따라 래치되는 데이터가 조절되는 래치부;
    상기 순방향 지연 어레이부에 상기 스큐 검출 신호가 입력되면 초기값과 반대의 로직값으로 되어 상기 스큐 검출 신호의 폭에 해당하는 써모미터 디지털 코드를 생성하기 위한 코드 변환부;
    상기 입력 드라이버의 출력 신호 및 상기 코드 변환부의 출력 신호를 입력하기 위한 클럭 게이트부;
    상기 순방향 지연 어레이부에서 측정된 상기 스큐 검출 신호의 펄스 폭만큼 반대 방향으로 지연시키기 위한 역방향 지연 어레이부; 및
    상기 역방향 지연 어레이부의 출력 신호를 프리 쓰기 스트로브 신호로서 출력하기 위한 출력 버퍼로 구성된 DDR SDRAM의 쓰기 회로.
  13. 제 12 항에 있어서, 상기 순방향 지연 어레이부는 다수의 지연단으로 구성되며, 상기 다수의 지연단 각각은 상기 제 1 입력 버퍼를 통해 입력된 상기 스큐 검출 신호와 이전 지연단의 출력 신호를 입력하는 제 1 NAND 게이트; 및
    상기 제 1 NAND 게이트의 출력 신호와 전원 전압을 입력하는 제 2 NAND 게이트로 구성된 DDR SDRAM의 쓰기 회로.
  14. 제 12 항에 있어서, 상기 래치부는 다수의 래치단으로 구성되며, 상기 래치단 각각은 두개의 인버터로 구성되어 상기 순방향 지연 어레이부의 상기 지연단의 출력 신호를 래치하고, 출력 신호가 상기 역방향 지연 어레이부의 상기 지연단으로 입력되는 래치;
    상기 순방향 지연 어레이부의 상기 지연단 각각의 출력 신호에 따라 상기 래치의 전위를 조절하기 위한 제 1 NMOS 트랜지스터; 및
    상기 리셋 신호에 따라 상기 래치를 초기화시키기 위한 제 2 NMOS 트랜지스터로 구성된 DDR SDRAM의 쓰기 회로.
  15. 제 12 항에 있어서, 상기 코드 변환부는 다수의 NOR 게이트로 구성되며, 상기 각각의 NOR 게이트는 상기 NOR 게이트에 대응되는 상기 래치부의 상기 래치단의 입력 전위와 다음단의 래치단의 출력 전위를 입력하여 논리 조합하는 DDR SDRAM의 쓰기 회로.
  16. 제 12 항에 있어서, 상기 입력 드라이버는 상기 내부 클럭과 상기 쓰기 버스트 플래그를 입력하기 위한 NAND 게이트; 및
    상기 NAND 게이트의 출력 신호를 반전시키기 위한 인버터로 구성된 DDR SDRAM의 쓰기 회로.
  17. 제 12 항에 있어서, 상기 클럭 게이트부는 다수의 NAND 게이트로 구성되며, 상기 각각의 NAND 게이트는 상기 입력 드라이버의 출력 신호와 상기 코드 변환부의 상기 NOR 게이트의 출력 신호를 입력하는 DDR SDRAM의 쓰기 회로.
  18. 제 12 항에 있어서, 상기 역방향 지연 어레이부는 상기 순방향 지연 어레이부와 반대 방향으로 지연되도록 다수의 지연단으로 구성되어 이전의 지연단의 출력 신호와 상기 래치부의 상기 래치단의 출력 신호를 조합하는 제 1 NAND 게이트; 및
    상기 제 1 NAND 게이트의 출력 신호와 상기 클럭 게이트부의 상기 NAND 게이트의 출력 신호를 입력하는 제 2 NAND 게이트로 구성된 DDR SDRAM의 쓰기 회로.
KR10-2003-0100162A 2003-12-30 2003-12-30 더블 데이터 레이트 싱크로너스 디램의 쓰기 회로 KR100521049B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR10-2003-0100162A KR100521049B1 (ko) 2003-12-30 2003-12-30 더블 데이터 레이트 싱크로너스 디램의 쓰기 회로
US10/880,381 US7042799B2 (en) 2003-12-30 2004-06-29 Write circuit of double data rate synchronous DRAM
TW093119299A TWI264725B (en) 2003-12-30 2004-06-30 Write circuit of double data rate synchronous dram

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2003-0100162A KR100521049B1 (ko) 2003-12-30 2003-12-30 더블 데이터 레이트 싱크로너스 디램의 쓰기 회로

Publications (2)

Publication Number Publication Date
KR20050070525A KR20050070525A (ko) 2005-07-07
KR100521049B1 true KR100521049B1 (ko) 2005-10-11

Family

ID=34698738

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0100162A KR100521049B1 (ko) 2003-12-30 2003-12-30 더블 데이터 레이트 싱크로너스 디램의 쓰기 회로

Country Status (3)

Country Link
US (1) US7042799B2 (ko)
KR (1) KR100521049B1 (ko)
TW (1) TWI264725B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7499370B2 (en) 2006-09-06 2009-03-03 Samsung Electronics Co., Ltd. Synchronous semiconductor memory device

Families Citing this family (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7120067B2 (en) * 2005-03-14 2006-10-10 Infineon Technologies Ag Memory with data latching circuit including a selector
KR100668854B1 (ko) * 2005-06-30 2007-01-16 주식회사 하이닉스반도체 동기식 메모리 장치의 데이타 래치 제어 장치
KR100670654B1 (ko) * 2005-06-30 2007-01-17 주식회사 하이닉스반도체 도메인 크로싱 마진을 증가시키기 위한 반도체메모리소자
KR100745402B1 (ko) * 2006-02-24 2007-08-02 삼성전자주식회사 반도체 메모리 장치의 입력회로 및 그 제어 방법
KR100822578B1 (ko) * 2006-04-18 2008-04-15 주식회사 하이닉스반도체 반도체 메모리 소자의 쓰기 장치
EP2011122A2 (en) * 2006-04-24 2009-01-07 SanDisk Corporation High-performance flash memory data transfer
KR100784905B1 (ko) * 2006-05-04 2007-12-11 주식회사 하이닉스반도체 반도체 메모리의 데이터 입력 장치 및 방법
US7739538B2 (en) * 2006-06-27 2010-06-15 International Business Machines Corporation Double data rate chaining for synchronous DDR interfaces
US7752475B2 (en) * 2006-06-27 2010-07-06 International Business Machines Corporation Late data launch for a double data rate elastic interface
US7783911B2 (en) * 2006-06-27 2010-08-24 International Business Machines Corporation Programmable bus driver launch delay/cycle delay to reduce elastic interface elasticity requirements
US7882322B2 (en) * 2006-06-27 2011-02-01 International Business Machines Corporation Early directory access of a double data rate elastic interface
US7734944B2 (en) * 2006-06-27 2010-06-08 International Business Machines Corporation Mechanism for windaging of a double rate driver
KR100837801B1 (ko) * 2006-06-29 2008-06-16 주식회사 하이닉스반도체 반도체 메모리 장치
TWI302318B (en) * 2006-09-06 2008-10-21 Nanya Technology Corp Memory control circuit and method
US7636828B2 (en) * 2006-10-31 2009-12-22 Hewlett-Packard Development Company, L.P. Method for automatic adjustment of timing of double data rate interface
US7590008B1 (en) 2006-11-06 2009-09-15 Altera Corporation PVT compensated auto-calibration scheme for DDR3
US7948812B2 (en) 2006-11-20 2011-05-24 Rambus Inc. Memory systems and methods for dynamically phase adjusting a write strobe and data to account for receive-clock drift
US7975162B2 (en) * 2006-11-28 2011-07-05 Samsung Electronics Co., Ltd. Apparatus for aligning input data in semiconductor memory device
US20080144405A1 (en) * 2006-12-18 2008-06-19 Intel Corporation Data strobe timing compensation
US7716510B2 (en) 2006-12-19 2010-05-11 Micron Technology, Inc. Timing synchronization circuit with loop counter
US7656745B2 (en) 2007-03-15 2010-02-02 Micron Technology, Inc. Circuit, system and method for controlling read latency
JP5106942B2 (ja) * 2007-07-31 2012-12-26 ルネサスエレクトロニクス株式会社 メモリリード制御回路
KR100929845B1 (ko) * 2007-09-28 2009-12-04 주식회사 하이닉스반도체 동기식 반도체 메모리 소자 및 그의 구동방법
KR100930401B1 (ko) * 2007-10-09 2009-12-08 주식회사 하이닉스반도체 반도체 메모리 장치
EP3399523B1 (en) 2007-12-21 2020-05-13 Rambus Inc. Method and apparatus for calibrating write timing in a memory system
US8824223B2 (en) * 2008-02-05 2014-09-02 SK Hynix Inc. Semiconductor memory apparatus with clock and data strobe phase detection
US7652512B2 (en) * 2008-02-07 2010-01-26 Macronix International Co., Ltd. Clock synchronizing circuit
KR100929835B1 (ko) * 2008-02-29 2009-12-07 주식회사 하이닉스반도체 안정적인 초기 동작을 수행하는 반도체 메모리 장치
KR100991999B1 (ko) * 2008-10-21 2010-11-04 주식회사 하이닉스반도체 데이터 전송 회로 및 이를 이용한 반도체 집적 회로
US7969813B2 (en) 2009-04-01 2011-06-28 Micron Technology, Inc. Write command and write data timing circuit and methods for timing the same
KR101630283B1 (ko) * 2009-06-25 2016-06-14 한화테크윈 주식회사 영상 보안 시스템에서 부호화 장치
JP5258687B2 (ja) * 2009-07-13 2013-08-07 ルネサスエレクトロニクス株式会社 メモリインタフェース制御回路
US8612795B1 (en) * 2010-03-03 2013-12-17 Altera Corporation Segmented clock network for transceiver array
US8300464B2 (en) 2010-04-13 2012-10-30 Freescale Semiconductor, Inc. Method and circuit for calibrating data capture in a memory controller
US8310885B2 (en) 2010-04-28 2012-11-13 International Business Machines Corporation Measuring SDRAM control signal timing
KR20120035755A (ko) * 2010-10-06 2012-04-16 삼성전기주식회사 적응형 지연 조절 기능이 구비된 데이터 인터페이스 장치
KR101263663B1 (ko) 2011-02-09 2013-05-22 에스케이하이닉스 주식회사 반도체 장치
US8984320B2 (en) 2011-03-29 2015-03-17 Micron Technology, Inc. Command paths, apparatuses and methods for providing a command to a data block
US8509011B2 (en) 2011-04-25 2013-08-13 Micron Technology, Inc. Command paths, apparatuses, memories, and methods for providing internal commands to a data path
CN102610268B (zh) * 2012-01-10 2014-04-02 江苏中科梦兰电子科技有限公司 应用示波器实现ddr3中数据选通信号同步的方法
US8552776B2 (en) 2012-02-01 2013-10-08 Micron Technology, Inc. Apparatuses and methods for altering a forward path delay of a signal path
CN102693197B (zh) * 2012-05-07 2015-01-28 江苏中科梦兰电子科技有限公司 内存控制器读选通使能微调寄存器的最小单元计算方法
US9166579B2 (en) 2012-06-01 2015-10-20 Micron Technology, Inc. Methods and apparatuses for shifting data signals to match command signal delay
US9054675B2 (en) 2012-06-22 2015-06-09 Micron Technology, Inc. Apparatuses and methods for adjusting a minimum forward path delay of a signal path
US9001594B2 (en) 2012-07-06 2015-04-07 Micron Technology, Inc. Apparatuses and methods for adjusting a path delay of a command path
US9329623B2 (en) 2012-08-22 2016-05-03 Micron Technology, Inc. Apparatuses, integrated circuits, and methods for synchronizing data signals with a command signal
US9304530B1 (en) 2012-08-28 2016-04-05 Rambus Inc. Skew-tolerant strobe-to-clock domain crossing
US8913448B2 (en) 2012-10-25 2014-12-16 Micron Technology, Inc. Apparatuses and methods for capturing data in a memory
US9734097B2 (en) 2013-03-15 2017-08-15 Micron Technology, Inc. Apparatuses and methods for variable latency memory operations
US9727493B2 (en) 2013-08-14 2017-08-08 Micron Technology, Inc. Apparatuses and methods for providing data to a configurable storage area
KR102167598B1 (ko) * 2014-01-28 2020-10-19 에스케이하이닉스 주식회사 반도체 장치
US9183904B2 (en) 2014-02-07 2015-11-10 Micron Technology, Inc. Apparatuses, memories, and methods for facilitating splitting of internal commands using a shared signal path
US9508417B2 (en) 2014-02-20 2016-11-29 Micron Technology, Inc. Methods and apparatuses for controlling timing paths and latency based on a loop delay
US9530473B2 (en) 2014-05-22 2016-12-27 Micron Technology, Inc. Apparatuses and methods for timing provision of a command to input circuitry
US9898438B2 (en) 2014-10-13 2018-02-20 Samsung Electronics Co., Ltd. Symbol lock method and a memory system using the same
US9531363B2 (en) 2015-04-28 2016-12-27 Micron Technology, Inc. Methods and apparatuses including command latency control circuit
US9813067B2 (en) 2015-06-10 2017-11-07 Micron Technology, Inc. Clock signal and supply voltage variation tracking
KR20170055786A (ko) 2015-11-12 2017-05-22 삼성전자주식회사 데이터 기입 및 독출 레이턴시를 제어하는 레이턴시 제어 회로를 갖는 메모리 장치
US9601170B1 (en) 2016-04-26 2017-03-21 Micron Technology, Inc. Apparatuses and methods for adjusting a delay of a command signal path
US9865317B2 (en) 2016-04-26 2018-01-09 Micron Technology, Inc. Methods and apparatuses including command delay adjustment circuit
US9997220B2 (en) 2016-08-22 2018-06-12 Micron Technology, Inc. Apparatuses and methods for adjusting delay of command signal path
US10224938B2 (en) 2017-07-26 2019-03-05 Micron Technology, Inc. Apparatuses and methods for indirectly detecting phase variations
KR102415198B1 (ko) 2017-11-20 2022-07-04 에스케이하이닉스 주식회사 스큐 보상 회로 및 이를 포함하는 반도체 장치
US10664173B2 (en) * 2018-01-30 2020-05-26 Micron Technology, Inc. Write level initialization synchronization
US11061431B2 (en) * 2018-06-28 2021-07-13 Micron Technology, Inc. Data strobe multiplexer
KR20210051365A (ko) * 2019-10-30 2021-05-10 에스케이하이닉스 주식회사 반도체장치
CN112992222B (zh) * 2019-12-16 2024-01-23 华邦电子股份有限公司 应用于伪静态随机存取存储器的控制电路及其控制方法
US11152051B1 (en) * 2020-07-23 2021-10-19 Xilinx, Inc. Real time memory interface variation tracking
US11315653B2 (en) * 2020-09-30 2022-04-26 Nanya Technology Corporation Dynamic random access memory and method thereof
TWI788160B (zh) * 2021-12-24 2022-12-21 晶豪科技股份有限公司 資料控制電路以及記憶體裝置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3259696B2 (ja) 1998-10-27 2002-02-25 日本電気株式会社 同期型半導体記憶装置
US6081477A (en) 1998-12-03 2000-06-27 Micron Technology, Inc. Write scheme for a double data rate SDRAM
JP3317912B2 (ja) 1999-01-28 2002-08-26 エヌイーシーマイクロシステム株式会社 半導体記憶装置
US6240042B1 (en) 1999-09-02 2001-05-29 Micron Technology, Inc. Output circuit for a double data rate dynamic random access memory, double data rate dynamic random access memory, method of clocking data out from a double data rate dynamic random access memory and method of providing a data strobe signal
US6741520B1 (en) 2000-03-16 2004-05-25 Mosel Vitelic, Inc. Integrated data input sorting and timing circuit for double data rate (DDR) dynamic random access memory (DRAM) devices
JP2002222591A (ja) 2001-01-26 2002-08-09 Mitsubishi Electric Corp 同期型半導体記憶装置
US6618283B2 (en) * 2001-08-29 2003-09-09 Micron Technology, Inc. System and method for skew compensating a clock signal and for capturing a digital signal using the skew compensated clock signal
DE10146149B4 (de) 2001-09-19 2004-04-29 Infineon Technologies Ag Schaltungsanordnung zum Empfang eines Datensignals
JP2003249077A (ja) 2002-02-21 2003-09-05 Elpida Memory Inc 半導体記憶装置及びその制御方法
US6819599B2 (en) 2002-08-01 2004-11-16 Micron Technology, Inc. Programmable DQS preamble

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7499370B2 (en) 2006-09-06 2009-03-03 Samsung Electronics Co., Ltd. Synchronous semiconductor memory device

Also Published As

Publication number Publication date
KR20050070525A (ko) 2005-07-07
US20050141331A1 (en) 2005-06-30
TW200522076A (en) 2005-07-01
TWI264725B (en) 2006-10-21
US7042799B2 (en) 2006-05-09

Similar Documents

Publication Publication Date Title
KR100521049B1 (ko) 더블 데이터 레이트 싱크로너스 디램의 쓰기 회로
US7463052B2 (en) Method and circuit for off chip driver control, and memory device using same
US7019555B2 (en) Circuit for performing on-die termination operation in semiconductor memory device and its method
US7706210B2 (en) Semiconductor memory device including delay locked loop and method for driving the same
US7342412B2 (en) Device for controlling on die termination
US6791888B2 (en) Semiconductor memory device having preamble function
US7102939B2 (en) Semiconductor memory device having column address path therein for reducing power consumption
US6687169B2 (en) Semiconductor memory device for providing address access time and data access time at a high speed
US7230466B2 (en) Data strobe signal generating circuit and data strobe signal generating method
US20050286667A1 (en) Method and circuit for adjusting the timing of output data based on the current and future states of the output data
US10622041B2 (en) Semiconductor device including clock generation circuit for write write leveling operation and write operation
US20220011809A1 (en) Powering clock tree circuitry using internal voltages
US10950280B2 (en) Semiconductor device
CN111756368A (zh) 使用频率检测的锁相电路系统的频率检测器、设备和方法
US20030234673A1 (en) Synchronous mirror delay (smd) circuit and method including a counter and reduced size bi-directional delay line
US6333875B1 (en) Semiconductor circuit with adjustment of double data rate data latch timings
US6987699B2 (en) Clock driver in semiconductor memory device
KR100532956B1 (ko) Ddr sdram에서의 링잉 현상 방지 방법
US7791963B2 (en) Semiconductor memory device and operation method thereof
US6407962B1 (en) Memory module having data switcher in high speed memory device
US8248863B2 (en) Data buffer control circuit and semiconductor memory apparatus including the same
US7263025B2 (en) Semiconductor memory device for stably controlling power mode at high frequency and method of controlling power mode thereof
US10802535B1 (en) Resetting clock divider circuitry prior to a clock restart
JP2002170385A (ja) 半導体装置

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121002

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20131001

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20141001

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee