-
Die Erfindung betrifft eine integrierte Schaltungsanordnung gemaß Oberbegriff von Anspruch 1.
-
In Bremskraftregelsystemen für Kraftfahrzeuge (ABS) und aktiven Fahrdynamik-Regelungssystemen (ESP) werden in großen Stückzahlen Mikrorechner eingesetzt. Die Mikrorechner sind hochintegrierte vollwertige Computer mit Eingabe-Ausgabe-Elementen, sogenannte Mikrocontroller, die komplexe Regelprogramme abarbeiten. In diesem Zusammenhang wird auf das „Bremsen Handbuch: Elektronische Bremssysteme”, ITT Automotive, Autohaus-Verlag Ottobrunn, 1995, insbesondere Kapitel 5, verwiesen.
-
Das vom Mikrorechner abgearbeitete Programm ist üblicherweise in einem oder mehreren Speicherbauelementen direkt auf dem Chip oder auch extern gespeichert. Zumindest Teile des gespeicherten Programms, insbesondere das Anwenderprogramm (Unterprogramme, Nebenprogramme oder Routinen) mussen auf die speziellen Bedürfnisse des Anwenders, welcher nicht notwendigerweise der Hersteller des Mikrocontrollers ist, zugeschnitten sein. Hierzu wird vom Anwender eine auf die anwenderspezifischen Bedürfnisse angepaßte Programmversion (Maskenversion) erstellt, die dann vom Chiphersteller bei der Massenproduktion fest in den Chip „eingebrannt” wird. Nachteil dieses Verfahrens ist, daß zu einem spateren Zeitpunkt die eingebrannte Programmversion nicht mehr verandert werden kann.
-
Eine großere Flexibilität zur Anderung des Anwenderprogramms liegt vor, wenn der gesamte Anwenderspeicher als Flash-ROM oder als EPROM ausgelegt wird. Ein Beispiel mit einem externen Flash-ROM ohne internes ROM stellt der 8-Bit-Mikro-Controller C509-L der Fa. Infineon Technologies AG dar. Im Gegensatz zu RAM-Speichern können Flash-ROM oder EPROM-Speicher nur gelesen, aber im normalen Betrieb nicht beschrieben werden. Vorteilhafterweise behalten diese Speicherbauelemente aber ihr ”Gedächtnis” auch bis nach Ausschalten der Betriebsspannung. Demgegenüber sind Flash-ROM und EPROM-Speicher jedoch änderbar, d. h. sie erlauben ein neuerliches Beschreiben nach vollständiger Löschung des Speichers. Eine Löschung kann beispielsweise bei einem Flash-ROM durch ein elektrisches Signal, bei einem EPROM durch UV-Bestrahlung des Chips erfolgen. Es ist somit bei einer Verwendung dieser Speicher im Anwenderspeicherbereich auf einfache Weise möglich, unmittelbar vor der Montage des Mikrocontrollers in das Bremssystem eine individuelle Programmversion zu speichern.
-
In
EP 0 917 054 A2 wird ein Computersystem beschrieben, welches einen wiederbeschreibbaren Speicher und einen schreibgeschützten Speicher umfasst. Im wiederbeschreibbaren Speicher wird der Applikationscode einer Anwendung und im schreibgeschützten Speicher der Bootcode des Computersystems hinterlegt. Im Falle der nicht Verfügbarkeit des Applikationscodes, beispielsweise während einer Aktualisierung der Applikationssoftware, wird mittels einer Schalteroperation und einer Jump Funktion auf den schreibgeschützten Speicher umgeschaltet und der darauf hinterlegte Bootcode ausgeführt.
-
Nachteil der hier beschriebenen Mikrocontroller ist der erheblich höhere Stückpreis gegenüber Mikrocontrollern, wie sie weiter oben beschrieben sind, die ohne einen änderbaren ROM-Speicher auskommen. Wie weiter oben erwähnt, muß bei Mikrocontrollern ohne änderbares ROM jedoch mit herkömmlichem ROM bereits bei der Herstellung das Anwenderprogramm in der Endversion zur Verfügung stehen. Somit muß während der Planung eines neuen Projekts die Erstellung des Anwenderprogramms schon zu einem früheren Zeitpunkt beendet sein, als bei Mikrocontrollern mit einem änderbaren ROM.
-
Der vorliegenden Erfindung liegt nun die Aufgabe zugrunde, einen Mikrocontroller vorzuschlagen, der einerseits hinreichend flexibel auf anwenderspezifische Besonderheiten angepaßt werden kann, andererseits aber auch kostengunstig herstellbar ist.
-
Diese Aufgabe wird erfindungsgemaß gelost durch eine integrierte Schaltungsanordnung gemäß Anspruch 1.
-
Die erfindungsgemäße integrierte Schaltungsanordnung (1) in einem Bremskraftregelsystem fur Kraftfahrzeuge mit
- – mindestens einem ein Programm abarbeitenden Rechenwerk,
- – mindestens einem Nur-Lese-Speicherbereich für ein Betriebsprogramm der Schaltungsanordnung und
- – mindestens einem Anwenderspeicherbereich für an eine spezifische Applikation angepaßte Programme
ist gekennzeichnet durch einen Anwenderspeicher, der zusammengesetzt ist aus mindestens einem änderbaren Nur-Lese-Speicher und mindestens einem fest programmierten Nur-Lese-Speicher, wobei ein Verzweigungsmittel zur Unterbrechung des Betriebsprogramms oder des an spezifische Applikationen angepaßten Programms wahrend der Laufzeit und zur Fortsetzung der Programm-Abarbeitung an einer frei bestimmbaren Programmposition im änderbaren Nur-Lese-Speicher vorhanden ist.
-
Unter einem änderbaren Nur-Lese-Speicher wird im Rahmen der vorliegenden Erfindung ein Nur-Lese-Speicher verstanden, der nach Herstellung eines entsprechenden Speicherbausteins noch zumindest einmal geandert werden kann.
-
Ein Rechenwerk gemäß der Erfindung ist beispielsweise ein an sich bekannter Mikroprozessor mit arithmetischer Einheit, Registern, Kontrollbus, Datenbus und Adreßbus.
-
Der Nur-Lese-Speicher für das Betriebsprogramm ist beispielsweise ein maskenprogrammierter Nur-Lese-Speicher (ROM), in den bereits vor der Auslieferung der Schaltungsanordnung Betriebsprogramme fur die Schaltungsanordnung (z. B. Eingabe/Ausgabe-Routinen, Betriebssystemroutinen, Routinen für das CAN-Bushandling etc.) und ggf. Programme bzw. Routinen, die für verschiedene Kraftfahrzeugtypen geeignet sind und daher nicht haufig geändert werden mussen (Betriebs-Software fur die Fahrdynamik- und Bremsdruckregelung), eingeschrieben ist. In der Regel ist dieser Speicherbereich auf der erfindungsgemäßen Schaltungsanordnung integriert. Die Betriebsprogramme stellen ublicherweise das Betriebssystem der Schaltungsanordnung dar. Sie enthalten beispielsweise Grundfunktionen, wie Ein-/Ausgabe-Funktionen, Rechenfunktionen usw..
-
Der Anwenderspeicherbereich ist in mindestens zwei Teilbereiche aufgeteilt, von denen sich ein erster Bereich in mindestens einem anderbaren Nur-Lese-Speicher und ein weiterer Bereich in mindestens einem weiteren fest programmierten Festwertspeicher befindet.
-
Die Betriebsprogramme konnen ebenfalls in mehrere Speicherbausteine aufgeteilt, jedoch ist es zweckmaßig, die Betriebsprogramme und zumindest ein Teil des Anwenderspeicherbereichs in einem gemeinsamen Speicherbaustein, insbesondere in einem fest programmierten integrierten Nur-Lese-Speicherbaustein (ROM) unterzubringen.
-
Unter einem änderbaren Nur-Lese-Speicher im Sinne der Erfindung wird ein nicht fest programmierter Nur-Lese-Speicher verstanden. Ein änderbarer Nur-Lese-Speicher kann mittels spezieller Operationen zumindest einmal beschrieben werden.
-
Beispiele für änderbare Nur-Lese-Speicher sind Flash-ROMs, OTP-ROMs, EEPROMs und EPROMs. Demgegenuber kann ein fest programmiertes Nur-Lese-Speicher nachtraglich, also nach der Fertigung der integrierten Schaltungsanordnung, nicht noch einmal neu beschrieben werden. Beispiele für entsprechende ROMs sind gewöhnliche maskenprogrammierte ROMs oder bereits programmierte OTP-ROMs.
-
Die im fest programmierten Nur-Lese-Speicher fur den Anwender gespeicherten Programme können Hauptprogramme oder auch Unterprogramme (Routinen) sein, die für die spezifische Applikation einer Fahrdynamik-Regelung (ESP, ASR etc.) bzw. einer Bremsdruck-Regelung (z. B. ABS) vorgesehen sind. Vorzugsweise sind im Festwertanwenderspeicher Haupt- und Unterprogramme gespeichert. Der anwenderspezifische fest programmierte Nur-Lese-Speicher kann entweder als separater Baustein realisiert sein oder als Teilbereich in einem Baustein mit fest programmiertem Nur-Lese-Speicher, der auch das Hauptprogramm und insbesondere das Betriebsprogramm enthalten kann.
-
Der änderbare Nur-Lese-Speicher ist kein Schreib-/Lesespeicher, sondern ein Speicherbereich fur zum Beispiel Anwenderprogramme, der im normalen Betrieb ausschließlich gelesen werden kann. Der oder die Bausteine, aus denen der änderbare Nur-Lese-Speicher zusammengesetzt sein kann, sind jedoch zumindest einmal programmierbar, vorzugsweise handelt es ich um mehrfach loschbare Nur-Lese-Speicher, wie beispielsweise Speicherbausteine aus der Gruppe EPROM, EEPROM, oder Flash-ROM.
-
Der Speicherumfang des fest programmierten Nur-Lese-Speichers ist vorzugsweise größer, als der Speicherumfang des anderbaren Nur-Lese-Speicher.
-
Der Anteil des Anwenderprogramms, welcher im fest programmierten Nur-Lese-Speicher gespeichert ist, ist bevorzugt größer, als der Anteil des Anwenderprogramms, der im anderbaren ROM gespeichert ist.
-
Das Bremskraftregelsystem für Kraftfahrzeuge gemäß der Erfindung umfaßt an sich bekannte Mittel zur Regelung der Fahrdynamik des Kraftfahrzeugs, wie beispielsweise eine Gierraten-Regelung (ESP, TCS etc.) oder sogenannte Zentralrechner für Kraftfahrzeuge, die neben der Aufgabe der Bremsenansteuerung weitere zusatzliche Aufgaben erfullen können.
-
Erfindungsgemäß vorgesehen ist ein Verzweigungsmittel, welches vorzugsweise so gestaltet ist, daß das Verzweigungsmittel eine Unterbrechung des Betriebsprogramms oder des an spezifische Applikationen angepaßten Programms herbeiführt und das Programm an einer anderen Stelle, welche zum Beispiel im anderbaren Nur-Lese-Speicherbereich liegt, fortgesetzt wird, welches den nachfolgend beschriebenen Ausfuhrungsarten entspricht.
-
Das Verzweigungsmittel ist in einer bevorzugten Ausführungsform ein Programmteil (bestimmte Anzahl von Programmschritten) im fest programmierten Nur-Lese-Speicher, welcher eine programmierbare Speicherstelle im änderbaren Nur-Lese-Speicher ausliest oder ein oder mehrere Bits an einer Ein-/Ausgabeeinheit abfragt (Portbits). Mit den erhaltenen Daten oder Bits bildet oder errechnet der Programmteil eine Sprungadresse, die in einem fest programmierten Nur-Lese-Speicherbereich oder im Bereich des anderbaren Nur-Lese-Speichers liegt.
-
In einer weiteren bevorzugten Ausfuhrungsform ist das Verzweigungsmittel ein Kontrollmodul, welches den Programmablauf vorzugsweise nur dann unterbricht, wenn das Programm im Bereich des an spezifische Applikationen angepaßten Programmbereichs abgearbeitet wird.
-
Das Kontrollmodul ist zweckmäßigerweise eine elektronische Einheit, die mit dem Rechenwerk verbunden ist. Das Kontrollmodul ist insbesondere eine elektronische Schaltungsanordnung, wobei die elektronische Schaltungsanordnung in der erfindungsgemaßen Schaltungsanordnung integriert oder extern angeordnet sein kann. Abhängig vom internen Aufbau des Rechenwerks ist das Kontrollmodul besonders bevorzugt mit dem Kontroll-, dem Daten- und dem Adreßbus im Rechenwerk verbunden und vergleicht während der Abarbeitung des Programms den Programmzähler mit einem vorgegeben Wert. Dieser Vergleich erfolgt vorzugsweise fortwährend, d. h., der Programmzähler wird laufend uberwacht, insbesondere wird der Vergleich jedoch nur dann durchgefuhrt, wenn das Programm im fest programmierten Nur-Lese-Speicher abgearbeitet wird. In Abhängigkeit des Ergebnisses des Vergleichs wird der Programmablauf entweder geändert oder unverändert fortsetzt. Im Falle einer Änderung des Programmablaufs wird das Programm an einer anderen Programmposition, welche entweder im fest programmierten Nur-Lese-Speicherbereich oder im änderbaren ROM liegt, fortsetzt. Der vorgegebene Vergleichswert und die Adresse der Speicherstelle an der die Programmfortsetzung erfolgt, ist in einem Kontrollspeicher gespeichert, welcher vorzugsweise ein Teil des Kontrollmoduls ist. Vorzugsweise wird der Kontrollspeicher wahrend einer Initialisierungsphase des Programms mit Werten geladen. Diese Werte konnen entweder im fest programmierten Festwertspeicherbereich oder in einem externen oder internen anderbaren ROM gespeichert sein.
-
Das Kontrollmodul ändert vorzugsweise den Programmablauf nur dann, wenn der Kontrollspeicher bereits programmiert ist. Ist der Kontrollspeicher jedoch unprogrammiert oder in einem geloschten Zustand, so wird der Programmablauf gemaß der hier beschriebenen bevorzugten Ausfuhrungsform nicht geändert.
-
Es kann aber auch bevorzugt sein, daß für den Fall, daß das Unterprogramm abgearbeitet ist, das Kontrollmodul den Ablauf des Programms während der Abarbeitung eines Programms im änderbaren ROM mit einem weiteren Wert im Kontrollspeicher vergleicht und in Abhangigkeit des Vergleichergebnis den Programmzähler, den Datenbus und den Adreßbus so mit neuen Werten versieht, so daß das Programm wieder zurückspringt und an einer vorbestimmten Stelle, welche im fest programmierten Festspeicher liegt, fortgesetzt wird. Hierdurch wird gewährleistet, daß nach der Abarbeitung des Unterprogramms das Hauptprogramm fortgeführt wird. Es ist aber auch möglich, daß im anderbaren Nur-Lese-Speicher die Rucksprungadressen bereits fest vorgegeben werden, so daß sich beispielsweise ein Sprungbefehl mit der Rücksprungadresse am Ende des Unterprogramms befindet.
-
Weitere vorteilhafte Ausführungsformen der Erfindung ergeben sich aus den nachfolgenden, anhand von Figuren beschriebenen Beispielen.
-
Es zeigen
-
1 ein Beispiel fur eine erfindungsgemaße integrierte Schaltungsanordnung in schematischer Darstellung und
-
2 ein weiteres Beispiel für eine erfindungsgemäße integrierte Schaltungsanordnung, bei der ein Kontrollmodul auf der Schaltungsanordnung integriert ist.
-
Die integrierte Schaltungsanordnung in 1 weist eine Mikroprozessor-Einheit CPU auf, welche über Ein-Ausgabeeinheiten IO mit der Außenwelt kommunizieren kann. Die Mikroprozessor-Einheit ist mit Speicherbausteinen, wie Schreib-Lese-Speicher RAM, nur Lese-Speicher für das Betriebssystem SYS-ROM, Nur-Lese-Speicher-Element ROM und änderbarer Nur-Lese-Speicher F-ROM1 verbunden, wobei die beiden letztgenannten fur Anwenderprogramme vorgesehen sind.
-
Die erfindungsgemäße integrierte Schaltungsanordnung in 2 enthält uber 1 hinausgehend eine Kontrolleinheit VG, die mit der Mikroprozessor-Einheit CPU verbunden ist. Die Kontrolleinheit weist einen Kontrollspeicher KS auf, der Werte für den Programmzahler und Werte fur Speicheradressen enthalt. Das Kontrollelement ladt diese Werte in den Kontrollspeicher, wenn eine Initialisierungsphase des Betriebsprogrammes oder des Anwenderprogrammes durchlaufen wird. Die Werte fur den Kontrollspeicher werden entweder aus einem zweiten anderbarer Nur-Lese-Speicher F-ROM2 oder einem extern zur integrierten Schaltungsanordnung untergebrachten Speicherbauelement F-VG, welcher vorzugsweise aus einem separaten EPROM oder EEPROM-Bauelement, einem Flash-ROM-Bauelement oder einem OTP-ROM-Bauelement gebildet ist, herausgelesen. Zur näheren Erläuterung der Schnittstellen der integrierten erfindungsgemäßen Schaltungsanordnung ist neben der Ein-/Ausgabeeinheit IO eine weitere Ein-/Ausgabeeinheit dargestellt, die zum Betrieb eines Controller-Area-Network-Busses CAN vorgesehen ist. Wie bei der in 1 dargestellten Ausfuhrungsform ist die Mikroprozessoreinheit mit einem Schreib-Lese-Speicher RAM, einem Nur-Lese-Speicher für Betriebsprogramme, einem Nur-Lese-Speicher für Anwenderprogramm und einem änderbaren ROM für Anwenderprogramme verbunden. Das Nur-Lese-Speicher-Element für Betriebsprogramme ist in 2 unterteilt in vier verschiedene Adreßbereiche. In einer weiteren Ausführungsform von 2 ist es moglich, daß auf ein Nur-Lese-Speicher-Element für Anwenderprogramme verzichtet wird, indem die notwendigen Routinen des Anwenderprogrammes direkt bzw. zusätzlich im System ROM untergebracht werden. Der Nur-Lese-Speicher 2 enthält dann sowohl Programmteile des Betriebssystems als auch Programmteile des Anwenderprogramms. Die Programmteile des Anwenderprogramms sind beispielsweise Teile des Hauptprogramms für den Anwender ROM und zwei oder mehrere Unterprogramme A1, A2, die spezialisierte Routinen beispielsweise für kraftfahrzeugspezifische Gegebenheiten enthalten. Der anderbare Nur-Lese-Speicher F-ROM1 enthalt ebenfalls Routinen des Anwenderprogrammes, die vor dem Einbau beispielsweise in ein Kraftfahrzeug an kraftfahrzeugspezifische Gegebenheiten angepaßt werden können. Auch hier sind in der Regel Unterprogramme A3 gespeichert. Die Kontrolleinheit VG verwaltet in Abhangigkeit der Stellung des Programmzählers den Ablauf des Hauptprogramms. An Programmpunkten, die durch den Kontrollspeicher festgelegt sind, andert das Kontrollelement den Programmablauf in der Weise, daß das Anwenderprogramm unterbrochen wird und ein Unterprogramm, welches entweder im Nur-Lese-Speicherbereich liegt A1, A2 oder im änderbaren ROM liegt A3 abgearbeitet wird. Nach Beendigung des Unterprogramms wird das Programm beispielsweise an der ursprünglichen Stelle des Anwenderprogrammes fortgesetzt. Sind beispielsweise alle Unterprogramme im Nur-Lese-Speicher-Element 2 untergebracht, so kann ganz auf ein anderbarer Nur-Lese-Speicher F-ROM1 verzichtet werden. In diesem Fall wird nur ein erheblich kleinerer änderbarer Speicher benötigt, der die Informationen für die Ausführung der Unterprogramme A1 und A2 enthält.
-
Die erfindungsgemäße Schaltungsanordnung bietet den Vorteil, daß im Vergleich zu Schaltungsanordnungen, bei denen der Anwenderspeicher ausschließlich mit kostenintensiven anderbaren ROMs bestuckt ist, eine wesentlich kostengünstigere Herstellung durch Verlagerung von Speicherplatz aus dem änderbaren ROM in das „feste” ROM erfolgen kann. Je großer dieser Anteil ist, desto großer ist im allgemeinen auch der Kostenvorteil. Gleichzeitig bleibt durch Einsatz einer Kontrolleinheit dabei ein hohes Maß an Flexibilität bezüglich dem Austausch von Programmroutinen erhalten. Erfindungsgemäß werden somit die Vorteile von Mikrocontrollern mit ausschließlich „festen” ROMs mit denen von Mikrocontrollern mit ausschließlich änderbaren ROMs vereint.