KR20210089266A - 제어 정보 오류 보고 - Google Patents

제어 정보 오류 보고 Download PDF

Info

Publication number
KR20210089266A
KR20210089266A KR1020217021271A KR20217021271A KR20210089266A KR 20210089266 A KR20210089266 A KR 20210089266A KR 1020217021271 A KR1020217021271 A KR 1020217021271A KR 20217021271 A KR20217021271 A KR 20217021271A KR 20210089266 A KR20210089266 A KR 20210089266A
Authority
KR
South Korea
Prior art keywords
memory
control information
error
memory device
state
Prior art date
Application number
KR1020217021271A
Other languages
English (en)
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 KR20210089266A publication Critical patent/KR20210089266A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1405Saving, restoring, recovering or retrying at machine instruction level
    • G06F11/141Saving, restoring, recovering or retrying at machine instruction level for bus or memory accesses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3034Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a storage system, e.g. DASD based or network based
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3037Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a memory, e.g. virtual memory, cache
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/022Detection or location of defective auxiliary circuits, e.g. defective refresh counters in I/O circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/82Solving problems relating to consistency
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0409Online test
    • 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/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1045Read-write mode select circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

제어 정보 오류를 보고하기 위한 방법, 시스템, 및 디바이스가 설명된다. 메모리 어레이의 상태는 동작 동안 모니터링될 수 있다. 오류를 검출한 후에(예컨대, 수신된 제어 정보에서), 메모리 디바이스는 제1 상태(예컨대, 잠금 상태)에 진입할 수 있고 오류가 검출되었다는 것, 오류가 검출되기 전의 메모리 어레이의 상태, 및/또는 수신된 제어 정보를 전달하는 제어 신호의 적어도 일부를 호스트 디바이스에 나타낼 수 있다. 호스트 디바이스는 오류의 표시 및/또는 제어 신호의 사본을 수신한 것에 기초하여 오류의 원인을 진단할 수 있다. 오류의 원인을 식별하고/하거나 해결한 후에, 호스트 디바이스는 메모리 디바이스로부터 원래 상태를 수신한 것에 기초하여 (예컨대, 메모리 디바이스를 잠금 해제하고 메모리 어레이를 원래 상태로 되돌리는) 하나 이상의 명령을 송신할 수 있다.

Description

제어 정보 오류 보고
상호 참조
본 특허 출원은 미국 특허 출원 제16/719,896호(발명자: Richter et al., 출원일: 2019년 12월 18일, 발명의 명칭: "REPORTING CONTROL INFORMATION ERRORS"), 및 미국 가특허 출원 제62/781,989호(발명자: Richter et al., 출원일: 2018년 12월 19일, 발명의 명칭: "REPORTING CONTROL INFORMATION ERRORS")에 대한 우선권을 주장하며, 이들 기초 출원의 각각은 이의 양수인에게 양도된다.
다음의 내용은 일반적으로, 메모리 어레이를 동작시키는 것에 관한 것이고 더 구체적으로, 제어 정보 오류를 보고하는 것에 관한 것이다.
메모리 디바이스는 컴퓨터, 무선 통신 디바이스, 카메라, 디지털 디스플레이 등과 같은 다양한 전자 디바이스에서 정보를 저장하기 위해 널리 사용된다. 정보는 메모리 디바이스의 상이한 상태를 프로그래밍함으로써 저장된다. 예를 들면, 이진 디바이스는 논리 "1" 또는 논리 "0"으로 종종 표시된 2개의 상태를 갖는다. 다른 시스템에서, 2개보다 많은 상태가 저장될 수 있다. 저장된 정보에 액세스하기 위해, 디바이스의 구성요소는 메모리 디바이스에서 저장된 상태를 판독하거나, 검출할 수 있다. 정보를 저장하기 위해, 디바이스의 구성요소는 메모리 디바이스에 상태를 기록하거나, 프로그래밍할 수 있다.
자기 하드 디스켓, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 동적 RAM(DRAM), 동기식 동적 RAM(SDRAM), 강유전성 RAM(FeRAM), 자기 RAM(MRAM), 저항성 RAM(RRAM), 플래시 메모리, 상 변화 메모리(PCM) 등을 포함하는 다양한 유형의 메모리 디바이스가 존재한다. 메모리 디바이스는 휘발성이거나 비휘발성일 수 있다. 비휘발성 메모리(예컨대, FeRAM, PCM, RRAM)는 심지어 외부 전력원이 없는 경우에도 장기간 동안 그들의 저장된 논리 상태를 유지할 수 있다. 휘발성 메모리 디바이스(예컨대, DRAM)는 그들이 외부 전력원에 의해 주기적으로 리프레시(refresh)되지 않는 한 시간에 따라 그들의 저장된 상태를 잃을 수 있다.
메모리 디바이스를 동작시키거나 이에 액세스하기 위한 제어 정보는 외부 제어기와 메모리 디바이스 사이에서 전달될 수 있다. 일부 경우에, 메모리 디바이스에서 수신된 제어 정보가 손상된다. 이러한 경우를 관리하기 위해 개선된 기법이 바람직하다.
도 1은 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하는 것을 지원하는 일 예시적인 시스템의 양태를 도시한 도면.
도 2는 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하는 것을 지원하는 일 예시적인 메모리 디바이스의 양태를 도시한 도면.
도 3은 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하는 것을 지원하는 일 예시적인 시스템의 양태를 도시한 도면.
도 4는 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하는 것을 지원하는 일 예시적인 메모리 디바이스의 양태를 도시한 도면.
도 5는 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하기 위한 일 예시적인 타이밍 다이어그램을 도시한 도면.
도 6은 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하는 것을 지원하는 일 예시적인 메모리 디바이스의 양태를 도시한 도면.
도 7은 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하기 위한 일 예시적인 흐름도.
도 8은 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하기 위한 일 예시적인 프로세스 흐름을 도시한 도면.
도 9 및 도 10은 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하는 것을 지원하는 제어기의 양태를 표현하는 블록도.
도 11 및 도 12는 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하기 위한 방법 또는 방법들의 흐름도.
제어 정보(본 명세서에서 제어 시그널링으로서 지칭될 수 있음) 및 데이터(본 명세서에서 제어 시그널링 데이터 시그널링으로서 지칭될 수 있음)를 포함하는 전자 시그널링이 메모리 시스템 내에서 전달될 수 있다. 제어 시그널링에 포함된 제어 정보는 명령, 주소, 또는 오류 검출/정정 정보, 또는 이들의 조합을 포함할 수 있다. 일부 경우에, 오류 - 예컨대, 송신, 수신, 신호 레인, 및/또는 타이밍 오류로 인한 - 가 제어 정보에서 검출될 수 있다.
일부 경우에, 수신된(예컨대, 제어 정보에서) 오류를 검출한 후에, 제어 정보를 수신하는 디바이스(예컨대, 메모리 디바이스)는 제어 정보를 폐기하고 - 제어 정보에서 명령을 실행하는 것을 억제하는 것과 같음 - 제어 정보를 송신한 디바이스(예컨대, 호스트 디바이스)에 수신된 제어 정보에서 오류가 검출되었음을 나타낼 수 있다. 그러나, 메모리 디바이스에서 오류가 발생했다는 표시를 수신하는 것은 다른 정보 중에서, 어떤 유형의 오류가 발생했는지 또는 오류가 발생한 원인을 호스트 디바이스에 나타내지 않을 수 있다. 즉, 메모리 디바이스는 오류를 검출할 수 있지만 오류의 원인 또는 본질을 결정하지 않을 수 있거나, 결정할 수 없다.
호스트 디바이스가 전달된 제어 정보에서 오류의 원인, 본질, 또는 둘 다를 더 양호하게 진단하는 것을 가능하게 하기 위해, 수신 디바이스는 호스트 디바이스에 부가적인 정보(예컨대, 제어 정보에서 검출된 오류의 원인 및 본질에 관한)를 제공할 수 있다. 예를 들면, 수신 디바이스는 손상된 제어 정보를 포함한 수신된 제어 신호의 적어도 일부의 전체 저장된 사본이 아니라면 이의 적어도 일부를 호스트 디바이스로 송신할 수 있다. 그리고, 호스트 디바이스는 그 다음, 수신된 제어 신호의 정보(예컨대, 사본)를 사용하여 오류의 원인을 결정할 수 있다 - 예컨대, 수신된 제어 신호와 송신된 제어 신호를 비교함으로써. 일부 경우에, 호스트 디바이스가 오류의 원인 또는 본질을 진단하는 것을 허용함으로써, 호스트 디바이스는 (예컨대, 변조 방식을 업데이트하거나 손상된 신호 경로를 회피함으로써) 후속 통신에서 오류를 정정하거나 회피하기 위한 조치를 취할 수 있다. 일부 예에서, 명령 레지스터 및 수반되는 로직 구성요소는 불량 제어 신호를 저장하기 위해 메모리 디바이스에 포함될 수 있다.
일부 경우에, 메모리 디바이스는 호스트 디바이스가 오류의 원인을 식별하고/하거나 해결할 때까지 잠금 상태에 진입할 수 있다. 잠금 상태에 진입하는 것은 수신된 명령을 실행하는 것을 억제하는 것 및 메모리 디바이스에서 모든 메모리 뱅크를 폐쇄하는 것을 포함할 수 있다. 잠금 상태에 진입함으로써, 메모리 디바이스는 메모리 디바이스에서 메모리 어레이에 저장된 정보를 보존할 수 있다. 잠금 상태에 진입한 후에, 그러나 메모리 디바이스는 호스트 디바이스와 같은 또 다른 디바이스의 도움 없이 그것의 이전 상태로 되돌아갈 수 없다.
메모리 디바이스의 잠금 상태를 지원하기 위해, 메모리 디바이스는 정상 동작(예컨대, 잠금 동작 아님) 동안 메모리 어레이의 상태를 저장(예컨대, 지속적으로 저장)할 수 있고 수신된 제어 정보에서 오류가 검출되기 전에/검출될 때 저장된 메모리 어레이의 상태를 호스트 디바이스로 송신할 수 있다. 예를 들면, 메모리 디바이스는 메모리 어레이의 각각의 메모리 뱅크에 대한 가장 최근의 데이터, 메모리 뱅크에서 가장 최근에 액세스된 행의 메모리 주소 및 각각의 메모리 뱅크의 상태(예컨대, 메모리 뱅크가 개방되거나 폐쇄되는지의 여부)에 기초하여 저장(예컨대, 지속적으로 저장)할 수 있다. 일부 예에서, 메모리 어레이에 대한 메모리 주소 및 뱅크 상태(집합적으로 "메모리 상태" 또는 "메모리 상태 정보"로 지칭될 수 있음)를 저장하기 위해 레지스터 파일 및 수반되는 로직 구성요소가 메모리 디바이스에 포함될 수 있다.
상기 도입된 본 발명의 특징은 도 1 및 도 2를 참조하여 메모리 시스템의 맥락으로 하기에 더 설명된다. 도 3 내지 도 8을 참조하여 제어 정보 오류를 보고하기 위한 메모리 디바이스, 타이밍 다이어그램, 흐름도, 및 프로세스 흐름의 특정 예가 그 다음 설명된다. 본 발명의 이것 및 다른 특징은 도 9 내지 도 12를 참조하여 설명된 바와 같이 제어 정보 오류를 보고하는 것과 관련되는 장치 다이어그램, 시스템 다이어그램, 및 흐름도에 의해 더 도시되고 이를 참조하여 설명된다.
도 1은 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하는 것을 지원하는 일 예시적인 시스템의 양태를 도시한다. 시스템(100)은 외부 메모리 제어기(105), 메모리 디바이스(110), 및 외부 메모리 제어기(105)와 메모리 디바이스(110)를 결합하는 복수의 채널(115)을 포함할 수 있다. 시스템(100)은 하나 이상의 메모리 디바이스를 포함할 수 있지만, 설명의 용이를 위해, 하나 이상의 메모리 디바이스는 단일 메모리 디바이스(110)로서 설명될 수 있다.
시스템(100)은 컴퓨팅 디바이스, 모바일 컴퓨팅 디바이스, 무선 디바이스, 또는 그래픽 프로세싱 디바이스와 같은 전자 디바이스의 양태를 포함할 수 있다. 시스템(100)은 휴대용 전자 디바이스의 일례일 수 있다. 시스템(100)은 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트폰, 휴대폰, 착용 가능한 디바이스, 인터넷 연결 디바이스 등의 일례일 수 있다. 메모리 디바이스(110)는 시스템(100)의 하나 이상의 다른 구성요소에 대한 데이터를 저장하도록 구성된 시스템의 구성요소일 수 있다. 일부 예에서, 시스템(100)은 기지국 또는 액세스 지점을 사용하여 다른 시스템 또는 디바이스와의 양방향 무선 통신을 위해 구성된다. 일부 예에서, 시스템(100)은 기계 유형 통신(MTC), 기계 대 기계(M2M) 통신, 또는 디바이스 대 디바이스(D2D) 통신을 할 수 있다.
시스템(100)의 적어도 일부는 호스트 디바이스의 예일 수 있다. 이러한 호스트 디바이스는 컴퓨팅 디바이스, 모바일 컴퓨팅 디바이스, 무선 디바이스, 그래픽 프로세싱 디바이스, 그래픽 처리 장치(GPU), 범용 GPU(GPGPU), 중앙 처리 장치(CPU), 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트폰, 휴대폰, 착용가능한 디바이스, 인터넷 연결 디바이스, 일부 다른 고정식 또는 휴대용 전자 디바이스 등과 같은 프로세스를 실행하기 위해 메모리를 사용하는 디바이스의 일례일 수 있다. 일부 경우에, 호스트 디바이스는 외부 메모리 제어기(105)의 기능을 구현하는 하드웨어, 펌웨어, 소프트웨어, 또는 이들의 조합을 언급할 수 있다. 일부 경우에, 외부 메모리 제어기(105)는 호스트 또는 호스트 디바이스로 지칭될 수 있다. 일부 예에서, 시스템(100)은 그래픽 카드일 수 있다. 호스트 디바이스는 호스트 디바이스를 메모리 디바이스와 연결하는 복수의 채널 및 복수의 구동기를 포함할 수 있다.
일부 경우에, 메모리 디바이스(110)는 시스템(100)의 다른 구성요소와 통신하고 시스템(100)에 의해 잠재적으로 사용되거나 참조될 물리적 메모리 주소/공간을 제공하도록 구성되는 독립 디바이스 또는 구성요소일 수 있다. 일부 예에서, 메모리 디바이스(110)는 적어도 하나 또는 복수의 상이한 유형의 시스템(100)과 함께 동작하도록 구성 가능할 수 있다. 시스템(100)의 구성요소와 메모리 디바이스(110) 사이의 시그널링은 신호를 변조하기 위한 변조 방식, 신호를 전달하기 위한 상이한 핀 설계, 시스템(100) 및 메모리 디바이스(110)의 별개의 패키징, 시스템(100)과 메모리 디바이스(110) 사이의 클록 시그널링 및 동기화, 타이밍 규정, 및/또는 다른 인자를 지원하도록 동작 가능할 수 있다.
메모리 디바이스(110)는 시스템(100)의 구성요소에 대한 데이터를 저장하도록 구성될 수 있다. 일부 경우에, 메모리 디바이스(110)는 시스템(100)에 대해 슬레이브형 디바이스의 역할(예컨대, 외부 메모리 제어기(105)를 통해 시스템(100)에 의해 제공된 명령에 응답하고 이를 실행)을 할 수 있다. 이러한 명령은 기록 동작을 위한 기록 명령, 판독 동작을 위한 판독 명령, 리프레시 동작을 위한 리프레시 명령, 또는 다른 명령과 같은, 액세스 동작을 위한 액세스 명령을 포함할 수 있다. 액세스 명령은 일부 경우에, 메모리 디바이스가 하나 이상의 메모리 셀로부터 데이터를 저장하거나 판독하도록 촉진하는 명령일 수 있다. 메모리 디바이스(110)는 데이터 저장을 위해 원하는 또는 명시된 용량을 지원하기 위해 2개 이상의 메모리 다이(160)(예컨대, 메모리 칩)를 포함할 수 있다. 2개 이상의 메모리 다이를 포함하는 메모리 디바이스(110)는 다중 다이 메모리 또는 패키지로 지칭(다중 칩 메모리 또는 패키지로도 지칭)될 수 있다.
시스템(100)은 프로세서(120), 기본 입력/출력 시스템(BIOS) 구성요소(125), 하나 이상의 주변 구성요소(130) 및 입력/출력부(I/O) 제어기(135)를 더 포함할 수 있다. 시스템(100)의 구성요소는 버스(140)를 사용하여 서로 결합되거나 전자 통신할 수 있다.
프로세서(120)는 시스템(100)의 적어도 일부를 제어하도록 구성될 수 있다. 프로세서(120)는 범용 프로세서, 디지털 신호 프로세서(DSP), 주문형 반도체(ASIC), 필드 프로그래밍 가능한 게이트 어레이(FPGA) 또는 다른 프로그래밍 가능한 논리 디바이스, 별개의 게이트 또는 트랜지스터 로직, 별개의 하드웨어 구성요소일 수 있거나, 그것은 이 유형의 구성요소의 조합일 수 있다. 이러한 경우에, 프로세서(120)는 다른 예 중에서, CPU, GPU, GPGPU, 또는 시스템 온 칩(system on a chip: SoC)의 일례일 수 있다.
일부 경우에, 프로세서(120)는 외부 메모리 제어기(105)에 통합되거나 그 일부가 될 수 있다. 일부 경우에, 프로세서(120)는 GPU일 수 있다. 프로세서(120)는 본 명세서에서 설명된 바와 같이 버스 송신 라인(예컨대, 데이터 버스 송신 라인)을 구성하는 양태를 수행할 수 있다. 예를 들면, 프로세서(120)는 데이터 버스를 송신 라인의 2개의 세트: 제어 신호를 전송하는 제1 세트, 및 데이터 신호를 전송하는 제2 세트로 분할할 수 있다.
BIOS 구성요소(125)는 시스템(100)의 다양한 하드웨어 구성요소를 초기화하고 실행할 수 있는 펌웨어로서 동작된 BIOS를 포함하는 소프트웨어 구성요소일 수 있다. BIOS 구성요소(125)는 또한, 프로세서(120)와 시스템(100)의 다양한 구성요소 예컨대, 주변 구성요소(130), I/O 제어기(135) 등 사이의 데이터 흐름을 관리할 수 있다. BIOS 구성요소(125)는 판독 전용 메모리(ROM), 플래시 메모리, 또는 임의의 다른 비휘발성 메모리에 저장된 프로그램 또는 소프트웨어를 포함할 수 있다.
주변 구성요소(들)(130)는 임의의 입력 디바이스 또는 출력 디바이스, 또는 시스템(100)에 또는 이와 통합될 수 있는 이러한 디바이스에 대한 인터페이스일 수 있다. 예는 디스켓 제어기, 사운드 제어기, 그래픽 제어기, 이더넷 제어기, 모뎀, 범용 직렬 버스(USB) 제어기, 직렬 또는 병렬 포트, 또는 주변 구성요소 상호 연결부(PCI) 또는 특수화된 그래픽 포트와 같은 주변 카드 슬롯을 포함할 수 있다. 주변 구성요소(들)(130)는 주변 장치의 당업자에 의해 이해될 바와 같이 다른 구성요소일 수 있다.
I/O 제어기(135)는 프로세서(120)와 주변 구성요소(들)(130), 입력 디바이스(145), 또는 출력 디바이스(150) 사이의 데이터 통신을 관리할 수 있다. I/O 제어기(135)는 시스템(100)에 또는 이와 통합되지 않은 주변 장치를 관리할 수 있다. 일부 경우에, I/O 제어기(135)는 외부 주변 구성요소에 대한 물리적 연결부 또는 포트를 표현할 수 있다.
입력 디바이스(145)는 시스템(100) 또는 그것의 구성요소에 정보, 신호, 또는 데이터를 제공할 수 있는 시스템(100) 외부의 디바이스 또는 신호를 표현할 수 있다. 이것은 다른 디바이스와의 또는 이 사이의 사용자 인터페이스 또는 인터페이스를 포함할 수 있다. 일부 경우에, 입력 디바이스(145)는 하나 이상의 주변 구성요소(130)를 통해 시스템(100)과 인터페이싱하는 주변 장치일 수 있거나 I/O 제어기(135)에 의해 관리될 수 있다.
출력 디바이스(150)는 시스템(100) 또는 그것의 구성요소 중 임의의 것으로부터 출력을 수신하도록 구성된 시스템(100) 외부의 디바이스 또는 신호를 표현할 수 있다. 출력 디바이스(150)의 예는 디스플레이, 오디오 스피커, 인쇄 디바이스, 또는 인쇄 회로 기판의 또 다른 프로세서 등을 포함할 수 있다. 일부 경우에, 출력 디바이스(150)는 하나 이상의 주변 구성요소(130)를 통해 시스템(100)과 인터페이싱하는 주변 장치일 수 있거나 I/O 제어기(135)에 의해 관리될 수 있다.
시스템(100)의 구성요소는 이의 기능을 수행하도록 설계된 범용 또는 특수 목적 회로로 구성될 수 있다. 이것은 본 명세서에 개시된 기능을 수행하도록 구성된 출력 구동기 회로 및 다양한 다른 회로 요소 예를 들면, 전도성 라인, 트랜지스터, 커패시터, 인덕터, 저항기, 증폭기, 또는 다른 능동 또는 수동 요소를 포함할 수 있다.
메모리 디바이스(110)는 디바이스 메모리 제어기(155) 및 하나 이상의 메모리 다이(160)를 포함할 수 있다. 각각의 메모리 다이(160)는 로컬 메모리 제어기(165)(예컨대, 로컬 메모리 제어기(165-a), 로컬 메모리 제어기(165-b) 및/또는 로컬 메모리 제어기(165-N)) 및 메모리 어레이(170)(예컨대, 메모리 어레이(170-a), 메모리 어레이(170-b) 및/또는 메모리 어레이(170-N))를 포함할 수 있다. 메모리 어레이(170)는 메모리 셀의 컬렉션(예컨대, 그리드)일 수 있으며, 각각의 메모리 셀은 적어도 1 비트의 디지털 데이터를 저장하도록 구성된다. 메모리 어레이(170) 및/또는 메모리 셀의 특징은 도 2를 참조하여 더 상세하게 설명된다.
메모리 어레이(170)는 메모리 셀의 2차원(2D) 어레이의 일례일 수 있거나 메모리 셀의 3차원(3D) 어레이의 일례일 수 있다. 예를 들면, 2D 메모리 디바이스는 단일 메모리 다이(160)를 포함할 수 있다. 3D 메모리 디바이스는 2개 이상의 메모리 다이(160)(예컨대, 메모리 다이(160-a), 메모리 다이(160-b), 및/또는 임의의 양의 메모리 다이(160-N))를 포함할 수 있다. 3D 메모리 디바이스에서, 다수의 메모리 다이(160-N)는 서로의 상단에 적층될 수 있다. 일부 경우에, 3D 메모리 디바이스의 메모리 다이(160-N)는 데크(decks), 레벨, 층, 또는 다이로 지칭될 수 있다. 3D 메모리 디바이스는 임의의 양의 적층된 메모리 다이(160-N)(예컨대, 2개의 하이, 3개의 하이, 4개의 하이, 5개의 하이, 6개의 하이, 7개의 하이, 8개의 하이)를 포함할 수 있다. 이것은 단일 2D 메모리 디바이스와 비교하여 기판에 배치될 수 있는 메모리 셀의 양을 증가시킬 수 있으며, 이는 결과적으로 생산 비용을 감소시키거나 메모리 어레이의 성능을 증가시키거나, 둘 다를 수행할 수 있다. 일부 3D 메모리 디바이스에서, 상이한 데크는 일부 데크가 워드 라인, 디지트 라인, 및/또는 플레이트 라인 중 적어도 하나를 공유할 수 있도록 적어도 하나의 공통 액세스 라인을 공유할 수 있다.
디바이스 메모리 제어기(155)는 메모리 디바이스(110)의 동작을 제어하도록 구성된 회로 또는 구성요소를 포함할 수 있다. 이와 같이, 디바이스 메모리 제어기(155)는 메모리 디바이스(110)가 명령을 수행하는 것을 가능하게 하는 하드웨어, 펌웨어, 및 소프트웨어를 포함할 수 있고 메모리 디바이스(110)와 관련된 명령, 데이터, 또는 제어 정보를 수신, 송신, 또는 실행하도록 구성될 수 있다. 디바이스 메모리 제어기(155)는 외부 메모리 제어기(105), 하나 이상의 메모리 다이(160), 또는 프로세서(120)와 통신하도록 구성될 수 있다. 일부 경우에, 메모리 디바이스(110)는 외부 메모리 제어기(105)로부터 데이터 및/또는 제어 신호(예컨대, 명령, 주소, 및/또는 오류 검출 정보)를 수신할 수 있다. 예를 들면, 메모리 디바이스(110)는 메모리 디바이스(110)가 시스템(100)의 구성요소(예컨대, 프로세서(120))를 대신하여 특정 데이터를 저장한다는 것을 나타내는 기록 명령 또는 메모리 디바이스(110)가 메모리 다이(160)에 저장된 특정 데이터를 시스템(100)의 구성요소(예컨대, 프로세서(120))에 제공한다는 것을 나타내는 판독 명령을 수신할 수 있다. 일부 경우에, 디바이스 메모리 제어기(155)는 메모리 다이(160)의 로컬 메모리 제어기(165)와 결부하여 본 명세서에서 설명된 메모리 디바이스(110)의 동작을 제어할 수 있다. 디바이스 메모리 제어기(155) 및/또는 로컬 메모리 제어기(165)에 포함된 구성요소의 예는 외부 메모리 제어기(105)로부터 수신된 신호를 복조하기 위한 수신기, 신호를 변조하고 이를 외부 메모리 제어기(105)로 송신하기 위한 인코더, 로직, 디코더, 증폭기, 필터 등을 포함할 수 있다.
로컬 메모리 제어기(165)(예컨대, 메모리 다이(160)에 로컬임)는 메모리 다이(160)의 동작을 제어하도록 구성될 수 있다. 또한, 로컬 메모리 제어기(165)는 디바이스 메모리 제어기(155)와 통신하도록(예컨대, 데이터 및/또는 명령을 수신하고 송신하도록) 구성될 수 있다. 로컬 메모리 제어기(165)는 본 명세서에서 설명된 바와 같이 메모리 디바이스(110)의 동작을 제어하기 위해 디바이스 메모리 제어기(155)를 지원할 수 있다. 일부 경우에, 메모리 디바이스(110)는 디바이스 메모리 제어기(155)를 포함하지 않으며, 로컬 메모리 제어기(165) 또는 외부 메모리 제어기(105)는 본 명세서에서 설명된 다양한 기능을 수행할 수 있다. 이와 같이, 로컬 메모리 제어기(165)는 디바이스 메모리 제어기(155)와, 다른 로컬 메모리 제어기(165)와, 또는 외부 메모리 제어기(105) 또는 프로세서(120)와 직접적으로 통신하도록 구성될 수 있다.
외부 메모리 제어기(105)는 시스템(100)의 구성요소(예컨대, 프로세서(120))와 메모리 디바이스(110) 사이로의 정보, 데이터, 명령 및/또는 주소의 전달을 가능하게 하도록 구성될 수 있다. 외부 메모리 제어기(105)는 시스템(100)의 구성요소가 메모리 디바이스의 동작의 상세를 알 필요가 없을 수 있도록 시스템(100)의 구성요소와 메모리 디바이스(110) 사이의 연락자(liaison)의 역할을 할 수 있다. 시스템(100)의 구성요소는 외부 메모리 제어기(105)가 만족하는 요청(예컨대, 판독 명령 또는 기록 명령)을 외부 메모리 제어기(105)에 제공할 수 있다. 외부 메모리 제어기(105)는 시스템(100)의 구성요소와 메모리 디바이스(110) 사이에서 교환된 통신을 변환 또는 전환할 수 있다. 일부 경우에, 외부 메모리 제어기(105)는 공통(소스) 시스템 클록 신호를 생성하는 시스템 클록을 포함할 수 있다. 일부 경우에, 외부 메모리 제어기(105)는 공통(소스) 데이터 클록 신호를 생성하는 공통 데이터 클록을 포함할 수 있다.
일부 경우에, 외부 메모리 제어기(105) 또는 시스템(100)의 다른 구성요소, 또는 본 명세서에서 설명된 그것의 기능은 프로세서(120)에 의해 구현될 수 있다. 예를 들면, 외부 메모리 제어기(105)는 프로세서(120) 또는 시스템(100)의 다른 구성요소에 의해 구현된 하드웨어, 펌웨어, 또는 소프트웨어, 또는 이의 일부 조합일 수 있다. 외부 메모리 제어기(105)가 메모리 디바이스(110) 외부에 있는 것으로서 묘사될지라도, 일부 경우에, 외부 메모리 제어기(105), 또는 본 명세서에서 설명된 그것의 기능은 메모리 디바이스(110)에 의해 구현될 수 있다. 예를 들면, 외부 메모리 제어기(105)는 디바이스 메모리 제어기(155) 또는 하나 이상의 로컬 메모리 제어기(165)에 의해 구현된 하드웨어, 펌웨어, 또는 소프트웨어, 또는 이의 일부 조합일 수 있다. 일부 경우에, 외부 메모리 제어기(105)는 외부 메모리 제어기(105)의 일부가 프로세서(120)에 의해 구현되고 다른 부분이 디바이스 메모리 제어기(155) 또는 로컬 메모리 제어기(165)에 의해 구현되도록 프로세서(120) 및 메모리 디바이스(110)에 걸쳐 분산될 수 있다. 마찬가지로, 일부 경우에, 본 명세서에서 디바이스 메모리 제어기(155) 또는 로컬 메모리 제어기(165)에 속하는 하나 이상의 기능은 일부 경우에 외부 메모리 제어기(105)(프로세서(120)와 분리되거나 이에 포함된 것과 같은)에 의해 수행될 수 있다.
시스템(100)의 구성요소는 복수의 채널(115)을 사용하여 메모리 디바이스(110)와 정보를 교환할 수 있다. 일부 예에서, 채널(115)은 외부 메모리 제어기(105)와 메모리 디바이스(110) 사이의 통신을 가능하게 할 수 있다. 각각의 채널(115)은 시스템(100)의 구성요소와 연관된 단자 사이의 하나 이상의 신호 경로 또는 송신 매체(예컨대, 전도체)를 포함할 수 있다. 예를 들면, 채널(115)은 외부 메모리 제어기(105)에 있는 하나 이상의 핀 또는 패드 및 메모리 디바이스(110)에 있는 하나 이상의 핀 또는 패드를 포함하는 제1 단자를 포함할 수 있다. 핀은 시스템(100)의 디바이스의 전도성 입력 또는 출력 지점의 일례일 수 있고, 핀은 채널의 일부의 역할을 하도록 구성될 수 있다. 일부 경우에, 단자의 핀 또는 패드는 채널(115)의 신호 경로의 일부일 수 있다.
부가적인 신호 경로는 시스템(100)의 구성요소 내에서 신호를 라우팅하기 위한 채널의 단자와 결합될 수 있다. 예를 들면, 메모리 디바이스(110)는 채널(115)의 단자로부터 메모리 디바이스(110)의 다양한 구성요소(예컨대, 디바이스 메모리 제어기(155), 메모리 다이(160), 로컬 메모리 제어기(165), 메모리 어레이(170))로 신호를 라우팅하는 신호 경로(예컨대, 메모리 다이(160) 내부와 같은, 메모리 디바이스(110) 또는 그것의 구성요소 내부의 신호 경로)를 포함할 수 있다. 신호 경로는 차동 송신 라인 및 단일 종단형 송신 라인을 포함하는 하나 이상의 유형의 송신 라인을 사용하여 구현될 수 있다.
채널(115)(및 연관된 신호 경로 및 단자)은 특정한 유형의 정보를 전달하는데 지정될 수 있다. 일부 경우에, 채널(115)은 통합된 채널일 수 있고 따라서, 다수의 개별적인 채널을 포함할 수 있다. 예를 들면, 데이터 채널(190)은 x4(예컨대, 4개의 신호 경로를 포함함), x8(예컨대, 8개의 신호 경로를 포함함), x16(16개의 신호 경로를 포함함) 등일 수 있다. 채널을 통해 전달된 신호는 이중 데이터 레이트(DDR) 시그널링을 사용할 수 있다. 예를 들면, 신호의 일부 심볼은 클록 신호의 상승 에지에 등록될 수 있고 신호의 다른 심볼은 클록 신호의 하강 에지에 등록될 수 있다. 채널을 통해 전달된 신호는 단일 데이터 레이트(SDR) 시그널링을 사용할 수 있다. 예를 들면, 각각의 클록 사이클에 대해 신호의 하나의 심볼이 등록될 수 있다.
일부 경우에, 채널(115)은 하나 이상의 명령 및 주소(C/A) 채널(186)을 포함할 수 있다. C/A 채널(186)은 명령(예컨대, 주소 정보)과 연관된 제어 정보를 포함하는 메모리 디바이스(110)와 외부 메모리 제어기(105) 사이에 명령을 전달하도록 구성될 수 있다. 예를 들면, C/A 채널(186)은 원하는 데이터의 주소와 함께 판독 명령을 포함할 수 있다. 일부 경우에, C/A 채널(186)은 상승 클록 신호 에지 및/또는 하강 클록 신호 에지에 대해 등록될 수 있다. 일부 경우에, C/A 채널(186)은 다수(예컨대, 8개 또는 9개)의 신호 경로를 포함할 수 있다.
일부 경우에, 채널(115)은 하나 이상의 클록 신호(CK) 채널(188)을 포함할 수 있다. CK 채널(188)은 외부 메모리 제어기(105)와 메모리 디바이스(110) 사이에 하나 이상의 공통 클록 신호를 전달하도록 구성될 수 있다. 각각의 클록 신호는 하이 상태와 로우 상태 사이에서 조정하고(예컨대, 발진함) 외부 메모리 제어기(105) 및 메모리 디바이스(110)의 동작을 조정하도록 구성될 수 있다. 일부 경우에, 클록 신호는 차동 출력일 수 있고(예컨대, CK_t 신호 및 CK_c 신호) CK 채널(188)의 신호 경로는 그에 따라 구성될 수 있다. 일부 경우에, 클록 신호는 단일 종단될 수 있다. CK 채널(188)은 임의의 양의 신호 경로를 포함할 수 있다. 일부 경우에, 클록 신호(CK)(예컨대, CK_t 신호 및 CK_c 신호)는 메모리 디바이스(110)에 대한 명령 및 주소지정 동작, 또는 메모리 디바이스(110)에 대한 다른 시스템 전반의 동작에 대한 타이밍 기준을 제공할 수 있다. 클록 신호(CK)는 따라서, 제어 클록 신호(CK), 명령 클록 신호(CK), 또는 시스템 클록 신호(CK)로서 다양하게 언급될 수 있다. 시스템 클록 신호(CK)는 하나 이상의 하드웨어 구성요소(예컨대, 발진기, 크리스털, 논리 게이트, 트랜지스터 등)를 포함할 수 있는 시스템 클록에 의해 생성될 수 있다.
일부 경우에, 채널(115)은 하나 이상의 데이터(DQ) 채널(190)을 포함할 수 있다. 예를 들면, 채널(115)은 데이터 채널(190-1 내지 190-n)을 포함할 수 있다. 각각의 데이터 채널은 하나 이상의 송신 라인과 연관되거나 이를 포함할 수 있다. 데이터 채널(190)은 외부 메모리 제어기(105)와 메모리 디바이스(110) 사이에 데이터 및/또는 제어 정보를 전달하도록 구성될 수 있다. 예를 들면, 데이터 채널(190)은 메모리 디바이스(110)에 기록될 정보(예컨대, 양방향) 또는 메모리 디바이스(110)로부터 판독된 정보를 전달할 수 있다.
일부 경우에, 채널(115)은 다른 목적에 지정될 수 있는 하나 이상의 다른 채널(192)을 포함할 수 있다. 이 다른 채널(192)은 임의의 양의 신호 경로를 포함할 수 있다.
일부 경우에, 다른 채널(192)은 하나 이상의 기록 클록 신호(WCK) 채널을 포함할 수 있다. WCK의 'W'가 명목상 "기록"을 의미할 수 있더라도, 기록 클록 신호(WCK)(예컨대, WCK_t 신호 및 WCK_c 신호)는 일반적으로 메모리 디바이스(110)에 대한 액세스 동작에 대한 타이밍 기준(예컨대, 판독 및 기록 동작 둘 다에 대한 타이밍 기준)을 제공할 수 있다. 그에 따라, 기록 클록 신호(WCK)는 또한, 데이터 클록 신호(WCK)로 지칭될 수 있다. WCK 채널은 외부 메모리 제어기(105)와 메모리 디바이스(110) 사이에 공통 데이터 클록 신호를 전달하도록 구성될 수 있다. 데이터 클록 신호는 외부 메모리 제어기(105) 및 메모리 디바이스(110)의 액세스 동작(예컨대, 기록 동작 또는 판독 동작)을 조정하도록 구성될 수 있다. 일부 경우에, 기록 클록 신호는 차동 출력부(예컨대, WCK_t 신호 및 WCK_c 신호)일 수 있고 WCK 채널의 신호 경로는 그에 따라 구성될 수 있다. WCK 채널은 임의의 양의 신호 경로를 포함할 수 있다. 데이터 클록 신호(WCK)는 하나 이상의 하드웨어 구성요소(예컨대, 발진기, 크리스털, 논리 게이트, 트랜지스터 등)를 포함할 수 있는 데이터 클록에 의해 생성될 수 있다.
일부 경우에, 다른 채널(192)은 하나 이상의 오류 검출 부호(EDC) 채널을 포함할 수 있다. EDC 채널은 시스템 신뢰성을 개선하기 위해 체크섬(checksums)과 같은 오류 검출 신호를 전달하도록 구성될 수 있다. EDC 채널은 임의의 양의 신호 경로를 포함할 수 있다.
채널(115)은 다양한 상이한 아키텍처를 사용하여 외부 메모리 제어기(105)를 메모리 디바이스(110)와 결합할 수 있다. 다양한 아키텍처의 예는 버스, 지점 대 지점 연결부, 크로스바, 실리콘 인터포저(silicon interposer)와 같은 고 밀도 인터포저, 또는 유기 기판에 형성된 채널 또는 이의 일부 조합을 포함할 수 있다. 예를 들면, 일부 예에서, 신호 경로는 실리콘 인터포저 또는 유리 인터포저와 같은 고 밀도 인터포저를 적어도 부분적으로 포함할 수 있다.
채널(115)을 통해 상이한 유형의 신호가 송신될 수 있다. 일부 경우에, 명령 및 메모리 주소 둘 다를 포함하는 제어 신호는 C/A 신호로 지칭된다. 하나의 예에서, 활성("ACT") 명령 및 행 주소를 포함하는 C/A 신호는 메모리 셀의 행이 또 다른 메모리 동작(예컨대, 판독 또는 기록 동작)에 대비하여 또는 이와 결부하여 활성화되어야 함을 메모리 디바이스에 나타낼 수 있다. 메모리 셀을 활성화시키는 것은 그 메모리 셀에 대응하는 워드 라인에 동력을 공급하는 것을 언급할 수 있다. ACT 명령이 메모리 디바이스로 전송될 때, ACT 명령에는 다가오는 판독 또는 기록 동작을 위해 타깃팅된 뱅크뿐만 아니라, 활성화되어야 하는 그 뱅크 내의 행을 나타내는 다수의 주소 비트가 포함되거나 상기 다수의 주소 비트가 이어질 수 있다. 따라서, 송신된 ACT 명령에는 다가오는 메모리 동작과 관련된 뱅크 및 행 주소가 포함되거나 상기 뱅크 및 행 주소가 이어질 수 있다. ACT 명령이 행 주소를 포함할 때, ACT 명령은 행 명령으로서 지칭될 수 있다. 외부 제어기는 뱅크의 새로운 행이 판독 또는 기록 동작을 위해 타깃팅될 때마다 ACT 명령을 송신할 수 있다.
사전 충전("PRE") 명령은 메모리 뱅크가 폐쇄되어야 함을 메모리 디바이스에 나타낼 수 있다. 메모리 뱅크를 폐쇄하는 것은 메모리 뱅크의 워드 라인으로부터 인가된 전압을 제거하는 것 및 이전 ACT 명령에 의해 개방된 임의의 행을 폐쇄하는 것을 포함할 수 있다. 외부 제어기는 ACT 명령이 메모리 뱅크에서 행을 개방하기 위해 사용된 후에 PRE 명령을 송신할 수 있다 - 예컨대, 동일한 메모리 뱅크에서 상이한 행의 개방을 가능하게 하기 위해.
판독("RD") 명령은 하나 이상의 메모리 셀의 저장된 정보(예컨대, 논리 상태에 의해 표현된 바와 같음)가 외부 제어기로 전송될 수 있도록 그들이 판독 동작을 겪어야 한다는 것을 메모리 디바이스에 나타낼 수 있다. 메모리 셀을 판독하는 것은 메모리 셀이 감지를 위해 디지트 라인으로 방전되도록 메모리 셀에 걸쳐 전압을 인가하는 프로세스를 언급할 수 있다. 판독 명령이 메모리 디바이스로 송신될 때, 판독 명령에는 판독 동작을 위해 타깃팅된 메모리 셀(들)의 뱅크 주소 및 열 주소가 포함되거나 상기 뱅크 주소 및 열 주소가 이어질 수 있다. 판독 명령이 열 주소를 포함할 때, 판독 명령은 열 명령으로서 지칭될 수 있다. 일부 경우에, 판독 명령은 또한, 초기 주소 지점에서 시작하여 판독되어야 하는 메모리 셀의 양을 나타낼 수 있다. 판독 명령에 응답하여 판독될 메모리 셀의 양은 판독 버스트 길이로 지칭될 수 있다.
기록("WR") 명령은 외부 제어기로부터의 정보가 메모리 디바이스의 메모리 뱅크 중 하나에 저장될 수 있도록 하나 이상의 메모리 셀이 기록 동작을 겪어야 함을 메모리 디바이스에 나타낼 수 있다. 메모리 셀을 기록하는 것은 메모리 셀이 논리 1 또는 제로를 나타내는 상태로 충전되도록 메모리 셀에 걸쳐 전압을 인가하는 프로세스를 언급할 수 있다. 기록 명령이 메모리 디바이스로 송신될 때, 기록 명령에는 기록 동작을 위해 타깃팅된 메모리 셀(들)의 뱅크 주소 및 열 주소가 포함되거나 상기 뱅크 주소 및 열 주소가 이어질 수 있다. 기록 명령이 열 주소를 포함할 때, 기록 명령은 열 명령으로서 지칭될 수 있다. 일부 경우에, 기록 명령은 또한, 초기 주소 지점으로부터 시작하여 기록되어야 하는 메모리 셀의 양을 나타낼 수 있다. 기록 명령에 응답하여 기록될 메모리 셀의 양은 기록 버스트 길이로 지칭될 수 있다.
채널(115)(및 그들의 연관된 송신 라인)을 통해 전달된 신호는 다양한 상이한 변조 방식을 사용하여 변조될 수 있다. 일부 경우에, 외부 메모리 제어기(105)와 메모리 디바이스(110) 사이에 전달된 신호를 변조하기 위해 이진 심볼(또는 이진 레벨) 변조 방식이 사용될 수 있다. 이진 심볼 변조 방식은 M이 2와 같은 M-진 변조 방식의 일례일 수 있다. 이진 심볼 변조 방식의 각각의 심볼은 1 비트의 디지털 데이터를 표현하도록 구성될 수 있다(예컨대, 심볼은 논리 1 또는 논리 0을 표현할 수 있다). 이진 심볼 변조 방식의 예는 NRZ, 유니폴라 인코딩, 바이폴라 인코딩, 맨체스터 인코딩, 2개의 심볼을 가지는 PAM(예컨대, PAM2) 등을 포함하지만, 이들로 제한되지 않는다.
일부 경우에, 다중 심볼(또는 다중 레벨) 변조 방식은 외부 메모리 제어기(105)와 메모리 디바이스(110) 사이에 전달된 신호를 변조하기 위해 사용될 수 있다. 다중 심볼 변조 방식은 M이 3보다 크거나 같은 M-진 변조 방식의 일례일 수 있다. 다중 심볼 변조 방식의 각각의 심볼은 1 비트보다 많은 디지털 데이터를 표현하도록 구성될 수 있다(예컨대, 심볼은 논리 00, 논리 01, 논리 10 또는 논리 11를 표현할 수 있다). 다중 심볼 변조 방식의 예는 PAM4, PAM8 등, 직교 진폭 변조(QAM), 직교 위상 편이 변조(QPSK) 등을 포함하지만, 이들로 제한되지 않는다. 다중 심볼 신호(예컨대, PAM4 신호)는 1 비트보다 많은 정보를 인코딩하기 위해 적어도 3개의 레벨을 포함하는 변조 방식을 사용하여 변조되는 신호일 수 있다. 다중 심볼 변조 방식 및 심볼은 대안적으로 비이진, 다중 비트, 또는 고차 변조 방식 및 심볼로 지칭될 수 있다.
본 명세서에서 논의된 바와 같이, 제어 정보("제어 시그널링") 및 데이터("데이터 시그널링")를 포함하는 시그널링은 메모리 시스템 내에서 - 예컨대, 호스트 디바이스(105)와 메모리 디바이스(110) 사이에서 전달될 수 있다. 제어 시그널링에 포함된 제어 정보는 명령, 주소 및/또는 오류 검출/정정 정보를 포함할 수 있다. 일부 경우에, 제어 정보에서 오류가 검출될 수 있다 - 예컨대, 송신, 수신, 신호 레인, 및/또는 타이밍 오류로 인해. 일부 경우에, 수신된 제어 정보에서 오류를 검출한 후에, 제어 정보를 수신하는 디바이스("메모리 디바이스")는 제어 정보를 폐기하고 - 예컨대, 제어 정보에서 명령을 실행하는 것을 억제함 - 제어 정보를 송신한 디바이스("호스트 디바이스")에 수신된 제어 정보에서 오류가 검출되었음을 나타낼 수 있다. 그러나, 메모리 디바이스에서 오류가 발생했다는 표시를 수신하는 것은 어떤 유형의 오류가 발생했는지 또는 오류가 발생한 원인을 호스트 디바이스에 나타내지 않을 수 있다. 즉, 메모리 디바이스는 오류를 검출할 수 있지만 오류의 원인 또는 본질을 결정하지 않을 수 있거나, 결정할 수 없을 수 있다. 부가적으로, 메모리 디바이스는 호스트가 실제로 어떤 명령을 메모리 디바이스로 송신했거나 송신하도록 의도되는지를 결정할 수 없다.
호스트 디바이스가 전달된 제어 정보에서 오류의 원인 및/또는 본질을 진단하는 것을 가능하게 하기 위해, 수신 디바이스는 제어 정보에서 검출된 오류의 원인 및 본질에 관한 부가적인 정보를 호스트 디바이스에 제공할 수 있다. 예를 들면, 수신 디바이스는 손상된 제어 정보를 포함한 수신된 제어 신호의 적어도 일부의 전체 저장된 사본이 아니라면 이의 적어도 일부를 호스트 디바이스로 송신할 수 있다. 그리고 호스트 디바이스는 그 다음, 수신된 제어 신호의 일부 또는 전체 저장된 사본을 사용하여 오류의 원인을 결정할 수 있다 - 예컨대, 수신된 제어 신호와 송신된 제어 신호를 비교함으로써. 호스트 디바이스가 오류의 원인 또는 본질을 진단하는 것을 허용함으로써, 호스트 디바이스는 (예컨대, 변조 방식을 업데이트하거나 손상된 신호 경로를 회피함으로써) 후속 통신에서 오류를 정정하거나 회피하기 위한 조치를 취할 수 있다. 일부 예에서, 명령 레지스터 및 수반되는 로직 구성요소는 불량 제어 신호를 저장하기 위해 메모리 디바이스에 포함될 수 있다.
일부 경우에, 메모리 디바이스는 호스트 디바이스가 오류의 원인을 식별하고/하거나 해결할 때까지 잠금 상태에 진입할 수 있다. 잠금 상태에 진입하는 것은 수신된 명령을 실행하는 것을 억제하는 것 및 메모리 디바이스에서 모든 메모리 뱅크를 폐쇄하는 것을 포함할 수 있다. 잠금 상태에 진입함으로써, 메모리 디바이스는 오류의 원인이 해결될 때까지 메모리 디바이스에서 메모리 어레이에 저장된 정보를 보존할 수 있다. 그러나, 잠금 상태에 진입한 후에, 메모리 디바이스는 호스트 디바이스와 같은 또 다른 디바이스의 도움 없이 그것의 이전 상태로 되돌아갈 수 없다.
메모리 디바이스의 잠금 상태를 지원하기 위해 및 메모리 디바이스가 오류로부터 완전히 복구하는 것을 가능하게 하기 위해, 메모리 디바이스는 정상 동작(예컨대, 잠금 동작 아님) 동안 메모리 어레이의 상태를 지속적으로 저장할 수 있고 수신된 제어 정보에서 오류가 검출되기 전에/검출될 때 저장된 메모리 어레이의 상태를 호스트 디바이스로 송신할 수 있다. 예를 들면, 메모리 디바이스는 메모리 어레이의 각각의 메모리 뱅크에 대한 가장 최근의 데이터, 메모리 뱅크에서 가장 최근에 액세스된 행의 메모리 주소 및 각각의 메모리 뱅크의 상태(예컨대, 메모리 뱅크가 개방되거나 폐쇄되는지의 여부)에 기초하여 지속적으로 저장할 수 있다. 일부 예에서, 메모리 어레이에 대한 메모리 주소(예컨대, 행 주소) 및 뱅크 상태(집합적으로 "메모리 상태" 또는 "메모리 상태 정보"로 지칭될 수 있음)를 저장하기 위해 레지스터 파일 및 수반되는 로직 구성요소가 메모리 디바이스에 포함될 수 있다.
도 2는 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하는 것을 지원하는 일 예시적인 메모리 디바이스의 양태를 도시한다.
메모리 디바이스(200)는 도 1을 참조하여 설명된 메모리 다이(160)의 일례일 수 있다. 일부 경우에, 메모리 디바이스(200)는 메모리 칩, 메모리 디바이스, 또는 전자 메모리 디바이스로 지칭될 수 있다. 메모리 디바이스(200)는 상이한 논리 상태를 저장하도록 프로그래밍 가능한 하나 이상의 메모리 셀(205)을 포함할 수 있다. 각각의 메모리 셀(205)은 2개 이상의 상태를 저장하도록 프로그래밍 가능할 수 있다. 예를 들면, 메모리 셀(205)은 한 번에 1 비트의 디지털 논리(예컨대, 논리 0 및 논리 1)를 저장하도록 구성될 수 있다. 일부 경우에, 단일 메모리 셀(205)(예컨대, 다중 레벨 메모리 셀)은 한 번에 1 비트보다 많은 디지털 논리(예컨대, 논리 00, 논리 01, 논리 10 또는 논리 11)를 저장하도록 구성될 수 있다.
메모리 셀(205)은 커패시터에 프로그램 가능한 상태를 나타내는 전하를 저장할 수 있다. 동적 랜덤 액세스 메모리(DRAM) 아키텍처에서, 메모리 셀(205)과 같은 메모리 셀은 프로그래밍 가능한 상태를 나타내는 전하를 저장하기 위해 유전체 재료를 포함하는 커패시터를 포함할 수 있다. 다른 메모리 아키텍처에서, 다른 저장 디바이스 및 구성요소가 가능하다. 예를 들면, 비선형 유전체 재료가 이용될 수 있다.
판독 및 기록과 같은 동작은 워드 라인(210) 및/또는 디지트 라인(215)과 같은 액세스 라인을 활성화하거나 선택함으로써 메모리 셀(205)에 대해 수행될 수 있다. 일부 경우에, 디지트 라인(215)은 비트 라인으로서 또한 언급될 수 있다. 액세스 라인, 워드 라인 및 디지트 라인, 또는 이와 유사한 것에 대한 참조는 이해 또는 동작의 손실 없이 상호 교환 가능하다. 워드 라인(210) 또는 디지트 라인(215)을 활성화하거나 선택하는 것은 각각의 라인에 전압을 인가하는 것을 포함할 수 있다.
메모리 디바이스(200)는 그리드형 패턴으로 배열된 액세스 라인(예컨대, 워드 라인(210) 및 디지트 라인(215))을 포함할 수 있다. 메모리 셀(205)은 워드 라인(210)과 디지트 라인(215)의 교차점에 배치될 수 있다. 워드 라인(210) 및 디지트 라인(215)을 바이어싱함으로써(예컨대, 워드 라인(210) 또는 디지트 라인(215)에 전압을 인가함), 단일 메모리 셀(205)은 그들의 교차점에서 액세스될 수 있다. 메모리 디바이스(200)는 다수의 메모리 뱅크를 포함할 수 있으며, 이들 중 적어도 일부는 이들의 각각이 아니라면, 고유한 주소를 가질 수 있고 다수의 행과 열을 포함할 수 있다.
메모리 셀(205)에 액세스하는 것은 행 디코더(220) 또는 열 디코더(225)를 통해 제어될 수 있다. 예를 들면, 행 디코더(220)는 로컬 메모리 제어기(260)로부터 행 주소를 수신하고 수신된 행 주소에 기초하여 워드 라인(210)을 활성화시킬 수 있다. 열 디코더(225)는 로컬 메모리 제어기(260)로부터 열 주소를 수신할 수 있고 수신된 열 주소에 기초하여 디지트 라인(215)을 활성화시킬 수 있다. 예를 들면, 메모리 디바이스(200)는 WL_1 내지 WL_M으로 라벨링된 다수의 워드 라인(210), 및 DL_1 내지 DL_N으로 라벨링된 다수의 디지트 라인(215)을 포함할 수 있으며, 여기서 M 및 N은 메모리 어레이의 크기에 의존한다. 따라서, 워드 라인(210) 및 디지트 라인(215) 예컨대, WL_1 및 DL_3을 활성화시킴으로써, 그들의 교차점에 있는 메모리 셀(205)이 액세스될 수 있다. 2차원 또는 3차원 구성에서, 워드 라인(210)과 디지트 라인(215)의 교차점은 메모리 셀(205)의 주소로 지칭될 수 있다.
메모리 셀(205)은 커패시터(230) 및 스위칭 구성요소(235)와 같은 논리 저장 구성요소를 포함할 수 있다. 커패시터(230)는 유전체 커패시터 또는 강유전체 커패시터의 일례일 수 있다. 커패시터(230)의 제1 노드는 스위칭 구성요소(235)와 결합될 수 있고 커패시터(230)의 제2 노드는 전압원(240)와 결합될 수 있다. 일부 경우에, 전압원(240)은 Vss와 같은 접지이다. 일부 경우에, 전압원(240)은 플레이트 라인 구동기와 결합된 플레이트 라인의 일례일 수 있다. 스위칭 구성요소(235)는 2개의 구성요소 사이의 전자 통신을 선택적으로 확립하거나 확립 해제(예컨대, 중단)하는 트랜지스터 또는 임의의 다른 유형의 스위치 디바이스의 일례일 수 있다.
메모리 셀(205)을 선택하거나 선택 해제하는 것은 스위칭 구성요소(235)를 활성화하거나 활성화 해제함으로써 달성될 수 있다. 커패시터(230)는 스위칭 구성요소(235)를 사용하여 디지트 라인(215)과 전자 통신할 수 있다. 예를 들면, 커패시터(230)는 스위칭 구성요소(235)가 활성화 해제될 때 디지트 라인(215)으로부터 분리될 수 있고, 커패시터(230)는 스위칭 구성요소(235)가 활성화될 때 디지트 라인(215)과 결합될 수 있다. 일부 경우에, 스위칭 구성요소(235)는 트랜지스터이거나 이를 포함할 수 있고 그것의 동작은 트랜지스터 게이트에 전압을 인가함으로써 제어될 수 있으며, 여기서 트랜지스터 게이트와 트랜지스터 소스 사이의 전압 차이는 트랜지스터의 임계 전압보다 크거나 그 미만일 수 있다. 일부 경우에, 스위칭 구성요소(235)는 p형 트랜지스터 또는 n형 트랜지스터일 수 있다. 워드 라인(210)은 스위칭 구성요소(235)의 게이트와 전자 통신할 수 있고 워드 라인(210)에 인가되는 전압에 기초하여 스위칭 구성요소(235)를 활성화/활성화 해제할 수 있다.
워드 라인(210)은 메모리 셀(205)에 대한 액세스 동작을 수행하기 위해 사용될 수 있는 메모리 셀(205)과 전자 통신하는 전도성 라인일 수 있다. 일부 아키텍처에서, 워드 라인(210)은 메모리 셀(205)의 스위칭 구성요소(235)의 게이트와 전자 통신할 수 있고 메모리 셀의 스위칭 구성요소(235)를 제어하도록 구성될 수 있다. 일부 아키텍처에서, 워드 라인(210)은 메모리 셀(205)의 커패시터의 노드와 전자 통신할 수 있고 메모리 셀(205)은 스위칭 구성요소를 포함하지 않을 수 있다.
디지트 라인(215)은 메모리 셀(205)을 감지 구성요소(245)와 연결하는 전도성 라인일 수 있다. 일부 아키텍처에서, 메모리 셀(205)은 액세스 동작의 부분 동안 디지트 라인(215)과 선택적으로 결합될 수 있다. 예를 들면, 메모리 셀(205)의 스위칭 구성요소(235) 및 워드 라인(210)은 디지트 라인(215) 및 메모리 셀(205)의 커패시터(230)를 결합하고/하거나 분리하도록 구성될 수 있다. 일부 아키텍처에서, 메모리 셀(205)은 디지트 라인(215)과 전자 통신할 수 있다.
감지 구성요소(245)는 메모리 셀(205)의 커패시터(230)에 저장된 상태(예컨대, 전하)를 검출하고 저장된 상태에 기초하여 메모리 셀(205)의 논리 상태를 결정하도록 구성될 수 있다. 메모리 셀(205)에 의해 저장된 전하는 일부 경우에 작을 수 있다. 이와 같이, 감지 구성요소(245)는 메모리 셀(205)에 의해 출력된 신호를 증폭하기 위해 하나 이상의 감지 증폭기를 포함할 수 있다. 감지 증폭기는 판독 동작 동안 디지트 라인(215)의 전하의 작은 변화를 검출할 수 있고 검출된 전하에 기초하여 논리 상태(0) 또는 논리 상태(1)에 대응하는 신호를 생성할 수 있다. 판독 동작 동안, 메모리 셀(205)의 커패시터(230)는 신호의 대응하는 디지트 라인(215)에 신호를 출력(예컨대, 전하를 방전)할 수 있다. 신호는 디지트 라인(215)의 전압으로 하여금 변하게 할 수 있다. 감지 구성요소(245)는 디지트 라인(215)에 걸쳐 메모리 셀(205)로부터 수신된 신호를 기준 신호(250)(예컨대, 기준 전압)와 비교하도록 구성될 수 있다. 감지 구성요소(245)는 비교에 기초하여 메모리 셀(205)의 저장된 상태를 결정할 수 있다. 예를 들면, 이진 시그널링에서, 디지트 라인(215)이 기준 신호(250)보다 높은 전압을 갖는 경우, 감지 구성요소(245)는 메모리 셀(205)의 저장된 상태가 논리 1이라고 결정할 수 있고, 디지트 라인(215)이 기준 신호(250)보다 낮은 전압을 갖는 경우, 감지 구성요소(245)는 메모리 셀(205)의 저장된 상태가 논리 0이라고 결정할 수 있다.
감지 구성요소(245)는 신호의 차를 검출하고 증폭하기 위해 다양한 트랜지스터 또는 증폭기를 포함할 수 있다. 일부 경우에, 감지 구성요소(245)는 또 다른 구성요소(예컨대, 열 디코더(225), 행 디코더(220))의 일부일 수 있다. 일부 경우에, 감지 구성요소(245)는 행 디코더(220) 또는 열 디코더(225)와 전자 통신할 수 있다.
하나의 예로서 감지 구성요소(245)에 의해 결정된 바와 같이, 메모리 셀(205)의 검출된 논리 상태는 출력부(255)로서 열 디코더(225)를 통해 출력될 수 있다. 출력부(255)는 하나 이상의 채널을 통한 전송을 위해(예컨대, 하나 이상의 송신 라인을 통한 송신을 위해) 검출된 논리 상태를 하나 이상의 중간 구성요소(예컨대, 로컬 메모리 제어기)로 이동시킬 수 있다. 따라서, 메모리 셀(205)의 검출된 논리 상태는 메모리 디바이스(200) 외부의 디바이스 또는 구성요소에 전달될 수 있다. 예를 들면, 검출된 논리 상태는 하나 이상의 송신 라인을 통해 (예컨대, 외부 메모리 제어기(105)로) 전송될 수 있다.
로컬 메모리 제어기(260)는 다양한 구성요소(예컨대, 행 디코더(220), 열 디코더(225) 및 감지 구성요소(245))를 통해 메모리 셀(205)의 동작을 제어할 수 있다. 로컬 메모리 제어기(260)는 도 1을 참조하여 설명된 로컬 메모리 제어기(165)의 일례일 수 있다. 일부 경우에, 행 디코더(220), 열 디코더(225) 및 감지 구성요소(245) 중 하나 이상은 로컬 메모리 제어기(260)와 함께 배치될 수 있다. 로컬 메모리 제어기(260)는 외부 메모리 제어기(105)(또는 도 1을 참조하여 설명된 디바이스 메모리 제어기(155))로부터 명령 및/또는 데이터를 수신하고, 명령 및/또는 데이터를 메모리 디바이스(200)에 의해 사용될 수 있는 정보로 전환하고, 메모리 디바이스(200)에 대해 하나 이상의 동작을 수행하며, 하나 이상의 동작을 수행한 것에 응답하여 메모리 디바이스(200)로부터 외부 메모리 제어기(105)(또는 디바이스 메모리 제어기(155))로 데이터를 전달하도록 구성될 수 있다. 로컬 메모리 제어기(260)는 타깃 워드 라인(210) 및 타깃 디지트 라인(215)을 활성화하기 위해 행 및 열 주소 신호를 생성할 수 있다. 로컬 메모리 제어기(260)는 또한, 메모리 디바이스(200)의 동작 동안 사용된 다양한 전압 또는 전류를 생성하고 제어할 수 있다. 일반적으로, 본 명세서에서 논의된 인가된 전압 또는 전류의 진폭, 형상, 또는 지속기간은 조정되거나 달라질 수 있고 메모리 디바이스(200)를 동작시키는데 논의된 다양한 동작에 대해 상이할 수 있다.
일부 경우에, 로컬 메모리 제어기(260)는 메모리 디바이스(200)의 하나 이상의 메모리 셀(205)에 대해 기록 동작(예컨대, 프로그래밍 동작)을 수행하도록 구성될 수 있다. 기록 동작은 외부 디바이스로부터 수신된 데이터를 위한 것일 수 있다. 기록 동작 동안, 메모리 디바이스(200)의 메모리 셀(205)은 원하는 논리 상태를 저장하도록 프로그래밍될 수 있다. 일부 경우에, 복수의 메모리 셀(205)은 단일 기록 동작 동안 프로그래밍될 수 있다. 로컬 메모리 제어기(260)는 기록 동작을 수행할 타깃 메모리 셀(205)을 식별할 수 있다. 로컬 메모리 제어기(260)는 타깃 메모리 셀(205)(예컨대, 타깃 메모리 셀(205)의 주소)과 전자 통신하는 타깃 워드 라인(210) 및 타깃 디지트 라인(215)을 식별할 수 있다. 로컬 메모리 제어기(260)는 타깃 메모리 셀(205)에 액세스하기 위해 타깃 워드 라인(210) 및 타깃 디지트 라인(215)을 활성화시킬 수 있다(예컨대, 워드 라인(210) 또는 디지트 라인(215)에 전압을 인가할 수 있다). 로컬 메모리 제어기(260)는 메모리 셀(205)의 커패시터(230)에 제1 상태(예컨대, 전하)를 저장하기 위해 기록 동작 동안 디지트 라인(215)에 제1 신호(예컨대, 전압)를 인가할 수 있고, 제1 상태(예컨대, 전하)는 원하는 논리 상태를 나타낼 수 있다.
일부 경우에, 로컬 메모리 제어기(260)는 메모리 디바이스(200)의 하나 이상의 메모리 셀(205)에 대해 판독 동작(예컨대, 감지 동작)을 수행하도록 구성될 수 있다. 판독 동작은 외부 디바이스에 의해 요청되거나, 이를 위해 의도된 데이터를 위한 것일 수 있다. 판독 동작 동안, 메모리 디바이스(200)의 메모리 셀(205)에 저장된 논리 상태가 결정될 수 있다. 일부 경우에, 복수의 메모리 셀(205)은 단일 판독 동작 동안 검출될 수 있다. 로컬 메모리 제어기(260)는 판독 동작을 수행할 타깃 메모리 셀(205)을 식별할 수 있다. 로컬 메모리 제어기(260)는 타깃 메모리 셀(205)(예컨대, 타깃 메모리 셀(205)의 주소)과 전자 통신하는 타깃 워드 라인(210) 및 타깃 디지트 라인(215)을 식별할 수 있다. 로컬 메모리 제어기(260)는 타깃 메모리 셀(205)에 액세스하기 위해 타깃 워드 라인(210) 및 타깃 디지트 라인(215)을 활성화시킬 수 있다(예컨대, 워드 라인(210) 또는 디지트 라인(215)에 전압을 인가할 수 있다).
로컬 메모리 제어기(260)는 메모리 디바이스(200)의 동작 동안 메모리 상태 정보(예컨대, 각각의 메모리 뱅크에 대한 가장 최근에 액세스된 행 주소 및 메모리 뱅크 상태)를 저장하도록 구성될 수 있다. 일부 경우에, 로컬 메모리 제어기(260)는 메모리 디바이스(200)로 하여금 수신된 제어 정보에서 오류를 검출한 후에 잠금 상태에 진입하게 하도록 구성될 수 있다. 로컬 메모리 제어기(260)는 또한, 메모리 디바이스로 하여금 제어 신호에서 수신된 제어 정보에서 오류를 검출한 후에 제어 신호의 전부 또는 일부의 사본을 저장하게 하도록 구성될 수 있다. 부가적으로, 로컬 메모리 제어기(260)는 메모리 디바이스(200)로 하여금 오류를 검출한 후에 또는 외부 디바이스로부터의 요청에 응답하여, 메모리 상태 정보 및/또는 불량 제어 신호의 적어도 일부 또는 전체 사본을 호스트 디바이스와 같은 외부 디바이스로 송신하게 할 수 있다.
타깃 메모리 셀(205)은 액세스 라인을 바이어싱(biasing)한 것에 응답하여 신호를 감지 구성요소(245)로 전송할 수 있다. 감지 구성요소(245)는 신호를 증폭할 수 있다. 로컬 메모리 제어기(260)는 감지 구성요소(245)를 활성화(또는 "점화(fire)")시킬 수 있고(예컨대, 감지 구성요소를 래치함) 그에 의해, 메모리 셀(205)로부터 수신된 신호를 기준 신호(250)와 비교한다. 그 비교에 기초하여, 감지 구성요소(245)는 메모리 셀(205)에 저장되는 논리 상태를 결정할 수 있다. 로컬 메모리 제어기(260)는 메모리 셀(205)에 저장된 논리 상태를 판독 동작의 일부로서 외부 메모리 제어기(105)(또는 디바이스 메모리 제어기(155))에 전달할 수 있다.
일부 메모리 아키텍처에서, 메모리 셀(205)에 액세스하는 것은 메모리 셀(205)에 저장된 논리 상태를 저하시키거나 파괴할 수 있다. 예를 들면, DRAM 아키텍처에서 수행된 판독 동작은 타깃 메모리 셀의 커패시터를 부분적으로 또는 완전히 방전시킬 수 있다. 로컬 메모리 제어기(260)는 메모리 셀을 그것의 원래의 논리 상태로 되돌리기 위해 재기록 동작 또는 리프레시 동작을 수행할 수 있다. 로컬 메모리 제어기(260)는 판독 동작 후에 논리 상태를 타깃 메모리 셀에 재기록할 수 있다. 일부 경우에, 재기록 동작은 판독 동작의 일부로 고려될 수 있다.
도 3은 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하는 것을 지원하는 일 예시적인 시스템의 양태를 도시한다.
시스템(300)은 도 1을 참조하여 설명된 시스템(100)의 예일 수 있다. 시스템(300)은 호스트 디바이스(305), 메모리 디바이스(310), 및 송신 라인(315)을 포함할 수 있다. 일부 경우에, 호스트 디바이스(305)는 도 1을 참조하여 설명된 바와 같이, 외부 메모리 제어기(105)(외부 제어기, 호스트 디바이스 제어기, 또는 호스트로도 지칭됨) 또는 프로세서(120)(예컨대, GPU, GPGPU, CPU)의 일례일 수 있다. 일부 경우에, 메모리 디바이스(310)는 도 1 및 도 2를 참조하여 설명된 바와 같이, 메모리 디바이스(110), 메모리 다이(160), 디바이스 메모리 제어기(155), 로컬 메모리 제어기(165), 또는 메모리 디바이스(200)의 일례일 수 있다.
호스트 디바이스(305)는 제어 및 데이터 정보를 메모리 디바이스(310)에 전달하도록 구성될 수 있다. 본 명세서에서 논의된 바와 같이, 호스트 디바이스(305)는 또한, 메모리 디바이스(310)로부터, 메모리 디바이스(310)가 호스트 디바이스(305)로부터 수신된 제어 정보를 적절하게 디코딩하는데 실패했다는(예컨대, 보존된 CRC 동작에 기초함) 표시를 수신하도록 구성될 수 있다. 표시를 수신된 후에, (다른 디바이스 중에서) 호스트 디바이스(305)는 (예컨대, 메모리 디바이스(310)로부터 수신된 부가적인 정보에 기초하여) 제어 정보 송신 실패를 야기한 오류(들)를 식별하고 해결하도록 구성될 수 있다. 호스트 디바이스(305)는 오류를 식별하고 해결한 후에 메모리 디바이스(310)를 메모리 디바이스(310) 이전에 식별된 상태로 되돌리도록 더 구성될 수 있다. 일부 경우에, 호스트 디바이스(305)는 호스트 트랜시버(320) 및 호스트 핀(335)을 포함할 수 있다.
호스트 트랜시버(320)는 제어 및/또는 데이터 정보를 메모리 디바이스(310)에 전달하는 시그널링을 송신하고 메모리 디바이스(310)로부터 제어 및/또는 데이터 정보를 전달하는 시그널링을 수신하도록 구성될 수 있다. 호스트 트랜시버(320)는 호스트 핀(335)을 포함하고/하거나 이와 전자 통신할 수 있다.
호스트 핀(335)은 호스트 트랜시버(320)와 송신 라인(315) 사이에 인터페이스를 제공하도록 구성될 수 있다. 즉, 호스트 핀(335)은 호스트 디바이스(305)에서의 내부 신호를 다른 디바이스로 송신하는 것을 용이하게 할 수 있다. 일부 경우에, 호스트 디바이스(305)에 위치된 핀(예컨대, 제어기 핀 1a("CP_1a"))은 메모리 디바이스(310)에 위치된 핀(예컨대, 메모리 디바이스 핀 1a("MDP_1a"))에 대응할 수 있다. 일부 경우에, 호스트 핀(335)은 노드, 패드, 단자, 송신 라인 인터페이스, 인터페이스 구성요소, 또는 연결 지점으로서 지칭될 수 있다. 일부 경우에, 호스트 핀(335)은 송신 라인(315) 및 호스트 디바이스(305)로 그리고 이로부터 전류 또는 전압을 전송할 수 있는 전도성 재료로 제조될 수 있다. 일부 경우에, 호스트 핀(335)은 오류 핀(350)을 포함한다. 오류 핀(350)은 메모리 디바이스(310)가 수신된 제어 정보를 성공적으로 디코딩하는데 실패했다는 표시를 (예컨대, CRC 또는 패리티 오류에 기초하여) 호스트 디바이스(305)와 메모리 디바이스(310) 사이에 전달하도록 구성될 수 있다.
메모리 디바이스(310)는 호스트 디바이스(305)로부터 수신된 제어 및 데이터 정보를 프로세싱하고 호스트 디바이스(305)에 데이터 정보를 제공하도록 구성될 수 있다. 메모리 디바이스(310)는 하나 이상의 메모리 뱅크(예컨대, 메모리 뱅크(0 내지 x))의 메모리 셀에 정보를 저장할 수 있다. 메모리 셀은 예를 들면, 도 2를 참조하여 설명된 바와 같이, 행 및 열의 세트로 메모리 뱅크에 배열될 수 있다.
메모리 디바이스(310)는 호스트 디바이스(305)로부터 수신된 제어 정보에서 오류를 검출하도록 더 구성될 수 있다. 오류를 검출한 후에, 메모리 디바이스(310)는 (예컨대, 호스트 디바이스(305)로부터 수신된 제어 정보를 프로세싱하는 동안) 메모리 디바이스(310)에서 오류가 발생했음을 호스트 디바이스(305)에 나타낼 수 있다. 메모리 디바이스(310)는 오류를 검출한 후에 주소 및 뱅크 상태 정보 및/또는 손상된 제어 정보를 전달한 수신된 제어 신호의 적어도 일부 또는 전체 사본을 포함하는 부가적인 정보를 호스트 디바이스(305)로 송신하도록 구성될 수 있다. 일부 경우에, 메모리 디바이스(310)는 메모리 트랜시버(340) 및 메모리 핀(345)을 포함할 수 있다.
메모리 트랜시버(340)는 호스트 디바이스(305)로부터 제어 및/또는 데이터 정보를 수신하도록 구성될 수 있다. 메모리 트랜시버(340)는 또한, 호스트 디바이스(305)에 제어 및/또는 데이터 정보를 송신하도록 구성될 수 있다.
메모리 핀(345)은 메모리 디바이스(310)의 송신 및 수신 구성요소와 송신 라인(315) 사이에 인터페이스를 제공하도록 구성될 수 있다. 일부 경우에, 메모리 디바이스(310)에 위치된 핀(예컨대, 디바이스 핀 1a("MDP_1a"))은 호스트 디바이스(305)(예컨대, 제어기 핀 1a("CP_1a"))에 위치된 핀에 대응할 수 있다. 일부 경우에, 메모리 핀(345)은 노드, 패드, 단자, 송신 라인 인터페이스, 인터페이스 구성요소, 또는 연결 지점으로서 지칭될 수 있다. 일부 경우에, 호스트 핀(345)은 송신 라인(315) 및 메모리 디바이스(310)로 그리고 이로부터 전류 또는 전압을 전송할 수 있는 전도성 재료로 제조될 수 있다. 일부 경우에, 메모리 핀(345)은 오류 핀(355)을 포함한다. 오류 핀(355)은 (예컨대, CRC 또는 패리티 오류에 기초하여) 메모리 디바이스(310)가 수신된 제어 정보를 성공적으로 디코딩하는데 실패했다는 표시를 호스트 디바이스(305)와 메모리 디바이스(310) 사이에 전달하도록 구성될 수 있다. 일부 경우에, 메모리 디바이스(310)는 오류 핀(355)에 대한 부가적인 오류 핀을 포함할 수 있다.
송신 라인(315)은 호스트 디바이스(305)와 메모리 디바이스(310)를 전자적으로 연결하도록 구성될 수 있다. 시스템(300)에 도시된 바와 같이, 송신 라인(315)은 하나의 구성요소(예컨대, 호스트 디바이스(305))에서 시작되고 동일한 디바이스 내에 있을 수 있거나 없을 수 있는 또 다른 구성요소(예컨대, 메모리 디바이스(310))에서 종료될 수 있다. 송신 라인(315)은 전도성 와이어 또는 트레이스일 수 있다. 일부 경우에, 송신 라인(315)은 호스트 핀(335)과 메모리 핀(345) 사이에 일 대 일 매핑을 제공한다. 일부 경우에, 송신 라인(315)은 도 1을 참조하여 설명된 바와 같이 채널(115)과 같은 채널에 포함된다. 예를 들면, 송신 라인(1a 내지 M)은 C/A 채널(185)과 같은 제어 채널에 포함될 수 있고 송신 라인(1b 내지 N)은 DQ 채널(190-1)과 같은 데이터 채널에 포함될 수 있다.
C/A 버스(325)는 호스트 디바이스(305)와 메모리 디바이스(310) 사이에 C/A 시그널링을 전달하도록 구성될 수 있다. 일부 경우에, C/A 버스(325)는 호스트 핀(335)의 서브세트(예컨대, CP_1a 내지 CP_M), 메모리 핀(345)의 서브세트(예컨대, MDP_1a 내지 MDP_M), 및 송신 라인(315)의 서브세트(예컨대, TL_1a 내지 TL_M)를 포함한다. 다른 경우에, C/A 버스(325)는 송신 라인(315)의 서브세트를 포함하도록 정의되고 도 1을 참조하여 설명된 바와 같이 채널(115)과 같은 채널과 등가이다. 일부 경우에, C/A 버스(325)는 또한 오류 핀(350) 및 오류 핀(355)을 포함하도록 구성될 수 있다. 일부 경우에, 호스트 디바이스(305)는 오류 핀(350)에 대한 부가적인 오류 핀을 포함할 수 있다. 다른 경우에, 적어도 오류 핀(350)을 포함하는 메모리 디바이스 오류 핀, 및 적어도 오류 핀(355)을 포함하는 호스트 디바이스 오류 핀은 오류 정정/검출 버스와 같은 상이한 버스에 포함되거나 버스에 포함되지 않을 수 있다.
데이터 버스(330)는 호스트 디바이스(305)와 메모리 디바이스(310) 사이에서 데이터 시그널링을 전달하도록 구성될 수 있다. 일부 경우에, 데이터 버스(330)는 호스트 핀(335)의 서브세트(예컨대, CP_1b 내지 CP_N), 메모리 핀(345)의 서브세트(예컨대, MDP_1b 내지 MDP_N) 및 송신 라인들(315)의 서브세트(예컨대, TL_1b 내지 TL_N)를 포함한다. 일부 경우에, 데이터 버스(330)를 통해 전달된 데이터 신호는 C/A 버스(325)를 통해 송신된 C/A 신호에 대응한다 - 예컨대, 데이터 신호에서 전달된 데이터 정보를 프로세싱하기 위한 명령어는 이전 C/A 신호에 포함될 수 있다.
도 4는 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하는 것을 지원하는 일 예시적인 메모리 디바이스의 양태를 도시한다.
메모리 디바이스(400)는 호스트 디바이스로부터 수신된 제어 정보에서 오류를 검출하고 오류가 검출되었음을 호스트 디바이스에 보고하도록 구성될 수 있다. 오류가 검출되었음을 호스트 디바이스에 보고하는 것에 더하여, 메모리 디바이스(400)는 메모리 어레이 상태 정보(예컨대, 행 주소 및 뱅크 상태)를 저장하고 호스트 디바이스로 송신하도록 더 구성될 수 있다. 메모리 디바이스(400)는 또한, 손상된 제어 정보를 호스트 디바이스에 전달한 제어 신호의 전부 또는 일부의 버전(예컨대, 사본)을 저장하고 송신하도록 더 구성될 수 있다.
메모리 디바이스(400)는 도 1 내지 도 3을 참조하여 설명된 바와 같이, 메모리 디바이스(110), 메모리 디바이스(200), 및/또는 메모리 디바이스(310)의 일례일 수 있다. 메모리 디바이스(400)는 명령 입력부(403), 주소 입력부(406), 클록 입력부(409), 명령 디코더(412), 명령 검사기(415), 제1 명령 라인(418), 제2 명령 라인(421), 제3 명령 라인(424), 제4 명령 라인(427), 명령 링크(430), 오류 검출 래치(433), 명령 로직(436) 및 주소 로직(439)을 포함할 수 있다. 메모리 디바이스(400)는 또한, 레지스터 파일(442), 명령 레지스터(445), 메모리 상태 출력부(454), 제1 명령 디코더 로직(457), 제2 명령 디코더 로직(460), 제3 명령 디코더 로직(463), 제4 명령 디코더 로직(466), 명령 출력부(469) 및 주소 출력부(472)를 포함할 수 있다.
명령 입력부(403)는 수신된 제어 시그널링/정보에 내장된 명령을 메모리 디바이스(400)의 다른 구성요소에 전달하도록 구성될 수 있다. 일부 경우에, 명령을 표현하는 송신된 제어 신호의 일부는 명령 입력부(403)를 통해 전달된다. 일부 경우에, 메모리 디바이스(400)의 수신기(예컨대, 메모리 트랜시버(340))는 명령 입력부(403)를 통한 명령을 표현하는 송신된 제어 신호의 일부의 수신된 버전을 출력한다. 주소 입력부(406)는 제어 시그널링/정보에 내장된 명령에 대응하는 주소를 메모리 디바이스(400)의 구성요소에 전달하도록 유사하게 구성될 수 있다. 명령 입력부(403) 및 주소 입력부(406)는 함께 메모리 디바이스(400)의 구성요소에 명령 및 주소 시그널링/정보를 제공하도록 구성될 수 있다. 일부 경우에, 명령 입력부(403) 및/또는 주소 입력부(406)는 메모리 디바이스(400)의 구성요소에 오류 검출 정보(예컨대, CRC 및/또는 패리티 비트)를 전달하도록 더 구성될 수 있다. 클록 입력부(409)는 메모리 디바이스(400)의 구성요소에 타이밍 신호(예컨대, 클록)를 전달하도록 구성될 수 있다.
명령 디코더(412)는 명령 입력부(403)를 통해 명령 정보를 수신하고 수신된 제어 정보에 대응하는 명령을 결정하도록 구성될 수 있다. 예를 들면, 명령 디코더(412)는 수신된 명령 정보를 디코딩한 후에 수신된 명령 정보가 ACT, PRE, RD, 또는 WR 명령에 대응한다고 결정할 수 있다.
제1 명령 라인(418), 제2 명령 라인(421), 제3 명령 라인(424), 및 제4 명령 라인(427)은 메모리 디바이스(400) 내의 메모리 어레이에 명령을 전달하도록 구성될 수 있다. 일부 경우에, 수신된 제어 정보에 대응하는 명령을 식별한 후에, 명령 디코더(412)는 특정한 명령 라인을 통해 결정된 명령을 출력할 수 있다. 예를 들면, 명령 디코더(412)는 제1 명령 라인(418)을 통해 ACT 명령, 제2 명령 라인(421)을 통해 PRE 명령, 제3 명령 라인(424)을 통해 RD 명령, 및 제4 명령 라인(427)을 통해 WR 명령을 출력할 수 있다.
제1 명령 디코더 로직(457), 제2 명령 디코더 로직(460), 제3 명령 디코더 로직(463) 및 제4 명령 디코더 로직(466)은 제1 명령 라인(418), 제2 명령 라인(421), 제3 명령 라인(424) 및 제4 명령 라인(427)의 신호를 메모리 디바이스(400)의 메모리 어레이에 중계하거나 이를 차단하도록 구성될 수 있다. 예를 들면, 제1 명령 디코더 로직(457)은 오류 검출 래치(433)의 출력이 제1 명령 디코더 로직(547)에 대해 오류가 검출되었음을 나타내는 경우 제1 명령 라인(418)의 신호가 메모리 어레이에 전달되는 것을 차단하도록 구성될 수 있다.
명령 검사기(415)는 수신된 제어 정보에서 오류를 검출하도록 구성될 수 있다. 일부 경우에, 명령 검사기(415)는 오류 검출 기법을 사용하여 수신된 제어 정보에 오류가 존재한다고 결정할 수 있다. 예를 들면, 명령 검사기(415)는 제어 정보에 포함된 CRC 및/또는 패리티 비트가 수신된 제어 정보와 일치하는지를 확인할 수 있다. 명령 검사기(415)는 수신된 제어 정보에서 오류가 검출되었는지의 여부를 메모리 디바이스(400)의 다른 구성요소에 출력하도록 더 구성될 수 있다. 예를 들면, 명령 검사기(415)는 수신된 제어 정보에서 오류가 검출될 때 특정한 전압(예컨대, 고 전압)을 출력하도록 구성될 수 있다.
오류 검출 래치(433)는 명령 검사기(415)의 출력을 저장하도록 구성될 수 있다. 오류 검출 래치(433)는 또한, 명령 검사기의 출력을 메모리 디바이스(400)의 다른 구성요소에 시그널링하도록 구성될 수 있다. 일부 경우에, 오류 검출 래치(433)는 클록 입력부(409)와 결합되고 클록 입력부(409)를 통해 송신된 신호의 상승 에지가 오류 검출 래치(433)에 등록될 때마다 명령 검사기(415)의 출력을 반복적으로 저장한다. 오류 검출 래치(433)가 명령 검사기(415)의 출력을 저장한 후에, 오류 검출 래치(433)는 또한, 명령 검사기(415)의 출력을 메모리 디바이스(400)의 다른 구성요소에 시그널링할 수 있다. 이러한 방식으로, 오류 검출 래치(433)는 메모리 디바이스(400)의 다른 구성요소에 대한 명령 검사기(415)의 출력의 시그널링을 지연시킬 수 있다.
명령 로직(436)은 오류가 명령 검사기(415)에 의해 검출될 때까지 메모리 디바이스(400)의 다른 구성요소로의 클록 입력부(409)를 통해 송신된 타이밍 신호의 전달을 차단하도록 구성될 수 있다. 예를 들면, 명령 로직(436)은 AND 게이트일 수 있고, 여기서 AND 게이트의 제1 입력부는 클록 입력부(409)에 연결되고 AND 게이트의 제2 입력부는 명령 검사기(415)에 연결된다. AND 게이트는 명령 검사기(415)의 출력이 저 전압인 한(예컨대, 어떠한 오류도 검출되지 않을 때) 저 전압을 출력하도록 구성될 수 있고 클록 입력부(409) 및 명령 검사기의 출력부를 통해 송신된 타이밍 신호가 고 전압일 때(예컨대, 오류가 검출될 때) 고 전압을 출력하도록 구성될 수 있다. 주소 로직(439)은 명령 검사기(415)에 의해 오류가 검출될 때까지 메모리 디바이스(400)의 다른 구성요소로의 클록 입력부(409)를 통해 송신된 타이밍 신호의 전달을 차단하도록 유사하게 구성될 수 있다.
레지스터 파일(442)은 메모리 디바이스(400)에 포함된 메모리 어레이의 현재 상태를 저장하도록 구성될 수 있다. 일부 경우에, 레지스터 파일(442)은 메모리 어레이의 각각의 메모리 뱅크에 대해, 메모리 뱅크에서 액세스된 가장 최근의 행 주소 및 메모리 뱅크의 상태(예컨대, 메모리 뱅크가 개방되는지 또는 폐쇄되는지의 여부)를 저장하도록 구성될 수 있다. 일부 경우에, 레지스터 파일(442)의 콘텐트는 명령 디코더(412)의 출력에 기초하여 업데이트될 수 있다. 예를 들면, 레지스터 파일(442)은 ACT 명령이 명령 디코더(412)에 의해 출력되었다고 결정한 후에 메모리 뱅크에서 액세스된 가장 최근의 행 주소를 업데이트하도록 구성될 수 있다. 레지스터 파일(442)은 ACT 명령이 명령 디코더(412)에 의해 출력되었다고 결정한 후에 ACT 명령에 의해 식별된 메모리 뱅크가 개방됨을 나타내기 위해 플래그를 설정하도록 더 구성될 수 있다. 또 다른 예에서, 레지스터 파일(442)은 메모리 뱅크를 식별하는 PRE 명령이 명령 디코더(412)에 의해 출력되었다고 결정한 후에 메모리 뱅크가 폐쇄됨을 나타내기 위해 플래그를 재설정하도록 구성될 수 있다. 레지스터 파일(442)과 명령 디코더(412) 사이의 이 관계, 제1 명령 라인(418), 및/또는 제2 명령 라인은 명령 링크(430)에 의해 표현될 수 있다. 일부 경우에, 명령 링크는 물리적 연결부(예컨대, 전도성 트레이스)이다.
레지스터 파일(442)은 레지스터 파일(442)의 콘텐트의 적어도 일부를 메모리 상태 출력부(454)을 통해 호스트 디바이스에 시그널링하도록 더 구성될 수 있다 - 예컨대, 명령 검사기(415)에 의해 오류가 검출된 후에. 일부 경우에, 메모리 상태 출력부(454)는 메모리 디바이스(400)와 호스트 디바이스 사이에 데이터를 전달하기 위해 사용된 데이터 송신 라인과 결합된다. 일부 예에서, 레지스터 파일(442)의 콘텐트는 메모리 디바이스(400)와 호스트 디바이스 사이에 데이터를 송신하기 위해 사용된 송신 방식(예컨대, DDR)보다 신뢰 가능한 송신 방식(예컨대, SDR과 같은 더 낮은 비트 오류 레이트와 연관되는 송신 방식)을 사용하여 호스트 디바이스로 송신된다.
명령 레지스터(445)는 제어 신호에 내장된 제어 정보에서 오류가 검출된 후에 명령 입력부(403) 및 주소 입력부(406)를 통해 송신된 제어 신호의 버전(예컨대, 제어 신호의 전부 또는 일부)을 저장하도록 구성될 수 있다. 명령 레지스터는 오류가 검출된 후에 저장된 버전의 제어 신호의 전부 또는 일부를 호스트 디바이스로 송신하도록 더 구성될 수 있다. 일부 경우에, 명령 레지스터(445)는 명령 래치(448) 및 주소 래치(451)를 포함할 수 있다.
명령 래치(448)는 트리거(trigger)가 수신될 때(예컨대, 명령 래치(448)가 인에이블링 입력(enabling input)에서 상승 에지를 검출할 때) 명령 입력부(403)를 통해 송신된 명령 신호를 저장하도록 구성될 수 있다. 상기 논의된 바와 같이, 명령 로직(436)은 명령 검사기(415)에서 오류가 검출될 때까지 클록 입력부(409)를 통해 송신된 타이밍 신호의 입력을 차단할 수 있으며, 여기서 명령 로직의 출력은 오류가 명령 검사기(415)에서 검출될 때 명령 신호의 저장을 트리거링할 수 있다. 주소 래치(451)는 트리거가 수신될 때 주소 입력부(406)를 통해 송신된 주소 신호를 저장하도록 유사하게 구성될 수 있다.
명령 래치(448)는 명령 검사기(415)에 의해 오류가 검출된 후에 명령 출력부(469)을 통해 저장된 명령 신호를 호스트 디바이스에 시그널링하도록 더 구성될 수 있다. 일부 경우에, 명령 출력부(469)는 메모리 디바이스(400)와 호스트 디바이스 사이에 데이터를 전달하기 위해 사용된 데이터 송신 라인과 결합된다. 일부 예에서, 명령 레지스터(445)의 콘텐트는 메모리 디바이스(400)와 호스트 디바이스 사이에 데이터를 송신하기 위해 사용된 송신 방식(예컨대, PAM 4)보다 신뢰 가능한 송신 방식(예컨대, PAM 2와 같은, 더 낮은 비트 오류 레이트와 연관되는 송신 방식)을 사용하여 호스트 디바이스로 송신된다. 주소 래치(451)는 명령 검사기(415)에 의해 오류가 검출된 후에 저장된 주소 신호를 주소 출력부(472)를 통해 호스트 디바이스에 시그널링하도록 유사하게 구성될 수 있다. 일부 경우에, 메모리 디바이스(400)는 (예컨대, 신호 중 단일 신호에서 오류를 검출한 후에, 에너지를 보존하기 위해, 대역폭을 감소시키기 위해 등) 저장된 명령 신호 또는 주소 신호 중 단일 신호를 호스트 디바이스에 시그널링한다.
도 5는 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하기 위한 일 예시적인 타이밍 다이어그램을 도시한다.
타이밍 다이어그램(500)은 클록 신호(505), 명령 신호(510), 및 오류 신호(520)를 포함할 수 있다. 타이밍 다이어그램(500)에 의해 묘사된 신호는 호스트 디바이스로부터 손상된 명령 신호를 송신하는 것과 메모리 디바이스로부터 오류 표시를 수신하는 것 사이의 지속기간을 결정하기 위한 트레이닝 절차의 양태를 표현할 수 있다.
클록 신호(505)는 호스트 디바이스 및/또는 메모리 디바이스의 구성요소에 제공되는 하나 이상의 타이밍 신호를 표현할 수 있으며, 여기서 타이밍 신호는 구성요소에서의 동작의 타이밍을 동기화하기 위해 사용될 수 있다. 일부 경우에, 클록 신호(505)는 도 4를 참조하여 설명된 바와 같이, 시간에 따른 클록 입력부(409)의 전압을 표현한다.
명령 신호(510)는 호스트 디바이스로부터 메모리 디바이스로의 하나 이상의 명령의 송신을 표현할 수 있다. 일부 경우에, 명령 신호(510)는 도 4를 참조하여 설명된 바와 같이, 시간에 따른 명령 입력부(403) 및/또는 주소 입력부(406)를 통해 송신된 하나 이상의 신호를 표현한다. 예를 들면, 명령 신호(510)는 다수의 명령 라인을 통해 다수의 전압을 포함하는 신호의 송신을 표현할 수 있으며, 여기서 신호의 조합된 전압의 패턴은 메모리 명령에 대응한다. 트레이닝 명령(515)은 명령 신호(510)로 송신될 수 있다. 일부 경우에, 트레이닝 명령(515)은 의도적으로 일치하지 않는 제어 및 오류 검출 정보를 포함하는 명령일 수 있다. 호스트 디바이스는 불량 명령을 송신하는 것과 명령이 메모리 디바이스에서 부적절하게 수신되었다는 표시(예컨대, 오류 표시(525))를 수신하는 것 사이의 지속기간을 결정하기 위해 트레이닝 명령(515)을 송신하도록 구성될 수 있다. 이 지속기간은 보고 간격(530)에 의해 표현될 수 있다. 메모리 디바이스에서 수신된 손상된 명령과 달리, 메모리 디바이스는 트레이닝 명령(515)을 수신된 후에 잠금 상태에 진입하지 않도록 구성될 수 있다.
오류 신호(520)는 메모리 디바이스로부터 호스트 디바이스로의 하나 이상의 오류 신호의 송신을 표현할 수 있다. 일부 경우에, 오류 신호(520)는 전용 오류 라인을 통해 송신된다. 다른 경우에, 오류 신호(520)는 하나 이상의 데이터 라인 또는 제어 라인을 통해 송신된다. 오류 표시(525)는 오류 신호(520)에 포함될 수 있다. 메모리 디바이스는 트레이닝 명령(515) 및/또는 손상된 명령이 호스트 디바이스로부터 수신되었다고 결정한 후에 오류 표시(525)를 송신하도록 구성될 수 있다. 오류 표시(525)를 송신함으로써, 메모리 디바이스는 명령이 - 예컨대, 송신 오류, 수신 오류 및/또는 디코딩 오류로 인해 메모리 디바이스에서 부정확하게 수신되었음을 호스트 디바이스에 보고할 수 있다. 트레이닝 명령(515)을 송신한 후에 호스트 디바이스가 오류 표시(525)를 수신할 때, 호스트 디바이스는 트레이닝 명령(515)을 송신하는 것과 오류 표시(525)를 수신하는 것 사이의 시간으로서 보고 간격(530)을 결정할 수 있다.
제어 정보의 후속 송신에서, 호스트 디바이스는 어떤 송신된 명령이 어떤 오류 표시에 대응하는지를 식별하기 위해 보고 간격(530)을 사용할 수 있다. 예를 들면, 호스트 디바이스는 메모리 디바이스로부터 오류 표시를 수신할 수 있다. 호스트 디바이스는 그 다음, 오류 표시가 수신되기 전에 보고 간격(530)과 등가인 지속기간 동안 송신된 명령을 식별할 수 있다. 명령을 식별한 후에, 호스트 디바이스는 메모리 디바이스에서의 명령에서 오류가 검출되었다고 결정할 수 있다. 그리고 명령에서 오류가 검출되었다고 결정한 후에, 호스트 디바이스는 명령에서의 오류의 원인(예컨대, 송신 오류, 타이밍 오류, 신호 레인 오류, 수신 오류, 디코딩 오류, 간섭 등)을 진단할 수 있다.
상기 제안된 바와 같이, 오류 표시(525)는 다수의 상이한 방식으로 호스트 디바이스에 표시될 수 있다. 예를 들면, 메모리 디바이스는 메모리 디바이스에서 전용 오류 핀을 통해 특정한 전압(예컨대, 고 또는 저)을 호스트 디바이스로 송신할 수 있으며, 호스트 디바이스는 호스트에서 대응하는 오류 핀을 통해 특정한 전압을 검출한 것에 기초하여 오류가 발생했다고 결정할 수 있다. 또 다른 예에서, 메모리 디바이스는 오류가 검출될 때 기존 송신 라인(예컨대, 데이터 및/또는 제어 라인)을 통해 특정한 패턴의 전압을 호스트 디바이스로 송신할 수 있으며, 호스트 디바이스는 용도가 변경된 송신 라인을 통해 특정한 전압 패턴을 검출한 것에 기초하여 오류가 발생했다고 결정할 수 있다. 유사하게, 또 다른 예에서, 메모리 디바이스는 오류가 검출될 때 기존 송신 라인을 통해 특정한 시퀀스의 전압(또는 "패턴 시퀀스")을 송신할 수 있으며, 호스트 디바이스는 패턴 시퀀스를 검출한 것에 기초하여 오류가 발생했다고 결정할 수 있다. 또 다른 예에서, 메모리 디바이스는 반전된 체크섬으로 데이터를 호스트 디바이스로 송신함으로써 호스트에 오류를 나타낼 수 있다.
도 6은 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하는 것을 지원하는 일 예시적인 메모리 디바이스의 양태를 도시한다.
메모리 디바이스(600)는 하나 이상의 잠금 타이머가 비활성일 때까지 명령에서 오류가 검출된 후에 잠금 상태에 진입하는 것을 억제하도록 구성될 수 있다. 잠금 상태에 진입하기 전에 대기함으로써, 메모리 디바이스(600)는 오류가 검출되기 전에 성공적으로 수신된 명령이 적절하게 실행되는 것을 가능하게 할 수 있다.
메모리 디바이스(600)는 도 1 내지 도 4를 참조하여 설명된 바와 같이, 메모리 디바이스(110), 메모리 디바이스(200), 메모리 디바이스(310) 및/또는 메모리 디바이스(400)의 일례일 수 있다. 메모리 디바이스(600)는 명령 디코더(605), 명령 라인(610), 오류 라인(615), 제1 로직 구성요소(620), RAS 잠금 타이머(625), WR 잠금 타이머(630), RD 잠금 타이머(635) 및 제2 로직 구성요소(640)를 포함할 수 있다.
명령 디코더(605)는 수신된 명령에서 오류를 디코딩하고/하거나 검출하도록 구성될 수 있다. 잠금 상태에 진입하는 메모리 디바이스(600)의 일부로서, 명령 디코더(605)는 수신된 명령에서 오류가 검출된 후에 메모리 디바이스(600)의 모든 메모리 뱅크로 하여금 사전 충전되게 하는 명령("PREALL 명령")을 송신하도록 더 구성될 수 있다. 명령 디코더(605)는 도 4를 참조하여 설명된 바와 같이 명령 디코더(412) 및/또는 명령 검사기(415)의 일례일 수 있다.
명령 라인(610)은 메모리 디바이스(600)의 메모리 어레이에 PREALL 명령을 전달하도록 구성될 수 있다. 일부 경우에, 명령 디코더(605)는 수신된 명령에서 오류가 검출된 후에 명령 라인(610)을 통해 PREALL 명령의 표시를 시그널링할 수 있다. 오류 라인(615)은 메모리 디바이스(600)의 메모리 어레이에 오류 표시를 전달하도록 구성될 수 있다. 일부 경우에, 명령 디코더(605)는 수신된 명령에서 오류가 검출된 후에 오류 라인(615)을 통해 오류 표시를 시그널링할 수 있다.
제1 로직 구성요소(620)는 제1 로직 구성요소(620)의 모든 입력이 활성화될 때(예컨대, 명령 디코더(605)가 명령 라인(610)을 통해 PREALL 명령을 나타내고 오류 라인(615)을 통해 오류 표시를 송신할 때) 명령 라인을 통해 송신된 신호를 메모리 어레이로 중계하도록 구성될 수 있다. 제1 로직 구성요소(620)는 또한, 제1 로직 구성요소(620)의 입력부가 활성화되지 않을 때 명령 라인(610)의 신호의 송신을 차단하도록 구성될 수 있다. 일부 경우에, 제1 로직 구성요소(620)는 AND 게이트를 포함한다.
RAS 잠금 타이머(625)는 ACT 명령의 실행이 완료된 후까지 메모리 디바이스(600)가 잠금 상태에 진입하는 것을 방지함으로써 ACT 명령의 동작을 보호하도록 구성될 수 있다. 예를 들면, RAS 잠금 타이머(625)는 ACT 명령이 명령 디코더(605)에 의해 디코딩되었다는 표시를 명령 디코더(605)로부터 수신된 후에 개시될 수 있다. 명령 디코더(605)로부터 표시를 수신된 후에, RAS 잠금 타이머(625)는 타이머를 개시하도록 구성될 수 있고, 여기서 타이머는 후속 대응하는 PRE 명령의 송신까지 ACT 명령의 전체 실행을 포함하는 지속기간 동안 활성일 수 있다. RAS 잠금 타이머(625)가 활성인 한, 제2 로직 구성요소(640)는 제1 로직 구성요소(620)로 하여금 명령 라인(610)의 신호를 메모리 어레이로 중계하는 것을 차단하게 하는 출력을 생성하도록 구성될 수 있다.
WR 잠금 타이머(630)는 WR 명령의 실행이 완료된 후까지 메모리 디바이스(600)가 잠금 상태에 진입하는 것을 방지함으로써 WR 명령의 동작을 보호하도록 유사하게 구성될 수 있다. 예를 들면, WR 잠금 타이머(630)는 WR 명령이 명령 디코더(605)에서 수신된 후에 개시될 수 있고 WR 명령의 전체 실행을 포함하는 지속기간 동안 활성이 되도록 구성될 수 있다. WR 잠금 타이머(630)가 활성인 한, 제2 로직 구성요소(640)는 제1 로직 구성요소(620)로 하여금 명령 라인(610)의 신호를 메모리 어레이로 중계하는 것을 차단하게 하는 출력을 생성하도록 구성될 수 있다.
RD 잠금 타이머(635)는 RD 명령의 실행이 완료된 후까지 메모리 디바이스(600)가 잠금 상태에 진입하는 것을 방지함으로써 RD 명령의 동작을 보호하도록 유사하게 구성될 수 있다. 예를 들면, RD 잠금 타이머(635)는 RD 명령이 명령 디코더(605)에서 수신된 후에 개시될 수 있고 RD 명령의 전체 실행을 포함하는 지속기간 동안 활성이 되도록 구성될 수 있다. RD 잠금 타이머(635)가 활성인 한, 제2 로직 구성요소(640)는 제1 로직 구성요소(620)로 하여금 명령 라인(610)의 신호를 메모리 어레이로 중계하는 것을 차단하게 하는 출력을 생성하도록 구성될 수 있다.
특정한 명령에 대응하는 다수의 잠금 타이머를 가짐으로써, 메모리 디바이스는 명령 오류를 검출하고 잠금 상태에 진입하는 것과 연관된 레이턴시(latency)를 감소시킬 수 있다. 다른 잠금 타이머는 유사하게, 메모리 디바이스(600)에서 구현될 수 있다. 일부 경우에, 상이한 명령에 대한 개별적인 잠금 타이머를 갖는 대신에, 메모리 디바이스(600)는 메모리 동작의 가장 긴 실행을 포함하는 지속기간 동안 활성화되는 단일 잠금 타이머를 포함할 수 있다.
도 7은 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하기 위한 일 예시적인 흐름도를 도시한다. 흐름도(700)는 오류가 검출된 후에 잠금 상태에 진입하고 종료하며 수신된 제어 정보에서 오류가 검출되었음을 호스트 디바이스에 보고하기 위한 메모리 디바이스에서의 방법의 양태를 도시할 수 있다. 메모리 디바이스는 도 1 내지 도 4 및 도 6을 참조하여 설명된 바와 같이, 메모리 디바이스(200), 메모리 디바이스(310), 메모리 디바이스(400) 및/또는 메모리 디바이스(600)의 일례일 수 있다. 그리고 호스트 디바이스는 도 1 및 도 3을 참조하여 설명된 바와 같이 외부 메모리 제어기(105), 프로세서(120) 및/또는 호스트 디바이스(305)의 일례일 수 있다.
(705)에서, 메모리 디바이스는 호스트 디바이스로부터 제어 정보를 수신할 수 있다. 일부 경우에, 메모리 디바이스는 트랜시버에서 제어 정보를 포함하는 제어 신호를 수신할 수 있다. 제어 정보는 명령, 주소, 및/또는 오류 검출 정보를 포함할 수 있다.
(710)에서, 제어 정보를 수신된 후에, 메모리 디바이스는 수신된 제어 정보에 오류가 존재하는지의 여부를 결정할 수 있다. 일부 경우에, 메모리 디바이스는 제어 정보에 포함된 CRC 비트를 사용하여 오류가 존재하는지의 여부를 결정한다. 예를 들면, 메모리 디바이스는 제어 정보에 기초하여 CRC 비트(또는 체크섬)를 생성할 수 있고 그 다음, 생성된 CRC 비트를 수신된 CRC 비트와 비교할 수 있다. 생성되고 수신된 CRC 비트가 매칭하면, 메모리 디바이스는 수신된 제어 정보에 어떠한 오류도 존재하지 않는다고(즉, 제어 정보가 성공적으로 수신되었거나, 제어 정보의 전달 동안 어떠한 오류도 발생하지 않았다고) 결정할 수 있다. 그렇지 않으면, 생성되고 수신된 CRC 비트가 매칭하지 않으면, 메모리 디바이스는 수신된 제어 정보에 오류가 존재한다고 결정할 수 있다. 유사하게, 메모리 디바이스는 제어 정보에 포함된 패리티 비트를 사용하여 오류가 존재하는지의 여부를 결정할 수 있다. 예를 들면, 메모리 디바이스는 패리티 비트의 값에 기초하여 수신된 제어 정보가 홀수 또는 짝수 패리티를 갖는지의 여부를 결정할 수 있다. 패리티 비트의 값이 수신된 제어 정보가 짝수 패리티를 가지고 있음을 나타내고 메모리 디바이스가 수신된 제어 정보가 짝수 패리티를 갖는다고 결정하면, 메모리 디바이스는 수신된 제어 정보에 어떠한 오류도 존재하지 않는다고 결정할 수 있다. 그렇지 않으면, 패리티 비트의 값이 수신된 제어 정보가 짝수 패리티를 가지고 있음을 나타내고 메모리 디바이스가 수신된 제어 정보가 홀수 패리티를 갖는다고 결정하거나, 그 반대의 경우에, 메모리 디바이스는 수신된 제어 정보에 오류가 존재한다고 결정할 수 있다.
수신된 제어 정보에서 오류가 검출되면, 메모리 디바이스는 (715) 내지 (730)에서 논의된 동작을 수행할 수 있다.
(715)에서, 메모리 디바이스는 메모리 디바이스의 구성요소로 하여금 제한된 상태에 진입하게 하도록 구성되는 잠금 비트를 설정할 수 있다. 예를 들면, 잠금 비트는 메모리 어레이가 불량 명령 및 메모리 디바이스에서 수신된 임의의 후속 명령을 실행하는 것을 방지할 수 있다. 일부 경우에, 잠금 비트를 설정하는 것은 잠금 비트에 논리 1을 저장하는 것을 포함한다. 일부 경우에, 메모리 디바이스는 또한, 손상된 제어 정보를 전달한 수신된 제어 신호의 적어도 일부(예컨대, 이의 사본)를 저장할 수 있다.
(720)에서, 메모리 디바이스는 수신된 제어 정보의 수신/디코딩 동안 오류가 발생했음을 호스트 디바이스에 경고할 수 있다. 예를 들면, 메모리 디바이스는 전용 핀을 통해 또는 메모리 디바이스와 호스트 디바이스 사이의 데이터 및/또는 제어 시그널링을 위해 또한 사용되는 핀을 통해 특정한 패턴의 전압 또는 시퀀스 패턴을 시그널링함으로써 오류가 발생했다는 표시를 송신할 수 있다. 또 다른 예에서, 메모리 디바이스는 반전된 체크섬으로 데이터를 호스트 디바이스로 송신함으로써 호스트에게 경고할 수 있다.
일부 경우에, 호스트 디바이스에 경고하는 것은 제어 정보에서 오류가 검출되기 이전에/검출된 때 메모리 어레이의 상태를 호스트로 송신하는 것을 포함할 수 있다. 추가적으로 또는 대안적으로, 호스트 디바이스에 경고하는 것은 손상된 제어 정보를 전달한 수신된 제어 신호의 사본의 전부 또는 일부를 호스트로 송신하는 것을 포함할 수 있다.
(725)에서, 메모리 디바이스는 오류를 검출한 것에 기초하여 메모리 디바이스에 위치된 메모리 뱅크를 폐쇄할 수 있다. 일부 경우에, 메모리 디바이스는 메모리 뱅크를 폐쇄하기 전에 하나 이상의 잠금 타이머가 만료되거나 비활성화된 상태가 될 때까지 대기한다.
(730)에서, 메모리 디바이스는 메모리 뱅크가 주기적으로 리프레시되어 메모리 뱅크의 메모리 셀에 저장된 상태를 유지하고 호스트 디바이스가 장애를 분석하는 동안 데이터 콘텐트의 손실을 방지하는 자체 리프레시 모드에 진입할 수 있다.
수신된 제어 정보에서 어떠한 오류도 검출되지 않으면, 메모리 디바이스는 (735)에서 논의된 동작을 수행할 수 있다.
(735)에서, 메모리 디바이스는 메모리 디바이스가 현재 잠금 상태에 있는지의 여부를 결정할 수 있다 - 예컨대, 명령 오류를 이전에 식별한 것에 기초하여. 일부 경우에, 메모리 디바이스는 잠금 비트가 설정됨을 식별한 것에 기초하여 메모리 디바이스가 잠금 상태에 있다고 결정할 수 있다.
오류 없는 제어 정보가 수신될 때 메모리 디바이스가 현재 잠금 상태에 있는 경우, 메모리 디바이스는 (740) 내지 (745)에서 논의된 동작을 수행할 수 있다.
(740)에서, 메모리 디바이스는 잠금 비트를 재설정할 수 있다. 일부 경우에, 잠금 비트를 재설정하는 것은 잠금 비트에 논리 0을 저장하는 것을 포함한다. 일부 경우에, 메모리 디바이스는 수신된 제어 정보가 UNLOCK 명령을 포함한다고 결정한 것에 기초하여 잠금 비트를 재설정할 수 있다. 일부 경우에, 메모리 디바이스는 제어 정보에서 UNLOCK 명령이 수신되면 잠금 비트를 재설정할 수 있다.
(745)에서, 메모리 디바이스는 잠금 비트를 재설정한 것에 기초하여 자체 리프레시/잠금 모드를 종료할 수 있다(즉, 잠금 해제 또는 정상 모드에 진입할 수 있다). 정상 동작으로 되돌아간 후에, 메모리 디바이스는 호스트 디바이스로부터 수신된 제어 정보를 계속 프로세싱하고 실행할 수 있다.
오류 없는 제어 정보가 수신될 때 메모리 디바이스가 현재 잠금 해제 상태에 있으면, 메모리 디바이스는 (750) 내지 (785)에서 논의된 동작을 수행할 수 있다.
(750)에서, 메모리 디바이스는 수신된 제어 정보가 ACT 명령을 포함하는지의 여부를 결정할 수 있다. 일부 경우에, 메모리 디바이스는 (예컨대, 도 4를 참조하여 설명된 바와 같이, 제1 명령 라인(418)과 같은 전용 명령 라인을 통해) 메모리 디바이스의 명령 디코더가 ACT 명령이 디코딩되었음을 나타낸 것에 기초하여 ACT 명령이 수신된다고 결정할 수 있다.
제어 정보에서 ACT 명령이 수신되면, 메모리 디바이스는 (755), (760) 및 (785)에서 논의된 동작을 수행할 수 있다.
(755)에서, ACT 명령이 제어 정보에서 수신되었다고 결정한 후에, 메모리 디바이스는 제어 정보에서 수신된 주소에 의해 표시된 메모리 뱅크의 메모리 셀의 행을 개방할 수 있다.
(760)에서, 메모리 뱅크에서 메모리의 행을 개방한 후에, 메모리 디바이스는 도 3을 참조하여 설명된 레지스터 파일과 같은 레지스터 파일에 메모리 셀의 행에 대응하는 행 주소를 저장할 수 있고, 메모리 뱅크의 상태를 개방되는 것으로서 업데이트할 수 있다. 일부 경우에, 메모리 셀의 행을 개방하고, 행 주소를 저장하며, 메모리 뱅크의 상태를 업데이트하는 것은 동시에 또는 상이한 순서로 수행될 수 있다.
제어 정보에서 ACT 명령이 수신되지 않으면, 메모리 디바이스는 (765)에서 논의된 동작을 수행할 수 있다.
(765)에서, 메모리 디바이스는 제어 정보에서 PRE 명령이 수신되었는지의 여부를 결정할 수 있다. 일부 경우에, 메모리 디바이스는 (예컨대, 도 4를 참조하여 설명한 바와 같이, 제2 명령 라인(421)과 같은 전용 명령 라인을 통해) 메모리 디바이스의 명령 디코더가 PRE 명령이 디코딩되었음을 나타낸 것에 기초하여 PRE 명령이 수신된다고 결정할 수 있다.
제어 정보에서 PRE 명령이 수신되면, 메모리 디바이스는 (770), (775), 및 (785)에서 논의된 동작을 수행할 수 있다.
(770)에서, 제어 정보에서 PRE 명령이 수신되었다고 결정한 후에, 메모리 디바이스는 제어 정보에서 수신된 주소에 의해 표시된 메모리 뱅크의 메모리 셀의 행을 폐쇄할 수 있다.
(775)에서, 메모리 셀의 행을 폐쇄한 후에, 메모리 디바이스는 레지스터 파일에서, 주소에 의해 폐쇄된 것으로서 표시된 메모리 뱅크의 상태를 업데이트할 수 있다. 일부 경우에, 메모리 셀의 행을 폐쇄하고 메모리 뱅크의 상태를 업데이트하는 것은 동시에 또는 상이한 순서로 수행될 수 있다.
제어 정보에서 PRE 명령이 수신되지 않으면, 메모리 디바이스는 (780) 및 (785)에서 논의된 동작을 수행할 수 있다.
(780)에서, 메모리 디바이스는 오류 없는 제어 정보에 ACT 또는 PRE 명령 이외의 명령 - 예컨대, WR 명령, RD 명령 등이 포함된다고 결정할 수 있다. 그에 따라, 메모리 디바이스는 수신된 명령을 실행할 수 있다.
(785)에서, 메모리 디바이스는 - 예컨대, 도 6을 참조하여 논의된 바와 같이, 메모리 디바이스가 후속적으로 수신된 제어 정보에서 오류가 검출될 때 메모리 뱅크를 조기에 폐쇄하는 것을 방지하기 위해 수신된 오류 없는 명령과 연관된 잠금 타이머를 재설정할 수 있다. 예를 들면, 메모리 디바이스가 ACT 명령을 수신하면, 메모리 디바이스는 RAS 잠금 타이머의 동작을 초기로 재설정하고 트리거링할 수 있어서 RAS 잠금 타이머가 만료된 후까지 메모리 디바이스가 잠금 상태에 진입하지 않게 할 것이다. 메모리 디바이스는 유사하게, 제어 정보에서 대응하는 명령을 수신한 것에 기초하여 WR 잠금 타이머, RD 잠금 타이머, 또는 임의의 다른 잠금 타이머를 재설정하고 트리거링할 수 있다.
도 8은 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하기 위한 일 예시적인 프로세스 흐름을 도시한다. 프로세스 흐름(800)은 도 1 내지 도 4를 참조하여 본 명세서에서 설명된 바와 같이 호스트 디바이스(105 또는 305) 및 메모리 디바이스(110, 200, 310, 또는 400)의 일례일 수 있는 호스트 디바이스(805) 및 메모리 디바이스(810)에 의해 수행될 수 있다. 일부 예에서, 메모리 디바이스(810)는 호스트 디바이스(805)가 오류의 원인을 진단하는 것을 가능하게 하는 정보(예컨대, 수신된 제어 신호)와 함께 메모리 디바이스(810)에서 오류가 발생할 때를 호스트 디바이스(805)에 보고할 수 있다. 일부 예에서, 메모리 디바이스(810)는 또한, 오류가 발생하기 전에/발생할 때 메모리 어레이의 상태를 보고할 수 있어서, 호스트 디바이스(805)가 오류가 진단된 후에 보고된 상태로 메모리 어레이를 되돌리는 것을 가능하게 한다.
(815)에서, 호스트 디바이스(805)는 메모리 디바이스(810), 및 메모리 디바이스(810)에 제어 시그널링을 송신할 수 있다. 제어 시그널링은 메모리 디바이스(810)에서 메모리 어레이를 동작시키기 위한 제어 정보를 포함할 수 있으며, 여기서 제어 정보는 명령 및/또는 메모리 주소를 포함할 수 있다. 일부 경우에, 제어 정보는 또한, 수신 디바이스가 수신된 제어 정보에서 오류를 검출하고/하거나 복구하는 것을 가능하게 하는 오류 검출/정정 정보(예컨대, 패리티 및/또는 순환 중복 검사(CRC) 비트)를 포함할 수 있다. 일부 경우에, 제어 시그널링을 송신하기 전에, 호스트 디바이스(805)는 메모리 디바이스(810)에서 메모리 어레이를 동작시키기 위한 제어 정보를 결정할 수 있다. 예를 들면, 호스트 디바이스(805)는 사용자 애플리케이션으로부터 메모리에 저장된 정보에 액세스하기 위한 요청을 수신한 것에 응답하여 메모리 디바이스(810)에 대한 제어 정보를 생성할 수 있다.
메모리 디바이스(810)는 호스트 디바이스(805)로부터 제어 시그널링을 수신하고 프로세싱할 수 있다. 일부 경우에, 메모리 디바이스(810)는 명령 및/또는 메모리 주소를 식별하기 위해 수신된 제어 시그널링에 내장된 제어 정보를 디코딩할 수 있다. 메모리 디바이스(810)는 그 다음, 메모리 디바이스(810)에서 메모리 어레이의 식별된 메모리 주소에서 식별된 명령을 실행할 수 있다 - 예컨대, 메모리 디바이스는 식별된 메모리 주소에서 시작하는 메모리의 페이지를 판독할 수 있다. 메모리 디바이스(810)는 또한, 제어 정보에 대한 오류 검출을 수행하고 수신된 제어 신호가 손상되었는지의 여부를(예컨대, 송신 또는 수신 동안) 결정하기 위해 오류 검출 정보를 사용할 수 있다. 일부 경우에, 오류가 검출되면, 메모리 디바이스(810)는 식별된 명령을 실행하는 것을 억제할 수 있고 오류가 수신되었음을 호스트 디바이스에 나타낼 수 있다.
(820)에서, 메모리 디바이스(810)는 제어 시그널링에 내장된 제어 정보를 프로세싱할 수 있다. 제어 정보를 프로세싱하는 것은 레지스터 파일에 수신된 메모리 주소(예컨대, 행 또는 열 주소)를 저장하는 것을 포함할 수 있다. 제어 정보를 프로세싱하는 것은 또한, 메모리 디바이스(810)의 메모리 어레이에 메모리 뱅크의 상태를 저장하는 것을 포함할 수 있다. 예를 들면, 메모리 디바이스(810)는 ACT 명령 및 메모리 뱅크에서 하나 이상의 메모리 셀을 식별하는 행 주소를 포함하는 제어 정보를 수신할 수 있다. 일부 경우에, 행 주소는 메모리 페이지에 대응할 수 있다. 제어 정보를 성공적으로 디코딩한 후에, 메모리 디바이스(810)는, 하나 이상의 메모리 셀에 대해 ACT 명령을 실행할 수 있어서, (예컨대, 대응하는 워드 라인을 활성화시킴으로써) 대응하는 디지트 라인에 대해 하나 이상의 메모리 셀을 개방한다. 부가적으로, 메모리 디바이스(810)는 레지스터 파일에 행 주소를 저장할 수 있고 또한, 하나 이상의 메모리 셀을 포함하는 메모리 뱅크가 개방됨을 나타내는 플래그를 설정할 수 있다. 메모리 디바이스(810)는 수신되는 메모리 주소 및 후속 명령에 대해 이 프로세스를 반복할 수 있다. 일부 예에서, 메모리 디바이스(810)는 메모리 뱅크에 가장 최근의 액세스 메모리 주소를 저장하고 메모리 어레이의 각각의 메모리 뱅크에 대한 메모리 뱅크의 상태(예컨대, 개방되거나 폐쇄됨)를 나타내는 플래그를 설정한다.
일부 경우에, 메모리 디바이스(810)는 레지스터 파일에 행 주소를 단지 저장한다. 일부 경우에, 메모리 디바이스(810)는 대응하는 ACT 명령이 수신될 때 레지스터 파일에 행 주소를 단지 저장한다. 일부 예에서, 메모리 디바이스(810)는 메모리 뱅크에 대한 PRE 명령을 수신된 후에 메모리 뱅크의 상태를 업데이트할 수 있다 - 예컨대, 메모리 뱅크가 폐쇄됨을 나타내기 위해 플래그를 설정할 수 있다. 메모리 뱅크에서 액세스된 가장 최근의 메모리 주소 및 메모리 뱅크의 현재 상태를 저장함으로써, 메모리 디바이스(810)는 메모리 어레이의 상태를 지속적으로 모니터링할 수 있다 - 예컨대, 메모리 뱅크가 개방되고 폐쇄되는 메모리 페이지를 항상 알 수 있다.
(825)에서, 호스트 디바이스(805)는 제어 시그널링을 메모리 디바이스(810)로 송신할 수 있다. 제어 시그널링은 명령, 메모리 주소, 및/또는 오류 검출/정정 정보를 포함할 수 있다. 일부 경우에, 제어 신호 - 명령, 메모리 주소, 및 오류 검출/정정 정보를 포함함 - 는 (예컨대, 간섭, 송신 오류, 타이밍 오류, 또는 신호 레인 오류, 또는 이의 임의의 조합으로 인해) 송신 전에 또는 그 동안 손상될 수 있다. 메모리 디바이스(810)는 호스트 디바이스(805)로부터 제어 시그널링을 수신하고 프로세싱할 수 있다. 일부 경우에, 메모리 디바이스(810)는 제어 신호를 부정확하게 수신하거나 손상된 제어 신호를 수신한다.
(830)에서, 제어 신호를 부정확하게 수신하거나 손상된 제어 신호를 수신한 후에, 메모리 디바이스는 제어 신호 내의 제어 정보를 디코딩할 수 있고 오류에 대한 제어 정보를 확인할 수 있다. 오류에 대한 제어 정보를 확인하기 위해, 메모리 디바이스(810)는 하나 이상의 오류 검출 기법을 사용할 수 있다. 예를 들면, 메모리 디바이스(810)는 명령 및/또는 메모리 주소가 정확하게 수신되었는지의 여부를 결정하기 위해 제어 정보에 포함된 CRC 비트를 사용할 수 있다 - 예컨대, 명령 및 메모리 주소 비트로부터 체크섬을 계산하고 계산된 체크섬을 CRC 비트와 비교함으로써. 또 다른 예에서, 메모리 디바이스(810)는 명령 및/또는 메모리 주소가 정확하게 수신되었는지의 여부를 결정하기 위해 제어 정보에 포함된 패리티 비트를 확인할 수 있다 - 예컨대, 명령 및/또는 메모리 주소가 짝수 또는 홀수 패리티를 갖는지의 여부를 결정하고 결정된 패리티를 수신된 패리티 비트와 비교함으로써.
일부 경우에, 메모리 디바이스(810)는 오류 검출을 수행한 것에 기초하여 제어 신호의 수신된 제어 정보에서 오류를 검출한다. 일부 예에서, 메모리 디바이스(810) 내의 오류 검출 구성요소는 오류를 검출한 것에 기초하여 출력(예컨대, 고 출력 전압)을 생성할 수 있다. 오류 검출 구성요소는 또한, 메모리 디바이스(810) 내의 하나 이상의 다른 구성요소에 출력을 시그널링할 수 있다.
(835)에서, 수신된 제어 신호에 포함된 제어 정보에서 오류가 검출된 후에("손상된" 또는 "불량" 제어 신호로서 또한 언급될 수 있음), 메모리 디바이스(810)는 메모리 디바이스(810)의 명령 레지스터에 수신된 제어 신호, 또는 수신된 제어 신호의 버전을 저장할 수 있다. 일부 예에서, 메모리 디바이스(810)는 모든 수신된 제어 신호의 사본(예컨대, 명령, 주소, 및 오류 검출/정정 정보)을 명령 레지스터에 저장할 수 있다. 또 다른 예에서, 메모리 디바이스(810)는 수신된 제어 신호의 일부(예컨대, 명령 및 메모리 부분 또는 단지 명령 부분)를 명령 레지스터에 저장할 수 있다. 일부 경우에, 메모리 디바이스(810)는 제어 신호에서 오류가 검출되었음을 나타내는 오류 검출 구성요소로부터의 출력 신호를 수신한 것에 기초하여 수신된 제어 신호를 명령 레지스터에 저장한다. 손상된 제어 신호를 저장함으로써, 메모리 디바이스(810)는 제어 신호로 하여금 불량이 되는 원인(예컨대, 간섭, 송신 오류, 수신 오류, 타이밍 오류, 및/또는 신호 레인 오류)을 진단하기 위해 호스트 디바이스(805)에 의해 요청되고 사용될 수 있는 수신된 제어 신호의 사본을 절약할 수 있다. 메모리 디바이스(810)는 또한, 제어 정보에서 오류를 검출한 것에 기초하여 불량 제어 신호에서 수신된 명령을 실행하는 것을 억제할 수 있다.
(840)에서, 메모리 디바이스(810)는 제어 정보를 디코딩하는 동안 오류가 식별되었다는 표시를 호스트 디바이스(805)로 송신할 수 있다. 일부 경우에, 표시는 발생한 오류를 식별하지 않지만, 대신에 메모리 디바이스(810)에서 오류가 발생했음을 식별한다. 일부 경우에, 메모리 디바이스(810)는 메모리 디바이스(810)의 전용 핀을 통해 표시를 송신하고 호스트 디바이스는 전용 핀을 통해 표시를 수신한다. 또 다른 예에서, 메모리 디바이스는 데이터 또는 제어 핀과 같은, 다른 기능을 위해 사용되는 메모리 디바이스(810)의 핀을 통해 표시를 송신한다. 데이터 또는 제어 핀이 사용될 때, 메모리 디바이스(810)는 핀을 통해 특정한 패턴을 송신할 수 있으며(예컨대, 핀 중 하나 이상에 특정한 전압을 인가함으로써), 호스트 디바이스(805)는 특정한 패턴을 수신하고 식별한 것에 기초하여 메모리 디바이스(810)에서 오류가 발생했다고 결정할 수 있다. 또 다른 예에서, 메모리 디바이스(810)는 하나 이상의 핀을 통해 패턴 시퀀스(예컨대, 일련의 연속적인 고 및/또는 저 전압)를 송신함으로써 표시를 송신할 수 있고, 호스트 디바이스(805)는 패턴 시퀀스를 수신하고 식별한 것에 기초하여 메모리 디바이스(810)에서 오류가 발생했다고 결정할 수 있다.
(845)에서, 메모리 디바이스(810)에서 오류가 발생했음을 식별한 후에, 호스트 디바이스(805)는 메모리 디바이스(810)에 저장된 손상된 제어 신호 및/또는 메모리 디바이스(810)의 메모리 뱅크의 상태를 요청한다.
(850)에서, 메모리 디바이스(810)는 손상된 제어 신호 또는 손상된 제어 신호의 버전(예컨대, 수신된 제어 신호의 사본 또는 일부)을 호스트 디바이스(805)로 송신할 수 있다. 일부 경우에, 오류가 검출된 후에, 메모리 디바이스(810)는 손상된 제어 신호를 저장하지 않고 및 호스트 디바이스(805)로부터 요청을 수신하지 않고 손상된 제어 신호의 전부 또는 일부를 호스트 디바이스(805)로 다시 송신한다 - 예컨대, 수신된 신호를 메모리 디바이스(810)의 송신기로 재라우팅함으로써. 예를 들면, 메모리 디바이스(810)는 (840)에서 송신된 오류의 표시와 함께 손상된 제어 신호를 호스트 디바이스(805)로 다시 송신할 수 있다. 다른 경우에, 메모리 디바이스(810)는 메모리 디바이스(810)에 저장된 손상된 제어 신호를 판독하기 위해 호스트 디바이스(805)로부터 요청을 수신된 후에 메모리 디바이스(810)에 저장된 손상된 제어 신호를 송신한다. 호스트 디바이스(805)는 손상된 제어 신호에서 원래 오류의 원인을 진단하기 위해 메모리 디바이스(810)로부터 수신된 손상된 제어 신호의 사본(예컨대, 부분 또는 전체 사본)을 사용할 수 있다.
일부 경우에, 메모리 디바이스(810)는 데이터 송신 라인을 통해 손상된 제어 신호를 호스트 디바이스(805)로 송신할 수 있다. 일부 경우에, 메모리 디바이스(810)는 데이터를 호스트 디바이스(805)로 송신하기 위해 사용하는 송신 방식보다 신뢰 가능하고/강건한 송신 방식을 사용하여 손상된 제어 신호를 송신할 수 있다. 예를 들면, 메모리 디바이스(810)는 더 낮은 차수의 변조 방식(예컨대, PAM2) 또는 더 낮은 데이터 레이트를 사용하여 손상된 제어 신호를 송신할 수 있다.
(855)에서, 메모리 디바이스(810)는 메모리 뱅크 정보를 호스트 디바이스(805)로 송신할 수 있다. 상기 내용과 유사하게, 메모리 디바이스(810)는 호스트 디바이스(805)로부터 요청을 수신하거나 수신하지 않고 메모리 뱅크 정보를 송신할 수 있다. 일부 경우에, 메모리 디바이스(810)는 (840)에서 오류의 표시와 함께 메모리 뱅크 정보를 호스트 디바이스(805)로 송신한다. 다른 경우에, 메모리 디바이스(810)는 (845)에서 호스트 디바이스(805)로부터 메모리 뱅크 정보에 대한 요청을 수신된 후에 메모리 뱅크 정보를 호스트 디바이스(805)로 송신한다. 호스트 디바이스(805)는 메모리 디바이스(810)에서 제어 정보에서의 오류가 식별되기 전에 또는 식별된 때에 메모리 디바이스(810)의 메모리 어레이의 상태를 결정하기 위해 메모리 뱅크 정보를 사용할 수 있다.
(860)에서, 메모리 디바이스(810)는 제어 정보에서 오류를 검출한 것에 기초하여 잠금 상태에 진입할 수 있다. 일부 경우에, 메모리 디바이스(810)는 메모리 디바이스(810) 내의 오류 검출 구성요소로부터 신호를 수신한 것에 기초하여 잠금 상태에 진입할 수 있다. 잠금 상태에 있는 동안, 메모리 디바이스(810)는 메모리 어레이에 대한 액세스를 제한할 수 있다. 예를 들면, 메모리 디바이스(810)는 불량 명령 및 메모리 디바이스(810)에서 수신되는 임의의 후속 명령을 실행하는 것을 억제할 수 있다. 메모리 디바이스(810)는 또한, 메모리 어레이의 메모리 뱅크 중 하나 이상(예컨대, 모두)을 폐쇄할 수 있다. 메모리 디바이스(810)는 또한, 메모리 어레이의 메모리 뱅크 중 하나 이상(예컨대, 모두)을 사전 충전할 수 있다. 메모리 디바이스(810)는 또한, 메모리 어레이의 폐쇄된 메모리 뱅크에 대해 자체 리프레시 동작을 수행할 수 있다.
일부 경우에, 메모리 디바이스(810)는 잠금 상태에 진입하기 전에 대기할 수 있다. 예를 들면, 메모리 디바이스(810)는 잠금 상태의 전부 또는 일부에 진입하기 전에 메모리 어레이에서 수행되고 있는 유효한 메모리 동작이 완료될 때까지 대기할 수 있다 - 예컨대, 메모리 디바이스(810)는 잠금 상태에 진입하기 전에 판독 또는 기록 동작이 완료될 때까지 대기할 수 있다. 일부 경우에, 메모리 디바이스(810)가 잠금 상태에 진입하기 전에 대기할 때, 메모리 디바이스(810)는 하나 이상의 잠금 타이머를 포함한다 - 예컨대, 메모리 디바이스(810)는 ACT 동작을 위한 제1 잠금 타이머("RAS 잠금 타이머"), RD 동작을 위한 제2 잠금 타이머("RD 잠금 타이머"), 및/또는 WR 동작을 위한 제3 잠금 타이머("WR 잠금 타이머")를 포함할 수 있다. 메모리 디바이스(810)는 ACT 명령이 수신될 때 RAS 잠금 타이머를 시작할 수 있다. 일부 경우에, RAS 잠금 타이머는 카운트 다운 타이머이며 ACT 명령과 대응하는 PRE 명령을 실행하는 것 사이의 시간과 연관되는 값으로부터 카운트 다운한다. RAS 잠금 타이머가 제로에 도달한 후에, 메모리 디바이스(810)는 메모리 디바이스(810)가 잠금 상태에 진입하는 것을 가능하게 할 수 있다 - 예컨대, RAS 잠금 타이머가 ACT 대 PRE 타이밍이 만료되었음을 나타내는 출력을 생성한 것에 기초하여. RAS 잠금 타이머가 제로에 도달한 후에, RAS 잠금 타이머의 값이 시작 값으로 재설정될 수 있고 메모리 어레이의 모든 메모리 뱅크가 사전 충전될 수 있다. 일부 경우에, 아날로그 타이머는 잠금 타이머 중 하나 이상으로서 구성될 수 있다.
메모리 디바이스(810)는 RD 또는 WR 명령이 수신될 때 RD 및 WR 타이머를 유사하게 시작할 수 있으며, 여기서 RD 잠금 타이머는 RD 명령과 대응하는 PRE 명령을 실행하는 것 사이의 시간과 연관되는 값으로부터 카운트 다운할 수 있고, WR 잠금 타이머는 WR 명령과 대응하는 PRE 명령을 실행하는 것 사이의 시간과 연관되는 값으로부터 카운트 다운할 수 있다. 일부 경우에, 다수의 RAS, RD, 및 WR 잠금 타이머가 한 번에 활성화될 것이며, 메모리 디바이스(810)는 모든 활성 잠금 타이머가 제로에 도달할 때까지 잠금 상태에 진입하지 않을 것이다.
(865)에서, 호스트 디바이스(805)는 메모리 디바이스(810)에 의해 성공적으로 수신되지 않은 제어 정보에서의 오류의 원인을 진단할 수 있다. 본 명세서에서 제안된 바와 같이, 호스트 디바이스(805)는 오류의 원인을 진단하기 위해 (850)에서 수신된 손상된 제어 신호(메모리 디바이스(810)에서 수신된 실제 손상된 제어 신호의 전부 또는 일부의 사본일 수 있음)를 사용할 수 있다. 예를 들면, 호스트 디바이스(805)는 메모리 디바이스(810)로부터 수신된 손상된 제어 신호를 호스트 디바이스(805)에서 송신기에 실제로 제공된 제어 신호와 비교할 수 있다. 호스트 디바이스(805)는 그 다음, 송신 오류, 타이밍 오류, 신호 레인 오류, 수신 오류, 또는 이의 임의의 조합을 식별할 수 있다. 호스트 디바이스(805) 내의 간섭으로 인해 송신 오류가 발생할 수 있다. 호스트 디바이스(805)의 송신기 및 메모리 디바이스(810)의 수신기의 타이밍이 동기화되지 않으면 타이밍 오류가 발생할 수 있다. 송신 라인에 결함이 존재하는 경우 신호 레인 오류가 발생할 수 있다. 수신 오류는 메모리 디바이스(810) 내의 간섭으로 인해 발생할 수 있다. 일부 경우에, 오류를 진단하는 것은 동일한 오류가 발생하는지를 결정하기 위해 원래 제어 정보를 재송신하는 것을 포함할 수 있다 - 예컨대, 간섭으로 인한 오류를 배제하기 위해.
(870)에서, 호스트 디바이스(805)는 제어 정보에서의 오류가 식별되기 전에 또는 식별된 때에 메모리 디바이스(810)의 메모리 어레이의 상태를 결정할 수 있다. 본 명세서에서 제안된 바와 같이, 호스트 디바이스는 메모리 어레이의 상태를 식별하기 위해 (855)에서 수신된 메모리 뱅크 정보를 사용할 수 있다. 예를 들면, 호스트 디바이스(805)는 각각의 메모리 뱅크의 상태(예컨대, 메모리 뱅크가 오류 전에 또는 오류의 발생 시에 개방되었거나 폐쇄되었는지의 여부)를 수신한 것에 더하여, 메모리 어레이의 각각의 메모리 뱅크에서 액세스된 마지막 메모리 주소(예컨대, 행 주소)를 수신할 수 있다. 호스트 디바이스(805)는 메모리 어레이의 상태를 오류가 발생하기 전에/발생했을 때 식별된 상태로 복원하기 위해 이 정보를 사용할 수 있다. 즉, 호스트 디바이스(805)는 오류가 식별되었을 때 어떤 메모리 뱅크에서 어떤 메모리 페이지가 개방되고 폐쇄되었는지를 결정하기 위해 이 정보를 사용할 수 있고 메모리 디바이스(810)가 오류가 발생하기 전에/발생했을 때 개방되어 있던 메모리 페이지를 개방하고 오류가 발생하기 전에/발생했을 때 폐쇄되었던 메모리 페이지를 폐쇄하도록 지시할 수 있다. 일부 경우에, 호스트 디바이스(805)는 불량 명령이 메모리 디바이스(810)에서 수신되었을 때 메모리 어레이의 상태를 결정한다. 다른 경우에, 호스트 디바이스(805)는 불량 명령이 메모리 디바이스(810)에서 검출된 시간에 메모리 어레이의 상태를 결정한다.
(875)에서, 오류의 원인이 진단되거나 그렇지 않으면 해결된 후에, 호스트 디바이스(805)는 잠금 해제 명령을 메모리 디바이스(810)로 송신할 수 있다. 일부 경우에, 잠금 해제 명령은 메모리 디바이스(810)의 메모리 어레이를 이전 상태로 되돌리기 위한 정보를 포함한다. 일부 경우에, 잠금 해제 명령 다음에 메모리 어레이를 이전 상태로 되돌리기 위한 부가적인 명령이 이어진다. 메모리 디바이스(810)는 잠금 해제 명령 및/또는 부가적인 복원 명령을 수신할 수 있고 잠금 상태를 종료할 수 있다.
(880)에서, 메모리 디바이스(810)는 잠금 상태를 종료할 수 있다 - 예컨대, 호스트 디바이스(805)로부터 잠금 해제 명령을 수신한 것에 기초하여. 잠금 상태를 종료하는 것은 메모리의 메모리 뱅크를 제어 정보에서의 오류가 검출되기 이전에/검출되었을 때 식별된 개방되거나 폐쇄된 상태로 되돌리는 것을 포함할 수 있다. 잠금 상태를 종료한 후에, 메모리 디바이스(810)는 호스트 디바이스(805)로부터 수신된 명령의 프로세싱 및 실행을 재개할 수 있다.
(885)에서, 호스트 디바이스(805)는 송신된 제어 정보에서의 오류의 원인을 진단한 것에 기초하여 송신 파라미터를 수정할 수 있다. 송신 파라미터를 수정하는 것은 전송 타이밍을 개선하는 것, 상이한 변조 방식을 사용하는 것, 상이한 코딩 방식을 사용하는 것, 데이터 레이트를 감소시키는 것, 또는 이의 임의의 조합을 포함할 수 있다. 일부 경우에, 호스트 디바이스(805)는 또한, 수신 타이밍과 같은 메모리 디바이스(810)에 대한 수신 파라미터를 수정할 수 있다.
(890)에서, 호스트 디바이스(805)는 수정된 송신 파라미터에 따라 메모리 디바이스(810)로의 제어 시그널링의 송신을 재개할 수 있다. 일부 경우에, 호스트 디바이스(805)는 수정된 송신 파라미터에 따라 불량 제어 정보를 재전송할 수 있다. 메모리 디바이스(810)는 수정된 송신 파라미터 및/또는 수정된 수신 파라미터에 따라 제어 시그널링을 수신할 수 있고 성공적으로 수신된 명령을 실행할 수 있다.
상기 논의되는 호스트 디바이스(805) 및 메모리 디바이스(810)에 의해 수행된 동작이 생략, 병합, 또는 재배열될 수 있음에 유의해야 한다. 몇 가지 예를 들자면, 메모리 디바이스(810)는 오류의 표시를 송신하기 전에 잠금 상태에 진입할 수 있다. 메모리 디바이스(810)는 오류가 발생했음을 나타낸 후에 손상된 제어 신호를 저장할 수 있다. 또는 메모리 디바이스(810)는 오류의 표시, 손상된 제어 신호, 및/또는 메모리 뱅크 정보를 단일 송신으로 송신할 수 있다. 동작의 손실 없이 다른 변형이 가능하다.
도 9는 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하는 것을 지원하는 메모리 디바이스에 위치된 제어기의 양태를 표현하는 블록도를 도시한다.
메모리 디바이스 제어기(900)는 도 1 및 도 2를 참조하여 설명된 바와 같이, 디바이스 메모리 제어기(155), 로컬 메모리 제어기(165-a), 또는 로컬 메모리 제어기(260)의 일례일 수 있다. 메모리 디바이스 제어기(900)는 바이어싱 구성요소(910), 타이밍 구성요소(915), 디코딩 구성요소(920), 오류 검출 구성요소(925), 명령 실행 구성요소(930), 및 메모리 상태 구성요소(935)를 포함할 수 있다.
일부 경우에, 디코딩 구성요소(920)는 메모리 디바이스의 메모리 어레이를 동작시키기 위한 제어 정보를 수신하도록 구성될 수 있다. 오류 검출 구성요소(925)는 제어 정보("손상된 제어 정보")의 오류를 검출하도록 구성될 수 있다. 명령 실행 구성요소(930)는 오류 검출 구성요소(925)가 오류를 검출한 것에 기초하여 제어 정보에서 수신된 명령을 실행하는 것을 억제하도록 구성될 수 있다. 명령을 실행하는 것을 억제하는 것은 디코딩된 명령을 메모리 어레이에 시그널링하는 것을 억제하는 것을 포함할 수 있다.
바이어싱 구성요소(910)는 메모리 디바이스 제어기(900) 전체에 전압을 인가하도록 구성될 수 있다. 타이밍 구성요소(915)는 메모리 디바이스 제어기(900) 내의 구성요소에 타이밍 신호(또는 클록 신호)를 제공하도록 구성될 수 있다.
메모리 상태 구성요소(935)는 오류 검출 구성요소(925)가 오류를 검출한 것에 기초하여 메모리 디바이스로 하여금 메모리 디바이스의 메모리 어레이에 대한 액세스를 제한하는 상태("잠금 상태")에 진입하게 하도록 구성될 수 있다. 메모리 디바이스로 하여금 잠금 상태에 진입하게 하는 것은 (예컨대, 메모리 디바이스의 구성요소에 결합되는 오류 신호 경로를 통해 고 전압을 송신함으로써) 메모리 디바이스의 구성요소에 오류 표시기를 시그널링하는 것을 포함할 수 있다. 메모리 디바이스로 하여금 잠금 상태에 진입하게 하는 것은 디코딩 구성요소(920)로 하여금 후속 명령을 실행하는 것을 억제하게 하는 것 및 메모리 어레이로 하여금 하나 이상의 메모리 뱅크를 폐쇄하게 하고 자체 리프레시 모드에 진입하게 하는 것을 포함할 수 있다. 송신기와 조합하여, 바이어싱 구성요소(910)는 메모리 상태 구성요소(935)가 메모리 디바이스로 하여금 잠금 상태에 진입하게 한 것에 기초하여 오류 검출 구성요소(925)가 수신된 제어 정보에서 오류를 검출했다는 표시를 송신하도록 구성될 수 있다.
메모리 상태 구성요소(935)는 정상 동작 동안(예컨대, 수신된 제어 정보에서 오류가 검출되기 전에) 메모리 어레이의 상태를 모니터링하도록 더 구성될 수 있다. 오류가 검출된 후에, 메모리 상태 구성요소(935)는 메모리 어레이의 상태("원래 상태")를 식별하도록 구성될 수 있으며, 바이어싱 구성요소 및 송신기와 조합하여, 메모리 어레이의 식별된 상태를 호스트 디바이스로 송신하도록 구성될 수 있다. 메모리 상태 구성요소(935)는 또한, 손상된 제어 정보에 표시된 메모리 뱅크의 상태 또는 메모리 주소를 저장하는 것을 억제하도록 구성될 수 있다.
바이어싱 구성요소(910)는 송신기와 조합하여, 제어 정보에서 오류의 검출을 나타내기 위해 전용 핀에 전압을 인가함으로써, 제어 정보에서 오류가 검출되었음을 나타내는 복수의 핀에 전압의 패턴을 적용함으로써, 또는 제어 정보에서 오류가 검출되었음을 나타내는 특정한 타이밍 및 지속기간으로 전압의 시퀀스를 적용함으로써 표시를 송신하도록 구성될 수 있다.
디코딩 구성요소(920)는 메모리 어레이를 원래 상태로 복원하기 위한 하나 이상의 명령을 수신하도록 더 구성될 수 있다. 메모리 어레이를 복원하기 위한 명령을 디코딩한 후에, 메모리 상태 구성요소(935)는 메모리 디바이스로 하여금 잠금 상태를 종료하게 하도록 구성될 수 있고 명령 실행 구성요소(930)는 수신된 하나 이상의 명령을 실행함으로써 메모리 어레이를 원래 상태로 복원하도록 구성될 수 있다.
디코딩 구성요소(920)는 메모리 어레이의 원래 상태에 대한 요청을 수신하도록 더 구성될 수 있으며, 명령 실행 구성요소(930) 및 바이어싱 구성요소(910)와 조합하여, 메모리 어레이의 원래 상태를 요청 디바이스로 송신하도록 구성될 수 있다.
일부 경우에, 디코딩 구성요소(920)는 손상된 제어 정보가 수신되기 전에 메모리 어레이로부터 제어 정보를 수신하고 성공적으로 디코딩할 수 있다. 메모리 상태 구성요소(935)는 성공적으로 디코딩된 제어 정보에 포함된 메모리 주소를 저장하고 성공적으로 디코딩된 제어 정보에 포함된 메모리 뱅크의 상태를 나타내는 플래그를 설정하도록 구성될 수 있다. 명령 실행 구성요소(930)는 성공적으로 디코딩된 제어 정보를 실행하도록 구성될 수 있다. 오류가 손상된 제어 정보에서 검출된 후에, 바이어싱 구성요소(910) 및 송신기와 조합하여 메모리 상태 구성요소(935)는 성공적으로 디코딩된 제어 정보의 메모리 뱅크의 상태를 나타내는 플래그 및 메모리 주소를 호스트 디바이스로 송신하도록 구성될 수 있다.
호스트 디바이스에 오류를 나타낸 후에, 디코딩 구성요소(920)는 호스트 디바이스로부터 잠금 상태를 종료하기 위한 명령("UNLOCK 명령")을 수신하도록 더 구성될 수 있고 메모리 상태 구성요소(935)는 메모리 디바이스로 하여금 디코딩 구성요소(920)가 UNLOCK 명령을 수신한 것에 기초하여 잠금 상태를 종료하게 하도록 구성될 수 있다.
일부 경우에, 수신된 제어 정보에서 오류를 검출한 후에, 메모리 상태 구성요소(935)는 메모리 디바이스의 구성요소에 제어 정보에서 오류가 검출되었음을 시그널링하기 전에 진행 중인 메모리 동작의 완료를 대기한다.
일부 경우에, 오류 검출 구성요소(925)는 타이밍 구성요소(915) 및 다른 로직 구성요소와 조합하여, 제어 신호에 포함된 제어 정보에서 오류를 검출한 후에 수신된 제어 신호의 전부 또는 일부를 저장하도록 구성될 수 있다. 오류 검출 구성요소(925) 및 바이어싱 구성요소(910)는 저장된 제어 신호의 전부 또는 일부를 호스트 디바이스로 송신하도록 더 구성될 수 있다 - 예컨대, 호스트 디바이스로부터 수신된 요청에 응답하여. 일부 경우에, 저장된 제어 신호는 데이터 채널을 통한 데이터의 송신보다 낮은 데이터 레이트를 사용하여 데이터 채널을 통해 송신된다 - 예컨대, 제어 신호 송신의 신뢰성을 증가시키기 위해.
도 10은 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하는 것을 지원하는 호스트 디바이스에 위치된 제어기의 양태를 표현하는 블록도를 도시한다.
호스트 디바이스 제어기(1000)는 도 1을 참조하여 설명된 바와 같이 외부 메모리 제어기(105)의 일례일 수 있다. 호스트 디바이스 제어기(1000)는 바이어싱 구성요소(1010), 타이밍 구성요소(1015), 인코딩 구성요소(1020), 오류 진단 구성요소(1025), 및 메모리 상태 구성요소(1030)를 포함할 수 있다.
바이어싱 구성요소(1010)는 호스트 디바이스 제어기(1000) 전체에 전압을 인가하도록 구성될 수 있다. 타이밍 구성요소(1015)는 호스트 디바이스 제어기(1000) 내의 구성요소에 타이밍 신호(또는 클록 신호)를 제공하도록 구성될 수 있다.
인코딩 구성요소(1020)는 메모리 디바이스의 메모리 어레이를 동작시키기 위한 제어 정보를 결정하고 인코딩하도록 구성될 수 있다. 인코딩 구성요소(1020)는 바이어싱 구성요소(1010)와 조합하여, 제어 정보를 포함하는 제어 신호를 호스트 디바이스로 송신하도록 구성될 수 있다. 오류 진단 구성요소(1025)는 메모리 디바이스로부터, 손상된 버전의 송신된 제어 신호가 메모리 디바이스에서 수신되었다는 표시를 수신하도록 구성될 수 있다. 오류 진단 구성요소(1025)는 손상된 버전의 제어 신호가 메모리 디바이스에서 수신되기 전에 메모리 어레이의 상태("원래 상태")를 수신하도록 더 구성될 수 있다. 메모리 상태 구성요소(1030)는 바이어싱 구성요소(1010)와 조합하여, 메모리 어레이의 원래 상태를 수신한 것에 기초하여 메모리 어레이의 원래 상태를 복원하기 위한 하나 이상의 명령을 송신하도록 구성될 수 있다.
오류 진단 구성요소(1025)는 메모리 디바이스로부터 손상된 버전의 제어 신호의 적어도 일부를 수신하도록 더 구성될 수 있다. 오류 진단 구성요소(1025)는 메모리 디바이스로 송신된 제어 신호를 손상된 버전의 제어 신호와 비교하고 손상된 버전의 제어 신호를 야기한 오류(예컨대, 송신, 수신, 간섭, 신호 레인, 또는 디코딩 오류)를 식별할 수 있다. 오류 진단 구성요소(1025)는 바이어싱 구성요소(1010) 및 송신기와 조합하여, 오류를 진단한 것에 기초하여 잠금 상태를 종료하도록 메모리 디바이스에 지시하는 명령을 메모리 디바이스로 송신하도록 구성될 수 있다.
바이어싱 구성요소(1010)는 오류 진단 구성요소(1025)가 오류를 식별한 것에 기초하여 제어 시그널링을 메모리 디바이스로 송신하기 위한 파라미터를 수정하도록 구성될 수 있다. 바이어싱 구성요소(1010)는 수정된 송신 파라미터를 사용하여 후속 제어 정보를 수행하도록 더 구성될 수 있다.
일부 경우에, 메모리 상태 구성요소(1030)는 메모리 어레이의 원래 상태에 대한 요청을 메모리 디바이스로 송신하도록 구성될 수 있으며, 메모리 어레이의 각각의 메모리 뱅크에 대해, 메모리 셀의 가장 최근에 액세스된 행 및 메모리 뱅크의 상태(예컨대, 개방되거나 폐쇄됨)를 수신할 수 있다. 일부 예에서, 메모리 상태 구성요소(1030)는 메모리 뱅크의 행 주소 및 메모리 뱅크가 메모리 디바이스로부터 개방됨을 나타내는 플래그를 수신한다. 메모리 상태 구성요소(1030)는 메모리 디바이스로부터 수신된 메모리 상태 정보에 기초하여 메모리 어레이의 원래 상태를 결정하도록 더 구성될 수 있고, 메모리 어레이의 원래 상태를 복원하는 동안, 메모리 상태 구성요소(1030)는 메모리 뱅크에서, 행 주소에 대응하는 메모리 셀의 행을 개방하기 위한 명령을 메모리 디바이스로 송신할 수 있다.
도 11은 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하기 위한 방법 또는 방법들의 흐름도를 도시한다. 방법(1100)은 메모리 디바이스에 의해, 수신된 제어 정보에서 오류가 식별된 후에 잠금 상태에 진입하고, 메모리 디바이스에 의해, 수신된 제어 정보에서 오류가 식별되었음을 나타내는 양태를 도시할 수 있다.
블록(1105)에서, 방법은 호스트 디바이스로부터, 메모리 어레이를 동작시키기 위한 제어 정보를 수신하는 단계를 포함할 수 있으며, 제어 정보는 도 1 내지 도 8을 참조하여 설명된 바와 같이 제1 명령을 포함한다. 특정 예에서, 블록(1105)의 동작은 도 1, 도 2, 도 3, 및 도 9를 참조하여 설명된 바와 같이, 메모리 제어기에 의해 수행되거나 용이해질 수 있다.
블록(1110)에서, 방법은 도 1 내지 도 8을 참조하여 설명된 바와 같이, 제어 정보에서 오류를 검출하는 단계를 포함할 수 있다. 특정 예에서, 블록(1110)의 동작은 도 1, 도 2, 도 3, 및 도 9를 참조하여 설명된 바와 같이, 메모리 제어기에 의해 수행되거나 용이해질 수 있다.
블록(1115)에서, 방법은 도 1 내지 도 8을 참조하여 설명된 바와 같이, 오류를 검출한 것에 적어도 부분적으로 기초하여 제1 명령을 실행하는 것을 억제하는 단계를 포함할 수 있다. 특정 예에서, 블록(1115)의 동작은 도 1, 도 2, 도 3, 및 도 9를 참조하여 설명된 바와 같이, 메모리 제어기에 의해 수행되거나 용이해질 수 있다.
블록(1120)에서, 방법은 도 1 내지 도 8을 참조하여 설명된 바와 같이, 오류를 검출한 것에 적어도 부분적으로 기초하여 메모리 어레이에 대한 액세스를 제한하는 상태에 진입하는 단계를 포함할 수 있다. 특정 예에서, 블록(1120)의 동작은 도 1, 도 2, 도 3, 및 도 9를 참조하여 설명된 바와 같이, 메모리 제어기에 의해 수행되거나 용이해질 수 있다.
블록(1125)에서, 방법은 도 1 내지 도 8을 참조하여 설명된 바와 같이, 메모리 어레이에 대한 액세스를 제한하는 상태에 진입한 것에 적어도 부분적으로 기초하여 제어 정보에서 오류가 검출되었다는 제1 표시를 호스트 디바이스로 송신하는 단계를 포함할 수 있다. 특정 예에서, 블록(1125)의 동작은 도 1, 도 2, 도 3, 및 도 9를 참조하여 설명된 바와 같이, 메모리 제어기에 의해 수행되거나 용이해질 수 있다.
일부 예에서, 본 명세서에서 설명된 바와 같이 장치는 방법(1100)과 같은 방법 또는 방법들을 수행할 수 있다. 장치는 호스트 디바이스로부터, 메모리 어레이를 동작시키기 위한 제어 정보를 수신하는 것으로서, 제어 정보는 제1 명령을 포함하는, 상기 제어 정보를 수신하고; 제어 정보에서 오류를 검출하고; 오류를 검출한 것에 적어도 부분적으로 기초하여 제1 명령을 실행하는 것을 억제하고; 오류를 검출한 것에 적어도 부분적으로 기초하여 메모리 어레이에 대한 액세스를 제한하는 상태에 진입하며; 메모리 어레이에 대한 액세스를 제한하는 상태에 진입한 것에 적어도 부분적으로 기초하여 제어 정보에서 오류가 검출되었다는 제1 표시를 호스트 디바이스로 송신하기 위한 특징, 수단, 또는 명령어(예컨대, 프로세서에 의해 실행 가능한 명령어를 저장하는 비일시적 컴퓨터 판독 가능한 매체)를 포함할 수 있다.
본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예는 오류가 검출되기 전에 메모리 어레이를 모니터링하고; 제어 정보에서 오류를 검출한 것에 적어도 부분적으로 기초하여 메모리 어레이의 제1 상태를 식별하며; 메모리 어레이의 제1 상태를 식별한 것에 적어도 부분적으로 기초하여 메모리 어레이의 제1 상태를 호스트 디바이스로 송신하기 위한 동작, 특징, 수단, 또는 명령어를 더 포함할 수 있다.
본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예는 호스트 디바이스로부터, 메모리 어레이의 제1 상태를 호스트 디바이스로 송신한 것에 적어도 부분적으로 기초하여 메모리 어레이를 복원하기 위한 하나 이상의 명령을 수신하고; 하나 이상의 명령에 적어도 부분적으로 기초하여 메모리 어레이에 대한 액세스를 제한하는 상태를 종료하며; 하나 이상의 명령에 적어도 부분적으로 기초하여 메모리 어레이를 제1 상태로 복원하기 위한 동작, 특징, 수단, 또는 명령어를 더 포함할 수 있다.
본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예는 호스트 디바이스로부터, 제1 표시를 송신한 것에 적어도 부분적으로 기초하여 메모리 어레이의 제1 상태에 대한 요청을 수신하기 위한 동작, 특징, 수단, 또는 명령어를 더 포함할 수 있고, 메모리 어레이의 제1 상태는 요청을 수신한 것에 적어도 부분적으로 기초하여 호스트 디바이스로 송신된다.
본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예는 제어 정보가 수신되기 전에 호스트 디바이스로부터, 메모리 어레이를 동작시키기 위한 제2 제어 정보를 수신하는 것으로서, 제2 제어 정보는 제2 명령 및 제2 메모리 뱅크를 나타내는 제2 메모리 주소를 포함하는, 상기 제2 제어 정보를 수신하고; 제2 제어 정보를 성공적으로 디코딩하며; 제2 제어 정보를 성공적으로 디코딩한 것에 적어도 부분적으로 기초하여 제2 명령을 실행하기 위한 동작, 특징, 수단, 또는 명령어를 더 포함할 수 있다. 본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예에서, 메모리 어레이의 상태를 모니터링하는 것은 제2 제어 정보를 성공적으로 디코딩한 것에 적어도 부분적으로 기초하여 제2 메모리 주소를 저장하는 것; 및 제2 제어 정보를 성공적으로 디코딩한 것에 적어도 부분적으로 기초하여 제2 플래그를 설정하는 것을 포함하고, 제2 플래그는 제2 메모리 뱅크가 개방됨을 나타낸다.
본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예에서, 메모리 어레이의 제1 상태를 송신하는 것은 제어 정보에서 오류를 검출한 것에 적어도 부분적으로 기초하여 제2 메모리 주소 및 제2 플래그를 호스트 디바이스로 송신하는 것을 포함한다.
본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예에서, 제어 정보는 제1 메모리 뱅크를 식별하는 제1 메모리 주소를 포함하고 메모리 어레이의 상태를 모니터링하는 것은 제어 정보에서 오류를 검출한 것에 적어도 부분적으로 기초하여 제1 메모리 뱅크를 저장하거나 제1 메모리 뱅크의 상태를 나타내는 제1 플래그를 설정하는 것을 억제하는 것을 포함한다.
본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예는 호스트 디바이스로부터, 메모리 어레이에 대한 액세스를 제한하는 상태를 종료하기 위한 제2 명령을 수신하고; 제2 명령을 성공적으로 디코딩한 것에 적어도 부분적으로 기초하여 메모리 어레이에 대한 액세스를 제한하는 상태를 종료하기 위한 동작, 특징, 수단, 또는 명령어를 더 포함할 수 있다.
본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예에서, 메모리 어레이에 대한 액세스를 제한하는 상태에 진입하는 것은 후속 명령을 실행하는 것을 억제하는 것; 메모리 어레이에서 하나 이상의 메모리 뱅크를 폐쇄하는 것; 또는 하나 이상의 메모리 뱅크에서 하나 이상의 자체 리프레시 동작을 수행하는 것; 또는 이의 임의의 조합을 포함한다.
본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예는 제어 정보에서 오류를 검출한 것에 적어도 부분적으로 기초하여 메모리 동작의 완료를 대기하고; 메모리 동작의 완료 후에 제어 정보에서 오류가 검출되었다는 제2 표시를 시그널링하기 위한 동작, 특징, 수단, 또는 명령어를 더 포함할 수 있고, 메모리 어레이에 대한 액세스를 제한하는 상태는 메모리 동작의 완료 후에 진입된다. 본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예에서, 메모리 동작은 메모리 어레이의 제1 복수의 메모리 셀을 활성화시키는 것, 제2 복수의 메모리 셀을 판독하는 것, 또는 제3 복수의 메모리 셀을 기록하는 것, 또는 이의 임의의 조합을 포함한다.
본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예에서, 제어 정보는 제어 신호로 수신되고, 본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체는 제어 정보에서 오류를 검출한 것에 적어도 부분적으로 기초하여 제어 신호의 적어도 일부를 저장하고; 메모리 어레이에 대한 액세스를 제한하는 상태에 진입한 것에 적어도 부분적으로 기초하여 제어 신호의 적어도 일부를 호스트 디바이스로 송신하기 위한 동작, 특징, 수단, 또는 명령어를 더 포함할 수 있다.
본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예는 호스트 디바이스로부터, 제어 정보에서 오류가 검출되었다는 제1 표시를 송신한 것에 적어도 부분적으로 기초하여 제어 신호의 적어도 일부에 대한 요청을 수신하고; 요청을 수신한 것에 적어도 부분적으로 기초하여 제어 신호의 적어도 일부를 호스트 디바이스로 송신하기 위한 동작, 특징, 수단, 또는 명령어를 더 포함할 수 있다. 본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예에서, 제어 신호의 적어도 일부는 데이터를 호스트 디바이스로 송신하기 위해 사용된 데이터 레이트보다 낮은 데이터 레이트로 송신된다.
본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예에서, 오류가 검출되었다는 제1 표시를 송신하는 것은 제어 정보에서 오류의 검출을 나타내기 위해 핀에 전압을 인가하는 것; 데이터를 호스트 디바이스로 송신하기 위해 복수의 핀에 복수의 전압을 인가하는 것으로서, 복수의 전압은 제어 정보에서 오류 검출을 나타내는 패턴에 따라 복수의 핀에 인가되는, 상기 복수의 전압을 인가하는 것; 또는 복수의 핀 중 적어도 하나를 통해 패턴 시퀀스를 호스트 디바이스로 송신하는 것을 포함한다.
도 12는 본 명세서에 개시된 바와 같이 제어 정보 오류를 보고하기 위한 방법 또는 방법들의 흐름도를 도시한다. 방법(1200)은 호스트 디바이스에 의해, 메모리 어레이의 현재 상태를 메모리 디바이스에서 수신된 제어 정보에서 오류가 식별되기 전에 식별된 이전 상태로 복원하고 호스트 디바이스에 의해, 제어 정보 송신에서 식별된 오류의 원인을 결정하는 양태를 도시할 수 있다.
블록(1205)에서, 방법은 도 1 내지 도 8을 참조하여 설명된 바와 같이, 호스트 디바이스에 의해, 메모리 디바이스의 메모리 어레이를 동작시키기 위한 제어 정보를 결정하는 단계를 포함할 수 있다. 특정 예에서, 블록(1205)의 동작은 도 1, 도 2, 도 3, 및 도 10을 참조하여 설명된 바와 같이, 메모리 제어기에 의해 수행되거나 용이해질 수 있다.
블록(1210)에서, 방법은 도 1 내지 도 8을 참조하여 설명된 바와 같이, 제어 정보를 포함하는 제어 신호를 메모리 디바이스로 송신하는 단계를 포함할 수 있다. 특정 예에서, 블록(1210)의 동작은 도 1, 도 2, 도 3, 및 도 10을 참조하여 설명된 바와 같이, 메모리 제어기에 의해 수행되거나 용이해질 수 있다.
블록(1215)에서, 방법은 도 1 내지 도 8을 참조하여 설명된 바와 같이, 메모리 디바이스로부터, 손상된 버전의 제어 신호가 메모리 디바이스에서 수신되었다는 표시 및 손상된 버전의 제어 신호가 메모리 디바이스에서 수신되기 전에 메모리 어레이의 상태를 수신하는 단계를 포함할 수 있다. 블록(1215)의 동작은 도 1, 도 2, 도 3, 및 도 10을 참조하여 설명된 바와 같이, 메모리 제어기에 의해 수행되거나 용이해질 수 있다.
블록(1220)에서, 방법은 도 1 내지 도 8을 참조하여 설명된 바와 같이, 메모리 어레이의 상태를 수신한 것에 적어도 부분적으로 기초하여 메모리 어레이의 상태를 복원하기 위한 하나 이상의 명령을 송신하는 단계를 포함할 수 있다. 블록(1220)의 동작은 도 1, 도 2, 도 3, 및 도 10을 참조하여 설명된 바와 같이, 메모리 제어기에 의해 수행되거나 용이해질 수 있다.
일부 예에서, 본 명세서에서 설명된 바와 같이 장치는 방법(1200)과 같은 방법 또는 방법들을 수행할 수 있다. 장치는 호스트 디바이스에 의해, 메모리 디바이스의 메모리 어레이를 동작시키기 위한 제어 정보를 결정하고; 제어 정보를 포함하는 제어 신호를 메모리 디바이스로 송신하고; 메모리 디바이스로부터, 손상된 버전의 제어 신호가 메모리 디바이스에서 수신되었다는 표시 및 손상된 버전의 제어 신호가 메모리 디바이스에서 수신되기 전에 메모리 어레이의 상태를 수신하며; 메모리 어레이의 상태를 수신한 것에 적어도 부분적으로 기초하여 메모리 어레이의 상태를 복원하기 위한 하나 이상의 명령을 송신하기 위한 특징, 수단, 또는 명령어(예컨대, 프로세서에 의해 실행 가능한 명령어를 저장하는 비일시적 컴퓨터 판독 가능한 매체)를 포함할 수 있다.
본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예는 메모리 디바이스로부터, 손상된 버전의 제어 신호의 적어도 일부를 수신하고; 메모리 디바이스로 송신된 제어 신호를 메모리 디바이스로부터 수신된 손상된 버전의 제어 신호의 적어도 일부와 비교하고; 비교에 적어도 부분적으로 기초하여 손상된 버전의 제어 신호를 야기한 오류를 식별하는 것으로서, 송신 오류, 타이밍 오류, 신호 레인 오류, 또는 이의 임의의 조합을 식별하는 것을 포함하는, 상기 오류를 식별하며; 오류를 식별한 것에 적어도 부분적으로 기초하여 메모리 디바이스에 대한 액세스를 제한하는 상태를 종료하기 위한 명령을 메모리 디바이스로 송신하기 위한 동작, 특징, 수단, 또는 명령어를 더 포함할 수 있다.
본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예는 오류를 식별한 것에 적어도 부분적으로 기초하여 제어 시그널링을 메모리 디바이스로 송신하기 위한 파라미터를 수정하고; 제어 시그널링을 송신하기 위해 수정된 파라미터에 따라 제어 정보를 포함하는 제2 신호를 메모리 디바이스로 송신하기 위한 동작, 특징, 수단, 또는 명령어를 더 포함할 수 있다.
본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예에서, 제어 정보는 제1 명령 및 제1 메모리 뱅크를 나타내는 제1 메모리 주소를 포함한다. 본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예는 손상된 버전의 제어 신호가 메모리 디바이스에서 수신되었다는 표시를 수신한 것에 적어도 부분적으로 기초하여 손상된 버전의 제어 신호가 수신되기 전에 메모리 어레이의 상태에 대한 요청을 메모리 디바이스로 송신하기 위한 동작, 특징, 수단, 또는 명령어를 더 포함할 수 있다. 본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예에서, 메모리 어레이의 상태를 수신하는 것은 메모리 디바이스로부터, 제2 메모리 뱅크에서 복수의 메모리 셀을 식별하는 제2 메모리 주소 및 손상된 버전의 제어 신호가 수신되기 전에 제2 메모리 뱅크가 개방됨을 나타내는 플래그를 수신하는 것을 포함한다.
본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예는 제2 메모리 주소 및 플래그에 적어도 부분적으로 기초하여 손상된 버전의 제어 신호가 수신되었을 때 메모리 어레이의 상태를 결정하기 위한 동작, 특징, 수단, 또는 명령어를 더 포함할 수 있다. 본 명세서에서 설명된 방법, 장치, 및 비일시적 컴퓨터 판독 가능한 매체의 일부 예에서, 메모리 어레이의 상태를 복원하기 위한 하나 이상의 명령을 송신하는 것은 제2 메모리 주소 및 플래그에 적어도 부분적으로 기초하여 제2 메모리 뱅크에서 복수의 메모리 셀을 개방하기 위한 제2 명령을 메모리 디바이스로 송신하는 것을 포함한다.
상기 설명된 방법이 가능한 구현을 설명하고, 동작 및 단계가 재배열되거나 그렇지 않으면, 수정될 수 있으며 다른 구현이 가능하다는 점에 유의해야 한다. 또한, 방법 중 2개 이상으로부터의 양태가 조합될 수 있다.
일부 예에서, 장치 또는 디바이스는 일반 또는 특수 목적 하드웨어를 사용하여 본 명세서에서 설명된 기능의 양태를 수행할 수 있다. 예를 들면, 장치 또는 디바이스는 복수의 메모리 뱅크를 포함하는 메모리 어레이; 메모리 어레이와 결합되고 메모리 어레이에 액세스하기 위한 제어 정보를 포함하는 제어 시그널링을 수신하도록 구성된 수신기; 수신기와 결합되고 제어 정보에서 오류를 검출하고 검출된 오류의 표시를 시그널링하도록 구성된 회로로서, 메모리 어레이는 회로의 출력에 적어도 부분적으로 기초하여 제한된 액세스 상태에 진입하도록 구성되는, 상기 회로; 회로와 결합되고 회로의 출력에 적어도 부분적으로 기초하여 메모리 어레이의 상태를 저장하도록 구성된 제1 레지스터; 및 제1 레지스터와 결합되고, 제1 레지스터의 콘텐트 및 제1 레지스터의 콘텐트에 대응하는 제어 정보에서 검출된 오류의 표시를 호스트 디바이스로 송신하도록 구성된 송신기를 포함할 수 있다.
일부 예에서, 장치 또는 디바이스는 메모리 어레이로 하여금 회로의 출력에 적어도 부분적으로 기초하여 제한된 액세스의 상태에 진입하게 하도록 구성된 구성요소를 포함한다.
일부 예에서, 장치 또는 디바이스는 수신기 및 메모리 어레이와 결합된 디코더로서, 수신된 제어 정보를 디코딩하고 디코딩된 제어 정보를 메모리 어레이에 시그널링하도록 구성되는, 상기 디코더; 제1 레지스터와 결합되고 장치에 타이밍 신호를 제공하도록 구성된 클록; 및 오류를 검출하도록 구성된 회로의 출력에 기초하여 클록의 출력을 차단하도록 구성된 로직 구성요소를 포함하고, 로직 구성요소의 입력부는 클록 및 디코더와 결합되고 로직 구성요소의 출력부는 제1 레지스터와 결합된다.
일부 예에서, 장치 또는 디바이스는 수신기 및 메모리 어레이와 결합된 디코더로서, 수신된 제어 정보를 디코딩하고 디코딩된 제어 정보를 메모리 어레이에 시그널링하도록 구성되는, 상기 디코더; 오류를 검출하도록 구성된 회로의 출력을 저장하도록 구성된 래치; 래치와 결합되고 타이밍 신호를 제공하도록 구성된 클록으로서, 래치는 클록의 출력에 적어도 부분적으로 기초하여 회로의 출력을 시그널링하도록 더 구성되는, 상기 클록; 및 래치의 출력에 적어도 부분적으로 기초하여 메모리 어레이로의 디코더의 출력을 차단하도록 구성된 로직 구성요소를 포함한다.
일부 예에서, 장치 또는 디바이스는 제어 정보에서 오류를 검출하도록 구성된 회로의 출력에 적어도 부분적으로 기초하여 제어 시그널링의 제1 제어 신호의 적어도 일부를 저장하도록 구성된 제2 레지스터를 포함한다.
일부 예에서, 장치 또는 디바이스는 제1 레지스터 및 메모리 어레이와 결합된 디코더를 포함하고, 디코더는 수신된 제어 정보를 디코딩하고 디코딩된 제어 정보를 메모리 어레이에 시그널링하도록 구성되며, 제1 레지스터는 디코더의 출력에 적어도 부분적으로 기초하여 메모리 주소 또는 메모리 뱅크의 상태, 또는 둘 다를 저장하도록 더 구성된다.
일부 예에서, 장치 또는 디바이스는 수신기와 결합되고 제어 시그널링을 전달하도록 구성된 제어 라인; 송신기와 결합되고 제1 레지스터의 콘텐트를 전달하도록 구성된 데이터 라인; 송신기 및 데이터 라인과 결합된 복수의 핀으로서, 데이터 라인을 통해 외부 디바이스에 데이터를 시그널링하도록 구성되는, 상기 복수의 핀; 및 송신기와 결합되고 제어 정보에서 검출된 오류의 표시를 외부 디바이스에 시그널링하도록 구성된 핀을 포함한다.
일부 예에서, 장치 또는 디바이스는 메모리 어레이와 결합되고 제어 시그널링을 수신한 것에 적어도 부분적으로 기초하여 제어 정보를 디코딩하도록 구성된 디코더; 디코더와 결합되고 디코더에 의해 성공적으로 디코딩된 메모리 명령의 타이밍을 추적하도록 구성된 타이머; 및 메모리 어레이로의 디코더의 출력을 차단하도록 구성된 로직 구성요소를 포함하고, 로직 구성요소는 타이머의 출력에 적어도 부분적으로 기초하여 디코더의 출력을 시그널링하도록 구성된다.
본 명세서에서 설명된 정보 및 신호는 다양한 상이한 기술 및 기법 중 임의의 것을 사용하여 표현될 수 있다. 예를 들면, 상기 설명에 걸쳐 참조될 수 있는 데이터, 명령어, 명령, 정보, 신호, 비트, 심볼, 및 칩은 전압, 전류, 전자기파, 자기장 또는 입자, 광학장 또는 입자, 또는 이의 임의의 조합에 의해 표현될 수 있다. 일부 도면은 신호를 단일 신호로서 도시할 수 있다; 그러나, 신호가 신호의 버스를 표현할 수 있고, 여기서 버스는 다양한 비트 폭을 가질 수 있음이 당업자에 의해 이해될 것이다.
용어 "전자 통신", "전도성 접촉부", "연결된", 및 "결합된"은 구성요소 사이의 신호의 흐름을 지원하는 구성요소 사이의 관계를 언급할 수 있다. 구성요소 사이의 신호의 흐름을 언제든지 지원할 수 있는 구성요소 사이에 임의의 전도성 경로가 존재하는 경우 구성요소는 서로 전자 통신하는(또는 전도성 접촉하거나 연결되거나 결합된) 것으로 고려된다. 임의의 주어진 시간에, 서로 전자 통신하는(또는 전도성 접촉하거나 연결되거나 결합된) 구성요소 사이의 전도성 경로는 연결된 구성요소를 포함하는 디바이스의 동작에 기초한 개방된 회로 또는 폐쇄된 회로일 수 있다. 연결된 구성요소 사이의 전도성 경로는 구성요소 사이의 직접 전도성 경로일 수 있거나 연결된 구성요소 사이의 전도성 경로는 스위치, 트랜지스터, 또는 다른 구성요소와 같은 중간 구성요소를 포함할 수 있는 간접 전도성 경로일 수 있다. 일부 경우에, 연결된 구성요소 사이의 신호의 흐름은 예를 들면, 스위치 또는 트랜지스터와 같은 하나 이상의 중간 구성요소를 사용하여 잠시 동안 중단될 수 있다.
용어 "결합하는"은 신호가 현재 전도성 경로를 통해 구성요소 사이에 전달될 수 없는 구성요소 사이의 개방된 회로 관계로부터 신호가 전도성 경로를 통해 구성요소 사이에 전달될 수 있는 구성요소 사이의 폐쇄된 회로 관계로 이동하는 조건을 언급한다. 제어기와 같은 구성요소가 다른 구성요소를 함께 결합할 때, 구성요소는 이전에 신호가 흐르는 것을 허용하지 않은 전도성 경로를 통해 다른 구성요소 사이에 신호가 흐르는 것을 허용하는 변경을 개시한다.
용어 "분리된"은 신호가 현재 구성요소 사이를 흐를 수 없는 구성요소 사이의 관계를 언급한다. 그 사이에 개방된 회로가 존재하면 구성요소가 서로 분리된다. 예를 들면, 구성요소 사이에 배치되는 스위치에 의해 분리된 2개의 구성요소는 스위치가 개방될 때 서로 분리된다. 제어기가 2개의 구성요소를 분리할 때, 제어기는 이전에 신호가 흐르는 것을 허용한 전도성 경로를 사용하여 구성요소 사이에 신호가 흐르는 것을 방지하는 변경에 영향을 준다.
본 명세서에서 사용된 용어 "층(layer)"은 기하학적 구조의 층(stratum) 또는 시트를 언급한다. 각각의 층은 3차원(예컨대, 높이, 폭, 및 깊이)을 가질 수 있으며 표면의 적어도 일부를 커버할 수 있다. 예를 들면, 층은 2차원이 3차원보다 큰 3차원 구조, 예컨대, 박막일 수 있다. 층은 상이한 요소, 구성요소, 및/또는 재료를 포함할 수 있다. 일부 경우에, 하나의 층은 2개 이상의 서브층으로 구성될 수 있다. 일부 첨부된 도면에서, 3차원 층의 2개의 치수가 예시의 목적을 위해 묘사된다. 당업자는 그러나, 층이 본질적으로 3차원이라는 것을 인식할 것이다.
메모리 어레이를 포함하는 본 명세서에서 논의된 디바이스는 실리콘, 게르마늄, 실리콘 게르마늄 합금, 갈륨 비소, 질화 갈륨 등과 같은 반도체 기판에 형성될 수 있다. 일부 경우에, 기판은 반도체 웨이퍼이다. 다른 경우에, 기판은 실리콘 온 글래스(SOG) 또는 실리콘 온 사파이어(SOP)와 같은 실리콘 온 절연체(SOI) 기판, 또는 또 다른 기판의 반도체 재료의 에피택셜 층일 수 있다. 기판의 전도성, 또는 기판의 서브 영역은 인, 붕소, 또는 비소를 포함하지만 이로 제한되지 않는 다양한 화학 종을 사용하여 도핑을 통해 제어될 수 있다. 도핑은 기판의 초기 형성 또는 성장 동안, 이온 주입에 의해, 또는 임의의 다른 도핑 수단에 의해 수행될 수 있다.
본 명세서에서 논의된 스위칭 구성요소 또는 트랜지스터는 전계 효과 트랜지스터(FET)를 표현하고 소스, 드레인, 및 게이트를 포함하는 3 단자 디바이스를 포함할 수 있다. 단자는 전도성 재료 예로서, 금속을 통해 다른 전자 요소에 연결될 수 있다. 소스 및 드레인은 전도성일 수 있으며 고농도로 도핑된 예컨대, 축퇴된 반도체 영역을 포함할 수 있다. 소스 및 드레인은 약하게 도핑된 반도체 영역 또는 채널에 의해 분리될 수 있다. 채널이 n형(즉, 대부분의 캐리어가 신호임)이면, FET는 n형 FET로 지칭될 수 있다. 채널이 p형(즉, 대부분의 캐리어가 홀임)이면, FET는 p형 FET로 지칭될 수 있다. 채널은 절연 게이트 산화물에 의해 캡핑(Capping)될 수 있다. 채널 전도성은 게이트에 전압을 인가함으로써 제어될 수 있다. 예를 들면, n형 FET 또는 p형 FET에 각각 양의 전압 또는 음의 전압을 인가하는 것은 채널이 전도성이 되는 것을 야기할 수 있다. 트랜지스터의 임계 전압보다 크거나 같은 전압이 트랜지스터 게이트에 인가될 때 트랜지스터는 "온" 또는 "활성화"될 수 있다. 트랜지스터의 임계 전압 미만의 전압이 트랜지스터 게이트에 인가될 때 트랜지스터는 "오프" 또는 "활성화 해제"될 수 있다.
첨부된 도면과 관련하여 본 명세서에서 제시된 설명은 예시적인 구성을 설명하며 구현될 수 있거나 청구항의 범위 내에 있는 모든 예를 표현하지 않는다. 본 명세서에서 사용된 용어 "예시적인"은 "일례, 사례, 또는 예시의 역할을 하는 것"을 의미하고, "선호된" 또는 "또 다른 예에 비해 유리함"을 의미하지 않는다. 상세한 설명은 설명된 기법의 이해를 제공하는 것에 대한 특정 상세를 포함한다. 이 기법은 그러나, 이 특정 상세 없이 실행될 수 있다. 일부 사례에서, 잘 알려진 구조 및 디바이스는 설명된 예의 개념을 모호하게 하는 것을 회피하기 위해 블록 다이어그램 형태로 도시된다.
첨부된 도면에서, 유사한 구성요소 또는 특징은 동일한 참조 라벨을 가질 수 있다. 게다가, 동일한 유형의 다양한 구성요소는 유사한 구성요소 사이를 구별하는 제2 라벨 및 대시에 의한 참조 라벨을 따름으로써 구별될 수 있다. 명세서에서 제1 참조 라벨만 사용되면, 설명은 제2 참조 라벨에 관계 없이 동일한 제1 참조 라벨을 가지는 유사한 구성요소 중 임의의 하나에 적용 가능하다.
본 명세서에서 설명된 정보 및 신호는 다양한 상이한 기술 및 기법 중 임의의 것을 사용하여 표현될 수 있다. 예를 들면, 상기 설명에 걸쳐 참조될 수 있는 데이터, 명령어, 명령, 정보, 신호, 비트, 심볼, 및 칩은 전압, 전류, 전자기파, 자기장 또는 입자, 광학장 또는 입자, 또는 이의 임의의 조합에 의해 표현될 수 있다.
본 명세서에서의 개시와 관련하여 설명된 다양한 예시적인 블록 및 모듈은 범용 프로세서, DSP, ASIC, FPGA 또는 다른 프로그래밍 가능한 논리 디바이스, 별개의 게이트 또는 트랜지스터 로직, 별개의 하드웨어 구성요소, 또는 본 명세서에서 설명된 기능을 수행하도록 설계된 이의 임의의 조합으로 구현되거나 수행될 수 있다. 범용 프로세서는 마이크로프로세서일 수 있지만, 대안적으로, 프로세서는 임의의 프로세서, 제어기, 마이크로제어기, 또는 상태 기계일 수 있다. 프로세서는 또한, 컴퓨팅 디바이스의 조합(예로서, DSP 및 마이크로프로세서, 다수의 마이크로프로세서, DSP 코어와 결부된 하나 이상의 마이크로프로세서, 또는 임의의 다른 이러한 구성의 조합)으로서 구현될 수 있다.
본 명세서에서 설명된 기능은 하드웨어, 프로세서에 의해 실행된 소프트웨어, 펌웨어, 또는 이의 임의의 조합으로 구현될 수 있다. 프로세서에 의해 실행된 소프트웨어로 구현되면, 기능은 컴퓨터 판독 가능한 매체의 하나 이상의 명령어 또는 부호에 저장되거나 하나 이상의 명령어 또는 부호로서 송신될 수 있다. 다른 예 및 구현은 본 발명 및 첨부된 청구항의 범위 내에 있다. 예를 들면, 소프트웨어의 본질로 인해, 상기 설명된 기능은 프로세서, 하드웨어, 펌웨어, 하드와이어링, 또는 이들 중 임의의 것의 조합에 의해 실행된 소프트웨어를 사용하여 구현될 수 있다. 기능을 구현하는 특징은 또한, 기능의 일부가 상이한 물리적 위치에서 구현되도록 분산되는 것을 포함하는 다양한 위치에 물리적으로 위치될 수 있다. 또한, 청구항에서를 포함하는 본 명세서에서 사용된 바와 같이, 항목의 목록(예를 들면, "~중 적어도 하나" 또는 "~중 하나 이상"과 같은 문구가 앞에 있는 항목의 목록)에서 사용된 바와 같이 "또는"은 예를 들면, A, B, 또는 C 중 적어도 하나의 목록이 A 또는 B 또는 C 또는 AB 또는 AC 또는 BC 또는 ABC(예컨대, A 및 B 및 C)를 의미하도록 포괄적 목록을 나타낸다. 또한, 본 명세서에 사용된 바와 같이, 문구 "~에 기초하여"는 폐쇄된 세트의 조건에 대한 참조로서 해석되지 않을 것이다. 예를 들면, "조건(A)에 기초하여"로서 설명되는 일 예시적인 단계는 본 발명의 범위를 벗어나지 않고 조건(A) 및 조건(B) 둘 다에 기초할 수 있다. 즉, 본 명세서에서 사용된 바와 같이, 문구 "~에 기초하여"는 문구 "~에 적어도 부분적으로 기초하여"와 동일한 방식으로 해석될 것이다.
컴퓨터 판독 가능한 매체는 하나의 장소로부터 또 다른 장소로의 컴퓨터 프로그램의 전송을 용이하게 하는 임의의 매체를 포함하는 통신 매체 및 비일시적 컴퓨터 저장 매체 둘 다를 포함한다. 비일시적 저장 매체는 범용 또는 특수 목적 컴퓨터에 의해 액세스될 수 있는 임의의 이용 가능한 매체일 수 있다. 예로서, 그리고 제한이 아닌 것으로서, 비일시적 컴퓨터 판독 가능한 매체는 RAM, ROM, 전기 소거 가능한 프로그래밍 가능한 판독 전용 메모리(EEPROM), 콤팩트 디스켓(CD) ROM 또는 다른 광학 디스켓 저장장치, 자기 디스켓 저장장치 또는 다른 자기 저장 디바이스, 또는 원하는 프로그램 부호 수단을 명령어 또는 데이터 구조의 형태로 운반하거나 저장하기 위해 사용될 수 있고 범용 또는 특수 목적 컴퓨터, 또는 범용 또는 특수 목적 프로세서에 의해 액세스될 수 있는 임의의 다른 비일시적 매체를 포함할 수 있다. 또한, 임의의 연결부는 컴퓨터 판독 가능한 매체로 적절하게 칭해진다. 예를 들면, 소프트웨어가 동축 케이블, 광섬유 케이블, 꼬임 쌍선(twisted pair), 디지털 가입자 회선(DSL), 또는 적외선, 무선, 및 마이크로파와 같은 무선 기술을 사용하여 웹사이트, 서버, 또는 다른 원격 소스로부터 송신되는 경우, 동축 케이블, 광섬유 케이블, 꼬임 쌍선, 디지털 가입자 회선(DSL), 또는 적외선, 무선, 및 마이크로파와 같은 무선 기술이 매체의 정의에 포함된다. 본 명세서에서 사용된 바와 같이, 디스켓 및 디스크는 CD, 레이저 디스크, 광학 디스크, 디지털 다기능 디스크(DVD), 플로피 디스켓 및 블루레이 디스크를 포함하고 여기서, 디스켓은 일반적으로, 데이터를 자기적으로 재생하고, 디스크는 레이저를 사용하여 데이터를 광학적으로 재생한다. 상기 언급한 것의 조합은 또한, 컴퓨터 판독 가능한 매체의 범위 내에 포함된다.
본 명세서에서의 설명은 당업자가 본 발명을 하거나 사용하는 것을 가능하게 하기 위해 제공된다. 본 발명에 대한 다양한 수정은 당업자에게 용이하게 명백할 것이며, 본 명세서에서 정의된 일반적인 원리는 본 발명의 범위를 벗어나지 않고 다른 변형에 적용될 수 있다. 따라서, 본 발명은 본 명세서에서 설명된 예 및 설계로 제한되지 않지만, 본 명세서에 개시된 원리 및 신규 특징과 일치하는 가장 넓은 범위에 부합되어야 한다.

Claims (25)

  1. 방법으로서,
    호스트 디바이스로부터, 메모리 어레이를 동작시키기 위한 제어 정보를 수신하는 단계로서, 상기 제어 정보는 제1 명령을 포함하는, 상기 제어 정보를 수신하는 단계;
    상기 제어 정보에서 오류를 검출하는 단계;
    상기 오류를 검출한 것에 적어도 부분적으로 기초하여 상기 제1 명령을 실행하는 것을 억제하는 단계;
    상기 오류를 검출한 것에 적어도 부분적으로 기초하여 상기 메모리 어레이에 대한 액세스를 제한하는 상태에 진입하는 단계; 및
    상기 메모리 어레이에 대한 액세스를 제한하는 상기 상태에 진입한 것에 적어도 부분적으로 기초하여 상기 제어 정보에서 상기 오류가 검출되었다는 제1 표시를 상기 호스트 디바이스로 송신하는 단계
    를 포함하는, 방법.
  2. 제1항에 있어서,
    상기 오류가 검출되기 전에 또는 검출될 때 상기 메모리 어레이를 모니터링하는 단계;
    상기 제어 정보에서 상기 오류를 검출한 것에 적어도 부분적으로 기초하여 상기 메모리 어레이의 제1 상태를 식별하는 단계; 및
    상기 메모리 어레이의 제1 상태를 식별한 것에 적어도 부분적으로 기초하여 상기 메모리 어레이의 제1 상태를 상기 호스트 디바이스로 송신하는 단계
    를 더 포함하는, 방법.
  3. 제2항에 있어서,
    상기 호스트 디바이스로부터, 상기 메모리 어레이의 제1 상태를 상기 호스트 디바이스로 송신한 것에 적어도 부분적으로 기초하여 상기 메모리 어레이를 복원하기 위한 하나 이상의 명령을 수신하는 단계;
    상기 하나 이상의 명령에 적어도 부분적으로 기초하여 상기 메모리 어레이에 대한 액세스를 제한하는 상기 상태를 종료하는 단계; 및
    상기 하나 이상의 명령에 적어도 부분적으로 기초하여 상기 메모리 어레이를 상기 제1 상태로 복원하는 단계
    를 더 포함하는, 방법.
  4. 제2항에 있어서,
    상기 호스트 디바이스로부터, 상기 제1 표시를 송신한 것에 적어도 부분적으로 기초하여 상기 메모리 어레이의 제1 상태에 대한 요청을 수신하는 단계를 더 포함하되, 상기 메모리 어레이의 제1 상태는 상기 제1 요청을 수신한 것에 적어도 부분적으로 기초하여 상기 호스트 디바이스로 송신되는, 방법.
  5. 제2항에 있어서,
    상기 제어 정보가 수신되기 전에 상기 호스트 디바이스로부터, 상기 메모리 어레이를 동작시키기 위한 제2 제어 정보를 수신하는 단계로서, 상기 제2 제어 정보는 제2 메모리 뱅크를 나타내는 제2 메모리 주소 및 제2 명령을 포함하는, 상기 제2 제어 정보를 수신하는 단계;
    상기 제2 제어 정보를 성공적으로 디코딩하는 단계로서, 상기 메모리 어레이의 상태를 모니터링하는 것은
    상기 제2 제어 정보를 성공적으로 디코딩한 것에 적어도 부분적으로 기초하여 상기 제2 메모리 주소를 저장하는 것; 및
    상기 제2 제어 정보를 성공적으로 디코딩한 것에 적어도 부분적으로 기초하여 제2 플래그를 설정하는 것으로서, 상기 제2 플래그는 상기 제2 메모리 뱅크가 개방됨을 나타내는, 상기 제2 플래그를 설정하는 것을 포함하는, 상기 제2 제어 정보를 성공적으로 디코딩하는 단계; 및
    상기 제2 제어 정보를 성공적으로 디코딩한 것에 적어도 부분적으로 기초하여 상기 제2 명령을 실행하는 단계를 더 포함하는, 방법.
  6. 제5항에 있어서, 상기 메모리 어레이의 제1 상태를 송신하는 단계는,
    상기 제어 정보에서 상기 오류를 검출한 것에 적어도 부분적으로 기초하여 상기 제2 메모리 주소 및 상기 제2 플래그를 상기 호스트 디바이스로 송신하는 단계를 포함하는, 방법.
  7. 제2항에 있어서, 상기 제어 정보는 제1 메모리 뱅크를 식별하는 제1 메모리 주소를 포함하고, 상기 메모리 어레이의 상태를 모니터링하는 것은,
    상기 제어 정보에서 상기 오류를 검출한 것에 적어도 부분적으로 기초하여 상기 제1 메모리 주소를 저장하거나 상기 제1 메모리 뱅크의 상태를 나타내는 제1 플래그를 설정하는 것을 억제하는 것을 포함하는, 방법.
  8. 제1항에 있어서,
    상기 호스트 디바이스로부터, 상기 메모리 어레이에 대한 액세스를 제한하는 상기 상태를 종료하기 위한 제2 명령을 수신하는 단계; 및
    상기 제2 명령을 성공적으로 디코딩한 것에 적어도 부분적으로 기초하여 상기 메모리 어레이에 대한 액세스를 제한하는 상기 상태를 종료하는 단계
    를 더 포함하는, 방법.
  9. 제1항에 있어서, 상기 메모리 어레이에 대한 액세스를 제한하는 상기 상태에 진입하는 단계는,
    후속 명령을 실행하는 것을 억제하는 단계;
    상기 메모리 어레이에서 하나 이상의 메모리 뱅크를 폐쇄하는 단계; 또는
    상기 하나 이상의 메모리 뱅크에 대해 하나 이상의 자체 리프레시 동작을 수행하는 단계;
    또는 이의 임의의 조합
    을 포함하는, 방법.
  10. 제1항에 있어서,
    상기 제어 정보에서 상기 오류를 검출한 것에 적어도 부분적으로 기초하여 메모리 동작의 완료를 대기하는 단계; 및
    상기 메모리 동작의 완료 후에 상기 제어 정보에서 상기 오류가 검출되었다는 제2 표시를 시그널링하는 단계
    를 더 포함하되, 상기 메모리 어레이에 대한 액세스를 제한하는 상기 상태는 상기 메모리 동작의 완료 후에 진입되는, 방법.
  11. 제1항에 있어서, 상기 제어 정보를 수신하는 단계는 제어 신호에서 상기 제어 정보를 수신하는 단계를 포함하고, 상기 방법은,
    상기 제어 정보에서 상기 오류를 검출한 것에 적어도 부분적으로 기초하여 상기 제어 신호의 적어도 일부를 저장하는 단계; 및
    상기 메모리 어레이에 대한 액세스를 제한하는 상기 상태에 진입한 것에 적어도 부분적으로 기초하여 상기 제어 신호의 적어도 일부를 상기 호스트 디바이스로 송신하는 단계
    를 더 포함하는, 방법.
  12. 제11항에 있어서,
    상기 호스트 디바이스로부터, 상기 제어 정보에서 상기 오류가 검출되었다는 상기 제1 표시를 송신한 것에 적어도 부분적으로 기초하여 상기 제어 신호의 적어도 일부에 대한 요청을 수신하는 단계; 및
    상기 요청을 수신한 것에 적어도 부분적으로 기초하여 상기 제어 신호의 적어도 일부를 상기 호스트 디바이스로 송신하는 단계
    를 더 포함하는, 방법.
  13. 제11항에 있어서, 상기 제어 신호의 적어도 일부는 데이터를 상기 호스트 디바이스로 송신하기 위해 사용된 데이터 레이트보다 낮은 데이터 레이트로 송신되는, 방법.
  14. 제1항에 있어서, 상기 오류가 검출되었다는 상기 제1 표시를 송신하는 단계는,
    제어 정보에서의 오류의 검출을 나타내기 위해 핀에 전압을 인가하는 단계;
    데이터를 상기 호스트 디바이스로 송신하기 위해 복수의 핀에 복수의 전압을 인가하는 단계로서, 상기 복수의 전압은 제어 정보에서의 상기 오류의 검출을 나타내는 패턴에 따라 상기 복수의 핀에 인가되는, 상기 복수의 전압을 인가하는 단계; 또는
    상기 복수의 핀 중 적어도 하나를 통해 패턴 시퀀스를 상기 호스트 디바이스로 송신하는 단계를 포함하는, 방법.
  15. 방법으로서,
    호스트 디바이스에 의해, 메모리 디바이스의 메모리 어레이를 동작시키기 위한 제어 정보를 결정하는 단계;
    상기 제어 정보를 포함하는 제어 신호를 상기 메모리 디바이스로 송신하는 단계;
    상기 메모리 디바이스로부터, 손상된 버전의 제어 신호가 상기 메모리 디바이스에서 수신되었다는 표시 및 상기 손상된 버전의 제어 신호가 상기 메모리 디바이스에서 수신되기 전에 상기 메모리 어레이의 상태를 수신하는 단계; 및
    상기 메모리 어레이의 상태를 수신한 것에 적어도 부분적으로 기초하여 상기 메모리 어레이의 상태를 복원하기 위한 하나 이상의 명령을 송신하는 단계
    를 포함하는, 방법.
  16. 제15항에 있어서,
    상기 메모리 디바이스로부터, 상기 손상된 버전의 제어 신호의 적어도 일부를 수신하는 단계;
    상기 메모리 디바이스로 송신된 상기 제어 신호를 상기 메모리 디바이스로부터 수신된 상기 손상된 버전의 제어 신호의 적어도 일부와 비교하는 단계;
    상기 비교에 적어도 부분적으로 기초하여 상기 손상된 버전의 제어 신호를 야기한 오류를 식별하는 단계로서, 송신 오류, 타이밍 오류, 신호 레인 오류, 또는 이의 임의의 조합을 식별하는 단계를 포함하는, 상기 오류를 식별하는 단계; 및
    상기 오류를 식별한 것에 적어도 부분적으로 기초하여 상기 메모리 디바이스에 대한 액세스를 제한하는 상태를 종료하기 위한 명령을 상기 메모리 디바이스로 송신하는 단계
    를 더 포함하는, 방법.
  17. 제16항에 있어서,
    상기 오류를 식별한 것에 적어도 부분적으로 기초하여 제어 시그널링을 상기 메모리 디바이스로 송신하기 위한 파라미터를 수정하는 단계; 및
    제어 시그널링을 송신하기 위해 상기 수정된 파라미터에 따라 상기 제어 정보를 포함하는 제2 신호를 상기 메모리 디바이스로 송신하는 단계
    를 더 포함하는, 방법.
  18. 제15항에 있어서, 상기 제어 정보는 제1 명령 및 제1 메모리 뱅크를 나타내는 제1 메모리 주소를 포함하고, 상기 방법은,
    상기 손상된 버전의 제어 신호가 상기 메모리 디바이스에서 수신되었다는 상기 표시를 수신한 것에 적어도 부분적으로 기초하여 상기 손상된 버전의 제어 신호가 수신되기 전에 또는 수신될 때 상기 메모리 어레이의 상태에 대한 요청을 상기 메모리 디바이스로 송신하는 단계를 더 포함하되, 상기 메모리 어레이의 상태를 수신하는 단계는,
    상기 메모리 디바이스로부터, 제2 메모리 뱅크의 복수의 메모리 셀을 식별하는 제2 메모리 주소 및 상기 손상된 버전의 제어 신호가 수신되기 전에 상기 제2 메모리 뱅크가 개방됨을 나타내는 플래그를 수신하는 단계를 포함하는, 방법.
  19. 제18항에 있어서,
    상기 제2 메모리 주소 및 상기 플래그에 적어도 부분적으로 기초하여 상기 손상된 버전의 제어 신호가 수신되었을 때 상기 메모리 어레이의 상태를 결정하는 단계를 더 포함하되, 상기 메모리 어레이의 상태를 복원하기 위한 상기 하나 이상의 명령을 송신하는 단계는,
    상기 제2 메모리 주소 및 상기 플래그에 적어도 부분적으로 기초하여 상기 제2 메모리 뱅크의 복수의 메모리 셀을 개방하기 위한 제2 명령을 상기 메모리 디바이스로 송신하는 단계를 포함하는, 방법.
  20. 장치로서,
    복수의 메모리 뱅크를 포함하는 메모리 어레이;
    상기 메모리 어레이와 결합되고 상기 메모리 어레이에 액세스하기 위한 제어 정보를 포함하는 제어 시그널링을 수신하도록 구성된 수신기;
    상기 수신기와 결합되고 상기 제어 정보에서 오류를 검출하고 검출된 오류의 표시를 시그널링하도록 구성된 회로로서, 상기 메모리 어레이는 상기 회로의 출력에 적어도 부분적으로 기초하여 제한된 액세스 상태에 진입하도록 구성되는, 상기 회로;
    상기 회로와 결합되고 상기 회로의 출력에 적어도 부분적으로 기초하여 상기 메모리 어레이의 상태를 저장하도록 구성된 제1 레지스터; 및
    상기 제1 레지스터와 결합되고 상기 제1 레지스터의 콘텐트 및 상기 제1 레지스터의 콘텐트에 대응하는 제어 정보에서 검출된 오류의 표시를 호스트 디바이스로 송신하도록 구성된 송신기
    를 포함하는, 장치.
  21. 제20항에 있어서,
    상기 메모리 어레이로 하여금 상기 회로의 출력에 적어도 부분적으로 기초하여 상기 제한된 액세스의 상태에 진입하게 하도록 구성된 구성요소를 더 포함하는, 장치.
  22. 제20항에 있어서,
    상기 수신기 및 상기 메모리 어레이와 결합된 디코더로서, 수신된 제어 정보를 디코딩하고 디코딩된 제어 정보를 상기 메모리 어레이에 시그널링하도록 구성되는, 상기 디코더;
    상기 제1 레지스터와 결합되고 상기 장치에 타이밍 신호를 제공하도록 구성된 클록; 및
    오류를 검출하도록 구성된 상기 회로의 출력에 기초하여 상기 클록의 출력을 차단하도록 구성된 로직 구성요소
    를 더 포함하되, 상기 로직 구성요소의 입력부는 상기 클록 및 상기 디코더와 결합되고 상기 로직 구성요소의 출력부는 상기 제1 레지스터와 결합되는, 장치.
  23. 제20항에 있어서,
    상기 수신기 및 상기 메모리 어레이와 결합된 디코더로서, 수신된 제어 정보를 디코딩하고 디코딩된 제어 정보를 상기 메모리 어레이에 시그널링하도록 구성되는, 상기 디코더;
    오류를 검출하도록 구성된 상기 회로의 출력을 저장하도록 구성된 래치;
    상기 래치와 결합되고 타이밍 신호를 제공하도록 구성된 클록으로서, 상기 래치는 상기 클록의 출력에 적어도 부분적으로 기초하여 상기 회로의 출력을 시그널링하도록 더 구성되는, 상기 클록; 및
    상기 래치의 출력에 적어도 부분적으로 기초하여 상기 메모리 어레이에 대한 상기 디코더의 출력을 차단하도록 구성된 로직 구성요소를 더 포함하는, 장치.
  24. 제20항에 있어서,
    상기 제어 정보에서 오류를 검출하도록 구성된 상기 회로의 출력에 적어도 부분적으로 기초하여 상기 제어 시그널링의 제1 제어 신호의 적어도 일부를 저장하도록 구성된 제2 레지스터를 더 포함하는, 장치.
  25. 제20항에 있어서,
    상기 제1 레지스터 및 상기 메모리 어레이와 결합된 디코더로서, 수신된 제어 정보를 디코딩하고 디코딩된 제어 정보를 상기 메모리 어레이에 시그널링하도록 구성되는, 상기 디코더를 더 포함하되, 상기 제1 레지스터는 상기 디코더의 출력에 적어도 부분적으로 기초하여 메모리 주소 또는 메모리 뱅크의 상태, 또는 둘 다를 저장하도록 더 구성되는, 장치.
KR1020217021271A 2018-12-19 2019-12-19 제어 정보 오류 보고 KR20210089266A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201862781989P 2018-12-19 2018-12-19
US62/781,989 2018-12-19
US16/719,896 2019-12-18
US16/719,896 US11086733B2 (en) 2018-12-19 2019-12-18 Reporting control information errors
PCT/US2019/067412 WO2020132204A1 (en) 2018-12-19 2019-12-19 Reporting control information errors

Publications (1)

Publication Number Publication Date
KR20210089266A true KR20210089266A (ko) 2021-07-15

Family

ID=71097568

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217021271A KR20210089266A (ko) 2018-12-19 2019-12-19 제어 정보 오류 보고

Country Status (5)

Country Link
US (2) US11086733B2 (ko)
EP (1) EP3899727A4 (ko)
KR (1) KR20210089266A (ko)
CN (1) CN113366448A (ko)
WO (1) WO2020132204A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023153768A1 (ko) * 2022-02-08 2023-08-17 삼성전자 주식회사 전자 장치에서 데이터베이스 파일을 복구하는 방법

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11120884B2 (en) 2015-09-30 2021-09-14 Sunrise Memory Corporation Implementing logic function and generating analog signals using NOR memory strings
US11086733B2 (en) 2018-12-19 2021-08-10 Micron Technology, Inc. Reporting control information errors
WO2020167658A1 (en) 2019-02-11 2020-08-20 Sunrise Memory Corporation Vertical thin-film transistor and application as bit-line connector for 3-dimensional memory arrays
KR20200137739A (ko) * 2019-05-31 2020-12-09 에스케이하이닉스 주식회사 반도체장치
US11515309B2 (en) 2019-12-19 2022-11-29 Sunrise Memory Corporation Process for preparing a channel region of a thin-film transistor in a 3-dimensional thin-film transistor array
WO2021159028A1 (en) 2020-02-07 2021-08-12 Sunrise Memory Corporation High capacity memory circuit with low effective latency
EP4100839A4 (en) 2020-02-07 2024-03-13 Sunrise Memory Corporation QUASI-VOLATILE SYSTEM LEVEL MEMORY
US11561911B2 (en) * 2020-02-24 2023-01-24 Sunrise Memory Corporation Channel controller for shared memory access
US11507301B2 (en) 2020-02-24 2022-11-22 Sunrise Memory Corporation Memory module implementing memory centric architecture
US11880291B2 (en) 2020-07-07 2024-01-23 Micron Technology, Inc. Monitoring and reporting a status of a memory device
US11600355B2 (en) 2020-07-28 2023-03-07 Micron Technology, Inc. Monitoring and adjusting access operations at a memory device
US11922061B2 (en) 2020-08-31 2024-03-05 Micron Technology, Inc. Adaptive memory refresh control
US11783885B2 (en) * 2020-10-30 2023-10-10 Micron Technology, Inc. Interactive memory self-refresh control
US11842777B2 (en) 2020-11-17 2023-12-12 Sunrise Memory Corporation Methods for reducing disturb errors by refreshing data alongside programming or erase operations
US11810640B2 (en) 2021-02-10 2023-11-07 Sunrise Memory Corporation Memory interface with configurable high-speed serial data lanes for high bandwidth memory
JP7381519B2 (ja) * 2021-06-09 2023-11-15 アンリツ株式会社 誤り率測定装置および誤り率測定方法
TW202310429A (zh) 2021-07-16 2023-03-01 美商日升存儲公司 薄膜鐵電電晶體的三維記憶體串陣列
US11790974B2 (en) * 2021-11-17 2023-10-17 Micron Technology, Inc. Apparatuses and methods for refresh compliance
US20230205615A1 (en) * 2021-12-28 2023-06-29 Micron Technology, Inc. Error detection signaling
US11789819B1 (en) * 2022-04-29 2023-10-17 Micron Technology, Inc. Seamless recovery of a hardware-based I/O path in a multi-function NVMe SSD

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101174936B1 (ko) 2004-10-14 2012-08-17 주식회사 아도반테스토 오류 정정 부호가 부가된 데이터열을 기억하는 피시험메모리를 시험하는 시험 장치 및 시험 방법
US7831882B2 (en) * 2005-06-03 2010-11-09 Rambus Inc. Memory system with error detection and retry modes of operation
JP4723290B2 (ja) * 2005-06-06 2011-07-13 株式会社日立製作所 ディスクアレイ装置及びその制御方法
US7523381B2 (en) * 2005-09-01 2009-04-21 Micron Technology, Inc. Non-volatile memory with error detection
US8352805B2 (en) * 2006-05-18 2013-01-08 Rambus Inc. Memory error detection
US8028198B2 (en) * 2007-07-30 2011-09-27 Micron Technology, Inc. Devices, methods, and apparatuses for detection, sensing, and reporting functionality for semiconductor memory
US8880970B2 (en) * 2008-12-23 2014-11-04 Conversant Intellectual Property Management Inc. Error detection method and a system including one or more memory devices
US20100180182A1 (en) * 2009-01-09 2010-07-15 Seagate Technology Llc Data memory device and controller with interface error detection and handling logic
JP2014182720A (ja) * 2013-03-21 2014-09-29 Fujitsu Ltd 情報処理システム、情報処理装置及び障害処理方法
US9454421B2 (en) * 2013-10-15 2016-09-27 Cypress Semiconductor Corporation Method for providing read data flow control or error reporting using a read data strobe
US9852811B2 (en) * 2014-11-13 2017-12-26 Macronix International Co., Ltd. Device and method for detecting controller signal errors in flash memory
US9606851B2 (en) * 2015-02-02 2017-03-28 International Business Machines Corporation Error monitoring of a memory device containing embedded error correction
US11086733B2 (en) * 2018-12-19 2021-08-10 Micron Technology, Inc. Reporting control information errors

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023153768A1 (ko) * 2022-02-08 2023-08-17 삼성전자 주식회사 전자 장치에서 데이터베이스 파일을 복구하는 방법

Also Published As

Publication number Publication date
EP3899727A4 (en) 2022-03-30
US20220004466A1 (en) 2022-01-06
US11579988B2 (en) 2023-02-14
EP3899727A1 (en) 2021-10-27
US20200201718A1 (en) 2020-06-25
WO2020132204A1 (en) 2020-06-25
US11086733B2 (en) 2021-08-10
CN113366448A (zh) 2021-09-07

Similar Documents

Publication Publication Date Title
US11579988B2 (en) Reporting control information errors
US11720443B2 (en) Error correction management for a memory device
US11914467B2 (en) Dynamic control of error management and signaling
US11294766B2 (en) Coordinated error correction
US11169730B2 (en) Scrub rate control for a memory device
CN114072772A (zh) 具有快速数据存取的错误校正存储器装置
CN114097038B (zh) 具有用于错误校正的状态反馈的存储器装置
US11354064B2 (en) Detection of illegal commands
CN113056789B (zh) 存储器命令验证
US11656937B2 (en) Techniques for error detection and correction in a memory system
US11928018B2 (en) Coordinated error protection
US20240220354A1 (en) Coordinated error protection

Legal Events

Date Code Title Description
E902 Notification of reason for refusal