<Desc/Clms Page number 1>
Die Erfindung betrifft eine Tonsignalverarbeitungsanlage für Tonstudioeinrichtungen od. dgl. zur Umwandlung von in Zeitschlitze eines externen Datenbusses eingegebenen pulscodemodulierten Abtastwerten eines Audiosignals in deren ebenfalls pulscodemodulierte Rechenwerte, die über weitere Zeitschlitze diese Datenbusses ausgegeben werden mittels eines monolithischen Signalprozessors mit Daten- und Programmspeicher, Multipilzierer/Addierer, arithmetisch-logischer Einheit, der die Abtastwerte über eine Ein- und Ausgabeeinheit vom externen Datenbus empfängt bzw. die Rechenwerte zum Datenbus sendet und der auf Grund von Algorithmen die vom Datenbus empfangenen Abtastwerte (Operanden) mit Hilfe von Rechnern in Rechenwerte überführt, wobei die Anzahl der für die Durchführung der einzelnen Algorithmen erforderlichen Operanden unterschiedlich sind.
EMI1.1
Filtern oder aber auch die Bildung von Linearkombinationen von aus mehreren Einzelkanälen kommenden Signalen. Bei der Verarbeitung von Analogsignalen werden diese einzelnen Verarbeitungsprozesse in getrennten Geräten durchgeführt und sind demnach auch einzeln den jeweils geforderten Bedingungen anpassbar. So sind dort also beispielsweise Lautstärkesteller, Frequenzfilter und Mischschienen nacheinander geschaltet und einzeln einstellbar, auswechselbar oder schaltbar. Demgemäss sind traditionell auf Regietischen diese Geräte einzeln handhabbar.
Die entsprechende Verarbeitung von digitalen Tonsignalen erfolgt üblicherweise mit den Mitteln der elektronischen Datenverarbeitung unter Anwendung entsprechender Programme. Diese werden zumeist in einer solchen Weise erstellt, dass jede der Verarbeitungsfunktionen einem Teilprogramm entspricht, deren Gesamtheit durch ein einziges Programm koordiniert wird. Änderungen dieser Funktionen oder auch nur einer ihrer Parameter in einem Teilprogramm bedürfen daher jeweils eines eigenen Eingriffes in das koordinierende Programm. Vor allem ergibt sich aber der Nachteil, dass die jeweiligen Änderungen geltender Einstellungen in einem Teilprogramm in der Gesamtheit der Programme zu berücksichtigen sind, was die Flexibilität enorm einschränkt.
Die Erfindung hat sich die Aufgabe gestellt, eine Tonsignalverarbeitungsanlage für digitale Signale zu schaffen, die einerseits die Unabhängigkeit der Abarbeitung der einzelnen Teil-Verarbeitungsprozesse gewährleistet und anderseits auch beliebige Formen der Eingabe ermöglicht, wobei die Signalumwandlungen in aufeinanderfolgenden Rechenoperationen, die den Blockschaltbildelementen traditioneller Regietische entsprechen, erfolgen.
Erfindungsgemäss wird dies dadurch erzielt, dass zur gleichzeitigen Bereitstellung der für den jeweils zur Anwendung gelangenden Algorithmus erforderlichen und in den Rechenwert umzuwandelnden Operanden ein LIFO- (last in, first out)-Zwischenspeicher mit mindestens vier zyklisch geschlossen adressierbaren Speicherplätzen vorgesehen ist, dessen erster Speicherplatz als Zentralspeicherplatz dient, vor dessen Freigabe zwecks Einspeicherung eines weiteren Operanden eine Duplizierung dessen Inhaltes vor einer Einspeicherung in den benachbarten Speicherplatz und somit eine Verschiebung der Speicherinhalte aller Speicherplätze des Zwischenspeichers erfolgt, und dass weiters jeder Rechner mit je einem zur Speicherung einer den Ablauf des Algorithmus begleitenden, jedoch vom sonstigen Inhalt des Algorithmus unabhängigen Folge von Bits dienenden Hilfsspeicher versehen ist,
welcher Bitfolge zu entnehmen ist, ob für den betreffenden Algorithmus die für seine Durchführung erforderliche Anzahl von Operatoren ausreichend ist und dass weiters eine bei Belegung des Zentralspeichers durch einen Operanden durch eine Steuerung aktivierte erste Abfrageeinheit vorgesehen ist, die im Falle der durch Anfrage an den Hilfsspeicher erkundeten Durchführbarkeit des betreffenden Algorithmus mit nur einem Operanden die sofortige Durchrechnung des Algorithmus und die Zwischenspeicherung des Rechenergebnisses in den Zentralspeicherplatz sowie dessen Ausgabe an den Datenbus bewirkt und dass weiters eine zweite Abfrageeinheit vorhanden ist,
die im Falle der Nichtdurchführbarkeit des Algorithmus nur einem Operanden die Überführung des zweiten in den LIFO-Zwischenspeicher eingespeicherten Operanden auf den Zentralspeicherplatz sowie die Durchrechnung des Algorithmus mit nunmehr zwei Operanden auslöst, deren Rechenergebnisse nach Zwischenspeicherung in den Zentralspeicherplatz mittels der Ein- und Ausgabeeinheit in den Datenbus eingespeist wird.
<Desc/Clms Page number 2>
Die Erfindung ermöglicht einerseits eine sofortige Durchführung von Algorithmen, die dafür nur einen einzigen Operanden benötigen, weil bei Vorliegen dieses Operanden die Operation unverzüglich gestartet wird. Anderseits wird auch bei Algorithmen mit zwei oder mehreren Operanden die Durchführung sofort gestartet, wenn alle nötigen Operanden verfügbar sind. Die Verwendung des Zwischenspeichers für die Operanden und deren Abrufung aus dem Zwischenspeicher ermöglicht eine einfachere und vor allem eine voneinander unabhängige Gestaltung der Rechenprogramme für die einzelnen Algorithmen.
Fig. 1 der Zeichnungen zeigt als Ausführungsbeispiel das Prinzipschaltbild der erfindungsgemässen Tonsignalverarbeitungsanlage und in Fig. 2 ist ein zur Erläuterung der Arbeitsweise dienendes Flussdiagramm dargestellt.
Die Tonsignalverarbeitungsanlage gehört einem Regietisch an, dessen Signalverarbeitung durch einen Zentralprozessor gesteuert wird, wobei die einzelnen Audiosignale in Zeitschlitze eines Datenbusses --DB-- ein- und ausgelesen werden. Eine der mehrfach vorhandenen Tonsignalverarbeitungsanlagen kann, wie erwähnt, verschiedene Funktionen ausführen, z. B. als Filter, Lautstärkensteller oder auch als Mischeinrichtung, und muss demgemäss zur Verarbeitung von einem oder zwei oder auch von mehreren Signalen geeignet sein. Innerhalb einer Tonsignalverarbeitungsanlage kann eine Mehrfachverarbeitung eines Signals in mehreren aufeinanderfolgenden Verarbeitungsstufen erfolgen, also etwa derart, dass aus einem Signal x eine Funktion y (x) und aus dieser eine weitere Funktion z (y) = z [y (x)] gebildet wird.
Im Falle einer Mischung ist hingegen aus zwei Signalen x und y ein drittes Signal z zu bilden, das mit den erstgenannten Signalen in der Beziehung z = ax + by steht. In diesem Fall sind neben den Signalen x und y auch die Konstanten a und einzugeben.
Im einzelnen besteht die erfindungsgemässe Tonsignalverarbeitungsanlage aus einer an den Datenbus --DB-- angeschlossenen Ein- und Ausgabeeinheit --EAE--, die die aus dem Datenbus --DB-- ausgelesenen Datenworte in den ersten Speicherplatz --SP1-- (Zentralspeicherplatz) eines Zwischenspeichers --ZS-- der Tonsignalverarbeitungsanlage einliest oder in diesem Zentral- speicherplatz-SP1-eingespeicherte Rechenresultate in entsprechend vorgesehene Zeitschlitze des Datenbusses --DB-- einspeichert, wobei die Steuerungen der Ein- und Ausspeicherungen
EMI2.1
Speicherplätzen.
Der Zwischenspeicher --ZS-- ist derart ausgebildet, dass vor einer Freigabe seines ersten Speicherplatzes --SP1-- (Zentralspeicherplatz) zwecks Einspeicherung eines neuen Datenwortes das ursprünglich dort gespeicherte Datenwort dupliziert und in den nächsten Speicherplatz --SP2-- erfolgt und dass auch die Speicherinhalte aller weiteren Speicherplätze um je einen Speicherplatz verschoben werden. Bei Ausgabe eines Datenwortes aus dem Zentralspeicherplatz --SP1-- wird dort der frühere Inhalt des zweiten Speicherplatzes --SP2-- eingeschrieben und in entsprechender Weise werden die andern Speicherinhalte zurückgereiht.
Zur Durchführung der verschiedenen Rechenoperationen (Algorithmen) sind einzelne Rech- ner--RE1, RE2...--vorgesehen, die mit individuellen Rechenprogrammen ausgestattet sind und ihre Rechnungs-Eingabewerte (Operanden) aus dem Zentralspeicherplatz --SP1-- beziehen und ihr Rechenergebnis in eben diesen Zentralspeicherplatz --SP1-- wieder einschreiben. Bei einer Serie von aufeinanderfolgenden Rechenoperationen von der Art z = z [y (x)] sind den Algorithmen y (x) und z (y) je ein Rechner --RE1, RE2-- zugeordnet, von denen der erste den Operanden x dem Zentralspeicherplatz --SP1-- entnimmt und das Rechenergebnis y (x) dort wieder einschreibt.
Danach entnimmt der zweite Rechner --RE2-- den Operanden y und bildet daraus den Rechenwert z (y), der dann wieder in den Zentralspeicherplatz --SP1-- eingeschrieben wird. Im Falle, dass kein weiterer Rechengang erfolgt, wird dieser Rechenwert z (y) von der Einund Ausgabeeinheit --EAE-- unverzüglich in den Datenbus --DB-- ausgegeben.
Vor Durchführung von Rechenoperationen wird der Reihe nach geprüft, ob sie mit einem, zwei oder mehreren Operatoren durchführbar sind, um dann, wenn die erforderliche Anzahl von Operanden zur Verfügung steht, mit der Durchführung der betreffenden Rechenoperationen unverzüglich beginnen zu können. Diese Prüfung wird mit Hilfe von Abfrageeinheiten --AE1, AE2-- durchgeführt, die einen Zugriff zu Hilfsspeichern --HS1, HS2, HS3-- haben, die den
<Desc/Clms Page number 3>
Rechnern-RE1, RE2 bzw. RE3-- zugeordnet sind.
In diesen Hilfsspeichern --HS1... -- sind den Algorithmen der betreffenden Rechner --RE1... -- zugeordnete Folgen von Bits gespeichert, die im Zuge eines solchen Prüfvorganges der Reihe nach abgefragt werden und die nur die Aussage "Ja" oder "Nein" haben.
Das Flussdiagramm dieses Prüfvorganges ist in Fig. 2 dargestellt. Nach dem Start (l) wird zum gegebenen Zeitschlitz (bestimmt durch den Zentralprozessor des Regietisches) die für die Durchführung des betreffenden Abschnittes der Tonsignalverarbeitung der erste Operand aus dem Datenbus --DB-- in den Zentralspeicherplatz --SP1-- eingelesen (2). Mit Hilfe der ersten Abfrageeinrichtung-AE1-wird durch Abfrage des Hilfsspeichers --HS1-- des ersten Rechners --R1-- angefragt, ob der durch den Rechner-Rl-durchzuführende Algorithmus mit Hilfe des einen Operanden durchgeführt werden kann (3).
Ist die aus dem Hilfsspeicher --HS1-- erhaltene Antwort ein "Ja", so wird der Rechner --R1-- in Betrieb gesetzt und der betreffende Algorithmus, beispielsweise eine Filterfunktion, berechnet (4). Das Rechenergebnis wird nach Erhalt in den Zentralspeicherplatz --SP1-- eingeschrie- ben (5), wobei noch die Frage zu entscheiden ist, ob das Rechenergebnis zugleich auch in den Datenbus --DB-- auszugeben (6) ist, was durch eine Steuereinrichtung --ST-- entschieden wird.
Wenn die Aufgabe der Tonsignalverarbeitungseinrichtung in diesem Fall nur darin bestanden hat, diesen einzigen Algorithmus durchzuführen, so führt die Entscheidung "Ja" zum Befehl an die Ein- und Ausgabeeinheit --EAE--, den Inhalt des Zentralspeicherplatzes --SP1-- in den Datenbus --DB-- einzulesen (7).
Wenn hingegen ein durchzuführender Algorithmus nicht mit einem einzigen Operanden das Auslangen findet, so führt die Anfrage der Abfrageeinheit --AE1-- an die Steuereinrichtung --ST--, nämlich, ob der Algorithmus mit nur einem Operanden durchgeführt werden könne (3), zur Antwort "Nein", worauf die Abfrageeinheit --AE2-- die Frage vorgelegt bekommt, ob der Algorithmus mit zwei Operanden durchgeführt werden kann (8). Bei einem "Ja" dient die Reihenfolge ("last in, first out") der bis zu dieser Fragestellung aus dem Datenbus --DB-gelesenen Operanden als Entscheidungsmerkmal, worauf der Algorithmus gestartet wird.
Bei einem "Nein" wird der Befehl (9) zur Duplizierung der in den Speicherplätzen des Zwischenspei- chers --ZS-- enthaltenen Speicherinhalte und deren Verschiebung gegeben, wonach vom Datenbus --DB-- die nächste Information abgeholt wird und dann wieder bei der ersten Entscheidungsfrage begonnen wird, und dies so lange, bis alle Fragen [ (3), (8)] durch den Hilfsspeicher --HS1-- des ersten Rechners --RE1--, danach des zweiten (--RE2--) usw. beantwortet und durchgeführt sind, bis endlich die letzte Antwort im Hilfsspeicher des Rechners für die Berechnung des letzten Algorithmus behandelt und somit die Gesamtheit der Algorithmen des betrachteten Abtastintervalles erledigt sind, was durch Auslesen des im Zentralspeicherplatz --SP1-zuletzt abgespeicherten Ergebnisses auf den Datenbus --DB-- abgeschlossen wird.