KR100806154B1 - 반도체 메모리 - Google Patents

반도체 메모리 Download PDF

Info

Publication number
KR100806154B1
KR100806154B1 KR1020020020375A KR20020020375A KR100806154B1 KR 100806154 B1 KR100806154 B1 KR 100806154B1 KR 1020020020375 A KR1020020020375 A KR 1020020020375A KR 20020020375 A KR20020020375 A KR 20020020375A KR 100806154 B1 KR100806154 B1 KR 100806154B1
Authority
KR
South Korea
Prior art keywords
signal
command
data
write
circuit
Prior art date
Application number
KR1020020020375A
Other languages
English (en)
Other versions
KR20030012812A (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 KR20030012812A publication Critical patent/KR20030012812A/ko
Application granted granted Critical
Publication of KR100806154B1 publication Critical patent/KR100806154B1/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
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/406Management or control of the refreshing or charge-regeneration cycles
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40603Arbitration, priority and concurrent access to memory cells for read/write or refresh operations
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40615Internal triggering or timing of refresh, e.g. hidden refresh, self refresh, pseudo-SRAMs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40618Refresh operations over multiple banks or interleaving
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/4076Timing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/408Address circuits
    • G11C11/4087Address decoders, e.g. bit - or word line decoders; Multiple line decoders
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/10Decoders
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/12Group selection circuits, e.g. for memory block selection, chip selection, array selection
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/401Indexing scheme relating to cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C2211/406Refreshing of dynamic cells
    • G11C2211/4061Calibration or ate or cycle tuning
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/401Indexing scheme relating to cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C2211/406Refreshing of dynamic cells
    • G11C2211/4062Parity or ECC in refresh operations

Abstract

복수의 제1 메모리 블록들과 이 제1 메모리 블록들의 데이터를 재생성하기 위한 제2 메모리 블록이 형성된다. 판독 커맨드와 리프레시 커맨드가 서로 충돌할 때, 판독 제어 회로는 리프레시 커맨드에 따라 제1 메모리 블록을 액세스하고, 제2 메모리 블록을 사용하여 판독 데이터를 재생성한다. 기록 커맨드와 리프레시 커맨드가 서로 충돌할 때, 기록 제어 회로는 커맨드의 수신 순서에 따라 메모리 블록에 대한 동작을 수행한다. 따라서, 사용자들에게 인식되지 않고 리프레시 동작을 수행하는 것이 가능하다. 즉, 사용자에게 친숙한 반도체 메모리가 제공될 수 있다.
리프레시, 판독, 기록, 반도체 메모리, DRAM, SRAM

Description

반도체 메모리 {SEMICONDUCTOR MEMORY}
도 1은 본 발명의 기록 동작의 기본 원리를 도시하는 타이밍도.
도 2는 본 발명의 판독 동작의 기본 원리를 도시하는 블록도.
도 3은 제1 실시예를 도시하는 블록도.
도 4는 제1 실시예에 따라 커맨드들의 입력에 응답하는 반도체 메모리의 상태 전이도.
도 5는 제1 실시예에 따라 제1 커맨드와 제2 커맨드를 수용하기 위한 신호들의 상태를 도시하는 설명도.
도 6은 제1 실시예에 따라 판독 동작에서 데이터를 출력하는 순서를 도시하는 설명도.
도 7은 제1 실시예에 따라 가변의 기록 길이의 세부를 도시하는 설명도.
도 8은 가변의 기록 길이가 변경될 때의 기록 동작(BL = 2)을 도시하는 타이밍도.
도 9는 가변의 기록 길이가 변경될 때의 기록 동작(BL = 4)을 도시하는 타이밍도.
도 10은 도 3에 도시된 입력 제어 블록의 세부를 도시하는 회로도.
도 11은 도10에 도시된 플립 플롭 회로와 래치 회로의 세부를 도시하는 회로 도.
도 12는 도 3에 도시된 입력 제어 블록의 동작을 도시하는 타이밍도.
도 13은 뱅크의 세부를 도시하는 블록도.
도 14는 도 3에 도시된 리프레시 카운터의 리프레시 동작의 개요와 동작을 도시하는 타이밍도.
도 15는 도 13에 도시된 메모리 블록들의 세부를 도시하는 블록도.
도 16은 도 15에 도시된 로우 블록(RBLK)의 세부를 도시하는 블록도.
도 17은 도 13에 도시된 제1 제어 회로 내의 어드레스 레지스터의 세부를 도시하는 회로도.
도 18은 도 13에 도시된 제1 제어 회로 내의 상태 제어 회로의 세부를 도시하는 회로도.
도 19는 도 13에 도시된 제1 제어 회로 내의 타이밍 신호 생성기의 세부를 도시하는 회로도.
도 20은 도 13에 도시된 제1 제어 회로의 동작을 도시하는 타이밍도.
도 21은 도 13에 도시된 제2 제어 회로 내의 아비터의 세부를 도시하는 회로도.
도 22는 도 21에 도시된 아비터의 동작을 도시하는 타이밍도.
도 23은 도 13에 도시된 제2 제어 회로 내의 어드레스 레지스터의 세부를 도시하는 회로도.
도 24는 도 13에 도시된 제2 제어 회로 내의 상태 제어 회로의 세부를 도시 하는 회로도.
도 25는 도 13에 도시된 제2 제어 회로 내의 타이밍 신호 생성기의 세부를 도시하는 회로도.
도 26은 도 24에 도시된 상태 제어 회로의 동작을 도시하는 타이밍도.
도 27은 도 3에 도시된 입/출력 제어 회로 내의 데이터 입력 회로의 세부를 도시하는 블록도.
도 28은 도 27에 도시된 순차/병렬 변환 회로의 세부를 도시하는 회로도.
도 29는 도 28에 도시된 순차/병렬 변환 회로의 동작을 도시하는 타이밍도(버스트 길이 = "4").
도 30은 도 28에 도시된 순차/병렬 변환 회로의 동작을 도시하는 타이밍도(버스트 길이 = "2").
도 31은 도 27에 도시된 데이터 입력 회로의 동작을 도시하는 타이밍도.
도 32는 도 3에 도시된 입/출력 제어 회로 내의 데이터 출력 회로의 세부를 도시하는 블록도.
도 33은 도 32에 도시된 패리티 검사 회로의 세부를 도시하는 회로도.
도 34는 도 33에 도시된 패리티 검사 회로의 동작을 도시하는 타이밍도(버스트 길이 = "4").
도 35는 도 32에 도시된 병렬/순차 변환 회로의 세부를 도시하는 회로도.
도 36은 도 35에 도시된 카운터(PI)의 세부를 도시하는 회로도.
도 37은 도 35에 도시된 카운터(POR, POF)의 세부를 도시하는 회로도.
도 38은 도 3에 도시된 뱅크 내의 데이터 스위칭 회로의 세부를 도시하는 회로도.
도 39는 도 35에 도시된 병렬/순차 변환 회로의 동작을 도시하는 타이밍도(버스트 길이 = "4").
도 40은 도 35에 도시된 병렬/순차 변환 회로의 동작을 도시하는 타이밍도(버스트 길이 = "4").
도 41은 도 35에 도시된 병렬/순차 변환 회로의 동작을 도시하는 타이밍도(버스트 길이 = "2").
도 42는 도 35에 도시된 병렬/순차 변환 회로의 동작을 도시하는 타이밍도(버스트 길이 = "2").
도 43은 제1 실시예에 따른 판독 동작의 예를 도시하는 타이밍도.
도 44는 제1 실시예에 따른 기록 동작의 예를 도시하는 타이밍도.
도 45는 제1 실시예에 따른 기록 동작의 예를 도시하는 타이밍도.
도 46은 제1 실시예에 따른 기록 동작의 예를 도시하는 타이밍도.
도 47은 제1 실시예에 따른 판독 동작의 예를 도시하는 타이밍도.
도 48은 제1 실시예에 따른 반도체 메모리의 AC 상세 사항(specification)을 도시하는 설명도.
도 49는 동일한 뱅크(BK)로부터의 판독 동작의 예를 도시하는 타이밍도(버스트 길이 = "2").
도 50은 동일한 뱅크(BK)로부터의 판독 동작의 예를 도시하는 타이밍도(버스 트 길이 = "4").
도 51은 동일한 뱅크(BK)로부터의 기록 동작의 예를 도시하는 타이밍도(버스트 길이 = "2").
도 52는 동일한 뱅크(BK)로부터의 기록 동작의 예를 도시하는 타이밍도(버스트 길이 = "4").
도 53은 복수의 뱅크(BK)로부터의 판독 동작들의 예를 도시하는 타이밍도(버스트 길이 = "2").
도 54는 복수의 뱅크(BK)로부터의 판독 동작들의 예를 도시하는 타이밍도(버스트 길이 = "4").
도 55는 복수의 뱅크(BK)로부터의 기록 동작들의 예를 도시하는 타이밍도(버스트 길이 = "2").
도 56은 복수의 뱅크(BK)로부터의 기록 동작들의 예를 도시하는 타이밍도(버스트 길이 = "4").
도 57은 동일한 뱅크(BK)에 대한 판독 동작과 기록 동작의 예를 도시하는 타이밍도(버스트 길이 = "2").
도 58은 동일한 뱅크(BK)에 대한 판독 동작과 기록 동작의 예를 도시하는 타이밍도(버스트 길이 = "4").
도 59는 복수의 뱅크(BK)에 대한 판독 동작과 기록 동작의 예를 도시하는 타이밍도(버스트 길이 = "2").
도 60은 복수의 뱅크(BK)에 대한 판독 동작과 기록 동작의 예를 도시하는 타이밍도(버스트 길이 = "4").
도 61은 제2 실시예에 따른 판독 동작을 도시하는 타이밍도.
도 62는 제3 실시예에 따른 패리티 검사 회로의 세부를 도시하는 회로도.
도 63은 제4 실시예에 따른 메모리 블록의 세부를 도시하는 블록도.
도 64는 제4 실시예에 따른 로우 블록의 세부를 도시하는 블록도.
도 65는 제5 실시예의 개요를 도시하는 설명도.
도 66은 메모리 코어의 다른 구조 예를 도시하는 설명도.
도 67은 리프레시 카운터의 다른 구조 예를 도시하는 설명도.
도 68은 제6 실시예의 메모리 코어의 개략도.
도 69a 내지 도 69c는 기록 패리티 동작 순서를 도시하는 도면.
도 70a와 도 70b는 데이터 정정 순서를 도시하는 도면.
도 71은 메모리 코어로부터의 출력에 관한 제어 신호 생성기의 블록도.
도 72a와 도 72b는 반도체 메모리의 전체적인 동작을 도시하는 개략도.
도 73은 메모리 코어로의 입력에 관한 제어 신호 생성기의 블록도.
도 74는 내부 커맨드 유지 회로의 회로도.
도 75는 내부 커맨드 유지 회로의 동작 파형을 도시하는 도면.
도 76은 리프레시 블록 선택기의 회로도.
도 77은 리프레시 블록 선택기의 동작 파형을 도시하는 도면.
도 78은 메모리 코어 블록의 구조를 도시하는 도면.
본 발명은 메모리 셀을 정기적으로 리프레시(refresh)할 필요가 있는 동적 RAM(dynamic RAM)에 관한 것이다. 구체적으로는 본 발명은 외부에서 리프레시를 요청할 필요가 없이 내부에서 리프레시 동작을 자동적으로 수행하는 기술에 관한 것이다.
DRAM은 메모리 셀이 작게 구조화되어 있기 때문에 높은 집적도를 얻기에 적합하다. 그러나, DRAM은 메모리 셀에 저장된 데이터를 유지하기 위하여 리프레시 동작을 할 필요가 있다. 각 메모리 셀에 대하여 리프레시 동작을 정기적으로 수행하는 것이 필요하다. 리프레시 요청이 생성될 때, 리프레시 동작은 판독 동작이나 기록 동작에 대하여 우선권을 가지면서 수행되어야 한다.
DRAM이 장착되어 있는 시스템에서, 예를 들면 DRAM을 제어하는 메모리 제어기는 자신의 리프레시 타이머로부터 리프레시 요청이 생성될 때, 판독 명령어(또는 기록 명령어)에 대하여 우선권을 가지면서 DRAM에 리프레시 명령어를 제공한다.
한편, SRAM은 DRAM과 대조적으로 리프레시 동작을 요구하지 않는다. 그러나, 한 비트의 셀을 구성하는 구성요소들의 수가 DRAM의 경우에 비해 크기 때문에, 높은 집적도를 얻기에는 불리하다.
다시 말해서, DRAM(dynamic random access memory) 메모리 코어가 사용되는 한, 필요할 때 리프레시 동작이 수행되어야 한다. 리프레시 동작중인 동작 영역은 액세스될 수 없다. 이러한 결과, 리프레시 동작과 액세스 요청이 동시에 들어 올 때, 리프레시 동작이 완료될 때까지 액세스는 중단되어야 한다.
만일 DRAM이 리프레시 요청이 외부로부터 입력되지 않는 SRAM(static random access memory)으로서 동작하고 있다면, 리프레시 요청이 내부에서 정기적으로 발생될 필요가 있다. 이 시점에서 액세스 요청이 외부로부터 제공될 때, 요청된 액세스는 리프레시 동작 이후에 수행되기 때문에, 실제로 한번 액세스를 수행하는 것은 메모리 코어에 대하여 두개의 동작을 수행하는 것에 해당하는 시간이 걸리는 것으로 보인다.
종래의 DRAM에서는 메모리 제어기가 리프레시 동작도 제어하기 때문에, 제어의 복잡도가 증가하는 단점이 있다. 또한, 리프레시 동작 중에 판독 동작과 기록 동작을 수행하는 것이 불가능하기 때문에, SRAM에 비하여 데이터 전송 속도가 감소하는 단점이 있다.
한편, SRAM에서는 전술한 바와 같은 대용량을 얻기 어렵고, SRAM의 메모리 셀이 크기 때문에 DRAM에 비하여 칩의 비용이 상당히 높다는 단점이 있다.
본 발명의 목적은 DRAM의 대용량과 SRAM의 가용성(usability)을 모두 가진 반도체 메모리를 제공하는 것이다.
본 발명의 다른 목적은 메모리 외부로부터의 판독 동작 요청에 대하여 즉각적으로 응답하고, 데이터 전송 속도가 높은 반도체 메모리를 제공하는 것이다.
본 발명의 또다른 목적은 리프레시 동작과 외부의 액세스 요청이 서로 충돌하는 경우에도 메모리 코어의 단일 동작에 걸리는 액세스 시간 내에 외부의 액세스 를 수행하는 것이다.
본 발명에 의한 반도체 메모리의 일 측면에 의하면, 반도체 메모리는 데이터를 저장하는 복수의 제1 메모리 블록과 상기 제1 메모리 블록들에 저장된 데이터를 재생성하기 위하여 데이터를 저장하는 하나의 제2 메모리 블록을 포함한다. 예를 들어, 제2 메모리 블록이 제1 메모리 블록들의 패리티 비트를 데이터로서 저장한다. 제1 커맨드 생성기가 메모리의 외부로부터 커맨드를 입력받아서, 수신된 커맨드에 따라서 제1 메모리 블록들을 액세스하기 위한 판독 커맨드 또는 기록 커맨드를 생성한다. 제2 커맨드 생성기가 제1 메모리 블록들 또는 제2 메모리 블록을 액세스하기 위한 제2 커맨드를 생성한다.
판독 커맨드와 제2 커맨드가 동일한 제1 메모리 블록을 액세스할 때, 즉, 판독 커맨드와 제2 커맨드가 서로 충돌할 때, 판독 제어 회로가 제2 커맨드에 따라 제1 메모리 블록을 액세스한다. 더욱이, 판독 커맨드에 따라 동작하기 위하여, 판독 제어 회로는 제2 메모리 블록과 나머지 제1 메모리 블록들 내에 저장된 데이터를 이용하여 판독 데이터를 재생성(reproduce)하는데, 이 재생성된 데이터는 원래 제1 메모리 블록들로부터 판독되어야 하는 것이다. 따라서, 판독 동작 시간은 판독 커맨드와 제2 커맨드가 서로 충돌하는 경우에도 연장되지 않는다. 즉, 제2 커맨드의 생성은 판독 동작에 영향을 미치지 않는다.
기록 커맨드와 제2 커맨드가 동일한 제1 메모리를 액세스할 때, 기록 제어 회로는 커맨드들이 수신된 순서대로 커맨드에 따라서 동작을 수행한다. 예를 들어, 제2 커맨드의 생성이 기록 커맨드의 제공보다 더 일찍 나타난다면, 기록 제어 회로는 제2 커맨드에 따라 제1 메모리 블록을 먼저 액세스하고, 나중에 기록 동작을 수행한다. 이 때, 반도체 메모리에의 기록 동작은 평소보다 지연되지만, 외부로부터 어드레스, 기록 데이터 등의 제공 타이밍을 변경할 필요는 없다. 따라서, 제2 커맨드의 생성은 기록 동작에 영향을 미치지 않는다.
전술한 바와 같이, 반도체 메모리를 사용하는 사용자들은 반도체 메모리 내부에서 생성된 제2 커맨드와, 사용자들에 의해 제공되는 판독 커맨드와 기록 커맨드와의 충돌을 인식하는 일 없이, 판독 동작과 기록 동작을 수행할 수 있다. 이로 인하여, 사용자에게 친숙한 반도체 메모리가 제공될 수 있다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 제1 메모리 블록들과 제2 메모리 블록은 데이터가 시간의 경과에 따라 사라지는 휘발성 메모리 셀들로 구성되어 있다. 제2 커맨드는 메모리 셀들의 리프레시(refresh) 동작을 수행하기 위하여 주기적으로 생성되는 리프레시 커맨드이다. 따라서, 사용자들이 리프레시에 대하여 인식하는 일 없이 반도체 메모리를 사용할 수 있다. 예를 들어, 본 발명을 DRAM에 적용함으로써, DRAM이 장착되는 시스템에 리프레시 제어기가 불필요하게 만들 수 있다. 다시 말해서, 사용자들은 SRAM과 마찬가지 방식으로 DRAM을 사용할 수 있다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 기록 커맨드를 제공하는 최소 간격으로서의 외부 기록 사이클은 제1 메모리 블록들과 제2 메모리 블록의 실제적인 기록 동작 시간으로서의 내부 기록 사이클보다 더 길도록 설정된다. 리프레시 사이클은 기록 커맨드가 여러번 제공되는 동안 반드시 삽입될 수 있다. 따라 서, 기록 커맨드가 여러번 제공되는 경우에도 메모리 셀들에 유지된 데이터가 파괴되는 것을 방지할 수 있다. 일 예로서, 클럭 동기형의 반도체 메모리에서 외부 기록 사이클이 n 클럭 사이클로 설정될 때(n은 1과 같거나 더 큰 정수), 내부 기록 사이클은 n-0.5 클럭 사이클로 설정된다. 이 경우에, 리프레시 사이클이 3.5 클럭 사이클일 때, 7개의 기록 동작 동안에 하나의 리프레시 사이클이 삽입될 수 있다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 내부 기록 사이클이 n-0.5 클럭 사이클로 설정될 때, 기록 커맨드 또는 리프레시 커맨드가 제공될 때마다, 사이클 스위칭 회로가 제1 사이클 생성기와 제2 사이클 생성기를 교대로 동작시켜, 각각 외부 클럭의 제1 에지와 제2 에지와 동기하여 동작하도록 한다. 제1 사이클 생성기는 외부 클럭의 제1 에지와 동기하여 내부 동작 사이클을 수행하기 위한 제1 타이밍 신호를 생성한다. 제2 사이클 생성기는 외부 클럭의 제2 에지와 동기하여 내부 동작 사이클을 수행하기 위한 제2 타이밍 신호를 생성한다. 두개의 사이클 생성기가 교대로 사용되어 기록 동작 또는 리프레시 동작을 수행하는데, 이로 인하여 각 동작의 수행을 제어하는 것이 용이해진다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 기록 제어 회로는 상태 제어 회로를 포함한다. 상태 제어 회로는 기록 동작 동안에 제공되는 다음의 기록 커맨드들을 순차적으로 유지하여, 기록 동작을 완료한 후 유지되어 있는 제공 커맨드들 중의 하나에 대응하는 기록 동작을 수행한다. 따라서, 연속적인 기록 동작 동안 리프레시 동작이 삽입되는 경우라도, 리프레시 동작 이후에 기록 동작을 신뢰성있게 수행하는 것이 가능하다.
전술한 바와 같이, 외부 기록 사이클을 내부 기록 사이클보다 더 길게 설정함으로써, 기록 동작이 수행될 때 마다, 기록 동작의 개시 때 기록 커맨드를 제공함으로써 발생하는 지연을 감소시킬 수 있다. 외부 기록 사이클과 내부 기록 사이클의 차이는, 지연이 다음 리프레시 커맨드가 제공되는 시간에 의해 해소되도록, 설정될 수 있다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 판독 커맨드가 기록 동작 또는 리프레시 동작 중인 제1 메모리 블록에 제공될 때, 판독 제어 회로는 동작 중인 제1 메모리 블록을 제외한 제1 메모리 블록들과 제2 메모리 블록에 저장된 데이터를 사용함으로써 판독 데이터를 재생성한다. 이로 인하여, 판독 동작 또는 기록 동작, 및 리프레시 동작이 반도체 메모리 내부에서 충돌하는 경우에도 액세스 시간의 지연 없이 판독 동작을 수행할 수 있다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 제1 메모리 블록들과 제2 메모리 블록 중 하나만 리프레시 커맨드에 응답하여 리프레시된다. 이로 인하여, 판독 동작이 수행될 제1 메모리 블록이 리프레시 동작 중에 있는 경우에도 나머지 다른 메모리 블록들을 사용하여 판독 데이터를 안전하게 재생성할 수 있다. 제2 메모리 블록이 리프레시 동작 중에 있는 경우에, 데이터는 판독 커맨드에 대응하는 제1 메모리 블록으로부터 직접 판독될 수 있다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 리프레시 카운터가 리프레시 동작이 제1 메모리 블록과 제2 메모리 블록 중 어느 곳에 대하여 수행될 것인지를 순차적으로 나타낸다. 리프레시 카운터에 의해 표시된 메모리 블록으로 판독 커맨드를 제공하자 마자, 리프레시 동작이 표시된 메모리 블록에 대하여 수행되지 않는 경우에도, 판독 제어 회로는 제2 메모리 블록에 저장된 데이터를 사용하여 판독 데이터를 재생성한다. 따라서, 리프레시 요청이 판독 커맨드 직전 또는 직후에 생성되는 경우에도, 판독 제어 회로는 나머지 다른 메모리 블록들을 사용하여 판독 데이터를 재생성할 수 있다. 리프레시 카운터 값에 따라 정상적인 동작 및 리프레시 동작 중 어느 것이 수행되는지 미리 결정함으로써, 판독 제어 회로의 제어를 용이하게 할 수 있고, 간단한 회로 구성을 구현할 수 있게 한다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 반도체 메모리는 데이터를 입력하기/출력하기 위한 복수의 입/출력 단자를 포함하고 있다. 제1 메모리 블록들은 각각 서로 상이한 데이터 입/출력 단자들에 대응하도록 형성된다. 즉, 판독 동작에서 모든 제1 메모리 블록들은 연속적으로 동작하여 판독 데이터를 출력한다. 리프레시 요청이 생성될 때, 리프레시 동작 때문에 데이터 입/출력 단자들로부터 출력된 판독 데이터 중에 판독이 불가능한 데이터는 항상 단지 1 비트이다. 이로 인하여 리프레시중인 제1 메모리 블록에 저장된 데이터를 나머지 다른 제1 메모리 블록들과 제2 메모리 블록을 사용하여 안전하게 재생성할 수 있다.
한편, 제1 메모리 블록들이 어드레스에 대응하여 형성되어 있는 경우에, 단일 제1 메모리 블록은 복수의 데이터 입/출력 단자들에 대응한다. 이것은 판독 데이터를 재생성하는 제2 메모리 블록의 커패시티가 증가할 것을 요구한다. 또한, 판독 제어 회로의 판독 제어는 더욱 복잡해진다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 반도체 메모리는 제1 메모리 블록들과 제2 메모리 블록으로 구성된 복수의 메모리 그룹을 포함한다. 리프레시 커맨드에 응답하여 리프레시 동작이 복수의 메모리 그룹 내의 제1 메모리 블록들 또는 제2 메모리 블록에 대하여 수행된다. 즉, 판독 동작과 기록 동작은 모든 메모리 그룹에 대하여 수행되고, 리프레시 동작은 복수의 메모리 그룹에 대하여 수행된다. 이로 인하여, 모든 메모리 셀을 리프레시하기 위한 필요한 리프레시 커맨드의 생성 수가 최소화되고, 리프레시 커맨드의 생성 간격이 연장된다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 제1 메모리 블록과 제2 메모리 블록은 각 메모리 그룹에서 제1 방향으로 정렬되어 있다. 메모리 그룹은 제1 방향에 수직인 제2 방향으로 정렬되어 있다. 리프레시 커맨드에 응답하여 리프레시 동작은 제2 방향으로 정렬된 제1 메모리 블록 또는 제2 메모리 블록에 대하여 수행된다. 예를 들어, 판독 동작과 기록 동작에서 동시에 활성화된 메모리 블록들을 제1 방향으로 정렬하고, 리프레시 동작에서 동시에 활성화된 메모리 블록들을 제2 방향으로 정렬함으로써, 복수의 메모리 그룹이 감지 증폭기(sense amplifier), 디코더 등을 공유할 수 있고, 따라서, 칩 사이즈가 작아질 수 있다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 칼럼 선택 스위치, 칼럼 디코더, 워드 디코더, 및 감지 증폭기가 제1 방향으로 정렬됨으로써, 이러한 회로들은 복수의 메모리 그룹에 의해 공유될 수 있고, 따라서 칩 사이즈가 작아질 수 있다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 클럭 생성기가 외부 클럭을 수신하여, 내부 회로의 동기화 신호로서 내부 클럭을 생성한다. 제1 커맨드 수신 기 회로는 외부 클럭의 제1 에지에 동기하여 기록 커맨드를 수신한다. 제2 커맨드 수신기 회로는 외부 클럭의 제2 에지에 동기하여 리프레시 커맨드를 수신한다. 아비터(arbiter)는 제1 커맨드 수신기 회로와 제2 커맨드 수신기 회로에서 수신된 기록 커맨드와 리프레시 커맨드가 수행될 순서를 결정한다. 기록 커맨드와 리프레시 커맨드의 수신을 적어도 1/2 클럭 이상 쉬프트함으로써, 커맨드의 수신 순서를 결정하기가 더 용이하다. 즉, 아비터의 구조를 단순하게 할 수 있다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 클럭 생성기는 외부 클럭을 수신하여, 내부 회로의 동기화 신호로서 내부 클럭을 생성한다. 제1 커맨드 생성기는 외부 클럭의 제1 에지와 제2 에지와 각각 동기하여 커맨드를 수신하고, 수신된 커맨드들에 따라 판독 커맨드 또는 기록 커맨드를 생성한다. 예를 들어, 제1 에지는 상승 에지이고, 제2 에지는 상승 에지에 이어지는 하강 에지이다. 커맨드들은 각각 두개의 인접한 에지에 동기하여 수신되기 때문에, 커맨드를 입력하는 간격을 줄일 수 있고, 액세스 시간을 감소시킬 수 있다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 클럭 생성기는 외부 클럭을 수신하여 내부 회로의 동기화 신호로서 내부 클럭을 생성한다. 데이터 입력 회로는 단일 기록 커맨드에 응답하여 외부 클럭에 동기하여 연속적으로 기록 데이터를 입력한다. 제1 커맨드 생성기가 기록 커맨드를 수신한 시점부터 데이터 수신을 시작하는데 걸리는 시간의 길이는, 단일 기록 커맨드에 대응하여 기록 데이터가 수신되는 횟수인 버스트 길이에 따라 변화한다. 따라서, 데이터 버스의 사용에 있어 효율성을 증가시킬 수 있다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 반도체는 독립적으로 동작하는 복수의 뱅크(bank)를 포함한다. 각 뱅크는 복수의 제1 메모리 블록과 하나의 제2 메모리 블록을 포함한다. 클럭 생성기는 외부 클럭을 수신하여, 내부 회로의 동기화 신호로서 내부 클럭을 생성한다. 데이터 출력 회로는 단일 판독 커맨드에 응답하여 외부 클럭에 동기하여 연속적으로 판독 데이터를 출력한다. 데이터 입력 회로는 단일 기록 커맨드에 응답하여 외부 클럭에 동기하여 연속적으로 기록 데이터를 입력한다. 서로 다른 뱅크들을 순차적으로 액세스하는데 있어, 판독 커맨드의 제공과 기록 커맨드의 제공 사이의 최소한의 간격은, 단일 판독 커맨드에 대응하여 판독 데이터가 출력되는 횟수와 단일 기록 커맨드에 대응하여 기록 데이터가 수신되는 횟수로서의 버스트 길이에 따라 달라진다. 커맨드를 제공하기 위한 스펙을 반도체 메모리의 내부 동작에 따라 설정함으로써, 내부 동작을 제어하는 제어 회로의 구성을 단순화시킬 수 있다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 반도체 메모리는 각각 데이터 입/출력 단자들에 대응하도록 형성된 2m개의 판독 데이터 버스 라인들을 포함한다. 데이터 스위칭 회로는 메모리 블록으로부터의 판독 데이터가 판독 데이터 버스 라인들 중 어디로 전송되는지를 결정한다. 병렬/순차(parallel/serial) 변환 회로는 그 판독 데이터 버스 라인을 통해 전송된 병렬적인 판독 데이터를 순차적인 데이터로 변환한다. 버스트 길이는 m 또는 2m(m은 1과 같거나 1보다 큰 정수)으로 설정된다. 데이터 스위칭 회로는 버스트 길이가 2m으로 설정되어 있을 때, 모든 2m개의 판독 데이터 버스 라인들을 이용하여 판독 데이터를 병렬/순차 변환 회로로 전송한다. 또한, 데이터 스위칭 회로는 버스트 길이가 m으로 설정되어 있을 때, m개의 데이터 버스 라인을 교대로 사용하여 m개의 판독 데이터를 병렬/순차 변환 회로로 전송한다. 따라서, 특히 버스트 길이가 m일 때, 데이터 버스의 데이터 전송 사이클을 용이하게 할 수 있다. 이러한 결과, 높은 클럭 주파수의 동작이 실현될 수 있다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 반도체 메모리는 데이터 입/출력 단자들에 대응하여 각각 형성된 2m개의 기록 버스 라인들을 포함한다. 데이터 스위칭 회로는 외부로부터 제공된 기록 데이터가 기록 데이터 버스 라인들 중 어디로 전송되는지를 결정한다. 순차/병렬 변환 회로는 외부로부터 제공된 순차적인 기록 데이터를 기록 데이터 버스 라인들로 출력될 병렬적 데이터로 변환한다. 순차/병렬 변환 회로는 버스트 길이가 2m으로 설정되어 있을 때, 2m개의 변환된 병렬 기록 데이터를 동시에 2m개의 기록 데이터 버스 라인들로 출력한다. 순차/병렬 변환 회로는 버스트 길이가 m으로 설정되어 있을 때, m개의 변환된 병렬 기록 데이터를 교대로 m개의 기록 데이터 버스 라인들로 출력한다. 따라서, 특히 버스트 길이가 m일 때, 데이터 버스의 데이터 전송 사이클을 용이하게 할 수 있다. 이러한 결과, 높은 클럭 주파수의 동작이 실현될 수 있다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 클럭 생성기는 외부 클럭을 수신하여 내부 회로의 동기화 신호로서 내부 클럭을 생성한다. 데이터 입력 회로는 단일 기록 커맨드에 응답하여 외부 클럭에 동기하여 기록 데이터를 연속적으로 입력한다. 데이터 마스크 제어 회로(data masking control circuit)는 외부 클럭 에 동기하여 입력된 각 기록 데이터에 대하여 메모리 블록에 대한 기록 동작을 마스크한다. 같은 타이밍에 제공된 모든 기록 데이터는 제2 메모리 블록에 저장된 데이터가 용이하게 생성될 수 있도록 마스크되거나 기록된다. 따라서, 제2 메모리 블록에 저장된 데이터를 생성하는 회로가 단순화될 수 있다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 데이터 출력 회로는 내부 클럭으로부터 생성된 내부 데이터 스트로브 신호에 동기하여 메모리 블록들로부터 판독 데이터를 출력한다. 데이터 입력 회로는 외부로부터 제공된 외부 데이터 스트로브 신호에 동기하여 외부로부터 제공된 기록 데이터를 수신한다. 모드 레지스터는 외부 데이터 스트로브 신호와 내부 데이터 스트로브 신호가 동일한 단자를 통하여 입력되는지/출력되는지, 아니면, 각각 상이한 단자를 통하여 입력되는지/출력되는지 여부를 결정한다. 따라서, 사용자들의 다양한 요구에 부응할 수 있다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 리프레시 카운터가 리프레시 동작이 수행될 메모리 셀을 나타내고, 리프레시 요청이 있을 때마다 값이 증가한다(count up). 리프레시 카운터의 하위 비트(들)는 뱅크를 선택하기 위한 뱅크 어드레스에 대응한다. 각 뱅크에 대하여 리프레시 동작이 수행된다. 동시에 동작하는 리프레시 제어 회로들의 수를 줄이는 것은 또한 리프레시 동작 동안에 피크 전류를 감소시킬 수 있다. 또한, 복수의 뱅크가 교대로 리프레시되기 때문에, 리프레시 요청간의 생성 간격은 동일한 뱅크가 연속적으로 리프레시되는 경우에 비하여 단축된다. 따라서, 낮은 동작 주파수라 하더라도, 모든 메모리 셀을 리프레시하는데 필요한 기간을 만족시킬 수 있다. 다시 말해서, 동작 주파수의 하한선이 더 낮은 값으로 설정될 수 있다.
본 발명의 반도체 메모리의 다른 측면에 의하면, 반도체 메모리는 동일한 어드레스에 대응하는 복수의 비트 데이터를 분배하고 저장하기 위한 복수의 메모리 블록들을 포함하는 메모리 코어, 및 이 메모리 코어를 제어하기 위한 제어 회로를 포함한다. 제어 회로는 복수의 메모리 블록의 리프레시 동작을 독립적으로 제어하여, 한 메모리 블록과 다른 메모리 블록에 대하여 서로 다른 타이밍에 리프레시 동작을 수행할 수 있다.
복수의 메모리 블록에 대하여 독립적으로 리프레시 동작을 수행함으로써, 외부로부터의 액세스 요청과 리프레시 동작을 동시에 처리할 수 있다. 즉, 일부의 메모리 블록들에 대한 리프레시 동작과 나머지 다른 메모리 블록들에 대한 외부로부터의 액세스가 동일한 타이밍에 수행될 수 있다. 이로써, 메모리 코어의 단일 동작에 소요되는 액세스 시간 안에 판독 동작이 실현될 수 있다. 즉, 판독 동작이 신속히 수행될 수 있다.
여기서, 본 발명의 바람직한 실시예들을 도면을 참조하여 설명한다.
도 1은 반도체 메모리의 기록 동작의 기본 원리를 도시한다. 본 발명에 의하면, 기록 동작을 수행하는데 필요한 내부 회로의 동작 시간(내부 기록 사이클(tIRC))은, 외부로부터 제공되는 기록 커맨드들(WRA)의 최소한의 제공 간격(외부 기록 사이클(tERC))보다 짧아지도록 설계된다. 예를 들어, 외부 기록 사이클(tERC)이 4 클럭 사이클로 설정되면, 내부 기록 사이클(tIRC)은 외부 기록 사이클(tERC)보다 0.5 클럭만큼 짧은 3.5 클럭 사이클로 설정된다. 0.5 클럭 사이클의 여유분(margin)을 축적함으로써 복수의 기록 사이클 사이에 리프레시 사이클이 삽입될 수 있도록 한다.
구체적으로, 7개의 외부 기록 사이클(28 클럭 사이클) 동안에 기록 동작을 실제로 수행하는 내부 기록 사이클은 24.5 사이클이다. 즉, 기록 동작들이 7번 수행되는 동안 3.5 클럭 사이클의 여유분이 생성된다. 리프레시 동작이 이 여유분을 사용하여 수행됨으로써, 외부로터 인식되지 않고 리프레시 동작을 수행할 수 있다. 일반적으로, n 번의 내부 기록 동작과 한 번의 리프레시 동작이 n 번의 외부 기록 사이클 동안에 수행될 수 있을 때, 외부로부터 리프레시 동작이 숨겨질 수 있다.
도면에서, 제1 기록 동작(WRITE0)이 기록 커맨드(WRA)에 동기하여 수행되고, 따라서, 0.5 클럭의 여유분이 기록 동작을 완료한 이후에 생성된다. 다음의 기록 동작(WRITE1)이 수행되는 동안, 리프레시 요청(REFRQ)이 생성된다. 리프레시 동작(REFRQ)은 예를 들어, 클럭 신호(CLK)의 하강 에지에 동기하여 생성된다. 리프레시 동작은 기록 동작(WRITE1)의 수행이 완료되기를 기다린다. 또한, 제2 기록 커맨드(WRA)를 수반하는 기록 동작(WRITE2)은 리프레시 동작의 수행이 완료되기를 기다린다. 마찬가지로, 제3 기록 동작 내지 제7 기록 동작(WRITE3 ~ WRITE7)은 각각 직전에 선행하는 기록 동작(WRITE2 ~ WRITE6)의 수행이 완료되기를 기다린다.
기록 동작에서 반도체 메모리가 탑재되는 시스템이 언제 실제로 기록 데이터가 메모리 셀에 기록되는지의 타이밍을 인식할 필요는 없다. 따라서, 기록 커맨드(WRA)로부터 실제 기록 동작까지의 시간이 전술한 바와 같이 변경되더라도 시스템에 문제는 없다. 그런데, 데이터가 메모리 셀에 기록되기 전에 판독 커맨드가 메모리 셀에 제공될 때, 기록 데이터가 메모리 셀에 기록되기 전에 기록 데이터를 판독 데이터로서 출력하기 위한 제어 회로가 필요하다.
기록 동작(WRITE7)은 외부 기록 사이클과 내부 기록 사이클 간의 지연이 없어질 수 있도록 한다. 연속적인 기록 동작들(WRITE8 ~ WRITE9)은 기록 커맨드(WRA)에 동기하여 각각 수행된다.
도 2는 반도체 메모리의 판독 동작의 기본 원리를 도시한다. 반도체 메모리는 예를 들어, 9개의 데이터 입/출력 단자(DQ0 ~ DQ8)를 포함한다. 본 발명에 의하면, 9 비트 기록 데이터(DQ0 ~ DQ8)의 패리티 비트를 저장하기 위한 9개의 메모리 블록(BLKDQ0 ~ BLKDQ8)(제1 메모리 블록)과 하나의 메모리 블록(BLKP)(제2 메모리 블록)이 각각 데이터 입/출력 단자(DQ0 ~ DQ8)에 대응하여 형성된다. 즉, 기록 데이터(DQ0 ~ DQ8)와 패리티 비트는 하나의 코드 워드를 구성한다. 하나의 리프레시 동작이 임의의 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)에서 수행된다. 하나의 코드 워드로부터, 오직 하나의 메모리 블록에서의 리프레시 동작 때문에 판독 동작이 수행될 수 없다. 따라서, 리프레시 동작을 수행하는 메모리 블록을 제외한 메모리 블록들에 의해서만, 리프레시 동작을 수행하는 메모리 블록의 판독 데이터가 용이하게 재생성될 수 있다.
도면에 도시된 바와 같이, 기록 동작에 있어 기록 데이터(DQ0 ~ DQ8)가 "011101010"일 때, "1"의 수가 짝수가 되도록(짝수 패리티의 경우) "1"이 메모리 블록(BLKP)에 기록된다. 이 때, 그물 모양의(meshed) 메모리 블록(BLKDQ1)이 리프 레시 동작 중에 있을 때, 도 1에 도시된 바와 같이, 메모리 블록(BLKDQ1)의 기록 동작만이 시간에 따라 쉬프트됨으로써 수행된다.
판독 동작에서 메모리 블록(BLKDQ1)이 리프레시 동작 중에 있을 때, 메모리 블록(BLKDQ0, BLKDQ2 ~ BLKDQ8, BLKP)으로부터의 판독 데이터는 EOR 연산을 거친다. 또한, EOR 연산의 결과와 리프레시 동작 중인 메모리 블록(BLKDQ1)으로부터의 판독 데이터는 EOR 연산을 거치고, 그 결과는 판독 데이터로서 출력된다.
좀 더 정확히 말하면, 메모리 블록(BLKDQ1)으로부터의 데이터(원래의 판독 데이터가 아님)가 메모리 셀에 유지된 데이터와 동일할 때, 제1 EOR 연산의 결과는 반드시 "0"으로 된다. 따라서, 메모리 블록(BLKDQ1)으로부터의 데이터는 다음의 EOR 연산에 의하여 있는 그대로 출력된다.
한편, 메모리 블록(BLKDQ1)으로부터의 데이터가 메모리 셀에 유지된 데이터와 반대일 때, 제1 EOR 연산의 결과는 반드시 "1"이 된다. 따라서, 메모리 블록(BLKDQ1)으로부터의 데이터는 다음의 EOR 연산에 의하여, 반전되어 출력된다.
리프레시 동작을 수행하고 있지 않은 메모리 블록(BLKDQ0, BLKDQ2 ~ BLKDQ8)으로부터의 판독 데이터는 EOR 연산을 거치지 않고 직접 출력된다. 리프레시 동작 중인 메모리 블록(BLKDQ1)으로부터의 판독 데이터는 메모리 블록(BLKDQ0, BLKDQ2 ~ BLKDQ8)으로부터의 판독 데이터와 비교하여, EOR 게이트의 지연 시간 만큼 지연된다. 이 결과, 액세스 시간은 실질적으로 지연되지 않는다.
도 3은 본 발명에 의한 반도체 메모리의 제1 실시예를 도시한다. 이 반도체 메모리는 클럭 동기형의 DDR(Double Data Rate) 반도체 메모리로서 CMOS 공정을 사 용하여 실리콘 기판 위에 형성된다. DDR은 (데이터 스트로브 신호를 포함하는) 클럭 신호의 상승 에지와 하강 에지에 모두 동기하여 데이터를 입력하는/출력하는 인터페이스이다. 반도체 메모리는 입력 제어 블록(100), 리프레시 제어 블록(200), 데이터 제어 블록(300), 뱅크(BK0 ~ BK3), 모드 레지스터(2), 데이터 지연 제어 회로(4), 비지 레지스터(busy register, 6), 및 DLL(Delayed Lock Loop) 회로(8)를 포함하고 있다.
반도체 메모리는 클럭 신호(CLK)와 클럭 신호(/CLK, 외부 클럭)를 수신하기 위한 입력 단자들, 기준 전압(VREF), 칩 선택 신호(/CS), 기능 신호(FN), 뱅크 어드레스 신호(BA1 ~ BA0), 외부로부터의 리셋 신호(/RST)와 어드레스 신호(A14 ~ A0), 데이터 신호(DQA8 ~ DQA0, DQB8 ~ DQB0, DQC8 ~ DQC0, DQD8 ~ DQD0)와 데이터 스트로브 신호들(DQSA, DQSB, DQSC, DQSD)를 입/출력하기 위한 입/출력 단자들을 포함한다. 즉, 반도체 메모리는 9 비트의 데이터 입/출력 단자들과 네개의 데이터 그룹(BYTEA, BYTEB, BYTEC, BYTED)의 각각에 대한 데이터 스트로브 단자를 포함하는데, 이에 대하여서는 나중에 설명한다. "/"로 시작하는 기호는 부정의(negative) 논리를 나타낸다. 굵은 선으로 표시된 각 신호 라인은 복수의 라인들로 구성되어 있다. 굵은 선으로 표시된 신호 라인들이 연결된 일부 회로들은 각각의 신호 라인에 대응하는 복수의 회로로 구성되어 있다.
입력 제어 블록(100)은 클럭 버퍼(클럭 생성기, 10), 커맨드 래치/디코더(제1 커맨드 생성기, 제1 커맨드 수신기 회로, 12), 뱅크 어드레스 래치/디코더(14) 및 어드레스 래치(16)를 포함한다. 입력 제어 블록(100)의 상세한 내용은 나중에 도 10 내지 도 12를 참조하여 설명한다.
리프레시 제어 블록(200)은 리프레시 타이머(제2 커맨드 생성기, 20), 리프레시 요청 회로(제2 커맨드 수신기 회로, 22), 및 리프레시 카운터(24)를 포함한다. 리프레시 타이머(20)는 리프레시 시작 신호(REFS, 리프레시 커맨드)를 정기적 간격으로 출력한다. 리프레시 요청 회로(22)는 리프레시 시작 신호(REFS)를 수신하고, 내부 클럭 신호(ICLK)의 하강 에지에 동기하여 리프레시 요청 신호(REFRQ, 리프레시 커맨드)로서 수신된 신호를 출력한다. 리프레시 카운터(24)는 리프레시 요청 신호(REFRQ)의 상승 에지에 동기하여 카운트 동작을 수행하는데, 이는 리프레시 어드레스(REFAD)로서 출력된다. 리프레시 어드레스(REFAD)의 자세한 내용은 나중에 도 14를 참조하여 설명한다.
데이터 제어 블록(300)은 입/출력 제어 회로(30A, 30B, 30C, 30D)를 포함하고, 각각은 데이터 그룹(BYTEA, BYTEB, BYTEC, BYTED)에 대응한다. 데이터 제어 블록(300)의 자세한 내용은 도 27 내지 도 42를 참조하여 설명할 것이다.
모드 레지스터(2)는 커맨드 래치/디코더(12)로부터 모드 레지스터 커맨드 신호(MRSP)를 수신하고, 어드레스 신호에 따라 값이 설정된다. 모드 레지스터(2)는 레지스터의 내용에 따라 버스트 형 신호(SEQ/INT), 버스트 길이 신호(BL4/2) 등을 내부 회로로 출력한다. 모드 레지스터(2)의 상세한 사항은 나중에 도 5와 도 6을 참조하여 설명한다.
데이터 지연 제어 회로(4)는 커맨드 래치/디코더(12)로부터 판독 커맨드 신호(RDAP, RLALP)와 기록 커맨드 신호(WRAP, WLALP)를 수신하고, 내부 클럭 신호(ICLK, /ICLK)를 수신하여, 데이터 제어 블록(300)으로 제어 신호를 출력한다.
비지(busy) 레지스터(6)는 뱅크(BK0 ~ BK3)로부터 비지 신호(BDQ0 ~ BDQ8, BDQP)를 수신하고, 수신된 신호들을 데이터 입/출력 단자들의 각 비트 수에 대해 OR 동작을 거치게 하며, 이들을 비지 플래그 신호(BFDQ0 ~ BFDQ8)(BFDQ#)로서 출력한다.
DLL 회로(8)는 내부 클럭 신호(ICLK)의 위상을 조정하고, 위상 조정 클럭 신호(PCLK)를 생성한다. 판독 동작에 있어, 데이터 제어 블록(300)의 입/출력 제어 회로(30A, 30B, 30C, 30D)는 각각 위상 조정 클럭 신호(PCLK)에 동기하여 데이터 스트로브 신호(DQSA, DQSB, DQSC, DQSD)를 출력한다. 즉, DLL 회로(8)는 데이터 스트로브 신호(DQSA, DQSB, DQSC, DQSD)가 외부로부터 제공되는 클럭 신호(CLK)와 동상(in phase)에 있도록 하는 회로이다.
각 뱅크(BK0 ~ BK3)는 DRAM의 메모리 셀을 포함하는 복수의 메모리 코어를 포함하고 있다. 뱅크(BK0 ~ BK3)의 자세한 내용에 대하여는 나중에 도 13 내지 도 26을 참조하여 설명한다.
도 4는 커맨드의 입력에 응답하는 반도체 메모리의 상태 전이도이다. 반도체 메모리는 타원형의 굵은 선으로 표시된 3개의 동작 모드와 타원형의 가는 선으로 표시된 4개의 동작 상태를 포함하고 있다. 동작 모드는 판독 동작 모드(READ), 기록 동작 모드(WRITE), 및 모드 레지스터 설정 모드(MODE)이다. 동작 상태는 스탠바이 상태(DESL, Stand By), 활성화 상태(ACTIVER, ACTIVEW), 및 리셋 상태(CHIP-RESET)이다. 이 반도체 메모리는 외부로부터 인식되는 일 없이 자동적 으로 리프레시 동작을 수행하기 때문에, 리프레시 모드 또는 리프레시 커맨드는 존재하지 않는다.
각 동작 모드와 동작 상태는, 각각이 판독 커맨드(RDA), 기록 커맨드(WRA), 모드 레지스터 설정 커맨드(MRS), 하위 어드레스 래치 커맨드(LAL), 또는 선택 해제 커맨드(DESL)를 수신할 때, 또는 리셋 단자(/RST)가 소정의 전압을 수신할 때, 쉬프트된다. 화살표는 쉬프트의 방향을 나타낸다.
RDA 커맨드, WRA 커맨드, MRS 커맨드, LAL 커맨드, DESL 커맨드는 칩 선택 신호(/CS)와 기능 신호(FN)에 의해 결정되는 커맨드이다. 이러한 커맨드들 중에 가는 선의 화살표로 표시되는 RDA 커맨드와 WRA 커맨드는 스탠바이 상태(DESL)에서 받아들여질 수 있는 제1 커맨드들이다. 점선의 화살표로 표시되는 MRS 커맨드와 LAL 커맨드는 활성화 상태(ACTIVER, ACTIVEW)에서 받아들여질 수 있는 제2 커맨드들이다. 즉, 제2 커맨드들은 제1 커맨드들을 수신한 이후에 받아들여질 수 있는 커맨드들이다. 따라서, 판독 동작 모드, 기록 동작 모드, 및 모드 레지스터 설정 모드로 쉬프트하기 위해서는 제1 커맨드들을 수신하고, 그 이후에 제2 커맨드들을 수신할 필요가 있다. 또한, 활성화 상태(ACTIVER, ACTIVEW)의 기간은 제1 커맨드들을 수신한 이후부터 제2 커맨드들을 수신할 때까지의 기간이다.
굵은 실선으로 표시된 화살표는 외부로부터의 커맨드와 상관없이 자동적으로 스탠바이 상태(DESL)로 돌아가는 것을 의미한다. 즉, 판독 동작, 기록 동작, 및 모드 레지스터(2)의 설정 동작 이후에, 반도체 메모리는 외부로부터 제어됨이 없이 스탠바이 상태(DESL)로 쉬프트한다.
기록 동작 모드에서의 "버퍼"는 반도체 메모리가 늦은 기록 기능(late writing function)을 가지고 있다는 것을 의미한다는 것을 유의해야 한다. 늦은 기록 기능은 버퍼에 기록 데이터를 일시적으로 유지하고, 다음의 기록 커맨드에 동기하여 그 유지된 기록 데이터를 메모리 셀에 기록하는 기능이다. 늦은 기록 기능 때문에 판독 동작 이후에 기록 커맨드(WRA)를 신속히 제공하여, 데이터의 버스 점유율을 향상시키는 것이 가능하다.
도 5는 제1 커맨드들과 제2 커맨드들을 받아들이는 신호의 상태를 도시한다. 도면에서 기호 "H"는 하이 레벨을 도시하고, 기호 "L"은 로우 레벨을 도시하고, 기호 "X"는 임의적으로 하이 레벨 또는 로우 레벨을 도시하고, 기호 "BA"는 뱅크 어드레스(bank address)를 도시하며, 기호 "UA"는 상위 어드레스(upper adress)를 도시한다. 또한 기호 "VW", "TE", "V" 각각은 소정의 하이 레벨 또는 로우 레벨을 도시한다. 제1 커맨드들과 제2 커맨드들은 클럭 신호(CLK)의 연속적인 상승 에지와 하강 에지에 동기하여 각각 수신된다.
도 3에 도시된 커맨드 래치/디코더(12)는 칩 선택 신호(/CS)가 하이 레벨에 있을 때, 클럭 신호(CLK)의 상승 에지에 동기하여 DESL 커맨드를 받아들인다. DESL 커맨드를 수신함으로써, 반도체 메모리의 상태가 다시 스탠바이 상태(DESL)가 된다. 즉, DESL 커맨드는 칩의 비선택(non-selection) 상태를 유지하는 커맨드이다.
커맨드 래치/디코더(12)는 칩 선택 신호(/CS)가 로우 레벨에 있고, 기능 신호(FN)가 하이 레벨에 있을 때, 클럭 신호(CLK)의 상승 에지에 동기하여 RDA 커맨 드를 받아들인다. RDA 커맨드의 수신과 동시에 뱅크 어드레스 신호(BA1 ~ BA0)와 어드레스 신호(A14 ~ A0)가 각각 뱅크 어드레스(BA)와 상위 어드레스(UA)로서 수신된다. RDA 커맨드를 수신함으로써, 반도체 메모리의 상태가 도 4에 도시된 활성화 상태(ACTIVER)로 된다.
커맨드 래치/디코더(12)는 칩 선택 신호(/CS)가 로우 레벨에 있고, 기능 신호(FN)가 로우 레벨에 있을 때, 클럭 신호(CLK)의 상승 에지에 동기하여 WRA 커맨드를 받아들인다. WRA 커맨드의 수신과 동시에 뱅크 어드레스 신호(BA1 ~ BA0)와 어드레스 신호(A14 ~ A0)가 각각 뱅크 어드레스(BA)와 상위 어드레스(UA)로서 수신된다. WRA 커맨드를 수신함으로써, 반도체 메모리의 상태가 도 4에 도시된 활성화 상태(ACTIVEW)로 된다.
활성화 상태(ACTIVER)에서, 커맨드 래치/디코더(12)는 칩 선택 신호(/CS)가 하이 레벨에 있을 때, 클럭 신호(CLK)의 하강 에지에 동기하여 LAL 커맨드를 받아들인다. LAL 커맨드의 수신과 동시에 어드레스 신호(A5 ~ A0)가 하위 어드레스(LA)로서 수신된다. LAL 커맨드를 수신한 이후에, 반도체 메모리는 판독 동작을 수행한 이후에 스탠바이 상태(DESL)로 돌아간다.
활성화 상태(ACTIVEW)에서, 커맨드 래치/디코더(12)는 칩 선택 신호(/CS)가 하이 레벨에 있을 때, 클럭 신호(CLK)의 하강 에지에 동기하여 LAL 커맨드를 받아들인다. LAL 커맨드의 수신과 동시에 어드레스 신호(A14 ~ A7)와 어드레스 신호(A5 ~ A0)가 각각 가변의 판독 길이(VW)와 하위 어드레스(LA)로서 수신된다. 가변의 판독 길이(VW)는 기록 데이터의 마스크를 설정하기 위한 비트인데, 나중에 도 7 내지 도 9를 참조하여 설명한다. LAL 커맨드를 수신한 이후에, 반도체 메모리는 기록 동작을 수행한 이후에 스탠바이 상태(DESL)로 돌아간다. 이렇게 해서, 판독 동작과 기록 동작 중 어느 것이 수행되는지를 결정하는 것은 오직 LAL만은 아니다. 다시 말해서, 동작 모드가 제1 커맨드들과 제2 커맨드들에 기초하여 좁혀진다(narrowed down).
활성화 상태(ACTIVER)에서, 커맨드 래치/디코더(12)는 칩 선택 신호(/CS)가 로우 레벨에 있을 때, 클럭 신호(CLK)의 하강 에지에 동기하여 MRS 커맨드를 받아들인다. MRS 커맨드의 수신과 동시에 어드레스 신호(A7, A3, A2 ~ A0)가 각각 테스트 인에이블 비트(TE), 버스트 형 비트, 및 버스트 길이 비트들로서 수신된다.
테스트 인에이블 비트(TE)는 정상 모드 아니면 테스트 모드로서 동작 모드를 설정하기 위한 비트이다. 테스트 인에이블 비트(TE)가 로우 레벨에 있을 때, 정상 동작 모드로 쉬프트되고, 테스트 인에이블 비트(TE)가 하이 레벨에 있을 때, 테스트 모드로 쉬프트된다. 테스트 모드는 제조 공정 중에 반도체 제조업자에 의해 사용되는 모드이다. 즉, 사용자가 MRS 커맨드를 제공할 때, 어드레스(A7)는 로우 레벨에 있을 필요가 있다.
버스트 형(BT)은 판독 데이터가 출력되는 순서를 설정하기 위한 비트이다. 버스트 형(BT)이 로우 레벨에 있을 때, 판독 데이터는 순차 모드로 출력되고, 버스트 형(BT)이 하이 레벨에 있을 때, 판독 데이터는 인터리브(interleave) 모드로 출력된다. 순차 모드와 인터리브 모드의 상세한 내용은 나중에 도 6을 참조하여 설명한다.
버스트 길이(BL)는 하나의 판독 동작에 의해 판독 데이터를 연속적으로 출력하는 횟수와 하나의 기록 동작에 의하여 기록 데이터를 연속적으로 출력하는 횟수를 설정한다. 버스트 길이 비트가 이진수로 "001"일 때, 버스트 길이(BL)는 "2"로 설정되고, 버스트 길이 비트가 이진수로 "010"일 때, 버스트 길이(BL)는 "4"로 설정된다.
도 6은 판독 동작에서 데이터가 출력되는 순서를 도시한다. 도면에서 "버스트 카운트(Burst Count)"는 출력될 판독 데이터의 어드레스를 도시한다. 버스트 길이(BL)가 "2"일 때, LAL 커맨드가 제공되는 어드레스(A0)에 의해 리드되는 동안, 2개의 판독 데이터가 연속적으로 출력된다.
버스트 길이(BL)가 "4"이고 순차 모드인 경우에, LAL 커맨드가 제공되는 어드레스(A1 ~ A0)에 의해 리드되는 동안, 4개의 판독 데이터가 연속적으로 출력된다. 버스트 길이(BL)가 "4"이고 인터리브 모드인 경우에, LAL 커맨드가 제공되는 어드레스 신호(A1 ~ A0)가 "10"과 "00"일 때, 판독 데이터가 출력될 순서는 순차 모드의 경우와 동일하다. 한편, 어드레스 신호(A1 ~ A0)가 "01"과 "11"일 때, 순차 모드의 경우와 비교할 때 제2 어드레스와 제4 어드레스가 대체되어, 판독 데이터가 출력된다.
도 7은 데이터 마스크 제어 회로(도시되지 않음)로 제공되는 가변의 기록 길이(VW)의 세부를 도시한다. 가변의 기록 길이(VW)를 설정하기 위한 어드레스(A14 ~ A13)(VWa0 ~ VWa1), 어드레스(A12 ~ A11)(VWb0 ~ VWb1), 어드레스(A10 ~ A9)(VWc0 ~ VWc1), 및 어드레스(A8 ~ A7)(VWd0 ~ VWd1)가 각각 데이터 그룹(BYTEA, BYTEB, BYTEC, BYTED)에 할당되어 있다. 즉, 2 비트의 비트(VW0 ~ VW1)가 기록 데이터 중 어떤 비트가 마스크되는지를 결정한다. 도면에서 기록 데이터(D0, D1, D2, D3)는 버스트 길이(BL)에 따라 제공된 기록 데이터를 도시하고, 그물 모양의 기록 데이터는 마스크되어 있음을 도시한다. 마스크된 기록 데이터는 메모리 셀에 기록되지 않는다.
버스트 길이(BK)가 "2"인 경우에, 데이터 마스크 제어 회로는 비트(VW0 ~ VW1)가 "00"일 때 모든 기록 데이터를 마스크하고, 비트(VW0 ~ VW1)가 "10"일 때 모든 기록 데이터를 기록하며, 비트(VW0 ~ VW1)가 "11"일 때 처음 하나의 워드만을 기록한다. 하나의 워드는 각 데이터 그룹(BYTEA, BYTEB, BYTEC, BYTED)의 9 비트 기록 데이터(DQ8 ~ DQ0)을 의미한다는 것을 알아야 한다.
버스트 길이(BK)가 "4"인 경우에, 데이터 마스크 제어 회로는 비트(VW0 ~ VW1)가 "00"일 때 모든 기록 데이터를 마스크하고, 비트(VW0 ~ VW1)가 "01"일 때 모든 기록 데이터를 기록하며, 비트(VW0 ~ VW1)가 "10"일 때 처음 두개의 워드만을 기록하며, 비트(VW0 ~ VW1)가 "11"일 때 처음 하나의 워드만을 기록한다.
도 8 및 도 9는 버스트 길이(BK)가 "2"와 "4"인 경우에, 가변의 기록 길이(VW)가 변경될 때의 기록 동작을 도시한다.
도 8에 도시된 바와 같이, 클럭 신호(CLK)의 0번째 상승 에지와 하강 에지에 각각 동기하여 기록 커맨드(WRA)와 하위 어드레스 래치 커맨드(LAL)가 제공된다. 어드레스(A14 ~ A13)(VWa0 ~ VWa1), 어드레스(A12 ~ A11)(VWb0 ~ VWb1), 어드레스(A10 ~ A9)(VWc0 ~ VWc1), 및 어드레스(A8 ~ A7)(VWd0 ~ VWd1)는 각각 "00", "01", "11" 및 "11"인데, 여기에 LAL 커맨드가 제공된다. 기록 데이터(D0, D1)는 클럭 신호(CLK)의 세번째 상승 에지와 하강 에지에 동기하여 각 데이터 그룹(BYTEA, BYTEB, BYTEC, BYTED)에 제공된다. LAL 커맨드가 제공되는 어드레스(A14 ~ A7)에 따라, 반도체 메모리가 기록 데이터를 마스크한다.
마찬가지로, 기록 커맨드(WRA)와 하위 어드레스 래치 커맨드(LAL)가 클럭 신호(CLK)의 네번째 상승 에지와 하강 에지에 각각 동기하여 제공된다. 어드레스(A14 ~ A13)(VWa0 ~ VWa1), 어드레스(A12 ~ A11)(VWb0 ~ VWb1), 어드레스(A10 ~ A9)(VWc0 ~ VWc1), 및 어드레스(A8 ~ A7)(VWd0 ~ VWd1)는 각각 "11", "00", "01" 및 "11"인데, 여기에 LAL 커맨드가 제공된다. 기록 데이터(D0, D1)는 클럭 신호(CLK)의 일곱번째 상승 에지와 하강 에지에 동기하여 각 데이터 그룹(BYTEA, BYTEB, BYTEC, BYTED)에 제공된다. LAL 커맨드가 제공되는 어드레스(A14 ~ A7)에 따라, 반도체 메모리가 기록 데이터를 마스크한다.
도 9에 도시된 바와 같이, 기록 커맨드(WRA)와 하위 어드레스 래치 커맨드(LAL)가 클럭 신호(CLK)의 0번째 상승 에지와 하강 에지에 각각 동기하여 제공된다. 어드레스(A14 ~ A13)(VWa0 ~ VWa1), 어드레스(A12 ~ A11)(VWb0 ~ VWb1), 어드레스(A10 ~ A9)(VWc0 ~ VWc1), 및 어드레스(A8 ~ A7)(VWd0 ~ VWd1)는 각각 "00", "01", "10" 및 "11"인데, 여기에 LAL 커맨드가 제공된다. 기록 데이터(D0, D1, D2, D3)는 클럭 신호(CLK)의 두번째와 세번째의 상승 에지와 하강 에지에 동기하여 각 데이터 그룹(BYTEA, BYTEB, BYTEC, BYTED)에 제공된다. LAL 커맨드가 제공되는 어드레스(A14 ~ A7)에 따라, 반도체 메모리가 기록 데이터를 마스크한다.
마찬가지로, 기록 커맨드(WRA)와 하위 어드레스 래치 커맨드(LAL)가 클럭 신호(CLK)의 네번째 상승 에지와 하강 에지에 각각 동기하여 제공된다. 어드레스(A14 ~ A13)(VWa0 ~ VWa1), 어드레스(A12 ~ A11)(VWb0 ~ VWb1), 어드레스(A10 ~ A9)(VWc0 ~ VWc1), 및 어드레스(A8 ~ A7)(VWd0 ~ VWd1)는 각각 "11", "10", "01" 및 "00"인데, 여기에 LAL 커맨드가 제공된다. 기록 데이터(D0, D1, D2, D3)는 클럭 신호(CLK)의 여섯번째와 일곱번째의 상승 에지와 하강 에지에 동기하여 각 데이터 그룹(BYTEA, BYTEB, BYTEC, BYTED)에 제공된다. LAL 커맨드가 제공되는 어드레스(A14 ~ A7)에 따라, 반도체 메모리가 기록 데이터를 마스크한다.
도 10은 도 3에 도시된 입력 제어 블록(100)의 세부를 도시한다. 클럭 버퍼(10)는 서로 상보적인 클럭 신호(CLK, /CLK)를 수신하여, 서로 상보적인 내부 클럭 신호(ICLK, /ICLK)를 생성하기 위한 두개의 차동 증폭기를 포함한다. 도면에서, 내부 클럭 신호(/ICLK)의 신호 라인은 점선으로 표시되어 있다.
커맨드 래치/디코더(12)는 각각 칩 선택 신호(/CS)와 기능 신호(FN)를 수신하는 차동 증폭기와, 래치 회로(12a, 12b, 12c, 12d, 12e, 12f)와, 래치 회로(12a ~ 12f)로부터의 출력을 수신하여 판독 커맨드 신호(RDAP, RLALP), 기록 커맨드 신호(WRAP, WLALP), 및 모드 레지스터 커맨드 신호(MRSP)를 생성하는 디코딩 회로(5개의 AND 회로)를 포함한다.
래치 회로(12a, 12b)(제1 커맨드 수신기 회로)는 도 5에 도시된 제1 커맨드들을 판단하기 위하여, 내부 클럭 신호(ICLK)의 상승 에지들에 동기하여 각각 칩 선택 신호(/CS)와 기능 신호(FN)를 받아들인다. 래치 회로(12c, 12d, 12e, 12f)는 도 5에 도시된 제2 커맨드들을 판단하기 위하여, 내부 클럭 신호(/ICLK)의 상승 에지들(클럭 신호(CLK)의 하강 에지들)에 동기하여 각각 칩 선택 신호(/CS), 기록 커맨드 신호(WRAP), 및 판독 커맨드 신호(RDAP)를 받아들인다.
디코딩 회로(제1 커맨드 생성기)는 래치 회로(12a ~ 12f)로부터의 출력을 수신하고, 도 5에 도시된 논리 회로에 따라 커맨드 신호(RDAP, RLALP, WRAP, WLALP,MRSP)를 생성한다. 커맨드 신호(RDAP, WRAP)는 각각 RDA 커맨드와 WRA 커맨드(모두 제1 커맨드임)가 제공될 때 활성화된다. 커맨드 신호(RLALP, WLALP)는 각각 RDA 커맨드 이후에 LAL 커맨드, WRA 커맨드 이후에 LAL 커맨드(모두 제2 커맨드임)가 제공될 때 활성화된다. 커맨드 신호(MRSP)는 RDA 커맨드 이후에 MRS 커맨드(제2 커맨드)가 제공될 때 활성화된다.
뱅크 어드레스 래치/디코더(14)는 뱅크 어드레스 신호(BA1 ~ BA0)를 수신하기 위한 차동 증폭기, 플립 플롭 회로(14a), 및 뱅크 디코더(14b)를 포함한다. 플립 플롭 회로(14a)는 내부 클럭 신호(ICLK)의 상승 에지에 동기하여 뱅크 어드레스 신호(BA1 ~ BA0)를 받아들인다. 뱅크 디코더(14b)는 플립 플롭 회로(14a)으로부터의 출력에 따라 임의의 뱅크 신호(BNK3 ~ BNK0)를 활성화한다.
어드레스 래치(16)는 내부 클럭 신호(ICLK, /ICLK)의 상승 에지에 각각 동기하여 동작하는 플립 플롭 회로(16a, 16b)를 포함한다. 플립 플롭 회로(16a)는 도 5의 제1 커맨드들에 대응하고, 어드레스 신호(A14 ~ A0)를 출력하는데, 여기에 상위 어드레스 신호(UA14 ~ UA0)로서 RDA 커맨드와 WRA 커맨드가 제공된다. 플립 플롭 회로(16b)는 도 5의 제2 커맨드들에 대응하고, 어드레스 신호(A14 ~ A0)를 출력 하는데, 여기에 하위 어드레스 신호(LA14 ~ LA0)로서 LAL 커맨드와 MRS 커맨드가 제공된다.
도 11은 도 10에 도시된 각 래치 회로(12a ~ 12f)(LAT)와 각 플립 플롭 회로(14a, 16a, 16b)(DEF)의 세부가 도시되어 있다.
래치 회로(LAT)는 입력과 출력이 서로 연결된 2개의 CMOS 인버터, CMOS 인버터와 접지선 사이에 배열되어 각각 입력 신호(D)와 그 반전 신호를 수신하는 nMOS 트랜지스터, 및 클럭 신호(CLK)에 의하여 제어되고 래치 회로(LAT)를 활성화하는 pMOS 트랜지스터와 nMOS 트랜지스터를 포함한다.
래치 회로(LAT)는 클럭 신호(CK)의 상승 에지에 동기하여 활성화되고, 이 때 수신되고 있는 입력 신호(D)의 레벨에 따라 서로 상보적인 출력 신호(Q, /Q)를 출력한다. 래치 회로(LAT)는 클럭 신호(CK)가 로우 레벨에 있을 때, 출력 신호(Q, /Q) 모두를 로우 레벨로 변환한다.
플립 플롭 회로(DFF)는 3 상태(tri-state) 버퍼와 래치를 래치 회로(LAT)의 출력에 더함으로써 구조가 만들어진다. 로우 레벨과 하이 레벨에서 입력 신호(D)를 받아들이는데 있어서, 도면의 상부 쪽에 있는 3 상태 버퍼는 각각 로우 레벨과 하이 레벨을 출력하고, 도면의 하부 쪽에 있는 3 상태 버퍼는 각각 하이 레벨과 로우 레벨을 출력한다. 클럭 신호(CK)가 로우 레벨에 있을 때, 두개의 3 상태 버퍼 모두 출력을 턴 오프(turn off)한다. 이 때, 래치에 유지된 데이터는 출력 신호(Q, /Q)로서 출력된다.
도 12는 도 3에 도시된 입력 제어 블록(100)의 동작을 도시한다. 이 실시예 에에서, 판독 커맨드(RDA), 하위 어드레스 래치 커맨드(LAL), 기록 커맨드(WRA), 하위 어드레스 래치 커맨드(LAL), 판독 커맨드(RDA), 및 모드 레지스터 설정 커맨드(MRS)가 순차적으로 제공되는 경우가 설명될 것이다.
먼저, RAD 커맨드와 LAL 커맨드가 클럭 신호(CLK)의 0번째 상승 에지와 하강 에지에 동기하여 제공된다. 도 10에 도시된 커맨드 래치/디코더(12)는 각각 RDA 커맨드와 LAL 커맨드에 따라 판독 커맨드 신호(RDAP, RLALP)를 활성화한다(도 12a). 뱅크 래치/디코더(14)는 클럭 신호(CLK)의 상승 에지에 동기하여 뱅크 어드레스 신호(BA1 ~ BA0)(= 00)를 받아들이고, 뱅크 신호(BNK0)를 활성화한다(도 12b). 어드레스 래치(16)는 클럭 신호(CLK)의 상승 에지와 하강 에지에 각각 동기하여 어드레스 신호(A14 ~ A0)(= A, B)를 받아들이고, 어드레스 신호(UA14 ~ UA0)와 어드레스 신호(LA14 ~ LA0)로서 이들을 출력한다(도 12c).
도 10에 도시된 래치 회로(LAT)와 플립 플롭 회로(DFF)는 클럭 신호(CLK, /CLK)에 동기하여 항상 동작한다. 따라서, 뱅크 어드레스 신호(BA)(= 01)와 어드레스 신호(A14 ~ A0)(= C, D)는 클럭 신호(CLK)의 첫번째 상승 에지와 하강 에지에 각각 동기하여 수신된다(도 12d). 그러나, 이와 같은 어드레스는 유효하지 못하다. 도면에서 굵은 선으로 표시된 어드레스는 유효(effective) 어드레스이다.
다음으로, WRA 커맨드와 LAL 커맨드가 클럭 신호(CLK)의 두번째 상승 에지와 하강 에지에 동기하여 제공된다. 도 10에 도시된 커맨드 래치/디코더(12)는 각각 WRA 커맨드와 LAL 커맨드에 따라 기록 커맨드 신호(WRAP, WLALP)를 활성화한다(도 12e). 뱅크 래치/디코더(14)는 클럭 신호(CLK)의 상승 에지에 동기하여 뱅크 어드 레스 신호(BA1 ~ BA0)(= 10)를 받아들이고, 뱅크 신호(BNK2)를 활성화한다(도 12f). 어드레스 래치(16)는 클럭 신호(CLK)의 상승 에지와 하강 에지에 각각 동기하여 어드레스 신호(A14 ~ A0)(= E, F)를 받아들이고, 어드레스 신호(UA14 ~ UA0)와 어드레스 신호(LA14 ~ LA0)로서 이들을 출력한다(도 12g).
다음으로, RDA 커맨드와 MRS 커맨드가 클럭 신호(CLK)의 네번째 상승 에지와 하강 에지에 동기하여 제공된다. 도 10에 도시된 커맨드 래치/디코더(12)는 각각 RDA 커맨드와 MRS 커맨드에 따라 판독 커맨드 신호(RDAP)와 모드 레지스터 커맨드 신호(MRSP)를 활성화한다(도 12h). 또한, 전술한 바와 유사하게, 뱅크 어드레스(BA)와 어드레스 신호(A14 ~ A0)가 수신된다.
도 13은 뱅크(BK0 ~ BK3)의 세부를 도시한다. 도면에서 임의의 뱅크(BK0 ~ BK3)가 도시되어 있다. 각 뱅크(BK0 ~ BK3)는 데이터 그룹(BYTEA, BYTEB, BYTEC, BYTED)에 대응하는 큰 메모리 블록(DQA, DQB, DQC, DQD), 제1 제어 회로(40), 제2 제어 회로(50), 및 비지 레지스터(60)를 포함한다. 각 메모리 블록(DQA, DQB, DQC, DQD)은 도 2에 도시된 바와 같이, 데이터 입/출력 단자(DQ0 ~ DQ8)와 패리티 비트에 각각 대응하는 작은 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)을 포함한다. 메모리 블록(BLKDQ0 ~ BLKDQ8)은 제1 메모리 블록으로서 동작하고, 메모리 블록(BLKP)은 제2 메모리 블록으로서 동작한다.
제1 제어 회로(40)(판독 제어 회로)는 판독 동작과 기록 동작을 제어한다. 제2 제어 회로(50)(기록 제어 회로)는 리프레시 동작과 기록 동작을 제어한다. 즉, 판독 동작은 항상 제1 제어 회로(40)의 제어에 의해 수행되고, 리프레시 동작 은 항상 제2 제어 회로(50)에 의해 수행된다. 또한, 리프레시 동작과 경쟁할 가능성이 있는, 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)에 대한 기록 동작은, 제2 제어 회로(50)에 의하여 수행되고, 리프레시 동작과 경쟁할 가능성이 없는, 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)에 대한 기록 동작(WR)은, 제1 제어 회로(40)의 제어에 의하여 수행된다.
제1 제어 회로(40)는 어드레스 레지스터(42), 상태 제어 회로(44), 및 타이밍 신호 생성기(46)을 포함한다. 제2 제어 회로(50)는 어드레스 레지스터(52), 상태 제어 회로(54), 타이밍 신호 생성기(56), 및 아비터(58)을 포함한다.
제1 제어 회로(40)에서 어드레스 레지스터(42)는 어드레스 신호(UA14 ~ UA0, LA5 ~ AL0)를 수신하여, 수신된 신호를 어드레스 버스(NADR)로 출력한다. 상태 제어 회로(44)는 판독 커맨드 신호(RDAP)와 기록 커맨드 신호(WRAP)를 수신하여, 내부 클럭 신호(ICLK)에 동기하여 기준 타이밍 신호를 생성한다. 타이밍 신호 생성기(46)는 이 기준 타이밍 신호에 동기하여 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)을 동작시키기 위한 타이밍 신호들을 생성하고, 이들을 타이밍 신호 버스(NTMG)로 출력한다.
제2 제어 회로(50)에서 아비터(58)는 외부로부터의 기록 커맨드(WRA) 또는 내부에서 주기적으로 생성되고 있는 리프레시 요청(REFRQ) 중 어느 것에 우선 순위를 줄지를 결정하여, 그 결과를 어드레스 레지스터(52)와 상태 제어 회로(54)에 출력한다. 아비터(58)로부터의 출력에 기초하여, 어드레스 레지스터(52)는 어드레스 신호(UA14 ~ UA0, LA5 ~ LA0) 또는 리프레시 어드레스 신호(REFAD)를 어드레스 버 스(BADR)로 출력한다. 아비터(58)로부터의 출력에 기초하여, 상태 제어 회로(54)는 내부 클럭 신호(ICLK)에 동기하는 기준 타이밍 신호를 생성한다. 기준 타이밍 신호에 기초하여, 타이밍 신호 생성기(56)는 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)을 동작시키기 위한 타이밍 신호들을 생성하고, 이들을 타이밍 신호 버스(BTMG)로 출력한다.
비지 레지스터(60)는 도 3의 리프레시 카운터(24)로부터 출력된 리프레시 어드레스(REFAD)의 디코딩된 리프레시 블록 번호(REFDQ#)인 비지 신호(BDQ#)(BDQ0 ~ BDQ8, BDQP)를 유지한다. 비지 레지스터(60)는 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)에 각각 비지 신호(BDQ0 ~ BDQ8, BDQP)를 출력한다. 임의의 비지 신호(BDQ#)가 각각의 뱅크(BK0 ~ BK3)에서 (하이 레벨로) 활성화된다.
각 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)은 선택기(ASEL, TSEL), 어드레스 레지스터(AREG), 메모리 코어, 판독 증폭기(RAMP), 기록 증폭기(WAMP), 및 기록 버퍼(WBUF)를 포함한다. 각 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)의 선택기(ASEL, TSEL)는 각각 비지 신호(BDQ#)(BDQ0 ~ BDQ8, BDQP)에 따라 동작한다. 비지 신호(BDQ#)가 하이 레벨에 있을 때, 선택기(ASEL, TSEL)는 도면에서 단자 "1"로 제공된 신호를 선택하고, 비지 신호(BDQ#)가 로우 레벨에 있을 때, 선택기(ASEL, TSEL)는 도면에서 단자 "0"으로 제공된 신호를 선택한다. 즉, 하이 레벨 비지 신호(BDQ#)에 대응하는 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP 중 임의의 것)은 제2 제어 회로(50)에 의해 제어되어, 리프레시 동작 또는 기록 동작을 수행한다. 로우 레벨 비지 신호(BDQ#)에 대응하는 메모리 블록은 제1 제어 회로(40)에 의해 제어되 어, 판독 동작 또는 기록 동작을 수행한다.
판독 증폭기(RAMP)는 메모리 코어로부터 판독된 판독 데이터를 증폭하고, 이것들을 판독 데이터 버스 라인(RDB)으로 출력한다. 기록 증폭기(WAMP)는 기록 데이터 버스 라인(WDB)로부터 기록 버퍼(WBUF)를 통하여 제공된 기록 데이터를 메모리 코어로 출력한다.
도 14는 도 3에 도시된 리프레시 카운터(24)의 리프레시 동작의 개요와 동작을 도시한다. 리프레시 뱅크 번호(REFBNK#)(BK0 ~ BK3 중 임의의 것), 리프레시 블록 번호(REFDQ#)(BLKDQ0 ~ BLKDQ8, BLKP 중 임의의 것), 및 상위 어드레스(UA#)가 리프레시 카운터(24)의 하위 비트로부터 순서대로 할당되어 있다. 리프레시 요청(REFRQ)이 생성될 때, 먼저, 뱅크(BK0 ~ BK3)는 순차적으로 리프레시되도록 스위치되고, 다음으로, 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)이 순차적으로 스위치되고, 다음으로 상위 어드레스(UA)가 스위치된다. 리프레시 블록 번호(REFDQ#)(10개의 가능한 방식)는 2의 n승(nth power of two)으로 표현될 수 없기 때문에, 리프레시 카운터(24)는 메모리 블록(BLKP)을 보여준 이후에 DQ 블록(BLKDQ0)을 보여줄 수 있도록 제어된다. 도면에 도시된 실시예에서 뱅크(BK0 ~ BK3)내의 메모리 블록(BLKDQ0)은 제1 내지 제4 리프레시 요청(REFRQ)에 의해 순차적으로 리프레시되고, 뱅크(BK0 ~ BK1)내의 메모리 블록(BLKDQ1)은 제5 내지 제6 리프레시 요청(REFRQ)에 의해 순차적으로 리프레시된다.
전술한 바와 같이, 각 뱅크(BK0 ~ BK3)에서, 하나의 리프레시 동작이 7개의 외부 기록 사이클(28 클럭 사이클) 동안에 수행되므로, 2개 이상의 기록 커맨드(WRA)를 축적하지 않는다. 리프레시 동작이 수행될 뱅크(BK)는 리프레시 요청(REFRQ)이 있을 때마다 스위치되므로, 리프레시 요청(REFRQ)을 생성하는 간격은 도면에 도시된 바와 같이, 7개의 클럭 사이클로 될 수 있다. 리프레시 요청(REFRQ)을 생성하는 간격이 짧아질 수 있기 때문에, 짧은 시간 내에 모든 메모리 셀을 리프레시할 수 있다. 클럭 신호(CLK)의 주파수가 낮은 경우에도, 모든 메모리 셀을 리프레시하는데 필요한 기간(일반적으로 리프레시 시간(tREF)이라 함)을 충분히 만족시킬 수 있다. 다시 말해서, 동작 주파수의 하한선을 더 낮게 설정할 수 있다.
도 15는 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)의 세부를 도시하고 있다. 즉, 도 13의 메모리 블록(DQA, DQB, DQC, DQD) 중 임의의 것을 도시한다. 각 메모리 블록은 도면에서 길이 방향으로(제2 방향으로) 배열된 4개의 로우 블록(RBLK0 ~ RBLK3), 이와 같은 로우 블록(RBLK)들의 양쪽에 배열된 센스 증폭기(SA0, SA0/1, SA1/2, SA2/3, SA3), 센스 증폭기(SA0)의 위 쪽에 배열된 기록 증폭기(WAMP)와 판독 증폭기(RAMP), 센스 증폭기(SA3)의 아래 쪽에 배열된 칼럼 디코더(CDEC)와 메인 워드 디코더(MWD)를 포함한다.
센스 증폭기(SA0, SA0/1, SA1/2, SA2/3, SA3), 칼럼 디코더(CDEC), 및 메인 워드 디코더(MWD)는 각각 도면에서 수평 방향으로(제1 방향으로) 배열되어 있다. 센스 증폭기(SA0/1, SA1/2, SA2/3)는 그 양쪽의 로우 블록(RBLK)(메모리 그룹)에 의해 공유된다. 칼럼 디코더(CDEC)는 칼럼 선택 신호(CLS)를 출력하고, 메인 워드 디코더(MWD)는 메인 워드 라인 신호(MWL)을 출력한다. 칼럼 디코더(CDEC)와 메인 워드 디코더(MWD)는 도면에서 길이 방향으로(제2 방향으로) 정렬된 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)에 대응하는 로우 블록(RBLK0 ~ RBLK3)에 의해 공유된다. 센스 증폭기(SA), 칼럼 디코더(CDEC), 및 메인 워드 디코더(MWD)가 공유되기 때문에, 칩 사이즈를 줄이는 것이 가능하다.
제1 방향으로의 로우 블록(RBLK)(블록들의 마지막 번호가 동일함)은 메모리 그룹을 형성한다. 즉, 제1 방향으로 배열된 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)에 의해 메모리 그룹이 구성된다.
이 도면은 비지 신호(BDQ3)가 활성화될 때의 상태를 도시한다. 즉. 메모리 블록(BLKDQ3)은 도 13에 도시된 제2 제어 회로(50)에 의해 제어되고, 나머지 다른 메모리 블록(BLKDQ0 ~ BLKDQ2, BLKDQ4 ~ BLKDQ8, BLKP)은 제1 제어 회로(40)에 의해 제어된다. 도 3에 도시된 리프레시 요청 회로(22)가 리프레시 요청(REFRQ)을 생성하고 리프레시 카운터(24)의 리프레시 어드레스(REFAD)가 이 뱅크를 도시할 때, 도 15의 밝은 그물 무늬의(light meshed) 영역이 리프레시 동작을 수행하도록 동작한다. 또한, 복수의 기록 커맨드(WRA)가 연속적으로 제공되고, 리프레시 동작과 기록 동작이 서로 충돌할 때, 도 1을 참조하여 설명한 바와 같이, 기록 동작은 시간에 따라 서서히 쉬프트됨으로써 수행된다.
판독 커맨드(RDA)가 제공될 때, 메모리 블록(BLKDQ3)의 판독 동작은 수행되지 않는다. 메모리 블록(BLKDQ3)의 판독 데이터(데이터 입/출력 단자(DQ3A, DQ3B, DQ3C, DQ3D))가 도 2를 참조하여 설명한 것처럼 다른 메모리 블록(BLKDQ0 ~ BLKDQ2, BLKDQ4 ~ BLKDQ8, BLKP)의 판독 데이터를 사용하여 리프레시된다. 예를 들어, 판독 커맨드(RDA)가 로우 블록(RBLK1)에 제공될 때, 어두운 그물 무늬의(dark meshed) 영역이 동작한다.
도 16은 도 15에 도시된 로우 블록(RBLK)의 세부를 도시한다. 도면에서, 원은 메모리 셀을 나타낸다. 메모리 셀은 비트 라인(BL 또는 /BL)과 서브 워드 라인(SWL)에 연결되어 있다. 비트 라인(BL 또는 /BL)은 데이터를 메모리 셀에 전송한다. 서브 워드 라인(SWL)은 메모리 셀의 기억 노드(storage node)와 비트 라인간의 연결을 제어한다. 센스 증폭기(SA)와 비트 라인(BL 또는 /BL)은 블록 선택 스위치(BT)에 의하여 연결된다. 센스 증폭기는 비트 라인상의 데이터를 증폭한다. 비트 라인(BL, /BL)과 데이터 버스 라인(DB, /DB(DB0 ~ DB3, /DB0 ~ /DB3))은 칼럼 선택 스위치(CSW)에 의해 연결된다. 도 16은 하나의 데이터 입/출력 단자(DQA (또는 DQB, DQC, DQD))에 대응한다. 따라서, 4개의 데이터가 하나의 판독 동작 또는 기록 동작에 의하여 데이터 버스 라인(DB, /DB)를 통하여 병렬로 입/출력된다. 각 서브 워드 디코더(SWD)는 메인 워드 라인(MWL)과 1/4 워드 라인(QWD0 ~ QWD3)에 제공된 신호에 따라 하나의 서브 워드 라인(SWL)을 선택한다. 즉, 워드 라인은 계층적 구조를 가지고 있다.
이 실시예에서 서로 상보적인 4 쌍의 데이터 버스 라인(DB0 ~ DB3, /DB0 ~ /DB3)이 알루미늄, 구리, 티타늄 등으로 구성된 제1 배선층을 이용하여 도면에서 수평 방향으로(제1 방향으로) 배선된다(wired). 256개의 서브 워드 라인(SWL0 ~ SWL255)이 제1 폴리실리콘층을 이용하여 도면에서 수평 방향으로(제1 방향으로) 배선된다. 64개의 메인 워드 라인(MWL0 ~ MWL63)과 64개의 칼럼 선택 라인(CLS0 ~ CLS63)이 저항이 최저인 제2 배선층을 이용하여 도면에서 길이 방향으로(제2 방향으로) 배선된다. 제2 배선층은 알루미늄, 구리, 티타늄 등으로 구성된다. 제2 배선층을 사용하여 배선되는 메인 워드 라인(MWL0 ~ MWL63)은 메모리 셀 상의 개구를 통하여 제1 배선층에 접속된다. 제1 배선층을 사용하여 칼럼 선택 라인(CLS)에 수직인 방향으로 배선된 메인 워드 라인(MWL0 ~ MWL63)은 서브 워드 디코더(SWD)에 연결되어 있다. 비트 라인(BL, /BL)은 제2 폴리실리콘층을 사용하여 도면에서 길이 방향으로(제2 방향으로) 배선된다.
도 17은 도 13에 도시된 제1 제어 회로(40) 내의 어드레스 레지스터(42)의 세부를 도시한다. 어드레스 레지스터(42)는 제1 커맨드들이 제공되는 상위 어드레스 신호들(UA14 ~ UA0)를 유지하는 레지스터(42A)와, 제2 커맨드들이 제공되는 하위 어드레스 신호들(LA5 ~ LA0)을 유지하는 레지스터(42B)를 포함하고 있다. 레지스터(42A)와 레지스터(42B)는 그 뱅크가 선택될 때, 즉, 뱅크 신호(BNK#)가 활성화될 때, 동작한다.
레지스터(42A)는 기록 커맨드 신호(WRAP)에 동기하여 동작하고 순차적으로 연결된, 스위치(42c), 래치(42d), 플립 플롭(42e), 스위치(42f)와, 판독 커맨드 신호(RDAP)에 동기하여 동작하는 스위치(42g)와, 스위치(42f, 42g)로부터의 출력을 수신하는 래치(42h)를 포함한다.
레지스터(42A)에서 기록 커맨드(WRA)가 제공되고, 기록 커맨드 신호(WRAP)가 활성화될 때, 스위치(42c)가 턴온되고, 상위 어드레스 신호들(UA14 ~ UA0)가 래치(42d)에 유지된다. 동시에, 래치(42d)에 이미 유지되어 있는 어드레스 신호들(UA14 ~ UA0)이 플립 플롭 회로(42e)에 수신되어, 스위치(42f)와 래치(42h)를 통하여 어드레스 버스(NADR(UA14 ~ UA0))로 출력된다. 즉, 이 반도체 메모리는 다음의 기록 커맨드(WRA)에 동기하여 기록 커맨드(WRA)가 제공되는 기록 데이터를 메모리 셀에 기록하는, 소위 늦은 기록 기능을 가진다. 도 13에 상세히 도시되지는 않았지만, 각 뱅크(BK0 ~ BK3)는 이전의 기록 커맨드에 대응하는 데이터 신호를 유지하는 데이터 레지스터를 포함한다는 것을 유의하여야 한다.
더욱이, 스위치(42g)는 판독 커맨드(RDA)가 제공되고, 판독 커맨드 신호(RDAP)가 활성화될 때, 턴온되고, 상위 어드레스 신호들(UA14 ~ UA0)이 래치(42h)를 통하여 어드레스 버스(NADR)로 출력된다.
레지스터(42B)는 레지스터(42A)와 동일한 회로이다. 레지스터(42B)의 스위치(42c)는 하위 어드레스 신호들(LA5 ~ LA0)을 수신한다. 레지스터(42B)의 스위치(42c), 래치(42d), 플립 플롭(42e), 스위치(42f)는 제2 커맨드에 대응하는 기록 커맨드 신호(WLALP)에 동기하여 동작한다. 레지스터(42B)의 스위치(42g)는 제2 커맨드에 대응하는 판독 커맨드 신호(RLALP)에 동기하여 동작한다. 레지스터(42B)의 래치(42h)의 출력은 어드레스 버스(NADR(LA5 ~ LA0))에 연결되어 있다.
도 18은 도 13에 도시된 제1 제어 회로(40) 내의 상태 제어 회로(44)의 세부를 도시한다. 상태 제어 회로(44)는 RS 플립 플롭(44a, 44b), 리셋 단자를 가진 D 플립 플롭 회로(44c, 44d), 및 D 플립 플롭 회로(44e)를 포함한다.
RS 플립 플롭(44a)의 하나의 입력은 판독 커맨드 신호(RDAP)와 뱅크 신호(BNK#)의 NAND 로직을 수신하고, 나머지 다른 입력은 기록 커맨드 신호(WRAP)와 뱅크 신호(BNK#)의 NAND 로직을 수신한다. 또한, RS 플립 플롭(44a)은 판독 커맨드 신호(RDAP)의 활성화에 응답하여 판독/기록 제어 신호(WR/WD)를 로우 레벨로 바꾸고, 기록 커맨드 신호(WRAP)의 활성화에 응답하여 판독/기록 제어 신호(WR/RD)를 하이 레벨로 바꾼다.
RS 플립 플롭(44b)의 하나의 입력은 판독 커맨드 신호(RDAP)와 뱅크 신호(BNK#)의 NAND 로직과, 기록 커맨드 신호(WRAP)와 뱅크 신호(BNK#)의 NAND 로직을 수신하고, 그 나머지 다른 입력은 D 플립 플롭 회로(44e)의 출력의 반전 로직을 수신한다. RS 플립 플롭(44b)은 노드(ND1)를 판독 커맨드 신호(RDAP) 또는 기록 커맨드 신호(WRAP)의 활성화에 응답하여 하이 레벨로 바꾸고, 노드(ND4)의 하이 레벨에 응답하여 노드(ND1)를 로우 레벨로 바꾼다.
RS 플립 플롭(44b)과 D 플립 플롭 회로(44c, 44d, 44e)는 직렬로 연결되어 있다. D 플립 플롭 회로(44c, 44d)의 리셋 단자는 D 플립 플롭 회로(44e)의 출력의 반전 로직을 수신한다. D 플립 플롭 회로(44c, 44d, 44e)은 내부 클럭 신호(ICLK)의 하강 에지에 동기하여 신호들을 수신하고, 수신된 신호들을 각각 노드(ND2, ND3, ND4)로 출력한다.
도 19는 도 13에 도시된 제1 제어 회로(40) 내의 타이밍 신호 생성기(46)의 세부를 도시한다. 타이밍 신호 생성기(46)는 비트 라인 단락(short) 신호(BRS)를 생성하기 위한 BRS 생성기(46a), 워드 라인 인에이블 신호(WLEN)를 생성하기 위한 WLEN 생성기(46b), 센스 증폭기 인에이블 신호(SAEN)를 생성하기 위한 SAEN 생성기(46c), 칼럼 라인 인에이블 신호(CLEN)를 생성하기 위한 CLEN 생성기(46d), 판독 증폭기 인에이블 신호(RAMPEN)를 생성하기 위한 RAMPEN 생성기(46e), 및 기록 증폭기 인에이블 신호(WAMPEN)을 생성하기 위한 WAMPEN 생성기(46f)를 포함하고 있다.
BRS 생성기(46a)는 지연 회로(DLY1)와 NOR 게이트를 포함한다. 지연 회로(DLY1)는 도 18에 도시된 상태 제어 회로(44)로부터 전송되는 신호를 노드(ND1)(ND1 신호)를 통하여 지연 시간(DLY1)만큼 지연시킨다. NOR 게이트는 ND1 신호와 지연 회로(DLY1)로부터의 출력을 수신하고, 비트 라인 단락 신호(BRS)를 생성한다.
WLEN 생성기(46b)는 지연 회로(DLY2)와 AND 회로를 포함한다. 지연 회로(DLY2)는 ND1 신호를 지연 시간(DLY2) 만큼 지연시킨다. AND 회로는 ND1 신호와 지연 회로(DLY2)로부터의 출력을 수신하고, 워드 라인 인에이블 신호(WLEN)를 생성한다.
SAEN 생성기(46c)는 지연 회로(DLY3)와 AND 회로를 포함한다. 지연 회로(DLY3)는 워드 라인 인에이블 신호(WLEN)를 지연 시간(DLY3) 만큼 지연시킨다. AND 회로는 지연 회로(DLY3)로부터의 출력과 비트 라인 단락 신호(BRS)의 반전 신호를 수신하고, 센스 증폭기 인에이블 신호(SAEN)을 생성한다.
CLEN 생성기(46d)는 지연 회로(DLY4), NAND 게이트, 지연 회로(DLY5), 및 NOR 게이트를 포함한다. 지연 회로(DLY4)는 센스 증폭기 인에이블 신호(SAEN)를 지연 시간(DLY4) 만큼 지연시킨다. NAND 게이트는 노드(ND2)(ND2 신호)를 통하여 상태 제어 회로(44)로부터 전송된 신호와, 지연 회로(DLY4)로부터의 출력을 수신하고, ND5 신호를 노드(ND5)로 출력한다. 지연 회로(DLY5)는 ND5 신호를 지연 시간(DLY5) 만큼 지연시킨다. NOR 게이트는 ND5 신호와, 지연 회로(DLY5)의 반전 출력인 신호를 수신하고, 칼럼 라인 인에이블 신호(CLEN)을 생성한다.
RAMPEN 생성기(46e)는 ND5 신호, 즉, 지연 회로(DLY5)의 반전 출력인 신호와, 판독/기록 제어 신호(WR/RD)를 그 NOR 게이트에서 수신하고, 판독 증폭기 인에이블 신호(RAMPEN)를 생성한다.
WAMPEN 생성기(46f)는 ND5 신호, 즉, 지연 회로(DLY5)의 반전 출력인 신호와, 판독/기록 제어 신호(WR/RD)의 반전 신호를 그 NOR 게이트에서 수신하고, 기록 증폭기 인에이블 신호(WAMPEN)를 생성한다.
도 20은 도 13에 도시된 제1 제어 회로(40)의 동작을 도시한다. 이 실시예에서 판독 커맨드(RDA) 또는 기록 커맨드(WRA)는 클럭 신호의 첫번째 상승 에지에 동기하여 제공되고, 하위 어드레스 래치 커맨드(LAL)는 클럭 신호의 첫번째 하강 에지에 동기하여 제공된다.
도 18에 도시된 상태 제어 회로(44)는 클럭 신호(CLK)의 첫번째 상승 에지와 하강 에지, 및 클럭 신호(CLK)의 두번째 하강 에지와 세번째 하강 에지에 각각 동기하여 ND1 신호, ND2 신호, ND3 신호, ND4 신호를 생성한다(도 20a, 20b, 20c, 20d). ND4 신호의 활성화에 응답하여, ND1 신호, ND2 신호, 및 ND3 신호가 비활성화된다(도 20e).
도 19에 도시된 타이밍 신호 생성기(46)는 비트 라인 단락 신호(BRS)를 ND1 신호의 상승 에지에 동기하여 로우 레벨로 바꾸고(도 20f), ND1 신호의 상승 에지로부터 지연 시간(DLY2) 이후에 워드 라인 인에이블 신호(WLEN)를 활성화시킨다(도 20g). 타이밍 신호 생성기(46)는 워드 라인 인에이블 신호(WLEN)가 활성화된 때부터 지연 시간(DLY3) 이후에 센스 증폭기 인에이블 신호(SAEN)를 활성화시키고(도 20h), 센스 증폭기 인에이블 신호(SAEN)가 활성화된 때부터 지연 시간(DLY4) 이후에 칼럼 라인 인에이블 신호(CLEN), 판독 증폭기 인에이블 신호(RAMPEN), 및 기록 증폭기 인에이블 신호(WAMPEN)를 활성화시킨다(도 20i). 칼럼 라인 인에이블 신호(CLEN), 판독 증폭기 인에이블 신호(RAMPEN), 및 기록 증폭기 인에이블 신호(WAMPEN)는 지연 시간(DLY5)에 대응하는 기간 동안만 활성화되어 있다.
워드 라인 인에이블 신호(WLEN)는 ND1 신호의 하강 에지에 동기하여 비활성화된다(도 20j). 비트 라인 단락 신호(BRS)와 센스 증폭기 인에이블 신호(SAEN)는 ND1 신호의 하강 에지로부터 지연 시간(DLY1) 이후에 비활성화된다(도 20k). ND3 신호가 로우 레벨로 바뀐 후에, ND4 신호가 내부 클럭 신호(ICLK)의 하강 에지에 동기하여 로우 레벨로 바뀐다(도 20l).
도 21은 도 13에 도시된 제2 제어 회로(50) 내의 아비터(58)의 세부를 도시한다. 아비터(58)는 RS 플립 플롭(58a, 58b), 지연 회로(DLY6), 두 개의 지연 회로(DLY7a, DLY7b), 및 AND 회로(58c, 58d)를 포함한다.
RS 플립 플롭(58a)의 하나의 입력은 기록 커맨드 신호(WRAP)와 뱅크 신호(BNK#)의 NAND 로직을 수신하고, 나머지 다른 입력은 지연 회로(DLY7a)에 의해 지연되고 반전되는 기록 엔트리 신호(write entry signal)(WRAENT)인 신호를 수신 한다. RS 플립 플롭(58a)은 기록 엔트리 신호(WRAENT)의 활성화에 응답하여 노드(ND7)를 로우 레벨로 바꾸고, 기록 커맨드 신호(WRAP)의 활성화에 응답하여 노드(ND7)를 하이 레벨로 바꾼다.
RS 플립 플롭(58b)의 하나의 입력은 리프레시 요청 신호(REFRQ)와 뱅크 신호(REFBNK#)의 NAND 로직을 수신하고, 나머지 다른 입력은 지연 회로(DLY7b)에 의해 지연되고 반전되는 리프레시 엔트리 신호(refresh entry signal)(REFENT)인 신호를 수신한다. RS 플립 플롭(58b)은 리프레시 요청 신호(REFRQ)의 활성화에 응답하여 노드(ND8)를 하이 레벨로 바꾸고, 리프레시 엔트리 신호(REFENT)의 활성화에 응답하여 노드(ND8)를 로우 레벨로 바꾼다.
AND 회로(58c)는 ND7(ND7 신호)을 통하여 전송되는 신호, ND8(ND8 신호)을 통하여 전송되는 신호의 반전 신호, 및 지연 회로(DLY6)에서 지연되고 반전되는 ND8 신호인 신호를 수신하고, 기록 엔트리 신호(WRAENT)를 출력한다.
AND 회로(58d)는 ND8 신호 및 내부 클럭 신호(ICLK)를 수신하고, 리프레시 엔트리 신호(REFENT)를 출력한다.
도 22는 도 21에 도시된 아비터(58)의 동작을 도시한다. 도 3을 참조하여 전술한 바와 같이, 리프레시 요청 회로(22)는 내부 클럭 신호(ICLK)의 하강 에지에 동기하여 리프레시 요청 신호(REFRQ)를 활성화시킨다. 따라서, 예를 들어, 리프레시 타이머(20)가 기록 커맨드(WRA)의 제공 직전에 리프레시 개시 신호(REFS)를 생성할 때, 기록 커맨드(WRA)의 수신 후에 리프레시 요청 신호(REFRQ)가 내부 클럭 신호(ICLK)의 하강 에지에 동기하여 수신된다. 이렇게 해서, 기록 커맨드(WRA)와 리프레시 요청(REFRQ)이 서로 항상 1/2 클럭 또는 그 이상 쉬프트되기 때문에, 간단한 아비터(58)에 의하여 우선 순위를 결정할 수 있다.
먼저, 리프레시 개시 신호(REFS)는 내부 클럭 신호(ICLK)의 0번째 하강 에지 전에 생성된다. 리프레시 요청 회로(22)는 내부 클럭 신호(ICLK)의 0번째 하강 에지에 동기하여 리프레시 요청 신호(REFRQ)를 활성화한다(도 22a). 도 21에 도시된 아비터(58)는 리프레시 요청 신호(REFRQ)에 응답하여 ND8 신호를 하이 레벨로 바꾼다(도 22b).
다음으로, 기록 커맨드(WRA)는 내부 클럭 신호(ICLK)의 첫 번째 상승 에지에 동기하여 제공되고, 기록 커맨드 신호(WRAP)가 활성화된다(도 22c). 아비터(58)는 기록 커맨드 신호(WRAP)에 응답하여, ND7 신호를 하이 레벨로 바꾼다(도 22d). 이 때, ND8 신호가 하이 레벨에 있기 때문에, 아비터(58)의 AND 회로(58c)가 비활성화된다. 따라서, 기록 엔트리 신호(WRAENT)는 활성화되지 않는다.
아비터(58)의 AND 회로(58d)는 내부 클럭 신호(ICLK)의 상승 에지에 동기하여 리프레시 엔트리 신호(REFENT)를 활성화시킨다(도 22e). RS 플립 플롭(58b)은 리프레시 엔트리 신호(REFENT)가 활성화된 때부터 지연 시간(DLY7b) 이후에 리셋되고, ND8 신호는 로우 레벨로 바뀐다(도 22f). 즉, 리프레시 엔트리 신호(REFENT)는 지연 시간(DLY7b)에 대응하는 기간 동안만 활성화되어 있다. 그 후, 기록 동작 전에 리프레시 동작은 수행된다.
AND 회로(58c)에 제공되는 ND9 신호는 ND8 신호가 로우 레벨로 바뀐 때부터 지연 시간(DLY6) 이후에 하이 레벨로 바뀐다(도 22g). 그 결과, AND 회로(58c)는 활성화되고, 기록 엔트리 신호(WRAENT)가 활성화된다(도 22h). RS 플립 플롭(58a)은 기록 엔트리 신호(WRAENT)를 활성화시킨 때부터 지연 시간(DLY7a) 이후에 리셋되고, ND7 신호는 로우 레벨로 바뀐다(도 22i). 즉, 기록 엔트리 신호(WRAENT)는 지연 시간(DLY7a)에 대응하는 기간 동안만 활성화된다. 그 후, 리프레시 동작 후에 기록 동작이 수행된다.
다음으로, 기록 커맨드(WRA)는 내부 클럭 신호(ICLK)의 세 번째 상승 에지에 동기하여 제공되고, 기록 커맨드 신호(WRAP)가 활성화되며(22j), ND7 신호가 활성화된다(22k). 이 때, ND8 신호가 로우 레벨에 있기 때문에, AND 회로(58c)는 ND7 신호에 동기하여 기록 엔트리 신호(WRAENT)를 활성화시킨다(도 22l). 그 후, 리프레시 동작 전에 기록 동작이 수행된다. RS 플립 플롭(58a)은 기록 엔트리 신호(WRAENT)를 활성화시킨 때부터 지연 시간(DLY7a) 이후에 리셋되고, ND7 신호는 로우 레벨로 바뀌고(도 22m), 기록 엔트리 신호(WRAENT)가 비활성화된다(도 22n).
리프레시 요청 신호(REFRQ)는 내부 클럭 신호(ICLK)의 세 번째 하강 에지에 동기하여 활성화되고(도 22o), ND8 신호는 하이 레벨로 바뀐다(도 22p). 리프레시 엔트리 신호(REFENT)가 내부 클럭 신호(ICLK)의 네 번째 상승 에지에 동기하여 활성화된다(도 22q). 그 후, 기록 동작 후에 리프레시 동작이 실행된다. ND8 신호는 리프레시 엔트리 신호(REFENT)(도 22r)를 활성화시킨 때부터 지연 시간(DLY7b) 이후에 로우 레벨로 바뀌고(도 22r), 리프레시 엔트리 신호(REFENT)가 비활성화된다(도 22s).
도 23은 도 13에 도시된 제2 제어 회로(50) 내의 어드레스 레지스터(52)의 세부를 도시한다. 어드레스 레지스터(52)는 기록 커맨드(WRA)가 제공되는 상위 어드레스 신호(UA14 ~ US0)와 리프레시 어드레스(REFADR)를 유지하는 레지스터(52A), 및 기록 커맨드(WRA) 이후에 하위 어드레스 래치 커맨드(LAL)가 제공되는 하위 어드레스 신호(LA5 ~ LA0)을 유지하는 레지스터(52B)를 포함한다. 두 레지스터(52A, 52B)는 자신의 뱅크가 선택될 때, 즉, 뱅크 신호(BNK#) 또는 리프레시 뱅크 번호(REFBNK#)가 활성화될 때, 동작한다.
레지스터(52A)는 기록 커맨드 신호(WRAP)에 동기하여 동작하고 직렬로 연결되어 있는 스위치(52c), 래치(52d), 및 플립 플롭(52e)을 포함하고, 기록 엔트리 신호(WRAENT)에 동기하여 동작하는 스위치(52f), 리프레시 요청 신호(REFRQ)에 동기하여 동작하고 직렬로 연결되어 있는 스위치(52g)와 래치(52h), 리프레시 엔트리 신호(REFENT)에 동기하여 동작하는 스위치(52i), 및 스위치(52f, 52i)로부터 출력을 수신하는 래치(52j)를 포함한다.
스위치(52c), 래치(52d), 플립 플롭(52e), 및 스위치(52f)의 회로 구조는 도 17에 도시된 레지스터(42A)의 스위치(42c), 래치(42d), 플립 플롭(42e), 및 스위치(42f)의 구조와 같다. 즉, 늦은 기록 기능은 이와 같은 회로에 의해 실현된다. 도 17에서 기록 어드레스(UA14 ~ UA0)는 기록 커맨드 신호(WRAP)에 동기하여 어드레스 버스(NADR)에 출력되고, 레지스터(52A)에서는 기록 어드레스(UA14 ~ UA0)가 기록 엔트리 신호(WRAENT)에 동기하여 어드레스 버스(BADR)로 출력된다.
또한, 스위치(52g)는 리프레시 요청 신호(REFRQ)에 동기하여 턴온되고, 리프레시 어드레스 신호(REFADR) 중에서 상위 어드레스(UA#)를 래치(52h)로 전송한다. 스위치(52i)는 래치에 유지된 상위 어드레스(UA#)를 리프레시 엔트리 신호(REFENT)에 동기하여 래치(52j)로 전송한다. 래치(52j)는 스위치(52f) 또는 스위치(52i)로부터 전송된 상위 어드레스를 어드레스 버스(BADR)(UA14 ~ UA0)로 출력한다.
레지스터(52B)는 직렬로 연결된 스위치(52k), 래치(52l), 및 플립 플롭(52m)을 포함한다. 스위치(52k), 래치(52l), 및 플립 플롭(52m)은 제2 커맨드에 대응하는 기록 커맨드 신호(WLALP)에 동기하여 동작한다. 스위치(52k)는 하위 어드레스 신호(LA5 ~ LA0)를 수신한다. 플립 플롭(52m)의 출력은 어드레스 버스(BADR)(LA5 ~ LA0)에 연결되어 있다.
도 24는 도 13에 도시된 제2 제어 회로(50) 내의 상태 제어 회로(54)의 세부를 도시한다. 상태 제어 회로(54)는 내부 클럭 신호(ICLK)의 하강 에지(두번째 에지)에 동기하여 동작하는 F 사이클 카운터(제2 사이클 생성기)(54A), 내부 클럭 신호(ICLK)의 상승 에지(첫번째 에지)에 동기하여 동작하는 R 사이클 카운터(제1 사이클 생성기)(54B), 이러한 사이클 카운터(54A, 54B)를 교대로 동작시키기 위한 스위칭 회로(54c)(사이클 스위칭 회로), 및 RS 플립 플롭(54d, 54e, 54f, 54g, 54h, 54i)를 포함한다. 도면에서, 노드(R1, R2)로 출력된 신호들은 제1 타이밍 신호들에 대응하고, 노드(F1, F2)로 출력된 신호들은 제2 타이밍 신호들에 대응한다.
스위칭 회로(54c)는 기록 엔트리 신호(WRAENT)와 리프레시 엔트리 신호(REFENT)의 하강 에지들에 동기하여, 서로 상보적인 선택 신호(RS, FS)의 레벨을 반전시킨다. RS 플립 플롭(54d, 54e, 54f)은 F 사이클 카운터(54A)에 대응하는 회로들이다. RS 플립 플롭(54d)은 선택 신호(FS)가 하이 레벨에 있을 때 활성화 되어, 기록 엔트리 신호(WRAENT)에 동기하여 출력 노드(F5)를 설정하고(하이 레벨), 리프레시 엔트리 신호(REFENT)에 동기하여 출력 노드(F5)를 리셋한다(로우 레벨). RS 플립 플롭(54e)은 기록 엔트리 신호(WRAENT)와 리프레시 엔트리 신호(REFENT)에 동기하여 출력 노드(F0)(F0 신호)를 설정하고(하이 레벨), F 사이클 카운터(54A)의 출력 노드(F4)(F4 신호)의 하이 레벨에 응답하여 출력 노드(F0)를 리셋한다(로우 레벨). RS 플립 플롭(54f)은 R 사이클 카운터(54B) 측으로부터의 노드(R6)(R6 신호)가 하이 레벨에 있을 때 활성화되어, F0 신호의 활성화에 응답하여 출력 노드(F1)(F1 신호)를 설정하고(하이 레벨), F4 신호의 하이 레벨에 응답하여 출력 노드(F1)를 리셋한다(로우 레벨).
RS 플립 플롭(54g, 54h, 54i)은 R 사이클 카운터(54B)에 대응하는 회로들이다. RS 플립 플롭(54g, 54h, 54i)은 선택 신호(RS)가 하이 레벨에 있을 때 동작하는 것을 제외하고는 RS 플립 플롭(54d, 54e, 54f)과 동일하다.
F 사이클 카운터(54A)는 직렬로 연결된 플립 플롭 회로(54l)와 리셋 단자들을 가진 플립 플롭 회로(54j, 54k)를 포함한다. 플립 플롭 회로(54j, 54k, 54l)는 순차적으로 내부 클럭 신호(ICLK)의 하강 에지에 동기하여 F1 신호를 수신한다. R 사이클 카운터(54B)의 회로 구조는 R1 신호가 제공된다는 것을 제외하고는 F 사이클 카운터(54A)와 동일하다.
도 25는 도 13에 도시된 제2 제어 회로(50) 내의 타이밍 신호 생성기(56)의 세부를 도시한다. 타이밍 신호 생성기(56)는 비트 라인 단락 신호(BRS)를 생성하기 위한 BRS 생성기(56a), 워드 라인 인에이블 신호(WLEN)를 생성하기 위한 WLEN 생성기(56b), 센스 증폭기 인에이블 신호(SAEN)를 생성하기 위한 SAEN 생성기(56c), 및 칼럼 라인 인에이블 신호(CLEN) 및 기록 증폭기 인에이블 신호(WAMPEN)를 생성하기 위한 생성기(56d)를 포함한다.
BRS 생성기(56a)는 지연 회로(DLY1)와 NOR 게이트를 포함한다. 지연 회로(DLY1)는 도 24에 도시된 상태 제어 회로(54)로부터 F1 신호 또는 R1 신호를 지연 시간(DLY1) 만큼 지연시킨다. NOR 게이트는 F1 신호 또는 R1 신호, 및 지연 회로(DLY1)로부터의 출력을 수신하고, 비트 라인 단락 신호(BRS)를 생성한다.
WLEN 생성기(56b)는 지연 회로(DLY2)와 AND 회로를 포함한다. 지연 회로(DLY2)는 F1 신호 또는 R1 신호를 지연 시간(DLY2) 만큼 지연시킨다. AND 회로는 F1 신호 또는 R1 신호, 및 지연 회로(DLY2)로부터의 출력을 수신하고, 워드 라인 인에이블 신호(WLEN)를 생성한다.
SAEN 생성기(56c)는 지연 회로(DLY3)와 AND 회로를 포함한다. 지연 회로(DLY3)는 워드 라인 인에이블 신호(WLEN)를 지연 시간(DLY3) 만큼 지연시킨다. AND 회로는 지연 회로(DLY3)로부터의 출력과 비트 라인 단락 신호(BRS)의 반전 신호를 수신하고, 센스 증폭기 인에이블 신호(SAEN)를 생성한다.
생성기(56d)는 지연 회로(DLY4), NAND 게이트, 지연 회로(DLY5), 및 두 개의 NOR 게이트를 포함한다. 지연 회로(DLY4)는 센스 증폭기 인에이블 신호(SAEN)를 지연 시간(DLY4) 만큼 지연시킨다. NAND 게이트는 F2 신호와 F5 신호의 AND 로직 또는 R2 신호와 R5 신호의 AND 로직, 및 지연 회로(DLY4)로부터의 출력을 수신하고, 노드(ND9A)로 ND9A를 출력한다. 지연 회로(DLY5)는 ND9A 신호를 지연 시간(DLY5) 만큼 지연시킨다. NOR 게이트는 ND9A 신호와 지연 회로(DLY5)의 반전된 출력인 신호를 수신하고, 각각 칼럼 라인 인에이블 신호(CLEN)와 기록 증폭기 인에이블 신호(WAMPEN)를 생성한다.
도 26은 도 24에 도시된 상태 제어 회로(54)의 동작을 도시한다. 이 실시예에서 리프레시 요청(REFRQ)이 기록 커맨드(WRA)를 수신한 직후에 생성되는 경우와 기록 커맨드(WRA)와 리프레시 요청(REFRQ)이 각각 독립적으로 제공되는 경우를 설명한다. 타이밍도의 제1 상태에서 선택 신호(FS, RS)는 각각 하이 레벨과 로우 레벨로 바뀌었다. 따라서, RS 플립 플롭(54d, 54e)은 활성화되고, RS 플립 플롭(54g, 54h)은 비활성화된다.
먼저, 기록 커맨드(WRA)와 리프레시 요청(REFRQ)이 내부 클럭 신호(ICLK)의 첫 번째 상승 에지와 하강 에지에 동기하여 제공된다. 도 21에 도시된 아비터(58)는 전술한 바와 같이, 순차적으로 기록 엔트리 신호(WRAENT)와 리프레시 엔트리 신호(REFENT)를 활성화시킨다(도 26a, 도 26b).
선택 신호(FS)가 하이 레벨에 있기 때문에, 도 24에 도시된 RS 플립 플롭(54d, 54e)은 기록 엔트리 신호(WRAENT)의 활성화에 동기하여 F5 신호와 F0 신호를 각각 활성화시킨다(도 26c, 도 26d). R6 신호가 하이 레벨에 있기 때문에, RS 플립 플롭(54f)은 F0 신호의 활성화에 동기하여 F1 신호를 활성화시킨다(도 26e). 또한, F0 신호의 활성화에 응답하여, F6 신호는 로우 레벨로 바뀐다(도 26f).
다음으로, 스위칭 회로(54c)는 기록 엔트리 신호(WRAENT)의 비활성화에 동기 하여 동작하고, 선택 신호(FS, RS)는 각각 로우 레벨과 하이 레벨로 바뀐다(도 26g, 26h). 선택 신호(FS)의 로우 레벨에 응답하여, RS 플립 플롭(54d, 54e)이 비활성화된다. 선택 신호(RS)의 하이 레벨에 응답하여, RS 플립 플롭(54g, 54h)이 활성화된다.
RS 플립 플롭(54g, 54h)은 리프레시 엔트리 신호(REFENT)의 활성화에 동기하여 R5 신호와 R0 신호를 각각 활성화시킨다(도 26i, 도 26j). 이 때, RS 플립 플롭(54i)은 F6 신호가 로우 레벨에 있기 때문에 동작하지 않는다. R0 신호의 활성화에 응답하여, R6 신호는 로우 레벨로 바뀐다(도 26k). 다음으로, 스위칭 회로(54c)는 리프레시 엔트리 신호(REFENT)의 비활성화에 동기하여 동작하고, 선택 신호(FS, RS)는 각각 하이 레벨과 로우 레벨로 바뀐다(도 26l, 도 26m).
F 사이클 카운터(54A)는 F1 신호를 수신하여 동작하고, 내부 클럭 신호(ICLK)의 첫 번째 내지 세 번째 하강 에지에 동기하여 순차적으로 F2, F3, F4 신호를 활성화시킨다(도 26n, 도 26o, 도 26p). F4 신호의 활성화에 응답하여, F 사이클 카운터(54A)의 플립 플롭 회로(54j, 54k)와 RS 플립 플롭(54f)이 리셋된다(도 26q).
F3 신호가 로우 레벨로 바뀌기 때문에, 플립 플롭 회로(54l)가 리셋되고, F4 신호가 내부 클럭 신호(ICLK)의 네 번째 하강 에지에 동기하여 로우 레벨로 바뀐다(도 26r). F6 신호는 F4 신호의 로우 레벨에 응답하여 하이 레벨로 바뀐다(도 26s). RS 플립 플롭(54i)은 설정되고, R1 신호는 F6 신호의 하이 레벨에 응답하여 하이 레벨로 바뀐다(도 26t).
R 사이클 카운터(56B)는 R1 신호를 수신하여 동작하고, 내부 클럭 신호(ICLK)의 다섯 번째 내지 일곱 번째 상승 에지에 동기하여 R2, R3, R4 신호를 순차적으로 활성화시킨다(도 26u, 도 26v, 도 26w). F4 신호의 활성화에 응답하여, R 사이클 카운터(54B)의 플립 플롭 회로(54j, 54k)와 RS 플립 플롭(54i)은 리셋된다(도 26x).
그런데, F1 신호와 R1 신호, 및 F2 신호와 R2 신호는 도 18에 도시된 제1 제어 회로(40)의 상태 제어 회로(44)로부터 출력되는 ND1 신호와 ND2 신호에 대응하는 신호들이다. 도 25에 도시된 제2 제어 회로(50)의 타이밍 신호 생성기(56), 및 도 19에 도시된 제1 제어 회로(40)의 타이밍 신호 생성기(46)는 동일한 지연 회로(DLY1 ~ DLY5)를 사용하고, 기본 회로 구조가 같다. 따라서, F1 신호와 R1 신호 사이의 상대적 타이밍, F2 신호와 R2 신호 사이의 상대적 타이밍, 및 타이밍 신호 생성기(56)의 비트 라인 단락 신호(BRS), 워드 라인 인에이블 신호(WLEN), 센스 증폭기 인에이블 신호(SAEN), 칼럼 라인 인에이블 신호(CLEN), 및 기록 증폭기 인에이블 신호(WAMPEN)는 타이밍 신호 생성기(46)의 경우와 동일하다.
그 결과, F 사이클 카운터(54A)를 사용한 기록 동작은 내부 클럭 신호(ICLK)의 첫 번째 상승 에지로부터 내부 클럭 신호(ICLK)의 네 번째 하강 에지까지의 3.5 클럭의 기간 동안만 수행된다. R 사이클 카운터(54B)를 사용한 리프레시 동작은 내부 클럭 신호(ICLK)의 네 번째 하강 에지로부터 내부 클럭 신호(ICLK)의 여덟 번째 상승 에지까지의 3.5 클럭의 기간 동안만 수행된다.
또한, 다음의 기록 커맨드(WRA)는 내부 클럭 신호(ICLK)의 다섯 번째 상승 에지에 동기하여 제공된다. 이 때, F5 신호는 하이 레벨로 바뀌었기 때문에, RS 플립 플롭(54d, 54e)은 동작하여 F0 신호와 F6 신호를 각각 하이 레벨과 로우 레벨로 변화시킨다(도 26y, 도 26z). 다음으로, 선택 신호(FS, RS)는 기록 엔트리 신호(WRAENT)의 비활성화에 동기하여 각각 로우 레벨과 하이 레벨로 바뀐다(도 26a, 도 26b).
R6 신호는 리프레시 동작이 수행되는 동안에 로우 레벨을 유지한다. 따라서, RS 플립 플롭(54f)은 비활성화되고, F 사이클 카운터(54A)는 동작하지 않는다. R4 신호는 내부 클럭 신호(ICLK)의 여덟 번째 상승 에지에 동기하여 비활성화되고(도 26C), R6 신호는 하이 레벨로 바뀐다(도 26D).
RS 플립 플롭(54f)은 R6 신호의 하이 레벨에 응답하여 동작하고, F1 신호를 활성화시킨다(도 26E).
이후에, F 사이클 카운터(54A)는 동작하여 F2, F3, F4 신호를 활성화시키고, 전술한 바와 유사하게 기록 동작을 수행한다. 기록 동작을 완료한 후에, F6 신호는 하이 레벨로 바뀐다(도 26F). 스위칭 회로(54c)는 하이 레벨에 있는 F6 신호와 R6 신호에 의해 리셋되어, FS 신호와 RS 신호를 각각 하이 레벨과 로우 레벨로 바꾼다(도 26G, 도 26H).
다음으로, 리프레시 요청(REFRQ)이 내부 클럭 신호(ICLK)의 열세번째 하강 에지에 동기하여 생성된다. 이 때, FS 신호는 하이 레벨로 바뀌었기 때문에, F 사이클 카운터(54A)를 사용하여 리프레시 동작이 수행된다. 이렇게 해서, 스위칭 회로(54c)는 사이클 카운터(54A, 54B)가 기록 엔트리 신호(WRAENT) 또는 리프레시 엔 트리 신호(REFENT)에 따라 교대로 동작하도록 사이클 카운터(54A, 54B) 간을 스위칭한다. 두 개의 사이클 카운터(54A, 54B)가 교대로 사용되어 기록 동작 또는 리프레시 동작을 수행하기 때문에, 각 동작의 수행을 제어하는 것이 용이하고, 제어 회로를 간단하게 구성할 수 있다.
도 27은 도 3에 도시된 각 입/출력 제어 회로(30A, 30B, 30C, 30D)내의 데이터 입력 회로(32)의 세부를 도시한다. 데이터 입력 회로(32)가 각 데이터 그룹(BYTEA, BYTEB, BYTEC, BYTED)에 대하여 형성된다. 데이터 그룹(BYTEA)의 데이터 입력 회로(32)를 설명하겠다.
데이터 입력 회로(32)는 데이터 입/출력 단자들(DQA0 ~ DQA8)을 수신하기 위한 입력 버퍼들, 데이터 스트로브 신호(DQSA)를 수신하기 위한 입력 버퍼, 데이터 입/출력 단자들(DQA0 ~ DQA8)에 각각 대응하는 순차/병렬 변환 회로(34), 및 각 순차/병렬 변환 회로(34)로부터 출력된 4개의 병렬적 데이터의 패리티 비트들을 생성하기 위한 4개의 패리티 생성기(판독 제어 회로)(36)를 포함한다. 예를 들어, 데이터 입/출력 단자(DQA0)에 대응하는 순차/병렬 변환 회로(34)는 데이터 버스 라인(WDBA0N3 ~ WDBA0N0)에 연결되어 있다. 패리티 생성기(36)들은 생성된 4개의 패리티 비트들을 데이터 버스 라인(WDBAP3 ~ WDBAP0)으로 출력한다. 데이터 버스 라인(WDB)을 통하여 전송되는 데이터는 도 2에 도시된 바와 같이, 각각 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)에 기록된다.
도 28은 도 27에 도시된 순차/병렬 변환 회로(34)의 세부를 도시한다. 순차/병렬 변환 회로(34)는 순차/병렬 제어 회로(34A), D 플립 플롭 회로(34b ~ 34j), 및 선택기(34k, 34l)를 포함한다. 순차/병렬 제어 회로(34A)는 D 플립 플롭 회로(34m)와 AND 회로(34n, 34o)를 포함한다.
순차/병렬 제어 회로(34A)에서, D 플립 플롭 회로(34m)는 내부 데이터 스트로브 신호(/IDQS)의 하강 에지들(데이터 스트로브 신호(DQS)의 상승 에지들)에 동기하여, 서로 상보적인 인에이블 신호(EN0, EN1)의 레벨을 반전시킨다. D 플립 플롭 회로(34m)는 로우 레벨의 순차/병렬 인에이블 신호(SPCEN)를 수신할 때 리셋되어, 인에이블 신호(EN0, EN1)를 하이 레벨과 로우 레벨로 각각 변화시킨다. AND 회로(34n)는 인에이블 신호(EN0)와 순차/병렬 인에이블 신호(SPCEN)가 하이 레벨에 있을 때, 활성화되어, 내부 데이터 스트로브 신호(/IDQS)에 동기하는 펄스 신호(SPP0)를 생성한다. AND 회로(34o)는 인에이블 신호(EN1)와 순차/병렬 인에이블 신호(SPCEN)가 하이 레벨에 있을 때 활성화되어, 내부 데이터 스트로브 신호(/IDQS)와 동기하는 펄스 신호(SPPI)를 생성한다.
D 플립 플롭 회로(34b)는 내부 데이터 스트로브 신호(IDQS)의 상승 에지에 동기하여 입/출력 데이터 신호(DQ)를 수신하고, 수신된 신호를 데이터 신호(D0R)로서 출력한다. D 플립 플롭 회로(34c, 34d)는 내부 데이터 스트로브 신호(/IDQS)의 상승 에지들에 동기하여 데이터 신호(D0R, DQ)를 각각 수신하고, 수신된 신호를 데이터 신호(D0F1, D1F1)로서 출력한다. D 플립 플롭 회로(34e, 34f)는 펄스 신호(SPP0)의 상승 에지들에 동기하여 데이터 신호(D0F1, D1F1)를 각각 수신하고, 수신된 신호를 데이터 신호(D0F2, D1F2)로서 출력한다. D 플립 플롭 회로(34g, 34h, 34i, 34j)는 펄스 신호(SPPI)의 상승 에지들에 동기하여 데이터 신호(D0F2, D1F2, D0F1, D1F1)를 각각 수신하고, 수신된 신호를 데이터 신호(D0F3, D1F3, D2F3, D3F3)로서 출력한다. D 플립 플롭 회로(34i, 34j)로부터 출력되는 데이터 신호(D2F3, D3F3)는 버퍼를 통해 데이터 버스 라인(WDBN2, WDBN3)으로 출력된다.
선택기(34k, 34l)는 버스트 길이 신호(BL4/2)가 로우 레벨에 있을 때, 입력 단자들("0")로 제공되는 데이터 신호들을 데이터 버스 라인들(WDBN0, WDBN1)로 버퍼를 통하여 출력하고, 버스트 길이 신호(BL4/2)가 하이 레벨에 있을 때, 입력 단자들("1")로 제공되는 데이터 신호들을 데이터 버스 라인들(WDBN0, WDBN1)로 버퍼를 통하여 출력한다.
도 29는 도 28에 도시된 순차/병렬 제어 회로(34)의 동작을 도시한다(버스트 길이 = "4"). 이 실시예에서 기록 커맨드(WRA)는 뱅크(BK0, BK1, BK2)로 순차적으로 제공된다. 버스트 길이가 "4"일 때, 버스트 길이 신호(BL4/2)가 하이 레벨로 바뀌었다. 또한, 버스트 길이가 "4"일 때, 복수의 뱅크(BK)로 기록 커맨드(WRA)를 제공하는 최소한의 간격은 2 클럭이다. 기록 커맨드(WRA)의 제공 이후에, 데이터 스트로브 신호(DQS)의 두 번째(세번째 CLK) 및 그 다음의 상승 에지들과 하강 에지들에 동기하여 4개의 기록 데이터 신호가 연속적으로 제공된다. 데이터 스트로브 신호(DQS)는 반도체 메모리가 기록 동작을 수행하도록 허용하는 시스템으로부터 제공된다는 것을 유의해야 한다.
먼저, 기록 커맨드(WRA)가 클럭 신호(CLK)의 첫 번째 상승 에지에 동기하여 뱅크(BK0)로 제공된다. 다음으로, 데이터 신호(D0, D1, D2, D3)가 데이터 스트로브 신호(DQS)의 세 번째와 네 번째 상승 에지와 하강 에지에 동기하여 순차적으로 제공된다(도 29a).
도 28에 도시된 D 플립 플롭 회로는 내부 데이터 스트로브 신호(IDQS)의 세 번째와 네 번째 상승 에지에 동기하여 데이터 신호(D0, D2)를 수신하고, 이들을 데이터 신호(D0R)로서 출력한다(도 29b). D 플립 플롭 회로(34c, 34d)는 내부 데이터 스트로브 신호(/IDQS)의 세 번째와 네 번째 상승 에지에 동기하여 데이터 신호(D0 ~ D3)를 수신하고, 이들을 데이터 신호(D0F1, D1F1)으로서 출력한다(도 29c).
D 플립 플롭 회로(34e, 34f)는 펄스 신호(SPP0)의 상승 에지에 동기하여 데이터 신호(D0, D1)를 수신하고, 이들을 데이터 신호(D0F2, D1F2)로서 출력한다(도 29d). D 플립 플롭 회로(34g, 34h, 34i, 34j)는 펄스 신호(SPPI)의 상승 에지에 동기하여 데이터 신호(D0 ~ D3)를 수신하고, 이들을 데이터 신호(D0F3, D1F3, D2F3, D3F3)로서 출력한다(도 29e). 그 결과, 순차적인 기록 데이터 신호(D0 ~ D3)는 병렬 데이터로 변환된다.
버스트 길이 신호(BL4/2)가 하이 레벨에 있기 때문에, 선택기(34k, 34l)는 데이터 신호(D0F3, D1F3)를 선택한다. 그 후, D 플립 플롭 회로(34g, 34h, 34i, 34j)에 수신되는 데이터 신호(D0 ~ D3)는 버퍼들을 통하여 데이터 버스 라인(WDBN0 ~ WDBN3)으로 출력된다(도 29f). 데이터 버스 라인(WDBN0 ~ WDBN3)으로 출력되는 데이터 신호(D0 ~ D3)는 뱅크(BK0)의 기록 증폭기(WAMP)로 제공된다.
전술한 바와 마찬가지로, 뱅크(BK1 ~ BK2)로 들어가는 기록 커맨드(WRA)는 또한 순차적인 것에서 병렬적인 것으로 변환되고, 변환된 데이터 신호는 데이터 버스 라인(WDBN0 ~ WDBN3)으로 출력된다.
도 30은 도 28에 도시된 순차/병렬 제어 회로(34)의 동작을 도시한다(버스트 길이 = "2"). 이 실시예에서, 기록 커맨드(WRA)는 뱅크(BK0 ~ BK3)로 순차적으로 제공된다. 버스트 길이가 "2"일 때, 버스트 길이 신호(BL4/2)는 로우 레벨로 바뀌었다. 또한, 버스트 길이가 "2"일 때, 복수의 뱅크(BK)로 기록 커맨드(WRA)를 제공하는 최소한의 간격은 1 클럭이다. 기록 커맨드(WRA)의 제공 이후에, 데이터 스트로브 신호(DQS)의 세 번째(네번째 CLK) 및 그 다음의 상승 에지들과 하강 에지들에 동기하여 2개의 기록 데이터 신호가 연속적으로 제공된다.
D 플립 플롭 회로(34g, 34h, 34i, 34j)가 데이터 신호(D0F3, D1F3, D2F3, D3F3)를 출력할 때까지의 동작은 도 29에 도시된 것과 동일하므로, 이에 대한 설명은 생략하기로 한다. 이 실시예에서, 버스트 길이 신호(BL4/2)가 로우 레벨에 있기 때문에, 선택기(34k, 34l)는 데이터 신호(D0F2, D1F2)를 선택한다. 따라서, D 플립 플롭 회로(34e, 34f)로부터 출력되는 데이터 신호(D0 ~ D1)는 먼저 데이터 버스 라인(WDBN0 ~ WDBN1)으로 출력된다(도 30a). 데이터 버스 라인(WDBN0 ~ WDBN1)으로 출력되는 데이터 신호(D0 ~ D1)는 뱅크(BK0)의 기록 증폭기(WAMP)로 제공된다. 그 이후에, D 플립 플롭 회로(34i, 34j)에 수신되는 데이터 신호(D2 ~ D3)는 데이터 버스 라인(WDBN2 ~ WDBN3)으로 출력된다(도 30b). 데이터 버스 라인(WDBN2 ~ WDBN3)으로 출력되는 데이터 신호(D2 ~ D3)는 뱅크(BK1)의 기록 증폭기(WAMP)로 제공된다.
전술한 바와 마찬가지로, 뱅크(BK2 ~ BK3, BK0)로 들어가는 기록 커맨드(WRA)는 또한 순차적인 것에서 병렬적인 것으로 변환되고, 변환된 데이터 신호는 각각 데이 터 버스 라인(WDBN0 ~ WDBN1) 또는 데이터 버스 라인(WDBN2 ~ WDBN3)으로 출력된다.
도 31은 도 27에 도시된 데이터 입력 회로(32)의 동작을 도시한다. 이 실시예에서, 버스트 길이가 "4"일 때의 동작이 도시되고, 기록 커맨드(WRA)는 2 클럭 마다 제공된다.
먼저, 기록 커맨드(WRA)가 뱅크(BK0)로 제공되고, 데이터 그룹(BYTEA)에 대응하는 9 비트 데이터 신호가 데이터 스트로브 신호(DQS)의 세 번째 에지와 뒤이은 에지들에 동기하여 제공된다(도 31a). 도면에서 자세히 도시되지는 않았지만, 데이터 그룹(BYTEB ~ BYTED)에 대응하는 데이터 신호들도 동시에 제공된다. 예를 들어, 데이터 스트로브 신호(DQS)의 세 번째 상승 에지에 동기하여 제공되는 데이터 신호 "010011110"가 데이터 스트로브 신호(DQS)의 다섯 번째 상승 에지에 동기하여 데이터 버스 라인(WDBA0N0 ~ WDBA8N0)으로 출력된다(도 31b). 도 27에 도시된 패리티 생성기(36)는 데이터 신호 "010011110"의 짝수 패리티 비트 "1"을 찾아서, 이를 데이터 버스 라인(WDBAP0)으로 출력한다(도 31c).
데이터 스트로브 신호(DQS)의 세 번째 하강 에지와 데이터 스트로브 신호(DQS)의 네 번째 상승 에지와 하강 에지에 동기하여 제공되는 이와 같은 데이터 신호들과 데이터의 패리티 비트들은, 또한 데이터 스트로브 신호(DQS)의 다섯 번째 상승 에지(도시되지 않음)에 동기하여 데이터 버스 라인으로 출력된다. 전술한 바와 마찬가지로, 뱅크(BK1 ~ BK2)로 들어가는 기록 커맨드(WRA)에 대응하는 기록 데이터 신호는 또한 순차적인 것에서 병렬적인 것으로 변환되어, 각각 데이터 스트로브 신 호(DQS)의 일곱 번째 상승 에지와 아홉 번째 상승 에지에 동기하여 데이터 버스 라인으로 출력된다.
도 32는 도 3에 도시된 각 입/출력 제어 회로(30A, 30B, 30C, 30D) 내의 데이터 출력 회로(62)의 세부를 도시한다. 데이터 출력 회로(62)는 각 데이터 그룹(BYTEA, BYTEB, BYTEC, BYTED)에 대하여 형성된다. 데이터 그룹(BYTEA)의 데이터 출력 회로(62)를 설명하겠다.
데이터 출력 회로(62)는 데이터 버스 라인(RDB)으로부터 제공된 판독 데이터를 정확한 데이터로 변환하기 위한 패리티 검사 회로(64), 패리티 검사 회로(64)로부터 출력되고 각 데이터 입/출력 단자(DQ)에 대응하는 병렬 데이터를 순차적 데이터로 각각 변환하기 위한 병렬/순차 변환 회로(66), 및 순차적 데이터를 외부로 출력하기 위한 출력 버퍼를 포함한다.
도 33은 도 32에 도시된 패리티 검사 회로(64)의 세부를 도시한다. 패리티 검사 회로(64)가 각 순차적 데이터(N0 ~ N3)에 대하여 형성되어 있다. 제1 데이터에 대응하는 패리티 검사 회로(64)를 설명하겠다.
패리티 검사 회로(64)는 데이터 입/출력 단자(DQ0 ~ DQ8)에 각각 대응하여 형성되어 있는 EOR 회로(64a), EOR 회로(64b), 및 선택기(64c)를 포함한다. EOR 회로(64a)는 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)으로부터 판독되어 데이터 버스 라인(RDBA0N0 ~ RDBA8N0, RDBAP0)을 통하여 전송되는 판독 데이터의 XOR을 연산하여, 동작의 결과를 패리티 검사 신호(PCHKN0)로서 출력한다. 각 EOR 회로(64b)는 패리티 검사 신호(PCHKN0)와 판독 데이터와의 XOR을 연산한다. 각 선택기(64c)는 비지 플래그 신호(BFDQ0 또는 BFDQ1 ~ BFDQ8)가 하이 레벨일 때 EOR 회로(64b)로부터 출력된 데이터를 선택하고, 비지 플래그 신호(BFDQ0 또는 BFDQ1 ~ BFDQ8)가 로우 레벨일 때 판독 데이터를 선택하며, 선택된 데이터를 내부 데이터 버스 라인(IRDBA0N0 ~ IRDBA8N0)으로 각각 출력한다. 패리티 검사 회로(64)의 기본 동작은 도 2를 참조하여 설명한 것과 동일하다.
그런데, 메모리 블록(BLKP)이 리프레시 상태에 있을 때, 모든 비지 플래그 신호(BFDQ0 ~ BFDQ8)는 로우 레벨로 바뀐다. 따라서, 모든 판독 데이터는 대응하는 메모리 블록(BLKDQ0 ~ BLKDQ8)으로부터 직접 출력된다.
도 34는 도 33에 도시된 패리티 검사 회로(64)의 동작을 도시한다(버스트 길이 = "4"). 이 실시예에서, 판독 커맨드(RDA)가 순차적으로 뱅크(BK0 ~ BK2)로 제공되는 경우를 설명하겠다.
먼저, 판독 커맨드(RDA)가 첫 번째 클럭 신호(CLK)에 동기하여 뱅크(BK0)로 제공된다. 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)으로부터 판독 데이터 "0000111101"는 세 번째 클럭 사이클에서 데이터 버스 라인(RDBAONO ~ RDBA8N0, RDBAP0)으로 출력된다(도 34a). 이 때, 뱅크(BK0)의 메모리 블록(BLKDQ1)이 리프레시 중에 있기 때문에, 정확한 판독 데이터가 데이터 버스 라인(RDBA1N0)으로 출력되지 않는다(도 34b).
판독 데이터에서 "1"의 개수가 홀수이기 때문에, 도 33에 도시된 EOR 회로(64a)는 패리티 검사 신호(PCHKN0)를 하이 레벨로 바꾼다(도 34c). 데이터 버스 라인(RDBA1N0)에서 잘못된 데이터 "0"을 수신하는 EOR 회로(64b)는 하이 레벨의 패 리티 검사 신호(PCHKN0)를 수신하고, 하이 레벨을 출력한다.
메모리 블록(BLKDQ1)이 리프레시 중에 있기 때문에, 비지 플래그 신호(BFDQ1)만이 하이 레벨로 바뀌었다. 따라서, 비지 플래그 신호(BFDQ1)를 수신하는 선택기(64c)는 EOR 회로(64b)의 출력을 선택하고, 데이터 "1"을 출력한다(도 34d). 다른 선택기들(64c)은 데이터 버스 라인(RDBA0N0, RDBA2N0 ~ RDBA8N0) 상의 판독 데이터를 데이터 버스 라인(IRDBA0N0 ~ IRDBA8N0)으로 직접 출력한다. 그 결과, 리프레시 동작 중이어서 판독 동작을 수행할 수 없는 메모리 블록(BLKDQ1) 내의 데이터는 다른 메모리 블록(BLKDQ0, BLKDQ2 ~ BLKDQ8, BLKP)의 판독 데이터를 사용하여 재생성된다.
판독 커맨드(RDA)는 세 번째 클럭 신호(CLK)에 동기하여 뱅크(BK1)로 제공된다. 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)으로부터의 판독 데이터 "1011000010"는 다섯 번째 클럭 사이클에서 데이터 버스 라인(RDBA0N0 ~ RDBA8N0, RDBAP0)으로 출력된다(도 34e). 이 때, 뱅크(BK1)는 리프레시 동작을 수행하고 있지 않다. 따라서, 정확한 판독 데이터가 데이터 버스 라인(RDBA0N0 ~ RDBA8N0, RDBAP0)으로 출력된다.
판독 데이터의 "1"의 개수가 짝수이므로, EOR 회로(64a)는 패리티 검사 신호(PCHKN0)를 로우 레벨로 바꾼다(도 34f). 뱅크(BK1)는 리프레시 동작을 수행하고 있지 않기 때문에, 모든 비지 신호(BDQ0 ~ BDQ8)는 로우 레벨로 바뀌었다. 모든 선택기(64c)는 데이터 버스 라인(RDBA0N0 ~ RDBA8N0) 상의 판독 데이터를 직접 데이터 버스 라인(IRDBA0N0 ~ IRDBA8N0)으로 출력한다(도 34g).
도 35는 도 32에 도시된 병렬/순차 변환 회로(66)의 세부를 도시한다. 병렬/순차 변환 회로(66)가 각 데이터 입/출력 단자(DQA0 ~ DQA8, DQB0 ~ DQB8, DQC0 ~ DQC8, DQD0 ~ DQD8)에 대하여 형성되어 있다. 데이터 입/출력 단자(DQA0)의 병렬/순차 변환 회로(66)에 대하여 설명하겠다.
병렬/순차 변환 회로(66)는 카운터(PI, POR, POF), 판독 데이터 버스 선택기(66a), 각각이 직렬로 연결된 입력 스위치, 래치(0R ~ 5R, 0F ~ 5F), 및 출력 스위치로 구성된 12 쌍의 스위치 회로, 및 스위치(66b, 66c)를 포함한다. 3 쌍의 스위치 회로가 각 내부 데이터 버스 라인(IRDBA0N0 ~ IRDBA0N3)에 대하여 형성되어 있다.
카운터(PI)는 각 뱅크(BK0 ~ BK3)의 판독 데이터 버스 인에이블 신호(RDRE)와 버스트 길이 신호(BL4/2)를 수신하여, 입력 카운터 신호(PI0 ~ PI5)를 출력한다. 카운터(POR)는 출력 인에이블 신호(OER)가 활성화되어 있을 때, 위상이 클럭 신호(CLK)의 위상과 동일한 출력 클럭 신호(OCLKR)에 동기하여 출력 카운터 신호(POR0 ~ POR5)를 출력한다.
카운터(POF)는 출력 인에이블 신호(OEF)가 활성화되어 있을 때, 위상이 클럭 신호(CLK)의 위상과 반대인 출력 클럭 신호(OCLKF)에 동기하여 출력 카운터 신호(POF0 ~ POF5)를 출력한다.
버스트 길이 신호(BL4/2)가 로우 레벨에 있을 때, 즉, 버스트 길이가 "2"로 설정되어 있을 때, 판독 데이터 버스 선택기(66a)가 입력 카운터 신호(PI0 ~ PI5)의 상승 에지에 동기하여 데이터 버스 선택 신호(RDBSEL)를 출력한다.
래치(0R ~ 5R)을 포함하는 스위치 회로는 입력 카운터 신호(PI0 ~ PI5)가 하이 레벨에 있을 때, 각각 데이터를 수신하고, 출력 카운터 신호(POR0 ~ POR5)가 하이 레벨에 있을 때, 수신된 데이터를 데이터 버스 라인(DR)으로 출력한다. 래치(0F ~ 5F)를 포함하는 스위칭 회로는 입력 카운터 신호((PI0 ~ PI5)가 하이 레벨에 있을 때, 각각 데이터를 수신하고, 출력 카운터 신호(POF0 ~ POF5)가 하이 레벨에 있을 때, 수신된 데이터를 데이터 버스 라인(DF)으로 출력한다.
스위치(66b)는 출력 클럭 신호(OCLKR)에 동기하여 턴온되고, 데이터 버스 라인(DR)을 출력 버퍼에 연결시킨다. 스위치(66c)는 출력 클럭 신호(OCLKF)에 동기하여 턴온되고, 데이터 버스 라인(DF)을 출력 버퍼에 연결시킨다.
도 36은 도 35에 도시된 카운터(PI)의 세부를 도시한다. 카운터(PI)는 직렬로 연결된 D 플립 플롭 회로(68a, 68b, 68c, 68d, 68e, 68f), 이와 같이 D 플립 플롭 회로 사이에 배열된 선택기(68g, 68h, 68i), 및 OR 회로(68j)를 포함한다.
OR 회로(68j)는 판독 버스 인에이블 신호(RDRE)에 동기하여 클럭 신호(PICLK)를 출력한다. 선택기(68g ~ 68i)는 버스트 길이 신호(BL4/2)가 로우 레벨과 하이 레벨에 있을 때, 각각 입력 단자("0")와 입력 단자("1")로 제공된 신호를 선택한다.
D 플립 플롭 회로(68a ~ 68f)는 버스트 길이 신호(BL4/2)가 하이 레벨에 있을 때(버스트 길이 BL = "4") 쉬프트 레지스터로서 동작하고, 클럭 신호(PICLK)의 상승 에지들에 동기하여 입력 카운터 신호(PI0 ~ PI5)를 순차적으로 출력한다. 또한, D 플립 플롭 회로(68a, 68b), D 플립 플롭 회로(68c, 68d), 및 D 플립 플롭 회 로(68e, 68f)는 버스트 길이 신호(BL4/2)가 로우 레벨에 있을 때(버스트 길이 BL = "2"), 동일한 입력 신호를 수신하여 동작한다.
도 37은 도 35에 도시된 카운터(POR, POF)의 세부를 도시한다. 카운터(POR, POF)의 회로 구조는 동일하기 때문에, 카운터(POR)만을 설명하겠다. 카운터(POR)는 선택기(70a, 70b, 70c, 70d, 70e, 70f)와 D 플립 플롭 회로(70g, 70h, 70i, 70j, 70k, 70l)을 교대로 연결함으로써 구성된다.
선택기(70a ~ 70f)는 출력 인에이블 신호(OER)가 로우 레벨과 하이 레벨에 있을 때, 입력 단자("0")와 입력 단자("1")에 제공된 신호를 각각 선택한다. D 플립 플롭 회로(70g ~ 70l)는 출력 인에이블 신호(OER)가 하이 레벨에 있을 때, 쉬프트 레지스터로서 동작하고, 출력 클럭 신호(OCLKR)의 상승 에지들에 동기하여 출력 카운터 신호(POR0 ~ POR5)를 순차적으로 출력한다. 또한, D 플립 플롭 회로(70g ~ 70l)로부터의 출력은 출력 인에이블 신호(OER)가 로우 레벨에 있을 때, 자신의 입력으로 다시 입력된다. 즉, D 플립 플롭 회로(70g ~ 70l)는 유휴 상태(idle states)로 바뀐다.
도 38은 도 3에 도시된 각 뱅크 내의 데이터 스위칭 회로(72)의 세부를 도시한다. 데이터 스위칭 회로(72)는 판독 증폭기(RAMP)로부터 출력된 판독 데이터를 병렬/순차 변환 회로(66)로 전송하는데 데이터 버스 라인(RDBN0 ~ RDBN3)(IRDBN0 ~ IRDBN3) 중 어느 것이 사용되는지를 결정하기 위한 회로이다.
데이터 스위칭 회로(72)는 판독 증폭기(RAMP)로부터의 판독 데이터를 임의의 데이터 버스 라인(RDBN0 ~ RDBN3)으로 출력하는 8개의 3 상태 버퍼(72a, 72b, 72c, 72d, 72e, 72f, 72g, 72h), 3 상태 버퍼(72a ~ 72h)를 제어하는 AND 회로(72i, 72j, 72k, 72l), 및 AND 회로(72i ~72l)로 신호를 입력하는 제어 회로(72m)를 포함한다.
제어 회로(72m)는 판독 버스 인에이블 신호(RDRE)를 지연시키고 AND 회로(72i ~ 72l)를 동작시키는 타이밍 신호를 생성하는 지연 회로(DLY8), AND 회로(72i ~72l)중 어느 것이 하위 어드레스 신호(LA1)와 버스트 길이 신호(BL4/2)에 따라 동작되는지 결정하는 논리 게이트, 및 버스트 길이가 "2"로 설정되어 있을 때, AND 회로(72i, 72j)와 AND 회로(72k, 72l)를 교대로 동작시키는 D 플립 플롭 회로를 포함한다.
전술한 데이터 스위칭 회로(72)에서, 버스트 길이가 "4"로 설정되어 있을 때, AND 회로(72k, 72l)가 동작하고, 3 상태 버퍼(72e, 72f, 72g, 72h)가 턴온된다. 즉, 데이터 버스 라인(DB0 ~ DB3)(/DB0 ~ /DB3)을 통하여 출력되는 판독 데이터는 데이터 버스 라인(RDBN0 ~ RDBN3)으로 각각 전송된다.
버스트 길이가 "2"로 설정되어 있을 때, 동작될 AND 회로(72i ~72l)는 하위 어드레스 신호(LA1)에 따라 다르다. 하위 어드레스(LA1)가 "0"일 때, AND 회로(72l, 72j)가 순차적으로 동작한다. 이 때, 3 상태 버퍼(72e, 72f)가 먼저 턴온된 이후에, 3 상태 버퍼(72a, 72b)가 턴온된다. 하위 어드레스(LA1)가 "1"일 때, AND 회로(72k, 72I)가 순차적으로 동작한다. 이 때, 3 상태 버퍼(72g, 72h)가 먼저 턴온된 이후에, 3 상태 버퍼(72c, 72d)가 턴온된다.
도 39와 도 40은 도 35에 도시된 병렬/순차 변환 회로(66)의 동작을 도시한 다(버스트 길이 = "4"). 이 실시예에서, 판독 커맨드(RDA)는 뱅크(BK0, BK1, BK2)로 순차적으로 제공된다. 도 39는 판독 데이터가 래치(0R ~ 5R)에 의해 래치될 때까지의 동작을 도시하고, 도 40은 래치된 데이터가 출력될 때까지의 동작을 도시한다. 그런데, 이 실시예에서 하나의 데이터 그룹(예를 들어, BYTEA) 내의 하나의 데이터 입/출력 단자(예를 들어, DQA0)의 동작을 설명하겠다.
먼저, 도 39에 도시된 바와 같이, 각 뱅크(BK0 ~ BK2)의 판독 버스 인에이블 신호(RDRE)는 판독 커맨드(RDA)에 따라 순차적으로 활성화되고(도 39a, 도 39b, 도 39c), 판독 데이터(D0 ~ D3, D4 ~ D7, D8 ~ D11)는 데이터 버스 라인(RDBN0 ~ RDBN3)으로 출력된다(도 39d, 도 39e, 도 39f).
도 36에 도시된 카운터(PI)는 하이 레벨의 버스트 길이 신호(BL4/2)와 판독 버스 인에이블 신호(RDRE)를 수신하고, 카운터 신호(PI0 ~ PI1, PI2 ~ PI3, PI4 ~ PI5)를 순차적으로 활성화시킨다(도 39g, 도 39h, 도 39i). 병렬/순차 변환 회로(66)의 래치(0R, 0F)는 카운터 신호(PI0)가 하이 레벨에 있는 동안에, 각각 판독 데이터(D0, D1)를 래치한다(도 39j). 래치(1R, 1F)는 카운터 신호(PI1)가 하이 레벨에 있는 동안 판독 데이터(D2, D3)를 각각 래치한다(도 39k).
래치(2R, 2F)는 카운터 신호(PI2)가 하이 레벨에 있는 동안 판독 데이터(D4, D5)를 각각 래치한다(도 39l). 래치(3R, 3F)는 카운터 신호(PI3)가 하이 레벨에 있는 동안 판독 데이터(D6, D7)를 각각 래치한다(도 39m). 래치(4R, 4F)는 카운터 신호(PI4)가 하이 레벨에 있는 동안 판독 데이터(D8, D9)를 각각 래치한다(도 39n). 래치(5R, 5F)는 카운터 신호(PI5)가 하이 레벨에 있는 동안 판독 데이터(D10, D11)를 각각 래치한다(도 39o).
도 40에 도시된 바와 같이, 도 35에 도시된 카운터(POR)는 출력 인에이블 신호(OER)가 하이 레벨에 있는 동안에, 출력 클럭 신호(OCLKR)에 동기하여 카운터 신호(POR0 ~ POR5)를 순차적으로 활성화시킨다(도 40a). 카운터(POF)는 출력 인에이블 신호(OEF)가 하이 레벨에 있는 동안에, 출력 클럭 신호(OCLKF)에 동기하여 카운터 신호(POF0 ~ POF5)를 순차적으로 활성화시킨다(도 40b).
다음으로, 카운터 신호(POR0 ~ POR5)의 활성화에 응답하여, 래치(0R ~ 5R)에 유지되어 있는 데이터(D0, D2, D4, D6, D8, D10)가 순차적으로 데이터 버스 라인(DR)으로 출력된다(도 40c). 마찬가지로, 카운터 신호(POF0 ~ POF5)의 활성화에 응답하여, 래치(0F ~ 5F)에 유지되어 있는 데이터(D1, D3, D5, D7, D9, D11)가 순차적으로 데이터 버스 라인(DF)으로 출력된다(도 40d). 데이터 버스 라인(DR, DF)으로 출력되는 데이터(D0 ~ D11)는 출력 클럭 신호(OCLKR, OCLKF)에 동기하여 교대로 출력 버퍼로 전송되고, 데이터 스트로브 신호(DQS)의 상승 에지들과 하강 에지들에 동기하여 데이터 입/출력 단자(DQ)로부터 출력된다(도 40e).
도 41과 도 42는 도 35에 도시된 병렬/순차 변환 회로(66)의 동작을 도시한다(버스트 길이 = "2"). 이 실시예에서, 판독 커맨드(RDA)는 뱅크(BK0 ~ BK3)로 순차적으로 제공된다. 도 41은 판독 데이터가 래치(0R ~ 5R)에 의해 래치될 때까지의 동작을 도시하고, 도 42는 래치된 데이터가 출력될 때까지의 동작을 도시한다. 그런데, 이 실시예에서 하나의 데이터 그룹(예를 들어, BYTEA) 내의 하나의 데이터 입/출력 단자(예를 들어, DQA0)의 동작을 설명하겠다.
먼저, 도 41에 도시된 바와 같이, 각 뱅크(BK0 ~ BK3)의 판독 버스 인에이블 신호(RDRE)는 판독 커맨드(RDA)에 따라 순차적으로 활성화된다(도 41a ~ 41f). 이 실시예에서 첫 번째로 제공되는 하위 어드레스 신호(LA1)는 "0"이다. 따라서, 도 38에 도시된 데이터 스위칭 회로(72)는 3 상태 버퍼(72e, 72f)와 3 상태 버퍼(72a, 72b)를 순차적으로 동작시키고, 판독 데이터(D0 ~ D1, D4 ~ D5, D8 ~ D9)를 데이터 버스 라인(RDBN0 ~ RDBN1)으로 출력하며, 판독 데이터(D2 ~ D3, D6 ~ D7, D10 ~ D11)를 데이터 버스 라인(RDBN2 ~ RDBN3)으로 출력한다(도 41g, 도 41h).
도 36에 도시된 카운터(PI)는 로우 레벨의 버스트 길이 신호(BL4/2)와 판독 버스 인에이블 신호(RDRE)를 수신하고, 카운터 신호(PI0 ~ PI5)를 순차적으로 활성화시킨다(도 41i ~ 도 41n). 병렬/순차 변환 회로(66)의 래치(0R, 0F)는 카운터 신호(PI0)가 하이 레벨에 있는 동안에, 각각 판독 데이터(D0, D1)를 래치한다(도 41o). 래치(1R, 1F)는 카운터 신호(PI1)가 하이 레벨에 있는 동안 판독 데이터(D2, D3)를 각각 래치한다(도 41p).
래치(2R, 2F)는 카운터 신호(PI2)가 하이 레벨에 있는 동안 판독 데이터(D4, D5)를 각각 래치한다(도 41q). 래치(3R, 3F)는 카운터 신호(PI3)가 하이 레벨에 있는 동안 판독 데이터(D6, D7)를 각각 래치한다(도 41r). 래치(4R, 4F)는 카운터 신호(PI4)가 하이 레벨에 있는 동안 판독 데이터(D8, D9)를 각각 래치한다(도 41s). 래치(5R, 5F)는 카운터 신호(PI5)가 하이 레벨에 있는 동안 판독 데이터(D10, D11)를 각각 래치한다(도 41t).
도 42에 도시된 바와 같이, 도 40과 관련하여 전술한 것과 유사하게, 카운터 신호(POR0 ~ POR5, POF0 ~ POF5)는 출력 클럭 신호(OCLKR, OCLKF)에 동기하여 순차적으로 활성화되고, 데이터 스트로브 신호(DQS)의 상승 에지들과 하강 에지들에 동기하여 데이터 입/출력 단자(DQ)로부터 순차적으로 출력된다.
이제, 이 실시예에 따른 반도체 메모리의 동작을 설명하겠다.
도 43은 뱅크(BK0 ~ BK1)의 판독 동작(버스트 길이 = "4")이 연속적으로 수행되고 있는 동안에, 리프레시 요청(REFRQ)이 생성되는 경우의 동작을 도시한다. 도 3에 도시된 리프레시 요청 회로(22)는 클럭 신호(CLK)의 하강 에지에 동기하여 리프레시 요청 신호(RFERQ)를 활성화시킨다(도 43a). 리프레시 카운터(24)는 리프레시 요청 신호(REFRQ)를 수신하여 카운트(count up)한다. 이 실시예에서, 리프레시 뱅크 번호(REFBNK#)와 리프레시 블록 번호(REFDQ#)는 각각 뱅크(BK0)와 메모리 블록(BLKDQ1)으로 스위칭된다(도 43b).
뱅크(BK0)의 제2 제어 회로(도 13)는 리프레시 요청 신호(REFRQ)에 응답하여 동작하고, 리프레시 어드레스 중 상위 어드레스(UA)와 메모리 코어를 제어하기 위한 타이밍 신호를 어드레스 버스(BADR)와 타이밍 신호 버스(BTMG)로 출력한다. 이 때, 뱅크(BK0)의 비지 레지스터(60)는 리프레시 블록 번호(REFDQ#)로서 메모리 블록(BLKDQ0)을 유지한다(도 43c). 뱅크(BK0)는 비지 레지스터(60)로부터 활성화된 비지 신호(BDQ0)를 수신하고, 메모리 블록(BLKDQ0)을 리프레시한다(도 43d).
다음으로, 판독 커맨드(RDA1 ~ RDA8)는 클럭 신호(CLK)의 첫 번째 상승 에지와 뒤이은 상승 에지들에 동기하여 뱅크(BK0 ~ BK1)로 제공된다. 판독 커맨드(RDA1)에 응답하여, 뱅크(BK0)는 비활성화된 비지 신호(BDQ#)에 대응하는 메 모리 블록(BLKDQ1 ~ BLKDQ8, BLKP)의 판독 동작(READ1)을 수행한다(도 43e). 판독 동작(READ1)은 메모리 블록(BLKDQ0)의 리프레시 동작에 병렬적으로 수행된다.
도 33에 도시된 패리티 검사 회로(64)는 하이 레벨의 비지 플래그 신호(BFDQ0)와 판독 데이터를 수신한다(도 43f). 그 후, 메모리 블록(BLKDQ0)에 유지된 데이터는 메모리 블록(BLKDQ1 ~ BLKDQ8, BLKP)의 판독 데이터로부터 생성된다. 도 35에 도시된 병렬/순차 변환 회로(66)는 판독 데이터(READ1) 등을 병렬적인 것에서 순차적인 것으로 변환하고, 이들을 다섯 번째 클럭 신호(CLK)와 뒤이은 클럭 신호(CLK)에 대응하는 데이터 스트로브 신호(DQS)에 동기하여 출력한다(도 43g). 뱅크(BK0)(도 13)의 비지 레지스터(60)는 판독 동작(READ1)의 완료 이후에 리프레시 카운터(24)(도 3)로부터 출력된 비지 신호(REFDQ1)를 수신한다(도 43h).
한편, 뱅크(BK1)가 비활성화된 비지 신호(BDQ#)에 대응하는 메모리 블록(BLKDQ1 ~ BLKDQ8, BLKP)의 판독 동작(READ2)을 수행한다(도 43i). 그 후, 전술한 뱅크(BK0)와 마찬가지로, 메모리 블록(BLKDQ0)에 유지된 데이터가 메모리 블록(BLKDQ1 ~ BLKDQ8, BLKP)의 판독 데이터로부터 생성된다. 판독 데이터는 일곱 번째 클럭 신호(CLK)와 뒤이은 클럭 신호(CLK)에 대응하는 데이터 스트로브 신호(DQS)에 동기하여 출력된다(도 43j).
이후에, 판독 커맨드(RDA3 ~ RDA4)에 대응하는 판독 동작들(READ3, READ4)이 수행된다(도 43k, 도 43l). 다음의 리프레시 요청(REFRQ)은 판독 커맨드(RDA5)가 제공된 직후에 생성된다(도 43m). 리프레시 요청 신호(REFRQ)에 응답하여, 리프레시 카운터(24)는 리프레시 뱅크 번호(REFBNK#)를 뱅크(BK1)로 스위칭한다(도 43n).
뱅크(BK1) 내의 비지 레지스터(60)(도 13)는 리프레시 블록 번호(REFDQ#)로서 메모리 블록(BLKDQ0)를 유지한다(도 43o). 따라서, 뱅크(BK1)가 비지 레지스터(60)로부터 활성화된 비지 신호(BDQ0)를 수신하고, 메모리 블록(BLKDQ0)을 리프레시한다(도 43p). 뱅크(BK1)의 리프레시 동작은 판독 동작(READ4, READ6)에 병렬적으로 수행된다. 뱅크(BK1)의 비지 레지스터(60)는 판독 동작(READ6)을 완료한 후에, 리프레시 카운터(24)(도 3)로부터 출력된 비지 신호(REFDQ1)를 수신한다(도 43q).
이후에, 판독 커맨드(RDA7 ~ RDA8)에 대응하는 판독 동작(READ7, READ8)이 수행된다(도 43r, 도 43s). 또한, 다음의 리프레시 요청(REFRQ)이 생성된다(도 43t). 리프레시 요청 신호(REFRQ)에 응답하여, 리프레시 카운터(24)는 리프레시 뱅크 번호(REFBNK#)를 뱅크(BK2)로 스위칭한다(도 43u).
도 44는 기록 커맨드(WRA)가 동일한 뱅크에 연속적으로 제공될 때의 동작을 도시한다(버스트 길이 = "2"). 이 실시예에서 리프레시 요청(REFRQ)이 생성되지 않고, 비지 레지스터(60)(도 13)는 비지 신호(BDQ0)를 활성화시킨다(도 44a). 도면에서 점선으로 표시된 프레임은 도 13에 도시된 제2 제어 회로(50)에 의한 동작을 나타낸다.
먼저, 기록 커맨드(WRA1)는 클럭 신호(CLK)의 제1 상승 에지에 동기하여 제공된다. 비지 신호(BDQ0)의 활성화에 응답하여, 메모리 블록(BLKDQ0)의 선택기(ASEL, TSEL)는 어드레스 버스(BADR)와 타이밍 신호 버스(BTMG)를 선택한다. 비지 신호(BDQ1 ~ BDQ8, BDQP)의 비활성화에 응답하여, 메모리 블록(BLKDQ1 ~ BLKDQ8, BLKP)은 어드레스 버스(NADR)와 타이밍 신호 버스(NTMG)를 선택한다. 그 결과, 메모리 블록(BLKDQ0)에 대한 기록 동작은 어드레스 버스(BADR)와 타이밍 신호 버스(BTMG)를 통하여 신호를 전송함으로써 수행된다(도 44b). 메모리 블록(BLKDQ1 ~ BLKDQ8, BLKP)에 대한 기록 동작은 어드레스 버스(NADR)와 타이밍 신호 버스(NTMG)를 통하여 신호를 전송함으로써 수행된다(도 44c). 즉, 활성화된 비지 신호(BDQ0)에 대응하는 기록 동작은 도 13에 도시된 제2 제어 회로(50)에 의해 수행되고, 다른 비지 신호(BDQ1 ~ BDQ8, BDQP)에 대응하는 기록 동작들은 제1 제어 회로(40)에 의해 수행된다.
그런데, 이 실시예의 반도체 메모리는 늦은 기록 기능을 채용하고 있기 때문에, 이전의 기록 커맨드(WRA)에 대응하는 늦은 기록 동작(WRITE0)(기록 어드레스 A0)은 기록 커맨드(WRA1)에 응답하여 수행된다. 기록 커맨드(WRA1)에 대응하여 제공되는 기록 어드레스(A1)와 기록 데이터(D1)는 어드레스 레지스터(도 17, 도 23)와 데이터 레지스터에 유지된다. 이후에, 늦은 기록 동작(WRITE1 ~ WRITE5)은 전술한 바와 마찬가지로 기록 커맨드(WRA2 ~ WRA6)에 응답하여 수행된다.
도 45와 도 46은 기록 커맨드(WRA1 ~ WRA11)가 연속적으로 동일한 뱅크로 제공될 때(버스트 길이 = "2"), 리프레시 요청(REFRQ)이 생성되는 경우의 동작을 도시한다. 이 실시예에서 비지 신호(BDQ0)가 활성화된다(도 45a).
먼저, 기록 커맨드(WRA1)에 응답하는 늦은 기록 동작(WRITE0)이 도 44와 비슷하게 수행된다(도 45b). 다음으로, 기록 커맨드(WRA2)가 제공되고, 늦은 기록 동작(WRITE1)이 수행된다. 기록 동작(WRITE1)이 수행되고 있는 동안에, 리프레시 요청(REFRQ)이 생성된다(도 45c).
리프레시 요청(REFRQ)과 리프레시 엔트리 신호(REFENT)의 활성화에 응답하여, 도 23에 도시된 어드레스 레지스터(52)는 리프레시 어드레스(REF)를 어드레스 버스(BADR)로 출력한다(도 45d). 기록 동작(WRITE1)의 완료 후에, 메모리 블록(BLKDQ0)을 제어하는 제2 제어 회로(50)는 도 26에 도시된 것처럼 리프레시 동작(REFA)을 수행한다(도 45e). 리프레시 동작(REFA)은 예를 들면, 도 24에 도시된 R 사이클 카운터(54B)를 사용하여 수행된다. 도 44를 참조하여 전술한 것과 마찬가지로, 늦은 기록 동작(WRITE1)이 메모리 블록(BLKDQ1 ~ BLKDQ8, BLKP)에서 수행된다(도 45f).
메모리 블록(BLKDQ0)의 리프레시 동작(REFA)이 완료된 때, 다음 기록 커맨드(WRA3)가 제공된다. 따라서, 제2 제어 회로(50)는 리프레시 동작(REFA)에 이어 늦은 기록 동작(WRITE2)을 수행한다(도 45g). 즉, 기록 커맨드(WRA)와 리프레시 요청(REFRQ)이 서로 충돌할 때, 제2 제어 회로(50)는 수신 순서에 따라 리프레시 동작 또는 기록 동작을 수행한다. 제1 제어 회로(40)는 기록 커맨드(WRA3)에 동기하여 다른 메모리 블록(BLKDQ1 ~ BLKDQ8, BLKP)에 기록 동작을 수행한다. 이 실시예에서, 외부 기록 사이클(tERC)은 4 클럭 사이클로 설정되어 있고, 도 1을 참조하여 설명한 기본 원리와 유사하게 내부 기록 사이클(tIRC)은 외부 기록 사이클(tERC)보다 0.5 클럭 짧은 3.5 클럭 사이클로 설정되어 있다. 따라서, 메모리 블록(BLKDQ0)의 기록 동작과 다른 메모리 블록(BLKDQ1 ~ BLKDQ8, BLKP)의 기록 동작 간의 간격이 점차 감소된다.
도 46에서, 늦은 기록 동작(WRITE6 ~ WRITE8)이 기록 커맨드(WRA7 ~ WRA9)에 대응하여 수행된다(도 46a, 도 46b, 도 46c). 기록 커맨드(WRA9)에 대응하는 메모리 블록(BLKDQ0)의 기록 동작(WRITE8)은 다른 메모리 블록(BLKDQ1 ~ BLKDQ8, BLKP)의 기록 동작(WRITE8)의 타이밍과 동일한 타이밍에 수행된다.
도 13에 도시된 비지 레지스터(60)는 모든 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)이 동작하지 않을 때, 비지 신호(BDQ0)를 비활성화시키고 비지 신호(BDQ1)를 활성화시킨다(도 46d). 따라서, 메모리 블록(BLKDQ1)의 기록 동작(WRITE9 ~ WRITE11)이 제2 제어 회로(50)에 의하여 수행되고, 다른 메모리 블록(BLKDQ0, BLKDQ2 ~ BLKDQ8, BLKP)의 기록 동작(WRITE9 ~ WRITE11)이 제1 제어 회로(40)에 의하여 수행된다(도 46e, 도 46f, 도 46g).
도 47은 판독 커맨드(RDA1 ~ RDA6)가 동일한 뱅크에 연속적으로 제공될 때(버스트 길이 = "2"), 리프레시 요청(REFRQ)이 생성될 때의 경우의 동작을 도시한다. 이 실시예에서, 비지 신호(BDQ0)가 리프레시 요청(REFRQ)이 생성되기 전에 활성화된다(도 47a). 도 43의 동작과 동일한 동작에 대하여는 자세한 설명을 생략한다.
먼저, 판독 커맨드(RDA1)가 공급되고, 판독 동작(READ1)이 수행된다. 판독 동작에서 도 13에 도시된 제1 제어 회로(40)만이 동작하고, 제2 제어 회로(50)는 동작하지 않는다. 따라서, 비지 신호(BDQ0)에 대응하는 메모리 블록(BLKDQ0)은 동작하지 않는다. 메모리 블록(BLKDQ0)으로부터의 판독 데이터는 다른 메모리 블록(BLKDQ1 ~ BLKDQ8, BLKP)의 판독 데이터로부터 생성된다.
리프레시 요청(REFRQ)이 판독 동작(READ1) 동안에 생성될 때, 제2 제어 회로(50)가 동작하고, 비지 신호(BDQ0)에 대응하는 메모리 블록(BLKDQ0)의 리프레시 동작(REFA)이 수행된다(도 47b). 리프레시 동작(REFA) 동안에, 다음 판독 커맨드(RDA2)가 제공되고, 메모리 블록(BLKDQ1 ~ BLKDQ8, BLKP)의 판독 동작(READ2)이 수행된다.
리프레시 동작(REFA)을 수행한 후에, 도 13에 도시된 비지 레지스터(60)는 모든 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)의 동작이 완료되길 기다려, 비지 신호(BDQ0)를 비활성화시키고, 비지 신호(BDQ1)를 활성화시킨다(도 47c). 비지 신호(BDQ1)의 활성화에 응답하여, 판독 동작을 수행하지 않는 메모리 블록은 BLKDQ0에서 BLKDQ1로 스위칭한다(도 47d). 그 후, 메모리 블록(BLKDQ0, BLKDQ2 ~ BLKDQ8, BLKP)에 대한 동작이 수행되고, 판독 커맨드(RDA3 ~ RDA6)에 대응하는 판독 동작(READ3 ~ READ6)이 수행된다.
도 48은 본 실시예에 따라 반도체 메모리의 사용자들에게 대표적인 AC 스펙을 보여준다. LRBD(Random Bank Access Delay), LRWD(LAL following RDA to WRA Delay), 및 LDIN(WRA Command to Data-in Delay)이 버스트 길이(BL)에 따라 변화한다는 것은 독특한 것이다. 이와 같은 스펙 때문에, 버스트 길이와 관계없이 데이터 입/출력 단자(DQ)를 효율적으로 사용할 수 있고, 따라서, 데이터 전송 속도가 향상될 수 있다.
LLOCK(DLL lock-on Time)은 전원을 턴온하는 등에 있어, 도 3에 도시된 DLL 회로(8)로부터 출력되는 위상 조정 클럭 신호(PCLK)가 안정화될 때까지의 클럭 사 이클 수이다. LRST(/RST Low Input Hold for Chip Reset)는 리셋 신호(/RST)를 출력한 이후 칩 선택 신호(/CS)가 활성화될 때까지 요구되는 클럭 사이클 수이다. LRSC(Mode Register SET Cycle Time)는 모드 레지스터 설정 커맨드(MRS) 이후, 이 값이 모드 레지스터(2)에 실제적으로 설정될 때까지 요구되는 클럭 사이클 수이다.
도 49 내지 도 60은 도 48에 도시된 AC 스펙의 구체적인 예들이다.
도 49는 동일한 뱅크(BK)로부터의 판독 동작(버스트 길이 = "2")의 예를 도시한다. 도 50은 동일한 뱅크(BK)로부터의 판독 동작(버스트 길이 = "4")의 예를 도시한다. 판독 커맨드(RDA)를 제공하는 간격은 LRC(Random Read/Write Cycle Time)에 의해 정의된다. 판독 커맨드(RDA)로부터 하위 어드레스 래치 커맨드(LAL)까지의 지연은 LRCD(RDA/WRA to LAL Command Input Delay)에 의해 정의된다. 하위 어드레스 래치 커맨드(LAL)로부터 다음 판독 커맨드(RDA)까지의 지연은 LRAS(LAL to RDA/WRA Command Input Delay)에 의해 정의된다. 판독 커맨드(RDA)로부터 첫번째 데이터의 출력까지의 지연은 LRAC(RDA Command to Access Delay)에 의해 정의된다.
도 51은 동일한 뱅크(BK)에 기록하는 동작의 예이다(버스트 길이 = "2"). 도 52는 동일한 뱅크(BK)에 대한 기록 동작의 예이다(버스트 길이 = "4"). 기록 커맨드(WRA)를 제공하는 간격은 LRC에 의하여 정의된다. 기록 커맨드(WRA)로부터 하위 어드레스 래치 커맨드(LAL)까지의 지연은 LRCD에 의하여 정의된다. 하위 어드레스 래치 커맨드(LAL)로부터 다음 기록 커맨드(WRA)까지의 지연은 LRAS에 의하여 정의된다. 기록 커맨드(WRA)로부터 데이터의 입력까지의 지연은 LDIN(WRA Command to Data-in Delay)에 의하여 정의된다. 버스트 길이가 "2"와 "4"일 때, LDIN은 각각 3 클럭 사이클과 2 클럭 사이클이다. 기록 동작에 있어서, 늦은 기록 동작이 전술한 바와 같이 수행된다.
도 53은 복수의 뱅크(BK)로부터 판독하는 동작의 예를 도시한다(버스트 길이 = "2"). 도 54는 복수의 뱅크(BK)로부터 판독하는 동작의 예를 도시한다(버스트 길이 = "4"). LRCD, LARS, LRAC는 도 49와 도 50에 도시된 것과 동일하다. 판독 커맨드(RDA)를 상이한 뱅크(BK)에 제공하는 간격은 LRBD(Random Bank Access Delay)에 의해 정의된다. 버스트 길이(BL)가 "2"와 "4"일 때, LRBD는 각각 최소한 1 클럭 사이클과 최소한 2 클럭 사이클이다.
도 55는 복수의 뱅크(BK)로 기록하는 동작의 예이다(버스트 길이 = "2"). 도 56은 복수의 뱅크(BK)로 기록하는 동작의 예이다(버스트 길이 = "4"). LRCD, LRAS, LDIN은 도 51과 도 52에 도시된 것과 동일하다. 기록 커맨드(WRA)를 상이한 뱅크(BK)로 제공하는 간격은 LRBD에 의하여 정의된다. 판독 동작과 마찬가지로, 버스트 길이(BL)가 "2"와 "4"일 때, LRBD는 각각 최소한 1 클럭 사이클과 최소한 2 클럭 사이클이다.
도 57은 동일한 뱅크(BK)에 대한 판독 동작과 기록 동작의 예를 도시한다(버스트 길이 = "2"). 도 58은 동일한 뱅크(BK)에 대한 판독 동작과 기록 동작의 예를 도시한다(버스트 길이 = "4"). LRC, LRAC, 및 LDIN은 도 49 내지 도 52에 도시된 것과 동일하다. 판독 커맨드(RDA) 이후 하위 어드레스 래치 커맨드(LAL)로부터 다음 기록 커맨드(WRA)까지의 지연은 LRWD(LAL following RDA to WRA delay)에 의 해 정의된다. 버스트 길이(BL)가 "2"와 "4"일 때, LRWD는 각각 최소 2.5 클럭 사이클과 최소 4.5 클럭 사이클이다. 기록 커맨드(WRA) 이후 하위 어드레스 래치 커맨드(LAL)로부터 다음 판독 커맨드(RDA)까지의 지연은 LWRD(LAL following WRA to RDA Delay)에 의해 정의된다.
도 59는 복수의 뱅크(BK)에 대한 판독 동작과 기록 동작의 예를 도시한다(버스트 길이 = "2"). 도 60은 복수의 뱅크(BK)에 대한 판독 동작과 기록 동작의 예를 도시한다(버스트 길이 = "4").
전술한 바와 같이, 본 실시예에 의하면, 제1 제어 회로(40)와 패리티 검사 회로(64)는 리프레시 중인 메모리 블록(예를 들어, BLKDQ0) 대신에, 다른 메모리 블록(예를 들어, BLKDQ1 ~ BLKDQ8)의 데이터와 기록 데이터의 패리티 비트가 저장되어 있는 메모리 블록(BLKP)의 데이터를 사용하여 판독 데이터를 재생성한다. 따라서, 판독 커맨드(RDA)와 리프레시 요청(REFRQ)이 서로 충돌하는 경우에도, 액세스 시간을 지연시키지 않고 판독 데이터를 출력하는 것이 가능하다. 그 결과, 판독 데이터를 재생성하는 경우에도 판독 커맨드(RDA)에 신속히 응답할 수 있고, 높은 데이터 전송 속도로 판독 데이터를 출력할 수 있다.
기록 커맨드(WRA)와 리프레시 요청(REFRQ)이 서로 충돌할 때, 제2 제어 회로(50)의 아비터(58)는 수신하는 순서에 따라 기록 동작 또는 리프레시 동작을 순차적으로 수행한다. 또한, 기록 커맨드(WRA)를 제공하는 최소 간격인 외부 기록 사이클(tERC)은 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)에 대한 기록 동작의 실제 시간인 내부 기록 사이클(tIRC)보다 더 길게 설정되어 있다. 이러한 이유 때문에, 기록 커맨드(WRA)가 여러번 제공되는 동안 반드시 리프레시 사이클이 삽입될 수 있고, 따라서, 메모리 셀들에 유지된 데이터가 파괴되는 것을 방지할 수 있다.
따라서, 이 반도체 메모리를 사용하는 사용자들은 반도체 메모리 내부에서 생성되는 리프레시 요청(REFRQ), 및 사용자들이 제공하는 판독 커맨드(RDA)와 기록 커맨드(WRA) 간의 경쟁을 인식하지 않고, 판독 동작과 기록 동작을 수행할 수 있다. 예를 들어, 본 발명이 DRAM에 적용된다면, DRAM이 장착되는 시스템에 리프레시 제어기는 불필요해진다. 그 결과, 사용자는 SRAM과 동일한 방식으로 DRAM을 사용할 수 있다. 즉, 리프레시 동작을 숨김으로써, DRAM의 대용량과 SRAM의 사용성(operability)을 모두 가진 반도체 메모리를 제공할 수 있다.
메모리 블록(BLKDQ0 ~ BLKDQ8)은 각각 데이터 입/출력 단자에 대응하여 형성되어 있고, 메모리 블록 중 하나만이 리프레시 요청(REFRQ)에 응답하여 동시에 동작되도록 허용된다. 즉, 판독 동작에서 모든 메모리 블록(BLKDQ0 ~ BLKDQ8)은 판독 데이터를 출력하도록 항상 동작한다. 리프레시 요청이 생성될 때, 리프레시 동작 때문에 판독될 수 없는 데이터는 데이터 입/출력 단자들로부터 출력된 판독 데이터 중 항상 단지 한 비트뿐이다. 따라서, 리프레시를 수행하는 메모리 블록에 저장된 데이터는 다른 메모리 블록들을 사용하여 반드시 재생성될 수 있다.
제1 제어 회로(40)는 리프레시 카운터(예를 들어, BLKDQ0)에 의해 표시된 메모리 블록으로부터 판독 동작을 수행하지 않고, 리프레시 요청(REFRQ)이 생성되지 않을 때조차 다른 메모리 블록들(예를 들어, BLKDQ1 ~ BLKDQ8, BLKP)을 사용하여 판독 데이터를 재생성한다. 따라서, 제1 제어 회로(40)의 제어를 용이하게 하 고, 회로 구조를 간단하게 할 수 있다.
메모리 그룹들은 메모리 블록들의 정렬 방향인 제1 방향과 수직인 제2 방향으로 정렬되어 있고, 리프레시 요청(REFRQ)에 응답하는 리프레시 동작은 제2 방향으로 정렬된 메모리 블록에 대하여 수행된다. 즉, 판독 동작과 기록 동작은 각 메모리 그룹에 대하여 수행되고, 리프레시 동작은 복수의 메모리 그룹들에 대하여 동시에 수행된다. 따라서, 모든 메모리 셀을 리프레시하는데 필요한 리프레시 요청(REFRQ)의 생성 횟수를 최소화할 수 있고, 리프레시 요청(REFRQ)을 생성하는 간격을 길게 할 수 있다.
센스 증폭기들(SA)은 메모리 그룹내의 메모리 블록들의 배치 방향(제1 방향)으로 정렬되어 있기 때문에, 복수의 메모리 그룹이 센스 증폭기들을 공유할 수 있고, 따라서, 칩 사이즈가 작아질 수 있다. 마찬가지로, 칼럼 디코더들(CDEC)과 메인 워드 디코더들(MWD)이 메모리 그룹 내의 메모리 블록의 배치 방향(제1 방향)으로 정렬되어 있기 때문에, 복수의 메모리 그룹이 이들을 공유할 수 있고, 따라서, 칩 사이즈가 작아질 수 있다.
기록 커맨드(WRA)는 클럭 신호(CLK)의 상승 에지에 동기하여 수신되고, 리프레시 요청(REFRQ)은 클럭 신호(CLK)의 하강 에지에 동기하여 수신된다. 따라서, 아비터(58)는 적어도 1/2 클럭 또는 그 이상만큼 서로 쉬프트되는 동안에 기록 커맨드(WRA)와 리프레시 요청(REFRQ)을 수신할 수 있고, 도착 순서를 용이하게 판단할 수 있다. 즉, 아비터(58)를 단순한 구조로 할 수 있다.
커맨드 래치/디코더(12)는 클럭 신호(CLK)의 연속적인 상승 에지와 하강 에 지에 동기하여 제1 커맨드와 제2 커맨드를 각각 수신하고, 이 두 커맨드에 기초하여 판독 커맨드 신호(RDAP, RLALP) 또는 기록 커맨드 신호(WRAP, WLALP)를 생성한다. 커맨드들이 클럭 신호(CLK)의 인접한 두 개의 에지에 동기하여 각각 수신되기 때문에, 커맨드의 입력 간격을 짧게 할 수 있고, 액세스 시간을 단축시킬 수 있다.
내부 클럭 신호(ICLK)의 상승 에지에 동기하여 동작하는 F 사이클 카운터(54A)와, 내부 클럭 신호(ICLK)의 하강 에지에 동기하여 동작하는 R 사이클 카운터(54B)는 상태 제어 회로(54) 내부에 형성되고, 사이클 카운터(54A, 54B)는 기록 커맨드 또는 리프레시 커맨드가 제공될 때마다 교대로 동작한다. 기록 동작 또는 리프레시 동작은 2개의 사이클 카운터(54A, 54B)를 교대로 사용하여 수행되기 때문에, 각 동작의 수행을 제어하는 것이 용이할 수 있다.
기록 커맨드(WRA)와 리프레시 요청(REFRQ)을 순차적으로 유지하는 RS 플립 플롭(54e, 54h)은 상태 제어 회로(54)에 형성된다. 따라서, 기록 커맨드(WRA)가 연속적으로 여러 번 제공되는 동안 리프레시 요청(REFRQ)이 생성되는 경우에도, 반드시 기록 동작과 리프레시 동작을 수행할 수 있다. 또한, 리프레시 동작 후에 제공되는 복수의 기록 커맨드(WRA)에 응답하는 기록 동작을 반드시 수행할 수 있다. RS 플립 플롭(54e, 54h)은 리프레시 동작 후에 기록 커맨드(WRA)를 교대로 유지하기 때문에, 기록 커맨드(WRA)의 제공시부터 기록 동작을 개시하기까지의 지연은 기록 동작이 수행될 때마다 감소된다.
커맨드 래치/디코더(12)가 기록 커맨드(WRA)을 수신하는 때부터 기록 데이터를 수신하기 시작하는 때까지의 시간(LDIN)은 버스트 길이에 따라 달라진다. 따라 서, 데이터 버스의 이용 효율을 향상시킬 수 있고, 데이터 전송 속도를 향상시킬 수 있다.
상이한 뱅크(BK)에 대하여 순차적으로 동작이 수행되는 경우, 판독 커맨드(RDA)와 기록 커맨드(WRA)간의 최소한의 제공 간격(LRBD, LRWD, RWRD)은 버스트 길이에 따라 달라진다. 커맨드를 제공하는 스펙은 반도체 메모리의 내부 동작에 따라 설정될 수 있기 때문에, 내부 동작을 제어하는 제어 회로의 구조를 간단하게 만들 수 있다.
버스트 길이(BL)가 "2"로 설정된 경우, 각 뱅크(BK)의 데이터 스위칭 회로(72)는 4개의 판독 데이터 버스 라인 중 2개의 판독 데이터 버스 라인을 교대로 사용하여 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)으로부터 판독된 판독 데이터를 병렬/순차 변환 회로(66)로 전송한다. 따라서, 판독 데이터 버스 라인의 데이터 전송 사이클을 쉬게(ease) 할 수 있다. 그 결과, 높은 클럭 주파수를 가진 동작이 가능해진다.
마찬가지로, 버스트 길이(BL)가 "2"로 설정되어 있을 때, 순차/병렬 변환 회로(34)는 병렬로 변환되는 기록 데이터를 4개의 기록 데이터 버스 라인 중 2개의 기록 데이터 버스 라인으로 교대로 출력한다. 따라서, 기록 데이터 버스 라인의 데이터 전송 사이클을 쉬게(ease) 할 수 있다. 그 결과, 높은 클럭 주파수를 가진 동작이 가능해진다.
가변 기록 길이 비트(VW)에 의해 기록 데이터를 데이터 스트로브 신호(DQS)의 각 에지에 동기하여 입력되는 각 기록 데이터로 마스크할 수 있다. 마스크는 동시에 제공되는 기록 데이터에 의해 설정되기 때문에, 판독 데이터의 리프레시 동작은 단순한 제어 회로에 의해 실현될 수 있다.
리프레시 카운터(24)의 하위 비트는 뱅크(BK)를 선택하기 위한 뱅크 어드레스(BA)(리프레시 뱅크 번호(REFBNK#))에 대응하도록 되어, 리프레시 동작이 각 뱅크(BK)에 대하여 수행된다. 따라서, 동시에 작동될 리프레시 제어 회로의 수가 감소되고, 리프레시 동작 동안의 피크(peak) 전류가 감소될 수 있다. 또한, 복수의 뱅크(BK)가 교대로 리프레시되기 때문에, 동일한 뱅크(BK)가 연속적으로 리프레시되는 경우에 비하여 리프레시 요청을 생성하는 간격을 줄일 수 있다. 따라서, 동작 주파수가 낮은 경우에도, 모든 메모리 셀을 리프레시하는데 필요한 기간을 충분히 만족시킬 수 있다. 즉, 동작 주파수의 하한선을 더 낮아지도록 설정할 수 있다.
도 61은 본 발명에 따른 반도체 메모리의 제2 실시예를 도시한다. 제1 실시예와 동일한 구성 요소에 대하여는 동일한 숫자와 기호가 부여되었고, 이에 대한 자세한 설명은 생략하겠다.
이 실시예에 의하면, 리프레시 동작을 수행하는 메모리 블록(BLKDQ)의 판독 데이터는, 리프레시 동작이 수행될 때에만, 즉, 리프레시 동작과 판독 동작이 서로 충돌할 때에만, 메모리 블록(BLKP)을 사용하여 생성된다. 다시 말해서, 리프레시 요청(REFRQ)이 생성되지 않을 때, 데이터는 메모리 블록(BLKDQ0 ~ BLKDQ8)로부터 직접 판독된다. 이와 같은 동작을 실현하기 위하여 제1 실시예(도 13)의 비지 레지스터(60)가 리프레시 요청 신호(REFRQ)에 따라 비지 신호(BDQ0 ~ BDQ8)를 스위칭 하기 위한 회로로 변경될 수 있다. 구성의 나머지 부분은 제1 실시예와 동일하다. 전술한 제1 실시예와 동일한 효과가 본 실시예에서도 얻어진다.
도 62는 본 발명에 따른 반도체 메모리의 제3 실시예를 도시한다. 제1 실시예와 동일한 구성 요소에 대하여는 동일한 숫자와 기호가 부여되었고, 이에 대한 자세한 설명은 생략하겠다.
본 실시예에 따르면, 제1 실시예(도 33)의 패리티 검사 회로(64) 대신에 패리티 검사 회로(68)가 형성되어 있다. 구성의 나머지 부분은 제1 실시예와 동일하다.
패리티 검사 회로(68)는 데이터 입/출력 단자(DQ)에 대응하는 데이터 버스 라인(RDB)을 제외한 9 비트 판독 데이터, 및 선택기(64c)의 XOR을 연산하는 EOR 회로(68a)를 포함한다. 각 선택기(64c)는 비지 신호(BDQ)가 활성화될 때, EOR 회로(68a)의 출력을 내부 데이터 버스 라인(IRDB)에 연결하고, 비지 신호(BDQ)가 비활성화될 때, 데이터 버스 라인(RDB)을 내부 데이터 버스 라인(IRDB)으로 연결한다.
활성화된 비지 신호(BDQ)에 대응하는 메모리 블록(BLKDQ)이 리프레시 동작을 수행할 가능성이 있기 때문에, 패리티 검사 회로(68)에서는 판독 데이터가 메모리 블록(BLKP)(패리티 비트)을 사용하여 생성된다. 비활성화된 비지 신호(BDQ)에 대응하는 메모리 블록(BLKDQ)이 리프레시 동작을 수행하지 않기 때문에, 데이터는 직접 판독된다. 이 실시예에 의하면, 전술한 제1 실시예와 동일한 효과가 얻어진다.
도 63과 도 64는 본 발명에 따른 반도체 메모리의 제4 실시예를 도시한다. 제1 실시예와 동일한 구성 요소에 대하여는 동일한 숫자와 기호가 부여되었고, 이에 대한 자세한 설명은 생략하겠다.
이 실시예에 따르면, 메모리 코어의 레이아웃이 제1 실시예의 경우와 다르다. 구성의 나머지 부분은 제1 실시예와 동일하다. 각 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP) 내의 로우 블록(RBLK0 ~ RBLK3)과 센스 증폭기(SA0 ~ SA3)는 제1 실시예의 경우와 비교하여 90도 회전하여 정렬되어 있다. 또한, 센스 증폭기(SA0 ~ SA3)는 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)의 경계에 배치되어 있으므로, 공유되지 않는다.
칼럼 디코더(CDEC)와 메인 워드 디코더(MWD)는 제1 실시예와 마찬가지로, 도면에서 수평 방향(제1 방향)으로 정렬되어 있다. 판독 동작과 기록 동작 동안에 활성화되는 영역(도면에서 그물 무늬의 어두운 영역)과 리프레시 동작과 기록 동작에서 활성화되는 영역(도면에서 그물 무늬의 밝은 영역)은 제1 실시예의 경우와 동일하다.
도 64는 도 63에 도시된 로우 블록(RBLK)의 세부를 도시한다. 도 64는 도 63이 90도 회전한 상태를 나타낸다. 즉, 도면에서 수평 방향이 제2 방향이고, 도면에서 길이 방향이 제1 방향이다. 칼럼 선택 스위치(CSW)와 센스 증폭기(SA)는 제2 방향으로 정렬되어 있다.
이 실시예에 의하면, 메인 워드 라인(MWL)의 배선 방향과 칼럼 선택 라인(CLS)의 배선 방향은 제1 실시예의 경우와 다르다. 즉, 메인 워드 라인(MWL)과 칼럼 선택 라인(CLS)은 센스 증폭기(SA)의 배치 방향인 제2 방향으로 배선되어 있다.
메인 워드 라인들(MWL)이 서브 워드 디코더들(SWD)의 배치 방향으로 정렬되어 있기 때문에, 이들은 제2 배선 층을 사용하여 서브 워드 디코더들(SWD)에 직접 연결된다. 칼럼 선택 라인들(CLS)의 배선 방향은 칼럼 선택 스위치(CSW)의 배치 방향과 동일하다. 따라서, 칼럼 선택 라인들(CLS)은 제2 배선 층을 사용하여 메인 워드 라인(MWL)을 따라 배선되고, 그 후, 메모리 셀상의 관통 구멍을 통하여 제1 배선 층에 접속되고, 칼럼 선택 스위치(CSW)에 접속된다. 구성의 나머지 부분은 제1 실시예(도 16)의 경우와 동일하다. 이 실시예에 의하면, 전술한 제1 실시예와 동일한 효과가 얻어진다.
도 65는 본 발명에 따른 반도체 메모리의 제5 실시예를 도시한다. 이 실시예에 따르면, 모드 레지스터의 설정 값에 따라 데이터를 입/출력하기 위한 동기화 신호를 선택할 수 있다. 모드 레지스터의 MODE0 비트가 "1"일 때, DQS 방법은 "양방향(Bi-Directional)"으로 설정된다. 이 때, 선택기(SEL)는 QS 단자를 선택하고, 기록 데이터는 QS 단자로부터 입력된 데이터 스트로브 신호(QS)에 동기하여 수신된다. 또한 판독 데이터는 QS 단자로부터 출력된 데이터 스트로브 신호(QS)에 동기하여 출력된다. 데이터 스트로브 신호(QS)는 위상이 DLL 회로(도시되지 않음)에 의해 조정되는 출력 클럭 신호(OCLK)에 동기화되는 출력 인에이블 신호(QSEN)이다. 즉, 제1 실시예와 마찬가지로, "양방향" 모드에서 양방향 신호는 하나의 데이터 스트로브 단자로 제공된다.
모드 레지스터의 MODE0 비트가 "0"으로 설정되어 있을 때, DQS 방법은 "단방 향(Uni-Directional)"으로 설정된다. 이 때, QS 단자는 판독 데이터에 대한 데이터 스트로브 신호를 오로지 출력하기 위한 단자이다. 기록 데이터에 대한 데이터 스트로브 신호에 관하여, MODE2 비트가 "1"일 때 클럭 신호(CLK)가 사용되고, MODE1 비트가 "1"일 때 DS 단자로부터 제공된 데이터 스트로브 신호(DS)가 사용된다. 클럭 신호(CLK)와 데이터 스트로브 신호(DS)는 MODE1 비트와 MODE2 비트를 수신하는 선택기(SEL)에 의해 선택된다. 또한, 순차/병렬 변환 회로는 선택된 신호에 따라 동작한다.
MODE3 비트가 "1"일 때, QS 제어 회로는 항상 하이 레벨을 수신하고, 따라서, 판독 동작이 수행되지 않고 있는 때조차 출력 클럭 신호(OCLK)에 동기하는 데이터 스트로브 신호(QS)가 출력된다.
제1 실시예와 동일한 효과가 본 실시예에서도 얻어진다. 또한, 데이터 스트로브 신호의 방법(DQS 방법)은 반도체 메모리가 장착되는 시스템에 따라 변경될 수 있다. DQS 방법은 모드 레지스터를 설정함으로써 용이하게 변경할 수 있다. 따라서, 사용자들의 다양한 요구에 부응할 수 있다.
그런데, 전술한 제1 실시예에 의하면, 도 66의 상측에 도시된 바와 같이, 메모리 블록(BLKDQ0 ~ BLKDQ8)의 패리티 비트를 유지하기 위하여, 각 메모리 블록(BLKDQ0 ~ BLKDQ8, BLKP)에 대한 로우 디코더(RDEC)를 형성하는 예가 설명되어 있다. (도 66에서, 비교를 위해 8개의 메모리 블록(BLKDQ0 ~ BLKDQ7)이 도시되어 있다.)
본 발명은 이 실시예에 한정되지 않는다. 예를 들어, 데이터 입/출력 단자 가 8 비트일 때, 하나의 로우 디코더(RDEC)가 각 메모리 블록의 쌍(BLKDQ0와 BLKDQ4, BLKDQ1과 BLKDQ5, BLKDQ2와 BLKDQ6, BLKDQ3과 BLKDQ7)에 대하여 형성될 수 있고, 메모리 블록(BLKDQ0 ~ BLKDQ3, BLKDQ4 ~ BLKDQ7)의 패리티 비트를 각각 유지하는 2개의 메모리 블록(BLKPI, BLKP2)이 도 66의 하측에 도시된 바와 같이 형성될 수 있다. 이 경우, 로우 디코더(RDEC)가 2개의 메모리 블록에 의해 공유될 수 있기 때문에, 로우 디코더의 수를 9개에서 5개로 줄이는 것이 가능하다. 그 결과, 메모리 코어의 사이즈를 줄일 수 있다.
전술한 제1 실시예에서, 도 14에 도시된 바와 같이, 리프레시 카운터(24)의 비트들을 하위 비트부터 순서대로 리프레시 뱅크 번호(REFBNK#), 리프레시 블록 번호(REFDQ#), 상위 어드레스(UA#)에 할당하는 예가 설명되어 있다. 본 발명은 이 실시예에 한정되지 않는다. 예를 들어, 도 67에 도시된 바와 같이, 리프레시 카운터(24)의 비트들을 하위 비트부터 순서대로 상위 어드레스(UA#), 리프레시 블록 번호(REFDQ#), 리프레시 뱅크 번호(REFBNK#)에 할당될 수 있다. 이 경우, 제1 실시예와 비교하여, 리프레시 요청(REFRQ)의 생성 간격을 4배로 할 필요가 있다.
전술한 제1 실시예에서, 외부 기록 사이클(tERC)을 4 클럭 사이클로 설정하는 예가 설명되어 있다. 본 발명은 이 실시예에 한정되지 않는다. 외부 기록 사이클(tERC)은 내부 회로의 동작 주파수(클럭 사이클)와 구조에 따라 설정될 수 있다.
전술한 제1 실시예에서, 본 발명을 DDR 유형의 반도체 메모리에 적용하는 예가 설명되어 있다. 본 발명은 이 실시예에 한정되지 않는다. 예를 들어, 본 발명 은 클럭 신호의 상승 에지에 동기하는 인터페이스를 가진 SDR(Single Data Rate) 유형의 반도체 메모리에 적용될 수 있다.
전술한 제1 실시예에서, 본 발명을 복수의 뱅크(BK0 ~ BK3)를 가진 반도체 메모리에 적용하는 예가 설명되어 있다. 본 발명은 이 실시예에 한정되지 않는다. 예를 들어, 본 발명은 뱅크가 형성되어 있지 않은 반도체 메모리에 적용될 수 있다.
전술한 제1 실시예에서, 본 발명을 복수의 데이터 그룹(BYTEA ~ BYTED)을 가진 반도체 메모리에 적용하는 예가 설명되어 있다. 본 발명은 이 실시예에 한정되지 않는다. 예를 들어, 본 발명은 8 비트 데이터 입/출력 단자를 가진 반도체 메모리에 적용될 수 있다.
도 68은 본 발명의 반도체 메모리의 제6 실시예에 따른 메모리 코어의 개요도를 도시한다.
동일한 어드레스에 있는 복수의 비트 데이터가 분산되어 메모리 코어의 복수의 메모리 블록들(제1 메모리 블록들)(BLK1 ~ BLK4)(이후, 블록(BLK1 ~ BLK4)이라고 함)에 저장된다. 예를 들어, 16 비트가 동일한 어드레스에 저장될 수 있고, 4 비트가 각 4개의 블록(BLK1 ~ BLK4)에 저장될 수 있다. 블록(BLK1 ~ BLK4)은 외부 데이터를 저장하기 위한 메모리 셀 어레이이다. 각 블록(BLK1 ~ BLK4)은 메모리 셀(104), 워드 디코더(103), 칼럼 디코더(102), 및 입력 신호에 대한 선택기(101)를 포함한다. 각 블록(BLK1 ~ BLK4)은 워드 디코더(103)와 메모리 셀(104)의 복수의 쌍들로 더 나뉘어질 수 있다.
메모리 블록(제2 메모리 블록)(BLK5)은 동일한 어드레스를 갖는 복수의 비트 데이터에 대한 동작 결과를 저장하기 위한 메모리 셀 어레이이다. 동작 방법에 대한 자세한 사항은 도 69a 내지 도 69c를 참조하여 다음에 설명한다. 블록(BLK1 ~ BLK4)와 마찬가지로, 블록(BLK5)도 메모리 셀(104), 워드 디코더(103), 칼럼 디코더(102), 및 입력 신호에 대한 선택기(101)를 포함한다.
블록(BLK1 ~ BLK5)의 선택기(101)에 각각 입력되는 제어 신호에는 제1 제어 신호(SIG1) 그룹과 제2 신호(SIG2) 그룹이 있다. 선택 신호(SEL1 ~ SEL5)가 각 선택기(101)로 입력된다. 각 선택 신호(SEL1 ~ SEL5)가 로우 레벨에 있을 때, 선택기(101)의 출력은 제1 제어 신호(SIG1)가 되고, 각 선택 신호(SEL1 ~ SEL5)가 하이 레벨에 있을 때, 선택기(101)의 출력은 제2 제어 신호(SIG2)가 된다. 선택 신호(SEL1 ~ SEL5)는 서로 독립적인 신호들이다.
각 제어 신호(SIG1, SIG2)는 기록 요청 신호, 판독 요청 신호, 어드레스, 데이터 등을 포함한다. 예를 들어, 기록 요청 신호와 판독 요청 신호는 칩 인에이블 신호와 기록 인에이블 신호로서 표현된다.
워드 디코더(103)는 선택기(101)로부터 제공된 어드레스에 따라 로우 어드레스를 식별한다. 칼럼 디코더(102)는 선택기(101)로부터 제공된 어드레스에 따라 칼럼 어드레스를 식별한다. 메모리 셀(104)은 식별된 로우 어드레스와 칼럼 어드레스에 대한 데이터의 기록/판독 동작을 수행할 수 있다.
정상적인 상태에서 제2 제어 신호(SIG2)는 비활성화되고, 제1 제어 신호(SIG1)만이 메모리 코어를 제어한다. 정상적인 판독 동작에서 선택 신호(SEL1 ~ SEL4)와 선택 신호(SEL5)는 각각 로우 레벨과 하이 레벨에 있고, 블록(BLK5)은 비활성화된다. 정상적인 기록 동작에서 모든 선택 신호(SEL1 ~ SEL5)가 로우 레벨에 있고, 기록 동작이 모든 블록(BLK1 ~ BLK5)에 대하여 수행된다.
리프레시 동작을 수행하는데 있어서, 각 블록(BLK1 ~ BLK5)은 블록 단위로 순서대로 리프레시되고, 리프레시된 블록에 대응하는 선택 신호만이 하이 레벨로 바뀐다. 리프레시 동작은 제2 제어 신호(SIG2)에 따라 수행되고, 리프레시 동작은 선택 신호가 하이 레벨에 있는 블록에 대해서만 수행된다.
또한, 리프레시가 아닌 기록 신호가 제1 제어 신호(SIG1)에 비동기인 제2 제어 신호(SIG2)로 제공될 때, 선택 신호가 하이 레벨에 있는 블록만이 제2 제어 신호(SIG2)에 따라 동작하고, 나머지 다른 블록들은 제1 제어 신호에 따라 동작한다.
이 실시예에 의하면, 각 블록을 활성화하고 제어하기 위한 복수의 제어 신호 그룹이 있다. 선택기(101)가 각 블록에 대한 제어 신호 그룹을 선택할 수 있다. 또한, 동일한 타이밍 또는 상이한 타이밍에 제공되는 제어 신호에 의해 복수의 블록을 활성화시킬 수 있고, 활성화 타이밍 및/또는 활성화 횟수가 서로 상이하도록 각 블록을 제어할 수 있다.
도 69a는 데이터 기록에 있어 기록 패리티 동작 순서를 도시한다.
1 비트 데이터(DQ01 ~ DQ04)를 각각 블록(BLK1 ~ BLK4)에 기록하는 예에 대하여 설명하겠다. 외부로부터 입력된 기록 데이터(DQ01 ~ DQ04)는 각각 블록(BLK1 ~ BLK4)에 기록된다.
데이터(DQ01, DQ02)는 XOR 회로(201)에 입력되어 XOR 연산이 수행되고, 그 결과가 출력된다. 데이터(DQ03, DQ04)는 XOR 회로(202)에 입력되어 XOR 연산이 수행되고, 그 결과가 출력된다. XOR 회로(201)의 출력과 XOR 회로(202)의 출력은 XOR 회로(203)으로 입력되어 XOR 연산이 수행되고, 그 결과가 출력된다. XOR 회로(203)의 출력은 블록(BLK5)에 기록된다. XOR 회로(201, 202, 203)는 제1 연산 회로로서 동작한다.
도 69b는 각 XOR 회로(201 ~203)의 회로도를 도시한다. 제1 입력 신호(IN1)는 논리 NOT 회로(인버터)(211)에 입력된다. 인버터(212)의 입력은 인버터(211)의 출력에 연결된다. 제2 입력 신호(IN2)는 인버터(215)에 연결된다. p 채널 MOS 트랜지스터(213)의 게이트는 인버터(212)의 출력에 연결되고, 그 소스는 제2 입력 신호(IN2) 라인에 연결되고, 그 드레인은 출력 신호(OUT)의 라인에 연결된다. n 채널 MOS 트랜지스터(214)의 게이트는 인버터(211)의 출력에 연결되고, 그 드레인은 제2 입력 신호(IN2) 라인에 연결되고, 그 소스는 출력 신호(OUT)의 라인에 연결된다. p 채널 MOS 트랜지스터(216)의 게이트는 인버터(211)의 출력에 연결되고, 그 소스는 인버터(215)의 출력에 연결되고, 그 드레인은 출력 신호(OUT)의 라인에 연결된다. n 채널 MOS 트랜지스터(217)의 게이트는 인버터(212)의 출력에 연결되고, 그 드레인은 인버터(215)의 출력에 연결되고, 그 소스는 출력 신호(OUT)의 라인에 연결된다.
도 69c는 도 69b에 도시된 XOR 회로의 진리표를 도시한다. 입력 신호(IN1, IN2)가 서로 동일할 때, 출력 신호(OUT)는 "0"이다. 입력 신호(IN1, IN2)가 서로 상이할 때, 출력 신호(OUT)는 "1"이다.
도 69a에 도시된 바와 같이, 2 단계로 구성된 2-입력 XOR 회로(201 ~ 203)가 4 비트의 입력 데이터(DQ01 ~ DQ04)에 기초하여 1 비트의 연산 결과를 출력한다. 이 경우에, 4 비트 입력 데이터(DQ01 ~ DQ04) 중 데이터 "1"의 수가 홀수일 때, "1"이 출력되고, 짝수일 때, "0"이 출력된다. 이제부터, 이 연산 결과를 기록 패리티(write parity)라 부르기로 한다.
데이터(DQ01 ~ DQ04)는 예를 들어, "0", "1", "0", "0"이다. 이 경우에, XOR 회로(201 ~ 203)는 각각 "1", "0", "1"을 출력한다. XOR 회로(203)의 출력으로서의 "1"은 기록 패리티로서 블록(BLK5)에 기록된다.
도 70a는 데이터를 판독하는데 있어서 데이터 정정 순서를 도시한다.
1 비트 데이터(DQ01 ~ DQ04)를 블록(BLK1 ~ BLK4)로부터 각각 판독하여 정정하는 예를 설명하겠다. XOR 회로(311)의 2개의 입력은 블록(BLK1)의 데이터 라인(비트 라인)과 블록(BLK2)의 데이터 라인에 연결된다. XOR 회로(312)의 2개의 입력은 블록(BLK3)의 데이터 라인과 블록(BLK4)의 데이터 라인에 연결된다. XOR 회로(313)의 2개의 입력은 XOR 회로(311)의 출력과 XOR 회로(312)의 출력에 연결된다. XOR 회로(314)의 2개의 입력은 XOR 회로(313)의 출력과 블록(BLK5)의 데이터 라인에 연결된다. 이제부터, XOR 회로(313)의 출력을 판독 패리티(read parity)라 부르기로 한다. XOR 회로(314)는 판독 패리티와 기록 패리티를 비교한다. 판독 패리티와 기록 패리티는 모두 XOR 회로들을 사용하여 비슷한 동작에 의해 결정된다. XOR 회로(311, 312, 313)은 제2 연산 회로로서 동작하고, XOR 회로(314)는 비 교기로서 동작한다.
이제, 데이터 정정 회로(301)에 대하여 설명한다. 블록(BLK3)의 데이터 라인(307)은 인버터(306)의 입력에 연결된다. 3 노드 스위치(302)는 공통 단자(303), 제1 단자(305), 및 제2 단자(304)를 포함한다. 제1 단자(305)는 블록(BLK3)의 데이터 라인(307)에 연결된다. 제2 단자(304)는 인버터(306)의 출력에 연결된다. 인버터(306)는 입력 데이터의 논리 값을 반전시키는 반전 회로이다. 공통 단자(303)는 1 비트 데이터(DQ03)를 출력한다. 스위치(302)는 XOR 회로(314)의 출력 신호(308)에 따라, 제1 단자(305) 또는 제2 단자(304) 중 어느 하나에 공통 단자(303)를 연결한다.
예를 들어, 블록(BLK)이 리프레시 동작 중에 있을 때, 판독 동작이 블록(BLK1, BLK2, BLK4, BLK5)에 대하여 수행된다. 이 경우에, 판독 데이터는 블록(BLK3)으로부터 출력되지 않고, 데이터 라인(307)이 이전 액세스의 레벨을 유지하고 있다. 따라서, 하나의 어드레스에서 하나의 비트만이 불확실하다. 이렇게 해서, 동일한 어드레스의 기록 패리티는 동시에 판독되는데, 이는 기록 동작에서 블록(BLK5)에 이전에 기록되는 것이다. XOR 회로(314)는 판독 패리티와 기록 패리티를 비교한다. 판독 패리티와 기록 패리티가 서로 일치한다면, 데이터 라인(307)에 있는 데이터가 데이터(DQ03)로서 외부로 출력된다. 만일 서로 불일치한다면, 블록(BLK1 ~ BLK4)의 데이터 중 한 비트가 부족하다(불확실하다). 이 비트는 리프레시 동작 중의 블록(BLK3)의 비트이어야 한다. 따라서, 블록(BLK3)의 데이터 라인(307) 상의 비트 데이터는 데이터 정정 회로(301)에 의해 반전되고, 데이터 정정 을 거친 후, 데이터(DQ03)로서 외부로 출력된다. 나머지 다른 데이터(DQ01, DQ02, DQ04)는 블록(BLK1, BLK2, BLK4)로부터 판독된 데이터이다.
예를 들어, "0", "1", "0", "0"이 각각 블록(BLK1 ~ BLK4)에 기록된다고 가정하자. 데이터의 "1"의 개수가 홀수개이기 때문에, 기록 패리티로서 "1"이 블록(BLK5)에 기록된다. 블록(BLK3)의 데이터 라인(307)이 불확실한 데이터 "1"을 계속 가지고 있다고 가정하자. 이 경우에, 4개의 데이터 라인 중 데이터 "1"의 개수는 홀수이므로, XOR 회로(313)는 판독 패리티로서 "0"을 출력한다. 판독 패리티와 기록 패리티가 서로 상이하기 때문에, XOR 회로(314)는 출력 신호(308)로서 "1"을 출력한다. 이에 의하여, 스위치(302)가 공통 단자(303)와 제2 단자(304)를 연결한다. 그 결과, 데이터 라인(307)의 데이터 "1"의 논리 값이 인버터(306)에 의해 반전되고, 데이터 "0"이 데이터(DQ03)로서 출력된다.
전술한 바와 같이, 블록(BLK3)이 리프레시 중이고, 데이터가 블록(BLK3)으로부터 판독될 수 없다고 하더라도, 블록(BLK5)으로부터 기록 패리티를 판독하고 필요에 따라 블록(BLK3)의 데이터(DQ03)를 정정함으로써 정확한 데이터(DQ01 ~ DQ04)가 출력될 수 있다. 이에 의하여, 블록(BLK3)이 리프레시 중에 있더라도, 판독 동작을 기다리지 않고 판독 데이터가 외부로 신속히 출력될 수 있다.
기록 패리티가 기록되는 블록(BLK5)이 리프레시 동작 중에 있을 때는 데이터 정정 회로(301)가 데이터 정정을 행하지 않는다는 것을 유의하여야 한다. 데이터(DQ01 ~ DQ04)는 블록(BLK1 ~ BLK4)으로부터 판독된 데이터가 된다.
도 70b는 데이터 정정 회로(301)의 구성을 도시하는 회로도이다. 인버터(320)는 선택 신호(SEL5)의 논리 값이 반전된 신호를 출력한다. 신호(308), 선택 신호(SEL3), 및 인버터(320)의 출력이 NAND 회로(321)로 입력되는데, 이로부터 NAND 값이 출력된다. 인버터(322)는 NAND 회로(321)의 논리 반전된 신호를 출력한다. 인버터(325)의 입력은 데이터 라인(307)에 연결된다. p 채널 MOS 트랜지스터(323)의 게이트는 인버터(322)의 출력에 연결되고, 그 소스는 데이터 라인(307)에 연결되고, 그 드레인은 출력 데이터 라인(328)에 연결된다. n 채널 MOS 트랜지스터(324)의 게이트는 NAND 회로(321)의 출력에 연결되고, 그 드레인은 데이터 라인(307)에 연결되고, 그 소스는 출력 데이터 라인(328)에 연결된다. p 채널 MOS 트랜지스터(326)의 게이트는 NAND 회로(321)의 출력에 연결되고, 그 소스는 인버터(325)의 출력에 연결되고, 그 드레인은 출력 데이터 라인(328)에 연결된다. n 채널 MOS 트랜지스터(327)의 게이트는 인버터(322)의 출력에 연결되고, 그 드레인은 인버터(325)의 출력에 연결되고, 그 소스는 출력 데이터 라인(328)에 연결된다. 출력 데이터 라인(328)은 데이터(DQ03)를 출력한다(도 70a).
도 71은 메모리 코어로부터의 출력에 관한 제어 신호 생성기의 블록도이다. 이 제어 신호 생성기는 도 68에 도시된 메모리 코어의 죄측에 연결된다. 데이터 정정 회로(401)는 각 블록(BLK1 ~ BLK4)에 연결된다. 데이터 정정 회로(401)는 도 70a에 도시된 데이터 정정 회로(301)에 대응한다. 제2 데이터 연산 회로(402)는 도 70a에 있는 XOR 회로(311 ~ 313)에 대응한다. 데이터 비교 회로(403)는 도 70a의 XOR 회로(314)에 대응한다. 각 메모리 블록(BLK1 ~ BLK4)의 데이터 정정 회로(401)는 선택 신호(SEL1 ~ SEL4)에 따라 각 블록(BLK1 ~ BLK4)의 데이터 라인 상의 데이터를 정정한다. 블록(BLK1 ~ BLK4) 중에서, 선택 신호(SEL1 ~ SEL4) 중 하이 레벨인 선택 신호에 대응하는 블록이 리프레시 동작을 거친다. 따라서, 입력된 선택 신호가 하이 레벨에 있을 때, 신호는 데이터 정정 회로(401)의 데이터 정정을 거치고, 데이터 비교 회로(403)의 비교 결과가 기록 패리티와 판독 패리티가 불일치하는 것으로 나오면, 데이터 정정 회로(401)가 데이터 정정을 수행하여, 판독 데이터를 외부로 출력한다.
도 72a는 반도체 메모리의 동작을 보여주는 개요도이다. 외부 기록 커맨드(WR0)가 타이밍(t1)에 입력되고, 내부 리프레시 요청 신호가 타이밍(t11)에 생성되는 경우를 설명하겠다. 기록 커맨드(WR0)가 리프레시 요청보다 일찍 도착했기 때문에, 기록 커맨드(WR0)에 따라 데이터가 블록(BLK1 ~ BLK4)에 기록된다. 기록 패리티가 블록(BLK5)에 기록된다. 타이밍(t11) 이후의 기간(T1) 동안에 리프레시 요청이 유자된다. 이러한 기록 동작은 도 68의 제어 신호(SIG1)에 의하여 제어된다. 블록(BLK2)에서 리프레시 동작(501)은 기록 커맨드(WR0)의 동작이 끝날 때 시작된다.
그 후, 외부 기록 커맨드(WR1, WR2)와 외부 판독 커맨드(RD0)는 각각 타이밍(t2, t3, t4)에 입력된다. 블록(BLK1, BLK3 ~ BLK5)은 외부 커맨드(WR1, WR2, RD0)의 동작을 수행한다. 리프레시 동작(501)을 완료한 후에, 블록(BLK2)은 외부 커맨드(WR1, WR2)의 동작을 수행한다. 그런데, 판독 커맨드(RD0)가 입력될 때, 블록(BLK2)이 기록 커맨드(WR2)의 동작 중에 있다. 따라서, 기록 패리티가 블록(BLK5)으로부터 판독되고, 기록 패리티와 판독 패리티가 불일치할 때, 블록(BLK2)의 데이터 라인 상의 데이터가 정정된다. 이제부터 기록 패리티와 판독 패리티를 사용하는 판독 동작을 의사 판독 동작(pseudo read operation)이라 부르기로 한다.
블록(BLK2)에서 기록 커맨드(WR2)의 동작을 수행한 이후에 더미 판독(502)이 수행된다. 더미 판독(502)은 도 73에 나중에 설명되는 제어 신호 생성기에서 수행되는 더미 동작이고, 블록(BLK2)은 판독 동작을 수행하지 않는다. 자세한 사항은 나중에 설명하겠다. 전술한 리프레시 동작(501)부터 더미 판독(502)까지의 기간(T2) 동안에, 블록(BLK2)만이 제2 제어 신호(SIG2)에 의해 제어되고, 나머지 다른 블록들은 제1 제어 신호(SIG1)에 의해 제어된다.
다음으로, 외부 판독 커맨드(RD1)가 타이밍(t5)에 입력되는 경우에 대하여 설명한다. 블록(BLK2)에서 이전의 더미 판독(502)은 제2 제어 신호(SIG2)에 의하여 수행되고 있다. 이 경우, 타이밍(t5)에서 판독 커맨드(RD1)의 개시가 관찰되고, 제2 제어 신호(SIG2)가 제1 제어 신호(SIG1)로 스위칭될 때, 오동작과 동작 지연이 블록(BLK2)에서 발생할 수 있다. 따라서, 블록(BLK2)의 판독 동작은 판독 커맨드(RD1)에 응답하여 수행되지 않고, 의사 판독 동작이 수행된다. 그 후, 판독 커맨드(RD1)의 동작의 완료가 관찰되고, 제2 제어 신호(SIG2)가 제1 제어 신호(SIG1)로 스위칭된다. 이로써, 블록(BLK1 ~ BLK4)으로부터의 판독 동작이 다음 타이밍(t6)에서 판독 커맨드(RD2)에 응답하여 신속하고 적절히 수행될 수 있다. 자세한 사항은 나중에 도 76과 도 77을 참조하여 설명한다. 판독 동작과 리프레시 동작이 서로 충돌하지 않을 때, 동작의 결과를 저장하기 위한 블록(BLK5)이 비활성 화되고, 판독 동작이 나머지 다른 메모리 블록들로부터 수행된다.
다음으로, 내부 리프레시 요청이 타이밍(t12)에 생성될 때, 리프레시 동작(503)이 블록(BLK3)에 의해 수행된다. 리프레시 동작(503) 동안에 외부 판독 커맨드(RD3)가 타이밍(t7)에 입력되는 경우를 설명하겠다. 이 경우에, 의사 판독 동작이 수행되고, 블록(BLK3)의 데이터 라인 상의 데이터가 필요에 따라 정정된다. 블록(BLK3)에서 더미 판독(504)은 리프레시 동작(503) 이후에 수행된다. 리프레시 동작(503)부터 더미 판독(504)까지의 기간(T3) 동안에, 블록(BLK3)만이 제2 제어 신호(SIG2)에 의해 수행된다.
블록(BLK3)으로의 기록 요청 신호가 의사 판독 동작 동안에 입력될 때, 기록 요청 신호는 유지되고, 유지된 기록 요청 신호에 대응하는 동작이 의사 판독 동작의 완료 이후에 수행된다.
도 72b는 반도체 메모리의 다른 동작을 도시하는 개요도이다. 외부 판독 커맨드(RD4)가 타이밍(t21)에 입력되고, 이후에 내부 리프레시 요청이 타이밍(t31)에 생성되는 경우에 대하여 설명하겠다. 판독 커맨드(RD4)가 리프레시 요청보다 일찍 도착하기 때문에, 판독 커맨드(RD4)에 따라 블록(BLK1 ~ BLK4)으로부터 데이터가 판독된다. 타이밍(t31) 이후의 기간(T11) 동안에, 리프레시 요청이 유지된다. 블록(BLK2)에서 판독 커맨드(RD4)의 동작이 끝날 때 리프레시 동작(511)이 시작된다.
그 후, 외부 판독 커맨드(RD5, RD6)가 타이밍(t22, t23)에 각각 입력된다. 블록(BLK1, BLK3 ~ BLK5)은 외부 커맨드(RD5, RD6)에 응답하여 의사 판독 동작을 수행한다. 리프레시 동작(511)을 완료한 후, 블록(BLK2)은 2개의 더미 판독(512, 513)을 수행한다. 기간(T12) 동안에, 블록(BLK2)만이 제2 제어 신호(SIG2)에 의해 제어된다.
다음으로, 외부 기록 커맨드(WR3)가 타이밍(t24)에서 입력되는 경우에 대하여 설명한다. 데이터는 블록(BLK1 ~ BLK4)에 기록되고, 기록 패리티는 블록(BLK5)에 기록된다.
다음으로, 내부 리프레시 요청이 타이밍(t32)에 생성되고, 리프레시 동작(514)이 블록(BLK3)에 대하여 수행된다. 리프레시 동작(514) 동안에 외부 기록 커맨드(WR4)가 타이밍(t25)에 입력되고, 그 이후에 외부 기록 커맨드(WR5, WR6)가 타이밍(t26, t27)에 입력되는 경우를 설명하겠다. 이 경우, 커맨드(WR4, WR5, WR6)에 응답하여, 데이터는 블록(BLK1, BLK2, BLK4)에 기록되고, 기록 패리티는 블록(BLK5)에 기록된다. 리프레시 동작(514)이 완료된 후에, 기록 커맨드(WR4 ~ WR6)에 대응하는 기록 동작이 블록(BLK3)에서 수행된다. 외부 기록 커맨드(WR4 ~ WR6)의 생성 사이클 시간(generation cycle times)은 대응하는 블록(BLK1 ~ BLK5)의 수행 사이클 시간(performance cycle times)보다 더 길다. 따라서, 블록(BLK3)에서 커맨드(WR4, WR5)의 동작은 나머지 다른 블록들의 동작 때문에 지연되지만, 커맨드(WR6)의 동작은 나머지 다른 블록들의 동작과 보조를 맞춘다. 리프레시 동작(514)이 수행될 때에도, 외부 커맨드 때문에 지연되는 일 없이 신속하게 기록 동작을 행할 수 있다. 기간(T13) 동안에 블록(BLK3)만이 제2 제어 신호(SIG2)에 의해 제어된다.
도 73은 메모리 코어로의 입력에 관한 제어 신호 생성기의 블록도이다. 이 제어 신호 생성기는 비동기 SRAM 인터페이스인 것으로 가정하고, 도 68에 도시된 메모리 코어의 좌측에 연결된다. 내부 리프레시 요청(OSC) 신호 생성기(604)가 링 발진기를 사용하여 주기적인 간격으로 리프레시 요청을 자동적으로 생성한다.
정상적인 기록 동작에서 외부 커맨드(EXTC), 어드레스(ADR), 마스크 정보(MSK), 및 기록 데이터(IND)가 외부로부터 입력된다. 마스크 정보(MSK)란 상위 바이트 및/또는 하위 바이트를 선택적으로 기록하도록 명령하기 위한 정보이다. 외부 커맨드(EXTC)가 내부 커맨드 생성기(601)로 입력된다. 내부 커맨드 생성기(601)는 제1 내부 커맨드(INTC1)를 생성하고, 이를 제1 코어 제어 신호 생성기(602)로 출력한다. 제1 코어 제어 신호 생성기(602)는 제1 코어 제어 신호(COC1)(도 68의 제1 제어 신호(SIG1)에 대응함)를 생성하고, 이를 선택기(621)(도 68의 선택기(101)와 동일함)로 출력하며, 메모리 코어를 제어한다.
이 시점에서 각 블록의 모든 선택기(621)는 도 68을 참조하여 설명한 것과 같이, 제1 코어 제어 신호(COC1)를 선택한다. 이 경우에, 제1 코어 제어 신호 생성기(602)는 코어가 제1 코어 제어 신호(COC1)에 의해 활성화되는 동안에, 제1 코어 활성화 상태 신호(COS1)를 출력한다. 마스크 정보(MSK)는 기록 동작을 디스에이블하는 기능을 가지고 있고, 제1 마스크 정보(MSK1)로서 버퍼(607)와 제1 코어 제어 신호 생성기(602)로 제공된다. 내부 커맨드(INTC1)와 마스크 정보(MSK1)에 따라, 제1 코어 제어 신호 생성기(602)는 코어 제어 신호(COC1)와 코어 활성화 상태 신호(COS1)를 출력한다. 어드레스(ADR)는 제1 어드레스(ADR1)로서 버퍼(607)를 거쳐 선택기(622)로 제공된다. 제1 어드레스(ADR1)는 제1 코어 제어 신호(COC1)에 대응하고, 기록 동작에서 어드레스를 지정한다. 입력 데이터(IND)는 데이터 연산 회로(609)에 입력되고, 여기서, 기록 패리티(도 69a 참조)를 연산하고, 제1 입력 데이터(IND1)가 선택기(623)로 제공된다. 제1 입력 데이터(IND1)는 제1 어드레스(ADR1)의 메모리 셀로 기록된다. 이 경우에, 데이터 연산 회로(609)는 입력 데이터(IND)에 기초하여 기록 패리티를 연산하고, 그 결과를 동작을 위한 메모리 블록(BLK5)에 기록한다.
선택기(621)는 선택 신호(SEL1 ~ SEL5)에 따라 제1 코어 제어 신호(COC1) 또는 제2 코어 제어 신호(COC2)를 선택하고, 이들을 메모리 코어에 출력한다. 선택기(622)는 선택 신호(SEL1 ~ SEL5)에 따라 제1 어드레스(ADR1) 또는 제2 어드레스(ADR2)를 선택하고, 이를 메모리 코어로 출력한다. 선택기(623)는 선택 신호(SEL1 ~ SEL5)에 따라 제1 데이터(IND1) 또는 제2 데이터(IND2)를 선택하고, 이들을 메모리 코어로 출력한다. 3개의 선택기(621 ~ 623)는 도 68의 하나의 선택기(101)에 대응한다. 3개의 선택기(621 ~ 623)로 된 그룹이 블록(BLK1 ~ BLK5)의 수 만큼 많이 있다.
다음으로, 리프레시 동작을 설명하겠다. 리프레시 요청(OSC) 신호 생성기(604)는 정기적으로 리프레시 요청 신호(OSC)의 펄스를 출력한다. 내부 커맨드 생성기(601)는 외부 커맨드(EXTC)가 입력될 때 신호(ATD)를 출력한다. 리프레시 요청 신호(OSC)와 외부 커맨드(EXTC)가 겹치는 경우를 고려하여, 커맨드-리프레시 비교기(603)가 항상 신호(ATD)와 신호(OSC) 중 어느 것이 먼저 도착하는지를 결정한다.
리프레시 요청 신호(OSC)가 먼저 도착한다고 결정될 때, 커맨드-리프레시 비교기(603)가 리프레시 요청 신호(REF)를 생성한다. 리프레시 요청 신호(REF)가 입력될 때, 제2 코어 제어 신호 생성기(606)가 제2 코어 활성화 상태 신호(COS2)를 출력하고, 제2 코어 제어 신호(COC2)(도 68의 제2 제어 신호(SIG2)에 대응함)를 선택기(621)로 출력한다. 동시에 리프레시 요청 신호(REF)는 리프레시 블록 선택기(611)에 입력된다. 리프레시 블록 선택기(611)는 선택기(621, 622, 623)에 제공되는 선택 신호(SEL1 ~ SEL5) 중의 하나를 하이 레벨로 바꾼다. 리프레시 동작은 선택 신호(SEL1 ~ SEL5)에 의해 선택되는 블록(BLK1 ~ BLK5) 중의 하나에 대하여만 수행된다. 예를 들어, 리프레시는 블록(BLK1 ~ BLK5)에 대하여 순차적으로 행해진다. 리프레시 요청 신호(OSC)가 외부 커맨드(EXTC)보다 늦게 도착한다고 결정되면, 커맨드-리프레시 비교기(603)는 제1 코어 활성화 상태 신호(COS1)가 리셋될 때까지 리프레시 요청 신호(REF)의 출력을 중지시킨다.
다음으로, 리프레시 동안에 기록 요청 커맨드(EXTC)가 외부로부터 제공되는 경우에 대하여 설명한다. 제1 코어 제어 신호 생성기(602)와 유사하게, 리프레시 동작 동안 제2 코어 제어 신호 생성기(606)가 제2 코어 활성화 상태 신호(COS2)를 출력한다. 제2 코어 활성화 상태 신호(COS2)는 내부 커맨드 유지 회로(605)로 입력된다. 제2 코어 활성화 상태 신호(COS2)가 출력되는 동안, 내부 커맨드 유지 회로(605)는 리프레시 동안 생성되는 제1 내부 커맨드(INTC1)를 유지한다. 리프레시 동작이 끝나고 제2 코어 활성화 상태 신호(COS2)가 리셋될 때, 내부 커맨드 유지 회로(605)는 제2 내부 커맨드(INTC2)로서 유지된 커맨드를 출력한다.
유지된 내부 커맨드(INTC2)를 출력하는데 있어서, 다음의 외부 커맨드(EXTC)가 생성되어, 내부 커맨드 유지 회로(605)는 대응하는 내부 커맨드(INTC1)를 유지할 필요가 있는 경우가 있다. 하나의 유지 회로가 하나의 커맨드를 출력하면서 동시에 다른 커맨드를 유지할 수 없기 때문에, 두 개의 유지 회로가 사용된다. 카운터는 유지될 커맨드의 수를 카운트하고, 두 개의 유지 회로 중 어느 것이 커맨드들을 유지하는지 선택한다. 다른 카운터는 출력 신호의 수를 카운트하고, 두 개의 유지 회로 중 어느 것이 신호를 출력하는지 선택한다.
도 74는 두 개의 유지 회로를 포함하는 내부 커맨드 유지 회로(605)의 회로도이고, 도 75는 그 동작 파형을 도시한다. 내부 커맨드 유지 회로(605)는 두 개의 유지 회로(701, 702)를 포함한다. 카운터(721)는 제1 내부 커맨드(INTC1)의 각 펄스(501, 502)가 입력될 때마다 상태가 반전되는 신호(/CNTA)를 출력한다. 인버터(723)는 신호(/CNTA)를 논리적으로 반전함으로써 얻어지는 신호(CNTA)를 출력한다. 카운터(722)는 제2 내부 커맨드(INTC2)의 각 펄스(506, 507)가 입력될 때마다 상태가 반전되는 신호(/CNTB)를 출력한다. 인버터(724)는 논리값이 반전되는 신호(/CNTB)인 신호(CNTB)를 출력한다.
먼저, 유지 회로(701)에 대하여 설명한다. 제2 코어 활성화 상태 신호(COS2)와 신호(CNTB)는 NAND 회로(711)로 입력되고, 이로부터 NAND 값이 출력된다. 제1 내부 커맨드(INTC1), 신호(CNTA), 및 NAND 회로(711)의 출력은 NAND 회로(712)로 입력되고, 이로부터 NAND 값이 출력된다. NAND 회로(712)의 출력과 NAND 회로(714)의 출력은 NAND 회로(713)로 입력되고, 이로부터 신호(n01)가 출력 된다. 지연 라인(717)은 신호(n03)를 지연시키고, 이를 NAND 회로(714)로 출력한다. 신호(n01)와 지연 라인(717)의 출력은 NAND 회로(714)로 출력되고, 이로부터 NAND 값이 출력된다. NAND 회로(711)의 출력과 NAND 회로(716)의 출력 신호(n03)는 NAND 회로(715)로 입력되고, 이로부터 NAND 값이 출력된다. 신호(n01)와 NAND 회로(715)의 출력은 NAND 회로(716)로 입력되고, 이로부터 신호(n03)가 출력된다.
다음으로, 유지 회로(702)에 대하여 설명한다. 유지 회로(702)의 구성은 유지 회로(701)의 구성과 유사하다. 유지 회로(702)와 유지 회로(701)의 차이점에 대하여 설명하겠다. 제2 코어 활성화 상태 신호(COS2)와 신호(/CNTB)는 NAND 회로(711)로 입력된다. 제1 내부 커맨드(INTC1), 신호(/CNTA), 및 NAND 회로(711)의 출력은 NAND 회로(712)로 입력된다. NAND 회로(713)의 출력 신호는 n02이고, NAND 회로(716)의 출력 신호는 n04이다.
신호(n03)와 신호(n04)는 NOR 회로(725)로 입력되고, 이로부터 제2 내부 커맨드(INTC2)가 출력된다. 카운터(721)는 유지 회로(701, 702)가 커맨드를 교대로 유지하는 타이밍을 제어한다. 카운터(722)는 유지 회로(701, 702)가 커맨드를 교대로 출력하는 타이밍을 제어한다.
도 75에서 제1 내부 커맨드(INTC1)의 펄스(501, 502)는 예를 들어, 둘 다 기록 커맨드이다. 제2 코어 활성화 상태 신호(COS2)에 대하여, 리프레시가 기간(503) 동안 수행되고, 기록 커맨드(501)에 대응하는 기록 동작이 기간(504) 동안 수행되며, 기록 커맨드(502)에 대응하는 기록 동작이 기간(505) 동안 수행된다.
도 74와 도 75를 참조하여 동작을 설명한다. 제1 내부 커맨드(INTC1)와 제2 코어 활성화 상태 신호(COS2)는 도 73의 내부 커맨드 유지 회로(605)로 입력된다. 신호(CNTA)와 신호(/CNTA)는 카운터(721)로부터의 출력이고, 이들은 제1 내부 커맨드(INTC1)에 의해 카운트된다. 신호(n03, n04)는 각각 2개의 유지 회로(701, 702)로부터의 출력이다. 제2 내부 커맨드(INTC2)는 NOR 회로(725)에서 합성되는 신호(n03, n04)이다. 신호(CNTB, /CNTB)는 카운터(722)로부터의 출력이고, 이들은 제2 내부 커맨드(INTC2)에 의해 카운트된다. 제2 코어 활성화 상태 신호(COS2)는 활성화 기간 동안에 로우 레벨에 있다. 신호가 로우 레벨에 있는 동안, 제1 내부 커맨드(INTC1)가 생성될 때, 신호(CNTA) 또는 신호(/CNTA) 둘 중의 하나가 하이 레벨로 바뀐다. 레벨이 하이 레벨로 되는 유지 회로(701) 또는 유지 회로(702) 둘 중의 하나가 제1 내부 커맨드(INTC1)를 유지하고, 신호(n01) 또는 신호(n02) 둘 중의 하나가 하이 레벨로 바뀐다. 제2 코어 활성화 상태 신호(COS2)가 이 상태에서 하이 레벨로 바뀔 때, 유지된 커맨드는 신호(n03) 또는 신호(n04)로 되고, 제2 내부 커맨드(INTC2)로 된다. 제2 내부 커맨드(INTC2)는 신호(CNTB)와 신호(/CNTB)를 반전시킨다.
다음으로, 도 73에 대하여 설명한다. 제2 코어 활성화 상태 신호(COS2)가 출력되는 동안, 어드레스/마스크 정보 유지 회로(608)가 제1 내부 커맨드(INTC1)에 의해 사용된 어드레스(ADR)와 마스크 정보(MSK)를 유지하고, 데이터 유지 회로(610)가 입력 데이터(IND)를 유지한다. 제2 내부 커맨드(INTC2)의 출력에 응답하여, 어드레스/마스크 정보 유지 회로(608)와 데이터 유지 회로(610)는 어드레스/마스크 정보 유지 회로(608)와 데이터 유지 회로(610)에 의해 유지된 정보를 각 각 제2 어드레스(ADR2), 제2 마스크 정보(MSK2), 및 제2 데이터(IND2)로서 출력한다. 제2 내부 커맨드(INTC2)와 제2 마스크 정보(MSK2)에 응답하여, 제2 코어 제어 신호 생성기(606)는 제2 코어 제어 신호(COC2)와 제2 코어 활성화 상태 신호(COS2)를 출력한다. 제2 코어 활성화 상태 신호(COS2)가 출력되는 동안, 리프레시 블록 선택기(611)는 계속해서 선택 신호(SEL1 ~ SEL5)를 출력한다. 선택 신호(SEL1 ~ SEL5)에 의해 선택되는 블록(BLK1 ~ BLK5) 중의 하나는 리프레시 동작 후에, 제2 어드레스(ADR2), 제2 마스크 정보(MSK), 및 제2 데이터(IND2)를 이용하여 제2 내부 커맨드(INTC2)의 동작을 수행한다.
제2 내부 커맨드(INTC2)의 동작 동안, 그 다음의 외부 기록 커맨드(EXTC)가 생성될 때, 각 정보는 유지되고, 전술한 바와 마찬가지로, 동작을 완료한 후에 유지된 제2 내부 커맨드(INTC2)가 수행된다. 따라서, 제2 코어 활성화 상태 신호(COS2)가 출력되는 동안 외부 커맨드(EXTC)가 생성되는 한, 선택 신호(SEL1 ~ SEL5)에 의해 선택되는 각 블록(BLK1 ~ BLK5)은 제1 내부 커맨드(INTC1)와 비동기적으로 계속해서 제2 내부 커맨드(INTC2)를 수행한다. 제2 내부 커맨드(INTC2)의 수행 사이클이 외부 커맨드(EXTC)의 생성 사이클보다 짧을 때, 제2 내부 커맨드(INTC2)의 수행은 곧 끝날 것이다(도 72b 참조).
판독 동작에 대하여 설명한다. 제어 신호가 메모리 코어에 입력될 까지의 동작은 기록 동작의 경우와 거의 동일하다. 차이점은, 기록 동작에서 제2 코어 제어 신호(COS2)에 대응하는 신호가 리프레시 동작 동안을 제외하고는 출력되지 않는다는 것이다. 이 경우에, 제2 코어 제어 신호 생성기(606)가 동작하고 있다. 이 러한 상태를 더미 판독이라 부른다(도 72a, 도 72b 참조). 또한, 제2 코어 활성화 상태 신호(COS2)가 출력되지 않는 기간 동안에, 리프레시 블록 선택기(611)가 선택 신호(SEL5)를 비선택 상태로 두는데, 선택 신호(SEL5)는 기록 동작 결과(BLK5)를 위한 블록에 대응한다.
다음으로, 도 72a의 동작에 대하여 설명한다. 블록(BLK2)에서 제2 코어 제어 신호(COC2)에 의한 기록 동작이 리프레시 동작(501) 후에 수행된다. 블록(BLK2)을 제어하는 신호가 기록 동작 후에 제2 코어 제어 신호(COC2)로부터 제1 코어 제어 신호(COC1)으로 변경된다고 가정하자. 만일 판독 커맨드(RD1)의 생성이 기록 동작 직후에 일어난다면, 판독 커맨드가 메모리를 코어를 액세스하는 것은 일반적으로 최고의 속도로 이루어질 필요가 있기 때문에, 타이밍(t5)에서 외부로터의 판독 커맨드(RD1)의 생성에 대하여 코어 제어 신호간의 스위칭이 시기에 맞게 수행되지 않을 수 있다.
따라서, 도 73의 리프레시 블록 선택기(611)는 도 76과 같이 구성되어 있다. 이 구성에 의하면, 그 다음의 하나의 판독 커맨드(RD1)가 끝낼 때까지 블록(BLK2)은 제2 코어 제어 신호(COC2)에 의해 제어된다.
도 76은 리프레시 클럭 선택기(611)의 회로도이고, 도 77은 그 동작 파형이다. 도 76을 참조하여 회로의 구성을 설명한다. 지연 라인(901)은 제2 코어 활성화 상태 신호(COS2)를 지연한다. 제2 코어 활성화 상태 신호(COS2)와 지연 라인(901)의 출력은 NAND 회로(902)로 입력되고, 이로부터 NAND 값이 출력된다. 인버터(903)는 NAND 회로(902)로부터의 출력의 논리값을 반전시키고, 신호(n01)를 출력한다.
RS 플립 플롭(904)은 NAND 회로(905, 906)로 구성되어 있다. 인버터(907)는 신호(CL)의 논리 값을 반전시킨다. 신호(n01)와 NAND 회로(906)의 출력은 NAND 회로(905)로 입력되고, 이로부터 NAND 값이 출력된다. NAND 회로(905)의 출력과 인버터(907)의 출력은 NAND 회로(906)로 입력되고, 이로부터 NAND 값이 출력된다. NAND 회로(905)의 출력은 인버터(908)로 입력되고, 이로부터 신호(n02)가 출력된다.
신호(RS)와 신호(n02)는 NAND 회로(909)로 입력되고, 이로부터 NAND 값이 출력된다. 신호(WR)와 NAND 회로(909)의 출력은 NAND 회로(910)로 입력되고, 이로부터 NAND 값이 출력된다. 신호(n01)와 NAND 회로(910)의 출력은 NAND 회로(911)로 입력되고, 이로부터 NAND 값이 출력된다.
RS 플립 플롭(912)은 NAND 회로(913, 914)로 구성된다. 신호(n03)와 NAND 회로(911)의 출력은 NAND 회로(913)로 입력되고, 이로부터 NAND 값이 출력된다. 신호(REF)와 NAND 회로(913)의 출력은 NAND 회로(914)로 입력되고, 이로부터 신호(n03)가 출력된다.
신호(n03)와 신호(PSEL1)가 NAND 회로(919)로 입력되고, 인버터(922)로 출력된다. 인버터(922)는 선택 신호(SEL1)를 출력한다. 신호(n03)와 신호(PSEL4)는 NAND 회로(920)로 입력되고, 인버터(923)로 출력된다. 인버터(923)는 선택 신호(SEL4)로 출력한다.
인버터(915)는 신호(PSEL5)의 논리 값이 반전된 신호를 출력한다. 신호(n03)와 인버터(915)의 출력은 NAND 회로(917)로 입력되고, 이로부터 NAND 값이 출력된다. 신호(n03)와 신호(RD)는 NOR 회로(916)로 입력되고, 인버터(918)로 출력된다. NAND 회로(917)의 출력과 인버터(918)의 출력은 NAND 회로(921)로 입력되고, 인버터(924)로 출력된다. 인버터(924)는 선택 신호(SEL5)를 출력한다.
다음으로, 회로의 동작에 대하여 설명한다. 신호(RS)는 제2 코어 제어 신호(COC1)의 코어 리셋 신호이고, 하이 레벨로 바뀔 때 메모리 코어를 리셋한다. 신호(RS)는 코어가 동작하고 있을 때, 로우 레벨에 있다. 신호(WR)는 제1 코어 제어 신호(COC1)의 기록 동작 동안에 로우 레벨에 있는 상태 신호이다. 신호(CL)는 제1 코어 제어 신호(COC1)의 CL 신호이다(메모리 셀의 데이터를 판독하고, 이 데이터를 센스 증폭기에서 증폭하고, 그 후 이 데이터를 센스 증폭기에서 꺼내가는 펄스). 신호(REF)는 리프레시 요청 신호이다. 신호(RD)는 제1 코어 제어 신호(COC1)의 판독 동작 동안에 하이 레벨에 있는 상태 신호이고, 기록 요청이 생성될 때까지 이 상태를 유지한다. 신호(PSEL1 ~ PSEL5)는 리프레시될 블록을 표시하는 신호이고, 내부 카운터와 디코더로부터 출력된다. 마지막에 선택기로 입력되는 신호는 선택 신호(SEL1 ~ SEL5)이다.
신호(PSEL1)가 하이 레벨에 있고, 신호(PSEL2 ~ PSEL5)가 로우 레벨에 있다고 가정하자. 타이밍(t1)에서 리프레시 동작이 리프레시 요청 신호(REF)에 의해 시작될 때, 신호(n03)는 하이 레벨로 바뀌고, 선택 신호(SEL1)는 하이 레벨로 바뀌고, 따라서, 블록(BLK1)의 제어 신호는 제2 코어 제어 신호(COC2)로 스위칭된다. 제2 코어 활성화 상태 신호(COS2)에 대하여, 기간(T1) 동안 리프레시가 수행된다고 가 정하면, 기록 동작은 기간(T2) 동안 수행된다. 리프레시 기간(T1) 동안 외부로부터 기록 요청이 생성될 때, 유지된 기록 동작이 리프레시 동작 후에 블록(BLK1)에 대하여 수행된다.
제2 코어 활성화 상태 신호(COS2)는 지연 라인(901)에 의하여 신호(n01)와 같은 하나의 상태 신호로 합성된다. 신호(n01)는 RS 플립 플롭(904)을 설정하고, 또한, 리프레시 요청 신호(REF)가 하이 레벨로 바뀌기 전에, RS 플립 플롭(912)의 상태를 유지한다.
신호(RS)에 대하여, 기간(T3, T4) 동안 각각 판독 동작들이 수행된다고 가정하자. 플립 플롭(904)의 출력 신호(n02)는 그 다음의 판독 동작의 제1 코어 제어 신호(COC1)의 신호(CL)가 타이밍(t2)에서 출력될 때까지 그 상태를 유지한다. 신호(CL)의 타이밍은 신호(RS)가 로우 레벨에 있는 동안, 반드시 출력되도록 설정된다. 신호(n02)가 신호(CL)에 응답하여 하이 레벨로 바뀐 후에, 타이밍(t3)에서 신호(RS)가 하이 레벨로 전이한 것에 응답하여, 신호(n03)는 로우 레벨로 바뀌고, 선택 신호(SEL1)는 로우 레벨로 바뀐다. 그 후 기록 요청이 생성되지 않을 때, 신호(RD)는 하이 레벨에 있고, 따라서, 선택 신호(SEL5)는 하이 레벨에 있고, 기록 패리티 블록(BLK5)은 비활성화된다. 이렇게 해서, 제2 코어 제어 신호(COC2)의 동작이 끝난 후에, 동작 결과를 이용한 데이터 정정이 그 다음의 하나의 판독 동작에 대하여 수행된다. 제2 코어 제어 신호(COC2)의 동작을 완료한 후에 기록 요청이 생성될 때, 선택 신호(SEL1)는 단일 동작을 기다리지 않고, 신호(WR)에 의해 로우 레벨로 바뀐다. 이는 기록 동작이 판독 동작만큼 빨리 수행될 필요가 없다는 조건 하에 가능하다. 판독 동작과 마찬가지로, 기록 동작의 속도를 증가시키기 위하여, 기록 동작이 제어 신호 그룹들 간에 스위칭하지 않고 수행될 수 있다.
도 78은 도 68의 하나의 블록을 구성하는 워드 디코더(103)와 메모리 셀(104)의 다른 구성 예를 도시한 것이다. 도 73의 마스크 정보(MSK)가 사용될 때, 상위 바이트 및/또는 하위 바이트를 선택적으로 액세스하는 것이 가능하다. 하나의 블록은 메인 워드 디코더(1101), 서브 워드 디코더(1102), 상위 바이트를 위한 메모리 셀들(1103), 서브 워드 디코더(1104), 및 하위 바이트를 위한 메모리 셀들(1105)을 포함한다.
16 비트의 데이터를 동일한 어드레스에 저장하기 위한 4개의 블록(BLK1 ~ BLK4)이 있다고 가정하자. 동일한 어드레스의 4 비트 데이터는 하나의 블록에 저장된다. 동일한 어드레스에서, 상위 바이트는 상위 8 비트이고, 하위 바이트는 하위 8 비트이다. 메모리 셀(1103)은 상위 바이트 중 2 비트를 저장한다. 메모리 셀(1105)은 하위 바이트 중 2 비트를 저장한다.
메인 워드 디코더(1101)는 외부로부터 제공된 로우 어드레스에 따라 디코드한다. 메인 워드 디코더(1101)로부터의 출력에 따라, 서브 워드 디코더(1102)는 메모리 셀(1103)의 로우 어드레스를 식별한다. 메인 워드 디코더(1101)로부터의 출력에 따라, 서브 워드 디코더(1104)는 메모리 셀(1105)의 로우 어드레스를 식별한다. 상위 바이트와 하위 바이트의 판독 동작과 기록 동작은 별개의 제어에 의해 수행될 수 있다. 리프레시 동작은 하나의 블록 내의 메모리 셀(1103)과 메모리 셀(1105)에 대하여 동시에 수행된다.
메모리 셀(1103)과 메모리 셀(1105)에 대하여 각각 메인 워드 디코더를 제공하는 것은 레이아웃 영역을 증가시킨다. 워드 라인은 메인 워드 디코더(1101)와 서브 워드 디코더(1102, 1104)의 계층적 구조를 가지고 있고, 메인 워드 디코더(1102)의 메인 워드 라인이 공유됨으로써, 메인 워드 디코더(1101)의 크기를 작게 할 수 있다.
전술한 바와 같이, 본 실시예에 따르면, 외부로부터의 액세스 요청과 내부의 리프레시 동작을 동시에 처리하는 것이 가능하고, 리프레시 요청이 외부로부터 입력되지 않는 SRAM 인터페이스 등에서, 메모리 코어의 하나의 동작에 소요되는 고속 액세스 시간 내에 판독 동작을 실현할 수 있다.
또한, 메모리 코어의 활성화 영역은 하나의 리프레시가 수행되는 영역을 한정하도록 나뉘어진다. 상이한 제어 신호 그룹이 리프레시 블록 및 나머지 다른 블록들에서 사용되도록 메모리 코어의 복수의 제어 신호 그룹이 준비된다. 이에 의해, 동일한 어드레스의 비트는 비트가 존재하는 블록에 따라 상이하게 제어될 수 있다. 판독 동작은 메모리 코어의 하나의 동작에 소요되는 액세스 시간 내에 수행될 수 있다.
그런데, 메모리 코어 내의 복수의 블록들은 로우 어드레스 방향, 칼럼 어드레스 방향 또는 양쪽의 어드레스 방향으로 나뉘어질 수 있다.
본 발명은 전술한 실시예들에 한정되지 않고, 발명의 원리와 범위를 벗어나지 않고 다양한 변경을 가할 수 있을 것이다. 구성 요소의 일부 또는 전부를 개선할 수도 있다.
반도체 메모리를 사용하는 사용자들은 반도체 메모리 내부에서 생성된 제2 커맨드와, 사용자들에 의해 제공되는 판독 커맨드와 기록 커맨드와의 충돌을 인식하는 일 없이, 판독 동작과 기록 동작을 수행할 수 있다. 이로 인하여, 사용자에게 친숙한 반도체 메모리가 제공될 수 있다.

Claims (59)

  1. 데이터를 저장하기 위한 복수의 제1 메모리 블록들과,
    상기 제1 메모리 블록들에 저장된 데이터를 재생성(reproduce)하기 위해 데이터를 저장하는 제2 메모리 블록과,
    커맨드를 수신하고, 상기 제1 메모리 블록들을 액세스하기 위한 판독 커맨드 또는 기록 커맨드를 생성하는 제1 커맨드 생성기와,
    상기 제1 메모리 블록들을 액세스하기 위한 제2 커맨드를 생성하는 제2 커맨드 생성기와,
    상기 판독 커맨드와 상기 제2 커맨드가 동일한 제1 메모리 블록을 액세스할 때, 상기 제2 메모리 블록에 저장된 데이터를 이용하여 상기 액세스된 제1 메모리 블록으로부터 판독 데이터를 재생성하는 판독 제어 회로와,
    상기 기록 커맨드와 상기 제2 커맨드가 상기 동일한 제1 메모리 블록을 액세스할 때, 상기 기록 커맨드와 상기 제2 커맨드에 따른 동작들을 순차적인 순서로 수행하는 기록 제어 회로
    를 포함하는 반도체 메모리.
  2. 제1항에 있어서, 상기 제2 메모리 블록에 저장된 데이터는 상기 제1 메모리 블록들의 패리티 비트인 것인, 반도체 메모리.
  3. 제1항에 있어서, 상기 제1 메모리 블록들과 상기 제2 메모리 블록은 데이터가 시간이 경과함에 따라 사라지는 휘발성 메모리 셀들로 구성되어 있고,
    상기 제2 커맨드는 상기 메모리 셀들의 리프레시(refresh) 동작을 수행하기 위하여 주기적으로 발생하는 리프레시 커맨드인 것인, 반도체 메모리.
  4. 제3항에 있어서, 외부 기록 사이클은 내부 기록 사이클보다 더 길게 설정되고, 상기 외부 기록 사이클은 상기 기록 커맨드의 제공들 사이의 최소 시간 간격이고, 상기 내부 기록 사이클은 상기 제1 메모리 블록들과 상기 제2 메모리 블록에 대한 실제 기록 동작 시간인 것인, 반도체 메모리.
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 삭제
  10. 제3항에 있어서, 상기 제1 메모리 블록들과 상기 제2 메모리 블록 중 오직 하나의 메모리 블록만이 상기 리프레시 커맨드에 응답하여 리프레시되는 것인, 반도체 메모리.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 제3항에 있어서, 외부 클럭을 수신하여, 내부 회로의 동기화 신호로서 내부 클럭을 생성하는 클럭 생성기와,
    상기 외부 클럭의 첫번째 에지에 동기하여 상기 기록 커맨드를 수신하는 제1 커맨드 수신기 회로와,
    상기 외부 클럭의 두번째 에지에 동기하여 상기 리프레시 커맨드를 수신하는 제2 커맨드 수신기 회로와,
    상기 제1 커맨드 수신기 회로와 상기 제2 커맨드 수신기 회로에 수신된 상기 기록 커맨드와 상기 리프레시 커맨드가 수행될 순서를 결정하는 아비터(arbiter)를 더 포함하는 반도체 메모리.
  21. 제1항에 있어서, 외부 클럭을 수신하여, 내부 회로의 동기화 신호로서 내부 클럭을 생성하는 클럭 생성기를 더 포함하고,
    상기 제1 커맨드 생성기는 상기 외부 클럭의 첫번째 에지와 두번째 에지에 각각 동기하여 상기 커맨드들을 수신하고, 상기 수신된 커맨드들에 따라 상기 판독 커맨드 또는 상기 기록 커맨드를 생성하는 것인, 반도체 메모리.
  22. 삭제
  23. 삭제
  24. 제1항에 있어서, 외부 클럭을 수신하여, 내부 회로의 동기화 신호로서 내부 클럭을 생성하는 클럭 생성기와,
    상기 단일 기록 커맨드에 응답하여, 상기 외부 클럭에 동기하여 기록 데이터를 연속적으로 입력하는 데이터 입력 회로를 더 포함하고,
    상기 제1 커맨드 생성기가 상기 기록 커맨드를 수신하는 때부터 데이터를 수신하기 시작하기 위한 시간의 길이는, 상기 단일 기록 커맨드에 대응하는 상기 기록 데이터를 수신하는 횟수인 버스트 길이에 따라 변화하는 것인, 반도체 메모리.
  25. 제1항에 있어서, 외부 클럭을 수신하여, 내부 회로의 동기화 신호로서 내부 클럭을 생성하는 클럭 생성기와,
    단일한 상기 판독 커맨드에 응답하여, 상기 외부 클럭에 동기하여 판독 데이터를 연속적으로 출력하는 데이터 출력 회로와,
    단일한 상기 기록 커맨드에 응답하여, 상기 외부 클럭에 동기하여 기록 데이터를 연속적으로 입력하는 데이터 입력 회로와,
    상기 제1 메모리 블록들과 상기 제2 메모리 블록을 포함하고, 독립적으로 동작하는 복수의 뱅크를 더 포함하고,
    서로 상이한 상기 뱅크들을 순차적으로 액세스하는데 있어, 상기 판독 커맨드와 상기 기록 커맨드의 제공들 사이의 최소 시간 간격은, 상기 단일한 판독 커맨드에 대응하는 상기 판독 데이터를 출력하는 횟수, 및 상기 단일한 기록 커맨드에 대응하는 상기 기록 데이터를 수신하는 횟수인 버스트 길이에 따라 변화하는 것인, 반도체 메모리.
  26. 삭제
  27. 삭제
  28. 제1항에 있어서, 외부 클럭을 수신하여, 내부 회로의 동기화 신호로서 내부 클럭을 생성하는 클럭 생성기와,
    단일한 상기 기록 커맨드에 응답하여, 상기 외부 클럭에 동기하여 기록 데이터를 연속적으로 입력하는 데이터 입력 회로와,
    상기 외부 클럭에 동기하여 입력된 모든 기록 데이터에 대하여, 상기 제1 메모리 블록들과 상기 제2 메모리 블록에 대한 기록 동작을 마스크(mask)하는 데이터 마스크 제어 회로를 더 포함하는 반도체 메모리.
  29. 삭제
  30. 제1항에 있어서, 리프레시 동작이 수행될 메모리 셀들을 표시하고, 리프레시 요청이 있을 때마다 카운트하는 리프레시 카운터를 더 포함하고,
    상기 리프레시 카운터의 하위 비트(들)는 뱅크들을 선택하기 위한 뱅크 어드레스에 대응하는 것인, 반도체 메모리.
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
  37. 삭제
  38. 삭제
  39. 삭제
  40. 삭제
  41. 삭제
  42. 삭제
  43. 삭제
  44. 삭제
  45. 삭제
  46. 삭제
  47. 삭제
  48. 삭제
  49. 삭제
  50. 삭제
  51. 삭제
  52. 삭제
  53. 삭제
  54. 삭제
  55. 삭제
  56. 삭제
  57. 삭제
  58. 삭제
  59. 삭제
KR1020020020375A 2001-08-03 2002-04-15 반도체 메모리 KR100806154B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JPJP-P-2001-00236992 2001-08-03
JP2001236992A JP4768163B2 (ja) 2001-08-03 2001-08-03 半導体メモリ
JP2001367053A JP4159280B2 (ja) 2001-08-03 2001-11-30 半導体記憶装置
JPJP-P-2001-00367053 2001-11-30

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020070121113A Division KR100806161B1 (ko) 2001-08-03 2007-11-26 반도체 메모리

Publications (2)

Publication Number Publication Date
KR20030012812A KR20030012812A (ko) 2003-02-12
KR100806154B1 true KR100806154B1 (ko) 2008-02-22

Family

ID=26619960

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020020020375A KR100806154B1 (ko) 2001-08-03 2002-04-15 반도체 메모리
KR1020070121113A KR100806161B1 (ko) 2001-08-03 2007-11-26 반도체 메모리

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020070121113A KR100806161B1 (ko) 2001-08-03 2007-11-26 반도체 메모리

Country Status (7)

Country Link
US (1) US6754126B2 (ko)
EP (2) EP1947651B1 (ko)
JP (2) JP4768163B2 (ko)
KR (2) KR100806154B1 (ko)
CN (2) CN1236453C (ko)
DE (1) DE60238891D1 (ko)
TW (1) TW550569B (ko)

Families Citing this family (81)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3666671B2 (ja) * 1994-12-20 2005-06-29 株式会社日立製作所 半導体装置
US7003643B1 (en) 2001-04-16 2006-02-21 Micron Technology, Inc. Burst counter controller and method in a memory device operable in a 2-bit prefetch mode
DE60237301D1 (de) 2001-10-22 2010-09-23 Rambus Inc Phaseneinstellvorrichtung und verfahren für ein speicherbaustein-signalisierungssystem
US6928026B2 (en) 2002-03-19 2005-08-09 Broadcom Corporation Synchronous global controller for enhanced pipelining
JP2003297080A (ja) * 2002-03-29 2003-10-17 Mitsubishi Electric Corp 半導体記憶装置
KR100496857B1 (ko) * 2002-05-17 2005-06-22 삼성전자주식회사 외부적으로 데이터 로드 신호를 갖는 반도체 메모리 장치및 이 반도체 메모리 장치의 직렬 데이터의 병렬데이터로의 프리패치 방법
JP3998539B2 (ja) * 2002-08-28 2007-10-31 富士通株式会社 半導体記憶装置
JP2004310547A (ja) * 2003-04-08 2004-11-04 Matsushita Electric Ind Co Ltd 情報処理装置、メモリ、情報処理方法及びプログラム
US7117388B2 (en) * 2003-04-28 2006-10-03 International Business Machines Corporation Dynamic, Non-invasive detection of hot-pluggable problem components and re-active re-allocation of system resources from problem components
US8447900B1 (en) * 2003-06-12 2013-05-21 Marvell International Ltd. Adaptive multiple FIFO scheme
JP4664208B2 (ja) * 2003-08-18 2011-04-06 富士通セミコンダクター株式会社 半導体メモリおよび半導体メモリの動作方法
US20050071707A1 (en) * 2003-09-30 2005-03-31 Hampel Craig E. Integrated circuit with bi-modal data strobe
US6973003B1 (en) * 2003-10-01 2005-12-06 Advanced Micro Devices, Inc. Memory device and method
JP4996094B2 (ja) * 2003-10-24 2012-08-08 インターナショナル・ビジネス・マシーンズ・コーポレーション 半導体記憶装置及びそのリフレッシュ方法
KR100591760B1 (ko) * 2004-01-09 2006-06-22 삼성전자주식회사 가변 가능한 메모리 사이즈를 갖는 반도체 메모리 장치
US7016235B2 (en) * 2004-03-03 2006-03-21 Promos Technologies Pte. Ltd. Data sorting in memories
US7054215B2 (en) 2004-04-02 2006-05-30 Promos Technologies Pte. Ltd. Multistage parallel-to-serial conversion of read data in memories, with the first serial bit skipping at least one stage
KR100909411B1 (ko) * 2004-07-16 2009-07-24 후지쯔 마이크로일렉트로닉스 가부시키가이샤 반도체 기억 장치
JP4275033B2 (ja) * 2004-08-23 2009-06-10 Necエレクトロニクス株式会社 半導体記憶装置とテスト回路及び方法
KR100630742B1 (ko) * 2005-03-17 2006-10-02 삼성전자주식회사 Dqs도메인에서 클록 도메인으로의 변환을 위한 데이터샘플링 방법 및 이를 이용한 동기식 반도체 메모리 장치의데이터 입력 회로
JP4753637B2 (ja) * 2005-06-23 2011-08-24 パトレネラ キャピタル リミテッド, エルエルシー メモリ
US7349289B2 (en) * 2005-07-08 2008-03-25 Promos Technologies Inc. Two-bit per I/O line write data bus for DDR1 and DDR2 operating modes in a DRAM
KR100721581B1 (ko) 2005-09-29 2007-05-23 주식회사 하이닉스반도체 직렬 입/출력 인터페이스를 가진 멀티 포트 메모리 소자
KR100706830B1 (ko) * 2005-10-19 2007-04-13 주식회사 하이닉스반도체 반도체 메모리의 액티브 구간 제어장치 및 방법
JP2007115087A (ja) * 2005-10-21 2007-05-10 Oki Electric Ind Co Ltd 半導体装置
JP4912718B2 (ja) 2006-03-30 2012-04-11 富士通セミコンダクター株式会社 ダイナミック型半導体メモリ
JP5087870B2 (ja) * 2006-07-12 2012-12-05 富士通セミコンダクター株式会社 半導体メモリ、コントローラおよび半導体メモリの動作方法
KR100815179B1 (ko) * 2006-12-27 2008-03-19 주식회사 하이닉스반도체 변화하는 지연값을 가지는 메모리장치.
JP5157207B2 (ja) 2007-03-16 2013-03-06 富士通セミコンダクター株式会社 半導体メモリ、メモリコントローラ、システムおよび半導体メモリの動作方法
KR100909965B1 (ko) * 2007-05-23 2009-07-29 삼성전자주식회사 버스를 공유하는 휘발성 메모리 및 불휘발성 메모리를구비하는 반도체 메모리 시스템 및 불휘발성 메모리의 동작제어 방법
KR100880836B1 (ko) * 2007-06-26 2009-02-02 주식회사 하이닉스반도체 반도체 메모리장치
KR100915824B1 (ko) * 2008-01-07 2009-09-07 주식회사 하이닉스반도체 반도체 메모리 장치의 입력 회로 및 그 제어 방법
KR100911186B1 (ko) * 2008-02-14 2009-08-06 주식회사 하이닉스반도체 반도체 장치 및 그 장치의 데이터 출력 방법
KR100915831B1 (ko) * 2008-07-28 2009-09-07 주식회사 하이닉스반도체 반도체 집적회로
JP2009087534A (ja) * 2009-01-26 2009-04-23 Nec Electronics Corp 半導体記憶装置
TWI409816B (zh) * 2009-02-27 2013-09-21 Himax Tech Ltd 解決單埠靜態隨機存取記憶體之請求衝突的系統及方法
US8392666B2 (en) * 2009-05-21 2013-03-05 Via Technologies, Inc. Low power high speed load-store collision detector
KR101187639B1 (ko) * 2011-02-28 2012-10-10 에스케이하이닉스 주식회사 집적회로
US8589775B2 (en) * 2011-03-14 2013-11-19 Infineon Technologies Ag Error tolerant flip-flops
CN102842336B (zh) * 2011-06-20 2015-03-18 华邦电子股份有限公司 半导体存储器装置及其读取方法
KR20130032703A (ko) * 2011-09-23 2013-04-02 에스케이하이닉스 주식회사 반도체메모리장치
US8873264B1 (en) 2012-08-24 2014-10-28 Cypress Semiconductor Corporation Data forwarding circuits and methods for memory devices with write latency
US9171600B2 (en) * 2013-09-04 2015-10-27 Naoki Shimizu Semiconductor memory device
US9293176B2 (en) * 2014-02-18 2016-03-22 Micron Technology, Inc. Power management
US9489226B2 (en) * 2014-06-06 2016-11-08 PernixData, Inc. Systems and methods to manage write commands in a cache
JP2016031768A (ja) * 2014-07-25 2016-03-07 富士通株式会社 データ転送回路
KR102282971B1 (ko) 2014-12-05 2021-07-29 삼성전자주식회사 반도체 메모리 장치, 및 상기 반도체 메모리 장치를 포함하는 메모리 시스템
KR20170045795A (ko) * 2015-10-20 2017-04-28 삼성전자주식회사 메모리 장치 및 이를 포함하는 메모리 시스템
US9514800B1 (en) * 2016-03-26 2016-12-06 Bo Liu DRAM and self-refresh method
KR102553181B1 (ko) * 2016-07-12 2023-07-10 에스케이하이닉스 주식회사 메모리 장치 및 메모리 장치의 동작 방법
US11012246B2 (en) * 2016-09-08 2021-05-18 Taiwan Semiconductor Manufacturing Co., Ltd. SRAM-based authentication circuit
US9728236B1 (en) * 2016-10-21 2017-08-08 Dell Products, Lp System and method of training optimization for dual channel memory modules
US10283186B2 (en) * 2016-12-21 2019-05-07 Samsung Electronics Co., Ltd. Data alignment circuit of a semiconductor memory device, a semiconductor memory device and a method of aligning data in a semiconductor memory device
US10490251B2 (en) 2017-01-30 2019-11-26 Micron Technology, Inc. Apparatuses and methods for distributing row hammer refresh events across a memory device
US10192608B2 (en) * 2017-05-23 2019-01-29 Micron Technology, Inc. Apparatuses and methods for detection refresh starvation of a memory
US11373698B2 (en) 2017-05-26 2022-06-28 SK Hynix Inc. Semiconductor device, semiconductor system including the same and operating method for a semiconductor system
JP7113368B2 (ja) * 2017-07-03 2022-08-05 パナソニックIpマネジメント株式会社 撮像装置及びカメラシステム
KR102466965B1 (ko) * 2018-04-23 2022-11-14 에스케이하이닉스 주식회사 반도체장치
US11017833B2 (en) 2018-05-24 2021-05-25 Micron Technology, Inc. Apparatuses and methods for pure-time, self adopt sampling for row hammer refresh sampling
US10573370B2 (en) 2018-07-02 2020-02-25 Micron Technology, Inc. Apparatus and methods for triggering row hammer address sampling
US10685696B2 (en) 2018-10-31 2020-06-16 Micron Technology, Inc. Apparatuses and methods for access based refresh timing
WO2020117686A1 (en) 2018-12-03 2020-06-11 Micron Technology, Inc. Semiconductor device performing row hammer refresh operation
KR20200071396A (ko) * 2018-12-11 2020-06-19 에스케이하이닉스 주식회사 반도체장치 및 반도체시스템
CN117198356A (zh) 2018-12-21 2023-12-08 美光科技公司 用于目标刷新操作的时序交错的设备和方法
US11615831B2 (en) * 2019-02-26 2023-03-28 Micron Technology, Inc. Apparatuses and methods for memory mat refresh sequencing
US11227649B2 (en) 2019-04-04 2022-01-18 Micron Technology, Inc. Apparatuses and methods for staggered timing of targeted refresh operations
US11069393B2 (en) 2019-06-04 2021-07-20 Micron Technology, Inc. Apparatuses and methods for controlling steal rates
US10978132B2 (en) 2019-06-05 2021-04-13 Micron Technology, Inc. Apparatuses and methods for staggered timing of skipped refresh operations
US11302374B2 (en) 2019-08-23 2022-04-12 Micron Technology, Inc. Apparatuses and methods for dynamic refresh allocation
US11302377B2 (en) 2019-10-16 2022-04-12 Micron Technology, Inc. Apparatuses and methods for dynamic targeted refresh steals
KR102157571B1 (ko) * 2019-11-21 2020-09-18 주식회사 파두 메모리 시스템
CN113900580A (zh) * 2020-07-06 2022-01-07 旺宏电子股份有限公司 存储器装置、电子装置及与其相关的读取方法
US11309010B2 (en) 2020-08-14 2022-04-19 Micron Technology, Inc. Apparatuses, systems, and methods for memory directed access pause
US11348631B2 (en) 2020-08-19 2022-05-31 Micron Technology, Inc. Apparatuses, systems, and methods for identifying victim rows in a memory device which cannot be simultaneously refreshed
US11380382B2 (en) 2020-08-19 2022-07-05 Micron Technology, Inc. Refresh logic circuit layout having aggressor detector circuit sampling circuit and row hammer refresh control circuit
US11557331B2 (en) 2020-09-23 2023-01-17 Micron Technology, Inc. Apparatuses and methods for controlling refresh operations
US11222686B1 (en) 2020-11-12 2022-01-11 Micron Technology, Inc. Apparatuses and methods for controlling refresh timing
US11468938B2 (en) * 2020-11-12 2022-10-11 Micron Technology, Inc. Memory with programmable refresh order and stagger time
US11264079B1 (en) 2020-12-18 2022-03-01 Micron Technology, Inc. Apparatuses and methods for row hammer based cache lockdown
US11848070B2 (en) * 2021-11-10 2023-12-19 Micron Technology, Inc. Memory with DQS pulse control circuitry, and associated systems, devices, and methods
US11790974B2 (en) 2021-11-17 2023-10-17 Micron Technology, Inc. Apparatuses and methods for refresh compliance

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5999474A (en) * 1998-10-01 1999-12-07 Monolithic System Tech Inc Method and apparatus for complete hiding of the refresh of a semiconductor memory
US6108229A (en) * 1996-05-24 2000-08-22 Shau; Jeng-Jye High performance embedded semiconductor memory device with multiple dimension first-level bit-lines
EP1215678A2 (en) * 2000-12-04 2002-06-19 Fujitsu Limited Semiconductor memory, and memory access method
EP1246194A2 (en) * 2001-03-29 2002-10-02 Fujitsu Limited Semiconductor memory device

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1041882B (it) * 1975-08-20 1980-01-10 Honeywell Inf Systems Memoria dinamica a semiconduttori e relativo sistema di recarica
US4829467A (en) * 1984-12-21 1989-05-09 Canon Kabushiki Kaisha Memory controller including a priority order determination circuit
JPH0612613B2 (ja) 1986-03-18 1994-02-16 富士通株式会社 半導体記憶装置
JPH0612616B2 (ja) * 1986-08-13 1994-02-16 日本テキサス・インスツルメンツ株式会社 半導体記憶装置
JPS63282997A (ja) * 1987-05-15 1988-11-18 Mitsubishi Electric Corp ブロツクアクセスメモリ
US4933907A (en) * 1987-12-03 1990-06-12 Mitsubishi Denki Kabushiki Kaisha Dynamic random access memory device and operating method therefor
JPH04132093A (ja) * 1990-09-21 1992-05-06 Toshiba Corp 半導体記憶装置
JPH06338187A (ja) * 1993-05-27 1994-12-06 Melco:Kk Dramを用いたメモリ装置
US5963497A (en) * 1998-05-18 1999-10-05 Silicon Aquarius, Inc. Dynamic random access memory system with simultaneous access and refresh operations and methods for using the same
JP2000048558A (ja) * 1998-05-22 2000-02-18 Mitsubishi Electric Corp 半導体記憶装置
JP4260247B2 (ja) * 1998-09-02 2009-04-30 富士通マイクロエレクトロニクス株式会社 半導体記憶装置
JP2000251467A (ja) * 1999-03-02 2000-09-14 Nec Ibaraki Ltd メモリリフレッシュ制御装置およびその制御方法
JP4034923B2 (ja) * 1999-05-07 2008-01-16 富士通株式会社 半導体記憶装置の動作制御方法および半導体記憶装置
JP4555416B2 (ja) * 1999-09-22 2010-09-29 富士通セミコンダクター株式会社 半導体集積回路およびその制御方法
JP4253097B2 (ja) * 1999-12-28 2009-04-08 東芝マイクロエレクトロニクス株式会社 半導体記憶装置及びそのデータ読み出し方法
JP3871853B2 (ja) * 2000-05-26 2007-01-24 株式会社ルネサステクノロジ 半導体装置及びその動作方法
JP4011833B2 (ja) * 2000-06-30 2007-11-21 株式会社東芝 半導体メモリ
JP2002245778A (ja) * 2001-02-16 2002-08-30 Fujitsu Ltd 半導体装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6108229A (en) * 1996-05-24 2000-08-22 Shau; Jeng-Jye High performance embedded semiconductor memory device with multiple dimension first-level bit-lines
US5999474A (en) * 1998-10-01 1999-12-07 Monolithic System Tech Inc Method and apparatus for complete hiding of the refresh of a semiconductor memory
EP1215678A2 (en) * 2000-12-04 2002-06-19 Fujitsu Limited Semiconductor memory, and memory access method
EP1246194A2 (en) * 2001-03-29 2002-10-02 Fujitsu Limited Semiconductor memory device

Also Published As

Publication number Publication date
CN1697078B (zh) 2012-10-10
KR20070118215A (ko) 2007-12-14
CN1236453C (zh) 2006-01-11
JP4768163B2 (ja) 2011-09-07
KR20030012812A (ko) 2003-02-12
KR100806161B1 (ko) 2008-02-22
EP1947651A3 (en) 2009-08-05
JP2003051186A (ja) 2003-02-21
TW550569B (en) 2003-09-01
US20030026161A1 (en) 2003-02-06
CN1697078A (zh) 2005-11-16
EP1947651A2 (en) 2008-07-23
EP1288961A3 (en) 2004-03-24
JP2003173676A (ja) 2003-06-20
EP1288961B1 (en) 2011-01-12
US6754126B2 (en) 2004-06-22
CN1402255A (zh) 2003-03-12
JP4159280B2 (ja) 2008-10-01
EP1288961A2 (en) 2003-03-05
DE60238891D1 (de) 2011-02-24
EP1947651B1 (en) 2011-06-15

Similar Documents

Publication Publication Date Title
KR100806154B1 (ko) 반도체 메모리
KR100618070B1 (ko) 리프레시를 자동으로 행하는 동적 메모리 회로
US6055615A (en) Pipeline memory access using DRAM with multiple independent banks
US6741515B2 (en) DRAM with total self refresh and control circuit
JP4912718B2 (ja) ダイナミック型半導体メモリ
US5587961A (en) Synchronous memory allowing early read command in write to read transitions
US5796669A (en) Synchronous semiconductor memory device
JP4041358B2 (ja) 半導体メモリ
KR100286404B1 (ko) 클록 동기형 메모리 장치 및 그 스케줄러 회로
KR20030038450A (ko) 메모리 디바이스 및 그의 내부 제어 방법
JPH0916470A (ja) 半導体記憶装置
JP3708801B2 (ja) 半導体記憶装置
JP2000268566A (ja) 同期型半導体記憶装置
US5841727A (en) Semiconductor memory device
JP2007200359A (ja) 記憶装置、アドレス制御方法及びシステム
JP2002184179A (ja) Sdramのランダムアクセス装置
TW382805B (en) Method and apparatus for synchronous memory access with separate memory banks and with memory banks divided into column independent sections
JP2002117672A (ja) 半導体記憶装置
JPH09306161A (ja) ダイナミックram及びその制御方法
JP2002184175A (ja) Sdramのランダムアクセス装置

Legal Events

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

Payment date: 20130118

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140117

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150119

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee