-
Die Erfindung bezieht sich auf integrierte Schaltkreise, insbesondere in elektronischen Steuergeräten, die bevorzugt Bestandteile von Kraftfahrzeugsteuergeräten sind. Insbesondere handelt es sich bei den Steuergeräten um Steuergeräte für Kraftfahrzeugbremssysteme. Solche Steuergeräte sind unter anderem zur Durchführung von sicherheitskritischen Regelungen geeignet. Die Kraftfahrzeugsteuergeräte beinhalten bevorzugt Regelungsprogramme, wie ABS, ASR, ESP und dergleichen. Auf Grund des hohen Sicherheitsbedarfs umfassen die Regelungssysteme, welche durch die integrierten Schaltkreise gebildet sind, Sicherheitsschaltkreise, welche einen Ausfall oder einen Fehler erkennen helfen und geeignete Maßnahmen, wie Abschaltung des gesamten Systems oder einen Notbetrieb durch teilweise den Betrieb des gesteuerten Systems erhaltende Maßnahmen einleiten.
-
Die
US 6,658,606 B1 beschreibt ein Verfahren zur Überwachung einer Fehlerkontrolleinheit in einer digitalen Schaltung, wobei ein Fehlerzustand ausgelöst wird und innerhalb eines Zeitfensters auf ein entsprechendes Fehlersignal der Fehlerkontrolleinheit überprüft wird. Im Falle des nicht-Auftretens eines Fehlersignals, wird auf einen Fehler der Fehlerkontrolleinheit geschlossen.
-
In der
US 6,529,046 B1 ist ein Schaltkreis zur Erkennung einer minimalen Pulsbreite und Regeneration beschrieben, wobei erkannt wird, ob ein eingehender Signalpuls innerhalb einer minimalen und einer maximalen Pulsbreite liegt. In diesem Fall wird die Pulsbreite des Signalpulses auf die maximale Pulsbreite erhöht. Eingehende Signalpulse mit einer Pulsbreite, welche kleiner als die minimale Pulsbreite ist, werden ausgefiltert.
-
Die
EP 0 841 750 A1 beschreibt ein Eingangssignalschaltkreis zur Filterung von Störsignalen mittels Auf-/Abwärtszähler.
-
Reglungssysteme mit integrierten Schaltkreisen, die Mikroprozessoren enthalten, sind für die vorstehend geschilderten Aufgaben allgemein üblich. Um Fehlfunktionen vorzubeugen bzw. diese zu erkennen ist es sinnvoll, mindestens zwei Prozessorkerne vorzusehen. Drei oder mehrere Prozessorkerne würden zwar die Sicherheit weiter erhöhen, jedoch ist dies aus Kostengründen in Verbindung mit den sehr hohen im Bereich der Kfz-Technik üblichen Stückzahlen nicht immer erwünscht. Es besteht daher der Bedarf an kostengünstigen Schaltkreisen mit hohem Sicherheitsniveau.
-
Außerordentlich bewährt hat sich zum Beispiel ein Konzept eines Regelungssystems, welches aus zwei integrierten Schaltkreisen besteht, die in separaten Chipgehäusen untergebracht sind. Hierdurch ergibt sich der Vorteil einer räumlichen Trennung von Leistungsbauelementen (PowerFETs etc.) und hochintegrierten Mikroprozessorbauelementen (µC, Speicher usw.).
-
Die fehlerrelevante Kommunikation erfolgt im obigen Beispiel bevorzugt über zwei Fehlerleitungen ERR und ERR_N.
-
Die Erfindung geht von einem obigen System aus und verbessert dieses, um die Störfestigkeit weiter zu verbessern.
-
Diese Aufgabe wird erfindungsgemäß gelöst durch ein Verfahren gemäß Anspruch 1 sowie einen integrierten Schaltkreis gemäß Anspruch 13.
-
Das Regelungssystem kann außerdem einen oder mehrere Überwachungsschaltkreise besitzen, die insbesondere auf einem oder mehreren weiteren separaten Chips untergebracht sind (Watchdog).
-
Im bekannten elektronischen Regler sind Prozessorchip und Leistungschip bevorzugt über die Leitungen ERR und ERR_N verbunden. Dabei muss der Leistungschip in der Lage sein, Pulse vom Prozessorchip, die auf ERR bzw. ERR_N übertragen werden, mit einer minimalen Pulsbreite von beispielsweise Tmin = 30 ns zu erkennen. Es ist möglich, dass externe elektrostatische, magnetische oder elektromagnetische Störungen (z. B. statische Aufladungen, ESD) in das System eingreifen und unerwünschte Auswirkungen haben.
-
Erfindungsgemäß werden Verfahren sowie integrierte Schaltkreise gemäß den unabhängigen Patentansprüchen beschrieben, um die Störfestigkeit, insbesondere die Störfestigkeit der Signale ERR und ERR_N, zu erhöhen. Dies führt zur einer erhöhten Systemverfügbarkeit.
-
Nach einem Grundgedanken der Erfindung werden insbesondere folgende Maßnahmen, einzeln oder in beliebiger Kombination, durchgeführt:
- • Deutliche Verlängerung der minimalen Pulsbreite TMin
- • Filterung der Signale ERR und ERR_N in dem Leistungschip
- • Neudefinition des Watchdog Zeitfensters in dem Leistungschip mit der Einführung der Verzögerungszeit Twindow-Delay
- • Einführung des Blocks „Toggle und Delay“ in der Prozessorchip um die minimale Pulsbreite TMin zu garantieren.
-
Hierdurch ergeben sich folgende Vorteile:
- • Durch die Filterung der Leistungschip-Eingangssignale ERR und ERR_N wird die Störfestigkeit des Systems deutlich verbessert. Besonders der Einfluss von elekrotstatischen, magnetischen oder elektromagnetischen Störungen wird erheblich verringert, da diese in der Regel von kurzer Dauer sind und wegen der neuen, größeren Mindestimpulslänge daher nicht irrtümlich als Fehlersignale interpretiert werden können.
- • Durch das erfindungsgemäße Verfahren wird erreicht, dass es zu keiner Einschränkung der Fehlerüberwachung des Prozessorchips durch den Leistungschip gegenüber der bisherigen, ungefilterten Lösung, kommt. Das heißt, es gehen keine Fehlerimpulse verloren.
-
Der integrierte Schaltkreis umfasst mindestens einen Mikroprozessorchip oder Mehrfachprozessor-Microcontroller und mindestens einen weiteren Baustein, der insbesondere ein integrierter Baustein ist. Der integrierte Baustein umfasst vorzugsweise Leistungsbauelemente und ist daher insbesondere ein mixed-signal-Baustein.
-
Probleme ergeben sich auf Grund der im allgemeinen erheblich höheren Taktfrequenz der Mikroprozessorbausteine gegenüber den mixed-signal-Bausteinen. Hierdurch können aufeinanderfolgende Fehlerereignisse so dicht aufeinanderfolgend sein, dass diese nicht mehr ohne weiteres von sonstigen Störungen unterschieden werden können.
-
Alternativ kann die Erfindung auch insbesondere auf folgende Weise durchgeführt werden:
- • Die digitale Filterung kann durch eine analoge Filterung ersetzt werden.
- • Arbeitet der Microcontroller (Prozessorchip) viel langsamer als der Mixed Signal Chip (Leistungschip), dann kann ohne den „Toggle & Delay“-Block im Mikrocontroller eine digitale Filterung durchgeführt werden.
-
Weitere bevorzugte Ausführungsformen ergeben sich aus den Unteransprüchen und der nachfolgenden Beschreibung der Figuren.
-
Nachfolgend wird die Erfindung an Hand von Beispielen näher erläutert.
-
Es zeigen
- 1 einen Systemüberblick der zusammengeschalteten Chips,
- 2 eine Darstellung der Filtercharakteristik im Zusammenhang mit den Fehlerleitungen und
- 3 ein Diagramm zur Darstellung des Zeitverhaltens der Signale (Timingdiagramm).
-
In 1 ist ein Systemüberblick gegeben:
- Im elektronischen Regler eines Kraftfahrzeugbremssystems ist der Mikrocontroller 1 (Prozessorchip) mit dem Mixed-Signal-IC 2 (Leistungschip) über die Fehlerleitungen 3 und 4 sowie über das SPI-Interface 5 verbunden.
-
Der Mikrocontroller 1 besteht aus zwei unabhängigen Prozessorkernen (Core A und Core B), deren Operationen kontinuierlich durch die Vergleichsblöcke Compare A und Compare B hardwaremäßig überprüft werden. Wird bei dieser Vergleichsoperation ein Fehler erkannt, so muss diese Fehlerinformation über die Leitungen 3 ERR und 4 ERR_N an Leistungschip 2 sicher übertragen werden.
-
Nach dem Verfahren wird ein Fehler bevorzugt dadurch signalisiert, dass der Pegel auf einer Fehlerleitung wechselt (z.B. von logisch „High“ auf „Low“).
-
Insbesondere ist vorgesehen, dass bei jedem Fehler jede der Leitungen 3 ERR und 4 ERR_N einmal den Signalpegel wechselt. Die Pegel auf ERR und ERR_N sind vorzugsweise gegenläufig oder komplementär.
-
Das Mixed Signal IC 2 arbeitet in der Regel und bevorzugt erheblich langsamer als der Mikrocontroller. Aus diesem Grund muss sichergestellt werden, dass die minimale Pulsbreite Tmin auf den Signalleitungen ERR und ERR_N nicht unterschritten wird. Sonst ist es möglich, dass Baustein 2 einen Fehler „übersieht“.
-
Diese beiden Aufgaben werden von den Blöcken „Toggle & Delay“ 6 und 6' erfüllt. Liegen in dem Prozessorchip mehrere Fehler vor, so werden die Pegelwechsel auf ERR und ERR_N verzögert („Delay“), um die minimale Pulsbreite T," zu garantieren.
-
Das Mixed Signal IC filtert jeweils die ERR/ERR_N Signale mit jeweils einer Filtereinrichtung 7, 7'. Diese Filterung erfolgt insbesondere digital. Dabei ist bevorzugt eine Filterzeitkonstante TFilter vorgesehen. Die minimale Pulsbreite Tmin ist bevorzugt viel größer, als der interne Systemtakt des Leistungschips 2.
-
Durch die Filterung der Signale ERR/ERR_N werden vorteilhafterweise äußere Störungen (elektrostatische, magnetische oder elektromagnetische Störungen), unterdrückt und dadurch die Zuverlässigkeit und Verfügbarkeit des Systems erhöht.
-
In den Blöcken „Level Compare“ 8, 8' wird redundant überprüft, ob beide Fehlersignale gegenläufige Pegel haben. Gleiche Pegel auf ERR und ERR_N führen zu einem Fehler und werden außerhalb einer Prüfroutine auf den Signalen „Error Detected“ 9, 9' ausgegeben. Zusätzlich sucht der Block „Pulse Detect“ 10, 10' nach Flanken auf den gefilterten ERR/ERR_N Signalen. Die Signalausgänge von Block „Level-Compare“ 8 und „Puls-Detect“ 10 sind durch einen ODER-Baustein logisch verknüpft und bilden den Ausgang „ERR Detected A“ 9. Entsprechendes gilt für den redundanten Pfad 11'.
-
Im beispielgemäßen elektronischen Regler wird in regelmäßigen Abständen TLoop eine Watchdog-Prüfroutine mit künstlicher Fehlerübertragung über die SPI-Schnittstelle 5 von Prozessorchip 1 zu Leistungschip 2 signalisiert. Während dieser Prüfroutine wird die Fehlererkennung im Mikrocontroller und die Verbindungen über die Error-Leitungen zwischen Leistungschip und Prozessorchip getestet. Im Mikrocontroller wird über per Software angesteuerte Teststrukturen ein Fehler erzeugt, was am Ausgang der Blöcke „Toggle und Delay“ zu einem einmaligen Pegelwechsel auf den ERR/ERRN- Leitungen führt.
-
Während die Prüfroutine („Watchdogübertragung“) aktiv ist, definiert Leistungschip 1 über Bus 5 ein Zeitfenster in Block 50. Innerhalb des Zeitfensters wird als gültiges Fehlersignal zum Testen insbesondere ein Signal angesehen, welches aus genau einem Flankenwechsel auf der gefilterten ERR und der ERR_N-Leitung besteht. Ein Fehler wird durch den Block „Puls Detect“ 10 (bzw. 10' im redundanten Zweig B) erkannt, wenn innerhalb des Zeitfensters keine oder mehr als eine Flanke auf den gefilterten Signalen ERR-Filter oder ERR_N-Filter auftreten (siehe Timing Diagramm in 2). Die Pegelüberwachung 8 ist während der Watchdogübertragung mittels Leitung 18 (18' im redundanten Zweig B) ausgeschaltet, da der Pegelwechsel auf ERR und ERR_N durch unterschiedliche Signallaufzeiten nicht absolut synchron erfolgen kann.
-
Am Ende des durch Block 50 definierten Zeitfensters müssen die Signale ERR/ERR_N wieder gegenläufige Pegel besitzen, da nun die Pegelüberwachung der gefilterten Signale wieder einsetzt.
-
Kommt es außerhalb des Watchdog-Zeitfensters zu einem Pegelwechsel auf den gefilterten Signalen ERR oder ERR_N, so wird dies durch den Block „Puls Detect“ 10 direkt als Fehler erkannt und auf Leitung „Err Detected“ 9 ausgegeben. Um diese Funktionalität herbeizuführen, ist Block 50 mit Block 10 über eine Steuerleitung verbunden.
-
Block „Level-Compare“ 8 ist ebenfalls redundant vorgesehen (siehe Block 8'). Durch Block 8 wird geprüft, ob die Fehlersignale der komplementären Fehlerleitungen beide vorhanden sind. Ist dies nicht der Fall, zum Beispiel wenn eine der Fehlerleitungen defekt ist, wird ein Fehler ausgegeben.
-
In 2 ist gezeigt, wie eine Implementierung der ERR-Filter 7 bzw. 7' erfolgen kann:
- Wie in 1 zu erkennen, ist in Leistungschip 2 die Fehlererkennung für die Leitungen 3 ERR und 4 ERR_N grundsätzlich redundant ausgelegt. Daher ist bevorzugt für jeden Rechnerkern eine eigene Fehlererkennungsschaltung 11 und 11' mit jeweils eigener Fehlerleitung 9 „ERR-Detected A“ und 9' „Err-Detected B“ vorgesehen. Bevorzugt ist zur Senkung der Herstellungskosten in Schaltung 11 der Filter 7 nur für eine der vorhandenen Fehlerleitungen 3 und 4 vorhanden. In Schaltung 11' ist ebenfalls lediglich eine Filterschaltung 7' vorhanden. In beiden Schaltungen 11 und 11' wird der Ausgang des Filters 7 bzw. 7' mit den Verbindungspunkten 12 und 12' über Kreuzleitungen 13 und 13' den Eingängen der „Level-Compare“-Schaltungen 8 und 8' neben den Fehlersignalen 3 und 4 eingangsseitig zugeführt. Hierzu wird also jeweils das Ergebnis der Filteroperation in den Block ERR-Check B 11' zurückgekoppelt. Umgekehrt gilt das gleiche für das ERR_N Filter, dessen Ergebnis in den Block ERR-Check A 11 zurückgekoppelt wird. Die Rückkopplung wird jeweils für den Test auf invertierte Pegel verwendet.
-
ERR-Filter 7 ist bevorzugt als digitaler Vorwärts/Rückwärtszähler ausgeführt, der in Abhängigkeit vom Eingangssignals seinen Zählerstand ändert. Liegt am Eingang des Filters ein Signal mit dem digitalen Low-Pegel an, dann wird der Zählerstand um Eins vermindert. Liegt ein High-Pegel an, dann wird der Zählerstand um Eins erhöht. Die möglichen Zählerstände sind auf den Bereich von 0 bis ZMaxCount begrenzt. In 2 ist ein möglicher Signalverlauf dargestellt. Entsprechendes gilt auch für den Filter 7'.
-
Erreicht der Zählerstand von Filter
7 den Wert Null, dann geht der Ausgang des Filters an Punkt
12 auf Low. Erreicht der Zählerstand den Wert Z
MaxCount, dann geht der Ausgang des Filters auf High. Zusammen mit der verwendeten Taktfrequenz f
Leistungschip ergibt sich eine Filterzeit von
wobei F
CPU die Taktfrequenz des Mikrorechners ist.
Mit dieser Implementierung werden alle Störungen, die kürzer sind als T
Filter und die durch die Abtastung erfasst werden, unterdrückt. Der Zählerstand des Filters ist in
2 in Abhängigkeit vom Eingang des Filters dargestellt.
-
3 stellt ein Timing-Diagramm dar, welches die logischen Pegel der vorhandenen Steuerleitungen zeitabhängig darstellt. An Hand dieser Figur wird nun eine mögliche Definition eines Watchdog-Zeitfensters in Block 50 erläutert. Das Watchdog Zeitfenster in Block „Watchdog Window“ 50 wird vom Prozessorchip 1 durch das SPI-Interface 5 bestimmt. Prozessorchip 1 wählt den Watchdogtransfer durch die Chipselectsignale CSVO_N = low und CSWD_N = high aus.
-
Das Watchdog-Zeitfenster 17 beginnt nach der ersten steigenden Flanke 14 auf dem Taktsignal der SPI-Übertrag SPICLK. Die Verzögerung TSync beinhaltet Signallaufzeiten sowie die Synchronisationszeit zwischen dem externen Takt des SPI-Interface und dem internen Leistungschip Systemtakt.
-
Das Watchdog-Zeitfenster
17 endet an sich nach der steigenden Flanke
15 von CSWD_N. Es muss jedoch sichergestellt werden, dass die Flanken der gefilterten Signale ERR bzw. ERR_N noch innerhalb des aktiven Watchdog-Zeitfensters erkannt werden. Aus diesem Grund schließt sich an den Zeitpunkt von Flanke
15 eine Verzögerungszeit T
WindowDelay an, in der noch die erwartete Flanke verarbeitet wird. Es gilt dabei die folgende Bedingung:
-
Diese Bedingung erfüllt die Anforderungen jedoch nur in einem störungsfreien System. Berücksichtigt man jedoch den Effekt, dass Störungen auf dem Eingangssignal eine zusätzliche Verzögerung hervorrufen, dann erhält man das robusteste und aufwandsgünstigste System wenn
da im gestörten System die vorgestellte Filterverzögerung nie größer werden kann, als die zweifache Filterzeit.
-
Dabei sind folgende Anforderung an die Signalverzögerung innerhalb des Prozessorchips 1 zu stellen:
- Außerhalb der Zeit, während die Fehlerprüfroutine läuft (Watchdogtransfer), führt ein einmaliges Fehlerereignis innerhalb des Prozessorchips 1 immer zu einer Fehlererkennung innerhalb des Leistungschips 2. In diesem Fall muss Prozessorchip 1 lediglich garantieren, dass die minimale Pulslänge TMin auf den Signalen ERR bzw. ERR_N nicht unterschritten wird.
-
Während einer Fehlerprüfroutine (Watchdogtransfer), in der über Bus 5 ein Zeifenster definiert wird, muss garantiert werden, dass neben dem Fehler, der durch die Testprozedur hervorgerufen wird, auch jeder zusätzliche Fehler sicher von Leistungschip 2 erkannt wird. In diesem Fall muss Prozessorchip 1 die Pegel auf den Fehlerleitungen ERR/ERR_N für den ersten auftretenden Fehler einmal ändern. Tritt während der Zeit TMin ein weiterer Fehler in Prozessorchip 1 auf, dann muss dieser Fehler bis zum Ablauf der Zeit TMin verzögert werden. Dann muss Prozessorchip 1 erneut die Signalpegel auf ERR/ERR_N ändern. Dies erfolgt duch die Einrichtung 6 bzw. 6' („Toggle und Delay“). In diesem Fall wird in Leistungschip 2 entweder der zweifache Pegelwechsel während des Watchdogzeitfensters 17 erkannt, oder ein Pegelwechsel befindet sich außerhalb des Zeitfensters 17. In beiden Fällen erkennt Leistungschip 2 den zusätzlichen Fehler.
-
Ein zweimaliger Pegelwechsel im Abstand von TMin reicht damit in allen Fällen aus, um einen Fehler in der Leistungschip zu erkennen. Der Block „Toggle & Delay“ 6 bzw. 6' muss damit neben dem ersten auftretenden Fehler nur einen weiteren Fehler um TMin verzögert an die Leistungschip übertragen.