DE102011108563A1 - Techniken für Gleitzeitkommageber - Google Patents

Techniken für Gleitzeitkommageber Download PDF

Info

Publication number
DE102011108563A1
DE102011108563A1 DE201110108563 DE102011108563A DE102011108563A1 DE 102011108563 A1 DE102011108563 A1 DE 102011108563A1 DE 201110108563 DE201110108563 DE 201110108563 DE 102011108563 A DE102011108563 A DE 102011108563A DE 102011108563 A1 DE102011108563 A1 DE 102011108563A1
Authority
DE
Germany
Prior art keywords
mantissa
exponent
interest
count
clock
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.)
Pending
Application number
DE201110108563
Other languages
English (en)
Inventor
Ljudmil Anastasov
Dr. Barrenscheen Jens
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
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 Infineon Technologies AG filed Critical Infineon Technologies AG
Publication of DE102011108563A1 publication Critical patent/DE102011108563A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/06Clock generators producing several clock signals
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/14Conversion to or from non-weighted codes
    • H03M7/24Conversion to or from floating-point codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K7/00Modulating pulses with a continuously-variable modulating signal
    • H03K7/08Duration or width modulation ; Duty cycle modulation

Abstract

Erscheinungsformen der vorliegenden Offenbarung beziehen sich auf Gleitkommazeitgeber und -zähler, die in einer Vielzahl von Kontexten verwendet werden. Bei einigen Implementierungen kann ein Gleitkommazähler verwendet werden, um eine Wellenform zu generieren, die aus einer Reihe von Impulsen mit unterschiedlicher Impulslänge besteht. Eine Anordnung dieser Gleitkommazähler kann zum Implementieren eines Pools aus Verzögerungen verwendet werden. Bei anderen Implementierungen kann eine Anordnung aus Gleitkommazählern verwendet werden, um Wellenformen auf einer Anzahl von verschiedenen Kommunikationskanälen zu analysieren. Die Analyse solcher Wellenformen kann in Anwendungen im Automobilbereich hilfreich sein, beispielsweise bei Messungen der Raddrehzahl, sowie in anderen Anwendungen.

Description

  • Zahlen können in einer Vielzahl von Formaten dargestellt werden. So kann zum Beispiel eine Festkommazahl in wissenschaftlicher Notierung in dem Format mbe ausgedrückt werden, wobei m eine Mantisse darstellt, b eine Basis und e einen Exponenten. Der Mantissen-Anteil der Zahl bezieht sich auf die Genauigkeit der Zahl (zum Beispiel die Anzahl von Dezimalstellen, welche die Zahl umfasst), und der Exponenten-Anteil der Zahl bezieht sich auf den Größenbereich der Zahl (beispielsweise eine Zehnerpotenz). So kann zum Beispiel die Zahl 5.280 in wissenschaftlicher Schreibweise zur Basis 10 als 5,280 × 103 dargestellt werden, wobei 5,280 die Mantisse ist (mit einer Genauigkeit von vier Stellen) und 3 der Exponent.
  • Obwohl Festkommazähler manchmal in Hardware implementiert sind, sind in Fällen, bei denen eine sehr große Anzahl von Zählwerten erforderlich ist, Festkommazähler manchmal unhandlich, weil sie einen großen Speicherbedarf haben, um die große Anzahl von Zählwerten zu verfolgen. Folglich wurden Gleitkommazähler entwickelt. Gleitkommazahlen passen ihre Genauigkeitsstufe als Funktion der Größe der Zahl automatisch an.
  • Wie aus diesem Dokument noch im Detail offensichtlich wird, haben die Erfinder verbesserte Verfahren und Vorrichtungen in Bezug auf Gleitkommazähler entwickelt, die in einer Vielzahl von Kontexten vorteilhaft sind.
  • Gemäß einer erfindungsgemäßen Erscheinungsform wird ein Mehrkanal-Impulsgenerator vorgesehen, um eine Vielzahl von Wellenformen jeweils auf einer Vielzahl von Kanälen auszugeben, der Folgendes umfasst:
    ein Referenz-Taktgebermodul, das so konfiguriert ist, dass es eine feste Referenzfrequenz bereitstellt;
    wenigstens einen Vorteiler, der so konfiguriert ist, dass er auf der Grundlage der festen Referenzfrequenz eine Vielzahl von verschiedenen Frequenzen generiert; und
    eine Vielzahl von Impulsgeneratoreinheiten, welche die Ausgabe der Vielzahl von Wellenformen jeweils an die Vielzahl von jeweiligen Kanälen ermöglichen, wobei eine Impulsgeneratoreinheit einen Gieitkommazeitgeber umfasst und ihre entsprechende Wellenform auf der Grundlage der Anzahl verschiedener Frequenzen generiert.
  • Zweckmäßigerweise ist die Impulsgeneratoreinheit so konfiguriert, dass sie zunächst den Gleitkommazeitgeber entsprechend einer ersten der Anzahl von verschiedenen Frequenzen inkrementiert und anschließend den Gleitkommazeitgeber entsprechend einer zweiten der Anzahl von verschiedenen Frequenzen inkrementiert, wobei die zweite Frequenz niedriger ist als die erste Frequenz.
  • Zweckmäßigerweise sind wenigstens zwei der Impulsgeneratoreinheiten mit einem einzelnen Vorteiler verbunden.
  • Zweckmäßigerweise sind wenigstens zwei der Impulsgeneratoreinheiten mit verschiedenen Vorteilern verbunden.
  • Zweckmäßigerweise umfasst die Impulsgeneratoreinheit ferner Folgendes:
    eine erste Vergleichseinheit, die so konfiguriert ist, dass sie auf der Grundlage eines Zählwertes von dem Gleitkommazeitgeber ein erstes Vergleichsergebnis ausgibt;
    eine zweite Vergleichseinheit, die so konfiguriert ist, dass sie auf der Grundlage des Zählwertes ein zweites, anderes Vergleichsergebnis ausgibt; und
    einen Ausgang, der so konfiguriert ist, dass er die Wellenformausgabe mittels des Impulsgenerators auf der Grundlage des ersten und des zweiten Vergleichsergebnisses bereitstellt.
  • Zweckmäßigerweise umfasst die Vielzahl von Impulsgeneratoreinheiten jeweils eine Vielzahl von Gleitkommazeitgebern, wobei mehrere Gleitkommazeitgeber ihre jeweilige Wellenform auf der Grundlage der festen Referenzfrequenz von dem Referenz-Taktgebermodul generieren.
  • Zweckmäßigerweise sind die mehreren Gleitkommazeitgeber jeweils so konfiguriert, dass sie die Vielzahl von verschiedenen Frequenzen von einem einzelnen Vorteiler empfangen.
  • Zweckmäßigerweise umfasst der Impulsgenerator ferner Folgendes: einen Formatänderungsblock, um von einem Gleitkommadatenformat zu einem binären Datenformat zu wechseln.
  • Gemäß einer weiteren Erscheinungsfarm umfasst ein Impulsgenerator Folgendes:
    einen Gleitkommazeitgeber, der einen Mantissenzählwert und einen Exponentenzählwert ausgibt;
    eine erste Vergleichseinheit, die so konfiguriert ist, dass sie ein erstes Vergleichsergebnis ausgibt, welches angibt, ob der Mantissenzählwert und der Exponentenzählwert vorbestimmte Beziehungen zu einem ersten Mantissenwert von Interesse bzw. zu einem ersten Exponentenwert von Interesse aufweisen;
    eine zweite Vergleichseinheit, die so konfiguriert ist, dass sie ein zweites Vergleichsergebnis ausgibt, welches angibt, ob der Mantissenzählwert und der Exponentenzählwert vorbestimmte Beziehungen zu einem zweiten Mantissenwert von Interesse bzw. zu einem zweiten Exponentenwert von Interesse aufweisen; und
    einen Ausgang, der so konfiguriert ist, dass er einen Impuls auf der Grundlage des ersten und des zweiten Vergleichsergebnisses bereitstellt.
  • Zweckmäßigerweise umfasst der Impulsgenerator ferner Folgendes:
    ein programmierbares Mantissenregister, das so konfiguriert ist, dass es einen Mantissenwert von Interesse speichert; und
    einen Mantissenkomparator, der so konfiguriert ist, dass er den Mantissenzählwert mit dem Mantissenwert von Interesse vergleicht.
  • Zweckmäßigerweise ist der Impulsgenerator geeignet, selektiv den Mantissenzählwert zu löschen, je nachdem, ob eine vorbestimmte Beziehung zwischen dem Mantissenzählwert und dem Mantissenwert von Interesse vorhanden ist oder nicht.
  • Zweckmäßigerweise umfasst der Impulsgenerator ferner Folgendes:
    ein programmierbares Exponentenregister, das so konfiguriert ist, dass es einen Exponentenwert von Interesse speichert; und
    einen Exponentenkomparator, der so konfiguriert ist, dass er den Exponentenzählwert mit dem Exponentenwert von Interesse vergleicht.
  • Zweckmäßigerweise ist der Impulsgenerator geeignet, selektiv den Exponentenzählwert zu löschen, je nachdem, ob eine vorbestimmte Beziehung zwischen dem Exponentenzählwert und dem Exponentenwert von Interesse vorhanden ist oder nicht.
  • Zweckmäßigerweise umfasst der Impulsgenerator ferner Folgendes:
    ein programmierbares Mantissenregister, das so konfiguriert ist, dass es einen Mantissenwert von Interesse speichert;
    einen Mantissenkomparator, der so konfiguriert ist, dass er den Mantissenzählwert mit dem Mantissenwert von Interesse vergleicht;
    wobei der Impuls zwischen einem ersten Zustand und einem zweiten Zustand wechselt, je nachdem, ob der Mantissenzählwert eine vorbestimmte Beziehung zu dem Mantissenwert von Interesse aufweist und ob der Exponentenzählwert eine vorbestimmte Beziehung zu dem Exponentenwert von Interesse aufweist.
  • Gemäß einer Erscheinungsform umfasst ein System Folgendes:
    eine Vielzahl von Impulsgeneratoren, die jeweils mit einer Vielzahl von Eingangskanälen gekoppelt sind;
    einen Mehrkanal-Impulsanalysator, der geeignet ist, Impulse zu analysieren, die auf der Vielzahl von Eingangskanälen empfangen wurden, wobei der Mehrkanal-Impulsanalysator eine erste Vielzahl von Gleitkommazeitgebern umfasst, die jeweils mit der Vielzahl von Eingangskanälen gekoppelt sind, wobei ein Gleitkommazeitgeber so konfiguriert ist, dass er die Bereitstellung eines Ergebnisses auf der Grundlage eines Impulses auf seinem Eingangskanal ermöglicht, wobei das Ergebnis von den übrigen Impulsen unabhängig ist, die ggf. auf den übrigen jeweiligen Eingangskanälen vorliegen.
  • Zweckmäßigerweise entspricht das Ergebnis einer Dauer des Impulses.
  • Zweckmäßigerweise entspricht das Ergebnis der Bestimmung, ob eine Dauer des Impulses eine vorbestimmte Beziehung zu einer Dauer von Interesse aufweist.
  • Zweckmäßigerweise umfasst der Gleitkommazeitgeber Folgendes:
    einen Mantissenzähler, der so konfiguriert ist, dass er einen Mantissenzählwert als Funktion eines vorgeteilten Takts inkrementiert, und der ferner so konfiguriert ist, dass er ein Überlaufsignal generiert, wenn der Mantissenzählwert einen vorbestimmten Mantissenwert erreicht; und
    einen Exponentenzähler, der so konfiguriert ist, dass er einen Exponentenzählwert als Funktion des Überlaufsignals inkrementiert.
  • Zweckmäßigerweise umfasst der Gleitkommazeitgeber ferner Folgendes:
    ein programmierbares Mantissenregister, das so konfiguriert ist, dass es einen Mantissenwert von Interesse speichert; und
    einen Mantissenkomparator, der so konfiguriert ist, dass er den Mantissenzählwert mit dem Mantissenwert von Interesse vergleicht.
  • Zweckmäßigerweise umfasst der Gleitkommazeitgeber ferner Folgendes:
    ein programmierbares Exponentenregister, das so konfiguriert ist, dass es einen Exponentenwert von Interesse speichert; und
    einen Exponentenkomparator, der so konfiguriert ist, dass er den Exponentenzählwert mit dem Exponentenwert von Interesse vergleicht.
  • Zweckmäßigerweise umfasst der Gleitkommazeitgeber ferner Folgendes:
    ein programmierbares Mantissenregister, das so konfiguriert ist, dass es einen Mantissenwert von Interesse speichert;
    einen Mantissenkomparator, der so konfiguriert ist, dass er den Mantissenzählwert mit dem Mantissenwert von Interesse vergleicht;
    wobei das Ergebnis zugesichert wird, je nachdem, ob der Mantissenzählwert eine vorbestimmte Beziehung zu dem Mantissenwert von Interesse aufweist und ob der Exponentenzählwert eine vorbestimmte Beziehung zu dem Exponentenwert von Interesse aufweist.
  • Zweckmäßigerweise ist jeder der ersten Vielzahl von Gleitkommazeitgebern mit einem einzelnen Vorteilermodul gekoppelt, das der ersten Vielzahl von Gleitkommazeitgebern eine Vielzahl von unterschiedlichen Taktsignalen mit jeweils unterschiedlichen Takten bereitstellt.
  • Zweckmäßigerweise umfasst das System ferner Folgendes:
    einen Mehrkanal-Taktgenerator mit einer zweiten Vielzahl von Gleitkommazeitgebern, die jeweils mit einer Anzahl von unterschiedlichen Ausgangskanälen gekoppelt sind, wobei ein Gleitkommazeitgeber der zweiten Vielzahl so konfiguriert ist, dass er die Ausgabe einer Wellenform an einen entsprechenden Ausgangskanal auf der Grundlage der Vielzahl von unterschiedlichen Takten ermöglicht.
  • Zweckmäßigerweise sind wenigstens zwei der Gleitkommazeitgeber so konfiguriert, dass sie zu einem bestimmten Zeitpunkt bei derselben Frequenz zählen.
  • Zweckmäßigerweise sind wenigstens zwei der Gleitkommazeitgeber so konfiguriert, dass sie zu einem bestimmten Zeitpunkt bei verschiedenen Frequenzen zählen.
  • Zweckmäßigerweise umfasst ein Impulsgenerator einen Drehwinkelsensor.
  • Zweckmäßigerweise umfasst der Mehrkanal-Impulsanalysator Folgendes:
    einen Formatänderungsblock, um von einem Gleitkommadatenformat zu einem binären Datenformat zu wechseln oder umgekehrt.
  • Gemäß einer Erscheinungsform umfasst ein Verfahren Folgendes:
    Empfangen einer Vielzahl von Wellenformen jeweils auf einer Vielzahl von Kanälen;
    Inkrementieren eines Gleitkommazeitgeberwertes, solange die Wellenform auf einem entsprechenden Kanal sich in einem ersten Zustand befindet; und
    Bestimmen eines Kanalergebnisses auf der Grundlage des Gleitkommazeitgeberwertes.
  • Zweckmäßigerweise umfasst das Verfahren ferner Folgendes:
    Speichern des Gleitkommazeitgeberwertes an einem Ende der Wellenform, und
    Bestimmen, dass das Kanalergebnis einer Dauer der Wellenform entspricht.
  • Zweckmäßigerweise umfasst das Verfahren ferner Folgendes:
    Speichern des Ergebnisses, je nachdem, ob eine Dauer des Impulses eine vorbestimmte Beziehung zu einer Dauer von Interesse aufweist.
  • Gemäß einer Erscheinungsfarm umfasst ein Verfahren Folgendes:
    selektives Inkrementieren eines Mantissenzählwertes und eines Exponentenzählwertes eines Gleitkommazeitgebers auf der Grundlage eines Referenztaktsignals;
    Generieren eines ersten Vergleichsergebnisses, welches angibt, ob der Mantissenzählwert und der Exponentenzählwert vorbestimmte Beziehungen zu einem ersten Mantissenwert von Interesse bzw. zu einem ersten Exponentenwert von Interesse aufweisen;
    Generieren eines zweiten Vergleichsergebnisses, welches angibt, ob der Mantissenzählwert und der Exponentenzählwert vorbestimmte Beziehungen zu einem zweiten Mantissenwert von Interesse bzw. zu einem zweiten Exponentenwert von Interesse aufweisen; und
    Bereitstellen einer Wellenform auf der Grundlage des ersten und des zweiten Vergleichsergebnisses.
  • Zweckmäßigerweise umfasst das Verfahren ferner Folgendes:
    selektives Anpassen des Exponentenzählwertes, je nachdem, ob eine vorbestimmte Beziehung zwischen dem Exponentenzählwert und wenigstens einem der Folgenden besteht oder nicht: dem ersten Exponentenwert von Interesse oder dem zweiten Exponentenwert von Interesse.
  • Zweckmäßigerweise umfasst das Verfahren ferner Folgendes:
    selektives Anpassen des Mantissenzählwertes, je nachdem, ob eine vorbestimmte Beziehung zwischen dem Mantissenzählwert und wenigstens einem der Folgenden besteht oder nicht: dem ersten Mantissenwert von Interesse oder dem zweiten Mantissenwert von Interesse.
  • Gemäß einer weiteren Erscheinungsform umfasst ein Gleitkommazeitgebermodul Folgendes:
    ein Taktgebermodul, um einen Moduleingangstakt bereitzustellen;
    einen Vorteiler, um eine Vielzahl von Taktgeber-Aktivierungssignalen mit jeweils verschiedenen Frequenzen auf der Grundlage des Moduleingangstakts bereitzustellen;
    ein Frequenzauswahlelement, um auf der Grundlage eines von einem Exponentenzähler bereitgestellten Steuersignals aus der Vielzahl von Taktsignalen ein Taktgeber-Aktivierungssignal von Interesse auszuwählen;
    ein Clock-Gating-Modul, um einem Mantissenzähler auf der Grundlage des Moduleingangstakts und des Taktgeber-Aktivierungssignals von Interesse einen über ein Gatter gesteuerten Takt bereitzustellen.
  • Zweckmäßigerweise umfasst das Gleitkommazeitgebermodul ferner Folgendes:
    einen Formatänderungsblock, um von einem Gleitkommadatenformat zu einem binären Datenformat zu wechseln oder umgekehrt.
  • Gemäß einer Erscheinungsform umfasst ein Gleitkommazeitgeber Folgendes:
    ein Referenz-Taktgebermodul, das so konfiguriert ist, dass es eine feste Referenzfrequenz bereitstellt;
    einen Vorteiler, der so konfiguriert ist, dass er auf der Grundlage der festen Referenzfrequenz eine Anzahl von verschiedenen Frequenzen generiert, wobei ein Paar von benachbarten Frequenzen innerhalb der Anzahl von verschiedenen Frequenzen mit einem anderen Faktor als dem Zweifachen zueinander beabstandet sind;
    einen Mantissenzähler, der so konfiguriert ist, dass er anfänglich gemäß einer ersten aus dem Paar von benachbarten Frequenzen inkrementiert wird und anschließend gemäß einer zweiten aus dem Paar von benachbarten Frequenzen inkrementiert wird, bevor in dem Mantissenzähler ein Überlaufsignal aktiviert wird; und
    einen Exponentenzähler, der so konfiguriert ist, dass er bei Aktivierung des Überlaufsignals inkrementiert wird.
  • Zweckmäßigerweise ist der Frequenzabstand des Paars aus benachbarten Frequenzen programmierbar.
  • Beschreibung der Zeichnungen
  • 1 ist ein Blockdiagramm, das einen Impulsgenerator veranschaulicht, der einen Gleitkommazähler gemäß einigen Ausführungsformen umfasst.
  • 2 ist eine Wellenform, die von dem Impulsgenerator in 1 ausgegeben werden kann.
  • 3 ist ein Blockdiagramm, das einen Mehrkanal-Impulsgenerator veranschaulicht, der eine Vielzahl von Wellenformen gemäß einigen Ausführungsformen umfasst.
  • 4 ist ein Blockdiagramm, das einen Mehrkanal-Impulsanalysator veranschaulicht, der Wellenformen auf einer Anzahl von Kanälen gemäß einigen Ausführungsformen analysiert.
  • 5 ist ein Blockdiagramm einer Gleitkomma-Erfassungs- und Vergleichseinheit gemäß einigen Ausführungsformen.
  • 6 ist ein Blockdiagramm, das einen weiteren Mehrkanal-Impulsanalysator veranschaulicht, der Wellenformen auf einer Anzahl von Kanälen gemäß einigen Ausführungsformen analysiert.
  • 7 ist ein beispielhaftes Zeitsteuerungsdiagramm, das den Betrieb einer Gleitkomma-Erfassungs- und Vergleichseinheit in dem Erfassungsmodus gemäß einer Ausführungsform veranschaulicht.
  • 8 ist ein beispielhaftes Zeitsteuerungsdiagramm, das den Betrieb einer Gleitkomma-Erfassungs- und Vergleichseinheit in dem Vergleichsmodus gemäß einer Ausführungsform veranschaulicht.
  • 9 ist ein Blockdiagramm, das ein Beispiel für ein Gleitkommazeitgebermodul veranschaulicht, das ein Clock-Gating-Modul umfasst.
  • Detaillierte Beschreibung
  • Der beanspruchte Gegenstand wird nun unter Bezugnahme auf die Zeichnungen beschrieben, wobei sich gleiche Bezugszeichen durchgehend auf gleiche Elemente beziehen. In der folgenden Beschreibung sind zum Zwecke der Erläuterung zahlreiche spezifische Details dargelegt, um ein besseres Verständnis des beanspruchten Gegenstands zu ermöglichen. Es kann jedoch offensichtlich sein, dass der beanspruchte Gegenstand auch ohne diese spezifischen Details in die Praxis umgesetzt werden kann.
  • Erscheinungsformen der vorliegenden Offenbarung beziehen sich auf Gleitkommazeitgeber und -zähler, die in einer Vielzahl von Kontexten verwendet werden. Bei einigen Implementierungen (siehe zum Beispiel 1 bis 3 und den zugehörigen Text) kann ein Gleitkommazähler verwendet werden, um eine Wellenform zu generieren, die aus einer Reihe von Impulsen mit unterschiedlicher Impulslänge besteht. Eine Anordnung dieser Gleitkommazähler kann verwendet werden, um einen Pool aus Verzögerungen zu implementieren, wie er zum Beispiel in einer QSPI (queued serial peripheral interface, serielle Peripherieschnittstelle mit Warteschlange) verwendet wird. Bei anderen Implementierungen (siehe zum Beispiel 4 bis 9 und den zugehörigen Text) kann eine Anordnung aus Gleitkommazählern verwendet werden, um Wellenformen auf einer Anzahl von verschiedenen Kommunikationskanälen zu analysieren. Die Analyse solcher Wellenformen kann in Anwendungen im Automobilbereich hilfreich sein, zum Beispiel bei Messungen der Raddrehzahl, sowie in anderen Anwendungen.
  • 1 zeigt einen Impulsgenerator 100 mit einem Ausgang, der so konfiguriert ist, dass er eine Wellenform 200 liefert, die Dauern aufweisen kann, welche auf programmierbare Weise zwischen einem ersten Zustand und einem zweiten Zustand wechseln, wie zum Beispiel in 2 gezeigt. Die in 2 veranschaulichte Wellenform befindet sich während einer ersten (relativ langen) Impulsdauer 206 in einem ersten Zustand 202 und gelangt dann während einer zweiten (relativ kurzen) Impulsdauer 208 in einen zweiten Zustand 204; die Wellenform 200 kehrt dann während einer dritten Impulsdauer 210 in den ersten Zustand 202 zurück, bevor sie während einer vierten Impulsdauer 212 in den zweiten Zustand 204 zurückkehrt; und so weiter. Die Wellenform von 2 ist lediglich ein Beispiel für eine Form einer Wellenform, und vorteilhafterweise können andere Wellenformen im Schutzumfang dieser Offenbarung in dem ersten und in dem zweiten Zustand andere Impulsdauern zeigen.
  • Um Wellenformen mit programmierbaren Impulsdauern zu generieren, umfasst der Impulsgenerator 100 von 1 Steuerschaltungen 102, einen Gleitkommazeitgeber 104 und eine erste und eine zweite Vergleichseinheit (106 bzw. 108), die mit einem Ausgaberegister 110 gekoppelt sind. Programmierbare Register 112118 innerhalb der ersten und der zweiten Vergleichseinheit können über eine Eingabeschnittstelle 120 programmiert werden, die einen Datenbus, einen Adressbus und ein Lese-/Schreib-Bit (RW) umfasst.
  • Um eine Wellenform mit einer gewünschten Form zu generieren, wird die Eingabeschnittstelle 120 verwendet, um Mantissenwerte von Interesse in die Register 112, 116 zu programmieren. Die Eingabeschnittstelle 120 wird außerdem verwendet, um Exponentenwerte von Interesse in die Register 114, 118 zu programmieren. Der erste Mantissenwert in Register 112 und der erste Exponentenwert in Register 114 geben zusammen einen ersten Zeitpunkt an, an dem ein erstes Vergleichsereignis eintreten soll (zum Beispiel an dem Ende der Dauer 206 in 2), gemessen ab einem Zeitpunkt, zu dem der Gleitkommazähler 104 gestartet wird. Der zweite Mantissenwert in Register 116 und der zweite Exponentenwert in Register 118 geben gemeinsam einen zweiten Zeitpunkt an, zu dem ein zweites Vergleichsereignis eintreten soll (zum Beispiel an dem Ende der Dauer 208 in 2).
  • Nachdem diese Werte von Interesse jeweils in die Register 112118 programmiert worden sind, wird der Gleitkommazähler 104 gestartet (zum Beispiel durch Schreiben in ein Startregister 122), wonach der Zähler 104 in einer weiter unten noch genauer beschriebenen Weise eine Gfeitkommazählung durchführt. Wenn der Mantissenzähler 124 den ersten, in dem Register 112 gespeicherten Mantissenwert von Interesse erreicht, sichert eine erste m-Bit-Vergleichseinheit 126 ein Signal zu. Wenn auf ähnliche Weise der Exponentenzähler 128 den ersten, in dem Register 114 gespeicherten Exponentenwert von Interesse erreicht, sichert eine erste e-Bit-Vergleichseinheit 130 ein Signal zu. Wenn somit beide Vergleichssignale gleichzeitig zugesichert werden, werden das Ausgaberegister 110 und die Ausgangswellenform in einen zweiten Datenzustand gebracht (zum Beispiel während der Dauer 208 in 2).
  • Zu einem späteren Zeitpunkt erreicht der Mantissenzähler 124 den zweiten, in dem Register 116 gespeicherten Mantissenwert von Interesse, und der Exponentenzähler 128 erreicht schließlich den zweiten, in dem Register 118 gespeicherten Exponentenwert von Interesse. Zu diesem Zeitpunkt sichern eine zweite m-Bit-Vergleichseinheit 132 und eine zweite e-Bit-Vergleichseinheit 134 Signale zu, wodurch das Ausgaberegister 108 und der Wellenformimpuls in einen ersten Datenzustand gebracht werden (zum Beispiel während der Dauer 210 in 2).
  • Je nach Implementierung können die in die Register 112 bis 118 programmierten Zeitpunkte verschiedene Formen annehmen. Zum Beispiel kann ein Szenario betrachtet werden, in dem ein Benutzer zwei unterschiedliche Zeitpunkte mit Bezug auf einen einzelnen Startzeitpunkt signalisieren möchte (der Benutzer möchte zum Beispiel signalisieren, dass ein erstes Ereignis 10 ms nach dem Startzeitpunkt aufgetreten ist und dass ein zweites Ereignis 20 ms nach dem Startzeitpunkt aufgetreten ist.) In einem solchen Beispiel kann der Benutzer die ersten Vergleichsregister 112, 114 so programmieren, dass sie 10 ms nach dem Startzeitpunkt entsprechen, und er kann die zweiten Vergleichsregister 116, 118 so programmieren, dass sie 20 ms nach dem Startzeitpunkt entsprechen. Sobald somit der Gleitkommazeitgeber gestartet wurde, laufen der Mantissenzähler und der Exponentenzähler ungehindert und werden erst gelöscht, nachdem sowohl der erste als auch der zweite Zeitraum abgelaufen sind und die entsprechenden Ereignissignale generiert wurden. Bei einem anderen Beispiel könnte ein erstes Ereignis 10 μs nach einem Startzeitpunkt auftreten und ein zweites Ereignis 20 ms nach dem Startzeitpunkt. Wenn von einem Referenztakt von 10 MHz ausgegangen wird, würde ein Binärzähler einen 7 Bit langen Vergleichswert benötigen, um das erste Ereignis zu signalisieren, und 18 Bit, um das zweite Ereignis zu signalisieren. Bei dem in 2 dargelegten Gleitkommazeitgeber würden jedoch insgesamt 12 Bit (zum Beispiel 8 Bit für die Mantisse und 4 für den Exponenten) ausreichen, um das erste und das zweite Ereignis zu signalisieren. Somit kann in diesem Beispiel das Gleitkommazählermodul die Bit-Anzahl von 18 Bit (Binärzähler) auf 12 Bit (Gleitkommazähler) verringern.
  • In einer weiteren Implementierung kann der Benutzer die ersten Vergleichsregister 112, 114 mit einem ersten Zeitpunkt programmieren, der 10 ms nach dem Startzeitpunkt entspricht, und er kann die zweiten Vergleichsregister 116, 118 mit einem zweiten Zeitpunkt programmieren, der 10 ms nach dem Ende des ersten Zeitraums entspricht. Somit können in diesem Beispiel der Mantissenzähler und der Exponentenzähler an dem Ende des ersten Zeitraums gelöscht werden, und sie beginnen dann erneut mit dem Zählen von einem Startwert aus, bis der zweite Zeitpunkt erreicht ist.
  • In jedem Fall können durch Programmieren aufeinander folgender Werte in die Register 11218 die Dauern des ersten und des zweiten Datenzustandes in der Wellenform so gesteuert werden, dass praktisch jede gewünschte Form in dem Verlauf der Wellenform erreicht werden kann. Insbesondere erlaubt die Verwendung eines Gleitkommazählers 104 extrem lange Zeiträume zwischen einem ersten und einem zweiten Datenzustand, während nur eine begrenzte Anzahl von Bits in den Registern verwendet werden. Wenn hingegen in derselben Architektur ein Gleitkommazähler verwendet würde, wäre eine deutlich größere Anzahl von Bits für die Register erforderlich, wodurch es eine Tendenz gäbe, die Anzahl der Gatter in der Konstruktion zu erhöhen und potenziell damit auch den Stromverbrauch zu erhöhen.
  • Um in dem Gleitkommamodus zu zählen, umfasst der Gleitkommazeitgeber 104 von 1 ein Referenz-Taktgebermodul 150, einen Vorteiler 152 und ein Vorteilermodus-Steuermodul 154 (sowie den Mantissen- und den Exponentenzähler 124, 128). Der Vorteiler 152 empfängt ein Referenztaktsignal mit einer festen Frequenz von dem Referenz-Taktgebermodul 150. Der Vorteiler 152 verringert dann die Frequenz des Referenztaktsignals um unterschiedliche Beträge, wodurch eine Reihe verschiedener Frequenzen bereitgestellt wird (f0, f1, ..., fN). Die Vorteilermodus-Steuerung 154 wählt dann eine dieser Frequenz aus und stellt sie dem Mantissenzähler 124 bereit.
  • Anfänglich wird der Mantissenzähler 124 um ein erstes Inkrement (zum Beispiel 1) inkrementiert, das der ersten ausgewählten Frequenz entspricht (zum Beispiel Frequenz f0). An einem bestimmten Punkt läuft der Mantissenzähler 124 über, und die Vorteilermodus-Steuerung 154 verringert die dem Mantissenzähler 124 gelieferte Frequenz (zum Beispiel um die Hälfte auf die Frequenz f1). Zu diesem Zeitpunkt setzt die Vorteilermodus-Steuerung 154 außerdem den Mantissenzähler 124 auf einen geeigneten Mantissenzählwert (zum Beispiel die Hälfte des maximalen Mantissenzählwertes). Der Exponentenzähler 128 wird ebenfalls inkrementiert, wenn der Überlauf auftritt. Das Zählen kann dann fortgesetzt werden, bis der Mantissenzähler wieder überläuft oder der Zähler auf andere Weise zurückgesetzt wird. Siehe auch zum Beispiel die Funktionsbeispiele in 7 bis 8 (diese veranschaulichen Beispiele, wie ein Gleitkommazähler funktionieren kann).
  • 1 zeigt außerdem einen optionalen Formatänderungsblock 160 (zum Beispiel ein Hardwaremodul, das von dem Impulsgenerator 100 umfasst wird). Da viele kleine CPUs Hardwaremodule aufweisen, die Zahlen nur im Binärformat verarbeiten, muss für den Fall, dass der Formatänderungsblock 160 nicht umfasst ist, die auf einer kleinen CPU ausgeführte Software die Darstellung von dem Binärformat der Berechnung in das Gleitkommaformat der Zeitgeber ändern. Diese Softwareberechnung erhöht den Bedarf an Rechenleistung und die Ausführungszeit. Des Weiteren ist, selbst wenn eine CPU das Gleitkommaformat unterstützt, die Anzahl der Bits für Mantisse und Exponent in der CPU nicht gleich der in den Gleitkommazeitgebern. Auch hier könnte eine Formatänderung notwendig sein. Der Formatänderungsblock erlaubt es dem Impulsgenerator 100, auf einfache Weise eine Schnittstelle mit einer CPU in dem nativen Zahlenformat zu bilden, das von einer CPU verwendet wird. Somit kann in dem Beispiel von 1 der Formatänderungsblock 160 eine Binärzahl von der CPU empfangen und sie verwenden, um die entsprechenden Gleitkommazahlen zu bestimmen, die dann zum Beispiel in die Register für die Mantissenwerte von Interesse und in die Register für die Exponentenwerte von Interesse geladen werden können.
  • 3 zeigt eine Implementierung eines Mehrkanal-Impulsgenerators 300, der eine Anordnung von Impulsgeneratoren 302 umfasst, die verschiedenen jeweiligen Kanälen zugeordnet sind. Jeder Impulsgenerator in der Anordnung kann eine gesonderte Instanziierung eines Impulsgenerators umfassen (zum Beispiel den in 1 veranschaulichten Impulsgenerator 100). Daher kann der Mehrkanal-Impulsgenerator 300 gleichzeitig eine Reihe von verschiedenen Wellenformen jeweils auf der Anzahl von jeweiligen Kanälen generieren, wobei jede Wellenform von den übrigen Wellenformen unabhängig ist. Bei der veranschaulichten Implementierung können die einzelnen Impulsgeneratoren ein einziges Referenz-Taktgebermodul 304 und einen einzigen Vorteiler 406 gemeinsam verwenden, der dann allen individuellen Impulsgeneratoren seine Anzahl von Frequenzen bereitstellt. Bei anderen Ausführungsformen können die einzelnen Impulsgeneratoren 302 gesonderte Taktgebermodule und Vorteiler aufweisen, obwohl hierfür tendenziell mehr logische Gatter benötigt werden als in der veranschaulichten Implementierung. Obwohl dies in 3 nicht gezeigt ist, könnte 3 auch einen einzelnen Formatänderungsblock umfassen, der von den Impulsgeneratoren 302 gemeinsam verwendet wird, oder sie konnte jeweilige Formatänderungsblöcke für jeweilige Impulsgeneratoren umfassen.
  • Nun ist unter Bezugnahme auf 4 erkennbar, dass eine Ausführungsform sich auf einen Mehrkanal-Analysator 400 bezieht, der in der Lage ist, gleichzeitig eine Anzahl verschiedener Wellenformen jeweils auf einer Anzahl von unterschiedlichen Kanälen 402 (K 1, K 2, ..., K N) zu analysieren. Diese Ausführungsform kann zum Beispiel in einem Automobilsystem hilfreich sein, wo die Kanäle 402 jeweiligen Impulsgeneratoren 404 zugeordnet sind, wobei jeder von diesen einen gesonderten, im Automobil verwendbaren Sensor aufweist. Beispielsweise könnte ein erster Impulsgenerator 406a einen Drehzahlsensor für das rechte Hinterrad aufweisen, und ein zweiter Impulsgenerator 406b könnte einen Drehzahlsensor für das linke Hinterrad aufweisen. Die von jedem Sensor gelieferte Wellenform kann zwischen einem ersten und einem zweiten Datenzustand auf eine Weise wechseln, die der Drehzahl des betreffenden Rades entspricht. Um somit die Drehzahlen des linken Hinterrades und des rechten Hinterrades zu verfolgen, überwachen die Gleitkomma-Zeitgebermodule 408a und 408b die Wellenformen auf den Kanälen 402 und bestimmen auf der Grundlage der Wellenformen Ergebnisse (Ergebnis für K 1 bzw. Ergebnis für K 2). Diese Ergebnisse werden dann einem Mikroprozessor 410 gemeldet, zum Beispiel mittels des Mikroprozessors oder eines weiteren Moduls, das Register (oder weiteren Speicher) in dem Mehrkanal-Analysator 400 liest, in dem die Ergebnisse gespeichert werden.
  • 5 zeigt ein Beispiel für eine Gleitkomma-Erfassungs- und -Vergleichseinheit 500, die zum Implementieren eines Gleitkomma-Zeitgebermoduls von 4 (zum Beispiel des Gleitkomma-Zeitgebermoduls 408a und/oder 408b) verwendet werden kann. Die Gleitkomma-Erfassungs- und -Vergleichseinheit 500 umfasst ein Kantenerkennungs- und Steuermodul 502 und einen Gleitkommazähler 504. Um die Erfassungsfunktionalität zu ermöglichen, umfasst die Einheit ein Mantissen-Erfassungsregister 506 und ein Exponenten-Erfassungsregister 508. Um die Vergleichsfunktionalität zu ermöglichen, umfasst die Einheit ein Vergleichsmodul 510, das ein Register für einen programmierbaren Mantissenwert von Interesse 512 und ein Register für einen programmierbaren Exponentenwert von Interesse 514 umfasst. Das Vergleichsmodul 510 umfasst außerdem ein m-Bit-Vergleichsmodul 516 und ein e-Bit-Vergleichsmodul 518 sowie Logik 520, um zu bestimmen, wann ein Ereignis eingetreten ist.
  • Je nach dem Modus, in dem die Erfassungs- und Vergleichseinheit betrieben wird, kann sie entweder Mantissenwerte und Exponentenwerte zu einem Zeitpunkt von Interesse erfassen (so genannter „Erfassungsmodus”), oder sie kann ein Ausgangssignal zusichern, wenn der Gleitkommazähler den Mantissenwert von Interesse und den Exponentenwert von Interesse erreicht hat (so genannter „Vergleichsmodus”). Diese beiden Betriebsmodi werden unten noch ausführlicher beschrieben.
  • In dem Erfassungsmodus zählt der Gleitkommazähler 504 in einem Gleitkommamodus, indem er den Mantissenzähler 522 und den Exponentenzähler 524 inkrementiert. Bei der Zusicherung eines Erfassungssignal bei 526 speichern die Register 506, 508 den Mantissenwert und den Exponentenwert, die sich aktuell in dem Gleitkommazähler 504 befinden. Ein Mikroprozessor kann anschließend den Mantissenwert und den Exponentenwert auslesen, indem er diese Register 506, 508 adressiert. Oft wird der Gleitkommazähler gelöscht, wenn das Erfassungsereignis eintritt, wodurch der Gleitkommazähler dafür vorbereitet wird, dass er mit dem Zählen beginnt, bis ein weiteres Ereignis eintritt.
  • In dem Erfassungsmodus kann das Erfassungssignal bei 526 je nach Implementierung auf eine von wenigstens zwei Weisen zugesichert werden. Bei einer Implementierung kann das Erfassungssignal zugesichert werden, je nachdem, ab eine gewünschte Änderung des Zustands in der Wellenform auftritt (zum Beispiel, ob ein Übergang von dem Zustand „Low” zu dem Zustand „High” auftritt). Alternativ kann der Mikroprozessor oder ein anderes Systemmodul, wie durch Linie 530 gezeigt, über die Eingabeschnittstelle eine Anweisung in die Erfassungs- und Vergleichseinheit schreiben, wobei die Anweisung die Erfassungs- und Vergleichseinheit veranlasst, den Mantissenwert und den Exponentenwert ungefähr zu dem Zeitpunkt, zu dem die Anweisung empfangen wird, in den Registern 506, 508 zu speichern.
  • In dem Vergleichsmodus hingegen werden der Mantissenwert von Interesse und der Exponentenwert von Interesse jeweils in die Register 512, 514 geschrieben. Beim Inkrementieren des Gleitkommazählers 504 erreicht der Zählwert in seinem Mantissenzähler 522 und in seinem Exponentenzähler 524 schließlich die Werte von Interesse in den Registern 512, 514, und die Komparatoren 516, 518 sowie die Logik 520 signalisieren, dass ein Ereignis eingetreten ist. In einigen Fällen kann die Erfassungs- und Vergleichseinheit 500 einen Bitschalter für eine Unterbrechung setzen, wenn das Ereignis eintritt, und bei anderen Implementierungen kann sie ein Bit in einem Statusregister (nicht gezeigt) setzen, um das Eintreten des Ereignisses anzugeben. Oft wird der Gleitkommazähler gelöscht, wenn dieses Ereignis eintritt, wodurch der Gleitkommazähler darauf vorbereitet wird, mit dem Zählen bis zu einem weiteren Ereignis zu beginnen.
  • 6 zeigt ein Beispiel, in dem eine Anordnung von Gleitkomma-Erfassungs- und -Vergleichseinheiten (Gleitkomma-Erfassungs- und -Vergleichseinheit 1, ..., Gleitkomma-Erfassungs- und -Vergleichseinheit N) so angeordnet sind, dass sie einen Mehrkanal-Impulsgenerator/-Analysator 600 implementieren. In diesem Beispiel kann die Gleitkomma-Erfassungs- und -Vergleichseinheit verschiedene Kanäle überwachen, und dann kann jede Einheit auf der Grundlage der Wellenform auf ihrem Kanal ein Ergebnis meiden. In diesem Beispiel verwenden die Gleitkomma-Erfassungs- und -Vergleichseinheiten einen gemeinsamen Referenztaktgeber und Vorteiler, obwohl bei anderen Ausführungsformen jede Gleitkomma-Erfassungs- und -Vergleichseinheit ein eigenes Referenztaktgeber- und Vorteilermodul umfassen kann.
  • 4 bis 6 könnten außerdem einen Formatänderungsblock umfassen (zum Beispiel den Formatänderungsblock 160 von 1), der das Format des Ergebnisses von dem Gleitkommaformat in das Binärformat ändert. Wie bei den zuvor bereits erörterten Implementierungen kann ein solcher Formatänderungsblock die optimierte Kommunikation und Verarbeitung im Hinblick auf das System als Ganzes ermöglichen.
  • Funktionsbeispiele
  • 7 zeigt ein Funktionsbeispiel des Betriebs einer Erfassungs- und Vergleichseinheit in dem Erfassungsmodus, das so entworfen wurde, dass es mit 5 konsistent ist. In dem Beispiel von 7 ist das Erfassungs- und Vergleichsmodul so konfiguriert, dass es eine Impulsdauer 702 einer Wellenform 700 misst, die auf Kanal 1 empfangen wurde, während sich die Wellenform 700 in dem Zustand „High” befindet. Es könnten auch Dauern des Zustands „Low” oder Kombinationen der Zustände „Low” und „High” gemessen werden.
  • Wie ersichtlich ist, wird, wenn die Wellenform 700 in den Zustand „High” eintritt, ein aktives Signal 704 (zum Beispiel von einem Kantenerkennungs- und Steuermodul 502 in 5 bereitgestellt) zugesichert, wodurch die Verteilung eines Referenztaktsignals 706 an die Erfassungs- und Vergleichseinheit aktiviert wird (zum Beispiel durch Aktivieren einer Clock-Gating-Zelle). Ein vorgeteilter Takt 708, der anfänglich eine erste Frequenz auf der Grundlage des Referenztakts aufweist, wird dem Mantissenzähler 710 bereitgestellt. Der Mantissenzähler wird dann bei einem Inkrementwert (zum Beispiel x001) bei jedem Impuls des vorgeteilten Takts inkrementiert.
  • Wenn der Mantissenzähler überläuft, wie durch 712 gezeigt, wird der Exponentenzähler 714 inkrementiert. Zu diesem Zeitpunkt wird zudem der Mantissenzählwert auf 0x800 gesetzt, die Taktfrequenz beträgt nur noch die Hälfte ihrer ursprünglichen Frequenz, und der Mantissenzähler wird weiterhin bei jedem Impuls des vorgeteilten Takts um den Inkrementwert (zum Beispiel x001) inkrementiert.
  • Wenn schließlich der Impuls auf Kanal 1 von dem Status „High” in den Status „Low” fällt (die in diesem Beispiel zu erkennende Bedingung), wird ein Erfassungssignal 716 auf „High” gesetzt, was bewirkt, dass der Mantissenwert und der Exponentenwert zu diesem Zeitpunkt in Registern gespeichert werden, wie dies durch 718 und 720 gezeigt wird (zum Beispiel Register 506, 508 in 5). Ein Mikroprozessor oder eine andere Systemkomponente kann dann diese gespeicherten Werte abrufen, indem er bzw. sie Werte aus Adressen liest, die diesen Registern zugeordnet sind.
  • 8 zeigt ein Funktionsbeispiel für den Betrieb der Erfassungs- und Vergleichseinheit in dem Vergleichsmodus. In diesem Beispiel werden, bevor oder während eine Wellenform 800 auf dem Kanal in den Zustand „High” gebracht wird, ein Mantissenwert von Interesse 802 (xFFE) und ein Exponentenwert von Interesse 804 (x002) gesetzt (zum Beispiel, indem sie jeweils in die Register 512, 514 in 5 programmiert werden).
  • Wenn die Wellenform 800 in den Zustand „High” eintritt, aktiviert ein Aktiv-Signal 806 (zum Beispiel von einem Kantenerkennungs- und Steuermodul 502 in 5 bereitgestellt) die Verteilung eines Referenztaktsignals 808, und der Mantissenanteil und der Exponentenanteil des Gleitkommazählers führen die Zählung durch, wie zuvor unter Bezugnahme auf 7 erörtert. Wenn jedoch der Exponentenwert x002 erreicht und wenn der Mantissenwert xFFE erreicht, ist der aktuelle Wert des Gleitkommazeitgebers gleich dem Exponentenwert von Interesse und dem Mantissenwert von Interesse 802, 804. Aus diesem Grund wird das Signal „Ereignis eingetreten” 810 zugesichert. Dies kann das System darüber benachrichtigen, dass das Ereignis (zu einem Zeitpunkt, der einem Exponentenwert x002 und einem Mantissenwert xFFE entspricht) eingetreten ist.
  • Es ist offensichtlich, dass es, obwohl die Wellenformen von 7 bis 8 die Frequenz des vorgeteilten Takts so veranschaulichen, dass er stufenweise bei jedem aufeinander folgenden Überlaufen um ½ geändert wird, ebenfalls denkbar ist, dass andere Stufenwerte unter den Schutzumfang der vorliegenden Offenbarung fallen. Obwohl 7 zeigt, dass der vorgeteilte Takt bei 2 MHz beginnt und dann auf 1 MHz und anschließend auf 500 KHz verringert wird, könnte der vorgeteilte Takt bei anderen Ausführungsformen auch bei 2 MHz beginnen, dann auf 500 kHz und anschließend auf 125 kHz verringert werden (das heißt, er würde stufenweise um einen Faktor 4 verringert). Im Allgemeinen könnte die Frequenz stufenweise um N geändert werden, wobei N ein ganzzahliger Wert ist. Dadurch, dass für N andere Werte als einfach N = 2 vorgesehen werden, können diese weiteren Ausführungsformen einen größeren Bereich an Kompromissen zwischen Genauigkeit und Fläche für die Schaltung vorsehen, als dies zuvor erreichbar war. Bei einigen Ausführungsformen kann der Wert für N programmierbar sein, obwohl dies eine bedeutende Anzahl von zusätzlichen Gattern zum Erreichen dieser Funktionalität erfordern kann. Der Mantissenzähler wird auf (Maximalwert des Mantissenzählers + 1)/N gesetzt.
  • 9 zeigt ein Beispiel für eine Peripherievorrichtung 900, die eine Anordnung von Gleitkommazeitgebern (Zeitgeber 1, ... Zeitgeber N) umfasst, wobei jeder Gleitkommazeitgeber eine Anzahl von verschiedenen Taktgeber-Aktivierungssignalen mit unterschiedlichen Frequenzen (zum Beispiel 1/1·fIN, ½·fIN, ¼·fIN, ..., 1/n·fIN) von einem einzelnen Vorteiler 902 empfängt. Um Taktsignal-Laufzeitdifferenzen zwischen den Gleitkommazeitgebern zu beschränken, umfasst jedes Gleitkommazeitgebermodul ein Clock-Gating-Modul (904-1, ..., 904-N). Auf der Grundlage eines von einem Exponentenzähler bereitgestellten Steuersignals wählen jeweilige Frequenzauswahlelemente (906-1, ..., 906-N) ein Taktgeber-Aktivierungssignal von Interesse auf den Linien (908-1, ... 908-N) aus der Vielzahl von Taktgeber-Aktivierungsignalen aus. Das Clock-Gating-Modul (904-1, ..., 904-N) stellt einem jeweiligen Mantissenzähler auf der Grundlage des Moduleingangstakts und des Taktgeber-Aktivierungssignals von Interesse einen über ein Gatter gesteuerten Takt bereit.
  • Während des Betriebs wechselt der Moduleingangstakt bei der ersten Eingangsfrequenz fIN zwischen einem ersten und einem zweiten Zustand (zum Beispiel 3,3 V und 0 V). Der Vorteiler 902 verringert die Eingangsfrequenz dann um verschiedene Beträge, um eine Reihe von geteilten Frequenzen bereitzustellen (zum Beispiel 1/1·fIN, ½·fIN, ¼·fIN, ... 1/n·fIN). Diese geteilten Frequenzen werden dann durch einen Bus 906 an die einzelnen Module geliefert.
  • Zu jedem gegebenen Zeitpunkt wird innerhalb eines Gleitkommazeitgebers über den Ekponentenzählerwert eine einzelne geteilte Frequenz ausgewählt, die dem Steuergatter des Clock-Gating-Moduls bereitgestellt wird. Beispielsweise kann, bald nachdem der Gleitkommazähler zu zählen beginnt, die Frequenz ½·fIN ausgewählt werden. Obwohl zu diesem Zeitpunkt fIN an einer Quelle des Steuergatters anliegt, werden durch die Tatsache, dass ein Signal mit ½·fIN an dem Steuergatter des Clock-Gating-Moduls vorhanden ist, einige Impulse des Eingangstakts blockiert. Folglich zählt der Mantissenzähler während dieser Zeit gemäß ½·fIN, basiert aber auf dem Modul-Eingangstakt. Diese Konfiguration beschränkt nicht nur die Laufzeitdifferenz des Takts zwischen den Gleitkommazeitgebern, sondern kann auch den Stromverbrauch verringern, weil der Gleitkommazeitgeber nur dann getaktet wird, wenn es erforderlich ist. Folglich wird der Stromverbrauch eines Zeitgebers unabhängig für jeden Zeitgeber automatisch mit der Frequenz verringert.
  • Obwohl 1 bis 3 einen Impulsgenerator 100 und 4 bis 6 einen Impuls-Analysator zeigten, ist es offensichtlich, dass einige Implementierungen eine Kombination von Impulsgeneratoren und Impuls-Analysatoren in einer einzelnen Peripherievorrichtung umfassen (zum Beispiel in einer einzelnen integrierten Schaltung). Gleitkommazähler innerhalb solcher Impulsgeneratoren und/oder Impuls-Analysatoren können unabhängig voneinander zählen, dergestalt, dass sie zu einem bestimmten Zeitpunkt bei derselben Oder bei verschiedenen Frequenzen zählen. Somit können die in den Figuren gezeigten Ausführungsformen auf verschiedene Weise miteinander kombiniert werden, bei allen ist denkbar, dass sie unter den Schutzumfang der vorliegenden Offenbarung fallen.
  • Obwohl die Offenbarung im Hinblick auf eine oder mehrere Implementierungen gezeigt und beschrieben worden ist, werden den Fachleuten auf diesem Gebiet auf der Grundlage des Lesens und Verstehens dieser Schrift und der beigefügten Zeichnungen gleichwertige Veränderungen und Modifikationen einfallen. Obwohl zum Beispiel einige Implementierungen oben im Hinblick auf ein Erfassungs- und Vergleichsmodul beschrieben wurden, können andere, nicht veranschaulichte Implementierungen nur eine Erfassungsfunktionalität (keine Vergleichsfunktionalität) umfassen, oder sie können nur eine Vergleichsfunktionalität (keine Erfassungsfunktionalität) umfassen. Andere Veränderungen und Kombinationen der oben offenbarten Konzepte werden ebenfalls als in den Schutzumfang der Offenbarung fallend betrachtet. Die Offenbarung umfasst alle solchen Modifikationen und Veränderungen und ist nur durch den Schutzumfang der folgenden Ansprüche beschränkt. Mit besonderem Hinblick auf die verschiedenen Funktionen, die von den oben beschriebenen Komponenten (zum Beispiel Elementen und/oder Ressourcen) ausgeführt werden, sollen die zum Beschreiben solcher Komponenten verwendeten Begriffe jeder beliebigen Komponente entsprechen, welche die angegebene Funktion der beschriebenen Komponente ausführt (die zum Beispiel funktional gleichwertig ist), es sei denn, es ist etwas anderes angegeben, selbst wenn sie nicht strukturell gleichwertig mit der offenbarten Struktur ist, welche die Funktion der in den in diesem Dokument veranschaulichten, beispielhaften Implementierungen der Offenbarung ausführt. Außerdem kann, während ein bestimmtes Merkmal der Offenbarung im Hinblick auf lediglich eine von mehreren Implementierungen offenbart worden sein kann, ein solches Merkmal mit einem oder mehreren weiteren Merkmalen der anderen Implementierungen kombiniert werden, soweit dies für jede beliebige angegebene oder bestimmte Anwendung wünschenswert und vorteilhaft ist. Zusätzlich sollen die Artikel ”ein”, ”eine” und ”einer”, wie sie in dieser Anmeldung und den angehängten Ansprüchen verwendet werden, so ausgelegt werden, dass sie ”ein oder mehrere”, ”eine oder mehrere” bzw. ”einer oder mehrere” bedeuten.
  • Außerdem sollen, in dem Maße, in dem die Begriffe „umfasst”, „aufweisend”, „aufweist”, „mit” oder Varianten davon entweder in der ausführlichen Beschreibung oder in den Ansprüchen verwendet werden, solche Begriffe auf eine Weise einschließend sein, dass sie gleichbedeutend mit dem Begriff „umfassend” sind.

Claims (10)

  1. Mehrkanal-Impulsgenerator, um eine Vielzahl von Wellenformen auf einer Vielzahl von Kanälen auszugeben, der Folgendes umfasst: ein Referenz-Taktgebermodul, das so konfiguriert ist, dass es eine feste Referenzfrequenz bereitstellt; wenigstens einen Vorteiler, der so konfiguriert ist, dass er auf der Grundlage der festen Referenzfrequenz eine Vielzahl von verschiedenen Frequenzen generiert; und eine Vielzahl von Impulsgeneratoreinheiten, welche die Ausgabe der Vielzahl von Wellenformen jeweils an die Vielzahl von jeweiligen Kanälen ermöglichen, wobei eine Impulsgeneratoreinheit einen Gleitkommazeitgeber umfasst und ihre entsprechende Wellenform auf der Grundlage der Anzahl verschiedener Frequenzen generiert.
  2. Mehrkanal-Impulsgenerator gemäß Anspruch 1, wobei die Impulsgeneratoreinheit so konfiguriert ist, dass sie zunächst den Gleitkommazeitgeber entsprechend einer ersten der Anzahl von verschiedenen Frequenzen inkrementiert und anschließend den Gleitkommazeitgeber entsprechend einer zweiten der Anzahl von verschiedenen Frequenzen inkrementiert, wobei die zweite Frequenz niedriger ist als die erste Frequenz.
  3. Mehrkanal-Impulsgenerator nach Anspruch 1, wobei wenigstens zwei der Impulsgeneratoreinheiten mit einem einzelnen Vorteiler verbunden sind.
  4. Mehrkanal-Impulsgenerator nach Anspruch 1, wobei wenigstens zwei der Impulsgeneratoreinheiten mit verschiedenen Vorteilern verbunden sind.
  5. Impulsgenerator, der Folgendes umfasst: einen Gleitkommazeitgeber, der einen Mantissenzählwert und einen Exponentenzählwert ausgibt; eine erste Vergleichseinheit, die so konfiguriert ist, dass sie ein erstes Vergleichsergebnis ausgibt, welches angibt, ob der Mantissenzählwert und der Exponentenzählwert vorbestimmte Beziehungen zu einem ersten Mantissenwert von Interesse bzw. zu einem ersten Exponentenwert von Interesse aufweisen; eine zweite Vergleichseinheit, die so konfiguriert ist, dass sie ein zweites Vergleichsergebnis ausgibt, welches angibt, ob der Mantissenzählwert und der Exponentenzählwert vorbestimmte Beziehungen zu einem zweiten Mantissenwert von Interesse bzw. zu einem zweiten Exponentenwert von Interesse aufweisen; und einen Ausgang, der so konfiguriert ist, dass er einen Impuls auf der Grundlage des ersten und des zweiten Vergleichsergebnisses bereitstellt.
  6. System, das Folgendes aufweist: eine Vielzahl von Impulsgeneratoren, die jeweils mit einer Vielzahl von Eingangskanälen gekoppelt sind; einen Mehrkanal-Impulsanalysator, der geeignet ist, Impulse zu analysieren, die auf der Vielzahl von Eingangskanälen empfangen wurden, wobei der Mehrkanal-Impulsanalysator eine erste Vielzahl von Gleitkommazeitgebern umfasst, die jeweils mit der Vielzahl von Eingangskanälen gekoppelt sind, wobei ein Gleitkommazeitgeber so konfiguriert ist, dass er die Bereitstellung eines Ergebnisses auf der Grundlage eines Impulses auf seinem Eingangskanal ermöglicht, wobei das Ergebnis von den übrigen Impulsen unabhängig ist, die ggf. auf den übrigen jeweiligen Eingangskanälen vorliegen.
  7. Verfahren, das Folgendes umfasst: Empfangen einer Vielzahl von Wellenformen jeweils auf einer Vielzahl von Kanälen; Inkrementieren eines Gleitkommazeitgeberwertes, solange die Wellenform auf einem entsprechenden Kanal sich in einem ersten Zustand befindet; und Bestimmen eines Kanalergebnisses auf der Grundlage des Gleitkommazeitgeberwertes.
  8. Verfahren, das Folgendes umfasst: selektives Inkrementieren eines Mantissenzählwertes und eines Exponentenzählwertes eines Gleitkommazeitgebers auf der Grundlage eines Referenztaktsignals; Generieren eines ersten Vergleichsergebnisses, welches angibt, ob der Mantissenzählwert und der Exponentenzählwert vorbestimmte Beziehungen zu einem ersten Mantissenwert von Interesse bzw. zu einem ersten Exponentenwert von Interesse aufweisen; Generieren eines zweiten Vergleichsergebnisses, welches angibt, ob der Mantissenzählwert und der Exponentenzählwert vorbestimmte Beziehungen zu einem zweiten Mantissenwert von Interesse bzw. zu einem zweiten Exponentenwert von Interesse aufweisen; und Bereitstellen einer Wellenform auf der Grundlage des ersten und des zweiten Vergleichsergebnisses.
  9. Gleitkommazeitgebermodul, das Folgendes umfasst: ein Taktgebermodul, um einen Moduleingangstakt bereitzustellen; einen Vorteiler, um eine Vielzahl von Taktgeber-Aktivierungssignalen mit jeweils verschiedenen Frequenzen auf der Grundlage des Moduleingangstakts bereitzustellen; ein Frequenzauswahlelement, um auf der Grundlage eines von einem Exponentenzähler bereitgestellten Steuersignals ein Taktgeber-Aktivierungssignal von Interesse aus der Vielzahl von Taktsignalen auszuwählen; ein Clock-Gating-Modul, um einem Mantissenzähler auf der Grundlage des Moduleingangstakts und des Taktgeber-Aktivierungssignals von Interesse einen über ein Gatter gesteuerten Takt bereitzustellen.
  10. Gleitkommazeitgeber, der Folgendes umfasst: ein Referenz-Taktgebermodul, das so konfiguriert ist, dass es eine feste Referenzfrequenz bereitstellt; einen Vorteiler, der so konfiguriert ist, dass er auf der Grundlage der festen Referenzfrequenz eine Anzahl von verschiedenen Frequenzen generiert, wobei ein Paar von benachbarten Frequenzen innerhalb der Anzahl von verschiedenen Frequenzen mit einem anderen Faktor als dem Zweifachen zueinander beabstandet sind; einen Mantissenzähler, der so konfiguriert ist, dass er anfänglich gemäß einer ersten aus dem Paar von benachbarten Frequenzen inkrementiert wird und anschließend gemäß einer zweiten aus dem Paar von benachbarten Frequenzen inkrementiert wird, bevor in dem Mantissenzähler ein Überlaufsignal aktiviert wird; und einen Exponentenzähler, der so konfiguriert ist, dass er bei Aktivierung des Überlaufsignals inkrementiert wird.
DE201110108563 2010-06-14 2011-05-16 Techniken für Gleitzeitkommageber Pending DE102011108563A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/814,759 2010-06-14
US12/814,759 US8212704B2 (en) 2010-06-14 2010-06-14 Floating point timer techniques

Publications (1)

Publication Number Publication Date
DE102011108563A1 true DE102011108563A1 (de) 2011-12-15

Family

ID=45020271

Family Applications (1)

Application Number Title Priority Date Filing Date
DE201110108563 Pending DE102011108563A1 (de) 2010-06-14 2011-05-16 Techniken für Gleitzeitkommageber

Country Status (2)

Country Link
US (2) US8212704B2 (de)
DE (1) DE102011108563A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9787191B2 (en) 2015-07-08 2017-10-10 Infineon Technologies Austria Ag Converter with quasi-resonant mode of operation for supplying power to a load

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8212704B2 (en) * 2010-06-14 2012-07-03 Infineon Technologies Ag Floating point timer techniques
TWI446141B (zh) * 2010-11-09 2014-07-21 Nuvoton Technology Corp 時脈校正方法與裝置以及電子裝置
US8514999B2 (en) * 2011-12-06 2013-08-20 International Business Machines Corporation Floating-point event counters with automatic prescaling
FR3067614B1 (fr) 2017-06-20 2020-11-20 Sportbak Systeme et procede de collecte et de traitement de donnees associees aux joueurs d'un jeu de ballon

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07120929B2 (ja) * 1990-10-29 1995-12-20 三菱電機株式会社 パルス発生回路
US5621431A (en) * 1994-04-29 1997-04-15 Atari Games Corporation Animation system having variable video display rate
JPH1023226A (ja) * 1996-07-04 1998-01-23 Matsushita Electric Ind Co Ltd 画像読み取り装置
US5903521A (en) * 1997-07-11 1999-05-11 Advanced Micro Devices, Inc. Floating point timer
US7881413B2 (en) * 2001-03-02 2011-02-01 Adc Telecommunications, Inc. Digital PLL with conditional holdover
US7859343B2 (en) * 2006-11-13 2010-12-28 Industrial Technology Research Institute High-resolution varactors, single-edge triggered digitally controlled oscillators, and all-digital phase-locked loops using the same
US8212704B2 (en) * 2010-06-14 2012-07-03 Infineon Technologies Ag Floating point timer techniques

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9787191B2 (en) 2015-07-08 2017-10-10 Infineon Technologies Austria Ag Converter with quasi-resonant mode of operation for supplying power to a load

Also Published As

Publication number Publication date
US20120242381A1 (en) 2012-09-27
US20110304487A1 (en) 2011-12-15
US8212704B2 (en) 2012-07-03
US8976051B2 (en) 2015-03-10

Similar Documents

Publication Publication Date Title
DE69934401T2 (de) Datenerfassungssystem mit mitteln zur analyse und zum abspeichern in echtzeit
DE3818546C2 (de)
DE102008046831B4 (de) Ereignisgesteuerte Zeitintervallmessung
DE10321200B3 (de) Einrichtung und Verfahren zur Kalibrierung von R/C-Filterschaltungen
DE102011108563A1 (de) Techniken für Gleitzeitkommageber
DE2838549A1 (de) Impulsbreitenmesschaltung
DE102006048319A1 (de) Multichip-Halbleiterspeicherelement
DE10109796A1 (de) Schaltung und Verfahren zur Vorgabe eines Startsignals für einen Controller
EP0107026A1 (de) Speicherprogrammierbare Steuerung
DE2750344C2 (de) Logikschaltung zum Betätigen irgendeiner Teilmenge einer Mehrzahl von Vorrichtungen
DE69821461T2 (de) Logische Schaltung mit eigener Takterzeugung und zugehöriges Verfahren
DE69628604T2 (de) Ein-Chip-Mikrorechner mit vielen Zeitgeberzählern
DE3247256A1 (de) Kombinationswiegemaschine
DE4329823C2 (de) Vorrichtung für die Pulsbreitenmodulation
DE10354215B4 (de) Taktregulierungsvorrichtung sowie Schaltungsanordnung
DE3743434C2 (de)
DE602004010136T2 (de) Testvorrichtung mit einer einrichtung zur wellenform-formatierung
DE2633155A1 (de) Einrichtung zur erzeugung zeitdefinierter steuersignale
DE102005053486B4 (de) Schaltungsanordnung zur Erzeugung eines n-Bit Ausgangszeigers, Halbleiterspeicher und Verfahren
DE2316892C3 (de) Schaltungsanordnung zur einstellbaren mengenmäßigen Untersetzung von Impulsen
EP1361660A2 (de) Elektronische Schaltung mit mindestens einem Eingang zum Wählen eines Zustands der elektonischen Schaltung
DE3726295A1 (de) Verfahren zur drehzahlregelung und schaltungsanordnung zur durchfuehrung des verfahrens
DE4011491A1 (de) Steuereinrichtung fuer werkzeugspindeln
DE4445310C2 (de) Ausgangssteuerschaltung
EP0392636B1 (de) Integrierte Schaltungsanordnung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: WESTPHAL, MUSSGNUG & PARTNER PATENTANWAELTE MI, DE

R082 Change of representative

Representative=s name: WESTPHAL, MUSSGNUG & PARTNER PATENTANWAELTE MI, DE

R016 Response to examination communication