KR102174456B1 - 직렬 통신 인터페이스에서의 동기화 장치 및 방법 - Google Patents

직렬 통신 인터페이스에서의 동기화 장치 및 방법 Download PDF

Info

Publication number
KR102174456B1
KR102174456B1 KR1020180137271A KR20180137271A KR102174456B1 KR 102174456 B1 KR102174456 B1 KR 102174456B1 KR 1020180137271 A KR1020180137271 A KR 1020180137271A KR 20180137271 A KR20180137271 A KR 20180137271A KR 102174456 B1 KR102174456 B1 KR 102174456B1
Authority
KR
South Korea
Prior art keywords
slave devices
master device
slave
information
control signal
Prior art date
Application number
KR1020180137271A
Other languages
English (en)
Other versions
KR20200053858A (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 KR1020180137271A priority Critical patent/KR102174456B1/ko
Publication of KR20200053858A publication Critical patent/KR20200053858A/ko
Application granted granted Critical
Publication of KR102174456B1 publication Critical patent/KR102174456B1/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
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0016Inter-integrated circuit (I2C)

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

본 발명은 직렬 통신 인터페이스에서의 동기화 장치 및 방법을 개시한다. 즉, 본 발명은 단일 마스터 장치와 복수의 슬레이브 장치 간에 I2C 프로토콜, SPI 프로토콜 등의 직렬 통신 프로토콜을 이용해서 상호 통신하는 상태에서, 단일 클럭 신호 라인, 복수의 데이터 라인, 단일 칩 선택 라인 등을 이용해서 동일 또는 서로 다른 슬레이브 아이디를 갖는 상기 복수의 슬레이브 장치의 정보를 동시에 획득하거나 또는 동기화된 타이밍으로 획득함으로써, 정보 획득 시 시간에 따른 정보의 오차 발생을 방지하며, 목적에 따라 복수의 슬레이브 디바이스로부터 원하는 정보를 용이하게 획득할 수 있다.

Description

직렬 통신 인터페이스에서의 동기화 장치 및 방법{Apparatus for synchronizing in serial communication interface and method thereof}
본 발명은 직렬 통신 인터페이스에서의 동기화 장치 및 방법에 관한 것으로, 특히 단일 마스터 장치와 복수의 슬레이브 장치 간에 I2C 프로토콜, SPI 프로토콜 등의 직렬 통신 프로토콜을 이용해서 상호 통신하는 상태에서, 단일 클럭 신호 라인, 복수의 데이터 라인, 단일 칩 선택 라인 등을 이용해서 동일 또는 서로 다른 슬레이브 아이디를 갖는 상기 복수의 슬레이브 장치의 정보를 동시에 획득하거나 또는 동기화된 타이밍으로 획득하는 직렬 통신 인터페이스에서의 동기화 장치 및 방법에 관한 것이다.
I2C(Inter-Integrated Circuit)는 동기식 직렬 통신의 하나로, 반이중(Half-duplex) 통신을 수행한다.
또한, SPI(Serial Peripheral Interface)는 동기식 직렬 통신의 하나로, 전이중(Full-duplex) 통신을 수행한다.
이러한 I2C, SPI 등의 직렬 인터페이스의 경우, N개(N은 자연수)의 타깃 디바이스(target device)의 정보를 취득하기 위해서는, 마스터 디바이스에서 각 타깃 디바이스를 순차적으로 액세스해야하므로, 동시에 복수의 타깃 디바이스에 대한 정보를 취득하는 것이 불가능하며, 동시에 복수의 타깃 디바이스에 대한 정보를 취득하기 위해서는 N개의 컨트롤러(controller)를 사용하여 외부 트리거 등을 이용해서 동기화된 타이밍 제어가 필요하다.
즉, I2C 프로토콜의 경우, 1개의 마스터 디바이스에 N개의 슬레이브 디바이스 연결은 가능하지만, 동시간대에서는 1개의 슬레이브 디바이스에만 접근할 수 있다.
또한, SPI 프로토콜의 경우, 1개의 마스터 디바이스에 N개의 슬레이브 디바이스를 연결하고 칩 선택(Chip Select: CS) 신호를 이용하여 1개의 슬레이브 디바이스에만 접근할 수 있다.
이와 같이, I2C, SPI 등의 직렬 인터페이스의 경우, 동시에 복수의 슬레이브 디바이스에 대한 정보를 획득하는데 어려움이 있으며, 복수의 컨트롤러를 사용하여 복수의 슬레이브 디바이스에 대한 정보를 획득하더라도, 비동기화에 따른 정보의 오차가 발생할 수 있다.
한국등록특허 제10-0848545호 [제목: I2C 버스 프로토콜을 기반으로 마스터와 복수의 슬레이브를 구비한 장치]
본 발명의 목적은 단일 마스터 장치와 복수의 슬레이브 장치 간에 I2C 프로토콜, SPI 프로토콜 등의 직렬 통신 프로토콜을 이용해서 상호 통신하는 상태에서, 단일 클럭 신호 라인, 복수의 데이터 라인, 단일 칩 선택 라인 등을 이용해서 동일 또는 서로 다른 슬레이브 아이디를 갖는 상기 복수의 슬레이브 장치의 정보를 동시에 획득하거나 또는 동기화된 타이밍으로 획득하는 직렬 통신 인터페이스에서의 동기화 장치 및 방법을 제공하는 데 있다.
본 발명의 실시예에 따른 직렬 통신 인터페이스에서의 동기화 장치는 복수의 슬레이브 장치; 및 상기 복수의 슬레이브 장치와 단일 클럭 신호 라인을 통해 연결되며, 복수의 직렬 데이터 라인을 통해 상기 복수의 슬레이브 장치 각각에 연결되는 마스터 장치를 포함하며, 상기 마스터 장치는, 상기 단일 클럭 신호 라인을 통해 동기화된 클럭 신호를 상기 복수의 슬레이브 장치에 전송하며, 상기 복수의 슬레이브 장치 각각에 대응하는 복수의 제어 신호 내의 읽기 동작 비트 또는 쓰기 동작 비트에 따라, 상기 복수의 슬레이브 장치 각각에 대한 정보의 읽기 동작 또는 쓰기 동작을 수행할 수 있다.
본 발명과 관련된 일 예로서 상기 마스터 장치와 상기 복수의 슬레이브 장치는, I2C(Inter-Integrated Circuit) 프로토콜 또는 SPI(Serial Peripheral Interface) 프로토콜을 통해 통신 연결된 상태일 수 있다.
본 발명과 관련된 일 예로서 상기 마스터 장치는, 상기 복수의 슬레이브 장치 각각에 대응하는 복수의 제어 신호 내의 읽기 동작 비트 또는 쓰기 동작 비트에 따라, 동시에 상기 복수의 슬레이브 장치로부터 정보를 획득할 수 있다.
본 발명과 관련된 일 예로서 상기 마스터 장치는, 상기 복수의 슬레이브 장치 각각에 대응하는 복수의 제어 신호 내의 읽기 동작 비트 또는 쓰기 동작 비트에 따라, 미리 설정된 동기화된 타이밍에 따라 순차적으로 상기 복수의 슬레이브 장치로부터 정보를 획득할 수 있다.
본 발명과 관련된 일 예로서 상기 마스터 장치와 상기 복수의 슬레이브 장치는, I2C 프로토콜을 통해 연결될 때, 상기 단일 클럭 신호 라인을 통해 상기 마스터 장치와 상기 복수의 슬레이브 장치가 연결되며, 상기 복수의 직렬 데이터 라인을 통해 상기 마스터 장치와 상기 복수의 슬레이브 장치 각각이 연결될 수 있다.
본 발명과 관련된 일 예로서 상기 마스터 장치와 상기 복수의 슬레이브 장치는, SPI 프로토콜을 통해 연결될 때, 상기 단일 클럭 신호 라인을 통해 상기 마스터 장치와 상기 복수의 슬레이브 장치가 연결되며, 단일 칩 선택 라인을 통해 상기 마스터 장치와 상기 복수의 슬레이브 장치가 연결되며, 상기 복수의 직렬 데이터 라인에 포함되는 복수의 MISO 라인 및 복수의 MOSI 라인을 통해 상기 마스터 장치와 상기 복수의 슬레이브 장치 각각이 연결될 수 있다.
본 발명의 실시예에 따른 직렬 통신 인터페이스에서의 동기화 방법은 마스터 장치에 의해, 단일 클럭 신호 라인을 통해 연결된 복수의 슬레이브 장치에 동기화된 클럭 신호를 전송하는 단계; 상기 마스터 장치에 의해, 상기 복수의 슬레이브 장치에 각각 연결된 복수의 직렬 데이터 라인을 통해 상기 복수의 슬레이브 장치를 각각 제어하기 위한 제어 신호를 전송하는 단계; 상기 복수의 슬레이브 장치 각각에 의해, 상기 마스터 장치로부터 전송되는 제어 신호가 상기 슬레이브 장치의 주소와 일치할 때, 상기 제어 신호 내의 ACK 비트에 미리 설정된 비트값을 출력하는 단계; 및 상기 마스터 장치에 의해, 상기 복수의 슬레이브 장치 각각에 대응하는 제어 신호 내의 읽기 동작 비트 또는 쓰기 동작 비트에 따라, 상기 복수의 슬레이브 장치 각각에 대한 정보의 읽기 동작 또는 쓰기 동작을 수행하는 단계를 포함할 수 있다.
본 발명과 관련된 일 예로서 상기 복수의 슬레이브 장치 각각에 대한 정보의 읽기 동작 또는 쓰기 동작을 수행하는 단계는, 동시에 상기 복수의 슬레이브 장치로부터 정보를 획득하는 과정; 및 미리 설정된 동기화된 타이밍에 따라 순차적으로 상기 복수의 슬레이브 장치로부터 정보를 획득하는 과정 중 어느 하나의 과정을 포함할 수 있다.
본 발명은 단일 마스터 장치와 복수의 슬레이브 장치 간에 I2C 프로토콜, SPI 프로토콜 등의 직렬 통신 프로토콜을 이용해서 상호 통신하는 상태에서, 단일 클럭 신호 라인, 복수의 데이터 라인, 단일 칩 선택 라인 등을 이용해서 동일 또는 서로 다른 슬레이브 아이디를 갖는 상기 복수의 슬레이브 장치의 정보를 동시에 획득하거나 또는 동기화된 타이밍으로 획득함으로써, 정보 획득 시 시간에 따른 정보의 오차 발생을 방지하며, 목적에 따라 복수의 슬레이브 디바이스로부터 원하는 정보를 용이하게 획득할 수 있는 효과가 있다.
도 1은 본 발명의 실시예에 따른 직렬 통신 인터페이스에서의 동기화 장치의 구성을 나타낸 블록도이다.
도 2는 본 발명의 실시예에 따른 I2C 프로토콜 방식에서의 동기화 장치의 구성을 나타낸 도이다.
도 3은 본 발명의 실시예에 따른 SPI 프로토콜 방식에서의 동기화 장치의 구성을 나타낸 도이다.
도 4는 본 발명의 실시예에 따른 I2C 프로토콜 방식에서의 동기화 장치를 통한 데이터 취득의 예를 나타낸 도이다.
도 5는 본 발명의 실시예에 따른 SPI 프로토콜 방식에서의 동기화 장치를 통한 데이터 취득의 예를 나타낸 도이다.
도 6은 본 발명의 실시예에 따른 직렬 통신 인터페이스에서의 동기화 방법을 나타낸 흐름도이다.
본 발명에서 사용되는 기술적 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아님을 유의해야 한다. 또한, 본 발명에서 사용되는 기술적 용어는 본 발명에서 특별히 다른 의미로 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 의미로 해석되어야 하며, 과도하게 포괄적인 의미로 해석되거나, 과도하게 축소된 의미로 해석되지 않아야 한다. 또한, 본 발명에서 사용되는 기술적인 용어가 본 발명의 사상을 정확하게 표현하지 못하는 잘못된 기술적 용어일 때에는 당업자가 올바르게 이해할 수 있는 기술적 용어로 대체되어 이해되어야 할 것이다. 또한, 본 발명에서 사용되는 일반적인 용어는 사전에 정의되어 있는 바에 따라, 또는 전후 문맥상에 따라 해석되어야 하며, 과도하게 축소된 의미로 해석되지 않아야 한다.
또한, 본 발명에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함한다. 본 발명에서 "구성된다" 또는 "포함한다" 등의 용어는 발명에 기재된 여러 구성 요소들 또는 여러 단계를 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다.
또한, 본 발명에서 사용되는 제 1, 제 2 등과 같이 서수를 포함하는 용어는 구성 요소들을 설명하는데 사용될 수 있지만, 구성 요소들은 용어들에 의해 한정되어서는 안 된다. 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성 요소는 제 2 구성 요소로 명명될 수 있고, 유사하게 제 2 구성 요소도 제 1 구성 요소로 명명될 수 있다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
또한, 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 발명의 사상을 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 발명의 사상이 제한되는 것으로 해석되어서는 아니 됨을 유의해야 한다.
도 1은 본 발명의 실시예에 따른 직렬 통신 인터페이스에서의 동기화 장치(10)의 구성을 나타낸 블록도이다.
도 1에 도시한 바와 같이, 직렬 통신 인터페이스에서의 동기화 장치(10)는 마스터 장치(100) 및 복수의 슬레이브 장치(200)로 구성된다. 도 1에 도시된 동기화 장치(10)의 구성 요소 모두가 필수 구성 요소인 것은 아니며, 도 1에 도시된 구성 요소보다 많은 구성 요소에 의해 동기화 장치(10)가 구현될 수도 있고, 그보다 적은 구성 요소에 의해서도 동기화 장치(10)가 구현될 수도 있다.
상기 마스터 장치(100) 및 상기 복수의 슬레이브 장치(200) 각각은 다른 단말들과의 통신 기능을 수행하기 위한 통신부(미도시), 다양한 정보 및 프로그램(또는 애플리케이션)을 저장하기 위한 저장부(미도시), 다양한 정보 및 프로그램 실행 결과를 표시하기 위한 표시부(미도시), 상기 다양한 정보 및 프로그램 실행 결과에 대응하는 음성 정보를 출력하기 위한 음성 출력부(미도시), 각 단말의 다양한 구성 요소 및 기능을 제어하기 위한 제어부(미도시) 등을 포함할 수 있다.
상기 마스터 장치(또는 마스터 디바이스)(100)는 복수의 슬레이브 장치(200)와 통신한다. 여기서, 상기 마스터 장치(100)와 상기 복수의 슬레이브 장치(200) 간의 통신 프로토콜(또는 통신 인터페이스)은 I2C(Inter-Integrated Circuit) 프로토콜, SPI(Serial Peripheral Interface) 프로토콜 등의 직렬 통신 프로토콜(또는 직렬 통신 인터페이스)을 통해 상호 통신할 수 있다.
I2C 프로토콜을 사용하는 경우, 도 2에 도시된 바와 같이, 상기 마스터 장치(100)는 단일 클럭 신호 라인(또는 단일 클럭 버스)(SCL)을 통해 상기 복수의 슬레이브 장치(200)와 연결되며, 미리 설정된 시간 간격을 갖는 클럭 신호(또는 동기화 신호/동기화된 클럭 신호)를 상기 복수의 슬레이브 장치(200)에 전송(또는 제공)한다.
또한, I2C 프로토콜을 사용하는 경우, 상기 도 2에 도시된 바와 같이, 상기 마스터 장치(100)는 복수의 직렬 데이터 라인(SDA1, SDA2, SDA3)을 통해 상기 복수의 슬레이브 장치(200)와 각각 연결되며, 특정 슬레이브 장치(200)를 제어하기 위한 제어 신호를 해당 특정 슬레이브 장치(200)에 대응하는 직렬 데이터 라인을 통해 전송한다.
SPI 프로토콜을 사용하는 경우, 도 3에 도시된 바와 같이, 상기 마스터 장치(100)는 단일 클럭 신호 라인(또는 단일 클럭 버스)(SCK)을 통해 상기 복수의 슬레이브 장치(200)와 연결되며, 상기 미리 설정된 시간 간격을 갖는 클럭 신호(또는 동기화 신호/동기화된 클럭 신호)를 상기 복수의 슬레이브 장치(200)에 전송(또는 제공)한다.
또한, SPI 프로토콜을 사용하는 경우, 상기 도 3에 도시된 바와 같이, 상기 마스터 장치(100)는 단일 칩 선택 라인(chip selection line)(또는 칩 선택 버스)(CS)을 통해 상기 복수의 슬레이브 장치(200)와 연결되며, 상기 복수의 슬레이브 장치(200) 중에서 적어도 하나의 슬레이브 장치(200)를 선택하기 위한 칩 선택 신호를 전송한다.
또한, SPI 프로토콜을 사용하는 경우, 상기 도 3에 도시된 바와 같이, 상기 마스터 장치(100)는 복수의 MISO 라인(Master Input Slave Output Line)(MISO_1, MISO_2, ... , MISO_N)과 복수의 MOSI 라인(Master Output Slave Input Line)(MOSI_1, MOSI_2, ... , MOSI_N)을 통해 상기 복수의 슬레이브 장치(200)와 각각 연결되며, 특정 슬레이브 장치(200)와의 정보(또는 데이터) 읽기 또는 정보 쓰기를 위해 특정 슬레이브 장치(200)에 대응하는 MISO 라인 및 MOSI 라인을 통해 정보를 송수신한다. 여기서, 상기 복수의 MISO 라인 및 상기 복수의 MOSI 라인은 상기 직렬 데이터 라인에 대응할 수 있다.
이와 같이, 상기 마스터 장치(100)에 단일 클럭 신호 라인을 통해 복수의 슬레이브 장치(200)에 동기화된 클럭 신호를 전송함에 따라 상기 마스터 장치(100)와 복수의 슬레이브 장치(200)가 동기화될 수 있다.
또한, 상기 마스터 장치(100)는 정보(또는 데이터)를 획득하고자 하는 상기 복수의 슬레이브 장치(200)에 각각의 제어 신호를 전송한다. 여기서, 상기 복수의 슬레이브 장치(200)는 상기 마스터 장치(100)와 개별 직렬 데이터 라인을 통해 각각 연결된 상태일 수 있으며, 동일하거나 또는 서로 다른 슬레이브 아이디가 설정된 상태일 수 있다. 이때, 상기 제어 신호(또는 제어 패킷/프레임)는 통신 프로토콜에 따라 미리 설정된 형태(또는 구조)를 가지며, 시작 조건, 목적지 주소, 읽기/쓰기, ACK, 데이터, ACK, 데이터, ... ACK, 종료 조건 등으로 설정된 상태일 수 있다.
또한, 상기 마스터 장치(100)는 각 슬레이브 장치(200)에 대응하는 제어 신호 내의 읽기 동작 비트 또는 쓰기 동작 비트에 따라, 상기 복수의 슬레이브 장치(200) 각각에 대한 정보(또는 데이터)의 읽기(read) 동작 또는 쓰기(write) 동작을 수행한다. 이때, 상기 마스터 장치(100)는 동시에(또는 병렬 처리로) 상기 복수의 슬레이브 장치(200)로부터 정보를 획득(예를 들어 정보의 읽기, 정보의 쓰기 등 포함)하거나 또는, 미리 설정된 동기화된 타이밍에 따라 순차적으로 상기 복수의 슬레이브 장치(200)로부터 정보를 획득할 수 있다. 여기서, 상기 마스터 장치(100)와 상기 복수의 슬레이브 장치(200)의 통신 방식이 SPI 통신 인터페이스를 사용하는 경우, 상기 마스터 장치(100)는 단일 칩 선택 라인을 통해 상기 복수의 슬레이브 장치(200)와 연결된 상태일 수 있다.
I2C 프로토콜을 사용하는 경우, 도 4에 도시된 바와 같이, 상기 마스터 장치(100)는 제 1 슬레이브 장치(200) 내지 제 3 슬레이브 장치(200)로부터 동시에 정보를 획득(또는 읽기 동작 수행)한다.
SPI 프로토콜을 사용하는 경우, 상기 도 5에 도시된 바와 같이, 상기 마스터 장치(100)는 제 1 슬레이브 장치(200) 내지 제 3 슬레이브 장치(200)로부터 동시에 정보를 획득(또는 읽기 동작 수행)한다.
이와 같이, 상기 마스터 장치(100)는 동일한 클럭 타이밍으로 상기 복수의 슬레이브 장치(200)로부터 데이터를 취득(예를 들어 데이터 읽기, 데이터 쓰기 등 포함)하면서, 정확한 동기화 정보의 취득이 가능할 수 있다.
상기 슬레이브 장치(또는 슬레이브 디바이스)(200)는 상기 마스터 장치(100), 다른 슬레이브 장치(200)와 통신한다. 여기서, 상기 슬레이브 장치(200)는 임의 장소에 설치된(또는 구비된/배치된) 온도 센서, 압력 센서, 메모리, 단말 등일 수 있다.
또한, 상기 슬레이브 장치(200)는 상기 마스터 장치(100)와 단일 클럭 신호 라인을 통해 연결되고, 각 슬레이브 장치(200)에 할당되는 개별 직렬 데이터 라인을 통해 연결된다. 이때, SPI 프로토콜을 사용하는 경우, 상기 슬레이브 장치(200)는 단일 칩 선택 라인을 통해 연결될 수 있다.
또한, 상기 복수의 슬레이브 장치(200) 각각은 상기 마스터 장치(100)와 개별 직렬 데이터 라인을 통해 각각 연결된 상태에서, 해당 직렬 데이터 라인을 감시하면서, 상기 마스터 장치(100)로부터 전송되는 제어 신호가 해당 슬레이브 장치(200)의 주소와 일치하는지 여부를 검사(또는 확인)한다.
상기 검사 결과(또는 상기 확인 결과), 상기 마스터 장치(100)로부터 전송되는 제어 신호가 해당 슬레이브 장치(200)의 주소와 일치하는 경우, 상기 슬레이브 장치(200)는 상기 제어 신호 내의 ACK 비트에 미리 설정된 비트값(예를 들어 '0')을 출력한다.
또한, 상기 검사 결과(또는 상기 확인 결과), 상기 마스터 장치(100)로부터 전송되는 제어 신호가 해당 슬레이브 장치(200)의 주소와 일치하지 않는 경우, 상기 슬레이브 장치(200)는 해당 슬레이브 장치(200)의 주소와 일치하지 않는 해당 제어 신호를 삭제(또는 폐기)한다.
또한, 상기 복수의 슬레이브 장치(200) 각각은 각 슬레이브 장치(200)에 대응하는 제어 신호 내의 읽기 동작 비트 또는 쓰기 동작 비트에 따라, 상기 마스터 장치(100)와 연동하여, 상기 복수의 슬레이브 장치(200) 각각에 대한 정보(또는 데이터)의 읽기 동작 또는 쓰기 동작을 수행한다. 상기 마스터 장치(100)는 동시에(또는 병렬 처리로) 상기 복수의 슬레이브 장치(200)로부터 정보를 획득(예를 들어 정보의 읽기, 정보의 쓰기 등 포함)하거나 또는, 미리 설정된 동기화된 타이밍에 따라 순차적으로 상기 복수의 슬레이브 장치(200)로부터 정보를 획득할 수 있다.
이와 같이, 단일 마스터 장치와 복수의 슬레이브 장치 간에 I2C 프로토콜, SPI 프로토콜 등의 직렬 통신 프로토콜을 이용해서 상호 통신하는 상태에서, 단일 클럭 신호 라인, 복수의 데이터 라인, 단일 칩 선택 라인 등을 이용해서 동일 또는 서로 다른 슬레이브 아이디를 갖는 상기 복수의 슬레이브 장치의 정보를 동시에 획득하거나 또는 동기화된 타이밍으로 획득할 수 있다.
이하에서는, 본 발명에 따른 직렬 통신 인터페이스에서의 동기화 방법을 도 1 내지 도 6을 참조하여 상세히 설명한다.
도 6은 본 발명의 실시예에 따른 직렬 통신 인터페이스에서의 동기화 방법을 나타낸 흐름도이다.
먼저, 마스터 장치(100)는 단일 클럭 신호 라인(또는 단일 클럭 버스)을 통해 연결된 복수의 슬레이브 장치(200)에 미리 설정된 시간 간격을 갖는 클럭 신호(또는 동기화 신호/동기화된 클럭 신호)를 전송(또는 제공)한다.
이와 같이, 상기 마스터 장치(100)에 단일 클럭 신호 라인을 통해 복수의 슬레이브 장치(200)에 동기화된 클럭 신호를 전송함에 따라 상기 마스터 장치(100)와 복수의 슬레이브 장치(200)가 동기화될 수 있다.
일 예로, 제 1 마스터 장치(100)는 제 1 클럭 신호 라인을 통해 연결된 제 1 슬레이브 장치(200) 내지 제 10 슬레이브 장치(200) 각각에 온/오프 주기가 100μsec인 클럭 신호를 전송한다.
이와 같이, 단일한 제 1 클럭 신호 라인을 통해 동기화된 클럭 신호를 통해 상기 제 1 마스터 장치와 상기 복수의 슬레이브 장치가 상호 통신함에 따라, 해당 제 1 마스터 장치에서 100μsec에 동시에 상기 복수의 슬레이브 장치에 대한 정보의 읽기 또는 쓰기가 가능할 수 있다(S610).
이후, 상기 마스터 장치(100)는 정보(또는 데이터)를 획득하고자 하는 상기 복수의 슬레이브 장치(200)에 각각의 제어 신호를 전송한다. 여기서, 상기 복수의 슬레이브 장치(200)는 상기 마스터 장치(100)와 개별 직렬 데이터 라인을 통해 각각 연결된 상태일 수 있으며, 동일하거나 또는 서로 다른 슬레이브 아이디가 설정된 상태일 수 있다. 이때, 상기 제어 신호(또는 제어 패킷/프레임)는 통신 프로토콜에 따라 미리 설정된 형태(또는 구조)를 가지며, 시작 조건, 목적지 주소, 읽기/쓰기, ACK, 데이터, ACK, 데이터, ... ACK, 종료 조건 등으로 설정된 상태일 수 있다.
일 예로, 상기 제 1 마스터 장치는 개별 제 1 내지 제 10 직렬 데이터 라인을 통해 각각 연결된 상기 제 1 슬레이브 장치 내지 제 10 슬레이브 장치에 각 슬레이브 장치의 데이터를 읽어오기 위한 제 1 제어 신호 내지 제 10 제어 신호를 각각 전송한다(S620).
이후, 상기 복수의 슬레이브 장치(200) 각각은 상기 마스터 장치(100)와 개별 직렬 데이터 라인을 통해 각각 연결된 상태에서, 해당 직렬 데이터 라인을 감시하면서, 상기 마스터 장치(100)로부터 전송되는 제어 신호가 해당 슬레이브 장치(200)의 주소와 일치하는지 여부를 검사(또는 확인)한다.
일 예로, 상기 제 1 슬레이브 장치는 상기 제 1 마스터 장치로부터 전송되는 제 1 제어 신호 내지 제 10 제어 신호 중에서 해당 제 1 슬레이브 장치의 주소와 일치하는 제어 신호가 있는지 여부를 검사한다(S630).
상기 검사 결과(또는 상기 확인 결과), 상기 마스터 장치(100)로부터 전송되는 제어 신호가 해당 슬레이브 장치(200)의 주소와 일치하는 경우, 상기 슬레이브 장치(200)는 상기 제어 신호 내의 ACK 비트에 미리 설정된 비트값(예를 들어 '0')을 출력한다.
즉, 상기 슬레이브 장치(200)는 해당 슬레이브 장치(200)를 목적지로 하는 제어 신호가 감지되는 경우, 해당 제어 신호에 대응하는 응답 신호를 전송(또는 출력)한다.
일 예로, 상기 제 1 마스터 장치로부터 전송되는 제 1 제어 신호 내지 제 10 제어 신호 중에서 해당 제 1 슬레이브 장치의 주소와 일치하는 제 1 제어 신호가 확인될 때, 상기 제 1 슬레이브 장치는 상기 제 1 제어 신호 내의 ACK 비트에 미리 설정된 비트값인 '0'을 출력한다.
또한, 상기 제 1 슬레이브 장치는 상기 제 1 마스터 장치로부터 전송되는 제 1 제어 신호 내지 제 10 제어 신호 중에서 해당 제 1 슬레이브 장치의 주소와 일치하지 않는 제 2 제어 신호 내지 제 10 제어 신호를 삭제(또는 폐기)한다(S640).
이후, 상기 마스터 장치(100)는 각 슬레이브 장치(200)에 대응하는 제어 신호 내의 읽기 동작 비트 또는 쓰기 동작 비트에 따라, 상기 복수의 슬레이브 장치(200) 각각에 대한 정보(또는 데이터)의 읽기(read) 동작 또는 쓰기(write) 동작을 수행한다. 이때, 상기 마스터 장치(100)는 동시에(또는 병렬 처리로) 상기 복수의 슬레이브 장치(200)로부터 정보를 획득(예를 들어 정보의 읽기, 정보의 쓰기 등 포함)하거나 또는, 미리 설정된 동기화된 타이밍에 따라 순차적으로 상기 복수의 슬레이브 장치(200)로부터 정보를 획득할 수 있다. 여기서, 상기 마스터 장치(100)와 상기 복수의 슬레이브 장치(200)의 통신 방식이 SPI 통신 인터페이스를 사용하는 경우, 상기 마스터 장치(100)는 단일 칩 선택 라인을 통해 상기 복수의 슬레이브 장치(200)와 연결된 상태일 수 있다.
일 예로, 상기 제 1 마스터 장치는 상기 제 1 제어 신호 내지 제 10 제어 신호 내에 포함된 읽기 동작 비트에 따라 상기 제 1 슬레이브 장치 내지 제 10 슬레이브 장치에 대한 정보 읽기 동작을 수행한다(S650).
본 발명의 실시예는 앞서 설명된 바와 같이, 단일 마스터 장치와 복수의 슬레이브 장치 간에 I2C 프로토콜, SPI 프로토콜 등의 직렬 통신 프로토콜을 이용해서 상호 통신하는 상태에서, 단일 클럭 신호 라인, 복수의 데이터 라인, 단일 칩 선택 라인 등을 이용해서 동일 또는 서로 다른 슬레이브 아이디를 갖는 상기 복수의 슬레이브 장치의 정보를 동시에 획득하거나 또는 동기화된 타이밍으로 획득하여, 정보 획득 시 시간에 따른 정보의 오차 발생을 방지하며, 목적에 따라 복수의 슬레이브 디바이스로부터 원하는 정보를 용이하게 획득할 수 있다.
전술된 내용은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
10: 직렬 통신 인터페이스에서의 동기화 장치
100: 마스터 장치 200: 복수의 슬레이브 장치

Claims (8)

  1. 복수의 슬레이브 장치; 및
    상기 복수의 슬레이브 장치와 단일 클럭 신호 라인 및 단일 칩 선택 라인을 통해 각각 연결되며, 복수의 직렬 데이터 라인을 통해 상기 복수의 슬레이브 장치 각각에 연결되는 마스터 장치를 포함하며,
    상기 마스터 장치는,
    상기 단일 클럭 신호 라인을 통해 동기화된 클럭 신호를 상기 복수의 슬레이브 장치에 전송하고, 상기 단일 칩 선택 라인을 통해 상기 복수의 슬레이브 장치 중 적어도 하나의 슬레이브 장치를 선택하기 위한 칩 선택 신호를 전송하며, 상기 직렬 데이터 라인을 통해 상기 복수의 슬레이브 장치 각각에 대응하는 복수의 제어 신호 내의 읽기 동작 비트 또는 쓰기 동작 비트에 따라, 상기 복수의 슬레이브 장치 각각에 대한 정보의 읽기 동작 또는 쓰기 동작을 수행하기 위한 제어 신호를 전송하고,
    상기 마스터 장치는,
    상기 복수의 슬레이브 장치 각각에 대응하는 복수의 제어 신호 내의 읽기 동작 비트 또는 쓰기 동작 비트에 따라, 동시에 상기 복수의 슬레이브 장치로부터 정보를 획득하는 것을 특징으로 하는 직렬 통신 인터페이스에서의 동기화 장치.
  2. 제 1 항에 있어서,
    상기 마스터 장치와 상기 복수의 슬레이브 장치는,
    I2C(Inter-Integrated Circuit) 프로토콜 또는 SPI(Serial Peripheral Interface) 프로토콜을 통해 통신 연결된 상태인 것을 특징으로 하는 직렬 통신 인터페이스에서의 동기화 장치.
  3. 제 1 항에 있어서,
    상기 마스터 장치는,
    상기 복수의 슬레이브 장치 각각에 대응하는 복수의 제어 신호 내의 읽기 동작 비트 또는 쓰기 동작 비트에 따라, 동시에 상기 복수의 슬레이브 장치로부터 정보를 획득하는 것을 특징으로 하는 직렬 통신 인터페이스에서의 동기화 장치.
  4. 제 1 항에 있어서,
    상기 복수의 슬레이브 장치 각각은,
    상기 마스터 장치와 상기 직렬 데이터 라인을 통해 각각 연결된 상태에서, 상기 직렬 데이터 라인을 감시하면서 상기 마스터 장치로부터 전송되는 제어 신호가 해당 슬레이브 장치의 주소와 일치하는지 여부를 검사하고, 검사 결과, 상기 마스터 장치로부터 전송되는 제어 신호와 상기 슬레이브 장치의 주소가 서로 일치하지 않는 경우, 상기 슬레이브 장치의 주소와 일치하지 않는 해당 제어 신호를 삭제하는 것을 특징으로 하는 직렬 통신 인터페이스에서의 동기화 장치.
  5. 제 1 항에 있어서,
    상기 마스터 장치와 상기 복수의 슬레이브 장치는,
    I2C 프로토콜을 통해 연결될 때, 상기 단일 클럭 신호 라인을 통해 상기 마스터 장치와 상기 복수의 슬레이브 장치가 연결되며, 상기 복수의 직렬 데이터 라인을 통해 상기 마스터 장치와 상기 복수의 슬레이브 장치 각각이 연결되는 것을 특징으로 하는 직렬 통신 인터페이스에서의 동기화 장치.
  6. 제 1 항에 있어서,
    상기 마스터 장치와 상기 복수의 슬레이브 장치는,
    SPI 프로토콜을 통해 연결될 때, 상기 단일 클럭 신호 라인을 통해 상기 마스터 장치와 상기 복수의 슬레이브 장치가 연결되며, 단일 칩 선택 라인을 통해 상기 마스터 장치와 상기 복수의 슬레이브 장치가 연결되며, 상기 복수의 직렬 데이터 라인에 포함되는 복수의 MISO 라인 및 복수의 MOSI 라인을 통해 상기 마스터 장치와 상기 복수의 슬레이브 장치 각각이 연결되는 것을 특징으로 하는 직렬 통신 인터페이스에서의 동기화 장치.
  7. (a) 마스터 장치가, 단일 클럭 신호 라인을 통해 연결된 복수의 슬레이브 장치에 동기화된 클럭 신호를 전송하는 단계;
    (b) 상기 마스터 장치가, 상기 복수의 슬레이브 장치에 각각 연결된 복수의 직렬 데이터 라인을 통해 상기 복수의 슬레이브 장치를 각각 제어하기 위한 제어 신호를 전송하는 단계; 및
    (c) 상기 마스터 장치가, 상기 복수의 슬레이브 장치 각각에 대응하는 제어 신호 내의 읽기 동작 비트 또는 쓰기 동작 비트에 따라, 상기 복수의 슬레이브 장치 각각에 대한 정보의 읽기 동작 또는 쓰기 동작을 수행하고,
    상기 (c)단계는,
    동시에 상기 복수의 슬레이브 장치로부터 정보를 획득하는 과정; 및
    미리 설정된 동기화된 타이밍에 따라 동시에 상기 복수의 슬레이브 장치로부터 정보를 획득하는 과정 중 어느 하나의 과정을 포함하는 단계를 포함하는 직렬 통신 인터페이스에서의 동기화 방법.
  8. 제 7 항에 있어서,
    상기 (b)단계와 상기 (c)단계 사이에,
    복수의 슬레이브 장치 각각이, 상기 마스터 장치와 상기 직렬 데이터 라인을 통해 각각 연결된 상태에서, 상기 직렬 데이터 라인을 감시하면서 상기 마스터 장치로부터 전송되는 제어 신호가 해당 슬레이브 장치의 주소와 일치하는지 여부를 검사하는 단계; 및
    상기 (c)단계의 검사 결과, 상기 마스터 장치로부터 전송되는 제어 신호와 해당 슬레이브 장치의 주소가 서로 일치하지 않는 경우, 상기 슬레이브 장치가 상기 슬레이브 장치의 주소와 일치하지 않는 해당 제어 신호를 삭제하는 단계를 더 포함하는 것을 특징으로 하는 직렬 통신 인터페이스에서의 동기화 방법.
KR1020180137271A 2018-11-09 2018-11-09 직렬 통신 인터페이스에서의 동기화 장치 및 방법 KR102174456B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180137271A KR102174456B1 (ko) 2018-11-09 2018-11-09 직렬 통신 인터페이스에서의 동기화 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180137271A KR102174456B1 (ko) 2018-11-09 2018-11-09 직렬 통신 인터페이스에서의 동기화 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20200053858A KR20200053858A (ko) 2020-05-19
KR102174456B1 true KR102174456B1 (ko) 2020-11-05

Family

ID=70913362

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180137271A KR102174456B1 (ko) 2018-11-09 2018-11-09 직렬 통신 인터페이스에서의 동기화 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102174456B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102362615B1 (ko) * 2020-11-27 2022-02-15 (주)리눅스아이티 Ai 기반의 비전 검사를 지원하는 plc 시스템 및 그 제어방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007251598A (ja) * 2006-03-16 2007-09-27 Yaskawa Electric Corp 同期シリアルシステム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100848545B1 (ko) 2007-08-20 2008-07-25 주식회사 디지털존 I2c 버스 프로토콜을 기반으로 마스터와 복수의슬레이브를 구비한 장치
KR20120055034A (ko) * 2010-11-22 2012-05-31 삼성전자주식회사 휴대용 단말기에서 에스피아이를 이용한 주변 기기 연결 장치 및 데이터 전송 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007251598A (ja) * 2006-03-16 2007-09-27 Yaskawa Electric Corp 同期シリアルシステム

Also Published As

Publication number Publication date
KR20200053858A (ko) 2020-05-19

Similar Documents

Publication Publication Date Title
CN104199796B (zh) Iic通信方法以及实现iic通信的嵌入式系统
US10965934B2 (en) System on chip and integrated circuit for performing data loopback and mobile device including the same
CN107025203B (zh) 第一板卡、第二板卡及一种设备
WO2009078507A1 (en) Serial communication system and id grant method thereof
TW201514708A (zh) I 2 c匯流排監控裝置
KR102174456B1 (ko) 직렬 통신 인터페이스에서의 동기화 장치 및 방법
JP2010151756A (ja) 電池パック
JP5298185B2 (ja) I2c監視シーケンシャルリードデータ記憶装置
US7945714B2 (en) Apparatus and method of tracing descriptors in host controller
US10977206B2 (en) Data communication device and method for data communication
JPH0320778B2 (ko)
US7233592B1 (en) Packet transfer control circuit
EP3316523B1 (en) Host-side transceiver device and transceiver system
KR20050046932A (ko) i2C 버스를 이용한 슬레이브 장치들의 상태 검사 시스템
US11012195B2 (en) Method, sensor, and controller for transmitting a data packet from a sensor to a controller
KR20170086351A (ko) 섀시형 통신 장비를 위한 관리용 시리얼 버스
KR102414408B1 (ko) 이종의 직렬통신 프로토콜을 위한 제어 집적회로 및 이를 포함하는 시스템 제어 장치
CN116820867B (zh) 一种芯片调试方法、装置及芯片
US11977508B2 (en) Serial data communication with in-frame response
JP3763182B2 (ja) コンフィギュレーションromの検査方法及び装置
CN212229628U (zh) 从机设备
JP5515896B2 (ja) 入出力接続装置、情報処理装置及び入出力デバイス検査方法
US20230032989A1 (en) Serial data communication with in-frame response
US20230341887A1 (en) Device and method for selecting clock frequency in master device of bus system
KR100612454B1 (ko) I2c 버스 정합 장치 및 방법

Legal Events

Date Code Title Description
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right