본 발명은 라이트(Write) 데이터 또는 메모리 셀 블록에서 출력된 리드(Read) 데이터를 저장하였다가 출력 제어신호에 따라 출력하는 저장 수단; 및 라이트 트래이닝(Write Training) 신호의 활성화 여부에 따라 상기 출력 제어신호 가 서로 다른 타이밍에 발생되도록 하는 제어 수단을 구비함을 특징으로 한다.
본 발명은 데이터 라이트 및 리드 공용으로 사용되는 데이터 라인; 상기 데이터 라인을 통해 외부에서 입력되는 라이트 데이터 또는 메모리 셀 블록에서 상기 데이터 라인을 통해 출력되는 리드 데이터를 저장하였다가 출력 제어신호에 따라 출력하는 저장 수단; 및 라이트 트래이닝 신호의 활성화 여부에 따라 상기 출력 제어신호가 서로 다른 타이밍에 발생되도록 하는 제어 수단을 구비함을 다른 특징으로 한다.
본 발명은 라이트 트래이닝 신호에 응답하여, 제 1 데이터 라인을 통해 외부에서 입력되는 라이트 데이터 또는 메모리 셀 블록에서 제 2 데이터 라인을 통해 출력되는 리드 데이터 중 하나를 선택하여 출력하는 스위칭 수단; 상기 스위칭 수단에서 출력되는 데이터를 저장하였다가 출력 제어신호에 따라 출력하는 저장 수단; 및 상기 라이트 트래이닝 신호의 활성화 여부에 따라 상기 출력 제어신호가 서로 다른 타이밍에 발생되도록 하는 제어 수단을 구비함을 또 다른 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 라이트 트래이닝 기능을 갖는 반도체 메모리 장치의 바람직한 실시예를 설명하면 다음과 같다.
본 발명에 따른 라이트 트래이닝 기능을 갖는 반도체 메모리 장치(20)는 도 2에 도시 된 바와 같이, 메모리 셀 블록(100), 패드(110), 직렬/병렬 변환부(이하, SPC)(120), 라이트 드라이버(130), 제 1 데이터 버스 반전부(이하, DBI_1)(140), 제 2 데이터 버스 반전부(DBI_2)(150), 다중화부(이하, MUX)(160), 레지스터(170), 병렬/직렬 변환부(이하, PSC)(180) 및 트래이닝 레지스터(190)를 구비한다.
상기 메모리 셀 블록(100)은 라이트 스트로브 신호(WTSTBP)에 따라 외부에서 데이터를 받아들여 메모리 셀에 기록하고, 리드 스트로브 신호(IOSASTBP)에 따라 메모리 셀에 기록되어 있던 데이터를 외부로 출력한다.
상기 패드(110)는 메모리 용량과 모델 등의 차이에 따라 데이터 입출력 핀(Pin)의 수가 다르게 구성될 수 있으며, 8개의 데이터 입출력 핀(DQ<0:7>)과 DBI 핀(DBI)을 포함한 경우를 도시한 것이다.
상기 SPC(120)는 반도체 메모리 장치(20)가 내장된 칩 셋(Chip Set)의 GPU(10)로부터 상기 패드(110)의 각 핀을 통해 입력되는 직렬 데이터를 각각 병렬데이터로 변환하여 상기 라이트 드라이버(130)로 출력한다.
상기 라이트 드라이버(130)는 상기 SPC(120)에서 출력된 병렬 데이터를 래치(Latch) 하고 있다가 입력 스트로브 신호(DINSTBP)에 응답하여 라이트용 광역 데이터 라인(WGIO)을 통해 제 1 DBI(140)로 출력한다.
상기 트래이닝 레지스터(190)는 상기 GPU(10)에서 라이트 트래이닝 동작을 위해 출력한 라이트 트래이닝 데이터를 저장하였다가 지연 스트로브 신호(REGSTBP)에 응답하여 출력한다. 상기 지연 스트로브 신호(REGSTBP)는 상기 입력 스트로브 신호(DINSTBP)를 정해진 시간 만큼 지연시켜 생성된다. 상기 트래이닝 레지스터(190)는 상기 GPU(10)에서 출력된 데이터를 원 상태 그대로 저장하였다가 다시 GPU(10)로 전송해야 하므로 상기 DBI_1(140) 이전의 데이터 라인 즉, 라이트용 광역 데이터 라인(WGIO)에서 분기된 데이터 라인을 통해 데이터를 입력 받도록 구성된다.
상기 DBI_1(140)는 상기 라이트 드라이버(130)에서 출력된 72 비트의 데이터에 포함된 8비트의 DBI 신호에 따라 나머지 64비트를 반전시키거나 원 상태 그대로 상기 메모리 셀 블록(100)으로 전송한다.
상기 DBI_2(150)는 상기 메모리 셀 블록(100)에서 출력된 64비트의 데이터를 이전 데이터와 비교하여 반전시키고 상기 비교결과에 맞도록 생성한 8 비트의 DBI 신호와 함께 총 72 비트의 데이터를 리드용 광역 데이터 라인(RGIO)을 통해 출력한다.
상기 MUX(160)는 라이트 트래이닝 신호(TF)에 따라 상기 트래이닝 레지스터(190)에서 출력된 데이터 또는 DBI_2(150)에서 출력된 데이터를 선택하여 출력하는 스위칭 수단으로서 동작한다.
상기 레지스터(170)는 상기 MUX(160)에서 출력된 데이터를 출력 스트로브 신호(PINZ)에 따라 FIFO(First In First Out) 방식으로 상기 PSC(180)로 출력한다. 상기 레지스터(170)는 메모리 셀 블록(100)에서 출력된 데이터를 반도체 메모리 장치 외부로 출력할 때 정해진 레이턴시(Latency)를 맞추기 위한 구성이다. 예를 들어, 메모리 셀 블록(100)에서 레지스터(170)까지 8ns에 도착하였는데 15ns에 출력되도록 정해져 있다면 7ns 동안 데이터를 더 저장하고 있어야 하므로 이 역할을 상기 레지스터(170)가 수행하는 것이다. 따라서 상기 출력 스트로브 신호(PINZ)는 상기 입력 스트로브 신호(DINSTBP)를 상기 7ns 동안 지연시켜 생성된다.
상기 PSC(180)는 상기 레지스터(170)에서 출력된 병렬 데이터를 직렬 데이터로 변환하여 상기 패드(110)를 통해 GPU(10)로 출력한다.
이와 같이 구성된 본 발명에 따른 라이트 트래이닝 기능을 갖는 반도체 메모리 장치의 동작을 설명하면 다음과 같다.
먼저, 노멀 라이트(Normal Write) 동작의 경우, GPU(10)에서 출력된 데이터가 상기 패드(110), SPC(120), 라이트 드라이버(130) 및 DBI_1(140)를 거쳐 메모리 셀 블록(100)으로 전달되고, 라이트 명령에 의해 생성된 라이트 스트로브 신호(WTSTBP)에 따라 메모리 셀 블록(100)에 기록된다. 상기 라이트 드라이버(130)에서 출력된 데이터는 트래이닝 레지스터(190)에도 저장된다.
노멀 리드(Normal Read) 동작의 경우, 리드 명령에 의해 생성된 리드 스트로브 신호(IOSASTBP)에 따라 메모리 셀 블록(100)에서 출력된 데이터가 상기 DBI_2(150), MUX(160), 레지스터(170), PSC(180) 및 패드(110)를 통해 상기 GPU(10)로 출력된다.
한편, 라이트 트래이닝 동작의 경우, GPU(10)에서 출력된 라이트 트래이닝용 데이터가 상기 패드(110), SPC(120), 라이트 드라이버(130)를 통해 라이트용 광역 데이터 라인(WGIO)에 실리게 된다. 상기 라이트용 광역 데이터 라인(WGIO)에 실린 데이터는 DBI_1(140)를 거쳐 메모리 셀 블록(100)으로 전달되지만 라이트 스트로브 신호(WTSTBP)가 발생되지 않으므로 메모리 셀에 기록되지는 않는다. 상기 라이트용 광역 데이터 라인(WGIO)에 실린 데이터는 트래이닝 레지스터(190)에 저장된 후 지연 스트로브 신호(REGSTBP)에 응답하여 출력되고 MUX(160), 레지스터(170), PSC(180) 및 패드(110)를 통해 상기 GPU(10)로 출력된다. 상기 라이트 트래이닝 동작의 경우 라이트 트래이닝 신호(TF)가 활성화된 상태이므로 MUX(160)는 트래이닝 레지스터(190)의 출력을 선택하여 통과시킨다. 물론 노멀 동작의 경우 라이트 트래이닝 신호(TF)가 비활성화된 상태이므로 DBI_2(150)의 출력을 선택하여 통과시킨다.
상기 GPU(10)는 상기 반도체 메모리 장치(20)에서 출력된 데이터를 이용하여 기준 클럭(REFCLK)의 위상을 조정하는 방식으로 라이트 트래이닝 동작을 수행한다. 상술한 바와 같이, 본 발명은 별도의 레지스터를 이용하여 라이트 트래이닝 기능을 지원할 수 있다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 라이트 트래이닝 기능을 갖는 반도체 메모리 장치의 다른 실시예를 설명하면 다음과 같다.
본 발명에 따른 라이트 트래이닝 기능을 갖는 반도체 메모리 장치의 다른 실시예는 도 2에 도시 된 실시예와 달리 별도의 레지스터를 사용하지 않고 기본적으로 구비된 레지스터를 노멀 동작과 라이트 트래이닝 동작 겸용으로 사용할 수 있도록 구성한 것이다.
본 발명에 따른 라이트 트래이닝 기능을 갖는 반도체 메모리 장치(20)의 다른 실시예는 도 3에 도시 된 바와 같이, 메모리 셀 블록(100), 패드(110), SPC(120), 라이트 드라이버(130), DBI_1(140), DBI_2(150), 제 1 다중화부(이하, MUX)(160), 제 2 다중화부(이하, MUX2)(210), 레지스터(220) 및 PSC(180)를 구비한다.
상기 메모리 셀 블록(100), 패드(110), SPC(120), 라이트 드라이버(130), DBI_1(140), DBI_2(150), MUX(160) 및 PSC(180)는 도 2의 구성과 동일하므로 동일한 도면부호를 기입하였고 설명은 생략하기로 한다.
상기 레지스터(220)는 메모리 셀 블록(100)에서 출력된 데이터를 반도체 메모리 장치 외부로 출력할 때 정해진 레이턴시(Latency)를 맞추기 위한 구성으로서, 노멀 동작시에는 메모리 셀 블록(100)에서 출력된 데이터를 FIFO 방식으로 저장 및 출력하는 역할과, 라이트 트래이닝 동작시에는 GPU(10)에서 출력된 데이터를 저장 및 출력하는 역할을 수행한다. 상기 레지스터(220)는 다중 FIFO 구조로서, FIFO의 뎁스(Depth)는 어드레스 억세스 타임(Address Access Time: tAA) 및 리드 레이턴시(Read Latency: RL)에 의해 결정된다. 예를 들어, FIFO의 뎁스(Depth)가 5이고 버스트 랭스(Burst Length: BL)가 8이라면 라이트 트래이닝 데이터를 최대 40비트까지 지원할 수 있다.
상기 MUX2(210)는 라이트 트래이닝 신호(TF)에 따라 입력 스트로브 신호(DINSTBP) 또는 리드 스트로브 신호(IOSASTBP) 중 하나를 선택하고, 선택된 신호를 정해진 시간만큼 지연시켜 생성한 출력 스트로브 신호(PINZS)를 출력하는 제어 수단으로서 동작한다. 상기 MUX2(210)는 상기 선택된 신호를 정해진 시간만큼 지연시키기 위해 적어도 하나의 지연소자를 구비한다.
상기 레지스터(220)는 노멀 동작과 라이트 트래이닝 동작시 입력 받는 데이터 경로가 다르므로 데이터 출력 타이밍도 다르게 된다. 따라서 상기 MUX2(210)가 라이트 트래이닝 신호(TF)를 이용하여 상기 레지스터(220)의 출력 타이밍을 맞춰주는 것이다.
이와 같이 구성된 본 발명에 따른 라이트 트래이닝 기능을 갖는 반도체 메모리 장치의 동작을 도 4를 참조하여 설명하면 다음과 같다.
먼저, 노멀 라이트(Normal Write) 동작의 경우, GPU(10)에서 출력된 데이터가 상기 패드(110), SPC(120), 라이트 드라이버(130) 및 DBI_1(140)를 거쳐 메모리 셀 블록(100)으로 전달되고, 라이트 명령에 의해 생성된 라이트 스트로브 신호(WTSTBP)에 따라 메모리 셀 블록(100)에 기록된다. 상기 라이트 트래이닝 신호(TF)가 비활성화된 상태이므로 라이트 드라이버(130)에서 출력된 데이터가 MUX(160)를 통해 레지스터(220)로 직접 전송되지는 않는다.
노멀 리드(Normal Read) 동작의 경우, 리드 명령에 의해 생성된 리드 스트로브 신호(IOSASTBP)에 따라 메모리 셀 블록(100)에서 출력된 데이터가 상기 DBI_2(150) 및 MUX(160)를 통해 레지스터(220)에 저장된다.
상기 MUX2(210)는 상기 라이트 트래이닝 신호(TF)가 비활성화된 상태이므로 리드 스트로브 신호(IOSASTBP)를 선택하고 정해진 시간만큼 지연시켜 생성한 출력 스트로브 신호(PINZS)를 출력한다.
상기 레지스터(220)는 상기 저장된 데이터를 상기 출력 스트로브 신호(PINZS)에 응답하여 FIFO 방식으로 출력한다.
상기 레지스터(220)에서 출력된 데이터는 PSC(180) 및 패드(110)를 통해 상기 GPU(10)로 출력된다.
라이트 트래이닝 동작의 경우, 라이트 트래이닝 명령(TRN)이 발생되면, 소정 라이트 레이턴시(Latency) 경과 후 패드(110)의 각 핀을 통해 라이트 트래이닝용 데이터가 입력되고 SPC(120)를 통해 병렬 데이터로 변환된다.
상기 데이터 입력 후 라이트 명령(WT)이 발생되면, 내부 지연시간(W) 경과 후 입력 스트로브 신호(DINSTBP)가 생성된다.
상기 라이트 드라이버(130)가 상기 입력 스트로브 신호(DINSTBP)에 응답하여 데이터를 상기 라이트용 광역 데이터 라인(WGIO)으로 출력한다.
상기 라이트용 광역 데이터 라인(WGIO)에 실린 데이터는 DBI_1(140)를 거쳐 메모리 셀 블록(100)으로 전달되지만 라이트 스트로브 신호(WTSTBP)가 발생되지 않으므로 메모리 셀에 기록되지는 않는다.
한편, 상기 라이트용 광역 데이터 라인(WGIO)에 실린 데이터는 MUX(160)를 통해 레지스터(220)에 저장된다. 라이트 트래이닝 동작시 리드 스트로브 신호(IOSASTBP)가 발생되지 않으므로 메모리 셀 블록(100)에서 데이터 출력이 이루어지지 않음은 물론이고, 라이트 트래이닝 신호(TF)가 활성화된 상태이므로 MUX(160)와 DBI_2(150)의 연결 경로는 차단된다.
상기 MUX2(210)는 상기 라이트 트래이닝 신호(TF)가 활성화된 상태이므로 입력 스트로브 신호(DINSTBP)를 선택하고 정해진 시간만큼 지연시켜 생성한 출력 스트로브 신호(PINZS)를 출력한다.
상기 레지스터(220)는 상기 저장된 데이터를 상기 출력 스트로브 신호(PINZS)에 응답하여 FIFO 방식으로 출력한다.
상기 레지스터(220)에서 출력된 데이터는 PSC(180) 및 패드(110)를 통해 상기 GPU(10)로 출력된다.
상기 GPU(10)는 상기 반도체 메모리 장치(20)에서 출력된 데이터를 이용하여 기준 클럭(REFCLK)의 위상을 조정하는 방식으로 라이트 트래이닝 동작을 수행한다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 라이트 트래이닝 기능을 갖는 반도체 메모리 장치의 또 다른 실시예를 설명하면 다음과 같다.
본 발명에 따른 라이트 트래이닝 기능을 갖는 반도체 메모리 장치의 또 다른 실시예는 라이트용 광역 데이터 라인(WGIO)과 리드용 광역 데이터 라인(RGIO)을 별도로 사용하지 않고 공유하는 경우에 적용하는 것으로, 별도의 레지스터를 사용하지 않고 기본적으로 구비된 레지스터를 노멀 동작과 라이트 트래이닝 동작 겸용으로 사용할 수 있도록 구성한다는 점에서 도 3의 실시예와 동일하다.
본 발명에 따른 라이트 트래이닝 기능을 갖는 반도체 메모리 장치(20)의 다른 실시예는 도 5에 도시 된 바와 같이, 메모리 셀 블록(100), 패드(110), SPC(120), 라이트 드라이버(130), DBI(310), MUX(320), 레지스터(330) 및 PSC(180)를 구비한다.
상기 메모리 셀 블록(100), 패드(110), SPC(120), 라이트 드라이버(130) 및PSC(180)는 도 2의 구성과 동일하므로 동일한 도면부호를 기입하였고 설명은 생략하기로 한다.
도 5에 도시 된 본 발명의 또 다른 실시예는 광역 데이터 라인이 리드와 라이트에 대해 공유된 상태이므로 즉, 리드와 라이트 동작시 데이터 경로가 동일하므로 DBI(310)가 하나만 있으면 되고, 도 3의 MUX(160)가 필요 없다.
상기 레지스터(330)는 메모리 셀 블록(100)에서 출력된 데이터를 반도체 메모리 장치 외부로 출력할 때 정해진 레이턴시(Latency)를 맞추기 위한 구성으로서,노멀 동작시에는 메모리 셀 블록(100)에서 출력된 데이터를 FIFO 방식으로 저장 및 출력하는 역할과, 라이트 트래이닝 동작시에는 GPU(10)에서 출력된 데이터를 저장 및 출력하는 역할을 수행한다.
상기 MUX(320)는 라이트 트래이닝 신호(TF)에 따라 입력 스트로브 신호(DINSTBP) 또는 리드 스트로브 신호(IOSASTBP) 중 하나를 선택하고 정해진 시간만큼 지연시켜 생성한 출력 스트로브 신호(PINZS)를 출력하는 제어 수단으로서 동작한다. 상기 MUX(320)는 상기 선택된 신호를 지연시키기 위해 지연소자를 구비한다.
상기 레지스터(330)는 노멀 동작과 라이트 트래이닝 동작시 입력 받는 데이터 경로가 다르므로 데이터 출력 타이밍도 다르게 된다. 따라서 상기 MUX(320)가 라이트 트래이닝 신호(TF)를 이용하여 상기 레지스터(330)의 출력 타이밍을 맞춰주는 것이다.
이와 같이 구성된 본 발명에 따른 라이트 트래이닝 기능을 갖는 반도체 메모리 장치의 동작을 설명하면 다음과 같다.
먼저, 노멀 라이트(Normal Write) 동작의 경우, GPU(10)에서 출력된 데이터가 상기 패드(110), SPC(120), 라이트 드라이버(130) 및 DBI(310)를 거쳐 메모리 셀 블록(100)으로 전달되고, 라이트 명령에 의해 생성된 라이트 스트로브 신호(WTSTBP)에 따라 메모리 셀 블록(100)에 기록된다.
노멀 리드(Normal Read) 동작의 경우, 리드 명령에 의해 생성된 리드 스트로브 신호(IOSASTBP)에 따라 메모리 셀 블록(100)에서 출력된 데이터가 상기 DBI(310)를 통해 레지스터(330)에 저장된다.
상기 MUX(320)는 상기 라이트 트래이닝 신호(TF)가 비활성화된 상태이므로 리드 스트로브 신호(IOSASTBP)를 선택하고 정해진 시간만큼 지연시켜 생성한 출력 스트로브 신호(PINZS)를 출력한다.
상기 레지스터(330)는 상기 저장된 데이터를 상기 출력 스트로브 신호(PINZS)에 응답하여 FIFO 방식으로 출력한다.
상기 레지스터(330)에서 출력된 데이터는 PSC(180) 및 패드(110)를 통해 상기 GPU(10)로 출력된다.
라이트 트래이닝 동작의 경우, GPU(10)에서 출력된 라이트 트래이닝용 패턴 데이터가 상기 패드(110), SPC(120), 라이트 드라이버(130)를 통해 광역 데이터 라인(GIO)에 실리게 된다. 상기 광역 데이터 라인(GIO)에 실린 데이터는 DBI(310)를 거쳐 메모리 셀 블록(100)으로 전달되지만 라이트 스트로브 신호(WTSTBP)가 발생되지 않으므로 메모리 셀에 기록되지는 않는다.
한편, 상기 광역 데이터 라인(GIO)에 실린 데이터는 레지스터(330)에 저장된다. 라이트 트래이닝 동작시 리드 스트로브 신호(IOSASTBP)가 발생되지 않으므로 메모리 셀 블록(100)에서 데이터 출력이 이루어지지 않는다.
상기 MUX(320)는 상기 라이트 트래이닝 신호(TF)가 활성화된 상태이므로 입력 스트로브 신호(DINSTBP)를 선택하고 정해진 시간만큼 지연시켜 생성한 출력 스 트로브 신호(PINZS)를 출력한다.
상기 레지스터(330)는 상기 저장된 데이터를 상기 출력 스트로브 신호(PINZS)에 응답하여 FIFO 방식으로 출력한다.
상기 레지스터(330)에서 출력된 데이터는 PSC(180) 및 패드(110)를 통해 상기 GPU(10)로 출력된다.
상기 GPU(10)는 상기 반도체 메모리 장치(20)에서 출력된 데이터를 이용하여 기준 클럭(REFCLK)의 위상을 조정하는 방식으로 라이트 트래이닝 동작을 수행한다.
본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있으므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.