KR101358548B1 - 불휘발성 반도체 기억 장치 및 그 구동 방법 - Google Patents

불휘발성 반도체 기억 장치 및 그 구동 방법 Download PDF

Info

Publication number
KR101358548B1
KR101358548B1 KR1020117011105A KR20117011105A KR101358548B1 KR 101358548 B1 KR101358548 B1 KR 101358548B1 KR 1020117011105 A KR1020117011105 A KR 1020117011105A KR 20117011105 A KR20117011105 A KR 20117011105A KR 101358548 B1 KR101358548 B1 KR 101358548B1
Authority
KR
South Korea
Prior art keywords
memory cell
write
read
target
signal
Prior art date
Application number
KR1020117011105A
Other languages
English (en)
Other versions
KR20110086050A (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 KR20110086050A publication Critical patent/KR20110086050A/ko
Application granted granted Critical
Publication of KR101358548B1 publication Critical patent/KR101358548B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0007Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising metal oxide memory material, e.g. perovskites
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • 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/08Address circuits; Decoders; Word-line control 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
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/10Decoders
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • G11C2013/0076Write operation performed depending on read result
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/79Array wherein the access device being a transistor

Abstract

비트 단위에서의 재기록을 가능하게 하면서도, 메모리 셀 수명의 연명화를 할 수 있는 불휘발성 반도체 기억 장치를 제공한다. 커맨드 정보가 기록을 나타내는 경우에 있어서, 비교부 (37) 가, 대상 메모리 셀에 기록되어 있는 기존 기록 데이터와 기록 대상 데이터를 비교하여 비교 결과를 기록/판독 제어부 (40) 에 부여하고, 비교 결과가 동일한 경우에는, 상기 기록/판독 제어부 (40) 가 디코더부 (51A, 51B, 53) 에 대해 상기 대상 메모리 셀로의 기록 지시를 부여하지 않고, 상기 비교 결과가 상이한 경우에는, 상기 기록/판독 제어부 (40) 가 상기 디코더부에 대해 대상 메모리 셀에 상기 기록 대상 데이터를 기록하는 지시를 부여한다.

Description

불휘발성 반도체 기억 장치 및 그 구동 방법{NONVOLATILE SEMICONDUCTOR MEMORY DEVICE AND DRIVING METHOD THEREOF}
본 발명은, 불휘발성 반도체 기억 장치 및 그 구동 방법에 관한 것으로, 특히, 재기록 횟수에 제한이 있는 불휘발성 반도체 기억 장치 및 그 구동 방법에 관한 것이다.
최근, 포스트 플래시 메모리라 할 만한 불휘발성 메모리로서, 전압 펄스를 인가함으로써 가역적으로 전기 저항이 변화하는 가변 저항 소자를 사용한 저항성 불휘발성 메모리 RRAM (Resistive Random Access Memory ; RRAM 은 본 출원인인 샤프 주식 회사의 등록 상표) 이 실용화되고 있다.
도 15 에 이 RRAM 의 개략 구조도를 나타낸다. 도 15 에 나타나는 RRAM (100) 은, 제 2 전극이 되는 하부 전극 (103) 과 가변 저항체 (102) 와, 제 1 전극이 되는 상부 전극 (101) 이 순차적으로 적층된 매우 단순한 구조로 되어 있다. 가변 저항체 (102) 로는, 예를 들어, 천이 금속의 산화물인 산화티탄 (TiO2) 막, 니켈산화 (NiO) 막, 산화아연 (ZnO) 막, 산화니오브 (Nb2O5) 막을 이용할 수 있다 (하기 특허문헌 1, 비특허문헌 1 참조). 그리고, 이 RRAM (100) 은, 상부 전극 (101) 및 하부 전극 (103) 사이에 전압 펄스를 인가함으로써, 가변 저항체 (102) 의 저항값을 가역적으로 변화시킬 수 있다. 그리고, 이 가역적인 저항 변화 동작에 있어서의 저항값을 판독함으로써 저항성 불휘발성 메모리를 실현할 수 있는 구성이다.
RRAM 에 있어서의 기록 (소거) 특성은, 플래시 메모리의 그것과는 크게 상이하다. 예를 들어 바이폴라 스위칭으로 일컬어지는 모드에서는, 저항 증가, 저항 감소의 2 개의 저항 변화를 모두, 1.5 V 에서 3 V 의 저전압의 전압 인가에 의해 수십 나노초에서 실현할 수 있다. 이로써, 정보 「1」 의 기록 (소거 동작) 과, 정보 「0」 의 기록 (기록 동작) 을 동시에 실시하는 것, 즉 데이터의 겹쳐 쓰기가 가능해지고, 고속으로 비트 단위의 재기록 동작을 실현할 수 있다. 이 RRAM 은, DRAM (Dynamic Random Access Memory) 과 동등한 판독 기록 속도를 실현할 수 있다고 주목받고 있다.
종래의 DRAM 은, 스위칭 MISFET 와 그 스위칭 MISFET 에 직렬로 접속된 커패시터에 의해 구성되는 메모리 셀을 갖고, 그 커패시터에 전하를 축적함으로써 정보를 기억하는 것이다. 이 때문에, 커패시터에 전하를 축적함으로써 정보를 기억한다는 특성상, 재기록 횟수에는 거의 제한이 없다는 장점을 갖는다.
한편, RRAM 의 경우, 가변 저항체의 저항값을 변화시킴으로써, 정보의 재기록을 실시하는 구성이다. 그리고, 이 가변 저항체의 저항값의 변화는, 가변 저항체를 구성하는 금속 산화물 중의 산소의 거동이 저항 변화에 크게 기여하고 있는 것으로 생각되고 있다. 즉, 금속 산화물 중에 산소 결손이 발생하면 금속 산화물의 저항이 저저항화되고, 반대로, 이 산소 결손이 다시 산소로 채워짐으로써, 고저항화되는 것으로 생각되고 있다. 그리고, 구체적으로는, 이 산소 결손의 발생은, 고저항 상태의 소자에 고전계가 부가됨으로써 전계 인가 방향으로 산소 이온 (O2 -) 이 이동하고, 이 산소 이온의 이동에 의해 산소 이온이 빠진 지점에 있어서 산소 결손이 발생하여, 이 산소 결손에 의해 발생하는 국재 (局在) 준위 사이에서 캐리어가 전도되어 가는 홉핑 전도에 의해 전기 저항이 낮아지는 것으로 생각되고 있다. 또, 저저항화된 소자의 고저항화에 대해서는, 저저항부에 전류가 흐름으로써 줄열로 가열되고, 어느 임계값 전류 이상이 되면 산소 결손부가 다시 산소로 채워져, 다시 고저항화되는 것으로 생각되고 있다.
따라서, RRAM 에 있어서의 정보의 기록은, 금속 산화물 중의 산소 이온이 이동한다는 물리적인 변화에 수반하는 저항 변화에 의한 것이기 때문에, 전하의 축적, 이동에 의해 정보가 기록되는 DRAM 에 비해, 정보 기억부 (즉 가변 저항체) 가 받는 물리적인 데미지가 크다. 즉, RRAM 에 있어서 반복 재기록 동작이 실시됨 (저항 변화시킴) 으로써, 산소 결손의 발생이나 산소의 재결합을 할 수 없는 메모리 셀이 발생하게 된다. 이와 같은 메모리 셀의 경우, 재기록을 위해서 전압을 인가해도 저항 상태를 변화시킬 수 없고, 이것은 정보의 재기록을 정확하게 실행할 수 없는 것을 의미한다.
요컨대, RRAM 의 경우, DRAM 과 비교하여, 재기록 횟수에는 한계가 있다는 문제가 있다. 이로 인해, RRAM 에 있어서는, 동일한 메모리 셀에 대한 재기록 횟수를 억제하여, 각 메모리 셀의 수명을 늘리기 위한 방법이 필요해지고 있다.
종래, 불휘발성 메모리의 수명을 늘리는 방법으로는, 메모리 칩 내에서 메모리 셀의 사용 횟수를 평균화하는 웨어 레벨링법이 사용되어 왔다. 이 방법은, 재기록 횟수나 재기록 순서를 블록 단위로 관리함으로써 수명을 늘린다는 것이다.
예를 들어, 하기 특허문헌 2 에는, 블록에 소거 횟수 카운터를 형성하고, 소거 횟수 카운터의 값이 작은 블록부터 우선적으로 이용하여, 모든 블록의 소거 횟수를 평균화함으로써 불휘발성 메모리의 수명을 늘리는 방법이 기재되어 있다. 또, 하기 특허문헌 3 에는, 논리 어드레스를 물리 어드레스로 변환하는 테이블의 물리 어드레스값을 빈 물리 어드레스값이 기록되어 있는 FILO (First in Last Out) 로부터 판독한 빈 물리 어드레스값과 교환하여, 데이터의 재기록이 실시되는 물리 어드레스가 치우친 것이 되지 않게 함으로써, 불휘발성 메모리의 수명을 늘리는 방법이 기재되어 있다.
일본 공표특허공보 2002-537627호 일본 공개특허공보 평9-97218호 일본 공개특허공보 2001-67258호
H.Pagnia 외, "Bistable Switching in Electroformed Metal-Insulator-MetalDevices", Phys. Stat. Sol. (a), vol. 108, pp. 11-65, 1988년
상기 서술한 바와 같이, 종래, 재기록 횟수가 한정되어 있는 메모리의 수명 연명 방법으로는, 웨어 레벨링법이 사용되어 왔다. 그러나, 이 웨어 레벨링법을 사용할 때에는, 재기록 횟수를 관리하는 것이 필요해진다.
플래시 메모리와 같이, 원래 (어느 정도 큰 용량이다) 블록 단위로 재기록을 실시하는 디바이스의 경우에는, 블록 단위에서의 재기록 횟수의 관리도 용이하여, 웨어 레벨링도 매우 유효한 수명 연명 방법으로서 기능한다. 그러나, RRAM 과 같이 비트 단위로 자유롭게 재기록을 할 수 있는 불휘발성 메모리에 있어서 동일한 수법을 취한 경우에는, 그 비트 단위로 재기록을 할 수 있다는 장점을 살릴 수 없다는 문제가 발생한다.
플래시 메모리의 경우, 재기록을 실시할 때에는, 블록 단위로 소거를 실시한 후, 기록을 실시하는 구성이다. 즉, 열화 원인이 되는 재기록시에도, 그 재기록 횟수를 블록마다 관리함으로써 충분하다. 그러나, RRAM 과 같이 비트 단위로 자유롭게 재기록을 할 수 있는 메모리의 경우, 그 특성을 살리려고 하면, 비트 단위 (혹은 워드 등의 일괄로 액세스하는 단위) 로 재기록 횟수의 관리를 실시할 필요가 생긴다. 이 결과, 재기록 횟수를 기록하는 것만으로 방대한 용량을 소비해 버리게 된다. 또, 플래시 메모리와 마찬가지로 블록 단위로 정리하여 관리한 경우에는, 실제 메모리 셀의 재기록 횟수와 블록 전체로서의 재기록 횟수에 부정합이 발생해 버리게 된다.
본 발명은, 상기의 문제점을 감안하여, 재기록 횟수의 관리를 실시하지 않고, 메모리 셀 수명의 연명화를 할 수 있는 불휘발성 반도체 기억 장치를 제공하는 것을 목적으로 한다.
상기 목적을 달성하기 위한 본 발명에 관련된 불휘발성 반도체 기억 장치는, 불휘발성 메모리 셀의 복수를 매트릭스 형상으로 배열하여, 동일 행의 상기 메모리 셀의 제 1 단자를 공통의 워드선에 접속시키고, 동일 열의 상기 메모리 셀의 제 2 단자를 공통의 비트선에 접속시켜 이루어지는 제 1 서브 뱅크, 및 상기 제 1 서브 뱅크와 동일한 구성의 제 2 서브 뱅크를 구비하여 이루어지는 메모리 셀 어레이와, 지정 어드레스에 대응하는 대상 메모리 셀로의 기록 또는 판독의 제어를 실시하는 기록/판독 제어부와, 상기 기록/판독 제어부로부터의 지시에 기초하여 상기 비트선 및 상기 워드선에 전압을 인가함으로써, 상기 대상 메모리 셀에 기록 전압 또는 판독 전압을 인가하는 디코더부와, 상기 판독 전압이 인가된 상기 대상 메모리 셀에 기록되어 있는 기존 기록 데이터의 판독을 실시하는 판독 회로와, 입력되는 복수의 데이터의 비교를 실시하는 비교부를 구비하여 이루어지고, 상기 제 1 서브 뱅크 내 및 상기 제 2 서브 뱅크 내에 위치하는 복수의 상기 대상 메모리 셀에 대해, 각 개별로 지정된 기록 대상 데이터의 기록을 실시할 때, 상기 디코더부가, 상기 제 1 서브 뱅크 내의 제 1 대상 메모리 셀에 대해 판독 전압을 인가하는 제 1 동작과, 상기 제 2 서브 뱅크 내의 제 2 대상 메모리 셀의 상기 기존 기록 데이터와 당해 제 2 대상 메모리 셀로의 상기 기록 대상 데이터의 상기 비교부에 의한 비교 결과가 상이한 경우에만 상기 제 2 대상 메모리 셀에 대해 기록 전압을 인가하는 제 2 동작을 동일 시간대에 실행하는 것을 특징으로 한다.
본 발명에 관련된 불휘발성 반도체 기억 장치의 상기 특징에 의하면, 기록 처리시에 있어서, 실제로 기록 처리가 실시되기 전에, 비교부에 의해, 기록처 어드레스에 대응하는 선택 메모리 셀에 이미 기록되어 있는 기존 기록 데이터와 기록 대상 데이터의 비교 처리가 실행된다. 그리고, 비교 결과가 상이한 경우에만, 동(同) 메모리 셀에 대해 기록 대상 데이터를 기록하기 위한 기록 전압이 인가되고, 비교 결과가 동일한 경우에는 기록 전압이 인가되지 않는다.
종래의 웨어 레벨링법은, 메모리 셀의 사용 횟수를 평균냄으로써, 메모리 칩 전체로서의 수명 연명을 도모하는 방법이기 때문에, 동일 데이터를 겹쳐 쓰기하는 경우에도 메모리 셀로의 겹쳐 쓰기는 실시되게 되어, 이 결과 메모리 셀의 열화 진행을 피할 수 없다. 그러나, 본 발명 구성에 의하면, 이 종래 방법과 비교하여, 동일 메모리 셀에 대해 실제로 기록용 전압이 인가되어 기록 처리가 실시되는 횟수가 감소한다. 이로써, 각 메모리 셀을 연명시킬 수 있다.
그리고, 단순히 기록 처리시에 있어서, 기록처 어드레스에 대응하는 선택 메모리 셀의 기존 기록 데이터와 기록 대상 데이터의 비교를 실시하는 것만으로 메모리 셀의 연명 조치가 가능해진다. 즉, 종래와 같이, 기록 횟수나 기록 순서를 관리할 필요가 없다. 이 때문에, 예를 들어, 비트 단위로 기록 (재기록) 을 할 수 있는 RRAM 에 대해서도 용이하게 적용할 수 있다.
또한, 상기 특징에 의하면, 하나의 서브 뱅크에 대해 기존 기록 데이터와 기록 대상 데이터의 비교를 실시하고 있는 동안에, 다른 서브 뱅크에 대해 기록용 전압을 인가하여 기록 처리를 실시할 수 있다. 이 때문에, 기록 처리에 있어서 타임 래그가 발생하지 않는다. 즉, 종래 방법으로부터 기록 처리에 필요로 하는 시간을 길게 하지 않고, 각 서브 뱅크 내의 메모리 셀을 연명시킬 수 있다.
또한, 상기 특징에 있어서, 하나의 서브 뱅크 (제 1 서브 뱅크) 에 짝수 어드레스를 할당하고, 다른 서브 뱅크 (제 2 서브 뱅크) 에 홀수 어드레스를 할당하는 것으로 할 수 있다. 이와 같이 했을 경우, 연속하는 어드레스가 서브 뱅크 사이에서 교대로 할당되게 된다. 따라서, 버스트 기록을 실시하는 경우, 하나의 서브 뱅크 내의 기록처 어드레스에 대응하는 메모리 셀에 대해 기록 대상 데이터를 기록하는 시간 내에, 다른 서브 뱅크 내에 존재하는 상기 기록처 어드레스의 다음 어드레스에 대응하는 메모리 셀의 기존 기록 데이터의 판독을 실시할 수 있다.
또, 본 발명에 관련된 불휘발성 반도체 기억 장치는, 상기 특징에 추가하여, 상기 제 1 서브 뱅크 내 및 상기 제 2 서브 뱅크 내에 위치하는 복수의 상기 대상 메모리 셀에 대해, 각 개별로 지정된 상기 기록 대상 데이터의 기록을 실시할 때, 상기 디코더부는, 상기 제 1 동작과 상기 제 2 동작으로 구성된 동작 단계를, 상기 제 1 대상 메모리 셀 및 상기 제 2 대상 메모리 셀을 변화시키면서 복수회 실행하는 구성으로서, 상기 각 동작 단계에 있어서의 상기 제 2 대상 메모리 셀은, 당해 동작 단계보다 전에 이미 실행된 상기 동작 단계 내에 있어서의 상기 제 1 대상 메모리 셀인 것을 특징으로 한다.
이와 같은 구성으로 할 때, 제 2 동작의 실행 대상인 제 2 대상 메모리 셀은, 그 이전에 실시된 동작 단계 내에 있어서 제 1 대상 메모리 셀로서 기존 기록 데이터가 판독되고 있기 때문에, 제 2 동작에 있어서, 재차 제 2 대상 메모리 셀의 기존 기록 데이터를 판독하지 않고, 기록 대상 데이터가 기존 기록 데이터와 상이한 경우에만 기록할 수 있다.
또, 본 발명에 관련된 불휘발성 반도체 기억 장치는, 상기 특징에 추가하여, 상기 디코더부는, 상기 제 1 서브 뱅크 및 상기 제 2 서브 뱅크에 공통되어 형성됨과 함께, 상기 제 1 서브 뱅크 및 상기 제 2 서브 뱅크 각각의 대응하는 상기 워드선에 동시에 전압을 인가하는 행 디코더와, 상기 제 1 서브 뱅크의 상기 비트선에 전압을 인가하는 제 1 열 디코더와, 상기 제 2 서브 뱅크의 상기 비트선에 전압을 인가하는 제 2 열 디코더를 구비하고, 상기 제 1 동작은, 상기 행 디코더가 상기 제 1 대상 메모리 셀에 접속된 상기 워드선에 전압을 인가한 상태에서, 상기 제 1 열 디코더가 상기 제 1 대상 메모리 셀에 접속된 비트선에 판독 전압을 인가하는 동작이고, 상기 제 2 동작은, 상기 제 2 대상 메모리 셀의 상기 기존 기록 데이터와 당해 제 2 대상 메모리 셀로의 상기 기록 대상 데이터의 비교 결과가 상이한 경우에만, 상기 제 2 열 디코더가 상기 제 1 대상 메모리 셀과 동일 행에 위치하는 상기 제 2 대상 메모리 셀에 접속된 비트선에 기록 전압을 인가하는 동작인 것을 특징으로 한다.
또, 상기 특징에 추가하여, 본 발명에 관련된 불휘발성 반도체 기억 장치는, 상기 메모리 셀 어레이가, 상기 제 1 서브 뱅크 및 상기 제 2 서브 뱅크로 이루어지는 메모리 유닛을 복수 구비하여 구성되고, 상기 디코더부가, 상기 각 메모리 유닛마다 형성되고, 복수의 상기 메모리 유닛에 걸쳐 배치된 복수의 상기 대상 메모리 셀에 대해, 각 개별로 지정된 상기 기록 대상 데이터의 기록을 실시할 때, 상기 대상 메모리 셀이 존재하는 상기 메모리 유닛에 구비된 상기 각 디코더부 각각이, 상기 제 1 동작과 상기 제 2 동작을 동일 시간대에 실행하는 것을 특징으로 한다.
이와 같이 구성함으로써, 다비트 구성의 기록 대상 데이터의 기록시에 있어서도, 기록에 필요로 하는 시간의 증대나, 필요한 관리량의 증대를 초래하지 않고, 각 메모리 셀로의 기록 횟수를 감소시킬 수 있어, 메모리 셀의 연명을 도모할 수 있다.
또한, 본 발명에 관련된 불휘발성 반도체 기억 장치는, 상기 어느 특징에 추가하여, 상기 메모리 셀이, 인가 전압에 따라 저항값을 가역적으로 변화시키는 가변 저항 소자로 구성되어 있고, 당해 가변 저항 소자의 저항값에 따라 정보를 기억하는 구성인 것을 특징으로 한다.
또, 본 발명에 관련된 불휘발성 반도체 기억 장치의 구동 방법은, 상기 불휘발성 반도체 기억 장치가, 불휘발성 메모리 셀의 복수를 매트릭스 형상으로 배열하여, 동일 행의 상기 메모리 셀의 제 1 단자를 공통의 워드선에 접속시키고, 동일 열의 상기 메모리 셀의 제 2 단자를 공통의 비트선에 접속시켜 이루어지는 제 1 서브 뱅크, 및 상기 제 1 서브 뱅크와 동일한 구성의 제 2 서브 뱅크를 구비하여 이루어지는 메모리 셀 어레이를 구비하고 있고, 상기 제 1 서브 뱅크 내 및 상기 제 2 서브 뱅크 내에 위치하는 복수의 대상 메모리 셀에 대해, 각 개별로 지정된 상기 기록 대상 데이터의 기록을 실시할 때, 상기 제 1 서브 뱅크 내의 제 1 대상 메모리 셀에 대해 판독 전압을 인가하는 제 1 동작과, 상기 제 2 서브 뱅크 내의 제 2 대상 메모리 셀의 상기 기존 기록 데이터와 당해 제 2 대상 메모리 셀로의 상기 기록 대상 데이터의 비교 결과가 상이한 경우에만 상기 제 2 대상 메모리 셀에 대해 기록 전압을 인가하는 제 2 동작을 동일 시간대에 실행하는 것을 특징으로 한다.
또, 본 발명에 관련된 불휘발성 반도체 기억 장치의 구동 방법은, 상기 특징에 추가하여, 상기 제 1 서브 뱅크 내 및 상기 제 2 서브 뱅크 내에 위치하는 복수의 상기 대상 메모리 셀에 대해, 각 개별로 지정된 상기 기록 대상 데이터의 기록을 실시할 때, 상기 제 1 동작과 상기 제 2 동작으로 구성된 동작 단계를, 상기 제 1 대상 메모리 셀 및 상기 제 2 대상 메모리 셀을 변화시키면서 복수회 실행하고, 상기 각 동작 단계에 있어서의 상기 제 2 대상 메모리 셀은, 당해 동작 단계보다 전에 이미 실행된 상기 동작 단계 내에 있어서의 상기 제 1 대상 메모리 셀인 것을 특징으로 한다.
또, 본 발명에 관련된 불휘발성 반도체 기억 장치의 구동 방법은, 상기 특징에 추가하여, 상기 메모리 셀 어레이가, 상기 제 1 서브 뱅크 및 상기 제 2 서브 뱅크로 이루어지는 메모리 유닛을 복수 구비하여 구성되고, 복수의 상기 메모리 유닛에 걸쳐 배치된 복수의 상기 대상 메모리 셀에 대해, 각 개별로 지정된 상기 기록 대상 데이터의 기록을 실시할 때, 상기 대상 메모리 셀이 존재하는 상기 메모리 유닛의 각각에 있어서, 상기 제 1 동작과 상기 제 2 동작을 동일 시간대에 실행하는 것을 특징으로 한다.
또, 본 발명에 관련된 불휘발성 반도체 기억 장치는, 전기 저항의 변화에 의해 정보를 기억하는 가변 저항 소자를 갖는 메모리 셀을 행 방향 및 열 방향으로 각각 복수 배열하여, 동일 행의 상기 메모리 셀의 제 1 단자를 공통의 워드선에 접속시키고, 동일 열의 상기 메모리 셀의 제 2 단자를 공통의 비트선에 접속시켜 이루어지는 메모리 셀 어레이를 구비한 불휘발성 반도체 기억 장치로서, 지정 어드레스에 대응하는 대상 메모리 셀로의 기록 또는 판독의 제어를 실시하는 기록/판독 제어부와, 상기 기록/판독 제어부로부터의 지시에 기초하여, 상기 비트선 및 상기 워드선에 전압을 인가함으로써, 상기 대상 메모리 셀에 기록 전압 또는 판독 전압을 인가하는 디코더부와, 상기 판독 전압이 인가된 상기 대상 메모리 셀에 기록되어 있는 기존 기록 데이터의 판독을 실시하는 판독 회로와, 입력되는 복수의 데이터의 비교를 실시하는 비교부를 구비하여 이루어지고, 상기 대상 메모리 셀에 기록 대상 데이터의 기록을 실시할 때, 상기 디코더부는, 상기 기록/판독 제어부로부터의 지시에 기초하여 상기 대상 메모리 셀에 판독 전압을 인가하고, 상기 비교부는, 상기 기록 대상 데이터와 상기 판독 회로에 의해 판독된 상기 기존 기록 데이터를 비교하여 비교 결과를 상기 기록/판독 제어부에 부여하고, 상기 기록/판독 제어부는, 상기 비교 결과가 상이한 경우에만, 상기 디코더부에 대해, 상기 대상 메모리 셀에 상기 기록 대상 데이터를 기록하는 지시를 부여하는 것을 특징으로 한다.
본 발명에 관련된 불휘발성 반도체 기억 장치의 상기 특징에 의하면, 기록 처리시에 있어서, 실제로 기록 처리가 실시되기 전에, 비교부에 의해, 기록처 어드레스에 대응하는 선택 메모리 셀에 이미 기록되어 있는 기존 기록 데이터와 기록 대상 데이터의 비교 처리가 실행된다. 그리고, 비교 결과가 상이한 경우에만, 동 메모리 셀에 대해 기록 대상 데이터를 기록하기 위한 기록 전압이 인가되고, 비교 결과가 동일한 경우에는 기록 전압이 인가되지 않는다.
종래의 웨어 레벨링법은, 메모리 셀의 사용 횟수를 평균냄으로써, 메모리 칩 전체로서의 수명 연명을 도모하는 방법이기 때문에, 동일 데이터를 겹쳐 쓰는 경우에도 메모리 셀로의 겹쳐 쓰기는 실시되게 되어, 이 결과 메모리 셀의 열화 진행을 피할 수 없다. 그러나, 본 발명 구성에 의하면, 이 종래 방법과 비교하여, 동일 메모리 셀에 대해 실제로 기록용 전압이 인가되어 기록 처리가 실시되는 횟수가 감소한다. 이로써, 각 메모리 셀을 연명시킬 수 있다.
그리고, 단순히 기록 처리시에 있어서, 기록처 어드레스에 대응하는 선택 메모리 셀의 기존 기록 데이터와 기록 대상 데이터의 비교를 실시하는 것만으로 메모리 셀의 연명 조치가 가능해진다. 즉, 종래와 같이, 기록 횟수나 기록 순서를 관리할 필요가 없기 때문에, 비트 단위로 기록 (재기록) 할 수 있는 RRAM 에 적용할 수 있다.
또, 본 발명에 관련된 불휘발성 반도체 기억 장치의 구동 방법은, 전기 저항의 변화에 의해 정보를 기억하는 가변 저항 소자를 갖는 메모리 셀을 행 방향 및 열 방향으로 각각 복수 배열하여, 동일 행의 상기 메모리 셀의 제 1 단자를 공통의 워드선에 접속시키고, 동일 열의 상기 메모리 셀의 제 2 단자를 공통의 비트선에 접속시켜 이루어지는 메모리 셀 어레이를 구비한 불휘발성 반도체 기억 장치의 구동 방법으로서, 지정 어드레스에 대응하는 대상 메모리 셀에 대해 기록 대상 데이터의 기록 동작을 실시할 때에, 먼저, 상기 대상 메모리 셀에 기록되어 있는 기존 기록 데이터의 판독을 실시하고, 다음으로, 상기 기존 기록 데이터와 상기 기록 대상 데이터의 비교를 실시하여, 비교 결과가 동일한 경우에는 상기 대상 메모리 셀로의 기록을 실시하지 않고, 상기 비교 결과가 상이한 경우에는 상기 대상 메모리 셀에 상기 기록 대상 데이터의 기록을 실시하는 것을 특징으로 한다.
본 발명의 구성에 의하면, 재기록 횟수의 관리를 실시하지 않고, 메모리 셀 수명의 연명화를 할 수 있는 불휘발성 반도체 기억 장치를 실현할 수 있다.
도 1 은, 제 1 실시형태의 불휘발성 반도체 기억 장치의 개념적 구조를 나타내는 블록도
도 2 는, 제 1 실시형태의 불휘발성 반도체 기억 장치의 다른 개념적 구조를 나타내는 블록도
도 3 은, 서브 뱅크의 일 구성예를 나타내는 회로도
도 4 는, 제 1 실시형태의 불휘발성 반도체 기억 장치에 대해 버스트 기록이 실시되는 경우의 타이밍 차트
도 5 는, 제 1 실시형태의 불휘발성 반도체 기억 장치에 대해 버스트 판독이 실시되는 경우의 타이밍 차트
도 6 은, 메모리 셀의 일 구성예를 나타내는 개략도
도 7 은, 제 2 실시형태의 불휘발성 반도체 기억 장치에 대해 버스트 기록이 실시되는 경우의 타이밍 차트
도 8 은, 제 2 실시형태의 불휘발성 반도체 기억 장치에 대해 버스트 판독이 실시되는 경우의 타이밍 차트
도 9 는, 제 3 실시형태의 불휘발성 반도체 기억 장치의 개념적 구조를 나타내는 블록도
도 10 은, 제 3 실시형태의 불휘발성 반도체 기억 장치의 다른 개념적 구조를 나타내는 블록도
도 11 은, 제 3 실시형태의 불휘발성 반도체 기억 장치에 대해 기록이 실시되는 경우의 타이밍 차트
도 12 는, 제 3 실시형태의 불휘발성 반도체 기억 장치에 대해 판독이 실시되는 경우의 타이밍 차트
도 13 은, 제 3 실시형태의 불휘발성 반도체 기억 장치의 다른 개념적 구조를 나타내는 블록도
도 14 는, 제 3 실시형태의 불휘발성 반도체 기억 장치의 기록 처리를 소프트웨어에 의해 실현하는 경우의 처리 순서를 나타내는 플로우 차트
도 15 는, RRAM 의 개략 구조도
본 발명에 관련된 불휘발성 반도체 기억 장치 및 그 구동 방법의 각 실시형태에 대해 도면을 참조하여 설명한다.
본 실시형태에서는, 메모리 셀이 RRAM 소자를 구비하는 구성인 것으로 하여 설명한다. 배경 기술의 항에서도 전술한 바와 같이, RRAM 소자는, 전압의 인가에 의해 저항값 (또는 저항 특성) 을 가역적으로 변화시킴으로써 정보의 기억을 실시하는 구성이다. 따라서, 기록 동작과 소거 동작은, 변화 후의 각 저항값이 각각 상이하다는 점을 제외하면 동작 원리는 동일하다. 보다 구체적으로 말하면, 어느 제 1 저항값 (제 1 저항 특성) 으로 변화시키기 위해서, 전압 조건을 설정하여 전압을 인가하는 것이 「기록 동작」 이고, 다른 제 2 저항값 (제 2 저항 특성) 으로 변화시키기 위해서 전압 조건을 설정하여 전압을 인가하는 것이 「소거 동작」 이다. 요컨대, 소거 동작과 기록 동작은 전압 조건이 상이한 것을 제외하면, 실제로 메모리 셀에 대해 실시되는 동작은 동일하다고 할 수 있다. 이 때문에, 이하에서는, 「소거 동작」 은 「기록 동작」 의 일 양태로 생각하고, 특별히 언급이 없는 한 「기록 동작」 과 「소거 동작」 을 문언상 구별하지 않는 것으로 한다.
이에 반해, 「판독 동작」 은, RRAM 소자의 저항값 (또는 저항 특성) 을 변화시키지 않고, 단순히 현시점에 있어서의 RRAM 소자의 저항값 (또는 저항 특성) 을 판독하는 동작인 바, 저항값 (또는 저항 특성) 을 변화시키는 동작인 기록 동작과는 그 동작 내용을 달리한다. 이 때문에, 「판독 동작」 은 「기록 동작」 과 구별하여 표현한다.
[제 1 실시형태]
본 발명의 제 1 실시형태 (이하, 적절히 「본 실시형태」 라고 한다) 에 대해, 도 1 ∼ 도 6 의 각 도면를 참조하여 설명한다.
도 1 은, 본 실시형태에 있어서의 불휘발성 반도체 기억 장치의 개념적 구조를 나타내는 블록도이다. 도 1 에 나타내는 불휘발성 반도체 기억 장치 (1) 는, 메모리 액세스 제어부 (20), 메모리 제어부 (30), 디코더부 (행 디코더 (53), 열 디코더 (51A, 51B)), 메모리 셀 어레이 (52A, 52B) 를 구비한다. 본 실시형태에서는, 하나의 메모리 제어부 (30) 에 대해 2 개의 서브 뱅크 (52A, 52B) 를 구비하고, 각 서브 뱅크는, 열 디코더 (51A, 51B) 를 개별적으로 구비하는 한편, 행 디코더 (53) 는 공유하고 있다.
또한, 도 1 에 있어서의 디코더부 (행 디코더 (53), 열 디코더 (51A, 51B)) 및 서브 뱅크 (52A, 52B) (메모리 유닛) 는, 설명의 편의상, 1 어드레스에 대해 1 비트의 데이터를 갖는 형태를 상정한 도시로 되어 있다. 다(多)비트의 데이터를 취급하는 경우에는, 이들은 도 2 에 나타나는 바와 같은 구성을 취한다. 다시 말해, 도 2 에 나타내는 복수의 각 메모리 유닛이나 각 디코더부를, 정리하여 하나로 도시한 것이 도 1 의 구성이다.
이하에서는, 먼저 설명을 간단히 하기 위해서, 1 어드레스에 1 비트의 데이터를 갖는 형태를 상정하여 설명한다. 그 후, 도 2 를 참조하면서 1 어드레스에 대해 다비트 (j 비트) (j 는 2 이상의 자연수) 의 데이터를 갖는 형태를 취급하는 경우에 대해 설명한다.
다시 도 1 로 돌아와 설명한다. 메모리 제어부 (30) 는, 명령 해석부 (31), 버퍼 (32), 출력 제어부 (33), 버퍼 (34), 행 어드레스 버퍼 (35), 비교부 (37), 기록/판독 제어부 (40) (판독 제어부 (36), 버퍼 (38), 기록 제어부 (39)), 판독 기록 전환 제어부 (41), 서브 뱅크 교체부 (42), 및 판독 회로 (43) 를 구비한다.
또한, 메모리 액세스 제어부 (20) 는, CPU (10) 와의 사이에서 신호를 수수할 수 있는 구성이다. CPU (10) 는, 중앙 연산 장치 (Central Processing Unit) 로서, 커맨드, 어드레스, 그리고 데이터를 보낼 수 있는 버스 (CPU 버스 (11)) 를 통해 메모리 액세스 제어부 (20) 와 접속되어 있다. 이 CPU 버스 (11) 는, CPU (10), 메모리 액세스 제어부 (20) 이외에도, 네트워크, 스토리지, 그래픽 등의 다수의 하드웨어 모듈 (도시 생략) 에 접속되어 있는 것으로 해도 된다.
메모리 액세스 제어부 (20) 는, CPU (10) 로부터 부여된 각 정보를 인식하고, 메모리 버스 (21) 를 통해 각 정보마다 메모리 제어부 (30) 내의 적절한 요소에 부여한다. 보다 구체적으로는, 메모리 액세스 제어부 (20) 는, 커맨드 정보를 명령 해석부 (31) 에 부여하고, 어드레스 정보를 버퍼 (32) 에 부여하며, 데이터 (기록 대상 데이터) 를 버퍼 (34) 에 부여한다.
메모리 제어부 (30) 는, 메모리 액세스 제어부 (20) 로부터 부여되는 각 정보 (커맨드, 어드레스) 를, 서브 뱅크 (52A, 52B) 에 대한 커맨드 (기록, 소거) 나 어드레스 (행/열 어드레스) 로 변환하여, 열 디코더 (51A, 51B) 및 행 디코더 (53) 를 제어한다.
서브 뱅크 (52A, 52B) 는 메모리 셀 어레이로서, 열 디코더 (51A, 51B) 및 행 디코더 (53) 로부터, 메모리 셀 어레이 내의 각 메모리 셀에 대해 소정의 전압이 인가됨으로써, 판독 또는 기록 (소거) 처리가 실시된다.
여기서, 각 서브 뱅크 (52A, 52B) 는, 모두 RRAM 소자를 갖는 메모리 셀을 행 방향 및 열 방향으로 각각 복수 배열하여 구성된다. 또, 행 방향으로 연신하는 복수의 워드선, 및 열 방향으로 연신하는 복수의 비트선을 구비하고, 동일 행에 배치된 상기 메모리 셀이 각각 RRAM 소자의 일단측을, 선택 트랜지스터를 개재하여 동일한 상기 워드선에 접속시키고, 동일 열에 배치된 상기 메모리 셀이 각각 RRAM 소자의 타단측을 동일한 상기 비트선에 접속시킨다. 서브 뱅크 (52A, 52B) 의 일례로서, 각 메모리 셀이 RRAM 소자 및 동 소자에 직렬로 선택 트랜지스터가 접속되어 구성되는 1T1R 형 구조를 도 3 에 나타낸다.
도 3 은, 서브 뱅크 (52B) 의 일 구성예를 나타내는 회로도이며, 각 메모리 셀이 1 개의 선택 트랜지스터와 1 개의 가변 저항 소자 (R) 로 이루어지는, 소위 1T1R 구성이다. 도 3 에 있어서, 각 메모리 셀의 선택 트랜지스터의 게이트는 워드선 (W1 ∼ Wn) 에 접속되어 있고, 각 워드선은 행 디코더 (53) 와 접속된다. 또, 각 메모리 셀의 선택 트랜지스터의 소스는 소스선 (SL) 을 통해 공통의 소스선에 접속되어 있다. 또, 각 메모리 셀마다의 가변 저항 소자 (R) 의 일방 (상부 전극측) 은 비트선 (B1 ∼ Bm) 에 접속되어 있고, 각 비트선은 열 디코더 (51B) 에 접속된다. n 및 m 은 자연수이다. 또, 서브 뱅크 (52A) 도 동일한 구성이다.
또한, 본 실시형태에서는, 서브 뱅크 (52A 와 52B) 는, 메모리 어드레스가 서브 뱅크 사이에서 교대로 연속하도록 어드레스 할당이 되어 있는 것으로 한다. 보다 구체적으로는, 서브 뱅크 (52A) 에는 짝수 어드레스가 할당되고, 서브 뱅크 (52B) 에는 홀수 어드레스가 할당되어 있다.
다시 도 1 로 돌아와, 명령 해석부 (31) 는, 입력된 커맨드를 본 실시형태에 입각한 형태로 변환하여, 판독 제어부 (36), 판독 기록 전환 제어부 (41), 및 행 어드레스 버퍼 (35) 로 보낸다. 구체적으로는, 기록 (소거) 커맨드 「W」 가 입력된 경우에는, 명령 해석부 (31) 는, 판독 제어부 (36), 및 판독 기록 전환 제어부 (41) 에 대해, 신호 ComC 에 의해 판독 커맨드 「R」 을 부여함과 함께, 신호 R/W 를 액티브 (High 상태) 로 하여 출력 제어부 (33) 및 비교부 (37) 에 부여한다. 또, 판독 커맨드 「R」 이 입력된 경우에는, 명령 해석부 (31) 는, 판독 제어부 (36), 및 판독 기록 전환 제어부 (41) 에 대해, 신호 ComC 에 의해 판독 커맨드 「R」 을 부여하는 한편, 신호 R/W 는 인액티브 (Low 상태) 로 한다. 즉, 명령 해석부 (31) 는, 기록 (소거) 커맨드 「W」 가 부여된 경우라도, 판독 커맨드 「R」 이 부여된 경우라도, 행 어드레스 버퍼 (35), 판독 제어부 (36), 및 판독 기록 전환 제어부 (41) 에 대해, 신호 ComC 에 의해 판독 커맨드 「R」 을 부여하는 구성이다. 또, 명령 해석부 (31) 에는 다른 「행 어드레스 지정」 커맨드 (이하, 「A」 커맨드라고 한다) 가 입력되는 경우가 있다. 이 「A」 커맨드는 버퍼 (32) 에 행 어드레스값이 입력될 때에 메모리 액세스 제어부 (20) 로부터 입력되는 것이다. 이것이 입력됐을 때는, 명령 해석부 (31) 는 행 어드레스 버퍼 (35) 에 대해, 신호 ComC 에 의해 「A」 커맨드를 부여한다.
버퍼 (32) 는 FIFO (First In First Out) 버퍼로서, 입력된 어드레스 정보를 일시적으로 저장한다. 그리고, 명령 해석부 (31) 가 신호 ComC 를 출력하는 것에 동기하여, 행 어드레스 버퍼 (35) 및 판독 제어부 (36) 에 대해 어드레스 정보를 나타내는 신호 AddC 를 출력한다. 또한, 이 버퍼 (32) 는, 반드시 FIFO 일 필요는 없고, 1 어드레스분의 버퍼로서, 커맨드가 입력됐을 때에만 어드레스값을 저장하도록 해도 된다.
또한, 명령 해석부 (31) 가 커맨드를 출력하는 타이밍과 동기시키기 위해, 명령 해석부 (31) 와 버퍼 (32) 가 신호선 (도시 생략) 으로 접속되어 있고, 명령 해석부 (31) 가 커맨드를 출력하면, 당해 신호선이 액티브로 되는 구성으로 해도 된다. 이 경우, 당해 신호선의 시동에서 기인하여, 버퍼 (32) 는 어드레스 정보를 나타내는 신호 AddC 를 출력하면 된다.
버퍼 (34) 는, 버퍼 (32) 와 마찬가지로 FIFO 버퍼이다. 본 실시형태에서는, 후술하는 바와 같이, 기록 커맨드가 입력되고 나서, 실제로 서브 뱅크 (52A, 52B) 로의 기록이 실시되기까지 (일정한) 시간을 필요로 한다. 버퍼 (34)는, 기록 커맨드가 입력되고 나서, 실제로 서브 뱅크 (52A, 52B) 로의 기록이 실시되기까지 필요로 하는 시간에 걸쳐, 기록 대상 데이터를 유지하는 기능을 나타낸다. 버퍼 (34) 에 의해 기록 대상 데이터가 일정 기간 유지된 후, 버퍼 (34) 로부터 신호 DatO 로서 비교부 (37) 및 기록 제어부 (39) 에 출력된다.
판독 제어부 (36) 는, 신호 ComC 에 의해 명령 해석부 (31) 로부터 부여되는 커맨드가 「R」 인 경우에, 신호 AddC 에 의해 버퍼 (32) 로부터 지정된 어드레스에 기초하여, 데이터의 판독 어드레스 AddCr 을 연산하여 서브 뱅크 교체부 (42) 에 출력한다. 메모리 액세스의 설정이, 버스트 (복수의 어드레스에 연속하여 데이터를 판독 기록한다) 로 되어있는 경우에는, 상기 버퍼 (32) 로부터 지정된 하나의 어드레스에 대해, 설정된 버스트 길이 (연속하여 데이터를 판독 기록하는 횟수) 분의 어드레스를 순차 계산하여 출력을 실시한다. 또한, 상기 버스트 길이는, 본 메모리와 접속된 CPU (10) 등의 호스트에 의해 본 메모리에 대해 설정되는 값이다. 또, 이 버스트 길이를 설정하는 방법에 대해서는, 어떠한 방법을 사용해도 되며, 본건 발명의 주지와 벗어나기 때문에 그 설명을 할애한다.
판독 제어부 (36) 는, 또, 서브 뱅크 교체부 (42) 에 대해 유효한 어드레스값을 출력하고 있는 동안에는 「High」, 그렇지 않은 경우에는 「Low」 로 되는 신호 RE 를 서브 뱅크 교체부 (42) 에 부여한다.
비교부 (37) 는, 명령 해석부 (31) 로부터 상기 R/W 신호를 받아, 이것이 액티브였을 경우에, 버퍼 (34) 로부터 부여되는 DatO 와 판독 회로 (43) 로부터 부여되는 DatC 의 비교를 실시하고, 그 결과 Comp 를 기록 제어부 (39) 에 부여한다. 후술하는 바와 같이, DatC 및 DatO 가 다비트였을 경우에는, 비교는 비트 단위로 실시하고, 비트 단위에서의 일치/불일치를 기록 제어부 (39) 에 부여한다. 요컨대, 데이터의 비트폭이 8 비트이면, Comp 의 비트폭도 8 비트로 되고, 데이터의 비트폭이 32 비트이면, Comp 의 비트폭도 32 비트로 된다. R/W 신호가 인액티브였을 경우에는 아무것도 하지 않는다.
판독 기록 전환 제어부 (41) 는, 신호 ComC 에 의해 명령 해석부 (31) 로부터 부여되는 커맨드 「R」 을 받으면, 서브 뱅크 (52A) 와 서브 뱅크 (52B) 의 판독과 기록을 전환하기 위한 신호 SBSel 을 생성하고, 서브 뱅크 교체부 (42) 와 행 디코더 (53) 에 공급한다. 전술한 바와 같이, 본 실시형태에 있어서는, 서브 뱅크 (52A) 에는 짝수 어드레스가 할당되어 있고, 서브 뱅크 (52B) 에는 홀수 어드레스가 할당되어 있다. 요컨대, 연속하는 어드레스가, 서브 뱅크 (52A, 52B) 사이에서 교대로 할당되어 있다.
여기서, 상기 신호 SBSel 은, 서브 뱅크 (52A) 로부터 판독을 실시할 때에는 신호 레벨을 「Low」 로 하고, 서브 뱅크 (52B) 로부터 판독을 실시할 때에는 신호 레벨을 「High」 로 한다. 요컨대, 상기 신호 SBSel 이 「Low」 인 경우, 판독 대상이 되는 서브 뱅크 (52A) 에 대해 판독 처리를 실시하고, 상기 서브 뱅크 (52A) 와는 다른 서브 뱅크 (52B) 에 대해 기록 처리를 실시한다. 반대로, 상기 신호 SBSel 이 「High」 인 경우, 판독 대상이 되는 서브 뱅크 (52B) 에 대해 판독 처리를 실시하고, 상기 서브 뱅크 (52B) 와는 상이한 서브 뱅크 (52A) 에 대해 기록 처리를 실시한다.
행 어드레스 버퍼 (35) 는, 명령 해석부 (31) 로부터 「A」 커맨드가 부여되면, 버퍼 (32) 로부터 부여되는 어드레스값을 내부에 유지한다. 그리고, 그 직후에, 판독 커맨드 「R」 또는 기록 커맨드 「W」 를 받으면, 유지된 어드레스값을 신호 Row 로 하여 적절한 타이밍으로 행 디코더 (53) 에 출력한다. 또한, 여기서의 적절한 타이밍이란, 상기 행 어드레스에 의해 나타나는 서브 뱅크 (52A, 52B) 중의 메모리 셀에 대한 액세스 시각에 시간이 맞는 타이밍이다.
버퍼 (38) 는, 판독 제어부 (36) 로부터 출력된 신호 AddCr 에 나타나는 어드레스값을, 신호 AddCd 로 하여 기록 제어부 (39) 에 적절한 타이밍으로 넘기기 위한 FIFO 버퍼이다. 여기서의 적절한 타이밍이란, 후술하는 비교부 (37) 가 비교 결과를 신호 Comp 로 하여 출력하는 타이밍과 동기한 타이밍이다.
기록 제어부 (39) 는, 비교부 (37) 로부터의 비교 결과 (신호 Comp) 를 받아, 서브 뱅크 교체부 (42) 에 대해, 재기록이 필요한 비트에 대한 기록 지시 (신호 WE, AddOw, DatOw) 를 출력한다. 신호 DatOw 는, 기록 대상 데이터를 나타내고 있고, 버퍼 (34) 로부터 부여되는 DatO 와 동일한 내용을 나타내는 데이터이다. 또, 신호 WE 는 기록이 필요한지 아닌지를 나타내는 신호이다. 또, 신호 AddOw 는 열 어드레스값을 나타내고, 버퍼 (38) 로부터 부여되는 어드레스값 AddCd 와 동일한 내용을 나타내는 신호인데, 출력 타이밍을 신호 WE 와 동기시킨 것이다.
출력 제어부 (33) 는, 판독 회로 (43) 로부터 판독된 데이터 (신호 DatC) 를, 메모리 버스 (21) 에 출력할지 아닌지를 제어하는 수단이다. 보다 구체적으로는, 명령 해석부 (31) 로부터 부여된 신호 R/W 가 액티브 (High 상태) 인 경우에는, 판독 회로 (43) 로부터 부여된 데이터를 메모리 버스 (21) 에 출력하지 않는다. 반대로, 명령 해석부 (31) 로부터 부여된 신호 R/W 가 인액티브 (Low 상태) 인 경우에는, 판독 회로 (43) 로부터 부여된 데이터를 메모리 버스 (21)에 출력한다. 다시 말해, 메모리 액세스 제어부 (20) 로부터 부여되는 커맨드가 「W」 인 경우에는, 판독 회로 (43) 로부터 부여된 데이터를 메모리 버스 (21) 에 출력하지 않고, 커맨드가 「R」 인 경우에는, 판독 회로 (43) 로부터 부여된 데이터를 메모리 버스 (21) 에 출력한다. 또한, 판독 회로 (43) 에서 DatC 에 데이터가 출력된 것은, 신호 DE 가 액티브 (High) 로 됨으로써 나타난다.
서브 뱅크 교체부 (42) 는, 서브 뱅크 (52A, 52B) 로의 기록과 판독의 전환을 실시한다. 구체적으로는, 서브 뱅크 교체부 (42) 는, 판독 기록 전환 제어부 (41) 로부터 부여되는 신호 SBSel 이 「Low」 인 경우에는, 서브 뱅크 (52A) 에 판독을, 서브 뱅크 (52B) 에 기록을 실시하는 지시를 부여하고, 반대로 신호 SBSel 이 「High」 인 경우에는, 서브 뱅크 (52B) 에 판독을, 서브 뱅크 (52A) 에 기록을 실시하는 지시를 부여한다. 이 때, 판독은, 판독 제어부 (36) 로부터의 신호 RE, AddCr 에 기초하여 실시되고, 기록은 기록 제어부 (39) 로부터의 신호 WE, AddOw, DatOw 에 기초하여 실시된다.
서브 뱅크 교체부 (42) 는, 판독 제어부 (36) 로부터 부여되는 신호 RE 가 「High」 인 경우에만 판독 지시를 부여한다. 그리고, 상기와 같이, 판독 기록 전환 제어부 (41) 로부터 부여되는 신호 SBSel 의 값에 따라, 서브 뱅크 (52A) 와 서브 뱅크 (52B) 의 어느 쪽으로부터 판독을 실시할지가 결정된다. 요컨대, 신호 SBSel 이 「Low」 인 경우에는, 열 디코더 (51A) 에 대해 판독 지시를 냄으로써, 판독 회로 (43) 에 의해 서브 뱅크 (52A) 에 기록되어 있는 데이터가 판독되고, 반대로 신호 SBSel 이 「High」 인 경우에는, 열 디코더 (51B) 에 대해 판독 지시를 냄으로써, 서브 뱅크 (52B) 에 기록되어 있는 데이터가 판독된다. 이 때, 판독 제어부 (36) 로부터 부여되는 신호 AddCr 에 의해 지정된 어드레스에 대응한 메모리 셀의 판독이 실시된다.
또, 서브 뱅크 교체부 (42) 는, 기록 제어부 (39) 로부터 부여되는 신호 WE 중, 「High」 인 비트에만 기록 지시를 부여하고, 당해 비트에 대한 기록 동작이 실행된다. 그리고, 상기와 같이, 판독 기록 전환 제어부 (41) 로부터 부여되는 신호 SBSel 의 값에 따라, 서브 뱅크 (52A) 와 서브 뱅크 (52B) 의 어느 쪽에 기록을 실시할지가 결정된다. 요컨대, 신호 SBSel 이 「Low」 인 경우에는, 열 디코더 (51B) 에 대해 기록 지시를 냄으로써, 서브 뱅크 (52B) 에 대해 데이터의 기록이 실시되고, 반대로 신호 SBSel 이 「High」 인 경우에는, 열 디코더 (51A) 에 대해 기록 지시를 냄으로써, 서브 뱅크 (52A) 에 대해 데이터의 기록이 실시된다. 이 때, 기록 제어부 (39) 로부터 부여되는 신호 AddOw 에 의해 지정된 어드레스에 대응한 메모리 셀에 대해, 기록 제어부 (39) 로부터 부여되는 신호 DatOw 에 의해 지정된 기록 대상 데이터가 기록된다.
행 디코더 (53) 는, 판독 기록 전환 제어부 (41) 로부터 부여되는 신호 SBSel 의 값에 의해, 서브 뱅크 (52A) 와 서브 뱅크 (52B) 에 대한 제어를 전환한다. 즉, 신호 SBSel 이 「Low」 인 경우에는, 서브 뱅크 (52A) 에 대해 판독, 서브 뱅크 (52B) 에 대해 기록을 위한 제어를 실시하고, 「High」 인 경우에는, 서브 뱅크 (52A) 에 대해 기록, 서브 뱅크 (52B) 에 대해 판독을 위한 제어를 실시한다.
이하, 도 4 의 타이밍 차트를 사용하여, 구체적인 기록 동작의 순서를 설명한다.
도 4 는, 본 실시형태에 있어서의 불휘발성 반도체 기억 장치 (메모리) 로의 버스트 기록 처리의 순서를 나타내는 타이밍 차트이다. 도 4 에서는, 클록 동기식 메모리로, 버스트 길이가 4 인 경우가 상정되어 있다. 도 4 의 상부에 기재된 t1 ∼ t20 의 부호는, 클록의 시동 시각을 나타내고 있다. 또한, 커맨드 입력에서 서브 뱅크로의 판독 기록까지의 레이턴시에 대해서는 설계 사항으로, 도 4 에 의해 한정되는 요소는 아니다.
메모리 제어부 (30) 에 대해, 행 어드레스 지정 커맨드 「A」 및 행 어드레스 「R1」 이 부여되면 (시각 t2), 커맨드 「A」 를 받은 명령 해석부 (31) 는, 적절한 타이밍 (예를 들어 t3 ∼ t4 사이) 으로, 신호 ComC 에 의해 행 어드레스 버퍼 (35) 에 대해 커맨드 「A」 를 보낸다. 행 어드레스 「R1」 은, 일단 버퍼 (32) 에 저장된 후, 신호 ComC 로서 커맨드 「A」 가 출력되는 것과 동기하여 신호 AddC 로서 행 어드레스 버퍼 (35) 및 판독 제어부 (36) 에 대해 출력된다. 행 어드레스 버퍼 (35) 는, 신호 ComC 로서 입력된 커맨드 「A」 를 트리거로 하여, 신호 AddC 로서 입력된 행 어드레스 「R1」 을 내부의 버퍼에 유지한다.
계속해서, 메모리 제어부 (30) 에, 기록 커맨드 「W」 와 지정 어드레스 「C1」 이 부여되면 (시각 t4), 커맨드 「W」 를 받은 명령 해석부 (31) 는, 적절한 타이밍 (예를 들어 t5 ∼ t6 사이) 으로, 판독 제어부 (36), 판독 기록 전환 제어부 (41) 에 대해 신호 ComC 로서 커맨드 「R」 을 출력한다. 또, 어드레스 「C1」 은, 일단 버퍼 (32) 에 유지된 후, 신호 ComC 로서 명령 해석부 (31) 로부터 커맨드 「R」 이 출력되는 것과 동기하여, 신호 AddC 로서 판독 제어부 (36) 에 출력된다. 판독 제어부 (36) 는, 신호 ComC 로서 입력되는 커맨드 「R」 을 트리거로 하여, 신호 AddC 로서 입력되는 어드레스 「C1」 을 내부의 버퍼에 유지한다. 또, 명령 해석부 (31) 는, 적절한 타이밍으로 신호 R/W 를 「High」 레벨로 한다. 도 4 에서는, 명령 해석부 (31) 가 커맨드 「R」 을 신호 ComC 에 출력하는 타이밍을 트리거로 하여, 신호 R/W 를 「High」 레벨로 하고 있다.
판독 제어부 (36) 는, 커맨드 「R」 을 1 회 받을 때마다, 버스트 길이 상당분의 연속하는 어드레스값을 신호 AddCr 로 하여 서브 뱅크 교체부 (42) 에 대해 출력한다. 여기서는, 버스트 길이를 4 로 하고 있기 때문에, 4 회분의 연속하는 어드레스값이 신호 AddCr 에 판독 제어부 (36) 로부터 서브 뱅크 교체부 (42) 로 출력되게 된다. 즉, 판독 제어부 (36) 는, 상기 t5 ∼ t6 사이에 「R」 커맨드를 받은 결과로서, 시각 t6 ∼ t10 사이에, 판독 제어부 (36) 는 어드레스 「C1」, 「C1+1」, 「C1+2」, 「C1+3」 을 신호 AddCr 로 하여 출력하는 것이 된다. 또, 이 어드레스를 출력하고 있는 동안, 판독 제어부 (36) 는 「High」 레벨의 신호 RE 를 출력한다
또, 메모리 제어부 (30) 는, 상기 「W」 커맨드가 입력됨과 동시에 (시각 t4), 기록 대상 데이터의 입력을 접수한다. 본 실시형태에서 설명하는 실시예에서는, 버스트 길이가 4 이기 때문에, 1 개의 「W」 커맨드에 대해 4 개의 기록 대상 데이터 (D0, D1, D2, D3) 가 입력된다 (시각 t4 ∼ t7). 입력된 기록 대상 데이터는, 시각 t8 이후에, 비교부 (37) 에 있어서 서브 뱅크 (52A 또는 52B) 로부터 판독된 기존 기록 데이터와의 비교가 실시될 때까지, 버퍼 (34) 에서 일시적으로 유지된다.
도 4 의 타이밍 차트에서는, 서브 뱅크에 대한 액세스 개시를 시각 t7 로 하고 있기 때문에, 이 시점에서, 행 어드레스 버퍼 (35) 가 행 디코더 (53) 에 대해, 행 어드레스 「R1」 을 나타내는 신호 Row 를 공급하여, 당해 행 어드레스선을 액티브화하고 있다. 물론, 이 시각 t7 보다 빠른 타이밍으로 당해 행 어드레스선을 액티브로 해도 되지만, 동일한 액세스가 연속하는 경우에는, 상기의 타이밍이 액세스 간격을 짧게 할 수 있어 양호하다.
시각 t7 이후, 판독 제어부 (36) 로부터 부여된 신호 RE (판독 트리거 신호에 상당), 및 신호 AddCr (판독 지정 어드레스 신호에 상당) 에 기초하여, 서브 뱅크 교체부 (42) 는, 열 디코더 (51A, 51B) 를 개재하여, 서브 뱅크 (52A, 52B) 로의 판독 처리를 개시한다. 서브 뱅크 교체부 (42) 는, 판독 기록 전환 제어부 (41) 로부터 입력되는 신호 SBSel 의 값 (High/Low) 에 따라, 판독 대상 서브 뱅크를 서브 뱅크 (52A, 52B) 에 할당한다. 이 서브 뱅크 교체부 (42) 의 처리에 의해, 각 서브 뱅크 (52A, 52B) 로부터 교대로 판독 처리가 실시된다. 즉, 신호 SBSel 이 「Low」 인 경우에는, 서브 뱅크 교체부 (42) 는 열 디코더 (51A) 에 대해 판독 지시를 실시하고, 이로써 판독 회로 (43) 가 서브 뱅크 (52A) 로부터 기존 기록 데이터의 판독을 실시한다. 또, 신호 SBSel 이 「High」 인 경우에는, 서브 뱅크 교체부 (42) 는 열 디코더 (51B) 에 대해 판독 지시를 실시하고, 이로써 판독 회로 (43) 가 서브 뱅크 (52B) 로부터 기존 기록 데이터의 판독을 실시한다.
본 실시형태에서는, 연속하는 어드레스가 교대로 서브 뱅크 (52A) 와 서브 뱅크 (52B) 에 할당되어 있게 되기 때문에, 어드레스 C1 그리고 C1+2 는 동일한 서브 뱅크 내에 존재하고, 어드레스 C1+1 그리고 C1+3 은 다른 동일한 서브 뱅크 내에 존재하게 된다. 여기서는, 어드레스 C1 그리고 C1+2 가 서브 뱅크 (52A) 에 존재하고, 어드레스 C1+1 그리고 C1+3 이 서브 뱅크 (52B) 내에 존재하는 것으로 하여 설명한다.
서브 뱅크 교체부 (42) 와 열 디코더 (51A) 의 사이에서는, 신호 RWA, WEA, ADA, DWA, DRA 의 각 신호의 수수가 실시된다. 신호 RWA 는 판독인지 기록인지를 나타내는 신호이고, 신호 ADA 는 기록을 실시하는 열 어드레스를 나타내는 신호이며, 신호 DWA는 기록을 실시하는 데이터 (기록 대상 데이터) 를 나타내는 신호이고, 신호 WEA 는 데이터의 기록을 실시할지 아닌지를 나타내는 신호이다. 신호 WEA 에 관해서는, 여기서 설명하고 있는 바와 같이, 1 어드레스에 대해 데이터가 1 비트밖에 없는 경우에는 없어도 되지만, 후술하는 바와 같이, 데이터가 다비트인 경우에는, 어느 비트를 기록할지를 나타내는 역할을 담당한다. 이들 4 신호는, 서브 뱅크 교체부 (42) 로부터 열 디코더 (51A) 에 대해 출력된다.
또, 신호 DRA 는, 서브 뱅크 (52A) 로부터 판독된 기존 기록 데이터를 나타내는 신호로서, 열 디코더 (51A) 로부터 서브 뱅크 교체부 (42) 에 대해 출력된다. 또한, 이 신호 DRA 는 증폭 전의 미약 신호로서, 그 후, 판독 회로 (43) 에 의해 증폭되어, 기존 기록 데이터 DatC 로서 출력되는 구성이다.
열 디코더 (51A) 는, 신호 RWA 가 「R」 인 경우, 신호 ADA 에 의해 지정된 어드레스에 저장된 기존 기록 데이터의 판독을 실시하기 위한 전압 인가를 실시하고, 기존 기록 데이터는 신호 DRA 로서 서브 뱅크 교체부 (42) 에 출력된다. 또, 열 디코더 (51A) 는, 신호 RWA 가 「W」 인 경우, 신호 ADA 에 의해 지정된 어드레스에, 신호 DWA 로서 입력된 기록 대상 데이터를 기록하기 위해 전압 인가를 실시한다. 이 때, 기록을 실시할지 아닌지는 신호 WEA 에 의해 결정된다. 예를 들어, 신호 DWA (기록 데이터) 가 8 비트폭이었을 경우, 신호 WEA 가 「00000001」 이라는 값이면, 신호 DWA 의 최하위 비트만이 기록을 실시하는 비트이고, 나머지의 7 비트는 기록을 실시하지 않는 비트라는 것이 된다.
서브 뱅크 교체부 (42) 와 열 디코더 (51B) 사이에 있어서도, 열 디코더 (51A) 와의 사이와 마찬가지로, 신호 RWB, WEB, ADB, DWB, DRB 의 각 신호의 수수가 실시된다. 신호 RWB 는 판독인지 기록인지를 나타내는 신호이고, 신호 ADB 는 기록을 실시하는 열 어드레스를 나타내는 신호이며, 신호 DWB 는 기록을 실시하는 데이터 (기록 대상 데이터) 를 나타내는 신호이고, 신호 WEB 는 데이터의 기록을 실시할지 아닌지를 나타내는 신호이다. 신호 WEB 에 대해서도, 신호 WEA 와 마찬가지로, 여기서 설명하고 있는 바와 같이, 1 어드레스에 대해 데이터가 1 비트밖에 없는 경우에는 없어도 되지만, 후술하는 바와 같이, 데이터가 다비트인 경우에는, 어느 비트를 기록할지를 나타내는 역할을 담당한다. 이들 4 신호는, 서브 뱅크 교체부 (42) 로부터 열 디코더 (51B) 에 대해 출력된다. 또한, 신호 DRB 는, 서브 뱅크 (52B) 로부터 판독된 기존 기록 데이터를 나타내는 신호로서, 열 디코더 (51B) 로부터 서브 뱅크 교체부 (42) 에 대해 출력된다. 또한, 이 신호 DRB 는 증폭 전의 미약 신호로서, 그 후, 판독 회로 (43) 에 의해 증폭되어 기존 기록 데이터 DatC 로서 출력되는 구성이다.
또, 열 디코더 (51A 와 51B) 는, 모두 동일한 기능을 갖는 블록이다.
서브 뱅크 교체부 (42) 는, 신호 RE 가 「High」 인 동안, 판독 지시를 열 디코더 (51A 또는 51B) 에 부여한다. 먼저, 시각 t7 ∼ t8 에 있어서, 신호 SBSel 이 「Low」 인 것보다, 열 디코더 (51A) 에 대해, 신호 AddCr 에 의해 지정된 어드레스 C1 에 대응한 메모리 셀의 기존 기록 데이터의 판독 지시를 부여한다. 이 때, 행 디코더 (53) 에 의해 지정된 행 어드레스 (신호 Row 에 의해 지정된 행 어드레스 R1) 가 액티브로 되어 있다. 그리고, 시각 t7 ∼ t8 기간 내에, 열 디코더 (51A) 는, 서브 뱅크 (52A) 로부터 어드레스 C1 에 대응한 메모리 셀의 기존 기록 데이터를 신호 DRA 로 하여 서브 뱅크 교체부 (42) 에 송출한다.
다음으로, 시각 t8 ∼ t9 에 있어서, 신호 SBSel 이 「High」 인 것보다, 서브 뱅크 교체부 (42) 는, 열 디코더 (51B) 에 대해, 신호 AddCr 에 의해 지정된 어드레스 C1+1 에 대응한 메모리 셀의 기존 기록 데이터의 판독 지시를 부여한다. 이 때, 행 디코더 (53) 에 의해 지정된 행 어드레스 (신호 Row 에 의해 지정된 행 어드레스 R1) 가 액티브로 되어 있다. 그리고, 시각 t8 ∼ t9 기간 내에, 열 디코더 (51B) 는, 서브 뱅크 (52B) 로부터 어드레스 C1+1 에 대응한 메모리 셀의 기존 기록 데이터를 신호 DRB 로 하여 서브 뱅크 교체부 (42) 에 송출한다.
이하 동일한 순서에 의해, 시각 t9 ∼ t10 에 열 디코더 (51A) 는 서브 뱅크 (52A) 로부터 어드레스 C1+2 에 대응한 메모리 셀의 기존 기록 데이터를 신호 DRA 로 하여 서브 뱅크 교체부 (42) 에 송출한다. 또, 시각 t10 ∼ t11 에 열 디코더 (51B) 는 서브 뱅크 (52B) 로부터 어드레스 C1+3 에 대응한 메모리 셀의 기존 기록 데이터를 신호 DRB 로 하여 서브 뱅크 교체부 (42) 에 송출한다.
비교부 (37) 는, 명령 해석부 (31) 로부터 부여되는 신호 R/W 가 「High」 인 경우에, 판독 회로 (43) 로부터 부여되는 신호 DatC 가 나타내는 기존 기록 데이터와, 버퍼 (34) 로부터 부여되는 신호 DatO 가 나타내는 기록 대상 데이터의 비교를 실시하여, 비교 결과를 신호 Comp 로 하여 기록 제어부 (39) 에 출력한다.
도 4 에서는, 시각 t8 ∼ t12 에 걸쳐서, 서브 뱅크 교체부 (42) 에 의해 머지된 판독 데이터 (Q0 ∼ Q3) 가, 판독 회로 (43) 로부터 신호 DatC 로서 비교부 (37) 에 출력된다. 또한, 신호 DatC 로부터 데이터가 출력되고 있는 동안, 신호 DE 가 액티브 (High) 로 되어 있다. 요컨대, 이 신호 DE 에 의해 신호 DatC 로부터 데이터가 출력되고 있는 것을 인식할 수 있다. 또, 이 신호 DE 는, 버퍼 (34) 에 입력되고, 이로써, 신호 DatC 가 비교부 (37) 에 입력되는 타이밍과 동기하여, 버퍼 (34) 로부터 기록 대상 데이터 DatO 가 비교부 (37) 에 입력된다 (t8 ∼ t12). 신호 DE 는 비교부 (37) 에도 입력되며, 비교부 (37) 는, 이 신호 DE 가 액티브일 때에, 기록 대상 데이터 DatO 와 기존 기록 데이터 DatC 의 비교 연산을 실시하여, 비교 결과를 신호 Comp 로 하여 출력한다. 즉, 시각 t8 ∼ t9 사이에는, 기존 기록 데이터 「Q0」 과, 기록 대상 데이터 「D0」 을 비교하여, 그 결과를 나타내는 데이터 「G0」 을 기록 제어부 (39) 에 출력한다.
이하, 어드레스를 1 씩 어긋나게 하여 판독한 기존 기록 데이터와, 대응하는 어드레스의 기록 대상 데이터의 비교를 실시한다. 즉, 시각 t9 ∼ t10 사이에는 「D1」 과 「Q1」 을 비교하여 비교 결과를 「G1」 로 하고, 시각 t10 ∼ t11 사이에는 「D2」 와 「Q2」 를 비교하여 비교 결과를 「G2」 로 하며, 시각 t11 ∼ t12 사이에는 「D3」 과 「Q3」 을 비교하여 비교 결과를 「G3」 으로 한다. 즉, 비교부 (37) 는, 시각 t8 ∼ t12 에 걸쳐, 기존 기록 데이터 DatC (Q0 ∼ Q3) 와, 기록 대상 데이터 DatO (D0 ∼ D3) 의 비교 결과를, 신호 Comp (G0 ∼ G3) 로 하여 기록 제어부 (39) 에 출력한다.
기록 제어부 (39) 는, 비교부 (37) 로부터 입력된 신호 Comp 의 데이터에 기초하여 서브 뱅크 교체부 (42) 에 대해 데이터의 기록 제어를 실시한다. 구체적으로는, 버퍼 (38) 에 유지되어 있던 어드레스에, 버퍼 (34) 에 유지되어 있던 기록 대상 데이터 중, 비교부 (37) 로부터 지정된 비트를 기록하는 지시를 낸다. 이 때, 기록 제어부 (39) 는, 서브 뱅크 교체부 (42) 에 대해, 신호 AddOw 에 의해 어드레스를 지정하고, 신호 WE 에 의해 기록 비트를 지정하며, 신호 DatOw 에 의해 기록 대상 데이터를 지정한다 (시각 t9 ∼ t13 사이). 또한, 기록 비트를 나타내는 신호 WE 는, 비교부 (37) 로부터 부여되는 신호 Comp 에 기초하여 생성되고, 후술하는 바와 같이 데이터가 다비트인 경우에는, 기존 기록 데이터와 기록 대상 데이터의 비교 결과가 상이한 비트만이 기록 비트로서 지정된다.
서브 뱅크 교체부 (42) 는, 기록 제어부 (39) 로부터 상기 데이터 기록 지시를 받으면, 열 디코더 (51A, 51B) 에 대해 기록 지시를 실시한다 (시각 t10 ∼ t14 사이). 이 때, 하나의 열 디코더에 대해 판독 처리가 실시되고 있는 동안에는, 그것과는 다른 열 디코더에 대해 기록 지시를 부여한다. 보다 구체적으로는, 예를 들어, 시각 t10 ∼ t11 사이에는 열 디코더 (51A) 에 대해 기록 지시를 부여하고, 시각 t11 ∼ t12 사이에는 열 디코더 (51B) 에 대해 기록 지시를 부여한다. 이로써, 열 디코더 (51B) 에 대해 판독 지시가 부여되고 있는 시각 t10 ∼ t11 사이에, 열 디코더 (51A) 에 대해 기록 지시가 부여되는 구성이 된다. 또, 열 디코더 (51A) 에 대해 판독 지시가 부여되고 있는 시각 t11 ∼ t12 사이에, 열 디코더 (51B) 에 대해 기록 지시가 부여되는 구성이 된다.
이와 같이 하여, 시각 t4 에 입력된 「W」 커맨드에 대응한 기록 대상 데이터 (D0 ∼ D3) 는, 시각 t10 ∼ t14 사이에 있어서 각 서브 뱅크 내에 기록이 완료된다 (혹은 동일한 기존 기록 데이터가 그대로 이용된다). 시각 t8 에 입력된 「W」 커맨드에 대응한 기록 대상 데이터 (D4 ∼ D7) 에 대해서도, 상기와 동일한 처리를 실시한다. 이 때, 도 4 를 참조하면, 데이터 D3 의 기록이 완료된 시각 t13 ∼ t14 사이의 타이밍에 계속해서, 시각 t14 ∼ t15 사이에 데이터 D4 의 서브 뱅크 (51A) 로의 기록이 실시된다. 즉, 기록 커맨드 「W」 가 (버스트 길이의 간격으로) 연속하여 메모리 제어부 (30) 에 입력된 경우라도, 기록에 타임 래그가 발생하지 않고, 이로써 기록 속도가 늦어지지 않는다.
다음으로, 도 5 의 타이밍 차트를 사용하여, 구체적인 판독 동작의 순서를 설명한다. 또한, 도 5 의 경우도 도 4 와 마찬가지로, 버스트 길이가 4 인 경우를 예시하고 있다. 판독 동작은, 도 4 에 나타낸 기록 동작 순서에 있어서, 비교부 (37) 에 의한 비교 처리, 기록 제어부 (39) 및 서브 뱅크 교체부 (42) 에 의한 기록 지시, 양(兩) 열 디코더 (51A, 51B) 에 의한 기록 처리가 실시되지 않는 것으로 생각하면 된다.
메모리 제어부 (30) 에 대해, 행 어드레스 지정 커맨드 「A」 및 행 어드레스 「R1」 이 부여되면 (시각 t2), 기록 동작의 경우와 마찬가지로, 커맨드 「A」 를 받은 명령 해석부 (31) 는, 적절한 타이밍 (예를 들어 t3 ∼ t4 사이) 으로, 커맨드 「A」 를 신호 ComC 로 하여 행 어드레스 버퍼 (35) 에 보낸다. 행 어드레스 「R1」 은, 일단 버퍼 (32) 에 저장된 후, 신호 ComC 로서 커맨드 「A」 가 출력되는 것과 동기하여 신호 AddC 로서 행 어드레스 버퍼 (35) 및 판독 제어부 (36) 에 대해 출력된다. 행 어드레스 버퍼 (35) 는, 신호 ComC 로서 입력된 커맨드 「A」 를 트리거로 하여, 신호 AddC 로서 입력된 행 어드레스 「R1」 을 내부의 버퍼에 유지한다.
계속해서, 메모리 제어부 (30) 에, 판독 커맨드 「R」 과 지정 어드레스 「C1」 이 부여되면 (시각 t4), 커맨드 「R」 을 받은 명령 해석부 (31) 는, 적절한 타이밍 (예를 들어 t5 ∼ t6 사이) 으로, 판독 제어부 (36), 판독 기록 전환 제어부 (41) 에 대해 신호 ComC 로서 커맨드 「R」 을 출력한다. 또, 어드레스 「C1」 은, 일단 버퍼 (32) 에 유지된 후, 신호 ComC 로서 커맨드 「R」 이 출력되는 것과 동기하여, 신호 AddC 로서 판독 제어부 (36) 에 출력된다. 판독 제어부 (36) 는, 신호 ComC 로서 입력되는 커맨드 「R」 을 트리거로 하여, 신호 AddC 로서 입력되는 어드레스 「C1」 을 내부의 버퍼에 유지한다. 단, 명령 해석부 (31) 는, 입력된 커맨드가 판독 커맨드 「R」 이기 때문에, 기록시와 달리 「Low」 레벨의 신호 R/W 를 출력한다. 이 신호 R/W 는, 예를 들어 명령 해석부 (31) 에 대해 기록 커맨드 「W」 가 입력될 때까지의 사이, 「Low」 레벨이 유지되는 것으로 해도 상관없다.
판독 제어부 (36) 는, 기록시와 마찬가지로, 커맨드 「R」 을 1 회 받을 때마다, 버스트 길이 상당분의 연속하는 어드레스값을 신호 AddCr 로 하여 서브 뱅크 교체부 (42) 에 대해 출력한다. 기록시와 마찬가지로 버스트 길이를 4 로 하면, 상기 t5 ∼ t6 사이에 받은 「R」 커맨드에 대해, 시각 t6 ∼ t10 사이에, 어드레스 「C1」, 「C1+1」, 「C1+2」, 「C1+3」 을 출력한다. 이 어드레스를 출력하고 있는 동안, 판독 제어부 (36) 는, 「High」 레벨의 신호 RE 를 출력한다.
그리고 시각 t7 이후, 기록 처리시의 경우와 마찬가지로, 판독 제어부 (36) 로부터 부여된 신호 RE (판독 트리거 신호에 상당), 및 신호 AddCr (판독 지정 어드레스 신호에 상당) 에 기초하여, 서브 뱅크 교체부 (42) 및 열 디코더 (51A, 51B) 를 개재하여, 서브 뱅크 (52A, 52B) 로의 판독 처리가 개시된다. 서브 뱅크 교체부 (42) 는, 판독 기록 전환 제어부 (41) 로부터 입력되는 신호 SBSel 의 값 (High/Low) 에 따라, 판독 대상 서브 뱅크를 서브 뱅크 (52A, 52B) 사이에서 할당하고, 이로써, 각 서브 뱅크 (52A, 52B) 로부터 교대로 판독 처리가 실시된다. 그리고, 판독된 데이터는, 서브 뱅크 교체부 (42) 를 개재하여 판독 회로 (43) 에 부여되고, 여기서 증폭 처리가 실시된 후, 신호 DatC 로서 출력 제어부 (33) 에 보내진다 (시각 t8 ∼ t12). 신호 DatC 로부터 데이터가 출력되고 있는 것은 신호 DE 가 액티브 (High) 로 됨으로써 나타난다. 출력 제어부 (33) 는, 입력된 신호 R/W 가 「Low」 레벨인 것을 인식하여, 입력된 신호 DatC 를 메모리 버스 (21) 로 송출한다.
한편, 비교부 (37) 는, 입력된 신호 R/W 가 「Low」 레벨인 것을 인식하면, 비교 처리를 실행하지 않는다. 또한, 판독 처리이기 때문에, 당연히 기록 대상 데이터가 입력되어 있지 않은 상태이기 때문에, 비교부 (37) 에 대해 신호 DatO 는 입력되지 않는 구성이다.
또한, 시각 t4 에 이어서, 시각 t8 에 있어서 판독 커맨드 「R」, 및 판독용 행 어드레스 「C2」 가 입력된 경우에 있어서도, 시각 t11 ∼ t15 에 걸쳐 각 서브 뱅크에 대해 어드레스 「C2」, 「C2+1」, 「C2+2」, 「C2+3」 에 관련된 메모리 셀의 판독 지시가 실시되고, 이로써 시각 t12 ∼ t16 에 걸쳐 당해 어드레스 위치의 데이터 판독이 실시된다. 요컨대, 판독 커맨드 「R」 이 (버스트 길이의 간격으로) 연속하여 메모리 제어부 (30) 에 입력된 경우라도, 판독에 타임 래그가 발생하지 않고, 이로써 판독 속도가 늦어지지 않는다. 마찬가지로, 판독 커맨드 「R」 의 뒤에 기록 커맨드 「W」 가 입력된 경우나, 그 반대의 경우에 있어서도, 타임 래그를 발생시키지 않는다.
상기 서술한 바와 같이, 본 실시형태와 같은 구성으로 함으로써, 기록 커맨드 「W」 가 부여된 경우, 실제로 메모리 셀로의 기록 처리를 실시하기 전에 기록 대상의 메모리 셀로부터 기존 기록 데이터의 판독을 실시하여 기록 대상 데이터와의 비교가 실시된다. 그리고, 비교 결과가 상이한 경우에만 당해 메모리 셀에 대해 기록 대상 데이터의 기록 처리가 실시되고, 비교 결과가 동일한 경우에는 기록 처리가 실시되지 않는다. 따라서, 종래의 기록 처리와 비교하여, 동일 메모리 셀에 대해 실제로 기록용 전압이 인가되어 기록 처리가 실시되는 횟수가 감소한다. 이로써, 각 메모리 셀을 연명시킬 수 있다.
그리고, 상기 서술한 바와 같이, 하나의 서브 뱅크에 대해 기존 기록 데이터와 기록 대상 데이터의 비교를 실시하고 있는 동안에, 다른 서브 뱅크에 대해 기록용 전압을 인가하여 기록 처리를 실시할 수 있는 구성이기 때문에, 기록 처리에 있어서 타임 래그가 발생하지 않는다. 따라서, 종래 방법으로부터 기록 처리에 필요로 하는 시간을 길게 하지 않고, 메모리 셀을 연명시킬 수 있다는 효과가 있다.
또, 본 실시형태의 구성에서는, 단순히 기록 처리시에 있어서, 기록 대상의 어드레스에 관련된 메모리 셀의 기존 기록 데이터와 기록 대상 데이터의 비교를 실시하는 것만으로 메모리 셀의 연명 조치가 가능해진다. 즉, 종래와 같이, 기록 횟수나 기록 순서를 관리할 필요가 없기 때문에, 비트 단위로 기록 (재기록) 을 할 수 있는 RRAM 에 대해서도 용이하게 적용할 수 있다.
상기 본 실시형태에 있어서, 서브 뱅크 (52A) 에는 짝수 어드레스가, 서브 뱅크 (52B) 에는 홀수 어드레스가 각각 할당되어 있는 것으로 했지만, 홀짝이 반대여도 된다. 또한, 연속하는 1 어드레스마다, 각 서브 뱅크 사이에서 교대로 어드레스를 할당할 필요는 없고, 2 어드레스마다나 4 어드레스마다 등, 복수 어드레스마다 서브 뱅크 사이에서 교대가 되도록 어드레스를 할당하는 것으로 해도 된다. 이 경우, 상기 복수 어드레스의 수는 버스트 길이의 약수이면 된다. 이하의 제 2 실시형태에서도 마찬가지로 한다.
상기 본 실시형태에 있어서, 각 신호 레벨이 「High」 인지 「Low」 인지는 일례로서, 이 레벨이 반전해도 된다. 예를 들어, 신호 SBSel 이 「Low」 인 경우에, 서브 뱅크 (52B) 로부터 판독을, 서브 뱅크 (52A) 에 기록을 실시하는 지시를 부여하고, 반대로 신호 SBSel 이 「High」 인 경우에는, 서브 뱅크 (52A) 로부터 판독을, 서브 뱅크 (52B) 에 기록을 실시하는 지시를 부여하는 것으로 해도 된다. 다른 신호에 대해서도 마찬가지다.
또한, 상기 서술한 실시형태에서는, 도 1 에 기초하여 동작의 개략을 설명해 왔다. 이하에서는, 도 2 를 참조하여, j 비트의 데이터를 갖는 경우의 취급에 대해 설명한다.
도 2 에 나타내는 구성은, 도 1 에 있어서의 디코더부 (행 디코더 (53), 열 디코더 (51A, 51B)) 및 서브 뱅크 (52A, 52B) 대신에, 행 디코더, 열 디코더 A, 열 디코더 B, 서브 뱅크 A, 서브 뱅크 B 를 1 조로 한 유닛 (이하 메모리 유닛) 을 j 조 구비한다.
도 2 에 있어서, 부호 52A0, 52A1, 52A2, 52A3, 52B0, 52B1, 52B2, 52B3 은 서브 뱅크를, 부호 51A0, 51A1, 51A2, 51A3, 51B0, 51B1, 51B2, 51B3 는 열 디코더를, 부호 530, 531, 532, 533 은 행 디코더를 각각 나타내고 있다. 또, 각 서브 뱅크 52A0, 52A1, 52A2, 52A3 을 서브 뱅크 A 로 칭하고, 각 서브 뱅크 52B0, 52B1, 52B2, 52B3 을 서브 뱅크 B 로 칭한다. 마찬가지로, 열 디코더 51A0, 51A1, 51A2, 51A3 을 열 디코더 A 로 칭하고, 열 디코더 51B0, 51B1, 51B2, 51B3 를 열 디코더 B 로 칭한다. 또한, 도 2 에 있어서, 부호 501, 502, 503, 504 는, 서브 뱅크 A 및 B 를 1 조로 한 메모리 유닛을 나타낸다.
우선은, 도 2 에 나타내는 바와 같이, j 조의 메모리 유닛이 탑재된 장치에 있어서, 도 1 의 메모리 제어부 (30) 내에서 다비트화되는 신호에 대해 언급한다. 기본적으로는 데이터 버스의 비트폭이 j 비트로 다비트화되게 된다. 또 그 제어 신호도 j 비트로 다비트화된다. 구체적으로는, 메모리 버스 (21) 와 접속되는 데이터, 버퍼 (34) 의 출력 신호 DatO, 판독 회로 (43) 로부터 출력되는 DatC, DatO 와 DatC 를 비교한 결과인 비교부 (37) 의 출력 Comp, 기록 제어부 (39) 의 출력 DatOw 와 그 기록 인에이블 WE, 서브 뱅크 교체부 (42) 의 출력 (기록) 데이터 DWA, DWB 와 각각의 기록 인에이블 WEA, WEB, 서브 뱅크 교체부 (42) 의 입력 (판독) 데이터 DRA, DRB 가 다비트화된다. Comp, WE, WEA, WEB 의 각 비트는, 대응하는 데이터 DatO 와 DatC, DatOw, DWA, DWB 의 각 비트와 대응하고 있다. 요컨대, DatO 와 DatC 의 최하위 비트끼리의 비교 결과를 Comp 의 최하위 비트가 나타내고, DatOw 의 최상위 비트의 기록 인에이블을 WEA 의 최상위 비트가 나타낸다.
다음으로 도 2 에 있어서의 각 신호선의 접속에 대해 설명한다. 1 에서 j 번째까지의 모든 행 디코더에 대해서는, 신호선 Row 와 SBSel (신호 Row 와 SBSel 이 흐르는 신호선) 이 접속된다. 이것은, 즉 각 메모리 유닛 사이에 있어서, 동일한 신호에 기초하여 행 어드레스와 판독 기록의 전환 제어가 실시되는 것을 나타내고 있다. 또, k (1 부터 j 까지의 자연수) 번째의 열 디코더 A 에 대해서는, 판독 기록 커맨드 RWA, 기록 인에이블 WEA[k], 열 어드레스 ADA, 기록 데이터 DWA[k], 판독 데이터 DRA[k] 의 각 데이터를 흐르게 하는 신호선이 접속된다. 이것은, 판독 기록 커맨드 RWA, 열 어드레스 ADA 에 관해서는 모든 열 디코더 A 에 동일한 것이 부여되고, 판독 기록 커맨드 RWA 가 「W (기록)」 를 나타내고 있는 경우에는, WEA[k] 가 액티브로 되어 있는 메모리 유닛에만 기록 데이터 DWA[k] 가 기록되고, 판독 기록 커맨드 RWA 가 「R (판독)」 을 나타내고 있는 경우에는, WEA[k] 가 액티브로 되어 있는 메모리 유닛으로부터만 판독 데이터 DRA[k] 가 판독된다는 것을 나타내고 있다. 열 디코더 B 에 관해서도, 열 디코더 A 와 마찬가지다. 요컨대, 1 에서 j 번째의 각 메모리 유닛은, 각 데이터 및 데이터 제어선의 1 에서 j 비트째에 각각 대응하고 있다.
상기 서술한 도 1 의 구성은, 확실히 도 2 에 있어서의 j = 1 만을 도시한 것으로, 도 4 및 도 5 에 있어서의 타이밍 차트도, j = 1 인 경우에 관해서 도시한 것이다. 반대로 말하면, 도 2 의 구성에서는, 도 1 에 있어서의 타이밍 차트에 나타나는 바와 같은 동작이 각 메모리 유닛마다 실행된다.
이하, 본 실시형태에 있어서의 불휘발성 반도체 기억 장치로의 기록/판독 동작의 방법, 그리고 제조 방법에 대해 간단하게 설명한다. 또한, 이들 방법은, 이하의 제 2, 제 3 실시형태에 있어서도 동일하며, 이들 실시형태 내에서는 설명을 할애한다.
또, 이하에서는, 일례로서 각 서브 뱅크가 도 3 에 나타내는 회로 구성인 경우에 대해 설명한다. 또한, 본 실시형태에 있어서의 이하의 설명 내에 있어서는, 「기록」 을 「소거」 와 구별하여 설명한다. 그리고, 가변 저항 소자 (R) 가 저저항 상태에 있는 경우를 「기록 상태」 로 정의하고, 고저항 상태에 있는 경우를 「소거 상태」 로 정의한다.
또한, 각 메모리 셀을 구성하는 RRAM 이 도 15 에 나타나는 바와 같은 구성으로서, 하부 전극 (103) 으로부터 상부 전극 (101) 을 향하는 극성으로 양단에 전압이 인가됨으로써 저저항 상태로 천이되고, 역극성의 전압이 인가됨으로써 고저항 상태로 천이되는 성질을 갖고 있는 것으로 한다. 그리고, 이 상부 전극 (101) 에 비트선이 접속되고, 하부 전극 (103) 에 소스선이 접속되는 구성으로 한다.
먼저, 메모리 셀로의 기록 동작 (가변 저항 소자의 저저항화) 에 대해 설명한다. 기록 대상 메모리 셀이 지정되면, 행 디코더 (53) 는, 당해 메모리 셀 (선택 메모리 셀) 에 접속되는 워드선 (선택 워드선) 에 +2 V 를 인가하고, 상기 선택 워드선 이외의 워드선 (비선택 워드선) 에 0 V 를 인가한다. 그리고, 소스선 (S) 에 0 V 를 인가한다. 또한, 열 디코더 (51A, 51B) 는, 선택 메모리 셀에 접속되는 비트선 (선택 비트선) 에 +2 V 를 인가하고, 상기 선택 비트선 이외의 비트선 (비선택 비트선) 에 0 V 를 인가한다. 이 때, 기록시에는, 선택 메모리 셀을 구성하는 가변 저항 소자 (R) 의 상부 전극에 정극성의 전압이 인가되기 (일방 하부 전극은 접지되어 있다) 때문에, 당해 가변 저항 소자 (R) 가 저저항 상태로 천이되고, 이로써 데이터가 기록된다. 한편, 비선택 셀의 가변 저항 소자 (R) 에는 전압이 가해지지 않기 때문에, 데이터의 기록이 이루어지지 않는다 (데이터의 변동이 없다).
또한, 선택 워드선에 인가하는 전압은, 상기 설명에서는 +2 V 로 했지만, 이 값은 일례로서, 실제로는 선택 트랜지스터가 도통하는 데에 충분한 전압 (소위 트랜지스터의 임계값 전압) 이상이면 된다. 또, 선택 비트선에 인가하는 전압은, 상기 설명에서는 +2 V 로 했지만, 이 값은 일례로서, 실제로는, 소스선에 인가되는 전압과의 전위차에 따라 가변 저항 소자의 저항 상태를 천이시키는 데에 충분한 전압 (스위칭 동작의 임계값 전압) 이상이면 된다.
또한, 메모리 셀의 소거 동작 (가변 저항 소자의 고저항화) 시에는, 소거 대상 메모리 셀 내의 가변 저항 소자의 양단에 인가되는 전압의 극성을, 기록시에 대해 반전시키면 된다. 즉, 기록시와 마찬가지로, 선택 트랜지스터를 도통시키기 위해, 행 디코더 (53) 는, 선택 비트선에 0 V, 비선택 비트선에 +2 V 를 인가하고, 또한, 소스선 (S) 에 +2 V 를 인가한다. 이로써, 선택 메모리 셀을 구성하는 가변 저항 소자 (R) 의 하부 전극에 정극성의 전압이 인가되기 (일방 상부 전극은 접지되어 있다) 때문에, 당해 가변 저항 소자 (R) 가 고저항 상태로 천이되고, 이로써 데이터가 소거된다. 한편, 비선택 셀의 가변 저항 소자 (R) 에는 전압이 걸리지 않기 때문에, 데이터의 소거가 이루어지지 않는다 (데이터의 변동이 없다).
다음으로, 메모리 셀의 판독 동작에 대해 설명한다. 판독 대상 메모리 셀이 지정되면, 행 디코더 (53) 는, 선택 메모리 셀에 접속되는 선택 워드선에 +2 V 를 인가하고, 상기 선택 워드선 이외의 비선택 워드선에 0 V 를 인가한다. 그리고, 소스선 (S) 에 0 V 를 인가한다. 또한, 열 디코더 (51A, 51B) 는, 선택 메모리 셀에 접속되는 비트선 (선택 비트선) 에 +1 V 를 인가하고, 상기 선택 비트선 이외의 비트선 (비선택 비트선) 에 0 V 를 인가한다. 이로써, 선택 메모리 셀에 접속된 선택 트랜지스터가 도통한 상태에서, 비트선-소스선 사이에 판독용 전압 1 V 가 인가된다. 실제로는, 배선 저항이나 선택 트랜지스터의 온 저항이 존재하여, 이들 저항에 의해 전압 강하가 발생하기 때문에, 선택 메모리 셀 내의 가변 저항 소자 (R) 의 양단에는, 1 V 보다 저전압 (예를 들어 0.7 V 정도) 이 인가되는 상태가 된다.
이 상태하에서, 선택 비트선을 흐르는 전류 (판독 전류) 를 검출하여, 판독 회로 (43) 에 의해 증폭시킴으로써, 전압 신호로 변환하고, 신호 DatC 로 하여 비교부 (37) 혹은 출력 제어부 (33) 에 출력한다. 판독 대상의 선택 메모리 셀의 가변 저항 소자가 고저항 상태인 경우에는 판독 전류가 작고, 반대로 저저항 상태인 경우에는 판독 전류가 크기 때문에, 신호 DatC 의 크기를 판단함으로써 판독 대상 메모리 셀 내의 가변 저항 소자의 저항 상태를 검출할 수 있다. 요컨대, 신호 DatC 가 작은 경우에는, 대상 메모리 셀이 고저항 상태, 즉 「소거 상태」 이고, 반대로, 신호 DatC 가 큰 경우에는, 대상 메모리 셀이 저저항 상태, 즉 「기록 상태」 인 것이 인식된다.
또한, 판독 동작시에 있어서도, 선택 워드선에 인가하는 전압은, 상기 설명에서는 +2 V 로 했지만, 이 값은 일례로서, 실제로는 선택 트랜지스터가 도통하는 데에 충분한 전압 (소위 트랜지스터의 임계값 전압) 이상이면 된다. 또, 선택 비트선에 인가하는 전압은, 상기 설명에서는 +1 V 로 했지만, 이 값은 일례로서, 실제로는, 소스선에 인가되는 전압과의 전위차에 의해 가변 저항 소자의 저항 상태를 검출할 수 있고, 또한, 동 저항 상태가 변화하지 않는 범위 내 (재기록 동작이 일어나지 않는 범위 내) 의 전압이면 된다.
다음으로, 도 3 에 나타내는 바와 같은 1T1R 형의 메모리 셀을 구비한 불휘발성 반도체 기억 장치의 제조 방법에 대해 간단하게 설명한다. 도 6 은, 이와 같은 메모리 셀의 개략 단면 구조도이다. 또한, 도 6 은, 개념적으로 도시한 것으로, 도면 상의 치수비와 실제의 치수비는 반드시 일치하는 것은 아니다.
먼저, 반도체 기판 (60) 에 선택 트랜지스터 (T) 를 형성한다. 즉, 소자 분리 영역 (61) 을 형성한 반도체 기판 (60) 상에 게이트 절연막 (62), 게이트 전극 (63), 및 드레인 확산 영역 (64) 과 소스 확산 영역 (65) 으로 구성되는 선택 트랜지스터 (T) 를 형성한다. 이 때, 도시하지 않았지만, 메모리 셀 이외의 주변 회로 (전술한 메모리 제어부 (30) 등) 를 함께 형성한다.
다음으로, BPSG (Boron Phosphorous Silicate Glass) 로 이루어지는 층간 절연막 (66) 을 형성한 후, 공지된 포토리소그래피법과 드라이 에칭법에 의해 선택 트랜지스터 (T) 의 드레인 영역 (64) 에 도달하는 컨택트 홀 (67) 을 개구한다. 그리고, 공지된 수법으로 당해 컨택트 홀 (67) 내만을 W 등의 도전성 금속 재료로 채운 컨택트 플러그를 형성한다.
다음으로, 컨택트 홀 (67) 내에 채워진 도전성 컨택트 플러그와 가변 저항 소자 (R) 를 형성하는 하부 전극 (69) 의 전기적 접속을 안정적으로 확보하기 위한 오믹 컨택트층 (68) 으로서, 스퍼터링법에 의해 TiN / Ti 막을 두께 100 ㎚ / 50 ㎚ 의 두께로 형성한다. 그리고 오믹 컨택트층 (68) 상부에, TiN 막을 막두께 200 ㎚ 로 성막함으로써 하부 전극 (69) 을 형성한다.
또한, 이 하부 전극 (TiN 막) (69) 상에 가변 저항체막 (70) 이 되는 산화티탄을 막두께 5 ∼ 50 ㎚ 로 DC 마그네트론 스퍼터링법 또는 CVD 법에 의해 형성한다. 다음으로, 상부 전극 (71) 으로서 두께 100 ㎚ 의 TiN 막을 형성한다. 그 후, 공지된 포토리소그래피법과 드라이 에칭법에 의해 상부 전극 (71), 가변 저항체막 (70), 하부 전극 (69) 을 순차 가공하여, 가변 저항 소자 (R) 를 완성시킨다.
또한, 가변 저항체막 (70) 은 산화티탄막에 한정되는 것은 아니고, 산화코발트, 산화니켈, 산화아연, 산화니오브 등의 천이 금속 원소의 산화물에 대해서도 이용할 수 있다. 또, 천이 금속을 형성 후, 산화 처리를 실시함으로써 가변 저항체막 (70) 을 형성하는 것으로 해도 된다.
또, 상부 전극 및 하부 전극을, 모두 TiN (질화티탄막) 으로 형성했지만, 전극 재료는 질화티탄에 한정되는 것은 아니고, Ta, Pt, Ir, Os, Ru, Rh, Pd, Al, W 등의 다른 금속 재료를 사용할 수도 있다.
이와 같이 하여 가변 저항 소자 (R) 가 생성된 후, 당해 가변 저항 소자 (R) 상에 층간 절연막 (72) 을 막두께 50 ∼ 60 ㎚ 로 성막하고, 가변 저항 소자 (R) (상부 전극 (71)) 에 접속하는 컨택트 홀 (74) 및 선택 트랜지스터 (T) 의 소스 확산 영역 (65) 에 접속하는 컨택트 홀 (73) 을 개구한다.
다음으로, 배선 재료로서 TiN / Al-Si / TiN / Ti 를 성막하고, 공지된 포토리소그래피법과 드라이 에칭법에 의해 가공함으로써 배선 (75) 및 배선 (76) 을 형성한다.
다음으로, 층간 절연막 (77) 을 형성하고, 배선 (75) 혹은 배선 (76) 에 도달하는 컨택트 홀 (도시 생략) 을 형성한 후, TiN / Al-Si / TiN / Ti 를 성막하고, 공지된 포토리소그래피법과 드라이 에칭법에 의해 가공하여 배선 (78) (가공 패턴은 도시 생략) 을 형성한다. 마지막으로, 플라즈마 CVD 법에 의해 표면 보호막 (79) 으로서 SiN 막을 형성하여, 메모리 셀 내에 가변 저항 소자 (R) 와 선택 트랜지스터 (T) 를 갖는 반도체 기억 장치가 완성된다.
또한, 상기 서술한 제조 순서에서는, 주변 회로의 컨택트 홀 형성, 배선 가공 등은 생략하여 기술하고 있지만, 각각 메모리 셀 내의 형성시에 함께 형성하면 된다.
또, 상기에서는, 1T1R 구성의 메모리 셀의 경우에 있어서의 제조 방법 그리고 구동 방법에 대해 설명했지만, 메모리 셀의 구성은 1T1R 형에 한정되는 것은 아니다. 예를 들어, 다른 예로는, 비트선 및 워드선을 상부 전극 혹은 하부 전극에 각각 직접 접속시켜, 양 전극 사이의 교점 (크로스 포인트) 에 있는 가변 저항체의 데이터를 직접 판독하는 메모리 셀 구성, 소위 크로스 포인트형 (1R 형) 의 메모리 셀로 할 수도 있다. 또한, 크로스 포인트 구성에서의 기생 전류 저감을 위해서, 가변 저항 소자 (R) 와 다이오드를 직렬로 접속시킨 1D1R 구성의 메모리 셀로 할 수도 있다. 그 다이오드는, 가변 저항체에 대해 상부 전극 혹은 하부 전극의 외측에 직렬로 접속시키는 구조가 일반적이지만, 다이오드를 가변 저항체와 상부 전극 사이에, 혹은 가변 저항체와 하부 전극 사이에 배치하는 구조로 해도 된다. 다이오드로는, PN 다이오드 특성 또는 쇼트키 다이오드 특성을 나타내는 재료, 또는 ZnO 나 Bi2O3 등의 배리스터 등이 사용된다.
[제 2 실시형태]
본 발명의 제 2 실시형태 (이하, 적절히 「본 실시형태」 라고 한다) 에 대해, 도 7 ∼ 도 8 의 각 도면을 참조하여 설명한다.
본 실시형태는, 제 1 실시형태와 비교하여 기록 및 판독의 처리 순서가 상이할 뿐으로, 그 구성 요소는 제 1 실시형태의 경우 (도 1) 와 동일하다. 이하에서는, 처리 순서에 대해서만 타이밍 차트를 참조하면서 설명하고, 각 구성 요소에 대한 설명은 할애한다. 또한, 본 실시형태에서도, 데이터가 1 비트인 경우를 상정하여 설명하지만, 도 2 를 참조하여 설명한 바와 같이, 메모리 제어부 (30) 에 복수의 메모리 유닛이 접속되어 있는 구성으로 간주함으로써, 다비트의 데이터에 대해서도 동일하게 취급할 수 있다.
본 실시형태는, 기록 및 판독 처리시에 있어서, 프리 페치 기술을 사용하는 점이 제 1 실시형태와 상이하다. 프리 페치란, 최근의 판독/기록 속도의 고속화의 요구로부터, DDR SDRAM (Double-Data-Rate Synchronous Dynamic Random Access Memory) 등의 고속인 메모리로 사용되고 있는 기술로서, 판독시에는, 복수의 메모리 셀로부터 병렬로 판독 데이터를 일단 버퍼에 저장하여, 1 열로 다시 나열하여 메모리 외부로 출력함으로써 고속화를 도모하고, 반대로 기록시에는, 메모리에 입력된 데이터열을 일단 버퍼에 저장하여, 복수의 메모리 셀에 병렬로 기록함으로써 고속화를 도모하는 기술이다.
도 7 은, 본 실시형태에 있어서의 불휘발성 반도체 기억 장치 (메모리) 로의 버스트 기록 처리의 순서를 나타내는 타이밍 차트이다. 도 7 에서는, 도 4 의 경우와 마찬가지로, 클록 동기식의 메모리로 버스트 길이가 4 인 경우가 상정되어 있다. 한편으로, 도 7 에서는, 도 4 의 경우와 달리 2 비트 프리 페치가 적용되어 있다.
메모리 제어부 (30) 에 대해, 행 어드레스 지정 커맨드 「A」 및 행 어드레스 「R1」 이 부여되면 (시각 t2), 커맨드 「A」 를 받은 명령 해석부 (31) 는, 적절한 타이밍 (예를 들어 t3 ∼ t4 사이) 으로, 커맨드 「A」 를 신호 ComC 로 하여 행 어드레스 버퍼 (35) 에 보낸다. 행 어드레스 「R1」 은, 일단 버퍼 (32) 에 저장된 후, 신호 ComC 로서 커맨드 「A」 가 출력되는 것과 동기하여 신호 AddC 로서 행 어드레스 버퍼 (35) 및 판독 제어부 (36) 에 대해 출력된다. 행 어드레스 버퍼 (35) 는, 신호 ComC 로서 입력된 커맨드 「A」 를 트리거로 하여, 신호 AddC 로서 입력된 행 어드레스 「R1」 을 내부의 버퍼에 유지한다.
계속해서, 메모리 제어부 (30) 에, 기록 커맨드 「W」 와 지정 어드레스 「C1」 이 부여되면 (시각 t4), 커맨드 「W」 를 받은 명령 해석부 (31) 는, 적절한 타이밍 (예를 들어 t5 ∼ t6 사이) 으로, 판독 제어부 (36), 판독 기록 전환 제어부 (41) 에 대해 신호 ComC 로서 커맨드 「R」 을 출력한다. 또, 어드레스 「C1」 은, 일단 버퍼 (32) 에 유지된 후, 신호 ComC 로서 커맨드 「R」 이 출력되는 것과 동기하여, 신호 AddC 로서 판독 제어부 (36) 에 출력된다. 판독 제어부 (36) 는, 신호 ComC 로서 입력되는 커맨드 「R」 을 트리거로 하여, 신호 AddC 로서 입력되는 어드레스 「C1」 을 내부의 버퍼에 유지한다. 또, 명령 해석부 (31) 는, 적절한 타이밍으로 신호 R/W 를 「High」 레벨로 한다.
판독 제어부 (36) 는, 커맨드 「R」 을 1 회 받을 때마다, 버스트 길이 상당분 (여기서는 4 회분) 의 연속하는 어드레스값을 신호 AddCr 로 하여 서브 뱅크 교체부 (42) 에 대해 출력한다. 또한, 본 실시형태에서는 2 비트 프리 페치를 채용하고 있기 때문에, 2 비트마다 어드레스를 지정하여 신호 AddCr 을 출력하게 된다. 구체적으로는, 상기 t5 ∼ t6 사이에 받은 커맨드 「R」 에 대해서는, 시각 t6 ∼ t7 사이에 어드레스 「C1」 을 출력하고, 시각 t8 ∼ t9 사이에 어드레스 「C1+2」 를 출력한다. 그리고, 이 어드레스를 출력하고 있는 동안 (시각 t6 ∼ t7 사이, t8 ∼ t9 사이) 및 그 직후의 1 사이클 동안 (시각 t7 ∼ t8 사이, t9 ∼ t10 사이) 에 걸쳐서, 판독 제어부 (36) 는 「High」 레벨의 신호 RE 를 서브 뱅크 교체부 (42) 에 출력한다. 이것은, 본 실시형태에서는, 서브 뱅크로부터의 데이터 판독에 2 사이클을 필요로 하는 것 (2 비트 프리 페치가 적용되는 것) 이 전제로 되어 있기 때문에, 서브 뱅크에 대한 액세스 자체를 2 사이클 주기로 할 필요가 있고, 판독/기록의 전환도 2 사이클 주기로 할 필요가 있다. 그래서, 판독/기록의 전환 제어를 위한 신호 RE 도, 2 사이클 주기로 전환되는 신호로 하고 있다. 덧붙여서, 4 비트 프리 페치를 적용한 경우에는, 4 사이클 주기로 하면 된다.
또, 제 1 실시형태의 경우와 마찬가지로, 메모리 제어부 (30) 는, 상기 「W」 커맨드가 입력됨과 동시에 (시각 t4), 기록 대상 데이터의 입력도 개시된다. 본 실시형태에서 설명하는 실시예에서는, 버스트 길이가 4 이기 때문에, 1 개의 「W」 커맨드에 대해 4 개의 기록 대상 데이터 (D0, D1, D2, D3) 가 입력된다 (시각 t4 ∼ t7). 입력된 기록 대상 데이터는, 시각 t9 이후에, 비교부 (37) 에 있어서 서브 뱅크 (52A 또는 52B) 로부터 판독된 기존 기록 데이터와의 비교가 실시될 때까지, 버퍼 (34) 에 일시적으로 축적된다.
도 7 의 타이밍 차트에서는, 도 4 의 경우와 마찬가지로, 서브 뱅크로의 액세스 개시를 시각 t7 로 하고 있기 때문에, 이 시점에서, 행 어드레스 버퍼 (35)가 행 디코더 (53) 에 대해 행 어드레스 「R1」 을 나타내는 신호 Row 를 공급하고, 당해 행 어드레스선을 액티브화하고 있다. 물론, 이 시각 t7 보다 빠른 타이밍으로 당해 행 어드레스선을 액티브로 해도 된다.
시각 t7 이후, 판독 제어부 (36) 로부터 부여된 신호 RE (판독 트리거 신호에 상당), 및 신호 AddCr (판독 지정 어드레스 신호에 상당) 에 기초하여, 서브 뱅크 교체부 (42) 는, 열 디코더 (51A, 51B) 를 개재하여, 서브 뱅크 (52A, 52B) 로의 판독 처리를 개시한다. 서브 뱅크 교체부 (42) 는, 판독 기록 전환 제어부 (41) 로부터 입력되는 신호 SBSel 이 「Low」 인 경우에는, 열 디코더 (51A) 에 대해 판독 지시를 실시하고, 신호 SBSel 이 「High」 인 경우에는, 열 디코더 (51B) 에 대해 판독 지시를 실시한다. 즉, 서브 뱅크 교체부 (42) 는, 신호 SBSel 에 의해 판독 대상이 되는 서브 뱅크 (52A 와 52B) 사이에서 교체한다. 이 때, 상기와 같이, 본 실시형태의 경우에는, 서브 뱅크에 대한 액세스를 2 사이클 주기로 할 필요가 있기 때문에, 신호 SBSel 에 의한 판독 대상 서브 뱅크의 전환 타이밍도 2 사이클 주기가 된다.
그리고, 본 실시형태에서는, 연속하는 2 어드레스가 동일한 서브 뱅크 내에 할당되고, 2 어드레스마다 상이한 서브 뱅크에 할당되는 구성이다. 즉, 어드레스 C1 및 C1+1 은 동일한 서브 뱅크 내에 존재하는 한편, 어드레스 C1+2 및 C1+3 은, 다른 서브 뱅크 내에 존재하게 된다. 여기서는, 어드레스 C1 및 C1+1 이 서브 뱅크 (52A) 에 존재하고, 어드레스 C1+2 및 C1+3 이 서브 뱅크 (52B) 내에 존재하는 것으로 하여 설명한다.
서브 뱅크 교체부 (42) 는, 신호 RE 가 「High」 인 동안, 판독 지시를 열 디코더 (51A 또는 51B) 에 부여한다. 먼저, 시각 t7 ∼ t8 에 있어서, 신호 SBSel 이 「Low」 인 것으로부터, 열 디코더 (51A) 에 대해, 신호 AddCr 에 의해 지정된 어드레스 C1 및, 이 어드레스 C1 에 연속하는 어드레스 (즉 어드레스 C1+1) 에 대응한 메모리 셀의 기존 기록 데이터의 판독 지시를 부여한다. 이 때, 행 어드레스는, 행 디코더 (53) 에 의해 지정된 행 어드레스 (신호 Row 에 의해 지정된 행 어드레스 R1) 가 액티브로 되어 있다. 그리고, 시각 t7 ∼ t9 까지의 사이에, 열 디코더 (51A) 는 서브 뱅크 (52A) 로부터 어드레스 C1 및 C1+1 에 대응한 메모리 셀의 기존 기록 데이터를 신호 DRA 로 하여 서브 뱅크 교체부 (42) 에 송출한다 (데이터 Q0, Q1).
제 1 실시형태의 경우, 시각 t7 ∼ t8 사이에, 판독 커맨드 「R」 및 판독 지정 어드레스 「C1」 이 부여되면, 당해 어드레스 C1 에 대응한 메모리 셀의 기존 기록 데이터가 판독되었다. 이에 반해, 본 실시형태의 경우, 완전히 기존 기록 데이터의 판독이 완료되기까지는 시각 t7 ∼ t9 까지의 시간을 필요로 하는 한편, 판독 대상 어드레스는 「C1」 및 「C1+1」 의 2 개의 어드레스가 된다. 요컨대, 열 디코더 (51A) 로의 판독 커맨드 입력에서, 판독 데이터 DRA 의 출력까지 2 사이클의 시간을 필요로 하는 반면, 2 어드레스분의 데이터가 판독되는 구성이기 때문에, 결과적으로, 제 1 실시형태와 마찬가지로, 1 사이클당 1 어드레스분의 데이터가 얻어지게 된다.
다음으로, 시각 t9 ∼ t10 에 있어서, 신호 SBSel 이 「High」 인 것으로부터, 서브 뱅크 교체부 (42) 는, 열 디코더 (51B) 에 대해, 신호 AddCr 에 의해 지정된 어드레스 C1+2, 및 이 어드레스 C1+2 에 연속하는 어드레스 (즉 어드레스 C1+3) 에 대응한 메모리 셀의 기존 기록 데이터의 판독 지시를 부여한다. 이 때, 행 디코더 (53) 에 의해 지정된 행 어드레스가 액티브로 되어 있다 (신호 Row 에 의해 지정된 행 어드레스 R1). 그리고, 시각 t9 ∼ t11 까지의 사이에, 열 디코더 (51B) 는 서브 뱅크 (52B) 로부터 어드레스 C1+2 및 C1+3 에 대응한 메모리 셀의 기존 기록 데이터를 신호 DRB 로 하여 서브 뱅크 교체부 (42) 에 송출한다 (데이터 Q2, Q3).
그리고, 시각 t9 ∼ t10 사이에, 서브 뱅크 교체부 (42) 에 의해 머지된 판독 데이터 (Q0 ∼ Q1) 가, 판독 회로 (43) 에 있어서 증폭된 후, 신호 DatC 로서 비교부 (37) 에 출력된다. 마찬가지로, 시각 t11 ∼ t12 사이에, 서브 뱅크 교체부 (42) 에 의해 머지된 판독 데이터 (Q2∼Q3) 가, 판독 회로 (43) 에 있어서 증폭된 후, 신호 DatC 로서 비교부 (37) 에 출력된다. 신호 DatC 로부터 데이터가 출력되고 있는 것은, 신호 DE 가 액티브 (High) 로 됨으로써 나타난다.
비교부 (37) 는, 명령 해석부 (31) 로부터 부여되는 신호 R/W 가 「High」 인 경우에, 신호 DE 가 액티브이면 비교 연산을 실시한다. 이 때, 신호 DE 를 트리거로 하여, 상기 신호 DatC 와, 버퍼 (34) 로부터 출력되는 기록 대상 데이터 DatO 의 비교를 실시한다. 구체적으로는, 비교부 (37) 는, 시각 t9 ∼ t10 사이에는 기록 대상 데이터인 D0 ∼ D1 과, 서브 뱅크 (52A) 로부터 판독한 Q0 ∼ Q1 을 비교하여, 그 결과를 데이터 G0 ∼ G1 로 하여 기록 제어부 (39) 에 출력한다 (신호 Comp). 마찬가지로, 비교부 (37) 는, 시각 t11 ∼ t12 사이에는 기록 대상 데이터인 D2 ∼ D3 과, 서브 뱅크 (52B) 로부터 판독한 Q2 ∼ Q3 을 비교하여, 그 결과를 데이터 G2 ∼ G3 으로 하여 기록 제어부 (39) 에 출력한다 (신호 Comp).
기록 제어부 (39) 는, 비교부 (37) 로부터 입력된 신호 Comp 의 데이터에 기초하여 서브 뱅크 교체부 (42) 에 대해 데이터의 기록 제어를 실시한다. 구체적으로는, 버퍼 (38) 에 유지되어 있던 어드레스에, 버퍼 (34) 에 유지되어 있던 기록 대상 데이터 중, 비교부 (37) 로부터 지정된 비트를 기록하는 지시를 낸다. 이 때, 기록 제어부 (39) 는, 서브 뱅크 교체부 (42) 에 대해, 신호 AddOw 에 의해 어드레스를 지정하고, 신호 WE 에 의해 기록 비트를 지정하며, 신호 DatOw 에 의해 기록 대상 데이터를 지정한다 (시각 t10 ∼ t11 사이, t12 ∼ t13 사이). 또한, 기록 비트를 나타내는 신호 WE 는, 비교부 (37) 로부터 부여되는 신호 Comp 에 기초하여 생성되고, 기존 기록 데이터와 기록 대상 데이터의 비교 결과가 상이한 비트만이 기록 비트로서 지정된다.
서브 뱅크 교체부 (42) 는, 기록 제어부 (39) 로부터 상기 데이터 기록 지시를 받으면, 열 디코더 (51A, 51B) 에 대해 기록 지시를 실시한다 (시각 t13 ∼ t17 사이). 이 때, 하나의 열 디코더에 대해 판독 처리가 실시되고 있는 동안에는, 그것과는 다른 열 디코더에 대해 기록 지시를 부여한다. 보다 구체적으로는, 예를 들어, 시각 t13 ∼ t15 사이에는 열 디코더 (51A) 에 대해 기록 지시를 부여하고, 시각 t15 ∼ t17 사이에는 열 디코더 (51B) 에 대해 기록 지시를 부여한다. 이로써, 열 디코더 (51B) 에 대해 판독 지시가 부여되고 있을 때 시각 t13 ∼ t15 사이에, 열 디코더 (51A) 에 대해 기록 지시가 부여되는 구성이 된다. 또, 열 디코더 (51A) 에 대해 판독 지시가 부여되고 있을 때 시각 t15 ∼ t17 사이에, 열 디코더 (51B) 에 대해 기록 지시가 부여되는 구성이 된다.
또한, 열 디코더 (51A) 에 출력되는 신호 WEA 와, 열 디코더 (51B) 에 출력되는 신호 WEB 는, 전술한 신호 WE 에 의한 기록 비트의 지정이 반영되어 있기 때문에, 상기 비교부 (37) 에 의한 비교 결과가 상이한 비트만이 지정된 신호가 된다. 즉, 각 서브 뱅크 (52A, 52B) 의 쌍방 모두, 기록 대상 데이터가 기존 기록 데이터와 상이한 값을 취한 비트만이 기록되게 된다.
또, 도 7 에서는, 신호 DWA, DWB 는 일부 파선으로 나타나 있다. 이것은 본 실시형태가 각 메모리 셀로의 기록에 2 사이클을 필요로 하는 방식인 점에서, 1 사이클 전부터 이어서 기록 처리가 실시되고, 이 2 사이클째에 기록 처리가 완료되는 것을 나타내는 것이다.
본 실시형태에 있어서는, 서브 뱅크에 대한 액세스가, 판독 사이클 2 사이클과, 기록 사이클 2 사이클의 반복으로 실시되기 때문에, 기록 제어부 (39) 가 기록 지시를 출력한 후, 서브 뱅크 교체부 (42) 가 열 디코더 (51A, 51B) 에 기록 지시를 낼 때까지 2 사이클의 타이밍 조정 시간이 필요해진다 (도 7 에 있어서의 신호 RWA 와 RWB 의 타이밍을 참조). 이 타이밍 조정이나 이것에 필요로 하는 버퍼링도, 서브 뱅크 교체부 (42) 내에서 실시되는 것으로 해도 된다.
이와 같이 하여, 시각 t4 에 입력된 「W」 커맨드에 대응한 기록 대상 데이터 (D0 ∼ D3) 는, 시각 t13 ∼ t17 사이에 있어서 각 서브 뱅크 내에 기록이 완료된다 (혹은 동일한 기존 기록 데이터가 그대로 이용된다). 시각 t8 에 입력된 「W」 커맨드에 대응한 기록 대상 데이터 (D4 ∼ D7) 에 대해서도, 상기와 동일한 처리를 실시한다. 이 때, 도 7 을 참조하면, 데이터 D2 및 D3 의 기록이 완료된 시각 t15 ∼ t17 사이의 타이밍에 계속해서, 시각 t17 ∼ t19 사이에 데이터 D4 및 D5 의 서브 뱅크 (51A) 로의 기록이 실시된다. 즉, 기록 커맨드 「W」 가 (버스트 길이의 간격으로) 연속하여 메모리 제어부 (30) 에 입력된 경우라도, 기록에 타임 래그가 발생하지 않고, 이로써 기록 속도가 늦어지지 않는다. 그리고, 이와 같이 기록 커맨드 「W」 가 (버스트 길이의 간격으로) 연속하여 입력된 경우라도, 기록에 필요로 하는 시간을 확보할 수 있어, 기록 에러가 되지도 않는다.
다음으로, 도 8 의 타이밍 차트를 사용하여, 구체적인 판독 동작의 순서를 설명한다. 또한, 도 8 의 경우도 도 7 과 마찬가지로, 버스트 길이가 4 인 경우를 예시하고 있다. 판독 동작은, 도 7 에 나타낸 기록 동작 순서에 있어서, 비교부 (37) 에 의한 비교 처리, 기록 제어부 (39) 및 서브 뱅크 교체부 (42) 에 의한 기록 지시, 양열 디코더 (51A, 51B) 에 의한 기록 처리가 실시되지 않는 것으로 생각하면 된다.
메모리 제어부 (30) 에 대해, 행 어드레스 지정 커맨드 「A」 및 행 어드레스 「R1」 이 부여되면 (시각 t2), 기록 동작의 경우와 마찬가지로, 커맨드 「A」 를 받은 명령 해석부 (31) 는, 적절한 타이밍 (예를 들어 t3 ∼ t4 사이) 으로, 커맨드 「A」 를 신호 ComC 로 하여 행 어드레스 버퍼 (35) 에 보낸다. 행 어드레스 「R1」 은, 일단 버퍼 (32) 에 저장된 후, 신호 ComC 로서 커맨드 「A」 가 출력되는 것과 동기하여 신호 AddC 로서 행 어드레스 버퍼 (35) 및 판독 제어부 (36) 에 대해 출력된다. 행 어드레스 버퍼 (35) 는, 신호 ComC 로서 입력된 커맨드 「A」 를 트리거로 하여, 신호 AddC 로서 입력된 행 어드레스 「R1」 을 내부의 버퍼에 유지한다.
계속해서, 메모리 제어부 (30) 에, 판독 커맨드 「R」 과 지정 어드레스 「C1」 이 부여되면 (시각 t4), 커맨드 「R」 을 받은 명령 해석부 (31) 는, 적절한 타이밍 (예를 들어 t5 ∼ t6 사이) 으로, 판독 제어부 (36), 판독 기록 전환 제어부 (41) 에 대해 신호 ComC 로서 커맨드 「R」 을 출력한다. 또, 어드레스 「C1」 은, 일단 버퍼 (32) 에 유지된 후, 신호 ComC 로서 커맨드 「R」 이 출력되는 것과 동기하여, 신호 AddC 로서 판독 제어부 (36) 에 출력된다. 판독 제어부 (36) 는, 신호 ComC 로서 입력되는 커맨드 「R」 을 트리거로 하여, 신호 AddC 로서 입력되는 어드레스 「C1」 을 내부의 버퍼에 유지한다. 단, 명령 해석부 (31) 는, 입력된 커맨드가 판독 커맨드 「R」 이기 때문에, 기록시와 달리 「Low」 레벨의 신호 R/W 를 출력한다. 이 신호 R/W 는, 예를 들어 명령 해석부 (31) 에 대해 기록 커맨드 「W」 가 입력될 때까지의 사이, 「Low」 가 유지되는 것으로 해도 상관없다.
판독 제어부 (36) 는, 기록시와 마찬가지로, 커맨드 「R」 을 1 회 받을 때마다, 버스트 길이 상당분의 연속하는 어드레스값을 신호 AddCr 로 하여 서브 뱅크 교체부 (42) 에 대해 출력한다. 단, 본 실시형태의 경우, 2 비트 프리 페치를 채용하고 있기 때문에, 2 비트마다 어드레스를 지정하여 신호 AddCr 을 출력한다. 구체적으로는, 상기 t5 ∼ t6 사이에 받은 「R」 커맨드에 대해, 시각 t6 ∼ t7 사이에 어드레스 「C1」 을 출력하고, 시각 t8 ∼ t9 사이에 어드레스 「C1+2」 를 출력한다. 그리고, 이 어드레스를 출력하고 있는 동안 (시각 t6 ∼ t7 사이, t8 ∼ t9 사이) 및 그 직후의 1 사이클 동안 (시각 t7 ∼ t8 사이, t9 ∼t10 사이) 에 걸쳐서, 판독 제어부 (36) 는 「High」 레벨의 신호 RE 를 서브 뱅크 교체부 (42) 에 출력한다.
그리고 시각 t7 이후, 기록 처리시의 경우와 마찬가지로, 판독 제어부 (36) 로부터 부여된 신호 RE (판독 트리거 신호에 상당), 및 신호 AddCr (판독 지정 어드레스 신호에 상당) 에 기초하여, 서브 뱅크 교체부 (42) 및 열 디코더 (51A, 51B) 를 개재하여, 서브 뱅크 (52A, 52B) 로의 판독 처리가 개시된다. 서브 뱅크 교체부 (42) 는, 판독 기록 전환 제어부 (41) 로부터 입력되는 신호 SBSel 의 값 (High/Low) 에 따라, 판독 대상 서브 뱅크를 서브 뱅크 (52A, 52B) 사이에서 할당하고, 이로써, 각 서브 뱅크 (52A, 52B) 로부터 교대로 판독 처리가 실시된다. 그리고, 판독된 데이터 (Q0 ∼ Q1) 는, 서브 뱅크 교체부 (42) 를 개재하여 판독 회로 (43) 에 부여되고, 여기서 증폭 처리가 실시된 후, 신호 DatC 로서 출력 제어부 (33) 에 보내진다 (시각 t9 ∼ t12). 신호 DatC 로부터 데이터가 출력되고 있는 것은, 신호 DE 가 액티브 (High) 로 됨으로써 나타난다. 출력 제어부 (33) 는, 입력된 신호 R/W가 「Low」 레벨인 것을 인식하고, 또한 신호 DE 가 액티브인 경우에, 입력된 신호 DatC 를 메모리 버스 (21) 로 송출한다.
또한, 본 실시형태에서는, 2 개의 데이터 (예를 들어 Q0 과 Q1) 가 신호 DatC 로서 판독 회로 (43) 로부터 출력 제어부 (33) 에 보내지는 구성이다. 이 때문에, 2 데이터를 2 사이클의 시간을 사용하여 신호 DatC 로 하여 출력하는 것으로 해도 되고, 1 사이클마다 1 데이터씩 순차 판독하는 것으로 해도 된다 (도 8 은 후자). 후자의 경우, 예를 들어 시각 t9 ∼ t10 사이에 데이터 Q0 을 신호 DatC 로 하여 출력하고, 시각 t10 ∼ t11 사이에 데이터 Q0 을 신호 DatC 로 하여 출력하는 구성으로 할 수 있다. 이 경우, 출력 제어부 (33) 는, 신호 DatC 가 나타내는 데이터를 1 사이클 시간 버퍼링할 수 있는 구성이 된다.
이와 같이 하여, 어드레스 C1 ∼ C1+3 에 대응한 메모리 셀의 데이터 (Q1 ∼ Q3) 가, 시각 t10 ∼ t14 에 걸쳐 판독된다.
또한, 시각 t4 에 이어서, 시각 t8 에 있어서 판독 커맨드 「R」, 및 판독용 행 어드레스 「C2」 가 입력된 경우에 있어서도, 시각 t11 ∼ t15 에 걸쳐 각 서브 뱅크에 대해 어드레스 C2 ∼ C2+3 에 관련된 메모리 셀의 판독 지시가 실시되고, 이로써 시각 t14 ∼ t18 에 걸쳐 당해 어드레스 위치의 데이터가 메모리 제어부의 데이터 버스로부터 출력된다. 요컨대, 판독 커맨드 「R」 이 (버스트 길이의 간격으로) 연속하여 메모리 제어부 (30) 에 입력된 경우라도, 판독에 타임 래그가 발생하지 않고, 이로써 판독 속도가 늦어지지 않는다. 마찬가지로, 판독 커맨드 「R」 의 뒤에 기록 커맨드 「W」 가 입력된 경우나, 그 반대의 경우에 있어서도, 타임 래그를 발생시키지 않는다.
이상, 본 실시형태에서는, 2 비트 프리 페치를 적용한 경우의 메모리의 동작 내용에 대해 설명했지만, 그 이상의 다비트 프리 페치를 적용한 메모리에 있어서도 동일한 방법으로 기록/판독을 실행할 수 있다. 그리고, 본 실시형태도, 제 1 실시형태의 경우와 마찬가지로, 기록 커맨드 「W」 가 부여된 경우, 실제로 메모리 셀로의 기록 처리를 실시하기 전에 기록 대상의 메모리 셀에서 기존 기록 데이터의 판독을 실시하고 기록 대상 데이터와의 비교를 실시하여, 비교 결과가 상이한 경우에만 당해 메모리 셀에 대해 기록 대상 데이터의 기록 처리를 실시하는 구성이다. 따라서, 종래의 기록 처리와 비교하여, 동일 메모리 셀에 대해 실제로 기록용 전압이 인가되어 기록 처리를 실시하는 횟수가 감소한다. 이로써, 각 메모리 셀을 연명시킬 수 있다.
[제 3 실시형태]
본 발명의 제 3 실시형태 (이하, 적절히 「본 실시형태」 라고 한다) 에 대해, 도 9 ∼ 도 14 의 각 도면을 참조하여 설명한다.
본 실시형태는, 제 1 및 제 2 실시형태와 비교하여, 서브 뱅크 (메모리 셀 어레이) 를 하나 갖는 구성이다. 즉, 제 1 및 제 2 실시형태와 같이, 복수의 서브 뱅크 사이에서 기록과 판독을 병렬하여 실행하는 처리를 실시할 수 없는 구성이다.
즉, 본 실시형태는, 기존 기록 데이터를 판독하여 기록 대상 데이터와의 비교 결과가 상이한 경우에, 대상이 되는 메모리 셀에 대해 기록 대상 데이터의 기록을 실시하고 있는 동안, 다른 메모리 셀의 기존 기록 데이터를 판독하여, 기록 대상 데이터와 비교를 실시하는 형태를 채용할 수 없다. 이 때문에, 연속하여 기록 대상 데이터가 입력되어도, 하나의 기록 처리가 완료될 때까지 다음의 기록 대상 데이터와 기존 기록 데이터의 비교 처리를 실시할 수 없다. 즉, 본 실시형태의 경우에는, 하나의 어드레스마다 데이터 판독 또는 기록의 처리를 실행할 필요가 있는 점에서, 메모리 액세스를 버스트로 하는 의미는 없다. 따라서, 이하에서는 메모리 액세스의 설정이 버스트가 아닌 것으로 하여 설명한다.
도 9 는, 본 실시형태에 있어서의 불휘발성 반도체 기억 장치의 개념적 구조를 나타내는 블록도로서, 도 1 에 나타내는 구성도와 비교하여, 서브 뱅크 (52B), 열 디코더 (51B) 를 구비하지 않는다. 즉, 서브 뱅크 (메모리 셀 어레이) (52A) 를 단독으로 구비하는 구성이기 때문에, 판독과 기록을 전환하면서 실행한다는 제어가 불필요하다. 이 때문에, 도 1 에 있어서의 판독 기록 전환 제어부 (41) 를 구비하지 않는다. 또, 판독이나 기록의 타이밍을 제어할 필요가 없기 때문에, 판독 제어부 (36) 나 기록 제어부 (39) 도 불필요하다. 또한, 복수의 서브 뱅크를 교체하는 동작을 수반하지 않기 때문에, 당연히 서브 뱅크 교체부 (42) 를 구비하지 않는다.
또, 버스트 판독이나 버스트 기록을 실시하지 않는 구성이기 때문에, 입력되는 하나의 어드레스에 기초하여, 버스트 길이 상당분 연속하는 어드레스를 연산하여 전개할 필요가 없다. 이 때문에, 판독 제어부 (36) 및 버퍼 (38) 가 불필요하다.
이 때문에, 도 9 에 나타내는 바와 같이, 본 실시형태에 있어서의 불휘발성 반도체 기억 장치의 메모리 제어부 (30) 는, 명령 해석부 (31), 버퍼 (32), 출력 제어부 (33), 버퍼 (34), 행 어드레스 버퍼 (35), 비교부 (37), 판독/기록 제어부 (40), 및 판독 회로 (43) 을 구비하는 구성이다. 또한, 판독/기록 제어부 (40) 는, 내부에 어드레스 버퍼 (44) 를 구비한다.
또한, 본 실시형태에 있어서도, 제 1 실시형태와 마찬가지로, 도 9 에 있어서의 디코더부 (행 디코더 (53), 열 디코더 (51A)) 및 서브 뱅크 (52A) 는, 설명의 편의상, 1 어드레스에 대해 1 비트의 데이터를 갖는 형태를 상정한 도시로 되어 있다. 다비트의 데이터를 취급하는 경우에는, 이들은 도 10 에 나타나는 바와 같은 구성을 취한다. 다시 말해, 도 10 에 나타내는 복수의 각 메모리 유닛이나 각 디코더부를, 정리하여 하나로 도시한 것이 도 9 의 구성이다. 또한, 도 10 은, 제 1 실시형태에서 설명한 도 2 에서, 서브 뱅크 B 및 열 디코더 B 를 삭제한 구성이기 때문에, 설명의 중복을 피하기 위해, 각 구성 요소의 접속 관계 등의 설명을 생략한다.
본 실시형태에 있어서의 기록 동작에 대해서 도 11 의 타이밍 차트를 참조하여 설명한다.
CPU (10) 로부터 메모리 액세스 제어부 (20) 에, CPU 버스 커맨드 (기록) 「CW」, CPU 버스 어드레스 「CA1」, 및 CPU 버스 데이터 (기록 대상 데이터) 「CD1」 이 보내지면, 메모리 액세스 제어부 (20) 는 이것을 메모리 제어부 (30) 에 적절한 형식으로 변환하고, 메모리 버스 (21) 를 통해, 메모리 제어부 (30) 에 송출한다. 구체적으로는, CPU 버스 어드레스 「CA1」 을 상위 부분 「AA1 (행 어드레스)」 과 하위 부분 「WA1 (열 어드레스)」 로 분할하고, 메모리 버스 (21) 의 커맨드에 「AC (행 어드레스 지정 커맨드)」 를 출력했을 때에 행 어드레스 「AA1」 을, 메모리 버스 (21) 의 커맨드에 「WC (기록 커맨드)」 를 출력했을 때에 열 어드레스 「WA1」 을, 메모리 버스 (21) 의 어드레스에 출력한다. 결과적으로, 메모리 버스 (21) 의 커맨드에 출력된 「AC」 와 「WC」 는 명령 해석부 (31) 에 부여되고, 메모리 버스 (21) 의 어드레스에 출력된 「AA1」 과 「WA1」 은 버퍼 (32) 에 부여된다. 또, 메모리 버스 (21) 의 커맨드에 「WC」 를 출력했을 때에는, 메모리 버스 데이터 (21) 의 데이터에 「WD1」 이 출력되어, 버퍼 (34) 에 공급된다. 또한, 상기 「WD1」 은 상기 「CD1」 과 동일 값이다.
명령 해석부 (31) 는, 입력된 커맨드가 행 어드레스 지정 커맨드 「AC」 인 것을 인식하면, 이것을 신호 ComC 로 하여 행 어드레스 버퍼 (35) 에 보낸다. 그것과 동기하여, 버퍼 (32) 로부터 신호 AddC 로서 행 어드레스 「AA1」 이 행 어드레스 버퍼 (35) 에 보내지기 때문에, 행 어드레스 버퍼 (35) 는 행 어드레스 지정 커맨드 「AC」 를 트리거로 하여, 행 어드레스 「AA1」 을 신호 Row 로 하여 행 디코더 (53) 에 보낸다. 행 디코더 (53) 는 서브 뱅크 (52A) 의 이 신호 Row 로 지정된 행 어드레스를 액티브로 한다.
또, 명령 해석부 (31) 는, 입력된 커맨드가 기록 커맨드 「WC」 인 것을 인식하면, 이것을 신호 ComC 로 하여 판독/기록 제어부 (40) 에 보낸다. 이것에 동기하여, 버퍼 (32) 로부터 신호 AddC 로서 열 어드레스 「WA1」 이 판독/기록 제어부 (40) 에 보내지기 때문에, 판독/기록 제어부 (40) 는, 상기 ComC 로서 보내져 온 「WC」 를 트리거로 하여, 내부의 어드레스 버퍼 (44) 에 이 「WA1」 을 기억한다. 명령 해석부 (31) 는, 기록 커맨드 「WC」 를 수취하면, 제 1 실시형태와 마찬가지로, 신호 R/W 를 액티브 (High 상태) 로 하여 출력 제어부 (33) 및 비교부 (37) 에 부여한다.
판독/기록 제어부 (40) 는, 상기와 같이 기록 커맨드 「WC」 에 의해, 기록 처리의 지시를 받으면, 어드레스 버퍼 (44) 에 기록 어드레스 「WA1」 이 기록된 후에, 메모리 버스 (25) 를 통해, 열 디코더 (51A) 에 대해 판독 커맨드 「RC」 와, 판독 어드레스를 출력한다. 또한, 이 때의 판독 어드레스값에는, 버퍼 (32) 로부터 신호 AddC 로서 부여되고, 어드레스 버퍼 (44) 에 기억되어 있던 기록 어드레스 「WA1」 을 사용한다.
열 디코더 (51A) 는, 상기 판독 커맨드 「RC」 및 판독 어드레스 「WA1」 을 수취하면, 동 어드레스에 대응한 메모리 셀 (선택 메모리 셀) 의 양단에 판독용 전압이 인가되도록, 비트선에 소정 전압을 인가한다. 또한, 워드선, 소스선은, 행 어드레스 버퍼 (35) 로부터 신호 Row 로서 행 디코더에 행 어드레스 「AA1」 이 부여된 시점에서 선택 메모리 셀에 소정 전압이 인가 (액티브화) 되어 있다. 그리고, 상기 선택 메모리 셀에 접속되는 전압선을 흐르는 전류값을, 판독/기록 제어부 (40) 를 개재하여 판독 회로 (43) 에 의해 판독한다. 이로써, 상기 선택 메모리 셀에 저장되어 있는 기존 기록 데이터 RD1 이 판독된다.
판독 회로 (43) 는, 기존 기록 데이터 RD1 을 신호 DatC 로 하여 비교부 (37) 에 출력한다. 또, 상기 데이터 RD1 의 출력 타이밍을 나타내는 신호 DE 를 비교부 (37) 에 출력한다. 비교부 (37) 는, 신호 R/W 가 액티브 (High 상태) 이기 때문에, 상기 신호 DE 에 의해 판독 데이터 RD1 이 출력되어 있는 것을 검지하면, 그 판독 데이터 RD1 과 신호 DatO 로서 버퍼 (34) 로부터 부여되는 기록 대상 데이터 WD1 의 비교를 실시한다. 그리고, 비교한 결과 Comp (도 11 상에서는 Cmp1 에 상당) 가 불일치인 경우에는, 판독/기록 제어부 (40) 에 기록 처리의 실행을 지시하고, 판독/기록 제어부 (40) 에 의해 동 메모리 셀에 대해 기록 대상 데이터 WD1 의 기록 지시가 부여된다. 한편, 상기 비교 결과 Cmp1 가 일치인 경우에는 아무것도 실시하지 않는다
구체적으로는, 판독/기록 제어부 (40) 는, 상기 기록 처리의 실행을 지시받으면, 메모리 버스 (25) 를 통해, 열 디코더 (51A) 에 대해, 기록 커맨드 WC1, 기록 어드레스, 및 기록 대상 데이터를 출력한다. 기록 어드레스에는, 버퍼 (32) 로부터 신호 AddC 로서 부여되어, 어드레스 버퍼 (44) 에 기억되어 있던 어드레스 WA1 을 사용하고, 기록 대상 데이터에는, 버퍼 (34) 로부터 신호 DatO 로서 부여되는 데이터 WD1 을 사용한다. 또한, 버퍼 (34) 는 FIFO 버퍼로서, 입력된 기록 대상 데이터를 일정 기간 지연시켜 출력하도록 되어 있다. 본 실시형태에 있어서는, 도 11 에 나타낸 바와 같이, 버퍼 (34) 에 데이터가 입력되고 나서 비교부 (37) 에서 비교가 실시될 때까지의 시간 간격은 일정하기 때문에, FIFO 를 사용하여 지연시키는 것만으로 충분하다. 열 디코더 (51A) 는, 상기 기록 커맨드, 기록 어드레스, 및 기록 대상 데이터를 수취하면, 동 어드레스에 대응한 메모리 셀 (선택 메모리 셀) 의 양단에, 상기 기록 대상 데이터를 기록하기 위한 기록용 전압이 인가되도록 비트선에 소정 전압을 인가한다. 또한 워드선, 소스선은, 상기 판독 처리시와 마찬가지로, 행 어드레스 버퍼 (35) 로부터 신호 Row 로서 행 디코더에 「AA1」 이 부여된 시점에서 선택 메모리 셀에 소정 전압이 인가 (액티브화) 되어 있다. 이상과 같이 하여, 상기 선택 메모리 셀에 대해 기록 처리가 실행된다.
CPU 버스 커맨드를 발행하고 나서 일정 시간 경과하면, 본 실시형태의 불휘발성 반도체 기억 장치는, 새로운 커맨드 입력을 접수하게 된다. 상기 일정 시간이란, 직전의 커맨드 처리에 영향을 미치지 않는 최단 시간이다. 이것을 도 11 을 예로 설명한다. CPU (10) 로부터 나온 어드레스 「CA1」 에 데이터 「CD1」 을 기록하는 커맨드 CW 가 정상적으로 완료되기 위해서는, 메모리 버스 (25) 의 커맨드에 「WC」 가 입력될 때까지, 행 디코더에 신호 Row 로서 입력되는 값이 계속 「AA1」 일 필요가 있다. 따라서, 다음의 커맨드는 그것을 만족하는 시간, 요컨대, 도 11 중의 「최소 기록 시간」 만큼 간격을 두고 입력되게 된다.
또한, 동 도면에 있어서의 2 번째의 기록 처리는, 기록 대상 데이터 WD2 (= CD2) 와 기록 어드레스 WA2 의 기존 기록 데이터가 일치하고 있는 경우 (비교부 (37) 에 있어서의 비교 결과 Cmp2 가 일치를 나타내고 있는 경우) 를 나타내고 있다. 이 경우, 비교 처리 완료 후, 실제로는 판독/기록 제어부 (40) 로부터 메모리 셀에 대해 기록 처리의 지시가 부여되지 않기 때문에, 도 11 상에서는, 커맨드 WC, 어드레스 WA2, 데이터 WD2 를 파선으로 나타내고, 실제로는 기록 처리가 실시되지 않는 것을 나타내고 있다.
또한, 기록 처리시에는, 명령 해석부 (31) 로부터 출력 제어부 (33) 에 「High」 상태를 나타내는 신호 R/W 가 부여되기 때문에, 비교 처리를 위해서 판독 회로 (43) 에 의해 판독된 기존 기록 데이터는 데이터 버스 (21) 에 출력되지 않는다.
본 실시형태에서는, 메모리 셀로의 기록 처리시, 1) 메모리 셀로부터의 기존 기록 데이터의 판독 처리, 2) 기존 기록 데이터와 기록 대상 데이터의 비교 처리, 3) 메모리로의 기록 대상 데이터의 기록 처리라는 각 순서를 순차 처리하기 때문에, 메모리 기록에 필요로 하는 시간이 종래의 메모리보다, 판독 그리고 비교 처리를 실시하는 분만큼 길어진다. 따라서, CPU (10) 는, 상기 메모리 셀로의 기록 처리에 필요로 하는 최대 시간 (즉 비교 결과가 상이한 경우에 있어서의 기록 처리가 완료될 때까지의 시간) 보다 긴 시간을 갖고 나서, 각 커맨드를 출력할 필요가 있다. 이것은, 예를 들어, CPU (10) 자신이 기록 커맨드의 출력 간격을 길게 함으로써 대처할 수 있다.
다음으로, 본 실시형태에 있어서의 판독 동작에 대해 도 12 의 타이밍 차트를 참조하여 설명한다.
CPU (10) 로부터 메모리 액세스 제어부 (20) 에, CPU 버스 커맨드 (판독) CR, 및 CPU 버스 어드레스 CA1 이 보내지면, 메모리 액세스 제어부 (20) 는, 이것을 메모리 제어부 (30) 에 적절한 형식으로 변환하고, 메모리 버스 (21) 를 통해, 메모리 제어부 (30) 에 송출한다. 구체적으로는, CPU 버스 어드레스 「CA1」 을 상위 부분 「AA1 (행 어드레스)」 과 하위 부분 「RA1 (열 어드레스)」 로 분할하여, 메모리 버스 (21) 의 커맨드에 「AC (행 어드레스 지정 커맨드)」 를 출력했을 때에 「AA1」 을, 메모리 버스 (21) 의 커맨드에 「RC (판독 커맨드)」 를 출력했을 때에 「RA1」 을, 메모리 버스 (21) 의 어드레스에 출력한다. 결과적으로, 메모리 버스 (21) 의 커맨드에 출력된 「AC」 와 「RC」 는 명령 해석부 (31) 에 부여되고, 메모리 버스 (21) 의 어드레스에 출력된 「AA1」 과 「RA1」 은 버퍼 (32) 에 부여된다.
명령 해석부 (31) 는, 입력된 커맨드가 행 어드레스 지정 커맨드 「AC」 인 것을 인식하면, 이것을 신호 ComC 로 하여 행 어드레스 버퍼 (35) 에 보낸다. 그것과 동기하여, 버퍼 (32) 로부터 신호 AddC 로서 행 어드레스 「AA1」이 행 어드레스 버퍼 (35) 에 보내지기 때문에, 행 어드레스 버퍼 (35) 는 행 어드레스 지정 커맨드 「AC」 를 트리거로 하여, 행 어드레스 「AA1」 을 신호 Row 로 하여 행 디코더 (53) 에 보낸다. 행 디코더 (53) 는 서브 뱅크 (52A) 의 이 신호 Row 로 지정된 행 어드레스를 액티브로 한다.
또, 명령 해석부 (31) 는, 입력된 커맨드가 판독 커맨드 「RC」 인 것을 인식하면, 이것을 ComC 로 하여 판독/기록 제어부 (40) 에 보낸다. 이것에 동기하여, 버퍼 (32) 로부터 신호 AddC 로서 열 어드레스 「RA1」 이 판독/기록 제어부 (40) 에 보내지기 때문에, 판독/기록 제어부 (40) 는 내부의 어드레스 버퍼 (44) 에 이 「RA1」 을, 상기 ComC 로 하여 보내져 온 「RC」 를 트리거로서 기억한다. 또한, 명령 해석부 (31) 는, R/W 신호를 인액티브 (「Low」 상태) 로 하여, 출력 제어부 (33) 및 비교부 (37) 에 부여한다.
판독/기록 제어부 (40) 는, 메모리 버스 (25) 를 통해 열 디코더 (51A) 에 대해, 판독 커맨드 RC 와 판독 어드레스를 출력한다. 판독 어드레스값으로는, 버퍼 (32) 로부터 신호 AddC 로서 부여되고, 어드레스 버퍼 (44) 에 기억되어 있던 판독 어드레스값 RA1 을 사용한다. 열 디코더 (51A) 는, 상기 지시를 받으면, 판독 어드레스값 RA1 에 대응한 메모리 셀 (선택 메모리 셀) 의 양단에 판독용 전압이 인가되도록, 비트선에 소정 전압을 인가한다. 또한, 워드선, 소스선은, 행 어드레스 버퍼 (35) 로부터 신호 Row 로서 행 디코더에 「AA1」 이 부여된 시점에서 선택 메모리 셀에 소정 전압이 인가 (액티브화) 되어 있다. 그리고, 상기 선택 메모리 셀에 접속되는 전압선을 흐르는 전류값을, 판독/기록 제어부 (40) 를 개재하여 판독 회로 (43) 에 의해 판독한다. 이로써, 상기 선택 메모리 셀에 저장되어 있는 기존 기록 데이터 RD1 이 판독된다.
판독 회로 (43) 는, 상기 데이터 RD1 의 출력 타이밍을 나타내는 신호 DE 를 출력한다. 출력 제어부 (33) 는, 부여되는 신호 R/W 가 Low 상태인 것으로부터, 상기 신호 DE 를 트리거로 하여, 신호 DatC 로서 판독 회로 (43) 로부터 보내지는 기존 기록 데이터 RD1 을, 데이터 버스 (21) 를 통해 메모리 액세스 제어부 (20) 에 출력한다. 메모리 액세스 제어부 (20) 는, 이 판독 데이터 RD1 을 CPU 버스 (11) 를 통해 CPU (10) 에 부여한다. 또한, 신호 R/W 가 Low 상태이기 때문에, 비교부 (37) 는, 신호 DatC 로서 판독 회로 (43) 로부터 보내지는 기존 기록 데이터 RD1 을 사용한 비교 처리를 실시하지 않는다.
상기 서술한 본 실시형태의 불휘발성 반도체 기억 장치의 처리는, 비트폭 (워드) 단위로 처리되는 것을 전제로 한 것이지만, 도 13 에 나타내는 구성과 같이, 메모리 버스 (25) 에 데이터의 비트 인에이블을 전송하는 구조를 추가하면, 기록의 가부를 비트마다의 일치·불일치로 실시하는 것도 가능하다. 이 경우, 메모리 셀은 비트 단위에서의 기록 처리를 할 수 있다는 것이 전제가 된다. 비트 단위에서의 기록은, 도 10 에 있어서의, WEA [1 : j] (j 는 워드의 비트폭을 나타낸다) 에, 비교부 (37) 의 비교 결과의 신호 Comp 를 적용함으로써 실현할 수 있다.
또한, 도 11, 도 12 에 나타낸 타이밍 차트는, 본 실시예의 원리를 나타내는 것이지만, 버스의 조건이나 시스템상의 제약 등에 따라, 클록의 교환이나 어드레스값, 데이터 비트폭의 변환 등의 처리가 필요해지는 경우가 있다. 그러나, 이들 처리는, 필요에 따라 적절히 선택하여 적용하면 되고, 본 발명의 주지와는 상이하기 때문에 설명을 할애한다.
또한, 본 실시형태에 있어서, 메모리 제어부 (30) 에서 실현하고 있는 처리는, 소프트웨어에 의해 실현할 수도 있다. 즉, CPU (10) 상에서 실행되는 소프트웨어 (혹은 펌웨어) 가, 도 14 에 나타난 바와 같은 순서로 메모리로의 기록 처리를 실시함으로써, 상기 메모리 제어부 (30) 에 의해 실현하고 있는 처리와 동등한 처리를 실현할 수 있다.
도 14 는, 본 실시형태에 있어서의 처리를 소프트웨어에 의해 실현하는 경우의 처리 순서를 나타내는 플로우 차트이다.
먼저, CPU (10) 내부에서 실행되는 프로그램에 있어서, 메모리 셀로의 기록 요구가 발생하면 (단계 S100), 상기 요구의 기록 대상 데이터를 저장한다 (단계 S101). 상기 기록 데이터의 저장처로는, CPU (10) 내부의 레지스터나 캐시 (도시 없음) 가 바람직하지만, 외부에 SRAM 이나 DRAM 이 접속되어 있는 경우에는 그들을 이용해도 된다.
또한, 상기 단계 S100 에 있어서의 기록 요구시에는, 기록 대상 데이터 외에, 기록처 어드레스도 함께 부여된다.
다음으로, CPU (10) 는, 단계 S100 의 기록 요구로 지정된 기록처 어드레스에 대해, 기존 기록 데이터의 판독 처리를 실행한다 (단계 S102). 그리고, 판독된 기존 기록 데이터 (데이터 R) 를 수취하면 (단계 S103), 단계 S101 에서 저장해 둔 기록 대상 데이터 (데이터 W) 를 판독하여 (단계 S104), 기존 기록 데이터와의 비교를 실시한다 (단계 S105).
그리고, 상기 단계 S105 에 있어서의 비교 처리에 있어서, 기존 기록 데이터와 기록 대상 데이터가 일치한 경우에는 (단계 S105 에 있어서 예), 그대로 아무것도 하지 않고 단계 S100 에 있어서 발생한 기록 요구에 대응하는 기록 처리를 종료한다. 한편, 상기 비교 결과가 불일치일 경우에는 (단계 S105 에 있어서 아니오), 기록 대상 데이터를 기록처 어드레스에 기록하는 처리를 실행하여 (단계 S106), 단계 S100 에 있어서 발생된 기록 요구에 대응하는 기록 처리를 종료한다.
또, CPU (10) 내부에서 메모리 셀로의 판독 요구가 발생된 경우에 대해서는, 기존 CPU 의 판독 처리와 동일한 순서로 처리가 실시된다.
또한, 이상의 각 실시형태에서는, 메모리 셀을 RRAM 으로 구성되는 것으로 하여 설명했지만, RRAM 이외의 불휘발성 기억 소자로 구성되는 것으로 해도 상관없다.
1 : 불휘발성 반도체 기억 장치
10 : CPU
11 : CPU 버스
20 : 메모리 액세스 제어부
21 : 메모리 버스
25 : 메모리 버스
30 : 메모리 제어부
31 : 명령 해석부
32 : 버퍼
33 : 출력 제어부
34 : 버퍼
35 : 행 어드레스 버퍼
36 : 판독 제어부
37 : 비교부
38 : 버퍼
39 : 기록 제어부
40 : 기록/판독 제어부
41 : 판독 기록 전환 제어부
42 : 서브 뱅크 교체부
43 : 판독 회로
44 : 어드레스 버퍼
45 : 데이터 버퍼
50 : 메모리
51A, 51B : 열 디코더
51A0, 51A1, 51A2, 51A3, 51B0, 51B1, 51B2, 51B3 : 열 디코더
52A, 52B : 메모리 셀 어레이 (서브 뱅크)
52A0, 52A1, 52A2, 52A3, 52B0, 52B1, 52B2, 52B3 : 서브 뱅크
53 : 행 디코더
60 : 반도체 기판
61 : 소자 분리 영역
62 : 게이트 절연막
63 : 게이트 전극
64 : 드레인 확산 영역
65 : 소스 확산 영역
66 : 층간 절연막
67 : 컨택트 홀
68 : 오믹 컨택트층
69 : 하부 전극
70 : 가변 저항체
71 : 상부 전극
72 : 층간 절연막
73 : 컨택트 홀
74 : 컨택트 홀
75 : 배선
76 : 배선
77 : 층간 절연막
78 : 배선
79 : 표면 보호막
100 : 가변 저항 소자
101 : 상부 전극 (제 1 전극)
102 : 가변 저항체
103 : 하부 전극 (제 2 전극)
501, 502, 503, 504 : 메모리 유닛
530, 531, 532, 533 : 행 디코더

Claims (9)

  1. 불휘발성 메모리 셀의 복수를 매트릭스 형상으로 배열하여, 동일 행의 상기 메모리 셀의 제 1 단자를 공통의 워드선에 접속시키고, 동일 열의 상기 메모리 셀의 제 2 단자를 공통의 비트선에 접속시켜 이루어지는 제 1 서브 뱅크, 및 상기 제 1 서브 뱅크와 동일한 구성의 제 2 서브 뱅크를 구비하여 이루어지는 메모리 셀 어레이와,
    지정 어드레스에 대응하는 대상 메모리 셀로의 기록 또는 판독의 제어를 실시하는 기록/판독 제어부와,
    상기 기록/판독 제어부로부터의 지시에 기초하여 상기 비트선 및 상기 워드선에 전압을 인가함으로써, 상기 대상 메모리 셀에 기록 전압 또는 판독 전압을 인가하는 디코더부와,
    상기 판독 전압이 인가된 상기 대상 메모리 셀에 기록되어 있는 기존 기록 데이터의 판독을 실시하는 판독 회로와,
    입력되는 복수의 데이터의 비교를 실시하는 비교부를 구비하여 이루어지고,
    상기 제 1 서브 뱅크 내 및 상기 제 2 서브 뱅크 내에 위치하는 복수의 상기 대상 메모리 셀에 대해, 각 개별로 지정된 기록 대상 데이터의 기록을 실시할 때,
    상기 디코더부가,
    상기 제 1 서브 뱅크 내의 제 1 대상 메모리 셀에 대해 판독 전압을 인가하는 제 1 동작과,
    상기 제 2 서브 뱅크 내의 제 2 대상 메모리 셀의 상기 기존 기록 데이터와 당해 제 2 대상 메모리 셀로의 상기 기록 대상 데이터의 상기 비교부에 의한 비교 결과가 상이한 경우에만 상기 제 2 대상 메모리 셀에 대해 기록 전압을 인가하는 제 2 동작을 동일 시간대에 실행하는 것을 특징으로 하는 불휘발성 반도체 기억 장치.
  2. 제 1 항에 있어서,
    상기 제 1 서브 뱅크 내 및 상기 제 2 서브 뱅크 내에 위치하는 복수의 상기 대상 메모리 셀에 대해, 각 개별로 지정된 상기 기록 대상 데이터의 기록을 실시할 때,
    상기 디코더부는, 상기 제 1 동작과 상기 제 2 동작으로 구성된 동작 단계를, 상기 제 1 동작의 대상인 상기 제 1 대상 메모리 셀 및 상기 제 2 동작의 대상인 상기 제 2 대상 메모리 셀을 변화시키면서 복수회 실행하는 구성이고,
    복수회 실행하는 상기 동작 단계의 각 동작 단계의 상기 제 2 동작에 있어서의 상기 제 2 대상 메모리 셀은, 당해 각 동작 단계보다 전에 이미 실행된 상기 동작 단계 내의 상기 제 1 동작에 있어서의 상기 제 1 대상 메모리 셀이었던 메모리 셀인 것을 특징으로 하는 불휘발성 반도체 기억 장치.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 디코더부는,
    상기 제 1 서브 뱅크 및 상기 제 2 서브 뱅크에 공통되어 형성됨과 함께, 상기 제 1 서브 뱅크 및 상기 제 2 서브 뱅크 각각의 대응하는 상기 워드선에 동시에 전압을 인가하는 행 디코더와,
    상기 제 1 서브 뱅크의 상기 비트선에 전압을 인가하는 제 1 열 디코더와,
    상기 제 2 서브 뱅크의 상기 비트선에 전압을 인가하는 제 2 열 디코더를 구비하고,
    상기 제 1 동작은, 상기 행 디코더가 상기 제 1 대상 메모리 셀에 접속된 상기 워드선에 전압을 인가한 상태에서, 상기 제 1 열 디코더가 상기 제 1 대상 메모리 셀에 접속된 비트선에 판독 전압을 인가하는 동작이고,
    상기 제 2 동작은, 상기 제 2 대상 메모리 셀의 상기 기존 기록 데이터와 당해 제 2 대상 메모리 셀로의 상기 기록 대상 데이터의 비교 결과가 상이한 경우에만, 상기 제 2 열 디코더가 상기 제 1 대상 메모리 셀과 동일 행에 위치하는 상기 제 2 대상 메모리 셀에 접속된 비트선에 기록 전압을 인가하는 동작인 것을 특징으로 하는 불휘발성 반도체 기억 장치.
  4. 제 1 항 또는 제 2 항에 있어서,
    상기 메모리 셀 어레이가, 상기 제 1 서브 뱅크 및 상기 제 2 서브 뱅크로 이루어지는 메모리 유닛을 복수 구비하여 구성되고,
    상기 디코더부가, 상기 각 메모리 유닛마다 형성되고,
    복수의 상기 메모리 유닛에 걸쳐 배치된 복수의 상기 대상 메모리 셀에 대해, 각 개별로 지정된 상기 기록 대상 데이터의 기록을 실시할 때,
    상기 대상 메모리 셀이 존재하는 상기 메모리 유닛에 구비된 상기 각 디코더부 각각이, 상기 제 1 동작과 상기 제 2 동작을 동일 시간대에 실행하는 것을 특징으로 하는 불휘발성 반도체 기억 장치.
  5. 제 1 항 또는 제 2 항에 있어서,
    상기 메모리 셀이, 인가 전압에 따라 저항값을 가역적으로 변화시키는 가변 저항 소자로 구성되어 있고, 당해 가변 저항 소자의 저항값에 따라 정보를 기억하는 구성인 것을 특징으로 하는 불휘발성 반도체 기억 장치.
  6. 불휘발성 반도체 기억 장치의 구동 방법으로서,
    상기 불휘발성 반도체 기억 장치는, 불휘발성 메모리 셀의 복수를 매트릭스 형상으로 배열하여, 동일 행의 상기 메모리 셀의 제 1 단자를 공통의 워드선에 접속시키고, 동일 열의 상기 메모리 셀의 제 2 단자를 공통의 비트선에 접속시켜 이루어지는 제 1 서브 뱅크, 및 상기 제 1 서브 뱅크와 동일한 구성의 제 2 서브 뱅크를 구비하여 이루어지는 메모리 셀 어레이를 구비하고 있고,
    상기 제 1 서브 뱅크 내 및 상기 제 2 서브 뱅크 내에 위치하는 복수의 대상 메모리 셀에 대해, 각 개별로 지정된 기록 대상 데이터의 기록을 실시할 때,
    상기 제 1 서브 뱅크 내의 제 1 대상 메모리 셀에 대해 판독 전압을 인가하는 제 1 동작과,
    상기 제 2 서브 뱅크 내의 제 2 대상 메모리 셀의 기존 기록 데이터와 당해 제 2 대상 메모리 셀로의 상기 기록 대상 데이터의 비교 결과가 상이한 경우에만 상기 제 2 대상 메모리 셀에 대해 기록 전압을 인가하는 제 2 동작을 동일 시간대에 실행하는 것을 특징으로 하는 불휘발성 반도체 기억 장치의 구동 방법.
  7. 제 6 항에 있어서,
    상기 제 1 동작과 상기 제 2 동작으로 구성된 동작 단계를, 상기 제 1 동작의 대상인 상기 제 1 대상 메모리 셀 및 상기 제 2 동작의 대상인 상기 제 2 대상 메모리 셀을 변화시키면서 복수회 실행하고,
    복수회 실행하는 상기 동작 단계의 각 동작 단계의 상기 제 2 동작에 있어서의 상기 제 2 대상 메모리 셀은, 당해 각 동작 단계보다 전에 이미 실행된 상기 동작 단계 내의 상기 제 1 동작에 있어서의 상기 제 1 대상 메모리 셀이었던 메모리 셀인 것을 특징으로 하는 불휘발성 반도체 기억 장치의 구동 방법.
  8. 제 6 항 또는 제 7 항에 있어서,
    상기 메모리 셀 어레이가, 상기 제 1 서브 뱅크 및 상기 제 2 서브 뱅크로 이루어지는 메모리 유닛을 복수 구비하여 구성되어 있고,
    복수의 상기 메모리 유닛에 걸쳐 배치된 복수의 상기 대상 메모리 셀에 대해, 각 개별로 지정된 상기 기록 대상 데이터의 기록을 실시할 때,
    상기 대상 메모리 셀이 존재하는 상기 메모리 유닛의 각각에 있어서, 상기 제 1 동작과 상기 제 2 동작을 동일 시간대에 실행하는 것을 특징으로 하는 불휘발성 반도체 기억 장치의 구동 방법.
  9. 메모리 셀의 복수를 매트릭스 형상으로 배열하여, 동일 행의 상기 메모리 셀의 제 1 단자를 공통의 워드선에 접속시키고, 동일 열의 상기 메모리 셀의 제 2 단자를 공통의 비트선에 접속시켜 이루어지는 제 1 서브 뱅크, 및 상기 제 1 서브 뱅크와 동일한 구성의 제 2 서브 뱅크를 구비하여 이루어지는 메모리 셀 어레이와,
    지정 어드레스에 대응하는 대상 메모리 셀로의 기록 또는 판독의 제어를 실시하는 기록/판독 제어부와,
    상기 기록/판독 제어부로부터의 지시에 기초하여, 상기 대상 메모리 셀에 기록 처리 또는 판독 처리를 실시하는 디코더부와,
    상기 대상 메모리 셀에 기록되어 있는 기존 기록 데이터의 판독을 실시하는 판독 회로와,
    입력되는 복수의 데이터의 비교를 실시하는 비교부를 구비하여 이루어지고,
    상기 제 1 서브 뱅크 내 및 상기 제 2 서브 뱅크 내에 위치하는 복수의 상기 대상 메모리 셀에 대해, 각 개별로 지정된 기록 대상 데이터의 기록을 실시할 때,
    상기 디코더부가,
    상기 제 1 서브 뱅크 내의 제 1 대상 메모리 셀에 대해 판독 처리를 실시하는 제 1 동작과,
    상기 제 2 서브 뱅크 내의 제 2 대상 메모리 셀의 상기 기존 기록 데이터와 당해 제 2 대상 메모리 셀로의 상기 기록 대상 데이터의 상기 비교부에 의한 비교 결과가 상이한 경우에만 상기 제 2 대상 메모리 셀에 대해 기록 처리를 실시하는 제 2 동작을 동일 시간대에 실행하는 것을 특징으로 하는 불휘발성 반도체 기억 장치.
KR1020117011105A 2008-11-26 2009-11-18 불휘발성 반도체 기억 장치 및 그 구동 방법 KR101358548B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2008-301635 2008-11-26
JP2008301635 2008-11-26
PCT/JP2009/069545 WO2010061760A1 (ja) 2008-11-26 2009-11-18 不揮発性半導体記憶装置及びその駆動方法

Publications (2)

Publication Number Publication Date
KR20110086050A KR20110086050A (ko) 2011-07-27
KR101358548B1 true KR101358548B1 (ko) 2014-02-05

Family

ID=42225636

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117011105A KR101358548B1 (ko) 2008-11-26 2009-11-18 불휘발성 반도체 기억 장치 및 그 구동 방법

Country Status (5)

Country Link
US (1) US8400830B2 (ko)
JP (1) JP5285714B2 (ko)
KR (1) KR101358548B1 (ko)
CN (1) CN102227778B (ko)
WO (1) WO2010061760A1 (ko)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102511079B (zh) 2010-08-19 2014-08-27 松下电器产业株式会社 电阻变化型非易失性存储装置
JP5756622B2 (ja) 2010-11-30 2015-07-29 株式会社日立製作所 半導体装置
FR2982406A1 (fr) * 2011-11-07 2013-05-10 St Microelectronics Rousset Memoire securisee qui evite la degradation de donnees
US8526214B2 (en) * 2011-11-15 2013-09-03 Stmicroelectronics Pte Ltd. Resistor thin film MTP memory
EP2800097B1 (en) * 2012-01-12 2018-03-21 Sony Corporation Storage control device, storage device, information processing system, and processing methods therefor
KR20140080942A (ko) * 2012-12-21 2014-07-01 에스케이하이닉스 주식회사 비휘발성 메모리 장치
KR20140121612A (ko) * 2013-04-08 2014-10-16 에스케이하이닉스 주식회사 반도체 메모리 장치 및 이를 이용한 동작 방법
WO2014209315A1 (en) * 2013-06-27 2014-12-31 Hewlett-Packard Development Company, L.P. Memory bus error signal
CN105378849B (zh) * 2013-07-17 2018-04-10 松下知识产权经营株式会社 非易失性半导体存储装置及其改写方法
JP5620557B2 (ja) * 2013-09-30 2014-11-05 株式会社日立製作所 情報処理システム
CN103927131B (zh) * 2014-03-25 2017-02-15 四川和芯微电子股份有限公司 同步闪存u盘的启动方法及其控制系统
US20170160952A1 (en) * 2014-07-28 2017-06-08 Sony Corporation Memory controller, memory system, and information processing system
US9355732B2 (en) * 2014-10-01 2016-05-31 Sandisk Technologies Inc. Latch initialization for a data storage device
WO2016194332A1 (ja) * 2015-05-29 2016-12-08 日本電気株式会社 プログラマブル論理集積回路、設計支援システム及びコンフィグレーション方法
US9761306B1 (en) * 2016-03-08 2017-09-12 Toshiba Memory Corporation Resistive memory device and method of programming the same
CN111599397B (zh) * 2019-02-20 2024-04-09 深圳通锐微电子技术有限公司 控制装置及控制方法
US11169876B2 (en) * 2019-12-31 2021-11-09 Micron Technology, Inc. Apparatuses, systems, and methods for error correction

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080151656A1 (en) 2006-12-25 2008-06-26 Elpida Memory, Inc. Semiconductor memory device and write control mehod therefor

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0997218A (ja) 1995-09-28 1997-04-08 Canon Inc フラッシュrom管理方法及び装置及びコンピュータ制御装置
US6343352B1 (en) * 1997-10-10 2002-01-29 Rambus Inc. Method and apparatus for two step memory write operations
WO2000049659A1 (en) 1999-02-17 2000-08-24 International Business Machines Corporation Microelectronic device for storing information and method thereof
JP2001067258A (ja) 1999-08-25 2001-03-16 Mitsubishi Electric Corp フラッシュメモリ内蔵半導体装置及びフラッシュメモリアドレス変換方法
WO2008032394A1 (fr) * 2006-09-15 2008-03-20 Renesas Technology Corp. Dispositif semi-conducteur
JP4344011B2 (ja) * 2007-08-01 2009-10-14 パナソニック株式会社 不揮発性記憶装置
JP5100554B2 (ja) * 2008-07-30 2012-12-19 株式会社東芝 半導体記憶装置
JP4653833B2 (ja) 2008-11-04 2011-03-16 シャープ株式会社 不揮発性半導体記憶装置及びその制御方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080151656A1 (en) 2006-12-25 2008-06-26 Elpida Memory, Inc. Semiconductor memory device and write control mehod therefor

Also Published As

Publication number Publication date
JPWO2010061760A1 (ja) 2012-04-26
CN102227778A (zh) 2011-10-26
US8400830B2 (en) 2013-03-19
WO2010061760A1 (ja) 2010-06-03
CN102227778B (zh) 2014-11-12
JP5285714B2 (ja) 2013-09-11
KR20110086050A (ko) 2011-07-27
US20110238902A1 (en) 2011-09-29

Similar Documents

Publication Publication Date Title
KR101358548B1 (ko) 불휘발성 반도체 기억 장치 및 그 구동 방법
JP4344011B2 (ja) 不揮発性記憶装置
JP4273087B2 (ja) 半導体記憶装置およびその書込み方法
TWI232459B (en) Semiconductor memory device and erase method for memory array
US8111573B2 (en) Nonvolatile semiconductor memory device and method of controlling the same
JP5359804B2 (ja) 不揮発性半導体メモリデバイス
KR102178832B1 (ko) 저항성 메모리 장치 및 저항성 메모리 장치의 동작 방법
US8411487B2 (en) Semiconductor memory device
US20080080226A1 (en) Memory system and method of operating the memory system
CN102263122B (zh) 非易失性存储装置
WO2008027691A2 (en) Phase-change random access memory employing read before write for resistance stabilization
US7583546B2 (en) Apparatus and method of operating an integrated circuit
CN102169719A (zh) 一次可编程电阻随机存储器、读写电路及其编程方法
KR20100107609A (ko) 저항성 메모리 장치, 이를 포함하는 메모리 시스템 및 저항성 메모리 장치의 기입 방법
US10020052B2 (en) Resistive memory device and memory system including the same
KR20180061383A (ko) 기록 카운트에 기초하여 기록 파라미터를 조정하기 위한 장치 및 방법
US20100085797A1 (en) Dual stage sensing for non-volatile memory
TWI482155B (zh) 記憶體裝置、讀取記憶胞方法與程式化記憶體陣列方法
JP2015088727A (ja) 不揮発性記憶装置
US9921782B2 (en) Memory device for emulating dynamic Random access memory (DRAM)
CN105378849A (zh) 非易失性半导体存储装置及其改写方法
US20220068335A1 (en) Methods and Systems for Improving Read and Write of Memory Cells
TW202137218A (zh) 用於存取記憶體單元之方法及系統
JP5092006B2 (ja) 不揮発性半導体記憶装置及びその制御方法

Legal Events

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

Payment date: 20170120

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee