KR20160037114A - 직렬 주변장치 인터페이스 - Google Patents

직렬 주변장치 인터페이스 Download PDF

Info

Publication number
KR20160037114A
KR20160037114A KR1020150136929A KR20150136929A KR20160037114A KR 20160037114 A KR20160037114 A KR 20160037114A KR 1020150136929 A KR1020150136929 A KR 1020150136929A KR 20150136929 A KR20150136929 A KR 20150136929A KR 20160037114 A KR20160037114 A KR 20160037114A
Authority
KR
South Korea
Prior art keywords
slave
state
line
master
select line
Prior art date
Application number
KR1020150136929A
Other languages
English (en)
Other versions
KR102416283B1 (ko
Inventor
올리비에 샹레
니콜라스 모린
Original Assignee
오베르뛰르 테크놀로지스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 오베르뛰르 테크놀로지스 filed Critical 오베르뛰르 테크놀로지스
Publication of KR20160037114A publication Critical patent/KR20160037114A/ko
Application granted granted Critical
Publication of KR102416283B1 publication Critical patent/KR102416283B1/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/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
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • G06F13/26Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0002Serial port, e.g. RS232C
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/24Interrupt
    • G06F2213/2418Signal interruptions by means of a message

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)
  • Bus Control (AREA)

Abstract

직렬 주변 장치 인터페이스(20)는 마스터 디바이스(10)와 적어도 하나의 슬레이브 디바이스(1-3)를 연결한다. 직렬 주변 장치 인터페이스(20)는 슬레이브 선택 라인(25)을 포함한다. 슬레이브 디바이스(1)는 슬레이브 선택 라인(25)의 상태를 비활성 상태를 나타내는 제1 상태에서 활성 상태를 나타내는 제2 상태로 변경함에 의해 인터럽트 요청을 마스터 디바이스(10)에 시그널링할 수 있다. 슬레이브 선택 라인(25)은 슬레이브 디바이스(1)의 입/출력단(52)에 연결될 수 있으며, 이 입/출력단은: 마스터 디바이스(10) 또는 슬레이브 디바이스(1)가 슬레이브 선택 라인(25)의 상태를 변경하지 않는 경우 슬레이브 선택 라인(25)이 제1 상태에 남아 있게 하며; 마스터 디바이스(10) 또는 슬레이브 디바이스(1)가 슬레이브 선택 라인(25)의 상태를 변경하길 원하는 경우 슬레이브 선택 라인(25)이 제2 상태로 변경되게 한다.

Description

직렬 주변장치 인터페이스{SERIAL PERIPHERAL INTERFACE}
본 발명은 직렬 주변 장치 인터페이스를 이용하는 통신에 관한 것이다.
직렬 주변 장치 인터페이스(SPI, Serial Peripheral Interface)는 마스터 디바이스와 하나 이상의 슬레이브 디바이스 간에 통신을 허용하는 직렬 데이터 링크이다.
직렬 주변 장치 인터페이스는 4개의 라인을 포함한다: 직렬 클록(SCLK, Serial Clock), 마스터 아웃 슬레이브 인(MOSI, Master Out Slave In), 마스터 인 슬레이브 아웃(MISO, Master In Slave Out), 및 슬레이브 선택(SS, Slave Select). SCLK, MOSI 및 MISO는 마스터 슬레이브와 모든 슬레이브 디바이스 사이에 연결된다. 슬레이브 디바이스마다 전용 SS 라인이 있다. 마스터는 통신을 위해 현재 선택된 슬레이브에 시그널링하기 위해 SS 라인을 이용한다.
마스터 디바이스는 슬레이브 디바이스들이 전송할 데이터를 가지고 있는지 결정하기 위해 슬레이브 디바이스들을 개별적으로 폴링할 수 있다. 다른 접근법은 슬레이브와 마스터 사이에 추가 라인을 제공하는 것이다. 이런 추가 라인은 슬레이브에서 마스터로 인터럽트 요청을 시그널링하는데 이용될 수 있다. 이런 접근법의 단점은 추가 라인들, 및 마스터에서의 추가 입/출력 처리를 요구한다는데 있다.
본 발명의 일 양상은 직렬 주변 장치 인터페이스를 이용하여 슬레이브 디바이스와 마스터 디바이스 간에 통신하는 방법을 제공하며, 직렬 주변 장치 인터페이스는 슬레이브 선택 라인을 포함하고, 이 방법은 슬레이브 디바이스에서, 슬레이브 선택 라인의 상태를 비활성 상태를 나타내는 제1 상태에서 활성 상태를 나타내는 제2 상태로 변경함에 의해 인터럽트 요청을 마스터 디바이스에 시그널링하는 단계를 포함한다.
시그널링 단계는 슬레이브 선택 라인을 제1 상태로 복귀시키는 단계를 더 포함할 수 있다.
방법은 마스터 디바이스가 슬레이브 선택 라인을 제2 상태에 두는 것을 기다리는 단계, 및 슬레이브 디바이스로부터 직렬 주변 장치 인터페이스의 데이터 라인을 통해 데이터를 전송하는 단계를 더 포함할 수 있다.
슬레이브 선택 라인은 슬레이브 디바이스의 입/출력단에 연결될 수 있으며, 이 입/출력단은: 마스터 디바이스 또는 슬레이브 디바이스가 슬레이브 선택 라인의 상태를 변경하지 않는 경우 슬레이브 선택 라인이 제1 상태에 남아 있게 하며; 마스터 디바이스 또는 슬레이브 디바이스가 슬레이브 선택 라인의 상태를 변경하길 원하는 경우 슬레이브 선택 라인이 제2 상태로 변경되게 한다.
입/출력단은 마스터 디바이스 또는 슬레이브 디바이스가 슬레이브 선택 라인의 상태를 제2 상태에 유지하길 원하는 경우 슬레이브 선택 라인이 제2 상태에 남아있게 할 수 있다.
바람직하게, 이동 전화와 같은 하나의 동일한 이동 디바이스에 마스터 디바이스와 함께 위치하는 내장된 또는 이동식 보안 요소인 단일 슬레이브 디바이스가 있다.
다른 바람직한 특징에 따르면, 마스터 디바이스와 슬레이브 디바이스 간의 통신은 ISO 78/16-4 표준에 부합하는 애플리케이션 프로토콜 데이터 유닛을 이용하여 이루어진다.
본 발명의 다른 양상은 직렬 주변 장치 인터페이스를 이용하여 슬레이브 디바이스와 마스터 디바이스 간에 통신하는 방법을 제공하며, 직렬 주변 장치 인터페이스는 슬레이브 디바이스마다 슬레이브 선택 라인을 포함하고, 방법은 마스터 디바이스에서, 슬레이브 디바이스가 슬레이브 선택 라인을 비활성 상태를 나타내는 제1 상태에서 활성 상태를 나타내는 제2 상태로 변경하는 때를 검출함에 의해 슬레이브 디바이스가 인터럽트를 요청한 때를 결정하는 단계를 포함한다.
방법은 슬레이브 디바이스가 인터럽트를 요청했다는 결정에 응답하여, 슬레이브 선택 라인을 제2 상태에 둠으로써 슬레이브 디바이스를 선택하는 단계; 및 슬레이브 디바이스로부터 직렬 주변 장치 인터페이스의 데이터 라인을 통해 데이터를 검색하는 단계를 더 포함할 수 있다.
복수의 슬레이브 디바이스가 존재할 수 있으며, 이들 각각은 각각의 슬레이브 선택 라인에 의해 마스터 디바이스에 연결되고, 방법은 복수의 슬레이브 디바이스의 슬레이브 선택 라인들을 모니터링하는 단계를 포함할 수 있다.
방법은 복수의 슬레이브 디바이스로부터 인터럽트 요청들을 수신하는 단계; 및 인터럽트 요청들을 우선순위화하는 단계를 더 포함할 수 있다.
슬레이브 선택 라인은 슬레이브 디바이스의 입/출력단에 연결될 수 있으며, 이 입/출력단은: 마스터 디바이스 또는 슬레이브 디바이스가 슬레이브 선택 라인의 상태를 변경하지 않는 경우 슬레이브 선택 라인이 제1 상태에 남아있게 하며; 마스터 디바이스 또는 슬레이브 디바이스가 슬레이브 선택 라인의 상태를 변경하길 원하는 경우 슬레이브 선택 라인이 제2 상태로 변경되게 한다.
입/출력단은 또한 마스터 디바이스 또는 슬레이브 디바이스가 슬레이브 선택 라인의 상태를 제2 상태에 유지하길 원하는 경우 슬레이브 선택 라인이 제2 상태에 남아 있게 할 수 있다.
입/출력단은 범용 입출력 모듈일 수 있다.
제1 상태는 하이 상태(high state)일 수 있으며, 제2 상태는 로우 상태(low state)일 수 있다.
직렬 주변 장치 인터페이스는 클럭 라인, 마스터 아웃 슬레이브 인 데이터 라인 및 마스터 인 슬레이브 아웃 데이터 라인을 더 포함할 수 있다.
본 발명의 다른 양상은 슬레이브 디바이스에서, 마스터 디바이스와 통신하기 위한 직렬 주변 장치 인터페이스를 포함하는 장치를 제공하며, 직렬 주변 장치 인터페이스는 슬레이브 선택 라인을 포함하고, 장치는 슬레이브 선택 라인의 상태를 비활성 상태를 나타내는 제1 상태에서 활성 상태를 나타내는 제2 상태로 변경함에 의해 인터럽트 요청을 마스터 디바이스에 시그널링하도록 구성된다.
본 발명의 또 다른 양상은 마스터 디바이스에서, 슬레이브 디바이스와 통신하기 위한 직렬 주변 장치 인터페이스를 포함하는 장치를 제공하며, 직렬 주변 장치 인터페이스는 슬레이브 디바이스마다 슬레이브 선택 라인을 포함하며, 장치는 슬레이브 디바이스가, 슬레이브 선택 라인이 비활성 상태를 나타내는 제1 상태에서 활성 상태를 나타내는 제2 상태로 변경되게 한 때를 검출함에 의해 슬레이브 디바이스가 인터럽트를 요청한 때를 결정하도록 구성된다.
슬레이브 디바이스 및 마스터 디바이스에서 직렬 주변 장치 인터페이스는 입/출력단을 포함할 수 있으며, 이 입/출력단은: 마스터 디바이스 또는 슬레이브 디바이스가 슬레이브 선택 라인의 상태를 변경하지 않는 경우 슬레이브 선택 라인이 제1 상태에 남아 있게 하며; 마스터 디바이스 또는 슬레이브 디바이스가 슬레이브 선택 라인의 상태를 변경하길 원하는 경우 슬레이브 선택 라인이 제2 상태로 변경하게 하도록 구성된다.
입/출력단은 범용 입출력 모듈을 포함할 수 있다.
입/출력단은 풀업 저항을 가진 개방 컬렉터 또는 개방 드레인단을 포함할 수 있다.
본 명세서에 설명된 기능은 하드웨어, 처리 장치에 의해 실행되는 소프트웨어, 또는 하드웨어 및 소프트웨어의 조합에 의해 구현될 수 있다. 처리 장치는 컴퓨터, 프로세서, 상태 머신, 로직 어레이 또는 임의의 다른 적당한 처리 장치를 포함할 수 있다. 처리 장치는 범용 프로세서가 요청된 작업을 수행하게 하기 위한 소프트웨어를 실행하는 범용 프로세서일 수 있거나, 또는 처리 장치는 요청된 기능을 수행하는데 전용될 수 있다. 본 발명의 또 다른 양상은 프로세서에 의해 실행될 때 설명된 또는 청구항의 방법들 중 임의의 것을 수행하는 머신 판독 가능 명령어들(소프트웨어)을 제공한다. 머신 판독 가능 명령어들은 전자 메모리 디바이스, 하드 디스크, 광 디스크 또는 다른 머신 판독 가능 저장 매체상에 저장될 수 있다. 머신 판독 가능 매체는 비일시적 머신 판독 가능 매체일 수 있다. 용어 "비일시적 머신 판독 가능 매체"는 일시적인 전파 신호를 제외한 모든 머신 판독 가능 매체를 포함한다. 머신 판독 가능 명령어들은 네트워크 연결을 통해 저장 매체에 다운로드 가능할 수 있다.
적어도 하나의 실시예의 장점은 슬레이브 디바이스가 통신할 어떤 것을 갖고 있을 때 인터럽트 요청을 마스터 디바이스에 시그널링할 수 있다는 것이다. 이는 슬레이브 디바이스가 정상적인 방식으로 다음 폴링될 때까지 대기할 필요를 피할 수 있으며, 이에 따라 디바이스들 간에 통신시 지연을 감소할 수 있다.
적어도 하나의 실시예의 장점은 슬레이브 디바이스가 슬레이브 디바이스와 마스터 디바이스 사이에 추가 라인을 요구함이 없이 인터럽트 요청을 마스터 디바이스에 시그널링할 수 있다는 것이다.
본 발명의 실시예들은 첨부된 도면을 참고하여 단지 예로서 설명될 것이다.
도 1은 SPI에 의해 연결된 마스터 디바이스와 복수의 슬레이브 디바이스를 개략적으로 도시한다.
도 2는 SPI를 통한 마스터 디바이스와 슬레이브 디바이스 간의 시그널링의 예를 도시한다.
도 3은 디바이스에서 장치의 예를 도시한다.
도 1은 마스터 디바이스(10)와 3개의 슬레이브 디바이스(1, 2, 3)를 포함하는 시스템을 개략적으로 도시한다. 디바이스들(1, 2, 3, 10)은 직렬 주변 장치 인터페이스(SPI)(20)에 의해 연결된다. SPI(20)는 인터페이스를 지원하기 위한 디바이스들(1, 2, 3, 10) 각각에서의 인터페이스들(28, 29), 및 신호를 운반하기 위한 디바이스들 간의 라인들(21)을 포함한다. 라인들(21)은 디바이스들(1, 2, 3, 10) 사이의 도전성 트랙들일 수 있다. SPI는 직렬 클록(SCLK) 라인(22), 마스터 아웃 슬레이브 인(MOSI) 라인(23) 및 마스터 인 슬레이브 아웃(MISO) 라인(24)을 포함한다. SCLK, MOSI 및 MISO 라인들은 마스터 디바이스(10)와 모든 슬레이브 디바이스들(1-3) 사이에 연결된다. SPI는 또한 슬레이브 디바이스마다 슬레이브 선택(SS) 라인을 포함한다. 슬레이브 디바이스(1)에 대한 제1 SS 라인(25), 슬레이브 디바이스(2)에 대한 제2 SS 라인(26) 및 슬레이브 디바이스(3)에 대한 제3 SS 라인(27)이 있다. 슬레이브 선택 라인에 대한 다른 명칭은 칩 선택 라인이다. 각각의 디바이스에서 인터페이스들(28, 29)은 SPI의 라인들(21)에 물리적으로 연결하기 위한 회로를 포함할 수 있다. 인터페이스들(28, 29)은 SPI(20)의 라인들(21)을 구동하기 위한 회로를 포함할 수 있다. 인터페이스들(28, 29)은 SPI의 하나 이상의 라인(21)을 판독하기 위한 회로를 포함할 수 있다. 명료성을 위해, 본 설명에서 SPI의 각각의 라인은 이것이 운반하는 신호에 따라 설명된다. 예를 들어, 직렬 클록 라인(22)은 직렬 클록 신호를 운반한다. SPI는 동일한 또는 상이한 회로 기판들 상의 집적 회로들(칩들) 간에 이용될 수 있다. 슬레이브 디바이스의 예들은 주변 장치 디바이스들 및 스마트 카드들을 포함한다. 일례로서, 슬레이브 디바이스는 이동 전화와 같은 이동 디바이스에 내장된 보안 칩일 수 있으며, 보안 칩은 지불 또는 인증 서비스들을 메인 프로세서에 제공한다. 이 경우, SPI 링크를 통해 고정 또는 이동식 보안 요소로 이루어지는 단일 슬레이브 디바이스에 연결되는, 전형적으로 이동 전화 애플리케이션 프로세서의 일부인 SPI 마스터 디바이스가 있을 수 있다. 본 구성에서, 슬레이브 디바이스와 마스터 디바이스가 통신하기 위해 이용하는 애플리케이션 프로토콜 데이터 유닛(APDU, Application Protocol Data Unit)은 바람직하게 ISO 7816 파트 4 표준을 따른다.
SPI의 라인들(21)은 이하 더 상세히 설명될 것이다. SCLK 라인(22)은 직렬 클록(SCLK) 신호를 운반하고 동기식 통신을 가능하게 한다. MOSI 라인(23)은 마스터 디바이스(10)에서 슬레이브 디바이스들의 방향으로 데이터 신호를 운반한다. 데이터는 SCLK를 이용하여 동기화된다. MISO 라인(24)은 슬레이브 디바이스에 의해 전송된 데이터를 마스터 디바이스로 운반한다. 데이터는 SCLK를 이용하여 동기화된다. SS 라인(25-27)은 슬레이브 디바이스들(1-3) 중 하나의 선택을 허용한다. 슬레이브 디바이스가 선택되지 않으면, 해당 슬레이브 디바이스는 MISO 라인(24) 상에 전송된 데이터를 무시한다.
특정 슬레이브 디바이스는 해당 슬레이브 디바이스에 대한 SS 신호/라인을 제1(비활성) 상태에서 제2(활성) 상태로 변경함에 의해 선택된다. 전형적으로, 제1(비활성) 상태는 "하이" 상태이고, 제2(활성) 상태는 "로우" 상태이다. 그 후, 데이터는 단방향 또는 양방향으로 전송된다. 데이터는 마스터 디바이스(10)로부터 MOSI 라인(23)을 통해 슬레이브 디바이스들(1-3) 중 하나에 전송될 수 있다. 데이터는 슬레이브 디바이스들(1-3) 중 하나로부터 MISO 라인(24)을 통해 마스터 디바이스(10)에 전송될 수 있다. 슬레이브 디바이스들(1-3) 중 하나만이 한 번에 선택된다.
마스터(10)는 폴링 순서에 따라 슬레이브 디바이스들(1-3) 각각을 폴링할 수 있다. 폴링 순서는 슬레이브 디바이스들(1, 2, 3)을 순차적으로 또는 어떤 다른 폴링 순서로 폴링할 수 있다.
어느 슬레이브 디바이스가 현재 선택됐는지 시그널링하기 위한 전통적인 SS 라인의 사용뿐만 아니라, 슬레이브 디바이스가 해당 슬레이브 디바이스에 대한 전용 SS 라인을 이용하여 인터럽트 요청(IRQ, Interrupt Request)을 마스터에 전송하는 것이 가능하다. 인터럽트 요청은 언제라도 전송될 수 있다. 예를 들어, 인터럽트 요청은 슬레이브 디바이스(1)의 정상 폴링과 슬레이브 디바이스(1)의 다음 폴링 사이에서 한번 전송될 수 있다. 이런 식으로, SS 라인들(25-27)은 마스터 디바이스와 슬레이브 디바이스 간의 양방향 통신에 이용된다. 이는, SS 라인이 단방향 방식으로(마스터에서 슬레이브로) 마스터 디바이스에 의해 전체가 제어되는 전통적인 SPI의 동작과 대비된다.
도 2는 SPI(20)를 통한 마스터 디바이스(10)와 슬레이브 디바이스(1) 간의 시그널링의 예를 도시한다. 도 2는 마스터 디바이스(10)와 슬레이브 디바이스(1) 간의 SS 라인(25)만을 도시한다. 다른 SS 라인들(26, 27)은 도시되지 않는다. 시간 t1에서 마스터 디바이스(10)는 SS 라인(25)을 하이 상태에서 로우 상태로 변경함에 의해 슬레이브 디바이스(1)로의 데이터 전송을 개시한다. 이는 슬레이브 디바이스(1)가 통신을 위해 선택되었으며, MOSI 라인(23)을 청취(listen)할 수 있다는 것을 슬레이브 디바이스에 통지한다. 시간 t2에서 마스터 디바이스(10)는 슬레이브(1)에 데이터를 전송하기 시작한다. 데이터는 SCLK(22) 상의 클록 신호를 이용하여 동기식으로 전송된다. 데이터 전송은 시간 t3에서 종료하고, 시간 t4에서 마스터는 슬레이브 디바이스(1)와 통신을 종료하기 위해 SS 라인(25)을 로우 상태에서 하이 상태로 변경한다. 시간 t5에서 슬레이브 디바이스(1)는 SS 라인(25)을 하이 상태에서 로우 상태로 변경함에 의해 인터럽트 요청을 마스터 디바이스(10)에 시그널링한다. 슬레이브 디바이스(1)는 시간 t6에서 SS 라인(25)을 로우 상태에서 하이 상태로 복귀한다. 인터럽트 요청은 마스터 디바이스(10)에 의해 수신된다. 시간 t7에서 마스터 디바이스(10)는 SS 라인(25)을 하이 상태에서 로우 상태로 변경한다. 이는 슬레이브 디바이스(1)가 통신을 위해 선택되었으며, MISO 라인(24)을 이용할 수 있다는 것을 슬레이브 디바이스에 통지한다. 시간 t8에서, 슬레이브 디바이스(1)는 마스터 디바이스(10)에 데이터를 전송하기 시작한다. 데이터는 라인 SCLK(22) 상의 클록 신호를 이용하여 동기식으로 전송된다. 데이터 전송은 시간 t9에서 종료하며, 시간 t10에서 마스터는 슬레이브 디바이스(1)와 통신을 종료하기 위해 SS 라인(25)을 로우 상태에서 하이 상태로 변경한다.
인터럽트 요청은 SS 라인 상의 신호의 에지 상에서 검출될 수 있다. 즉, 마스터 디바이스(10)는 하이 상태에서 로우 상태로의 전이를 검출할 수 있다. 그 경우, 로우 상태의 지속시간(t5-t6)은 나노 초와 같은 매우 짧은 기간일 수 있다. 대안적으로, 마스터 디바이스(10)는 상태들 간의 전이보다는 상태 자체(즉, 로우 상태 또는 하이 상태)를 검출할 수 있다. 명료함을 위해 도 2의 시간 라인이 반드시 직선 눈금일 필요가 없음에 유의한다.
도 2의 예시적인 교환에서, 슬레이브 디바이스(1)는 인터럽트 요청의 시그널링(시간 t5에서) 후 바로 선택된다(시간 t7에서). 마스터 디바이스는 인터럽트 요청을 다루기 위한 정책을 가질 수 있다. 예를 들어, 마스터 디바이스(10)가 인터럽트 요청을 수신할 때, 그는 현재 선택된 슬레이브 디바이스와 통신이 완료될 때까지 기다리고 그 후 인터럽트 요청을 보낸 슬레이브 디바이스를 선택할 수 있거나, 또는 현재 선택된 슬레이브 디바이스와 통신을 포기하고 그 후 인터럽트 요청을 보낸 슬레이브 디바이스를 즉시 선택할 수 있다. 슬레이브는 경고 상태의 경보와 같은 중요 정보를 시그널링할 수 있으며, 이는 마스터가 이런 경보를 가능한 빨리 수신하게 하는데 유용할 수 있다. 마스터 디바이스(10)가 다수의 슬레이브 디바이스로부터 인터럽트 요청을 수신한 경우, 수신 순서로, 이들 슬레이브 디바이스에 할당된 우선순위의 순서에 의해, 수신 순서와 우선순위의 조합에 의해, 또는 일부 다른 기준 또는 기준들에 의해 이들 요청을 서비스할 수 있다.
전술한 동작은 마스터 디바이스(10) 또는 슬레이브 디바이스(1-3)가 SS 라인의 상태를 변경할 수 있을 것을 요구할 수 있다. 슬레이브 디바이스는 인터럽트 요청을 시그널링하기 위해 SS 라인의 상태를 변경할 수 있다. 마스터 디바이스는 슬레이브 선택을 시그널링하기 위해 SS 라인의 상태를 변경할 수 있다. SS 라인의 비활성 상태는 하이 상태(논리 '1')이며, SS 라인의 활성 상태는 로우 상태(논리 '0')이다. 기능은 다음과 같이 요약될 수 있다:
- SS 라인은 마스터 디바이스 또는 슬레이브 디바이스 중 임의의 디바이스가 SS 라인을 활성화하길 원하지 않는 경우 하이 상태에 남아 있다;
- SS 라인은 마스터 디바이스 또는 슬레이브 디바이스 중 하나의 디바이스가 SS 라인을 활성화하길 원하는 경우 로우 상태로 변경될 수 있다.
또한, SS 라인은 마스터 디바이스와 슬레이브 디바이스 양자가 SS 라인을 활성화하길 원하는 경우 로우 상태에 남아 있을 수 있다.
SS 라인은 전통적인 SPI와 동일한 방식으로 마스터 디바이스에 의해 제어될 수 있다. 마스터 디바이스(10)는 전송할 데이터를 갖자마자, 그것은 SS 라인을 로우(활성) 상태에 둘 수 있다. 슬레이브 디바이스가 전송할 데이터를 가질 때, 그것은 인터럽트 요청을 마스터 컴포넌트에 시그널링할 수 있는 만큼 길게 SS 라인을 로우 상태에 둘 수 있다. 그 후, 마스터 디바이스는 슬레이브 디바이스로부터 데이터를 검색하기 위해 SPI 교환을 활성화할 수 있다.
마스터 디바이스와 슬레이브 디바이스가 함께 SS 라인을 로우 상태로 변경하는 경우, 이는 마스터 디바이스가 슬레이브 디바이스로 전송할 데이터를 가지고 있음을 의미한다. SPI가 MOSI 및 MISO 라인들(23, 24)과의 전이중 링크(full duplex link)일 때, 슬레이브 디바이스는 그것이 선택되는 기간 동안 마스터 디바이스에 데이터를 전송할 수 있다. 마스터 디바이스와 슬레이브 디바이스 양자가 SS 라인을 활성화하는 이런 경우에, 인터럽트 요청은 SS 라인이 이미 로우 상태에 있기 때문에 마스터에 의해 보이지 않을 것이다. 그러나 슬레이브 디바이스가 이미 선택되었기 때문에, 그것은 MISO 라인(24)을 통해 마스터 디바이스(10)에 데이터를 전송할 수 있다.
도 3은 디바이스에서 장치(50)의 예를 도시한다. 장치(50)는 마스터 디바이스(10) 또는 슬레이브 디바이스(1-3) 중 하나에서 이용될 수 있다. 장치(50)는 프로세서(CPU)(60), 및 SPI(20)의 라인들과 연결하기 위한 입/출력단(51)을 포함한다. 본 예에서, 입/출력단(51)은 범용 입/출력(GPIO, General Purpose Input/Output) 모듈들(52)을 포함한다. 하나의 GPIO(52)가 상세히 도시된다. GPIO들은 마이크로프로세서가 칩 외부의 전기 신호를 제어할 수 있게 하는 대부분의 마이크로프로세서 칩들에 존재하는 하드웨어 모듈들이다. GPIO(52)는 라인 상의 신호를 하이 상태(논리 '1') 또는 로우 상태(논리 '0')로 구동할 수 있다. 또한, GPIO는 높은 임피던스 상태에 진입할 수 있으며 라인 상의 신호의 값(상태)를 판독할 수 있다. 이는 장치가, 라인(25)에 연결된 다른 디바이스가 그 라인의 상태를 변경했는지 결정하게 할 수 있다. 단순화된 GPIO는 인터페이스의 라인에 연결된 신호를 구동할 수 있는 출력 버퍼(53)를 포함한다. 출력 버퍼(53)는 버퍼(53)가 이 신호를 구동할 수 있는지(기입 모드) 또는 버퍼(53)가 높은 임피던스 상태에 있는지(판독 모드) 결정하는 다른 신호(출력 인에이블에 대한 oe)에 의해 제어될 수 있다. 입력 버퍼(54)는 라인(25) 상에 존재하는 값을 판독한다. 레지스터(56)는 제어 신호 oe1에 대한 값을 저장한다. 레지스터(57)는 출력 버퍼(53)에 적용하기 위한 값을 저장한다. 레지스터(58)는 입력 버퍼(54)로부터 판독된 값을 저장한다. 레지스터들(56, 57, 58)은 GPIO들의 완전 제어를 제공하는 CPU(60)에 의해 액세스될 수 있다.
마스터 디바이스(10)에서 장치(50)는 SS 라인이 슬레이브 디바이스에 의해 활성 상태로 변경되는 때를 CPU(60)에게 통지할 수 있는 하드웨어 로직(55)을 더 포함한다. 본 예에서, 로직은 SS 라인을 나타내는 입력 버퍼(54)로부터의 입력, 및 입력 IRQ_mask를 수신하는 AND 게이트를 포함한다. 입력 버퍼로부터 입력이 IRQ_mask와 동일할 때, 게이트(55)의 IRQ 출력(59)은 하이 상태로 간다. IRQ_mask는 시그널링될 IRQ에 요구되는 입력 버퍼의 논리값을 나타내며, 논리 '0'일 수 있다. 인터럽트 요청(IRQ)(59)은 GPIO(52)의 입력 버퍼(54)의 상태에 따라 CPU(60)에 출력된다. 도 3이, 슬레이브 디바이스가 SS 라인을 활성 상태로 변경할 때 상태 변경의 검출을 수행하는 하드웨어 로직(55)을 도시한다 할지라도, 이 기능이 다른 방식들로 구현될 수 있음을 이해할 것이다. 예를 들어, 레지스터(3, 58)의 출력은 CPU(60)에 의해 판독될 수 있으며, CPU에서 로직은 레지스터(3)로부터 판독된 신호가 논리 '0'으로 변경되는 때를 검출함에 의해 슬레이브 디바이스가 SS 라인을 활성 상태로 변경하는 때를 검출할 수 있다. 이는 CPU에 의한 폴링 방법의 일종이다. 폴링은 도 3에 도시된 바와 같이, 인터럽트 신호 입력을 CPU에 전달하는 로직의 사용에 비하여 CPU의 처리 자원들을 요구할 수 있다.
전술한 바와 같이, 입/출력단(51)의 기능은
- 마스터 디바이스 또는 슬레이브 디바이스 중 어느 하나가 SS 라인을 활성화하길 원하지 않는 경우 SS 라인이 비활성(하이) 상태에 남아있게 하고;
- SS 라인은 마스터 디바이스 또는 슬레이브 디바이스 중 하나가 SS 라인을 활성화하길 원하는 경우 활성(로우) 상태로 변경될 수 있도록 구성된다.
또한, SS 라인은 마스터 디바이스와 슬레이브 디바이스 양자가 SS 라인을 활성화하길 원하는 경우 활성(로우) 상태에 남아있을 수 있다.
이런 기능을 달성하는 한 방법은 마스터 디바이스와 슬레이브 디바이스가 개방 드레인(또는 개방 컬렉터) 출력과 풀-업 저항을 이용하여 SS 라인을 제어하는 것이다. 도 3에 삽입된 도면들은 GPIO 모듈(52)에 인가되는 이런 타입의 출력의 예를 개략적으로 도시한다. GPIO 모듈(52)은 도 3의 주요 부분에 도시된 소자들을 가질 수 있다. 풀-업 저항(72)은 SS 라인(25)과 공급 레일(71) 사이에 연결된다. 디바이스가 SS 라인(25)을 활성화하길 원하지 않는 경우, 라인은 풀-업 저항(72)을 통해 공급 레일(71)에 연결된 채 있으며, 이로 인해 확실한 논리 상태가 SS 라인(25)에 연결된 다른 디바이스(들)에 시그널링되는 것을 보장한다. 디바이스 또는 SS 라인(25)에 연결된 다른 디바이스가 SS 라인(25)을 활성화하길 원하는 경우, SS 라인(25)은 활성(로우) 상태에 들어갈 수 있다. 풀-업 저항(72)은 접지로의 단락을 방지한다.
도 3에 도시된 장치(50)는 마스터 디바이스(10) 또는 슬레이브 디바이스(1-3)에서 이용될 수 있다. 도 3에 도시된 장치가 마스터 디바이스(10)에서 이용되는 경우, 도 3에 도시된 다른 GPIO들은 다른 SS 라인들(26, 27)에 연결될 수 있다.
프로세서(60)는 디바이스의 동작을 제어하기 위한 명령어들을 실행하기 위한 임의의 다른 적당한 타입의 프로세서인 마이크로프로세서일 수 있다. 프로세서 실행 가능한 명령어들(62)은 메모리(61)와 같은 임의의 컴퓨터 판독 가능 매체를 이용하여 제공될 수 있다. 메모리(61)는 프로세서(60)와 함께 위치될 수 있거나 또는 프로세서(60)에 통신 가능하게 결합될 수 있다. 프로세서-실행 가능한 명령어들(62)은 SPI 링크를 이용하여 하나 이상의 슬레이브 디바이스와 통신하기 위한 명령어들을 포함할 수 있다. 프로세서-실행 가능한 명령어들(62)은 전술한 방법들 중 임의의 방법의 기능을 구현하기 위한 명령어들을 포함할 수 있다. 예를 들어, 마스터 디바이스(10)에서 구현될 때, 명령어들(62)은 프로세서(60)로 하여금 슬레이브 디바이스가 SS 라인을 활성 상태로 변경하는 때를 결정하게 할 수 있다. 슬레이브 디바이스(1-3)에서 구현될 때, 명령어들(62)은 프로세서(60)로 하여금 슬레이브 선택 라인(25)의 상태를 비활성 상태를 나타내는 제1 상태에서 활성 상태를 나타내는 제2 상태로 변경함에 의해 인터럽트 요청을 마스터 디바이스(10)에 시그널링하게 할 수 있다. 메모리(61)는 판독 전용 메모리(ROM), 랜덤 액세스 메모리(RAM)와 같은 임의의 적당한 타입의 메모리, 자기 또는 광자기 저장 디바이스와 같은 임의의 타입의 저장 디바이스일 수 있다.
상기 설명에서, SS 라인의 비활성 상태는 하이 상태(논리 '1')이며, SS 라인의 활성 상태는 로우 상태(논리 '0')이다. 이는 SPI에 대한 전형적인 관례이다. SS 라인의 비활성 상태가 로우 상태(논리 '0')이고 SS 라인의 활성 상태가 하이 상태(논리 '1')인 다른 관례를 이용하는 것은 모든 디바이스가 이런 관례를 따른다면 가능하다.
개시된 발명의 수정 및 다른 실시예들은 전술한 설명 및 관련된 도면에 제시된 교시들의 혜택을 받고 있는 본 기술 분야의 통상의 기술자에게 떠오를 것이다. 따라서, 본 발명이 개시된 특정 실시예에 제한되지 않고, 수정 및 다른 실시예들이 본 개시 내용의 범위 내에 포함되도록 의도된다는 것을 이해해야 한다. 특정 용어들이 본 명세서에 채택된다 할지라도, 이들은 단지 일반적이고 예시적인 의도로 이용되는 것이지 제한의 목적으로 이용되지 않는다.

Claims (17)

  1. 직렬 주변 장치 인터페이스(20)를 이용하여 슬레이브 디바이스(1)와 마스터 디바이스(10) 간에 통신하는 방법으로서, 상기 직렬 주변 장치 인터페이스(20)는 슬레이브 선택 라인(25)을 포함하며,
    상기 방법은 상기 슬레이브 디바이스(1)에서,
    상기 슬레이브 선택 라인(25)의 상태를 비활성 상태를 나타내는 제1 상태에서 활성 상태를 나타내는 제2 상태로 변경함에 의해 인터럽트 요청을 상기 마스터 디바이스(10)에 시그널링하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서, 상기 시그널링하는 단계는 상기 슬레이브 선택 라인(25)을 상기 제1 상태로 복귀시키는 단계를 더 포함하는 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 마스터 디바이스(10)가 상기 슬레이브 선택 라인(25)을 제2 상태에 두는 것을 기다리는 단계; 및
    상기 슬레이브 디바이스(1)로부터 상기 직렬 주변 장치 인터페이스(20)의 데이터 라인을 통해 데이터를 전송하는 단계를 더 포함하는 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 슬레이브 선택 라인(25)은 상기 슬레이브 디바이스(1)의 입/출력단(52)에 연결되며, 상기 입/출력단은:
    상기 마스터 디바이스(10) 또는 상기 슬레이브 디바이스(1)가 상기 슬레이브 선택 라인(25)의 상태를 변경하지 않는 경우 상기 슬레이브 선택 라인(25)이 상기 제1 상태에 남아 있게 하며;
    상기 마스터 디바이스(10) 또는 상기 슬레이브 디바이스(1)가 상기 슬레이브 선택 라인(25)의 상태를 변경하길 원하는 경우 상기 슬레이브 선택 라인(25)이 상기 제2 상태로 변경되게 하는, 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서, 하나의 동일한 이동 디바이스 내에 상기 마스터 디바이스와 함께 위치하는 내장된 보안 요소(embedded secure element)인 단일 슬레이브 디바이스가 존재하는, 방법.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서, 상기 마스터 디바이스와 상기 슬레이브 디바이스 간의 통신은 ISO 78/16-4 표준에 부합하는 애플리케이션 프로토콜 데이터 유닛을 이용하여 이루어지는, 방법.
  7. 직렬 주변 장치 인터페이스(20)를 이용하여 슬레이브 디바이스(1)와 마스터 디바이스(10) 간에 통신하는 방법으로서,
    상기 직렬 주변 장치 인터페이스(20)는 슬레이브 디바이스마다 슬레이브 선택 라인(25)을 포함하며,
    상기 방법은 상기 마스터 디바이스(10)에서,
    상기 슬레이브 디바이스(1)가 상기 슬레이브 선택 라인(25)을 비활성 상태를 나타내는 제1 상태에서 활성 상태를 나타내는 제2 상태로 변경하는 때를 검출함에 의해 상기 슬레이브 디바이스(1)가 인터럽트를 요청한 때를 결정하는 단계
    를 포함하는 방법.
  8. 제7항에 있어서, 상기 슬레이브 디바이스(1)가 인터럽트를 요청했다는 결정에 응답하여,
    상기 슬레이브 선택 라인(25)을 상기 제2 상태에 둠으로써 상기 슬레이브 디바이스(1)를 선택하는 단계; 및
    상기 슬레이브 디바이스(1)로부터 상기 직렬 주변 장치 인터페이스(20)의 데이터 라인을 통해 데이터를 검색하는 단계를 더 포함하는 방법.
  9. 제7항 또는 제8항에 있어서, 복수의 슬레이브 디바이스(1-3)가 존재하며, 이들 각각은 각각의 슬레이브 선택 라인(25-27)에 의해 상기 마스터 디바이스(10)에 연결되고, 상기 방법은 상기 복수의 슬레이브 디바이스(1-3)의 상기 슬레이브 선택 라인들(25-27)을 모니터링하는 단계를 포함하는 방법.
  10. 제7항 내지 제9항 중 어느 한 항에 있어서, 상기 슬레이브 선택 라인(25)은 상기 마스터 디바이스(10)에서의 입/출력단(52)에 연결되며, 상기 입/출력단은:
    상기 마스터 디바이스(10) 또는 상기 슬레이브 디바이스(1)가 상기 슬레이브 선택 라인(25)의 상태를 변경하지 않는 경우 상기 슬레이브 선택 라인(25)이 상기 제1 상태에 남아있게 하며;
    상기 마스터 디바이스(10) 또는 상기 슬레이브 디바이스(1)가 상기 슬레이브 선택 라인(25)의 상태를 변경하길 원하는 경우 상기 슬레이브 선택 라인(25)이 상기 제2 상태로 변경되게 하는, 방법.
  11. 제4항 또는 제10항에 있어서, 상기 입/출력단은 범용 입출력 모듈인, 방법.
  12. 제1항 내지 제11항 중 어느 한 항에 있어서, 상기 제1 상태는 하이 상태(high state)이고, 상기 제2 상태는 로우 상태(low state)인, 방법.
  13. 제1항 내지 제12항 중 어느 한 항에 있어서, 상기 직렬 주변 장치 인터페이스(20)는 클록 라인(22), 마스터 아웃 슬레이브 인 데이터 라인(23) 및 마스터 인 슬레이브 아웃 데이터 라인(24)을 더 포함하는 방법.
  14. 슬레이브 디바이스(1)에서의 장치로서,
    마스터 디바이스(10)와 통신하기 위한 직렬 주변 장치 인터페이스(29)를 포함하고, 상기 직렬 주변 장치 인터페이스(29)는 슬레이브 선택 라인(25)을 포함하며,
    상기 장치는 상기 슬레이브 선택 라인(25)의 상태를 비활성 상태를 나타내는 제1 상태에서 활성 상태를 나타내는 제2 상태로 변경함에 의해 인터럽트 요청을 상기 마스터 디바이스(10)에 시그널링하도록 구성되는, 장치.
  15. 제14항에 있어서, 상기 직렬 주변 장치 인터페이스(29)는 입/출력단(52)을 포함하며, 상기 입/출력단은:
    상기 마스터 디바이스(10) 또는 상기 슬레이브 디바이스(1)가 상기 슬레이브 선택 라인(25)의 상태를 변경하지 않는 경우 상기 슬레이브 선택 라인(25)이 상기 제1 상태에 남아 있게 하며;
    상기 마스터 디바이스(10) 또는 상기 슬레이브 디바이스(1)가 상기 슬레이브 선택 라인(25)의 상태를 변경하길 원하는 경우 상기 슬레이브 선택 라인(25)이 상기 제2 상태로 변경되게 하도록 구성되는, 장치.
  16. 마스터 디바이스(10)에서의 장치로서,
    슬레이브 디바이스(1)와 통신하기 위한 직렬 주변 장치 인터페이스(28)
    를 포함하고,
    상기 직렬 주변 장치 인터페이스(28)는 슬레이브 디바이스마다 슬레이브 선택 라인(25)을 포함하며,
    상기 장치는 상기 슬레이브 디바이스(1)가, 상기 슬레이브 선택 라인(25)이 비활성 상태를 나타내는 제1 상태에서 활성 상태를 나타내는 제2 상태로 변경되게 한 때를 검출함에 의해 상기 슬레이브 디바이스(1)가 인터럽트를 요청한 때를 결정하도록 구성되는, 장치.
  17. 제16항에 있어서, 상기 직렬 주변 장치 인터페이스(28)는 입/출력단(52)을 포함하며, 상기 입/출력단은:
    상기 마스터 디바이스(10) 또는 상기 슬레이브 디바이스(1)가 상기 슬레이브 선택 라인(25)의 상태를 변경하지 않는 경우 상기 슬레이브 선택 라인(25)이 상기 제1 상태에 남아 있게 하며;
    상기 마스터 디바이스(10) 또는 상기 슬레이브 디바이스(1)가 상기 슬레이브 선택 라인(25)의 상태를 변경하길 원하는 경우 상기 슬레이브 선택 라인(25)이 상기 제2 상태로 변경되게 하도록 구성되는, 장치.
KR1020150136929A 2014-09-26 2015-09-25 직렬 주변장치 인터페이스 KR102416283B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP14306489.7A EP3001323B1 (en) 2014-09-26 2014-09-26 Serial peripheral interface
EP14306489.7 2014-09-26

Publications (2)

Publication Number Publication Date
KR20160037114A true KR20160037114A (ko) 2016-04-05
KR102416283B1 KR102416283B1 (ko) 2022-07-01

Family

ID=51690987

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150136929A KR102416283B1 (ko) 2014-09-26 2015-09-25 직렬 주변장치 인터페이스

Country Status (5)

Country Link
EP (1) EP3001323B1 (ko)
KR (1) KR102416283B1 (ko)
CN (1) CN105468548B (ko)
ES (1) ES2643437T3 (ko)
PL (1) PL3001323T3 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170122648A (ko) * 2016-04-27 2017-11-06 웨스턴 디지털 테크놀로지스, 인코포레이티드 슬레이브 저장 디바이스들을 위한 충돌 검출

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107346294B (zh) * 2016-05-04 2020-11-20 上海商米科技集团股份有限公司 基于spi协议的数据流控系统及方法
FR3068797B1 (fr) * 2017-07-04 2019-07-19 STMicroelectronics (Grand Ouest) SAS Procede de communication entre un dispositif maitre et n dispositifs esclaves connectes sur un bus de donnees synchrone du type spi et dispositif correspondant
KR102428450B1 (ko) * 2017-12-21 2022-08-01 삼성전자주식회사 호스트 컨트롤러, 보안 요소 및 직렬 주변기기 인터페이스 통신 시스템
CN113220610B (zh) * 2020-01-21 2024-04-09 华为技术有限公司 通信系统和spi接口的通信方法及装置
EP4033370B1 (en) * 2021-01-22 2023-11-15 Aptiv Technologies Limited Communications system and method of operating the same
US11928065B2 (en) 2021-02-25 2024-03-12 Stmicroelectronics S.R.L. Digital interrupt management system with bidirectional selection lines
CN113407478B (zh) * 2021-08-23 2021-11-30 上海泰矽微电子有限公司 一种实现spi从设备主动申请传输的方法
CN115580507A (zh) * 2022-12-09 2023-01-06 北京紫光青藤微系统有限公司 一种通信总线结构及通信方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5303227A (en) * 1992-08-03 1994-04-12 Motorola, Inc. Method and apparatus for enhanced modes in SPI communication
EP2141607A1 (en) * 2008-06-30 2010-01-06 Thomson Telecom Belgium Method for transferring or erasing data in a master-slave environment
CN103744825A (zh) * 2013-12-31 2014-04-23 北京中宇新泰科技发展有限公司 一种扩展兼容spi接口双向实时通讯方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4834294B2 (ja) * 2004-01-07 2011-12-14 日立オートモティブシステムズ株式会社 データ通信装置及びそれを用いたコントローラ
US7769932B2 (en) * 2005-09-09 2010-08-03 Honeywell International, Inc. Bitwise arbitration on a serial bus using arbitrarily selected nodes for bit synchronization
CN101436170A (zh) * 2007-11-12 2009-05-20 鸿富锦精密工业(深圳)有限公司 Spi设备通信电路
CN101582823B (zh) * 2008-05-13 2012-09-05 深圳迈瑞生物医疗电子股份有限公司 基于spi总线的通讯方法、通讯系统和通讯路由装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5303227A (en) * 1992-08-03 1994-04-12 Motorola, Inc. Method and apparatus for enhanced modes in SPI communication
EP2141607A1 (en) * 2008-06-30 2010-01-06 Thomson Telecom Belgium Method for transferring or erasing data in a master-slave environment
CN103744825A (zh) * 2013-12-31 2014-04-23 北京中宇新泰科技发展有限公司 一种扩展兼容spi接口双向实时通讯方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170122648A (ko) * 2016-04-27 2017-11-06 웨스턴 디지털 테크놀로지스, 인코포레이티드 슬레이브 저장 디바이스들을 위한 충돌 검출

Also Published As

Publication number Publication date
KR102416283B1 (ko) 2022-07-01
ES2643437T3 (es) 2017-11-22
PL3001323T3 (pl) 2018-01-31
EP3001323B1 (en) 2017-07-12
EP3001323A1 (en) 2016-03-30
CN105468548B (zh) 2020-11-03
CN105468548A (zh) 2016-04-06

Similar Documents

Publication Publication Date Title
KR102416283B1 (ko) 직렬 주변장치 인터페이스
US8042743B2 (en) IC card comprising a main device and an additional device
CN108763140B (zh) 一种双向通信的方法、系统及终端设备
CN107908589B (zh) I3c验证从设备、主从设备的通信验证系统及方法
US8335883B2 (en) Data processing device and data processing system
CN110008151B (zh) 电子设备、数据传输装置和数据传输方法
CN102073611B (zh) 一种i2c总线控制系统及方法
JP2010086524A (ja) 省電力機能を有するブリッジ装置
US20080059683A1 (en) Method and Apparatus for Conditional Broadcast of Barrier Operations
US7584501B2 (en) System and method for authorizing use of a connection device coupled to a processing system
US10936530B2 (en) Method and apparatus for determining link bifurcation availability
US9350831B2 (en) System and method for enabling a dual-wire protocol
CN107851076B (zh) 用于控制存储器访问的装置、系统及方法
US9055432B2 (en) Targeted muting for communication between electronic appliances
US6145044A (en) PCI bus bridge with transaction forwarding controller for avoiding data transfer errors
CN111858459B (zh) 处理器及计算机
WO2010103987A1 (ja) データ伝送システムおよびそのデータ読出し方法
CN109582634B (zh) 总线系统
CN113282532B (zh) 一种通信装置、通信装置的通信方法和电子设备
CN117222994A (zh) 使用共享时钟和专用数据线的i2c总线架构
KR101260313B1 (ko) 전자장치 및 그 데이터 송수신방법과, 슬레이브 장치 및복수의 장치 간의 통신방법
US8370543B1 (en) Busy detection logic for asynchronous communication port
WO2014036725A1 (zh) 一种配置pcie端口的方法、装置和设备
CN108986853B (zh) 一种存储控制芯片、存储设备及自适应接口方法
US9088304B2 (en) Interface deactivation for communication between electronic appliances

Legal Events

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