[go: up one dir, main page]

DE102006027835A1 - Ein Verfahren und eine Vorrichtung zum Extrahieren einzelner Pulse aus einem Eingangssignal - Google Patents

Ein Verfahren und eine Vorrichtung zum Extrahieren einzelner Pulse aus einem Eingangssignal Download PDF

Info

Publication number
DE102006027835A1
DE102006027835A1 DE102006027835A DE102006027835A DE102006027835A1 DE 102006027835 A1 DE102006027835 A1 DE 102006027835A1 DE 102006027835 A DE102006027835 A DE 102006027835A DE 102006027835 A DE102006027835 A DE 102006027835A DE 102006027835 A1 DE102006027835 A1 DE 102006027835A1
Authority
DE
Germany
Prior art keywords
pulse
buffer
data samples
digital data
memory
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
DE102006027835A
Other languages
English (en)
Inventor
Colin Johnstone
Eric Breakenridge
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.)
Agilent Technologies Inc
Original Assignee
Agilent Technologies Inc
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 Agilent Technologies Inc filed Critical Agilent Technologies Inc
Publication of DE102006027835A1 publication Critical patent/DE102006027835A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R29/00Arrangements for measuring or indicating electric quantities not covered by groups G01R19/00 - G01R27/00
    • G01R29/02Measuring characteristics of individual pulses, e.g. deviation from pulse flatness, rise time or duration
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/01Shaping pulses
    • H03K5/08Shaping pulses by limiting; by thresholding; by slicing, i.e. combined limiting and thresholding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/125Discriminating pulses
    • H03K5/1252Suppression or limitation of noise or interference
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/153Arrangements in which a pulse is delivered at the instant when a predetermined characteristic of an input signal is present or at a fixed time interval after this instant
    • H03K5/1534Transition or edge detectors

Landscapes

  • Physics & Mathematics (AREA)
  • Nonlinear Science (AREA)
  • General Physics & Mathematics (AREA)
  • Analogue/Digital Conversion (AREA)

Abstract

Digitale Abtastwerte, die einem gepulsten Eingangssignal entsprechen, werden zu einem Ausgang eines ADC, von wo aus dieselben einem externen Speicher für eine Speicherung präsentiert werden, und einem zweiten Ausgang des ADC geliefert, von wo aus dieselben einer Pulsextraktionsschaltung zugeführt werden. Die Pulsextraktionsschaltung umfasst eine Auslöseschaltung, die Auslöser liefert, wann immer das (digitalisierte) Eingangssignal einen oder mehrere Auslöseschwellen übertritt, um die vorauseilenden und nacheilenden Flanken von Pulsen in dem Eingangssignal zu erfassen. Die positiven und negativen Auslösesignale werden zu einer Pulsaufnahmeschaltung geleitet, die ein RAM-Schreibfreigabesignal zu dem externen Speicher liefert, um zu ermöglichen, dass die digitalen Abtastwerte von dem ADC bei gegebenen Adressen in einem gegebenen Speicherpuffer des externen Speichers gespeichert werden. Die digitalen Abtastwerte werden sowohl in einem aktuellen Speicherpuffer als auch in einem nächsten Speicherpuffer gespeichert. Wenn ein negatives Auslösesignal geliefert wird, beendet der aktuelle Puffer ein Speichern weiterer Abtastwerte, wird der nächste Puffer zu dem aktuellen Puffer und wird ein neuer Puffer zu dem nächsten Puffer. Jeder Puffer speichert dadurch einen extrahierten Puls und durch ein Speichern der digitalen Abtastwerte in zwei Puffern, dem aktuellen Puffer und dem nächsten Puffer, werden während des Übergangs zwischen einem Puls und dem nächsten keine Daten verloren.

Description

  • Die vorliegende Erfindung bezieht sich auf ein Verfahren und eine Vorrichtung zum Extrahieren einzelner Pulse aus einem Eingangssignal, insbesondere, doch nicht ausschließlich zum Extrahieren einzelner Pulse, die eventuell stark moduliert sind, und/oder Pulse in einem verrauschten Signal.
  • Bei dem schnellen Wachstum von drahtlosen Telekommunikationssystemen sind Systemanbieter gefordert, Qualitätshochfrequenzsignale (Qualitäts-HF-Signale) mit einer maximalen Abdeckung zu liefern. Bei einem drahtlosen Kommunikationssystem muss ein Mobiltelefon kalibriert sein, um die Leistung zu liefern, die notwendig ist, um die Basisstation zu erreichen. Um jedoch eine Batterielebensdauer zu bewahren, sollte die gesendete Leistung nicht mehr betragen, als was benötigt wird. Das Mobiltelefon muss in der Lage sein, die Ausgangsleistung für eine optimale Verbindung abzustimmen. Ferner dürfen die Basisstation und das Mobiltelefon die maximale zulässige gesendete Leistung gemäß Regierungsstandards und Regelungen nicht überschreiten. Deshalb ist ein Sicherstellen, dass die gesendete Leistung die zulässige Grenze nicht überschreitet, die sich auf einen bekannten Standard verfolgen lässt, ein primärer Belang. Somit sind genaue Leistungsmessungen wichtig zum Beibehalten einer Verbindung mit hoher Qualität bei modernen Telekommunikationssystemen.
  • Wie bei vielen anderen Typen von Signalen kann ein HF-Signal aus einer Sequenz von Pulsen gebildet sein. In dem Fall eines gepulsten HF-Leistungssignals weisen die Pulse eine vorauseilende ansteigende Flanke und eine nachlaufende abfallende Flanke auf. Die Leistungshüllkurve des HF- Signals ist in manchen Fällen durch den Modulationstyp des HF-Signals bestimmt. Um beispielsweise die durchschnittliche gesendete Leistung zu messen, ist es notwendig, jeden Puls zu identifizieren und spezielle Parameter jedes Pulses einzeln zu messen. Bei Drahtlos-LAN-Anwendungen jedoch weisen die Pulse eventuell nicht die gleiche Breite auf, was eine Identifikation und Messung derselben ziemlich schwierig macht. Falls ferner ein Puls sich nicht einen genau vorbestimmten festen Abstand von einem Auslösepunkt weg befindet, kann derselbe erneut schwierig zu lokalisieren sein, insbesondere über eine relativ lange Zeitskala ohne irgendwelche Pulse. Falls sich wiederholende Pulse gemessen werden sollen, dann ist es beinahe unmöglich, dies zu tun, falls dieselben positionsmäßig relativ zu dem Auslösepunkt variieren.
  • In anderen Fällen weisen die Pulse innerhalb einer Sequenz eventuell unterschiedliche Charakteristika zu anderen in der Sequenz auf, beispielsweise weil sich die Verstärker, die bei der Erzeugung der Pulse verwendet werden, erwärmen. Eine Messung der Differenzen ist dann notwendig, um sicherzustellen, dass alle Pulse innerhalb der erforderlichen Parameter bleiben.
  • Bei einer bekannten Schaltungsanordnung zum Extrahieren einzelner Pulse aus einer Sequenz von Pulsen, die unregelmäßig auftreten können, wurde zuerst die ganze Sequenz oder zumindest ein großer Teil derselben in einem Speicher aufgenommen bzw. erfasst und dann nachfolgend verarbeitet, um die Pulse zu suchen und Messungen an denselben durchzuführen. Es kann deshalb eine ziemliche Menge an Zeit auf ein Verarbeiten der nicht gepulsten Informationen verschwendet werden. Ferner kann ein Extrahieren und Entwerfen der Pulse bei dem Vorhandensein von seltsam geformten oder modulierten Pulsen algorithmisch komplex sein. Der Hauptnachteil dieser Technik besteht darin, dass der Speicher eine finite Größe aufweist. Falls die Pulse zu weit voneinander entfernt sind, dann werden dieselben entweder verpasst oder die Abtastrate des Analog-zu-Digital-Wandlers (ADC = Analog to Digital Converter), der zum Digitalisieren des analogen Eingangssignals verwendet wird, müsste reduziert werden, um über eine längere Zeitperiode hinweg abzutasten. Der Nachteil des Letzteren ist, dass die Messauflösung reduziert ist. Derselbe kann im schlimmsten Fall mit einer Rate abtasten, die geringer als die Pulsbreite ist, was in lediglich einem oder sogar keinen Abtastwerten des erwünschten Pulses resultiert.
  • Bei anderen bekannten Techniken werden, um Speicher zu sparen, die Räume zwischen Pulsen nicht gespeichert. Dies ermöglicht, dass die Pulse selbst mit maximalen Datenraten aufgenommen werden, aber dieselben müssen offensichtlich für eine Aufnahme nicht genau extrahiert werden. Um jedoch einen Puls zu verarbeiten, ist es notwendig, zu wissen, was das Signal vor dem Vorderflankenauslösepunkt machte und was dasselbe nach dem Hinterflankenauslösepunkt macht. Ein Beispiel dafür, wo dies notwendig ist, ist bei der Bestimmung einer Pulsflankenanstiegs- und -abfallzeitmessung. Bei zwei Pulsen, die sehr nahe beieinander sind, kann die nacheilende Flanke eines Pulses einen Teil der vorauseilenden Flanke des nächsten Pulses bilden. In derartigen Fällen kann die Bestimmung der nacheilenden Flanke des ersten Pulses auftreten, nachdem die vorauseilende Flanke des nächsten Pulses durchgelaufen ist. Falls dies geschieht, dann wird der zweite Puls eventuell nicht ordnungsgemäß oder gar nicht aufgenommen, weil die Existenz desselben nicht gesucht würde, bis die nachlaufende Flanke des vorhergehenden Pulses erfasst ist.
  • Die vorliegende Erfindung versucht deshalb, ein Verfahren und eine Vorrichtung zum Extrahieren einzelner Pulse in einem Signal insbesondere, doch nicht ausschließlich zum Erfassen vorauseilender Flanken von stark modulierten Pulsen und/oder Pulsen in einem verrauschten Signal zu schaffen, das bzw. die die oben erwähnten Probleme des Stands der Technik überwindet oder zumindest reduziert.
  • Es ist die Aufgabe der vorliegenden Erfindung, eine Vorrichtung zum Extrahieren einzelner Pulse aus einem Eingangssignal und ein Verfahren zum Extrahieren einzelner Pulse aus einem Eingangssignal mit verbesserten Charakteristika zu schaffen.
  • Diese Aufgabe wird durch eine Vorrichtung gemäß Anspruch 1 und ein Verfahren gemäß Anspruch 11 gelöst.
  • Die vorliegende Erfindung versucht deshalb, ein Verfahren und eine Vorrichtung zum Extrahieren einzelner Pulse aus einem Eingangssignal zu schaffen, das bzw. die die oben erwähnten Probleme des Stands der Technik überwindet oder zumindest mäßigt.
  • Folglich sieht in einem Aspekt die Erfindung eine Vorrichtung zum Extrahieren einzelner Pulse aus einem Eingangssignal vor, wobei die Vorrichtung einen Eingangsanschluss zum Empfangen eines Eingangssignals, das einen Strom von Pulsen aufweist, einen Analog-zu-Digital-Wandler (ADC), der einen Eingang, der mit dem Eingangsanschluss gekoppelt ist, zum Empfangen des Eingangssignals, wobei der ADC das empfangene Eingangssignal in digitale Datenabtastwerte umwandelt, und einen Ausgang zum Liefern der digitalen Abtastwerte aufweist, einen Speicher, der eine Mehrzahl von logisch getrennten Speicherpuffern aufweist, die mit dem Ausgang des ADC zum Speichern der digitalen Datenabtastwerte gekoppelt sind, eine Pulsextraktionsschaltung, die einen Eingang, der mit dem Ausgang des ADC zum Erfassen vorauseilender und nacheilender Pulsflanken bei den digitalen Datenabtastwerten gekoppelt ist, und einen Ausgang aufweist, eine Speicherpuffersteuerung, die mit dem Ausgang des ADC, dem Speicher und dem Ausgang der Pulsextraktionsschaltung zum Steuern einer Speicherung der digitalen Datenabtastwerte in dem Speicher gekoppelt ist, wobei die digitalen Datenabtastwerte in zumindest zwei Speicherpuffern gespeichert sind, derart, dass die digitalen Datenabtastwerte in zumindest einen aktuellen Puffer und einen nächsten Puffer gespeichert wer den, und wobei, wenn eine nacheilende Pulsflanke in dem aktuellen Puffer erfasst wird, dieser aktuelle Puffer an einem Speichern weiterer digitaler Datenabtastwerte gehindert wird und der nächste Puffer zu dem aktuellen Puffer wird, wobei ein neuer Puffer zu dem nächsten Puffer wird, und einen Ausgangsanschluss zum Liefern der digitalen Datenabtastwerte aus dem aktuellen Puffer aufweist, nachdem derselbe ein Speichern weiterer digitaler Abtastwerte beendet hat.
  • Die Vorrichtung kann ferner eine Signalverlaufsverarbeitungsschaltungsanordnung aufweisen, die mit dem Ausgangsanschluss zum Empfangen der digitalen Datenabtastwerte gekoppelt ist, die sich auf einen erfassten Puls aus einem Speicherpuffer beziehen, der an einem Speichern weiterer digitaler Datenabtastwerte gehindert wurde, wobei dieser Speicherpuffer dann verfügbar wird, um zu einem nächsten Puffer zu werden.
  • Die Pulsextraktionsschaltung kann eine Steuerung, einen ersten und einen zweiten Hystereseschwellenkomparator, die jeweils einen ersten Eingang zum Empfangen der digitalen Datenabtastwerte, einen zweiten Eingang zum Empfangen eines ersten und eines zweiten Hystereseschwellenwerts und einen Ausgang aufweisen, der mit der Steuerung gekoppelt ist, wobei der erste und der zweite Hystereseschwellenkomparator die digitalen Datenabtastwerte mit einem ersten bzw. einem zweiten Hystereseschwellenpegel vergleichen, einen ersten und einen zweiten Qualifikationszeitgeber, die jeweils durch die Steuerung gesteuert sind und einen Zeitablaufausgang aufweisen, der mit der Steuerung gekoppelt ist, wobei die Steuerung die Ausgaben der Komparatoren und der Zeitgeber empfängt und ein Starten der Zeitgeber steuert, um zu ermöglichen, dass die Steuerung bestimmen kann, ob ein Übergang der digitalen Datenabtastwerte über einen Hystereseschwellenpegel eine vorauseilende Pulsflanke bildet oder nicht, und ob ein Übergang des Eingangssignals über einen Hystereseschwellenpegel eine nacheilende Pulsflanke des Eingangssignals bildet oder nicht.
  • Der aktuelle Puffer kann an einem Speichern weiterer digitaler Datenabtastwerte nach einer Zeitverzögerung gehindert werden, nachdem die nacheilende Pulsflanke in dem aktuellen Puffer erfasst ist. Die Speicherpuffersteuerung kann eine Mehrzahl von Registern jeweils zum Speichern von Informationen bezüglich eines speziellen extrahierten Pulses aufweisen.
  • Bei einem Ausführungsbeispiel können die Daten in den zumindest zwei Speicherpuffern in einer zeitgemultiplexten Weise gespeichert sein.
  • Die in dem Register gespeicherten Informationen bezüglich eines speziellen Pulses können zumindest Zeitinformationen und Speicheradressinformationen und/oder eine Pulsnummer umfassen, wobei die Pulsnummern jedes Mal inkrementiert werden, wenn ein neuer Puls extrahiert wird.
  • Die Speicherpuffersteuerung kann einen Eingang zum Empfangen von Steuerinformationen zum Steuern der Speicherpuffer umfassen, um lediglich vorbestimmte Pulse gemäß der Pulsnummer derselben zu speichern.
  • Die Vorrichtung kann ferner eine Akquisitionsschaltung bzw. Gewinnungsschaltung aufweisen, die einen Eingang, der mit dem Ausgang der Pulsextraktionsschaltung gekoppelt ist, und einen Ausgang aufweist, der mit der Speicherpuffersteuerung gekoppelt ist, wobei die Akquisitionsschaltung einen Zeitgeber zum Freigeben bzw. Aktivieren der Speicherpuffersteuerung eine vorbestimmte Zeit nachdem eine Pulsflanke erfasst ist umfasst.
  • Gemäß einem zweiten Aspekt sieht die Erfindung ein Verfahren zum Extrahieren einzelner Pulse aus einem Eingangssignal vor, wobei das Verfahren die Schritte eines Empfangens eines Eingangssignals, das einen Strom von Pulsen aufweist, eines Umwandelns des empfangenen Eingangssignals in digitale Datenabtastwerte, eines Erfassens vorauseilender und nacheilender Pulsflanken in den digitalen Datenabtastwerten, eines Speicherns der digitalen Datenabtastwerte in zumindest zwei Speicherpuffer, derart, dass die digitalen Datenabtastwerte in zumindest einen aktuellen Puffer und einen nächsten Puffer gespeichert werden, und wobei, wenn eine nacheilende Pulsflanke in den Datenabtastwerten erfasst wird, die in dem aktuellen Puffer gespeichert sind, dieser Puffer an einem Speichern weiterer digitaler Datenabtastwerte gehindert wird und der nächste Puffer zu dem aktuellen Puffer wird, wobei ein neuer Puffer zu dem nächsten Puffer wird, und eines Ausgebens der digitalen Datenabtastwerte aus dem aktuellen Puffer aufweist, nachdem derselbe ein Speichern weiterer digitaler Abtastwerte beendet hat.
  • Das Verfahren kann ferner den Schritt eines Verarbeitens der digitalen Datenabtastwerte, die aus einem Speicherpuffer ausgegeben werden, der an einem Speichern weiterer digitaler Datenabtastwerte gehindert wurde, aufweisen, wobei dieser Speicherpuffer dann verfügbar wird, um zu einem nächsten Puffer zu werden.
  • Der Schritt eines Erfassens vorauseilender und nacheilender Pulsflanken kann die Schritte eines Startens eines ersten Qualifikationszeitgebers, wenn ein erster Übergang der digitalen Datenabtastwerte über eine erste Hystereseschwelle erfasst wird, ein Starten eines zweiten Qualifikationszeitgebers, wenn ein Übergang der digitalen Datenabtastwerte über eine zweite Hystereseschwelle erfasst wird, während der erste Qualifikationszeitgeber eine Zeit nimmt, und eines Validierens des ersten Übergangs als eine vorauseilende Flanke eines Pulses des Eingangssignals, falls die digitalen Datenabtastwerte erneut über der ersten Hystereseschwelle waren, wenn der erste Qualifikationszeitgeber einen Zeitablauf feststellt, oder nachdem der erste Qualifikationszeitgeber einen Zeitablauf festgestellt hat, aber bevor der zweite Qualifikationszeitgeber einen Zeitablauf feststellt, und ein Starten des zweiten Qualifikationszeitgebers, wenn ein zweiter Übergang der digitalen Datenabtastwerte über die zweite Hystereseschwelle erfasst wird, und ein Validieren des zweiten Übergangs als eine nacheilende Flanke des Pulses der digitalen Datenabtastwerte aufweist, falls das Eingangssignal unter der zweiten Hystereseschwelle bleibt, bis der zweite Qualifikationszeitgeber einen Zeitablauf feststellt.
  • Der aktuelle Puffer kann an einem Speichern weiterer digitaler Datenabtastwerte nach einer Zeitverzögerung gehindert werden, nachdem die nacheilende Pulsflanke in den Datenabtastwerten erfasst wird, die in dem aktuellen Puffer gespeichert sind. Das Verfahren kann ferner den Schritt eines Speicherns von Informationen bezüglich eines speziellen extrahierten Pulses aufweisen.
  • Bei einem Ausführungsbeispiel können die Daten in den zumindest zwei Speicherpuffern in einer zeitgemultiplexten Weise gespeichert werden.
  • Die in dem Register gespeicherten Informationen bezüglich eines speziellen Pulses können zumindest Zeitinformationen und Speicheradressinformationen und/oder eine Pulsnummer umfassen, wobei die Pulsnummern jedes Mal inkrementiert werden, wenn ein neuer Puls extrahiert wird.
  • Das Verfahren kann ferner den Schritt eines Empfangens von Steuerinformationen zum Steuern der Speicherpuffer aufweisen, um lediglich vorbestimmte Pulse gemäß der Pulsnummer derselben zu speichern.
  • Ein Ausführungsbeispiel eines Verfahrens und einer Vorrichtung gemäß dieser Erfindung zum Extrahieren einzelner Pulse aus einem Eingangssignal wird nun durch ein Beispiel mit Bezug auf die zugehörigen Zeichnungen beschrieben.
  • Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf die beiliegenden Zeichnungen näher erläutert. Es zeigen:
  • 1 ein schematisches Blockdiagramm einer Vorrichtung gemäß einem Ausführungsbeispiel der vorliegenden Erfindung;
  • 2 ein schematisches Blockdiagramm einer Pulsextraktionsschaltung, die bei der Schaltung von 1 verwendet werden kann;
  • 3 ein Beispiel eines Signalverlaufs, der die Auslöseerfassungssignale angibt, die durch die Pulsextraktionsschaltung von 2 erzeugt werden;
  • 4 ein schematisches Diagramm, das Puffer aus der Schaltung von 1 zeigt;
  • 5 ein Zustandsdiagramm für eine Pulsaufnahmezustandsmaschine, die bei der Schaltung von 1 verwendet wird; und
  • 6 ein Zustandsdiagramm für eine Pulsakquisitionszustandsmaschine, die bei der Schaltung von 1 verwendet wird.
  • Somit zeigt 1 eine Vorrichtung 1 zum Extrahieren einzelner Pulse aus einem Eingangssignal, das eine Sequenz von Pulsen, jedoch nicht notwendiger Weise in regelmäßigen Intervallen, enthält, die an einem Eingang 3 geliefert werden. Das Eingangssignal wird zu einem Analog-zu-Digital-Wandler (ADC) 2 geliefert, bei dem dasselbe in digitale Abtastwerte umgewandelt wird. Die digitalen Abtastwerte werden an einem Ausgang des ADC 2, von dem aus dieselben einem externen Speicher 4 für eine Speicherung präsentiert werden, und einem zweiten Ausgang des ADC 2 geliefert, von dem aus dieselben einer Pulsextraktionsschaltung 5 zugeführt werden.
  • Die Pulsextraktionsschaltung 5 umfasst eine Auslöseschaltung 6, die immer Auslöser bzw. Trigger liefert, wenn das „digitalisierte" Eingangssignal einen oder mehrere Auslösepegel überschreitet, um die vorauseilenden und nacheilenden Flanken von Pulsen in dem Eingangssignal zu erfassen. Die Pulsextraktionsschaltung 5 liefert somit ein positives Auslösesignal und ein negatives Auslösesignal, die die vorauseilenden und nacheilenden Flanken eines extrahierten Pulses angeben. Die Pulsextraktionsschaltung 5 kann eine sein, wie es beispielsweise in der UK-Patentanmeldung Nr. GB0427344.7 beschrieben ist, die im Namen von Agilent Technologies, Inc. eingereicht ist. Die Schaltung, die in dieser Anmeldung beschrieben ist, weist eine Steuerung, einen ersten und einen zweiten Hystereseschwellenkomparator, die jeweils einen ersten Eingang zum Empfangen des (digitalisierten) Eingangssignals, einen zweiten Eingang zum Empfangen eines Hystereseschwellenwertes und einen Ausgang aufweisen, der mit der Steuerung gekoppelt ist, wobei der erste und der zweite Hystereseschwellenkomparator das Eingangssignal mit einem ersten bzw. einem zweiten Hystereseschwellenpegel vergleichen, einen ersten und einen zweiten Qualifikationszeitgeber auf, die jeweils durch die Steuerung gesteuert sind und einen Zeitablaufausgang aufweisen, der mit der Steuerung gekoppelt ist, wobei die Steuerung die Ausgaben der Komparatoren und der Zeitgeber empfängt und ein Starten der Zeitgeber steuert, um zu ermöglichen, dass die Steuerung bestimmt, ob ein Übergang des Eingangssignals über einen Hystereseschwellenpegel eine vorauseilende Pulsflanke des Eingangssignals bildet oder nicht.
  • Wie es in 2 gezeigt ist, umfasst folglich ein Ausführungsbeispiel der Pulsextraktionsschaltung 5 eine Auslöseschaltung 6, die eine Steuerung 38, einen oberen Hystereseschwellen- und einen unteren Hystereseschwellenkomparator 39 und 40, einen Positiv-Qualifikationszähler 41 und einen Negativ-Qualifikationszähler 42 aufweist.
  • Ein erster Eingang 43 zu der Auslöseschaltung 6 liefert ein Eingangssignal von einem ADC 2, in dem das Signal, dessen Pulse erfasst werden sollen, beispielsweise ein HF-Leistungssignal, digitalisiert wird. Dieser Eingang 43 ist zu ersten Eingängen des ersten und des zweiten Komparators 39 und 40 und zu einem direkten Ausgang 44 der Auslöseschaltung 6 zu dem Speicher 4 geführt. Die Auslöseschaltung 6 weist zwei weitere Eingänge 45 und 46 auf, die vorbestimmte obere und untere Hystereseschwellenpegel für die zwei Komparatoren 39 bzw. 40 liefern. Ein letzter Eingang 47 zu der Auslöseschaltung 6 liefert einen vorbestimmten Qualifikationszeitwert zu dem positiven und dem negativen Qualifikationszeitgeber 41 und 42. Ausgänge 48 und 49 der Komparatoren 39 und 40 sind mit der Steuerung 38 gekoppelt, die ferner über Verbindungen 75 und 76 mit den Qualifikationszeitgebern 41 und 42 gekoppelt ist, um die Ausgaben derselben zu empfangen sowie den Betrieb der Qualifikationszeitgeber zu steuern.
  • Die Steuerung 38 wird verwendet, um ansteigende und abfallende Flanken von Pulsen in dem digitalisierten Signal von dem Eingang 43 zu erfassen, wie es unten ausführlicher erläutert wird. Wenn die Steuerung 38 eine ansteigende oder abfallende Flanke erfasst, werden Ausgaben 77 und 78 zu der Pulsaufnahmeschaltung 7 geleitet. Die Pulsaufnahmeschaltung 7 steuert die Speicherung der digitalisierten Signalabtastwerte in dem Speicher 4 und leitet die Adresse in dem Speicher 4, wo die digitalisierten Daten gespeichert werden sollen, zu dem Speicher 4. Die Ausgaben 77 und 78 der Steuerung 38 liefern einen positiven bzw. einen negativen Validierungsauslöser zu der Pulsaufnahmeschaltung 7, wobei eine Angabe geliefert wird, dass spezielle Übergänge, die in dem Speicher 4 gespeichert wurden, als Flanken validiert wurden. Die Adressen derartiger Übergänge in dem Speicher 4, die als vorauseilende und nacheilende Flanken validiert wurden, werden an Ausgängen 79 bzw. 80 zu der Pulsaufnahmeschaltung 7 geleitet.
  • Ein Betrieb der Auslöseschaltung 6 wird nun mit Bezug auf 3, die einen relativ einfachen Signalverlauf zeigt, ausführlicher erläutert. Zuerst wird der Status des Signals 81 bestimmt. Dies ist innerhalb der Periode gezeigt, die durch einen Pfeil 82 angegeben ist, wobei der Signalpegel unter dem Pegel der oberen (und unteren) Hystereseschwellen, durch Linien 83 bzw. 84 angegeben, eine Periode lang bleibt, die größer als eine Qualifikationszeit ist, die durch einen der zwei Qualifikationszeitgeber geliefert werden kann. In jedem Fall wird der Signalzustand als „niedrig" bestimmt, wie es durch ein digitales Signal 85 angegeben ist, das sich in einem niedrigen Zustand befindet, was angibt, dass die nächste Flanke, die erfasst werden soll, eine ansteigende Flanke ist.
  • Somit tritt der erste ansteigende Übergang, der durch den Komparator 39 erfasst wird, bei einem Punkt 86 auf, wo das Signal 81 die obere Hystereseschwelle 83 übertritt. Dies bewirkt, dass der Positiv-Qualifikationszeitgeber 41 gestartet wird, der dann eine Positiv-Qualifikationsperiode 87 zeitlich bestimmt. Ferner bewirkt die Erfassung des ansteigenden Übergangs bei dem Punkt 86 ebenfalls, dass die Adresse in dem Speicher 4, wo dieser Teil des Signals gespeichert ist, durch die Steuerung 38 für den Fall zwischengespeichert bzw. gelatcht wird, dass dieser ansteigende Übergang später als eine ansteigende Flanke validiert werden sollte. Es wird eine Bestimmung vorgenommen, dass das Signal über der unteren Hystereseschwelle 34 bleibt, bis der Positiv-Qualifikationszeitgeber einen Zeitablauf feststellt, so dass ein Positiv-Validierungsauslöser 88 erzeugt wird, wie es bei einem digitalen Signal 89 gezeigt ist. Wenn dieser Positiv-Validierungsauslöser erzeugt ist, validiert die Steuerung 38 den ansteigenden Übergang bei dem Punkt 86 als eine ansteigende Flanke (bei A angegeben), und dies ist schematisch als ein digitales Signal 90 ge zeigt, das durch den Beginn des Pulses 91 angegeben ist. Es ist natürlich ersichtlich, dass das digitale Signal 90 nicht in Echtzeit parallel mit den digitalen Signalen 85, 89 und 92 erzeugt werden kann, da zu der Zeit, zu der der ansteigende Übergang zuerst erfasst wird, noch nicht bekannt ist, ob derselbe eine ansteigende Flanke bildet oder nicht.
  • Wenn der Positiv-Validierungsauslöser 88 erzeugt ist, bewirkt dies ferner, dass der Pegel des digitalen Signals 85 umschaltet (wie es bei einem Punkt 93 gezeigt ist), um anzugeben, dass das Eingangssignal sich in einem „hohen" Zustand befindet, so dass die nächste Flanke, die erfasst werden soll, eine abfallende Flanke ist. Zu dem nächsten abfallenden Übergang übergehend, bei einem Punkt 94 angegeben, bei dem das Signal 81 die untere Hystereseschwelle 84 übertritt, bewirkt dies, dass der Negativ-Qualifikationszeitgeber 42 gestartet wird, der dann eine Negativ-Qualifikationsperiode 95 zeitlich bestimmt. Ferner bewirkt die Erfassung des abfallenden Übergangs bei dem Punkt 94 ebenfalls, dass die Adresse in dem Speicher 4, wo die Datei des Signals gespeichert ist, durch die Steuerung 38 für den Fall zwischengespeichert wird, dass dieser abfallende Übergang später als eine abfallende Flanke validiert werden sollte. In diesem Fall ist zu sehen, dass das Signal unter der unteren Hystereseschwelle 84 bleibt, bis der Negativ-Qualifikationszeitgeber einen Zeitablauf feststellt, so dass ein Negativ-Validierungsauslöser 96 erzeugt wird, wie es bei dem digitalen Signal 92 gezeigt ist. Wenn dieser Negativ-Validierungsauslöser erzeugt ist, validiert die Steuerung 38 den abfallenden Übergang bei dem Punkt 94 als eine abfallende Flanke (bei B angegeben), und dies ist schematisch bei dem digitalen Signal 90 als das Ende des Pulses 91 gezeigt.
  • Wenn der Negativ-Validierungsauslöser 96 erzeugt ist, bewirkt dies ferner, dass der Pegel des digitalen Signals 85 umschaltet (wie es bei einem Punkt 97 gezeigt ist), um an zugeben, dass das Eingangssignal sich in einem „niedrigen" Zustand befindet, so dass die nächste Flanke, die erfasst werden soll, eine ansteigende Flanke sein wird. Der nächste ansteigende Übergang, bei einem Punkt 98 angegeben, tritt auf, wo das Signal 81 die obere Hystereseschwelle 83 übertritt. Dies bewirkt, dass der Positiv-Qualifikationszeitgeber 41 gestartet wird, der dann eine Positiv-Qualifikationsperiode 100 zeitlich bestimmt. Wiederum bewirkt die Erfassung des ansteigenden Übergangs bei dem Punkt 98 ferner, dass die Adresse in dem Speicher 4, wo dieser Teil des Signals gespeichert ist, durch die Steuerung 38 zwischengespeichert wird. In diesem Fall ist zu sehen, dass das Signal 81 unter die untere Hystereseschwelle 84 fällt (wie es bei einem Punkt 102 gezeigt ist), während die Positiv-Qualifikationsperiode 100 immer noch läuft, wobei bewirkt wird, dass der Negativ-Qualifikationszeitgeber 42 beginnt, eine Negativ-Qualifikationsperiode 104 zeitlich zu bestimmen. Nachdem jedoch die Positiv-Qualifikationsperiode 100 endet und die Negativ-Qualifikationsperiode 104 ebenfalls endet, ohne dass das Signal 81 die obere Hystereseschwelle 83 übertreten hat, wird der ansteigende Übergang bei dem Punkt 98 nicht als eine ansteigende Flanke betrachtet und wird deshalb der nächste ansteigende Übergang gesucht, der bei einem Punkt 106 gefunden wird, bei dem das Signal 81 die obere Hystereseschwelle 83 übertritt. Erneut wird der Positiv-Qualifikationszeitgeber 42 gestartet, der dann eine Positiv-Qualifikationsperiode 108 zeitlich bestimmt, und die Erfassung des ansteigenden Übergangs bei dem Punkt 106 bewirkt ferner, dass die Adresse in dem Speicher 4, bei der dieser Teil des Signals gespeichert ist, durch die Steuerung 38 zwischengespeichert wird. In diesem Fall ist zu sehen, dass das Signal 81 die Positiv-Qualifikationsperiode 108 lang über der unteren Hystereseschwelle 84 bleibt, so dass ein Positiv-Validierungsauslöser 110 erzeugt wird, wobei bewirkt wird, dass der ansteigende Übergang bei dem Punkt 106 als eine ansteigende Flanke (bei C angegeben) eines Pulses 112 validiert wird.
  • Deshalb ist zu sehen, dass die Steuerung den ersten Qualifikationszeitgeber startet, wenn ein erster Übergang des Eingangssignals über den ersten Hystereseschwellenpegel erfasst wird, den zweiten Qualifikationszeitgeber startet, wenn ein Übergang des Eingangssignals über den zweiten Hystereseschwellenpegel erfasst wird, während der erste Qualifikationszeitgeber eine Zeit nimmt, und wobei die Steuerung den ersten Übergang als eine vorauseilende Flanke eines Pulses des Eingangssignals validiert, falls das Eingangssignal erneut über dem ersten Hystereseschwellenpegel ist, wenn der erste Qualifikationszeitgeber einen Zeitablauf feststellt oder bevor der zweite Qualifikationszeitgeber einen Zeitablauf feststellt.
  • Der Übergang kann ein ansteigender Übergang sein und die Steuerung kann den ersten Qualifikationszeitgeber steuern, um ein Zeitnehmen zu starten, wenn ein ansteigender Übergang durch den ersten Hystereseschwellenkomparator erfasst wird, und wobei der ansteigende Übergang als eine vorauseilende, ansteigende Pulsflanke des Eingangssignals validiert wird, falls das Eingangssignal über einem unteren Hystereseschwellenpegel bleibt, bis der erste Qualifikationszeitgeber einen Zeitablauf feststellt.
  • Der Übergang kann ein ansteigender Übergang sein und die Steuerung kann den ersten Qualifikationszeitgeber steuern, um ein Zeitnehmen zu starten, wenn ein ansteigender Übergang durch den ersten Hystereseschwellenkomparator erfasst wird, und wobei der ansteigende Übergang als eine vorauseilende ansteigende Pulsflanke des Eingangssignals validiert wird, falls das Eingangssignal über einem unteren Hystereseschwellenpegel ist, wenn der erste Qualifikationszeitgeber einen Zeitablauf feststellt.
  • Der Übergang kann ein ansteigender Übergang sein und die Steuerung kann den ersten Qualifikationszeitgeber steuern, um ein Zeitnehmen zu starten, wenn ein ansteigender Übergang durch den ersten Hystereseschwellenkomparator erfasst wird, und kann den zweiten Qualifikationszeitgeber steuern, um ein Zeitnehmen zu starten, wenn ein abfallender Übergang durch den zweiten Hystereseschwellenkomparator erfasst wird, während der erste Qualifikationszeitgeber immer noch eine Zeit nimmt, und wobei der ansteigende Übergang als eine vorauseilende, ansteigende Pulsflanke des Eingangssignals validiert wird, falls das Eingangssignal wieder einen oberen Hystereseschwellenpegel übertritt, während der zweite Qualifikationszeitgeber immer noch eine Zeit nimmt, nachdem der erste Qualifikationszeitgeber einen Zeitablauf festgestellt hat.
  • Die Steuerung kann den zweiten Qualifikationszeitgeber steuern, um jedes Mal wieder ein Zeitnehmen zu starten, wenn ein abfallender Übergang durch den zweiten Hystereseschwellenkomparator erfasst, wird, während der erste Qualifikationszeitgeber immer noch eine Zeit nimmt. Die Periode, die durch den ersten Qualifikationszeitgeber zeitlich bestimmt wird, kann die gleiche sein wie die Periode, die durch den zweiten Qualifikationszeitgeber zeitlich bestimmt wird. Jeder Qualifikationszeitgeber kann eine Periode zeitlich bestimmen, die längenmäßig gleich einer minimalen Pulsbreite ist.
  • Somit kann die Pulsextraktionsschaltung 5 zwischen einem einzigen modulierten Puls, einem Paar von Rauschspitzen oder zwei getrennten Pulsen innerhalb des Eingangssignals unterscheiden, derart, dass die Erfassung einer Flanke eine finite Zeit nachdem die Flanke auftritt auftritt, und in dem Fall von stark modulierten Pulsen kann die Zeit zwischen der Flanke und dem Erfassungspunkt variabel sein.
  • Die positiven und negativen Auslösesignale von der Pulsextraktionsschaltung 5 werden zu einer Pulsaufnahmeschaltung 7 geleitet, die ein Auslöserauswahlgatter 8 umfasst, das eines der Signale zu einer Pulsaufnahmezustandsmaschine 10 leitet. Die Pulsaufnahmezustandsmaschine 10 liefert ein RAM-Schreibfreigabesignal zu dem externen Speicher 4, um zu ermöglichen, dass die digitalen Abtastwerte von dem ADC 2 bei gegebenen Adressen in einem gegebenen Speicherpuffer 14 des externen Speichers 4 gespeichert werden. Der gegebene Speicherpuffer 14 und die gegebenen Adressen sind durch die Pulsaufnahmezustandsmaschine 10 gesteuert, wobei die Auslösesignale von der Pulsextraktionsschaltung 5 durch die Pulsaufnahmezustandsmaschine 10 verwendet werden, um das RAM-Schreibfreigabesignal zu sperren bzw. zu deaktivieren und dadurch zu verhindern, dass die Daten überschrieben werden, wenn einmal ein Puls erfasst ist.
  • Wie es schematisch in 1 zu sehen ist, steuert die Pulsaufnahmezustandsmaschine 10 Pufferzeiger 11 in einer Mehrzahl von Sätzen 12 von Registern 13, die angeben, welche von einer Mehrzahl von Speicherpuffern 14 in dem externen Speicher 4 zu einer speziellen Zeit als aktuelle und nächste Speicherpuffer verwendet werden. Ein Direktzugriffsspeicher (RAM = Random Access Memory) in der Pulsaufnahmezustandsmaschine 10 liefert so viele Sätze 12 von Registern 13, wie es Speicherpuffer 14 in dem externen Speicher 4 gibt. Jeder Satz 12 ist aus einer Anzahl von Registern 13 gebildet, beispielsweise acht. Jeder Satz 12 von Registern 13 kann Informationen bezüglich eines speziellen Pulses speichern, der in einem Speziellen der Speicherpuffer 14 des externen Speichers 4 gespeichert sein kann. Wie es oben erwähnt ist, wird zu irgendeiner speziellen Zeit einer der Speicherpuffer 14 als ein aktueller Puffer verwendet und wird einer der Puffer 14 als ein nächster Puffer verwendet. Die Speicheradressen, die diesen Puffern 14 entsprechen, sind in dem entsprechenden Satz 12 von Registern gespeichert und werden zu dem externen Speicher 4 geliefert, um zu ermöglichen, dass die geeigneten digitalen Abtastwerte bei diesen Adressen im externen Speicher 4 gespeichert werden. Somit speichert jeder Registersatz 12 die Startadresse (Basisadresse) für die Daten, die in dem entsprechenden Speicherpuffer gespeichert sind, die Größe des Puffers, die Endadresse, die Adressen des positiven und des negativen Auslösers, sowie andere Informationen, wie bei spielsweise eine Nummer, die dem speziellen Puls gegeben ist.
  • Die Pulsaufnahmeschaltung 7 ist durch eine Akquisitionszustandsmaschine 9 gesteuert, um die Aufnahme eines Pulses zu starten, wenn erforderlich. Falls beispielsweise lediglich spezielle gewählte Pulse aufgenommen werden müssen, dann steuert die Akquisitionszustandsmaschine 9 die Aufnahmezustandsmaschine entsprechend. Ein Lesen der Speicherpuffer 14 und des entsprechenden Registersatzes 12 ist ebenfalls durch die Akquisitionszustandsmaschine 9 gesteuert. Eine Signalverlauf verarbeitende Digitalsignalverarbeitungsschaltungsanordnung (DSP-Schaltungsanordnung; DSP = Digital Signal Processing) 15 liest die Daten aus den Speicherpuffern 14 des externen Speichers 4 und den Registersätzen 12 und führt die erforderliche Pulsmessanalyse aus, deren Ergebnis dann an einem Ausgang geliefert wird.
  • Die Speicheradressen, die durch die Pufferzeiger 11 in Verbindung mit der Pulsaufnahmezustandsmaschine 10 zu den Registersätzen 12 geliefert werden, werden durch eine digitale Schaltungsanordnung in der Pulsaufnahmeschaltung 7 verwendet, um zeitgemultiplexte Adressen zu dem externen Speicher 4 zu liefern, so dass die digitalen Abtastwerte sowohl in dem aktuellen Speicherpuffer als auch in dem nächsten Speicherpuffer gespeichert sind.
  • Jeder Puffer innerhalb des externen Speichers 4 ist unter Verwendung eines der Registersätze 12 beschrieben. Die Basisadress- und Größenregister werden verwendet, um den speziellen Puffer 14 innerhalb des Speichers 4 zu lokalisieren. Daten werden konsekutiv zwischen Basisadresse und Basisadresse + Größe geschrieben, bevor in einer Schleife zu Basisadresse zurückgekehrt wird. Jeder Satz 12 sollte die Basisadresse und Größe desselben programmiert haben, um nichtüberlappende Puffer zu liefern. Wenn die Aufnahmezustandsmaschine 10 gestartet wird, werden die Basisadress- und Größenwerte für den aktuellen Puffer aus dem Register array 13 gelesen und über Multiplexer 18 & 19 in ein aktuelles Startadressregister 22 bzw. ein aktuelles Größenregister 21 geladen. Ein Versatz wird dann unter Verwendung eines Zählers erzeugt, der einen Multiplexer 23, einen Addierer 24 und ein Register 25 aufweist. Dieser Zähler beginnt mit einem Wert von Null. Wenn ADC-Abtastwerte ankommen, werden dieselben verdoppelt und jeder Satz von zwei Abtastwerten wird bei jedem zweiten Zyklus in den aktuellen Speicherpuffer 14 geschrieben. Die Adresse, in die die Daten geschrieben werden, ist durch ein Addieren der aktuellen Startadresse aus dem Register 22 zu dem aktuellen Versatz aus dem Register 25 unter Verwendung eines Addierers 26 und eines Registers 27 gebildet. Diese Adresse wird bei jedem zweiten Zyklus durch einen Phasenmultiplexer 28 geleitet. Der aktuelle Versatz inkrementiert weiter, bis derselbe den gleichen Wert wie die Größe des Puffers aufweist. An diesem Punkt wird derselbe rückgesetzt, derart, dass die nächsten ankommenden Datenpaare die vorhergehenden Daten überschreiben, die bei aktueller Startadresse + 0,1,2,3 und so weiter in den Puffer aufgenommen wurden. Der Aktuell-Versatz-Zähler (2325) wird rückgesetzt, wenn ein Komparator 29 erfasst, dass die aktuelle Größe und der aktuelle Versatz gleich sind.
  • Bei diesem Ausführungsbeispiel der Erfindung ist der nächste Puffer mit dem aktuellen Puffer zeitgemultiplext. Die oben beschriebene Aktuell-Pufferadresse-Erzeugungsschaltungsanordnung aktualisiert sich bei jedem zweiten Taktzyklus. Bei den abwechselnden Taktzyklen werden die nächsten Pufferadressen unter Verwendung einer ähnlichen Schaltung eines Registers 30, eines Addierers 32, eines Registers 33, eines Addierers 34, eines Registers 35 und eines Komparators 36 erzeugt. Bei den Zyklen, die diesen unmittelbar folgen, bei denen die aktuelle Basisadresse und Größe in die Register 21 und 22 gelesen werden, werden die nächste Basisadresse und die nächste Größe aus dem korrekten Registersatz 12 gelesen und in das nächste Startadressregister 30 und das nächste Größenadressregister 31 zwischengespei chert. Der nächste Versatz wird unter Verwendung des Zählers erzeugt, der aus dem Addierer 32 und dem Register 33 gebildet ist, der wiederum durch den Addierer 34 zu der nächsten Startadresse addiert wird, um die nächste Adresse 35 zu erzeugen. Diese Adresse wird über den Phasenmultiplexer 28, der bei jedem Taktzyklus zwischen der aktuellen und der nächsten Adresse auswählt, dem externen Speicher 4 zugeführt. Somit wird jedes ADC-Datenpaar in sowohl den aktuellen als auch den nächsten Puffer geschrieben.
  • Die Schaltung ist zum Aufnehmen einer Sequenz von Pulsen in der Lage. An dem Punkt, an dem ein Puls aufgenommen wurde, werden keine weiteren Daten zu dem aktuellen Puffer geschrieben. Der nächste Puffer wird zu dem aktuellen Puffer und auf den Registersatz 12 wird zugegriffen, um einen neuen Satz von Werten zu liefern, um zu einem neuen nächsten Puffer zu zeigen. Das Wichtigste ist, sicherzustellen, dass die Daten, die vor dem Wechsel in den nächsten Puffer geschrieben werden, über den Übergang hinweg kontinuierlich sind, bei dem der nächste Puffer zu dem aktuellen Puffer wird.
  • Wenn das letzte Datenpaar zu der letzten Position innerhalb des aktuellen Puffers geschrieben ist, wird der Versatz dieser Position zurück zu dem Registersatz 12 als die Endversatzadresse geschrieben, so dass die letzte und die erste Position innerhalb des Puffers gefunden werden können. Zu dem gleichen Zeitpunkt routen bzw. leiten die Multiplexer 18 und 19 die nächste Startadresse aus dem Register 30 und die Größe aus dem Register 31 in das aktuelle Startadressregister 22 und das aktuelle Größenregister 21. Der nächste Versatz wird durch den Multiplexer 23 in den Addierer 24 geführt, um einen aktuellen Versatz in dem Register 25 zu erzeugen, der um Eins größer als der letzte Wert in dem nächsten Versatzregister 33 ist. Dieser Prozess muss innerhalb eines einzigen Zyklus auftreten, da die nächste Adresse, die in der „nächsten" Phase ausgegeben wurde, nun in der „aktuellen" Phase einen einzigen Zyklus später aus gegeben werden muss. Die Struktur des Zählers 2325 ist es, die den ordentlichen Übergang von Adressen von dem nächsten zu dem aktuellen „Zeitschlitz" ermöglicht. Eine Warnung besteht darin, dass, sollte der nächste Versatz an dem Punkt eines Wechsels gleich der nächsten Größe sein, dann die Rücksetzung von dem Komparator 36 tatsächlich das aktuelle Versatzregister 25 rücksetzt, um zu ermöglichen, dass der nächste Puffer zu der nächsten Pufferadresse schreibt, die die erste Position innerhalb des Puffers (Versatz 0) wäre, aber dies ist nicht gezeigt.
  • Ein Speichern der digitalen Abtastwerte in zwei Puffern, dem aktuellen Puffer und dem nächsten Puffer, stellt sicher, dass keine Daten verloren werden. Wie es schematisch in 4 gezeigt ist, besteht der Eingangssignalverlauf 50 aus einem ersten Einzelpuls 52 nach einiger Zeit gefolgt durch ein Paar von Pulsen 54, 56 eng beieinander. Bei dem Start einer Aufnahme ist ein erster Puffer 62 der aktuelle Puffer 58 und wird ein zweiter Puffer 64 zu dem nächsten Puffer 60. Beide Puffer weisen die gleiche Größe auf und nehmen eine Menge an Daten auf, wie es durch die Kästen gezeigt ist, die durch lange gestrichelte Linien definiert sind. So lange keine Pulse vorhanden sind, füllen sich beide Puffer und Daten werden weiter in die Puffer durch ein Überschreiben der vorhergehend gespeicherten Daten geschrieben, bis ein Puls erfasst wird. Die Pulsextraktionsschaltung 5 erfasst die vorauseilende Flanke des Pulses bei einem Vorderflankenerfassungspunkt 66 und die nacheilende Flanke des Pulses bei einem Hinterflankenerfassungspunkt 68.
  • Zu der Zeit, zu der der erste Puls 52 durch die Pulsextraktionsschaltung 16 erfasst wird, enthält der erste Puffer den Abschnitt des Signalverlaufs, wie es in dem ersten Puffer 62 gezeigt ist. Der zweite Puffer 64 nimmt ebenfalls den gleichen Puls auf, aber dieser wird überschrieben, wenn eine Zeit fortschreitet. Wenn die nacheilende Flanke des ersten Pulses erfasst wird (bei dem Hinterflankenerfas sungspunkt 68), wird der zweite Puffer 64 zu dem aktuellen Puffer und wird ein dritter Puffer 70 zu dem nächsten Puffer. Wenn die nacheilende Flanke des nächsten Pulses bei dem Hinterflankenerfassungspunkt 72 erfasst wird, beendet der zweite Puffer 64 ein Aufnehmen und wird den gezeigten Signalverlauf enthaltend belassen. Dieser umfasst einen kleinen Abschnitt des folgenden Pulses, da die Zeit, die benötigt wird, um diesen Signalverlauf als einen einzigen Puls zu entwerfen, mit dem Anfang des nächsten Pulses überlappt. Der dritte Puffer 70 nimmt die Daten weiter auf. Nun wird die vorauseilende Flanke des Pulses 56 nicht verpasst, da dieselbe in dem nächsten Puffer (in diesem Fall dem dritten Puffer 70) aufgenommen wird, bis der Hinterflankenerfassungspunkt 74 des Pulses 56 erreicht ist. Zu dieser Zeit beendet der dritte Puffer 70, der zu dem aktuellen Puffer wurde, als der Hinterflankenerfassungspunkt 72 erreicht war, eine Aufnahme und umfasst beide Pulse 54 und 56, wie es zu sehen ist. Jedoch liefert das Register, das diesem dritten Puffer entspricht, die Adressinformationen, die die Speicheradressen angeben, bei denen der relevante Puls gespeichert ist. Somit ist zu sehen, dass jeder Puffer einen Puls enthält, sowie die Daten, die bis zu dem Puls führen, und, abhängig von der Zeitverzögerung zwischen dem Hinterflankenerfassungspunkt und dem Ende einer Aufnahme, Daten, die auf den Puls folgen, was ermöglicht, dass Anstiegs- und Abfallzeitmessungen an jedem Puffer unabhängig auftreten.
  • Da die Schaltung zum Aufnehmen einzelner Pulse in einzelne Speicherpuffer in der Lage ist, ist es nicht mehr notwendig, eine Zeit als die einzige Einrichtung zum Lokalisieren eines Pulses zu verwenden. Anstelle einer Zeit können Pulse durch eine Nummer entworfen sein. Somit ist beispielsweise der Puls, der in dem ersten Puffer gespeichert ist, Puls Nr. 1 genannt, dieser in dem zweiten Speicher ist Puls Nr. 2, usw. Dies bedeutet, dass spezielle Pulse nun ohne weiteres für eine Aufnahme und eine Verarbeitung gewählt werden können und diese Pulse, die nicht erforderlich sind, ausge sondert werden können. Herkömmlicherweise mussten Gatter relativ zu einem Auslösepunkt eingerichtet werden, um die Pulse zu filtern, die erforderlich waren. In den meisten Fällen mussten Gatter tatsächlich relativ zu der Flanke des Pulses platziert sein. Dies kann nun ohne weiteres erreicht werden und Gatter können nicht nur relativ zu dem vorderen Ende eines Pulses, sondern auch relativ zu dem hinteren Ende oder sogar der Mitte des Pulses platziert sein. In der Vergangenheit war das Gatter einen festen Abstand weg von einem Auslösepunkt vorgesehen und wies eine feste Breite auf. Es ist nun möglich, Gatter basierend auf der Breite eines Pulses zu platzieren, z. B. ein Gatter über den mittleren 60 % eines Pulses zu platzieren. Somit können bedeutsame Leistungsmessungen in einem einzigen Durchlauf an allen Pulsen variabler Breite vorgenommen werden.
  • Eine kleine Änderung an der Pulsaufnahmezustandsmaschine 10 ermöglicht, dass Pulse ausgelassen werden. Wenn jeder Puls erfasst ist, wird ein Zähler dekrementiert und lediglich der Puls, der mit einem Zählwert von Null zusammenfällt, wird aufgenommen. Somit könnte bei einer Sequenz von 600 Pulsen jeder zehnte Puls aufgenommen und immer noch innerhalb einer Grenze von 64 Pulsen gemessen werden. Die Eingliederung dieser Mehrpulsaufnahme- und Gattersteuerverbesserungen in ein Leistungsmessgerät würde ermöglichen, dass der Benutzer eine große Anzahl von nützlichen Messungen in höchstens wenigen Sekunden durchführen kann. Gegenwärtig könnte diese Aufgabe unter Verwendung einer existierenden Leistungsmessgerät-Messfähigkeit mehrere Stunden dauern.
  • Um in der Lage zu sein, Pulse lediglich durch eine Pulsnummer auszuwählen, ist es natürlich notwendig, zu bestimmen, welcher Puls in einem Strom von Pulsen der erste ist. Die Auslöseschaltung 6 sendet jedes Mal ein positives Auslösesignal aus, wenn ein positiver Puls erfasst wird und jedes Mal ein negatives Auslösesignal, wenn ein negativer Puls erfasst wird. Dem Puls ist ein Positionsindikator zugeordnet, der der Akquisitionszustandsmaschine 9 genau sagt, wo die Auslöser auftraten. Die getrennte Akquisitionszustandsmaschine 9 steuert die Aufnahme von Daten basierend auf den Angaben von der Auslöseschaltung 6 durch ein „Aufschieben" der Akquisition. Wenn ein positiver Auslösepuls zu der Akquisitionszustandsmaschine 9 geleitet wird, wird ein Aufschiebezeitgeber innerhalb der Akquisitionszustandsmaschine 9 gestartet. Die Auslöseschaltung 6 erzeugt weiter Auslöser ohne eine Kenntnis des Aufschiebezeitgebers. Jedes Mal, wenn die Auslöseschaltung 6 einen Puls erfasst, während der Aufschiebezeitgeber aus ist, wird eine neue Aufschiebeperiode gestartet. Offensichtlich weisen Auslöser, die während einer Aufschiebeperiode auftreten, keine Wirkung auf den Aufschiebezeitgeber auf.
  • Die Akquisitionszustandsmaschine 9 reagiert lediglich auf den Aufschiebezeitgeber, wenn eine Akquisition gestartet ist. Sollte eine Akquisition während der Aufschiebeperiode gestartet werden, dann ignoriert die Akquisitionszustandsmaschine 9 Auslöser, bis der Aufschiebezeitgeber fertig ist. Sobald die Akquisitionszustandsmaschine 9 die Aufnahme von Daten gestartet hat, werden Aufschiebeperioden, die durch nachfolgende positive Auslösepulse erzeugt werden, ignoriert.
  • Dies gestattet eine Verbesserung der Mehrpulsschaltung, um mehrere Bursts bzw. Stöße von Pulsen aufzunehmen. Falls beispielsweise ein Testsignal aus Bursts von zehn Pulsen innerhalb 1 ms besteht, ist jeder Burst um 10 ms beabstandet. Die Aufschiebeperiode ist auf 2 ms gesetzt. Sollte die Akquisitionszustandsmaschine 9 zwischen den Bursts gestartet werden, dann startet dieselbe wie normal bei dem ersten Puls des Bursts. Dieselbe nimmt die zehn Pulse in zehn Puffer auf, aber kann fortfahren, nachfolgende Pulse in nachfolgende Puffer aufzunehmen. Dies ist so, trotz der Tatsache, dass der 11., 21. etc. Puls neue Aufschiebeperioden starten. Der Benutzer kann dann mehrere Bursts auf einmal untersuchen und in einem einzigen Durchlauf genau den Abstand zwischen Bursts messen.
  • Sollte die Akquisitionszustandsmaschine 9 während eines Bursts gestartet werden, wird der Aufschiebezeitgeber betrachtet und eine Akquisition wird aufgeschoben, bis derselbe einen Zeitablauf feststellt. Der erste gewonnene Puls wird der erste des nächsten Bursts sein. Weil der Aufschiebezeitgeber kontinuierlich von den positiven Auslösepulsen aus läuft, ist das Problem vermieden, dass der allererste Auslöser irgendwo auftritt. Obwohl jede Akquisition gebeten werden könnte, um in der Mitte eines Bursts zu starten, hat sich der Aufschiebezeitgeber dank der Tatsache, dass derselbe lief seit die Auslöseschaltung 6 gestartet wurde, bereits mit den Bursts ausgerichtet.
  • Bei einem Ausführungsbeispiel der Erfindung ist die Schaltung in einem feldprogrammierbaren Gatterarray (FPGA = Field Programmable Gate Array) implementiert, der 512×36-Bit-Blöcke eines Dual-Port- bzw. Dual-Tor-Direktzugriffspeichers (Dual-Tor-RAM) liefert. Dieser Speicher wurde ausgenutzt, um 64 Sätze 12 mit jeweils acht Steuer-/Statusregistern 13 zu liefern, wie es oben erwähnt ist. Jeder Registersatz 12 steuert vollständig einen von 64 Speicherpuffern 14 in dem externen ZBT-Hauptspeicher 4 (ZBT = Zero Bus Turnaround = Null-Bus-Umkehrung). Eine einzige Schaltung kann implementiert sein, die alle notwendigen Operationen durchführt, um die Aufnahme eines Pulses (und die simultane Aufnahme des Signals, das bis zu dem nächsten Puls führt) zu liefern. Durch das einfache Mittel eines Bereitstellens eines Registers, das zu den oberen Adressbits des Dual-Tor-RAM zeigt, können alle Sätze von Steuerung/Status durch ein Ändern dieses Registers ausgewählt werden.
  • Wie es oben erwähnt ist, enthält jeder Registersatz 12 acht Steuer-/Statusregister 13. Zwei Register speichern Basisadress- bzw. Puffergrößeninformationen. Wenn eine Pulsakquisition stattfindet, werden andere Register aktualisiert. Die Speicheradressen der auslösenden positiven Flanke und/oder negativen Flanken werden in zweien der Register des Satzes gespeichert. Ferner ist ein 32-Bit-Zeitstempel gespeichert, der die hintere Flanke des Pulses lokalisiert. Wenn eine Pulsaufnahme fortschreitet, werden die Minimal- und Maximalwerte des eingehenden Signals herausgefunden und in ein Spitzenwerteregister gespeichert, wenn eine Aufnahme abgeschlossen ist. Am Ende einer Aufnahme wird ebenfalls der Endversatz des letzten gespeicherten Wortes gespeichert. Die Kombination der Anfangspuffer-, Puffergrößen- und Endversatzdatenregister wird verwendet, um den Start und das Ende der tatsächlichen Speicherung innerhalb eines Puffers zu finden. Die Start- und Größenregister werden vor einer Akquisition programmiert, um die Position und Größe jedes Puffers einzurichten.
  • Andere Steuerbits innerhalb der acht Register werden verwendet, um die Reihenfolge und Anzahl von verwendeten Puffern zu steuern. Ein Stoppbit in dem Register, das die Basisadresse speichert, kann beispielsweise verwendet werden, so dass, falls dasselbe nicht gesetzt ist, dann die Zustandsmaschine zu dem nächsten Puffer übergeht. Falls dasselbe gesetzt ist, dann hat die Akquisition den letzten Puls derselben aufgenommen und die Schaltung geht in die Phase eines Lesens der Ergebnisse aus dem ZBT-Speicher 4 in die Signalverlaufsverarbeitungsschaltungsanordnung 15 über. Die Signalverlaufsverarbeitungsschaltungsanordnung 15 kann eine Schaltungsanordnung sein, die innerhalb des gleichen Chips enthalten ist, oder kann in einem externen DSP-Chip vorgesehen sein.
  • Ein anderes Bit in dem Basisadressregister bewirkt, dass die Akquisition bei einem Abschluss der Aufnahme des aktuellen Pulses zurück zu dem Puffer Nr. 0 springt, anstatt sich zu dem Puffer mit der nächsten Nummer zu bewegen. Durch ein Programmieren einiger Bits in jedem Satz von Puffern können dieselben somit miteinander verkettet werden, um irgendeine Anzahl von Pulsen aufzunehmen. Diese weiche Steuerung ermöglicht, dass eine Aufnahme in einem Teilsatz von Puffern auftritt, während die Daten in anderen gehalten sind.
  • Die Registersätze 12, die den Betrieb jedes Speicherpuffers 14 einrichten und aufzeichnen, nehmen aufeinanderfolgende Bereiche des speicherbasierten Registerarrays ein. Um auf einen speziellen Satz zuzugreifen, werden die oberen Adressbits verändert. Der Satz „Nächster Puffer" ist normalerweise der Satz nach dem Satz „Aktueller Puffer". Um die Zähler und arbeitenden Register des aktuellen und des nächsten Puffers einzurichten, werden die oberen Adressbits zwischen dem aktuellen und dem nächsten Puffersatz abgewechselt, wobei zugehörige Daten bei abwechselnden Zyklen gelesen werden.
  • Die Adresse, in die Auslösedaten geschrieben werden, wird zwischengespeichert. Wenn sich der Auslöser bzw. Trigger qualifiziert (durch einen Puls an trig_pos oder trig_neg angegeben), wird die Auslöseadresse zu der korrekten Position innerhalb des 8-Register-Satzes geschrieben. Dies kann unmittelbar durch einen Schreibvorgang des Zeitstempels zu dem Zeitstempelregister gefolgt sein, falls dies als der letzte Auslöser eines Satzes erachtet wird. Ein trig_pos-Puls kann bei einer Phase der zweiphasigen Pipeline ankommen. Falls derselbe an der Frühen ankommt, wird derselbe um einen Zyklus gestreckt, so dass die Auslöseadresse immer bei der aktuellen Phase der Aktueller/Nächster-Abwechslung geschrieben wird.
  • Bei einer Inbetriebnahme werden Basisadresse und Größe jedes Puffers aus dem Registersatz desselben gelesen. Die tatsächlichen externen Speicheradressen werden durch ein Addieren eines Zeigerversatzes zu der Basisadresse herausgefunden. Dieser Zeiger wird nach jedem externen Schreibvorgang inkrementiert. Wenn der Zeiger gleich der Größe ist, wird derselbe auf null rückgesetzt. Somit adressiert der Zeiger umlaufend alle Positionen in dem vorprogrammierten Puffer. Die oberen Registersatzadressen werden abge wechselt, wenn erforderlich, und sobald die Basisadresse und Größen in arbeitende Register geladen sind, beginnt die Vorfüllung. Die tatsächliche ZBT-Adresse zeigt die Kombination der aktuellen und nächsten Adressen zu einem Speicher.
  • Der externe ZBT-Speicher 4 ist ein großer, zusammenhängender Speicherbereich. Derselbe kann in irgendeine Anzahl von Puffern irgendeiner Größe (abhängig von der Gesamtspeichergrößengrenze) geformt sein. Vor einem Starten einer Akquisition findet die Akquisitionszustandsmaschine 9 heraus, wie viele Puffer (von 1 bis 64) erforderlich sind und wie groß dieselben sein müssen. Dann programmiert dieselbe die Basisadress- und Puffergrößenregister innerhalb jedes 8-Register-Satzes 12, um den Speicher 4 in die Puffer 14 zu entwerfen. Sobald der Speicher 4 eingerichtet wurde, werden die Puffer 14 miteinander verkettet, wenn notwendig, unter Verwendung der oben erwähnten „Stopp"- und „zurück-zunull"-Bits. Die Auslöseschaltung 6 (die von der Akquisition getrennt ist) ist mit derartigen Dingen wie Auslösepegeln, Hysterese, maximale Pulsbreite etc. programmiert. Schließlich wird die Nummer des Puffers, der als erster verwendet werden soll, programmiert und die Akquisition kann beginnen.
  • Die Akquisitionszustandsmaschine 9 und die Pulsaufnahmezustandsmaschine 10 übernehmen dann und die Schaltung nimmt automatisch Pulse auf und führt dieselben zu der Signalverlaufsschaltungsanordnung 15. Beide Zustandsmaschinen sind in einer Weise implementiert, die Fachleuten auf dem Gebiet gut bekannt ist, und die Details der Implementierung werden hier nicht weiter beschrieben. Die Akquisitionszustandsmaschine 9 ermöglicht, dass der Prozess kontinuierlich laufen gelassen wird, d. h. wenn ein Aufnahmezyklus abgeschlossen ist, wird ein anderer automatisch gestartet, und dieser Prozess geht weiter, bis der Prozessor einschreitet, um eine Aufnahme zu stoppen.
  • Ein Betrieb der Pulsaufnahmezustandsmaschine 10 wird nun mit Bezug auf 5 ausführlicher beschrieben. In dieser Figur sind Zustände durch Kreise angegeben, Flüsse zwischen Zuständen durch Pfeile und der Grund einer Zustandsänderung ist in einem Rechteck zwischen Zuständen gezeigt. Die Gleichungen innerhalb der Rechtecke verwenden die Kurzschreibweise:
    ! = NICHT;
    . = UND;
    + = ODER.
  • (!aufschieben + (sel_trig.!zu_groß)) bedeutet somit beispielsweise „(NICHT aufschieben) ODER (ausgewählter Trigger UND nicht zu_groß)".
  • Unter jetziger Bezugnahme auf 5 wartet deshalb die Pulsaufnahmezustandsmaschine 10 in dem LEERLAUF-Zustand S1 (IDLE-Zustand), bis eine Akquisition gestartet ist. Wenn dieselbe gestartet ist, bewegt sich die Zustandsmaschine zu einem LESE_START_AD-Zustand S2 (READ_START_AD-Zustand), dann einem LESE_GRÖSSE-Zustand S3 (READ_SIZE-Zustand) und kopiert die speicherbasierte Startadresse und Größe in arbeitende Register. Bei dem nächsten Zustand S4 START_ADRESS-ZÄHLWERT (START_ADDRESS_COUNT) startet ein interner Adresszähler bei der START_ADRESSE.
  • Die Wahl ABLADEN/nicht ABLADEN (DUMP/not DUMP) bezieht sich auf ein ABLADEN von Daten aus dem Puffer (den Puffern). Die Schaltungsanordnung, die Aufnahmen durchführt, wird teilweise wieder verwendet, um die aufgenommenen Daten zu der Signalverlaufsverarbeitungsschaltungsanordnung 15 abzuladen. Um eine Treiberlogik zu minimieren (und die Schaltung zu beschleunigen), wurde die Abladesteuerung der Pulsaufnahmezustandsmaschine 10 „an die Seite genietet". Bei einem Ignorieren eines Abladens für jetzt entlang dem nicht/ABLADEN-Weg jedoch wird der VORFÜLLUNG_ERWARTEN_UND_AUFSCHIEBEN-Zustand S5 (AWAIT_PREFILL_AND_HOLDOFF-Zustand) erreicht. Bei diesem Zustand wird der Speicher 4 bei Adressen beschrieben, zu denen durch den internen Adresszähler gezeigt wird.
  • Die Pulsaufnahmezustandsmaschine 10 kann bei „normalen" Einzelflankenaufnahmen sowie Einzelpulsaufnahmen und Mehrpulsaufnahmen verwendet werden. In einem normalen Modus ist ein Puls oder eine Flanke an einer Anzeige gezeigt, so dass der Benutzer Messungen an dem angezeigten Signalverlauf vornehmen kann. Damit der Puls oder die Flanke an dem Schirm gut zentriert ist, ist es notwendig, den Speicher 4 vorzufüllen, bevor ermöglicht wird, dass ein Auslösepuls die Akquisition auslöst. Falls dies nicht vorgenommen würde, dann könnte der Auslösepuls (der, wie man sich ins Gedächtnis rufen sollte, eine ziemliche Zeit nach der Auslöseflanke auftreten kann) mit dem allerersten Abtastwert ausgerichtet auftreten. Eine ausgelöste Aufnahme würde dann vor einem Führen der Daten zu der Anzeige (über die Signalverlaufsverarbeitungsschaltungsanordnung) etwas mehr Signalverlauf aufnehmen. Leider wird in einigen Fällen die tatsächliche Auslöseflanke eventuell nicht aufgenommen, falls dieselbe einige Abtastwerte vor der ersten auftrat, die zu dem RAM geschrieben wird. Um dies zu überwinden, wird ein programmierter Vorfüllwert verwendet, der bewirkt, dass die Akquisitionsschaltung eingehende Auslöseangaben ignoriert, bis der Speicher 4 mit genügend Abtastwerten vorgefüllt wurde, derart, dass, wenn ein Auslöser das nächste Mal auftritt, derselbe garantiert innerhalb der Vorfüllspeicherpositionen aufgenommen wurde. Sollte ein gültiger Auslöser während einer Vorfüllung angegeben werden, wird derselbe ignoriert und der nächste Auslöser anstelle dessen verwendet.
  • Der Aufschiebemechanismus wurde bereits beschrieben. Irgendwelche Auslösepulse, die erfasst werden, wenn ein Aufschieben nicht gesetzt ist, bewirken, dass der Aufschiebezähler startet. Nachfolgende Auslösepulse während des Zählens dieses Aufschiebezählers werden ignoriert. Die Akqui sition geht nicht weiter als VORFÜLLUNG_ERWARTEN_UND_AUFSCHIEBEN, bis der Aufschiebezähler auszählt. Somit kann der erste Puls einer isolierten Pulsfolge entworfen werden, wie es früher beschrieben ist.
  • Der VORFÜLLUNG_ERWARTEN_UND_AUFSCHIEBEN-Zustand S5 wartet auf die Vorfüllung und darauf, dass die Aufschiebezähler auszählen, bevor sich derselbe zu einem Zustand bewegt, der auf einen Auslöser wartet. In einem Pulsauslösemodus wird auf zwei Flanken gewirkt, die hier die erste und die letzte genannt werden. In einem Flankenauslösemodus wird lediglich auf eine Flanke gewirkt, so dass die Zustandsmaschine ein Verarbeiten der ersten Flanke überspringt und sich direkt zu der letzten bewegt. Ein Pulsauslösen ist unter Verwendung eines „Burst"-Steuerbits programmiert. Falls dasselbe gesetzt ist, soll ein Puls gefunden werden, so dass sich die Zustandsmaschine zu einem ERSTEN_TRIG_ERWARTEN-Zustand S6 (AWAIT_FIRST_TRIG-Zustand) bewegt. Falls „Burst" nicht gesetzt ist, dann soll nach einem Einzelflankenauslöser gesucht werden und die Zustandsmaschine bewegt sich zu einem LETZTEN_TRIG_ERWARTEN-Zustand S7 (AWAIT_LAST_TRIG-Zustand).
  • Bei dem ERSTEN_TRIG_ERWARTEN-Zustand S6 füllt die Zustandsmaschine 10 den Speicher 4 weiter, während danach gesucht wird, dass der ausgewählte Auslöser (sel_trig) auftritt. Die Auslöseschaltung 6 gibt getrennte Pulse für positive und negative Auslöseereignisse aus. Sel_trig findet heraus, welche Polarität eines Auslösers den nächsten Auslöser bewirkt, basierend auf einer programmierten Auslöserpolarität und einem Auslösertyp, und leitet den korrekten Puls zu der Zustandsmaschine 10.
  • Wenn das ausgewählte Auslösesignal auftritt, bewegt sich die Zustandsmaschine 10 zu einem ERSTER_TRIG-Zustand S8. Dieser Zustand soll der Schaltungsanordnung genug Zeit geben, um die Auslöseadresse in eines des Satzes 12 von acht Registern zu schreiben und die gesamte Auslösesteuerschaltungsanordnung umzuschalten, um die andere Flanke zu be trachten. Die Zustandsmaschine bewegt sich dann zu dem LETZTEN_TRIG_ERWARTEN-Zustand S7.
  • Ungeachtet dessen, wie der LETZTEN_TRIG_ERWARTEN-Zustand S7 erreicht wurde, sucht die Schaltung nach dem ausgewählten Auslöser und bewegt denselben, wenn derselbe auftritt, in den Nach-Auslöser-Teil des Zustandsmaschinenbetriebs, wo eine ausreichende Menge an Aufnahmen stattfindet, um zu zeigen, was nach dem Auslöser geschieht, oder, falls erforderlich, einen Abschnitt des Signalverlaufs, der eine lange Zeit nach dem Auslösepunkt auftritt, aufzunehmen.
  • Die eine Warnung besteht darin, dass, sollte die Schaltung nach einem Puls suchen und die hintere Flanke des Pulses nicht innerhalb der Zeit zu sehen sein, die benötigt wird, um einmal in einer Schleife den Speicherpuffer zu durchlaufen, die Zustandsmaschine dann den Puls als zu breit aussondert und durch den PULS_ZU_GROSS-Zustand S9 (PULSE_TOO_BIG-Zustand) sich in einer Schleife zurückbewegt, den sel-trig zurückschaltet, um erneut nach der ersten Flanke zu suchen, und sich zu dem ERSTEN_TRIG_ERWARTEN-Zustand S6 bewegt, um zu versuchen, einen Puls aufzunehmen, der ausreichend schmal ist, um in den Puffer zu passen.
  • Falls die Schaltung einfach auf die letzte Flanke eines zu breiten Pulses warten gelassen würde, dann würde das Fehlen einer vorderen Flanke (aufgrund dessen, dass dieselbe überschrieben wurde, wenn der Speicherpuffer ein zweites Mal eine Schleife durchläuft) eine jegliche nachgeschaltete Schaltungsanordnung ernsthaft verwirren, die beispielsweise versucht, Pulsbreitenmessungen oder Messungen vorzunehmen, die auf einem Kennen der Position der Flanken basieren. Deshalb kann der Benutzer eine maximale Pulsbreite setzen und jegliche Pulse wegwerfen, die zu breit sind. Der Benutzer würde informiert, dass dies geschehen ist, und könnte die maximale Pulsbreite, falls erforderlich, für nachfolgende Aufnahmen einstellen.
  • Sobald der letzte Auslöser auftritt, bewegt sich die Zustandsmaschine von dem LETZTEN_TRIG_ERWARTEN-Zustand S7 zu einem ZWEITER_TRIG-Zustand S10 (SECOND_TRIG-Zustand). Bei dem ZWEITER_TRIG-Zustand S10 wird die Adressposition des Auslösers in dem relevanten Register des Registersatzes 12 gespeichert und wird ferner ein Zeitstempel geschrieben, so dass der Abstand zwischen Pulsen/Flanken genau herausgefunden werden kann.
  • Abhängig davon, ob zwei Flanken oder eine Flanke (unter Verwendung eines „Burst") aufgenommen wurden, bewegt sich die Zustandsmaschine dann zu einem Zustand, der auf eine programmierte „Nachfüll"- bzw. „Post-fill"-Anzahl von weiteren Abtastwerten wartet, die aufgenommen werden sollen, bevor die Aufnahme fertiggestellt ist. Wie es früher erwähnt ist, kann der Benutzer wünschen, den Auslöser zu verwenden, um ein Ereignis aufzunehmen, das lange danach auftritt. Aus diesem Grund wird die Adresse, bei der der Auslöseabtastwert aufgenommen wurde, mit dem Adress_Zähler (address_counter) verglichen, der die Pufferspeicherschreibadresse bildet. Falls ausreichende Abtastwerte nach einem Auslöser aufgenommen sind, so dass die Pufferadresse die Schleife wieder durchläuft und die Daten überschreibt, die zu dem tatsächlichen Auslösepunkt gehören, dann wird ein Einzelbitflag gesetzt, das die Nachverarbeitungsschaltungsanordnung informiert, dass der Auslösepunkt nicht mehr gespeichert ist, und die Anzeige/Messungen werden entsprechend eingestellt. Bei einem Mehrpulsmodus ist der Nachfüllwert programmiert, um klein (oder null) zu sein, so dass der Aktueller/Nächster-Wechsel nicht so spät auftritt, dass ein nachfolgender Puls nicht korrekt aufgenommen wird.
  • Die Zustandsmaschine macht, nachdem dieselbe in einen der drei NACHFÜLLUNG_ERWARTEN-Zustände S11, S12, S13 (AWAIT_POSTFILL-Zustände) eingetreten ist, Auslöseadressen ungültig, falls die Nachfüllung ausreichend groß ist, dass die Auslöseposition überschrieben ist. Dies wird durch ein Vergleichen der Auslöseadresse, die in dem Registersatz 12 ge speichert ist, mit dem aktuellen Versatz unter Verwendung des Komparators 29 und des Multiplexers 37 vorgenommen. Wenn der Nachfüllzähler auszählt, bewegt sich dieselbe dann zu dem FERTIG_ODER_SCHLEIFE-Zustand S14 (FINISH_OR_LOOP-Zustand).
  • Bei dem FERTIG_ODER_SCHLEIFE-Zustand S14 treten eine Anzahl von Dingen auf: die aktuelle Speicheradresse wird in das End_Adress-Register des Registersatzes 12 übertragen und der minimale und der maximale Signalwert seit der letzten Pufferumschaltung werden ebenfalls gespeichert. Somit kann die Signalverlaufsverarbeitungsschaltungsanordnung 15 die Signalgrößengrenzen schnell messen und ferner wissen, von welcher Position in einem Speicher der Puffer beginnt und endet (die Startadresse ist gewöhnlich diejenige nach dem End_Versatz (end_offset)).
  • Falls dies der letzte Puffer ist, der beschrieben werden soll (das STOPP-Bit ist gesetzt), dann bewegt sich die Zustandsmaschine zurück zu dem LEERLAUF-Zustand S1, bis derselben durch höhere Entitäten gesagt wird, den Prozess eines Zurücklesens der Daten zu beginnen.
  • Falls derselbe nicht der letzte Puffer ist, der gefüllt werden soll, dann bewegt sich die Zustandsmaschine zu einem NÄCHSTEN_ZU_AKTUELLEM_ÜBERTRAGEN-Zustand S15 (XFER_NEXT_TO_CURRENT-Zustand) der eine Steuerung des nächsten Puffers (der sich im Hintergrund still füllte) überträgt, um unter eine Steuerung der Zustandsmaschine als der aktuelle Puffer zu kommen. Der NÄCHSTEN_KICKEN-Zustand S16 (KICK_NEXT-Zustand) erlangt dann den neuen nächsten Puffer aus dem korrekten Satz von Pufferregistern und beginnt den Prozess eines Schreibens zu demselben (im Hintergrund). Die Schleife ist dann abgeschlossen, wenn sich der Zustand zu dem ERSTEN_TRIG_ERWARTEN-Zustand S6 oder dem LETZTEN_TRIG-ERWARTEN-Zustand S7 bewegt, abhängig davon, ob eine einzelne Flanke oder ein einzelner Puls gesucht wird. Der Prozess wiederholt sich, bis der letzte Puffer erreicht ist. Bei einem Abschluss der Datenaufnahme des letzten Puffers kehrt die Zustandsmaschine zu dem LEERLAUF-Zustand S1 zurück, und ist bereit zum Abladen von Daten zu der Nachverarbeitungsschaltungsanordnung.
  • Ein Abladen von Daten aus den RAM-basierten Puffern zu einer Nachverarbeitungsschaltungsanordnung verwendet die gleiche Adresserzeugungslogik, die verwendet wurde, um die Daten anfangs zu den Puffern zu schreiben. Wenn die Akquisitionszustandsmaschine Satz ABLADEN STARTEN (START DUMPING set) sendet, werden die Startadresse und die Größe in die gleichen aktuellen Register 21 und 22 gelesen, die für eine Akquisition verwendet werden. Falls die Gesamtaufnahmelänge geringer als eine Pufferlänge war, dann existieren die Daten von einem Versatz 0 bis zu dem Versatz, der in dem End_Versatz-Register gespeichert ist. Falls die Gesamtaufnahme länger als der Puffer war, dann wird die Aufnahme eine Schleife durchlaufen haben und wird von End_Versatz + 1 bis zu dem Ende des Puffers und dann von Versatz 0 bis End_Versatz gespeichert sein. Die Tatsache, dass ein Puffer „in einer Schleife durchlaufen wurde", wurde als ein Angabebit zusammen mit dem Endversatz in dem gleichen Register gespeichert. Der Abladeprozess wird deshalb von Versatz 0 oder einem Versatz End_Versatz + 1 starten müssen, abhängig von der Einstellung des „Schleifen"-Angabebits bzw. „Looped"-Angabebits. Bei dem Zustand S4 wird der Endversatz in den Zähler 2325 durch den Multiplexer 23 gelesen, der automatisch inkrementiert, während dies geschieht. Der Endversatz wird ferner unter Verwendung des Komparators 29 über den Multiplexer 37 mit dem aktuellen Größenregister 21 verglichen (wobei der Endversatz aus dem Registersatz 12 an diesem Punkt gelesen wird). Dies gestattet, dass die Schaltung den speziellen Fall erfasst, bei dem der Endversatz zu der letzten Position innerhalb des Puffers zeigt, was erfordert, dass dieselbe von einem Versatz 0 aus startet. Es ist deutlich zu erkennen, dass praktisch keine zusätzliche Schaltungsanordnung benötigt wurde, um diesen speziellen Fall einzufangen.
  • Falls deshalb der Puffer in einer Schleife durchlaufen wurde, bewegt sich die Zustandsmaschine von dem Zustand S4 zu einem Zustand S17, bei dem der Multiplexer 37 gesetzt ist, um die Größe mit dem aktuellen Versatz zu vergleichen. Wenn eine Übereinstimmung auftritt, wird das aktuelle Versatzregister 25 rückgesetzt und bewegt sich die Zustandsmaschine zu einem Zustand S18. Bei dem Zustand S18 wird der Endversatz (der kontinuierlich aus dem Registersatz 12 gelesen wird) mit dem aktuellen Versatz unter Verwendung des Multiplexers 37 und des Komparators 29 verglichen. Wenn eine Übereinstimmung auftritt, bewegt sich die Zustandsmaschine zu dem Zustand FERTIG_ODER_SCHLEIFE S14. Das Fazit von all diesem besteht darin, dass die Daten für ein Lesen aus dem Speicher 4 von der Adresse nach dem Endversatz bis zu dem Ende des Puffers und dann von dem Anfang des Puffers bis zu dem Endversatz adressiert werden, ohne auf eine zusätzliche Schaltungsanordnung zurückzugreifen. In dem Fall, in dem der Puffer nicht in einer Schleife durchlaufen wurde, bewegt sich die Zustandsmaschine von dem Zustand S4 direkt zu dem Zustand S18 und vergleicht einfach den Versatz mit dem Endversatz. Dies resultiert darin, dass Daten von dem Anfang des Puffers (Versatz 0) bis zu dem Endversatz gelesen werden.
  • Eine Anzahl von Puffern kann mit Daten bestückt sein. Wenn die Zustandsmaschine den Zustand S14 erreicht, wird das Stopp-Bit geprüft, und falls dasselbe nicht gesetzt ist, bewegt sich die Zustandsmaschine zu einem Zustand LOOPING_DUMP S19, bei dem der Pufferzeiger zu dem nächsten Puffer bewegt wird und der Prozess das Abladen des nächsten Puffers wiederholt usw., bis der letzte Puffer erreicht ist. Der letzte Puffer (dadurch angegeben, dass das STOPP-Bit desselben gesetzt ist) bewirkt, dass sich die Zustandsmaschine von dem Zustand S14 zu dem LEERLAUF-Zustand S1 bewegt. An diesem Punkt wurden alle Daten zu der nachgelagerten Signalverlaufsverarbeitungsschaltungsanordnung 15 weitergereicht und die Akquisitionsschaltungsanordnung könnte eine neue Aufnahme zu der gleichen Zeit starten, wenn die nachgelagerte Signalverlaufsverarbeitungsschaltungsanordnung 15 den aktuellen Satz von Signalverläufen verarbeitet.
  • Ein alternativer Ansatz zu dem Obigen, wodurch die die nächste und die aktuelle Adresse erzeugende Logik einfach zwischen der Nächste-Adresse-Schaltungsanordnung und der Aktuelle-Adresse-Schaltungsanordnung hin- und hergeschaltet wird, kann alternativ verwendet werden. Obwohl derselbe zuerst einfacher zu implementieren scheint, wurde dieser Ansatz untersucht und es wurde erkannt, dass die ganze Schaltungsanordnung, die durch die Aktuelle-Adresse-Logik für eine Endadressübereinstimmung, eine Auslöseadressübereinstimmung und eine enge Kopplung mit der Zustandsmaschine erforderlich ist, genau bei der Nächste-Adresse-Schaltungsanordnung repliziert sein müsste (als dieselbe die Aktuelle-Adresse-Schaltungsanordnung wurde). Durch ein Übernehmen der oben beschriebenen Implementierung wird die Nächste-Adresse-Schaltungsanordnung beträchtlich einfacher als die Aktuelle-Adresse-Schaltungsanordnung und weist eine viel geringere Verbindung mit „externen" Schaltungen auf. Diese Schaltungsvereinfachung und Verbindungsreduzierung ermöglicht, dass die Funktionalität schneller abläuft, da die entscheidenden Zeitwege zahlenmäßig reduziert und innerhalb des implementierenden Geräts geografisch kleiner sind.
  • An dem Fertigstellungspunkt, bei dem der nächste Puffer zu dem aktuellen Puffer wird, beträgt der aktuelle Zeigerversatz N und beträgt der nächste Versatz X. Die ZBT-RAM-ADRESSE schreibt die Alte Aktuelle Basis + N (OCBS + X) (OCBS = Old Current Base) gefolgt durch die Alte Nächste Basis + X (ONBS + X) ( Next Base). Bei einem Eintreten in den NÄCHSTEN_ZU_AKTUELLEM_ÜBERTRAGEN-Zustand S15 wird das aktuelle Versatzzeigerregister 25 mit dem nächsten Zeigerwert aus dem Register 33 (X) plus eins geladen. Gewöhnlich wird dasselbe mit dem eigenen Zeigerwert desselben plus eins geladen, so dass der gleiche „plus-eins"-Addierer 24 für beide verwendet werden kann.
  • Somit weist der aktuelle Versatz nun den nächsten Versatzwert auf. Die Basisadresse ist ebenfalls übertragen. Bei dem Zyklus, der dem ONBS+X-Schreibvorgang unmittelbar folgt, wird die Schreibleitung zu dem externen RAM für einen Zyklus aufgehoben, wobei ein Schreibvorgang zu der OCBS+N+1-Adressposition verhindert wird. Die gespeicherte Endadresse des aktuellen Puffers beträgt N, nicht N + 1. Es wäre deshalb keine gute Idee, einen zusätzlichen Datenwert an diesem Punkt zu schreiben.
  • Der ÜBERTRAGEN-Zustand (XFER-Zustand) bewirkt ferner, dass die nächste Basisadresse mit der „neuen" nächsten Basisadresse (NNBS = "New" Next Base Address), zu der ordnungsgemäß geschrieben wird, in dem externen Speicher überschrieben wird. Der folgende Zyklus schreibt ONBS + X + 1, was die Adresse ist, die der letzten unmittelbar folgt, zu der geschrieben wurde, während der alte „nächste Puffer" noch der „nächste Puffer" und nicht der „aktuelle" war. Die inkrementierenden Zeiger liefern weiter externe Adressen für die zwei Puffer und die eingehenden Daten werden weiter bei abwechselnden Zyklen in die zwei Puffer geschrieben.
  • Es ist ohne weiteres zu erkennen, dass die Daten, die zu dem „nächsten" Puffer geschrieben werden, über den Wechsel hinweg kontinuierlich sind, obwohl dieselben von der nächsten Phase zu der aktuellen Phase Phasen überspringen müssen.
  • Das Zustandsmaschinendiagramm von 5 gehört hauptsächlich zu dem aktuellen Puffer. Wie es früher erwähnt ist, werden Abtastwertdaten zu zwei Stellen in einer abwechselnd zeitgemultiplexten Weise geschrieben. Wie ein Schreiben von Daten in einer zeitgemultiplexten Weise, ist auch die Zustandsmaschine und eine angeschlossene Adresssteuerschaltungsanordnung zeitgemultiplext. Dies ist in dem Zustandsmaschinendiagramm nicht gezeigt, um dasselbe einfacher verständlich zu machen. Die Zustandsmaschine aktualisiert sich lediglich alle zwei Zyklen. In einigen Fällen wird dies ausgenutzt, um zwei Steuerregisterschreibvorgänge und/oder -lesevorgänge in einem Schritt durchzuführen. Aktualisierungen an der Zustandsmaschine treten lediglich jeden zweiten Taktzyklus auf. Ereignisse, wie beispielsweise einen Zyklus breite Auslösepulse, müssen verbreitert werden, wo notwendig (bei der sel_trig-Schaltung), so dass die Zustandsmaschine auf dieselben anspricht, selbst wenn dieselben bei dem dazwischenliegenden Zyklus auftreten.
  • Wenn eine Dezimierung eingeschaltet ist (z. B. Aufnehmen jedes zehnten Abtastwerts), wird die Zustandsmaschine ebenfalls verlangsamt, derart, dass die Beziehung zwischen Speicherschreibvorgängen und Zustandsmaschinenänderungen beibehalten ist. Dies hilft die Schaltung mit einer spezifischen Dezimierungssteuerschaltungsanordnung unüberhäuft zu halten.
  • 6 beschreibt den Betrieb der Akquisitionszustandsmaschine 9. Der Zweck dieser Zustandsmaschine besteht darin, den zeitlichen Ablauf einer Akquisition, eines Abladens und einer Wiederakquisition zu steuern. Die Akquisitionszustandsmaschine 9 wartet in dem LEERLAUF-Zustand S20, solange dieselbe über das GEWINNEN-AUSFÜHREN-Steuersignal (RUNACQUIRE-Steuersignal) nicht angewiesen wird, die Akquisition zu starten. Wenn dieselbe so angewiesen wird, bewegt sich die Zustandsmaschine zu einem PUFFER_KOPIEREN-Zustand S21 (COPY_BUFFER-Zustand), bei dem dieselbe herausfindet, welcher Puffer verwendet wird, und denselben in ein arbeitendes Register kopiert. Dieselbe bewegt sich dann zu dem AUFNAHME_STARTEN-Zustand S22 (START_CAPTURE-Zustand) und sendet ein START zu der Aufnahmezustandsmaschine. In dem nächsten Zustand S23 AUFNAHME_ENDE_ERWARTEN (AWAIT_CAPTURE_FINISH) wartet die Akquisitionszustandsmaschine 9 darauf, dass die Aufnahmezustandsmaschine die Aufnahme fertigstellt, und bewegt sich dann zu einem Zustand S24, bei dem dieselbe einen ABLADEN_STARTEN-Befehl (START_DUMP-Befehl) zu der Pulsaufnahmezustandsmaschine sendet. Erneut wartet die Akquisitionszustandsmaschine 9 in einem Zustand S25 darauf, dass das Abladen abschließt, und sobald das Abladen bei einem Zustand S26 abgeschlossen ist, kann dieselbe dann eine Anzahl von Dingen tun. In einem Einmal_Ausführen-Modus (run_once-Modus) stoppt dieselbe ein Gewinnen und bewegt sich zu einem STOPP_NACH_EINMAL_AUS-FÜHREN-Zustand S27 (STOP_AFTER_RUN_ONCE-Zustand). Alternativ bewegt sich dieselbe in einem KONTINUIERLICH-Modus (CONTINUOUS-Modus) zu einem Zustand S28, um zu prüfen, ob eine andere Aufnahme aus dem nächsten Puffer (oder Puffersatz) in der Reihe durchgeführt werden kann. Eine Aufnahme kann auftreten, während die vorhergehende Aufnahme verarbeitet wird. Die Signalverlaufsverarbeitung benötigt eine finite Zeit und die Signalverlaufsverarbeitungsschaltungsanordnung hat eventuell die abgeladenen Daten derselben noch nicht verarbeitet, so dass die Option eines Aufschiebens der nächsten Aufnahme bei einem Zustand S30 existiert, bis die Signalverlaufsverarbeitungsschaltungsanordnung ein Flag setzt. In jedem Fall gelangt die Zustandsmaschine zu einem PUFFER_EINSTELLEN-Zustand S29 (ADJUST_BUFFER-Zustand), bei dem der nächste Puffer herausgefunden wird und eine andere Aufnahme gestartet wird. Der Prozess durchläuft weiter eine Schleife, bis der Hauptprozessor „kontinuierlich" rücksetzt, wobei derselbe sauber am Ende einer Aufnahme stoppt. Eine Aufnahme kann ebenfalls zwangsweise durch ein Rücksetzen der GEWINNEN_AUSFÜHREN-Steuerleitung gestoppt werden (bei Situationen, in denen ein Fehlen von Auslösern einen ordentlichen Abschluss verhindert).
  • Bei einem Aufnehmen kann die gesamte Schaltung bei der dezimierten Rate laufen. Falls der Dezimierungsfaktor groß ist (z. B. eine Aufnahme alle 1000 Taktzyklen), dann würde das Abladen auch eine lange Zeit benötigen, wenn dasselbe die gleiche Schaltungsanordnung verwendet. Um die Dinge zu beschleunigen, schaltet die Akquisitionszustandsmaschine 9 automatisch von der dezimierten Rate um, um während eines Abladens einen Betrieb abzuflachen, und schaltet für die nächste Aufnahme zurück zu der dezimierten Rate.
  • Es ist ersichtlich, dass, obwohl lediglich ein bevorzugtes Ausführungsbeispiel der Erfindung detailliert beschrieben wurde, verschiedene Modifikationen und Verbesserungen durch einen Fachmann auf dem Gebiet vorgenommen werden können, ohne von dem Schutzbereich der Erfindung abzuweichen.

Claims (19)

  1. Vorrichtung zum Extrahieren einzelner Pulse aus einem Eingangssignal, wobei die Vorrichtung folgende Merkmale aufweist: a. einen Eingangsanschluss (3) zum Empfangen eines Eingangssignals, das einen Strom von Pulsen aufweist; b. einen Analog-zu-Digital-Wandler (ADC = Analog to Digital Converter) (2), der einen Eingang, der mit dem Eingangsanschluss (3) zum Empfangen des Eingangssignals gekoppelt ist, wobei der ADC das empfangene Eingangssignal in Digitaldatenabtastwerte umwandelt, und einen Ausgang zum Liefern der Digitaldatenabtastwerte aufweist; c. einen Speicher (4), der eine Mehrzahl von logisch getrennten Speicherpuffern (14) aufweist, die mit dem Ausgang des ADC gekoppelt sind, zum Speichern der Digitaldatenabtastwerte; d. eine Pulsextraktionsschaltung (5), die einen Eingang, der mit dem Ausgang des ADC gekoppelt ist, zum Erfassen vorauseilender und nacheilender Pulsflanken in den Digitaldatenabtastwerten und einen Ausgang aufweist; e. eine Speicherpuffersteuerung (7), die mit dem Ausgang des ADC, dem Speicher und dem Ausgang der Pulsextraktionsschaltung gekoppelt ist, zum Steuern einer Speicherung der Digitaldatenabtastwerte in dem Speicher (4), wobei die Digitaldatenabtastwerte in zumindest zwei Speicherpuffern gespeichert sind, derart, dass die Digitaldatenabtastwerte in zumindest einen aktuellen Puffer und einen nächsten Puffer gespeichert sind, und wo bei, wenn eine nacheilende Pulsflanke in den Datenabtastwerten erfasst wird, die in dem aktuellen Puffer gespeichert sind, dieser aktuelle Puffer an einem Speichern weiterer Digitaldatenabtastwerte gehindert wird und der nächste Puffer zu dem aktuellen Puffer wird, wobei der neue Puffer zu dem nächsten Puffer wird; und f. einen Ausgangsanschluss (16) zum Liefern der Digitaldatenabtastwerte von dem aktuellen Puffer, nachdem derselbe ein Speichern weiterer digitaler Abtastwerte beendet hat.
  2. Vorrichtung gemäß Anspruch 1, die ferner eine Signalverlaufsverarbeitungsschaltungsanordnung (15) aufweist, die mit dem Ausgangsanschluss gekoppelt ist, zum Empfangen der Digitaldatenabtastwerte, die sich auf einen erfassten Puls beziehen, von einem Speicherpuffer (14), der an einem Speichern weiterer Digitaldatenabtastwerte gehindert wurde, wobei dieser Speicherpuffer dann verfügbar wird, um zu einem nächsten Puffer zu werden.
  3. Vorrichtung gemäß Anspruch 1 oder Anspruch 2, bei der die Pulsextraktionsschaltung (5) eine Steuerung (38), einen ersten und einen zweiten Hystereseschwellenkomparator (39, 40), die jeweils einen ersten Eingang zum Empfangen der Digitaldatenabtastwerte, einen zweiten Eingang zum Empfangen eines ersten und eines zweiten Hystereseschwellenwerts und einen Ausgang aufweisen, der mit der Steuerung gekoppelt ist, wobei der erste und der zweite Hystereseschwellenkomparator die Digitaldatenabtastwerte mit einem ersten bzw. einem zweiten Hystereseschwellenpegel vergleichen, einen ersten und einen zweiten Qualifikationszeitgeber (41, 42) aufweist, die jeweils durch die Steuerung gesteuert sind und einen Zeitablaufausgang aufweisen, der mit der Steuerung gekoppelt ist, wobei die Steuerung die Ausgaben der Komparatoren und der Zeitgeber empfängt und ein Starten der Zeitgeber steuert, um zu ermöglichen, dass die Steuerung bestimmt, ob ein Übergang der Digitaldatenabtastwerte über einen Hystereseschwellenpegel eine vorauseilende Pulsflanke bildet oder nicht und ob ein Übergang des Eingangssignals über einen Hystereseschwellenpegel eine nacheilende Pulsflanke des Eingangsignals bildet oder nicht.
  4. Vorrichtung gemäß einem der vorhergehenden Ansprüche, bei der der aktuelle Puffer (14) an einem Speichern weiterer Digitaldatenabtastwerte nach einer Zeitverzögerung, nachdem die nacheilende Pulsflanke in den Datenabtastwerten erfasst ist, die in dem aktuellen Puffer gespeichert sind, gehindert wird.
  5. Vorrichtung gemäß einem der vorhergehenden Ansprüche, bei der die Speicherpuffersteuerung (7) eine Mehrzahl von Registern (13) aufweist, jeweils zum Speichern von Informationen bezüglich eines speziellen extrahierten Pulses.
  6. Vorrichtung gemäß Anspruch 5, bei der die Informationen bezüglich eines speziellen Pulses, die in dem Register (13) gespeichert sind, zumindest Zeitinformationen und Speicheradressinformationen umfassen.
  7. Vorrichtung gemäß Anspruch 5 oder Anspruch 6, bei der die Informationen bezüglich eines speziellen Pulses, die in dem Register (13) gespeichert sind, zumindest eine Pulsnummer umfassen, wobei die Pulsnummern jedes Mal inkrementiert werden, wenn ein neuer Puls extrahiert wird.
  8. Vorrichtung gemäß Anspruch 7, bei der die Speicherpuffersteuerung (7) einen Eingang zum Empfangen von Steuerinformationen zum Steuern der Speicherpuffer um fasst, um lediglich vorbestimmte Pulse gemäß der Pulsnummer derselben zu speichern.
  9. Vorrichtung gemäß einem der vorhergehenden Ansprüche, die ferner eine Akquisitionsschaltung (9) aufweist, die einen Eingang, der mit dem Ausgang der Pulsextraktionsschaltung (6) gekoppelt ist, und einen Ausgang aufweist, der mit der Speicherpuffersteuerung (7) gekoppelt ist, wobei die Akquisitionsschaltung (9) einen Zeitgeber zum Freigeben der Speicherpuffersteuerung eine vorbestimmte Zeit, nachdem eine Pulsflanke erfasst ist, umfasst.
  10. Vorrichtung gemäß einem der vorhergehenden Ansprüche, bei der die Daten in den zumindest zwei Speicherpuffern (14) in einer zeitgemultiplexten Weise gespeichert sind.
  11. Verfahren zum Extrahieren einzelner Pulse aus einem Eingangssignal, wobei das Verfahren folgende Schritte aufweist: a. Empfangen (3) eines Eingangssignals, das einen Strom von Pulsen aufweist; b. Umwandeln (2) des empfangenen Eingangssignals in Digitaldatenabtastwerte; c. Erfassen vorauseilender und nacheilender Pulsflanken in den Digitaldatenabtastwerten; d. Speichern (4) der Digitaldatenabtastwerte in zumindest zwei Speicherpuffer (14), derart, dass die Digitaldatenabtastwerte in zumindest einen aktuellen Puffer und einen nächsten Puffer gespeichert werden, und wobei, wenn eine nacheilende Pulsflanke in den Datenabtastwerten erfasst wird, die in dem aktuellen Puffer gespeichert sind, dieser aktuelle Puffer an einem Speichern weiterer Digitaldatenabtastwerte gehindert wird und der nächste Puffer zu dem aktuellen Puffer wird, wobei ein neuer Puffer zu dem nächsten Puffer wird; und e. Ausgeben (16) der Digitaldatenabtastwerte aus dem aktuellen Puffer, nachdem derselbe ein Speichern weiterer digitaler Abtastwerte beendet hat.
  12. Verfahren gemäß Anspruch 11, das ferner den Schritt eines Verarbeitens der Digitaldatenabtastwerte aufweist, die von einem Speicherpuffer (14) ausgegeben werden, der an einem Speichern weiterer Digitaldatenabtastwerte gehindert wurde, wobei dieser Speicherpuffer dann verfügbar wird, um zu einem nächsten Puffer zu werden.
  13. Verfahren gemäß Anspruch 11 oder Anspruch 12, bei dem der Schritt des Erfassens vorauseilender und nacheilender Pulsflanken folgende Schritte aufweist: Starten eines ersten Qualifikationszeitgebers (41), wenn ein erster Übergang der Digitaldatenabtastwerte über eine erste Hystereseschwelle erfasst wird; Starten eines zweiten Qualifikationszeitgebers (42), wenn ein Übergang der Digitaldatenabtastwerte über eine zweite Hystereseschwelle erfasst wird, während der erste Qualifikationszeitgeber eine Zeit nimmt; und Validieren des ersten Übergangs als eine vorauseilende Flanke eines Pulses des Eingangssignals, falls die Digitaldatenabtastwerte erneut über der ersten Hystereseschwelle liegen, wenn der erste Qualifikationszeitgeber einen Zeitablauf feststellt oder nachdem der erste Qualifikationszeitgeber einen Zeitablauf festge stellt hat, aber bevor der zweite Qualifikationszeitgeber einen Zeitablauf feststellt; und Starten des zweiten Qualifikationszeitgebers, wenn ein zweiter Übergang der Digitaldatenabtastwerte über die zweite Hystereseschwelle erfasst wird; und Validieren des zweiten Übergangs als eine nacheilende Flanke des Pulses der Digitaldatenabtastwerte, falls das Eingangssignal unter der zweiten Hystereseschwelle bleibt, bis der zweite Qualifikationszeitgeber einen Zeitablauf feststellt.
  14. Verfahren gemäß einem der Ansprüche 11 bis 13, bei dem der aktuelle Puffer (14) an einem Speichern weiterer Digitaldatenabtastwerte nach einer Zeitverzögerung, nachdem die nacheilende Pulsflanke in den Datenabtastwerten erfasst ist, die in dem aktuellen Puffer gespeichert sind, gehindert wird.
  15. Verfahren gemäß einem der Ansprüche 11 bis 14, das ferner den Schritt eines Speicherns von Informationen bezüglich eines speziellen extrahierten Pulses aufweist.
  16. Verfahren gemäß Anspruch 15, bei dem die Informationen bezüglich eines speziellen Pulses zumindest Zeitinformationen und Speicheradressinformationen umfassen.
  17. Verfahren gemäß Anspruch 15 oder Anspruch 16, bei dem die Informationen bezüglich eines speziellen Pulses zumindest eine Pulsnummer umfassen, wobei die Pulsnummern jedes Mal inkrementiert werden, wenn ein neuer Puls extrahiert wird.
  18. Verfahren gemäß Anspruch 17, das ferner den Schritt eines Empfangens von Steuerinformationen zum Steuern der Speicherpuffer aufweist, um lediglich vorbestimmte Pulse gemäß der Pulsnummer derselben zu speichern.
  19. Verfahren gemäß einem der Ansprüche 11 bis 18, bei dem die Daten in den zumindest zwei Speicherpuffern (14) in einer zeitgemultiplexten Weise gespeichert werden.
DE102006027835A 2005-06-29 2006-06-16 Ein Verfahren und eine Vorrichtung zum Extrahieren einzelner Pulse aus einem Eingangssignal Withdrawn DE102006027835A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB0513147.9 2005-06-29
GB0513147A GB2427801B (en) 2005-06-29 2005-06-29 A method and apparatus for extracting individual pulses from an input signal

Publications (1)

Publication Number Publication Date
DE102006027835A1 true DE102006027835A1 (de) 2007-01-04

Family

ID=34856269

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102006027835A Withdrawn DE102006027835A1 (de) 2005-06-29 2006-06-16 Ein Verfahren und eine Vorrichtung zum Extrahieren einzelner Pulse aus einem Eingangssignal

Country Status (3)

Country Link
US (1) US7265700B2 (de)
DE (1) DE102006027835A1 (de)
GB (1) GB2427801B (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011160935A1 (de) 2010-06-23 2011-12-29 Rohde & Schwarz Gmbh & Co. Kg Messvorrichtung mit einer triggereinheit

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2421317B (en) * 2004-12-15 2009-02-11 Agilent Technologies Inc A method and apparatus for detecting leading pulse edges
US8185330B2 (en) * 2008-03-26 2012-05-22 Agilent Technologies, Inc. Automatic placement of measurement gates
JP5319375B2 (ja) * 2009-04-14 2013-10-16 オリンパス株式会社 無線通信端末および無線ネットワークの接続設定方法
US8564311B2 (en) * 2010-07-01 2013-10-22 Stmicroelectronics Asia Pacific Pte Ltd. Sensing phase sequence to suppress single tone noise
EP3148700B1 (de) 2014-06-02 2020-03-18 Agilent Technologies, Inc. Einspaltiges mikroplattensystem und träger zur analyse biologischer proben
US10228394B2 (en) 2016-02-29 2019-03-12 Keysight Technologies, Inc. Measurement system that stores pre- and post-qualification signal data
CN114966815B (zh) * 2022-05-26 2026-01-30 苏州瑞派宁科技有限公司 闪烁脉冲的数字化方法、装置、设备及存储介质

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4905003A (en) * 1987-07-24 1990-02-27 Richard J. Helferich Analog/digital data storage system
JP3005807B2 (ja) * 1990-07-13 2000-02-07 日置電機株式会社 波形記録計
JP2707981B2 (ja) * 1994-10-21 1998-02-04 株式会社デンソー 通信制御装置
JP2773716B2 (ja) * 1995-11-28 1998-07-09 日本電気株式会社 音声出力型無線受信機
WO1999017451A2 (en) * 1997-09-30 1999-04-08 Koninklijke Philips Electronics N.V. Method and device for detecting bits in a data signal
US6281820B1 (en) * 1999-07-12 2001-08-28 Pointset Corporation Methods and apparatus for transferring data from a display screen
US7088794B2 (en) * 2002-02-19 2006-08-08 The United States Of America As Represented By The Secretary Of The Navy Automatic gain control for digitized RF signal processing
US6975251B2 (en) * 2002-06-20 2005-12-13 Dakota Technologies, Inc. System for digitizing transient signals with waveform accumulator
US6621443B1 (en) * 2002-10-01 2003-09-16 Smar Res Corp System and method for an acquisition of data in a particular manner
US7142140B2 (en) * 2004-07-27 2006-11-28 Silicon Laboratories Inc. Auto scanning ADC for DPWM
US7428159B2 (en) * 2005-03-31 2008-09-23 Silicon Laboratories Inc. Digital PWM controller
GB2421317B (en) 2004-12-15 2009-02-11 Agilent Technologies Inc A method and apparatus for detecting leading pulse edges

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011160935A1 (de) 2010-06-23 2011-12-29 Rohde & Schwarz Gmbh & Co. Kg Messvorrichtung mit einer triggereinheit
DE102010046098A1 (de) 2010-06-23 2011-12-29 Rohde & Schwarz Gmbh & Co. Kg Messvorrichtung mit einer Triggereinheit
US9250268B2 (en) 2010-06-23 2016-02-02 Rohde & Schwarz Gmbh & Co. Kg Measuring device having a trigger unit

Also Published As

Publication number Publication date
GB0513147D0 (en) 2005-08-03
US20070001887A1 (en) 2007-01-04
GB2427801A (en) 2007-01-03
GB2427801B (en) 2010-03-24
US7265700B2 (en) 2007-09-04

Similar Documents

Publication Publication Date Title
DE2614000C2 (de) Diagnoseeinrichtung zur Prüfung von Funktionseinheiten
DE3111027C2 (de)
EP0318768B1 (de) Logikanalysator
DE3818546C2 (de)
DE10209804A1 (de) Eine abtastbasierte Mehrfachringoszillatorstruktur für eine Chip-interne Geschwindigkeitsmessung
DE69026479T2 (de) Datenprozessor mit Wartezustandsteuerungseinheit
DE19914986B4 (de) Vorrichtung zum Verzögern eines Taktsignals
DE4331375C2 (de) Pseudozufällig sich wiederholendes Abtasten eines Signals
DE2838549A1 (de) Impulsbreitenmesschaltung
DE112008000737T5 (de) Prüfgerät und elektronische Vorrichtung
DE102006027835A1 (de) Ein Verfahren und eine Vorrichtung zum Extrahieren einzelner Pulse aus einem Eingangssignal
DE3111555A1 (de) Verfahren zur informationsspeicherung unter anwendung frueherer aufzeichnung
DE3234575A1 (de) Verfahren und anordnung zum messen von frequenzen
DE69720520T2 (de) Taktgenerator
DE69031361T2 (de) Taktsignalgeneratorsystem
DE69522871T2 (de) Verbesserter Zeitgeber für Datenprozessoren
DE10393445T5 (de) Testgerät und Testverfahren
DE102006041444B4 (de) Schaltungsanordnung und Verfahren zum Erfassen einer Ausführungszeit eines Befehls in einem Rechnersystem
DE10111030A1 (de) Vorrichtung und Verfahren zur Einfügung einer Verzögerungszeit bei einem ereignisgestützten Prüfsystem
DE3852345T2 (de) Methode zur Messung von Impuls-Parametern.
DE2455440C3 (de) Verifizierungsanordnung für ein bestimmtes Impulsmuster
DE2235802A1 (de) Verfahren und einrichtung zur pruefung nichtlinearer schaltkreise
DE102006021821A1 (de) Einstellbarer Zeitakkumulator
DE2918777C2 (de) Schaltungsanordnung zum Messen der Häufigkeit und Dauer des einen von zumindest einer Leitung eines Digitalrechners angenommenen Binärzustandes
DE4200882C2 (de) Analog/Digital-Umsetzer

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8127 New person/name/address of the applicant

Owner name: AGILENT TECHNOLOGIES, INC. (N.D.GES.D. STAATES, US

8139 Disposal/non-payment of the annual fee