[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR101984902B1 - 단방향의 리턴 클락 신호를 사용하는 임베디드 멀티미디어 카드, 이를 제어하는 호스트, 및 이들을 포함하는 임베디드 멀티미디어 카드 시스템의 동작 방법 - Google Patents

단방향의 리턴 클락 신호를 사용하는 임베디드 멀티미디어 카드, 이를 제어하는 호스트, 및 이들을 포함하는 임베디드 멀티미디어 카드 시스템의 동작 방법 Download PDF

Info

Publication number
KR101984902B1
KR101984902B1 KR1020120102490A KR20120102490A KR101984902B1 KR 101984902 B1 KR101984902 B1 KR 101984902B1 KR 1020120102490 A KR1020120102490 A KR 1020120102490A KR 20120102490 A KR20120102490 A KR 20120102490A KR 101984902 B1 KR101984902 B1 KR 101984902B1
Authority
KR
South Korea
Prior art keywords
signal
emmc
data
return clock
host
Prior art date
Application number
KR1020120102490A
Other languages
English (en)
Other versions
KR20140035778A (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 KR1020120102490A priority Critical patent/KR101984902B1/ko
Priority to US14/024,655 priority patent/US9535451B2/en
Publication of KR20140035778A publication Critical patent/KR20140035778A/ko
Application granted granted Critical
Publication of KR101984902B1 publication Critical patent/KR101984902B1/ko

Links

Images

Classifications

    • 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/12Synchronisation of different clock signals provided by a plurality of clock generators
    • 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/10Distribution of clock signals, e.g. skew
    • 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 

Landscapes

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

Abstract

단방향의 리턴 클락 신호를 사용하는 임베디드 멀티미디어 카드(eMMC)), 상기 eMMC를 제어하는 호스트, 및 이들을 포함하는 eMMC 시스템의 동작 방법이 개시된다. 본 발명의 eMMC는 호스트로부터 출력된 클락 신호(CLK)를 수신하는 클락 채널; 상기 호스트로부터 출력된 명령(CMD)을 수신하는 명령 채널; 상기 호스트로 데이터(DAT[7:0])를 전송하는 데이터 채널들; 상기 호스트로 상기 데이터와 동기된 리턴 클락 신호(RCLK)를 전송하는 리턴 클락 채널; 및 프로토콜 제어 신호에 따라 상기 리턴 클락 신호를 선택적으로 인에이블하는 리턴 클락 제어 유닛을 포함한다.

Description

단방향의 리턴 클락 신호를 사용하는 임베디드 멀티미디어 카드, 이를 제어하는 호스트, 및 이들을 포함하는 임베디드 멀티미디어 카드 시스템의 동작 방법{EMBEDDED MULTIMEDIA CARD(eMMC) USING UNIDIRECTIONAL RETURN CLOCK SIGNAL, HOST FOR CONTROLLING THE eMMC, AND METHOD FOR OPERATING eMMC SYSTEM INCLUDING THE eMMC AND THE HOST}
본 발명의 개념에 따른 실시 예는 임베디드 멀티미디어 카드((embedded Multimedia Card(eMMC))에 관한 것으로, 특히 고속 인터페이스를 위하여 단방향의 리턴 클락 신호를 사용하는 eMMC, 상기 eMMC를 제어하는 호스트, 및 이들을 포함하는 eMMC 시스템의 동작 방법에 관한 것이다.
멀티미디어 카드(MultiMediaCard(MMC)는 플래시 메모리의 메모리 카드 표준이다.
eMMC는 JEDEC에서 표준으로 정한 내장형 MMC에 대한 표준이다. eMMC 통신은 10개의 신호 버스(10-signal bus)에 기반한다. eMMC은 스마트폰과 같은 이동 통신 장치에 내장되어 사용될 수 있다.
본 발명이 이루고자 하는 기술적인 과제는 단방향의 리턴 클락 신호를 사용하는 새로운 구조의 eMMC에서 상기 리턴 클락 신호를 융통성 있게 운용함으로써 기존 eMMC와 호환성을 가지는 eMMC, 상기 eMMC를 제어하는 호스트, 및 이들을 포함하는 eMMC 시스템의 동작 방법을 제공하는 것이다.
본 발명의 실시 예에 따른 임베디드 멀티미디어 카드(embedded Multimedia Card(eMMC))는 호스트로부터 출력된 클락 신호(CLK)를 수신하는 클락 채널; 상기 호스트로부터 출력된 명령(CMD)을 수신하는 명령 채널; 상기 호스트로 데이터(DAT[7:0])를 전송하는 데이터 채널들; 상기 호스트로 상기 데이터와 동기된 리턴 클락 신호(RCLK)를 전송하는 리턴 클락 채널; 및 프로토콜 제어 신호에 따라 상기 리턴 클락 신호를 선택적으로 인에이블하는 리턴 클락 제어 유닛을 포함한다.
상기 프로토콜 제어 신호는 모드 신호, 상태 신호 및 데이터 종류 신호 중 적어도 하나를 포함할 수 있다.
상기 모드 신호는 DDR 400 모드인지를 나타내는 신호이고, 상기 상태 신호는 데이터 라이트 동작 상태, 데이터 리드 동작 상태 또는 대기 상태를 신호이며, 상기 데이터 종류 신호는 처리되는 데이터가 리드 데이터, 라이트 데이터, 또는 CRC 상태 응답 데이터인지를 나타내는 신호일 수 있다.
상기 리턴 클락 제어 유닛은 상기 프로토콜 제어 신호를 분석하여 리턴 클락 인에이블 신호를 발생하며, 상기 리턴 클락 채널은 상기 리턴 클락 인에이블 신호가 인에이블 상태일 때는 토글링하는 상기 리턴 클락 신호를 상기 호스트로 전송하고, 상기 리턴 클락 인에이블 신호가 디스에이블 상태일 때는 상기 리턴 클락 신호를 플로링시키는 리턴 클락 드라이버를 포함할 수 있다.
상기 리턴 클락 제어 유닛은 상기 eMMC가 DDR 400 모드이고, 플래시 메모리로부터 리드한 데이터를 상기 호스트로 전송하는 동안 상기 리턴 클락 인에이블 신호를 인에이블할 수 있다.
상기 리턴 클락 제어 유닛은 상기 eMMC가 DDR 400 모드이고, 데이터 라이트 동작 중 상기 호스트로부터 수신한 라이트 데이터에 대한 CRC 상태 응답 신호를 상기 호스트로 전송하는 동안 상기 리턴 클락 인에이블 신호를 인에이블할 수 있다.
상기 리턴 클락 제어 유닛은 상기 eMMC가 DDR 400 모드에서 "바지(busy)" 상태인 동안에는 상기 리턴 클락 인에이블 신호를 디스에이블할 수 있다.
본 발명의 실시 예에 따른 임베디드 멀티미디어 카드(embedded Multimedia Card(eMMC))와 호스트를 포함하는 eMMC 시스템의 동작 방법은 상기 eMMC가 클락 채널을 통하여 상기 호스트로부터 입력된 클락 신호(CLK)를 수신하는 단계; 상기 eMMC가 명령 채널을 통하여 명령을 수신하여 디코딩하는 단계; 상기 명령에 상응하는 데이터를 데이터 채널들을 통하여 상기 호스트로 전송하는 단계; 상기 클락 신호를 이용하여 상기 데이터와 동기된 리턴 클락 신호를 생성하는 단계; 및 프로토콜 제어 신호에 따라 상기 리턴 클락 신호를 선택적으로 인에이블하여 리턴 클락 채널을 통하여 상기 호스트로 전송하는 단계를 포함할 수 있다.
상기 eMMC 시스템의 동작 방법은 상기 호스트가 상기 리턴 클락 신호를 이용하여 상기 데이터를 래치하는 단계를 더 포함할 수 있다.
상기 eMMC 시스템의 동작 방법은 상기 호스트가 선택 회로를 이용하여 상기 클락 신호와 상기 리턴 클락 신호 중에서 어느 하나를 출력하는 단계; 및 상기 호스트가 상기 선택 회로의 출력 신호를 이용하여 상기 데이터를 래치하는 단계를 더 포함할 수 있다.
본 발명의 실시 예에 따르면, 단방향의 리턴 클락 신호를 사용하는 새로운 구조의 eMMC에서 상기 리턴 클락 신호를 모드, 상태, 데이터 종류 등에 따라 융통성 있게 운용함으로써 기존 eMMC와 호환성을 가질 수 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 상세한 설명이 제공된다.
도 1은 본 발명의 일 실시 예에 따른 임베디드 멀티미디어 카드(embedded Multimedia Card(eMMC)) 시스템의 블록도를 나타낸다.
도 2는 본 발명의 일 실시 예에 따른 리턴 클락 제어 유닛을 포함하는 도 1에 도시된 eMMC 시스템의 일부를 나타낸다.
도 3은 본 발명의 실시 예에 따른 클락 신호, 리턴 클락 신호, 및 데이터의 파형도를 나타낸다.
도 4는 본 발명의 일 실시예에 따른 eMMC 호스트 인터페이스의 구성 블록도이다.
도 5는 도 2에 도시된 데이터 제어 유닛의 일부를 나타내는 구성 블록도이다.
도 6a는 도 4에 도시된 리턴 클락 제어 유닛의 일 실시예를 나타내는 구성 블록도이다.
도 6b는 도 6a에 도시된 프로토콜 분석 로직의 일 실시예를 나타내는 구성 블록도이다.
도 7은 본 발명의 실시 예에 따른 장치 타입 필드의 정의를 나타낸다.
도 8은 본 발명의 일 실시예에 따른 eMMC의 동작 방법을 나타내는 플로우챠트이다.
도 9a 내지 도 9c는 eMMC의 동작 방법을 나타내는 개략적인 타이밍도이다.
도 10은 본 발명의 다른 실시 예에 따른 eMMC 시스템의 블록도를 나타낸다.
도 11은 도 10에 도시된 eMMC 시스템의 입출력 블록들을 나타낸다.
도 12a와 도 12b는 도 1 또는 도 10에 도시된 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의 용어들과 정의들과 동일하다.
본 발명의 개념에 따른 다양한 실시 예들은, DDR 400 모드의 데이터 리드 동작 동안, 호스트(host)와 장치(device) 사이에서 주고받는 데이터의 전송 속도를 높이고 노이즈 면역성(noise immunity)을 높이기 위해, 기존의 10-와이어 버스(10-wire bus) 이외에 특별한 목적을 수행하기 위해 추가된 적어도 하나의 라인(또는 버스 또는 채널)을 더 포함한다.
본 명세서에서 신호 또는 전압을 전송하는 채널(channel)은 호스트 패드, eMMC 패드, 버스, 라인, 드라이버(실시 예에 따라, 차동 증폭기를 포함), 수신기(실시 예에 따라, 차동 증폭기를 포함), 또는 이들 중에서 적어도 두 개의 조합을 의미할 수 있다.
상기 적어도 하나의 라인의 기능과, 상기 적어도 하나의 라인을 통해 전송되는 신호를 생성하는 회로와 방법이 본 명세서에서 상세히 설명될 것이다.
본 명세서에서는 특별한 의도를 가지고 명시적으로 구분하지 않는 한, 설명의 편의를 위해 기능 회로, 예컨대 버스(bus), 와이어(wire), 패드(또는 핀(pin)), 드라이버(driver), 수신기(receiver), 및/또는 차동 증폭기 등의 전송 지연 (propagation delay)은 고려하지 않는다.
또한, 본 명세서에서는 설명의 편의를 위해, 특별한 의도를 가지고 명시적으로 구분하지 않는 한, 특정한 기능 회로의 입력 신호와 출력 신호 각각은 동일한 명칭을 사용할 수 있다. 예컨대, 도 2에 도시된 바와 같이, 각 기능 회로(54과 44)의 입력 신호(RCLK)의 명칭과 출력 신호(RCLK)의 명칭은 서로 동일할 수 있다.
본 발명의 실시 예에 따른 장치, 예컨대 eMMC는, DDR 400 모드에서 데이터 리드 동작을 수행할 때, 클락 신호에 기초하여 생성된 리턴 클락 신호를 리턴 클락 버스를 통하여 호스트로 전송한다. 이때, 도 3에 도시된 바와 같이, 상기 호스트로 전송되는 상기 리턴 클락 신호의 에지와 데이터의 에지는 서로 동기된다. 상기 호스트는 상기 리턴 클락 신호를 스트로브 신호로서 사용하여 상기 eMMC로부터 출력된 데이터를 안전하게 처리, 예컨대 래치할 수 있는 효과가 있다.
DDR 400 모드에서 데이터 리드 동작, 본 발명의 실시 예에 따른 호스트와 장치는 클락 신호에 의해 발생하는 노이즈(noise)의 영향을 제거 또는 감소시키기 위해 차동 시그널링(differential signaling)을 사용할 수 있다.
또한, DDR 400 모드에서 데이터 리드 동작, 본 발명의 실시 예에 따른 호스트와 장치는 리턴 클락 신호에 의해 발생하는 노이즈의 영향을 제거 또는 감소시키기 위해 차동 시그널링을 사용할 수 있다.
여기서, 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(dual data rate)로 수행될 수 있다.
호스트(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)는 호스트(200A)와 eMMC 장치(300A)에서 사용될 클락 신호 (CLK)를 생성한다. 예컨대, 클락 생성기(210)는 위상 동기 루프(phase locked loop(PLL))로 구현될 수 있다.
처리 회로(212)는 명령(CMD)의 생성, 응답의 해석, 및 플래시 메모리(370)에 저장된 Extended CSD 레지스터(또는 EXT_CDS 레지스터)에 저장된 데이터의 해석과 변경을 수행할 수 있는 하드웨어 또는 소프트웨어(또는 펌웨어)가 내장된 하드웨어를 의미할 수 있다. 처리 회로(212)는 각 구성 요소(component; 210, 220, 및 230A)의 동작을 제어할 수 있다.
상태 제어 유닛(220)은 처리 회로(212)로부터 출력된 제어 신호(CTR)에 응답하여 선택 신호(SEL)를 생성할 수 있다. 다른 실시예에서, 상태 제어 유닛(220)은 디바이스의 동작 모드, 및 처리 데이터의 종류에 따라 선택 신호(SEL)를 생성할 수 있다.
예컨대, 상태 제어 유닛(220)은 디바이스의 동작 모드가 DDR 400 모드이고, 처리 데이터의 종류가 리드 데이터이거나 또는 CRC 상태 응답 데이터인 경우에, 선택 회로(245)가 리턴 클락 신호(RCLK)를 선택하도록 하는 선택 신호(SEL)를 생성할 수 있다.
호스트 컨트롤러(230A)는 데이터 입출력 회로(240)와 호스트 입출력 블록(250A)을 포함한다.
데이터 라이트 동작 동안, 클락 신호(CLK)에 응답하여 데이터 입출력 회로 (240)는 eMMC 장치(300A)의 플래시 메모리(370)에 라이트될 라이트 데이터를 호스트 입출력 블록(250A)으로 전송한다.
DDR 400 모드의 데이터 리드 동작 동안, 선택 회로(245)의 출력 신호(CLK 또는 RCLK)에 응답하여 입출력 회로(240)는 플래시 메모리(370)로부터 출력된 리드 데이터를 호스트 입출력 블록(250A)으로부터 수신한다.
데이터 입출력 회로(240)는 라이트 래치 회로(241)와 리드 래치 회로(243)를 포함한다.
라이트 래치 회로(241)는 제1라이트 래치들(241-O)과 제2라이트 래치들(241-E)을 포함한다.
클락 신호(CLK)의 상승 에지에 응답하여, 제1라이트 래치들(241-O)은 eMMC 장치(300A)에 라이트될 라이트 데이터 중에서 홀수 번째 데이터를 래치한다.
클락 신호(CLK)의 하강 에지에 응답하여, 제2라이트 래치들(241-E)은 상기 라이트 데이터 중에서 짝수 번째 데이터를 래치한다.
리드 래치 회로(243)는 제1리드 래치들(243-O)과 제2리드 래치들(243-E)을 포함한다.
선택 회로(245)의 출력 신호(CLK 또는 RCLK)의 상승 에지에 응답하여, 제1리드 래치들(243-O)은 eMMC 장치(300A)로부터 출력된 리드 데이터 중에서 홀수 번째 데이터를 래치한다.
선택 회로(245)의 출력 신호(CLK 또는 RCLK)의 하강 에지에 응답하여, 제2리드 래치들(243-E)은 상기 리드 데이터 중에서 짝수 번째 데이터를 래치한다.
예컨대, 선택 회로(245)는 멀티플렉서(multiplexer)로 구현될 수 있다. 이때, 상기 멀티플렉서는 제1레벨, 예컨대 로우 레벨을 갖는 선택 신호(SEL)에 응답하여 클락 신호(CLK)를 리드 래치 회로(243)로 전송하고, 상기 멀티플렉서는 제2레벨, 예컨대 하이 레벨을 갖는 선택 신호(SEL)에 응답하여 리턴 클락 신호(RCLK)를 리드 래치 회로(243)로 전송한다.
도 1 및 도 10의 호스트(200A~200B)는 상태 제어 유닛(220)과 선택 회로(245)를 포함하는 것으로 도시되어 있으나, 실시 예에 따라 호스트(200A~200B)에는 상태 제어 유닛(220)과 선택 회로(245)가 구현되지 않을 수 있다. 이때, DDR 400 모드의 데이터 리드 동작 동안, 리턴 클락 신호(RCLK)는 직접 리드 래치 회로(243)로 입력될 수 있다.
즉, 리턴 클락 신호(RCLK)의 상승 에지에 응답하여 제1리드 래치들(243-O)은 eMMC 장치(300A)로부터 출력된 리드 데이터 중에서 홀수 번째 데이터를 래치하고, 리턴 클락 신호(RCLK)의 하강 에지에 응답하여 제2리드 래치들(243-E)은 상기 리드 데이터 중에서 짝수 번째 데이터를 래치한다.
도 1에 도시된 eMMC 버스는 11개의 버스(또는, 11개의 통신 라인들)(101, 102, 103, 및 104)를 포함한다. 11개의 버스(101, 102, 103, 및 104)는 클락 신호 (101)를 전송하는 단방향(unidirectional) 클락 버스(101), 명령(CMD)과 응답을 전송하는 양방향(bidirectional) 명령 버스(102), 데이터(DAT[7:0])를 전송하는 양방향 데이터 버스(103), 및 리턴 클락 신호(RCLK)를 전송하는 단방향 리턴 클락 버스 (104)를 포함한다.
즉, eMMC 시스템(100A)은 DDR 400 모드에서 데이터 리드 동작의 전송 속도를 높이고 전체 데이터의 처리량(throughput)을 증가시키기 위해 리턴 클락 신호 (RCLK)를 이용한다.
호스트(200A)는 리셋 라인을 통하여 하드웨어 리셋 신호(Reset)를 eMMC 장치 (300A)로 전송한다.
호스트(200A)는 각 입출력 블록(250A와 320A)에서 사용될 입출력 동작 전압들(VCCQ와 VSSQ)을 생성하고, 입출력 동작 전압들(VCCQ와 VSSQ)을 파워 라인들을 통하여 eMMC 장치(300A)로 전송한다. 이때, 각 입출력 블록(250A와 320A)에 구현된 드라이버(실시 예에 따라, 차동 증폭기를 포함)와 수신기(실시 예에 따라 차동 증폭기를 포함)는 입출력 동작 전압들(VCCQ와 VSSQ)을 동작 전압들로서 사용한다.
호스트(200A)는 플래시 메모리(370)로 공급될 코어 동작 전압들(VCC와 VSS)을 생성하고, 코어 동작 전압들(VCC와 VSS)을 코어 파워 라인들을 통하여 eMMC 장치(300A)로 전송한다. 이때, VSSQ와 VSS는 접지 전압이다.
각 eMMC 시스템(100A~100B)에서, 리셋 신호(Reset), 입출력 동작 전압들 (VCCQ와 VSSQ), 및 코어 동작 전압들(VCC와 VSS)은 각 호스트(200A)로부터 각 eMMC 장치(300A~300B)로 공급되나, 이들(Reset, VCCQ, VSSQ, VCC, 및 VSS) 중에서 일부만이 본 발명의 개념에 따른 새로운 구조를 설명하기 위해서 도시될 수 있다.
호스트 입출력 블록(250A)과 eMMC 입출력 블록(320A) 각각의 구조와 동작은 도 2를 참조하여 상세히 설명될 것이다.
eMMC 장치(300A)는 장치 컨트롤러, 예컨대 eMMC 컨트롤러(310A)와 플래시 메모리(370)를 포함한다.
eMMC 컨트롤러(310A)는 호스트(200A)와 플래시 메모리(370) 사이에서 데이터 통신을 제어한다.
eMMC 컨트롤러(310A)는 eMMC 입출력 블록(320A), eMMC 호스트 인터페이스 (330), CPU(340), 메모리(350), 및 플래시 인터페이스(360)를 포함한다.
DDR 400 모드에서, eMMC 호스트 인터페이스(330)는 eMMC 입출력 블록(320A)을 통하여 클락 신호(CLK)와 명령(CMD)을 수신하고, 수신된 클락 신호(CLK)에 기초하여 리턴 클락 신호(RCLK)를 생성하고, 생성된 리턴 클락 신호(RCLK)를 eMMC 입출력 블록(320A)으로 전송하고, 수신된 명령(CMD)을 해석하고 해석의 결과에 따라 응답(response)을 생성하고 생성된 응답을 eMMC 입출력 블록(320A)으로 전송한다.
또한, DDR 400 모드에서, eMMC 호스트 인터페이스(330)는 호스트(200A)로부터 출력된 명령(CMD), 예컨대 SEND_EXT_CSD 명령(=CMD8)에 따라 플래시 메모리 (370)에 저장된 EXT_CSD 레지스터의 데이터를 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)가 NAND 플래시 메모리로 구현될 때, 플래시 인터페이스 (360)는 NAND 플래시 인터페이스로 구현될 수 있다.
도 2는 본 발명의 일 실시 예에 따른 리턴 클락 제어 유닛을 포함하는 도 1에 도시된 eMMC 시스템의 일부를 나타내고, 도 3은 본 발명의 실시 예에 따른 클락 신호, 리턴 클락 신호, 및 데이터의 파형도를 나타낸다.
도 1과 도 2를 참조하면, 호스트 입출력 블록(250A)은 드라이버들(D), 수신기들(R, 43, 및 44), 및 호스트 패드들(21~24)을 포함한다.
eMMC 입출력 블록(320A)은 eMMC 패드들(31~34), 수신기들(R과 51, 및 55), 및 드라이버들(D, 53, 및 54)을 포함한다.
도 1의 eMMC 호스트 인터페이스(330)의 일 실시 예에 따른 eMMC 호스트 인터페이스(330A)는 데이터 제어 유닛(331)과 리턴 클락 제어 유닛(333)을 포함한다.
데이터 제어 유닛(331)은 데이터 라이트 동작 동안 호스트(200A)로부터 전송된 라이트 데이터를 수신하고, 데이터 리드 동작 동안, 메모리(350)로부터 출력된 리드 데이터를 호스트(200A)로 전송한다.
데이터 제어 유닛(331)의 구성 및 동작은 도 5를 참조하여 상세히 설명될 것이다.
리턴 클락 제어 유닛(333)은 특정 모드(예컨대, DDR 400 모드)에서 수신기(51)로부터 출력된 클락 신호(CLK)에 기초하여 리턴 클락 신호(RCLK)를 생성할 수 있다. 예컨대, 리턴 클락 제어 유닛(333)는 데이터 제어 유닛(331)의 데이터 출력 회로와 유사하게 구성될 수 있다.
예컨대, 데이터 제어 유닛(331)을 포함하는 데이터 출력 경로(DOP)의 지연(또는 레이턴시(latency))과 리턴 클락 제어 유닛(333)을 포함하는 리턴 클락 신호 출력 경로(RCP)의 지연(또는 레이턴스)이 서로 동일하게 설계 또는 조절되면, 도 3에 도시된 바와 같이, 리턴 클락 제어 유닛(333)은 데이터(DAT[7:0])와 동기된 리턴 클락 신호(RCLK)를 구성 요소들(54, 34, 및 104)을 통하여 호스트 입출력 블록(250A)으로 전송할 수 있다.
다른 실시예에서는, 리턴 클락 제어 유닛(333)은 지연 로직(delay logic)을 포함할 수 있다. 상기 지연 로직의 지연(또는 지연량)은 조절 또는 프로그램가능하다.
수신기(44)는 리턴 클락 신호(RCLK)를 선택 회로(245)를 통하여 또는 직접 리드 래치 회로(243)로 전송할 수 있다.
DDR 400 모드의 데이터 리드 동작 동안, 리턴 클락 신호(RCLK)는 고속 데이터 리드 동작을 위한 스트로브 신호(strobe signal)로서 사용될 수 있다.
도 3에 도시된 바와 같이, 리턴 클락 신호(RCLK)의 에지(edge)와 병렬 데이터(DAT[7:0])의 에지는 서로 동기(synchronize)된다. 병렬 데이터 (DAT[7:0])는 200Mhz DDR로 전송될 수 있다.
상술한 바와 같이, eMMC 패드들(33과 34)의 관점에서, 리턴 클락 제어 유닛(333)은 병렬 데이터(DAT[7:0])와 동기된 리턴 클락 신호(RCLK)를 생성할 수 있다. 즉, 도 3에 도시된 바와 같이, 리턴 클락 신호(RCLK)는 병렬 데이터(DAT[7:0])에 에지 정렬(edge align) 되도록 생성될 수 있다. 따라서, eMMC 장치(300A)는 병렬 데이터(DAT[7:0])와 리턴 클락 신호(RCLK) 사이의 스큐(skew)를 감소시킬 수 있으므로, 데이터 유효 윈도우(data valid window)는 확보될 수 있다.
tsync _ delay는 클락 신호(CLK)와 리턴 클락 신호(RCLK) 간의 시간차(혹은 지연차) 또는 클락 신호(CLK)와 병렬 데이터(DAT[7:0]) 간의 시간차를 의미할 수 있다.
도 3을 참조하면, tpp 또는 tPERIOD는 리턴 클락 신호(RCLK)의 주기를 의미한다. 이때, tRQ와 tRQH는 호스트(200A)로 출력되는 데이터(DAT[7:0])에 대한 AC 타이밍 파라미터(AC timing parameter)로써 병렬 데이터(DAT[7:0])와 리턴 클락 신호(RCLK) 사이의 스큐(skew)를 정의한다.
즉, tRQ는 출력 홀드 스큐(output hold skew)를 의미하고, tRQH는 출력 홀드 시간(output hold time)을 의미한다.
tRQ는 리턴 클락 신호(RCLK)의 에지가 발생하기까지 데이터를 유지해야 하는 제약 사항이고, tRQH는 리턴 클락 신호(RCLK)의 에지가 발생한 후 데이터를 언제까지 정상적인 데이터로 만들어줘야 하는지에 대한 제약 사항이다.
VIH는 입력 하이 전압(input HIGH voltage)을 의미하고, VIL은 입력 로우 전압(input LOW voltage)을 의미한다.
도 4는 본 발명의 일 실시예에 따른 eMMC 호스트 인터페이스(330A)의 구성 블록도이다. 도 4를 참조하면, eMMC 호스트 인터페이스(330A)는 데이터 제어 유닛(331), 리턴 클락 제어 유닛(333), 호스트 명령 디코딩 유닛(335), 및 eMMC 상태 제어 유닛(339)을 포함할 수 있다.
호스트 명령 디코딩 유닛(335)은 호스트(200A)로부터 출력된 명령(CMD)을 명령 버스(102), eMMC 패드(32), 및 eMMC 패드(32)에 접속된 수신기(R)를 통하여 수신하고, 수신된 명령(CMD)을 디코딩하고, 디코딩의 결과에 따라 응답(RES)을 생성하고, 생성된 응답(RES)을 호스트(200A)로 전송할 수 있다.
예컨대, 명령(CMD)이 SEND_EXT_CSD 명령(CMD8)일 때, 데이터 제어 유닛(331)은, 메모리 (350)로부터 출력된 EXT_CSD 레지스터(371)의 값들을 호스트(200A)로 전송할 수 있다.
호스트 명령 디코딩 유닛(335)은 명령(CMD)에 대한 디코딩 결과를 데이터 제어 유닛(331), 리턴 클락 제어 유닛(333), 및/또는 eMMC 상태 제어 유닛(339)으로 전송할 수 있다.
호스트 명령 디코딩 유닛(335)은 응답(RES)에 기초하여 생성된 제어 신호들을 제어 유닛(331), 리턴 클락 제어 유닛(333), 및/또는 eMMC 상태 제어 유닛(339)으로 전송할 수 있다.
eMMC 상태 제어 유닛(339)은 CPU(340)의 제어, 호스트 명령 디코딩 유닛 (335)과의 통신 및/또는 데이터 제어 유닛(331)과의 통신에 기초하여 eMMC 장치(300A)의 상태를 제어할 수 있다. 또한, eMMC 상태 제어 유닛(339)은 리턴 클락 제어 유닛(333)으로 상태 정보를 제공할 수 있다.
데이터 제어 유닛(331)은 CPU(340)의 제어, 호스트 명령 디코딩 유닛 (335)과의 통신 및/또는 eMMC 상태 제어 유닛(339)과의 통신에 기초하여 데이터를 제어하고 입출력한다. 또한, 데이터 제어 유닛(331)은 현재 제어되고 있는 데이터에 관한 정보(예컨대, 현재 출력되는 데이터가 CRC 데이터임을 알려주는 정보 등)를 리턴 클락 제어 유닛(333)으로 제공할 수 있다.
도 5는 도 2에 도시된 데이터 제어 유닛(331)의 일부를 나타내는 구성 블록도이다. 도 2와 도 5를 참조하면, 데이터 제어 유닛(331)는 리드 래치 회로(331R)와 라이트 래치 회로(331W)를 포함한다.
데이터 리드 동작 동안, 리드 래치 회로(331R)는 호스트 명령 디코딩 유닛(335) 또는 eMMC 상태 제어 유닛(339)의 제어에 따라 인에이블될 수 있다.
데이터 라이트 동작 동안, 라이트 래치 회로(331W)는 호스트 명령 디코딩 유닛(335) 또는 eMMC 상태 제어 유닛(339)의 제어에 따라 인에이블될 수 있다.
리드 래치 회로(331R)는 제1데이터 출력 래치들(331-RO)과 제2데이터 출력 래치들(331-RE)을 포함한다.
데이터 리드 동작 동안, 클락 신호(CLK)의 상승 에지에 응답하여 제1데이터 출력 래치들(331-RO)은 메모리(350)로부터 출력된 데이터 중에서 홀수 번째 데이터(ODATA)를 래치한다.
또한, 상기 데이터 리드 동작 동안, 클락 신호(CLK)의 하강 에지에 응답하여 제2데이터 출력 래치들(331-RE)은 메모리(350)로부터 출력된 데이터 중에서 짝수 번째 데이터(EDATA)를 래치한다.
클락 신호(CLK)의 제2 레벨(예컨대, 로우레벨)에 응답하여 선택 회로(332)는 제1데이터 출력 래치들(331-RO)에 래치된 홀수 번째 데이터(ODATA)를 드라이버(53)로 출력하고, 클락 신호(CLK)의 제2 레벨(예컨대, 하이레벨)에 응답하여 선택 회로(332)는 제2데이터 출력 래치들(331-RE)에 래치된 짝수 번째 데이터(EDATA)를 드라이버(53)로 출력할 수 있다. 선택 회로(332)는 멀티플렉서로 구현될 수 있다.
드라이버들(53)은 선택 회로(332)로부터 순차적으로 출력되는 홀수 번째 데이터(ODATA)와 짝수 번째 데이터(EDATA)를 호스트 패드들(33)로 출력한다.
라이트 래치 회로(331R)는 제1데이터 입력 래치들(331-WO)과 제2데이터 입력 래치들(331-WE)을 포함한다.
데이터 라이트 동작 동안, 클락 신호(CLK)의 상승 에지에 응답하여 제1데이터 입력 래치들(331-WO)은 수신기들(55)로부터 출력된 데이터 중에서 홀수 번째 데이터(ODATA)를 메모리(350)로 전송한다.
또한, 상기 데이터 라이트 동작 동안, 클락 신호(CLK)의 하강 에지에 응답하여 제2데이터 입력 래치들(331-WE)은 수신기들(55)로부터 출력된 상기 데이터 중에서 짝수 번째 데이터(EDATA)를 메모리(350)로 전송한다.
도 6a는 도 4에 도시된 리턴 클락 제어 유닛(333)의 일 실시예를 나타내는 구성 블록도이고, 도 6b는 도 6a에 도시된 프로토콜 분석 로직(410)의 일 실시예를 나타내는 구성 블록도이다. 도 6a 및 도 6b를 참조하면, 리턴 클락 제어 유닛(333)은 프로토콜 분석 로직(410), 래치들(420, 430, 440)과 선택 회로(450)를 포함한다.
프로토콜 분석 로직(410)은 프로토콜 제어 신호(PCS)를 분석하여, 리턴 클락 신호(RCLK)을 선택적으로 인에이블 할 수 있다.
예컨대, 프로토콜 분석 로직(410)은 프로토콜 제어 신호(PCS)에 따라, 리턴 클락 인에이블 신호(RCLK_EN)를 생성하고, 또한 제1 레벨 신호(RCLK_H)와 제2 레벨 신호(RCLK_L)를 발생한다.
프로토콜 제어 신호(PCS)는 호스트 명령 디코딩 유닛(335), eMMC 상태 제어 유닛(339), 및/또는 데이터 제어 유닛(331)으로부터 출력되는 신호일 수 있다.
프로토콜 분석 로직(410)은 도 6b에 도시된 바와 같이, 명령 관련 정보 체커(CMD related info. checker, 411), eMMC 상태 체커(412), 데이터 제어 상태 체커(413), 리턴 클락 인에이블 신호 제어 로직(414), 제1 레벨 신호 제어 로직(415), 및 제2 레벨 신호 제어 로직(416)을 포함할 수 있다.
명령 관련 정보 체커(411)는 호스트 명령 디코딩 유닛(335)으로부터 출력되는 명령 관련 정보(CMD related info.)를 체크하고, 이에 기초한 신호를 출력한다. eMMC 상태 체커(412)는 eMMC 상태 제어 유닛(339)으로부터 출력되는 eMMC 상태 신호(eMMC state)를 체크하고, 이에 기초한 신호를 출력한다. 데이터 제어 상태 체커(413)는 데이터 제어 유닛(331)으로부터 출력되는 데이터 제어 상태 신호(data control state)를 체크하고, 이에 기초한 신호를 출력한다.
리턴 클락 인에이블 신호 제어 로직(414)은 명령 관련 정보 체커(CMD related info. checker, 411), eMMC 상태 체커(412), 및 데이터 제어 상태 체커(413)의 출력 신호들을 논리 연산하여 리턴 클락 인에이블 신호(RCLK_EN)를 출력한다.
제1 레벨 신호 제어 로직(415)은 명령 관련 정보 체커(CMD related info. checker, 411), eMMC 상태 체커(412), 및 데이터 제어 상태 체커(413)의 출력 신호들을 논리 연산하여 리턴 클락 신호(RCLK)의 반 주기(half-period) 신호에 해당하는 제1 로직 레벨 신호(RCLK_H)를 출력하고, 제2 레벨 신호 제어 로직(416)은 명령 관련 정보 체커(CMD related info. checker, 411), eMMC 상태 체커(412), 및 데이터 제어 상태 체커(413)의 출력 신호들을 논리 연산하여 리턴 클락 신호(RCLK)의 나머지 반 주기 신호에 해당하는 제2 로직 레벨 신호(RCLK_L)를 출력한다.
리턴 클락 신호(RCLK)가 사용되는 동작에서는, 제1 레벨 신호(RCLK_H)은 하이레벨(예컨대, VDDQ)일 수 있고 제2 레벨 신호(RCLK_L)은 로우 레벨(예컨대, VSSQ)일 수 있으나, 이에 한정되는 것은 아니다. 예컨대, 제1 및 제2 레벨 신호(RCLK_H 및 RCLK_L)가 동일한 로직 레벨(하이레벨 또는 로우 레벨)일 수도 있다.
프로토콜 제어 신호(PCS)는 상술한 명령 관련 정보(CMD related info.) eMMC 상태 신호(eMMC state) 및 데이터 제어 상태 신호(data control state)를 포함한다.
명령 관련 정보(CMD related info.)는 호스트로부터 수신한 명령과 관련된 정보를 포함할 수 있다. 또한 명령 관련 정보(CMD related info.)는 EXT_CSD 레지스터의 정보를 포함할 수 있다. 예컨대, 명령 관련 정보(CMD related info.)는 모드 신호를 포함할 수 있다. 모드 신호는 도 7에 도시된 바와 같이, EXT_CSD 레지스터의 DEVICE_TYPE[196] 필드에 정의되는 eMMC 장치 (300A)의 타입(type)을 의미할 수 있다.
eMMC 상태 신호(eMMC state)는 JEDEC 표준(JESD84-B451)에서 정의된 eMMC 디바이스의 상태를 나타내는 신호일 수 있다. 또한, eMMC 상태 신호(eMMC state)는 eMMC 장치(300A)가 데이터 라이트 동작 상태인지, 데이터 리드 동작 상태인지, 또는 대기 상태 인지를 나타내는 신호일 수 있다.
데이터 라이트 동작이란, 호스트로부터 라이트 데이터를 수신하여 플래시 메모리(370)에 라이트 데이터를 저장하기 위한 일련의 동작들을 의미하고, 데이터 리드 동작이란 플래시 메모리(370)로부터 데이터를 리드하여 호스트로 리드 데이터를 보내기 위한 일련의 동작들을 의미한다.
데이터 제어 상태 신호(data control state)는 데이터 제어 유닛(331)이 현재 제어하는 데이터 종류(예컨대, 입력되는 데이터 또는 출력되는 데이터)를 나타내는 신호를 포함할 수 있다. 즉, 데이터 종류 신호는 eMMC 장치(300A)가 처리하고 있는 데이터의 종류-예컨대, 리드 데이터, 라이트 데이터, 또는 CRC 상태 응답 데이터 등-을 나타내는 신호일 수 있다.
제1래치(430)는 클락 신호(CLK)의 상승 에지에 응답하여 제1 레벨 신호(RCLK_H)를 래치하고, 제2래치(440)는 클락 신호(CLK)의 하강 에지에 응답하여 제2 레벨 신호(RCLK_L)를 래치한다.
선택 회로(450)는 클락 신호(CLK)의 제2 레벨(예컨대, 로우레벨)에 응답하여 제1래치(430)에 래치된 제1 레벨 신호(RCLK_H)를 리턴 클락 신호 (RCLK)의 일부로서 출력한다. 또한, 선택 회로(450)는 클락 신호(CLK)의 제1 레벨(예컨대, 하이레벨)에 응답하여 제2래치(440)에 래치된 제2 레벨 신호(RCLK_L)를 리턴 클락 신호(RCLK)의 일부로서 출력한다.
선택 회로(450)는 멀티플렉서로 구현될 수 있다.
제3 래치(420)는 클락 신호(CLK)에 응답하여 프로토콜 분석 로직(410)으로부터 출력되는 리턴 클락 인에이블 신호(RCLK_EN)를 래치한다.
도 5에 도시된 데이터 출력 경로(DOP)의 구조와 도 6a 및 도 6b에 도시된 리턴 클락 신호 출력 경로(RCP)의 구조는 서로 실질적으로 동일하다. 따라서, 호스트(200A)로 전송되는 데이터(DAT[7:0])와 리턴 클락 신호(RCLK)는 에지 정렬(edge align)될 수 있고, 또한, 데이터(DAT[7:0])와 리턴 클락 신호(RCLK) 사이에서 발생하는 스큐(skew)는 제거되거나 감소될 수 있다.
그러나, 리턴 클락 신호(RCLK)는 도 6a 및 도 6b에 도시된 회로와 다른 회로를 사용하여 생성될 수 있다.
예컨대, 리턴 클락 제어 유닛(333)은 클락 신호 (CLK)를 일정시간 지연시켜 리턴 클락 신호(RCLK)를 생성할 수 있다. 이 때, 리턴 클락 제어 유닛(333)는 클락 신호 (CLK)를 일정시간 지연시키기 위한 지연 로직(delay logic)을 포함할 수 있다. 상기 지연 로직의 지연(또는 지연량)은 조절 또는 프로그램 가능하다.
예컨대, 도 5에 도시된 리드 래치 회로(331R)를 포함하는 데이터 출력 경로(DOP)의 지연(또는 레이턴시(latency))과 도 6에 도시된 리턴 클락 제어 유닛(333A)를 포함하는 리턴 클락 신호 출력 경로(RCP)의 지연(또는 레이턴스)이 서로 동일하게 설계 또는 조절되면, eMMC 패드들(33과 34)을 기준으로 볼 때, 리턴 클락 제어 유닛 (333A)는 eMMC 패드들(33)을 통하여 출력되는 데이터(DAT[7:0])와 동기된 리턴 클락 신호(RCLK)를 eMMC 패드(34)를 통하여 출력할 수 있다.
호스트(200A)에 의해 리턴 클락 신호(RCLK)는 고속 데이터 리드 동작을 위한 스트로브 신호(strobe signal)로서 사용될 수 있다. 따라서, 리드 데이터는 안정적으로 리드 래치 회로(240)에 저장될 수 있다.
도 7은 본 발명의 실시 예에 따른 장치 타입 필드의 정의를 나타낸다.
도 7을 참조하면, 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 모드를 지원하는지를 판단할 수 있다.
도 8은 본 발명의 일 실시예에 따른 eMMC의 동작 방법을 나타내는 플로우챠트이다.
이를 참조하면, eMMC의 동작 방법은 디바이스의 모드가 DDR 400 모드인지, CRC 상태 응답을 전송하는 상태인지, 데이터 리드 동작 상태인지에 따라, 선택적으로 리턴 클락 신호(RCLK)를 구동(혹은 인에이블)할 수 있다.
예컨대, 프로토콜 분석 로직(410)은 프로토콜 제어 신호(PCS)를 분석하여, DDR 400 모드이고 데이터 리드 동작 상태인 경우, 또는 DDR 400 모드이고 CRC 상태 응답시 리턴 클락 인에이블 신호(RCLK_EN)를 인에이블 하여 리턴 클락 신호(RCLK)를 구동하고(S18), 그 외에는 리턴 클락 인에이블 신호(RCLK_EN)를 디스에이블하여 리턴 클락 신호(RCLK)를 플로팅시킬 수 있다(S20).
도 9a 내지 도 9c는 eMMC의 동작 방법을 나타내는 개략적인 타이밍도이다.
도 9a를 참조하면, 리턴 클락 신호(RCLK)는 DDR 400 모드에서 데이터 리드 동작시 구동될 수 있다. 예컨대, 리드 데이터(RDATA) 및 리드 데이터의 CRC 데이터(CRC16)를 호스트로 전송하는 구간에서 리턴 클락 신호(RCLK)가 인에이블될 수 있다.
도 9b를 참조하면, 리턴 클락 신호(RCLK)는 DDR 400 모드에서 데이터 라이트 동작시 일부 구간에서 구동될 수 있다. 예컨대, eMMC(300A)는 데이터 라이트 동작시 호스트로부터 라이트 데이터(WDATA) 및 라이트 데이터의 CRC 데이터(CRC16)를 수신하면, 이에 대한 응답으로 CRC 상태 응답(CRC Ack.)를 호스트로 전송한다. CRC 상태 응답(CRC Ack.)을 호스트로 전송하는 구간에서 리턴 클락 신호(RCLK)가 인에이블될 수 있다. 라이트 데이터(WDATA) 및 라이트 데이터의 CRC 데이터(CRC16)를 호스트로부터 수신하는 구간에서는, 리턴 클락 신호(RCLK)가 인에이블되지 않고, 하이 임피던스(Hi-Z)상태 혹은 특정 DC 레벨로 유지될 수 있다.
도 9c를 참조하면, 리턴 클락 신호(RCLK)는 DDR 400 모드에서 eMMC(300A)의 "비지" 상태에서는 리턴 클락 신호(RCLK)가 인에이블되지 않는다.
"비지" 상태에서는 데이터 버스 중 특정 버스(DAT[0])가 '0'으로 구동된다. 이 구간에서는, 리턴 클락 신호(RCLK)가 인에이블되지 않고, 하이 임피던스(Hi-Z)상태, 혹은 특정 DC 레벨로 유지될 수 있다.
다른 실시예에서는, eMMC(300A)의 "비지" 구간에서 리턴 클락 신호(RCLK_EN)는 하이레벨로 인에이블되고, 제1 및 제2 레벨 신호(RCLK_H, RCLK_L)는 모두 로우레벨 또는 모두 하이레벨로 설정될 수 있다.
도 10은 본 발명의 다른 실시 예에 따른 eMMC 시스템의 블록도를 나타내고, 도 11은 도 10에 도시된 eMMC 시스템의 입출력 블록들을 나타낸다.
도 10을 참조하면, eMMC 시스템(100B)은 호스트(200B)와 장치, 예컨대 eMMC 장치(300B)를 포함한다.
호스트 컨트롤러(230B)의 호스트 입출력 블록(250B)의 구조와 기능, 및 eMMC 컨트롤러(310B)의 eMMC 입출력 블록(320B)의 구조와 기능을 제외하면, 도 1의 eMMC 시스템(100A)의 구조와 기능과 도 10의 eMMC 시스템(100B)의 구조와 기능은 실질적으로 동일하다.
호스트 입출력 블록(250B)과 eMMC 입출력 블록(320B)의 사이에는 리턴 클락 버스(104) 이외에 상보 리턴 클락 버스(104-1)가 추가된다.
도 10에 도시된 eMMC 시스템(100B)은, 리턴 클락 신호(RCLK)에 의해 발생하는 노이즈의 영향을 제거 또는 감소시키기 위해, 차동 시그날링 구조를 포함한다. 즉, eMMC 장치(300B)는 리턴 클락 신호(RCLK)와 상보 리턴 클락 신호(nRCLK)를 리턴 클락 버스(104와 104-1)를 통하여 호스트(200B)로 전송한다.
도 10의 eMMC 입출력 블록(320B)은 차동 리턴 클락 신호들(RCLK와 nRCLK)을 생성하기 위한 구조, 예컨대 차동 리턴 클락 생성기를 포함한다. 도 11에 도시된 바와 같이, eMMC 컨트롤러(310B)의 차동 리턴 클락 생성기(322-1)는 리턴 클락 제어 유닛(333-1), 인버터(322-2), 및 차동 증폭기(322-3)를 포함한다.
리턴 클락 제어 유닛(333-1)은 도 6에 도시된 리턴 클락 제어 유닛(333)과 실질적으로 동일한 구조와 기능을 가진다.
인버터(322-2)는 리턴 클락 신호(RCLK)를 반전시킨다. 차동 증폭기(322-3)는 리턴 클락 신호(RCLK)와 인버터(322-2)의 출력 신호에 기초하여 차동 리턴 클락 신호들(RCLK와 nRCLK)을 생성한다. 차동 리턴 클락 신호들(RCLK와 nRCLK)은 구성 요소들(34와 34-1, 104와 104-1, 및 24와 24-1)을 통하여 차동 증폭기(64-1)로 전송된다.
차동 증폭기(64-1)는 차동 리턴 클락 신호들(RCLK와 nRCLK)의 차이를 증폭하고 증폭된 리턴 클락 신호(RCLK)를 리드 래치 회로(243)로 전송한다.
도 12a와 도 12b는 도 1 또는 도 10에 도시된 eMMC 시스템의 동작을 설명하기 위한 플로우차트이다.
도 1부터 도 12b를 참조하면, 호스트(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)는 EXT_CSD 레지스터(371)의 DEVICE_TYPE[196]에 저장된 정보, 예컨대 각 비트(Bit 6 또는 Bit 7)를 이용하여 eMMC(300)가 고속 DDR 400 모드를 지원하는지의 여부를 판단한다(S130).
eMMC(300)가 고속 DDR 400 모드를 지원하지 않을 때 DDR 400 모드로 스위치할 수 없다(S131).
그러나, eMMC(300)가 고속 DDR 400 모드를 지원할 때, 호스트(200)는 EXT_CSD 레지스터(371)의 VENDOR_SPECIFIC_FIELD 필드에 저장되고 DDR 400 모드에서의 클락 신호(CLK)의 최대 동작 주파수를 읽고(S135), 호스트(200)는 클락 신호(CLK)의 최대 동작 주파수에 대한 정보에 따라 생성된 최대 동작 주파수 제어 신호(Fmax)를 이용하여 클락 신호(CLK)의 주파수를 변경 또는 설정한다(S140).
그 후, 호스트(200)는 EXT_CSD 레지스터(371)의 VENDOR_SPECIFIC_FIELD 필드에 저장되고 DDR 400 모드에서의 EXTRA IO FIELD 필드의 정보를 읽는다(S145).
호스트(200)는, eMMC 장치(300)가 차동 리턴 클락 신호(RCLK와 nRCLK)를 지원하는지를 판단한다(S150).
만일, eMMC 장치(300)가 차동 리턴 클락 신호(RCLK와 nRCLK)를 지원하지 않는다면(S150의 NO), 호스트(200)는 SWITCH 명령(CMD6)을 이용하여 DDR400 모드로 설정하고(S160), 리턴 클락 신호(RCLK)만을 지원하는 고속 DDR 400 모드를 수행할 수 있다(S161).
만일, eMMC 장치(300)가 차동 리턴 클락 신호(RCLK와 nRCLK)를 지원한다면(S150의 YES), 호스트(200)는 SWITCH 명령(CMD6)을 이용하여 DDR400 모드 및 "상보 리턴 클락 신호 온"으로 설정하고(S180), 리턴 클락 신호 및 상보 리턴 클락 신호(RCLK, nRCLK)를 지원하는 고속 DDR 400 모드를 수행할 수 있다(S181).
본 발명의 실시 예에 따른 eMMC 장치(300)는 DDR 400 모드로 진입하기 전까지 또는 DDR 400 모드에서 리턴 클락 신호의 디스에이블 구간에서는 리턴 클락 신호(RCLK, nRCLK)를 플로팅시키거나, 특정한 레벨, 예컨대 입출력 동작 전압(VCCQ)의 레벨 또는 접지 전압(VSSQ)의 레벨로 유지하여 호스트(200) 또는 eMMC 장치(300)의 오동작을 방지할 수 있다.
본 발명은 도면에 도시된 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
100A~100B; eMMC 시스템
200A~200B; 호스트
300A~300B; eMMC 장치
210; 클락 생성기
220; 상태 제어 유닛
230A~230B; 호스트 컨트롤러
240; 데이터 입출력 회로
241; 라이트 래치 회로
243; 리드 래치 회로
250A~250B; 호스트 입출력 블록
310A~310B; 장치 컨트롤러 또는 eMMC 컨트롤러
320A~320J; eMMC 입출력 블록
330; eMMC 호스트 인터페이스
331; 데이터 제어 유닛
333, 333-1; 리턴 클락 제어 유닛
340; CPU
350; 메모리
360; 플래시 인터페이스

Claims (20)

  1. 임베디드 멀티미디어 카드(embedded multimedia card (eMMC))에 있어서,
    호스트로부터 출력된 클락 신호를 수신하는 클락 채널;
    상기 호스트로부터 출력된 명령을 수신하는 명령 채널;
    고속(high speed) 데이터 리드 동작 동안 상기 호스트로 리드 데이터를 전송하고, 데이터 라이트 동작 동안 상기 호스트로부터 라이트 데이터를 수신하는 양방향 데이터 채널들;
    상기 고속 데이터 리드 동작 동안, 상기 호스트로 상기 리드 데이터와 동기된 리턴 클락 신호를 전송하는 단방향 리턴 클락 채널; 및
    상기 명령 채널을 통해 수신된 프로토콜 제어 신호에 따라, 상기 고속 데이터 리드 동작 동안 상기 클락 신호로부터 상기 리턴 클락 신호를 생성하는 리턴 클락 제어 유닛을 포함하고,
    상기 프로토콜 제어 신호는, 모드 신호, 상태 신호 및 데이터 종류 신호를 포함하고,
    상기 리턴 클락 제어 유닛은, 상기 프로토콜 제어 신호를 분석(analyze)하고, 상기 프로토콜 제어 신호의 분석에 응답하여 리턴 클락 인에이블 신호를 생성하도록 더 구성되고,
    상기 리턴 클락 인에이블 신호가 인에이블되는 경우, 상기 리턴 클락 신호는 토글링 패턴을 가지도록 생성되고, 상기 리턴 클락 인에이블 신호가 디스에이블되는 경우, 상기 리턴 클락 신호는 플로트(float)되고, 및
    상기 리턴 클락 제어 유닛은, DDR(double data rate) 400 모드를 이용하여 수행되는 라이트 동작 동안, 상기 eMMC가 상기 호스트로부터 수신된 라이트 데이터에 상응하는 CRC(cyclic redundancy check) 상태 응답 신호를 상기 호스트에게 전송하는 경우, 상기 리턴 클락 인에이블 신호를 인에이블하도록 더 구성되는 eMMC.
  2. 제1항에 있어서, 상기 리턴 클락 제어 유닛은
    상기 클락 신호를 일정 시간 지연시켜 상기 리턴 클락 신호를 생성하는 eMMC.
  3. 삭제
  4. 제1항에 있어서, 상기 모드 신호는 DDR 400 모드인지를 나타내는 신호이고,
    상기 상태 신호는 데이터 라이트 동작 상태, 데이터 리드 동작 상태 또는 대기 상태를 신호이며,
    상기 데이터 종류 신호는 처리되는 데이터가 리드 데이터, 라이트 데이터, 또는 CRC 상태 응답 데이터인지를 나타내는 신호인 eMMC.
  5. 삭제
  6. 삭제
  7. 제1항에 있어서, 상기 리턴 클락 제어 유닛은
    상기 eMMC가 DDR 400 모드에서 "비지" 상태인 동안에는 상기 리턴 클락 인에이블 신호를 디스에이블하고,
    상기 "비지" 상태에서는,
    상기 데이터 채널들 중 특정 채널을 제1 로직 레벨로 유지하는 eMMC.
  8. 제1항에 있어서, 상기 리턴 클락 제어 유닛은
    상기 호스트로부터 수신한 명령과 관련된 명령 관련 정보를 체크하는 명령 관련 정보 체커;
    상기 eMMC의 상태 신호를 체크하는 eMMC 상태 신호 체커;
    입력 또는 출력되는 데이터의 종류를 나타내는 데이터 제어 상태 신호를 체크하는 데이터 제어 상태 신호 체커;
    상기 명령 관련 정보 체커, 상기 eMMC 상태 신호 체커 및 상기 데이터 제어 상태 신호 체커의 출력 신호들을 논리 연산하여 상기 리턴 클락 인에이블 신호를 출력하는 리턴 클락 인에이블 신호 제어 로직;
    상기 명령 관련 정보 체커, 상기 eMMC 상태 신호 체커 및 상기 데이터 제어 상태 신호 체커의 출력 신호들을 논리 연산하여 상기 리턴 클락 신호의 반 주기(half-period) 신호에 해당하는 제1 로직 레벨 신호를 출력하는 제1 로직 레벨 신호 제어 로직; 및,
    상기 명령 관련 정보 체커, 상기 eMMC 상태 신호 체커 및 상기 데이터 제어 상태 신호 체커의 출력 신호들을 논리 연산하여 상기 리턴 클락 신호의 나머지 반 주기(half-period) 신호에 해당하는 제2 로직 레벨 신호를 출력하는 제2 로직 레벨 신호 제어 로직를 포함하는 eMMC.
  9. 임베디드 멀티미디어 카드(embedded Multimedia Card(eMMC))와 호스트를 포함하는 eMMC 시스템의 동작 방법에 있어서,
    상기 eMMC가 클락 채널을 통하여 상기 호스트로부터 입력된 클락 신호(CLK)를 수신하는 단계;
    상기 eMMC가 명령 채널을 통하여 명령을 수신하여 디코딩하는 단계;
    상기 명령에 응답하여 고속(high speed) 데이터 리드 동작 동안 리드 데이터를 양방향 데이터 채널들을 통하여 상기 eMMC로부터 상기 호스트로 전송하는 단계; 및
    상기 클락 신호 및 상기 명령 채널을 통해 상기 호스트로부터 수신된 프로토콜 제어 신호에 응답하여, 상기 고속 데이터 리드 동작 동안 리턴 클락 신호를 생성하고, 상기 리턴 클락 신호를 상기 리드 데이터에 동기시켜 단방향 리턴 클락 채널을 통하여 상기 호스트로 전송하는 단계를 포함하고,
    상기 프로토콜 제어 신호는, 모드 신호, 상태 신호 및 데이터 종류 신호를 포함하고,
    리턴 클락 인에이블 신호는, 상기 프로토콜 제어 신호를 분석함으로써 생성되고,
    상기 리턴 클락 인에이블 신호가 인에이블되는 경우, 상기 리턴 클락 신호는 토글링 패턴을 가지도록 생성되고, 상기 리턴 클락 인에이블 신호가 디스에이블되는 경우, 상기 리턴 클락 신호는 플로트(float)되고,
    상기 리턴 클락 인에이블 신호는, DDR(double data rate) 400 모드를 이용하여 수행되는 라이트 동작 동안, 상기 eMMC가 상기 호스트로부터 수신된 라이트 데이터에 상응하는 CRC(cyclic redundancy check) 상태 응답 신호를 상기 호스트에게 전송하는 경우, 인에이블되는 eMMC 시스템의 동작 방법.
  10. 제9항에 있어서, 상기 eMMC 시스템의 동작 방법은
    상기 호스트가 상기 리턴 클락 신호를 이용하여 상기 데이터를 래치하는 단계;
    상기 호스트가, 상태 제어 유닛에 의해 제공된 선택 신호에 응답하여 선택 회로를 이용하여 상기 클락 신호와 상기 리턴 클락 신호 중에서 어느 하나를 선택하는 단계를 더 포함하는 eMMC 시스템의 동작 방법.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR1020120102490A 2012-09-14 2012-09-14 단방향의 리턴 클락 신호를 사용하는 임베디드 멀티미디어 카드, 이를 제어하는 호스트, 및 이들을 포함하는 임베디드 멀티미디어 카드 시스템의 동작 방법 KR101984902B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020120102490A KR101984902B1 (ko) 2012-09-14 2012-09-14 단방향의 리턴 클락 신호를 사용하는 임베디드 멀티미디어 카드, 이를 제어하는 호스트, 및 이들을 포함하는 임베디드 멀티미디어 카드 시스템의 동작 방법
US14/024,655 US9535451B2 (en) 2012-09-14 2013-09-12 Embedded multimedia card using unidirectional data strobe signal, host for controlling the same, and related methods of operation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120102490A KR101984902B1 (ko) 2012-09-14 2012-09-14 단방향의 리턴 클락 신호를 사용하는 임베디드 멀티미디어 카드, 이를 제어하는 호스트, 및 이들을 포함하는 임베디드 멀티미디어 카드 시스템의 동작 방법

Publications (2)

Publication Number Publication Date
KR20140035778A KR20140035778A (ko) 2014-03-24
KR101984902B1 true KR101984902B1 (ko) 2019-05-31

Family

ID=50275760

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120102490A KR101984902B1 (ko) 2012-09-14 2012-09-14 단방향의 리턴 클락 신호를 사용하는 임베디드 멀티미디어 카드, 이를 제어하는 호스트, 및 이들을 포함하는 임베디드 멀티미디어 카드 시스템의 동작 방법

Country Status (2)

Country Link
US (1) US9535451B2 (ko)
KR (1) KR101984902B1 (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9374216B2 (en) 2013-03-20 2016-06-21 Qualcomm Incorporated Multi-wire open-drain link with data symbol transition based clocking
US9363071B2 (en) 2013-03-07 2016-06-07 Qualcomm Incorporated Circuit to recover a clock signal from multiple wire data signals that changes state every state cycle and is immune to data inter-lane skew as well as data state transition glitches
JP6051979B2 (ja) * 2013-03-14 2016-12-27 セイコーエプソン株式会社 転送システムおよび印刷装置
US9203599B2 (en) 2014-04-10 2015-12-01 Qualcomm Incorporated Multi-lane N-factorial (N!) and other multi-wire communication systems
US9755818B2 (en) 2013-10-03 2017-09-05 Qualcomm Incorporated Method to enhance MIPI D-PHY link rate with minimal PHY changes and no protocol changes
US9735948B2 (en) * 2013-10-03 2017-08-15 Qualcomm Incorporated Multi-lane N-factorial (N!) and other multi-wire communication systems
CN105807637B (zh) * 2014-12-31 2018-05-08 深圳市硅格半导体有限公司 存储卡量产模式的启动系统及方法
CN105898475A (zh) * 2015-12-21 2016-08-24 乐视致新电子科技(天津)有限公司 提高智能电视与嵌入式多媒体卡兼容性的方法、智能电视
US10395701B1 (en) * 2018-05-09 2019-08-27 Micron Technology, Inc. Memory device with a latching mechanism
US11061431B2 (en) * 2018-06-28 2021-07-13 Micron Technology, Inc. Data strobe multiplexer
US10546620B2 (en) * 2018-06-28 2020-01-28 Micron Technology, Inc. Data strobe calibration
US11042301B2 (en) * 2018-12-13 2021-06-22 Micron Technology, Inc. Host clock effective delay range extension
WO2020176448A1 (en) 2019-02-27 2020-09-03 Rambus Inc. Low power memory with on-demand bandwidth boost
CN113238978A (zh) * 2021-03-26 2021-08-10 南京莱斯信息技术股份有限公司 一种适用于x.25接口的串口切换装置及方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020126564A1 (en) * 2001-03-09 2002-09-12 Yoo Chang-Sik Semiconductor memory device having different data rates in read operation and write operation

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6600681B1 (en) * 2002-06-10 2003-07-29 Lsi Logic Corporation Method and apparatus for calibrating DQS qualification in a memory controller
JP3807406B2 (ja) * 2003-09-05 2006-08-09 セイコーエプソン株式会社 データ転送制御装置及び電子機器
US20050097291A1 (en) 2003-10-31 2005-05-05 Infineon Technologies North America Corp. Multiple data rate bus using return clock
JP2007072922A (ja) 2005-09-09 2007-03-22 Sharp Corp メモリカード用レベルシフタ
KR101177555B1 (ko) * 2006-02-01 2012-08-27 삼성전자주식회사 메모리 카드, 메모리 카드의 데이터 구동 방법, 그리고메모리 카드 시스템
JP2007219875A (ja) 2006-02-17 2007-08-30 Matsushita Electric Ind Co Ltd データ転送装置
US20070271495A1 (en) 2006-05-18 2007-11-22 Ian Shaeffer System to detect and identify errors in control information, read data and/or write data
JP5013768B2 (ja) * 2006-08-03 2012-08-29 ルネサスエレクトロニクス株式会社 インターフェイス回路
US7937643B1 (en) 2006-09-18 2011-05-03 Mediatek Inc. Mobile communication device and data reception method
KR100823166B1 (ko) * 2006-12-04 2008-04-18 삼성전자주식회사 통신 속도가 향상된 메모리 카드 및 메모리 카드를포함하는 메모리 카드 시스템
US20110264851A1 (en) * 2006-12-07 2011-10-27 Tae-Keun Jeon Memory system and data transmitting method thereof
KR100884239B1 (ko) 2007-01-02 2009-02-17 삼성전자주식회사 메모리 카드 시스템 및 그것의 백그라운드 정보 전송 방법
TWI326413B (en) 2007-02-12 2010-06-21 Nanya Technology Corp Control method for memory access
US7636262B2 (en) 2007-10-25 2009-12-22 International Business Machines Corporation Synchronous memory having shared CRC and strobe pin
US8132074B2 (en) 2007-11-19 2012-03-06 Intel Corporation Reliability, availability, and serviceability solutions for memory technology
US8042023B2 (en) 2008-01-14 2011-10-18 Qimonda Ag Memory system with cyclic redundancy check
KR100951567B1 (ko) 2008-02-29 2010-04-09 주식회사 하이닉스반도체 데이터 전달의 신뢰성을 보장하기 위한 반도체 메모리 장치
US8321778B2 (en) 2008-06-16 2012-11-27 Intel Corporation Efficient in-band reliability with separate cyclic redundancy code frames
KR20110111217A (ko) 2010-04-02 2011-10-10 삼성전자주식회사 메모리 시스템
US8520455B2 (en) * 2012-01-10 2013-08-27 Apple Inc. Method and apparatus for training a DLL in a memory subsystem

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020126564A1 (en) * 2001-03-09 2002-09-12 Yoo Chang-Sik Semiconductor memory device having different data rates in read operation and write operation

Also Published As

Publication number Publication date
US20140082397A1 (en) 2014-03-20
KR20140035778A (ko) 2014-03-24
US9535451B2 (en) 2017-01-03

Similar Documents

Publication Publication Date Title
KR101984902B1 (ko) 단방향의 리턴 클락 신호를 사용하는 임베디드 멀티미디어 카드, 이를 제어하는 호스트, 및 이들을 포함하는 임베디드 멀티미디어 카드 시스템의 동작 방법
US11789880B2 (en) Load reduced nonvolatile memory interface
US9860088B1 (en) Inferring sampled data in decision feedback equalizer at restart of forwarded clock in memory system
US8879348B2 (en) Power management in semiconductor memory system
JP5300732B2 (ja) 高速シリアルバッファを有するメモリシステム
US10545888B2 (en) Data inversion circuit
KR101977664B1 (ko) 임베디드 멀티미디어 카드와 이를 제어하는 호스트
KR101978981B1 (ko) 임베디드 멀티미디어 카드(eMMC), 상기 eMMC를 제어하는 호스트, 및 이들을 포함하는 시스템의 동작 방법
US20170323222A1 (en) Optimal Data Eye for Improved Vref Margin
JP2010508600A (ja) デュアルモードメモリ相互接続を備えたメモリコントローラ
EP4012570A1 (en) Encoded on-die termination for efficient multipackage termination
KR101977663B1 (ko) 임베디드 멀티미디어 카드 디바이스 및 그 동작방법
US20150092065A1 (en) Link training in a video processing system
CN114446363A (zh) 存储装置和存储装置的操作方法
US20150127873A1 (en) Semiconductor device and memory system including the same
KR101978976B1 (ko) 임베디드 멀티미디어 카드(eMMC)와 상기 eMMC를 제어하는 호스트
KR20140035771A (ko) 임베디드 멀티미디어 카드, 상기 임베디드 멀티미디어 카드를 제어하는 호스트, 및 그 동작방법
KR20140035767A (ko) 입출력 튜닝 과정을 수행할 수 있는 임베디드 멀티미디어 카드와 그 동작 방법, 및 상기 임베디드 멀티미디어 카드를 제어하는 호스트의 동작 방법
JP2007249753A (ja) 情報処理装置
US20220358061A1 (en) Unmatched architecture compensation via digital component delay
CN112309445B (zh) 存储器接口电路、存储器存储装置及信号产生方法
US20230006750A1 (en) Multiplexer and serializer including the same
KR20220057820A (ko) 메모리 장치 및 시스템
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