DE112021005545T5 - Knotenerkennung und -konfiguration in einem daisy-chain-netzwerk - Google Patents

Knotenerkennung und -konfiguration in einem daisy-chain-netzwerk Download PDF

Info

Publication number
DE112021005545T5
DE112021005545T5 DE112021005545.3T DE112021005545T DE112021005545T5 DE 112021005545 T5 DE112021005545 T5 DE 112021005545T5 DE 112021005545 T DE112021005545 T DE 112021005545T DE 112021005545 T5 DE112021005545 T5 DE 112021005545T5
Authority
DE
Germany
Prior art keywords
subnode
information
nodes
node
data
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
DE112021005545.3T
Other languages
English (en)
Inventor
Naveen Kumar Kirgaval Madegowda
Martin Kessler
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Analog Devices Inc
Original Assignee
Analog Devices Inc
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 Analog Devices Inc filed Critical Analog Devices Inc
Publication of DE112021005545T5 publication Critical patent/DE112021005545T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/12Arrangements for remote connection or disconnection of substations or of equipment thereof
    • 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/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/0816Configuration setting characterised by the conditions triggering a change of settings the condition being an adaptation, e.g. in response to network events

Abstract

Hierin offenbart werden Systeme und Verfahren zur Knotenerkennung und - konfiguration in einem Daisy-Chain-Netzwerk. In manchen Ausführungsformen beispielsweise kann ein Hauptknoten die Topologie und Identität von Subknoten in einem Daisy-Chain-Netzwerk „selbst erkennen“, sodass Änderungen der Topologie ohne wesentliche Unterbrechungen der Datenübertragung in dem Netzwerk leicht angepasst werden können.

Description

  • Querverweis auf verwandte Anmeldungen
  • Diese Anmeldung beansprucht das Vorrecht von und die Priorität der vorläufigen US-Anmeldung Seriennr. 63/094.720, mit dem Titel „Node Discovery and Configuration in a Daisy-Chained Network“, die hierin in ihrer Gesamtheit durch Verweis aufgenommen ist.
  • Fachgebiet der Offenbarung
  • Die vorliegende Offenbarung betrifft Systeme und Vorrichtungen in einem Daisy-Chain-Netzwerk.
  • Hintergrund
  • Durch die abnehmende Größe von elektronischen Komponenten und die steigenden Erwartungen an deren Leistungsfähigkeit werden mehr Komponenten in zuvor nicht instrumentierten oder weniger instrumentierten Vorrichtungen inkludiert. In manchen Fällen erforderte die Kommunikationsinfrastruktur, die zum Austausch von Signalen zwischen diesen Komponenten verwendet wird (z. B. in einem Fahrzeug), dicke und schwere Kabelbündel.
  • Die Offenbarung soll einen Überblick des Gegenstands der vorliegenden Patentanmeldung bereitstellen. Sie soll keine ausschließliche oder erschöpfende Erklärung der Erfindung bereitstellen. Weitere Einschränkungen und Nachteile herkömmlicher und traditioneller Ansätze werden Fachleuten auf dem Gebiet der Erfindung durch den Vergleich solcher Systeme mit manchen Aspekten der vorliegenden Erfindung, wie in dem Rest der vorliegenden Anmeldung in Bezug auf die Zeichnungen dargelegt, offenkundig.
  • Zusammenfassung der Offenbarung
  • Hierin offenbart werden Systeme und Verfahren zur Knotenerkennung und - konfiguration in einem Daisy-Chain-Netzwerk. In manchen Ausführungsformen beispielsweise kann ein Hauptknoten die Topologie und Identität von Subknoten in einem Daisy-Chain-Netzwerk „selbst erkennen“, sodass Änderungen der Topologie ohne wesentliche Unterbrechungen der Datenübertragung in dem Netzwerk leicht angepasst werden können.
  • Gemäß einem Aspekt weist ein Verfahren zur Knotenerkennung und - konfiguration in einem Daisy-Chain-Netzwerk, aufweisend eine Vielzahl von Knoten, Folgendes auf: Bestimmen, dass zumindest ein neuer Subknoten zu der Vielzahl von Knoten hinzugefügt wurde; Erkennen des zumindest einen neuen Subknotens; Lesen von Modulinformationen für den zumindest einen neuen Subknoten; Konfigurieren des zumindest einen neuen Subknotens; Konfigurieren eines Systems, aufweisend ein Daisy-Chain-Netzwerk, basierend auf Informationen von jedem aus der Vielzahl von Knoten; und periodisches Einleiten eines Erkennungsversuchs, wobei der Erkennungsversuch das Bestimmen aufweist, ob zumindest ein neuerer Subknoten zu dem Daisy-Chain-Netzwerk hinzugefügt wurde.
  • In mehreren Beispielen weist der zumindest eine neue Subknoten einen ersten neuen Subknoten auf, und der zumindest eine neuere Subknoten weist einen zweiten neuen Subknoten auf, der zu dem Daisy-Chain-Netzwerk hinzugefügt wird, nachdem der erste neue Subknoten zu dem Daisy-Chain-Netzwerk hinzugefügt und konfiguriert wurde. In mehreren Beispielen weist der zumindest eine neuere Subknoten einen zweiten neuen Subknoten auf, der zu dem Daisy-Chain-Netzwerk hinzugefügt wird, nachdem das System mit dem ersten neuen Subknoten konfiguriert wurde. In mehreren Beispielen weist der zumindest eine neue Subknoten einen ersten Satz neuer Subknoten auf, und der zumindest eine neuere Subknoten weist einen zweiten neuen Subknoten auf, der zu dem Daisy-Chain-Netzwerk hinzugefügt wird, nachdem der erste Satz neuer Subknoten zu dem Daisy-Chain-Netzwerk hinzugefügt und konfiguriert wurde. In mehreren Beispielen weist der zumindest eine neuere Subknoten einen zweiten neuen Subknoten auf, der zu dem Daisy-Chain-Netzwerk hinzugefügt wird, nachdem das System mit dem ersten Satz neuer Subknoten konfiguriert wurde. In mehreren Beispielen weist der zumindest eine neue Subknoten einen ersten neuen Subknoten auf, und der zumindest eine neuere Subknoten einen zweiten Satz neuer Subknoten auf, der zu dem Daisy-Chain-Netzwerk hinzugeführt wird, nachdem der erste neue Subknoten zu dem Daisy-Chain-Netzwerk hinzugefügt und konfiguriert wurde. In mehreren Beispielen weist der zumindest eine neuere Subknoten einen zweiten Satz neuer Subknoten auf, der zu dem Daisy-Chain-Netzwerk hinzugefügt wird, nachdem das System mit dem ersten neuen Subknoten konfiguriert wurde. In mehreren Beispielen weist der zumindest eine neue Subknoten einen ersten Satz neuer Subknoten auf, und der zumindest eine neuere Subknoten weist einen zweiten Satz neuer Subknoten auf, der zu dem Daisy-Chain-Netzwerk hinzugefügt wird, nachdem der erste Satz neuer Subknoten zu dem Daisy-Chain-Netzwerk hinzugefügt und konfiguriert wurde. In mehreren Beispielen weist der zumindest eine neuere Subknoten einen zweiten Satz neuer Subknoten auf, der zu dem Daisy-Chain-Netzwerk hinzugefügt wird, nachdem das System mit dem ersten Satz neuer Subknoten konfiguriert wurde.
  • Gemäß manchen Implementierungen weist das Bestimmen, dass zumindest ein neuer Subknoten zu der Vielzahl von Knoten hinzugefügt wurde, ferner eine Bus-Selbsterkennung auf, wobei eine Hoststeuerung die Vielzahl von Knoten, die in dem Netzwerk vorhanden sind, abfragt. Gemäß manchen Implementierungen erfolgt die Bus-Selbsterkennung bei Systemstart. Gemäß manchen Implementierungen weist die Bus-Selbsterkennung das Bestimmen einer Anzahl von Knoten in der Vielzahl von Knoten auf.
  • Gemäß manchen Implementierungen ist die Vielzahl von Knoten einer erste Vielzahl von Knoten, und das Verfahren weist ferner Folgendes auf: Detektieren einer Trennung eines aktuellen Knotens von der ersten Vielzahl von Knoten, und Rekonfigurieren des Systems basierend auf Informationen von jedem aus einer zweiten Vielzahl von Knoten, wobei die zweite Vielzahl von Knoten verbundene Knoten aus der ersten Vielzahl von Knoten aufweist. Gemäß manchen Implementierungen weist das Verfahren ferner das Detektieren einer Rekonfiguration eines ersten Subknoten aus der Vielzahl von Knoten auf.
  • Gemäß manchen Implementierungen weist das Verfahren weiters Folgendes auf: Lesen von Modulinformationen für den ersten Subknoten; Konfigurieren des ersten Subknoten; und Rekonfigurieren des Systems basierend auf Informationen von jedem aus der Vielzahl von Knoten. Gemäß manchen Implementierungen ist die Vielzahl von Knoten eine erste Vielzahl von Knoten, wobei die erste Vielzahl von Knoten plus der zumindest eine neuere Subknoten eine zweite Vielzahl von Subknoten sind, und das Verfahren ferner Folgendes aufweist, wenn der zumindest eine neuere Subknoten hinzugefügt wurde: Lesen von Modulinformationen für den zumindest einen neueren Subknoten; Konfigurieren des zumindest einen neueren Subknotens; und Rekonfigurieren des Systems basierend auf Informationen von jedem aus der zweiten Vielzahl von Knoten.
  • Gemäß einem weiteren Aspekt weist ein System zur Knotenerkennung und - konfiguration Folgendes auf: ein Daisy-Chain-Netzwerk aus Knoten, das eine Vielzahl von Knoten aufweist; einen Host, der konfiguriert ist, um: zumindest einen neuen Subknoten zu erkennen, der zu der Vielzahl von Knoten hinzugefügt wurde; Modulinformationen für den zumindest einen neuen Subknoten zu lesen; den zumindest einen neuen Subknoten zu konfigurieren; das System, aufweisend das Daisy-Chain-Netzwerk, basierend auf Informationen von jedem aus der Vielzahl von Knoten zu konfigurieren; und periodisch einen Erkennungsversuch einzuleiten, wobei der Erkennungsversuch das Bestimmen aufweist, ob zumindest ein neuerer Subknoten zu dem Daisy-Chain-Netzwerk hinzugefügt wurde.
  • Gemäß manchen Implementierungen weist zumindest ein neuer Subknoten einen Speicher auf, und der Speicher weist die Modulinformationen auf. Gemäß manchen Implementierungen ist der Host konfiguriert, um die Modulinformationen zur Auffindung von gespeichertem Code zu nutzen, um den zumindest einen neuen Subknoten zu konfigurieren. Gemäß manchen Implementierungen weisen die Modulinformationen zumindest eines aus Anbieterinformationen, Produktinformationen, Versionsinformationen, Modellinformationen, Funktionalitätsinformationen, Seriennummer, Herstellungsinformationen, Konfigurationsinformationen, Routing-Informationen, Authentifizierungsinformationen und Kalibrierungskoeffizienten auf. Gemäß manchen Implementierungen ist der Host ferner konfiguriert, um ein Zugriffsverfahren für die Modulinformationen zu bestimmen. Gemäß manchen Implementierungen weist das System eine Vielzahl von Slots auf, und wobei der Host ferner konfiguriert ist, um zumindest einen aus der Vielzahl von Slots jeweils einem aus der Vielzahl von Subknoten zuzuordnen.
  • Gemäß einem weiteren Aspekt weist ein Verfahren zum Auffinden von Konfigurationsinformationen für einen Subknoten in einem Daisy-Chain-Netzwerk, Folgendes auf: Bestimmen eines Modulinformationen-Zugriffsverfahrens; Lesen eines Modulidentifikators; Bestimmen, ob der Modulidentifikator mit einem erwarteten Wert übereinstimmt; Lesen von Modulinformationen über das Zugriffsverfahren; Bestimmen von Registereinstellungen für den Subknoten basierend auf den Modulinformationen; Anwenden von Registereinstellungen auf den Subknoten; und Zuordnen von zumindest einem Slot zu dem Knoten.
  • Gemäß manchen Implementierungen weist das Verfahren ferner das Schreiben von Subknoteninformationen an einen Hauptknoten auf. Gemäß manchen Implementierungen weist das Verfahren ferner das Zuordnen eines Audiokanals zu dem Subknoten und Kommunizieren der Audiokanalzuordnung an einen Hauptknoten auf. Gemäß manchen Implementierungen weist das Verfahren ferner das Anwenden von Subknoten-Peripherieregistereinstellungen auf zumindest eine Subknoten-Peripherievorrichtung auf. Gemäß manchen Implementierungen weist das Verfahren ferner das Bestimmen, ob ein zusätzlicher Subknoten vorhanden ist, und das Konfigurieren des zusätzlichen Subknotens auf.
  • Gemäß manchen Implementierungen weist das Lesen von Modulinformationen das Lesen von zumindest einem aus Versionsinformationen, Anbieterinformationen, Produktinformationen, Funktionalitätsinformationen, Seriennummer, Herstellungsinformationen, Modellinformationen, Konfigurationsinformationen, Routing-Informationen, Authentifizierungsinformationen und Kalibrierungskoeffizienten auf.
  • Kurzbeschreibung der Zeichnungen
  • Die vorliegende Offenbarung lässt sich am besten aus der folgenden detaillierten Beschreibung in Verbindung mit den beiliegenden Zeichnungen verstehen. Es wird betont, dass mehrere Merkmale gemäß der Standardpraxis auf dem Fachgebiet nicht notwendigerweise maßstabsgetreu gezeichnet sind und lediglich illustrativen Zwecken dienen. Wird ein Maßstab gezeigt, ob explizit oder implizit, stellt er lediglich ein illustratives Beispiel dar. In weiteren Ausführungsformen können die Dimensionen der mehreren Merkmale zum Zwecke der Klarheit willkürlich vergrößert oder verringert werden. Um diese Beschreibung zu vereinfachen, bezeichnen gleiche Bezugszeichen gleiche Strukturelemente. Ausführungsformen werden als Beispiel und nicht als Einschränkung in den Figuren der beiliegenden Zeichnungen veranschaulicht.
  • Für ein umfassenderes Verständnis der Beschaffenheit und Vorteile der vorliegenden Erfindung wird auf die folgende detaillierte Beschreibung bevorzugter Ausführungsformen und in Verbindung mit den beiliegenden Zeichnungen Bezug genommen, wobei:
    • 1 ein Blockdiagramm eines veranschaulichenden Zweidraht-Kommunikationssystems in Übereinstimmung mit mehreren Ausführungsformen ist;
    • 2 ein Blockdiagramm eines Knoten-Sendeempfängers, der in einem Knoten des Systems von 1 inkludiert sein kann, in Übereinstimmung mit mehreren Ausführungsformen ist;
    • 3 ein Diagramm eines Teils eines Synchronisationssteuerrahmens, der zur Kommunikation in dem System von 1 verwendet wird, in Übereinstimmung mit mehreren Ausführungsformen ist;
    • 4 ein Diagramm eines Superrahmens ist, der zur Kommunikation in dem System von 1 verwendet wird, in Übereinstimmung mit mehreren Ausführungsformen ist;
    • 5 beispielhafte Formate für einen Synchronisationssteuerrahmen in verschiedenen Betriebsmodi des System von 1 in Übereinstimmung mit mehreren Ausführungsformen veranschaulicht;
    • 6 beispielhafte Formate für einen Synchronisationsantwortrahmen in verschiedenen Betriebsmodi des System von 1 in Übereinstimmung mit mehreren Ausführungsformen veranschaulicht;
    • 7 ein Blockdiagramm mehrerer Komponenten der BusprotokollSchaltungsanordnung von 2 in Übereinstimmung mit mehreren Ausführungsformen ist;
    • 8-1 1 Beispiele für einen Informationsaustausch entlang eines Zweidraht-Busses in Übereinstimmung mit mehreren Ausführungsformen des hierin beschriebenen Busprotokolls veranschaulichen;
    • 12 eine Ringtopologie für den Zweidraht-Bus und ein darauf ausgebildetes unidirektionales Kommunikationsschema in Übereinstimmung mit mehreren Ausführungsformen veranschaulicht;
    • 13 ein Blockdiagramm einer Vorrichtung, die als Knoten oder Host in dem System von 1 dienen kann, in Übereinstimmung mit mehreren Ausführungsformen ist;
    • 14 ein Blockdiagramm eines Kommunikationssystems, das zur Audio- und Lichtsteuerung konfiguriert ist, in Übereinstimmung mit mehreren Ausführungsformen ist;
    • 15A und 15B ein Verfahren zur Knotenerkennung in Übereinstimmung mit mehreren Ausführungsformen veranschaulichen;
    • 16 ein Beispiel einer Sequenz zur Erkennung eines Subknoten in Übereinstimmung mit mehreren Ausführungsformen ist;
    • 17 ein Verfahren zum Lesen von Modulinformationen für einen Subknoten in Übereinstimmung mit mehreren Ausführungsformen zeigt; und
    • 18 ein Flussdiagramm, das eine Sequenz 1800 zur Konfiguration eines Subknotens zeigt, in Übereinstimmung mit mehreren Ausführungsformen ist.
  • Detaillierte Beschreibung
  • Hierin offenbart werden Systeme und Verfahren zur Knotenerkennung und - konfiguration in einem Daisy-Chain-Netzwerk. In manchen Ausführungsformen beispielsweise kann ein Hauptknoten die Topologie und Identität von Subknoten in einem Daisy-Chain-Netzwerk „selbst erkennen“, sodass Änderungen der Topologie ohne wesentliche Unterbrechungen der Datenübertragung in dem Netzwerk leicht angepasst werden können.
  • In der folgenden detaillierten Beschreibung wird Bezug auf die beiliegenden Zeichnungen genommen, die einen Teil davon bilden, wobei gleiche Bezugszeichen durchgängig gleiche Teile bezeichnen, und in denen mittels veranschaulichender Ausführungsformen mögliche Umsetzungen gezeigt werden. Es gilt zu verstehen, dass andere Ausführungsformen genutzt werden sowie strukturelle und logische Änderungen vorgenommen werden können, ohne dass der Schutzumfang der vorliegenden Offenbarung verlassen wird. Somit soll die folgende detaillierte Beschreibung nicht im einschränkenden Sinne verstanden werden.
  • Mehrere Vorgänge können als mehrere einzelne Handlungen oder Vorgänge nacheinander beschrieben werden, und zwar auf eine Weise, die für das Verständnis des beanspruchten Gegenstands besonders hilfreich ist. Die Reihenfolge der Beschreibung soll allerdings nicht so ausgelegt werden, dass diese Vorgänge notwendigerweise von der Reihenfolge abhängen. Im Speziellen werden diese Vorgänge mitunter nicht in der dargestellten Reihenfolge durchgeführt. Hierin beschriebene Vorgänge können in einer anderen Reihenfolge als jener in der beschriebenen Ausführungsform durchgeführt werden. Es können mehrere zusätzliche Vorgänge durchgeführt werden und/oder beschrieben Vorgänge können in zusätzlichen Ausführungsformen weggelassen werden.
  • Zum Zwecke der vorliegenden Offenbarung bedeutet der Ausdruck „A und/oder B“ (A), (B) oder (A und B). Zum Zwecke der vorliegenden Offenbarung bedeutet der Ausdruck „A, B und/oder C“ (A), (B), (C), (A und B), (A und C), (B und C) oder (A, B und C).
  • Mehrere Komponenten können hierin im Singular (z. B. ein „Prozessor“, eine „Peripherievorrichtung“ etc.) bezeichnet oder veranschaulicht werden, das dient jedoch lediglich der Einfachheit und jedes Element, das im Singular bezeichnet wird, kann mehrere Elemente, wie beispielsweise Elemente in Übereinstimmung mit den Lehren hierin, aufweisen.
  • In der Beschreibung werden die Ausdrücke „in einer Ausführungsform“ oder „in Ausführungsformen“ genutzt, die jeweils eine oder mehrere gleicher oder unterschiedlicher Ausführungsformen bezeichnen können. Darüber hinaus sind die Begriffe „umfassend“, „einschließlich“, „aufweisend“ und dergleichen bei Verwendung in Bezug auf Ausführungsformen der vorliegenden Offenbarung synonym. Wie hierin verwendet, kann sich der Begriff „Schaltungsanordnung“ auf eine anwendungsspezifische integrierte Schaltung (ASIC) oder eine elektronische Schaltung und eine optischen Schaltung, einen Prozessor (geteilt, dediziert oder Gruppe) und/oder Speicher (geteilt, dediziert oder Gruppe), die ein oder mehrere Software- oder Firmwareprogramme ausführen, eine Kombinationslogikschaltung und/oder eine andere geeignete Hardware, die die beschriebene Funktionalität bereitstellen, beziehen oder einen Teil davon bilden oder diese aufweisen.
  • 1 ist ein Blockdiagramm eines veranschaulichenden Halbduplex-Zweidraht-Kommunikationssystems 100 in Übereinstimmung mit mehreren Ausführungsformen. Das System 100 weist einen Host 110, einen Hauptknoten 102-1 und zumindest einen Subknoten 102-2 auf. In 1 werden drei Subknoten (0, 1 und 2) veranschaulicht. Die Darstellung von drei Subknoten 102-2 in 1 ist rein veranschaulichend, und das System 100 kann nach Bedarf ein, zwei oder mehr Subknoten 102-2 aufweisen.
  • Der Hauptknoten 102-1 kann mit den Subknoten 102-2 über einen Zweidraht-Bus 106 kommunizieren. Der Bus 106 kann unterschiedliche Zweidraht-Busverbindungen zwischen benachbarten Knoten entlang des Busses 106 aufweisen, um die Knoten entlang des Busses 106 mittels Daisy Chain zu verbinden. Wie in 1 dargestellt beispielsweise kann der Bus 106 eine Verbindung, die den Hauptknoten 102-1 mit dem Subknoten 0 koppelt, eine Verbindung, die den Subknoten 0 mit dem Subknoten 1 koppelt, und eine Verbindung aufweisen, die den Subknoten 1 mit dem Subknoten 2 koppelt. In manchen Ausführungsformen können die Verbindungen des Busses 106 jeweils aus einem einzelnen verdrillten Drahtpaar (z. B. einem nicht abgeschirmten verdrillten Paar) ausgebildet sein. In manchen Ausführungsformen können die Verbindungen des Busses 106 jeweils aus einem Koaxialkabel ausgebildet sein (wobei der Kern beispielsweise die „positive“ Leitung und der Schirm die „negative“ Leitung oder umgekehrt bereitstellt). Die Zweidraht-Busverbindungen stellen zusammen einen vollständigen elektrischen Pfad bereit (z. B. einen Durchlassstrom- und einen Rückstrompfad), sodass keine zusätzliche Erd- oder Spannungsquellenleitung genutzt werden muss.
  • Der Host 110 kann einen Prozessor aufweisen, der den Hauptknoten 102-1 programmiert und als Quelle und Empfänger mehrere Nutzlasten fungiert, die entlang des Busses 106 übertragen werden. In manchen Ausführungsformen kann der Host 110 beispielsweise eine Mikrosteuerung sein oder aufweisen. Im Speziellen kann der Host 1 10 der Master von Inter-Integrated-Circuit-Sound(12S)-Kommunikationen sein, die entlang des Busses 106 stattfinden. Der Host 110 kann mit dem Hauptknoten 102-1 über ein I2S/Time-Division-Multiplex(TDM)-Protokoll, ein Serial-Peripheral-Interface(SPI)-Protokoll und/oder ein lnter-lntegrated-Circuit(l2C)-Protokoll kommunizieren. In manchen Ausführungsformen kann der Hauptknoten 102-1 ein Sendeempfänger sein (z. B. der nachstehend in Bezug auf 2 besprochene Knoten-Sendeempfänger 120), der sich in dem gleichen Gehäuse wie der Host 110 befindet. Der Hauptknoten 102-1 kann durch den Host 110 über den 12C-Bus zur Konfiguration und zum Rücklesen programmierbar sein, und kann konfiguriert sein, um Takt, Synchronisation und Rahmensetzung für alle der Subknoten 102-2 zu erzeugen. In manchen Ausführungsformen kann eine Verlängerung des 12C-Steuerbusses zwischen dem Host 110 und dem Hauptknoten 102-1 in die Datenströme eingebettet sein, die über den Bus 106 übertragen werden, wodurch dem Host 1 10 ermöglicht wird, direkt auf Register und Statusinformationen für den einen oder die mehreren Subknoten 102-2 zuzugreifen, und eine l2C-zu-l2C-Kommunikation über eine Distanz freigegeben wird, um dem Host 1 10 zu ermöglichen, die Peripherievorrichtungen 108 zu steuern. In manchen Ausführungsformen kann eine Verlängerung des SPI-Steuerbusses zwischen dem Host 110 und dem Hauptknoten 102-1 in die Datenströme eingebettet sein, die über den Bus 106 übertragen werden, wodurch dem Host 1 10 ermöglicht wird, direkt auf Register und Statusinformationen für den einen oder die mehreren Subknoten 102-2 zuzugreifen, und eine SPI-zu-SPI- oder SPI-zu-l2C-Kommunikation über eine Distanz freigegeben wird, um dem Host 110 zu ermöglichen, die Peripherievorrichtungen 108 zu steuern. In Ausführungsformen, in denen das System 100 in einem Fahrzeug inkludiert ist, können der Host 110 und/oder der Hauptknoten 102-1 in einem Kopfende des Fahrzeugs inkludiert sein.
  • Der Hauptknoten 102-1 kann „stromabwärtige“ Signale erzeugen (z. B. Datensignale, Leistungssignale etc., die von dem Hauptknoten 102-1 weg entlang des Busses 106 übertragen werden), und „stromaufwärtige“ Signale empfangen (die z. B. in Richtung des Hauptknotens 102-1 entlang des Busses 106 übertragen werden). Der Hauptknoten 102-1 kann ein Taktsignal für eine synchrone Datenübertragung über den Bus 106 bereitstellen. Wie hierin verwendet, können „synchrone Daten“ Daten (z. B. Audiosignale) aufweisen, die durchgängig mit einem festgelegten Zeitintervall zwischen zwei aufeinanderfolgenden Übertragungen zu und von dem gleichen Knoten entlang des Busses 106 gestreamt werden. In manchen Ausführungsformen kann das von dem Hauptknoten 102-1 bereitgestellte Taktsignal von einer 12S-Eingabe stammen, die dem Hauptknoten 102-1 von dem Host 110 bereitgestellt wird. Ein Subknoten 102-2 kann ein adressierbarer Netzwerkverbindungspunkt sein, der ein mögliches Ziel für Datenrahmen darstellt, die stromabwärtig zu dem Bus 106 oder stromaufwärtig zu dem Bus 106 übertragen werden. Ein Subknoten 102-2 kann außerdem eine mögliche Quelle von stromabwärtigen oder stromaufwärtigen Datenrahmen sein. Das System 100 kann ermöglichen, dass Steuerinformationen und andere Daten in beide Richtungen über den Bus 106 von einem Knoten zum nächsten übertragen werden. Ein oder mehrere der Subknoten 102-2 kann auch von Signalen gespeist werden, die über den Bus 106 übertragen werden.
  • Im Speziellen kann jeder aus dem Hauptknoten 102-1 und den Subknoten 102-2 einen positiven stromaufwärtigen Anschluss (bezeichnet als „AP“), einen negativen stromaufwärtigen Anschluss (bezeichnet als „AN“), einen positiven stromabwärtigen Anschluss (bezeichnet als „BP“) und einen negativen stromabwärtigen Anschluss (bezeichnet als „BN“) aufweisen. Die positiven und negativen stromabwärtigen Anschlüsse eines Knotens können mit den positiven bzw. negativen stromaufwärtigen Anschlüssen des benachbarten stromabwärtigen Knotens gekoppelt werden. Wie in 1 gezeigt, kann der Hauptknoten 102-1 positive und negative stromaufwärtige Anschlüsse aufweisen, wobei diese Anschlüsse mitunter nicht verwendet werden; in weiteren Ausführungsformen kann der Hauptknoten 102-1 keine positiven und negativen stromaufwärtigen Anschlüsse aufweisen. Der letzte Subknoten 102-2 entlang des Busses 106 (der Subknoten 2 in 1) kann positive und negative stromabwärtige Anschlüsse aufweisen, wobei diese Anschlüsse mitunter nicht verwendet werden; in weiteren Ausführungsformen kann der letzte Subknoten 102-2 entlang des Busses keine positiven und negativen stromabwärtigen Anschlüsse aufweisen.
  • Wie nachstehend näher erläutert, kann der Hauptknoten 102-1 periodisch stromabwärtig einen Synchronisationssteuerrahmen senden, gegebenenfalls zusammen mit Daten, die für einen oder mehrere der Subknoten 102-2 gedacht sind. Beispielsweise kann der Hauptknoten 102-1 alle 1024 Bits (die einen Superrahmen darstellen) bei einer Frequenz von 48 kHz einen Synchronisationssteuerrahmen übertragen, was zu einer tatsächlichen Bitrate auf dem Bus 106 von 49,152 Mbps führt. Weitere Raten können unterstützt werden, beispielsweise 44,1 kHz. Der Synchronisationssteuerrahmen kann ermöglichen, dass die Subknoten 102-2 den Anfang jedes Superrahmens identifizieren, und außerdem in Kombination mit einer Codierung/Signalübertragung einer physischen Schicht ermöglichen, dass jeder Subknoten 102-2 seinen internen Betriebstakt von dem Bus 106 erhält. Der Synchronisationssteuerrahmen kann eine Präambel zur Signalisierung des Starts der Synchronisation sowie Steuerfelder aufweisen, die mehrere Adressierungsmodi (z. B. normal, Ausstrahlung, Erkennung), Konfigurationsinformationen (z. B. Schreiben zu Registern der Subknoten 102-2), Übermittlung von 12C-Informationen, Übermittlung von SPI-Informationen, Fernsteuerung von bestimmten Allzweck-Eingabe/Ausgabe(GPIO)-Kontakten an den Subknoten 102-2 und weitere Dienstleistungen ermöglichen. Ein Teil des Synchronisationssteuerrahmens nach der Präambel und den Nutzlastdaten kann verschlüsselt werden, um die Wahrscheinlichkeit zu verringern, dass Informationen in dem Synchronisationssteuerrahmen für eine neue Präambel gehalten werden, und um das Spektrum verwandter elektromagnetischer Emissionen abzuflachen.
  • Der Synchronisationssteuerrahmen kann zwischen dem Subknoten 102-2 weitergegeben werden (gegebenenfalls zusammen mit anderen Daten, die von dem Hauptknoten 102-1 kommen können, aber zusätzlich oder alternativ dazu von einem oder mehreren stromaufwärtigen Subknoten 102-2 oder von einem Subknoten 102-2 selbst kommen kann), bis er den letzten Subknoten 102-2 erreicht (d. h. den Subknoten 2 in 1), der von dem Hauptknoten 102-1 als der letzte Subknoten 102-2 konfiguriert wurde oder sich selbst als letzter Subknoten 102-2 identifiziert hat. Bei Empfang des Synchronisationssteuerrahmens kann der letzte Subknoten 102-2 einen Synchronisationsantwortrahmen gefolgt von beliebigen Daten übertragen, die er zu übertragen berechtigt ist (z. B. eine 24-Bit-Audioabtastung in einem vorgesehenen Zeitslot). Der Synchronisationsantwortrahmen kann stromaufwärtig zwischen den Subknoten 102-2 weitergegeben werden (gegebenenfalls zusammen mit Daten von stromabwärtigen Subknoten 102-2), und basierend auf dem Synchronisationsantwortrahmen kann jeder Subknoten 102-2 in der Lage sein, einen Zeitslot zu identifizieren, falls es dieses gibt, in dem der Subknoten 102-2 zur Übertragung berechtigt ist.
  • In manchen Ausführungsformen können ein oder mehrere Subknoten 102-2 in dem System 100 mit einer Peripherievorrichtung 108 gekoppelt sein und mit dieser kommunizieren. Beispielsweise kann ein Subknoten 102-2 konfiguriert sein, um Daten unter Verwendung von 12S-, Pulsdichtenmodulation(PDM)-, TDM-, SPI- und/oder l2C-Protokollen, wie nachstehend erläutert, von der zugeordneten Peripherievorrichtung 108 zu lesen oder Daten zu dieser zu schreiben. Obwohl die „Peripherievorrichtung 108“ hierin im Singular angeführt werden kann, dient dies lediglich der Einfachheit, und ein einzelner Subknoten 1 02-2 kann mit keiner, einer oder mehreren Peripherievorrichtungen gekoppelt werden. Beispiele für Peripherievorrichtungen, die in der Peripherievorrichtung 108 inkludiert sein können, können einen digitalen Signalprozessor (DSP), ein Field Programmable Gate Array (FPGA), einen ASIC, einen Analog-zu-Digital-Konverter (ADC), einen Digital-zu-Analog-Konverter (DAC), einen Codec, ein Mikrofon, eine Mikrofonanordnung, einen Lautsprecher, einen Audioverstärker, einen Protokollanalysator, einen Beschleunigungsmesser oder einen anderen Bewegungssensor, einen Umgebungsbedingungssensor (z. B. einen Temperatur-, Luftfeuchtigkeits- und/oder Gassensor), einen drahtgebundenen oder drahtlosen Kommunikationssendeempfänger, eine Anzeigevorrichtung (z. B. eine Touchscreen-Anzeige), eine Benutzerschnittstellenkomponente (z. B. eine Taste, ein Einstellrad oder eine andere Steuerung), eine Kamera (z. B. eine Videokamera), eine Speichervorrichtung oder eine beliebige andere geeignete Vorrichtung, die Daten überträgt und/oder empfängt, aufweisen. Eine Reihe von Beispielen für unterschiedliche Peripherievorrichtungskonfigurationen wird hierin genauer erläutert.
  • In manchen Ausführungsformen kann die Peripherievorrichtung 108 eine beliebige Vorrichtung aufweisen, die zur 12S-Kommuniktation konfiguriert ist; die Peripherievorrichtung 108 kann mit dem zugeordneten Subknoten 102-2 über das I2S-Protokoll kommunizieren. In manchen Ausführungsformen kann die Peripherievorrichtung 108 eine beliebige Vorrichtung aufweisen, die zur 12C-Kommunikation konfiguriert ist; die Peripherievorrichtung 108 kann mit dem zugeordneten Subknoten 102-2 über das I2C-Protokoll kommunizieren. In manchen Ausführungsformen kann die Peripherievorrichtung 108 eine beliebige Vorrichtung aufweisen, die zur SPI-Kommunikation konfiguriert ist; die Peripherievorrichtung 108 kann mit dem zugeordneten Subknoten 102-2 über das SPI-Protokoll kommunizieren. In manchen Ausführungsformen kann ein Subknoten 102-2 mit keiner Peripherievorrichtung 108 gekoppelt sein.
  • Ein Subknoten 102-2 und seine zugeordnete Peripherievorrichtung 108 können in getrennten Gehäusen enthalten sein und durch eine drahtgebundene oder drahtlose Kommunikationsvorrichtung gekoppelt sein oder in einem gemeinsamen Gehäuse enthalten sein. Beispielsweise kann ein Lautsprecher, der als Peripherievorrichtung 108 verbunden ist, mit der Hardware für einen zugeordneten Subknoten 102-2 verpackt sein (z. B. dem nachstehend in Bezug auf 2 erläuterten Knoten-Sendeempfänger 120), sodass die Hardware für den zugeordneten Subknoten 102-2 in einem Gehäuse enthalten ist, das andere Lautsprecherkomponenten aufweist. Das kann auch für eine beliebige andere Art einer Peripherievorrichtung 108 gelten.
  • Wie vorstehend angeführt, kann der Host 110 unter Verwendung von Mehrkanal-l2S-, SPI- und/oder 12C-Kommunikationsprotokollen mit dem Hauptknoten 102-1 kommunizieren und diesen steuern. Beispielsweise kann der Host 1 10 Daten über I2S an einen Rahmenpuffer (nicht gezeigt) in dem Hauptknoten 102-1 übertragen, und der Hauptknoten 102-1 kann Daten von dem Rahmenpuffer lesen und die Daten entlang des Busses 106 übertragen. Analog dazu kann der Hauptknoten 102-1 über den Bus 106 empfangene Daten in dem Rahmenpuffer speichern und kann dann die Daten über I2S an den Host 1 10 übertragen.
  • Jeder Subknoten 102-2 kann interne Steuerregister aufweisen, die durch Kommunikationen von dem Hauptknoten 102-1 konfiguriert sein können. Eine Reihe solcher Register wird nachstehend näher erläutert. Jeder Subknoten 102-2 kann stromabwärtige Daten empfangen und die Daten weiter stromabwärtig weiter übertragen. Jeder Subknoten 102-2 kann stromaufwärtige Daten empfangen und/oder erzeugen und/oder Daten stromaufwärtig weiter übertragen und/oder Daten zu stromaufwärtigen Transaktionen hinzufügen.
  • Kommunikationen entlang des Busses 106 können in periodischen Superrahmen stattfinden. Jeder Superrahmen kann mit einem stromabwärtigen Synchronisationssteuerrahmen starten; in Perioden einer stromabwärtigen Übertragung (auch „stromabwärtige Abschnitte“ genannt), stromaufwärtigen Übertragung (auch „stromaufwärtige Abschnitte“ genannt) und ohne Übertragung (in denen der Bus 106 nicht angesteuert wird) unterteilt werden; und gerade vor der Übertragung eines anderen stromabwärtigen Synchronisationssteuerrahmens enden. Der Hauptknoten 102-1 kann (von dem Host 110) mit einer Reihe von stromabwärtigen Abschnitten, um zu einem oder mehreren der Subknoten 102-2 übertragen zu werden, und einer Reihe von stromaufwärtigen Abschnitten programmiert sein, um von einem oder mehreren der Subknoten 102-2 empfangen zu werden. Jeder Subknoten 102-2 kann (von dem Hauptknoten 102-1) mit einer Reihe von stromabwärtigen Abschnitten, um entlang des Busses 106 weiter nach unten übertragen zu werden, einer Reihe von stromabwärtigen Abschnitten, um konsumieren zu werden, einer Reihe von stromaufwärtigen Abschnitten, um entlang des Busses 106 weiter nach oben übertragen zu werden, und einer Reihe von stromaufwärtigen Abschnitten programmiert sein, in denen der Subknoten 102-2 Daten übertragen kann, die von dem Subknoten 102-2 von der zugeordneten Peripherievorrichtung 108 empfangen wurden. Die Kommunikation entlang des Busses 106 wird im Folgenden in Bezug auf die 2-12 näher beschrieben.
  • Ausführungsformen des hierin offenbarten Kommunikationssystems 100 sind unter den herkömmlichen Kommunikationssystem insofern einzigartig, als dass alle Subknoten 102-2 über den Bus 106 ausgegebene Daten innerhalb des gleichen Superrahmens empfangen können (z. B. können alle Subknoten 102-2 die gleiche Audioabtastung ohne Abtastungsverzögerungen zwischen den Knoten 102 empfangen). In herkömmlichen Kommunikationssystemen werden Daten in jedem Knoten gepuffert und verarbeitet, bevor sie stromabwärtig in den nächsten Rahmen zu dem nächsten Knoten weitergegeben werden. Dementsprechend hängt die Latenz der Datenübertragung in diesen herkömmlichen Kommunikationssystemen von der Anzahl von Knoten ab (wobei jeder Knoten eine Verzögerung von einer Audioabtastung hinzufügt). In dem hierin offenbarten Kommunikationssystem 100 kann der Bus 106 nur einen Latenzzyklus hinzufügen, ganz egal, ob der erste oder der letzte Subknoten 102-2 die Daten empfängt. Das gleiche gilt für die stromaufwärtige Kommunikation; Daten können an einem stromaufwärtigen Knoten 102 in dem nächsten Superrahmen verfügbar sein, ganz gleich, welcher Subknoten 102-2 die Daten bereitgestellt hat.
  • Darüber hinaus können stromabwärtige Daten (z. B. stromabwärtige Audiodaten) in Ausführungsformen des hierin offenbarten Kommunikationssystems 100 von dem Hauptknoten 102-1 oder von einem beliebigen der Subknoten 102-2, die sich stromaufwärtig zu dem empfangenden Subknoten 102-2 befinden, auf dem Bus 106 platziert werden; ähnlich dazu können stromaufwärtige Daten (z. B. stromaufwärtige Audiodaten) von einem beliebigen der Subknoten 102-2, die sich stromabwärtig zu dem empfangenden Knoten 102 befinden (d. h. dem Hauptknoten 102-1 oder einem Subknoten 102-2), auf dem Bus 106 platziert werden. Eine solche Funktionalität ermöglicht, dass ein Subknoten 102-2 sowohl stromaufwärtige als auch stromabwärtige Daten zu einem vorgegebenen Zeitpunkt (z. B. einem vorgegebenen Audioabtastungszeitpunkt) bereitstellt. Bei Audiodaten können diese Daten bei der nächsten Audioabtastung an einem beliebigen stromabwärtigen oder stromaufwärtigen Knoten 102 ohne weitere Verzögerungen (mit Ausnahme von kleinen Verarbeitungsverzögerungen, die innerhalb der Grenze des Superrahmens fallen) empfangen werden. Wie näher hierin erläutert, können sich Steuernachrichten (z. B. in einem Synchronisationssteuerrahmen (SCF)) zu dem letzten Knoten (102) weiterbewegen (wobei ein vorgegebener Knoten 102 oder ausstrahlend adressiert wird), und eine stromaufwärtige Antwort (z. B. in einem Synchronisationsantwortrahmen (SRF)) kann durch den letzten stromabwärtigen Knoten 102 innerhalb des gleichen Superrahmens erzeugt werden. Knoten 102, die von dem SCF adressiert wurden, ändern den Inhalt des stromaufwärtigen SRF mit ihrer eigenen Antwort. Dementsprechend können eine Steuerung und eine Antwort innerhalb der gleichen Audioabtastung vollständig über mehrere Knoten 102 ausgeführt werden. Das steht ebenfalls im Gegensatz zu herkömmlichen Kommunikationssystemen, bei denen Abtastungslatenzen zwischen Knoten entstehen (um Nachrichten von einem Knoten zum anderen weiterzugeben).
  • Der Hauptknoten 102-1 und die Subknoten 102-2 können jeweils einen Sendeempfänger aufweisen, um die Kommunikation zwischen Komponenten des Systems 100 zu verwalten. 2 ist ein Blockdiagramm eines Knoten-Sendeempfängers 120, der in einem Knoten (z. B. dem Hauptknoten 102-1 oder einem Subknoten 102-2) des Systems 100 von 1, gemäß mehreren Ausführungsformen, inkludiert sein kann. In manchen Ausführungsformen kann ein Knoten-Sendeempfänger 120 in jedem Knoten des Systems 100 inkludiert sein, und ein Steuersignal kann dem Knoten-Sendeempfänger 120 über einen Hauptkontakt (MAIN) bereitgestellt werden, um anzugeben, dass der Knoten-Sendeempfänger 120 als Hauptknoten (z. B. wenn der MAIN-Kontakt hoch ist) oder als Subknoten (z. B. wenn der MAIN-Kontakt niedrig ist) fungieren soll.
  • The Knoten-Sendeempfänger 120 kann einen stromaufwärtigen Differentialsignalgebungs(DS)-Sendeempfänger 122 und einen stromabwärtigen DS-Sendeempfänger 124 aufweisen. Der stromaufwärtige DS-Sendeempfänger 122 kann mit den vorstehend in Bezug auf 1 angeführten positiven und negativen stromaufwärtigen Anschlüssen gekoppelt sein, und der stromabwärtige DS-Sendeempfänger 124 kann mit den vorstehend in Bezug auf 1 angeführten positiven und negativen stromabwärtigen Anschlüssen gekoppelt sein. In manchen Ausführungsformen kann der stromaufwärtige DS-Sendeempfänger 122 ein Niederspannungs-DS(LVDS)-Sendeempfänger sein, und der stromabwärtige DS-Sendeempfänger 124 kann ein LVDS-Sendeempfänger sein. Jeder Knoten in dem System 100 kann mit dem Bus 106 Wechselspannungs-gekoppelt sein, und die Datensignale können entlang des Busses 106 (z. B. über den stromaufwärtigen DS-Sendeempfänger 122 und/oder den stromabwärtigen DS-Sendeempfänger 124) unter Verwendung einer vorbestimmten Form von DS (z. B. LVDS oder Multipoint LVDS (MLVDS) oder eine ähnliche Signalgebung) mit einer geeigneten Codierung, um Zeitgebungsinformationen über den Bus 106 bereitzustellen (z. B. differentielle Manchester-Codierung, Biphase-Mark-Codierung, Manchester-Codierung, Non-Return-to-Zero-Inverted(NRZI)-Codierung mit Lauflängenbegrenzung oder eine beliebige andere geeignete Codierung), übermittelt werden.
  • Der stromaufwärtige DS-Sendeempfänger 122 und der stromabwärtige DS-Sendeempfänger 124 können mit einer Busprotokollschaltungsanordnung 126 kommunizieren, und die Busprotokollschaltungsanordnung 126 kann mit einer Phasenregelschleife (PLL) 128 und einer Spannungsreglerschaltungsanordnung 130 neben anderen Komponenten kommunizieren. Wenn der Knoten-Sendeempfänger 120 eingeschaltet wird, kann die Spannungsreglerschaltungsanordnung 130 ein „Power Good“-Signal geben, das von der PLL 128 als Einschalt-Zurücksetzung verwendet wird.
  • Wie vorstehend angeführt, können ein oder mehrere der Subknoten 102-2 in dem System 100 Leistung empfangen, die gleichzeitig mit Daten über den Bus 106 übertragen wird. Für jede Leistungsverteilung (die optional ist, da manche der Subknoten 102-2 so konfiguriert sein können, dass ihnen exklusiv lokale Leistung bereitgestellt wird) kann der Hauptknoten 102-1 eine Gleichspannungsvorspannung auf die Busverbindung zwischen dem Hauptknoten 102-1 und dem Subknoten 0 anlegen (z. B. durch Verbinden eines der stromabwärtigen Anschlüsse durch einen Tiefpassfilter mit einer Spannungsquelle, die von einem Spannungsregler bereitgestellt wird, und des anderen stromabwärtigen Anschlusses mit der Erde). Die Gleichspannungsvorspannung kann eine vorbestimmte Spannung, wie beispielsweise 5 Volt, 8 Volt, die Spannung einer Autobatterie oder eine höhere Spannung sein. Jeder folgende Subknoten 102-2 kann selektiv die stromaufwärtige Busverbindung anzapfen, um Leistung zu gewinnen (z. B. unter Verwendung der Spannungsreglerschaltungsanordnung 130). Diese Leistung kann verwendet werden, um den Subknoten 102-2 selbst mit Leistung zu versorgen (und gegebenenfalls eine oder mehrere Peripherievorrichtungen 108, die mit dem Subknoten 102-2 gekoppelt sind). Ein Subknoten 102-2 kann außerdem selektiv die Busverbindung, die dem nächsten Subknoten 102-2 in der Reihe stromabwärtig ist, entweder mit der Leistung vorspannen, die von der stromaufwärtigen Busverbindung oder von einer lokalen Leistungsquelle gewonnen wurde. Beispielsweise kann der Subknoten 0 die Gleichspannungsvorspannung auf der stromaufwärtigen Verbindung des Busses 106 nutzen, um Leistung für den Subknoten 0 selbst und/oder für eine oder mehrere zugeordnete Peripherievorrichtungen 108 zu gewinnen, und/oder der Subknoten 0 kann Leistung von der stromaufwärtigen Verbindung des Busses 106 gewinnen, um die stromabwärtige Verbindung des Busses 106 vorzuspannen.
  • Somit kann jeder Knoten in dem System 100 in manchen Ausführungsformen dem folgenden stromabwärtigen Knoten Leistung über eine stromabwärtige Busverbindung bereitstellen. Die Leistungsversorgung von Knoten kann nacheinander erfolgen. Beispielsweise kann der Hauptknoten 102-1 nach dem Erkennen und Konfigurieren des Subknotens 0 über den Bus 106 dem Subknoten 0 befehlen, seiner stromabwärtigen Verbindung des Busses 106 Leistung bereitzustellen, um dem Subknoten 1 Leistung bereitzustellen; nachdem Subknoten 1 erkannt und konfiguriert wurde, kann der Hauptknoten 102-1 dem Subknoten 1 befehlen, seiner stromabwärtigen Verbindung des Busses 106 Leistung bereitzustellen, um dem Subknoten 2 Leistung bereitzustellen (usw. für zusätzliche Subknoten 102-2, die mit dem Bus 106 gekoppelt sind). In manchen Ausführungsformen können ein oder mehrere der Subknoten 102-2 lokal mit Leistung versorgt werden, anstelle von oder zusätzlich zu der Leistungsversorgung von ihrer stromaufwärtigen Busverbindung. In manchen solcher Ausführungsformen kann die lokale Leistungsquelle für einen bestimmten Subknoten 102-2 verwendet werden, um dem einen oder den mehreren stromabwärtigen Subknoten Leistung bereitzustellen.
  • In manchen Ausführungsformen kann die stromaufwärtige Busschnittstellenschaltungsanordnung 132 zwischen dem stromaufwärtigen DS-Sendeempfänger 122 und der Spannungsreglerschaltungsanordnung 130 angeordnet sein, und die stromabwärtige Busschnittstellenschaltungsanordnung 131 kann zwischen dem stromabwärtigen DS-Sendeempfänger 124 und der Spannungsreglerschaltungsanordnung 130 angeordnet sein. Da jede Verbindung des Busses 106 Wechselspannungs-(Signal)- und Gleichspannungs-(Leistung)-Komponenten führen kann, können die stromaufwärtige Busschnittstellenschaltungsanordnung 132 und die stromabwärtige Busschnittstellenschaltungsanordnung 131 die Wechselspannungs- und Gleichspannungskomponenten trennen, wobei die Wechselspannungskomponenten dem stromaufwärtigen DS-Sendeempfänger 122 und dem stromabwärtigen DS-Sendeempfänger 124 bereitgestellt werden und die Gleichspannungskomponenten der Spannungsreglerschaltungsanordnung 130 bereitgestellt werden. Wechselspannungskopplungen auf der Leitungsseite des stromaufwärtigen DS-Sendeempfängers 122 und stromabwärtigen DS-Sendeempfängers 124 isolieren im Wesentlichen die Sendeempfänger 122 und 124 von der Gleichspannungskomponente auf der Leistung, um eine bidirektionale Hochgeschwindigkeitskommunikation zu ermöglichen. Wie vorstehend angeführt, kann die Gleichspannungskomponente für Leistung angezapft werden, und die stromaufwärtige Busschnittstellenschaltungsanordnung 132 und die stromabwärtige Busschnittstellenschaltungsanordnung 131 kann Ferrit, eine Gleichtaktdrossel oder einen Induktor aufweisen, beispielsweise um die Wechselspannungskomponente zu verringern, die der Spannungsreglerschaltungsanordnung 130 bereitgestellt wird. In manchen Ausführungsformen kann die stromaufwärtige Busschnittstellenschaltungsanordnung 132 in dem stromaufwärtigen DS-Sendeempfänger 122 inkludiert sein, und/oder die stromabwärtige Busschnittstellenschaltungsanordnung 131 kann in dem stromabwärtigen DS-Sendeempfänger 124 inkludiert sein; in weiteren Ausführungsformen kann die sich die Filterschaltungsanordnung außerhalb der Sendeempfänger 122 und 124 befinden.
  • Der Knoten-Sendeempfänger 120 kann einen Sendeempfänger 127 zur I2S-, TDM-, und PDM-Kommunikation zwischen dem Knoten-Sendeempfänger 120 und einer externen Vorrichtung 155 aufweisen. Obwohl die „externe Vorrichtung 155“ hierin im Singular angeführt werden kann, dient dies lediglich der einfacheren Veranschaulichung, und mehrere externe Vorrichtungen können mit dem Knoten-Sendeempfänger 120 über den 12S/TDM/PDM-Sendeempfänger 127 kommunizieren. Wie auf dem Fachgebiet bekannt, dient das l2S-Protokoll zur Weitergabe von Pulscode-modulierten (PCM) Informationen (z. B. zwischen Audiochips auf einer Leiterplatte (PCB)). Wie hierin verwendet, kann sich „I2S/TDM“ auf eine Erweiterung des 12S-Stereo(2-Kanal)-Inhalts auf mehrere Kanäle unter Verwendung von TDM beziehen. Wie auf dem Fachgebiet bekannt, kann PDM in Sigma-Delta-Wandlern verwendet werden, und insbesondere kann das PDM-Format ein überabgetastetes 1-Bit-Sigma-Delta-ADC-Signal vor der Minderung darstellen. Das PDM-Format wird oft als Ausgabeformat für digitale Mikrofone verwendet. Der I2S/TDM/PDM-Sendeempfänger 127 kann mit der Busprotokollschaltungsanordnung 126 und Kontakten zur Kommunikation mit der externen Vorrichtung 155 in Kommunikation stehen. Sechs Kontakte, BCLK, SYNC, DTX[1 :0] und DRX[1:0], sind in 2 dargestellt; der BCLK-Kontakt kann für einen I2S-Bit-Takt verwendet werden, der SYNC-Kontakt kann für ein I2S-Rahmensynchronisationssignal verwendet werden und der DTX[1 :0]- und DRX[1 :0]-Kontakt werden zum Übertragen bzw. Empfangen von Datenkanälen verwendet. Obwohl zwei Übertragungskontakte (DTX[1:0]) und zwei Empfangskontakte (DRX[1 :0]) in 2 dargestellt sind, kann eine beliebige Anzahl von Empfangs- und/oder Übertragungskontakten verwendet werden.
  • Wenn der Knoten-Sendeempfänger 120 in dem Hauptknoten 102-1 inkludiert ist, kann die externe Vorrichtung 155 den Host 110 aufweisen, und der I2S/TDM/PDM-Sendeempfänger 127 kann einen I2S-SIave (hinsichtlich BCLK und SYNC) aufweisen, der synchron mit einem I2S-Schnittstellentakt des Hosts 110 Daten von dem Host 110 empfangen und Daten an den Host 110 senden kann. Im Speziellen kann ein I2S-Rahmensynchronisationssignal an dem SYNC-Kontakt als eine Eingabe von dem Host 1 10 empfangen werden, und die PLL1 28 kann dieses Signal nutzen, um Takte zu erzeugen. Wenn der Knoten-Sendeempfänger 120 in einem Subknoten 102-2 inkludiert ist, kann die externe Vorrichtung 155 eine oder mehrere Peripherievorrichtungen 108 aufweisen, und der 12S/TDM/PDM-Sendeempfänger 127 kann einen 12S-Taktmaster (für BCLK und SYNC) bereitstellen, der die l2S-Kommunikation mit der Peripherievorrichtung 108 steuern kann. Im Speziellen kann der 12S/TDM/PDM-Sendeempfänger 127 ein I2S-Rahmensynchronisationssignal an dem SYNC-Kontakt als Ausgabe bereitstellen. Register in dem Knoten-Sendeempfänger 120 können bestimmen, welche und wie viele I2S/TDM-Kanäle als Datenslots über den Bus 106 übertragen werden. Ein TDM-Modus(TDMMODE)-Register in dem Knoten-Sendeempfänger 120 kann einen Wert speichern, der angibt, wie viele TDM-Kanäle zwischen aufeinanderfolgende SYNC-Pulse auf einem TDM-Übertragungs- oder Empfangskontakt passen. Zusammen mit der Kenntnis der Kanalgröße kann der Knoten-Sendeempfänger 120 die BCLK-Rate automatisch so einstellen, dass sie mit der Anzahl von Bits innerhalb der Abtastungszeit übereinstimmt (z. B. 48 kHz).
  • Der Knoten-Sendeempfänger 120 kann einen Sendeempfänger 129 zur I2C-Kommunikation zwischen dem Knoten-Sendeempfänger 120 und einer externen Vorrichtung 157 aufweisen. Obwohl die „externe Vorrichtung 157“ hierin im Singular angeführt werden kann, dient dies lediglich der einfacheren Veranschaulichung, und mehrere externe Vorrichtungen können mit dem Knoten-Sendeempfänger 120 über den I2C-Sendeempfänger 129 kommunizieren. Wie auf dem Fachgebiet bekannt, nutzt das I2C-Protokoll Takt(SCL)- und Daten(SDA)-Leitungen, um einen Datentransfer bereitzustellen. Der 12C-Sendeempfänger 129 kann mit der Busprotokollschaltungsanordnung 126 und Kontakten zur Kommunikation mit der externen Vorrichtung 157 in Kommunikation stehen. Vier Kontakte, ADR1, ADR2, SDA und SCL, sind in 2 dargestellt; ADR1 und ADR2 können verwendet werden, um die von dem Knoten-Sendeempfänger 120 verwendeten 12C-Adressen zu modifizieren, wenn der Knoten-Sendeempfänger 120 als I2C-Slave fungiert (z. B. wenn er in dem Hauptknoten 102-1 inkludiert ist), und SDA und SCL werden für die I2C-Seriendaten- bzw. Serientaktsignale verwendet. Wenn der Knoten-Sendeempfänger 120 in dem Hauptknoten 102-1 inkludiert ist, kann die externe Vorrichtung 157 den Host 110 aufweisen, und der 12C-Sendeempfänger 129 kann einen 12C-Slave bereitstellen, der Programmierbefehle von dem Host 110 empfangen kann. Im Speziellen kann ein I2C-Serienaktsignal an dem SCL-Kontakt als Eingabe von dem Host 110 für Registerzugriffe empfangen werden. Wenn der Knoten-Sendeempfänger 120 in einem Subknoten 102-2 inkludiert ist, kann die externe Vorrichtung 157 eine Peripherievorrichtung 108 aufweisen, und der 12C-Sendeempfänger 129 kann einen I2C-Master bereitstellen, um zu ermöglichen, dass der 12C-Sendeempfänger eine oder mehrere Peripherievorrichtungen gemäß Befehlen programmiert, die von dem Host 110 bereitgestellt und über den Bus 106 an den Knoten-Sendeempfänger 120 übertragen werden. Im Speziellen kann der I2C-Sendeempfänger 129 das I2C-Serientaktsignal an dem SCL-Kontakt als Ausgabe bereitstellen.
  • Der Knoten-Sendeempfänger 120 kann einen Sendeempfänger 136 zur SPI-Kommunikation zwischen dem Knoten-Sendeempfänger 120 und einer externen Vorrichtung 138 aufweisen. Obwohl die „externe Vorrichtung 138“ hierin im Singular angeführt werden kann, dient dies lediglich der einfacheren Veranschaulichung, und mehrere externe Vorrichtungen können mit dem Knoten-Sendeempfänger 120 über den SPI-Sendeempfänger 136 kommunizieren. Wie auf dem Fachgebiet bekannt, nutzt das SPI-Protokoll Salve-Select(SS)-, Takt(BCLK)-, Master-Out-Slave-In(MOSI)- und Master-In-Slave-Out(MISO)-Datenleitungen, um einen Datentransfer bereitzustellen, und Kontakte, die diesen vier Leitungen entsprechen, sind in 2 dargestellt. Der SPI-Sendeempfänger 136 kann mit der Busprotokollschaltungsanordnung 126 und Kontakten zur Kommunikation mit der externen Vorrichtung 138 in Kontakt stehen. Wenn der Knoten-Sendeempfänger 120 in dem Hauptknoten 102-1 inkludiert ist, kann die externe Vorrichtung 138 den Host 1 10 oder eine andere externe Vorrichtung aufweisen, und der SPI-Sendeempfänger 136 kann einen SPI-Slave bereitstellen, der Befehle von dem Host 110 oder einer anderen externen Vorrichtung empfangen und auf diese antworten kann. Wenn der Knoten-Sendeempfänger 120 in einem Subknoten 102-2 inkludiert ist, kann die externe Vorrichtung 138 eine Peripherievorrichtung 108 aufweisen, und der SPI-Sendeempfänger 136 kann einen SPI-Host bereitstellen, um zu ermöglichen, dass der SPI-Sendeempfänger 136 Befehle an eine oder mehrere Peripherievorrichtungen 108 sendet. Der SPI-Sendeempfänger 136 kann einen Lesedaten-First-In-First-Out(FIFO)-Puffer und einen Schreibdaten-FIFO-Puffer aufweisen. Der Lesedaten-FIFO-Puffer kann verwendet werden, um von anderen Knoten 102 gelesene Daten zu sammeln, und kann von einer externen Vorrichtung 138 gelesen werden, wenn die externe Vorrichtung 138 einen geeigneten Lesebefehl überträgt. Der Schreibdaten-FIFO-Puffer kann verwendet werden, um Schreibdaten von der externen Vorrichtung 138 zu sammeln, bevor die Schreibdaten an eine andere Vorrichtung übertragen werden.
  • Der Knoten-Sendeempfänger 120 kann einen Unterbrechungsanfrage(IRQ)-Kontakt aufweisen, der mit der Busprotokollschaltungsanordnung 126 in Kommunikation steht. Wenn der Knoten-Sendeempfänger 120 in dem Hauptknoten 102-1 inkludiert ist, kann die Busprotokollschaltungsanordnung 126 ereignisgesteuerte Unterbrechungsanfragen in Richtung des Hosts 110 über den IRQ-Kontakt bereitstellen. Wenn der Knoten-Sendeempfänger 120 in einem Subknoten 102-2 inkludiert ist (z. B. wenn der MSTR-Kontakt niedrig ist), kann der IRQ-Kontakt als GPIO-Kontakt mit Unterbrechungsanfragenfunktionalität dienen. Der Knoten-Sendeempfänger 120 kann andere Kontakte, zusätzlich zu den in 2 gezeigten, aufweisen (z. B. wie nachstehend ausgeführt).
  • Das System 100 kann in einer Reihe von unterschiedlichen Betriebsmodi betrieben werden. Die Knoten auf dem Bus 106 können jeweils ein Register aufweisen, das angibt, welcher Betriebsmodus aktuell aktiviert ist. Im Folgenden werden Beispiele für mehrere Betriebsmodi angeführt, die implementiert werden können. In einem Standby-Betriebsmodus ist die Busaktivität verringert, um eine umfassende Leistungsersparnis zu ermöglichen; der einzig benötigte Datenverkehr ist eine minimale stromabwärtige Präambel, um die PLLs jedes Knotens (z. B. PLL 128) synchron zu halten. In einem Standby-Betriebsmodus werden keine Auslesungen und Einschreibungen über den Bus 106 hinweg unterstützt. In einem Erkennungsbetriebsmodus kann der Hauptknoten 102-1 vorbestimmte Signale entlang des Busses 106 aussenden und auf geeignete Antworten warten, um die Topologie der entlang des Busses 106 verteilten Subknoten 102-2 abzubilden. In einem normalen Betriebsmodus kann ein vollständiger Registerzugriff auf und von den Subknoten 102-2 sowie Zugriff auf und von den Peripherievorrichtungen 108 über den 106 verfügbar sein. Der normale Modus kann global von dem Host 110 mit oder ohne synchrone stromaufwärtige Daten und mit oder ohne synchrone stromabwärtige Daten konfiguriert werden.
  • 3 ist ein Diagramm eines Abschnitts eines Synchronisationssteuerrahmens 180, der zur Kommunikation in dem System 100 genutzt wird, in Übereinstimmung mit mehreren Ausführungsformen. Im Speziellen kann der Synchronisationssteuerrahmen 180 zur Datentaktrückgewinnung und PLL-Synchronisation verwendet werden, wie nachstehend erläutert. Wie vorstehend angeführt, können die Kommunikationen, da sie über den Bus 106 in beide Richtungen erfolgen können, in stromabwärtige Abschnitte und stromaufwärtige Abschnitte zeitmultiplexiert werden. In einem stromabwärtigen Abschnitt können ein Synchronisationssteuerrahmen und stromabwärtige Daten von dem Hauptknoten 102-1 übertragen werden, während in einem stromaufwärtigen Abschnitt ein Synchronisationsantwortrahmen und stromaufwärtige Daten von jedem der Subknoten 102-2 zu dem Hauptknoten 102-1 übertragen werden können. Der Synchronisationssteuerrahmen 180 kann eine Präambel 182 und Steuerdaten 184 aufweisen. Jeder Subknoten 102-2 kann konfiguriert sein, um die Präambel 182 des empfangenen Synchronisationssteuerrahmens 180 als Zeitbasis zur Speisung der PLL 128 verwendet werden. Um dies zu erleichtern, folgt eine Präambel 182 nicht den „Regeln“ gültiger Steuerdaten 184 und kann daher leicht von den Steuerdaten 184 unterschieden werden.
  • In manchen Ausführungsformen beispielsweise kann die Kommunikation entlang des Busses 106 unter Verwendung eines Clock-First-, Transition-On-Zero-Differential-Manchester-Codierungsschemas codiert werden. Gemäß eines solchen Codierungsschemas beginnt jede Bit-Zeit mit einem Taktwechsel. Wenn der Datenwert null ist, wechselt das codierte Signal erneut in der Mitte der Bit-Zeit. Wenn der Datenwert eins ist, wechselt das codierte Signal nicht noch einmal. Die in 5 dargestellte Präambel 182 kann gegen das Codierungsprotokoll verstoßen (z. B. durch Taktwechsel, die nicht zu Beginn der Bit-Zeiten 5, 7 und 8 erfolgen), was bedeutet, dass die Präambel 182 mitunter nicht mit einem beliebigen legalen (z. B. korrekt codierten) Muster für die Steuerdaten 184 übereinstimmt. Zusätzlich dazu kann die Präambel 182 nicht reproduziert werden, indem ein legales Muster für die Steuerdaten 184 genutzt wird und der Bus 106 für eine einzelne Bit-Zeit oder für eine Mehrbit-Zeitperiode hoch oder tief gezwungen wird. Die in 5 dargestellte Präambel 182 ist rein veranschaulichend, und der Synchronisationssteuerrahmen 180 kann unterschiedliche Präambeln 182 aufweisen, die gegen das Codieren, das von den Steuerdaten 184 genutzt wird, auf beliebige Weise verstoßen.
  • Die Busprotokollschaltungsanordnung 126 kann eine andere Differential-Manchester-Entschlüsselungsschaltungsanordnung aufweisen, die auf einem Takt läuft, der von dem Bus 106 rückgewonnen wurde, und die den Synchronisationssteuerrahmen 180 detektiert, um einen Rahmensynchronisationsindikator an die PLL 128 zu senden. Auf diese Weise kann der Synchronisationssteuerrahmen 180 ohne die Verwendung eines Systemtakts oder eines Überabtastungstakts mit höherer Geschwindigkeit detektiert werden. Dementsprechend können die Subknoten 102-2 ein PLL-Synchronisationssignal von dem Bus 106 erhalten, ohne dass eine Kristalltaktquelle an den Subknoten 102-2 benötigt wird.
  • Wie vorstehend angeführt, können Kommunikationen entlang des Busses 106 in periodischen Superrahmen auftreten. 4 ist ein Diagramm eines Superrahmens 190 in Übereinstimmung mit mehreren Ausführungsformen. Wie in 6 gezeigt, kann ein Superrahmen mit einem Synchronisationssteuerrahmen 180 beginnen. Wenn der Synchronisationssteuerrahmen 180 als Zeitgebungsquelle für die PLL 128 verwendet wird, kann die Frequenz, bei der die Superrahmen kommuniziert werden („die Superrahmenfrequenz“) die gleiche wie sie Synchronisationssignalfrequenz sein. In manchen Ausführungsformen, in denen Audiodaten entlang des Busses 106 übertragen werden, kann die Superrahmenfrequenz die gleiche wie die Audioabtastungsfrequenz sein, die in dem System 100 verwendet wird (z. B. entweder 48 kHz oder 44,1 kHz), allerdings kann eine beliebige geeignete Superrahmenfrequenz verwendet werden. Jeder Superrahmen 190 kann in Perioden einer stromabwärtigen Übertragung 192, Perioden einer stromaufwärtigen Übertragung 194 und Perioden ohne Übertragung 196 (z. B. wenn der Bus 106 nicht angesteuert wird) unterteilt werden.
  • In 4 wird der Superrahmen 190 mit einer anfänglichen Periode einer stromabwärtigen Übertragung 192 und einer späteren Periode einer stromaufwärtigen Übertragung 194 gezeigt. Die Periode der stromabwärtigen Übertragung 192 kann einen Synchronisationssteuerrahmen 180 und X stromabwärtige Datenslots 198 aufweisen, wobei X null sein kann. Im Wesentlichen alle Signale auf dem Bus 106 können leitungscodiert sein und ein Synchronisationssignal sein, das stromabwärtig von dem Hauptknoten 102-1 zu dem letzten Subknoten 102-2 (z. B. dem Subknoten 102-2C) in Form der Synchronisationspräambel 182 in dem Synchronisationssteuerrahmen 180, wie vorstehend erläutert, weitergeleitet wird. Stromabwärtig können synchrone TDM-Daten in den X stromabwärtigen Datenslots 198 nach dem Synchronisationssteuerrahmen 180 inkludiert sein. Die stromabwärtigen Datenslots 198 können die gleiche Breite aufweisen. Wie vorstehend angeführt, kann die PLL 128 den Takt bereitstellen, den ein Knoten nutzt, um Kommunikationen über den Bus 106 zeitlich zu planen. In manchen Ausführungsformen, in denen der Bus 106 zur Übertragung von Audiodaten verwendet wird, kann die PLL 128 in einem Vielfachen der Audioabtastungsfrequenz betrieben werden (z. B. 1024 mal der Audioabtastungsfrequenz, was zu 1024-Bit-Takten in jedem Superrahmen führt).
  • Die Periode einer stromaufwärtigen Übertragung 194 kann einen Synchronisationsantwortrahmen 197 und Y stromaufwärtige Datenslots 199 aufweisen, wobei Y null sein kann. In manchen Ausführungsformen kann jeder Subknoten 102-2 einen Abschnitt der stromabwärtigen Datenslots 198 konsumieren. Der letzte Subknoten (z. B. Subknoten 2 in 1) kann (nach einer vorbestimmten Antwortzeit, die in einem Register des letzten Subknotens gespeichert ist) mit einem Synchronisationsantwortrahmen 197 antworten. Stromaufwärtig können synchrone TDM-Daten von jedem Subknoten 102-2 in den stromaufwärtigen Datenslots 199 direkt nach dem Synchronisationsantwortrahmen 197 hinzugefügt werden. Die stromaufwärtigen Datenslots 199 können die gleiche Breite aufweisen. Ein Subknoten 102-2, der nicht der letzte Subknoten ist (z. B. die Subknoten 0 und 1 in 1) kann den empfangenen Synchronisationsantwortrahmen 197 mit seiner eigenen stromaufwärtigen Antwort ersetzen, wenn eine Auslesung aus einem seiner Register in dem Synchronisationssteuerrahmen 180 des Superrahmens 190 angefragt wurde oder wenn eine Fern-12C-Auslesung in dem Synchronisationssteuerrahmen 180 des Superrahmens 190 angefragt wurde.
  • Wie vorstehend angeführt, kann der Synchronisationssteuerrahmen 180 jede stromabwärtige Übertragung einleiten. In manchen Ausführungsformen kann der Synchronisationssteuerrahmen 180 64 Bits lang sein, obwohl eine beliebige andere geeignete Länge verwendet werden kann. Der Synchronisationssteuerrahmen 1 80 kann mit der Präambel 182 starten, wie vorstehend erwähnt. In manchen Ausführungsformen, wenn der Synchronisationssteuerrahmen 180 von einem Subknoten 102-2 zu einem stromabwärtigen Subknoten 102-2 weiter übertragen wird, kann die Präambel 182 von dem übertragenden Subknoten 102-2 erzeugt werden, anstelle weiter übertragen zu werden.
  • Die Steuerdaten 184 des Synchronisationssteuerrahmens 180 können Felder aufweisen, die Daten enthalten, die zur Steuerung von Transaktionen über den Bus 106 genutzt werden. Beispiele für diese Felder werden nachstehend erläutert, und manche Ausführungsformen sind in 5 dargestellt. Im Speziellen zeigt 5 Beispielformate für den Synchronisationssteuerrahmen 180 im normalen Modus, 12C-Modus und Erkennungsmodus in Übereinstimmung mit mehreren Ausführungsformen. In manchen Ausführungsformen kann eine völlig andere Präambel 182 oder ein anderer Synchronisationssteuerrahmen 180 im Standby-Modus verwendet werden, sodass die Subknoten 102-2 nicht alle Synchronisationssteuerrahmen 180 empfangen müssen, bis ein Wechsel zum normalen Modus gesendet wird.
  • In manchen Ausführungsformen kann der Synchronisationssteuerrahmen 180 ein Count(CNT)-Feld aufweisen. Das CNT-Feld kann eine beliebige geeignete Länge (z. B. 2 Bits) aufweisen und kann ausgehend von dem in dem vorangegangenen Superrahmen genutzten Wert erhöht werden (Modulo der Feldlänge). Ein Subknoten 102-2, der einen unerwarteten CNT-Wert empfängt, kann programmiert werden, um eine Unterbrechung zurückzusenden.
  • In manchen Ausführungsformen kann der Synchronisationssteuerrahmen 180 ein Knotenadressierungsmodus(NAM)-Feld aufweisen. Das NAM-Feld kann eine beliebige geeignete Länge aufweisen (z. B. 2 Bits) und kann verwendet werden, um den Zugriff auf Register eines Subknotens 102-2 über den Bus 106 zu steuern. In dem normalen Modus können Register eines Subknotens 102-2 basierend auf der ID des Subknotens 102-2 und der Adresse des Registers ausgelesen und/oder in diese eingeschrieben werden. Ausstrahlungstransaktionen sind Einschreibungen, die von jedem Subknoten 102-2 vorgenommen werden sollen. In manchen Ausführungsformen kann das NAM-Feld vier Knotenadressierungsmodi bereitstellen, einschließlich „keine“ (z. B. sind die Daten nicht an einen bestimmten Subknoten 102-2 adressiert), „normal“ (z. B. sind die Daten nur an einen vorgegebenen Subknoten 102-2 adressiert, der in dem nachstehend ausgeführten Adressfeld vorgegeben ist), „Ausstrahlung“ (z. B. an alle Subknoten 102-2 adressiert) und „Erkennung".
  • In manchen Ausführungsformen kann der Synchronisationssteuerrahmen 180 ein I2C-Feld aufweisen. Das I2C-Feld kann eine beliebige geeignete Länge aufweisen (z. B. 1 Bit) und verwendet werden, um anzugeben, dass die Periode der stromabwärtigen Übertragung 192 eine I2C-Transaktion aufweist. Das I2C-Feld kann angeben, dass der Host 1 10 Befehle bereitgestellt hat, um remote auf eine Peripherievorrichtung 108 zuzugreifen, die in Bezug auf einen zugeordneten Subknoten 102-2 als I2C-Slave fungiert.
  • In manchen Ausführungsformen kann der Synchronisationssteuerrahmen 180 ein Knotenfeld aufweisen. Das Knotenfeld kann eine beliebige geeignete Länge aufweisen (z. B. 4 Bits) und kann verwendet werden, um anzugeben, welcher Subknoten für einen normalen und einen I2C-Zugriff adressiert wird. Im Erkennungsmodus kann dieses Feld verwendet werden, um einen Identifikator für einen neu erkannten Subknoten 102-2 in einem Knoten-ID-Register des Subknotens 102-2 zu programmieren. Jeder Subknoten 102-2 in dem System 100 kann einer eindeutigen ID zugeordnet werden, wenn der Subknoten 102-2 von dem Hauptknoten 102-1 erkannt wird, wie nachstehend angeführt. In manchen Ausführungsformen weist der Hauptknoten 102-1 keine Knoten-ID auf, während der Hauptknoten 102-1 in anderen Ausführungsformen eine Knoten-ID aufweisen kann. In manchen Ausführungsformen ist der an dem Hauptknoten 102-1 auf dem Bus 106 hängende Subknoten 102-2 (z. B. Subknoten 0 in 1) Subknoten 0, und jeder darauffolgende Subknoten 102-2 weist eine Zahl auf, die um 1 höher als der vorangegangene Subknoten ist. Dies ist allerdings rein veranschaulichend, es kann ein beliebiges geeignetes Subknoten-Identifikationssystem verwendet werden.
  • In manchen Ausführungsformen kann der Synchronisationssteuerrahmen 180 ein Lese-/Schreib(RW)-Feld aufweisen. Das RW-Feld kann eine beliebige geeignete Länge aufweisen (z. B. 1 Bit) und kann zur Steuerung verwendet werden, ob normale Zugriffe Auslesungen (z. B. RW==1) oder Einschreibungen (z. B. RW==0) sind.
  • In manchen Ausführungsformen kann der Synchronisationssteuerrahmen 180 ein Adressfeld aufweisen. Das Adressfeld kann eine beliebige geeignete Länge aufweisen (z. B. 8 Bits) und kann zur Adressierung vorgegebener Register eines Subknotens 102-2 durch den Bus 106 verwendet werden. Für I2C-Transaktionen kann das Adressfeld mit I2C-Steuerwerten ersetzt werden, wie beispielsweise START/STOP, WAIT, RW und DATA VLD. Für Erkennungstransaktionen kann das Adressfeld einen vorbestimmten Wert aufweisen (z. B. wie in 5 dargestellt).
  • In manchen Ausführungsformen kann der Synchronisationssteuerrahmen 180 ein Datenfeld aufweisen. Das Datenfeld kann eine beliebige geeignete Länge aufweisen (z. B. 8 Bits) und kann für normale, I2C- und Ausstrahlungseinschreibungen verwendet werden. Der RESPCYCS-Wert, multipliziert mit 4, kann verwendet werden, um zu bestimmen, wie viele Zyklen ein neu erkannter Knoten zwischen dem Start des Empfangs des Synchronisationssteuerrahmens 180 und dem Start der Übertragung des Synchronisationsantwortrahmens 197 verstreichen lassen sollte. Wenn das NAM-Feld einen Erkennungsmodus angibt, können die nachstehend ausgeführte Knotenadresse und Datenfelder als RESPCYCS-Wert codiert werden, der bei einer Multiplikation mit einem geeigneten optionalen Multiplikator (z. B. 4), die Zeit ab dem Ende des Synchronisationssteuerrahmens 180 bis zu dem Start des Synchronisationsantwortrahmens 197 in Bits angibt. Dadurch wird ermöglicht, dass ein neu erkannter Subknoten 102-2 den geeigneten Zeitslot für eine stromaufwärtige Übertragung bestimmt.
  • In manchen Ausführungsformen kann der Synchronisationssteuerrahmen 180 ein Feld einer zyklischen Redundanzprüfung (CRC) aufweisen. Das CRC-Feld kann eine beliebige geeignete Länge aufweisen (z. B. 16 Bits) und kann verwendet werden, um einen CRC-Wert für die Steuerdaten 184 des Synchronisationssteuerrahmens 180 nach der Präambel 182 zu übertragen. In manchen Ausführungsformen kann die CRC in Übereinstimmung mit dem CCITT-CRC-Fehlerdetektionsschema berechnet werden.
  • In manchen Ausführungsformen kann zumindest ein Abschnitt des Synchronisationssteuerrahmens 180 zwischen der Präambel 182 und dem CRC-Feld verschlüsselt werden, um die Wahrscheinlichkeit zu verringern, dass eine Bit-Sequenz in diesem Intervall periodisch mit der Präambel 182 übereinstimmt (und somit von dem Subknoten 102-2 als Start eines neuen Superrahmens 190 fehlinterpretiert werden kann), sowie um die elektromagnetischen Emissionen zu verringern, wie vorstehend angeführt. In manchen solcher Ausführungsformen kann das CNT-Feld des Synchronisationssteuerrahmens 180 von Verschlüsselungslogik verwendet werden, um sicherzustellen, dass die verschlüsselten Felder je nach Superrahmen unterschiedlich verschlüsselt sind. In mehreren Ausführungsformen des hierin beschriebenen Systems 100 kann das Verschlüsseln weggelassen werden.
  • Zusätzlich zu oder anstelle von Verfahren wie der vorstehend beschriebenen Verschlüsselung und/oder Fehlercodierung können weitere Verfahren eingesetzt werden, um sicherzustellen, dass die Präambel 182 eindeutig von den Subknoten 102-2 identifiziert werden kann, oder um die Wahrscheinlichkeit zu verringern, dass die Präambel 182 an anderer Stelle in dem Synchronisationssteuerrahmen 180 auftaucht. Beispielsweise kann eine längere Synchronisationssequenz eingesetzt werden, um die Wahrscheinlichkeit zu verringern, dass eine bestimmte Codierung des restlichen Synchronisationssteuerrahmens 180 damit übereinstimmt. Alternativ oder zusätzlich dazu kann der restliche Synchronisationssteuerrahmen so strukturiert sein, dass die Synchronisationssequenz nicht auftreten kann, wie beispielsweise indem festgelegte Werte „0“ oder „1" an geeigneten Bits platziert werden.
  • Der Hauptknoten 102-1 kann eine Lese- und Schreibanfrage an die Subknoten 102-2 senden, einschließlich sowohl für die Kommunikation auf dem Bus 106 vorgegebener Anfragen als auch 12C-Anfragen. Beispielsweise kann der Hauptknoten 102-1 Lese- und Schreibanfragen (die unter Verwendung des RW-Felds angegeben werden) an einen oder mehrere vorgesehene Subknoten 102-2 senden (unter Verwendung des NAM- und Knotenfelds) und kann angeben, ob die Anfrage eine Anfrage für den für den Bus 106 vorgegebenen Subknoten 102-2, eine I2C-Anfrage für den Subknoten 102-2 oder eine I2C-Anfrage ist, die an eine I2C-kompatible Peripherievorrichtung 108 weitergegeben werden soll, die mit dem Subknoten 102-2 an einem oder mehreren I2C-Anschlüssen des Subknotens 102-2 gekoppelt ist.
  • Bei der stromaufwärtigen Kommunikation kann der Synchronisationsantwortrahmen 197 den Beginn jeder stromaufwärtigen Kommunikation darstellen. In manchen Ausführungsformen kann der Synchronisationsantwortrahmen 197 64 Bits lang sein, aber es kann eine andere beliebige Länge verwendet werden. Der Synchronisationsantwortrahmen 197 kann ebenfalls eine Präambel aufweisen, wie vorstehend in Bezug auf die Präambel 182 des Synchronisationssteuerrahmens 180 erläutert, gefolgt von einem Datenabschnitt. Am Ende einer stromabwärtigen Übertragung kann der letzte Subknoten 102-2 auf dem Bus 106 warten, bis der RESPCYCS-Zähler abgelaufen ist und dann mit der Übertragung eines Synchronisationsantwortrahmens 197 stromaufwärts beginnen. Wenn ein stromaufwärtiger Subknoten 102-2 von einer normalen Lese- oder Schreibtransaktion anvisiert wurde, kann ein Subknoten 102-2 seinen eigenen Synchronisationsantwortrahmen 197 erzeugen und jenen ersetzen, der von stromabwärtiger Seite erhalten wurde. Wenn ein beliebiger Subknoten 102-2 keinen Synchronisationsantwortrahmen 197 von einem stromabwärtigen Subknoten 102-2 zu dem erwarteten Zeitpunkt erhält, erzeugt der Subknoten 102-2 seinen eigenen Synchronisationsantwortrahmen 197 und beginnt mit der Übertragung stromaufwärts.
  • Der Datenabschnitt des Synchronisationsantwortrahmens 197 kann Felder aufweisen, die Daten enthalten, die verwendet werden, um Antwortinformationen zurück zu dem Hauptknoten 102-1 zu kommunizieren. Beispiele für diese Felder sind im Folgenden angeführt, und manche Ausführungsformen sind in 6 dargestellt. Im Speziellen veranschaulicht 6 beispielhafte Formate für den Synchronisationsantwortrahmen 197 im normalen Modus, I2C-Modus und Erkennungsmodus in Übereinstimmung mit mehreren Ausführungsformen.
  • In manchen Ausführungsformen kann der Synchronisationsantwortrahmen 197 ein Count(CNT)-Feld aufweisen. Das CNT-Feld kann eine beliebige geeignete Länge aufweisen (z. B. 2 Bits) und kann verwendet werden, um den Wert des CNT-Felds in dem zuvor empfangenen Synchronisationssteuerrahmen 180 zu übertragen.
  • In manchen Ausführungsformen kann der Synchronisationsantwortrahmen 197 ein Bestätigung(ACK)-Feld aufweisen. Das ACK-Feld kann eine beliebige geeignete Länge aufweisen (z. B. 2 Bits) und kann von einem Subknoten 102-2 eingefügt werden, um einen Befehl zu bestätigen, der in dem vorangegangenen Synchronisationssteuerrahmen 180 empfangen wurde, wenn dieser Subknoten 102-2 den Synchronisationsantwortrahmen 197 erzeugt. Beispielhafte Indikatoren, die in dem ACK-Feld kommuniziert werden können, weisen warten, bestätigen, nicht bestätigen (NACK) und erneut versuchen auf. In manchen Ausführungsformen kann das ACK-Feld so dimensioniert sein, dass es eine Bestätigung von einem Subknoten 102-2 überträgt, der eine Ausstrahlungsnachricht erhalten und verarbeitet hat (z. B. durch Übertragen einer Ausstrahlungsbestätigung an den Hauptknoten 102-1). In manchen solcher Ausführungsformen kann ein Subknoten 102-2 außerdem angeben, ob der Subknoten 102-2 Daten zur Übertragung aufweist (die beispielsweise für anforderungsbasierte stromaufwärtige Übertragungen, wie beispielsweise Nicht-TDM-Eingaben von einer Tastatur oder einem Touchscreen, oder für priorisierte stromaufwärtige Übertragungen verwendet werden können, wie beispielsweise wenn der Subknoten 102-2 einen Fehler oder einen Notfallzustand melden möchte).
  • In manchen Ausführungsformen kann der Synchronisationsantwortrahmen 197 ein I2C-Feld aufweisen. Das I2C-Feld kann eine beliebige geeignete Länge aufweisen (z. B. 1 Bit) und kann verwendet werden, um den Wert des I2C-Felds in dem zuvor empfangenen Synchronisationssteuerrahmen 180 zu übertragen.
  • In manchen Ausführungsformen kann der Synchronisationsantwortrahmen 197 ein Knotenfeld aufweisen. Das Knotenfeld kann eine beliebige geeignete Länge aufweisen (z. B. 4 Bits) und kann verwendet werden, um die ID des Subknotens 102-2 zu übertragen, der den Synchronisationsantwortrahmen 197 erzeugt.
  • In manchen Ausführungsformen kann der Synchronisationsantwortrahmen 197 ein Datenfeld aufweisen. Das Datenfeld kann eine beliebige geeignete Länge aufweisen (z. B. 8 Bits), und sein Wert kann von der Art der Transaktion und der ACK-Antwort des Subknotens 102-2 abhängen, der den Synchronisationsantwortrahmen 197 erzeugt. Für Erkennungstransaktionen kann das Datenfeld den Wert des RESPCYCS-Felds in dem zuvor empfangenen Synchronisationssteuerrahmen 180 aufweisen. Wenn das ACK-Feld eine NACK angibt oder wenn der Synchronisationsantwortrahmen 197 auf eine Ausstrahlungstransaktion antwortet, kann das Datenfeld einen Ausstrahlungsantwort(BA)-Indikator (in dem der letzte Subknoten 102-2 angeben kann, ob die Ausstrahlungseinschreibung ohne Fehler empfangen wurde), einen Erkennungsfehler(DER)-Indikator (der angibt, ob ein neu erkannter Subknoten 102-2 in einer Erkennungstransaktion mit einem existierenden Subknoten 102-2 übereinstimmt) und einen CRC-Fehler(CER)-Indikator (der angibt, ob eine NACK durch einen CRC-Fehler verursacht wurde) aufweisen.
  • In manchen Ausführungsformen kann der Synchronisationsantwortrahmen 197 ein CRC-Feld aufweisen. Das CRC-Feld kann eine beliebige geeignete Länge aufweisen (z. B. 16 Bits) und kann verwendet werden, um einen CRC-Wert für den Abschnitt des Synchronisationsantwortrahmens 197 zwischen der Präambel und dem CRC-Feld zu übertragen.
  • In manchen Ausführungsformen kann der Synchronisationsantwortrahmen 197 ein Unterbrechungsanfrage(IRQ)-Feld aufweisen. Das IRQ-Feld kann eine beliebige geeignete Länge aufweisen (z. B. 1 Bit) und kann verwendet werden, um anzugeben, dass eine Unterbrechung von einem Subknoten 102-2 signalisiert wurde.
  • In manchen Ausführungsformen kann der Synchronisationsantwortrahmen 197 ein IRQ-Knoten(IRQNODE)-Feld aufweisen. Das IRQNODE-Feld kann eine beliebige geeignete Länge aufweisen (z. B. 4 Bits) und kann verwendet werden, um die ID des Subknotens 102-2 zu übertragen, der die von dem IRQ-Feld dargestellte Unterbrechung signalisiert hat. In manchen Ausführungsformen fügt der Subknoten 102-2 zur Erzeugung des IRQ-Felds seine eigene ID in das IRQNODE-Feld ein.
  • In manchen Ausführungsformen kann der Synchronisationsantwortrahmen 197 ein zweites CRC(CRC-4)-Feld aufweisen. Das CRC4-Feld kann eine beliebige geeignete Länge aufweisen (z. B. 4 Bits) und kann verwendet werden, um einen CRC-Wert für das IRQ-Feld und das IRQNODE-Feld zu übertragen.
  • In manchen Ausführungsformen kann der Synchronisationsantwortrahmen 197 ein IRQ-Feld, ein IRQNODE-Feld und ein CRC-4-Feld als die letzten Bits des Synchronisationsantwortrahmens 197 aufweisen (z. B. die letzten 10 Bits). Wie vorstehend ausgeführt, können diese unterbrechungsbezogenen Felder ihren eigenen CRC-Schutz in Form von CRC-4 aufweisen (und sind daher nicht von dem vorangehenden CRC-Feld geschützt). Ein beliebiger Subknoten 102-2, der dem Hauptknoten 102-1 eine Unterbrechung signalisieren muss, fügt seine Unterbrechungsinformationen in diese Felder ein. In manchen Ausführungsformen kann ein Subknoten 102-2 mit einer ausstehenden Unterbrechung eine höhere Priorität als ein beliebiger Subknoten 102-2 weiter stromabwärts aufweisen, der ebenfalls eine ausstehende Unterbrechung aufweist. Der letzte Subknoten 102-2 entlang des Busses 106 (z. B. Subknoten 2 in 1) kann diese Unterbrechungsfelder immer befüllen. Wenn der letzte Subknoten 102-2 keine ausstehende Unterbrechung aufweist, kann der letzte Subknoten 102-2 das IRQ-Bit auf 0 setzen, das IRQNODE-Feld auf seine Knoten-ID setzen und den korrekten CRC-4 bereitstellen. Der Einfachheit halber kann ein Synchronisationsantwortrahmen 197, der eine Unterbrechung übermittelt, hierin als „Unterbrechungsrahmen“ bezeichnet werden.
  • In manchen Ausführungsformen kann zumindest ein Abschnitt des Synchronisationsantwortrahmens 197 zwischen der Präambel 182 und dem CRC-Feld verschlüsselt werden, um Emissionen zu verringern. In manchen solcher Ausführungsformen kann das CNT-Feld des Synchronisationsantwortrahmens 197 von Verschlüsselungslogik verwendet werden, um sicherzustellen, dass verschlüsselte Felder je nach Superrahmen unterschiedlich verschlüsselt sind. In mehreren Ausführungsformen des hierin beschriebenen Systems 100 kann die Verschlüsselung weggelassen werden.
  • Zusätzlich zu oder anstelle von Verfahren wie der vorstehend beschriebenen Verschlüsselung und/oder Fehlercodierung können weitere Verfahren eingesetzt werden, um sicherzustellen, dass die Präambel 182 eindeutig von den Subknoten 102-2 identifiziert werden kann, oder um die Wahrscheinlichkeit zu verringern, dass die Präambel 182 an anderer Stelle in dem Synchronisationsantwortrahmen 197 auftaucht. Beispielsweise kann eine längere Synchronisationssequenz eingesetzt werden, um die Wahrscheinlichkeit zu verringern, dass eine bestimmte Codierung des restlichen Synchronisationsantwortrahmens 197 damit übereinstimmt. Alternativ oder zusätzlich dazu kann der restliche Synchronisationsantwortrahmen so strukturiert sein, dass die Synchronisationssequenz nicht auftreten kann, wie beispielsweise indem festgelegte Werte „0“ oder „1" an geeigneten Bits platziert werden.
  • 7 ist ein Blockdiagramm der Busprotokollschaltungsanordnung 126 von 2, in Übereinstimmung mit mehreren Ausführungsformen. Die Busprotokollschaltungsanordnung 126 kann eine Steuerschaltungsanordnung 154 aufweisen, um den Betrieb des Knoten-Sendeempfängers 120 in Übereinstimmung mit dem hierin beschriebenen Protokoll für den Bus 106 zu steuern. Im Speziellen kann die Steuerschaltungsanordnung 154 die Erzeugung von Synchronisationsrahmen zur Übertragung (z. B. Synchronisationssteuerrahmen oder Synchronisationsantwortrahmen, wie vorstehend ausgeführt), die Verarbeitung von empfangenen Synchronisationsrahmen und die Durchführung von Steuervorgängen steuern, die in empfangenen Synchronisationssteuerrahmen vorgegeben sind. Die Steuerschaltungsanordnung 154 kann programmierbare Register aufweisen, wie nachstehend ausgeführt. Die Steuerschaltungsanordnung 154 kann Synchronisationssteuerrahmen erzeugen und empfangen, auf geeignete Weise auf die empfangenen Nachrichten reagieren (z. B. zugeordnet zu einem Synchronisationssteuerrahmen, wenn die Busprotokollschaltungsanordnung 126 in einem Subknoten 102-2 inkludiert ist oder von einer I2C-Vorrichtung, wenn die Busprotokollschaltungsanordnung 126 in einem Hauptknoten 102-1 inkludiert ist), und die Rahmensetzung an die unterschiedlichen Betriebsmodi (z. B. normal, Erkennung, Standby etc.) anpassen.
  • Wenn der Knoten-Sendeempfänger 120 Daten zur Übertragung entlang des Busses 106 vorbereitet, kann die Präambelschaltungsanordnung 156 konfiguriert sein, um Präambeln für Synchronisationsrahmen zur Übertragung zu erzeugen, und um Präambeln von empfangenen Synchronisationsrahmen zu empfangen. In manchen Ausführungsformen kann eine stromabwärtige Synchronisationssteuerrahmen-Präambel alle 1024 Bits von dem Hauptknoten 102-1 gesendet werden. Wie vorstehend ausgeführt, können sich ein oder mehrere Subknoten 102-2 mit der stromabwärtigen Synchronisationssteuerrahmen-Präambel synchronisieren und lokale, phasenausgerichtete Haupttakte von der Präambel erzeugen.
  • CRC-Einsatzschaltungsanordnung 158 kann konfiguriert sein, um eine oder mehrere CRCs für Synchronisationsrahmen zur Übertragung zu erzeugen. Rahmensetzungs-/Komprimierungsschaltungsanordnung 160 kann konfiguriert sein, um eingehende Daten von dem 12S/TDM/PDM-Sendeempfänger 127 (z. B. von einem Rahmenpuffer, der dem Sendeempfänger 127 zugeordnet ist 127), dem 12C-Sendeempfänger 129 und/oder dem SPI-Sendeempfänger 136 zu übernehmen, diese Daten gegebenenfalls zu komprimieren, und gegebenenfalls Paritätsprüfungsbits oder Fehlerkorrekturcodes (ECC) für die Daten zu erzeugen. Ein Multiplexer (MUX) 162 kann eine Präambel aus der Präambelschaltungsanordnung 156, Synchronisationsdaten und Daten in einen Strom zur Übertragung multiplexieren. In manchen Ausführungsformen kann der übertragene Strom vor der Übertragung durch eine Verschlüsselungsschaltungsanordnung 164 verschlüsselt werden.
  • In manchen Ausführungsformen beispielsweise kann die Rahmensetzungs-/Komprimierungsschaltungsanordnung 160 ein Gleitkommakomprimierungsschema anwenden. In einer solchen Ausführungsform kann die Steuerschaltungsanordnung 154 3 Bits übertragen, um anzugeben, wie viele wiederholte Zeichenbits in der Zahl sind, gefolgt von einem Zeichenbit und N-4-Datenbits, wobei N die Größe der über den Bus 106 zu übertragenden Daten ist. Die Verwendung von Datenkomprimierung kann nach Bedarf vom Hauptknoten 102-1 konfiguriert werden.
  • In manchen Ausführungsformen kann der Empfangsstrom, der in den Knoten-Sendeempfänger 120 eintritt, von der Entschlüsselungsschaltungsanordnung 166 entschlüsselt werden. Ein Demultiplexer (DEMUX) 168 kann die Präambel, Synchronisationsrahmen und Daten aus dem Empfangsstrom demultiplexieren. CRC-Prüfungsschaltungsanordnung 159 auf der Empfangsseite kann die empfangenen Synchronisationsrahmen auf die korrekte CRC prüfen. Wenn die CRC-Prüfungsschaltungsanordnung 159 einen CRC-Fehlschlag in einem eingehenden Synchronisationssteuerrahmen 180 identifiziert, kann die Steuerschaltungsanordnung 154 über den Fehlschlag benachrichtigt werden und führt keine Steuerbefehle in den Steuerdaten 184 des Synchronisationssteuerrahmens 180 durch. Wenn die CRC-Prüfungsschaltungsanordnung 159 einen CRC-Fehlschlag in einem eingehenden Synchronisationsantwortrahmen 197 identifiziert, kann die Steuerschaltungsanordnung 154 über den Fehlschlag identifiziert werden und eine Unterbrechung für die Übertragung an den Host 110 in einem Unterbrechungsrahmen erzeugen. Rahmenentfernungs-/Entpackungsschaltungsanordnung 170 kann empfangene Daten annehmen, gegebenenfalls deren Parität prüfen, gegebenenfalls eine Fehlerdetektion und -korrektur durchführen (z. B. Einzelfehlerkorrektur - Doppelfehlerdetektion (SECDED)), die Daten gegebenenfalls entpacken und die empfangenen Daten in den I2S/TDM/PDM-Sendeempfänger 127 (z. B. einen dem Sendeempfänger 127 zugeordneten Rahmenpuffer), den 12C-Sendeempfänger 129 und/oder den SPI-Sendeempfänger 136 schreiben.
  • Wie vorstehend ausgeführt, können stromaufwärtige und stromabwärtige Daten entlang des Busses in TDM-Datenslots innerhalb eines Superrahmens 190 übertragen werden. Die Steuerschaltungsanordnung 154 kann Register aufweisen, die der Verwaltung dieser Datenslots auf dem Bus 106 zugewiesen sind, wobei eine Reihe von Beispielen dafür nachstehend ausgeführt wird. Wenn die Steuerschaltungsanordnung 154 in einem Hauptknoten 102-1 inkludiert ist, können die Werte in diesen Registern von dem Host 1 10 in die Steuerschaltungsanordnung 154 programmiert werden. Wenn die Steuerschaltungsanordnung 154 in einem Subknoten 102-2 inkludiert ist, können die Werte in diesen Registern von dem Hauptknoten 102-1 in die Steuerschaltungsanordnung 154 programmiert werden.
  • In manchen Ausführungsformen kann die Steuerschaltungsanordnung 154 ein Register für stromabwärtige Slots (DNSLOTS) aufweisen. Wenn der Knoten-Sendeempfänger 120 in dem Hauptknoten 102-1 inkludiert ist, kann dieses Register den Wert der Gesamtzahl von stromabwärtigen Datenslots enthalten. Das Register kann außerdem die Anzahl von Datenslots definieren, die für einen kombinierten I2S/TDM/PDM-Empfang durch den 12S/TDM/PDM-Sendeempfänger 127 in dem Hauptknoten 102-1 verwendet wird. In einem Subknoten 102-2 kann dieses Register die Anzahl von Datenslots vor oder nach dem Hinzufügen von lokal erzeugten stromabwärtigen Slots definieren, die stromabwärts zu dem nächsten Subknoten 102-2 weitergegeben werden, wie näher nachstehend in Bezug auf LDNSLOTS ausgeführt.
  • In manchen Ausführungsformen kann die Steuerschaltungsanordnung 154 ein Register für lokale stromabwärtige Slots (LDNSLOTS) aufweisen. Dieses Register kann in dem Hauptknoten 102-1 ungenutzt bleiben. In einem Subknoten 102-2 kann dieses Register die Anzahl von Datenslots definieren, die der Subknoten 102-2 verwendet und nicht weiter überträgt. Alternativ dazu kann dieses Register die Anzahl von Slots definieren, die der Subknoten 102-2 zu der stromabwärtigen Verbindung des Busses 106 beitragen kann.
  • In manchen Ausführungsformen kann die Steuerschaltungsanordnung 154 ein Register für stromaufwärtige Slots (UPSLOTS) aufweisen. In dem Hauptknoten 102-1 kann dieses Register den Wert der Gesamtzahl von stromaufwärtigen Datenslots enthalten. Dieses Register kann außerdem die Anzahl von Slots definieren, die zur I2S/TDM-Übertragung durch den 12S/TDM/PDM-Sendeempfänger 127 in dem Hauptknoten 102-1 verwendet wird. In einem Subknoten 102-2 kann dieses Register die Anzahl von Datenslots definieren, die stromaufwärts weitergegeben werden, bevor der Subknoten 102-2 mit dem Hinzufügen seiner eigenen Daten beginnt.
  • In manchen Ausführungsformen kann die Steuerschaltungsanordnung 154 ein Register für lokale stromaufwärtige Slots (LUPSLOTS) aufweisen. Dieses Register kann in dem Hauptknoten 102-1 ungenutzt bleiben. In einem Subknoten 102-2 kann dieses Register die Anzahl von Datenslots definieren, die der Subknoten 102-2 zu den stromabwärtig empfangenen Daten hinzufügt, bevor sie stromaufwärts gesendet werden. Dieses Register kann außerdem die Anzahl von Datenslots definieren, die zum kombinierten I2S/TDM/PDM-Empfang durch den 12S/TDM/PDM-Sendeempfänger 127 in dem Subknoten 102-2 verwendet werden.
  • In manchen Ausführungsformen kann die Steuerschaltungsanordnung 154 ein Register für stromabwärtige Ausstrahlungsslots (BCDNSLOTS) aufweisen. Dieses Register kann in dem Hauptknoten 102-1 ungenutzt bleiben. In einem Subknoten 102-2 kann dieses Register die Anzahl von Ausstrahlungsdatenslots definieren. In manchen Ausführungsformen kommen die Ausstrahlungsdatenslots mitunter immer am Beginn des Datenfelds. Die Daten in den Ausstrahlungsdatenslots können von mehreren Subknoten 102-2 verwendet und von allen Subknoten 102-2 stromabwärts weitergegeben werden, egal ob diese genutzt werden oder nicht.
  • In manchen Ausführungsformen kann die Steuerschaltungsanordnung 154 ein Slotformat(SLOTFMT)-Register aufweisen. Das Register kann das Datenformat für stromaufwärtige und stromabwärtige Übertragungen definieren. Die Datengröße für den 12S/TDM/PDM-Sendeempfänger 127 kann ebenfalls von diesem Register bestimmt werden. In manchen Ausführungsformen weist eine gültige Datengröße 8, 12, 16, 20, 24, 28 und 32 Bits auf. Das Register kann außerdem Bits aufweisen, um eine Gleitkommakomprimierung für stromabwärtigen und stromaufwärtigen Datenverkehr zu aktivieren. Wenn die Gleitkommakomprimierung aktiviert ist, kann die I2S/TDM-Datengröße 4 Bits größer als die Datengröße über den Bus 106 sein. Alle Knoten in dem System 100 können die gleichen Werte für SLOTFMT aufweisen, wenn Datenslots aktiviert sind, und die Knoten können durch eine Ausstrahlungseinschreibung so programmiert werden, dass alle Knoten mit dem gleichen Wert aktualisiert werden.
  • 8-1 1 zeigt Beispiele für den Informationsaustausch entlang des Busses 106 gemäß verschiedenen Ausführungsformen des hierin beschriebenen Busprotokolls. Insbesondere zeigen 8-1 1 Ausführungsformen, in denen jeder Subknoten 102-2 mit einem oder mehreren Lautsprechern und/oder einem oder mehreren Mikrofonen als die Peripherievorrichtung 108 gekoppelt ist. Dies ist nur veranschaulichend, da eine beliebige gewünschte Anordnung der Peripherievorrichtung 108 gemäß den hierin beschriebenen Verfahren mit einem beliebigen bestimmten Subknoten 102-2 gekoppelt werden kann.
  • Zuerst zeigt 8 Signalisierungs- und Zeitgebungsaspekte für eine bidirektionale Kommunikation auf dem Bus 106 gemäß verschiedenen Ausführungsformen. Die in 8 dargestellten Subknoten 102-2 weisen eine unterschiedliche Anzahl von Sensor-/Betätigungselementen auf und daher können unterschiedliche Datenmengen an die verschiedenen Subknoten 102-2 gesendet oder von diesen empfangen werden. Im Speziellen weist Subknoten 1 zwei Elemente auf, Subknoten 4 weist vier Elemente auf und Subknoten 5 weist drei Elemente auf, sodass Daten, die durch den Hauptknoten 102-1 übertragen werden, zwei Zeitslots für Subknoten 1, vier Zeitslots für Subknoten 4 und drei Zeitslots für Subknoten 5 aufweist. Ähnlich dazu weist Subknoten 0 drei Elemente auf, Subknoten 2 weist drei Elemente auf, Subknoten 3 weist drei Elemente auf, Subknoten 6 weist ein Element auf und Subknoten 7 weist vier Elemente auf, sodass Daten, die durch jene Subknoten 102-2 stromaufwärts übertragen werden, die entsprechende Anzahl von Zeitslots aufweisen. Es gilt anzumerken, dass es keine eindeutige Korrelation zwischen Elementen und Zeitslots geben muss. Beispielsweise kann eine Mikrofonanordnung, die in der Peripherievorrichtung 108 enthalten ist, die drei Mikrofone aufweist, einen DSP aufweisen, der Signale von den drei Mikrofonen (und möglicherweise Informationen, die von dem Hauptknoten 102-1 oder von anderen Subknoten 102-2 empfangen werden) kombiniert, um eine einzelne Datenabtastung zu erzeugen, die, je nach Verarbeitungstyp, einem einzelnen Zeitslot oder mehreren Zeitslots entsprechen könnte.
  • In 8 überträgt der Hauptknoten 102-1 einen SCF, gefolgt von Daten für Lautsprecher, die mit bestimmten Subknoten 102-2 (SD) gekoppelt sind. Jeder darauffolgende Subknoten 102-2 leitet den SCF weiter und leitet auch zumindest beliebige Daten weiter, die für stromabwärtige Subknoten 102-2 gedacht sind. Ein bestimmter Subknoten 102-2 kann alle Daten weiterleiten oder kann Daten, die für jenen Subknoten 102-2 gedacht sind, entfernen. Wenn der letzte Subknoten 102-2 den SCF empfängt, überträgt jener Subknoten 102-2 den SRF weiter, gegebenenfalls gefolgt von beliebigen Daten, die der Subknoten 102-2 übertragen darf. Jeder darauffolgende Subknoten 102-2 leitet den SRF zusammen mit beliebigen Daten von stromabwärtigen Subknoten 102-2 weiter und fügt gegebenenfalls Daten von einem oder mehreren Mikrofonen hinzu, die mit den jeweiligen Subknoten 102-2 (MD) gekoppelt sind. In dem Beispiel aus 8 sendet der Hauptknoten 102-2 Daten an Subknoten 1, 4 und 5 (in 8 als Lautsprecher dargestellt) und empfängt Daten von Subknoten 7, 6, 3, 2 und 0 (in 8 als Mikrofonanordnungen dargestellt).
  • 9 zeigt schematisch das dynamische Entfernen von Daten aus einer stromabwärtigen Übertragung und das Einfügen von Daten in eine stromaufwärtige Übertragung aus der Perspektive des stromabwärtigen DS-Sendeempfängers 124 gemäß verschiedener Ausführungsformen. In 9 überträgt der Hauptknoten 102-1 wie in 8 einen SCF, gefolgt von Daten für Subknoten 1, 4 und 5 (SD) in umgekehrter Reihenfolge (z. B. auf Daten für Subknoten 5 folgen Daten für Subknoten 4, auf die Daten für Subknoten 1 folgen etc.) (siehe die Reihe mit der Bezeichnung MAIN). Empfängt der Subknoten 1 diese Übertragung, entfernt Subknoten 1 seine eigenen Daten und leitet nur den SCF, gefolgt von Daten für Subknoten 5 und 4, an den Subknoten 2 weiter. Subknoten 2 und 3 leiten die Daten unverändert weiter (siehe die Reihe mit der Bezeichnung SUB 2), sodass die Daten, die von Subknoten 1 weitergeleitet wurden, von Subknoten 4 empfangen werden (siehe die Reihe mit der Bezeichnung SUB 3). Subknoten 4 entfernt seine eigenen Daten und leitet nur den SCF, gefolgt von den Daten für Subknoten 5, an Subknoten 5 weiter und ähnlich dazu entfernt Subknoten 5 seine eigenen Daten und leitet nur den SCF an Subknoten 6 weiter. Subknoten 6 leitet den SCF an Subknoten 7 weiter (siehe die Reihe mit der Bezeichnung SUB 6).
  • An diesem Punkt überträgt Subknoten 7 den SRF, gefolgt von seinen Daten, an Subknoten 7 weiter (siehe die Reihe mit der Bezeichnung SUB 6). Subknoten 6 leitet den SRF zusammen mit den Daten von Subknoten 7 und seinen eigenen Daten an Subknoten 5 weiter, und Subknoten 5 leitet den SRF zusammen mit den Daten von Subknoten 7 und 6 wiederum an Subknoten 4 weiter. Subknoten 4 hat keine Daten hinzuzufügen, daher leitet er einfach die Daten an Subknoten 3 weiter (siehe die Reihe mit der Bezeichnung SUB 3), der die Daten zusammen mit seinen eigenen Daten an Subknoten 2 weiterleitet (siehe die Reihe mit der Bezeichnung SUB 2), der wiederum die Daten zusammen mit seinen eigenen Daten an Subknoten 1 weiterleitet. Subknoten 1 hat keine Daten hinzuzufügen, daher leitet er die Daten an Subknoten 0 weiter, der die Daten zusammen mit seinen eigenen Daten weiterleitet. In der Folge empfängt der Hauptknoten 102-1 den SRF, gefolgt von den Daten von Subknoten 7, 6, 3, 2 und 0 (siehe die Reihe mit der Bezeichnung MAIN).
  • 10 zeigt ein weiteres Beispiel für das dynamische Entfernen von Daten von einer stromabwärtigen Übertragung und Einfügen von Daten in eine stromaufwärtige Übertragung aus der Perspektive des stromabwärtigen DS-Sendeempfängers 124, wie in 9, obwohl in 10 die Subknoten 102-2 sowohl mit Sensoren als auch mit Betätigungselementen als die Peripherievorrichtung 108 gekoppelt sind, sodass der Hauptknoten 102-1 Daten stromabwärts an alle Subknoten 102-2 sendet und wiederum Daten von allen Subknoten 102-2 empfängt. Zudem sind in 10 die Daten basierend auf der Knotenadresse geordnet, an die sie adressiert sind oder von der sie stammen. Der Datenslot mit der Bezeichnung „Y“ kann für eine Datenintegritätsprüfung oder eine Datenkorrektur verwendet werden.
  • 11 zeigt ein weiteres Beispiel für das dynamische Entfernen von Daten aus einer stromabwärtigen Übertragung und das Einfügen von Daten in eine stromaufwärtige Übertragung aus der Perspektive des stromabwärtigen DS-Sendeempfängers 124, wie in 9, obwohl in 11 die Daten in aufeinanderfolgender Reihenfolge, nicht in umgekehrter Reihenfolge stromabwärts und stromaufwärts übermittelt werden. Das Puffern an jedem Subknoten 102-2 ermöglicht das selektive Hinzufügen, Entfernen und/oder Weiterleiten von Daten.
  • Wie oben erläutert kann jeder Subknoten 102-2 Daten aus stromabwärtigen oder stromaufwärtigen Übertragungen entfernen und/oder kann Daten zu stromabwärtigen oder stromaufwärtigen Übertragungen hinzufügen. Daher kann der Hauptknoten 102-1 eine getrennte Abtastung von Daten an jede aus einer Reihe von Subknoten 102-2 übertragen, und jeder derartige Subknoten 102-2 kann seine Datenabtastung entfernen und nur Daten weiterleiten, die für die stromabwärtigen Subknoten 102-2 gedacht sind. Andererseits kann ein Subknoten 102-2 Daten von einem stromabwärtigen Subknoten 102-2 empfangen und die Daten zusammen mit zusätzlichen Daten weiterleiten. Ein Vorteil des Übertragens von so wenig Informationen wie nötig besteht darin, dass die Menge von Leistung, die kollektiv von dem System 100 verbraucht wird, reduziert wird.
  • Das System 100 kann auch Ausstrahlungsübertragungen (und Mehrfachübertragungen) von dem Hauptknoten 102-1 an die Subknoten 102-2 unterstützen, im Speziellen durch die Konfiguration der Nutzung des stromabwärtigen Slots der Subknoten 102-2. Jeder Subknoten 102-2 kann die Ausstrahlungsübertragung verarbeiten und sie an den nächsten Subknoten 102-2 weiterleiten, obwohl ein bestimmter Subknoten 102-2 die Ausstrahlungsnachricht „konsumieren“ kann (d h. die Ausstrahlungsübertragung nicht an den nächsten Subknoten 102-2 weiterleitet).
  • Das System 100 kann auch stromaufwärtige Übertragungen unterstützen (z. B. von einem bestimmten Subknoten 102-2 an einen oder mehrere andere Subknoten 102-2). Solche stromaufwärtigen Übertragungen können stromaufwärtige Einfach-, Mehrfach- und/oder Ausstrahlungsübertragungen aufweisen. Bei dem stromaufwärtigen Adressieren kann, wie oben unter Bezugnahme auf stromabwärtige Übertragungen erläutert, ein Subknoten 102-2 basierend auf der Konfiguration der Nutzung des stromaufwärtigen Slots der Subknoten 102-2 bestimmen, ob Daten aus einer stromaufwärtigen Übertragung zu entfernen sind oder nicht und/oder ob eine stromaufwärtige Übertragung an den nächsten stromaufwärtigen Subknoten 102-2 weiterzuleiten ist. Daher können Daten zusätzlich oder anstelle des Weiterleitens von Daten an den Hauptknoten 102-1 von einem bestimmten Subknoten 102-2 an einen oder mehrere andere Subknoten 102-2 weitergeleitet werden. Solche Sub-Sub-Beziehungen können z. B. über den Hauptknoten 102-1 konfiguriert werden.
  • Daher können die Subknoten 102-2 in mehreren Ausführungsformen als aktive/intelligente Wiederholungsknoten mit der Fähigkeit zum selektiven Weiterleiten, Fallenlassen und Hinzufügen von Informationen arbeiten. Die Subknoten 102-2 können im Allgemeinen derartige Funktionen ausüben, ohne notwendigerweise die gesamten Daten zu entschlüsseln/prüfen, da jeder Subknoten 102-2 die relevanten Zeitslots kennt, innerhalb derer er Daten empfangen/übertragen wird, und kann daher Daten aus einem Zeitslot entfernen oder diese dazu hinzufügen. Ungeachtet dessen, dass die Subknoten 102-2 nicht alle Daten entschlüsseln/prüfen müssen, können die Subknoten 102-2 üblicherweise die Daten, die er überträgt/weiterleitet erneut takten. Dies kann die Robustheit des Systems 100 verbessern.
  • In manchen Ausführungsformen kann der Bus 106 für unidirektionale Kommunikation in einer Ringtopologie konfiguriert sein. Beispielsweise zeigt 12 eine Anordnung 1200 des Hauptknotens 102-1 und von vier Subknoten 102-2 in einer Ringtopologie und zeigt Signalgebungs- und Zeitgebungsaspekte für eine unidirektionale Kommunikation in der Anordnung 1200 gemäß verschiedenen Ausführungsformen. In solchen Ausführungsformen können die Knoten-Sendeempfänger 120 in den Knoten anstelle von zwei bidirektionalen Sendeempfängern einen Nur-Empfangs-Sendeempfänger (MAIN IN) und einen Nur-Sende-Sendeempfänger (MAIN OUT) für die stromaufwärtige und stromabwärtige Kommunikation aufweisen. In dem in 12 dargestellten Verbindungsschichtsynchronisationsschema überträgt der Hauptknoten 102-1 einen SCF 180, gegebenenfalls gefolgt von „stromabwärtigen“ Daten 1202 für die drei Lautsprecher, die mit verschiedenen Subknoten 102-2 gekoppelt sind (die Daten für die unterschiedlichen Lautsprecher können in einer beliebigen geeigneten Reihenfolge angeordnet sein, wie oben unter Bezugnahme auf 8-11 erläutert), und jeder darauffolgende Subknoten 102-2 leitet den Synchronisationssteuerrahmen 180 zusammen mit jeglichen „stromaufwärtigen“ Daten von vorangegangenen Subknoten 102-2 und „stromaufwärtigen“ Daten von sich selbst weiter, um „stromaufwärtige“ Daten 1 204 bereitzustellen (z. B. können die Daten von den acht unterschiedlichen Mikrofonen in einer beliebigen geeigneten Reihenfolge angeordnet werden, wie oben unter Bezugnahme von 8-1 1 erläutert).
  • Wie hierin beschrieben können Daten zwischen Elementen des Systems 100 auf beliebige Arten kommuniziert werden. In manchen Ausführungsformen können Daten als Teil eines Satzes von synchronen Datenslots (z. B. unter Verwendung der Datenslots 199) durch einen Subknoten 102-2 stromaufwärts oder von einem Subknoten 102-2 oder einem Hauptknoten 102-1 stromabwärts (z. B. unter Verwendung der Datenslots 198) gesendet werden. Das Volumen solcher Daten kann durch Ändern der Anzahl von Bits in einem Datenslot oder durch Aufnehmen von zusätzlichen Datenslots angepasst werden. Daten können in dem System 100 auch durch Aufnehmen eines Synchronisationssteuerrahmens 180 oder eines Synchronisationsantwortrahmens 197 kommuniziert werden. Daten, die auf diese Art kommuniziert werden, können I2C-Steuerdaten von dem Host 1 10 aufweisen (mit einer Antwort von einer Peripherievorrichtung 108, die einem Subknoten 102-2 zugeordnet ist); Zugriffe auf Register der Subknoten 102-2 (z. B. zur Erkennung und Konfiguration von Slots und Schnittstellen), die Schreibzugriff von dem Host 11 0/Hauptknoten 102-1 zu dem Subknoten 102-2 und Lesezugriff von einem Subknoten 102-2 zu dem Host 110/Hauptknoten 102-1 aufweisen können; und Ereignissignalgebung über Unterbrechungen von einer Peripherievorrichtung 108 an den Host 110 aufweisen. In manchen Ausführungsformen können GPIO-Kontakte verwendet werden, um Informationen von einem Subknoten 102-2 an den Hauptknoten 102-1 zu übermitteln (z. B. indem der Hauptknoten 102-1 die GPIO-Kontakte über I2C pollt oder indem ein Knoten-Sendeempfänger 120 eines Subknotens 102-2 eine Unterbrechung an einem Unterbrechungsanfragekontakt erzeugt). Beispielsweise kann in manchen solchen Ausführungsformen ein Host 1 10 Informationen über I2C an den Hauptknoten 102-1 senden, und dann kann der Hauptknoten 102-1 jene Informationen über die GPIO-Kontakte an den Subknoten 102-2 senden. Beliebige der hierin erläuterten Datentypen, wie sie über den Bus 106 übertragen werden, können unter Verwendung eines oder mehrerer beliebiger dieser Kommunikationswege übertragen werden. Andere Arten von Daten und Datenkommunikationsverfahren innerhalb des Systems 100 können hierin offenbart sein.
  • Ausführungsformen der vorliegenden Offenbarung können unter Verwendung beliebiger Hardware und/oder Software, die je nach Wunsch konfiguriert sein können, in einem System implementiert werden. 13 zeigt schematisch eine Vorrichtung 1300, die als Host oder als Knoten (z. B. ein Host 1 10, ein Hauptknoten 102-1 oder ein Subknoten 102-2) gemäß verschiedenen Ausführungsformen in dem System 100 dienen kann. Eine Anzahl von Komponenten ist in 13 dargestellt, wie sie in der Vorrichtung 1300 enthalten sind, aber eine beliebige oder mehrere dieser Komponenten können ausgelassen oder verdoppelt werden, je nach Eignung für deren Anwendung.
  • Zusätzlich dazu kann die Vorrichtung 1300 in mehreren Ausführungsformen eine oder mehrere der in 13 dargestellten Komponenten nicht aufweisen, aber die Vorrichtung 1300 kann eine Schnittstellenschaltungsanordnung zum Koppeln mit der einen oder den mehreren Komponenten aufweisen. Beispielsweise kann die Vorrichtung 1300 keine Anzeigevorrichtung 1306 aufweisen, aber kann eine Anzeigevorrichtungs-Schnittstellenschaltungsanordnung (z. B. einen Verbinder und eine Ansteuerschaltungsanordnung) aufweisen, mit der eine Anzeigevorrichtung 1306 gekoppelt sein kann. In einem weiteren Satz von Beispielen kann die Vorrichtung 1300 keine Audioeingabevorrichtung 1324 oder keine Audioausgabevorrichtung 1308 aufweisen, aber kann eine Audioeingabe- oder -ausgabevorrichtungs-Schnittstellenschaltungsanordnung (z. B. Verbinder und unterstützende Schaltungsanordnung) aufweisen, mit der eine Audioeingabevorrichtung 1324 oder eine Audioausgabevorrichtung 1308 gekoppelt sein kann.
  • Die Vorrichtung 1300 kann den Knoten-Sendeempfänger 120 gemäß einer beliebigen der hierin offenbarten Ausführungsformen zum Verwalten der Kommunikation entlang des Busses 106 aufweisen, wenn die Vorrichtung 1300 mit dem Bus 106 gekoppelt ist. Die Vorrichtung 1300 kann eine Verarbeitungsvorrichtung 1302 (z. B. eine oder mehrere Verarbeitungsvorrichtungen) aufweisen, die in dem Knoten-Sendeempfänger 120 enthalten oder von dem Knoten-Sendeempfänger 120 getrennt sein kann. Wie hierin verwendet kann sich der Begriff „Verarbeitungsvorrichtung“ auf eine beliebige Vorrichtung oder einen Teil einer Vorrichtung beziehen, die/der elektronische Daten aus Registern und/oder Speichern verarbeitet, um jene elektronische Daten zu anderen elektronischen Daten zu transformieren, die in Registern und/oder einem Speicher gespeichert werden können. Die Verarbeitungsvorrichtung 1302 kann eine oder mehrere DSP, ASIC, zentrale Verarbeitungseinheiten (CPU), Grafikverarbeitungseinheiten (GPU), Kryptoprozessoren oder beliebige andere geeignete Verarbeitungsvorrichtungen aufweisen. Die Vorrichtung 1300 kann einen Speicher 1304 aufweisen, der selbst eine oder mehrere Speichervorrichtungen, wie z. B. einen flüchtigen Speicher (z. B. dynamischen Direktzugriffsspeicher (DRAM)), einen nichtflüchtigen Speicher (z. B. Nur-Lesespeicher (ROM)), Flash-Speicher, Festkörperspeicher und/oder eine Festplatte aufweisen kann.
  • In manchen Ausführungsformen kann der Speicher 1304 verwendet werden, um eine Arbeitskopie und eine Permanentkopie von Programmierbefehlen zu speichern, um zu bewirken, dass die Vorrichtung 1300 eine beliebige aus den hierin offenbarten Techniken durchführt. In manchen Ausführungsformen sind maschinenzugreifbare Medien (einschließlich nichttransitorischer computerlesbarer Speichermedien), Verfahren, Systeme und Vorrichtungen zum Durchführen der oben beschriebenen Techniken veranschaulichende Beispiele für hierin offenbarte Ausführungsformen zur Kommunikation über einen Zweileiterbus. Beispielsweise kann ein computerlesbares Medium (z. B. der Speicher 1304) darauf gespeicherte Befehle aufweisen, die, wenn sie von einer oder mehreren der Verarbeitungsvorrichtungen, die in der Verarbeitungsvorrichtung 1302 enthalten sind, ausgeführt werden, bewirken, dass die Vorrichtung 1300 eine beliebige der hierin offenbarten Techniken durchführt.
  • In manchen Ausführungsformen kann die Vorrichtung 1300 einen weiteren Kommunikationschip 1312 (z. B. einen oder mehrere andere Kommunikationschips) aufweisen. Beispielsweise kann der Kommunikationschip 1312 zum Verwalten von drahtloser Kommunikation zur Übertragung von Daten an die und von der Vorrichtung 1300 konfiguriert sein. Der Begriff „drahtlos“ und Ableitungen davon können verwendet werden, um Schaltungen, Vorrichtungen, Systeme, Verfahren, Techniken, Kommunikationskanäle etc. zu beschreiben, die Daten durch die Verwendung modulierter elektromagnetischer Strahlung durch ein nichtfestes Medium kommunizieren können. Der Begriff impliziert nicht, dass die zugeordneten Vorrichtungen keine Drähte enthalten, obwohl dies in manchen Ausführungsformen nicht der Fall ist.
  • Der Kommunikationschip 1312 kann einen beliebigen aus einer Anzahl von drahtlosen Standards oder Protokollen implementieren, einschließlich, aber nicht beschränkt auf Standards des Institute for Electrical and Electronic Engineers (IEEE), einschließlich Wi-Fi (IEEE 802.11-Familie), IEEE 802.16-Standards (z. B. IEEE 802.16-2005-Änderung), Long-Term Evolution(LTE)-Projekt mit jeglichen Änderungen, Updates und/oder überarbeitete Versionen (z. B. Advanced LTE-Projekt, Ultra Mobile Broadband (UMB)-Projekt (auch als „3GPP2“ bezeichnet), etc.). IEEE 802.16-kompatible Broadband Wireless Access(BWA)-Netzwerke werden im Allgemeinen als WiMAX-Netzwerke bezeichnet, ein Akronym, das für Worldwide Interoperability for Microwave Access steht, das eine Zertifizierung für Produkte darstellt, die die Konformitäts- und Interoperabilitätstests für IEEE 802.16-Standards bestanden haben. Der eine oder die mehreren Kommunikationschips 1312 können gemäß einem Global System for Mobile Kommunikation(GSM)-, General Packet Radio Service(GPRS)-, Universal Mobile Telecommunications System(UMTS)-, High Speed Packet Access(HSPA)-, Evolved HSPA(E-HSPA)- oder LTE-Netzwerk betrieben werden. Der eine oder die mehreren Kommunikationschips 1312 können gemäß Enhanced Data for GSM Evolution (EDGE), GSM EDGE Radio Access Network (GERAN), Universal Terrestrial Radio Access Network (UTRAN) oder Evolved UTRAN (E-UTRAN) betrieben werden. Der eine oder die mehreren Kommunikationschips 1312 können gemäß Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Digital Enhanced Cordless Telecommunications (DECT), Evolution-Data Optimized (EV-DO) und Ableitungen davon sowie beliebigen anderen drahtlosen Protokollen betrieben werden, die als 3G, 4G, 5G und darüber hinaus bezeichnet werden. Der Kommunikationschip 1312 kann in anderen Ausführungsformen gemäß anderen drahtlosen Protokollen betrieben werden. Die Vorrichtung 1300 kann eine Antenne 1322 aufweisen, um drahtlose Kommunikation zu erleichtern und/oder um andere drahtlose Kommunikation (z. B. AM- oder FM-Radioausstrahlungen) zu empfangen.
  • In manchen Ausführungsformen kann der Kommunikationschip 1312 verdrahtete Kommunikation unter Verwendung eines Protokolls verwalten, das nicht das hierin beschriebene Protokoll für den Bus 106 ist. Verdrahtete Kommunikationsprotokolle können elektrische, optische oder beliebige andere geeignete Kommunikationsprotokolle aufweisen. Beispiele für verdrahtete Kommunikationsprotokolle, die durch den Kommunikationschip 1312 ermöglicht werden können, weisen Ethernet, Controller Area Network (CAN), I2C, media-oriented Systems Transport (MOST) oder ein beliebiges anderes geeignetes verdrahtetes Kommunikationsprotokoll auf.
  • Wie oben angemerkt kann der Kommunikationschip 1312 mehrere Kommunikationschips aufweisen. Beispielsweise kann ein erster Kommunikationschip 1312 exklusiv für drahtlose Kommunikation mit kurzer Reichweite, wie z. B. Wi-Fi oder Bluetooth, verwendet werden, und ein zweiter Kommunikationschip 1312 kann exklusiv für drahtlose Kommunikation mit größerer Reichweite, wie z. B. globales Positionsbestimmungssystem (GPS), EDGE, GPRS, CDMA, WiMAX, LTE, EV-DO oder andere, verwendet werden. In manchen Ausführungsformen kann ein erster Kommunikationschip 1312 exklusiv für drahtlose Kommunikation verwendet werden und ein zweiter Kommunikationschip 1312 kann exklusiv für verdrahtete Kommunikation verwendet werden.
  • Die Vorrichtung 1300 kann eine Batterie-/Leistungsschaltungsanordnung 1314 aufweisen. Die Batterie-/Leistungsschaltungsanordnung 1314 kann eine oder mehrere Energiespeichervorrichtungen (z. B. Batterien oder Kondensatoren) und/oder eine Schaltungsanordnung zum Koppeln von Komponenten der Vorrichtung 1300 mit einer Energiequelle aufweisen, die getrennt von der Vorrichtung 1300 vorliegt (z. B. Wechselspannung-Leitungsleistung, Spannung von einer Autobatterie etc.). Beispielsweise kann die Batterie-/Leistungsschaltungsanordnung 1314 die stromauf angeordnete Busschnittstellenschaltungsanordnung 132 und die stromab angeordnete Busschnittstellenschaltungsanordnung 134, die unter Bezugnahme auf 2 oben erläutert wurden, aufweisen und können durch die Vorspannung auf dem Bus 106 geladen werden.
  • Die Vorrichtung 1300 kann eine Anzeigevorrichtung 1306 (oder entsprechende Schnittstellenschaltungsanordnung, wie oben erläutert) aufweisen. Die Anzeigevorrichtung 1306 kann beliebige optische Anzeigen, wie z. B. ein Heads-up-Display, einen Computermonitor, einen Projektor, ein Touchscreen-Display, ein Flüssigkristalldisplay (LCD), ein Leuchtdioden-Display oder ein Flat-Panel-Display aufweisen.
  • Die Vorrichtung 1300 kann eine Audioausgabevorrichtung 1308 (oder eine entsprechende Schnittstellenschaltungsanordnung, wie oben erläutert) aufweisen. Die Audioausgabevorrichtung 1308 kann eine beliebige Vorrichtung aufweisen, die ein akustisches Signal erzeugt, wie z. B. z. B. Lautsprecher, Headsets oder Ohrhörer.
  • Die Vorrichtung 1300 kann eine Audioeingabevorrichtung 1324 (oder eine entsprechende Schnittstellenschaltungsanordnung, wie oben erläutert) aufweisen. Die Audioeingabevorrichtung 1324 kann eine beliebige Vorrichtung aufweisen, die ein Signal erzeugt, das ein Geräusch angibt, wie z. B. Mikrofone, Mikrofonanordnungen oder digitale Instrumente (z. B. Instrumente, die eine digitale Ausgabeschnittstelle für ein Musikinstrument (MIDI) aufweisen).
  • Die Vorrichtung 1300 kann eine GPS-Vorrichtung 1318 (oder eine entsprechende Schnittstellenschaltungsanordnung, wie oben erläutert) aufweisen. Die GPS-Vorrichtung 1318 kann in Kommunikation mit einem satellitenbasierten System stehen und kann eine Position der Vorrichtung 1300, wie auf dem Stand der Technik bekannt, empfangen.
  • Die Vorrichtung 1300 kann ferner eine weitere Ausgabevorrichtung 1310 (oder eine entsprechende Schnittstellenschaltungsanordnung, wie oben erläutert) aufweisen. Beispiele für die andere Ausgabevorrichtung 1310 können einen Audio-Codec, einen Video-Codec, einen Drucker, einen verdrahteten oder drahtlosen Sender zum Bereitstellen von Informationen an anderen Vorrichtungen oder eine zusätzliche Speichervorrichtungen aufweisen. Zusätzlich dazu kann eine beliebige geeignete der hierin erläuterten Peripherievorrichtungen 108 in der anderen Ausgabevorrichtung 1310 enthalten sein.
  • Die Vorrichtung 1300 kann eine weitere Eingabevorrichtung 1320 (oder eine entsprechende Schnittstellenschaltungsanordnung, wie oben erläutert) aufweisen. Beispiele für die andere Eingabevorrichtung 1320 können einen Beschleunigungsmesser, ein Gyroskop, eine Bildaufnahmevorrichtung, eine Tastatur, eine Zeigersteuerungsvorrichtung, wie z. B. eine Maus, ein Stift, ein Touchpad, ein Strichcodelesegerät, ein Quick Response (QR) Code-Lesegerät oder ein Hochfrequenzidentifikations(RFID)-Lesegerät aufweisen. Zusätzlich dazu kann ein beliebiger geeigneter der hierin erläuterten Sensoren oder derartige Peripherievorrichtungen 108 in der anderen Eingabevorrichtung 1320 enthalten sein.
  • Beliebige geeignete aus der oben in Bezug auf die Vorrichtung 1300 beschriebenen Anzeige-, Eingabe-, Ausgabe-, Kommunikations- oder Speichervorrichtung können in dem System 100 als die Peripherievorrichtung 108 dienen. Alternativ oder zusätzlich dazu können geeignete aus der oben in Bezug auf die Vorrichtung 1300 beschriebenen Anzeige-, Eingabe-, Ausgabe-, Kommunikations- oder Speichervorrichtung in einem Host (z. B. dem Host 1 10) oder einem Knoten (z. B. einem Hauptknoten 102-1 oder einem Subknoten 102-2) enthalten sein.
  • Die Elemente eines Systems 100 können ausgewählt und konfiguriert sein, um Audio- und/oder Lichtsteuerung in Bezug auf den Bus 106 bereitzustellen. In manchen Ausführungsformen kann das System 100 konfiguriert sein, um als ein Lichtsteuersystem in einem Fahrzeug oder einer anderen Umgebung zu dienen, wobei Leuchtvorrichtungen (z. B. streifenartige Leuchtdioden (LED) oder andere LED-Anordnungen) als Peripherievorrichtungen 108 in Kommunikation mit Knoten 102 entlang des Busses 106 dienen; Daten über den Bus 106 kommuniziert werden können, um die Farbe, Intensität, Taktzyklus und/oder andere Parameter der Leuchtvorrichtungen zu steuern. In manchen Ausführungsformen kann das System 100 konfiguriert sein, um als ein Audiosteuersystem in einem Fahrzeug oder einer anderen Umgebung zu dienen, wobei ein Mikrofon oder eine andere Vorrichtung einen Beschleunigungsmesser aufweist, der als eine Peripherievorrichtung 108 in Kommunikation mit einem Knoten 102 entlang des Busses 106 dienen kann; Daten von dem Beschleunigungsmesser über den Bus 106 kommuniziert werden können, um andere Peripherievorrichtungen 108 entlang des Busses 106 zu steuern. Beispielsweise können starke Ausreißer in den Beschleunigungsdaten oder anderen vorbestimmten Beschleunigungsdatenmustern verwendet werden, um das Erzeugen eines Geräuscheffekts, wie z. B. einer Kuhglocke oder einer Trommel, durch eine Verarbeitungsvorrichtung einzuleiten, die mit einem Knoten 102 gekoppelt ist; dieser Geräuscheffekt kann von einem Lautsprecher, der mit der Verarbeitungsvorrichtung gekoppelt ist, und/oder von einem Lautsprecher, der mit einem weiteren Knoten 102 entlang des Busses 106 gekoppelt ist, ausgegeben werden. Manche Ausführungsformen des Systems 100 können beliebige aus den hierin offenbarten Leuchtsteuer- und/oder Audiosteuerverfahren kombinieren.
  • 14 ist ein Blockdiagramm eines Kommunikationssystems 1400, das für eine Audio- und Lichtsteuerung gemäß verschiedener Ausführungsformen konfiguriert ist. In mehreren Beispielen ist das System 1400 ein Beispiel für das System 100 aus 1. Das System 100 aus 14 ist nur veranschaulichend, und die Knoten 102 und zugeordnete Peripherievorrichtungen 108 können umgeordnet, ausgelassen und/oder verdoppelt werden, falls gewünscht. In manchen Ausführungsformen können die Verbindungen des Busses 106 zwischen den Knoten 102 Zweidrahtbus-Verbindungen sein, wie hierin offenbart, während die Verbindungen des Busses 106 zwischen Knoten 102 in anderen Ausführungsformen gemäß anderen Kommunikationsprotokollen konfiguriert sein können. In manchen bestimmten Ausführungsformen können die Verbindungen des Busses 106 zwischen Knoten 102 nicht abgeschirmte Kabel sein, die ein einzelnes verdrilltes Drahtpaar aufweisen. Das System 1400 aus 14 kann eine Beleuchtungs- und Audiosteuerfunktionalität aufweisen, aber in anderen Ausführungsformen kann das System 1400 aus 14 ohne Audiosteuerung zur Beleuchtungssteuerung oder umgekehrt verwendet werden. Ferner kann das System 1400 aus 14 gewisse, aber nicht alle der hierin erläuterten Beleuchtungssteuerfunktionalitäten aufweisen (z. B. die Lichtorgelfunktionalität und die Mikrofonbeleuchtungsfunktionalität).
  • 14 weist einen Host 110, einen Hauptknoten 102-1 und zehn Subknoten 102-2 (bezeichnet als Subknoten 0 bis 9) auf. Ein beliebiger der Knoten 102 kann einen Knoten-Sendeempfänger 120 gemäß einer beliebigen der hierin offenbarten Ausführungsformen aufweisen. Der Host 110 kann eine Verarbeitungsvorrichtung, wie z. B. eine DSP, aufweisen. In manchen Ausführungsformen können der Host 110 und der Hauptknoten 102-1 Teil einer Kopfeinheit in einem Fahrzeug sein. In manchen Ausführungsformen kann der Hauptknoten 102-1 eine Vorspannung über die Verbindungen des Busses 106 bereitstellen, die es ermöglichen kann, dass Subknoten 102-2 ihre Peripherievorrichtungen 108 mit Leistung versorgen; in manchen Ausführungsformen kann eine derartige „Phantomleistung“ über die Verbindungen des Busses 106 bis zu 50 Watt oder mehr der Leistungszufuhr und/oder bis zu 24 Volt oder mehr einer Vorspannung unterstützen.
  • In dem System 1400 aus 14 kann ein Subknoten 0 mit einer Peripherievorrichtung 108 gekoppelt sein, die einen Verstärker aufweist, der einen Lautsprecher ansteuern kann. Audiodaten für den Verstärker/Lautsprecher können entlang des Busses 106 (z. B. von dem Bildschirm/der Audioquelle, die kommunikativ mit dem Subknoten 5 gekoppelt ist, oder von dem Abstimmgerät, das kommunikativ mit dem Subknoten 6 gekoppelt ist, wie nachstehend erläutert) bereitgestellt werden. In manchen Ausführungsformen kann der Verstärker/Lautsprecher, der kommunikativ mit dem Subknoten 0 gekoppelt ist, in einer Tür eines Fahrzeugs angeordnet sein. In manchen Ausführungsformen können die Peripherievorrichtungen 108, die mit dem Subknoten 0 gekoppelt sind, von einer Vorspannung auf der stromaufwärtigen Verbindung des Busses 106, wie hierin erläutert, mit Leistung versorgt werden.
  • In dem System 1400 aus 14 kann ein Subknoten 1 mit einer Peripherievorrichtung 108 gekoppelt sein, die einen LED-Streifen aufweist (der hierin verwendet werden kann, um sich im Allgemeinen auf eine beliebige Anordnung einer oder mehrerer LEDs zu beziehen). Daten zur Steuerung der Farbe, Intensität, des Taktzyklus, des Blinkmusters oder anderer Parameter des LED-Streifens können entlang des Busses 106 an den Subknoten 1 kommuniziert werden (z. B. von dem Prozessor, der mit dem Subknoten 5 gekoppelt ist) und dann an den LED-Streifen ausgegeben werden (z. B. unter Verwendung von Pulsweitenmodulations(PWM)-Ausgaben des Knoten-Sendeempfängers 120). In manchen Ausführungsformen kann der LED-Streifen, der kommunikativ mit dem Subknoten 1 gekoppelt ist, in der Nähe von Fußräumen eines Fahrzeugs angeordnet sein. In manchen Ausführungsformen können die Peripherievorrichtungen 108, die mit dem Subknoten 1 gekoppelt sind, durch eine Vorspannung auf der stromaufwärtigen Verbindung des Busses 106, wie hierin erläutert, mit Leistung versorgt werden.
  • In dem System 1400 aus 14 kann ein Subknoten 2 mit einer Peripherievorrichtung 108 gekoppelt sein, die einen Prozessor aufweist. Der Prozessor kann kommunikativ mit einem Lautsprecher gekoppelt sein. Audiodaten für den Lautsprecher können entlang des Busses 106 (z. B. von dem Bildschirm/der Audioquelle, die kommunikativ mit dem Subknoten 6 gekoppelt ist, oder von dem Abstimmgerät, das kommunikativ mit dem Subknoten 6 gekoppelt ist, wie nachstehend erläutert) bereitgestellt, von dem Subknoten 2 empfangen und an dem Prozessor bereitgestellt werden, der als die Peripherievorrichtung 108 dient. Der Prozessor (z. B. ein Audio-DSP) kann eine gewünschte Audiosignalverarbeitung auf den Audiodaten durchführen und kann die verarbeiteten Daten an den Lautsprecher ausgeben. In manchen Ausführungsformen kann der Lautsprecher, der kommunikativ mit dem Subknoten 2 gekoppelt ist, in der Nähe der Fußräume eines Fahrzeugs angeordnet sein. In manchen Ausführungsformen kann die Peripherievorrichtung 108, die mit dem Subknoten 2 gekoppelt ist, von einer Leistungsquelle, die von einer beliebigen Vorspannung auf der stromaufwärtigen Verbindung des Busses 106 getrennt ist, mit Leistung versorgt werden.
  • In manchen Ausführungsformen kann der Prozessor, der kommunikativ mit dem Subknoten 2 gekoppelt ist, eine Echo-Unterdrückung und/oder eine Rückkoppelungsunterdrückung für Karaoke-Anwendungen (nachstehend genauer erläutert) durchführen. Beispielsweise kann der Prozessor ein Beamforming, eine Rückkoppelungsunterdrückung durch Verschieben der Mikrofonfrequenz und eine Subtraktion des Audiosignals durchführen. Der Prozessor kann die Karaoke-Klänge mischen und, wenn der zugeordnete Lautsprecher ein Subwoofer ist, Niedrigfrequenz-Audio direkt an dem Subwoofer bereitstellen. In Karaoke-Anwendungen kann dieser Prozessor eine Audioausgabe auch über die Verbindungen des Busses 106 an die anderen Lautsprecher und an den Hauptknoten 102-1 leiten (der die Klangeingabe verwenden kann, um die Beleuchtungsvorrichtungen in dem System 100 in einer „Lichtorgel“-Anwendung, wie nachstehend genauer erläutert, zu steuern).
  • In dem System 1400 aus 14 kann ein Subknoten 3 mit einer Peripherievorrichtung 108 gekoppelt sein, die einen LED-Streifen aufweist. Daten zur Steuerung des LED-Streifens auf eine beliebige der hierin offenbarten Arten können entlang des Busses 106 (z. B. von dem Prozessor, der mit dem Subknoten 5 gekoppelt ist) an den Subknoten 3 kommuniziert und dann an den LED-Streifen ausgegeben werden (z. B. unter Verwendung von PWM-Ausgaben des Knoten-Sendeempfängers 120). In manchen Ausführungsformen kann der LED-Streifen, der kommunikativ mit dem Subknoten 3 gekoppelt ist, in der Nähe von Fußräumen eines Fahrzeugs angeordnet sein. In manchen Ausführungsformen können die Peripherievorrichtungen 108, die mit dem Subknoten 3 gekoppelt sind, durch eine Vorspannung auf der stromaufwärtigen Verbindung des Bus 106, wie hierin erläutert, mit Leistung versorgt werden.
  • In dem System 1400 aus 14 kann ein Subknoten 4 mit einer Peripherievorrichtung 108 gekoppelt sein, die einen Verstärker aufweist, der einen Lautsprecher ansteuern kann. Audiodaten für den Verstärker/Lautsprecher können entlang des Busses 106 (z. B. von dem Bildschirm/der Audioquelle, die kommunikativ mit dem Subknoten 5 gekoppelt ist, oder von dem Abstimmgerät, das kommunikativ mit dem Subknoten 6 gekoppelt ist, wie nachstehend erläutert) bereitgestellt werden. In manchen Ausführungsformen kann der Verstärker/Lautsprecher, der kommunikativ mit dem Subknoten 4 gekoppelt ist, in einer Tür eines Fahrzeugs angeordnet sein. In manchen Ausführungsformen können die Peripherievorrichtungen 108, die mit dem Subknoten 4 gekoppelt sind, durch eine Vorspannung auf der stromaufwärtigen Verbindung des Bus 106, wie hierin erläutert, mit Leistung versorgt werden.
  • In dem System 1400 aus 14 kann ein Subknoten 5 mit einer Peripherievorrichtung 108 gekoppelt sein, die einen Prozessor aufweist, der wiederum kommunikativ mit einem Bildschirm und/oder einer Audioquelle (z. B. einem DVD-Player) gekoppelt sein kann. Audiodaten von der Audioquelle können selektiv entlang des Busses 106 durch den Prozessor über den Subknoten 5 bereitgestellt werden (z. B. anstelle von oder zusätzlich zu den Audiodaten von dem Abstimmgerät, das kommunikativ mit dem Subknoten 6 gekoppelt ist, wie nachstehend erläutert). In manchen Ausführungsformen kann der Bildschirm/die Audioquelle, der/die kommunikativ mit dem Subknoten 5 gekoppelt ist, in einer Tür eines Fahrzeugs angeordnet sein. In manchen Ausführungsformen können die Peripherievorrichtungen 108, die mit dem Subknoten 5 gekoppelt sind, durch eine Leistungsquelle mit Leistung versorgt werden, die von einer beliebigen Vorspannung auf der stromaufwärtigen Verbindung des Busses 106 getrennt ist.
  • In dem System 1400 aus 14 kann ein Subknoten 6 mit einer Peripherievorrichtung 108 gekoppelt sein, die ein Abstimmgerät aufweist. Das Abstimmgerät kann eine AM-, FM-, Digital Audio Broadcasting(DAB)- und/oder High-Definition(HD)-Abstimmfunktionalität aufweisen. In manchen Ausführungsformen kann das Abstimmgerät über SPI- oder I2C-Befehle gesteuert werden, die über die Verbindungen des Busses 106 bereitgestellt werden; insbesondere können die Verbindungen des Busses 106 verwendet werden, um das Abstimmgerät aus der Ferne zu aktivieren, um Kanaländerungen vorzunehmen und um HD-Funkmetadaten wie Informationen zu Liedern/Komponisten oder Albumcover-Bilder zu empfangen. Audiodaten von dem Abstimmgerät können über den Subknoten 6 entlang des Busses 106 an dem Subknoten 2 bereitgestellt werden, von dem Subknoten 2 empfangen werden und selektiv an anderen Knoten 102 entlang des Busses durch den Prozessor bereitgestellt werden, der als die Peripherievorrichtung 108 des Subknotens 5 dient (z. B. anstelle von oder zusätzlich zu den Audiodaten von der Audioquelle, die kommunikativ mit dem Subknoten 5 gekoppelt ist, wie oben erläutert). In manchen Ausführungsformen kann das Abstimmgerät, das kommunikativ mit dem Subknoten 2 gekoppelt ist, in der Nähe der Fußräume eines Fahrzeugs angeordnet sein. In manchen Ausführungsformen kann die Peripherievorrichtung 108, die mit dem Subknoten 6 gekoppelt ist, durch eine Vorspannung auf der stromaufwärtigen Verbindung des Busses 106 mit Leistung versorgt werden, wie hierin erläutert.
  • In den Fahrzeugeinstellungen kann das Abstimmgerät nicht in der Kopfeinheit des Fahrzeugs angeordnet sein und kann anstelle näher an einer Antenne angeordnet sein (die sich z. B. in der Nähe des Dachs des Fahrzeugs befinden kann). Eine derartige Implementierung kann die Verwendung von Koaxialkabeln im Inneren der Fahrzeugkabine verringern oder ausschließen und/oder kann die Verwendung von Antennen-Vorverstärkern (die erforderlich sein können, wenn die Antenne nicht direkt mit dem Abstimmgerät verbunden ist) reduzieren oder ausschließen.
  • In dem System 1400 aus 14 kann ein Subknoten 7 mit einer Peripherievorrichtung 108 gekoppelt sein, die einen LED-Streifen aufweist. Daten zur Steuerung des LED-Streifens auf eine beliebige der hierin offenbarten Arten kann entlang des Busses 106 (z. B. von dem Prozessor, der mit dem Subknoten 5 gekoppelt ist) an den Subknoten 7 kommuniziert werden und dann an den LED-Streifen ausgegeben werden (z. B. unter Verwendung von PWM-Ausgaben des Knoten-Sendeempfängers 120). In manchen Ausführungsformen kann der LED-Streifen, der kommunikativ mit dem Subknoten 7 gekoppelt ist, in der Nähe eines Dachs eines Fahrzeugs angeordnet sein. In manchen Ausführungsformen können die Peripherievorrichtungen 108, die mit dem Subknoten 7 gekoppelt sind, durch eine Vorspannung auf der stromaufwärtigen Verbindung des Busses 106 mit Leistung versorgt werden, wie hierin erläutert.
  • In dem System 1400 aus 14 kann ein Subknoten 8 mit einer Peripherievorrichtung 108 gekoppelt sein, die einen LED-Streifen aufweist. Daten zur Steuerung des LED-Streifens auf eine beliebige der hierin offenbarten Arten kann entlang des Busses 106 (z. B. von dem Prozessor, der mit dem Subknoten 5 gekoppelt ist) an den Subknoten 8 kommuniziert werden und dann an den LED-Streifen ausgegeben werden (z. B. unter Verwendung von PWM-Ausgaben des Knoten-Sendeempfängers 120). In manchen Ausführungsformen kann der LED-Streifen, der kommunikativ mit dem Subknoten 8 gekoppelt ist, in der Nähe eines Dachs eines Fahrzeugs angeordnet sein. In manchen Ausführungsformen können die Peripherievorrichtungen 108, die mit dem Subknoten 8 gekoppelt sind, durch eine Vorspannung auf der stromaufwärtigen Verbindung des Busses 106 mit Leistung versorgt werden, wie hierin erläutert.
  • In dem System 1400 aus 14 kann ein Subknoten 9 mit mehreren Peripherievorrichtungen 108 gekoppelt sein, die Daten, die entlang des Busses 106 übertragen werden, bereitstellen oder verbrauchen. Die Peripherievorrichtungen 108 können ein Mikrofon (das Mikrofondaten erzeugen kann, die entlang des Busses 106 über den Subknoten 9 übertragen werden können), einen LED-Streifen (der unter Verwendung von Daten gesteuert werden kann, die über den Bus 106 an dem Subknoten 9 bereitgestellt werden, gemäß einer beliebigen der hierin erläuterten Ausführungsformen) und/oder einen Beschleunigungsmesser (der Beschleunigungsmessdaten erzeugen kann, die entlang des Busses 106 über den Subknoten 9 übertragen werden können).
  • In manchen Ausführungsformen des Systems 100 aus 14 können das Mikrofon, der LED-Streifen und der Beschleunigungsmesser alle ein Teil einer einzelnen einstückigen tragbaren Vorrichtung sein (z. B. ein tragbares Mikrofon mit eingebauten LEDs und einem Beschleunigungsmesser). Wie oben erwähnt kann das System 100 in manchen Ausführungsformen konfiguriert sein, um als ein Audiosteuersystem in einem Fahrzeug oder einer anderen Umgebung zu dienen, wobei Daten von dem Beschleunigungsmesser über den Bus 106 über den Subknoten 9 kommuniziert werden, um andere Peripherievorrichtungen 108 entlang des Busses 106 zu steuern. Beispielsweise können die Beschleunigungsdaten, die durch den Beschleunigungsmesser erzeugt werden, über den Bus 106 über den Subknoten 9 an den Hauptknoten 102-1 kommuniziert werden. Der Hauptknoten 102-1 (z. B. eine Verarbeitungsvorrichtung, die kommunikativ mit dem Hauptknoten 102-1 gekoppelt ist) kann die Daten analysieren, um starke Ausreißer oder andere vorbestimmte Beschleunigungsdatenmuster zu detektieren. Bei Detektion solcher Muster kann der Hauptknoten 102-1 bewirken, dass Audiodaten, die einem Klangeffekt entsprechen, über den Bus 106 an den Subknoten 2 übertragen werden, an dem der Prozessor, der kommunikativ mit dem Subknoten 2 gekoppelt ist, diesen Klangeffekt und andere Audiodaten mischen kann und die gemischten Daten an dem Bus 106 bereitstellen kann, um durch einen beliebigen gewünschten des einen oder der mehreren Lautsprecher des Systems 1400 ausgegeben zu werden. Der Hauptknoten 102-1 kann konfiguriert sein, um verschiedene Beschleunigungsdatenmuster (z. B. entsprechend verschiedener Bewegungen eines Benutzers, der das Mikrofon hält) zu detektieren und um zu bewirken, dass entsprechende unterschiedliche Klangeffekte erzeugt werden. In manchen Ausführungsformen kann ein derartiges System 100 konfiguriert sein, um als ein Karaoke-System zu fungieren, mit liedbezogenen Audio- und Videoinformationen (z. B. einschließlich des Liedtexts) durch den Bildschirm/die Audioquelle, der/die kommunikativ mit dem Subknoten 5 gekoppelt ist, einer Stimme des Benutzers, die durch das Mikrofon bereitgestellt wird, das kommunikativ mit dem Subknoten 9 gekoppelt ist, und Klangeffekten, die durch Daten von dem Beschleunigungsmesser, der kommunikativ mit dem Subknoten 9 gekoppelt ist (z. B. gemeinsam eingehaust mit dem Mikrofon), ausgelöst werden.
  • In manchen Ausführungsformen kann das System 1400 aus 14 konfiguriert sein, um als Lichtorgel zu fungieren. Wie hierin verwendet kann sich eine „Lichtorgel“ auf ein System beziehen, in dem Beleuchtungsvorrichtungen (z. B. LEDs) auf eine Art betrieben werden, die mit Begleitmusik synchronisiert ist. Beispielsweise kann der Hauptknoten 102-1 (z. B. eine Verarbeitungsvorrichtung, wie z. B. ein DSP, die kommunikativ mit dem Hauptknoten 102-1 gekoppelt ist) Audiodaten von dem Bildschirm/der Audioquelle oder von dem Abstimmgerät empfangen, kann Rhythmusdetektion- und/oder Frequenzanalysevorgänge auf den empfangenen Audiodaten durchführen und kann Steuersignale für die LED-Streifen in dem System 100 ausgeben, um zu bewirken, dass die LED-Streifen Licht in einem Muster ausgeben, das zu den Audiodaten „passt“. Auf diese Art und Weise kann das Licht, das von dem System 100 ausgestrahlt wird, variieren und kann mit Musik, die von dem System 100 abgespielt wird, synchronisiert werden. In manchen Ausführungsformen können ein oder mehrere der LED-Streifen, die in dem System 100 enthalten sind, gemäß dem detektierten Rhythmus der Musik „blinken“ und/oder können ihre Farbe abhängig von den dominanten momentanen Frequenzen verändern. In manchen Ausführungsformen kann der LED-Streifen, der einstückig mit einem Mikrofon (wie oben erläutert) ausgebildet ist, auf diese Weise ähnlich einer Lichtorgel (z. B. während des Karaokes) gesteuert werden. In anderen Ausführungsformen kann das Mikrofon drahtlos sein.
  • Obwohl mehrere der oben erläuterten Ausführungsformen das System 1400 in einer Fahrzeugkonfiguration beschreiben, ist dies nur veranschaulichend, und das System 1400 kann in einer beliebigen gewünschten Konfiguration implementiert werden. Beispielsweise kann eine „Koffer“-Implementierung des Systems 1400 in manchen Ausführungsformen ein tragbares Gehäuse aufweisen, das die gewünschten Komponenten des Systems 1400 aufweist; eine derartige Implementierung kann insbesondere für tragbare Anwendungen von Nutzen sein, wie z. B. für tragbare Karaoke- oder Unterhaltungssysteme.
  • Die hierin offenbarten Systeme 1400 können für statische Konfigurationen von Knoten 102 und für dynamische Konfigurationen von Knoten 102 implementiert werden. Beispielsweise kann ein System 1400, das in einer Fahrzeugkonfiguration implementiert ist, relativ statisch sein, wobei Knoten 102 „fest“ mit dem Fahrzeug „verdrahtet“ sind, während ein System 1400, das in einer Musikstudio- oder Veranstaltungsort-Konfiguration implementiert ist, relativ dynamisch sein kann, wobei Knoten 102 (z. B. Instrumenten, Verstärkern, Mikrofonen etc. zugeordnet) während des Betriebs verbunden und getrennt werden. In dynamischen Konfigurationen kann die Fähigkeit des Systems 1400 zum Anpassen an Verbindungen und Trennungen von Knoten 102 ohne signifikante Betriebsunterbrechungen besonders wichtig sein, aber eine solche Anpassung kann auch in statischen Konfigurationen wichtig sein (z. B. in sicherheitskritischen Systemen 1400, in denen der Ausfall eines Knotens 102 nicht zum Ausfall des gesamten Systems 1400 führen sollte). Während die Anpassung an Vorrichtungsverbindungen und -trennungen ein Teil mancher Punkt-zu-Punkt-Kommunikationssysteme sein kann, sind die Ansätze, die in derartigen Systemen verwendet werden, möglicherweise nicht auf Daisy-Chain-Systeme anwendbar.
  • Daher kann ein System 1400 eine „Selbsterkennungs-“ und „Selbstrekonfigurations“-Funktionalität aufweisen, um auf Veränderungen in der Netzwerktopologie und/oder bei Vorrichtungsidentifikatoren zu reagieren, während die Kommunikation von Daten entlang eines bidirektionalen Daisy-Chain-Busses 106 aufrechterhalten wird. 15 bis 20 sind Flussdiagramme verschiedener Verfahren zur Knoten-Erkennung und -Konfiguration in einem Daisy-Chain-Netzwerk, gemäß verschiedener Ausführungsformen. Die Verfahren aus 15 bis 20 können von einem Host 110 eines Systems 1400 durchgeführt werden. Ein beliebiges der Verfahren aus 15 bis 20 kann in einem beliebigen der hierin offenbarten Systeme 100 und Systeme 1400 implementiert werden (z. B. in einem System 1400, das zur Audio- und Beleuchtungssteuerung konfiguriert ist, wie oben unter Bezugnahme auf 14 erläutert). Die Verfahren aus 15 bis 20 können eine Selbsterkennung und Selbstkonfiguration für Knoten 102 in dem Daisy-Chain-System 1400 bereitstellen, was das „Plug and Play“ neuer Knoten 102 ermöglicht. Die Verfahren aus 15 bis 20 können ermöglichen, dass ein Hauptknoten 102-1 die Subknoten 102-2 in einem System 1040 ohne frühere Systemnetzwerkkonfigurationsinformationen selbsterkennt. Ein Hauptknoten 102-1 kann die Subknoten 102-2 zu ihren Funktionen und Fähigkeiten abfragen, kann das System 100 dementsprechend automatisch konfigurieren und kann auf Veränderungen in dem System 1400 reagieren (z. B., wenn ein Subknoten 102-2 zu dem System 102-2 hinzugefügt wird oder wenn ein Subknoten 102-2 das System 1400 verlässt). Die Verfahren aus 15 bis 20 weisen eine erneute Selbsterkennung von Subknoten 102-2 und Rekonfiguration des Systems 1400 auf. Das Verfahren aus 15 weist einen dynamischen Knotenrekonfigurationsvorgang auf, in dem ein Knoten 102 eine neue Konfiguration für sich selbst ankündigen kann. In einem derartigen Vorgang kann ein Knoten 102 seine Konfiguration nach der Erkennung verändern. Beispielsweise kann sich die Anzahl von Peripherievorrichtungen 108 (z. B. eine oder mehrere Gitarren oder andere Instrumente) die mit einem Knoten 102 (z. B. einem Subknoten 102-2) gekoppelt sind, während des Betriebs des Systems 1400 verändern; als Antwort auf die Änderung der Anzahl von Peripherievorrichtungen 108 kann sich die Anzahl von Daten-Slots, die für den Knoten 102 benötigt werden, verändern. In einer derartigen Situation kann ein Knoten 102 seine aktualisierte Anzahl von Peripherievorrichtungen 108 (z. B. durch einen Mailbox-Exchange zwischen dem Knoten 102 und dem Host 110) ankündigen, und die Antwort auf die Ankündigung kann eine dynamische Rekonfiguration des Systems 1400 aufweisen, um eine geeignete Anzahl von Daten-Slots an dem Knoten 102 bereitzustellen.
  • In manchen Implementierungen weiß ein Host (oder eine Mikrosteuerung) nicht, womit er verbunden wird, und bestimmt stattdessen automatisch, wie viele Knoten sich auf dem Netzwerk befinden. Der Host konfiguriert auch die Knoten basierend auf Informationen, die lokal in jedem der Subknoten gespeichert sind und stellt den Bus ein. In manchen Beispielen ist der Bus ein A2B-Bus. Der Host stellt den Bus ohne früheres Wissen darüber ein, wie viele Knoten sich auf dem Bus befinden oder welche Art von Knoten jeder Knoten ist. Der Host ist dazu in der Lage, Knoten hinzuzufügen oder zu entfernen, wenn die Knoten zu dem Bus hinzugefügt und/oder entfernt werden. Falls beispielsweise ein Knoten von dem Bus getrennt wird, bestimmt der Host, dass der Knoten getrennt wurde und konfiguriert den Bus neu, um ohne den getrennten Knoten zu arbeiten. Dies steht im Gegensatz zu einem Verfahren des Aussendens eines Befehls, bis eine PLL den Knoten anvisiert und dann den Knoten in dem Wissen programmiert, was der Knoten darstellen soll.
  • 15A und 15B zeigen ein Verfahren 1500 zur Knotenerkennung gemäß verschiedener Ausführungsformen. In mehreren Implementierungen ist das Verfahren 1500 ein Verfahren zur Knotenerkennung in einem Daisy-Chain-Netzwerk mit mehreren verbundenen Knoten. Gemäß verschiedenen Beispielen weiß der Host nicht, welche Knoten online kommen werden und wofür beliebige Knoten, die mit dem Bus verbunden sind, programmiert sind. Jeder Knoten informiert den Host darüber, wofür er konfiguriert werden soll. In manchen Beispielen informiert ein Knoten den Host darüber, wie die Inter-Integrated-Schaltungs(i2c)-Schnittstelle und/oder i2s/tdm-Schnittstelle zu konfigurieren ist. In manchen Beispielen können Knoten eine beliebige ausgewählte Reihenfolge aufweisen, sodass eine bestimmte Vorrichtung, die Knoten fünf in einem System ist, Knoten acht in einem anderen System ist. Zusätzlich dazu weisen Knoten in manchen Beispielen löschbare programmierbare Nur-Lesespeicher (EPROM) auf, die Knotenidentifikations- und -konfigurationsinformationen enthalten.
  • Unter Bezugnahme auf 15A beginnt das Verfahren 1500 in der Startbox 1502. An der Startbox 1502 ist die Variable N=-1 und die Variable NewDisc=0 (worin N die letzte erkannte Subknotenzahl ist und NewDisc die Zählung neu erkannter Knoten ist). Bei Schritt 1504 wird bestimmt, ob die Bus-Selbsterkennung ausgewählt ist. Falls ein Chip sich im Bus-Selbsterkennungsmodus befindet, kann der Chip die Knoten abfragen, die in dem Netzwerk vorhanden sind, und bestimmen, wie viele Knoten in dem Netzwerk vorhanden sind. Wie in 15A gezeigt, ist die Bus-Selbsterkennung eine Eintrittspunktentscheidung bei der Aktivierung, bei Schritt 1504. In manchen Beispielen ist die Bus-Selbsterkennung ein Merkmal in einem Bus-Sendeempfänger und in manchen Beispielen ist die Bus-Selbsterkennung ein Merkmal in einem A2B-Sendeempfänger.
  • Falls bei Schritt 1504 die Selbsterkennung ausgewählt ist, geht das Verfahren 1500 weiter zu Schritt 1506. Die Bus-Selbsterkennungsschleife weist Schritte 1506, 1508 und 1510 auf. In mehreren Beispielen erfolgt die Bus-Selbsterkennung in Hardware. Schritt 1506 weist eine Bus-Selbsterkennungsschleife (nicht dargestellt) auf, in der der Host so viele Knoten wie möglich erkennt. In manchen Beispielen endet die Bus-Selbsterkennung an Schritt 1506, wenn es einen Leitungsfehler gibt, da es keinen nächsten Konten gibt (z. B. wurden 5 Knoten gefunden, aber es wurde kein 6. Knoten erkannt). In manchen Beispielen endet die Bus-Selbsterkennung bei Schritt 1506 an einem Time-out. Insbesondere blieb die Bus-Selbsterkennung stehen und wurde nicht abgeschlossen, und ein Time-out-Fail-Safe-Mechanismus beendete die Bus-Selbsterkennungsschleife. In manchen Beispielen endet die Bus-Selbsterkennung bei Schritt 1506, wenn es zu einem Kabelkurzschluss kommt.
  • In mehreren Beispielen läuft die Hardware-Selbsterkennung unter Verwendung eines Hauptknotentakts. In manchen Beispielen bestimmt die Selbsterkennung die Anzahl von Knoten, aber konfiguriert die Knoten nicht. Die Selbsterkennung kann die rasche Erkennung von Knoten und der Busvorspannung ermöglichen. In manchen Beispielen können verbundene erkannte Knoten einen Selbst-Boot-Vorgang beginnen, während der Host bootet. In manchen Beispielen kann eine Hardware-gestützte Erkennung unterbrochen werden, falls irgendwelche Unterbrechungen oder unvorhersehbare Umstände eintreten. In manchen Implementierungen benötigt eine Mikrosteuerung eine lange Zeit, um zu booten, sodass eine Bus-Selbsterkennung beginnen kann, während die Mikrosteuerung startet. In manchen Beispielen ist ein wichtiger Punkt der Bus-Selbsterkennung das Bestimmen, wie viele Knoten in dem Netzwerk vorhanden sind, und das Bestimmen, zu welchem Zeitpunkt das System damit beginnen sollte, nach dem nächsten Knoten zu suchen.
  • Hat der Host die Suche nach Knoten bei Schritt 1506 abgeschlossen, geht das Verfahren 1500 weiter zu Schritt 1508 und bestimmt, ob irgendwelche Subknoten erkannt wurden. Fall der Wert bei 1508 gleich 1 ist, dann wurden insbesondere einer oder mehrere Subknoten während des Bus-Selbsterkennungsschritts 1506 erkannt. Bei Schritt 1510 wird die Variable N auf den Wert der zuletzt erkannten Subknotenzahl eingestellt, und die Variable NEWDISC wird auf N+1 eingestellt, was die Zählung der neu erkannten Knoten ist. Das Verfahren 1500 geht dann weiter zu Schritt 1520. Bei Schritt 1508, wenn der Wert nicht gleich 1 ist, wurden keine Knoten während des Bus-Selbsterkennungsschritts 1506 erkannt, und das Verfahren 1500 geht weiter zu Schritt 1520. Wie nachstehend unter Bezugnahme auf 15B beschrieben, bestimmt Schritt 1520, ob es irgendwelche neu erkannten Knoten gibt und anschließende Schritte variieren abhängig davon, ob es bei Schritt 1520 irgendwelche neu erkannten Knoten gab.
  • Unter erneuter Bezugnahme auf Schritt 1504 geht das Verfahren weiter zu Schritt 1512, falls der Bus-Selbsterkennungsmodus nicht ausgewählt ist, und die HostSteuerung beginnt mit dem reihenweisen Abfragen der Knoten, die in dem System vorhanden sind. In manchen Beispielen verbindet sich eine Mikrosteuerung mit einem ersten Knoten in dem System (einem Hauptknoten) und versucht dann, den nächsten Knoten dadurch zu erkennen, indem er periodisch einen Synchronisationssteuerrahmen aussendet. Der nächste Knoten empfängt den Synchronisationssteuerrahmen und versucht den Synchronisationssteuerrahmen anzuvisieren und dem Synchronisationssteuerrahmen zu antworten. In diesem Verfahren wird eine Kommunikation zwischen der Mikrosteuerung und Subknoten in dem Netzwerk eingerichtet.
  • Bei Schritt 1512 wird eine Erkennung von Subknoten N+1 versucht. Da an der Startbox 1502 N=-1 ist, wird beim ersten Durchführen von Schritt 1512 eine Erkennung des Subknotens 0 versucht. Bei Schritt 1514 wird bestimmt, ob die Knotenerkennung erfolgreich war. Daher wird beim ersten Durchführen von 1514 bestimmt, ob die Erkennung von Subknoten 0 erfolgreich war. Das heißt bei Schritt 1514 wird bestimmt, ob Knoten 0 erkannt wurde. Falls kein Knoten 0 erkannt wurde, geht das Verfahren weiter zu Schritt 1520. Falls der Knoten bei Schritt 1514 erfolgreich erkannt wurde, geht das Verfahren weiter zu Schritt 1516, wo der Wert von N um 1 erhöht wird und der Wert von NewDisc ebenfalls um 1 erhöht wird. Das Verfahren geht dann zurück zu Schritt 1512, wobei die Erkennung des nächsten Subknotens (Subknoten N+1) versucht wird. In mehreren Beispielen wird die Schleife, die Schritte 1512, 1514, 1516 und 1518 aufweist, wiederholt, bis keine neuen Subknoten bei Schritt 1514 erkannt werden, und dann geht das Verfahren 1500 weiter zu Schritt 1520. Gemäß manchen Beispielen werden die gleichen Schritte durchgeführt, egal ob eine Hardware-Bus-Selbsterkennung durch einen A2B-Sendeempfängerchip durchgeführt wird oder Subknoten unter Verwendung einer Mikrosteuerungssoftware erkannt werden.
  • Wurden bei Schritt 1514 keine neuen Knoten erkannt oder wurde die Selbsterkennung bei Schritt 1508 oder Schritt 1510 abgeschlossen, geht das Verfahren weiter zu Schritt 1520. Falls es bei Schritt 1506 oder Schritt 1512 keine neu erkannten Knoten gab, ist NewDisc=0 und das Verfahren 1500 geht weiter zu Schritt 1536. Bei Schritt 1536 wird der Erkennungsversuch periodisch eingeleitet. Das heißt, dass das System periodisch nach neuen Knoten sucht. In manchen Beispielen wird der Erkennungsversuch bei Schritt 1536 einmal pro Sekunde eingeleitet.
  • Wird der Erkennungsversuch eingeleitet, überprüft das Verfahren bei Schritt 1538, ob der Bus bereits die maximale Anzahl von Knoten aufweist. Falls die maximale Anzahl von Knoten bei Schritt 1538 erreicht wurde, geht das Verfahren zurück zu Schritt 1536, wo der Erkennungsversuch weiterhin periodisch eingeleitet wird. Insbesondere kann in mehreren Beispielen ein Knoten fallen gelassen oder getrennt werden, wodurch die Anzahl von Knoten verringert wird und das Verfahren zu Schritt 1540 weitergehen gelassen wird. Bei Schritt 1540 bereitet sich der Bus für eine neue Knotenerkennung vor, indem er den Wert von NewDisc wieder auf null stellt. Dann geht das Verfahren zurück zu Schritt 1512, wie oben unter Bezugnahme auf 15A erläutert.
  • Bei Schritt 1520 gibt es einen oder mehrere neu erkannte Knoten, falls NewDisc nicht gleich null ist. Eine neue Variable M wird gleich N gesetzt, und das Verfahren 1500 geht weiter zu Schritt 1522. Bei Schritt 1522 werden die Modulinformationen M gelesen. In manchen Beispielen weist ein EPROM in dem Subknoten Subknoteninformationen wie Subknoten-Typ, -Verkäufer, -Modell und -Fähigkeiten auf. In mehreren Beispielen ist eine Vorrichtung möglicherweise nicht programmiert, um diese Fähigkeiten aufzuweisen, während der EPROM z. B. Informationen zu den Vorrichtungsfähigkeiten enthält.
  • Bei Schritt 1524 wird bestimmt, ob die Modulinformationen für Subknoten M gefunden wurden. Falls die Modulinformationen für Subknoten M gefunden wurden, geht das Verfahren weiter zu Schritt 1526 und das Modul bei Subknoten M wird konfiguriert. In manchen Beispielen wird das Modul bei Subknoten M basierend auf den Informationen konfiguriert, die aus dem Subknoten gelesen wurden. In manchen Beispielen wird das Modul an Subknoten M basierend auf Informationen konfiguriert, die in einer Nachschlagtabelle und/oder unter Verwendung gespeicherten Codes in der Mikrosteuerung gefunden wurden. In manchen Beispielen wird das Modul an Subknoten M basierend auf Code konfiguriert, der in dem Subknoten gespeichert ist. In mehreren Beispielen weiß der Host, wenn der Host weiß, was der Subknoten ist, wie dieser zu konfigurieren ist.
  • In einem Beispiel werden drei Knoten erkannt, daher ist NewDisc=3, und bei Schritt 1522 durchsucht der Host die Modulinformationen nach dem Subknoten 3. Bei Schritt 1524 wird bestimmt, dass Modulinformationen zu Subknoten 3 gefunden wurden, und bei Schritt 1526 geht das Verfahren direkt zu Schritt 1528 weiter, wobei der Subknoten-Konfigurationsschritt 1526 übersprungen wird. Das Verfahren geht zu Schritt 1528 weiter, wo NewDisc um eins verringert wird (NewDisc = NewDisc-1, daher in diesem Beispiel, NewDisc=2) und geht dann zu Schritt 1530 weiter, wo bestimmt wird, ob NewDisc größer als null ist. Falls NewDisc größer als null ist, geht das Verfahren zu Schritt 1532 weiter, wo M um eins verringert wird (M = M-1, daher wird M in diesem Beispiel von drei auf zwei verringert und M=2), und das Verfahren 1500 kehrt zurück zu Schritt 1522, wobei Modulinformationen für Subknoten zwei gelesen werden.
  • Die Schleife, die Schritt 1522, Schritt 1524, möglicherweise Schritt 1526, Schritt 1528, Schritt 1530 und Schritt 1532 aufweist, wird für Subknoten zwei und Subknoten eins wiederholt. Nachdem die Schleife für Subknoten eins durchgeführt wird, wird NewDisc bei Schritt 1528 um eins verringert und ist gleich null, was angibt, dass jegliche neu erkannten Knoten abgefragt und, falls möglich, konfiguriert wurden. Bei Schritt 1530 ist NewDisc nicht größer als null, und das Verfahren geht zur Systemkonfiguration weiter zu Schritt 1534.
  • Bei Schritt 1534 wird das System konfiguriert, einschließlich vorangegangener und neuer Subknoten. In manchen Beispielen weist die Systemkonfiguration jedem Subknoten einen oder mehrere Slots zu. In mehreren Beispielen werden Slots zugewiesen, wenn die Subknoten bekannt sind. Bei Schritt 1534 kann die Systemkonfiguration immer dann durchgeführt werden, wenn ein neuer Knoten hinzugefügt wird, ein Knoten fallen gelassen oder getrennt wird oder wenn sich die Konfiguration ohne eine Änderung der Anzahl von Knoten verändert.
  • Wie in 15B gezeigt, werden bei Schritt 1546 Informationen zu getrennten oder fallengelassenen Knoten detektiert und bewirken, dass das Verfahren zu Schritt 1534 zurückgeht, um das System zu rekonfigurieren. Im Allgemeinen prüft das System periodisch auf getrennte und/oder fallengelassene Knoten. Beispielsweise kann das System einmal pro Sekunde oder zehnmal pro Sekunde auf fallengelassene und/oder getrennte Knoten prüfen. In einem Beispiel bewirkt ein fallengelassener und/oder getrennter Knoten Unterbrechungen des Netzwerk-Hosts und bewirkt, dass eine neue Variable N erzeugt wird. Das System wird an die neue Konfiguration angepasst. In manchen Beispielen bewirkt ein fehlender Rahmen einen Fehler und/oder eine Unterbrechung. Das System sucht dann nach dem fehlenden Rahmen und schließt daraus, dass ein Knoten fallengelassen und/oder getrennt wurde. In mehreren Implementierungen löst ein getrennter Knoten eine Unterbrechung in dem System aus, was aufgrund des Unterbrechungssignals ein paralleler Vorgang ist, und daher weiß das System, wenn ein Knoten getrennt wird. In mehreren Beispielen wird die Variable N aktualisiert, um die letzte aktive Knotenzahl widerzuspiegeln, nachdem ein fallengelassener und/oder getrennter Knoten detektiert wurde.
  • In mehreren Beispielen wird das System bei Schritt 1534 rekonfiguriert, wenn neue Knoten zu dem System hinzugefügt werden, und läuft weiter. Insbesondere wird bei Schritt 1536 ein Knotenerkennungsversuch periodisch eingeleitet, während das System läuft. In manchen Beispielen wird der Knotenerkennungsversuch einmal pro Sekunde, zweimal pro Sekunde, zehnmal pro Sekunde oder mehr als zehnmal pro Sekunde eingeleitet. Der Wert der Variable N aus 15A ist um eins kleiner als die letzte bekannte Anzahl von Knoten (da der erste Knoten Knoten null ist und N für die letzte aktive Knotenzahl steht), und bei Schritt 1538 wird bestimmt, ob die aktuelle Anzahl von Knoten kleiner ist als die maximale Anzahl von Knoten. Falls das System aktuell die maximale Anzahl von Knoten aufweist, kehrt das Verfahren 1500 bei 1538 zu Schritt 1536 zurück.
  • Falls das System bei 1538 weniger als die maximale Anzahl von Knoten aufweist, geht das Verfahren 1500 zu Schritt 1540 weiter, wo es sich auf die neu Knotenerkennung vorbereitet, indem NewDisc auf null gesetzt wird. Dann kehrt das Verfahren wieder zu 1512 aus 15A zurück, wo es versucht, den Subknoten N+1 zu erkennen. Falls kein neuer Subknoten N+1 bei Schritt 1514 erkannt wird, geht das Verfahren 1500 weiter zu Schritt 1520, wo NewDisc immer noch gleich null sein wird, und das Verfahren kehrt für periodische Knotenerkennungsversuche zu Schritt 1536 zurück. Falls ein neuer Subknoten N+1 bei Schritt 1514 erkannt wird, geht das Verfahren 1500 weiter zu Schritt 1516 und schließlich zu Schritt 1522, 1524, 1526, 1528 und 1530, um jegliche neue Knoten abzufragen und zu konfigurieren.
  • Da das System rekonfiguriert werden kann, wenn Knoten hinzugefügt und/oder fallengelassen werden, kann sich die Position verschiedener Arten von Peripherievorrichtungen auf dem Bus verändern. Daher gibt es keine fixe Slot-Anzahl für verschiedene Peripherievorrichtungen, da sich die Slot-Position für eine beliebige bestimmte Peripherievorrichtung verändern kann. Da es keine fixe Slot-Anzahl gibt, können sich die Positionen verschiedener stromaufwärtiger Slots abhängig davon verschieben, wie viele Knoten zu dem stromaufwärtigen System beitragen. Daher kann die Anzahl von Knoten, die Mikrofoninformationen aufweisen, variieren, und die Slots, auf denen Mikrofondaten zu finden sind, können sich verändern. Daher kann die Position in dem Rahmen, an der sich der Audioinhalt befindet, abhängig von der Anzahl von mit dem System verbundenen Knoten variieren.
  • Wie bereits oben erwähnt werden in manchen Implementierungen keine Knoten hinzugefügt oder fallengelassen, sondern ein bestehender Knoten wird verändert. Beispielsweise können zu einem bestehenden Knoten mehr Fähigkeiten hinzugefügt werden. Eine Sechskanalbox und/oder eine Zehnkanalbox kann zusätzliche hinzugefügte Vorrichtungen oder bestehende entfernte Vorrichtungen aufweisen, wodurch der Mehrkanalboxknoten verändert wird. Beispielsweise kann eine Box mit einer damit verbundenen Gitarre eine zusätzlich hinzugefügte Gitarre aufweisen, sodass sie plötzlich mehr Daten als zuvor bereitstellt.
  • Schritt 1544 detektiert eine Knoten-Rekonfiguration. In mehreren Beispielen ist Schritt 1544 ein paralleler Vorgang, der prüft, ob ein Knoten eine neue Konfiguration ankündigt. In manchen Implementierungen wird eine Knotenänderung an Schritt 1544 von dem parallelen Vorgang entdeckt, und das Verfahren 1500 springt zur Knoten-Rekonfiguration zu Schritt 1544. In manchen Beispielen kann eine Knotenkonfigurationsänderung durch die Mikrosteuerung detektiert werden. In manchen Beispielen löst eine Änderung der Knotenkonfiguration eine Unterbrechung aus, was eine System-Rekonfiguration bewirkt.
  • Bei Schritt 1544 wird die Anzahl neu erkannter Knoten auf eins eingestellt (NewDisc = 1), und die Variable M wird auf die Knotenzahl zur Rekonfiguration festgelegt. Falls beispielsweise Knoten drei rekonfiguriert wurde, wird M auf drei gesetzt. In manchen Beispielen ist ein rekonfigurierter Knoten ein intelligenter Knoten, der eine lokale Mikrosteuerung mit drahtloser Konnektivität aufweist, und ein Knoten-Firmwareupdate verändert die Fähigkeit des Knotens. Nach Schritt 1544 geht das Verfahren zu Schritt 1522 weiter, wo Modulinformationen für den Subknoten M gelesen werden. Das Ändern eines Knotens kann auch den Rest der Knoten beeinflussen. Beispielsweise kann die Position der Slots beeinflusst werden. Beispielsweise kann ein Knoten, der zwei Kanäle verwendete, nun vier verwenden, daher werden die Slots erneut zugeordnet. Sind die Knoten konfiguriert, kehrt das Verfahren 1500 zu Schritt 1534 zurück, wo das System rekonfiguriert wird.
  • In manchen Beispielen wird die Knoten-Rekonfiguration bei Schritt 1544 periodisch geprüft, beispielsweise einmal pro Sekunde, weniger als einmal pro Sekunde oder mehr als einmal pro Sekunde. In manchen Beispielen prüft das System bei Schritt 1544 auf Knoten-Rekonfigurationen, wenn das Verfahren 1500 bei Schritt 1536 darauf wartet, dass der nächste periodische Entdeckungsversuch eingeleitet wird. In manchen Beispielen prüft das System auf das Fallenlassen und/oder Trennen von Knoten bei Schritt 1546, wenn das Verfahren 1500 bei Schritt 1536 darauf wartet, dass der nächste periodische Erkennungsversuch eingeleitet wird.
  • In mehreren Implementierungen befindet sich das System ein einem Standard-Zustand, in dem einfach die bestehende Konfiguration ausgeführt wird, wenn das Verfahren 1500 keine neuen Knoten, Knoten-Rekonfigurationen oder das Fallenlassen/Trennen von Knoten erkennt. In mehreren Beispielen sind die Schritte des Verfahrens 1500 so schnell, dass das System die meiste Zeit im Standard-Zustand arbeitet, in dem einfach die bestehende Konfiguration ausgeführt wird.
  • 16 ist ein Beispiel 1600 für eine Abfolge zur Erkennung eines Subknotens gemäß verschiedener Ausführungsformen der Offenbarung. Gemäß verschiedenen Implementierungen ist die Abfolge zur Erkennung, die in 16 gezeigt ist, ein Beispiel für eine Erkennungsabfolge, die bei Schritt 1512 aus 1 5A durchgeführt wird. Jeder Block der Abfolge steht für einen Schritt, und die Abfolge beginnt oben und verläuft nach unten, wie durch den „Erkennungs“-Pfeil 1602 dargestellt.
  • Die ersten sechs Blöcke der Abfolge zeigen die Kommunikation mit dem Hauptknoten. Insbesondere beginnt die Abfolge mit einem Schreibbefehl an den Hauptknoten. In manchen Beispielen ist eine Mikrosteuerung mit einem ersten Knoten verbunden und die Mikrosteuerung lässt den ersten Knoten wissen, dass er der Hauptknoten ist. In manchen Beispielen kommuniziert die Mikrosteuerung über eine i2C-Schnittstelle mit dem ersten Knoten. Nach einer Verzögerung am zweiten Block werden mehr Befehle an den Hauptknoten geschrieben. Insbesondere können Befehle das Kommunizieren an den nächsten Knoten, wann er mit dem Antworten beginnen soll, und Informationen darüber, wann Synchronisationssteuerrahmen gesendet werden, aufweisen. In manchen Beispielen können Befehle, nachdem die Phasensperrschleife (PLL) auf einen Subknoten gesperrt ist, den Start des Antwortens aufweisen. In manchen Beispielen bedeutet eine neue Struktur, dass nachdem ein oder mehrere Register programmiert wurden, damit begonnen wird, Synchronisationssteuerrahmen zu senden. In manchen Beispielen wird eine Unterbrechungsmaske festgelegt. In mehreren Implementierungen bestimmt ein Host oder eine Mikrosteuerung, ob er/sie mit einem Hauptknoten oder einem Subknoten kommuniziert.
  • Falls die Mikrosteuerung in manchen Beispielen mit einem Subknoten kommuniziert, ist dies in den Hauptknoten in dem Knotenregister (z. B. 3 für Subknoten 3) geschrieben. Insbesondere wird die Subknotennummer so in dem Hauptknoten festgelegt, dass die anschließenden Lesevorgänge und Schreibvorgänge an den Subknoten diese Knotennummer verwenden werden. In mehreren Beispielen weisen die Schreibbefehle eine Schaltsteuerung auf, die die Busleistung auf einen Buskontakt (z. B. einen A2B-Kontakt) schaltet. Eine Leitungsdiagnose kann basierend auf dem Schaltsteuerbefehl durchgeführt werden. Zusätzliche Synchronisationssteuerrahmen können auf dem Buskontakt ausgesendet werden. Nachdem die Variable N auf null gesetzt wird, gibt es einen maximalen Wartezeitraum zum Erkennen eines Knotens und bis zum Beginn des Antwortens des Knotens. Falls es gemäß verschiedenen Beispielen keine Antwort innerhalb eines ausgewählten Zeitraums gibt, erfolgt ein Time-out und der Ablauf endet bei 1620. Gemäß verschiedenen Beispielen stehen die „wait“-Pfeile 1622, 1624 für den Time-out-Zeitraum. In manchen Beispielen, wie in 16 gezeigt, beträgt der Wartezeitraum 35 ms. Falls in mehreren Beispielen eine Antwort auf den periodisch übertragenen Synchronisationssteuerrahmen nicht innerhalb des Wartezeitraums 1622, 1624 empfangen wird, kann in dem System ein Time-out eintreten. Allerdings wird normalerweise eine Antwort empfangen, und das Verfahren endet mit einer Unterbrechung (z. B. Block 1610, 1612), die angibt, dass die Subknotenerkennung abschlossen ist und Antworten empfangen wurden.
  • Wird ein Subknoten erkannt, werden Information aus dem Subknoten bei Block 1614 gelesen. In mehreren Beispielen weisen die Informationen eines oder mehrere aus Verkäuferinformationen, Produktinformationen, Versionsinformationen und Modellinformationen auf. An Block 1616 wird bestimmt, ob die Informationen, die an Block 1614 gelesen wurden, mit erwarteten Werten übereinstimmt. Falls die Informationen nicht mit den erwarteten Werten übereinstimmen, kann die Abfolge mit einem ungültigen Subknotenfehler beendet werden. Falls es in manchen Beispielen zusätzliche Subknoten gibt, wird die Abfolge fortgesetzt und ermöglicht eine Konfiguration der zusätzlichen Subknoten. In manchen Beispielen kann es verschiedene Typen von Unterbrechungen geben, wie z. B. eine getrennte Leitung.
  • Bei Block 1618 bestimmt das System, ob es mehr Subknoten zu erkennen gibt. Falls es keine weiteren Subknoten gibt, endet die Abfolge. Falls es zusätzliche Subknoten gibt, geht die Abfolge weiter, bis alle Subknoten erkannt wurden.
  • 17 zeigt ein Verfahren 1700 zum Lesen von Modulinformationen für einen Subknoten gemäß verschiedenen Ausführungsformen der Offenbarung. In manchen Beispielen wird das Verfahren 1700 bei Schritt 1522 aus 1 5B durchgeführt. Bei Schritt 1702 wird das Modulinformations-Zugriffsverfahren bestimmt. Beispiele für Modulinformations-Zugriffsverfahren weisen das Zugreifen auf eine Speichervorrichtung (z. B. über 12C oder SPI), das Zugreifen auf einen Posteingang, Pin Strapping und das Zugreifen auf einen einmalig programmierbaren (OTP) Speicher oder einen Flash-Speicher auf. Falls es bei Schritt 1702 kein Modulinformations-Zugriffsverfahren gibt, geht das Verfahren 1700 weiter zu Schritt 1714. Bei Schritt 1714 stellt das System eine Variable für gefundene Modulinformationen auf Nein, was angibt, dass keine Modulinformationen gefunden wurden, da das Modulinformations-Zugriffsverfahren nicht bestimmt wurde. In manchen Beispielen wird die Variable „Modulinformationen gefunden“ bei Schritt 1524 aus 15B gelesen. Falls das Modulinformations-Zugriffsverfahren bei Schritt 1702 bestimmt wird, geht das Verfahren weiter zu Schritt 1704 und der Modulidentifikator wird gelesen.
  • Bei Schritt 1706 wird bestimmt, ob der Modulidentifikator mit einem erwarteten Wert übereinstimmt. Falls der Modulidentifikator nicht mit einem erwarteten Wert übereinstimmt, geht das Verfahren weiter zu Schritt 1714. Falls der Modulidentifikator zu einem erwarteten Wert passt, geht das Verfahren weiter zu Schritt 1708, wo Modulinformationen gelesen werden. Beispiele für Modulinformationen, die in dem Verfahren aus 17 gelesen werden, weisen Versionsinformationen, Anbieterinformationen, Produktinformationen, Funktionalitätsinformationen, Seriennummer, Herstellungsinformationen, Modellinformationen, Konfigurationsinformationen, Routing-Informationen, Authentifizierungsinformationen und/oder Kalibrierungskoeffizienten auf. In manchen Beispielen werden die Modulinformationen auf einem EPROM, z. B. einem i2C-verbundenen EPROM, gefunden. In manchen Beispielen werden Modulinformationen auf einer Subknoten-Mikrosteuerung gefunden, und in manchen Beispielen werden Modulinformationen auf einer Subknoten-Mikrosteuerung gefunden, die über die Postfach-Option von A2B ausgetauscht werden. Das Verfahren geht weiter zu Schritt 1710, wo es verifiziert, dass Modulinformationen gefunden wurden (und kann entsprechend eine zugeordnete Variable festlegen). Nach Schritt 1710 (oder Schritt 1714) geht das Verfahren 1700 weiter zu Schritt 1712, wo es das gelesene Modulinformationsverfahren verlässt.
  • 18 ist ein Flussdiagramm, das einen Ablauf 1800 zum Konfigurieren eines Subknotens gemäß verschiedenen Ausführungsformen der Offenbarung zeigt. In manchen Beispielen wird die Abfolge 1800 bei Schritt 1526 aus 1 5B durchgeführt. Die Abfolge 1800 kann verwendet werden, um einen Subknoten basierend auf Modulinformationen aus dem Verfahren 1700 zu konfigurieren. Bei Block 1802 werden Registereinstellungen für den Subknoten nachgeschlagen. Bei Block 1804 werden Subknoten-Slots auf den Subknoten geschrieben. Slots können lokale Slots, Up-Slots, Down-Slots, Übertragungsslots und beliebige andere Slots aufweisen. Bei Block 1806 werden andere Registereinstellungen auf den Subknoten angewendet, wie z. B. i2C-Einstellungen und periphere i2C-Adressen. Bei Block 1808 werden Register der Subknoten-Peripherievorrichtungen und nach dem Schreiben auf den Hauptknoten werden Register zum Ermöglichen eines derartigen peripheren Zugriffs festgelegt. Bei Block 1810 wird bestimmt, ob es zusätzliche Subknoten gibt, die zu konfigurieren sind. Falls es zusätzliche Subknoten gibt, die zu konfigurieren sind, geht die Abfolge 1800 zu Schritt 1812 weiter und N wird um eins erhöht, Informationen werden auf den Hauptknoten geschrieben und die Abfolge kehrt zu Block 1802 zurück. Falls es keine zusätzlichen Subknoten gibt, die zu konfigurieren sind, endet die Abfolge 1800. In manchen Beispielen kann die Abfolge 1800 für neue Subknoten durchgeführt werden und in manchen Beispielen wird die Sequenz 1800 für alle Subknoten durchgeführt. Wurden alle Subknoten konfiguriert, wird das System, einschließlich der Subknoten, konfiguriert.
  • In manchen Ausführungsformen kann ein Knoten 102 automatisch zwischen dem Fungieren als ein Subknoten 102-2 und dem Fungieren als ein Hauptknoten 102-1 umgeschaltet werden, um den Netzwerkbetrieb zu starten und/oder aufrechtzuerhalten. Die in 15 bis 18 gezeigte Funktionalität kann die Anwendung des hierin offenbarten Systems 100 in Umgebungen ermöglichen, in denen es wünschenswert ist, dass sich ein Netzwerk ohne Eingreifen durch einen Benutzer selbst konfiguriert.
  • Ausgewählte Beispiele
  • Beispiel 1 stellt ein Verfahren zur Knotenerkennung und -konfiguration in einem Daisy-Chain-Netzwerk, aufweisend eine Vielzahl von Knoten, bereit, das Folgendes aufweist: Bestimmen, dass zumindest ein neuer Subknoten zu der Vielzahl von Knoten hinzugefügt wurde; Erkennen des zumindest einen neuen Subknotens; Lesen von Modulinformationen für den zumindest einen neuen Subknoten; Konfigurieren des zumindest einen neuen Subknotens; Konfigurieren eines Systems, aufweisend ein Daisy-Chain-Netzwerk, basierend auf Informationen von jedem aus der Vielzahl von Knoten; und periodisches Einleiten eines Erkennungsversuchs, wobei der Erkennungsversuch das Bestimmen aufweist, ob zumindest ein neuerer Subknoten zu dem Daisy-Chain-Netzwerk hinzugefügt wurde.
  • Beispiel 2 stellt ein Verfahren nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit, wobei das Bestimmen, dass zumindest ein neuer Subknoten zu der Vielzahl von Knoten hinzugefügt wurde, ferner eine Bus-Selbsterkennung aufweist, wobei eine Hoststeuerung die Vielzahl von Knoten, die in dem Netzwerk vorhanden sind, abfragt.
  • Beispiel 3 stellt ein Verfahren nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit, wobei die Bus-Selbsterkennung bei Systemstart erfolgt.
  • Beispiel 4 stellt ein Verfahren nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit, wobei die Bus-Selbsterkennung das Bestimmen einer Anzahl von Knoten in der Vielzahl von Knoten aufweist.
  • Beispiel 5 stellt ein Verfahren nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit, wobei die Vielzahl von Knoten eine erste Vielzahl von Knoten ist und ferner Folgendes aufweist: Detektieren einer Trennung eines aktuellen Knotens von der ersten Vielzahl von Knoten, und Rekonfigurieren des Systems basierend auf Informationen von jedem aus einer zweiten Vielzahl von Knoten, wobei die zweite Vielzahl von Knoten verbundene Knoten aus der ersten Vielzahl von Knoten aufweist.
  • Beispiel 6 stellt ein Verfahren nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit, das ferner das Detektieren einer Rekonfiguration eines ersten Subknotens aus der Vielzahl von Knoten aufweist.
  • Beispiel 7 stellt ein Verfahren nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit, das ferner Folgendes aufweist: Lesen von Modulinformationen für den ersten Subknoten; Konfigurieren des ersten Subknotens; und Rekonfigurieren des Systems basierend auf Informationen von jedem aus der Vielzahl von Knoten.
  • Beispiel 8 stellt ein Verfahren nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit, wobei die Vielzahl von Knoten eine erste Vielzahl von Knoten ist, wobei die wobei die erste Vielzahl von Knoten plus der zumindest eine neuere Subknoten eine zweite Vielzahl von Knoten sind, und ferner aufweisend, wenn der zumindest eine neuere Subknoten hinzugeführt wurde: Lesen von Modulinformationen für den zumindest einen neueren Subknoten; Konfigurieren des zumindest einen neueren Subknotens; und Rekonfigurieren des Systems basierend auf Informationen von jedem aus der zweiten Vielzahl von Knoten.
  • Beispiel 9 stellt ein System zur Knotenerkennung und -konfiguration bereit, das Folgendes aufweist: ein Daisy-Chain-Netzwerk aus Knoten, das eine Vielzahl von Knoten aufweist; einen Host, der konfiguriert ist, um: zumindest einen neuen Subknoten zu erkennen, der zu der Vielzahl von Knoten hinzugefügt wurde; Modulinformationen für den zumindest einen neuen Subknoten zu lesen; den zumindest einen neuen Subknoten zu konfigurieren; das System, aufweisend das Daisy-Chain-Netzwerk, basierend auf Informationen von jedem aus der Vielzahl von Knoten zu konfigurieren; und periodisch einen Erkennungsversuch einzuleiten, wobei der Erkennungsversuch das Bestimmen aufweist, ob zumindest ein neuerer Subknoten zu dem Daisy-Chain-Netzwerk hinzugefügt wurde.
  • Beispiel 10 stellt ein System nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit, wobei zumindest ein neuer Subknoten einen Speicher aufweist, und der Speicher die Modulinformationen aufweist.
  • Beispiel 1 1 stellt ein System nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit, wobei der Host konfiguriert ist, um die Modulinformationen zur Auffindung von gespeichertem Code zu nutzen, um den zumindest einen neuen Subknoten zu konfigurieren.
  • Beispiel 12 stellt ein System nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit, wobei die Modulinformationen zumindest eines aus Anbieterinformationen, Produktinformationen, Versionsinformationen, Modellinformationen, Funktionalitätsinformationen, Seriennummer, Herstellungsinformationen, Konfigurationsinformationen, Routing-Informationen, Authentifizierungsinformationen und Kalibrierungskoeffizienten aufweist.
  • Beispiel 13 stellt ein System nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit, wobei der Host ferner konfiguriert ist, um ein Zugriffsverfahren für die Modulinformationen zu bestimmen.
  • Beispiel 14 stellt ein System nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit, wobei das System eine Vielzahl von Slots aufweist und wobei der Host ferner konfiguriert ist um zumindest einen aus der Vielzahl von Slots jeweils einem aus der Vielzahl von Subknoten zuzuweisen.
  • Beispiel 15 stellt ein Verfahren zum Auffinden von Konfigurationsinformationen für einen Subknoten in einem Daisy-Chain-Netzwerk bereit, das Folgendes aufweist: Bestimmen eines Modulinformationen-Zugriffsverfahrens; Lesen eines Modulidentifikators; Bestimmen, ob der Modulidentifikator mit einem erwarteten Wert übereinstimmt; Lesen von Modulinformationen über das Zugriffsverfahren; Bestimmen von Registereinstellungen für den Subknoten basierend auf den Modulinformationen; Anwenden von Registereinstellungen auf den Subknoten; und Zuordnen von zumindest einem Slot zu dem Knoten.
  • Beispiel 16 stellt ein Verfahren nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit, das ferner das Schreiben von Subknoteninformationen zu einem Hauptknoten aufweist.
  • Beispiel 17 stellt ein Verfahren nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit, das ferner das Zuordnen eines Audiokanals zu dem Subknoten und Kommunizieren der Audiokanalzuordnung an einen Hauptknoten aufweist.
  • Beispiel 18 stellt ein Verfahren nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit, das ferner das Anwenden von Subknoten-Peripherieregistereinstellungen auf zumindest eine Subknoten-Peripherievorrichtung aufweist.
  • Beispiel 19 stellt ein Verfahren nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit, das ferner das Bestimmen, ob ein zusätzlicher Subknoten vorhanden ist, und das Konfigurieren des zusätzlichen Subknotens aufweist.
  • Beispiel 20 stellt ein Verfahren nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit, wobei das Lesen von Modulinformationen das Lesen von zumindest einem aus Versionsinformationen, Anbieterinformationen, Produktinformationen, Funktionalitätsinformationen, Seriennummer, Herstellungsinformationen, Modellinformationen, Konfigurationsinformationen, Routing-Informationen, Authentifizierungsinformationen und Kalibrierungskoeffizienten aufweist.
  • Beispiel 21 ist ein Verfahren zur Selbsterkennung und Selbstkonfiguration von Daisy-Chain-Netzwerk-Knoten (z. B. in einem System, aufweisend einen einzelnen Hauptknoten und mehrere Subknoten) gemäß einer beliebigen der hierin offenbarten Ausführungsformen.
  • Beispiel 22 stellt ein Verfahren nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit und kann ferner angeben, dass die gesamten Systemkonfigurationsinformationen aus Informationen erstellt werden, die an jedem Knoten gespeichert sind.,
  • Beispiel 23 stellt ein Verfahren nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit und kann ferner angeben, dass auf die Informationen, die an jedem Knoten gespeichert sind, durch Pin Strapping, On-Chip-Memory (z. B. Nur-Lesespeicher (ROM), OTP, elektrisch löschbarer programmierbarer ROM (EEPROM), Flash etc.), Off-Chip-Memory (z. B. I2C/SPI-zugreifbar) oder einen lokalen Mikrosteuereinheits(MCU)-Speicher (z. B. übermittelt durch Postfach-Befehle über I2C oder SPI) zugegriffen werden kann
  • Beispiel 24 ist ein Verfahren zum Auffinden von Konfigurationsinformationen aus einer Anordnung möglicher Quellen für einen Knoten in einem Daisy-Chain-Netzwerk gemäß einer beliebigen der hierin offenbarten Ausführungsformen.
  • Beispiel 25 stellt ein Verfahren nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit und gibt ferner an, dass die Konfigurationsinformationen die Funktionalität eines Knotens aufweisen.
  • Beispiel 26 ist ein Verfahren zur automatischen Konfiguration eines Daisy-Chain-Knotensystems durch eine MCU in einem Hauptknoten basierend auf den Konfigurationsinformationen auf jedem Knoten gemäß einer beliebigen der hierin offenbarten Ausführungsformen.
  • Beispiel 27 stellt ein Verfahren nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit und kann ferner angeben, dass die Konfiguration über lokale Schnittstellen erfolgt.
  • Beispiel 28 stellt ein Verfahren nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit und kann ferner angeben, dass die Konfiguration die Kommunikation von Audiokanalzuordnung innerhalb des Systems (z. B. für ein Audio-Routing) aufweist.
  • Beispiel 29 stellt ein Verfahren nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit und kann ferner angeben, dass die Konfigurationsinformationen Kalibrierungskoeffizienten aufweisen.
  • Beispiel 30 ist ein Verfahren zum periodischen Detektieren gemäß einer beliebigen der hierin offenbarten Ausführungsformen, ob ein hinzugekommener Knoten zu einem Daisy-Chain-System hinzugekommen ist und/oder ob ein Knoten von dem Daisy-Chain-System getrennt wurde.
  • Beispiel 31 ist ein Verfahren des Hauptknoten-Festlegens in einem Daisy-Chain-System gemäß einer beliebigen der hierin offenbarten Ausführungsformen.
  • Beispiel 32 ist ein Verfahren des Subknoten-Festlegens in einem Daisy-Chain-System gemäß einer beliebigen der hierin offenbarten Ausführungsformen.
  • Beispiel 33 ist ein Verfahren zum Auffinden von Modulinformationen für einen Knoten in einem Daisy-Chain-System gemäß einer beliebigen der hierin offenbarten Ausführungsformen.
  • Beispiel 34 ist ein Verfahren zum Konfigurieren der Knoten in einem Daisy-Chain-System zumindest teilweise basierend auf Modulinformationen, die von einem oder mehreren Knoten bereitgestellt werden, gemäß einer beliebigen der hierin offenbarten Ausführungsformen.
  • Beispiel 35 stellt ein Verfahren nach einem der vorangegangenen und/oder nachstehenden Beispiele bereit und kann ferner angeben, dass die Konfiguration das Berechnen von globalen Systemparametern zumindest teilweise basierend auf den Modulinformationen aufweist.
  • Beispiel 36 weist den Gegenstand eines beliebigen der Beispiele 1-35 auf und gibt ferner an, dass zumindest eine Vorrichtung ein Mikrofon aufweist.
  • Beispiel 37 weist den Gegenstand eines beliebigen der Beispiele 1-36 auf und gibt ferner an, dass zumindest eine Vorrichtung einen Sendeempfänger aufweist.
  • Nachdem verschiedene Aspekte und Ausführungsformen der Technologie dieser Erfindung beschrieben wurden, versteht sich, dass verschiedene Änderungen, Modifikationen und Verbesserungen für Fachleute auf dem Gebiet der Erfindung ohne Weiteres möglich sind. Solche Änderungen, Modifikationen und Verbesserungen sollen innerhalb des Geists und Schutzumfangs der in der Anmeldung beschriebenen Technologie liegen. Beispielsweise werden sich Fachleute auf dem Gebiet der Erfindung ohne Weiters verschiedene andere Mittel und/oder Strukturen zur Ausführung der Funktion und/oder zum Erhalt der Ergebnisse und/oder eines oder mehrerer der hierin beschriebenen Vorteile vorstellen können, und jede solche Variation und/oder Modifikation ist als innerhalb des Schutzumfangs der hierin beschriebenen Ausführungsformen zu erachten.
  • Fachleute auf dem Gebiet der Erfindung werden zahlreiche Äquivalente zu den hierin beschriebenen spezifischen Ausführungsformen erkennen oder mithilfe routinemäßiger Versuche feststellen können. Es versteht sich daher, dass die vorstehenden Ausführungsformen lediglich als Beispiele dargelegt werden und dass erfindungsgemäße Ausführungsformen im Rahmen der beiliegenden Ansprüche und deren Äquivalente anders als spezifisch beschrieben ausgeführt werden können. Außerdem ist jede Kombination aus zwei oder mehr hierin beschriebenen Merkmalen, Systemen, Gegenständen, Materialien, Kits und/oder Verfahren, wenn solche Merkmale, Systeme, Gegenstände, Materialien, Kits und/oder Verfahren sich nicht gegenseitig ausschließen, in den Schutzumfang der vorliegenden Offenbarung eingeschlossen.
  • Das Vorstehende betrifft eine oder mehrere Ausführungsformen des hierin offenbarten Gegenstands. Diese Ausführungsformen werden bereitgestellt, um es einer Person mit normalen Fachkenntnissen (person having ordinary skill in the art, PHOSITA) zu ermöglichen, verschiedene Aspekte der vorliegenden Offenbarung besser zu verstehen. Auf bestimmte allgemein bekannte Begriffe sowie zugrundeliegende Technologien und/oder Standards kann verweisen werden, ohne dass sie im Detail beschrieben werden. Es wird erwartet, dass die PHOSITA ausreichend Hintergrundwissen oder -informationen über diese Technologien und Standards hat oder auf solche zugreifen kann, um die Lehren der vorliegenden Offenbarung auszuführen.
  • Die PHOSITA wird verstehen, dass sie die vorliegende Offenbarung ohne Weiters als Basis für den Entwurf oder die Modifikation anderer Prozesse, Strukturen oder Variationen verwenden kann, um den gleichen Zweck zu erfüllen und/oder die gleichen Vorteile wie die hierin dargelegten Ausführungsformen zu erreichen. Die PHOSITA wird auch verstehen, dass solche äquivalenten Konstruktionen nicht vom Geist und Schutzumfang der vorliegenden Offenbarung abweichen und dass sie verschiedene Änderungen, Ersetzungen und Anpassungen vornehmen kann, ohne vom Geist und Schutzumfang der vorliegenden Offenbarung abzuweichen.
  • Die oben beschriebenen Ausführungsformen können in zahlreichen verschiedenen Arten implementiert werden. Ein oder mehrere Aspekte und Ausführungsformen der vorliegenden Anmeldung in Bezug auf die Leistung von Prozessen oder Verfahren können Programmbefehle nutzen, die durch eine Vorrichtung (z. B. einen Computer, einen Prozessor oder eine andere Vorrichtung) ausführbar sind, um die Prozesse oder Verfahren auszuführen oder deren Leistung zu steuern.
  • In diesem Zusammenhang können verschiedene erfindungsgemäße Konzepte als computerlesbares Speichermedium (oder als mehrere computerlesbare Speichermedien) (z. B. als Computerspeicher, eine oder mehrere Disketten, CDs, optische Platten, Magnetbänder, Flashspeicher, Schaltungskonfigurationen in freiprogrammierbaren Verknüpfungsfeldern oder anderen Halbleitervorrichtungen oder andere physische Speichermeiden) ausgeführt sein, die mit einem oder mehreren Programmen kodiert sind, die bei Ausführung auf einem oder mehreren Computern oder anderen Prozessoren Verfahren ausführen, die eine oder mehrere der verschiedenen oben beschriebenen Ausführungsformen implementieren.
  • Das computerlesbare Medium oder die computerlesbaren Medien können transportierbar sein, sodass das Programm oder die Programme, das/die darauf gespeichert ist/sind, auf einen oder mehrere unterschiedliche Computer oder andere Prozessoren geladen werden kann/können, um verschiedene der oben beschriebenen Aspekte zu implementieren. In manchen Ausführungsformen können computerlesbare Medien nichtflüchtige Medien sein.
  • Es gilt darauf hinzuweisen, dass die vorstehend in Bezug auf die FIGUREN erläuterten Aktivitäten, die für jede beliebige integrierte Schaltung anwendbar sind, die eine Signalverarbeitung einschließt (z. B. Gestensignalverarbeitung, Videosignalverarbeitung, Audiosignalverarbeitung, Analog-Digital-Umwandlung, Digital-Analog-Umwandlung), insbesondere solche, die spezialisierte Softwareprogramme oder Algorithmen ausführen können, von denen manche mit der Verarbeitung von digitalisierten Echtzeitdaten assoziiert sein können.
  • In manchen Fällen können die Lehren der vorliegenden Offenbarung in einem oder mehreren physischen, nichtflüchtigen, computerlesbaren Medien kodiert sein, auf denen ausführbare Befehle gespeichert sind, die bei Ausführung einer programmierbaren Vorrichtung (z. B. einen Prozessor oder DSP) befehlen, die hierin offenbarten Verfahren oder Funktionen auszuführen. In Fällen, in denen die Lehren hierin zumindest teilweise in einer Hardware-Vorrichtung (z. B. ASIC, IP-Block oder SoC) ausgeführt sind, könnte ein nichtflüchtiges Medium eine Hardware-Vorrichtung aufweisen, die mit Logik Hardwareprogrammiert ist, um die hierin offenbarten Verfahren oder Funktionen auszuführen. Die Lehren könnten auch in der Form einer Registertransferebene (RTL) oder einer anderen Hardware-Beschreibungssprache wie VHDL oder Verilog praktiziert werden, die zur Programmierung eines Fabrikationsprozesses verwendet werden kann, um die offenbarten Hardware-Elemente zu produzieren.
  • In beispielhaften Implementierungen können zumindest einige Teile der hierin dargelegten Verarbeitungsaktivitäten auch in Software implementiert sein. In manchen Ausführungsformen können eines oder mehrere dieser Merkmale in Hardware implementiert sein, die außerhalb der Elemente der offenbarten Figuren bereitgestellt sind, oder in einer beliebigen geeigneten Weise zusammengeschlossen sein, um die gewünschte Funktionalität zu erreichen. Die verschiedenen Komponenten können Software (oder reziprozierende Software) aufweisen, die koordinieren kann, um die hierein dargelegten Operationen zu erreichen. In weiteren Ausführungsformen können die Elemente beliebige Algorithmen, Hardware, Software, Komponenten, Module, Schnittstellen oder Objekte aufweisen, die deren Operationen erleichtern.
  • Jede beliebige, geeignet ausgebildete Prozessorkomponente kann jede beliebige Art von Befehl ausführen, die mit den Daten assoziiert ist, um die hierin im Detail angeführten Operationen zu erreichen. Jeder hierin offenbarte Prozessor können ein Element oder einen Gegenstand (z. B. Daten) von einem Zustand oder Ding zu einem anderen Zustand oder Ding umwandeln. In einem anderen Beispiel können einige hierin dargelegte Aktivitäten mit fixer Logik oder programmierbarer Logik (z. B. Software und/oder Computerbefehlen, die von einem Prozessor ausgeführt werden) implementiert werden, und die hierin identifizierten Elemente könnten eine Art eines programmierbaren Prozessors, einer programmierbaren digitalen Logik (z. B. FPGA, löschbarer programmierbarer Festwertspeicher (EPROM), elektrisch löschbarer, programmierbarer Festwertspeicher (EEPROM)), einer ASIC, die digitale Logik aufweist, von Software, eines Codes, von elektronischen Befehlen, eines Flashspeichers, von optischen Platten, CD-ROMs, DVD-ROMs, magnetischen oder optischen Karten, anderen Arten von maschinenlesbaren Medien, die zur Speicherung von elektronischen Befehlen geeignet sind, oder ein beliebige Kombination davon sein.
  • Während des Betriebs können Prozessoren Informationen in jeder beliebigen Art von nichtflüchtigem Speichermedium (z. B. Direktzugriffsspeicher (RAM), Festwertspeicher (ROM), FPGA, EPROM, elektrisch löschbarer programmierbarer ROM (EEPROM) usw.), Software, Hardware oder in jeder/jedem beliebigen anderen geeigneten Komponente, Vorrichtung, Element oder Objekt, wenn geeignet und auf besonderen Bedürfnissen basierend, speichern. Außerdem können die nachverfolgten, gesendeten, empfangenen oder in einem Prozessor gespeicherten Informationen in einer/einem beliebigen Datenbank, Register, Tabelle, Cache, Warteschlange, Kontrollliste oder Speicherstruktur bereitgestellt sein, basierend auf den jeweiligen Bedürfnissen und Implementierungen, wobei auf alle in einem beliebigen geeigneten Zeitrahmen referenziert werden kann.
  • Jedes der hierin erläuterten Speicherelemente sollte als in dem breiten Begriff „Speicher‟ eingeschlossen erachtet werden. Auf ähnlich Weise sollten alle der hierin beschriebenen potentiellen Verarbeitungselemente, -module und -maschinen als in dem Breiten Begriff „Mikroprozessor‟ oder „Prozessor‟ eingeschlossen erachtet werden. Darüber hinaus können die Prozessoren, Speicher, Netzwerkkarten, Busse, Speichervorrichtungen, zugehörigen Peripherievorrichtungen und andere hierin beschriebene Hardware-Elemente in mehreren Ausführungsformen durch einen Prozessor, einen Speicher und andere zugehörige Vorrichtungen umgesetzt sein, die durch Software oder Firmware ausgebildet sind, um die Funktionen dieser Hardware-Elemente zu emulieren oder virtualisieren.
  • Außerdem gilt darauf hinzuweisen, dass ein Computer in einer beliebigen aus einer Reihe von Formen ausgeführt sein kann, z. B. als Rackmount-Computer, Desktop-Computer, Laptop-Computer oder Tablet-Computer als nicht einschränkende Beispiele. Darüber hinaus kann ein Computer in eine Vorrichtung eingebettet sein, die im Allgemeinen nicht als Computer erachtet wird, aber geeignete Verarbeitungskapazitäten aufweist, einschließlich einen Personal Digital Assistant (PDA), ein Smartphone, ein Mobiltelefon, ein iPad oder eine beliebige andere geeignete tragbare oder feststehende elektronische Vorrichtung.
  • Außerdem kann ein Computer eine oder mehrere Eingabe- und Ausgabevorrichtungen aufweisen. Diese Vorrichtungen können unter anderem zur Darstellung einer Benutzerschnittstelle verwendet werden. Beispiele für Ausgabevorrichtungen, die verwendet werden können, um eine Benutzerschnittstelle bereitzustellen, schließen Drucker oder Anzeigebildschirme zur visuellen Darstellung einer Ausgabe und Lautsprecher oder andere Ton erzeugende Vorrichtungen für eine hörbare Darstellung einer Ausgabe ein. Beispiele für Eingabevorrichtungen, die für eine Benutzerschnittstelle verwendet werden können, weisen Tastaturen und Zeigevorrichtungen, wie z. B. Mäuse, Touchpads und Digitalisiertabletts, auf. Als weiteres Beispiel kann ein Computer Eingabeinformationen durch Spracherkennung oder andere hörbare Formate empfangen.
  • Solche Computer können durch ein oder mehrere Netzwerke in jeder beliebigen geeigneten Form miteinander verbunden sein, einschließlich eines Nahbereichsnetzwerks oder Weitverkehrsnetzwerks, wie z. B. eines Unternehmensnetzwerks und eines intelligenten Netzwerks (IN) im Internet. Solche Netzwerke können auf einer beliebigen geeigneten Technologie basieren und können gemäß einem beliebigen geeigneten Protokoll arbeiten und drahtlose Netzwerke oder verdrahtete Netzwerke aufweisen.
  • Computerausführbare Befehle können in vielen Formen vorliegen, z. B. als Programmmodule, die von einem oder mehreren Computern oder anderen Vorrichtungen ausgeführt werden. Im Allgemeinen weisen Programmmodule Routinen, Programme, Objekte, Komponenten, Datenstrukturen usw. auf, die bestimmte Aufgaben ausführen oder bestimmte abstrakte Datentypen implementieren. Typischerweise kann die Funktionalität der Programmmodule je nach Wunsch in mehreren Ausführungsformen kombiniert oder verteilt sein.
  • Die Begriffe „Programm“ oder „Software“ werden hierin in einem generischen Sinne verwendet, um sich auf eine beliebige Art von Computercode oder Satz von computerausführbaren Befehlen zu beziehen, die eingesetzt werden können, um einen Computer oder anderen Prozessor zu programmieren, um verschiedene Aspekte wie oben beschrieben zu implementieren. Zusätzlich sollte darauf hingewiesen werden, dass gemäß einem Aspekt ein oder mehrere Computerprogramme, die bei Ausführung Verfahren der vorliegenden Anmeldung ausführen, nicht auf einem einzigen Computer oder Prozessor vorhanden sein müssen, sondern in modularer Form auf eine Reihe von unterschiedlichen Computern oder Prozessoren verteilt sein können, um verschiedene Aspekte der vorliegenden Anmeldung zu implementieren.
  • Außerdem können Datenstrukturen in jeder beliebigen geeigneten Form in computerlesbaren Medien gespeichert werden. Der einfacheren Darstellung halber können Datenstrukturen mit Feldern dargestellt sein, die durch ihre Position in der Datenstruktur zusammenhängen. Solche Beziehungen können ebenso durch Zuordnen von Speicher für die Felder mit Positionen in einem computerlesbaren Medium erreicht werden, die eine Beziehung zwischen den Feldern vermitteln. Es kann jedoch jeder beliebige geeignete Mechanismus verwendet werden, um eine Beziehung zwischen Informationen in Feldern einer Datenstruktur zu erstellen, einschließlich durch die Verwendung von Zeigern, Tags oder anderen Mechanismen, die eine Beziehung zwischen Datenelementen erstellen.
  • Bei einer Implementierung in Software kann der Softwarecode auf jedem/r beliebigen geeigneten Prozessor oder Gruppe von Prozessoren ausgeführt werden, egal ob in einem einzigen Computer bereitgestellt oder über mehrere Computer verteilt.
  • Computerprogrammlogik, die die gesamte oder einen Teil der Funktionalität implementiert, die hierin beschrieben wird, ist in verschiedenen Formen ausgeführt, einschließlich, ohne Einschränkung, einer Quellcodeform, einer computerausführbaren Form, einer Hardwarebeschreibungsform und verschiedener Zwischenformen (z. B. Topographien oder Formen, die durch einen Assembler, Compiler, Linker oder Locator). In einem Beispiel weist ein Quellencode eine Reihe von Computerprogrammbefehlen auf, die in verschiedenen Programmiersprachen implementiert sind, wie beispielsweise einem Objektcode, einer Assemblersprache oder einer höheren Programmiersprache, wie beispielsweise OpenCL, RTL, Verilog, VHDL, Fortran, C, C++, JAVA oder HTML, zur Verwendung mit verschiedenen Betriebssystemen oder Betriebsumgebungen. Der Quellencode kann verschiedene Datenstrukturen und Kommunikationsnachrichten definieren und verwenden. Der Quellencode kann in einer computerausführbaren Form (z. B. über einen Interpreter) vorliegen, oder der Quellencode kann (z. B. durch einen Übersetzer, Assembler oder Compiler) in eine computerausführbare Form umgewandelt sein.
  • In manchen Ausführungsformen kann jede beliebige Anzahl von elektrischen Schaltungen der FIGUREN auf einer Platte einer zugehörigen elektronischen implementiert sein. Die Platte kann eine allgemeine Leiterplatte sein, die verschiedene Komponenten des internen elektronischen Systems der elektronischen Vorrichtung tragen und ferner Anschlüsse für andere Peripheriegeräte bereitstellten kann. Genauer gesagt kann die Platte die elektrischen Anschlüsse bereitstellen, durch die die anderen Komponenten des Systems elektrisch kommunizieren können. Jeder/s beliebige geeignete Prozessor (einschließlich digitaler Signalprozessoren, Mikroprozessoren, unterstützender Chipsätze usw.), Speicherelement usw. kann basierend auf den jeweiligen Konfigurationsanforderungen, Verarbeitungsanforderungen, Computerdesigns usw. auf geeignete Weise mit der Platte gekoppelt sein.
  • Andere Komponenten, wie z. B. externe Speicher, weitere Sensoren, Steuerungen für Audio-/Videoanzeigen und Peripherievorrichtungen können als Steckkarten, über Kabeln verbunden oder in die Platte selbst integriert sein. In einer weiteren beispielhaften Ausführungsform können die elektrischen Schaltungen der FIGUREN als eigenständige Module implementiert sein (z. B. als Vorrichtung mit zugehörigen Komponenten und einer Schaltung, die ausgebildet ist, um eine bestimmte Anwendung oder Funktion auszuführen) oder als Steckmodule in anwendungsspezifischer/n Hardware oder elektronischen Vorrichtungen implementiert sein.
  • Es gilt anzumerken, dass bei den zahlreichen hierin bereitgestellten Beispielen eine Interaktion in Bezug auf zwei, drei, vier, oder mehr elektrische Komponenten beschrieben sein kann. Dies dient jedoch nur der Klarheit und als Beispiel. Es gilt darauf hinzuweisen, dass das System auf jede geeignete Weise konsolidiert werden kann. Gemäß ähnlichen Designalternativen können alle der veranschaulichten Komponenten, Module und Elemente der FIGUREN in verschiedenen möglichen Konfigurationen kombiniert werden, welche allesamt eindeutig innerhalb des allgemeinem Schutzumfangs dieser Offenbarung liegen.
  • In bestimmten Fällen kann es leichter sein, eine oder mehrere der Funktionalitäten eines bestimmten Satzes von Abläufen nur durch Erwähnen einer begrenzten Anzahl von elektrischen Elementen zu beschreiben. Es versteht sich jedoch, dass die elektrischen Schaltungen der FIGUREN und ihre Lehren problemlos skaliert werden können und eine große Anzahl von Komponenten sowie komplexere/höherentwickelte Anordnungen und Konfigurationen unterbringen können. Demgemäß sollten die bereitgestellten Beispiele weder den Schutzumfang einschränken noch verhindern, dass die allgemeinen Lehren der elektrischen Schaltungen potentiell auf eine Vielzahl von anderen Architekturen angewendet werden.
  • Wie beschrieben können auch einige Aspekte als ein oder mehrere Verfahren ausgeführt werden. Die als Teil des Verfahrens ausgeführten Aktionen können in jeder geeigneten Weise geordnet sein. Dementsprechend können Ausführungsformen entwickelt werden, in denen Aktionen in einer anderen Reihenfolge ausgeführt werden als dargestellt, was das gleichzeitige Ausführen einiger Aktionen aufweisen kann, auch wenn sie in veranschaulichenden Ausführungsformen als sequentielle Aktionen dargestellt sind.
  • Interpretation von Begriffen
  • Alle Definitionen wie sie hierin definiert und verwendet werden sind so zu verstehen, dass sie Vorrang gegenüber Definitionen aus Wörterbüchern, Definitionen in durch Verweis aufgenommenen Dokumenten und/oder herkömmlichen Bedeutungen der definierten Begriffe haben. Sofern der Kontext nicht klar anders vorgibt, gilt in der gesamten Beschreibung und in den Ansprüchen:
  • „Aufweisen", „aufweisend“ und dergleichen sind in einschließendem Sinne zu verstehen, im Gegensatz zu einem ausschließenden oder erschöpfenden Sinne; d. h. im Sinne von „einschließend, aber nicht beschränkt auf“.
  • „Verbunden“, „gekoppelt“ oder eine beliebige Variante davon steht für eine beliebige Verbindung oder Kopplung, entweder direkt oder indirekt, zwischen zwei oder mehr Elementen; die Kopplung oder Verbindung zwischen den Elementen kann physisch, logisch oder eine Kombination davon sein.
  • „Hierin“, „vorstehen“, „nachstehend“ und Wörter ähnlicher Bedeutung sollen sich, wenn sie zur Beschreibung dieser Patentschrift verwendet werden, auf diese Patentschrift als Ganzes und nicht auf bestimmte Abschnitte dieser Patentschrift beziehen.
  • „Oder“ in Bezug auf eine Liste von zwei oder mehr Elementen deckt alle folgenden Interpretationen des Worts ab: ein beliebiges der Elemente aus der Liste, alle Elemente aus der Liste und eine beliebige Kombination von Elementen aus der Liste.
  • Die Singularformen „ein/e“ und „der/die/das“ schließt auch die Bedeutung jeder geeigneten Pluralform ein.
  • Wörter, die Richtungen angeben, wie z. B. „vertikal“, „quer“, „horizontal“, „nach oben“ „nach unten“, „vorwärts“, „rückwärts“, „nach innen“, „nach außen“, vertikal" „quer“, „links“, „rechts“, „vorne“, „hinten“, „oben“, „unten“, „unter“, „über“, „darunter“ und dergleichen, die in dieser Beschreibung und in den beiliegenden Ansprüchen (wenn vorhanden) verwendet werden, hängen von der jeweiligen Ausrichtung des beschriebenen und veranschaulichten Geräts ab. Der hierin beschriebene Gegenstand kann verschiede alternative Ausrichtungen aufweisen. Dementsprechend sind diese Richtungsbezeichnungen nicht streng definiert und sollten nicht eng interpretiert werden.
  • Die unbestimmten Artikel „ein“ und „eine“, wie sie hierin in der Beschreibung und in den Ansprüchen verwendet werden, sind, sofern nicht explizit gegenteilig angegeben, als „zumindest eine(s)“ zu verstehen.
  • Der Ausdruck „und/oder“ wie er in der Patentschrift und in den Ansprüchen verwendet wird, sollte in der Bedeutung „eines oder beide“ der so verbundenen Elemente verstanden werden, d. h. der Elemente, die in manchen Fällen gemeinsam vorhanden sind und in anderen Fällen getrennt. Mehrere Elemente, die mit „und/oder“ aufgelistet sind, sind auf die gleiche Weise zu verstehen, d. h. „eines odermehrere“ der so verbundenen Elemente.
  • Andere Elemente als spezifisch durch den Ausdruck „und/oder“ verbunden können gegebenenfalls vorhanden sein, entweder in Zusammenhang mit den spezifisch identifizierten Elementen oder nicht. Als nicht einschränkendes Beispiel kann sich somit ein Verweis auf „A und/oder B“ bei Verwendung mit offenen Ausdrücken wie „aufweisend“ in einer Ausführungsform nur auf A (gegebenenfalls andere Elemente als B einschließend); in einer andere Ausführungsform nur auf B (gegebenenfalls andere Elemente als A einschließend); und in einer weiteren Ausführungsform auf sowohl A als auch B (gegebenenfalls andere Elemente einschließend) beziehen; usw.
  • Wie hierin in der Patentschrift und in den Ansprüchen verwendet ist der Ausdruck „zumindest ein“ in Bezug auf eine Liste von einem oder mehreren Elementen in der Bedeutung von zumindest einem Element, das aus einem oder mehreren Elementen aus der Liste von Elementen ausgewählt ist, zu verstehen, aber nicht notwendigerweise zumindest eines von jedem einzelnen Element in der Liste von Elementen einschließend und keine Kombination von Elementen aus der Liste von Elementen ausschließend. Diese Definition ermöglicht auch, dass gegebenenfalls andere Elemente vorhanden sind als spezifisch in der Liste von Elementen identifiziert, auf die sich der Ausdruck „zumindest ein“ bezieht, entweder in Zusammenhang mit den spezifisch identifizierten Elementen oder nicht.
  • Als nicht einschränkendes Beispiel kann sich somit „zumindest eines aus A und B“ (oder gleichbedeutend „zumindest eines aus A oder B“ oder gleichbedeutend „zumindest eines aus A und/oder B“) in einer Ausführungsform auf zumindest ein, gegebenenfalls mehr als ein, A beziehen, wobei kein B vorhanden ist (und gegebenenfalls andere Elemente als B einschlossen sind); in einer andere Ausführungsform auf zumindest ein, gegebenenfalls mehr als ein, B, wobei kein A vorhanden ist (und gegebenenfalls andere Elemente als A eingeschlossen sind); in einer weiteren Ausführungsform auf zumindest ein, gegebenenfalls mehr als ein, A und zumindest ein, gegebenenfalls mehr als ein, B (wobei gegebenenfalls andere Elemente ausgeschlossen sind); usw.
  • Wie hierin verwendet sollt der Begriff „zwischen“ einschließend sein, sofern nicht anderes angegeben ist. Beispielsweise schließt „zwischen A und B“ A und B ein, sofern nicht anders angegeben ist.
  • Außerdem dienen die hierin verwendete(n) Ausdrücke und Terminologie zur Beschreibung und sollten nicht als einschränkend erachtet werden. Die Verwendung von „einschließend“, „aufweisend“ oder „habend“, „enthaltend“, „involvierend“ und Variationen davon sind hierin so zu verstehen, dass sie die danach aufgelisteten Elemente und Äquivalente davon sowie weitere Elemente aufweisen.
  • In den Ansprüchen sowie in der vorstehenden Patentschrift sind alle Übergangsausdrücke wie „umfassend“, „aufweisend“, „tragend“, „habend“, „enthaltend“, „involvierend“, „haltend“, „zusammengesetzt aus“ und dergleichen als offen zu verstehen, d. h. als einschließlich, aber nicht eingeschränkt auf. Nur die Übergangsausdrücke „bestehend aus“ und „im Wesentlichen bestehend aus“ sollen geschlossene bzw. halbgeschlossene Ausdrücke sein.
  • Zahlreiche andere Änderungen, Ersetzungen, Variationen, Anpassungen und Modifikationen können von einem Fachmann ermittelt werden, und es vorgesehen, dass die vorliegende Offenbarung alle solchen Änderungen, Ersetzungen, Variationen, Anpassungen und Modifikationen als in den Schutzumfang der beiliegenden Ansprüche fallend erfasst.
  • Um das US-amerikanische Patent- und Markenamt (USPTO) und Leser von basierend auf dieser Anmeldung herausgegebenen Patenten bei der Interpretation der beiliegenden Ansprüche zu unterstützen, möchte die Anmelderin anmerken, dass die Anmelderin: (a) nicht beabsichtigt, sich in einem der beiliegenden Ansprüche auf 35 U.S.C. § 1 1 2(f) in der zum Datum der Einreichung hiervon geltenden Fassung zu berufen, außer die Wörter „Mittel für“ oder „Schritte für“ werden spezifisch in den jeweiligen Ansprüchen verwendet; und (b) nicht beabsichtigt, diese Offenbarung durch irgendeine Aussage in der Offenbarung auf irgendeine Weise einzuschränken, die nicht in den beiliegenden Ansprüchen wiedergegeben ist.
  • Die vorliegende Erfindung sollte daher nicht als auf die oben beschriebenen speziellen Ausführungsformen eingeschränkt erachtet werden. Verschiedene Modifikationen, äquivalente Prozesse sowie zahlreiche Strukturen, auf welche die vorliegende Erfindung anwendbar sein könnte, werden für Fachleute auf dem Gebiet, zu dem die vorliegende Erfindung gehört, bei Durchsicht der vorliegenden Offenbarung offensichtlich sein.

Claims (20)

  1. Verfahren zur Knotenerkennung und -konfiguration in einem Daisy-Chain-Netzwerk, aufweisend eine Vielzahl von Knoten, das Folgendes aufweist: Bestimmen, dass zumindest ein neuer Subknoten zu der Vielzahl von Knoten hinzugefügt wurde; Erkennen des zumindest einen neuen Subknotens; Lesen von Modulinformationen für den zumindest einen neuen Subknoten; Konfigurieren des zumindest einen neuen Subknotens; Konfigurieren eines Systems, aufweisend ein Daisy-Chain-Netzwerk, basierend auf Informationen von jedem aus der Vielzahl von Knoten; und periodisches Einleiten eines Erkennungsversuchs, wobei der Erkennungsversuch das Bestimmen aufweist, ob zumindest ein neuerer Subknoten zu dem Daisy-Chain-Netzwerk hinzugefügt wurde.
  2. Verfahren nach Anspruch 1, wobei das Bestimmen, dass zumindest ein neuer Subknoten zu der Vielzahl von Knoten hinzugefügt wurde, ferner eine Bus-Selbsterkennung aufweist, wobei eine Hoststeuerung die Vielzahl von Knoten, die in dem Netzwerk vorhanden sind, abfragt.
  3. Verfahren nach Anspruch 2, wobei die Bus-Selbsterkennung bei Systemstart erfolgt.
  4. Verfahren nach Anspruch 2, wobei die Bus-Selbsterkennung das Bestimmen einer Anzahl von Knoten in der Vielzahl von Knoten aufweist.
  5. Verfahren nach Anspruch 1, wobei die Vielzahl von Knoten eine erste Vielzahl von Knoten ist und das Verfahren ferner Folgendes aufweist: Detektieren einer Trennung eines aktuellen Knotens von der ersten Vielzahl von Knoten, und Rekonfigurieren des Systems basierend auf Informationen von jedem aus einer zweiten Vielzahl von Knoten, wobei die zweite Vielzahl von Knoten verbundene Knoten aus der ersten Vielzahl von Knoten aufweist.
  6. Verfahren nach Anspruch 1, ferner aufweisend das Detektieren einer Rekonfiguration eines ersten Subknotens aus der Vielzahl von Knoten.
  7. Verfahren nach Anspruch 6, ferner aufweisend: Lesen von Modulinformationen für den ersten Subknoten; Konfigurieren des ersten Subknotens; und Rekonfigurieren des Systems basierend auf Informationen von jedem aus der Vielzahl von Knoten.
  8. Verfahren nach Anspruch 1, wobei die Vielzahl von Knoten eine erste Vielzahl von Knoten ist, wobei die erste Vielzahl von Knoten plus der zumindest eine neuere Subknoten eine zweite Vielzahl von Knoten sind, und ferner aufweisend, wenn der zumindest eine neuere Subknoten hinzugeführt wurde: Lesen von Modulinformationen für den zumindest einen neueren Subknoten; Konfigurieren des zumindest einen neueren Subknotens; und Rekonfigurieren des Systems basierend auf Informationen von jedem aus der zweiten Vielzahl von Knoten.
  9. System zur Knotenerkennung und -konfiguration, aufweisend: ein Daisy-Chain-Netzwerk aus Knoten, das eine Vielzahl von Knoten aufweist; einen Host, der konfiguriert ist, um: zumindest einen neuen Subknoten zu erkennen, der zu der Vielzahl von Knoten hinzugefügt wurde; Modulinformationen für den zumindest einen neuen Subknoten zu lesen; den zumindest einen neuen Subknoten zu konfigurieren; das System, aufweisend das Daisy-Chain-Netzwerk, basierend auf Informationen von jedem aus der Vielzahl von Knoten zu konfigurieren; und periodisch einen Erkennungsversuch einzuleiten, wobei der Erkennungsversuch das Bestimmen aufweist, ob zumindest ein neuerer Subknoten zu dem Daisy-Chain-Netzwerk hinzugefügt wurde.
  10. System nach Anspruch 9, wobei der zumindest eine neue Subknoten einen Speicher aufweist, und der Speicher die Modulinformationen aufweist.
  11. System nach Anspruch 10, wobei der Host ausgebildet ist, um die Modulinformationen zur Auffindung von gespeichertem Code zu nutzen, um den zumindest einen neuen Subknoten zu konfigurieren.
  12. System nach Anspruch 10, wobei die Modulinformationen zumindest eines aus Anbieterinformationen, Produktinformationen, Versionsinformationen, Modellinformationen, Funktionalitätsinformationen, Seriennummer, Herstellungsinformationen, Konfigurationsinformationen, Routing-Informationen, Authentifizierungsinformationen und Kalibrierungskoeffizienten aufweist.
  13. System nach Anspruch 9, wobei der Host ferner ausgebildet ist, um ein Zugriffsverfahren für die Modulinformationen zu bestimmen.
  14. System nach Anspruch 9, ferner aufweisend eine Vielzahl von Slots und wobei der Host ferner konfiguriert ist, um zumindest einen aus der Vielzahl von Slots jeweils einem aus der Vielzahl von Subknoten zuzuordnen.
  15. Verfahren zum Auffinden von Konfigurationsinformationen für einen Subknoten in einem Daisy-Chain-Netzwerk, aufweisend: Bestimmen eines Modulinformationen-Zugriffsverfahrens; Lesen eines Modulidentifikators; Bestimmen, ob der Modulidentifikator mit einem erwarteten Wert übereinstimmt; Lesen von Modulinformationen über das Zugriffsverfahren; Bestimmen von Registereinstellungen für den Subknoten basierend auf den Modulinformationen; Anwenden von Registereinstellungen auf den Subknoten; und Zuordnen von zumindest einem Slot zu dem Knoten.
  16. Verfahren nach Anspruch 15, ferner aufweisend das Schreiben von Subknoteninformationen zu einem Hauptknoten.
  17. Verfahren nach Anspruch 15, wobei das Lesen von Modulinformationen das Lesen von zumindest einem aus Versionsinformationen, Anbieterinformationen, Produktinformationen, Funktionalitätsinformationen, Seriennummer, Herstellungsinformationen, Modellinformationen, Konfigurationsinformationen, Routing-Informationen, Authentifizierungsinformationen und Kalibrierungskoeffizienten aufweist.
  18. Verfahren nach Anspruch 15, ferner aufweisend das Anwenden von Subknoten-Peripherieregistereinstellungen auf zumindest eine Subknoten-Peripherievorrichtung.
  19. Verfahren nach Anspruch 15, ferner aufweisend das Bestimmen, ob ein zusätzlicher Subknoten vorhanden ist, und das Konfigurieren des zusätzlichen Subknotens.
  20. Verfahren nach Anspruch 15, ferner aufweisend das Zuordnen eines Audiokanals zu dem Subknoten und das Kommunizieren der Audiokanalzuordnung gegenüber einem Hauptknoten.
DE112021005545.3T 2020-10-21 2021-10-20 Knotenerkennung und -konfiguration in einem daisy-chain-netzwerk Pending DE112021005545T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063094720P 2020-10-21 2020-10-21
US63/094,720 2020-10-21
PCT/US2021/055763 WO2022087076A1 (en) 2020-10-21 2021-10-20 Node discovery and configuration in a daisy-chained network

Publications (1)

Publication Number Publication Date
DE112021005545T5 true DE112021005545T5 (de) 2023-09-14

Family

ID=81289418

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112021005545.3T Pending DE112021005545T5 (de) 2020-10-21 2021-10-20 Knotenerkennung und -konfiguration in einem daisy-chain-netzwerk

Country Status (4)

Country Link
US (1) US20230396504A1 (de)
CN (1) CN116529720A (de)
DE (1) DE112021005545T5 (de)
WO (1) WO2022087076A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230305859A1 (en) * 2022-03-24 2023-09-28 Lenovo Global Technology (United States) Inc. Automatic systems devices rediscovery
CN116827717B (zh) * 2023-08-25 2024-01-02 深圳市汇顶科技股份有限公司 一种数据转发方法、芯片和电子设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6665742B2 (en) * 2001-01-31 2003-12-16 Advanced Micro Devices, Inc. System for reconfiguring a first device and/or a second device to use a maximum compatible communication parameters based on transmitting a communication to the first and second devices of a point-to-point link
US9344333B2 (en) * 2014-05-05 2016-05-17 Alcatel Lucent Automating network build-out in self building networks
CN106507260A (zh) * 2015-09-04 2017-03-15 音乐集团公司 用于控制扩音器系统的功耗的方法
US10887192B2 (en) * 2018-08-03 2021-01-05 Red Hat, Inc. Targeted network discovery and visualizations

Also Published As

Publication number Publication date
WO2022087076A1 (en) 2022-04-28
US20230396504A1 (en) 2023-12-07
CN116529720A (zh) 2023-08-01

Similar Documents

Publication Publication Date Title
JP6800317B2 (ja) リモートバスイネーブルのためのシステムおよび技法
DE112021005545T5 (de) Knotenerkennung und -konfiguration in einem daisy-chain-netzwerk
DE102019135220A1 (de) Kommunikationssysteme mit Hilfs-Master- und Hilfs-Anrufunterstützungs-Funktionalität
DE112010002783T5 (de) Mechanismus für Taktsynchronisation
DE112017006557T5 (de) Bimodale phy für geringe latenz in hochgeschwindigkeitsverbindungswegen
DE112017006523T5 (de) Retimer mit kurzer latenzzeit
CN105556421B (zh) 使用动态存储i/o调整大小来节约存储功率的系统和方法
DE102018128569A1 (de) Nebensprecherzeugung in einem link für mehrere spuren während des spurtestens
US20210211156A1 (en) Audio and lighting control via a communication bus
DE102020110675A1 (de) Kommunikationssysteme mit funktionalität einer seriellen peripherie-schnittstelle
DE112013007726T5 (de) Verbesserungen eines Zwischenverbindungs-Retimers
DE112015006944T5 (de) Erweiterung einer Mehrchipbaugruppenverbindung außerhalb der Baugruppe
CN104509022A (zh) 多格式数字音频接口
CN104541473A (zh) 基于概率方法的用于保证多格式音频系统中的锁定的通用同步引擎
DE102006029742A1 (de) Halbleiterspeichersystem
DE112013005104T5 (de) Hochleistungsverdrahtungs-Bitübertragungsschicht
CN105900080A (zh) 用于经由芯片内和芯片间跳跃总线在片上系统之内和之间传送信息的方法和装置
DE112020003973T5 (de) Ethernet-schnittstelle und zugehörige systeme, verfahren und vorrichtungen
DE102015214915A9 (de) Flexibles Planungsverfahren und Vorrichtung in LIN-Kommunikation
DE112017004963T5 (de) Spannunsgmodulierte steuer-lane
CN105027019A (zh) 用于usb系统内的音频取样率转换器的弹性计时
DE102015117673B4 (de) Diagnose und steuerung von peripherie-vorrichtungen über einen zweidraht-kommunikationsbus
CN108319441B (zh) 音频播放的控制方法、装置、系统、处理器及存储介质
DE102020113964A1 (de) Elektronische peripheriegeräte mit synchronisiertenenergiemodi
DE102019120357A1 (de) Dynamische asymmetrische kommunikationspfadzuteilung

Legal Events

Date Code Title Description
R012 Request for examination validly filed