본 발명의 목적은 복수개의 반도체 메모리 장치들에 대한 리드 동작시에 하나의 장치로부터 발생되는 스트로우브 신호와 다른 하나의 장치로부터 발생되는 프리앰블 신호의 충돌을 방지할 수 있는 메모리 시스템을 제공하는데 있다.
본 발명의 다른 목적은 출력 데이터 스트로우브 신호의 프리앰블 신호의 사이클의 수를 가변할 수 있는 반도체 메모리 장치를 제공하는데 있다.
본 발명의 또 다른 목적은 상기 목적과 다른 목적을 달성하기 위한 메모리 시스템과 반도체 메모리 장치의 출력 데이터 스트로우브 신호 발생 방법을 제공하는데 있다.
상기 목적을 달성하기 위한 본 발명의 메모리 시스템은 적어도 2개이상의 반도체 메모리 장치들, 및 상기 반도체 메모리 장치들을 제어하는 메모리 제어부를 구비하고, 상기 메모리 제어부가 상기 반도체 메모리 장치들로 명령 신호를 공통으로 인가하고, 칩 선택신호를 각각 인가하고, 상기 반도체 메모리 장치들이 출력 데이터 스트로우브 신호를 공통 라인으로 출력하고, 상기 반도체 메모리 장치들 각각은 상기 명령 신호 및 상기 칩 선택신호에 응답하여 리드 명령 및 더미 리드 명령 을 검출하고, 상기 더미 리드 명령과 상기 리드 명령사이의 사이클의 수에서 버스트 길이에 해당하는 사이클의 수만큼을 뺀 수를 프리앰블 사이클의 수로 계산하여, 상기 출력 데이터 스트로우브 신호의 스트로우브 신호를 발생하기 전에 계산된 프리앰블 사이클의 수만큼 프리앰블 신호를 발생하는 것을 특징으로 한다.
상기 반도체 메모리 장치들 각각은 상기 명령 신호 및 상기 칩 선택신호에 응답하여 다른 반도체 메모리 장치의 리드 명령을 검출함에 의해서 상기 더미 리드 명령을 검출하는 것을 특징으로 한다.
상기 다른 목적을 달성하기 위한 본 발명의 반도체 메모리 장치는 명령 신호 및 칩 선택신호에 응답하여 리드 신호, 더미 리드 신호, 및 모드 설정 신호를 발생하는 명령어 디코더, 상기 모드 설정 신호에 응답하여 버스트 길이 신호 및 캐스 레이턴시 신호를 설정하는 모드 설정부, 및 상기 리드 신호와 상기 더미 리드 신호사이의 사이클의 수에서 버스트 길이에 해당하는 사이클의 수를 뺀 수를 프리앰블 사이클의 수로 계산하여 프리앰블 사이클 신호를 발생하는 프리앰블 사이클 계산부를 구비하는 것을 특징으로 한다.
상기 반도체 메모리 장치는 상기 리드 신호에 응답하여 상기 출력 데이터 스트로우브 신호를 발생하고, 상기 출력 데이터 스트로우브 신호의 스트로우브 신호를 상기 캐스 레이턴시 신호에 해당하는 사이클만큼 지연하여 발생하고, 상기 스트로우브 신호를 발생하기 전에 상기 프리앰블 사이클 신호에 해당하는 사이클만큼 프리앰블 신호를 발생하는 출력 데이터 스트로우브 신호 발생부를 추가적으로 구비하는 것을 특징으로 한다.
상기 명령어 디코더는 상기 칩 선택신호가 활성화되고 상기 명령 신호가 리드 명령을 지정하는 신호이면 상기 리드 신호를 발생하고, 상기 칩 선택신호가 비활성화되고 상기 명령 신호가 리드 명령을 지정하는 신호이면 상기 더미 리드 신호를 발생하는 것을 특징으로 하고, 상기 프리앰블 사이클 계산부는 상기 더미 리드 신호 또는 상기 리드 신호에 응답하여 상기 버스트 길이에 해당하는 사이클만큼 지연하여 활성화되고, 다음 입력되는 상기 더미 리드 신호 또는 상기 리드 신호에 응답하여 비활성화되는 인에이블 신호를 발생하는 인에이블 신호 발생기, 상기 인에이블 신호가 활성화되면 클럭신호에 응답하여 카운팅 동작을 수행하고 상기 인에이블 신호가 비활성화되면 카운팅 동작을 종료하고 카운팅된 신호를 발생하는 프리앰블 사이클 카운터, 및 상기 카운팅된 신호를 저장하고 상기 프리앰블 사이클 신호를 발생하는 레지스터를 구비하는 것을 특징으로 한다.
상기 모드 설정부는 상기 모드 설정 신호에 응답하여 최대 프리앰블 사이클 신호를 추가적으로 설정하는 것을 특징으로 하고, 상기 프리앰블 사이클 카운터는 상기 카운팅된 신호가 상기 최대 프리앰블 사이클 신호가 되면 상기 카운팅 동작을 중지하는 것을 특징으로 하고, 상기 레지스터는 초기에 상기 최대 프리앰블 사이클 신호를 저장하고, 상기 리드 신호에 응답하여 상기 카운팅된 신호를 저장하고 상기 프리앰블 사이클 신호를 발생하는 것을 특징으로 한다.
상기 인에이블 신호 발생기는 상기 더미 리드 신호와 상기 리드 신호를 논리합하는 논리합 게이트, 상기 클럭신호에 응답하여 상기 논리합 게이트의 출력신호를 상기 버스트 길이 신호에 해당하는 사이클만큼 지연하는 버스트 길이 지연기, 및 상기 버스트 길이 지연기의 출력신호가 활성화되면 활성화되고, 상기 논리합 게이트의 출력신호가 활성화되면 비활성화되는 상기 인에이블 신호를 발생하는 래치를 구비하는 것을 특징으로 하고, 상기 버스트 길이 지연기는 소정 개수의 종속 연결된 D플립플롭들을 구비하고, 상기 D플립플롭들은 상기 논리합 게이트의 출력신호가 활성화되면 리셋되는 것을 특징으로 한다.
상기 프리앰블 사이클 카운터는 비교 신호에 응답하여 상기 클럭신호를 발생하는 논리곱 게이트, 상기 인에이블 신호가 활성화되면 인에이블되고 상기 논리곱 게이트의 출력신호에 응답하여 카운팅 동작을 수행하여 상기 카운팅된 신호를 발생하고 상기 인에이블 신호가 비활성화되면 리셋되는 카운터, 및 상기 카운팅된 신호와 상기 최대 프리앰블 사이클 신호가 동일하면 상기 비교 신호를 발생하는 비교기를 구비하는 것을 특징으로 하고, 상기 카운터는 상기 논리곱 게이트의 출력신호에 응답하여 카운팅 동작을 수행하는 소정 개수의 종속 연결된 플립플롭들을 구비하는 것을 특징으로 하고, 상기 플립플롭들 각각은 입력 신호와 카운팅 출력 신호를 논리곱하여 출력 신호를 발생하는 논리곱 게이트, 상기 입력 신호와 카운팅 입력 신호를 배타논리합하는 배타논리합 게이트, 및 상기 클럭신호에 응답하여 상기 배타논리합 게이트의 출력신호를 래치하여 상기 카운팅 출력신호로 발생하는 D플립플롭을 구비하고, 상기 플립플롭들의 첫단의 상기 입력 신호로 상기 인에이블 신호가 인가되고, 상기 첫단의 카운팅 입력 신호로 접지전압이 인가되고, 상기 첫단의 플립플롭을 제외한 나머지 플립플롭들 각각의 입력 신호 및 카운팅 입력 신호로 전단의 플립플롭의 출력 신호 및 카운팅 출력신호가 각각 인가되는 것을 특징으로 한 다.
상기 또 다른 목적을 달성하기 위한 본 발명의 메모리 시스템의 출력 데이터 스트로우브 신호 발생 방법은 적어도 2개이상의 반도체 메모리 장치들, 및 상기 반도체 메모리 장치들을 제어하는 메모리 제어부를 구비하는 메모리 시스템의 출력 데이터 스트로우브 신호 발생 방법에 있어서, 상기 메모리 제어부가 상기 반도체 메모리 장치들로 명령 신호를 공통적으로 인가하고, 칩 선택신호를 각각 인가하여 상기 반도체 메모리 장치들중 하나의 반도체 메모리 장치를 선택하고, 상기 반도체 메모리 장치들이 출력 데이터 스트로우브 신호를 공통 라인으로 출력하고, 상기 반도체 메모리 장치들 각각이 상기 명령 신호 및 상기 칩 선택신호에 응답하여 리드 명령 및 더미 리드 명령을 검출하고, 상기 더미 리드 명령과 상기 리드 명령사이의 사이클의 수에서 버스트 길이에 해당하는 사이클의 수만큼을 뺀 수를 프리앰블 사이클의 수로 계산하여, 상기 출력 데이터 스트로우브 신호의 스트로우브 신호를 발생하기 전에 계산된 프리앰블 사이클의 수만큼 프리앰블 신호를 발생하는 것을 특징으로 한다.
상기 또 다른 목적을 달성하기 위한 본 발명의 반도체 메모리 장치의 출력 데이터 스트로우브 신호 발생 방법은 명령 신호 및 칩 선택신호에 응답하여 리드 신호, 더미 리드 신호, 및 모드 설정 신호를 발생하고, 상기 모드 설정 신호에 응답하여 버스트 길이 신호, 캐스 레이턴시 신호, 및 최대 프리앰블 사이클 신호를 설정하고, 상기 리드 신호와 상기 더미 리드 신호사이의 사이클의 수에서 버스트 길이에 해당하는 사이클의 수를 뺀 수를 프리앰블 사이클의 수로 계산하여 프리앰 블 사이클 신호를 발생하는 것을 특징으로 하고, 상기 리드 신호에 응답하여 출력 데이터 스트로우브 신호를 발생하고, 상기 출력 데이터 스트로우브 신호의 스트로우브 신호를 상기 캐스 레이턴시 신호에 해당하는 사이클만큼 지연하여 발생하고, 상기 스트로우브 신호를 발생하기 전에 상기 프리앰블 사이클 신호에 해당하는 사이클만큼 프리앰블 신호를 발생하는 것을 특징으로 한다.
상기 칩 선택신호가 활성화되고 상기 명령 신호가 리드 명령을 지정하는 신호이면 상기 리드 신호를 발생하고, 상기 칩 선택신호가 비활성화되고 상기 명령 신호가 리드 명령을 지정하는 신호이면 상기 더미 리드 신호를 발생하는 것을 특징으로 하고, 상기 더미 리드 신호 또는 상기 리드 신호에 응답하여 상기 버스트 길이에 해당하는 사이클만큼 지연하여 활성화되고, 다음 입력되는 상기 더미 리드 신호 또는 상기 리드 신호에 응답하여 비활성화되는 인에이블 신호를 발생하고, 상기 인에이블 신호가 활성화되면 클럭신호에 응답하여 카운팅 동작을 수행하고 상기 카운팅된 수가 상기 최대 프리앰블 사이클 신호가 되면 카운팅 동작을 중지하고 상기 인에이블 신호가 비활성화되면 카운팅 동작을 종료하고 카운팅된 신호를 발생하고, 초기에 상기 최대 프리앰블 사이클 신호를 저장하고, 상기 리드 신호에 응답하여 상기 카운팅된 신호를 저장하고 상기 프리앰블 사이클 신호를 발생하는 것을 특징으로 한다.
이하, 첨부한 도면을 참고로 하면 본 발명의 반도체 메모리 장치, 이 장치의 출력 데이터 스트로우브 신호 발생 방법, 및 이 장치를 구비한 메모리 시스템을 설 명하면 다음과 같다.
도1은 본 발명의 메모리 시스템의 실시예의 구성을 나타내는 블록도로서, 메모리 제어부(100) 및 n개의 반도체 메모리 장치들(200-1 ~ 200-n)로 구성되어 있다.
도1에 나타낸 블록들 각각의 기능을 설명하면 다음과 같다.
메모리 제어부(100)는 반전 칩 선택신호들(CSB1, ..., CSBn), 클럭신호(CLK), 명령 신호(COM), 어드레스 신호(ADD), 입력 데이터 신호(DIN), 및 입력 데이터 스트로우브 신호(DQSI)를 출력하고, 출력 데이터 신호(DOUT) 및 출력 데이터 스트로우브 신호(DQSO)를 입력한다. n개의 반도체 메모리 장치들(200-1 ~ 200-n) 각각은 클럭신호(CLK), 명령 신호(COM), 어드레스 신호(ADD), 입력 데이터 신호(DIN), 및 입력 데이터 스트로우브 신호(DQSI)를 공통으로 수신하고, 반전 칩 선택신호들(CSB1, CSB2, ..., CSBn)을 각각 수신한다. 그리고, 출력 데이터 스트로우브 신호(DQSO) 및 출력 데이터 신호(DOUT)를 출력한다.
도1에 나타낸 바와 같이 본 발명의 메모리 시스템은 반전 칩 선택신호들(CSB1, CSB2, ..., CSBn)에 응답하여 n개의 반도체 메모리 장치들(200-1 ~ 200-n) 각각이 선택된다. 그리고, 클럭신호(CLK), 명령 신호(COM), 어드레스 신호(ADD)에 응답하여 선택된 하나의 반도체 메모리 장치(200-1 ~ 200-n)에 대한 라이트 동작 또는 리드 동작을 수행한다.
도2는 도1에 나타낸 반도체 메모리 장치의 일실시예의 구성을 나타내는 블록도로서, 반도체 메모리 장치의 내부 블록들중 출력 데이터 스트로우브 신호(DQSO) 를 발생하는 것과 관련되는 블록들만을 나타낸 것으로, 명령어 디코더(10), 모드 설정부(12), 프리앰블 사이클 계산기(14), 및 출력 데이터 스트로우브 신호(DQSO) 발생기(16)로 구성되어 있다.
도2에 나타낸 블록들 각각의 기능을 설명하면 다음과 같다.
명령어 디코더(10)는 클럭신호(CLK)에 응답하여 반전 칩 선택신호(CSB) 및 명령 신호(COM)를 수신하고 디코딩하여 더미 리드 신호(DRD), 리드 신호(RD), 및 모드 설정 신호(MRS)를 발생한다. 모드 설정부(12)는 모드 설정 신호(MRS)에 응답하여 어드레스 신호(ADD)를 수신하고 디코딩하여 버스트 길이 신호(BL), 캐스 레이턴시 신호(CL), 및 최대 프리앰블 사이클 신호(NPRE)를 발생한다. 모드 설정 신호(MRS)에 응답하여 인가되는 어드레스 신호(ADD)는 모드 설정 코드이며, 메모리 셀(미도시)의 어드레스 신호는 아니다. 그리고, 최대 프리앰블 사이클 신호(NPRE)는 최대 프리앰블 사이클의 수를 나타내고, 버스트 길이 신호(BL)는 버스트 길이를 지정하는 신호이고, 캐스 레이턴시 신호(CL)는 캐스 레이턴시를 지정하는 신호이다. 예를 들어, 버스트 길이를 4 및 8로 설정하는 것이 가능하다고 하면, 모드 설정부(12)는 버스트 길이 4에 해당하는 모드 설정 코드가 입력되면 버스트 길이 신호(BL4)를 "하이"레벨로 하고, 버스트 길이 8에 해당하는 모드 설정 코드가 입력되는 버스트 길이 신호(BL8)를 "하이"레벨로 한다. 프리앰블 사이클 계산기(14)는 더미 리드 신호(DRD), 리드 신호(RD), 최대 프리앰블 사이클 신호(NPRE), 및 버스트 길이 신호(BL)를 수신하여 프리앰블 사이클의 수를 계산하여 프리앰블 사이클 신호(PREC)를 발생한다. 즉, 프리앰블 사이클 계산기(14)는 더미 리드 신호(DRD)와 리 드 신호(RD)사이의 사이클의 수에서 버스트 길이에 해당하는 사이클의 수를 뺀 수를 프리앰블 사이클의 수로 계산하여 프리앰블 사이클 신호(PREC)를 발생하고, 이때 계산되는 프리앰블 사이클의 수는 최대 프리앰블 사이클의 수를 초과할 수 없다. 출력 데이터 스트로우브 신호 발생기(16)는 프리앰블 사이클 신호(PREC), 버스트 길이 신호(BL), 및 캐스 레이턴스 신호(CL)를 수신하여 출력 데이터 스트로우브 신호(DQSO)를 발생한다. 즉, 출력 데이터 스트로우브 신호 발생기(16)는 프리앰블 사이클의 수에 해당하는 사이클만큼 프리앰블 신호를 발생하고 난 후에 버스트 길이에 해당하는 사이클만큼 스트로우브 신호를 발생한다. 그리고, 이때 발생되는 스트로우브 신호는 리드 명령이 인가된 후 캐스 레이턴시에 해당하는 사이클만큼 지연한 후 클럭신호(CLK)에 동기되어 발생된다.
도3은 도2에 나타낸 명령어 디코더의 실시예의 구성을 나타내는 블록도로서, 더미 리드 명령 검출기(10-1), 리드 명령 검출기(10-2), 및 모드 설정 명령 검출기(10-3)로 구성되어 있다.
도3에 나타낸 블록들 각각의 기능을 설명하면 다음과 같다.
더미 리드 명령 검출기(10-1)는 클럭신호(CLK)의 상승 엣지에서 "하이"레벨의 반전 칩 선택신호(CSB), "하이"레벨의 반전 로우 어드레스 스트로우브 신호(RASB), 반전 컬럼 어드레스 스트로우브 신호(CASB), 및 반전 라이트 인에이블 신호(WEB)가 인가되면 더미 리드 신호(DRD)를 발생한다. 리드 명령 검출기(10-2)는 클럭신호(CLK)의 상승 엣지에서 "로우"레벨의 반전 칩 선택신호(CSB), "하이"레벨의 반전 로우 어드레스 스트로우브 신호(RASB), 반전 컬럼 어드레스 스트로우브 신 호(CASB), 및 반전 라이트 인에이블 신호(WEB)가 인가되면 리드 신호(RD)를 발생한다. 그리고, 모드 설정 명령 검출기(10-3)는 "로우"레벨의 반전 칩 선택신호(CSB), 반전 로우 어드레스 스트로우브 신호(RASB), 반전 컬럼 어드레스 스트로우브 신호(CASB), 및 반전 라이트 인에이블 신호(WEB)가 인가되면 모드 설정 신호(MRS)를 발생한다.
도4a는 도2에 나타낸 프리앰블 사이클 계산기의 일실시예의 구성을 나타내는 블록도로서, 카운터 인에이블 신호 발생기(14-1), 프리앰블 카운터(14-2), 및 레지스터(14-3)로 구성되어 있다.
도4a에 나타낸 블록들 각각의 기능을 설명하면 다음과 같다.
카운터 인에이블 신호 발생기(14-1)는 더미 리드 신호(DRD)와 리드 신호(RD)에 응답하여 토글링하는 인에이블 신호(EN)를 발생한다. 이때 발생되는 인에이블 신호(EN)는 더미 리드 신호(DRD) 또는 리드 신호(RD)가 입력되면 클럭신호(CLK)에 응답하여 버스트 길이에 해당하는 사이클만큼 지연된 후에 활성화되고, 다음 더미 리드 신호(DRD) 또는 리드 신호(RD)에 응답하여 비활성화된다. 프리앰블 사이클 카운터(14-2)는 인에이블 신호(EN)에 응답하여 인에이블되고 클럭신호(CLK)에 응답하여 카운팅 동작을 수행한다. 그리고, 카운팅된 값이 최대 프리앰블 사이클의 수가 되면 카운팅 동작을 중지한다. 레지스터(14-3)는 초기에 최대 프리앰블 사이클 신호(NPRE)를 저장하고, 이 후 리드 신호(RD)에 응답하여 프리앰블 사이클 카운터(14-2)로부터 출력되는 값을 저장하고, 이 값을 프리앰블 사이클 신호(PREC)로 발생한다.
도4b는 도2에 나타낸 프리앰블 사이클 계산기의 다른 실시예의 구성을 나타내는 블록도로서, 도4a의 프리앰블 사이클 카운터(14-2)를 프리앰블 사이클 카운터(14-2')로 대체하여 구성되어 있다.
도4b의 블록들중 도4a의 블록들과 동일한 번호를 가진 블록들의 기능은 동일하므로 설명을 생략하기로 하고, 대체되는 블록의 기능에 대해서만 설명하기로 한다.
프리앰블 사이클 카운터(14-2')는 인에이블 신호(EN)에 응답하여 인에이블되고 클럭신호(CLK)에 응답하여 카운팅 동작을 수행한다. 이때, 프리앰블 사이클 카운터(14-2')는 소정 값까지만을 카운팅한다.
도5는 도4a, b에 나타낸 카운팅 인에이블 신호 발생기의 실시예의 구성을 나타내는 것으로, 논리합 게이트(20), 버스트 길이 지연기(22), 및 래치(24)로 구성되어 있다. 논리합 게이트(20)는 NOR게이트(NOR)와 인버터(I1)로 구성되고, 래치(24)는 인버터들(I2, I3), 및 NAND게이트들(NA1, NA2)로 구성되어 있다.
도5에 나타낸 블록들 각각의 기능을 설명하면 다음과 같다.
논리합 게이트(20)는 더미 리드 신호(DRD)와 리드 신호(RD)를 논리합하여 신호(b)를 발생한다. 버스트 길이 지연기(22)는 논리합 게이트(20)의 출력신호(b)를 클럭신호(CLK)에 응답하여 버스트 길이 신호(BL)에 해당하는 사이클만큼 지연하여 신호(a)를 발생하고 신호(bb)에 응답하여 리셋된다. 만일 반도체 메모리 장치가 더블 데이터 레이트로 동작하는 경우에, 버스트 길이가 4이면 2사이클만큼 지연하고, 버스트 길이가 8이면 4사이클만큼 지연한다. 래치(24)는 신호(a)가 활성화되면 인 에이블 신호(EN)를 활성화하고, 신호(b)가 활성화되면 인에이블 신호(EN)를 비활성화한다.
도6은 도5에 나타낸 버스트 길이 지연기의 실시예의 구성을 나타내는 것으로, D플립플롭들(DF1, DF2, DF3, DF4) 및 스위치들(SW1 ~ SW4)로 구성되어 있다.
도6은 반도체 메모리 장치가 더블 데이터 레이트로 동작하고 버스트 길이가 4, 8로 가변되는 경우의 구성을 나타내는 것으로, 버스트 길이가 4로 설정되면 버스트 길이 신호(BL4)가 "하이"레벨로 되고, 버스트 길이가 8로 설정되면 버스트 길이 신호(BL8)가 "하이"레벨로 된다.
버스트 길이 신호(BL4)가 "하이"레벨로 되고, 버스트 길이 신호(BL8)가 "로우"레벨로 되면, 스위치(SW1)가 온되고, 스위치들(SW2 ~ SW4)이 오프된다. 이 경우에는 D플립플롭들(DF1, DF2)이 동작하여 신호(b)를 2사이클만큼 지연하여 신호(a)를 발생하고, 신호(bb)에 응답하여 리셋된다.
반면에, 버스트 길이 신호(BL4)가 "로우"레벨로 되고, 버스트 길이 신호(BL8)가 "하이"레벨로 되면, 스위치(SW1)가 오프되고, 스위치들(SW2 ~ SW4)가 온된다. 이 경우에는 4개의 D플립플롭들(DF1 ~ DF4)이 클럭신호(CLK)에 응답하여 신호(b)를 4사이클만큼 지연하여 신호(a)를 발생하고, 신호(bb)에 응답하여 리셋된다.
도7a는 도4a에 나타낸 프리앰블 사이클 카운터의 실시예의 구성을 나타내는 블록도로서, 논리곱 게이트(30), 카운터(32), 및 비교기(34)로 구성되고, 논리곱 게이트(30)는 NAND게이트(NA3)와 인버터(I4)로 구성되고, 카운터(32)는 플립플롭들(FF1 ~ FF3)로 구성된다.
도7a는 반도체 메모리 장치의 최대 프리앰블 사이클 신호(NPRE)가 3비트로 구성되는 경우의 구성을 나타내는 것이다.
도7a에 나타낸 블록들 각각의 기능을 설명하면 다음과 같다.
논리곱 게이트(30)는 신호(c)에 응답하여 클럭신호(CLK)를 발생한다. 카운터(32)는 "로우"레벨의 인에이블 신호(EN)에 응답하여 리셋되고, "하이"레벨의 인에이블 신호(EN)가 발생되면 논리곱 게이트(30)의 출력신호에 응답하여 카운팅 동작을 수행하여 프리앰블 사이클의 수에 해당하는 3비트의 신호(Q1 ~ Q3)를 발생한다. 비교기(34)는 3비트의 신호(Q1 ~ Q3)가 3비트의 최대 프리앰블 사이클 신호(NPRE1, NPRE2, NPRE3)와 동일하면 "로우"레벨의 신호(c)를 발생한다. 결과적으로, 비교기(34)가 "로우"레벨의 신호(c)를 발생하면 논리곱 게이트(30)의 출력신호가 "로우"레벨이 되고, 이에 따라 플립플롭들(FF1 ~ FF3)이 카운팅 동작을 수행하지 않게 되고, 신호(Q1 ~ Q3)는 인에이블 신호(EN)가 "로우"레벨로 디스에이블될 때까지 최종 카운팅된 신호(Q1 ~ Q3)를 유지하고, 인에이블 신호(EN)가 "로우"레벨로 디스에이블되면 신호(Q1 ~ Q3)가 "로우"레벨로 리셋된다. 즉, 만일, 최대 프리앰블 사이클 신호(NPRE)가 "101"이면, 카운터(32)는 인에이블 신호(EN)가 "하이"레벨을 유지하는 동안 클럭신호(CLK)에 응답하여 "101"까지를 카운팅하고, 이 후에는 클럭신호(CLK)가 발생되지 않으므로 "101"을 유지하고, 인에이블 신호(EN)가 "로우"레벨로 디스에이블되면 리셋되어 "000"의 신호(Q1 ~ Q3)를 발생한다.
도7b는 도4b에 나타낸 프리앰블 사이클 카운터의 실시예의 구성을 나타내는 블록도로서, 도7a의 비교기(34)를 비교기(34')로 대체하여 구성되어 있다.
도7b의 블록들중 도7a의 블록들과 동일한 번호를 가진 블록들의 기능은 동일하므로 설명을 생략하기로 하고, 대체되는 블록의 기능에 대해서만 설명하기로 한다.
비교기(34')는 3비트의 신호(Q1 ~ Q3)가 소정 값이 되면 "로우"레벨의 신호(c)를 발생한다. 예를 들면, 비교기(34')는 3비트의 신호(Q1 ~ Q3)가 "101"이 되면 이를 검출하여 "로우"레벨의 신호(c)를 발생하도록 구성하거나, "110"이 되면 이를 검출하여 "로우"레벨의 신호(c)를 발생하도록 구성한다. 이는 인버터 또는 NAND게이트와 같은 간단한 논리 게이트들을 사용하여 구성하는 것이 가능하다.
도8은 도7a, b에 나타낸 플립플롭의 실시예의 구성을 나타내는 것으로, 논리곱 게이트(40), XOR게이트(XOR), 및 D플립플롭(DF5)으로 구성되어 있다. 그리고, 논리곱 게이트(40)는 NAND게이트(NA4), 및 인버터(I5)로 구성되어 있다.
도8에 나타낸 구성의 기능을 설명하면 다음과 같다.
논리곱 게이트(40)는 입력 단자(Ci)와 카운팅 출력 단자(Qi)로 인가되는 신호를 논리곱하여 출력 단자(Co)로 신호를 발생한다. XOR게이트(XOR)는 입력 단자(Ci)와 카운팅 입력단자(Qi-1)로 인가되는 신호를 배타 논리합하여 두 개의 입력이 같으면 "로우"레벨의 신호를 발생하고, 다르면 "하이"레벨의 신호를 발생한다. D플립플롭(DF5)은 리셋 단자(RE)로 인가되는 인에이블 신호(EN)의 하강 엣지에 응답하여 리셋되고, 클럭신호(CLK)에 응답하여 XOR게이트(XOR)의 출력신호를 래치하여 카운팅 출력단자(Qi)로 출력한다.
즉, 도8에 나타낸 플립플롭은 입력 단자(Ci) 및 카운팅 출력 단자(Qi)로 "하 이"레벨의 신호가 발생되면 출력 단자(Co)로 "하이"레벨의 신호를 발생하고, 입력 단자(Ci)로 인가되는 신호와 카운팅 입력 단자(Qi-1)로 인가되는 신호가 서로 다르면 클럭신호(CLK)에 응답하여 "하이"레벨의 신호를 래치하여 "하이"레벨의 카운팅 출력신호(Qi)를 발생한다.
도9는 본 발명의 반도체 메모리 장치의 동작을 설명하기 위한 동작 타이밍도로서, 메모리 제어부(100)에 2개의 반도체 메모리 장치들(200-1, 200-2)이 연결된 경우의 동작을 나타내는 것이다. 또한, 더블 데이터 레이트로 동작하고, 캐스 레이턴시가 6으로, 버스트 길이가 4로 설정되고, 최대 프리앰블 사이클 신호(NPRE)가 "100"로 설정되어 있는 경우의 동작을 나타내는 것이다.
도9에서, CLK, COM은 반도체 메모리 장치들(200-1, 200-2)로 공통으로 인가되는 클럭신호 및 명령 신호를 각각 나타내고, CSB1은 반도체 메모리 장치(200-1)로 인가되는 반전 칩 선택신호를, CSB2는 반도체 메모리 장치(200-2)로 인가되는 반전 칩 선택신호를 각각 나타낸다. 그리고, RD1, DRD1, EN1, Q11 ~ Q13, PREC1은 반도체 메모리 장치(200-1)의 내부에서 발생되는 신호들을, RD2, DRD2, EN2, Q21 ~ Q23, PREC2는 반도체 메모리 장치(200-2)의 내부에서 발생되는 신호들을 나타낸다. DQSO, DOUT는 반도체 메모리 장치들(200-1, 200-2)로부터 출력되는 출력 데이터 스트로우브 신호 및 출력 데이터를 각각 나타낸다.
클럭신호(CLK)의 상승엣지에서 "로우"레벨의 반전 칩 선택신호(CSB1) 및 리드 명령을 지정하는 명령 신호(COM)가 인가되면 반도체 메모리 장치(200-1)의 명령어 디코더(10)가 리드 신호(RD1)를 발생하고, 반도체 메모리 장치(200-2)의 명령어 디코더(10)가 더미 리드 신호(DRD2)를 발생한다. 그러면, 반도체 메모리 장치(200-1)의 레지스터(14-3)는 리드 신호(RD1)에 응답하여 프리앰블 사이클 카운터(14-2 또는14-2')로부터 출력되는 설정된 프리앰블 초기값인 "100"의 신호(Q11 ~ Q13)를 프리앰블 사이클 신호(PREC1)로 발생한다.
따라서, 기간(T1)에서 반도체 메모리 장치(200-1)는 4사이클의 프리앰블 신호를 발생하고, 기간(T2)에서 스트로우브 신호와 함께 출력 데이터(DOUT)를 발생한다.
그리고, 반도체 메모리 장치들(200-1, 200-2) 각각의 카운터 인에이블 신호 발생기(14-1)는 버스트 길이에 해당하는 사이클만큼, 즉, 2사이클만큼 지연된 후에 인에이블 신호들(EN1, EN2)을 활성화한다. 그러면, 반도체 메모리 장치들(200-1, 200-2) 각각의 프리앰블 사이클 카운터(14-2 또는 14-2')가 클럭신호(CLK)에 응답하여 카운팅 동작을 수행한다. 첫 번째 리드 명령을 지정하는 명령 신호(COM)가 인가된 후 3사이클 후에 클럭신호(CLK)의 상승엣지에서 "로우"레벨의 반전 칩 선택신호(CSB2) 및 리드 명령을 지정하는 명령 신호(COM)가 인가되면 반도체 메모리 장치(200-2)의 명령어 디코더(10)가 리드 신호(RD2)를 발생하고, 반도체 메모리 장치(200-1)의 명령어 디코더(10)가 더미 리드 신호(DRD1)를 발생한다. 그러면, 반도체 메모리 장치들(200-1, 200-2) 각각의 카운터 인에이블 신호 발생기(14-1)는 인에이블 신호들(EN1, EN2)을 비활성화한다. 그러면, 반도체 메모리 장치들(200-1, 200-2) 각각의 프리앰블 사이클 카운터(14-2 또는 14-2')의 카운팅 동작이 종료되고, "001"의 신호(Q11 ~ Q13)를 발생한다. 반도체 메모리 장치(200-2)의 레지스터(14- 3)는 리드 신호(RD2)에 응답하여 "001"의 신호를 프리앰블 사이클 신호(PREC2)로 발생한다. 즉, 리드 신호(RD2)가 더미 리드 신호(DRD2)로부터 3사이클 후에 인에이블되고, 버스트 길이(BL)가 4로서 2사이클에 해당하므로, 프리앰블 사이클은 3사이클에서 2사이클을 뺀 1사이클이 된다.
따라서, 기간(T3)에서 반도체 메모리 장치(200-2)는 1사이클의 프리앰블 신호를 발생하고, 기간(T4)에서 스트로우브 신호와 함께 출력 데이터(DOUT)를 발생한다.
상술한 바와 같은 동작을 수행함에 의해서, 기간(T5)에서 반도체 메모리 장치(200-1)는 "011"의 프리앰블 사이클 신호(PREC1)가 발생되므로 3사이클의 프리앰블 신호를 발생하고, 기간(T6)에서 스트로우브 신호와 함께 출력 데이터(DOUT)를 발생한다. 즉, 리드 신호(RD1)가 더미 리드 신호(DRD1)로부터 5사이클 후에 인에이블되고, 버스트 길이(BL)가 4로서 2사이클에 해당하므로, 프리앰블 사이클은 5사이클에서 2사이클을 뺀 3사이클이 된다. 기간(T7)에서 반도체 메모리 장치(200-2)는 "000"의 프리앰블 사이클 신호(PREC2)가 발생되므로 프리앰블 신호를 발생하지 않게 되고, 스트로우브 신호와 함께 출력 데이터(DOUT)를 발생한다. 즉, 기간(T7)에서 반도체 메모리 장치(200-2)로부터 출력되는 데이터(DOUT)는 기간(T6)의 스트로우브 신호가 반도체 메모리 장치(200-2)의 프리앰블 신호가 되어 스트로우브 신호와 출력 데이터의 타이밍이 일치하게 된다. 즉, 리드 신호(RD2)가 더미 리드 신호(DRD2)로부터 2사이클 후에 인에이블되고, 버스트 길이(BL)가 4로서 2사이클에 해당하므로, 프리앰블 사이클은 2사이클에서 2사이클을 뺀 0사이클이 된다.
또한, 메모리 제어부(100)가 버스트 길이에 해당하는 사이클만큼의 지연시간을 가지고 반도체 메모리 장치들(200-1, 200-1)로 연속적인 리드 명령을 인가하는 것이 가능하다. 이에 따라, 데이터 버스의 효율성이 높아지게 된다.
상술한 동작 타이밍도에 나타낸 바와 같이 본 발명의 메모리 시스템은 프리앰블 사이클이 가변됨으로써 2개의 반도체 메모리 장치들(200-1, 200-2)로부터 출력되는 스트로우브 신호와 프리앰블 신호사이의 충돌이 발생하지 않게 된다.
상술한 실시예에서는 메모리 제어부(100)에 2개의 반도체 메모리 장치들(200-1, 200-2)연결되어 구성되는 경우를 이용하여 설명하였지만, 3개이상의 반도체 메모리 장치들이 연결되는 경우에도 동일한 동작을 수행한다.
상술한 실시예의 반도체 메모리 장치의 출력 데이터 스트로우브 신호 발생 방법은 더블 데이터 레이트로 동작하고, 버스트 길이가 가변되는 경우를 예로 들어 설명하였으나, 싱글 또는 쿼드 데이터 레이트로 동작하고 버스트 길이가 가변되는 경우 및 싱글 또는 쿼드 데이터 레이트로 동작하고 버스트 길이가 고정되는 경우에도 적용가능하다. 예를 들어, 버스트 길이가 고정되는 경우에는 도5의 버스트 길이 지연기가 고정된 버스트 길이에 해당하는 사이클만큼 지연되도록 설계하면 된다.
그리고, 상술한 실시예에서는 메모리 제어부에 복수개의 반도체 메모리 장치들이 연결되는 경우를 예로 들어 설명하였으나, 메모리 제어부에 메모리 모듈이 연결되는 경우에도 적용가능하다. 즉, 메모리 제어부에 듀얼 랭크 메모리 모듈이 연결되는 경우에 반전 칩 선택신호만 서로 다른 라인들을 통하여 모듈의 전면부와 후면부에 각각 인가되고, 다른 신호들은 공통 라인들을 통하여 메모리 제어부와 모듈 의 전면부와 후면부사이에 전송되므로 본 발명이 적용될 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.