KR20190033429A - 반도체 기억 장치, 및 반도체 기억 장치의 제어 방법 - Google Patents

반도체 기억 장치, 및 반도체 기억 장치의 제어 방법 Download PDF

Info

Publication number
KR20190033429A
KR20190033429A KR1020180105267A KR20180105267A KR20190033429A KR 20190033429 A KR20190033429 A KR 20190033429A KR 1020180105267 A KR1020180105267 A KR 1020180105267A KR 20180105267 A KR20180105267 A KR 20180105267A KR 20190033429 A KR20190033429 A KR 20190033429A
Authority
KR
South Korea
Prior art keywords
verify
memory
circuit
blk
data
Prior art date
Application number
KR1020180105267A
Other languages
English (en)
Other versions
KR102653552B1 (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 르네사스 일렉트로닉스 가부시키가이샤
Publication of KR20190033429A publication Critical patent/KR20190033429A/ko
Application granted granted Critical
Publication of KR102653552B1 publication Critical patent/KR102653552B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0408Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/32Timing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/344Arrangements for verifying correct erasure or for detecting overerased cells
    • G11C16/3445Circuits or methods to verify correct erasure of nonvolatile memory cells

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Read Only Memory (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

[과제] 반도체 기억 장치의 베리파이 처리에 필요한 시간을 단축하는 것이다.
[해결수단] 일 실시형태에 따른 반도체 기억 장치(1)는, 복수의 메모리 블록(11)과, 센스 앰프(HSA)와, 베리파이 회로(VF)를 각각 구비하는 복수의 단위 메모리 어레이(10)를 구비한다. 반도체 기억 장치(1)가 베리파이 처리를 행할 때, 메모리 블록(11)의 메모리 셀(MC)에 베리파이 데이터에 대응한 펄스를 인가함과 아울러, 각각의 베리파이 회로(VF)에 베리파이 데이터에 대응한 기대값 vctrl을 설정한다. 각각의 베리파이 회로(VF)는, 센스 앰프(HSA)로 판독된 데이터와 기대값 vctrl을 비교함으로써 베리파이 처리를 행한다.

Description

반도체 기억 장치, 및 반도체 기억 장치의 제어 방법{SEMICONDUCTOR STORAGE DEVICE AND METHOD FOR CONTROLLING SEMICONDUCTOR STORAGE DEVICE}
본 발명은 반도체 기억 장치, 및 반도체 기억 장치의 제어 방법에 관한 것으로, 예를 들면 베리파이 기능(verify function)을 구비한 반도체 기억 장치, 및 반도체 기억 장치의 제어 방법에 관한 것이다.
최근, 불휘발성 반도체 기억 장치로서 플래시 메모리가 많이 이용되고 있다. 플래시 메모리는, 기록(write) 동작이나 소거(erase) 동작의 정부(正否, correctness)를 판정하기 위하여 베리파이 처리를 행한다. 예를 들면, 기록 베리파이 처리에서는, 메모리 셀에의 기록 데이터를 기대값으로 해서, 메모리 셀에 기록한 데이터를 판독한 판독 데이터와 기대값을 비교하여, 기록 데이터와 판독 데이터의 일치·불일치에 의해 기록 동작의 정부를 판정하는 처리이다.
특허문헌 1에는, 계층화 비트선 구조를 가지는 반도체 기억 장치에 관한 기술이 개시되어 있다. 특허문헌 1에 개시되어 있는 반도체 기억 장치에서는, 메모리 어레이를 분할하여, 비트선을 계층화 구조로 하고 있으므로, 센스 앰프(sense amplifier)의 입력 부하 용량을 저감할 수 있다. 따라서, 반도체 기억 장치의 판독 속도를 빠르게 할 수 있다.
[특허문헌 1] 일본 특개 2004-318941호 공보
특허문헌 1에 개시되어 있는 반도체 기억 장치에서는, 센스 앰프와는 별도로 하나의 베리파이용 앰프가 설치되어 있다. 그리고 각각의 메모리 셀의 베리파이 처리는 이 하나의 베리파이용 앰프를 이용하여 실시되고 있다. 여기서, 베리파이 처리는 블록 단위로 실시되므로, 특허문헌 1에 개시되어 있는 반도체 기억 장치에서는, 하나의 베리파이용 앰프를 이용하여, 블록 단위로 순서대로(시리얼로) 베리파이 처리가 실시된다.
그러나 최근, 반도체 기억 장치의 메모리 용량은 증가 일로를 걷고 있다. 이 때문에, 특허문헌 1에 개시되어 있는 반도체 기억 장치와 같이 베리파이 처리를 블록 단위로 순서대로 실시한 경우는, 베리파이 처리에 많은 시간을 필요로 한다는 문제가 있다.
그 밖의 과제와 신규한 특징은, 본 명세서의 기술 및 첨부 도면으로부터 명백해질 것이다.
일 실시형태에 따른 반도체 기억 장치는, 복수의 메모리 블록과, 센스 앰프와, 베리파이 회로를 각각 구비하는 복수의 단위 메모리 어레이를 구비한다. 반도체 기억 장치가 베리파이 처리를 행할 때, 메모리 블록의 메모리 셀에 베리파이 데이터에 대응한 펄스를 인가함과 아울러, 각각의 베리파이 회로에 베리파이 데이터에 대응한 기대값을 설정한다. 각각의 베리파이 회로는, 센스 앰프에서 판독된 데이터와 기대값을 비교함으로써 베리파이 처리를 행한다.
상기 일 실시형태에 의하면, 반도체 기억 장치의 베리파이 처리에 필요한 시간을 단축할 수 있다.
[도 1] 실시형태에 따른 반도체 기억 장치가 이용되는 반도체 장치의 일례를 나타내는 블록도이다.
[도 2] 실시형태 1에 따른 반도체 기억 장치를 나타내는 도면이다.
[도 3] 실시형태 1에 따른 반도체 기억 장치가 구비하는 베리파이 회로의 일례를 나타내는 회로도이다.
[도 4] 실시형태 1에 따른 반도체 기억 장치에 있어서의 베리파이 처리의 일례를 설명하기 위한 플로우차트이다.
[도 5] 실시형태 1에 따른 반도체 기억 장치에 있어서의 베리파이 처리의 일례를 설명하기 위한 플로우차트이다.
[도 6] 실시형태 1에 따른 반도체 기억 장치에 있어서의 베리파이 처리의 일례를 설명하기 위한 플로우차트이다.
[도 7] 실시형태 2에 따른 반도체 기억 장치를 나타내는 도면이다.
[도 8] 실시형태 2에 따른 반도체 기억 장치가 구비하는 베리파이 회로의 일례를 나타내는 회로도이다.
[도 9] 실시형태 2에 따른 반도체 기억 장치에 있어서의 베리파이 처리의 일례를 설명하기 위한 플로우차트이다.
[도 10] 실시형태 3에 따른 반도체 기억 장치를 나타내는 도면이다.
[도 11] 실시형태 3에 따른 반도체 기억 장치가 구비하는 베리파이 회로의 일례를 나타내는 회로도이다.
[도 12] 실시형태 3에 따른 반도체 기억 장치에 있어서의 베리파이 처리를 설명하기 위한 타이밍 차트이다.
[도 13] 관련 기술에 따른 반도체 기억 장치를 설명하기 위한 도면이다.
[도 14] 관련 기술에 따른 반도체 기억 장치에 있어서의 베리파이 처리를 설명하기 위한 플로우차트이다.
<반도체 기억 장치가 이용되는 반도체 장치의 설명>
우선, 실시형태에 따른 반도체 기억 장치가 이용되는 반도체 장치의 일례에 관하여 설명한다. 도 1은, 실시형태에 따른 반도체 기억 장치가 이용되는 반도체 장치의 일례를 나타내는 블록도이다. 도 1에 나타내는 반도체 장치는, 예를 들면 마이크로컴퓨터(MCU)이다.
도 1에 나타내는 마이크로컴퓨터(MCU)는, 예를 들면 CMOS(Complementary Metal Oxide Semiconductor) 기술을 이용하는 것에 의해, 단결정 실리콘과 같은 1개의 반도체 칩으로 형성된다. 도 1에 나타내는 바와 같이, 마이크로컴퓨터(MCU)는, 중앙처리장치(CPU)와, 랜덤 액세스 메모리(RAM)와, 플래시 메모리 모듈(FMDL)을 구비한다. 중앙처리장치(CPU)는, 명령제어부와 실행부를 구비하고 있어, 각종 명령을 실행한다. 랜덤 액세스 메모리(RAM)는, 중앙처리장치(CPU)의 작업영역(work area) 등에 이용된다. 플래시 메모리 모듈(FMDL)은, 데이터나 프로그램을 저장하는 불휘발성 메모리 모듈로서 설치된다.
마이크로컴퓨터(MCU)는, 다이렉트 메모리 액세스 컨트롤러(DMAC)와, 버스 인터페이스 회로(BIF)와, 플래시 시퀀서(flash sequencer)(FSQC)와, 외부 입출력 포트(PRT)와, 타이머(TMR)와, 클록 펄스 제네레이터(clock pulse generator)(CPG)와, 고속 버스(HBUS)와, 주변 버스(PBUS)를 더 구비한다.
버스 인터페이스 회로(BIF)는, 고속 버스(HBUS)와 주변 버스(PBUS)와의 버스 인터페이스 제어 혹은 버스 브리지(bus bridge) 제어를 행한다. 플래시 시퀀서(FSQC)는, 플래시 메모리 모듈(FMDL)에 대한 커맨드 액세스 제어를 행한다. 클록 펄스 제네레이터(CPG)는, 마이크로컴퓨터(MCU)를 제어하기 위한 내부 클록 CLK를 생성한다.
마이크로컴퓨터(MCU)의 버스 구성은 특별히 제한되지 않지만, 도 1의 경우에는, 고속 버스(HBUS)와 주변 버스(PBUS)가 설치되어 있다. 고속 버스(HBUS) 및 주변 버스(PBUS)의 각각은, 특별히 제한되지 않지만, 데이터 버스, 어드레스 버스 및 컨트롤 버스를 가진다. 고속 버스(HBUS) 및 주변 버스(PBUS)라고 하는 2개의 버스를 설치하는 것에 의해, 공통의 버스에 모든 회로를 공통 접속하는 경우와 비교하여 버스의 부하를 경감하여, 고속 액세스 동작을 보증할 수 있다.
고속 버스(HBUS)에는, 중앙처리장치(CPU), 다이렉트 메모리 액세스 컨트롤러(DMAC), 버스 인터페이스 회로(BIF), 랜덤 액세스 메모리(RAM), 및 플래시 메모리 모듈(FMDL)이 접속된다. 주변 버스(PBUS)에는, 플래시 시퀀서(FSQC), 외부 입출력 포트(PRT), 타이머(TMR), 및 클록 펄스 제네레이터(CPG)가 접속된다.
마이크로컴퓨터(MCU)는, 또한, 발진자가 접속되거나 또는 외부 클록이 공급되는 클록 단자(XTAL/EXTAL)와, 스탠바이 상태를 지시하는 외부 하드웨어 스탠바이 단자(STBY)와, 리셋을 지시하는 외부 리셋 단자(RES)와, 외부 전원 단자(Vcc)와, 외부 접지 단자(Vss)를 구비한다.
도 1에서는, 로직 회로로서의 플래시 시퀀서(FSQC)와, 어레이 구성의 플래시 메모리 모듈(FMDL)은, 다른 CAD 툴을 이용하여 설계되어 있기 때문에, 편의상 각각의 회로 블록으로서 도시되어 있지만, 쌍방 모두 하나의 플래시 메모리를 구성한다.
플래시 메모리 모듈(FMDL)은, 판독 전용의 고속 액세스 포트(HACSP)를 통하여 고속 버스(HBUS)에 접속된다. CPU 또는 DMAC는, 고속 버스(HBUS)로부터 고속 액세스 포트(HACSP)를 통하여 플래시 메모리 모듈(FMDL)에 대해 리드 액세스(read access)할 수 있다. CPU 또는 DMAC는, 플래시 메모리 모듈(FMDL)에 대하여 기록 및 초기화 액세스를 행할 때는, 버스 인터페이스(BIF)를 통해 주변 버스(PBUS)를 경유하여 플래시 시퀀서(FSQC)에 커맨드를 발행한다. 이 커맨드에 응답하여, 플래시 시퀀서(FSQC)는, 주변 버스(PBUS)로부터 저속 액세스 포트(LACSP)를 통해 플래시 메모리 모듈(FMDL)의 초기화나 기록 동작의 제어를 행한다.
이하에서 설명하는 반도체 기억 장치는, 도 1에 나타낸 반도체 장치(마이크로컴퓨터(MCU))에서 이용되고 있는 플래시 메모리 모듈(FMDL)에 대응한다. 이하, 실시형태 1∼3에 따른 반도체 기억 장치에 관하여 설명한다.
<실시형태 1>
이하, 도면을 참조하여 실시형태 1에 따른 반도체 기억 장치, 및 반도체 기억 장치의 제어 방법에 관하여 설명한다. 도 2는, 본 실시형태에 따른 반도체 기억 장치를 나타내는 도면이다. 도 2에 나타내는 바와 같이, 본 실시형태에 따른 반도체 기억 장치(1)는, 메모리 블록(11_0∼11_2n+1), 센스 앰프 블록(12_0∼12_m), 워드선 드라이버(13), 판독 데이터 셀렉터(14), 기록 회로(15), 데이터 래치 회로(16), 데이터 제어 회로(21), 어드레스 제어 회로(23), 및 베리파이 제어 회로(28)를 구비한다. 여기서, n은 0 이상의 정수(整數)이다. 또한, m은 0 이상의 정수이다. n과 m은, m=n의 관계에 있다. 또한, n, m의 정의에 관하여는 본 명세서에서 동일하다. 또한, 본 명세서에서 각 구성요소를 총칭하여 나타내는 경우는, n, m을 사용하지 않고 「메모리 블록(11)」과 같이 기재한다.
예를 들면, 한 쌍의 메모리 블록(11_0, 11_1)(이하, 메모리 블록(BLK_0, BLK_1)으로도 기재한다) 및 센스 앰프 블록(12_0)은, 단위 메모리 어레이(10_0)를 구성하고 있다. 센스 앰프 블록(12_0)은, 메모리 블록(11_0(BLK_0))과 메모리 블록(11_1(BLK_1)) 사이에 배치되어 있다.
메모리 블록(BLK_0)은, 복수의 메모리 셀(MC_0)을 구비한다. 또한, 도 2에서는 설명을 간략화하기 위하여, 하나의 메모리 블록(BLK_0)에 하나의 메모리 셀(MC_0)만을 도시하고 있다. 다른 메모리 블록(BLK_1∼2n+1)에 관해서도 마찬가지이다. 메모리 셀(MC_0)은, 전기적으로 소거 및 기록 가능한 불휘발성 메모리 셀이다. 메모리 셀(MC_0)은, 워드선(WL_0) 및 부(副)비트선(BL_0)에 접속되어 있다.
마찬가지로, 메모리 블록(BLK_1)은, 복수의 메모리 셀(MC_1)을 구비한다. 메모리 셀(MC_1)은, 전기적으로 소거 및 기록 가능한 불휘발성 메모리 셀이다. 메모리 셀(MC_1)은, 워드선(WL_1) 및 부비트선(BL_1)에 접속되어 있다.
또한, 본 실시형태에서, 메모리 셀(MC_0, MC_1)의 구성은 특별히 한정되는 것은 아니지만, 일례를 들면, 스택트 게이트(stacked gate) 구조나 스플릿 게이트(split gate) 구조 등을 들 수 있다. 스택트 게이트 구조는, 소스, 드레인, 채널, 채널 상에 상호 절연 형성되어 쌓아 올려진 플로팅 게이트(floating gate) 및 컨트롤 게이트를 구비하는 구조이다. 또한, 스플릿 게이트 구조는, 소스, 드레인, 채널, 채널 상에서 이웃하고 상호 절연 형성된 선택 게이트 및 메모리 게이트를 구비하는 구조이다.
센스 앰프 블록(12_0)은, 센스 앰프(HSA_0) 및 베리파이 회로(25_0)(이하, 베리파이 회로(VF_0)로도 기재한다)를 구비한다. 센스 앰프(HSA_0)는, 각각의 메모리 셀(MC_0, MC_1)에 보유되어 있는 데이터를 판독한다. 베리파이 회로(VF_0)는, 각각의 메모리 셀(MC_0, MC_1)에 보유되어 있는 데이터를 베리파이한다.
센스 앰프(HSA_0)의 한쪽 입력단자에는, 메모리 블록(BLK_0)의 부비트선(BL_0)이 접속되어 있다. 또한, 도 2에서는, 편의상 하나의 부비트선(BL_0)이 센스 앰프(HSA_0)의 한쪽 입력단자에 접속된 구성을 나타내고 있지만, 본 실시형태에서는, 센스 앰프(HSA_0)의 한쪽 입력단자에는 복수의 부비트선(BL_0)이 선택적으로 접속되도록 구성되어 있다. 예를 들면, 센스 앰프(HSA_0)의 한쪽 입력단자와 복수의 부비트선(BL_0) 사이에는 열(列) 선택 회로(도시하지 않음)가 설치되어 있고, 이 열 선택 회로를 이용함으로써, 복수의 부비트선(BL_0) 중에서 하나의 부비트선(BL_0)을 선택적으로 센스 앰프(HSA_0)의 한쪽 입력단자에 접속할 수 있다.
센스 앰프(HSA_0)의 다른 쪽 입력단자에는, 메모리 블록(BLK_1)의 부비트선(BL_1)이 접속되어 있다. 또한, 도 2에서는, 편의상 하나의 부비트선(BL_1)이 센스 앰프(HSA_0)의 다른 쪽 입력단자에 접속된 구성을 나타내고 있지만, 본 실시형태에서는, 센스 앰프(HSA_0)의 다른 쪽 입력단자에는 복수의 부비트선(BL_1)이 선택적으로 접속되도록 구성되어 있다. 예를 들면, 센스 앰프(HSA_0)의 다른 쪽 입력단자와 복수의 부비트선(BL_1) 사이에는 열 선택 회로(도시하지 않음)가 설치되어 있고, 이 열 선택 회로를 이용함으로써, 복수의 부비트선(BL_1) 중에서 하나의 부비트선(BL_1)을 선택적으로 센스 앰프(HSA_0)의 다른 쪽 입력단자에 접속할 수 있다.
예를 들면, 메모리 셀(MC_0)에 보유되어 있는 데이터를 판독할 때는, 센스 앰프(HSA_0)의 한쪽 입력단자를 부비트선(BL_0)에 접속하고, 다른 쪽 입력단자를 레퍼런스(reference)에 접속한다. 센스 앰프(HSA_0)는, 이때의 부비트선(BL_0)과 레퍼런스의 전위차에 근거하여 메모리 셀(MC_0)에 보유되어 있는 데이터를 판독한다. 센스 앰프(HSA_0)의 출력단자는 판독용의 주비트선(GBLr)과 접속되어 있으며, 센스 앰프(HSA_0)로부터 출력된 판독 데이터는, 판독용의 주(主)비트선(GBLr)을 통해서 판독 데이터 셀렉터(14)에 공급된다.
또한, 센스 앰프(HSA_0)의 출력단자는 베리파이 회로(VF_0)에 접속되어 있다. 베리파이 회로(VF_0)는, 센스 앰프(HSA_0)에서 판독된 메모리 셀(MC_0)에 보관되어 있는 데이터와 기대값 vctrl을 비교함으로써 베리파이 처리를 행한다. 여기서 기대값 vctrl은, 베리파이 제어 회로(28)를 이용하여 베리파이 회로(VF_0)에 설정되는 값이다. 베리파이 회로(VF_0)의 상세에 관해서는 후술한다.
또한, 도 2에서는 도면을 간략화하기 위하여, 하나의 센스 앰프 블록(12_0)에 하나의 센스 앰프(HSA_0)와 하나의 베리파이 회로(VF_0)를 도시하고 있다. 그러나 본 실시형태에 따른 반도체 기억 장치에서는, 하나의 센스 앰프 블록(12_0)에는, 센스 앰프(HSA_0)와 베리파이 회로(VF_0)의 조합이 복수 설치되어 있고, 이 센스 앰프(HSA_0)와 베리파이 회로(VF_0)의 조합 수는, 메모리 블록(BLK_0, BLK_1)의 메모리 셀(MC_0, MC_1)의 수가 증가할수록 많아진다.
또한, 상기에서는 한 쌍의 메모리 블록(11_0, 11_1(BLK_0, BLK_1))과 센스 앰프 블록(12_0)을 구비하는 단위 메모리 어레이(10_0)의 구성에 관하여 설명했지만, 다른 단위 메모리 어레이(10_1∼10_m)의 구성에 관해서도 마찬가지이다.
기록 회로(15)는, 각각의 메모리 셀(MC_0∼MC_2n+1)에 기록 데이터를 생성한다. 기록 회로(15)에서 생성된 기록 데이터는, 기록용의 주비트선(GBLw)을 이용하여 각각의 메모리 블록(BLK_0∼BLK_2n+1)에 전달된다. 각각의 메모리 블록(BLK_0∼BLK_2n+1)의 부비트선(BL_0∼BL_2n+1)은, 스위치(SW_0∼SW_2n+1)를 통해 기록용의 주비트선(GBLw)에 접속된다. 즉, 기록용의 주비트선(GBLw)을 통해서 전달된 기록 데이터는, 스위치(SW_0∼SW_2n+1)의 온·오프를 제어함으로써, 부비트선(BL_0∼BL_2n+1)에 선택적으로 전달된다.
이와 같이, 본 실시형태에 따른 반도체 기억 장치는 계층화 비트선 구조를 구비하고 있으며, 기록용의 주비트선(GBLw)을 통해서 전달된 기록 데이터는, 스위치(SW_0∼SW_2n+1)의 온·오프를 제어함으로써, 기록 데이터를 기록할 메모리 셀(MC_0∼MC_2n+1)에 선택적으로 전달된다. 메모리 셀(MC_0∼MC_2n+1) 중 어느 하나에 기록 데이터를 기록할 때는, 기록 데이터를 기록하는 메모리 셀(MC_0∼MC_2n+1)에 접속되어 있는 워드선(WL_0∼WL_2n+1)을 활성 상태로 한다.
예를 들면, 기록 회로(15)에서 생성된 기록 데이터를 메모리 셀(MC_0)에 기록하는 경우는, 스위치(SW_0)를 온 상태로 하고, 스위치(SW_1∼SW_2n+1)를 오프 상태로 한다. 이에 의해, 기록용의 주비트선(GBLw)과 메모리 블록(BLK_0)의 부비트선(BL_0)이 접속된다. 그리고 메모리 셀(MC_0)에 접속되어 있는 워드선((WL_0)을 활성 상태로 한다.
또한, 본 실시형태에 따른 반도체 기억 장치는 계층화 비트선 구조를 구비하므로, 각각의 센스 앰프(HSA_0∼HSA_m)는 고속으로 동작할 수 있다. 다시 말해, 본 실시형태에 따른 반도체 기억 장치에서는, 메모리 어레이를 복수의 메모리 블록(11)으로 분할하고, 이 분할한 메모리 블록(11)의 각각에 부비트선(BL)을 설치하고 있다. 각각의 부비트선(BL)은 공통의 기록용 주비트선(GBLw)에 스위치(SW)를 통하여 접속된다. 따라서, 각각의 센스 앰프(HSA_0∼HSA_m)는 부하가 작은 부비트선(BL)만을 감지하면 되므로, 고속으로 동작할 수 있다.
데이터 제어 회로(21)에는 데이터 입출력단자(22)를 통해 기록 데이터가 공급된다. 데이터 제어 회로(21)에 공급된 기록 데이터는 데이터 래치 회로(16)에 공급된다. 데이터 래치 회로(16)는, 데이터 제어 회로(21)로부터 순차 공급되는 기록 데이터를 일시적으로 래치한 후, 기록 회로(15)에 기록 데이터를 공급한다.
또한, 데이터 제어 회로(21)에는 판독 데이터 셀렉터(14)로부터 판독 데이터가 공급된다. 판독 데이터 셀렉터(14)로부터 공급된 판독 데이터는, 데이터 입출력단자(22)를 통해 외부로 출력된다.
어드레스 제어 회로(23)에는 어드레스 입력단자(24)를 통해 어드레스 신호가 공급된다. 어드레스 제어 회로(23)에 공급된 어드레스 신호는, 워드선 드라이버(13) 및 판독 데이터 셀렉터(14)에 공급된다. 워드선 드라이버(13)는, 어드레스 제어 회로(23)로부터 공급된 어드레스 신호에 대응한 워드선(WL_0∼WL_2n+1)을 활성 상태로 한다. 이에 의해, 어드레스 제어 회로(23)로부터 공급된 어드레스 신호에 대응한 메모리 셀(MC_0∼MC_2n+1)이 선택된다.
또한, 판독 데이터 셀렉터(14)는, 어드레스 제어 회로(23)로부터 공급된 어드레스 신호에 대응한 판독 데이터를 데이터 제어 회로(21)에 출력한다. 즉, 판독 데이터 셀렉터(14)에는 복수의 판독용 주비트선(GBLr)이 접속되어 있으며, 판독 데이터 셀렉터(14)는, 복수의 판독용 주비트선(GBLr) 중, 어드레스 제어 회로(23)로부터 공급된 어드레스 신호에 대응한 판독용 주비트선(GBLr)을 선택하고, 이 선택된 주비트선(GBLr)의 판독 데이터를 데이터 제어 회로(21)에 출력한다.
다음으로, 도 2에 나타내는 베리파이 회로(25_0∼25_m)(이하, 베리파이 회로(VF_0∼VF_m)로도 기재한다)에 관하여 상세히 설명한다. 각각의 베리파이 회로(VF_0∼VF_m)는, 각각의 센스 앰프(HSA_0∼HSA_m)에서 판독된 메모리 셀(MC_0∼MC_2n+1)의 데이터와 기대값을 비교함으로써 베리파이 처리를 행한다. 베리파이 제어 회로(28)는, 각각의 베리파이 회로(VF_0∼VF_m)에 있어서의 베리파이 처리를 제어한다.
구체적으로는, 메모리 블록(BLK_0)의 메모리 셀(MC_0)에 베리파이 처리를 행하는 경우, 베리파이 제어 회로(28)는, 기록 회로(15)를 이용하여 메모리 셀(MC_0)에 베리파이 데이터에 대응한 펄스를 인가하여 베리파이 데이터를 기록한다. 또한, 베리파이 제어 회로(28)는, 베리파이 회로(VF_0)에 베리파이 데이터에 대응한 기대값을 설정한다. 여기서, 베리파이 데이터란 소거 베리파이 데이터 또는 기록 베리파이 데이터이다.
예를 들면, 메모리 블록(BLK_0)의 메모리 셀(MC_0)에 소거 베리파이 데이터가 보관되어 있는 경우, 센스 앰프(HSA_0)의 출력의 기대값은 하이 레벨("H")이 된다. 이 경우, 베리파이 제어 회로(28)는, 베리파이 회로(VF_0)에 베리파이 데이터에 대응한 기대값으로서 하이 레벨("H")을 설정한다.
그 후, 센스 앰프(HSA_0)의 한쪽 입력단자를 부비트선(BL_0)에 접속하고, 다른 쪽 입력단자를 레퍼런스에 접속하여, 메모리 셀(MC_0)에 보관되어 있는 소거 베리파이 데이터를 판독한다. 그리고 베리파이 회로(VF_0)는, 센스 앰프(HSA_0)의 출력이, 설정된 기대값(하이 레벨 "H")과 일치하는 경우, 다시 말해, 센스 앰프(HSA_0)의 출력이 하이 레벨("H")인 경우, 베리파이 처리가 정상이라고 판정한다. 한편, 베리파이 회로(VF_0)는, 센스 앰프(HSA_0)의 출력이, 설정된 기대값(하이 레벨 "H")과 일치하지 않을 경우, 다시 말해, 센스 앰프(HSA_0)의 출력이 로우 레벨("L")인 경우, 베리파이 처리가 이상(異常)이라고 판정한다.
또한, 메모리 블록(BLK_0)의 메모리 셀(MC_0)에 기록 베리파이 데이터가 보관되어 있는 경우는, 센스 앰프(HSA_0)의 출력의 기대값은 로우 레벨("L")이 된다. 이 경우, 베리파이 제어 회로(28)는, 베리파이 회로(VF_0)에 베리파이 데이터에 대응한 기대값으로서 로우 레벨("L")을 설정한다. 그 이외의 동작에 관해서는, 상술한 소거 베리파이 데이터를 이용한 베리파이 처리의 동작과 마찬가지이다.
또한, 메모리 블록(BLK_1)의 메모리 셀(MC_1)에 베리파이 처리를 행하는 경우, 베리파이 제어 회로(28)는, 기록 회로(15)를 이용하여 메모리 셀(MC_1)에 베리파이 데이터에 대응한 펄스를 인가하여 베리파이 데이터를 기록한다. 또한, 베리파이 제어 회로(28)는, 베리파이 회로(VF_1)에 베리파이 데이터에 대응한 기대값을 설정한다.
예를 들면, 메모리 블록(BLK_1)의 메모리 셀(MC_1)에 소거 베리파이 데이터가 보관되어 있는 경우, 센스 앰프(HSA_0)의 출력의 기대값은 "H(하이 레벨)"가 된다. 이 경우, 베리파이 제어 회로(28)는, 베리파이 회로(VF_0)에 베리파이 데이터에 대응한 기대값으로서 하이 레벨("H")을 설정한다.
그 후, 센스 앰프(HSA_0)의 한쪽 입력단자를 레퍼런스에 접속하고, 다른 쪽 입력단자를 부비트선(BL_1)에 접속하여, 메모리 셀(MC_1)에 보관되어 있는 소거 베리파이 데이터를 판독한다. 그리고 베리파이 회로(VF_0)는, 센스 앰프(HSA_0)의 출력이, 설정된 기대값(하이 레벨 "H")과 일치하는 경우, 다시 말해, 센스 앰프(HSA_0)의 출력이 하이 레벨("H")인 경우, 베리파이 처리가 정상이라고 판정한다. 한편, 베리파이 회로(VF_0)는, 센스 앰프(HSA_0)의 출력이, 설정된 기대값(하이 레벨 "H")과 일치하지 않을 경우, 다시 말해, 센스 앰프(HSA_0)의 출력이 로우 레벨("L")인 경우, 베리파이 처리가 이상이라고 판정한다.
또한, 메모리 블록(BLK_1)의 메모리 셀(MC_1)에 기록 베리파이 데이터가 보관되어 있는 경우, 센스 앰프(HSA_0)의 출력의 기대값은 로우 레벨("L")이 된다. 이 경우, 베리파이 제어 회로(28)는, 베리파이 회로(VF_0)에 베리파이 데이터에 대응한 기대값으로서 로우 레벨("L")을 설정한다. 그 이외의 동작에 관해서는, 상술한 소거 베리파이 데이터를 이용한 베리파이 처리의 동작과 마찬가지이다.
여기서, 센스 앰프(HSA_0) 및 베리파이 회로(VF_0)는, 2개의 메모리 블록(BLK_0, BLK_1)에서 공유하고 있으므로, 2개의 메모리 블록(BLK_0, BLK_1)에 대하여 동시에 베리파이 처리를 행할 수는 없다. 이 때문에, 실시형태에 따른 반도체 기억 장치(1)에서는, 짝수의 메모리 블록(BLK_0, BLK_2, ..., BLK_2n)과 홀수의 메모리 블록(BLK_1, BLK_3, ..., BLK_2n+1)을 다른 타이밍에서 베리파이 처리하고 있다(n은 0 이상의 정수).
예를 들면, 짝수의 메모리 블록(BLK_0, BLK_2, ..., BLK_2n)에 베리파이 처리를 실시한 후에, 홀수의 메모리 블록(BLK_1, BLK_3, ..., BLK_2n+1)에 베리파이 처리를 실시해도 된다. 반대로, 홀수의 메모리 블록(BLK_1, BLK_3, ..., BLK_2n+1)에 베리파이 처리를 실시한 후에, 짝수의 메모리 블록(BLK_0, BLK_2, ..., BLK_2n)에 베리파이 처리를 실시해도 된다.
또한, 예를 들면, 본 실시형태에 따른 반도체 기억 장치(1)는, 메모리 블록(BLK_0)이 구비하는 모든 메모리 셀(MC_0)에 대하여 베리파이 처리를 실시하므로, 메모리 블록(BLK_0)이 구비하는 모든 메모리 셀(MC_0)에 동일한 베리파이 데이터가 기록된다.
예를 들면, 메모리 블록(BLK_0)이 구비하는 메모리 셀(MC_0)에 소거 베리파이 데이터를 기록하는 경우는, 메모리 블록(BLK_0)의 모든 메모리 셀(MC_0)에 소거 베리파이 데이터를 기록한다. 또한, 메모리 블록(BLK_0)이 구비하는 메모리 셀(MC_0)에 기록 베리파이 데이터를 기록하는 경우는, 메모리 블록(BLK_0)의 모든 메모리 셀(MC_0)에 기록 베리파이 데이터를 기록한다. 다른 메모리 블록(BLK_1∼BLK_2n+1)이 구비하는 메모리 셀(MC_1∼MC_2n+1)에 관해서도 마찬가지이다.
각각의 베리파이 회로(VF_0∼VF_m)에 있어서의 베리파이 처리 결과는, 베리파이 제어 회로(28)에 공급된다. 도 2에 나타내는 구성에서는, 각각의 베리파이 회로(VF_0∼VF_m)는, 각각의 베리파이 회로(VF_0∼VF_m)에 있어서의 베리파이 처리 결과를 베리파이 제어 회로(28)에 순차적으로(연속적으로) 송신하도록 구성되어 있다. 이 구성에서는, 모든 베리파이 회로(VF_0∼VF_m)에 있어서의 베리파이 처리 결과가 정상인 경우에, 최종단(最終段)의 베리파이 회로(VF_m)로부터 베리파이 제어 회로(28)에 정상을 나타내는 베리파이 결과(vrslt_m)가 공급된다. 환언하면, 베리파이 회로(VF_0∼VF_m) 중 적어도 하나의 베리파이 회로에서 베리파이 처리 결과가 이상이라고 판정된 경우, 최종단의 베리파이 회로(VF_m)는 베리파이 제어 회로(28)에 이상을 나타내는 베리파이 결과(vrslt_m)를 공급한다.
도 3은, 본 실시형태에 따른 반도체 기억 장치가 구비하는 베리파이 회로의 일례를 나타내는 회로도이다. 도 3에 나타내는 바와 같이, 각각의 베리파이 회로(25_0∼25_m(VF_0∼VF_m))는, 논리 회로(XNOR_0∼XNOR_m)와, 논리 회로(AND_0∼AND_m)를 구비한다.
각각의 논리 회로(XNOR_0∼XNOR_m)는, 각각의 센스 앰프(HSA_0∼HSA_m)에서 판독된 메모리 셀의 데이터와, 베리파이 제어 회로(28)로부터 공급된 기대값 vctrl을 비교하여, 해당 비교 결과를 베리파이 처리 결과로서 출력한다. 다시 말해, 각각의 논리 회로(XNOR_0∼XNOR_m)는, 각각의 센스 앰프(HSA_0∼HSA_m)의 출력(out_0∼out_m)과 베리파이 제어 회로(28)로부터 공급된 기대값 vctrl을 입력하고, 이들의 XNOR(배타적 논리 합의 부정)을 각각의 논리 회로(AND_0∼AND_m)의 한쪽 입력에 공급한다. 또한, 베리파이 제어 회로(28)로부터 공급되는 기대값 vctrl은, 모든 베리파이 회로(VF_0∼VF_m)에서 공통이다.
각각의 논리 회로(AND_0∼AND_m)는, 각각의 논리 회로(XNOR_0∼XNOR_m)의 출력과 전단(前段)의 베리파이 처리 결과(베리파이 회로(25_0)는 첫단(初段)의 회로이기 때문에, 초기값으로서 "H"가 설정되어 있다)를 입력하고, 논리 회로(XNOR_0∼XNOR_m)의 출력과 전단(前段)의 베리파이 처리 결과가 모두 정상인 경우에, 정상을 나타내는 신호를 출력한다.
도 3에 나타내는 바와 같이, 각각의 베리파이 회로(VF_0∼VF_m)는 순차적으로 접속되어 있다. 구체적으로는, 각각의 논리 회로(AND_0∼AND_m)는 순차적으로 접속되어 있으므로, 모든 논리 회로(XNOR_0∼XNOR_m)의 출력이 하이 레벨(정상을 나타낸다)인 경우에, 모든 논리 회로(AND_0∼AND_m)의 출력(vrslt_0∼vrslt_m)이 하이 레벨(정상을 나타낸다)이 되고, 베리파이 제어 회로(28)에는 베리파이 결과(vrslt_m)로서 하이 레벨의 신호가 공급된다.
다음으로, 각각의 베리파이 회로(VF_0∼VF_m)에 있어서의 구체적인 동작에 관하여 설명한다. 우선, 소거 베리파이인 경우의 동작에 관하여 설명한다. 소거 베리파이인 경우, 각각의 메모리 블록(BLK_0∼BLK_2n+1)의 메모리 셀(MC_0∼MC_2n+1)에는 소거 베리파이 데이터가 보관되어 있으므로, 각각의 센스 앰프(HSA_0)의 출력의 기대값은 하이 레벨("H")이 된다. 이 경우, 베리파이 제어 회로(28)는, 각각의 베리파이 회로(VF_0∼VF_m)에 기대값 vctrl으로서 하이 레벨("H")을 설정한다.
베리파이 처리 대상이 된 메모리 셀이 정상인 경우, 각각의 센스 앰프(HSA_0∼HSA_m)의 출력은 하이 레벨("H")이므로, 각각의 논리 회로(XNOR_0∼XNOR_m)의 한쪽 입력에는 하이 레벨("H")의 신호가 공급된다. 또한, 각각의 논리 회로(XNOR_0∼XNOR_m)의 다른 쪽 입력에는 기대값 vctrl으로서 하이 레벨("H")의 신호가 공급되어 있으므로, 각각의 논리 회로(XNOR_0∼XNOR_m)는, 베리파이 처리 결과로서 하이 레벨("H")의 신호를 각각의 논리 회로(AND_0∼AND_m)의 한쪽 입력에 공급한다.
또한, 첫단(初段)의 베리파이 회로(VF_0)의 논리 회로(AND_0)의 다른 쪽 입력에는 하이 레벨("H")의 신호가 공급되어 있으므로, 논리 회로(AND_0)는 하이 레벨("H")의 베리파이 결과(vrslt_0)를 다음단(次段)의 논리 회로(AND_1)의 다른 쪽 입력에 공급한다. 또한, 베리파이 회로(VF_1)의 논리 회로(AND_1)의 한쪽 입력에는, 논리 회로(XNOR_1)로부터 하이 레벨("H")의 신호가 공급되고, 다른 쪽 입력에는 전단(前段)의 논리 회로(AND_0)로부터 하이 레벨("H")의 베리파이 결과(vrslt_0)가 공급된다. 따라서, 논리 회로(AND_1)는 하이 레벨("H")의 베리파이 결과(vrslt_1)를 다음단(次段)의 논리 회로(AND_2)의 다른 쪽 입력에 공급한다.
이와 같이, 베리파이 처리 대상이 된 메모리 셀이 모두 정상인 경우는, 각각의 논리 회로(XNOR_0∼XNOR_m)로부터 출력되는 신호가 하이 레벨("H")이므로, 각각의 논리 회로(AND_0∼AND_m)는, 다음단(次段)에 베리파이 결과(vrslt_0∼vrslt_m)로서 하이 레벨("H")의 신호를 출력한다. 따라서, 베리파이 제어 회로(28)에는 하이 레벨("H")의 베리파이 결과(vrslt_m)가 공급된다.
한편, 베리파이 처리 대상이 된 메모리 셀 중 적어도 하나가 이상인 경우는, 센스 앰프(HSA_0∼HSA_m) 중 적어도 하나의 출력이 로우 레벨("L")이 된다. 이 경우는, 센스 앰프의 출력과 기대값이 일치하지 않으므로, 논리 회로(XNOR_0∼XNOR_m) 중 적어도 하나의 출력이 로우 레벨("L")이 된다. 따라서, 논리 회로(AND_0∼AND_m) 중 로우 레벨("L")의 신호가 공급된 논리 회로(AND_0∼AND_m)는, 베리파이 결과(vrslt_0∼vrslt_m)로서 로우 레벨("L")의 신호를 출력하므로, 이후의 논리 회로(AND)의 출력은 로우 레벨("L")이 된다. 따라서, 베리파이 제어 회로(28)에는 로우 레벨("L")의 베리파이 결과(vrslt_m)가 공급된다.
다음으로, 기록 베리파이인 경우의 동작에 관하여 설명한다. 기록 베리파이인 경우, 각 메모리 블록(BLK_0∼BLK_2n+1)의 메모리 셀(MC_0∼MC_2n+1)에는 기록 베리파이 데이터가 보관되어 있으므로, 각각의 센스 앰프(HSA_0)의 출력의 기대값은 로우 레벨("L")이 된다. 이 경우, 베리파이 제어 회로(28)는, 각각의 베리파이 회로(VF_0∼VF_m)에 기대값 vctrl으로서 로우 레벨("L")을 설정한다.
베리파이 처리 대상이 된 메모리 셀이 모두 정상인 경우, 각각의 센스 앰프(HSA_0∼HSA_m)의 출력은 로우 레벨("L")이므로, 각각의 논리 회로(XNOR_0∼XNOR_m)의 한쪽 입력에는 로우 레벨("L")의 신호가 공급된다. 또한, 각각의 논리 회로(XNOR_0∼XNOR_m)의 다른 쪽 입력에는 기대값 vctrl으로서 로우 레벨("L")의 신호가 공급되어 있으므로, 각각의 논리 회로(XNOR_0∼XNOR_m)는, 베리파이 처리 결과로서 하이 레벨("H")의 신호를 각각의 논리 회로(AND_0∼AND_m)의 한쪽 입력에 공급한다.
또한, 첫단(初段)의 베리파이 회로(VF_0)의 논리 회로(AND_0)의 다른 쪽 입력에는 하이 레벨("H")의 신호가 공급되고 있으므로, 논리 회로(AND_0)는 하이 레벨("H")의 베리파이 결과(vrslt_0)를 다음단(次段)의 논리 회로(AND_1)의 다른 쪽 입력에 공급한다. 또한, 베리파이 회로(VF_1)의 논리 회로(AND_1)의 한쪽 입력에는, 논리 회로(XNOR_1)로부터 하이 레벨("H")의 신호가 공급되고, 다른 쪽 입력에는 전단(前段)의 논리 회로(AND_0)로부터 하이 레벨("H")의 베리파이 결과(vrslt_0)가 공급된다. 따라서, 논리 회로(AND_1)는 하이 레벨("H")의 베리파이 결과(vrslt_1)를 다음단(次段)의 논리 회로(AND_2)의 다른 쪽 입력에 공급한다.
이와 같이, 베리파이 처리 대상이 된 메모리 셀이 모두 정상인 경우는, 각각의 논리 회로(XNOR_0∼XNOR_m)로부터 출력되는 신호가 하이 레벨("H")이므로, 각각의 논리 회로(AND_0∼AND_m)는, 다음단(次段)에 하이 레벨("H")의 베리파이 결과(vrslt_0∼vrslt_m)를 출력한다. 따라서, 베리파이 제어 회로(28)에는 하이 레벨("H")의 베리파이 결과(vrslt_m)가 공급된다.
한편, 베리파이 처리 대상이 된 메모리 셀 중 적어도 하나가 이상인 경우는, 센스 앰프(HSA_0∼HSA_m) 중 적어도 하나의 출력이 하이 레벨("H")이 된다. 이 경우는, 센스 앰프의 출력과 기대값이 일치하지 않으므로, 논리 회로(XNOR_0∼XNOR_m) 중 적어도 하나의 출력이 로우 레벨("L")이 된다. 따라서, 논리 회로(AND_0∼AND_m) 중 로우 레벨("L")의 신호가 공급된 논리 회로(AND_0∼AND_m)는, 베리파이 결과(vrslt_0∼vrslt_m)로서 로우 레벨("L")의 신호를 출력하므로, 이후의 논리 회로(AND)의 출력은 로우 레벨("L")이 된다. 따라서, 베리파이 제어 회로(28)에는 로우 레벨("L")의 베리파이 결과(vrslt_m)가 공급된다.
이상에서 설명한 동작에 의하여, 베리파이 제어 회로(28)에 공급된 베리파이 결과(vrslt_m)가 하이 레벨("H")인 경우는, 베리파이 처리 대상이 된 메모리 셀이 모두 정상(베리파이 패스(pass))인 것으로 판정된다. 한편, 베리파이 제어 회로(28)에 공급된 베리파이 결과(vrslt_m)가 로우 레벨("L")인 경우는, 베리파이 처리 대상이 된 메모리 셀 중 적어도 하나가 이상(베리파이 페일(fail))인 것으로 판정된다. 이와 같이, 본 실시형태에 따른 반도체 기억 장치에서는, 복수의 메모리 블록(BLK)의 베리파이 처리를 동시에 실시할 수 있다.
다음으로, 본 실시형태에 따른 반도체 기억 장치에 있어서의 베리파이 처리의 흐름(반도체 기억 장치의 제어 방법)에 관하여, 도 4∼도 6에 나타내는 플로우차트를 이용하여 설명한다. 또한, 이하에서 나타내는 베리파이 처리의 흐름은, 소거 베리파이 및 기록 베리파이에서 공통이다.
도 2에 나타낸 바와 같이, 본 실시형태에 따른 반도체 기억 장치(1)에서는, 2개의 메모리 블록(BLK)(11)에 대하여 하나의 센스 앰프 블록(12)을 구비한다. 따라서, 각각의 단위 메모리 어레이(10)에서 베리파이 처리를 실시하는 경우는, 짝수측의 메모리 블록과 홀수측의 메모리 블록의 2회로 나누어서 실시할 필요가 있다.
우선, 도 4에 나타내는 플로우차트를 이용하여 베리파이 처리의 흐름(제1 패턴)에 관하여 설명한다. 제1 패턴의 베리파이 처리에서는, 우선, 베리파이 제어 회로(28)는, 메모리 블록(BLK_0∼BLK_2n+1)의 메모리 셀에 베리파이 데이터에 대응한 펄스를 인가한다(스텝 S1). 베리파이 데이터에 대응한 펄스란, 각각의 메모리 블록(BLK_0∼BLK_2n+1)의 메모리 셀에, 소거 베리파이 데이터를 기록하기 위한 펄스 전압, 또는 기록 베리파이 데이터를 기록하기 위한 펄스 전압이다. 베리파이 데이터에 대응한 펄스를 인가할 때는, 각각의 메모리 블록(BLK_0∼BLK_2n+1)에 순차적으로 펄스를 인가하도록 해도 되고, 또한 복수의 메모리 블록(BLK_0∼BLK_2n+1)에 일괄하여 펄스를 인가하도록 해도 된다.
다음으로, 각각의 베리파이 회로(VF_0∼VF_m)는, 짝수의 메모리 블록(BLK_0, BLK_2, ..., BLK_2n)에 베리파이 처리를 실시한다(스텝 S2). 구체적으로는, 각각의 베리파이 회로(VF_0∼VF_m)는, 메모리 셀(MC)에 보관되어 있는 베리파이 데이터(소거 베리파이 데이터 또는 기록 베리파이 데이터)와 기대값을 비교하여, 베리파이 데이터와 기대값이 일치하는 경우는 베리파이 처리가 정상인 것(베리파이 패스)으로 판정한다. 한편, 베리파이 데이터와 기대값이 일치하지 않는 경우는, 베리파이 처리가 이상인 것(베리파이 페일)으로 판정한다.
짝수의 메모리 블록(BLK_0, BLK_2, ..., BLK_2n) 중 적어도 하나에서 베리파이 처리가 이상인 것(베리파이 페일)으로 판정된 경우(스텝 S3: No), 재차, 스텝 S1∼S2의 처리를 실시한다.
한편, 짝수의 메모리 블록(BLK_0, BLK_2, ..., BLK_2n) 모두에서 베리파이 처리가 정상인 것(베리파이 패스)으로 판정된 경우(스텝 S3: Yes), 각각의 베리파이 회로(VF_0∼VF_m)는, 홀수의 메모리 블록(BLK_1, BLK_3, ..., BLK_2n+1)에 베리파이 처리를 실시한다(스텝 S4). 구체적으로는, 각각의 베리파이 회로(VF_0∼VF_m)는, 메모리 셀(MC)에 보관되어 있는 베리파이 데이터(소거 베리파이 데이터 또는 기록 베리파이 데이터)와 기대값을 비교하여, 양자가 일치하는 경우는 베리파이 처리가 정상인 것(베리파이 패스)으로 판정한다. 한편, 양자가 일치하지 않는 경우는, 베리파이 처리가 이상인 것(베리파이 페일)으로 판정한다.
홀수의 메모리 블록(BLK_1, BLK_3, ..., BLK_2n+1) 중 적어도 하나에서 베리파이 처리가 이상인 것(베리파이 페일)으로 판정된 경우(스텝 S5: No), 재차, 스텝 S1∼S4의 처리를 실시한다. 한편, 홀수의 메모리 블록(BLK_1, BLK_3, ..., BLK_2n+1) 모두에서 베리파이 처리가 정상인 것(베리파이 패스)으로 판정된 경우(스텝 S5: Yes), 반도체 기억 장치의 베리파이 처리가 정상인 것으로 하여, 베리파이 처리를 종료한다.
다음으로, 도 5에 나타내는 플로우차트를 이용하여 베리파이 처리의 흐름(제2 패턴)에 관하여 설명한다. 제2 패턴의 베리파이 처리에서는, 우선, 베리파이 제어 회로(28)는, 메모리 블록(BLK_0∼BLK_2n+1)의 메모리 셀에 베리파이 데이터에 대응한 펄스를 인가한다(스텝 S11). 베리파이 데이터에 대응한 펄스란, 각각의 메모리 블록(BLK_0∼BLK_2n+1)의 메모리 셀에 소거 베리파이 데이터를 기록하기 위한 펄스 전압, 또는 기록 베리파이 데이터를 기록하기 위한 펄스 전압이다. 베리파이 데이터에 대응한 펄스를 인가할 때는, 각각의 메모리 블록(BLK_0∼BLK_2n+1)에 순차적으로 펄스를 인가하도록 해도 되고, 또한 복수의 메모리 블록(BLK_0∼BLK_2n+1)에 일괄하여 펄스를 인가하도록 해도 된다.
다음으로, 각각의 베리파이 회로(VF_0∼VF_m)는, 짝수의 메모리 블록(BLK_0, BLK_2, ..., BLK_2n)에 베리파이 처리를 실시한다(스텝 S12). 구체적으로는, 각각의 베리파이 회로(VF_0∼VF_m)는, 메모리 셀(MC)에 보관되어 있는 베리파이 데이터(소거 베리파이 데이터 또는 기록 베리파이 데이터)와 기대값을 비교하여, 베리파이 데이터와 기대값이 일치하는 경우는 베리파이 처리가 정상인 것(베리파이 패스)으로 판정한다. 한편, 베리파이 데이터와 기대값이 일치하지 않는 경우는, 베리파이 처리가 이상인 것(베리파이 페일)으로 판정한다.
다음으로, 각각의 베리파이 회로(VF_0∼VF_m)는, 홀수의 메모리 블록(BLK_1, BLK_3, ..., BLK_2n+1)에 베리파이 처리를 실시한다(스텝 S13). 구체적으로는, 각각의 베리파이 회로(VF_0∼VF_m)는, 메모리 셀(MC)에 보관되어 있는 베리파이 데이터(소거 베리파이 데이터 또는 기록 베리파이 데이터)와 기대값을 비교하여, 베리파이 데이터와 기대값이 일치하는 경우는 베리파이 처리가 정상인 것(베리파이 패스)으로 판정한다. 한편, 베리파이 데이터와 기대값이 일치하지 않는 경우는, 베리파이 처리가 이상인 것(베리파이 페일)으로 판정한다.
그리고 메모리 블록(BLK_0∼BLK_2n+1) 중 적어도 하나에서 베리파이 처리가 이상인 것(베리파이 페일)으로 판정된 경우(스텝 S14: No), 재차, 스텝 S11∼S13의 처리를 실시한다. 한편, 메모리 블록(BLK_0∼BLK_2n+1) 모두에서 베리파이 처리가 정상인 것(베리파이 패스)으로 판정된 경우(스텝 S14: Yes), 반도체 기억 장치의 베리파이 처리가 정상인 것으로 하여, 베리파이 처리를 종료한다.
도 4에 나타낸 베리파이 처리에서는, 짝수의 메모리 블록의 베리파이 처리가 정상이라고 판정된 후에, 홀수의 메모리 블록의 베리파이 처리를 실시하고 있다. 여기서, 도 4에 나타낸 베리파이 처리에서는, 모든 메모리 블록(BLK_0∼BLK_2n+1)에 베리파이 데이터에 대응한 펄스를 인가하고 있으므로(스텝 S1), 예를 들면, 짝수의 메모리 블록의 베리파이 처리가 정상이라고 판정된 후에, 홀수의 메모리 블록의 베리파이 처리에서 이상으로 판정된 경우는, 결과적으로, 짝수의 메모리 블록에 여분의 펄스가 인가된 것이 된다.
이에 대하여, 도 5에 나타낸 베리파이 처리에서는, 짝수의 메모리 블록의 베리파이 처리 결과와 홀수의 메모리 블록의 베리파이 처리 결과를 합쳐서 판정하기 때문에(스텝 S14 참조), 상술한 짝수의 메모리 블록에 여분의 펄스가 인가되는 것을 억제할 수 있다.
다음으로, 도 6에 나타내는 플로우차트를 이용하여 베리파이 처리의 흐름(제3 패턴)에 관하여 설명한다. 제3 패턴의 베리파이 처리에서는, 우선, 베리파이 제어 회로(28)는, 짝수의 메모리 블록(BLK_0, BLK_2, ..., BLK_2n)의 메모리 셀에 베리파이 데이터에 대응한 펄스를 인가한다(스텝 S21). 베리파이 데이터에 대응한 펄스를 인가할 때는, 각각의 짝수의 메모리 블록(BLK_0, BLK_2, ..., BLK_2n)에 순차적으로 펄스를 인가하도록 해도 되고, 또한 복수의 짝수의 메모리 블록(BLK_0, BLK_2, ..., BLK_2n)에 일괄하여 펄스를 인가하도록 해도 된다.
다음으로, 각각의 베리파이 회로(VF_0∼VF_m)는, 짝수의 메모리 블록(BLK_0, BLK_2, ..., BLK_2n)에 베리파이 처리를 실시한다(스텝 S22). 구체적으로는, 각각의 베리파이 회로(VF_0∼VF_m)는, 메모리 셀(MC)에 보관되어 있는 베리파이 데이터(소거 베리파이 데이터 또는 기록 베리파이 데이터)와 기대값을 비교하여, 베리파이 데이터와 기대값이 일치하는 경우는 베리파이 처리가 정상인 것(베리파이 패스)으로 판정한다. 한편, 베리파이 데이터와 기대값이 일치하지 않는 경우는, 베리파이 처리가 이상인 것(베리파이 페일)으로 판정한다.
그리고 짝수의 메모리 블록(BLK_0, BLK_2, ..., BLK_2n) 중 적어도 하나에서 베리파이 처리가 이상인 것(베리파이 페일)으로 판정된 경우(스텝 S23: No), 재차, 스텝 S21∼S22의 처리를 실시한다.
한편, 짝수의 메모리 블록(BLK_0, BLK_2, ..., BLK_2n) 모두에서 베리파이 처리가 정상인 것(베리파이 패스)으로 판정된 경우(스텝 S23: Yes), 베리파이 제어 회로(28)는, 홀수의 메모리 블록(BLK_1, BLK_3, ..., BLK_2n+1)의 메모리 셀에 베리파이 데이터에 대응한 펄스를 인가한다(스텝 S24). 베리파이 데이터에 대응한 펄스를 인가할 때는, 각각의 홀수의 메모리 블록(BLK_1, BLK_3, ..., BLK_2n+1)에 순차적으로 펄스를 인가하도록 해도 되고, 또한 복수의 홀수의 메모리 블록(BLK_1, BLK_3, ..., BLK_2n+1)에 일괄하여 펄스를 인가하도록 해도 된다.
다음으로, 각각의 베리파이 회로(VF_0∼VF_m)는, 홀수의 메모리 블록(BLK_1, BLK_3, ..., BLK_2n+1)에 베리파이 처리를 실시한다(스텝 S25). 구체적으로는, 각각의 베리파이 회로(VF_0∼VF_m)는, 메모리 셀(MC)에 보관되어 있는 베리파이 데이터(소거 베리파이 데이터 또는 기록 베리파이 데이터)와 기대값을 비교하여, 베리파이 데이터와 기대값이 일치하는 경우는 베리파이 처리가 정상인 것(베리파이 패스)으로 판정한다. 한편, 베리파이 데이터와 기대값이 일치하지 않는 경우는, 베리파이 처리가 이상인 것(베리파이 페일)으로 판정한다.
그리고 홀수의 메모리 블록(BLK_1, BLK_3, ..., BLK_2n+1) 중 적어도 하나에서 베리파이 처리가 이상인 것(베리파이 페일)으로 판정된 경우(스텝 S26: No), 재차, 스텝 S24∼S25의 처리를 실시한다.
한편, 홀수의 메모리 블록(BLK_1, BLK_3, ..., BLK_2n+1) 모두에서 베리파이 처리가 정상인 것(베리파이 패스)으로 판정된 경우(스텝 S26: Yes), 반도체 기억 장치의 베리파이 처리가 정상인 것으로 하여, 베리파이 처리를 종료한다.
도 4, 도 5에 나타낸 베리파이 처리에서는, 모든 메모리 블록(BLK_0∼BLK_2n+1)에 베리파이 데이터에 대응한 펄스를 인가하고 있었다(도 4의 스텝 S1, 도 5의 스텝 S11 참조). 이 때문에, 짝수의 메모리 블록 및 홀수의 메모리 블록 중 어느 한쪽에서 베리파이 처리가 이상으로 판정된 경우에도, 모든 메모리 블록에 펄스가 인가되어, 결과적으로, 정상으로 판정된 쪽의 메모리 블록에도 펄스가 인가되어 있었다. 이에 대하여, 도 6에 나타낸 베리파이 처리에서는, 짝수의 메모리 블록과 홀수의 메모리 블록을 분리하여 펄스의 인가 및 베리파이 처리를 실시하고 있다. 따라서, 짝수의 메모리 블록 및 홀수의 메모리 블록 중, 베리파이 처리가 이상으로 판정된 쪽의 메모리 블록에만 펄스를 인가할 수 있으므로, 결과적으로, 각각의 메모리 블록에 여분의 펄스가 인가되는 것을 억제할 수 있다.
또한, 도 4∼도 6에 나타낸 베리파이 처리에서는, 먼저 짝수의 메모리 블록(BLK_0, BLK_2, ..., BLK_2n)에 베리파이 처리를 실시하고, 그 후, 홀수의 메모리 블록(BLK_1, BLK_3, ..., BLK_2n+1)에 베리파이 처리를 실시한 경우에 관하여 설명했다. 그러나 베리파이 처리를 실시하는 순서는 반대여도 된다. 즉, 먼저 홀수의 메모리 블록(BLK_1, BLK_3, ..., BLK_2n+1)에 베리파이 처리를 실시하고, 그 후, 짝수의 메모리 블록(BLK_0, BLK_2, ..., BLK_2n)에 베리파이 처리를 실시해도 된다.
특허문헌 1에 개시되어 있는 반도체 기억 장치에서는, 센스 앰프와는 별도로 하나의 베리파이용 앰프가 설치되어 있다. 그리고 각각의 메모리 셀의 베리파이 처리는 이 하나의 베리파이용 앰프를 이용하여 실시되고 있다. 여기서, 베리파이 처리는 블록 단위로 실시되므로, 특허문헌 1에 개시되어 있는 반도체 기억 장치에서는, 하나의 베리파이용 앰프를 이용하여, 블록 단위로 순서대로(시리얼로) 베리파이 처리가 실시된다.
그러나 최근, 반도체 기억 장치의 메모리 용량은 증가 일로를 걷고 있다. 이 때문에, 특허문헌 1에 개시되어 있는 반도체 기억 장치와 같이 베리파이 처리를 블록 단위로 순서대로(연속적으로) 실시한 경우는, 베리파이 처리에 많은 시간을 필요로 한다는 문제가 있었다.
이하, 관련 기술에 따른 반도체 기억 장치를 이용하여 본원의 과제에 관하여 상세하게 설명한다. 도 13은, 관련 기술에 따른 반도체 기억 장치를 설명하기 위한 도면이다. 도 13에 나타내는 바와 같이, 관련 기술에 따른 반도체 기억 장치(101)는, 메모리 블록(111_0∼111_2n+1), 센스 앰프 블록(112_0∼112_m), 워드선 드라이버(113), 판독 데이터 셀렉터(114), 기록 회로(115), 데이터 래치 회로(116), 베리파이 데이터 셀렉터(117), 베리파이용 앰프(118)(VSA), 데이터 제어 회로(121), 데이터 입출력단자(122), 어드레스 제어 회로(123), 및 어드레스 입력단자(124)를 구비한다. 한 쌍의 메모리 블록(111_0∼111_2n+1) 및 센스 앰프 블록(112_0∼112_m)은, 단위 메모리 어레이(110_0∼110_m)를 구성하고 있다.
또한, 관련 기술에 따른 반도체 기억 장치(101)가 구비하는 메모리 블록(111_0∼111_2n+1), 센스 앰프 블록(112_0∼112_m), 워드선 드라이버(113), 판독 데이터 셀렉터(114), 기록 회로(115), 데이터 래치 회로(116), 데이터 제어 회로(121), 데이터 입출력단자(122), 어드레스 제어 회로(123), 및 어드레스 입력단자(124)는 각각, 도 2에 나타낸 반도체 기억 장치(1)가 구비하는 메모리 블록(11_0∼11_2n+1), 센스 앰프 블록(12_0∼12_m), 워드선 드라이버(13), 판독 데이터 셀렉터(14), 기록 회로(15), 데이터 래치 회로(16), 데이터 제어 회로(21), 데이터 입출력단자(22), 어드레스 제어 회로(23), 및 어드레스 입력단자(24)에 대응하고 있다. 따라서, 베리파이 처리 이외의 동작에 관해서는, 도 2에 나타낸 반도체 장치(1)와 공통되므로 중복된 설명은 생략한다.
관련 기술에 따른 반도체 기억 장치(101)에서는, 메모리 블록(BLK)의 메모리 셀(MC)로부터 베리파이 데이터를 판독할 때, 메모리 셀(MC)의 부비트선(BL)과 주비트선(GBLw)을 스위치(SW)를 사용하여 접속하고, 주비트선(GBLw)을 통해 메모리 셀(MC)의 베리파이 데이터를 판독한다. 판독된 베리파이 데이터는, 베리파이 데이터 셀렉터(117)에서 선택된 후, 베리파이용 앰프(VSA)(118)에서 증폭된다. 증폭된 베리파이 데이터는, CPU(도시하지 않음)에서 기대값과 비교되어, 베리파이 처리가 정상인지 여부가 판정된다.
도 14는, 관련 기술에 따른 반도체 기억 장치에 있어서의 베리파이 처리를 설명하기 위한 플로우차트이다. 관련 기술에 따른 반도체 기억 장치(101)에서 베리파이 처리를 실시할 때는, 우선 메모리 블록(BLK_0)에 펄스를 인가하여, 메모리 블록(BLK_0)의 메모리 셀(MC_0)에 베리파이 데이터를 기록한다(스텝 S101). 그 후, 메모리 블록(BLK_0)에 베리파이 처리를 실시한다(스텝 S102). 구체적으로는, 스위치(SW_0)를 도통(導通)시켜, 메모리 블록(BLK_0)의 부비트선(BL_0)과 주비트선(GBLw)을 접속해서, 메모리 셀(MC_0)에 보관되어 있는 베리파이 데이터를 주비트선(GBLw)을 통해 판독한다. 그리고 판독된 베리파이 데이터를 베리파이용 앰프(VSA)(118)에서 증폭하고, 증폭 후의 베리파이 데이터와 기대값을 비교함으로써 베리파이 처리가 실시된다.
그리고 베리파이 처리가 이상인 것(베리파이 페일)으로 판정된 경우는(스텝 S103: No), 재차, 스텝 S101∼S102의 동작을 반복한다. 한편, 베리파이 처리가 정상인 것(베리파이 패스)으로 판정된 경우는(스텝 S103: Yes), 다음 메모리 블록(BLK_1)의 베리파이 처리를 실시한다.
즉, 메모리 블록(BLK_1)에 펄스를 인가하여, 메모리 블록(BLK_1)의 메모리 셀(MC_1)에 베리파이 데이터를 기록한다(스텝 S104). 그 후, 메모리 블록(BLK_1)에 베리파이 처리를 실시한다(스텝 S105). 구체적으로는, 스위치(SW_1)를 도통시켜, 메모리 블록(BLK_1)의 부비트선(BL_1)과 주비트선(GBLw)을 접속해서, 메모리 셀(MC_1)에 보관되어 있는 베리파이 데이터를 주비트선(GBLw)을 통해 판독한다. 그리고 판독된 베리파이 데이터를 베리파이용 앰프(VSA)(118)에서 증폭하고, 증폭 후의 베리파이 데이터와 기대값을 비교함으로써 베리파이 처리가 실시된다.
그리고 베리파이 처리가 이상인 것(베리파이 페일)으로 판정된 경우는(스텝 S106: No), 다시, 스텝 S104∼S105의 동작을 반복한다. 한편, 베리파이 처리가 정상인 것(베리파이 패스)으로 판정된 경우는(스텝 S106: Yes), 다음 메모리 블록(BLK_2)의 베리파이 처리를 실시한다. 이후, 같은 동작을 반복함으로써, 메모리 블록(BLK_2)∼메모리 블록(BLK_2n+1)의 베리파이 처리를 실시한다. 그리고 최종단의 메모리 블록(BLK_2n+1)의 베리파이 처리가 정상인 것(베리파이 패스)으로 판정된 경우(스텝 S109: Yes), 반도체 기억 장치(101)의 베리파이 처리가 정상인 것으로 하여, 베리파이 처리를 종료한다.
이처럼, 관련 기술에 따른 반도체 기억 장치(101)에서는, 센스 앰프(HSA_0∼HSA_m)와는 별도로 베리파이용 앰프(VSA)(118)를 설치하고 있다. 그리고 각각의 메모리 블록(BLK_0∼BLK_2n+1)의 베리파이 처리는 이 베리파이용 앰프(VSA)(118)를 이용하여 실시되고 있다. 여기서, 베리파이용 앰프(VSA)(118)는 하나뿐이므로, 각각의 메모리 블록(BLK_0∼BLK_2n+1)의 베리파이 처리는, 메모리 블록(BLK_0∼BLK_2n+1)마다 순서대로(시리얼로) 실시된다(도 14 참조).
그러나 상술한 바와 같이, 최근, 반도체 기억 장치의 메모리 용량은 증가 일로를 걷고 있기 때문에, 관련 기술에 따른 반도체 기억 장치(101)와 같이 베리파이 처리를 메모리 블록(BLK_0∼BLK_2n+1)마다 순서대로 실시한 경우는, 베리파이 처리에 많은 시간을 필요로 한다는 문제가 있었다.
이에 대하여 본 실시형태에 따른 반도체 기억 장치(1)(도 2 참조)에서는, 각각의 센스 앰프 블록(12_0∼12_m)이 구비하는 센스 앰프(HSA_0∼HSA_m)를 이용하여 베리파이 처리를 실시하고 있다. 다시 말해, 복수의 센스 앰프(HSA_0∼HSA_m)를 베리파이 데이터의 판독에 이용하고 있으므로, 복수의 메모리 블록에 대하여 동시에 베리파이 처리를 실시할 수 있다. 따라서, 반도체 기억 장치의 베리파이 처리에 필요한 시간을 단축할 수 있다.
또한, 본 실시형태에 따른 반도체 기억 장치(1)에서는, 복수의 메모리 블록의 베리파이 처리를 일괄하여 실시하는 것을 전제로 하고 있기 때문에, 베리파이 처리 대상이 되는 모든 메모리 블록의 메모리 셀의 데이터를 동일하게 할 필요가 있다. 예를 들면, 기록 베리파이는, 모든 메모리 셀에 일괄하여 기록을 행하는 테스트 동작시 등(예를 들면, 체커 패턴(checker pattern)의 기록시)에 행할 수 있다. 또한, 소거 베리파이에 관해서는, 플래시 메모리를 메모리 블록 단위로 소거한 경우에 행할 수 있다.
<실시형태 2>
다음으로, 실시형태 2에 따른 반도체 기억 장치, 및 반도체 기억 장치의 제어 방법에 관하여 설명한다. 도 7은, 실시형태 2에 따른 반도체 기억 장치를 나타내는 도면이다. 본 실시형태에 따른 반도체 기억 장치(2)에서는, 실시형태 1에서 설명한 반도체 기억 장치(1)(도 2 참조)와 비교하여, 각각의 베리파이 회로(VF_0∼VF_m)(35_0∼35_m)의 베리파이 결과(vrslt_0∼vrslt_m)를 베리파이 제어 회로(38)에 각각 독립적으로 송신하고 있는 점이 다르다. 이 이외는 실시형태 1에서 설명한 반도체 기억 장치(1)와 동일하므로, 동일한 구성요소에는 동일한 부호를 부여하여 중복된 설명은 생략한다.
도 7에 나타내는 바와 같이, 각각의 베리파이 회로(VF_0∼VF_m)(35_0∼35_m)의 베리파이 결과(vrslt_0∼vrslt_m)는, 각각 독립적으로 베리파이 제어 회로(38)에 공급된다. 도 8은, 본 실시형태에 따른 반도체 기억 장치(2)가 구비하는 베리파이 회로(VF_0∼VF_m)(35_0∼35_m)의 일례를 나타내는 회로도이다.
도 8에 나타내는 바와 같이, 각각의 베리파이 회로(VF_0∼VF_m)는, 논리 회로(XNOR_0∼XNOR_m)를 구비한다. 각각의 논리 회로(XNOR_0∼XNOR_m)는, 각각의 센스 앰프(HSA_0∼HSA_m)에서 판독된 메모리 셀의 데이터와, 베리파이 제어 회로(38)로부터 공급된 기대값 vctrl을 비교하여, 해당 비교 결과를 베리파이 결과(vrslt_0∼vrslt_m)로서 출력한다. 다시 말해, 각각의 논리 회로(XNOR_0∼XNOR_m)는, 각각의 센스 앰프(HSA_0∼HSA_m)의 출력(out_0∼out_m)과 베리파이 제어 회로(38)로부터 공급된 기대값 vctrl을 입력하여, 이들의 XNOR(배타적 논리 합의 부정)을 각각 독립적으로 베리파이 제어 회로(38)에 송신한다. 또한, 베리파이 제어 회로(38)로부터 공급되는 기대값 vctrl은, 모든 베리파이 회로(VF_0∼VF_m)에서 공통이다.
다음으로, 각각의 베리파이 회로(VF_0∼VF_m)(35_0∼35_m)에 있어서의 구체적인 동작에 관하여 설명한다. 우선, 소거 베리파이인 경우의 동작에 관하여 설명한다. 소거 베리파이인 경우, 각각의 메모리 블록(BLK_0∼BLK_2n+1)의 메모리 셀(MC_0∼MC_2n+1)에는 소거 베리파이 데이터가 보관되어 있으므로, 각각의 센스 앰프(HSA_0)의 출력의 기대값은 하이 레벨("H")이 된다. 이 경우, 베리파이 제어 회로(38)는, 각각의 베리파이 회로(VF_0∼VF_m)에 기대값 vctrl으로서 하이 레벨("H")을 설정한다.
베리파이 처리 대상이 된 메모리 블록이 정상인 경우, 센스 앰프(HSA_0∼HSA_m)의 출력(out_0∼out_m)은 하이 레벨("H")이므로, 각각의 논리 회로(XNOR_0∼XNOR_m)의 한쪽 입력에는 하이 레벨("H")의 신호가 공급된다. 또한, 각각의 논리 회로(XNOR_0∼XNOR_m)의 다른 쪽 입력에는 기대값 vctrl으로서 하이 레벨("H")의 신호가 공급되어 있으므로, 각각의 논리 회로(XNOR_0∼XNOR_m)는, 베리파이 결과(vrslt_0∼vrslt_m)로서 하이 레벨("H")의 신호(베리파이 패스를 나타낸다)를 각각 독립적으로 베리파이 제어 회로(38)에 송신한다.
한편, 베리파이 처리 대상이 된 메모리 블록이 이상인 경우는, 이상을 나타내는 메모리 셀에 대응하는 센스 앰프(HSA_0∼HSA_m)의 출력(out_0∼out_m)이 로우 레벨("L")이 된다. 이 경우는, 센스 앰프의 출력과 기대값이 일치하지 않으므로, 논리 회로(XNOR_0∼XNOR_m)의 출력 중, 이상을 나타내는 메모리 셀에 대응하는 논리 회로(XNOR)의 출력이 로우 레벨("L": 베리파이 페일을 나타낸다)이 된다. 베리파이 제어 회로(38)에는 각각 독립적으로 베리파이 결과(vrslt_0∼vrslt_m)가 공급되므로, 베리파이 제어 회로(38)는 이상을 나타내는 메모리 블록(BLK)을 특정할 수 있다.
다음으로, 기록 베리파이인 경우의 동작에 관하여 설명한다. 기록 베리파이인 경우, 각각의 메모리 블록(BLK_0∼BLK_2n+1)의 메모리 셀(MC_0∼MC_2n+1)에는 기록 베리파이 데이터가 보관되어 있으므로, 각각의 센스 앰프(HSA_0)의 출력의 기대값은 로우 레벨("L")이 된다. 이 경우, 베리파이 제어 회로(38)는, 각각의 베리파이 회로(VF_0∼VF_m)에 기대값 vctrl으로서 로우 레벨("L")을 설정한다.
베리파이 처리 대상이 된 메모리 블록이 정상인 경우, 각각의 센스 앰프(HSA_0∼HSA_m)의 출력(out_0∼out_m)은 로우 레벨("L")이므로, 각각의 논리 회로(XNOR_0∼XNOR_m)의 한쪽 입력에는 로우 레벨("L")의 신호가 공급된다. 또한, 각각의 논리 회로(XNOR_0∼XNOR_m)의 다른 쪽 입력에는 기대값 vctrl으로서 로우 레벨("L")의 신호가 공급되어 있으므로, 각각의 논리 회로(XNOR_0∼XNOR_m)는, 베리파이 결과(vrslt_0∼vrslt_m)로서 하이 레벨("H")의 신호(베리파이 패스를 나타낸다)를 각각 독립적으로 베리파이 제어 회로(38)에 송신한다.
한편, 베리파이 처리 대상이 된 메모리 블록이 이상인 경우는, 이상을 나타내는 메모리 셀에 대응하는 센스 앰프(HSA_0∼HSA_m)의 출력(out_0∼out_m)이 하이 레벨("H")이 된다. 이 경우는, 센스 앰프의 출력과 기대값이 일치하지 않으므로, 논리 회로(XNOR_0∼XNOR_m)의 출력 중, 이상을 나타내는 메모리 셀에 대응하는 논리 회로(XNOR)의 출력이 로우 레벨("L": 베리파이 페일을 나타낸다)이 된다. 베리파이 제어 회로(38)에는 각각 독립적으로 베리파이 결과(vrslt_0∼vrslt_m)가 공급되므로, 베리파이 제어 회로(38)는 이상을 나타내는 메모리 블록(BLK)을 특정할 수 있다.
예를 들면, 베리파이 제어 회로(38)는, 각각의 메모리 블록(BLK_0∼BLK_2n+1)과 대응하는 플래그 영역(flag area)을 구비하고 있으며, 베리파이 처리 결과가 정상인 경우, 베리파이 처리 결과가 정상인 메모리 블록(BLK)의 플래그를 "1"(베리파이 패스를 나타낸다)로 한다. 한편, 베리파이 처리 결과가 이상인 경우, 베리파이 처리 결과가 이상인 메모리 블록(BLK)의 플래그를 "0"(베리파이 페일을 나타낸다)으로 한다. 베리파이 제어 회로(38)는, 플래그를 이용함으로써, 베리파이 처리 결과가 정상인 메모리 블록(BLK)과, 베리파이 처리 결과가 이상인 메모리 블록(BLK)을 구별할 수 있다.
다음으로, 본 실시형태에 따른 반도체 기억 장치(2)에 있어서의 베리파이 처리의 흐름(반도체 기억 장치의 제어 방법)에 관하여, 도 9에 나타내는 플로우차트를 이용하여 설명한다. 또한, 이하에서 나타내는 베리파이 처리의 흐름은, 소거 베리파이 및 기록 베리파이에서 공통이다.
도 9에 나타내는 바와 같이, 우선, 베리파이 제어 회로(38)는, 메모리 블록(BLK_0)의 플래그가 "0"(베리파이 페일을 나타낸다)인지 여부를 판정한다. 최초의 플로우에서는, 메모리 블록(BLK_0)에 대하여 아직, 베리파이 데이터에 대응한 펄스가 인가되어 있지 않으므로, 메모리 블록(BLK_0)의 플래그는 "0"이다(스텝 S31: Yes). 따라서, 베리파이 제어 회로(38)는, 메모리 블록(BLK_0)에 대하여 베리파이 데이터에 대응한 펄스를 인가한다(스텝 S32).
다음으로, 베리파이 제어 회로(38)는, 메모리 블록(BLK_1)의 플래그가 "0"(베리파이 페일을 나타낸다)인지 여부를 판정한다. 최초의 플로우에서는, 메모리 블록(BLK_1)에 대하여 아직, 베리파이 데이터에 대응한 펄스가 인가되어 있지 않으므로, 메모리 블록(BLK_1)의 플래그는 "0"이다(스텝 S33: Yes). 따라서, 베리파이 제어 회로(38)는, 메모리 블록(BLK_1)에 대하여 베리파이 데이터에 대응한 펄스를 인가한다(스텝 S34).
이후, 메모리 블록(BLK_2∼BLK_2n+1)에 관해서도 마찬가지로, 베리파이 제어 회로(38)는, 메모리 블록(BLK_2∼BLK_2n+1)의 플래그가 "0"(베리파이 페일을 나타낸다)인지 여부를 판정한다. 최초의 플로우에서는, 메모리 블록(BLK_2∼BLK_2n+1)에 대하여 아직, 베리파이 데이터에 대응한 펄스가 인가되어 있지 않으므로, 메모리 블록(BLK_2∼BLK_2n+1)의 플래그는 "0"이다. 따라서, 베리파이 제어 회로(38)는, 메모리 블록(BLK_2∼BLK_2n+1)에 대하여 베리파이 데이터에 대응한 펄스를 인가한다. 이러한 동작에 의하여, 각각의 메모리 블록(BLK_0∼BLK_2n+1)에 대하여 베리파이 데이터에 대응한 펄스가 인가된다.
그 후, 각각의 베리파이 회로(VF_0∼VF_m)는, 짝수의 메모리 블록(BLK_0, BLK_2, ..., BLK_2n)에 베리파이 처리를 실시한다. 또한, 베리파이 제어 회로(38)는, 베리파이 처리 결과에 대응하여 플래그를 설정한다(스텝 S37). 구체적으로는, 각각의 베리파이 회로(VF_0∼VF_m)는, 메모리 셀(MC)에 보관되어 있는 베리파이 데이터(소거 베리파이 데이터 또는 기록 베리파이 데이터)와 기대값을 비교하여, 베리파이 데이터와 기대값이 일치하는 경우는 베리파이 처리가 정상인 것(베리파이 패스)으로 판정한다. 한편, 베리파이 데이터와 기대값이 일치하지 않는 경우는, 베리파이 처리가 이상인 것(베리파이 페일)으로 판정한다.
각각의 베리파이 회로(VF_0∼VF_m)는, 베리파이 처리가 정상인 경우, 베리파이 결과(vrslt_0∼vrslt_m)로서 베리파이 패스를 나타내는 신호를 베리파이 제어 회로(38)에 송신한다. 한편, 각각의 베리파이 회로(VF_0∼VF_m)는, 베리파이 처리가 이상인 경우, 베리파이 결과(vrslt_0∼vrslt_m)로서 베리파이 페일을 나타내는 신호를 베리파이 제어 회로(38)에 송신한다.
베리파이 제어 회로(38)는, 베리파이 결과(vrslt_0∼vrslt_m)에 대응하여, 각각의 메모리 블록(BLK_0∼BLK_2n+1)의 플래그를 재작성(rewrite)한다. 구체적으로는, 베리파이 제어 회로(38)는, 베리파이 처리 결과가 정상인 경우, 베리파이 처리 결과가 정상인 메모리 블록(BLK)의 플래그를 "1"(베리파이 패스를 나타낸다)로 한다. 한편, 베리파이 처리 결과가 이상인 경우, 베리파이 처리 결과가 이상인 메모리 블록(BLK)의 플래그를 "0"(베리파이 페일을 나타낸다)으로 한다.
다음으로, 각각의 베리파이 회로(VF_0∼VF_m)는, 홀수의 메모리 블록(BLK_1, BLK_3, ..., BLK_2n+1)에 베리파이 처리를 실시한다. 또한, 베리파이 제어 회로(38)는, 베리파이 처리 결과에 대응하여 플래그를 설정한다(스텝 S38). 또한, 스텝 S38의 처리에 관해서는, 스텝 S37의 처리와 동일하므로 중복된 설명은 생략한다.
그 후, 베리파이 제어 회로(38)는, 모든 메모리 블록(BLK_0∼BLK_2n+1)의 플래그가 "1"(베리파이 패스를 나타낸다)인지 여부를 판정한다. 모든 메모리 블록(BLK_0∼BLK_2n+1)의 플래그가 "1"(베리파이 패스를 나타낸다)인 경우는(스텝 S39: Yes), 반도체 기억 장치(2)의 베리파이 처리가 정상인 것으로 하여, 베리파이 처리를 종료한다. 한편, 메모리 블록(BLK_0∼BLK_2n+1)의 플래그 중에 "0"(베리파이 페일을 나타낸다)이 포함되어 있는 경우는(스텝 S39: No), 스텝 S31 이후의 처리를 반복한다.
예를 들면, 메모리 블록(BLK_0)의 플래그가 "1"(베리파이 패스를 나타낸다) 인 경우는(스텝 S31: No), 메모리 블록(BLK_0)에 펄스를 인가하는 일 없이, 스텝 S33으로 이동한다. 또한, 예를 들면, 메모리 블록(BLK_1)의 플래그가 "0"(베리파이 페일을 나타낸다)인 경우는(스텝 S33: Yes), 다시, 메모리 블록(BLK_1)에 펄스를 인가한다(스텝 S34). 다시 말해, 2회째 이후의 스텝 S31∼S36에서는, 플래그가 "0"(베리파이 페일을 나타낸다)인 메모리 블록(BLK)에 대하여, 재차 펄스를 인가한다.
그 후, 각각의 베리파이 회로(VF_0∼VF_m)는, 짝수의 메모리 블록(BLK_0, BLK_2, ..., BLK_2n)에 베리파이 처리를 실시한다. 또한, 베리파이 제어 회로(38)는, 베리파이 처리 결과에 대응하여 플래그를 설정한다(스텝 S37).
마찬가지로, 각각의 베리파이 회로(VF_0∼VF_m)는, 홀수의 메모리 블록(BLK_1, BLK_3, ..., BLK_2n+1)에 베리파이 처리를 실시한다. 또한, 베리파이 제어 회로(38)는, 베리파이 처리 결과에 따라 플래그를 설정한다(스텝 S38).
그 후, 베리파이 제어 회로(38)는, 모든 메모리 블록(BLK_0∼BLK_2n+1)의 플래그가 "1"(베리파이 패스를 나타낸다)인지 여부를 판정한다. 모든 메모리 블록(BLK_0∼BLK_2n+1)의 플래그가 "1"(베리파이 패스를 나타낸다)인 경우는(스텝 S39: Yes), 반도체 기억 장치(2)의 베리파이 처리가 정상인 것으로 하여, 베리파이 처리를 종료한다. 한편, 메모리 블록(BLK_0∼BLK_2n+1)의 플래그 중에 "0"(베리파이 페일을 나타낸다)이 포함되어 있는 경우는(스텝 S39: No), 다시, 스텝 S31 이후의 처리를 반복한다.
본 실시형태에 따른 반도체 기억 장치(2)에서는, 각각의 베리파이 회로(VF_0∼VF_m)(35_0∼35_m)의 베리파이 결과(vrslt_0∼vrslt_m)를 베리파이 제어 회로(38)에 각각 독립적으로 송신하도록 구성하고 있다. 따라서, 각각의 메모리 블록(BLK_0∼BLK_2n+1)의 베리파이 처리 결과를 개별적으로 판정할 수 있다. 이에 의해, 다시, 메모리 블록에 펄스를 인가할 때에, 베리파이 페일인 메모리 블록에만 선택적으로 펄스를 인가할 수 있다. 따라서, 메모리 블록으로의 불필요한 펄스의 인가를 회피할 수 있으므로, 메모리 셀의 열화를 억제할 수 있다. 또한, 펄스 인가 시간을 단축할 수 있으므로, 베리파이 처리 시간을 단축할 수 있으며, 테스트 비용을 절감할 수 있다.
<실시형태 3>
다음으로, 실시형태 3에 따른 반도체 기억 장치, 및 반도체 기억 장치의 제어 방법에 관하여 설명한다. 도 10은, 실시형태 3에 따른 반도체 기억 장치를 나타내는 도면이다. 본 실시형태에 따른 반도체 기억 장치(3)에서는, 실시형태 1에서 설명한 반도체 기억 장치(1)(도 2 참조)와 비교하여, 각각의 베리파이 회로(VF_0∼VF_m)(45_0∼45_m)의 베리파이 결과(vrslt_0∼vrslt_m)를 시분할(時分割)로 베리파이 제어 회로(48)에 송신하고 있는 점이 다르다. 이 이외는 실시형태 1에서 설명한 반도체 기억 장치(1)와 동일하므로, 동일한 구성요소에는 동일한 부호를 부여하여 중복된 설명은 생략한다.
도 10에 나타내는 바와 같이, 각각의 베리파이 회로(VF_0∼VF_m)(45_0∼45_m)에는, 선택 신호(sel_0∼sel_m)가 공급된다. 각각의 베리파이 회로(VF_0∼VF_m)(45_0∼45_m)는, 선택 신호(sel_0∼sel_m)가 활성 상태가 된 타이밍에서, 베리파이 결과(vrslt_0∼vrslt_m)를 베리파이 제어 회로(48)에 송신한다.
도 11은, 본 실시형태에 따른 반도체 기억 장치(3)가 구비하는 베리파이 회로(VF_0∼VF_m)(45_0∼45_m)의 일례를 나타내는 회로도이다. 도 11에 나타내는 바와 같이, 각각의 베리파이 회로(VF_0∼VF_m)(45_0∼45_m)는, 논리 회로(XNOR_0∼XNOR_m)와, 논리 회로(OR_0∼OR_m)와, 논리 회로(AND_0∼AND_m)를 구비한다. 또한, 베리파이 제어 회로(48)에는 클록 신호(CLK)가 공급된다.
각각의 논리 회로(XNOR_0∼XNOR_m)는, 각각의 센스 앰프(HSA_0∼HSA_m)로 판독된 메모리 셀의 베리파이 데이터와, 베리파이 제어 회로(48)로부터 공급된 기대값 vctrl을 비교하여, 해당 비교 결과를 베리파이 처리의 결과로서 출력한다. 다시 말해, 각각의 논리 회로(XNOR_0∼XNOR_m)는, 각각의 센스 앰프(HSA_0∼HSA_m)의 출력(out_0∼out_m)과 베리파이 제어 회로(48)로부터 공급된 기대값 vctrl을 입력하고, 이들의 XNOR(배타적 논리 합의 부정)을 각각의 논리 회로(OR_0∼OR_m)의 한쪽 입력으로 공급한다. 또한, 베리파이 제어 회로(48)로부터 공급되는 기대값 vctrl은, 모든 베리파이 회로(VF_0∼VF_m)에서 공통이다.
예를 들면 소거 베리파이(erase verify)인 경우, 각각의 메모리 블록(BLK_0∼BLK_2n+1)의 메모리 셀(MC_0∼MC_2n+1)에는 소거 베리파이 데이터가 보관되어 있으므로, 각각의 센스 앰프(HSA_0∼HSA_m)의 출력의 기대값은 하이 레벨("H")이 된다. 이 경우, 베리파이 제어 회로(48)는, 각각의 베리파이 회로(VF_0∼VF_m)에 기대값 vctrl으로서 하이 레벨("H")을 설정한다.
베리파이 처리의 대상이 된 메모리 셀이 정상인 경우, 센스 앰프(HSA_0∼HSA_m)의 출력은 하이 레벨("H")이 되므로, 논리 회로(XNOR_0∼XNOR_m)의 한쪽 입력으로는 하이 레벨("H")의 신호가 공급된다. 또한, 각각의 논리 회로(XNOR_0∼XNOR_m)의 다른 쪽 입력으로는 기대값 vctrl으로서 하이 레벨("H")의 신호가 공급되고 있으므로, 논리 회로(XNOR_0∼XNOR_m)는, 하이 레벨("H")의 신호(vfout_0∼vfout_m)를 각각의 논리 회로(OR_0∼OR_m)의 한쪽 입력으로 공급한다.
한편, 베리파이 처리의 대상이 된 메모리 셀이 이상인 경우, 센스 앰프(HSA_0∼HSA_m)의 출력은 로우 레벨("L")이 된다. 이 경우는, 센스 앰프의 출력과 기대값이 일치하지 않으므로, 논리 회로(XNOR_0∼XNOR_m)의 출력은 로우 레벨("L")이 된다. 따라서, 논리 회로(XNOR_0∼XNOR_m)는, 베리파이 처리의 결과로서 로우 레벨("L")의 신호(vfout_0∼vfout_m)를 각각의 논리 회로(OR_0∼OR_m)의 한쪽 입력으로 공급한다.
또한, 기록 베리파이(write verify)인 경우는, 각각의 메모리 블록(BLK_0∼BLK_2n+1)의 메모리 셀(MC_0∼MC_2n+1)에 기록 베리파이 데이터가 보관되어 있으므로, 각각의 센스 앰프(HSA_0∼HSA_m)의 출력의 기대값은 로우 레벨("L")이 된다. 이 경우, 베리파이 제어 회로(48)는, 각각의 베리파이 회로(VF_0∼VF_m)에 기대값 vctrl으로서 로우 레벨("L")을 설정한다.
베리파이 처리의 대상이 된 메모리 셀이 정상인 경우, 센스 앰프(HSA_0∼HSA_m)의 출력은 로우 레벨("L")이 되므로, 논리 회로(XNOR_0∼XNOR_m)의 한쪽 입력으로는 로우 레벨("L")의 신호가 공급된다. 또한, 각각의 논리 회로(XNOR_0∼XNOR_m)의 다른 쪽 입력으로는 기대값 vctrl으로서 로우 레벨("L")의 신호가 공급되어 있으므로, 논리 회로(XNOR_0∼XNOR_m)는, 베리파이 처리의 결과로서 하이 레벨("H")의 신호(vfout_0∼vfout_m)를 각각의 논리 회로(OR_0∼OR_m)의 한쪽 입력으로 공급한다.
한편, 베리파이 처리의 대상이 된 메모리 셀이 이상인 경우, 센스 앰프(HSA_0∼HSA_m)의 출력은 하이 레벨("H")이 된다. 이 경우는, 센스 앰프의 출력과 기대값이 일치하지 않으므로, 논리 회로(XNOR_0∼XNOR_m)의 출력은 로우 레벨("L")이 된다. 따라서, 논리 회로(XNOR_0∼XNOR_m)는, 베리파이 처리의 결과로서 로우 레벨("L")의 신호(vfout_0∼vfout_m)를 각각의 논리 회로(OR_0∼OR_m)의 한쪽 입력으로 공급한다.
각각의 논리 회로(OR_0∼OR_m)의 다른 쪽 입력으로는, 베리파이 제어 회로(48)로부터 선택 신호(sel_0∼sel_m)가 공급된다. 각각의 논리 회로(OR_0∼OR_m)는, 선택 신호(sel_0∼sel_m)가 활성 상태(로우 레벨 "L")인 경우, 각각의 논리 회로(XNOR_0∼XNOR_m)의 출력(vfout_0∼vfout_m)(베리파이 처리의 결과)을 각각의 논리 회로(AND_0∼AND_m)의 한쪽 입력으로 출력한다.
한편, 각각의 논리 회로(OR_0∼OR_m)는, 선택 신호(sel_0∼sel_m)가 비활성 상태(하이 레벨 "H")인 경우, 각각의 논리 회로(XNOR_0∼XNOR_m)의 출력(vfout_0∼vfout_m)(베리파이 처리의 결과)에 관계없이, 하이 레벨("H")의 신호를 각각의 논리 회로(AND_0∼AND_m)의 한쪽 입력으로 출력한다. 환언하면, 각각의 논리 회로(OR_0∼OR_m)는, 선택 신호(sel_0∼sel_m)가 비활성 상태(하이 레벨 "H")인 경우, 각각의 논리 회로(XNOR_0∼XNOR_m)의 출력(vfout_0∼vfout_m)(베리파이 처리의 결과)을 마스크한다.
각각의 논리 회로(AND_0∼AND_m)는, 각각의 논리 회로(OR_0∼OR_m)의 출력과 전단(前段)의 베리파이 결과(베리파이 회로(45_0)는 첫단(初段)의 회로이므로, 초기값으로서 "H"가 설정되어 있다)를 입력하고, 선택 신호가 비활성 상태인 경우에는 전단(前段)의 베리파이 결과를 출력하며, 선택 신호(sel_0∼sel_m)가 활성 상태인 경우에는 각각의 논리 회로(OR_0∼OR_m)로부터 공급된 논리 회로(XNOR_0∼XNOR_m)의 출력(vfout_0∼vfout_m)을 출력한다.
다시 말해, 각각의 논리 회로(OR_0∼OR_m)는, 선택 신호(sel_0∼sel_m)가 비활성 상태(하이 레벨 "H")인 경우, 하이 레벨("H")의 신호를 각각의 논리 회로(AND_0∼AND_m)의 한쪽 입력으로 출력한다. 이 경우, 각각의 논리 회로(AND_0∼AND_m)는 전단(前段)의 베리파이 처리의 결과를 고려하지 않는다.
한편, 각각의 논리 회로(OR_0∼OR_m)는, 선택 신호(sel_0∼sel_m)가 활성 상태(로우 레벨 "L")인 경우, 각각의 논리 회로(XNOR_0∼XNOR_m)의 출력(vfout_0∼vfout_m)을 각각의 논리 회로(AND_0∼AND_m)의 한쪽 입력으로 출력한다. 각각의 논리 회로(AND_0∼AND_m)의 다른 쪽 입력으로는, 전단(前段)으로부터 하이 레벨("H")의 신호가 공급되어 있으므로, 각각의 논리 회로(AND_0∼AND_m)는, 각각의 논리 회로(OR_0∼OR_m)로부터 공급된 논리 회로(XNOR_0∼XNOR_m)의 출력(vfout_0∼vfout_m)을 출력한다.
다음으로, 베리파이 회로(VF_0∼VF_m)(45_0∼45_m)의 동작에 관하여, 도 12에 나타내는 타이밍 차트를 이용하여 설명한다. 도 12에 나타내는 바와 같이, 각각의 선택 신호(sel_0∼sel_m)는, 클록 신호(CLK)에 동기하여 천이(遷移)한다. 또한, 각각의 논리 회로(XNOR_0∼XNOR_m)는, 베리파이 처리의 결과(vfout_0∼vfout_m)를 출력하고 있다. 초기 상태에서는, 각각의 선택 신호(sel_0∼sel_m)가 비활성 상태(하이 레벨 "H")로 되어 있다.
타이밍 t1에서 선택 신호(sel_0)가 활성 상태(로우 레벨 "L")가 되면, 도 11에 나타내는 베리파이 회로(VF_0)의 논리 회로(OR_0)는, 논리 회로(XNOR_0)의 출력(vfout_0)(베리파이 처리의 결과)을 논리 회로(AND_0)의 한쪽 입력으로 출력한다. 논리 회로(AND_0)의 다른 쪽 입력으로는 하이 레벨("H")의 신호가 공급되고 있으므로, 논리 회로(AND_0)는, 논리 회로(OR_0)로부터 공급된 논리 회로(XNOR_0)의 출력(vfout_0)을 베리파이 결과(vrslt_0)로서 출력한다.
후단(後段)의 베리파이 회로(VF_1∼VF_m)에는 비활성 상태(하이 레벨 "H")의 선택 신호(sel_1∼sel_m)가 공급되고 있으므로, 후단(後段)의 베리파이 회로(VF_1∼VF_m)의 논리 회로(AND_1∼AND_m)는, 베리파이 회로(VF_0)의 베리파이 결과(vrslt_0)를 후단(後段)으로 전달한다. 그 후, 타이밍 t2에서, 베리파이 제어 회로(48)는, 논리 회로(AND_m)의 출력(vrslt_m), 다시 말해, 베리파이 회로(VF_0)로부터 송신된 베리파이 결과(vfout_0)를 획득한다.
그 후, 타이밍 t3에서 선택 신호(sel_0)가 비활성 상태(하이 레벨 "H"), 선택 신호(sel_1)가 활성 상태(로우 레벨 "L")가 되면, 도 11에 나타내는 베리파이 회로(VF_0)의 논리 회로(OR_0)는, 하이 레벨("H")의 신호를 논리 회로(AND_0)의 한쪽 입력으로 출력한다. 따라서, 논리 회로(AND_0)는, 하이 레벨("H")의 신호(vrslt_0)를 출력한다. 또한, 베리파이 회로(VF_1)의 논리 회로(OR_1)는, 논리 회로(XNOR_1)의 출력(vfout_1)(베리파이 처리의 결과)을 논리 회로(AND_1)의 한쪽 입력으로 출력한다. 논리 회로(AND_1)의 다른 쪽 입력으로는 하이 레벨("H")의 신호가 공급되고 있으므로, 논리 회로(AND_1)는, 논리 회로(OR_1)로부터 공급된 논리 회로(XNOR_1)의 출력(vfout_1)을 베리파이 결과(vrslt_1)로서 출력한다.
후단(後段)의 베리파이 회로(VF_2∼VF_m)에는 비활성 상태(하이 레벨 "H")의 선택 신호(sel_2∼sel_m)가 공급되고 있으므로, 후단(後段)의 베리파이 회로(VF_2∼VF_m)의 논리 회로(AND_2∼AND_m)는, 베리파이 회로(VF_1)의 베리파이 결과(vrslt_1)를 후단(後段)으로 전달한다. 그 후, 타이밍 t4에서, 베리파이 제어 회로(48)는, 논리 회로(AND_m)의 출력(vrslt_m), 다시 말해, 베리파이 회로(VF_1)로부터 송신된 베리파이 결과(vfout_1)를 획득한다.
이후, 같은 동작을 반복함으로써, 베리파이 회로(VF_2∼VF_m)의 베리파이 처리의 결과(vfout_2∼vfout_m)가 시분할로 획득된다.
실시형태 2에서 설명한 반도체 기억 장치(2)에서는, 각각의 베리파이 회로(VF_0∼VF_m)의 베리파이 결과(vrslt_0∼vrslt_m)를 베리파이 제어 회로(38)에 각각 독립적으로 송신하기 위하여, 비트선 방향으로 베리파이 회로(VF_0∼VF_m)와 같은 수만큼의 배선을 배치할 필요가 있었다. 이 때문에 레이아웃의 자유도가 제한되는 경우가 있었다.
이에 대하여 본 실시형태에 따른 반도체 기억 장치(3)에서는, 실시형태 1에 따른 반도체 기억 장치(1)와 마찬가지로, 각각의 베리파이 회로(VF_0∼VF_m)를 순차적으로 접속하고 있다. 그리고 각각의 베리파이 회로(VF_0∼VF_m)의 베리파이 결과(vrslt_0∼vrslt_m)를 시분할로 베리파이 제어 회로(48)에 송신하도록 구성하고 있다. 따라서, 레이아웃의 자유도가 제한되는 것을 억제하면서, 각각의 메모리 블록(BLK_0∼BLK_2n+1)의 베리파이 처리의 결과를 개별적으로 판정할 수 있다.
이상, 본 발명자에 의해 이루어진 발명을 실시형태에 근거하여 구체적으로 설명했지만, 본 발명은 상기 실시형태로 한정되는 것이 아니라, 그 요지를 일탈하지 않는 범위에서 여러 가지로 변경 가능하다는 것은 말할 필요도 없다.
1, 2, 3 반도체 기억 장치
10_0∼10_m 단위 메모리 어레이
11_0∼11_2n+1 메모리 블록
12_0∼12_m 센스 앰프 블록
13 워드선 드라이버
14 판독 데이터 셀렉터
15 기록 회로
16 데이터 래치 회로
21 데이터 제어 회로
22 데이터 입출력단자
23 어드레스 제어 회로
24 어드레스 입력단자
25_0∼25_m, 35_0∼35_m, 45_0∼45_m 베리파이 회로
28, 38, 48 베리파이 제어 회로

Claims (12)

  1. 복수의 메모리 셀을 각각 구비하는 복수의 메모리 블록과, 상기 각각의 메모리 셀에 보관되어 있는 데이터를 판독하는 센스 앰프와, 상기 각각의 메모리 셀에 보관되어 있는 데이터를 베리파이하는 베리파이 회로를 각각 구비하는 복수의 단위 메모리 어레이와,
    상기 각각의 베리파이 회로에 있어서의 베리파이 처리를 제어하는 베리파이 제어 회로를 구비하며,
    상기 베리파이 제어 회로는, 상기 메모리 블록의 상기 메모리 셀에 베리파이 데이터에 대응한 펄스를 인가함과 아울러, 상기 각각의 베리파이 회로에 상기 베리파이 데이터에 대응한 기대값을 설정하고,
    상기 각각의 베리파이 회로는, 상기 센스 앰프로 판독된 상기 메모리 셀에 보관되어 있는 데이터와 상기 기대값을 비교함으로써 상기 베리파이 처리를 행하는,
    반도체 기억 장치.
  2. 청구항 1에 있어서,
    상기 단위 메모리 어레이가 각각 구비하는 상기 복수의 메모리 블록은, 제1 및 제2 메모리 블록이며,
    상기 센스 앰프 및 상기 베리파이 회로는, 상기 제1 메모리 블록과 상기 제2 메모리 블록 사이에 배치되어 있는,
    반도체 기억 장치.
  3. 청구항 2에 있어서,
    상기 각각의 베리파이 회로는, 상기 제1 메모리 블록의 베리파이 처리를 행한 후에, 상기 제2 메모리 블록의 베리파이 처리를 행하는, 반도체 기억 장치.
  4. 청구항 2에 있어서,
    상기 베리파이 제어 회로는, 상기 제1 및 제2 메모리 블록의 메모리 셀에 상기 베리파이 데이터에 대응한 펄스를 인가하고,
    상기 각각의 베리파이 회로는,
    상기 제1 메모리 블록의 베리파이 처리를 행하고,
    상기 제1 메모리 블록이 상기 베리파이 처리에서 정상으로 판정된 경우에, 상기 제2 메모리 블록의 베리파이 처리를 행하는,
    반도체 기억 장치.
  5. 청구항 2에 있어서,
    상기 각각의 베리파이 회로는, 상기 베리파이 제어 회로가 상기 제1 메모리 블록의 메모리 셀에 상기 베리파이 데이터에 대응한 펄스를 인가한 후, 상기 제1 메모리 블록의 베리파이 처리를 행하고,
    상기 제1 메모리 블록이 상기 베리파이 처리에서 정상으로 판정된 경우, 상기 각각의 베리파이 회로는, 상기 베리파이 제어 회로가 상기 제2 메모리 블록의 메모리 셀에 상기 베리파이 데이터에 대응한 펄스를 인가한 후, 상기 제2 메모리 블록의 베리파이 처리를 행하는,
    반도체 기억 장치.
  6. 청구항 1에 있어서,
    상기 각각의 베리파이 회로는, 상기 각각의 베리파이 회로에 있어서의 상기 베리파이 처리의 결과를 상기 베리파이 제어 회로에 순차적으로 송신하도록 구성되어 있는, 반도체 기억 장치.
  7. 청구항 6에 있어서,
    상기 각각의 베리파이 회로는,
    상기 센스 앰프로 판독된 상기 메모리 셀에 보관되어 있는 데이터와 상기 기대값을 비교하여, 해당 비교 결과를 상기 베리파이 처리의 결과로서 출력하는 제1 논리 회로와,
    상기 제1 논리 회로의 출력과 전단(前段)의 베리파이 처리의 결과를 입력하여, 상기 제1 논리 회로의 출력과 상기 전단(前段)의 베리파이 처리의 결과가 모두 정상인 경우에, 정상을 나타내는 신호를 출력하는 제2 논리 회로를 구비하는,
    반도체 기억 장치.
  8. 청구항 1에 있어서,
    상기 각각의 베리파이 회로는, 상기 각각의 베리파이 회로에 있어서의 상기 베리파이 처리의 결과를 상기 베리파이 제어 회로에 각각 독립적으로 송신하도록 구성되어 있는, 반도체 기억 장치.
  9. 청구항 8에 있어서,
    상기 각각의 베리파이 회로는, 상기 센스 앰프로 판독된 상기 메모리 셀에 보관되어 있는 데이터와 상기 기대값을 비교하여, 해당 비교 결과를 상기 베리파이 처리의 결과로서 상기 베리파이 제어 회로에 출력하는 제3 논리 회로를 구비하는, 반도체 기억 장치.
  10. 청구항 1에 있어서,
    상기 베리파이 제어 회로는, 상기 각각의 베리파이 회로에 선택 신호를 시분할로 공급 가능하게 구성되어 있으며,
    상기 각각의 베리파이 회로는, 해당 베리파이 회로에 있어서의 상기 베리파이 처리의 결과를, 상기 선택 신호가 활성 상태가 된 타이밍에 상기 베리파이 제어 회로에 송신하는,
    반도체 기억 장치.
  11. 청구항 10에 있어서,
    상기 각각의 베리파이 회로는,
    상기 센스 앰프로 판독된 상기 메모리 셀에 보관되어 있는 데이터와 상기 기대값을 비교하여, 해당 비교 결과를 상기 베리파이 처리의 결과로서 출력하는 제4 논리 회로와,
    상기 선택 신호가 활성 상태인 때에, 상기 제4 논리 회로로부터 출력된 상기 베리파이 처리의 결과를 출력하는 제5 논리 회로와,
    상기 제5 논리 회로의 출력과 전단(前段)의 베리파이 처리의 결과를 입력하고, 상기 선택 신호가 비활성 상태인 경우에는 상기 전단(前段)의 베리파이 처리의 결과를 출력하고, 상기 선택 신호가 활성 상태인 경우에는 상기 제5 논리 회로로부터 출력된 상기 베리파이 처리의 결과를 출력하는 제6 논리 회로를 구비하는,
    반도체 기억 장치.
  12. 반도체 기억 장치의 제어 방법으로서,
    상기 반도체 기억 장치는, 복수의 메모리 셀을 각각 구비하는 복수의 메모리 블록과, 상기 각각의 메모리 셀에 보관되어 있는 데이터를 판독하는 센스 앰프와, 상기 각각의 메모리 셀에 보관되어 있는 데이터를 베리파이하는 베리파이 회로를 각각 구비하는 복수의 단위 메모리 어레이를 가지며,
    상기 메모리 블록의 상기 메모리 셀에 베리파이 데이터에 대응한 펄스를 인가함과 아울러, 상기 각각의 베리파이 회로에 상기 베리파이 데이터에 대응한 기대값을 설정하고,
    상기 각각의 베리파이 회로에서, 상기 센스 앰프로 판독된 상기 메모리 셀에 보관되어 있는 데이터와 상기 기대값을 비교함으로써 베리파이 처리를 행하는,
    반도체 기억 장치의 제어 방법.
KR1020180105267A 2017-09-21 2018-09-04 반도체 기억 장치, 및 반도체 기억 장치의 제어 방법 KR102653552B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017181448A JP6846321B2 (ja) 2017-09-21 2017-09-21 半導体記憶装置、及び半導体記憶装置の制御方法
JPJP-P-2017-181448 2017-09-21

Publications (2)

Publication Number Publication Date
KR20190033429A true KR20190033429A (ko) 2019-03-29
KR102653552B1 KR102653552B1 (ko) 2024-04-02

Family

ID=63209194

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180105267A KR102653552B1 (ko) 2017-09-21 2018-09-04 반도체 기억 장치, 및 반도체 기억 장치의 제어 방법

Country Status (5)

Country Link
US (1) US10566068B2 (ko)
EP (1) EP3460799B1 (ko)
JP (1) JP6846321B2 (ko)
KR (1) KR102653552B1 (ko)
CN (1) CN109545262B (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0600151A2 (en) * 1992-12-03 1994-06-08 Fujitsu Limited Nonvolatile semiconductor memory device having electrically and collectively erasable characteristics
KR19990083512A (ko) * 1998-04-27 1999-11-25 가네코 히사시 비휘발성반도체기억장치
JP2004318941A (ja) 2003-04-14 2004-11-11 Renesas Technology Corp 半導体集積回路
US6891756B2 (en) * 2003-02-27 2005-05-10 Stmicroelectronics S.A. Flash memory comprising an erase verify algorithm integrated into a programming algorithm
EP2326097A2 (en) * 2009-11-20 2011-05-25 Broadcom Corporation System and method for synchronizing 3D shutter glasses to television refresh rate

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2709751B2 (ja) * 1990-06-15 1998-02-04 三菱電機株式会社 不揮発性半導体記憶装置およびそのデータ消去方法
JP3392165B2 (ja) * 1993-01-05 2003-03-31 富士通株式会社 半導体記憶装置
US5886927A (en) * 1996-06-11 1999-03-23 Nkk Corporation Nonvolatile memory device with verify function
JP3527157B2 (ja) * 1999-11-26 2004-05-17 Necエレクトロニクス株式会社 不揮発性メモリを備えた半導体装置
US7304893B1 (en) * 2006-06-30 2007-12-04 Sandisk Corporation Method of partial page fail bit detection in flash memory devices
JP5253784B2 (ja) * 2007-10-17 2013-07-31 株式会社東芝 不揮発性半導体記憶装置
KR101855435B1 (ko) * 2010-11-15 2018-05-08 삼성전자주식회사 최대 검증-시간을 조절할 수 있는 비휘발성 메모리 장치, 이의 동작 방법, 및 이를 포함하는 메모리 시스템
JP5803480B2 (ja) * 2011-09-20 2015-11-04 株式会社ソシオネクスト 半導体記憶装置及びデータ読み出し方法
JP2015018591A (ja) * 2013-07-12 2015-01-29 株式会社東芝 不揮発性半導体記憶装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0600151A2 (en) * 1992-12-03 1994-06-08 Fujitsu Limited Nonvolatile semiconductor memory device having electrically and collectively erasable characteristics
KR19990083512A (ko) * 1998-04-27 1999-11-25 가네코 히사시 비휘발성반도체기억장치
US6163484A (en) * 1998-04-27 2000-12-19 Nec Corporation Non-volatile semiconductor storage device having improved program/erase/over erase verify
US6891756B2 (en) * 2003-02-27 2005-05-10 Stmicroelectronics S.A. Flash memory comprising an erase verify algorithm integrated into a programming algorithm
JP2004318941A (ja) 2003-04-14 2004-11-11 Renesas Technology Corp 半導体集積回路
EP2326097A2 (en) * 2009-11-20 2011-05-25 Broadcom Corporation System and method for synchronizing 3D shutter glasses to television refresh rate

Also Published As

Publication number Publication date
US10566068B2 (en) 2020-02-18
CN109545262A (zh) 2019-03-29
JP2019057351A (ja) 2019-04-11
EP3460799A1 (en) 2019-03-27
EP3460799B1 (en) 2020-11-25
JP6846321B2 (ja) 2021-03-24
CN109545262B (zh) 2023-11-03
KR102653552B1 (ko) 2024-04-02
US20190088344A1 (en) 2019-03-21

Similar Documents

Publication Publication Date Title
US7952958B2 (en) Non-volatile semiconductor storage system
JP5086972B2 (ja) 不揮発性半導体記憶装置のためのページバッファ回路とその制御方法
JP5016841B2 (ja) 不揮発性半導体記憶装置
JP2006031873A (ja) 半導体記憶装置
US20240152435A1 (en) Memory device with failed main bank repair using redundant bank
CN104969198A (zh) 数据路径完整性验证
KR20190086936A (ko) 메모리 장치
US20090103376A1 (en) Semiconductor memory device
JP2019215950A (ja) メモリ装置におけるプログラム禁止
JP4939870B2 (ja) 半導体記憶装置およびそのテスト方法
CN109545262B (zh) 半导体存储装置和用于控制半导体存储装置的方法
WO2003073429A1 (fr) Memoire a semi-conducteurs non volatile
CN115985354A (zh) 存储设备和电子设备
JP5116337B2 (ja) 半導体記憶装置
US8868990B2 (en) Semiconductor memory device and information processing apparatus including the same
US7991945B2 (en) Semiconductor memory device and semiconductor device
JP2006024342A (ja) 不揮発性半導体記憶装置、不揮発性半導体記憶装置の書き込み方法、メモリカード及びicカード
US6407954B2 (en) Nonvolatile semiconductor memory device
US20230315306A1 (en) Logic simulation device and logic simulation program
US11604714B2 (en) Memory device for efficiently determining whether to perform re-training operation and memory system including the same
KR20090000370A (ko) 메모리 소자 및 소거 검증 방법
US7743291B2 (en) Semiconductor memory device
JP2008004160A (ja) 半導体集積回路装置
JP2009163851A (ja) 半導体記憶装置
KR20080088172A (ko) 더블 데이터 레이트 낸드 플래시 메모리 장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant