KR20030033040A - 인터페이스 디바이스 및 이를 포함하는 디바이스 및 통신방법 - Google Patents

인터페이스 디바이스 및 이를 포함하는 디바이스 및 통신방법 Download PDF

Info

Publication number
KR20030033040A
KR20030033040A KR10-2003-7002970A KR20037002970A KR20030033040A KR 20030033040 A KR20030033040 A KR 20030033040A KR 20037002970 A KR20037002970 A KR 20037002970A KR 20030033040 A KR20030033040 A KR 20030033040A
Authority
KR
South Korea
Prior art keywords
state
data
state machine
bus
machine
Prior art date
Application number
KR10-2003-7002970A
Other languages
English (en)
Inventor
데쉬판데암리타
앤드류에이치폴
Original Assignee
코닌클리즈케 필립스 일렉트로닉스 엔.브이.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 코닌클리즈케 필립스 일렉트로닉스 엔.브이. filed Critical 코닌클리즈케 필립스 일렉트로닉스 엔.브이.
Publication of KR20030033040A publication Critical patent/KR20030033040A/ko

Links

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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
    • 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

Abstract

12C 버스로의 슬레이브 인터페이스를 제어하는 강성 상태 머신(roubst state machine)이 제공된다. 상기 상태 머신은 상기 I2C 지정 사항(specifications) 중 슬레이브 디바이스 프로토콜을 실행하며 마스터 디바이스에 의한 부조화 동작을 복구한다. 본 발명에 따라, 슬레이브 디바이스에서 상태 머신의 상태 전이는 START 조건이 검출되는 경우를 제외하고 12C 버스의 SCL 라인을 마스터 디바이스가 제어함으로써 제어된다. 상태 머신은 12C 버스 상의 START 조건에 비동기적으로 응답함으로써 그의 현 상태와는 상관 없이 알려진 상태로 된다. START 조건 이후의 상기 알려진 상태에서, 상기 슬레이브 디바이스는 12C 버스로의 임의의 전송을 종결시켜, 버스 상에서의 차후의 방해를 최소화한다.

Description

인터페이스 디바이스 및 이를 포함하는 디바이스 및 통신 방법{GENERALIZED I2C SLAVE TRANSMITTER/RECEIVER STATE MACHINE}
필립스에 의해 개발된 I2C(Inter Integrated Circuit) 버스는 집적 회로들이 간단한 양방향성 2 와이어(플러스 접지:plus ground) 버스를 통해 서로 직접적으로 통신하는 것을 가능하게 한다. 디바이스는 버스 상의 두 개의 와이어 각각에 접속되며, 하나의 와이어(SDA)는 데이터 통신을 위한 것이며, 다른 와이어(SCL)은 디바이스들 간의 데이터 통신의 제어 및 동기화를 위한 것이다. 각 디바이스는 다른 각 디바이스들에 병렬로 접속되며, 각 버스 라인 SDA 및 SCL은 버스 상의 모든 라인들의 와이어된 AND로서 기능한다. 각 디바이스의 출력은 개방 컬렉터/개방 드레인 디바이스(open-collector/open-drain device)로서 구성되며, 하나 이상의 풀-업 저항(pull-up resistors)은 버스가 정지 상태일 때 버스 상에서 "소프트" 로직 하이 값을 유지한다. 디바이스가 버스로 액세스를 하고자 할 때, 도전성 상태로 접지 전위에 접속되어 있는 개방 컬랙터/개방 드레인 디바이스를 통해, 디바이스는 버스가 로직 로우 값으로 되게 한다.
I2C 버스에 접속된 각 디바이스는 고유 어드레스에 의해 식별될 수 있으며 송신기 또는 수신기 또는 송신기 및 수신기로서 동작할 수 있다. 데이터 전달은 마스터-슬레이브 프로토콜을 사용하여 실행된다. 마스터는 데이터 전달을 개시하고 클록 신호를 생성하여 데이터 전달을 가능하게 하는 디바이스이며 어드레스되는 임의의 디바이스는 상기 데이터 전달을 위한 슬레이브로서 간주된다. 데이터 전달은 데이터를 슬레이브로 송신하거나(기록 동작), 슬레이브로부터의 데이터를 요청하는(판독 동작) 마스터에 의해 개시된다. 특정 디바이스는 마스터, 슬레이브 또는 마스터 및 슬레이브로서 동작할 수 있다. 가령, 디스플레이 스크린과 같은 출력 디바이스는 통상적으로 데이터 전달을 개시할 수 없어서 오직 슬레이브 디바이스로만 동작한다. 한편, 마이크로프로세서는 통상적으로 상황에 따라 마스터 또는 슬레이브로서 동작할 수 있다.
정지 상태에서, SDA 및 SCL 버스 라인 모두는 로직 하이 상태로 존재한다. 마스터는 SCL 라인 하이 상태로 존재하는 동안 SDA 라인에 대해 로직 로우 상태로의 전이를 어서트(assert)함으로써 데이터 전달을 개시한다. 이러한 상태는 START 상태로 지칭된다. 이후에, 마스터는 SCL 라인을 토글링하여 데이터 전달의 동기화를 제어하며, 데이터 값 변경은 SCL 클록이 로우일 때 SDA 라인 상에서 발생하며, 이 SDA 라인의 상태는 SCL 클록이 하이일 때에만 유효한 것으로 간주된다. 동일한 전달 세션 내에서 일련의 데이터 전달을 실행하기 위해 다중 START가 어서트될 수 있다. 일반적으로, 각 데이터 전달은 데이터 전달의 어드레스된 수령자로부터의 긍정 응답을 필요로 한다. 데이터 전달을 종료하기 위해, 호스트는 SCL 클록이 하이일 때 SDA 라인에 대해 로우에서 하이로의 전이를 어서트한다. 이러한 상태는 STOP 상태로 지칭된다. 이후에, 임의의 디바이스가 위에서와 같이 SDA 라인에 대해 하이에서 로우로의 전이를 어서트함으로써 마스터로서 버스를 제어할 수 있다. 보다 용이한 참조를 위해, 용어 "어서트"는 본 명세서에서 특정 로직 상태를 실행하거나 특정 로직 상태의 실행을 시도하는 것으로 사용된다. 로직 하이 상태로의 전이의 경우에, 이러한 전이는 통상적으로 어서트하는 디바이스에 의해 버스가 강제된 풀 다운 상태로부터 자유로운 상태로 됨으로써 제공된다. 다른 디바이스가 풀 다운 상태를 강제하지 않는다면, 로직 하이 상태의 어서트는 상기 버스 상의 풀 업 디바이스로 하여금 버스가 로직 하이 상태가 되게 하는 것을 가능하게 한다.
I2C 데이터 전달의 일반적인 형태가 도 1에 도시되며, 도 1은 I2C 버스를 형성하는 SDA 라인 및 SCL 라인 상의 신호를 도시한다. START 조건(S)(110)은 SCL 라인이 하이 상태로 존재할 때 SDA 라인에 대해 신호가 하이에서 로우로 전이하는 것이다. START 이후에, 호스트는 공칭적으로 7 비트인 어드레스(120)를 전송하며, 상기 어드레스 다음에 판독/비기록 표시자(130)가 따른다. 어드레스(120) 및 데이터 전달의 방향(R/W-)(130)을 전송한 후에, 호스트는 SDA 라인이 로직 하이 상태가 되도록 상기 SDA 라인을 릴리즈(release)한다. 슬레이브 디바이스가 자신의 어드레스를 인식한다면, 슬레이브 디바이스는 버스를 로우 상태로 풀 다운함으로써 긍정 응답 신호(acknowledge signal)(ACK)(140)를 전송한다. 호스트가 SDA 라인을 릴리즈할 때 로우 상태 신호가 존재하는 않는 것은 부정 응답(NAK)을 표시한다. 어드레스가 긍정 응답 신호(140)에서 로우로 응답을 받는다면, 전송 디바이스는 데이터(150)를 전송한다. 데이터 전달의 방향이 호스트에 대해 "판독" 방향이면, 슬레이브 디바이스가 전송 디바이스이며, 데이터 전달의 방향이 호스트에 대해 "기록" 방향이면, 마스터 디바이스가 전송 디바이스이다. 전송 디바이스가 SDA 라인의 제어를 릴리즈하고 수신 디바이스는 SDA 라인에 대해 로직 로우 값을 어서트함으로써 긍정 응답 신호(160)에서 데이터(150)의 수신을 긍정적으로 응답한다. 데이터가 긍정 응답을 받는다면, 전송기는 추가 데이터(170)를 전송한다. 이러한 프로세스는 전체 데이터가 통신될 때까지 또는 전송된 데이터 항목이 부정 응답 신호(180)에서처럼 부정 응답될 때까지 계속된다. 이어서, 마스터는 START 신호(도시되지 않음)를 다시 어서트하며 상기의 프로세스를 반복하거나 STOP 신호(P)(190)를 어서트하여 데이터 전달 세션을 종결시킨다.
위의 인터페이스 프로토콜은 다양한 방식으로 구현될 수 있다. I2C 인터페이스를 프로그래밍하거나 설계하기 위한 개발 시간을 최소화하기 위해, 다양한 범용 인터페이스 방식이 개시되었다. Master's Thesis of Amrita Deshpande,University of New Mexico, 1999의 "DESIGN OF A BEHAVORIAL (REGISTER TRANSFER LEVEL,RTL) MODEL OF THE INTER-INTEGRATED CIRCUIT OR I2C-BUS MASTER-SLAVE INTERFACE"는 I2C 디바이스 내에 내장될 I2C 마스터 인터페이스 및 슬레이브 인터페이스를 개시하며, 상기 문헌은 본 명세서에서 참조로서 인용된다. 입증된 I2C 인터페이스를 제공함으로써, 시스템 설계자는 I2C 세부 사항 및 프로토콜을 세부적으로 언급할 필요가 없다. 상기 이론의 마스터 및 슬레이브 인터페이스들 모두는 상태 머신 기반형(state-machine based)이다.
참조된 이론의 I2C 슬레이브 프로토콜에 대응하는 상태도(200)가 도 2에 도시된다. 상태도(200)는 6 개의 상태(A-F)를 포함하며, 상태 전이는 마스터로부터의 SCL 클록 신호의 활성 에지 상에서 실행된다(0에서 1로의 전이). 즉, I2C 지정 사항(specifications)에 따라, 마스터는 SCL 클록 라인을 제어함으로써 버스 상의 동작들의 시퀀스 및 동기화를 제어한다. 슬레이브 디바이스는 마스터 디바이스와 동기적으로 동작해야 하며, 이로써 SDA 라인 상의 전이는 SCL 라인이 로우 상태일 때에만 발생하며, SCL 라인에 대한 하이 상태 기간 동안 유효한 데이터가 SDA 라인 상에 존재한다.
리셋 신호, 통상적으로 전력 온 리셋은 인터페스이스가 상태 A 즉 유휴 상태가 되게 한다. START 조건이 검출될 때, 인터페이스는 B 상태가 되며, 호스트로부터 도 1에서 전술한 어드레스(120) 및 데이터 방향 정보(130)를 수신한다. 수신된 슬레이브 어드레스가 특정 인터페이스(200)에 관련된 어드레스와 일치하지 않는다면, 인터페이스는 유휴 상태(A)로 복귀한다. 데이터 방향(130)이 판독 방향이면, 인터페이스는 상태(C)가 되며, 그렇지 않다면, 즉 데이터 방향(130)이 기록 방향이면 인터페이스는 상태(E)가 된다. 인터페이스가 상태(C) 또는 상태(E)가 될 때, 그의 어드레스 및 데이터 방향의 수신을 긍정 응답하여 요구된 판독 또는 기록 동작을 위해 인터페이스를 준비시킨다. 상술한 바처럼, 판독 동작 및 기록 동작은 마스터 디바이스와 관련된다. 그러므로, 슬레이브 디바이스에서, 판독은 판독을 위해 슬레이브가 데이터를 마스터에게 전송하라는 요청에 대응하며, 기록은 슬레이브가 마스터로부터 기록된 데이터를 수신하도록 하는 요청에 대응한다.
상태(C)에서, 마스터로 전송될 데이터는 로딩되고(loaded), 인터페이스는 상태(D)로 전이하며, 인터페이스는 로딩된 데이터를 마스터에게 전송한다. 마스터가 데이터의 수신을 긍정 응답하면, 인터페이스는 상태(C)로 복귀하며, 그렇지 않다면 인터페이스는 상태(A)로 복귀하여 시작 조건을 대기한다. 일반적으로, 마지막으로 요구된 데이터 요소가 수신될 때 부정 응답 신호(NAK)를 슬레이브에게 전송하고 이로써 슬레이브가 유휴 상태(A)로 복귀함으로써 수신된 데이터의 양을 마스터가 제어한다.
상태(E)에서, 수신된 데이터가 저장될 로케이션은 제거되며 인터페이스는 상태(F)가 되며, 인터페이스는 마스터로부터 데이터를 수신한다. 각 데이터 항목을 수신한 후에, 인터페이스는 긍정 응답 신호를 전송하며 다시 상태(E)가 되어 다음데이터 항목을 수신한다. 슬레이브 디바이스가 마스터로부터 데이터를 수신할 수 없다면, 슬레이브 디바이스는 마스터에게 부정 응답 신호를 어서트하여 현 데이터 전달 세션을 종결시키며 다시 유휴 상태(A)가 된다. 마스터가 다른 START 조건을 어서트하면, 인터페이스는 상태(B)가 되며, 그렇지 않고 마스터가 STOP 조건을 어서트하면, 인터페이스는 유휴 상태(A)로 복귀하여 다음 START 조건을 대기한다.
종래 기술 상태도(200)는 I2C 지정 사항을 구현하며, 상태도(200)를 구현하는 상태 머신을 제공함으로써 I2C 디바이스에게 표준 인터페이스를 제공한다. 프로세서, 메모리 요소, 디스플레이 디바이스 등과 같은 I2C 디바이스의 기능 요소는 상태(C)에서 전송될 데이터를 상태 머신에게 제공하는 것만을 필요로 하거나 상태(E)에서 수신될 데이터를 수신하기 위한 메모리 공간을 상태 머신에게 제공하는 것만을 필요로 한다. 이러한 방식으로, I2C 디바이스의 기능 요소의 설계자는 I2C 버스로의 인터페이스를 구현하는 세부적인 사항을 생각할 필요가 없다. 용이한 참조를 위해, 용어 상태 머신(200)은 이후부터 상태도(200)를 구현하는 상태 머신을 지칭한다.
종래 기술 상태 머신(200)이 I2C 버스 지정 사항을 구현하지만, 상기 머신는 수 많은 제한 사항을 갖는다. 위에서 언급한 바처럼, I2C 지정 사항에서는 마스터 디바이스가 I2C 버스에 대한 타이밍을 제어해야 한다. 이상적인 환경에서 양호하게 동작하는 마스터는 I2C 버스 인터페이스를 실행하기 위해 슬레이브 디바이스 내의 상태 머신(200)을 효과적으로 제어할 것이지만, 비이상적인 환경의 빈약하게 동작하는 마스터는 록킹-업(locking-up) 현상을 잠재적으로 가지거나 아니면 종래 기술 상태 머신(200)의 동작에 악영향을 줄 수 있으며 전체 I2C 버스의 동작에 잠재적으로 영향을 준다. 가령, 상태 머신(200)이 상태(D), 즉 데이터 전송 상태로 존재할 때 마스터에서의 문제 또는 의도되지 않은 접속 분리로 인해, 마스터가 SCL 라인을 토글링하는 것을 정지하면, 상태 머신(200)은 상태(D)로 남아 있을 것이다. 다른 마스터가 START 조건을 어서트함으로써 새로운 데이터 전달 세션을 개시하고 SCL 라인을 토글링할 때, 상태 머신(200)은 상태(D)가 아닌 상태로 존재할 것이며 다른 마스터가 그의 전달 세션 중 의도된 슬레이브의 어드레스를 전송할 때 그의 다음 비트를 전송할 것이다. 이후에, I2C 버스의 상태, 상태 머신(200)의 상태, 다른 마스터의 상태가 결정되지 않을 것이다. 상기 다른 마스터는 방해 또는 "백-오프(back-off)"를 인식할 가능성이 많지만, 상기 마스터 또는 또 다른 마스터가 다른 START 신호를 어서트한 후에 통신을 시도한다면 문제가 재발할 것이다. 이 문제는 상태 머신(200)이 그의 현 데이터 바이트의 모든 데이터 비트를 전송하고 이어서 다음 활성 SCL 기간에서 SDA 라인에 대한 하이 상태를 검출하고 이어서 유휴 상태(A)로 복귀할 때까지 지속될 것이다. 상태 머신이 그의 최종 데이터 비트의 전송을 따르는 다음 활성 SCL 기간에서 SDA 라인에 대한 로우 상태 값을 검출하면, 상기 상태 머신은 이를 긍정 응답 신호로서 해석할 것이며 상태(C)로 다시진행하여 다음 바이트를 로딩하고 각 SCL 전이에서 새로운 바이트의 각 비트를 계속 전송할 것이다. 다른 잠재적인 문제는 상태 머신(200)이 역시 다른 상태로 존재할 때 SCL 라인에 있어서의 다른 부조화 상황에서 발생할 것이다.
본 발명의 목적은 I2C 버스에 대한 인터페이스를 강성으로 제어할 수 있는 장치 및 방법을 제공하는 것이다. 본 발명의 다른 목적은 I2C 버스에 있어서 부적절한 및/또는 방해성 전송을 방지할 수 있는 장치 및 방법을 제공하는 것이다. 본 발명의 다른 목적은 마스터 디바이스의 부조화 동작 이후에 I2C 버스에 있어서 슬레이브 디바이스를 위한 복구 메카니즘을 제공하는 것이다.
이러한 목적들은 I2C 버스 인터페이스를 제어할 수 있는 강성 상태 머신(a robust state machine)을 제공함으로써 성취된다. 이 상태 머신은 I2C 지정 사항(specifications) 중 슬레이브 디바이스 프로토콜을 실행하고 마스터 디바이스의 부조화 동작으로부터의 복구를 제공한다. 본 발명에 따라, 슬레이브 디바이스에서 상태 머신의 상태 전이는 START 조건이 검출되는 경우를 제외하고 I2C 버스의 SCL 라인을 마스터 디바이스가 제어함으로써 제어된다. 상태 머신은 그의 현 상태와 상관없이 I2C 버스 상의 START 조건에 대해 비동기적으로 응답하여 상기 상태 머신이 알려진 상태가 되게 한다. START 조건 이후의 알려진 상태에서, 슬레이브 디바이스는 I2C 버스로의 임의의 전송을 종결시켜 버스에 대한 추후의 방해를 최소화한다.
본 발명은 첨부된 도면을 참조하여 예시적으로 보다 상세하게 설명될 것이다.
도면 전체에서, 동일한 참조 부호 및 상태 표시자는 유사한 또는 대응하는 특징 또는 기능을 표시한다.
본 발명은 데이터 통신 시스템에 관한 것이며, 특히 I2C 버스를 통해 통신을 용이하게 하는 디바이스 및 방법에 관한 것이다.
도 1은 본 기술 분야에서 통상적인, I2C 버스를 통한 데이터 전달의 예시적인 타이밍 도면,
도 2는 I2C 버스를 통한 데이터 전달을 용이하게 하는 종래 기술 상태 머신의 예시적인 상태도,
도 3은 본 발명에 따른, I2C 버스를 통한 데이터 전달을 용이하게 하는 상태 머신의 예시적인 상태도,
도 4는 본 발명에 따는, I2C 버스를 통한 데이터 전달을 용이하게 하는 상태 머신을 포함하는 I2C 디바이스의 예시적인 도면.
도 3은 본 발명에 따른, I2C 버스를 통한 데이터 전달을 용이하게 하는 상태 머신의 예시적인 상태도이다. 이 상태 머신(300)은 도 2의 상태 머신(200)과 유사한 상태(A-F)를 포함하며, 또한 특별한 시작 상태(G)를 더 포함한다. 상태 전이는 아래에서 주목되는 바를 제외하면 마스터 디바이스로부터의 SCL 클록 신호에 의해 제어된다.
본 발명에 따라, 시작 상태(G)는 유휴 상태(A)와 상이하며 종래 기술 상태 머신(200)의 어드레스 상태(B)와도 상이하다. START 조건이 I2C 버스 상에서 검출될 때마다, 임의의 다른 상태들이 비동기적으로 상기 시작 상태(G)로 진행한다. 즉, 상태 머신(300)은 SCL 라인의 클록킹에 의해 제어되지만, START 조건의 발생은 상기와 같은 제어에 의해 제어되지 않는다.
I2C 버스의 정상 동작 시에, START 조건은 상태 머신이 유휴 상태일 때에만 발생한다. 그러나, 마스터 디바이스에 의한 부조화 동작 및 I2C 버스 상에서의 잡음 유도된 전이 및 다른 부조화의 가능성에 대해 대비를 하여 상태 머신(300)이 유휴 상태(A)와 다른 상태로 존재할 시에 START 조건이 비정상적으로 발생하게 함으로써, 상태 머신(300)은 상기의 부조화의 영향으로부터 신속한 복구를 제공한다. 또한, 시작 상태(G)로의 전이가 비동기적이 되게 함으로써, 상태 머신(300)의 알려진 상태로의 복구는 SCL 라인 상의 마스터 디바이스의 클록킹 신호와 상관없이 실행된다.
본 기술 분야에서 통상적으로, 상태 머신은 현 상태를 인코딩하는 각 비트에 대해 통상적으로 D 플립 플롭인 저장 요소를 포함한다. 상기 저장 요소의 알려진 상태로의 비동기적 세팅은 가령 START 조건의 검출에 대응하는 신호를 각 저장 요소의 적절한 비동기적 SET 또는 RESET 입력에 접속함으로써 실행된다. START 조건의 검출, SCL 라인 하이 상태로 존재할 때에 SDA 라인에 있어서 하이에서 로우로의 전이의 발생은, 클록킹 입력으로써 SDA 라인을 가지며 데이터 입력으로서 SCL 라인을 갖는 네거티브 에지 트리거되는 플립 플롭(a negative-edge triggered filp-flop)에 의해 제공될 수 있다. 정상적이며 적절한 논 스타트(non-START) I2C 동작에서, SDA 라인의 전이는 오직 SCL 라인이 로우 상태일 때에만 발생하며, 상기 START 조건 검출기는 계속적으로 로우 입력을 제공할 것이다.
표 1은 본 발명에 따른 상태 머신(300)의 동작을 나타낸다. 각 상태(A-F)는 다음 시작 상태(G)를 생성하는 Start*입력 조건을 포함한다. 상기 아스테릭 부호는 상기 입력 조건이 상태 머신 상태 전이를 제어하는 클록 신호와 무관하게 다음 상태로의 즉각적이며 비동기적인 전이를 제공함을 표시한다.
본 발명의 바람직한 실시예에서, 상태(A-G)와 관련된 인코딩된 값은 Gray-코드를 사용하여 인코딩되며, 이로써 상태(G)로의 비동기적 전이 동안을 제외하고 각 상태 전이에서는 상태 값에서의 오직 하나의 비트 값만이 변경된다. 가령, 상태(B)가 0100으로 인코딩된다. 상태(B)로부터의 유효한 전이는 상태(A,C,E)로의 전이를 포함한다. 상태(A)가 0000으로 인코딩되며 이 값은 제 2의 최상위 비트(MSB, 좌측에서 우측으로 판독함)의 값 때문에 상태(B)와는 다르며, 상태(C)는 1100으로서 인코딩되며 이 값은 제 1 MSB 값 때문에 상태(B)와 다르다. 동시적으로 변경되는 비트 값의 수를 제한함으로써, 중간의 전이 상태 값이 생성되지 않아서 에러 유발 상태 변경을 방지한다. 가령, 상태(C)가 제 1 및 제 3 MSB로 인해 상태(B)(0100)와 다른 1110으로 인코딩되는 경우, 0100에서 1110으로의 전이는 상기 제 1 MSB 전이가 상기 제 3 MSB 전이 이전에 발생한다면 1100의 과도 상태 값을 제공할 수 있으며 또한 0100에서 1110으로의 전이는 상기 제 3 MSB 전이가 상기 제 1 MSB 전이 이전에 발생한다면 0110의 과도 상태 값을 제공할 수 있다. 이러한 Gray 코드 코딩을 제공하는 7 개의 4 비트 값의 세트가 표 1에 도시된다. 본 기술 분야에서 알려진 바처럼, 소정 코딩된 값을 간단하게 역전하고 치환한 값은 등가하는 Gray 코드이다.
도 4는 I2C 버스 상의 I2C 디바이스들(410-430)의 예시적인 구성을 도시하며, 여기서 디바이스 중 적어도 하나(410)는 본 발명에 따른 상태 머신(300)을 포함하는 I2C 버스 인터페이스(414)를 포함한다. I2C 디바이스들(410-430)은 프로세서, 메모리 요소, 디스플레이 디바이스 등과 같은 기능 요소를 포함하며, 상기 기능 요소는 I2C 버스(450)로 데이터를 전달하거나 상기 버스로부터 데이터를 수신한다. 본 발명에 따라, I2C 인터페이스(414)는 I2C 버스(450)로 전달될 데이터 출력 바이트를 단지 제공하고/하거나 버스(450)로부터의 데이터 입력 바이트를 수신하는 메모리를 제공함으로써 기능 요소(412)가 I2C 버스(450)로 데이터를 전달하고 상기 버스로부터의 데이터를 전달하는 것을 가능하게 한다. 인터페이스(414)는 I2C 지정 사항에 따르는 통신 방식의 실시예를 제공하며 특히 상술된 바와 같은 상태 머신(300)에 의해 제어되는 슬레이브 디바이스 인터페이스를 포함한다. I2C 버스에 대한 입증된 인터페이스를 제공함으로써, I2C 디바이스(410-430)의 기능 요소(412)의 설계자는 오직 데이터 출력 바이트를 제공하고 데이터 입력 바이트를 위한 메모리를 제공하면 되고 I2C 통신 프로토콜의 세부 규정에 대해서는 자유롭다.
전술한 실시예들은 단지 본 발명의 원리를 설명한 것이다. 이로써, 본 명세서에서 명백하게 기술되지 않았지만 본 발명의 원리를 다음의 청구 범위 내에서 구현하는 다양한 장치를 본 기술의 당업자는 고안할 수 있다.

Claims (19)

  1. 디바이스(400)에 있어서,
    I2C 버스(450)로 데이터를 제공하거나 상기 버스(450)로부터 데이터를 수신하는 기능 요소(412)와,
    상기 기능 요소(412) 및 상기 I2C 버스(450)에 동작가능하게 접속되어, 상기 기능 요소(412) 및 상기 I2C 버스(450) 간의 데이터 통신을 용이하게 하는 인터페이스(414)를 포함하되,
    상기 인터페이스(414)는 상기 인터페이스(414)를 제어하는 상태 머신(300)을 포함하며,
    상기 상태 머신(300)은 다수의 상태, 즉 유휴 상태(A), 어드레스 상태(B), 데이터 로딩 상태(C), 데이터 전송 상태(D), 데이터 제거 상태(E), 데이터 수신 상태(F), 시작 상태(G)를 포함하며,
    상기 상태 머신(300)은
    상기 I2C 버스(450) 상에서 시작 신호를 검출하자마자 비동기적으로 상기 시작 상태(G)로 되며,
    상기 I2C 버스(450) 상에서 리셋 신호를 검출하자마자 비동기적으로 상기 유휴 상태(A)로 되며,
    상기 I2C 버스(450) 상에서 다수의 클록 신호 중 각각의 클록 신호를 수신할 시에,
    상기 상태 머신(300)이 상기 시작 상태(G)로 존재하면 상기 어드레스 상태(B)로 되며,
    상기 상태 머신(300)이 상기 어드레스 상태(B)로 존재하고 판독 명령이 상기 I2C 버스(450)로부터 수신되면, 상기 데이터 로딩 상태(C)로 되며,
    상기 상태 머신(300)이 상기 데이터 로딩 상태(C)로 존재하면 상기 데이터 전송 상태(D)로 되며,
    상기 상태 머신(300)이 상기 어드레스 상태(B)로 존재하며 기록 명령이 상기 I2C 버스(450)로부터 수신되면, 상기 데이터 제거 상태(E)로 되며,
    상기 상태 머신(300)이 상기 데이터 제거 상태(E)로 존재하면 상기 데이터 수신 상태(F)로 되는
    디바이스.
  2. 제 1 항에 있어서,
    상기 상태 머신(300)은 상기 상태 머신(300)이 상기 어드레스 상태(B)로부터 상기 데이터 로딩 상태(C) 또는 상기 데이터 제거 상태(E)로 될 때마다 긍정 응답 신호(an acknowledge signal)를 어서트(assert)하는
    디바이스.
  3. 제 1 항에 있어서,
    상기 상태 머신(300)은
    상기 상태 머신(300)이 상기 데이터 전송 상태(D)로 존재하며 긍정 응답 신호가 상기 I2C 버스(450)로부터 수신되지 않으면, 상기 유휴 상태(A)로 되며,
    상기 상태 머신(300)이 상기 데이터 수신 상태(F)로 존재하며 상기 I2C 버스(450) 상에서의 데이터 전달이 완료되면 상기 유휴 상태(A)로 되는
    디바이스.
  4. 제 3 항에 있어서,
    상기 상태 머신(300)은 상기 상태 머신(300)이 상기 데이터 수신 상태(F)로부터 상기 유휴 상태(A)로 될 때마다 부정 응답 신호(a non-acknowledge signal)를 어서트하는
    디바이스.
  5. 제 1 항에 있어서,
    상기 상태 머신(300)은 상기 상태 머신(300)이 상기 어드레스 상태(B)로 존재하며 수신된 어드레스가 상기 디바이스(410)와 관련된 어드레스와 일치하지 않으면 상기 유휴 상태(A)로 되는
    디바이스.
  6. 제 1 항에 있어서,
    상기 상태 머신(300)은
    상기 상태 머신(300)이 상기 데이터 전송 상태(D)로 존재하며 전송된 데이터 항목이 긍정으로 응답되면 상기 데이터 로딩 상태(C)로 되며,
    상기 상태 머신(300)이 상기 데이터 수신 상태(F)로 존재하며 데이터 항목이 수신되면 상기 데이터 제거 상태(E)로 되는
    디바이스.
  7. 제 1 항에 있어서,
    상기 다수의 기능 상태들은 비트의 세트로서 인코딩되되,
    클록 신호를 수신할 시의 각 상태의 변경은 상기 비트의 세트 중 단일 비트만의 변경을 포함하는
    디바이스.
  8. 제 1 항에 있어서,
    상기 다수의 기능 상태는 비트의 세트로 인코딩되며,
    각 비트는 제 1 상태 비트 a 및 제 2 상태 비트 b를 가지되,
    상기 유휴 상태(A)는 aaaa로서 인코딩되며,
    상기 어드레스 상태(B)는 abaa로서 인코딩되며,
    상기 데이터 로딩 상태(C)는 bbaa로서 인코딩되며,
    상기 데이터 전송 상태(D)는 baaa로서 인코딩되며,
    상기 데이터 제거 상태(E)는 abba로서 인코딩되며,
    상기 데이터 수신 상태(F)는 aaba로서 인코딩되며,
    상기 시작 상태(G)는 abab로서 인코딩되는
    디바이스.
  9. 제 1 항에 있어서,
    상기 상태 머신(300)은 상기 I2C 버스(450) 상에서 정지 신호를 검출할 시에비동기적으로 상기 유휴 상태(A)로 되는
    디바이스.
  10. I2C 버스(450)를 통한 통신을 용이하게 하는 인터페이스 디바이스(414)에 있어서,
    상기 인터페이스 디바이스(414)를 제어하는 상태 머신(300)을 포함하되,
    상기 상태 머신(300)은 다수의 상태, 즉 유휴 상태(A), 어드레스 상태(B), 데이터 로딩 상태(C), 데이터 전송 상태(D), 데이터 제거 상태(E), 데이터 수신 상태(F), 시작 상태(G)를 포함하며,
    상기 상태 머신(300)은
    상기 I2C 버스(450) 상에서 시작 신호를 검출하자마자 비동기적으로 상기 시작 상태(G)로 되며,
    상기 I2C 버스(450) 상에서 리셋 신호를 검출하자마자 비동기적으로 상기 유휴 상태(A)로 되며,
    상기 I2C 버스(450) 상에서 다수의 클록 신호 중 각각의 클록 신호를 수신할 시에,
    상기 상태 머신(300)이 상기 시작 상태(G)로 존재하면 상기 어드레스상태(B)로 되며,
    상기 상태 머신(300)이 상기 어드레스 상태(B)로 존재하고 판독 명령이 상기 I2C 버스(450)로부터 수신되면, 상기 데이터 로딩 상태(C)로 되며,
    상기 상태 머신(300)이 상기 데이터 로딩 상태(C)로 존재하면 상기 데이터 전송 상태(D)로 되며,
    상기 상태 머신(300)이 상기 어드레스 상태(B)로 존재하며 기록 명령이 상기 I2C 버스(450)로부터 수신되면, 상기 데이터 제거 상태(E)로 되며,
    상기 상태 머신(300)이 상기 데이터 제거 상태(E)로 존재하면 상기 데이터 수신 상태(F)로 되는
    인터페이스 디바이스.
  11. 제 10 항에 있어서,
    상기 상태 머신(300)은
    상기 상태 머신(300)이 상기 어드레스 상태(B)로부터 상기 데이터 로딩 상태(C) 또는 상기 데이터 제거 상태(E)로 될 때마다 긍정 응답 신호(an acknowledge signal)를 어서트(assert)하며,
    상기 상태 머신(300)이 상기 데이터 수신 상태(F)로부터 상기 유휴 상태(A)로 될 때마다 부정 응답 신호(a non-acknowledge signal)를 어서트하는
    인터페이스 디바이스.
  12. 제 10 항에 있어서,
    상기 상태 머신(300)은
    상기 상태 머신(300)이 상기 데이터 전송 상태(D)로 존재하며 긍정 응답 신호가 상기 I2C 버스(450)로부터 수신되지 않으면, 상기 유휴 상태(A)로 되며,
    상기 상태 머신(300)이 상기 데이터 수신 상태(F)로 존재하며 상기 I2C 버스(450) 상에서의 데이터 전달이 완료되면 상기 유휴 상태(A)로 되며,
    상기 상태 머신(300)이 상기 어드레스 상태(B)로 존재하고 수신된 어드레스가 유효하지 않으면, 상기 유휴 상태(A)로 되며,
    상기 상태 머신(300)이 상기 데이터 전송 상태(D)로 존재하며 전송된 데이터 항목이 긍정으로 응답되면 상기 데이터 로딩 상태(C)로 되며,
    상기 상태 머신(300)이 상기 데이터 수신 상태(F)로 존재하며 데이터 항목이 수신되면 상기 데이터 제거 상태(E)로 되는
    인터페이스 디바이스.
  13. 제 10 항에 있어서,
    상기 다수의 기능 상태들은 비트의 세트로서 인코딩되되,
    클록 신호를 수신할 시의 각 상태의 변경은 상기 비트의 세트 중 단일 비트만의 변경을 포함하는
    인터페이스 디바이스.
  14. 제 10 항에 있어서,
    상기 다수의 기능 상태는 비트의 세트로 인코딩되며,
    각 비트는 제 1 상태 비트 a 및 제 2 상태 비트 b를 가지되,
    상기 유휴 상태(A)는 aaaa로서 인코딩되며,
    상기 어드레스 상태(B)는 abaa로서 인코딩되며,
    상기 데이터 로딩 상태(C)는 bbaa로서 인코딩되며,
    상기 데이터 전송 상태(D)는 baaa로서 인코딩되며,
    상기 데이터 제거 상태(E)는 abba로서 인코딩되며,
    상기 데이터 수신 상태(F)는 aaba로서 인코딩되며,
    상기 시작 상태(G)는 abab로서 인코딩되는
    인터페이스 디바이스.
  15. 제 10 항에 있어서,
    상기 상태 머신(300)은 상기 I2C 버스(450) 상에서 정지 신호를 검출할 시에 비동기적으로 상기 유휴 상태(A)로 되는
    인터페이스 디바이스.
  16. 상태 머신(300)을 통해 I2C 버스(450) 상에서의 통신을 용이하게 하는 방법에 있어서,
    상기 I2C 버스(450) 상에서 시작 신호를 검출하자마자 비동기적으로 시작 상태(G)로 되는 단계와,
    상기 I2C 버스(450) 상에서 리셋 신호를 검출하자마자 비동기적으로 유휴 상태(A)로 되는 단계와,
    상기 I2C 버스(450) 상에서 다수의 클록 신호 중 각각의 클록 신호를 수신할 시에,
    상기 상태 머신(300)이 상기 시작 상태(G)로 존재하면 어드레스 상태(B)로 되는 단계와,
    상기 상태 머신(300)이 상기 어드레스 상태(B)로 존재하고 판독 명령이 상기 I2C 버스(450)로부터 수신되면, 데이터 로딩 상태(C)로 되는 단계와,
    상기 상태 머신(300)이 상기 데이터 로딩 상태(C)로 존재하면 데이터 전송 상태(D)로 되는 단계와,
    상기 상태 머신(300)이 상기 어드레스 상태(B)로 존재하며 기록 명령이 상기 I2C 버스(450)로부터 수신되면, 데이터 제거 상태(E)로 되는 단계와,
    상기 상태 머신(300)이 상기 데이터 제거 상태(E)로 존재하면 데이터 수신 상태(F)로 되는 단계를 포함하는
    통신 방법.
  17. 제 16 항에 있어서,
    상기 상태 머신(300)이 상기 어드레스 상태(B)로 존재하면 상기 상태 머신(300)이 상기 데이터 로딩 상태(C) 또는 상기 데이터 제거 상태(E)로 되는 단계는, 긍정 응답 신호를 어서트하는 단계를 포함하는
    통신 방법.
  18. 제 16 항에 있어서,
    상기 상태 머신(300)이 상기 데이터 전송 상태(D)로 존재하며 긍정 응답 신호가 상기 I2C 버스(450)로부터 수신되지 않으면, 상기 유휴 상태(A)로 되는 단계와,
    상기 상태 머신(300)이 상기 데이터 수신 상태(F)로 존재하며 상기 I2C 버스(450) 상에서의 데이터 전달이 완료되면 상기 유휴 상태(A)로 되는 단계와,
    상기 상태 머신(300)이 상기 어드레스 상태(B)로 존재하고 수신된 어드레스가 상기 상태 머신(300)과 관련된 어드레스와 일치하지 않으면, 상기 유휴 상태(A)로 되는 단계와,
    상기 상태 머신(300)이 상기 데이터 전송 상태(D)로 존재하며 전송된 데이터 항목이 긍정으로 응답되면 상기 데이터 로딩 상태(C)로 되는 단계와,
    상기 상태 머신(300)이 상기 데이터 수신 상태(F)로 존재하며 데이터 항목이 수신되면 상기 데이터 제거 상태(E)로 되는 단계를 더 포함하는
    통신 방법.
  19. 제 16 항에 있어서,
    상기 I2C 버스(450) 상에서 정지 신호를 검출할 시에 비동기적으로 상기 유휴 상태(A)로 되는 단계를 더 포함하는
    통신 방법.
KR10-2003-7002970A 2001-06-29 2002-06-14 인터페이스 디바이스 및 이를 포함하는 디바이스 및 통신방법 KR20030033040A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/895,921 2001-06-29
US09/895,921 US6799233B1 (en) 2001-06-29 2001-06-29 Generalized I2C slave transmitter/receiver state machine
PCT/IB2002/002301 WO2003005211A2 (en) 2001-06-29 2002-06-14 Generalized i2c slave transmitter/receiver state machine

Publications (1)

Publication Number Publication Date
KR20030033040A true KR20030033040A (ko) 2003-04-26

Family

ID=25405296

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-7002970A KR20030033040A (ko) 2001-06-29 2002-06-14 인터페이스 디바이스 및 이를 포함하는 디바이스 및 통신방법

Country Status (9)

Country Link
US (1) US6799233B1 (ko)
EP (1) EP1405192B1 (ko)
JP (1) JP2004534322A (ko)
KR (1) KR20030033040A (ko)
CN (1) CN1286031C (ko)
AT (1) ATE360855T1 (ko)
DE (1) DE60219790T2 (ko)
TW (1) TWI223154B (ko)
WO (1) WO2003005211A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150079318A (ko) * 2013-12-31 2015-07-08 엘지디스플레이 주식회사 전력 최적화 시스템과 이의 구동 방법

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040225814A1 (en) * 2001-05-29 2004-11-11 Ervin Joseph J. Method and apparatus for constructing wired-AND bus systems
AU2003900960A0 (en) 2003-03-03 2003-03-13 Sola International Holdings Ltd Tinting optical substrates
US20060075164A1 (en) * 2004-09-22 2006-04-06 Ooi Eng H Method and apparatus for using advanced host controller interface to transfer data
JP2006099410A (ja) * 2004-09-29 2006-04-13 Mitsubishi Electric Corp I2cバス制御方法
CN100571517C (zh) * 2004-12-31 2009-12-23 风间行男 害虫驱避剂的制备方法以及害虫的驱避方法
CN100346330C (zh) * 2005-03-10 2007-10-31 华为技术有限公司 恢复i2c主器件和i2c从器件通讯的方法
DE602006003648D1 (de) * 2005-04-29 2008-12-24 Koninkl Philips Electronics Nv Gleichzeitige steuerung mehrer e/a-banken in einer i2c-slave-einrichtung
ATE458224T1 (de) * 2005-04-29 2010-03-15 Nxp Bv Dynamischer 12c-slave-einrichtungs- adressendecoder
WO2006117747A1 (en) * 2005-04-29 2006-11-09 Koninklijke Philips Electronics, N.V. 12c slave device with programmable write-transaction cycles
KR100687923B1 (ko) * 2005-04-29 2007-02-27 삼성전자주식회사 마스터디바이스, 그 제어방법과 마스터디바이스를 갖는전자장치
US7711867B2 (en) * 2005-04-29 2010-05-04 Nxp B.V. Programming parallel 12C slave devices from a single 12C data stream
WO2006117752A1 (en) * 2005-04-29 2006-11-09 Koninklijke Philips Electronics, N.V. I2c slave/master interface enhancement using state machines
JP2008539497A (ja) * 2005-04-29 2008-11-13 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 集積回路間におけるスレーブ装置の装置識別コーディング
WO2006117748A1 (en) * 2005-04-29 2006-11-09 Koninklijke Philips Electronics, N.V. Slave device with latched request for service
US20060294275A1 (en) * 2005-06-23 2006-12-28 Emil Lambrache Fast two wire interface and protocol for transferring data
CN100426274C (zh) * 2005-08-08 2008-10-15 中兴通讯股份有限公司 避免i2c总线锁定的方法与装置
US20070043851A1 (en) * 2005-08-16 2007-02-22 Netdevices, Inc. Facilitating a user to detect desired anomalies in data flows of networks
DE102006004346A1 (de) * 2006-01-30 2007-10-18 Deutsche Thomson-Brandt Gmbh Datenbusschnittstelle mit abschaltbarem Takt
JP2008293230A (ja) * 2007-05-24 2008-12-04 Nec Engineering Ltd データ転送装置
US7721155B2 (en) 2007-06-27 2010-05-18 International Business Machines Corporation I2C failure detection, correction, and masking
JP4774029B2 (ja) * 2007-10-17 2011-09-14 三菱電機株式会社 計装制御システム
US7752365B2 (en) * 2008-04-01 2010-07-06 Kyocera Corporation Bi-directional single conductor interrupt line for communication bus
US8224602B2 (en) 2008-11-11 2012-07-17 Nxp B.V. Automatic on-demand prescale calibration across multiple devices with independent oscillators over an I2C Bus interface
US7930127B2 (en) * 2008-11-11 2011-04-19 Nxp B.V. Oscillator prescale calibration for harmonizing multiple devices with independent oscillators over an I2C bus interface
JP5217982B2 (ja) * 2008-12-04 2013-06-19 ソニー株式会社 情報処理装置および方法、並びにプログラム
DE102011003729A1 (de) 2010-02-08 2011-08-11 Robert Bosch GmbH, 70469 Neuartige Schaltung und Methode zur Kommunikation über eine einzelne Leitung
US9671820B2 (en) 2011-11-25 2017-06-06 Mitsubishi Electric Corporation Communication device, communication method, and communication system
US9086966B2 (en) * 2013-03-15 2015-07-21 Intel Corporation Systems, apparatuses, and methods for handling timeouts
CN103714036B (zh) * 2013-12-20 2016-07-20 武汉精立电子技术有限公司 支持批量读取校验的i2c多路复用器及控制方法
DE102014206752B4 (de) * 2014-04-08 2021-08-12 Robert Bosch Gmbh Bestimmung des Zustands eines I2C-Busses
WO2015193707A1 (en) 2014-06-19 2015-12-23 X-Fab Semiconductor Foundries Ag Sleek serial interface for a wrapper boundary register (device and method)
JP2016063359A (ja) 2014-09-17 2016-04-25 株式会社東芝 バスインタフェース回路
DE102014223362A1 (de) * 2014-11-17 2016-05-19 Robert Bosch Gmbh Steuerungseinrichtung für I²C-Slave-Einrichtungen
US9846672B2 (en) 2015-02-02 2017-12-19 Atmel Corporation Serial device with configuration mode for changing device behavior
KR102618563B1 (ko) 2016-07-01 2023-12-27 삼성전자주식회사 집적 회로 장치와 이를 포함하는 전자 장치
US10804942B2 (en) 2018-05-24 2020-10-13 Analog Devices, Inc. State-machine based body scanner imaging system
CN112445743B (zh) * 2019-09-04 2024-03-22 珠海格力电器股份有限公司 一种去除毛刺的方法、装置及状态机
JP7283412B2 (ja) * 2020-02-14 2023-05-30 株式会社デンソー 通信システム
CN113114550B (zh) * 2021-04-07 2022-06-21 中国科学院苏州生物医学工程技术研究所 一种i2c通信控制方法、设备及存储介质
CN113254247A (zh) * 2021-05-14 2021-08-13 山东英信计算机技术有限公司 一种服务器bmc i2c异常恢复方法及相关装置
US11777546B2 (en) 2021-05-27 2023-10-03 Rambus Inc. Receiver with improved noise immunity
CN116820840A (zh) * 2023-07-03 2023-09-29 白盒子(上海)微电子科技有限公司 一种i2c总线挂死自动恢复方法、装置、设备和介质

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2565751B1 (fr) * 1984-06-08 1986-09-05 Radiotechnique Compelec Circuit d'interface du type esclave
US5758098A (en) * 1994-05-12 1998-05-26 Apple Computer, Inc. Method and apparatus for providing a high throughput two-conductor serial interface with support for slave device detection
US5696994A (en) * 1995-05-26 1997-12-09 National Semiconductor Corporation Serial interface having control circuits for enabling or disabling N-channel or P-channel transistors to allow for operation in two different transfer modes
KR0184136B1 (ko) * 1996-06-03 1999-05-15 구자홍 범용 마이컴을 이용한 아이 스퀘어 씨 통신 장치
US5878234A (en) * 1996-09-10 1999-03-02 Sierra Wireless, Inc. Low power serial protocol translator for use in multi-circuit board electronic systems
GB2326065B (en) * 1997-06-05 2002-05-29 Mentor Graphics Corp A scalable processor independent on-chip bus
KR100285956B1 (ko) * 1998-06-30 2001-04-16 윤종용 고속직렬버스에연결된동기식및비동기식장치의제어시스템과제어방법
US6622188B1 (en) * 1998-09-30 2003-09-16 International Business Machines Corporation 12C bus expansion apparatus and method therefor
US6175887B1 (en) * 1998-10-21 2001-01-16 Sun Microsystems, Inc. Deterministic arbitration of a serial bus using arbitration addresses
US6286073B1 (en) * 1998-12-01 2001-09-04 Lucent Technologies Inc. Integrated circuit interface between a personal computer and an external device
US6253269B1 (en) * 1998-12-22 2001-06-26 3Com Corporation Bus arbiter system and method for managing communication buses
US6253268B1 (en) * 1999-01-15 2001-06-26 Telefonaktiebolaget L M Ericsson (Publ) Method and system for multiplexing a second interface on an I2C interface
US6684362B1 (en) * 1999-02-18 2004-01-27 International Business Machines Corporation Method and apparatus for connecting manufacturing test interface to a global serial bus including an I2 c bus
US6530029B1 (en) * 1999-09-23 2003-03-04 National Semiconductor Corporation I2C/SMBus start-stop detecting circuit that reduces the likelihood of stalling the bus due to glitches on the data line
US6553441B1 (en) * 1999-11-30 2003-04-22 3Com Corporation Method and apparatus for using serial bus for PC management
US6591322B1 (en) * 2000-08-01 2003-07-08 Sun Microsystems, Inc. Method and apparatus for connecting single master devices to a multimaster wired-and bus environment
US20020108011A1 (en) * 2000-12-11 2002-08-08 Reza Tanha Dual interface serial bus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150079318A (ko) * 2013-12-31 2015-07-08 엘지디스플레이 주식회사 전력 최적화 시스템과 이의 구동 방법

Also Published As

Publication number Publication date
DE60219790D1 (de) 2007-06-06
US6799233B1 (en) 2004-09-28
WO2003005211A3 (en) 2003-05-22
TWI223154B (en) 2004-11-01
JP2004534322A (ja) 2004-11-11
EP1405192A2 (en) 2004-04-07
CN1537281A (zh) 2004-10-13
EP1405192B1 (en) 2007-04-25
ATE360855T1 (de) 2007-05-15
DE60219790T2 (de) 2008-03-20
WO2003005211A2 (en) 2003-01-16
CN1286031C (zh) 2006-11-22

Similar Documents

Publication Publication Date Title
KR20030033040A (ko) 인터페이스 디바이스 및 이를 포함하는 디바이스 및 통신방법
EP1877911B1 (en) I2c slave/master interface enhancement using state machines
EP1877916B1 (en) Dynamic 12c slave device address decoder
US7979597B2 (en) Programming parallel I2C slave devices from a single I2C data stream
US5878234A (en) Low power serial protocol translator for use in multi-circuit board electronic systems
US10204065B2 (en) Methods and apparatus for a multiple master bus protocol
JP2008539497A (ja) 集積回路間におけるスレーブ装置の装置識別コーディング
WO2007030978A1 (fr) Procede, appareil de reinitialisation et equipement pour effectuer la reinitialisation d'un dispositif maitre dans un bus i2c
US5884044A (en) Dedicated DDC integrable multimode communications cell
CN114911743B (zh) Spi从机设备、spi主机设备和相关的通信方法
WO2000002134A2 (en) Improved inter-device serial bus protocol
US6175887B1 (en) Deterministic arbitration of a serial bus using arbitration addresses
US20030053573A1 (en) Microcontroller having a transmission-bus-interface
CN117033292A (zh) 基于apb总线控制的i2c中断方法
JPH10207834A (ja) シリアル入出力回路
JPH11250008A (ja) シリアルi/o回路
CN116467241A (zh) I2c唤醒电路、方法和电子装置
MX7cK Synchronous I2C Communications with the
JPH0560134B2 (ko)
JPH06216911A (ja) 通信方法
JPS63234757A (ja) シリアル通信方式
JPH05173958A (ja) データ転送方法

Legal Events

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