KR20150024350A - 링 토폴로지 스테이터스 인디케이션 - Google Patents

링 토폴로지 스테이터스 인디케이션 Download PDF

Info

Publication number
KR20150024350A
KR20150024350A KR1020147036568A KR20147036568A KR20150024350A KR 20150024350 A KR20150024350 A KR 20150024350A KR 1020147036568 A KR1020147036568 A KR 1020147036568A KR 20147036568 A KR20147036568 A KR 20147036568A KR 20150024350 A KR20150024350 A KR 20150024350A
Authority
KR
South Korea
Prior art keywords
status
memory
memory device
ready
busy
Prior art date
Application number
KR1020147036568A
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 KR20150024350A publication Critical patent/KR20150024350A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1684Details of memory controller using multiple buses
    • 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/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1063Control signal output circuits, e.g. status or busy flags, feedback command signals
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • G06F11/3082Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved by aggregating or compressing the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4247Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus
    • G06F13/4256Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus using a clocked protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • 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

Abstract

반도체 디바이스는 외부 데이터 인터페이스, 외부 스테이터스 인터페이스, 및 복수의 내부 데이터 인터페이스들을 갖는 브리지 디바이스를 포함한다. 복수의 메모리 디바이스들은 각각 내부 데이터 인터페이스들 중 하나를 통해 브리지 디바이스에 접속된다. 메모리 디바이스들 각각은 브리지 디바이스의 입력에 접속된 준비/비지 출력을 갖는다. 브리지 디바이스는 외부 스테이터스 인터페이스 상에서 수신된 스테이터스 요청 커맨드에 응답하여 외부 스테이터스 인터페이스 상에서 패킷화된 형태로 각각의 준비/비지 출력의 현재 상태를 출력하며; 내부 데이터 인터페이스들 중 하나를 통해 선택된 메모리 디바이스의 스테이터스 레지스터로부터 정보를 판독하고 외부 데이터 인터페이스 상에서 수신된 스테이터스 판독 커맨드에 응답하여 외부 데이터 인터페이스 상에 정보를 제공하도록 구성된다. 반도체 디바이스를 동작시키는 방법이 또한, 개시된다.

Description

링 토폴로지 스테이터스 인디케이션{RING TOPOLOGY STATUS INDICATION}
관련 출원들의 상호 참조
본 출원은 2012년 3월 29일자로 출원된 미국 가특허출원 제 61/652,513 호에 우선권을 주장하고, 이것의 내용들은 그 전체가 참조로서 여기에 포함된다.
본 발명의 분야
본 발명은 일반적으로, 다수의 직렬로 접속된 반도체 디바이스들로부터 제어기로 스테이터스 (status) 정보를 통신하기 위한 장치 및 방법에 관한 것이다.
컴퓨터들 및 다른 정보 기술 시스템들은 통상적으로, 메모리와 같은 반도체 디바이스들을 포함한다. 반도체 디바이스들은 제어기에 의해 제어되고, 이 제어기는 컴퓨터의 중앙 처리 장치 (CPU) 의 일부를 형성할 수도 있거나 그로부터 별개일 수도 있다. 제어기는 반도체 디바이스들로 그리고 반도체 디바이스들로부터 정보를 통신하기 위한 인터페이스를 갖는다. 또한, 통신될 수도 있는 정보의 유형들, 및 이러한 제어기-디바이스 통신들을 수행하기 위한 종래 기술에 개시된 각종 구현들이 많은 것으로 이해될 것이다. 메모리 디바이스의 준비 (ready) 또는 비지 (busy) 스테이터스는 메모리 디바이스로부터 제어기로 통신될 수도 있는 정보의 단지 일 유형의 예이다.
링 토폴로지들을 갖는 메모리 시스템들의 예들은, 2008년 8월 21일자로 공개된 발명의 명칭이 "SYSTEM HAVING ONE OR MORE MEMORY DEVICES" 인 미국특허출원 공개 제 2008/0201548 호, 2008년 2월 28일자로 공개된 발명의 명칭이 "SCALABLE MEMORY SYSTEM" 인 미국 특허출원 공개 제 2008/0049505 호, 2008년 2월 28일자로 공개된 발명의 명칭이 "MODULAR COMMAND STRUCTURE FOR MEMORY AND MEMORY SYSTEM"인 미국 특허출원 공개 제 2008/0052449 호, 2010년 4월 15일자로 공개된 발명의 명칭이 "COMPOSITE MEMORY HAVING A BRIDGING DEVICE FOR CONNECTING DISCRETE MEMORY DEVICES TO A SYSTEM" 인 미국 특허출원 공개 제 2010/0091536 호에서 설명되고, 이 출원들 모두는 그 전체가 본원에 참조로서 포함된다. 이어지는 상세한 설명의 각종 포인트들에서, 소정의 예시의 커맨드, 어드레스 및 데이터 포맷들, 프로토콜들, 내부 디바이스 구조들, 및/또는 버스 트랜잭션들 등에 대한 참조들이 이루어질 수도 있고, 당업자는 전술된 특허 참조들을 참조하여 추가의 예시의 상세들이 신속하게 획득될 수 있음을 인식할 것이다.
링 토폴로지를 갖는 메모리 시스템에서, 커맨드 패킷들은 제어기로부터 비롯되고, 그들이 제어기로 다시 돌아갈 때까지 포인트-투-포인트 방식으로 각각의 메모리 디바이스를 통해 메모리 디바이스들의 링 주위에서 패스된다. 도 1a 는 병렬 클록 신호를 수신하는 예시의 시스템의 블록도인 한편, 도 1b 는 소스 동기식 클록 신호를 수신하는 도 1a 의 동일한 시스템의 블록도이다. 클록 신호는 단일 종단 (single ended) 클록 신호 또는 차동 클록 페어 중 어느 하나일 수 있다.
도 1a 에서, 시스템 (20) 은 적어도 하나의 출력 포트 (Xout) 및 입력 포트 (Xin) 를 갖는 메모리 제어기 (22), 및 직렬로 접속되는 메모리 디바이스들 (24, 26, 28 및 30) 을 포함한다. 도 1a 에는 도시되지 않았으나, 각각의 메모리 디바이스는 Xin 입력 포트 및 Xout 출력 포트를 갖는다. 시스템의 일부인, 입력 및 출력 포트들은 시스템에 메모리 디바이스를 인터페이싱하는 하나 이상의 물리적 핀들 또는 접속들로 이루어진다. 일부 경우들에서, 메모리 디바이스들은 플래시 메모리 디바이스들이다. 도 1a 의 현재 예는 4 개의 메모리 디바이스들을 포함하지만, 대안의 예들은 단일 메모리 디바이스 또는 임의의 적합한 수의 메모리 디바이스들을 포함할 수 있다. 따라서, 메모리 디바이스 (24) 가 그것이 Xout 에 접속될 때 시스템 (20) 의 제 1 디바이스이면, 메모리 디바이스 (30) 는 그것이 Xin 에 접속될 때 제 N 또는 최종 디바이스이며, N 은 0 보다 큰 정수이다. 그러면, 메모리 디바이스들 (26 내지 28) 은 제 1 메모리 디바이스와 최종 메모리 디바이스 사이에 개재하는 직렬로 접속된 메모리 디바이스들이다. 각각의 메모리 디바이스는 시스템의 초기화를 파워 업 할 때 별개의 식별 (identification; ID) 번호, 또는 디바이스 어드레스 (DA) 를 가정할 수 있어서, 메모리 디바이스들은 개별적으로 어드레싱 가능하다. 발명의 명칭이 "APPARATUS AND METHOD FOR PRODUCING IDS FOR INTERCONNECTED DEVICES OF MIXED TYPE" 인 공동 소유의 미국 특허출원 공개 제 2008/0155179 호, 발명의 명칭이 "APPARATUS AND METHOD FOR ESTABLISHING DEVICE IDENTIFIERS FOR SERIALLY INTERCONNECTED DEVICES" 인 미국 특허출원 공개 제 2007/0233917 호, 발명의 명칭이 "APPARATUS AND METHOD FOR PRODUCING DEVICE IDENTIFIERS FOR SERIALLY INTERCONNECTED DEVICES OF MIXED TYPE" 인 미국 특허출원 공개 제 2008/0181214 호, 발명의 명칭이 "APPARATUS AND METHOD FOR PRODUCING IDENTIFIERS REGARDLESS OF MIXED DEVICE TYPE IN A SERIAL INTERCONNECTION" 인 미국 특허출원 공개 제 2008/0192649 호, 발명의 명칭이 "APPARATUS AND METHOD FOR IDENTIFYING DEVICE TYPE OF SERIALLY INTERCONNECTED DEVICES" 인 미국 특허출원 공개 제 2008/0215778 호, 발명의 명칭이 "ADDRESS ASSIGNMENT AND TYPE RECOGNITION OF SERIALLY INTERCONNECTED MEMORY DEVICES OF MIXED TYPE" 인 미국 특허출원 공개 제 2008/0140899 호, 및 발명의 명칭이 "SYSTEM AND METHOD OF OPERATING MEMORY DEVICES OF MIXED TYPE" 인 미국 특허출원 공개 제 2008/0140916 호로서 그 전체가 본원에 참조로서 포함되는 이 출원들 모두는 시스템의 직렬로 접속된 메모리 디바이스들에 대한 디바이스 어드레스들을 생성 및 할당하는 방법들을 설명한다.
메모리 디바이스들 (24 내지 30) 은, 하나의 메모리 디바이스의 데이터 입력이 이전 메모리 디바이스의 데이터 출력에 접속되기 때문에 직렬 접속된 것으로 간주되고, 이에 의해 체인의 제 1 및 최종 메모리 디바이스들을 제외하고는 직렬-접속 시스템 구성을 형성한다. 메모리 제어기 (22) 의 채널은 도전성 라인들에 접속된 별개의 핀들, 또는 동일한 핀들에 의해 제공된 데이터, 어드레스, 및 제어 정보를 포함한다. 도 1a 의 예는 하나의 채널을 포함하고, 여기서 하나의 채널은 Xout 및 대응하는 Xin 포트들을 포함한다. 그러나, 메모리 제어기 (22) 는 별개의 메모리 디바이스 체인들을 수용하기 위한 임의의 적합한 수의 채널들을 포함할 수 있다. 도 1a 의 예에서, 메모리 제어기 (22) 는 모든 메모리 디바이스들에 병렬로 접속되며, 클록 신호 (CK) 를 제공한다.
일반적인 동작에서, 메모리 제어기 (22) 는 동작 코드 (op code), 디바이스 어드레스, 판독 또는 프로그래밍을 위한 선택적 어드레스 정보, 및 프로그래밍을 위한 데이터를 포함하는, 그 Xout 포트를 통해 커맨드를 발행한다. 커맨드는 직렬의 비트스트림 커맨드 패킷으로서 발행될 수도 있는데, 여기서 패킷은 미리결정된 사이즈의 세그먼트들로 논리적으로 세분될 수도 있다. 각각의 세그먼트는 예를 들어, 사이즈가 1 바이트일 수 있다. 비트스트림은 시간이 경과함에 따라 제공된 비트들의 시리즈들 또는 시퀀스이다. 커맨드는, 디바이스 어드레스를 그 할당된 어드레스에 비교하는 제 1 메모리 디바이스 (24) 에 의해 수신된다. 어드레스가 일치하면, 메모리 디바이스 (24) 는 커맨드를 실행한다. 커맨드는 그 자신의 출력 포트 (Xout) 를 통해 다음의 메모리 디바이스 (26) 로 패스되고, 여기서 동일한 절차가 반복된다. 결국, 선택된 메모리 디바이스로 지칭된, 일치하는 디바이스 어드레스를 갖는 메모리 디바이스는 커맨드에 의해 지정된 동작을 수행할 것이다. 커맨드가 판독 데이터 커맨드이면, 선택된 메모리 디바이스는 그 출력 포트 (Xout)(미도시) 를 통해 판독 데이터를 출력할 것이고, 이 데이터는 그것이 메모리 제어기 (22) 의 Xin 포트에 도달할 때까지 개재 (intervening) 메모리 디바이스들을 통해 직렬로 패스된다. 커맨드들 및 데이터가 직렬의 비트스트림에 제공되기 때문에, 클록은 직렬의 비트들을 클로킹 인/아웃하고, 내부 메모리 디바이스 동작들을 동기화하기 위해 각각의 메모리 디바이스에 의해 사용된다. 이 클록은 시스템 (20) 내의 메모리 디바이스들 모두에 의해 사용된다.
도 1a 의 시스템 (20) 의 더 많은 특정 예의 추가의 상세들은 이전에 언급된 미국 특허출원 공개 제 2008/0201548 호의 단락 53-56 및 도 3a 에 제공된다.
도 1a 의 시스템 (20) 에 대한 추가의 성능 개선은 도 1b 의 시스템에 의해 획득될 수 있다. 도 1b 의 시스템 (40) 은, 클록 신호 (CK) 가 소스 동기식 클록 신호 (CK) 를 제공하는 대안의 메모리 제어기 (42) 로부터 각각의 메모리 디바이스에 직렬로 제공된다는 것을 제외하고, 도 1a 의 시스템 (20) 과 유사하다. 각각의 메모리 디바이스 (44, 46, 48 및 50) 는 그 클록 입력 포트 상에서 소스 동기식 클록을 수신하고, 그것을 그 클록 출력 포트를 통해 시스템의 다음 디바이스로 포워딩할 수도 있다. 시스템 (40) 의 일부 예들에서, 클록 신호 (CK) 는 짧은 신호 라인들을 통해 하나의 메모리 디바이스로부터 다른 것으로 패스된다. 따라서, 병렬의 클록 분배 방식에 관련된 클록 성능 이슈들 중 어느 것도 존재하지 않고, CK 는 고주파수들에서 동작할 수 있다. 따라서, 시스템 (40) 은 도 1a 의 시스템 (20) 보다 더 높은 속도로 동작할 수 있다.
도 1b 의 시스템 (40) 의 더 많은 특정 예의 추가의 상세들은 이전에 언급된 미국 특허출원 공개 제 2008/0201548 호의 단락 57-58 및 도 3b 에 제공된다.
이제 도 2 를 참조할 것이다. 도 2 는 메모리 제어기 (210) 및 복수의 메모리 디바이스들 (212) 을 포함하는 시스템 (200) 의 블록도이다. 예시된 시스템은, 많은 관점들에서 도 1a 의 시스템과 유사한데, Xout 및 Xin 포트들은 복수의 라인들에 의해 더 세세한 상세들로 도식적으로 예시되며, 라인들 중 하나는 디바이스들의 링 주위에서 디바이스로부터 디바이스로 연장되는 스테이터스 라인이고, 디바이스들 각각은 독립적인 스테이터스 링 (214) 을 제공하기 위해 (예를 들어, DQ 핀들에 추가적인) IO 핀들의 추가적인 세트를 포함한다. 이들 추가적인 IO 핀들은 메모리 제어기 (210) 및 메모리 디바이스들 (212) 각각 상에서 SI 및 SO 로 라벨링된다. SI 핀 및 S0 핀은 또한, 스테이터스 입력 핀 및 스테이터스 출력 핀으로서 각각 본원에 지칭된다.
이제 도 3 을 참조하면, 도 1b 와 관련하여 설명된 바와 같이 시스템 (300) 이 직렬로 분배된 클록을 이용하는 것을 제외하고 시스템 (200) 과 유사한 시스템 (300) 의 블록도가 존재한다.
도 2 및 도 3 의 예시의 실시형태들에 따르면, 메모리 디바이스 (212 또는 312) 가 프로그램, 판독, 소거 등과 같은 내부 동작을 완료한 경우, 그것은 그 스테이터스 레지스터를 완료된 동작에 관한 정보로 업데이트한다. 일단 디바이스가 그 스테이터스 레지스터를 업데이트하는 것을 완료하였으면, 메모리 디바이스는 스테이터스 링 (214 또는 314) 를 통해 그 스테이터스 레지스터의 콘텐츠를 제어기 (210 또는 310) 로 다시 자동으로 송신하고, 이에 의해 제어기 (210 또는 310) 에 중요한 동작 (outstanding operation) 을 완료했다는 것을 통지할 수도 있다. 이 어레인지먼트의 하나의 단점은, 많은 스테이터스 패킷들이 잠재적으로, 버스 컨텐션을 초래하는, 각각의 개별의 메모리 디바이스 (212, 312) 에 의해 결정된 시간들에서 스테이터스 링 (214, 314) 을 통해 송신될 필요가 있을 수도 있다는 것이다.
도 2 또는 도 3 의 시스템들 내에서 스테이터스 인디케이션을 구현하는 다른 변형들이 고려된다. 예를 들어, 단순한 비동기-유형 구현이 하나의 대안의 예시의 실시형태이다. 메모리 디바이스들 중 임의의 것 (212 또는 312) 은, 소정의 내부 동작들 (예를 들어, 페이지 판독, 페이지 프로그램, 블록 소거, 동작 중단 등) 의 완료 시에, 스테이터스 링 (214 또는 314) 상에서 단일의 스트로브 펄스를 발행하여, 동작의 완료를 제어기 (210 또는 310) 에 통지할 수 있다. 그러나, 단일의 스트로브 펄스의 발행은 반드시, 일부 동작이 완료된 이들 경우들에만 제한되는 것은 아니고, 차라리 보다 일반적으로 단일의 스트로브 펄스는 메모리 디바이스 내의 스테이터스 변화의 일부 형태의 인디케이션 (indication) 을 제공하도록 의도된다. 또한, 예시의 실시형태들에 따른 메모리 디바이스들 각각은 스트로브 펄스들을 생성하기 위한 회로부 뿐만 아니라 스트로브 펄스들을 출력하기 위한 회로부를 포함할 수도 있는 것으로 고려된다.
적어도 일부 비동기-유형 구현들에서, 스테이터스 펄스는 발행하는 메모리 디바이스의 아이덴티티에 관한 상세한 정보를 포함하지 않아서, 제어기 (210 또는 310) 는 예를 들어, 디바이스들의 링 주위에서 판독 스테이터스 레지스터 커맨드 (Read Status Register command) 를 브로드캐스트함으로써 발행하는 메모리 디바이스의 아이덴티티를 학습할 수도 있다. 디바이스들의 링에서 각각의 메모리 디바이스 (212 또는 312) 는 그 각각의 CSI 핀 상에서 판독 스테이터스 레지스터 커맨드를 수신하고, 커맨드를 프로세싱하고 그것을 다음의 하류의 메모리 디바이스로 포워딩하며, 이것은 차례로 유사한 방식으로 판독 스테이터스 레지스터 커맨드를 핸들링한다. 이 프로세스 동안, 메모리 디바이스들 각각 (212 또는 312) 은 그 각각의 스테이터스 정보를 메모리 디바이스의 Q 출력 핀들 상에서 송신된 스테이터스 패킷에 첨부한다. 일단 스테이터스 패킷이 제어기 (210 또는 310) 에 다시 도달하면, 스테이터스 패킷은 어느 메모리 디바이스가 동작을 완료했는지 그리고 그 동작이 성공적으로 완료되었는지 (또는 실패했는지) 여부의 결정을 획득하도록 프로세싱될 수 있다. 일부 예들에서, 제어기는 판독 스테이터스 레지스터 커맨드를 항상 즉시 브로드캐스트하지 않고 차라리 판독 스테이터스 레지스터 커맨드를 브로드캐스트하기 전에 소정 수 (즉, 1 보다 큰 수) 의 스테이터스 펄스들이 수신될 때까지 대기함으로써 이들 판독 스테이터스 레지스터 커맨드들과 연관된 버스 사용 오버헤드를 감소시키는 것이 가능할 수도 있다. 이 어레인지먼트의 일 단점은, 브로드캐스트 판독 스테이터스 레지스터 커맨드에 대한 응답들이 잠재적으로 데이터 버스 상에서 대량의 대역폭을 잠재적으로 차지할 수 있고, 판독 및 기입 동작들과 같은 메모리 디바이스의 주요 동작들과의 버스 컨텐션을 초래할 수도 있다는 것이다.
추가적인 복잡한 문제들이, 도 2 및 도 3 에 도시된 바와 같이 복수의 핀들로 세분될 수도 있는 채널 Xin/Xout 를 통해 제어기 (402) 에 직렬로 접속된, 다수의 NAND 다이들 (414) 및 적어도 하나의 브리지 칩 (412) 을 갖는 다수의 멀티-칩 패키지들 (404)("MCPs") 을 구비한, 도 4 에 도시된 바와 같은 HLNAND 링 토폴로지 메모리 시스템 (400) 에서 생긴다. 동시에 발생하는 판독, 프로그램, 및 소거와 같은 많은 동작들이 존재할 수 있다. 각각의 개별의 NAND 다이 (414) 는 임의의 하나의 다이에서의 동작의 진행을 나타내도록 준비/비지 핀 R/B# (미도시) 을 갖는다. HLNAND 링 구성은 도시된 것보다 많은 디바이스들, 예를 들어 총 256 R/B# 신호들에 대해 각각 16 개의 NAND 다이들을 갖는 16 개의 MCP 들을 가질 수도 있다. 이들을 개별적으로 그리고 직접적으로 제어기 (402) 에 접속시키는 것은 명백히 비현실적이다. 추가의 문제는, 일단 동작이 R/B# 신호에 의해 나타난 바와 같이 완료되었으면, 제어기 (402) 는 그 후 NAND 다이 (414) 상에서 스테이터스 레지스터를 판독하여 동작이 성공적으로 완료되었는지 여부 또는 에러가 발생했는지 여부를 결정해야 한다는 것이다. 진행에서의 많은 동시적인 동작들로, 메인 HLNAND 커맨드/데이터 인터페이스를 통해 개별적인 스테이터스 레지스터들을 판독하는 것은 판독 및 기입 트랜잭션들에 이용 가능한 상당한 대역폭을 소모할 수 있다.
공동 소유의 미국 특허출원 공개 제 2011/0258366 로서 그 전체가 참조로서 본원에 포함되는 이 출원은, 링 토폴로지에서 접속된 메모리 디바이스들로부터 스테이터스 정보를 판독하는 여러 기법들을 설명한다. 먼저, 스테이터스 신호는 입력 단자 (SI) 를 통해 링의 이전 디바이스로부터 각각의 디바이스에 제공되고, 각각의 디바이스는 출력 단자 (SO) 를 통해 링 상의 다음 디바이스에 스테이터스 정보를 제공한다. 디바이스들은 보통, SI 상에서 수신된 정보를 SO 출력으로 패스한다. 판독, 프로그램 또는 소거 동작의 완료와 같은 이벤트가 하나의 디바이스 내에서 발생하는 경우, 메모리 디바이스는 SO 상에서 스테이터스 패킷을 출력한다. 스테이터스 패킷은, 제어기가 정보, 디바이스 식별자, 완료된 메모리 동작 상에서 정보를 제공하는 스테이터스 비트들, 및 패킷의 정확함을 보장하기 위한 가능하게는 에러 정정 비트들을 적절히 인식하고 디코딩할 수 있도록 헤더를 포함한다. 착신 패킷이 링의 상류 디바이스로부터 검출되면, 로컬 스테이터스 패킷은 착신 패킷이 완료될 때까지 홀딩될 것이다. 이 어레인지먼트는, 스테이터스 패킷들을 제어기로 전달하는데 있어서 지연들 및/또는 컨텐션의 가능성을 포함하여, SI/SO 채널 상에서 상당한 대역폭을 차지한다는 단점을 갖는다.
미국 특허출원 공개 제 2011/0258366 호에 개시된 제 2 기법은 동일한 SI 내지 S0 스테이터스 링 토폴로지를 사용한다. 판독, 프로그램 또는 소거 동작의 완료와 같은 이벤트가 하나의 디바이스 내에서 발생하는 경우, 디바이스는 S0 에 하나의 클록 사이클 지속기간을 추가한다. S1 상에서 동시에 펄스가 수신되면, 브리지 칩은 2 개의 클록 사이클들로 펄스를 연장한다. 제어기는 소정 기간에서 발생하는 이벤트들의 수를 결정하기 위해 수신된 펄스들의 총 폭을 관측할 수 있다. 어느 디바이스들 및 어느 NAND 다이가 펄스들을 트리거링했는지를 정확하게 찾기 위해, 제어기는 커맨드/데이터 인터페이스를 사용하여 스테이터스 판독 커맨드들을 발행해야 한다. 이 어레인지먼트는 SI/SO 채널 상에서 디바이스-생성된 대역폭 사용을 감소시키지만, 다수의 동작들이 동시에 수행되고 있는 경우 어느 디바이스(들)이 펄스(들)을 SI/SO 에 추가했는지를 제어기가 식별할 수 없다는 단점을 갖는다. 결과적으로, 제어기는 브로드캐스트 스테이터스 판독 커맨드를 발행해야 하고, 이것은 커맨드들 및 데이터에 사용될 수 있는 커맨드/데이터 인터페이스 상에서 상당한 대역폭을 소모한다.
따라서, 제어기가 개별의 메모리 디바이스들로부터 준비/비지 및 스테이터스 정보를 신속하고 효율적인 방식으로 획득할 수 있는, 직렬로 접속된 메모리 시스템에 대한 필요성이 존재한다.
본 발명의 목적은 종래 기술의 단점들 중 하나 이상을 해결하는 것이다.
일 양태에서, 반도체 디바이스는 외부 데이터 인터페이스, 외부 스테이터스 인터페이스, 및 복수의 내부 데이터 인터페이스들을 갖는 브리지 디바이스를 포함한다. 복수의 메모리 디바이스들 각각은 내부 데이터 인터페이스들 중 하나를 통해 브리지 디바이스에 접속된다. 메모리 디바이스들 각각은 브리지 디바이스의 입력에 접속된 준비/비지 (ready/busy) 출력을 갖는다. 브리지 디바이스는, 외부 스테이터스 인터페이스 상에서 수신된 스테이터스 요청 커맨드에 응답하여 외부 스테이터스 인터페이스 상에서 패킷화된 포맷으로 각각의 준비/비지 출력의 현재 상태를 출력하며; 내부 데이터 인터페이스들 중 하나를 통해 선택된 메모리 디바이스의 스테이터스 레지스터로부터 정보를 판독하고 외부 데이터 인터페이스 상에서 수신된 스테이터스 판독 커맨드에 응답하여 외부 데이터 인터페이스 상에서 정보를 제공하도록 구성된다.
추가적인 양태에서, 브리지 디바이스 및 복수의 내부 데이터 인터페이스들을 통해 브리지 디바이스에 접속된 복수의 메모리 디바이스들을 갖는 반도체 디바이스를 동작시키는 방법은, 반도체 디바이스의 스테이터스 입력 상에서 스테이터스 요청 커맨드를 수신하는 단계; 스테이터스 요청 커맨드에 응답하여 반도체 디바이스의 스테이터스 출력 상에서 패킷화된 포맷으로 각각의 메모리 디바이스의 현재 준비/비지 상태를 출력하는 단계; 반도체 디바이스의 데이터 입력 상에서 스테이터스 판독 커맨드를 수신하는 단계; 및 스테이터스 판독 커맨드에 응답하여 반도체 디바이스의 데이터 출력 상에서 선택된 메모리 디바이스의 스테이터스 레지스터로부터 정보를 출력하는 단계를 포함한다.
본 발명의 실시형태들의 추가적인 및/또는 대안의 특성들, 양태들, 및 이점들은 다음의 상세한 설명, 첨부한 도면들, 및 첨부된 청구항들로부터 명백해질 것이다.
도 1a 는 병렬 클록 신호를 갖는 예시의 메모리 시스템의 블록도이다.
도 1b 는 소스 동기식 클록 신호를 갖는 예시의 메모리 시스템의 블록도이다.
도 2 는 추가의 I/O 핀들을 나타내는, 병렬 클록 신호를 갖는 예시의 메모리 시스템의 블록도이다.
도 3 은 추가의 I/O 핀들을 나타내는, 소스 동기식 클록 신호를 갖는 예시의 메모리 시스템의 블록도이다.
도 4 는 직렬-접속된 멀티-칩 패키지들을 갖는 대안의 메모리 시스템의 블록도이다.
도 5 는 제 1 실시형태에 따른 메모리 시스템의 블록도이다.
도 6 은 도 5 의 메모리 시스템에서 멀티-칩 패키지의 제 1 실시형태의 블록도이다.
도 7 은 어드레싱된 스테이터스 패킷을 사용하는 스테이터스 요청의 타이밍도이다.
도 8 은 브로드캐스트 데이터 패킷을 사용하는 스테이터스 요청의 타이밍 도이다.
도 9 는 브로드캐스트 어드레스를 갖는 어드레싱된 스테이터스 패킷을 사용하는 스테이터스 요청의 타이밍도이다.
도 10 은 페이지 프로그램 동작 및 스테이터스 판독 커맨드의 타이밍도이다.
도 11 은 블록 소거 동작 및 스테이터스 판독 커맨드의 타이밍도이다.
도 12 는 페이지 판독 커맨드의 타이밍도이다.
도 13 은 도 5 의 메모리 시스템에서 멀티-칩 패키지의 제 2 실시형태의 블록도이다.
도 5 및 도 6 을 참조하면, 메모리 시스템 (500) 은 포인트-투-포인트 링을 형성하는 하이퍼링크 (HL) 버스를 통해 4 개의 멀티-칩 (MCP) 메모리 디바이스들 (504) 에 접속된 제어기 (502) 를 포함한다. 더 많은 또는 더 적은 MCP들 (504) 이 사용될 수 있는 것으로 고려된다. 8-비트 HL 데이터 버스 D[7:0], Q[7:0] 는 제어기 (502) 로부터 MCP들 (504) 로 명령들 및 기입 데이터를, 그리고 MCP들 (504) 로부터 제어기 (502) 로 판독 데이터를 통신한다. 차동 클록 (CK/C #) 이 제어기 (502) 로부터 모든 MCP들 (504) 에 제공된다. 멀티-드롭 클록 아키텍처가 도 5 에 도시되었으나, 직렬 클록 아키텍처가 대안으로 사용될 수 있는 것으로 고려되고, 여기서 각각의 디바이스들은 링에서의 이전 디바이스로부터 클록 신호를 수신한다. 일반적으로, 직렬 클록 아키텍처는, 소스 동기식 동작 및 클록 상의 감소된 로딩으로 인해, 멀티-드롭 클록 아키텍처보다 고속의 동작을 할 수 있다. 각각의 MCP (504) 는 또한, 칩 인에이블 신호 (CE#) 및 리셋 신호 (R#) 를 제어기 (502) 로부터 수신한다. 포인트-투-포인트 신호들 CSO/CSI (커맨드 스트로브) 및 DSO/DSI (데이터 스트로브) 는 Q[7:0]/D[7:0] 버스 상의 커맨드, 기입 데이터 및 판독 데이터를 식별한다. 스테이터스 정보는 이하에서 추가로 상세히 논의될 방식으로 STO/STI 링 상에 제공된다.
도 6 을 참조하면, 각각의 MCP (504) 는 16 개의 메모리 다이들 (506) 을 포함한다. 다이들 (506) 은 NAND 플래시 메모리 다이들이지만, 임의의 다른 적합한 유형의 메모리 다이, 예를 들어 NOR 플래시 또는 DRAM 이 사용될 수도 있는 것으로 고려된다. 브리지 칩 (508) 은, 예를 들어 비동기식 NAND, 토글 모드 NAND, 또는 ONFI 일 수도 있는 네이티브 프로토콜에서 다이들 (506) 과 통신하기 위해 내부 인터페이스를 제공하는 브리징 디바이스이다. MCP (504) 는 대안으로 16 개보다 더 적거나 더 많은 다이들 (506), 또는 4 개보다 더 적거나 더 많은 내부 채널들을 포함할 수도 있다. 도 13 을 참조하면, MCP (504) 는 대안으로, 1 보다 많은 직렬로 접속된 브리지 칩 (508) 을 포함할 수도 있고, 내부 채널 당 2 개의 다이들 (506) 을 가질 수 있다. 도 6 을 다시 참조하면, 각각의 다이 (506) 를 브리지 칩 (508) 에 접속하는 내부 인터페이스는 병렬 데이터 버스 (DQ[7:0]), 준비/비지 핀 (R/B#), 및 개별의 칩 인에이블 핀들 (CE#), 커맨드 및 데이터 스트로브들, 및 차동 클록 신호를 포함할 수도 있는 다른 핀들 (미도시) 을 포함한다. 상이한 프로토콜들은 상이한 신호 접속들을 필요로 한다는 것으로 이해되어야 한다. 예를 들어, 비동기식 NAND 는 통상적으로 내부 인터페이스에 ALE, CLE, WE#, 및 WP# 신호들을 포함한다. 동기식 NAND, 예컨대 ONFI 또는 토글 모드는 상이한 및 추가적인 신호들을 가질 수도 있다. 예를 들어, ONFI NAND 는 WE# 신호를 요구하지 않지만, 통상적으로 CLK 및 DQS 신호들을 포함한다. 기능적 인터페이스를 제공하는데 필요한 신호들 모두는 당업자에게 알려지고 이해되어야 한다. 각각의 내부 채널을 공유하는 다이들 (506) 은 대안으로, 도 2 및 도 3 의 다이들 (212, 312) 이 제어기 (210, 310) 에 직렬로 접속되는 방법과 유사하게, 포인트-투-포인트 데이터 버스를 포함하는 직렬 인터페이스를 통해 브리지 칩 (508) 에 접속될 수도 있다. 다이들 (506) 은 또한, MCP (504) 의 핀들로부터 직접 제공될 수도 있는 Vcc, Vss, Vccq, Vref, 및 Vpp 와 같은 전력 접속들을 필요로 한다.
또한 도 6 을 참조하면, 각각의 다이 (506) 는 그 스테이터스에서의 변화를 그 R/B# 핀을 통해 브리지 칩 (508) 으로 통신한다. 브리지 칩 (508) 은 그 후, 스테이터스 판독 커맨드를 통해 다이 (506) 상의 스테이터스 레지스터를 판독하여 추가의 정보, 예컨대 완료된 동작이 성공적으로 완료되었는지 (통과) 또는 에러 (실패) 를 초래하였는지 여부를 결정할 수도 있다. 스테이터스 판독 커맨드는 브리지 칩 (508) 과 다이 (506) 간의 내부 인터페이스 (DQ) 를 통해 통신된다. 내부 인터페이스 (DQ) 는 명령들 또는 데이터 트랜스퍼와 같은 다른 동작들을 위한 인터페이스를 사용할 수도 있는 다른 다이들 (506) 과 공유된다. 접속은 브리지 칩 (508) 을 사용함으로써 관리되어, 다른 동작들 간의 스테이터스 판독 커맨드들을 스케줄링할 수 있다. 브리지 칩 (508) 은 이하에서 추가로 상세히 논의될 방식으로, 스테이터스 판독 커맨드들을 발행하고, 제어기 (502) 의 요청에서 STO 핀 상에 스테이터스 정보를 출력한다.
도 7 을 참조하면, 제어기 (502) 에 의해 스테이터스 요청을 수행하는 일 방법은 STO 상의 어드레싱된 스테이터스 패킷 (702) 을 사용한다. 제어기는 먼저, 로직 레벨 '1' 다음에 MCP x 에 대한 디바이스 ID 바이트 (704) 를 갖는 2 개의 플래그 비트들로 스테이터스 패킷의 시작을 나타냄으로써 MCP x 의 스테이터스를 요청한다. 스테이터스 패킷의 시작은 대안으로, 바이트 지향된 프로토콜에서 8 개의 '1' 들에 의해, 또는 아이들 상태로부터 구별 가능한 임의의 다른 비트 패턴, 이 예에서는 연속적인 '0' 들에 의해 나타내어질 수도 있다. 디바이스가 시작 플래그를 검출한 후에는, 일 기간 동안 적어도 최대 스테이터스 패킷 길이 동안 다른 시작 플래그를 인식하지 않을 것이다.
제어기는, 다음 스테이터스 패킷 (710) 전에 스테이터스 정보 (708) 를 삽입하기 위해 MCP x 에 대해 충분한 스페이스 (706) 가 존재한다는 것을 보장한다. MCP x 가 블랭크 스테이터스 패킷 (702) 을 수신하는 경우, MCP x 는 디바이스 ID 바이트를 인식하고 로컬 스테이터스 정보 (710) 를 이하에서 더 상세히 설명되는 방식으로 STO 스트림 위로 삽입한다. MCP x 는, 스테이터스 패킷 (710) 이 MCP y 로 어드레싱되기 때문에 스테이터스 패킷 (710) 을 변경되지 않은 그 출력으로 패스한다. 유사하게, MCP y 가 또한, 후속의 스테이터스 패킷 (710) 에서 디바이스 ID 바이트 (712) 를 하류에서 인식하는 경우, MCP y 는 그 자신의 스테이터스 정보 (714) 를 삽입할 것이다. 이 도면에서, 클록들은 단순화를 위해 도시되지 않는다. 링에서의 각 디바이스는 대략 하나의 클록 사이클에서 스테이터스 정보를 지연시킬 것이다. 제어기는 시스템의 모든 디바이스들의 연속적인 순차적 폴링 (polling) 을 구현할 수도 있다. 대안으로, 제어기는 어드레싱된 스테이터스 요청을 특정 디바이스로, 예를 들어 판독, 프로그램, 또는 소거 커맨드가 그 디바이스로 전송된 후에, 그 디바이스의 스테이터스에서의 변화가 예상되는 경우에만, 전송할 수도 있다. 스테이터스 변화가 예상되는 경우에만 스테이터스 정보를 전송하는 것은 전력 소모를 감소시키지만, 일부 추가적인 제어기 복잡성을 요구한다.
도 8 을 참조하면, 스테이터스 요청은 대안으로, 디바이스들 모두가 응답하는 단일의 스테이터스 요청인, 브로드캐스트 스테이터스 패킷 (802) 을 사용하여 제어기 (502) 에 의해 수행될 수도 있다. 제어기 (502) 는 STI/STO 의 아이들 상태로부터의 요청을 구별하기 위해 적합한 플래그 비트들로 스테이터스 패킷의 시작을 나타낸다. 여기서, 모든 디바이스들이 커맨드에 응답할 것이기 때문에 디바이스 어드레스가 요구되지 않는다. 제어기 (502) 는 링에서의 디바이스들의 수에 기초하여 디바이스들의 모두가 그들의 스테이터스 정보를 첨부하는 것을 허용하도록 연속적인 패킷들 사이에 충분한 공간을 남겨둔다. 제어기 (502) 가, 링 내에 더 적은 디바이스들이 링에 존재한다면 STO/STI 링크 상에서 브로드캐스트 스테이터스 판독 커맨드들을 더 자주 발행하는 것이 가능하다는 것으로 이해되어야 한다. 링에서의 각각의 MCP (504) 는 이하에서 더 상세히 설명되는 방식으로 그 로컬 스테이터스 정보 (804) 를 스테이터스 패킷 (802) 에 첨부하여, 링에서의 상류 디바이스들에 의해 첨부된 스테이터스 정보 (804) 를 허용하도록 적합한 오프셋을 남겨둔다. 오프셋은 각각의 MCP (504) 로부터의 스테이터스 정보의 알려진 고정 길이 및 그 로컬 ID 에 기초하여 각 디바이스에 의해 계산될 수 있다. STI 상에서 제어기 (502) 에 의해 수신된 스테이터스 패킷 (806) 은 링에서의 MCP 들 (504) 모두에 관한 스테이터스 정보를 포함한다.
도 9 를 참조하면, 스테이터스 요청은 대안으로, 도 7 의 실시형태와 유사한 어드레싱된 스테이터스 판독 패킷 (902) 을 사용하지만 브로드캐스트 디바이스 ID ("BID"), 예를 들어 "1 1 1 1 1 1 1 1" 에 대응하는 디바이스 ID 필드 (904) 를 갖는 제어기 (502) 에 의해 수행될 수도 있다. 각각의 MCP (504) 는 BID 를 인식하고, 그 로컬 스테이터스 정보 (906) 를 도 8 의 실시형태와 유사한 방식으로 스테이터스 패킷 (902) 에 첨부한다. 브로드캐스트를 위한 특별한 어드레스를 갖는 어드레싱된 패킷의 일반적인 기법은 공동 소유의 미국특허출원 공개 제 2010/0162053 호에 설명되어 있고, 이것의 내용들은 그 전체가 참조로서 여기에 포함된다.
각각의 MCP (504) 는, 제어기 (502) 가 시스템에서 다이들 (506) 의 모두의 R/B# 스테이터스를 결정하는 것을 허용하는 포맷으로 스테이터스 요청들에 응답하여 그 로컬 스테이터스 정보를 출력한다. 하나의 예시의 포맷이 4 개의 내부 데이터 인터페이스들을 갖는 16-다이 MCP (504) 에 대해, 이하의 표에 도시된다. 첫 번째 16 비트 R/B#[n] 은 각각 MCP (504) 에서 n번째 다이로부터 R/B# 신호의 로직 레벨을 나타내고, 다음의 4 개의 비트들 (DQBn) 각각은 n번째 내부 데이터 인터페이스의 현재 상태 (1=비지, 0=불활성) 를 나타낸다. 최종 비트는 커맨드 패킷 에러 (command packet error; CPE) 비트 (1=에러, 0=에러 없음) 이고, 나머지 비트들은 다른 목적들을 위해 사용되거나 또는 제어기 (502) 에 의해 무시될 수도 있다. 다른 포맷들이 사용될 수도 있고, 포맷은 제어기 (502) 로 통신될 스테이터스 비트들 (R/B# 핀들 및/또는 내부 데이터 인터페이스들) 의 수에 기초하여 변경될 수도 있다.
바이트 비트0 비트1 비트2 비트3 비트4 비트5 비트6 비트7
1 R/B#[0] R/B#[1] R/B#[2] R/B#[3] R/B#[4] R/B#[5] R/B#[6] R/B#[7]
2 R/B#[8] R/B#[9] R/B#[10] R/B#[11] R/B#[12] R/B#[13] R/B#[14] R/B#[15]
3 DQB0 DQB1 DQB2 DQB3 CPE
이들 스테이터스 비트들은 제어기 (502) 로 하여금 브리지 칩 (508) 에 이미 이용 가능한 정보에만 기초하여, 따라서 MCP 들 (504) 의 내부 인터페이스 상의 임의의 대역폭을 사용하지 않고, HL 인터페이스 상에 발행된 커맨드들의 진행을 추적하게 할 수 있다. R/B# 및 데이터 인터페이스 스테이터스 비트들은 이하에서 더 상세히 설명되는 바와 같이 각종 다이들 (506) 에서 수행된 동작들의 현재 스테이터스를 가리킨다. 제어기 (502) 가 하나 이상의 다이들 (506) 에 관한 더 상세한 스테이터스 정보, 예컨대 동작이 성공적으로 완료되었는지 여부를 필요로 하면, 제어기 (502) 는 어드레싱된 HL 데이터 버스 상의 스테이터스 판독 커맨드를 하나 이상의 다이들 (506) 또는 MCP들 (504) 로 전송할 수도 있다. 스테이터스 판독 커맨드에 응답하여, 연관된 브리지 칩 (508) 은 MCP (500) 의 내부 인터페이스를 통해 어드레싱된 다이 (506) 의 스테이터스를 요청하고, 이 스테이터스 정보를 제어기 (502) 로 리턴한다.
도 10 을 참조하면, 페이지 프로그램 (기입) 커맨드 (PPGM) 에 대한 타이밍도가 도시된다. 신호들 중 일부, 예컨대 커맨드/데이터 스트로브들 및 클록은 단순화를 위해 생략된다. PPGM 커맨드는 제어기 (502) 에 의해 HL 버스를 통해 전송되고, MCP (504) 에 의해 수신된다. 버스트 데이터 로드 커맨드 (미도시) 를 통해 브리지 칩 (508) 상의 SRAM 에 미리 저장된 기입 데이터는 버스트 데이터 로드 (BDL) 커맨드로 MCP (504) 의 내부 DQ 버스를 통해 적합한 다이 (506) 의 페이지 버퍼로 트랜스퍼된다. 내부 DQ 버스가 사용 중인 동안, 대응하는 DQB 스테이터스 비트는 버스 활동을 반영하도록 로직 하이 (high) 이다. 데이터가 트랜스퍼된 후에, 브리지 칩 (508) 은 다이 (506) 상에서 페이지 프로그램 동작을 개시하고, 이것은 페이지 프로그램 동작의 지속기간 (tPROG) 동안 적합한 R/B# 스테이터스 비트 상에서 비지로서 나타내어질 것이다. 제어기 (502) 는 다이 (506) 의 R/B# 스테이터스로 리턴하는 스테이터스 요청 커맨드들을 발행함으로써 동작의 진행을 모니터링할 수 있다. 제어기 (502) 는 선택적으로, 다이 (506) 로 어드레싱된 스테이터스 요청 커맨드들을 발행하기 전에 tPROG 의 지정된 최대 지속기간 동안 대기하여, ST 버스 상의 대역폭 사용을 감소시킬 수도 있다. 일단, 다이 (506) 의 R/B# 스테이터스에 의해 나타내어진 바와 같이 프로그래밍이 완료되면, 제어기 (502) 는 동일한 다이 (506) 로 어드레싱된 스테이터스 판독 (Status Read; SRD) 커맨드를 발행함으로써 동작의 통과/실패 스테이터스를 체크할 수 있다. 브리지 칩 (508) 은 내부 DQ 버스 상에서 스테이터스 판독 커맨드를 개시하고, 이 스테이터스 정보를 획득하여 HL 인터페이스 상에서 제어기 (502) 로 리턴한다.
다이 (506) 의 스테이터스 레지스터를 판독하는 것은 브리지 칩 (508) 과 다이 (506) 간의 내부 인터페이스의 사용을 필요로 한다. 동일한 내부 인터페이스를 공유하는 다른 다이 (506) 가 브리지 칩 (508) 과 명령들 또는 데이터를 교환하고 있으면, 컨텐션 (contention) 이 존재할 것이다. 다이 동작들과 스테이터스 판독 동작들 간의 내부 인터페이스에 대한 컨텐션을 최소화하기 위해, 브리지 칩 (508) 은 먼저, 개별의 다이들 (506) 로부터의 R/B# 신호들 및 브리지 칩 (508) 의 내부 상태에 의해서만 결정될 수 있는 스테이터스 정보를 제어기 (502) 에 제공한다. 제어기 (502) 는 그 후, 스테이터스 판독 커맨드들을 통해 지정된 다이들 (506) 로부터 추가의 스테이터스 정보를 요청할 수도 있다. 이들 스테이터스 판독 커맨드들은 내부 인터페이스를 사용할 것이지만, 그것들은 수적으로 적을 것이고, 브리지 칩 (508) 은 데이터 트랜잭션들 및 다른 커맨드들 중에서 이들 커맨드들을 스케줄링하여 컨텐션을 방지할 수 있다.
도 11 을 참조하면, 블록 소거 커맨드 (Block Erase command; BERS) 에 대한 타이밍도가 도시된다. 신호들 중 일부, 예컨대 커맨드/데이터 스트로브들 및 클록은 간략화를 위해 생략된다. BERS 커맨드는 HL 버스를 통해 제어기 (502) 에 의해 전송되고, MCP (504) 에 의해 수신된다. 도 10 의 PPGM 커맨드와 달리, BERS 커맨드는 데이터에 의해 동반되지 않는다. BERS 커맨드는 MCP (504) 의 내부 DQ 버스를 통해 적합한 다이 (506) 로 트랜스퍼된다. 내부 DQ 버스가 사용중인 동안, DQB 스테이터스 비트는 버스 활동을 반영하도록 로직 하이이다. 다이 (506) 는 그 후, 블록 소거 커맨드를 개시하고, 이것의 지속기간 (tBERS) 동안 다이 (506) 는 적합한 R/B# 스테이터스 비트 상에서 비지로서 나타내어질 것이다. 다이 (506) 가 내부적으로 블록 소거 커맨드를 수행하고 있는 동안, DQB 스테이터스 비트는, 내부 DQ 버스가 동일한 내부 채널 상에서 다른 다이들 (506) 로 명령들을 전송하기 위해 브리지 칩 (508) 에 이용 가능하다는 것을 나타내도록 로직 로우 (low) 로 트랜지셔닝한다. 일단 블록 소거가 완료되면, 다이 (506) 의 R/B# 스테이터스에 의해 나타난 바와 같이, 제어기 (502) 는 동일한 다이 (506) 에 어드레싱된 스테이터스 판독 (SRD) 커맨드를 발행함으로써 동작의 통과/실패 스테이터스를 체크할 수 있다. 브리지 칩 (508) 은 내부 DQ 버스 상의 스테이터스 판독 커맨드를 개시하고, 이 정보를 획득하여 HL 인터페이스 상의 제어기 (502) 로 리턴한다.
도 12 를 참조하면, 페이지 판독 커맨드 (Page Read command; PRD) 에 대한 타이밍도가 도시된다. 신호들 중 일부, 예컨대 커맨드/데이터 스트로브들 및 클록은 간략화를 위해 생략된다. PRD 커맨드는 제어기 (502) 에 의해 HL 버스를 통해 전송되고, MCP (504) 에 의해 수신된다. PRD 커맨드는 MCP (504) 의 내부 DQ 버스를 통해 적합한 다이 (506) 로 트랜스퍼된다. 브리지 칩 (508) 은 다이 (506) 상의 내부 판독 동작이 완료되는 것을 허용하도록 시간 (tR) 동안 대기하고, 이것은 다이 (506) 의 R/B# 스테이터스에서의 변화로 나타내어진다. 브리지 칩 (508) 은 그 후, DQ 버스 상에서 버스트 데이터 판독 커맨드 (BDR) 를 발행한다. 다이 (506) 는 그 후, 브리지 칩 (508) 의 SRAM 상에 저장될, DQ 버스를 통해 브리지 칩 (508) 으로 요청된 데이터를 트랜스퍼한다. DQ 버스가 사용 중인 동안, DQB 스테이터스 비트는 버스 활동을 반영하도록 로직 하이이다. 브리지 칩 (508) 은 그 후, HL 버스를 통해 제어기 (502) 로 데이터를 송신한다. 일단 동작이 성공적으로 완료되었으면 제어기 (502) 가 요청된 데이터를 수신할 것이기 때문에, 제어기 (502) 는 스테이터스 판독 커맨드를 발행할 필요가 없다.
도 12 를 또 참조하면, 100μs 정도일 수도 있는 시간 (tR) 동안, DQ 인터페이스는 사용중이지 않고, 동일한 내부 DQ 인터페이스 (옵션 A) 상의 다른 다이들 (506) 로 지향된 동작들을 수행하는데 이용 가능하다. R/B#[n] 이 하이로 가기 전에 (판독 데이터의 이용 가능성을 나타냄) DQ 인터페이스와 동일한 다른 다이들 (506) 중 하나에 어드레싱된 명령을 브리지 칩 (508) 이 수신하면, 이 명령은 개시될 수 있다. 동작이 시간 R/B#[n] 이 하이로 갈때까지 완료되지 않으면, 브리지 칩 SRAM 으로 데이터를 트랜스퍼하기 위한 버스트 데이터 판독은 지연될 것이다. R/B#[n] 이 하이로 간 후에 브리지 칩 (508) 이 명령을 수신하면, 버스트 데이터 판독 동작은 새로운 명령이 개시되기 전에 완료될 것이다. 이 접근은, DQ 버스가 후속의 명령을 수행하는데 이용 가능한 경우에서 일부 불확실성의 희생으로 tR 인터벌 동안 내부 DQ 버스의 사용을 가능하게 한다. 대안 (옵션 B) 으로서, tR 동안 "사용 중인" DQ 버스를 고려함으로써 내부 BDR 이 완료될 때까지 후속의 명령들은 금지될 수 있고, 이 경우에서 DQBx 신호는 전체 주기 동안 어서트 (assert) 될 수 있다. 이것은 스케줄링을 간단하게 하고 MCP (504) 의 더 많은 결정적 동작을 제공한다.
브리지 칩 (508) 은 제어기 (502) 의 요청에서 제어기 (502) 에 스테이터스 정보를 제공하고, MCP (500) 내에서 발생하는 이벤트들에 비동기식으로 응답하지 않는 것으로 이해되어야 한다. 이 방식에서, 예를 들어 2 개의 이벤트들이 2 개의 상이한 MCP 들 (500) 에서 동시에 발생하면, 컨텐션이 STI/STO 버스 상에서 제거되고, HL 데이터 버스 상에서 제어기 (502) 에 의해 관리된다. 또한, 본 방법은 제어기 (502) 에 의한 스테이터스 요청들로부터 제어기 (502) 에 의한 요청된 스테이터스 정보의 수신까지의 균일한 타이밍을 생성한다. 또한, 제어기 (502) 는 그것이 요구되는 경우에만 스테이터스 정보를 요청할 수 있고, 이것은 동작이 완료되는 매 시간보다 덜 빈번할 수도 있다.
본 발명의 전술된 실시형태들에 대한 변형들 및 개선들은 당업자에게 명백해질 수도 있다. 상기의 설명은 제한보다는 예시의 방식인 것으로 의도된다. 따라서, 본 발명의 범위는 첨부된 청구항들의 범위에 의해서만 제한되도록 의도된다.

Claims (17)

  1. 반도체 디바이스로서,
    데이터 및 커맨드들을 전송 및 수신하기 위한 외부 데이터 인터페이스, 스테이터스 정보를 전송 및 수신하기 위한 외부 스테이터스 인터페이스, 및 복수의 내부 데이터 인터페이스들을 갖는 브리지 디바이스; 및
    상기 내부 데이터 인터페이스들 중 하나를 통해 상기 브리지 디바이스에 각각 접속된 복수의 메모리 디바이스들로서, 상기 메모리 디바이스들 각각은 상기 브리지 디바이스의 입력에 접속된 준비/비지 (ready/busy) 출력을 갖는, 상기 복수의 메모리 디바이스들을 포함하고,
    상기 브리지 디바이스는,
    스테이터스 요청 커맨드에 응답하여 패킷화된 포맷으로 각각의 준비/비지 출력의 상태를 출력하며;
    스테이터스 판독 커맨드에 응답하여 적어도 하나의 메모리 디바이스의 스테이터스 레지스터로부터 정보를 제공하도록 구성되는, 반도체 디바이스.
  2. 제 1 항에 있어서,
    상기 각각의 준비/비지 출력의 상태는 각각의 준비/비지 출력의 현재 상태인, 반도체 디바이스.
  3. 제 2 항에 있어서,
    상기 브리지 디바이스는 상기 외부 스테이터스 인터페이스 상의 각각의 준비/비지 출력의 상기 현재 상태를 출력하도록 구성되는, 반도체 디바이스.
  4. 제 2 항에 있어서,
    상기 브리지 디바이스는 상기 외부 스테이터스 인터페이스 상에서 수신된 스테이터스 요청 커맨드에 응답하여 각각의 준비/비지 출력의 상기 현재 상태를 출력하도록 구성되는, 반도체 디바이스.
  5. 제 1 항에 있어서,
    상기 브리지 디바이스는 상기 외부 데이터 인터페이스 상의 상기 적어도 하나의 메모리 디바이스의 상기 스테이터스 레지스터로부터 상기 정보를 제공하도록 구성되는, 반도체 디바이스.
  6. 제 5 항에 있어서,
    상기 브리지 디바이스는 상기 스테이터스 판독 커맨드에 응답하여 상기 적어도 하나의 메모리 디바이스의 스테이터스 레지스터로부터 정보를 판독하도록 구성되는, 반도체 디바이스.
  7. 제 5 항에 있어서,
    상기 적어도 하나의 메모리 디바이스는 상기 스테이터스 판독 커맨드에 응답하여 선택되는, 반도체 디바이스.
  8. 제 5 항에 있어서,
    상기 적어도 하나의 메모리 디바이스는 상기 복수의 메모리 디바이스들 모두인, 반도체 디바이스.
  9. 반도체 메모리 시스템으로서,
    메모리 제어기; 및
    제 1 항에 기재된 복수의 반도체 디바이스들을 포함하고,
    각각의 반도체 디바이스의 브리지 디바이스들은 각각의 브리지 디바이스의 외부 데이터 인터페이스 및 외부 스테이터스 인터페이스를 통해 링 토폴로지에서 상기 제어기에 직렬로 접속되는, 반도체 메모리 시스템.
  10. 반도체 디바이스를 동작시키는 방법으로서,
    상기 반도체 디바이스는 브리지 디바이스, 및 복수의 내부 데이터 인터페이스들을 통해 상기 브리지 디바이스에 접속된 복수의 메모리 디바이스들을 갖고,
    상기 방법은,
    각각의 메모리 디바이스의 준비/비지 상태를 패킷화된 포맷으로 출력하는 단계; 및
    적어도 하나의 메모리 디바이스의 스테이터스 레지스터로부터 정보를 출력하는 단계를 포함하는, 반도체 디바이스를 동작시키는 방법.
  11. 제 10 항에 있어서,
    각각의 메모리 디바이스의 상기 준비/비지 상태는 각각의 메모리 디바이스의 현재 준비/비지 상태인, 반도체 디바이스를 동작시키는 방법.
  12. 제 11 항에 있어서,
    상기 각각의 메모리 디바이스의 준비/비지 상태를 출력하는 단계는, 상기 반도체 디바이스의 스테이터스 출력 상에서 각각의 메모리 디바이스의 준비/비지 상태를 출력하는 단계를 포함하는, 반도체 디바이스를 동작시키는 방법.
  13. 제 11 항에 있어서,
    상기 반도체 디바이스의 스테이터스 입력 상에서 스테이터스 요청 커맨드를 수신하는 단계를 더 포함하고,
    상기 각각의 메모리 디바이스의 준비/비지 상태를 출력하는 단계는, 외부 스테이터스 인터페이스 상에서 수신된 상기 스테이터스 요청 커맨드에 응답하여 각각의 메모리 디바이스의 준비/비지 상태를 출력하는 단계를 포함하는, 반도체 디바이스를 동작시키는 방법.
  14. 제 10 항에 있어서,
    상기 브리지 디바이스는 외부 데이터 인터페이스 상의 상기 적어도 하나의 메모리 디바이스의 상기 스테이터스 레지스터로부터 상기 정보를 제공하도록 구성되는, 반도체 디바이스를 동작시키는 방법.
  15. 제 14 항에 있어서,
    상기 반도체 디바이스의 데이터 입력 상에서 스테이터스 판독 커맨드를 수신하는 단계를 더 포함하고,
    상기 적어도 하나의 메모리 디바이스의 스테이터스 레지스터로부터 정보를 출력하는 단계는, 상기 스테이터스 판독 커맨드에 응답하여 적어도 하나의 메모리 디바이스의 스테이터스 레지스터로부터 정보를 출력하는 단계를 포함하는, 반도체 디바이스를 동작시키는 방법.
  16. 제 15 항에 있어서,
    상기 스테이터스 판독 커맨드에 응답하여 상기 적어도 하나의 메모리 디바이스를 선택하는 단계를 더 포함하는, 반도체 디바이스를 동작시키는 방법.
  17. 제 15 항에 있어서,
    상기 적어도 하나의 메모리 디바이스는 상기 복수의 메모리 디바이스들 모두인, 반도체 디바이스를 동작시키는 방법.
KR1020147036568A 2012-05-29 2013-05-28 링 토폴로지 스테이터스 인디케이션 KR20150024350A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201261652513P 2012-05-29 2012-05-29
US61/652,513 2012-05-29
PCT/CA2013/000518 WO2013177673A1 (en) 2012-05-29 2013-05-28 Ring topology status indication

Publications (1)

Publication Number Publication Date
KR20150024350A true KR20150024350A (ko) 2015-03-06

Family

ID=49671714

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147036568A KR20150024350A (ko) 2012-05-29 2013-05-28 링 토폴로지 스테이터스 인디케이션

Country Status (7)

Country Link
US (1) US20130326090A1 (ko)
EP (1) EP2856467A1 (ko)
JP (1) JP2015520459A (ko)
KR (1) KR20150024350A (ko)
CN (1) CN104428836A (ko)
TW (1) TW201411482A (ko)
WO (1) WO2013177673A1 (ko)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8909833B2 (en) * 2012-09-26 2014-12-09 The United States Of America As Represented By The Secretary Of The Navy Systems, methods, and articles of manufacture to stream data
US9558143B2 (en) * 2014-05-09 2017-01-31 Micron Technology, Inc. Interconnect systems and methods using hybrid memory cube links to send packetized data over different endpoints of a data handling device
US9959078B2 (en) 2015-01-30 2018-05-01 Sandisk Technologies Llc Multi-die rolling status mode for non-volatile storage
US10114690B2 (en) 2015-02-13 2018-10-30 Sandisk Technologies Llc Multi-die status mode for non-volatile storage
KR20170086345A (ko) * 2016-01-18 2017-07-26 에스케이하이닉스 주식회사 메모리 칩 및 메모리 컨트롤러를 포함하는 메모리 시스템
KR20170089069A (ko) * 2016-01-25 2017-08-03 에스케이하이닉스 주식회사 메모리 시스템 및 그의 동작방법
US10412570B2 (en) * 2016-02-29 2019-09-10 Google Llc Broadcasting device status
US10908211B2 (en) * 2019-03-07 2021-02-02 Winbond Electronics Corp. Integrated circuit and detection method for multi-chip status thereof
CN110534438A (zh) * 2019-09-06 2019-12-03 深圳市安信达存储技术有限公司 一种固态存储ic扩容封装方法及结构
US10838901B1 (en) * 2019-10-18 2020-11-17 Sandisk Technologies Llc System and method for a reconfigurable controller bridge chip
US11681467B2 (en) 2020-07-09 2023-06-20 Micron Technology, Inc. Checking status of multiple memory dies in a memory sub-system
US11662939B2 (en) * 2020-07-09 2023-05-30 Micron Technology, Inc. Checking status of multiple memory dies in a memory sub-system

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7688652B2 (en) * 2007-07-18 2010-03-30 Mosaid Technologies Incorporated Storage of data in memory via packet strobing
US7957173B2 (en) * 2008-10-14 2011-06-07 Mosaid Technologies Incorporated Composite memory having a bridging device for connecting discrete memory devices to a system
US20110258366A1 (en) * 2010-04-19 2011-10-20 Mosaid Technologies Incorporated Status indication in a system having a plurality of memory devices
TW201209820A (en) * 2010-05-07 2012-03-01 Mosaid Technologies Inc Method and apparatus for concurrently reading a plurality of memory devices using a single buffer
US8537618B2 (en) * 2010-08-26 2013-09-17 Steven Jeffrey Grossman RAM memory device with NAND type interface

Also Published As

Publication number Publication date
CN104428836A (zh) 2015-03-18
WO2013177673A1 (en) 2013-12-05
TW201411482A (zh) 2014-03-16
US20130326090A1 (en) 2013-12-05
JP2015520459A (ja) 2015-07-16
EP2856467A1 (en) 2015-04-08

Similar Documents

Publication Publication Date Title
KR20150024350A (ko) 링 토폴로지 스테이터스 인디케이션
EP2263155B1 (en) Direct data transfer between slave devices
US7269088B2 (en) Identical chips with different operations in a system
US8886861B2 (en) Memory interleaving device to re-order messages from slave IPS and a method of using a reorder buffer to re-order messages from slave IPS
JP5753989B2 (ja) 複数のメモリデバイスを有するシステムの状態表示
US10552047B2 (en) Memory system
WO2007036050B1 (en) Memory with output control
CN102971795A (zh) 使用单个缓冲区同时读取多个存储器装置的方法和设备
US10846021B2 (en) Memory devices with programmable latencies and methods for operating the same
KR101679333B1 (ko) 트랜잭션 계층 패킷의 싱글 엔드형 통신을 위한 방법, 장치 및 시스템
US20160364354A1 (en) System and method for communicating with serially connected devices
US11442878B2 (en) Memory sequencer system and a method of memory sequencing using thereof
KR100783899B1 (ko) 반도체 메모리 시스템과 칩 및 기록 데이터 마스킹 방법
US6701407B1 (en) Multiprocessor system with system modules each having processors, and a data transfer method therefor
US8069327B2 (en) Commands scheduled for frequency mismatch bubbles
US9377957B2 (en) Method and apparatus for latency reduction
US8205021B2 (en) Memory system and integrated management method for plurality of DMA channels
US11914863B2 (en) Data buffer for memory devices with unidirectional ports
US7920433B2 (en) Method and apparatus for storage device with a logic unit and method for manufacturing same
US20080229033A1 (en) Method For Processing Data in a Memory Arrangement, Memory Arrangement and Computer System
KR101324580B1 (ko) 복수의 dma 채널을 갖는 메모리 시스템 및 복수의 dma 채널에 대한 통합 관리 방법

Legal Events

Date Code Title Description
N231 Notification of change of applicant
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid