DE3882767T2 - Bandpass-Digitaloszilloskop. - Google Patents
Bandpass-Digitaloszilloskop.Info
- Publication number
- DE3882767T2 DE3882767T2 DE88300963T DE3882767T DE3882767T2 DE 3882767 T2 DE3882767 T2 DE 3882767T2 DE 88300963 T DE88300963 T DE 88300963T DE 3882767 T DE3882767 T DE 3882767T DE 3882767 T2 DE3882767 T2 DE 3882767T2
- Authority
- DE
- Germany
- Prior art keywords
- data
- sequence
- frequency
- data sequence
- signal
- 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.)
- Expired - Fee Related
Links
- 238000001914 filtration Methods 0.000 claims description 27
- 238000005070 sampling Methods 0.000 claims description 26
- 238000000034 method Methods 0.000 claims description 23
- 238000010183 spectrum analysis Methods 0.000 claims description 4
- 230000006870 function Effects 0.000 description 24
- 238000010586 diagram Methods 0.000 description 16
- 230000036961 partial effect Effects 0.000 description 14
- 238000001228 spectrum Methods 0.000 description 14
- 239000000872 buffer Substances 0.000 description 10
- 230000008569 process Effects 0.000 description 9
- 230000035508 accumulation Effects 0.000 description 7
- 238000009825 accumulation Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 7
- 230000006399 behavior Effects 0.000 description 6
- 230000004044 response Effects 0.000 description 6
- 239000000523 sample Substances 0.000 description 6
- 230000036962 time dependent Effects 0.000 description 5
- 230000002829 reductive effect Effects 0.000 description 4
- 101710146741 Shiftless antiviral inhibitor of ribosomal frameshifting protein Proteins 0.000 description 3
- 102100029950 Shiftless antiviral inhibitor of ribosomal frameshifting protein Human genes 0.000 description 3
- 101710201844 Shiftless antiviral inhibitor of ribosomal frameshifting protein homolog Proteins 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 101150097504 LHX1 gene Proteins 0.000 description 2
- 101150064725 LIM2 gene Proteins 0.000 description 2
- 101100454869 Rattus norvegicus Lhx5 gene Proteins 0.000 description 2
- 101100082623 Rattus norvegicus Pdlim7 gene Proteins 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R13/00—Arrangements for displaying electric variables or waveforms
- G01R13/20—Cathode-ray oscilloscopes
- G01R13/22—Circuits therefor
- G01R13/34—Circuits for representing a single waveform by sampling, e.g. for very high frequencies
- G01R13/345—Circuits for representing a single waveform by sampling, e.g. for very high frequencies for displaying sampled signals by using digital processors by intermediate A.D. and D.A. convertors (control circuits for CRT indicators)
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Complex Calculations (AREA)
- Analogue/Digital Conversion (AREA)
- Transmission And Conversion Of Sensor Element Output (AREA)
- Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)
Description
- Die vorliegende Erfindung betrifft allgemein digitale Speicheroszilloskope und insbesondere ein digitales Oszilloskop zum Anzeigen von Wellenformen, die Komponentensignale mit einer Frequenz innerhalb wählbarer Durchlaßbereiche eines Eingangssignals darstellen.
- Das Verhalten von Komponentensignalen mit einer Frequenz innerhalb wählbarer Frequenzbereiche eines breitbandigen Analogsignals ist häufig von Interesse und Spektrumanalysatoren versorgen Forscher mit Frequenzbereichsdarstellungen von Signalamplituden innerhalb eines Bandes oder Bereiches. Manchmal jedoch möchten Forscher einen Frequenzbereich, der für sie von Interesse ist, als Zeitbereichsdarstellung betrachten können. Oszilloskope bilden Signalgrößen als Funktionen der Zeit ab, wenn jedoch eine Wellenform, die ein Eingangssignal darstellt, von einem herkömmlichen Oszilloskop angezeigt wird, dann sind Signalkomponenten mit Frequenzen innerhalb eines bestimmten interessierenden Frequenzbereiches häufig schwierig zu beobachten, aufgrund des Vorliegens von höher- oder niedrigerfrequenten Komponenten. Ein analoger Bandpaß wird bisweilen verwendet, um die höher- und niedrigerfrequenten Frequenzkomponenten aus dem Analogsignal zu entfernen, bevor dieses an den Eingang eines Oszilloskops angelegt wird; es wären jedoch viele verschiedene Bandpässe erforderlich, um einen breiten Bereich wählbarer Durchlaßbereiche separat zu betrachten.
- Außerdem ist bei Verwendung eines herkömmlichen digitalen Oszilloskops zur Anzeige eines hochfrequenten Bereiches eines Eingabesignals die Zeitperiode, die von der Anzeige genau abgedeckt werden kann, begrenzt. Ein digitales Oszilloskop tastet im typischen Fall ein Eingabesignal an einer Vielzahl einzelner Punkte ab, erzeugt eine Sequenz digitaler Daten, die diese Punkte darstellen, und speichert die Sequenz in einem Erfassungsspeicher. Die Daten werden dann aus dem Speicher ausgelesen und zur Steuerung der Anzeige einer Wellenform auf dem Oszilloskopbildschirm verwendet. Die Dauer des "Zeitfensters", das von der von einem digitalen Oszilloskop angezeigten Wellenform abgedeckt ist, kann verlängert werden, indem eine größere Anzahl von Punkten mit der gleichen Abtastfrequenz erfaßt werden oder indem die gleiche Anzahl von Punkten mit einer verringerten Abtastfrequenz erfaßt wird. Da die Speichermöglichkeiten begrenzt sind, ist die Erhöhung der Anzahl von Abtastpunkten für Kombinationen langer Zeitfenster und hoher Abtastfrequenzen unpraktisch. Obwohl das Verringern der Abtastfrequenz zum Erhöhen der Fenstergröße häufiger eingesetzt wird, begrenzt das Verringern der Abtastfrequenz die Frequenzen des Eingangssignals, welches genau dargestellt werden kann. Wenn ein bandpaßgefiltertes Eingangssignal Komponenten aufweist, die eine höhere Frequenz als die halbe Abtastfrequenz haben, dann kann die anhanddessen erzeugte Wellenformanzeige das Verhalten des ursprünglichen Analogsignals aufgrund eines Alias-Effektes, worin beispielsweise hochfrequente Komponenten im Eingangssignal bewirken, daß die Wellenformanzeige mit einer weitaus niedrigeren Frequenz zu schwingen scheint, erheblich fehldarstellen.
- Ein digitales Oszilloskop aus dem Stand der Technik, welches ein digitales Filter mit wählbaren Filterbandbreiten umfaßt, ist im HEWLETT-PACKARD JOURNAL, Band 29, Nr. 2, Oktober 1977, auf den Seiten 2-9, NL von R. H. GROTE et al. unter dem Titel "Advanced digital Signal analyzer probes low-frequency signals with ease and precision." beschrieben.
- Eine dem Alias-Effekt entgegenwirkende Filterschaltung für Oszilloskope ist in der veröffentlichten Anmeldung EP-A-0 178 057 der Anmelderin beschrieben, bei der eine Vielzahl von schaltbaren analogen Bandbreitenfiltern und ein digitales Transversalfilter verwendet werden, die zur Bereitstellung eines jeweils anderen Bandpaßmerkmals für verschiedene Ablenk- und Abtastgeschwindigkeiten steuerbar sind. Auf die Ablenkgeschwindigkeit des Oszilloskops sprechen sowohl die Filterauswahl als auch die Steuerung der Digitalfilter an.
- Gemäß der vorliegenden Erfindung wird ein digitales Oszilloskop zur Anzeige einer Darstellung von Frequenzkomponenten eines Analogsignals zur Verfügung gestellt, wobei das Oszilloskop folgendes umfaßt eine Digitalisiervorrichtung (16), die auf das Analogsignal anspricht, um eine erste Datensequenz zu erzeugen, welche das Analogsignal während eines Zeitfensters von einstellbarer Dauer darstellt, wobei die Digitalisiervorrichtung ein aus dem Analogsignal mit konstanter Abtastfrequenz abgeleitetes Signal periodisch abtastet, um die erste Datensequenz zu erzeugen; eine Filtervorrichtung (18), die auf die erste Datensequenz anspricht, um die erste Datensequenz zur Erzeugung einer zweiten Datensequenz bandpaßzufiltern, wobei die Filtervorrichtung eine einstellbare Bandbreite hat und eine Vorrichtung zum Einstellen der Bandbreite gemäß der Dauer des Zeitfensters aufweist, wobei die Filtervorrichtung ein Dezimierungsfilter mit einstellbarem Dezimierungsfaktor ist; und eine Anzeigevorrichtung (28, 30, 32) zum Anzeigen der zweiten Datensequenz als eine Zeitbereichswellenform. Ein Verfahren zum Anzeigen einer Darstellung der Frequenzkomponenten des Analogsignals ist ebenfalls angegeben.
- In der bevorzugten Ausführungsform der vorliegenden Erfindung zeigt ein Digitaloszilloskop eine Wellenform an, die ein wählbares Frequenzband eines analogen Eingangssignals darstellt Das Eingangssignal wird durch ein analoges Tiefpaßfilter mit einer Bandbreite gefiltert, die ausreicht, um den höchsten interessierenden Frequenzbereich durchzulassen, und das gefilterte Eingangssignal wird dann abgetastet. Das Filter hat einen Sperrbereich, der alle Frequenzen umfaßt, die höher als die doppelte Abtastgeschwindigkeit sind. Die sich ergebende Wellenformdatensequenz wird als Eingang an einen Quadraturmodulator gelegt, der Datensequenzen erzeugt, welche echte und imaginäre Komponenten einer komplexen Wellenformdatensequenz erzeugt. Die komplexe Wellenformdatensequenz hat ein Frequenzspektrum, welches ihrer Eingangsdatensequenz ähnelt, jedoch durch -wc im Frequenzbereich umgesetzt ist, wobei wc die Mittelfrequenz eines gewählten Frequenzbereiches ist. Somit ist der Frequenzbereich in der komplexen Wellenformdatensequenz, der dem interessierenden Bereich entspricht, um 0 Hz herum zentriert.
- Die echten und imaginären Komponentensequenzen werden durch abgestimmte, mehrstufige digitale Tiefpaßdezimierungsfilter gefiltert und eine feste Anzahl von Elementen der Ausgangsdatensequenzen, wie sie von den Dezimierungsfiltern erzeugt werden, werden in einem Erfassungsspeicher gespeichert. Der Dezimierungsfaktor der Dezimierungsfilter (d.h. das Verhältnis der empfangenen Eingangssequenzelemente zu der Anzahl der erzeugten Ausgangssequenzelemente) wird gemäß einer gewünschten Länge eines Zeitfensters der anzuzeigenden Wellenform eingestellt, so daß die im Erfassungsspeicher gespeicherte feste Anzahl von Datenelementen von Eingangssignalabtastungen abgeleitet wird, die während der vollen Länge des gewünschten Zeitfensters erfaßt wurden. Außerdem sind die Bandbreiten der digitalen Dezimierungstiefpaßfilter so eingestellt, daß eine gemäß den im Erfassungsspeicher gespeicherten Daten erzeugte Wellenformanzeige keinem Alias-Effekt unterliegt. Bei Erhöhung der Länge des Zeitfensters wird die Bandbreite verringert und der Dezimierungsfaktor erhöht.
- Um eine Wellenformanzeige zu erzeugen, werden die im Erfassungsspeicher gespeicherten echten und imaginären Datensequenzelemente sequentiell ausgelesen und als Eingang an abgestimmte mehrstufige Interpolationsfilter gelegt, die die Anzahl von Elementen in den echten und imaginären Datensequenzen um einen Interpolationsfaktor (d.h. das Verhältnis der Anzahl von Ausgangssequenzelementen zu der Anzahl von Eingangssequenzelementen) gleich dem Dezimierungsfaktor der Dezimierungsfilter erhöhen. Die interpolierten echten und imaginären Ausgansdatensequenzen werden dann an einen Quadraturdemodulator angelegt, um eine Ausgansdatensequenz zu erzeugen, die Signalkomponenten innerhalb des interessierenden Frequenzbereichs des analogen Eingangssignals während des Zeitfensters darstellen. Die Ausgangssequnez des Quadraturdemodulators wird zur Steuerung einer Wellenformanzeige verwendet.
- Das digitale Oszilloskop der vorliegenden Erfindung speichert dieselbe Menge von Wellenformdaten im Erfassungsspeicher, ungeachtet der Mittelfrequnz des interessierenden Frequenzbereiches und ungeachtet der Länge des Zeitfensters der anzuzeigenden Wellenform. Die Alias-Effekte werden durch geeignetes Einstrellen der Breite des Bandes minimalisiert. Eine lange, hochfrequente Komponente eines Eingangssignals kann ohne Alias-Effekt durch eine relativ geringere Menge gespeicherter Wellenformdaten dargestellt werden, als die für ein herkömmliches digitales Oszilloskop erforderlich wäre.
- Es ist dementsprechend eine Aufgabe der Erfindung, ein verbessertes Oszilloskop bereitzustellen, welches wählbare Frequenzbereiche eines Eingangssignals anzeigt.
- Es ist eine weitere Aufgabe der Erfindung, ein verbessertes digitales Oszilloskop bereitzustellen, welches Alias-Effekte minimilisieren kann.
- Der Gegenstand der vorliegenden Erfindung ist insbesondere in dem abschließenden Teil dieser Schrift hervorgehoben und im einzelnen beansprucht. Sowohl die Organisation als auch das Betriebsverfahren der Erfindung, zusammen mit ihren weiteren Vorteilen und Zielen, sind jedoch anhand der nachfolgenden Beschreibung in Verbindung mit beigefügten Zeichnungen am besten verständlich, in welchen gleiche Bezugszahlen gleiche Elemente kennzeichnen.
- Fig. 1 ist ein Blockschaltbild eines digitalen Speicheroszilloskops gemäß der vorliegenden Erfindung;
- Fig. 2 ist ein Signalflußdiagramm, welches eine Wellenformdatenverarbeitung durch das digitale Speicheroszilloskop aus Fig. 1 zeigt;
- Fig. 3 ist ein Frequenzspektrumdiagramm, welches von dem Oszilloskop aus Fig. 1 durchgeführte Signalverarbeitungsschritte zeigt;
- Fig. 4 ist ein Wellenformdiagramm, welches einen Alias-Effekt in einem herkömmlichen Oszilloskop zeigt;
- Fign. 5A-5F zeigen Sequenzen von Zeit- und Frequenzbereichsanzeigen, wie sie vom erfindungsgemäßen Oszilloskop erzeugt wurden, welches im Basisbereichsmodus arbeitet, bei Vergrößerung des Zeitfensters der Anzeige;
- Fign. 6A-6F zeigen Sequenzen von Zeit- und Frequenzbereichsanzeigen, wie sie vom erfindungsgemäßen Oszilloskop erzeugt wurden, welches in einem Durchlaßmodus arbeitet, bei Vergrößerung des Zeitfensters der Anzeige;
- Fig. 7 zeigt ein Blockschaltbild der Wellenformdatenverarbeitungseinheit aus Fig. 1;
- Fig. 8 ist ein Blockschaltbild eines mehrstufigen programmierbaren digitalen Filters aus Fig. 7;
- Fig. 9 ist ein vereinfachtes Blockschaltbild der Datenwegeinheit aus Fig. 8;
- Fig. 10 ist ein detaillierteres Blockschaltbild der Datenwegeinheit aus Fig. 8; und
- Fig. 11 ist ein Blockschaltbild der Modulatorschaltung aus Fig. 7.
- Fig. 1 zeigt in Blockschaltbildform ein digitales Speicheroszilloskop 10 der vorliegenden Erfindung, welches zum Digitalisieren eines analogen Eingangssignales V(t), zum Speichern einer kompakten Datensequenzdarstellung eines gewählten Frequenzbandes des V(n)-Signals und zum anschließenden Erzeugen von Zeit- und Frequenzbereichsanzeigen des Bandes gemäß der gespeicherten Datensequenz ausgelegt ist. Das Oszilloskop 10 besteht aus einem Tiefpaßfilter 12 zum Filtern des Eingangssignals V(t) und einem vertikalen Vorverstärker 14 zum einstellbaren Versetzen (Offset) und Verstärken des Ausgangs von Filter 12. Das vom Vorverstärker 14 erzeugte Ausgangssignal wird von einem Digitalisiergerät 16 mit konstanter Geschwindigkeit abgetastet, welches die sich ergebende Sequenz analoger Abtastungen in eine Sequenz digitaler Daten V(n) umwandelt. Die Datensequenz V(n) wird als Eingang an eine Wellenformdatenverarbeitungseinheit 18 gelegt, welche im einzelnen nachstehend beschrieben werden wird, welche eine Quadraturmodulation, Dezimierung und Tiefpaßfilterung von V(n) durchführt, um Wellenformdatensequenzen a(m) und b(m) zu erzeugen. Die Datensequenzen a(m) und b(m) sind entsprechende echte und imaginäre Abschnitte einer komplexen Datensequenz, aus der das zeitabhängige Verhalten des gewählten Frequenzbandes des Eingangssignals bestimmt werden kann.
- Die Datensequenzen a(m) und b(m) werden in einem Erfassungsspeicher 20 mit wahlfreiem Zugriff (RAM) gespeichert. Anschließend werden zur Auslösung einer Zeitbereichsanzeige des Bandes bzw. Bereiches Datensequenzen a(m) und b(m) aus dem Erfassungsspeicher 20 heraus und in die Wellenformdatenverarbeitungseinheit 18 hinein transferiert. Die Datenverarbeitungseinheit 18 vollzieht eine Interpolation und Quadraturdemodulation von a(m) und b(m), um eine Ausgangsdatensequenz V'(n) zu erzeugen, welche die Größe des Bandes als Funktion der Zeit darstellt. Die Datensequenz V'(n) wird an einen Mikroprozessor 22 gelegt, der unter Programmsteuerung von Anweisungen arbeitet, die in einem Nur-Lese-Speicher (ROM) 24 gespeichert sind, und einen Speicher mit wahlfreiem Zugriff (RAM) 26 zur vorübergehenden Datenspeicherung verwendet. Der Mikroprozessor 22 wandelt die Datensequenz V'(n) in Daten zur Steuerung der herkömmlichen Anzeige einer Wellenform um und leitet die Wellenformanzeigesteuerdaten an eine herkömmliche Anzeigesteuerung 28 weiter. Die Anzeigesteuerung 28 speichert die Anzeigesteuerdaten in einem Anzeigespeicher 30 und aktualisiert periodisch eine Wellenformanzeige auf dem Bildschirm einer Kathodenstrahlröhre (CRT) 32 gemäß den im Anzeigespeicher 30 gespeicherten Daten.
- Um eine Frequenzbereichsanzeige des gewählten Frequenzbandes auszulösen, liest der Mikroprozessor 22 Datensequenzen a(m) und b(m) aus dem Erfassungsspeicher 20 aus und verwendet ein herkömmliches diskretes Fourier-Transformationsspektrums- Analyseverfahren, um aus den Sequenzen a(m) und b(m) eine Frequenzspektrumdatensequenz zu errechnen, die die Größe von Signalen im Band als Funktion der Frequenz darstellt. Der Mikroprozessor 22 wandelt die errechnete Frequenzspektrumdatensequenz in Anzeigesteuerdaten um, welche an die Anzeigesteuerung 28 geleitet werden, und die Anzeigesteuerung erzeugt die Frequenzbereichsanzeige auf dem Bildschirm der Kathodenstrahlröhre 32.
- Der Mikroprozessor 22 kommuniziert mit Vorverstärker 14, Digitalisiergerät 16, Wellenformdatenverarbeitungseinheit 18, Erfassungsspeicher 20, ROM 24, RAM 26 und Anzeigesteuerung 28 über einen Bus 34, wobei der Bus Datenadreß- und Steuerleitungen aufweist. Der Mikroprozessor 22 verwendet den Bus 34, um die Verstärkung und den Offset von Vorverstärker 14 sowie die Betriebsparameter von Digitalisiergerät 16 zu steuern. Der Mikroprozessor 22 verwendet den Bus 34 auch, um den Quittungsbetrieb ("Handshaking") zum Datentransfer zwischen der Wellenformdatenverarbeitungseinheit 18 und dem Erfassungsspeicher 20 zu steuern, und um Betriebsparameter der Datenverarbeitungseinheit 18 zu steuern, wie es nachstehend im einzelnen beschrieben werden wird. Eine Eingabe von der Bedienungsperson an den Mikroprozessor 22 erfolgt über Steuerknöpfe und Tasten, die über herkömmliche Schnittstellenschaltungen (nicht dargestellt) auf den Bus 34 zugreifen. Alle in Fig. 1 gezeigten Hardware-Blöcke, außer der Wellenformdatenverarbeitungseinheit 18, werden in herkömmlichen digitalen Oszilloskopen üblicherweise verwendet und sind daher hierin nicht weiter im einzelnen erläutert. Die Wellenformdatenverarbeitungseinheit 18 ist nachstehend weiter beschrieben.
- Die Fign. 2 und 3 umfassen ein Signalflußdiagramm und eine Sequenz von Frequenzspektrumdiagrammen, die vom Oszilloskop 10 aus Fig. 1 bei der Verarbeitung des analogen Eingangssignals V(t) zur Erzeugung von Datensequenzen a(m), b(m) und V'(n) durchgeführte Schritte zeigen. Ein Beispiel eines analogen Eingangssignals V(t), welches in Fig. 3A dargestellt ist, hat ein flaches Frequenzspektrum von einer niedrigen Frequenz w&sub1; zu einer hohen Frequenz wh. In den Figuren 1-3 wird das Eingangssignal V(t) zunächst durch das Tiefpaßfilter 12 gefiltert (Schritt 42), welches einen Sperrbereich hat, der bei Ws/2 beginnt (worin ws die Abtastgeschwindigkeit des Digitalisiergerätes 16 ist), um ein Ausgangssignal V'(t) mit Frequenzspektrum, wie in Fig. 3B gezeigt, zu erzeugen. Nachdem das V'(t) Ausgangssignal des Tiefpaßfilters 12 einem Offset und einer Verstärkung durch Vorverstärker 16 (Schritt 44) unterzogen wurde, führt das Digitalisiergerät 16 mit einer Abtastfrequenz ws eine Analog-/Digital-Umwandlung (Schritt 46) auf V'(t) durch, um eine Wellenformdatensequenz V(n) zu erzeugen. Es ist zu bemerken, daß das in Fig. 3C gezeigte Spektrum von V(n) "spiegelbildliche" positive und negative Frequenzbereiche bzw. -bänder aufweist.
- Die Wellenformdatenverarbeitungseinheit 18 nimmt dann eine Quadraturmodulation an der Eingangssequenz V(n) vor (Schritt 48), indem sie V(n) mit cos(wcn) multipliziert, um Datensequenz a(n) (Unterschritt 50) zu bilden, und V(n) mit sin(wcn) multipliziert, um eine weitere Datensequenz b(n) (Unterschritt 52) zu erstellen, worin wc die Mittelfrequenz eines interessierenden Frequenzbereiches im Eingangssignal V(t) ist. Fig. 3D zeigt das Frequenzspektrum einer komplexen Datensequenz a(n)+jb(n). Es ist zu bemerken, daß die Abbildung von a(n)+jb(n) und der positiven Frequenzabschnitte der Abbildung von V(n) ähnliche Formen haben. a(n)+jb(n) ist jedoch um wc nach links verschoben, so daß ein Bereich in a(n)+jb(n) entsprechend einem Frequenzbereich in V(n), welcher um die Frequenz wc herum zentriert ist, um 0 Frequenz herum zentriert ist.
- Die Wellenformdatenverarbeitungseinheit 18 unterzieht die Sequenzen a(n) und b(n) einer Tiefpaßfilterung und Dezimierung (Schritte 54 bzw. 56), um Ausgangssequenzen a(m) und b(m) zu erstellen. Das Frequenzspektrum von a(m)+jb(m) ist in Fig. 3E gezeigt. Ein Dezimierungsfilter bildet eine Ausgangsdatensequenz, die um einen Faktor M weniger Elemente als ihre Eingangsdatensequenz hat, wobei M ein Verhältnis ist, welches die Anzahl von Eingangssequenzelementen zu der Anzahl von Ausgangssequenzelementen während einer entsprechenden Zeitperiode in Bezug setzt. Beide Sequenzen a(m) und b(m) werden mit einem Dezimierungsfaktor M gefiltert, dessen Wert so gewählt ist, daß eine vorbestimmte Anzahl (geeigneterweise 512) von Elementen einer jeden Sequenz a(m) und b(m) das zeitabhängige Verhalten des interessierenden Durchlaßbereiches während eines Zeitfensters von wählbarer Dauer darstellt. Außerdem ist die Bandbreite des Tiefpaßfilters, das die Filterschritte 54 und 56 durchführt, so eingestellt, daß für die gegebene Länge des Zeitfensters eine Wellenformanzeige, die unter Verwendung von in den Sequenzen a(m) und b(m) enthaltenen Informationen erstellt wurde, einen interessierenden Frequenzbereich ohne Alias-Effekt darstellen würde, wie es im Detail nachstehend ausgeführt werden wird.
- Die aus 512 Elementen bestehenden Sequenzen a(m) und b(m) werden im Erfassungsspeicher 20 gespeichert (Schritt 58). Um eine Zeitbereichsanzeige von Komponenten des Eingangssignals mit Frequenzen innerhalb eines um wc herum zentrierten Bereiches zu erstellen, unterzieht anschließend die Wellenformdatenverarbeitungseinheit 18 die Sequenzen a(m) und b(m) einer Interpolationsfilterung (Schritte 60 bzw. 62) mit einem Interpolationsfaktor L, um Ausgangsdatensequenzen a'(n) und b'(n) zu erzeugen. Das Frequenzspektrum der komplexen Sequenz a'(n)+jb'(n) ist in Fig. 3F gezeigt. Der Wert von L, ein Verhältnis, das die Anzahl von Ausgangssequenzelementen zu der Anzahl von Eingangssequenzelementen in Bezug setzt, wird gleich dem Wert von in gewählt, der in den Schritten 54 und 56 verwendet wurde, wodurch die Sequenzen a'(n) und b'(n) dieselbe Anzahl von Elementen wie die Sequenzen a(n) und b(n) haben.
- Die Wellenformdatenverarbeitungseinheit 18 demoduliert dann die Sequenzen a'(n) und b'(n) (Schritt 64), indem sie a'(n) mit cos(wcn) (Unterschritt 66) multipliziert, b'(n) mit sin(wcn) multipliziert und die Ergebnisse (Schritt 70) addiert, um eine Ausgangssequenz V'(n) zu erzeugen, die ein Frequenzspektrum hat, wie es in Fig. 3G gezeigt ist. Es ist zu bemerken, daß V'(n) einen positiven Frequenzbereich hat, der in seiner Form a(m), dem Mittelband aus Fig. 3F, ähnelt, jedoch aufgrund der Quadraturmodulation um wc verschoben ist, wodurch der positive Bereich um wc herum zentriert ist. V'(n) hat einen negativen Frequenzbereich, welcher ein Spiegelbild seines positiven Frequenzbereiches ist. Der Mikroprozessor 22 verwendet die Wellenformdatensequenz V'(n), um eine Zeitbereichsanzeige (Schritt 72) zu bilden, welche das zeitabhängige Verhalten von Eingangssignalkomponenten mit Frequenzen innerhalb des Bereiches entsprechend dem positiven Frequenzspektrum von V'(n), wie es in Fig. 3G gezeigt ist, darstellt.
- Wie bereits oben erwähnt wurde, sind die Werte von Dezimierungsfaktor M und Interpolationsfaktor L gleich und werden gemäß der gewählten Dauer des Zeitfensters gewählt. Insbesondere werden L und M so eingestellt, daß die ersten 512 Elemente von Datensequenzen a(m) und b(m) von den Elementen der Sequenz V(n) abgeleitet sind, die durch Abtasten von V(t) während des Zeitfensters erfaßt wurden. Aus einem Vergleich der Fign. 3C und 3G geht hervor, daß eine Quadraturmodulation, Tiefpaßfilterung und dann Quadraturdemodulation einer Eingangsdatensequenz wie oben beschrieben die Wirkung einer Bandpaßfilterung der V(n) Datensequenz hat. Der Durchlaßbereich ist bei wc zentriert, der Quadraturmodulations-/Demodulationsfrequenz, und die Breite des Durchlaßbandes wird aus der Bandbreite der verwendeten Tiefpaßfilter bestimmt. Hinsichtlich einer Erläuterung des Verfahrens der Quadraturmodulation, Tiefpaßdezimierungsfilterung, Interpolationsfilterung und Quadraturdemodulation einer digitalen Datensequenz wird auf die Seiten 48-52 der Veröffentlichung mit dem Titel Multirate Digital Signal Processing von Lawrence Raniner, 1983 von Prentice-Hall, Inc. herausgegeben, verwiesen.
- In der bevorzugten Ausführungsform der Erfindung führt der Mikroprozessor 22 eine Spektrumanalyse des gewählten Frequenzbereiches (Schritt 76) unter Verwendung einer diskreten Fourier-Transformation (geeigneterweise einer schnellen Fourier-Transformation) durch, um die komplexen Zeitbereichswellenformdatensequenzen a(m) und b(m) in eine Datensequenz umzuwandeln, welche die Frequenzbereichscharakteristika des interessierenden Bereiches im Eingangssignal V(t) darstellt. Der Mikroprozessor 22 wandelt dann diese Datensequenz in Anzeigedaten um, welche an die Anzeigesteuerung 28 übertragen werden, was die Anzeigesteuerung zum Erzeugen einer Anzeige auf dem Bildschirm von Kathodenstrahlröhre 32 veranlaßt, welche den positiven Frequenzabschnitten aus Fig. 3G ähnelt (Schritt 78). Die Verwendung einer diskreten Fourier-Transformation zur Umwandlung einer komplexen Zeitbereichsdatensequenz in eine entsprechende Frequenzbereichssequenz ist auf den Seiten 356-384 der Veröffentlichung mit dem Titel The Fourier Transform and Its Applications von Ronald N. Bracewell, 1986 von McGraw-Hill herausgegeben, beschrieben.
- Das Verfahren der Umwandlung von Datensequenzen in graphische Anzeigen ist dem Fachmann auf dem Gebiet wohlbekannt und daher hierin nicht weiter erläutert.
- Die Fig. 4A zeigt eine Wellenform 71, welche ein periodisches Signal darstellt, das mit einer Abtastfrequenz abgetastet wird, die weniger als die doppelte Frequenz der Wellenform ist, wobei die Punkte 73 die vorgenommenen Abtastungen darstellen. Wenn die Abtastwerte digitalisiert und als Punkte 75 auf einem digitalen Oszilloskopbildschirm abgebildet werden, wie es in Fig. 4B gezeigt ist, dann neigt ein Betrachter dazu, die Punkte als Darstellung einer Wellenform 77 mit niedrigerer Frequenz als die abgetastete Wellenform zu betrachten. Dieser Alias-Effekt liegt vor, wenn ein anzuzeigendes Signal mit einer Frequenz abgetastet wird, welche weniger als die doppelte Frequenz der gerade abgetasteten Wellenform ist.
- Bei typischen digitalen Oszilloskopen aus dem Stand der Technik wird jede Wellenform aus einer festen Anzahl von gespeicherten Abtastdatenpunkten angezeigt, ungeachtet der Abtastfrequenz. Um einen längeren Abschnitt (Zeitfenster) einer Eingangswellenform anzuzeigen, muß die Anzahl von pro Zeiteinheit gespeicherten Wellenformabtastungen durch Verringerung der Abtastgeschwindigkeit verringert werden. In diesem Fall wird die maximale Signalfrequenz, die ohne Alias- Effekt angezeigt werden kann, verringert.
- Beim digitalen Oszilloskop der vorliegenden Erfindung wird die Wellenformanzeige aus einer maximalen Menge gespeicherter Daten, ungeachtet der Signalfrequenz oder Fensterlänge, erstellt, aber die Menge von gespeicherten Daten begrenzt nicht die Länge des Wellenformzeitfensters der Wellenform, die angezeigt werden kann. Sie begrenzt einfach die Bandbreite des interessierenden Durchlaßbereiches, der angezeigt wird. Somit wird für das Beispielsignal aus Fig. 4A die abgetastete Wellenformdatensequenz bandpaßgefiltert, so daß sie keine Frequenzen nahe der Frequenz von Wellenform 77 aus Fig. 4B enthält, jedoch Frequenzen nahe der Frequenz von Wellenform 71 aus Fig. 4A aufweist. Nach Speicherung der bandpaßgefilterten Daten erzeugt das Oszilloskop zusätzliche Wellenformdaten durch Interpolation, wodurch eine Anzeige aus diesen erzeugt werden kann, die vielmehr wie Wellenform 71 aus Fig. 4A und nicht wie Wellenform 77 aus Fig. 4B erscheint. Das Oszilloskop stellt automatisch die Breite des Durchlaßbereiches auf das Maximum ein, was ermöglicht, daß darin enthaltene Signalkomponenten für eine gegebene Zeitfensterlänge und Mittelfrequenz ohne Alias-Effekt dargestellt werden. Das Oszilloskop kann auf einen Befehl der Bedienungsperson hin die Breite des Durchlaßbandes weiter verringern.
- Das Oszilloskop kann entweder im "Basisbereichs"- oder im "Bandpaß"-Modus betrieben werden. Im Basisbereichs-Modus wählt die Bedienungsperson die Länge des anzuzeigenden Zeitfensters und das Oszilloskop stellt automatisch die Mittelfrequenz und Bandbreite so ein, daß sich der anzuzeigende Bereich von Gleichstrom bis zur höchsten Frequenz erstreckt, die ohne Alias-Effekt angezeigt werden kann. Im Bandpaß-Modus wählt die Bedienungsperson die Mittelfrequenz und die Länge des Zeitfensters und das Oszilloskop stellt automatisch die Bandbreite des Durchlaßbandes ein, um einen Alias-Effekt zu verhindern.
- Die Fign. 5A-5E stellen eine Sequenz der Zeit- und Frequenzbereichsanzeigen dar, welche erstellt werden, wenn die Bedienungsperson den Basisband-Betriebsmodus wählt und dann die Länge des anzuzeigenden Zeitfenster progressiv erhöht. In der bevorzugten Ausführungsform der Erfindung ist das analoge Eingangssignal auf 2MHz bandbreitenbegrenzt und die Digitalisierungsgeschwindigkeit des Systems beträgt 4MHz. Die Fign. 5A und 5B zeigen die erstellten Zeit- und Frequenzbereichsanzeigen, wenn die Bedienungsperson ein Zeitfenster von 125 Mikrosekunden gewählt hat. Die Frequenzbereichsanzeige gibt an, daß das Signal drei Haupt-Frequenzbereiche hat, einen nahe 0 MHz, einen nahe 150 KHz und einen nahe 1,6 MHz. Diese drei Bereiche gehen auch aus der Zeitbereichsanzeige aus Fig. 5A hervor. Eine leicht nach unten gerichtete Neigung wird von niederfrequenten Signalkomponenten bei 0 Hz verursacht, eine größere Sinuskurve wird durch Signalkomponenten nahe 150 KHz gebildet und die dichte Erscheinung des 150 KHz Signals ist auf eine mit diesen überlagerte 1,6 MHz Signalkomponente zurückzuführen.
- Die Fign. 5C und 5D zeigen die Zeit- und Frequenzbereichsanzeigen, wenn die Bedienungsperson als nächstes ein Zeitfenster von 250 Mikrosekunden wählt. Um einen Alias-Effekt zu verhindern, verringert das Oszilloskop automatisch die Bandbreite der Wellenformanzeigedaten auf 1 MHz, indem es die Bandbreite der in den Schritten 54, 56, 60 und 62 aus Fig. 2 verwendeten Tiefpaßfilter einstellt. Die Programmierung der Filter erfolgt wie nachstehend im einzelnen ausgeführt. Um der längeren Fensterlänge Rechnung zu tragen, halbiert das Oszilloskop automatisch die Anzahl von Datenpunkten, welche im Speicher pro Zeiteinheit gespeichert sind, indem es den in den Schritten 54 und 56 verwendeten Dezimierungsfaktor M verdoppelt. (Der in den Schritten 60 und 62 verwendete Interpolationsfaktor L wird ebenfalls verdoppelt und so dem neuen Wert von M angepaßt). Eine Änderung des Dezimierungsfaktors erfolgt wie nachstehend im einzelnen ausgeführt. Die Frequenzbereichsanzeige aus Fig. 5D zeigt, daß die bandbreitenbegrenzten Wellenformdaten nunmehr nur zwei Haupt-Frequenzbereiche haben, in der Nähe von 0 MHz und 150 KHz; der Bereich bei 1,6 MHz wurde herausgefiltert. Die zwei verbleibenden Bereiche gehen aus der Zeitbereichsanzeige aus Fig. 5C hervor. Ein längerer Abschnitt eines Zyklus der Signalkomponente in der Nähe von 0 Hz und mehr Zyklen der von der 150 KHz Komponente beigetragenen Haupt-Sinusform werden angezeigt, die in Fig. 5A zu sehende 1,6 MHz Komponente jedoch wurde unterdrückt.
- Die Fign. 5E und 5F zeigen die Zeit- und Frequenzbereichsanzeigen, die gebildet werden, wenn die Bedienungsperson ein Zeitfenster von 500 Mikrosekunden wählt. Das Oszilloskop verringert wiederum automatisch die Bandbreite der Wellenformanzeigedaten auf 500 KHz, indem es die Bandbreite der in den Schritten 54, 56, 60 und 62 aus Fig. 2 verwendeten Tiefpaßfilter einstellt. Das Oszilloskop halbiert die Anzahl von im Speicher pro Zeiteinheit gespeicherten Datenpunkten, indem es den in den Schritten 54 und 56 verwendeten Dezimierungsfaktor M verdoppelt. Der in den Schritten 60 und 62 verwendete Interpolationsfaktor L wird ebenfalls wieder verdoppelt. Die Frequenzbereichsanzeige aus Fig. 5F zeigt, daß das bandbreitenbegrenzte Signal noch immer zwei Haupt-Frequenzbereiche in der Nähe von 0 MHz und 150 KHz hat. Fig. 5E veranschaulicht, daß noch mehr Zyklen der Signalkomponente in der Nähe von 150 KHz angezeigt werden und ein noch längerer Abschnitt eines Zyklus des Signals in der Nähe von 0 Hz angezeigt wird.
- Wenn somit das Oszilloskop im Basisbereichs-Modus arbeitet, dann verringert es automatisch die Bandbreite und erhöht den Dezimierungsfaktor der digitalen Filter, die die Abtastdaten verarbeiten, wenn die Bedienungsperson die Länge des anzuzeigenden Zeitfensters erhöht, so daß eine Wellenformanzeige ohne Alias-Effekt aus den gespeicherten Daten erstellt werden kann.
- Angenommen, die Bedienungsperson wählt nun den Durchlaßbereichs-Betriebsmodus, indem sie einen Mittelfrequenzwert an den Mikroprozessor 22 aus Fig. 1 legt. Die Fign. 6A-6F geben die auf dasselbe Eingangssignal aus dem Beispiel der Fign. 5A- 5F hin gebildete Sequenz von Anzeigen an, wenn die Bedienungsperson eine Mittelfrequenz von 150 KHz wählt und die Länge des Zeitfensters weiterhin erhöht. Die Fign. 6A und 6B zeigen die Zeit- und Frequenzbereichsanzeigen, die erzeugt werden, wenn die Bedienungsperson ein Zeitfenster von 1250 Mikrosekunden gewählt hat. Die Frequenzbereichsanzeige erstreckt sich nunmehr von 50 KHz bis 250 KHz. Der 150 KHz Bereich befindet sich in der Mitte der Anzeige und gibt an, daß Signalkomponenten in der Nähe von 0 Hz und 1,6 MHz unterdrückt sind. Die Zeitbereichsanzeige aus Fig. 6A zeigt auch, daß die Signalbereiche in der Nähe von 0 Hz und 1,6 MHz unterdrückt sind und das 150 KHz Signal durch ein anderes Signal moduliert ist. Die vertikale Verstärkung des Oszilloskops wurde erhöht, so daß die Modulation des 150 KHz Signals deutlicher gezeigt wird.
- Die Fign. 6C und 6D umfassen Zeit- und Frequenzbereichsanzeigen, wenn die Bedienungsperson ein Zeitfenster von 2500 Mikrosekunden gewählt hat. Das Oszilloskop begrenzt die Bandbreite automatisch auf 100 KHz, so daß die Frequenzbereichsanzeige aus Fig. 6D sich nunmehr von 100 KHz bis 200 KHz erstreckt, wobei der 150 KHz Bereich noch immer in der Anzeige zentriert ist. Die Spitze bei 150 KHz ist geteilt, was angibt, daß das Signal ein modulierter Träger ist. Die Zeitbereichsanzeige aus Fig. 6C zeigt mehr Zyklen des Trägers. Die Fign. 6E und 6F zeigen die Zeit- und Frequenzbereichsanzeigen, wenn die Bedienungsperson ein Zeitfenster von 5 Millisekunden gewählt hat. Das Oszilloskop begrenzt die Bandbreite automatisch auf 50 KHz, wodurch die Frequenzbereichsanzeige von Fig. 6F sich von 125 KHz bis 175 KHz ausweitet. Es ist zu bemerken, daß die Teilung in der Spitze bei 150 KHz ausgeprägter geworden ist und die Zeitbereichsanzeige aus Fig. 6C noch mehr Zyklen des Trägers zeigt.
- Durch eine einstellbare Bandpaßfilterung der digitalen Abtastdaten kann somit die Länge des Zeitfensters vergrößert werden, ohne die Wellenformanzeige einem Alias-Effekt auszusetzen. Da außerdem das Vorhandensein von hochfrequenten Signalkomponenten die Betrachtung von niederfrequenten Signalkomponenten beeinträchtigt und umgekehrt, verbessert die Fähigkeit zur Bandpaßfilterung der Wellenformdatensequenz die Möglichkeit der Bedienungsperson zum Studieren von Signalen, da sie der Bedienungsperson erlaubt, das zeitabhängige Verhalten verschiedener Durchlaßbereiche separat zu betrachten.
- In Fig. 7, welche die Wellenformdatenverarbeitungseinheit 18 aus Fig. 1 in Blockschaltbildform zeigt, werden die Quadraturmodulation und -demodulation (Schritte 48 und 64 aus Fig. 2) von einem Modulator 80 durchgeführt und die Dezimierungs- und Interpolationsfilterung (Schritte 54, 56, 60 und 62 aus Fig. 2) werden von den mehrstufigen digitalen Filtern 82 und 83 durchgeführt. Die vom Digitalisiergerät 16 aus Fig. 1 angelegte Wellenformdatensequenz V(n) wird über einen Puffer 84 mit drei Zuständen als Eingang an den Modulator 80 gelegt, und der Modulator 80 erzeugt daraus abwechselnd die komplexen Wellenformdatensequenzen a(n) und b(n). Die a(n) Datensequenz wird durch einen Puffer 86 mit drei Zuständen an einen Eingang eines Mehrstufenfilters 82 gelegt und die b(n) Datensequenz wird durch einen Puffer 87 mit drei Zuständen an einen Eingang eines ähnlichen Mehrstufenfilters 83 gelegt. Die Mehrstufenfilter 82 und 83 führen eine Tiefpaßfilterung der Sequenzen a(n) und b(n) durch, um die entsprechenden tiefpaßgefilterten, dezimierten Sequenzen a(m) und b(m) zu bilden, die durch die Puffer 88 bzw. 89 mit drei Zuständen zur Speicherung an den Erfassungsspeicher 20 aus Fig. 1 übertragen werden. Um eine Frequenzbereichsanzeige zu bilden, greift der Mikroprozessor 22 aus Fig. 1 über einen Bus 34, der über einen Dreizustandspuffer 94 mit dem Erfassungsspeicher verbunden ist, auf Sequenzen a(m) und b(m) zu, die im Erfassungsspeicher 20 gespeichert sind.
- Sollen die im Erfassungsspeicher 20 gespeicherten Sequenzen a(m) und b(m) vor der Bildung einer Zeitbereichsanzeige interpoliert und demoduliert werden, dann werden entsprechende Elemente dieser Sequenzen über die Dreizustandspuffer 90 bzw. 91 abwechselnd an die Eingänge der Mehrstufenfilter 82 und 83 übertragen. Die Mehrstufenfilter 82 und 83 interpolieren dann diese Datensequenzen, um gleichzeitig entsprechende Elemente der Sequenzen a'(n) bzw. b'(n) zu erstellen, welche über die Dreizustandspuffer 92 bzw. 93 abwechselnd an den Eingang von Modulator 80 gelegt werden. Der Modulator 80 nimmt eine Quadraturdemodulation der Sequenzen a'(n) und b'(n) vor und erstellt die Ausgangswellenformdatensequenz V'(n), welche über den Bus 34 durch einen Dreizustandspuffer 95, der den Ausgang von Modulator 80 mit dem Bus 34 verbindet, an den Mikroprozessor 22 aus Fig. 1 übertragen wird. Die Zustände der Dreizustandspuffer 84-95 werden von Daten gesteuert, die vom Mikroprozessor 22 auf den Bus 34 gelegt werden, wobei diese Daten durch einen Latch 96 auf Steueranschlüsse der Puffer 84- 95 gelegt werden. Der Mikrocomputer 22 steuert auch den Betrieb von Modulator 80 und Mehrstufenfilter 82 und 83 durch Daten- und Steuersignale, die über den Bus 34 übertragen werden.
- In Fig. 8 ist in Blockschaltbildform eine mehrstufige digitale Filterschaltung 110 abgebildet, welche zur Verwendung als Filter 82 oder 83 der Wellenformdatenverarbeitungsvorrichtung 18 aus Fig. 7 geeignet ist. Die Filterschaltung 110 ist so ausgelegt, daß sie gemäß einer programmäßig bestimmten Transferfunktion eine Eingangsdatensequenz X von einem Sequenzgenerator 112 (wie zum Beispiel Modulator 80 aus Fig. 7) in eine Ausgangsdatensequenz Y umwandelt und die Ausgangsdatensequenz an eine Zielvorrichtung 114 (wie beispielsweise Erfassungsspeicher 20 aus Fig. 1) legt.
- Die Filterschaltung 110 umfaßt eine Datenwegeinheit 116, welche so ausgelegt ist, daß sie jedes Element Y(i) der Ausgangsdatensequenz Y gemäß den Werten eines oder mehrerer Elemente X(0) bis X(i) der Eingangsdatensequenz X berechnet. Die Filterschaltung 110 umfaßt auch eine Zustandsmaschine 118 zum Steuern des Betriebes der Datenwegeinheit 116 durch Übertragen von Sequenzen von Daten- und Steuersignalen an die Datenwegeinheit 116 und zum Steuern von Eingabe/Ausgabe- Quittungsbetrieb ("Handshaking") zwischen der Datenwegeinheit 116, dem Sequenzgenerator 112 und der Zielvorrichtung 114.
- Die Grundfunktion der Zustandsmaschine 118, die Erzeugung vorbestimmter Muster von Daten- und Steuersignalen als Reaktion auf Dateneingabemuster, kann auf vielerlei wohlbekannte Art und Weise implementiert werden. Wie in Fig. 8 gezeigt, umfaßt die Zustandsmaschine 118 geeigneterweise einen Speicher mit wahlfreiem Zugriff (RAM) 120 und ein Register 122, welches von einem extern erzeugten Taktsignal getaktet wird. Der RAM 120 arbeitet normalerweise in einem Lese-Modus, und im RAM 120 gespeicherte adressierte Daten geben einen Eingang an das Register 122. Der Ausgang von Register 122 legt Daten- und Steuersignale an die Datenwegeinheit 116, ein Bestätigungssignal (XACK) an den Sequenzgenerator 112 und ein Bereit-Signal (YRDY) an die Zielvorrichtung 114. Das Register 122 speichert und rückkoppelt über einen Multiplexer 124 auch Zustandsdaten an die Adressieranschlüsse von RAM 120. Ein Daten-Bereit-Signal (XRDY), welches vom Sequenzgenerator 112 angelegt wurde, und ein Datenbestätigungssignal von der Zielvorrichtung 114 werden über Multiplexer 124 mit zusätzlichen Adressiereingängen von RAM 120 verbunden.
- Um den Betrieb des digitalen Filters 110 umzuprogrammieren, können die im RAM 120 gespeicherten Daten von einem Host- Rechner 126 (beispielsweise Mikroprozessor 22 aus Fig. 1) geändert werden, der über den Multiplexer 124 auf die Dateneingangsanschlüsse von RAM 120 und auch auf die Adreßanschlüsse von RAM 120 zugreifen kann. Der Host-Rechner 126 steuert den Schaltzustand von Multiplexer 124 und einen Lese/Schreib-Steueranschluß von RAM 120. Der Host-Rechner 126 kann die Zustandsmaschine 110 über ein RESET-Signal, welches über den Multiplexer 124 an die Adreßanschlüsse von RAM 120 angelegt wird, auf einen anfänglichen Zustand zurückstellen, und kann Zustandsveränderungen in der Zustandsmaschine 110 mit einem HALT-Signal sperren, welches ebenfalls über den Multiplexer 124 an die Adreßanschlüsse von RAM 120 gelegt wird.
- In der bevorzugten Ausführungsform hat die Filterschaltung 110 1 bis 8 digitale Filterstufen. Jede Filterstufe ist ein Filter, welches auf einen Impuls von endlicher Dauer anspricht, welches eine Ausgangsdatensequenz w als Reaktion auf eine Eingangsdatensequenz v erzeugt, und die Stufen sind kaskadenartig angeordnet, so daß die Ausgangssequenz w, die von der einen Stufe erzeugt wird, die Eingangssequenz v an die nächste Stufe wird. Jede Stufe kann eine andere Transferfunktion haben, wobei das "ite" Ausgangssequenzelement w(i) eine Summe von Termen ist, wobei jeder Term das Produkt aus einem ausgewählten Eingangssequenzelement v(0) bis v(i) und einem ausgewählten Koeffizienten h(n) ist. Zum Beispiel kann die Transferfunktion für eine lineare direkte FIR-Filterstufe die folgende Form haben:
- Wie aus Gleichung [2] hervorgeht, wird ein Ausgangssequenzelement w(i) für jedes Eingangssequenzelement v(i) und Element w(N) der w Sequenz erzeugt und jedes nachfolgende Element w(i) umfaßt die Summe von N-Produkttermen (d.h. die Filterstufe hat die "Länge" N). Transferfunktionen von anderer Form als der in Gleichung [2] gezeigten sind ebenfalls möglich, wie nachstehend ausgeführt ist.
- Für eine Stufe der Länge N=3 mit einer Transferfunktion gemäß Gleichung [2] ist aus Gleichung [2] zu sehen, daß die ersten fünf Elemente w(i) der Ausgangssequenz w so sind, wie sie in der nachstehenden Tabelle I gezeigt werden: TABELLE I
- Tabelle I zeigt, daß jedes Element v(i) der Eingangssequenz v drei Produkte bildet, h(0)*v(i), h(1)*v(i) und h(2)*v(i), und daß jedes nachfolgende Produkt als Term in einer Summe enthalten ist, welche mit einem separaten, nachfolgenden Element w(i) der Ausgangssequenz y verbunden ist.
- In Fig. 9, welche eine Datenwegeinheit 116 aus Fig. 8 in vereinfachter Blockschaltbildform darstellt, weist die Datenwegeinheit 116 einen Multiplizierer 130 zum Erzeugen jedes Terms h(n)*v(i-n) für jedes Element der Ausgangssequenz w einer jeden Filterstufe und einen Akkumulator 132 zum Akkumulieren (Summieren) der von dem Multiplizierer erzeugten Terme auf, um Ausgangssequenzelemente w(i) zu erzeugen. Um somit die direkte FIR-Filterausgangssequenz zu erzeugen, welche in Tabelle I gezeigt ist, multipliziert die Datenwegeinheit 116 jedes eingehende Sequenzelement v(i) mit drei Koeffizienten h(0), h(1) und h(2) und addiert jedes sich ergebende Produkt zu einer separaten akkumulierten Teilsumme R(i), R(i+1) und R(i+2), wobei jede Summe mit einem separaten Ausgangssequenzelement w(i), w(i+1) und w(i+2) verbunden ist. Wenn alle mit einem bestimmten Ausgangssequenzelement w(i) für eine bestimmte Stufe verbundenen Terme akkumuliert sind, dann wird der sich ergebende akkumulierte Wert als das Ausgangselement w(i) der nächsten Filterstufe erstellt.
- Für jede Stufe wird das nächste vom Multiplizierer 130 zu multiplizierende Eingangssequenzelement von einem Multiplexer 131 gewählt. Soll der Multiplizierer 130 einen Term für die erste Stufe eines Kaskadenfilters erzeugen, dann wählt der Multiplexer 131 X(i), das aktuelle Element der Eingangssequenz, für die Kaskade. Soll der Multiplizierer 130 einen Term für eine andere Filterstufe als die erste Kaskadenstufe erzeugen, dann wählt der Multiplexer 131 w'(i), das letzte Ausgangssequenzelement, welches von der vorhergehenden Filterstufe erzeugt wurde. Der geeignete Koeffizient h(n), der dem Multiplizierer 130 eingegeben wird, wird von der Zustandsmaschine 118 aus Fig. 8 zugeführt.
- Der Akkumulator 132 besteht aus einem Addierer 134 und einem Speicher mit wahlfreiem Zugriff (RAM) 136. Der Addierer 134 ist so ausgelegt, daß er jeden von Multiplizierer 130 erzeugten Ausgangsterm zu einer im RAM 136 gespeicherten akkumulierten Summe R addiert. Die vom Addierer 134 erzeugte Summe kann dann im RAM 136 gespeichert werden, wodurch die akkumulierte Summe R mit dem Ergebnis der Addition ersetzt wird. Die Adressierung von RAM 136 wird von einem Adreßsignal (ADDR) gesteuert, welches von der Zustandsmaschine 118 aus Fig. 8 angelegt wird. Die Datenausgangsterminals von RAM 136 sind über einen Satz UND-Gatter 138 mit einem Eingang von Addierer 134 verbunden, wobei diese UND-Gatter 138 jeweils einen anderen Eingang haben, der von einem Signal NADD gesteuert wird, das durch die Zustandsmaschine 118 aus FIG. 8 zugeführt wird. Ist NADD niedrig, dann wird ein 0-Wert anstelle der gerade adressierten Daten im RAM 136 an den Addierer 134 geleitet. Das NADD-Signal kann niedrig getrieben werden, wenn der Ausgang von Multiplizierer 130 der erste Term einer im RAM 136 zu akkumulierenden Summe ist, so daß der Addierer 134 nur eine 0 zu diesem Term addiert und ihn zur Speicherung im RAM 136 weiterleitet. Der Ausgang von Addierer 134 ist über einen weiteren Satz von UND-Gattern 140 mit Dateneingangsanschlüssen von RAM 136 verbunden. Ein Signal NLOAD, welches von der Zustandsmaschine 118 erzeugt wird, wird an einen zusätzlichen Eingang eines jeden UND-Gatters 140 gelegt und wird niedrig getrieben, wenn RAM 136 einen 0-Wert anstelle des Ausgangs von Addierer 134 speichern soll. Das NLOAD-Signal ermöglicht, daß der Inhalt jedes beliebigen Speicherplatzes im RAM 136 erforderlichenfalls auf 0 initialisiert werden kann.
- Bei der Implementierung einer direkten FIR-Filterstufe mit voller Bandbreite und mit einer Transferfunktion gemäß Gleichung [2] werden insgesamt N-1 Speicherplätze für die Stufe in RAM 136 reserviert, um eine Akkumulation von N-1 Terme zu ermöglichen. Ist zum Beispiel N gleich 3, dann sind zwei Speicherplätze im RAM 136 vorgesehen, um teilweise akkumulierte Summen R(i) und R(i+1) für die nächsten beiden Terme w(i) und w(i+1) der Ausgangssequenz zu speichern. Wird v(i) zunächst an einen Eingang von Multiplizierer 130 gelegt, dann legt die Zustandsmaschine 118 den Koeffizienten h(0) an den anderen Eingang von Multiplizierer 130 und der Multiplizierer erstellt den Term h(0)*v(i). Der Addierer 134 summiert dann diesen Term mit der teilweise akkumulierten Summe R(i) für w(i), wie sie in RAM 136 gespeichert ist, und erstellt das Ergebnis als nächstes Element w(i) der Filterstufe. Der Wert von w(i) ist nicht in RAM 136 gespeichert. Stattdessen wird das an das AND-Gatter 140 gelegte NLOAD-Signal niedrig getrieben und die akkumulierte Summe R(i) im Speicherplatzbestand von RAM 136, der mit w(i) verbunden ist, wird auf 0 initialisiert und anschließend zum Akkumulieren der Teilsumme R(i+N- 1) verwendet, welche mit dem Ausgangssequenzelement w(i+N-1) verbunden ist.
- Die Zustandsmaschine 118 legt als nächstes den Koeffizienten h(1) an den Multiplizierer 130, so daß der Multiplizierer den Term h(1)*v(i) bildet. Der Addierer 134 addiert diesen Term zu der akkumulierten Summe für Element w(i+1), welche im RAM 136 gespeichert ist. Die sich ergebende Teilsumme R(i+1), welche noch nicht alle Terme beinhaltet, die das Element w(i+1) umfassen, wird dann in RAM 136 gespeichert, um den letzten akkumulierten Wert von R(i+1) zu aktualisieren.
- Als nächstes legt die Zustandsmaschine 118 den Koeffizienten h(2) an den Multiplizierer 130, welcher einen weiteren Term h(2)*v(i) erzeugt, den ersten Term des Stufenausgangssequenzelementes w(i+2). Das an die UND-Gatter 138 angelegte NADD- Signal wird niedrig getrieben, so daß der Addierer 134 diesen Term mit 0 summiert. Der sich ergebende Ausgang von Addierer 134 wird als Teilsumme R(i+2) an der Adresse von RAM 136 gespeichert, welche vorher die akkumulierte Teilsumme R(i) für das aktuelle Stufenausgangselement w(i) enthielt. An diesem Punkt kann der Multiplexer 131 ein neues Eingangssequenzelement v(i+1) als Eingang an den Multiplizierer 130 legen, und der Vorgang des Multiplizierens dreier Koeffizienten h(0), h(1) und h(2) mit dem Eingangssequenzelement und des Akkumulierens dreier Produktterme wird wiederholt.
- Somit werden jedesmal, wenn ein Eingangssequenzelement v(i) an eine bestimmte Stufe vom Multiplexer 131 gewählt wird, eine Gesamtsumme von N Produkttermen vom Multiplizierer 130 gebildet, von denen einer zu einer akkumulierten Teilsumme R(i) addiert wird, um ein Ausgangssequenzelement w(i) zu erstellen und die verbleibenden N-1 Terme werden zu Teilsummen R(i+1) bis R(i+N-1) akkumuliert, welche mit Ausgangssequenzelementen w(i+1) bis w(i+N-1) assoziiert sind, wobei die Teilsummen im RAM 136 gespeichert werden.
- Wenn der Addierer 134 den letzten Term zu einer akkumulierten Summe R(i) addiert, um das resultierende Ausgangssequenzelement w(i) einer bestimmten Stufe zu erzeugen, und wenn die Stufe zufällig die letzte Stufe des Kaskadenfilters ist, dann wird w(i) aus der Datenwegeinheit 116 heraus als nächstes Element Y(i) der Ausgangssequenz Y übertragen. Ist jedoch der aktuelle w(i)-Ausgang von Addierer 134 ein Element einer Ausgangssequenz w einer anderen Stufe als der letzten Stufe, dann wird w(i) in einem anderen RAM 142 gespeichert. Der RAM 142 hat einen Speicherplatz zum Halten des "jüngst" erzeugten Ausgangssequenzelementes w(i) für jede Zwischenstufe, die nicht die letzte Stufe ist.
- Da die Filterstufen kaskadisch angeordnet sind, wird das Ausgangselement w(i) einer Stufe zu dem Eingangselement der nächsten. Dementsprechend kann das im RAM 142 gespeicherte Ausgangselement w(i) für jede Zwischenstufe als das nächste Element w'(i) der w'-Sequenz-Eingabe an den Multiplexer 131 gelegt werden und der Multiplexer 131 kann dieses Element als das nächste Element v(i) der Stufe wählen und es an den Multiplizierer 130 legen.
- Somit ermöglicht der "Rückkopplungs"-Weg zwischen dem Ausgang von Addierer 134 und dem Eingang an den Multiplizierer 130, wie er vom RAM 142 und Multiplexer 131 bereitgestellt wird, daß die Datenwegeinheit 116 die Funktionen mehrerer Filterstufen auf "Zeitverschachtelungs"-Basis ("Timesharing") durchführt. Zum Beispiel können der Multiplizierer 130 und der Akkumulator 132 ein Eingangssequenzelement für eine erste Stufe verarbeiten, indem sie ein Element v(i) von Sequenz v als Eingang an den Multiplizierer 130 wählen, und dann ein Eingangssequenzelement für eine zweite Stufe verarbeiten, indem sie ein Element w' (i) von Sequenz w' als Eingang an den Multiplizierer 130 wählen, gefolgt von der Verarbeitung eines nächsten Eingangssequenzelementes v(i+1) für die erste Stufe durch Anlegen dieses Elementes an den Multiplizierer 130.
- Die Zustandsmaschine 118 steuert den Datenfluß durch die Datenverarbeitungseinheit 116, so daß die Datenverarbeitungseinheit Stufenberechnungen in umgekehrter Reihenfolge Priorität verleiht, wobei die letzte Stufe die höchste Priorität und die erste Stufe die niedrigste Priorität hat. Wenn daher ein Eingangssequenzelement für die letzte Kaskadenstufe im RAM 142 verfügbar ist, dann wird dieses Element als nächster Eingang an den Multiplizierer 130 gelegt. Umgekehrt wird ein Eingangssequenzelement X(i) einer Datenverarbeitungseinheit nur dann an den Eingang von Multiplizierer 130 gelegt, wenn der RAM 142 leer ist. Somit haben Berechnungen für eine spätere Stufe immer Priorität vor Berechnungen für eine vorhergehende Stufe.
- Ein detaillierteres Blockschaltbild der Datenwegeinheit 116 in Fig. 10 zeigt zusätzliche Merkmale der Einheit. Wie nachstehend im einzelnen ausgeführt ist, wird die Betriebsgeschwindigkeit der Datenwegeinheit 116 durch "Pipelining" der Daten durch den Multiplexer 131, den Multiplizierer 130, den Addierer 134 und den RAM 142 unter Verwendung von Latches und Registern verbessert, um die Daten durch jede Verarbeitungsstufe hindurchzutakten, wodurch die Stufen gleichzeitig arbeiten können. Ein Schieberegister 158 ist vorgesehen, um Ausgangsterme von dem Multiplizierer 130 um einen Faktor zwei selektiv zu erhöhen oder zu erniedrigen, oder den Term unverändert weiterzuleiten, wodurch eine selektive Skalierung dieser Terme möglich wird. Die Geschwindigkeit, mit der der Akkumulator 132 Akkumulationsvorgänge für gewisse Arten von Filterstufen durchführt (wie sie im einzelnen nachstehend beschrieben sind), wird verbessert, indem RAM 136 als Random Access Speicher mit zwei Ports und ein zusätzlicher Addierer 135 vorgesehen ist, um den Addierer 134 bei der Durchführung von Akkumulationsoperationen zu unterstützen. Es sind auch Vorkehrungen getroffen, um den Datenfluß durch die Datenwegeinheit erforderlichenfalls vorübergehend anzuhalten.
- In Fig. 10 werden die Eingangssequenzelemente X(i) der 18-Bit Datenwegeinheit von einem Latch 150 auf den Eingang von Multiplexer 131 gelatcht und der Ausgang von Multiplexer 131 und die 18-Bit Koeffizienten h(n) werden durch Latchs 152 bzw. 154 auf Eingänge von Multiplizierer 130 gelatcht. Der 22-Bit Ausgang von Multiplizierer 130 wird durch einen Latch 156 an den Eingang von Schieberegister 158 angelegt, und die 20 höchstwertigen Bits des 21-Bit Ausgangs von Schieberegister 158 legen einen Eingang an den Addierer 134 sowie an den Adddierer 135. Ein Multiplexer 160 multiplext die 20-Bit Ausgänge der Addierer 134 und 135 auf den Eingang eines Registers 162 und die 18 höchstwertigen Bits des Inhaltes von Register 162 werden als Eingang an eine logische Abrundeschaltung 164 gelegt.
- Der 18-Bit Ausgang der logischen Abrundeschaltung 164 wird einem Latch 166 und Dateneingangsanschlüssen von RAM 142 eingegeben.
- Der Ausgang von Addierer 134 und ein Signal NLOADA werden als Eingänge an einen Satz von 20 UND-Gattern 140 gelegt, während die Ausgänge der UND-Gatter 140 mit Dateneingangsanschlüssen von Port A des RAM 136 mit zwei Ports gelegt werden. Die Datenausgangsanschlüsse von Port A von RAM 136 sind zusammen mit Signal NADDA Eingänge an einen Satz von 20 UND-Gattern 138, deren Ausgänge einen Eingang von Addierer 134 treiben. Ähnlich werden der Ausgang von Addierer 135 und ein Signal NLOADB als Eingänge an einen Satz von 20 UND-Gattern 141 gelegt, während die Ausgänge der UND-Gatter 141 an die Dateneingangsanschlüsse von Port B des RAM 136 mit zwei Ports gelegt werden. Die Datenausgangsanschlüsse von Port B steuern, zusammen mit einem Signal NADDB, Eingänge eines Satzes von 20 UND-Gattern 139, deren Ausgänge Eingang an den Addierer 135 sind. Wenn sie von dem Ausgang eines NICHT-UND-Gatters 180, welches von einem Systemtaktsignal an seinem Eingang getrieben wird, schreibfreigegeben sind, dann latchen ein Paar Latchs 168 und 170 die Adressiersignale RAMADDRA und RAMADDRB, die von der Zustandsmaschine 118 aus Fig. 8 erzeugt werden, auf Adressieranschlüsse von Ports A bzw. B des RAM 136 mit zwei Ports. Die Signale WEDAR und WEDBR, die von der Zustandsmaschine 118 angelegt werden, steuern, ob die Ports A bzw. B lese- oder schreibfreigegeben sind.
- Bei der Durchführung von Filterstufenoperationen gemäß der direkten FIR-Filtertransferfunktion aus Gleichung [2] kann, wenn die Zustandsmaschine 118 aus Fig. 8 ein XRDY-Signal vom Sequenzgenerator 112 empfängt, das anzeigt, daß ein 18-Bit Element X(i) von Eingangssequenz X am Eingang von Latch 150 verfügbar ist, die Zustandsmaschine 118 ein Freigabesignal WEIN an einen Latch 150 übertragen, was den Latch 150 veranlaßt, X(i) an den Multiplexer 131 weiterzuleiten. Wenn die Zustandsmaschine 118 anschließend bestimmt, daß X(i) verarbeitet werden soll, dann überträgt sie ein Signal INPSTG an den Multiplexer 131, was bewirkt, daß der Multiplexer X(i) an einen Latch 152 weiterleitet. Zur gleichen Zeit setzt die Zustandsmaschine 118 einen 18-Bit Koeffizienten h(0) auf den Eingang zu Latch 154. Wenn die Zustandsmaschine 118 bestimmt, daß der Multiplizierer 130 seinen letzten Multiplikationsvorgang vollzogen hat, dann überträgt die Zustandsmaschine ein Freigabesignal WEX an ein NICHT-UND-Gatter 172, was das NICHT- UND-Gatter dazu veranlaßt, die Latchs 152 und 154 freizugeben, wodurch X(i) und h(0) an Eingänge von Multiplizierer 130 gelegt werden. Der Multiplizierer 130 berechnet dann h(0)*v(i) und leitet es an Latch 156. Der Latch 156, welcher durch ein Systemtaktsignal, das über ein NICHT-UND-Gatter 174 wirkt, eingabefreigegeben ist, leitet den 22-Bit Ausgang von Multiplizierer 130 an Schieberegister 158.
- Die Zustandsmaschine 118 legt ein Paar Steuersignaleingänge SHFL und SHFR an Schieberegister 158. Wenn nur SHFL gesetzt ist, multipliziert das Schieberegister seinen Eingang mit 2 und leitet die 21 höchstwertigen Bits des Ergebnisses an die Addierer 134 und 135. Wenn nur SHFR gesetzt ist, dann teilt das Schieberegister 158 seinen Eingang durch zwei. Wenn weder SHFL noch SHFR gesetzt ist, dann leitet das Schieberegister seinen Eingang unverändert an die Addierer 134 und 135 weiter. Obwohl das Schieberegister 158 einen 21-Bit-Ausgang hat, werden nur die 20 höchstwertigen Bits als Eingänge der Addierer 134 und 135 angelegt. Das übrigbleibende niedrigstwertige Bit wird an den Carry-In- (CIN) Eingang eines jeden Addierers angelegt, um eine Abrundung des Multiplizierer-Ausganges zu bewirken.
- Der zusätzliche Addierer 135 ist vorgesehen, um gleichzeitig mit dem Addierer 134 Akkumulationen für Filterstufen durchzuführen, welche mit "symmetrischen" Koeffizienten h(n) implementiert werden, beispielweise FIR-Filterstufen mit linearer Phase, in denen für alle h(n), h(n) = h(N-1-n) ist. Zum Beispiel wenn N=7 ist, dann ist h(0) = h(6), h(1) = h(5) und h(2) = h(4). Sind die Koeffizienten symmetrisch, dann hat ein Term h(n)*v(i), der vom Multiplizierer 130 erzeugt wird, denselben Wert wie der Term h(N-1-n)*v(i). Daher kann der Addierer 135, welcher unabhängigen Zugriff auf den RAM 136 mit zwei Ports hat, eine Akkumulation für den Term h(N-1-n)*v(i) unter Verwendung des Wertes von h(n)*v(i) zur gleichen Zeit durchführen, in der der Addierer 134 die Akkumulation für den Term h(n)*v(i) durchführt. Dies verdoppelt im wesentlichen die Geschwindigkeit, mit der die Datenwegeinheit 116 ein Eingangssequenzelement an eine symmetrische Koeffizientenfilterstufe verarbeiten kann.
- Wenn der Addierer 134 oder 135 eine vollständig akkumulierte Summe R(i) erzeugt, die mit einem Ausgangssequenzelement w(i) verbunden ist, dann überträgt die Zustandsmaschine 118 ein Signal SPBTQ an den Multiplexer 160, um den Ausgang des Addierers 134 oder 135 an den Eingang von Register 162 zu legen. Die Zustandsmaschine 118 überträgt anschließend ein Freigabesignal WESTG an ein NICHT-UND-Gatter 176 und der Ausgang von NICHT-UND-Gatter 176 gibt ein Register 162 frei. Die 18 in Register 162 gespeicherten höchstwertigen Bits werden an Eingangsanschlüsse der Abrundeschaltung 164 gelegt, während das niedrigstwertige Bit (LSB2), das nächste niedrigstwertige Bit (LSB1) und das höchstwertige Bit (MSB) der in Register 162 gespeicherten Daten an Steueranschlüsse von Schaltung 164 gelegt werden. Die Schaltung 164 erhöht ihre 18 Bit Eingangsdaten, die in der folgenden Wahrheitstabelle gezeigt sind: TABELLE II Erhöhen NEIN JA
- Wenn der 18-Bit Ausgang der Abrundeschaltung 164 ein Element Y(i) der Ausgangssequenz der Datenwegeinheit ist, dann überträgt die Zustandsmaschine 118 ein Freigabesignal WEOUT an einen Eingang eines NICHT-UND-Gatters 178. Der Ausgang von NICHT-UND-Gatter 178 bewirkt, daß der Latch 166 Y(i) auf Ausgangsanschlüsse der Datenwegeinheit latcht. In Fig. 8 überträgt die Zustandsmaschine 118 dann das YRDY-Signal an die Zielvorrichtung 114 und wenn die Vorrichtung 114 Y(i) annimmt, dann bestätigt sie den Empfang durch Setzen des YACK-Signals.
- Ist der Ausgang w(i) der Abrundeschaltung 164 ein Element in der Ausgangssequenz einer Zwischenfilterstufe, welche nicht die letzte Kaskadenstufe ist, dann adressiert die Zustandsmaschine 118 den RAM 142 mit der Adresse eines Speicherplatzes, der mit dieser Zwischenstufe verbunden ist, unter Verwendung eines Adreßsignals ADRSTR. Die Zustandsmaschine 118 überträgt dann ein WESTR-Signal an ein NICHT-UND-Gatter 182, dessen Ausgang den RAM 142 schreibfreigibt, so daß der RAM 142 w(i) speichert. Wenn die Zustandsmaschine 118 anschließend bestimmt, daß der gespeicherte w(i) Wert als nächstes als ein Eingangssignal an die nächste Filterstufe verarbeitet werden soll, gemäß der oben erläuterten Prioritätenreihenfolge, dann überträgt sie das geeignete Adreß-ADRSTR-Signal an den RAM 142, wodurch der Wert von w(i) darin gespeichert wird.
- Die NICHT-UND-Gatter 172, 174, 176, 178, 180 und 182 haben jeweils ein Signal NSTOP, welches von der Zustandsmaschine 118 als zusätzlicher Eingang zugeführt wird, und wenn NSTOP niedrig getrieben ist, dann können die Latchs 152, 154, 156, 166, 168 und 170, das Register 162 und der RAM 142 nicht zum Schreiben freigegeben werden. Ein NSTOP-Signal wird ebenfalls an die Freigabeeingänge der Ports A und B von RAM 136 angelegt und wenn NSTOP gesetzt ist, dann kann der RAM nicht adressiert oder auf ihn zugegriffen werden. Wenn NSTOP gesetzt ist, dann wird somit der Datenverarbeitungsvorgang der Datenwegeinheit 116 angehalten. Die Zustandsmaschine 118 treibt NSTOP niedrig, wenn die Datenverarbeitungs-Leitung (Pipeline) innerhalb der Datenverarbeitungseinheit 116 voll ist und die Zielvorrichtung 114 gegenwärtig nicht in der Lage ist, ein anderes Ausgangssequenzenelement Y(i) anzunehmen.
- Es wurde eine mehrstufige programmierbare digitale Filterschaltung beschrieben, bei der jede Stufe gemäß der obenstehenden Gleichung [2] eine Ausgangssequenz W als Reaktion auf eine Eingangssequenz v erstellt. Es versteht sich jedoch, daß die Datenwegeinheit digitale Filterstufen mit anderen Transferfunktionen als die in Gleichung [2] ausgedrückten implementieren kann, da das bestimmte Muster von Steuersignalen, die die Zustandsmaschine 118 erzeugt, durch Änderung der in RAM 120 gespeicherten Daten geändert werden kann.
- Ein Dezimierungsfilter ist zum Beispiel ein Filter, bei dem die Anzahl von Termen in seiner Ausgangssequenz weniger ist als die Anzahl von Termen in seiner Eingangssequenz. Die Transferfunktion eines solchen Dezimierungsfilters, das die Elemente w(i) seiner Ausgangsdatensequenz zu Elementen v(i) seiner Eingangsdatensequenz in Bezug setzt, ist durch die folgende Gleichung gekennzeichnet:
- worin N die Länge des Filters ist, h(n) ein gewählter Koeffizient, M ein Dezimierungsfaktor und C eine Sequenzwahlkonstante. Für eine Stufe der Länge N=3, wobei M=2 und C=0 ist, mit einer Transferfunktion gemäß Gleichung [3], ist aus Gleichung [3] ersichtlich, daß die ersten fünf Elemente w(i) der Ausgangssequenz w so sind, wie sie in der nachstehenden Tabelle III gezeigt sind: TABELLE III
- In Fig. 10, wenn eine Filterstufe eine Transferfunktion gemäß Gleichung [3] hat, dann setzt die Zustandsmaschine 118 aus Fig. 8 das INPSTG-Signal, um v(0) an den Eingang von Latch 152 zu legen, setzt h(0) auf den Eingang von Latch 154 und setzt dann das WEX-Signal, wodurch h(0) und v(0) an die Eingänge von Multiplizierer 130 gelatcht werden. Der Ausgang von Multiplizierer 130 wird dann von Latch 156 gelatcht und verläuft durch Schieberegister 158 an den Addierer 134. Wenn NADDA niedrig getrieben ist, dann addiert der Addierer 134 h(0)*v(0) zu 0 und das Ergebnis wird als Ausgangssequenzelement w(0) erstellt. Die Zustandsmaschine 118 legt h(2) an den Eingang von Latch 154 und setzt das WEX-Signal, wodurch sie h(2) und v(0) an die Eingänge von Multiplizierer 130 latcht. Der Ausgang von Multiplizierer 130 wird durch Latch 156 und Schieberegister 158 an den Addierer 134 gelegt. Wenn NADDA wieder niedrig getrieben ist, addiert der Addierer 134 h(2)*v(0) zu 0 und die sich ergebende Teilsumme R(1) wird in RAM 136 gespeichert.
- Ist v(1) als nächstes an dem Eingang zu Multiplexer 131 verfügbar, dann setzt die Zustandsmaschine 118 aus Fig. 8 das INPSTG-Signal, um v(1) an den Eingang von Latch 152 zu legen, und setzt h(1) auf den Eingang von Latch 154, und setzt dann das WEX-Signal, wodurch h(1) und v(1) an die Eingänge von Multiplizierer 130 gelatcht werden. Der Ausgang von Multiplizierer 130 wird durch Latch 156 und Schieberegister 158 an den Addierer 134 geleitet. Wenn NADDA hoch getrieben ist, dann addiert der Addierer 134 h(1)*v(1) zu der akkumulierten Summe R(1), um das Ergebnis h(1)*v(1) + h(2)*v(0) zu erzeugen, welches in RAM 136 gespeichert wird, um den letzten gespeicherten Wert von R(1) zu aktualisieren.
- Wenn v(2) am Eingang zum Multiplexer 131 vorliegt, dann setzt die Zustandsmaschine 118 aus Fig. 8 das INPSTG-Signal, um v(2) an den Eingang von Latch 152 zu legen, setzt h(0) auf den Eingang von Latch 154 und setzt das WEX-Signal, um den Koeffizienten h(0) und das Sequenzelement v(2) an die Eingänge von Multiplizierer 130 zu latchen. Der Ausgang von Multiplizierer 130 wird durch Latch 156 und Schieberegister 158 an den Addierer 134 übertragen. Wenn NADDA hoch getrieben ist, dann addiert der Addierer h(0)*v(2) zu der akkumulierten Summe R(1), um das Ergebnis h(2)*v(2) + h(1)*v(1) + h(2)*v(0) zu erzeugen, welches als Stufenausgangssequenzelement w(1) durch den Multiplexer 160, das Register 162 und die Abrundeschaltung 164 geleitet wird.
- Die Zustandsmaschine 118 setzt dann h(2) am Eingang zu Latch 154 und setzt das WEX-Signal, um h(2) und v(2) an die Eingänge von Multiplizierer 130 zu latchen. Wenn der Ausgang von Multiplizierer 130 anschließend an den Addierer 134 geführt wird, dann wird NADDA niedrig getrieben, so daß der Addierer 134 h(2)*v(2) zu 0 addiert. Die sich ergebende Teilsumme R(2) wird in RAM 136 gespeichert.
- Ähnliche Multiplikations- und Akkumulationsvorgänge werden für jedes nachfolgende Element v(i) der Stufeneingangssequenz durchgeführt, so daß wenn i eine gerade ganze Zahl ist, sie mit h(0) und mit h(2) multipliziert wird, um Terme zu erzeugen, welche akkumuliert werden, um zwei aufeinanderfolgende Teilsummen R(i) und R(i+1) zu erzeugen, und so daß wenn i eine ungerade ganze Zahl ist, sie mit h(1) multipliziert wird, um einen Term zu erzeugen, welcher zu nur einer Teilsumme R(i) akkumuliert wird. Somit kann die Filterschaltung 110 auch Stufen aufweisen, welche als Dezimierungsfilter fungieren, wobei jede eine Ausgangsdatensequenz erstellen, die weniger Elemente hat als ihre Eingangsdatensequenz, und worin die Transferfunktion, die die Ausgangs- und Eingangssequenzen verbindet, programmierbar bestimmt wird.
- Die Filterschaltung 110 kann Stufen aufweisen, welche als Interpolationsfilter wirken, bei denen die Anzahl von Termen in ihrer Ausgangssequenz größer ist als die Anzahl von Termen in ihrer Eingangssequenz. Die Transferfunktion eines solchen Interpolationsfilters, welches die Anzahl von Elementen in einer Eingangssequenz verdoppelt, um eine Ausgangssequenz zu erzeugen, ist durch folgende Gleichungen gekennzeichnet:
- worin Lim1 = (N-1)/2 und Lim2 = ((N-1)/2)-1 ist, wenn N ungerade ist, und worin Lim1 = (N-2)/2 und Lim2 = (N-2)/2 ist, wenn N gerade ist.
- Für eine Stufe der Länge N=5 mit einer Transferfunktion gemäß den Gleichungen [4] und [5] ist zu sehen, daß die ersten acht Terme w(i) der Ausgangssequenz w so sind, wie sie in der nachstehenden Tabelle IV gezeigt sind: TABELLE IV
- In Fig. 10, wenn eine Filterstufe eine Transferfunktion gemäß den Gleichungen [4] und [5] hat, dann setzt die Zustandsmaschine 118 aus Fig. 8 das INPSTG-Signal, um v(0) an den Eingang von Latch 152 zu legen, setzt h(0) auf den Eingang von Latch 154 und setzt dann das WEX-Signal, wodurch h(0) und v(0) auf die Eingänge von Multiplizierer 130 gelatcht werden. Der Ausgang von Multiplizierer 130 wird von Latch 156 und Schieberegister 158 an den Addierer 134 gelegt. Wenn NADDA niedrig getrieben ist, dann addiert der Addierer 134 h(0)*v(0) zu 0 und das Ergebnis wird als Ausgangssequenzelement w(0) erzeugt. Die Zustandsmaschine 118 legt h(1) an den Eingang von Latch 154 und setzt das WEX-Signal, um h(1) und v(0) auf die Eingänge von Multiplizierer 130 zu latchen. Der Ausgang von Multiplizierer 130 wird an den Addierer 134 gelegt und wenn NADDA wieder niedrig getrieben ist, dann addiert der Addierer 134 h(1)*v(0) zu 0. Das Ergebnis wird von Multiplexer 160 an das Register 162 gelegt, um das Ausgangssequenzelement w(1) zu erstellen.
- Die Zustandsmaschine 118 legt dann h(2) an den Eingang von Latch 154 und setzt das WEX-Signal, um h(2) und v(0) an die Eingänge von Multiplizierer 130 zu latchen. Der Ausgang von Multiplizierer 130 wird an den Addierer 134 gelegt. Bei noch immer niedrigem NADDA addiert der Addierer 134 h(2)*v(0) zu 0 und die sich ergebende Teilsumme R(2) wird in RAM 136 gespeichert. Die Zustandsmaschine 118 legt als nächstes h(3) an den Eingang von Latch 154 und setzt das WEX-Signal, um h(3) und v(0) an die Eingänge von Multiplizierer 130 zu latchen. Bei noch immer niedrigem NADDA addiert der Addierer 134 anschließend das Produkt h(3)*v(0) zu 0 und die sich ergebende Teilsumme R(3) wird in RAM 136 gespeichert. Schließlich legt die Zustandsmaschine 118 h(4) an den Eingang von Latch 154 und setzt das WEX-Signal, um h(4) und v(0) an die Eingänge von Multiplizierer 130 zu latchen. Bei noch immer niedrigem NADDA addiert der Addierer 134 anschließend das Produkt h(4)*v(0) zu 0, um die Teilsumme R(4) zu erzeugen, welches alles in RAM 136 gespeichert wird.
- Danach setzt, wenn das Eingangssequenzelement v(1) an einen Eingang zu Multiplexer 131 verfügbar ist, die Zustandsmaschine 118 das INPSTG-Signal, um v(1) an den Eingang von Latch 152 zu legen. Die Zustandsmaschine bewirkt, daß der Datenmultiplizierer 130 sequentiell die Terme h(0)*v(1), h(1)*v(1), h(2)*v(1), h(3)*v(1), h(4)*v(1) erzeugt, und daß der Akkumulator 132 diese Terme jeweils zu den Summen R(2) bis R(6) akkumuliert, und veranlaßt hierbei den Akkumulator zur Erzeugung von Ausgangssequenzelementen w(2) und w(3). Anschließende Eingangssequenzelemente v(i) werden auf ähnliche Weise verarbeitet, so daß zwei Ausgangssequenzelemente w(2*i) und w(2*i+1) für jedes Eingangssequenzelement erzeugt werden.
- Daher ergibt sind, daß die Filterschaltung 110 dazu ausgelegt ist, digitale Kaskadenfilter zu implementieren, von denen einige Dezimierungs- oder Interpolationsfilter sein können, worin jede Stufe ihre Eingangsdatensequenz filtert, um gemäß einer programmierbar bestimmten Transferfunktion eine Ausgangsdatensequenz zu erzeugen, und wobei die Transferfunktion einer jeden Stufe unabhängig bestimmt werden kann. Die Filterschaltung 110 ist daher dazu ausgelegt, die Schritte 54, 56, 66 und 68 (siehe Fig. 2) des Wellenformdatenverarbeitungsverfahrens zu implementieren, wie es von dem Oszilloskop der vorliegenden Erfindung durchführt wird.
- Der Quadraturdemodulationsschritt 64 aus Fig. 2 wird von dem Modulator 80 aus Fig. 7 durchgeführt. Ein geeigneter Modulator 80, der in Blockschaltbildform in Fig. 11 dargestellt ist, weist einen Multiplizierer 200 zum Multiplizieren eines Elementes einer Eingangsdatensequenze a' (n) mit cos (wcn) auf, welches von einem Nur-Lese-Speicher (ROM) 202 erzeugt wurde, und anschließendes Multiplizierten eines entsprechend Elementes der Datensequenz b' (m) mit cos(wcn), welches auch von ROM 202 erzeugt wird. Das Ausgangsprodukt a'(n)*cos(wcn) von Multiplizierer 200 wird in einem Register 204 gespeichert, und das Ausgangsprodukt b'(n)*sin(wcn) wird in einem Register 206 gespeichert. Der Inhalt von Register 204 wird direkt an einen Eingang eines Addierers 210 gelegt und der Inhalt von Register 206 wird indirekt über einen Multiplexer 208 an einen anderen Eingangs von Addierer 210 gelegt. Der Addierer 210 kombiniert den Inhalt der Register 204 und 206, um V'(n) zu erstellen, welches in einem Register 212 zur anschließenden Übertragung an den Mikroporzessor 22 aus Fig. 1 gespeichert wird.
- Der ROM 202 speichert Sequenzen von Daten, welche Sinus- und Cosinusfunktionen darstellen, so daß, wenn seine Adresse progressiv in Schritten mit konstanter Größe inkrementiert wird, der ROM 202 die gewünschten Sinus- und Cosinusfunktionen auf verschachtelte Art und Weise erzeugt, wobei die Größe der Adressierschritte den Wert von wc bestimmt. Eine programmierte Zustandsmaschine 214 adressiert den ROM 202 sequentiell in Schrittgrößen, welche durch Programmierungsdaten aus dem Mikroprozessor 22 bestimmt werden. Die Zustandsmaschine 214 steuert den Betrieb der Register 204, 206 und 212 und den Multiplexer 208, signalisiert dem Mikrocomputer 22, wenn Daten in Register 12 bereit sind, überträgt ein YACK-Signal an Filter 82 oder 83 aus Fig. 7 um anzugeben, wenn der Modulator 80 ein weiteres a'(n) oder b'(n) Element angenommen hat, und überwacht YRDY-Signale von den Filtern 82 und 83, welche bestimmt werden, wenn ein nächstes Eingangselement a'(n) oder b'(n) verfügbar ist.
- Der Modulator 80 führt den Quadraturmodulationsschritt 48 aus Fig. 2 durch. Bei Erfassung eines NEXT SAMPLE-Signals von der Digitalisiervorrichtung 16, das angibt, daß es eine nächste Elementendatensequenz V(n) erzeugt hat, multipliziert der Multiplizierer 200 V(n) mit cos(wcn) und speichert das Ergebnis in Register 204. Die Zustandsmaschine 214 schaltet den Multiplexer 208 so, daß er anstelle des Inhaltes von Register 206 einen Eingangswert 0 an den Addierer 210 legt. Der Addierer 210 erstellt daher a(n) = V(n)*cos(wc), was in Register 212 gespeichert wird. Die Zustandsmaschine 214 überträgt ein XRDY- Signal an das Filter 82 aus Fig. 7, wenn ein Element a(n) in Register 212 verfügbar ist. Wenn Filter 82 a(n) zu verarbeiten beginnt, dann sendet es ein XACK-Signal an die Zustandsmaschine 214.
- Nachdem a(n) in Register 204 gespeichert ist, multipliziert der Multiplizierer 200 V(n) mit sin(wcn), um b(n) zu erstellen, und nachdem die Zustandsmaschine 214 das Xack- Signal von Filter 82 empfangen hat, überträgt sie b(n) über Addierer 210 in das Register 212 und überträgt ein weiteres XACK-Signal an das Filter 83 aus Fig. 7. Wenn Filter 83 b(n) zu verarbeiten beginnt, sendet es ein XACK-Signal an die Zustandsmaschine 214. Anschließend kann der Modulator mit der Verarbeitung des nächsten Elementes aus Sequenz V(n) beginnen, wenn dieses am Eingang von Multiplizierer 200 vorliegt.
- Es wurde ein digitales Oszilloskop beschrieben, welches einer Bedienungsperson ermöglicht, sowohl das Zeit- als auch das Frequenzbereichsverhalten von analogen Signalkomponenten zu betrachten, die während eines Zeitfensters von gewählter Dauer Frequenzen innerhalb eines Bereiches mit ausgewählter Mittelfrequenz haben. Das Eingangssignal wird digitalisiert, und die sich ergebende digitale Datensequenz wird moduliert, tiefpaßgefiltert und um ein einstellbares Dezimierungsverhältnis dezimiert, um gespeicherte Wellenformdaten zu erzeugen, welche das zeitabhängige Verhalten des Frequenzbereiches während des Zeitfensters angeben. Das Oszilloskop, welches die gespeicherten Wellenformdaten interpoliert und demoduliert, um eine Zeitbereichsanzeige der Signalkomponenten zu erzeugen, stellt das Dezimierungsverhältnis so ein, daß sichergestellt ist, daß die Menge gespeicherter Wellenformdaten konstant ist, unabhängig von der gewählten Dauer des Zeitfensters. Das Oszilloskop stellt die Bandbreite des Durchlaßbereiches so ein, daß Alias-Effekte in der Zeitbereichsanzeige minimalisiert werden.
Claims (25)
1. Digitaloszilloskop zum Anzeigen einer Darstellung von
Frequenzkomponenten eines Analogsignals, wobei das
Oszilloskop umfaßt:
eine Digitalisiervorrichtung (16), die auf das
Analogsignal anspricht, um eine erste Datensequenz zu
erzeugen, welche dieses Analogsignal während eines
Zeitfensters von einstellbarer Dauer darstellt, wobei diese
Digitalisiervorrichtung ein Signal, das von diesem
Analogsignal abgeleitet wurde, periodisch mit konstanter
Abtastfrequenz abtastet, um diese erste Datensequenz zu
erzeugen;
eine Filtervorrichtung (18), die auf diese erste
Datensequenz anspricht, um diese erste Datensequenz einer
Bandpaßfilterung zu unterziehen, um eine zweite
Datensequenz zu erzeugen, wobei die Filtervorrichtung eine
einstellbare Bandbreite hat und eine Vorrichtung zum
Einstellen der Bandbreite gemäß der Dauer des
Zeitfensters aufweist, wobei die Filtervorrichtung ein
Dezimierungsfilter mit einstellbarem Dezimierungsfaktor
ist; und
eine Anzeigevorrichtung (28, 30, 32) zum Anzeigen
der zweiten Datensequenz als Zeitbereichswellenform.
2. Digitaloszilloskop nach Anspruch 1, worin die
Digitalisierungsvorrichtung umfaßt:
ein Tiefpaßfilter (42) zum Filtern des
Analogsignals, um ein Ausgangssignal zu erzeugen; und
eine Vorrichtung zum periodischen Abtasten (46) des
Ausgangssignals mit konstanter Abtastfrequenz, um eine
Sequenz von Spannungspegeln zu erzeugen, und zum Erzeugen
der ersten Datensequenz gemäß dieser Sequenz von
Spannungspegeln.
3. Digitaloszilloskop nach Anspruch 2, worin das
Tiefpaßfilter eine Bandbreite von nicht größer als die Hälfte
der Abtastfrequenz hat.
4. Digitaloszilloskop nach Anspruch 1, worin die
Filtervorrichtung eine einstellbare Mittelfrequenz hat und das
Oszilloskop eine Vorrichtung zum Einstellen der
einstellbaren Mittelfrequenz aufweist.
5. Digitaloszilloskop nach Anspruch 1, worin die
Filtervorrichtung eine Datenverarbeitungsvorrichtung (18) zur
Quadraturmodulation, Tiefpaßfilterung und Dezimierung der
ersten Datensequenz umfaßt, um Wellenformdaten zu
erzeugen, und zur Interpolierung und Quadraturmodulation
dieser Wellenformdaten, um die zweite Datensequenz zu
erzeugen, wobei die zweite Datensequenz Komponenten des
Analogsignals darstellt, welche innerhalb eines
Durchlaßbereiches mit einstellbarer Mittelfrequenz und
einstellbarer Bandbreite enthalten sind.
6. Digitaloszilloskop nach Anspruch 5, weiterhin umfassend
eine Speichervorrichtung (30) zum Speichern der
Wellenformanzeigedaten.
7. Digitaloszilloskop nach Anspruch 5, weiterhin umfassend
eine Vorrichtung zum Anzeigen (28, 30, 32) einer
Zeitbereichsdarstellung der Analogsignalkomponenten gemäß der
zweiten Datensequenz.
8. Digitaloszilloskop nach Anspruch 5, weiterhin umfassend
eine Vorrichtung zum Anzeigen einer
Frequenzbereichsdarstellung der Analogsignalkomponenten gemäß den
Wellenformdaten und zum Anzeigen einer
Zeitbereichsdarstellung der Analogsignalkomponenten gemäß der zweiten
Wellenformdatensequenz.
9. Digitaloszilloskop nach Anspruch 5, worin die
Datenverarbeitungsvorrichtung die erste Datensequenz gemäß eines
einstellbaren Dezimierungsfaktors dezimiert.
10. Digitaloszilloskop nach Anspruch 9, worin der
Dezimierungsfaktor gemäß der Dauer des Zeitfensters eingestellt
ist.
11. Digitaloszilloskop nach Anspruch 5, worin die
Datenverarbeitungsvorrichtung ein Filter (54, 56) zum
Tiefpaßfiltern der ersten Datensequenz mit einer einstellbaren
Bandbreite umfaßt, wobei die Bandbreite gemäß der Dauer
des Zeitfensters eingestellt ist.
12. Digitaloszilloskop nach Anspruch 5, worin die
Datenverarbeitungsvorrichtung die erste Datensequenz gemäß eines
einstellbaren Dezimierungsfaktors dezimiert und die
Wellenformdaten gemäß eines einstellbaren
Interpolationsfaktors interpoliert.
13. Digitaloszilloskop nach Anspruch 12, worin die
Dezimierungs- und Interpolationsfaktoren gemäß der Dauer des
Zeitfensters eingestellt sind.
14. Digitaloszilloskop nach Anspruch 11, worin die
Wellenformdaten ungeachtet der Dauer des Zeitfensters eine
konstante Anzahl von Elementen enthalten.
15. Digitaloszilloskop nach Anspruch 12, worin die
Wellenformdaten ungeachtet der Dauer des Zeitfensters eine
konstante Anzahl von Elementen enthalten.
16. Verfahren zum Anzeigen einer Darstellung von
Frequenzkomponenten eines analogen Signals während eines
Zeitfensters, wobei das Zeitfenster eine einstellbare Dauer
hat, und das Verfahren die folgenden Schritte umfaßt:
periodisches Abtasten und Digitalisieren mit
konstanter Abtastfrequenz eines aus dem analogen Signal
abgeleiteten Signals (46), um eine erste Datensequenz zu
erzeugen, welche das analoge Signal während des
Zeitfensters darstellt;
Bandpaßfiltern (48) der ersten Datensequenz mit
einer Bandbreite, die gemäß der Dauer des Zeitfensters
einstellbar ist, unter Verwendung eines
Dezimierungsfilters mit einem einstellbaren Dezimierungsfaktor, um
eine zweite Datensequenz zu erzeugen; und
Anzeigen (72) der zweiten Datensequenz als
Zeitbereichswellenform.
17. Verfahren nach Anspruch 16, worin der Schritt des
Digitalisierens des analogen Signals die folgenden
Unterschritte umfaßt:
Tiefpaßfiltern des analogen Signals, um ein
Ausgangssignal zu erzeugen;
periodisches Abtasten des Ausgangssignals mit
konstanter Abtastfrequenz, um eine Sequenz von
Spannungspegeln zu erzeugen; und
Erzeugen der ersten Datensequenz gemäß der Sequenz
von Spannungspegeln.
18. Verfahren nach Anspruch 17, worin das analoge
Eingangssignal mit einer Bandbreite nicht größer als der Hälfte
der Abtastfrequenz tiefpaßgefiltert wird.
19. Verfahren nach Anspruch 16, worin der Schritt des
einstellbaren Bandpaßfilterns die folgenden Schritte
umfaßt:
Quadraturmodulieren (50, 52) der ersten
Datensequenz, um ein quadraturmoduliertes Paar von
Datensequenzen zu erzeugen; und
Tiefpaßfiltern und Dezimieren (54, 56) des
quadraturmodulierten Paares von Datensequenzen, um ein
dezimiertes Paar von Datensequenzen zu erzeugen.
20. Verfahren gemäß Anspruch 19, worin der Schritt der
einstellbaren Bandpaßfilterung die folgenden weiteren
Schritte umfaßt:
Interpolieren (60, 62) des dezimierten Paares von
Datensequenzen, um ein interpoliertes Paar von
Datensequenzen zu erzeugen; und
Quadraturdemodulieren (66, 68) des interpolierten
Paares von Datensequenzen, um die zweite Datensequenz zu
erzeugen.
21. Verfahren nach Anspruch 19, weiterhin umfassend folgende
Schritte:
Durchführen einer Spektrumanalyse (76) des
dezimierten Paares von Datensequenzen, um Frequenzbereichsdaten
zu erzeugen; und
Anzeigen (78) der Frequenzbereichsdaten.
22. Verfahren nach Anspruch 19, weiterhin umfassend den
Schritt des Speicherns (58) des dezimierten Paares von
Datensequenzen.
23. Verfahren nach Anspruch 22, weiterhin umfassend die
folgenden Schritte:
Durchführen einer Spektrumanalyse (76) des
gespeicherten dezimierten Paares von Datensequenzen, um
Frequenzbereichsdaten zu erzeugen; und
Anzeigen (78) der Frequenzbereichsdaten.
24. Verfahren nach Anspruch 19, worin der Schritt des
Tiefpaßfilterns und Dezimierens eine Dezimierung gemäß eines
variablen Faktors aufweist, welcher durch die Dauer des
Zeitfensters bestimmt ist.
25. Verfahren nach Anspruch 20, worin der Schritt des
Tiefpaßfilterns und Dezimierens und der Interpolationsschritt
jeweils eine Dezimierung gemäß eines variablen Faktors
aufweisen, welcher durch die Dauer des Zeitfensters
bestimmt ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/034,312 US4802098A (en) | 1987-04-03 | 1987-04-03 | Digital bandpass oscilloscope |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3882767D1 DE3882767D1 (de) | 1993-09-09 |
DE3882767T2 true DE3882767T2 (de) | 1994-02-03 |
Family
ID=21875635
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE88300963T Expired - Fee Related DE3882767T2 (de) | 1987-04-03 | 1988-02-05 | Bandpass-Digitaloszilloskop. |
Country Status (4)
Country | Link |
---|---|
US (1) | US4802098A (de) |
EP (1) | EP0285238B1 (de) |
JP (1) | JPH0635990B2 (de) |
DE (1) | DE3882767T2 (de) |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07117562B2 (ja) * | 1988-10-18 | 1995-12-18 | 株式会社ケンウッド | スペクトラムアナライザ |
US4983906A (en) * | 1989-08-17 | 1991-01-08 | Hewlett-Packard Company | Frequency estimation system |
US5068813A (en) * | 1989-11-07 | 1991-11-26 | Mts Systems Corporation | Phased digital filtering in multichannel environment |
US5153501A (en) * | 1990-03-19 | 1992-10-06 | Yokogawa Electric Corporation | Waveform measuring device |
US5072168A (en) * | 1990-11-09 | 1991-12-10 | Hewlett-Packard Company | Automatic scaling for display of modulation domain measurements |
US5162723A (en) * | 1991-02-11 | 1992-11-10 | Hewlett-Packard Company | Sampling signal analyzer |
GB2252829B (en) * | 1991-02-15 | 1994-10-19 | Crystal Semiconductor Corp | Method and apparatus for decreasing the interference and noise sensitivity of a ratiometric converter type of circuit |
US5122731A (en) * | 1991-02-25 | 1992-06-16 | The United States Of America As Represented By The Administrator, National Aeronautics And Space Adnministration | Method and apparatus for frequency spectrum analysis |
US5233546A (en) * | 1991-08-14 | 1993-08-03 | Hewlett-Packard Company | Anti-alias filtering apparatus for frequency domain measurements |
US5363311A (en) * | 1992-09-04 | 1994-11-08 | Hughes Aircraft Company | Data compression system using response waveform discrimination |
US5532936A (en) * | 1992-10-21 | 1996-07-02 | Perry; John W. | Transform method and spectrograph for displaying characteristics of speech |
US5375067A (en) * | 1992-12-11 | 1994-12-20 | Nicolet Instrument Corporation | Method and apparatus for adjustment of acquisition parameters in a data acquisition system such as a digital oscilloscope |
US5594655A (en) * | 1993-08-20 | 1997-01-14 | Nicolet Instrument Corporation | Method and apparatus for frequency triggering in digital oscilloscopes and the like |
JP3359251B2 (ja) | 1996-12-11 | 2002-12-24 | ソニー・テクトロニクス株式会社 | リアルタイム信号アナライザ |
JP3377391B2 (ja) * | 1997-02-12 | 2003-02-17 | 日本テクトロニクス株式会社 | リアルタイム信号アナライザ |
JP3406493B2 (ja) * | 1997-10-22 | 2003-05-12 | 安藤電気株式会社 | 電気光学プローブの信号処理回路 |
US6301547B2 (en) * | 1998-11-02 | 2001-10-09 | Agilent Technologies Inc. | Method and apparatus for automatically acquiring a waveform measurement |
US6490535B1 (en) * | 1999-04-15 | 2002-12-03 | Tektronix, Inc. | Method and apparatus for calibrating an instrument |
US6681191B1 (en) * | 1999-12-21 | 2004-01-20 | Tektronix, Inc. | Frequency domain analysis system for a time domain measurement instrument |
DE60045611D1 (de) * | 1999-12-21 | 2011-03-24 | Tektronix Inc | Frequenzbereich-Analysesystem für ein Zeitbereich-Messinstrument |
US6377260B1 (en) * | 2000-01-24 | 2002-04-23 | The United States Of America As Represented By The National Security Agency | Method of displaying real and imaginary components of a waveform |
US6615148B2 (en) * | 2000-05-17 | 2003-09-02 | Tektronix, Inc. | Streaming distributed test and measurement instrument |
EP1388227B1 (de) * | 2001-05-18 | 2005-07-06 | Rohde & Schwarz GmbH & Co. KG | Signalgenerator mit anzeigeeinrichtung |
US6693576B2 (en) * | 2002-05-23 | 2004-02-17 | Tektronix, Inc. | Methods and apparatus providing multiple concurrent acquisition modes in a digitizing measurement instrument |
US6768430B1 (en) * | 2003-03-19 | 2004-07-27 | Agilent Technologies, Inc. | System and method for establishing a subsampling rate for repetitive signals |
US20040196286A1 (en) * | 2003-04-01 | 2004-10-07 | Microsoft Corporation | Progressive scale graph |
US20070027675A1 (en) * | 2005-07-26 | 2007-02-01 | Lecroy Corporation | Spectrum analyzer control in an oscilloscope |
DE102006042114A1 (de) | 2006-09-07 | 2008-03-27 | Rohde & Schwarz Gmbh & Co. Kg | Vorrichtung und Verfahren zur Analyse eines über ein Mehrkanalsystem übertragenen Messsignals |
US8229706B2 (en) * | 2008-06-10 | 2012-07-24 | Advantest Corporation | Sampling apparatus, sampling method and recording medium |
US8271222B2 (en) * | 2008-06-10 | 2012-09-18 | Advantest Corporation | Sampling apparatus and sampling method |
US8374813B2 (en) * | 2008-06-10 | 2013-02-12 | Advantest Corporation | Sampling apparatus, sampling method and recording medium |
AR073128A1 (es) * | 2008-08-26 | 2010-10-13 | Spx Corp | Modulo de osciloscopio digital |
AR073129A1 (es) * | 2008-08-26 | 2010-10-13 | Spx Corp | Modulo de osciloscopio digital con deteccion de fallas en la recepcion de la senal. |
US9297834B2 (en) * | 2010-08-13 | 2016-03-29 | Tektronix, Inc. | Time-domain searching in a test and measurement instrument |
US8521460B2 (en) * | 2010-09-28 | 2013-08-27 | Tektronix, Inc. | Multi-domain test and measurement instrument |
US8675719B2 (en) | 2010-09-28 | 2014-03-18 | Tektronix, Inc. | Multi-domain test and measurement instrument |
US8615382B2 (en) * | 2011-01-27 | 2013-12-24 | Tektronix, Inc. | Test and measurement instrument with common presentation of time domain data |
US9026390B2 (en) * | 2011-09-06 | 2015-05-05 | Tektronix, Inc. | Interleaved RF triggering on a test and measurement instrument |
CN103389413B (zh) * | 2013-07-09 | 2016-02-24 | 中国电子科技集团公司第四十一研究所 | 一种频谱直方图的实时统计方法 |
US10228394B2 (en) * | 2016-02-29 | 2019-03-12 | Keysight Technologies, Inc. | Measurement system that stores pre- and post-qualification signal data |
CN106296609B (zh) * | 2016-08-09 | 2023-09-12 | 广东盈动高科自动化有限公司 | 用于容栅的全波和数字滤波去噪方法和电路 |
CN108828323B (zh) * | 2018-08-09 | 2024-07-16 | 武汉软件工程职业学院(武汉市广播电视大学) | 一种简易数字信号时序分析装置 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5020392A (de) * | 1973-06-21 | 1975-03-04 | ||
US4104725A (en) * | 1976-03-26 | 1978-08-01 | Norland Corporation | Programmed calculating input signal module for waveform measuring and analyzing instrument |
JPS52119274A (en) * | 1976-03-31 | 1977-10-06 | Tdk Corp | Signal analyzing system |
DE2758154C3 (de) * | 1977-12-27 | 1980-09-04 | Siemens Ag, 1000 Berlin Und 8000 Muenchen | Meßeinrichtung für eine Frequenzanalyse von Signalpegeln innerhalb eines großen Dynamikbereiches |
US4225940A (en) * | 1978-10-02 | 1980-09-30 | Tektronix, Inc. | Oscilloscope system for acquiring, processing, and displaying information |
GB2039432B (en) * | 1978-10-02 | 1983-01-26 | Lloyd Instr | Electronic memory unit |
US4251754A (en) * | 1979-09-04 | 1981-02-17 | Tektronix, Inc. | Digital oscilloscope with reduced jitter due to sample uncertainty |
US4507740A (en) * | 1981-09-08 | 1985-03-26 | Grumman Aerospace Corporation | Programmable signal analyzer |
IT1155558B (it) * | 1982-07-19 | 1987-01-28 | Cselt Centro Studi Lab Telecom | Procedimento e strumento per la misura dell ampiezza di un segnale periodico fortemente affetto da rumore e senza riferimento di fase |
JPS5975156A (ja) * | 1982-10-21 | 1984-04-27 | テクトロニクス・インコ−ポレイテツド | デジタル・ストレ−ジ・オシロスコ−プ |
US4585975A (en) * | 1983-04-21 | 1986-04-29 | Tektronix, Inc. | High speed Boolean logic trigger oscilloscope vertical amplifier with edge sensitivity and nested trigger |
US4621217A (en) * | 1984-09-21 | 1986-11-04 | Tektronix, Inc. | Anti-aliasing filter circuit for oscilloscopes |
US4656598A (en) * | 1984-11-06 | 1987-04-07 | Hewlett Packard Company | Alias detector for digital oscilloscopes |
US4694402A (en) * | 1985-05-28 | 1987-09-15 | Basic Measuring Instruments | Waveform disturbance detection apparatus and method |
JPH0619390B2 (ja) * | 1985-08-08 | 1994-03-16 | 横河・ヒユ−レツト・パツカ−ド株式会社 | デイジタル・フ−リエ変換の後処理方法 |
US4654584A (en) * | 1985-12-12 | 1987-03-31 | Analogic Corporation | High-speed precision equivalent time sampling A/D converter and method |
-
1987
- 1987-04-03 US US07/034,312 patent/US4802098A/en not_active Expired - Lifetime
-
1988
- 1988-02-05 DE DE88300963T patent/DE3882767T2/de not_active Expired - Fee Related
- 1988-02-05 EP EP88300963A patent/EP0285238B1/de not_active Expired - Lifetime
- 1988-03-30 JP JP63077959A patent/JPH0635990B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH0635990B2 (ja) | 1994-05-11 |
DE3882767D1 (de) | 1993-09-09 |
EP0285238B1 (de) | 1993-08-04 |
US4802098A (en) | 1989-01-31 |
EP0285238A1 (de) | 1988-10-05 |
JPS63261166A (ja) | 1988-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3882767T2 (de) | Bandpass-Digitaloszilloskop. | |
DE69310560T2 (de) | Massnahmen zur Verbesserung von digitalen Filtern | |
DE69504371T2 (de) | Digitales videoumwandlungsschaltsystem | |
DE3854404T2 (de) | Mehrkanaliges dezimierendes/interpolierendes Filter. | |
DE3486316T2 (de) | System und Verfahren zum Umformen und Filtern von Videobildern. | |
DE68927120T2 (de) | Interpolator und Verfahren zur Interpolierung von digitalen Signalmustern | |
EP0052847B1 (de) | Verfahren und Schaltungsanordnung zur Umsetzung der Abtastfrequenz einer Abtastfolge unter Umgehung der Konversion in ein kontinuierliches Signal | |
DE69128570T2 (de) | Vorrichtung zur konversion eines abtastrate | |
DE3853669T2 (de) | Schaltung und Verfahren zur Umsetzung der Abtastratenfrequenz. | |
DE3485792T2 (de) | Digitale signalverarbeitungseinrichtungen. | |
DE3233288C2 (de) | ||
DE69619615T2 (de) | Verfahren zur digitalen Breitbandfilterung und Filter zur Durchführung des Verfahrens | |
DE3688045T2 (de) | Bildsignalverarbeitung. | |
DE10129926B4 (de) | Abtastratenwandlungsapparat und Verfahren dazu | |
DE3918866A1 (de) | Anordnung zur umsetzung eines signals mit einer ersten abtastrate in ein signal mit einer zweiten abtastrate | |
DE3650348T2 (de) | Zweidimensionalfiltereinrichtungen mit begrenzter Impulsantwort. | |
DE3209073C2 (de) | Anordnung zum Umsetzen der Zahl von Abtastlinien | |
DE69412368T2 (de) | Digitale Signalverarbeitung | |
DE10150428A1 (de) | Verfahren zur Erzeugung dreidimensionaler, mehrfachaufgelöster Volumenbilder eines Untersuchungsobjekts | |
DE3821102C2 (de) | ||
EP0215810B1 (de) | Schaltungsanordnung zur mittelwertbildung | |
DE3603042A1 (de) | Ultraschallgeraet mit dynamischer veraenderung der empfangsfokuslage | |
DE3785654T2 (de) | Tonsignalerzeugungsvorrichtung mit einem digitalen Filter. | |
DE19829289A1 (de) | Nichtrekursives digitales Filter und Verfahren zur Berechnung der Koeffizienten dieses Filters | |
DE69424754T2 (de) | Verfahren zur Umsetzung der Abtastfrequenz |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |