DE102005060898A1 - Datenverarbeitungssystem mit mehreren Ausführungseinheiten - Google Patents

Datenverarbeitungssystem mit mehreren Ausführungseinheiten Download PDF

Info

Publication number
DE102005060898A1
DE102005060898A1 DE200510060898 DE102005060898A DE102005060898A1 DE 102005060898 A1 DE102005060898 A1 DE 102005060898A1 DE 200510060898 DE200510060898 DE 200510060898 DE 102005060898 A DE102005060898 A DE 102005060898A DE 102005060898 A1 DE102005060898 A1 DE 102005060898A1
Authority
DE
Germany
Prior art keywords
operating state
data processing
processing system
memory
control unit
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
DE200510060898
Other languages
English (en)
Inventor
Werner Harter
Thomas Kottke
Andreas Steininger
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 DE200510060898 priority Critical patent/DE102005060898A1/de
Priority to PCT/EP2006/069575 priority patent/WO2007071589A1/de
Publication of DE102005060898A1 publication Critical patent/DE102005060898A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)

Abstract

Ein Datenverarbeitungssystem umfasst wenigstens eine erste und eine zweite Ausführungseinheit (100, 200) und eine Steuereinheit (5), die eingerichtet ist, zwischen wenigstens einem ersten und einem zweiten Betriebszustand des Systems umzuschalten. Der erste Betriebszustand ist ein energiesparender Betriebszustand, in welchem die Leistungsaufnahme der ersten Ausführungseinheit (200) gegenüber der Leistungsaufnahme im zweiten Betriebszustand reduziert ist.

Description

  • Stand der Technik
  • Die vorliegende Erfindung betrifft ein Datenverarbeitungssystem mit wenigstens einer ersten und einer zweiten Ausführungseinheit und einer Steuereinheit, die eingerichtet ist, zwischen wenigstens einem ersten und einem zweiten Betriebszustand des Systems umzuschalten.
  • Ein solches Datenverarbeitungssystem ist aus DE 103 49 581 A1 bekannt. Bei diesem bekannten System sind die Betriebszustände, zwischen denen eine Umschaltung möglich ist, ein superskalarer Betriebszustand, in dem die Ausführungseinheiten jeweils für sie spezifische Anweisungen ausführen, und ein Sicherheits-Betriebszustand, in dem die Ausführungseinheiten identische Anweisungen ausführen. Während in dem superskalaren Betriebszustand hohe Verarbeitungsleistungen erzielbar sind, indem Aufgaben von den Ausführungseinheiten arbeitsteilig erledigt werden, ist in dem Sicherheits-Betriebszustand eine Erkennung und Behebung von spontanen Fehlern der Verarbeitungseinheiten möglich, indem ihre Verarbeitungsergebnisse fortlaufend verglichen werden.
  • Die hohe Verarbeitungsleistung oder Verarbeitungssicherheit dieses bekannten Systems macht eine leistungsfähige Energieversorgung erforderlich. Diese bereitzustellen kann insbesondere bei netzunabhängigen Anwendungen problematisch sein. Bei Anwendungen im Kfz-Bereich führt ein solches System, vor allem, wenn es auch beim Stillstand des Fahrzeugs in Betrieb bleibt, zu einer beträchtlichen Belastung der Fahrzeugbatterie. Durch die starke Belastung der Batterie während des Hochfahrens der elektrischen Systeme des Fahrzeugs im Zeitraum zwischen dem Aufschließen des Fahrzeugs und dem Start des Motors kann es zu einem Zusammenbruch der Batterie und in Konsequenz zu Startschwierigkeiten des Fahrzeugs kommen.
  • Um die Leistungsaufnahme von Datenverarbeitungssystemen im netzunabhängigen Betrieb zu verringern, sind Ausführungseinheiten vorgeschlagen worden, von denen einzelne Teile elektrisch gesteuert stilllegbar sind oder die in der Lage sind, mit einer reduzierten Taktfrequenz zu arbeiten, um die Leistungsaufnahme zu drosseln. Die Stilllegung von Schaltungsteilen führt jedoch zu einer eingeschränkten Funktionsfähigkeit dieser Ausführungseinheiten, und die Verringerung ihrer Taktrate hat zur Folge, dass die Verarbeitungszeiten zunehmen und bei zeitkritischen Anwendungen maximal zulässige Verarbeitungszeiten evtl. nicht eingehalten werden können. Zwar wäre es bei einem Datenverarbeitungssystem mit mehreren Ausführungseinheiten denkbar, das gesamte System mit reduzierter Taktrate zu betreiben und die Bearbeitung zeitkritischer Aufgaben, die bei voller Taktrate von einer Ausführungseinheit allein erledigt werden können, im Zustand mit reduzierter Taktrate auf die verschiedenen Ausführungseinheiten zu verteilen. Diese Lösung ist jedoch nur eingeschränkt praktikabel, da sie eine aufwändige Anpassung der Betriebsprogramme des Systems an den Betrieb mit reduzierter Taktrate erfordert.
  • Vorteile der Erfindung
  • Aufgabe der vorliegenden Erfindung ist, ein Datenverarbeitungssystem anzugeben, das die rechtzeitige Bearbeitung zeitkritischer Aufgaben auch in einem Zustand mit eingeschränkter Leistungsaufnahme ermöglicht.
  • Die Aufgabe wird gelöst durch ein Datenverarbeitungssystem mit den Merkmalen des Anspruchs 1. Da im energiesparenden Betriebszustand lediglich die Leistungsaufnahme der ersten Ausführungseinheit beschränkt wird, kann die Verarbeitungskapazität der zweiten Ausführungseinheit ungeschmälert bleiben, so dass diese zeitkritische Aufgaben mit der gleichen Reaktionszeit zu bearbeiten vermag wie im normalen Betriebszustand.
  • Die Verarbeitungsleistung bzw. Leistungsaufnahme der zweiten Ausführungseinheit ist im normalen und im energiesparenden Betriebszustand gleich.
  • Der normale Betriebszustand kann ein superskalarer Betriebszustand oder ein Sicherheits-Betriebszustand sein; vorzugsweise ist das System in der Lage, wahlweise den superskalaren Betriebszustand oder den Sicherheits-Betriebszustand einzunehmen.
  • In dem energiesparenden ersten Betriebszustand kann die Leistungsaufnahme der ersten Ausführungseinheit durch Herabsetzen der ihr zugefügten Taktrate reduziert werden.
  • Zu diesem Zweck ist vorzugsweise ein Taktgenerator im Normalbetriebszustand direkt und im energiesparenden Betriebszustand über einen Frequenzteiler mit der ersten Ausführungseinheit verbunden.
  • Alternativ kann die Leistungsaufnahme der ersten Ausführungseinheit auch durch Beschalten mit einem Haltesignal verringert werden.
  • Ein Speicher des Datenverarbeitungssystems sollte zumindest von den Ausführungseinheiten auszuführende Anweisungen enthalten.
  • Um den Zugriff der Ausführungseinheiten auf den Speicher zu koordinieren, ist vorzugsweise eine Speicherzugriffssteuereinheit vorgesehen, die über einen Adressbus mit dem Speicher kommuniziert, wobei jeder Ausführungseinheit ein Eingang der Speicherzugriffssteuereinheit zum Empfangen vom Speicheradressen von den Ausführungseinheiten zugeordnet ist. Die Speicherzugriffssteuereinheit weist Pufferspeicher für von den Ausführungseinheiten empfangene Adressen auf. So kann jede Ausführungseinheit Adressen, auf die sie zugreifen will, zu beliebigen Zeiten ohne Rücksicht auf andere Ausführungseinheiten ausgeben; die Speicherzugriffssteu ereinheit ist in der Lage, diejenigen Adressen zwischenzuspeichern, die nicht unmittelbar an den Speicher weitergegeben werden können, weil der Adressbus belegt ist.
  • Zweckmäßigerweise ist ferner jeder Ausführungseinheit ein Ausgang der Speicherzugriffssteuereinheit zugeordnet, über den diese an einer von der Ausführungseinheit spezifizierten Adresse gelesene Information an die Ausführungseinheit ausgibt. Die Speicherzugriffssteuereinheit ist somit für die Ausführungseinheiten völlig transparent; für den Betrieb der Ausführungseinheiten macht es keinen Unterschied, ob sie mit dem Speicher direkt oder über die Speicherzugriffssteuereinheit kommunizieren.
  • Um einen Stillstand der Ausführungseinheiten wegen nicht rechtzeitig verfügbarer Anweisungen zu vermeiden, ist vorzugsweise zwischen jeder Ausführungseinheit und dem ihr zugeordneten Ausgang der Speicherzugriffssteuereinheit ein Cache-Speicher angeordnet.
  • Um den Übergang zwischen den verschiedenen Betriebszuständen zu steuern, ist vorzugsweise die Steuereinheit eingerichtet, auf eine bestimmte aus dem Speicher gelesene Anweisung durch ein Umschalten des Betriebszustandes zu reagieren. Auf diese Weise ergibt sich automatisch eine Synchronisation des Umschaltens des Betriebszustands mit der Ausführung bestimmter Aufgaben durch die Ausführungseinheiten.
  • Um die Umschaltanweisungen zu empfangen, ist die Steuereinheit vorzugsweise mit den Ausgängen der Cache-Speicher verbunden. So ist sichergestellt, dass die Steuereinheit den Umschaltbefehl genau dann empfängt, wenn dies für die Funktion der Ausführungseinheit, aus deren Cache die Umschaltanweisung kommt, erforderlich ist.
  • Neben einer programmgesteuerten kann auch eine durch äußere Ereignisse gesteuerte Umschaltung oder Festlegung des Betriebszustandes vorgesehen werden. Insbesondere kann die Steuereinheit eingerichtet sein, bei einem Start des Datenverarbeitungssystems zunächst den ersten Betriebszustand einzustellen. Dies ist insbesondere bei einer Kfz-Anwendung sinnvoll, da es beim in Zusammenhang mit dem Anlassen des Fahrzeugs erfolgenden Start des Datenverarbeitungssystems aufgrund der bereits durch andere Verbraucher hohen Belastung der Batterie wichtig ist, die Leistungsaufnahme des Datenverarbeitungssystems einzuschränken, und andererseits zeit- und/oder sicherheitskritische Aufgaben, die die volle Leistungsfähigkeit des Datenverarbeitungssystems erfordern, zu dieser Zeit noch nicht anfallen.
  • Weitere Merkmale und Vorteile der Erfindung ergeben sich aus der nachfolgenden Beschreibung von Ausführungsbeispielen unter Bezugnahme auf die beigefügten Figuren.
  • Figuren
  • 1 und 2 zeigen jeweils Blockdiagramme von erfindungsgemäßen Datenverarbeitungssystemen.
  • Beschreibung der Ausführungsbeispiele
  • In dem in 1 gezeigten Datenverarbeitungssystem sind zwei identische Prozessoren jeweils mit 100 bzw. 200 bezeichnet. Die Prozessoren sind hier in ersten Linie aus Gründen der übersichtlicheren Darstellung mit jeweils zwei Adressausgängen 101, 102 bzw. 201, 202 dargestellt, die mit von beiden Prozessoren 100, 200 gemeinsam genutzten Speichern 3, 4 über Speicherzugriffssteuereinheiten 1, 2 kommunizieren. Die zwei Paare von Ausgängen 101, 102 bzw. 201, 202 können physikalisch existieren; alternativ kann pro Prozessor jeweils ein einziger Ausgang vorhanden sein, an den beide Steuereinheiten 1, 2 angeschlossen sind, wobei in diesem Fall den Steuereinheiten 1, 2 jeweils disjunkte Adressbereiche zur Bearbeitung zugewiesen sind.
  • Die Steuereinheiten 1, 2 weisen in Zuordnung zu jedem Prozessor jeweils einen Eingang 11, 12 bzw. 21, 22 auf, um Adressen von den Prozessoren 100, 200 zu empfangen. Die Steuereinheiten 1, 2 haben jeweils zwei Datenausgänge 13, 14, bzw. 23, 24, einen für jeden Prozessor 100 bzw. 200. Jeder Ausgang 13, 14 ist mit dem zugehörigen Prozessor 100 oder 200 über jeweils einen Cache-Speicher 103 bzw. 203 verbunden. An den Ausgang jedes Cache-Speichers 103, 203 ist eine Detektoreinheit 104, 204 angeschlossen, die Teil einer Betriebszustands-Steuereinheit 5 ist. Auf die Funktion der Detektoreinheiten 104, 204 wird an späterer Stelle in Verbindung mit den von der Steuereinheit 5 gesteuerten Betriebszuständen eingegangen.
  • Während der Speicher 3 ein Festwertspeicher ist, der von den Prozessoren 100, 200 auszuführende Programmanweisungen enthält, ist der Speicher 4 ein Schreib-/Lesespeicher, in welchem die Prozessoren 100, 200 Zwischenergebnisse ihrer Verarbeitung ablegen. Die Speicherzugriffssteuereinheit 2 muss daher in der Lage sein, den Prozessoren 100, 200 sowohl Schreib- als auch Lesezugriff auf den Speicher 4 zu vermitteln, während im Falle der Steuereinheit 1 lediglich Lesezugriff genügt. Die Einheit 1 kann daher etwas einfacher aufgebaut sein als die Einheit 2. Es können aber auch beide den gleichen Aufbau haben, wobei dann die Fähigkeit, Schreibzugriff zu vermitteln, im Falle der Einheit 1 ungenützt bleibt. Falls, wie oben erwähnt, die Adressausgänge 101, 102 bzw. 201, 202 physikalisch identisch sind, können auch die Steuereinheiten 1, 2 durch eine einzige Schaltung implementiert sein, die Zugriff zu beiden Speichern 3 und 4 vermittelt.
  • Die Betriebszustandssteuereinheit 5 ist eingerichtet, um drei verschiedene Betriebszustände des Systems einzustellen. Um bei einem Wechsel des Betriebszustandes erforderliche Anpassungen an den Prozessoren 100, 200 zu veranlassen, ist sie mit Interrupt-Eingängen 105, 205 der Prozessoren verbunden; des weiteren ist sie in der Lage, ein Haltesignal an hierfür vorgesehene Eingänge 106, 206 der Prozessoren anzulegen. Den Speicherzugriffssteuereinheiten 1, 2 wird der jeweils gewählte Be triebszustand über eine Zustandssignalleitung 6 signalisiert.
  • Ein erster Betriebszustand ist ein Sicherheits-Betriebszustand, in welchem die Prozessoren 100, 200 synchron jeweils identische Anweisungen ausführen. In diesem Betriebszustand vergleicht die Speicherzugriffssteuereinheit 1 fortlaufend die an ihren Eingängen 11, 12 empfangenen Adressen und gibt diese nur bei Übereinstimmung an den Festwertspeicher 3 weiter. Bei Nichtübereinstimmung wird eine Fehlerbehebungsroutine ausgelöst, die nicht Gegenstand der Erfindung ist und daher hier nicht beschrieben wird. An der adressierten Zelle des Speichers 3 gelesene Information gibt die Steuereinheit 1 an beide Caches 103, 203 weiter, von wo sie von den Prozessoren 100, 200 übernommen und als Programmanweisung ausgeführt wird.
  • In entsprechender Weise vergleicht die Speicherzugriffssteuereinheit 2 von den Prozessoren 100, 200 empfangene Adressen und, wenn die Adressen zu einem Schreibzugriff gehören, auch die von den Prozessoren ausgegebenen, in den Speicher 4 zu schreibenden Daten. Nur bei Übereinstimmung der Adressen und ggf. Daten wird der Zugriff auf den Speicher 4 ausgeführt; anderenfalls wird die Fehlerbehandlungsprozedur ausgelöst.
  • Die Prozessoren 100, 200 empfangen beide das gleiche Taktsignal von einem Taktgenerator 7. Um zu verhindern, dass durch externe Störungen identische Verarbeitungsfehler in beiden Prozessoren 100, 200 verursacht werden, kann ein geringfügiger Zeitver satz zwischen den Prozessoren vorgesehen werden, z.B. indem ein Vorgang, der im Prozessor 100 durch eine abfallende Flanke des Taktsignals ausgelöst wird, im Prozessor 200 von einer ansteigenden Flanke ausgelöst wird. So arbeiten die Prozessoren zwar synchron, aber jeweils um eine halbe Taktperiode gegeneinander zeitversetzt.
  • Der zweite Betriebszustand ist ein superskalarer Betriebszustand. In diesem Betriebszustand gibt die Speicherzugriffssteuereinheit 1 jede von einem der Prozessoren 100, 200 empfangene Adresse ohne Vergleich unverzüglich an den Festwertspeicher 3 weiter. Falls dies nicht innerhalb der gleichen Taktperiode möglich ist, in der die Adresse empfangen wurde, weil bereits ein vom jeweils anderen Prozessor ausgelöster Speicherzugriff im Gang ist, wird die Adresse in einem Puffer der Steuereinheit 1 zwischengespeichert, bis der Speicher 3 bereit ist, eine neue Adresse zu empfangen. Information, die die Steuereinheit 1 aus einer adressierten Zelle des Speichers 3 liest, gibt sie nur an denjenigen Ausgang 13 oder 14 aus, der zu dem Prozessor 100 oder 200 führt, von dem die gelesene Adresse empfangen wurde. So erhält jeder Prozessor aus dem Speicher 3 nur die tatsächlich von ihm benötigten Programmanweisungen.
  • Lesezugriffe der Prozessoren 100, 200 auf den Schreib-/Lesespeicher 4 über die Steuereinheit 2 laufen in der gleichen Weise wie oben für den Speicher 3 beschrieben ab. Um zu verhindern, dass Schreibzugriffe der Prozessoren 100, 200 einander gegenseitig stören, ist die Steuereinheit 2 zusätz lich mit Pufferspeichern für von den Prozessoren ausgegebene, zu schreibende Daten ausgestattet, die wegen eines laufenden Zugriffs auf den Speicher 4 nicht sofort weitergegeben werden können.
  • Im dritten Betriebszustand ist das auf der Zustandssignalleitung 6 stehende Signal das gleiche wie im zweiten Betriebszustand, so dass kein Vergleich der Verarbeitungsergebnisse der Prozessoren 100, 200 stattfindet. Im dritten Betriebszustand hält die Betriebszustandssteuereinheit 5 ein Haltesignal am Haltesignaleingang 206 des Prozessors 200 fortlaufend aufrecht. Solange dies der Fall ist, führt der Prozessor 200 keine Programmanweisungen aus und greift nicht auf Speicher zu. Interne Zustände des Prozessors 200 bleiben unverändert; deswegen verringert sich die mit jedem Taktzyklus umzuladende Kapazität des Prozessors 200, und seine Leistungsaufnahme ist deutlich niedriger als die des normal arbeitenden Prozessors 100.
  • Es liegt auf der Hand, dass, wenn gewünscht, auch ein vierter Betriebszustand implementiert werden könnte, in welchem der Prozessor 100 angehalten ist, während der Prozessor 200 normal arbeitet. Da die zwei Prozessoren 100, 200 identisch sind, alle Verarbeitungsaufgaben des angehaltenen Prozessors also auch von dem jeweils normal arbeitenden wahrgenommen werden können, besteht hierfür jedoch meist kein Bedarf.
  • Die Betriebszustandssteuereinheit 5 ist ausgelegt, um bei jedem Start des Systems den dritten Betriebszustand einzunehmen und so die Leistungsauf nahme des Systems in einer Startphase gering zu halten. Dies ist insbesondere nützlich, wenn das dargestellte System beispielsweise als Steuergerät in einem Kraftfahrzeug eingesetzt wird, bei dem in einer solchen Startphase, bevor sich das Fahrzeug in Bewegung setzt, die von der Fahrzeugbatterie verfügbare Leistung knapp sein kann und die auszuführenden Aufgaben im wesentlichen Konfigurations- und Selbsttestaufgaben sind, die weder so sicherheitskritisch sind, dass sie im ersten Betriebszustand ausgeführt werden müssten, noch die hohe Verarbeitungsleistung des zweiten Betriebszustands erfordern.
  • Um am Ende der Startphase einen Wechsel in den ersten oder zweiten Betriebszustand zu veranlassen, wäre es denkbar, der Betriebszustandssteuereinheit 5 ein externes Steuersignal zuzuführen, das beispielsweise die Betätigung der Zündung durch den Fahrer anzeigt.
  • Aufgrund der höheren Flexibilität bevorzugt ist eine programmgesteuerte Zustandsumschaltung. Hierfür enthalten die in dem Festwertspeicher 3 gespeicherten Programme an geeigneten Stellen jeweils spezielle Anweisungen, die, wenn sie vom Prozessor 100 oder 200 empfangen werden, diesen nicht notwendigerweise zu einer Operation veranlassen, die aber zur gleichen Zeit wie an den Prozessoren 100, 200 auch an den Detektoreinheiten 104, 204 erfasst und von diesen erkannt werden und die Betriebszustandssteuereinheit 5 veranlassen, des Betriebszustand entsprechend der erfassten Anweisung umzuschalten.
  • Um das Umschalten zwischen den drei Betriebszuständen steuern zu können, sind wenigstens zwei derartige Anweisungen erforderlich, von denen eine den Übergang vom aktuellen in einen nachfolgenden Betriebszustand einer vorgegebenen zyklischen Reihenfolge der Betriebszustände und die andere den Übergang in den vorhergehenden Betriebszustand veranlasst. Denkbar- ist auch, Anweisungen in der Zahl der Betriebszustände entsprechender Zahl zu verwenden, die den jeweils einzustellenden Betriebszustand unabhängig vom aktuellen Betriebszustand spezifizieren.
  • 2 zeigt eine Variante des erfindungsgemäßen Datenverarbeitungssystems. Die Prozessoren 100, 200, Speicher 3, 4, Speicherzugriffssteuereinheiten 1, 2, Cache-Speicher 103, 203 und Detektoreinheiten 104, 204 sind die gleichen wie in der Ausgestaltung der 1 und werden nicht erneut beschrieben. Der wesentliche Unterschied zwischen den zwei Ausgestaltungen liegt in der Art und Weise, wie der dritte Betriebszustand herbeigeführt wird. Zu diesem Zweck ist an den Ausgang des Taktgenerators 7 ein Frequenzteiler 8 angeschlossen, der die Frequenz des Taktsignals halbiert oder durch einen anderen vorzugsweise ganzzahligen Faktor teilt. Der Takteingang des Prozessor 200 ist über einen Multiplexer 207 wahlweise direkt mit dem Ausgang des Taktgenerators 7 oder mit dem Frequenzteiler 8 verbindbar. Der Multiplexer 207 ist von der Betriebszustandssteuereinheit 5 gesteuert, um im ersten und zweiten Betriebszustand den Taktgenerator 7 und im dritten Betriebszustand den Frequenzteiler 8 mit dem Takteingang des Prozessors 200 zu verbinden.
  • Der Prozessor 200 ist somit im dritten Betriebszustand nicht vollständig blockiert, statt dessen ist seine Taktfrequenz auf einen Bruchteil derjenigen herabgesetzt, welche der Prozessor 100 empfängt. Dementsprechend ist die Häufigkeit, mit der der Prozessor 200 auf die Speicher 3, 4 zugreift, reduziert; seine Speicherzugriffe werden jedoch von den Speicherzugriffssteuereinheiten 1, 3 genauso wie im zweiten Betriebszustand berücksichtigt. Die Leistungseinsparung im dritten Betriebszustand kann bei dieser Ausgestaltung noch größer sein als bei derjenigen der 1, da auch die Verlustleistung derjenigen Schaltungsteile des Prozessors 200 abnimmt, die im Falle der Ausgestaltung von 1 auch bei angehaltenem Prozessor durch das Taktsignal fortlaufend umgeladen werden.
  • Der Takteingang des Prozessors 100 kann fest mit dem Taktgenerator 7 verbunden sein; falls es erwünscht ist, auch über einen vierten Betriebszustand zu verfügen, in welchem die Taktrate des Prozessors 100 reduziert ist, kann statt dessen ein in der Fig. mit 107 bezeichneter Multiplexer vorgesehen werden, der es erlaubt, anstelle des Taktsignals vom Taktgenerator 7 auch das Ausgangssignal des Frequenzteilers 8 an den Prozessor 100 anzulegen.
  • Bei dem in 2 dargestellten Datenverarbeitungssystem kommt auch in Betracht, einen fünften Betriebszustand zu implementieren, in welchem beide Prozessoren 100, 200 mit dem frequenzgeteilten Taktsignal beschaltet sind, um so unter Inkaufnahme evtl. verlängerter Verarbeitungszeiten ein Minimum an Leistungsaufnahme zu erreichen.

Claims (13)

  1. Datenverarbeitungssystem mit wenigstens einer ersten und einer zweiten Ausführungseinheit (100, 200) und einer Steuereinheit (5), die eingerichtet ist, zwischen wenigstens einem ersten und einem zweiten Betriebszustand des Systems umzuschalten, dadurch gekennzeichnet, dass der erste Betriebszustand ein energiesparender Betriebszustand ist, in welchem die Leistungsaufnahme der ersten Ausführungseinheit (200) gegenüber der Leistungsaufnahme im zweiten Betriebszustand reduziert ist.
  2. Datenverarbeitungssystem nach Anspruch 1, dadurch gekennzeichnet, dass der zweite Betriebszustand ein superskalarer Betriebszustand ist, in dem die Ausführungseinheiten (100, 200) jeweils für sie spezifische Anweisungen ausführen.
  3. Datenverarbeitungssystem nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass der zweite Betriebszustand oder ein dritter Betriebszustand ein Sicherheits-Betriebszustand ist, in dem die Ausführungseinheiten (100, 200) identische Anweisungen ausführen.
  4. Datenverarbeitungssystem nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass eine der ersten Ausführungseinheit (200) zugeführte Taktrate im ersten Betriebszustand niedriger als im zweiten Betriebszustand ist.
  5. Datenverarbeitungssystem nach Anspruch 4, dadurch gekennzeichnet, dass ein Taktgenerator (7) im zweiten Betriebszustand direkt und im ersten Betriebszustand über einen Frequenzteiler (8) mit der ersten Ausführungseinheit (200) verbunden ist.
  6. Datenverarbeitungssystem nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass die erste Ausführungseinheit (200) im ersten Betriebszustand mit einem Haltesignal beschaltet ist.
  7. Datenverarbeitungssystem nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass es einen Speicher (3, 4) aufweist, der zumindest von den Ausführungseinheiten auszuführende Anweisungen und/oder Verarbeitungsergebnisse enthält.
  8. Datenverarbeitungssystem nach Anspruch 7, dadurch gekennzeichnet, dass eine Speicherzugriffssteuereinheit (1, 2) über einen Adressbus mit dem Speicher (3, 4) kommuniziert, dass jeder Ausführungseinheit (100, 200) ein Eingang (11, 12; 21, 22) der Speicherzugriffssteuereinheit (1) zum Empfangen von Speicheradressen von den Ausführungseinheiten (100, 200) zugeordnet ist und dass die Speicherzugriffssteuereinheit (1, 2) Pufferspeicher für empfangene Adressen aufweist.
  9. Datenverarbeitungssystem nach Anspruch 8, dadurch gekennzeichnet, dass jeder Ausführungseinheit (100, 200) ein Ausgang (13, 14, 23, 24) der Speicherzugriffssteuereinheit (1, 2) zugeordnet ist, über den die Speicherzugriffssteuereinheit (1, 2) an einer von der betreffenden Adresse des Speichers (3, 4) gelesene Information ausgibt.
  10. Datenverarbeitungssystem nach Anspruch 9, dadurch gekennzeichnet, dass zwischen jeder Ausführungseinheit (100, 200) und dem ihr zugeordneten Ausgang (13, 14) der Speicherzugriffssteuereinheit (1) ein Cache-Speicher (103, 203) angeordnet ist.
  11. Datenverarbeitungssystem nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass es einen Speicher (3) aufweist, der zumindest von den Ausführungseinheiten (100, 200) auszuführende Anweisungen und/oder Verarbeitungsergebnisse enthält, und dass die Steuereinheit (5) eingerichtet ist, auf eine bestimmte aus dem Speicher (3) gelesene Anweisung durch ein Umschalten des Betriebszustandes zu reagieren.
  12. Datenverarbeitungssystem nach Anspruch 10 und Anspruch 11, dadurch gekennzeichnet, dass die Steuereinheit (5) mit den Ausgängen der Cache-Speicher (103, 203) verbunden ist.
  13. Datenverarbeitungssystem nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Steuereinheit (5) eingerichtet ist, bei einem Start des Datenverarbeitungssystems zunächst den ersten Betriebszustand einzustellen.
DE200510060898 2005-12-20 2005-12-20 Datenverarbeitungssystem mit mehreren Ausführungseinheiten Withdrawn DE102005060898A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE200510060898 DE102005060898A1 (de) 2005-12-20 2005-12-20 Datenverarbeitungssystem mit mehreren Ausführungseinheiten
PCT/EP2006/069575 WO2007071589A1 (de) 2005-12-20 2006-12-12 Datenverarbeitungssystem mit mehreren ausführungseinheiten

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE200510060898 DE102005060898A1 (de) 2005-12-20 2005-12-20 Datenverarbeitungssystem mit mehreren Ausführungseinheiten

Publications (1)

Publication Number Publication Date
DE102005060898A1 true DE102005060898A1 (de) 2007-06-28

Family

ID=37667477

Family Applications (1)

Application Number Title Priority Date Filing Date
DE200510060898 Withdrawn DE102005060898A1 (de) 2005-12-20 2005-12-20 Datenverarbeitungssystem mit mehreren Ausführungseinheiten

Country Status (2)

Country Link
DE (1) DE102005060898A1 (de)
WO (1) WO2007071589A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014000248B3 (de) 2014-01-08 2015-03-05 Stmicroelectronics Application Gmbh Bus-Microcontroller und Bus-Knoten-Schaltung, sowie elektronische Steuereinheit für ein Fahrzeug

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6922783B2 (en) * 2002-01-16 2005-07-26 Hewlett-Packard Development Company, L.P. Method and apparatus for conserving power on a multiprocessor integrated circuit
DE10349581A1 (de) * 2003-10-24 2005-05-25 Robert Bosch Gmbh Verfahren und Vorrichtung zur Umschaltung zwischen wenigstens zwei Betriebsmodi einer Prozessoreinheit

Also Published As

Publication number Publication date
WO2007071589A1 (de) 2007-06-28

Similar Documents

Publication Publication Date Title
EP0013737B1 (de) Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem
DE69211231T2 (de) Verfahren und Vorrichtung zur Verwaltung eines gemeinsam genutzten Speichers ausserhalb des Bildschirms
DE3588009T2 (de) Vorrichtung und Verfahren zum Rekonfigurieren eines Speichers in einer Datenverarbeitungsanordnung.
DE2523372C3 (de) Eingabe-/Ausgabe-Anschlußsteuereinrichtung
DE19815263C2 (de) Vorrichtung zur fehlertoleranten Ausführung von Programmen
DE102005037635B4 (de) Hardwaresteuerung für den Wechsel des Betriebsmodus eines Speichers
EP0006164B1 (de) Multiprozessorsystem mit gemeinsam benutzbaren Speichern
DE2717503A1 (de) Gemeinsam genutzter speicher
EP0010198A2 (de) Vorrichtung zur Steuerung des Seitenaustausches in einem Datenverarbeitungssystem mit virtuellem Speicher
EP1612648A2 (de) Konfiguration von Bauelementen bei einem Übergang von einem Niedrigleistungs-Betriebsmodus in einen Normalleistungs-Betriebsmodus
DE102008064866B3 (de) Elektronische Steuerungsvorrichtung und Verfahren zur elektronischen Steuerung und zur Betätigung einer elektronischen Steuerungsvorrichtung
DE102008058209A1 (de) Anordnung und Verfahren um zu verhindern, dass ein Anwenderbetriebssystem in einem VMM System eine Anordnung abschaltet, die von einem Servicebetriebssystem verwendet wird
DE3780306T2 (de) Adapterbusschalter zur verbesserung der verfuegbarkeit einer steuereinheit.
DE19955776C1 (de) Multitasking-Prozessorsystem
DE10244922B4 (de) Programmgesteuerte Einheit und Verfahren zum Debuggen von einer programmgesteuerten Einheit ausgeführten Programmen
DE102020107285A1 (de) Halbleitersystem und verfahren zum betreiben eines halbleitersystems
DE3689491T2 (de) Überwachungsschaltung.
DE4238099A1 (de)
DE2230727C3 (de) Schaltungsanordnung zur dynamischen Zuteilung von Speicherzyklen mit Vorrangs steuerung
DE102005060898A1 (de) Datenverarbeitungssystem mit mehreren Ausführungseinheiten
WO2002048880A2 (de) Unterbrecher-steuereinrichtung
EP0010135B1 (de) Mikroprogrammgesteuerte Ein-/Ausgabeeinrichtung und Verfahren zum Durchführen von Ein-/Ausgabeoperationen
DE2507405C2 (de) Anordnung zum Synchronisieren gleichzeitig auszuführender Tasks für Peripheriegeräte einer Datenverarbeitungsanlage
DE19713178A1 (de) Schaltungsanordnung mit einem Prozessor und einem Datenspeicher
DE102006004989A1 (de) Datenverarbeitungssystem mit mehreren Ausführungseinheiten

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee