KR20200085221A - 보조 마스터 및 보조 호출 지원 기능을 가진 통신 시스템들 - Google Patents

보조 마스터 및 보조 호출 지원 기능을 가진 통신 시스템들 Download PDF

Info

Publication number
KR20200085221A
KR20200085221A KR1020190176601A KR20190176601A KR20200085221A KR 20200085221 A KR20200085221 A KR 20200085221A KR 1020190176601 A KR1020190176601 A KR 1020190176601A KR 20190176601 A KR20190176601 A KR 20190176601A KR 20200085221 A KR20200085221 A KR 20200085221A
Authority
KR
South Korea
Prior art keywords
node
processing device
slave
master
transceiver
Prior art date
Application number
KR1020190176601A
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 KR20200085221A publication Critical patent/KR20200085221A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W36/00Hand-off or reselection arrangements
    • H04W36/24Reselection being triggered by specific parameters
    • H04W36/30Reselection being triggered by specific parameters by measured or perceived connection quality data
    • H04W36/305Handover due to radio link failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/403Bus networks with centralised control, e.g. polling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40169Flexible bus arrangements
    • H04L12/40176Flexible bus arrangements involving redundancy
    • H04L12/40195Flexible bus arrangements involving redundancy by using a plurality of nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40019Details regarding a bus master
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0681Configuration of triggering conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W36/00Hand-off or reselection arrangements
    • H04W36/08Reselecting an access point
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/90Services for handling of emergency or hazardous situations, e.g. earthquake and tsunami warning systems [ETWS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • H04W84/20Master-slave selection or change arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Emergency Management (AREA)
  • Environmental & Geological Engineering (AREA)
  • Public Health (AREA)
  • Small-Scale Networks (AREA)
  • Dc Digital Transmission (AREA)

Abstract

보조 마스터 및/또는 보조 호출 지원 기능을 위한 시스템들 및 기술들이 여기에서 개시된다. 예를 들어, 몇몇 실시예들에서, 보조 마스터 기능을 가진 통신 시스템은 복수의 다운스트림 슬레이브 노드들에 결합된 마스터 노드를 포함할 수 있으며, 슬레이브 노드들 중 적어도 하나는 마스터 노드가 시스템으로부터 연결 해제될 때 마스터 노드 기능들을 수행할 수 있다.

Description

보조 마스터 및 보조 호출 지원 기능을 가진 통신 시스템들{COMMUNICATION SYSTEMS WITH AUXILIARY MASTER AND AUXILIARY CALL SUPPORT FUNCTIONALITY}
전자 구성요소들이 크기가 감소함에 따라 및 성능 기대들이 증가함에 따라, 더 많은 구성요소들이 이전에 비-계장화되거나 또는 덜-계장화된 디바이스들에 포함된다. 몇몇 설정들에서, 이들 구성요소들(예컨대, 차량에서) 사이에서 신호들을 교환하기 위해 사용된 통신 기반시설은 케이블들의 두껍고 무거운 번들들을 요구하여 왔다.
실시예들은 수반된 도면들과 함께 다음의 상세한 설명에 의해 쉽게 이해될 것이다. 이러한 설명을 가능하게 하기 위해, 유사한 참조 숫자들은 유사한 구조적 요소들을 지정한다. 실시예들은 수반된 도면들의 도들에서, 제한으로서가 아닌, 예로서 예시된다.
도 1은 다양한 실시예들에 따른, 예시적인 2-와이어 통신 시스템의 블록도이다.
도 2는 다양한 실시예들에 따른, 도 1의 시스템의 노드에 포함될 수 있는 노드 트랜시버의 블록도이다.
도 3은 다양한 실시예들에 따른, 도 1의 시스템에서 통신을 위해 사용된 동기화 제어 프레임의 일 부분의 다이어그램이다.
도 4는 다양한 실시예들에 따른, 도 1의 시스템에서 통신을 위해 사용된 슈퍼프레임의 다이어그램이다.
도 5는 다양한 실시예들에 따른, 도 1의 시스템의 동작의 상이한 모드들에서 동기화 제어 프레임에 대한 예시적인 포맷들을 예시한다.
도 6은 다양한 실시예들에 따른, 도 1의 시스템의 동작의 상이한 모드들에서 동기화 응답 프레임에 대한 예시적인 포맷들을 예시한다.
도 7은 다양한 실시예들에 따른, 도 2의 버스 프로토콜 회로의 다양한 구성요소들의 블록도이다.
도 8 내지 도 11은 여기에서 설명된 버스 프로토콜들의 다양한 실시예들에 따른, 2-와이어 버스를 따르는 정보 교환의 예들을 예시한다.
도 12는 다양한 실시예들에 따른, 2-와이어 버스에 대한 링 토폴로지 및 그것 상에서의 단방향 통신 기법을 예시한다.
도 13은 다양한 실시예들에 따른, 도 1의 시스템에서 노드 또는 호스트로서 작용할 수 있는 디바이스의 블록도이다.
도 14는 다양한 실시예들에 따른, 보조 마스터 기능을 가진 통신 시스템의 블록도이다.
도 15는 다양한 실시예들에 따른, 도 14의 시스템에서 보조 마스터 기능을 제공하는 방법의 흐름도이다.
도 16은 다양한 실시예들에 따른, 도 14의 통신 시스템의 일 부분의 특정한 예를 예시한다.
도 17은 다양한 실시예들에 따른, 도 16의 시스템에서 보조 마스터 기능을 제공하는 방법의 흐름도이다.
도 18은 다양한 실시예들에 따른, 도 16에 예시된 통신 시스템의 부분의 예시적인 구현의 개략적인 예시이다.
도 19는 다양한 실시예들에 따른, 보조 호출 지원 기능을 가진 통신 시스템의 블록도이다.
도 20은 다양한 실시예들에 따른, 도 19의 시스템에서 보조 호출 지원 기능을 제공하는 방법의 흐름도이다.
도 21은 다양한 실시예들에 따른, 도 19의 통신 시스템의 일 부분의 특정한 예를 예시한다.
도 22는 다양한 실시예들에 따른, 도 21의 시스템에서 보조 호출 지원 기능을 제공하는 방법의 흐름도이다.
도 23은 다양한 실시예들에 따른, 도 21에 예시된 통신 시스템의 부분의 예시적인 구현의 개략적인 예시이다.
도 24a 및 도 24b는 다양한 실시예들에 따른, 상이한 동작 조건들하에서 보조 호출 지원 기능을 가진 예시적인 통신 시스템을 예시한다.
도 25a 및 도 25b는 다양한 실시예들에 따른, 상이한 동작 조건들하에서 보조 호출 지원 기능을 가진 또 다른 예시적인 통신 시스템을 예시한다.
보조 마스터 기능을 위한 시스템들 및 기술들이 여기에서 개시된다. 몇몇 실시예들에서, 보조 마스터 기능을 가진 통신 시스템은 복수의 다운스트림 슬레이브 노드들에 결합된 마스터 노드를 포함할 수 있으며, 여기에서 슬레이브 노드들 중 적어도 하나는 마스터 노드가 시스템으로부터 연결 해제될 때 마스터 노드 기능들을 수행할 수 있다.
다음의 상세한 설명에서, 참조는 그 일부를 형성하며 유사한 숫자들이 전체에 걸쳐 유사한 부분들을 지정하고 예시로서 실시될 수 있는 실시예들이 도시되는 수반된 도면들에 대해 이루어진다. 다른 실시예들이 이용될 수 있으며, 본 개시의 범위로부터 벗어나지 않고, 구조적 또는 논리적 변화들이 이루어질 수 있다는 것이 이해될 것이다. 그러므로, 다음의 상세한 설명은 제한적인 의미로 취해지지 않을 것이다.
다양한 동작들은, 청구된 주제를 이해하는데 가장 도움이 되는 방식으로, 다수의 별개의 작용들 또는 동작들로서 차례차례 설명될 수 있다. 그러나, 설명의 순서는 이들 동작들이 반드시 순서 의존적임을 내포하도록 해석되어서는 안된다. 특히, 이들 동작들은 프리젠테이션의 순서로 수행되지 않을 수 있다. 설명된 동작들은 설명된 실시예와 상이한 순서로 수행될 수 있다. 다양한 부가적인 동작들이 수행될 수 있으며 및/또는 설명된 동작들은 부가적인 실시예들에서 생략될 수 있다.
본 개시의 목적들을 위해, 구절("A 및/또는 B")은 (A), (B), 또는 (A 및 B)를 의미한다. 본 개시의 목적들을 위해, 구절("A, B, 및/또는 C")은 (A), (B), (C), (A 및 B), (A 및 C), (B 및 C), 또는 (A, B, 및 C)를 의미한다.
다양한 구성요소들은 여기에서 단수형(예컨대, "프로세서", "주변 디바이스" 등)으로 참조되거나 또는 예시될 수 있지만, 이것은 간단히 논의의 용이함을 위한 것이며, 단수형으로 참조된 임의의 요소는 여기에서의 교시들에 따라 다수의 이러한 요소들을 포함할 수 있다.
설명은 구절들("실시예에서" 또는 "실시예들에서")을 사용하며, 이것은 각각 동일한 또는 상이한 실시예들 중 하나 이상을 나타낼 수 있다. 더욱이, 용어들("포함한", "포함시키는", "가진" 등)은, 본 개시의 실시예들에 대하여 사용된 바와 같이, 동의어이다. 여기에서 사용된 바와 같이, 용어("회로")는 애플리케이션-특정 집적 회로(ASIC), 전자 회로, 및 광학 회로, 프로세서(공유, 전용, 또는 그룹), 및/또는 하나 이상의 소프트웨어 또는 펌웨어 프로그램들, 조합형 로직 회로, 및/또는 설명된 기능을 제공하는 다른 적절한 하드웨어를 실행하는 메모리(공유, 전용, 또는 그룹)를 나타내고, 그것의 부분이거나, 또는 이를 포함할 수 있다.
도 1은 다양한 실시예들에 따른, 예시적인 반-이중 2-와이어 통신 시스템(100)의 블록도이다. 시스템(100)은 호스트(110), 마스터 노드(102) 및 적어도 하나의 슬레이브 노드(104)를 포함한다. 도 1에서, 3개의 슬레이브 노드들(0, 1, 및 2)이 예시된다. 도 1에서 3개의 슬레이브 노드들(104)의 묘사는 단순히 예시적이며, 시스템(100)은 원하는 대로, 1, 2, 또는 그 이상의 슬레이브 노드들(104)을 포함할 수 있다.
마스터 노드(102)는 2-와이어 버스(106)를 통해 슬레이브 노드들(104)과 통신할 수 있다. 버스(106)는 데이지-체인 방식으로 버스(106)를 따라 노드들을 연결하기 위해 버스(106)를 따라 인접한 노드들 사이에 상이한 2-와이어 버스 링크들을 포함할 수 있다. 예를 들어, 도 1에서 예시된 바와 같이, 버스(106)는 마스터 노드(102)를 슬레이브 노드 0에 결합한 링크, 슬레이브 노드 0을 슬레이브 노드 1에 결합한 링크, 및 슬레이브 노드 1을 슬레이브 노드 2에 결합한 링크를 포함할 수 있다. 몇몇 실시예들에서, 버스(106)의 링크들은 각각 단일 연선 쌍(예컨대, 비차폐 꼬임 쌍)으로 형성될 수 있다. 몇몇 실시예들에서, 버스(106)의 링크들은 각각 동축 케이블(예컨대, "양의" 라인을 제공하는 코어 및 "음의" 라인을 제공하는 실드, 또는 그 반대를 제공하는 코어를 갖는)로 형성될 수 있다. 2-와이어 버스 링크들은 어떤 부가적인 접지 또는 전압 소스 라인들도 사용될 필요가 없도록 완전한 전기적 경로(예컨대, 순방향 및 복귀 전류 경로)를 함께 제공한다.
호스트(110)는 마스터 노드(102)를 프로그램하며, 버스(106)를 따라 송신된 다양한 페이로드들의 발신자 및 수신자로서 동작하는 프로세서를 포함할 수 있다. 몇몇 실시예들에서, 호스트(110)는 예를 들면, 마이크로제어기이거나 또는 이를 포함할 수 있다. 특히, 호스트(110)는 버스(106)를 따라 일어나는 집적 회로-간 사운드(I2S) 통신들의 마스터일 수 있다. 호스트(110)는 I2S/시간 분할 다중화(TDM) 버스 및/또는 집적 회로-간(I2C) 버스를 통해 마스터 노드(102)와 통신할 수 있다. 몇몇 실시예들에서, 마스터 노드(102)는 호스트(110)와 동일한 하우징 내에 위치된 트랜시버(예컨대, 도 2를 참조하여 이하에서 논의된 노드 트랜시버(120))일 수 있다. 마스터 노드(102)는 구성 및 되읽기를 위해 I2C 버스를 통해 호스트(110)에 의해 프로그램 가능할 수 있으며, 슬레이브 노드들(104) 모두를 위한 클록, 동기화, 및 프레이밍을 생성하도록 구성될 수 있다. 몇몇 실시예들에서, 마스터 노드(102)에서의 호스트(110) 사이에서 I2C 제어 버스의 연장은 버스(106)를 통해 송신된 데이터 스트림들에 내장될 수 있어서, 호스트(110)가 하나 이상의 슬레이브 노드들(104)을 위한 상태 정보 및 레지스터들로의 직접 액세스를 허용할 뿐만 아니라, 호스트(110)가 디바이스들(108)을 제어하도록 허용하기 위해 거리에 걸친 I2C-대-I2C 통신을 가능하게 한다. 시스템(100)이 차량에 포함되는 실시예들에서, 호스트(110) 및/또는 마스터 노드(102)는 차량의 헤드 유닛에 포함될 수 있다.
마스터 노드(102)는 "다운스트림" 신호들(예컨대, 버스(106)를 따라 마스터 노드(102)로부터 멀리 송신된, 데이터 신호들, 전력 신호들 등)을 생성하고 "업스트림" 신호들(예컨대, 버스(106)를 따라 마스터 노드(102)를 향해 송신된)을 수신할 수 있다. 마스터 노드(102)는 버스(106)를 통한 동기식 데이터 송신을 위해 클록 신호를 제공할 수 있다. 여기에서 사용된 바와 같이, "동기 데이터"는 버스(106)를 따라 동일한 노드로/로부터 두 개의 연속적인 송신들 사이에서 고정된 시간 간격을 갖고 연속으로 스트리밍된 데이터(예컨대, 오디오 신호들)를 포함할 수 있다. 몇몇 실시예들에서, 마스터 노드(102)에 의해 제공된 클록 신호는 호스트(110)에 의해 마스터 노드(102)로 제공된 I2S 입력으로부터 도출될 수 있다. 슬레이브 노드(104)는 버스(106) 상에서 다운스트림으로 또는 버스(106) 상에서 업스트림으로 송신된 데이터 프레임들에 대한 가능한 목적지를 나타내는 어드레싱 가능한 네트워크 연결 포인트일 수 있다. 슬레이브 노드(104)는 또한 다운스트림 또는 업스트림 데이터 프레임들의 가능한 소스를 나타낼 수 있다. 시스템(100)은 제어 정보 및 다른 데이터가 하나의 노드로부터 다음으로 버스(106)를 통해 양쪽 방향들 모두로 송신되도록 허용할 수 있다. 슬레이브 노드들(104) 중 하나 이상은 또한 버스(106)를 통해 송신된 신호들에 의해 작동될 수 있다.
특히, 마스터 노드(102) 및 슬레이브 노드들(104)의 각각은 양의 업스트림 단자("AP"로 표시됨), 음의 업스트림 단자("AN"으로 표시됨), 양의 다운스트림 단자("BP"로 표시됨), 및 음의 다운스트림 단자("BN"으로 표시됨)를 포함할 수 있다. 노드의 양의 및 음의 다운스트림 단자들은 각각, 인접한 다운스트림 노드의 양의 및 음의 업스트림 단자들에 결합될 수 있다. 도 1에 도시된 바와 같이, 마스터 노드(102)는 양의 및 음의 업스트림 단자들을 포함할 수 있지만, 이들 단자들은 사용되지 않을 수 있으며; 다른 실시예들에서, 마스터 노드(102)는 양의 및 음의 업스트림 단자들을 포함하지 않을 수 있다. 버스(106)를 따르는 마지막 슬레이브 노드(104)(도 1에서 슬레이브 노드 2)는 양의 및 음의 다운스트림 단자들을 포함할 수 있지만, 이들 단자들은 사용되지 않을 수 있으며; 다른 실시예들에서, 버스를 따르는 마지막 슬레이브 노드(104)는 양의 및 음의 다운스트림 단자들을 포함하지 않을 수 있다.
이하에서 상세하게 논의되는 바와 같이, 마스터 노드(102)는, 선택적으로 슬레이브 노드들(104) 중 하나 이상을 위해 의도된 데이터와 함께, 다운스트림으로 동기화 제어 프레임을 주기적으로 전송할 수 있다. 예를 들어, 마스터 노드(102)는 48kHz의 주파수로 1024 비트들마다(슈퍼프레임을 나타내는) 동기화 제어 프레임을 송신할 수 있어서, 49.152Mbps의 버스(106) 상에서 유효 비트 레이트를 야기한다. 예를 들어, 44.1kHz를 포함한, 다른 레이트들이 지원될 수 있다. 동기화 제어 프레임은 슬레이브 노드들(104)이 각각의 슈퍼프레임의 처음을 식별하도록 허용할 수 있으며, 또한 물리 계층 인코딩/시그널링과 조합하여, 각각의 슬레이브 노드(104)가 버스(106)로부터 내부 동작 클록을 도출하도록 허용할 수 있다. 동기화 제어 프레임은 동기화의 시작을 시그널링하기 위한 프리앰블, 뿐만 아니라 다양한 어드레싱 모드들(예컨대, 보통, 브로드캐스트, 탐색), 구성 정보(예컨대, 슬레이브 노드들(104)의 레지스터들로 쓰기), I2C 정보의 수송, 슬레이브 노드들(104)에서 특정한 범용 입력/출력(GPIO) 핀들의 원격 제어, 및 다른 서비스들을 허용하는 제어 필드들을 포함할 수 있다. 프리앰블 및 페이로드 데이터를 따르는 동기화 제어 프레임의 일 부분은 동기화 제어 프레임에서의 정보가 새로운 프리앰블에 대해 잘못될 가능성을 감소시키도록, 및 관련된 전자기 방출들의 스펙트럼을 평탄화하도록 스크램블링될 수 있다.
동기화 제어 프레임은, 그것이 마스터 노드(102)에 의해 마지막 슬레이브 노드(104)로서 구성되었거나 또는 마지막 슬레이브 노드(104)로서 자체-식별된, 마지막 슬레이브 노드(104)(즉, 도 1에서 슬레이브 노드 2)에 도달할 때까지 슬레이브 노드(104) 사이에서 지나갈 수 있다(선택적으로 마스터 노드(102)로부터 올 수 있지만 부가적으로 또는 대안적으로 하나 이상의 업스트림 슬레이브 노드들(104)로부터 또는 슬레이브 노드(104) 자체로부터 올 수 있는, 다른 데이터와 함께). 동기화 제어 프레임을 수신하면, 마지막 슬레이브 노드(104)는 송신하도록 허용된 임의의 데이터(예컨대, 지정된 시간 슬롯에서 24-비트 오디오 샘플)에 앞서 동기화 응답 프레임을 송신할 수 있다. 동기화 응답 프레임은 슬레이브 노드들(104) 사이에서 업스트림으로 통과될 수 있으며(선택적으로, 다운스트림 슬레이브 노드들(104)과 함께), 동기화 응답 프레임에 기초하여, 각각의 슬레이브 노드(104)는 만약에 있다면, 시간 슬롯을 식별할 수 있으며, 여기에서 슬레이브 노드(104)는 송신하도록 허용된다.
몇몇 실시예들에서, 시스템(100)에서 슬레이브 노드들(104) 중 하나 이상은 주변 디바이스(108)에 결합되며 그것과 통신할 수 있다. 예를 들어, 슬레이브 노드(104)는 이하에서 논의되는 바와 같이, I2S, 펄스 밀도 변조(PDM), TDM, 및/또는 I2C 프로토콜들을 사용하여 연관된 주변 디바이스(108)로부터 데이터를 판독하고 및/또는 그것으로 데이터를 기록하도록 구성될 수 있다. "주변 디바이스(108)"는 여기에서 단수형으로 참조될 수 있지만, 이것은 단순히 논의의 용이함을 위한 것이며, 단일 슬레이브 노드(104)는 0, 1, 또는 그 이상의 주변 디바이스들과 결합될 수 있다. 주변 디바이스(108)에 포함될 수 있는 주변 디바이스들의 예들은 디지털 신호 프로세서(DSP), 필드 프로그램 가능한 게이트 어레이(FPGA), ASIC, 아날로그-디지털 변환기(ADC), 디지털-아날로그 변환기(DAC), 코덱, 마이크로폰, 마이크로폰 어레이, 스피커, 오디오 증폭기, 프로토콜 분석기, 가속도계 또는 다른 모션 센서, 환경 조건 센서(예컨대, 온도, 습도, 및/또는 가스 센서), 유선 또는 무선 통신 트랜시버, 디스플레이 디바이스(예컨대, 터치스크린 디스플레이), 사용자 인터페이스 구성요소(예컨대, 버튼, 다이얼, 또는 다른 제어부), 카메라(예컨대, 비디오 카메라), 메모리 디바이스, 또는 데이터를 송신 및/또는 수신하는 임의의 다른 적절한 디바이스를 포함할 수 있다. 상이한 주변 디바이스 구성들의 다수의 예들이 여기에서 상세하게 논의된다.
몇몇 실시예들에서, 주변 디바이스(108)는 집적 회로-간 사운드(I2S) 통신을 위해 구성된 임의의 디바이스를 포함할 수 있으며; 주변 디바이스(108)는 I2S 프로토콜을 통해 연관된 슬레이브 노드(104)와 통신할 수 있다. 몇몇 실시예들에서, 주변 디바이스(108)는 집적 회로-간(I2C) 통신을 위해 구성된 임의의 디바이스를 포함할 수 있으며; 주변 디바이스(108)는 I2C 프로토콜을 통해 연관된 슬레이브 노드(104)와 통신할 수 있다. 몇몇 실시예들에서, 슬레이브 노드(104)는 임의의 주변 디바이스(108)에 결합되지 않을 수 있다.
슬레이브 노드(104) 및 그것의 연관된 주변 디바이스(108)는 별개의 하우징들에 포함되며 유선 또는 무선 통신 연결을 통해 결합될 수 있거나 또는 공통 하우징에 포함될 수 있다. 예를 들어, 주변 디바이스(108)로서 연결된 스피커는 연관된 슬레이브 노드(104)를 위한 하드웨어(예컨대, 도 2를 참조하여 이하에서 논의되는 노드 트랜시버(120))와 함께 패키징될 수 있으며, 따라서 연관된 슬레이브 노드(104)를 위한 하드웨어는 다른 스피커 구성요소들을 포함하는 하우징 내에 포함된다. 이것은 임의의 유형의 주변 디바이스(108)에 대해서도 마찬가지일 수 있다.
상기 논의된 바와 같이, 호스트(110)는 다-채널 I2S 및 I2C 통신 프로토콜들을 사용하여 마스터 노드(102)와 통신하고 그것을 제어할 수 있다. 특히, 호스트(110)는 마스터 노드(102)에서 I2S를 통해 프레임 버퍼(예시되지 않음)로 송신할 수 있으며, 마스터 노드(102)는 프레임 버퍼로부터 데이터를 판독하며 버스(106)를 따라 데이터를 송신할 수 있다. 유사하게, 마스터 노드(102)는 버스(106)를 통해 수신된 데이터를 프레임 버퍼에 저장할 수 있으며, 그 후 I2S를 통해 데이터를 호스트(110)로 송신할 수 있다.
각각의 슬레이브 노드(104)는 마스터 노드(102)로부터의 통신들에 의해 구성될 수 있는 내부 제어 레지스터들을 가질 수 있다. 다수의 이러한 레지스터들은 이하에서 상세하게 논의된다. 각각의 슬레이브 노드(104)는 다운스트림 데이터를 수신할 수 있으며 데이터를 추가로 다운스트림으로 재송신할 수 있다. 각각의 슬레이브 노드(104)는 업스트림 데이터를 수신하고 및/또는 생성하며 및/또는 데이터를 업스트림으로 재송신하고 및/또는 데이터를 트랜잭션에 및 업스트림으로 부가할 수 있다.
버스(106)를 따르는 통신들은 주기적인 슈퍼프레임들에서 발생할 수 있다. 각각의 슈퍼프레임은 다운스트림 동기화 제어 프레임으로 시작할 수 있고; 다운스트림 송신(또는 "다운스트림 부분들"로 불리움), 업스트림 송신(또한 "업스트림 부분들"로 불리움), 및 무 송신(여기에서 버스(106)는 구동되지 않는다)의 기간들로 나뉘며; 또 다른 다운스트림 동기화 제어 프레임의 송신 직전에 종료할 수 있다. 마스터 노드(102)는 슬레이브 노드들(104) 중 하나 이상으로 송신할 다운스트림 부분들의 수 및 슬레이브 노드들(104) 중 하나 이상으로부터 수신될 업스트림 부분들의 수로 프로그램될 수 있다(호스트(110)에 의해). 각각의 슬레이브 노드(104)는 버스(106) 아래로 재송신할 다운스트림 부분들의 수, 소비할 다운스트림 부분들의 수, 버스(106) 위로 재송신할 업스트림 부분들의 수, 및 슬레이브 노드(104)가 연관된 주변 디바이스(108)로부터 슬레이브 노드(104)로부터 수신된 데이터를 송신할 수 있는 업스트림 부분들의 수로 프로그램될 수 있다(마스터 노드(102)에 의해). 버스(106)를 따르는 통신은 도 2 내지 도 12를 참조하여 이하에서 추가로 상세하게 논의된다.
마스터 노드(102) 및 슬레이브 노드들(104)의 각각은 시스템(100)의 구성요소들 사이에서 통신을 관리하기 위해 트랜시버를 포함할 수 있다. 도 2는 다양한 실시예들에 따라, 도 1의 시스템(100)의 노드(예컨대, 마스터 노드(102) 또는 슬레이브 노드(104))에 포함될 수 있는 노드 트랜시버(120)의 블록도이다. 몇몇 실시예들에서, 노드 트랜시버(120)는 시스템(100)의 노드들의 각각에 포함될 수 있으며, 제어 신호는 노드 트랜시버(120)가 마스터(예컨대, MSTR 핀이 하이일 때) 또는 슬레이브(예컨대, MSTR 핀이 로우일 때)로서 동작할지를 나타내기 위해 마스터(MSTR) 핀을 통해 노드 트랜시버(120)에 제공될 수 있다.
노드 트랜시버(120)는 업스트림 차등 시그널링(DS) 트랜시버(122) 및 다운스트림 DS 트랜시버(124)를 포함할 수 있다. 업스트림 DS 트랜시버(122)는 도 1을 참조하여 상기 논의된 양의 및 음의 업스트림 단자들에 결합될 수 있으며, 다운스트림 DS 트랜시버(124)는 도 1을 참조하여 상기 논의된 양의 및 음의 다운스트림 단자들에 결합될 수 있다. 몇몇 실시예들에서, 업스트림 DS 트랜시버(122)는 저 전압 DS(LVDS) 트랜시버일 수 있으며, 다운스트림 DS 트랜시버(124)는 LVDS 트랜시버일 수 있다. 시스템(100)에서 각각의 노드는 버스(106)에 AC-결합될 수 있으며, 데이터 신호들은 버스(106)를 통해 타이밍 정보를 제공하기 위해 적절한 인코딩을 갖고(예컨대, 차등 맨체스터 코딩, 복상 마크 코딩, 맨체스터 코딩, 영점 비복귀(Non-Return-to-Zero), 런-길이 제한을 가진 역(NRZI) 코딩, 또는 임의의 다른 적절한 인코딩) 미리 결정된 형태의 DS(예컨대, LVDS 또는 다중포인트 LVDS(MLVDS) 또는 유사한 시그널링)를 사용하여 버스(106)를 따라(예컨대, 업스트림 DS 트랜시버(122) 및/또는 다운스트림 DS 트랜시버(124)를 통해) 수송될 수 있다.
업스트림 DS 트랜시버(122) 및 다운스트림 DS 트랜시버(124)는 버스 프로토콜 회로(126)와 통신할 수 있으며, 버스 프로토콜 회로(126)는 다른 구성요소들 중에서, 위상 잠금 루프(PLL)(128) 및 전압 조절기 회로(130)와 통신할 수 있다. 노드 트랜시버(120)에 전원이 넣어질 때, 전압 조절기 회로(130)는 PLL(128)에 의해 파워-온 리셋으로서 사용되는 "전력 양호(power good)" 신호를 일으킬 수 있다.
상기 주지된 바와 같이, 시스템(100)에서 슬레이브 노드들(104) 중 하나 이상은 버스(106)를 통해 데이터와 동시에 송신된 전력을 수신할 수 있다. 전력 분배를 위해(슬레이브 노드들(104) 중 일부가 독점적으로 그것들에 제공된 로컬 전력을 갖도록 구성될 수 있으므로, 선택적이다), 마스터 노드(102)는 마스터 노드(102)와 슬레이브 노드 0 사이에서 버스 링크 상에 DC 바이어스를 둘 수 있다(예컨대, 전압 조절기에 의해 제공된 전압 소스에 다운스트림 단자들 중 하나를 및 접지에 다른 다운스트림 단자를 연결함으로써). DC 바이어스는 5V, 8V, 자동차 배터리의 전압, 또는 더 높은 전압과 같은, 미리 결정된 전압일 수 있다. 각각의 연속적인 슬레이브 노드(104)는 선택적으로 전력을 복구하기 위해 그것의 업스트림 버스 링크를 태핑할 수 있다(예컨대, 전압 조절기 회로(130)를 사용하여). 이러한 전력은 슬레이브 노드(104) 자체(및 선택적으로 슬레이브 노드(104)에 결합된 하나 이상의 주변 디바이스(108))를 작동시키기 위해 사용될 수 있다. 슬레이브 노드(104)는 또한 선택적으로 업스트림 버스 링크로부터 또는 로컬 전원 공급 장치로부터 복구된 전력을 갖고 2번째 슬레이브 노드(104)에 대해 다운스트림으로 버스 링크를 바이어싱할 수 있다. 예를 들어, 슬레이브 노드 0은 슬레이브 노드 0 자체에 대해 및/또는 하나 이상의 연관된 주변 디바이스(108)에 대해 전력을 복구하기 위해 업스트림 버스 링크(106) 상에서 DC 바이어스를 사용할 수 있으며, 및/또는 슬레이브 노드 0은 그것의 다운스트림 버스 링크(106)를 바이어싱하기 위해 그것의 업스트림 버스 링크(106)로부터 전력을 복구할 수 있다.
따라서, 몇몇 실시예들에서, 시스템(100)에서의 각각의 노드는 다운스트림 버스 링크를 통해 다음의 다운스트림 노드에 전력을 제공할 수 있다. 노드들의 파워링은 순차적인 방식으로 수행될 수 있다. 예를 들어, 버스(106)를 통해 슬레이브 노드 0을 탐색하고 구성한 후, 마스터 노드(102)는 슬레이브 노드 1에 전력을 제공하기 위해 그것의 다운스트림 버스 링크(106)에 전력을 제공하도록 슬레이브 노드 0에 지시할 수 있고; 슬레이브 노드 1이 탐색되고 구성된 후, 마스터 노드(102)는 슬레이브 노드 2(및 버스(106)에 결합된 부가적인 슬레이브 노드들(104)에 대해서도)에 전력을 제공하기 위해 그것의 다운스트림 버스 링크(106)에 전력을 제공하도록 슬레이브 노드 1에 지시할 수 있다. 몇몇 실시예들에서, 슬레이브 노드들(104) 중 하나 이상은, 그것의 업스트림 버스 링크로부터 동력을 공급받는 대신, 또는 그 외에, 국소적으로 동력을 공급받을 수 있다. 몇몇 이러한 실시예들에서, 주어진 슬레이브 노드(104)에 대한 로컬 전원은 하나 이상의 다운스트림 슬레이브 노드들로 전력을 제공하기 위해 사용될 수 있다.
몇몇 실시예들에서, 업스트림 버스 인터페이스 회로(132)는 업스트림 DS 트랜시버(122)와 전압 조절기 회로(130) 사이에 배치될 수 있으며, 다운스트림 버스 인터페이스 회로(131)는 다운스트림 DS 트랜시버(124)와 전압 조절기 회로(130) 사이에 배치될 수 있다. 버스(106)의 각각의 링크가 AC(신호) 및 DC(전력) 구성요소들을 운반할 수 있으므로, 업스트림 버스 인터페이스 회로(132) 및 다운스트림 버스 인터페이스 회로(131)는 AC 및 DC 구성요소들을 분리하여, 업스트림 DS 트랜시버(122) 및 다운스트림 DS 트랜시버(124)에 AC 구성요소들을 제공하고, 전압 조절기 회로(130)에 DC 구성요소들을 제공한다. 업스트림 DS 트랜시버(122) 및 다운스트림 DS 트랜시버(124)의 라인 측 상에서의 AC 결합들은 고속 양-방향 통신들을 허용하기 위해 라인 상에서 DC 구성요소로부터 트랜시버들(122 및 124)을 실질적으로 분리시킨다. 상기 논의된 바와 같이, DC 구성요소는 전력을 위해 태핑될 수 있으며, 업스트림 버스 인터페이스 회로(132) 및 다운스트림 버스 인터페이스 회로(131)는 전압 조절기 회로(130)로 제공된 AC 구성요소를 감소시키기 위해, 예를 들어, 페라이트, 공통 모드 초크, 또는 인덕터를 포함할 수 있다. 몇몇 실시예들에서, 업스트림 버스 인터페이스 회로(132)는 업스트림 DS 트랜시버(122)에 포함될 수 있으며, 및/또는 다운스트림 버스 인터페이스 회로(131)는 다운스트림 DS 트랜시버(124)에 포함될 수 있고; 다른 실시예들에서, 필터링 회로는 트랜시버들(122 및 124)의 외부에 있을 수 있다.
노드 트랜시버(120)는 노드 트랜시버(120)와 외부 디바이스(155) 사이에서 I2S, TDM, 및 PDM 통신을 위해 트랜시버(127)를 포함할 수 있다. "외부 디바이스(155)"는 여기에서 단수형으로 참조될 수 있지만, 이것은 단순히 예시의 용이함을 위한 것이며, 다수의 외부 디바이스들이 I2S/TDM/PDM 트랜시버(127)를 통해 노드 트랜시버(120)와 통신할 수 있다. 이 기술분야에 알려진 바와 같이, I2S 프로토콜은 펄스 코드 변조(PCM) 정보를 운반하기 위한 것이다(예컨대, 인쇄 회로 보드(PCB) 상에서의 오디오 칩들 사이에서). 여기에서 사용된 바와 같이, "I2S/TDM"은 TDM을 사용하여 다수의 채널들로의 I2S 스테레오(2-채널) 콘텐트의 확장을 나타낼 수 있다. 이 기술분야에 알려진 바와 같이, PDM은 시그마 델타 변환기들에서 사용될 수 있으며, 특히 PDM 포맷은 데시메이션 전에 오버-샘플링된 1-비트 시그마 델타 ADC 신호를 나타낼 수 있다. PDM 포맷은 종종 디지털 마이크로폰들을 위한 출력 포맷으로서 사용된다. I2S/TDM/PDM 트랜시버(127)는 외부 디바이스(166)와의 통신을 위해 핀들 및 버스 프로토콜 회로(126)와 통신할 수 있다. 6개의 핀들, 즉 BCLK, SYNC, DTX[1:0], 및 DRX[1:0]은 도 2에서 예시되며; BCLK 핀은 I2S 비트 클록을 위해 사용될 수 있고, SYNC 핀은 I2S 프레임 동기화 신호를 위해 사용될 수 있으며, DTX[1:0] 및 DRX[1:0] 핀들은 각각, 데이터 채널들을 송신하고 수신하기 위해 사용된다. 2개의 송신 핀들(DTX[1:0]) 및 2개의 수신 핀들(DRX[1:0])이 도 2에서 예시되지만, 임의의 원하는 수의 수신 및/또는 송신 핀들이 사용될 수 있다.
노드 트랜시버(120)가 마스터 노드(102)에 포함될 때, 외부 디바이스(155)는 호스트(110)를 포함할 수 있으며, I2S/TDM/PDM 트랜시버(127)는 호스트(110)의 I2S 인터페이스 클록과 동시에 호스트(110)로부터 데이터를 수신하고 호스트(110)로 데이터를 전송할 수 있는 I2S 슬레이브(BCLK 및 SYNC에 관한)를 제공할 수 있다. 특히, I2S 프레임 동기화 신호는 호스트(100)로부터의 입력으로서 SYNC 핀에서 수신될 수 있으며, PLL(128)은 클록들을 발생시키기 위해 상기 신호를 사용할 수 있다. 노드 트랜시버(120)가 슬레이브 노드(104)에 포함될 때, 외부 디바이스(155)는 하나 이상의 주변 디바이스들(108)을 포함할 수 있으며, I2S/TDM/PDM 트랜시버(127)는 주변 디바이스(108)와의 I2S 통신을 제어할 수 있는 I2S 클록 마스터(BCLK 및 SYNC를 위한)를 제공할 수 있다. 특히, I2S/TDM/PDM 트랜시버(127)는 출력으로서 SYNC 핀에서 I2S 프레임 동기화 신호를 제공할 수 있다. 노드 트랜시버(120)에서의 레지스터들은 어떤 및 어떻게 많은 I2S/TDM 채널들이 버스(106)를 통해 데이터 슬롯들로서 송신되는지를 결정할 수 있다. 노드 트랜시버(120)에서 TDM 모드(TDMMODE) 레지스터는 TDM 송신 또는 수신 핀 상에서 연속적인 SYNC 펄스들에 얼마나 많은 TDM 채널들이 적합한지에 대한 값을 저장할 수 있다. 채널 크기에 대한 지식과 함께, 노드 트랜시버(120)는 샘플링 시간 내에서 비트들의 수를 매칭시키기 위해 BCLK 레이트(예컨대, 48kHz)를 자동으로 설정할 수 있다.
노드 트랜시버(120)는 노드 트랜시버(120)와 외부 디바이스(157) 사이에서 I2C 통신을 위해 트랜시버(129)를 포함할 수 있다. "외부 디바이스(157)"는 여기에서 단수형으로 참조될 수 있지만, 이것은 단순히 예시의 용이함을 위한 것이며, 다수의 외부 디바이스들이 I2C 트랜시버(129)를 통해 노드 트랜시버(120)와 통신할 수 있다. 이 기술분야에 알려진 바와 같이, I2C 프로토콜은 데이터 전송을 제공하기 위해 클록(SCL) 및 데이터(SDA) 라인들을 사용한다. I2C 트랜시버(129)는 외부 디바이스(157)와의 통신을 위해 핀들 및 버스 프로토콜 회로(126)와 통신할 수 있다. 4개의 핀들, 즉 ADR1, ADR2, SDA, 및 SCL이 도 2에 예시되며; ADR1 및 ADR2는 노드 트랜시버(120)가 I2C 슬레이브로 동작할 때(예컨대, 그것이 마스터 노드(102)에 포함될 때) 노드 트랜시버(120)에 의해 사용된 I2C 어드레스들을 수정하기 위해 사용될 수 있으며, SDA 및 SCL은 각각 I2C 직렬 데이터 및 직렬 클록 신호들을 위해 사용된다. 노드 트랜시버(120)가 마스터 노드(102)에 포함될 때, 외부 디바이스(157)는 호스트(110)를 포함할 수 있으며, I2C 트랜시버(129)는 호스트(110)로부터 프로그래밍 지시들을 수신할 수 있는 I2C 슬레이브를 제공할 수 있다. 특히, I2C 직렬 클록 신호는 레지스터 액세스들을 위해 호스트(110)로부터의 입력으로서 SCL 핀에서 수신될 수 있다. 노드 트랜시버(120)가 슬레이브 노드(104)에 포함될 때, 외부 디바이스(157)는 주변 디바이스(108)를 포함할 수 있으며 I2C 트랜시버(129)는 I2C 트랜시버가 호스트(110)에 의해 제공되고 버스(106)를 통해 노드 트랜시버(120)로 송신된 지시들에 따라 하나 이상의 주변 디바이스들을 프로그램하도록 허용하기 위해 I2C 마스터를 제공할 수 있다. 특히, I2C 트랜시버(129)는 출력으로서 SCL 핀에서 I2C 직렬 클록 신호를 제공할 수 있다.
노드 트랜시버(120)는 버스 프로토콜 회로(126)와 통신하는 인터럽트 요청(IRQ) 핀을 포함할 수 있다. 노드 트랜시버(120)가 I2C 트랜시버(129)를 통해 마스터 노드(102)에 포함될 때, 버스 프로토콜 회로(126)는 IRQ 핀을 통해 호스트(110)를 향해 이벤트-구동 인터럽트 요청들을 제공할 수 있다. 노드 트랜시버(120)가 슬레이브 노드(104)에 포함될 때(예컨대, MSTR 핀이 로우일 때), IRQ 핀은 인터럽트 요청 능력을 가진 GPIO 핀으로서 작용할 수 있다. 노드 트랜시버(120)는 도 2에 도시된 것들 외에 다른 핀들을 포함할 수 있다(예컨대, 이하에서 논의된 바와 같이).
시스템(100)은 다수의 상이한 동작 모드들 중 임의의 것으로 동작할 수 있다. 버스(106) 상에서의 노드들은 각각 어떤 동작 모드가 현재 가능한지를 나타내는 레지스터를 가질 수 있다. 설명들은 구현될 수 있는 다양한 동작 모드들의 예들을 따른다. 대기 동작 모드에서, 버스 활동은 전역적 전력 절감들을 가능하게 하기 위해 감소될 수 있고; 단지 요구된 트래픽은 각각의 노드의 PLL들(예컨대, PLL(128))을 동기화되어 유지하기 위한 최소 다운스트림 프리앰블이다. 대기 동작 모드에서, 버스(106)에 걸친 판독들 및 기록들은 지원되지 않는다. 탐색 동작 모드에서, 마스터 노드(102)는 버스(106)를 따라 미리 결정된 신호들을 전송하며 버스(106)를 따라 분포된 슬레이브 노드들(104)의 토폴로지를 계획하기 위해 적절한 응답들을 기다릴 수 있다. 정상 동작 모드에서, 버스(106)를 통한 주변 디바이스들(108)로 및 그로부터의 액세스뿐만 아니라 전체 레지스터 액세스가 슬레이브 노드들(104)로 및 그로부터 이용 가능할 수 있다. 정상 모드는 동기식 업스트림 데이터를 갖거나 또는 그것 없이 및 동기식 다운스트림 데이터를 갖거나 또는 그것 없이 호스트(110)에 의해 전역적으로 구성될 수 있다.
도 3은 다양한 실시예들에 따른, 시스템(100)에서 통신을 위해 사용된 동기화 제어 프레임(180)의 일 부분의 다이어그램이다. 특히, 동기화 제어 프레임(180)은, 이하에서 논의되는 바와 같이, 데이터 클록 복구 및 PLL 동기화를 위해 사용될 수 있다. 상기 주지된 바와 같이, 버스(106)를 통한 통신들은 양쪽 방향들 모두로 발생할 수 있기 때문에, 통신들은 다운스트림 부분들 및 업스트림 부분들로 시간-다중화될 수 있다. 다운스트림 부분에서, 동기화 제어 프레임 및 다운스트림 데이터는 마스터 노드(102)로부터 송신될 수 있지만, 업스트림 부분에서, 동기화 응답 프레임, 및 업스트림 데이터는 슬레이브 노드들(104)의 각각으로부터 마스터 노드(102)로 송신될 수 있다. 동기화 제어 프레임(180)은 프리앰블(182) 및 제어 데이터(184)를 포함할 수 있다. 각각의 슬레이브 노드(104)는 PLL(128)을 공급하기 위한 시간 베이스로서 수신된 동기화 제어 프레임(180)의 프리앰블(182)을 사용하도록 구성될 수 있다. 이를 가능하게 하기 위해, 프리앰블(182)은 유효한 제어 데이터(184)의 "규칙들"을 따르지 않으며, 따라서 제어 데이터(184)로부터 쉽게 구별될 수 있다.
예를 들어, 몇몇 실시예들에서, 버스(106)를 따르는 통신은 클록 우선, 영점으로의 전이 차등 맨체스터 코딩 기법을 사용하여 인코딩될 수 있다. 이러한 인코딩 기법에 따르면, 각각의 비트 시간은 클록 전이로 시작한다. 데이터 값이 0이면, 인코딩된 신호는 비트 시간의 중간에 다시 전이한다. 데이터 값이 1이면, 인코딩된 신호는 다시 전이하지 않는다. 도 5에 예시된 프리앰블(182)은 인코딩 프로토콜을 위반할 수 있으며(예컨대, 비트 시간들(5, 7, 및 8)의 초기에 발생하지 않는 클록 전이들을 가짐으로써), 이것은 프리앰블(182)이 제어 데이터(184)에 대한 임의의 합법적인(예컨대, 정확하게 인코딩된) 패턴에 매칭되지 않을 수 있음을 의미한다. 또한, 프리앰블(182)은 제어 데이터(184)에 대한 합법적 패턴을 취하고 단일 비트 시간 동안 또는 다수의 비트 시간 기간 동안 버스(106)를 하이 또는 로우가 되게 함으로써 재생될 수 없다. 도 5에 예시된 프리앰블(182)은 단순히 예시적이며, 동기화 제어 프레임(180)은 임의의 적절한 방식으로 제어 데이터(184)에 의해 사용된 인코딩을 위반할 수 있는 상이한 프리앰블들(182)을 포함할 수 있다.
버스 프로토콜 회로(126)는 버스(106)로부터 복구된 클록 상에서 구동하며 프레임 동기 표시자를 PLL(128)로 전송하기 위해 동기화 제어 프레임(180)을 검출하는 차등 맨체스터 디코더 회로를 포함할 수 있다. 이러한 방식으로, 동기화 제어 프레임(180)은 시스템 클록 또는 고속 오버샘플링 클록을 사용하지 않고 검출될 수 있다. 결과적으로, 슬레이브 노드들(104)은 슬레이브 노드들(104)에서 수정 클록 소스를 요구하지 않고 버스(106)로부터 PLL 동기화 신호를 수신할 수 있다.
상기 주지된 바와 같이, 버스(106)를 따르는 통신들은 주기적인 슈퍼프레임들에서 발생할 수 있다. 도 4는 다양한 실시예들에 따른, 슈퍼프레임(190)의 다이어그램이다. 도 6에 도시된 바와 같이, 슈퍼프레임은 동기화 제어 프레임(180)으로 시작할 수 있다. 동기화 제어 프레임(180)이 PLL(128)을 위한 타이밍 소스로서 사용될 때, 슈퍼프레임들이 전달되는 주파수("슈퍼프레임 주파수")는 동기화 신호 주파수와 동일할 수 있다. 오디오 데이터가 버스(106)를 따라 송신되는 몇몇 실시예들에서, 슈퍼프레임 주파수는 시스템(100)에서 사용된 오디오 샘플링 주파수(예컨대, 48kHz 또는 44.1kHz)와 동일할 수 있지만, 임의의 적절한 슈퍼프레임 주파수가 사용될 수 있다. 각각의 슈퍼프레임(190)은 다운스트림 송신의 기간들(192), 업스트림 송신의 기간들(194), 무송신의 기간들(196)(예컨대, 버스(106)가 구동되지 않을 때)로 나뉠 수 있다.
도 4에서, 슈퍼프레임(190)은 다운스트림 송신(192)의 초기 기간 및 업스트림 송신(194)의 나중 기간을 갖고 도시된다. 다운스트림 송신(192)의 기간은 동기화 제어 프레임(180) 및 X 다운스트림 데이터 슬롯들(198)을 포함할 수 있으며, 여기에서 X는 0일 수 있다. 버스(106) 상에서 실질적으로 모든 신호들은 상기 논의된 바와 같이, 동기화 제어 프레임(180)에서 동기화 프리앰블(182)의 형태로 마스터 노드(102)로부터 마지막 슬레이브 노드(104)(예컨대, 슬레이브 노드(104C))로 다운스트림으로 포워딩된 라인-코딩된 동기화 신호일 수 있다. 다운스트림, TDM, 동기식 데이터는 동기화 제어 프레임(180) 후 X 다운스트림 데이터 슬롯들(198)에 포함될 수 있다. 다운스트림 데이터 슬롯들(198)은 동일한 폭을 가질 수 있다. 상기 논의된 바와 같이, PLL(128)은 버스(106)를 통해 시간 통신들로 노드가 사용하는 클록을 제공할 수 있다. 버스(106)가 오디오 데이터를 송신하기 위해 사용되는 몇몇 실시예들에서, PLL(128)은 오디오 샘플링 주파수의 배수(예컨대, 각각의 슈퍼프레임에서 1024-비트 클록들을 야기하는, 오디오 샘플링 주파수의 1024배)로 동작할 수 있다.
업스트림 송신(194)의 기간은 동기화 응답 프레임(197) 및 Y 업스트림 데이터 슬롯들(199)을 포함할 수 있으며, 여기에서 Y는 0일 수 있다. 몇몇 실시예들에서, 각각의 슬레이브 노드(104)는 다운스트림 데이터 슬롯들(198)의 일 부분을 소비할 수 있다. 마지막 슬레이브 노드(예컨대, 도 1에서 슬레이브 노드 2)는 동기화 응답 프레임(197)으로 응답할 수 있다(마지막 슬레이브 노드의 레지스터에 저장된 미리 결정된 응답 시간 후). 업스트림, TDM, 동기화 데이터는 동기화 응답 프레임(197) 직후 각각의 슬레이브 노드(104)에 의해 업스트림 데이터 슬롯들(199)에 부가될 수 있다. 업스트림 데이터 슬롯들(199)은 동일한 폭을 가질 수 있다. 마지막 슬레이브 노드가 아닌 슬레이브 노드(104)(예컨대, 도 1에서 슬레이브 노드 0 및 1)는 그것의 레지스터들 중 하나의 판독이 슈퍼프레임(190)의 동기화 제어 프레임(180)에서 요청되었다면 또는 원격 I2C가 슈퍼프레임(190)의 동기화 제어 프레임(180)에서 요청되었다면 그 자신의 업스트림 응답으로 수신된 동기화 응답 프레임(197)을 대신할 수 있다.
상기 논의된 바와 같이, 동기화 제어 프레임(180)은 각각의 다운스트림 송신을 시작할 수 있다. 몇몇 실시예들에서, 동기화 제어 프레임(180)은 길이가 64비트일 수 있지만, 임의의 다른 적절한 길이가 사용될 수 있다. 동기화 제어 프레임(180)은 상기 주지된 바와 같이, 프리앰블(182)로 시작할 수 있다. 몇몇 실시예들에서, 동기화 제어 프레임(180)이 슬레이브 노드(104)에 의해 다운스트림 슬레이브 노드(104)로 재송신될 때, 프리앰블(182)은 재송신되기보다는, 송신 슬레이브 노드(104)에 의해 생성될 수 있다.
동기화 제어 프레임(180)의 제어 데이터(184)는 버스(106)를 통한 트랜잭션들을 제어하기 위해 사용된 데이터를 포함하는 필드들을 포함할 수 있다. 이들 필드들의 예들은 이하에서 논의되며, 몇몇 실시예들은 도 5에서 예시된다. 특히, 도 5는 다양한 실시예들에 따라, 정상 모드, I2C 모드, 및 탐색 모드에서 동기화 제어 프레임(180)에 대한 예시적인 포맷들을 예시한다. 몇몇 실시예들에서, 상이한 프리앰블(182) 또는 동기화 제어 프레임(180)은 슬레이브 노드들(104)이 정상 모드로의 전이가 전송될 때까지 동기화 제어 프레임(180)의 모두를 수신할 필요가 없도록 전적으로 대기 모드에서 사용될 수 있다.
몇몇 실시예들에서, 동기화 제어 프레임(180)은 카운트(CNT) 필드를 포함할 수 있다. CNT 필드는 임의의 적절한 길이(예컨대, 2비트들)를 가질 수 있으며 이전 슈퍼프레임에서 사용된 값으로부터 증가될 수 있다(모듈로 필드의 길이). 예상되지 않은 CNT 값을 수신하는 슬레이브 노드(104)는 인터럽트를 리턴하도록 프로그램될 수 있다.
몇몇 실시예들에서, 동기화 제어 프레임(180)은 노드 어드레싱 모드(NAM) 필드를 포함할 수 있다. NAM 필드는 임의의 적절한 길이(예컨대, 2비트들)를 가질 수 있으며 버스(106)를 통해 슬레이브 노드(104)의 레지스터들로의 액세스를 제어하기 위해 사용될 수 있다. 정상 모드에서, 슬레이브 노드(104)의 레지스터들은 슬레이브 노드(104)의 ID 및 레지스터의 어드레스에 기초하여 판독되고 및/또는 기록될 수 있다. 브로드캐스트 트랜잭션들은 모든 슬레이브 노드(104)에 의해 취해져야 하는 기록들이다. 몇몇 실시예들에서, NAM 필드는 "무"(예컨대, 임의의 특정한 슬레이브 노드(104)로 어드레싱되지 않은 데이터), "정상"(예컨대, 이하에서 논의되는 어드레스 필드에서 특정된 특정 슬레이브 노드(104)로의 데이터 유니캐스트), "브로드캐스트"(예컨대, 모든 슬레이브 노드들(104)로 어드레싱됨), 및 "탐색"을 포함한, 4개의 노드 어드레싱 모드들을 위해 제공할 수 있다.
몇몇 실시예들에서, 동기화 제어 프레임(180)은 I2C 필드를 포함할 수 있다. I2C 필드는 임의의 적절한 길이(예컨대, 1비트)를 가질 수 있으며 다운스트림 송신의 기간(192)이 I2C 트랜잭션을 포함한다는 것을 나타내기 위해 사용될 수 있다. I2C 필드는 호스트(110)가 연관된 슬레이브 노드(104)에 대하여 I2C 슬레이브로서 동작하는 주변 디바이스(108)를 원격으로 액세스하기 위한 지시들을 제공하였음을 나타낼 수 있다.
몇몇 실시예들에서, 동기화 제어 프레임(180)은 노드 필드를 포함할 수 있다. 노드 필드는 임의의 적절한 길이(예컨대, 4비트들)를 가질 수 있으며 어떤 슬레이브 노드가 정상 및 I2C 액세스들을 위해 어드레싱되는지를 나타내기 위해 사용될 수 있다. 탐색 모드에서, 이 필드는 슬레이브 노드(104)의 노드 ID 레지스터에서 새롭게 탐색된 슬레이브 노드(104)에 대한 식별자를 프로그램하기 위해 사용될 수 있다. 시스템(100)에서 각각의 슬레이브 노드(104)는, 이하에서 논의된 바와 같이, 슬레이브 노드(104)가 마스터 노드(102)에 의해 탐색될 때 고유 ID를 할당받을 수 있다. 몇몇 실시예들에서, 마스터 노드(102)는 노드 ID를 갖지 않지만, 다른 실시예들에서, 마스터 노드(102)는 노드 ID를 가질 수 있다. 몇몇 실시예들에서, 버스(106) 상에서 마스터 노드(102)에 접속된 슬레이브 노드(104)(예컨대, 도 1에서 슬레이브 노드 0)는 슬레이브 노드 0일 것이며, 각각의 연속적인 슬레이브 노드(104)는 이전 슬레이브 노드보다 1 더 높은 수를 가질 것이다. 그러나, 이것은 단순히 예시적이며, 임의의 적절한 슬레이브 노드 식별 시스템이 사용될 수 있다.
몇몇 실시예들에서, 동기화 제어 프레임(180)은 판독/기록(RW) 필드를 포함할 수 있다. RW 필드는 임의의 적절한 길이(예컨대, 1비트)를 가질 수 있으며 정상 액세스들이 판독들(예컨대, RW==1) 또는 기록들(예컨대, RW==0)인지를 제어하기 위해 사용될 수 있다.
몇몇 실시예들에서, 동기화 제어 프레임(180)은 어드레스 필드를 포함할 수 있다. 어드레스 필드는 임의의 적절한 길이(예컨대, 8비트들)를 가질 수 있으며 버스(106)를 통해 슬레이브 노드(104)의 특정 레지스터들을 어드레싱하기 위해 사용될 수 있다. I2C 트랜잭션들을 위해, 어드레스 필드는 START/STOP, WAIT, RW, 및 DATA VLD와 같은, I2C 제어 값들로 대체될 수 있다. 탐색 트랜잭션들을 위해, 어드레스 필드는 미리 결정된 값(예컨대, 도 5에 예시된 바와 같이)을 가질 수 있다.
몇몇 실시예들에서, 동기화 제어 프레임(180)은 데이터 필드를 포함할 수 있다. 데이터 필드는 임의의 적절한 길이(예컨대, 8비트들)를 가질 수 있으며 정상, I2C, 및 브로드캐스트 기록들을 위해 사용될 수 있다. 4로 곱한, RESPCYCS 값은 새롭게 탐색된 노드가 수신되는 동기화 제어 프레임(180)의 시작과 송신되는 동기화 응답 프레임(197)의 시작 사이에서 얼마나 많은 사이클들이 경과하도록 허용해야 하는지를 결정하기 위해 사용될 수 있다. NAM 필드가 탐색 모드를 나타낼 때, 이하에서 논의된 노드 어드레스 및 데이터 필드들은, 적절한 선택적 승수(예컨대, 4)로 곱하여질 때, 동기화 제어 프레임(180)의 종료로부터 동기화 응답 프레임(197)의 시작까지 시간을 비트들로 나타내는 RESPCYCS 값으로서 인코딩될 수 있다. 이것은 새롭게 탐색된 슬레이브 노드(104)가 업스트림 송신을 위한 적절한 시간 슬롯을 결정하도록 허용한다.
몇몇 실시예들에서, 동기화 제어 프레임(180)은 순환 중복 검사(CRC) 필드를 포함할 수 있다. CRC 필드는 임의의 적절한 길이(예컨대, 16비트들)를 가질 수 있으며 프리앰블(182)을 따르는 동기화 제어 프레임(180)의 제어 데이터(184)에 대한 CRC 값을 송신하기 위해 사용될 수 있다. 몇몇 실시예들에서, CRC는 CCITT-CRC 에러 검출 기법에 따라 산출될 수 있다.
몇몇 실시예들에서, 프리앰블(182)과 CRC 필드 사이에서의 동기화 제어 프레임(180)의 적어도 일 부분은 이러한 간격에서의 비트들의 시퀀스가 주기적으로 프리앰블(182)에 매칭할 가능성을 감소시키기 위해(및 그에 따라 슬레이브 노드(104)에 의해 새로운 슈퍼프레임(190)의 시작으로서 잘못 해석될 수 있는), 뿐만 아니라 상기 주지된 바와 같이 전자기 방출들을 감소시키기 위해 스크램블링될 수 있다. 몇몇 이러한 실시예들에서, 동기화 제어 프레임(180)의 CNT 필드는 스크램블링된 필드들이 하나의 슈퍼프레임에서 다음 것으로 상이하게 스크램블링됨을 보장하기 위해 스크램블링 로직에 의해 사용될 수 있다. 여기에서 설명된 시스템(100)의 다양한 실시예들은 스크램블링을 생략할 수 있다.
다른 기술들은 프리앰블(182)이 슬레이브 노드들(104)에 의해 고유하게 식별될 수 있음을 보장하기 위해 또는 프리앰블(182)이 상기 논의된 바와 같이, 스크램블링 및/또는 에러 인코딩과 같은 기술들 외에 또는 그 대신에, 동기화 제어 프레임(180)에서의 다른 곳에 나타나는 가능성을 감소시키기 위해 사용될 수 있다. 예를 들어, 보다 긴 동기화 시퀀스는 동기화 제어 프레임(180)의 나머지의 특정한 인코딩이 그것에 매칭될 가능성을 감소시키기 위해 사용될 수 있다. 부가적으로 또는 대안적으로, 동기화 제어 프레임의 나머지는 적절한 비트들에서 고정된 "0" 또는 "1" 값들을 둠으로써와 같은, 동기화 시퀀스가 발생할 수 없도록 구조화될 수 있다.
마스터 노드(102)는 버스(106) 상에서의 통신에 특정적인 요청들 및 I2C 요청들 모두를 포함하여, 판독 및 기록 요청들을 슬레이브 노드들(104)로 전송할 수 있다. 예를 들어, 마스터 노드(102)는 판독 및 기록 요청들(RW 필드를 사용하여 표시된)을 하나 이상의 지정된 슬레이브 노드들(104)(NAM 및 노드 필드들을 사용하여)로 전송할 수 있으며 요청이 버스(106)에 특정적인 슬레이브 노드(104)에 대한 요청, 슬레이브 노드(104)에 대한 I2C 요청, 또는 슬레이브 노드(104)의 하나 이상의 I2C 포트들에서 슬레이브 노드(104)에 결합된 I2C-호환 가능 주변 디바이스(108)로 넘겨질 I2C 요청인지를 나타낼 수 있다.
업스트림 통신으로 돌아가면, 동기화 응답 프레임(197)은 각각의 업스트림 송신을 시작할 수 있다. 몇몇 실시예들에서, 동기화 응답 프레임(197)은 길이가 64비트들일 수 있지만, 임의의 다른 적절한 길이가 사용될 수 있다. 동기화 응답 프레임(197)은 또한 동기화 제어 프레임(180)의 프리앰블(182)을 참조하여 상기 논의된 바와 같이, 프리앰블, 이어서 데이터 부분을 포함할 수 있다. 다운스트림 송신의 끝에서, 버스(106) 상에서의 마지막 슬레이브 노드(104)는 RESPCYCS 카운터가 만료될 때까지 기다리며 그 후 동기화 응답 프레임(197)을 업스트림을 송신하기 시작할 수 있다. 업스트림 슬레이브 노드(104)가 정상 판독 또는 기록 트랜잭션에 의해 타겟팅되었다면, 슬레이브 노드(104)는 그 자신의 동기화 응답 프레임(197)을 생성하며 다운스트림으로부터 수신된 것을 대신할 수 있다. 임의의 슬레이브 노드(104)가 예상된 시간에서 다운스트림 슬레이브 노드(104)로부터 동기화 응답 프레임(197)을 보지 않는다면, 슬레이브 노드(104)는 그 자신의 동기화 응답 프레임(197)을 생성하고 그것을 업스트림으로 송신하기 시작할 것이다.
동기화 응답 프레임(197)의 데이터 부분은 응답 정보를 마스터 노드(102)로 다시 전달하기 위해 사용된 데이터를 포함하는 필드들을 포함할 수 있다. 이들 필드들의 예들은 이하에서 논의되며, 몇몇 실시예들은 도 6에서 예시된다. 특히, 도 6은 다양한 실시예들에 따라, 정상 모드, I2C 모드, 및 탐색 모드에서 동기화 응답 프레임(197)에 대한 예시적인 포맷들을 예시한다.
몇몇 실시예들에서, 동기화 응답 프레임(197)은 카운트(CNT) 필드를 포함할 수 있다. CNT 필드는 임이의 적절한 길이(예컨대, 2비트들)를 가질 수 있으며 이전에 수신된 동기화 제어 프레임(180)에서 CNT 필드의 값을 송신하기 위해 사용될 수 있다.
몇몇 실시예들에서, 동기화 응답 프레임(197)은 확인 응답(ACK) 필드를 포함할 수 있다. ACK 필드는 임의의 적절한 길이(예컨대, 2비트들)를 가질 수 있으며, 슬레이브 노드(104)가 동기화 응답 프레임(197)을 생성할 때 이전 동기화 제어 프레임(180)에서 수신된 명령을 확인응답하기 위해 슬레이브 노드(104)에 의해 삽입될 수 있다. ACK 필드에서 전달될 수 있는 예시적인 표시자들은 대기, 확인응답, 부정 확인응답(NACK), 및 재시도를 포함한다. 몇몇 실시예들에서, ACK 필드는 브로드캐스트 메시지를 수신하고 프로세싱한 슬레이브 노드(104)에 의해 확인응답을 송신하기 위해 사이징될 수 있다(예컨대, 마스터 노드(102)로 브로드캐스트 확인응답을 송신함으로써). 몇몇 이러한 실시예들에서, 슬레이브 노드(104)는 또한 슬레이브 노드(104)가 송신할 데이터(예를 들어, 키패드 또는 터치스크린으로부터의 비-TDM 입력들과 같은, 요구-기반 업스트림 송신들을 위해, 또는 슬레이브 노드(104)가 에러 또는 긴급 상태를 보고하고 싶어할 때와 같은, 우선화된 업스트림 송신을 위해 사용될 수 있는)를 갖고 있는지를 나타낼 수 있다.
몇몇 실시예들에서, 동기화 응답 프레임(197)은 I2C 필드를 포함할 수 있다. I2C 필드는 임의의 적절한 길이(예컨대, 1비트)를 가질 수 있으며 이전에 수신된 동기화 제어 프레임(180)에서 I2C 필드의 값을 송신하기 위해 사용될 수 있다.
몇몇 실시예들에서, 동기화 응답 프레임(197)은 노드 필드를 포함할 수 있다. 노드 필드는 임의의 적절한 길이(예컨대, 4비트들)를 가질 수 있으며 동기화 응답 프레임(197)을 생성하는 슬레이브 노드(104)의 ID를 송신하기 위해 사용될 수 있다.
몇몇 실시예들에서, 동기화 응답 프레임(197)은 데이터 필드를 포함할 수 있다. 데이터 필드는 임의의 적절한 길이(예컨대, 8비트들)를 가질 수 있으며, 그것의 값은 동기화 응답 프레임(197)을 생성하는 슬레이브 노드(104)의 ACK 응답 및 트랜잭션의 유형에 의존할 수 있다. 탐색 트랜잭션들을 위해, 데이터 필드는 이전에 수신된 동기화 제어 프레임(180)에서 RESPCYCS 필드의 값을 포함할 수 있다. ACK 필드가 NACK을 나타낼 때, 또는 동기화 응답 프레임(197)이 브로드캐스트 트랜잭션에 응답할 때, 데이터 필드는 브로드캐스트 확인응답(BA) 표시자(마지막 슬레이브 노드(104)는 브로드캐스트 기록이 에러 없이 수신되었는지를 나타낼 수 있다), 탐색 에러(DER) 표시자(탐색 트랜잭션에서 새롭게 탐색된 슬레이브 노드(104)가 기존의 슬레이브 노드(104)에 매칭되는지를 나타내는), 및 CRC 에러(CER) 표시자(NACK이 CRC 에러에 의해 야기되었는지를 나타내는)를 포함할 수 있다.
몇몇 실시예들에서, 동기화 응답 프레임(197)은 CRC 필드를 포함할 수 있다. CRC 필드는 임의의 적절한 길이(예컨대, 16비트들)를 가질 수 있으며 프리앰블과 CRC 필드 사이에서 동기화 응답 프레임(197)의 부분에 대한 CRC 값을 송신하기 위해 사용될 수 있다.
몇몇 실시예들에서, 동기화 응답 프레임(197)은 인터럽트 요청(IRQ) 필드를 포함할 수 있다. IRQ 필드는 임의의 적절한 길이(예컨대, 1비트)를 가질 수 있으며 인터럽트가 슬레이브 노드(104)로부터 시그널링되었음을 나타내기 위해 사용될 수 있다.
몇몇 실시예들에서, 동기화 응답 프레임(197)은 IRQ 노드(IRQNODE) 필드를 포함할 수 있다. IRQODE 필드는 임의의 적절한 길이(예컨대, 4비트들)를 가질 수 있으며 IRQ 필드에 의해 제공된 인터럽트를 시그널링한 슬레이브 노드(104)의 ID를 송신하기 위해 사용될 수 있다. 몇몇 실시예들에서, IRQ 필드를 생성하기 위한 슬레이브 노드(104)는 그 자신의 ID를 IRQNODE 필드로 삽입할 것이다.
몇몇 실시예들에서, 동기화 응답 프레임(197)은 제 2 CRC(CRC-4) 필드를 포함할 수 있다. CRC-4 필드는 임의의 적절한 길이(예컨대, 4비트들)를 가질 수 있으며 IRQ 및 IRQNODE 필드들에 대한 CRC 값을 송신하기 위해 사용될 수 있다.
몇몇 실시예들에서, 동기화 응답 프레임(197)은 IRQ 필드, IRQNODE 필드, 및 CRC-4 필드를 동기화 응답 프레임(197)의 마지막 비트들(예컨대, 마지막 10비트들)로서 포함할 수 있다. 상기 논의된 바와 같이, 이들 인터럽트-관련 필드들은 CRC-4의 형태로 그것들 자신의 CRC 보호를 가질 수 있다(및 그에 따라 이전 CRC 필드에 의해 보호되지 않는다). 마스터 노드(102)로 인터럽트를 시그널링할 필요가 있는 임의의 슬레이브 노드(104)는 이들 필드들로 인터럽트 정보를 삽입할 것이다. 몇몇 실시예들에서, 인터럽트 보류를 가진 슬레이브 노드(104)는 또한 추가 다운스트림으로 인터럽트 보류를 가진 임의의 슬레이브 노드(104)보다 높은 우선순위를 가질 수 있다. 버스(106)를 따르는 마지막 슬레이브 노드(104)(예컨대, 도 1에서 슬레이브 노드 2)는 항상 이들 인터럽트 필드들을 실장할 수 있다. 마지막 슬레이브 노드(104)가 어떤 인터럽트 보류도 갖지 않는다면, 마지막 슬레이브 노드(104)는 IRQ 비트를 0으로, IRQNODE 필드를 그것의 노드 ID로 설정하며, 정확한 CRC-R 값을 제공할 수 있다. 편리함을 위해, 인터럽트를 수송하는 동기화 응답 프레임(197)은 여기에서 "인터럽트 프레임"으로서 불리울 수 있다.
몇몇 실시예들에서, 프리앰블(182)과 CRC 필드 사이에서 동기화 응답 프레임(197)의 적어도 일 부분은 방출들을 감소시키기 위해 스크램블링될 수 있다. 몇몇 이러한 실시예들에서, 동기화 응답 프레임(197)의 CNT 필드는 스크램블링된 필드들이 하나의 슈퍼프레임에서 다음 것으로 상이하게 스크램블링됨을 보장하기 위해 스크램블링 로직에 의해 사용될 수 있다. 여기에서 설명된 시스템(100)의 다양한 실시예들은 스크램블링을 생략할 수 있다.
다른 기술들은, 상기 논의된 바와 같이 스크램블링 및/또는 에러 인코딩과 같은 기술들 외에 또는 그 대신에, 프리앰블(182)이 슬레이브 노드들(104)에 의해 고유하게 식별될 수 있음을 보장하기 위해 또는 프리앰블(182)이 동기화 응답 프레임(197)에서의 다른 곳에 나타나는 가능성을 감소시키기 위해 사용될 수 있다. 예를 들어, 보다 긴 동기화 시퀀스는 동기화 응답 프레임(180)의 나머지의 특정한 인코딩이 그것에 매칭될 가능성을 감소시키기 위해 사용될 수 있다. 부가적으로 또는 대안적으로, 동기화 응답 프레임의 나머지는, 적절한 비트들에서 고정된 "0" 또는 "1" 값들을 둠으로써와 같은, 동기화 시퀀스가 발생할 수 없도록 구조화될 수 있다.
도 7은 다양한 실시예들에 따른, 도 2의 버스 프로토콜 회로(126)의 블록도이다. 버스 프로토콜 회로(126)는 여기에서 설명된 버스(106)에 대한 프로토콜에 따라 노드 트랜시버(120)의 동작을 제어하기 위해 제어 회로(154)를 포함할 수 있다. 특히, 제어 회로(154)는 송신을 위한 동기화 프레임들(예컨대, 상기 논의된 바와 같이, 동기화 제어 프레임들 또는 동기화 응답 프레임들)의 생성, 수신된 동기화 프레임들의 프로세싱, 및 수신된 동기화 제어 프레임들에서 특정된 제어 동작들의 수행을 제어할 수 있다. 제어 회로(154)는 이하에서 논의된 바와 같이, 프로그램 가능한 레지스터들을 포함할 수 있다. 제어 회로(154)는 동기화 제어 프레임들을 생성하고 수신하고, 수신된 메시지들에 적절히 반응하며(예컨대, 버스 프로토콜 회로(126)가 슬레이브 노드(104)에 포함될 때 동기화 제어 프레임과 연관된 또는 버스 프로토콜 회로(126)가 마스터 노드(102)에 포함될 때 I2C 디바이스로부터), 프레이밍을 상이한 동작 모드들(예컨대, 정상, 탐색, 대기 등)로 조정한다.
노드 트랜시버(120)가 버스(106)를 따라 송신을 위한 데이터를 준비하고 있을 때, 프리앰블 회로(156)는 송신을 위한 동기화 프레임들에 대한 프리앰블들을 생성하며, 수신된 동기화 프레임들로부터 프리앰블들을 수신하도록 구성될 수 있다. 몇몇 실시예들에서, 다운스트림 동기화 제어 프레임 프리앰블은 1024 비트들마다 마스터 노드(102)에 의해 전송될 수 있다. 상기 논의된 바와 같이, 하나 이상의 슬레이브 노드들(104)은 다운스트림 동기화 제어 프레임 프리앰블에 동기화하며 프리앰블로부터 국소, 위상-동조 마스터 클록들을 생성할 수 있다.
CRC 삽입 회로(158)는 송신을 위한 동기화 프레임들에 대한 하나 이상의 CRC들을 생성하도록 구성될 수 있다. 프레임/압축 회로(160)는 I2S/TDM/PDM 트랜시버(127)(예컨대, 트랜시버(127)와 연관된 프레임 버퍼로부터) 및/또는 I2C 트랜시버(129)로부터 인입 데이터를 취하고, 선택적으로 데이터를 압축하며, 선택적으로 데이터에 대한 패리티 검사 비트들 또는 에러 정정 코드들(ECC)을 생성하도록 구성될 수 있다. 다중화기(MUX)(162)는 프리앰블 회로(156)로부터의 프리앰블, 동기화 프레임들, 및 데이터를 송신을 위한 스트림으로 다중화할 수 있다. 몇몇 실시예들에서, 송신 스트림은 송신 전에 스크램블링 회로(164)에 의해 스크램블링될 수 있다.
예를 들어, 몇몇 실시예들에서, 프레임/압축 회로(160)는 부동 소수점 압축 기법을 이용할 수 있다. 이러한 실시예에서, 제어 회로(154)는 수에서 부호 비트들이 얼마나 많이 반복되는지를 나타내기 위해 3비트들, 이어서 부호 비트 및 N-4비트들의 데이터를 송신할 수 있으며, 여기에서 N은 버스(106)를 통해 송신될 데이터의 크기이다. 데이터 압축의 사용은 요구될 때 마스터 노드(102)에 의해 구성될 수 있다.
몇몇 실시예들에서, 노드 트랜시버(120)에 들어가는 수신 스트림은 디스크램블링 회로(166)에 의해 디스크램블링될 수 있다. 역다중화기(DEMUX)(168)는 수신 스트림으로부터 프리앰블, 동기화 프레임들, 및 데이터를 역다중화할 수 있다. 수신 측 상에서 CRC 검사 회로(159)는 정확한 CRC에 대해 수신된 동기화 프레임들을 검사할 수 있다. CRC 검사 회로(159)가 인입한 동기화 제어 프레임(180)에서 CRC 실패를 식별할 때, 제어 회로(154)는 실패를 통지받을 수 있으며 동기화 제어 프레임(180)의 제어 데이터(184)에서 임의의 제어 명령들을 수행하지 않을 것이다. CRC 검사 회로(159)가 인입한 동기화 응답 프레임(197)에서 CRC 실패를 식별할 때, 제어 회로(154)는 실패를 통지받을 수 있으며 인터럽트 프레임에서 호스트(110)로의 송신을 위한 인터럽트를 생성할 수 있다. 디프레임/압축 해제 회로(170)는 수신 데이터를 수용하고, 선택적으로 그것의 패리티를 검사하고, 선택적으로 에러 검출 및 정정을 수행하고(예컨대, 단일 에러 정정 - 이중 에러 검출(SECDED)), 선택적으로 데이터를 압축 해제하며, 수신 데이터를 I2S/TDM/PDM 트랜시버(127)(예컨대, 트랜시버(127)와 연관된 프레임 버터) 및/또는 I2C 트랜시버(129)로 기록할 수 있다.
상기 논의된 바와 같이, 업스트림 및 다운스트림 데이터는 슈퍼프레임(190) 내에서의 TDM 데이터 슬롯들에서 버스(106)를 따라 송신될 수 있다. 제어 회로(154)는 버스(106) 상에서 이들 데이터 슬롯들을 관리하는데 전용되는 레지스터들을 포함할 수 있으며, 그것의 다수의 예들은 이하에서 논의된다. 제어 회로(154)가 마스터 노드(102)에 포함될 때, 이들 레지스터들에서의 값들은 호스트(110)에 의해 제어 회로(154)로 프로그램될 수 있다. 제어 회로(154)가 슬레이브 노드(104)에 포함될 때, 이들 레지스터들에서의 값들은 마스터 노드(102)에 의해 제어 회로(154)로 프로그램될 수 있다.
몇몇 실시예들에서, 제어 회로(154)는 다운스트림 슬롯(DNSLOTS) 레지스터를 포함할 수 있다. 노드 트랜시버(120)가 마스터 노드(102)에 포함될 때, 이러한 레지스터는 다운스트림 데이터 슬롯들의 총 수의 값을 유지할 수 있다. 이 레지스터는 또한 마스터 노드(102)에서 I2S/TDM/PDM 트랜시버(127)에 의해 수신된 조합된 I2S/TDM/PDM을 위해 사용될 데이터 슬롯들의 수를 정의할 수 있다. 슬레이브 노드(104)에서, 이 레지스터는 LDNSLOTS를 참조하여 이하에서 추가로 상세하게 논의되는 바와 같이, 국소적으로 생성된 다운스트림 슬롯들의 부가 전 또는 후에 다음 슬레이브 노드(104) 아래로 전달되는 데이터 슬롯들의 수를 정의할 수 있다.
몇몇 실시예들에서, 제어 회로(154)는 로컬 다운스트림 슬롯(LDNSLOTS) 레지스터를 포함할 수 있다. 이 레지스터는 마스터 노드(102)에서 사용되지 않을 수 있다. 슬레이브 노드(104)에서, 이 레지스터는 슬레이브 노드(104)가 사용하고 재송신하지 않을 데이터 슬롯들의 수를 정의할 수 있다. 대안적으로, 이 레지스터는 슬레이브 노드(104)가 다운스트림 버스 링크(106)에 기여할 수 있는 슬롯들의 수를 정의할 수 있다.
몇몇 실시예들에서, 제어 회로(154)는 업스트림 슬롯(UPSLOTS) 레지스터를 포함할 수 있다. 마스터 노드(102)에서, 이 레지스터는 업스트림 데이터 슬롯들의 총 수의 값을 유지할 수 있다. 이 레지스터는 마스터 노드(102)에서 I2S/TDM/PDM 트랜시버(127)에 의한 I2S/TDM 송신을 위해 사용될 슬롯들의 수를 정의할 수 있다. 슬레이브 노드(104)에서, 이 레지스터는 슬레이브 노드(104)가 그 자신의 데이터를 부가하기 시작하기 전에 업스트림으로 전달되는 데이터 슬롯들의 수를 정의할 수 있다.
몇몇 실시예들에서, 제어 회로(154)는 로컬 업스트림 슬롯(LUPSLOTS) 레지스터를 포함할 수 있다. 이 레지스터는 마스터 노드(102)에서 사용되지 않을 수 있다. 슬레이브 노드(104)에서, 이 레지스터는 슬레이브 노드(104)가 그것이 업스트림으로 전송되기 전에 다운스트림으로부터 수신된 데이터에 부가할 데이터 슬롯들의 수를 정의할 수 있다. 이 레지스터는 슬레이브 노드(104)에서 I2S/TDM/PDM 트랜시버(127)에 의한 조합된 I2S/TDM/PDM 수신을 위해 사용될 데이터 슬롯들의 수를 정의할 수 있다.
몇몇 실시예들에서, 제어 회로(154)는 브로드캐스트 다운스트림 슬롯(BCDNSLOTS) 레지스터를 포함할 수 있다. 이 레지스터는 마스터 노드(102)에서 사용되지 않을 수 있다. 슬레이브 노드(104)에서, 이 레지스터는 브로드캐스트 데이터 슬롯들의 수를 정의할 수 있다. 몇몇 실시예들에서, 브로드캐스트 데이터 슬롯들은 항상 데이터 필드의 처음에 올 수 있다. 브로드캐스트 데이터 슬롯들에서의 데이터는 다수의 슬레이브 노드들(104)에 의해 사용될 수 있으며 그것들이 사용되는지 여부에 관계없이 모든 슬레이브 노드들(104)에 의해 다운스트림으로 전달될 수 있다.
몇몇 실시예들에서, 제어 회로(154)는 슬롯 포맷(SLOTFMT) 레지스터를 포함할 수 있다. 이 레지스터는 업스트림 및 다운스트림 송신들을 위한 데이터의 포맷을 정의할 수 있다. I2S/TDM/PDM 트랜시버(127)를 위한 데이터 크기가 또한 이 레지스터에 의해 결정될 수 있다. 몇몇 실시예들에서, 유효한 데이터 크기들은 8, 12, 16, 20, 24, 28, 및 32비트들을 포함한다. 이 레지스터는 또한 다운스트림 및 업스트림 트래픽을 위한 부동 소수점 압축을 가능하게 하기 위한 비트들을 포함할 수 있다. 부동 소수점 압축이 가능해질 때, I2S/TDM 데이터 크기는 버스(106)를 통한 데이터 크기보다 4비트 더 클 수 있다. 시스템(100)에서의 모든 노드들은 데이터 슬롯들이 가능해질 때 SLOTFMT를 위한 동일한 값들을 가질 수 있으며, 노드들은 모든 노드들이 동일한 값으로 업데이트되도록 브로드캐스트 기록에 의해 프로그램될 수 있다.
도 8 내지 도 11은 여기에서 설명된 버스 프로토콜들의 다양한 실시예들에 따른, 버스(106)를 따르는 정보 교환의 예들을 예시한다. 특히, 도 8 내지 도 11은 각각의 슬레이브 노드(104)가 주변 디바이스(108)로서 하나 이상의 스피커들 및/또는 하나 이상의 마이크로폰들에 결합되는 실시예들을 예시한다. 이것은, 주변 디바이스(108)의 임의의 원하는 배열이 여기에서 설명된 기술들에 따라 임의의 특정한 슬레이브 노드(104)에 결합될 수 있으므로, 단순히 예시적이다.
시작을 위해, 도 8은 다양한 실시예들에 따른, 버스(106) 상에서 양-방향 통신을 위한 시그널링 및 타이밍 고려사항들을 예시한다. 도 8에 묘사된 슬레이브 노드들(104)은 다양한 수들의 센서/작동기 요소들을 가지며, 따라서 상이한 양들의 데이터가 다양한 슬레이브 노드들(104)로 전송되거나, 또는 그로부터 수신될 수 있다. 구체적으로, 슬레이브 노드 1은 2개의 요소들을 갖고, 슬레이브 노드 4는 4개의 요소들을 가지며, 슬레이브 노드 5는 3개의 요소들을 갖고, 따라서 마스터 노드(102)에 의해 송신된 데이터는 슬레이브 노드 1에 대해 2개의 시간 슬롯들, 슬레이브 노드 4에 대해 4개의 시간 슬롯들, 및 슬레이브 노드 5에 대해 3개의 시간 슬롯들을 포함한다. 유사하게, 슬레이브 노드 0은 3개의 요소들을 갖고, 슬레이브 노드 2는 3개의 요소들을 갖고, 슬레이브 노드 3은 3개의 요소들을 갖고, 슬레이브 6은 1개의 요소를 가지며, 슬레이브 노드 7은 4개의 요소들을 갖고, 따라서 이들 슬레이브 노드들(104)에 의해 업스트림으로 송신된 데이터는 대응하는 수의 시간 슬롯들을 포함한다. 요소들과 시간 슬롯들 사이에서 1-대-1 상관일 필요는 없다는 것이 주의되어야 한다. 예를 들어, 3개의 마이크로폰들을 가진, 주변 디바이스(108)에 포함된, 마이크로폰 어레이는, 프로세싱의 유형에 의존하여, 단일 시간 슬롯 또는 다수의 시간 슬롯들에 대응할 수 있는, 단일 데이터 샘플을 생성하기 위해 3개의 마이크로폰들로부터의 신호들(및 가능하게는 또한 마스터 노드(102)로부터 또는 다른 슬레이브 노드들(104)로부터 수신된 정보)을 조합하는 DSP를 포함할 수 있다.
도 8에서, 마스터 노드(102)는 특정 슬레이브 노드들(104)에 결합된 스피커들에 대한 데이터(SD)에 앞서 동기화 제어 프레임(SCF)을 송신한다. 각각의 연속적인 슬레이브 노드(104)는 SCF를 포워딩하며 또한 다운스트림 슬레이브 노드들(104)을 향한 적어도 임의의 데이터를 포워딩한다. 특정한 슬레이브 노드(104)는 모든 데이터를 포워딩할 수 있거나 또는 상기 슬레이브 노드(104)를 향한 데이터를 제거할 수 있다. 마지막 슬레이브 노드(104)가 SCF를 수신할 때, 상기 슬레이브 노드(104)는 선택적으로 슬레이브 노드(104)가 송신하도록 허용되는 임의의 데이터에 앞서 동기화 응답 프레임(SRF)을 송신한다. 각각의 연속적인 슬레이브 노드(104)는 다운스트림 슬레이브 노드들(104)로부터의 임의의 데이터와 함께 SRF를 포워딩하며 선택적으로 특정한 슬레이브 노드들(104)에 결합된 하나 이상의 마이크로폰들로부터의 데이터(MD)를 삽입한다. 도 8의 예에서, 마스터 노드(102)는 데이터를 슬레이브 노드들 1, 4, 및 5(활성 스피커들로서 도 8에 묘사됨)로 전송하며 슬레이브 노드들 7, 6, 3, 2, 및 0(마이크로폰 어레이들로서 도 8에 묘사됨)으로부터 데이터를 수신한다.
도 9는 다양한 실시예들에 따라, 다운스트림 DS 트랜시버(124)의 관점으로부터, 다운스트림 송신으로부터의 데이터의 동적 제거 및 업스트림 송신으로의 데이터의 삽입을 개략적으로 예시한다. 도 8에서처럼, 도 9에서, 마스터 노드(102)는 역순으로 슬레이브 노드들 1, 4, 및 5에 대한 데이터(SD)에 앞서 SCF를 송신한다(예컨대, 슬레이브 노드 5에 대한 데이터는 슬레이브 노드 4에 대한 데이터로 이어지고, 이것은 슬레이브 노드 1에 대한 데이터로 이어진다)(MASTER로 라벨링된 로우 참조). 슬레이브 노드 1이 이러한 송신을 수신할 때, 슬레이브 노드 1은 그 자신의 데이터를 제거하며 슬레이브 노드들 5 및 4에 대한 데이터에 앞서 단지 SCF만을 슬레이브 노드 2로 포워딩한다. 슬레이브 노드들 2 및 3은 변경되지 않은 데이터를 포워딩하며(SLAVE 2로 라벨링된 로우 참조), 따라서 슬레이브 노드 1에 의해 포워딩된 데이터는 슬레이브 노드 4에 의해 수신된다(SLAVE 3으로 라벨링된 로우 참조). 슬레이브 노드 4는 그 자신의 데이터를 제거하며 슬레이브 노드 5에 대한 데이터에 앞서 SCF만을 슬레이브 노드 5로 포워딩하고, 유사하게, 슬레이브 노드 5는 그 자신의 데이터를 제거하며 단지 SCF만을 슬레이브 노드 6으로 포워딩한다. 슬레이브 노드 6은 SCF를 슬레이브 노드 7로 포워딩한다(SLAVE 6으로 라벨링된 로우 참조).
이때, 슬레이브 노드 7은 그것의 데이터에 앞서 SRF를 슬레이브 노드 6으로 송신한다(SLAVE 6으로 라벨링된 로우 참조). 슬레이브 노드 6은 슬레이브 노드 7로부터의 데이터 및 그 자신의 데이터와 함께 SRF를 슬레이브 노드 5로 포워딩하며, 슬레이브 노드 5는 결국 슬레이브 노드 7 및 6으로부터의 데이터와 함께 SRF를 슬레이브 노드 4로 포워딩한다. 슬레이브 노드 4는 부가할 데이터가 없으며, 따라서 그것은 간단히 데이터를 슬레이브 노드 3으로 포워딩하고(SLAVE 3으로 라벨링된 로우 참조), 이것은 그 자신의 데이터와 함께 데이터를 슬레이브 노드 2로 포워딩하며(SLAVE 2로 라벨링된 로우 참조), 이것은 결국 그 자신의 데이터와 함께 데이터를 슬레이브 노드 1로 포워딩한다. 슬레이브 노드 1은 부가할 데이터가 없으며, 따라서 그것은 데이터를 슬레이브 노드 0으로 포워딩하고, 이것은 그 자신의 데이터와 함께 데이터를 포워딩한다. 그 결과, 마스터 노드(102)는 슬레이브 노드들 7, 6, 3, 2, 및 0으로부터의 데이터에 앞서 SRF를 수신한다(MASTER로 라벨링된 로우 참조).
도 10은 도 9에서처럼, 다운스트림 DS 트랜시버(124)의 관점으로부터, 다운스트림 송신으로부터의 데이터의 동적 제거 및 업스트림 송신으로의 데이터의 삽입의 또 다른 예를 예시하지만, 도 10에서, 슬레이브 노드들(104)은 마스터 노드(102)가 슬레이브 노드들(104) 모두로 다운스트림으로 데이터를 전송하고 슬레이브 노드들(104) 모두로부터 다시 데이터를 수신하도록 주변 디바이스(108)로서 센서들 및 작동기들 모두와 결합된다. 또한, 도 10에서, 데이터는 그것이 향하거나 또는 그로부터 비롯된 노드 어드레스에 기초하여 순서화된다. "Y"로 라벨링된 데이터 슬롯은 데이터 무결성 검사 또는 데이터 정정을 위해 사용될 수 있다.
도 11은 도 9에서처럼, 다운스트림 DS 트랜시버(124)의 관점으로부터, 다운스트림 송신으로부터의 데이터의 동적 제거 및 업스트림 송신으로의 데이터의 삽입의 또 다른 예를 예시하지만, 도 11에서, 데이터는 역순보다는 순차적인 순서로 다운스트림으로 및 업스트림으로 수송된다. 각각의 슬레이브 노드(104)에서의 버퍼링은 데이터를 선택적으로 부가하고, 제거하며, 및/또는 포워딩하는 것을 허용한다.
상기 논의된 바와 같이, 각각의 슬레이브 노드(104)는 다운스트림 또는 업스트림 송신들로부터 데이터를 제거할 수 있으며 및/또는 다운스트림 또는 업스트림 송신들에 데이터를 부가할 수 있다. 따라서, 예를 들어, 마스터 노드(102)는 다수의 슬레이브 노드들(104)의 각각에 데이터의 별개의 샘플을 송신할 수 있으며, 각각의 이러한 슬레이브 노드(104)는 그것의 데이터 샘플을 제거하며 다운스트림 슬레이브들을 위해 의도된 데이터만을 포워딩할 수 있다. 다른 한편으로, 슬레이브 노드(104)는 다운스트림 슬레이브 노드(104)로부터 데이터를 수신하며 부가적인 데이터와 함께 데이터를 포워딩할 수 있다. 요구된 만큼 적은 정보를 송신하는 하나의 이점은 시스템(100)에 의해 총괄하여 소비된 전력의 양을 감소시키는 것이다.
시스템(100)은 또한 구체적으로, 슬레이브 노드들(104)의 다운스트림 슬롯 사용의 구성을 통해, 마스터 노드(102)로부터 슬레이브 노드(104)로 브로드캐스트 송신들(및 멀티캐스트 송신들)을 지원할 수 있다. 각각의 슬레이브 노드(104)는 브로드캐스트 송신을 프로세싱하며 그것을 다음 슬레이브 노드(104)로 넘길 수 있지만, 특정한 슬레이브 노드(104)는 브로드캐스트 메시지를 "소비"할 수 있다(즉, 브로드캐스트 송신을 다음 슬레이브 노드(104)로 넘기지 않는다).
시스템(100)은 또한 업스트림 송신들(예컨대, 특정한 슬레이브 노드(104)로부터 하나 이상의 다른 슬레이브 노드들(104)로)을 지원할 수 있다. 이러한 업스트림 송신들은 유니캐스트, 멀티캐스트, 및/또는 브로드캐스트 업스트림 송신들을 포함할 수 있다. 업스트림 어드레싱을 갖고, 다운스트림 송신들을 참조하여 상기 논의된 바와 같이, 슬레이브 노드(104)는 슬레이브 노드들(104)의 업스트림 슬롯 사용의 구성에 기초하여 업스트림 송신으로부터의 데이터를 제거할지 여부 및/또는 다음 업스트림 슬레이브 노드(104)로 업스트림 송신을 넘길지 여부를 결정할 수 있다. 따라서, 예를 들어, 데이터는 마스터 노드(102)로 데이터를 전달하는 것 외에, 또는 그 대신에, 특정한 슬레이브 노드(104)로부터 하나 이상의 슬레이브 노드들(104)로 전달될 수 있다. 이러한 슬레이브-슬레이브 관계들은, 예를 들면, 마스터 노드(102)를 통해 구성될 수 있다.
따라서, 다양한 실시예들에서, 슬레이브 노드들(104)은 선택적으로 정보를 포워딩하고, 드롭하며, 부가하기 위한 능력을 갖고, 활성/지능형 리피터 노드들로서 동작할 수 있다. 슬레이브 노드들(104)은 일반적으로, 각각의 슬레이브 노드(104)가 그것이 데이터를 수신/송신할 적절한 시간 슬롯(들)을 알고 있으므로, 데이터의 모두를 반드시 디코딩/조사하지 않고 이러한 기능들을 수행할 수 있으며, 그러므로 시간 슬롯으로부터 데이터를 제거하거나 또는 그것으로 데이터를 부가할 수 있다. 슬레이브 노드들(104)이 모든 데이터를 디코딩/조사할 필요가 없음에도 불구하고, 슬레이브 노드들(104)은 통상적으로 그것이 송신/포워딩하는 데이터를 재-클로킹할 수 있다. 이것은 시스템(100)의 강건성을 개선할 수 있다.
몇몇 실시예들에서, 버스(106)는 링 토폴로지에서 단방향 통신들을 위해 구성될 수 있다. 예를 들어, 도 12는 다양한 실시예들에 따라, 링 토폴로지에서 마스터 노드(102) 및 4개의 슬레이브 노드들(104)의 배열(1200)을 예시하며, 배열(1200)에서 단방향 통신을 위한 시그널링 및 타이밍 고려사항들을 예시한다. 이러한 실시예들에서, 노드들에서의 노드 트랜시버들(120)은 업스트림 및 다운스트림 통신을 위해 두 개의 양-방향 트랜시버들보다는, 수신-전용 트랜시버(MASTER IN) 및 송신-전용 트랜시버(MASTER OUT)를 포함할 수 있다. 도 12에 예시된 링크-계층 동기화 기법에서, 마스터 노드(102)는 선택적으로 다양한 슬레이브 노드들(104)에 결합된 3개의 스피커들에 대한 "다운스트림" 데이터(1202)(도 8 내지 도 11을 참조하여 상기 논의된 바와 같이, 상이한 스피커들에 대한 데이터는 임의의 적절한 순서로 배열될 수 있다)에 앞서, SCF(180)를 송신하며, 각각의 연속적인 슬레이브 노드(104)는 "업스트림" 데이터(1204)(예컨대, 도 8 내지 도 11을 참조하여 상기 논의된 바와 같이, 8개의 상이한 마이크로폰들로부터의 데이터가 임의의 적절한 순서로 배열될 수 있다)를 제공하기 위해 이전 슬레이브 노드들(104)로부터의 임의의 "업스트림" 데이터 및 그 자신의 "업스트림" 데이터와 함께 동기화 제어 프레임(180)을 포워딩한다.
여기에서 설명된 바와 같이, 데이터는 다수의 방식들 중 임의의 것으로 시스템(100)의 요소들 사이에서 전달될 수 있다. 몇몇 실시예들에서, 데이터는 슬레이브 노드(104)에 의해 업스트림으로 또는 슬레이브 노드(104) 또는 마스터 노드(102)에 의해 다운스트림으로(예컨대, 데이터 슬롯들(198)을 사용하여) 동기 데이터 슬롯들의 세트의 부분으로서 전송될 수 있다. 이러한 데이터의 볼륨은 데이터 슬롯에서 비트들의 수를 변경하거나, 또는 추가 데이터 슬롯들을 포함함으로써 조정될 수 있다. 데이터는 또한 동기화 제어 프레임(180) 또는 동기화 응답 프레임(197)에서의 포함에 의해 시스템(100)에서 전달될 수 있다. 이러한 방식으로 전달된 데이터는 호스트(110)로부터의 I2C 제어 데이터(슬레이브 노드(104)와 연관된 주변 디바이스(108)로부터의 응답으로); 호스트(110)/마스터 노드(102)로부터 슬레이브 노드(104)로의 기록 액세스 및 슬레이브 노드(104)로부터 호스트(110)/마스터 노드(102)로의 판독 액세스를 포함할 수 있는 슬레이브 노드들(104)의 레지스터들로의 액세스들(예컨대, 슬롯들 및 인터페이스들의 탐색 및 구성을 위한); 및 주변 디바이스(108)로부터 호스트(110)로의 인터럽트들을 통한 이벤트 시그널링을 포함할 수 있다. 몇몇 실시예들에서, GPIO 핀들은 슬레이브 노드(104)로부터 마스터 노드(102)로 정보를 수송하기 위해 사용될 수 있다(예컨대, I2C를 통해 마스터 노드(102)가 GPIO 핀들을 폴링함으로써, 또는 슬레이브 노드(104)의 노드 트랜시버(120)가 인터럽트 요청 핀에서 인터럽트를 생성함으로써). 예를 들어, 몇몇 이러한 실시예들에서, 호스트(110)는 I2C를 통해 마스터 노드(102)로 정보를 전송할 수 있으며, 그 후 마스터 노드(102)는 상기 정보를 GPIO 핀들을 통해 슬레이브로 전송할 수 있다. 버스(106)를 통해 송신된 것으로서 여기에서 논의된 데이터의 유형들 중 임의의 것은 이들 통신 경로들 중 임의의 하나 이상을 사용하여 송신될 수 있다. 시스템(100) 내에서 다른 유형들의 데이터 및 데이터 통신 기술들이 여기에서 개시될 수 있다.
본 개시의 실시예들은 원하는 대로 구성하기 위해 임의의 적절한 하드웨어 및/또는 소프트웨어를 사용하여 시스템으로 구현될 수 있다. 도 13은 다양한 실시예들에 따라, 호스트 또는 노드(예컨대, 호스트(110), 마스터 노드(102), 또는 슬레이브 노드(104))로서 작용할 수 있는 디바이스(1300)를 개략적으로 예시한다. 다수의 구성요소들은 디바이스(1300)에 포함되는 것으로 도 13에서 예시되지만, 이들 구성요소들 중 임의의 하나 이상은, 애플리케이션에 적절한 대로, 생략되거나 또는 중복될 수 있다.
부가적으로, 다양한 실시예들에서, 디바이스(1300)는 도 13에 예시된 구성요소들 중 하나 이상을 포함하지 않을 수 있으며, 디바이스(1300)는 하나 이상의 구성요소들로의 결합을 위해 인터페이스 회로를 포함할 수 있다. 예를 들어, 디바이스(1300)는 디스플레이 디바이스(1306)를 포함하지 않을 수 있으며, 디스플레이 디바이스(1306)가 결합될 수 있는 디스플레이 디바이스 인터페이스 회로(예컨대, 커넥터 및 드라이버 회로)를 포함할 수 있다. 또 다른 세트의 예들에서, 디바이스(1300)는 오디오 입력 디바이스(1324) 또는 오디오 출력 디바이스(1308)를 포함하지 않을 수 있으며, 오디오 입력 디바이스(1324) 또는 오디오 출력 디바이스(1308)가 결합될 수 있는 오디오 입력 또는 출력 디바이스 인터페이스 회로(예컨대, 커넥터들 및 지원 회로)를 포함할 수 있다.
디바이스(1300)는 디바이스(1300)가 버스(106)에 결합될 때 버스(106)를 따르는 통신을 관리하기 위해, 여기에서 개시된 실시예들 중 임의의 것에 따른, 노드 트랜시버(120)를 포함할 수 있다. 디바이스(1300)는 프로세싱 디바이스(1302)(예컨대, 하나 이상의 프로세싱 디바이스들)를 포함할 수 있으며, 이것은 노드 트랜시버(120)에 포함되거나 또는 노드 트랜시버(120)로부터 분리될 수 있다. 여기에서 사용된 바와 같이, 용어("프로세싱 디바이스")는 전자 데이터를 레지스터들 및/또는 메모리에 저장될 수 있는 다른 전자 데이터로 변환하기 위해 레지스터들 및/또는 메모리로부터의 상기 전자 데이터를 프로세싱하는 임의의 디바이스 또는 디바이스의 부분을 나타낼 수 있다. 프로세싱 디바이스(1302)는 하나 이상의 DSP들, ASIC들, 중앙 프로세싱 유닛들(CPU들), 그래픽 프로세싱 유닛들(GPU들), 암호 프로세서들(cryptoprocessors), 또는 임의의 다른 적절한 프로세싱 디바이스들을 포함할 수 있다. 디바이스(1300)는 메모리(1304)를 포함할 수 있으며, 이것은 자체가 휘발성 메모리(예컨대, 동적 랜덤 액세스 메모리(DRAM)), 비-휘발성 메모리(예컨대, 판독-전용 메모리(ROM)), 플래시 메모리, 고체 상태 메모리, 및/또는 하드 드라이브와 같은 하나 이상의 메모리 디바이스들을 포함할 수 있다.
몇몇 실시예들에서, 메모리(1304)는 디바이스(1300)로 하여금 여기에서 개시된 기술들 중 임의의 적절한 것들을 수행하게 하도록 프로그래밍 지시들의 작업 사본 및 영구 사본을 저장하기 위해 이용될 수 있다. 몇몇 실시예들에서, 상기 설명된 기술들을 수행하기 위한 기계-액세스 가능한 미디어(비-일시적 컴퓨터-판독 가능한 저장 미디어를 포함한), 방법들, 시스템들, 및 디바이스들은 2-와이어 버스를 통한 통신을 위해 여기에서 개시된 실시예들의 예시적인 예들이다. 예를 들어, 컴퓨터-판독 가능한 미디어(예컨대, 메모리(1304))는, 프로세싱 디바이스(1302)에 포함된 프로세싱 디바이스들 중 하나 이상에 의해 실행될 때, 디바이스(1300)로 하여금 여기에 개시된 기술들 중 임의의 것을 수행하게 하는 지시들을 저장할 수 있다.
몇몇 실시예들에서, 디바이스(1300)는 또 다른 통신 칩(1312)(예컨대, 하나 이상의 다른 통신 칩들)을 포함할 수 있다. 예를 들어, 통신 칩(1312)은 디바이스(1300)로 및 그로부터의 데이터의 전달을 위한 무선 통신들을 관리하기 위해 구성될 수 있다. 용어("무선") 및 그것의 파생어들은 비-고체 매체를 통해 변조된 전자기 복사의 사용을 통해 데이터를 전달할 수 있는, 회로들, 디바이스들, 시스템들, 방법들, 기술들, 통신 채널들 등을 설명하기 위해 사용될 수 있다. 용어는 연관된 디바이스들이 임의의 와이어들을 포함하지 않는다는 것을 의미하지 않지만, 몇몇 실시예들에서, 그것은 아닐 수 있다.
통신 칩(1312)은 이에 제한되지 않지만 Wi-Fi(전기 전자 학회(IEEE) 802.11 군), IEEE 802.16 표준들(예컨대, IEEE 802.16-2005 보정), 임의의 보정들, 업데이트들, 및/또는 개정들(예컨대, 개선된 LTE 프로젝트, 초 이동 광대역(UMB) 프로젝트(또한 "3GPP2"로 불리우는) 등)과 함께 장기 진화(LTE) 프로젝트를 포함한, 다수의 무선 표준들 또는 프로토콜들 중 임의의 것을 구현할 수 있다. IEEE 802.16 호환 가능한 광대역 무선 액세스(BWA) 네트워크들은 일반적으로, IEEE 802.16 표준들에 대한 적합성 및 상호 운용성 테스트들을 통과한 제품들에 대한 인증 마크인, 마이크로파 액세스를 위한 월드와이드 상호 운용성을 나타내는 두문자어인, WiMAX 네트워크들로 불리운다. 하나 이상의 통신 칩들(1312)은 이동 통신을 위한 전역적 시스템(GSM), 일반 패킷 라디오 서비스(GPRS), 범용 이동 전기통신 시스템(UMTS), 고속 패킷 액세스(HSPA), 진화된 HSPA(E-HSPA), 또는 LTE 네트워크에 따라 동작할 수 있다. 하나 이상의 통신 칩들(1312)은 GSM 진화를 위한 강화된 데이터(EDGE), GSM EDGE 라디오 액세스 네트워크(GERAN), 범용 지상파 라디오 액세스 네트워크(UTRAN), 또는 진화된 UTRAN(E-UTRAN)에 따라 동작할 수 있다. 하나 이상의 통신 칩들(1312)은 코드 분할 다중 액세스(CDMA), 시간 분할 다중 액세스(TDMA), 디지털 강화된 무코드 전기통신(DECT), 진화-데이터 최적화(EV-DO), 및 그것의 파생물들, 뿐만 아니라 3G, 4G, 5G 이상으로서 지정되는 임의의 다른 무선 프로토콜들에 따라 동작할 수 있다. 통신 칩(1312)은 다른 실시예들에서 다른 무선 프로토콜들에 따라 동작할 수 있다. 디바이스(1300)는 무선 통신들을 가능하게 하기 위해 및/또는 다른 무선 통신들(AM 또는 FM 라디오 송신들과 같은)을 수신하기 위해 안테나(1322)를 포함할 수 있다.
몇몇 실시예들에서, 통신 칩(1312)은 여기에서 설명된 버스(106)를 위한 프로토콜이 아닌 프로토콜을 사용하여 유선 통신들을 관리할 수 있다. 유선 통신들은 전기적, 광학적, 또는 임의의 다른 적절한 통신 프로토콜들을 포함할 수 있다. 통신 칩(1312)에 의해 가능해질 수 있는 유선 통신 프로토콜들의 예들은 이더넷, 제어기 영역 네트워크(CAN), I2C, 미디어 지향 시스템 수송(MOST), 또는 임의의 다른 적절한 유선 통신 프로토콜을 포함한다.
상기 주지된 바와 같이, 통신 칩(1312)은 다수의 통신 칩들을 포함할 수 있다. 예를 들면, 제 1 통신 칩(1312)은 Wi-Fi 또는 블루투스와 같은 단거리 무선 통신들에 전용될 수 있으며, 제 2 통신 칩(1312)은 전역적 위치결정 시스템(GPS), EDGE, GPRS, CDMA, WiMAX, LTE, EV-DO, 또는 기타와 같은 장거리 무선 통신들에 전용될 수 있다. 몇몇 실시예들에서, 제 1 통신 칩(1312)은 무선 통신들에 전용될 수 있으며, 제 2 통신 칩(1312)은 유선 통신들에 전용될 수 있다.
디바이스(1300)는 배터리/전력 회로(1314)를 포함할 수 있다. 배터리/전력 회로(1314)는 하나 이상의 에너지 저장 디바이스들(예컨대, 배터리들 또는 커패시터들) 및/또는 디바이스(1300)로부터 분리된 에너지 소스(예컨대, AC 라인 전력, 자동차 배터리에 의해 제공된 전압 등)에 디바이스(1300)의 구성요소들을 결합하기 위한 회로를 포함할 수 있다. 예를 들어, 배터리/전력 회로(1314)는 도 2를 참조하여 상기 논의된 업스트림 버스 인터페이스 회로(132) 및 다운스트림 버스 인터페이스 회로(131)를 포함할 수 있으며 버스(106) 상에서 바이어스에 의해 하전될 수 있다.
디바이스(1300)는 디스플레이 디바이스(1306)(또는 상기 논의된 바와 같이, 대응하는 인터페이스 회로)를 포함할 수 있다. 디스플레이 디바이스(1306)는 예를 들어, 헤드-업 디스플레이, 컴퓨터 모니터, 프로젝터, 터치스크린 디스플레이, 액정 디스플레이(LCD), 발광 다이오드 디스플레이, 또는 평판 디스플레이와 같은, 임의의 시각적 표시자들을 포함할 수 있다.
디바이스(1300)는 오디오 출력 디바이스(1308)(또는 상기 논의된 바와 같이, 대응하는 인터페이스 회로)를 포함할 수 있다. 오디오 출력 디바이스(1308)는 예를 들어, 스피커들, 헤드셋들, 또는 이어버드들과 같은, 가청 표시자를 생성하는 임의의 디바이스를 포함할 수 있다.
디바이스(1300)는 오디오 입력 디바이스(1324)(또는 상기 논의된 바와 같이, 대응하는 인터페이스 회로)를 포함할 수 있다. 오디오 입력 디바이스(1324)는 마이크로폰들, 마이크로폰 어레이들, 또는 디지털 기기들(예컨대, 악기 디지털 인터페이스(MIDI) 출력을 가진 기기들)과 같은, 사운드를 나타내는 신호를 생성하는 임의의 디바이스를 포함할 수 있다.
디바이스(1300)는 GPS 디바이스(1318)(또는, 상기 논의된 바와 같이, 대응하는 인터페이스 회로)를 포함할 수 있다. GPS 디바이스(1318)는 이 기술분야에 알려진 바와 같이, 위성-기반 시스템과 통신할 수 있으며 디바이스(1300)의 위치를 수신할 수 있다.
디바이스(1300)는 또 다른 출력 디바이스(1310)(또는 상기 논의된 바와 같이, 대응하는 인터페이스 회로)를 포함할 수 있다. 다른 출력 디바이스(1310)의 오디오 코덱, 비디오 코덱, 프린터, 정보를 다른 디바이스들로 제공하기 위한 유선 또는 무선 송신기, 또는 부가적인 저장 디바이스를 포함할 수 있다. 부가적으로, 여기에서 논의된 주변 디바이스들(108) 중 임의의 적절한 것들이 다른 출력 디바이스(1310)에 포함될 수 있다.
디바이스(1300)는 또 다른 입력 디바이스(1320)(또는 상기 논의된 바와 같이, 대응하는 인터페이스 회로)를 포함할 수 있다. 다른 입력 디바이스(1320)의 예들은 가속도계, 자이로스코프, 이미지 캡처 디바이스, 키보드, 마우스, 스타일러스, 터치패드, 바코드 판독기, 빠른 응답(QR) 코드 판독기, 또는 라디오 주파수 식별(RFID) 판독기와 같은 커서 제어 디바이스를 포함할 수 있다. 부가적으로, 여기에서 논의된 센서들 또는 주변 디바이스들(108) 중 임의의 적절한 것들이 다른 입력 디바이스(1320)에 포함될 수 있다.
디바이스(1300)를 참조하여 상기 설명된 디스플레이, 입력, 출력, 통신, 또는 메모리 디바이스들 중 임의의 적절한 것들은 시스템(100)에서 주변 디바이스(108)로서 작용할 수 있다. 대안적으로 또는 부가적으로, 디바이스(1300)를 참조하여 상기 설명된 디스플레이, 입력, 출력, 통신, 또는 메모리 디바이스들 중 적절한 것들은 호스트(예컨대, 호스트(110)) 또는 노드(예컨대, 마스터 노드(102) 또는 슬레이브 노드(104))에 포함될 수 있다.
상기 주지된 바와 같이, 몇몇 실시예들에서, 시스템(100)은 마스터 노드(102)가 버스(106)(예컨대, 단일의, 차동 쌍의 와이어들을 포함할 수 있는)를 사용하여 시스템(100)을 구성하고 유지하는 단일 마스터-다중 슬레이브 시스템일 수 있다. 디지털 동기 데이터(예컨대, 오디오 데이터), 제어 정보, 및/또는 전력은 이러한 버스(106)를 통해 송신될 수 있다. 시스템(100)은 또한 노드들 사이에서 다중-채널, I2S/TDM 링크를 제공할 수 있다. 그러나, 시스템(100)이 단일 마스터 노드(102)를 포함할 때, 시스템(100)의 동작은 마스터 노드(102)가 작동하지 않게 되거나(예컨대, 호스트 디바이스(110)가 고장나거나 또는 마스터 노드(102)의 트랜시버(120)가 고장날 때) 또는 시스템(100)의 나머지로부터 연결 해제된다면(예컨대, 마스터 노드(102)와 슬레이브 노드들(104) 간 버스(106)에서의 중단에 의해) 실패할 위험이 있을 수 있다. 여기에서 사용된 바와 같이, 구절("마스터 노드(102)가 연결 해제된다")는 마스터 노드(102)가 더 이상 시스템(100)의 동작들을 제어할 수 없는 임의의 방식(예컨대, 마스터 노드(102)가 작동하지 않을 때, 마스터 노드(102) 및 시스템(100)의 몇몇 다른 부분 사이에서의 버스(106)가 작동하지 않을 때 등)을 나타내기 위해 사용될 수 있다.
마스터 노드(102)가 시스템(100)을 제어할 수 없는 경우에 슬레이브 노드들(104) 중 하나 이상이 보조 마스터 노드들로서 동작하는 배열들 및 기술들이 여기에서 개시된다. 이러한 "이중 기능" 슬레이브 노드(104)는 여기에서 "보조 마스터 노드(104')"로서 불리우며; 보조 마스터 노드들(104')이 아닌 슬레이브 노드들(104)은 여기에서 슬레이브 노드들(104-2, 104-3,..., 104-N)로서 불리운다. 수반된 도면들 중 다양한 것들이 통신 시스템(100)에서 단일 보조 마스터 노드(104')를 예시하지만, 이것은 단순히 예시의 용이함을 위한 것이며, 시스템(100)은 다수의 보조 마스터 노드들(104')을 포함할 수 있다(예컨대, 다수의 레벨들의 이중화를제공하기 위해). 예를 들어, 통신 시스템(100)이 차량에서 사용될 때, 다수의 상이한 보조 마스터 노드들(104')은 충돌이 통신 시스템(100)의 부분을 작동하지 않게 하는 경우에 차량에서 상이한 위치들에 위치될 수 있다. 뿐만 아니라, 수반된 도면들 중 다양한 것들은 버스(106)를 따라 마스터 노드(102)에 "인접한" 것으로 보조 마스터 노드(104')를 예시하지만, 이것은 단순히 예시의 용이함을 위한 것이며, 몇몇 실시예들에서, 하나 이상의 슬레이브 노드들(104)은 버스(106)를 따라 마스터 노드(102) 및 보조 마스터 노드(104') 사이에 위치될 수 있다.
도 14는 보조 마스터 노드(104')를 포함한 통신 시스템(100)의 블록도이다. 특히, 통신 시스템(100)은 마스터 노드(102)와 통신하는 호스트(110)(예컨대, 도 1을 참조하여 상기 논의된 실시예들 중 임의의 것에 따라), 보조 마스터 노드(104')(마스터 노드(102)가 연결될 때 슬레이브 노드로서 동작하는), 및 하나 이상의 부가적인 슬레이브 노드들(마지막 슬레이브 노드(104-N)를 포함한)을 포함한다. 노드들(102/104)은 여기에서 논의된 실시예들 중 임의의 것을 따라, 데이지-체인 방식으로 2-와이어 버스(106)의 링크들에 의해 함께 결합된다. 통신 시스템(100)은 또한 마스터 노드(102)가 연결 해제될 때 보조 마스터 노드(104')를 위한 보조 호스트(호스트(110) 대신에)로서 동작할 수 있는 프로세싱 디바이스(109)를 포함한다. 프로세싱 디바이스(109)는 보조 마스터 노드(104')와 연관된 주변 디바이스(108)일 수 있다. 몇몇 실시예들에서, 프로세싱 디바이스(109)는 마이크로제어기 또는 DSP일 수 있다.
프로세싱 디바이스(109)는 호스트(110)와 마스터 노드(102) 사이에서의 통신을 참조하여 여기에서 논의된 실시예들 중 임의의 것에 따른 보조 마스터 노드(104')와 통신할 수 있으며, 몇몇 특정한 예들은 이하에서 추가로 상세하게 논의된다. 마스터 노드(102)가 연결 해제될 때, 보조 마스터 노드(104')는 마스터 노드로서 동작할 수 있으며 프로세싱 디바이스(109)는 통신 시스템(100)을 계속해서 구동하기 위해 호스트로서 동작할 수 있다(예컨대, 이하에서 추가로 논의되는 바와 같이, 전화 호출 또는 블루투스 연결의 중단을 피하고, 오디오 콘텐트를 지속시키고, 라디오 프로그램의 전달을 유지하거나, 또는 긴급 호출들이 이루어질 수 있게 하는). 보조 마스터 노드(104')에 의해 통제된 서브시스템(예컨대, 마스터 노드(102)가 연결 해제될 때)은 여기에서 보조 시스템(140)으로서 불리울 수 있으며, 보조 마스터 노드(104') 및 보조 마스터 노드(104') 아래로 부가적인 슬레이브 노드들(104)을 포함할 수 있다.
시스템(100)에서 임의의 슬레이브 노드(104)는 보조 마스터 노드(104')일 수 있다. 보조 마스터 노드(104')는 마스터 노드(102)가 또한 수행하도록 구성되지만, 슬레이브 노드들(104-2)은 수행하도록 구성되지 않는 동작들을 수행하기 위해 구성될 수 있다. 예를 들어, 보조 마스터 노드(104')는 버스(106)를 따라 전체 탐색을 수행하도록 구성될 수 있다. 보조 마스터 노드(104')는 또한 마스터 노드(102)가 시스템(100)으로부터 연결 해제될 때를 검출하고, 마스터 노드(102)가 재연결될 때까지 시스템(100)을 구성하고 구동하며, 마스터 노드(102)의 재연결을 검출하도록 구성될 수 있다. 몇몇 실시예들에서, 슬레이브 노드로서 또는 마스터 노드로서 보조 마스터 노드(104')의 구성은 프로세싱 디바이스(109)에 의해 제어될 수 있으며; 다수의 이러한 실시예들이 이하에서 논의된다.
도 15는 다양한 실시예들에 따른, 도 14의 통신 시스템(100)에서 보조 마스터 기능을 제공하는 방법(1400)의 흐름도이다. 방법(1400)은 프로세싱 디바이스(109)(보조 마스터 노드(104')와 통신하는)에 의해 실행될 수 있다.
1402에서, 프로세싱 디바이스(109)는 전원-차단 또는 리셋 상태에서 시작할 수 있다. 프로세싱 디바이스(109)는 전력이 프로세싱 디바이스(109)에 제공되거나 또는 프로세싱 디바이스(109)의 리셋이 완료될 때까지 이 상태에 남아있을 수 있으며, 이때 프로세싱 디바이스(109)는 1404로 전이될 수 있으며 부트 업할 수 있다(예컨대, 방법(1400)의 남아있는 동작들을 수행하기 위한 프로그램 지시들을 로딩하는). 1404에서 부트-업 시, 프로세싱 디바이스(109)는 전압 바이어스가 보조 마스터 노드(104')에 결합된 2-와이어 버스(106)의 업스트림 링크(예컨대, 마스터 노드(102)를 "향하는" 2-와이어 버스(106)의 링크) 상에 존재하는지를 결정할 수 있다. 이러한 전압 바이어스의 존재는 마스터 노드(102)가 연결되었는지 여부를 나타낼 수 있으며; 전압 바이어스가 존재하지 않는다면, 마스터 노드(102)는 연결 해제될 수 있으며, 그 반대 또한 마찬가지이다. 프로세싱 디바이스(109)가 버스(106)의 업스트림 링크 상에서의 바이어스가 존재한다고 결정하면, 프로세싱 디바이스(109)는 1406으로 진행하며 1) 스스로를 슬레이브 노드 동작을 위해 구성하고 보조 마스터 노드(104')가 슬레이브로서 버스 링크(106)를 통해 마스터 노드(102)에 의해 구성될 것임을 수용하거나, 또는 2) 보조 마스터 노드(104')를 슬레이브 노드로서 구성하기 위해 보조 마스터 노드(104')와 통신할 수 있다. 1406에서 슬레이브 동작을 위한 프로세싱 디바이스(109)를 구성한 후, 프로세싱 디바이스(109)가 버스(106)의 업스트림 링크 상에서의 바이어스가 더 이상 존재하지 않는다고 결정하면, 프로세싱 디바이스(109)는 1402로 진행될 수 있으며 리셋될 수 있다. 그렇지 않다면, 1406에서 프로세싱 디바이스(109')를 슬레이브로서 구성한 후, 프로세싱 디바이스(109)는 보조 마스터 노드(104')가 마스터 노드(102)에 의해 탐색되었는지를 결정할 수 있으며, 그렇다면, 대기 상태(1408)에 들어갈 수 있다. 대기 상태(1408)(또는 여기에서 개시된 대기 상태들 중 임의의 것)에서, 프로세싱 디바이스(109)는, 원하는 대로, 슬레이브 노드 프로세싱을 수행할 수 있다. 마스터 노드(102)에 의한 보조 마스터 노드(104')의 탐색은 보조 마스터 노드(104')에 의해(예컨대, 이하에서 논의되는 바와 같이, 보조 마스터 노드(104')의 I/O 핀을 사용하여) 프로세싱 디바이스(109)로 시그널링될 수 있다. 몇몇 실시예들에서, 보조 마스터 노드(104')가 마스터 노드(102)에 의해 탐색되었음을 나타내는 프로세싱 디바이스로의 시그널링은, 상기 전이를 트리거링하는 업스트림 버스 바이어스 대신에 또는 그 외에, 전원 차단/리셋 상태(1402)로부터 부트 상태(1404)로의 전이를 트리거하기 위해 사용될 수 있다.
프로세싱 디바이스(109)는 정상 셧다운 명령이 수신되거나 또는 버스(106)를 따라 업스트림으로의 통신이 손실될 때까지 대기 상태(1408)에 남아있을 수 있다. 몇몇 실시예들에서, 정상 셧다운 명령은 버스(106) 및 보조 마스터 노드(104')를 통해 호스트(110)/마스터 노드(102)로부터 프로세싱 디바이스(109)로 제공될 수 있다(예컨대, 보조 마스터 노드(104')와 프로세싱 디바이스(109) 간의 I2C 연결을 통해 메일박스 기능을 사용하여 메시지를 프로세싱 디바이스(109)로 전송함으로써). 정상 셧다운 명령이 대기 상태(1408)에 있는 동안 프로세싱 디바이스(109)에 의해 수신되면, 프로세싱 디바이스(109)는 전원-차단/리셋 상태(1402)로 진행하고 셧다운할 수 있다.
프로세싱 디바이스(109)가 대기 상태(1408)에 있는 동안 업스트림 통신이 손실되면, 프로세싱 디바이스(109)는 1412에서 스스로를 호스트 디바이스로 구성하도록 진행될 수 있다. 프로세싱 디바이스(109)는 또한, 프로세싱 디바이스(109)가, 1404에서의 부트-업 후, 어떤 전압 바이어스도 보조 마스터 노드(104')에 결합된 2-와이어 버스(106)의 업스트림 링크 상에 존재하지 않는다고 결정하면 1412에서 스스로를 호스트 디바이스로서 구성하도록 진행될 수 있다. 몇몇 실시예들에서, 정상 구성 변화 요청은 프로세싱 디바이스(109)가 대기 상태(1408)에 있는 동안 버스(106) 및 보조 마스터 노드(104')를 통해 호스트(110)/마스터 노드(102)로부터 프로세싱 디바이스(109)로 제공될 수 있다(예컨대, 보조 마스터 노드(104')와 프로세시 디바이스(109) 간의 I2C 연결을 통해 메일박스 기능을 사용하여 메시지를 프로세싱 디바이스(109)로 전송함으로써). 정상 구성 변화 요청이 대기 상태(1408)에 있는 동안 프로세싱 디바이스(109)에 의해 수신되면, 프로세싱 디바이스(109)는 1412로 진행하며 호스트로서 재-구성할 수 있다.
1412에서 스스로를 호스트로서 구성한 후, 프로세싱 디바이스(109)는 1414에서 보조 마스터 노드(104')를 마스터 디바이스로서 구성하기 위해 보조 마스터 노드(104')와 통신할 수 있다. 프로세싱 디바이스(109)는 그 후 여기에서 개시된 기술들 중 임의의 것에 따라 1416에서 (보조 시스템(140)의) 다운스트림 슬레이브 노드들(104)의 탐색을 개시하며 그 후 대기 상태(148)에 들어갈 수 있다. 대기 상태(1418)에 있는 동안, 프로세싱 디바이스(109)가, 업스트림 버스 바이어스가 존재한다고 결정하면, 프로세싱 디바이스(109)는 전원-차단/리셋 상태(1402)로 진행하고 리셋할 수 있거나, 또는 슬레이브 노드 동작을 위해 스스로를 재구성하도록 1406으로 진행할 수 있으며 보조 마스터 노드(104')를 슬레이브로서 재구성할 수 있다.
프로세싱 디바이스(109)의 부팅이 단일 스테이지에서 발생하는 것으로서 수반된 도면들 중 다양한 것들에서 예시되지만, 프로세싱 디바이스(109)의 부팅은 수반된 실시예들 중 임의의 것에서 동작의 다수의 상이한 스테이지들에 걸쳐 수행될 수 있다. 예를 들어, 부팅의 제 1 스테이지는 1404에서 수행될 수 있지만, 부팅의 제 2 스테이지는 1406 또는 1412에서 발생할 수 있다. 버스 바이어스의 존재는 부트 동작들의 제 2 스테이지 중 어떤 것을 수행할지(업스트림 버스 바이어스가 존재할 때 1406, 및 업스트림 버스 바이어스가 존재하지 않을 때 1412)를 결정하기 위해 사용될 수 있다.
도 16은 도 14의 통신 시스템(100)의 일 부분의 예시적인 구현을 예시한다. 특히, 도 16은 보조 마스터 노드(104')(노드 트랜시버(120) 및 연관된 회로를 포함한)의 예, 연관된 프로세싱 디바이스(109)의 예, 및 그것들 간의 예시적인 상호연결들을 예시한다. 도 16에서, 보조 마스터 노드(104')는 노드 트랜시버(120)(여기에서 개시된 트랜시버들(120) 중 임의의 것의 형태를 취할 수 있는), 버스 바이어스 검출 회로(111), 업스트림 버스 인터페이스 회로(132), 다운스트림 버스 인터페이스 회로(131), 및 전원 공급 장치(115)를 포함한다. 전원 공급 장치(115)로의 입력 전압(Vin)은 보조 마스터 노드(104')에 포함된 배터리(113-1)에 의해, 또는 외부 배터리(113-2)에 의해 제공될 수 있다. 몇몇 실시예들에서, 배터리(113-1)는 버스(106) 상에서의 바이어스에 의해 하전될 수 있다(예컨대, 세류-충전될 수 있다). 버스 바이어스 검출 회로(111)는 2-와이어 버스(106)의 업스트림 링크에 결합될 수 있으며, 두 개의 상이한 출력들: 전압 바이어스가 업스트림 링크(106)의 2개의 와이어들 사이에 존재하는지 여부를 나타낸 "bus bias present" 논리 신호 및 "bus bias" 전압 자체를 제공하도록 구성될 수 있다. 버스 바이어스 전압은 도시된 바와 같이(예컨대, 노드 트랜시버(120)가, 존재할 때, 버스 바이어스로 스스로에게 동력을 공급하도록 허용하기 위해), 전원 공급 장치(115)의 입력 전압에 제공될 수 있다. 전원 공급 장치(115)는 따라서 버스 바이어스, 배터리(113-1), 및/또는 배터리(113-2) 중 임의의 하나 이상으로부터 그것의 입력 전압을 인출할 수 있다. 전원 공급 장치(115)로부터의 전압 출력(Vout)은 노드 트랜시버(120)의 전압 입력(Vin)에서 및 프로세싱 디바이스(109)의 전압 입력(Vin)에서 수신될 수 있다. 몇몇 실시예들에서, 전원 공급 장치(115)는 상이한 전압 출력들(예컨대, 또한 다운스트림 바이어스 또는 노드에서의 다른 주변 디바이스들을 위한)을 생성하기 위해 전압 조절기 또는 다수의 전압 조절기들을 포함할 수 있다.
업스트림 버스 인터페이스 회로(132)는 버스 바이어스 검출 회로(111) 및 노드 트랜시버(120)의 업스트림 포트들(AP 및 AN) 사이에 배치될 수 있다. 상기 논의된 바와 같이, 업스트림 버스 인터페이스 회로(132)는 버스 바이어스를 종단시키고, 버스(106)를 통해 제공된 차동 신호를 필터링하며, 전자파 적합성(EMC) 및 정전 방전(ESD) 보호를 제공할 수 있다. 다운스트림 버스 인터페이스 회로(131)는 노드 트랜시버(120)의 다운스트림 포트들(BP 및 BN) 및 2-와이어 버스(106)의 다운스트림 링크 사이에 배치될 수 있으며, 여기에서 개시된 실시예들 중 임의의 것의 형태를 취할 수 있다. 상기 논의된 바와 같이, 다운스트림 버스 인터페이스 회로(131)는 버스(106)를 통한 송신을 위해 버스 바이어스와 차동 신호를 조합하고, 버스(106)를 통해 제공된 차동 신호를 필터링하며, EMC 및 ESD 보호를 제공할 수 있다.
전원 공급 장치(115)는 또한 전원 공급 장치(115)가 전압 출력(Vout)을 제공하는지 여부를 제어하는 인에이블 입력을 포함할 수 있다. 전원 공급 장치(115)의 인에이블 입력은 버스 바이어스 검출 회로(111)로부터의 "bus bias present" 신호에 및 프로세싱 디바이스(109)의 "sustain" 출력에 결합될 수 있다. 프로세싱 디바이스(109)는 프로세싱 디바이스가 버스 바이어스 검출 회로(111)로부터 버스 바이어스가 존재한다는 표시를 수신할 때(즉, 프로세싱 디바이스(109)에서 수신된 "bus bias present" 신호를 통해) 상기 지속(sustain) 출력을 생성한다. 상기 논의된 바와 같이, 버스 바이어스가 없어질 때, 프로세싱 디바이스(109)는 호스트로서 구성될 수 있으며 보조 마스터 노드(104')는 마스터 디바이스로서 구성될 수 있다. 따라서, 전원 공급 장치(115)는 버스 바이어스가 존재하거나(예컨대, 보조 마스터 노드(104')가 슬레이브로서 동작할 때) 또는 프로세싱 디바이스가 적절한 지속 출력을 생성할 때(예컨대, 보조 마스터 노드(104')가 마스터로서 동작할 때) 출력 전압을 생성하기 위해 인에이블될 수 있다.
프로세싱 디바이스(109)는 노드 트랜시버(120)의 출력("config'd as slave")으로부터 보조 마스터 노드(104')의 현재 구성의 표시자를 수신하기 위한 입력("current config")을 포함할 수 있다. 특히, 노드 트랜시버(120)는 노드 트랜시버(120)가 현재 슬레이브로서 또는 마스터로서 구성되는지를 프로세싱 디바이스(109)에 나타내기 위해 "config'd as slave" 출력을 사용할 수 있다. 예를 들어, "current config" 및 "config'd as slave" 입력들/출력들은 그것을 통해 구성 정보가 전달될 수 있는 GPIO, SPI, 또는 I2C 인터페이스(예컨대, 상기 논의된, 노드 트랜시버(120)의 I2C 트랜시버(129)를 포함한)의 부분일 수 있다. 프로세싱 디바이스(109)가, 노드 트랜시버(120)가 현재 슬레이브로서 구성되지 않았다는(예컨대, 슬레이브 디바이스로서 탐색되지 않았다) 표시를 수신하면, 프로세싱 디바이스(109)는 지속 출력을 전원 공급 장치(115)로 제공할 수 있다. 몇몇 실시예들에서, 프로세싱 디바이스(109)가 노드 트랜시버(120)가 현재 슬레이브로서 구성된다(예컨대, 상기 논의된 바와 같이, 슬레이브 디바이스로서 탐색되었다)는 표시를 수신하면, 프로세싱 디바이스(109)는 지속 출력을 전원 공급 장치(115)로 제공하지 않을 수 있는 반면, 다른 실시예들에서, 프로세싱 디바이스(109)는 노드 트랜시버(120)가 슬레이브로서 또는 마스터로서 구성되는지에 관계없이 지속 출력을 전원 공급 장치(115)에 제공할 수 있다. 몇몇 실시예들에서, 프로세싱 디바이스(109)는 프로세싱 디바이스(109)가 정상 셧다운을 겪거나 또는 그 외 보조 마스터 노드(104')를 셧 다운하길 원할 때 전원 공급 장치(115)로 지속 출력을 제공하는 것을 중단할 수 있다.
프로세싱 디바이스(109)는 노드 트랜시버(120)가 스스로를 마스터로서 또는 슬레이브로서 구성하게 하기 위해 노드 트랜시버(120)의 입력("update config")으로 신호들을 제공하기 위한 출력("reconfig node transceiver")을 포함할 수 있다. 예를 들어, "reconfig node transceiver" 및 "update config" 입력들/출력들은 구성 정보가 전달될 수 있는 GPIO, SPI, 또는 I2C 인터페이스(예컨대, 상기 논의된, 노드 트랜시버(120)의 I2C 트랜시버(129)를 포함한)의 부분일 수 있다. 프로세싱 디바이스(109)는 노드 트랜시버(120)가 프로세싱 디바이스(109)에 의해 수신된 "bus bias present" 신호에 기초하여 스스로를 재구성하게 할 수 있다(예컨대, 도 15를 참조하여 상기 논의된 바와 같이).
도 17은 다양한 실시예들에 따른, 도 16의 통신 시스템(100)에서 보조 마스터 기능을 제공하는 방법(1500)의 흐름도이다. 방법(1500)은 도 17의 프로세싱 디바이스(109)(보조 마스터 노드(104')와 통신하는)에 의해 실행될 수 있다.
1502에서, 프로세싱 디바이스(109)는 전원-차단 또는 리셋 상태에서 시작할 수 있다. 프로세싱 디바이스(109)는 전력이 프로세싱 디바이스(109)로 제공되거나 또는 프로세싱 디바이스(109)의 리셋이 완료될 때까지 상기 상태에 남아있을 수 있으며, 이때 프로세싱 디바이스(109)는 1504로 전이될 수 있으며 부트 업(예컨대, 방법(1500)의 나머지 동작들을 수행하기 위한 프로그램 지시들을 로딩하는)할 수 있다. 1504에서 부트-업 시, 버스 바이어스 검출 회로(111)의 "bus bias present" 출력을 통해, 프로세싱 디바이스(109)는 전압 바이어스가 보조 마스터 노드(104')에 결합된 2-와이어 버스(106)의 업스트림 링크(예컨대, 마스터 노드(102)를 "향하는" 2-와이어 버스(106)의 링크) 상에 존재하는지를 결정할 수 있다. 이러한 전압 바이어스의 존재는 마스터 노드(102)가 연결되었는지 여부를 나타낼 수 있으며; 전압 바이어스가 존재하지 않는다면, 마스터 노드(102)는 연결 해제될 수 있으며, 그 반대 또한 마찬가지이다. 프로세싱 디바이스(109)가 버스(106)의 업스트림 링크 상에서의 바이어스가 존재한다고 결정하면("bus bias present" 신호를 통해), 프로세싱 디바이스(109)는 1506으로 진행하며 1) 스스로를 슬레이브 노드 동작을 위해 구성하고 보조 마스터 노드(104')가 슬레이브로서 버스 링크(106)를 통해 마스터 노드(102)에 의해 구성될 것임을 수용하거나, 또는 2) 노드 트랜시버(120)를 슬레이브 디바이스로서 구성하기 위해 노드 트랜시버(120)와 통신하며(프로세싱 디바이스(109)의 "reconfig node transceiver" 출력 및 노드 트랜시버(120)의 "update config" 입력을 통해) 지속 신호를 전원 공급 장치(115)로 출력할 수 있다. 1506에서 슬레이브 동작을 위해 프로세싱 디바이스(109)를 구성한 후, 프로세싱 디바이스(109)가 버스(106)의 업스트림 링크 상에서의 바이어스가 더 이상 존재하지 않는다고 결정하면("bus bias present" 신호를 통해), 프로세싱 디바이스(109)는 1510으로 진행하며 지속 신호를 출력하는 것을 멈추고, 그 후 리셋하기 위해 1502로 진행할 수 있다. 그렇지 않다면, 1506에서 슬레이브로서 프로세싱 디바이스(109)를 구성한 후, 프로세싱 디바이스(109)는 노드 트랜시버(120)가 마스터 노드(102)에 의해 탐색되었는지를 결정할 수 있으며(예컨대, 프로세싱 디바이스(109)의 "current config" 입력에서 수신된 노드 트랜시버(120)로부터의 "config'd as slave" 출력을 통해), 그렇다면, 대기 상태(1508)에 들어갈 수 있다.
프로세싱 디바이스(109)는 정상 셧다운 명령이 수신되거나 또는 버스(106)를 따라 업스트림으로의 통신이 손실될 때까지 대기 상태(1508)에 남아있을 수 있다. 몇몇 실시예들에서, 정상 셧다운 명령은 버스(106) 및 보조 마스터 노드(104')를 통해 호스트(110)/마스터 노드(102)로부터 프로세싱 디바이스(109)로 제공될 수 있다(예컨대, 보조 마스터 노드(104')와 프로세싱 디바이스(109) 간의 I2C 연결을 통해 메일박스 기능을 사용하여 메시지를 프로세싱 디바이스(109)로 전송함으로써). 정상 셧다운 명령이 대기 상태(1408)에 있는 동안 프로세싱 디바이스(109)에 의해 수신되면, 프로세싱 디바이스(109)는 1510에서 지속 신호를 출력하는 것을 멈추며 그 후 셧 다운하기 위해 전원-차단/리셋 상태(1502)로 진행할 수 있다.
프로세싱 디바이스(109)가 대기 상태(1508)에 있는 동안 업스트림 통신이 손실되면(예컨대, 프로세싱 디바이스(109)의 "current config" 입력에서 수신된 노드 트랜시버(120)로부터의 "config'd as slave" 출력을 통해), 프로세싱 디바이스(109)는 1512에서 스스로를 호스트 디바이스로서 구성하기 위해 진행할 수 있으며 계속해서 지속 신호를 전원 공급 장치(115)로 제공할 수 있다. 프로세싱 디바이스(109)는 또한 1512에서 스스로를 호스트 디바이스로 구성하도록 진행할 수 있으며 프로세싱 디바이스(109)가, 1504에서 부트-업 후, 어떤 전압 바이어스도 보조 마스터 노드(104')에 결합된 2-와이어 버스(106)의 업스트림 링크 상에 존재하지 않는다고 결정하면 지속 신호를 출력할 수 있다. 1512에서 스스로를 호스트로서 구성한 후, 프로세싱 디바이스(109)는 1514에서 노드 트랜시버(120)를 마스터 디바이스로서 구성하기 위해 노드 트랜시버(120)와 통신할 수 있다(프로세싱 디바이스(109)의 "reconfig node transceiver" 출력 및 노드 트랜시버(120)의 "update config" 입력을 통해). 프로세싱 디바이스(109)는 그 후 여기에서 개시된 기술들 중 임의의 것에 따라 1516에서 다운스트림 슬레이브 노드들(104)(보조 시스템(140)의)의 탐색을 개시하며 그 후 대기 상태(1518)에 들어갈 수 있다. 대기 상태(1518)에 있는 동안, 프로세싱 디바이스(109)가 업스트림 버스 바이어스가 존재한다고 결정하면, 프로세싱 디바이스(109)는 1536에서 지속 신호를 출력하는 것을 멈추며 리셋하기 위해 전원-차단/리셋 상태(1502)로 진행할 수 있다. 몇몇 실시예들에서, 대기 상태(1518)에서 버스 바이어스의 검출은 계속해서 지속 신호를 출력하면서 프로세싱 디바이스(109)가 1506으로 진행하게 할 수 있다. 몇몇 실시예들에서, 단지 외부 이벤트(예컨대, 푸시 버튼의 작동)만이 프로세싱 디바이스(109)가 대기 상태(1518)로부터 상태(1502)(또는 임의의 다른 상태)로 진행하도록 허용한다. 도 18은 도 16에 예시된 통신 시스템(100)의 부분의 특정한 실시예를 예시한다. 도 18은 버스 바이어스 검출 회로(111) 및 전원 공급 장치(115)의 특정한 실시예들을 예시한다. 도 18의 실시예에서, 배터리(113-1)는 보조 마스터 노드(104')와 연관된 "백업" 배터리일 수 있지만, "외부" 배터리(113-2)는 통신 시스템(100)의 "메인" 배터리(예컨대, 차량에서의 1차 배터리)일 수 있다. 노드 트랜시버(120) 및 프로세싱 디바이스(109)는 I2C 인터페이스 또는 SPI 인터페이스를 통해 통신할 수 있으며, 또한 "reconfig node transceiver", "current config", "update config", 및 "config'd as slave" 단자들을 제공하기 위해 I2S/TDM I/O 핀들을 통해 통신할 수 있다. 프로세싱 디바이스(109)는 지속 신호를 생성하기 위해 IO1 출력을 하이로 설정할 수 있으며(및 지속 신호를 정지시키기 위해 IO1 출력을 로우로 설정하는), 프로세싱 디바이스(109)의 IO5 입력은 노드 트랜시버(120)가 슬레이브로서 구성되고 탐색될 때 마스터 노드(102)에 의해 강제로 하이가 될 수 있다.
몇몇 실시예들에서, 보조 시스템(140)은 또한 보조 호출 지원 기능을 제공할 수 있다. 여기에서 사용된 바와 같이, "보조 호출 지원 기능"은 마스터 노드(102)가 연결 해제될 때 전화 호출 또는 다른 외부 통신이 되도록 허용하기 위한 보조 시스템(140)의 능력을 나타낸다. 예를 들어, 차량 설정에서, 마스터 노드(102) 및 호스트(110)는 차량의 헤드 유닛에 위치될 수 있으며, 정상 동작 조건들 하에서 호출 지원 기능을 함께 제공할 수 있다. 마스터 노드(102)를 연결 해제하도록 충돌이 발생하거나 또는 헤드 유닛이 그 외 손상된다면, 보조 호출 지원 기능은 전화 호출이 보조 시스템(140)에 의해 되도록 허용할 수 있다(예컨대, 긴급 호출). 여기에서 개시된 보조 호출 지원 시스템들 중 다양한 것들이 "전화 호출들"을 하기 위한 능력을 나타내지만, 여기에서 개시된 보조 호출 지원 시스템들 및 기술들은 임의의 종류의 보조 메시징 또는 외부 통신 기능(예컨대, 단문 메시지 서비스(SMS) 메시지들 등)을 제공하기 위해 사용될 수 있다. 이러한 메시징 기능은 무선 통신을 포함할 수 있다(예컨대, 전화 호출 또는 SMS 메시지는 통신 시스템(100)과 셀룰러 또는 다른 무선 네트워크 사이에서 무선으로 전달될 수 있다).
도 19는 보조 호출 지원 기능을 가진 통신 시스템(100)의 블록도이다. 도 19의 다수의 요소들은 도 14의 통신 시스템(100)과 공유되며; 이들 요소들은 도 14를 참조하여 여기에서 논의된 형태들 중 임의의 것을 취할 수 있으며. 논의의 명료함을 위해 반복되지 않을 것이다. 도 19의 통신 시스템에서, 호스트(110)는 호출 하드웨어(153)(예를 들어, 모뎀, 안테나, 아날로그 또는 디지털 마이크로폰들, 스피커들, ADC들, DAC들, 및/또는 전화 기능을 제공하기 위한 임의의 적절한 장비를 포함할 수 있는)에 결합될 수 있다. 보조 호출 하드웨어(163 및 161)는 각각 보조 마스터 노드(104') 및 슬레이브 노드들(104) 중 하나 이상에 결합될 수 있다. 보조 호출 하드웨어(163 및 161)는 그것들의 연관된 노드들을 위한 주변 디바이스들(108)일 수 있다. 보조 호출 하드웨어(163 및 161)는 호출 하드웨어(153)를 참조하여 상기 논의된 예시적인 요소들 중 임의의 것을 개별적으로 포함할 수 있다. 통신 시스템(100)의 정상 동작 동안, 호출 하드웨어(153)(보조 호출 하드웨어(163 및 161)의 임의의 원하는 요소들과 함께)는 전화 호출들을 행할 수 있고; 마스터 노드(102)가 연결 해제될 때(및 그러므로 호출 하드웨어(153)가 더 이상 전화 호출들을 하기 위해 이용 가능하지 않은), 보조 호출 하드웨어(163 및 161)는 보조 시스템(140) 상에서 전화 호출들을 행할 수 있다. 예를 들어, 호출 하드웨어(153)는 스피커들을 포함할 수 있고, 보조 호출 하드웨어(163)는 모뎀 및 스피커들을 포함할 수 있으며, 보조 호출 하드웨어(161)는 하나 이상의 마이크로폰들을 포함할 수 있고; 정상 동작 동안, 호출 하드웨어(153)의 스피커들, 보조 호출 하드웨어(163)의 모뎀, 및 보조 호출 하드웨어(161)의 마이크로폰들은 전화 호출들을 하기 위해 함께 사용될 수 있지만, 보조 호출 하드웨어(163 및 161)는 마스터 노드(102)가 연결 해제될 때 전화 호출들을 하기 위해 함께 사용될 수 있다. 몇몇 실시예들에서, 슬레이브 노드들(104) 중 어떤 것도 임의의 호출 하드웨어(157)와 연관되지 않으며, 대신에, 보조 호출 하드웨어(163) 자체는 전화 호출을 하기 위해 요구된 하드웨어 요소들 모두를 포함한다.
보조 호출 하드웨어는 보조 마스터 노드(104')가 존재하는 곳과 상이한 노드에 위치될 수 있으며, 버스(106)를 통해 액세스될 수 있다. 전화번호들 또는 다른 통신-관련 데이터는 또한 버스(106)에 의해 보조 마스터 노드(104')에 연계된 상이한 슬레이브 노드(104)에 저장될 수 있다. 예를 들어, 블루투스 디바이스는 마지막 호출된 전화번호로 호출을 자동으로 개시할 수 있다. 전화번호들 또는 다른 통신-관련 데이터는 바로 또는 보조 호출 하드웨어로 제공되거나 또는 보조 호출 하드웨어 내에 존재할 수 있다(예컨대, 보조 호스트의 수반 없이).
도 20은 다양한 실시예들에 따른, 도 19의 통신 시스템(100)에서 보조 호출 지원 기능을 제공하는 방법(1550)의 흐름도이다. 방법(1550)은 프로세싱 디바이스(109)(보조 마스터 노드(104')와 통신하는)에 의해 실행될 수 있다.
1552에서, 프로세싱 디바이스(109)는 전원-차단 또는 리셋 상태에서 시작할 수 있다. 프로세싱 디바이스(109)는 전력이 프로세싱 디바이스(109)에 제공되거나 또는 프로세싱 디바이스(109)의 리셋이 완료될 때까지 이 상태에 남아있을 수 있으며, 이때 프로세싱 디바이스(109)는 1554로 전이될 수 있으며 부트 업(예컨대, 방법(1500)의 나머지 동작들을 수행하기 위한 프로그램 지시들을 로딩하는)할 수 있다. 1554에서 부트-업 시, 프로세싱 디바이스(109)는 전압 바이어스가 보조 마스터 노드(104')에 결합된 2-와이어 버스(106)의 업스트림 링크(예컨대, 마스터 노드(102)를 "향하는" 2-와이어 버스(106)의 링크) 상에 존재하는지를 결정할 수 있다. 이러한 전압 바이어스의 존재는 마스터 노드(102)가 연결되는지 여부를 나타낼 수 있고; 전압 바이어스가 존재하지 않는다면, 마스터 노드(102)는 연결 해제될 수 있으며, 그 반대 또한 마찬가지이다. 프로세싱 디바이스(109)가 버스(106)의 업스트림 링크 상에서의 바이어스가 존재한다고 결정하면, 프로세싱 디바이스(109)는 1556으로 진행하며 1) 스스로를 슬레이브 노드 동작을 위해 구성하고 보조 마스터 노드(104')가 슬레이브로서 버스 링크(106)를 통해 마스터 노드(102)에 의해 구성될 것임을 수용하거나, 또는 2) 보조 마스터 노드(104')를 슬레이브 디바이스로서 구성하기 위해 보조 마스터 노드(104')와 통신할 수 있다. 1556에서 프로세싱 디바이스(109')를 슬레이브 동작을 위해 구성한 후, 프로세싱 디바이스(109)가 버스(106)의 업스트림 링크 상에서의 바이어스가 더 이상 존재하지 않는다고 결정하면, 프로세싱 디바이스(109)는 1552로 진행할 수 있으며 리셋될 수 있다. 그렇지 않다면, 1556에서 프로세싱 디바이스(109')를 슬레이브로서 구성한 후, 프로세싱 디바이스(109)는 보조 마스터 노드(104')가 마스터 노드(102)에 의해 탐색되었는지를 결정할 수 있으며, 그렇다면, 대기 상태(1558)에 들어갈 수 있다. 마스터 노드(102)에 의한 보조 마스터 노드(104')의 탐색은 보조 마스터 노드(104')에 의해 프로세싱 디바이스(109)로 시그널링될 수 있다(예컨대, 이하에서 논의된 바와 같이, 보조 마스터 노드(104')의 I/O 핀을 사용하여). 몇몇 실시예들에서, 보조 마스터 노드(104')가 마스터 노드(102)에 의해 탐색되었음을 나타내는 프로세싱 디바이스로의 시그널링은, 상기 전이를 트리거링하는 업스트림 버스 바이어스 대신에 또는 그 외에, 전원 차단/리셋 상태(1552)로부터 부트 상태(1554)로 전이를 트리거링하기 위해 사용될 수 있다.
프로세싱 디바이스(109)는 정상 셧다운 명령이 수신되고, 호출-트리거링 신호가 수신되고, 호스트(110)가 보조 호출 하드웨어(163)(보조 마스터 노드(104')와 연관된)를 사용하여 호출을 개시하거나, 또는 버스(106)를 따라 업스트림으로의 통신이 송신될 때까지 대기 상태(1558)에 남아있을 수 있다. 몇몇 실시예들에서, 정상 셧다운 명령은 버스(106) 및 보조 마스터 노드(104')를 통해 호스트(110)/마스터 노드(102)로부터 프로세싱 디바이스(109)로 제공될 수 있다(예컨대, 보조 마스터 노드(104')와 프로세싱 디바이스(109) 간의 I2C 연결을 통해 메일박스 기능을 사용하여 메시지를 프로세싱 디바이스(109)로 전송함으로써). 정상 셧다운 명령이 대기 상태(1558)에 있는 동안 프로세싱 디바이스(109)에 의해 수신되면, 프로세싱 디바이스(109)는 전원-차단/리셋 상태(1552)로 진행하고 셧다운될 수 있다. 몇몇 실시예들에서, 정상 구성 변화 요청은 프로세싱 디바이스(109)가 대기 상태(1558)에 있는 동안 버스(106) 및 보조 마스터 노드(104')를 통해 호스트(110)/마스터 노드(102)로부터 프로세싱 디바이스(109)로 제공될 수 있다(예컨대, 보조 마스터 노드(104')와 프로세싱 디바이스(109)(109) 간의 I2C 연결을 통해 메일박스 기능을 사용하여 메시지를 프로세싱 디바이스(109)로 전송함으로써). 정상 구성 변화 요청이 대기 상태(1558)에 있는 동안 프로세싱 디바이스(109)에 의해 수신되면, 프로세싱 디바이스(109)는 1562로 진행하며 스스로를 호스트로서 재구성할 수 있다.
대기 상태(1558)에서, 긴급 신호가 수신되면, 또는 긴급 호출("eCall") 버튼이 눌려지면, 프로세싱 디바이스(109)는 긴급 번호(예컨대, 메모리에 저장되거나 또는 그 외 프로세싱 디바이스(109)로 액세스 가능한)를 검색할 수 있다. 긴급 번호는 예를 들어, 미국에서 911일 수 있다. 긴급 신호는 긴급의 경우에 다른 하드웨어에 의해 자동으로 발생될 수 있다. 예를 들어, 차량 설정에서, 긴급 신호는 에어백들의 전개 시 차량에 의해 발생될 수 있으며, 도시되지 않은, CAN 버스 또는 또 다른 2차 제어 버스(예컨대, 긴급 센서 또는 신호 와이어)를 통해 프로세싱 디바이스(109)로 송신될 수 있다. 긴급 호출 버튼은 긴급 번호의 다이얼링을 트리거하기 위해 사용자에 의해 수동으로 작동될 수 있다. 대기 상태(1558)에서, 컨시어지 버튼이 눌려지면, 프로세싱 디바이스(109)는 컨시어지 번호(예컨대, 프로세싱 디바이스(109)에 있거나 또는 그 외 그것으로 액세스 가능한 메모리에 저장된)를 검색할 수 있다. 컨시어지 번호는 생활 편의 시설들 및 지원을 위한 전문화된 서비스와 연관될 수 있으며; 예를 들어, 차량 설정에서, 컨시어지 번호를 다이얼링하는 것은 다른 것들 중에서, 항공기 티켓팅, 호텔 예약들, 현장 보조, 날씨 정보, 기계 서비스들, 및/또는 보험 청구 보조를 제공하는 서비스를 액세스할 수 있다. 컨시어지 버튼은 컨시어지 번호의 다이얼링을 트리거링하기 위해 사용자에 의해 수동으로 작동될 수 있다. 특정한 유형들의 호출-트리거링 이벤트들(예컨대, 긴급 신호들, 긴급 호출 버튼들, 및 컨시어지 호출 버튼들)이 도 20 및 수반된 도면들의 다른 것들에 예시되지만, 이것들은 단순히 예들이며, 임의의 다른 적절한 호출-트리거링 이벤트(예컨대, 자동 또는 수동)가 사용될 수 있다.
긴급 번호(1570에서) 또는 컨시어지 번호(1572에서)를 검색한 후, 프로세싱 디바이스(109)는 1574에서 번호의 검색을 호스트(110)로 시그널링하며(예컨대, 보조 마스터 노드(104')와 프로세싱 디바이스(109) 간의 I2C 연결을 통해 메일박스 기능을 사용하여 메시지를 호스트(110)로 전송함으로써) 그 후 1576에서 호스트(110)로부터 응답을 기다릴 수 있다(예컨대, 보조 마스터 노드(104')와 프로세싱 디바이스(109) 간의 I2C 연결을 통해 메일박스 기능을 사용하여 메시지를 프로세싱 디바이스(109)로 전송함으로써). 호스트(110)가 호출이 개시되어야 함을 성공적으로 나타낸다면, 프로세싱 디바이스(109)는 1578에서 검색된 번호로 전화를 걸 수 있다. 방법(1550)은 또한, 프로세싱 디바이스(109)가 대기 상태(1558)에 있을 때, 프로세싱 디바이스(109)가 임의의 특정 번호로 전화를 걸기 위해 호스트(110)로부터 지시를 수신할 수 있으며(예컨대, 보조 마스터 노드(104')와 프로세싱 디바이스(109) 간의 I2C 연결을 통해 메일박스 기능을 사용하여 메시지를 프로세싱 디바이스(109)로 전송함으로써) 프로세싱 디바이스(109)는 1578에서 전화를 걸도록 진행할 수 있다. 1578에서 이루어진 호출이 종료될 때, 프로세싱 디바이스(109)는 대 기 상태(1558)로 돌아올 수 있다.
프로세싱 디바이스(109)가 1576에서 호스트(110)로부터 응답을 기다리는 동안 호스트(110)가 무응답이거나, 또는 프로세싱 디바이스(109)이 대기 상태(1558) 또는 호출 상태(1578)에 있는 동안(예컨대, 비상 호출 동안) 업스트림 통신이 손실되면, 프로세싱 디바이스(109)는 1562에서 스스로를 호스트 디바이스로서 구성하도록 진행할 수 있다. 프로세싱 디바이스(109)는 또한 프로세싱 디바이스(109)가, 1554에서의 부트-업 후, 어떤 전압 바이어스도 보조 마스터 노드(104')에 결합된 2-와이어 버스(106)의 업스트림 링크 상에 존재하지 않는다고 결정하면 1562에서 스스로를 호스트 디바이스로서 구성하도록 진행할 수 있다. 1562에서 스스로를 호스트로 구성한 후, 프로세싱 디바이스(109)는 1564에서 보조 마스터 노드(104')를 마스터 디바이스로서 구성하기 위해 보조 마스터 노드(104')와 통신할 수 있다. 프로세싱 디바이스(109)는 그 후 여기에서 개시된 기술들 중 임의의 것에 따라 1566에서 다운스트림 슬레이브 노드들(104)(보조 시스템(104)의)의 탐색을 개시하며 그 후 대기 상태(1568)에 들어갈 수 있다. 대기 상태(1568)에 있는 동안, 프로세싱 디바이스(109)가 업스트림 버스 바이어스가 존재한다고 결정하면, 프로세싱 디바이스(109)는 전원-차단/리셋 상태(1552)로 진행하고 리셋될 수 있거나, 또는 슬레이브 노드 동작을 위해 스스로를 재구성하도록 1556으로 진행될 수 있으며 보조 마스터 노드(104')를 슬레이브로서 재구성할 수 있다.
대기 상태(1568)에서, 긴급 신호가 수신된다면, 또는 긴급 호출("eCall") 버튼이 눌려지면, 프로세싱 디바이스(109)는, 상기 논의된 실시예들 중 임의의 것에 따라, 긴급 번호(예컨대, 프로세싱 디바이스(109)에 있거나 또는 그 외 그것으로 액세스 가능한 메모리에 저장된)를 검색할 수 있다. 대기 상태(1558)에서, 컨시어지 버튼이 눌려지면, 프로세싱 디바이스(109)는, 상기 논의된 실시예들 중 임의의 것에 따라, 컨시어지 번호(예컨대, 프로세싱 디바이스(109)에 있거나 또는 그 외 그것으로 액세스 가능한 메모리에 저장된)를 검색할 수 있다. 긴급 번호(1580에서) 또는 컨시어지 번호(1582에서)를 검색한 후, 프로세싱 디바이스(109)는 1584에서 검색된 번호로 전화를 걸 수 있다. 1584에서 걸린 호출이 종료될 때, 프로세싱 디바이스(109)는 전원-차단/리셋 상태(1552)로 진행하며 리셋될 수 있다. 대안적인 실시예들에서, 1584에서 걸린 호출이 종료될 때, 프로세싱 디바이스(109)는 대기 상태(1568)로 돌아갈 수 있다.
대안적인 실시예들에서, 프로세싱 디바이스(109)는 1570에서 1562로 바로 전이되고 그 후 리셋될 수 있거나, 또는 슬레이브로서 동작하도록 보조 마스터 노드(104)를 재구성할 수 있다.
도 21은 도 19의 통신 시스템(100)의 일 부분의 예시적인 구현을 예시한다. 특히, 도 21은 보조 마스터 노드(104')(노드 트랜시버(120) 및 연관된 회로를 포함한)의 예, 연관된 프로세싱 디바이스(109)의 예, 및 그것들 간의 예시적인 상호 연결들을 예시한다. 도 21의 다수의 요소들은 도 16의 통신 시스템(100)과 공유되며; 이들 요소들은 도 16을 참조하여 여기에서 논의된 형태들 중 임의의 것을 취할 수 있고, 논의의 명료성을 위해 반복되지 않을 것이다.
도 21의 실시예에서, 전원 공급 장치(115)의 인에이블 입력은 버스 바이어스 검출 회로(111)로부터 "bus bias present" 신호에, 프로세싱 디바이스(109)의 "sustain" 출력에, 및 호출-트리거링 신호들(예컨대, 긴급 신호, eCall 버튼, 및 컨시어지 버튼)에 결합될 수 있다. 따라서, 전원 공급 장치(115)는 버스 바이어스가 존재하고(예컨대, 보조 마스터 노드(104')가 슬레이브로서 동작할 때), 프로세싱 디바이스가 적절한 지속 출력을 생성하거나(예컨대, 보조 마스터 노드(104')가 마스터로서 동작할 때), 또는 호출-트리거링 신호가 수신될 때 출력 전압을 생성하기 위해 인에이블될 수 있다.
도 21의 프로세싱 디바이스(109)는 다양한 호출-트리거링 신호들(예컨대, 긴급 신호, eCall 버튼, 및 컨시어지 버튼)을 검색하며, 이들 신호들에 응답하여, 도 20을 참조하여 상기 논의된 바와 같이 전화 호출들을 하는 프로세스를 보조하거나 또는 제어할 수 있는 호출 입력들("CALL")을 포함할 수 있다. 호출 입력들은, 예를 들어, 프로세싱 디바이스(109)의 임의의 적절한 I/O 핀들일 수 있다.
도 22는 다양한 실시예들에 따른, 도 21의 통신 시스템에서 보조 마스터 기능을 제공하는 방법(1600)의 흐름도이다. 방법(1600)은 도 21의 프로세싱 디바이스(109)(보조 마스터 노드(104')와 통신하는)에 의해 실행될 수 있다.
1602에서, 프로세싱 디바이스(109)는 전원-차단 또는 리셋 상태에서 시작할 수 있다. 프로세싱 디바이스(109)는 전력이 프로세싱 디바이스(109)로 제공되거나 또는 프로세싱 디바이스(109)의 리셋이 완료될 때까지 이 상태에 남아있을 수 있으며, 이때 프로세싱 디바이스(109)는 1604로 전이되고 부트 업(예컨대, 방법(1500)의 나머지 동작들을 수행하기 위한 프로그램 지시들을 로딩하는)할 수 있다. 1604에서 부트-업 시, 프로세싱 디바이스(109)는 버스 바이어스 검출 회로(111)의 "bus bias present" 출력을 통해 전압 바이어스가 보조 마스터 노드(104')에 결합된 2-와이어 버스(106)의 업스트림 링크(예컨대, 마스터 노드(102)를 "향하는" 2-와이어 버스(106)의 링크) 상에 존재하는지를 결정할 수 있다. 이러한 전압 바이어스의 존재는 마스터 노드(102)가 연결되는지 여부를 나타낼 수 있으며; 전압 바이어스가 존재하지 않는다면, 마스터 노드(102)는 연결 해제될 수 있으며, 그 반대 또한 마찬가지이다. 프로세싱 디바이스(109)가 버스(106)의 업스트림 링크 상에서의 바이어스가 존재한다고 결정하면("bus biase present" 신호를 통해), 프로세싱 디바이스(109)는 1606으로 진행하며 1) 스스로를 슬레이브 노드 동작을 위해 구성하고 보조 마스터 노드(104')가 슬레이브로서 버스 링크(106)를 통해 마스터 노드(102)에 의해 구성될 것임을 수용하거나, 또는 2) 보조 마스터 노드(104')를 슬레이브 노드로서 구성하기 위해 보조 마스터 노드(104')와 통신하며(프로세싱 디바이스(109)의 "reconfig node transceiver" 출력 및 노드 트랜시버(120)의 "update config" 입력을 통해) 지속 신호를 전원 공급 장치(115)로 출력할 수 있다. 1606에서 슬레이브 동작을 위해 프로세싱 디바이스(109)를 구성한 후, 프로세싱 디바이스(109)는 버스(106)의 업스트림 링크 상에서의 바이어스가 더 이상 존재하지 않는다고 결정하면("bus bias present" 신호를 통해), 프로세싱 디바이스(109)는 1610으로 진행하며 지속 신호를 출력하는 것을 멈추고, 그 후 리셋하기 위해 1602로 진행할 수 있다. 그렇지 않다면, 1606에서 슬레이브 동작을 위해 프로세싱 디바이스(109)를 구성한 후, 프로세싱 디바이스(109)는 노드 트랜시버(120)가 마스터 노드(102)에 의해 탐색되었는지를 결정할 수 있으며(예컨대, 프로세싱 디바이스(109)의 "current config" 입력에서 수신된 노드 트랜시버(120)로부터의 "config'd as slave" 출력을 통해), 그렇다면 대기 상태(1608)에 들어갈 수 있다.
프로세싱 디바이스(109)는 정상 셧다운 명령이 수신되고, 호출-트리거링 신호가 수신되고, 호스트(110)가 보조 호출 하드웨어(163)(보조 마스터 노드(104')와 연관된)를 사용하여 호출을 개시하거나, 또는 버스(106)를 따라 업스트림으로의 통신이 손실될 때까지 대기 상태(1608)에 남아있을 수 있다. 몇몇 실시예들에서, 정상 셧다운 명령은 버스(106) 및 보조 마스터 노드(104')를 통해 호스트(110)/마스터 노드(102)로부터 프로세싱 디바이스(109)로 제공될 수 있다(예컨대, 보조 마스터 노드(104')와 프로세싱 디바이스(109) 간의 I2C 연결을 통해 메일박스 기능을 사용하여 메시지를 프로세싱 디바이스(109)로 전송함으로써). 정상 셧다운 명령이 대기 상태(1608)에 있는 동안 프로세싱 디바이스(109)에 의해 수신되면, 프로세싱 디바이스(109)는 1610으로 진행되고 지속 신호를 출력하는 것을 멈추며, 그 후 셧 다운하기 위해 전원-차단/리셋 상태(1602)로 진행할 수 있다. 몇몇 실시예들에서, 정상 구성 변화 요청은 프로세싱 디바이스(109)가 대기 상태(1658)에 있는 동안 버스(106) 및 보조 마스터 노드(104')를 통해 호스트(110)/마스터 노드(102)로부터 프로세싱 디바이스(109)로 제공될 수 있다(예컨대, 보조 마스터 노드(104')와 프로세싱 디바이스(109) 간의 I2C 연결을 통해 메일박스 기능을 사용하여 메시지를 프로세싱 디바이스(109)로 전송함으로써). 정상 구성 변화 요청이 대기 상태(1658)에 있는 동안 프로세싱 디바이스(109)에 의해 수신되면, 프로세싱 디바이스(109)는 계속해서 전원 공급 장치(115)로 지속 신호를 제공하면서 1662로 진행되고 스스로를 호스트로서 재구성할 수 있다.
대기 상태(1608)에서, 긴급 신호가 수신되면(예컨대, 프로세싱 디바이스(109)의 CALL 입력들을 통해), 또는 긴급 호출("eCALL") 버튼이 눌려지면(예컨대, 프로세싱 디바이스(109)의 CALL 입력들을 통해), 프로세싱 디바이스(109)는 논의된 실시예들 중 임의의 것에 따라, 긴급 번호(예컨대, 프로세싱 디바이스(109)에 있거나 또는 그 외 그것으로 액세스 가능한 메모리에 저장된)를 검색할 수 있다. 대기 상태(1608)에서, 컨시어지 버튼이 눌려지면(예컨대, 프로세싱 디바이스(109)의 CALL 입력들을 통해), 프로세싱 디바이스(109)는 상기 논의된 실시예들 중 임의의 것에 따라, 컨시어지 번호(예컨대, 프로세싱 디바이스(109)에 있거나 또는 그 외 그것으로 액세스 가능한 메모리에 저장된)를 검색할 수 있다. 긴급 번호(1620에서) 또는 컨시어지 번호(1622에서)를 검색한 후, 프로세싱 디바이스(109)는 1624에서 번호의 검색을 호스트(110)로 시그널링하며(예컨대, 보조 마스터 노드(104')와 프로세싱 디바이스(109) 간의 I2C 연결을 통해 메일박스 기능을 사용하여 메시지를 호스트(110)로 전송함으로써), 그 후 1626에서 호스트(110)로부터의 응답을 기다릴 수 있다(예컨대, 보조 마스터 노드(104')와 프로세싱 디바이스(109) 간의 I2C 연결을 통해 메일박스 기능을 사용하여 메시지를 프로세싱 디바이스(109)로 전송함으로써). 호스트(110)가 호출이 개시되어야 함을 성공적으로 표시하면, 프로세싱 디바이스(109)는 1628에서 검색된 번호로 전화를 걸 수 있다. 방법(1600)은 또한, 프로세싱 디바이스(109)가 대기 상태(1608)에 있을 때, 프로세싱 디바이스(109)가 임의의 특정 번호로 전화를 걸기 위해 호스트(110)로부터 지시를 수신할 수 있으며(예컨대, 보조 마스터 노드(104')와 프로세싱 디바이스(109) 간의 I2C 연결을 통해 메일박스 기능을 사용하여 메시지를 프로세싱 디바이스(109)로 전송함으로써), 프로세싱 디바이스(109)는 1628에서 전화를 걸도록 진행할 수 있다. 1628에서 걸린 호출이 종료될 때, 프로세싱 디바이스(109)는 대기 상태(1608)로 돌아올 수 있다.
1626에서 프로세싱 디바이스(109)가 호스트(110)로부터의 응답을 기다리는 동안 호스트(110)가 무응답이거나, 또는 프로세싱 디바이스(109)가 대기 상태(1608) 또는 호출 상태(1628)에 있는 동안 업스트림 통신이 손실되면(예컨대, 프로세싱 디바이스(109)의 "current config" 입력에서 수신된 노드 트랜시버(120)로부터의 "config'd as slave" 출력을 통해), 프로세싱 디바이스(109)는 1612에서 스스로를 호스트 디바이스로서 구성하도록 진행할 수 있으며 계속해서 지속 신호를 전원 공급 장치(115)로 제공할 수 있다. 프로세싱 디바이스(109)는 또한 1612에서 스스로를 호스트 디바이스로서 구성하도록 진행하고 프로세싱 디바이스(109)가, 1604에서 부트-업 후, 어떤 전압 바이어스도 보조 마스터 노드(104')에 결합된 2-와이어 버스(106)의 업스트림 링크 상에 존재하지 않는다고 결정하면 지속 신호를 출력할 수 있다. 1612에서 스스로를 호스트로서 구성한 후, 프로세싱 디바이스(109)는 1614에서 노드 트랜시버(120)를 마스터 디바이스로서 구성하기 위해 노드 트랜시버(120)와 통신할 수 있다(프로세싱 디바이스(109)의 "reconfig node transceiver" 출력 및 노드 트랜시버(120)의 "update config" 입력을 통해). 프로세싱 디바이스(109)는 그 후 여기에서 개시된 기술들 중 임의의 것에 따라 1616에서 다운스트림 슬레이브 노드들(104)(보조 시스템(140)의)의 탐색을 개시하고 그 후 대기 상태(1618)에 들어갈 수 있다. 대기 상태(1618)에 있는 동안, 프로세싱 디바이스(109)가 업스트림 버스 바이어스가 존재한다고 결정하면, 프로세싱 디바이스(109)는 전원-차단/리셋 상태(1602)로 진행할 수 있거나, 또는 스스로를 슬레이브 노드 동작을 위해 재구성하기 위해 1606으로 진행할 수 있으며 보조 마스터 노드(104')를 슬레이브로서 재구성할 수 있다(전원 공급 장치(115)를 위한 지속 신호를 계속해서 출력하면서).
대기 상태(1618)에서, 긴급 신호가 수신되면, 또는 긴급 호출("eCall") 버튼이 눌려지면(예컨대, 프로세싱 디바이스(109)의 CALL 입력들을 통해), 프로세싱 디바이스(109)는, 상기 논의된 실시예들 중 임의의 것에 따라, 긴급 번호(예컨대, 프로세싱 디바이스(109)에 있거나 또는 그 외 그것으로 액세스 가능한 메모리에 저장된)를 검색할 수 있다. 대기 상태(1618)에서, 컨시어지 버튼이 눌려지면, 프로세싱 디바이스(109)는, 상기 논의된 실시예들 중 임의의 것에 따라, 컨시어지 번호(예컨대, 프로세싱 디바이스(109)에 있거나 또는 그 외 그것으로 액세스 가능한 메모리에 저장된)를 검색할 수 있다. 긴급 번호(1630에서) 또는 컨시어지 번호(1632에서)를 검색한 후, 프로세싱 디바이스(109)는 1634에서 검색된 번호로 전화를 걸 수 있다. 1634에서 걸린 전화가 종료될 때, 프로세싱 디바이스(109)는 전원-차단/리셋 상태(1602)로 진행하고 리셋할 수 있다. 대안적인 실시예들에서, 1634에서 걸린 전화가 종료될 때, 프로세싱 디바이스(109)는 대기 상태(1618)로 돌아갈 수 있다.
몇몇 실시예들에서, 대기 상태(1618)에서 버스 바이어스의 검출은 계속해서 지속 신호를 출력하면서 프로세싱 디바이스(109)가 1606으로 진행하게 할 수 있다. 몇몇 실시예들에서, 외부 이벤트(예컨대, 푸시 버튼의 작동 또는 버스 바이어스의 부재)는 프로세싱 디바이스(109)가 대기 상태(1618)에서 1602(또는 임의의 다른 상태)로 진행하게 할 수 있다. 몇몇 실시예들에서, 프로세싱 디바이스(109)는 1620에서 1612로 바로 전이되고 리셋할 수 있거나, 또는 계속해서 전원 공급 장치(116)를 위해 지속 신호를 출력하면서 슬레이브로서 동작하도록 보조 마스터 노드(104')를 재구성할 수 있다.
도 23은 도 21에 예시된 통신 시스템(100)의 부분의 특정한 실시예를 예시한다. 도 23의 다수의 요소들은 도 18의 통신 시스템(100)과 공유되고; 이들 요소들은 도 18을 참조하여 여기에서 논의된 형태들 중 임의의 것을 취할 수 있으며, 논의의 명료성을 위해 반복되지 않을 것이다. 긴급 신호 및 eCall 버튼 신호에 대한 신호 라인들이 도 23에서 묘사되지만, 컨시어지 버튼 신호에 대한 유사한 신호 라인은 예시의 용이함을 위해 생략된다. 프로세싱 디바이스(109)는 지속 신호를 생성하기 위해 IO1 출력을 하이로 설정하며(지속 신호를 멈추기 위해 IO1 출력을 로우로 설정하며), 프로세싱 디바이스(109)의 IO5 입력은 노드 트랜시버(120)가 슬레이브로서 구성되고 탐색될 때 하이로 갈 수 있다. IO2 및 IO3 신호들에서의 변화들은 프로세싱 디바이스(109)에 의해 호스트(110)를 위한 메시지들(예컨대, 인터럽트들, 제어 메시지들, GPIO 대 GPIO 신호들 등)로 변환될 수 있다.
호출 하드웨어(153), 및 보조 호출 하드웨어(163 및 161)는 다수의 형태들 중 임의의 것을 취할 수 있다. 도 24는 보조 호출 지원 기능을 가진 하나의 예시적인 통신 시스템(100)을 예시한다. 특히, 도 24a는 정상 조건들하에서(즉, 마스터 노드(102)가 연결될 때) 통신 시스템(100)을 예시하며 도 24b는 보조 동작 조건들하에서(즉, 마스터 노드(102)가 연결 해제될 때) 통신 시스템(100)을 예시한다. 도 24의 통신 시스템(100)은 마스터 노드(102) 및 호스트(110)(여기에서 개시된 형태들 중 임의의 것을 취할 수 있는)를 포함하는 헤드 유닛(123)을 포함한다. 헤드 유닛(123)은, 정상 동작하에서, 음성 프로세싱 동작들을 수행할 수 있다. 마스터 노드(102)/호스트(110)와 연관된 호출 하드웨어(153)는 도시된 바와 같이, 하나 이상의 스피커들을 포함한다. 도 24의 통신 시스템(100)은 또한 프로세싱 디바이스(109)와 통신하며(I2S/TDM 인터페이스를 통해) 도시된 바와 같이, 증폭기(121)(예를 들어, 하나 이상의 ADC들, DAC들, 코덱들 등), 모뎀/안테나(119), 하나 이상의 스피커들, 및 하나 이상의 마이크로폰들(예컨대, 아날로그 또는 디지털 마이크로폰들)을 포함한 보조 호출 하드웨어(163)의 세트와 통신하는 보조 마스터 노드(104')를 포함한다. 도 24의 통신 시스템(100)은 또한 부가적인 마이크로폰들(예컨대, 아날로그 또는 디지털 마이크로폰들)을 포함하는 보조 호출 하드웨어(161)를 가진 하나 이상의 슬레이브 노드들(104)을 포함한다. 2-와이어 통신 버스(106)의 링크들은 도시된 바와 같이, 마스터 노드(102), 보조 마스터 노드(104'), 및 슬레이브 노드들(104)을 결합할 수 있다.
도 24a에 도시된 정상 동작 동안, 도 20 및 도 22의 방법들에 따라 걸린 호출들은 보조 호출 하드웨어(161)의 마이크로폰들, 보조 호출 하드웨어(163)의 모뎀/안테나(119), 및 호출 하드웨어(153)의 스피커들을 이용할 수 있다. 도 24b에 묘사된 동작의 보조 모드 동안, 도 20 및 도 22의 방법들에 따라 걸린 호출들은 보조 호출 하드웨어(163)의 모뎀/안테나(119), 스피커들, 및 마이크로폰들을 이용할 수 있다. 몇몇 실시예들에서, 동작의 정상 모드 동안, 도 20 및 도 22의 방법들에 따라 걸린 호출들은, 헤드 유닛(123)(즉, 호스트(110) 및 마스터 노드(102))의 제어하에서, 보조 호출 하드웨어(163)의 마이크로폰들 및 스피커들과 보조 호출 하드웨어(163)의 모뎀/안테나(119)를 이용할 수 있다. 도 25는 보조 호출 지원 기능을 가진 또 다른 예시적인 통신 시스템(100)을 예시한다. 특히, 도 25a는 정상 조건들하에서(즉, 마스터 노드(102)가 연결될 때) 통신 시스템(100)을 예시하며 도 25b는 보조 동작 조건들하에서(즉, 마스터 노드(102)가 연결 해제될 때) 통신 시스템(100)을 예시한다. 도 25의 통신 시스템(100)은 마스터 노드(102) 및 호스트(110)(여기에서 개시된 형태들 중 임의의 것을 취할 수 있는)를 포함하는 헤드 유닛(123)을 포함한다. 마스터 노드(102)/호스트(110)와 연관된 호출 하드웨어(153)는, 도시된 바와 같이, 하나 이상의 스피커들을 포함한다. 도 25의 통신 시스템(100)은 또한 도시된 바와 같이, 프로세싱 디바이스(109)와 통신하며(I2S/TDM 인터페이스를 통해) 증폭기(121), 모뎀/안테나(119), 및 하나 이상의 스피커들을 포함한 보조 호출 하드웨어(163)의 세트와 통신하는 보조 마스터 노드(104')를 포함한다. 도 25의 통신 시스템(100)은 부가적인 마이크로폰들을 포함하는 보조 호출 하드웨어(161)를 가진 하나 이상의 슬레이브 노드들(104)을 포함한다. 2-와이어 통신 버스(106)의 링크들은, 도시된 바와 같이, 마스터 노드(102), 보조 마스터 노드(104'), 및 슬레이브 노드들(104)을 결합할 수 있다.
도 25a에 묘사된 정상 동작 동안, 도 20 및 도 22의 방법들에 따라 걸린 호출들은 보조 호출 하드웨어(161)의 마이크로폰들, 보조 호출 하드웨어(163)의 모뎀/안테나(119), 및 호출 하드웨어(153)의 스피커들을 이용할 수 있다. 도 25b에 묘사된 동작의 보조 모드 동안, 도 20 및 도 22의 방법들에 따라 걸린 호출들은 보조 호출 하드웨어(163)의 모뎀/안테나(119) 및 스피커들, 뿐만 아니라 보조 호출 하드웨어(161)의 마이크로폰들을 이용할 수 있다. 몇몇 실시예들에서, 동작의 정상 모드 동안, 도 20 및 도 22의 방법들에 따라 걸린 호출들은, 헤드 유닛(123)(즉, 호스트(110) 및 마스터 노드(102))의 제어하에서, 보조 호출 하드웨어(163)의 스피커들 및 보조 호출 하드웨어(163)의 모뎀/안테나(119)를 이용할 수 있다.
다음의 단락들은 여기에서 개시된 실시예들의 다양한 것들의 예들을 제공한다.
예 1은 통신 시스템에서 보조 마스터 기능을 가진 장치이며, 상기 장치는: 노드 트랜시버를 포함하고, 상기 노드 트랜시버는 업스트림 마스터 노드 트랜시버로부터 2-와이어 버스의 두 개의 업스트림 와이어들을 통해 송신된 신호를 수신하기 위한 업스트림 트랜시버 회로 및 다운스트림 슬레이브 노드 트랜시버로부터 2-와이어 버스의 두 개의 다운스트림 와이어들을 통해 송신된 신호를 수신하기 위한 다운스트림 트랜시버 회로를 포함하고; 상기 노드 트랜시버는 상기 마스터 노드 트랜시버와의 통신이 작동 중일 때 슬레이브로서 동작하는 것이며, 상기 노드 트랜시버는 (1) 슬레이브로서 또는 마스터로서 선택적으로 동작하거나 또는 (2) 마스터 노드 트랜시버와의 통신이 작동하지 않거나 또는 요구되지 않을 때(예컨대, 긴급 호출이 결코 마스터 노드 트랜시버를 수반하지 않는 것이 선호될 때) 마스터로서 동작하는 것이다.
예 2는 예 1의 주제를 포함하며, 또한 상기 업스트림 트랜시버 회로가 2-와이어 버스의 두 개의 업스트림 와이어들 사이에서 전압 바이어스를 수신할 때 상기 노드 트랜시버가 슬레이브로서 동작하는 것이며, 업스트림 트랜시버 회로가 2-와이어 버스의 두 개의 업스트림 와이어들 사이에서 전압 바이어스를 수신하지 않을 때 노드 트랜시버가 마스터로서 동작하는 것임을 특정한다.
예 3은 예 1의 주제를 포함하며, 상기 노드 트랜시버에 통신적으로 결합된 프로세싱 디바이스를 추가로 포함하고, 상기 프로세싱 디바이스는 마스터 노드 트랜시버와의 통신이 작동 중인지를 검출하며 상기 마스터 노드 트랜시버와의 통신이 작동 중인지에 의존하여 상기 노드 트랜시버가 슬레이브로서 또는 마스터로서 동작하게 하기 위해 신호를 상기 노드 트랜시버로 제공하는 것이다.
예 4는 예 3의 주제를 포함하며, 또한 상기 프로세싱 디바이스가 집적 회로-간 사운드(I2S)/시간 분할 다중화(TDM) 버스, 직렬 주변장치 인터페이스(SPI) 버스, 또는 집적 회로-간(I2C) 버스에 의해 상기 노드 트랜시버에 통신적으로 결합된다는 것을 특정한다.
예 5는 예 3 내지 예 4 중 임의의 것의 주제를 포함하며, 또한 상기 마스터 노드 트랜시버와의 통신이 작동 중이지 않거나 또는 요구되지 않을 때 상기 프로세싱 디바이스가 스스로를 통신 시스템을 위한 호스트로서 구성하는 것임을 특정한다.
예 6은 예 3 내지 예 5 중 임의의 것의 주제를 포함하며, 또한 상기 마스터 노드 트랜시버와의 통신이 작동 중이지 않거나 또는 요구되지 않을 때 상기 프로세싱 디바이스가 또한 무선 통신을 나타내는 신호를 수신하며, 상기 신호에 응답하여 무선 통신을 개시하는 것임을 특정한다.
예 7은 예 6의 주제를 포함하며, 또한 무선 통신을 나타내는 신호가 긴급 신호임을 특정한다.
예 8은 예 7의 주제를 포함하며, 또하 무선 통신을 나타내는 신호가 제어기 영역 네트워크(CAN) 버스를 통해 수신된다는 것을 특정한다.
예 9는 예 6의 주제를 포함하며, 또한 무선 통신을 나타내는 신호가 수동 호출 버튼에 의해 트리거된다는 것을 특정한다.
예 10은 예 6의 주제를 포함하며, 또한 무선 통신을 나타내는 신호가 컨시어지 호출 버튼에 의해 트리거된다는 것을 특정한다.
예 11은 예 6 내지 예 10 중 임의의 것의 주제를 포함하며, 무선 통신을 하기 위해, 상기 프로세싱 디바이스에 결합된, 모뎀을 추가로 포함한다.
예 12는 예 11의 주제를 포함하며, 상기 모뎀에 결합된 안테나를 추가로 포함한다.
예 13은 예 6 내지 예 12 중 임의의 것의 주제를 포함하며, 상기 노드 트랜시버에 통신적으로 결합된 마이크로폰을 추가로 포함하고, 상기 무선 통신은 전화 호출이며, 상기 전화 호출을 위한 송출 데이터는 마이크로폰에 의해 제공되는 것이다.
예 14는 예 13의 주제를 포함하며, 또한 상기 마이크로폰은 적어도 부분적으로 집적 회로-간 사운드(I2S)/시간 분할 다중화(TDM) 버스 또는 펄스 밀도 변조(PDM) 인터페이스에 의해 상기 노드 트랜시버에 통신적으로 결합된다는 것을 특정한다.
예 15는 예 6 내지 예 14 중 임의의 것의 주제를 포함하며, 또한 상기 노드 트랜시버가 제 1 노드 트랜시버이고, 상기 제 1 노드 트랜시버는 제 2 노드 트랜시버로부터 2-와이어 버스의 두 개의 업스트림 와이어들을 통해 송신된 신호를 수신하기 위한 다운스트림 트랜시버 회로를 포함하고, 상기 무선 통신은 전화 호출이며, 상기 전화 호출을 위한 송출 데이터는 제 2 노드 트랜시버에 통신적으로 결합된 마이크로폰에 의해 제공된다는 것을 특정한다.
예 16은 예 6 내지 예 15 중 임의의 것의 주제를 포함하며, 상기 노드 트랜시버에 통신적으로 결합된 스피커를 추가로 포함하고, 상기 무선 통신을 위한 인입 데이터는 상기 스피커에 의해 출력되는 것이다.
예 17은 예 16의 주제를 포함하며, 또한 상기 스피커는 적어도 부분적으로 집적 회로-간 사운드(I2S)/시간 분할 다중화(TDM) 버스에 의해 상기 노드 트랜시버에 통신적으로 결합된다는 것을 특정한다.
예 18은 예 1 내지 예 17 중 임의의 것의 주제를 포함하며, 또한 상기 마스터 노드 트랜시버가 차량의 헤드 유닛에 있다는 것을 특정한다.
예 19는 예 1 내지 예 18 중 임의의 것의 주제를 포함하며, 또한 상기 마스터 노드 트랜시버가 호스트 디바이스에 결합된다는 것을 특정한다.
예 20은 예 1 내지 예 19 중 임의의 것의 주제를 포함하며, 또한 상기 노드 트랜시버가 차량에 위치된다는 것을 특정한다.
예 21은 통신 시스템에서 보조 마스터 기능을 가진 장치이며, 상기 장치는: 슬레이브 노드 트랜시버로서, 상기 슬레이브 노드 트랜시버는 업스트림 마스터 노드 트랜시버로부터 2-와이어 버스의 두 개의 업스트림 와이어들을 통해 송신된 신호를 수신하기 위한 업스트림 트랜시버 회로를 포함하며, 상기 마스터 노드 트랜시버는 통신 시스템을 위해 호스트 디바이스에 결합되는, 상기 슬레이브 노드 트랜시버; 및 상기 슬레이브 노드 트랜시버에 통신적으로 결합된 프로세싱 디바이스로서, 상기 프로세싱 디바이스는 상기 슬레이브 노드 트랜시버와 상기 마스터 노드 트랜시버 사이에서의 통신이 작동 중인지를 검출하며, 통신이 작동 중이지 않을 때, 상기 슬레이브 노드 트랜시버가 보조 마스터로서 동작하게 하며 상기 프로세싱 디바이스가 보조 호스트로서 동작하게 하는 것인, 상기 프로세싱 디바이스를 포함한다.
예 22는 예 21의 주제를 포함하며, 또한 상기 프로세싱 디바이스는, 업스트림 트랜시버 회로가 2-와이어 버스의 두 개의 업스트림 와이어들 사이에서 전압 바이어스를 수신할 때 상기 슬레이브 노드 트랜시버와 마스터 노드 트랜시버 사이에서의 통신이 작동 중임을 검출하는 것이며, 상기 프로세싱 디바이스는, 업스트림 트랜시버 회로가 2-와이어 버스의 두 개의 업스트림 와이어들 사이에서 전압 바이어스를 수신하지 않을 때 상기 슬레이브 노드 트랜시버와 상기 마스터 노드 트랜시버 사이에서의 통신이 작동 중이지 않음을 검출하는 것임을 특정한다.
예 23은 예 21 내지 예 22 중 임의의 것의 주제를 포함하며, 또한 상기 슬레이브 노드 트랜시버와 상기 마스터 노드 트랜시버 사이에서의 통신이 작동 중일 때 호스트 디바이스가 2-와이어 버스를 통해 수신되고 송신된 데이터를 사용하여 전화 호출들을 하고 이를 수신하는 것이며, 보조 호스트는 슬레이브 노드 트랜시버와 마스터 노드 트랜시버 사이에서의 통신이 작동 중이지 않을 때 전화 호출들을 하고 이를 수신하기 위한 것임을 특정한다.
예 24는 예 21 내지 예 23 중 임의의 것의 주제를 포함하며, 또한 프로세싱 디바이스가 집적 회로-간 사운드(I2S)/시간 분할 다중화(TDM) 버스에 의해 슬레이브 노드 트랜시버에 통신적으로 결합된다는 것을 특정한다.
예 25는 예 21 내지 예 24 중 임의의 것의 주제를 포함하며, 또한 슬레이브 노드 트랜시버와 마스터 노드 트랜시버 사이에서의 통신이 작동 중이지 않을 때 프로세싱 디바이스가 전화 호출을 나타내는 신호를 수신하며, 상기 신호에 응답하여 전화 호출을 개시하는 것임을 특정한다.
예 26은 예 25의 주제를 포함하며, 또한 전화 호출을 나타내는 상기 신호는 긴급 신호임을 특정한다.
예 27은 예 26의 주제를 포함하며, 또한 전화 호출을 나타내는 상기 신호는 제어기 영역 네트워크(CAN) 버스를 통해 수신된다는 것을 특정한다.
예 28은 예 26 내지 예 27 중 임의의 것의 주제를 포함하며, 또한 전화 호출을 나타내는 상기 신호가 에어백 전개에 의해 트리거된다는 것을 특정한다.
예 29는 예 25의 주제를 포함하며, 또한 전화 호출을 나타내는 상기 신호가 수동 호출 버튼에 의해 트리거된다는 것을 특정한다.
예 30은 예 25의 주제를 포함하며, 또한 전화 호출을 나타내는 신호가 컨시어지 호출 버튼에 의해 트리거된다는 것을 특정한다.
예 31은 예 25 내지 예 30 중 임의의 것의 주제를 포함하며, 전화 호출을 하기 위해, 상기 프로세싱 디바이스에 결합된, 모뎀을 추가로 포함한다.
예 32는 예 31의 주제를 포함하며, 상기 모뎀에 결합된 안테나를 추가로 포함하고, 상기 전화 호출은 무선 전화 호출이다.
예 33은 예 25 내지 예 32 중 임의의 것의 주제를 포함하며, 상기 슬레이브 노드 트랜시버에 통신적으로 결합된 마이크로폰을 추가로 포함하고, 상기 전화 호출을 위한 송출 데이터는 상기 마이크로폰에 의해 제공되는 것이다.
예 34는 예 33의 주제를 포함하며, 또한 상기 마이크로폰은 적어도 부분적으로 집적 회로-간 사운드(I2S)/시간 분할 다중화(TDM) 버스 또는 펄스 밀도 변조(PDM) 인터페이스에 의해 상기 슬레이브 노드 트랜시버에 통신적으로 결합된다는 것을 특정한다.
예 35는 예 25 내지 예 34 중 임의의 것의 주제를 포함하며, 또한 상기 슬레이브 노드 트랜시버는 제 1 슬레이브 노드 트랜시버이고, 상기 제 1 슬레이브 노드 트랜시버는 제 2 슬레이브 노드 트랜시버로부터 2-와이어 버스의 두 개의 다운스트림 와이어들을 통해 송신된 신호를 수신하기 위해 다운스트림 트랜시버 회로를 포함하며, 상기 전화 호출을 위한 송출 데이터는 상기 제 2 슬레이브 노드 트랜시버에 통신적으로 결합된 마이크로폰에 의해 제공된다는 것을 특정한다.
예 36은 예 25 내지 예 35 중 임의의 것의 주제를 포함하며, 상기 슬레이브 노드 트랜시버에 통신적으로 결합된 스피커를 추가로 포함하고, 상기 전화 호출을 위한 인입 데이터는 상기 스피커에 의해 출력되는 것이다.
예 37은 예 36의 주제를 포함하며, 또한 상기 스피커는 적어도 부분적으로 집적 회로-간 사운드(I2S)/시간 분할 다중화(TDM) 버스에 의해 상기 슬레이브 노드 트랜시버에 통신적으로 결합된다는 것을 특정한다.
예 38은 예 21 내지 예 37 중 임의의 것의 주제를 포함하며, 또한 상기 마스터 노드 트랜시버가 차량의 헤드 유닛에 있다는 것을 특정한다.
예 39는 예 21 내지 예 38 중 임의의 것의 주제를 포함하며, 또한 상기 마스터 노드 트랜시버는 호스트 디바이스에 결합된다는 것을 특정한다.
예 40은 예 21 내지 예 39 중 임의의 것의 주제를 포함하며, 상기 마스터 노드 트랜시버를 추가로 포함한다.
예 41은 예 21 내지 예 40 중 임의의 것의 주제를 포함하며, 상기 호스트 디바이스를 추가로 포함한다.
예 42는 데이지-체인 2-와이어 통신 시스템에서 보조 마스터로서 동작하는 방법이며, 상기 방법은: 슬레이브 노드에 결합된 프로세싱 디바이스에 의해, 상기 2-와이어 통신 시스템의 마스터 노드가 연결 해제되었다는 표시를 수신하는 단계; 및 상기 표시에 응답하여, 상기 프로세싱 디바이스에 의해, 상기 슬레이브 노드가 상기 2-와이어 통신 시스템의 보조 부분에 대한 마스터 기능들을 수행하게 하는 단계를 포함한다.
예 43은 예 42의 주제를 포함하며, 상기 프로세싱 디바이스에 의해, 상기 마스터 노드가 재연결되었다는 표시를 수신하는 단계; 및 상기 마스터 노드가 재연결되었다는 표시에 응답하여, 상기 프로세싱 디바이스에 의해, 상기 슬레이브 노드가 마스터 기능들의 수행을 중단하게 하는 단계를 추가로 포함한다.
예 44는 예 42 내지 예 43 중 임의의 것의 주제를 포함하며, 또한 상기 마스터 노드가 연결 해제되었다는 표시는 상기 마스터 노드와 상기 슬레이브 노드 간의 2-와이어 통신 시스템의 일 부분 상에서 무 전압 바이어스의 검출을 포함한다는 것을 특정한다.
예 45는 예 42 내지 예 44 중 임의의 것의 주제를 포함하며, 상기 표시에 응답하여, 상기 프로세싱 디바이스에 의해, 상기 프로세싱 디바이스가 상기 2-와이어 통신 시스템의 보조 부분에 대한 호스트 기능들을 수행하게 하는 단계를 추가로 포함한다.
예 46은 예 42 내지 예 45 중 임의의 것의 주제를 포함하며, 상기 슬레이브 노드가 마스터 기능들을 수행하게 한 후, 상기 프로세싱 디바이스에 의해, 개시될 무선 통신을 나타내는 신호를 수신하는 단계; 및 상기 프로세싱 디바이스에 의해, 상기 무선 통신이 개시되게 하는 단계를 추가로 포함한다.
예 47은 예 46의 주제를 포함하며, 또한 상기 신호는 긴급 신호, 수동 호출 버튼의 작동, 또는 컨시어지 버튼의 작동을 포함한다는 것을 특정한다.
예 48은 보조 마스터 기능을 가진 통신 시스템이며, 상기 통신 시스템은 복수의 다운스트림 슬레이브 노드들에 결합된 마스터 노드를 포함하고, 상기 슬레이브 노드들 중 적어도 하나는 상기 마스터 노드가 상기 통신 시스템으로부터 연결 해제될 때 마스터 노드 기능들을 수행할 수 있다.
예 49는 예 48의 주제를 포함하며, 또한 상기 슬레이브 노드들 중 적어도 하나에 결합된 프로세싱 디바이스는 상기 마스터 노드가 상기 통신 시스템으로부터 연결 해제될 때 상기 슬레이브 노드들 중 적어도 하나의 탐색을 수행하는 것임을 특정한다.
예 50은 예 48 내지 예 49 중 임의의 것의 주제를 포함하며, 또한 상기 슬레이브 노드들 중 적어도 하나는 상기 마스터 노드가 상기 통신 시스템에 재연결될 때 마스터 노드 기능들을 수행하는 것을 중단하는 것을 특정한다.
예 51은 여기에서 개시된 실시예들 중 임의의 것에 따른, 보조 마스터 기능을 가진 통신 시스템이다.
예 52는 여기에서 개시된 실시예들 중 임의의 것에 따른, 보조 호출 지원 기능을 가진 통신 시스템이다.
예 53은 여기에서 개시된 실시예들 중 임의의 것에 따른, 통신 시스템에서 보조 마스터로서 슬레이브 노드를 사용하는 방법이다.
예 54는 여기에서 개시된 실시예들 중 임의의 것에 따른, 보조 마스터 기능을 위한 수단들을 포함한 통신 시스템이다.
예 55는 여기에서 개시된 방법들 중 임의의 것을 수행하기 위한 수단들을 포함한 통신 시스템이다.

Claims (20)

  1. 통신 시스템에서 보조 마스터 기능을 가진 장치에 있어서,
    노드 트랜시버로서, 상기 노드 트랜시버는 업스트림 마스터 노드 트랜시버로부터 2-와이어 버스의 두 개의 업스트림 와이어들을 통해 송신된 신호를 수신하기 위한 업스트림 트랜시버 회로 및 다운스트림 슬레이브 노드 트랜시버로부터 상기 2-와이어 버스의 두 개의 다운스트림 와이어들을 통해 송신된 신호를 수신하기 위한 다운스트림 트랜시버 회로를 포함하는, 상기 노드 트랜시버를 포함하며;
    상기 노드 트랜시버는 슬레이브 또는 마스터로서 선택적으로 동작하는 것인, 보조 마스터 기능을 가진 장치.
  2. 청구항 1에 있어서,
    상기 노드 트랜시버는 상기 마스터 노드 트랜시버와의 통신이 작동 중일 때 슬레이브로서 동작하는 것이며, 상기 노드 트랜시버는 상기 마스터 노드 트랜시버와의 통신이 작동 중이지 않을 때 마스터로서 동작하는 것인, 보조 마스터 기능을 가진 장치.
  3. 청구항 1에 있어서,
    상기 노드 트랜시버는 상기 업스트림 트랜시버 회로가 상기 2-와이어 버스의 두 개의 업스트림 와이어들 사이에서 전압 바이어스를 수신할 때 슬레이브로서 동작하는 것이며, 상기 노드 트랜시버는 상기 업스트림 트랜시버 회로가 상기 2-와이어 버스의 두 개의 업스트림 와이어들 사이에서 전압 바이어스를 수신하지 않을 때 마스터로서 동작하는 것인, 보조 마스터 기능을 가진 장치.
  4. 청구항 1에 있어서,
    상기 노드 트랜시버에 통신적으로 결합된 프로세싱 디바이스로서, 상기 프로세싱 디바이스는 상기 노드 트랜시버가 슬레이브로서 또는 마스터로서 동작하게 하기 위해 상기 노드 트랜시버로 신호를 제공하는 것인, 상기 프로세싱 디바이스를 더 포함하는, 보조 마스터 기능을 가진 장치.
  5. 청구항 4에 있어서,
    상기 프로세싱 디바이스는 상기 마스터 노드 트랜시버와의 통신이 작동 중인지를 검출하며 상기 마스터 노드 트랜시버와의 통신이 작동 중인지에 의존하여 슬레이브로서 또는 마스터로서 동작하도록 상기 노드 트랜시버에 신호를 제공하는 것인, 보조 마스터 기능을 가진 장치.
  6. 청구항 4에 있어서,
    상기 프로세싱 디바이스는 상기 노드 트랜시버가 마스터로서 동작할 때 스스로를 상기 통신 시스템을 위한 호스트로서 구성하는 것인, 보조 마스터 기능을 가진 장치.
  7. 청구항 4에 있어서,
    상기 프로세싱 디바이스는 또한 상기 노드 트랜시버가 마스터로서 동작할 때 무선 통신을 나타내는 신호를 수신하며, 상기 신호에 응답하여 상기 무선 통신을 개시하는 것인, 보조 마스터 기능을 가진 장치.
  8. 청구항 7에 있어서,
    상기 무선 통신을 나타내는 신호는 긴급 신호이거나, 또는 상기 무선 통신을 나타내는 신호는 수동 호출 버튼 또는 컨시어지 호출 버튼에 의해 트리거되는, 보조 마스터 기능을 가진 장치.
  9. 통신 시스템에서 보조 마스터 기능을 가진 장치에 있어서,
    슬레이브 노드 트랜시버로서, 상기 슬레이브 노드 트랜시버는 업스트림 마스터 노드 트랜시버로부터 2-와이어 버스의 두 개의 업스트림 와이어들을 통해 송신된 신호를 수신하기 위해 업스트림 트랜시버 회로를 포함하며, 상기 마스터 노드 트랜시버는 상기 통신 시스템을 위해 호스트 디바이스에 결합되는, 상기 슬레이브 노드 트랜시버; 및
    상기 슬레이브 노드 트랜시버에 통신적으로 결합된 프로세싱 디바이스로서, 상기 프로세싱 디바이스는 상기 슬레이브 노드 트랜시버와 상기 마스터 노드 트랜시버 사이에서의 통신이 작동 중인지를 검출하는 것이며, 통신이 작동 중이지 않을 때, 상기 슬레이브 노드 트랜시버가 보조 마스터로서 동작하게 하고 상기 프로세싱 디바이스가 보조 호스트로서 동작하게 하는, 상기 프로세싱 디바이스를 포함하는, 보조 마스터 기능을 가진 장치.
  10. 청구항 9에 있어서,
    상기 프로세싱 디바이스는 상기 슬레이브 노드 트랜시버와 상기 마스터 노드 트랜시버 사이에서의 통신이 작동 중이지 않을 때 전화 호출을 나타내는 신호를 수신하며, 상기 신호에 응답하여 상기 전화 호출을 개시하는 것인, 보조 마스터 기능을 가진 장치.
  11. 청구항 10에 있어서,
    상기 슬레이브 노드 트랜시버에 통신적으로 결합된 마이크로폰을 더 포함하며, 상기 전화 호출을 위한 송출 데이터는 상기 마이크로폰에 의해 제공되는 것인, 보조 마스터 기능을 가진 장치.
  12. 청구항 10에 있어서,
    상기 슬레이브 노드 트랜시버는 제 1 슬레이브 노드 트랜시버이고, 상기 제 1 슬레이브 노드 트랜시버는 제 2 슬레이브 노드 트랜시버로부터 상기 2-와이어 버스의 두 개의 다운스트림 와이어들을 통해 송신된 신호를 수신하기 위해 다운스트림 트랜시버 회로를 포함하며, 상기 전화 호출을 위한 송출 데이터는 상기 제 2 슬레이브 노드 트랜시버에 통신적으로 결합된 마이크로폰에 의해 제공되는 것인, 보조 마스터 기능을 가진 장치.
  13. 청구항 10에 있어서,
    상기 슬레이브 노드 트랜시버에 통신적으로 결합된 스피커를 더 포함하며, 상기 전화 호출을 위한 인입 데이터는 상기 스피커에 의해 출력되는 것인, 보조 마스터 기능을 가진 장치.
  14. 청구항 9에 있어서,
    상기 마스터 노드 트랜시버는 차량의 헤드 유닛에 있는, 보조 마스터 기능을 가진 장치.
  15. 청구항 9에 있어서,
    상기 마스터 노드 트랜시버는 호스트 디바이스에 결합되는, 보조 마스터 기능을 가진 장치.
  16. 청구항 9에 있어서,
    상기 마스터 노드 트랜시버 또는 상기 호스트 디바이스를 더 포함하는, 보조 마스터 기능을 가진 장치.
  17. 데이지-체인 2-와이어 통신 시스템에서 보조 마스터로서 동작하는 방법에 있어서,
    슬레이브 노드에 결합된 프로세싱 디바이스에 의해, 상기 데이지-체인 2-와이어 통신 시스템의 마스터 노드가 연결 해제되었다는 표시를 수신하는 단계; 및
    상기 표시에 응답하여, 상기 프로세싱 디바이스에 의해, 상기 슬레이브 노드가 상기 데이지-체인 2-와이어 통신 시스템의 보조 부분에 대한 마스터 기능들을 수행하게 하는 단계를 포함하는, 보조 마스터로서 동작하는 방법.
  18. 청구항 17에 있어서,
    상기 프로세싱 디바이스에 의해, 상기 마스터 노드가 재연결되었다는 표시를 수신하는 단계; 및
    상기 마스터 노드가 재연결되었다는 상기 표시에 응답하여, 상기 프로세싱 디바이스에 의해, 상기 슬레이브 노드가 마스터 기능들의 수행을 중단하게 하는 단계를 더 포함하는, 보조 마스터로서 동작하는 방법.
  19. 청구항 17에 있어서,
    상기 표시에 응답하여, 상기 프로세싱 디바이스에 의해, 상기 프로세싱 디바이스가 상기 2-와이어 통신 시스템의 보조 부분에 대한 호스트 기능들을 수행하게 하는 단계를 더 포함하는, 보조 마스터로서 동작하는 방법.
  20. 청구항 17에 있어서,
    상기 슬레이브 노드가 마스터 기능들을 수행하게 한 후, 상기 프로세싱 디바이스에 의해, 개시될 무선 통신을 나타내는 신호를 수신하는 단계; 및
    상기 프로세싱 디바이스에 의해, 상기 무선 통신이 개시되게 하는 단계를 더 포함하는, 보조 마스터로서 동작하는 방법.
KR1020190176601A 2019-01-04 2019-12-27 보조 마스터 및 보조 호출 지원 기능을 가진 통신 시스템들 KR20200085221A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/239,798 US10856199B2 (en) 2019-01-04 2019-01-04 Communication systems with auxiliary master and auxiliary call support functionality
US16/239,798 2019-01-04

Publications (1)

Publication Number Publication Date
KR20200085221A true KR20200085221A (ko) 2020-07-14

Family

ID=71104121

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190176601A KR20200085221A (ko) 2019-01-04 2019-12-27 보조 마스터 및 보조 호출 지원 기능을 가진 통신 시스템들

Country Status (3)

Country Link
US (1) US10856199B2 (ko)
KR (1) KR20200085221A (ko)
DE (1) DE102019135220A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102135772B1 (ko) * 2018-10-31 2020-07-20 효성중공업 주식회사 이중화 보드 및 이중화 보드의 마스터/슬레이브 설정방법
US10884972B2 (en) * 2019-05-08 2021-01-05 Analog Devices, Inc. Communication systems with serial peripheral interface functionality
US11663999B2 (en) * 2019-12-27 2023-05-30 Roland Corporation Wireless communication device, wireless communication method, and non-transitory computer-readable storage medium
US11411607B2 (en) 2020-01-07 2022-08-09 Analog Devices, Inc. Audio and lighting control via a communication bus
TWI773247B (zh) * 2021-04-13 2022-08-01 新唐科技股份有限公司 匯流排系統
EP4113871A1 (de) * 2021-07-01 2023-01-04 B&R Industrial Automation GmbH Signalempfang mit hoher auflösung
US11888498B2 (en) 2022-01-18 2024-01-30 Analog Devices International Unlimited Company Elimination of probability of bit errors in successive approximation register (SAR) analog-to-digital converter (ADC) logic

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5819051A (en) 1995-12-29 1998-10-06 Compaq Computer Corporation Low speed serial bus protocol and circuitry
US7315551B2 (en) 2002-03-15 2008-01-01 Lockheed Martin Corporation Synchronous low voltage differential I/O buss
US7158596B2 (en) 2002-08-14 2007-01-02 Standard Microsystems Corp. Communication system and method for sending and receiving data at a higher or lower sample rate than a network frame rate using a phase locked loop
US7272202B2 (en) 2002-08-14 2007-09-18 Standard Microsystems Corp. Communication system and method for generating slave clocks and sample clocks at the source and destination ports of a synchronous network using the network frame rate
US8667194B2 (en) 2003-12-15 2014-03-04 Finisar Corporation Two-wire interface in which a master component monitors the data line during the preamble generation phase for synchronization with one or more slave components
US7395362B2 (en) 2006-02-03 2008-07-01 Standard Microsystems Corporation Method for a slave device to convey an interrupt and interrupt source information to a master device
JP2007215102A (ja) 2006-02-13 2007-08-23 Denso Corp 通信装置
JP4918866B2 (ja) 2006-03-13 2012-04-18 ミツミ電機株式会社 通信装置、半導体集積回路装置及び通信システム
US7707437B2 (en) 2006-05-03 2010-04-27 Standard Microsystems Corporation Method, system, and apparatus for a plurality of slave devices determining whether to adjust their power state based on broadcasted power state data
US7966379B2 (en) 2006-05-05 2011-06-21 Standard Microsystems Corporation In-band event polling
US7802036B2 (en) 2007-02-06 2010-09-21 Seiko Epson Corporation Serial communication system using an I2C bus as a serial bus
US8806083B2 (en) 2007-05-15 2014-08-12 Texas Instruments Incorporated Identification address configuration circuit and method without use of dedicated address pins
US8400061B2 (en) * 2007-07-17 2013-03-19 I/O Controls Corporation Control network for LED-based lighting system in a transit vehicle
AU2008221607A1 (en) 2007-09-25 2009-04-09 Acei Ab A gaming network
US8700830B2 (en) 2007-11-20 2014-04-15 Spansion Llc Memory buffering system that improves read/write performance and provides low latency for mobile systems
FR2927308B1 (fr) 2008-02-08 2010-10-22 Airbus France Systeme distribue de commande de vol.
US8185759B1 (en) 2008-11-06 2012-05-22 Smsc Holdings S.A.R.L. Methods and systems for interfacing bus powered devices with host devices providing limited power levels
US8156274B2 (en) 2009-02-02 2012-04-10 Standard Microsystems Corporation Direct slave-to-slave data transfer on a master-slave bus
US8615091B2 (en) 2010-09-23 2013-12-24 Bose Corporation System for accomplishing bi-directional audio data and control communications
EP2442587A1 (en) 2010-10-14 2012-04-18 Harman Becker Automotive Systems GmbH Microphone link system
JP5655562B2 (ja) 2010-12-28 2015-01-21 ソニー株式会社 電子機器、電子機器の制御方法、送信装置および受信装置
US9448959B2 (en) 2012-10-05 2016-09-20 Analog Devices, Inc. Two-wire communication protocol engine
EP4180981A1 (en) 2011-10-05 2023-05-17 Analog Devices, Inc. Two-wire communication system for high-speed data and power distribution
US10311010B2 (en) 2011-10-05 2019-06-04 Analog Devices, Inc. Two-wire communication systems and applications
US8987933B2 (en) 2012-04-30 2015-03-24 Broadcom Corporation Power over one-pair Ethernet approach
FR2996322A1 (fr) 2012-10-02 2014-04-04 St Microelectronics Rousset Procede de gestion du fonctionnement d'un circuit connecte sur un bus a deux fils, en particulier un bus i²c, et circuit correspondant
US9772665B2 (en) 2012-10-05 2017-09-26 Analog Devices, Inc. Power switching in a two-wire conductor system
US8873659B2 (en) 2012-10-19 2014-10-28 Broadcom Corporation Reduced pair Ethernet transmission system
DE102013001385A1 (de) 2013-01-26 2014-07-31 Audi Ag Kraftfahrzeug und Mikrofon für eine Mikrofonanordnung in dem Kraftfahrzeug
US9514086B2 (en) 2013-03-13 2016-12-06 Atieva, Inc. Configuration switch for a broadcast bus
US9946675B2 (en) 2013-03-13 2018-04-17 Atieva, Inc. Fault-tolerant loop for a communication bus
US9229889B2 (en) 2013-03-13 2016-01-05 Atieva, Inc. Dual voltage communication bus
US9225556B2 (en) 2013-06-07 2015-12-29 Broadcom Corporation Multiplexed packet local area networking using an Ethernet physical layer device
US9059724B2 (en) 2013-07-08 2015-06-16 Analog Devices, Inc. Differential decoder
US9197226B2 (en) 2013-07-08 2015-11-24 Analog Devices, Inc. Digital phase detector
US20150032599A1 (en) 2013-07-23 2015-01-29 Xsolla ( USA) Inc. Computer-based method for sorting payment systems
WO2015023707A1 (en) 2013-08-12 2015-02-19 Analog Devices, Inc. Systems and methods for noise canceling
US10250376B2 (en) 2016-01-29 2019-04-02 Analog Devices, Inc. Clock sustain in the absence of a reference clock in a communication system
US10397021B2 (en) 2016-01-29 2019-08-27 Analog Devices, Inc. Synchronous slave-to-slave communications
US10872049B2 (en) 2016-01-29 2020-12-22 Analog Devices, Inc. GPIO-to-GPIO communication on a multi-node daisy-chained network
US9851938B2 (en) 2016-04-26 2017-12-26 Analog Devices, Inc. Microphone arrays and communication systems for directional reception
KR20220101776A (ko) 2016-08-25 2022-07-19 아나로그 디바이시즈 인코포레이티드 원격 버스 활성화를 위한 시스템들 및 기술들
US10482056B2 (en) * 2017-11-21 2019-11-19 Qualcomm Incorporated Transfer of master duties to a slave on a communication bus

Also Published As

Publication number Publication date
DE102019135220A1 (de) 2020-07-09
US10856199B2 (en) 2020-12-01
US20200221362A1 (en) 2020-07-09

Similar Documents

Publication Publication Date Title
KR102535076B1 (ko) 원격 버스 활성화를 위한 시스템들 및 기술들
US10856199B2 (en) Communication systems with auxiliary master and auxiliary call support functionality
JP6908665B2 (ja) スレーブ対スレーブ同期通信
US10649945B1 (en) Non-native digital interface support over a two-wire communication bus
KR101932686B1 (ko) 다중 노드 데이지-체인 네트워크 상에서 gpio 대 gpio 통신
US9946680B2 (en) Peripheral device diagnostics and control over a two-wire communication bus
US10250376B2 (en) Clock sustain in the absence of a reference clock in a communication system
US10852799B2 (en) Adaptive use of multiple power supplies in communication systems
US11874791B2 (en) Two-wire communication systems and applications
JP6957549B2 (ja) 動的ヒステリシス回路
US11409690B2 (en) Communication systems with serial peripheral interface functionality
WO2022087076A1 (en) Node discovery and configuration in a daisy-chained network
CN109257260B (zh) 通信系统中多个电源的适应性应用

Legal Events

Date Code Title Description
A201 Request for examination