DE102016101129A1 - Walsh-Kodierung für eine PSI-5-Schnittstelle - Google Patents

Walsh-Kodierung für eine PSI-5-Schnittstelle Download PDF

Info

Publication number
DE102016101129A1
DE102016101129A1 DE102016101129.0A DE102016101129A DE102016101129A1 DE 102016101129 A1 DE102016101129 A1 DE 102016101129A1 DE 102016101129 A DE102016101129 A DE 102016101129A DE 102016101129 A1 DE102016101129 A1 DE 102016101129A1
Authority
DE
Germany
Prior art keywords
sensor
data
current
column
matrix
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.)
Granted
Application number
DE102016101129.0A
Other languages
English (en)
Other versions
DE102016101129B4 (de
Inventor
David Levy
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
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 Infineon Technologies AG filed Critical Infineon Technologies AG
Publication of DE102016101129A1 publication Critical patent/DE102016101129A1/de
Application granted granted Critical
Publication of DE102016101129B4 publication Critical patent/DE102016101129B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M5/00Conversion of the form of the representation of individual digits
    • H03M5/02Conversion to or from representation by pulses
    • H03M5/04Conversion to or from representation by pulses the pulses having two levels
    • H03M5/14Code representation, e.g. transition, for a given bit cell depending on the information in one or more adjacent bit cells, e.g. delay modulation code, double density code
    • H03M5/145Conversion to or from block codes or representations thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/69Spread spectrum techniques
    • H04B1/707Spread spectrum techniques using direct sequence modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/0007Code type
    • H04J13/004Orthogonal
    • H04J13/0048Walsh

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computational Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Computing Systems (AREA)

Abstract

Ein Sensor kann Daten unter Verwendung eines ersten Kodierschemas kodieren. Das erste Kodierschema kann Kodieren eines Datenbits, das in den Daten enthalten ist, unter Verwendung einer ersten Chipabfolge umfassen, die einem ersten Satz von Stromwerten entspricht. Ein zweites Kodierschema kann von einem anderen Sensor verwendet werden, um andere Daten zu kodieren. Das zweite Kodierschema kann Kodieren eines Datenbits, das in den anderen Daten enthalten ist, unter Verwendung einer zweiten Chipabfolge umfassen, die einem zweiten Satz von Stromwerten entspricht. Die erste Chipabfolge und die zweite Chipabfolge sind unterschiedliche Chipabfolgen. Der Sensor kann einen Strom basierend auf dem ersten Satz von Stromwerten modulieren, um die kodierten Daten bereitzustellen.

Description

  • Hintergrund
  • Eine periphere Sensorschnittstelle 5 (PSI5) ist eine digitale Schnittstelle für Sensoren. PSI5 ist eine Zweidrahtschnittstelle, die zum Anschluss von peripheren Sensoren an elektronische Steuereinheiten (z.B. in Automobilelektronik) eingesetzt wird. Von PSI5 unterstützt werden Punkt-zu-Punkt- und Buskonfigurationen mit asynchroner oder synchroner Datenübertragung.
  • Es ist eine Aufgabe, eine Möglichkeit bereitzustellen, dass in derartigen Systemen kürzere Abstände zwischen Zeitschlitzen bei einem Zeitmultiplexen zwischen verschiedenen Sensoren ermöglicht werden.
  • Kurzdarstellung
  • Es werden ein Sensor nach Anspruch 1, eine Steuereinheit nach Anspruch 8 sowie ein Verfahren nach Anspruch 15 bereitgestellt. Die Unteransprüche definieren weitere Ausführungsformen. Zudem kann ein System mit dem Sensor und dem anderen Sensor der Ansprüche 1–7 bzw. mit der Steuereinheit nach einem der Ansprüche 8–14 und entsprechenden Sensor(en) bereitgestellt werden.
  • Gemäß einigen möglichen Implementierungen kann ein Sensor eine oder mehrere Komponenten umfassen, um: Daten unter Verwendung eines ersten Kodierschemas zu kodieren, wobei das erste Kodierschema Kodieren eines Datenbits, das in den Daten enthalten ist, unter Verwendung einer ersten Chipabfolge umfassen kann, die einem ersten Satz von Strompegeln entsprechen kann, wobei ein zweites Kodierschema von einem anderen Sensor verwendet wird, um andere Daten zu kodieren, wobei das zweite Kodierschema Kodieren eines Datenbits, das in den anderen Daten enthalten ist, unter Verwendung einer zweiten Chipabfolge umfassen kann, die einem zweiten Satz von Strompegeln entsprechen kann, und wobei die erste Chipabfolge und die zweite Chipabfolge unterschiedliche Chipabfolgen sein können; und einen Strom basierend auf dem ersten Satz von Strompegeln zu modulieren, um die kodierten Daten bereitzustellen.
  • Eine Chipabfolge kann dabei eine Abfolge von Werten sein, wobei Zeitabschnitte, während denen die einzelnen Werte vorliegen, und/oder die Werte als Chips bezeichnet werden können, die eine Chiplänge (Chipdauer) aufweisen.
  • Gemäß einigen möglichen Implementierungen kann eine Steuereinheit einen Empfänger umfassen, um: von einem Sensor bereitgestellte kodierte Daten zu empfangen, wobei die kodierten Daten vom Sensor basierend auf einem Kodierschema kodiert worden sein können, das einem Abschnitt einer Hadamard-Matrix zugeordnet ist; und die kodierten Daten unter Verwendung des Abschnitts der Hadamard-Matrix zu dekodieren.
  • Gemäß einigen möglichen Implementierungen kann ein Verfahren umfassen: Kodieren von ersten Daten durch einen ersten Sensor unter Verwendung eines ersten Kodierschemas, wobei das erste Kodierschema Kodieren eines Datenbits, das in den ersten Daten enthalten ist, basierend auf einer ersten Chipabfolge umfassen kann, die einem ersten Satz von Strompegeln entspricht; Kodieren von zweiten Daten durch einen zweiten Sensor unter Verwendung eines zweiten Kodierschemas, wobei das zweite Kodierschema Kodieren eines Datenbits, das in den zweiten Daten enthalten ist, basierend auf einer Chipabfolge umfassen kann, die einem zweiten Satz von Strompegeln entspricht, und wobei die ersten Chipabfolge anders als die zweite Chipabfolge sein kann; und Dekodieren der kodierten ersten Daten durch eine Steuereinheit basierend auf dem ersten Kodierschema und der kodierten zweiten Daten basierend auf dem zweiten Kodierschema.
  • Kurze Beschreibung der Zeichnungen
  • 1A und 1B sind Darstellungen eines Überblicks über eine beispielhafte Implementierung, wie sie hierin beschrieben ist;
  • 2 ist eine Darstellung einer beispielhaften Umgebung, in der hierin beschriebene Systeme und/oder Verfahren implementiert sein können;
  • 3A ist eine Darstellung von beispielhaften Komponenten eines Sensors, der in der beispielhaften Umgebung aus 2 enthalten ist;
  • 3B und 3C zeigen Beispiele einer Weise, in der ein Strom moduliert werden kann, um Daten darzustellen, die unter Verwendung einer Walsh-Matrix erster Ordnung bzw. einer Walsh-Matrix zweiter Ordnung kodiert sind;
  • 4 ist eine Darstellung von beispielhaften Komponenten einer elektronischen Steuereinheit, die in der beispielhaften Umgebung aus 2 enthalten ist;
  • 5A und 5B sind Darstellungen, die ein Beispiel für eine Walsh-Kodierung und -Dekodierung unter Verwendung einer Walsh-Matrix erster Ordnung für PSI5 zeigen;
  • 6A6C sind Darstellungen, die ein Beispiel für eine Walsh-Kodierung und -Dekodierung unter Verwendung einer Walsh-Matrix zweiter Ordnung für PSI5 zeigen; und
  • 7 ist ein Flussdiagramm eines beispielhaften Prozesses zum Dekodieren von kodierten ersten Daten basierend auf einem ersten Kodierschema und Dekodieren von zweiten kodierten Daten basierend auf einem zweiten Kodierschema.
  • Ausführliche Beschreibung
  • Die folgende ausführliche Beschreibung von beispielhaften Implementierungen nimmt Bezug auf die beiliegenden Zeichnungen. Gleiche Bezugszahlen in unterschiedlichen Zeichnungen können gleiche oder ähnliche Elemente bezeichnen.
  • PSI5 kann es einem Sensor ermöglichen, Daten (z.B. einen oder mehrere Bits) einer elektronischen Steuereinheit (ECU) bereitzustellen. Herkömmlicherweise wird Manchester-Kodierung für PSI5 verwendet. Unter Verwendung von Manchester-Kodierung kann der Sensor Daten (die z.B. vom Sensor erfasst werden) durch Modulieren eines Stroms übertragen, der durch die ECU detektierbar ist. Die ECU kann Übergänge zwischen Strompegeln des Stroms erfassen und die Daten basierend auf den Übergängen dekodieren. Beispielsweise kann die ECU basierend auf der Manchester-Kodierung ein erstes Bit als 0 dekodieren, wenn die ECU einen Übergang von einem ersten Strompegel (z.B. einem Leerlaufstrompegel) zu einem zweiten Strompegel (z.B. einen Delta-Strompegel) während eines Zeitraums erfasst, der dem ersten Bit zugeordnet ist. Als weiteres Beispiel kann die ECU ein zweites Bit als 1 dekodieren, wenn die ECU einen Übergang vom zweiten Strompegel zum ersten Strompegel während eines Zeitraums erfasst, der dem zweiten Bit zugeordnet ist.
  • In einigen Fällen können mehrere Sensoren Manchester-kodierten Daten unter Verwendung einer Zeitmultiplex-(TDMA)Technik übertragen. Beispielsweise kann ein erster Sensor konfiguriert sein, um entsprechende Manchester-kodierte Daten während eines Zeitraums bereitzustellen, der einem ersten Zeitschlitz entspricht, und ein zweiter Sensor kann konfiguriert sein, um Manchester-kodierte Daten während eines Zeitraums bereitzustellen, der einem zweiten Zeitschlitz (z.B. einem Zeitschlitz, der direkt auf den ersten Zeitschlitz folgt) entspricht usw. Die ECU kann dann die Daten für jeden Sensor gemäß dem Zeitschlitz dekodieren, in dem die Manchester-kodierten Daten übertragen wurden.
  • Bei Verwendung von Manchester-Kodierung für PSI5 kann jedoch ein großer Zeitschlitzabstand (im Folgenden als Zeitschlitzspielraum bezeichnet) erforderlich sein, was zu einer begrenzten Datendurchsatzmenge führt. Beispielsweise kann aufgrund einer Anhäufung von Taktungenauigkeiten in Verbindung mit jedem Sensor die Verwendung von Manchester-Kodierung für PSI5 (in der oben beschriebenen Weise) einen zunehmend breiteren Zeitschlitzspielraum erfordern (z.B. als Zeitdauer zwischen einer Übertragung durch einen ersten Sensor und einer Übertragung durch einen zweiten Sensor), um Kollisionen von Manchester-kodierten Daten zu verhindern, die von der ECU empfangen werden. Der Zeitschlitzspielraum kann zunehmen, wenn eine Zeitschlitzdauer (z.B. ein Zeitfenster, in dem ein Sensor einen Bitrahmen übertragen kann) pro Rahmen zunehmend länger wird als eine Rahmendauer (z.B. eine Zeitdauer, die notwendig ist, um den Bitrahmen zu übertragen), die den Sensoren zugeordnet ist.
  • Beispielsweise ermöglicht ein PSI5-Standard P10P-500-3L drei Zeitschlitze von 13 Bit pro Rahmen und Übertragungen mit 125 Kilobit pro Sekunde (kbps). Daher kann die Rahmendauer jedes Rahmens etwa 104 µs betragen (z.B. 13 bit/125 kbps = 104 µs). Dier Zeitschlitzdauer kann jedoch zunehmen, um sich anhäufende Taktungenauigkeiten von Sensoren zu berücksichtigen, die während jedes Zeitschlitzes übertragen, auch bei einer strengen Taktgenauigkeitsanforderung (z.B. ±5%). Eine Zeitschlitzdauer zum Übertragen eines Rahmens während des ersten Zeitschlitzes kann beispielsweise etwa 137,3 µs betragen, eine Zeitschlitzdauer zum Übertragen eines Rahmens während des zweiten Zeitschlitzes kann etwa 149,7 µs betragen und eine Zeitschlitzdauer zum Übertragen eines Rahmes während des dritten Zeitschlitzes kann etwa 163 µs betragen. Daher kann der Zeitschlitzspielraum bei Verwendung von Manchester-Kodierung für einen PSI5-Standard P10P-500-3L relativ breit sein, was zu einem begrenzten Sensordurchsatz führen kann.
  • Darüber hinaus kann die Verwendung von Manchester-Kodierung für PSI5 die Durchsatzmenge, die erreicht werden kann, von Natur aus begrenzen (z.B. aufgrund der Verwendung der oben beschriebenen TDMA-Technik), auch bei optimalen Bedingungen (z.B. optimaler Taktgenauigkeit, optimalem Zeitschlitzspielraum, optimaler Rahmendauer usw.). Die Verwendung der TDMA-Technik für einen PSI5-Standard P10P-500-3L kann beispielsweise die Durchsatzmenge eines gegebenen Sensors bei optimalen Bedingungen auf 26 kbps begrenzen (z.B. 13 bit/500 µs = 26 kbps). Es gilt anzumerken, dass die Verwendung von drei Strompegeln, die gemäß den Standards der Distributed System Interface Version 3 (DSI3) kodieren, einen Durchsatz von 40 kbps ermöglichen kann (z.B. 20 bit/500 µs = 40 kbps). Die Verwendung einer solchen Dreiebenenkodierung kann jedoch aufgrund von Kodier- und/oder Dekodierkomplexizitäten (z.B. in Verbindung mit der Dreiebenenkodierung) und verringerter Robustheit, die aus der Verwendung von DSI3 resultiert, unerwünscht sein.
  • Hierin beschriebene Implementierungen können Walsh-Kodierung zum Übertragen von Sensordaten unter Verwendung von PSI5 verwenden (z.B. eher als die Verwendung von Manchester-Kodierung). Walsh-Kodierung kann eine erhöhte Durchsatzmenge und/oder weniger strenge Taktgenauigkeitsanforderungen als bei der Verwendung von Manchester-Kodierung für PSI5 ermöglichen. Darüber hinaus kann die Verwendung von Walsh-Kodierung für PSI5 die Implementierung eine Codemultiplex-(CDMA) Technik zur Strommodulation ermöglichen.
  • 1A und 1B sind Darstellungen eines Überblicks über eine beispielhafte Implementierung 100, wie sie hierin beschrieben ist. 1A zeigt einen Überblick über ein Beispiel in Verbindung mit Kodieren und Dekodieren von Daten unter Verwendung einer Walsh-Matrix erster Ordnung für PSI5. Zum Zwecke von 1A wird davon ausgegangen, dass eine Gruppe von Sensoren (z.B. Sensor 0 bis Sensor N) mit einer ECU verbunden ist, sodass die Gruppe von Sensoren Daten unter Verwendung von PSI5 übertragen kann. Ferner wird davon ausgegangen, dass Sensor 0 konfiguriert ist, um Daten während eines ersten Zeitschlitzes (z.B. Schlitz 0) zu übertragen, Sensor 1 konfiguriert ist, Daten während eines zweiten Zeitschlitzes (z.B. Schlitz 1) zu übertragen, Sensor N – 1 konfiguriert ist, Daten während eines Zeitschlitzes direkt vor einem N-ten Zeitschlitz (z.B. Schlitz N – 1) zu übertragen, und Sensor N konfiguriert ist, Daten während des N-ten Zeitschlitzes (z.B. Schlitz N) zu übertragen.
  • Wie in 1A dargestellt kann die Gruppe von Sensoren konfiguriert sein, um alternierend Daten unter Verwendung von Spalten einer Walsh-Matrix erster Ordnung (z.B. W(21)) zu kodieren. Wie dargestellt (wobei N eine ungerade Zahl ist) kann Sensor 0 beispielsweise konfiguriert sein, um Daten basierend auf einer ersten Spalte der Walsh-Matrix erster Ordnung (z.B. (1 1)t) zu kodieren, Sensor 1 kann konfiguriert sein, um Daten unter Verwendung einer zweiten Spalte der Walsh-Matrix erster Ordnung (z.B. (1 –1)t) zu kodieren, Sensor N – 1 kann konfiguriert sein, um Daten unter Verwendung der ersten Spalte der Walsh-Matrix erster Ordnung (z.B. (1 1)t) zu kodieren, und Sensor N kann konfiguriert sein, um Daten unter Verwendung der zweiten Spalte der Walsh-Matrix erster Ordnung (z.B. (1 –1)t) zu kodieren. Mit anderen Worten kann jeder Sensor konfiguriert sein, um Daten unter Verwendung einer einzigen Spalte der Walsh-Matrix erster Ordnung so zu kodieren, dass ein Zeitschlitz, der direkt vor dem Zeitschlitz liegt, in dem der Sensor übertragen soll, und ein Zeitschlitz, der direkt nach dem Zeitschlitz liegt, in dem der Sensor übertragen soll, Daten umfassen, die unter Verwendung der anderen Spalte der Walsh-Matrix erster Ordnung kodiert sind. Hier kann aufgrund der Verwendung von Walsh-Kodierung unter Verwendung einer Walsh-Matrix erster Ordnung einen Zeitschlitzspielraum (z.B. eine Zeitdauer zwischen einer Übertragung in einem Zeitschlitz und einer Übertragung in einem nachfolgenden Zeitschlitz) verringert sein (z.B. auf null, weniger als null usw.) und Kollisionen (z.B. eine Überlappung von einer Übertragung im Zeitschlitz und der Übertragung im nachfolgenden Zeitschlitz) können von der ECU gelöst werden.
  • Wie dargestellt kann Sensor 0 beispielsweise Sensor-0-Daten unter Verwendung der ersten Spalte der Walsh-Matrix erster Ordnung kodieren und Sensor 1 kann Sensor-1-Daten unter Verwendung der zweiten Spalte der Walsh-Matrix erster Ordnung kodieren. Wenn die erste Spalte der Walsh-Kodierung erster Ordnung verwendet wird, kann, da die erste Spalte der Walsh-Matrix erster Ordnung (1 1)t ist, ein Datenbit 1 mit Strompegeln kodiert und übertragen werden, sodass beide Chips des Datenbits auf einem Strompegel 1 (IDelta) sind, während ein Datenbit 0 mit umgekehrten Strompegeln kodiert und übertragen werden (d.h. sodass Strompegel für beide Chips des Datenbits auf einem Strompegel 0 sind (ILeerlauf)). Wenn die zweite Spalte der Walsh-Kodierung erster Ordnung verwendet wird, kann, da die zweite Spalte der Walsh-Matrix erster Ordnung (1 –1)t ist, ein Datenbit 1 für einen ersten Chip des Datenbits mit einem Strompegel 1 (IDelta) und für einen zweiten Chip des Datenbits mit einem Strompegel –1 (ILeerlauf) kodiert und übertragen werden. Mit anderen Worten kann die Abfolge von Chips, die übertragene Datenbits 1 darstellt, den Abfolgen 1s und –1s der entsprechenden Spalte der Walsh-Matrix entsprechen, die zum Kodieren des Datenbits verwendet wird, und die Abfolge von Chips, die ein übertragenes Datenbit 0 darstellt, kann das Umgekehrte des übertragenen Datenbits 1 sein. Wenn der Sensor keinerlei Daten überträgt, kann der Sensor den neutralen Strompegel bereitstellen (und nicht die beiden Strompegel IDelta oder ILeerlauf, die zum Darstellen von Datenbits 0 und 1 verwendet werden).
  • Wie dargestellt kann Sensor 0 die kodierten Sensor-0-Daten in Schlitz 0 übertragen (z.B. durch Modulieren eines Stroms, der durch die ECU erfassbar ist). Es sei jedoch angenommen, dass (z.B. aufgrund einer Taktungenauigkeit eines Sensor-1-Taktgebers) Sensor 1 beginnt, kodierte Sensor-1-Daten (z.B. durch Modulieren des Stroms, der durch die ECU erfassbar ist) zu übertragen, bevor Sensor 0 die Übertragung der kodierten Sensor-0-Daten beendet (sodass z.B. die ECU eine Zeitlang gleichzeitig Strompegel erfasst, die einem Teil der kodierten Sensor-0-Daten entsprechen, und solche, die einem Teil der kodierten Sensor-1-Daten entsprechen). Hier kann die ECU aufgrund der Code-Diversität (da z.B. die Sensor-0-Daten unter Verwendung der ersten Spalte der Walsh-Matrix erster Ordnung kodiert sind und da die Sensor-1-Daten unter Verwendung der zweiten Spalte der Walsh-Matrix erster Ordnung kodiert sind) die Kollision lösen und die gleichzeitig empfangenen kodierten Sensor-0-Daten und die kodierten Sensor-1-Daten korrekt dekodieren. Auf ähnliche Weise kann die ECU Kollisionen von kodierten Daten zwischen anderen Sensoren der Gruppe von Sensoren lösen. Da die ECU solche Kollisionen lösen kann, kann ein Zeitschlitzspielraum zwischen beliebigen zwei Zeitschlitzen verringert werden (z.B. auf null, weniger als null). Mit einem reduzierten Zeitschlitzspielraum kann der Sensordurchsatz erhöht werden. Mit weniger strengen Taktgenauigkeitsanforderungen können Kosten in Verbindung mit dem Sensor verringert werden. Auf diese Weise kann Walsh-Kodierung zum Übertragen von Sensordaten unter Verwendung von PSI5 eingesetzt werden, sodass eine Durchsatzmenge erhöht und/oder eine Taktgenauigkeitsanforderung verringert werden kann (z.B. im Vergleich zur Verwendung von Manchester-Kodierung für PSI5). Es gilt anzumerken, dass in der oben beschriebenen Ausführungsform mehrere Sensoren die gleiche Spalte der Walsh-Matrix zum Kodieren verwenden, die Übertragung der Sensoren kann jedoch so konfiguriert sein, dass ein Sensor, der planmäßig als Nächstes überträgt (z.B. in einem nachfolgenden Zeitschlitz), zum Kodieren die entsprechende Spalte der Walsh-Matrix erster Ordnung verwenden kann, die nicht vom aktuell übertragenden Sensor verwendet wird.
  • 1B zeigt einen Überblick über ein Beispiel in Verbindung mit der Kodierung und Dekodierung von Daten unter Verwendung einer Walsh-Matrix zweiter Ordnung für PSI5. Zum Zwecke von 1B wird davon ausgegangen, dass eine Gruppe von Sensoren (z.B. Sensor 0 bis Sensor 3) mit einer ECU verbunden ist, sodass die Gruppe von Sensoren Daten unter Verwendung von PSI5 übertragen kann.
  • Wie in 1B dargestellt kann die Gruppe von Sensoren konfiguriert sein, um Daten unter Verwendung von Spalten einer Walsh-Matrix zweiter Ordnung (z.B. W(22)) zu kodieren. Wie dargestellt kann beispielsweise Sensor 0 konfiguriert sein, um Daten basierend auf einer ersten Spalte der Walsh-Matrix zweiter Ordnung (z.B. (1 1 1 1)t) zu kodieren, Sensor 1 kann konfiguriert sein, um Daten unter Verwendung einer zweiten Spalte der Walsh-Matrix zweiter Ordnung (z.B. (1 –1 1 –1)t) zu kodieren, Sensor 2 kann konfiguriert sein, um Daten unter Verwendung einer dritten Spalte der Walsh-Matrix zweiter Ordnung (z.B. (1 1 –1 –1)t) zu kodieren, und Sensor 3 kann konfiguriert sein, um Daten unter Verwendung einer vierten Spalte der Walsh-Matrix zweiter Ordnung (z.B. (1 –1 –1 1)t) zu kodieren. Mit anderen Worten kann jeder Sensor konfiguriert sein, um Daten unter Verwendung einer anderen Spalte der Walsh-Matrix zweiter Ordnung zu kodieren.
  • Da jedem der Sensoren die Verwendung einer einzigen der Spalten der Walsh-Matrix zum Kodieren zugeordnet ist, kann jeder Sensor, da jede Spalte nur einmal (nur einem einzigen Sensor) zugeordnet ist, gleichzeitig kodierte Daten in beliebigen und/oder allen Zeitschlitzen übertragen und die ECU kann Daten, die den einzelnen Sensoren entsprechen, korrekt dekodieren. Wie dargestellt kann beispielsweise Sensor 0 Sensor-0-Daten unter Verwendung der ersten Spalte der Walsh-Matrix zweiter Ordnung kodieren, Sensor 1 kann Sensor-1-Daten unter Verwendung der zweiten Spalte der Walsh-Matrix zweiter Ordnung kodieren, Sensor 2 kann Sensor-2-Daten unter Verwendung der dritten Spalte der Walsh-Matrix zweiter Ordnung kodieren und Sensor 3 kann Sensor-3-Daten unter Verwendung der vierten Spalte der Walsh-Matrix zweiter Ordnung kodieren. Wie ferner dargestellt kann die Gruppe von Sensoren kodierte Daten in beliebigen und/oder allen Zeitschlitzen gleichzeitig übertagen (z.B. durch Modulieren eines Stroms, der durch die ECU erfassbar ist.
  • Wie dargestellt kann die ECU die kodierten Daten empfangen und basierend auf der ersten Spalte der Walsh-Matrix zweiter Ordnung, der zweiten Spalte der Walsh-Matrix zweiter Ordnung, der dritten Spalte der Walsh-Matrix zweiter Ordnung und der vierten Spalte der Walsh-Matrix zweiter Ordnung die kodierten Sensor-0-Daten, die kodierten Sensor-1-Daten, die kodierten Sensor-2-Daten bzw. die kodierten Sensor-3-Daten korrekt dekodieren. Mit anderen Worten kann die ECU die Sensordaten aufgrund der Code-Diversität unter den kodierten Daten korrekt dekodieren. Durch Ermöglichen einer gleichzeitigen Übertragung von kodierten Daten kann der Sensordurchsatz erhöht werden. Auf diese Weise kann Walsh-Kodierung zum Übertragen von Sensordaten unter Verwendung von PSI5 so verwendet werden, dass eine Durchsatzmenge erhöht werden kann (z.B. im Vergleich zur Verwendung von Manchester-Kodierung für PSI5). Außerdem kann die Verwendung von Walsh-Kodierung auf diese Weise die Implementierung einer CDMA-Technik zur Strommodulation ermöglichen.
  • 2 ist eine Darstellung einer Behandlung en Umgebung 200, in der hierin beschriebene Systeme und/oder Verfahren implementiert sein können. Wie in 2 dargestellt kann Umgebung 200 einen oder mehrere Sensoren 210-1 bis 210-N (N ≥ 1) (hierin im Folgenden gemeinsam als Sensoren 210 und separat als Sensor 210 bezeichnet) und eine ECU 220 umfassen. Vorrichtungen von Umgebung 200 können über eine verdrahtete Verbindung miteinander verbunden sein, wie z.B. eine Zweidrahtverbindung, die PSI5 zugeordnet ist.
  • Sensor 210 kann eine Abtastvorrichtung umfassen, die einen Vorgang und/oder eine Mengenänderung erfasst und eine entsprechende Ausgabe bereitstellt. Beispielsweise kann Sensor 210 einen peripheren Sensor umfassen, der Automobilelektronik zugeordnet ist, wie z.B. einen Airbag-Sensor. In einigen Implementierungen kann Sensor 210 so mit ECU 220 verbunden sein, dass Sensor 210 Daten unter Verwendung von PSI5 an ECU 220 übertragen kann. In einigen Implementierungen können ein oder mehrere Sensoren 210 unter Verwendung einer Bustopologie (z.B. einer Basisbustopologie, einer verketteten Bustopologie, einer Parallelbusmodustopologie usw.) oder einer anderen Topologie gemäß PSI5 mit ECU 220 verbunden sein. In einigen Implementierungen kann Sensor 210 in der Lage sein, Daten (z.B. Informationen, die von Sensor 210 erfasst werden) unter Verwendung einer Spalte einer Walsh-Matrix zu kodieren, wie nachstehend beschrieben ist. Weitere Details zu Sensor 210 finden sich nachstehend in Bezug auf 3A3C.
  • ECU 220 kann eine Vorrichtung in Verbindung mit einer Steuerung eines oder mehrerer elektrischer Systeme und/oder elektrischer Subsysteme, z.B. eines oder mehrerer elektrischer Systeme und/oder eines einzigen elektrischen Subsystems in einem Motorfahrzeug, umfassen. Beispielsweise kann ECU 220 ein Elektronik-/Motorsteuermodul (ECM), ein Leistungsverstärkersteuermodul (PCM), ein Übertragungssteuermodul (TCM), ein Bremssteuermodul (BCM oder EBCM), ein zentrales Steuermodul (CCM), ein zentrales Zeitsteuermodul (CTM), ein allgemeines elektronisches Modul (GEM), ein Karrosseriesteuermodul (BCM), ein Fahrwerksteuermodul (SCM) oder dergleichen sein. In einigen Implementierungen kann ECU 220 mit Sensoren 210 verbunden sein, sodass ECU 220 kodierte Daten empfangen kann, die von Sensoren 210 unter Verwendung von PSI5 übertragen werden (z.B. in Form eines modulierten Stroms). In einigen Implementierungen kann ECU 220 in der Lage sein, Walsh-kodierte Daten zu dekodieren, wie nachstehend beschrieben ist. Weitere Details zu ECU 220 sind nachstehend unter Bezugnahme auf 4 beschrieben.
  • Die Anzahl und Anordnung von Vorrichtungen, die in 2 dargestellt sind, dienen als Beispiel. In der Praxis sind zusätzliche Vorrichtungen, weniger Vorrichtungen, andere Vorrichtungen oder anders angeordnete Vorrichtungen als in 2 dargestellt möglich. Außerdem können zwei oder mehr in 2 dargestellte Vorrichtungen innerhalb einer einzelnen Vorrichtung implementiert sein oder eine einzelne, in 2 dargestellte Vorrichtung kann als mehrere, verteilte Vorrichtungen implementiert sein. Zusätzlich oder alternativ dazu kann ein Satz von Vorrichtungen (z.B. eine oder mehrere Vorrichtungen) von Umgebung 200 eine oder mehrere Funktionen ausführen, die von einem anderen Satz von Vorrichtungen von Umgebung 200 ausgeführt beschrieben sind.
  • 3A ist eine Darstellung von beispielhaften Komponenten von Sensor 210. Wie in 3A dargestellt kann Sensor 210 eine Datenkomponente 310, eine Walsh-Spaltenkomponente 320 und eine Strompegeleinstellvorrichtung 330 umfassen.
  • Datenkomponente 310 kann Daten (z.B. einen oder mehrere Bits, wie z.B. einen Bitstrom von Nullen und/oder Einsen) empfangen, erhalten, bestimmen und/oder erzeugen, die einer Abtastfunktion von Sensor 210 entsprechen. In einigen Implementierungen kann Datenkomponente 310 die Daten mit einer Datengeschwindigkeit gemäß PSI5, wie z.B. 125 kbps oder 189 kbps empfangen, erhalten, bestimmen und/oder erzeugen. In einigen Implementierungen kann Datenkomponente 310 die Daten zu Walsh-Spaltenkomponente 320 bereitstellen, für eine Walsh-Kodierung basierend auf einer Walsh-Spalte, die in einer Walsh-Matrix enthalten ist.
  • Walsh-Spaltenkomponente 320 kann eine Komponente umfassen, die Datenkodierung (z.B. beispielsweise durch Datenkomponente 310 bereitgestellt) basierend auf einer Spalte einer Walsh-Matrix zugeordnet ist. Beispielsweise kann Walsh-Spaltenkomponente 320 ein Bit kodieren, indem sie basierend auf einer Spalte der Walsh-Matrix einen Satz von kodierten Werten (z.B. einen Satz von zwei Werten, einen Satz von vier Werten usw.) bestimmt, der das Bit darstellt.
  • In einigen Implementierungen kann Walsh-Spaltenkomponente 320 konfiguriert sein, um die Daten basierend auf einer Walsh-Matrix erster Ordnung zu kodieren. Beispielsweise kann davon ausgegangen werden, dass Walsh-Spaltenkomponente 320 konfiguriert ist, um Daten, die von Datenkomponente 310 bereitgestellt werden, unter Verwendung einer ersten Spalte einer Walsh-Matrix erster Ordnung zu kodieren:
    Figure DE102016101129A1_0002
  • Wenn ein Bit eine 1 ist, kann hier die Walsh-Spaltenkomponente 320 dann das Bit als Satz von kodierten Werten (1 1) kodieren. Wenn ein Bit eine 0 ist, kann Walsh-Spaltenkomponente 320 auf ähnliche Weise das Bit als Satz von kodierten Werten (–1 –1) kodieren (z.B. basierend auf der Inversion der ersten Spalte der Walsh-Matrix erster Ordnung). Als weiteres Beispiel kann davon ausgegangen werden, dass Walsh-Spaltenkomponente 320 konfiguriert ist, um Daten, die von Datenkomponente 310 bereitgestellt werden, unter Verwendung einer zweiten Spalte der Walsh-Matrix erster Ordnung zu kodieren. Wenn ein Bit eine 1 ist, kann die Walsh-Spaltenkomponente 320 hier das Bit als Satz von kodierten Werten (1 –1) kodieren. Wenn ein Bit eine 0 ist, kann Walsh-Spaltenkomponente 320 das Bit auf ähnliche Weise als Satz von kodierten Werten (–1 1) kodieren (z.B. basierend auf der Inversion der zweiten Spalte der Walsh-Matrix erster Ordnung).
  • Als weiteres Beispiel wird davon ausgegangen, dass Walsh-Spaltenkomponente 320 konfiguriert ist, um Daten, die von Datenkomponente 310 bereitgestellt werden, unter Verwendung einer ersten Spalte einer Walsh-Matrix zweiter Ordnung zu kodieren:
    Figure DE102016101129A1_0003
  • Wenn ein Bit eine 1 ist, kann hier Walsh-Spaltenkomponente 320 das Bit als Satz von kodierten Werten (1 1 1 1) kodieren. Wenn ein Bit eine 0 ist, kann Walsh-Spaltenkomponente 320 auf ähnliche Weise das Bit als Satz von kodierten Werten (–1 –1 –1 –1) kodieren (z.B. basierend auf der Inversen der ersten Spalte der Walsh-Matrix zweiter Ordnung). Als weiteres Beispiel wird davon ausgegangen, dass Walsh-Spaltenkomponente 320 konfiguriert ist, um Daten, die von Datenkomponente 310 bereitgestellt werden, unter Verwendung einer dritten Spalte der Walsh-Matrix zweiter Ordnung zu kodieren. Wenn ein Bit eine 1 ist, kann Walsh-Spaltenkomponente 320 hier das Bit als Satz von kodierten Werten (1 1 –1 –1) kodieren. Wenn ein Bit eine 0 ist, dann kann Walsh-Spaltenkomponente 320 auf ähnliche Weise das Bit als Satz von kodierten Werten (–1 –1 1 1) kodieren (z.B. basierend auf der Inversion der dritten Spalte der Walsh-Matrix zweiter Ordnung).
  • In einigen Implementierungen können Sensoren 210 zugeordnet sein, um Daten unter Verwendung von alternierenden Spalten einer Walsh-Matrix zu kodieren. Wenn beispielsweise ein erster Sensor 210 (der z.B. konfiguriert ist, um in einem ersten Zeitschlitz zu übertragen), ein zweiter Sensor 210 (der z.B. konfiguriert ist, um in einem zweiten Zeitschlitz zu übertragen) und ein dritter Sensor 210 (der z.B. konfiguriert ist, um in einem dritten Zeitschlitz zu übertragen) mit ECU 220 verbunden sind, dann kann der erste Sensor 210 zugeordnet sei, um Daten unter Verwendung der ersten Spalte der Walsh-Matrix erster Ordnung zu kodieren, der zweite Sensor 210 kann zugeordnet sein, um Daten unter Verwendung der zweiten Spalte der Walsh-Matrix erster Ordnung zu kodieren, und der dritte Sensor 210 kann zugeordnet sein, um Daten unter Verwendung der ersten Spalte der Walsh-Matrix erster Ordnung zu kodieren. Dies kann eine Verringerung eines Zeitschlitzspielraums ermöglichen (z.B. auf null, weniger als null usw.), während es ECU 220 ermöglicht, kodierten Daten, die von den einzelnen Sensoren bereitgestellt werden, korrekt zu dekodieren, auch bei Vorhandensein einer Kollision (z.B. aufgrund von Code-Diversität von aneinander anschließenden Zeitschlitzen).
  • Während hierin beschrieben Implementierungen im Zusammenhang mit Walsh-Spaltenkomponente 320 beschrieben sind, die ein oder mehrere aus zwei Kodierschemas, die auf einer Walsh-Matrix erster Ordnung basierend, oder eines oder mehrere aus vier verschiedenen Kodierschemas, die auf einer Walsh-Matrix zweiter Ordnung basieren, verwenden, kann in einigen Implementierungen Walsh-Spaltenkomponente 320 eine andere Anzahl an Kodierschemas verwenden (die z.B. auf einer anderen Matrixart basieren), um Daten zu kodieren, wie z.B. eines oder mehrere aus acht Kodierschemas, die auf einer Walsh-Matrix dritter Ordnung basieren, eine Anzahl von Kodierschemas, die auf einer Hadamard-Matrix basieren (z.B. eine Quadratmatrix mit Einträgen von entweder –1 oder 1 und einschließlich zueinander orthogonaler Spalten), eines oder mehrere aus 2n (z.B. n = 1, 2, 3, 4 usw.) Kodierschemas, die auf einer anderen Art von Quadratmatrix mit Abmessungen von 2n basieren, die Werte von 1 und –1 umfasst, sodass ein Skalarprodukt beliebiger zwei Spalten gleich null ist.
  • Zusätzlich oder alternativ dazu können Sensoren 210 zugeordnet sein, um Daten unter Verwendung von aufeinanderfolgenden Spalten einer Walsh-Matrix zu kodieren. Wenn beispielsweise ein erster Sensor 210, ein zweiter Sensor 210, ein dritter Sensor 210 und ein vierter Sensor 210 (die z.B. jeweils konfiguriert sind, um gleichzeitig in beliebigen und/oder allen Zeitschlitzen zu übertragen), mit ECU 220 verbunden sind, dann kann der erste Sensor 210 zugeordnet sein, um Daten unter Verwendung der ersten Spalte der Walsh-Matrix zweiter Ordnung zu kodieren, der zweite Sensor 210 kann zugeordnet sein, um Daten unter Verwendung der zweiten Spalte der Walsh-Matrix zweiter Ordnung zu kodieren, der dritte Sensor 210 kann zugeordnet sein, um Daten unter Verwendung der dritten Spalte der Walsh-Matrix zweiter Ordnung zu kodieren, und der vierte Sensor 210 kann zugeordnet sein, um Daten unter Verwendung der vierten Spalte der Walsh-Matrix zweiter Ordnung zu kodieren. Dies kann es ECU 220 ermöglichen, kodierte Daten, die von jedem Sensor bereitgestellt werden, korrekt zu dekodieren, auch wenn sie gleichzeitig von den vier Sensoren 210 übertragen werden (z.B. aufgrund von Code-Diversität zwischen Sensoren 210).
  • In einigen Implementierungen kann Walsh-Spaltenkomponente 320 die kodierten Daten Strompegeleinstellvorrichtung 330 bereitstellen, um es Strompegeleinstellvorrichtung 330 zu ermöglichen, einen Strom zu modulieren, der von der ECU 220 erfassbar ist.
  • Strompegeleinstellvorrichtung 330 kann eine Komponente umfassen, die einer Umwandlung von kodierten Daten (z.B. einer Gruppe von Sätzen von kodierten Werten) in eine Abfolge von Strompegeln durch Modulieren eines Stroms (der z.B. durch ECU 220 erfassbar ist) zugeordnet ist. Beispielsweise kann Strompegeleinstellvorrichtung 330 einen Digital-Analog-Wandler (DAC) oder eine andere Art von Komponente umfassen, die einer Umwandlung einer digitalen Darstellung von Informationen in eine analoge Darstellung von Informationen zugeordnet ist.
  • In einigen Implementierungen kann ein Strompegel einem Wert entsprechen, der in kodierten Daten enthalten ist. Beispielsweise kann ein Leerlaufstrompegel (z.B. ILeerstrom, der einer Strommenge entspricht, die von Sensor 210 verbraucht wird) einem kodierten Bitwert von –1 entsprechen, ein Delta-Strompegel (z.B. IDelta, welcher der Strommenge entspricht, die von Sensor 210 verbraucht wird, plus einer Strommenge, wie z.B. 26 Milliampere (mA)) kann einem kodierten Bitwert von 1 entsprechen und ein neutraler Stromwert (z.B. Ineutral, welcher der Strommenge entspricht, die von Sensor 210 verbraucht wird, plus einer zweiten Strommenge, die geringer ist als die erste Strommenge, wie z.B. 13 mA) kann der Übertragung von keinen Daten durch Sensor 210 entsprechen. In einigen Ausführungsformen kann der neutrale Strompegel gleich einer Summe aus dem Leerstrompegel und der Hälfte einer Differenz zwischen dem Delta-Strompegel und dem Leerstrompegel sein (d.h. Ineutral = ILeerlauf + [(IDelta – ILeerlauf)/2)]).
  • In einigen Implementierungen kann Strompegeleinstellvorrichtung 330 den Strom so modulieren, dass eine Abfolge von Strompegeln einen entsprechenden Satz von kodierten Werten darstellt, wobei jeder Strompegel für eine Zeitdauer unverändert bleibt, die gleich einem einzigen Chip ist. Ein Chip kann eine Mindestzeitdauer umfassen, für die es keine Strompegeländerung gibt. Beispielsweise kann eine Chiplänge für Walsh-Kodierung, die auf der Walsh-Matrix erster Ordnung basiert, eine Hälfte eines Bits sein (da z.B. ein Bit als ein Satz von zwei Werten kodiert sein kann, kann das kodierte Bit durch zwei Strompegel dargestellt sein). Mit anderen Worten gibt es zwei Chips pro Bit bei Walsh-Kodierung unter Verwendung der Walsh-Matrix erster Ordnung. Als weiters Beispiel kann eine Chiplänge für Walsh-Kodierung, die auf der Walsh-Matrix zweiter Ordnung basiert, ein Viertel eines Bits sein (da z.B. ein Bit als Satz von vier Werten kodiert sein kann, kann das kodierte Bit durch vier Strompegel dargestellt sein). Mit anderen Worten gibt es vier Chips pro Bit bei Walsh-Kodierung unter Verwendung der Walsh-Matrix zweiter Ordnung.
  • In einigen Implementierungen kann die Abfolge von Strompegeln, die den Satz von kodierten Werten darstellt, als Chipabfolge bezeichnet werden. In einigen Implementierungen kann eine erste Chipabfolge orthogonal zu einer zweiten Chipabfolge sein. Eine erste Chipabfolge kann orthogonal zu einer zweiten Chipabfolge sein, wenn die erste Chipabfolge die gleiche Länge aufweist wie die zweite Chipabfolge (z.B. 2 Chips, 4 Chips usw.) und eine Anzahl von Chips, bei denen die erste Chipabfolge und die zweite Chipabfolge den gleichen Strompegel enthalten, gleich einer Anzahl von Chips ist, bei denen die erste Chipabfolge und die zweite Chipabfolge unterschiedliche Strompegel umfassen. Entspricht beispielsweise eine erste Chipabfolge der ersten Spalte der Walsh-Matrix zweiter Ordnung (z.B. (1 1 1 1)t) und eine zweite Chipabfolge der zweiten Spalte der Walsh-Matrix zweiter Ordnung (z.B. (1 –1 1 –1)t), umfassen die erste Chipabfolge und die zweite Chipabfolge Chips mit einem gleichen Strompegel an einer ersten Position (z.B. beide 1) und einer dritten Position (z.B. beide 1). Auf ähnliche Weise umfassen die erste Chipabfolge und die zweite Chipabfolge Chips mit unterschiedlichen Strompegeln an einer zweiten Position (z.B. 1 und –1) und einer vierten Position (z.B. 1 und –1). Ein ähnliches Beispiel ist in Bezug auf die zweite Spalte der Walsh-Matrix zweiter Ordnung und die dritte Spalte der Walsh-Matrix zweiter Ordnung (z.B. (1 1 –1 –1)t) zu sehen.
  • In einigen Implementierungen kann Strompegeleinstellvorrichtung 330 den Strom basierend auf der Chipabfolge modulieren, die dem Satz von kodierten Werten entspricht. Beispielsweise kann davon ausgegangen werden, dass Walsh-Spaltenkomponente 320 ein Bit 0 unter Verwendung der ersten Spalte der Walsh erster Ordnung als (–1 –1) kodiert. Hier kann Strompegeleinstellvorrichtung 330 den Strom modulieren, indem sie den Strompegel für eine Dauer von zwei Chips vom neutralen Strom auf den Leerlaufstrom senkt. Als weiteres Beispiel wird davon ausgegangen, dass Walsh-Spaltenkomponente 320 ein Bit 1 unter Verwendung der zweiten Spalte der Walsh erster Ordnung als (1 –1) kodiert. Hier kann Strompegeleinstellvorrichtung 330 den Strom durch Erhöhen des Strompegels vom neutralen Strom zum Delta-Strom während eines ersten Chips und Senken des Strompegels auf den Leerlaufstrom während eines zweiten Chips modulieren. Als weiteres Beispiel kann davon ausgegangen werden, dass Walsh-Spaltenkomponente 320 ein Bit 1 unter Verwendung der zweiten Spalte der Walsh zweiter Ordnung als (1 –1 1 –1) kodiert. Hier kann Strompegeleinstellvorrichtung 330 den Strom durch Erhöhen des Strompegels vom neutralen Strom auf den Delta-Strom während eines ersten Chips, Senken des Strompegels auf den Leerlaufstrom während eines zweiten Chips, Erhöhen des Strompegels auf den Delta-Strom während eines dritten Chips und Senken des Strompegels auf den Leerlaufstrom während eines vierten Chips modulieren. 3B und 3C zeigen Beispiele für eine Weise, wie ein Strom moduliert werden kann, um Daten darzustellen, die unter Verwendung einer Walsh-Matrix erster Ordnung bzw. einer Walsh-Matrix zweiter Ordnung kodiert sind.
  • In einigen Implementierungen kann Strompegeleinstellvorrichtung 330 den Strom mit einer Geschwindigkeit modulieren, die größer ist als die Datengeschwindigkeit. Beispielsweise kann Strompegeleinstellvorrichtung 330 den Strom mit einer vierfachen Geschwindigkeit pro Bit modulieren, wenn die Daten unter Verwendung der Walsh-Matrix zweiter Ordnung kodiert sind. In einigen Implementierungen kann der Strom, der von Strompegeleinstellvorrichtung 330 moduliert ist, von ECU 220 erfasst werden, und ECU 220 kann die kodierten Daten wie nachstehend beschrieben dekodieren.
  • Die Anzahl und Anordnung von Komponenten in 3A sind als Beispiel angeführt. In der Praxis kann Sensor 210 zusätzliche Komponenten, weniger Komponenten, andere Komponenten oder anders angeordnete Komponenten umfassen als in 3A dargestellt. Zusätzlich oder alternativ dazu kann ein Satz von Komponenten (z.B. eine oder mehrere Komponenten) von Sensor 210 eine oder mehrere Funktionen ausführen, die hierin von einem anderen Satz von Komponenten von Sensor 210 ausgeführt beschrieben sind.
  • 4 ist eine Darstellung von beispielhaften Komponenten von ECU 220. Wie in 4 dargestellt kann ECU 220 einen Strombegrenzer 410, einen Quantisierer 420 und einen Empfänger 430 umfassen, der ein Schieberegister 432, eine Walsh-Spaltenkomponente 434, eine Entscheidungskomponente 436 und eine Taktrückgewinnungskomponente 438 umfassen kann. In einigen Implementierungen kann ECU 220 mehrere Empfänger 430 umfassen, wie nachstehend beschrieben ist.
  • Strombegrenzer 410 kann eine Komponente umfassen, die einer Begrenzung eines Stroms zugeordnet ist, der von ECU 220 erfasst wird. In einigen Implementierungen kann Strombegrenzer 410 den Strom auf den Delta-Strompegel oder den Leerlaufstrompegel begrenzen. Wenn beispielsweise Strompegeleinstellvorrichtung 330 den Strom so moduliert, dass der Strompegel über dem Delta-Strom- oder unter dem Leerlaufstrompegel liegt (wenn z.B. zwei Sensoren 210 gleichzeitig Daten übertragen), dann kann Strombegrenzer 410 den Strom, der von ECU 220 erfasst wird, auf den Delta-Strompegel bzw. den Leerlaufstrompegel begrenzen. In einigen Implementierungen kann Strombegrenzer 410 den Strom begrenzen, um Verlust zu verringern und/oder um unnötigen Verbrauch zu verringern. Strombegrenzung durch Strombegrenzer 410 wirkt sich nicht auf eine Dekodierung von Walsh-kodierten Daten aus.
  • In einigen Implementierungen kann der Strompegel, auf den Strombegrenzer 410 den Strom begrenzen kann, auf einem Delta-Strompegel (z.B. IDelta) und einem Leerlaufstrompegel (z.B. ILeerlauf) basieren, die einer Anzahl von Sensoren 210 entsprechen, die mit ECU 220 verbunden sind. Beispielsweise kann davon ausgegangen werden, dass vier Sensoren 210 mit ECU 220 verbunden sind und dass Strombegrenzer 410 positioniert ist, um einen Strom zu begrenzen der von ECU 220 erfasst wird. Ferner kann davon ausgegangen werden, dass basierend auf einer Konfiguration von Strombegrenzer 410 der Delta-Strompegel 6 mA größer sein muss als der neutrale Strompegel und der neutrale Strompegel 6 mA größer sein muss als der Leerlaufstrompegel (z.B. IDelta – Ineutral = Ineutral – ILeerlauf = 6 mA). Außerdem wird davon ausgegangen, dass jeder Sensor 210 im Leerlauf 8 mA Strom verbraucht. In diesem Beispiel ist der neutrale Strompegel, der den vier Sensoren 210 entspricht, gleich 56 mA oder 14 mA pro Sensor 210 (z.B. 4 × (8 mA + 6 mA) = 56 mA). Wenn von keinem Sensor 210 Daten übertragen werden, beträgt der von ECU 220 erfasste Strompegel daher 56 mA. Hier kann Strombegrenzer 410 konfiguriert sein, um erfassten Strom zu begrenzen, der größer als oder gleich 65 mA ist (z.B. Ineutral + (IDelta – Ineutral) + 3 mA Spielraum = 56 + 6 + 3 = 65 mA). Auf ähnliche Weise kann Strombegrenzer 410 konfiguriert sein, um Strom zu begrenzen, der weniger als oder gleich 47 mA ist (z.B. Ineutral – (Ineutral – ILeerlauf) – 3 mA Spielraum = 56 – 6 – 3 = 47 mA). Durch Begrenzen des Stroms auf diese Weise kann ECU 220 in der Lage sein, Daten in jedem Übertragungsfall, der den vier Sensoren 210 zugeordnet ist, korrekt zu dekodieren (wenn z.B. nur ein einziger Sensor 210 Daten überträgt, wenn nur zwei Sensoren 210 gleichzeitig Daten übertragen, wenn drei Sensoren 210 gleichzeitig Daten übertragen und wenn alle vier Sensoren 210 gleichzeitig Daten übertragen).
  • Quantisierer 420 kann eine Komponente umfassen, die konfiguriert ist, um eine Abfolge von Strompegeln in einen Satz von Stromwerten umzuwandeln. Quantisierer 420 kann beispielsweise einen Analog-Digital-Wandler (ADC) oder eine andere Art von Komponente umfassen, die einer Umwandlung einer analogen Darstellung von Informationen in eine digitale Darstellung dieser Informationen zugeordnet ist. In einigen Implementierungen kann Quantisierer 420 eine Abfolge von Strompegeln in einen oder mehrere Sätze von Stromwerten umwandeln, die einem oder mehreren kodierten Bits entsprechen. Beispielsweise kann davon ausgegangen werden, dass ECU 220 konfiguriert ist, um kodierte Daten unter Verwendung einer Walsh-Matrix erster Ordnung zu dekodieren. Wenn Quantisierer 420 den Strom abtastet und während eines ersten Chips den Leerstrom erfasst und während eines zweiten Chips den Delta-Strom erfasst, dann kann Quantisierer 420 hier die Abfolge von Strompegeln in einen Satz von Stromwerten umwandeln, der (–1 1) umfasst. Als weiteres Beispiel kann davon ausgegangen werden, dass ECU 220 konfiguriert ist, um kodierten Daten unter Verwendung einer Walsh-Matrix zweiter Ordnung zu dekodieren. Wenn Quantisierer 420 den Leerstrom während eines ersten Chips, eines zweiten Chips und eines dritten Chips erfasst und den Delta-Strom während eines vierten Chips erfasst, kann Quantisierer 420 hier die Abfolge von Strompegeln in einen Satz von Stromwerten umwandeln, der (–1 –1 –1 1) umfasst.
  • In einigen Implementierungen kann Quantisierer 420 den Strompegel mit einer Geschwindigkeit abtasten, die größer ist als die Datengeschwindigkeit (da z.B. jedes Bit durch Strompegel über mehrere Chips dargestellt sein kann). Beispielsweise kann Quantisierer 420 den Strom bei Walsh-Kodierung unter Verwendung der Walsh-Matrix zweiter Ordnung mit vierfacher Datengeschwindigkeit abtasten (da z.B. jedes Bit durch Strompegel über vier Chips dargestellt ist). Zusätzlich oder alternativ dazu kann Quantisierer 420 den Strom überabtasten (um z.B. Effekte von Taktungenauigkeiten zu eliminieren). Mit anderen Worten kann Quantisierer 420 den Strom mehrmals (z.B. vier, zehn, zwanzig usw. mal) pro Chip abtasten. Es kann beispielsweise davon ausgegangen werden, dass Walsh-Kodierung unter Verwendung der Walsh-Matrix zweiter Ordnung implementiert wird (sodass z.B. jedes Bit durch Stromwerte über vier Chips dargestellt ist) und dass Quantisierer 420 konfiguriert ist, um jeden Chip viermal abzutasten. Hier kann Quantisierer 420 den Strom 16-mal pro Bit abtasten (z.B. vier Chips pro Bit mal vier Abtastungen pro Chip). In einigen Implementierungen kann Quantisierer 420 den Strom überabtasten, um angesichts der Taktungenauigkeiten einen genauen Korrelationswert zu bestimmen (sodass z.B. kodierte Daten, die zu einem unkorrekten Zeitpunkt gesendet werden, immer noch dekodiert werden können). Der Einfachheit halber können hierin beschriebene Implementierungen im Zusammenhang mit dem Abtasten des Stroms einmal pro Chip beschrieben sein. In einigen Implementierungen kann Quantisierer 420 den Satz von Stromwerten dem Empfänger 430 zur Dekodierung und/oder Weiterverarbeitung bereitstellen.
  • Empfänger 430 kann eine Komponente umfassen, die einer Dekodierung von Walsh-kodierten Daten basierend auf einem Satz von Stromwerten zugeordnet ist, der von Quantisierer 420 bestimmt wird. In einigen Implementierungen kann ECU 220 einen oder mehrere Empfängers 430 umfassen. Beispielsweise kann ECU 220 einen oder mehrere Empfänger 430 umfassen und jeder Empfänger 430 kann konfiguriert sein, um kodierten Daten basierend auf einer oder mehreren Spalten einer Walsh-Matrix zu dekodieren (z.B. kann ein einziger Empfänger konfiguriert sein, um Daten in Zusammenhang mit einer einzigen Spalte der Walsh-Matrix, zwei Spalten der Walsh-Matrix, vier Spalten der Walsh-Matrix usw. zu kodieren). In einigen Implementierungen kann Empfänger 430 ein Schieberegister 432, eine Walsh-Spaltenkomponente 434, eine Entscheidungskomponente 436 und eine Taktrückgewinnungskomponente 438 umfassen.
  • Schieberegister 432 kann eine Gruppe von Flipflops umfassen, die einen Satz von Strompegeln speichert, die von Quantisierer 420 bereitgestellt werden. In einigen Implementierungen kann ein Bit basierend auf dem Satz von Strompegeln und einer Spalte einer Walsh-Matrix dekodiert werden (z.B. in Zusammenhang mit Walsh-Spaltenkomponente 434). In einigen Implementierungen kann Schieberegister 432 eine Länge aufweisen, die der Mengen an Chips pro Bit und/oder einer Geschwindigkeit entspricht, mit der Quantisierer 420 den Strom abtastet. An das obige Beispiel anschließend kann, wenn Quantisierer 420 den Strom 16-mal pro Bit abtastet, das Schieberegister 432 16 Flipflops lang sein. In einigen Implementierungen kann Schieberegister 432 jeden Wert des Satzes von Werten einem entsprechenden Multiplikator zuordnen (der z.B. in Empfänger 430 enthalten ist), sodass Empfänger 430 ein kodiertes Bit dekodieren kann, das durch den Satz von Stromwerten dargestellt ist, wie nachstehend beschrieben ist.
  • Walsh-Spaltenkomponente 434 kann eine Komponente umfassen, die einer Dekodierung von Daten (die z.B. durch den Satz von Stromwerten dargestellt sind, die in Schieberegister 432 gespeichert sind) basierend auf einer Spalte einer Walsh-Matrix (oder einer anderen Art von Matrix, wie oben beschrieben) zugeordnet ist. Beispielsweise kann Walsh-Spaltenkomponente 434 Informationen speichern, die eine Spalte einer Walsh-Matrix darstellen, sodass ein Bit, das unter Verwendung der Spalte der Walsh-Matrix kodiert ist, basierend auf dem Satz von Stromwerten bestimmt werden kann.
  • In einigen Implementierungen kann Walsh-Spaltenkomponente 434 jeden Eintrag der Spalte der Walsh-Matrix einem entsprechenden Multiplikator bereitstellen, und jeder Eintrag kann mit einem entsprechenden Stromwert des Satzes von Stromwerten multipliziert werden, um einen Satz von Multiplikationsergebnissen zu erhalten.
  • Beispielsweise kann davon ausgegangen werden, dass Schieberegister 432 einen Satz von Stromwerten empfängt, der (0 1 0 0) umfasst, und dass Walsh-Komponente 432 Informationen speichert, die der vierten Spalte der Walsh-Matrix zweiter Ordnung zugeordnet sind (z.B. (1 –1 –1 1)t). Hier kann jeder Wert des Satzes von Stromwerten mit einem entsprechenden Eintrag der vierten Spalte der Walsh-Matrix zweiter Ordnung multipliziert werden, um einen Satz von Multiplikationsergebnissen zu bestimmen, die ,0 –1, 0 und 0 umfassen (da z.B. 0 × 1 = 0, 1 × –1 = –1, 0 × 1 = 0 und 0 × 1 = 0 ist). In einigen Implementierungen kann der Satz von Multiplikationsergebnissen dann summiert und Entscheidungskomponente 436 bereitgestellt werden. An das obige Beispiel anschließend kann der Satz von Multiplikationsergebnissen zu –1 addiert werden (z.B. 0 + –1 + 0 + 0 = –1).
  • In einigen Implementierungen können mehrere Sätze von Multiplikationsergebnissen (z.B. und entsprechende Summen) basierend auf einem einzigen Satz von Stromwerten bestimmt werden (wenn z.B. jeder Empfänger 430 einer Gruppe von Empfängern 430 eine Walsh-Spaltenkomponente 434 umfasst, die einer anderen Spalte einer Walsh-Matrix zugeordnet ist). Daher können aufgrund von Code-Diversität kodierte Daten, die von mehreren Sensoren bereitgestellt werden, dekodiert werden, auch wenn sie gleichzeitig bereitgestellt werden (z.B. als Folge einer Kollision, wenn Sensoren 210 konfiguriert sind, um gleichzeitig zu übertragen, usw.).
  • Entscheidungskomponente 436 kann eine Komponente umfassen, die konfiguriert ist, um einen dekodierten Wert eines Bits zu bestimmen. In einigen Implementierungen kann Entscheidungskomponente 436 den dekodierten Wert basierend auf der Summe des Satzes von Multiplikationsergebnissen bestimmen. In einigen Implementierungen kann beispielsweise die Summe des Satzes von Multiplikationsergebnissen einen Korrelationswert darstellen (z.B. einen Wert, der anzeigt, ob ein kodiertes Bit als 0 oder 1 zu dekodieren ist). In einigen Implementierungen kann ein negativer Korrelationswert (z.B. –1, –2, –3 usw.) anzeigen, dass ein kodiertes Bit als 0 zu dekodieren ist. Auf ähnliche Weise kann ein positiver Korrelationswert (z.B. 1, 2, 3 usw.) anzeigen, dass ein kodiertes Bit als 1 zu dekodieren ist. Ein schwacher Korrelationswert (z.B. ein Korrelationswert etwa gleich 0) kann anzeigen, dass durch den modulierten Strom keine Daten dargestellt wurden, die unter Verwendung der Spalte der Walsh-Matrix kodiert sind. An das obige Beispiel anschließend kann, da die Summe des Satzes von Multiplikationsergebnissen –1 ist, Entscheidungskomponente 436 bestimmen, dass das kodierte Bit als 0 zu dekodieren ist. In einigen Implementierungen kann Entscheidungskomponente 436 die dekodierten Daten aus Ausgabe bereitstellen (z.B. einen dekodierten Bitstrom), nachdem die Walsh-kodierten Daten dekodiert wurden.
  • In einigen Implementierungen kann Entscheidungskomponente 436 den dekodierten Wert des kodierten Bits basierend auf einer Änderung im Korrelationswert im Laufe der Zeit bestimmen. Beispielsweise kann Entscheidungskomponente 436 einen Kette von Korrelationswerten bestimmen (z.B. wenn Daten von ECU 220 empfangen werden) und kann auf eine Zunahme oder Abnahme im Strom von Korrelationswerten überwachen. In einigen Implementierungen kann eine scharfe Zunahme oder eine scharfe Abnahme des Korrelationswerts (z.B. über einen kurzen Zeitraum, wie z.B. einen Teil eines einzigen Chips) im Vergleich zu einer langsamen Zunahme oder einer langsamen Abnahme des Korrelationswerts (z.B. über einen langen Zeitraum, wie z.B. vier Chips) anzeigen, dass ein Bit empfangen wurde. In solch einem Fall kann Entscheidungskomponente 436 den dekodierten Wert des kodierten Bits basierend auf dem Korrelationswert bestimmen, der direkt vor der scharfen Zunahme oder scharfen Abnahme des Korrelationswerts liegt.
  • Zusätzlich oder alternativ dazu kann Entscheidungskomponente 436 den dekodierten Wert basierend auf Informationen bestimmen, die von Taktrückgewinnungskomponente 438 bereitgestellt werden. Taktrückgewinnungskomponente 438 kann in der Lage sein, zu schätzen, wenn ein Bit empfangen wurde. Beispielsweise kann Taktrückgewinnungskomponente 438 ein bekanntes Startbit identifizieren und kann eine Zeitdauer bestimmen, die dem Empfang eines Bits zugeordnet ist (z.B. basierend auf einer Identifikation eines Zeitpunkts, an dem das bekannte Startbit empfangen wurde). Hier kann Taktrückgewinnungskomponente 438 einen Zeitpunkt schätzen, an dem andere Bits empfangen werden könnten, und kann verursachen, dass Entscheidungskomponente 436 den Korrelationswert zu den geeigneten geschätzten Zeitpunkten bestimmt. Daher kann es sein, dass Entscheidungskomponente 436 nicht erforderlich ist, um den Korrelationswert für scharfe Anstiege oder scharfe Abnahmen zu überwachen.
  • Die Anzahl und Anordnung von Komponenten, die in 4 dargestellt sind, sind als Beispiel angeführt. In der Praxis kann ECU 220 zusätzliche Komponenten, weniger Komponenten, andere Komponenten oder anders angeordnete Komponenten umfassen als in 4 dargestellt. Zusätzlich oder alternativ dazu kann ein Satz von Komponenten (z.B. eine oder mehrere Komponenten) von ECU 220 eine oder mehrere Funktionen ausüben, die als von einem anderen Satz von Komponenten von ECU 220 ausgeführt beschrieben sind.
  • 5A und 5B sind Darstellungen, die ein Beispiel 500 einer Walsh-Kodierung und -Dekodierung unter Verwendung einer Walsh-Matrix erster Ordnung für PSI5 zeigen. In einigen Implementierungen können Walsh-Kodierung und -Dekodierung unter Verwendung einer Walsh-Matrix erster Ordnung für PSI5 einen erhöhten Durchsatz und/oder weniger strenge Taktgenauigkeitsanforderungen ermöglichen, auch bei Vorhandensein von Bitkollisionen, wie nachstehend beschrieben. Zum Zweck von Beispiel 500 wird davon ausgegangen, dass ein erster Sensor (z.B. Sensor 0) und ein zweiter Sensor (z.B. Sensor 1) mit ECU 220 (z.B. ECU X) verbunden sind und dass Sensor 0 und Sensor 1 Daten unter Verwendung von PSI5 Daten in einem ersten Zeitschlitz (z.B. Schlitz 0) bzw. einem zweiten Zeitschlitz (z.B. Schlitz 1) ohne Zeitschlitzspielraum (z.B. so dass Sensor 1 in Schlitz 1 überträgt, direkt nachdem Schlitz 0 endet) übertragen sollen (z.B. an ECU X). Ferner wird davon ausgegangen, dass Sensor 0 konfiguriert ist, um Daten unter Verwendung der ersten Spalte der Walsh-Matrix erster Ordnung zu kodieren, und dass Sensor 1 konfiguriert ist, um Daten unter Verwendung der zweiten Spalte der Walsh-Matrix erster Ordnung zu kodieren.
  • Wie in 5A dargestellt kann Sensor 0 unter Verwendung der ersten Spalte der Walsh-Matrix erster Ordnung für eine erste Kette von Bits (z.B. 01010010111) als erste Gruppe von Sätzen von kodierten Werten kodieren (wobei z.B. jedes Bit als Satz von zwei Werten 1 und/oder –1 kodiert ist). Wie dargestellt kann Sensor 0 dann beginnen, die kodierte erste Bitkette in Schlitz 0 zu übertragen (z.B. durch Modulieren eines Stroms basierend auf der ersten Gruppe von Sätzen von kodierten Werten). Wie ferner dargestellt kann Sensor 1 unter Verwendung der zweiten Spalte der Walsh-Matrix erster Ordnung eine zweite Bitkette (z.B. 01011000111) als zweite Gruppe von Sätzen von kodierten Werten kodieren. Wie dargestellt kann Sensor 1 dann die kodierte zweite Bitkette in Schlitz 1 übertragen (z.B. durch Modulieren des Stroms basierend auf der zweiten Gruppe von Sätzen von kodierten Werten).
  • Wie im oberen Teil von 5B gezeigt wird jedoch davon ausgegangen, dass Sensor 1 aufgrund einer Taktungenauigkeit von Sensor 1 beginnt, die kodierte Bitkette zu übertragen, bevor Sensor 0 die Übertragung der kodierten ersten Bitkette beendet, sodass die Strompegel, welche die letzten beiden Bits der kodierten ersten Bitte darstellen, mit den Strompegeln überlappen, welche die ersten zwei Bits der kodierten zweiten Bitketten darstellen. Mit anderen Worten wird davon ausgegangen, dass die letzten beiden Bits der kodierten ersten Bitkette bei der ECU X mit den ersten beiden Bits der kodierten zweiten Bitkette kollidieren.
  • Wie im unteren Teil von 5B gezeigt kann ECU X die ersten neun Bits der kodierten ersten Bitkette basierend auf Sätzen von Stromwerten kodieren, die der ersten kodierten Bitkette entsprechen. Beispielsweise kann ECU X einen Satz von Stromwerten (z.B. (1 1)) detektieren, der dem neunten Bit der kodierten ersten Bitkette entspricht, und kann das neunte Bit basierend auf der ersten Spalte der Walsh-Matrix erster Ordnung als 1 dekodieren (z.B. (1 1) × (1 1)t = 1 × 1 + 1 × 1 = 2 → Bit = 1). ECU X kann auf ähnliche Weise die ersten acht Bits der ersten kodierten Bitkette dekodieren. Auf ähnliche Weise kann ECU X bestimmen, dass keine Sensor-1-Daten während der Zeit empfangen wurden, in der das neunte Bit der ersten Bitkette empfangen wurde (da z.B. (1 1) × (1 –1)t = 1 × 1 + 1 × –1 = 0 → keine Daten).
  • Wie ferner im unteren Teil von 5B gezeigt kann ECU X auch die kodierten Daten dekodieren, die der Kollision zugeordnet sind. Wie dargestellt kann ECU X zwei Sätze von Stromwerten bestimmen, die Stromwerten entsprechen, die während jedes Chips einer Vier-Chip-Dauer erfasst werden, die der Kollision entspricht. Wie dargestellt kann ein erster Satz von Stromwerten (0 2) umfassen und ein zweiter Satz von Stromwerten kann (2 0) umfassen. Wie ferner dargestellt kann ECU X den dekodierten Wert des zehnten Bits der kodierten ersten Bitkette als 1 (z.B. (0 2) × (1 1)t = 0 × 1 + 2 × 1 = 2 → Bit = 1) bestimmen (z.B. unter Verwendung der ersten Spalte der Walsh-Matrix erster Ordnung) und den dekodierten Wert des elften Bits der kodierten ersten Bitkette als 1 (z.B. (2 0) × (1 1)t = 2 × 1 + 0 × 1 = 2 → Bit = 1). Auf ähnliche Weise kann ECU X den dekodierten Wert des ersten Bits der kodierten Bitketten als 0 (z.B. (0 2) × (1 –1)t = 0 × 1 + 2 × –1 = –2 → Bit = 0) bestimmen (z.B. unter Verwendung der zweiten Spalte der Walsh-Matrix erster Ordnung) und den dekodierten Wert des zweiten Bits der kodierten zweiten Kette als 1 (z.B. (2 0) × (1 –1)t = 2 × 1 + 0 × –1 = 2 → Bit = 1). ECU X kann dann die restlichen neun Bits der kodierten zweiten Bitkette auf ähnliche Weise dekodieren (z.B. kann das dritte Bit der kodierten zweiten Bitkette als (–1 1) × (1 –1)t = –1 × 1 + 1 × –1 = –2 → Bit = 0) dekodiert werden.
  • Da ECU X in der Lage ist, Bitkollisionen zu lösen, kann hier der Zeitschlitzspielraum zwischen Schlitz 0 und Schlitz 1 auf null gesetzt werden, wie oben beschrieben ist. Alternativ dazu kann in einigen Implementierungen der Zeitschlitzspielraum auf weniger als null verringert werden (z.B. so dass Kollisionen induziert werden). Beispielsweise kann ein Sensor konfiguriert sein, um Übertragen in einem Zeitschlitz zu beginnen, bevor ein anderer Sensor Übertragen in einem Zeitschlitz direkt vor dem Zeitschlitz beendet. Auf diese Weise kann der Durchsatz weiter erhöht werden. In solch einem Fall kann jedoch eine Begrenzung für einen Takt im ungünstigsten Fall implementiert werden, um sicherzustellen, dass ein erster Zeitschlitz (z.B. Schlitz N – 2) nicht einen dritten Zeitschlitz (z.B. Schlitz N) stört, da im Fall einer solchen Störung Code-Diversität verloren ginge. Mit anderen Worten kann bei einem Takt im schlimmsten Fall Zeitschlitz N – 2 nicht Zeitschlitz N stören (d.h. ein schlechtester Startzeitpunkt einer Übertragung in Zeitschlitz N muss nach einem schlechtesten Endzeitpunkt einer Übertragung in Schlitz N – 2 plus einem Schlitzspielraum) sein.
  • Zusätzlich oder alternativ dazu kann ein Synchronisationsimpuls weggelassen werden (z.B. weil keine TDMA-Organisation mit dem Synchronisationsimpuls erforderlich ist, weil Überlappungen erlaubt sind). In solch einem Fall kann ein Sensorsystem vereinfacht werden (z.B. weil Sensor 210 den Synchronisationsimpuls nicht detektieren muss oder eine variierende Versorgungsspannung verwalten muss, da ECU 220 den Synchronisationsimpuls eventuell nicht erzeugen muss und den Synchronisationsimpuls nicht mit einer Versorgungsspannung schalten muss, usw.) und/oder der Durchsatz kann weiter erhöht werden (z.B. weil kein Abschnitt eines Synchronisationszeitraums für den Synchronisationsimpuls reserviert werden muss).
  • Auf diese Weise kann Walsh-Kodierung unter Verwendung einer Walsh-Matrix erster Ordnung zum Übertragen von Sensordaten unter Verwendung von PSI5 verwendet werden, sodass eine Durchsatzmenge erhöht und/oder eine Taktgenauigkeit gelockert werden kann (z.B. im Vergleich zur Verwendung von Manchester-Kodierung für PSI5). Wie oben beschrieben kann die Verwendung von Manchester-Kodierung für PSI5-Standard P10P-500-3L die Durchsatzmenge für einen gegebenen Sensor auf 26 kbps begrenzen, auch bei einer optimalen Bedingung (z.B. optimaler Taktgenauigkeit, optimalen Zeitschlitzdauern, optimalen Zeitschlitzspielräumen usw.), während die Verwendung von Walsh-Kodierung für PSI5-Standard P10P-500-3L einen Durchsatz von 32 kbps ermöglichen kann: bei einer gegebenen Synchronisationsperiode von 500 µs, einem Synchronisationsimpuls von 50 µs und unter Verwendung einer Taktgenauigkeitsanforderung von ±10% können etwa 400 µs für eine Übertragung von Sensordaten verfügbar sein (z.B. (500 µs – 50 µs) × 0,9 = 400 µs). Somit kann mit drei verfügbaren Zeitschlitzen und eines Zeitschlitzspielraums von null jeder Zeitschlitz etwa 133 µs lang sein (z.B. 400 µs/3). Bei einer Datenrate von 125 kbps sind etwa 16 Bit pro Rahmen verfügbar (z.B. 133 µs × 125 kbps = 16 Bit). Daher kann die Durchsatzmenge etwa 32 kbps betragen (z.B. 16 Bit pro Rahmen /500 µs = 32 kbps), was einer Durchsatzsteigerung von etwa 23 % im Vergleich zur Verwendung von Manchester-Kodierung entspricht.
  • Wie oben angeführt sind 5A und 5B lediglich als Beispiel angeführt. Andere Beispiele sind möglich und können sich von dem, was in Bezug auf 5A und 5B beschrieben ist, unterscheiden.
  • 6A6C sind Darstellungen, die ein Beispiel 600 einer Walsh-Kodierung und -Dekodierung unter Verwendung einer Walsh-Matrix zweiter Ordnung für PSI5 zeigen. In einigen Implementierungen kann Walsh-Kodierung und -Dekodierung unter Verwendung einer Walsh-Matrix zweiter Ordnung für PSI5 eine erhöhte Durchsatzmenge ermöglichen (z.B. im Vergleich zur Verwendung von Manchester-Kodierung), wie nachstehend beschrieben ist. Zum Zwecke von Beispiel 600 wird davon ausgegangen, dass ein erster Sensor (z.B. Sensor 0), ein zweiter Sensor (z.B. Sensor 1), ein dritter Sensor (z.B. Sensor 2) und ein vierter Sensor mit ECU 220 verbunden sind (z.B. ECU X) und dass jeder Sensor konfiguriert ist, um Walsh-kodierte Daten unter Verwendung von PSI5, in jedem beliebigen Zeitschlitz zu übertragen (z.B. an ECU X). Ferner wird davon ausgegangen, dass Sensor 0 konfiguriert ist, um kodierte Daten unter Verwendung der ersten Spalte der Walsh-Matrix zweiter Ordnung zu kodieren, dass Sensor 1 konfiguriert ist, um Daten unter Verwendung der zweiten Spalte der Walsh-Matrix zweiter Ordnung zu kodieren, dass Sensor 2 konfiguriert ist, um Daten unter Verwendung der dritten Spalte der Walsh-Matrix zweiter Ordnung zu kodieren und dass Sensor 3 konfiguriert ist, um Daten unter Verwendung der vierten Spalte der Walsh-Matrix zweiter Ordnung zu kodieren.
  • Wie in 6A dargestellt kann Sensor 0 unter Verwendung der ersten Spalte der Walsh-Matrix zweiter Ordnung für eine erste Bitkette kodieren (z.B. 01001110100), und zwar als erste Gruppe von Sätzen von kodierten Werten (wobei z.B. jedes Bit als eine Abfolge (ein Satz) von vier Chips mit Werten von 1 oder –1 kodiert ist). Sensor 1, Sensor 2 und Sensor 3 können auf ähnliche Weise unter Verwendung der geeigneten Spalte der Walsh-Matrix zweiter Ordnung für entsprechende Bitketten kodieren. Wie dargestellt wird davon ausgegangen, dass nach Kodierung der Sensordaten Sensor 0, Sensor 1, Sensor 2 und Sensor 3 gleichzeitig (z.B. in einen einzigen Zeitschlitz) eine erste kodierte Bitkette, eine zweite kodierte Bitkette, eine dritte kodierte Bitkette bzw. eine vierte kodierte Bitkette an ECU X übertragen (z.B. durch Modulieren eines Stroms basierend auf den Sätzen von kodierten Werten).
  • 6B umfasst eine Tabelle, die ein Beispiel für eine Weise zeigt, wie Sensor 0, Sensor 1, Sensor 2 und Sensor 3 ihre entsprechenden Bitketten kodieren können, sowie für eine Weise, wie ECU X jedes Bit basierend auf Sätzen von Stromwerten, die von ECU X detektiert werden, kodieren kann. Beispielhafte Berechnungen für ein bestimmtes Bit (z.B. ein erstes Nutzlastbit, das von jedem Sensor übertragen wird) sind in 6C dargestellt.
  • Wie in der Tabelle in 6C zu sehen kann Sensor 0 ein erstes Sensor-0-Nutzlastbit basierend auf der ersten Spalte der Walsh-Matrix zweiter Ordnung kodieren (z.B. 0 → (–1 –1 –1 –1)), Sensor 1 kann ein erstes Sensor-1-Nutzlastbit basierend auf der zweiten Spalte der Walsh-Matrix zweiter Ordnung kodieren (z.B. 0 → (–1 1 –1 –1)), Sensor 2 kann ein erstes Sensor-2-Nutzlastbit basierend auf der dritten Spalte der Walsh-Matrix zweiter Ordnung kodieren (z.B. 0 → (–1 –1 1 1)), Sensor 3 kann ein erstes Sensor-3-Nutzlastbit basierend auf der vierten Spalte der Walsh-Matrix zweiter Ordnung kodieren (z.B. 1 → (1 –1 –1 1)). Jeder Sensor kann dann basierend auf den kodierten Bits einen Strompegel modulieren, der von ECU X detektiert werden soll. Als Ergebnis einer gleichzeitigen Übertragung kann der Strompegel während jedes Chips der ersten Nutzlastbits (–2 –2 –2 2) sein, wie in der Spalte „Summe“ der Tabelle in 6C dargestellt ist (wobei z.B. 2 einen Strom darstellt, der gleich dem neutralen Strom plus zweimal dem Deltastrom ist, und wobei –2 einen Strom darstellt, der gleich dem neutralen Strom minus zweimal dem Leerlaufstrom ist).
  • Wie dargestellt kann ECU X oder eine andere Schaltung den detektierten Strom so begrenzen, dass ECU X einen Satz von Stromwerten (–1 –1 –1 1) bestimmt, der Chips zugeordnet ist, die den ersten Nutzlastbits entsprechen. Wie dargestellt kann ECU X dann basierend auf dem Satz von Stromwerten und den Spalten der Walsh-Matrix zweiter Ordnung einen Korrelationswert für das erste Sensor-0-Nutzlastbit, das erste Sensor-1-Nutzlastbit, das erste Sensor-2-Nutzlastbit und das erste Sensor-3-Nutzlastbit bestimmen. ECU X kann dann jedes dekodierte Nutzlastbit basierend auf den entsprechenden Korrelationswerten bestimmen.
  • Wenn Anwenden des entsprechenden Kodierschemas, das von einem bestimmten Sensor verwendet wird, auf die empfangenen Strompegel einen positiven Korrelationswert ergibt, wird das empfangene Datenbit für den Sensor als logische 1 bestimmt. Wenn der Korrelationswert negativ ist, dann wird das empfangene Datenbit für den Sensor als logische 0 bestimmt. Dies erfolgt für die Kodierschemata jedes Sensors, um alle Datenbits zu bestimmen, die im Zeitschlitz von den Sensoren übertragen werden. Wie dargestellt kann ECU X in Bezug auf das erste Sensor-0-Nutzlastbit einen Korrelationswert von –2 bestimmen und kann das erste Sensor-0-Nutzlastbit als 0 dekodieren (z.B. (–1 –1 –1 1) × (1 1 1 1)t = –1 × 1 + –1 × 1 + –1 × 1 + 1 × 1 = –2 → Bit = 0). Wie ferner dargestellt kann ECU X in Bezug auf das erste Sensor-1-Nutzlastbit Korrelationswert von –2 bestimmen und kann das erste Sensor-1-Nutzlastbit als 0 dekodieren (z.B. (–1 –1 –1 1) × (1 –1 1 –1)t = –1 × 1 + –1 × –1 + –1 × 1 + 1 × –1 = –2 → Bit = 0). Wie dargestellt kann ECU X in Bezug auf das erste Sensor-2-Nutzlastbit einen Korrelationswert von –2 bestimmen und kann das erste Sensor-2-Nutzlastbit als 0 dekodieren (z.B. (–1 –1 –1 1) × (1 1 –1 –1)t = –1 × 1 + –1 × 1 + –1 × –1 + 1 × –1 = –2 → Bit = 0). Wie dargestellt kann ECU X in Bezug auf das erste Sensor-3-Nutzlastbit einen Korrelationswert von 2 bestimmen und kann das erste Sensor-3-Nutzlastbit als 1 dekodieren (z.B. (–1 –1 –1 1) × (1 –1 –1 1)t = 1 × 1 + –1 × –1 + –1 × –1 + 1 × 1 = 2 → Bit = 1). ECU X kann andere Bits auf ähnliche Weise dekodieren.
  • Da ECU X in der Lage ist, gleichzeitig übertragene kodierte Daten aufzulösen, kann hier eine Durchsatzmenge erhöht werden. Auf diese Weise kann Walsh-Kodierung unter Verwendung einer Walsh-Matrix zweiter Ordnung zum Übertragen von Sensordaten unter Verwendung von PSI5 verwendet werden, sodass eine Durchsatzmenge erhöht werden kann (z.B. im Vergleich zur Verwendung von Manchester-Kodierung für PSI5).
  • Darüber hinaus kann die Verwendung von Walsh-Kodierung auf diese Weise eine Technik zur Umsetzung von Strommodulation ermöglichen, die ähnliche ist wie eine CDMA-Technik.
  • Für einen Vergleich mit Manchester-Kodierung wird davon ausgegangen, dass für eine gegebene Synchronisationsperiode von 500 µs mit einem Synchronisationsimpuls von 50 µs und einer Taktgenauigkeitsanforderung von ±10% etwa 400 µs für eine Übertragung von Sensordaten verfügbar sind (z.B. (500 µs – 50 µs) × 0,9 = 400 µs). Ferner wird davon ausgegangen, dass ähnliche wie bei Manchester-Kodierung jeder Chip 4 µs dauert (da z.B. Übertragung bei 125 kbps bei Manchester-Kodierung 8 µs pro Bit erfordern kann, also 4 µs pro Chip). Da Walsh-Kodierung unter Verwendung der Walsh-Matrix zweiter Ordnung 16 µs pro Bit erfordert (z.B. 4 Chips/bit × 4 µs/Chip = 16 µs/bit) und da alle Sensoren während der verfügbaren Synchronisationsperiode gleichzeitig übertragen, ist die verfügbare Bitmenge pro Sensor 25 Bits (z.B. 400 µs/ 16 µs /bit = 25 bit). Daher beträgt der Gesamtdurchsatz pro Sensor 50 kbps (z.B. 25 bit/500 µs = 50 kbps). Dies stellt eine etwa 92%ige Steigerung des Durchsatzes im Vergleich zu Manchester-Kodierung für die gleiche Chipdauer dar (z.B. (50 kbps/26kbps) – 1 = 0,92).
  • Wie oben angeführt dienen 6A6C lediglich als Beispiel. Andere Beispiele sind möglich und können sich von dem unterscheiden, was in Bezug auf 6A6C beschrieben ist.
  • 7 ist ein Flussdiagramm eines beispielhaften Prozesses 700 zum Dekodieren von kodierten ersten Daten basierend auf einem ersten Kodierschema und Dekodieren von kodierten zweiten Daten basierend auf einem zweiten Kodierschema. In einigen Implementierungen können ein oder mehrere Prozessblöcke von 7 von Vorrichtungen von Umgebung 200 ausgeführt werden.
  • Wie in 7 dargestellt kann Prozess 700 Kodieren von ersten Daten unter Verwendung eines ersten Kodierschemas umfassen (Block 710). Beispielsweise kann ein erster Sensor 210 erste Daten basierend auf einem ersten Kodierschema kodieren (z.B. Daten, die vom ersten Sensor 210 abgetastet werden und an ECU 220 übertragen werden sollen). In einigen Implementierungen kann das erste Kodierschema auf einer ersten Spalte einer Walsh-Matrix basieren, wie oben beschrieben ist. In einigen Implementierungen kann der erste Sensor 210 einen Strom modulieren, um die ersten kodierten Daten ECU 220 bereitzustellen, wie oben beschrieben ist.
  • Wie in 7 dargestellt kann Prozess 700 Kodieren von zweiten Daten unter Verwendung eines zweiten Kodierschemas umfassen (Block 720). Beispielsweise kann ein zweiter Sensor 210 zweite Daten (z.B. Daten, die vom zweiten Sensor 210 abgetastet werden und an ECU 220 übertragen werden sollen) basierend auf einem zweiten Kodierschema kodieren. In einigen Implementierungen kann das zweite Kodierschema auf einer zweiten Spalte der Walsh-Matrix basierend, wie oben beschrieben ist. In einigen Implementierungen kann der zweite Sensor 210 den Strom modulieren, um die zweiten kodierten Daten ECU 220 bereitzustellen, wie oben beschrieben ist.
  • Wie in 7 dargestellt kann Prozess 700 Dekodieren der kodierten ersten Daten basierend auf dem ersten Kodierschema und der kodierten zweiten Daten basierend auf dem zweiten Kodierschema umfassen (Block 730). Beispielsweise kann ECU 220 die kodierten ersten Daten basierend auf dem ersten Kodierschema dekodieren und die kodierten zweiten Daten basierend auf dem zweiten Kodierschema dekodieren. In einigen Implementierungen kann ECU 220 die ersten kodierten Daten und die zweiten kodierten Daten basierend auf der ersten Spalte der Walsh-Matrix und der zweiten Spalte der Walsh-Matrix dekodieren, wie oben beschrieben ist.
  • Obwohl 7 beispielhafte Blöcke von Prozess 700 zeigt, kann Prozess 700 in einigen Implementierungen zusätzliche Blöcke, weniger Blöcke, andere Blöcke oder anders angeordnete Blöcke umfassen als in 7 dargestellt. Zusätzlich oder alternativ dazu können zwei oder mehr der Blöcke von Prozess 700 parallel ausgeführt werden.
  • Hierin beschriebene Implementierungen können Walsh-Kodierung zum Übertragen von Sensordaten unter Verwendung von PSI5 verwendet. Die Verwendung von Walsh-Kodierung kann eine erhöhte Durchsatzmenge und/oder eine gelockerte Taktgenauigkeitsanforderung im Vergleich zur Verwendung von Manchester-Kodierung für PSI5 ermöglichen. Außerdem kann die Verwendung von Walsh-Kodierung für PSI5 die Implementierung einer Codemultiplex-(CDMA-)Technik für Strommodulation ermöglichen.
  • Darüber hinaus kann Walsh-Kodierung für PSI5 erhöhte funktionelle Sicherheit zwischen Daten, die von zwei Sensoren übertragen werden (z.B. auf einem einzigen Kanal) bereitstellen. Wenn beispielsweise eine Kombination aus CDMA und TDMA verwendet wird (z.B. durch Kodieren von Daten unter Verwendung einer Walsh-Matrix und Konfigurieren nur eines der beiden Sensoren, um in einem gegebenen Zeitschlitz zu übertragen), kann es sein, dass Sensordaten, die in einem inkorrekten Zeitschlitz gesendet werden, von ECU 220 nicht erkannt werden. Darüber hinaus kann Walsh-Kodierung für PSI5 ein Aufrechterhaltungsverhalten ermöglichen, ohne einen Aufrechterhaltungszähler aufrecht zu erhalten. In einem Fall, in dem ein oder zwei Sensoren Daten übertragen, können die Daten beispielsweise in jeder Synchronisationsperiode unter Verwendung einer anderen Spalte der Walsh-Matrix kodiert werden. Hier kann ein Synchronisationsverlust zu einem nicht erkannten Rahmen führen.
  • Die obige Offenbarung stellt einer Veranschaulichung und Beschreibung bereit, ist aber nicht als erschöpfend oder die Implementierungen genau auf die offenbarte Form begrenzende zu verstehen. Modifikationen und Variationen sind im Lichte der obigen Offenbarung möglich oder können aus der Praxis der Implementierungen hervorgehen. Während beispielsweise hierin beschriebene Implementierungen im Zusammenhang mit Walsh-Matrizes erster und zweiter Ordnung beschrieben sind, kann in einigen Implementierungen eine andere Art von Matrix zum Kodieren von Daten verwendet werden, wie z.B. eine Walsh-Matrix dritter Ordnung, eine Hadamard-Matrix (z.B. eine Quadratmatrix mit Einträgen von –1 oder 1 und zueinander orthogonale Spalten umfassend) oder eine andere Art von Quadratmatrix mit Abmessungen von 2n (z.B. n = 1, 2, 3, 4, etc.), die Werte von 1 und –1 enthält, sodass ein Skalarprodukt beliebiger zweier Spalten gleich null ist.
  • Obwohl bestimmte Kombinationen von Merkmalen in den Ansprüchen angeführt und/oder in der Patentschrift offenbart sind, sind diese Kombinationen nicht als Einschränkung der Offenbarung von möglichen Implementierungen zu verstehen. In der Tat können viele dieser Merkmale auf Weisen kombiniert werden, die nicht spezifisch in den Ansprüchen angeführt und/oder in der Patentschrift offenbart sind. Obwohl jeder nachfolgende angeführte abhängige Anspruch von nur einem Anspruch direkt abhängen kann, umfasst die Offenbarung von möglichen Implementierungen auch Kombinationen von jedem abhängigen Anspruch mit jedem anderen Anspruch im Anspruchssatz.
  • Kein Bestandteil, kein Vorgang oder keine Anweisung, wie hierin verwendet, sollte als entscheidend oder wesentliche angesehen werden, wenn nicht explizit als solches beschrieben. Außerdem sind die Artikel „ein/e“ so zu verstehen, dass sie ein oder mehr Elemente umfassen, und sie können austauschbar mit „ein/e oder mehrere“ verwendet werden. Außerdem umfassen die Bezeichnungen „Gruppe“ und „Satz“ wie hierin verwendet ein oder mehrere Elemente (z.B. zusammengehörende Elemente, unabhängige Elemente, eine Kombination von zusammengehörenden und unabhängigen Elementen usw.) und sie können austauschbar mit „ein/e oder mehrere“ verwendet werden. Wenn nur ein Element gemeint ist, wird die Bezeichnung „ein einzige/r/s“ oder ein ähnlicher Ausdruck verwendet. Außerdem sind die Bezeichnungen „hat“, „haben“ oder dergleichen hierin als offen zu verstehen. Ferner ist der Ausdruck „basierend auf“ als „zumindest teilweise basierend auf“ zu verstehen, sofern nicht explizit anders angegeben ist.

Claims (20)

  1. Sensor, umfassend: eine oder mehrere Komponenten, die eingerichtet sind: Daten unter Verwendung eines ersten Kodierschemas zu kodieren, wobei das erste Kodierschema ein Kodieren eines Datenbits, das in den Daten enthalten ist, unter Verwendung einer ersten Chipabfolge, die einem ersten Satz von Strompegeln entspricht, umfasst, wobei ein zweites Kodierschema von einem anderen Sensor verwendet wird, um andere Daten zu kodieren, wobei das zweite Kodierschema ein Kodieren eines Datenbits, das in den anderen Daten enthalten ist, unter Verwendung einer zweiten Chipabfolge, die einem zweiten Satz von Strompegeln entspricht, umfasst, wobei die erste Chipabfolge und die zweite Chipabfolge unterschiedliche Chipabfolgen sind; und einen Strom basierend auf dem ersten Satz von Strompegeln zu modulieren, um die kodierten Daten bereitzustellen.
  2. Sensor nach Anspruch 1, wobei der Sensor über eine periphere Sensorschnittstelle mit einer Steuereinheit verbunden ist.
  3. Sensor nach Anspruch 1 oder 2, wobei das erste Kodierschema einer Spalte einer Walsh-Matrix zugeordnet ist und das zweite Kodierschema einer anderen Spalte der Walsh-Matrix zugeordnet ist.
  4. Sensor nach einem der Ansprüche 1–3, wobei die eine oder mehreren Komponenten beim Modulieren eines Stroms, um die kodierten Daten bereitzustellen, eingerichtet sind, um: das Datenbit, das in den Daten enthalten ist, in Übereinstimmung mit einer Spalte einer Walsh-Matrix über mehrere Chips zu kodieren, die dem Datenbit zugeordnet sind.
  5. Sensor nach einem der Ansprüche 1–4, wobei die eine Komponente oder die mehreren Komponenten konfiguriert sind, den Strom zu modulieren, um einen ersten modulierten Strom in einem ersten Zeitschlitz aus einer Vielzahl von Zeitschlitzen zu bilden, wobei der andere Sensor eingerichtet ist, den Strom zu modulieren, um einen zweiten modulierten Strom in einem zweiten Zeitschlitz aus der Vielzahl von Zeitschlitzen zu bilden, wobei ein Zeitschlitzabstand zwischen dem ersten Zeitschlitz und dem zweiten Zeitschlitz weniger als oder gleich null ist.
  6. Sensor nach einem der Ansprüche 1–5, wobei die eine oder mehreren Komponenten beim Modulieren des Stroms, um die kodierten Daten bereitzustellen, eingerichtet sind: den Strom während eines ersten Chips, der dem Datenbit zugeordnet ist, das in den Daten enthalten ist, basierend auf einem Strompegel aus dem ersten Satz von Strompegeln zu modulieren, wobei der erste Satz von Strompegeln einen ersten Strompegel und einen zweiten Strompegel umfasst, und der Strompegel der erste Strompegel oder der zweite Strompegel ist, und den Strom während eines zweiten Chips, der dem Datenbit zugeordnet ist, das in den Daten enthalten ist, basierend auf einem anderen Strompegel aus dem ersten Satz von Strompegeln zu modulieren, wobei der andere Strompegel der erste Strompegel oder der zweite Strompegel ist.
  7. Sensor nach einem der Ansprüche 1–6, wobei die eine oder mehreren Komponenten ferner eingerichtet sind: einen neutralen Strom auszugeben, wenn der Sensor keine kodierten Daten bereitstellt, wobei der neutrale Strom auf einem Strompegel ist, der sich von Strompegeln unterscheidet, die im ersten Satz von Strompegeln enthalten sind.
  8. Steuereinheit, umfassend: einen Empfänger, die eingerichtet ist: kodierte Daten zu empfangen, die von einem Sensor bereitgestellt werden, wobei die kodierten Daten vom Sensor basierend auf einem Kodierschema kodiert wurden, das einem Abschnitt einer Hadamard-Matrix zugeordnet ist; und die kodierten Daten unter Verwendung des Abschnitts der Hadamard-Matrix zu dekodieren.
  9. Steuereinheit nach Anspruch 8, wobei der Abschnitt der Hadamard-Matrix eine erste Spalte einer Walsh-Matrix erster Ordnung oder eine zweite Spalte der Walsh-Matrix erster Ordnung ist.
  10. Steuereinheit nach Anspruch 8, wobei der Abschnitt der Hadamard-Matrix eine erste Spalte einer Walsh-Matrix zweiter Ordnung, eine zweite Spalte der Walsh-Matrix zweiter Ordnung, eine dritte Spalte der Walsh-Matrix zweiter Ordnung oder eine vierte Spalte der Walsh-Matrix zweiter Ordnung ist.
  11. Steuereinheit nach einem der Ansprüche 8–10, wobei der Empfänger eingerichtet ist: einen Satz von Stromwerten zu bestimmen, der die kodierten Daten darstellt; einen Satz von Werten aus dem Abschnitt der Hadamard-Matrix zu bestimmen; und den Satz von Stromwerten und den Satz von Werten zu kombinieren, um einen Korrelationswert zu erhalten, der den kodierten Daten zugeordnet ist; und wobei der Empfänger eingerichtet ist, beim Dekodieren der kodierten Daten: die kodierten Daten basierend auf dem Korrelationswert zu dekodieren.
  12. Steuereinheit nach einem der Ansprüche 8–11, wobei der Sensor eingerichtet ist, kodierte Daten in einem ersten Zeitschlitz aus einer Vielzahl von Zeitschlitzen auszugeben, und wobei ein weiterer Sensor eingerichtet ist, andere kodierte Daten in einem zweiten Zeitschlitz aus der Vielzahl von Zeitschlitzen auszugeben, wobei die anderen kodierten Daten von dem anderen Sensor unter Verwendung eines anderen Abschnitts der Hadamard-Matrix kodiert wurden, um die anderen kodierten Daten zu bilden, und wobei ein Zeitschlitzabstand zwischen dem ersten Zeitschlitz und dem zweiten Zeitschlitz weniger als oder gleich null ist; und wobei der Empfänger eingerichtet ist: die anderen kodierten Daten zu empfangen, die von dem anderen Sensor bereitgestellt werden; und die anderen kodierten Daten unter Verwendung des anderen Abschnitts der Hadamard-Matrix zu dekodieren.
  13. Steuereinheit nach einem der Ansprüche 8–11, wobei die kodierten Daten erste kodierte Daten sind, der Sensor ein erster Sensor ist und der Abschnitt der Hadamard-Matrix ein erster Abschnitt der Hadamard-Matrix ist; wobe i der Empfänger ferner eingerichtet ist: zweite kodierte Daten von einem zweiten Sensor zu empfangen, wobei die zweiten kodierten Daten zumindest teilweise gleichzeitig mit den ersten kodierten Daten empfangen werden, und die zweiten kodierten Daten vom zweiten Sensor unter Verwendung eines zweiten Abschnitts der Hadamard-Matrix kodiert wurden, um die zweiten kodierten Daten zu bilden, wobei sich der zweite Abschnitt der Hadamard-Matrix vom ersten Abschnitt der Hadamard-Matrix unterscheidet; und die zweiten kodierten Daten unter Verwendung des zweiten Abschnitts der Hadamard-Matrix zu dekodieren.
  14. Steuereinheit nach einem der Ansprüche 8–13, wobei der Empfänger eingerichtet ist, die kodierten Daten in Form eines modulierten Stroms zu empfangen, der vom Sensor gebildet wurde.
  15. Verfahren, umfassend: Kodieren von ersten Daten unter Verwendung eines ersten Kodierschemas durch einen ersten Sensor, wobei das erste Kodierschema Kodieren eines Datenbits, das in den ersten Daten enthalten ist, basierend auf einer ersten Chipabfolge umfasst, die einem ersten Satz von Strompegeln entspricht; Kodieren von zweiten Daten unter Verwendung eines zweiten Kodierschemas durch einen zweiten Sensor, wobei das zweite Kodierschema Kodieren eines Datenbits, das in den zweiten Daten enthalten ist, basierend auf einer zweiten Chipabfolge umfasst, die einem zweiten Satz von Strompegeln entspricht, wobei sich die erste Chipabfolge von der zweiten Chipabfolge unterscheidet; und Dekodieren der kodierten ersten Daten basierend auf dem ersten Kodierschema und der kodierten zweiten Daten basierend auf dem zweiten Kodierschema durch eine Steuereinheit.
  16. Verfahren nach Anspruch 15, wobei der erste Sensor und der zweite Sensor über eine periphere Sensorschnittstelle mit der Steuereinheit verbunden sind.
  17. Verfahren nach Anspruch 15 oder 16, wobei das erste Kodierschema oder das zweite Kodierschema einer ersten Spalte einer Walsh-Matrix erster Ordnung oder einer zweiten Spalte der Walsh-Matrix erster Ordnung entsprechen.
  18. Verfahren nach Anspruch 15 oder 16, wobei das erste Kodierschema oder das zweite Kodierschema einer ersten Spalte einer Walsh-Matrix zweiter Ordnung, einer zweiten Spalte der Walsh-Matrix zweiter Ordnung, einer dritten Spalte der Walsh-Matrix zweiter Ordnung oder einer vierten Spalte der Walsh-Matrix zweiter Ordnung entsprechen.
  19. Verfahren nach einem der Ansprüche 15–18, wobei das Dekodieren der kodierten ersten Daten umfasst: Bestimmen eines Satzes von Stromwerten, welche die kodierten ersten Daten darstellen; Bestimmen eines Satzes von Werten, die dem ersten Kodierschema zugeordnet sind; und Kombinieren des Satzes von Stromwerten und des Satzes von Werten, um einen Wert zu erhalten, der den kodierten ersten Daten zugeordnet ist; und Dekodieren der kodierten ersten Daten basierend auf dem Wert.
  20. Verfahren nach einem der Ansprüche 15–19, ferner umfassend: Ausgeben eines neutralen Stroms, wenn der erste Sensor keine kodierten Daten bereitstellt, durch den ersten Sensor; und Ausgeben des neutralen Stroms, wenn der zweite Sensor keine kodierten Daten bereitstellt, durch den zweiten Sensor, wobei der neutrale Strom auf einem Strompegel ist, der sich von Strompegeln unterscheidet, die im ersten Satz von Strompegeln und im zweiten Satz von Strompegeln enthalten sind.
DE102016101129.0A 2015-01-23 2016-01-22 Walsh-Kodierung für eine PSI-5-Schnittstelle Active DE102016101129B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/603,964 2015-01-23
US14/603,964 US9647680B2 (en) 2015-01-23 2015-01-23 Walsh encoding for peripheral sensor interface 5

Publications (2)

Publication Number Publication Date
DE102016101129A1 true DE102016101129A1 (de) 2016-07-28
DE102016101129B4 DE102016101129B4 (de) 2024-03-28

Family

ID=56364192

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016101129.0A Active DE102016101129B4 (de) 2015-01-23 2016-01-22 Walsh-Kodierung für eine PSI-5-Schnittstelle

Country Status (2)

Country Link
US (1) US9647680B2 (de)
DE (1) DE102016101129B4 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110419179B (zh) * 2017-03-16 2020-06-16 英国电讯有限公司 发送多个信号的方法和网络
EP3577773B1 (de) 2017-03-16 2020-08-05 British Telecommunications Public Limited Company Rundfunksendung in einem kommunikationsnetzwerk
US11018843B2 (en) * 2019-04-04 2021-05-25 Veoneer Us, Inc. Sensor communication control shaped for EMC compliance

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6127939A (en) 1996-10-14 2000-10-03 Vehicle Enhancement Systems, Inc. Systems and methods for monitoring and controlling tractor/trailer vehicle systems
US6301288B1 (en) * 1997-03-19 2001-10-09 Infineon Technologies Ag Method of chip interleaving in direct sequence spread spectrum communications
US6522683B1 (en) * 2000-08-10 2003-02-18 Qualcomm, Incorporated Method and apparatus for adaptive linear equalization for walsh covered modulation
WO2002030030A2 (en) * 2000-10-04 2002-04-11 Universite Libre De Bruxelles Method and system for transmission in a noisy environment
DE102006026879A1 (de) * 2006-06-09 2007-12-13 Robert Bosch Gmbh Sensor und Verfahren zur Datengewinnung
DE102007058707A1 (de) 2007-12-06 2009-06-10 Infineon Technologies Ag Kapazitätssensor
DE102010029349A1 (de) * 2010-05-27 2011-12-01 Robert Bosch Gmbh Steuereinheit zum Austausch von Daten mit einer Peripherieeinheit, Peripherieeinheit, und Verfahren zum Datenaustausch
DE102011007849A1 (de) * 2011-04-21 2012-10-25 Robert Bosch Gmbh Steuergerät mit digitaler Schnittstelle
US9176621B2 (en) 2011-11-18 2015-11-03 Synaptics Incorporated Flexible timing and multiplexing for a display device comprising an integrated capacitive sensing device
US8842026B2 (en) 2012-12-05 2014-09-23 Infineon Technologies Ag Symbol decoder, threshold estimation and correlation systems and methods
US10012154B2 (en) * 2014-11-13 2018-07-03 Infineon Technologies Ag Reduced power consumption with sensors transmitting data using current modulation

Also Published As

Publication number Publication date
US9647680B2 (en) 2017-05-09
US20160218749A1 (en) 2016-07-28
DE102016101129B4 (de) 2024-03-28

Similar Documents

Publication Publication Date Title
WO2003025950A2 (de) Konzept zur sicheren datenkommunikation zwischen elektronischen bausteinen
DE1774680C3 (de) Vorrichtung zum Ermitteln und gleichzeitigen Codieren eines prioritätshöchsten anfordernden Kanals in einer Datenverarbeitungsanlage
DE102014100994A1 (de) Signalgenerator, Dekodierer, Verfahren zur Erzeugung eines Übertragungssignals und Verfahren zur Bestimmung von Geschwindigkeitsdaten
DE102016101129A1 (de) Walsh-Kodierung für eine PSI-5-Schnittstelle
EP0137208A2 (de) Verfahren zur Umwandlung eines Eingangsbitstromes
EP1371045A1 (de) Vorrichtung zur datenübertragung zwischen fahrzeugsensoren und einem prozessor eines steuergeräts
DE102011083254A1 (de) Verfahren und Vorrichtung zum Koppeln eines ersten Sensors mit zumindest einem zweiten Sensor
DE10219135B4 (de) Vorrichtung und Verfahren zum Erzeugen einer Zufallszahl
DE2809633C3 (de) Gesteuerter Erzeuger von Perioden-Signalbildern
DE112013003477T5 (de) Datenempfangsvorrichtung und Datenkommunikationssystem
DE69729629T2 (de) Datenbuskommunikationsverfahren für feldinstrument
DE2759106C2 (de) Schaltungsanordnung zum Codieren oder Decodieren von Binarinformationen
DE19927751A1 (de) Vorrichtung und Verfahren zum Vorsehen eines Gleichstromsymmetrischen digitalen Codes
DE3003641A1 (de) Elektrisches steuer- oder anzeigesystem
DE19756540A1 (de) Kommunikationsschnittstelle zur seriellen Übertragung digitaler Daten und korrespondierendes Datenübertragungsverfahren
DE102016125044B4 (de) Sensorsteuerung, Sensorsignalempfänger und Sensorsystem
EP3032429B1 (de) Verfahren und vorrichtung zum einlesen eines seriellen datenstroms
DE102017208116A1 (de) Datenübertragungs/Empfangsvorrichtung und Datenübertragungs/Empfangsverfahren
DE102013113512B4 (de) Symboldecodierer, schwellenschätzungs- und korrelationssysteme und -verfahren
DE2461581B2 (de) Adaptives deltamodulationssystem
DE102018213218B4 (de) Kommunikationsvorrichtung und Kommunikationssystem
DE102010012330A1 (de) Übertragungssystem und Übertragungsverfahren zur drahtlosen Übertragung von Signalen in einer Automatisierungsanlage sowie Automatisierungsanlage mit solchem Übertragungssystem
WO2002093394A2 (de) Verfahren zur datenübertragung zwischen einem master und wenigstens einem slave
WO2020120071A1 (de) Netzwerkkommunikationssystem mit bidirektionaler strommodulation zur datenübertragung
EP0459005B1 (de) Verfahren und Anordnung zum Übermitteln von Betriebszustandsinformationen zwischen zentralen und dezentralen Einrichtungen eines Kommunikationssystems

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R084 Declaration of willingness to licence
R018 Grant decision by examination section/examining division