DE102005002375A1 - Datenverarbeitungssystem - Google Patents

Datenverarbeitungssystem Download PDF

Info

Publication number
DE102005002375A1
DE102005002375A1 DE200510002375 DE102005002375A DE102005002375A1 DE 102005002375 A1 DE102005002375 A1 DE 102005002375A1 DE 200510002375 DE200510002375 DE 200510002375 DE 102005002375 A DE102005002375 A DE 102005002375A DE 102005002375 A1 DE102005002375 A1 DE 102005002375A1
Authority
DE
Germany
Prior art keywords
interrupt
data
counter
processing system
hardware
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.)
Withdrawn
Application number
DE200510002375
Other languages
English (en)
Inventor
Masafumi Inoue
Takanaga Yamazaki
Takeshi Kataoka
Hideo Kubota
Satoshi Tanaka
Horikazu Kariya Komori
Takahiro Kariya Gotoh
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.)
Denso Corp
Renesas Electronics Corp
Original Assignee
Renesas Technology Corp
Denso Corp
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 Renesas Technology Corp, Denso Corp filed Critical Renesas Technology Corp
Publication of DE102005002375A1 publication Critical patent/DE102005002375A1/de
Withdrawn 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

Abstract

Durch die Erfindung ist ein Datenverarbeitungssystem geschaffen, mit dem eine Interrupt-Ausnahmehandhabungsroutine so oft ausgeführt werden kann, wie es der Anzahl des Auftretens eines Anforderungsereignisses für dieselbe Interrupt-Ausnahmehandhabungsroutine entspricht, wenn das Anforderungsereignis mehrmals auftritt. Ein Softwareinterruptzähler oder ein Hardwareinterruptzähler zum Speichern der Anzahl des Auftretens eines Interruptanforderungs-Erzeugungsereignisses zählt hoch, wenn eine einen Softwareinterrupt erzeugende Softwareverarbeitung oder ein einen Hardwareinterrupt erzeugendes Hardwareereignis auftritt, und er zählt nach unten, wenn die CPU eine Verarbeitung zum Entfernen der Interruptanforderung ausführt. Wenn der Wert des Softwareinterruptzählers und der Wert des Hardwareinterruptzählers nicht null sind, werden ein Softwareinterrupt-Anforderungssignal und ein Hardwareinterrupt-Anforderungssignal an die CPU aufgeschaltet.

Description

  • QUERVERWEIS AUF EINSCHLÄGIGE ANMELDUNG
  • Die vorliegende Anmeldung beansprucht die Priorität der am 27. Februar 2004 eingereichten japanischen Patentanmeldung JP 2004-053421, deren Inhalt hiermit durch Bezugnahme in diese Anmeldung eingeschlossen wird.
  • TECHNISCHES GEBIET DER ERFINDUNG
  • Die Erfindung betrifft ein Datenverarbeitungssystem. Genauer gesagt, betrifft die Erfindung eine Technik0, die dann effektiv arbeitet, wenn sie bei der Konfiguration eines Interruptsteuerabschnitts des Datenverarbeitungssystems angewandt wird.
  • HINTERGRUND DER ERFINDUNG
  • Als Techniken in Zusammenhang mit dem Datenverarbeitungssys tem, das die Erfinder der vorliegenden Erfindung untersucht haben, sind beispielsweise die Folgenden bekannt.
  • Als Maßnahme, die es einer zentralen Verarbeitungseinheit (nachfolgend "CPU") ermöglicht, einen anderen Task auszuführen, während sie eine bestimmte Anweisung (Task) ausführt, stehen ein Softwareinterrupt und ein Hardwareinterrupt zur Verfügung. Ein Softwareinterrupt arbeitet wird folgt. Wenn die CPU eine spezielle Softwareverarbeitung ausführt, um einen Interrupt zu erzeugen (Anweisungsausführung), wird ein in einem Interruptcontroller vorhandenes Interruptanforderungsflag gesetzt, ein Interruptanforderungssignal vom Interruptcontroller zur CPU wird aufgeschaltet (aktiv (wirksam) gemacht), und die CPU steuert dadurch die Ausführung einer Interruptausnahme-Handhabungsroutine (ein anderer Task). Wenn die CPU eine Verarbeitung zum Entfernen der Interruptanforderung ausführt (Anweisungsausführung), wenn sie die Ausführung der Anweisung der Interruptausnahme-Handhabungsroutine beendet, wird das im Interruptcontroller vorhandene Interruptanforderungsflag gelöscht, und das Interruptanforderungssignal vom Interruptcontroller zur CPU wird negiert (inaktiv (unwirksam) gemacht). Dann kehrt die CPU, wenn sie eine Rückkehranweisung von der Interruptausnahmeverarbeitung ausführt, zur Anweisungsausführung vor der Ausführung der Interruptausnahme-Handhabungsroutine zurück.
  • Zu Beispielen eines Hardwareinterrupts gehören ein Hardwareinterrupt durch ein internes Peripheriemodul sowie ein Hardwareinterrupt durch einen externen Anschluss.
  • Ein Hardwareinterrupt durch ein internes Peripheriemodul arbeitet wie folgt. Bei Eintritt eines Ereignisses (z. B. einer vergleichenden Übereinstimmungsprüfung eines Zeitmoduls oder beim Abschließen eines Sende- oder Empfangsvorgangs durch ein Kommunikationsmodul) in einem internen Peri pheriemodul in der Hardware (z. B. ein Mikrocontroller) wird ein im entsprechenden internen Peripheriemodul vorhandenes Interruptanforderungsflag gesetzt, ein Interruptanforderungssignal vom internen Peripheriemodul zum Interruptcontroller wird aufgeschaltet, und es wird ein Interruptanforderungssignal vom Interruptcontroller zur CPU aufgeschaltet. Dadurch startet die CPU die Ausführung einer Interruptausnahme-Handhabungsroutine (anderer Task). Wenn die CPU eine Verarbeitung zum Entfernen der Interruptanforderung ausführt (Anweisungsausführung), wenn sie die Ausführung der Anweisung der Interruptausnahme-Handhabungsroutine beendet, wird das im internen Peripheriemodul vorhandene Interruptanforderungsflag gelöscht, das Interruptanforderungssignal vom internen Peripheriemodul zum Interruptcontroller wird negiert, und das Interruptanforderungssignal vom Interruptcontroller zur CPU wird negiert. Dann kehrt die CPU, wenn eine Rückkehranweisung von der Ausnahmeverarbeitung ausgeführt wird, zur Anweisungsausführung vor der Ausführung der Interruptausnahme-Handhabungsroutine zurück.
  • Ein Hardwareinterrupt durch einen externen Anschluss arbeitet wird folgt. Bei Eintritt eines Ereignisses (z. B. einer Pegeländerung an einem externen IRQ-Anschluss) an einem in der Hardware (z. B. einem Mikrocontroller) vorhandenen externen Anschluss wird das Ereignis erkannt, und es wird ein im Interruptcontroller vorhandenes Interruptanforderungsflag gesetzt. Dann wird ein Interruptanforderungssignal vom Interruptcontroller an die CPU aufgeschaltet, und die CPU startet dadurch die Ausführung der Interruptausnahme-Handhabungsroutine (anderer Task). Wenn die CPU eine Verarbeitung zum Entfernen der Interruptcontroller ausführt (Anweisungsausführung), wenn sie die Ausführung der Anweisung der Interruptausnahme-Handhabungsroutine beendet, wird das im Interruptcontroller vorhandene Interruptanforderungsflag gelöscht, und es wird das Interruptanforderungssignal vom In terruptcontroller an die CPU negiert. Wenn eine Rückkehranweisung von der Ausnahmeverarbeitung ausgeführt wird, kehrt die CPU zur Anweisungsausführung vor der Ausführung der Interruptausnahme-Handhabungsroutine zurück.
  • Eine Interruptverarbeitungsfunktion ist z. B. in der japanischen Patentanmeldungs-Offenlegung Nr. 8-314731 beschrieben.
  • Auch ist ein zur Steuerung eines Automobil-Kraftübertragungsstrangs verwendeter Mikrocontroller normalerweise mit einer Gleitkommaeinheit (nachfolgend "FPU" (floating point unit)) versehen. Bei einem Controller dieses Typs wird Sensorinformation unter Verwendung eines Analog-Digital-Wandlers (nachfolgend "AD-Wandler") in digitale Information gewandelt, und ein Steuerungsziel wird durch eine Arithmetikoperation gesteuert. Im Fall der Analyse einer sich schnell ändernden Sensorinformation ist es insbesondere erforderlich, Daten mit hoher Rate zu sammeln und eine digitale Signalverarbeitung auszuführen.
  • Herkömmlicherweise werden bei einem Verfahren zum Speichern von Abtastwerten, die für eine digitale Signalverarbeitung wie eine Kopfregelung verwendet werden, Daten vom AD-Wandler an einen internen RAM (Speicher) unter Verwendung eines Datenübertragungsprozessors wie eines im Mikrocontroller vorhandenen Controllers für direkten Speicherzugriff (nachfolgend "DMAC" (direkt memory access controller)) übertragen. Nachdem die Daten übertragen sind, wird ein übertragener Datenwert im internen RAM durch die CPU gelesen, wodurch die digitale Signalverarbeitung ausgeführt wird.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Die Erfinder der vorliegenden Erfindung haben diese herkömmlichen Techniken zum Interruptausnahmehandling (Interrupt ausnahmeverarbeitung) untersucht. Im Ergebnis wurden die folgenden Gesichtspunkte herausgefunden.
  • Sowohl bei einem Softwareinterrupt als auch einem Hardwareinterrupt führt die CPU eine Verarbeitung zum Entfernen der Interruptanforderung aus (Anweisungsausführung), wenn sie die Ausführung der Anweisung der Interruptausnahme-Handhabungsroutine (Interruptausnahme-Verarbeitungsroutine) beendet. Durch diese Vorgehensweise wird das Interruptanforderungsflag gelöscht und das Interruptanforderungssignal negiert. Wenn jedoch ein Ereignis, bei dem dieselbe Interruptanforderung erzeugt wird, erneut vor dem Ausführen der Verarbeitung zum Entfernen der Interruptanforderung (Anweisungsausführung) auftritt, führt ein herkömmlicher Interruptmechanismus die Verarbeitung zum Entfernen der Interruptanforderung als Teil der ersten Interruptausnahme-Handhabungsroutine aus. Demgemäß wird das Interruptanforderungsflag gelöscht und das Interruptanforderungssignal negiert. Demgemäß führt die CPU, nachdem sie die Rückkehranweisung von der Interruptausnahmeverarbeitung der Interruptausnahme-Handhabungsroutine ausgeführt hat, die Interruptausnahme-Handhabungsroutine für ein zweites Ereignis mit Erzeugung einer Interruptanforderung nicht aus, da das Interruptanforderungssignal negiert ist. Im Ergebnis kann die Interruptausnahme-Handhabungsroutine nicht so oft ausgeführt werden, wie es der Anzahl des Auftretens der Ereignisses, das dieselbe Interruptanforderung erzeugt hat, entspricht.
  • Daher ist es eine Aufgabe der Erfindung, ein Datenverarbeitungssystem zu schaffen, mit dem eine Interruptausnahme-Handhabungsroutine so oft ausgeführt werden kann, wie es der Anzahl des Auftretens des Anforderungsereignisses für dieselbe Interruptausnahme-Handhabungsroutine entspricht, also selbst dann, wenn das Anforderungsereignis mehrmals auftritt.
  • Ferner wird die digitale Signalverarbeitung herkömmlicherweise unter Verwendung eines Ganzzahlenformats ausgeführt. Jedoch ist es zu erwarten, dass zukünftig eine effizientere Arithmetikoperation unter Verwendung eines Gleitkommazahlenformats ausgeführt wird. Auch wird erwartet, dass, während die Anzahl der zur Datensignalverarbeitung verwendeten Daten im Allgemeinen und herkömmlicherweise einigen zehn entspricht oder kleiner ist, die Anzahl der Daten auf mehrere hundert oder mehr ansteigen wird.
  • Daher ist es eine andere Aufgabe der Erfindung, ein Datenverarbeitungssystem zu schaffen, mit dem Sensorinformation effizient von ganzen Zahlen in Gleichkommazahlen gewandelt werden kann, wenn es erforderlich ist, Daten mit hoher Rate zu sammeln und eine digitale Signalverarbeitung auszuführen.
  • Die obigen und andere Aufgaben sowie neuartige Eigenschaften der Erfindung werden aus der Beschreibung und den diesen Anmeldeunterlagen beigefügten Zeichnungen ersichtlich werden.
  • Die typischen der in dieser Anmeldung offenbarten Erfindungen werden kurz wie folgt beschrieben.
  • Ein erfindungsgemäßes Datenverarbeitungssystem verfügt nämlich über einen Interruptmechanismus mit einem Zähler zum Speichern der Anzahl der Auftretens eines Interruptanforderung-Erzeugungsereignisses.
  • Dieser Zähler zählt hoch, wenn eine einen Softwareinterrupt erzeugende Softwareverarbeitung oder ein einen Hardwareinterrupt erzeugendes Hardwareereignis auftritt, und er zählt herunter, wenn eine CPU eine Verarbeitung zum Beenden einer Interruptausnahme-Handhabungsroutine ausführt (sie eine Ver arbeitung zum Entfernen einer Interruptanforderung oder eine Anweisung zur Rückkehr von einer Ausnahmeverarbeitung) ausführt. Auch wird, wenn der Wert dieses Zählers nicht 0 ist, ein Interruptanforderungssignal an die CPU aufgeschaltet. Das heißt, dass es möglich ist, das Interruptanforderungssignal kontinuierlich aufzuschalten, bis so viele Herunterzählverarbeitungen ausgeführt sind, wie Hochzählverarbeitungen ausgeführt wurden.
  • Auf diese Weise führt die CPU, wenn dasselbe Interruptanforderung-Erzeugungsereignis mehrmals auftritt, eine Verarbeitung zum Entfernen der Interruptanforderung (Anweisungsausführung) am Ende der ersten Interruptausnahme-Handhabungsroutine aus. Selbst nachdem die CPU eine Rückkehranweisung von der Anweisungsausführung ausgeführt hat und sie dadurch zur Anweisungsausführung vor der Interruptausnahme-Handhabungsroutine zurückkehrt, startet sie die Ausführung einer zweiten Interruptausnahme-Handhabungsroutine, da das Interruptanforderungssignal zur CPU aufgeschaltet ist.
  • Daher ist es möglich, die Interruptausnahme-Handhabungsroutine so oft auszuführen, wie es der Anzahl des Auftretens des Ereignisses entspricht, das dieselbe Interruptanforderung erzeugt.
  • Ferner verfügt das erfindungsgemäße Datenverarbeitungssystem über eine Funktion zum Wandeln einer ganzen Zahl in eine Gleitkommazahl in einem DMAC beim Übertragen von Daten von einer Peripherieschaltung (z. B. einem AD-Wandler) an einen Speicher.
  • Der Effekt, wie er durch die repräsentative der in dieser Anmeldung offenbarten Erfindungen erzielt wird, wird kurz wie folgt beschrieben.
  • Da der Zähler die Anzahl des Auftretens desselben Interruptanforderung-Erzeugungsereignisses speichert und das Interruptanforderungssignal kontinuierlich aufgeschaltet wird, kann die CPU die Interruptausnahme-Handhabungsroutine so oft ausführen, wie es der Anzahl des Auftretens des Ereignisses entspricht.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Blockdiagramm, das die Konfiguration eines Datenverarbeitungssystems gemäß einer ersten Ausführungsform der Erfindung zeigt;
  • 2 ist ein zeitbezogenes Diagramm, das eine Softwareinterrupt-Verarbeitung im Datenverarbeitungssystem gemäß der ersten Ausführungsform der Erfindung zeigt;
  • 3 ist ein zeitbezogenes Diagramm, das eine Hardwareinterrupt-Verarbeitung im Datenverarbeitungssystem gemäß der ersten Ausführungsform der Erfindung zeigt;
  • 4 ist ein Blockdiagramm, das die Konfiguration eines Datenverarbeitungssystems gemäß einer zweiten Ausführungsform der Erfindung zeigt;
  • 5 ist ein zeitbezogenes Diagramm, das eine Softwareinterrupt-Verarbeitung im Datenverarbeitungssystem gemäß der zweiten Ausführungsform der Erfindung zeigt;
  • 6 ist ein zeitbezogenes Diagramm, das eine Hardwareinterrupt-Verarbeitung im Datenverarbeitungssystem gemäß der zweiten Ausführungsform der Erfindung zeigt;
  • 7 ist ein Blockdiagramm, das die Konfiguration eines Datenverarbeitungssystems gemäß einer dritten Ausführungs form der Erfindung zeigt;
  • 8 ist ein Blockdiagramm, das die Konfiguration eines Datenverarbeitungssystems gemäß einer vierten Ausführungsform der Erfindung zeigt;
  • 9 ist ein Blockdiagramm, das die Konfiguration eines Datenverarbeitungssystems gemäß einer fünften Ausführungsform der Erfindung zeigt;
  • 10 ist ein Diagramm, das ein Beispiel eines CPU-Ausführungszustands und einen Interruptverarbeitungsablauf in den Datenverarbeitungssystemen gemäß der ersten bis fünften Ausführungsform der Erfindung zeigt;
  • 11 ist ein Blockdiagramm, das die Konfiguration eines Datenverarbeitungssystems gemäß einer sechsten Ausführungsform der Erfindung zeigt;
  • 12 ist ein Blockdiagramm, das die Konfiguration eines Datenverarbeitungssystems gemäß einer siebten Ausführungsform der Erfindung zeigt; und
  • 13 ist ein Blockdiagramm, das die Konfiguration eines Datenverarbeitungssystems gemäß einer achten Ausführungsform der Erfindung zeigt.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • Nachfolgend werden Ausführungsformen der Erfindung unter Bezugnahme auf die beigefügten Zeichnungen detailliert beschrieben. Es ist zu beachten, dass Komponenten mit derselben Funktion in allen Zeichnungen zur Beschreibung der Ausführungsform mit denselben Bezugssymbolen gekennzeichnet sind und die zugehörige wiederholte Beschreibung weggelassen wird.
  • (Erste Ausführungsform)
  • Die 1 ist ein Blockdiagramm, das die Konfiguration eines Datenverarbeitungssystems gemäß einer ersten Ausführungsform der Erfindung zeigt. Die 2 ist ein zeitbezogenes Diagramm, das eine Software-Verarbeitung im Datenverarbeitungssystem gemäß der ersten Ausführungsform zeigt. Die 3 ist ein zeitbezogenes Diagramm, das eine Hardwareinterrupt-Verarbeitung im Datenverarbeitungssystem gemäß der ersten Ausführungsform zeigt.
  • Unter Bezugnahme auf die 1 wird als Erstes ein Beispiel der Konfiguration des Datenverarbeitungssystems gemäß der ersten Ausführungsform beschrieben. Das Datenverarbeitungssystem gemäß der ersten Ausführungsform ist z. B. ein System wie ein Mikrocontroller. Das Datenverarbeitungssystem verfügt beispielsweise über eine CPU 1, einen Interruptcontroller 4 und interne Peripheriemodule/externe Anschlüsse 12 aus einem AD-Wandler, einem Digital-Analog-Wandler (nachfolgend "DA-Wandler"), einem DMAC, einem Timer und einem seriellen USB. Die CPU 1 ist über einen internen Adressenbus 2 und einen internen Datenbus 3 elektrisch mit dem Interruptcontroller 4 verbunden. Das Datenverarbeitungssystem kann aus den jeweiligen Bauelementen aufgebaut sein, die auf einem Halbleitersubstrat ausgebildet sind. Der Interruptcontroller 4 verfügt beispielsweise über eine Interner-Bus-Schnittstellenschaltung 5, einen Softwareinterruptzähler 6, einen Hardwareinterruptzähler 7 und eine Interruptanforderungssignal-Erzeugungsschaltung 8. Von der Interner-Bus-Schnittstellenschaltung 5 wird ein Hochzählsignal 9 an einem Hochzähleingang des Softwareinterruptzählers 6 eingegeben. Von der Interner-Bus-Schnittstellenschaltung 5 wird ein Herunterzählsignal 10 an einem Herunterzähleingang des Softwareinter ruptzählers 6 eingegeben. Von der Interner-Bus-Schnittstellenschaltung 5 wird ein Herunterzählsignal 11 an einem Herunterzähleingang des Hardwareinterruptzählers 7 eingegeben. Über die internen Peripheriemodule/externen Anschlüsse 12 wird ein Interruptereignis-Auftrittssignal 13 an einem Hochzähleingang des Hardwareinterruptzählers 7 eingegeben. Ein Softwareinterrupt-Anforderungssignal 14 und ein Hardwareinterrupt-Anforderungssignal 15 werden von der Interruptanforderungssignal-Erzeugungsschaltung 8 in die CPU 1 eingegeben. Vom Softwareinterruptzähler 6 und vom Hardwareinterruptzähler 7 wird ein Signal mit einer Breite mehrerer Bits (z. B. acht Bits) in die Interruptanforderungssignal-Erzeugungsschaltung 8 und die Interner-Bus-Schnittstellenschaltung 5 eingegeben. Obwohl in der 1 nur ein Softwareinterruptzähler 6 und nur ein Hardwareinterruptzähler 7 dargestellt sind, besteht für die Anzahl der Softwareinterruptzähler 6 und die Anzahl der Hardwareinterruptzähler 7 keine Beschränkung auf 1, sondern es sind für jeden von mehreren Interruptfaktoren mehrere Softwareinterruptzähler 6 oder Hardwareinterruptzähler 7 parallel geschaltet. Das heißt, dass für jeden von Interruptfaktoren (jeden von Interrupttypen) der Interruptereignis-Auftrittssignale (Hardwareinterrupts) und der Softwareverarbeitungsvorgänge (Softwareinterrupts), die Interruptverarbeitungen benötigen, Zähler bereitgestellt werden, um die jeweilige Interruptanzahl zu speichern. Dadurch ist es möglich, die Konfiguration des Datenverarbeitungssystems gemäß der ersten Ausführungsform für mehrere Interruptfaktoren zu verwenden.
  • Als Nächstes wird der Betrieb des Datenverarbeitungssystems gemäß der ersten Ausführungsform beschrieben.
  • Die Softwareinterruptverarbeitung (Softwareinterrupt-Ausnahmehandling) wird sie folgt ausgeführt (siehe die 2).
  • Als Erstes wird, wenn die CPU 1 eine Speicheranweisung für eine dem Softwareinterruptzähler 6 im Interruptcontroller 4 zugeordnete Adresse ausführt, diese Adresse auf dem internen Adressenbus 2 platziert, und auf dem internen Datenbus 3 werden Schreibdaten platziert.
  • Die Interner-Bus-Schnittstellenschaltung 5 im Interruptcontroller 4 ermittelt, dass die Adresse auf dem internen Adressenbus 2 die Adresse des Softwareinterruptzählers 6 ist. Ferner ermittelt die Interner-Bus-Schnittstellenschaltung 5, ob die Schreibdaten auf dem internen Datenbus 3 dem Wert 1 oder dem Wert 0 entsprechen. Wenn die Schreibdaten 1 entsprechen, wird das Hochzählsignal 9 für den Softwareinterruptzähler 6 aufgeschaltet. Wenn die Schreibdaten 0 entsprechen, wird das Herunterzählsignal 10 für den Softwareinterruptzähler 6 aufgeschaltet. Dadurch zählt der Softwareinterruptzähler 6 nach oben oder nach unten.
  • Die Interruptanforderungssignal-Erzeugungsschaltung 8 im Interruptcontroller 4 ermittelt, ob der Zählerwert des Softwareinterruptzählers 6 1 oder mehr oder 0 entspricht. Wenn der Zählerwert 1 oder mehr entspricht, wird das Softwareinterrupt-Anforderungssignal 14 an die CPU 1 aufgeschaltet. Wenn der Zählwert 0 ist, wird das Softwareinterrupt-Anforderungssignal 14 an die CPU 1 negiert.
  • Nach dem Aufschalten des Softwareinterrupt-Anforderungssignals 14 startet die CPU 1 die Ausführung einer Softwareinterrupt-Ausnahmehandhabungsroutine.
  • Als Interruptanforderung-Entfernverarbeitung vor dem Ausführen einer Rückkehranweisung vor der Ausnahmeverarbeitung führt die CPU, um die Softwareinterrupt-Ausnahmehandhabungsroutine zu beenden, eine Speicheranweisung zum Schreiben des Datenwerts 0 an der Adresse, die dem Softwareinterruptzähler 6 zugeordnet ist, aus. Dadurch zählt der Softwareinterruptzähler 6 nach unten.
  • Die CPU 1 führt die Rückkehranweisung von der Ausnahmeverarbeitung aus, um sich dadurch aus der Softwareinterrupt-Ausnahmehandhabungsroutine zurückzuziehen.
  • Wenn der Zählwert des Softwareinterruptzählers 6 nach dem Herunterzählen 0 ist, wird das Softwareinterrupt-Anforderungssignal 14 negiert. Wenn der Zählerwert des Softwareinterruptzählers 6 nach dem Herunterzählen 1 oder größer ist, wird das Softwareinterrupt-Anforderungssignal 14 kontinuierlich aufgeschaltet. Daher startet die CPU 1 die Softwareinterrupt-Ausnahmehandhabungsroutine erneut.
  • Wenn die CPU 1 eine Ladeanweisung für die dem Softwareinterruptzähler 6 zugeordnete Adresse ausführt, platziert die Interner-Bus-Schnittstellenschaltung 5 im Interruptcontroller 4 den Zählerwert des Softwareinterruptzählers 6 selbst auf dem internen Datenbus 3. Daher kann die CPU 1 den Zählerwert lesen.
  • Die Hardwareinterruptverarbeitung (Hardwareinterrupt-Ausnahmehandling) wird wie folgt ausgeführt (siehe die 3).
  • Als Erstes wird, wenn die CPU 1 eine Speicheranweisung für eine dem Hardwareinterruptzähler 7 im Interruptcontroller 4 zugeordnete Adresse als Interruptanforderung-Entfernverarbeitung ausführt, die Adresse auf dem internen Adressenbus 2 platziert, und Schreibdaten werden auf dem internen Datenbus 3 platziert.
  • Die Interner-Bus-Schnittstellenschaltung 5 im Interruptcontroller 4 ermittelt, dass die Adresse auf dem internen Adressenbus 2 die Adresse des Hardwareinterruptzählers 7 ist. Außerdem ermittelt die Interner-Bus-Schnittstellenschaltung 5, ob die Schreibdaten auf dem internen Datenbus 3 den Wert 0 haben. Wenn die Schreibdaten 0 sind, wird das Herunterzählsignal 11 an den Hardwareinterruptzähler 7 aufgeschaltet. Dadurch zählt der Hardwareinterruptzähler 7 nach unten.
  • Wenn dasselbe Ereignis an den internen Peripheriemodulen/externen Anschlüssen 12 auftritt, wird das Interruptereignis-Auftrittssignal 13 an den Interruptcontroller 4 aufgeschaltet. Dadurch zählt der Hardwareinterruptzähler 7 nach oben.
  • Die Interruptanforderungssignal-Erzeugungsschaltung 8 im Interruptcontroller 4 ermittelt, ob der Zählerwert des Hardwareinterruptzählers 7 1 oder mehr oder 0 entspricht. Wenn der Zählwert 1 oder mehr entspricht, wird das Hardwareinterrupt-Anforderungssignal 15 an die CPU 1 aufgeschaltet. Wenn der Zählwert 0 ist, wird das Hardwareinterrupt-Anforderungssignal 15 an die CPU 1 negiert.
  • Nach dem Aufschalten des Hardwareinterrupt-Anforderungssignals 15 startet die CPU 1 die Ausführung einer Hardwareinterrupt-Ausnahmehandhabungsroutine (Hardwareinterrupt-Ausnahmeverarbeitungsroutine).
  • Als Interruptanforderung-Entfernverarbeitung vor dem Ausführen einer Rückkehranweisung von der Ausnahmeverarbeitung führt die CPU 1, um die Hardwareinterrupt-Ausnahmehandhabungsroutine zu beenden, eine Speicheranweisung für den Schreibdatenwert 0 an der dem Hardwareinterruptzähler 7 zugeordneten Adresse aus. Dadurch zählt der Hardwareinterruptzähler 7 nach unten.
  • Die CPU 1 führt die Rückkehranweisung von der Ausnahmeverarbeitung aus, um sich dadurch aus der Hardwareinterrupt-Aus nahmehandhabungsroutine zurückzuziehen.
  • Wenn der Zählerwert des Hardwareinterruptzählers 7 nach dem Herunterzählen 0 ist, wird das Hardwareinterrupt-Anforderungssignal 15 negiert. Wenn der Zählerwert des Hardwareinterruptzählers nach dem Herunterzählen 1 oder mehr ist, wird das Hardwareinterrupt-Anforderungssignal 15 kontinuierlich aufgeschaltet. Daher startet die CPU 1 die Hardwareinterrupt-Ausnahmehandhabungsroutine erneut.
  • Wenn die CPU 1 eine Ladeanweisung für die dem Hardwareinterruptzähler 7 zugeordnete Adresse ausführt, platziert die Interner-Bus-Schnittstellenschaltung 5 im Interruptcontroller 4 den Zählerwert des Hardwareinterruptzählers 7 selbst auf dem internen Datenbus 1. Daher kann die CPU 1 den Zählerwert lesen.
  • Wenn mehrere Interruptereignisse auftreten, bestimmt eine Steuerschaltung (nicht dargestellt) im Interruptcontroller die Prioritätsreihenfolge für die Interruptverarbeitung, und das Interruptanforderungssignal wird entsprechend derselben an die CPU ausgegeben.
  • Wie oben beschrieben, zählen beim Datenverarbeitungssystem gemäß der ersten Ausführungsform die Zähler so oft hoch, wie es der Anzahl des Auftretens desselben Interruptanforderung-Erzeugungsereignisses entspricht, und das Interruptanforderungssignal wird aufgeschaltet, wenn der Zählerwert nicht 0 ist. Daher kann das Datenverarbeitungssystem das Interruptanforderungssignal kontinuierlich aufschalten, bis so viele Herunterzähl-Verarbeitungsvorgänge ausgeführt sind, wie Hochzähl-Verarbeitungsvorgänge ausgeführt wurden.
  • Ferner kann die CPU 1, da der Zähler die Anzahl des Auftretens desselben Interruptanforderung-Erzeugungsereignisses speichert und das Interruptanforderungssignal kontinuierlich aufgeschaltet wird, die Interrupt-Ausnahmehandhabungsroutine so oft ausführen, wie es der Anzahl des Auftretens desselben Interruptanforderung-Erzeugungsereignisses entspricht.
  • Wenn dasselbe interne Modul mehrere verschiedene Interruptereignisse an den Interruptcontroller 4 ausgibt, ist es bevorzugt, einen Hardwareinterruptzähler für jedes der Interruptereignisse anzubringen. Daher ist es möglich, die Anzahl des Auftretens desselben Interruptereignisses für jedes Interruptereignis selbst dann zu speichern, wenn dasselbe interne Modul mehrere verschiedene Interruptereignisse ausgibt.
  • (Zweite Ausführungsform)
  • Die 4 ist ein Blockdiagramm, das die Konfiguration eines Datenverarbeitungssystems gemäß einer zweiten Ausführungsform der Erfindung zeigt. Die 5 ist ein zeitbezogenes Diagramm, das eine Softwareinterruptverarbeitung (Softwareinterrupt-Ausnahmehandling) im Datenverarbeitungssystem gemäß der zweiten Ausführungsform zeigt. Die 6 ist ein zeitbezogenes Diagramm, das eine Hardwareinterruptverarbeitung (Hardwareinterrupt-Ausnahmehandling) im Datenverarbeitungssystem gemäß der zweiten Ausführungsform zeigt.
  • Unter Bezugnahme auf die 4 wird als Erstes ein Beispiel für die Konfiguration des Datenverarbeitungssystems gemäß der zweiten Ausführungsform beschrieben. Beim Datenverarbeitungssystem gemäß der zweiten Ausführungsform wird an Stelle der Herunterzählsignale 10 und 11 beim Datenverarbeitungssystem gemäß der ersten Ausführungsform ein von einer CPU 1 ausgegebenes Rückkehranweisungs-Ausführsignal 16 in jeden Softwareinterruptzähler 6 und jeden Hardwareinterruptzähler 7 eingegeben, und jeder Zähler kann auf dieses hin herunter zählen.
  • Als Nächstes wird eine Betriebsweise des Datenverarbeitungssystems gemäß der zweiten Ausführungsform beschrieben.
  • Die Softwareinterruptverarbeitung (Softwareinterrupt-Ausnahmehandling) wird wie folgt ausgeführt (siehe die 5).
  • Als Erstes wird, wenn die CPU 1 eine Speicheranweisung für eine dem Softwareinterruptzähler 6 in einem Interruptcontroller 4a zugeordnete Adresse ausführt, diese Adresse auf einem internen Adressenbus 2 platziert, und Schreibdaten werden auf einem internen Datenbus 3 platziert.
  • Eine Interner-Bus-Schnittstellenschaltung 5 im Interruptcontroller 4a ermittelt, dass die Adresse auf dem internen Adressenbus 2 die Adresse des Softwareinterruptzählers 6 ist. Ferner ermittelt die Interner-Bus-Schnittstellenschaltung 5, ob der Schreibdatenwert auf dem internen Datenbus 3 der Wert 1 oder 0 ist. Wenn der Schreibdatenwert 1 ist, wird ein Hochzählsignal 9 für den Softwareinterruptzähler 6 aufgeschaltet. Dadurch zählt der Softwareinterruptzähler 6 nach oben.
  • Eine Interruptsignal-Erzeugungsschaltung 8 im Interruptcontroller 4a ermittelt, ob der Zählerwert des Softwareinterruptzählers 1 oder mehr oder 0 ist. Wenn der Zählerwert 1 oder mehr ist, wird ein Softwareinterrupt-Anforderungssignal 14 an die CPU 1 aufgeschaltet. Wenn der Zählerwert 0 ist, wird das Softwareinterrupt-Anforderungssignal 14 an die CPU 1 negiert.
  • Nach dem Aufschalten des Softwareinterrupt-Anforderungssignals 14 startet die CPU 1 die Ausführung einer Softwareinterrupt-Ausnahmehandhabungsroutine (Softwareinterrupt-Aus nahmeverarbeitungsroutine).
  • Wenn die CPU 1 eine Rückkehranweisung von der Ausnahmeverarbeitung ausführt, um die Interrupt-Ausnahmehandhabungsroutine zu beenden, wird das Rückkehranweisungs-Ausführsignal 16 von der CPU 1 an den Interruptcontroller 4a aufgeschaltet. Dadurch zählt der Softwareinterruptzähler 6 nach unten. Außerdem zieht sich die CPU 1 aus der Softwareinterrupt-Ausnahmehandhabungsroutine zurück.
  • Wenn der Zählwert des Softwareinterruptzählers 6 nach dem Herunterzählen 0 ist, wird das Softwareinterrupt-Anforderungssignal 14 negiert. Wenn der Zählerwert des Softwareinterruptzählers 6 nach dem Herunterzählen 1 oder mehr ist, wird das Softwareinterrupt-Anforderungssignal 14 kontinuierlich ausgeschaltet. Daher startet die CPU 1 die Softwareinterrupt-Ausnahmehandhabungsroutine erneut.
  • Wenn die CPU 1 eine Ladeanweisung für die dem Softwareinterruptzähler 6 zugeordnete Adresse ausführt, platziert die Interner-Bus-Schnittstellenschaltung 5 im Interruptcontroller 4a den Zählerwert des Softwareinterruptzählers 6 selbst auf dem internen Datenbus 3. Die CPU 1 kann daher den Zählerwert lesen.
  • Die Hardwareinterruptverarbeitung (Hardwareinterrupt-Ausnahmeverarbeitung) wird wie folgt ausgeführt (siehe die 6).
  • Als Erstes wird, wenn an den internen Peripheriemodulen/externen Anschlüssen 12 irgendein Ereignis auftritt, das Interruptereignis-Auftrittssignal 13 an den Interruptcontroller 4a aufgeschaltet. Dadurch zählt der Hardwareinterruptzähler 7 nach oben.
  • Die Interruptanforderungssignal-Erzeugungsschaltung 8 im Interruptcontroller 4a ermittelt, ob der Zählerwert des Hardwareinterruptzählers 7 1 oder mehr oder 0 ist. Wenn der Zählerwert 1 oder mehr ist, wird ein Hardwareinterrupt-Anforderungssignal 15 an die CPU 1 aufgeschaltet. Wenn der Zählerwert 0 ist, wird das Hardwareinterrupt-Anforderungssignal 15 an die CPU 1 negiert.
  • Nach dem Aufschalten des Hardwareinterrupt-Anforderungssignals 15 startet die CPU 1 das Ausführen einer Hardwareinterrupt-Ausnahmehandhabungsroutine (Hardwareinterrupt-Ausnahmeverarbeitungsroutine).
  • Wenn die CPU 1 eine Rückkehranweisung von der Ausnahmeverarbeitung ausführt, um die Interrupt-Ausnahmehandhabungsroutine zu beenden, wird das Rückkehranweisungs-Ausführsignal 16 von der CPU 1 an den Interruptcontroller 4a aufgeschaltet, und der Hardwareinterruptzähler 7 zählt nach unten. Außerdem zieht sich die CPU 1 aus der Hardwareinterrupt-Ausnahmehandhabungsroutine zurück.
  • Wenn der Zählerwert des Hardwareinterruptzählers 7 nach dem Herunterzählen 0 ist, wird das Hardwareinterrupt-Anforderungssignal 15 negiert. Wenn der Zählerwert des Hardwareinterruptzählers 7 nach dem Herunterzählen 1 oder mehr ist, wird das Hardwareinterrupt-Anforderungssignal 15 kontinuierlich aufgeschaltet. Daher startet die CPU 1 die Hardwareinterrupt-Ausnahmehandhabungsroutine erneut.
  • Wenn die CPU 1 eine Ladeanweisung für die dem Hardwareinterruptzähler 7 zugeordnete Adresse ausführt, platziert die Interner-Bus-Schnittstellenschaltung 5 im Interruptcontroller 4a den Zählerwert des Hardwareinterruptzählers 7 selbst auf dem internen Datenbus 3. Die CPU 1 kann daher den Zählerwert lesen.
  • Wie oben beschrieben, kann das Datenverarbeitungssystem gemäß der zweiten Ausführungsform dieselben Vorteile wie das Datenverarbeitungssystem gemäß der ersten Ausführungsform erzielen.
  • (Dritte Ausführungsform)
  • Die 7 ist ein Blockdiagramm, die die Konfiguration eines Datenverarbeitungssystems gemäß einer dritten Ausführungsform der Erfindung zeigt.
  • Beim Datenverarbeitungssystem gemäß der dritten Ausführungsform werden ein Interruptzähler und ein Interruptanforderungssignal für eine Softwareinterruptverarbeitung (Softwareinterrupt-Ausnahmehandling) und eine Hardwareinterruptverarbeitung (Hardwareinterrupt-Ausnahmehandling) gemeinsam verwendet.
  • Das heißt, dass in einem Interruptcontroller 4b des Datenverarbeitungssystems der Softwareinterruptzähler 6 und der Hardwareinterruptzähler 7 gemäß der ersten Ausführungsform durch einen gemeinsamen Interruptzähler 17 ersetzt sind und ein ODER-Gatter 18 vorhanden ist. Außerdem werden das Hochzählsignal 9 von einer Interner-Bus-Schnittstellenschaltung 5 und ein Interruptereignis-Auftrittssignal 13 von internen Peripheriemodulen/externen Anschlüssen 12 in das ODER-Gatter 18 eingegeben. Ein Ausgangssignal des ODER-Gatters 18 wird an einem Hochzähleingang des gemeinsamen Hardwareinterruptzählers 17 eingegeben, und ein Herunterzählsignal 10 wird an einem Herunterzähleingang desselben eingegeben. Ferner sind das Softwareinterrupt-Anforderungssignal 14 und das Hardwareinterrupt-Anforderungssignal 13 durch ein Interruptanforderungssignal 19 ersetzt, das gemeinsam für die Softwareinterruptverarbeitung und die Hardwareinterruptverarbeitung verwendet wird.
  • Auf diese Weise zählt der gemeinsame Hardwareinterruptzähler 17 für jede Softwareverarbeitung durch die CPU 1 und jedes Hardwareereignis durch die internen Peripheriemodule/externen Anschlüsse 12 hoch.
  • Wie oben beschrieben, ist es beim Datenverarbeitungssystem gemäß der dritten Ausführungsform, wenn sowohl für einen Softwareinterrupt als auch einen Hardwareinterrupt dieselbe Interrupt-Ausnahmehandhabungsroutine ausgeführt wird, möglich, eine Schaltungsfläche zu verkleinern und ein Programm im Vergleich zur ersten und zweiten Ausführungsform zu vereinfachen.
  • (Vierte Ausführungsform)
  • Die 8 ist ein Blockdiagramm, das die Konfiguration eines Datenverarbeitungssystems gemäß einer vierten Ausführungsform der Erfindung zeigt.
  • Ähnlich wie bei der dritten Ausführungsform sind beim Datenverarbeitungssystem gemäß der vierten Ausführungsform ein Hardwareinterruptzähler und ein Interruptanforderungssignal für eine Softwareinterruptverarbeitung (Softwareinterrupt-Ausnahmehandling) und eine Hardwareinterruptverarbeitung (Hardwareinterrupt-Ausnahmehandling) gemeinsam verwendet.
  • Das heißt, dass ein zusätzliches Register 20, das über einen internen Adressenbus 2 und einen internen Datenbus 3 Daten von der CPU 1 lesen und Daten an diese schreiben kann, in einem Interruptcontroller 4c des Datenverarbeitungssystems vorhanden ist. Außerdem wird ein Bit im Register 20 als Softwareinterrupt/Hardwareinterrupt-Auswählbit 21 gesetzt.
  • Außerdem ist eine Auswähleinheit 22, die das Hochzählsignal 9 von der Interner-Bus-Schnittstellenschaltung 5 oder das Interruptereignis-Auftrittssignal 13 von den internen Peripheriemodulen/externen Anschlüssen 12 entsprechend dem Softwareinterrupt/Hardwareinterrupt-Auswählbit 21 auswählt, vorhanden, und ein Ausgangssignal derselben wird an einem Hochzähleingang eines gemeinsamen Hardwareinterruptzählers 17 eingegeben. Daher zählt der gemeinsame Hardwareinterruptzähler 17 auf entweder eine Softwareverarbeitung durch die CPU 1 oder ein Hardwareereignis durch die internen Peripheriemodule/externen Anschlüsse 12 hoch.
  • Wenn der Zählerwert des gemeinsamen Hardwareinterruptzählers 17 1 oder mehr entspricht, schaltet eine Interruptanforderungssignal-Erzeugungsschaltung 8 nur entweder das Softwareinterrupt-Anforderungssignal oder das Hardwareinterrupt-Anforderungssignal an die CPU 1 entsprechend dem Softwareinterrupt/Hardwareinterrupt-Auswählbit 21 auf.
  • Wie oben beschrieben, werden beim Datenverarbeitungssystem gemäß der vierten Ausführungsform verschiedene Interrupt-Ausnahmehandhabungsroutinen für eine Softwareinterruptverarbeitung bzw. eine Hardwareinterruptverarbeitung ausgeführt. Wenn jedoch ein Softwareinterrupt und ein Hardwareinterrupt nicht gleichzeitig auftreten, oder wenn die Interruptverarbeitung unter Verwendung des Zählers nur für einen Softwareinterrupt oder einen Hardwareinterrupt ausgeführt wird, kann beim Datenverarbeitungssystem die Schaltungsfläche im Vergleich zur ersten und zweiten Ausführungsform verringert werden. Dadurch ist es möglich, das Datenverarbeitungssystem bei kleinerer Schaltungskonfiguration bei einem großen Zweckbereich anzuwenden.
  • (Fünfte Ausführungsform)
  • Die 9 ist ein Blockdiagramm, das die Konfiguration eines Datenverarbeitungssystems gemäß einer fünften Ausführungsform der Erfindung zeigt.
  • Beim Datenverarbeitungssystem gemäß der fünften Ausführungsform kann eine Interrupt-Prioritätsreihenfolge für jede Interruptanforderung wahlfrei eingestellt werden.
  • Das heißt, dass ein Interrupt-Prioritätsniveauregister 23, das über einen internen Adressenbus 2 und einen internen Datenbus 3 Daten von einer CPU 1 lesen und Daten an diese schreiben kann, in einem Interruptcontroller 4d des Datenverarbeitungssystems vorhanden ist, wodurch es möglich ist, die Interrupt-Prioritätsreihenfolge für jede Interruptanforderung wahlfrei einzustellen.
  • Im Interruptcontroller 4d ermittelt eine Prioritätsreihenfolge-Ermittlungsschaltung 24 die Prioritätsreihenfolge für jede erzeugte Softwareinterruptanforderung und Hardwareinterruptanforderung entsprechend der Einstellung des Interrupt-Prioritätsniveauregisters 23, sie wählt die Interruptanforderungsquelle mit der höchsten Priorität aus, und sie überträgt Information zu dieser (das oben beschriebene Interruptanforderungssignal) an die CPU 1. Außerdem überträgt die Prioritätsreihenfolge-Ermittlungsschaltung 24 auch Prioritätsniveauinformation zur Interruptanforderungsquelle an die CPU 1. Auf diese Weise ist es möglich, wenn die Information zur Interruptanforderungsquelle an die CPU 1 übertragen wird, während diese eine Interruptverarbeitung ausführt, zu ermitteln, ob die gerade ausgeführte Interruptverarbeitung (Interrupt-Ausnahmehandling) oder eine neu übertragene Interruptanforderung höhere Priorität hat und die CPU 1 kann die Verarbeitung mit der höheren Priorität als erste ausfüh ren.
  • Wie oben beschrieben, kann beim Datenverarbeitungssystem gemäß der fünften Ausführungsform eine flexiblere Steuerung erzielt werden, wenn mehrere Typen von Interrupts gleichzeitig erzeugt werden und die Prioritätsreihenfolge fallabhängig dynamisch zu ändern ist.
  • (Spezielles Beispiel einer Interruptverarbeitung)
  • Die 10 ist ein Diagramm, das ein Beispiel eines CPU-Ausführungszustands und eines Interruptverarbeitungs(Interrupt-Ausnahmehandling)-Ablaufs in den Datenverarbeitungssystemen gemäß der ersten bis fünften Ausführungsform der Erfindung zeigt.
  • Gemäß der 10 ist eine Interrupt-Ausnahmehandhabungsroutine 1 (Routine 1) eine Routine, wie sie dann ausgeführt wird, wenn ein Interrupt 1 mit höherer Priorität als der eines Interrupts 2 erzeugt wird. Hierbei ist angenommen, dass der Interrupt 1 regelmäßig erzeugt wird. Während eines Interrupt-Ausnahmehandlings wird ein Status überwacht. Wenn eine bestimmte Bedingung erfüllt ist, wird 1 in den dem Interrupt 2 entsprechenden Softwareinterruptzähler geschrieben, um den Interrupt 2 zu erzeugen. Zum Beispiel überwacht im Fall eines Mikrocomputers, der zur Steuerung eines Automobil-Kraftübertragungsstrangs oder dergleichen verwendet wird, dieser Mikrocontroller, ob ein Fahrpedal betätigt wird, und wenn dies betätigt wird, wird eine Kraftstoff-Einspritzverarbeitung ausgeführt.
  • Auch ist eine Interrupt-Ausnahmehandhabungsroutine 2 (Routine 2) eine Routine, wie sie ausgeführt wird, wenn der Interrupt 2 mit niedriger Priorität als der Interrupt 1 erzeugt wird. Der Interrupt 2 wird während der Interrupt-Ausnahme handhabungsroutine 1 ausgeführt, und es handelt sich um einen Softwareinterrupt unter Verwendung des Softwareinterruptzählers. Wenn während der Ausführung der Interrupt-Ausnahmehandhabungsroutine 1 eine Bedingung erfüllt wird, wird 1 in den Softwareinterruptzähler 6 geschrieben. Nach dem Ausführen der Interrupt-Ausnahmehandhabungsroutine 2 wird 0 in den dem Interrupt 2 entsprechenden Softwareinterruptzähler 6 geschrieben. Die Interrupt-Ausnahmehandhabungsroutine 2 ist z. B. eine Verarbeitungroutine zum tatsächlichen Ausführen der Kraftstoffeinspritzung. Die Routine 2 benötigt viel Zeit zum Berechnen der Einspritzmenge.
  • Als Erstes startet die CPU 1, wenn der Interrupt 1 während der Ausführung einer Hauptroutine erzeugt wird (Schritt S100) die Ausführung der Interrupt-Ausnahmehandhabungsroutine 1 (Schritt S101). Wenn eine Bedingung nicht erfüllt ist, zieht sich die CPU 1 aus der Interrupt-Ausnahmehandhabungsroutine 1 zurück (sie beendet die Interrupt-Ausnahmehandhabungsroutine 1), und sie kehrt zur Hauptroutine zurück. Dabei ist der Zählwert des Softwareinterruptzählers 0.
  • Wenn der Interrupt 1 während der Ausführung der Hauptroutine erneut erzeugt wird (Schritt S102), startet die CPU 1 die Ausführung der Interrupt-Ausnahmehandhabungsroutine 1 (Schritt S103). Wenn eine Bedingung erfüllt ist, schreibt die CPU 1 den Wert 1 in den Softwareinterruptzähler 6, und dann zieht sie sich aus der Interrupt-Ausnahmehandhabungsroutine 1 zurück. Dabei ist der Zählerwert des Softwareinterruptzählers 6 der Wert 1.
  • Wenn der Interrupt 2 erzeugt wird, nachdem die CPU 1 den Wert 1 in den Softwareinterruptzähler 6 geschrieben hat oder sie die Interrupt-Ausnahmehandhabungsroutine 1 für den Interrupt 1 beendet hat, startet die CPU 1 die Ausführung der Interrupt-Ausnahmehandhabungsroutine 2 (Schritt S104). Hier bei ist angenommen, dass der Interrupt 1 während der Ausführung der Interrupt-Ausnahmehandhabungsroutine 2 erzeugt wird (Schritt S105).
  • Obwohl die CPU 1 die Interrupt-Ausnahmehandhabungsroutine 2 ausführt, startet sie die Ausführung der Interrupt-Ausnahmehandhabungsroutine 1, da der Interrupt 1 mit höherer Priorität als der des Interrupts 2 erzeugt wird (Schritt S106). Wenn eine Bedingung erfüllt ist, schreibt die CPU 1 den Wert 1 in den Softwareinterruptzähler 6 ein, und dann zieht sie sich aus der Routine 1 zurück. Dabei beträgt der Zählerwert des Softwareinterruptzählers, entsprechend der Interrupt-Ausnahmehandhabungsroutine 2, 2.
  • Da sich die CPU 1 aus der Interrupt-Ausnahmehandhabungsroutine 1 zurückgezogen hat, startet sie die Ausführung der Interrupt-Ausnahmehandhabungsroutine 2 neu (Schritt S105).
  • Wenn die CPU 1 die Interrupt-Ausnahmehandhabungsroutine 2 beendet und 0 in den Softwareinterruptzähler 6 einschreibt, zieht sie sich aus der Routine 2 zurück (Schritt S108). Dabei beträgt der Zählerwert des Softwareinterruptzählers 1. Da der Zählerwert nicht 0 ist, wird der Interrupt 2 erneut erzeugt und die CPU 1 startet die Ausführung der Interrupt-Ausnahmehandhabungsroutine 2 (Schritt 109). Nun wird angenommen, dass der Interrupt 1 während der Ausführung der Interrupt-Ausnahmehandhabungsroutine 2 erzeugt wird (Schritt S110).
  • Obwohl die CPU 1 die Interrupt-Ausnahmehandhabungsroutine 2 ausführt, startet sie die Ausführung der Interrupt-Ausnahmehandhabungsroutine 1, da der Interrupt 1 mit höherer Priorität als der des Interrupts 2 erzeugt wird (Schritt S111). Wenn eine Bedingung nicht erfüllt ist, zieht sich die CPU 1 aus der Routine 1 zurück.
  • Da sich die CPU 1 aus der Interrupt-Ausnahmehandhabungsroutine 1 zurückzieht, startet sie die Ausführung der Interrupt-Ausnahmehandhabungsroutine 2 neu (Schritt S112).
  • Nachdem die CPU 1 die Interrupt-Ausnahmehandhabungsroutine 2 beendet hat und 0 in den Softwareinterruptzähler 6 geschrieben hat, zieht sie sich aus der Routine 2 zurück (Schritt S113). Dabei beträgt der Zählerwert 0.
  • Wenn der Interrupt 1 während der Ausführung der Hauptroutine erzeugt wird (Schritt S114), startet die CPU 1 die Interrupt-Ausnahmehandhabungsroutine 1 (Schritt S115). Wenn eine Bedingung nicht erfüllt ist, zieht sich die CPU 1 aus der Routine 1 zurück, und sie kehrt zur Hauptroutine zurück. Danach wird, ähnlich wie bei den obigen Schritten, der Interrupt 1 während der Ausführung der Hauptroutine erzeugt (Schritt S116).
  • (Sechste Ausführungsform)
  • Die 11 ist ein Blockdiagramm, das die Konfiguration eines Datenverarbeitungssystems gemäß einer sechsten Ausführungsform der Erfindung zeigt.
  • Unter Bezugnahme auf die 11 wird als Erstes ein Beispiel der Konfiguration des Datenverarbeitungssystems gemäß der sechsten Ausführungsform beschrieben. Das Datenverarbeitungssystem gemäß der sechsten Ausführungsform verwendet ein Peripheriemodul 42 wie einen AD-Wandler und einen DMAC 34 als interne Peripheriemodule/externe Anschlüsse 12 gemäß der ersten bis fünften Ausführungsform. Außerdem wird vom Peripheriemodul 42 und dem DMAC 34 ein Interruptereignis-Auftrittssignal 13 in einen Hardwareinterruptzähler 7 in einem Interruptcontroller 4 eingegeben. Genauer gesagt, können, selbst dann, wenn mehrere Interruptanforderungen von einer bestimmten Anforderungsquelle erzeugt werden, d.h., wenn mehrere Einzeldaten sukzessive abgerufen werden, um mehrere Hardwareinterruptanforderungen zu erzeugen, wenn bei jeder Datenübertragung vom AD-Wandler unter Verwendung des DMAC 34 ein Hardwareinterrupt erzeugt wird (das Interruptereignis-Auftrittssignal 13 ausgegeben wird) und gleichzeitig eine Verarbeitung mit höherer Priorität (z. B. eine CPU-Verarbeitung) vorhanden ist, und selbst dann, wenn dieselbe Hardwareinterruptanforderung erzeugt wird, während gerade eine Hardwareinterruptverarbeitung (Hardwareinterrupt-Ausnahmehandling) ausgeführt wird, wegen der langen Verarbeitungszeit derselben, so viele Interruptverarbeitungen ausgeführt werden, wie Interruptanforderungen vorliegen, wenn die Konfiguration gemäß der sechsten Ausführungsform verwendet wird.
  • Das Datenverarbeitungssystem gemäß der sechsten Ausführungsform verfügt beispielsweise über die CPU 1, den Interruptcontroller 4, den DMAC 34, eine FPU 37, einen internen RAM 38, eine Peripheriebus-Steuerschaltung 39 und ein Peripheriemodul 42 wie den AD-Wandler. Die CPU 1, der Interruptcontroller 4, der DMAC 34, die FPU 37, der interne RAM 38 und die Peripheriebus-Steuerschaltung 39 sind durch einen internen Adressenbus 2 oder einen internen Datenbus 3 elektrisch miteinander verbunden. Die Peripheriebus-Steuerschaltung 39 ist durch einen Peripherie-Adressenbus 40 und einen Peripherie-Datenbus 41 elektrisch mit dem Peripheriemodul 42 verbunden.
  • Der DMAC 34 verfügt z. B. über eine Interner-Bus-Schnittstellenschaltung 35, eine Ganzzahl/Gleitkommazahl-Wandlerschaltung 36 und eine Steuerschaltung (nicht dargestellt), die Übertragungsinformation einstellt und einen Übertragungsvorgang tatsächlich steuert. Die Interner-Bus-Schnitt stellenschaltung 35 ist mit der Ganzzahl/Gleitkommazahl-Wandlerschaltung 36 verbunden, um ganzzahlige Daten und Gleitkommadaten zu übertragen. Ferner wird das Interruptereignis-Auftrittssignal 13 vom Peripheriemodul 42 in den Interruptcontroller 4 eingegeben.
  • Als Nächstes wird eine Betriebsweise des Datenverarbeitungssystems gemäß der sechsten Ausführungsform beschrieben.
  • Für den DMAC 34 werden eine Übertragungsstartbedingung, eine Übertragungsquellenadresse und eine Übertragungszieladresse eingestellt. Hierbei wird angenommen, dass eine dem Peripheriemodul (z. B. dem AD-Wandler) 42 zugeordnete Adresse die Übertragungsquellenadresse ist und eine dem internen RAM 38 zugeordnete Adresse die übertragungszieladresse ist. Wenn die für den DMAC 34 eingestellte Übertragungsstartbedingung erfüllt ist, platziert der DMAC 34 die eingestellte Übertragungsquellenadresse auf dem internen Adressenbus 2, um Daten an dieser zu lesen.
  • Die Peripheriebus-Steuerschaltung 39 platziert die Adresse, die auf dem internen Adressenbus 2 platziert wurde, auf dem Peripherie-Adressenbus 40.
  • Das Peripheriemodul 42 platziert Daten an der zugeordneten Adresse auf dem Peripherie-Datenbus 41.
  • Die Peripheriebus-Steuerschaltung 39 platziert die Daten, die auf dem Peripherie-Datenbus 41 platziert wurden, auf dem internen Datenbus 3.
  • Die Interner-Bus-Schnittstellenschaltung 35 im DMAC 34 erfasst die auf dem internen Datenbus 3 platzierten Daten, und sie überträgt sie an die Ganzzahl/Gleitkommazahl-Wandlerschaltung 36 im DMAC 34. Die Ganzzahl/Gleitkommazahl-Wand lerschaltung 36 wandelt die in einem Ganzzahlenformat empfangenen Daten in ein Gleitkommazahlformat um, und sie überträgt die gewandelten Daten an die Interner-Bus-Schnittstellenschaltung 35.
  • Die Interner-Bus-Schnittstellenschaltung 35 platziert die Übertragungszieladresse auf dem internen Adressenbus 2, und sie platziert die in das Gleitkommazahlformat gewandelten Daten auf dem internen Datenbus 3.
  • Der interne RAM 38 schreibt die auf dem internen Datenbus 3 platzierten Daten an der Adresse ein, die auf dem internen Adressenbus 2 platziert ist.
  • Die CPU 1 oder die FPU 37 platziert die Übertragungszieladresse auf dem internen Adressenbus 2, wenn sie die durch den DMAC 34 übertragenen Daten liest.
  • Der interne RAM 38 platziert die Daten, die an der auf dem internen Adressenbus 2 platzierten Adresse eingeschrieben sind, auf dem internen Datenbus 3.
  • Die CPU 1 oder die FPU 37 erfasst Daten durch Abrufen der auf dem internen Datenbus 3 platzierten Daten.
  • Wie oben beschrieben, können beim Datenverarbeitungssystem gemäß der sechsten Ausführungsform, da die Funktion zum Wandeln der Daten im Ganzzahlformat in Daten im Gleitkommazahlformat im DMAC 34 vorhanden ist, die durch diesen übertragenen Daten als Gleitkommazahlen erfasst werden.
  • Ferner ist es überflüssig, dass die CPU 1 oder die FPU 37 die Daten im Ganzzahlenformat als solche im Gleitkommazahlenformat wandelt, so dass der Systemdurchsatz verbessert ist.
  • (Siebte Ausführungsform)
  • Die 12 ist ein Blockdiagramm, das die Konfiguration eines Datenverarbeitungssystems gemäß einer siebten Ausführungsform der Erfindung zeigt.
  • Beim Datenverarbeitungssystem gemäß der siebten Ausführungsform sind der interne Adressenbus 2 und der interne Datenbus 3 im Datenverarbeitungssystem gemäß der sechsten Ausführungsform geteilt, und der interne Adressenbus 2 und der interne Datenbus 3 sind mit einem anderen internen Adressenbus 44 und einem anderen internen Datenbus 45 mittels einer Busbrücke 43 verbunden.
  • Mit dem internen Adressenbus 2 und dem internen Datenbus 3 sind eine CPU 1 und eine FPU 37 verbunden.
  • Mit den beiden Paaren des internen Adressenbusses 2 und des internen Datenbusses sowie des internen Adressenbusses 44 und des internen Datenbusses 45 ist ein interner RAM 38 verbunden. Auf diesen internen RAM 38 kann daher durch beide Paare zugegriffen werden.
  • Mit dem internen Adressenbus 44 und dem internen Datenbus 45 ist ein DMAC 34 verbunden, der diese Busse verwendet, wenn er Daten von einer Übertragungsquelle an ein Übertragungsziel überträgt.
  • Wie oben beschrieben, kann die CPU 1 beim Datenverarbeitungssystem gemäß der siebten Ausführungsform den internen Adressenbus 2 und den internen Datenbus 3 selbst dann verwenden, während der DMAC 34 Daten überträgt. Daher kann die CPU 1 eine Anweisung an den internen RAM 38 ohne Eingriff durch den DMAC 34 ausführen, wodurch der Systemdurchsatz verbessert wird.
  • (Achte Ausführungsform)
  • Die 13 ist ein Blockdiagramm, das die Konfiguration eines Datenverarbeitungssystems gemäß einer achten Ausführungsform der Erfindung zeigt.
  • Beim Datenverarbeitungssystem gemäß der achten Ausführungsform ist im DMAC 34 gemäß der sechsten Ausführungsform ein Register 46 vorhanden, das selektiv bestimmten kann, welcher Teil von von einer Übertragungsquelle gelesenen Daten verwendet wird.
  • Wenn ein Peripheriemodul 42 (z. B. ein AD-Wandler) über eine Auflösung von z. B. 12 Bits verfügt, haben Daten, die von analogen in digitale Daten gewandelt wurden, 12 Bits. Indessen verfügen die internen Busse und die Peripheriebusse über die n-te Potenz von 2 von Bits, mit 32 Bits, 16 Bits oder 8 Bits. Daher kann dann, wenn ein Datenwert von 16 Bits zu lesen ist, wenn der digital gewandelte Datenwert z. B. die ganze Zahl 12'h012 ist, der Datenwert 16'0h0120 gelesen werden, wenn der AD-Wandler so konzipiert ist, dass er über links ausgerichtete Daten verfügt, und es kann der Datenwert 16'h0012 gelesen werden, wenn der AD-Wandler so konzipiert ist, dass er über rechts ausgerichtete Daten verfügt. Es ist zu beachten, dass 12'h 12 Bits in Hexadezimalnotation repräsentiert und 16'h 16 Bits in Hexadezimalnotation repräsentiert.
  • Um die oben genannten Fälle zu meistern, ist das Register 46 von 1 Bit im DMAC 34 vorhanden. Eine Ganzzahl/Gleitkommazahl-Wandlerschaltung 36 ermittelt auf Grundlage des Registerwerts im Register 46, ob links ausgerichtete Daten oder rechts ausgerichtete Daten für die von der Übertragungsquel le übertragenen Daten effektiver sind.
  • Wie oben beschrieben, kann das Datenverarbeitungssystem gemäß der achten Ausführungsform unabhängig davon angewandt werden, ob die von der Übertragungsquelle gelesenen Daten links oder rechts ausgerichtete Daten sind. Dadurch ist die Vielseitigkeit einer Schnittstelle des Datenverarbeitungssystems zum Peripheriemodul verbessert.
  • Vorstehend wurde die durch die Erfinder der vorliegenden Erfindung geschaffene Erfindung auf Grundlage der Ausführungsformen konkret beschrieben. Jedoch ist die Erfindung selbstverständlich nicht auf die vorstehenden Ausführungsformen beschränkt, und innerhalb des Schutzumfangs der Erfindung können verschiedene Modifizierungen und Änderungen vorgenommen werden.
  • Wie es bisher detailliert ausgeführt wurde, ist die in der vorliegenden Anmeldung offenbarte Erfindung bei einem Datenverarbeitungssystem wie einem Mikrocomputer anwendbar. Insbesondere ist die Erfindung optimal bei einem zur Echtzeitsteuerung verwendeten Hochgeschwindigkeits-Mikrocomputer erzeugnis, einem zur Automobilsteuerung oder Motorsteuerung verwendeten Mikrocomputererzeugnis oder einem beliebigen Mikrocomputersystem unter Verwendung von Interrupts optimal anwendbar.

Claims (10)

  1. Datenverarbeitungssystem mit: – einer zentralen Verarbeitungseinheit; – einem Zähler, der die Anzahl des Auftretens desselben Interruptanforderung-Erzeugungsereignisses speichert, bei jedem Auftreten desselben hochzählt und bei jeder Verarbeitung zum Beenden einer Interrupt-Ausnahmehandhabungsroutine durch die zentrale Verarbeitungseinheit herunterzählt; und – einer Schaltung, die ein Interruptanforderungssignal aufschaltet und dieses an die zentrale Verarbeitungseinheit ausgibt, wenn der Wert des Zählers nicht null ist.
  2. Datenverarbeitungssystem nach Anspruch 1, bei dem das Interruptanforderung-Erzeugungsereignis eine einen Softwareinterrupt erzeugende Softwareverarbeitung oder ein einen Hardwareinterrupt erzeugendes Hardwareereignis ist.
  3. Datenverarbeitungssystem nach Anspruch 1 mit mehreren Zählern für jeden von mehreren Interruptfaktoren.
  4. Datenverarbeitungssystem nach Anspruch 1, bei dem der Zähler bei jeder Verarbeitung zum Entfernen einer Interruptanforderung herunterzählt, die als Verarbeitung zum. Beenden der Interrupt-Ausnahmehandhabungsroutine durch die zentrale Verarbeitungseinheit ausgeführt wird.
  5. Datenverarbeitungssystem nach Anspruch 1, bei dem der Zähler bei jeder Rückkehranweisung von einer Ausnahmeverarbeitung herunterzählt, die als Verarbeitung zum Beenden der Interrupt-Ausnahmehandhabungsroutine durch die zentrale Verarbeitungseinheit ausgeführt wird.
  6. Datenverarbeitungssystem nach Anspruch 2, ferner mit: – einem Register, das Daten aus der zentralen Verarbeitungseinheit schreiben kann und über ein Softwareinterrupt/Hardwareinterrupt-Auswählbit verfügt; – wobei der Zähler auf Grundlage von Information im Auswählbit hochzählt.
  7. Datenverarbeitungssystem nach Anspruch 1, ferner mit: – einem Interruptprioritätsniveau-Register, das Daten aus der zentralen Verarbeitungseinheit schreiben kann und für jede Interruptanforderung eine Interrupt-Prioritätsreihenfolge einstellen kann; und – einer Schaltung, die die Prioritätsreihenfolge auf Grundlage von Information vom Interrupt-Prioritätsniveauzähler bestimmt und Information von der Interruptanforderungsquelle mit der höchsten Priorität an die zentrale Verarbeitungseinheit überträgt.
  8. Datenverarbeitungssystem nach Anspruch 1, ferner mit: – einer Datenübertragungseinheit mit einer Wandlerschaltung zum Wandeln einer ganzen Zahl in eine Gleitkommazahl; – wobei die Datenübertragungseinheit die ganze Zahl unter Verwendung der Wandlerschaltung in eine Gleitkommazahl wandelt, wenn sie Daten von einer Peripherieschaltung an einen Speicher überträgt.
  9. Datenverarbeitungssystem nach Anspruch 8, bei dem die Peripherieschaltung ein Analog-Digital-Wandler ist.
  10. Datenverarbeitungssystem nach Anspruch 8, bei dem die Datenübertragungseinheit die Daten entsprechend einem Hardwareinterrupt von der Peripherieschaltung überträgt.
DE200510002375 2004-02-27 2005-01-18 Datenverarbeitungssystem Withdrawn DE102005002375A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004053421A JP2005242806A (ja) 2004-02-27 2004-02-27 データ処理装置
JP2004-53421 2004-02-27

Publications (1)

Publication Number Publication Date
DE102005002375A1 true DE102005002375A1 (de) 2005-09-15

Family

ID=34858311

Family Applications (1)

Application Number Title Priority Date Filing Date
DE200510002375 Withdrawn DE102005002375A1 (de) 2004-02-27 2005-01-18 Datenverarbeitungssystem

Country Status (3)

Country Link
US (1) US7464210B2 (de)
JP (1) JP2005242806A (de)
DE (1) DE102005002375A1 (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006161645A (ja) 2004-12-06 2006-06-22 Denso Corp パワートレイン制御用センサ信号処理装置
US7404025B2 (en) * 2005-04-14 2008-07-22 Texas Instruments Incorporated Software programmable dynamically reconfigurable scheme for controlling request grant and masking for ultra high priority accessor during arbitration
US7380040B2 (en) * 2005-04-14 2008-05-27 Texas Instruments Incorporated Software programmable dynamic arbitration scheme
US7689750B2 (en) * 2008-03-13 2010-03-30 Dell Products L.P. System and method to dynamically order system management interrupt handler dispatches
JP2010271993A (ja) * 2009-05-22 2010-12-02 Renesas Electronics Corp 割込み処理装置及び方法
GB2503471B (en) * 2012-06-27 2015-05-06 Nordic Semiconductor Asa Integrated-circuit radio
CN103488953B (zh) * 2013-10-08 2016-01-20 飞天诚信科技股份有限公司 一种应用于多功能设备的智能切换方法
GB2521607B (en) 2013-12-23 2016-03-23 Nordic Semiconductor Asa Integrated-Circuit Radio
CN103885828B (zh) * 2014-04-08 2017-07-14 飞天诚信科技股份有限公司 一种硬件资源的切换方法

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69114321T2 (de) * 1990-02-20 1996-07-18 Nec Corp Zum Durchführen der Unterbrechungsverschachtelungsfunktion geeignetes Unterbrechungssteuerungsgerät.
US5542076A (en) * 1991-06-14 1996-07-30 Digital Equipment Corporation Method and apparatus for adaptive interrupt servicing in data processing system
JPH08314731A (ja) 1995-05-18 1996-11-29 Sharp Corp マイクロコンピュータ
US5875294A (en) * 1995-06-30 1999-02-23 International Business Machines Corporation Method and system for halting processor execution in response to an enumerated occurrence of a selected combination of internal states
US5748855A (en) * 1995-10-02 1998-05-05 Iinternational Business Machines Corporation Method and system for performance monitoring of misaligned memory accesses in a processing system
US5708814A (en) * 1995-11-21 1998-01-13 Microsoft Corporation Method and apparatus for reducing the rate of interrupts by generating a single interrupt for a group of events
US6240483B1 (en) * 1997-11-14 2001-05-29 Agere Systems Guardian Corp. System for memory based interrupt queue in a memory of a multiprocessor system
JP3228708B2 (ja) * 1998-04-03 2001-11-12 パイオニア株式会社 伝送システムにおける受信インターフェース装置
US6615305B1 (en) * 1998-08-27 2003-09-02 Intel Corporation Interrupt pacing in data transfer unit
US6256699B1 (en) * 1998-12-15 2001-07-03 Cisco Technology, Inc. Reliable interrupt reception over buffered bus
US6754754B1 (en) * 1999-12-30 2004-06-22 Intel Corporation Apparatus and method for end of interrupt handling
US6845419B1 (en) * 2000-01-24 2005-01-18 Freescale Semiconductor, Inc. Flexible interrupt controller that includes an interrupt force register
US6971098B2 (en) * 2001-06-27 2005-11-29 Intel Corporation Method and apparatus for managing transaction requests in a multi-node architecture
US7552261B2 (en) * 2001-10-12 2009-06-23 Mips Technologies, Inc. Configurable prioritization of core generated interrupts
US6988156B2 (en) * 2002-04-18 2006-01-17 Sun Microsystems, Inc. System and method for dynamically tuning interrupt coalescing parameters
US20050289306A1 (en) * 2004-06-28 2005-12-29 Sridhar Muthrasanallur Memory read requests passing memory writes
DE102004042170B4 (de) * 2004-08-31 2009-02-19 Advanced Micro Devices, Inc., Sunnyvale Nachrichtenbasierte Interrupttabelle
US7698493B2 (en) * 2005-08-31 2010-04-13 Ati Technologies, Inc. Methods and apparatus for translating write request messages in a computing system
US8516165B2 (en) * 2005-10-19 2013-08-20 Nvidia Corporation System and method for encoding packet header to enable higher bandwidth efficiency across bus links

Also Published As

Publication number Publication date
US7464210B2 (en) 2008-12-09
JP2005242806A (ja) 2005-09-08
US20050193156A1 (en) 2005-09-01

Similar Documents

Publication Publication Date Title
DE102005002375A1 (de) Datenverarbeitungssystem
EP0050304B1 (de) Multiprozessorsystem mit Ermittlung des ein kleinstes Ergebnis erzielenden Prozessors
DE2411963C3 (de) Elektronische Datenverarbeitungsanlage mit einer Prioritätssteuerschaltung mit änderbaren Steuerblöcken
EP1917589B1 (de) Verfahren und vorrichtung zum vergleich von daten bei einem rechnersystem mit wenigstens zwei ausführungseinheiten
DE2533737C2 (de) Mikroprozessor mit aufteilbarer Adressenschiene
DE102009054637A1 (de) Verfahren zum Betreiben einer Recheneinheit
DE4445651A1 (de) Verfahren zur Steuerung von technischen Vorgängen
DE102004061339A1 (de) Scheduling-Verfahren, insbesondere Kontex-Scheduling-Verfahren, und Einrichtung zur Verwendung bei einem Scheduling-Verfahren
EP2561415B1 (de) Datenverwaltungsverfahren und speicherprogrammierbare steuerung
EP0590175B1 (de) Prozesssteuerungssystem
DE112013007676T5 (de) Informationsvorrichtung
DE2726679A1 (de) Kanalsteuerung fuer datenverarbeitungsanlagen und verfahren zu ihrem betrieb
EP1260905B1 (de) Programmgesteuerte Einheit
DE102018123563B4 (de) Verfahren zur Zwischenkernkommunikation in einem Mehrkernprozessor
DE102020204890A1 (de) Elektronische steuervorrichtung
DE102014213826B4 (de) Verfahren zum Synchronisieren von Zustandswechseln in Mehrkernrechnern eingebetteter Systeme
DE102020204958A1 (de) Elektronische steuereinheit
DE102009009730B4 (de) Lokale Timer-Zelle deren Verwendung und Verfahren zum Betreiben eines Moduls
DE102012208753A1 (de) Mikrocomputer mit einzelkern
DE102021101309A1 (de) Elektronische steuervorrichtung
DE102022116017A1 (de) Elektronische steuerungsvorrichtung
DE102021115806A1 (de) Elektronische steuereinheit
EP3331740B1 (de) Verfahren zum betreiben einer steuervorrichtung und diagnosesystem
WO2021122366A1 (de) Verbesserung der betriebsparameter eines rechensystems im fahrzeug
DE102022116016A1 (de) Elektronische steuerungsvorrichtung

Legal Events

Date Code Title Description
8127 New person/name/address of the applicant

Owner name: DENSO CORPORATION, KARIYA-SHI, AICHI-KEN, JP

Owner name: RENESAS ELECTRONICS CORP., KAWASAKI-SHI, KANAG, JP

R005 Application deemed withdrawn due to failure to request examination

Effective date: 20120119