-
Die
Erfindung betrifft ein Verfahren zur digitalen Kommunikation einer
n-Bit breiten Information zwischen zwei Funktionsblöcken eines
leistungselektronischen Bauteils.
-
Leistungselektronische
Bauteile, z.B. Leistungs(halbleiter)schalter, sind heute modular,
bzw. aus verschiedenen Funktionsblöcken aufgebaut. Z.B. wird ein
MOSFET- oder IGBT-Leistungsschalter von
einer Ansteuerschaltung (Treiber) angesteuert, die ein z.B. TTL-Logik-Steuersignal
in ein entsprechendes Treibersignal für den Steuereingang des Leistungsschalters
umsetzt. Ein derartiger Treiber weist mehrere Funktionsblöcke, z.B.
in Form von Teilschaltungen auf, z.B. eine Primär- und Sekundärseite.
Die Primärseite
bereitet hierbei das eingehende Steuersignal auf und die Sekundärseite erzeugt
das Treibersignal für
den Steuereingang, z.B. einen Strom zum Umladen der Gate-Emitter-Kapazität des Leistungsschalters.
-
Da
ein Leistungsschalter in der Regel für hohe Spannungen bzw. Ströme z.B.
im kV- oder kA-Bereich ausgelegt ist, sind entsprechende Funktionsblöcke in der
Regel potentialgetrennt bzw. galvanisch getrennt.
-
In
modernen leistungselektronischen Bauteilen findet heute zunehmend
eine digitale Kommunikation statt. Z.B. wird das Schaltsignal für einen
Leistungsschalter als digitales Kommando von der Primär- zur Sekundärseite der
Treiberschaltung übertragen
oder Zustands- bzw. Messgrößen, wie
der Schaltzustand, die Temperatur oder die am Leistungsschalter
abfallende Spannung, von der Sekundär- zurück zur Primärseite übertragen.
-
Die
Datenübertragung
in entsprechenden Treibern zwischen Primär- und Sekundärseite erfolgt heute
durch von gedämpften
RC-Gliedern erzeugte Impulse.
Hierbei ist keine Fehlerkorrektur möglich. Eine Schaffung von mehreren
getrennten, in die selbe Kommunikationsrichtung gerichteten Datenkanälen, also
die Kommunikation einer n-Bit breiten Information, über den
selben Übertrager
ist ebenso zur Zeit nicht möglich.
-
Zur
digitalen Kommunikation ist unter anderem generell die Wahl eines
geeigneten sogenannten Transferlayers notwendig, um eine entsprechende Kodierung
der zu kommunizierenden Information zu erreichen. Aus dem Gebiet
der Telekommunikation ist eine große Anzahl von Transferlayern
für die
Verwendung z.B. in Aufzeichnungsgeräten, wie Festplatten oder Disketten
bekannt. Viele Transferlayer zielen darauf ab, bei langen Datenpaketen
eine größtmögliche Wahrscheinlichkeit
für eine
Fehlerdetektion bei einem kleinstmöglichen Protokolloverhead zu
erreichen, um eine möglichst
große
Datenrate zu erhalten. Beispielsweise bei einem CD-Laufwerk, aus
beschädigten
kommunizierten, also übertragenen
Datenpakten die Nutzdaten mit hoher Wahrscheinlichkeit rekonstruieren
zu können.
Z.B. hat jeder Sektor auf einer CD 2048 nutzbare Datenbytes, wobei
der Sektor auch dann noch rekonstruiert werden kann, wenn ein Siebtel
der im Sektor enthaltenen Bits beschädigt ist.
-
Ein
geeigneter Transferlayer, also ein geeignetes Verfahren zur digitalen
Kommunikation in einem leistungselektronischen Bauteil sollte aus
einem oder mehreren Datenbits eine Bitfolge erzeugen, die folgenden
Bedienungen genügt:
Nach
einer Störung
muss ein sehr schneller Sync und Resync möglich sein, d.h. der Anfang
von möglichst
vielen aller möglichen
Datenpakete muss zweifelsfrei erkannt werden können.
-
Unter
einem Sync (Synchronisation) soll das sichere Erkennen eines Datenwortes
und somit der definierte Beginn der Informationsauswertung einer Folge
von Datenworten verstanden werden. Unter ReSync (Neu-Synchronisation)
wird das erneute sichere Erkennen beispielhaft nach einer detektierten Störung der Übertragung
oder einer erkannten fehlerhaften Übertragung verstanden.
-
Hohe
Störsicherheit
muss gewährleistet sein,
d.h. jedes mögliche
Datenpaket muss sich in möglichst
vielen Bits von jedem anderen möglichen Datenpaket
unterscheiden. Jedes Datenpaket muss sich dabei von jeder anderen
im Datenstrom vorkommenden Bitkombination möglichst stark unterscheiden,
um einen sicheren Sync, oder nach einer Störung einen Resync zu erreichen.
-
Die
Bitfolge soll hierzu weiterhin gleichanteilfrei sein, um vom Übertragungsmedium
unabhängig zu
sein, d.h. die Anzahl von gesetzten und nicht gesetzten Bits innerhalb
eines Datenpakets oder eines Zeitintervalls muss gleich sein. Die
Erzeugung von Bitfolgen mit einer ungeraden Anzahl an Bits, bei
der ein Datenpaket mit einem überschüssigen gesetzten Bit
auf ein Datenpaket mit einem überschüssigen gelöschten Bit
folgt, widerspricht hierbei der Forderung nach einem schnellen Sync.
Die Verwendung eines externen Scramblers, der den Gleichanteil unterdrückt, führt in die
Kommunikation eine unzulässige Verzögerung ein
und scheidet damit ebenfalls aus.
-
Die
Zeitdauer zwischen der Entscheidung, ein Signal zu senden, und dem
Abschluss des Sendens des Signals muss für mindestens einen der Datenkanäle möglichst
gering sein.
-
Für diesen
Datenkanal muss die maximale Zeit zwischen zwei Vorgängen, bei
denen die im Datenkanal enthaltene Information gesendet wird, ebenfalls
möglichst
gering sein. Die Verwendung eines derartigen geeigneten Transferlayers
in Treibern führt
zu folgenden Vorteilen:
Ein massiv redundantes Senden der Schaltinformation
wird möglich.
Die Sekundärseite
kann, selbst wenn sie einen Befehl fehlinterpretiert hat oder die Primärseite ausfällt, sehr
schnell reagieren und den angeschlossenen Leistungsschalter ausschalten. Sogar
nach Erhalt des ersten Schaltbefehls kann sie einen weiteren Schaltbefehl
abwarten, um wirklich sicherzugehen, bevor sie auf den Schaltbefehl
reagiert.
-
Eine
möglichst
zeitnahe Reaktion der Sekundärseite
auf Fehlermeldungen/Schaltbefehle von der Primärseite ist somit möglich.
-
Ein
geeigneter Transferlayer muss außerdem eine variable Anzahl
an möglichen
Datenpaketen erlauben, um für
unterschiedliche Zwecke eine unterschiedliche Anzahl an Datenkanälen, oder
eine Verwendung von 2 Kanälen
als Hochgeschwindigkeitskanal, zu ermöglichen.
-
Nicht
sinnvoll ist ein in den Datenstrom eingebettetes Taktsignal, da
ein in den Datenstrom eingebetteter Datentakt die Anzahl der pro übertragenem
Datenbit notwendige Anzahl an Bitwechseln verdoppelt und dadurch
die erreichbare Datenübertragungsrate
halbiert. Auch bei der Interpretation eines Datenstroms mit eingebettetem
Taktsignal müssen
Zeitmessungen an den Daten (Entscheidung, ob ein „langes" oder ein „kurzes" Bit vorliegt) vorgenommen
werden, was die minimal notwendige Verarbeitungsgeschwindigkeit
einer den Datenstrom interpretierenden synchronen Logik nicht verringert.
Eine asynchrone Logik, die diese Messungen zuverlässig erledigt,
ist jedoch derzeit nicht in bekannten programmierbaren Logik-Bausteinen
verfügbar.
-
Aufgabe
der vorliegenden Erfindung ist es, ein verbessertes Verfahren zur
digitalen Kommunikation einer n-Bit-breiten Information zwischen
zwei Funktionsblöcken
eines leistungselektronischen Bauteils anzugeben.
-
Die
Aufgabe wird gelöst
durch ein Verfahren gemäß Patentanspruch
1. Das erfindungsgemäße Verfahren
beruht hierbei auf dem Hamming-Code, der eine der Grundlagen der
Fehlerdetektion und -korrektur in digitalen Systemen bildet. Die
Idee des Hamming-Codes beruht auf simplen Paritätstests, bei denen an Nutzdaten
Paritätsdaten
angehängt werden,
welche aussagen, ob die Nutzdaten eine gerade oder ungerade Anzahl
gesetzter Bits aufweisen. Wenn ein Nutzdatenpaket mit mehreren Paritätsbits versehen
wird, um die Wahrscheinlichkeit zu erhöhen, dass Fehler detektiert
werden oder um die fehlerhaften Daten zu rekonstruieren, ist es
sinnvoll, dass sich die einzelnen Paritätsbits aus Mengen von Datenbits
berechnen, die sich maximal von den Mengen der Datenbits unterscheiden, über welchen
die anderen Paritätsbits
gebildet werden. Bei mehreren Paritätsbits pro Datenpaket zur Fehlererkennung
ist es sinnvoll, diese Bits soweit wie möglich im Datenpaket zu verteilen,
um dieses weitgehend gegen lokale Störungen abzusichern. Die Hamming-Distanz ist die Anzahl
von Bits, in denen sich zwei Datenwörter unterscheiden.
-
Im
erfindungsgemäßen Verfahren
sollen n-Bit-breite Informationen kommuniziert werden, d.h. pro
Kommunikationsvorgang sind n Datenbits notwendig. Erfindungsgemäß werden
jedoch sämtliche Datenworte
für n +
1 Daten und zusätzliche
n + 1 Paritätsbits
gemäß dem Hamming-Code
erzeugt. Dies liefert insgesamt 2n+1 mögliche Datenworte.
Die Hälfte
dieser Datenworte, also 2n, besitzen hierbei
einen Gleichanteil, d.h. die Anzahl gesetzter und ungesetzter Bits
im Datenwort ist unterschiedlich. Erfindungsgemäß werden daher nur die verbleibenden
2n Datenworte, die keinen Gleichanteil aufweisen,
also die gleiche Anzahl gesetzter und gelöschter Bits enthalten, in einer
Liste gesammelt. Somit stehen 2n Hamming-Codes
für die
2n Möglichkeiten
der n-bitbreiten Information zur Verfügung. Jedem dieser Datenworte der
Liste wird daher eine der 2n möglichen
n-Bit breiten Informationen zugeordnet. Zur Kommunikation wird nun
das der gewünschten
Information entsprechende Datenwort zwischen den Informationsblöcken kommuniziert.
-
Jedes
Datenwort der Liste transportiert damit n-Bit Nutzinformation, z.B.
also jeweils ein Bit aus jedem Datenkanal, wenn n Datenkanäle vorgesehen sind.
Alle Datenworte sind gleich lang und gleichanteilsfrei. Jedes Datenwort
der Liste unterscheidet sich bei der gegebenen Länge der Datenworte, also 2n
+ 2, von den anderen Datenworten der Liste in möglichst vielen Datenbits. Z.B.
weisen sämtliche Datenpakete
mit 3 Daten- und 3 Paritätsbits
also für n
= 2 Nutzdatenbits eine Hamming-Distanz von 4 untereinander auf.
-
Alle
Datenworte unterscheiden sich außerdem in möglichst vielen Bits von jeder
andern Bit-Kombination, die bei der Übermittlung der Information
auftreten kann. Die Datenworte weisen eine minimale Länge für Datenpakete
auf, die Datenpakete fester Länge
sind, n Bit Nutzinformation transportieren, keinen Gleichanteil
besitzen und einen Sync auf möglichst
viele Folgen von Datenpaketen zulassen und auf einen schnellen Sync
optimiert sind.
-
Durch
Verwendung des erfindungsgemäßen Verfahrens
ist es möglich,
bei einer Datenübertragungsgeschwindigkeit
von beispielhaft 100 Mbit/s gleichzeitig über die gleiche Übertragungsstrecke eine
Schaltinformation für
das leistungselektronische Bauteil repetitiv alle 60 ns zu senden
und 2 Mbyte/s bei 8 Bit/Byte an Nutzinformation zu übertragen.
-
In
der Regel sind für
die Kommunikation nicht alle der 2n möglichen
zu kommunizierenden Informationen gleich wahrscheinlich bzw. gleich
zeitkritisch. Z.B. ist bei einem Leistungsschalter ein Kommando
zur Notabschaltung unwahrscheinlicher als ein normales Ein-/Ausschaltkommando,
ein Kommando zum Auslesen der Temperatur des Leistungsschalter wesentlich
weniger zeitkritisch als das eines Schaltsignals. Die zu kommunizierenden
Datenworte der Liste wiederum unterscheiden sich bezüglich ihrer
Resynchronisationszeiten, d.h. der Zeitspanne zwischen dem Erkennen
eines Kommunikationsfehlers und der Übertragung des nächsten gültigen Datenwortes.
Daher können,
wenn die 2n zu kommunizierenden Informationen
verscheiden wahrscheinlich und/oder zeitkritisch sind, die wahrscheinlichsten und/oder
zeitkritischsten der 2n Informationen denjenigen
Datenworten zugeordnet werden, welche die geringsten Resynchronisationszeiten
aufweisen. So ist vor allem für
die wahrscheinlichsten bzw. zeitkritischsten Informationen eine
geringstmögliche
Resynchronisationszeit bei der Kommunikation gewährleistet.
-
Da
die zu kommunizierende Datenmenge bei leistungselektronischen Bauteilen
im allgemeinen gering ist, eignet sich das erfindungemäße Verfahren insbesondere
zum Übertragen
von 2 Bit oder 3 Bit breiter Information, d.h. für n = 2 oder n = 3.
-
Als
leistungselektronische Bauteile werden insbesondere MOS-FETs oder IGBTs als
Leistungsschalter mit entsprechenden Treibern eingesetzt. Im Falle
eines einzelnen Schalters bzw. Treibers weist dieser eine Primär- und eine
Sekundärseite
auf. Es sind jedoch auch Schaltungsanordnungen bekannt, wo eine
Primärseite
eines Leistungstreibers mehrere Sekundärseiten bedient. Die Information
kann daher zwischen einer Primär-
und mindestens einer Sekundärseite
eines Leistungshalbleiterschalters als Beispiel für Funktionsblöcke übertragen
werden. Durch die Anwendung des erfindungsgemäßen Verfahrens zur Kommunikation
zwischen Primär-
und Sekundärseiten
eines Leistungshalbleiterschalters können diese in ihrem Funktionsumfang
wesentlich erweitert werden, z.B. durch flexiblere Schaltmöglichkeiten, Rückmeldungen
der Sekundär-
zur Primärseite, Temperatur- und Spannungsüberwachung
etc.
-
Daher
kann als Information insbesondere eine Schaltinformation für einen
schaltenden Funktionsblock übertragen
werden. Alternativ oder zusätzlich
kann als Information eine Messinformation übertragen werden.
-
Für eine weitere
Beschreibung der Erfindung wird auf die Ausführungsbeispiele der Zeichnungen verwiesen.
Es zeigen, jeweils in einer schematischen Prinzipskizze:
-
1 das
Blockschaltbild eines zweikanaligen IGBT-Leistungsschalters,
-
2 den
prinzipiellen Aufbau eines Hamming-Codes,
-
3 sämtliche
Kombinationsmöglichkeiten des
Hamming-Codes aus 2 für 3 Nutzbits und 3 Paritätsbits,
-
4 eine
Liste aller Datenpakete aus 3 ohne Gleichanteil
mit zugeordneter Information,
-
5 die Hammingdistanz, in welcher sich die
Datenpakete aus 2 unterscheiden, a) im einzelnen
und b) tabellarisch,
-
6 die Hammingdistanz, in denen sich die Datenpakete
aus 2 von jeder anderen Bitkombination in einem aus
diesen Datenpaketen bestehenden Datenstrom unterscheiden, a) im
einzelnen und b) tabellarisch.
-
1 zeigt
einen elektronischen Leistungsschalter 2, welcher einen
Leistungstreiber (Treiber) 4 und zwei IGBTs 6a,
b zum Schalten je einer Phase eines nicht dargestellten Elektromotors
beinhaltet. Der Treiber 4 weist eine Primärseite 8 und
zwei Sekundärseiten 10a,
b auf. Die Primärseite 8 dient
zum Empfang eines Schaltbefehls 12 für die IGBTs 6a, b von
einer nicht dargestellten Steuereinheit. Die Primärseite 8 übermittelt
den Schaltbefehl 12 in Form von digitaler Information 18 über Kommunikationskanäle 14a,
b zu den Sekundärseiten 10a,
b, welche wiederum über
die Anschlussleitungen 16a, b die IGBTs 6a, b
schalten. Die Information 18 kann nicht nur der Schaltbefehl 12 sein,
sondern auch eine sonstige Information, wie z.B. weitere Steuerbefehle,
Rückmeldungen,
Messwerte oder ähnliches.
-
Sämtliche
im Leistungsschalter 2 kommunizierten Informationen 18 sind
wie folgt aufgebaut: Zunächst
wird die Informationsbreite der digitalen Information 18,
also die Anzahl n der pro Übertragung
zu Übertragenden
Bits bzw. parallelen binären
Informationskanäle
festgelegt. Im Beispiel gilt n = 2. Nun werden erfindungsgemäß alle verfügbaren Hamming-Codes
mit n + 1 = 3 Datenbits und n + 1 = 3 Paritätsbits erzeugt. 2 zeigt
einen entsprechenden Hamming-Code für 2 × (n + 1) = 6 Bit. Das entsprechende
Datenwort W (Zeile 22) hat also 6 Bit an Bitpositionen
1 bis 6 (Zeile 20). Gemäß Hamming-Code werden
Paritätsbits
P an die Bitpositionen 2i, i = 0, 1, 2,
also die Bits 20 = 1, 21 =
2 und 22 = 4 gesetzt. Die verbleibenden
freien Bits 3, 5 und 6 werden mit den drei Datenbits D gefüllt.
-
Die
Zeilen 24a–c
in 2 zeigen die Datenbits D, welche den jeweiligen
Paritätsbits
P zugeordnet sind. So zeigt beispielsweise Zeile 24b, dass
das Paritätsbit
P an der Bitposition 2 für
die Datenbits D an den Bitpositionen 3 und 6 zuständig ist.
-
3 zeigt,
wie sämtliche
derartige 6-Bit-Hamming Codes aus 2 erzeugt
werden. Zeile 20 zeigt wieder die Bitpositionen. Zunächst werden
die Datenbits D an den Positionen 3, 5 und 6 mit sämtlichen
verfügbaren
Binärcodes,
also 23 = 8 gefüllt, also beginnend in Zeile
1 mit 000, Zeile 2 mit 001 usw. bis Zeile 8 mit 111. Nun werden
die Werte des Paritätsbits
P an Position 1 aus den Werten der Datenbits D der Positionen 3
und 5 derart ermittelt, dass sich aus allen drei Bits die Parität 0 ergibt.
Dies wird für
die Paritätsbits
an den Positionen 2 und 4 wiederholt.
-
Aus
den so entstandenen acht Datenworten W werden nun nur diese ausgewählt, welche
keinen Gleichanteil aufweisen, d.h. diejenigen die jeweils drei
Einsen und Nullen aufweisen. Dies sind in 3 die Datenworte
W der Zeilen 2, 3, 5 und 8, in 3 mit einem „X" markiert. Nur diese
vier Datenworte W werden im Kommunikationsverfahren weiter verwendet
und sind in 4 in der Liste 26 gesammelt.
Somit existieren gemäß obigem
Wunsch vier verschiedenen Datenworte W zur Kodierung der n = 2 Bitbreiten
Information 18. Jedem der Datenworte W der Liste 26 wird
daher eine 2Bit-Inforamtion 18, z.B. der Gatezustand der
Gates Ga und Gb der
IGBTs 6a und 6b zugeordnet. Diese vier Datenworte
W werden als Information 18 in 1 zwischen
der Primärseite 8 und
den Sekundärseiten 10a,
b kommuniziert.
-
5a zeigt
die Ermittlung der Hamming-Distanz, also der Anzahl von Bits, unter
welchen sich die vier Datenworte W der aus 4 jeweils
paarweise voneinander unterscheiden. In der ersten Zeile 27 werden
beispielsweise die Datenworte W Nr. 1 und 2 aus 4 miteinander
verglichen, wobei sich ergibt, dass diese sich in den Bitpositionen
2, 3, 4 und 5 unterscheiden, sich also eine Hamming-Distanz von
vier ergibt.
-
Die
Ergebnisse der Einzelauswertung gemäß 5a sind
in 5b dargestellt. Jeweils unterschiedliche Datenworte
unterscheiden sich also stets in jeweils vier Bit.
-
6a zeigt
sämtliche
16 Möglichkeiten,
wie zwei der vier Datenworte W aus 4 in einem
seriellen Datenstrom aufein ander folgen können. Im Diagramm I folgen
im seriellen Datenstrom, angedeutet durch den Pfeil 28 zweimal
die Datenworte W der Nr. 1 aus 4, angedeutet
durch geschweifte Klammern. Die erste Tabellenspalte „1" zeigt die jeweilige Hammingdistanz,
wenn nun ein weiteres Datenwort Nr. 1 in Richtung des Pfeils 28 am
Datenstrom entlanggeschoben wird. In der zweiten Tabellenspalte „2" wird das Datenwort
Nummer 2 entlang des Pfeils 28 am Bitdatenstrom verschoben.
Der Wert 2 in der dritten Zeile von Spalte „2" ergibt sich so beispielsweise, wenn
das Datenwort Nr. 2 um zwei Stellen am Datenstrom verschoben ist,
wie in Tabelle I exemplarisch dargestellt. Gegenüber dem Datenstrom der zwei
aufeinanderfolgenden Datenworte Nr. 1 unterscheidet sich das Datenwort
Nr. 2 an den durch die Pfeile 30 gekennzeichneten Stellen,
d.h. durch 2 Bit. Daher ist in der dritten Zeile der Spalte „2" von Tabelle I der
Wert 2 eingetragen. So werden in Tabelle I für sämtliche Verschiebungen sämtlicher
Datenworte W zum Strom der Worte Nr. 1 – Nr. 1 alle Hamming-Distanzen
berechnet. Anschließend
wird das Minimum in der Tabelle I der Hamming-Distanzen gesucht
und somit die Zahl 2 ermittelt. Die "0" in
der Tabelle wird ignoriert, da an dieser Stelle das betreffende
Datenwert auf sich selbst abgebildet wird. Diese Untersuchungen
werden für
sämtliche
sechzehn Tabellen aus 6a wiederholt. Die Ergebnisse
aller sechzehn Minimalzahlen sind in 6b dargestellt.
Ein Wert ungleich 0 zeigt hierbei, dass ein Datenwort sicher erkannt
wurde, da sich die Bitfolge von jeder anderen möglichen Bitfolge unterscheidet
und somit ein Sync oder ein ReSync durchgeführt werden kann.
-
Ein
Sync kann erfindungsgemäß erfolgen, wenn
die letzten übertragenen
Bits mit einer Länge eines
Datenwortes eines der festgelegten möglichen Datenworte entspricht.
-
Eine
Ausnahme bildet in diesem Beispiel das Datenwort „101010" dessen Beginn nicht
exakt definiert werden kann. Allerdings ist ein Sync bei Beginn eines
anderen Datenwortes möglich.
Alternativ ist auch die Bitfolge als solche als Datenwort zu erkennen,
da diese Bitfolge in keinem anderen gültigen Datenwort enthalten
ist.