-
Die Erfindung betrifft ein Verfahren zum Durchführen eines Resets bei sowohl einem Masterrechner wie auch einem zugeordneten Slaverechner, welche beide an einen gemeinsamen Datenbus angeschlossen sind. Darüber hinaus betrifft die Erfindung ein Computerprogramm und einen Masterrechner zum Durchführen dieses Verfahrens.
-
Stand der Technik
-
Im Stand der Technik ist es bekannt, dass sowohl ein Masterrechner wie auch ein Slaverechner an einen gemeinsamen Datenbus angeschlossen sein können. Bei einer derartigen Hardwarekonstellation müssen die beiden Rechner grundsätzlich mit unterschiedlichen Resetkonfigurationen, nachfolgend als Masterresetkonfiguration beziehungsweise als Slaveresetkonfiguration bezeichnet, konfigurierbar sein. Grundsätzlich verfügen die beiden Rechner über interne Speicher, über welche interne Standard-Resetkonfigurationen abrufbar sind. Aufgrund der angesprochenen Hardwarekonstellation kann es jedoch bedingt sein, dass bei keinem der beiden Rechner oder zumindest bei dem Slaverechner die interne Resetkonfiguration nicht nutzbar ist. Dies hat dann den Nachteil, dass ein gemeinsamer Betrieb von sowohl dem Masterrechner wie auch dem Slaverechner an dem gemeinsamen Datenbus nicht möglich wäre.
-
Ausgehend von diesem Stand der Technik ist es die Aufgabe der Erfindung, ein bekanntes Verfahren zum Durchführen eines Resets bei sowohl einem Masterrechner wie auch bei einem Slaverechner, welche beide an einen gemeinsamen Datenbus angeschlossen sind, derart weiterzubilden, dass der Master- und der Slaverechner mit unterschiedlichen Resetkonfigurationen konfigurierbar sind, auch wenn insbesondere der Slaverechner keine interne Slaveresetkonfiguration durchführen kann.
-
Diese Aufgabe wird durch das in Patentanspruch 1 beanspruchte Verfahren gelöst. Dieses Verfahren ist dadurch gekennzeichnet, dass der Slaverechner mit einer Slaveresetkonfiguration konfiguriert wird, welche durch den zuvor reset-konfigurierten Masterrechner über den Datenbus bereitgestellt wird.
-
Es sei an dieser Stelle darauf hingewiesen, dass der Datenbus während der Konfigurierung von sowohl dem Masterrechner wie auch dem Slaverechner für einen üblichen Datenverkehr, wie er nach der Konfigurierung bei einem normalen Betrieb der beiden Rechner üblich ist, gesperrt ist. Vielmehr fungiert der Datenbus insbesondere während der Konfigurierung des Masterbusses lediglich als einfache elektrische Leitung.
-
Vorteile der Erfindung
-
Die Erfindung sieht eine zeitlich nacheinander erfolgende Konfigurierung der beiden Rechner vor, um auf diese Weise eine Konfigurierung des Slaverechner durch den zuvor konfigurierten Masterrechner zu ermöglichen. Diese Vorgehensweise bietet den Vorteil, dass die beiden Rechner jeweils mit unterschiedlichen Resetkonfigurationen trotz Anschluss an den gemeinsamen Datenbus und ohne Zugriff auf interne Resetkonfigurationen konfiguriert werden können. Die auf diese Weise realisierte Resetkonfiguration des Masterrechners wird nachfolgend als Masterresetkonfiguration bezeichnet, während die Resetkonfiguration des Slaverechners analog als Slaveresetkonfiguration bezeichnet wird.
-
Vorteilhafterweise konfiguriert sich der Masterrechner im Ansprechen auf einen Reset-Startbefehl selbst, indem er vorbestimmte elektrische Spannungspotentiale, welche die Masterresetkonfiguration repräsentieren, an seinen als Eingangsports konfigurierten Datenbusports einliest.
-
Um ein gleichzeitiges Einlesen dieser vorbestimmten elektrischen Spannungspotentiale durch den Slaverechner an dessen Datenbusports und eine entsprechende, das heißt unerwünschte gleichartige Reset-Konfigurierung des Slaverechners zu verhindern, sollte dieser vorteilhafterweise während der Reset-Konfigurierung des Masterrechners in einem Reset-Ursprungszustand gehalten werden.
-
Weitere vorteilhafte Ausgestaltungen des Verfahrens sind Gegenstand der Unteransprüche.
-
Die oben genannte Aufgabe der Erfindung wird weiterhin durch ein Computerprogramm sowie einen Masterrechner zum Durchführen des Verfahrens gelöst. Die Vorteile dieser Lösungen entsprechen den oben mit Bezug auf das beanspruchte Verfahren genannten Vorteilen.
-
Zeichnungen
-
Der Erfindung sind drei Figuren beigefügt, wobei
-
1 eine der Erfindung zugrunde liegende Hardwarekonstellation;
-
2 den Verlauf eines Resetsignals; und
-
3 das erfindungsgemäße Verfahren; veranschaulicht.
-
Beschreibung der Ausführungsbeispiele
-
1 zeigt die der Erfindung zugrunde liegende Hardwarekonstellation, wie sie zum Beispiel in einem Steuergerät vorhanden sein kann. Diese Hardwarekonstellation umfasst einen Masterrechner 110 und einen Slaverechner 120, welche beide an einen gemeinsamen Datenbus 130 angeschlossen sind. Darüber hinaus sind die beiden Rechner 110, 120 an einen gemeinsamen Adressbus 132, einen gemeinsamen Steuerbus 134 sowie an eine gemeinsame Taktleitung 136 angeschlossen. Erfindungsgemäß ist darüber hinaus ein erster Port a des Masterrechners 110 ausgebildet, ein Resetfreigabesignal, welches das Ende der Masterkonfigurierung anzeigt, an den Slaverechner 120 auszugeben. Weiterhin ist erfindungsgemäß ein zweiter Port b des Masterrechners 110 vorgesehen und ausgebildet, ein Datenbusfreigabesignal, welches die Freigabe des Datenbusses für normalen Datenverkehr nach Abschluss der Slaveresetkonfiguration anzeigt, an den Slaverechner 120 auszugeben. Sowohl bei dem Masterrechner 110 wie auch bei dem Slaverechner 120 handelt es sich beispielsweise um Mikrocontroller.
-
Schließlich umfasst die Hardwarekonstellation einen Resetgenerator 140 zum Generieren eines Resetsignals und zum Ausgeben dieses Resetsignals an den Masterrechner 110.
-
2 zeigt typische Verläufe des digitalen Resetsignals SR und einer Versorgungsspannung U für einen Rechner, unabhängig davon, ob der Rechner als Master oder Slave betrieben wird.
-
Ausgangssituation für einen späteren Reset des Rechners ist zunächst immer ein Abfall der Versorgungsspannung U unter einen vorgegebenen Spannungspegel von beispielsweise 5 Volt, wie in 2 dargestellt. Daraufhin geht das Resetsignal SR von einem High-Pegel (inaktiver Zustand) auf einen Low-Pegel (0 V), das heißt in einen aktiven Reset-Zustand über; der zu resetierende Rechner befindet sich dann in einem sogenannten unkonfigurierten Reset-Ursprungszustand RU. Bei dem Ursprungszustand RU handelt es sich um einen Ruhezustand, währenddessen sich der Rechner 110 weder selber reset-konfiguriert noch Anwenderprogramme ausführt. Dieser Ursprungszustand datiert solange an, wie das Resetsignal SR aktiv ist. Das Resetsignal geht wieder in den inaktiven High-Pegel-Zustand über, nachdem die Versorgungsspannung U den vorgegebenen Spannungspegel wieder erreicht oder überschritten hat.
-
Dieser Wechsel des Spannungspegels des Resetsignals SR wird nachfolgend als Reset-Startbefehl bezeichnet; dieser Startbefehl beendet den Reset-Ursprungszustand des Rechners und löst den eigentlichen Resetvorgang R aus, bei dem sich der Rechner selber mit einer vorgegebenen Resetkonfiguration konfiguriert.
-
Nachfolgend wird das erfindungsgemäße Verfahren zum Durchführen von Resets mit unterschiedlichen Reset-Konfigurationen bei dem Masterrechner 110 und dem Slaverechner 120 unter Bezugnahme auf die 1–3 näher erläutert.
-
In 3 ist der Verfahrensablauf für das erfindungsgemäße Verfahren dargestellt. Ausgangspunkt ist dabei in Verfahrensschritt S1 zunächst das Einleiten eines Resetvorganges durch einen Abfall des Spannungspegels des Resetsignals SR unterhalb des vorgegebenen Schwellenwertes. Sobald der Masterrechner 110 diesen Abfall des Spannungspegels des Resetsignals SR bemerkt, geht er in den besagten Reset-Ursprungszustand über. Gleichzeitig wird auch der Slaverechner 120 von dem Masterrechner über dessen ersten Port a und die Verbindungleitung 138 in diesen Reset-Ursprungszustand versetzt. Die Verbindungsleitung 138 ist vorzugsweise über einen Pull-down-Widerstand 138-R nach Masse gezogen.
-
Sobald dann jedoch nach Ablauf der vorbestimmten Zeitdauer T der Spannungspegel des Resetsignals SR den besagten Schwellenwert überschreitet und auf diese Weise der Reset-Startbefehl generiert wird, beginnt der Masterrechner 110 mit seiner eigenen Resetkonfigurierung. Dazu liest er vorbestimmte Spannungspotentiale an seinen zu diesem Zeitpunkt als Eingangsports konfigurierten Datenbusports, beispielsweise D27, D29 und D30 ein und interpretiert diese eingelesenen Spannungspotentiale als eine für ihn vorgegebene Masterresetkonfiguration. Die Spannungspotentiale werden durch die Größe von einzelnen, an einzelne Leitungen des Datenbusses angeschlossene Spannungsteiler 135 individuell vorgegeben (Verfahrensschritt S2).
-
Das Einlesen der besagten Spannungspotentiale als Masterresetkonfiguration ist deswegen möglich, weil zu diesem frühen Zeitpunkt nach Einleitung des Reset beide Rechner noch nicht Reset-konfiguriert sind und der Datenbus 130 dann für normalen Datenverkehr noch gesperrt ist. Die Leitungen des Datenbusses fungieren dann als ganz normale elektrische Leitungen.
-
In einem nachfolgenden Verfahrensschritt S3 konfiguriert sich der Masterrechner 110 dann selber entsprechend der soeben eingelesenen Masterresetkonfiguration.
-
Nach Abschluss der Resetkonfigurierung des Masterrechners 110 startet dieser ein Computerprogramm, welches zunächst seine bisher noch als Eingangsports konfigurierten Datenbusports D00...31 als Ausgangsports konfiguriert (Verfahrensschritt S4). Dieses Programm gibt dann die für den Slaverechner 110 vorbestimmte Slaveresetkonfiguration über die Ausgangsports auf den Datenbus 130 (Verfahrensschritt S5).
-
Nachfolgend gestattet der Masterrechner 110 dem Slaverechner 120 in einem Verfahrensschritt S6 den Reset-Ursprungszustand, in dem sich der Slaverechner 120 bisher befand, zu verlassen. Die Freigabe des Slaverechners 120 zum Verlassen seines Reset-Ursprungszustandes erfolgt vorteilhafterweise durch eine Potentialänderung auf der Verbindungsleitung 138 zwischen dem Slaverechner 120 und dem ersten Port a des Masterrechners 110.
-
In einem nachfolgenden Verfahrensschritt S7 konfiguriert sich der Slaverechner dann selbst. Dazu liest der Slaverechner 120 die von dem Masterrechner 110 über den Datenbus 130 bereitgestellte Slaveresetkonfiguration an seine eigenen Datenbusports ein und konfiguriert sich entsprechend der so empfangenen Slaveresetkonfiguration selbst.
-
Nach Abschluss seiner Konfigurierung ist es oftmals nicht gewünscht, dass der Slaverechner 120 sofort mit der Ausführung von Anwendungsprogrammen beginnt. Dies macht idR erst dann Sinn, nachdem der Datenbus 130 für den regulären Datenverkehr freigegeben worden ist. Das Freigeben des Datenbusses 130 für den normalen Datenverkehr kann dem Slaverechner 120 von dem Masterrechner 110 in Form eines geeigneten Pegels auf der Verbindungsleitung 139 (siehe 1) angezeigt werden. Die Freigabe des Datenbusses wird ebenfalls von dem Master 110 gesteuert. Alternativ zu einer Anzeige der Datenbusfreigabe über die Leitung 139 besteht auch die Möglichkeit, den Slaverechner 120 nach Abschluss seiner Konfigurierung zunächst in einen sogenannten Peripheral Mode zu konfigurieren und damit in einen geeigneten Wartezustand bis zur Datenbusfreigabe zu versetzen. Nach der Datenbusfreigabe schaltet der Masterrechner 110 den Slaverechner 120 dann für die Ausführung von Anwendungsprogrammen frei, indem er ihn entweder von dem Peripheral Mode in einen Slave Mode umschaltet oder, wie gesagt, den Spannungspegel auf der Leitung 139 entsprechend ändert (Verfahrensschritt S9).
-
Das erfindungsgemäße Verfahren wird vorzugsweise in Form eines Computerprogramms für den Masterrechner 110 realisiert. Das Computerprogramm ist Teil der Firmware (Bios) des Rechners. Dieses Computerprogramm kann zusammen mit weiteren Computerprogrammen auf einem Datenträger abgespeichert sein. Zum Zeitpunkt der Anwendung ist das Computerprogramm in einem Halbleiterspeicher, vorzugsweise einem Flashmemory, als Datenträger abgespeichert. Zum Zwecke einer Übertragung oder eines Verkaufs des Computerprogramms an einen Kunden kann es sich bei dem Datentäger z. B. um eine Diskette, eine Compact Disc oder dergleichen handeln. Alternativ zu einer Übertragung per Datenträger ist auch eine Übertragung an den Kunden ohne die Zuhilfenahme des Datenträgers, zum Beispiel über ein elektronisches Kommunikationsnetzwerk, insbesondere das Internet, möglich.