본 발명에 따른 반도체 기억 장치는 각각 독립적으로 리프레시되는 복수의 메모리 블록과, 복수인 n개의 데이터의 각각을 연속적으로 입출력하는 복수 m개의 데이터 핀과, 상기 데이터 핀의 데이터를 병렬과 직렬 사이에서 변환하는 변환 회로와, 상기 m개의 데이터 핀에 대하여 상기 n개의 데이터가 병렬로 전개된 m ×n 가닥의 데이터 버스선과, 상기 메모리 블록의 다른 m개에 각각 접속되는 m 가닥의 어드레스 선택선이며, 상기 m개의 데이터 핀이 상기 m개의 메모리 블록에 각각 대응하고, 1 가닥의 상기 어드레스 선택선을 활성화되는 경우에, 대응하는 상기 메모리 블록에 대하여 상기 n개의 데이터가 입출력되도록, 상기 데이터 버스선을 상기 메모리 블록에 접속하는 m 가닥의 어드레스 선택선과, 상기 n개의 데이터마다 상기 m개의 데이터 핀에 대응하여 상기 m개의 메모리 블록으로부터 판독한 m개의 데이터와 패리티용 메모리 블록으로부터 판독한 패리티 비트에 대하여 패리티 체크를 수행하는 패리티 데이터 비교 회로를 포함한다.
상기 반도체 기억 장치에 있어서는, 하나의 어드레스 선택선에 복수의 데이터를 대응시키는 동시에, 복수의 어드레스선을 동시에 활성화하는 구성에 있어서, n개의 데이터마다 m개의 메모리 블록으로부터 판독한 m개의 데이터와 패리티용 메모리 블록으로부터 판독한 패리티 비트에 대하여 패리티 체크를 수행함으로써 리프레시 동작시의 에러 정정 기능을 실현할 수 있다.
또한, 본 발명이 어느 측면에 따르면, 상기 반도체 기억 장치는 데이터 기록시에 n개의 데이터 중 어느 하나를 m개의 데이터 핀의 전부에 대하여 마스크하는 마스크 회로를 포함한다. 상기 반도체 기억 장치와 같이, 1 가닥의 어드레스 선택선에 대하여 n개의 데이터가 병렬로 접속되고, 또한 m 가닥의 어드레스 선택선이 m개의 데이터 핀에 대응하는 구성에 있어서는, n개의 데이터 중 어느 하나가 완전히 누락되어도 패리티 체크는 m개의 데이터에 대하여 실행하기 때문에, 문제없이 패리티 체크를 수행할 수 있다.
또한, 본 발명에 따르면, 반도체 기억 장치는 각각 독립적으로 리프레시되는 복수의 메모리 블록과, 복수 n개의 데이터의 각각을 연속적으로 입출력하는 복수 m개의 데이터 핀과, 상기 데이터 핀의 데이터를 병렬과 직렬 사이에서 변환하는 변환 회로와, 상기 m개의 데이터 핀에 대하여 상기 n개의 데이터가 병렬로 전개된 m×n 가닥의 데이터 버스선과, 상기 메모리 블록의 다른 n개에 각각 접속되어 동시 활성화되는 n 가닥의 어드레스 선택선이며, 상기 n개의 데이터가 상기 n개의 메모리 블록에 각각 대응하고, 1 가닥의 상기 어드레스 선택선이 활성화되는 경우에, 대응하는 상기 메모리 블록에 대하여 상기 m개의 데이터 핀에 대응하는 m개의 데이터가 입출력되도록, 상기 데이터 버스선을 상기 메모리 블록에 접속하는 n 가닥의 어드레스 선택선과, 상기 m개의 데이터마다 상기 n개의 메모리 블록으로부터 판독한 상기 n개의 데이터와 패리티용 메모리 블록으로부터 판독한 패리티 비트에 대하여 패리티 체크를 수행하는 패리티 데이터 비교 회로와, 데이터 기록시에 상기 m개의 데이터 중 어느 하나를 상기 n개의 데이터의 전부에 대하여 마스크하는 마스크 회로를 포함한다.
상기 반도체 기억 장치와 같이, 1 가닥의 어드레스 선택선에 대하여 m개의 데이터가 병렬로 접속되고, 또한 n 가닥의 어드레스 선택선이 n개의 데이터에 대응하는 구성에 있어서는, m개의 데이터 중 어느 하나가 완전히 누락되어도 패리티 체크는 n개의 데이터에 대하여 실행하기 때문에, 문제없이 패리티 체크를 수행할 수 있다.
이하에, 본 발명의 실시예를 첨부의 도면을 이용하여 상세히 설명한다.
도 2는 본 발명에 따른 반도체 기억 장치의 구성을 도시한 블록도이다.
도 2의 반도체 기억 장치는 커맨드 입력 회로(11), 어드레스 입력 회로(12), 로우 디코더(13), 칼럼 디코더(14), 데이터 입출력 회로(15), 리프레시 신호 생성 회로(2) 및 내부 어드레스 생성 회로(3), 패리티 생성 회로(6), 패리티 데이터 비교 회로(7), 메모리 셀 어레이(8), 칼럼 드라이버(16), 라이트 앰프 및 리드 앰프 등의 데이터 버스 앰프부(17) 및 메인 워드 드라이버 및 센스 앰프열 구동 회로(18)를 포함한다.
리프레시 신호 생성 회로(2)는 리프레시 오실레이터(21) 및 분주기(22)를 포함한다. 커맨드 입력 회로(11)는 어드레스 입력 회로(12)에, 외부의 CPU 등으로부터 수신한 데이터 판독 커맨드나 기록 커맨드에 따라 어드레스를 수신하기 위한 제어 신호를 출력한다. 수신된 어드레스는 로우 디코더(13) 및 칼럼 디코더(14)에 의해 디코드되고, 메인 워드 드라이버 및 센스 앰프열 구동 회로(18) 및 칼럼 드라이버(16)에 공급된다. 각 회로 및 유닛의 동작은 커맨드 입력 회로(11)가 외부로부터 수신한 커맨드에 기초하여 제어된다. 즉, 커맨드 입력 회로(11)가 커맨드를 디코드하여 제어 신호를 생성하고, 이 제어 신호를 각 회로 및 유닛에 공급함으로써 각 회로 및 유닛의 동작을 제어한다.
본 발명에 따른 반도체 기억 장치에서는, 반도체 기억 장치의 내부에 있어서 리프레시 신호 생성 회로(2)에 의해 리프레시 신호를 생성하고, 그 리프레시 신호에 따라 내부 어드레스 생성 회로(3)가 생성하는 어드레스에 대하여 리프레시 동작을 실행한다.
데이터 기록시에는 패리티 생성 회로(6)에 의해 패리티 비트를 생성하여 메모리 셀 어레이(8)에 기억한다. 리프레시 동작과 통상의 데이터 판독 동작 또는 데이터 기록 동작이 중복된 경우라도, 리프레시 동작을 실행한다. 리프레시 동작중인 블록으로부터의 판독 데이터는 불확정 데이터이기 때문에, 이 데이터와 판독한 패리티 비트를 비교하여 패리티 체크를 수행하고, 패리티 에러의 경우에는, 리프레시 동작중인 블록으로부터 판독한 데이터를 반전함으로써 에러를 정정한다. 패리티 비트와의 비교 및 에러 정정은 패리티 데이터 비교 회로(7)에 의해 실행된다.
도 3은 본 발명에 따른 메모리 셀 어레이(8)의 구성을 도시하는 회로도이다.
도 3에 도시된 회로는 메모리 셀 어레이(8)의 일부에 대응하고, DQ 핀이 DQ0 및 DQ1의 2 가닥 설치되는 경우에 해당한다. 도 3의 회로는 복수의 셀 게이트 트랜지스터(30), 복수의 메모리 셀(31), 복수의 센스 앰프(32-0 내지 32-5), 복수의 AND 회로(33-0 내지 33-5), 복수의 워드선(WL0 내지 WL2), 복수의 비트선(BL0 내지 BL5), 복수의 칼럼선(CL0 내지 CL2) 및 데이터 버스(DB)를 포함한다. 비트선(BL0 및 BL1)에 각각 접속되는 센스 앰프(32-0 및 32-1)는 데이터 핀(DQ0)에 대응한다. 이들 센스 앰프(32-0 및 32-1)는 데이터 핀(DQ0)에 대응하는 칼럼선(CL0)이 활성화 되면 선택되어 데이터 버스(DB)에 접속된다. 센스 앰프(32-0 및 32-1)의 데이터는 데이터 핀(DQ0)의 시간축 방향에 있어서의 제1 번째 데이터(비트1) 및 제2 번째 데이터(비트2)에 대응한다.
마찬가지로, 비트선(BL2 및 BL3)에 각각 접속되는 센스 앰프(32-2 및 32-3)는 데이터 핀(DQ1)에 대응한다. 이들 센스 앰프(32-2 및 32-3)는 데이터 핀(DQ1)에 대응하는 칼럼선(CL1)이 활성화되면 선택되어 데이터 버스(DB)에 접속된다. 센스 앰프(32-2 및 32-3)의 데이터는 데이터 핀(DQ1)의 시간축 방향에 있어서의 제1 데이터(비트1) 및 제2 데이터(비트2)에 대응한다.
더욱이, 비트선(BL4 및 BL5)에 각각 접속되는 센스 앰프(32-4 및 32-5)는 데이터 핀(DQ0 및 DQ1)의 데이터의 패리티 비트에 대응한다. 이들 센스 앰프(32-4 및 32-5)는 패리티 비트에 대응하는 칼럼선(CL2)이 활성화되면 선택되어 데이터 버스(DB)에 접속된다. 센스 앰프(32-4 및 32-5)의 데이터는 각각 시간축 방향에 있어서의 제1 번째 데이터(비트1)에 대한 패리티 비트 및 제2 번째 데이터(비트2)에 대한 패리티 비트이다. 또 여기서, 패리티 비트는 XOR 연산으로 계산되기 때문에, 도면에서는 패리티 비트를 XOR로서 표시하고 있다.
여기서 워드선(WL1 내지 WL2)은 데이터 핀(DQ0), 데이터 핀(DQ1) 및 패리티 비트에 대응하여 별개로 설치된다. 따라서, 데이터 핀(DQ0), 데이터 핀(DQ1) 및 패리티 비트에 대하여, 독립적으로 리프레시 동작을 실행하는 것이 가능하다. 예컨대, 데이터 핀(DQ0)에 대하여 리프레시 동작을 실행중에 데이터 판독 동작이 요구되는 경우에는, 데이터 핀(DQ0)의 데이터, 데이터 핀(DQ1)의 데이터 및 패리티 비 트를 판독하여 패리티 체크를 실행하고, 필요에 따라 데이터 핀(DQ0)의 데이터에 대한 에러 정정을 수행한다. 이 패리티 체크 및 에러 정정은 시간축 방향에 있어서의 제1 번째 데이터(비트1)와 제2 번째 데이터(비트2)에 대하여, 따로따로 실행된다.
또한, 복수의 AND 회로(33-0 내지 33-5)는 칼럼선의 신호와 마스크 신호와의 AND를 취하여 센스 앰프를 선택하기 위해서 설치된다. 여기서 마스크 신호(마스크-비트1 및 마스크-비트2)는 기록시에 지정한 데이터를 마스크하여 메모리 셀에의 기록이 실행되지 않도록 제어하기 위한 신호이다.
도 4는 도 3의 구성에 있어서 데이터를 기록할 때의 동작을 도시한 도면이다.
도 4에 도시된 바와 같이, 데이터 핀(DQ0)에 제1 데이터(비트1) 및 제2 데이터(비트2)가 공급되고, 또한 데이터 핀(DQ1)에 제1 데이터(비트1) 및 제2 데이터(비트2)가 공급된다. 이들 데이터는 직렬·병렬 변환되어 도 4에 있어서 기록 데이터로서 도시되는 바와 같이, 병렬 데이터로서 센스 앰프(32-0 내지 32-5)에 저장된다. 센스 앰프(32-0 내지 32-5)에 저장된 데이터는 비트선(BL0 내지 BL5)을 통해 도 4에 있어서 메모리 셀로서 도시된 바와 같이, 복수의 메모리 셀(31)에 동시에 저장된다.
도 5는 도 4의 동작에 있어서 제1 번째 데이터를 마스크하는 경우의 동작을 도시한 도면이다.
도 5에 도시된 바와 같이, 데이터 기록시에 제1 데이터(비트1)를 마스크하 면, 기록 데이터로서 도시된 바와 같이, 마스크된 데이터(비트1)는 센스 앰프에 저장되지 않고, 마스크되지 않은 데이터(비트2)만이 센스 앰프에 저장된다. 센스 앰프에 저장된 데이터는 비트선(BL0 내지 BL5)을 통해 도 5에 있어서 메모리 셀로서 도시된 바와 같이, 복수의 메모리 셀(31)에 동시에 저장된다.
도 3을 다시 참조하여 상술한 바와 같이 복수의 AND 회로(33-0 내지 33-5)는 칼럼선의 신호와 마스크 신호와의 AND를 취하여 센스 앰프를 선택하기 위해서 설치된다. 마스크 신호(MASK-비트1)를 로우로 하면, AND 회로(33-0, 33-2 및 33-4)의 출력이 로우가 되고, 칼럼선이 선택되어도 센스 앰프(32-0, 32-2 및 32-4)는 데이터 버스(DB)에 접속되지 않는다. 따라서, 데이터 버스(DB)에 공급되는 제1 데이터(비트1) 및 그것에 대응하는 패리티 비트는 센스 앰프(32-0, 32-2 및 32-4)에 공급되지 않는다. 이와 같이 하여, 마스크 신호(마스크-비트1)를 로우로 함으로써 제1 데이터(비트1)를 마스크할 수 있다. 또한 마찬가지로, 마스크 신호(마스크-비트2)를 로우로 함으로써 제2 데이터(비트2)를 마스크할 수 있다.
도 3의 구성에서는, 하나의 칼럼선에 공통으로 접속되는 센스 앰프는 시간축 방향으로 늘어서는 데이터(비트1 및 비트2)에 대응하고 있다. 또한, 각 칼럼선이 각 데이터 핀(DQ)에 대응하고 있다. 따라서, 도 1(b)에 도시된 바와 같이, 하나의 칼럼선에 복수의 DQ 핀을 대응시키고, 각 칼럼선을 시간축 방향의 각 데이터에 대응시키는 종래의 구성과는 다르다. 이것은 비트 단위로의 마스크 조작, 즉 시간축 방향으로 늘어서는 데이터(비트1 및 비트2) 중 어느 하나를 마스크하는 조작을 실현하기 위해서는 본 발명의 도 3의 구성이 필요하게 되기 때문이다. 만일, 하나의 칼럼선에 공통으로 접속되는 센스 앰프를 복수의 데이터 핀(DQ0 및 DQ1)에 대응시키고, 또한 각 칼럼선을 각 비트에 대응시켜 버리면, 비트 단위에서의 마스크 조작을 한 경우에, 리프레시 동작시의 데이터 정정을 할 수 없게 된다.
즉, 칼럼선(CL0, CL1 및 CL2)을 각각 제1 비트(비트1), 제2 비트(비트2) 및 패리티 비트에 대응시키는 것으로 한다. 이 경우, 예컨대 제1 비트(비트1)를 비트 단위로 마스크해 버리면, 칼럼선(CL0)에 대응하는 제1 비트(비트1)가 복수의 DQ 핀의 전부에 대하여 존재하지 않게 된다. 패리티 체크는 칼럼선(CL0, CL1 및 CL2)의 데이터 사이에서 실행하기 때문에, 비트 단위로 마스크한 경우에는, 패리티 체크 대상의 데이터가 1비트 누락되어 버린다. 따라서, 패리티 체크를 할 수 없게 된다(패리티 비트를 생성할 수 없게 됨).
이상의 이유 때문에, 본 발명에 있어서는, 비트 단위로 마스크를 하는 구성에 있어서는, 하나의 칼럼선을 시간축 방향으로 늘어서는 복수의 데이터 비트에 대응시키고, 복수의 칼럼선을 각각 복수의 데이터 핀(DQ)에 대응시키고 있다. 따라서, 예컨대 제1 비트(비트1)를 비트 단위로 마스크한 경우라도, 제2 비트(비트2)에 대한 패리티 체크를 실행할 수 있다.
상기 설명으로부터 알 수 있지만, 비트 단위가 아니라 반대로 데이터 핀(DQ) 단위로 마스크를 하는 것이라면, 도 3과 같이 복수의 칼럼선을 각각 복수의 데이터 핀(DQ)에 대응시키는 것이 아니라, 복수의 칼럼선을 시간축 방향의 복수의 데이터 비트에 대응시킬 필요가 있다.
도 6은 데이터 핀(DQ) 단위로 마스크를 하는 경우의 본 발명에 따른 메모리 셀 어레이(8)의 구성을 도시하는 회로도이다.
도 6에 도시하는 회로는 복수의 셀 게이트 트랜지스터(30), 복수의 메모리 셀(31), 복수의 센스 앰프(42-0 내지 42-5), 복수의 AND 회로(43-0 내지 43-5), 복수의 워드선(WL0 내지 WL2), 복수의 비트선(BL0 내지 BL5), 복수의 칼럼선(CL0 내지 CL2) 및 데이터 버스(DB)를 포함한다.
센스 앰프(42-0 및 42-1)는 제1 데이터 비트(비트1)에 대응하고, 칼럼선(CL0)이 활성화되면 선택되어 데이터 버스(DB)에 접속된다. 센스 앰프(42-0 및 42-1)의 데이터는 각각 데이터 핀(DQ0 및 DQ1)에 대응한다. 마찬가지로, 센스 앰프(42-2 및 42-3)는 제2 데이터 비트(비트2)에 대응하고, 칼럼선(CL1)이 활성화되면 선택되어 데이터 버스(DB)에 접속된다. 센스 앰프(42-2 및 42-3)의 데이터는 각각 데이터 핀(DQ0 및 DQ1)에 대응한다. 더욱이, 센스 앰프(42-4 및 42-5)는 각각 데이터 핀(DQ0)의 데이터에 대한 패리티 비트 및 데이터 핀(DQ1)의 데이터에 대한 패리티 비트이다.
여기서 워드선(WL0 내지 WL2)은 데이터 비트(비트1), 데이터 비트(비트2) 및 패리티 비트에 대응하여 별개로 설치된다. 따라서, 데이터 비트(비트1), 데이터 비트(비트2) 및 패리티 비트에 대하여, 독립적으로 리프레시 동작을 실행하는 것이 가능하다. 예컨대, 데이터 비트(비트1)에 대하여 리프레시 동작을 실행중에 데이터 판독 동작이 요구되는 경우에는, 데이터 비트(비트1), 데이터 비트(비트2) 및 패리티 비트를 판독하여 패리티 체크를 실행하고, 필요에 따라 데이터 비트(비트1)에 대한 에러 정정을 수행한다. 이 패리티 체크 및 에러 정정은 복수의 데이터 핀(DQ0 및 DQ1)에 대하여, 따로따로 실행된다.
복수의 AND 회로(43-0 내지 43-5)는 칼럼선의 신호와 마스크 신호와의 AND를 취하여 센스 앰프를 선택하기 위해서 설치된다. 도 6의 회로는 데이터 핀(DQ) 단위로 마스크를 하는 구성으로 되어 있다. 따라서, 도 3과 같이 복수의 칼럼선을 각각 복수의 데이터 핀(DQ)에 대응시키는 것이 아니라, 복수의 칼럼선을 시간축 방향의 복수의 데이터 비트에 대응시키고 있다. 따라서, 예컨대 데이터 핀(DQ0)을 데이터 핀 단위로 마스크한 경우라도, 데이터 핀(DQ1)에 대한 패리티 체크를 실행할 수 있다.
상술한 바와 같이, 본 발명에 있어서는, 도 3 혹은 도 6에 도시된 바와 같이, 비트 단위로 마스크를 하는 경우와 데이터 핀 단위로 마스크를 하는 경우에서 메모리 셀 어레이의 회로 배치를 달리하여 리프레시시의 패리티 체크를 적절히 실행할 수 있는 구성으로 되어 있다.
도 7은 비트 단위로 마스크를 하는 경우의 마스크 동작과 메모리 셀 어레이의 회로 배치를 도시한 도면이다. 여기에 도시되는 것은, 데이터 핀(DQ)이 4개 설치되고, 시간축 방향의 데이터 비트가 4비트로 구성되는 경우이다. 도 7(a)에 도시된 바와 같이, 마스크는 비트 단위로 실행되는 것으로 한다. 이 마스크 동작의 경우에는, 메모리 셀 어레이의 회로 배치는 도 7(b)에 도시된 바와 같이 구성될 필요가 있다. 즉, 복수의 어드레스 선택선(예컨대 칼럼선)을 각각 복수의 데이터 핀에 대응시키고, 또한 하나의 어드레스 선택선에 대하여 시간축상의 복수의 데이터 비트를 병렬로 접속한다. 또한 패리티 체크를 복수의 데이터 핀 사이에서 실행하는 구성으로 한다. 이와 같이 함으로써, 예컨대 데이터 비트(비트1)가 비트 단위로 마스크되어 전부 누락되어도 데이터 비트(비트2 내지 비트4)의 각각에 대하여 패리티 체크를 실행할 수 있다.
도 8은 데이터 핀 단위로 마스크를 하는 경우의 마스크 동작과 메모리 셀 어레이의 회로 배치를 도시한 도면이다. 여기에 표시되는 것은 데이터 핀(DQ)이 4개 설치되고, 시간축 방향의 데이터 비트가 4 비트로 구성되는 경우이다. 도 8(a)에 도시된 바와 같이, 마스크는 데이터 핀 단위로 실행되는 것으로 한다. 이 마스크 동작의 경우에는, 메모리 셀 어레이의 회로 배치는 도 8(b)에 도시된 바와 같이 구성될 필요가 있다. 즉, 복수의 어드레스 선택선(예컨대 칼럼선)을 각각 시간축상의 복수의 데이터 비트에 대응시키고, 또한 하나의 어드레스 선택선에 대하여 복수의 데이터 핀을 병렬로 접속한다. 또한 패리티 체크를 시간축상의 복수의 데이터 비트 사이에서 실행하는 구성으로 한다. 이와 같이 함으로써, 예컨대, 데이터 핀(DQ0)의 데이터가 데이터 핀 단위로 마스크되어 전부 누락되어도 데이터 핀(DQ1 내지 DQ3)의 각각에 대하여 패리티 체크를 실행할 수 있다.
도 9는 본 발명의 실시예에 있어서 메모리 코어로부터 데이터 핀까지의 회로 구성을 도시한 도면이다. 도 9의 구성은 비트 단위로 마스크 동작을 실행하는 도 3의 경우에 대응한다. 데이터 핀 단위로 마스크 동작을 실행하는 도 6의 경우라도, 비트와 데이터 핀과의 관계가 교체될 뿐이며, 기본적으로는 동일한 구성이다.
도 9의 회로는 복수의 메모리 블록(51), 각 메모리 블록(51)에 대한 센스 앰프(52), 각 메모리 블록(51)에 대한 워드 디코더(53), 데이터 핀(DQ0)에 대한 칼럼 디코더(54-0), 데이터 핀(DQ1)에 대한 칼럼 디코더(54-1), 패리티 비트에 대한 칼럼 디코더(54-2), 패리티 생성 회로(XORA: 55), XOR 회로(56), 셀렉터 회로(SEL: 57),병렬·직렬 변환 회로(58) 및 DQ0 및 DQ1에 대한 데이터 핀(59)을 포함한다. 도 2의 구성과 대비시키면, 복수의 메모리 블록(51)이 메모리 셀 어레이(8)에 대응하고, 워드 디코더(53)가 메인 워드 드라이버 및 센스 앰프열 구동 회로(18)에 대응하며, 칼럼 디코더(54-0 내지 54-2)가 칼럼 디코더(14)에 대응하고, 패리티 생성 회로(55)가 패리티 생성 회로(6)에 대응한다. 또한 XOR 회로(56) 및 셀렉터 회로(57)가 패리티 데이터 비교 회로(7)에 대응한다. 더욱이, 병렬·직렬 변환 회로(58)가 데이터 입출력 회로(15)에 대응한다.
데이터 핀(59)으로부터 입력되는 데이터는 병렬·직렬 변환 회로(58)에 의해 직렬 데이터에서 병렬 데이터로 변환되어 셀렉터 회로(57)에 공급된다. 셀렉터 회로(57)에 공급된 데이터는 데이터 버스를 통해 센스 앰프(52)에 공급되는 동시에, 패리티 생성 회로(55)에 공급된다. 패리티 생성 회로(55)는 비트 단위로 XOR 연산을 실행하여 패리티 비트를 생성한다. 즉 예컨대, 데이터 핀(DQ0)의 제1 데이터 비트(비트1)와 데이터 핀(DQ1)의 제1 번째 데이터 비트(비트1)와의 XOR 연산을 행하고, 데이터 비트(비트1)용 패리티 비트를 생성한다.
데이터 핀(DQ0)의 데이터는 칼럼 디코더(54-0)에 접속되는 센스 앰프(52)에 공급된다. 또한 데이터 핀(DQ1)의 데이터는 칼럼 디코더(54-1)에 접속되는 센스 앰프(52)에 공급된다. 더욱이 패리티 생성 회로(55)가 생성한 패리티 비트는 칼럼 디코더(54-2)에 접속되는 센스 앰프(52)에 공급된다. 이 때, 선택된 마스크 신호(마 스크 비트0 내지 마스크 비트3)로 마스크 대상의 비트를 지정하고, 지정된 비트의 센스 앰프(52)에의 기록을 금지할 수 있다.
워드 디코더(52)는 지정된 로우 어드레스에 대응하는 워드선(WL)을 선택 활성화한다. 이것에 의해, 센스 앰프(52)의 데이터가 메모리 블록(51)내의 메모리 셀에 저장된다.
데이터 판독시에는 워드 디코더(52)가 지정된 판독 로우 어드레스에 대응하는 워드선(WL)을 선택 활성화한다. 이것에 대응하여 메모리 셀의 데이터가 센스 앰프(52)에 판독된다. 그 후, 지정된 판독 칼럼 어드레스에 대응하여, 칼럼 디코더(54-0 내지 54-2)가 대응하는 칼럼선을 선택 활성화한다. 이것에 의해 센스 앰프(52)의 데이터가 데이터 버스에 판독된다. 이 때, 리프레시 동작이 실행되어 있는 메모리 블록에 있어서는, 센스 앰프(52)의 데이터는 리프레시 대상의 데이터이며, 판독되는 데이터도 리프레시 대상의 데이터가 된다.
상기한 바와 같이 하여 판독된 데이터는 셀렉터 회로(57)에 공급되는 동시에, XOR 회로(56)에 공급된다. XOR 회로(56)는 비트 단위로 XOR 연산을 실행하여 패리티 체크를 행한다. 즉 예컨대, 데이터 핀(DQ0)에 대응하여 판독된 제1 데이터 비트(비트1)와, 데이터 핀(DQ1)에 대응하여 판독된 제1 데이터 비트(비트1)와, 제1 번째 데이터 비트(비트1)의 패리티 비트에 대하여 XOR 연산을 행하고, 데이터 비트(비트1)를 패리티 체크한다. 패리티 체크의 결과가 1이면 에러를 나타내고, O이면 정상을 나타낸다.
셀렉터 회로(57)는 패리티 체크의 결과에 따라 필요하면 비트 단위로 데이터 정정을 수행한다. 예컨대, 데이터 핀(DQ0)에 대응하는 메모리 블록이 리프레시 동작중일 때에, 판독된 제1 데이터 비트(비트1)의 패리티 체크가 에러라면, 데이터 핀(DQ0)에 대응하는 제1 데이터 비트(비트1)를 반전함으로써 에러 정정한다.
이와 같이 하여 판독된 데이터 혹은 판독되어 정정된 데이터는 병렬·직렬 변환 회로(58)에 의해 병렬 데이터에서 직렬 데이터로 변환되어 데이터 핀(59)으로부터 외부로 출력된다.
도 10은 패리티 생성 회로(55)의 구성을 도시하는 회로도이다.
패리티 생성 회로(55)는 XOR 회로(71), 인버터(72) 및 PMOS 트랜지스터 및 NMOS 트랜지스터가 병렬로 접속되는 트랜스퍼 게이트(73)를 포함한다. 기록 동작시에 신호(WR)는 하이 신호로서, 데이터 핀(DQ0)의 데이터 비트{비트x(x=1, 2, 3 or 4)}와 데이터 핀(DQ1)의 데이터 비트(비트x)와의 XOR을 계산하여 패리티 생성 회로(55)의 출력으로서 출력한다. 판독 동작시에 신호(WR)는 로우 신호이며, 트랜스퍼 게이트(73)를 폐쇄하여 메모리 셀 등이 판독되는 패리티 비트와 충돌하지 않도록 패리티 생성 회로(55)로부터의 데이터 출력을 정지한다.
도 11은 셀렉터 회로(57)의 구성을 도시하는 회로도이다.
셀렉터 회로(57)는 NAND 회로(81), 인버터(82 내지 84) 및 PMOS 트랜지스터 및 NMOS 트랜지스터가 병렬로 접속되는 트랜스퍼 게이트(85 내지 88)를 포함한다. 기록 동작시에 신호(WR)는 하이 신호로서, 트랜스퍼 게이트(87)가 도통하고, 트랜스퍼 게이트(88)가 비도통이 된다. 결과로서, 병렬·직렬 변환 회로(58)로부터의 기록 데이터가 데이터 버스에 공급된다.
판독 동작시에 신호(WR)는 로우 신호로서, 트랜스퍼 게이트(87)가 비도통이 되고, 트랜스퍼 게이트(88)가 도통한다. 신호(REFDy)는 데이터 핀{DQy(y=0 or 1)}에 대응하는 판독 데이터가 리프레시 동작중인 메모리 블록으로부터 판독되었는지 여부를 나타내는 신호이며, 신호(REFDy)가 하이 신호인 경우에, 리프레시 동작중인 메모리 블록으로부터 판독된 데이터인 것을 나타낸다. 또한 신호(XOR)는 대응하는 XOR 회로(56)의 출력이며, HIGH인 경우에 패리티 에러를 나타낸다. 이 신호(REFDy 및 XOR)가 양쪽 모두 하이 신호인 경우, NAND 회로(81)의 출력은 로우가 되고, 트랜스퍼 게이트(85)가 개방되게 된다. 따라서 이 경우, 데이터 핀(DQy)에 대하여 판독된 데이터{비트x(x=1, 2, 3 or 4)}의 데이터가 반전되어 병렬·직렬 변환 회로(58)에 공급된다. 즉, 리프레시중의 메모리 블록으로부터 판독된 데이터가 패리티 에러를 나타내는 경우에는, 비트 반전함으로써 에러 정정을 행한다.
도 12는 반도체 기억 장치의 테스트 동작시의 데이터 압축을 나타내는 도면이다.
반도체 기억 장치의 테스트 동작에 있어서는, 시험 시간을 단축하기 위해서 어드레스 선택선을 복수 가닥 동시에 상승하여 데이터를 압축하는 시험 모드가 있다. 본 발명에 있어서, 각 어드레스 선택선{칼럼선(CL0 및 CL1)}에 대하여 시간축 방향의 복수의 데이터가 접속된 경우(도 3의 구성의 경우), 이들 데이터를 AND 회로(91 및 92)로 압축하면, 시간축 방향에 대하여 데이터를 압축하게 된다.
종래의 구성에서는, 각 어드레스 선택선{칼럼선(CL0 및 CL1)}에 대하여 복수의 데이터 핀의 데이터가 접속되어 있기 때문에, 데이터 압축을 하면, 테스트에 사 용하는 데이터 핀수를 감소시킬 수 있지만, 시간 방향으로 데이터 압축이 되는 것은 아니다. 따라서, 본 발명의 도 3에 도시된 구성의 경우에는, 종래의 구성과 비교하여 시험 시간을 단축할 수 있게 된다. 이 상태를 도 13(a) 및 도 13(b)에 도시한다. 도 13(a)에 도시된 바와 같이, 종래의 구성에서는, 시험시의 데이터 압축에 의해, 출력 데이터 패드수를 감소시킬 수 있다. 그것에 대하여, 본 발명의 도 3에 도시된 구성에서는, 도 13(b)에 도시된 바와 같이, 시험시의 데이터 압축에 의해 시험 시간에 필요한 사이클수를 감소시켜 시험 시간을 단축할 수 있다.
이상, 본 발명을 실시예에 기초하여 설명하였지만, 본 발명은 상기 실시예에 의해 한정되지 않고, 특허청구범위에 기재한 범위내에서 여러 가지 변형이 가능하다.