-
Die vorliegende Erfindung betrifft ein
Datenverarbeitungssystem für Audiosignale.
-
Bekannt sind Audiosignaldaten-Verarbeitungssysteme, die in
der Lage sind, das Schallfeld zu steuern, durch das zum
Beispiel in einem Zuhärerraum oder in einem Kraftfahrzeug eine
Konzerthallen- oder Theaterakustik mit Nachhall simuliert
wird. Ein Beispiel für ein solches
Audiodatenverarbeitungssystem wird in der Japanischen Patent-Auslegeschrift Nr. 64-
72615 geoffenbart In solchen
Audiosignaldatenverarbeitungssysteme" ist ein DSP (Digitalsignalprozessor) vorgesehen zum
Steuern des Schallfelds durch digitales Verarbeiten eines
Audiosignals, das aus einer Audiosignalguelle, wie z.B. einem
Tuner, stammt.
-
Der DSP ist im allgemeinen ausgerüstet mit einem
arithmetischen Mittel zum Ausführen von Operationen, wie z.B.
Operationen der vier Grundrechnungsarten, einem Datenspeicher zum
Abspeichern der Audiosignaldaten, die in das arithmetische
Mittel eingespeist werden, und ein Koeffizientenspeicher zum
Abspeichern von Koeffizientendaten, die mit den im Daten-
speicher abgespeicherten Daten zu multiplizieren sind. Ferner
ist der DSP so konfiguriert, daß ein externer Speicher zum
Verzögern der Signaldaten von außen angeschlossen werden
kann. Ferner ist der DSP mit einem Verzögerungszeitspeicher
zum Speichern von Verzögerungszeitdaten ausgerüstet, die den
Zeitunterschied zwischen dem Schreiben und dem Lesen der
Signaldaten in bzw. aus dem Verzögerungsspeicher angeben. Im
DSP ist die Struktur so, daß die Signaldaten zwischen den
Speichern und auch von einem Speicher zum Arithmetikmittel
gemäß vorgegebenen Programmen übertragen werden, so daß der
Rechenprozeß der Signaldaten mit Hochgeschwindigkeit
wiederholt ausgeführt werden kann. Zum Beispiel wird durch
Generieren der Daten eines reflektierten Tons unter
Berücksichtigung der Pegelabschwächung ein akustisches Feld
geschaffen wie folgt. Zunächst wird das eingehende
Signaldatum zur Verzögerung in den Verzögerungsspeicher
übertragen, so daß ein verzögertes Signaldatum erzeugt wird.
Das verzögerte Signaldatum wird dann über den Datenspeicher
auf das arithmetische Mittel übertragen, wo das verzögerte
Signaldatum mit den Koeffizientendaten multipliziert wird.
-
Die Koeffizientendaten und die Verzögerungszeitdaten werden
jedesmal, wenn der Schallfeldmodus durch eine manuelle
Operation verändert wird, mit neuen Daten neu geschrieben, wobei
diese neuen Daten von einem Mikroprozessor geliefert werden,
der außerhalb des DSP vorgesehen ist. Der DSP ist so
ausgelegt, daß eine Vielzahl von akustischen Feldern erzeugt
werden kann.
-
Dabei trat jedoch das folgende Problem auf. Da sich das
Frequenzspektrum der wirklichen Hallveränderungen in
Abhängigkeit vom Wandmaterial ändert, kann nicht immer ein
akustisches Feld erzeugt werden, das dem wirklichen
Schallfeld äquivalent ist.
-
Andererseits wird das im DSP abzuarbeitende Programm in einen
wiederbeschreibbaren Speicher geschrieben, wie z.B. in den
RAM im DSP, und jedesmal, wenn der Schallfeldmodus durch
manuelle Operation umgeschaltet wird, von dem außerhalb des
DSP angeordneten Mikrocomputer verändert. Durch Verändern des
Programms lassen sich so unterschiedliche Schallfelder
erzeugen.
-
In herkömmlichen DSPS wird ein Schaltkreis zum Steuern der
Schreibe- und Leseadressen aufgebaut wie in Fig. 7
ersichtlich. Diese Steuerschaltung wird benutzt zum Steuern eines
Verzögerungsspeichers zum Verzögern eines
24-Bit-Signaldatums, der aus zwei dynamischen RAMs mit jeweils 64k x4 Bits
besteht. In dieser Steuerschaltung speichert ein
Verzögerungszeitdatum-RAM 161 die Verzögerungszeitdaten. Das
Verzögerungszeitdatum ist vorgesehen für jeden Zugriff
(Lesen/Schreiben) auf das Signaldatum, und der Unterschied
zwischen dem Verzögerungszeitdatum zum Lesen und dem
Verzögerungszeitdatum zum Schreiben stellt die Verzögerungszeit
dar. Register 162 ist an den Verzögerungszeitdaten-RAM 161
angeschlossen, und die aus dem RAM 161 ausgelesenen
Verzögerungszeitdaten werden dort gespeichert. Die
Steuerschaltung beinhaltet ein wiederbeschreibbares Register 163
mit einem Ringlängendatum, d.i. ein Datum, das die maximale
Verzögerungszeit darstellt. Die Verzögerungszeitdaten und das
Ringlängendatum sind 14-Bit-Daten. Die Daten aus den
Registern 162 und 163 werden an ein Subtraktionsglied 164
gegeben, wo eine Modub-Subtraktion zwischen dem
Ringlängendatum und dem Verzögerungszeitdatum ausgeführt wird. Ein
Ergebnis der Subtraktion wird als Bezugsadressendatum während
des Zugriffs zum Verzögerungs-RAM benutzt.
-
Die Modub-Subtraktion wird ausgeführt wie folgt. Wenn das
Verzögerungszeitdatum gleich Null ist, wird das
Bezugsadressendatum gleich dem Ringlängendatum festgelegt.
-
Wenn andererseits das Verzögerungszeitdatum nicht gleich Null
ist, wird das Bezugsadressendatum gleich einem Wert
festgelegt, der durch Vermindern des Zeitdatums um 1 erhalten
wird.
-
Das Ergebnis der Modub-Subtraktion wird auf den
Verzögerungszeitdaten-RAM 161 übertragen, um bei der nächsten
Abtastperiode als Verzögerungszeitdatum benutzt zu werden.
Mit anderen Worten, das Verzögerungszeitdatum wird um eine
Ringzählung innerhalb des Ringlängendatuns verändert während
es in jedem Abtastintervall um 1 dekrementiert wird.
-
In einer Verzögerungsspeicherzugriffsschaltung 165, an die
Ausgangsdaten des Subtraktors 164 geliefert werden, wird der
Zugriff auf den Verzögerungsspeicher durch den sogenannten
"page Mode" (Schrittweises Ausgeben von Daten auf den
Bildschirm) ausgeführt. Zur Erklärung seien die sechs
höherwertigen Bits der Ausgangsdaten aus dem Subtraktor 164 mit
[BAH] bezeichnet, und die acht niedrigwertigen Bits der
Ausgangsdaten aus dem Subtraktor 164 seien mit
bezeichnet. Die Verzögerungsspeicherzugriffsschaltung 165 ist so
konfiguriert, daß sie zwei Bits "00" zu [BAH] hinzufügt,
wodurch 00 [BAH] entsteht, das als Bezugsadressendatum benutzt
wird. Wie in Fig. 8 gezeigt, wird das [BAL] als
Spaltenadresse an das Adressenterminal des Verzögerungsspeichers
synchron mit der
-
Abfallflanke eines (Row Address Strobe) Signals in der
Verzögerungsspeicherzugriffsschaltung 165 gegeben. Auf
ähnliche Weise wird 00 als Spaltenadresse an das
Adressenterminal des Verzögerungsspeichers zum Zeitpunkt der
ersten abfallenden Flanke eines CAS (Column Address Strobe)
Signals innerhalb einer Abtastperiode gegeben. Ferner wird
01[BAH] zum Zeitpunkt der zweiten abfallenden Flanke des
-Signals geliefert und 10 [BAH] wird zum Zeitpunkt der
dritten abfallenden Kante des -Signals geliefert. Kurz
gesagt, die zwei höherwertigen Bits der Spaltenadresse werden
vorwärtsgezählt.
-
Auf die oben beschriebene Weise wird das 24-Bit-Signaldatum
im Verzögerungsspeicher verzögert, der aus zwei dynamischen
RAMs mit je 64k x4 Bits besteht.
-
Im oben beschriebenen herkömmlichen DSP ist jedoch die Anzahl
der Zugriffe drei, und die zwei höherwertigen Bits der
Spaltenadresse werden nicht "11". Das heißt, daß ein Viertel
der Gesamtkapazität des Verzögerungsspeichers überhaupt nicht
genutzt wird. Aus diesem Grund tritt das Problem auf, daß die
maximale Verzögerungszeit auf weniger als den größtmöglichen
Wert beschränkt ist.
-
Der dynamische RAM mit 64k x4 Bits hat einen
Wiederauffrischzyklus von 4 ms. Wenn in dieser Zeitspanne auf nicht alle 256
Spaltenadressen zugegriffen wird, ist die Richtigkeit des
abgespeicherten Inhalts nicht gesichert. Da die Anzahl der
Spaltenadressen während des Zugriffs der 24-Bit Signaldaten
"1" ist, wird die Anzahl der Spaltenadressen, auf die mit
einer Rate von einmal Lesen/Schreiben per 4 ms zugegriffen
werden kann, gleich 128 (4 ms ÷ (1/32 kHz)) wenn der
herkömmliche DSP mit einer Abtastfreguenz von 32 kHz betrieben
wird. Somit entsteht das Problem, daß unter den obigen
Bedingungen auf nur eine Hälfte der 256 Zeilenadressen
zugegriffen werden kann.
-
In der Praxis gibt es in jeder Zugriffsperiode mehrere
Lese/Schreib-Zyklen, der Speicher kann wiederaufgefrischt
werden, wenn dem Verzögerungszeitdatum eine bestimmte
Bedingung zugeordnet wird. Diese Lösung bedeutet jedoch eine
gewisse Einschränkungen bei der zu erreichenden
Verzögerungszeit. Daher läßt sich der herkömmliche DSP nur mit einer
bestimmten Beschränkung handhaben.
-
Ferner wird das Audiodatensignalverarbeitungssystem im
allgemeinen mit einem A/D-Wandler zum Umwandeln des eingehenden
analogen Audiosignals in ein digitales, an den DSP zu
schickendes Audiosignaldatums versehen. Jedoch tritt dabei
das Problem auf, daß durchgehend eine Versatzangleichung des
A/D-Wandlers durchgeführt werden muß, so daß die
Ausgangsdaten des A/D-Wandlers Umwandlungsdaten der eingehenden
Audiodaten gegenüber einem Bezugswert werden.
-
In "A Monolithic Integrated Digital Signal Processor for Hifi
Audio Applicationstt von P. Anders et al., IEEE Transactions
on Consumer Electronics, 1987, wird ein neuer digitaler
Signalprozessor zum Verarbeiten von digitalen Audiosignalen
in Hifi-digitalen Audiosystemen beschrieben. Der Prozessor
beinhaltet eine Multiplizierer/Summierer-Einheit, eine
arithmetische Logik-Einheit, einen On-Chip-Datenspeicher,
eine Speicheradressen-Berechnungseinheit, Daten und Speicher-
Eingabe/Ausgäbe-Schnittstellen, Koeffizienten-Aktualisierung
und Programmsteuerung.
-
US-A-4803731 offenbart eine Nachhalleinrichtung mit einem
Verzögerungsspeicher, der ein Eingangssignaldatum bei einer
vorgegebenen Zeit abspeichert und ein Verzögerungssignal
erzeugt, die der Zeit zwischen Schreiben und Lesen der
Eingangssignaldaten entspricht. Die Vorrichtung beinhaltet
ferner eine Anzahl Addierer, die die aus dem
Verzögerungsspeicher ausgelesenen Verzögerungsdaten addieren, und einen
Ausgabeabschnitt zum Vorsehen eines Ausgangs aus jedem der
Addierer als ein Nachhallsignal.
-
EP-A-0404474 wurde erst nach dem Antragsdatum der
vorliegenden Erfindung veröffentlicht, hat jedoch eine frühere
Priorität und ist daher Stand der Technik nur für die Frage
der Neuheit, laut Art. 54(3) EPÜ. Diese Unterlage lehrt ein
Audiosignaldaten-Verarbeitungssystem mit einer
Datenspeichersteuervorrichtung und einer
Verzögerungsspeichersteuervorrichtung, die Audiosignaldaten unabhängig voneinander über
Datenbusse von bzw. in einen Datenspeicher liest bzw.
schreibt.
-
US-A-4,685,089 offenbart eine Hochgeschwindigkeits- und
Niedrigenergieverbauchs-Halbbytemodusschaltung für einen
dynamischen Halbleiterspeicher.
-
Eine Aufgabe der vorliegenden Erfindung ist es, ein
Audiosignaldatenverarbeitungssystem vorzusehen, das in der Lage
ist, das wiedergegebenen Schallfeld sehr genau an den wahren
Schall anzunähern.
-
Eine weitere Aufgabe der vorliegenden Erfindung ist es, ein
Audiosignaldatenverarbeitungssystem vorzusehen, in dem die
gesamte Speicherkapazität des Verzögerungsspeichers ohne
jeden Verlust genutzt wird, um eine länger Verzögerungszeit
zu gewährleisten, und in dem der Verzögerungsspeicher
hinreichend oft aufgefrischt wird.
-
Noch eine Aufgabe der vorliegenden Erfindung ist es, ein
Audiosignaldatenverarbeitungssystem vorzusehen, das so
konfiguriert ist, daß die Ausführung der Versatzangleichung
des A/D-Wandlers unnötig wird.
-
Gemäß der vorliegenden Erfindung ist vorgesehen ein
Audiosignal-Datenverarbeitungssystem, enthaltend:
-
Eingangsmittel zum sequentiellen Einspeisen von eingehenden
Audiosignaldatenproben,
-
Datenspeichersteuermittel zum Schreiben und Lesen der
Audiosignaldatenproben in bzw. aus einem Datenspeicher,
-
Laufzeitspeicher-Steuermittel zum sequentiellen Lesen der
Audiosignal-Datenproben aus dem Datenspeicher und Abspeichern
dieser Audiosignal-Datenproben an einem Ort eines
Laufzeitspeichers, der durch eine Schreibadresse angegeben ist, und
anschließend sequentiell Lesen der Audiosignal-Datenproben
von einem Ort des Laufzeitspeichers, der durch eine
Leseadresse angegeben wird, und Schreiben der Audiosignal-
Datenproben in den Datenspeicher,
-
arithmetische Mittel zum Multiplizieren einer vorgegebenen
Koeffizientenangabe mit jeder Probenangabe der Folge der
Audiosignal-Datenproben, die in den Datenspeicher geschrieben
sind und Aufsummieren der multiplizierten Werte, und
-
Ausgabemittel zum Ausgeben der Signaldaten, die sich aus den
vom Arithmetikmittel durchgeführten Operationen ergeben,
dadurch gekennzeichnet, daß die Laufzeitspeicher-Steuermittel
Ringzählmittel zur Durchführung einer Zähloperation innerhalb
der Bitzahl der Adressendaten bei den Erfassungsintervallen,
Mittel zum Bezeichnen einer Laufzeitangabe, die ein
Laufzeitintervall zwischen Schreib- und Leseoperationen
repräsentiert, Addiermittel zum Addieren der Laufzeitangaben, und
einer Zählangabe des Ringzählermittels, Multiplikationsmittel
zum Multiplizieren einer die Anzahl der Zugriffszeiten
repräsentierenden Angabe, die zum Zugriff auf eine Wortangabe
für den Laufzeitspeicher erforderlich ist, mit einer
Ausgangsangabe
des Addiermittels, und Einstellmittel zum
Einstellen der Lese- oder Schreibadresse in Übereinstimmung mit
der Bezugsadressenangabe beinhalten.
-
In einer bevorzugten Ausführungsform erzeugt das
Einstellmittel die Schreibe- bzw. Leseadresse, um auf eine Ein-Wort-
Angabe zuzugreifen, unter Verwendung eines Wertes, der durch
Addieren einer 1 zu dieser Bezugsadressenangabe erhalten
wird, und zwar sooft, wie diese Angabe, die die Anzahl der
Zugriffe repräsentiert, angibt.
-
Nachstehend wird beispielhaft eine Ausführungsform der
Erfindung anhand der begleitenden Zeichnungen beschrieben.
-
Fig. 1 ist ein Blockschaltbild, das die Anordnung gemäß Fig.
1A und 1B zeigt. Fig. 1A und 1B sind Blockschaltbilder der
bevorzugten erfindungsgemäßen Ausführungsform der
vorliegenden Erfindung;
-
Fig. 2 ist ein Stromlaufplan, der insbesondere einen Teil des
Systems gemäß Fig. 1A zeigt;
-
Die Fig. 3 und 9 sind Flußdiagramme, die den Betrieb eines
Mikrocomputers im System gemäß Fig. 1A und 1B zeigen;
-
Fig. 4 ist ein Diagramm, das die Anordnung der Speicherplätze
von Koeffizientendaten in einem Koeffizientedaten-RAM zeigt;
-
Fig. 5 ist ein Diagramm, das die Reihenfolge der
Bearbeitungsoperationen zeigt;
-
Fig. 6A und 6B sind Diagramme, die eine äquivalente Schaltung
zeigen, die die gleichen Operationen durchführt wie die
Bearbeitungsoperationen des DSP, und Fig. 6 ist en Diagramm,
das die Anordnung der Fig. 6A und 6B zeigt;
-
Fig. 7 ist ein Blockschaltbild, das eine herkömmliche
Steuerschaltung des Verzögerungsspeichers zeigt;
-
Fig. 8 ist ein Diagramm, das die Zugriffsoperation einer
Zugriffsschaltung in der Schaltung der Fig. 7 darstellt;
-
Fig. 10 ist eine Blockschaltung, die den Aufbau einer
Speichersteuerschaltung für den externen RAM im System gemäß
Fig. 1A zeigt;
-
Fig. 11 ist ein Diagramm, das die Zugriffsoperation einer
Zugriffsschaltung gemäß Fig. 10 zeigt;
-
Fig. 12 ist ein Diagramm, das drei Adressen in jeder
Abtastperiode zeigt;
-
Fig. 13A und 13B sind Diagramme, die eine äquivalente
Schaltung zur Durchführung einer gleichen Operation zeigen,
wie sie durch die Operation des DSP in der bevorzugten
Ausführungsform durchgeführt wird;
-
Fig. 13 ist ein Diagramm, das die Anordnung der Fig. 13A und
13B zeigt; und
-
Fig. 14 ist ein Diagramm, das die Reihenfolge der
Bearbeitungsoperationen zeigt.
-
Im Audiodatenbearbeitungssystem gemäß den Fig. 1A und 1B als
eine bevorzugte Ausführungsform der vorliegenden Erfindung
werden eingehende analoge Audiosignale an eine
Eingangs/Ausgangs-Schnittstelle 3 in einem DSP (Digitalsignalprozessor) 2
durch einen A/D-Wandler 1 geschickt. Ein erster Datenbus 4
ist an die Eingangs/Ausgangs-Schnittstelle 3 angeschlossen.
Als Datenspeicher zum Abspeichern der Audiosignaldaten sind
zwei Signaldaten-RAM 5 und 6 mit dem ersten Datenbus 4
verbunden. Ein Pufferspeicher 7 ist ferner an den Datenbus 4
angeschlossen, und die Ausgangsdaten des Pufferspeichers 7
sind mit einem der zwei Eingänge eines Multiplizierers 8
verbunden. Ein Pufferspeicher 9 zum Halten der
Koeffizientendaten ist an den anderen Eingang des Multiplizierers 8
gelegt. Ein Koeffizienten-Daten-RAM 10 zum Abspeichern einer
Vielzahl von Koeffizientendaten ist ferner mit dem
Pufferspeicher 9 verbunden. Eine ALU (Arithmetisch-Logische
Einheit) 11 ist vorgesehen zur Ausführung der Operationen wie
das Summieren des Berechnungsausgangs des Multiplizierers 8,
die an einen der zwei Eingänge der ALU 11 geschickt wird. Ein
Summierer 12 ist vorgesehen zum Halten des
Berechnungsausgangs der ALU 11, und sein Ausgang liegt am anderen
Eingang der ALU 11. Der Ausgang des Summierers 12 liegt am
Datenbus 4.
-
Eine Speichersteuerschaltung 31 ist mit dem Signaldaten-RAM 5
verbunden. Die Speichersteuerschaltung 31 generiert ein
Steuersignal zum Steuern des Schreibens von Daten in eine
bezeichnete Adresse des RAM 5 und zum Lesen von Daten aus
einer bezeichneten Adresse des RAM 5. Eine
Speichersteuerschaltung 32 wie die Speichersteuerschaltung 31 ist mit dem
Signaldaten-RAM 6 über eine Wechselschaltung 33 verbunden.
Die Wechselschaltung 33 ist konfiguriert zum Schalten ihrer
Operation zwischen dem Datenschreiben in die bezeichnete
Adresse des RAM 6 und dem Datenlesen aus einer bezeichneten
Adresse des RAM 6 als Reaktion auf das Steuersignal von der
Speichersteuerschaltung 31. Eine Speichersteuerschaltung 34
wie die Speichersteuerschaltung 31 ist mit dem
Koeffizientendaten-RAM 10 verbunden.
-
Der Signaldaten-RAM 6 liegt auch an einem zweiten Datenbus
14, der unabhängig vom ersten Datenbus 4 ist. Im einzelnen
sind ein Paar Dreizustands-Puffer 39a und 39b zwischen dem
Signaldaten-RAM 6 und dem ersten Datenbus 4 geschaltet, und
ein Paar Drei-Zustandspuffer 40a und 40b liegen zwischen dem
Signaldaten-RAM 6 und dem zweiten Datenbus 14, wie in Fig. 2
dargestellt ist. Die Puffer 39a, 39b, 40a und 40b werden
entsprechend Ein-Aus-gesteuert als Reaktion auf
Anweisungssignale aus einem Ablauf-Controller, der später noch
beschreiben wird. Zum Schreiben der Signaldaten vom ersten
Daten-Bus 4 in den RAM 6 schaltet der Puffer 39a ein, und der
Puffer 39b schaltet ein, wenn die Signaldaten aus dem RAM 6
zum ersten Datenbus 4 ausgelesen werden. Auf ähnliche Weise
schaltet zum Schreiben der Signaldaten aus dem Datenbus 14 in
den RAM 6 der Puffer 40a ein, und Puffer 40b schaltet ein,
wenn Signaldaten aus dem RAM 6 zum zweiten Datenbus 14
ausgelesen werden. Somit ist einer der Dreizustands-Puffer
39a, 39b, 40a und 40b, die von den Anweisungssignalen
gesteuert werden, ist immer eingeschaltet.
-
Eine Schnittstelle 16 für die Datenübertragung auf und von
einem externen RAM 15 liegt am Datenbus 14. Der externe RAM
15, der ein Speicher für die Verzögerungsoperation ist, ist
zum Erzeugen eines Verzögerungssignaldatums des
Audiosignaldatums vorgesehen und ist in der Lage, ein Signaldatum zu
erzeugen, dessen Verzögerungszeit von der Speicherkapazität
abhängig ist. Eine Speichersteuerschaltung 35 ist zum
Bezeichnen von Schreibe- und Leseadressen des RAM 15
vorgesehen und ein Verzögerungszeitdaten-RAM 17 ist an die
Speichersteuerschaltung 35 angeschlossen. Die Operationen des
Schreibens und des Lesens eines Verzögerungszeitdatums in und
aus dem RAM 17 werden gesteuert von einer
Speichersteuerschaltung 38.
-
Operationen der Schnittstellen 3 und 16, des Multiplizierers
8, der Pufferspeicher 7 und 9, der ALU 11, des Summierers 12,
der Speichersteuerschaltungen 31, 32, 34, 35 und 38 sowie der
Wechselschaltung werden gesteuert vom Ablauf-Controller 18.
-
Ein Programm-RAM 19 ist verbunden mit dem Ablauf-Controller
18, und der Ablauf-Controller arbeitet gemäß dem im Programm-
RAM 19 gespeicherten Programm. Mit dem Programm-RAM 19 ist
ein Programmzähler 20 verbunden, und jedesmal wenn der
Zählwert des Programmzählers 20 inkrernentiert wird, wird ein
Instruktions-Code des Schritts entsprechend dem neuen
Zählwert aus dem Programm RAM 19 ausgelesen und an einen Ablauf-
Controller 18 gegeben. An den Ablauf-Controller 18 ist auch
ein Register 21 zum Aufnehmen einer Reihe von Befehlen aus
einem Mikrocomputer 24 angeschlossen, wie später noch
beschrieben wird.
-
Der Programm-RAM 19 und das Register 21 sind entsprechend
verbunden mit einem Hauptbus 22. Der Mikrocomputer 24 liegt
über eine Schnittstelle 23 am Hauptbus. An den Hauptbus 22
sind Übertragungspuffer 26 und 27 angeschlossen. Der
Übertragungspuffer 26 enthält zeitweilig die
Koeffizientendaten, die vom Mikrocomputer 24 zum Abspeichern derselben im
RAM 10 geliefert werden. Der Übertragungspuffer enthält
zeitweilig die Verzögerungszeitdaten, die vorn Mikrocomputer
24 zum Abspeichern im RAM 17 geliefert werden.
-
Der Mikrocomputer 24 besteht aus einem Mikroprozessor, RAM,
ROM und einer (nicht gezeigten) Schnittstelle. Eine Tastatur
liegt am Mikrocomputer 24. Die Tastatur ist mit einer
Vielzahl Tasten versehen, wie eine Vielzahl von Modus-Tasten zum
entsprechenden Einstellen eines Schallfeldmodus, z.B. "Hall
1", "Hall 2" mit unterschiedlichen
Schallfeldcharakteristiken, eine Frequenzband-Einstelltaste zum Steuern einer
graphischen Ausgleicherfunktion, einer Pegeleinstelltaste und
einer Rauschsperrschalttaste (nicht dargestellt) . Im ROM des
Mikrocomputers 24 sind im voraus verschiedene Programme und
Daten geschrieben. Diese Programme und Daten sind nämlich
eine Vielzahl von Folgenablaufsteuerprogrammen, die vom
Ablauf-Controller 18 bearbeitet werden, zusätzlich zu einem
DSP-Steuerprogramm, das vorn Mikrocomputer 24 selbst
bearbeitet wird, eine Vielzahl Koeffizientendatengruppen
ursprünglich reflektierender Tonhöhe, und eine Vielzahl von
Koeffizientendatengruppen für den ersten bis vierten Filter,
die beide an den RAM 10 geliefert werden, und eine Vielzahl
von Verzögerungszeit-Datengruppen, die an den RAM 17 gegeben
werden, um die Leseadresse einzustellen.
-
Im DSP 2 ist ein Taktgeber 28 vorgesehen, und Taktimpulse
werden vom Taktgeber 28 an den Ablauf-Controller 18 und den
Programmzähler 20 gegeben. Die vom Taktgeber 28 generierten
Taktgeberimpulse werden auch als Zeitgebersignal des A/D-
Wandlers 1 benutzt.
-
Das Audiosignaldatum, das an der Schnittstelle 3 ausgegeben
wird, wird an einen Rauschsperrschaltkreis 30 gegeben. Wenn
der Rauschsperrschaltkreis 30 eingeschaltet ist, werden die
Audiosignaldaten über den Digitalfilter 36 an den D/A-Wandler
37 geliefert. Die Ein/Aus-Steuerung des
Rauschsperrschaltkreises 30 wird von den Anweisungssignalen ausgeführt, die
vom Ablauf-Controller 18 ausgegeben werden.
-
In der oben beschriebenen Anordnung generiert der Ablauf-
Controller 18 verschiedene Anweisungssignale, zusätzlich zu
den Anweisungssignalen für die Ein/Aus-Steuerung der
Rauschsperrschaltung 30. Diese Anweisungssignale sind
Anweisungssignale zum Übertragen der im Übertragungspuffer 26
abgespeicherten Koeffizientendatengruppen an den RAM 10, das
Anweisungssignal zum Übertragen der im Übertragungspuffer 27
gespeicherten Adressendatengruppe an den RAM 17, das
Übertragungsanweisungssignal zum Übertragen der Audiosignaldaten
von der Schnittstelle 3 an die bezeichnete Adresse der
Signaldaten-RAMs 5 und 6, das Anweisungssignal zum Auslesen
der Signaldaten von der bezeichneten Adresse der Signaldaten-
RANS 5 und 6 und Übertragen derselben an den Pufferspeicher
7, das Anweisungssignal zum Auslesen der Koeffizientendaten
von der bezeichneten Adresse des RAM 10 und Übertragen
desselben in den Pufferspeicher 9, das Anweisungssignal zum
Anweisen verschiedener Operationen der ALU 11, das
Übertragungsanweisungssignal zum Übertragen der im Summierer 12
gespeicherten Signaldaten an die angegebene Adresse der RAMs
5 und 6 oder an den Pufferspeicher 7, das
Übertragungsanweisungssignal zum Daten von der angegebene Adresse des
Signaldaten-RAM 6 an die bezeichnete Schreibadresse des
externen RAM 15, das Übertragungsanweisungssignal zum
Übertragen von Daten von der bezeichneten Verzögerungsadresse
des externen RAM 15 an die bezeichnete Adresse des
Signaldaten-RAM 6, und das Rückstellanweisungssignal zum
Initialisieren der RAMs 5 und 6 und des externen RAM 15.
Diese Anweisungssignale werden mit geeigneter zeitlicher
Abstimmung gemäß den Befehlen vom Mikrocomputer 24 oder von
dem im RAM 19 abgespeicherten Programm generiert. Da die
Befehle vom Mikrocomputer 24 im Befehlsregister 21
abgespeichert sind, generiert der Ablauf-Controller 18 ein
Anweisungssignal entsprechend dem Befehl aus dem
Mikrocomputer 24 durch eine Unterbrechungsoperation, während er
den Inhalt des Befehlsregisters 21 während der
programmgemäßem Operation überwacht. Der im Befehlsregister 21
abgespeicherte Befehl wird z.B. vom Ablauf-Controller 18
widerrufen, wenn das entsprechende Anweisungssignal generiert
wird.
-
Wenn eine der Modus-Tasten der Tastatur 25 betätigt wird, wie
in Fig. 3 gezeigt wird, prüft der Mikrocomputer 24, ob die
betätigten Taste eine Taste zum Bezeichnen eines
Schallfeldmodus ist, der sich vorn augenblicklich eingestellten
Schallfeldmodus unterscheidet oder nicht (Schritt 41). Wenn
ein Schallfeldmodus bezeichnet wird, der sich vorn
augenblicklichen Schallfeldmodus unterscheidet, prüft der
Mikrocomputer 24, ob eine Anderung des Ablaufsteuerprogramms
erforderlich ist oder nicht (Schritt 411). Wenn keine
Anderung des Ablaufsteuerprogramms erforderlich ist, geht der
Mikrocomputer 24 zu Schritt 471 über, der später beschrieben
wird. Wenn andererseits eine Anderung des
Ablaufsteuerprogramms erforderlich ist, schickt der Mikrocomputer 24 die
Rauschsperrschaltsteueranweisung an den Ablauf-Controller 18,
um die Rauschsperrschaltung 30 sofort abzuschalten, um das
System in einen Rauschsperrzustand zu versetzen (Schritt 42).
Dann liest der Mikrocomputer ein Ablaufsteuerprogramm
entsprechend der betätigten Taste, eine Koeffizientendatengruppe
α&sub1;, α&sub2;, ... αn, und eine Verzögerungszeitdatengruppe t&sub1;, t&sub2;,
... tn aus dem ROM und überträgt sie auf den DSP 2
(Schritt 43 bis 45). Das Ablaufsteuerprogramm wird durch die
Schnittstelle 23 und den Hauptbus 22 auf den RAM 19
übertragen und wird durch eine Speicherschreibsteuerschaltung
(nicht dargestellt) in den RAM 19 geschrieben. Die
Koeffizientendatengruppe wird durch die Schnittstelle 23 und
den Hauptbus 22 in den Übertragungspuffer 26 übertragen. Die
verzögerungszeitdatengruppe wird durch die Schnittstelle 23
und den Hauptbus 22 in den Übertragungspuffer 27 übertragen.
Nach Übertragung der Koeffizientendaten und der
Verzögerungszeitdaten auf die Übertragungspuffer 26 bzw. 27 gibt der
Mikrocomputer einen Datenaustauschbefehl an den Ablauf-
Controller 18 aus (Schritt 46). Ferner gibt der Mikrocomputer
24 einen Initialisierungsbefehl an den Ablauf-Controller 18
aus (Schritt 47). Als Reaktion auf den Datenaustauschbefehl
gibt der Ablauf-Controller 18 ein vorgegebenes
Anweisungssignal an die Speichersteuerschaltungen 34 und 38 aus, um die
Koeffizientendatengruppe, die in den Übertragungspuffer 26
übertragen wurde, in einen vorgegebenen Bereich des RAM 10 zu
schreiben, und die Verzögerungszeitdatengruppe, die in den
Übertragungspuffer 27 übertragen wurde, in einen vorgegebenen
Bereich des RAM 17 zu schreiben. Da ferner der Ablauf-
Controller 18 das obengenannte Rückstellungsanweisungsignal
als Reaktion auf den Initialisierungsbefehl an die Speicher-
steuerschaltungen 31, 32 und 35 ausgibt, wird in die gesamte
Speicherbereiche der RAMs 5 und 6 und in den externen RAM 15
über die Speichersteuerschaltungen 31, 32 und 35 eine "0"
geschrieben.
-
Der Mikrocomputer 24 prüft ferner, ob es sich bei der
Tastenoperation im Operationsteil um eine Tastenoperation handelt,
die eine Veränderung des Wandmodus ist oder nicht (Schritt
471). Wenn die Anderung des Wandmodus erforderlich ist, liest
der Mikrocomputer aus dem ROM Koeffizientendatengruppen (β&sub1;,
β&sub2; ... βm)&sub1; ... (β&sub1;, β&sub2; ... βm)&sub4; des ersten bis
vierten Filters entsprechend der betätigten Taste und
überträgt sie (Schritt 472). Der erste Filter hat eine
Frequenzcharakteristik entsprechend der Veränderung im Schalldruck
einer Tonwelle, die von der Wand einmal reflektiert wurde.
Der zweite Filter hat eine Frequenzcharakteristik
entsprechend der Veränderung im Schalldruck einer Schallwelle,
die von der Wand zweimal reflektiert wurde. Der dritte Filter
hat eine Frequenzcharakteristik entsprechend der Veränderung
im Schalldruck eines Schallwelle, die von der Wand dreimal
reflektiert wurde. Auf ähnliche Weise hat der vierte Filter
eine Frequenzcharakteristik entsprechend der Veränderung im
Schalldruck einer Schallwelle, die von der Wand viermal
reflektiert wurde. Zusätzlich ist der Wert m beispielsweise
gleich 3. Auch die Koeffizientendatengruppen der Filter
werden durch die Schnittstelle 23 und den Hauptbus 22 in den
Übertragungspuffer 26 übertragen. Nach dem Übertragen der
Koeffizientendaten zum Übertragungspuffer 26 gibt der
Mikrocomputer 24 einen Datenaustauschbefehl an den Ablauf-
Controller 18 aus (Schritt 473), die
Koeffizientendatengruppen der Filter an vorgegebene Stellen des RAM 10 zu
schreiben. Im RAM 10 werden die Koeffizientendatengruppen der
ursprünglichen Reflexionsschallpegel und der
Koeffizientendatengruppen der vier Filter an unterschiedlichen Stellen
gespeichert, wie in Fig. 4 gezeigt wird.
-
Nach Durchführung des Schritts 473 gibt der Mikrocomputer 24
einen Rauschsperren-Aufhebebefehl an den Ablauf-Controller
18, um die Rauschsperrschaltung 30 einzuschalten und damit
den Rauschsperrzustand aufzuheben (Schritt 48). Genauer
gesagt, die Rauschsperrschaltung 30 wird nur während der
Periode ausgeschaltet, die erforderlich ist zum Austauschen
von Daten oder Programmen im RAM 10, 17 und 19, um vorn
augenblicklichen Schallfeldmodus in einen anderen Schallfeldmodus
umzuschalten. Diese Funktion ist vorgesehen, damit verhütet
wird, daß durch die Veränderung der Daten oder des Programms
Rauschsignale generiert werden.
-
Jetzt wird die Signaldatenverarbeitungsoperation innerhalb
des DSP 2 erklärt. Das ankommende Audiosignal, das an den
A/D-Wandler 1 geliefert wird, wird bei jedem Abtasttakt
synchron mit den Zeitgeberimpulsen vorn Zeitgebergenerator 28
in eine Audio-Signaldatengruppe d&sub1;, d&sub2; ... dn
umgewandelt. Die Audiosignaldatengruppe wird über die
Schnittstelle 3 an den ersten Datenbus 4 geschickt. Die an den
Datenbus geschickte Signaldatengruppe wird dann an den RAM 5
oder 6 geschickt und dort gespeichert.
-
Die in den RAM 6 geschriebenen Signaldaten werden sequentiell
über den Datenbus 14 an ein (nicht dargestelltes)
Ausgaberegister in der Schnittstelle 16 übertragen und vom
Ausgaberegister weiter in Speicherstellen des externen RAM 15
geschrieben, die von der Schreibadresse bezeichnet werden.
Die Schreibadresse wird gesteuert von der
Speichersteuerschaltung 35, und eine Vielzahl von Adressen, deren Nummer
mit der Nummer der Speicherstellen des externen RAM 15
übereinstimmt, wird in einer vorgegebenen Reihenfolge
sequentiell angewählt jedesmal wenn die übertragenen
Signaldaten geliefert werden. Im externen RAM 15 werden die
Signaldaten an der Speicherstelle, die von der Leseadresse
spezifiziert wird, gelesen und auf ein Eingaberegister (nicht
dargestellt) in der Schnittstelle 16 übertragen. Da die
Verzögerungszeitdaten, die in RAM 17 gespeichert sind, von
der Speichersteuerschaltung 38 ausgelesen und an die
Speichersteuerschaltung 35 gegeben werden, wird die
Leseadresse gemäß den Verzögerungszeitdaten eingestellt, die
an die Speichersteuerschaltung 35 geschickt werden, unter
Verwendung der Schreibadresse als Bezugswert. Mit anderen
Worten, die Zeitspanne zwischen dem Takten des Schreibens
eines Signaldatums in den RAM 15 und dem Takten des Lesens
des gleichen Signaldatums wird eine Verzögerungszeit, die vom
Verzögerungszeitdatum bestimmt wird. Die an das
Eingaberegister in der Schnittstelle 16 übertragenen und dort
abgespeicherten Signaldaten werden ihrerseits über den
Datenbus 14 auf den Signaldaten-RAM 6 übertragen. Ein
Verzögerungsaudiosignaldatum zum Steuern des Schallfelds wird
durch die Übertragungsoperation mit dem externen RAM 15
erzeugt, wie oben beschrieben.
-
Die aus dem RAM 10 ausgelesenen Koeffizientendaten werden an
den Pufferspeicher 9 geschickt und dort gespeichert. Mit
durch den Ablauf-Controller 18 geeignet bestimmter Taktung
werden die Signaldaten aus dem RAM 5 oder 6 auf den
Pufferspeicher 7 oder auf den Summierer 12 übertragen. Damit führt
der Multiplizierer 8 die Multiplikation zwischen den im
Pufferspeicher 7 gespeicherten Signaldaten und den im
Pufferspeicher 9 gespeicherten Koeffizientendaten aus. Bei
der Berechnung einer Produktsumme zwischen einer
Signaldatengruppe d&sub1;, d&sub2; dn und der Koeffizientendatengruppe α&sub1;,
a&sub2; ... αn werden zum Beispiel die folgenden Operationen
ausgeführt. Zunächst wird d&sub1; im Pufferspeicher 7 zum
Übertragen abgespeichert, α&sub1; wird im Pufferspeicher 9 zum
Übertragen abgespeichert, α&sub1; d&sub1; wird im Multiplizierer 8
berechnet und "0" wird in der ALU 11 zu α&sub1; d&sub1; addiert. Das
Ergebnis dieser Operation wird im Summierer 12 gespeichert.
Anschließend wird d&sub2; im Pufferspeicher 7 zur Übertragung
abgespeichert und α&sub2; wird im Pufferspeicher 9 zur Übertragung
abgespeichert. Jetzt wird α&sub2; d&sub2; im Multiplizierer 8 berechnet,
α&sub2; d&sub1; wird aus dem Summierer 12 ausgegeben und α&sub2; d&sub1; + α&sub2; d&sub2;
wird in der ALU 11 berechnet. Durch Wiederholen dieser
Operationen wird ai di berechnet.
-
Wie in Fig. 5 gezeigt wird, wird die
Signalbearbeitungsoperation in der folgenden Reihenfolge wiederholt, ein
Graphic-Equalizer-Prozeß (G.E.Q.) (graphischer Entzerrer-
Prozeß) für den rechten Kanal, der
Schallfeld-Steuerungsprozeß (S.F.C.) für den linken Kanal, der Graphic-Equalizer-
Prozeß für den linken Kanal, und der
Schallfeld-Steuerungsprozeß für den rechten Kanal. Diese vier Prozesse werden
ausgeführt durch Benutzen des ersten Datenbusses 4.
Andererseits wird der oben beschriebene Prozeß zur Erzeugung des
Verzögerungsaudiodatensignals parallel mit diesen Graphic-
Equalizer- und Schallfeld-Steuerungsprozeß ausgeführt.
Spezifisch werden, wie in Fig. 5 gezeigt, während des
Graphic-Equalizer-Prozesses für den rechten Kanal und des
Schallfeld-Steuerungsprozesses für den linken Kanal die
Verzögerungsaudiosignaldaten für den
Schallfeldsteuerungsprozeß des rechten Kanals über den zweiten Datenbus 14 vom
externen RAM 15 auf den Signaldaten-RAM 6 übertragen. Auch
werden während des Graphic-Equalizer-Prozesses für den
linken Kanal und des Schallfeld-Steuerungsprozesses für den
rechten Kanal die Verzögerungsaudiosignaldaten für den
Schallfeldsteuerungsprozeß des linken Kanals über den zweiten
Datenbus 14 vom externen RAM 15 auf den Signaldaten-RAM 6
übertragen.
-
Jetzt soll ein äquivalentes Netz zum Durchführen der
Operationen, gleich den Schallfeldsteuerungsoperationen gemäß
obiger Beschreibung erklärt werden. Das äquivalente Netz ist
aufgebaut wie in den Fig. 6A ünd 6B gezeigt wird. In Fig. 6A
führen die digitalen Verzögerungsschaltungen 61 und 62 die
Operationen des Generierens der Verzögerungsaudiosignaldaten
des rechten und des linken Kanals durch.
Multiplizierungsschaltungen 63 und 64 bestehen aus fünfzehn Multiplizierern
A&sub1; bis A&sub1;&sub5; zum Multiplizieren der Koeffizienten und führen die
Multiplikationen der Koeffizienten α&sub1; bis α&sub1;&sub5; an den
Signaldaten und den Verzögerungsaudiosignaldaten durch. Im linken
Kanal werden die Ausgangsdaten der Multiplizierern A&sub2; bis A&sub5;
im Addierer 65 aufaddiert, und die Ausgangsdaten der
Multiplizierer A&sub6; bis A&sub9; werden vom Addierer 66 aufaddiert,
die Ausgangsdaten der Multiplizierern A&sub1;&sub0; bis A&sub1;&sub3; werden im
Addierer 67 aufaddiert, und die Ausgangsdaten der
Multiplizierer A&sub1;&sub4; und A&sub1;&sub5; werden vorn Addierer 68 aufaddiert. Die
Ausgänge der Addierer 65 bis 68 sind entsprechend verbunden
mit den Filtern 71 bis 74, die als erster bis vierter Filter
wirken. Der Filter 71 besteht aus den Multiplizierern 81, 82
und 83 zum Multiplizieren der Koeffizienten, den Addierern 84
und 85, und den Verzögerungselementen 86 und 87. Die
Verzögerungszeit der Verzögerungselemente 86 und 87 entspricht
einer Zeitspanne von einem Schritt des Ablaufsteuerprogramms,
das generiert wird, um im Summierer 12 gespeichert zu werden.
Durch den Multiplizierer 81 wird ein Koeffizient 133 mit den
Daten multipliziert, die vorn Addierer 65 geliefert werden,
und das Ergebnis der Multiplikation wird an den Addierer 84
geschickt. Die vom Addierer 65 gelieferten Daten werden vom
Verzögerungselement 86 um die Zeitspanne eines Schritts
verzögert, und werden an den Multiplizierer 82 geschickt. Der
Multiplizierer 82 multipliziert den Koeffizienten 132 mit den
gelieferten Daten. Die Ausgangsdaten der Multiplizierern 81
und 82 werden vom Addierer 84 aufaddiert. Das summierte
Ausgangssignal des Addierers 84 wird an den Addierer 85
gegeben, in dem sie zu den Ausgangsdaten des Multiplizierers
83 addiert werden. Die Ausgangsdaten des Addierers 85, die
als Ausgangssignal der Filter 71 dienen, werden mittels des
Verzögerungselements 87 um eine Schrittperiode verzögert und
werden ihrerseits in den Multiplizierer 83 gegeben. Der
Multiplizierer 83 multipliziert den Koeffizienten β&sub1; mit den
gelieferten Daten. Die Filter 72 bis 74 sind auf ähnliche
Weise gebaut wie der Filter 71. Im rechten Kanal sind die
Filter 75 bis 78, die wie der Filter 71 gebaut sind, als der
erste bis vierte Filter vorgesehen, wie im linken Kanal.
-
Die Ausgangsdaten des Multiplizierers A&sub1;, der Filter 71 und
72 des linken Kanals und der Filter 77 und 78 des rechten
Kanals werden im Addierer 79 zusammenaddiert, und die
summierten Daten werden an den Graphic-Equalizer-Teil des
linken Kanals geschickt. Die Ausgangsdaten des
Multiplizierers A&sub1;, der Filter 75 und 76 des rechten Kanals und der
Filter 73 und 74 des linken Kanals werden im Addierer 80
zusammenaddiert, und die summierten Daten werden an den
Graphic-Equalizer-Teil des rechten Kanals geschickt.
-
Mittels der variablen Frequenzcharakteristiken der Filter 71
bis 78 in obiger Beschreibung werden die
Frequenzcharakteristiken der Audiosignaldaten eingestellt unter
Berücksichtigung der Anzahl der Reflexionen der
Reflexionsschallgruppen der Audiosignaldaten, während die Audiosignaldaten in
vier Gruppen unterteilt werden.
-
Bei der Graphic-Equalizer-Verarbeitung werden die
Koeffizientendaten, entsprechend den Höhen in jedem der
Frequenzbänder des linken und des rechten Kanals, die vorher durch
Tastenoperationen eingestellt wurden, im RAM 10 gespeichert.
Bei der Berechnung für jedes Frequenzband werden die
Koeffizientendaten sequentiell aus dem RAM 10 ausgelesen und
in den Pufferspeicher 9 übertragen. Andererseits wird die
Leseadresse des RAM 5 durch die Speichersteuerschaltung 31
bei jedem Ausführungsschritt angegeben, und die Signaldaten
werden an der bezeichneten Adresse gelesen und ihrerseits
über den Datenbus 4 auf den Pufferspeicher 7 übertragen.
-
Beispielhaft ist die Graphic-Equalizer-Operation eines
Frequenzbands wie folgt. Zunächst werden im ersten Schritt
die Signaldaten d&sub1;&sub2; an der Adresse 12H des RAM 5 gelesen. Die
gelesenen Signaldaten d&sub1;&sub2; und ein Koeffizientendatum α&sub0;, das
voreingestellt war, werden in die Pufferspeicher 7 und 9
übertragen und im Multiplizierer 8 miteinander multipliziert.
Zum Ergebnis der Multiplikation α&sub0; d&sub1;&sub2; wird in der ALU 11 im
dritteh Schritt, d.i. zwei Schritte nach dem ersten Schritt,
"0" addiert und das Ergebnis der Addition wird seinerseits im
Summierer 12 gespeichert.
-
Im zweiten Schritt werden dann die Signaldaten d&sub1;&sub1; an der
Adresse 11H des RAM 5 gelesen. Die gelesenen Signaldaten d&sub1;&sub1;
und das Koeffizientendaturn α&sub0;, das voreingestellt war, werden
im Multiplizierer 8 miteinander multipliziert. Zum Ergebnis
der Multiplikation α&sub2; d&sub1;&sub1; wird in der ALU 11 der im
Summierer 12 gespeicherte Wert (das Ergebnis der Addition im
dritten Schritt) im vierten Schritt addiert, und das Ergebnis
der Addition wird seinerseits im Summierer 12 gespeichert.
Dann wird im dritten Schritt der im Summierer 12 drei
Schritte vorher gespeicherte Wert (der letzte berechnete Wert
des einen Frequenzbands) EQn-1 in die Adresse 10H des RAM 5
und in den Pufferspeicher 7 übertragen, und mit dem
Koeffizientendatum α&sub0; im Multiplizierer 8 multipliziert. Zum
Ergebnis der Multiplikation α&sub0; EQn-1, der Wert, der im
Summierer 12 gespeichert ist (das Ergebnis der Addition im
vierten Schritt) wird von der ALU 11 im fünften Schritt
addiert, und das Ergebnis der Addition wird seinerseits im
Summierer 12 gespeichert.
-
Im vierten Schritt werden dann die Signaldaten d&sub1;&sub4; an der
Adresse 14H des RAM 5 gelesen. Die gelesenen Signaldaten d&sub1;&sub4;
und das Koeffizientendatum α&sub0;, das voreingestellt war, werden
im Multiplizierer 8 miteinander multipliziert. Zum Ergebnis
der Multiplikation α&sub0; d&sub1;&sub4; wird in der ALU 11 der im
Summierer 12 gespeicherte Wert (das Ergebnis der Addition im
fünften Schritt) im sechsten Schritt addiert, und das
Ergebnis der Addition wird seinerseits im Summierer 12
gespeichert. Dann wird im fünften Schritt das Signaldatum d&sub1;&sub3; an der
Adresse 13H des RAM 5 gelesen. Die gelesenen Signaldaten d&sub1;&sub3;
und das Koeffizientendatum α&sub0;, das voreingestellt war, werden
im Multiplizierer 8 miteinander multipliziert. Zum Ergebnis
der Multiplikation α&sub0; d&sub1;&sub3; wird in der ALU 11 der im
Summierer 12 gespeicherte Wert (das Ergebnis der Addition im
sechsten Schritt) im siebten Schritt addiert, und das
Ergebnis der Addition wird seinerseits im Summierer 12
gespeichert. Auf diese weise wird das Audiosignaldatum für
ein Frequenzband des Graphic-Equalizer erhalten. Diese
ähnlichen Operationen werden für alle eingestellten
Frequenzbänder durchgeführt. Eine nicht gezeigte Verschiebeschaltung
ist im Ausgangsstadium des Multiplizierers 8 vorgesehen, und
das Ergebnis der Multiplikation im Multiplizierer wird
geeignet getaktet an die ALU 11 gegeben. Zusätzlich ist das
Koeffizientendatum α&sub0; keine Konstante.
-
Eine äquivalente Schaltung, die eine Operation ähnlich der
Graphic-Equalizer-Operation der obigen Beschreibung ausführt,
wird als Graphic-Equalizer-Teil in Fig. 6B gezeigt. Dieser
Graphic-Equalizer-Teil ist auf der Stufe nach dem
Schallfeldsteuerungs-Verarbeitungsteil vorgesehen, und besteht aus
einer Reihenschaltung einer Vielzahl von Schaltkreisen die
jeweils einem Frequenzband entsprechen. Der Schaltkreis für
ein Frequenzband besteht, wie in dem mit einer gestrichelten
Linie A umgebenen Feld gezeigt wird, aus Multiplizierern 101
bis 105 zum Multiplizieren der Koeffizientendaten α&sub0;,
Addierern 106 bis 108 zum Addieren der Ausgänge der
Multiplizierer 101 bis 105, und Verzögerungselementen 109 und 110.
Die Verzögerungselemente 109 und 110 sind vorgesehen zum
Erzeugen einer Verzögerungszeit, die generiert wird, während
das Signal im Summierer 12 oder in der obengenannten
Verschiebeschaltung gehalten wird, und die Verzögerungszeit der
Verzögerungselemente 109 und 110 entsprechen der Periode
eines Schritts des Ablaufsteuerungsprogramms. Somit ist das
an den Multiplizierer 102 gegebene Signaldatum das Datum
einen Schritt bevor das Signaldatum an den Multiplizierer 101
gegeben wird, und das an den Multiplizierer 103 gegebene
Signaldatum ist das Datum einen Schritt bevor das Signaldatum
an den Multiplizierer 102 gegeben wird. Ein ähnliches
Zeitverhältnis gilt für die Signaldaten, die an die Multiplzierer
104 und 105 gegeben werden.
-
Wie oben spezifisch beschrieben, ist das erfindungsgemäße
Audiosignaldaten-Verarbeitungsgerät so konfiguriert, daß die
Audiosignaldaten aus dem Datenspeicher in der gleichen
Reihenfolge ausgelesen werden, in der sie eingeschrieben
wurden, ein Koeffizientendatum wird mit jedem
Audiosignaldatum in jeder der Datengruppen multipliziert, die durch
sequentielles Gruppieren der ausgelesenen Audiodaten für jede
vorgegebene Anzahl Daten erhalten werden, die multiplizierten
Werte werden zusammenaddiert, eine einstellbare
Filtercharakteristikoperation wird auf die Produktsumme in jeder
der Datengruppen ausgeführt, und die durch die Berechnung
erhaltenen Werte werden zusammenaddiert. Somit lassen sich
durch die Filterchrakteristikoperationen willkürlich
ursprüngliche Reflexionsschalldaten erzeugen unter
Berücksichtigung der Veränderungen der Frequenzcharakteristiken der
wahren, von der Wand zurückgeworfenen Schallwellen.
-
Weitere Merkmale der bevorzugten Ausführungsform der
vorliegenden Erfindung werden jetit unter Bezugnahme auf Fig. 9
bis 12 der beiliegenden Zeichnungen beschrieben. In dieser
Ausführungsform besteht die Speichersteuerschaltung 35 aus
einem Adressenbezeichnungsschaltkreis 41 und einem
Zugriffsschaltkreis 42, die später beschrieben werden. Weitere
Schaltungselemente sind vorhanden, die auf gleiche Weise
aufgebaut sind wie in der ersten Ausführungsform, daher wird
ihre Erklärung hier nicht wiederholt. Die Operation des
Mikrocomputers 24 dieser Ausführungsform gemäß Fig. 9
unterscheidet sich jedoch etwas von der Operation in der
Ausführungsform gemäß Fig. 3. In Fig. 9 wird gezeigt, daß,
wenn in Schritt 41 festgestellt wird, daß ein anderer
Schallfeldmodus bestimmt wird, als der, der im vorliegenden
Schallfeldmodus bestimmt wird, das Programm direkt auf Schritt 42
übergeht, in dem der Rauschsperrbefehl ausgegeben wird. Dann
geht das Programm nach dem Generieren des
Initialisierungsbefehls in Schritt 47 direkt auf Schritt 48 über, in dem der
Rauschsperr-Löschbefehl generiert wird.
-
Zusätzlich ist es auch möglich, die Operation des Geräts wie
folgt zu modifizieren. Spezifisch generiert der Mikrocomputer
24 anstatt des Initialisierungsbefehls das
Rückstellanweisungssignal unmittelbar nachdem der Ablauf-Controller 18
Anweisungssignale zum Übertragen der Daten in die RAMs 10 und
17 als Reaktion auf den Datenaustauschbefehl generiert hat.
-
Jetzt soll der Speichersteuerschaltkreis 35 zum Steuern des
externen RAM 15 beschrieben werden. Der externe RAM 15
besteht aus zwei dynamischen RAMs, deren jeder 64k x 4 Bits
aufweist, und die Verzögerung des 24-Bit-Datensignals wird
durch Zugreifen auf den externen RAM 15 dreimal je Wort in
einem Abtastzyklus durchgeführt. Wie in Fig. 10 gezeigt ist,
ist ein Register 43 zum Halten der Verzögerungszeitdaten, die
aus dem Verzögerungszeitdaten-RAM 17 ausgelesen werden, in
einer Adressenbezeichnungsschaltung 41 im Speichersteuerkreis
35 vorgesehen. Das Verzögerungszeitdaturn ist ein 15-Bit-
Datum. Die Adressenbezeichnungsschaltung 41 ist mit einem
Dekrementierungszähler 44 versehen. Der
Dekrementierungszähler 44 ist so konfiguriert, daß er jeweils bei jedem
Abtastintervall dekrementiert wird und eine
16-Bit-Ringzählung durchführt wobei er das Entlehnen ignoriert. Ein
Addierer 45 ist an das Register 43 und an den Herunterzähler
44 angeschlossen, und ein Multiplizierer 46 ist an den
Addierer 45 angeschlossen. Der Multiplizierer 46 ist so
konfiguriert, daß er das Ausgangsdatum des Addierers mit
einem Faktor 3 multipliziert, und sein Ausgangsdatum wird an
die Zugriffsschaltung 42 gegeben.
-
Spezifisch werden die im Register 43 gespeicherten
Verzögerungszeitdaten und die Zähldaten im Dekrementierungszähler 44
in Addierer 45 zusammengezählt, und der aufsummierte Wert
wird im Multiplizierer 46 verdreifacht. Bei der
Summierungsund Multiplizierungsoperation wird der Übertrag vorn MSB
(höchstwertiges Bit) des 16-Bit-Datums ignoriert. Das
Ausgangsdatum des Multiplizierers 46 wird als Bezugsadresse
des externen RAM 15 benutzt. Wenn jetzt das Zählerdatum des
Dekrementierungszählers 44 und das Verzögerungszeitdatum mit
DC bzw. OD bezeichnet werden, wird das Bezugsadressendatum,
das mit BA bezeichnet ist, wie folgt ausgedrückt:
-
BA (DC + OD)x3 ... (1)
-
Das Verzögerungszeitdaturn OD hat einen konstanten Wert, falls
es nicht vom Mikrocomputer 24 umgeschrieben wird. Die
Subtraktion vom Zählerdatum DC wird in Abtastintervallen
ausgeführt.
-
Das Bezugsadressendatum BAU bei einer n-ten Abtastperiode und
das Bezugsadressendatum BAn+1 in einer (n+1)-ten
Abtastperiode werden ausgedrückt wie folgt:
-
BAn = (DCn + OD)x3 ... (2)
-
BAN+1 = (DCn+1 + OD)x3 ... (3)
-
Da DCn+1 DCn - 1 ... (4)
-
ist, kann die Gleichung (3) auch wie folgt geschrieben
werden
-
BAn+1 = (DCn - 1 + OD)x 3
-
= (DCn + OD)x 3 - 3
-
= BAn - 3 ... (5)
-
Somit wird die Bezugsadresse bei jedem Abtastintervall um den
Betrag 3 Adressen verringert.
-
Die Zugriffsschaltung 42 führt das Schreiben und Lesen der
Daten in bzw. aus dem externen RAM 15 im sogenannten
Normalmodus-Zugriff durch. In Normalmodus-Zugriff wird das
Signal jedesmal dann an den externen RAM 15 geben, wenn
auf den externen RAM 15 zum Lesen und Schreiben der Daten
zugegriffen wird, und das Signal wird kurz nach dem
Ausgeben des Signals ausgegeben, wie in Fig. 11 gezeigt
wird. Beim ersten Zugriff in einer Abtastperiode werden die
acht niedrigwertigen Bits des Bezugsadressendatums als
Zeilenadresse gesetzt, und die acht höherwertigen Bits des
Bezugsadressendatums werden als Spaltenadresse gesetzt. Die
gesetzten Zeilen- und Spaltenadressen werden an die
Adressenanschlüsse des externen RAM 15 gegeben. Beim zweiten
Zugriff wird zum Bezugsadressendatum eine "1" addiert und die
acht niedrigwertigen Bits [AL1] des Bezugsadressendatums
werden als Zeilenadresse, und die acht höherwertigen Bits
[AH1] des Bezugsadressendatums werden als Spaltenadresse
gesetzt, und die gesetzten Adressendaten werden entsprechend
an die Adressenanschlüsse des externen RAM 15 gegeben. Auf
ähnliche Weise wird beim dritten Zugriff zum
Bezugsadressendatum ein Wert "2" addiert und die acht niedrigwertigen Bits
[AL2] des Bezugsadressendatums werden als Zeilenadresse, und
die acht höherwertigen Bits [AH2] des Bezugsadressendatums
werden als Spaltenadresse gesetzt, und die gesetzten
Adressendaten werden entsprechend an die Adressenanschlüsse
des externen RAM 15 gegeben. Ferner wird in der
Additionsoperation das Bezugsadressendaturn als das 16-Bit-Datum
behandelt. Es ist also möglich, daß ein Übertrag von den acht
niedrigwertigen Bits auf die acht höherwertigen Bits
vorkommt. Daher haben [AH0] bis [AH2] möglicherweise nicht den
gleichen Wert.
-
In Fig. 12 werden Veränderungen in den vorgegebenen
Adressenwerten aufgrund der oben gezeigten
Adressenbezeichnungsoperation in jeder Abtastperiode gezeigt. Wie man aus dieser
Figur ersieht, ist der Zugriff auf den gesamten Adressenraum
möglich, der mit 16 Bits bezeichnet werden kann. Somit kann
die Verzögerungszeit auf einen maximalen Wert erweitert
werden, der durch die Speicherkapazität festgelegt ist.
-
Bei 16-Bit-Adressen beträgt der Adressenraum 2¹&sup6; und es würden
als Ergebnis des Zugriffs durch drei Adressen noch
Restadressen bleiben. Da aber Übertrag und "zu leihen nehmen"
beim Addieren und Multiplizieren für die Adressenoperation
ignoriert werden, sind die Restadressen kein Problem. Wenn
auf alle Adressen, die mit 16 Bits bezeichnet werden können,
einmal zugegriffen wird, wird auf etwas verschobene Adressen
durch drei Adressen in Abtastintervallen zugegriffen.
-
Da das 24-Bit-Signaldaturn mit einer Rate von drei Adressen
per Abtastperiode durch Zugriff auf die Zeilenadresse gelesen
oder geschrieben wird, wird die Zahl der Zeilenadressen, auf
die bei einer Abtastfrequenz 32 kHz in 4 ms zugegriffen
werden kann, gleich 384 (4 ms ÷ (1/32 kHz)x 3 = 384). Dieser
Wert ist hinreichend größer als die wahre Anzahl (256) der
Zeilenadressen, und der externe RAM 15 wird aufgefrischt
während noch genügend Zeit übrigbleibt.
-
Wie vorstehend besonders beschrieben, wird die bevorzugte
Ausführungsform des erfindungsgemäßen
Audiosignaldatenverarbeitungsgeräts mit Ringzählermitteln, um das Zählen
innerhalb der Anzahl der Adressendatenbits in den
Abtastintervallen durchzuführen, sowie mit Mitteln zum Bezeichnen
der Verzögerungszeitdaten für die Schreibe- und
Leseoperationen ausgerüstet. Die bezeichneten Verzögerungszeitdaten
und die Zähldaten der Ringzählermittel werden
zusammengezählt, die Summe wird mit einem vorgegebenen Datum, das die
Anzahl der Zugriffe auf den Verzögerungsspeicher für jedes
Wort in einer einzigen Abtastperiode darstellt,
multipliziert, und das Ergebnis der Multiplikation wird als
Bezugsadressendatum benutzt. Die Schreib- und Leseadressen werden
auf das Bezugsadressendatum eingestellt, das wie beschrieben
erzeugt wird. Daher werden die Adressen des
Verzögerungsspeichers mit der kontinuierlicher Zugriffszahl sequentiell
in Abtastintervallen bezeichnet, so daß alle Adressen
bezeichnet werden. Damit läßt sieh eine länger Verzögerungszeit
sicherstellen. Da ferner Zeilenadressen, die sich nur durch
die Anzahl der Zugriffe unterscheiden, für ein einziges
Signaldatum bezeichnet werden, kann der Verzögerungsspeicher
in besser ausreichendem Maße als im Vergleich zur
herkömmlichen Einrichtung wiederaufgefrischt werden.
-
Jetzt sollen weitere Merkmale der bevorzugten
erfindungsgemäßen Ausführungsform beschrieben werden. Das
Audiosignalverabreitungssystern ist aufgebaut wie in den Fig. 1A und 1B
gezeigt ist, und somit wird die Erklärung jedes einzelnen
Elements hier nicht wiederholt. Wie schon oben beschrieben,
führt der Mikrocomputer 24 die in Fig. 9 gezeigten
Operationen aus. Dann wird die ursprüngliche
Rückhalldatenverarbeitungsoperation
im DSP wie schon oben beschrieben
ausgeführt.
-
Eine gleichwertige Schaltung zur Durchführung einer Operation
wie die obengenannte Operation wird wie der
Anfangsreflexionsteil der Fig. 13A aufgebaut. In Fig. 13A führen die
digitalen Verzögerungsschaltungen 61 und 62 die Operation der
Produktion von Verzögerungs-Audiosignalen im rechten und
linken Kanal durch. Die Multiplikationsschaltungen 63 und 64,
die entsprechend als eine Vielzahl von Multiplizierern
aufgebaut sind, führen die Multiplikation von Koeffizienten mit
den Signaldaten und den Verzögerungsaudiosignaldaten durch.
Die Addierer 65 und 66 summieren die Ergebnisse aus der
Multiplikation.
-
Wie in Fig. 14 gezeigt, werden der Grafik-Equalizer-(G.E.Q)-
Prozeß des rechten Kanals, ein Hochpaßfilter-(H.P.F.)-Prozeß
des rechten Kanals, der Schallfeldsteuer-(S.F.C.)-Prozeß des
linken Kanals, der Grafik-Equalizer-Prozeß des linken Kanals,
der Hochpaßfilterprozeß des linken Kanals, und der
Schallfeldsteuerprozeß des rechten Kanals wiederholt der Reihe nach
durchgeführt. Diese sechs Prozesse werden über den ersten
Datenbus 4 durchgeführt. Andererseits wird der obige Prozeß
zum Generieren der Verzögerungaudiosignaldaten parallel mit
dem Grafik-Equalizer-Prozeß, dem Hochpaßfilterprozeß und dem
Schallfeldsteuerprozeß durchgeführt. Spezifisch, wie in Fig.
14 gezeigt wird, werden während des Grafik-Equalizer-
Prozesses und des Hochpaßfilterprozesses des rechten Kanals
und des Schallfeldsteuerprozesses des linken Kanals die
Verzögerungsaudiosignaldaten für den Schallfeldsteuerprozeß
des rechten Kanals aus dem externen RAM 15 über den zweiten
Datenbus in den Signaldaten-RAM 6 übertragen. Auf ähnliche
Weise werden während des Grafik-Equalizer-Prozesses des
linken Kanals und des Schallfeldsteuerprozesses des rechten
Kanals die Verzögerungsaudiosignaldaten für den Schallfeld-
steuerprozeß des linken Kanals über den zweiten Datenbus vom
externen RAM 15 auf den Daten-RAM 6 übertragen. Dieser
Übertragungsprozeß und der Schallfeldsteuerprozeß sind
miteinander kombiniert, so daß der oben beschriebene
anfängliche Rückhallschallprozeß realisiert wird.
-
Eine äquivalente Schaltung, die die gleiche Operation
durchführt wie der oben gezeigte Grafik-Equalizer-Prozeß, wird in
den Fig. 13A und 13B gezeigt. Die äquivalente Schaltung ist
wie der Equalizer-Verarbeitungsteil aufgebaut, der in den
Fig. 13A und 13B gezeigt wird, und ist auf der Stufe nach dem
Anfangshalltonverarbeitungsteil vorgesehen ist. Im Equalizer-
Verarbeitungsteil sind sieben Schaltkreise entsprechend
sieben Frequenzbändern in Reihe geschaltet. Wie innerhalb des
von der gestrichelten Linie umgebenen Feldes gezeigt wird,
besteht die Schaltung für jedes Frequenzband aus den
Multiplizierern 171 bis 175 zum Multiplizieren der
Koeffizienten α&sub0; usw., und aus den Addierern 176 bis 178 zum
Addieren der Ausgangssignale aus den Multiplizierern 171 bis
175, und Verzögerungselementen 179 und 180. Operationen der
Verzögerungselemente 179, 180, der Verzögerungselemente 179'
und 180' entsprechen den Operationen des
Ablaufsteuerprogramms in einen Schritt. Daher ist das dem Multiplizierer
172 zugeführte Datum ein Datum, das einen Schritt vor dem dem
Multiplizierer 171 zugeführten Datum liegt, und das dem
Multiplizierer 173 zugeführte Signaldatum ist ein Datum, das
einen Schritt vor dem Signaldatum liegt, das dem
Multiplizierer 172 zugeführt wird. Diese Beziehung gilt auch für die
Signaldaten, die den Multiplizierern 174 und 175 zugeführt
werden.
-
Nach der oben beschriebenen Grafik-Equalizer-Prozeßoperation
wird die Hochpaßfilterprozeßoperation durchgeführt. Diese
Hochpaßfilterprozeßoperation ist fast die gleiche wie die
oben beschriebene Grafik-Equalizer-Prozeßoperation. In dieser
Operation wird das Koeffizientendatum sequentiell vom RAM 10
ausgelesen und in den Pufferspeicher 9 übertragen.
Andererseits wird die Leseadresse des RAM 5 vorn der
Speichersteuerschaltung 31 bei jedem Ausführungsschritt bezeichnet. Das
Signaldatum wird aus der bezeichneten Adresse ausgelesen und
über den Datenbus 4 zum Pufferspeicher 7 übertragen.
Jedesmal, wenn das Signaldaturn und das Koeffizientendatum auf die
Pufferspeicher 7 und 9 übertragen werden, werden die Daten
vom Multiplizierer 8 miteinander multipliziert. Ein Ergebnis
der Multiplikation wird von der ALU 11 und im Summierer 12
aufsummiert. Wenn die Hochpaßfilteroperation abgeschlossen
ist, wird das vom Prozeß gewonnene Signaldatum vom Summierer
12 über den Datenbus 4 an die Schnittstelle 3 gegeben, und
seinerseits vom DSP 2 über die Rauschsperrschaltung 30
ausgegeben.
-
Einer äquivalenten Schaltung, die eine Operation durchführt,
die gleich der oben beschriebenen
Hochpaßfilterprozeßoperation ist, wird in Fig. 13B gezeigt. Der äquivalente
Schaltkreis ist gebaut wie der Hochpaßfilterverarbeitungsteil
in dieser Figur und besteht aus den Multiplizierern 181 bis
186 zum Multiplizieren der Koeffizienten, Addierern 187 und
188 zum Addieren der Ausgangssignale der Multiplizierern 181
bis 183, Addierern 189 und 190 zum Addieren der
Ausgangssignale der Multiplizierern 184 bis 186, und
Verzögerungselementen 191 bis 193. Durch das Vorsehen des Verzögerungs
elements 191 wird das Signaldatum, das an den Mulitplizierer
182 gegeben wird, ein Datum einen Schritt vor dem
Signaldatum, das vom Equalizer-Prozeßteil an den Multiplizierer 181
gegeben wird. Auf ähnliche Weise wird durch Vorsehen des
Verzögerungselements 192 das an die Multiplizierern 183 und
185 gelegte Signaldaturn ein Datum einen Schritt vor dem
Signaldatum, das an den Multiplizierer geschickt wird.
Zusätzlich wird durch das Verzögerungselement 193 das an den
Multiplizierer 186 geschickte Datum ein Datum einen Schritt
von dem Signaldatum, das vom Addierer 190 ausgegeben wird.
-
In der obigen Ausführungsform ist das System so aufgebaut,
daß der Hochpaßfilterprozeß nach dem Grafik-Equalizer-Prozeß
durchgeführt wird. Natürlich kann das System auch so
aufgebaut werden, daß der Hochpaßfilterprozeß vor dem Graphik-
Equalizer-Prozeß oder dem anfänglichen Reflexionsschallprozeß
ausgeführt wird.
-
Wie oben spezifisch beschrieben, wird das
Audiosignaldatenverarbeitungssystem gemäß der vorliegenden Erfindung, das
arithmetische Mittel, das die Multiplikation der
Koeffizientendaten mit jedem Probendatum der Audiosignaldaten und die
Additionsoperation so ausgelegt, daß es eine Operation
durchführt, die eine Hochpaßfiltercharakteristik vorsieht. Auch
wenn die Signaldaten dc-Bestandteile aufweisen, werden diese
dc-Bestandteile durch die Hochpaßfilterfunktion
herausgezogen. Das heißt, daß die Versatzanpassung nicht
durchgehend im A/D-Wandler durchgeführt werden muß, um die
eingehenden Analogsignale in die Signaldaten umzuwandeln.
Ferner gibt es hier den Vorteil, daß die Rauschentwicklung
aufgrund der mit den Signaldaten vermischten dc-Komponenten
mit Sicherheit verhindert wird, wenn die Rauschsperrschaltung
ausgeschaltet ist.