KR20080078977A - Mmc 또는 sd 프로토콜을 사용하는 다수의 메모리장치들을 인터페이스하는 방법 및 시스템 - Google Patents

Mmc 또는 sd 프로토콜을 사용하는 다수의 메모리장치들을 인터페이스하는 방법 및 시스템 Download PDF

Info

Publication number
KR20080078977A
KR20080078977A KR1020070018905A KR20070018905A KR20080078977A KR 20080078977 A KR20080078977 A KR 20080078977A KR 1020070018905 A KR1020070018905 A KR 1020070018905A KR 20070018905 A KR20070018905 A KR 20070018905A KR 20080078977 A KR20080078977 A KR 20080078977A
Authority
KR
South Korea
Prior art keywords
data
host
command
memory device
mmc
Prior art date
Application number
KR1020070018905A
Other languages
English (en)
Other versions
KR100866625B1 (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 삼성전자주식회사
Priority to KR1020070018905A priority Critical patent/KR100866625B1/ko
Priority to US12/034,053 priority patent/US7831755B2/en
Publication of KR20080078977A publication Critical patent/KR20080078977A/ko
Application granted granted Critical
Publication of KR100866625B1 publication Critical patent/KR100866625B1/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
    • 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/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different 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

Landscapes

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

Abstract

MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법 및 시스템이 개시된다. 상기 인터페이스 방법은 호스트가 상기 다수의 메모리 장치들 중 제1 메모리 장치가 제1 동작을 수행하도록 하기 위하여 제1 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 순차적으로 출력하는 단계, 및 상기 호스트가 상기 제1 순서 열을 갖는 명령들 및 데이터에 뒤이어 상기 다수의 메모리 장치들 중 제2 메모리 장치가 제2 동작을 수행하도록 하기 위하여 제2 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 순차적으로 출력하는 단계를 구비한다.
멀티미디어 카드(Multimedia Card)

Description

MMC 또는 SD 프로토콜을 사용하는 다수의 메모리 장치들을 인터페이스하는 방법 및 시스템{Method and system for interfacing a plurality of memory devices using MMC or SD protocol}
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 일반적인 MMC 또는 SD 프로토콜을 사용하는 호스트와 메모리 장치들 간의 인터페이스 시스템의 개념도이다.
도 2는 본 발명의 실시 예들에 따른 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 메모리 장치들 사이의 인터페이스 시스템을 나타내는 구성도이다.
도 3은 본 발명의 실시 예들에 따른 MMC 또는 SD 프로토콜을 사용하는 시스템의 프리디파인드 쓰기 동작에 대한 제1 타이밍 도를 나타낸다.
도 4는 본 발명의 실시 예들에 따른 MMC 또는 SD 프로토콜을 사용하는 시스템의 오픈 엔디드 쓰기 동작에 대한 제2 타이밍 도를 나타낸다.
도 5는 본 발명의 실시 예들에 따른 MMC 또는 SD 프로토콜을 사용하는 시스템의 프리 디파인 쓰기 동작에 대한 제3 타이밍 도를 나타낸다.
도 6은 본 발명의 실시 예들에 따른 MMC 또는 SD 프로토콜을 사용하는 시스템의 오픈 엔디드 쓰기 동작에 대한 제4 타이밍 도를 나타낸다.
도 7은 도 5 및 도 6에 도시된 본 발명의 실시 예들에 따른 MMC 또는 SD 프로토콜을 사용하는 메모리 장치들에 대한 상태도를 나타낸다.
도 8은 본 발명의 다른 실시 예들에 따른 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 메모리 장치들 사이의 인터페이스 시스템을 나타내는 구성도이다.
도 9은 도 8에 도시된 본 발명의 실시 예들에 따른 MMC 또는 SD 프로토콜을 사용하는 시스템의 프리디파인드 쓰기 동작에 대한 제5 타이밍 도를 나타낸다.
도 10은 도 8에 도시된 본 발명의 실시 예들에 따른 MMC 또는 SD 프로토콜을 사용하는 시스템의 오픈 엔디드 쓰기 동작에 대한 제6 타이밍 도를 나타낸다.
본 발명은 다수의 메모리 장치들을 포함하는 시스템에 관한 것으로, 보다 상세하게는 인터리빙 기법(interleaving scheme)을 이용하여 MMC 또는 SD 프로토콜을 사용하는 호스트(Host)와 다수의 메모리 장치들을 구비하는 시스템의 상기 호스트와 상기 메모리 장치들 간의 인터페이스 방법에 관한 것이다.
최근 저장 매체에 대한 기술의 발전과 함께 휴대폰 또는 디지털 카메라와 같은 휴대용 장치들의 보조 기억 장치로 이용되는 다양한 종류의 메모리 장치(예컨대, 비휘발성 메모리 장치(Non-Volatile memory device)가 제작되고 있다. 예컨대, 상기 다양한 종류의 메모리 장치로는 컴팩트 플래쉬(Compact Flash), 멀티미디어 카드(Multimedia Card, MMC), 스마트 미디어 카드(Smart Media Card, SMC), 및 SD(Secure Digital) 카드 등이 있다.
상술한 메모리 장치들은 작고 가벼워 상기 휴대폰과 같은 휴대용 장치의 데이터 저장 장치로 적합하다.
일반적으로 상기 메모리 장치들은 시스템 버스를 통하여 호스트(예컨대, 컴퓨터)와 결합된다. 상기 메모리 장치들과 상기 호스트는 상호 간에 데이터 통신을 위하여 미리 결정된 통신 프로토콜(protocol, 예컨대 MMC protocol, 또는 SD protocol)을 사용한다.
도 1은 일반적인 MMC 또는 SD 프로토콜을 사용하는 호스트(10)와 메모리 장치들 간의 인터페이스 시스템의 개념도이다. 도 1을 참조하면, 상기 호스트(10)는 시스템 버스(30)를 통하여 다수의 메모리 장치들(20-1 내지 20-n)과 연결된다. 상기 다수의 메모리 장치들(20-1 내지 20-n) 각각은 상기 호스트(10)에 의해 제어될 수 있다.
상기 호스트(10)에 저장된 미리 결정된 통신 프로토콜에 따라 상기 다수의 메모리 장치들(20-1 내지 20-n) 각각과 상기 호스트(10) 사이의 인터페이스를 수행할 수 있다.
MMC 또는 SD 카드 스펙(specification)을 사용하는 시스템에서 상기 메모리 장치들(20-1 내지 20-n) 각각의 동작 모드는 카드 식별 모드(Card identification mode), 및 데이터 전송 모드(data transfer mode)를 포함할 수 있다.
상기 카드 식별 모드에서 상기 호스트(10)는 상기 메모리 장치들(20-1 내지 20-n) 각각에 카드 식별 번호(Card Identification Number, CID Number)를 요구할 수 있다. 상기 호스트(10)의 요구에 성공적으로 응답한 메모리 장치 카드(예컨대, 제1 메모리 장치, 20-1)는 상기 호스트(10)로부터 RCA(Relative Card Address)를 할당받는다.
상기 RCA가 상기 제1 메모리 장치(20-1)에 할당되면, 상기 제1 메모리 장치(예컨대, 20-1)는 상기 데이터 전송 모드로 진입할 수 있다.
상기 데이터 전송 모드에서 상기 제1 메모리 장치(20-1)는 대기 상태(stand-by state), 트랜스퍼 상태(transfer state), 데이터 송신 상태(sending data state), 데이터 수신 상태(receive data state), 및 프로그램밍 상태(programming state)를 포함하는 여러 상태들을 가질 수 있다.
일반적으로 MMC 또는 SD 프로토콜을 사용하는 시스템에서는 상기 다수의 메모리 장치들 중 트랜스퍼 상태로 진입한 메모리 장치(예컨대, 제1 메모리 장치(20-1)만이 상기 호스트(10)로부터 수신되는 동작 명령들(예컨대, 쓰기 명령들)에 응답하여 상기 호스트(10)가 요구하는 동작(예컨대, 쓰기 동작)을 수행할 수 있다.
예컨대, 상기 제1 메모리 장치(20-1)의 프로그램 비지 기간 동안 상기 제1 메모리 장치를 제외한 다른 메모리 장치들은 상기 대기 상태에 있게 된다.
즉 상기 호스트(10)는 상기 제1 메모리 장치(20-1)의 상기 쓰기 동작에 대한 비지 기간이 종료할 때까지 다른 메모리 장치들(예컨대, 20-2 내지 20-n) 중 어느 하나의 메모리 장치에 쓰기 동작을 수행하기 위한 명령들 또는 데이터를 전송할 수 없다.
또한 상기 호스트(10)가 폴링(Polling) 방식을 사용하여 상기 비지 기간의 종료를 체크하는 것은 상기 호스트(10)에 부하(LOAD)로 작용할 수 있다.
따라서 상기 호스트(100)가 상기 다수의 메모리 장치들(20-1 내지 20-n) 각각을 보다 빠르고 효율적으로 인터페이스하기 위한 방법 및 시스템이 요구된다.
따라서 본 발명이 이루고자 하는 기술적인 과제는 인터리빙 기법(interleaving scheme)을 이용하며, 보다 빠르고 효율적인 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 메모리 장치들 간의 인터페이스 방법 및 시스템을 제공하기 위함이다.
상기 기술적 과제를 달성하기 위한 본 발명에 따른 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법은 제1 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 순차적으로 출력하는 단계 및 제2 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 순차적으로 출력하는 단계를 구비한다.
상기 제1 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 순차적으로 출력하는 단계에서 호스트는 상기 다수의 메모리 장치들 중 제1 메모리 장치가 제1 동작을 수행하도록 하기 위하여 제1 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 순차적으로 출력한다.
상기 제2 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 순차적으로 출력하는 단계에서 상기 호스트는 상기 제1 순서 열을 갖는 명령들 및 데이터에 뒤이어 상기 다수의 메모리 장치들 중 제2 메모리 장치가 제2 동작을 수행하도록 하기 위하여 제2 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 순차적으로 출력한다. 상기 제1 동작 및 상기 제2 동작은 쓰기 동작일 수 있다.
상기 제 2 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 출력하는 단계에서 상기 호스트는 상기 제1 메모리 장치가 프로그래밍 동작을 수행하는 프로그램 비지 시간 동안 상기 제2 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 출력할 수 있다.
상기 기술적 과제를 달성하기 위한 본 발명에 따른 각각이 시스템 버스에 연결되고 각각이 전송 라인을 통하여 호스트와 연결되는 MMC 또는 SD 프로토콜을 사용하는 다수의 반도체 장치들과 상기 호스트 사이를 인터페이스하는 방법은 트랜스퍼 상태로 전환시키는 단계, 제1 순서 열을 갖는 명령들 및 데이터를 순차적으로 상기 제1 메모리 장치로 전송하는 단계, 및 제2 순서 열을 갖는 명령들 및 데이터를 순차적으로 상기 제2 메모리 장치로 전송하는 단계를 구비한다.
상기 트랜스퍼 상태로 전환시키는 단계에서 상기 호스트는 상기 MMC 또는 SD 스펙을 사용하는 다수의 반도체 장치들 각각의 상태를 대기 상태에서 트랜스퍼 상태로 전환시킨다.
상기 제1 순서 열을 갖는 명령들 및 데이터를 순차적으로 상기 제1 메모리 장치로 전송하는 단계에서 상기 호스트는 상기 다수의 메모리 장치들 중 제1 메모리 장치가 제1 동작을 수행하도록 하기 위하여 제1 순서 열을 갖는 명령들 및 데이터를 순차적으로 상기 제1 메모리 장치로 전송한다.
상기 제2 순서 열을 갖는 명령들 및 데이터를 순차적으로 상기 제2 메모리 장치로 전송하는 단계에서 상기 호스트는 상기 제1 순서 열을 갖는 명령들 및 데이터에 뒤이어 상기 다수의 메모리 장치들 중 제2 메모리 장치가 제2 동작을 수행하도록 하기 위하여 제2 순서 열을 갖는 명령들 및 데이터를 순차적으로 상기 제2 메모리 장치로 전송한다.
상기 제1 동작 및 상기 제2 동작은 쓰기 동작일 수 있으며, 상기 제 2 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 출력하는 단계에서 상기 호스트는 상기 제1 메모리 장치가 프로그래밍 동작을 수행하는 프로그램 비지 시간 동안 상기 제2 순서 열을 갖는 명령들 및 데이터를 상기 제2 메모리 장치로 전송할 수 있다.
상기 기술적 과제를 달성하기 위한 본 발명에 따른 MMC 또는 SD 프로토콜을 사용하는 시스템은 시스템 버스, 다수의 메모리 장치들, 및 호스트를 구비한다. 상기 다수의 메모리 장치들 각각은 상기 시스템 버스에 연결된다. 상기 호스트는 상기 시스템 버스를 통하여 상기 다수의 메모리 장치들 각각과 연결된다.
상기 호스트는 상기 다수의 메모리 장치들 중 제1 메모리 장치가 제1 동작을 수행하도록 하기 위하여 제1 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 순차적으로 출력할 수 있다. 상기 호스트는 상기 제1 순서 열을 갖는 명령들 및 데이터에 뒤이어 상기 다수의 메모리 장치들 중 제2 메모리 장치가 제2 동작을 수행하도록 하기 위하여 제2 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 순차적으로 출력할 수 있다.
상기 제1 동작 및 상기 제2 동작은 쓰기 동작일 수 있으며, 상기 호스트는 상기 제1 메모리 장치가 프로그래밍 동작을 수행하는 프로그램 비지 시간 동안 상기 제2 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 출력할 수 있다.
상기 기술적 과제를 달성하기 위한 본 발명에 따른 MMC 또는 SD 프로토콜을 사용하는 시스템은 시스템 버스, 다수의 전송 라인들, 다수의 메모리 장치들, 및 호스트를 구비한다.
상기 다수의 메모리 장치들 각각은 상기 시스템 버스 및 상기 다수의 인에이블 전송 라인들 중 대응하는 어느 하나의 전송 라인에 연결된다.
상기 호스트는 상기 시스템 버스 및 상기 대응하는 인에이블 전송 라인을 통하여 상기 다수의 메모리 장치들 각각과 연결된다. 상기 호스트는 상기 다수의 메모리 장치들 각각의 상태를 대기 상태에서 트랜스퍼 상태로 전환시키기 위한 제1 순서 열을 갖는 명령들을 상기 시스템 버스로 출력한다.
상기 호스트는 제1 동작을 위한 제2 순서 열을 갖는 명령들을 상기 다수의 메모리 장치들 중 제1 메모리 장치로 전송할 수 있다. 상기 호스트는 제2 동작을 위한 제3 순서 열을 갖는 명령들을 상기 제2 순서 열을 갖는 명령들에 뒤이어 상기 다수의 메모리 장치들 중 제2 메모리 장치로 전송할 수 있다.
상기 제1 동작 및 상기 제2 동작은 쓰기 동작이며, 상기 호스트는 상기 제1 메모리 장치가 프로그래밍 동작을 수행하는 프로그램 비지 시간 동안 상기 제3 순서 열을 갖는 명령들 및 데이터를 상기 제2 메모리 장치로 전송할 수 있다.
상기 기술적 과제를 달성하기 위한 본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시 예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다. 이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 2는 본 발명의 실시 예들에 따른 MMC 또는 SD 프로토콜을 사용하는 호스트(210)와 다수의 메모리 장치들(220-1 내지 220-n, n은 자연수) 사이의 인터페이스 시스템(200)을 나타내는 구성도이다.
도 2를 참조하면, 상기 인터페이스 시스템(200)은 호스트(210), 시스템 버스(30), 및 다수의 메모리 장치들(220-1 내지 220-n)을 포함한다.
상기 호스트(210)는 상기 시스템 버스(30)에 연결되며, 상기 다수의 메모리 장치들(220-1 내지 220-n) 각각은 상기 시스템 버스(30)에 연결된다.
상기 시스템 버스(30)를 통한 상기 호스트(210)와 상기 다수의 메모리 장치들(220-1 내지 220-n) 사이의 인터페이스는 미리 결정된 통신 프로토콜을 따른다.
상기 다수의 메모리 장치들(220-1 내지 220-n)은 MMC 또는 SD 프로토콜을 사용하는 메모리 장치일 수 있으며, MMC 또는 SD 프로토콜을 사용하는 메모리 장치들의 조합일 수 있다. 이 때 상기 시스템 버스(30)는 MMC 또는 SD 인터페이스 프로토콜에 의해 동작될 수 있다.
상기 호스트(210)는 메모리 장치 컨트롤러(Controller), 예컨대 MMC 또는 SD 컨트롤러가 될 수 있다. 상기 호스트(210)는 애플리케이션(212), 호스트 드라이버 (214), 및 호스트 컨트롤러(216)를 포함할 수 있다.
상기 애플리케이션(212)은 사용자 응용 프로그램(예컨대 MP3 플레이어, 또는 메모장 등)이 될 수 있다.
상기 호스트 드라이버(214)는 상기 응용 프로그램(예컨대, 메모장)이 요구하는 동작, 예컨대, 리드(read) 또는 라이트(write) 동작을 수행하기 위한 기능(function)에 따른 명령을 상기 호스트 컨트롤러(216)로 전송할 수 있다.
상기 호스트 컨트롤러(216)는 미리 결정된 통신 프로토콜(예컨대, MMC 또는 SD 프로토콜)에 기초하여, 상기 호스트 드라이버(214)로부터 전송된 명령을 상기 시스템 버스(30)를 통하여 상기 다수의 메모리 장치들(220-1 내지 220-n)로 전송할 수 있다.
상기 호스트(210)는 상기 다수의 메모리 장치들(220-1 내지 220-n) 중 제1 메모리 장치(예컨대, 220-1)가 제1 동작을 수행하도록 하기 위하여 제1 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스(30)로 순차적으로 출력한다.
상기 호스트(210)는 상기 제1 순서 열을 갖는 명령들 및 데이터에 뒤이어 상기 다수의 메모리 장치들 중 제2 메모리 장치가 제2 동작을 수행하도록 하기 위하여 제2 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스(30)로 순차적으로 출력한다.
이 때 상기 제1 동작 및 상기 제2 동작은 쓰기 동작일 수 있다. 상기 쓰기 동작을 위한 상기 제1 순서 열을 갖는 명령들 및 데이터와 상기 제2 순서 열을 갖는 명령들은 여러 가지 형태로 나타날 수 있다.
상기 호스트(210)는 상기 제1 메모리 장치(예컨대, 220-1)가 프로그래밍 동작을 수행하는 프로그램 비지 시간 동안 상기 제2 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스(30)로 출력한다.
이하 도 3 내지 도 6에 도시된 타이밍 도에서 상기 반도체 장치들(220-1 내지 220-n) 각각은 멀티미디어 카드(MMC)인 경우이며, 상기 다수의 멀티미디어 카드들(220-1 내지 220-n) 각각은 상기 쓰기 동작 전에 상기 호스트(210)로부터 초기화 프로세스를 거친 후 모두 대기 상태(stand-by state)임을 전제한다.
도 3은 본 발명의 실시 예들에 따른 MMC 또는 SD 프로토콜을 사용하는 시스템의 프리디파인드 쓰기 동작(pre-defined write operation)에 대한 제1 타이밍 도를 나타낸다.
도 2 및 도 3을 참조하면, 상기 제1 순서 열을 갖는 명령들 및 데이터는 제1 선택 명령(CMD#7), 제1 명령(CMD23), 제2 명령(CMD25), 및 상기 제1 명령(CMD23)에 기초한 제1 데이터(B1 내지 B4)일 수 있다.
상기 제2 순서 열을 갖는 명령들 및 데이터는 제2 선택 명령(CMD7#2), 상기 제1 명령(CMD23), 상기 제2 명령(CMD25) 및 상기 제1 명령(CMD23)에 기초한 제2 데이터(D1 내지 D4)일 수 있다.
MMC 스펙(MMC specification)을 따르는 메모리 카드에서 상기 명령들은 다음과 같이 정의될 수 있다.
CMD7은 선택하고자 하는 메모리 카드의 상대적인 어드레스(예컨대, #1)를 포함할 수 있다. 대기 모드 상태에 있는 다수의 메모리 카드들 중 상기 CMD7에 포함 된 상기 상대적인 어드레스(예컨대, #1)와 일치하는 메모리 카드만이 트랜스퍼 상태로 전환될 수 있다.
따라서 상기 제1 선택 명령(CMD7#1)은 상기 다수의 메모리 장치들(220-1 내지 220-n) 중 상기 제1 메모리 장치(220-1, 예컨대, 제1 멀티미디어 카드(MMC1))만을 선택하기 위한 명령일 수 있다. 또한 상기 제2 선택 명령(CMD7#2)은 상기 다수의 메모리 장치들(220-1 내지 220-n) 중 상기 제1 메모리 장치(220-1, 예컨대, MMC1)만을 선택하기 위한 명령일 수 있다.
상기 제1 명령(CMD23)은 전송할 데이터의 크기(size), 예컨대 전송할 데이터 블록들의 수를 결정하기 위한 명령일 수 있다. 상기 제2 명령(CMD25)은 상기 제1 명령(CMD23)에 따라 결정된 크기의 데이터에 대한 쓰기 동작을 지시하기 위한 명령일 수 있다.
구체적으로 설명하면, 상기 제1 선택 명령((CMD7#1)에 의해 상기 제1 멀티미디어 카드(MMC1, 예컨대, 220-1)가 선택되고, 즉 상기 MMC1만이 대기 상태에서 트랜스퍼 상태로 전환된다.
상기 제1 명령(CMD23)은 상기 다수의 멀티미디어 카드들(220-1 내지 220-n) 각각에 포함된 페이지 버퍼(page buffer)의 용량에 따라 전송할 데이터 블록들의 개수를 미리 정의할 수 있다. 이는 상기 쓰기 동작을 위하여 메모리 장치(예컨대, MMC) 내부에서 페이지 단위로 프로그래밍이 수행되기 때문이다.
예컨대, 상기 메모리 장치(예컨대, MMC)에 포함된 페이지 버퍼의 용량이 2Kbytes일 때, 상기 제1 명령(CMD23)은 4개의 512bytes의 데이터 블록들(data blocks, 예컨대 B1 내지 B4)을 전송하라는 명령일 수 있다.
또한 상기 제2 명령(CMD25)은 상기 미리 결정된 4개 블록들(blocks)의 데이터(B1 내지 B4)에 대한 상기 쓰기 동작을 지시하는 명령일 수 있다.
상기 제1 멀티미디어 카드(MMC1)는 상기 제1 명령(CMD23) 및 상기 제2 명령(CMD25)에 응답하여 트랜스퍼 상태에서 데이터 수신 상태로 전환된다.
상기 제1 멀티미디어 카드(MMC1)는 상기 호스트(210)로부터 전송된 데이터 블록(예컨대, B1= 512 bytes)을 페이지 버퍼(page buffer, 미도시)나 내부 램(RAM, 미도시)에 일시적으로 저장한다. 이 때 소요되는 시간을 버퍼 비지 시간(Buffer Busy Time)이라 한다. 다만, 상기 데이터 블록(B1)의 시작 어드레스가 상기 제1 메모리 장치(220-1)에 포함된 비휘발성 메모리 코어(예컨대 NAND Core)의 페이지(page) 시작 위치와 정렬된다고 가정한다.
상기 제1 멀티미디어 카드(220-1)는 수신된 데이터 블록들(예컨대, B1 내지 B4)이 상기 페이지 버퍼에 모두 채워지거나 상기 쓰기 동작을 위한 어드레스가 상기 비휘발성 메모리 코어의 페이지의 마지막 어드레스일 때 프로그램밍 동작을 수행한다. 상기 프로그램밍 동작에 소요되는 시간을 프로그램 비지 시간(Programming busy time)이라 한다. 보통 상기 프로그램 비지 시간이 상기 버퍼 비지 시간보다 길다.
예컨대, 상기 페이지 버퍼의 용량이 2Kbyte일 때, 4개의 512바이트의 데이터 블록들(예컨대, B1 내지 B4)이 상기 시스템 버스(30)를 통하여 상기 제1 메모리 카드(MMC1, 예컨대, 220-1)로 전송이 완료될 때, 상기 제1 멀티미디어 카드(MMC1, 예 컨대 220-1)는 상기 프로그램밍 동작을 수행을 시작할 수 있다. 이때 상기 제1 메모리 장치(220-1)는 프로그래밍 상태를 갖는다.
상기 제1 멀티 미디어 카드(MMC1, 예컨대 220-1)의 상기 프로그래밍 동작에 따른 프로그램 비지 시간 동안 상기 호스트(210)는 제2 멀티미디어 카드(MMC2, 예컨대, 220-2)에 대한 쓰기 동작을 위하여 상기 제2 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스(30)로 출력할 수 있다.
상기 제2 멀티미디어 카드(MMC2, 예컨대 220-2)는 상기 제2 선택 명령(CMD7#2)에 응답하여, 대기 상태에서 트랜스퍼 상태로 전환된다.
상기 제1 멀티미디어 카드(MMC1, 예컨대, 220-1)는 상기 제2 선택 명령(CMD7#2)에 응답하여, 상기 프로그래밍 상태에서 디스커넥스 상태로 전환되고, 상기 쓰기 동작을 완료하면 상기 대기 상태로 다시 전환된다.
따라서 본 발명에 따른 시스템(200)의 호스트(210)는 인터리빙 기법(interleaving scheme)을 사용하여 상기 제1 멀티미디어 카드(MMC1, 예컨대 220-1)의 프로그램 비지 시간을 상기 제2 멀티미디어 카드(MMC2, 예컨대 220-2)의 쓰기 동작을 위한 상기 제2 순서 열을 갖는 명령들 및 데이터 전송 시간과 오버랩(overlap)시킴으로써 시스템 전체의 성능을 향상시킬 수 있다.
결국 상기 호스트(210)는 상기 인터리빙 스킴을 사용하여 다수의 물리적인 멀티미디어 카드들(Physical memory devices)을 하나의 로지컬 장치(Logical Device) 로 인식할 수 있다.
도 3에 따르면, 상기 호스트(210)는 2Kbyte의 페이지 버퍼를 포함하는 제1 멀티미디어 카드(MMC1, 예컨대 220-1)에 대하여 총 12개 데이터 블록들에 대한 상기 프리디파인드 쓰기 동작을 지시하기 위해서는 CMD7#1, CMD23, 및 CMD25을 각각 3번씩 사용해야 한다.
도 4는 본 발명의 실시 예들에 따른 MMC 또는 SD 프로토콜을 사용하는 시스템의 오픈 엔디드(open ended) 쓰기 동작에 대한 제2 타이밍 도를 나타낸다. 도 4를 참조하면, 상기 오픈 엔디드 쓰기 동작에서 상기 호스트(210)는 상기 쓰기 동작을 위한 명령들로 CMD25와 CMD12를 사용할 수 있다.
도 2 및 도 4를 참조하면, 상기 제1 순서 열을 갖는 명령들 및 데이터는 제1 선택 명령(CMD7#1), 상기 쓰기 동작을 지시하기 위한 명령(CMD25), 상기 호스트(210)로부터 전송되는 제1데이터(예컨대, B1 내지 B4), 및 상기 제1 데이터(예컨대, B1 내지B4) 전송을 중단하기 위한 정지 명령(CMD12)일 수 있다.
상기 제2 순서 열을 갖는 명령들 및 데이터는 제2 선택 명령(CMD#2), 상기 쓰기 동작을 지시하기 위한 명령(CMD25), 상기 호스트로부터 전송되는 제2 데이터(예컨대 D1 내지 D4) 및 상기 제2 데이터 전송(예컨대, D1 내지 D4)을 중단하기 위한 정지 명령(CMD12)일 수 있다.
오픈 엔디드(open ended) 쓰기 동작에서 상기 CMD25는 상기 정지 명령(CMD12)이 나타날 때까지 상기 호스트(210)로부터 전송되는 데이터 블록들에 대한 쓰기 동작을 지시하는 명령일 수 있다. 상기 정지 명령(CMD12)은 호스트로부터 데이터 블록들의 전송을 중단시키는 명령일 수 있다.
도 4에 따르면 CMD25에 뒤이어 4개의 데이터 블록들이 전송된 후 CMD12가 상 기 호스트(210)로부터 상기 시스템 버스(30)로 출력되므로 도 3에서 설명한 바와 동일한 쓰기 동작을 수행할 수 있다.
또한 도 4에 따르면, 상기 호스트(210)는 2Kbyte의 페이지 버퍼를 포함하는 제1 멀티미디어 카드(MMC1, 예컨대 220-1)에 대하여 총 12개 데이터 블록들(예컨대, B1 내지 B12)에 대한 상기 오픈 엔디드 쓰기 동작을 지시하기 위해서는 CMD7#1, CMD25, 및 CMD12을 각각 3번씩 사용해야 한다.
도 5는 본 발명의 실시 예들에 따른 MMC 또는 SD 프로토콜을 사용하는 시스템에서 프리 디파인드 쓰기 동작에 대한 제3 타이밍 도를 나타낸다.
도 5를 참조하면, 상기 제1 순서 열을 갖는 명령들 및 데이터는 상기 제1 선택 명령(CMD7#1), 상기 프리 디파인드 쓰기 동작을 위하여 전송할 총 데이터의 크기(size)를 결정하기 위한 제1 명령(CMD23), 상기 제2 명령(CMD25), 및 상기 호스트(210)로부터 전송되는 제1 데이터(예컨대, B1 내지 B4)일 수 있다.
상기 제2 순서 열을 갖는 명령들 및 데이터는 상기 제2 선택 명령(CMD7#2), 상기 제1 명령(CMD23), 상기 제2 명령(CMD25) 및 상기 호스트(210)로부터 전송되는 제2 데이터(예컨대, D1 내지 D4)일 수 있다.
예컨대, 상기 제1 순서 열을 갖는 명령들 및 데이터에 포함된 상기 제1 명령(CMD23)은 2Kbytes의 용량을 갖는 페이지 버퍼를 포함하는 상기 제1 멀티미디어 카드(MMC1, 예컨대 220-1)에 총 12개의 데이터 블록들(예컨대, B1 내지 B12, 한 개의 데이터 블록은 512bytes)을 전송하기 위한 명령일 수 있다.
상기 제1 멀티미디어 카드(MMC1, 예컨대, 220-1)의 상태는 상기 제1 선택 명 령(CMD#1)에 응답하여, 대기 상태에서 트랜스퍼 상태로 전환되고 상기 제1 명령(CMD23) 및 상기 제2 명령(CMD25)에 응답하여 데이터 수신 상태로 전환된다.
상기 호스트(210)는 상기 제1 멀티미디어 카드(220-1)로 각각이 512bytes를 갖는 4개의 데이터 블록들(B1 내지 B4)을 전송한 후 뒤이어 상기 제2 선택 명령(CMD7#2)을 상기 시스템 버스(30)로 출력할 수 있다.
상기 시스템 버스(30)로 출력된 상기 제2 선택 명령(CMD7#2)에 응답하여, 상기 제1 멀티미디어 카드(MMC1, 예컨대, 220-1)는 상기 데이터 수신 상태에서 디스커넥트 상태로 전환되고, 상기 제2 멀티미디어 카드(MMC2, 예컨대, 220-2)는 대기 상태에서 트랜스퍼 상태로 전환된다.
상기 제2 순서 열을 갖는 명령들 및 데이터에 포함된 상기 제1 명령(CMD23) 및 상기 제2 명령(CMD25)에 응답하여 상기 제2 멀티미디어 카드(MMC2, 예컨대, 220-2)는 상기 트랜스퍼 상태에서 데이터 수신 상태로 전환된다.
상기 호스트(210)는 상기 제2 데이터(D1 내지 D4)에 뒤이어 상기 제1 선택 명령(CMD7#1)을 상기 시스템 버스(30)로 출력할 수 있다. 이때 상기 제2 데이터(D1 내지 D4)에 뒤이어 상기 시스템 버스(30)로 출력된 상기 제1 선택 명령(CMD7#1)에 응답하여 상기 제1 멀티미디어 카드(MMC1, 예컨대, 220-1)는 상기 디스커넥트 상태에서 상기 데이터 수신 상태로 전환되고, 상기 제2 멀티미디어 카드(MMC2, 예컨대, 220-2)는 상기 데이터 수신 상태에서 상기 디스커넥트 상태로 전환된다.
따라서 상기 제1 멀티미디어 카드(MMC1) 또는 상기 제2 멀티미디어 카드(MMC2)는 상기 프리 디파인드 쓰기 동작을 위해 전송하고자 하는 총 데이터 블록 들의 개수(예컨대, 총 12개의 데이터 블록들)를 상기 호스트(210)로부터 모두 수신할 때까지 상기 데이터 수신 상태 또는 상기 디스커넥트 상태를 상보적으로 갖는다. 이 부분이 종래의 MMC 또는 SD 카드 스펙과 다르다.
예컨대, 상기 제1 멀티미디어 카드(MMC1, 예컨대, 220-1)는 상기 호스트(210)로부터 상기 총 12개의 데이터 블록들(예컨대, B1 내지 B12)을 모두 수신할 때까지 상기 제1 선택 명령(CMD7#1) 또는 상기 제2 선택 명령(CMD7#2)에 응답하여, 상기 데이터 수신 상태 또는 상기 디스커넥트 상태를 갖는다.
도 5에 따르면, 상기 호스트(210)는 2Kbyte의 페이지 버퍼를 포함하는 제1 멀티미디어 카드(MMC1, 예컨대, 220-1)에 대하여 총 12개 블록들(예컨대, B1 내지 B12)에 대한 프리디파인드(predefined) 방식의 쓰기 동작을 지시하기 위해서는 최초에 CMD7#1, CMD23, 및 CMD25을 각각 1번씩 사용하고, 그 이후에는 상기 CMD7#1만을 2번 사용할 수 있다.
따라서 도 5에 도시된 프리디파인드 방식에 따른 쓰기 동작은 도 3에 도시된 프리디파인드 방식에 따른 쓰기 동작에 비하여 상기 호스트(210)가 사용하는 명령들의 수가 줄어든다.
도 6은 본 발명의 실시 예들에 따른 MMC 또는 SD 프로토콜을 사용하는 시스템의 오픈 엔디드 쓰기 동작에 대한 제4 타이밍 도를 나타낸다. 도 6을 참조하면, 상기 제1 순서 열을 갖는 명령들 및 데이터는 상기 제1 선택 명령(CMD7#1), 상기 오픈 엔디드 쓰기 동작을 지시하기 위한 제1 명령(CMD25), 및 상기 호스트(210)로부터 전송되는 제1 데이터일 수 있다.
상기 제2 순서 열을 갖는 명령들 및 데이터는 상기 제2 선택 명령(CMD7#2), 상기 제1 명령(CMD25), 및 상기 호스트(210)로부터 전송되는 제2 데이터일 수 있다.
상기 호스트(210)는 상기 제2 데이터(D1 내지 D4)에 뒤이어 상기 제1 선택 명령(CMD7#1)을 상기 시스템 버스(30)로 출력할 수 있다. 상기 제1 멀티미디어 카드(MMC1, 220-1) 또는 상기 제2 멀티미디어 카드(MMC2, 220-2)의 상태 변화에 대해서는 도 5에서 설명한 바와 동일하며, 이 부분이 MMC 또는 스펙과 다르다.
또한 도 6에 도시된 오픈 엔디드 방식의 쓰기 동작을 위하여 상기 호스트(210)는 상기 제1 멀티미디어 카드(MMC1, 예컨대, 220-1) 및 상기 제2 멀티미디어 카드(MMC2, 예컨대, 220-2) 각각에 대하여 최초에만 제1 선택 명령(CMD7#1) 및 상기 제2 명령(CMD25)을 함께 사용한다.
상기 호스트(210)는 상기 제2 데이터(D1 내지 D4) 전송 후부터는 상기 제1 선택 명령(CMD7#1)과 상기 제2 선택 명령(CMD7#2)을 번갈아가며 사용함으로써 나머지 데이터 블록들(B5 내지 B12 또는 D5 내지 D12)을 상기 제1 메모리 장치(220-1) 또는 상기 제2 메모리 장치(220-2)로 전송할 수 있다.
상기 호스트(210)는 전송하고자 하는 총 12개의 블록들(B1 내지 B12 또는 D1 내지 D12) 중 마지막 데이터 블록(B9 내지 B12 또는 D9 내지 D12)에 뒤이어 정지 명령(CMD12)을 상기 시스템 버스(30)로 출력할 수 있다.
도 7은 도 5 및 도 6에 도시된 본 발명의 실시 예들에 따른 MMC 또는 SD 프로토콜을 사용하는 메모리 장치들에 대한 상태도(700)를 나타낸다. 도 7에 도시된 상태도(700)는 일반적인 MMC 또는 SD 카드 스펙에 따른 메모리 장치들에 대한 상태도와 다르다. 도 7에 도시된 CMD7은 상술한 CMD7#1 또는 CMD7#2일 수 있다.
도 7을 참조하면, 점선으로 된 제1 블록(710)과 점선으로 된 제2 블록(720)이 일반적인 MMC 또는 SD 카드 스펙에 따른 MMC 또는 SD 프로토콜을 사용하는 메모리 장치들에 대한 상태도에서 추가되고, 점선으로 표시된 화살표(730)가 일반적인 MMC 또는 SD 카드 스펙에 따른 MMC 또는 SD 프로토콜을 사용하는 메모리 장치들에 대한 상태도에서 제거된다.
즉 상술한 바와 같이 상기 제1 멀티미디어 카드(MMC1) 또는 상기 제2 멀티미디어 카드(MMC2)는 도 5 및 도 6에 도시된 상기 쓰기 동작을 위해 전송하고자 하는 총 데이터 블록들의 개수(예컨대, 총 12개의 데이터 블록들)를 상기 호스트(210)로부터 모두 수신할 때까지 상기 데이터 수신 상태(Receive data state) 또는 상기 디스커넥트 상태(Disconnect state)를 상보적으로 갖는다.
상기 호스트(210)는 도 5 또는 도 6에 따른 쓰기 동작을 위해 전송한 데이터 블록들의 순서 열과 일치하는 데이터 리드 동작을 수행하기 위하여 상기 제1 멀티미디어 카드(MMC1) 및 상기 제2 멀티미디어 카드(MMC2)를 번갈아가며 선택하여 리드 동작을 수행할 수 있다.
이때 일반적인 MMC 및 SD 카드 스펙과 달리 CMD7(예컨대, CMD7#1 또는 CMD7#2)에 응답하여 상기 제1 멀티미디어 카드(MMC1) 또는 상기 제2 멀티미디어 카드(MMC2)는 데이터 송신 상태(data sending state)에서 스탠바이 상태(stand-by state)로 전환되지 않는다. 즉 7에 도시된 점선으로 표시된 화살표(730)가 일반적 인 MMC 또는 SD 카드 스펙에 따른 MMC 또는 SD 프로토콜을 사용하는 메모리 장치들에 대한 상태도에서 제거된다.
또한 일반적인 MMC 및 SD 카드 스펙과 달리 CMD7(예컨대, CMD7#1 또는 CMD7#2)에 응답하여 상기 제1 멀티미디어 카드(MMC1) 또는 상기 제2 멀티미디어 카드(MMC2)는 데이터 송신 상태(data sending state) 또는 디스커넥트 상태(disconnect state)를 상보적으로 갖는다.
도 8은 본 발명의 다른 실시 예들에 따른 MMC 또는 SD 프로토콜을 사용하는 호스트(810)와 다수의 메모리 장치들 사이의 인터페이스 시스템(800)을 나타내는 구성도이다. 도 8에서는 설명의 편의를 위하여 상기 다수의 메모리 장치들 중 2개의 메모리 장치들(830 및 840)만을 도시하였다. 상기 다수의 메모리 장치들(예컨대, 830 및 840)은 MMC 또는 SD 프로토콜을 사용하는 메모리 장치일 수 있으며, MMC 및 SD 프로토콜을 사용하는 메모리 장치들의 조합일 수 있다.
도 8을 참조하면, 상기 시스템(800)은 호스트(810), 시스템 버스(820), 제1 전송 라인(822), 제2 전송 라인(824), 제1 메모리 장치(830), 및 제2 메모리 장치(840)를 구비한다.
상기 호스트(810)는 호스트 드라이버(812) 및 호스트 컨트롤러(814)를 포함한다. 상기 호스트 드라이버(812) 및 상기 호스트 컨트롤러(814)는 도 2에 도시된 호스트 드라이버(214) 및 호스트 컨트롤러(216)와 유사한 기능을 한다.
상기 시스템 버스(820)는 클럭 버스, 데이터 버스, 및 커맨드 버스를 포함한다.
상기 제1 메모리 장치(830)는 제1 컨트롤러(832) 및 제1 메모리 코어(834)를 포함하며, 상기 제2 메모리 장치(840)는 제2 컨트롤러(842) 및 제2 메모리 코어(844)를 포함한다.
상기 제1 메모리 장치(830) 및 상기 제2 메모리 장치(840) 각각은 상기 시스템 버스(820)를 통하여 상기 호스트(810)와 연결되며, 상기 시스템 버스(820)를 통하여 상기 호스트(810)로부터 클럭(CLK), 데이터(Data), 및 명령(CMD)을 수신할 수 있다.
상기 제1 컨트롤러(832)는 상기 호스트(710)로부터 상기 제1 전송 라인들(822)을 통하여 수신된 제1 인에이블 신호(CEO1)에 응답하여 인에이블되거나 디스에이블될 수 있다.
상기 제1 컨트롤러(832)는 상기 제1 인에이블 신호(CEO1)에 응답하여 상기 호스트(810)로부터 수신되는 클럭(CLK), 명령(CMD), 및 데이터(Data)를 상기 제1 메모리 코어(834)로 제공할 수 있다.
상기 제2 컨트롤러(834)도 상술한 상기 제1 컨트롤러(832)와 동일한 기능을 할 수 있다.
상기 제1 컨트롤러(832)는 상기 제1 인에이블 신호(CEO1)에 응답하여 상기 클럭(CLK), 상기 명령(CMD), 및 상기 데이터(Data)를 상기 제1 메모리 코어(834)로 제공하도록 제어하는 제1 입출력 제어 로직 회로(미도시)를 포함될 수 있다. 또한 상기 제1 제어 로직 회로(미도시)는 상기 제1 메모리 장치(830) 외부에 별도의 반도체 장치로 구현될 수 있다.
마찬가지로 제2 컨트롤러(842)는 상술한 바와 같은 기능을 하는 제2 입출력 제어 로직 회로를 포함할 수 있으며, 상기 제2 입출력 로직 제어 회로는 상기 제2 메모리 장치(840) 외부에 별도의 반도체 장치로 구현될 수 있다.
도 9은 도 8에 도시된 본 발명의 실시 예들에 따른 시스템(800)의 프리디파인드 쓰기 동작에 대한 제5 타이밍 도를 나타낸다.
상기 호스트(810)는 상기 제1 메모리 장치(830) 및 상기 제2 메모리 장치(840)의 상태를 모두 대기 상태에서 트랜스퍼 상태로 전환시키기 위한 제1 순서 열을 갖는 명령들(미도시)을 상기 시스템 버스(820)로 출력한다.
예컨대, 상기 제1 순서 열을 갖는 명령들은 제1 레벨(예컨대, 하이 레벨)을 갖는 제1 인에이블 신호(CEO1), 상기 제1 선택 명령(CMD7#1), 상기 제1 레벨(예컨대, 하이 레벨)을 갖는 제2 인에이블 신호(CEO2), 및 상기 제2 선택 명령(CMD7#2)일 수 있다. 이때 상기 제1 인에이블 신호(CEO1) 및 상기 제2 인에이블 신호(CEO2)는 상반되는 레벨 값을 갖고 동시에 출력될 수 있다.
따라서 도 9에 도시된 프리디파인드 쓰기 동작을 위해서는 상기 제1 메모리 장치(830) 및 상기 제2 메모리 장치(840)가 모두 트랜스퍼 상태임을 전제한다.
도 9에 따르면, 상기 제2 순서 열을 갖는 명령들 및 데이터는 제1 인에이블 명령(CEO1), 제1 명령(CMD23), 제2 명령(CMD25), 및 제1 데이터(에컨대, B1 내지 B4)일 수 있다.
상기 제1 인에이블 명령(CEO1)은 상기 제1 메모리 장치(730)만을 인에이블하기 위하여 상기 제1 전송 라인(822)을 통하여 상기 제1 메모리 장치(830)로 전송된 다.
상기 제1 명령(CMD23)은 상기 쓰기 동작을 위하여 전송할 총 데이터의 크기(size)를 결정하기 위한 명령일 수 있다. 상기 제2 명령(CMD25)은 상기 쓰기 동작을 지시하기 위한 명령일 수 있다.
상기 제3 순서 열을 갖는 명령들 및 데이터는 제2 인에이블 명령(CEO2), 상기 제1 명령(CMD23), 상기 제2 명령(CMD25), 및 제2 데이터(예컨대, D1 내지 D4)일 수 있다.
도 9을 참조하면, 도 8에 도시된 시스템(800)은 도 5에 도시된 상기 제1 선택 명령(CMD7#1) 또는 상기 제2 선택 명령(CMD7#2)에 대신하여 상기 제1 인에이블 신호(CEO1) 또는 상기 제2 인에이블 신호를 사용한다.
상기 호스트(810)는 상기 제2 데이터(D1 내지 D4) 전송 후부터는 상기 제1 인에이블 신호(CEO1)와 상기 제2 인에이블 신호(CEO2)를 번갈아가며 사용함으로써 나머지 데이터 블록들(B5 내지 B12 또는 D5 내지 D12)을 상기 제1 메모리 장치(830) 또는 상기 제2 메모리 장치(840)로 전송할 수 있다.
따라서 상기 쓰기 동작을 위해 CMD7의 사용 횟수가 감소하며, 상기 시스템(700)의 모든 메모리 장치(예컨대, 830 및 840)을 트랜스퍼 상태를 가지므로 명령 에러(illegal command error)에 대한 고려가 필요없다. 도 5에서 설명한 바와 같이 상기 쓰기 동작을 위해 사용하는 명령들의 개수도 도 3 및 도 4에 비하여 줄어든다.
도 10은 도 8에 도시된 본 발명의 실시 예들에 따른 시스템(800)의 오픈 엔 디드 쓰기 동작에 대한 제6 타이밍 도를 나타낸다. 도 10을 참조하면, 도 6에 도시된 상기 제1 선택 명령(CMD7#1) 또는 상기 제2 선택 명령(CMD7#2)에 대신하여 상기 제1 인에이블 신호(CEO1) 또는 상기 제2 인에이블 신호(CEO2)를 사용한다.
도 10에 도시된 오픈 엔디드 쓰기 동작을 위해서는 도 9에서 마찬가지로 상기 제1 메모리 장치(830) 및 상기 제2 메모리 장치(840)가 모두 트랜스퍼 상태임을 전제한다.
도 10을 참조하면, 상기 제2 순서 열을 갖는 명령들 및 데이터는 상기 제1 인에이블 명령(CEO1), 상기 오픈 엔디드 쓰기 동작을 지시하기 위한 제1 명령(CMD25), 및 제1 데이터(B1 내지 B4)일 수 있다.
상기 제3 순서 열을 갖는 명령들 및 데이터는 상기 제2 인에이블 명령(CEO2), 상기 쓰기 동작을 지시하기 위한 제1 명령(CMD25), 및 제2 데이터(D1 내지 D4)일 수 있다.
상기 호스트(810)는 상기 제2 데이터(D1 내지 D4) 전송 후부터는 상기 제1 인에이블 신호(CEO1)와 상기 제2 인에이블 신호(CEO2)를 번갈아가며 사용함으로써 나머지 데이터 블록들(B5 내지 B12 또는 D5 내지 D12)을 상기 제1 메모리 장치(830) 또는 상기 제2 메모리 장치(840)로 전송할 수 있다.
도 3 및 도 4에서는 본 발명 실시 예들에 따른 쓰기 동작에 대하여 설명하였지만, 본 발명은 이에 한정되는 것이 아니며 소거 동작(Erase operation)에 대하여도 도 3 및 도 4에서 상술한 바와 같이 인터리빙 기법을 사용하여 호스트와 다수의 메모리 장치들 사이의 인터페이스가 가능하다.
예컨대, 상술한 바와 같이 상기 다수의 메모리 장치들(220-1 내지 220-n) 중 제1 메모리 장치(예컨대, 220-1)가 소거 동작에 대한 비지 시간 동안 상기 호스트(210)는 상기 다수의 메모리 장치들(220-1 내지 220-n) 중 제2 메모리 장치(예컨대, 220-2)가 소거 동작을 수행하도록 하는 미리 결정된 순서 열을 갖는 명령들을 상기 시스템 버스(30)로 출력할 수 있다.
상기 소거 동작을 수행하도록 하는 미리 결정된 순서 열을 갖는 명령들(예컨대, CMD7, CMD35, CMD36 및 CMD38)은 MMC 또는 SD 카드 스펙에 정의된 바에 따른다.
본 발명은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다.
본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
상술한 바와 같이 본 발명에 따른 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법 및 시스템은 인터리빙 기법(interleaving scheme)을 이용하며 보다 빠른 인터페이스가 가능하며, 쓰기 동작 을 위해 사용되는 명령들의 수가 줄어들기 때문에 쓰기 성능이 효율적인 효과가 있다.

Claims (25)

  1. MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법에 있어서,
    호스트가 상기 다수의 메모리 장치들 중 제1 메모리 장치가 제1 동작을 수행하도록 하기 위하여 제1 순서 열을 갖는 명령들 및 데이터를 상기 다수의 반도체 장치들 각각과 연결된 시스템 버스로 순차적으로 출력하는 단계; 및
    상기 호스트가 상기 제1 순서 열을 갖는 명령들 및 데이터에 뒤이어 상기 다수의 메모리 장치들 중 제2 메모리 장치가 제2 동작을 수행하도록 하기 위하여 제2 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 순차적으로 출력하는 단계를 구비하는 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법.
  2. 제1항에 있어서,
    상기 제1 동작 및 상기 제2 동작은 쓰기 동작인 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법.
  3. 제2항에 있어서, 상기 제 2 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 출력하는 단계는,
    상기 제1 메모리 장치가 프로그래밍 동작을 수행하는 프로그램 비지 시간 동 안 상기 제2 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 출력하는 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법.
  4. 제3항에 있어서,
    상기 제1 순서 열을 갖는 명령들 및 데이터는,
    상기 제1 메모리 장치만을 선택하기 위한 제1 선택 명령, 전송할 데이터의 크기(size)를 결정하기 위한 제1 명령, 상기 제1 명령에 따라 결정된 크기의 데이터에 대한 쓰기 동작을 지시하기 위한 제2 명령, 및 상기 제1 명령에 기초한 제1 데이터를 포함하고,
    상기 제2 순서 열을 갖는 명령들 및 데이터는,
    상기 제2 메모리 장치만을 선택하기 위한 제2 선택 명령, 상기 제1 명령, 상기 제2 명령 및 상기 제1 명령에 기초한 제2 데이터를 포함하는 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법.
  5. 제3항에 있어서,
    상기 제1 순서 열을 갖는 명령들 및 데이터는,
    상기 제1 메모리 장치만을 선택하기 위한 제1 선택 명령, 상기 쓰기 동작을 지시하기 위한 제1 명령, 상기 호스트로부터 전송되는 제1 데이터, 및 상기 제1 데이터 전송을 중단하기 위한 정지 명령을 포함하고,
    상기 제2 순서 열을 갖는 명령들 및 데이터는,
    상기 제2 메모리 장치만을 선택하기 위한 제2 선택 명령, 상기 제1 명령, 상기 호스트로부터 전송되는 제2 데이터, 및 상기 제2 데이터 전송을 중단하기 위한 정지 명령을 포함하는 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법.
  6. 제3항에 있어서,
    상기 제1 순서 열을 갖는 명령들 및 데이터는,
    상기 제1 메모리 장치만을 선택하기 위한 제1 선택 명령, 전송할 총 데이터의 크기(size)를 결정하기 위한 제1 명령, 상기 쓰기 동작을 지시하기 위한 제2 명령, 및 상기 호스트로부터 전송되는 제1 데이터를 포함하고,
    상기 제2 순서 열을 갖는 명령들 및 데이터는,
    상기 제2 메모리 장치만을 선택하기 위한 제2 선택 명령, 상기 제1 명령, 상기 제2 명령 및 상기 호스트로부터 전송되는 제2 데이터를 포함하는 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법.
  7. 제3항에 있어서,
    상기 제1 순서 열을 갖는 명령들 및 데이터는,
    상기 제1 메모리 장치만을 선택하기 위한 제1 선택 명령, 상기 쓰기 동작을 지시하기 위한 제1 명령, 및 상기 호스트로부터 전송되는 제1 데이터를 포함하고,
    상기 제2 순서 열을 갖는 명령들 및 데이터는,
    상기 제2 메모리 장치만을 선택하기 위한 제2 선택 명령, 상기 쓰기 동작을 지시하기 위한 제1 명령, 및 상기 호스트로부터 전송되는 제2 데이터를 포함하는 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법.
  8. 제6항 또는 제7항에 있어서,
    상기 제1 선택 명령은 상기 제1 메모리 장치의 상태를 대기 상태에서 트랜스퍼 상태로 전환시키며,
    상기 제2 선택 명령은 상기 제1 메모리 장치의 상태를 디스커넥트 상태로 전환시키고, 상기 제2 메모리 장치의 상태를 대기 상태에서 트랜스퍼 상태로 전환시키는 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법.
  9. 제8항에 있어서, 상기 다수의 메모리 장치들을 인터페이스하는 방법은,
    상기 제2 데이터에 뒤이어 상기 제1 선택 명령을 상기 시스템 버스로 출력하는 단계를 더 구비하는 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법.
  10. 제9항에 있어서,
    상기 제2 데이터에 뒤이어 상기 시스템 버스로 출력되는 상기 제1 선택 명령은 상기 제1메모리 장치의 상태를 디스커넥트 상태에서 데이터 수신 상태로 전환시키며, 상기 제2 메모리 장치의 상태를 디스커넥트 상태로 전환시키는 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법.
  11. 각각이 시스템 버스에 연결되고 각각이 전송 라인을 통하여 호스트와 연결되는 MMC 또는 SD 프로토콜을 사용하는 다수의 반도체 장치들과 상기 호스트 사이를 인터페이스하는 방법에서,
    상기 호스트가 상기 다수의 반도체 장치들 각각의 상태를 대기 상태에서 트랜스퍼 상태로 전환시키는 단계;
    상기 호스트가 상기 다수의 메모리 장치들 중 제1 메모리 장치가 제1 동작을 수행하도록 하기 위하여 제1 순서 열을 갖는 명령들 및 데이터를 순차적으로 상기 제1 메모리 장치로 전송하는 단계; 및
    상기 호스트가 상기 제1 순서 열을 갖는 명령들 및 데이터에 뒤이어 상기 다수의 메모리 장치들 중 제2 메모리 장치가 제2 동작을 수행하도록 하기 위하여 제2 순서 열을 갖는 명령들 및 데이터를 순차적으로 상기 제2 메모리 장치로 전송하는 단계를 구비하는 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법.
  12. 제11항에 있어서,
    상기 제1 동작 및 상기 제2 동작은 쓰기 동작이며,
    상기 제 2 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 출력하는 단계는,
    상기 제1 메모리 장치가 프로그래밍 동작을 수행하는 프로그램 비지 시간 동안 상기 제2 순서 열을 갖는 명령들 및 데이터를 상기 제2 메모리 장치로 전송하는 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법.
  13. 제12항에 있어서,
    상기 제1 순서 열을 갖는 명령들 및 데이터는,
    상기 제1 메모리 장치만을 인에이블하기 위하여 제1 전송 라인을 통하여 상기 제1 메모리 장치로 전송되는 제1 인에이블 명령, 상기 시스템 버스로 출력되는 전송할 데이터의 크기(size)를 결정하기 위한 제1 명령, 상기 제1 명령에 따라 결정된 크기의 데이터에 대한 쓰기 동작을 지시하기 위한 제2 명령, 및 제1 데이터를 포함하고,
    상기 제2 순서 열을 갖는 명령들 및 데이터는,
    상기 제2 메모리 장치만을 인에이블하기 위하여 제2 전송 라인을 통하여 상기 제2 메모리 장치로 전송되는 제2 인에이블 명령, 상기 시스템 버스로 출력되는 상기 제1 명령, 상기 제2 명령 및 제2 데이터를 포함하는 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법.
  14. 제12항에 있어서,
    상기 제1 순서 열을 갖는 명령들 및 데이터는,
    상기 제1 메모리 장치만을 인에이블하기 위하여 제1 전송 라인을 통하여 상기 제1 메모리 장치로 전송되는 제1 인에이블 명령, 상기 시스템 버스로 출력되는 상기 쓰기 동작을 지시하기 위한 제1 명령, 및 제1 데이터를 포함하며,
    상기 제2 순서 열을 갖는 명령들 및 데이터는,
    상기 제2 메모리 장치만을 인에이블하기 위하여 제2 전송 라인을 통하여 상기 제2 메모리 장치로 전송되는 제2 인에이블 명령, 상기 시스템 버스로 출력되는 상기 쓰기 동작을 지시하기 위한 제1 명령, 및 제2 데이터를 포함하는 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법.
  15. 제13항 또는 제14항에 있어서, 상기 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법은,
    상기 제2 데이터에 뒤이어 상기 제1 인에이블 명령을 상기 제1 전송 라인을 통하여 상기 제1 메모리 장치로 전송하는 단계를 더 구비하는 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법.
  16. 제1항 또는 제11항에 기재된 상기 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법을 수행하기 위한 프로그램을 기록한 기록매체.
  17. 시스템 버스;
    상기 시스템 버스에 연결된 MMC 또는 SD 프로토콜을 사용하는 다수의 메모리 장치들; 및
    상기 시스템 버스를 통하여 상기 다수의 메모리 장치들 각각과 연결되는 상기 MMC 또는 SD 프로토콜을 사용하는 호스트를 구비하며,
    상기 호스트는,
    상기 다수의 메모리 장치들 중 제1 메모리 장치가 제1 동작을 수행하도록 하기 위하여 제1 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 순차적으로 출력하고, 상기 제1 순서 열을 갖는 명령들 및 데이터에 뒤이어 상기 다수의 메모리 장치들 중 제2 메모리 장치가 제2 동작을 수행하도록 하기 위하여 제2 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 순차적으로 출력하는 MMC 또는 SD 프로토콜을 사용하는 시스템.
  18. 제17항에 있어서,
    상기 제1 동작 및 상기 제2 동작은 쓰기 동작이며,
    상기 호스트는,
    상기 제1 메모리 장치가 프로그래밍 동작을 수행하는 프로그램 비지 시간 동안 상기 제2 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 출력하는 MMC 또는 SD 프로토콜을 사용하는 시스템.
  19. 시스템 버스;
    다수의 전송 라인들;
    각각이 상기 시스템 버스 및 상기 다수의 전송 라인들 중 대응하는 어느 하나의 전송 라인에 접속되는 MMC 또는 SD 프로토콜을 사용하는 다수의 메모리 장치들; 및
    상기 시스템 버스 및 상기 대응하는 전송 라인을 통하여 상기 다수의 메모리 장치들 각각과 연결되는 상기 MMC 또는 SD 프로토콜을 사용하는 호스트를 구비하며,
    상기 호스트는,
    상기 다수의 메모리 장치들 각각의 상태를 대기 상태에서 트랜스퍼 상태로 전환시키기 위한 제1 순서 열을 갖는 명령들을 출력하고, 제1 동작을 위한 제2 순서 열을 갖는 명령들을 상기 다수의 메모리 장치들 중 제1 메모리 장치로 전송하고, 제2 동작을 위한 제3 순서 열을 갖는 명령들을 상기 제1 동작을 위한 제2 순서 열을 갖는 명령들에 뒤이어 상기 다수의 메모리 장치들 중 제2 메모리 장치로 전송하는 MMC 또는 SD 프로토콜을 사용하는 시스템.
  20. 제19항에 있어서,
    상기 제1 동작 및 상기 제2 동작은 쓰기 동작이며,
    상기 호스트는,
    상기 제1 메모리 장치가 프로그래밍 동작을 수행하는 프로그램 비지 시간 동안 상기 제3 순서 열을 갖는 명령들 및 데이터를 상기 제2 메모리 장치로 전송하는 MMC 또는 SD 프로토콜을 사용하는 시스템.
  21. 제20항에 있어서,
    상기 제2 순서 열을 갖는 명령들 및 데이터는,
    상기 제1 메모리 장치만을 인에이블하기 위하여 상기 다수의 전송 라인들 중 제1 전송 라인을 통하여 상기 제1 메모리 장치로 전송되는 제1 인에이블 명령, 상기 시스템 버스로 출력되는 전송할 총 데이터의 크기(size)를 결정하기 위한 제1 명령, 상기 제1 명령에 따라 결정된 크기의 데이터에 대한 쓰기 동작을 지시하기 위한 제2 명령, 및 제1 데이터를 포함하며,
    상기 제3 순서 열을 갖는 명령들 및 데이터는,
    상기 제2 메모리 장치만을 인에이블하기 위하여 상기 다수의 전송 라인들 중 제2 전송 라인을 통하여 상기 제2 메모리 장치로 전송되는 제2 인에이블 명령, 상기 시스템 버스로 출력되는 상기 제1 명령, 상기 제2 명령 및 제2 데이터를 포함하는 MMC 또는 SD 프로토콜을 사용하는 시스템.
  22. 제20항에 있어서,
    상기 제2 순서 열을 갖는 명령들 및 데이터는,
    상기 제1 메모리 장치만을 인에이블하기 위하여 상기 다수의 전송 라인들 중 제1 전송 라인을 통하여 상기 제1 메모리 장치로 전송되는 제1 인에이블 명령, 상기 쓰기 동작을 지시하기 위한 제1 명령, 및 제1 데이터를 포함하며,
    상기 제3 순서 열을 갖는 명령들 및 데이터는,
    상기 제2 메모리 장치만을 인에이블하기 위하여 상기 다수의 전송 라인들 중 제2 전송 라인을 통하여 상기 제2 메모리 장치로 전송되는 제2 인에이블 명령, 상기 쓰기 동작을 지시하기 위한 제1 명령, 및 제2 데이터를 포함하는 MMC 또는 SD 프로토콜을 사용하는 시스템.
  23. 제21항 또는 제22항에 있어서, 상기 호스트는,
    상기 제2 데이터에 뒤이어 상기 제1 인에이블 명령을 상기 제1 전송 라인을 통하여 상기 제1 메모리 장치로 전송하는 단계를 더 구비하는 MMC 또는 SD 프로토콜을 사용하는 시스템.
  24. 제17항 또는 제19항에 있어서,
    상기 제1 및 상기 제2 메모리 장치 각각은 MMC 및 SD 중 어느 하나인 MMC 또는 SD 프로토콜을 사용하는 시스템.
  25. 제1항에 있어서,
    상기 제1 동작 및 상기 제2 동작은 소거 동작이며,
    상기 제2 순서 열을 갖는 명령들 및 데이터를 상기 시스템 버스로 출력하는 단계는,
    상기 제1 메모리 장치의 상기 소거 동작에 대한 비지 시간 동안 상기 호스트는 상기 제2 메모리 장치가 상기 소거 동작을 수행하도록 하는 상기 제2 순서 열을 갖는 명령들을 상기 시스템 버스로 출력하는 MMC 또는 SD 프로토콜을 사용하는 호스트와 다수의 반도체 장치들 사이를 인터페이스하는 방법.
KR1020070018905A 2007-02-26 2007-02-26 Mmc 또는 sd 프로토콜을 사용하는 다수의 메모리장치들을 인터페이스하는 방법 및 시스템 KR100866625B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070018905A KR100866625B1 (ko) 2007-02-26 2007-02-26 Mmc 또는 sd 프로토콜을 사용하는 다수의 메모리장치들을 인터페이스하는 방법 및 시스템
US12/034,053 US7831755B2 (en) 2007-02-26 2008-02-20 Method and system for interfacing a plurality of memory devices using an MMC/SD protocol

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070018905A KR100866625B1 (ko) 2007-02-26 2007-02-26 Mmc 또는 sd 프로토콜을 사용하는 다수의 메모리장치들을 인터페이스하는 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20080078977A true KR20080078977A (ko) 2008-08-29
KR100866625B1 KR100866625B1 (ko) 2008-11-03

Family

ID=39717220

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070018905A KR100866625B1 (ko) 2007-02-26 2007-02-26 Mmc 또는 sd 프로토콜을 사용하는 다수의 메모리장치들을 인터페이스하는 방법 및 시스템

Country Status (2)

Country Link
US (1) US7831755B2 (ko)
KR (1) KR100866625B1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200910202A (en) * 2007-08-30 2009-03-01 Behavior Tech Computer Corp Multimedia access device, multimedia display system comprising the multimedia access device, and multimedia data display method
KR101475823B1 (ko) * 2009-12-09 2014-12-23 삼성전자주식회사 휴대용 단말기에서 복수의 메모리 이용 방법 및 장치
US8200864B1 (en) * 2010-03-02 2012-06-12 Amazon Technologies, Inc. Pre-defined multiblock transfers
US20130042063A1 (en) * 2011-08-08 2013-02-14 Chi Mei Communication Systems, Inc. System and method for controlling dual memory cards
JP5976608B2 (ja) 2012-10-30 2016-08-23 株式会社東芝 メモリデバイス
CN110175088B (zh) * 2013-08-23 2022-11-11 慧荣科技股份有限公司 存取快闪存储器中储存单元的方法以及使用该方法的装置
KR102143522B1 (ko) 2013-10-15 2020-08-11 삼성전자 주식회사 솔리드 스테이트 디바이스 카드 및 이를 포함하는 전자 시스템
US9633748B2 (en) * 2015-08-17 2017-04-25 Micron Technology, Inc. Multi-channel testing

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05342095A (ja) 1992-06-10 1993-12-24 Toshiba Corp 近傍補間用インターリーブメモリ及びこのメモリを用いた画像処理装置
KR100318214B1 (ko) * 1998-12-15 2002-04-22 구자홍 마이컴과메모리카드와의데이터인터페이스방법
JP3839288B2 (ja) * 2001-09-12 2006-11-01 株式会社ルネサステクノロジ メモリカード
US6871257B2 (en) * 2002-02-22 2005-03-22 Sandisk Corporation Pipelined parallel programming operation in a non-volatile memory system
US20040064612A1 (en) 2002-09-26 2004-04-01 Sandisk Corporation Method and system for using a memory card protocol inside a bus protocol
US8037229B2 (en) 2002-11-21 2011-10-11 Sandisk Technologies Inc. Combination non-volatile memory and input-output card with direct memory access
WO2004105022A1 (en) 2003-05-20 2004-12-02 Koninklijke Philips Electronics N.V. Handling unwritten areas on a storage medium
US20060218324A1 (en) * 2005-03-25 2006-09-28 Matsushita Electrical Industrial Co., Ltd Systems and methods for flexible data transfers in SDIO and/or MMC
KR100707308B1 (ko) * 2005-06-13 2007-04-12 삼성전자주식회사 엠엠씨 인터페이스를 갖는 플래시 메모리 장치 및 그것을포함한 메모리 시스템

Also Published As

Publication number Publication date
KR100866625B1 (ko) 2008-11-03
US7831755B2 (en) 2010-11-09
US20080209092A1 (en) 2008-08-28

Similar Documents

Publication Publication Date Title
US9857991B2 (en) Memory card and host device thereof
US7177975B2 (en) Card system with erase tagging hierarchy and group based write protection
KR101507628B1 (ko) 동기 직렬 인터페이스 nand의 데이터 판독을 위한 시스템 및 방법
KR100866625B1 (ko) Mmc 또는 sd 프로토콜을 사용하는 다수의 메모리장치들을 인터페이스하는 방법 및 시스템
US7360003B2 (en) Multiple mode communication system
US6792501B2 (en) Universal serial bus flash memory integrated circuit device
JP4817836B2 (ja) カードおよびホスト機器
US7259702B2 (en) Memory device
CN102096647A (zh) 多芯片存储器系统和相关的数据传送方法
KR20110010707A (ko) 슬레이브 디바이스 사이에서 직접 데이터를 전송하는 방법
US9063849B2 (en) Different types of memory integrated in one chip by using a novel protocol
US7725621B2 (en) Semiconductor device and data transfer method
CA2723056C (en) Multimedia card interface method, computer program product and apparatus
JP2008521080A5 (ko)
KR20020036717A (ko) 마이크로컴퓨터 및 그 제어 방법
KR100761374B1 (ko) 플래시 메모리 제어 방법 및 장치
CN100517377C (zh) 多功能ic卡及其控制方法
JP4794949B2 (ja) メモリコントローラ、不揮発性記憶装置及び不揮発性記憶システム
KR102242957B1 (ko) 고속 낸드 메모리 시스템과 고속 낸드 메모리 패키지 디바이스
US11182302B2 (en) Memory device, electronic device, and associated read method
KR101192594B1 (ko) 슬레이브 디바이스 사이에서 직접 데이터를 전송하는 방법

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
LAPS Lapse due to unpaid annual fee