DE3544079C2 - Verfahren zur Verarbeitung von Interrupt-Signalen - Google Patents

Verfahren zur Verarbeitung von Interrupt-Signalen

Info

Publication number
DE3544079C2
DE3544079C2 DE3544079A DE3544079A DE3544079C2 DE 3544079 C2 DE3544079 C2 DE 3544079C2 DE 3544079 A DE3544079 A DE 3544079A DE 3544079 A DE3544079 A DE 3544079A DE 3544079 C2 DE3544079 C2 DE 3544079C2
Authority
DE
Germany
Prior art keywords
interrupt
program
requests
request
processing
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.)
Expired - Lifetime
Application number
DE3544079A
Other languages
English (en)
Other versions
DE3544079A1 (de
Inventor
Juergen Braeuninger
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 DE3544079A priority Critical patent/DE3544079C2/de
Priority to US06/939,703 priority patent/US4819173A/en
Priority to JP61295122A priority patent/JPH0797321B2/ja
Publication of DE3544079A1 publication Critical patent/DE3544079A1/de
Application granted granted Critical
Publication of DE3544079C2 publication Critical patent/DE3544079C2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)
  • Control By Computers (AREA)

Description

Die Erfindung betrifft ein Verfahren zur Verarbeitung von Interrupt-Signalen gemäß dem Oberbegriff des Hauptanspruchs. In Steuergeräten mit Rechner werden beispielsweise Geber­ signale, zum Beispiel das Frequenzsignal eines Drehzahl­ gebers, über die Messung der Periodendauer ausgewertet. Dies geschieht in der Regel so, daß über eine Auswerteschaltung mit der Frequenz des Geberssignals Programmunterbrechungen, sogenannte Interrupts, im Rechner ausgelöst werden. Diese Interrupts unterbrechen den normalen Programmablauf des Hauptprogramms und lösen die Ausführung eines Interrupt-Programms aus, in welchem aus dem Stand eines Zählers die Frequenz des Signals bzw. die entsprechende Periodendauer ermittelt werden kann. Nach Beendigung des Interrupt-Programms wird der normale Programmablauf wieder fortgesetzt.
Bei korrektem Signal ist im allgemeinen sichergestellt, daß die Interrupt-Frequenz so klein ist, daß die Unterbrechungen des normalen Programmablaufs nicht zu einer unzulässig langen Programmlaufzeit führen. Liegt jedoch wegen Störungen, wie Wackelkontakt, sonstige Einstreuungen, die Frequenz des Geber-Signals unzulässig hoch, so können die zu häufig auftretenden Interrupts dazu führen, daß wegen der häufigen Unterbrechung der normale Programmablauf unzulässig lange dauert. Dabei kann sogar vor Ablauf des Interrupt-Programms erneut eine Interrupt-Anforderung vorliegen, die dann gleich nach Abschluß des laufenden Interrupt-Programms erneut ein weiteres Interrupt-Programm startet. In einem solchen Fall würde das normale Programm gar nicht mehr bearbeitet werden können. Bei bestimmten Rechnerkonfigurationen besteht sogar die Gefahr, daß ein laufendes Interrupt-Programm durch weitere Interrupts unterbrochen wird, so daß eine Vielzahl von Rücksprungadressen bei jedem Interrupt abgespeichert würde, wodurch der vorhandene Speicher überlaufen könnte. Dies hätte ein vollkommen unkontrollierbares Verhalten des Rechners zur Folge.
Bei einem Rechnerausfall sind oftmals Notfunktionen vorgesehen, die allerdings bei einem defekten Gebersignal ebenfalls durch eine zu große Anzahl von Interrupt-Anforderungen bei herkömmlichen Rechnersystemen wirkungslos werden.
Ein Artikel von Laska, Volker: Interrupts in Mikrocomputersystemen, in: Micro Extra-Zeitschrift für Mikrocomputertechnik, Jahrgang 4. Juli 1980, Seite 16 bis 19 und 22 beschreibt Interrupttechniken in Mikrocomputersystemen. Darin wird erklärt, was unter dem Begriff Interrupt an sich zu verstehen ist. Es wird erklärt, daß ein Interrupt-Signal das Hauptprogramm des Mikroprozessors unterbricht und die Abarbeitung einer Interrupt-Service-Routine zur Folge hat. Es wird ebenfalls erwähnt, daß zu Beginn einer Interrupt-Service-Routine durch Setzen von Bits weitere Interrupt-Anforderungen blockiert werden können.
Im Kapitel 5 wird der Einsatz von programmierbaren Interrupt-Controllern vorgestellt. Darin wird erwähnt, daß das Maskieren von Interrupt-Anforderungen den Vorteil hat, daß nicht alle sondern nur bestimmte Interrupts zu definierten Zeiten und an definierten Stellen im Programm gesperrt oder durchgelassen werden. Es wird dargelegt, daß mit einer Maskierung erreicht werden kann, daß Interrupts, die während der Interrupt-Service-Routine hoher Priorität anfallen, nicht ignoriert sondern zwischengespeichert und später entsprechend ihrer Priorität verarbeitet werden können.
Es ist Aufgabe der Erfindung störungsbedingte Interrupt­ signale von der Interrupt-Bearbeitung fernzuhalten. Die Aufgabe wird durch die Merkmale der Ansprüche 1 und 3 gelöst. Durch die vorgesehene Interrupt-Sperre, die während eines bestimmten Zeitabschnitts aufrechterhalten bleibt, wird eine Überlastung durch eine fehlerbedingte Vielzahl von Interrupt-Anforderungen vermieden. Vielmehr wird sichergestellt, daß während dieser Zeitabschnitte, bei denen die Interrupt-Sperren wirksam sind, zumindest Notfunktionen des Rechners durchgeführt werden können.
Die Dauer der Zeitabschnitte kann mittels eines Zeitzählers jeweils zu Beginn einer ersten Interrupt-Anforderung gestartet werden, wobei der Zeitzähler am Ende des vorgegebenen Zeitabschnitts dann wieder sofort gestartet wird, wenn während der Zählzeit weitere Interrupt-Anforderungen eingegangen sind. Eine andere Lösung kann im wesentlichen darin bestehen, daß periodisch in konstanten Zeitabschnitten überprüft wird, ob eine Interrupt-Anforderung eingeht, und daß dann die Interrupt-Sperre ausgelöst wird. Geht eine weitere Interrupt-Anforderung während einer bestehenden Interrupt-Sperre ein, bleibt die Sperre auch während des nächsten Zeitabschnitts aufrechterhalten.
Die Erfindung wird nachfolgend anhand der Zeichnungen näher erläutert. Es zeigen:
Fig. 1 ein Flußdiagramm und
Fig. 2 ein vereinfachtes Blockschaltbild einer Anordnung zur Verarbeitung von Interrupt-Signalen.
Anhand des in Fig. 1 dargestellten Flußdiagramms wird die Funktion des in Fig. 2 dargestellten Ausführungsbeispiels erläutert.
Bei Auftreten einer Interrupt-Anforderung, beispielsweise zur Bestimmung der Frequenz eines Meßsignals, wird zunächst eine Interrupt-Sperre ausgelöst. Das Meßsignal kann ein die Motordrehzahl n1 oder eine Hilfsdrehzahl n2 repräsentierendes Signal sein.
Nach Auslösung der Interrupt-Sperre wird ein Zeit­ zähler gestartet und das Interrupt-Programm vom Rechner 1 durchgeführt. Nach einer vom Zeitzähler bestimmten Zeit wird geprüft, ob während der Zählzeit eine weitere Interrupt-Anforderung eingegangen ist. Wenn dies der Fall ist, wird diese Anforderung ge­ löscht und der Zeitzähler erneut gestartet. Ist da­ gegen im Zählzeitraum keine weitere Interrupt-Anforderung eingegangen, so wird die Interrupt-Sperre aufgehoben. Eine nunmehr auftretende Interrupt-Anforderung kann nun erneut das Interrupt-Programm zur Frequenzbestimmung eines Signals, beispielsweise eines Drehzahlsignals n1, n2, einleiten.
Dem Rechner 1 können weitere Parameter zugeführt werden, die den Motor-Betriebszustand betreffen. Im Ausführungsbeispiel werden dem Rechner 1 noch das Ausgangssignal des Fußfahrgebers FFG und andere Signale zugeführt.
Der Ausgang des Rechners 1 ist mit einer Steuerung 2 verbunden, die zur Steuerung des Zündzeitpunkts oder zur Steuerung des Einspritzventils beziehungsweise der Einspritzmenge vorgesehen sein kann.

Claims (4)

1. Verfahren zur Verarbeitung von Interrupt-Signalen einer Interrupt-Quelle, in einem Mikrorechner mit einem zugehörigen Interrupt-Programm und einem Hauptprogramm, wobei das Hauptprogramm nach Auftritt eines Interrupt-Signals der Interrupt-Quelle unterbrochen wird und statt dessen das Interrupt-Programm abgearbeitet wird, wobei mit Beginn der Abarbeitung des Interrupt-Programms weitere Interrupt-Anforderungen gesperrt werden, dadurch gekennzeichnet, daß ein Zeitzähler mit Beginn der Abarbeitung des Interrupt-Programms gestartet wird, daß am Ende der Zählzeit des Zeitzählers geprüft wird, ob mindestens eine weitere Interrupt-Anforderung während der Zählzeit aufgetreten ist, daß bei Anliegen mindestens einer weiteren Interrupt-Anforderung diese gelöscht wird, daß beim Ablaufen des Zeitzählers die Sperrung der Interrupt-Anforderungen aufgehoben wird, und daß bei Nichtanliegen einer weiteren Interrupt-Anforderung die Sperrung der Interrupt-Anforderungen aufgehoben wird.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß nach der Löschung der mindestens einen weiteren Interrupt-Anforderung der Zeitzähler erneut gestartet wird und daß die Sperrung der Interrupt-Anforderungen erst dann aufgehoben wird, wenn während der Zählzeit keine erneuten Interrupt-Anforderungen aufgetreten sind.
3. Verfahren zur Verarbeitung von Interrupt-Signalen einer Interrupt-Quelle, in einem Mikrorechner mit einem zugehörigen Interrupt-Programm und einem Hauptprogramm, wobei das Hauptprogramm nach Auftritt eines Interrupt-Signals der Interrupt-Quelle unterbrochen wird und statt dessen das Interrupt-Programm abgearbeitet wird, wobei mit Beginn der Abarbeitung des Interrupt-Programms weitere interrupt-Anforderungen gesperrt werden, dadurch gekennzeichnet, daß periodisch nach konstanten Zeitabständen geprüft wird, ob im jeweils vorhergehenden Zeitabschnitt eine Interrupt-Anforderung eingetroffen ist und ob das entsprechende Interrupt-Programm wegen einer bestehenden Sperrung der Interrupt-Anforderungen nicht bearbeitet wurde und daß, wenn dies der Fall war, die Sperrung der Interrupt-Anforderungen weiterhin wirksam bleibt.
4. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß in dem mindestens einen Interrupt-Programm die momentane Motordrehzahl eines Kraftfahrzeugs bestimmt und in Abhängigkeit von der Motordrehzahl und weiteren motorspezifischen Parametern ausgangsseitig die Zünd- und Einspritzanlage gesteuert wird.
DE3544079A 1985-12-13 1985-12-13 Verfahren zur Verarbeitung von Interrupt-Signalen Expired - Lifetime DE3544079C2 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE3544079A DE3544079C2 (de) 1985-12-13 1985-12-13 Verfahren zur Verarbeitung von Interrupt-Signalen
US06/939,703 US4819173A (en) 1985-12-13 1986-12-09 System for preventing excessive repetition of interrupt programs in a microcomputer
JP61295122A JPH0797321B2 (ja) 1985-12-13 1986-12-12 割込み信号の処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE3544079A DE3544079C2 (de) 1985-12-13 1985-12-13 Verfahren zur Verarbeitung von Interrupt-Signalen

Publications (2)

Publication Number Publication Date
DE3544079A1 DE3544079A1 (de) 1987-06-19
DE3544079C2 true DE3544079C2 (de) 1998-07-30

Family

ID=6288351

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3544079A Expired - Lifetime DE3544079C2 (de) 1985-12-13 1985-12-13 Verfahren zur Verarbeitung von Interrupt-Signalen

Country Status (3)

Country Link
US (1) US4819173A (de)
JP (1) JPH0797321B2 (de)
DE (1) DE3544079C2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10206865C1 (de) * 2002-02-18 2003-05-15 Daimler Chrysler Ag Reaktionszeit-Beschränkung eines Software-Prozesses

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6479617A (en) * 1987-09-22 1989-03-24 Nissan Motor Signal processing apparatus of crank angle sensor
DE4319881B4 (de) * 1993-06-16 2006-10-26 Robert Bosch Gmbh Verfahren zur Verarbeitung von Interruptsignalen einer Interruptquelle
ATE280974T1 (de) * 1997-06-13 2004-11-15 Cit Alcatel Mehrfachunterbrechungsabwicklungsverfahren und - gerät
JPH1166776A (ja) * 1997-08-18 1999-03-09 Fujitsu Ltd ディスク装置、サーボトラックライトシステムおよびそのサーボトラックライト方法
JPH1185404A (ja) * 1997-09-08 1999-03-30 Fujitsu Ltd ドライブ制御装置および光記憶装置
US6144914A (en) * 1999-03-25 2000-11-07 Caterpillar Inc. Configurable speed timing interrupts
DE10125603B4 (de) * 2001-05-25 2008-04-30 Siemens Ag Verfahren zur automatischen Unterdrückung flatternder Ereignisse
US6963340B1 (en) * 2002-09-03 2005-11-08 Nvidia Corporation Graphics processor and system with microcontroller for programmable sequencing of power up or power down operations
US20080140895A1 (en) * 2006-12-09 2008-06-12 International Business Machines Corporation Systems and Arrangements for Interrupt Management in a Processing Environment
WO2008096208A1 (en) * 2007-02-08 2008-08-14 Freescale Semiconductor, Inc. Request controller, processing unit, method for controlling requests and computer program product
WO2008099238A1 (en) * 2007-02-16 2008-08-21 Freescale Semiconductor, Inc. Request controller, processing unit, arrangement, method for controlling requests and computer program product
CN111597016B (zh) * 2020-04-08 2023-02-14 延锋伟世通电子科技(上海)有限公司 一种系统任务的时间保护方法、系统、存储介质及终端

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS51112239A (en) * 1975-03-28 1976-10-04 Hitachi Ltd Noise elimination circuit
DE2732781C3 (de) * 1977-07-20 1995-04-06 Bosch Gmbh Robert Einrichtung zum Steuern von betriebsparameterabhängigen und sich wiederholenden Vorgängen
EP0000633B1 (de) * 1977-07-23 1981-11-04 Beecham Group Plc Verfahren zur Herstellung von alpha-substituierter-Thien-3-yl-essigsäure und deren Derivaten
JPS5544676A (en) * 1978-09-26 1980-03-29 Nec Corp Interruption control unit
DE2841750A1 (de) * 1978-09-26 1980-04-03 Bosch Gmbh Robert Verfahren und einrichtung zum bestimmen der einzelnen stellgroessen einer brennkraftmaschine, insbesondere einer gasturbine
JPS5596339A (en) * 1979-01-13 1980-07-22 Nippon Denso Co Ltd Air-fuel ratio control method
JPS55137358A (en) * 1979-04-16 1980-10-27 Nissan Motor Co Ltd Controller for automobile
JPS55162155A (en) * 1979-06-05 1980-12-17 Matsushita Electric Ind Co Ltd Interrupting circuit of microcomputer
JPS5638542A (en) * 1979-09-05 1981-04-13 Hitachi Ltd Controlling method for engine
JPS58172452A (ja) * 1982-04-02 1983-10-11 Toyota Motor Corp 電子制御式燃料噴射装置
DE3214006A1 (de) * 1982-04-16 1983-10-20 Robert Bosch Gmbh, 7000 Stuttgart Vorrichtung zum ruecksetzen von rechenschaltungen
DE3224286A1 (de) * 1982-06-28 1983-12-29 Robert Bosch Gmbh, 7000 Stuttgart Steuervorrichtung mit einem mikrorechner
US4525309A (en) * 1983-03-15 1985-06-25 Washington State University Research Foundation, Inc. Lewis acid catalysis of the homologation of boronic esters with haloalkylmetal reagents

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
LASKA, Volker: Interrupts in Mikrocomputer- systemen. In: MIKRO EXTRA - Zeitschrift für Mikrocomputertechnik, Jg. 4, Juli 1980, S. 16 bis 19 u. 22 *
WÄLTRING, Horst: Der Interrupt-Controller - ein Baustein, der für Ordnung sorgt. In: Elek- tronik, Sonderheft III, Mikroprozessoren, Francis-Verlag GmbH, München, 1979, S. 69 bis 76 *
ZAKS, Rodnay: Programmierung des 6502, Sybex- Verlag, 1980, S. 191-194 - ISBN 2-902414-25-0 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10206865C1 (de) * 2002-02-18 2003-05-15 Daimler Chrysler Ag Reaktionszeit-Beschränkung eines Software-Prozesses

Also Published As

Publication number Publication date
US4819173A (en) 1989-04-04
DE3544079A1 (de) 1987-06-19
JPH0797321B2 (ja) 1995-10-18
JPS62219030A (ja) 1987-09-26

Similar Documents

Publication Publication Date Title
DE3544079C2 (de) Verfahren zur Verarbeitung von Interrupt-Signalen
DE3111126C2 (de) Elektronische Steuereinrichtung für Kraftfahrzeugaggregate
DE2946081C2 (de)
DE3336028C2 (de)
DE3311927C2 (de)
DE4111072C2 (de)
DE102005001946B4 (de) System zur Steuerung des Verhaltens eines Fahrzeugs
DE3644631C2 (de)
DE3301743A1 (de) Sicherheitseinrichtung fuer eine brennkraftmaschine mit selbstzuendung
DE19750026B4 (de) Verfahren und Vorrichtung zum Betreiben von Steuereinrichtungen für ein Fahrzeug
WO2002006949A2 (de) Verfahren und vorrichtung zur messung der laufzeit einer task in einem echtzeitsystem
DE2630694C3 (de) Gerät zur Überwachung der Gebärmutteraktivität während Geburtswehen
WO1998028687A1 (de) Verfahren zur überprüfung der funktionsfähigkeit einer recheneinheit
EP0443147B1 (de) Verfahren und Einrichtung zur Regelung/Steuerung der Laufruhe einer Brennkraftmaschine
EP0784747B1 (de) Verfahren und vorrichtung zur steuerung eines stellgliedes
DE3409410A1 (de) Verfahren und anordnung zum einstellen eines bandes an einer bestimmten stelle
DE60302577T2 (de) Verfahren und computerprogramm zum identifizieren eines fehlers in einem motor
DE112016006679T5 (de) Steuerungsvorrichtung und Recovery-Verarbeitungsverfahren für Steuerungsvorrichtung
DE102015221892A1 (de) Bestimmung einer maximalen Latenzzeit
EP0052802B1 (de) Verfahren und Vorrichtung zum Überwachen der Bearbeitungs-bedingungen an einer Werkzeugmaschine
WO1990001629A1 (de) Verfahren und vorrichtung zum einstellen von betriebsgrössen einer brennkraftmaschine
DE3246524A1 (de) Drehzahlregelsystem fuer eine brennkraftmaschine
DE19728971C2 (de) Datenverarbeitungsvorrichtung und -verfahren
DE3441106C2 (de) Verfahren zur individuellen Steuerung der Eigendiagnose von Steuereinheiten in einem Kraftfahrzeug
DE19647407A1 (de) Steuergerät, insbesondere für den Einsatz in einem Kraftfahrzeug

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
D2 Grant after examination
8364 No opposition during term of opposition