KR101373793B1 - 플래시 메모리 제어 인터페이스 - Google Patents

플래시 메모리 제어 인터페이스 Download PDF

Info

Publication number
KR101373793B1
KR101373793B1 KR1020097006661A KR20097006661A KR101373793B1 KR 101373793 B1 KR101373793 B1 KR 101373793B1 KR 1020097006661 A KR1020097006661 A KR 1020097006661A KR 20097006661 A KR20097006661 A KR 20097006661A KR 101373793 B1 KR101373793 B1 KR 101373793B1
Authority
KR
South Korea
Prior art keywords
command
flash memory
nand flash
byte
enable signal
Prior art date
Application number
KR1020097006661A
Other languages
English (en)
Other versions
KR20090057412A (ko
Inventor
마사이우키 우라베
Original Assignee
마벨 월드 트레이드 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마벨 월드 트레이드 리미티드 filed Critical 마벨 월드 트레이드 리미티드
Publication of KR20090057412A publication Critical patent/KR20090057412A/ko
Application granted granted Critical
Publication of KR101373793B1 publication Critical patent/KR101373793B1/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
    • 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/10Program control for peripheral devices
    • 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
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/32Timing circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • Memory System (AREA)
  • Dram (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

핀 개수를 증가시킴 없이 복수의 디바이스 시스템에서의 플래시 메모리 디바이스들을 제어하기 위한 인터페이스, 장치 및 방법이 개시된다. 일 실시예에서, 메모리 제어기는 호스트와 통신하기 위한 제 1 인터페이스와, 복수의 플래시 메모리 디바이스들과 통신하기 위한 제 2 인터페이스를 포함할 수 있는데, 여기서, 제 2 인터페이스는, 상기 복수의 플래시 메모리 디바이스들에 명령을 전송하고 아울러 디바이스 식별 정보를 수신하는 구성 단자와, 상기 복수의 플래시 메모리 디바이스들에 컴맨드 타이밍 신호를 전송하는 컴맨드 제어 단자와, 상기 복수의 플래시 메모리 디바이스들에 클럭 신호를 전송하는 클럭 단자와, 상기 복수의 플래시 메모리 디바이스들로부터 판독 컴맨드를 수신하는 판독 컴맨드 단자와, 그리고 상기 복수의 플래시 메모리 디바이스들에 데이터를 전송하고 아울러 상기 복수의 플래시 메모리 디바이스들로부터 데이터를 수신하는 제1의 복수의 데이터 입력/출력(I/O) 단자들을 포함한다.

Description

플래시 메모리 제어 인터페이스{FLASH MEMORY CONTROL INTERFACE}
본 출원은 미국 가출원 번호 제60/828,144호(대리인 관리 번호 MPl313PR)(2006년 10월 4일 출원)를 우선권 주장의 기초출원으로 청구하며, 이 문헌은 그 전체가 참조로 본 명세서에 통합된다.
본 발명은 일반적으로 플래시 메모리 디바이스, 인터페이스, 및 아키텍처 분야에 관한 것이다. 특히, 본 발명의 실시예들은 플래시 메모리 디바이스를 제어하기 위한 인터페이스, 장치, 및 방법에 관한 것이다.
플래시 EEPROM(flash Electrically Erasable Programmable Read Only Memory)과 같은 메모리 디바이스가 점점 더 널리 사용되고 있다. 예를 들어, (예를 들어, USB(Universal Serial Bus) 접속을 위한) "점프(jump)" 드라이브, 메모리 카드, 및 다른 비휘발성 메모리 애플리케이션은 카메라, 비디오 게임, 컴퓨터, 및 다른 전자 장치에서 평범한 것이다. 도 1은 종래의 메모리 어레이 구성(100)의 블럭도를 나타낸다. 예를 들어, 메모리 어레이는 비트(예를 들어, 8 비트 깊이(108)), 바이트(예를 들어, 2kB 부분(104) 및 64B 부분(106)), 페이지(예를 들어, 512K 페이지(102), 이것은 8192개의 블럭에 대응함), 및 블럭(예를 들어, 블럭(110), 이것은 64 페이지와 동일함) 단위로 구성될 수 있고, 본 특정 예에서 8Mb 디바이스가 형성될 수 있다. 또한, 단일 페이지(112)가 부분(114)(예를 들어, 2kB + 64B = 2112B = 840h) 및 부분(116)으로서 구성될 수 있는데, 이것은 8비트 폭을 갖는 데이터 입력/출력(I/O) 경로(예를 들어, I/O 0 - I/O 7)에 대응한다.
이러한 타입의 플래시 메모리는 "NAND" 타입을 나타낼 수 있고, 이것은 전형적으로, "NOR" 타입의 플래시 메모리보다 더 빠른 소거 및 기입 시간, 더 높은 밀도, 더 낮은 비트 당 비용, 및 더 큰 내구력을 가지고 있다. 그러나, NAND 플래시 I/O 인터페이스는 전형적으로 데이터에 대한 순차적 액세스만을 허용한다. 도 2A는 종래의 판독 동작에 대한 타이밍도(200)를 나타낸다. 아래의 표 1에 나타난 바와 같이, 다양한 핀 기능들이 NAND 플래시 인터페이스에서의 지정된 핀들에 대응할 수 있다.
[표 1]
Figure 112009019468999-pct00001
도 2A에서, 행 어드레스(row address)(예를 들어, RAl, RA2, 및 RA3) 및 열 어드레스(column address)(예를 들어, CA1 및 CA2) 정보가 디바이스에서 래 치(latch)될 수 있도록 신호 WE_가 (예를 들어, 25ns 주기에서) 펄싱(pulsing)될 수 있다. 도시된 바와 같이, 컴맨드 "00h"는 판독 어드레스 입력을 표시할 수 있고, 반면에 컴맨드 "30h"는 판독 시작을 표시할 수 있다. 신호 RE_의 펄싱을 통해, 데이터 Dout N, Dout N+l, Dout N+2, ... Dout M이 디바이스로부터 판독될 수 있다. 또한, 로우 로직 상태(low logic state)에 있는 신호 R/B_는 출력에 관해 비지 상태(busy state)를 표시할 수 있고, 그리고 신호 R/B_는 예를 들어 WE_의 마지막 상승 에지 이후에 일정 시간 주기 하이가 될 수 있다. 데이터 입력/출력 핀들(예를 들어, I/O[7:0]) 상에서 멀티플렉싱된 행 어드레스 및 열 어드레스가 아래의 표 2에 나타난 바와 같이 있을 수 있다.
[표 2]
Figure 112009019468999-pct00002
예를 들어, 더 높은 어드레스 비트들이 더 큰 메모리 장치를 어드레싱하기 위해 사용될 수 있다(예를 들어, 2Gb를 위한 A30, 4Gb를 위한 A31, 8Gb를 위한 A32, 16Gb를 위한 A33, 32Gb를 위한 A34, 및 64Gb를 위한 A35).
이제 도 2B를 참조하면, 타이밍도(220)는 종래의 페이지 프로그램 동작을 나타낸다. 여기서, 컴맨드 "80h"는 직렬 데이터(예를 들어, Din N ... Din M) 입력을 표시할 수 있다. 컴맨드 "10h"는 자동 프로그램을 표시할 수 있고, 이후 상태 판독(컴맨드 "7Oh")이 일어 난다. I/O[0] = "0"은 에러 조건 없음을 나타낼 수 있고, 반면에 I/O[0] = "1"은 자동 프로그래밍에서의 에러가 발생한 것을 나타낼 수 있다. 또한, 신호 R/B_가 전형적으로 대략 몇 백 ㎲ 시간의 길이 동안, 비지 상태(busy state)를 나타내는 로우(low)일 수 있다. 또한, RE_의 상승 에지는 일정 시간 주기(일 예로, 60ns)만큼 WE_의 상승 에지를 트레일링(trailing)할 수 있다.
도 2C는 종래의 블럭 소거 동작을 위한 타이밍도(240)를 나타낸다. 여기서, 컴맨드 "60h"는 블럭 소거 동작을 나타낼 수 있고, 이 경우 순차적 행 어드레스들(예를 들어, RAl, RA2, 및 RA3)이 공급될 수 있다. 컴맨드 "D0h"는 임의 싸이클 2 블럭 소거 동작을 나타낼 수 있다. 블럭 소거 동작은 상태 판독(컴맨드 "70h")에 의해 점검될 수 있는 데, 여기서 I/O[0] = "0"은 에러 조건 없음을 나타낼 수 있고, 반면에 I/O[0] = "1"은 블럭 소거에서의 에러가 일어난 것을 나타낼 수 있다. 예시적 신호 시간은 (사전에 결정된 최대치를 갖는) 전형적으로 대략 천분의 일초의 시간 주기 동안 로우 상태인 신호 R/B_를 포함할 수 있으며, RE_의 상승 에지는 WE_의 상승 에지를 트레일링하고, 그리고 WE_의 상승 에지는 대략 100ns의 R/B_의 하강 에지에 대한 D0h 컴맨드에 대응한다.
복수의 칩들 혹은 디바이스들을 공통 패키지(예를 들어, 하이브리드 드라이브)에 포함하는 종래의 플래시 메모리 장치에서, 복수의 칩 인에이블(CE_) 핀은 다 양한 플래시 메모리 칩에 액세스하도록 요구될 수 있다. 커다란 메모리 구조에서 특히, 이러한 복수의 인에이블 핀들로 인해 상대적으로 복잡한 제어 로직이 필요하고 그리고 상대적으로 커다란 칩 영역이 소비될 수 있다. 따라서, 핀의 개수를 증가시킴 없이 복수의 플래시 메모리 칩 혹은 디바이스에 대한 액세스(예를 들어, 프로그래밍 및 판독)를 제어할 수 있는 방법을 제공하는 것이 바람직하다.
본 발명의 실시예들은 플래시 메모리 디바이스들을 제어하기 위한 인터페이스, 장치, 및 방법에 관한 것이다.
일 실시형태에서, 메모리 제어기는, 호스트와 통신하도록 구성된 제 1 인터페이스와, 그리고 복수의 플래시 메모리 디바이스들과 통신하도록 구성된 제 2 인테페이스를 포함할 수 있고, 여기서 상기 제 2 인터페이스는, 상기 복수의 플래시 메모리 디바이스들에 명령을 전송하고 아울러 디바이스 식별 정보를 수신하도록 구성된 구성 단자(configuration terminal)와, 상기 복수의 플래시 메모리 디바이스들에 컴맨드 타이밍 신호(command timing signal)를 전송하도록 구성된 컴맨드 제어 단자와, 상기 복수의 플래시 메모리 디바이스들에 클럭 신호(clock signal)를 전송하도록 구성된 클럭 단자와, 상기 복수의 플래시 메모리 디바이스들로부터 판독 컴맨드(read commmand)를 수신하도록 구성된 판독 컴맨드 단자와, 그리고 상기 복수의 플래시 메모리 디바이스들에 데이터를 전송하고 아울러 상기 복수의 플래시 메모리 디바이스들로부터 데이터를 수신하도록 구성된 제1의 복수의 데이터 입력/출력(I/O) 단자들을 포함할 수 있다.
상기 메모리 제어기는, 또한 상기 구성 단자 상의 상기 명령 이후에 사전에 결정된 시간 주기 내에서 상기 제1의 복수의 데이터 I/O 단자들 상에서의 상기 복수의 플래시 메모리 디바이스들에 상기 디바이스 식별 정보를 전송하도록 구성될 수 있다. 추가적으로 혹은 대안적으로, 상기 메모리 제어기는, 또한 상기 제1의 복수의 데이터 I/O 단자들이 고임피던스 상태에 놓이기 이전 적어도 한 싸이클 전에 상기 컴맨드 타이밍 신호를 방출하도록 구성된 컴맨드 타이밍 로직(command timing logic)과, 그리고/또는 활성 판독 컴맨드(active read command)에 응답하여 상기 복수의 플래시 메모리 디바이스들 중 하나로부터 데이터를 판독하기 위한 판독 동작을 인에이블시키도록 구성된 판독 로직(read logic)을 포함할 수 도 있다.
메모리 제어기에서, 상기 판독 컴맨드는 판독 클럭을 포함할 수 있다. 상기 메모리 제어기는 또한 상기 제1의 복수의 데이터 I/O 단자들로부터 상기 복수의 플래시 메모리 디바이스들로 동작 컴맨드를 전송하도록 구성된 컴맨드 로직을 포함할 수 있다. 상기 메모리 제어기는 또한 상기 복수의 플래시 메모리 디바이스들에 기입 보호 신호(write protection signal)를 전송하도록 구성된 기입 보호 단자를 포함할 수 있다. 상기 메모리 제어기는 또한 상기 복수의 플래시 메모리 디바이스들로부터 인터럽트 신호(interrupt signal)를 수신하도록 구성된 인터럽트 단자를 포함할 수 있다.
상기 메모리 제어기의 상기 제 1 인터페이스는, (i) 상기 호스트에 데이터를 전송하고 아울러 상기 호스트로부터 데이터를 수신하도록 구성된 제2의 복수의 데이터 I/O 단자들과, (ii) 상기 호스트에 컴맨드 타이밍 신호를 전송하도록 구성된 컴맨드 인에이블 단자(command enable terminal)와; (iii) 상기 호스트에 클럭 신호를 전송하도록 구성된 어드레스 인에이블 단자와; (iv) 상기 호스트로부터 판독 컴맨드를 수신하도록 구성된 판독 인에이블 단자와; 그리고 (v) 상기 호스트에 명령을 전송하도록 구성된 기입 인에이블 단자를 포함할 수 있다.
상기 제 1 인터페이스는 또한 상기 복수의 플래시 메모리 디바이스들 중 하나를 식별하도록 구성된 복수의 디바이스 인에이블 단자들을 포함할 수 있다. 또한, 상기 제1의 복수의 데이터 I/O 단자들은 제1의 개수로 된 I/O 단자들로 구성되고, 상기 제2의 복수의 데이터 I/O 단자들은 제2의 개수로 된 I/O 단자들로 구성되고, 그리고 상기 제1의 개수는 상기 제2의 개수의 정수배이다. 상기 메모리 제어기의 상기 제 1 인터페이스는 또한 상기 호스트에 기입 보호 신호(write protection signal)를 전송하도록 구성된 기입 보호 단자와, 그리고 상기 호스트로부터 인터럽트 신호를 수신하도록 구성된 상태 단자를 포함할 수 있다.
또 다른 실시형태에서, 복수의 플래시 메모리 디바이스들 중 하나를 프로그래밍하는 방법이 제공되며, 상기 방법은, 프로그래밍 동작을 개시하는 것과, 상기 프로그래밍 동작의 상태를 결정하는 것과, 상기 프로그래밍 동작의 상태가 상기 프로그래밍 동작이 완료되었음을 표시할 때 또는 인터럽트 표시자(interrupt indicator)가 어써트(assert)될 때, 컴맨드 상태를 결정하는 것과, 그리고 상기 프로그래밍 동작의 상태 혹은 상기 컴맨드 상태 중 어느 하나가 에러를 표시할 때 에러 정보를 결정하는 것을 포함할 수 있다. 일반적으로, 상기 프로그래밍 동작은 상기 복수의 플래시 메모리 디바이스들 중 상기 하나 혹은 버퍼에 데이터를 기입하는 것을 포함하고, 그리고 상기 프로그래밍 동작을 개시하는 것은 상기 프로그래밍 동작에 대한 플래시 메모리 디바이스를 식별하는 것을 포함한다. 어떤 실시예들에서, 상기 방법은 또한 상기 프로그래밍 동작이 완료될 때 까지, 예를 들어 진행 중 동작(Operation In Progress, OIP) 표시자가 상기 프로그래밍 동작이 완료되었다고 표시할 때까지, 상기 프로그래밍 동작 상태를 결정하는 것을 반복하는 것을 포함한다. 대안적으로 혹은 추가적으로, 상기 방법은 상기 프로그래밍 동작을 개시하기 이전에 버퍼 플래그를 클리어하고 그리고/또는 상기 버퍼에 데이터를 기입하는 것을 더 포함할 수 있다.
또 다른 실시형태에서, 복수의 플래시 메모리 디바이스들 중 하나를 판독하는 방법이 제공되며, 상기 판독하는 방법은, 상기 복수의 플래시 메모리 디바이스들 중 하나의 플래시 메모리 디바이스를 식별하는 것과, 상기 복수의 플래시 메모리 디바이스들 중 상기 하나의 플래시 메모리 디바이스로부터 데이터를 판독하기 위한 동작인 판독 동작을 개시하는 것과, 상기 판독 동작이 완료될 때 까지 인터럽트 표시자를 어써트하는 것과, 그리고 상기 복수의 플래시 메모리 디바이스들에 연결된 메모리 제어기에 상기 데이터를 제공하는 것을 포함할 수 있다. 일반적으로, 상기 방법은, 상기 판독 동작이 완료될 때 상기 인터럽트 표시자를 디어써트(deassert)하는 것을 더 포함한다.
다양한 실시예들에서, 판독 동작을 개시하는 것은 상기 판독 동작을 위한 초기 어드레스를 결정하는 것, 그리고/또는 상기 하나의 플래시 메모리 디바이스로부터 상기 메모리 제어기 혹은 상기 메모리 제어기에 연결된 버퍼 중 어느 하나에 데이터를 전달하는 것을 포함한다. 상기 방법이 상기 버퍼로부터 판독하는 것을 포함할 때, 상기 인터럽트 표시자는 상기 버퍼 내의 데이터가 준비상태에 있는 때를 표시해 줄 수 있고, 그리고 상기 방법은 상기 버퍼로부터 상기 메모리 제어기로 데이터를 제공하기 위한 폭을 선택하는 것을 더 포함할 수 있다.
본 발명은 핀 개수를 증가시킴 없이 복수의 디바이스 시스템에서의 플래시 메모리 디바이스들을 제어하기 위한 인터페이스, 장치 및 방법을 유리하게 제공한다. 본 발명의 기타 장점은 아래에서 상세히 설명되는 실시예들로부터 명백하게 될 것이다.
도 1은 종래의 메모리 어레이 구성을 나타낸 블럭도이다.
도 2A는 종래의 판독 동작을 나타내는 타이밍도이다.
도 2B는 종래의 페이지 프로그램 동작을 나타내는 타이밍도이다.
도 2C는 종래의 블럭 소거 동작을 나타내는 타이밍도이다.
도 3은 본 발명의 실시예들에 따른 사용에 적합한 예시적 하이브리드 드라이브 장치를 나타낸 블럭도이다.
도 4는 본 발명의 실시예들에 따른 예시적 신호 접속 장치를 나타낸 블럭도이다.
도 5A는 본 발명의 실시예들에 따른 예시적 디바이스 구성을 나타낸 타이밍도이다.
도 5B는 본 발명의 실시예들에 따른 예시적 식별 판독 동작을 나타낸 타이밍도이다.
도 6은 본 발명의 실시예들에 따른 예시적 프로그램 실행 동작을 나타낸 타이밍도이다.
도 7은 본 발명의 실시예들에 따른 버퍼에 대한 예시적 프로그래밍 데이터 기입 동작을 나타낸 타이밍도이다.
도 8A는 본 발명의 실시예들에 따른 제1의 예시적인 프로그램 실행 동작을 나타낸 타이밍도이다.
도 8B는 본 발명의 실시예들에 따른 제2의 예시적인 프로그램 실행 동작을 나타낸 타이밍도이다.
도 8C는 본 발명의 실시예들에 따른 호스트에 대한 예시적 셀 데이터 및 버퍼 데이터 판독 동작을 나타낸 타이밍도이다.
도 8D는 본 발명의 실시예들에 따른 예시적 판독 정보 설정 동작을 나타낸 타이밍도이다.
도 9A는 본 발명의 실시예들에 따른 제1의 예시적인 프로그래밍 방법을 나타낸 흐름도이다.
도 9B는 본 발명의 실시예들에 따른 제2의 예시적인 프로그래밍 방법을 나타낸 흐름도이다.
도 9C는 본 발명의 실시예들에 따른 제1의 예시적인 판독 방법을 나타낸 흐름도이다.
도 9D는 본 발명의 실시예들에 따른 제2의 예시적인 판독 방법을 나타낸 흐름도이다.
도 10A 내지 도 10G는 본 발명이 사용될 수 있는 예시적인 시스템들을 나타낸 도면이다.
본 발명의 실시예들에 대해 이제 상세히 설명되며, 그 예들은 첨부되는 도면에서 예시된다. 본 발명이 이러한 실시예와 함께 설명되지만, 이해해야 하는 것으로, 이러한 설명을 통해 본 발명을 이러한 실시예들에 한정시키려는 것이 아니다. 이와는 반대로, 본 발명은 첨부되는 특허청구범위에 의해 정의되는 바와 같이, 본 발명의 사상 및 범위 내에 포함될 수 있는 대안물, 변형물, 및 등가물을 포괄하도록 의도된 것이다. 더욱이, 본 발명의 다음의 상세한 설명에서, 본 발명이 완전히 이해되도록 하기 위해 다양한 특정 세부사항들이 설명된다. 그러나, 본 발명의 기술분야에서 숙련된 자에게는 명백한 것으로, 본 발명은 이러한 특정 세부사항들 없이 실시될 수 있다. 다른 경우에 있어서, 잘 알려진 방법, 절차, 컴포넌트, 및 회로는, 본 발명의 실시형태를 불필요하게 모호하게 하지 않도록, 세부적으로 자세히 설명되지 않는다.
다음과 같은 상세한 설명의 일부는, 컴퓨터, 프로세서, 제어기 및/또는 메모리에서 데이터 비트, 데이터 스트림, 혹은 파형에 관한 동작의 프로세스, 절차, 로직 블럭, 기능 블럭, 프로세싱, 및 다른 기호 표현으로서 제공된다. 이러한 설명 및 표현은 일반적으로 데이터 프로세싱 분야에서 통상의 기술을 가진 자들이 그들이 설명하고자 하는 것을 다른 기술자들에게 효과적으로 전달하기 위해 사용되고 있다. 일반적으로, 본 명세서에서 프로세스, 절차, 로직 블럭, 기능, 동작 등은 요구된 결과 및/또는 예측된 결과를 이끌어 내는 일관된 시퀀스의 단계들 혹은 명령들로 고려된다. 이러한 단계들은 일반적으로 물리적 양들의 물리적 조작을 포함한다. 일반적으로, 반드시 그런 것은 아니지만, 이러한 양들은, 컴퓨터, 데이터 프로세싱 시스템 혹은 로직 회로에서, 저장, 전달, 결합, 비교될 수 있거나 그렇지 않다면 조작될 수 있는, 전기적 신호, 자기적 신호, 광학적 신호, 혹은 양자 신호의 형태를 취한다. 이러한 신호들을 비트, 웨이브, 파형, 스트림, 값, 소자, 심벌, 문자, 용어, 수치 등으로서 언급하는 것은 본질적으로 공통적으로 사용되고 있는 것이기 때문에 때때로 편리한 것으로 인식되어 왔다.
그러나, 명심해야 할 것으로, 이러한 용어 및 유사한 용어 모두는 적절한 물리적 양과 관련된 것이고, 그리고 이러한 양들에 적용된 단지 편리한 명칭이다. 달리 특별하게 설명되지 않는다면, 그리고/또는 다음과 같은 설명으로부터 명백한 바와 같이, 본 출원서 전체를 통해, "프로세싱", "동작", "컴퓨팅", "계산", "결정", "조작", "변환" 등과 같은 용어를 사용하는 설명은, 물리적 양(예를 들어, 전기적 양)으로 표현된 데이터를 조작하고 변환하는, 컴퓨터, 데이터 프로세싱 시스템, 로직 회로 혹은 유사한 프로세싱 디바이스(예를 들어, 전기적, 광학적, 혹은 양자적 컴퓨팅 또는 프로세싱 디바이스)의 동작 및 프로세스를 말하는 것임을 이해해야 한다. 이러한 용어는, 시스템 혹은 아키텍처의 컴포넌트(들)(예를 들어, 레지스터, 메모리, 다른 유사한 정보 저장소, 전송, 혹은 디스플레이 디바이스 등)에서의 물 리적 양을, 동일 혹은 다른 시스템 혹은 아키텍처의 다른 컴포넌트들에서의 물리적 양으로서 유사하게 표현되는 다른 데이터로 조작 혹은 변환하는 프로세싱 디바이스들의 행동, 동작 및/또는 프로세스를 말한다.
게다가, 편리하고 간단한 설명을 위해, 용어 "신호(들)" 및 "파형(들)"은 상호교환가능하게 사용될 수 있으며, 하지만 이러한 용어는 해당 기술 분야에서 인식되고 있는 의미도 역시 가지고 있다. 용어 "노드(들)", "입력(들)", "출력(들)", 및 "포트(들)"은, 용어 "~에 접속", "~와 연결", "~에 연결" 및 "~와 통신"(이러한 용어는 또한, 용어의 사용에 있어 달리 명백하게 표시되지 않는 다면, 접속, 연결, 및/또는 통신 소자들 간의 직접적 및/또는 간접적 관계를 말하는 것임)과 같이, 상호교환가능하게 사용될 수 있고, 그리고, 일반적으로 용어의 사용에 있어 달리 명확하게 표시되지 않는다면, 하나의 이러한 형태의 사용은 다른 것을 포함한다. 그러나, 이러한 용어는 또한 본 기술분야에서 인식되는 의미도 가지고 있다.
본 발명은, 그 다양한 실시형태에 있어, 예시적 실시예들에 관해 아래에서 더 상세히 설명된다.
도 3은 본 발명의 실시예에 따른 사용에 적합한 예시적 하이브리드 드라이브 장치(300)를 나타낸다. 호스트(302)는 하이브리드 드라이브(304)에서의 플래시 디바이스(308)와 인터페이스할 수 있다. 일반적으로, 플래시 디바이스(308)는 제어기/플래시 메모리 모듈(404)(도 4 및 아래의 설명 참조)을 포함한다. 도 3을 다시 참조하면, 다양한 예들에서, 호스트(302)와 플래시(308) 간의 인터페이스는 직렬 고급 기술 결합(Serial Advanced Technology Attachment, SATA) 인터페이스 혹은 병 력 ATA(Parallel ATA, PATA) 인터페이스를 포함할 수 있다. 하이브리드 드라이브(304)는 또한 중앙 처리 장치(Central Processing Unit, CPU)(310), 판독 채널(312) 및 버퍼 메모리(예를 들어, 동적 랜덤 액세스 메모리(Dynamic Random Access Memory, DRAM))(306)를 포함할 수 있다. 예를 들어, CPU(310)는 종래의 마이크로프로세서, (디지털) 신호 처리기(예를 들어, DSP(Digital Signal Processor), 혹은 마이크로제어기를 포함할 수 있다. 판독 채널(312)은 종래의 판독 채널 데이터 전달 프로세싱 블럭(예를 들어, 하나 또는 그 이상의 포트, 신호 검출기, 인코더, 디코더, 인터리버(interleavers), 디인터리버(de-interleavers), 에러 점검 코드(Error Checking Code, ECC) 계산기 및/또는 비교기 등)을 포함할 수 있다. DRAM(306)은 약 2Mb 내지 약 8Mb의 메모리를 포함할 수 있다. 특정 실시예들에서 현재의 플래시 메모리/제어기 모듈은 하이브리드 드라이브(304)에서 사용될 수 있거나 혹은 임의의 적당한 솔리드-스테이트 드라이브(Solid-State Drive, SSD)에서 사용될 수 있다. 하드 디스크 방법과는 반대로 하드 드라이브에서 플래시 메모리를 사용함으로써 얻을 수 있는 장점으로는, (i) 더 빠른 부팅 및 재개 시간, (ii) 더 긴 배터리 수명(예를 들어, 무선 애플리케이션에 있어서), 그리고 (iii) 더 높은 데이터 신뢰도가 있다.
도 4는 본 발명의 실시예에 따른 예시적 신호 접속 장치(400)를 나타낸 것이다. 호스트(402)는 메모리 제어기/플래시 모듈(404)과 인터페이스할 수 있다. 호스트(402)와 메모리 제어기(406) 간의 인터페이스는 일반적인 것 일 수 있다(예를 들어, 도 2A 내지 도 2C 및/또는 앞서의 표 1에 나타난 신호들을 위한 핀 및/또는 단 자, 혹은 그 서브세트를 포함함). 따라서, 일부 실시예에서, 메모리 제어기는 컴맨드 타이밍 신호를 호스트에 전송하도록 구성된 컴맨드 인에이블 단자(예를 들어, CLE), 클럭 신호를 호스트에 전송하도록 구성된 어드레스 인에이블 단자(예를 들어, ALE), 판독 컴맨드를 호스트로부터 수신하도록 구성된 판독 인에이블 단자(예를 들어, RE_), 및 명령을 호스트에 전송하도록 구성된 기입 인에이블 단자(예를 들어, WE_)를 포함할 수 있다.
메모리 제어기(406)는, 도시된 바와 같이, 복수의 플래시 메모리 디바이스들(예를 들어, 플래시 메모리 칩(408-A) 및 플래시 메모리 칩(408-B))과 각각의 신호 핀 혹은 단자를 통해 접속될 수 있다. 일부 실시예들에서, 메모리 제어기(406)는 주문형 집적 회로(Application Specific Integrated Circuit, ASIC) 혹은 시스템 온 칩(System On a Chip, SOC)으로서 구현될 수 있다. 추가적으로, 구성 신호(CNFG)는 직렬 형태의 플래시 디바이스들(408-A 및 408-B) 상에서 회로를 통해 접속될 수 있다. 아래의 표 3은 종래의 NAND 플래시 인터페이스와 관련된 것으로, 본 발명의 실시예들에 따른 제어기(406)와 플래시 메모리 디바이스(408-A 및 408-B) 간의 인터페이스(예를 들어, "메모리 제어기"라 명명된 열(column) 참조)에서의 신호에 대한 핀 혹은 단자의 설명을 나타낸다. 따라서, 표 3에서의 예시적 단자 설명에서 알 수 있는 바와 같이, 본 메모리 제어기는, 하나 또는 그 이상의 구성 컴맨드를 플래시 메모리 디바이스에 전송하도록 구성된 구성 단자(예를 들어, CNFG)와, 컴맨드 타이밍 신호를 플래시 메모리 디바이스에 전송하도록 구성된 컴맨드 제어 단자(예를 들어, SYNC_N)와, 클럭 신호를 상기 복수의 플래시 메모리 디바이스 들에 전송하도록 구성된 클럭 단자(예를 들어, REF_CLK)와, 그리고 판독 컴맨드를 플래시 메모리 디바이스로부터 수신하도록 구성된 판독 컴맨드 단자(예를 들어, RD_CLK)를 포함하는 인터페이스를 포함할 수 있다. "입력/출력"은 신호가 제어기(406) 상에서 입력 신호 인지, 출력 신호인지, 혹은 양쪽 모두인지 여부를 나타낸다.
[표 3]
Figure 112009019468999-pct00003
일 실시예에서, SYNC_N은 컴맨드 시퀀스를 개시시키는 타이밍 신호를 나타낼 수 있다. 적절하게 구성되는 경우, 세 개의 신호, 즉, 동기화, 범용의 타이밍, 및 판독 타이밍(각각 예를 들어, SYNC_N, REF_CLK, 및 RD_CLK)은 플래시 디바이스 제어를 위한 특정 유틸리티일 수 있다. DATA[7:0] 핀들 상에서, 이제 도 5A 내지 도 8D를 참조하면, "I"는 플래시 식별(IDentification, ID)을 나타낼 수 있고, "C"는 컴맨드 바이트를 나타낼 수 있으며, "P"는 파라미터를 나타낼 수 있고, "D"는 메모리 제어기로부터의 데이터 바이트를 나타낼 수 있으며, 그리고 "F"는 플래시 디바이스로부터의 아날로그 판독 데이터 혹은 플래시 데이터 바이트를 나타낼 수 있다. 또한, ID 바이트는 특정 컴맨드가 속한 플래시 메모리 디바이스를 지정하기 위해 일반적으로 컴맨드 바이트에 선행한다. 또한, 메모리 제어기(406)에 연결된 각각의 플래시 디바이스(예를 들어, 도 4에서의 디바이스들(408-A 및 408-B))로의 브로드캐스팅은 지정된 ID 바이트를 통해 수용될 수 있다. 예시적 컴맨드 바이트가 아래의 표 4에서 나타날 수 있으며, 여기서 각각의 "x"는 그 특정 컴맨드에 할당된 독립적 16진법 값이다.
[표 4]
Figure 112009019468999-pct00004
컴맨드 바이트 이후에 파라미터 바이트가 올 수 있고, 그리고 파라미터 바이트의 전체 개수는 이것과 관련된 특정 컴맨드에 따라 다를 수 있다. 파라미터 바이트 이후에 데이터 바이트가 올 수 있고, 그리고 데이터 바이트의 전체 개수는 또한 특정된 관련 컴맨드에 의해 정의될 수 있다. 더욱이, 데이터 바이트는 프로그래밍 혹은 버퍼 기입 컴맨드에 대한 데이터를 제공할 수 있다. 플래시 데이터 바이트(즉, 이러한 데이터 바이트는 플래시 메모리 디바이스에 의해 다루어짐) 이후에는 컴맨드 바이트 혹은 파라미터 바이트가 올 수 있고, 그리고 플래시 데이터 바이트의 전체 개수는 그 관련된 특정 컴맨드에 의해 정의될 수 있다. 예를 들어, 플래시 데이터 바이트는 버퍼 판독, 데이터 판독, 상태 판독, ID 판독, 및/또는 판독 데이 터 전송 컴맨드에 대한 데이터를 포함할 수 있다.
재설정 컴맨드는 컴맨드를 중단시키고 그리고/또는 관련된(혹은 식별된) 플래시 메모리 디바이스를 재설정하도록 제어기/플래시 메모리 모듈(404)에 명령할 수 있다. 플래시 ID를 구성하도록 하는 컴맨드 혹은 명령(예를 들어, 디바이스 구성 컴맨드)에 대한 예시적인 컴맨드 설명이 아래의 표 5에 나타나 있다.
[표 5]
Figure 112009019468999-pct00005
ID 판독 컴맨드는, 예를 들어, 인증 바이트, 제품 코드, 및 플래시 메모리 디바이스 혹은 칩 수정을 검증할 수 있다. 검증 컴맨드 혹은 명령(예를 들어, ID 판독)에 대한 예시적 설명이 아래의 표 6에 나타나 있다.
[표 6]
Figure 112009019468999-pct00006
구성 설정 컴맨드는 예를 들어, 인터럽트를 인에이블 및/또는 디스에이블시킬 수 있고, 그리고 셀당 비트의 개수를 구성할 수 있다. 인터럽트 인에이블 혹은 셀 구성 컴맨드 혹은 명령(예를 들어, 구성 설정 컴맨드)에 대한 예시적인 설명이 아래의 표 7에 나타나 있다.
[표 7]
Figure 112009019468999-pct00007
도 5A는 본 발명의 실시예에 따른 예시적인 디바이스 구성 동작에 대한 타이밍도(500)를 나타낸다. 기입 보호 및/또는 동기화 신호(들)이 어써트된 상태로 전이할 때, 플래시 디바이스 식별 바이트(예를 들어, 플래시 ID 혹은 "I" 바이트) 및 컴맨드 바이트(예를 들어, "C" 바이트)가 제어기로부터 플래시 메모리 디바이스로 전송된다. 도 4에 도시된 실시예에서, 디바이스 식별 정보는 데이터 단자(예를 들어, DATA[0:7])를 통해 전송되고, 그러나 대안적 실시예에서, 디바이스 식별 정보는 만약 충분한 단자가 가용하다면 전용 디바이스 ID 단자를 통해 전송될 수 있다. 따라서, 본 메모리 제어기는 또한 플래시 메모리 디바이스들 중 하나를 식별하도록 구성된 디바이스 인에이블 단자를 포함할 수 있다. 도 5A를 다시 참조하면, 도시된 바와 같이, 플래시 ID 바이트 및 컴맨드 바이트가 공급된 이후 한 싸이클 동안 CNFG가 전이하면(예를 들어, "하이" 바이너리 로직 상태가 되면), 인증 데이터 "P"가 제공될 수 있다. 또한, 인증(혹은 컴맨드 타이밍) 신호(SYNC_N)는 마지막 인증 데이터 부분 이전 한 싸이클 전에 전이할 수 있다(예를 들어, "하이" 바이너리 로직 상태가 될 수 있다). 일부 실시예들에서, 이러한 인증 데이터 부분은 최대 16번의 REF_CLK 싸이클 동안 제공될 수 있다. 또한, 디바이스 구성 컴맨드는, 만약 (i) 특정 디바이스가 이미 구성되어 있다면, (ii) 기입 보호 신호가 어써트되지 않았다면(예를 들어, WP_N = '0'), (iii) 구성 신호(예를 들어, CNFG)가 어써트되지 않았다면, 그리고/또는 (iv) 구성 신호가 두번 혹은 그 이상의 클럭 주기 또는 두번의 개별 시간 동안 어써트되었다면, 특정 플래시 메모리 디바이스에 의해 무시될 수 있다.
도 5B는 본 발명의 실시예에 따른 복수의 플래시 메모리 디바이스들 중 하나의 식별 정보를 판독하기 위한 예시적 동작에 대한 타이밍도(550)를 나타낸다. ID 판독 동작을 실행시키기 위해, 기입 보호 신호(예를 들어, WP_N)가 전체 동작에 대해 어써트될 수 있고, 하지만 동기화 신호(예를 들어, SYNC_N)가 제한된 개수의 타이밍 신호 싸이클(예를 들어, 단일 싸이클의 REF_CLK) 동안 어써트될 수 있다. 판독 식별 컴맨드(예를 들어, 90h)가 공급될 수 있고, 플래시 데이터 바이트(F1, F2, 및 F3)에 의해 이후 몇 번의 싸이클이 이어질 수 있다. 이러한 데이터 바이트들을 동기화시키기 위해, 판독 타이밍 신호(예를 들어, RD_CLK)가 컴맨드 바이트 "C" 이전에 공급된 플래시 식별 바이트 "I"에 의해 표시된 특정 플래시 디바이스로부터 공급될 수 있다. 따라서, 도 4에 도시된 실시예에서, 디바이스 식별 정보가 데이터 단자(예를 들어, DATA[0:7])를 통해 수신되고, 하지만 대안적으로, 전용 디바이스 ID 단자를 통해 수신될 수도 있다.
도 6은 본 발명의 실시예에 따른 복수의 플래시 메모리 디바이스들 중 하나를 프로그래밍하기 위한 예시적 동작에 대한 타이밍도(600)를 나타낸다. 프로그래밍 동작을 실행하기 위해, 기입 보호 신호(예를 들어, WP_N)가 전체 동작에 대해 (또는 더 오래) 어써트될 수 있고, 하지만 동기화 신호(예를 들어, SYNC_N)가 디어써트되자 마자, 프로그래밍 동작은 종료된다. 파라미터 데이터(P1-P7)가, 메모리 제어기로부터, 컴맨드 바이트(예를 들어, 10h) 이후의 (예를 들어, "I"로 표시된) 식별 바이트에서 식별된 플래시 메모리 디바이스에, 공급될 수 있다. DATA[7:0] 혹은 DATA[15:0] 상의 D1-Dn과 같은, 프로그래밍을 위한 데이터가 메모리 제어기에 의해 공급될 수 있다. 또한, 만약 프로그래밍 동작의 완료를 표시하기 위해 패킹 인에이블 신호가 어써트된다면(예를 들어, IEN_P='1'), 플래시 메모리 디바이스에 의해 인터럽트 신호(예를 들어, INT_N)는 사전에 결정된 상태(예를 들어, 바이너리 로직 "로우" 상태)로 될 수 있다.
도 7은 본 발명의 실시예들에 따른 버퍼(예를 들어, 도 3에서의 버퍼(306))에 프로그래밍 데이터를 기입하기 위한 예시적 동작에 대한 타이밍도(700)를 나타낸다. 이러한 "버퍼에 기입" 동작을 실행하기 위해, 프로그래밍 동작과 유사하게, 기입 보호 신호(예를 들어, WP_N)가 전체 동작에 대해 (혹은 더 오래) 어써트될 수 있고, 하지만, 동기화 신호(예를 들어, SYNC_N)가 디어써트되자 마자, "버퍼에 기입" 동작은 종료된다. 파라미터 데이터(P1-P7)가, 메모리 제어기로부터, 컴맨드 바이트(예를 들어, 12h) 이후의 ("I"로 표시된) 식별 바이트에서 식별된 플래시 메모 리 디바이스에, 공급될 수 있다. DATA[7:0] 혹은 DATA[15:0] 상의 D1-Dn과 같은, 버퍼에 기입될 데이터가 메모리 제어기에 의해 공급될 수 있다. 그러나, 만약 기입 보호 및/또는 인터럽트 신호가 동기화 신호의 전이로부터 사전에 결정된 개수의 기준 클럭 싸이클(예를 들어, 3번의 REF_CLK 싸이클) 내에 전이되지 않는다면, 메모리 제어기는, 식별된 플래시 메모리 디바이스에 데이터를 프로그래밍 하기 보다는 오히려 데이터를 버퍼에 기입한다.
도 8A는 본 발명의 실시예에 따른 제1의 예시적 프로그래밍 실행 동작을 위한 타이밍도(750)를 나타낸다. 기입 보호 신호(예를 들어, WP_N)가 전체 동작에 대해 (혹은 타이밍 신호 REF_CLK의 어떤 최소 개수의 싸이클 동안) 어써트될 수 있고, 하지만 동기화 신호(예를 들어, SYNC_N)가 디어써트되자 마자, 프로그래밍 실행 동작은 종료된다. 파라미터 데이터(P1-P7)가, 메모리 제어기로부터, 컴맨드 바이트(예를 들어, 13h) 이후의 ("I"로 표시된) 식별 바이트에서 식별된 플래시 메모리 디바이스에, 공급될 수 있다. 만약 프로그래밍 실행 동작의 완료를 표시하기 위해 인터럽트 인에이블 신호가 어써트된다면(예를 들어, EN_P='1'), 플래시 메모리 디바이스에 의해 인터럽트 신호(예를 들어, INT_N)가 또한 사전에 결정된 상태(예를 들어, 바이너리 로직 "로우" 상태)로 될 수 있다.
도 8B는 본 발명의 실시예에 따른 제2의 예시적인 프로그래밍 실행 동작에 대한 타이밍도(760)를 나타낸다. 이러한 실시예는, 단일 싸이클의 타이밍 신호(예를 들어, REF_CLK) 이후 동기화 신호가 디어써트되는 것을 제외하고는, 도 8A의 것과 유사한데, 이 경우 파라미터 정보는 식별된 플래시 메모리 디바이스에 공급되지 않을 수 있다.
도 8C는 본 발명의 실시예에 따른 셀 데이터 및/또는 버퍼 데이터를 판독(예를 들어, 이러한 데이터를 호스트로 전달)하기 위한 예시적 동작에 대한 타이밍도(770)를 나타낸다. 이러한 동작(예를 들어, 컴맨드 30h)에서, 셀 데이터가 판독될 수 있고, 그리고 버퍼 데이터가 호스트에 전송될 수 있다. 일반적으로, 기입 보호, 동기화 및/또는 인터럽트 신호가 도 6 및 도 8A와 유사하게 어써트 및 디어써트된다. 플래시 메모리 디바이스로부터 판독되는 데이터(Fl-Fn)가 아날로그 출력 RDP0/RDN0-RDP3/RDN3 (예를 들어, 8 비트 디지털 버스 혹은 4 비트 차동형 버스(differential bus)) 혹은 RDP0/RDN0-RDP7/RDN7 (예를 들어, 16 비트 디지털 버스 혹은 8 비트 차동형 버스) 상에서 제공될 수 있다. 플래시 메모리로부터의 이러한 데이터와 함께, 판독 타이밍 신호(예를 들어, RDCK_INT)가 플래시 메모리 디바이스로부터 제어기로 동기화를 제공하기 위해 제공될 수 있다. 그러나, 인터럽트 신호(예를 들어, INT_N)는, 인터럽트 인에이블 신호가 판독 데이터가 준비되었음을 표시하기 위해 어써트될 때(IEN_R='1'), 플래시 메모리 디바이스에 의해 방전될 수 있다.
도 8D는 본 발명의 실시예에 따른 판독 파라미터 정보를 설정하기 위한 예시적 동작에 대한 타이밍도(790)를 나타낸다. 이러한 동작(예를 들어, 컴맨드 31h)에서, 기입 보호, 동기화 및/또는 인터럽트 신호가 도 6 및 도 8C와 유사하게 어써트 및 디어써트된다. 식별 바이트("I") 및 컴맨드 바이트("C") 이후에 파라미터 바이트(P1-P7)가 식별된 플래시 디바이스에 제공된다. 또한, 도 8C와 같이, 판독 데이 터가 준비되었음 표시하기 위해 인터럽트 인에이블 신호가 어써트될 때(IEN_R='1'), 인터럽트 신호(예를 들어, INT_N)가 플래시 메모리 디바이스에 의해 방전될 수 있다.
도 9A는 본 발명의 실시예에 따른 제1의 예시적인 프로그래밍 방법에 대한 흐름도(800A)를 나타낸다. 흐름도는 802A에서 시작할 수 있고, 그리고 프로그래밍 컴맨드가 제어기에 의해 혹은 제어기로부터 발부될 수 있다(804A). 예를 들어, 프로그래밍 컴맨드는 버퍼 플래그를 클러어할 수 있고, 셀 어드레스를 설정할 수 있고, 프로그래밍 데이터를 획득할 수 있고, 그리고/또는 데이터 프로그래밍 동작을 실행할 수 있다. 그 다음에 상태 판독 컴맨드가 제어기에 의해 혹은 제어기로부터 발부될 수 있고(806A), 그리고 "진행 중 동작(Operation In Progress, OIP)" 표시자가 디어써트될 때(예를 들어, OIP='0', 808A)까지 계속될 수 있다. 상태 판독 컴맨드는 일반적으로 소거 컴맨드, 프로그래밍 컴맨드, 혹은 판독 컴맨드와 같은 (이전의) 컴맨드의 상태를 결정한다. 이러한 컴맨드의 상태는, 판독 상태 정보를 제공하기 위해 가용한 비트의 개수에 따라, 에러 없음, 진행 중 컴맨드 실행, 및/또는 하나 또는 그 이상의 에러 혹은 에러 타입을 포함할 수 있다. OIP 표시자가 디어써트될 때(808A), 그리고/또는 인터럽트가 일어날 때(812A), 제2의 상태 판독 컴맨드가 발부될 수 있다(810A). 동작이 종료될 때, 그리고 어떠한 에러도 일어나지 않을 때, "에러 없음" 상태가 표시될 수 있다. 대안적으로, 동작(예를 들어, 컴맨드 실행) 동안 에러가 일어나는지 여부에 따라, 제2의 상태 판독 컴맨드(810A)가 인터럽트를 클리어할 수 있거나 또는 어써트할 수 있다. 만약에 (예를 들어, 에러 표시자 혹은 플래그를 어써트함으로써) 에러가 발견되면(단계 814A), 에러 정보 판독 컴맨드가 발부되어(816A), 에러 정보가 획득될 수 있고, 그리고 흐름도는 종료될 수 있다(818A). 만약에 에러가 발견되지 않는다면(단계 814A에서 ERR=0), 흐름도는 종료할 수 있다(818A).
도 9B는 본 발명의 실시예에 따른 제2의 예시적 프로그래밍 방법에 대한 흐름도(800B)를 나타낸다. 흐름도는 단계 802B에서 시작할 수 있고, 그리고, 버퍼 플래그 클리어 컴맨드가 제어기에 의해 혹은 제어기로부터 발부될 수 있다(804B). 일반적으로 버퍼 플래그 클리어 컴맨드가 내부 데이터 버퍼(예를 들어, 도 3에서의 버퍼(306))의 상태를 표시하는 플래그 혹은 표시자를 클리어한다. 다음으로, 도 9B를 다시 참조하면, 버퍼 기입 컴맨드가 발부될 수 있다(820B). 예를 들어, 버퍼 기입 컴맨드는 프로그래밍 동작을 위한 셀 어드레스(예를 들어, 초기 플래시 메모리 어드레스)를 설정 혹은 결정할 수 있고, 그리고/또는 프로그래밍 데이터를 (예를 들어 도 4에서의 제어기(406) 혹은 호스트(402)로부터) 획득할 수 있다. 다음으로, 도 9B를 다시 참조하면, 프로그램 실행 컴맨드가 발부될 수 있다(822B). 프로그램 실행 컴맨드는 일반적으로 프로그래밍 동작의 실행을 개시한다. 흐름도(800D)의 나머지는 도 9A의 예시적 흐름도(800A)와 유사하다. 예를 들어, 상태 판독 컴맨드가 이후 발부될 수 있고(806B), 그리고 OIP 표시자가 디어써트될 때까지 계속될 수 있다(808B). OIP 표시자가 디어써트되고(808B) 그리고/또는 인터럽트가 발생될 때(812B), 인터럽트를 클리어할 수 있고, 흐름도를 종료시킬 수 있고(OIP가 디어써트되고, 그리고 어떠한 에러도 표시되지 않음(814B)), 또는 에러를 표시할 수 있는 제2의 상태 판독 컴맨드가 발부될 수 있다(810B). 만약 에러가 발견되면(814B), 에러 정보 판독 컴맨드가 에러 정보를 획득하기 위해 발부될 수 있고(816B), 그리고 흐름도는 완료될 수 있다(818B).
도 9C는 본 발명의 실시예에 따른 제1의 예시적 판독 방법에 대한 흐름도(800C)를 나타낸다. 흐름도는 단계 802C에서 시작할 수 있고, 그리고, 판독 컴맨드가 제어기에 의해 혹은 제어기로부터 발부될 수 있다(804C). 예를 들어, 판독 컴맨드는 판독 동작을 위한 셀 어드레스(예를 들어, 초기 플래시 메모리 어드레스)를 설정 혹은 결정할 수 있고, 그리고/또는 판독 동작(예를 들어, 복수의 플래시 메모리 디바이스(408-A 및 408-B)(도 4)로부터 식별된 하나의 플래시 메모리 디바이스로부터 버퍼(306)(도3)로의 데이터 전달)을 실행할 수 있다. 인터럽트 인에이블 신호(예를 들어, IEN_R)가 어써트 되는 동안, 인터럽트 표시자 혹은 플래그도 또한 어써트되고, 그리고 판독 동작은 계속된다(일반적으로, 어써트된 인터럽트 표시자 동안 어떠한 새로운 컴맨드도 실행될 수 없음). 그러나, 인터럽트가 끝나고, 그리고 대응하는 표시자가 어써트된 상태에 상보적인 사전에 결정된 상태를 가지게 될 때(예를 들어, 바이너리 로직 '1')(806C), 인터럽트 클리어 컴맨드 및/또는 버퍼 데이터 전송 컴맨드가 발부될 수 있고(808C), 그리고 흐름도가 완료될 수 있다(810C). 예를 들어, 버퍼 데이터 전송 컴맨드는 플래시 메모리 디바이스의 하나 또는 그 이상의 셀 어드레스를 판독하는 것, 플래시 메모리 디바이스로부터 셀 카운팅(예를 들어 데이터가 판독되는 연속적 혹은 연속된 어드레스 혹은 셀의 개수)을 판독하는 것, 그리고/또는 식별된 플래시 메모리 디바이스 혹은 버퍼로부터 호스트로 데이터를 전달하는 것을 포함할 수 있다. 대안적으로, 인터럽트 클리어 컴맨드 및/또는 버퍼 데이터 전송 컴맨드(들)(808C)는 판독 컴맨드가 발부(804C)된 이후 바로 일어날 수 있다.
도 9D는 본 발명의 실시예들에 따른 제2의 예시적 판독 방법에 대한 흐름도(800D)를 나타낸다. 이 흐름도는 단계 802D에서 시작할 수 있고, 그리고 판독 정보 설정 컴맨드가 제어기에 의해 혹은 제어기로부터 발부될 수 있다(804D). 예를 들어, 판독 정보 설정 컴맨드는 판독 동작을 위한 셀 어드레스(예를 들어, 초기 플래시 메모리 어드레스)를 설정 혹은 결정할 수 있고, 판독 동작을 실행할 수 있으며, 그리고/또는 인터럽트 표시자 혹은 플래그를 어써트할 수 있다. 도 9C에서와 같이, 상태 판독 컴맨드가 발부될 수 있고(806D), 그리고 OIP 표시자가 어써트될 때까지(808D) 계속될 수 있다. 이제 도 9D를 다시 참조하면, OIP 표시자가 어써트되고(808D) 그리고/또는 인터럽트 표시자가 디어써트될 때(812D), 버퍼 판독 컴맨드가 발부될 수 있다(810D). 예를 들어, 버퍼 판독 컴맨드는 플래시 메모리 디바이스의 하나 또는 그 이상의 셀 어드레스를 판독하는 것, 플래시 메모리 디바이스로부터 셀 카운팅(예를 들어 데이터가 판독되는 연속적 혹은 연속된 어드레스 혹은 셀의 개수)을 판독하는 것, 그리고/또는 버퍼로부터 호스트로 데이터를 판독 혹은 전달하는 것을 포함할 수 있다. 다음으로, 도 9C의 흐름도(800C)와 유사하게, 인터럽트 클리어 컴맨드 및/또는 버퍼 데이터 전송 컴맨드가 제어기로부터 발부될 수 있고(812D), 그리고 흐름도는 종료될 수 있다(814D).
본 회로를 사용하는 예시적인 시스템
본 발명의 또 다른 실시형태에 있어서, 시스템은 플래시 메모리 디바이스들 을 제어하기 위해 본 장치 혹은 회로를 포함할 수 있다. 본 발명의 다양한 예시적 실시예들이 도 10A 내지 도 10G에서 도시된다.
이제 도 10A를 참조하면, 본 발명은 하드 디스크 드라이브(Hard Disk Drive, HDD)(900)에서 구현될 수 있다. 본 발명은 도 10A에서 902로 일반적으로 식별되는 신호 프로세싱 및/또는 제어 회로 어느 하나 혹은 양쪽 모두를 구현할 수 있다. 일부 실시예들에서, HDD(900)에서의 신호 프로세싱 및/또는 제어 회로(902) 그리고/또는 다른 회로(미도시)는 데이터를 처리할 수 있고, 코딩 및/또는 암호화를 수행할 수 있고, 연산을 수행할 수 있고, 그리고/또는 자기 저장 매체(906)에 출력되는 그리고/또는 자기 저장 매체(906)로부터 수신되는 데이터를 포맷할 수 있다.
HDD(900)는 하나 또는 그 이상의 유선 혹은 무선 통신 링크(908)를 통해, 컴퓨터와 같은 호스트 디바이스(예를 들어, 도 3에서의 302, 혹은 도 4에서의 402), PDA(Personal Digital Assistants), 셀률러 폰, 미디어 혹은 MP3 플레이어 등과 같은 모바일 컴퓨팅 디바이스, 그리고/또는 다른 디바이스와 통신할 수 있다. HDD(900)는 RAM(Random Access Memory), 플래시 메모리와 같은 지연시간이 낮은 비휘발성 메모리, ROM(Read Only Memory) 및/또는 다른 적절한 전자 데이터 저장소와 같은 메모리(909)에 연결될 수 있다.
이제 도 10B를 참조하면, 본 발명은 DVD(Digital Versatile Disc) 드라이브(910)에서 구현될 수 있다. 본 발명은 일반적으로 도 10B에서 912로 식별되는 신호 프로세싱 및/또는 제어 회로 어느 하나 혹은 양쪽 모두, 그리고/또는 DVD 드라이브(910)의 대용량 데이터 저장소(918)를 구현할 수 있다. DVD(910)에서의 신호 프로세싱 및/또는 제어 회로(912) 그리고/또는 다른 회로(미도시)는 데이터를 처리할 수 있고, 코딩 및/또는 암호화를 수행할 수 있고, 연산을 수행할 수 있고, 그리고/또는 광학 저장 매체(916)로부터 판독되는 그리고/또는 광학 저장 매체(916)에 기입되는 데이터를 포맷할 수 있다. 일부 실시예들에서, DVD(910)에서의 신호 프로세싱 및/또는 제어 회로(912) 그리고/또는 다른 회로들(미도시)은 또한 코딩 및/또는 디코딩 그리고/또는 DVD 드라이브와 관련된 임의의 다른 신호 프로세싱 기능과 같은 다른 기능을 수행할 수 있다.
DVD 드라이브(910)는 하나 또는 그 이상의 유선 혹은 무선 통신 링크(917)를 통해 컴퓨터, 텔레비젼 혹은 다른 디바이스와 같은 출력 디바이스(미도시)와 통신할 수 있다. DVD(910)는 비휘발성 방식으로 데이터를 저장하는 대용량 데이터 저장소(918)와 통신할 수 있다. 대용량 데이터 저장소(918)는 하드 디스크 드라이브(HDD)를 포함할 수 있다. HDD는 도 10A에 도시된 구성을 가질 수 있다. HDD는 대략 1.8"보다 작은 직경을 갖는 하나 또는 그 이상의 플래터를 포함하는 미니 HDD일 수 있다. DVD(910)는 RAM, ROM, 플래시 메모리와 같은 지연시간이 낮은 비휘발성 메모리, 그리고/또는 다른 적절한 전자 데이터 저장소와 같은 메모리(919)에 연결될 수 있다.
이제 도 10C를 참조하면, 본 발명은 고화질 텔레비젼(High Definition TeleVision, HDTV)(920)에서 구현될 수 있다. 본 발명은 일반적으로 도 10C에서 922로 식별되는 신호 프로세싱 및/또는 제어 회로 어느 하나 혹은 양쪽 모두, HDTV(920)의 WLAN 인터페이스 그리고/또는 대용량 데이터 저장소를 구현할 수 있다. HDTV(920)는 유선 혹은 무선 포맷 중 어느 하나로 HDTV 입력 신호를 수신하고, 그리고 디스플레이(926)를 위한 HDTV 출력 신호를 발생시킨다. 일부 실시예들에서, HDTV(920)에서의 신호 프로세싱 회로 및/또는 제어 회로(922) 그리고/또는 다른 회로들(미도시)은 데이터를 처리할 수 있고, 코딩 및/또는 암호화를 수행할 수 있고, 연산을 수행할 수 있고, 데이터를 포맷할 수 있고, 그리고/또는 요구될 수 있는 임의의 다른 타입의 HDTV 프로세싱을 수행할 수 있다.
HDTV(920)는 광학 및/또는 자기 저장 디바이스와 같은 비휘발성 방식으로 데이터를 저장하는 대용량 데이터 저장소(927)와 통신할 수 있다. 적어도 하나의 HDD가 도 10A에 도시된 구성을 가질 수 있고, 그리고/또는 적어도 하나의 DVD가 도 10B에 도시된 구성을 가질 수 있다. HDD는 대략 1.8"보다 작은 직경을 갖는 하나 또는 그 이상의 플래터를 포함하는 미니 HDD일 수 있다. HDTV(920)는 RAM, ROM, 플래시 메모리와 같은 지연시간이 낮은 비휘발성 메모리, 그리고/또는 다른 적절한 전자 데이터 저장소와 같은 메모리(928)에 연결될 수 있다. HDTV(920)는 또한 WLAN 네트워크 인터페이스(929)를 통해 WLAN과의 접속을 지원할 수 있다.
이제 도 10D를 참조하면, 본 발명은 차량(930)의 제어 시스템, 차량 제어 시스템의 WLAN 인터페이스 및/또는 대용량 데이터 저장소에서 구현될 수 있다. 일부 실시예들에서, 본 발명은 하나 또는 그 이상의 센서, 예를 들어 온도 센서, 압력 센서, 회전 센서, 에어플로우 센서(airflow sensors), 및/또는 임의의 다른 적절한 센서로부터 입력을 수신하고 아울러 하나 또는 그 이상의 출력 제어 신호, 예를 들어 엔진 동작 파라미터, 전송 동작 파라미터, 및/또는 다른 제어 신호를 발생시키는 파워트레인 제어 시스템(powertrain control system)(932)을 구현한다.
본 발명은 또한 차량(930)의 다른 제어 시스템(940)에서 구현될 수 있다. 마찬가지로, 제어 시스템(940)은 입력 센서(942)로부터 신호를 수신할 수 있고, 그리고/또는 하나 또는 그 이상의 출력 디바이스(944)에 제어 신호를 출력할 수 있다. 일부 실시예들에서, 제어 시스템(940)은 ABS(Anti-lock Braking System), 네비게이션 시스템, 텔레매틱스 시스템, 차량 텔레매틱스 시스템, 경로 이탈 시스템, 적응성 순항 제어 시스템, 스테레오, DVD, 콤팩트 디스크 등과 같은 차량 엔터테인먼트 시스템의 일부일 수 있다. 또 다른 실시예들이 고려될 수 있다.
파워트레인 제어 시스템(932)은 비휘발성 방식으로 데이터를 저장하는 대용량 데이터 저장소(946)와 통신할 수 있다. 대용량 데이터 저장소(946)는 광학 및/또는 자기 저장 디바이스(예를 들어, 하드 디스크 드라이브(HDD) 및/또는 DVD)를 포함할 수 있다. 적어도 하나의 HDD가 도 10A에 도시된 구성을 가질 수 있고, 그리고/또는 적어도 하나의 DVD가 도 10B에 도시된 구성을 가질 수 있다. HDD는 대략 1.8"보다 작은 직경을 갖는 하나 또는 그 이상의 플래터를 포함하는 미니 HDD일 수 있다. 파워트레인 제어 시스템(932)은 RAM, ROM, 플래시 메모리와 같은 지연시간이 낮은 비휘발성 메모리, 그리고/또는 다른 적절한 전자 데이터 저장소와 같은 메모리(947)에 연결될 수 있다. 파워트레인 제어 시스템(932)은 또한 WLAN 네트워크 인터페이스(948)를 통해 WLAN과의 접속을 지원할 수 있다. 제어 시스템(940)은 또한 대용량 데이터 저장소, 메모리 및/또는 WLAN 인터페이스(모두 도시된 것은 아님)를 포함할 수 있다.
이제 도 10E를 참조하면, 본 발명은 셀률러 안테나(951)를 포함할 수 있는 셀률러 폰(950)에서 구현될 수 있다. 본 발명은 일반적으로 도 10E에서 952로 식별되는 신호 프로세싱 및/또는 제어 회로 어느 하나 혹은 양쪽 모두, 셀률러 폰(950)의 WLAN 인터페이스 그리고/또는 대용량 데이터 저장소를 구현할 수 있다. 일부 실시예에서, 셀률러 폰(950)은 마이크로폰(956), 스피커 및/또는 오디오 출력 잭과 같은 오디오 출력(958), 디스플레이(960), 그리고/또는 키패드, 포인팅 디바이스(pointing device), 보이스 액추에이션(voice actuation), 및/또는 다른 입력 디바이스와 같은 입력 디바이스(962)를 포함한다. 셀률러 폰(950)에서의 신호 프로세싱 및/또는 제어 회로(952) 그리고/또는 다른 회로들(미도시)은 데이터를 처리할 수 있고, 코딩 및/또는 암호화를 수행할 수 있고, 연산을 수행할 수 있고, 데이터를 포맷할 수 있으며 그리고/또는 다른 셀률러 폰 기능을 수행할 수 있다.
셀률러 폰(950)은, 광학 및/또는 자기 저장 디바이스(예를 들어, 하드 디스크 드라이브(HDD) 및/또는 DVD)와 같은 비휘발성 방식으로 데이터를 저장하는 대용량 데이터 저장소(964)와 통신할 수 있다. 적어도 하나의 HDD가 도 10A에 도시된 구성을 가질 수 있고, 그리고/또는 적어도 하나의 DVD가 도 10B에 도시된 구성을 가질 수 있다. HDD는 대략 1.8"보다 작은 직경을 갖는 하나 또는 그 이상의 플래터를 포함하는 미니 HDD일 수 있다. 셀률러 폰(950)은 RAM, ROM, 플래시 메모리와 같은 지연시간이 낮은 비휘발성 메모리, 그리고/또는 다른 적절한 전자 데이터 저장소와 같은 메모리(966)에 연결될 수 있다. 셀률러 폰(950)은 또한 WLAN 네트워크 인터페이스(968)를 통해 WLAN과의 접속을 지원할 수 있다.
이제 도 10F를 참조하면, 본 발명은 셋탑 박스(set top box)(980)에서 구현될 수 있다. 본 발명은 일반적으로 도 10F에서 984로 식별되는 신호 프로세싱 및/또는 제어 회로 어느 하나 혹은 양쪽 모두, 셋탑 박스(980)의 WLAN 인터페이스 그리고/또는 대용량 데이터 저장소를 구현할 수 있다. 셋탑 박스(980)는 광대역 소스와 같은 소스로부터 신호를 수신하고, 그리고 텔레비젼 및/또는 모니터 및/또는 다른 비디오 및/또는 오디오 출력 디바이스와 같은 디스플레이(988)에 대해 적합한 표준 및/또는 고 선명도의 오디오/비디오 신호를 출력한다. 셋탑 박스(980)에서의 신호 프로세싱 및/또는 제어 회로(984) 그리고/또는 다른 회로들(미도시)은 데이터를 처리할 수 있고, 코딩 및/또는 암호화를 수행할 수 있고, 연산을 수행할 수 있고, 데이터를 포맷할 수 있고 그리고/또는 임의의 다른 셋탑 박스 기능을 수행할 수 있다.
셋탑 박스(980)는 비휘발성 방식으로 데이터를 저장하는 대용량 데이터 저장소(990)와 통신할 수 있다. 대용량 데이터 저장소(990)는 광학 및/또는 자기 저장 디바이스(예를 들어, 하드 디스크 드라이브(HDD) 및/또는 DVD)를 포함할 수 있다. 적어도 하나의 HDD가 도 10A에 도시된 구성을 가질 수 있고, 그리고/또는 적어도 하나의 DVD가 도 10B에 도시된 구성을 가질 수 있다. HDD는 대략 1.8"보다 작은 직경을 갖는 하나 또는 그 이상의 플래터를 포함하는 미니 HDD일 수 있다. 셋탑 박스(980)는 RAM, ROM, 플래시 메모리와 같은 지연시간이 낮은 비휘발성 메모리, 그리고/또는 다른 적절한 전자 데이터 저장소와 같은 메모리(994)에 연결될 수 있다. 셋탑 박스(980)는 또한 WLAN 네트워크 인터페이스(996)를 통해 WLAN과의 접속을 지 원할 수 있다.
이제 도 10G를 참조하면, 본 발명은 미디어 플레이어(1000)에서 구현될 수 있다. 본 발명은 일반적으로 도 10G에서 1004로 식별되는 신호 프로세싱 및/또는 제어 회로 어느 하나 혹은 양쪽 모두, 미디어 플레이어(1000)의 WLAN 인터페이스 그리고/또는 대용량 데이터 저장소를 구현할 수 있다. 일부 실시예에서, 미디어 플레이어(1000)는 디스플레이(1007) 및/또는 키패드, 터치패드 등과 같은 사용자 입력(1008)을 포함한다. 일부 실시예들에서, 미디어 플레이어(1000)는 그래픽 사용자 인터페이스(Graphical User Interface, GUI)를 사용할 수 있는바, GUI는 디스플레이(1007) 및/또는 사용자 입력(1008)을 통해 전형적으로 메뉴, 드랍 다운 메뉴, 아이콘 및/또는 포인트 앤 클릭 인터페이스(point-and-click interface)를 사용한다. 미디어 플레이어(1000)는 또한 스피커 및/또는 오디오 출력 잭과 같은 오디오 출력(1009)을 포함한다. 미디어 플레이어(1000)의 신호 프로세싱 및/또는 제어 회로(1004) 그리고/또는 다른 회로(미도시)는 데이터를 처리할 수 있고, 코딩 및/또는 암호화를 수행할 수 있으며, 연산을 수행할 수 있고, 데이터를 포맷할 수 있으며, 그리고/또는 임의의 다른 미디어 플레이어 기능을 수행할 수 있다.
미디어 플레이어(1000)는 압축된 오디오 및/또는 비디오 콘텐츠와 같은 데이터를 비휘발성 방식으로 저장하는 대용량 데이터 저장소(1010)와 통신할 수 있다. 일부 실시예들에서, 압축된 오디오 파일은 MP3 포맷 혹은 다른 적당한 압축 오디오 및/또는 비디오 포맷을 따르는 파일들을 포함한다. 대용량 데이터 저장소는 광학 및/또는 자기 저장 디바이스(예를 들어, 하드 디스크 드라이브(HDD) 및/또는 DVD) 를 포함할 수 있다. 적어도 하나의 HDD가 도 10A에 도시된 구성을 가질 수 있고, 그리고/또는 적어도 하나의 DVD가 도 10B에 도시된 구성을 가질 수 있다. HDD는 대략 1.8"보다 작은 직경을 갖는 하나 또는 그 이상의 플래터를 포함하는 미니 HDD일 수 있다. 미디어 플레이어(1000)는 RAM, ROM, 플래시 메모리와 같은 지연시간이 낮은 비휘발성 메모리, 그리고/또는 다른 적절한 전자 데이터 저장소와 같은 메모리(1014)에 연결될 수 있다. 미디어 플레이어(1000)는 또한 WLAN 네트워크 인터페이스(1016)를 통해 WLAN과의 접속을 지원할 수 있다. 또 다른 실시예들이 앞서 설명된 것들에 부가되어 고려될 수 있다.
결론
따라서, 본 발명은 핀 개수를 증가시킴 없이 복수의 디바이스 시스템에서의 플래시 메모리 디바이스들을 제어하기 위한 인터페이스, 장치 및 방법을 제공한다. 특히, 본 발명의 실시예들은 플래시 메모리 디바이스들을 프로그래밍 및 판독하는 방법뿐만 아니라 메모리 제어기를 제공한다.
본 발명의 특정 실시예들에 관한 앞서의 설명은 예시의 목적 및 설명의 목적으로 제공되었다. 이것을 통해 본 발명을 상기 개시된 형태에 정확하게 한정시키려하는 것이 아니며, 이러한 실시예들이 본 발명 모두를 나타내는 것은 아니며, 앞서의 설명을 통해 명백한 바와 같이 많은 수정 및 변형이 가능하다. 본 발명의 원리 및 그 실제 애플리케이션을 가장 잘 설명하기 위해, 그럼으로써 본 발명의 기술분야에서 숙련된 기술을 가진 자들이 해당하는 특정 용도에 적합하도록 다양한 변형을 통해 본 발명 및 그 다양한 실시예를 최상으로 이용할 수 있도록 하기 위해 여 러 실시예들이 선택되어 설명되었다. 본 발명의 범위는 본 명세서에 첨부된 특허청구범위 및 그 균등물에 의해 정의되어야만 한다.

Claims (44)

  1. 삭제
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 복수의 NAND 플래시 메모리 디바이스(NAND flash memory device)들과, 그리고 메모리 제어기를 포함하는 시스템으로서,
    상기 NAND 플래시 메모리 디바이스들 각각은 NAND 플래시 인터페이스(NAND flash interface)를 구비하고, 상기 NAND 플래시 메모리 디바이스들 각각의 상기 NAND 플래시 인터페이스는 8 비트 데이터 버스(8-bit data bus), 컴맨드 래치 인에이블 신호(Command Latch Enable signal), 어드레스 래치 인에이블 신호(Address Latch Enable signal), 판독 인에이블 신호(Read Enable Signal), 기입 인에이블 신호(Write Enable Signal), 기입 보호 신호(Write Protect signal), 및 준비/비지 신호(Ready/busy signal)를 포함하며,
    상기 메모리 제어기는,
    상기 복수의 NAND 플래시 메모리 디바이스들과 데이터를 교환하기 위해 상기 8 비트 데이터 버스를 이용하고;
    상기 8 비트 데이터 버스를 통해 상기 복수의 NAND 플래시 메모리 디바이스들에 컴맨드들을 전송할 때, 상기 컴맨드 래치 인에이블 신호를 동기화 신호(synchronization signal)로서 이용하고;
    상기 8 비트 데이터 버스를 통해 상기 복수의 NAND 플래시 메모리 디바이스들과 통신할 때, 상기 어드레스 래치 인에이블 신호를 클럭 신호(clock signal)로서 이용하고;
    상기 8 비트 데이터 버스를 통해 상기 복수의 NAND 플래시 메모리 디바이스들로부터 데이터를 판독할 때, 상기 판독 인에이블 신호를 판독 클럭 신호(read clock signal)로서 이용하고;
    상기 8 비트 데이터 버스를 통해 상기 복수의 NAND 플래시 메모리 디바이스들을 구성할 때, 상기 기입 인에이블 신호를 구성 신호(configuration signal)로서 이용하고; 그리고
    상기 8 비트 데이터 버스를 통해 상기 복수의 NAND 플래시 메모리 디바이스들에 관한 프로그램 동작 및 소거 동작을 수행할 때, 상기 준비/비지 신호를 인터럽트(interrupt)로서 이용하며,
    상기 메모리 제어기는 또한,
    상기 복수의 NAND 플래시 메모리 디바이스들 중 제 1 NAND 플래시 메모리 디바이스를 식별하는 식별 바이트(identification byte)를 상기 8 비트 데이터 버스를 통해 전송함으로써, 상기 NAND 플래시 인터페이스의 칩 인에이블 신호(Chip Enable signal)를 사용함이 없이 상기 제 1 NAND 플래시 메모리 디바이스를 선택하고;
    상기 8 비트 데이터 버스를 통해 컴맨드 바이트(command byte)를 상기 제 1 NAND 플래시 메모리 디바이스에 전송하고, 상기 제 1 NAND 플래시 메모리 디바이스는 (i) 상기 컴맨드 바이트에 의해 표시되는 동작을 수행하고, 그리고 (ii) 상기 메모리 제어기에 컴맨드의 완료를 표시하기 위해 상기 준비/비지 신호를 사용하며;
    상기 컴맨드 래치 인에이블 신호를 제 1 상태로 전이시킴으로써, 상기 8 비트 데이터 버스를 통해, 상기 제 1 NAND 플래시 메모리 디바이스에 상기 식별 바이트 및 상기 컴맨드 바이트를 전송하고, 여기서 상기 컴맨드 바이트는 상기 제 1 NAND 플래시 메모리 디바이스를 프로그래밍하도록 하는 컴맨드를 포함하며;
    상기 8 비트 데이터 버스를 통해, 상기 제 1 NAND 플래시 메모리 디바이스에 상기 식별 바이트 및 상기 컴맨드 바이트 이후의 복수의 파라미터 바이트들 및 복수의 데이터 바이트들을 전송하고;
    상기 제 1 NAND 플래시 메모리 디바이스를 프로그래밍하도록 하는 컴맨드를 종료시키기 위해 상기 컴맨드 래치 인에이블 신호를 상기 제 1 상태의 반대 상태인 제 2 상태로 전이시키며; 그리고
    (i) 상기 컴맨드 래치 인에이블 신호가 상기 제 2 상태로 전이한 것, 그리고 (ii) 상기 컴맨드 래치 인에이블 신호의 상기 제 2 상태로의 전이 이후, 상기 준비/비지 신호가 상기 어드레스 래치 인에이블 신호의 소정 싸이클 내에 상기 프로그래밍하도록 하는 컴맨드의 완료를 표시하지 않는 것에 응답하여, 상기 복수의 데이터 바이트들을 상기 제 1 NAND 플래시 메모리 디바이스에 기입하는 대신 상기 복수의 데이터 바이트들을 버퍼에 기입하도록 되어 있는 것을 특징으로 하는 시스템.
  26. 삭제
  27. 제25항에 있어서,
    상기 메모리 제어기는 또한, 상기 8 비트 데이터 버스를 통해 상기 제 1 NAND 플래시 메모리 디바이스에,
    상기 식별 바이트 이후의 상기 컴맨드 바이트;
    상기 컴맨드 바이트 이후의 제1의 개수의 파라미터 바이트들; 및
    상기 제1의 개수의 파라미터 바이트들 이후의 제2의 개수의 데이터 바이트들을 전송하도록 되어 있고,
    상기 파라미터 바이트들은 상기 컴맨드 바이트와 관련된 파라미터들을 특정하며, 상기 제1의 개수는 상기 컴맨드 바이트에 포함된 컴맨드의 타입에 따라 다르고, 상기 제2의 개수는 상기 컴맨드 바이트에 포함된 컴맨드의 타입에 따라 다른 것을 특징으로 하는 시스템.
  28. 제25항에 있어서,
    상기 메모리 제어기는 또한,
    상기 컴맨드 래치 인에이블 신호를 제 1 상태로 전이(transition)시킴으로써, 상기 8 비트 데이터 버스를 통해, 상기 제 1 NAND 플래시 메모리 디바이스에 상기 식별 바이트 및 상기 컴맨드 바이트를 전송하고, 여기서 상기 컴맨드 바이트는 상기 제 1 NAND 플래시 메모리 디바이스를 구성하도록 하는 컴맨드를 포함하며;
    상기 기입 인에이블 신호를 사용하여, 상기 8 비트 데이터 버스를 통해, 상기 제 1 NAND 플래시 메모리 디바이스에 상기 식별 바이트 및 상기 컴맨드 바이트 이후의 복수의 인증 바이트(authentication byte)들을 전송하고; 그리고
    상기 복수의 인증 바이트들 중 마지막 인증 바이트의 전송 이전 한 싸이클 전에 상기 컴맨드 래치 인에이블 신호를 상기 제 1 상태의 반대 상태인 제 2 상태로 전이시키도록 되어 있고,
    상기 한 싸이클은 상기 어드레스 래치 인에이블 신호의 것인 것을 특징으로 하는 시스템.
  29. 제28항에 있어서,
    상기 메모리 제어기는 또한, 최대 16 싸이클의 상기 어드레스 래치 인에이블 신호 동안 상기 복수의 인증 바이트들을 전송하도록 되어 있는 것을 특징으로 하는 시스템.
  30. 제25항에 있어서,
    상기 메모리 제어기는 또한,
    상기 컴맨드 래치 인에이블 신호를 사용하여, 상기 8 비트 데이터 버스를 통해, 상기 제 1 NAND 플래시 메모리 디바이스에 상기 식별 바이트 및 상기 컴맨드 바이트를 전송하고, 여기서 상기 컴맨드 바이트는 상기 제 1 NAND 플래시 메모리 디바이스의 구성을 판독하도록 하는 컴맨드를 포함하며; 그리고
    상기 판독 인에이블 신호를 사용하여, 상기 8 비트 데이터 버스를 통해, 상기 제 1 NAND 플래시 메모리 디바이스로부터 복수의 인증 바이트들을 수신하도록 되어 있는 것을 특징으로 하는 시스템.
  31. 삭제
  32. 삭제
  33. 삭제
  34. 제25항에 있어서,
    상기 메모리 제어기는 또한,
    상기 컴맨드 래치 인에이블 신호를 사용하여, 상기 8 비트 데이터 버스를 통해, 상기 제 1 NAND 플래시 메모리 디바이스에 상기 식별 바이트 및 상기 컴맨드 바이트를 전송하고, 여기서 상기 컴맨드 바이트는 상기 제 1 NAND 플래시 메모리 디바이스로부터 데이터를 판독하도록 하는 컴맨드를 포함하며; 그리고
    상기 판독 인에이블 신호를 사용하여, 상기 8 비트 데이터 버스를 통해, 상기 제 1 NAND 플래시 메모리 디바이스로부터 복수의 데이터 바이트들을 수신하도록 되어 있는 것을 특징으로 하는 시스템.
  35. 복수의 NAND 플래시 메모리 디바이스들 각각이 구비하고 있는 NAND 플래시 인터페이스의 8 비트 데이터 버스를 통해 상기 복수의 NAND 플래시 메모리 디바이스들과 데이터를 교환하는 단계와, 상기 NAND 플래시 메모리 디바이스들 각각의 상기 NAND 플래시 인터페이스는 또한, 컴맨드 래치 인에이블 신호, 어드레스 래치 인에이블 신호, 판독 인에이블 신호, 기입 인에이블 신호, 기입 보호 신호, 및 준비/비지 신호를 포함하고;
    상기 컴맨드 래치 인에이블 신호를 동기화 신호로서 이용하여, 상기 8 비트 데이터 버스를 통해, 상기 NAND 플래시 메모리 디바이스들에 컴맨드들을 전송하는 단계와;
    상기 어드레스 래치 인에이블 신호를 클럭 신호로서 이용하여, 상기 8 비트 데이터 버스를 통해, 상기 NAND 플래시 메모리 디바이스들과 통신하는 단계와;
    상기 판독 인에이블 신호를 판독 클럭 신호로서 이용하여, 상기 8 비트 데이터 버스를 통해, 상기 NAND 플래시 메모리 디바이스들로부터 데이터를 판독하는 단계와;
    상기 기입 인에이블 신호를 구성 신호로서 이용하여, 상기 8 비트 데이터 버스를 통해, 상기 NAND 플래시 메모리 디바이스들을 구성하는 단계와;
    상기 준비/비지 신호를 인터럽트로서 이용하여, 상기 8 비트 데이터 버스를 통해, 상기 NAND 플래시 메모리 디바이스들에 관한 프로그램 동작 및 소거 동작을 수행하는 단계와;
    상기 복수의 NAND 플래시 메모리 디바이스들 중 제 1 NAND 플래시 메모리 디바이스를 식별하는 식별 바이트를 상기 8 비트 데이터 버스를 통해 전송함으로써, 상기 NAND 플래시 인터페이스의 칩 인에이블 신호를 사용함이 없이 상기 제 1 NAND 플래시 메모리 디바이스를 선택하는 단계와;
    상기 8 비트 데이터 버스를 통해 컴맨드 바이트를 상기 제 1 NAND 플래시 메모리 디바이스에 전송하는 단계와;
    상기 제 1 NAND 플래시 메모리 디바이스에서 상기 컴맨드 바이트에 의해 표시되는 동작을 수행하는 단계와;
    메모리 제어기에 컴맨드의 완료를 표시하기 위해 상기 준비/비지 신호를 사용하는 단계와, 상기 메모리 제어기는 상기 NAND 플래시 인터페이스를 통해 상기 복수의 NAND 플래시 메모리 디바이스들을 제어하며;
    상기 컴맨드 래치 인에이블 신호를 제 1 상태로 전이시킴으로써, 상기 8 비트 데이터 버스를 통해, 상기 제 1 NAND 플래시 메모리 디바이스에 상기 식별 바이트 및 상기 컴맨드 바이트를 전송하는 단계와, 여기서 상기 컴맨드 바이트는 상기 제 1 NAND 플래시 메모리 디바이스를 프로그래밍하도록 하는 컴맨드를 포함하며;
    상기 8 비트 데이터 버스를 통해, 상기 제 1 NAND 플래시 메모리 디바이스에 상기 식별 바이트 및 상기 컴맨드 바이트 이후의 복수의 파라미터 바이트들 및 복수의 데이터 바이트들을 전송하는 단계와;
    상기 제 1 NAND 플래시 메모리 디바이스를 프로그래밍하도록 하는 컴맨드를 종료시키기 위해 상기 컴맨드 래치 인에이블 신호를 상기 제 1 상태의 반대 상태인 제 2 상태로 전이시키는 단계와; 그리고
    (i) 상기 컴맨드 래치 인에이블 신호가 상기 제 2 상태로 전이한 것, 그리고 (ii) 상기 컴맨드 래치 인에이블 신호의 상기 제 2 상태로의 전이 이후, 상기 준비/비지 신호가 상기 어드레스 래치 인에이블 신호의 소정 싸이클 내에 상기 프로그래밍하도록 하는 컴맨드의 완료를 표시하지 않는 것에 응답하여, 상기 복수의 데이터 바이트들을 상기 NAND 플래시 메모리 디바이스들 중 하나에 기입하는 대신 상기 복수의 데이터 바이트들을 버퍼링하는 단계
    를 포함하는 것을 특징으로 하는 방법.
  36. 삭제
  37. 제35항에 있어서,
    상기 8 비트 데이터 버스를 통해 상기 제 1 NAND 플래시 메모리 디바이스에,
    상기 식별 바이트 이후의 상기 컴맨드 바이트;
    상기 컴맨드 바이트 이후의 제1의 개수의 파라미터 바이트들; 및
    상기 제1의 개수의 파라미터 바이트들 이후의 제2의 개수의 데이터 바이트들을 전송하는 단계를 더 포함하고,
    상기 파라미터 바이트들은 상기 컴맨드 바이트와 관련된 파라미터들을 특정하며, 상기 제1의 개수는 상기 컴맨드 바이트에 포함된 컴맨드의 타입에 따라 다르고, 상기 제2의 개수는 상기 컴맨드 바이트에 포함된 컴맨드의 타입에 따라 다른 것을 특징으로 하는 방법.
  38. 제35항에 있어서,
    상기 컴맨드 래치 인에이블 신호를 제 1 상태로 전이시킴으로써, 상기 8 비트 데이터 버스를 통해, 상기 제 1 NAND 플래시 메모리 디바이스에 상기 식별 바이트 및 상기 컴맨드 바이트를 전송하는 단계와, 여기서 상기 컴맨드 바이트는 상기 NAND 플래시 메모리 디바이스들 중 하나를 구성하도록 하는 컴맨드를 포함하며;
    상기 기입 인에이블 신호를 사용하여, 상기 8 비트 데이터 버스를 통해, 상기 제 1 NAND 플래시 메모리 디바이스에 상기 식별 바이트 및 상기 컴맨드 바이트 이후의 복수의 인증 바이트들을 전송하는 단계와; 그리고
    상기 복수의 인증 바이트들 중 마지막 인증 바이트의 전송 이전 한 싸이클 전에 상기 컴맨드 래치 인에이블 신호를 상기 제 1 상태의 반대 상태인 제 2 상태로 전이시키는 단계를 더 포함하고,
    상기 한 싸이클은 상기 어드레스 래치 인에이블 신호의 것인 것을 특징으로 하는 방법.
  39. 제38항에 있어서,
    최대 16 싸이클의 상기 어드레스 래치 인에이블 신호 동안 상기 복수의 인증 바이트들을 전송하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  40. 제35항에 있어서,
    상기 컴맨드 래치 인에이블 신호를 사용하여, 상기 8 비트 데이터 버스를 통해, 상기 제 1 NAND 플래시 메모리 디바이스에 상기 식별 바이트 및 상기 컴맨드 바이트를 전송하는 단계와, 여기서 상기 컴맨드 바이트는 상기 제 1 NAND 플래시 메모리 디바이스의 구성을 판독하도록 하는 컴맨드를 포함하며; 그리고
    상기 판독 인에이블 신호를 사용하여, 상기 8 비트 데이터 버스를 통해, 상기 제 1 NAND 플래시 메모리 디바이스로부터 복수의 인증 바이트들을 수신하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  41. 삭제
  42. 삭제
  43. 삭제
  44. 제35항에 있어서,
    상기 컴맨드 래치 인에이블 신호를 사용하여, 상기 8 비트 데이터 버스를 통해, 상기 제 1 NAND 플래시 메모리 디바이스에 상기 식별 바이트 및 상기 컴맨드 바이트를 전송하는 단계와, 여기서 상기 컴맨드 바이트는 상기 제 1 NAND 플래시 메모리 디바이스로부터 데이터를 판독하도록 하는 컴맨드를 포함하며; 그리고
    상기 판독 인에이블 신호를 사용하여, 상기 8 비트 데이터 버스를 통해, 상기 제 1 NAND 플래시 메모리 디바이스로부터 복수의 데이터 바이트들을 수신하는 단계를 더 포함하는 것을 특징으로 하는 방법.
KR1020097006661A 2006-10-04 2007-10-02 플래시 메모리 제어 인터페이스 KR101373793B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US82814406P 2006-10-04 2006-10-04
US60/828,144 2006-10-04
US11/866,167 US8364881B2 (en) 2006-10-04 2007-10-02 Flash memory controller and methods of programming and reading flash memory devices using the controller
PCT/IB2007/004473 WO2008117111A2 (en) 2006-10-04 2007-10-02 Flash memory control interface
US11/866,167 2007-10-02

Publications (2)

Publication Number Publication Date
KR20090057412A KR20090057412A (ko) 2009-06-05
KR101373793B1 true KR101373793B1 (ko) 2014-03-13

Family

ID=39275846

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097006661A KR101373793B1 (ko) 2006-10-04 2007-10-02 플래시 메모리 제어 인터페이스

Country Status (5)

Country Link
US (1) US8364881B2 (ko)
JP (2) JP2010506285A (ko)
KR (1) KR101373793B1 (ko)
TW (2) TW200832412A (ko)
WO (1) WO2008117111A2 (ko)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI401694B (zh) * 2009-01-14 2013-07-11 Nanya Technology Corp 動態隨機存取記憶體行命令位址的控制電路及方法
JP5299263B2 (ja) * 2009-12-28 2013-09-25 ブラザー工業株式会社 印刷システム、プリンター、及び専用usbメモリ
JP5464066B2 (ja) * 2010-06-10 2014-04-09 ソニー株式会社 通信装置、及び、通信方法
JP2012084071A (ja) 2010-10-14 2012-04-26 Toshiba Corp デジタルコンテンツの保護方法、復号方法、再生装置、記憶媒体、暗号装置
US8423722B1 (en) 2011-08-26 2013-04-16 Western Digital Technologies, Inc. System and method for high performance command processing in solid state drives
US8661527B2 (en) 2011-08-31 2014-02-25 Kabushiki Kaisha Toshiba Authenticator, authenticatee and authentication method
JP5275432B2 (ja) 2011-11-11 2013-08-28 株式会社東芝 ストレージメディア、ホスト装置、メモリ装置、及びシステム
JP5204290B1 (ja) 2011-12-02 2013-06-05 株式会社東芝 ホスト装置、システム、及び装置
JP5100884B1 (ja) 2011-12-02 2012-12-19 株式会社東芝 メモリ装置
JP5275482B2 (ja) 2012-01-16 2013-08-28 株式会社東芝 ストレージメディア、ホスト装置、メモリ装置、及びシステム
US9069719B2 (en) * 2012-02-11 2015-06-30 Samsung Electronics Co., Ltd. Method and system for providing a smart memory architecture
US9201811B2 (en) 2013-02-14 2015-12-01 Kabushiki Kaisha Toshiba Device and authentication method therefor
US8984294B2 (en) 2013-02-15 2015-03-17 Kabushiki Kaisha Toshiba System of authenticating an individual memory device via reading data including prohibited data and readable data
US20150039813A1 (en) * 2013-08-05 2015-02-05 Greenliant Llc NAND Interface Capacity Extender Device For Extending Solid State Drives Capacity, Performance, And Reliability
KR20150061393A (ko) 2013-11-27 2015-06-04 삼성전자주식회사 메모리 장치로부터 읽은 데이터를 고속으로 전송하는 메모리 컨트롤러 및 그것의 데이터 전송 방법.
US9239679B2 (en) 2013-12-19 2016-01-19 Avago Technologies General Ip (Singapore) Pte. Ltd. System for efficient caching of swap I/O and/or similar I/O pattern(s)
TWI507876B (zh) * 2014-07-21 2015-11-11 Phison Electronics Corp 記憶體儲存裝置及控制方法、記憶體控制電路單元及模組
US9904490B2 (en) * 2015-06-26 2018-02-27 Toshiba Memory Corporation Solid-state mass storage device and method for persisting volatile data to non-volatile media
US10621116B2 (en) * 2017-06-08 2020-04-14 Western Digital Technologies, Inc. Non-volatile storage device with adaptive data bus inversion
US10558594B2 (en) * 2018-05-24 2020-02-11 Essencecore Limited Memory device, the control method of the memory device and the method for controlling the memory device
CN109189203B (zh) * 2018-08-15 2021-07-30 英业达科技有限公司 服务器节电系统及其节电方法
KR102657478B1 (ko) 2018-11-09 2024-04-16 삼성전자주식회사 와이드 입출력을 갖는 스토리지 장치 및 그 동작 방법
US11139010B2 (en) * 2018-12-11 2021-10-05 SK Hynix Inc. Memory system and operating method of the memory system
US11404097B2 (en) 2018-12-11 2022-08-02 SK Hynix Inc. Memory system and operating method of the memory system
KR20200137548A (ko) 2019-05-30 2020-12-09 에스케이하이닉스 주식회사 메모리 장치 및 이의 테스트 동작 방법
KR20200124045A (ko) 2019-04-23 2020-11-02 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
KR20200126666A (ko) 2019-04-30 2020-11-09 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
KR20200126678A (ko) 2019-04-30 2020-11-09 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
KR102648397B1 (ko) * 2019-07-03 2024-03-18 한국전자통신연구원 플래쉬 메모리의 하드웨어 고유특성을 이용한 보안정보 생성장치 및 방법
TWI688965B (zh) * 2019-08-14 2020-03-21 群聯電子股份有限公司 資料寫入方法、記憶體控制電路單元及記憶體儲存裝置
CN114127697A (zh) * 2019-09-13 2022-03-01 铠侠股份有限公司 存储器系统
CN110955387B (zh) * 2019-10-25 2023-10-24 合肥沛睿微电子股份有限公司 自适应识别闪存类型方法及计算机可读取存储介质及装置
CN111506178B (zh) * 2020-06-16 2020-10-23 深圳市芯天下技术有限公司 芯片上电复位方法及芯片
US11494317B1 (en) 2020-12-29 2022-11-08 Waymo Llc Memory validation

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040148482A1 (en) * 2003-01-13 2004-07-29 Grundy Kevin P. Memory chain

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5430859A (en) * 1991-07-26 1995-07-04 Sundisk Corporation Solid state memory system including plural memory chips and a serialized bus
US5822550A (en) * 1994-12-22 1998-10-13 Texas Instruments Incorporated Split data path fast at-bus on chip circuits systems and methods
JP3782840B2 (ja) * 1995-07-14 2006-06-07 株式会社ルネサステクノロジ 外部記憶装置およびそのメモリアクセス制御方法
US6728851B1 (en) * 1995-07-31 2004-04-27 Lexar Media, Inc. Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices
JP3850067B2 (ja) * 1996-04-24 2006-11-29 株式会社ルネサステクノロジ メモリシステムおよびそれに用いられる半導体記憶装置
JP3455040B2 (ja) * 1996-12-16 2003-10-06 株式会社日立製作所 ソースクロック同期式メモリシステムおよびメモリユニット
US6021459A (en) 1997-04-23 2000-02-01 Micron Technology, Inc. Memory system having flexible bus structure and method
US6078985A (en) * 1997-04-23 2000-06-20 Micron Technology, Inc. Memory system having flexible addressing and method using tag and data bus communication
JP3832947B2 (ja) * 1997-11-14 2006-10-11 富士通株式会社 データ転送メモリ装置
JP2001084172A (ja) * 1999-09-10 2001-03-30 Nec Home Electronics Ltd 半導体記憶装置
US6658509B1 (en) * 2000-10-03 2003-12-02 Intel Corporation Multi-tier point-to-point ring memory interface
US6658523B2 (en) * 2001-03-13 2003-12-02 Micron Technology, Inc. System latency levelization for read data
JP3816788B2 (ja) * 2001-11-22 2006-08-30 株式会社東芝 不揮発性半導体記憶装置
GB2396445B (en) * 2002-12-19 2005-12-21 Advanced Risc Mach Ltd An interrupt controller and interrupt controlling method for prioritizing interrupt requests generated by a plurality of interrupt sources
US20040153601A1 (en) * 2003-02-04 2004-08-05 Blankenagel John A. General purpose lines for memory write protection
US7126873B2 (en) 2004-06-29 2006-10-24 Super Talent Electronics, Inc. Method and system for expanding flash storage device capacity
US7712131B1 (en) * 2005-02-09 2010-05-04 David Lethe Method and apparatus for storage and use of diagnostic software using removeable secure solid-state memory
JP2007272635A (ja) * 2006-03-31 2007-10-18 Toshiba Corp メモリシステム及びコントローラ

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040148482A1 (en) * 2003-01-13 2004-07-29 Grundy Kevin P. Memory chain

Also Published As

Publication number Publication date
WO2008117111A2 (en) 2008-10-02
TW201435882A (zh) 2014-09-16
US20080086589A1 (en) 2008-04-10
WO2008117111A3 (en) 2008-11-27
KR20090057412A (ko) 2009-06-05
JP2010506285A (ja) 2010-02-25
JP2013050996A (ja) 2013-03-14
JP5879651B2 (ja) 2016-03-08
TW200832412A (en) 2008-08-01
TWI525628B (zh) 2016-03-11
US8364881B2 (en) 2013-01-29

Similar Documents

Publication Publication Date Title
KR101373793B1 (ko) 플래시 메모리 제어 인터페이스
KR20090074751A (ko) 플래시 메모리 제어 인터페이스
TWI425512B (zh) 快閃記憶體控制電路及其儲存系統與資料傳輸方法
TWI500040B (zh) 快閃記憶體控制器
US8892842B2 (en) Memory systems and methods of operating the same
US8332569B2 (en) Nonvolatile memory system using data interleaving scheme
US9304900B2 (en) Data reading method, memory controller, and memory storage device
JP2008524748A (ja) メモリシステムにおけるデータ再配置
US9176865B2 (en) Data writing method, memory controller, and memory storage device
KR101371516B1 (ko) 플래시 메모리 장치의 동작 방법 및 그것을 포함하는 메모리 시스템
TWI525430B (zh) 快取記憶體裝置以及該裝置的資料處理方法
CN111158579B (zh) 固态硬盘及其数据存取的方法
JP2012181916A (ja) 複数の独立したシリアルリンクメモリ
KR20090019593A (ko) 이씨씨 제어 회로 및 그것을 포함하는 멀티채널 메모리시스템
CN106649144B (zh) 数据储存设备及其操作方法
TWI467574B (zh) 記憶體儲存裝置、記憶體控制器與其資料傳輸方法
TW201337945A (zh) 多晶片封裝nand快閃記憶體系統中的裝置選擇方法
US7966429B2 (en) Peripheral devices using phase-change memory
US20140173173A1 (en) Method, device, and system including configurable bit-per-cell capability
US20130304964A1 (en) Data processing method, and memory controller and memory storage device using the same
CN111078146B (zh) 存储器管理方法、存储器存储装置及存储器控制电路单元
CN106816168B (zh) 半导体存储器件
US20090238001A1 (en) Interface for NAND-Type Flash Memory
US9733832B2 (en) Buffer memory accessing method, memory controller and memory storage device
TWI514141B (zh) 記憶體位址管理方法、記憶體控制器與記憶體儲存裝置

Legal Events

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

Payment date: 20170228

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180227

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20200226

Year of fee payment: 7