-
Die vorliegende Erfindung betrifft eine Schaltungsanordnung für ein datenverarbeitendes System zur Verarbeitung von Daten in einer Mehrzahl von Modulen. Ferner betrifft die vorliegende Erfindung ein entsprechendes Verfahren zur modularen Verarbeitung von Daten.
-
Stand der Technik
-
Zur Unterstützung einer Verarbeitungseinheit, wie beispielsweise einer CPU (Central Processing Unit), für zeit- und positionsbezogene Prozesse sind nach dem Stand der Technik sogenannte Timer, d. h. Zeitgeber-Einheiten üblich. Solche Zeitgeber-Einheiten können dabei als Einzelkomponenten oder als Peripheriebausteine der Verarbeitungseinheit ausgebildet sein, und dabei mehr oder weniger wichtige Funktionen zur Signalaufnahme und -erzeugung in zeitlicher Abhängigkeit von einem oder mehreren Takten zur Verfügung stellen.
-
Nach derzeitigem Stand der Technik kommen in Verarbeitungseinheiten, wie beispielsweise in Mikrocontrollern, unterschiedliche Architekturen zur Realisierung von Zeitgeber-Einheiten zum Einsatz. Hierbei kann grundsätzlich zwischen zwei Architekturvarianten unterschieden werden.
-
Bei einer ersten Variante handelt es sich um eine reine Hardware-Implementierung eines Zeitgeber-Moduls, welches von einer Verarbeitungseinheit, wie beispielsweise einer CPU, aus bedient und konfiguriert werden muss. Das Zeitgeber-Modul selbst dient dann zur Signalerfassung und Charakterisierung und ist darüber hinaus in der Lage, Ausgabesignale einer eingeschränkten Komplexität zu erzeugen. Solche Zeitgeber-Module sind aber generell durch eine hohe sogenannte ”Interruptlast” gekennzeichnet, da die Hardware der jeweiligen Verarbeitungseinheit mit neuen Parametern versorgt oder Parameter aus der entsprechenden Hardware abgeholt werden müssen.
-
Beispiel einer derartigen Architektur ist das General Purpose Timer Array (GPTA) von Infinion sowie die Advanced Timer Unit (ATU) von RenesasTM.
-
Eine zweite Architekturvariante ermöglicht demgegenüber bis zu einem gewissen Grad eine interne Programmierbarkeit der jeweiligen Zeitgeber-Einheit. Dort kann die Zeitgeber-Einheit bzw. das Zeitgeber-Modul selbst ein Programm zusammen mit Daten ausführen und entsprechend Ein- und Ausgabeeinheiten bedienen. Eine so realisierte Architektur reduziert die obengenannte Interruptlast der Verarbeitungseinheit, d. h. der Haupt-Verarbeitungseinheit, indem viele interne Ereignisse der Zeitgeber-Einheit von einer internen Verarbeitungseinheit der Zeitgeber-Einheit bedient werden. Das bedeutet, dass eine derartige Architektur eine Art kleinen Mikrocontroller für eine Verarbeitung zeitbehafteter Daten in den jeweiligen Zeitgeber-Einheiten implementiert. Dieser implementierte kleine Mikrocontroller wird dann mit vergleichsweise niederkonfigurierten Ein- und Ausgabeeinheiten kombiniert. Allerdings ist hier zu sagen, dass derartige Systeme durch eine Interruptlatenz und eine sequentielle Bearbeitung von Interrupts eingeschränkt sind. Das bedeutet, dass der Mikrocontroller mehrere unterschiedliche Aufgaben bearbeitet, die jeweils eine Anforderung an diesen Mikrocontroller per Interrupt stellen und diese Interrupts nacheinander abgearbeitet werden (mit den entsprechenden Wartezeiten).
-
Die weniger komplexe Variante der oben erwähnten Zeitgeber-Einheiten wird beispielsweise von Infinion in dem GPTA (General Purpose Timer Array) oder durch Renesas in der entsprechenden Advanced Timer Unit (ATU) realisiert. Die zweite, etwas komplexere Variante der genannten Zeitgeber-Einheiten wird beispielsweise von FreescaleTM in deren Timer Processing Unit (TPU) oder von Texas Instruments (TI) in deren High-End Timer (HET) realisiert.
-
In
DE 10 2007 044 803 werden Zeitsteuermodule über eine Zeit-Routing-Einheit TRU miteinander verbunden. Diese Zeitsteuermodule können dabei Ein- und Ausgabemodule sein.
-
Aufgrund der genannten Einschränkungen der im Stand der Technik zur Verfügung gestellten Zeitgeber-Einheiten und deren jeweiliger Implementierung wäre es wünschenswert, eine Möglichkeit vorzusehen, zum Einen eine Interruptlast einer entsprechenden Verarbeitungseinheit, die bei der Verarbeitung von Daten als Haupt-Verarbeitungseinheit anzusehen ist, zu reduzieren, und zum Anderen möglichst viele Vorgänge parallel und zeitnah bzw. rechtzeitig bearbeiten zu können, ohne durch eine auftretende Zahl von Interrupts bzw. einer Anzahl von Interruptquellen beschränkt zu sein.
-
Offenbarung der Erfindung
-
Vor diesem Hintergrund werden eine Schaltungsanordnung gemäß Patentanspruch 1 und ein entsprechendes Verfahren mit den Merkmalen von Patentanspruch 8 bereitgestellt.
-
Die erfindungsgemäß vorgesehene Schaltungsanordnung kann beispielsweise in einer datenverarbeitenden Architektur implementiert sein und somit eine auftretende Interruptlast für eine dem datenverarbeitenden System zur Verfügung stehende Verarbeitungseinheit, beispielsweise eine CPU oder ATU, zu reduzieren. Geeignete Ausführungsformen der erfindungsgemäß vorgestellten Schaltungsanordnung sowie des erfindungsgemäß vorgestellten Verfahrens ergeben sich aus den jeweils abhängigen Ansprüchen und der Beschreibung.
-
Kern und Vorteile der Erfindung
-
Gemäß Patentanspruch 1 wird eine Schaltungsanordnung für ein datenverarbeitendes System zur Verarbeitung von Daten in einer Mehrzahl von Modulen bereitgestellt. Dabei ist vorgesehen, dass der Mehrzahl der Module jeweils mindestens ein Takt, eine Zeitbasis und eine Basis mindestens einer weiteren physikalischen Größe zur Verfügung gestellt werden. Die Schaltungsanordnung umfasst eine Routing-Einheit, an welche die Mehrzahl der Module angekoppelt ist und über welche die Mehrzahl der Module untereinander Daten, die auf der Zeitbasis und/oder der Basis der anderen physikalischen Größe basieren, periodisch austauschen können. Dabei ist jedes der Mehrzahl der Module dazu konfiguriert, eigenständig und parallel zu anderen Modulen der Mehrzahl der Module Daten zu verarbeiten. Der periodische Datenaustausch kann dabei entweder nach fest vorgegebenen Zykluszeiten oder einer maximalen Zykluszeit erfolgen. Es kann sinnvoll sein, eine feste Zykluszeit vorzusehen, weil dann eine Abfrage immer mit einer konstanten Wiederholrate erfolgt und ein sonst auftretenter Jitter vermieden wird. Eine Verzögerung durch ein Daten-routing könnte als eine konstante Größe betrachtet werden. Es gibt aber auch Fälle, wo vorteilhafterweise jeweils mögliche Verkürzungen einer Abarbeitung ausgenutzt werden sollen und nur eine Maximalzeit nicht überschritten werden soll. Dann muss nur die Einhaltung dieser maximalen Zykluszeit garantiert sein.
-
Die erfindungsgemäß vorgeschlagene Schaltungsanordnung ermöglicht, verschiedene Vorgänge parallel zu bearbeiten, wobei die einzelnen Module eigenständig und unabhängig voneinander eine Verarbeitung von Daten vornehmen können. Die einzelnen Module können selbständig von zeit- und/oder positionsbezogenen Ereignissen getriggert werden.
-
Die Mehrzahl der Module umfasst in einer möglichen Ausführungsform der erfindungsgemäß vorgestellten Schaltungsanordnung mindestens ein Eingabemodul, ein Ausgabemodul und ein Verarbeitungsmodul. Diese Module der Signalerfassung, Signalausgabe und der Verarbeitung von zeit- und positionsbezogenen Daten sind erfindungsgemäß miteinander über die zentrale Routing-Einheit zum Austausch von den zeit- und positionsbezogenen Daten verbunden. Das bedeutet, dass die Routing-Einheit für eine Verschaltung der Module und ihrer Signale dient.
-
Ferner ist es möglich, dass die Schaltungsanordnung eine Einheit zur Taktaufbereitung, die konfigurierbare Takte zur Verfügung stellt, und eine Zeitbasiseinheit mit sowohl zeit- als auch positionsbezogenen Zählern, die aktuelle Zeit- und Positionsinformationen zur Verfügung stellt, umfasst.
-
Die Schaltungsanordnung kann ferner dazu konfiguriert sein, die Basis der anderen physikalischen Größe mittels zeitlich aufeinander folgenden Eingangssignalwerten mindestens eines Eingangssignals zu bestimmen, indem aus der Folge der aufeinander folgenden Eingangssignalwerte ein Zeitintervall bis zu einem als nächstem zu erwartenden Eingangssignalwert des mindestens einen Eingangssignals bestimmt, eine vorgegebene Anzahl von Impulsen vorzugsweise gleichmäßig auf das Zeitintervall verteilt und beim Zählen der Impulse Werte der anderen physikalischen Größe bestimmt und diese als Basis der anderen physikalischen Größe bereitgestellt werden.
-
Ferner ist in einer weiteren Ausführungsform der Schaltungsanordnung vorgesehen, dass mindestens ein Teil der Mehrzahl der Module während einer Laufzeit der Schaltungsanordnung beispielsweise von einer externen Verarbeitungseinheit, wie beispielsweise einer CPU, über eine entsprechende Busschnittstelle, konfigurierbar ist.
-
Ferner ist es denkbar, dass die zentrale Routing-Einheit die Funktion eines Interruptcontrollers übernimmt, indem Daten nur dann von einer Quelle zu einer Senke transportiert werden, wenn diese Daten von der Quelle als aktuell markiert wurden. Die Ziele bzw. Senken werden dabei so aufgesetzt, dass sie blockieren, bis sie mit neuen Daten versorgt werden. Es ist denkbar, dass die Routing-Einheit ein Halten der zwischen den Modulen zu transportierenden Daten erlaubt und damit gezielt ein Weiterleiten der entsprechenden Daten steuern kann. Es ist in der Regel vorgesehen, dass alle vorliegenden Datensenken und -quellen immer mit gleicher Priorität bedient werden. Jede Datensenke bekommt eine Zeiteinheit zugeordnet und fordert in dieser Zeiteinheit Daten von der entsprechend zugeordneten Quelle an. Die Quelle entscheidet, ob Daten verfügbar sind; diese Daten werden dann in der zur Verfügung stehenden Zeiteinheit abgeholt.
-
Ferner ist in einer anderen Ausführungsform der erfindungsgemäß vorgestellten Schaltungsanordnung vorgesehen, dass die zentrale Routing-Einheit es ermöglicht, beim Routen von Daten die Daten einer Quelle mehreren Datensenken in einem oder verschiedenen Modulen der Mehrzahl von Modulen zur Verfügung zu stellen, was einer Art Broadcasting entspricht. In der Regel ist ein Blockieren des Lesens von Daten vorgesehen, das nur ein einmaliges Lesen eines Datums von einer Quelle erlaubt.
-
Durch die parallele Arbeitsweise der erfindungsgemäß vorgesehenen Module kann eine hohe Anzahl von Anforderungen bzw. Operationen innerhalb kurzer Zeit bedient werden. Es ist denkbar, dass bestimmte Module, die aktuell nicht benötigt werden, abgeschaltet werden und damit eine Stromersparnis im Zusammenhang mit Leistungsverbrauch und Temperaturreduzierung erzielt werden kann.
-
Die erfindungsgemäß vorgesehene zentrale Routing-Einheit macht es ferner möglich, die Mehrzahl von Modulen flexibel und zudem konfigurierbar miteinander zu verbinden. Ferner wird mittels der Routing-Einheit durch ein Blockieren des Anforderns und Sendens von Daten ein neues Interruptkonzept für ein Zeitgeber-Modul dargestellt. Darüber hinaus ermöglicht das Vorsehen einer derartigen Routing-Einheit eine Steuerung von Interrupts ohne eine Implementierung eines gesonderten Interruptcontrollers, was Fläche und damit einhergehend Chipkosten einspart
-
Die Erfindung betrifft ferner ein Verfahren zum Verarbeiten von Daten in einer Mehrzahl von Modulen, wobei jedem der Mehrzahl der Module mindestens ein Takt, eine Zeitbasis und eine Basis mindestens einer weiteren physikalischen Größe zur Verfügung gestellt werden. Die Mehrzahl der Module, die auf der Zeitbasis und/oder der Basis der anderen physikalischen Größe basieren, tauschen periodisch über eine zentrale Routing-Einheit Daten untereinander aus und jedes der Mehrzahl der Module verarbeitet eigenständig und parallel zu anderen Modulen der Mehrzahl der Module die entsprechenden Daten.
-
Weitere Vorteile und Ausführungen der Erfindung ergeben sich aus der Beschreibung und der beiliegenden Zeichnung.
-
Es versteht sich, dass die voranstehend genannten und die nachstehend noch zu erläuternden Merkmale nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen oder alleine verwendbar sind, ohne den Rahmen der vorliegenden Erfindung zu verlassen.
-
1 zeigt ein Blockschaltbild einer möglichen Ausführungsform der erfindungsgemäß vorgeschlagenen Schaltungsanordnung.
-
Ausführungsformen der Erfindung
-
Die Erfindung ist anhand von Ausführungsformen in der Zeichnung schematisch dargestellt und wird unter Bezugnahme auf die Zeichnung schematisch ausführlich beschrieben. Dabei wird eine detaillierte Beschreibung in Aufbau und Funktion gegeben.
-
Das erfindungsgemäß vorgeschlagene Verfahren bzw. die erfindungsgemäß vorgesehene Schaltungsanordnung kann beispielsweise zur Unterstützung einer Verarbeitungseinheit für zeit- und positionsbezogene Prozesse in einem datenverarbeitenden System implementiert sein.
-
1 stellt eine Ausführungsform einer erfindungsgemäß vorgeschlagenen Schaltungsanordnung als Blockschaltbild vor. Die Schaltungsanordnung 100 umfasst dabei eine Mehrzahl von im Folgenden näher erläuterten Modulen. Die Schaltungsanordnung 100 umfasst eine zentrale Routing-Einheit 10, welche auch als ARU (Advanced Routing Unit) bezeichnet wird. Ferner umfasst die Schaltungsanordnung 100 ein Eingabemodul 11, auch bezeichnet als TIM (Timer Input Module), ein Ausgabemodul 12, auch bezeichnet als ATOM (ARU Connected Timer Output Module), ein Verarbeitungsmodul 14, wie beispielsweise im hier dargestellten Fall ein MCS (Multi Channel Sequencer) und eine Mehrzahl von Speichermodulen 30, wie beispielsweise FIFO (First In, First Out) F2A und AFD. All diese Module sind an die zentrale Routing-Einheit 10 angeschlossen, was jeweils durch einen dicken Doppelpfeil bzw. einen dicken Pfeil in Richtung Routing-Einheit 10 kenntlich gemacht ist.
-
Im Eingabemodul 11 werden eingehende Signale 50_3 mit Zeit- und anderen physikalischen Informationen verknüpft und nach einer Verarbeitung und gegebenenfalls Zwischenspeicherung in einer der hier dargestellten Ausgabeeinheiten 12 oder 13 zur Generierung von Ausgangssignalen 50_2 bzw. 50_3 benutzt. Dabei handelt es sich bei der Ausgabeeinheit 12 um eine an die zentrale Routing-Einheit 10 angeschlossene Ausgabeeinheit, hier auch als ATOM ”ARU Connected Timer Output Module” bezeichnet, während die Ausgabeeinheit 13 eine von der Routing-Einheit 10 unabhängige Ausgabeeinheit bzw. ein Ausgabemodul darstellt.
-
Die genannte andere physikalische Größe ist beispielsweise ein Winkel eines Motors, kann aber auch jede andere physikalische Größe repräsentieren, wie beispielsweise Masse, Temperatur, Pegelstand einer Flüssigkeit, Phasenlage einer Schwingung, eine Anzahl von Ereignissen (Kanten) oder eine Periodendauer bzw. Zeitdauer eines Signals.
-
Die hier dargestellte Schaltungsanordnung 100 umfasst ferner eine Einheit zur Taktaufbereitung 15, welche auch als CMU (Clock Management Unit) bezeichnet werden kann. Die Einheit 15 stellt konfigurierbare Takte zur Verfügung. Ferner umfasst die Schaltungsanordnung 100 eine Zeitbasis-Einheit 16 mit sowohl zeit- als auch positionsbezogenen Zählern. Die Zeitbasis-Einheit wird auch als TBU (Time Base Unit) bezeichnet und stellt aktuelle Zeit- und Positionsinformationen, wie beispielsweise eine Winkelinformation zur Verfügung. Die genannten einzelnen Module, nämlich das Eingabemodul 11, das Ausgabemodul 12 und das Verarbeitungsmodul 14 werden durch die dargestellte Verknüpfung mit den Takten und Zeitbasen, die durch die Einheit zur Taktaufbereitung 15 bzw. die Zeitbasiseinheit 16 zur Verfügung gestellt werden, versorgt. Die einzelnen Module tauschen über die zentrale Routing-Einheit 10 Daten untereinander aus. In den einzelnen Modulen liegen ferner sogenannte Komparatoren vor, die dazu genutzt werden können, lokal in den einzelnen Modulen die ankommenden Daten gegenüber einer aktuellen Zeit und/oder Position abzugleichen, was letztlich zum Treffen von Entscheidungen und Signalisierung der getroffenen Entscheidung führt, wie beispielsweise dem Schalten eines Ausgangssignals.
-
Die dargestellte Schaltungsanordnung 100 umfasst ferner eine Verzweigungseinheit 17, auch bezeichnet als BRC (Broadcast Unit), die es ermöglicht, dass bei einem Routen von Daten mittels der zentralen Routing-Einheit 10 die Daten einer Quelle auch mehreren Datensenken in einem oder verschiedenen Modulen zur Verfügung gestellt werden können, da in der Regel ein Blockieren des Lesens der Daten vorgesehen ist, das nur das einmalige Lesen eines Datums von einer Quelle erlaubt.
-
Die dargestellte Schaltungsanordnung 100 umfasst ferner eine sogenannte DPLL(Digital Phase Locked Loop)-Einheit 18, welche aus positionsbezogenen Eingangssignalen Impulse erzeugen kann, die feiner unterteilte Positionsinformationen in der Zeitbasis-Einheit 16 ermöglichen. Damit kann beispielsweise eine Winkeluhr eine feinere Auflösung eines Drehwinkels anzeigen als entsprechende Eingangssignale vorgeben. Darüber hinaus sind in der DPLL-Einheit 18 Informationen über Geschwindigkeit oder Drehzahl verfügbar und es können Voraussagen getroffen werden, wann eine vorgegebene Position auch unter Einbeziehung eines Zeitvorlaufs erreicht sein wird. Einbeziehung eines zeitlichen Vorlaufs bedeutet dabei beispielsweise eine Berücksichtigung der Trägheit eines Ansteuermoduls. Eingangssignale 50_4 für die DPLL-Einheit 18 werden in der Regel über die Eingangseinheit 26 geführt, wobei dies ohne Einbindung der zentralen Routing-Einheit 10 erfolgt. Ferner kann vorgesehen sein, dass ein in der Schaltungsanordnung 100 vorgesehenes MAP-Modul 19 (Input Mapping Module) die über die Eingangseinheit 26 eingegangenen Eingangssignale kombiniert oder selektiert, bevor diese der DPLL-Einheit 18 zugeführt werden. Es ist auch möglich, dass die Schaltungsanordnung 100 ein SPE-Modul 20 (Sensor Pattern Evaluation) vorsieht, um darin die Eingangssignale für die DPLL-Einheit 18 beispielsweise für eine Ansteuerung von Elektromotoren (PMSM, permanent magnet synchronous motor) geeignet zu kombinieren. Dazu ist es beispielsweise üblich, dass ein PMSM über 3 Sensoren verfügt, die so angeordnet sind, dass die Polwechsel an diesen Sensoren immer nur bei verschiedenen Winkel-Stellungen des Motors auftreten und dadurch nie zeitgleich erfolgen können. Damit ist es möglich, dass der zwischen zwei Polwechseln absolvierte Winkel bekannt ist. Ist die Anordnung der Sensoren beispielsweise so gestaltet, dass zwischen zwei Polwechseln an den Sensoren der Motor immer einen gleichen Winkel dreht, und bei jedem Polwechsel der entsprechende Sensor sein Ausgangssignal ändert, so kann man die 3 Sensorsignale mittels Antivalenzverknüpfung (EXOR) zu einem Signal kombinieren. Jede Änderung des kombinierten Signals zeigt dann den zurückgelegten Winkel des Motors seit der letzten Änderung an Ferner kann die Schaltungsanordnung 100 ein CMP-Modul 21 vorsehen, mit dessen Hilfe Ausgangssignale bitweise miteinander verglichen werden. Eine ferner in der hier dargestellten Schaltungsanordnung vorgesehene Monitor-Einheit 22 ermöglicht einer externen CPU (Central Processing Unit) eine einfache Überwachung von zentralen Signalen für beispielsweise sicherheitskritische Anwendungen.
-
Ein Interrupt-Konzentrator ICM 23 (Interrupt Concentrator Module) erlaubt es, von den Einzelmodulen erzeugte Interrupts (IRQ), die jeweils durch ein pfeilförmiges Symbol 38 kenntlich gemacht sind, zu Gruppen zusammenzufassen und dann gebündelt an eine externe CPU weiterzuleiten. Das hat den Vorteil, dass die CPU nicht so viele Interrupts behandeln muss
-
Die ARU 10 kann durch ihre eigenständige Bearbeitung bewirken, dass nur wenige oder keine Interrupts erzeugt werden müssen, wenn eine Quelle Daten bereitstellt.
-
Ferner ist in der hier dargestellten Schaltungsanordnung 100 eine Busschnittstelle 25 vorgesehen, bei welcher es sich in der Regel um ein universelles Handshaking Interface handeln kann, über welche alle Module der Schaltungsanordnung 100 mittels ihrer jeweiligen eigenen Schnittstellen AEI (Handshake-Interface), generell mit Bezugszeichen 40 bezeichnet, von einer externen CPU konfiguriert werden können. Über die Busschnittstelle 25 können auch Daten ausgetauscht werden. Für die nicht an die Routing-Einheit 10 angeschlossene Ausgabe-Einheit 13 (TOM) werden beispielsweise mittels der Busschnittstelle 25 die entsprechenden Ausgänge des Ausgabemoduls 13 für periodische Abläufe konfiguriert. Die Ankopplung an einen Bus, bspw. einen uC-Bus ist durch Pfeil 45 kenntlich gemacht.
-
Durch eine parallele Arbeitsweise der dargestellten Module kann in der Regel eine hohe Anzahl von Anforderungen innerhalb verhältnismäßig kurzer Zeit bedient werden. Es ist denkbar, dass bestimmte Module, die aktuell nicht benötigt werden, zum Zweck der Stromersparnis temporär abgeschaltet werden.
-
Zusammenfassend und verallgemeinert kann eine Datenverarbeitung wie folgt dargestellt werden. In die Signal-Eingabeeinheit 11 geht ein Eingangssignal ein, was in der Eingabeeinheit 11 mit Zeit- und anderen physikalischen Informationen verknüpft wird, dann an die Routing-Einheit 10 ausgegeben wird und von da an andere Module, wie beispielsweise das Verarbeitungsmodul 14, hier ein MCS, zur dortigen Verarbeitung weitergeleitet wird. Das verarbeitete Signal bzw. der verarbeitete Wert wird dann über die zentrale Routing-Einheit 10 an eine Ausgabeeinheit 12 weitergeleitet.
-
Als zusätzliche Eigenschaft der hier dargestellten Struktur der Schaltungsanordnung ist auszuführen, dass mindestens ein Eingangssignal über die Eingabeeinheit 11 direkt, d. h. ohne Zwischenschaltung der zentralen Routing-Einheit 10, aber eventuell mittelbar über eine Weiterverarbeitung in dem MAP-Modul 19 und/oder dem SPE-Modul 20 an die digitale PLL(DPLL)-Einheit 18 weitergeleitet wird. Dieses über diesen Weg an die DPLL-Einheit 18 weitergeleitete Eingangssignal kann beispielsweise signalisieren, dass ein bestimmter Winkel seit dem letzten Eingangssignal zurückgelegt wurde, was durch die DPLL-Einheit 18 verwendet wird, um Vorhersagen zur Dauer bis zum Eingang eines nachfolgenden Eingangssignals zu treffen. Als Kenngröße muss es sich dabei nicht, wie voranstehend erläutert, um einen Winkel handeln, sondern es kann sich auch um einen Änderungswert einer anderen physikalischen Größe drehen. Die DPLL-Einheit 18 berechnet aus einer Folge von Eingangsereignissen die Dauer, die bis zum nächsten unmittelbar darauffolgenden Eingangsereignis vergehen wird, was als Vorhersage bezeichnet wird. Auf das so vorhergesagte Zeitintervall gibt die DPLL-Einheit 18 eine vorgegebene Anzahl von Impulsen aus und verteilt diese Anzahl von Impulsen möglichst gleichmäßig auf das Zeitintervall. Diese Impulse werden in der Zeitbasis-Einheit 16 gezählt und dadurch beispielsweise eine Winkelbasis bestimmt, welche allen Modulen zur Verfügung gestellt wird.
-
Die Werte, die, wie oben erwähnt, einem Eingangssignal zugeordnet werden, sind typischerweise der Wert der Zeitbasis und der Wert der Winkelbasis zum Zeitpunkt des Eingangsereignisses. Diese Werte charakterisieren das Eingangssignal und lassen Berechnungen in weiteren Modulen zu, die an die zentrale Routing-Einheit 10 angeschlossen sind, wie beispielsweise in der Verarbeitungseinheit 14, hier ein MCS. Ferner können diese Werte dann an eine Ausgabeeinheit 12 weitergegeben und in Abhängigkeit von den übermittelten Werten in Verbindung mit Winkelbasis-Werten Ausgangssignale erzeugen.
-
Ferner kann die DPLL-Einheit 18 über die zentrale Routing-Einheit 10 beispielsweise von der Verarbeitungseinheit MCS 14 kombinierte Winkel- und Zeitwerte für ein künftiges Ereignis empfangen, d. h. beispielsweise einen Winkelwert, für den die DPLL-Einheit 18 einen zu erwartenden Zeitwert berechnet und gegebenenfalls eine Vorhaltezeit, insbesondere eine Trägheit, abzieht und daraus Zeitwert und Winkelwert für ein Auslöseereignis berechnet. Diese berechneten Daten werden dann über die zentrale Routing-Einheit 10 an eine Ausgabeeinheit 12 ausgegeben, die dieses Auslöseereignis zu dem berechneten Zeitpunkt oder Winkel in einen Signalwechsel am Ausgang umwandelt.
-
Ein Beispiel stellt eine Einspritzung von Kraftstoff in einen Verbrennungsmotor dar. Diese Einspritzung ist für einen bestimmten Winkel des Verbrennungsmotors vorgesehen. Der Winkel kann in eine Zeit umgerechnet werden, wenn die Drehzahl bekannt (und möglichst konstant) ist. Zusätzlich ist eine Trägheit eines entsprechenden Einspritzventils zu berücksichtigen, die eine bestimmte Zeitverzögerung bis zum Öffnen des jeweiligen Einspritzventils bewirkt. Deshalb muss eine Ansteuerung des Einspritzventils schon um diese Zeit vorher stattfinden. Deshalb zieht die DPLL-Einheit 18 die Zeitverzögerung von der oben berechneten Winkelzeit ab und gibt den berechneten Wert aus. Dieser berechnete Wert bewirkt dann nach dem Routing in das Ausgabemodul ATOM 12 einen Ausgangssignalwechsel, wenn der betreffende Zeitpunkt erreicht ist.
-
Da sich die Vorhersagewerte mit wechselnder Drehzahl ändern, ist eine Neuberechnung des Vorhersagewertes mit jedem neuen Eingabewert sinnvoll. Diese neuberechenten Werte ersetzen nach der Ausgabe von der DPLL-Einheit 18 und dem Routing über die ARU 10 die vorherigen Vergleichswerte.
-
Die hier dargestellte Routing-Einheit 10 ermöglicht es, Module flexibel zu konfigurieren und miteinander zu verbinden. Ferner stellt die hier dargestellte Schaltungsanordnung 100 durch das Blockieren des Anforderns und Sendens von Daten durch die zentrale Routing-Einheit 10 ein neues Interrupt-Konzept für ein Zeitgeber-Modul dar, indem auf Interrupts bei der Bereitstellung von Daten verzichtet werden kann. Durch die Funktionsweise der zentralen Routing-Einheit 10 ist es ferner möglich, ohne Implementierung eines Interrupt Controllers, was Fläche und damit Chipkosten einspart, die Interrupts in geeigneter Weise zu steuern.
-
In der erfindungsgemäßen Anordnung 100 gibt es mindestens ein Verarbeitungsmodul (z. B. Multi Channel Sequencer, MCS) 14, und es werden sowohl Zeiten als auch Winkel (oder andere physikalische Werte) über die ARU 10 gerouted, zusammen mit Steuerinformationen.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-