KR20140035766A - 임베디드 멀티미디어 카드, 이를 제어하는 호스트, 및 이들의 동작 방법 - Google Patents

임베디드 멀티미디어 카드, 이를 제어하는 호스트, 및 이들의 동작 방법 Download PDF

Info

Publication number
KR20140035766A
KR20140035766A KR20120102468A KR20120102468A KR20140035766A KR 20140035766 A KR20140035766 A KR 20140035766A KR 20120102468 A KR20120102468 A KR 20120102468A KR 20120102468 A KR20120102468 A KR 20120102468A KR 20140035766 A KR20140035766 A KR 20140035766A
Authority
KR
South Korea
Prior art keywords
clock signal
emmc
host
data
return clock
Prior art date
Application number
KR20120102468A
Other languages
English (en)
Other versions
KR101977664B1 (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 KR1020120102468A priority Critical patent/KR101977664B1/ko
Priority to US14/025,879 priority patent/US9348356B2/en
Priority to US14/025,886 priority patent/US9146579B2/en
Publication of KR20140035766A publication Critical patent/KR20140035766A/ko
Application granted granted Critical
Publication of KR101977664B1 publication Critical patent/KR101977664B1/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
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/06Clock generators producing several clock signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)
  • Information Transfer Systems (AREA)
  • Memory System (AREA)

Abstract

임베디드 멀티미디어 카드(embedded Multimedia Card(eMMC))는 클락 신호를 호스트로부터 수신하기 위한 클락 채널과, 상보 클락 신호를 상기 호스트로부터 수신하기 위한 상보 클락 채널과, 명령을 상기 호스트로부터 수신하거나 응답을 상기 호스트로 전송하기 위한 명령 채널과, 데이터를 상기 호스트로 전송하거나 상기 호스트로부터 수신하기 위한 데이터 채널들과, 상기 호스트로 전송되는 상기 데이터와 동기된 리턴 클락 신호를 상기 호스트로 전송하기 위한 리턴 클락 채널과, 상보 리턴 클락 신호를 상기 호스트로 전송하기 위한 상보 리턴 클락 채널과, 기준 전압을 상기 호스트로부터 수신하거나 상기 기준 전압을 상기 호스트로 전송하기 위한 기준 전압 채널을 포함한다.

Description

임베디드 멀티미디어 카드, 이를 제어하는 호스트, 및 이들의 동작 방법 {EMBEDDED MULTIMEDIA CARD(eMMC), HOST FOR CONTROLLING THE eMMC, AND METHODS FOR OPERATING THE eMMC AND THE HOST}
본 발명의 개념에 따른 실시 예는 임베디드 멀티미디어 카드((embedded Multimedia Card(eMMC))에 관한 것으로, 특히 200MHz DDR(dual data rate) 모드를 사용할 수 있는 새로운 구조의 eMMC, 상기 eMMC를 제어하는 호스트, 및 이들의 동작 방법에 관한 것이다.
멀티미디어 카드(MultiMediaCard(MMC)는 플래시(flash) 메모리의 메모리 카드 표준이다.
eMMC는 JEDEC에서 표준으로 정한 내장형 MMC에 대한 표준이다. eMMC 통신은 10개의 신호 버스(10-signal bus)에 기반한다. eMMC은 스마트폰과 같은 이동 통신 장치에 삽입되어 사용될 수 있다.
본 발명이 이루고자 하는 기술적인 과제는 200MHz DDR(dual data rate) 모드를 사용할 수 있는 새로운 구조의 eMMC, 상기 eMMC를 제어하는 호스트, 및 이들의 동작 방법을 제공하는 것이다.
본 발명의 실시 예에 따른 임베디드 멀티미디어 카드(embedded Multimedia Card(eMMC))는 클락 신호를 호스트로부터 수신하기 위한 클락 채널과, 상보 클락 신호를 상기 호스트로부터 수신하기 위한 상보 클락 채널과, 명령을 상기 호스트로부터 수신하거나 응답을 상기 호스트로 전송하기 위한 명령 채널과, 데이터를 상기 호스트로 전송하거나 상기 호스트로부터 수신하기 위한 데이터 채널들과, 상기 호스트로 전송되는 상기 데이터와 동기된 리턴 클락 신호를 상기 호스트로 전송하기 위한 리턴 클락 채널과, 상보 리턴 클락 신호를 상기 호스트로 전송하기 위한 상보 리턴 클락 채널과, 기준 전압을 상기 호스트로부터 수신하거나 상기 기준 전압을 상기 호스트로 전송하기 위한 기준 전압 채널을 포함한다.
상기 데이터가 상기 호스트로부터 전송된 라이트 데이터일 때, 상기 리턴 클락 신호와 상기 상보 리턴 클락 신호는 DC 레벨을 갖는다.
실시 예에 따라, 상기 데이터가 상기 호스트로 전송되는 리드 데이터일 때, 상기 리턴 클락 신호와 상기 상보 리턴 클락 신호 중 어느 하나는 토글링하고, 상기 리턴 클락 신호와 상기 상보 리턴 클락 신호 중 다른 하나는 DC 레벨을 갖는다.
다른 실시 예에 따라, 상기 데이터가 상기 호스트로 전송되는 리드 데이터일 때, 상기 리턴 클락 신호와 상기 상보 리턴 클락 신호는 서로 상보적으로 토글링한다.
실시 예에 따라, 상기 eMMC는 입출력 동작 전압 1.2V 또는 1.8V에서 200MHz DDR(dual data rate) 모드를 지원하는지의 여부를 나타내는 정보를 저장하는 Extended CSD 레지스터를 더 포함하며, 상기 정보는 DEVICE_TYPE[196] 필드에 저장된다.
실시 예에 따라, 상기 eMMC는 상기 리턴 클락의 인터페이스 타이밍 (interface timing)에 대한 정보를 저장하는 Extended CSD 레지스터를 더 포함하며, 상기 정보는 HS_TIMING[185] 필드에 저장된다.
실시 예에 따라, 상기 eMMC는 상기 클락 신호의 최대 동작 주파수에 대한 정보를 저장하는 Extended CSD 레지스터를 더 포함하며, 상기 정보는 VENDOR_SPECIFIC_FIELD 필드에 저장된다.
실시 예에 따라, 상기 eMMC는 상기 상보 클락 신호, 상보 리턴 클락 신호, 및 상기 기준 전압 각각의 지원 여부를 지시하는 정보를 저장하는 Extended CSD 레지스터를 더 포함하며, 상기 정보는 VENDOR_SPECIFIC_FIELD 필드에 저장된다.
상기 데이터의 상승 에지와 하강 에지 각각은 상기 리턴 클락 신호의 상승 에지와 하강 에지 각각과 서로 동기된다.
본 발명의 실시 예에 따른 임베디드 멀티미디어 카드(embedded Multimedia Card(eMMC))를 제어하는 호스트는 클락 신호를 상기 eMMC로 전송하기 위한 클락 채널과, 상보 클락 신호를 상기 eMMC로 전송하기 위한 상보 클락 채널과, 명령을 상기 eMMC로 전송하거나 응답을 상기 eMMC로부터 수신하기 위한 명령 채널과, 데이터를 상기 eMMC로 전송하거나 상기 eMMC로부터 수신하는 데이터 채널들과, 상기 eMMC로부터 전송되는 상기 데이터와 동기된 리턴 클락 신호를 수신하기 위한 리턴 클락 채널과, 상보 리턴 클락 신호를 상기 eMMC로부터 수신하기 위한 상보 리턴 클락 채널과, 기준 전압을 상기 eMMC로 전송하거나 상기 eMMC로부터 수신하기 위한 기준 전압 채널을 포함한다.
실시 예에 따라, 상기 호스트는 상기 데이터 채널들을 통하여 입력된 상기 데이터를 상기 리턴 클락 신호에 응답하여 래치하는 래치 회로를 더 포함한다.
실시 예에 따라, 상기 호스트는 선택 신호에 응답하여 상기 클락 신호와 상기 리턴 클락 신호 중에서 어느 하나를 출력하는 선택 회로와, 상기 데이터 채널들을 통하여 입력된 상기 데이터를 상기 선택 회로의 출력 신호에 응답하여 래치하는 래치 회로를 더 포함한다.
실시 예에 따라, 인에이블 신호에 응답하여 상기 호스트는 상기 클락 신호를 상기 클락 채널을 통하여 출력하고 DC 레벨과 상기 상보 클락 신호 중에서 어느 하나를 상기 상보 클락 채널을 통하여 출력하는 차동 클락 생성기를 더 포함한다.
본 발명의 실시 예에 따른 임베디드 멀티미디어 카드의 동작 방법은 데이터 라이트 동작 동안, 리턴 클락 신호를 호스트로 전송하기 위한 리턴 클락 채널과 상보 리턴 클락 신호를 상기 호스트로 전송하기 위한 상보 리턴 클락 채널을 통해 DC 신호들을 상기 호스트로 전송하는 단계와, 데이터 리드 동작 동안 상기 리턴 클락 채널과 상기 상보 리턴 클락 채널 중 적어도 하나를 통해 상기 리턴 클락 신호와 상기 상보 리턴 클락 신호 중 적어도 하나를 상기 호스트로 전송하는 단계를 포함한다.
상기 데이터 리드 동작 동안, 상기 리턴 클락 신호의 상승 에지와 하강 에지 각각은 상기 호스트로 전송되는 리드 데이터의 상승 에지와 하강 에지 각각과 동기된다.
본 발명의 실시 예에 따른 임베디드 멀티미디어 카드(eMMC)를 제어하는 호스트의 동작 방법은 데이터 라이트 동작 동안 클락 채널을 통해 클락 신호를 eMMC로 전송하는 단계와, 데이터 리드 동작 동안 상기 클락 채널을 통해 상기 클락 신호를 상기 eMMC로 전송하고 상보 클락 채널을 통해 상보 클락 신호를 상기 eMMC로 전송하는 단계를 포함한다.
본 발명의 실시 예에 따른 새로운 구조의 eMMC는 200MHz DDR(dual data rate) 모드를 사용할 수 있는 있으므로, 상기 eMMC는 고속으로 데이터를 처리할 수 있는 효과가 있다. 따라서, 상기 eMMC는 전체 데이터의 처리량(throughput)을 증가시킬 수 있는 효과가 있다.
본 발명의 실시 예에 따른 eMMC는 데이터 리드 동작 동안 리드 데이터와 동기된 리턴 클락 신호를 호스트로 전송할 수 있으므로, 상기 리드 데이터와 상기 리턴 클락 신호 사이의 스큐(skew)를 감소시킬 수 있다. 상기 스큐가 감소함에 따라, 데이터 유효 윈도우(data valid window)를 확보할 수 있는 효과가 있다.
본 발명의 실시 예에 따른 eMMC를 제어할 수 있는 호스트는 200MHz DDR 모드의 데이터 라이트 동작에서 클락 신호에 기초하여 생성된 리턴 클락 신호를 스트로브 신호로서 사용할 수 있으므로, 상기 호스트는 상기 리턴 클락 신호를 이용하여 데이터를 안정적으로 저장 또는 래치할 수 있는 효과가 있다.
본 발명의 실시 예에 따른 새로운 구조의 eMMC는 차동 클락 신호들을 사용할 수 있으므로, 상기 eMMC는 클락 신호에 의한 잡음의 영향을 제거 또는 감소시킬 수 있는 효과가 있다.
본 발명의 실시 예에 따른 eMMC를 제어할 수 있는 호스트는 차동 리턴 클락 신호들을 사용할 수 있으므로, 상기 호스트는 리턴 클락 신호에 의한 잡음의 영향을 제거 또는 감소시킬 수 있는 효과가 있다.
본 발명의 실시 예에 따른 eMMC 또는 호스트는 입출력 동작 전압들에 기초하여 생성된 기준 전압을 사용할 수 있으므로, 상기 eMMC 또는 상기 호스트는 상기 입출력 동작 전압들에 의한 잡음의 영향을 제거 또는 감소시킬 수 있는 효과가 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 상세한 설명이 제공된다.
도 1은 본 발명의 일 실시 예에 따른 임베디드 멀티미디어 카드(embedded multimedia card(eMMC)) 시스템의 블록도를 나타낸다.
도 2는 도 1에 도시된 eMMC 시스템의 일부를 나타낸다.
도 3은 도 1에 도시된 eMMC 호스트 인터페이스의 내부 블록도를 나타낸다.
도 4는 본 발명의 일 실시 예에 따른 리턴 클락 생성기를 포함하는 도 1에 도시된 eMMC 시스템의 일부를 나타낸다.
도 5는 본 발명의 다른 실시 예에 따른 리턴 클락 생성기를 포함하는 도 1에 도시된 eMMC 시스템의 일부를 나타낸다.
도 6은 본 발명의 실시 예에 따른 장치 타입 필드의 정의를 나타낸다.
도 7은 본 발명의 실시 예에 따른 HS_TIMING과 HS_TIMING 값들을 나타낸다.
도 8은 본 발명의 실시 예에 따른 DDR 400 장치 입력 타이밍 도를 나타낸다.
도 9는 도 8에 도시된 DDR 400 장치 입력 타이밍 도에 도시된 파라미터들을 포함하는 테이블을 나타낸다.
도 10은 본 발명의 실시 예에 따른 DDR 400 장치 출력 타이밍 도를 나타낸다.
도 11은 도 10에 도시된 DDR 400 장치 출력 타이밍 도에 도시된 파라미터들을 포함하는 테이블을 나타낸다.
도 12는 본 발명의 실시 예에 따라, Extended CSD 레지스터의 VENDOR_SPECIFIC_FIELD 필드에 저장되고 DDR 400 모드에서의 클락 신호의 최대 동작 주파수에 대한 정보를 나타낸다.
도 13은 본 발명의 실시 예에 따라, Extended CSD 레지스터의 VENDOR_SPECIFIC_FIELD 필드에 저장되고 DDR 400 모드에서의 EXTRA IO FIELD 필드의 정의를 나타낸다.
도 14는 본 발명의 실시 예에 따른 eMMC 인터페이스의 신호들을 나타낸다.
도 15는 본 발명의 다른 실시 예에 따른 eMMC 시스템의 블록도를 나타낸다.
도 16은 도 15에 도시된 eMMC 시스템의 일부를 나타낸다.
도 17은 도 15에 도시된 eMMC 호스트 인터페이스의 내부 블록도를 나타낸다.
도 18a와 도 18b는 도 1 또는 도 15에 도시된 eMMC 시스템의 동작을 설명하기 위한 플로우차트이다.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 또는 기능적 설명은 단지 본 발명의 개념에 따른 실시 예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시 예들은 다양한 형태들로 실시될 수 있으며 본 명세서에 설명된 실시 예들에 한정되지 않는다.
본 발명의 개념에 따른 실시 예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시 예들을 도면에 예시하고 본 명세서에서 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예들을 특정한 개시 형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 벗어나지 않은 채, 제1구성 요소는 제2구성 요소로 명명될 수 있고 유사하게 제2구성 요소는 제1구성 요소로도 명명될 수 있다.
어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는 중간에 다른 구성 요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성 요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로서, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 본 명세서에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 나타낸다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 명세서에 첨부된 도면들을 참조하여 본 발명의 실시 예들을 상세히 설명한다.
본 명세서는 JEDEC(http://www.jedec.org)에 의해 2011년 6월에 공개된 Embedded Multimedia Card(eMMC), Electrical Standard 4.51, 즉 JESD84-B451을 레퍼런스(reference)로 포함한다.
따라서, 본 명세서의 용어들과 정의들(terms and definitions)이 JESD84-B451의 용어들과 정의들과 다르게 정의되지 않는 한, 본 명세서의 용어들과 정의들은 JESD84-B451의 용어들과 정의들과 동일하다.
본 발명의 개념에 따른 다양한 실시 예들은, 호스트(host)와 장치(device) 사이에서 주고받는 데이터의 전송 속도를 높이고 노이즈 면역성(noise immunity)을 높이기 위해, 기존의 10-와이어 버스(10-wire bus) 이외에 특별한 목적을 수행하기 위해 추가된 라인들(또는 채널들)을 더 포함한다.
본 명세서에서 신호 또는 전압을 전송하는 채널(channel)은 호스트 패드, eMMC 패드, 버스, 라인, 드라이버(실시 예에 따라, 차동 증폭기를 포함), 수신기(실시 예에 따라, 차동 증폭기를 포함), 또는 이들 중에서 적어도 두 개의 조합을 의미할 수 있다.
상기 라인들의 기능과, 상기 라인들을 통해 전송되는 신호들을 생성하는 회로들과 방법들이 본 명세서에서 상세히 설명될 것이다.
본 명세서에서는 특별한 의도를 가지고 명시적으로 구분하지 않는 한, 설명의 편의를 위해 기능 회로, 예컨대 버스(bus), 와이어(wire), 패드(또는 핀(pin)), 드라이버(driver), 수신기(receiver), 및/또는 차동 증폭기 등의 전송 지연 (propagation delay)은 고려하지 않는다.
또한, 본 명세서에서는 설명의 편의를 위해, 특별한 의도를 가지고 명시적으로 구분하지 않는 한, 특정한 기능 회로의 입력 신호와 출력 신호 각각은 동일한 명칭을 사용할 수 있다. 예컨대, 도 2에 도시된 바와 같이, 각 기능 회로(322-3과 64)의 입력 신호(RCLK)의 명칭과 출력 신호(RCLK)의 명칭은 서로 동일할 수 있다.
본 발명의 실시 예에 따른 장치, 예컨대 eMMC는, DDR 400 모드에서 데이터 리드 동작을 수행할 때, 클락 신호에 기초하여 생성된 리턴 클락 신호를 리턴 클락 버스를 통하여 호스트로 전송한다. 이때, 도 10에 도시된 바와 같이, 상기 호스트로 전송되는 상기 리턴 클락 신호의 에지와 데이터의 에지는 서로 동기된다. 상기 호스트는 상기 리턴 클락 신호를 스트로브 신호로서 사용하여 상기 eMMC로부터 출력된 데이터를 안전하게 처리, 예컨대 래치할 수 있는 효과가 있다.
본 발명의 실시 예에 따른 호스트와 장치는 클락 신호에 의해 발생하는 노이즈(noise)의 영향을 제거 또는 감소시키기 위해 차동 시그널링(differential signaling)을 사용할 수 있다.
또한, 본 발명의 실시 예에 따른 호스트와 장치는 리턴 클락 신호에 의해 발생하는 노이즈의 영향을 제거 또는 감소시키기 위해 차동 시그널링을 사용할 수 있다.
또한, 본 발명의 실시 예에 따른 호스트와 장치는 전원 노이즈(power noise)에 의해 발생하는 클락 신호의 레벨 변화 및/또는 데이터의 검출 레벨 변화에 따라 데이터 유효 윈도우의 감소 및/또는 리턴 클락 신호와 리드 데이터 사이의 스큐를 줄이기 위해 기준 전압(VREF)을 사용할 수 있다.
또한, 본 명세서에서는 도 6에 도시된 바와 같이 DDR 400 모드를 새롭게 정의하고, 새롭게 정의된 DDR 4000 모드를 지원할 수 있는 호스트 또는 임베디드 멀티미디어 카드(embedded multimedia card(eMMC))의 구조와 동작을 상세히 설명한다.
여기서, DDR 400 모드는 호스트 또는 장치의 입출력 동작 전압(VCCQ)이 1.2V 또는 1.8V일 때, 200MHz DDR(dual date rate)로 데이터를 처리할 수 있는 동작 모드를 의미한다.
도 1은 본 발명의 일 실시 예에 따른 임베디드 멀티미디어 카드(embedded multimedia card(eMMC)) 시스템의 블록도를 나타낸다.
도 1을 참조하면, eMMC 시스템(100A)은 호스트(200A)와 장치(300A), 예컨대 eMMC 장치(300A)를 포함한다.
호스트(200A)는 eMMC 장치(300A)의 데이터 처리 동작, 예컨대 데이터 리드 동작 또는 데이터 라이트 동작 등을 제어할 수 있다. 상기 데이터 처리 동작은 SDR (single data rate) 또는 DDR로 수행될 수 있다.
호스트(200A)는 CPU(central processing unit), 프로세서, 마이크로프로세서 (microprocessor) 또는 애플리케이션 프로세서(application processor) 등과 같이 데이터를 처리할 수 있는 데이터 처리 장치를 그 차체를 의미할 수 있고, 상기 데이터 처리 장치는 전자 장치에 내장(embedded) 또는 구현될 수 있다.
상기 전자 장치는 PC(personal computer), 랩탑 컴퓨터(laptop computer), 이동 전화기, 스마트폰(smartphone), 태블릿(tablet) PC, PDA(personal digital assistant), EDA (enterprise digital assistant), 디지털 스틸 카메라(digital still camera), 디지털 비디오 카메라(digital video camera), 오디오 장치(audio device), PMP(portable multimedia player), PND(personal navigation device 또는 portable navigation device), MP3 플레이어, 휴대용 게임 콘솔(handheld game console), 또는 e-북(e-book)으로 구현될 수 있다.
eMMC 장치(300A)는 호스트(200A)와 데이터 통신을 위해 상기 전자 장치와 접속 수단들(예컨대, 패드들(pads), 핀들(pins), 버스(bus), 또는 통신 라인들)을 통하여 전기적으로 서로 접속될 수 있다.
호스트(200A)는 클락 생성기(210), 처리 회로(212), 상태 제어 유닛(220), 및 호스트 컨트롤러(230A)를 포함할 수 있다.
클락 생성기(210)는 최대 동작 주파수 제어 신호(Fmax)에 기초하여 호스트 (200A)와 eMMC 장치(300A)에서 사용될 클락 신호(CLK)를 생성한다. 예컨대, 클락 생성기(210)는 위상 동기 루프(phase locked loop(PLL))로 구현될 수 있다.
동작 모드, 명령(CMD), 및/또는 응답(RES)에 따라, 처리 회로(212)는 다양한 제어 신호들(DEC, Fmax, HSE, CTR, VEN, 및 VREF_ON) 중에서 적어도 하나를 생성할 수 있다.
처리 회로(212)는 명령(CMD)의 생성, 응답(RES)의 해석, Extended(EXT)_CSD 레지스터(371)에 저장된 데이터의 처리, 및/또는 입출력 데이터의 처리 동작을 제어할 수 있는 하드웨어 또는 소프트웨어(또는 펌웨어)가 내장된 하드웨어를 의미할 수 있다. 처리 회로(212)는 각 구성 요소(component; 210, 220, 및 230A)의 동작을 제어할 수 있다.
여기서, DEC는 호스트 차동 클락 인에이블 신호이고, HSE는 제2선택 신호이고, CTR은 상태 제어 신호이고, VEN은 호스트 차동 증폭 인에이블 신호이고, VREF_ON은 호스트 기준 전압 인에이블 신호이다.
상태 제어 유닛(220)은 상태 제어 신호(CTR)에 응답하여 제1선택 신호(SEL)를 생성할 수 있다.
호스트 컨트롤러(230A)는 데이터 입출력 회로(240)와 호스트 입출력 블록 (250A)을 포함한다.
데이터 라이트 동작 동안, 클락 신호(CLK)에 응답하여 데이터 입출력 회로 (240)는 eMMC 장치(300A)의 플래시 메모리(370)에 라이트될 라이트 데이터를 호스트 입출력 블록(250A)으로 전송한다.
데이터 리드 동작 동안, 선택 회로(245)의 출력 신호(CLK 또는 RCLK)에 응답하여 입출력 회로(240)는 플래시 메모리(370)로부터 출력된 리드 데이터를 호스트 입출력 블록(250A)으로부터 수신한다.
데이터 입출력 회로(240)는 라이트 래치 회로(241), 리드 래치 회로(243), 및 제1선택 회로(245)를 포함한다.
라이트 래치 회로(241)는 제1라이트 래치들(241-O)과 제2라이트 래치들(241-E)을 포함한다.
클락 신호(CLK)의 상승 에지에 응답하여, 제1라이트 래치들(241-O)은 eMMC 장치(300A)에 라이트될 라이트 데이터 중에서 홀수 번째 데이터를 래치한다.
클락 신호(CLK)의 하강 에지에 응답하여, 제2라이트 래치들(241-E)은 상기 라이트 데이터 중에서 짝수 번째 데이터를 래치한다.
리드 래치 회로(243)는 제1리드 래치들(243-O)과 제2리드 래치들(243-E)을 포함한다.
제1선택 회로(245)의 출력 신호(CLK 또는 RCLK)의 상승 에지에 응답하여, 제1리드 래치들(243-O)은 eMMC 장치(300A)로부터 출력된 리드 데이터 중에서 홀수 번째 데이터를 래치한다.
제1선택 회로(245)의 출력 신호(CLK 또는 RCLK)의 하강 에지에 응답하여, 제2리드 래치들(243-E)은 상기 리드 데이터 중에서 짝수 번째 데이터를 래치한다.
예컨대, 제1선택 회로(245)는 멀티플렉서(multiplexer)로 구현될 수 있다. 이때, 상기 멀티플렉서는 제1레벨, 예컨대 로우 레벨을 갖는 제1선택 신호(SEL)에 응답하여 클락 신호(CLK)를 리드 래치 회로(243)로 전송하고, 상기 멀티플렉서는 제2레벨, 예컨대 하이 레벨을 갖는 제1선택 신호(SEL)에 응답하여 리턴 클락 신호 (RCLK)를 리드 래치 회로(243)로 전송한다.
도 1과 도 15의 호스트(200A와 200B)는 상태 제어 유닛(220)과 제1선택 회로 (245)를 포함하는 것으로 도시되어 있으나, 실시 예에 따라 호스트(200A와 200B)는 상태 제어 유닛(220)과 제1선택 회로(245)를 포함하지 않을 수 있다. 이때, 리턴 클락 신호(RCLK)는 직접 리드 래치 회로(243)로 입력될 수 있다.
즉, 리턴 클락 신호(RCLK)의 상승 에지에 응답하여 제1리드 래치들(243-O)은 eMMC 장치(300A)로부터 출력된 리드 데이터 중에서 홀수 번째 데이터를 래치하고, 리턴 클락 신호(RCLK)의 하강 에지에 응답하여 제2리드 래치들(243-E)은 상기 리드 데이터 중에서 짝수 번째 데이터를 래치한다.
도 1에 도시된 eMMC 버스는 종래의 10개의 버스(101, 102, 및 103) 이외에 상보 클락 신호(nCLK)를 eMMC 장치(300A)로 전송할 수 있는 단방향 (unidirectional) 상보 클락 버스(101-1), 리턴 클락 신호(RCLK)를 호스트(200A)로 전송할 수 있는 단방향 리턴 클락 버스(104), 및 상보 리턴 클락 신호(nRCLK)를 호스트(200A)로 전송할 수 있는 상보 리턴 클락 버스(104-1)를 더 포함한다.
클락 버스(101)는 클락 신호(CLK)를 전송하고, 양방향(bidirectional) 명령 버스(102)는 명령(CMD)을 eMMC 장치(300A)로 전송하고 명령(CMD)에 대한 응답(RES)을 호스트(200A)로 전송한다. 양방향 데이터 버스(103)는 데이터 라이트 동작을 위한 라이트 데이터(DAT[7:0])를 eMMC 장치(300A)로 전송하거나 데이터 리드 동작을 위한 리드 데이터(DAT[7:0])를 호스트(200A)로 전송할 수 있다.
즉, eMMC 시스템(100A)은, 데이터 리드 동작의 전송 속도를 높이고 전체 데이터의 처리량(throughput)을 증가시키기 위해, 리턴 클락 신호(RCLK)와 상보 리턴 클락 신호(nRCLK) 중에서 적어도 하나를 사용할 수 있다.
호스트(200A)는 리셋 라인을 통하여 하드웨어 리셋 신호(RST_n)를 eMMC 장치 (300A)로 전송한다.
호스트(200A)는 각 입출력 블록(250A와 320A)에서 사용될 입출력 동작 전압들(VCCQ와 VSSQ)을 생성하고, 입출력 동작 전압들(VCCQ와 VSSQ)을 파워 라인들을 통하여 eMMC 장치(300A)로 전송한다. 이때, 각 입출력 블록(250A와 320A)에 구현된 드라이버(실시 예에 따라, 차동 증폭기를 포함)와 수신기(실시 예에 따라, 차동 증폭기를 포함)는 입출력 동작 전압들(VCCQ와 VSSQ)을 동작 전압들로서 사용한다.
eMMC 시스템(100A)은 입출력 동작 전압들(VCCQ와 VSSQ)을 이용하여 생성된 기준 전압(VREF)을 eMMC 장치(300A)로 전송할 수 있는 기준 전압 라인(105)을 더 포함한다.
호스트(200A)는 플래시 메모리(370)로 공급될 코어 동작 전압들(VCC와 VSS)을 생성하고, 코어 동작 전압들(VCC와 VSS)을 코어 파워 라인들을 통하여 eMMC 장치(300A)로 전송한다. 이때, VSSQ와 VSS는 접지 전압이다.
본 발명의 실시 예들에 따라 신호 라인들(101-1, 104, 104-1, 및 105)이 새롭게 추가됨에 따라, 호스트 입출력 블록(250A)과 eMMC 입출력 블록(320A) 각각의 구조와 동작은 도 2부터 도 118b를 참조하여 상세히 설명될 것이다.
eMMC 장치(300A)는 장치 컨트롤러, 예컨대 eMMC 컨트롤러(310A)와 플래시 메모리(370)를 포함한다.
eMMC 컨트롤러(310A)는 호스트(200A)와 플래시 메모리(370) 사이에서 데이터 통신을 제어한다.
eMMC 컨트롤러(310A)는 eMMC 입출력 블록(320A), eMMC 호스트 인터페이스 (330), CPU(340), 메모리(350), 및 플래시 인터페이스(360)를 포함한다.
eMMC 호스트 인터페이스(330)는 eMMC 입출력 블록(320A)을 통하여 클락 신호 (CLK)와 명령(CMD)을 수신하고, 수신된 클락 신호(CLK)에 기초하여 리턴 클락 신호 (RCLK)를 생성하고 생성된 리턴 클락 신호(RCLK)를 eMMC 입출력 블록(320A)으로 전송하고, 수신된 명령(CMD)을 해석하고 해석의 결과에 따라 응답(RES)을 생성하고 생성된 응답(RES)과 응답(RES)에 기초하여 생성된 데이터를 eMMC 입출력 블록 (320A)으로 전송한다.
데이터 라이트 동작 동안, CPU(340)의 제어에 따라 eMMC 호스트 인터페이스 (330)는 eMMC 입출력 블록(320A)을 통하여 수신된 데이터(DAT[7:0])를 클락 신호 (CLK)를 이용하여 메모리(350), 예컨대 버퍼(buffer)에 임시로 저장한다. 이때, CPU(340)의 제어에 따라 플래시 인터페이스(360)는 메모리(350)에 저장된 데이터를 리드하고 리드된 데이터를 플래시 메모리(370)에 라이트한다.
데이터 리드 동작 동안, CPU(340)의 제어에 따라 플래시 인터페이스(360)는 플래시 메모리(370)로부터 출력된 데이터를 메모리(350)에 저장한다. 이때, CPU (340)의 제어에 따라 eMMC 호스트 인터페이스(330)는 클락 신호(CLK)를 이용하여 메모리(350)에 저장된 데이터를 리드하고 리드된 데이터(DAT[7:0])를 eMMC 입출력 블록(320A)으로 전송한다.
CPU(340)는 각 인터페이스(330과 360)의 동작을 제어하고, eMMC 장치(300A)의 동작을 전반적으로 제어한다.
메모리(350)는 인터페이스들(330과 360) 사이에서 주거나 받는 데이터를 일시적으로 저장한다. 메모리(350)는 휘발성 메모리로 구현될 수 있다.
플래시 메모리(370)는 데이터를 저장하고, 플래시 메모리(370)가 NAND 플래시 메모리로 구현될 때 플래시 인터페이스(360)는 NAND 플래시 인터페이스로 구현될 수 있다. 플래시 메모리(370)는 장치 특성들(device properties)과 선택된 모드들을 저장할 수 있는 EXT_CSD 레지스터(371)를 포함한다.
호스트(200A)는 SEND_EXT_CSD 명령(=CMD8)을 이슈잉하여(by issuing) EXT_CSD 레지스터(371)를 읽을 수 있다. eMMC 장치(300A)는 512 바이트 길이(bytes long)의 EXT_CSD 레지스터(371)를 데이터 블록으로서 전송한다.
도 2는 도 1에 도시된 eMMC 시스템의 일부를 나타내고, 도 3은 도 1에 도시된 eMMC 호스트 인터페이스의 내부 블록도를 나타낸다.
도 1과 도 2를 참조하면, 호스트 입출력 블록(250A)은 차동 클락 생성기 (252), 차동 증폭기들(62, 63, 및 64를 포함), 제2선택 회로(83), 기준 전압 생성기(251), 드라이버(81), 및 호스트 패드들(21~26-2)을 포함한다.
차동 클락 생성기(252)는, 활성화된(activated) 호스트 차동 클락 인에이블 신호(DEC)에 기초하여, 서로 상보적으로 토글링(toggling)하는 차동 클락 신호들 (CLK와 nCLK)을 호스트 패드들(21과 21-1)을 통하여 출력한다.
그러나, 차동 클락 생성기(252)는, 비활성화된(deactivated) 호스트 차동 클락 인에이블 신호(DEC)에 기초하여, 토글링하는 클락 신호(CLK)와 DC 레벨, 예컨대 접지 전압(VSSQ)의 레벨을 갖는 상보 클락 신호(nCLK)를 호스트 패드들(21과 21-1)을 통하여 출력한다.
차동 클락 생성기(252)는 클락 신호(CLK)를 반전시키는 인버터(252-1)와, 클락 신호(CLK)와 인버터(252-1)의 출력 신호의 차이를 증폭하는 차동 증폭기(252-3)를 포함한다. 예컨대, 차동 증폭기(252-3)는 차동 클락 신호들(CLK와 nCLK)을 생성하거나, 클락 신호(CLK)와 DC 레벨을 갖는 상보 클락 신호(nCLK)를 생성한다.
차동 증폭기들(62, 63, 및 64를 포함) 각각은, 활성화된 호스트 차동 증폭 인에이블 신호(VEN)에 기초하여, (+) 입력 단자로 입력된 신호와 (-) 입력 단자로 입력된 신호의 차이를 증폭한다.
그러나, 상기 차동 증폭기들 각각은, 비활성화된 호스트 차동 증폭 인에이블 신호(VEN)에 기초하여, (+) 입력 단자로 입력된 신호만을 증폭한다.
제2선택 신호(HSE)에 기초하여 제2선택 회로(83)는 호스트 패드(24-1)를 통하여 입력된 신호와 드라이버(81)의 출력 신호 중에서 어느 하나를 차동 증폭기 (64)의 (-) 입력 단자로 전송한다.
기준 전압 생성기(251)는, 활성화된 호스트 기준 전압 인에이블 신호 (VREF_ON)에 응답하여, 입출력 동작 전압들(VCCQ와 VSSQ)을 이용하여 기준 전압 (VREF)을 생성한다.
예컨대, 기준 전압 생성기(251)는 전압 분배기(voltage divider)로 구현될 수 있다. 기준 전압(VREF)은 입출력 동작 전압(VCCQ)의 절반일 수 있다. 그러나, 기준 전압 생성기(251)는 비활성화된 호스트 기준 전압 인에이블 신호(VREF_ON)에 응답하여 디스에이블된다. 기준 전압(VREF)의 레벨은 기준 전압 생성기(251)에 의해 조절될 수 있다.
드라이버(81)는 기준 전압 생성기(251)로부터 출력된 기준 전압(VREF)을 드라이빙한다.
eMMC 입출력 블록(320A)은 eMMC 패드들(31~36-2), 제3선택 회로(93), 차동 증폭기들(71, 72, 및 73을 포함), 차동 리턴 클락 생성기(322-1)의 일부, 및 수신기(91)를 포함한다.
제3선택 회로(93)는, 제3선택 신호(SE)에 기초하여, eMMC 패드(31-1)를 통하여 입력된 신호와 기준 전압(VREF) 중에서 어느 하나를 차동 증폭기(71)의 (-) 입력 단자로 전송한다. 예컨대, 제3선택 신호(SE)가 제1레벨일 때 제3선택 회로(93)는 eMMC 패드(31-1)를 통하여 입력된 신호를 차동 증폭기(71)의 (-) 입력 단자로 전송하고, 제3선택 신호(SE)가 제2레벨일 때 제3선택 회로(93)는 수신기(91)의 출력 신호를 차동 증폭기(71)의 (+) 입력 단자로 전송한다.
차동 증폭기(71)는, 활성화된 eMMC 차동 클락 인에이블 신호(DIFF_EN)에 응답하여, (+) 입력 단자로 입력된 신호와 (-) 단자로 입력된 신호의 차이를 증폭한다.
그러나, 차동 증폭기(71)는, 비활성화된 eMMC 차동 클락 인에이블 신호 (DIFF_EN)에 응답하여, (+) 입력 단자로 입력된 신호만을 증폭한다.
차동 증폭기들(72와 73을 포함) 각각은, 활성화된 eMMC 차동 증폭 인에이블 신호(eVEN)에 기초하여, (+) 입력 단자로 입력된 신호와 (-) 입력 단자로 입력된 신호의 차이를 증폭한다.
그러나, 상기 차동 증폭기들(72와 73을 포함) 각각은, 비활성화된 eMMC 차동 증폭 인에이블 신호(eVEN)에 기초하여, (+) 입력 단자로 입력된 신호를 증폭한다.
차동 리턴 클락 생성기(322-1)는 차동 증폭기(71)의 출력 신호(CLK)에 기초하여 차동 리턴 클락 신호들(RCLK와 nRCLK), 즉 리턴 클락 신호(RCLK)와 상보 리턴 클락 신호(nRCLK))를 생성한다.
차동 리턴 클락 생성기(322-1)는 리턴 클락 생성기(333), 인버터(322-2), 및 차동 증폭기(322-3)를 포함한다.
리턴 클락 생성기(333)는 차동 증폭기(71)의 출력 신호(CLK)에 기초하여 리턴 클락 신호(RCLK)를 생성한다. 리턴 클락 생성기(333)의 구조와 동작은 도 4와 도 5를 참조하여 상세히 설명될 것이다.
인버터(322-2)는 클락 신호(RCLK)를 반전시킨다.
데이터 라이트 동작 동안, 리드 인에이블 신호(READ_EN)는 비활성화된다. 따라서, 상기 데이터 라이트 동작 동안, 차동 증폭기(322-3)는 각각이 DC 레벨을 갖는 차동 리턴 클락 신호들(RCLK와 nRCLK)을 eMMC 패드들(34와 34-1)을 통하여 출력한다.
수신기(91)는 기준 전압(VREF)을 수신한다.
도 3에 도시된 바와 같이, eMMC 호스트 인터페이스(330)의 일 실시 예에 따른 eMMC 호스트 인터페이스(330A)는 데이터 전송 회로(331), 리턴 클락 생성기 (333), 호스트 명령 디코딩 유닛(335), 데이터 입출력 제어 유닛(337A), 및 eMMC 상태 제어 유닛(339)을 포함한다.
DDR 400 모드의 데이터 리드 동작 동안, 데이터 전송 회로(331)는 차동 증폭기(71)로부터 출력된 클락 신호(CLK)에 응답하여 리드 데이터(DAT[7:0])를 차동 증폭기(73)로 전송한다. 리턴 클락 생성기(333A)는 차동 증폭기(71)의 출력 신호 (CLK)에 기초하여 리턴 클락 신호(RCLK)를 생성한다.
도 4는 본 발명의 일 실시 예에 따른 리턴 클락 생성기를 포함하는 도 1에 도시된 eMMC 시스템의 일부를 나타낸다.
도 2와 도 4를 참조하면, 데이터 전송 회로(331)는 리드 래치 회로(331R)와 라이트 래치 회로(331W)를 포함한다.
데이터 리드 동작 동안, 리드 래치 회로(331R)는 데이터 입출력 제어 유닛 (337A) 또는 eMMC 상태 제어 유닛(339)의 제어에 따라 인에이블된다.
그러나, 데이터 라이트 동작 동안 라이트 래치 회로(331W)는 데이터 입출력 제어 유닛 (337A) 또는 eMMC 상태 제어 유닛(339)의 제어에 따라 인에이블된다.
리드 래치 회로(331R)는 제1데이터 출력 래치들(331-RO)과 제2데이터 출력 래치들(331-RE)을 포함한다.
데이터 리드 동작 동안, 차동 증폭기(71)로부터 출력된 클락 신호(CLK)의 상승 에지에 응답하여 제1데이터 출력 래치들(331-RO)은 메모리(350)로부터 출력된 데이터 중에서 홀수 번째 데이터(ODATA)를 래치한다.
또한, 상기 데이터 리드 동작 동안, 차동 증폭기(71)로부터 출력된 클락 신호(CLK)의 하승 에지에 응답하여 제2데이터 출력 래치들(331-RE)은 메모리(350)로부터 출력된 데이터 중에서 짝수 번째 데이터(EDATA)를 래치한다.
클락 신호(CLK)의 상승 에지에 응답하여 제4선택 회로(335)는 제1데이터 출력 래치들(331-O)에 래치된 홀수 번째 데이터(ODATA)를 차동 증폭기들(73)로 출력하고, 클락 신호(CLK)의 하승 에지에 응답하여 제4선택 회로(335)는 제2데이터 출력 래치들(331-E)에 래치된 짝수 번째 데이터(EDATA)를 차동 증폭기들(73)로 출력한다. 제4선택 회로(335)는 멀티플렉서로 구현될 수 있다.
차동 증폭기들(73)은 제4선택 회로(335)로부터 순차적으로 출력되는 홀수 번째 데이터(ODATA)와 짝수 번째 데이터(EDATA)를 호스트 패드들(33)로 출력한다.
라이트 래치 회로(331R)는 제1데이터 입력 래치들(331-WO)과 제2데이터 입력 래치들(331-WE)을 포함한다.
데이터 라이트 동작 동안, 차동 증폭기(71)로부터 출력된 클락 신호(CLK)의 상승 에지에 응답하여 제1데이터 입력 래치들(331-WO)은 차동 증폭기들(72)로부터 출력된 데이터 중에서 홀수 번째 데이터(ODATA)를 메모리(350)로 전송한다.
또한, 상기 데이터 라이트 동작 동안, 차동 증폭기(71)로부터 출력된 클락 신호(CLK)의 하승 에지에 응답하여 제2데이터 입력 래치들(331-WE)은 차동 증폭기들(72)로부터 출력된 상기 데이터 중에서 짝수 번째 데이터(EDATA)를 메모리(350)로 전송한다.
DDR 400 모드의 데이터 라이트 동작 동안, 도 2의 리턴 클락 생성기(333)의 일 실시 예에 따른 리턴 클락 생성기(333A)는 데이터 입출력 제어 유닛(337A) 또는 eMMC 상태 제어 유닛(339)의 제어에 따라 차동 증폭기(71)로부터 출력된 클락 신호 (CLK)를 일정시간 지연시켜 리턴 클락 신호(RCLK)를 생성한다.
예컨대, 리턴 클락 생성기(333A)는 지연 로직(delay logic)으로 구현될 수 있다. 상기 지연 로직의 지연(또는 지연량)은 조절 또는 프로그램 가능하다.
예컨대, 리드 래치 회로(331R)를 포함하는 데이터 출력 경로(DOP)의 지연(또는 레이턴시(latency))과 리턴 클락 생성기(333A)를 포함하는 리턴 클락 신호 출력 경로(RCP)의 지연(또는 레이턴스)이 서로 동일하게 설계 또는 조절되면, 도 10에 도시된 바와 같이, eMMC 패드들(33과 34)을 기준으로 볼 때, 리턴 클락 생성기 (333A)는 eMMC 패드들(33)을 통하여 출력되는 데이터(DAT[7:0])와 동기된 리턴 클락 신호(RCLK)를 eMMC 패드(34)를 통하여 출력할 수 있다.
호스트(200A)에 의해 리턴 클락 신호(RCLK)는 고속 데이터 리드 동작을 위한 스트로브 신호(strobe signal)로서 사용될 수 있다. 따라서, 리드 데이터는 안정적으로 리드 래치 회로(240)에 저장될 수 있다.
도 5는 본 발명의 다른 실시 예에 따른 리턴 클락 생성기를 포함하는 도 1에 도시된 eMMC 시스템의 일부를 나타낸다.
도 4의 데이터 전송 회로(331)의 구조와 동작과 도 5의 데이터 전송 회로 (331)의 구조와 동작은 실질적으로 동일하다. 여기서, "실질적으로 동일"하다 함은 물리적인 동일 및/또는 공정 변화(process variation), 예컨대 PVT(공정 (process(P)), 전압(voltage(V)), 및 온도(temperature(T))를 고려한 동일을 의미한다.
도 2의 리턴 클락 생성기(333)의 다른 실시 예에 따른 리턴 클락 생성기 (333B)는 래치들(332-O와 332-E)과 제5선택 회로(336)를 포함한다.
제1래치(332-O)는 차동 증폭기(71)로부터 출력된 클락 신호(CLK)의 상승 에지에 응답하여 하이 레벨(HIGH)의 값을 래치하고, 제2래치(332-E)는 차동 증폭기 (71)로부터 출력된 클락 신호(CLK)의 하강 에지에 응답하여 로우 레벨(LOW)의 값을 래치한다.
예컨대, 하이 레벨(HIGH)은 VCCQ일 수 있고 로우 레벨(LOW)은 VSSQ일 수 있다.
제5선택 회로(336)는 차동 증폭기(71)로부터 출력된 클락 신호(CLK)의 상승 에지에 응답하여 제1래치(332-O)에 래치된 하이 레벨(HIGH)의 값을 리턴 클락 신호 (RCLK)의 일부로서 출력한다. 또한, 제5선택 회로(336)는 차동 증폭기(71)로부터 출력된 클락 신호(CLK)의 하강 에지에 응답하여 제2래치(332-E)에 래치된 로우 레벨(LOW)의 값을 리턴 클락 신호(RCLK)의 일부로서 출력한다.
제5선택 회로(336)는 멀티플렉서로 구현될 수 있다.
데이터 출력 경로(DOP)의 구조와 리턴 클락 신호 출력 경로(RCP)의 구조는 서로 실질적으로 동일하다. 따라서, 호스트(200A)로 전송되는 데이터(DAT[7:0])와 리턴 클락 신호(RCLK) 사이에서 발생하는 스큐(skew)는 제거되거나 감소될 수 있다.
도 10은 본 발명의 실시 예에 따른 DDR 400 장치 출력 타이밍 도를 나타낸다. 도 10에 도시된 바와 같이, 도 2에 도시된 각 차동 증폭기(73과 322-3)의 지연을 고려하지 않거나 상기 지연이 동일할 때, DDR 400 모드의 데이터 리드 동작 동안 eMMC 장치(300A)는 데이터(DAT[7:0])의 에지(예컨대, 상승 에지와 하강 에지 각각)과 동기된 에지를 갖는 리턴 클락 신호(RCLK)를 생성할 수 있다.
다시 도 3을 참조하면, 호스트 명령 디코딩 유닛(335)은 호스트(200A)로부터 출력된 명령(CMD)을 명령 버스(102), eMMC 패드(32), 및 eMMC 패드(32)에 접속된 차동 증폭기를 통하여 수신하고, 수신된 명령(CMD)을 디코딩하고, 디코딩의 결과에 따라 응답(RES)을 생성하고, 생성된 응답(RES)을 호스트(200A)로 전송할 수 있다.
예컨대, 명령(CMD)이 SEND_EXT_CSD 명령(CMD8)일 때, 데이터 전송 회로(331)는, 구성 요소들(335, 337A, 및 339) 중에서 적어도 하나의 제어에 따라, 메모리 (350)로부터 출력된 EXT_CSD 레지스터(371)의 값들을 구성 요소들(73, 33, 및 103)을 통하여 호스트(200A)로 전송할 수 있다.
또한, 명령(CMD)이 SWITCH 명령(CMD6)일 때, 데이터 전송 회로(331)는, 구성 요소들(335, 337A, 및 339) 중에서 적어도 하나의 제어에 따라, 호스트(200A)로부터 전송된 EXT_CSD 레지스터(371)의 값들을 메모리(350)로 전송할 수 있다.
호스트 명령 디코딩 유닛(335)은 명령(CMD)에 대한 디코딩 결과를 데이터 입출력 제어 유닛(337A) 및/또는 eMMC 상태 제어 유닛(339)으로 전송할 수 있다.
호스트 명령 디코딩 유닛(335)은 응답(RES)에 기초하여 생성된 제어 신호들을 데이터 입출력 제어 유닛(337A) 및/또는 eMMC 상태 제어 유닛(339)으로 전송할 수 있다.
데이터 입출력 제어 유닛(337A)은, 호스트 명령 디코딩 유닛(335), eMMC 상태 제어 유닛(339), 및/또는 EXT_CSD 레지스터의 값들에 따라, 인에이블 신호들 (DIFF_EN, RCLK_EN, nRCLK_EN, READ_EN, 및 eVEN) 각각의 활성화 또는 비활성화를 제어할 수 있다.
eMMC 상태 제어 유닛(339)은 CPU(340)의 제어, 호스트 명령 디코딩 유닛 (335)과의 통신, 및/또는 데이터 입출력 제어 유닛(337A)과의 통신에 기초하여 eMMC 장치(300A)의 상태를 제어할 수 있다.
동작 모드와 도 13에 도시된 EXT_CSD 레지스터의 VENDOR_SPECIFIC_FIELD 필드에 저장된 정보, 예컨대 각 비트(Bit 4~Bit 6)의 설정 값에 따라, eMMC 시스템 (100A)의 동작 방법들은 다음과 같다.
여기서, 상기 동작 모드는 (i) DDR 400 모드의 수행 여부, (ii) DDR 400 모드에서 데이터 라이트 동작의 수행 여부, 및 (iii) DDR 400 모드에서 데이터 리드 동작의 수행 여부에 따라 결정될 수 있다.
이때, DDR 400 모드는 도 6에 도시된 바와 같이 EXT_CSD 레지스터의 DEVICE_TYPE[196] 필드에 저장된 정보에 따라 결정되는 eMMC 장치(300A)의 종류 (type), 즉 입출력 동작 전압(VCCQ)이 1.2V 또는 1.8V일 때, 200MHz DDR(dual data rate)로 동작하는 모드를 의미할 수 있다.
실시예 1: nCLK, RCLK, nRCLK, 및 VREF를 사용하지 않는 경우
첫 번째, eMMC 장치(300A)가 도 7에서 정의된 비트 5(Bit 5), 1.2V에서 200MHz 싱글 데이터 레이트(single data rate) 모드 또는 이보다 낮은 모드를 지원할 때, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로(212)는 각 인에이블 신호(DEC, VEN, 및 VREF_ON)를 비활성화시킨다.
또한, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛(337A)은 각 인에이블 신호(DIFF_EN, eVEN, RCLK_EN, nRCLK_EN, 및 READ_EN)를 비활성화시킨다.
차동 클락 생성기(252)는, 비활성화된 호스트 차동 클락 인에이블 신호(DEC)에 응답하여, 클락 신호(CLK)를 구성 요소들(21, 101, 및 31)을 통하여 차동 증폭기(71)로 전송한다. 이때, 차동 클락 생성기(252)는 DC 레벨, 예컨대 접지 전압 (VSSQ)의 레벨을 갖는 상보 클락 신호(nCLK)를 출력한다.
데이터 라이트 동작 동안, 차동 증폭기들(62)은, 비활성화된 호스트 차동 증폭 인에이블 신호(VEN)에 응답하여, (+)입력 단자를 통하여 입력되는 신호만을 증폭한다.
데이터 리드 동작 동안, 차동 증폭기들(63과 64)은, 비활성화된 호스트 차동 증폭 인에이블 신호(VEN)에 응답하여, (+)입력 단자를 통하여 입력되는 신호만을 증폭한다.
기준 전압 생성기(251)는, 비활성화된 호스트 기준 전압 인에이블 신호 (VREF_ON)에 응답하여, DC 레벨을 갖는 기준 전압(VREF)을 생성한다.
차동 증폭기(71)는, 비활성화된 eMMC 차동 클락 인에이블 신호(DIFF_EN)에 응답하여, 클락 신호(CLK)만을 증폭한다.
데이터 라이트 동작 동안, 차동 증폭기들(72)은, 비활성화된 eMMC 차동 증폭 인에이블 신호(eVEN)에 응답하여, (+)입력 단자를 통하여 입력되는 신호만을 증폭한다.
데이터 리드 동작 동안, 차동 증폭기들(73)은, 비활성화된 eMMC 차동 증폭 인에이블 신호(eVEN)에 응답하여, (+)입력 단자를 통하여 입력되는 신호만을 증폭한다.
데이터 라이트 동작 동안 또는 데이터 리드 동작 동안, 차동 증폭기(322-3)는, 비활성화된 인에이블 신호들(RCLK_EN, nRCLK_EN, 및 READ_EN)에 응답하여, DC 레벨을 갖는 신호들(RCLK와 nRCLK)을 출력한다.
두 번째, eMMC 장치(300A)가 DDR 400 모드에서 데이터 라이트 동작을 수행할 때, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로(212)는 각 인에이블 신호(DEC, VEN, 및 VREF_ON)를 비활성화시킨다,
또한, 명령(CMD), 예컨대 데이터 라이트 명령과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛(337A)은 각 인에이블 신호(DIFF_EN, eVEN, RCLK_EN, nRCLK_EN, 및 READ_EN)를 비활성화시킨다.
실시 예 2; RCLK만 사용하는 경우
eMMC 장치(300A)가 DDR 400 모드에서 데이터 리드 동작을 수행하고 도 13에 도시된 각 비트(Bit 0, Bit 1, Bit 2, Bit 4, Bit 5, 및 Bit 6)가 "0"로 설정되어 있을 때, 명령(CMD), 예컨대 데이터 리드 명령과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로(212)는 각 인에이블 신호(DEC, VEN, 및 VREF_ON)를 비활성화킨다.
또한, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛(337A)은 각 인에이블 신호(DIFF_EN, eVEN, 및 nRCLK_EN)를 비활성화시키고 각 인에이블 신호(RCLK_EN와 READ_EN)를 활성화시킨다.
따라서, 차동 증폭기(322-3)로부터 출력된 리턴 클락 신호(RCLK)는 구성 요소들(34, 104, 및 24)을 통하여 차동 증폭기(64)로 전송된다.
이때, 차동 증폭기(64)는 (+) 입력 단자로 입력되는 리턴 클락 신호(RCLK)를 증폭한다. 각 선택 신호(HSE와 SE)는 제1레벨과 제2레벨 중에서 어느 레벨을 가져도 된다.
실시 예 3: RCLK와 VREF을 사용하는 경우
eMMC 장치(300A)가 DDR 400 모드에서 데이터 리드 동작을 수행하고 도 13에 도시된 각 비트(Bit 2와 Bit 6)가 "1"로 설정되어 있을 때, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로(212)는 호스트 차동 클락 인에이블 신호(DEC)를 비활성화시키고 각 인에이블 신호(VEN과 및 VREF_ON)를 활성화시킨다.
또한, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛(337A)은 각 인에이블 신호(DIFF_EN과 nRCLK_EN)를 비활성화시키고 각 인에이블 신호(eVEN, RCLK_EN, 및 READ_EN)를 활성화시킨다.
이때, 처리 회로(212)는 제2레벨을 갖는 제2선택 신호(HSE)를 생성하고, 데이터 입출력 제어 유닛(337A)은 제1레벨과 제2레벨 중 어느 하나를 갖는 제3선택 신호(SE)를 생성한다.
기준 전압 생성기(251)는 입출력 동작 전압들(VCCQ와 VSSQ)에 기초하여 기준 전압(VREF)을 생성하고, 드라이버(81)는 기준 전압 생성기(251)로부터 출력된 기준 전압(VREF)을 구성 요소들(25, 105, 및 35)을 통하여 수신기(91)로 전송한다.
차동 증폭기들(73)은 수신기(91)로부터 출력된 기준 전압(VREF)과 데이터 전송 회로(331)로부터 출력된 데이터 (DAT[7:0])의 차이를 증폭하고 증폭된 데이터 (DAT[7:0])를 구성 요소들(33, 103, 및 23)을 통하여 차동 증폭기들(63)로 전송한다.
차동 증폭기들(63)은 드라이버(81)로부터 출력된 기준 전압(VREF)과 호스트 패드들(23)을 통하여 입력된 데이터(DAT[7:0])의 차이를 증폭한다.
제2선택 회로(83)는 제2레벨을 갖는 제2선택 신호(HSE)에 응답하여 드라이버 (81)로부터 출력된 기준 전압(VREF)을 차동 증폭기(64)의 (-)입력 단자로 전송한다.
차동 증폭기(64)는 (+)입력 단자로 입력된 리턴 클락 신호(RCLK)와 (-) 입력 단자로 입력된 기준 전압(VREF)의 차이를 증폭한다.
리드 래치 회로(243)는 클락 신호(CLK) 또는 차동 증폭기(64)에 의해 증폭된 리턴 클락 신호(RCLK)에 응답하여 차동 증폭기들(63)에 의해 증폭된 데이터 (DAT[7:0])를 처리, 예컨대 래치한다.
실시 예 4: RCLK와 nCLK을 사용하는 경우
eMMC 장치(300A)가 DDR 400 모드에서 데이터 리드 동작을 수행하고 도 13에 도시된 각 비트(Bit 0과 Bit 4)가 "1"로 설정되어 있을 때, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로(212)는 호스트 차동 클락 인에이블 신호(DEC)를 활성화시키고 각 인에이블 신호(VEN과 및 VREF_ON)를 비활성화시킨다.
또한, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛(337A)은 각 인에이블 신호(eVEN과 nRCLK_EN)를 비활성화시키고 각 인에이블 신호(DIFF_EN, RCLK_EN, 및 READ_EN)를 활성화시킨다.
이때, 처리 회로(212)는 제1레벨과 제2레벨 중에서 어느 하나를 갖는 제2선택 신호(HSE)를 생성하고, 데이터 입출력 제어 유닛(337A)은 제1레벨을 갖는 제3선택 신호(SE)를 생성한다.
차동 클락 생성기(252)는 차동 클락 신호들, 즉 클락 신호(CLK)와 상보 클락 신호(nCLK)를 구성 요소들(21과 101, 및 21-1과 101-1)을 통하여 eMMC 패드들(31과 31-1)로 출력한다.
제3선택 회로(93)는 제1레벨을 갖는 제3선택 신호(SE)에 응답하여 상보 클락 신호(nCLK)을 차동 증폭기(71)의 (-)입력 단자로 출력한다.
차동 증폭기(71)는 (+)입력 단자로 입력되는 클락 신호(CLK)와 (-)입력 단자로 입력되는 상보 클락 신호(nCLK)의 차이를 증폭한다.
차동 증폭기(322-3)는 리턴 클락 생성기(333)로부터 출력된 리턴 클락 신호 (RCLK)를 구성 요소들(34, 104, 및 24)을 통하여 차동 증폭기(64)의 (+) 입력 단자로 전송한다.
차동 증폭기(64)는 증폭된 리턴 클락 신호(RCLK)를 리드 래치 회로 (243)로 출력한다.
실시 예 5: RCLK와 nRCLK를 사용하는 경우
eMMC 장치(300A)가 DDR 400 모드에서 데이터 리드 동작을 수행하고 도 13에 도시된 각 비트(Bit 1과 Bit 5)가 "1"로 설정되어 있을 때, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로(212)는 각 인에이블 신호(DEC, VEN, 및 VREF_ON)를 비활성화시킨다.
또한, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛(337A)은 각 인에이블 신호(DIFF_EN과 eVEN)를 비활성화시키고 각 인에이블 신호(RCLK_EN, nRCLK_EN, 및 READ_EN)를 활성화시킨다.
이때, 처리 회로(212)는 제1레벨을 갖는 제2선택 신호(HSE)를 생성하고, 데이터 입출력 제어 유닛(337A)은 제1레벨 또는 제2레벨을 갖는 제3선택 신호(SE)를 생성한다.
차동 증폭기(322-3)는 리턴 클락 신호(RCLK)와 상보 리턴 클락 신호(nRCLK)를 호스트(200A)로 전송한다.
제2선택 회로(83)는 제1레벨을 갖는 제2선택 신호(HSE)에 기초하여 상보 리턴 클락 신호(nRCLK)를 차동 증폭기(322-3)의 (-) 입력 단자로 전송한다.
차동 증폭기(322-3)는 (+) 입력 단자로 입력된 리턴 클락 신호(RCLK)와 (-) 입력 단자로 입력된 상보 리턴 클락 신호(nRCLK)의 차이를 증폭한다.
실시 예 6: RCLK, nCLK, 및 VREF를 사용하는 경우
eMMC 장치(300A)가 DDR 400 모드에서 데이터 리드 동작을 수행하고 도 13에 도시된 각 비트(Bit 0, Bit 2, Bit 4, 및 Bit 6)가 "1"로 설정되어 있을 때, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로(212)는 각 인에이블 신호(DEC, VEN, 및 VREF_ON)를 활성화시킨다.
또한, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛(337A)은 인에이블 신호(nRCLK_EN)를 비활성화시키고 각 인에이블 신호(DIFF_EN, eVEN, RCLK_EN, 및 READ_EN)를 활성화시킨다.
이때, 처리 회로(212)는 제2레벨을 갖는 제2선택 신호(HSE)를 생성하고, 데이터 입출력 제어 유닛(337A)은 제1레벨 또는 제2레벨을 갖는 제3선택 신호(SE)를 생성한다.
상보 클락 신호(nCLK)가 차동 증폭기(71)로 입력될 때, 차동 증폭기(71)는 차동 클락 신호들(CLK와 nCLK)의 차이를 증폭하기 때문에 노이즈 마진(noise margin)에 강한 특성을 보인다. 이때, 차동 증폭기(71)의 동작 속도를 가장 빠르다.
그러나, 기준 전압(VREF)이 차동 증폭기(71)로 입력될 때, 차동 증폭기(71)는 클락 신호(CLK)와 기준 전압(VREF)의 차이를 증폭한다. 이때의 차동 증폭기(71)의 노이즈 마진은 차동 클락 신호들(CLK와 nCLK)을 이용할 때의 차동 증폭기(71)의 노이즈 마진보다 상대적으로 작지만, 기준 전압(VREF)을 조절할 수 있는 경우 클락 신호(CLK)의 타이밍 또는 듀티 비율(duty ratio)을 조절할 수 있다.
따라서, 데이터 입출력 제어 유닛(337A)이 제1레벨을 갖는 제3선택 신호(SE)를 생성할지 또는 제2레벨을 갖는 제3선택 신호(SE)를 생성할지는 설계자에 따라 결정될 수 있다.
실시 예 7: RCLK, nRCLK, 및 VREF를 사용하는 경우
eMMC 장치(300A)가 DDR 400 모드에서 데이터 리드 동작을 수행하고 도 13에 도시된 각 비트(Bit 1, Bit 2, Bit 5, 및 Bit 6)가 "1"로 설정되어 있을 때, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로 (212)는 호스트 차동 클락 인에이블 신호(DEC)를 비활성화시키고 각 인에이블 신호 (VEN와 및 VREF_ON)를 활성화시킨다.
또한, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛(337A)은 eMMC 차동 클락 인에이블 신호(DIFF_EN)를 비활성시키고 각 인에이블 신호(eVEN, RCLK_EN, nRCLK_EN, 및 READ_EN)를 활성화시킨다.
이때, 처리 회로(212)는 제1레벨을 갖는 제2선택 신호(HSE)를 생성하고, 데이터 입출력 제어 유닛(337A)은 제1레벨 또는 제2레벨을 갖는 제3선택 신호(SE)를 생성한다.
실시 예 8: RCLK, nRCLK, 및 nCLK를 사용하는 경우
MMC 장치(300A)가 DDR 400 모드에서 데이터 리드 동작을 수행하고 도 13에 도시된 각 비트(Bit 0, Bit 1, Bit 4, 및 Bit 5)가 "1"로 설정되어 있을 때, 명령 (CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로(212)는 각 인에이블 신호(VEN와 및 VREF_ON)를 비활성화시키고 호스트 차동 클락 인에이블 신호(DEC)를 활성화시킨다.
또한, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛(337A)은 eMMC 차동 증폭 인에이블 신호(eVEN)를 비활성화시키고 각 인에이블 신호(DIFF_EN, RCLK_EN, nRCLK_EN, 및 READ_EN)를 활성화시키고 시킨다.
이때, 처리 회로(212)는 제1레벨을 갖는 제2선택 신호(HSE)를 생성하고, 데이터 입출력 제어 유닛(337A)은 제1레벨을 갖는 제3선택 신호(SE)를 생성한다.
실시 예 9: RCLK, nRCLK, nCLK, 및 VREF를 사용하는 경우
MMC 장치(300A)가 DDR 400 모드에서 데이터 리드 동작을 수행하고 도 13에 도시된 각 비트(Bit 0, Bit 1, Bit 2, Bit 4, Bit 5, 및 Bit 6)가 "1"로 설정되어 있을 때, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로(212)는 각 인에이블 신호(DEC, VEN, 및 VREF_ON)를 활성화시킨다.
또한, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛 (337A)은 각 인에이블 신호(DIFF_EN, eVEN, RCLK_EN, nRCLK_EN, 및 READ_EN)를 활성화시킨다.
이때, 처리 회로(212)는 제1레벨 또는 제2레벨을 갖는 제2선택 신호(HSE)를 생성하고, 데이터 입출력 제어 유닛(337A)은 제1레벨 또는 제2레벨을 갖는 제3선택 신호(SE)를 생성한다.
도 6은 본 발명의 실시 예에 따른 장치 타입 필드의 정의를 나타낸다.
도 6을 참조하면, EXT_CSD 레지스터의 DEVICE_TYPE[196] 필드는 eMMC 장치 (300A)의 타입(type)을 정의한다. JESD84-B451에서는 DEVICE_TYPE[196] 필드의 각 비트(Bit 0~Bit 5)만이 정의되었으나, 본 발명의 실시 예에 따른 DEVICE_TYPE[196] 필드에는 eMMC 장치(300A)가 DDR 400 모드를 지원하는지를 나타내는 정보가 저장된다.
예컨대, 비트 6(Bit 6)에는 1.8V(VCCQ=1.8V)에서 200MHz DDR 모드를 지원하는지에 대한 정보가 저장되고, 비트 7(Bit 7)에는 1.2V(VCCQ=1.2V)에서 200 MHz DDR 모드를 지원하는지에 대한 정보가 저장된다.
EXT_CSD 레지스터의 DEVICE_TYPE[196] 필드는 호스트(200A)로부터 전송된 SEND_EXT_CSD 명령(CMD8)에 따라 eMMC(300A)로부터 호스트(200A)로 전송된다. 따라서, 호스트(200A)는 EXT_CSD 레지스터의 DEVICE_TYPE[196] 필드에 저장된 각 비트(Bit 6 또는 Bit 7)에 기초하여 eMMC 장치(300A)가 DDR 400 모드를 지원하는지를 판단할 수 있다.
도 7은 본 발명의 실시 예에 따른 HS_TIMING과 HS_TIMING 값들을 나타낸다.
EXT_CSD 레지스터의 HS_TIMING[185] 필드는 타이밍 인터페이스(Timing Interface)와 드라이버 스트렝스(Driver Strength)를 선택하기 위해 호스트(200A)에 의해 사용된다. 본 발명의 실시 예에 따라 HS_TIMING[185] 필드에는 "0x3"가 추가된다.
만일, 호스트(200A)가 HS_TIMING[185] 필드를 "1"로 설정하면, eMMC 장치 (300A)는 eMMC 장치(300A)의 타이밍을 고속 인터페이스 타이밍(high speed interface timing)으로 변경한다. 만일, 호스트(200A)가 HS_TIMING[185] 필드를 "2"로 설정하면, eMMC 장치 (300A)는 eMMC 장치(300A)의 타이밍을 HS 200 인터페이스 타이밍으로 변경한다.
만일, 호스트(200A)가 HS_TIMING[185] 필드를 "3"으로 설정하면, eMMC 장치 (300A)는 eMMC 장치(300A)의 타이밍을 DDR 400 인터페이스 타이밍으로 변경한다. DDR 400 인터페이스 타이밍의 일 실시 예는 도 8부터 도 11에 도시된 바와 같다.
즉, 호스트(200A)는 SWITCH 명령(CMD6)을 이슈잉(issuing)하여 EXT_CSD 레지스터의 HS_TIMING[185] 필드에 DDR 400 비트와 드라이버 스트렝스 값을 설정한다.
도 8은 본 발명의 실시 예에 따른 DDR 400 장치 입력 타이밍(device input timing) 도를 나타내고, 도 9는 도 8에 도시된 DDR 400 장치 입력 타이밍 도에 도시된 파라미터들을 포함하는 테이블을 나타낸다.
도 10은 본 발명의 실시 예에 따른 DDR 400 장치 출력 타이밍 도를 나타내고, 도 11은 도 10에 도시된 DDR 400 장치 출력 타이밍 도에 도시된 파라미터들을 포함하는 테이블을 나타낸다.
도 1부터 도 11을 참조하면, DDR 400 모드에서 eMMC 패드들(33과 34)을 기준으로 볼 때, 리턴 클락 신호(RCLK)의 에지와 출력 데이터(DAT[7:0] OUTPUT)의 에지는 서로 동기된다.
리턴 클락 생성기(333A와 333B, 집합적으로 333)는 클락 신호(CLK)를 일정시간 지연시켜 출력 데이터(DAT[7:0] OUTPUT)와 동기된 리턴 클락 신호(RCLK)를 생성한다. 따라서, eMMC 장치(300A)는 출력 데이터(DAT[7:0] OUTPUT)와 리턴 클락 신호 (RCLK) 사이의 스큐(skew)를 감소시킬 수 있으므로, 데이터 유효 윈도우(data valid window)는 확보될 수 있다.
tRQ와 tRQH는 호스트(200A)로 출력되는 병렬 데이터(DAT[7:0])에 대한 AC 타이밍 파라미터(AC timing parameter)로써 출력 데이터(DAT[7:0] OUTPUT)와 리턴 클락 신호(RCLK) 사이의 스큐(skew)를 정의한다.
tRQ는 출력 홀드 스큐(output hold skew)를 의미하고, tRQH는 출력 홀드 시간(output hold time)을 의미한다.
tRQ는 리턴 클락 신호(RCLK)의 에지가 발생하기까지 데이터를 유지해야 하는 제약 사항이고, tRQH는 리턴 클락 신호(RCLK)의 에지가 발생한 후 데이터를 언제까지 정상 데이터로 만들어줘야 하는 제약 사항이다.
VIH는 입력 하이 전압(input HIGH voltage)을 의미하고, VIL은 입력 로우 전압(input LOW voltage)을 의미한다.
도 10에 도시된 바와 같이, DDR 400 모드에서, 리턴 클락 신호(RCLK)는 데이터를 읽기 위해, 예컨대 블록 지향의 데이터 리드(block oriented data read) 또는 CRC 상태 응답 리드(CRC status response read)를 위해 사용된다. 데이터 라이트 동작 동안 또는 eMMC 장치(300A)가 데이터를 호스트(200A)로 출력하지 않는 동안, 리턴 클락 신호(RCLK)의 값은 하이-임피이던스(High-Z) 상태를 유지할 수 있다.
DDR 400 모드의 데이터 리드 동작 동안, 리턴 클락 신호(RCLK)는 데이터 유효 구간(data valid period) 동안 토글된다.
예컨대, eMMC 장치(300A)는 리턴 클락 신호(RCLK)의 방향(direction)을 설정할 수 있다. 또한, eMMC 장치(300A)는 리턴 클락 신호(RCLK)의 디폴트 레벨을 풀-다운으로 설정할 수 있다.
도 12는 본 발명의 실시 예에 따라, Extended CSD 레지스터의 VENDOR_SPECIFIC_FIELD 필드에 저장되고 DDR 400 모드에서의 클락 신호의 최대 동작 주파수에 대한 정보를 나타낸다.
도 1과 도 12를 참조하면, EXT_CSD 레지스터(371)의 VENDOR_SPECIFIC_FIELD 필드, 예컨대 CSD 슬라이스(CSD slice)[122]에는 DDR 400 모드에서 eMMC 장치(300A)가 지원할 수 있는 클락 신호(CLK)의 최대 동작 주파수에 대한 정보가 저장된다.
예컨대, 호스트(200A)는 클락 신호(CLK)의 최대 동작 주파수에 대한 정보를 요구하는 명령(CMD)을 eMMC 장치(300A)로 전송하고, eMMC 장치(300A)는 EXT_CSD 레지스터(371)의 VENDOR_SPECIFIC_FIELD 필드, CSD 슬라이스[122]에 저장된 정보를 호스트(200A)로 전송한다.
따라서, 호스트(200A)의 처리 장치(212)는 CSD 슬라이스[122]에 저장된 정보를 해석하고 해석의 결과에 따라 최대 동작 주파수 제어 신호(Fmax)를 클락 생성기 (210)로 전송한다. 따라서, 클락 생성기(210)는 도 12에 도시된 각 타입(Type 0~Type 4)에 대응되는 최대 동작 주파수(52MHz, 100MHz, 133MHz, 166MHz, 또는 200MHz)를 갖는 클락 신호(CLK)를 생성하고, 생성된 클락 신호(CLK)를 eMMC 장치 (300A)로 전송한다.
도 13은 본 발명의 실시 예에 따라, EXT_CSD 레지스터의 VENDOR_SPECIFIC_FIELD 필드에 저장되고 DDR 400 모드에서 EXTRA IO FIELD 필드의 정의를 나타낸다.
도 1과 도 13을 참조하면, EXT_CSD 레지스터(371)의 VENDOR_SPECIFIC_FIELD 필드, 예컨대 CSD 슬라이스[120]에는 DDR 400 모드의 데이터 리드 동작에서 eMMC 장치(300A)의 특성, 예컨대 상보 클락 신호(nCLK)에 대한 지원 여부, 상보 리턴 클락 신호(nRCLK)에 대한 지원 여부, 및 기준 전압(VREF)에 대한 지원 여부를 나타내는 정보가 저장된다.
예컨대, 호스트(200A)는 본 발명의 실시 예에 따라 추가된 DDR 400 모드의 데이터 리드 동작에서 추가된 신호들(nCLK, nRCLK, 및 VREF) 각각의 지원 여부에 대한 정보를 요구하는 명령(CMD)을 eMMC 장치(300A)로 전송하고, eMMC 장치(300A)는 EXT_CSD 레지스터(371)의 VENDOR_SPECIFIC_FIELD 필드, 예컨대 CSD 슬라이스 [120]에 저장된 정보를 호스트(200A)로 전송한다.
호스트(200A)는 CSD 슬라이스 [120]에 저장된 정보를 해석하고 해석의 결과에 따라 EXT_CSD 레지스터(371)의 VENDOR_SPECIFIC_FIELD 필드, 예컨대 CSD 슬라이스[120]의 각 비트(Bit 4, Bit 5, 및 Bit 6)를 SWITCH 명령(CMD6)을 이용하여 설정한다.
EXTRA IO FIELD 필드에 설정된 각 비트(Bit 0~Bit 3, 및 Bit 4~Bit6)에 따라, 호스트(200A 또는 200B) 또는 eMMC 장치(300A 또는 300B)는 전술한 실시 예 1~실시 예 9 중에서 어느 하나 또는 도 15와 도 16을 참조하여 설명될 실시 예 10~실시 예 18 중에서 어느 하나를 수행할 수 있다.
도 14는 본 발명의 실시 예에 따른 eMMC 인터페이스의 신호들을 나타낸다.
도 14는 도 1부터 도 13을 참조하여 설명된 또는 도 15를 참조하여 설명될 각 신호의 이름, 종류, 및 설명을 나타낸다. 이때, nCLK와 CLK_n은 동일한 신호이고, nRCLK와 RCLK_n은 동일한 신호이다.
도 15는 본 발명의 다른 실시 예에 따른 eMMC 시스템의 블록도를 나타낸다.
도 15를 참조하면, eMMC 시스템(100B)은 호스트(200B)와 장치(300B), 예컨대 eMMC 장치(300B)를 포함한다.
처리 회로(213)와 기준 전압(VREF)을 생성하는 기준 전압 생성기의 구현 위치를 제외하면, 도 1에 도시된 eMMC 시스템(100A)의 구조와 기능은 도 15에 도시된 eMMC 시스템(100B)의 구조와 기능과 실적으로 동일하다.
즉, 도 1의 eMMC 시스템(100A)에서는 호스트(200A)가 기준 전압(VREF)을 eMMC 장치(300A)로 공급하나, 도 15의 eMMC 시스템(100B)에서는 eMMC 장치(300B)가 호스트(200B)로 기준 전압(VREF)을 공급한다.
이에 따라, 도 15의 처리 회로(213)가 호스트 기준 전압 인에이블 신호 (VREF_ON)를 생성하지 않는 것을 제외하면, 도 15의 처리 회로(213)의 기능과 도 1의 처리 회로(212)의 기능은 실질적으로 동일하다.
도 16은 도 15에 도시된 eMMC 시스템의 일부를 나타낸다.
도 15와 도 16을 참조하면, 호스트 입출력 블록(250B)은 차동 클락 생성기 (252), 차동 증폭기들, 제2선택 회로(83), 수신기(65), 및 호스트 패드들(21~26-2)을 포함한다.
수신기(65)는 구성 요소들(35, 105-1, 및 25)을 통하여 입력된 기준 전압 (VREF)을 수신한다. eMMC 장치(300B)로부터 출력된 기준 전압(VREF)은 기준 전압 라인(105-1)을 통하여 호스트(200B)로 공급된다.
제2선택 회로(83)는, 제2선택 신호(HSE)에 응답하여, 상보 리턴 클락 채널 (104-1)을 통하여 입력된 신호(nRCLK 또는 DC 레벨을 갖는 nRCLK)와 수신기(65)로부터 출력된 기준 전압(VREF) 중에서 어느 하나를 차동 증폭기(64)의 (-) 입력 단자로 출력한다.
호스트 차동 증폭 인에이블 신호(VEN)에 기초하여 차동 증폭기(64)는 리턴 클락 채널(104)을 통하여 입력된 신호(RCLK 또는 DC 레벨을 갖는 RCLK)와 제2선택 회로(83)의 출력 신호의 차이를 증폭하거나 또는 리턴 클락 채널(104)을 통하여 입력된 신호(RCLK 또는 DC 레벨을 갖는 RCLK)를 증폭한다.
eMMC 입출력 블록(320B)은 eMMC 패드들(31~36-2), 제3선택 회로(93), 차동 증폭기들, 차동 리턴 클락 생성기(322-1)의 일부, 드라이버(75), 및 기준 전압 생성기(321)를 포함한다.
기준 전압 생성기(321)는, 데이터 입출력 제어 유닛(337B)으로부터 출력된 eMMC 기준 전압 인에이블 신호(eVREF_ON)에 응답하여, 호스트(200B)로부터 공급된 입출력 동작 전압들(VCCQ와 VSSQ)을 이용하여 기준 전압(VREF)을 생성할 수 있다.
즉, 기준 전압 생성기(321)는 기준 전압 인에이블 신호(eVREF_ON)의 활성화 여부에 따라 인에이블 또는 디스에이블된다. 디스에이블된 기준 전압 생성기(321)는 DC 레벨, 예컨대 접지 전압(VSSQ)의 레벨을 갖는 기준 전압(VREF)을 생성한다.
드라이버(75)는 기준 전압 생성기(321)로부터 출력된 기준 전압(VREF)을 구동한다.
도 15에 도시된 eMMC 시스템(100B)은 동작 모드와 도 13에 도시된 EXT_CSD 레지스터의 VENDOR_SPECIFIC_FIELD 필드, 예컨대 EXTRA IO FIELD 필드에 저장되는 정보, 예컨대 각 비트(Bit 0~Bit 3, 및 Bit 4~Bit 6)의 설정 값에 따라, eMMC 시스템 (100B)의 동작 방법들은 다음과 같다.
실시예 10: nCLK, RCLK, nRCLK, 및 VREF를 사용하지 않는 경우
첫 번째, eMMC 장치(300A)가 DDR 400 모드를 사용하지 않고 도 13에 도시된 각 비트(Bit 0~Bit 3, 및 Bit 4~Bit 6)가 "0"로 설정되어 있을 때, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로(212)는 각 인에이블 신호(DEC와 VEN)를 비활성화시킨다. 이때, 명령(CMD)은 데이터 라이트 명령 또는 데이터 리드 명령일 수 있다.
또한, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛(337B)은 각 인에이블 신호(DIFF_EN, eVEN, RCLK_EN, nRCLK_EN, READ_EN, 및 eVREF_ON)를 비활성화시킨다.
디스에이블된 기준 전압 생성기(321)는 DC 레벨, 예컨대 접지 전압(VSSQ)의 레벨을 갖는 기준 전압(VREF)을 생성한다.
두 번째, eMMC 장치(300A)가 DDR 400 모드에서 데이터 라이트 동작을 수행할 때, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로(213)는 각 인에이블 신호(DEC와 VEN)를 비활성화시킨다,
또한, 명령(CMD), 예컨대 데이터 라이트 명령과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛(337B)은 각 인에이블 신호 (DIFF_EN, eVEN, RCLK_EN, nRCLK_EN, READ_EN, 및 eVREF_ON)를 비활성화시킨다.
실시 예 11: RCLK만 사용하는 경우
eMMC 장치(300B)가 DDR 400 모드에서 데이터 리드 동작을 수행하고 도 13에 도시된 각 비트(Bit 0~Bit 3, 및 Bit 4~Bit 6)가 "0"로 설정되어 있을 때, 명령 (CMD), 예컨대 데이터 라이트 명령과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로 (213)는 각 인에이블 신호(DEC와 VEN)를 비활성화시킨다.
또한, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛(337B)은 각 인에이블 신호(DIFF_EN, eVEN, nRCLK_EN, 및 eVREF_ON)를 비활성화시키고 각 인에이블 신호(RCLK_EN와 READ_EN)를 활성화시킨다. 따라서, 리턴 클락 신호(RCLK)는 리턴 클락 버스(104)를 통하여 호스트(200A)로 공급된다.
실시 예 12: RCLK와 VREF을 사용하는 경우
eMMC 장치(300B)가 DDR 400 모드에서 데이터 리드 동작을 수행하고 도 13에 도시된 각 비트(Bit 2와 Bit 6)가 "1"로 설정되어 있을 때, 명령(CMD), 예컨대 데이터 라이트 명령과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로(213)는 호스트 차동 클락 인에이블 신호(DEC)를 비활성화시키고 호스트 차동 증폭 인에이블 신호(VEN)를 활성화시킨다.
또한, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛(337B)은 각 인에이블 신호(DIFF_EN과 nRCLK_EN)를 비활성화시키고 각 인에이블 신호(eVEN, RCLK_EN, READ_EN, 및 eVREF_ON)를 활성화시킨다.
이때, 처리 회로(213)는 제2레벨을 갖는 제2선택 신호(HSE)를 생성하고, 데이터 입출력 제어 유닛(337B)은 제1레벨과 제2레벨 중 어느 하나를 갖는 제3선택 신호(SE)를 생성한다.
기준 전압 생성기(321)는 호스트(200B)로부터 공급된 입출력 동작 전압들 (VCCQ와 VSSQ)에 기초하여 기준 전압(VREF)을 생성하고, 드라이버(75)는 기준 전압 생성기(321)로부터 출력된 기준 전압(VREF)을 구성 요소들(35, 105-1, 및 25)을 통하여 수신기(65)로 전송한다.
실시 예 13: RCLK와 nCLK을 사용하는 경우
eMMC 장치(300B)가 DDR 400 모드에서 데이터 리드 동작을 수행하고 도 13에 도시된 각 비트(Bit 0과 Bit 4)가 "1"로 설정되어 있을 때, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로(213)는 호스트 차동 클락 인에이블 신호(DEC)를 활성화시키고 호스트 차동 증폭 인에이블 신호 (VEN)를 비활성화시킨다.
또한, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛(337B)은 각 인에이블 신호(eVEN, nRCLK_EN, 및 eVREF_ON)를 비활성화시키고 각 인에이블 신호(DIFF_EN, RCLK_EN, 및 READ_EN)를 활성화시키다.
실시 예 14: RCLK와 nRCLK를 사용하는 경우
eMMC 장치(300B)가 DDR 400 모드에서 데이터 리드 동작을 수행하고 도 13에 도시된 각 비트(Bit 1과 Bit 5)가 "1"로 설정되어 있을 때, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로(213)는 각 인에이블 신호(DEC와 VEN)를 비활성화시킨다.
또한, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛(337B)은 각 인에이블 신호(DIFF_EN, eVEN, 및 eVREF_ON)를 비활성화시키고 각 인에이블 신호(RCLK_EN, nRCLK_EN, 및 READ_EN)를 활성화시킨다.
이때, 처리 회로(213)는 제1레벨을 갖는 제2선택 신호(HSE)를 생성하고, 데이터 입출력 제어 유닛(337B)은 제1레벨 또는 제2레벨을 갖는 제3선택 신호(SE)를 생성한다.
실시 예 15: RCLK, nCLK, 및 VREF를 사용하는 경우
eMMC 장치(300B)가 DDR 400 모드에서 데이터 리드 동작을 수행하고 도 13에 도시된 각 비트(Bit 0, Bit 2, Bit 4, 및 Bit 6)가 "1"로 설정되어 있을 때, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로 (213)는 각 인에이블 신호(DEC와 VEN)를 활성화시킨다.
또한, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛(337B)은 상보 리턴 클락 인에이블 신호(nRCLK_EN)를 비활성화시키고 각 인에이블 신호(DIFF_EN, eVEN, RCLK_EN, READ_EN, 및 eVREF_ON)를 활성화시킨다.
이때, 처리 회로(213)는 제2레벨을 갖는 제2선택 신호(HSE)를 생성하고, 데이터 입출력 제어 유닛(337A)은 제1레벨 또는 제2레벨을 갖는 제3선택 신호(SE)를 생성한다.
실시 예 16: RCLK, nRCLK, 및 VREF를 사용하는 경우
eMMC 장치(300B)가 DDR 400 모드에서 데이터 리드 동작을 수행하고 도 13에 도시된 각 비트(Bit 1, Bit 2, Bit 5, 및 Bit 6)가 "1"로 설정되어 있을 때, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로 (213)는 호스트 차동 클락 인에이블 신호(DEC)를 비활성화시키고 호스트 차동 증폭 인에이블 신호(VEN)를 활성화시킨다.
또한, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛(337B)은 eMMC 차동 클락 인에이블 신호(DIFF_EN)를 비활성화시키고 각 인에이블 신호(eVEN, RCLK_EN, nRCLK_EN, READ_EN, 및 eVREF_ON)를 활성화시킨다.
이때, 처리 회로(213)는 제1레벨 또는 제2레벨을 갖는 제2선택 신호(HSE)를 생성하고, 데이터 입출력 제어 유닛(337B)은 제2레벨을 갖는 제3선택 신호(SE)를 생성한다.
실시 예 17: RCLK, nRCLK, 및 nCLK를 사용하는 경우
MMC 장치(300B)가 DDR 400 모드에서 데이터 리드 동작을 수행하고 도 13에 도시된 각 비트(Bit 0, Bit 1, Bit 4, 및 Bit 5)가 "1"로 설정되어 있을 때, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로 (213)는 호스트 차동 증폭 인에이블 신호(VEN)를 비활성화시키고 호스트 차동 클락 인에이블 신호(DEC)를 활성화시킨다.
또한, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛(337B)은 각 인에이블 신호(eVEN과 eVREF_ON)를 비활성화시키고 각 인에이블 신호(DIFF_EN, RCLK_EN, nRCLK_EN, 및 READ_EN)를 활성화시킨다.
이때, 처리 회로(213)는 제1레벨을 갖는 제2선택 신호(HSE)를 생성하고, 데이터 입출력 제어 유닛(337B)은 제1레벨을 갖는 제3선택 신호(SE)를 생성한다.
실시 예 18: RCLK, nRCLK, nCLK, 및 VREF를 사용하는 경우
MMC 장치(300B)가 DDR 400 모드에서 데이터 리드 동작을 수행하고 도 13에 도시된 각 비트(Bit 0, Bit 1, Bit 2, Bit 4, Bit 5, 및 Bit 6)가 "1"로 설정되어 있을 때, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 처리 회로(213)는 각 인에이블 신호(DEC와 VEN)를 활성화시킨다.
또한, 명령(CMD)과 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 기초하여 데이터 입출력 제어 유닛(337B)은 각 인에이블 신호(DIFF_EN, eVEN, RCLK_EN, nRCLK_EN, READ_EN, 및 eVREF_ON)를 활성화시킨다.
이때, 처리 회로(213)는 제1레벨 또는 제2레벨을 갖는 제2선택 신호(HSE)를 생성하고, 데이터 입출력 제어 유닛(337B)은 제1레벨 또는 제2레벨을 갖는 제3선택 신호(SE)를 생성한다.
도 17은 도 15에 도시된 eMMC 호스트 인터페이스의 내부 블록도를 나타낸다.
데이터 입출력 제어 유닛(337B)의 동작을 제외하면, 도 3에 도시된 데이터 입출력 제어 유닛(337A)의 구조와 기능은 도 17에 도시된 데이터 입출력 제어 유닛 (337B)의 기능은 실질적으로 동일하다.
즉, 데이터 입출력 제어 유닛(337B)은, 호스트 명령 디코딩 유닛(335), eMMC 상태 제어 유닛(339), 및/또는 도 13에 도시된 EXTRA IO FIELD 필드에 저장된 값들에 따라, 인에이블 신호들(DIFF_EN, RCLK_EN, nRCLK_EN, READ_EN, eVREF_ON, 및 eVEN) 각각의 활성화 또는 비활성화를 제어할 수 있다.
도 18a와 도 18b는 도 1 또는 도 15에 도시된 eMMC 시스템의 동작을 설명하기 위한 플로우차트이다.
도 1부터 도 18b를 참조하면, 호스트(200A 또는 200B, 집합적으로 200)는 eMMC 장치(300A 또는 300B, 집합적으로 300)에 대한 통상적인 초기화가 종료되었는지를 확인하고(S110), CMD7을 통하여 eMMC 장치(300)를 선택한다(S115). 호스트 (200)는 CMD42를 사용하여 eMMC 장치(300)가 언락(unlock) 되었는지를 확인한다 (S120). S110부터 S120에 따른 eMMC 시스템(100A 또는 100B, 집합적으로 100)의 동작은 JESD84-B451과 같다.
즉, 호스트(200)가 eMMC 장치(300)를 초기화한 후, 호스트(200)는 EXT_CSD 레지스터(371)의 DEVICE_TYPE[196]를 읽어서 eMMC 장치(300)가 DDR 400 모드를 지원하는지를 검증해야 한다.
호스트(200)는 SEND_EXT_CSD 명령(CMD8)을 이슈잉(issuing)하여 EXT_CSD 레지스터(371)에 저장된 값을 읽는다(S125).
이때, 호스트(200)는 도 6에 도시된 EXT_CSD 레지스터(371)의 DEVICE_TYPE[196]에 저장된 정보, 예컨대 각 비트(Bit 6 또는 Bit 7)를 이용하여 eMMC(300)가 고속 DDR 400 모드를 지원하는지의 여부를 판단한다(S130).
eMMC(300)가 고속 DDR 400 모드를 지원하지 않을 때 또는 DDR 400 모드의 데이터 라이트 동작을 수행할 때, eMMC(300)는 실시 예 1 또는 실시 예 10과 같이 고속 DDR 400 모드로 스위치할 수 없다(S131).
그러나, eMMC(300)가 고속 DDR 400 모드를 지원할 때, 호스트(200)는 EXT_CSD 레지스터(371)의 VENDOR_SPECIFIC_FIELD 필드에 저장되고 DDR 400 모드에서의 클락 신호(CLK)의 최대 동작 주파수를 읽는다(S135). 상기 DDR 400 모드에서의 클락 신호(CLK)의 최대 동작 주파수에 대한 정보는 도 12에 도시된 바와 같다.
호스트(200)는 클락 신호(CLK)의 최대 동작 주파수에 대한 정보에 따라 생성된 최대 동작 주파수 제어 신호(Fmax)를 이용하여 클락 신호(CLK)의 주파수를 변경 또는 설정한다(S140).
그 후, 호스트(200)는 EXT_CSD 레지스터(371)의 VENDOR_SPECIFIC_FIELD 필드에 저장되고 DDR 400 모드에서의 EXTRA IO FIELD 필드의 정보를 읽는다(S145).
호스트(200)는, 도 13에 도시된 EXTRA IO FIELD 필드의 각 비트(Bit 0~Bit 3)의 값이 데이터 0 또는 데이터 1로 설정되었는지에 따라, eMMC 장치(300)가 차동 클락 신호(CLK와 nCLK, 및/또는 RCLK와 nRCLK) 또는 기준 전압(VREF)을 지원하는지를 판단한다(S150).
만일, EXTRA IO FIELD 필드의 각 비트(Bit 0~Bit 3)의 값이 모두 데이터 0으로 설정되어 있을 때, 호스트(200)는 SWITCH 명령(CMD6)을 이용하여 EXT_CSD 레지스터(EXT_CSD_REG)의 EXTRA IO FIELD 필드의 각 비트(Bit 4~Bit 6)의 값을 데이터 0으로 설정한다(160).
따라서, eMMC 장치(300)는 실시 예 2 또는 실시 예 11과 같이 리턴 클락 신호(RCLK)만을 지원하는 고속 DDR 400 모드를 수행할 수 있다(S161).
그러나, EXTRA IO FIELD 필드의 각 비트(Bit 0~Bit 3)의 값 중에서 적어도 하나가 데이터 1로 설정되어 있을 때, 호스트(200)는 보상 신호들(nCLK, nRCLK, 및 VREF) 중의 적어도 하나를 이용하여 DDR 400 모드를 수행할지는 판단한다(S165).
만일, EXTRA IO FIELD 필드의 비트들(Bit 0과 Bit 2, Bit 1과 Bit 2, 또는 Bit 0~Bit 3)의 값들이 모두 데이터 1로 설정되어 있을 때, 호스트(200)는 SWITCH 명령(CMD6)을 이용하여 EXT_CSD 레지스터(EXT_CSD_REG)의 EXTRA IO FIELD 필드의 비트들(Bit 4와 Bit 6, Bit 5과 Bit 6, 또는 Bit 4~Bit 6)의 값들 데이터 1로 설정한다(170).
따라서, eMMC 장치(300)는 실시 예 6, 실시 예 7, 실시 예 9, 실시 예 15, 실시 예 16, 또는 실시 예 18과 같이 적어도 하나의 상보 클락 신호(nCLK와 nRCLK), 리턴 클락 신호(RCLK), 및 기준 전압(VREF)을 지원하는 고속 DDR 400 모드를 수행할 수 있다(S171).
만일, EXTRA IO FIELD 필드의 비트(Bit 2)의 값이 데이터 1로 설정되어 있을 때, 호스트(200)는 SWITCH 명령(CMD6)을 이용하여 EXT_CSD 레지스터(EXT_CSD_REG)의 EXTRA IO FIELD 필드의 비트(Bit 6)의 값을 데이터 1로 설정한다(175).
따라서, eMMC 장치(300)는 실시 예 3 또는 실시 예 12과 같이 기준 전압 (VREF)과 리턴 클락 신호(RCLK)를 지원하는 고속 DDR 400 모드를 수행할 수 있다(S176).
만일, EXTRA IO FIELD 필드의 적어도 하나의 비트(Bit 0과 Bit 1)의 값이 데이터 1로 설정되어 있을 때, 호스트(200)는 SWITCH 명령(CMD6)을 이용하여 EXT_CSD 레지스터(EXT_CSD_REG)의 EXTRA IO FIELD 필드의 적어도 하나의 비트(Bit 4와 Bit 5)의 값을 데이터 1로 설정한다(180).
따라서, eMMC 장치(300)는 실시 예 4, 실시 예 5, 실시 예 8, 실시 예 13, 실시 예 14, 또는 실시 예 17과 같이 적어도 하나의 상보 클락 신호(nCLK와 nRCLK)와 리턴 클락 신호(RCLK)를 지원하는 고속 DDR 400 모드를 수행할 수 있다(S181).
본 발명의 실시 예에 따른 eMMC 장치(300)는 DDR 400 모드로 진입하기 전까지 또는 DDR 400 모드의 데이터 라이트 동작 동안, 본 발명의 실시 예에 따라 추가된 신호들(nCLK, RCLK, nRCLK, 및 VREF) 각각의 레벨을 특정한 레벨, 예컨대 입출력 동작 전압(VCCQ)의 레벨 또는 접지 전압(VSSQ)의 레벨로 유지하여 호스트(200) 또는 eMMC 장치(300)의 오동작을 방지할 수 있다.
예컨대, DDR 400 모드로 진입하기 전까지 또는 DDR 400 모드의 데이터 라이트 동작 동안, 호스트(200) 또는 eMMC 장치(300)의 오동작을 방지하기 위해, eMMC 장치(300)의 데이터 입출력 제어 유닛(337A 또는 33B)은 명령(CMD) 및/또는 EXT_CSD 레지스터의 값에 기초하여 각 인에이블 신호 (VEN, RCLK_EN, nRCLK_EN, READ_EN, 및 eVREF_ON)를 비활성화시킬 수 있다.
또한, DDR 400 모드로 진입하기 전까지 또는 DDR 400 모드의 데이터 라이트 동작 동안, 호스트(200) 또는 eMMC 장치(300)의 오동작을 방지하기 위해, 호스트 (200)의 처리 회로(212 또는 213)는 각 인에이블 신호(DEC, VEN, 및 VREF_ON)를 비활성화시킬 수 있다.
본 발명은 도면에 도시된 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
100A와 100B; eMMC 시스템
200A와 200B; 호스트
300A와 300B; eMMC 장치
210; 클락 생성기
212와 213; 처리 회로
220; 상태 제어 유닛
230A와 230B; 호스트 컨트롤러
250A와 250B; 호스트 입출력 블록
310A와 310B; 장치 컨트롤러
320A와 320B; eMMC 입출력 블록
330; eMMC 호스트 인터페이스
340: CU
350; 메모리
360; 플래시 인터페이스
370; 플래시 메모리

Claims (30)

  1. 클락 신호를 호스트로부터 수신하기 위한 클락 채널;
    상보 클락 신호를 상기 호스트로부터 수신하기 위한 상보 클락 채널;
    명령을 상기 호스트로부터 수신하거나 응답을 상기 호스트로 전송하기 위한 명령 채널;
    데이터를 상기 호스트로 전송하거나 상기 호스트로부터 수신하기 위한 데이터 채널들;
    상기 호스트로 전송되는 상기 데이터와 동기된 리턴 클락 신호(RCLK)를 상기 호스트로 전송하기 위한 리턴 클락 채널;
    상보 리턴 클락 신호를 상기 호스트로 전송하기 위한 상보 리턴 클락 채널; 및
    기준 전압을 상기 호스트로부터 수신하거나 상기 기준 전압을 상기 호스트로 전송하기 위한 기준 전압 채널을 포함하는 임베디드 멀티미디어 카드(embedded Multimedia Card(eMMC)).
  2. 제1항에 있어서,
    상기 데이터가 상기 호스트로부터 전송된 라이트 데이터일 때,
    상기 리턴 클락 신호와 상기 상보 리턴 클락 신호는 DC 레벨인 eMMC.
  3. 제1항에 있어서,
    상기 데이터가 상기 호스트로 전송되는 리드 데이터일 때,
    상기 리턴 클락 신호와 상기 상보 리턴 클락 신호 중 어느 하나는 토글링하고, 상기 리턴 클락 신호와 상기 상보 리턴 클락 신호 중 다른 하나는 DC 레벨인 eMMC.
  4. 제1항에 있어서,
    상기 데이터가 상기 호스트로 전송되는 리드 데이터일 때,
    상기 리턴 클락 신호와 상기 상보 리턴 클락 신호는 서로 상보적으로 토글링하는 eMMC.
  5. 제1항에 있어서,
    선택 신호에 응답하여, 상기 상보 클락 채널을 통하여 입력된 신호와 상기 기준 전압 중에서 어느 하나를 출력하는 선택 회로;
    상기 클락 신호와 상기 선택 회로의 출력 신호를 수신하는 차동 증폭기; 및
    상기 차동 증폭기의 출력 신호에 응답하여 상기 리턴 클락 신호와 상기 상보 리턴 클락 신호 중에서 적어도 하나를 생성하는 차동 리턴 클락 생성기를 포함하는 eMMC.
  6. 제5항에 있어서, 상기 차동 증폭기는,
    차동 인에이블 신호에 기초하여, 상기 클락 신호와 상기 선택 회로의 상기 출력 신호의 차이를 증폭하거나 상기 클락 신호를 증폭하는 eMMC.
  7. 제5항에 있어서, 상기 차동 리턴 클락 생성기는,
    리드 인에이블 신호에 기초하여, 각각이 DC 레벨을 갖는 상기 리턴 클락 신호와 상기 상보 리턴 클락 신호를 상기 리턴 클락 채널과 상기 상보 리턴 클락 채널 각각으로 전송하는 eMMC.
  8. 제5항에 있어서, 상기 차동 리턴 클락 생성기는,
    리드 인에이블 신호와 전송 인에이블 신호들에 기초하여, 상기 리턴 클락 신호와 상기 상보 리턴 클락 신호 중에서 적어도 하나를 상기 리턴 클락 채널과 상기 상보 리턴 클락 채널 중에서 적어도 하나로 전송하는 eMMC.
  9. 제1항에 있어서, 상기 eMMC는,
    상기 호스트로부터 전송된 입출력 동작 전압에 기초하여 상기 기준 전압을 생성하는 기준 전압 생성기를 더 포함하며,
    상기 기준 전압 생성기는 인에이블 신호에 응답하여 인에이블되거나 디스에이블되는 eMMC.
  10. 제1항에 있어서, 상기 eMMC는,
    입출력 동작 전압 1.2V 또는 1.8V에서 200MHz DDR(dual data rate) 모드를 지원하는지의 여부를 나타내는 정보를 저장하는 Extended CSD 레지스터를 더 포함하며,
    상기 정보는 DEVICE_TYPE[196] 필드에 저장되는 eMMC.
  11. 제1항에 있어서, 상기 eMMC는,
    상기 리턴 클락의 인터페이스 타이밍(interface timing)에 대한 정보를 저장하는 Extended CSD 레지스터를 더 포함하며,
    상기 정보는 HS_TIMING[185] 필드에 저장되는 eMMC.
  12. 제1항에 있어서, 상기 eMMC는,
    상기 클락 신호의 최대 동작 주파수에 대한 정보를 저장하는 Extended CSD 레지스터를 더 포함하며,
    상기 정보는 VENDOR_SPECIFIC_FIELD 필드에 저장되는 eMMC.
  13. 제1항에 있어서, 상기 eMMC는,
    상기 상보 클락 신호, 상보 리턴 클락 신호, 및 상기 기준 전압 각각의 지원 여부를 지시하는 정보를 저장하는 Extended CSD 레지스터를 더 포함하며,
    상기 정보는 VENDOR_SPECIFIC_FIELD 필드에 저장되는 eMMC.
  14. 제1항에 있어서,
    상기 데이터의 상승 에지와 하강 에지 각각은 상기 리턴 클락 신호의 상승 에지와 하강 에지 각각과 서로 동기되는 eMMC.
  15. 임베디드 멀티미디어 카드(embedded Multimedia Card(eMMC))를 제어하는 호스트에 있어서,
    클락 신호를 상기 eMMC로 전송하기 위한 클락 채널;
    상보 클락 신호를 상기 eMMC로 전송하기 위한 상보 클락 채널;
    명령을 상기 eMMC로 전송하거나 응답을 상기 eMMC로부터 수신하기 위한 명령 채널;
    데이터를 상기 eMMC로 전송하거나 상기 eMMC로부터 수신하는 데이터 채널들;
    상기 eMMC로부터 전송되는 상기 데이터와 동기된 리턴 클락 신호(RCLK)를 수신하기 위한 리턴 클락 채널;
    상보 리턴 클락 신호를 상기 eMMC로부터 수신하기 위한 상보 리턴 클락 채널; 및
    기준 전압을 상기 eMMC로 전송하거나 상기 eMMC로부터 수신하기 위한 기준 전압 채널을 포함하는 호스트.
  16. 제15항에 있어서, 상기 호스트는,
    상기 데이터 채널들을 통하여 입력된 상기 데이터를 상기 리턴 클락 신호에 응답하여 래치하는 래치 회로를 더 포함하는 호스트.
  17. 제15항에 있어서, 상기 호스트는,
    선택 신호에 응답하여 상기 클락 신호와 상기 리턴 클락 신호 중에서 어느 하나를 출력하는 선택 회로; 및
    상기 데이터 채널들을 통하여 입력된 상기 데이터를 상기 선택 회로의 출력 신호에 응답하여 래치하는 래치 회로를 더 포함하는 호스트.
  18. 제15항에 있어서,
    인에이블 신호에 응답하여, 상기 클락 신호를 상기 클락 채널을 통하여 출력하고 DC 레벨과 상기 상보 클락 신호 중에서 어느 하나를 상기 상보 클락 채널을 통하여 출력하는 차동 클락 생성기를 더 포함하는 호스트.
  19. 제15항에 있어서,
    선택 신호에 응답하여, 상기 상보 리턴 클락 채널을 통하여 입력된 신호와 상기 기준 전압 채널을 통하여 입력된 신호 중에서 어느 하나를 출력하는 선택 회로; 및
    상기 리턴 클락 신호와 상기 선택 회로의 출력 신호를 수신하는 차동 증폭기를 더 포함하며,
    상기 차동 증폭기는, 인에이블 신호에 응답하여, 상기 리턴 클락 신호와 상기 선택 회로의 출력 신호의 차이를 증폭하거나 상기 리턴 클락 신호를 증폭하는 호스트.
  20. 제15항에 있어서,
    상기 eMMC로 공급될 입출력 동작 전압에 기초하여 상기 기준 전압을 생성하는 기준 전압 생성기를 더 포함하며,
    상기 기준 전압 생성기는 인에이블 신호에 응답하여 인에이블되거나 디스에이블되는 호스트.
  21. 임베디드 멀티미디어 카드(embedded Multimedia Card(eMMC))의 동작 방법에 있어서,
    데이터 라이트 동작 동안, 리턴 클락 신호를 호스트로 전송하기 위한 리턴 클락 채널과 상보 리턴 클락 신호를 상기 호스트로 전송하기 위한 상보 리턴 클락 채널을 통해 DC 신호들을 상기 호스트로 전송하는 단계; 및
    데이터 리드 동작 동안, 상기 리턴 클락 채널과 상기 상보 리턴 클락 채널 중 적어도 하나를 통해 상기 리턴 클락 신호와 상기 상보 리턴 클락 신호 중 적어도 하나를 상기 호스트로 전송하는 단계를 포함하는 eMMC의 동작 방법.
  22. 제21항에 있어서,
    상기 데이터 리드 동작 동안, 상기 리턴 클락 신호의 상승 에지와 하강 에지 각각은 상기 호스트로 전송되는 리드 데이터의 상승 에지와 하강 에지 각각과 동기되는 eMMC의 동작 방법.
  23. 제21항에 있어서, 상기 eMMC의 동작 방법은,
    상기 데이터 리드 동작 동안, 클락 채널을 통해 상기 호스트로부터 수신된 클락 신호와 상보 클락 채널을 통해 상기 호스트로부터 수신된 상보 클락 신호 중 적어도 하나를 이용하여 상기 리턴 클락 신호와 상기 상보 리턴 클락 신호 중에서 적어도 하나를 생성하는 단계를 더 포함하는 eMMC의 동작 방법.
  24. 제21항에 있어서, 상기 eMMC의 동작 방법은,
    상기 데이터 리드 동작 동안, 상기 호스트로부터 공급된 입출력 동작 전압들에 기초하여 기준 전압을 생성하는 단계; 및
    상기 데이터 리드 동작 동안, 생성된 기준 전압을 기준 전압 채널을 통하여 상기 호스트로 전송하는 단계를 더 포함하는 eMMC의 동작 방법.
  25. 제24항에 있어서, 상기 eMMC의 동작 방법은,
    상기 데이터 리드 동작 동안, 상기 기준 전압을 이용하여 리드 데이터를 증폭하는 단계; 및
    증폭된 리드 데이터를 데이터 채널들을 통하여 상기 호스트로 전송하는 단계를 더 포함하는 eMMC의 동작 방법.
  26. 제21항에 있어서, 상기 eMMC의 동작 방법은,
    상기 데이터 리드 동작 동안, 기준 전압 채널을 통해 상기 호스트로부터 기준 전압을 수신하는 단계;
    수신된 기준 전압을 이용하여 리드 데이터를 증폭하는 단계; 및
    증폭된 리드 데이터를 데이터 채널들을 통하여 상기 호스트로 전송하는 단계를 더 포함하는 eMMC의 동작 방법.
  27. 임베디드 멀티미디어 카드(embedded Multimedia Card(eMMC))를 제어하는 호스트의 동작 방법에 있어서,
    데이터 라이트 동작 동안, 클락 채널을 통해 클락 신호를 eMMC로 전송하는 단계; 및
    데이터 리드 동작 동안, 상기 클락 채널을 통해 상기 클락 신호를 상기 eMMC로 전송하고 상보 클락 채널을 통해 상보 클락 신호를 상기 eMMC로 전송하는 단계를 포함하는 호스트의 동작 방법.
  28. 제27항에 있어서, 상기 데이터 리드 동작 동안,
    리턴 클락 채널을 통해 상기 eMMC로부터 리턴 클락 신호를 수신하는 단계;
    입출력 동작 전압들에 기초하여 기준 전압을 생성하고 상기 기준 전압을 기준 전압 채널을 통해 상기 eMMC로 전송하는 단계;
    상기 리턴 클락 신호와 동기된 리드 데이터를 데이터 채널들을 통해 상기 eMMC로부터 수신하는 단계;
    상기 기준 전압을 이용하여 상기 리드 데이터를 증폭하는 단계; 및
    상기 리턴 클락 신호를 이용하여, 증폭된 리드 데이터를 처리하는 단계를 더 포함하는 호스트의 동작 방법.
  29. 제27항에 있어서, 상기 데이터 리드 동작 동안,
    리턴 클락 채널을 통해 상기 eMMC로부터 리턴 클락 신호를 수신하는 단계;
    기준 전압 채널을 통해 상기 eMMC로부터 기준 전압을 수신하는 단계;
    상기 리턴 클락 신호와 동기된 리드 데이터를 상기 eMMC로부터 수신하는 단계;
    상기 기준 전압을 이용하여 상기 리드 데이터를 증폭하는 단계; 및
    상기 리턴 클락 신호를 이용하여, 증폭된 리드 데이터를 처리하는 단계를 더 포함하는 호스트의 동작 방법.
  30. 제27항에 있어서, 상기 데이터 리드 동작 동안,
    리턴 클락 채널을 통해 상기 eMMC로부터 리턴 클락 신호를 수신하는 단계;
    상보 리턴 클락 채널을 통해 상기 eMMC로부터 상보 리턴 클락 신호를 수신하는 단계;
    상기 리턴 클락 신호와 동기된 리드 데이터를 상기 eMMC로부터 수신하는 단계;
    상기 리턴 클락 신호와 상기 상보 리턴 클락 신호의 차이를 증폭하고 증폭된 리턴 클락 신호를 생성하는 단계;
    상기 증폭된 리턴 클락 신호를 이용하여, 상기 리드 데이터를 처리하는 단계를 더 포함하는 호스트의 동작 방법.
KR1020120102468A 2012-09-14 2012-09-14 임베디드 멀티미디어 카드와 이를 제어하는 호스트 KR101977664B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020120102468A KR101977664B1 (ko) 2012-09-14 2012-09-14 임베디드 멀티미디어 카드와 이를 제어하는 호스트
US14/025,879 US9348356B2 (en) 2012-09-14 2013-09-13 Embedded multimedia card (eMMC), host controlling eMMC, and method operating eMMC system
US14/025,886 US9146579B2 (en) 2012-09-14 2013-09-13 Embedded multimedia card (eMMC), host for controlling eMMC method operating eMMC system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120102468A KR101977664B1 (ko) 2012-09-14 2012-09-14 임베디드 멀티미디어 카드와 이를 제어하는 호스트

Publications (2)

Publication Number Publication Date
KR20140035766A true KR20140035766A (ko) 2014-03-24
KR101977664B1 KR101977664B1 (ko) 2019-05-13

Family

ID=50275764

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120102468A KR101977664B1 (ko) 2012-09-14 2012-09-14 임베디드 멀티미디어 카드와 이를 제어하는 호스트

Country Status (2)

Country Link
US (2) US9348356B2 (ko)
KR (1) KR101977664B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190073136A (ko) * 2017-12-18 2019-06-26 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015122027A (ja) * 2013-12-25 2015-07-02 株式会社東芝 半導体システム、半導体部品、及び電源チップ
CN105320973B (zh) * 2014-06-23 2020-04-28 上海永创医疗器械有限公司 一种全自动免疫组化染色仪的数据安全同步方法
US10924113B2 (en) 2017-08-17 2021-02-16 Western Digital Technologies, Inc. Dynamic calibration of frequency and power storage interface
CN107729140B (zh) * 2017-09-22 2020-07-28 华南理工大学 一种并行实现多个eMMC主机接口命令排队功能的装置及方法
US11630480B2 (en) * 2017-10-05 2023-04-18 Intel Corporation System, method, and apparatus for SRIS mode selection for PCIe
US11061431B2 (en) * 2018-06-28 2021-07-13 Micron Technology, Inc. Data strobe multiplexer

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080013156A (ko) * 2006-08-07 2008-02-13 삼성전자주식회사 메모리 카드 시스템, 그것의 데이터 전송 방법, 그리고반도체 메모리 장치
US20110110165A1 (en) * 2007-02-16 2011-05-12 Mosaid Technologies Incorporated Clock mode determination in a memory system

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3832947B2 (ja) 1997-11-14 2006-10-11 富士通株式会社 データ転送メモリ装置
US6779059B2 (en) 2001-08-21 2004-08-17 O2Micro International Limited Reconfigurable flash media reader system
US7370168B2 (en) 2003-04-25 2008-05-06 Renesas Technology Corp. Memory card conforming to a multiple operation standards
KR100577392B1 (ko) 2003-08-29 2006-05-10 삼성전자주식회사 차 신호를 이용하여 멀티미디어 카드의 전송속도를향상시키는 방법 및 장치
US20050097291A1 (en) 2003-10-31 2005-05-05 Infineon Technologies North America Corp. Multiple data rate bus using return clock
US7159064B2 (en) 2003-12-11 2007-01-02 Nokia Corporation Method and device for increasing data transfer in multi-media card
JP2007072922A (ja) 2005-09-09 2007-03-22 Sharp Corp メモリカード用レベルシフタ
US7738307B2 (en) 2005-09-29 2010-06-15 Hynix Semiconductor, Inc. Data transmission device in semiconductor memory device
JP2007219875A (ja) 2006-02-17 2007-08-30 Matsushita Electric Ind Co Ltd データ転送装置
EP2007060B1 (en) 2006-04-05 2015-01-28 Panasonic Corporation Removable memory device, phase synchronizing method, phase synchronizing program, medium recording the same, and host terminal
US7525855B2 (en) 2006-04-24 2009-04-28 Sandisk Corporation Method of high-performance flash memory data transfer
KR100823166B1 (ko) 2006-12-04 2008-04-18 삼성전자주식회사 통신 속도가 향상된 메모리 카드 및 메모리 카드를포함하는 메모리 카드 시스템
JP2008257506A (ja) 2007-04-05 2008-10-23 Renesas Technology Corp 半導体装置
KR100878125B1 (ko) 2007-11-30 2009-01-14 연세대학교 산학협력단 동기화된 더블 데이터 레이트 플래시 메모리 장치, 및 그인터페이스 장치
KR20100068670A (ko) 2008-12-15 2010-06-24 삼성전자주식회사 채널 스큐 보상 기능을 갖는 인터페이스 회로, 이를 구비한통신 시스템 및 채널 스큐 보상 방법
US8307151B1 (en) * 2009-11-30 2012-11-06 Micron Technology, Inc. Multi-partitioning feature on e-MMC
KR101780422B1 (ko) 2010-11-15 2017-09-22 삼성전자주식회사 불휘발성 메모리 장치, 그것의 읽기 방법, 그리고 그것을 포함하는 메모리 시스템
US8811076B2 (en) * 2012-07-30 2014-08-19 Sandisk Technologies Inc. Systems and methods of updating read voltages

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080013156A (ko) * 2006-08-07 2008-02-13 삼성전자주식회사 메모리 카드 시스템, 그것의 데이터 전송 방법, 그리고반도체 메모리 장치
US20110110165A1 (en) * 2007-02-16 2011-05-12 Mosaid Technologies Incorporated Clock mode determination in a memory system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190073136A (ko) * 2017-12-18 2019-06-26 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
CN110045917A (zh) * 2017-12-18 2019-07-23 爱思开海力士有限公司 存储器系统及其操作方法

Also Published As

Publication number Publication date
US9146579B2 (en) 2015-09-29
US20140082405A1 (en) 2014-03-20
US20140082402A1 (en) 2014-03-20
KR101977664B1 (ko) 2019-05-13
US9348356B2 (en) 2016-05-24

Similar Documents

Publication Publication Date Title
KR101984902B1 (ko) 단방향의 리턴 클락 신호를 사용하는 임베디드 멀티미디어 카드, 이를 제어하는 호스트, 및 이들을 포함하는 임베디드 멀티미디어 카드 시스템의 동작 방법
KR101977664B1 (ko) 임베디드 멀티미디어 카드와 이를 제어하는 호스트
KR101852670B1 (ko) I/o 드라이버 송신 스윙 제어
US9772651B2 (en) Embedded multimedia card (eMMC), host controlling eMMC, and method operating eMMC system including the use of a switch command defining an adjustment delay for a data signal
CN110870010B (zh) 在ddr5 dram中调整到锁存路径的指令延迟
KR101978981B1 (ko) 임베디드 멀티미디어 카드(eMMC), 상기 eMMC를 제어하는 호스트, 및 이들을 포함하는 시스템의 동작 방법
JP5300732B2 (ja) 高速シリアルバッファを有するメモリシステム
JP2010508600A (ja) デュアルモードメモリ相互接続を備えたメモリコントローラ
US7961007B2 (en) Receiver to match delay for single ended and differential signals
CN105930290B (zh) 包括用于高速通信的接口电路的系统
KR20150069006A (ko) 저 스윙 전압 모드 구동기
KR101977663B1 (ko) 임베디드 멀티미디어 카드 디바이스 및 그 동작방법
CN106354679B (zh) 用于高速通信的接口电路和包括其的系统
US20140082269A1 (en) EMBEDDED MULTIMEDIA CARD (eMMC), HOST CONTROLLING SAME, AND METHOD OF OPERATING eMMC SYSTEM
KR101978976B1 (ko) 임베디드 멀티미디어 카드(eMMC)와 상기 eMMC를 제어하는 호스트
US20200212903A1 (en) Operation method of signal receiver, pulse width controller, and electronic device including the same
KR20140035767A (ko) 입출력 튜닝 과정을 수행할 수 있는 임베디드 멀티미디어 카드와 그 동작 방법, 및 상기 임베디드 멀티미디어 카드를 제어하는 호스트의 동작 방법
KR20140055120A (ko) 온다이 터미네이션 회로, 이를 포함하는 반도체 메모리 장치 및 메모리 시스템
KR102636148B1 (ko) 신호 수신기의 동작 방법, 펄스 폭 제어기, 및 그것들을 포함하는 전자 장치
US20230006750A1 (en) Multiplexer and serializer including the same
US20220358061A1 (en) Unmatched architecture compensation via digital component delay
KR20140035768A (ko) 임베디드 멀티미디어 카드(eMMC), 상기 eMMC를 제어하는 호스트, 및 이들을 포함하는 시스템의 동작 방법

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant