KR20200063134A - 메모리 디바이스에서 백그라운드 데이터 패턴을 기록하는 장치 및 방법 - Google Patents
메모리 디바이스에서 백그라운드 데이터 패턴을 기록하는 장치 및 방법 Download PDFInfo
- Publication number
- KR20200063134A KR20200063134A KR1020207004671A KR20207004671A KR20200063134A KR 20200063134 A KR20200063134 A KR 20200063134A KR 1020207004671 A KR1020207004671 A KR 1020207004671A KR 20207004671 A KR20207004671 A KR 20207004671A KR 20200063134 A KR20200063134 A KR 20200063134A
- Authority
- KR
- South Korea
- Prior art keywords
- memory
- data pattern
- memory device
- pattern
- row
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/14—Implementation of control logic, e.g. test mode decoders
- G11C29/16—Implementation of control logic, e.g. test mode decoders using microprogrammed units, e.g. state machines
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1078—Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/021—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in voltage or current generators
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/1201—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details comprising I/O circuitry
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/14—Implementation of control logic, e.g. test mode decoders
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/18—Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/18—Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
- G11C29/20—Address generation devices; Devices for accessing memories, e.g. details of addressing circuits using counters or linear-feedback shift registers [LFSR]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/18—Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
- G11C2029/1802—Address decoder
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/022—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in I/O circuitry
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/028—Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/10—Test algorithms, e.g. memory scan [MScan] algorithms; Test patterns, e.g. checkerboard patterns
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/46—Test trigger logic
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/56—External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
- G11C29/56004—Pattern generation
Landscapes
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
메모리 디바이스(14)는 명령 제어기(28)와, 다수의 메모리 셀을 갖는 메모리 어레이(22)를 포함할 수 있다. 명령 제어기(28)는 메모리 어레이(22)의 메모리 셀에 데이터 패턴을 기록하는 명령을 수신할 수 있다. 데이터 패턴은 입력/출력 데이터 라인으로부터의 추가 입력없이 메모리 어레이(22)의 다수의 셀에 걸쳐 반복될 수 있다.
Description
본 명세서에 기술된 실시예는 일반적으로 메모리 디바이스의 분야에 관한 것이다. 보다 구체적으로, 본 실시예는 데이터 패턴을 기록하고 다수의 동작 모드를 위한 공유 어드레스 카운터를 이용하는 하나 이상의 시스템, 장치 및 방법을 포함한다.
이 섹션은 이하에서 설명 및/또는 청구되는 본 개시의 다양한 양태와 관련될 수 있는 당해 분야의 다양한 양태를 독자에게 소개하도록 구성된다. 이 논의는 본 개시의 다양한 양태에 대한 더 나은 이해를 돕기 위해 독자에게 배경 정보를 제공하는데 도움이 될 것으로 판단된다. 따라서, 이들 진술은 종래 기술의 승인이 아니라 이러한 관점에서 읽혀져야 한다는 것을 이해해야 한다.
메모리 디바이스에서의 다양한 동작 모드는 메모리 디바이스상의 메모리 어레이의 큰 섹션 또는 모두에 대한 액세스를 요구할 수 있다. 예를 들어, 테스팅과 같은 특정 예에서, 메모리 디바이스는 메모리 어레이의 각 메모리 셀이 개별적으로 액세스될 수 있는 모드로 설정될 수 있다. 특정 동작 모드에서 각각의 메모리 셀의 액세스는 메모리 어레이 내의 각각의 메모리 셀이 순차적으로 액세스되도록 반복 프로세스 일 수 있다. 이러한 기능을 용이하게 하기 위해, 순차적 인 방식으로 각각의 메모리 셀에 액세스할 수 있는 빠르고 효율적인 방법 및 구조를 제공하는 것이 바람직하다. 또한, 이러한 순차적 액세스는 메모리 디바이스의 비용을 증가시키고 메모리 디바이스의 크기를 증가시킬 수 있는 추가 하드웨어 구성 요소의 사용을 필요로하지 않으면서 제공되어야 한다. 따라서, 본 명세서에 설명된 실시예는 위에서 설명된 하나 이상의 문제에 관한 것일 수 있다.
도 1은 본 발명의 일 실시예에 따른 컴퓨터 시스템을 나타내는 블록도이다.
도 2는 본 발명의 일 실시예에 따른 메모리 디바이스를 나타내는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 도 2의 메모리 디바이스의 일부의 블록도이다.
도 4는 본 발명의 일 실시예에 따른 도 3의 메모리 디바이스의 동작에 대한 데이터 패턴 테스트 모드를 나타내는 흐름도이다.
도 2는 본 발명의 일 실시예에 따른 메모리 디바이스를 나타내는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 도 2의 메모리 디바이스의 일부의 블록도이다.
도 4는 본 발명의 일 실시예에 따른 도 3의 메모리 디바이스의 동작에 대한 데이터 패턴 테스트 모드를 나타내는 흐름도이다.
하나 이상의 특정 실시예가 후술될 것이다. 이들 실시예들의 간결한 설명을 제공하기 위해, 실제 구현의 모든 특징들이 본 명세서에서 설명되는 것은 아니다. 엔지니어링 또는 디자인 프로젝트에서와 같이 실제 구현을 개발할 때 시스템 관련 및 비즈니스 관련 제약 조건 준수와 같은 개발자의 특정 목표를 달성하기 위해 수많은 구현 관련 결정을 내려야 하며, 이는 구현마다 다를 수 있다. 더욱이, 그러한 개발 노력은 복잡하고 시간 소모적일 수 있지만, 그럼에도 불구하고 본 개시의 이점을 갖는 통상의 기술자를 위한 설계, 제조 및 제조에 대한 일상적인 사업일 것이다.
이하에서 상세히 설명되는 바와 같이, 메모리 디바이스는 메모리 어레이 내의 모든 메모리 셀 또는 메모리 셀들의 큰 블록에 대한 순차적 액세스를 용이하게 하는 동작 모드를 이용할 수 있다. 예를 들어, 더블 데이터 레이트 타입 5 동기식 동적 랜덤 액세스 메모리(DDR5 SDRAM)에서, Fast Zero 모드, ECS(Error Check and Scrub) 및 DPT(Data Pattern Test) 모드와 같은 특정 작동 모드에서는 메모리 어레이의 각 셀이 순차적으로 액세스된다. 각 메모리 셀에 순차적으로 액세스하기 위해, 하나 이상의 명령이 메모리 디바이스에 의해 수신될 수 있다. 메모리 디바이스 내의 제어기는 각각의 셀이 개별적으로 액세스될 수 있도록 내부 메모리 어드레스를 생성하는데 사용될 수 있다. 하나 이상의 카운터는 어레이의 각 메모리 셀에 액세스하기 위해 내부 어드레스를 통해 시퀀스하는데 사용될 수 있다. 카운터는 메모리 디바이스의 비용 및/또는 크기를 증가시킬 수 있기 때문에, 본 실시예는 전체 메모리 어레이에 액세스하기 위해 어드레스 시퀀싱을 생성하는데 사용되는 추가 하드웨어를 최소화하기 위해, 각각의 Fast Zero 모드 및 DPT 모드를 이용함에 있어서 동일한 카운터를 공유할 수 있다. 이해되는 바와 같이, 순차 액세스는 임의의 논리 시퀀스(예를 들어, [0, 1, 2, 3…], [1, 3, 5, 7…] 등)를 특징으로 할 수 있다.
이제 도 1을 참조하면, 컴퓨터 시스템(10)의 간략화된 블록도가 도시되어있다. 컴퓨터 시스템(10)은 제어기(12) 및 메모리 디바이스(14)를 포함한다. 제어기(12)는 하나 이상의 양방향 통신 버스(18)를 통해 메모리 디바이스(14)에 다양한 신호를 제공하기 위해 소프트웨어 프로그램을 실행할 수 있는 하나 이상의 프로세서(16)(예를 들어, 하나 이상의 마이크로프로세서)와 같은 처리 회로를 포함할 수 있어서, 메모리 디바이스(14)와 관련하여 기록되거나 판독될 데이터의 송신 및 수신을 용이하게 할 수 있다. 프로세서(들)(16)는 다수의 마이크로프로세서, 하나 이상의 "범용" 마이크로 프로세서, 하나 이상의 특수 목적 마이크로 프로세서 및/또는 하나 이상의 주문형 집적 회로(ASICS), 또는 이들의 일부 조합을 포함할 수 있다. 예를 들어, 프로세서(들)(16)는 하나 이상의 축소 명령 세트(RISC) 프로세서를 포함할 수 있다. 제어기(12)는 제어 로직 및/또는 소프트웨어, 룩업 테이블, 구성 데이터 등과 같은 정보를 저장할 수 있는 하나 이상의 메모리(20)에 연결될 수 있다. 일부 실시예에서, 프로세서(들)(16) 및/또는 메모리(20)는 제어기(12) 외부에 위치할 수 있다. 메모리(20)는 휘발성 메모리(예를 들어, 랜덤 액세스 메모리(RAM)) 및/또는 비 휘발성 메모리(예를 들어, ROM(read-only memory), 플래시 메모리, 하드 드라이브, 또는 임의의 다른 적합한 광학, 자기 또는 솔리드-스테이트 저장 매체, 또는 이들의 조합)와 같은, 유형의, 비-일시적인, 기계-판독가능-매체를 포함할 수 있다. 메모리(20)는 다양한 정보를 저장할 수 있으며 다양한 목적으로 사용될 수 있다. 예를 들어, 메모리(20)는 다양한 신호 및 명령을 메모리 디바이스(14)에 제공하기 위한 명령어와 같은, 프로세서(16)가 실행할 기계 판독 가능 및/또는 프로세서 실행 가능 명령어(예를 들어, 펌웨어 또는 소프트웨어)를 저장할 수 있어서, 메모리 디바이스(14)와 관련하여 기록되거나 판독될 데이터의 송신 및 수신을 용이하게 할 수 있다.
메모리 디바이스(14)는 개별 메모리 셀의 메모리 어레이(22)를 포함한다. 아래에 더 설명되는 바와 같이, 메모리 어레이(22)는 후술하는 바와 같이 메모리 어레이(22)의 셀에 대한 액세스를 제공하기 위해 다양한 방식으로 그룹화되거나 분할될 수 있는 하나 이상의 메모리 뱅크를 포함할 수 있다. 제어기(12)는 하나 이상의 명령 및 입력/출력(I/O) 인터페이스(24)를 통해 메모리 디바이스(14)와 통신할 수 있다. 일반적으로, 명령 및 입력/출력 인터페이스(24)는 제어기(12)와 같은 외부 디바이스에 의해 메모리 디바이스(14)의 다양한 구성 요소에 대한 액세스를 제공한다.
메모리 디바이스(14)는 또한 명령 디코더(26)를 포함할 수 있다. 명령 디코더(26)는 명령 및 입력/출력(I/O) 인터페이스(24)로부터 명령 신호를 수신하고, 다양한 내부 명령을 제공하기 위해 명령 신호를 디코딩할 수 있다. 예를 들어, 명령 디코더(26)는 판독 명령, 기록 명령, 모드 레지스터 세트 명령, 활성화 명령 등과 같은 명령을 디코딩하고, 메모리 어레이(22)의 특정 영역에 대한 액세스를 제공할 수 있다. Fast Zero 모드 및 DPT 모드와 같은 특정 동작 모드는 메모리 어레이(22)의 개별 셀로의 순차 액세스를 용이하게 할 수 있다. 이 기능을 용이하게 하기 위해, 명령 디코더(26)는 특정 모드 엔트리 명령(가령, Fast Zero 또는 DPT)이 수신될 때 어드레스 시퀀싱을 제어하기 위한 하나 이상의 개별 제어기를 포함하는 명령 제어기(28)를 포함한다. 또한, 순차적으로 액세스될 내부 어드레스를 생성하기 위해, 하나 이상의 카운터(30)가 제공될 수도 있다. 유리하게, 카운터(30)는 Fast Zero 모드 또는 DPT 모드와 같이, 메모리 어레이(22)의 전부 또는 많은 부분의 어드레스 시퀀싱을 요구할 수 있는 임의의 동작 모드에서 사용될 수 있도록 공유될 수 있다. 명령 제어기(28) 및 카운터(30)의 사용 및 구현이 아래에서 더 상세히 설명될 것이다. 명령 제어기(28) 및 카운터(30)가 명령 디코더(26)의 일부인 것으로 도시되어 있지만, 대안으로, 이들 요소가 메모리 디바이스(14)의 다른 곳에 제공될 수 있음에 유의해야 한다.
도 2는 도 1의 메모리 디바이스(14)의 특정 추가 특징을 도시하는 간략화된 블록도이다. 구체적으로, 도 2의 블록도는 메모리 디바이스(14)의 특정 추가 특징 및 관련 기능을 도시하는 기능 블록도이다. 일 실시예에 따르면, 메모리 디바이스(14)는 더블 데이터 레이트 타입 5 동기식 랜덤 액세스 메모리(DDR5 SDRAM) 디바이스일 수 있다. DDR5 SDRAM의 다양한 기능을 통해 이전 세대 DDR SDRAM에 비해 전력 소비를 줄이고 대역폭을 늘리고 스토리지 용량을 늘릴 수 있다.
메모리 디바이스(14)는 다수의 메모리 뱅크(32)로 논리적 및 기능적으로 그룹화된 메모리 어레이를 포함할 수 있다. 메모리 뱅크(32)는 예를 들어 DDR5 SDRAM 메모리 뱅크일 수 있다. 메모리 뱅크(32)는 듀얼 인라인 메모리 모듈(DIMMS) 상에 배열된 하나 이상의 칩(예를 들어, SDRAM 칩) 상에 제공될 수 있다. 이해될 바와 같이, 각각의 DIMM은 다수의 SDRAM 메모리 칩(예를 들어, x8 또는 x16 메모리 칩)을 포함할 수 있다. 각각의 SDRAM 메모리 칩은 하나 이상의 메모리 뱅크(32)를 포함할 수 있다. 메모리 디바이스(14)는 다수의 메모리 뱅크(32)를 갖는 단일 메모리 칩(예를 들어, SDRAM 칩)의 일부를 나타낸다. DDR5의 경우, 메모리 뱅크(32)는 뱅크 그룹을 형성하도록 추가로 배치될 수 있다. 예를 들어, 8 기가비트(Gb) DDR5 SDRAM의 경우, 메모리 칩은 8 개의 뱅크 그룹으로 배열된 16 개의 메모리 뱅크(32)를 포함할 수 있으며, 각 뱅크 그룹은 2 개의 메모리 뱅크를 포함한다. 16Gb DDR5 SDRAM의 경우, 메모리 칩은 8 개의 뱅크 그룹으로 배열된 32 개의 메모리 뱅크(32)를 포함할 수 있으며, 각 뱅크 그룹은 예를 들어 4 개의 메모리 뱅크를 포함한다. 메모리 디바이스(14)상의 메모리 뱅크(32)의 다양한 다른 구성, 조직 및 크기는 전체 시스템의 응용 및 설계에 따라 이용될 수 있다.
전술한 바와 같이, 메모리 디바이스(14)는 하나 이상의 명령 및 입력/출력(I/O) 인터페이스를 포함할 수 있다. 예를 들어, 메모리 디바이스(14)는 명령 인터페이스(34) 및 입/출력(I/O) 인터페이스(36)를 포함할 수 있다. 명령 인터페이스(34)는 프로세서 또는 제어기와 같은 외부 디바이스(미도시)로부터 다수의 신호(예를 들어, 신호(38))를 제공하도록 구성된다. 프로세서 또는 제어기는 메모리 디바이스(14)와 관련하여 하나 이상의 양방향 데이터 버스(예를 들어, 데이터 버스(18))를 통해 다양한 신호(38)를 제공하여, 메모리 디바이스(14)와 관련하여 기록 또는 판독될 데이터의 송신 및 수신을 용이하게 할 수 있다.
알다시피, 명령 인터페이스(34)는 예를 들어 신호(38)의 적절한 취급을 보장하기 위해 클럭 입력 회로(40) 및 명령 어드레스 입력 회로(42)와 같은 다수의 회로를 포함할 수 있다. 명령 인터페이스(34)는 외부 디바이스로부터 하나 이상의 클럭 신호를 수신할 수 있다. 일반적으로, DDR(double data rate) 메모리는 본 명세서에서 실제 클럭 신호(Clk_t) 및 상보 클럭 신호(Clk_c)로 지칭되는 차동 쌍의 시스템 클럭 신호를 이용한다. DDR에 대한 포지티브 클럭 에지는 상승 실제 클럭 신호(Clk_t)가 하강 상보 클럭 신호(Clk_c)를 교차하는 지점을 말하고, 네거티브 클럭 에지는 하강 실제 클럭 신호(Clk_t)와 상승 상보 클럭 신호(Clk_c)의 전이를 나타낸다. 명령(예를 들어, 판독 명령, 기록 명령 등)는 일반적으로 클럭 신호의 포지티브 에지에 입력되고, 데이터는 포지티브 및 네거티브 클럭 에지 모두에서 송신 또는 수신된다.
클럭 입력 회로(40)는 실제 클럭 신호(Clk_t) 및 상보 클럭 신호(Clk_c)를 수신하고, 내부 클럭 신호(CLK)를 생성한다. 내부 클럭 신호(CLK)는 지연 고정 루프(DLL) 회로와 같은 내부 클럭 생성기(44)에 공급된다. 내부 클럭 생성기(44)는 수신된 내부 클럭 신호(CLK)에 기초하여 위상 제어된 내부 클럭 신호(LCLK)를 생성한다. 위상 제어된 내부 클럭 신호(LCLK)는 예를 들어 I/O 인터페이스(36)에 공급되고, 판독된 데이터의 출력 타이밍을 결정하기 위한 타이밍 신호로서 사용된다.
내부 클럭 신호(CLK)는 또한 메모리 디바이스(14) 내의 다양한 다른 구성요소에 제공될 수 있고, 다양한 추가의 내부 클럭 신호를 생성하는데 사용될 수 있다. 예를 들어, 내부 클럭 신호(CLK)는 명령 디코더(26)에 제공될 수 있다. 명령 디코더(26)는 명령 버스(50)로부터 명령 신호를 수신하고 명령 신호를 디코딩하여, 다양한 내부 명령을 제공할 수 있다. 예를 들어, 명령 디코더(26)는 위상 제어된 내부 클럭 신호(LCLK)의 생성을 조정하기 위해 버스(48)를 통해 내부 클럭 생성기(44)에 명령 신호를 제공할 수 있다. 위상 제어된 내부 클럭 신호(LCLK)는 예를 들어 I/O 인터페이스(36)를 통해 데이터를 클럭하는데 사용될 수 있다.
또한, 명령 디코더(26)는 판독 명령, 기록 명령, 활성화 명령, 모드-레지스터 세트 명령, 가령, Fast Zero 엔트리 및 DPT 명령, 등과 같은 명령을 디코딩할 수 있고, 버스 경로(52)를 통해 이러한 명령에 대응하는 특정 메모리 뱅크(32)에 대한 액세스를 제공할 수 있다. 이해될 바와 같이, 메모리 디바이스(14)는 메모리 뱅크(32)에 대한 액세스를 용이하게 하기 위해 행 디코더 및 열 디코더와 같은 다양한 다른 디코더를 포함할 수 있다. 일 실시예에서, 각각의 메모리 뱅크(32)는 필요한 디코딩(가령, 행 디코더 및 열 디코더) 뿐만 아니라 타이밍 제어 및 데이터 제어와 같은 기타 특징들을 제공하는 뱅크 제어 블록(54)을 포함하여, 메모리 뱅크(32) 내외로의 명령 실행을 용이하게 한다.
도 1과 관련하여 전술한 바와 같이, 그리고, 도 3 및 도 4와 관련하여 후술되는 바와 같이, 명령 디코더(26)는 Fast Zero 엔트리(Fast Zero Entry) 모드 및 DPT 동작 모드의 구현과 같은 특정 기능을 용이하게 하는 하나 이상의 명령 제어기(28)를 포함할 수 있다. 또한, 명령 디코더(26)는, 아래 더 상세히 설명되는 바와 같이, 각각의 메모리 뱅크(32) 내의 개별 저장 위치의 셀의 순차적 액세스를 위한 내부 어드레스를 생성하기 위해 명령 제어기(들)(28)의 제어하에 이용될 수 있는 하나 이상의 카운터(30)를 포함할 수 있다. 바람직하게는, 각각의 독립 모드에 대해 개별 카운터를 사용하는 대신에, Fast Zero 및 DPT 모드와 같은 순차적 액세스 방식을 이용하는 다양한 동작 모드 각각에 대해 동일한 세트의 카운터(30)를 이용함으로써, 추가적인 하드웨어 구성 요소(가령, 카운터)를 포함하는 것을 피할 수 있다.
메모리 디바이스(14)는 프로세서와 같은 외부 디바이스로부터 수신된 명령/어드레스 신호에 기초하여 판독 명령 및 기록 명령과 같은 동작을 실행한다. 일 실시예에서, 명령/어드레스 버스는 명령/어드레스 신호를 수용하기 위한 14 비트 버스 일 수 있다(CA <13: 0>). 명령/어드레스 신호는 클럭 신호(Clk_t 및 Clk_c)를 사용하여 명령 인터페이스(34)에 클럭된다. 명령 인터페이스(34)는 예를 들어 명령 디코더(26)를 통해 메모리 뱅크(32)에 대한 액세스를 제공하기 위한 명령을 수신 및 송신하도록 구성된 명령 어드레스 입력 회로(42)를 포함할 수 있다. 또한, 명령 인터페이스(34)는 칩 선택 신호(CS_n)를 수신할 수 있다. CS_n 신호는 메모리 디바이스(14)가 들어오는 CA <13:0> 버스에서 명령을 처리할 수 있게 한다. 메모리 디바이스(14) 내의 특정 뱅크(32)로의 액세스는 명령을 사용하여 CA <13:0> 버스 상에서 인코딩된다.
또한, 명령 인터페이스(34)는 다수의 다른 명령 신호를 수신하도록 구성될 수 있다. 예를 들어, 메모리 디바이스(14) 내에서 적절한 임피던스 매칭을 용이하게 하기 위해 명령/어드레스 온 다이 종단(CA_ODT) 신호가 제공될 수 있다. 리셋 명령(RESET_n)은 예를 들어 파워-업 중에, 명령 인터페이스(34), 상태 레지스터, 상태 머신, 등을 리셋하는데 사용될 수 있다. 명령 인터페이스(34)는 예를 들어, 특정 메모리 디바이스(14)에 대한 명령/어드레스 버스 라우팅에 따라, 명령/어드레스 버스 상에서 명령/어드레스 신호(CA <13: 0>)의 상태를 반전시키기 위해 제공될 수 있는 명령/어드레스 반전(CAI) 신호를 또한 수신할 수 있다. 미러 기능을 용이하게 하기 위해 미러(MIR) 신호가 또한 제공될 수 있다. MIR 신호는 특정 애플리케이션에서 다수의 메모리 디바이스의 구성에 기초하여, 신호가 메모리 디바이스(14)로 신호의 특정 라우팅을 가능하게 하기 위해 교환될 수 있도록 신호를 다중화하는데 사용될 수 있다. 테스트 인에이블(TEN) 신호와 같은 메모리 디바이스(14)의 테스트를 용이하게 하는 다양한 신호가 또한 제공될 수 있다. 예를 들어, TEN 신호는 메모리 디바이스(14)를 연결 테스트를 위한 테스트 모드로 배치하는데 사용될 수 있다.
명령 인터페이스(34)는 또한 검출될 수 있는 특정 에러에 대해 경보 신호(ALERT_n)를 시스템 프로세서 또는 제어기에 제공하는데 사용될 수 있다. 예를 들어, CRC(Cyclic Redundancy Check) 오류가 검출되면, 경보 신호(ALERT_n)가 메모리 디바이스(14)로부터 전송될 수 있다. 다른 경보 신호가 생성될 수도 있다. 또한, 메모리 디바이스(14)로부터 경보 신호(ALERT_n)를 전송하기 위한 버스 및 핀은 전술한 바와 같이 TEN 신호를 사용하여 실행된 연결성 테스트 모드와 같은 특정 동작 동안 입력 핀으로서 사용될 수 있다.
데이터는 I/O 인터페이스(36)를 통해 데이터 신호(56)를 전송 및 수신함으로써, 위에서 논의된 명령 및 클럭 신호를 이용하여 메모리 디바이스(14) 내외로 송수신될 수 있다. 보다 구체적으로, 데이터는 복수의 양방향 데이터 버스를 포함하는 데이터 경로(52)를 통해 메모리 뱅크(32)로부터 전송되거나 불러들여질 수 있다. 일반적으로 DQ 신호로 지칭되는 데이터 I/O 신호는 일반적으로 하나 이상의 양방향 데이터 버스에서 송신 및 수신된다. DDR5 SDRAM 메모리 디바이스와 같은 특정 메모리 디바이스의 경우 I/O 신호는 상위 및 하위 바이트로 나뉘어질 수 있다. 예를 들어, x16 메모리 디바이스의 경우, I/O 신호는 예를 들어, 데이터 신호의 상위 및 하위 바이트에 대응하는 상위 및 하위 I/O 신호(가령, DQ <15: 8> 및 DQ <7: 0>)로 분할될 수 있다.
메모리 디바이스(14) 내에서 더 높은 데이터 레이트를 허용하기 위해, DDR 메모리 디바이스와 같은 특정 메모리 디바이스는 일반적으로 DQS 신호로 지칭되는 데이터 스트로브 신호를 이용할 수 있다. DQS 신호는 데이터를 전송하는 외부 프로세서 또는 제어기에 의해(예를 들어, 쓰기 명령의 경우) 또는 메모리 디바이스(14)에 의해(예를 들어, 판독 명령의 경우) 구동된다. 판독 명령의 경우, DQS 신호는 기결정된 패턴을 갖는 효과적으로 추가적인 데이터 출력(DQ) 신호이다. 기록 명령의 경우, DQS 신호는 대응하는 입력 데이터를 캡처하기 위해 클럭 신호로 사용된다. 클럭 신호(Clk_t 및 Clk_c)와 마찬가지로, 데이터 스트로브(DQS) 신호는 데이터 스트로브 신호의 차동 쌍(DQS_t 및 DQS_c)으로서 제공되어, 판독 및 기록 동안 차동 쌍 시그널링을 제공할 수 있다. DDR5 SDRAM 메모리 디바이스와 같은 특정 메모리 디바이스의 경우, DQS 신호의 차동 쌍은 예를 들어, 메모리 디바이스(14) 내외로 전송되는 상위 및 하위 바이트의 데이터에 해당하는 상위 및 하위 데이터 스트로브 신호(예: UDQS_t 및 UDQS_c; LDQS_t 및 LDQS_c)로 나뉘어질 수 있다.
임피던스(ZQ) 캘리브레이션 신호는 또한 IO 인터페이스(36)를 통해 메모리 디바이스(14)에 제공될 수 있다. ZQ 캘리브레이션 신호는 기준 핀에 제공될 수 있고, 프로세스의 변화 간에 메모리 디바이스(14)의 풀-업 및 풀-다운 저항기, 전압 및 온도(PVT) 값을 조정함으로써 출력 드라이버 및 ODT 값을 조정하는데 사용될 수 있다. PVT 특성이 ZQ 저항기 값에 영향을 줄 수 있으므로, ZQ 교정 신호는 ZQ 기준 핀에 제공되어, 입력 임피던스를 알려진 값으로 교정하기 위해 저항을 조정하는 데 사용된다. 알 수 있는 바와 같이, 정밀 저항기는 일반적으로 메모리 디바이스(14)상의 ZQ 핀과 메모리 디바이스(14) 외부의 GND/VSS 사이에 연결된다. 이 저항기는 IO 핀의 내부 ODT 및 구동 강도를 조정하기 위한 기준으로서 작용한다.
또한, 루프백 신호(LOOPBACK)는 IO 인터페이스(36)를 통해 메모리 디바이스(14)에 제공될 수 있다. 루프백 신호는 테스트 또는 디버깅 단계 동안, 신호가 동일 핀을 따라 메모리 디바이스(14)를 통해 루프백되는 모드로 메모리 디바이스(14)를 설정하는데 사용될 수 있다. 예를 들어, 루프백 신호는 메모리 디바이스(14)의 데이터 출력(DQ)을 테스트하도록 메모리 디바이스(14)를 설정하는데 사용될 수 있다. 루프백은 데이터 및 스트로브 모두를 포함할 수 있고, 또는 단지 데이터 핀만을 포함하는 것도 가능하다. 이것은 일반적으로 IO 인터페이스(36)에서 메모리 디바이스(14)에 의해 캡처된 데이터를 모니터링하기 위해 사용되도록 구성된다.
알 수 있는 바와 같이, (외부 VDD 및 VSS 신호를 수신하기 위한) 전력 공급 회로, (프로그램 가능한 동작 및 구성의 다양한 모드를 정의하기 위한) 모드 레지스터, (기록/판독 동안 신호를 증폭시키기 위한) 판독/기록 증폭기, (메모리 디바이스(14)의 온도를 감지하기 위한) 온도 센서, 등과 같은 다양한 다른 구성요소들이 메모리 시스템(10)에 또한 포함될 수 있다. 따라서, 도 2의 블록도는 후속하는 상세한 설명을 돕기 위해 메모리 디바이스(14)의 특정 기능적 특징을 강조하기 위해서만 제공된다.
이제 도 3을 참조하면 명령 디코더(26)의 일부가 도시된다. 전술한 바와 같이, 특정 동작 모드에서, 메모리 어레이(22)의 개별 메모리 셀 각각은 순차적으로 액세스될 수 있다. 예를 들어, Fast Zero(Fast Zero) 모드 및 데이터 패턴 테스트(Data Pattern Test) 모드와 같은 특정 동작 모드는 메모리 어레이(22)의 개별 셀에 대한 순차적 액세스를 용이하게 하고, 카운터(30)에 의해 내부 메모리 어드레스의 생성을 조율할 수 있다. 이러한 기능을 용이하게 하기 위해, 명령 디코더(26)는 특정 모드 엔트리 명령(예를 들어, Fast Zero 엔트리 명령 또는 DPT 명령)이 수신될 때 어드레스 시퀀싱을 제어하기 위한 하나 이상의 개별 제어기(60 및 62)를 포함하는 명령 제어기(28)를 포함한다.
도시된 실시예에서, 명령 제어기(28)는 Fast Zero 명령을 수신하도록 구성된 Fast Zero 상태 제어기(62)를 포함한다. Fast Zero 명령은 예를 들어 장치 파워-업 및 초기화 시퀀스의 일부로서 외부 제어기(12)의 프로세서(16) 중 하나에 의해 주장될 수 있다. Fast Zero 상태 제어기(62)는 메모리 어레이(22)의 각각의 메모리 셀에 로직 0을 기록하도록 구성된다. 아래에서 보다 상세히 논의되는 바와 같이, Fast Zero 동작 모드는 로직 0을 각 메모리 위치에 기록하는데 이용되며, 유사한 모드 레지스터 명령은 다른 알려진 값을 각각의 메모리 위치(예를 들어, 모든 로직 1, 또는 특정되고 알려진 패턴)에 기록하는데 또한 사용될 수 있다. Fast Zero 모드 제어기(62)에 의해 Fast Zero 명령이 수신되면, Fast Zero 상태 제어기(62)는 전체 메모리 어레이(22)를 순환하면서 순차적으로 각 메모리 셀에 0을 기록한다. 각각의 메모리 셀에 순차적으로 기록하기 위해, 하나 이상의 카운터(30)는 카운터(30)를 순차적으로 증분시킴으로써 내부 메모리 어드레스를 생성하는데 사용될 수 있다. 일 실시예에 따르면, 카운터(30)는 뱅크 그룹 카운터(64), 뱅크 어드레스 카운터(66), 행 어드레스 카운터(68) 및 열 어드레스 카운터(70)를 포함할 수 있다.
본 실시예에 따르면, DPT 명령의 수신 및 제어를 용이하게 하기 위해 DPT 상태 제어기(60)가 제공될 수도 있다. DPT 명령은 데이터 패턴 테스트를 수행하기 위해 메모리 디바이스(14)를 적절한 상태로 둘 수 있다. DPT 상태 제어기(60)를 사용하여, 메모리 디바이스(14)는 메모리 어레이(22)의 메모리 셀의 전부 또는 일부에 특정 데이터 패턴을 신속하게 기록할 수 있다. Fast Zero 상태 제어기(62)와 같이, DPT 상태 제어기(60)는 카운터(30)를 이용하여 내부 메모리 어드레스의 생성을 용이하게 하여, 메모리 어레이의 각각의 개별 메모리 셀에 순차적으로 액세스할 수 있다.
메모리 디바이스(14)의 메모리 어레이(22)에 특정 데이터 패턴을 신속하게 기록하는 것은 메모리 디바이스(14)의 생산 및 제조 동안 및/또는 품질 관리에 특히 유리할 수 있다. 데이터 패턴 테스트는 메모리 디바이스(14)의 성능에 영향을 줄 수 있는 누설, 단락, 읽기/쓰기 오류 또는 기타 문제를 확인하기 위해 단독으로 또는 다른 테스트와 함께 사용될 수 있다. 이러한 문제 및 기타 문제를 정확하게 테스트하기 위해, 메모리 디바이스(14)의 메모리 어레이(22)는 알려진 데이터 패턴을 메모리 셀의 일부 또는 전부에 기록함으로써 스트레스받을 수 있다. Fast Zero 모드에서와 같이 모든 0 대신에 특정 패턴을 기록하는 것(즉: 0이 아닌 패턴)은 메모리 디바이스(14)의 상태에 대해 더 많은 결과를 얻을 수 있다. 예를 들어, 모든 0 또는 1이 메모리 디바이스(14)에 기록된 경우, 특정 읽기/쓰기 오류를 찾는 것이 직관적일 수 있다. 그러나 0을 모두 쓰면 인접한 셀이 이미 동일한 값을 가지므로 누출 및 단락에 대한 정확한 정보를 제공하지 못할 수 있다. 이를 염두에 두반이러한 오류 및 기타 오류를 노출하는 데 1과 0의 뚜렷한 패턴이 더 적합할 수 있다. 그러나, 전통적으로, 데이터 패턴은 전형적으로 I/O 인터페이스(36) 상의 수신 데이터로부터 셀 단위로 정규 데이터로서 기록될 것이다. 따라서, 전체 메모리 어레이(22)에 걸쳐 데이터 패턴을 기록하는 것은 특히, 대용량 메모리 디바이스(14)의 경우에, 시간 소모적일 수 있다. 따라서, 알려진 데이터 패턴을 빠르게 기록할 수 있으면 전체 테스트 시간이 단축되어 생산량이 증가할 수 있다. 이와 같이, 데이터 패턴 테스트는 카운터(30)를 사용하여 내부적으로 데이터 패턴이 반복되어 각 셀에 기록될 수 있고, 따라서, 각각의 기록에 대해 I/O 인터페이스(36) 및/또는 데이터 경로(52) 상에서 수신 데이터를 이용하지 않게 된다.
이해되는 바와 같이, 제조 동안 유리하지만, 생산 후에 데이터 패턴 테스트 모드에 또한 진입할 수 있다. 예를 들어, 메모리 디바이스(14)의 수명 동안 주기적 무결성 검사는 DPT 모드를 이용하여 수행될 수 있다. 이러한 검사는 메모리 디바이스(14) 및/또는 제어기(12)의 초기화 또는 파워-입 시에, 또는, 메모리 디바이스(14)가 유휴 상태(idle) 일 때와 같은 임의의 다른 적절한 시간에, 수행될 수 있다. DPT 모드의 구현은 제어기(12)에 의해 초기화될 수 있고, 스케줄링되거나 사용자에 의해 개시될 수 있다. 생산 및 테스트 이외의 시나리오가 또한 존재할 수 있고, 특히 효율적 프로그래밍, 읽기 및/또는 쓰기가 필요한 경우, 알려진 패턴을 빠르게 기록하는 것이 가치가 있을 수 있다.
전술한 바와 같이, DPT 상태 제어기(60)는 특정 데이터 패턴을 메모리 어레이(22)의 메모리 셀에 기록하는데 이용될 수 있다. 예를 들어, "바둑판" 패턴은 행에서 1과 0을 번갈아 교대로 갖고, 인접 행은 역수를 갖도록 구성될 수 있다. 다. 다른 패턴은 스트라이프(즉, 1 및 0의 행 또는 열이 번갈아감), 워킹 4 번 또는 8 번(즉, "0001" 반복 또는 "00000001" 반복), 또는 임의의 다른 패턴 또는 반복 시퀀스의 형태를 취할 수 있다. 대안으로, 단일 비-반복 패턴이 반복 세그먼트 대신에 메모리 어레이(22)에 기록될 수 있다. 예를 들어, 각 셀 값은 셀의 열 및 행 어드레스를 기반으로 할 수 있다. 패턴은 한 번에 여러 행에 기록될 수도 있다. 예를 들어, 특정 패턴은 메모리 어레이(22) 전체에 걸쳐 반복될 4 개의 별개의 행을 포함할 수 있다. 이 경우에, 동일한 패턴이 각각의 행 0, 4, 8, 12 등에 기록될 것이다. 마찬가지로, 동일한 패턴이 각 행 1, 5, 9, 13 등에 기록된다. 네 번째 행마다 동일한 패턴을 수신해야 하므로, 기록 동작시 여러 행을 활성화하여 여러 행을 한 번에 쓸 수 있다. 일부 실시예들에서, 동일한 패턴을 수신하기 위한 모든 행들이 한번에 기록될 수 있다. 다른 실시예에서, 4 개의 행이 한번에 기록될 수 있다. 알 수 있는 바와 같이, 임의의 개수의 유사한 행들이 한번에 기록될 수 있고, 따라서 완료 시간이 더 단축된다. 또한 이해되는 바와 같이, 패턴은 행이 아닌 열 단위로 기록될 수 있다. 예를 들어, 단일 행을 선택하고 한 번에 여러 열을 기록할 수 있다.
일부 실시예에서, 패턴을 다른 행으로 반복하기 전에 하나 이상의 초기 행이 기록될 수 있다. 이 초기 행(들)은 패턴을 먼저 수신하여 패턴을 정의하고 내재화시킨다. 기록될 패턴에 여러 개의 다른 행이 있는 경우 여러 개의 초기 행이 사용될 수 있다. 예를 들어, 4 개의 행 패턴은 4 개의 초기 행을 가질 수 있는 반면, 스트라이프 또는 바둑판 패턴은 2 개의 초기 행만 가질 수 있다. 이러한 초기 행들은 각각의 기록에 대해, I/O 인터페이스(36) 및/또는 데이터 경로(52)를 통해 패턴을 수신하는 대신, 나머지 메모리 어레이(22)에 기록하기 위해 이용될 수 있어서, 이러한 버스들의 혼잡 및 완료 시간을 더 감소시킨다.
일 실시예에서, Fast Zero 모드 및 DPT 모드 각각은 특정 동작 모드에 대해, 각각의 메모리 셀에 대한 순차적 액세스를 용이하게 하는 내부 메모리 어드레스를 생성하기 위해 동일한 세트의 카운터(30)를 이용한다. 메모리 어레이(22)의 각 셀에 순차적으로 액세스하기 위한 내부 메모리 어드레스의 생성을 제공하는 다수의 동작 모드에 대해 동일한 공유 카운터(30)를 이용함으로써, 메모리 디바이스 상의 하드웨어 구성 요소 및 귀중한 영역이 보존될 수 있다. 알 수 있는 바와 같이, 데이터 패턴 테스트 모드는 또한 Fast Zero 모드로부터 별도의 카운터(30)를 이용할 수 있고, 또는, Fast Zero 모드없이 메모리 디바이스(14)상에서 구현될 수 있다.
본 실시예에서, 순차적 액세스를 위한 셀들의 다양한 그룹화를 용이하게 하기 위해 4 개의 카운터가 제공된다. 구체적으로, 뱅크 그룹 카운터(64)는 메모리 어레이(22)의 순차적 액세스 동안 하나의 뱅크 그룹에서 다른 뱅크 그룹으로 스위칭하기 위해 제공된다. 일 실시예에서, 메모리 어레이(22)는 4 개의 뱅크 그룹을 포함할 수 있고, 뱅크 그룹 카운터(64)는 2-비트 카운터이다. 뱅크 어드레스 카운터(66)는 또한 메모리 어레이(22)의 순차적 액세스 동안 하나의 뱅크에서 다른 뱅크로 스위칭하기 위해 제공된다. 일 실시예에서, 메모리 어레이(22)는 2 개 또는 4 개의 뱅크를 포함할 수 있고 뱅크 어드레스 카운터(66)는 1 비트 또는 2 비트 카운터이다. 행 어드레스 카운터(68)는 또한 메모리 어레이(22)의 순차적 액세스 동안 하나의 행에서 다른 행으로 스위칭하기 위해 제공된다. 일 실시예에서, 메모리 어레이(22)는 65,536 개의 행을 포함할 수 있고, 행 어드레스 카운터(68)는 16-비트 카운터이다. 마지막으로, 도시된 실시예에서, 메모리 어레이(22)의 순차적 액세스 동안 하나의 열에서 다른 열로 스위칭하기 위해 열 어드레스 카운터(70)가 또한 제공된다. 일 실시예에서, 메모리 어레이(22)는 128 개의 열을 포함할 수 있고, 행 어드레스 카운터(70)는 7 비트 카운터이다.
공유 카운터(30)에 더하여, DPT 모드 및 Fast Zero 모드는 Fast Zero 상태 제어기(62)의 사용을 추가로 공유할 수 있다. 상술한 바와 같이, Fast Zero 상태 제어기(62)는 0을 메모리 어레이에 기록하는 구현을 감독하며, 카운터(30)를 이용한다. 일 실시예에서, DPT 상태 제어기(60)는 패턴을 메모리 어레이(22)에 기록하는 것을 용이하게 하기 위해 Fast Zero 상태 제어기(62)의 특정 양태를 무시한다. 예를 들어, 행을 활성화할 때, DPT 상태 제어기(60)는 모든 행을 순차적으로 활성화하는 대신 매 두번째 또는 매 네 번째 행의 활성화(패턴에 따라)를 선택할 수 있다. 이와 같이, Fast Zero 명령을 활성화하는 것은 DPT 모드 프로세스의 일부일 수 있다. 그러나, DPT 상태 제어기(60)는 또한 Fast Zero 상태 제어기(62)가 0을 기록하는 것을 막고 대신에 초기 행에 패턴을 기록할 수 있다. 이를 달성하기 위해, DPT 상태 제어기(60)는 메모리 셀을 공급하는 데이터 라인의 제어를 사용할 수 있다. 이 제어는 데이터 잠금 형태로 구현될 수 있다. 데이터 잠금은 데이터 라인을 강제로 중단시켜, 0을 기록하기 위한 Fast Zero 명령과 같은 초과 명령이 작용하지 못하게 된다. 추가의 공유 리소스의 이러한 방식으로, 메모리 디바이스의 귀중한 공간 및 비용이 보존될 수 있다.
현재 설명된 실시예는 메모리 디바이스(14)가 Fast Zero 동작 모드 또는 DPT 동작 모드에 있을 때 공유되는 카운터(30)를 포함하지만, 카운터(30)는 다른 동작 모드에서도 공유될 수 있다. 예를 들어, 다른 테스트 또는 설정 모드가 전체 메모리 어레이(22) 또는 메모리 어레이의 많은 부분(예를 들어, 전체 메모리 뱅크 또는 뱅크 그룹)의 순차적 액세스를 이용하는 경우, 카운터(30)는 이들 추가 동작 모드에 대해서도 공유될 수 있다. 또한, 메모리 디바이스(14)의 특정 실시예에서, 카운터 블록(30)에서 도시된 모든 카운터가 이용되지는 않을 수 있다. 예를 들어, 특정 메모리 디바이스(14)는 하나의 뱅크 그룹만을 사용할 수 있다. 이러한 디바이스에서, 뱅크 그룹 카운터(64)가 이용되지 않거나 메모리 디바이스(14)로부터 완전히 생략될 수 있다. 또한, 메모리 디바이스의 특정 실시예에서, 다른 그룹의 메모리 셀이 제공되는 경우 추가 카운터(30)가 사용될 수 있다.
이제 도 4를 참조하면, 데이터 패턴 테스트 모드 시퀀스의 구현의 예를 나타내는 흐름도(80)가 제공된다. 전술한 바와 같이, 데이터 패턴 테스트 모드는 메모리 디바이스(14)의 초기화 또는 파워-업 동안 또는 임의의 유휴 기간에 진입할 수 있다. DPT 명령이 DPT 상태 제어기(60)에 의해 수신되기 전에, 메모리 디바이스(14)는 시스템 유휴 상태(82)에 있을 수 있다. DPT 명령을 수신하면, DPT 상태 제어기(60)는 초기 행 활성화 상태(84)에 의해 표시되는 바와 같이, 초기 행(예를 들어, 행 0)에 대한 활성화 명령을 발행한다. 활성화되면, 초기 행은 패턴 기록 상태(86)에 의해 표시된 바와 같이 I/O 인터페이스(36) 및 데이터 경로(52)를 통해 선택된 패턴을 수신할 수 있다. 알다시피, 패턴은 또한 메모리 디바이스(14)에 본질적으로 저장되거나 제어기(12)와 같이, 임의의 적절한 방식으로 수신될 수 있다. 또한, 데이터가 초기 행을 비활성화하기 위해 기록되면 프리-차지 상태가 또한 발생할 수 있다.
테스트 활성화 상태(88)는 메모리 어레이(22)에서 초기 행과 동일한 패턴을 수신할 다른 행의 활성화를 표시한다. 여러 개의 다른 행을 동시에 활성화하여, 한 번에 여러 개의 행에 기록할 수 있다. 그런 다음 활성화된 행의 열은 열에 기록 상태(90)로 표시된대로 초기 행의 열과 일치하도록 기록될 수 있다. 열이 기록된 후 카운터(30)는 활성화 행에서 다음 순차 메모리 어드레스를 생성하는 데 사용되고, 열 업데이트 상태(92)에 의해 표시되는 바와 같이, 기록된 열을 비활성화시키고 다음 열을 활성화시킴으로써 다음 열로 동작을 이동시킨다. 프로세스가 행의 끝에 도달하지 않은 경우 상태는 열에 기록 상태(90)로 되돌아와서, 행이 종료될 때까지 반복한다. 유사하게, 행이 완료될 때, 카운터는 행 업데이트 상태(94)에 의해 지시된 바와 같이, 기록된 행을 비활성화하고 기록될 하나 이상의 추가의 행을 활성화할 수 있다. 추가 행이 또 기록되어야 한다면, 상태는 열에 기록 상태(90)로 되돌아가서, 전체 메모리 어레이(22) 또는 그 중 관심 부분(들)이 완료될 때까지 반복한다.
모든 행이 한번에 기록되거나 초기 행 패턴을 수신하는 모든 행이 기록된 경우, 프로세스는 패턴 레지스터 업데이트 상태(96)에 진입할 수 있다. 이 상태 동안, DPT 상태 제어기(60)는 어느 패턴/초기 행이 기록되었는지를 모니터링하고, 필요한 경우 다음 패턴으로 진행된다. 예를 들어, 4 행 패턴에서, 0 행은 4 행 패턴의 제 1 행을 수신하는 초기 행일 수 있다. (행 0으로 시작하는) 매 4 번째 행이 기록되면, DPT 상태 제어기(60)는 4 행 패턴에서 다음 행으로 진행하도록 업데이트될 수 있다. 이와 같이, 행 1은 다음의 초기 행일 수 있고, 따라서 이후로 매 4 번째 행이 행 1을 반복하도록 기록될 수 있다. 모든 초기 행이 기록되지 않았고, 따라서 모든 메모리 어레이(22)가 패턴에 기록된 것은 아닌 경우에, 패턴 레지스터 업데이트 상태(96)는 프로세스를 초기 행 활성화 상태(84)로 복귀시키고, 메모리 어레이(22)가 패턴으로 완료될 때까지 반복할 수 있다. 전체 메모리 어레이(22) 또는 그 중 관심 부분이 패턴으로 기록되면, 프로세스는 추가 사용을 위해 유휴 상태로 복귀할 수 있다.
이해되는 바와 같이, 흐름도(80)가 주어진 순서로 도시되어 있지만, 특정 실시예에서, 상태는 재정렬, 변경, 삭제 및/또는 동시 발생할 수 있다. 예를 들어, 4 행 패턴은 첫 번째 초기 행 대신 첫 번째 초기 행 활성화 상태(84) 동안 기록된 4 개의 초기 행을 가질 수 있다. 다른 실시예에서, 전체 패턴이 반복적으로 기록될 수 있다. 예를 들어, 4 행 패턴을 4 개의 초기 행에 기록한 후에, 패턴은 4 내지 7 행이 기록되도록 반복될 수 있으며, 따라서 임의의 추가 행을 기록하기 전에 패턴을 두 번째로 완성할 수 있다. 또한, 프리 차지 상태, 판독 상태, 비교 상태 또는 다른 테스트 또는 애플리케이션을 언급하는 상태와 같은 추가 상태들이 또한 발생할 수 있다.
DPT 동작 모드 동안 모든 메모리 셀 또는 그 일부가(예를 들어, 패턴의 일부로서) 기록되어야 하고, 내부 카운터(30)는 순서대로 메모리 셀을 거쳐갈 내부 어드레스를 생성하도록 제어되기 때문에, DPT 동작 모드 동안 새로운 DPT 명령이 생성될 필요는 없다. 즉, 일단 초기 DPT 명령이 전송되면, DPT 상태 제어기(60)는 다른 DPT 명령을 생성하지 않고도 상태도(80)에 표시된 단계를 반복할 수 있다. 따라서, 초기 행 상태 활성화(84)는 초기 명령이 전송되면 DPT 명령의 주장을 반드시 참조할 필요는 없다.
흐름도(80)에 의해 도시된 실시예에서, 프로세스는 메모리 어레이(22)의 각 행에 기록된 패턴까지 반복된다. 따라서, 도시된 흐름도(80)는 행 어드레스 카운터(68) 및 열 어드레스 카운터(70)만을 이용하는 프로세스를 나타낸다. 즉, 각 뱅크는 활성화되어 병렬로 기록될 수 있으므로, 뱅크 어드레스 카운터(66)가 증분될 필요가 없다. 대안적인 실시예에서, 각 뱅크는 순차적으로 기록될 수 있어서, 프로세스는 뱅크의 각 행의 각 열이 기록되면 뱅크 어드레스 카운터(66)의 증분을 포함한다. 또한, 일 실시예에서, 메모리 어레이는 단일 뱅크 그룹만을 포함할 수 있으므로, 뱅크 그룹 카운터(64)는 이용되지 않을 수 있다. 그러나, 당업자는 다수의 뱅크 그룹을 갖는 메모리 어레이의 경우, 추가 뱅크 내 메모리 셀에 순차적으로 액세스하기 위해 내부 메모리 어드레스를 생성하기 위해 뱅크 그룹 카운터(64)가 유사하게 사용될 수 있음을 이해할 것이다.
현재의 기술은 다양한 변형 및 대안적인 형태에 영향을 받을 수 있지만, 특정 실시예가 도면에 예로서 도시되어 있고 여기에서 상세히 설명되었다. 그러나, 현재 기술은 개시된 특정 형태로 제한되도록 의도되지 않는다는 것을 이해해야 한다. 오히려, 본 실시예는 다음의 첨부된 청구 범위에 의해 정의된 바와 같이 본 기술의 사상 및 범위 내에 속하는 모든 수정, 균등물 및 대안을 포함하도록 의도된다.
본 명세서에 제시되고 청구된 기술은 본 기술 분야를 입증할 수 있고 실질적으로 추상적이거나 무형적이거나 순수하게 이론적이지 않은 실용적 성질의 물질적 대상 및 구체적인 예에 참조되고 적용된다. 또한, 본 명세서의 끝에 첨부된 임의의 청구항이 "...[기능]을 [수행]하기 위한 수단" 또는 "...[기능]을 [수행]하기 위한 단계"로 지정된 하나 이상의 요소를 포함하는 경우, 그러한 요소는 35 U.S.C. 112(f) 조항에 따라 해석되어야 한다. 그러나, 다른 방식으로 지정된 구성 요소를 포함하는 청구 범위의 경우, 이러한 구성 요소는 35 U.S.C. 112(f) 조항에 따라 해석되어서는 안된다.
Claims (23)
- 메모리 디바이스에 있어서:
복수의 메모리 셀을 포함하는 메모리 어레이; 및
데이터 패턴 테스트 모드를 개시하고 복수의 메모리 셀 중 적어도 일부에 데이터 패턴을 기록하는 것을 용이하게 하는 하나 이상의 명령을 수신하도록 구성된 하나 이상의 명령 제어기 - 상기 데이터 패턴 테스트 모드는 데이터 패턴을 외부 소스를 통해 한번만 수신하면서 데이터 패턴을 메모리 어레이 내의 복수의 메모리 셀에 기록하도록 구성됨 - 를 포함하는, 메모리 디바이스. - 제 1 항에 있어서, 상기 메모리 디바이스는 상기 데이터 패턴을 상기 메모리 셀에 기록하기 위해 상기 복수의 메모리 셀에 순차적으로 액세스하기 위해 내부 메모리 어드레스를 생성하도록 구성된 하나 이상의 카운터를 포함하는, 메모리 디바이스.
- 제 2 항에 있어서, 상기 하나 이상의 카운터는 열 어드레스 카운터 및 행 어드레스 카운터를 포함하는, 메모리 디바이스.
- 제 3 항에 있어서, 상기 하나 이상의 카운터는 뱅크 어드레스 카운터를 포함하는, 메모리 디바이스.
- 제 1 항에 있어서, 상기 데이터 패턴은 전체 메모리 어레이에 기록되는, 메모리 디바이스.
- 제 1 항에 있어서, 상기 데이터 패턴은 상기 메모리 셀을 가로질러가며 복수 회 반복되는, 메모리 디바이스.
- 제 1 항에 있어서, 상기 하나 이상의 명령 제어기는:
상기 메모리 어레이 내의 복수의 메모리 셀 각각에 로직 0을 기록하기 위해 Fast Zero 모드를 개시하는 Fast Zero 명령을 수신하도록 구성된 Fast Zero 제어기, 및
메모리 어레이 내 복수의 메모리 셀에 데이터 패턴을 기록하도록 데이터 패턴 테스트 모드를 개시하기 위해 데이터 패턴 테스트 명령을 수신하도록 구성된 데이터 패턴 테스트 제어기를 포함하는, 메모리 디바이스. - 제 7 항에 있어서, 상기 Fast Zero 제어기 및 상기 데이터 패턴 테스트 제어기는 데이터 패턴을 메모리 셀에 기록하기 위해 상기 복수의 메모리 셀에 순차적으로 액세스하도록 내부 메모리 어드레스를 생성하도록 구성된 하나 이상의 카운터를 공유하는, 메모리 디바이스.
- 제 7 항에 있어서, 상기 데이터 패턴 테스트 제어기는 데이터 패턴을 메모리 어레이의 복수의 메모리 셀에 기록하도록 상기 Fast Zero 모드를 수정하는, 메모리 디바이스.
- 제 1 항에 있어서, 상기 메모리 디바이스는 더블 데이터 레이트 타입 5 동기식 동적 랜덤 액세스 메모리(DDR5 SDRAM)를 포함하는, 메모리 디바이스.
- 제 1 항에 있어서, 상기 메모리 어레이는 복수의 행 및 복수의 열을 포함하고, 상기 복수의 메모리 셀 각각은 열 어드레스 및 행 어드레스에 의해 식별되는, 메모리 디바이스.
- 제 11 항에 있어서, 상기 데이터 패턴은 상기 복수의 행 중 다수에 한번에 기록되는, 메모리 디바이스.
- 제 1 항에 있어서, 상기 데이터 패턴은 다중-행 패턴을 포함하는, 메모리 디바이스.
- 제 13 항에 있어서, 상기 다중-행 패턴은 바둑판 패턴을 포함하는, 메모리 디바이스.
- 시스템으로서,
제어기, 및
상기 제어기에 통신 가능하게 연결된 메모리 디바이스를 포함하되, 상기 메모리 디바이스는:
복수의 메모리 셀을 포함하는 메모리 어레이;
하나 이상의 명령을 수신하고 복수의 메모리 셀 중 적어도 일부에 제로가 아닌 데이터 패턴을 기록하는 것을 용이하게 하도록 구성된 하나 이상의 명령 제어기 - 상기 데이터 패턴의 반복 세그먼트들이 동시에 기록됨 - 를 포함하는, 시스템. - 제 15 항에 있어서, 상기 메모리 어레이는 복수의 메모리 뱅크를 포함하고, 상기 복수의 메모리 뱅크 각각은 상기 복수의 메모리 셀의 일부를 포함하는, 시스템.
- 제 15 항에 있어서, 상기 제어기는 상기 데이터 패턴을 상기 복수의 메모리 셀에 기록하기 시작하기 위해 상기 하나 이상의 명령을 상기 하나 이상의 명령 제어기로 전송하는, 시스템.
- 제 15 항에 있어서, 상기 제어기는 상기 메모리 어레이에 기록될 데이터 패턴을 상기 메모리 디바이스에 공급하는, 시스템.
- 방법에 있어서,
메모리 디바이스의 명령 제어기에서, 데이터 패턴을 상기 메모리 디바이스의 메모리 어레이에 기록하기 위한 데이터 패턴 테스트 모드를 개시하기 위한 명령을 수신하는 단계;
데이터 패턴을 기록하라는 명령에 응답하여, 메모리 어레이의 복수의 메모리 셀의 액세스를 용이하게 하도록 복수의 카운터 중 적어도 하나를 구현하는 단계 - 복수의 카운터 중 적어도 하나는 데이터 패턴 테스트 모드 및 적어도 하나의 다른 모드에 의해 공유됨; 및
데이터 패턴을 메모리 어레이에 기록하는 단계를 포함하는, 방법. - 제 19 항에 있어서, 상기 메모리 디바이스의 I/O 인터페이스를 통해 상기 데이터 패턴을 수신하는 단계를 포함하는, 방법.
- 제 20 항에 있어서, 상기 데이터 패턴은 상기 메모리 디바이스의 I/O 인터페이스를 통해 한번만 수신되고 상기 데이터 패턴의 기록의 나머지 동안 내부적으로 반복되는, 방법.
- 제 19 항에 있어서, 상기 메모리 어레이의 복수의 메모리 셀들 모두에 걸쳐 상기 데이터 패턴을 반복하는 단계를 포함하는, 방법.
- 제 19 항에 있어서, 상기 데이터 패턴은 다중-행 패턴이고, 상기 데이터 패턴을 상기 메모리 어레이에 기록하는 단계는 상기 다중-행 패턴의 제 2 행을 복수의 메모리 셀에 기록하기 전에 상기 메모리 셀의 다중 행에 다중-행 패턴의 제 1 행을 기록하는 단계를 포함하는, 방법.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/792,473 US10672496B2 (en) | 2017-10-24 | 2017-10-24 | Devices and methods to write background data patterns in memory devices |
US15/792,473 | 2017-10-24 | ||
PCT/US2018/039820 WO2019083575A1 (en) | 2017-10-24 | 2018-06-27 | DEVICES AND METHODS FOR WRITING BACKGROUND DATA REASONS IN MEMORY DEVICES |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200063134A true KR20200063134A (ko) | 2020-06-04 |
KR102589109B1 KR102589109B1 (ko) | 2023-10-16 |
Family
ID=66170124
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020207004671A KR102589109B1 (ko) | 2017-10-24 | 2018-06-27 | 메모리 디바이스에서 백그라운드 데이터 패턴을 기록하는 장치 및 방법 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10672496B2 (ko) |
EP (1) | EP3701531A4 (ko) |
KR (1) | KR102589109B1 (ko) |
CN (1) | CN110998730B (ko) |
WO (1) | WO2019083575A1 (ko) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10990474B1 (en) * | 2020-03-06 | 2021-04-27 | Seagate Technology Llc | Cost-benefit aware read-amplification in RAID scrubbing |
CN117995253A (zh) * | 2022-10-27 | 2024-05-07 | 长鑫存储技术有限公司 | 存储器测试方法、测试电路及存储器 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5490115A (en) * | 1994-07-29 | 1996-02-06 | Cypress Semiconductor Corp. | Method and apparatus for writing to memory cells in a minimum number of cycles during a memory test operation |
US20010022752A1 (en) * | 1997-02-28 | 2001-09-20 | Duesman Kevin G. | Method and apparatus for rapidly testing memory devices |
US20040177296A1 (en) * | 2003-02-14 | 2004-09-09 | Fujitsu Limited | Semiconductor testing circuit, semiconductor storage device, and semiconductor testing method |
US20060053353A1 (en) * | 2004-09-08 | 2006-03-09 | Dong-Kyu Youn | Nonvolatile memory devices with test data buffers and methods for testing same |
US20140085994A1 (en) * | 2012-09-24 | 2014-03-27 | Infineon Technologies Ag | Integrated circuitry, chip, method for testing a memory device, method for manufacturing an integrated circuit and method for manufacturing a chip |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR0152914B1 (ko) * | 1995-04-21 | 1998-12-01 | 문정환 | 반도체 메모리장치 |
JPH11306798A (ja) * | 1998-04-22 | 1999-11-05 | Oki Electric Ind Co Ltd | メモリ装置のテスト容易化回路 |
US6078637A (en) * | 1998-06-29 | 2000-06-20 | Cypress Semiconductor Corp. | Address counter test mode for memory device |
GB2367912B (en) * | 2000-08-08 | 2003-01-08 | Sun Microsystems Inc | Apparatus for testing computer memory |
US7134058B2 (en) | 2001-09-14 | 2006-11-07 | Stmicroelectronics Limited | Memory circuit scan arrangement |
US6611944B2 (en) | 2001-12-28 | 2003-08-26 | Intel Corporation | Calculating interconnect swizzling patterns for capacitive and inductive noise cancellation |
US7243276B2 (en) * | 2003-11-06 | 2007-07-10 | International Business Machines Corporation | Method for performing a burn-in test |
TWI408392B (zh) | 2011-02-18 | 2013-09-11 | Etron Technology Inc | 增加晶片測試效率的裝置及其方法 |
KR102021401B1 (ko) | 2012-08-30 | 2019-11-04 | 에스케이하이닉스 주식회사 | 메모리 장치 |
US9437328B2 (en) * | 2012-11-30 | 2016-09-06 | Silicon Motion Inc. | Apparatus and method for applying at-speed functional test with lower-speed tester |
JP2016139447A (ja) * | 2015-01-29 | 2016-08-04 | エスアイアイ・セミコンダクタ株式会社 | 半導体記憶装置およびデータ書き込み方法 |
US10490239B2 (en) * | 2016-12-27 | 2019-11-26 | Intel Corporation | Programmable data pattern for repeated writes to memory |
-
2017
- 2017-10-24 US US15/792,473 patent/US10672496B2/en active Active
-
2018
- 2018-06-27 CN CN201880053916.XA patent/CN110998730B/zh active Active
- 2018-06-27 EP EP18869605.8A patent/EP3701531A4/en active Pending
- 2018-06-27 KR KR1020207004671A patent/KR102589109B1/ko active IP Right Grant
- 2018-06-27 WO PCT/US2018/039820 patent/WO2019083575A1/en unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5490115A (en) * | 1994-07-29 | 1996-02-06 | Cypress Semiconductor Corp. | Method and apparatus for writing to memory cells in a minimum number of cycles during a memory test operation |
US20010022752A1 (en) * | 1997-02-28 | 2001-09-20 | Duesman Kevin G. | Method and apparatus for rapidly testing memory devices |
US20040177296A1 (en) * | 2003-02-14 | 2004-09-09 | Fujitsu Limited | Semiconductor testing circuit, semiconductor storage device, and semiconductor testing method |
US20060053353A1 (en) * | 2004-09-08 | 2006-03-09 | Dong-Kyu Youn | Nonvolatile memory devices with test data buffers and methods for testing same |
US20140085994A1 (en) * | 2012-09-24 | 2014-03-27 | Infineon Technologies Ag | Integrated circuitry, chip, method for testing a memory device, method for manufacturing an integrated circuit and method for manufacturing a chip |
Also Published As
Publication number | Publication date |
---|---|
EP3701531A4 (en) | 2021-08-04 |
KR102589109B1 (ko) | 2023-10-16 |
US10672496B2 (en) | 2020-06-02 |
CN110998730B (zh) | 2023-10-17 |
CN110998730A (zh) | 2020-04-10 |
WO2019083575A1 (en) | 2019-05-02 |
EP3701531A1 (en) | 2020-09-02 |
US20190122744A1 (en) | 2019-04-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11087820B2 (en) | Systems and methods for plate voltage regulation during memory array access | |
US11132142B2 (en) | Systems and methods for writing zeros to a memory array | |
US10504580B2 (en) | Systems and methods for refreshing a memory bank while accessing another memory bank using a shared address path | |
US10224091B1 (en) | Systems and methods for refreshing a memory bank while accessing another memory bank using a shared address path | |
US10908990B2 (en) | Shared address counters for multiple modes of operation in a memory device | |
CN114974384B (zh) | 高效的io区段中断***和方法 | |
CN110770830B (zh) | 存储器装置中的分布式模式寄存器 | |
US11275650B2 (en) | Systems and methods for performing a write pattern in memory devices | |
KR102589109B1 (ko) | 메모리 디바이스에서 백그라운드 데이터 패턴을 기록하는 장치 및 방법 | |
CN111108560B (zh) | 用于将零写入到存储器阵列的***和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |