DE2146982A1 - Programmierbare digitale Filtereinrichtung - Google Patents

Programmierbare digitale Filtereinrichtung

Info

Publication number
DE2146982A1
DE2146982A1 DE19712146982 DE2146982A DE2146982A1 DE 2146982 A1 DE2146982 A1 DE 2146982A1 DE 19712146982 DE19712146982 DE 19712146982 DE 2146982 A DE2146982 A DE 2146982A DE 2146982 A1 DE2146982 A1 DE 2146982A1
Authority
DE
Germany
Prior art keywords
filter
data
order
digital filter
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE19712146982
Other languages
English (en)
Inventor
Paul Alfred Parsippany N.J. Schuster (V.StA.)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AT&T Corp
Original Assignee
Western Electric Co Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Western Electric Co Inc filed Critical Western Electric Co Inc
Publication of DE2146982A1 publication Critical patent/DE2146982A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03HIMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
    • H03H17/00Networks using digital techniques
    • H03H17/02Frequency selective networks
    • H03H17/0294Variable filters; Programmable filters
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03HIMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
    • H03H17/00Networks using digital techniques
    • H03H17/02Frequency selective networks
    • H03H17/0283Filters characterised by the filter structure
    • H03H17/0286Combinations of filter structures
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03HIMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
    • H03H17/00Networks using digital techniques
    • H03H17/02Frequency selective networks
    • H03H17/04Recursive filters

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Complex Calculations (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

Western Electric Company Incorporated Schuster, P. A.
New York, N.Y. 10007 U.S.A.
Programmierbare Digitalfiltereinrichtung
Die Erfindung bezieht sich auf ein Digitalfilter zur Durchführung von ρ aufeinanderfolgenden, digitalen Filter operationen von jeweils einer gegebenen Ordnung auf digitalcodierte Signalabtastungen oder Proben von jeweils einer oder einer Mehrzahl von Signalquellen, mit folgenden Merkmalen: eine Datenspeichereinrichtung speichert digitalcodierte Datenwörter, eine arithmetische Einheit mit Zeitaufteilung führt nacheinander alle erforderlichen arithmetischen Operationen auf die Datenwörter aus.
Bekannte Digitalfilter dieser Art weisen die Beschränkung auf, daß eine Filterstufe nur eine einzige Digitalfilter operation durchführen kann und zur Durchführung der vollständigen Digitalfilterfunktion wird eine Reihe von Digitalfilterstufen benötigt, welche die notwendigen aufeinanderfolgenden Digitalfilteroperationen durchführen.
Der Erfindung liegt die Aufgabe zugrunde, diese Beschränkungen dadurch zu vermeiden, daß ein Digitalfilter geschaffen wird, welches eine Anzahl von aufeinanderfolgenden Digitalfilteroperationen
209829/0836
2U6982
durchfuhren kann, wobei jede Operation von einer vorbestimmten Ordnung ist, und jede Operation auf digitalcodierte Signalabtastungen von einer Quelle oder einer Mehrzahl von Quellen ausgeführt wird.
Das Digitalfilter gemäß Erfindung ist durch folgende Merkmale gekennzeichnet: die Datenspeichereinrichtung weist ein Speicherregister zur Speicherung der Aus gangs Wörter der arithmetischen Einheit mit Zeitaufteilung und eine mindestens der Filterordnungsnummer gleiche Anzahl von seriell miteinander verbundenen Vielwort-Schieberegister auf die jeweils die Aufnahmefähigkeit zur gleichzeitigen Speicherung der Anzahl der anliegenden Datenwörter besitzen, die gleich oder größer als die Anzahl der aufeinanderfolgenden Digitalfilteroperationen multipliziert mit der Anzahl der abgetasteten Quellen sind; die seriell miteinander verbundenen Schieberegister dienen zur Speicherung von Datenwörtern, die in dem Speicherregister gespeichert sind; eine Einrichtung ist an den Aus gangs ans chlüssen jedes Schieberegisters angeschlossen und legt die digitalcodierten, durch die Schieberegister erzeugten Datenwörter an die arithmetische Einheit mit Zeit auf teilung an.
Das Filter gemäß Erfindung kann nicht nur eine Mehrzahl von aufeinanderfolgenden digitalen Filteroperationen durchführen, sondern
gemäß einem weiteren Merkmal der Erfindung ist ein Speicher zur Speicherung variabler Befehle vorgesehen, welche die besonderen Werte von (a) der Anzahl der aufeinanderfolgenden Digitalfilteroperationen, (b) der Ordnung der Digitalfilter und (c) der Anzahl der Quellen, welche die codierten Signalabtastungen anlegen, bezeichnen bzw. beinhalten. Der Befehlsspeicher steuert in Übereinstimmung mit diesen Werten den Umlauf der Datenwörter innerhalb des Digitalfilters und steuert auch die Anlage von neuen Abtastungen zu dem Digitalfilter und das Ausgangssignal von den gefilterten Abtastungen von dem Digitalfilter.
Zusammenfassung der Erfindung
In Übereinstimmung mit einem Ausführungsbeispiel der Erfindung ist ein Digitalfilter mit zwei Einwort-Datenspeichereinrichtungen und einer Anzahl m von Vielstufen-Schieberegisterspeichern ausgestattet. Jeweils eine Einwort-Speichereinrichtung und ein Schieberegister ist in Serie geschaltet. Von jedem der Einwort-Speichereinrichtungen und der Ausgangsstufe jedes Schieberegisters können darin gespeicherte Datenwörter unter der Steuerung von Signalen aus einem Befehlsspeicher an die arithmetische Einheit angelegt werden. Die arithmetische Einheit kann ebenfalls unter der Steuerung der
209 L'29/0836
2U6982
Signale aus dem Befehlsspeicher und aus einem Koeffizientenspeicher eine der in dem Digitalfilter erforderlichen arithmetischen Operationen durchführen. In der arithmetischen Einheit errechnete Datenwörter können an die eine oder beide Einwortspeichereinrichtungen angelegt werden, wiederum unter der Steuerung von Signalen aus dem Befehls speicher.
Beschränkt lediglich durch die Größe der Schieberegister und der Zeit, welche der Verarbeitung einer gegebenen Signalabtastung gewidmet werden kann, kann die vorstehende Einrichtung zur Durchführung einer beliebigen Anzahl ρ von Kaskadenfilteroperationen von relativ niedriger Ordnung m auf die Abtastungen von einer beliebigen Anzahl q von Quellen programmiert werden, wobei die Abtastungen dem Filter in der üblichen Folge dargeboten werden. Die Verarbeitung einer typischen Abtastung oder Probe geht kurz wie folgt vonstatten: eine Abtastung wird an das Filter angelegt und in derjenigen Einwortspeichereinrichtung gespeichert, welche in Serie zu den Schieberegisterspeichern liegt. Die Datenwörter in der Endoder Ausgangsstufe der Vielstufen-Schieberegister werden aufeinanderfolgend an die arithmetische Einheit angelegt, wobei jedes Datenwort mit einem geeigneten Rückkopplungsfilterkoeffizienten multipliziert wird. Die erhaltenen Produkte werden mit der gespeicherten
209c /9 / OS 36
Abtastung summiert und ergeben ein Ausgangswort, welches dem durch einen Rückkopplungsaddierer nach bekannter Filtersektion erzeugten Wort entspricht. Dieses Ausgangswort wird in beiden Einwortspeichereinrichtungen gespeichert. Die Schieberegister-Ausgangs-Wörter werden wiederum nacheinander an die arithmetische Einheit angelegt, wo jedes mit einem geeigneten Vorwärtsrichtungskoeffizienten multipliziert wird. Jedes so erzeugte Produkt wird zu dem Inhalt der Einwortspeichereinrichtung addiert, welche seriell nicht mit den Schieberegistern verbunden ist. Der Inhalt der in Serie geschalteten Einrichtungen wird dann verschoben, so daß der frühere Inhalt der in Serie verbundenen Einwortspeichereinrichtungen in die erste Stufe des ersten Schieberegisters bewegt und die verbleibenden Daten in den entsprechend verschobenen Schieberegistern gespeichert werden. Danach wird das in der Speichereinrichtung gespeicherte Datenwort, welches nicht wie zuvor erwähnt verschoben worden ist, an die arithmetische Einheit zur Multiplikation mit einem geeigneten Skalenfaktor angelegt und das erhaltene Produkt wird an die in Reihe geschaltete Einwortspeichereinrichtung angelegt. Da diese letzte Größe äquivalent der Größe ist, welche durch den ersten Filter abschnitt von der allgemeinen m-ten Ordnung in einem Filter aus in Kaskade geschalteten m-ten Ordnungsfilter-Abschnitten erzeugt ist, und da durch frühere Zyklen der Filter operation die nunmehr in den Ausgangs-
209829/0836
stufen des Schieberegisters erscheinenden Datenwörter diejenigen sind, welche in den Aus gangs stufen der Schieberegister in der zweiten Stufe solcher in Kaskade geschalteten m-ten Ordnungsfilter abschnitten erscheinen würde, ist die zur Anlage an die arithmetische Einheit des Filters zur Verfügung stehende Datengröße diejenige, auf welche die arithmetischen Operationen des zweiten, in Kaskade geschalteten Filter ab schnittes von der m-ten Ordnung durchgeführt werden müssen. Demgemäß werden alle vorhergehenden Operationen wiederholt, um eine zweite, in Kaskade ablaufende Filteroperation von m-ter Ordnung durchzuführen. Dieser Prozeß wird so lange durchgeführt, bis ρ Filter operationen von m-ter Ordnung abgelaufen sind. Zu dieser Zeit wird das endgültige Ausgangswort des Abschnittes von m-ter Ordnung aus der in Serie geschalteten Einwortspeichereinrichtung herausgezogen und eine neu angelegte Abtastung an seine Stelle gespeichert. Diese neue Abtastung kann entweder von der gleichen Quelle stammen, und zwar im Fall wenn Abtastungen nur von einer Quelle gefiltert werden, oder es kann von der nächsten Quelle aus mehreren nacheinander folgend abgetasteten Quellen stammen. Im allgemeinen können ρ aufeinanderfolgende Filteroperationen von m-ter Ordnung auf Abtastungen aus q Quellen durchgeführt werden, wobei die Anzahl der Datenwörter, welche gleichzeitig in jedem der Schieberegister gespeichert werden können, mindestens gleich dem
η <*ι r\ ί η / η η *»
-T-
Produkt von ρ mal q ist.
Da eine grundlegende Operation (d. h. eine Filteroperation von relativ niedriger Ordnung m) wiederholt ausgeführt wird, kann das Filter im Hinblick auf ρ und q durch Änderung der in dem Befehlsspeicher gespeicherten Befehle programmiert werden, welche eine Steuerung durchführen, wenn Datenwörter umlaufen sollen oder neue Abtastungen mit hinzugenommen werden sollen. Die realisierten Filterfunktionen können ferner dadurch geändert werden, daß die in dem Koeffizientenspeicher gespeicherten Koeffizienten abgeändert werden.
Wenn die Filter zur Durchführung von parallelen arithmetischen Operationen auf Datenwörter, welche parallel gespeichert werden, konstruiert werden sollen, dann werden bei Anwendung der Erfindung in großem Maße als Baueinheiten anzusprechende Filtereinheiten erhalten. Solche Filter umfassen demnach eine Mehrzahl von identischen Filterbaueinheiten, wobei jede die erforderlichen Operationen an einer arithmetischen Stelle der zu verarbeitenden Daten durchführt. Demgemäß können Filter mit einem gewünschten. Grad von Rechengenauigkeit dadurch konstruiert werden, daß eine geeignete Anzahl von Baueinheiten parallel zueinander geschaltet wird.
Weitere Einzelheiten der Erfindung ergeben sich aus dem im folgenden
/' 0 G 3 2 0 ! 0 8 3 6
2U6982
anhand der Zeichnung beschriebenen Ausführungsbeispiel.
Kurze Beschreibung der Zeichnung:
Fig. 1 stellt ein Blockschaltbild eines bekannten digitalen
Filters von im allgemeinen zweiter Ordnung dar; Fig. 2 stellt ein Blockschaltbild eines Filters gemäß Erfindung dar;
Fig. 3 ist ein Blockschaltbild des Datenverarbeitungsteiles
des Filters nach Fig. 2;
Fig. 4 ist eine tabellenmäßige Darstellung der Algorithmen, durch welche eine Filteroperation zweiter Ordnung in dem Digitalfilter nach Fig. 2 ausgeführt wird; Fig. 5A stellt die Information dar, welche in der Datenverarbeitungseiririchtung nach Fig. 3 zu einer speziellen Zeit bei der Operation dieser Einrichtung gespeichert ist; Fig. 5B stellt die Information dar, die in der Datenverarbeitungseinrichtung nach Fig. 3 zu einer anderen Zeit bei der Operation dieser Einrichtung gespeichert ist; Fig. 6A illustriert die Folge der Taktimpulse, welche an die Befehls- und Koeffizientenspeicher des Digitalfilters nach Fig. 2 angelegt werden;
209829/0836
Fig. 6B ist eine tabellenmäßige Darstellung des Zustandes
des Teiles des Befehls Speichers nach Fig. 2, welche zur Erzeugung der einen Filteroperation zweiter Ordnung in dem Filter nach Fig. 2 benötigt wird;
Fig. 6C ist eine tabellenmäßige Darstellung des Zustandes des Teiles des Koeffizientenspeichers nach Fig. 2, welcher zur Erzeugung der einen Filteroperation zweiter Ordnung in dem Filter nach Fig. 2 benötigt wird;
Fig. 7A ist eine Blockschaltung einer typischen Filterbaueinheit, wovon mehrere parallel zueinander geschaltet werden, um die Einrichtung nach Fig. 3 aufzubauen;
Fig. 7B ist eine Blockschaltung, welche die Parallelverbindung einer Mehrzahl von in Fig. 7A gezeigten Baueinheiten darstellt.
Ins Einzelne gehende Beschreibung der Erfindung;
Bei bekannten Filtern von im allgemeinen zweiter Ordnung nach Fig. 1 werden Signale, welche aufeinanderfolgende digitalcodierte Signalabtastungen aus einer oder mehreren Quellen darstellen, dem Addierer 20 zugeführt. Der Addierer 20 kombiniert eine solche Abtastung mit einem gleichzeitig anliegenden digitalcodierten Datenwort, welches
2U6982
durch den Addierer 30 erzeugt worden ist, und erzeugt eine Serie von Aus gangs Wörtern, welche der Verzögerungseinheit 22 erster Ordnung und einem Addierer 38 zugeführt wird. Die Verzögerungseinheit 22 erster Ordnung, welche ein vielstufiges Schieberegister mit Aufnahmefähigkeit für die gleichzeitige Speicherung von so vielen Datenwörtern, wie abgetastete Quellen vorhanden sind, sein kann, verzögert jedes anliegende Wort um ein Abtastintervall, d. h., der Zeit zwischen der Anlage von zwei Abtastungen einer gegebenen Quelle. In der Praxis muß diese Verzögerung eingestellt werden können, um unvermeidbaren Verzug in der Durchführung der erforderlichen arithmetischen Operationen zu kompensieren. Jedes so von der Verzögerungseinheit 22 verzögerte Wort wird danach um ein zweites, ähnliches Intervall durch eine Verzögerungseinheit 24 von zweiter Ordnung verzögert, welche eine der Verzögerungseinheit 22 ähnliche Einrichtung sein kann. Zu Erläuterungszwecken werden die zu gegebener Zeit in den End- oder Ausgangsstufen der Verzögerungseinheiten 22 und 24 erscheinenden Wörter mit den Größen X bzw. Y bezeichnet. Die Größen X und Y werden in den Multiplizierern 26 und 28 mit Rückkopplungsfilterkoeffizienten E bzw. D multipliziert. Jedes gleichzeitig erzeugte Paar dieser Produktwörter wird algebraisch durch den Addierer 30 kombiniert und das Ergebnis dem Addierer 20 zugeführt, wie zuvor erwähnt. Die Größen X und Y werden auch mit den Vorwärts-
richtungsfilterkoeffizienten C bzw. B multipliziert, und zwar durch die Multiplizierer 32 bzw. 34. Jedes gleichzeitig erzeugte Paar dieser Produkte wird algebraisch mit dem gleichzeitig erzeugten Ausgangs wort des Addierers 20 kombiniert, und zwar durch die Addierer 36 und 38. Schließlich wird jedes vom Addierer 38 erzeugte Ausgangswort um den Maßstabsfaktor A im Multiplizierer 40 multipliziert.
Wie erwähnt, können Filterfunktionen höherer Ordnung dadurch realisiert werden, daß Filter gemäß der in Fig. 1 gezeigten Art in Kaskade oder hintereinander geschaltet werden. In solchen Kaskadenfiltern werden dem Grunde nach die gleichen Operationen in jedem Filter abschnitt zweiter Ordnung durchgeführt, wobei jeder Abschnitt die von dem vorhergehenden Abschnitt erzeugten Wörter verarbeitet. Die Werte der Koeffizienten A bis E in jedem Abschnitt sind selbstverständlich jedem Abschnitt eigentümlich.
Das Filter nach Fig. 2, welches gemäß Erfindung aufgebaut ist, ist bezüglich Arbeitsweise einem solchen Kaskadenfilter ähnlich. Wie aus Fig. 2 hervorgeht, umfaßt dieses Filter eine Steuereinrichtung (einschließlich einer Taktquelle 200, einem Befehlszähler 202, einem Befehlsspeicher 204 und einem Koeffizientenspeicher 206) und eine Datenverarbeitungseinheit 220. Die oben erwähnte Steuereinrichtung
2 0 S C 2 S / 0 8 3 6
erzeugt eine Mehrzahl von Zweipegel-Steuerspannungen, die der Verarbeitungseinheit 220 über Anschlüsse zugeführt werden, deren Bedeutung durch Aufschriften in Fig. 2 und 3 erläutert sind. Die Bedeutung dieser Steuersignale ist besser verständlich im Zusammenhang mit einer Erläuterung der Einrichtung, zu deren Steuerung sie dienen, und daher wird die Datenverarbeitungseinheit 220 im einzelnen erläutert, bevor die Steuereinrichtung beschrieben wird.
Die Datenverarbeitungseinheit 220 ist in Fig. 3 im einzelnen dargestellt. Wie aus dieser Figur hervorgeht, umfaßt die Einrichtung eine Eingangseinrichtung 100, eine Datenspeicher einheit 190, eine arithmetische Einheit 192 und eine Einrichtung 180 zur Anlage der Ausgangswörter an eine passende Verarbeitungseinrichtung oder -Einrichtungen. Jedes an den Eingangsleitungen 99 anliegende binär codierte Datenwort kann der Speicher einheit 190 durch Betätigung der Eingangseinrichtung 100 zugeführt werden. Abhängig davon, ob die Daten serienmäßig oder parallel gespeichert und verarbeitet werden sollen, kann die Eingangseinrichtung 100 entweder ein einzelnes UND-Glied oder eine Mehrzahl von gemeinsam gesteuerten UND-Gliedern sein. Im letzteren Fall ist jeweils ein UND-Glied für jede Binärstelle der anliegenden Daten vorhanden. Dementsprechend sind auch die Verbindungen für die Datenwörter (d.h. die Leitungen 99) entweder eine
2U6982
einzelne Leitung, wenn diese Wörter seriell (d. h. Bit pro Bit) verarbeitet werden sollen, oder bestehen aus mehreren Parallelleitungen (je eine für jede binäre Stelle), wenn die Wörter parallel verarbeitet werden sollen. Vorteilhafterweise wird Zweier-Komplement-Binärcodierung für alle anliegenden und gespeicherten Daten verwendet. Die Eingangseinrichtung 100 wird durch die Anlage einer Steuerspannung an die Klemme "QUELLE LESEN" betätigt. Da dieses Steuersignal eines der von der Steuereinrichtung nach Fig. 2 erzeugten Signale ist, ist die Klemme "QUELLE LESEN" in Fig. 3 die gleiche wie die entsprechend bezeichnete Klemme in Fig. 2.
Die Speichereinheit 190 umfaßt zwei Speicherregister 112 und 122, die jeweils zur Speicherung eines angelegten Datenwortes dienen. Die in diesen Registern gespeicherten Größen werden im Nachfolgenden als I bzw. J bezeichnet. Je nach dem, ob die Betriebsweise des Filters serienmäßig oder parallel erfolgt, können diese Register entweder ein Umlaufspeicher oder eine Mehrzahl von bistabilen Kippstufen sein. In jedem Fall sind die Register 112 und 122 vorzugsweise so ausgebildet, daß eine anliegende Größe nur in Abhängigkeit von einem getrennt anliegenden Takt- oder Steuerimpuls gespeichert wird.
Die Speichereinheit 190 umfaßt auch zwei Vielwort-Datenspeicher 132
und 142, die in Serie zum Speicherregister 112 liegen. Wenn das Filter zur Serienbetriebsweise dient, können diese Speicher jeweils ein einzelnes Vielstufen-Schieberegister mit Umlaufspeicherung für die letzte oder Ausgangsgröße umfassen, während wenn die Parallelbetriebsweise angewendet wird, jeder Speicher eine Mehrzahl von Schieberegistern umfaßt, · und zwar jeweils eine für jede Binärstelle der zu speichernden Wörter. Auch diese Einrichtungen sind vorzugsweise dazu eingerichtet, ihren Inhalt um einen Betrag zu verschieben, der zur Speicherung eines anliegenden Datenwortes in Abhängigkeit von einem getrennt anliegenden Takt- oder Steuerimpulses benötigt wird. Weil die Datenspeicher 132 und 142 eine analoge, wenn auch nicht identische Funktion zu der von den Verzögerungseinheiten 22 und 24 im Filter nach Fig. 1 durchführen, werden die zu einer gegebenen Zeit in den End- oder Aus gangs stufen dieser Einrichtungen erscheinenden Größen mit X bzw. Y bezeichnet, in gleicher Weise, wie die vergleichbaren Ausgangsgrößen der Verzögerungseinheiten 22 und 24.
Die in Verbindung mit den Einrichtungen 112, 122, 132 und 142 erwähnten Taktimpulse kommen in einem Takt- oder Zeitsignal vor, welches neben anderen Steuersignalen von der Steuereinrichtung nach Fig. 2 erzeugt wird. Dieses Steuersignal wird an alle Klemmen "TAKT"
onnooo /nooe
in Fig. 3 angelegt, welche der Klemme "TAKT" in Fig. 2 entsprechen. Ausgewählte Impulse in diesem Taktsignal können an eine der Einrichtungen 112, 122, 132 und 142 dadurch gegeben werden, daß ein jeweiliges UND-Glied 110, 120, 130 oder 140 betätigt wird. Ein beliebiges dieser Glieder kann dadurch betätigt werden, daß eine Betätigungsspannung an eine geeignete Klemme "BETÄTIGE i", "BETÄTIGE J" oder "VERSCHIEBE" angelegt wird. Diese Steuerschaltungen sind auch unter den von der Steuereinrichtung nach Fig. 2 erzeugten Signalen anzutreffen. Demnach sind die Anschlüsse "BETÄTIGE i", "BETÄTIGE J" und "VERSCHIEBE" jeweils in Fig. 2 und 3 gemeinsam vorhanden.
Es wird darauf hingewiesen, daß, weil die Verschiebung der beiden Speicher 132 und 142 von einem einzelnen Steuerpunkt (d.h. der Klemme "VERSCHIEBE") gesteuert wird, beide Einrichtungen gleichzeitig verschoben werden. Da im Verlaufe der Verschiebung beide Einrichtungen in ihre erste oder Eingangsstufe das unmittelbar vor der Verschiebung anliegende Wort aufnehmen oder speichern, eine solche Verschiebung den Speicher 132 dazu bringt, die Größe I in ihrer Eingangsstufe zu speichern, und den Speicher 142 dazu, die vorherige Größe X zu speichern.
/ η η ο c
2U6982
Eine der Größen I, J, X oder Y kann an die arithmetische Größe 192 über eine Sammelleitung 101 dadurch angelegt werden, daß eine zutreffende Verknüpfungsschaltung 114, 124,134 bzw. 144 betätigt wird. Jede dieser Verknüpfungsschaltungen ist ähnlich ausgebildet, wie die bereits beschriebene Eingangseinrichtung 100. Sie können daher durch Anlage einer Steuer spannung an eine zutreffende Steuerklemme "LESEN I", "LESEN J", "LESEN X" oder "LESEN Y" betätigt werden. Wie die anderen erwähnten Steuersignale werden diese Spannungen durch die Steuereinrichtung nach Fig. 2 erzeugt. Demgemäß sind die Anschlüsse oder Klemmen "LESEN i", "LESEN J", "LESEN X" bzw. "LESEN Y" in Fig. 2 und 3 jeweils gemeinsam vorhanden.
Die arithmetische Einheit 192 umfaßt einen Komplementierer 150, einen Addierer 152, einen Akkumulator 156 und Verknüpfungsschaltungen 158 und IGO. Generell ist diese Einrichtung dazu in der Lage, Additions- oder Subtraktionsoperationen auf binäre, anliegende, Zweier-Komplement codierte Datenwörter auszuführen. Obwohl der Addierer 152 nur zur Addition von zwei anliegenden Größen eingerichtet ist (d.h. das vom Komplementierer 150 erzeugte Datenwort und der Inhalt des Akkumulators 156) kann jedes der arithmetischen Einheit 192 zugeführte Wort bezüglich des Vorzeichens vor der Anlage an den Addierer 152 geändert werden, um die Subtraktion dieses
? Π P Γι Λ fl / Π R 3 6
Datenwortes vom Inhalt des Akkumulators 156 zu bewirken. Bekanntlich kann eine im Zweier-Komplement codierte Größe (ob positiv oder negativ) bezüglich des Vorzeichens dadurch umgekehrt werden, daß das Zweier-Komplement dieser Größe gebildet wird. In der arithmetischen Einheit 192 wird diese Zweier-Komplementbildung, falls notwendig, durch den Komplementierer 150 und die Anlage eines geeigneten Signals über die Klemme "VORZEICHEN" zum Addierer 152 durchgeführt.
Die arithmetische Einheit 192 kann auch eine Multiplikation eines anliegenden Datenwortes mit einer Multiplizier größe durchführen, welche mit positiver oder negativer Vorzeichengröße codiert ist, wobei die Bits dieser Größe der Einheit 192 über die Klemmen "VORZEICHEN" und "GROSSE" nacheinander zugeführt werden. Diese Multiplizier größen sind selbstverständlich die Filterkoeffizienten (z.B. die Größen A bis E). Wie durch die arithmetische Einheit 192 durchführbar, beinhaltet die Multiplikation mit solchen positiven oder negativen Größen im allgemeinen eine ausgewählte wiederholte Addition bzw. Subtraktion der in Zweier-Komplement codierten Multiplikant-Größe. Einzelheiten dieser arithmetischen Operationen werden nachfolgend erläutert.
Im Sinne einer detaillierten Beschreibung der arithmetischen Einheit
2U6982
besteht der Komplementierer 150 aus einer logischen Schaltung, welche eine von mehreren Operationen auf anliegende Datenwörter in Abhängigkeit von Zweipegel-Steuersignalspannungen durchführt, welche an den Steuerklemmen "VORZEICHEN" und "GROSSE" anliegen. Wenn eine Steuer spannung mit dem ersten Pegel (als binäre Einspegel oder einfach als binäre Eins bezeichnet) an der Klemme "GROSSE" anliegt, gibt der Komplementierer 150 entweder das anliegende Datenwort oder das Einerkomplement dieses Datenwortes weiter, und zwar in Abhängigkeit davon, ob eine Steuer spannung vom ersten oder zweiten Pegel an der Klemme "VORZEICHEN" anliegt. Diese Pegel des an der Klemme "VORZEICHEN" anliegenden Signals werden willkürlich als binäre Null- bzw. binäre Einspegel (oder einfach binäre Null und Eins) bezeichnet. Diese Pegel sind vorteilhafterweise mit den Signalpegeln verträglich, die bei der Codierung der zu verarbeitenden Datenwörter Verwendung finden. Wie bekannt, kann das Einerkomplement eines anliegenden Datenwortes in das bequemer zu handhabende Zweierkomplement dieses Wortes dadurch umgewandelt werden, daß eine binäre Eins an die letzte Binärstelle des Einerkomplementwortes addiert wird. Dies wird durch Anlage des an der Klemme "VORZEICHEN" anliegenden Steuersignals zum Addierer durchgeführt, und zwar als ein arithmetischer Übertrag zu der letzten Stelle (d. h. der am wenigsten signifikanten Stelle) der hierin durch-
2U6982
geführten Addition. Wenn der Komplementier er 150 ein Datenwort erzeugt, welches das Einerkomplement des anliegenden Datenwortes ist, (in welchem Fall die binäre Eins das der Klemme "VORZEICHEN" zugeführte Steuersignal ist) ändert die Anlage des Signals an der Klemme "VORZEICHEN" zum Addierer 152, wie beschrieben, die Wirkung dieses Einerkomplementwortes in eine Wirkung des Äquivalentes eines Zweierkomplementwortes. Wenn andererseits das an die Steuerklemme "VORZEICHEN" angelegte Signal eine binäre Null ist, wird das angelegte Datenwort unverändert durch den Komplementierer 150 weitergegeben, aber aus dem gleichen Grund hat die Anlage des Vorzeichensteuersignals (z.B. der binären Null) an den Addierer 152 keine Wirkung auf die in dieser Einrichtung durchgeführte Operation. Durch die kombinierte Operation der Einriditungen 150 und 152 (und unter der Voraussetzung, daß die Verknüpfungsschaltung 158 betätigt ist), kann jede an der arithmetischen Einheit 192 anliegende Zweierkomplementgröße zu dem Inhalt des Akkumulators 156 hinzugezählt oder davon subtrahiert werden, und zwar in Abhängigkeit davon, ob eine binäre Null oder Eins an der Klemme "VORZEICHEN" anliegt. Die Verknüpfungsschaltung 158 ist ähnlich ausgebildet wie die Eingangseinrichtung 100 und wird durch die Anlage einer Steuerspannung an der Steuerklemme "FREI" betätigt.
"> η ο ?■: ο ο / π ο
2H6982
■Jo
Bei der Anlage einer Steuer spannung von einem zweiten Pegel (als binärer Nullpegel oder einfach als binäre Null bezeichnet) an die Klemme "GROSSE" sperrt der Komplementier er 150 das angelegte Datenwort. Wenn das angelegte Datenwort auf diese Weise gesperrt wird, erzeugt der Komplementierer 150 dafür ein Datenwort, welches entweder der binären Null oder dem binären Maximalwert entspricht, abhängig davon, ob die binäre Null oder die binäre Eins an der Klemme "VORZEICHEN" anliegt. Der binäre Maximalwert ist natürlich das Einerkomplement der binären Null und kann als Zweierkomplement der binären Null (welche das gleiche wie die binäre Null ist) durch Addition der binären Eins an die letzte bzw. geringwertigste Stelle des binären Maximalwertwortes angesehen werden. Dies findet im Addierer 152 durch Anlage des Steuersignals "VORZEICHEN" an die oben beschriebene Einrichtung statt. Diese letzteren Fähigkeiten des Komplementierers 150 werden vor allem bei der Durchführung von Multiplikationsoperationen angewendet.
Wie erwähnt, kann eine der arithmetischen Einheit 192 zugeführte Zweierkomplementgröße mit einer positiven oder negativen (Multiplizier)Größe durch wahlweise wiederholte Addition oder Subtraktion der an den Akkumulator anliegenden oder von diesem stammenden Größe (Multiplikant) multipliziert werden. Zusätzlich zu dem Vor-
zeichen der Multipliziergröße, welche an den Komplementierer 150 und den Addierer 152 über die Steuerklemme "VORZEICHEN" angelegt wird, werden die Betrag-Bits dieser Größe nacheinander an den Komplementierer 150 über die Klemme "BETRAG" angelegt, und zwar beginnend mit dem kleinsten Betrag. Jedesmal, wenn so an die Klemme "BETRAG" eine binäre Eins angelegt wird, findet eine Addition oder Subtraktion der Multiplikant-Größe in Abhängigkeit von dem an der Klemme "VORZEICHEN" anliegenden Signal statt. Jedesmal, wenn die binäre Null an die Klemme "BETRAG" angelegt wird, wird die Multiplikant-Größe durch den Komplementier er 150 blockiert und Null zu dem Inhalt des Akkumulators 156 gezählt. Es ist somit offensichtlich, daß die arithmetischen Größen, welche als Multiplizierer benutzt werden, höchst bequem (in der Steuereinrichtung nach Fig. 2) in Vorzeichen-Betrag-Form gespeichert werden können, wobei die binäre Null für das Vorzeichen-Bit von positiven Multiplizierer-Größen und die binäre Eins als Vorzeichen-Bit von negativen Multiplizierer-Größen benutzt werden.
Im Verlauf einer Multiplikation wird die Multiplikant-Größe von dem Inhalt des Akkumulators 156 addiert oder subtrahiert, und zwar mit geeignetem nummerischen Stellenwert relativ zum Inhalt des Akkumulators 156, in dem der Stellenwert der letzteren Größe um eine
2U6982
Binärstelle jedesmal verringert wird, wenn diese Größe an den Addierer 152 als Teil der Multiplikationsoperation angelegt wird. Wenn eine Serienarithmetik Verwendung findet, kann diese Verschiebung des Stellenwertes dadurch durchgeführt werden, daß die Bits des Akkumulator-Inhalts relativ zu den Bits des Wortes verzögert werden, welches von dem Komplementier er 150 erzeugt wird. Wenn eine einfache Addition oder Subtraktion durchgeführt werden soll (z.B. eine Addition oder Subtraktion, welche kein Teil einer Multiplikation ist) kann diese Verzögerung umgangen werden. Wenn Parallelarithmetik Verwendung findet, kann die erforderliche Verschiebung durch Verbindung jeder Akkumulator aus gangsleitung mit der Addierer« eingangsleitung realisiert werden, welche einen nummerischen Stellenwert aufweist, die um eine Binärstelle geringer ist, als die entsprechende Akkumulatorausgangsstelle. Vor der Durchführung einer Addition oder Subtraktion, die nicht mit einer Multiplikation in Zusammenhang steht, kann diese vor verdrahtete Rechtsverschiebung dadurch kompensiert werden, daß zuerst der Inhalt des Akkumulators um eine geeignete Anzahl von Binärstellen nach links verschoben wird. Wenn daher Parallelarithmetik Verwendung findet, muß die Einrichtung 156 sowohl ein Parallelakkumulator als auch ein Links-Schieberegister sein, wobei die Art der Operation von dem Pegel des an der Klemme "BETRIEBSART" anliegenden Steuersignals bestimmt wird.
2U6982
Unabhängig von der Art der durchzuführenden Arithmetik ist die Einrichtung 156 vorzugsweise von der Art, welche eine anliegende Größe speichert oder eine gespeicherte Größe in Abhängigkeit von einem Taktimpuls verschiebt, welcher über ein betätigtes UND-Glied 154 angelegt wird. Das UND-Glied 154 kann durch Anlage einer Steuerspannung an die Klemme "AKKUMULATOR BETÄTIGEN" betätigt werden. Die an den Klemmen "BETRIEBSART" und "AKKUMULATOR BETÄTIGEN" anliegenden Steuersignale gehören zu den von der Steuereinrichtung nach Fig. 2 erzeugten Signalen.
Die arithmetische Einheit 192 kann von der im Akkumulator 156 gespeicherten Größe dadurch freigemacht werden, indem eine Sperrspannung dem Steuereingang "FREI" während eines Additions- oder Subtraktionszyklus zugeführt wird. Die Anlage einer solchen Steuerspannung an die Klemme "FREI" sperrt das Glied 158, wobei der Weg oder die Wege gesperrt werden, über welche der Inhalt des Akkumulators 156 an den Addierer 152 angelegt wird. Der frühere Inhalt des Akkumulators 156 wird daher gelöscht oder geht verloren, wenn diese Einrichtung ihren Zustand ändert, um ein neu angelegtes Addierer-Ausgangswort zu speichern.
Um die Glieder 158 und 160 gleichzeitig zu betätigen (beide können ähnlich ausgebildete Verknüpfungsglieder sein), kann der Inhalt des
2U6982
Akkumulators 156 zur Speicher einheit 190 über die Sammelleitung zurückgegeben werden. Zur Betätigung des Gliedes 160 kann eine von der Steuereinrichtung nach Fig. 2 erzeugte Steuer spannung der Klemme "AKKUMULATOR LESEN" zugeführt werden. Jedes der Speichereinheit 190 über die Sammelleitung 101 zugeführte Datenwort kann entweder im Wortspeicherregister 112 oder 122 oder in beiden, wie erläutert, gespeichert werden.
Fig. 4 zeigt einen Algorithmus, wobei eine Filtero per ation zweiter Ordnung, ähnlich zu der im Filter nach Fig. 1 durchgeführten Operation, in der gerade erläuterten Einrichtung nach Fig. 3 durchgeführt werden kann. Als erster Schritt, Schritt 1 in Fig. 4, wird eine in Zweierkomplement binär codierte Signalabtastung, welche an die Einrichtung nach Fig. 3 über die Sammelleitung 99 anstieg, der Sammelleitung 101 über die betätigte Eingangs einrichtung 100 zugeführt und in dem Register 112 gespeichert. Im Schritt 2 wird die Größe X, das Datenwort in der Ausgangsstufe des Datenspeichers 132 erster Ordnung, mit den Filterkoeffizienten E multipliziert. Im ersten Multiplikationszyklus wird der Akkumulator 156 natürlich gelöscht, indem das Glied 158 gesperrt wird. Während aufeinanderfolgender Multiplikationszyklen wird das Glied 158 betätigt und das Produkt der Größen X und E allmählich in dem Akkumulator 156 angesammelt. Beim Schritt 3 wird die Größe I, die gerade zurückliegende gespeicherte
r\ η η ^ η / η O O C
2U6982
Abtastung, der arithmetischen Einheit 192 zur Addition zum Produkt von X und E zugeführt. Vorteilhafterweise werden die binären Punkte in den Datenwörtern und den Koeffizienten positioniert, um die Verschiebung möglichst gering zu halten, welche zur Durchführung der Addition eines Datenwortes wie die Größe I und ein in dem Speicher 156 gespeichertes Multiplikationsprodukt benötigt wird. Wenn beispielsweise eine Parallelarithmetik durchgeführt wird, kann der binäre Stellenwert von komplementierten, im Akkumulator 156 gespeicherten Produkten dem binären Stellenwert eines an die arithmetische Einheit 192 anliegenden Datenwortes gleichgemacht werden, so daß der Akkumulator 156 nur um eine Binärstelle nach links verschoben werden braucht (um die vorverdrahtete Rechtsverschiebung in der Rückkopplungs verbindung zwischen Akkumulator 156 und Addierer 152 zu kompensieren), bevor ein anliegendes Datenwort zu einem gespeicherten Produkt addiert wird. Der Schritt 2 umfaßt notwendigerweise diese Linksverschiebung als ein Vorspiel zur Addition der Größe I zu dem gespeicherten Produkt von X und E. Im Schritt 4 wird die erhaltene Größe zum Speicherregister 112 rückgeführt, wobei die arithmetische Einheit 192 für weitere arithmetische Operationen freigemacht wird.
In Schritt 5 wird die Größe Y mit dem Filterkoeffizient D in der oben
2U6982
beschriebenen Weise multipliziert und das erhaltene Produkt im i:
Akkumulator 156 gespeichert. In Schritt 6 wird die Größe I zu dem Produkt von Y und D hinzu addiert und die erhaltene Summe im Akkumulator gespeichert. Es wird darauf hingewiesen, daß diese gespeicherte Größe identisch ist mit der im Addierer 20 des bekannten Filters nach Fig. 1 erzeugten Größe. Im Schritt 7 wird diese Größe zu den Speicherregistern 112 und 122 übertragen.
In den Schritten 8 bis 13 werden die Größen X und Y mit den Vorwärtsrichtungs-Filterkoeffizienten C bzw. B multipliziert. Jedes der erhaltenen Produkte wird zu dem Inhalt des Speicherregisters 122 (d.h. zur Größe J) hinzugefügt und das Ergebnis wird zum Register 122 rückgeführt. Bei der Beendigung des Schrittes 13 enthält das Speic&erregister 122 eine Größe, die identisch ist mit der vom Addierer 38 des bekannten Filters nach Fig. 1 erzeugten Größe, während das Register 112 noch eine Größe enthält, die identisch ist mit der vom Addierer 20 erzeugten Größe.
Im Schritt 14 werden die Datenspeicher 132 und 142 um ein gespeichertes Wort in Richtung ihrer jeweiligen Aus gangs stufen verschoben. Als Ergebnis speichert der Speicher 132 die Größe I in seiner Ausgangsstufe und der Speicher 142 die frühere Größe X. Die frühere Größe Y geht verloren und neue Größen X und Y erscheinen.
2U6982
-2J-
Im Schritt 15 wird die Größe J mit dem Koeffizienten A multipliziert und das Produkt im Akkumulator 156 gespeichert. Diese Größe ist natürlich äquivalent einem Ausgangswort, welches durch das Filter gemäß Stand der Technik nach Fig. 1 erzeugt worden ist. Im Schritt wird der Inhalt des Akkumulators 156 zum Speicherregister 112 gebracht.
Indem der Schritt in allen außer der ersten Wiederholung ausgelassen wird, können die in Fig. 4 erläuterten Filteroperationen eine beliebige Anzahl von Malen ρ wiederholt werden, um eine Filterfunktion zu erzeugen, die äquivalent ist von ρ in Kaskade geschalteten Filterabschnitten zweiter Ordnung. Jeder Wiederholung des Filteralgorithmus zweiter Ordnung nach Fig. 4 ist ein jeweiliger Satz von Koeffizienten A bis E zugeordnet. Da darüber hinaus jede Wiederholung dieses Algorithmus die Errechnung einer rekursiven Größe einschließt (d.h. der im Register 112 am Ende des Schrittes 7 vor eingestellte Größe), ferner die Verschiebung oder Verrückung des Inhalts der Speicher 132 und 142 zur Speicherung dieser errechneten rekursiven Größe (Scliritt 14) stattfindet, erscheinen neue Größen X und Y zur Verwendung bei jeder Wiederholung des Filteralgorithmus.
In allen außer der ersten der Serie von ρ Wiederholungen des Algorith-
20Sb/ } / 0 3 3 6
mus nach Fig. 4 ist die Eingangsgröße oder die Größe, auf welche die Filter operation zweiter Ordnung ausgeführt wird, die Ausgangsgröße der vorhergehenden Filter operation zweiter Ordnung. Diese Größe ist eine nichtrekursive Größe (d.h. die im Register 122 am Ende des Schrittes 13 vorhandene Größe), multipliziert mit einem Maßstabskoeffizienten A (Schritt 15). Gerade wie eine anliegende Abtastung im Register 112 als erster Schritt während der ersten von ρ Wiederholungen des zugrundeliegenden Algorithmus gespeichert wird, werden die Eingangsgrößen für die nachfolgenden Wiederholungen des Algorithmus ebenso im Register 112 (Schritt 16) gespeichert.
Am Schluß einer gegebenen Serie von ρ Wiederholungen des Filteralgorithmus zweiter Ordnung nach Fig. 4 wird die zuletzt gemessene nichtrekursive Größe (d.h. die im Register 112 gespeicherte Größe) von dem Filter als digital-codiertes, zu diskreter Zeit gefiltertes Ausgangswort abgezogen. Dies wird durch Anlage einer Betätigungsspannung an die Klemme "LESEN i" und zu gleicher Zeit durch Betätigung des Ausgangsspeicherregisters 180 (ähnlich dem Register 112 oder 122) durchgeführt, wobei gleichzeitig eine Betätigungsspannung an der Klemme "AUSGANGSBETÄTIGUNG" und ein Taktimpuls an der Klemme "TAKT" vorkommen. Diese Ausgangsgröße kann danach einem beliebigen Verbraucher zugeführt werden.
209829/0836
2U6982
M Ά M* tr\ V* X X
-29-
Sobald die gewünschte Ausgangsgröße im Register 180 gespeichert ist, kann eine weitere Serie von ρ FiIt er operationen zweiter Ordnung ausgeführt werden, entweder auf eine neue Abtastung von der gleichen Quelle (im Falle, daß die Daten nur von einer Quelle verarbeitet werden sollen) oder von einer Abtastung aus einer zweiten (von mehreren) Quellen. Diese zweite Serie von ρ Wiederholungen des Algorithmus nach Fig. 4 kann entweder mit den gleichen oder mit neuen Filterkoeffizienten durchgeführt werden. Im allgemeinen können ρ Filteroperationen zweiter Ordnung auf eine Abtastung von jeder von q Quellen durch ρ mal q Wiederholungen des Algorithmus nach Fig. 4 durchgeführt werden. Dieser Zyklus wird bis ad infinitum zur Erzeugung einer fortlaufenden Filteroperation wiederholt.
Die Fig. 5A stellt den Inhalt vom Datenspeicher 132 und 142 erster und zweiter Ordnung am Beginn des i-ten Filterzyklus dar. Wenn die i-te Abtastung von der ersten von q Quellen an das Filter angelegt wird, enthält die End- oder Ausgangsstufe des Speichers 132 die rekursive Größe, welche während der ersten Filter operation zweiter Ordnung in dem vorhergehenden Filterzyklus (d.h. in Zyklus i-1) errechnet worden ist. In ähnlicher Weise enthält die Ausgangsstufe des Speichere 142 die entsprechende rekursive Größe vom Zyklus i-2. Diese Größen (d.h. die Größen X bzw. Y) werden, wie zuvor erläutert,
■■■■': ·" ■ ■ ■ ■.·■-U.F. rn
zur Errechnung neuer rekursiver und nichtrekursiver Größen in
einer ersten Wiederholung von Filteralgorithmen zweiter Ordnung nach Fig. 4 benutzt. Zu geeigneter Zeit in der sich ergebenden Filteroperation zweiter Ordnung (d.h. beim Schritt 14 im Algorithmus nach Fig. 4) wird der Inhalt der Speicher 132 und 142 um ein Wort in Richtung ihrer jeweiligen Ausgangsstufen verschoben, mit dem Ergebnis, daß der Inhalt dieser Einrichtungen die in Fig. 5B gezeigte Konfiguration einnimmt. Wie sich aus Fig. 5B ergibt, ist in der ersten oder Eingangsstufe des Speichers 132 eine rekursive Größe (d.h. die in der laufenden Filter operation zweiter Ordnung errechnete rekursive Größe) neu gespeichert. Diese Größe kommt als Größe X heraus, wenn der Speicher 132 entsprechend oft verschoben worden ist, d.h., nachdem ρ Filteroperationen zweiter Ordnung auf eine Abtastung aus einer von q Quellen angewendet worden ist. Ähnlich wird die frühere Größe X, wie benötigt, in der laufenden Filteroperation benutzt, in die Eingangsstufe des Speichers 142 eingeschoben und als Größe Y zur gleichen Zeit entnommen, wenn die im Speicher 132 gespeicherte, vorhergehende Größe zur Größe X wird. Schließlich sind als Ergebnis der Verschiebungen in den Speicher 132 und 142 neue Größen X und Y zur Verwendung in den Filter operationen zweiter Ordnung verfügbar, welche der Vervollständigung der laufenden Operationen nachfolgen.
21A6982
Im allgemeinen wird die bei jeder Wiederholung des zugrundeliegenden Algorithmus errechnete rekursive Größe zur Verwendung in der entsprechenden Wiederholung in den beiden nachfolgenden Filterzyklen (d. h. die erste als Größe X und dann als Größe Y) gespeichert. Da jeder Filterzyklus ρ mal q Wiederholungen des zugrundeliegenden Algorithmus enthält und daher die Errechnung von ρ mal q rekursiven Größen stattfindet, die nicht wieder (als Größe X) benötigt werden, bis ρ mal q Wiederholungen nach der Wiederholung, in welcher sie errechnet worden ist, wird der Speicher 132 mit einer Kapazität zur Speicherung von ρ mal q rekursiven Größen ausgestattet. In ähnlicher Weise werden die Größen X nicht erneut (als Größen Y) benötigt, bis ρ mal q Wiederholungen nach der Wiederholung stattgefunden haben, in welcher sie als Größe X erscheint. Der Speicher 142 ist daher auch mit einer Kapazität zur Speicherung von ρ mal q rekursiven Größen ausgestattet. Die Speicher 132 und 142 können eine größere Kapazität aufweisen, als es dem Produkt der speziellen Werte von ρ und q entspricht, solange eine Einrichtung zum Kurzschließen von in der speziellen Anwendung nicht gebrauchter Kapazität vorgesehen ist. Andererseits wirken die Kapazitäten dieser Speicher als obere Grenze für die Parameter ρ und q darin, daß das Produkt von speziellen Werten von ρ und q nicht die Anzahl der Worte übersteigen kann, welche in den Speicher 132 und 142 gespeichert werden können.
ν-tii -32-
Die Einrichtung nach Fig. 3 wird in Übereinstimmung mit dem Algorithmus nach Fig. 4 mittels der Steuerschaltung nach Fig. 2 gesteuert, d.h. dem Taktgeber 200, dem Zähler 202 und dem bereits kurz erwähnten Befehls- und Koeffizientenspeicher 204 und 206. Diese Steuerschaltung legt die erforderlichen Zweipegel-Steuersignale an die mit Aufschriften versehenen Klemmen der Einrichtung nach Fig. 3 an, wie diese in Fig. 2 gezeigt sind.
Der Taktgeber 200, welcher eimgeeigneter Taktsignalgenerator sein kann, erzeugt eine Serie von Taktimpulsen (siehe Fig. 6A), welche der Steuer klemme "TAKT" und dem Befehlszähler 202 zugeführt wird. Der Befehlszähler 202, welcher als entsprechender Ringzähler oder Schrittschalter ausgebildet sein kann, steuert aufeinanderfolgende Teile der Befehls- und Koeffizientenspeicher 204 und 206 in.Abhängigkeit dieser anliegenden Taktimpulse an. Die Speicher 204 und 206 können beliebige Speichereinrichtungen sein, z.B. Magnetkernspeicher oder feste Diodenmatrixspeicher. Jeder adressierbare Teil der Speicher 204 und 206 enthält einen gespeicherten Befehl, welcher den Pegel des Zweipegel-Steuersignals bestimmt, welches an die jeweiligen Steuerklemmen in Fig. 2 außer der Klemme "TAKT" angelegt wird. Die in den Speicher 204 und 206 gespeicherten Bedingungen oder Informationen können mindestens teilweise wie in Fig. 6B bzw. 6C bezeichnet, bequem wiedergegeben werden. Jede horizontale Zeile in den
Matrizes der Fig. 6B und 6C stellt ein Nennbefehl dar, dessen Funktion am linken Rand der Matrix nach Fig. 6B notiert ist. Jeder Befehl wird von dem Zähler 202 während des entsprechenden Zyklus des Taktsignals nach Fig. 6A angesteuert. Jede Eins oder Null in diesen Befehlen zeigt den Pegel der Steuersignalspannung an, welche an die Steuerklemme angelegt wird, die am Kopf der Matrixspalte steht, in welcher diese Eins oder Null erscheint. Die angedeuteten Bedingungen dauern nur während des Takt- oder Befehlszyklus an, in welchem der gerade interessierende Befehl angesteuert wird. Im einzelnen zeigt eine binäre Eins in den Spalten "QUELLE LESEN", "BETÄTIGEN i", "LESEN I", "BETÄTIGEN J", "LESEN J", "LESEN X", "LESEN Y", "AKKUMULATOR BETÄTIGEN", "FREI", "AKKUMULATOR LESEN", "VERSCHIEBEN" oder "AUSGANG BETÄTIGEN" an, daß ein Verknüpfungsglied betätigende Spannung an die entsprechend beschrifteten Steuerklemmen angelegt werden soll. Die binäre Null in diesen Spalten deutet an, daß eine Verknüpfungsglied sperrende Spannung angelegt werden soll. Die binäre Null in der Spalte "BETRIEBSART" weist darauf hin, daß an die Klemme "BETRIEBSART" anzulegende Steuerspannung so gewählt ist, daß der Akkumulator 156 eine parallel gespeicherte Größe nach links verschiebt, wenn er nachfolgend betätigt wird. Eine binäre Eins in der Spalte "BETRIEBSART" deutet daraufhin, daß diese Steuerspannung so ist, daß der Akkumulator 156 eine
anliegende Parallelgröße speichert. Diese alternativen Funktionen -^ des Akkumulators 156 sind bereits oben beschrieben worden. Ähnliche Funktionen können durch das an der Klemme "BETRIEBSART" anliegende Steuersignal gesteuert werden im Fall, daß serienmäßige Arithmetik durchgeführt werden soll. Die Funktionen, welche durch die an den Klemmen "VORZEICHEN" und "BETRAG" anliegenden Signale gesteuert werden, sind bereits in Verbindung mit dem Komplementierer 150 und dem Addierer 152 der Einrichtung nach Fig. 3 beschrieben worden. Wie dort erwähnt, müssen diese Signale jeweils die Vorzeichen- und Betrags-Bit der Filterkoeffizienten darstellen. Die in dieser Beschreibung erwähnten binären Bestimmungen sind derart, daß diese Koeffizienten in dem Koeffizientenspeicher 206 in Vorzeichen-Betrag-Form gespeichert werden können. Demgemäß sind die Eintragungen S in der Spalte "VORZEICHEN" als Darstellungen des Vorzeichens der Filterkoeffizienten zu verstehen (Null für positive und Eins für negative Größen), welche am linken Rand der Matrix nach Fig. 6C identifiziert werden. Die Eintragungen ό. in der Spalte "BETRAG" stellen in ähnlicher Weise die verschiedenen Betrags-Bits der identifizierten Koeffizienten dar, beginnend mit dem niedrigstwertigen Bit. Zusätzlich deuten weitere Einsen und Nullen in der Spalte "BETRAG", die nicht mit den Filterkoeffizienten zu tun haben, Steuersignalspannungspegel an, die an die Klemmen "VORZEICHEN" und "BETRAG" während Befehlszyklen angelegt werden,
2U6982
die nicht mit Multiplikationsoperationen verknüpft sind.
Die Fig. 6B und 6C stellen nur solche Befehle dar, die zur Durchführung einer Filteroperation zweiter Ordnung benötigt werden und deshalb entsprechen diese einer Wiederholung des Algorithmus nach Fig. Der erste Schritt in Fig. 4 wird beispielsweise durch den ersten Befehl nach Fig. 6B und 6C durchgeführt, welcher über die binären Einsen in den Spalten "QUELLE LESEN" und "BETÄTIGEN i" anzeigt, daß die Verknüpfungsglied betätigenden Spannungen an die Klemmen "QUELLE LESEN" und ".BETÄTIGEN i" dann angelegt werden, wenn dieser Befehl angesteuert wird. Die UND-Glieder 100 und 110 in der Einrichtung nach Fig. 3 werden dabei betätigt. Wenn ein Impuls in dem an der Klemme "TAKT" (siehe Fig. 6A) in dem Signal vorkommt, wird dieser Impuls dem Speicherregister 112 dadurch zugeführt, daß das UND-Glied 110 betätigt wird. Das Register 112 speichert deshalb die an dem Filter anliegende Abtastung.
Die nächste Befehls gruppe führt die erforderliche Multiplikation der Größe X mit dem Koeffizienten E aus. Dies wird durch mehrere ähnliche Befehle durchgeführt, bei welchen Einsen in den Spalten "LESEN X" "AKKUMULATOR BETÄTIGEN", "BETRIEBSART" und mit Ausnahme des ersten Befehls in der Spalte "FREI" vorkommen. Eine Eins in der
Spalte "LESEN X" deutet natürlich an, daß die Größe X der arithmetischen Einheit 192 während jedes Multiplizierbefehlszyklus zugeführt werden soll. Eine Eins in der Spalte "BETRIEBSART" weist darauf hin, daß der Akkumulator 156 eine anliegende Größe speichert und nicht eine gespeicherte Größe verschiebt, wenn dieser betätigt wird. Die Eins in der Spalte "AKKUMULATOR BETÄTIGEN" deutet an, daß das UND-Glied 154 betätigt wird, wobei ein Taktimpuls an den Akkumulator 156 angelegt wird und diese Einrichtung dazu gebracht wird, die anliegende Größe während jedes Multiplizierzyklus zu speichern. Sobald der Akkumulator 156 in dem ersten Multiplizierbefehlszyklus freigemacht worden ist, erlauben die Einsen in der Spalte "FREI", daß der Inhalt des Akkumulators 156 während jedes nachfolgenden Multiplizierbefehlszyklus an den Addierer 152 gelegt wird. Wie durch die Eintragung S_ in Spalte "VORZEICHEN" in der Matrix nach Fig. 5C angedeutet, wird das Vorzeichen-Bit des Koeffizienten E (Null bzw. Eins für einen positiven bzw. negativen Koeffizienten) der Steuerklemme "VORZEICHEN" während jedes dieser Multiplizierbefehls zyklen zugeführt. Zusätzlich werden die η Betrags-Bits (ό bis ό ) des Koeffizienten E der Steuerklemme "BETRAG", wie in der Spalte "BETRAG" angedeutet, zugeführt, und zwar eine pro Multiplizierbefehlszyklus und in der Reihenfolge, in welcher sie gespeichert sind.
209329/0836
Am Schluß der Multiplikation der Größen X und E bringt ein Befehl, der in Fig. 6B als "NACH LINKS VERSCHIEBEN" bezeichnet ist und in allen Spalten der Fig. 6B außer in der Spalte "AKKUMULATOR BETÄTIGEN" dargestellt wird, den Akkumulator 156 dazu, seinen Inhalt um eine Binärstelle nach links, (wie durch die Null in der Spalte "BETRIEBSART" angedeutet) in Vorbereitung für die Addition des darin gespeicherten Produktes und des Inhaltes des Speicherregisters 112 zu verschieben.
Der nächste Befehl, als "ADDIEREN i" in Fig. 6B bezeichnet, verursacht die Anlage der Größe I und des Inhaltes des Akkumulators an den Addierer 152. Zusätzlich zu der Anordnung der Einsen und Nullen in den Teil dieses in Fig. 6B gezeichneten Befehls erscheinen Nullen und Einsen in den Spalten "VORZEICHEN" bzv/. "BETRAG" in der Matrix nach Fig. 6C, um anzudeuten, daß Steuersignale an die Klemmen "VORZEICHEN" und "BETRAG" angelegt werden müssen, um die Größe I unverändert durch den Komplementierer 150 wandern zu lassen.
Nach der Addition der Größe I zu dem Produkt der Größen X und Y und nach der Speicherung des Ergebnisses im Akkumulator 156, muß dieses Ergebnis in das Speicherregister 112 übertragen werden, wie
-38- 2U6982
im Schritt 4 nach Fig. 4 verlangt. Dies wird durch den Befehl "ÜBERTRAGEN NACH i" in Fig. 6B durchgeführt. In diesem Befehl deuten Einsen in den Spalten "FREI" und "AKKUMULATOR LESEN" darauf hin, daß Steuersignale an die Klemmen "FREI" und "AKKUMULATOR LESEN" angelegt werden sollen, um die Glieder 158 bzw. 160 zu betätigen. Als Ergebnis wird der Inhalt des Akkumulators 156 der Speicher einheit 190 zugeführt, worin das Speicherregister 112 zur Speicherung dieser Größe betätigt wird. Das Register 112 wird so durch einen Taktimpuls betätigt, der während des letzten Teiles dieses Befehlszyklus an der Klemme "TAKT" anliegt. Wie durch die Eins in Spalte "BETÄTIGEN i" in Fig. 6B angedeutet, wird dieser Impuls dem Register 112 über das betätigte UND-Glied 110 zugeführt.
Die verbleibenden, in den Matrizes nach Fig. 6B und 6C dargestellten Befehle, von denen die meisten den bereits erläuterten ähnlich sind, führen die restlichen Schritte in dem Algorithmus nach Fig. 4 durch. Sie dürften ohne weitere Erläuterung verständlich sein.
Die Mehrzahl der Filteroperationen zweiter Ordnung, die zur Durchführung von Filterfunktionen höherer Ordnung auf Daten von mehreren Quellen benötigt werden, können dadurch realisiert werden, daß die in Fig. 6B und 6C dargestellten Speicher vergrößert werden, so daß
-39~ 2U6982
jedes ρ mal q mal die in den Fig. 6B und 6C dargestellte Größe ist. Wie in der vorhergehenden Erläuterung stellen ρ und q jeweils die Anzahl der durchzuführenden Filteroperationen zweiter Ordnung und die Anzahl der Quellen dar, aus welchen die Daten stammen. Demgemäß enthalten die so vergrößerten Speicher 204 und 206 ρ mal q Wiederholungen der in Fig. 6B und 6C dargestellten Befehle mit geeignet angeordneten Eingangs- und Ausgangsbefehlen.
Zur Verringerung der benötigten Kapazität der Speicher 204 und/oder , 206 können eine Anzahl von Wegen beschritten werden. Wenn beispielsweise Daten von allen Quellen der gleichen Filter übertragungsfunktion unterworfen werden sollen, brauchen die Speicher 204 und 206 nur auf ρ mal die in den Fig. 6B und 6C gezeigte Größe erweitert zu werden. Selbst wenn unterschiedliche Koeffizienten auf die Daten jeder Quelle angewendet werden müssen, sind die Basis-Filteroperationen in Beziehung auf die Daten von jeder Quelle die gleichen. Demgemäß kann der Befehlsspeicher 204 mit Kapazität zur Speicherung der Befehle für ρ Filterzyklen zweiter Ordnung ausgestattet werden, während der Koeffizientenspeicher 206 zur Speicherung von ρ-mal q getrennten Sätzen von Filterkoeffizienten eingerichtet ist. Es ist dann notwendig, den Befehlsspeicher 204 jedesmal durchlaufen zu lassen, wenn eine neue Abtastung von einer Quelle angelegt wird, während der Koeffizientenspeicher 206 nur dann einen neuen Zyklus beginnt, wenn alle
-40- 2U6982
Koeffizienten Verwendung gefunden haben. Dies kann durch eine logische Schaltung durchgeführt werden, welche die geeignete Gruppe von ρ Sätzen von Filterkoeffizienten zur Anwendung während jedes Zyklus der gespeicherten Befehle auswählt. Indem noch ausgefeiltere Logikschaltungen angewendet werden, kann die Größe des Befehlsspeichers 204 noch weiter reduziert werden. Dieser Speicher kann selbst bis zu der durch die Matrix nach Fig. 6B dargestellte Größe reduziert werden, wenn eine Schaltung vorgesehen ist, welche den ersten oder Inanspruchnahme-Befehl (load instruction) außer während der ersten Gruppe der ρ Filterzyklen zweiter Ordnung unterdrückt und einen Freisetzungsbefehl (unloading instruction) als letzteren Befehl in der letzten Gruppe der ρ Filterzyklen zweiter Ordnung umfaßt.
Es ist somit ersichtlich, daß die Parameter ρ und q des Filters nach der Erfindung zur Anpassung an eine spezielle Anwendung einfach dadurch geändert werden können, daß die Speicher 204 und 206 ersetzt bzw. der Inhalt dieser Speicher so weit verändert wird, als das Produkt der Parameter ρ und q nicht die Anzahl der Datenwörter übersteigt, welche gleichzeitig in den jeweiligen Datenspeicher 132 und gespeichert werden können. Diese Änderungen in den Speichern 204 und 206 können ohne Abänderung des Basis-Operationsteils 220 des
η η O C
-41- 2U6982
Filters durchgeführt werden. Demgemäß ist das Filter gemäß Erfindung in beträchtlichem Maße in Bezug auf die Ordnung der durchzuführenden Filterfunktionen und die Anzahl der zu verarbeitenden Datenquellen flexibel.
Wenn das Filter gemäß Erfindung zur Durchführung einer Parallelarithmetik konstruiert wird, kann der Datenverarbeitungsteil des Filters aus einer gewissen Anzahl von identischen Filterbauteilen aufgebaut werden (wovon eine typische Ausführungsform in Fig. 7A gezeigt ist), die parallel zueinander geschaltet sind, wie aus Fig. 7B hervorgeht. In dem Filter nach Fig. 7B bearbeitet jedes der Baueinheiten 196-1 bis 196-n1 Daten von einer Binärstelle der an das Filter angelegten Abtastungen. Filter einer beliebigen Rechengenauigkeit können daher bei Verwendung einer geeigneten Anzahl von Filterbausteinen konstruiert werden. Obwohl die Steuer anschlüsse des Filterbausteines nicht in Fig. 7B gezeigt sind, versteht es sich, daß alle gleichartigen Anschlüsse aller Bausteine so zusammengeschaltet sind, daß alle Bausteine zur gleichzeitigen Durchführung gleicher Operationen gesteuert werden.
Wenn jede Komponente des in Fig. 7A gezeigten typischen Bausteines mit den entsprechenden Komponenten der anderen, parallel vorhandenen Bausteine kombiniert wird, werden die in entsprechender Weise
2U6982
identifizierten Komponenten des zusammengesetzten Filters nach Fig. 3 erhalten. So enthält beispielsweise das Eins-Bit-Speicherregister 112 von mehreren parallel geschalteten Filterbausteinen das Einwort-Speicherregister 112 in der Einrichtung nach Fig. 7. In ähnlicher Weise umfassen die Datenspeicher 132 erster Ordnung dieser Filterbausteine Datenspeicher 132 erster Ordnung in der Filtereinrichtung nach Fig. 3. Jedes der Ein-Bit-Speicherregister 112 und 122 kann deshalb eine bistabile Kippstufe oder Flipflop sein, während jeder Speicher 132 und 142 als Schieberegister mit einer Kapazität zur Speicherung eines Bits von jedem der mindestens ρ mal q anliegenden Datenwörter ausgebildet sein kann.
Jede der in der arithmetischen Einheit 192 in dem typischen Baustein nach Fig. 7A eingeschlossene Einrichtung (d. h. der Komplementierer 150, der Addierer 152 und der Akkumulator 156) führt Operationen durch, die in Verbindung mit dem Filter nach Fig. 3 erläutert worden sind, aber diese Arbeit nur bezüglich einer Binärstelle des an dieser Einheit anliegenden Datenwortes durchführen. Deshalb sind Verbindungen zum Addierer 152 vorhanden, wobei im Verlauf einer Additionsoperation ein Übertrag ("CARRY IN") (von dem entsprechenden Addierer in dem Baustein der nächstniedrigeren Ordnung) oder ein Übertrag ("CARRY OUT") (zu dem Addierer in der Baueinheit der
ο π η '"> ') η
2U6982
nächsthöheren (Ordnung) bewirkt werden kann. Ordnung bezieht sich in diesem Zusnmmenliang natürlich auf den binären Stellenwert der in einem gegebenen Bauslein verarbeiteten Daten. In ähnlicher Weise sind Leitungen, als Einschieben ("SHIFT IN11) und Ausschieben ("SHIFT OUT") vorgesehen, um den Akkumulator 156 als Links-Schieberegister zu betätigen, wenn entsprechende Steuersignale an die Klemmen 11TAIvT", "AKKUMULATOR BETÄTIGEN" und "BETRIEBSWEISE" angelegt werden. Schließlich wird die verdrahtete Rechts verschiebung in den Rückkopplungsverbindungen vom Akkumulator zum Addierer 152 mittels einer Leitung durchgeführt, die von dem Ausgangsanschluß des UND-Gliedes 158 zurück zum Addierer des Filterbausteines der nächstniedrigen Ordnung führt. In ähnlicher Weise besitzt der Addierer 152 eine Eingangsleitung, welche, wie angezeigt, von dem Baustein der nächsthöheren Ordnung kommt, insbesondere von dem Ausgangsanschluß des UND-Gliedes 158 dieses Bausteines. Die Einrichtung 150, 152 und 156 werden mit entsprechenden Einrichtungen in mehreren Parallelfilterbausteinen zusammengefaßt und bilden die in ähnlicher Weise bezeichneten Einrichtungen in dem Filter nach Fig. 3.
Es verstein sich, daß die gezeichneten und beschriebenen Ausführungsformen nur das Prinzip der Erfindung verdeutlichen sollen, und daß
2U6982
Modifikationen ohne Verlassen des Erfindungsgedankens durchgeführt werden können. Obwohl beispielsweise das oben beschriebene Filter die gleiche Aufgabe erfüllt wie ein Filter, welches aus in Kaskade geschalteten Filterabschnitten zweiter Ordnung besteht, können Filter gemäß Prinzip der Erfindung konstruiert werden, welche das Ergebnis von in Kaskade geschalteten Abschnitten einer anderen Ordnung erzielen. Ein Filter, welches äquivalent von hintereinander geschalteten Abschnitten von beliebiger Ordnung m ist, kann dadurch konstruiert werden, daß m serienmäßig geschaltete Datenspeicher vorgesehen werden, welche den Einrichtungen 132 oder 142 in Fig. 3 ähnlich sind, und in dem eine entsprechende Änderung in dem Arbeitsalgorithmus durchgeführt wird. Hierbei werden natürlich Zusätze in den Befehlsund Koeffizientenspeicher 204 und 206 benötigt. In ähnlicher Weise muß der grundlegende Arbeitsalgorithmus nicht vollständig allgemein sein, wie es auf den oben im einzelnen beschriebenen Algorithmus zutrifft. So kann es bei einigen Anwendungen möglich sein, solche Filterkoeffizienten zu wählen, daß eine oder mehrere Multiplikationen, die in dem allgemeinen Algorithmus benötigt werden, entfallen können. Beispielsweise ist es oft möglich, Maßstabskoeffizienten (d. h. den Koeffizienten A) fortzulassen;

Claims (2)

  1. Schuster, P.A. 1
    -45- 2U6982
    Patentansprüche
    I IJ Digitalfilter zur Durchführung von ρ aufeinanderfolgenden digitalen Filteroperationen von jeweils der Ordnung m auf digitalcodierte Signalabtastungen von jeweils q Quellen, mit folgenden Merkmalen: eine Datenspeichereinrichtung speichert digital-codierte
    r Datenwörter, eine arithmetische Einheit mit Zeit auf teilung führt nacheinander alle erforderlichen arithmetischen Operationen auf die Datenwörter aus;
    gekennzeichnet durch folgende Merkmale; die Datenspeichereinrichtung (190) weist ein Speicherregister (112) zur Speicherung der Ausgangswörter der arithmetischen Einheit (192) und mindestens m seriell miteinander verbundene Vielwort-Schieberegister (132, 142) auf, die jeweils die Aufnahmefähigkeit zur gleichzeitigen Speicherung von mindestens ρ mal q aufeinanderfolgend anliegenden Datenwörtern besitzen;
    die seriell miteinander verbundenen Schieberegister (132, 142) dienen zur Speicherung von Datenwörtern, die in dem Speicherregister (112) gespeichert sind;
    eine Verknüpfungseinrichtung (134, 144)» ist an den Ausgangsanschlüssen jedes Schieberegisters (132, 142) angeschlossen und legt die digitalcodierten, durch die Schieberegister (132, 142) erzeugten Datenwörter
    wahlweise an die arithmetische Einheit (192) mit Zeitaufteilung an.
  2. 2. Digitalfilter nach Anspruch 1, dadurch gekennzeichnet, daß ein Befehlsspeicher (204) zur Speicherung variabler Befehle, welche die speziellen Werte von p, m und q beinhalten, dient und daß dieser Befehlsspeicher - in Übereinstimmung mit den speziellen Werten - die Steuerung des Umlaufs der Datenwörter steuert, um die Digitalfilteroperation zu wiederholen und die Anlage von neuen Abtastungen sowie der Aus gangs signale der gefilterten Abtastungen von dem Digitalfilter zu steuern.
    209029/0836
DE19712146982 1970-12-21 1971-09-21 Programmierbare digitale Filtereinrichtung Withdrawn DE2146982A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US9974770A 1970-12-21 1970-12-21

Publications (1)

Publication Number Publication Date
DE2146982A1 true DE2146982A1 (de) 1972-07-13

Family

ID=22276425

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19712146982 Withdrawn DE2146982A1 (de) 1970-12-21 1971-09-21 Programmierbare digitale Filtereinrichtung

Country Status (10)

Country Link
US (1) US3706076A (de)
JP (1) JPS5312145B1 (de)
BE (1) BE772813A (de)
CA (1) CA937297A (de)
DE (1) DE2146982A1 (de)
FR (1) FR2119309A5 (de)
GB (1) GB1355107A (de)
IT (1) IT939838B (de)
NL (1) NL7112895A (de)
SE (1) SE364832B (de)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3798560A (en) * 1973-01-29 1974-03-19 Bell Telephone Labor Inc Adaptive transversal equalizer using a time-multiplexed second-order digital filter
IT980928B (it) * 1973-04-30 1974-10-10 Cselt Centro Studi Lab Telecom Apparecchiature di utente e di in gresso ad una centrale pcm per la trasmissione di dati ad alta velo cita
NL179619C (nl) * 1974-04-18 1987-05-18 Philips Nv Digitale signaalverwerkingsinrichting voor het realiseren van een vooraf bepaalde overdrachtskarakteristiek.
FR2295665A1 (fr) * 1974-12-18 1976-07-16 Labo Cent Telecommunicat Recepteur numerique de signaux multifrequences
JPS5376726A (en) * 1976-12-20 1978-07-07 Toshiba Corp Synchronizing system digital filter
US4117541A (en) * 1977-11-07 1978-09-26 Communications Satellite Corporation Configurable parallel arithmetic structure for recursive digital filtering
US4354248A (en) * 1979-11-28 1982-10-12 Motorola, Inc. Programmable multifrequency tone receiver
JPS57142022A (en) * 1981-02-26 1982-09-02 Casio Comput Co Ltd Resonance characteristic controlling system in digital filter
US4467440A (en) * 1980-07-09 1984-08-21 Casio Computer Co., Ltd. Digital filter apparatus with resonance characteristics
NL8201344A (nl) * 1982-03-31 1983-10-17 Philips Nv Digitale toonregelinrichting.
US4489416A (en) * 1983-03-18 1984-12-18 Rixon, Inc. Equalization system for modems in a polled arrangement
FR2555777A1 (fr) * 1983-10-03 1985-05-31 Moulin Andre Processeur numerique de filtrage
FR2552904A1 (fr) * 1983-10-03 1985-04-05 Moulin Andre Processeur de calculs
US4803647A (en) * 1986-05-30 1989-02-07 Rca Licensing Corporation Sampled data audio tone control apparatus
US4809208A (en) * 1987-04-03 1989-02-28 Tektronix, Inc. Programmable multistage digital filter
GB2209648B (en) * 1987-09-10 1991-10-23 Ncr Co Modem communication system having main and secondary channels
US5586068A (en) * 1993-12-08 1996-12-17 Terayon Corporation Adaptive electronic filter
US20020049799A1 (en) * 2000-10-24 2002-04-25 Minsheng Wang Parallel implementation for digital infinite impulse response filter
WO2003051622A1 (en) * 2001-12-14 2003-06-26 Graphic Packaging Corporation Packages, blanks for making packages and associated methods and apparatus

Also Published As

Publication number Publication date
FR2119309A5 (de) 1972-08-04
JPS5312145B1 (de) 1978-04-27
IT939838B (it) 1973-02-10
CA937297A (en) 1973-11-20
BE772813A (fr) 1972-01-17
SE364832B (de) 1974-03-04
NL7112895A (de) 1972-06-23
US3706076A (en) 1972-12-12
GB1355107A (en) 1974-06-05

Similar Documents

Publication Publication Date Title
DE2146982A1 (de) Programmierbare digitale Filtereinrichtung
DE1901343C3 (de) Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen
DE2628473C3 (de) Digitales Faltungsfilter
DE2549574C3 (de) Rekursives Digitalfilter
DE2145404A1 (de) Nichtrekursive Digitalfiltereinrichtung mit Verzögerungs- und Addier-Anordnung
DE2523860C3 (de) Vorrichtung zur digitalen, linearen Interpolation einer fabulierten Funktion
DE68921161T2 (de) Programmierbares digitales Filter.
DE1222717B (de) Digitaler Interpolationsrechner
DE3632639A1 (de) Einrichtung zum verarbeiten von bilddaten durch faltung
DE1115488B (de) Datenverarbeitungssystem
DE2039228C3 (de) Schaltungsanordnung in einer Datenverarbeitungsanlage zum Verschieben einer binär kodierten Oktalzahl um eine Anzahl von Dezimalstellen nach rechts
DE1524163B1 (de) Binärer Akkumulator
DE2622561C2 (de) Interpolierendes nichtrekursives Digitalfilter
DE69222626T2 (de) Hochauflösendes Digitalfilter
DE1524897A1 (de) Schaltung zum Durchschalten und Speichern eines zyklisch auftretenden elektrischen Signals
DE1909475A1 (de) Im Serienbetrieb arbeitende Umlauf-Datenspeicher- und -verarbeitungseinrichtung
DE2146882A (de)
DE3341339C2 (de) Befehlsfolgegenerator
DE3625737A1 (de) Verfahren zur zweidimensionalen diskreten cosinus-transformation
DE2253746A1 (de) Modul-signalprozessrechner
DE19637369C2 (de) Digitaler Signalprozessor mit Multipliziereinrichtung und -Verfahren
DE2426253B2 (de) Vorrichtung zum ziehen der quadratwurzel aus einer binaeren zahl
DE1094020B (de) Periodisch arbeitende numerische Rechenmaschine
DE2142636A1 (de) Rechenwerk fuer die durchfuehrung digitaler multiplikationen
DE69622245T2 (de) Dezimator für digitale Datenfolgen

Legal Events

Date Code Title Description
8130 Withdrawal