[go: up one dir, main page]

DE102022200893A1 - Verfahren zur Codierung und Decodierung von Daten - Google Patents

Verfahren zur Codierung und Decodierung von Daten Download PDF

Info

Publication number
DE102022200893A1
DE102022200893A1 DE102022200893.6A DE102022200893A DE102022200893A1 DE 102022200893 A1 DE102022200893 A1 DE 102022200893A1 DE 102022200893 A DE102022200893 A DE 102022200893A DE 102022200893 A1 DE102022200893 A1 DE 102022200893A1
Authority
DE
Germany
Prior art keywords
binary
coding
value
predefined
numerical value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102022200893.6A
Other languages
English (en)
Inventor
Michael Bunse
Christian Gerhardt
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102022200893.6A priority Critical patent/DE102022200893A1/de
Priority to PCT/EP2023/051965 priority patent/WO2023144284A1/de
Priority to US18/729,540 priority patent/US20250094361A1/en
Priority to CN202380019097.8A priority patent/CN118614008A/zh
Publication of DE102022200893A1 publication Critical patent/DE102022200893A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3059Digital compression and data reduction techniques where the original information is represented by a subset or similar information, e.g. lossy compression
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/02Conversion to or from weighted codes, i.e. the weight given to a digit depending on the position of the digit within the block or code word
    • H03M7/04Conversion to or from weighted codes, i.e. the weight given to a digit depending on the position of the digit within the block or code word the radix thereof being two
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/40Bus coupling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

Die vorliegende Erfindung betrifft ein Verfahren zur Codierung von Daten und ein Verfahren zur Decodierung von Daten, wobei das Verfahren zur Codierung von Daten die Schritte aufweist: Empfangen eines Datums repräsentierend einen Zahlenwert aus einem vordefinierten maximalen Wertebereich (w_max), Auswählen einer für das Datum geeigneten Codiervorschrift (c1, c2) aus wenigstens einer ersten vordefinierten Codiervorschrift (c1) und einer zweiten vordefinierten Codiervorschrift (c2), Codieren des Zahlenwertes des Datums auf Basis der ausgewählten Codiervorschrift (c1, c2), indem sämtliche Binärstellen des als Binärzahl betrachteten Zahlenwertes ausgelassen werden, welche niederwertiger sind als eine Binärstelle, die zur binären Repräsentation einer unteren Grenze eines Wertebereichs (w1, w2) der ausgewählten Codiervorschrift (c1, c2) verwendet wird und indem sämtliche Binärstellen des als Binärzahl betrachteten Zahlenwertes ausgelassen werden, welche höherwertiger sind als eine Binärstelle, die zur binären Repräsentation einer oberen Grenze des Wertebereichs (w1, w2) der ausgewählten Codiervorschrift (c1, c2) verwendet wird und Erweitern der Binärzahl des codierten Zahlenwertes an einer vordefinierten Position um eine vordefinierte Codierinformation (c0), welche die jeweils verwendete Codiervorschrift (c1, c2) eindeutig identifiziert.

Description

  • Stand der Technik
  • Die vorliegende Erfindung betrifft ein Verfahren zur Codierung von Daten und ein Verfahren zur Decodierung von Daten, insbesondere von Daten, welche mittels des Verfahrens zur Codierung von Daten codiert wurden.
  • Aus dem Stand der Technik ist bekannt, dass Messdaten unterschiedlicher Art zur Übermittlung von Information z. B. von Sensoren an datenverarbeitende Rechnereinheiten über digitale Schnittstellen übertragen werden. Bei einer solchen Übertragung spielen jeweilige Auflösungen und Wertebereiche der zu übertragenen Daten eine wesentliche Rolle.
  • Bei einer gegebenen statischen digitalen Codierung ergibt sich aus der jeweils benötigten Auflösung und dem jeweils erforderlichen Wertebereich eine Anforderung an die Datenübertragungsrate, welche für eine Übertragung von Messdaten mindestens bereitgestellt werden muss. Diesbezügliche Anforderungen sind beispielsweise in der PSI-Spezifikation für peripheren Crash-Sensoren, der SPI-Spezifikation für Inertialsensoren und der SENT-Spezifikation für Drucksensoren usw. festgelegt.
  • Hohe Anforderungen an die Auflösung von Messdaten in Kombination mit einem großen darzustellenden Wertebereich solcher Messdaten führen bei bekannten statischen Definitionen einer digitalen Codierung zu besonders hohen Anforderungen an eine Datenübertragungsrate. Eine sich hieraus ergebende hohe Datenübertragungsrate ist aber nicht zwangsläufig in allen Übertragungssituationen erforderlich. Z. B. liegen Messwerte in bestimmten Betriebszuständen eines Systems häufig in einem relativ kleinen Wertebereich, werden aber in diesem Bereich mit hoher absoluter Genauigkeit benötigt (z. B. sind Druckwerte in einem Bremssystem eines Fahrzeugs in einer überwiegenden Betriebszeit sehr gering, ein geringer Druck soll aber erfasst werden, um eine Bremsanforderung eines Fahrers zu erkennen). Befindet sich das System in Betriebszuständen, in denen ein größerer Wertebereich benötigt wird, kann es hingegen vorkommen, dass Messwerte nicht mehr mit der gleichen absoluten Genauigkeit benötigt werden sondern dass eine äquivalente relative Auflösung ausreicht.
  • Offenbarung der Erfindung
  • Gemäß einem ersten Aspekt der vorliegenden Erfindung wird ein Verfahren zur Codierung von Daten vorgeschlagen, welches besonders vorteilhaft, aber nicht ausschließlich zur Codierung von Messwerten von Sensoren, z. B. von Sensoren von Fahrzeugen, Industrieanlagen, Heimautomatisierungssystemen, usw. einsetzbar ist.
  • Das Verfahren wird beispielsweise mittels einer Auswerteeinheit ausgeführt, welche vorteilhaft als ASIC, FPGA, Prozessor, digitaler Signalprozessor, Mikrocontroller, o. ä., ausgestaltet ist. Das Verfahren ist beispielsweise als Computerprogramm implementiert, welches in einer informationstechnisch an die Auswerteeinheit angebundenen und/oder in einer in die Auswerteeinheit integrierten Speichereinheit abgelegt ist und durch die Auswerteeinheit ausführbar ist.
  • In einem ersten Schritt des erfindungsgemäßen Verfahrens wird ein Datum (welches z. B. von einem Sensor, einer Speichereinheit, einem Computerregister, usw. stammt) empfangen, welches einen Zahlenwert aus einem vordefinierten maximalen Wertebereich repräsentiert. Es sei darauf hingewiesen, dass der maximale Wertebereich ein im Vergleich zu einem Wertebereich ursprünglich erzeugter (Sensor-) Daten eingeschränkter Wertebereich sein kann. Dies ist ggf. dann sinnvoll einsetzbar, wenn eine Auflösung zu codierender Daten höher sein sollte, als in einer nachgelagerten Verarbeitungskette dieser Daten erforderlich ist. Durch eine Reduzierung des ursprünglichen Wertebereichs der Daten auf den für das Verfahren verwendeten maximalen Wertebereich, lässt sich hierdurch eine durch die Daten erzeugte Datenmenge bereits initial reduzieren.
  • In einem zweiten Schritt des erfindungsgemäßen Verfahrens wird eine für das Datum geeignete Codiervorschrift aus wenigstens einer ersten vordefinierten Codiervorschrift und einer zweiten vordefinierten Codiervorschrift ausgewählt, wobei die erste Codiervorschrift zur Codierung eines ersten Wertebereichs vorgesehen ist, dessen untere Grenze der unteren Grenze des maximalen Wertebereichs entspricht und dessen obere Grenze einer Binärzahl entspricht, die wenigstens um eine Binärstelle (oder auch Anzahl von Bits) kleiner als eine Binärzahl ist, welche zur binären Repräsentation der oberen Grenze des maximalen Wertebereichs verwendet wird.
  • Darüber hinaus ist die zweite Codiervorschrift zur Codierung eines zweiten Wertebereichs vorgesehen, dessen untere Grenze einer Binärzahl entspricht, die wenigstens um eine Binärstelle größer als eine Binärzahl ist, welche zur binären Repräsentation der unteren Grenze des maximalen Wertebereichs verwendet wird und dessen obere Grenze der oberen Grenze des maximalen Wertebereichs entspricht. Mit anderen Worten werden durch die erste Codiervorschrift und durch die zweite Codiervorschrift jeweils unterschiedliche Wertebereiche codiert. Die vordefinierten Codiervorschriften sind beispielsweise in vorstehend erwähnter Speichereinheit oder in einer davon abweichenden Speichereinheit abgelegt.
  • Beim Auswählen der Codiervorschrift wird stets diejenige Codiervorschrift ausgewählt, deren Wertebereich den Zahlenwert des Datums enthält, wobei in einem Fall, in dem der Zahlenwert in den Wertebereichen mehrerer Codiervorschriften enthalten ist (da die Wertebereiche beispielsweise Überlappungen aufweisen), diejenige Codiervorschrift ausgewählt wird, welche die kleinste untere Wertebereichsgrenze aufweist. Hierdurch wird sichergestellt, dass ein aktuell zu codierender Zahlenwert stets mit der höchstmöglichen Auflösung codiert wird, so dass ein durch die erfindungsgemäße Codierung erzeugter Gesamtfehler so gering wie möglich gehalten wird.
  • In einem dritten Schritt des erfindungsgemäßen Verfahrens wird der Zahlenwert des Datums auf Basis der ausgewählten Codiervorschrift codiert, indem sämtliche Binärstellen des als Binärzahl betrachteten Zahlenwertes ausgelassen werden, welche niederwertiger sind als die Binärstelle, die zur binären Repräsentation der unteren Grenze des Wertebereichs der ausgewählten Codiervorschrift verwendet wird (also die sogenannten „least significant bits“, kurz LSBs) und indem sämtliche Binärstellen des als Binärzahl betrachteten Zahlenwertes ausgelassen werden, welche höherwertiger sind als die Binärstelle, die zur binären Repräsentation der oberen Grenze des Wertebereichs der ausgewählten Codiervorschrift verwendet wird (also die sogenannten „most significant bits“, kurz MSBs). Das Auslassen der niederwertigen Binärstellen erfolgt vorzugsweise dadurch, dass die Binärstellen des zu codierenden Zahlenwertes um eine entsprechende Anzahl von Binärstellen in Richtung des LSB (d. h., nach rechts) verschoben werden.
  • In einem vierten Schritt des erfindungsgemäßen Verfahrens wird die Binärzahl des codierten Zahlenwertes an einer vordefinierten Position um eine vordefinierte Codierinformation erweitert, welche die jeweils verwendete Codiervorschrift eindeutig identifiziert. Die für die Codierinformation erforderliche Anzahl von Binärstellen ist abhängig von der Anzahl der für das Verfahren verwendeten Codiervorschriften und kann dementsprechend eine oder mehrere Binärstellen im endgültig codierten Zahlenwert einnehmen.
  • Es sei allgemein darauf hingewiesen, dass das erfindungsgemäße Verfahren auch ohne eine binäre Repräsentation und/oder Verarbeitung auf binärer Ebene ausführbar ist und dass die hier erfolgte Beschreibung anhand der binären Repräsentation nur der vereinfachten Erläuterung dient. Entsprechend lässt sich das Verfahren beispielsweise auch in einem dezimalen, hexadezimalen, oktalen, oder in einem davon abweichenden Zahlensystem unter Verwendung äquivalenter Rechenoperationen durchführen.
  • Es versteht sich darüber hinaus, dass ggf. bereits vorhandene Codierungen des empfangenen Datums, dessen Zahlenwert mittels des erfindungsgemäßen Verfahrens zu codieren ist, welche für das erfindungsgemäße Auslassen von Binärstellen und/oder andere Verarbeitungsschritte des erfindungsgemäßen Verfahrens nicht geeignet sind (z. B. eine Zweierkomplementcodierung negativer Zahlenwerte), vor der Verarbeitung durch das erfindungsgemäße Verfahren zunächst teilweise oder vollständig decodiert werden.
  • Das erfindungsgemäße Verfahren bietet u. a. den Vorteil, dass eine Reduzierung einer erforderlichen Datenmenge erreichbar ist, während kleinere Zahlenwerte, die häufig in besonders hoher Genauigkeit vorliegen müssen, in ihrer ursprünglichen (hohen) Auflösung oder mit einem nur geringen Auflösungsverlust codierbar sind. Aus der erfindungsgemäßen Reduzierung der erforderlichen Datenmenge lassen sich beispielweise ein erforderlicher Speicherbedarf und/oder eine erforderliche Datenübertragungsrate reduzieren und/oder eine Datenübertragung beschleunigen.
  • Die Unteransprüche zeigen bevorzugte Weiterbildungen der Erfindung.
  • In einer besonders vorteilhaften Ausgestaltung der vorliegenden Erfindung ist eine Anzahl von Bits, welche für die Codierung der Wertebereiche der jeweiligen Codiervorschriften verwendet wird, für sämtliche Codiervorschriften einheitlich. Dies bietet den Vorteil, dass beispielsweise im Zusammenhang mit einer Übertragung der erfindungsgemäß codierten Daten, eine konstante Bitrate und/oder eine echtzeitfähige Übertragung erreichbar sind, da die Anzahl von Bits pro zu codierendem Zahlenwert nicht variiert.
  • In einer weiteren vorteilhaften Ausgestaltung der vorliegenden Erfindung wird im vorliegenden Verfahren zusätzlich wenigstens eine dritte Codiervorschrift verwendet, welche zur Codierung eines dritten Wertebereichs vorgesehen ist, dessen untere Grenze einer Binärzahl entspricht, die wenigstens um eine Binärstelle größer als eine Binärzahl ist, welche zur binären Repräsentation der unteren Grenze des ersten Wertebereichs verwendet wird und dessen obere Grenze einer Binärzahl entspricht, die wenigstens um eine Binärstelle kleiner als eine Binärzahl ist, welche zur binären Repräsentation der oberen Grenze des zweiten Wertebereichs verwendet wird. Darüber hinaus ist es vorteilhaft möglich, vierte, fünfte oder mehr Codiervorschriften mit jeweils korrespondierenden, voneinander abweichenden Wertebereichen einzusetzen.
  • Eine Anzahl von Binärstellen, welche zwischen jeweiligen binären Repräsentationen der unteren Grenzwerte der jeweiligen Wertebereiche liegt, ist vorteilhaft identisch oder im Wesentlichen identisch. „Im Wesentlichen identisch“ bezieht sich auf solche Fälle, in denen eine identische Anzahl von Binärstellen aufgrund einer für den codierten Zahlenwert vorgesehenen Gesamtzahl von Binärstellen und einer Anzahl verwendeter Codiervorschriften nicht möglich ist. Entsprechend soll hier auch eine annähernd identische Anzahl von Binärstellen enthalten sein. Alternativ ist es denkbar, dass eine jeweilige Anzahl zwischen den unteren Grenzen liegender Binärstellen umso höher ist, je höher die Zahlenwerte der unteren Grenzen der jeweiligen Wertebereiche sind. Auf diese Weise ist es möglich, für geringere Zahlenwerte eine entsprechend höhere Auflösung zu erzielen.
  • Vorteilhaft werden jeweilige untere und/oder obere Grenzen der jeweiligen Wertebereiche in Abhängigkeit aktueller Randbedingungen dynamisch angepasst. Als Randbedingungen kommen beispielsweise im Hinblick auf ein Fahrzeug, welches das erfindungsgemäße Verfahren einsetzt, vorliegende Umweltbedingungen und/oder erkannte kritische Fahrsituationen und/oder eine aktuelle Geschwindigkeit des Fahrzeugs usw. in Frage. Dies ermöglicht jeweils optimierte Anpassungen des erfindungsgemäßen Verfahrens an jeweilige Randbedingungen. Durch das Anpassen der unteren und/oder oberen Grenze lassen sich zum einen Verschiebungen der Wertebereiche für die jeweiligen Codiervorschriften, als auch der Umfang der jeweiligen Wertebereiche optimal anpassen. Eine solche dynamische Anpassung lässt sich beispielsweise durch Hinzufügen einer zusätzlichen Kennung zum codierten Zahlenwert eindeutig identifizieren, sodass eine korrekte Decodierung ermöglicht wird. Alternativ oder zusätzlich ist es besonders vorteilhaft möglich, eine Information über eine solche dynamische Anpassung in einem separaten Datum zu hinterlegen, welches beispielsweise vor einer Übertragung des codierten Zahlenwertes an einen Empfänger des codierten Zahlenwertes übertragen wird. Diese Information wird beispielsweise immer nur bei Änderung der dynamischen Anpassungen der Wertebereiche an einen Empfänger verschickt (z. B. über einen separaten Übertragungsrahmen), sodass der Empfänger eine Decodierung empfangener codierter Zahlenwerte jeweils auf Basis der zuletzt empfangenen Information durchführen kann.
  • Vorzugsweise werden zu codierende negative Zahlenwerte mittels eines Vorzeichenbits gekennzeichnet, durch welches der codierte Zahlenwert an einer vordefinierten Position erweitert wird. Die Position für das Vorzeichenbit, sowie die Position für die Codierinformation und Positionen ggf. weiterer Informationen sind grundsätzlich beliebig festlegbar.
  • Besonders bevorzugt wird das erfindungsgemäße Verfahren zur Codierung von Messwerten von Sensoren und/oder zur Übertragung von Daten zwischen einem Sender und einem Empfänger, insbesondere in einem Fahrzeug oder in einem Heimautomatisierungssystem verwendet. Als Sensoren kommen u.a. Radar- und/oder Lidar- und/oder Ultraschall- und/oder Geschwindigkeits- und/oder Beschleunigungs- und/oder Lage- und/oder Temperatur- und/oder Druck- und/oder weitere Sensoren in Frage.
  • Weiter bevorzugt wird jeder codierte Zahlenwert bei einer Datenübertragung in einem einzigen Übertragungsrahmen (engl. auch als „frame“ bezeichnet) übertragen. Dies ermöglicht eine Übertragung mit besonders geringer Zeitverzögerung, was insbesondere bei zeitkritischen Anwendungen eine wichtige Rolle spielen kann. Dies schließt selbstverständlich nicht aus, dass erfindungsgemäß codierte Zahlenwerte auch in segmentierter Form zwischen einem Sender und einem Empfänger übertragen werden können.
  • Gemäß einem zweiten Aspekt der vorliegenden Erfindung wird ein Verfahren zur Decodierung von Daten vorgeschlagen, wobei die zu decodierenden Daten vorzugsweise Daten sind, welche mittels eines Verfahrens zur Codierung von Daten nach einem der Ansprüche 1 bis 8 codiert wurden.
  • In einem ersten Schritt des erfindungsgemäßen Verfahrens wird ein Datum aufweisend einen codierten Zahlenwert und eine mit dem codierten Zahlenwert korrespondierende Codierinformation empfangen. Der Vorgang des Empfangens und die nachfolgend beschriebene weitere Verarbeitung erfolgen beispielsweise mittels einer Auswerteeinheit, welche vorzugsweise ähnlich oder identisch ausgebildet ist, wie eine vorstehend beschriebene Auswerteeinheit zum Codieren von Daten.
  • In einem zweiten Schritt des erfindungsgemäßen Verfahrens wird eine vordefinierte Decodiervorschrift zum Decodieren des codierten Zahlenwertes aus wenigstens einer ersten vordefinierten Decodiervorschrift und einer zweiten vordefinierten Decodiervorschrift in Abhängigkeit der Codierinformation ausgewählt. Vorteilhaft sind die Codiervorschriften in einer informationstechnisch an die Auswerteeinheit angebundenen Speichereinheit abgelegt. Bevorzugt korrespondieren jeweilige Decodiervorschriften des Verfahrens gemäß dem zweiten Erfindungsaspekt derart mit jeweiligen Codiervorschriften des Verfahrens gemäß dem ersten Erfindungsaspekt, dass mittels der jeweiligen Codiervorschriften codierte Zahlenwerte durch die jeweiligen Decodiervorschriften vollständig oder mit einem durch die Codierung eingeführten Auflösungsfehler rekonstruierbar sind.
  • In einem dritten Schritt des erfindungsgemäßen Verfahrens wird der als Binärzahl betrachtete codierte Zahlenwert um eine durch die ausgewählte Decodiervorschrift festgelegte Anzahl von Binärstellen in Richtung höherwertiger Binärstellen verschoben, um eine decodierte Binärzahl zu erzeugen. Hierbei weist die decodierte Binärzahl eine vordefinierte Anzahl von Zielbinärstellen auf, die wenigstens so groß ist, dass ein bei der Codierung des Zahlenwertes verwendeter vordefinierter maximaler Wertebereich mittels der decodierten Binärzahl repräsentierbar ist. Zudem werden Binärstellen der decodierten Binärzahl, die höherwertiger sind als die durch die verschobene Binärzahl höchste belegte Binärstelle mit Werten von 0 belegt und Binärstellen der decodierten Binärzahl, die niederwertiger sind, als die durch die verschobene Binärzahl niedrigste belegte Binärstelle, werden mit vordefinierten Ersatzwerten belegt. Vorzugsweise werden die Ersatzwerte derart gewählt, dass ein durchschnittlicher Fehler bei der Rekonstruktion der decodierten Zahlenwerte bezogen auf die ursprünglich codierten Zahlenwerte so weit wie möglich minimiert wird, ohne dadurch eine solche Minimierung zwangsläufig vorauszusetzen.
  • Bei der Festlegung der Ersatzwerte ist beispielsweise vorgesehen, jede mittels der Ersatzwerte zu belegende Binärstelle der decodierten Binärzahl mit Werten von 0 zu belegen oder jede mittels der Ersatzwerte zu belegende Binärstelle der decodierten Binärzahl mit Werten von 1 zu belegen. Besonders vorteilhaft ist es auch möglich, die höchstwertige Binärstelle der mit Ersatzwerten zu belegenden Binärstellen der decodierten Binärzahl mit einem Wert von 1 zu belegen und die jeweils anderen mit Ersatzwerten zu belegenden Binärstellen mit einem Wert von 0 zu belegen oder die höchstwertige Binärstelle der mit Ersatzwerten zu belegenden Binärstellen der decodierten Binärzahl mit einem Wert von 0 zu belegen und die jeweils anderen mit Ersatzwerten zu belegenden Binärstellen mit einem Wert von 1 zu belegen.
  • Figurenliste
  • Nachfolgend werden Ausführungsbeispiele der Erfindung unter Bezugnahme auf die begleitende Zeichnung im Detail beschrieben. Dabei zeigen:
    • 1 ein erstes Ausführungsbeispiel für erfindungsgemäße vordefinierte Codiervorschriften und mit diesen korrespondierende vordefinierte Decodiervorschriften; und
    • 2 ein zweites Ausführungsbeispiel für erfindungsgemäße vordefinierte Codiervorschriften und mit diesen korrespondierende vordefinierte Decodiervorschriften.
  • Ausführungsformen der Erfindung
  • 1 zeigt ein erstes Ausführungsbeispiel für erfindungsgemäße Codiervorschriften c1, c2 und mit diesen korrespondierende Decodiervorschriften d1, d2.
  • Es sei darauf hingewiesen, dass eine Repräsentation (insbesondere eine Datenrepräsentation, z. B. in einer Speichereinheit) der jeweiligen Codiervorschriften c1, c2 und der mit diesen jeweils korrespondierenden Decodiervorschriften d1, d2 identisch sein kann. In dem hier gezeigten Beispiel sind sämtliche für die Codierung und die Decodierung von Zahlenwerten erforderlichen Informationen in derselben Tabelle vorgesehen, wobei eine Verwendung separater Codiervorschriften c1, c2 und Decodiervorschriften d1, d2, in welchen jeweils nur die für die Codierung oder die Decodierung erforderlichen Informationen enthalten sind, explizit auch möglich ist.
  • Es sei weiter darauf hingewiesen, dass eine erfindungsgemäße Codierung von Zahlenwerten und eine erfindungsgemäße Decodierung von Zahlenwerten unabhängig von einer gemeinsamen oder einer separaten Repräsentation der Codier-/Decodiervorschriften stets unabhängig voneinander durchführbar ist.
  • Die in 1 gezeigte Tabelle weist in ihrer ersten Spalte von links eine fortlaufende Zahl auf, welche die jeweiligen Bits oder Binärstellen eines maximalen Wertebereichs w_max repräsentieren, wobei sich der maximale Wertebereich w_max aus Gründen der Darstellung hier auf einen Betrag, d. h. einen Bereich positiver Zahlenwerte bezieht und ein Vorzeichenbit SIGN zur Repräsentation sowohl positiver, als auch negativer Zahlenwerte als zusätzliches 20tes Bit vorgesehen ist. Es sei in diesem Zusammenhang explizit darauf hingewiesen, dass das erfindungsgemäße Verfahren auch mit maximalen Wertebereichen w_max durchführbar ist, welche keine negativen Zahlenwerte aufweisen (z. B. Druck, Temperatur, Abstand). In solchen Fällen wird das 20te Bit vorzugsweise zusätzlich zur Repräsentation des positiven Wertebereichs verwendet.
  • Die in 1 gezeigte Tabelle weist in ihrer zweiten Spalte von links jeweilige untere Grenzen der jeweiligen Codier-/Decodiervorschriften auf.
  • Die dritte Spalte von links repräsentiert die erste Codiervorschrift c1 und die erste Decodiervorschrift d1 mit einem Wertebereich w1, während die vierte Spalte von links die zweite Codiervorschrift c2 und die zweite Decodiervorschrift d2 mit einem Wertebereich w2 repräsentiert.
  • Ein mittels des erfindungsgemäßen Verfahrens zu codierender Zahlenwert, dessen Betrag innerhalb des maximalen Wertebereichs w_max liegt, wird durch eine Auswerteeinheit als Datum empfangen.
  • Die Auswerteeinheit wählt anhand der Höhe des Zahlenwertes diejenige Codiervorschrift c1, c2 zum Codieren des Zahlenwertes aus, in deren Wertebereich w1, w2 der Zahlenwert fällt, wobei in einem Fall, in dem der Zahlenwert in den Wertebereichen w1, w2 mehrerer Codiervorschriften c1, c2 enthalten ist, stets diejenige Codiervorschrift c1, c2 ausgewählt wird, welche die kleinste untere Wertebereichsgrenze aufweist.
  • In einem konkreten Bespiel wird ein Zahlenwert von 2000 codiert, welcher in den Wertebereichen w1, w2 beider Codiervorschriften c1, c2 enthalten ist. Gemäß vorstehend beschriebener Vorgabe wird zur Codierung des Zahlenwertes entsprechend die erste Codiervorschrift c1 ausgewählt und der Betrag des Zahlenwertes mit 14 Bits (c1_bit1 bis c1_bit14) codiert.
  • Als 15tes Bit wird dem codierten Zahlenwert nun das Vorzeichenbit SIGN hinzugefügt, welches hier einen positiven Wert repräsentiert.
  • Als 16tes Bit wird dem codierten Zahlenwert zusätzlich eine Codierinformation c0 hinzugefügt, welche hier die Verwendung der ersten Codiervorschrift c1 kennzeichnet.
  • Im Falle eines zu codierenden Zahlenwertes von beispielsweise 55555, wird entsprechend die zweite Codiervorschrift c2 zur Codierung verwendet. Die LSBs, d. h. die Bits 1 bis 5 in der vierten Spalte von links entfallen hierbei, so dass aufgrund einer damit einhergehenden Auflösungsreduzierung ein entsprechender Fehler bei der Verwendung der zweiten Codiervorschrift c2 eingeführt wird.
  • Da die Anzahl der für die Codierung vorgesehenen Bits in den jeweiligen Codiervorschriften c1, c2 hier identisch festgelegt ist, werden codierte Zahlenwerte dementsprechend mit einer einheitlichen Bitlänge erzeugt, wodurch sich im Falle einer Übertragung der solchermaßen codierten Zahlenwerte eine konstante Datenrate erreichen lässt.
  • Darüber hinaus ist es beispielsweise möglich, die jeweiligen Grenzen der Wertebereiche w1, w2 in Abhängigkeit aktueller Randbedingungen anzupassen und jeweilige Informationen über die Anpassungen von einem Sender, welcher eingerichtet ist die Codierung von Zahlenwerten durchzuführen, zu einem Empfänger, welcher eingerichtet ist, die Decodierung von Zahlenwerten durchzuführen, mittels zusätzlicher Übertragungsrahmen vom Sender zum Empfänger zu übertragen, sodass eine korrekte Dekodierung übertragener Daten auf Basis dieser Informationen jederzeit sichergestellt ist.
  • Das erfindungsgemäße Verfahren lässt sich besonders vorteilhaft für eine Codierung von Messwerten von Sensoren eines Fahrzeugs einsetzen, welche beispielsweise durch die Sensoren selbst codiert werden und anschließend an ein mit den Sensoren korrespondierendes Steuergerät des Fahrzeugs übertragen werden, in welchem eine Decodierung der Messwerte der Sensoren erfolgt. Besonders bevorzugt wird hierbei jeder codierte Messwert in einem einzelnen Übertragungsrahmen übertragen.
  • Zur Durchführung der Decodierung des codierten Zahlenwertes werden, je nach verwendeter Codiervorschrift c1, c2, zunächst die Binärstellen des codierten Zahlenwertes an die Position verschoben, an der sie sich vor der Codierung befanden. Bei der Codierung ausgelassene MSBs werden bei der Decodierung mittels der ersten Decodiervorschrift d1 mit Werten von „0“ aufgefüllt, während LSBs bei der Decodierung mittels der zweiten Decodiervorschrift d2 mittels Ersatzwerten aufgefüllt werden, welche in der vierten Spalte von links in der Tabelle bezüglich der Bits 1 bis 5 festgelegt sind.
  • 2 zeigt ein zweites Ausführungsbeispiel für erfindungsgemäße vordefinierte Codiervorschriften c1, c2, c3 und mit diesen korrespondierende vordefinierte Decodiervorschriften d1, d2, d3. Aufgrund zahlreicher Übereinstimmungen zwischen der Tabelle in 1 und der Tabelle in 2 werden nachfolgend zur Vermeidung von Wiederholungen nur die Unterschiede zwischen den beiden Tabellen beschrieben.
  • In 2 entspricht der maximale Wertebereich w_max unter Hinzunahme des Vorzeichenbits SIGN nur 16 Bits. Zudem sind eine dritte Codiervorschrift c3 und eine dritte Decodiervorschrift d3 mit einem dritten Wertebereich w3 vorgesehen. Die unteren Grenzen der Wertebereiche w1, w2, w3 sind hier jeweils so festgelegt, dass der Abstand der unteren Grenzen zu höheren Werten hin größer wird. Dies erzielt bei der Codierung von kleineren Werten einen entsprechend geringeren Fehler als bei der Codierung von größeren Werten.
  • Zur eindeutigen Kennzeichnung der jeweils verwendeten Codiervorschrift c1, c2. C3 sind hier entsprechend 2 Bits in der vorzuhaltenden Codierinformation c0 erforderlich.
  • Zudem sind hier teilweise abweichende Ersatzwerte im Vergleich zur Tabelle in 1 definiert.

Claims (10)

  1. Verfahren zur Codierung von Daten aufweisend die Schritte: • Empfangen eines Datums repräsentierend einen Zahlenwert aus einem vordefinierten maximalen Wertebereich (w_max), • Auswählen einer für das Datum geeigneten Codiervorschrift (c1, c2) aus wenigstens einer ersten vordefinierten Codiervorschrift (c1) und einer zweiten vordefinierten Codiervorschrift (c2), wobei ◯ die erste Codiervorschrift (c1) zur Codierung eines ersten Wertebereichs (w1) vorgesehen ist, dessen untere Grenze der unteren Grenze des maximalen Wertebereichs (w_max) entspricht und dessen obere Grenze einer Binärzahl entspricht, die wenigstens um eine Binärstelle kleiner als eine Binärzahl ist, welche zur binären Repräsentation der oberen Grenze des maximalen Wertebereichs (w_max) verwendet wird, ◯ die zweite Codiervorschrift (c2) zur Codierung eines zweiten Wertebereichs (w2) vorgesehen ist, dessen untere Grenze einer Binärzahl entspricht, die wenigstens um eine Binärstelle größer als eine Binärzahl ist, welche zur binären Repräsentation der unteren Grenze des maximalen Wertebereichs (w_max) verwendet wird und dessen obere Grenze der oberen Grenze des maximalen Wertebereichs (w_max) entspricht, ◯ diejenige Codiervorschrift (c1, c2) ausgewählt wird, deren Wertebereich (w1, w2) den Zahlenwert des Datums enthält, wobei in einem Fall, in dem der Zahlenwert in den Wertebereichen (w1, w2) mehrerer Codiervorschriften (c1, c2) enthalten ist, diejenige Codiervorschrift (c1, c2) ausgewählt wird, welche die kleinste untere Wertebereichsgrenze aufweist, • Codieren des Zahlenwertes des Datums auf Basis der ausgewählten Codiervorschrift (c1, c2), indem ◯ sämtliche Binärstellen des als Binärzahl betrachteten Zahlenwertes ausgelassen werden, welche niederwertiger sind als die Binärstelle, die zur binären Repräsentation der unteren Grenze des Wertebereichs (w1, w2) der ausgewählten Codiervorschrift (c1, c2) verwendet wird, und ◯ sämtliche Binärstellen des als Binärzahl betrachteten Zahlenwertes ausgelassen werden, welche höherwertiger sind als die Binärstelle, die zur binären Repräsentation der oberen Grenze des Wertebereichs (w1, w2) der ausgewählten Codiervorschrift (c1, c2) verwendet wird, und • Erweitern der Binärzahl des codierten Zahlenwertes an einer vordefinierten Position um eine vordefinierte Codierinformation (c0), welche die jeweils verwendete Codiervorschrift (c1, c2) eindeutig identifiziert.
  2. Verfahren nach Anspruch 1, wobei eine Anzahl von Bits, welche für die Codierung der Wertebereiche (w1, w2) der jeweiligen Codiervorschriften (c1, c2) verwendet wird, für sämtliche Codiervorschriften (c1, c2) einheitlich ist.
  3. Verfahren einem der vorstehenden Ansprüche, wobei zusätzlich wenigstens eine dritte Codiervorschrift (c3) verwendet wird, welche zur Codierung eines dritten Wertebereichs (w3) vorgesehen ist, • dessen untere Grenze einer Binärzahl entspricht, die wenigstens um eine Binärstelle größer als eine Binärzahl ist, welche zur binären Repräsentation der unteren Grenze des ersten Wertebereichs (w1) verwendet wird, und • dessen obere Grenze einer Binärzahl entspricht, die wenigstens um eine Binärstelle kleiner als eine Binärzahl ist, welche zur binären Repräsentation der oberen Grenze des zweiten Wertebereichs (w2) verwendet wird.
  4. Verfahren nach Anspruch 3, wobei eine Anzahl von Binärstellen, welche zwischen jeweiligen binären Repräsentationen der unteren Grenzwerte der jeweiligen Wertebereiche (w1, w2) liegt, • identisch oder im Wesentlichen identisch ist, oder • umso höher ist, je höher die Zahlenwerte der unteren Grenzen der jeweiligen Wertebereiche (w1, w2) sind.
  5. Verfahren nach einem der vorstehenden Ansprüche, wobei jeweilige untere und/oder obere Grenzen der jeweiligen Wertebereiche (w1, w2) in Abhängigkeit aktueller Randbedingungen dynamisch angepasst werden.
  6. Verfahren nach einem der vorstehenden Ansprüche, wobei zu codierende negative Zahlenwerte mittels eines Vorzeichenbits (SIGN) gekennzeichnet werden, durch welches der codierte Zahlenwert an einer vordefinierten Position erweitert wird.
  7. Verfahren nach einem der vorstehenden Ansprüche, wobei das Verfahren • zur Codierung von Messwerten von Sensoren, und/oder • zur Übertragung von Daten zwischen einem Sender und einem Empfänger, insbesondere in einem Fahrzeug oder in einem Heimautomatisierungssystem verwendet wird.
  8. Verfahren nach Anspruch 7, wobei jeder codierte Zahlenwert bei einer Datenübertragung in einem einzigen Übertragungsrahmen übertragen wird.
  9. Verfahren zur Decodierung von Daten aufweisend die Schritte: • Empfangen eines Datums aufweisend einen codierten Zahlenwert und eine mit dem codierten Zahlenwert korrespondierende Codierinformation (c0), • Auswählen einer vordefinierten Decodiervorschrift (d1, d2) zum Decodieren des codierten Zahlenwertes aus wenigstens einer ersten vordefinierten Decodiervorschrift (d1) und einer zweiten vordefinierten Decodiervorschrift (d2) in Abhängigkeit der Codierinformation (c0), • Verschieben des als Binärzahl betrachteten codierten Zahlenwertes um eine durch die ausgewählte Decodiervorschrift (d1, d2) festgelegte Anzahl von Binärstellen in Richtung höherwertiger Binärstellen, um eine decodierte Binärzahl zu erzeugen, wobei • die decodierte Binärzahl eine vordefinierte Anzahl von Zielbinärstellen aufweist, die wenigstens so groß ist, dass ein bei der Codierung des Zahlenwertes verwendeter vordefinierter maximaler Wertebereich (w_max) mittels der decodierten Binärzahl repräsentierbar ist, und • Binärstellen der decodierten Binärzahl, ◯ die höherwertiger sind, als die durch die verschobene Binärzahl höchste belegte Binärstelle, mit Werten von null belegt werden, und ◯ die niederwertiger sind, als die durch die verschobene Binärzahl niedrigste belegte Binärstelle, mit vordefinierten Ersatzwerten belegt werden.
  10. Verfahren nach Anspruch 9, wobei für die Ersatzwerte vorgesehen ist, • jede mittels der Ersatzwerte zu belegende Binärstelle der decodierten Binärzahl mit Werten von 0 zu belegen, oder • jede mittels der Ersatzwerte zu belegende Binärstelle der decodierten Binärzahl mit Werten von 1 zu belegen, oder • die höchstwertige Binärstelle der mit Ersatzwerten zu belegenden Binärstellen der decodierten Binärzahl mit einem Wert von 1 zu belegen und die jeweils anderen mit Ersatzwerten zu belegenden Binärstellen mit einem Wert von 0 zu belegen, oder • die höchstwertige Binärstelle der mit Ersatzwerten zu belegenden Binärstellen der decodierten Binärzahl mit einem Wert von 0 zu belegen und die jeweils anderen mit Ersatzwerten zu belegenden Binärstellen mit einem Wert von 1 zu belegen.
DE102022200893.6A 2022-01-27 2022-01-27 Verfahren zur Codierung und Decodierung von Daten Pending DE102022200893A1 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE102022200893.6A DE102022200893A1 (de) 2022-01-27 2022-01-27 Verfahren zur Codierung und Decodierung von Daten
PCT/EP2023/051965 WO2023144284A1 (de) 2022-01-27 2023-01-27 Verfahren zur codierung und decodierung von daten
US18/729,540 US20250094361A1 (en) 2022-01-27 2023-01-27 Method for encoding and decoding data
CN202380019097.8A CN118614008A (zh) 2022-01-27 2023-01-27 用于给数据编码和解码的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102022200893.6A DE102022200893A1 (de) 2022-01-27 2022-01-27 Verfahren zur Codierung und Decodierung von Daten

Publications (1)

Publication Number Publication Date
DE102022200893A1 true DE102022200893A1 (de) 2023-07-27

Family

ID=85132719

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102022200893.6A Pending DE102022200893A1 (de) 2022-01-27 2022-01-27 Verfahren zur Codierung und Decodierung von Daten

Country Status (4)

Country Link
US (1) US20250094361A1 (de)
CN (1) CN118614008A (de)
DE (1) DE102022200893A1 (de)
WO (1) WO2023144284A1 (de)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005006402B3 (de) 2005-02-11 2006-08-31 Siemens Ag Sensorvorrichtung und System
DE102016201411A1 (de) 2016-01-29 2017-08-03 Robert Bosch Gmbh Verfahren zur Übertragung eines Messwerts eines Sensors, Verfahren zum Empfang des Messwerts, Sensor, Steuergerät

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19914645A1 (de) * 1999-03-31 2000-10-26 Bosch Gmbh Robert Verfahren und Vorrichtung zur Codierung/Decodierung
US7043423B2 (en) * 2002-07-16 2006-05-09 Dolby Laboratories Licensing Corporation Low bit-rate audio coding systems and methods that use expanding quantizers with arithmetic coding
DE102018220701A1 (de) * 2018-11-30 2020-06-04 Robert Bosch Gmbh Diskretisierung von Zahlenwerten mit adaptiver Genauigkeit
TWI803424B (zh) * 2022-09-08 2023-05-21 大陸商廣州印芯半導體技術有限公司 動態影像產生方法及其動態影像感測器

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005006402B3 (de) 2005-02-11 2006-08-31 Siemens Ag Sensorvorrichtung und System
DE102016201411A1 (de) 2016-01-29 2017-08-03 Robert Bosch Gmbh Verfahren zur Übertragung eines Messwerts eines Sensors, Verfahren zum Empfang des Messwerts, Sensor, Steuergerät

Also Published As

Publication number Publication date
WO2023144284A1 (de) 2023-08-03
CN118614008A (zh) 2024-09-06
US20250094361A1 (en) 2025-03-20

Similar Documents

Publication Publication Date Title
DE112012003549B4 (de) Gitterbasiertes Umfeldmodell für ein Fahrzeug
EP2040957B1 (de) Verfahren und vorrichtung zur plausibilitätskontrolle von messwerten im kraftfahrzeugumfeld
EP1514375B1 (de) Verfahren und anordnung zur codierung bzw. decodierung einer folge digitaler daten
DE102018125206A1 (de) Verfahren und vorrichtung zum begrenzen einer auf ein drehbares wellengelenk aufgebrachten last
DE102022200893A1 (de) Verfahren zur Codierung und Decodierung von Daten
EP4114679B1 (de) Verfahren und vorrichtung zur sicheren anzeige von asil-relevanten daten auf einer anzeigevorrichtung eines kraftfahrzeuges
EP3278318A1 (de) Verfahren zum bereitstellen von höheninformationen eines objekts in einem umgebungsbereich eines kraftfahrzeugs an einer kommunikationsschnittstelle, sensoreinrichtung, verarbeitungseinrichtung und kraftfahrzeug
DE102021201497A1 (de) Verfahren und System zur Verarbeitung von Bildinformationen mit einem künstlichen neuronalen Netz
EP1631091B1 (de) Kodierung mehrerer binärer Eingangsdatenworte in ein Ausgangskodewort
EP1111864B1 (de) Kodierung von Haupt- und Zusatzinformationen in einem Bussystem
DE2457215A1 (de) Einrichtung zum synchronisieren einer antenne mit einer digitalen datendarstelleinrichtung
WO2021122512A1 (de) Verfahren zur übertragung einer mehrzahl an signalen sowie verfahren zum empfang einer mehrzahl an signalen
DE102017125136B4 (de) Verfahren und Vorrichtung zum Bereitstellen eines digitalen Sensorsignals eines Ultraschallsensors
DE102021004815B3 (de) Verfahren zum Betreiben einer technischen Anlage und technische Anlage
DE102023203706A1 (de) Verfahren zum Senden und Empfangen von Daten über ein Bussystem, Sender, Empfänger und Bussystem
EP1861974B1 (de) Korrektur von einzelbitfehlern in dpsk-codierten codewörtern anhand der empfangenen kummulativen digitalen summe
DE102019001005A1 (de) Vorrichtung und Verfahren zur Kompression von Sensordaten
DE102023205813A1 (de) Verfahren zum Auswählen einer Kompressionsstrategie zum Komprimieren von Daten einer inertialen Messeinheit
EP1497954B1 (de) Verfahren und vorrichtung zum auffüllen von datenabschnitten mit einem füllmuster und anschliessendem überschreiben mit information, sowie bussystem hierzu
DE102022200560A1 (de) Verfahren zur Bestimmung eines zulässigen Zustandsgrößen-Grenzwerts eines technischen Systems in einem Fahrzeug
DE102009012939A1 (de) Verfahren und Vorrichtung zur Übertragung von drei unabhängigen, digitalen Sensorsignalen
DE102024101206A1 (de) Verfahren und System zur drahtlosen Datenübertragung
DE102013013362A1 (de) Verfahren und Vorrichtung zum komprimierten Übertragen von Bewegungskoordinaten aufweisenden Signalen eines Bedienelements in einem Fahrzeug
DE102023124434A1 (de) Verfahren zum teleoperierten Steuern eines bodengebundenen Personenkraftfahrzeugs
DE102015200954B4 (de) Verfahren zum Verarbeiten von Fahrzeug-zu-X-Nachrichten, Steuerungsvorrichtung und Speichermedium

Legal Events

Date Code Title Description
R163 Identified publications notified