DE3407078A1 - Elektronisches musikinstrument - Google Patents
Elektronisches musikinstrumentInfo
- Publication number
- DE3407078A1 DE3407078A1 DE19843407078 DE3407078A DE3407078A1 DE 3407078 A1 DE3407078 A1 DE 3407078A1 DE 19843407078 DE19843407078 DE 19843407078 DE 3407078 A DE3407078 A DE 3407078A DE 3407078 A1 DE3407078 A1 DE 3407078A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- output
- value
- input
- gate
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H5/00—Instruments in which the tones are generated by means of electronic generators
- G10H5/005—Voice controlled instruments
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H3/00—Instruments in which the tones are generated by electromechanical means
- G10H3/12—Instruments in which the tones are generated by electromechanical means using mechanical resonant generators, e.g. strings or percussive instruments, the tones of which are picked up by electromechanical transducers, the electrical signals being further manipulated or amplified and subsequently converted to sound by a loudspeaker or equivalent instrument
- G10H3/125—Extracting or recognising the pitch or fundamental frequency of the picked up signal
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2210/00—Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
- G10H2210/031—Musical analysis, i.e. isolation, extraction or identification of musical elements or musical parameters from a raw acoustic signal or from an encoded audio signal
- G10H2210/066—Musical analysis, i.e. isolation, extraction or identification of musical elements or musical parameters from a raw acoustic signal or from an encoded audio signal for pitch analysis as part of wider processing for musical purposes, e.g. transcription, musical performance evaluation; Pitch recognition, e.g. in polyphonic sounds; Estimation or use of missing fundamental
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S84/00—Music
- Y10S84/29—Tape
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Electrophonic Musical Instruments (AREA)
Description
BESCHREIBUNG
Die Erfindung betrifft ein elektronisches Musikinstrument, das auf elektronischem Wege Wellenformen erzeugt.
Insbesondere betrifft die Erfindung ein elektronisches Musikinstrument, das automatisch, ohne Tastenbetätigung
oder dergleichen, Musiktöne hervorbringt.
Die fortschreitende Entwicklung der Elektronik hat es möglich gemacht, auf elektronischem Wege die Wellenform
eines Musiktons zu erzeugen und mit Hilfe eines Lautsprechers einen Musikton abzugeben. Geräte, die so
arbeiten, werden für gewöhnlich als "elektronische Musikinstrumente" bezeichnet. Im allgemeinen liegt
elektronischen Musikinstrumenten ein Verfahren zugrunde, bei dem ein zu erzeugender Musikton mittels
einer Taste ausgewählt wird. Die elektronischen Musikinstrumente sind außerdem in der Lage, den Klang eines
Klaviers oder irgendeines anderen Musikinstruments zu erzeugen, in dem das Gerät mit einem Registerschalter
oder dergleichen ausgestattet wird.
Da bei einem elektronischen Musikinstrument Töne lilso
mit Hilfe von Tasten ausgewählt werden, erfordert das Spielen eines solchen Instruments die Beherrschung
z.B. des Klavierspiels und die Erfahrung bei der Betätigung der einzelnen Tasten. In anderen Worten:
Soll z.B. ein Stück zur Begleitung gespielt werden, so kann dies nur eine Person tun, die in der Lage ist,
das elektronische Musikinstrument zu spielen. Das Problem besteht also darin, daß die herkömmlichen
elektronischen Musikinstrumente, die mit Hilfe von Tasten gespielt werden, nicht von jedermann gespielt
werden können.
3407Ü7Ö
-ιοί Es gibt andererseits auch Geräte, die ein Stimmsignal
umsetzen und den umgesetzten Ton wiedergeben, ohne daß Tasten verwendet werden. In der japanischen Patentveröffentlichung
Nr. 52-40973 ist z.B. ein Musiktonsignal-Umwandlungsgerät beschrieben, das die Grundfrequenz
eines Stimmsignals zur Erzeugung eines Tons multipliziert oder dividiert. Wie in der japanischen Patentveröffentlichung
ausgeführt ist, erhält man die Grundfrequenz durch Erfassen eines Nulldurchgangs eines
Eingabe-Sprachsignals im Analogbetrieb. Es ist also schwierig, das Eingabe-Sprachsignal zur Erzeugung
eines wohlklingenden Musiktons zu erfassen und zu verarbeiten.
!5 Der Erfindung liegt die Aufgabe zugrunde, ein elektronisches
Musikinstrument zu schaffen, das entweder als Soloinstrument oder als Begleitinstrument auf einfache
Weise gespielt werden kann, ohne daß der Spieler spezielle Spielfähigkeiten besitzen muß. Das Gerät
soll ein Eingabe-Sprachsignal auf digitale Weise erfassen und verarbeiten, so daß ein im Vergleich zum
Stand der Technik besserer Musikton erzeugt wird.
Gemäß einem Merkmal der Erfindung wird ein elektronisches Musikinstrument geschaffen, das eine Umwandlungseinrichtung zum Umwandeln einer Stimme in digitale
Daten, eine Extrahiereinrichtung zum Extrahieren einer Tonhöhe aus den von der Umwandlungseinrichtung erhaltenen
digitalen Daten, eine Verarbeitungseinrichtung zum Verarbeiten des Ausgangssignals der Extrahiereinrichtung
eine Musikton-Erzeugungseinrichtung aufweist, welche das Ausgangssignal der Verarbeitungseinrichtung
empfängt und einen Musikton nach Maßgabe des Ausgangssignals der Verarbeitungseinrichtung erzeugt.
35
Gemäß einem weiteren Merkmal der Erfindung wird ein
elektronisches Musikinstrument geschaffen, das eine Detektoreinrichtung zum Feststellen der zeitlichen
Lage mindestens eines Anfangsteils eines Stimmsignals und eines Abschlußteils eines Stimmsignals, eine
Extrahiereinrichtung zum Extrahieren von Tonhöhendaten des Stimmsignals, mehrere Verarbeitungseinrichtungen
zum Verarbeiten der Tonhöhendaten auf unterschiedliche Weise, eine Auswahleinrichtung zum aufeinanderfolgenden
Auswählen verarbeiteter Tonhöhendaten von den Verarbeitungseinrichtungen nach Maßgabe der festgestellten
zeitlichen Lage und eine Musikton-Wiedergabeeinrichtung
aufweist, die einen Musikton auf der Grundlage der von der Auswahleinrichtung abgeleiteten, verarbeiteten
Tonhöhendaten erzeugt.
Im folgenden werden Ausführungsbeispiele der Erfindung anhand der Zeichnung näher erläutert. Es zeigen:
Fig. 1 ein Blockdiagramm einer ersten Ausführungsform eines erfindungsgemäßen elektronischen
Musikinstruments,
Fig. 2 ein detailliertes Blockdiagramm einer Ausführungsform der Erfindung,
25
Fig. 3A ein Wellenformdiagramm des Eingabe-Stimmsignals
und
Fig. 3B ein Impulsdiagramm von dreistufigen Daten,
die von dem Eingabe-Stimmsignal abhängen, 30
Fig. 4 eine detaillierte Schaltungsskizze des in Figur 1 gezeigten Drei-Wert-Abschnitts,
Fig. 5 einen Zeitablauf bei einer Ausführungsform der Erfindung,
to -% * V W W « W 1
<♦ w> to *· W
-12-
Fig. 6 einen detaillierten Zeitablauf bei einer Ausführungsform der Erfindung,
Fig. 7 eine Schaltungsskizze des Schieberegisters und des Selektors gemäß Figur 2,
Fig. 8 ein Blockdiagramm einer Ausführungsform der Erfindung, bei der die Addier/Subtrahier-Schaltung
30 und der Speicher 31 gemeinsam verwendet werden,
Fig. 9 eine Schaltungsskizze der Multiplizierschaltung 28, der Fensterverarbeitungsschaltung 29,
der Addier/Subtrahier-Schaltung 30, des Speichers 31 und des Maximumwert-Detektors
gemäß Figur 2,
Fig. 10 eine detaillierte Schaltungsskizze einer Ausführungsform der in Figur 1 gezeigten Fehlereliminiereinheit
7,
Fig. 11 ein Zeitdiagramm der Ausführungsform nach Figur 10,
Fig. 12 ein Diagramm eines Beispiels für eine Eingabe
von Tonhöhendaten und die Ausgangssignale der Zwischenspeicherschaltung bei der Ausführungsform
nach Figur 10,
Fig. 13 ein Diagramm eines weiteren Beispiels einer
Eingabe von Tonhöhendaten und von Ausgangs-Signalen der Zwischenspeicherschaltung der
Ausführungsform nach Figur 10,
Fig. 14 ein detailliertes Blockdiagramm des Mittelwertberechnungsabschnitts
8 nach Figur 1,
Fig. 15 ein Zeitdiagramm, das den Betrieb der in
Figur 14 gezeigten Mittelwerteinheit veranschaulicht,
Fig. 16 ein detailliertes Blockdiagramm des Tonhöhendaten-Steuerabschnitts
10 nach Figur 1,
Fig. 17 ein Zeitdiagramm der Beziehung der jeweiligen
Flags und Tonhöhendaten in Figur 16, und
10
Fig. 18 eine Beziehung zwischen den Zählerständen der Zähler und den Tonhöhendaten gemäß
Figur 16.
Im Gegensatz zum Stand der Technik, in dem der Musikton,
und der zeitliche Verlauf eines Musiktons mit Hilfe einer Taste ausgewählt werden, gibt bei der vorliegenden
Erfindung eine Person die Tonleiter und den zeitlichen Verlauf eines Musiktons mit ihrer Stimme
vor.
Figur 1 zeigt ein Blockdiagramm einer Ausführungsform der Erfindung und den Aufbau eines elektronischen
Musikinstruments, welches einen Musikton nach Maßgabe eines eingegebenen Stimmsignals erzeugt. Das Ausgangssignal
eines Mikrofons 1, in welchem die Stimme in ein elektrisches Signal umgesetzt wird, wird auf eine
Vorverarbeitungseinheit 2 gegeben. Das Ausgangssignal der Vorverarbeitungseinheit 2 gelangt an eine Tonhöhen-Extrahiereinheit
3, deren Ausgangssignal über einen Zwischenspeicher 4 an einen Prozessor 10 (CPU)
5 gegeben wird. Dessen Ausgangssignal gelangt an die
Tonhöhen-Extrahierschaltung 3, eine Speichereinheit 6,
eine Fehlerbeseitigungseinheit 7, eine laufend einen Mittel- oder Durchschnittswert berechnenden Arithmetikeinheit
(im folgenden einfach als Mittelwerteinheit
31407078
bezeichnet) 8 und eine Flagbildungseinheit 9 gegeben. Das Ausgangssignal der Speichereinheit gelangt auf die
Fehlereliminiereinheit 7 und eine Tonhöhendaten-Steuereinheit 10, und das Ausgangssignal der Fehlereliminiereinheit
7 gelangt an die Mittelwerteinheit 8 und an die Tonhöhendaten-Steuereinheit. Das Ausgangssignal
der Mittelwerteinheit 8 wird auf die Tonhöhendaten-Steuerschaltung 10 gegeben, deren Ausgangssignal auf
einen Kodegenerator 11 gegeben wird. Der Ausgang des
Kodegenerators 11 ist an einen Musiktongenerator 12 angeschlossen, dessen Ausgang an einen Lautsprecher
angeschlossen ist, in welchem das elektrische Signal in einen Ton umgesetzt wird.
Das in das elektrische Signal umgesetzte Sprachsignal wird auf die Vorverarbeitungseinheit 2 gegeben, wo es
einer Vorverarbeitung unterzogen wird. Diese besteht darin, daß zuerst ein außerhalb eines bestimmten Bands
liegender Signalanteil mit Hilfe eines Tiefpassfilters (TPF) und dergleichen entfernt wird. Das Entfernen des
außerhalb des Bands liegenden Signalanteils geschieht deshalb, um einen Fehler bei der Tonhöhenextrahierung
zu vermeiden, welche in der nachfolgenden Stufe durchgeführt wird. Bei der Vorverarbeitung wird weiterhin
das Eingabe-Stimmsignal, dessen außerhalb des Bands liegender Signalanteil entfernt wurde, verstärkt, um
eine vorbestimmte Amplitude zu erhalten. Dies geschieht mit Hilfe einer automatischen Verstärkungsregelschaltung.
Das oben erwähnte Eingabe-Sprachsignal vorbestimmter Amplitude wird mit einem Analog/Digital-Umsetzer (ADU)
in ein digitales Signal umgesetzt. Die erwähnte Verstärkung zum Erhalt einer vorbestimmten Amplitude
geschieht deshalb, um die Bitzahl des Ausgangssignals des ADU wirksam auszunutzen.
3*07078
Das in der Vorverarbeitungseinheit 2 behandelte Stimmsignal, nämlich das digitale Stimmsignal oder Sprachsignal,
wird an die Tonhöhenextrahiereinheit 3 gegeben,
welche eine Tonhöhe einer Grundfreguenz des Eingabe-Stimmsignals mit Hilfe des Prozessors (CPU) 5 extrahiert.
Die Tonhöhenextrahiereinheit 3 enthält eine Stimmdaten-Quantisierschaltung, eine Tonleiter-Extrahierschaltung
und eine Drei-Werte-Korrelierschaltung, so daß eine
Extraktion der Tonhöhe des Eingabe-Stimmsignals möglieh ist. Die Datenguantisierschaltung ermittelt
sukzessive den Maximumwert und den Minimumwert der digitalen Stimmdaten innerhalb eines vorgegebenen
ZeitIntervalls, und sie bestimmt jeweilige Schwellenpegel
zur Schaffung von dreistufigen Werten auf der Grundlage dieser Maximum- und Minimumwerte. Es unterwirft
das Eingangssignal mit Hilfe der Schwellenpegel einer Klassifizierung in drei Werte. Bei der Tonleiter-Extrahierschaltung
handelt es sich um eine Schaltung, durch die die Drei-Wert-Stimmdaten, die durch den
Drei-Werte-Bildungsvorgang auf der Grundlage der digitalen Stimmdaten erhalten wurden, nach Maßgabe
einer zu extrahierenden Tonleiter verzögert werden, woraufhin die verzögerten Daten und die Eingabedaten
multipliziert werden. Dann erfolgt durch diese Schaltung eine Korrelierung im Zeitbereich. Dir sich ergebenden
Daten stellen die reine Zeitkorrelierung zwischen den verzögerten Daten und den Eingabedaten
dar, und die Daten werden zum Extrahieren der Tonhöhe weiter verarbeitet. Das Extrahieren erfolgt durch die
oben erwähnte Drei-Werte-Korrelierschaltung. Bei dieser
Schaltung handelt es sich um eine Schaltung, in der eine Fensterverarbeitung zum Zwecke der Tonhöhenextrahierung
erfolgt. Da von der Tonleiter-Extrahierschaltung die Daten nach Maßgabe der zu extrahierenden Tonleiter
geliefert werden, werden die Daten von der Drei-Werte-Korrelierschaltung der Fensterverarbeitung unterworfen,
d.h.: Die Daten werden in Relation zu der Tonleiter gewichtet und für die spezifizierte Zeitdauer (1 Rahmen)
kumuliert. Aus den kumulierten Werten (kumulierte Werte/ die den Verzögerungszeiten entsprechen) wird ein Maximumwert
ermittelt, und auf der Grundlage der dem Maximumwert entsprechenden Verzögerungszeit wird die Tonhöhe
ermittelt und als Ausgangssignal abgegeben. Dieses Ausgangssignal besteht aus Daten, die zu der Tonhöhe
der Grundwelle der Stimme (einschließlich Oberwellen), die als Eingangssignal empfangen wurde, in Beziehung
stehen.
Die von der Tonhöhenextrahiereinheit 3 gelieferten Tonhöhendaten werden über den Zwischenspeicher 4 und
den Prozessor 5 in der Speichereinheit 6 gespeichert.
Bei der Fehlereliminiereinheit 7 handelt es sich um eine Schaltung, die die spezifizierte Änderung von
Tonhöhendaten feststellt, z.B. die Änderung von mindestens einer Oktav speziell in einem Rahmen. Dies geschieht
mit Hilfe der in der Speichereinheit 6 gespeicherten Daten. Außerdem stellt die Fehlereliminiereinheit
7 nach dem Feststellen der Änderung die Daten wieder auf den Zustand vor der Änderung ein. Außerdem
kann eine plötzliche Änderung der Musiktonleiter eintreten. In diesem Fall ändern sich die Daten nach
einem Rahmen. Die Daten, aus denen der Fehler in der Fehlereliminiereinheit 7 entfernt wurde, werden in der
Mittelwerteinheit 8 einer Mittelwertbildung unterworfen. Der Mittelwert ist z.B. ein arithmetischer Mittelwert,
den man erhält, indem man den bis zum laufenden Zeitpunkt erhaltenen Mittelwert und Daten über 6 Rahmen
hinweg wichtet. Insbesondere erfolgt die Mittelwertbildung in der Berechnungseinheit 8 so, daß die sukzessive
in der Rahmeneinheit empfangenen Tonhöhendaten in einem Schieberegister gespeichert werden und in
Einheiten von einem Rahmen verschoben werden, so daß
die verschobenen Daten der 6 Stufen des Schieberegisters und der Mittelwert innerhalb des Zeitraums eines Rahmens
von einem Selektor ausgewählt werden und die weniger signifikanten Bits z.B. abgerundet werden.
Die von der Mittelwerteinheit 8 gelieferten Mittelwertdaten werden an die Tonhöhendaten-Steuereinheit 10 gegeben,
wo sie zur Erzeugung eines Musiktons verarbeitet werden. In anderen Worten: Die oben erläuterte Fehlereliminiereinheit
7 erkennt eine fehlerhafte Tonhöhen-Extraktion, die zurückzuführen ist auf externes Rauschen
und dergleichen, und sie wirkt diesem Fehler entgegen, um die stufenähnliche große Änderung zu vermeiden, die
zurückzuführen ist auf die fehlerhafte Tonhöhenextraktion. Außerdem unterwirft die Mittelwerteinheit 8
kleine Änderungen von Daten der fehlerhaften Tonhöhenextraktion, die auf geringe Tonhöhenänderungen der
eingegebenen Stimme oder dergleichen beruhen, einer hystereseförmigen Mittelwertbildung, um die Daten zu
stabilisieren.
Die menschliche Stimme besitzt sowohl beim Sprechen als auch beim Singen Konsonanten und Vokale. Obschon
die Tonhöhen der Grundwellen in vielen Vokalen enthalten sind, jedoch sind die Grundwellen in einigen
Konsonanten nur in sehr geringem Umfang enthalten. Wenn daher lediglich ein Konsonant erzeugt wird (z.B.
das "S" bei der Silbe "SA"), wird die Tonhöhe der Grundwelle manchmal fehlerhaft extrahiert. Die Tonhöhendaten-Steuereinheit
10 verhindert die fehlerhafte Musiktonerzeugung aufgrund einer solchen fehlerhaften
Extraktion, um zu gewährleisten, daß die der empfangenen Stimme entsprechende Tonleiter getroffen wird.
Unter Verwendung der in dem Stimmsignal enthaltenen Leistung oder der aus der Stimmeingabe gewonnenen
Daten wählt diese Steuereinheit die in der Speichereinheit 6 gespeicherten Daten, die Ausgangsdaten der
iAUVUVö
Fehlereliminiereinheit 7 oder aber die Ausgangsdaten
der Mittelwerteinheit 8 aus.
Der Kodegenerator 11 ist eine Schaltung, die das Ausgangssignal
der Tonhöhensteuereinheit 10 in den Kode des in dem Musiktongenerator 12 zu erzeugenden Musiktons,
d.h. in die Musiktondaten, umsetzt.
Die Tonhöhenextrahiereinheit 3, die Speichereinheit 6, die Fehlereliminierschaltung 7 und die Mittelwerteinheit
8 werden von dem Prozessor 5 gesteuert. Die Tonhöhendaten-Steuereinheit 10 und die Kodegeneratoreinheit
11 werden von dem Prozessor 12 über eine Flagbildungseinheit 9 gesteuert. In anderen Worten:
In der Flagbildungseinheit 9 wird das Flag von dem Prozessor 5 gesetzt, wodurch die Tonhöhendaten-Steuereinheit
10 und der Kodegenerator 11 von dem Flag betätigt werden.
Die Ausgangssignale des Kodegenerators 11, d.h. die umgesetzten Daten, werden an den Musiktongenerator 11
gegeben, um dadurch den Musikton zu bezeichnen, der von dem Lautsprecher 13 abgegeben werden sollte. In
anderen Worten: Das elektrische Musikton-Signal (Analogsignal), das durch die vom Kodegenerator 11
kommenden umgesetzten Daten gekennzeichnet wird, wird von dem Musiktongenerator 12 ausgegeben, um auf den
Lautsprecher 13 gegeben zu werden, der demzufolge den Musikton nach Maßgabe des in das Mikrofon 1 eingegebenen
Eingäbe-Stimmsignals wiedergibt.
Figur 2 zeigt ein detailliertes Schaltungsbild einer zweiten Ausfuhrungsform der Erfindung. Insbesondere
zeigt Figur 2 ein detailliertes Blockdiagramm der Vorverarbeitungseinheit 2 und der Extrahiereinheit 3
aus Figur 1. Das Stimmsignal, d.h. das von dem Mikro-
34Q7078
fön 1 aus der Stimme in das elektrische Signal umgesetzte
Signal, wird über ein Tiefpassfilter 14 in eine automatische Verstärkungsregelschaltung 15 eingegeben,
deren Ausgangssignal auf einen Analog/Digital-Umsetzer 16 gegeben wird. Das Ausgangssignal des Analog/Digital-Umsetzers
wird an einen Maximumwert-Rechenteil 18, einen Minimumwert-Rechenteil 19 und an den ersten
Eingang eines Vergleichers 20 eines Drei-Werte-Quantisierungsteils
21 gegeben, außerdem an die Leistungsberechnungseinheit 17.
Die Drei-Werte-Quantisierungseinheit 21 enthält die Maximumwert-Berechnungseinheit 18, die Minimumwert-Berechnungseinheit
19, einen Vergleicher 20, Multiplizierer 22 und 23 und einen Speicher 25. Das Ausgangssignal
der Leistungs-Berechnungseinheit 17 gelangt auf einen Leistungswert-Extrahieranschluß 24.
Die Ausgangssignale der Maximumwert-Berechnungseinheit 18 und der Minimumwert-Berechnungseinheit 19 werden
an die ersten Eingänge der Multiplizierer 22 bzw. 23 gelegt. Außerdem werden den Multiplizierern 22 und 23
Koeffizientendaten £1 bzw. £2 zugeführt. Die Ausgangssignale
der Multiplizierer 22 und 23 gelangen an die zweiten bzw. dritten Eingänge des Vergleichers 20.
Dessen Ausgangssignal gelangt an ein Schieberegister 26 als Ausgangssignal der Drei-Werte-Quantisierungseinheit
21. Mehrere der ersten Ausgänge des Schieberegisters 26 werden stellenentsprechend an mehrere
Eingänge eines Selektors 27 gelegt. Das Ausgangssignal der letzten Stufe des Schieberegisters 26 und das Ausgangssignal
des Selektors 27 werden an den ersten bzw. den zweiten Eingang eines Multiplizierers 28 gelegt.
Der Ausgang der Multiplizierschaltung 28 ist über eine Fenster-Verarbeitungsschaltung 29 mit dem ersten Eingang
eines Addierers/Subtrahierers verbunden, dessen Ausgang an einen Speicher 31 angeschlossen ist. Das
-20-
Ausgangssignal des Speichers 31 gelangt an den zweiten Eingang des Addierer/Subtrahierers 30 und den Eingang
eines Maximumwertdetektors 32. Steuer-Ausgangssignale einer Steuereinheit 33 werden an die Steuereingänge
der Drei-Werte-Quantisierungseinheit 21, des Selektors 27 und der Fenster-Verarbeitungsschaltung 29 gelegt.
Ein Ausgangssignal des Maximumwertdetektors 32 gelangt an einen Tonleiterkode-Anschluß 34.
im folgenden soll ein Beispiel erläutert werden: Von
einem Musikinstrument oder der Stimme eines Menschens wird ein Musikton erzeugt und mit dem Mikrofon 1 in
ein elektrisches Signal umgesetzt. Das Stimm- oder elektrische Signal wird auf das Tiefpassfilter 14 gegeben,
so daß seine höheren Frequenzanteile beseitigt werden. Das Tiefpassfilter 14 besitzt eine Grenzfrequenz
von z.B. 900 Hz, so daß außerhalb des Stimmfrequenzbands liegende Anteile entfernt werden und
außerdem das Band des Sprachsignals gesteuert wird.
Dieses Filter kann auch ein Bandpassfilter sein. Durch
das Filter 14 wird das Auftreten von Fehlern bei der Tonhöhenextraktion, die durch Oberwellen verursacht
werden könnten, verhindert. Das bandbegrenzte Stimmsignal mit den beseitigten Rauschanteilen außerhalb
des Bands wird in der automatischen Verstärkungsregelschaltung 15 verstärkt, damit es einen spezifizierten
Amplitudenwert annimmt. Die Schaltung 15 ist vorgesehen, um die Ausgangsbits des Analog/Digital-Umsetzers
16 der nachfolgenden Stufe zulässig zu machen. Wenn man beispielsweise annimmt, daß die maximale bzw. die
minimale Wandlerspannung des A/D-Umsetzers 16 +_ 5 V
beträgt, so wird das Ausgangssignal des ADU 16 unzulässig, wenn die Absolutwerte des Maximalwerts und des
Minimalwerts des Ausgangssignals der automatischen Verstärkungsregelschaltung 15 größer als 5 V wird.
Wenn weiterhin die Absolutwerte des Maximum- und des
«I 0 ■·■*·**
-21-
Minimumwerts des Ausgangssignals der automatischen Verstärkungsregelschaltung
15 viel kleiner als 5 V sind und z.B. 0,5 V betragen, wird auch der digitale Datenwert am Ausgang des ADU klein, und die höherwertigen
Bits des ADU nehmen einen niedrigen Pegel an, so daß die Anzahl von gültigen oder zulässigen Bits abnimmt.
Um diese Nachteile zu vermeiden, arbeitet die automatische Verstärkungsregelschaltung 15 so, daß die Maximum-
und die Minimumwerte ihrer Ausgangssignale nicht den Spannungsumwandlungsbereich des ADU 16 überschreiten
und keine kleinen Absolutwerte annehmen können. Allerdings arbeitet die automatische Verstärkungsregelschaltung
15 nicht so, daß die Maximum- und die Minimumwerte jederzeit konstant sind, sondern sie arbeitet
so, daß eine von den Maximum- und den Minimumwerten des Sprachsignals abhängige Verstärkung erreicht wird
und ein Signal mit einer Amplitude geliefert wird, die in einem im wesentlichen spezifizierten Bereich liegt.
Bei Abwesenheit des Eingangssignals wird die Ver-Stärkung maximal, das Ausgangssignal ist aber selbstverständlich
Null.
Das in "den spezifizierten Amplitudenwert umgesetzte
Sprachsignal wird von der automatischen Verstärkungsregelschaltung 15 abgegeben und in dem ADTJ 16 in einen
digitalen Datenwert umgesetzt.
Die Leistungs-Berechnungseinheit 17 ist eine Schaltung,
die den Absolutwert des digitalen Ausgangssignals des ADU 16 bildet und diese Absolutwerte über einen Rahmen
eines spezifizierten Bereichs hinweg summiert. D.h.: Die digitalen Ausgangssignale des ADU 16 werden ihrer
Vorzeichen entledigt und summiert. Das Ergebnis der Summierung ist ein Wert, der eine Aussage über den
Leistungsinhalt des Stimmsignals enthält, und die Leistungs-Berechnungseinheit 17 liefert das Ergebnis
an den Leistungswert-Extrahieranschluß 24.
Das Ausgangssignal des ADU 16 gelangt an die Maximumwert-Berechnungseinheit
18 und die Minimumwert-Berechnungseinheit
19 der Drei-Werte-Quantisierungseinheit 21. Die Maximum- und die Miniumwerte eines vorbestimmten
Zeitraums der umgesetzten digitalen Stimmsignaldaten werden in den Einheiten 18 bzw. 19 erfaßt.
Dies geschieht, um einen Schwellenpegel zu erhalten, der beim Umsetzen des "Analogsignals" in drei Werte
verwendet wird.
Die Maximum- und die Minimumwerte werden in dem Maximumwert-Berechnungsabschnitt
18 bzw. dem Minimumwert-Berechnungsabschnitt 19 festgestellt und mit den vorgegebenen
Koeffizienten £.. bzw. ^2 in den Multiplizierern
22 und 23 multipliziert, bevor die Ergebnisse im Speicher 25 gespeichert werden. Der Vergleicher 20
vergleicht die digitalen Daten am Ausgang des ADU 16 mit den Schwellenpegeln. Wenn die Maximum- und Minimumwerte
z.B. mit £.. = 0,4 und £„ = 0,4 in den Multiplizierern 22 bzw. 23 multipliziert werden, wird ein
Schwellenpegel geliefert, der im Verhältnis zu einem Amplitudenwert des eingegebenen Signals steht. Die
Umsetzung auf drei Werte erfolgt in dem Vergleicher 20 nach Maßgabe eines Schwellenpegels, der auf den Maximum-
und den Minium-Amplitudenwert normiert ist.
Figuren 3A und 3B zeigen ein Wellenformdiagramm der Stimmdaten, nämlich das Eingangssignal des ADU 16 und
das Signal/ das durch Umsetzen dieser Daten in drei Werte erhalten wird.
Wenn die Stimmdaten größer sind als ein Schwellenpegel τη, der durch Multiplizieren des Maximumwerts mit £..
erhalten wird, wird einer von drei möglichen Datenwerten
-23-
(im folgenden als ternärer Datenwert bezeichnet), nämlich der Datenwert "1" geliefert (vgl. die Bereiche abis
a5 in Figur 3B). Wenn die Stimmdaten kleiner sind
als ein Schwellenpegel TL, den man durch Multiplizieren des Minimumwerts mit £2 erhält, ist der ternäre
Datenwert "-1" (siehe die Bereiche b1 und b2). Wenn
die Stimmdaten zwischen den Schwellenpegeln TH und TL liegen, ist der ternäre Datenwert "0". Die ternären
Daten umfassen zwei Bits, nämlich ein Vorzeichenbit und ein Datenbit, wie in Tabelle 1 gezeigt ist. Ist
der Datenwert "0" oder "1", so ist das Vorzeichenbit "0". Ist der Datenwert "-1", so ist das Vorzeichenbit
"1". Das Datenbit zeigt den Absolutwert an. Wenn der
ternäre Datenwert "+1" ist, so ist das Datenbit "1". Wenn der ternäre Datenwert "0", so ist das Datenbit
ternäre Daten | Vorzeichenbit | Datenbit |
-1 0 1 |
1 0 0 |
1 0 1 |
Der Vergleicher 20 liefert ternäre Daten, die sich auf eine vorbestimmte Zeitdauer, nämlich die Zeitdauer eines
Rahmens, beziehen, wobei Schwellenpegel zugrunde gelegt werden, die aus den Maximum- und Minimumdaten während
des vorbestimmten Zeitraums erhalten werden. Dieser sequentielle Arbeitsablauf wird durch Steuersignale
gesteuert, die von dem Steuerteil 33 erzeugt werden.
Die Ausgangssignale des Vergleichers 20, nämlich die ternären Datenwerte, werden an das Schieberegister 26
gegeben und sequentiell verschoben. Die verschobenen letzten Daten des Schieberegisters werden auf die ersten
Eingangsdaten der Multiplizierschaltung 28 addiert. Die den letzten verschobenen Werten folgenden Daten sind
noch in dem Schieberegister gespeichert. Mehrere Daten, die in einer Anzahl von Schritten, nämlich entsprechend
der Anzahl der Schiebetakte, verzögert werden, werden von dem Selektor 27 nach Maßgabe eines Selektionssignals ausgewählt, das durch die Steuereinheit 33
erzeugt wird. Diese ausgewählten Daten werden an den zweiten Eingang der Multiplizierschaltung 28 gegeben.
Die an den ersten und den zweiten Eingang der Multiplizierschaltung 28 gelegten Daten werden multipliziert.
Die Multiplikation wird durchgeführt, um das Produkt xj.x(j +ti) zu erhalten, wobei die zuletzt verschobenen
Daten mit χj bezeichnet sind, und die durch einen
vorbestimmten Takt fi von den Daten xj verzögerten Daten mit x(j + 1U) bezeichnet sind. Die notwendige
Anzahl von Multiplikationen wird innerhalb eines Schiebetakts durchgeführt, und das Ergebnis wird über
die Fenster-Verarbeitungsschaltung 29 an den ersten Eingang des Addierer/Subtrahierers 30 gegeben. Die
notwendige Anzahl von Multiplikationen wird von der Steuereinheit 33 ausgewählt und entspricht einer Tonleiter.
Die Multiplikation wird 38-mal durchgeführt, wenn die gesamte Verzögerungszeit T0 ~ To7 entsprechend
einer Tonleiter E2 ~-» F5. Bei einer Schiebe-Taktfrequenz
fs vom 32 768 KHz beträgt die der Verzögerungszeit entsprechende Tonleiterfrequenz fi dann fi = fs/τϋ. Xi
ist proportional zur zwölften Wurzel aus 2. ti wird
entsprechend F5, Ες, F2, E- ausgedrückt durch
T37 = 46, TT36 =49 Tf1 = 373 und ^0 = 395.
Die Fenster-Verarbeitungsschaltung 29 multipliziert die Daten mit einem Koeffizienten, der einer von dem Selektor
27 ausgewählten Verzögerurig entspricht. Wenn man annimmt, daß der Koeffizient, d.h. der Fensterwert
• W * *
-25-
w (ti) beträgt, so beträgt der in den Addierer/Subtrahierer
30 eingegebene Wert xj.x(j + ti) .wCti) . Der
Koeffizient wird nach Maßgabe eines Auswahlsignals ausgewählt, das dem Selektor 27 von der Steuerschaltung
33 zugeführt wird. Der Addierer/Subtrahierer 30 und der Speicher 31 werden zum Aufsummieren verwendet. Das
Ausgangssignal des Speichers 31 wird an den zweiten Eingang des Addierer/Subtrahierers nach Maßgabe von
la gelegt, um eine Addier- und Subtrahieroperation des Ausgangssignals der Fenster-Verarbeitungsschaltung
29 durchzuführen, woraufhin das Ausgangssignal des Addierer/Subtrahierers erneut in dem Speicher 31 gespeichert
wird.
Die in dem Speicher 31 gespeicherten Daten sind folgende :
ExJ-X(J+Ti)**^1) (D
wobei N die Anzahl von Schiebeschritten darstellt, d.h. eine Zählung von ti innerhalb eines vorbestimmten Bereichs,
w(xi) ist für j in Gleichung (1) eine Konstante. Daher erhält man folgende Gleichung
R' (Ti) =w(Tx)-Zxj-x (j +Ti) - w(Ti)-R-(ii) .... (2),
j-0
wobei R(Tii) einen akkumulierten Wert von xj.x(j + Xx)
und einen einer bestimmten Zeitverzögerung entsprechenden Korrelationswert darstellt.
wie aus Gleichung (2) hervorgeht, wird der obige Wert w(ti) mit dem der spezifizierten Verzögerungszeit ent-
;-" 3Λ07078
Verzögerurigszeit entsprechenden Korrelationswerten
multipliziert und wird zu dem Fensterwert, welcher der Verzögerungszeit der Fensterfunktion entspricht. Auf
diese Weise können Fehler in Form einer Uberton-Extraktion mit Hilfe der Drei-Wert-Operation verhindert
werden (Fenster-Verarbeitung). In einigen Fällen ist die erste oder zweite Oberwelle im Pegel .
stärker als die Grundwelle. Es ist daher wichtig, die Multiplikation des Fensterwerts durchzuführen, d.h.
eine Fensterverarbeiturig vorzusehen.
Das Ausgangssignal des Speicherabschnitts 31 wird auf den Maximumwert-Detektor 32 gegeben, und es wird der
Maximumwert in dem Speicherabschnitt 31 festgestellt.
In dem Speicherabschnitt 31 gespeicherte Werte sind kumulierte, d.h. aufsummierte Werte, von denen jeder
dadurch erhalten wird, daß der Wert der spezifizierten Zeitverzögerung und der laufende Wert multipliziert
werden und das Produkt dann der Fenster-Verarbeitung unterworfen wird. Es handelt sich daher um Werte, die
den jeweiligen Tonhöhen oder Frequenzkomponenten der Eingabe-Stimmsignale■innerhalb eines festgelegten
Zeitraums entsprechen. (Der festgelegte oder spezifizierte Zeitraum kennzeichnet einen Rahmen. Wenn ein
Rahmen aus 800 Systemtakt-Intervallen besteht, stellen die gespeicherten Werte kumulierte oder summierte Werte
von 400 Zeiten dar.) D.h. also, daß der in dem Maximumwertdetektor 32 ermittelte Wert der Maximumwert der
Signale der jeweiligen Frequenzkomponenten der Eingabe-Stimmsignale innerhalb des spezifizierten Zeitraums ist.
Der Maximumwertdetektor 32 setzt die Tonhöhen- oder Frequenzdaten, die den Maximumwert besitzen, z.B. in
einen Kode um, um den Kode an den Tonleiterkode-Anschluß 34 zu geben.
Bei dem oben erläuterten Betrieb des Instruments werden die einer Note des Stimmsignals zugehörigen Tonleiter-Kodedaten
von dem Tonleiterkode-Anschluß 34 ausgegeben und in dem Zwischenspeicher 4 gespeichert. Dann
schliessen sich eine Fehlereliminierung, eine Mittelwertbildung usw. an.
Figur 4 zeigt eine detaillierte Schaltungsskizze des Drei-Werte-Quantisierungsteils 21 und der Leistungs-Berechnungseinheit
17 aus Figur 2. Das Ausgangssignal des ADU 16 wird in dem Pufferregister 35 gespeichert.
Dessen Ausgangssignal wird an einen Minuendeneingang B des Addierer/Subtrahierers 36 und an die Eingänge von
Registern 37 und 38 gelegt. Das Ausgangssignal C des
!5 Addierer/Subtrahierers 36 wird in einen Zwischenspeicher
39 eingegeben. Daten von einem Festspeicher (ROM40) werden an die Eingänge von Zwischenspeichern
41 und 42 gegeben.
Die Ausgänge der Zwischenspeicher 37, 39, 41 und 42
sind gemeinsam über jeweilige Verknüpfungsglieder 43 bis 47 geschaltet und an einen Subtrahendeneingang A
des Addierer/Subtrahierers 36 sowie einen Adreßeingang des ROM40 angeschlossen. Die Verknüpfungsglieder 43
bis 47 werden während einer vorbestimmten Zeitdauer T1 bis T5 innerhalb eines Rahmens geöffnet. Ein übertrag
(carry) D vom Addierer/Subtrahierer 36 wird an die jeweiligen Eingänge von Zwischenspeichern 48 und
49, den ersten Eingang eines UND-Glieds 50 und über einen Negator 51 an den ersten Eingang eines UND-Glieds
52 gegeben.
Das Ausgangssignal des Zwischenspeichers 48 wird als das Vorzeichenbit an das Schieberegister 26 gegeben
und an den ersten Eingang eines ODER-Glieds 53 gelegt. Das Ausgangssignal des Zwischenspeichers 49 gelangt
über einen Negator 54 an den zweiten Eingang des ODER-
Glieds 53. Das Ausgangssignal des ODER-Glieds 53 wird als das Datenbit dem Schieberegister 26 zugeführt. Die
Ausgangssignale der UND-Glieder 50 und 52 werden an die Takteingänge (latch) der Zwischenspeicher 38 und
37 gegeben.
Im folgenden soll unter Bezugnahme auf die Zeit-Diagramme in den Figuren 5 und 6 die Arbeitsweise
einer Ausführungsform der Erfindung beschrieben werden.
Erfindungsgemäß werden in der oben erläuterten Weise Daten in Rahmen-Einheiten verarbeitet. Ein Rahmen
enthält 800 Daten, und der Maximumwert sowie der Minimumwert der Amplituden der Daten werden rahmenweise
berechnet. Der Maximumwert und der Minimumwert werden berechnet, nachdem die letzten Daten eines Rahmens
als Eingangssignal empfangen wurden. Der Vergleicher 20 vergleicht die nächsten eingegebenen Daten
mit Schwellenpegeln, die mit den Maximum- und Minimumwerten in Beziehung stehen. Wie Figur 5 anhand eines
Beispiels veranschaulicht, werden der in einem Rahmen (n - 1) erhaltene Maximum- und Minimumwert für den
Vergleich von Daten in dem nächsten Rahmen (n) verwendet. Weiterhin werden die in dem Rahmen (n) erhaltenen
Werte in dem Rahmen (n + 1) verwendet. In anderen Worten: Der Drei-Werte-Quantisierungsteil 21 stellt
den Maximum- und den Minimumwert eines unmittelbar vorausgehenden Rahmens fest, ermittelt die Schwellenpegel
aus diesen Maximum- und Minimumwerten und bildet schließlich, aus den Daten des nächsten Rahmens in dem
Vergleicher unter Zugrundelegung der Pegel ternäre Daten.
Gemäß Figur 4 werden die von dem ADU 16 empfangenen Daten innerhalb eines Zeitraums t.. in dem Pufferregister
35 gespeichert. Zuerst werden die in Figur 6 gezeigten
Daten χ gespeichert. Die Daten werden an den Addierer/
Subtrahierer 36 gelegt, der als Addierer arbeitet, wenn sein Addier/Subtrahier-Steuergang SUB ein Signal mit
hohem Pegel empfängt, und der als Subtrahierer arbeitet, wenn der Steuereingang ein Signal mit niedrigem Pegel
empfängt. Da an den Steuereingang SUB des Addierer/ Subtrahierers 36 mit Ausnahme des Zeitraums t5 ein Signal
niedrigen Pegels gelegt wird, arbeitet die Schaltung in dem Zeitraum t.. - t4 als Subtrahierer. Im Zeitraum
t,| ist das Verknüpfungsglied 43 geöffnet, und in dem
Zwischenspeicher 37 gespeicherte Daten werden in den Addierer/Subtrahierer 36 gegeben und subtrahiert. Wenn
hier der Wert der in dem Pufferregister 35 gespeicherten Daten größer ist als der Wert der im Zwischen-
1^ speicher 37 gespeicherten Daten, liefert der Übertrag-Anschluß
D der Schaltung 36 einen niedrigen Pegel. Da der Zwischenspeicher 37 den Maximumwert speichert,
werden die in dem Pufferregister 35 gespeicherten Daten in dem genannten Fall in den Zwischenspeicher 37 eingespeichert.
Der niedrige Pegel des Signals am Übertrag-Ausgang D wird durch den Negator 51 in einen hohen
Pegel umgesetzt, und das Signal mit dem hohen Pegel gelangt an das UND-Glied 52, welches dadurch geöffnet
wird. An den Takteingang des Zwischenspeichers 37 gelangt ein Takt 0_ (t...03) im Zeitraum t-, so daß die
oben erwähnten, dem Eingang der Schaltung 37 zugeführten Daten zwischengespeichert werden. Wenn hingegen
die in dem Pufferregister 35 gespeicherten Daten einen kleineren Wert haben als die im Zwischenspeicher 37
gespeicherten Daten, nimmt der Übertrag-Ausgang D des Addierer/Subtrahierers 36 einen hohen Pegel an. Da
dieses Signal über den Negator 51 an das UND-Glied 52 gelangt, wird dieses geschlossen und der Takt t1.0-gelangt
nicht an den Zwischenspeicher 37. Dies bedeutet, daß die in dem Zwischenspeicher 37 enthaltenen
Daten unverändert bleiben. Dieser Vorgang wird während
3*07078
des Zeitraums t, durchgeführt.
Als nächstes wird im Zeitraum t~ das Verknüpfungsglied
44 geöffnet, und die im Zwischenspeicher 38 gespeicherten Daten werden auf den Addierer/Subtrahierer 36 gegeben.
Ähnlich der oben beschriebenen Arbeitsweise erfolgt in dem Addierer/Subtrahierer die Ausführung
der Subtraktion, und die Werte der Daten werden verglichen. Wenn die im Pufferregister 35 gespeicherten
Daten einen kleineren Wert haben als die im Zwischenspeicher 38 gespeicherten Daten, liefert der Übertrag-Ausgang
D einen hohen Pegel. Da der Zwischenspeicher 38 den Minimumwert speichert, werden die im Pufferregister
35 gespeicherten Daten unter diesen Umständen in den Zwischenspeicher 38 eingespeichert. Das UND-Glied
50 empfängt von dem Übertrag-Ausgang D das Signal mit hohem Pegel, so daß während der Öffnungszeit
des UND-Glieds ein Takt 03 (t^.fl^) im Zeitraum
to an den Takteingang (latch) des Zwischenspeichers 38 gelangt, so daß die dem Eingang der Schaltung 38 zugeführten,
oben erwähnten Daten, zwischengespeichert werden.
Dieser Vorgang wird für die Daten XQ ~ X7Qg wiederholt.
Nach der Rahmen-Periode T,- (d.h. der den letzten Daten
Xtqq entsprechenden Periode) wird die Verknüpfungsschaltung
43 bei T.. geöffnet, und die in dem Zwischenspeicher
37 gespeicherten Daten werden in dem ROM40 gespeichert. Derjenige Inhalt des Speichers, der durch
diese Daten gekennzeichnet wird, gelangt an den Eingang des Zwischenspeichers 41 und wird dort mit dem Takt
Tc.t-.02 gespeichert. In ähnlicher Weise wird beim
Zeitraum t2 des Intervalls T5 die Verknüpfungsschaltung
44 geöffnet, so daß die Daten des Zwischenspeichers 38 an den ROM40 gelangen. Derjenige Inhalt des Speichers,
der durch diese Daten adressiert wird, gelangt an den
Eingang des Zwischenspeichers 42 und wird dort mit dem Takt T5.t2.03 gespeichert. Da die dem ROM40 zugeführten
Daten der Maximum- und der Minimumwerte sind, werden dem Maximum- bzw. dem Minimumwert zugeordnete Schwellenpegel
in den Zwischenspeichern 41 und 42 gespeichert, indem man das mit einem vorbestimmten Wert, z.B.
<L =0,4 und ty * 0'4 multiplizierte Ergebnis in dem
Speicher speichert, dessen Adresse durch den Maximumbzw. Minimumwert festgelegt wird. Durch den oben geschilderten
Arbeitsablauf werden in den Zwischenspeichern 41 und 42 die dem Maximumwert bzw. dem
Minimumwert innerhalb eines Rahmens zugeordneten Schwellenpegel gespeichert.
in dem verbleibenden Zeitraum der Daten XQ ^X.„g,
nämlich in dem Zeitintervall t-, und t, wird parallel
zu dem oben beschriebenen Ermitteln der Schwellenpegeln eine Operation zum Bilden von ternären Werten
durchgeführt. Die den Maximum- und Minimumwerten zugeordneten Schwellenpegeln des vorausgehenden Rahmens
sind dann in den Zwischenspeichern 41 und 42 gespeichert.
Zunächst werden in dem Pufferregister 35 die Daten XQ
gespeichert, wie es oben beschrieben wurde. Die Verknüpfungsschaltung 45 wird während des Zeitraums t3
geöffnet.
Die in dem Zwischenspeicher 41 gespeicherten Daten werden auf den Subtrahendoneingang A des Addierer/Subtrahierers
36 gegeben. Dez Inhalt des Pufferregisters, d.h. die Daten XQ, werden auf den Minuendeneingang B
gegeben. Das Signal am Ubertragausgang D zeigt an, ob
der eine Datenwert größer ist als der andere, und das Übertragssignal (carry) wird mit dem Takt (?3 innerhalb
des Zeitraums t3, nämlich bei t3.0U, in dem Zwischen-
" '"34Ü7Ü78
Speicher 49 gespeichert. Wenn die im Zwischenspeicher 4 gespeicherten Daten niedrigen Pegel haben, so sind die
im Pufferregister 35 gespeicherten Daten XQ größer als der im Zwischenspeicher 41 gespeicherte Schwellenwert.
Haben die im Zwischenspeicher 49 gespeicherten Daten einen hohen Pegel, so ist der Wert der Pufferregister
35 gespeicherten Daten Xq kleiner als der im Zwischenspeicher 41 gespeicherte Schwellenpegel.
Als nächstes wird im Zeitraum t. die Verknüpfungsschaltung
46 geöffnet, wie es oben beschrieben wurde, und die im Zwischenspeicher 42 gespeicherten Daten
werden auf den Subtrahendeneingang A des Addierer/ Subtrahierers 36 gegeben. Andererseits werden die
Daten Xn wie im Zeitraum t_ auf den Minuendeneingang B
gegeben. Am Übertrag-Ausgang D erscheint die Information über die Beziehung der Datenwerte, und diese
Information wird in dem Zwischenspeicher 48 mit dem Takt GL innerhalb des Zeitraums t., nämlich mit dem
Takt t..0-, zwischengespeichert. Wenn die im Zwischenspeicher 48 gespeicherten Daten niedrigen Pegel haben,
so ist der Wert der Daten XQ im Pufferregister 35
größer' als der im Zwischenspeicher 42 gespeicherte Schwellenpegel (der dem Minimumwert entspricht).
Ähnlich sind die Verhältnisse umgekehrt, wenn die gespeicherten Daten einen hohen Pegel besitzen.
Die Daten in diesem Zwischenspeicher ändern sich nicht vor dem nächsten Takt. Gleichzeitig mit dem Empfang
des Subtraktionsergebnisses wird dieses von einem einen Negator 54 und ein ODER-Glied 53 aufweisenden Kodierer
in ternäre Daten umgesetzt, die an das Schieberegister 26 gegeben werden. Haben die in den Zwischenspeichern
48 und 49 gespeicherten Daten beide einen niedrigen Pegel, so ist der Wert der im Pufferregister 35 gespeicherten
Daten Xq größer als der sich auf den Maxi-
mumwert beziehende Schwellenpegel, so daß das Ausgangssignal
des Negators 54 hohen Pegel hat und von dem ODER-Glied 53 als Datenbit ausgegeben wird, während der
niedrige Pegel des Zwischenspeichers 48 als Vorzeichenbit
ausgegeben wird. Haben beide Daten hohen Pegel, so ist der Wert der im Pufferregister 35 gespeicherten
Daten kleiner als der sich auf den Minimumwert beziehende Schwellenpegel. Folglich wird das Ausgangssignal des
Zwischenspeichers 49, d.h. das Signal mit hohem Pegel, von dem ODER-Glied 53 als Datenbit abgegeben, und das
Vorzeichenbit hat hohen Pegel. In sämtlichen anderen Situationen, d.h., wenn ein Signal kleiner ist als ein
sich auf den Maximumwert beziehender Schwellenpegel oder größer ist als ein sich auf den Minimumwert beziehender
Schwellenpegel, wird in dem Zwischenspeicher 49 ein Signal hohen Pegels gespeichert, während in dem
Zwischenspeicher 48 ein Signal mit niedrigem Pegel gespeichert wird. Der hohe Pegel des Ausgangssignals
des Zwischenspeichers 49 wird dann von dem Negator 54 invertiert, so daß an das ODER-Glied 53 ein Signal
niedrigen Pegels gelangt, und außerdem gelangt der niedrige Pegel des Ausgangssignals des Zwischenspeichers
48 an das ODER-Glied 53, so daß als Ergebnis das Ausgangssignal des ODER-Glieds 53 einen niedrigen
Pegel hat. Auf diese Weise wird ein Signal mit niedrigem Pegel an das Schieberegister 26 geliefert. Das
Ausgangssignal des Zwischenspeichers 48, welches niedrigen
Pegel hat, wird als Vorzeichendatenwert geliefert. Die ternären Daten am Ausgang sind vorzeichenbehaftete
Daten, die in der aus der oben Tabelle 1 ersichtlichen Weise mit zwei Bits kodiert sind.
Der oben beschriebene Arbeitsablauf in den Zeiträumen t3 und t4 ähnelt der Arbeitsweise beim Ermitteln der
Maximum- und Minimumwerte, wie sie oben erläutert wurde. Dieser Arbeitsablauf wird für X- und dann weiter
"" ' "'■'·■ 34Ü7Q78
für X2 ~» X799 nacheinander durchgeführt. Weiterhin
erfolgt der sequentielle Ablauf so, daß der Schwellenpegel bei jeder Rahmeneinheit geändert wird. Dies geschieht
einfach dadurch, daß der Wert im Pufferregister 35 im Zeitraum von t,- akkumuliert wird, was oben nicht
erläutert wurde. Beim Zeitraum t,- wird das Verknüpfungsglied 57 geöffnet, so daß der Inhalt des Zwischenspeichers
39 an den Eingang A des Addierer/Subtrahierers 36 gelangt, während der Inhalt des Pufferregisters
35 an den Eingang B gegeben wird. Andererseits wird ein Signal mit niedrigem Pegel an den Steueranschluß
SUB des Addierer/Subtrahierers 36 gegeben, so daß dieser im Gegensatz zu den Intervallen t-, t2, t^ und
t. als Addierer arbeitet. Demzufolge wird die Summe der den Eingängen A und B zugeführten Daten am Ausgang
C abgegeben und im Zwischenspeicher 39 gespeichert. Die Daten werden von dem Zwischenspeicher 39 mit dem
Takt tc.0o aufgenommen. Der Zwischenspeicher 39 wird
während des Zeitraums T5^t5 zurückgesetzt, d.h. in
einem Zeitraum t5 innerhalb der Rahmenperiode T5, was
den letzten Daten entspricht. Auf diese Weise werden die Daten X^ ^ Xtqq innerhalb eines Rahmens akkumuliert
und über den Leistungswert-Anschluß 11 abgegeben. Die
Bezugszeichen fQ ^J U37 in Figur 6 zeigen eine Korrelationsberechnung,
die für einen Datenwert durchgeführt wird.
Jeder Datenwert besitzt 40 Stücke, und bei dieser Ausführungsform erfolgt die Berechnung nur für TL r-J.^37·
Die Takte 0^ und 0- sind die für eine dann erfolgende
Berechnung notwendigen Takte.
Der in Figur 4 gezeigte Addierer/Subtrahierer ermittelt einen Anfangs- und beginnenden Schlußteil der Stimme
und wählt Tonhöhendaten aus.
Bei der obigen Beschreibung des Ausführungsbeispiels
wurde ausgeführt, daß die Eingangsdaten durch das Sprachsignal dargestellt werden. Es kann jedes Signal ähnlich
dem oben beschriebenen Ablauf durch Quantisierung verarbeitet werden.
Bei der oben beschriebenen Ausführungsform erfolgte eine dreistufige Quantisierung, es können jedoch auch
andere mehrstufige Quantisierungen vorgenommen werden, indem die Anzahl von Subtraktions- oder Vergleichsvorgangen
in den Zeiträumen t~ und t. erhöht wird und die
Anzahl von zugehörigen Schaltungsteilen entsprechend heraufgesetzt wird, z.B. ein ROM und ein Zwischenspeicher
hinzugefügt wird.
Das bis hierin erzielte Ergebnis, welches in Form der dreistufigen oder ternären Daten vorliegt, wird an das
Schieberegister 26 gelegt, und es erfolgt der Prozeß der Korrelation und Tonhöhen-Extraktion.
Figur 7 zeigt das Schieberegister 26 und den Selektor 27 aus Figur 2.
Das Schieberegister 26 enthält 400 Stufen 26-0 bis 26-399. Die ternären Daten aus dem Drei-Werte-Quantisierungsabschnitt
21, d.h. das Ausgangssignal des ODER-Glieds 23 und des Zwischenspeichers 48 in Figur 4,
werden an das Schieberegister 26-0 bis 26-399 gelegt. In diesen Schieberegisterstufen erfolgt eine für zwei
Bits parallele Verschiebung. Die zwei Bits umfassenden Ausgangssignale der Schieberegisterstufe 26-0 werden
auf den ersten Eingang eines Exklusiv-ODER-Glieds 28-1
und den ersten Eingang eines UND-Glieds 28-2 gelegt. Die Ausgangssignale der Schieberegisterstufen 26-0 bis
26-399 werden an die ersten Eingänge von UND-Gliedern 93-1 bis 56-1 und 93-2 bis 56-2 gegeben. Die Auswahlsignale
von der Steuereinheit 33 werden an die zweiten
Eingänge der UND-Glieder 93-1 bis 56-1 und 93-2 bis 56-2 gelegt. Die Ausgangssignale der UND-Glieder 93-1
bis 56-1 werden an ein ODER-Glied 27-1 gelegt und die Ausgangssignale der UND-Glieder 93-2 bis 56-2 werden
an ein ODER-Glied 27-2 gelegt. Die Ausgangssignale der ODER-Glieder 27-1 und 27-2 werden an die zweiten Eingänge
des Exklusiv-ODER-Glieds 28-1 und des UND-Glieds
28-2 der Multiplizierschaltung 28 gegeben. Deren Ausgangssignal gelangt an die Fenster-Verarbeitungsschaltung
29.
Die aus zwei Bits bestehenden ternären Daten von dem
Drei-Werte-Quantisierungsabschnitt 21 werden auf die Schieberegister-Stufe 26-399 gegeben und sequentiell
durch die Registerstufen 26-399 bis 26-0 geschoben.
Wenn die ternären Daten innerhalb eines Rahmens in dem Schieberregister 26-399 bis 26-0 gespeichert sind, wird
von der Steuereinheit 33 das Auswahlsignal geliefert. Wenn die UND-Glieder 56-1 und 56-2 ausgewählt werden,
nehmen die Signale auf den Signalleitungen an den zweiten Eingängen der UND-Glieder 56-1 und 56-2 hohen
Pegel an, und die zwei Bits umfassenden Ausgangssignale der SchieberegisterStufe 26-395 werden von den UND-Gliedern
56-1 und 56-2 ausgegeben. Wenn die zweiten Eingänge der anderen UND-Glieder 57-1 bis 93-1 und
57-2 bis 93-2 niedrige Signale von der Steuereinheit 33 empfangen, nehmen ihre Ausgänge niedrige Pegel an.
Die Ausgänge der UND-Glieder 56-1 bis 93-1 werden an die ODER-Glieder 27-1 gelegt, und die Ausgangssignale
der UND-Glieder 56-2 bis 93-2 liegen an dem ODER-Glied 27-2. Die Ausgänge der ODER-Glieder 27-1 und 27-2 liefern
die gleichen Daten wie die Ausgänge der UND-Glieder 56-1 und 56-2, d.h. die Ausgangssignale der
Schieberegisterstufe 26-395. Die UND-Glieder 56-1 bis 93-1, 56-2 bis 93-2 und der ODER-Glieder 27-1 und 27-2
arbeiten als Selektor zum Auswählen des Ausgangs-
signals des Schieberegisters 26, wie es oben erläutert wurde.
Wie oben bereits gesagt wurde, empfangen die jeweils ersten Eingänge der UND-Glieder 56-1 bis 93-1 und 56-2
bis 93-2 die entsprechenden Ausgangssignale der Schieberegisterstufen 26-0 bis 26-399. Die spezifizierten
Ausgangssignale dieser Registerstufen weisen Verzögerungszeiten auf, die proportional sind zu den
Stufen der jeweiligen Musiktonleitern E2 - F5. Beispielsweise
entspricht der Ausgang der Schieberegisterstufe 26-395 der Tonleiter E2, der der Stufe 26-373
der Tonleiter F2* der Ausgang 26-36 entspricht E^, und
der Ausgang der Stufe 26-35 entspricht F5. Die Ausgänge
werden sukzessive innerhalb eines Schiebetakts ausgewählt, und es werden die unten beschriebenen Multiplikationen
durchgeführt. Das Exklusiv-ODER-Glied 28-1
empfängt das Vorzeichenbit vom Ausgang der Schieberegisterstufe 26-0 und das Vorzeichenbit vom Ausgang
derjenigen Schieberregisterstufe, die durch den Selektor 27-1 ausgewählt wird. Die Funktion eines Exklusiv-ODER-Glieds
besteht darin, daß sein Ausgangssignal "0" wird, wenn seine beiden Eingangssignale "1" oder beide
"0" sind, während das Ausgangssignal "1" ist, wenn das eine Eingangssignal "1" und das andere Eingangssignal
"0" ist. Eine logische "0" entspricht dem oben erwähnten niedrigen Pegel, eine "1" entspricht dem hohen
Pegel. Was die Vorzeichenregelung bei der Multiplikation angeht, so wird bekanntlich das Produkt positiv, wenn
sowohl der Multiplikant als auch der Multiplikator negativ oder positiv ist, während das Produkt negativ
wird, wenn der Multiplikant positiv ist, während der Multiplikator negativ ist, oder umgekehrt. Daher entspricht
die Funktion des Explusiv-ODER-Glieds 28-1 exakt der Multiplikation.
Das UND-Glied 28-2 empfängt das Datenbit vom Ausgang
der Registerstufe 26-0 und das Datenbit vom Ausgang der Registerstufe, die durch den Selektor 27-2 ausgewählt
wird. Wenn man das Vorzeichenbit außer Acht läßt, so gibt es ein Datenbit. Sind beide Eingänge "1" so wird
das Ausgangssignal "1", in allen anderen Fällen wird das Ausgangssignal "0". Diese Funktion übernimmt das
UND-Glied 28-2.
10 15
Im Ergebnis arbeitet die Multiplizierschaltung 28 als Multipliziereinheit für zwei Bits (einschließlich Vorzeichen)
, wie es in der nachstehenden Tabelle 2 dargestellt ist. Das Ausgangssignal der Multiplizierschaltung
28 gelangt an die Fenster-Verarbeitungsschaltung 29 und wird mit einem Koeffizienten multipliziert, der
der ausgewählten Verzögerungszeit entspricht.
20 25 30 35
-1 | 0 | 1 | |
-1 | 1 | 0 | -1 |
0 | 0 | 0 | 0 |
1 | -1 | 0 | 1 |
Ternäre Daten
Da die oben beschriebene Multiplikation mit den um eine
spezifizierte Zeit verzögerten Daten durchgeführt wird, liefert die Multiplizierschaltung 28 als Ausgangssignal
Daten mit einem Korrelationswert. Die spezifizierte Zeitverzögerung bestimmt sich durch den Schiebetakt
und die Anzahl von Taktimpulsen. Wenn beispielsweise die Frequenz des Schiebetakts 32 768 kHz beträgt, beträgt
die Verzögerung in der Registerstufe 26-395 etwa
3*07078
12 ms, was etwa einer Frequenz von 83 Hz entspricht.
D.h., daß der Korrelationswert ein zu 83 Hz in Beziehung stehender Wert wird (Tonleiter E2). Dieser Wert
entspricht dem Fall, daß die Registerstufe 26-395 ausgewählt wird, und durch Auswählen anderer Schieberegisterstufen
kann man Korrelationswerte von entsprechenden Musiktonleitern erhalten.
Bei der Äusführungsform nach Figur 7 werden die der innerhalb eines Takts extrahierten Tonleiter entsprechenden
Schieberegisterstufen sequentiell ausgewählt, und es wird die Multiplikation durchgeführt.
Anstatt die Auswahl in der oben erläuterten Weise entsprechend der Tonleiter vorzunehmen, können die Ausgangssignale
entsprechend sämtlicher Töne der Tonleiter jeweils multiplizierend zugeführt werden, deren
Anzahl der Anzahl der zu extrahierenden Töne der Tonleiter entspricht, und das Ergebnis kann auf Aufwärts-/
Abwärts-Zähler gegeben werden, wodurch die Subtrahierschaltung 30 und der Speicher 31 aus Figur 2 gemeinsam
benutzt werden.
Figur 8 zeigt eine entsprechende Schaltung. Das Vorzeichenbit
der letzten Stufe des Schieberegisters 26, d.h. das Ausgangssignal der Registerstufe 26-0, wird
gemeinsam auf die ersten Eingänge von Exklusiv-ODER-Gliedern
94 bis 131 gegeben. Das Datenbit wird gemeinsam auf die ersten Eingänge von UND-Gliedern 132 bis
169 gegeben. Die Vorzeichensignale der Registerstufen
26-395 bis 25-46 werden selektiv an die zweiten Eingänge der Exklusiv-ODER-Glieder 94 bis 131 gegeben,
und die Datenbitsignale der Registerstufen 26-395 bis
26-46 werden in ähnlicher Weise auf die jeweils zweiten Eingänge der UND-Glieder 132 bis 169 gegeben.
Bei der Ausführungsform nach Figur 7 werden die innerhalb eines Schiebetakts ausgewählten Daten sequentiell
mit dem letzten Schiebe-Ausgangssignal in dem Multiplizierer 28 multipliziert, und bei der Ausführungsform
nach Figur 8 werden die Daten in separaten Multiplizierern multipliziert. Die Multiplikationsergebnisse
werden parallel von den UND-Gliedern 132 bis 169 und den Exklusiv-ODER-Gliedern 94 bis 131 nach Maßgabe der
jeweiligen Zeitverzögerungen abgegeben. Die Ausgangssignale werden an Takteingänge C bzw. an Aufwärts-/
Abwärts-Auswahlanschlüsse S von Aufwärts-/Abwärts-Zählern 170 bis 207 gelegt. Die Ausgangssignale der Zähler
werden auf einen Maximumwertdetektor 32' gegeben.
Bei der Ausführungsform nach Figur 8 werden sämtliche
Ausgangssignale der Registerstufen 26-1 bis 26-399 entsprechend den Tonleitern auf die Multiplizierschaltung
28 gegeben und jeweils mit den Ausgangssignalen der Registerstufe 26-0 multipliziert. Die Multiplikationsergebnisse
werden auf den Verzögerungszeiten entsprechende Aufwärts-/Abwärts-Zähler gegeben. Die Ausgangssignale
der Exklusiv-ODER-Glieder 94 bis 131 gelangen an die Aufwärts-/Abwärts-Auswahlanschlüsse S der jeweiligen
Zähler 170 bis 207. Wenn man also annimmt/ daß die Zähler hochzählen, wenn an den Anschluß S eine "1"
gelegt wird, und abwärtszählen, wenn eine "0" an den Anschluß S gelegt wird, so zählen die Zähler Multiplikationsergebnisse von +1 aufwärts und Multiplikationsergebnisse
von -1 abwärts. Wenn weiterhin die Ausgangssignale "0" sind, so werden sie nicht gezählt, da
keine Taktsignale empfangen werden. Das bedeutet also, daß die Inhalte der Aufwärts-/Abwärts-Zähler 170 bis
207 entsprechend den Schiebetaktintervallen geändert werden. Wenn die Aufwärts-/Abwärts-Zähler innerhalb
eines spezifizierten Bereichs, z.B. innerhalb eines Rahmens, gearbeitet haben, so stellen ihre Ausgangs-
Signale kumulierte oder aufsummierte Werte dar. In anderen
Worten: Die Aufwärts-/Abwärts-Zähler entsprechen
dem Addierer/Subtrahierer 30 und dem Speicherabschnitt 31 der Ausführungsform nach Figur 2 und 7. Die Ausgangssignale
der Zähler 170 bis 207 gelangen in den Maximumwertdetektor 32'. Im Gegensatz zu dem Maximumwertdetektor
19 der Ausführungsform nach Figur 7 enthält dieser Detektorabschnitt 32' die Funktion der Fenster-Verarbeitungsschaltung
29. Daher multipliziert er die Aus- ■ gangssignale der Zähler 170 bis 207 mit Koeffizienten
bezüglich der Verzögerungszeiten oder mit Fensterwerten, und er ermittelt den Maximumwert der Ergebnisse.
Obschon bei den Ausführungsformen nach den Figuren 7 und 8 das Schieberegister 26 verwendet wird, welches die
ternären Daten des Vergleichers 70 speichert und verschiebt, um die Daten x. und x(j + f.), die um ^.
bezüglich vorbestimmter Bits verzögert sind, zu liefern, kann das Schieberegister beispielsweise durch einen
ram (Schreib-ZLese-Speicher) ersetzt werden. Hierbei
werden die von dem Vergleicher 20 gelieferten ternären Daten sukzessive in einem Umfang von 400 Einheiten pro
Rahmen eingeschrieben, und beim Auslesen der Daten x. und x(j + Ti.) werden Adressen A. und A(j + "C.), unter
denen die Daten gespeichert sind, zugewiesen, wodurch dieselben Ausgangsdaten erhalten werden, wie bei Verwendung
des Schieberegisters. Grundsätzlich ist also die Verwendung eines Schieberegisters nicht unbedingt
erforderlich, sondern es kann jede Schaltungsanordnung gewählt werden, die in der Lage ist, die Daten x. und
x(j + ^1) zu liefern.
Figur 9 zeigt eine Schaltungsskizze des Multiplizierers 28, der Fenster-Verarbeitungsschaltung 29, des Addierers/Subtrahierers
30, des Speicherabschnitts 31 und des Maximumwertdetektors 32. Die Ausgangsdaten des
Schieberegisters 36 und des Selektors 27 werden auf den
Multiplizierer 28 gegeben. Der Multiplizierer 28 ist der gleiche wie der in Figur 7 gezeigte Multiplizierer,
und er besitzt das Exklusiv-ODER-Glied 28-1 und das UND-Glied 28-2. Das Vorzeichenbit der Ausgangsdaten
wird auf das Exklusiv-ODER-Glied 28-1 gegeben, und das Datenbit wird auf das UND-Glied 28-2 gegeben.
Das Ausgangssignal des Exklusiv-ODER-Glieds 28-1 wird
über einen Zwischenspeicher 207 und ein ODER-Glied 209 auf den Addier-/Subtrahier-Steuereingang des Addierer/
Subtrahierers 218 gegeben. Das Ausgangssignal des UND-Glieds 28-2 wird über einen Zwischenspeicher 210 auf
den Steuereingang einer Gruppe von Verknüpfungsgliedern 211 gegeben. Das Signal zum Bestimmen des Fensterwerts
der Steuereinheit 217 wird an einen Festspeicher ROM 212 gegeben, und dessen Ausgangssignal wird über eine
Gruppe von Gatterschaltungen an den ersten Eingang eines Selektors 213 gelegt. Das Ausgangssignal des
Selektors 213 wird an den ersten Eingang A des Addierer/Subtrahierers
218 gelegt. Das Ausgangssignal C des Addierer/Subtrahierers 218 gelangt an Zwischenspeicher
215 und 216 sowie an einen Schreib-/Lese-Speicher (RAM). Das Ausgangssignal des Zwischenspeichers 215 wird auf
den zweiten Eingang des Selektors 215 gegeben, und das Ausgangssignal des Zwischenspeichers 216 wird an den
zweiten Eingang B des Addierer/Subtrahierers 218 gegeben. Das Ausgangssignal eines Adreßzählers 220 wird
an den Eingang des RAM 219 gegeben und über einen Zwischenspeicher 221 an den Tonleiterkode-Anschluß 34
gelegt. Der Übertrag-Ausgang D des Addierer/Subtrahierers 218 ist an die Steuereinheit 217 angeschlossen.
Ein Größen-Vergleichssignal von der Steuereinheit 217 wird an den Selektor 213 und an das ODER-Glied 209
gegeben. Ein Zwischenspeicher- oder Haltesignal (LATCH) wird an die Zwischenspeicher 215, 216 und 221 gegeben,
ein Zähltakt gelangt an den Adreßzähler 220, und an den
RAM 219 wird ein Lese/Schreib-Signal gegeben. Das Datenbit vom Schieberegister 26 gelangt an einen Freigabeanschluß
eines Zählers 222. An den Zähleingang des Zählers 222 gelangt ein Taktsignal (Jx, und an den
Rücksetzeingang des Zählers wird ein Rahmentaktsignal
0f gegeben. Der Multiplizierer 28 empfängt das letzte Schiebe-Ausgangssignal des Registers 26 und die von dem
Selektor 27 ausgewählten verschobenen Daten.
Wie oben beschrieben wurde, enthält der Multiplizierer 28 das Exklusiv-ODER-Glied 28-1 und das UND-Glied 28-2,
die das Vorzeichenbit bzw. das Datenbit empfangen. Die Logik des Exklusiv-ODER-Glieds 28-1 stimmt mit der
Vorzeichenregel für die Multiplikation von Daten unterschiedlicher Vorzeichen überein. Die Logik des
UND-Glieds 28-2 stimmt überein mit der Logik einer Multiplikation von aus einem Bit bestehenden Daten
ohne Vorzeichen. Somit wird die Multiplikation ternärer Daten mit Hilfe des Exklusiv-ODER-Glieds 28-1
und des UND-Glieds 28-2 durchgeführt. Das Ergebnis wird jeweils in den Zwischenspeichern 208 und 210 gespeichert.
Die Zwischenspeicheranordnung speichert ein Produkt, so daß sich dieses Produkt nicht während
der nachfolgenden Fenster-Verarbeitung ändert, und sie speichert konstante Daten, bis die nachfolgenden
Produktdaten eingegeben werden.
Der ROM 212 speichert Fensterwerte. Der Fensterwert, der dem von dem Multiplizierer 28 multiplizierten
Korrelationswert entspricht, wird von der Steuereinheit 217 ausgewählt und von dem ROM 212 ausgegeben.
Im allgemeinen bezieht sich ein in bezug auf eine Zeitverzögerung erhaltener Korrelationswert auf die
Leistung einer Frequenz, die einer der Verzögerungszeit entsprechenden Zeitspanne entspricht. Wenn daher
ein Signal in größerem Umfang Oberwellen enthält, so
werden die Korrelationswerte der Oberwellen genauso groß oder größer wie bzw. als der Wert der Grundwelle.
Da die Korrelationswelle erfindungsgemäß für mehrere Verzögerungszeiten erhalten werden, können die Oberwellen
fälschlicherweise in einem solchen Fall als die Grundwelle angesehen werden. Um diesen Nachteil zu
vermeiden, wird der Korrelationswert mit dem Fensterwert multipliziert. Der Fensterwert ist beispielsweise
umso größer, desto länger die Verzögerungszeit (desto geringer die Frequenz) ist. Der von dem ROM 212 ausgegebene
Fensterwert gelangt an die entsprechende Gatterschaltung 211, die von den Ausgangsdaten des
UND-Glieds 28-2 "ein" oder "aus" geschaltet wird.
Wenn das Ausgangssignal des UND-Glieds 28-2 hohen Pegel hat, wird der Fensterwert an den ersten Eingang
des Selektors 213 gegeben, um den Wert zu addieren oder zu subtrahieren, und wenn das Ausgangssignal
niedrigen Pegel hat, so gelangen an den ersten Eingang Daten mit dem Wert Null.
Zu dieser Zeit wird von der Steuereinheit 217 an den Steueranschluß des Selektors 213 und an das ODER-Glied
209 ein Signal mit niedrigem Pegel gegeben. Demzufolge legt der Selektor 213 das Ausgangssignal der Gatterschaltung
211, d.h. den Fensterwert, an den ersten Eingang A des Addierer/Subtrahierers 218. Weiterhin
legt das ODER-Glied 209 den Vorzeichen-Datenwert von dem Multiplizierer 28 an den Additions-ZSubtraktions-Steueranschluß
S des Addierer/Subtrahierers 218. In diesem Zustand, in welchem der Selektor 213 das Ausgangssignal
der Gatterschaltung 211 auswählt und der Steueranschluß S des Addierer/Subtrahierers 218 die
Vorzeichendaten empfängt, werden der Fensterwert und der am Eingang B des Addierer/Subtrahierers 218 anstehende
Wert addiert, wenn der ternäre Datenwert +1
ist, und der Fensterwert wird von dem Wert am Eingang B subtrahiert, wenn der ternäre Datenwert -1 ist. Ist
andererseits das Datenbit Null, d.h., ist der Wert der ternären Daten Null, so wird von dem entsprechenden
Gatter 213 der Wert Null geliefert, so daß der Ausgang C des Addierer/Subtrahierers 218 denjenigen Wert annimmt,
der an seinem Eingang B ansteht. D.h.: Die ternären Daten (das Multiplikationsergebnis) und der
Fensterwert werden multipliziert, und dann in dem Addierer/Subtrahierer 218 addiert. Zu diesem Zeitpunkt
werden die durch den Adreßzähler 220 bestimmten Daten des RAM 219 über den Zwischenspeicher 216 an den Eingang
B des Addierer/Subtrahierers 218 gegeben. Da es
sich bei diesen Daten um die bis dahin aufgelaufenen Eingabedaten handelt, also um die Ergebnisse der Multiplikation
von ternären Daten und Fensterdaten, wird das Ausgangssignal des Addierer/Subtrahierers 218 ein
kumuliertes oder Summenergebnis, auf das das neue Produkt addiert ist. Das Ergebnis wird in dem Zwischenspeicher
214 und außerdem unter derjenigen Adresse des RAM 219 gespeichert, auf die der Adreßzähler
220 zeigt, und die die gleiche Adresse ist wie diejenige vor der Addition des neuen Produkts auf das
Multxplikationsergebnis.
Das Datenbit vom Ausgang des Schieberegisters 26 wird
auf den Freigabeeingang des Zählers 222 gegeben, und der Takt 0 wird jedesmal dann an seinen Zähleingang
gegeben, wenn die Daten verschoben werden. Wenn daher der Datenwert +1 oder -1 ist, zählt der Zähler 222
nach oben. Andererseits wird dar Zähler 222 von dem Rahmentakt {ff gelöscht. Demzufolge ist der Zählerstand
des Zählers 222 äquivalent zur Leistung der dreistufig quantisierten Daten während eines Rahmens. Das Ausgangssignal
RQ des Zählers 222 wird als Datenwert zur Erzeugung eines Flags verwendet, welches das Vorhandensein
-46-
oder das Nicht-Vorhandensein eines Stiinnisignals anzeigt.
oder das Nicht-Vorhandensein eines Stiinnisignals anzeigt.
Im folgenden soll der oben skizzierte Ablauf unter Bezugnahme auf die in Figur 6 dargestellte Datenübersieht
innerhalb eines Rahmens erläutert werden. Die Korrelationswerte bei dieser Ausführungsform der Erfindung
liegen rahmenweise vor. Ein Rahmen besteht aus 800 Daten XQ - X79Q/ und die Korrelationswerte werden
in dem vorderen Teil X0 - X.». (Zeitraum T1) berechnet.
vor dem Zeitraum T1 oder in einem Zeitraum T5 des
vorausgehenden Rahmens wird der Inhalt des RAM 219 durch eine hier nicht dargestellte Schaltung gelöscht.
Weiterhin werden die Daten x(0 + T^0) - x(0 + Tu37) der
spezifizierten Verzögerungszeiten beim Datenblock Xn
!5 sukzessive von dem Multiplizierer 28 multipliziert.
Weiterhin werden die jeweiligen Fensterwerte, die den
Multiplikationen, d.h. den Verzögerungszeiten entsprechen, nacheinander von dem ROM 212 abgegeben. Zu
dieser Zeit werden die den Verzögerungszeiten entsprechenden
Inhalte des RAM 219 sukzessive von dem Adreßzähler 220 ausgewählt. Die zwei Arten von Daten werden
in dem Addierer/Subtrahierer 218 in der oben erläuterten Weise berechnet, und die Berechnungsergebnisse
werden schließlich in dem RAM 219 abgespeichert. Der Adreßzähler 220 kann Zählerstände 0 bis 37 entsprechend
ΐ0 - T37 annehmen. Hiervon macht die Schaltung bei den
Daten XQ und dann weiter bei jeweils den Daten X1 - X3Q
Gebrauch. D.h. also: Der Adreßzähler 220 wiederholt die Zählung von 0 bis 37 innerhalb eines Rahmens 400-mal.
Auf diese Weise werden die Verzögerungsdaten X(J+ f0) - x(j + t37) der jeweiligen Daten XQ - X399
multipliziert, und die Ergebnisse werden weiter mit den Fensterwerten multipliziert und anschließend kumuliert.
Demzufolge werden kumulierte Ergebnisse, die den spezifizierten Verzögerungszeiten TfQ - ^37/ also den in der
obigen Gleichung (2) angegebenen Korrelationswerten
3'4 07Ό78
R1 CC), d.h. die der Fenster-Verarbeitung unterworfenen
Korrelationswerte, als Inhalte der jeweiligen Adressen des RAM 219 gespeichert.
Bei dem oben beschriebenen Ablauf greift die Steuereinheit 217 auf die Adressen des die Fensterwerte
speichernden ROM 212 zu. Da jedoch die Adresse dem Zählerstand des Adreßzählers 220 entspricht, wird ein
ähnlicher Effekt erreicht, wenn die Zählerstände an den ROM 212 gegeben werden. Außerdem werden solche
Vorgänge wie die Speichervorgänge der Zwischenspeicher 215 und 216 sowie des RAM 219 synchron mit Taktimpulszügen
0.. und 0 gemäß Figur 6 gesteuert.
Die in Figur 9 gezeigte Schaltungsanordnung besitzt außerdem die Funtkion, den Maximumwert der den jeweiligen
Verzögerungszeiten entsprechenden Korrelationswerten aufzufinden. Dies soll im folgenden näher erläutert
werden.
Zuerst werden die Zwischenspeicher 215 und 216 in einem Zeitabschnitt T, gelöscht. Da die den jeweiligen Verzögeruhgszeiten
entsprechenden, in dem Zeitraum T1 erhaltenen Korrelationswerte gemäß Figur 6 in dem
RAM 219 abgespeichert wurden, wird der Korrelationswert
entsprechend Tq durch den Adreßzähler 220 adressiert
und in dem Zwischenspeicher 216 gespeichert.
Da hierbei der Auswahlanschluß des Selektors 213 das Signal hohen Pegels empfängt, wählt der Selektor
den Ausgang des Zwischenspeichers 215 aus. Da weiterhin ein Eingang des ODER-Glieds 209 den hohen Pegel des
Auswahlsignals empfängt, wird sein Ausgangssignal hoch. D.h.: Der Additions/Subtraktions-Steueranschluß S des
Addierer/Subtrahierers 218 empfängt einen hohen Signalpegel, so daß der Addierer/Subtrahierer eine Subtraktion
3407Ü7Ö
ausführt.
Wie oben erwähnt wurde, speichert der Zwischenspeicher
216 zuerst die Daten entsprechend <Q. Daher subtrahiert
der Addierer/Subtrahierer 218 den Wert von dem im Zwischenspeicher 215 gespeicherten Datenwert. Zu diesem
Zeitpunkt wurde der Zwischenspeicher 215 kurz vorher zurückgesetzt. Daher ist in ihm der Wert Null gespeichert,
und am Übertrag-Ausgang D erscheint ein Ubertragssignal. Nach Empfang des Ubertragssignals erfolgt
die Steuerung durch die Steuereinheit 217 so, daß der Inhalt der durch den Adreßzähler 215 festgelegten
Adresse des RAM 219, d.h. der Korrelationswert entsprechend 1?_, in dem Zwischenspeicher 215 gespeichert
wird. Da zu Beginn in dem Zwischenspeicher 215 der Datenwert Null gespeichert war, wird der Korrelationswert entsprechend T^ ohne Fehler in dem Zwischenspeicher
215 gespeichert. Bei dieser Gelegenheit wird außerdem der Zählerstand des AdreßZählers 220 in dem
Zwischenspeicher 221 gespeichert. Anschliessend wird der Adreßzähler 220 durch den nachfolgenden Taktimpuls
0. erhöht, um auf die nächste Adresse des RAM 219 zuzugreifen,
wo der Korrelationswert von <.. gespeichert
ist. Auf diese Weise liefert der RAM 219 den Korrelationswert von i.*, und der Zwischenspeicher 216 speichert
diese Daten nach Maßgabe des von dem Steuerteil
217 gelieferten Takts. Ähnlich dem oben beschriebenen
Ablauf wird der Inhalt des Zwischenspeichers 216 von dem des Zwischenspeichers 215 durch den Addierer/
Subtrahierer 218 subtrahiert. Wenn dabei das Ergebnis negativ ist, d.h., wenn am Übertrag-Ausgang Ό der
Schaltung 218 ein Übertragssignal geliefert wird, ist der Inhalt im Zwischenspeicher 216 größer als der
Inhalt des Zwischenspeichers 215. Daher wird der Inhalt des Zwischenspeichers 216 oder der vom RAM 219
gelieferte Datenwert in dem Zwischenspeicher 215 ge-
3Τ07Ό78
speichert, und der Wert des Adreßzählers 220 wird anschliessend
im Zwischenspeicher 221 gespeichert. Diese Speicheroperationen werden nach Maßgabe des von dem
Steuerteil 217 gelieferten Zwischenspeichersignals ausgeführt. Wenn hingegen der Inhalt des Zwischenspeichers
216 kleiner ist als der des Zwischenspeichers 215, erscheint am Übertrag-Ausgang D kein Ubertragssignal.
Daher wird von dem Steuersignal 217 kein Zwischenspeichersignal geliefert, und der Inhalt des
Zwischenspeichers 215 bleibt unverändert.
Obschon das Ergebnis von dem Addierer/Subtrahierer geliefert wird, gelangen die Daten lediglich in den
Zwischenspeicher 214 und werden von diesem nicht ausgegeben. Da die Vorgänge sukzessive für XQ - T37
durchgeführt werden, ist schließlich in dem Zwischenspeicher 215 der Maximumwert der den Verzögerungszeiten
entsprechenden Korrelationswerte gespeichert. Auf diese Weise wird der Maximumwert der Inhalte des RAM 219
festgestellt. Gleichzeitig werden die in den Zwischenspeicher 215 eingegebenen Zwischenspeicherimpulse auch
auf den Zwischenspeicher 221 gegeben, wenn die aufeinanderfolgenden Operationen für T^0 "" T^t stattfinden.
Schließlich ist diejenige Adresse des RAM 219 in dem Zwischenspeicher 221 gespeichert, die deji im Zwischenspeicher
215 befindlichen Maximumwert entspricht. Da der Adreßwert dem Korrelationswert entspricht, der den
maximalen Wert hat, wird er von dem Tonleiterkode-Anschluß 34 als Kodedatenwert für den maximalen Korrelationswert
abgegeben. Die Ausgabe der Kodedaten erfolgt in dem Zeitraum T4.
Die Fenster-Verarbeitung und der KumulationsVorgang
sowie die Feststellung des Maximalwerts der kumulierten Ergebnisse werden rahmenweise sukzessive durchgeführt.
Demzufolge wird das Ergebnis der Tonhöhen-
34O7Ü7Ö
extraktion des Stimmsignals während eines Rahmens, d.h. während der Zeiträume T. - T_ kodiert und als Ausgangssignal
abgegeben. Dieses Ausgangssignal ist das Ausgangssignal der Tonhöhenextrahiereinheit 3, und es
wird in den Zwischenspeicher 4 der nachfolgenden Stufe gespeichert und weiterverarbeitet.
Figur 10 zeigt eine Schaltungsskizze der in Figur 1 gezeigten Fehler-Eliminiereinheit 7. Diese Schaltung
soll im folgenden näher beschrieben werden.
Das Ausgangssignal der Speichereinheit 6 wird an einen
Zwischenspeicher 224, ein Gatter 225, einen B-Eingang eines Vergleichers 226 und an einen Α-Eingang eines
Vergleichers 227 gelegt. Der Ausgang des Zwischenspeichers 224 ist an einen Addierer/Subtrahierer 228
und an ein Gatter 229 angeschlossen. Der Ausgang des Addierer/Subtrahierers 228 ist an einen Α-Eingang des
Vergleichers 226 und an einen B-Eingang des Vergleichers 227 gelegt, und zwar über einen Zwischenspeicher 230
bzw. 231. Die Vergleichsergebnisse aus.den Vergleichern 226 und 227 werden auf ein ODER-Glied 232 gegeben,
dessen Ausgangssignal an den ersten Eingang eines UND-Glieds 233 gelegt wird. Dessen Ausgangssignal gelangt
an einen Zwischenspeicher 234, von dem das Ausgangssignal
an einen Zwischenspeicher 235 und ein Gatter 229 und außerdem an das Gatter 224 gelangt. Das Ausgangssignal
des Zwischenspeichers 235 wird über einen Negator 237 an den zweiten Eingang des UND-Glieds 233
gelegt. Der von dem Prozessor 5 (Figur 1) erzeugte konstante Datenwert C wird an einen der Eingänge des
Addierer/Subtrahierers 228 gelegt. Außerdem wird das Steuersignal SUB über einen Inverter 239 an den ersten
Eingang eines UND-Glieds 240, an den ersten Eingang eines UND-Glieds 238 und an den Addierer/Subtrahierer
228 gelegt. Taktsignale (?L2 und (? ,. werden an die zwei-
·*" * "34O7Ü78
ten Eingänge der UND-Glieder 238 bzw. 240 gelegt. Deren Ausgangssignale werden auf Zwischenspeicher 231 bzw.
233 gegeben. Die Ausgangssignale der Gatter 229 und werden gemeinsam auf eine Schaltung der nachfolgenden
Stufe, nämlich der Mittelwert-Einheit 8 gegeben (Figur 1). An die Zwischenspeicher 223, 234 und 235
werden Taktsignale 0IN/ Ct3 und j? - gelegt. An den
Zwischenspeicher 224 wird ein Taktsignal 0T4 gelegt.
im folgenden soll unter Bezugnahme auf den in Figur dargestellten zeitlichen Ablauf die Arbeitsweise der
Fehler-Eliminiereinheit 7 erläutert werden.
Es sei angenommen, es werde der (n - 1)-te Rahmen verarbeitet. Zuerst werden die Tonhöhendaten P Λ des
η—ί
(n - 1)-ten Rahmens aus der Speichereinheit 6 (Figur 1)
mit der Vorderflanke des Taktsignals 0TN in dem
Zwischenspeicher 223 gespeichert und mit der Rückflanke des Taktsignals j?IN an den B-Eingang des Vergleichers
226 und an; den Α-Eingang des Vergleichers gegeben. Andererseits wurden an den Α-Eingang des Vergleichers
226 und an den B-Eingang des Vergleichers 227 bereits Datenwerte P o + C bzw. P o - C gelegt,
die erhalten wurden durch Addieren bzw. Subtrahieren der Konstanten C auf bzw. von den TonhöLendaten P o
des unmittelbar vorausgehenden Rahmens (n - 2). Der Vergleicher 226 prüft die Bedingung P ~ + C <
p n_i'
und der Vergleicher 227 prüft die Bedingung
P„_o - C
>P ... Sind diese Bedingungen erfüllt, lien
δ η— ι
fern die Vergleicher 226 und 227 Ausgangssignale mit
niedrigem Pegel. Liegt eine der beiden Bedingungen vor, d.h., wenn P 1 außerhalb des Bereichs von
η— ι
Pn_2 ± C liegt, so liefert einer der Vergleicher 226
und 227 ein Ausgangssignal mit hohem Pegel. Als Ergebnis
wird das Ausgangssignal des ODER-Glieds 232 hoch.
Dann wird über das UND-Glied 233 ein Signal mit hohem
3'4Ό7ϋ7δ
Pegel geliefert. Im Anfangszustand ist der Zwischenspeicher 235 zurückgesetzt, so daß sein Ausgangssignal
niedrigen Pegel hat. Daher empfängt der Negator 237 einen niedrigen Pegel mit der Folge, daß sein Ausgangssignal
einen hohen Pegel annimmt. Der zweite Eingang des UND-Glieds 233 empfängt also einen hohen Pegel, so
daß das UND-Glied öffnet und demzufolge das Ausgangssignal des ODER-Glieds 232 an den Zwischenspeicher
gibt. Wenn P 1 innerhalb des Bereichs von P o + C
η— ι n—L. —
liegt, nimmt das Ausgangssignal des UND-Glieds 233 einen niedrigen Pegel an. Anschliessend wird das Signal
des UND-Glieds 233 mit der Vorderflanke des Takts 0 3 an den Zwischenspeicher 234 gegeben, und dessen
Ausgangssignal erscheint mit der Rückflanke des Taktsignals 0L3·
Wenn P , in dem Bereich Pn_2 ± c liegt, nimmt das
Ausgangssignal des Zwischenspeichers 234 einen niedrigen Pegel an, um das Gatter 229 zu sperren. Da der
Negator 236 außerdem den niedrigen Pegel empfängt, wird sein Ausgangssignal hoch und öffnet das Gatter
225. Die eingegebenen Tonhöhendaten des Rahmens (n - 1) werden unverändert über das Gatter 225 mit der Vorderflanke
des nächsten Taktsignals 0OUT in den Zwischenspeicher
241 eingegeben, und sie werden mit der Rückflanke dieses Taktsignals 0ουτ an die nachfolgende
Stufe, d.h. die Mittelwerteinheit 8 gegeben. Der oben geschilderte Fall bedeutet, daß die Tonhöhendaten
P _2 des Rahmens (n - 1) innerhalb eines spezifizierten
Bereichs (+_ C) in bezug auf die unmittelbar vorausgehenden
Tonhöhendaten P _o liegen und als korrekte Tonhöhendaten eingestuft wurden.
Wenn P Λ außerhalb des Bereichs P _ + C, nimmt das
η—ι η—ζ —
Ausgangssignal des Zwischenspeichers 234 einen hohen Pegel an und sperrt das Gatter 225, während es das
34Ό7Ό78
Gatter 229 öffnet. Zuvor wurden vom Zwischenspeicher die Tonhöhendaten Pn_2 des unmittelbar vorhergehenden
Rahmens geliefert, und diese Daten werden über das Gatter 229 bei der Vorder flanke des Takts ί?ΟττΤ an den
Zwischenspeicher 241 geliefert, und bei der Rückflanke des Takts 0OUT werden diese Daten an die nachfolgende
Stufe, d.h. die Mittelwerteinheit 8. Dies ist der Fall, bei dem die Tonhöhendaten P _.. des Rahmens (n - 1)
stark von den unmittelbar vorausgehenden Tonhöhendaten
P ~ abweichen. In diesem Fall werden die Daten P Λ
n-z n-1
als übermässig abweichende Tonhöhendaten vernachlässigt,
und statt ihrer werden die Tonhöhendaten P «des
τι—Ζ
unmittelbar vorausgehenden Rahmens abgegeben.
1^ Anschliessend wird das Ausgangssignal des Zwischenspeichers
234 bei der Vorderflanke des Taktsignals 0... an den Zwischenspeicher 235 gegeben, und dessen Ausgangssignal
wird bei der Rückflanke des Taktsignals über den Negator 237 an den Eingang des UND-Glieds
gelegt. Der Zwischenspeicher 235 dient zum Speichern, wenn die Tonhöhendaten P _.. des Rahmens (n - 1) einen
normalen Wert haben, und der niedrige Pegel des Inhalts dieser Zwischenspeicherschaltung kennzeichnet
die Normalität, während ein hoher Pegel die Abnormalitat kennzeichnet. Das Ausgangssignal P _.. des Zwischenspeichers
223 gelangt bei der Vorderflanke desselben Taktimpulses 0L/, in den Zwischenspeicher 224, und dessen
Ausgangssignal gelangt bei der Rückflanke dieses Takts an den Addierer/Subtrahierer 228. Da der andere
Eingang des Addierer/Subtrahierers 228 den konstanten Wert C empfängt, erfolgt zuerst eine Addition (das
Steuersignal SUB hat niedrigen Pegel).
Als nächstes gelangt das Ergebnis der Addition P . + C
bei der Vorder flanke des Takt signals j? .. in den Zwischenspeicher
230, und dessen Ausgangssignal erscheint
3407Ü78
-54-bei der Rückflanke des Taktsignals.
Anschliessend nimmt das Steuersignal SUB des Addierer/ Subtrahierers 228 einen hohen Pegel an, und der konstante
Wert C wird von dem Ausgangssignal P _.. des Zwischenspeichers 224 subtrahiert. Die Differenz
P «. - C gelangt bei der Vorderflanke des Takts 0_ ~
n-1 L2
in den Zwischenspeicher 231 und erscheint bei der Rückflanke des Taktsignals an dessen Ausgang.
Dann ist der Arbeitsvorgang für einen Rahmen beendet, und die Steuerung geht zu dem η-ten Rahmen über. Bei
dem Rahmen η werden die Tonhöhendaten P beim Takt
0 empfangen. Die Daten werden hinsichtlich ihrer Größe mit dem Wert Pn-1 i C, der zuvor für den Rahmen
(n-1) berechnet wurde, verglichen. Auf der Grundlage des Vergleichsergebnisses werden die Tonhöhendaten
P. oder aber P geliefert.
Entsprechend der bisher erfolgten Beschreibung werden solche Tonhöhendaten, die sich von den Tonhöhendaten
des vorausgehenden Rahmens sehr stark unterscheiden, als ungewöhnliche Daten eliminiert, und es werden die
Tonhöhendaten des vorausgehenden Rahmens stellvertretend verwendet.
Wenn sich allerdings die Tonhöhen plötzlich und kontinuierlich ändert, so ist die Fehler-Eliminierung
ziemlich unpassend. Wenn demnach eine Fehler-Eliminierung in dem vorausgehenden Rahmen stattgefunden hat,
so wird sie nicht in dem laufenden Rahmen durchgeführt. Wenn die Fehler-Eliminierung in dem vorausgehenden
Rahmen durchgeführt wurde, hat das Ausgangssignal des Zwischenspeichers 235 einen hohen Pegel, so daß der
eine Eingang des UND-Glieds 233, der dem Negator nachgeschaltet ist, einen niedrigen Pegel empfängt.
34O7Ü78
Demzufolge wird das Ausgangssignal des Zwischenspeichers 234 zu einem niedrigen Pegel, und es wird nur das Gatter
225 ausgewählt, mit der Folge, daß keine Fehler-Eliminierung durchgeführt wird. D.h.: Für den Fall,
daß die Tonhöhendaten sich für zwei oder mehr Rahmen abrupt ändern, wird diese Änderung nicht als ein Fehler
angesehen, und es wird keine Fehler-Eliminierung durchgeführt
.
Figur 12 ist eine grafische Darstellung, die Beispiele für eingegebene Tonhöhendaten sowie Beispiele von
Ausgabedaten der Fehler-Eliminiereinheit 7 (Ausgangssignale des Zwischenspeichers 241) sowie Inhalte des
Zwischenspeichers 235 entsprechend den Eingangsdaten · zeigt. Die Tonhöhendaten P, des vierten Rahmens haben
einen Wert, der größer ist als P3 1 + C, wobei P3 1 die
Ausgabe-Tonhöhendaten des dritten Rahmens bedeuten. Eine Fehler-Eliminierung wurde für den dritten Rahmen
nicht durchgeführt (der Inhalt des Zwischenspeichers 235 beim dritten Rahmen ist "0"). Daher werden die
Eingabedaten P. als abnormal angesehen, und die Ausgabedaten
P.' des vierten Rahmens nehmen denselben
Wert an, wie die Daten P3 1 des dritten Rahmens.
In ähnlicher Weise werden die Tonhöhendacen Pg des
achten Rahmens als abnormal eingestuft, und die Ausgabedaten Pg' nehmen denselben Wert an wie die Daten
P7 1 des siebten Rahmens. Die Tonhöhendaten P9 des
neunten Rahmens sind ebenfalls größer als Pgf +C.
wobei Pg· die Ausgabedaten des achten Rahmens darstellt.
In diesem Fall jedoch wurde die Fehler-Eliminierung des achten Rahmens durchgeführt, und der Inhalt
des Zwischenspeichers 235 ist "1" geworden. Daher werden die Eingabedaten Pg nicht als abnormal eingestuft,
und die Daten werden unverändert als Ausgabedaten Pg'
abgegeben. Weiterhin werden die Eingabedaten P10 des
3407Ü7S
zehnten Rahmens kleiner als P9 1 - C in bezug auf die
Ausgabedaten P_' des vorausgehenden, neunten Rahmens.
Daher werden die Eingabedaten P10 wiederum als abnormal
eingestuft und das Ausgangssignal P1n 1 ist genauso
groß wie der Datenwert Pg'. Anschliessend ist der Datenwert P11 des elften Rahmens kleiner als P10' - C
in bezug auf den Datenwert P10 1 des vorausgehenden,
zehnten Rahmens. Da jedoch der Inhalt des Zwischenspeichers 235 "1" beträgt, erfolgt keine Fehler-Eliminierung,
und die Daten P11 werden unverändert als Daten
P1 ' abgegeben. Auf diese Weise wird durch die erfindungsgemäß
ausgebildete Fehler-Eliminiereinheit Fehler von nur einem Rahmen richtig eliminiert, und wenn die
Änderung für mindestens zwei Rahmen anhält, so wird dies nicht als Fehler eingestuft, und es erfolgt lediglich
eine Verzögerung um einen Rahmen, wie aus Figur 12 hervorgeht.
Figur 13 zeigt ein Beispiel für den Fall, daß die Tonhöhendaten sich abrupt von einem niedrigen Wert auf
einen hohen Wert ändern. Der Ablauf ist der gleiche wie der anhand der Figur 12 geschilderte Ablauf. Ein
stufenförmiger Abschnitt erscheint im Ausgangssignal in Form von zwei Stufen. Die Ausgabedaten folgen den
Eingabedaten mit lediglich einer Verzögerung von einem Rahmen.
Wie aus der obigen Beschreibung hervorgeht, eliminiert die Fehler-Eliminiereinheit 7 einen Fehler eines Rahmens,
der hervorgerufen wird durch einen Fehler bei der Tonhöhenextraktion, und es wird in der nächsten
Stufe die richtige Tonhöhe geliefert.
Bei der obigen Ausführungsform handelt es sich bei den Tonhöhendaten um numerische Zahlen, die sequentiell
den Tonleitern zugeordnet werden. Die Erfindung ist
*"■* ' **3"4Ό7078
jedoch nicht darauf beschränkt. Die Tonhöhendaten können auch direkt der Tonhöhe entsprechen. Außerdem ist
der Bereich, in welchem die Tonhöhendaten mit denjenigen des vorausgehenden Rahmens verglichen werden,
nicht auf einen Bereich einer konstanten Größe C beschränkt. Wenn eine Änderung der Tonhöhe nach der
Erzeugung von Stimmsignalen und ein in der Tonhöhen-Extrahiereinheit 3 verursachter Fehler sich abhängig
von einer Stimme höherer Frequenz oder einer Stimme niedrigerer Frequenz unterscheiden, so kann der Wert
der konstanten Zahl C entsprechend variiert werden.
Die Daten, aus denen der Fehler mit Hilfe der Fehler-Eliminiereinheit
entfernt wurde, werden an die Mittelwerteinheit und die Tonhöhendaten-Steuereinheit gegeben
.
Figur 14 zeigt ein detailliertes Schaltungsbild der in Figur 1 in Blockform dargestellten Mittelwerteinheit,
mit der eine laufende Mittelwert- oder Durchschnittswertbildung durchgeführt wird. Im folgenden sollen die
Teile dieser Einheit näher beschrieben werden.
Das Ausgangssignal der Fehler-Eliminiereinheit 7 wird über einen Zwischenspeicher 242 auf ein Schieberegister
243 gegeben. Die Ausgangssignale des Schieberegisters 243 und eines Zwischenspeichers 244 werden auf einen
Selektor 245 gegeben. Das Ausgangssignal eines Oktalzählers
246, an den ein Takt (?_ gelegt wird, wird dem
Selektor 245 zugeführt. Dessen Ausgangssignal gelangt an den erster. Eingang eines Addierers 247, dessen Ausgangssignal
an den zweiten Eingang zurückgeführt wird, und zwar über einen Zwischenspeicher 248, dessen Ausgangssignal
außerdem einem Zwischenspeicher 249 zugeführt wird. Die oberen acht Bits des Ausgangssignals
des Zwischenspeichers 249 werden dem ersten Eingang
eines Addierers 250 zugeführt. Das neunte Bit des Zwischenspeichers
249 gelangt an einen Übertrag-Eingang des Addierers 250, dessen Ausgangssignal über einen
Zwischenspeicher 251 an den Zwischenspeicher 224 geführt wird und an einen Zähler in der nächsten Stufe
geleitet wird, nämlich an den Tonhöhendaten-Steuerabschnitt 10.
Die von Fehlern befreiten Tonhöhendaten, z.B. acht Bits umfassende Oaten, werden als die Daten innerhalb
eines Rahmens in dem Zwischenspeicher 242 gespeichert, der die Daten unter Steuerung eines Rahmentakts 0f
empfängt, damit die von Fehlern befreiten Daten rahmenweise verarbeitet werden.
15
15
Das Schieberegister 243 bewirkt eine Verschiebung von parallelen 8-Bit-Daten unter Steuerung des Rahmentaktsignals
0-. Die im Zwischenspeicher 242 gespeicherten Daten werden sukzessive bei jeder Rahmeneinheit in das
Schieberegister 243 geladen und dann verschoben. In anderen Worten: Das Schieberegister 243 speichert den
laufenden Daten vorausgehende sechs Daten.
Der Zwischenspeicher 244 ist als Zwischenspeicher-Paar
ausgebildet. Er empfängt dieselben Daten wie der Ausgang der Mittelwerteinheit 8, und diese Daten werden
in dem Zwischenspeicher-Paar gespeichert. Der Selektor 245 wählt sequentiell sechs Byts umfassende Daten, die
in dem Schieberegister 24 3 gespeichert sind, und zwei Byts umfassende Daten, die in dem Zwischenspeicher
244 gespeichert sind, und die zusammen innerhalb eines Rahmens liegen, aus und erzeugt dadurch das Ausgangssignal.
Diese Auswahl wird gesteuert durch den Zählerstand des Oktalzählers 246, der ein Taktsignal 0L
zählt, welches innerhalb eines Rahmens acht Takte besitzt.
Wenn das Ausgangssignal des Addierers 247 über den Zwischenspeicher
248 an seinen zweiten Eingang zurückgeführt wird, wird das Ausgangssignal des Zwischenspeichers
248 als ein Ausgangssignal einer Kumulierschaltung angesehen, welche die dem ersten Eingang des
Addierers 247 mit dem Takt (2L zugeführten Daten akkumuliert.
Da der Zwischenspeicher 248 durch ein am Ende jeweils eines Rahmens erzeugtes Rücksetzsignal GL·
zurückgestellt wird, wird der Akkumulierungsvorgang bei jedem Rahmen durchgeführt.
Der Inhalt des Schieberegisters 243 und der des Zwischenspeichers 244 gelangt über den Selektor 245 beim
Takt 0Q an den Addierer 247. Demzufolge entspricht
das akkumulierte Ausgangssignal der oben erwähnten Kumulierschaltung der Summe der Daten, die über sechs
Rahmen hinweg akkumuliert wurden, und dem doppelten der jeweils gerade erzeugten Daten. Es läßt sich also
folgende Gleichung aufstellen:
6
Dx = Σ Dn + I + 2-Ds,
Dx = Σ Dn + I + 2-Ds,
£=1
wobei Dn + 1 ^ Dn + 6 in dem Schieberegister 243 gespeicherte
Daten sind, Ds von dem Zwischenspeicher 251 abgegebene Daten und Dx akkumulierte Ausgangsdaten
der Kumulierschaltung sind.
Der Addierer 247 kumuliert den gewichteten Mittelwert und die sechs Daten, um einen kumulierten Wert als
neuen Mittelwert zu ermitteln. Die durch Wichtung des Mittelwerts bis dahin ermittelten Daten werden als die
Daten zum Ermitteln des neuen Mittelwerts entsprechend dem nächsten Rahmentakt erhalten, und zwar aus folgendem
Grund: Es kommt manchmal vor, daß nahe nebeneinander-
' 5 407078
liegende Töne der Tonleiter, z.B. "B" und "C" aus dem Ton "C" einer Stimme entstehen, weil z.B. ein Fehler
bei der Tonhöhenextraktion vorgekommen ist, was zu zufälligen Datenabweichungen führt. Die oben erläuterten
Maßnahme dient also zum Fixieren der benachbarten Daten.
Da die an den ersten Eingang des Addierers 247 gelangenden Daten aus acht Bits bestehen, umfaßt das oben
erwähnte kumulierte Ausgangssignal elf Bits. Der nachfolgende Zwischenspeicher 249 und der Addierer 250
berechnen den Ausgangswert D /8. Der Zwischenspeicher 249 speichert den kumulierten Ausgangswert, dessen
höherwertige acht Bits an den Eingang des Addierers 250 gelegt werden. Das neunte Bit wird an den Übertrag-Eingang
des Addierers 250 gegeben, damit die niedrxgerwertigen drei Bits der elf Bits nicht nur
abgerundet werden, sondern das neunte Bit berücksichtigt wird. Hat das neunte Bit den Wert "1", so wird
auf den den höherwertigen acht Bits entsprechenden Datenwert eine "1" addiert, um einen Mittelwert zu erhalten,
ist das neunte Bit eine "0", so wird keine "1" addiert, und die niedrxgerwertigen drei Bits werden
abgerundet, um das Ausgangssignal zu erhalten. Der Zwischenspeicher 249 und der Addierer 250 sind Schaltungselemente,
die den exakten Mittelwert liefern, sie sind überflüssig, wenn keine große Genauigkeit gefordert
wird.
Das Ausgangssignal des Addierers 250 wird in dem Zwischenspeicher 251 gespeichert. Dieser ist eine Schaltung
zum Fixieren der Daten während des nächsten Rahmens, weil sein Ausgangssignal während der nachfolgenden
Stufe und der während des Rahmens erfolgenden Kumulierung benötigt wird.
ο40 / 0 / ο
Zusammenfassend läßt sich also sagen, daß die Schaltung nach Figur 14 den Mittelwert als einen Teil der Eingabedaten
verwendet und dadurch einen Hysterese-Effekt bei der Mittelwertbildung erreicht und das unmittelbare Ansprechen
auf eine Änderung von nxedrxgerwertxgen Bits der Daten vermeidet.
Figur 15 ist ein Zeitdiagramm, das die Taktimpulszüge
beim Betrieb der Mittelwerteinheit 8 veranschaulicht.
Anhand dieses Diagramms soll die Arbeitsweise der Schaltung nach Figur 14 erläutert werden. Der Rahmentakt 0f
erzeugt einen Takt zu Beginn des ersten Rahmens, und er speichert und verschiebt Daten nach Bedarf. In
Figur 14 arbeiten die Zwischenspeicher 242 und 244 und das Schieberegister 243 unter Steuerung dieses Taktsignals.
Nach der Erzeugung des Taktsignals werden die gespeicherten Daten in den Zwischenspeichern usw. für
die Zeit eines Rahmens festgehalten. Als nächsten werden sukzessive Taktimpulse 0O erzeugt, 8-mal während
eines Rahmens. Diese Taktimpulse erhöhen den Inhalt des Oktaltzählers 246, um sukzessive die acht Eingangsdaten innerhalb eines Rahmens mit Hilfe des Selektors
245 auszuwählen. Außerdem dient der Takt (?_ für die
Kumulierung. Mit der Vorderflanke des Taktimpulses GL
wird der Inhalt des Oktalzählers 246 für die Datenauswahl erhöht. Die ausgewählten Daten werden dem Addierer
247 zugeführt. Zu diesem Zeitpunkt werden an den Addierer 247 die bis dahin empfangenen Additionsdaten
gegeben, auf die die ausgewählten Daten addiert oder kumuliert werden. Mit der Rückflanke des Taktimpulses
0O speichert der Zwischenspeicher 248 die Ergebnisdaten.
Diese Vorgänge im Rahmen des KumulierungsVorgangs werden während eines Rahmens 8-mal durchgeführt.
Wie oben beschrieben wurde, besteht die Kumulierung aus der Addition zwischen den vergangenen sechs Daten
und dem zweifachen des Mittelwerts der vorausgehenden
.:.. : '-■-5-407078
-62-
Daten. Nach der Erzeugung des achten Taktimpulses wird ein Taktsignal 0 erzeugt, und der kumulierte Wert wird
in dem Zwischenspeicher 249 festgehalten. Fast gleichzeitig mit dem Speichervorgang wird der kumulierte
Wert auf den Addierer 250 gegeben, der den Wert und den Übertrag zur Bildung des Ausgabewerts addiert. Dieser
Ausgabewert wird der Mittelwert. Diese Verarbeitung erfolgt vor dem anschliessend zu erzeugenden Taktsignal
0ΟΠΤ, und der Zwischenspeicher 251 speichert den Mittelwert
No(Dg) nach Maßgabe des Takts 0OUT und gibt den
Mittelwert ab. Der Inhalt des Zwischenspeichers 248 wird durch den Takt 0D gelöscht. Der Takt 0_ dient zur
, Ausführung der rahmenweisen Kumulierung·
Obschon die oben erläuterte Schaltung den neuen Mittelwert
durch Kumulieren der sechs Daten und des zweifachen des vorhergehenden Mittelwerts berechnet, ist
die Anzahl dieser Daten nicht auf sechs beschränkt, und das Vielfache des vorausgehenden Mittelwerts ist
auch nicht auf den doppelten Wert beschränkt. Wenn die Anzahl der Daten und das Vielfache des Mittelwerts
von dem obigen Ausführungsbeispiel abweichen, ist eine Dividierschaltung entsprechend der abweichenden Zahl
notwendig.
Obschon dies nicht im Zusammenhang mit der Mittelwert-Einheit 8 erläutert wurde, wird außerdem auch eine
Mittelwertbildung der Daten von vier Rahmen durchgeführt. Ähnlich wie der sich auf acht Rahmen beziehende
Mittelwert N0 wird der Mittelwert N, für die Daten von
ö 4
vier Rahmen der Tonhöhendaten-Steuereinheit 10 zugeführt
.
Figur 16 ist eine Schaltungsskizze der Tonhöhendaten-Steuereinheit
10 nach Figur 1. Diese Steuereinheit soll im folgenden näher beschrieben werden.
Betrachtet man die Besonderheiten der menschlichen Stimme, so zeigt sich, daß selbst dann, wenn eine bestimmte
Tonhöhe gegeben werden soll, die Stimme häufig zu Beginn der Klangbildung instabil ist. Außerdem führen,
wie oben ausgeführt wurde, die Konsonantenteile häufig zu fehlerhaften Extraktionen aufgrund unklarer
Tonhöhenverhältnisse.
Allerdings ist die Ausgabe des hysteresebehafteten laufenden Mittelwerts durch die Mittelwerteinheit 8
dahingehend wirksam, daß die Tonhöhendaten über eine durchgehende Tonleiter stabilisiert werden, jedoch ist
die Mittelwerteinheit unwirksam im Anfangsteil einer großen Änderung. Das Ausgangssignal der Fehler-Eliminiereinheit
7 kann in geeigneter Weise den Fehler der Tonhöhendaten eines Rahmens eliminieren, und kann
außerdem plötzlichen Änderungen eines Tons folgen, ist jedoch nicht imstande, unstetigen Änderungen des
Anfangsteils der Stimme zu folgen. Außerdem hat das vier Rahmen umfassende Mittelwert-Ausgangssignal der
Mittelwerteinheit 8 einen Anteil zwischen den beiden oben erwähnten Ausgangssignalen. Die von der Speichereinheit
6 gelieferten unverarbeiteten Tonhöhendaten werden in den anfänglichen ersten bis dritten Rahmen
nach Beginn der Klangbildung direkt an den Kodegenerator 11 gegeben. In dem vierten bis siebten Rahmen
werden die Tonhöhendaten über die Fehler-Eliminiereinheit 7 geliefert. In den dann anschliessenden
achten bis elften Rahmen werden die vier Rahmen umfassenden Mittelwerte von der Mittelwert-Einheit 8
geliefert. Im zwölften Rahmen und in den daran anschliessenden Rahmen wird von der Einheit 8 der
hysteresebehaftete, aus acht Rahmen gebildete Mittelwert geliefert. Auf diese Weise werden, wenn der Beginn
der Klangbildung übergeht zu dem stetigen Abschnitt, die richtig verarbeiteten Tonhöhendaten selektiv an den
-64-Kodegenerator 11 gegeben.
Wenn z.B. durch die menschliche Stimme die Klänge "do-so" gebildet werden, so existiert beim Übergang
vom stabilen Teil "do" auf "so" ein Konsonant im Anfangsteil von "so"/ und somit werden die Tonhöhendaten
manchmal teilweise unterbrochen. Im Idelfall sollten jedoch von den Lauten "do-so" die Teile "do" und "so"
ohne Unterbrechung glatt ineinander übergehen. Wenn daher der Konsonantenteil erfaßt wird, werden die unmittelbar
diesem Konsonantenteil vorausgehenden Tonhöhendaten kontinuierlich für den erfaßten Teil und
die diesem vorausgehenden Vokalteile der Rahmen 1 bis kontinuierlich geliefert. In den anschliessenden Rahmen
!5 4 bis 7 könnten die Tonhöhen in einem Konsonantenteil
unterbrochen sein, so daß eine starke Änderung der Tonhöhen eintreten würde, und daher werden die Tonhöhendaten
von den jeweiligen Verarbeitungsabschnitten selektiv an den Kodegenerator 11 gegeben, ähnlich wie
bei der vorausgehenden Verarbeitung des Anfangsteils
der Klangbildung.
Um den" oben geschilderten Vorgang mit Hilfe der Tonhöhendaten-Steuereinheit
10 zu realisieren, werden in der in Figur 1 dargestellten Flag-Bildungseinheiten 9
verschiedene Flags vorbereitet. Die vorzubereitenden Flags umfassen ein Leistungsflag PF, ein Flag CF, welches
eine vorhandene oder nicht-vorhandene Stimme kennzeichnet, ein Flag KOF, welches bedeutet "Taste
ein", ein Flag FATF, welches einen Tastenanschlag kennzeichnet, und ein Flag KOFF, welches ein Loslassen
der Taste kennzeichnet. Zuerst soll das Flag PF näher beschrieben werden.
Neben den Tonhöhendaten wird die Leistung der Stimmdaten von jedem Rahmen (der Ausgang am Leistungswert-
Extrahieranschluß 24 in Figur 2) von der Tonhöhen-Extrahiereinheit
3 über den Zwischenspeicher 4 an den Prozessor 5 geliefert. Wenn der Leistungswert einen
gewissen Schwellenwert überschritten hat, nimmt das Flag PF einen hohen Pegel "H" an. Dieses Leistungsflag
PF dient als Indikator für das Vorhandensein eines Stimmsignals, ungeachtet dessen, ob es sich um
einen Konsonanten oder um einen Vokal handelt.
Außerdem empfängt der Prozessor 5 das Ausgangssignal Rq des Zählers 222 aus Figur 9. Diese Ausgangsdaten
stellen den kumulierten Wert der Absolutwerte der ternären Daten während eines Rahmens dar. Wenn das
Ausgangssignal RQ einen gewissen Schwellenwert überschritten
hat, wird das Flag CF, welches das Vorhandensein bzw. das Nicht-Vorhandensein eines Stimmsignals
kennzeichnet, "H". Das Flag CF kennzeichnet das Ausmaß des Vorhandenseins einer Tonhöhe. Das Flag CF nimmt
den Wert "H" bei einem Vokal und dergleichen an, es hat jedoch niedrigen Pegel "L" bei einem Konsonanten
oder dann, wenn überhaupt kein Klang vorhanden ist. Da das Flag CF vergleichbar ist mit einem Barometer,
welches zum Ausdruck bringt, ob der Korrelationswert gültig ist, ist die Verwendung des ermittelten maximalen
Korrelationswerts ebenfalls erlaubt.
Das eine angeschlagene oder eingeschaltete Taste kennzeichnende Flag KOF zeigt, daß sich das Musikinstrument
in einem Zustand befindet, in dem ein Klang erzeugt wird. Das Flag KOF nimmt einen hohen Pegel an, wenn
sowohl das Leistungsflag PF als auch das Korrelationswert-Flag
CF einen hohen Pegel besitzen. Das Flag KOF nimmt einen niedrigen Pegel an, wenn sowohl das Leistungsflag
PF als auch das Korrelationswert-Flag CF einen niedrigen Pegel haben. In sämtlichen anderen
Situationen tritt keine Änderung ein. Das Tastenan-
schlag-Flag KATF nimmt nur während des ersten einen
Takts einen hohen Pegel an/ bei welchem das Taste-ein-Flag
KOF den hohen Pegel annimmt. Das Taste-aus-Flag KOFF nimmt nur während des ersten einen Takts einen
hohen Pegel an, wenn das Flag KOF einen niedrigen Pegel annimmt.
Diese zwei Flags werden als Anzeiger für den Beginn und das Ende der Klangerzeugung verwendet. Der Vorgang
zur Bildung der beiden Flags findet innerhalb jeden Rahmens statt und ist mit einem Rahmentakt 0f synchronisiert,
der eine zeitliche Breite eines internen Rahmens besitzt.
Unter Verwendung der fünf oben beschriebenen Flags wird bestimmt, ob es sich um einen Rahmen am Stimmanfang,
um einen Rahmen eines Konsonanten oder um einen Rahmen am Ende einer Stimme handelt. Der Rahmen am Stimmanfang
ist ein Rahmen, in welchem das Tastenanschlag-Flag KATF
einen hohen Pegel hat, der Rahmen am Stimmenende ist ein Rahmen, der unmittelbar einem Zeitpunkt vorausgeht,
zu dem das Tasten-aus-Flag KOFF einen hohen Pegel annimmt. Ein Konsonanten-Rahmen ist ein Rahmen,
in welchem sowohl das Leistungsflag PF als auch das Tasten-ein-Flag KOF einen hohen Pegel hat und das
Flag CF einen niedrigen Pegel aufweist. Um die Tonhöhendaten-Steuerung
auf der Grundlage der oben diskutierten Flags durchzuführen, verwendet die Einheit
einen Zähler (ANC) 267 zum Zählen von 11 Rahmen, beginnend mit dem Rahmen am Stimmanfang, und einen Zähler
(SNC) 268 zum Zählen der 11 Rahmen, beginnend mit dem
an den Konsonanten-Rahmen anschliessenden Rahmen.
Die Tonhöhendaten N1, die noch nicht verarbeitet sind,
werden von dem Speicherabschnitt 6 (Figur 1) über einen Zwischenspeicher 254 und ein Gatter 253 an einen Zwi-
3407Ö78
schenspeicher 263 gegeben. Von der Fehler-Eliminiereinheit 7 (Figur 1) werden Tonhöhendaten N2 über einen
Zwischenspeicher 255 und ein Gatter 259 an den Zwischenspeicher 263 geliefert. Von der Mittelwert-Einheit 8
ausgegebene Mittelwert-Tonhöhendaten N4 werden über
einen Zwischenspeicher 256 und ein Gatter 260 an den Zwischenspeicher 263 gegeben. Das Mittelwert-Ausgangssignal,
welches mit einer Hysterese behaftet wird, d.h. die Mittelwert-Tonhöhendaten Nß werden von der Mittelwert-Einheit
8 über einen Zwischenspeicher 257 und ein Gatter 261 an den Zwischenspeicher 263 geliefert. Das
Ausgangssignal des Zwischenspeichers 263 wird an den Kodegenerator 11 (Figur 1) geliefert und außerdem über
einen Zwischenspeicher 264 und ein Gatter 262 an seinen eigenen Eingang zurückgeführt. Das von der Flagbildungs-Einheit
9 (Figur 1) kommende Tasten-ein-Flag KOF wird über UND-Glieder an die Zähl-Freigabeeingänge EN der
Zähler 267 und 268 geliefert. Außerdem wird das Signal KOF über einen Negator 269 an ein ODER-Glied 270 gegeben.
Das Leistungsflag PF und das Flag CF von der Flagbildungs-Einheit 9 werden an ein NAND-Glied 271
gegeben, dessen Ausgangssignal an den Rücksetzeingang
R der Zähler 267 und 268 sowie an ein ODER-Glied 270 gelegt wird. Das Tastenanschlag-Flag KATF von der Flagbildungs-Einheit
9 und die von dem Zähler 267 über das ODER-Glied 274 gelieferten Bit-Ausgangssignale werden
über das UND-Glied 265 und ein ODER-Glied 276 an den Zähl-Freigabeeingang EN des Zählers 267 gegeben. Das
Flag CF wird auf einen Zwischenspeicher 277 gegeben, der nach Maßgabe des Rahmentakts 0f arbeitet. Das Ausgangssignal
des Zwischenspeichers 277 wird auf einen Zwischenspeicher 278 gegeben, dessen Ausgang über einen
Negator 279 ebenso wie das Ausgangssignal des Zwischenspeichers 277 an ein UND-Glied 280 gegeben wird, dessen
Ausgang zusammen mit Bit-Ausgängen des Zählers 268 am Ausgang eines ODER-Glieds 275 über ein ODER-Glied
und ein UND-Glied 266 auf den Zähl-Freigabeeingang EN
des Zählers 268 gelegt wird.
Die Zähler 267 und 268 zählen nach Maßgabe des Rahmentakts 0f, und die jeweiligen Bit-Ausgangssignale werden
auf Logikschaltungen 282 und 283 gegeben. Die Ausgänge 284 und 291 nehmen bei einem Zählerstand von Null
hohen Pegel an, und sie werden gemeinsam über ein ODER-Glied 290 und einen Eingang eines UND-Glieds
auf das Gatter 261 gegeben. Der andere Eingang des UND-Glieds 296 empfängt ein Ausgangssignal des ODER-Glieds
270 über einen Negator 297. Der Ausgang 285 der Logik 283, der einen hohen Pegel annimmt, wenn
der Zählerstand zwischen 1 und 3 liegt, steuert das
!5 Gatter 258, und der Ausgang 292 der Logik 283, der
einen hohen Pegel annimmt, wenn der Zählerstand zwischen 1 und 3 liegt, wird auf das ODER-Glied 270 gegeben.
Die jeweiligen Ausgänge 286 und 293 der Logikschaltungen 282 und 283, die einen hohen Pegel annehmen,
wenn der Zählerstand zwischen 4 und 7 liegt, steuern das Gatter 259 über ein ODER-Glied 298. Die jeweiligen
Ausgänge 287 und 294 der Logikschaltung 282 und 283, die einen hohen Pegel annehmen, wenn der Zählerstand
zwischen 8 und 11 liegt, steuern das Gatter 260 über
ein ODER-Glied 299. Die jeweiligen Ausgänge 288 und 295, die einen hohen Pegel annehmen, wenn der Zählerstand
12 ist, werden über die ODER-Glieder 272 und auf die Rücksetzeingänge R der Zähler 267 bzw. 268
gegeben. Das Ausgangssignal des ODER-Glieds 270 steuert das Gatter 262.
Im folgenden soll unter Bezugnahme auf Figur 17 die Arbeitsweise der Tonhöhendaten-Steuerung in der Einheit
10 erläutert werden.
35
35
Figur 17 ist ein Diagramm, das die Beziehung zwischen
3Ϊ07078
den jeweiligen Flags und den Tonhöhendaten, die von den
beiden Zählern 267 und 268 und der Tonhöhendaten-Steuereinheit 10 an den Kodegenerator 11 gegeben werden. Wenn
ein Stinunsignal empfangen wurde, nimmt zunächst das Leistungsflag PF einen hohen Pegel an. Mit einer Verzögerung
von zwei Rahmen nimmt das ein Vorhandensein bzw. ein Nicht-Vorhandensein eines Stimmsignals kennzeichnende
Flag CF einen hohen Pegel an (die Verzögerung wird verursacht durch die Schaltung). Mit der an-
1^ schliessenden Verzögerung von zwei Rahmen wird das
Tasten-ein-Flag KOF hoch, während gleichzeitig das Tastenanschlag-Flag KATF während eines Rahmens den
Wert H annimmt. Auf der Grundlage der Bedingung, daß das Flag KATF einen hohen Pegel angenommen hat und
1^ sämtliche Flags KOF, PF und CF den Wert H besitzen,
beginnt der Zähler 267 zu zählen. Dieser Zustand wird derart aufrechterhalten, daß der Zähl-Freigabeeingang
EN des Zählers 267 über das ODER-Glied 267 und das UND-Glied 265 einen hohen Pegel empfängt. Wenn der
Zählvorgang begonnen hat, nimmt das Flag KATF einen niedrigen Pegel an. Da jedoch mindestens eines der
vier Bits des Ausgangssignals des Zählers 267 einen hohen Pegel hat, hat das Ausgangssignal des ODER-Glieds
264 einen hohen Pegel, und der Zähl-Freigabeeingang EN nimmt über das ODER-Glied 276 und das UNO-Glied 265
einen hohen Pegel an, so daß der Zähler 267 mit dem Zählvorgang fortfährt. Aufgrund des Zählvorgangs werden
kontinuierlich Extraktionsdaten ausgewählt und als
Ausgangsdaten abgegeben.
30
30
Wenn als nächstes der Zählerstand im Zähler 267 zwischen 1 und 3 beträgt, wird das Gatter 258 geöffnet, und die
von der Speichereinheit 6 (Figur 1) gelieferten Tonhöhendaten N- werden unverarbeitet selektiv über den
Zwischenspeicher 263 an den Kodegenerator 11 gegeben.
Dieser Arbeitsablauf kann stattfinden, wenn der Ausgang
285 der Logik 282 einen hohen Pegel hat. Wenn der Zählerstand im Zähler 267 zwischen 4 und 7 liegt, hat der
Ausgang 286 der Logikschaltung 282 einen hohen Pegel, und das hohe Signal wird über das ODER-Glied 298 an
den Steuereingang des Gatters 259 gelegt und verursacht dadurch das öffnen des Gatters 259, so daß die von der
Fehler-Eliminiereinheit 7 an den Zwischenspeicher 255 gelieferten Tonhöhendaten N2 selektiv an den Zwischenspeicher
263 gelegt werden. Liegt der Zählerstand zwischen 8 und 11, so wird das Gatter 260 geöffnet,
und der von der Mittelwerteinheit 8 gelieferte, sich auf vier Rahmen beziehende laufende Mittelwert N,, der
in dem Zwischenspeicher 256 gespeichert ist, wird selektiv an den Zwischenspeicher 263 gelegt. Dieser
Vorgang wird durchgeführt, wenn der Ausgang 267 der Logik 282 einen hohen Pegel hat. Hierdurch wird veranlaßt,
daß das Signal hohen Pegels über das ODER-Glied 299 an den Steueranschluß des Gatters 260 gelegt wird.
Wenn der Zählerstand des Zählers den Wert 12 annimmt,
nimmt der Ausgang 288 der Logik 282 einen hohen Pegel an und veranlaßt dadurch, daß der Zähler 267 über das
ODER-Glied 272 gelöscht wird und der Zählvorgang beendet wird. Dann wird unter der Bedingung, daß das
Leistungsflag PF, das Flag CF und das Tasten-ein-Flag
KOF gemeinsam hohen Pegel haben, das Gatter 261 geöffnet und damit wird der mit der Hysterese behaftete
Ausgangs-Mittelwert Np, der in dem Zwischenspeicher 257 gespeichert ist, selektiv an den Zwischenspeicher
263 gelegt. Dieser Vorgang kann stattfinden, wenn der Ausgang 264 der Logik 282 und dais über das NAND-Glied
261, das ODER-Glied 270 und den Negator 297 gelieferte Signal hohen Pegel haben. Hierdurch wird bewirkt, daß
das Ausgangssignal am UND-Glied 276 einen Hohen Pegel hat und an den Steueranschluß des Gatters 261 gelangt.
Wenn im "Taste-ein-Zustand" der Konsonanten-Rahmen erkannt wird (in dieser Zeit ist das Plag KOF hoch), d.h.,
wenn das Leistungsflag PF hochen Pegel hat und das Flag
CF niedrigen Pegel hat, so wird das Gatter 262 geöffnet, und die Tonhöhendaten BN des unmittelbar vorausgehenden
Rahmens, die in dem Zwischenspeicher 264 gespeichert sind, werden selektiv zu dem Zwischenspeicher 263 übertragen.
Die Tonhöhendaten BN entsprechen in Figur 17 Ng. Dieser Vorgang kann dadurch bewirkt werden, daß
der Ausgang des NAND-Glieds 261 und des ODER-Glieds 270
hohen Pegel haben, so daß dadurch das Signal hohen Pegels an den Steueranschluß des Gatters 262 gelangt.
Wenn der Konsonanten-Rahmen beendet ist und der nächste Stimmerzeugungs-Rahmen anfängt, beginnt der Zähler 268
!5 zu zählen. Wenn das das Vorhandensein bzw. das NichtVorhandensein eines Stimmsignals anzeigende Flag während
des hohen Zustands des Taste-ein-Flags KOF auf hohen Pegel ansteigt, beginnt der Zähler 268 mit dem
Zählvorgang. Dies läßt sich dadurch erreichen, daß ein Impulssignal über die Zwischenspeicher 277 und 298, das
UND-Glied 280, das ODER-Glied 281 und das UND-Glied 266 an den Zähl-Freigabeeingang EN des Zählers 266 geliefert
wird.
Wenn der Zählvorgang beginnt, nimmt der Zähl-Freigabeeingang EN über die ODER-Glieder 265 und 281 und das
UND-Glied 266 einen hohen Pegel an und veranlaßt dadurch die Fortsetzung des Zählvorgangs.
Liegt der Zählerstand zwischen 1 und 3, so werden die Tonhöhendaten BN des Konsonanten-Rahmens kontinuierlich
an den Zwischenspeicher 262 gegeben. Dieser Vorgang läßt sich dadurch erreichen, daß der Ausgang 292 der
Logik 283 auf einen hohen Pegel gebracht wird, um dadurch über das ODER-Glied 270 das Gatter 262 zu öffnen.
-72-
Liegt der Zählerstand des Zählers 268 zwischen 4 und 7, so wird wie beim Zähler 267 das Gatter 259 geöffnet,
und die Tonhöhendaten N2 werden selektiv an den Zwischenspeicher
263 geliefert. Dies läßt sich dadurch erreichen, daß der Ausgang 293 der Logik 283 hohen
Pegel annimmt, um das Gatter 259 zu öffnen.
Wenn der Zählerstand des Zählers 268 zwischen 8 und liegt, wird das Gatter 260 wie beim Zähler 267 geöffnet,-
und dadurch werden die Tonhöhendaten N. an den Zwischenspeicher 263 gelegt. Dies läßt sich dadurch erreichen,
daß der Ausgang 294 der Logik 283 einen hohen Pegel annimmt, um dadurch das Gatter 260 zu öffnen.
In dem Rahmen, in welchem der Zählerstand den Wert 11
übersteigt, löscht der Ausgang 295 der Logikschaltung 263 den Zähler 268 und veranlaßt dadurch das Ende des
Zählvorgangs. Anschliessend wird das Gatter 261 geöffnet, wodurch veranlaßt wird, daß die Tonhöhendaten Ng
selektiv an den Zwischenspeicher 263 gelegt werden.
Dies läßt sich dadurch erreichen, daß der Ausgang 291 der Logik 283 hohen Pegel annimmt, um das Gatter 261
zu öffnen.
Der Vorgang der Klangerzeugung könnte im unstabilen Zustand solange fortgesetzt werden, bis im letzten
Abschnitt der Klangbildung das Flag CF und dann das Flag PF einen niedrigen Pegel annehmen und das Flag
KOF mit einer Verzögerung von zwei Rahmen einen niedrigen Pegel annimmt. Daher wird das Gatter 262 geöffnet,
und die Tonhöhendaten BN des unmittelbar vorausgehanenden Rahmens (N„ in Figur 17) werden in ähnlicher
Weise an den Zwischenspeicher 263 gegeben.
Dieser Vorgang läßt sich realisieren, indem man das Gatter 262 über das NAND-Glied 261 und das ODER-Glied
270 öffnet.
3507078
Figur 18 zeigt zusammenfassend die Beziehungen zwischen den Zählerständen der Zähler 267 und 268 und den Arten
von ausgewählten Tonhöhendaten. Wenn die Zählerstände der jeweiligen Zähler zwischen 1 und 3 liegen, werden
unverarbeitete Tonhöhendaten N- im Zähler 267 ausgewählt,
weil es sich um den Beginn der Stimmerzeugung handelt, während die Tonhöhendaten BN des einem Konsonant
direkt vorausgehenden Rahmens in dem Zähler 268 ausgewählt werden, wegen des dem Konsonanten folgenden
Rahmens.
Im Hinblick auf die Zählerstände 4 bis 7 und 8 bis 11
im Anfangsteil der Stimmerzeugung werden die unverarbeiteten Tonhöhendaten, die bei Ausführung der Fehler-Eliminierung
eines Rahmens erhaltenen Tonhöhendaten, die unter Zugrundelegung von vier Rahmen gemittelten
Tonhöhendaten und die unter Zugrundelegung von acht Rahmen ermittelten, .mit einer hysteresebehafteten
Mittelwert-Tonhöhendaten in der genannten Reihenfolge ausgewählt. Daher kann an den Kodegenerator 11 sowohl
für den unstabilen Teil als auch für den stabilen Teil der Tonhöhen-Datenwert mit einer nur wenig fehlerbehafteten
Extraktion geliefert werden. Außerdem werden die Tonhöhendaten ohne Unterbrechung in dem Konsonantenteil
und dem Endteil der Stimmbildung glatt miteinander verbunden, so daß die Änderung der in dem Kodegenerator
11 zu erzeugenden Musiktöne natürlich wirkt. Bei dem oben beschriebenen Ausführungsbeispiel der Erfindung
wurde das "aus" des ein Vorhandensein bzw. ein Nicht-Vorhandensein
einer Stimme anzeigenden Flags CF auf den Konsonantenteil eingestellt. Diese Einstellung ist
jedoch nicht auf den Konsonantenteil beschränkt, sondern diesem Teil entspricht auch beispielsweise der Übergang
von Musiktönen bei einem Musikinstrument.
Wie aus der obigen Beschreibung hervorgeht, schafft die
Erfindung ein elektronisches Musikinstrument, mit dem der Musikton nach Maßgabe einer Stimmeingabe erzeugt
werden kann. Das elektronische Musikinstrument gemäß der vorliegenden Erfindung besitzt zunächst eine Orei-Werte-Quantisierungsschaltung,
in der stabile ternäre Daten erhalten werden können, indem der Schwellenpegel nach Maßgabe des Eingangspegels des Stimmsignals geämdert
wird. Sodann ist eine Tonhöhen-Extrahierschaltung vorgesehen, die die Tonhöhe aus dem Eingabe-Sprachsignal
extrahiert auf der Grundlage des Zeit-Korrelationswerts der ermittelten ternären Daten.
Drittens ist eine Fehler-Eliminierschaltung vorgesehen, die die Fehler beim Extrahieren von Tonhöhendaten aus
dem eingegebenen Stimmsignal erfaßt und korrigiert.
Viertens ist eine arithmetische Mittelungsschaltung vorgesehen, um eine unstabile Änderung des eingegebenen
Stimmsignals zu stabilisieren. Fünftens ist eine Tonhöhendaten-Steuereinheit vorgesehen, die das verarbeitete
Ergebnis nach Maßgabe der in dem eingegebenen Stimmsignal enthaltenen Leistung auswählt.
Die Erfindung schafft also ein elektronisches Musikinstrument, in welchem selbst dann kein Fehler erzeugt
wird, wenn sich der Pegel eines eingegebenen Stimmsignals ändert. Dies geschieht durch digitales Erfassen
und Verarbeiten des eingegebenen Stimmsignals, mit dem Ergebnis, daß das Instrument in sehr einfacher Weise
durch die Stimme des Vortragenden gespielt wird, der keinerlei Erfahrung und Übung im Spielen eines Musikinstruments
besitzt.
Das erfindungsgemäße elektronische Musikinstrument eignet sich besonders gut für die Auslegung in Form
von integrierten Großschaltkreisen (LSI-Schaltkreisen), da die Vorverarbeitungseinheit 2 und die Tonhöhen-Extrahiereinheit
3 auf einem einzigen Chip ausgebildet werden können.
Leerseite -
Claims (26)
- .AIXAKJiJNKERSGHMITT-NILSaN1HiRS(^ *"* :EUROPEAN RVTENT ATTORNEY?K 21 127/7DneCasio Computer Co., Ltd. 6-1, 2-Chome, Nishishinjuku, Shinjuku-ku, Tokyo, JapanElektronisches MusikinstrumentPATENTANSPRÜCHE\ '1.J Elektronisches Musikinstrument, g e k e η η ze χ-chnet durcheine Einrichtung (14, 15, 16) zum Umsetzen eines Stimmsignals in digitale Daten,
eine Extrahiereinrichtung (3) zum Extrahieren einer Tonhöhe aus den durch die Umsetzeinrichtung erhaltenen digitalen Daten,eine Verarbeitungseinrichtung (4, 5, 6, 7, 8, 10, 11) zum Verarbeiten der> Ausgangssignals der Extrahiereinrichtung (3), undeine Musikton-Wiedergabeeinrichtung (12) , die das Ausgangssignal der Verarbeitungseinrichtung empfängt und nach Maßgabe dieses Ausgangssignals einen Musikton erzeugt .34U7UVÖ - 2. Instrument nach Anspruch 1, dadurch gekennzeichnet , daß die Umsetzeinrichtung einen Analog/Digital-Umsetzer und eine Quantisierungseinrichtung zum Quantisieren des Ausgangssignals des Analog/Digital-Umsetzers aufweist.
- 3. Instrument nach Anspruch 2, dadurch gekennzeichnet , daß die Quantisierungseinrichtung (21) einen Maximum- und einen Minimumwert-Detektor (18, 19) aufweist, die mindestens den Maximumwert oder den Minimumwert des Ausgangssignals des Analog/Digital-Umsetzers (16) ermitteln, und eine Schwellenpegel-Ausgabeeinrichtung (20) aufweist, die den Maximum- und den Minimumwert empfängt, um daraus den Schwellenpegel zu ermitteln.
- 4. Instrument nach Anspruch 3, dadurch gekennzeichnet , daß die Schwellenpegel-Ausgabeeinrichtung einen Speicher (25) besitzt, dessen Adressen die Ausgangssignale der Maximum- und der Minimumwert-Detektoreinrichtung zugeführt werden, um als Ausgangssignale des Speichers Daten eines Schwellenpegels zu liefern.
- 5. Instrument nach Anspruch 3, dadurch gekennzeichnet , daß die Quantisierungseinrichtung einen Vergleicher (36) besitzt, dem das Ausgangssignal des Analog/Digital-Umsetzers (16) und das Ausgangssignal der Schwellenpegel-Ausgabeeinrichtung zugeführt werden.
- 6. Instrument nach Anspruch 5, dadurch gekennzeichnet , daß der Vergleicher eine Subtrahierschaltung (36) aufweist, die als Vergleichsergebnis ein Ubertrag-Ausgangssignal erzeugt.
- 7. Instrument nach Anspruch 1, dadurch gekennzeichnet , daß die Tonhöhen-Extrahiereinrichtung eine Verzögerungsschaltung enthält, die die Stiinmdaten verzögert, und eine Multiplikationsschaltung besitzt, welche die um eine einer Tonleiter entsprechende Zeitdifferenz verzögerten Stimmdaten multipliziert, um eine Tonhöhe der eingegebenen Sprachdaten zu extrahieren.
- 8. Instrument nach Anspruch 7, dadurch gekennzeichnet , daß die Verzögerungsschaltung einen Speicher (26) und eine Ausgabe-Steuerschaltung aufweist, um selektiv erste, in dem Speicher gespeicherte Daten und zweite, um eine vorbestimmte Zeit bezüglich der ersten Daten verzögerte Daten an die Multiplizierschaltung zu geben.
- 9. Instrument nach Anspruch 7, dadurch gekennzeichnet , daß die Extrahiereinrich- tung eine Kumulierschaltung enthält, welche die Ausgangsdaten der Multiplizierschaltung akkumuliert und speichert.
- 10. Instrument nach Anspruch 7, dadurch g e kennzeichnet, daß die Stimmdaten Zwei-Bit-Daten aufweisen, die ein Vorzeichenbit und ein Datenbit umfassen, und daß die Multiplizierschaltung (28) ein Exklusiv-ODER-Glied (28-1) und ein UND-Glied (28-2) aufweist, wobei das Vorzeichenbit dem Exklusiv-ODER-Glied und das Datenbit dem UND-Glied zugeführt wird.
- 11. Instrument nach Anspruch 1, dadurch gekennzeichnet, daß die Extrahiereinrich- tung eine ternäre Korrelationsfunktions-Verarbeitungsschaltung mit folgenden Merkmalen enthält:eine Multiplizierschaltung (28), die ternäre Daten multipliziert,einen Fensterwertgenerator (217, 212) zum Erzeugen eines Fensterwerts,eine Gatterschaltung (211) mit einem Steueranschluß, der ein Datenbit von der Multiplizierschaltung (28) empfängt, und mit einem Eingangsanschluß zum Empfangen des Fensterwerts von dem Fensterwertgeneratox (217, 212),einen Addierer/Subtrahierer (218) mit einem Addier/ Subtrahier-Steuereingang (S) zum Empfangen des Vorzeichenbits aus der Multiplizierschaltung (28) und einem ersten Eingang (A) zum Empfangen des Ausgangssignals der Gatterschaltung (210) , und einer Speicherschaltung (216) , die ein arithmetisches Ausgangssignal des Addierer/Subtrahierers (218) speichert, um es an einen zweiten Eingang (B) des Addierer/ Subtrahierers (218) zu geben.
- 12. Instrument nach Anspruch 11, dadurch gekennzeichnet , daß der Fensterwertgenerator einen Speicher (212) enthält, der den Fensterwert speichert.
- 13. Instrument nach Anspruch 11, dadurch gekennzeichnet , daß die Multiplizierschaltung (28) ein Exklusiv-ODER-Glied (28-1) und ein UND-Glied (28-2) enthält, und daß das Ausgangssignal des Exklusiv-ODER-Glieds als Vorzeichenbit dient, während das Ausgangssignal des UND-Glieds als Datenbit dient.
- 14. Instrument nach Anspruch 11, dadurch gekennzeichnet , daß die ternäre Korrelationsfunktions-Verarbeitungsschaltung außerdem einen Adresszähler (220) enthält, der seine Ausgangssignale an einen Adressanschluß des Speichers gibt.
- -δ-15. Instrument nach Anspruch 1, dadurch g e kennzeichner , daß die Verarbeitungseinrichtung eine Fehler-Eliminiereinheit mit einer Speichereinrichtung zum Speichern der vergangenen Eingangsdaten, einer Einrichtung zum Vergleichen der in der Speichereinrichtung gespeicherten vergangenen Daten mit den anstehenden Eingangsdaten und einer Auswahleinrichtung zum selektiven Ausgeben der vergangenen Eingangsdaten oder der anstehenden Eingangsdaten besitzt, und daß die Vergleichereinrichtung bestimmt, ob die anstehenden Eingangsdaten innerhalb eines vorbestimmten Bereichs bezüglich der vergangenen Eingangsdaten liegen und selektiv entweder die vergangenen Eingangsdaten oder die anstehenden Eingangsdaten abgibt.
- 16. Instrument nach Anspruch 15, dadurch gekennzeichnet , daß die Vergleichereinrichtung einen Addierer/Subtrahierer und einen Vergleicher enthält, daß der Addierer/Subtrahierer den vorbestimmten Wert entweder auf die vergangenen Eingangsdaten addiert oder ihn von den vergangenen Eingangsdaten subtrahiert, und daß der Vergleicher das Additions- oder Subtraktionsergebnis mit den anstehenden Eingangsdaten vergleicht.
- 17. Instrument nach Anspruch 15, dadurch gekennzeichnet , daß die Auswahleinrichtung eine Speicherschaltung enthält und entweder die vergangenen Eingangsdaten oder die anstehenden Eingangsdaten auf der Grundlage des Inhalts der Speicherschaltung auswählt.
- 18. Instrument nach Anspruch 1, dadurch g e -kennzeichnet, daß die Verarbeitungseinrichtung eine eine laufende Mittelwertbildung voll-ID WW* · www«-6-ziehende arithmetische Mittelwerteinheit (8) mit einer Speichereinrichtung zum Speichern der eingegebenen Daten, einer Akkumuliereinrichtung zum Auswählen von Daten aus der Speichereinrichtung zum Zwecke der Akkumulierung und eine Mittelwertbildungseinrichtung zum Ermitteln des Mittelwerts des Ergebnisses der Akkumuliereinrichtung enthält, um dadurch das Ausgangssignal der Speichereinrichtung und das Ausgangssignal der Mittelwertbildungseinrichtung zum Zwecke der Akkumulierung auszuwählen und so den Mittelwert zu erhalten .
- 19. Instrument nach Anspruch 18, dadurch gekennzeichnet , daß die Speichereinrich- tung als Schieberegister ausgebildet.
- 20. Instrument nach Anspruch 18, dadurch gekennzeichnet , daß die Kumuliereinrichtung einen Zähler, einen Selektor und einen Addierer enthält, und daß der Selektor die Ausgangssignale der Speichereinrichtung und der Ausgabeeinrichtung nach Maßgabe des Zählerinhalts auswählt, um dadurch die ausgewählten Daten an einen ersten Eingang des Addierers zu legen und das Ausgangssignal des Addierers an einen zweiten Eingang des Addierers zu führen.
- 21. Instrument nach Anspruch 18, dadurch gekennzeichnet , daß die Mittelwertbildungseinrichtung einen Halbaddierer aufweist, wobei mehrere höherwertige Bits der Akkumuliereinrichtung auf der. Eingang des Addierers geführt werden und ein an die höherwertigen sechs Bits anschliessendes Bit auf einen Obertrageingang des Addierers gelegt wird.
- 22. Elektronisches Musikinstrument, gekennzeichnet durch eine Erfassurigseinrichtung, diedie zeitliche Lage mindestens eines Anfangsteils eines Stimmsignals und eines Endteils des Stimmsignals erfaßt, eine Extrahiereinrichtung, die Tonhöhendaten aus dem Stimmsignal extrahiert, mehrere Verarbeitungseinrichtungen zum Verarbeiten der Tonhöhendaten auf unterschiedliche Weise, eine Auswahleinrichtung zum sukzessiven Auswählen von durch die Verarbeitungseinrichtungen verarbeiteten Tonhöhendaten entsprechend den festgestellten zeitlichen Beziehungen, und eine Musikton-Wiedergabeeinrichtung zum Erzeugen eines Musiktons auf der Grundlage der von der Auswahleinrichtung gelieferten, verarbeiteten Tonhöhendaten.
- 23. Instrument nach Anspruch 22, dadurch g e -kennzeichnet, daß die Erfassungseinrichtung eine Extraktionsänderungs-Erfassungseinrichtung besitzt, mit der festgestellt wird, daß eine Änderung des Ausgangssignals der Extrahiereinrichtung einen vorbestimmten Wert übersteigt, um dadurch die zeitliche Lage des Änderungspunkts zu ermitteln.
- 24. Instrument nach Anspruch 23, dadurch gekennzeichnet , daß die Auswahleinrichtung einen Zähler aufweist, der mit dem Zählvorgang zu einem Zeitpunkt beginnt, der unmittelbar entweder an den Zeitpunkt des Beginns des Sprachsignals anschließt oder an den von der Extraktionsänderungs-Erfassungseinrichtung ermittelten Zeitpunkt anschließt, und eine Einrichtung enthält, die die verarbeitetan Tonhöhendaten nach Maßgabe des von dem Zähler ausgegebenen Zählwerts auswählt.
- 25. Instrument nach Anspruch 23, dadurch gekennzeichnet , daß die Auswahleinrichtung eine Einrichtung enthält zum kontinuierlichen Abgeben desjenigen Teils der verarbeiteten Tonhöhendaten, der3 4 U 7 U /unmittelbar dem Zeitpunkt vorausgeht, der direkt an das Sprachsignalende anschließt oder der von der Extraktionsänderungs-Erfassungseinrichtung ermittelt wird.
- 26. Instrument nach Anspruch 22, dadurch gekennzeichnet , daß die Verarbeitungseinrichtungen Mittel zum Eliminieren eines Fehlers aus den extrahierten Daten und Mittel zum Berechnen eines Mittelwerts der extrahierten Daten enthalten.
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58031284A JPS59157769A (ja) | 1983-02-27 | 1983-02-27 | 三値相関関数処理方式 |
JP3128583A JPS59157697A (ja) | 1983-02-27 | 1983-02-27 | 音声入力による音階抽出方式 |
JP3128683A JPS59158124A (ja) | 1983-02-27 | 1983-02-27 | 音声デ−タ量子化方式 |
JP59013075A JPH0652480B2 (ja) | 1984-01-27 | 1984-01-27 | 電子楽器の入力装置 |
JP59013077A JPS60158493A (ja) | 1984-01-27 | 1984-01-27 | エラ−除去装置 |
JP59013076A JPS60158490A (ja) | 1984-01-27 | 1984-01-27 | 電子楽器の入力装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE3407078A1 true DE3407078A1 (de) | 1984-10-11 |
Family
ID=27548439
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19843407078 Ceased DE3407078A1 (de) | 1983-02-27 | 1984-02-27 | Elektronisches musikinstrument |
Country Status (3)
Country | Link |
---|---|
US (2) | US4633748A (de) |
DE (1) | DE3407078A1 (de) |
GB (1) | GB2138988B (de) |
Families Citing this family (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6090396A (ja) * | 1983-10-24 | 1985-05-21 | セイコーインスツルメンツ株式会社 | 音声認識式音程採譜装置 |
JPS6145298A (ja) * | 1984-08-09 | 1986-03-05 | カシオ計算機株式会社 | 電子楽器 |
GB8500638D0 (en) * | 1985-01-10 | 1985-02-13 | Christie M S | Audio stimulus control device |
JPH0789279B2 (ja) * | 1985-10-21 | 1995-09-27 | ヤマハ株式会社 | 楽音信号発生装置 |
DE3752185T2 (de) * | 1986-10-24 | 1998-08-27 | Casio Computer Co Ltd | Gerät zum Erzeugen eines Musiktonsignales gemäss eines Eingangswellenform-Signals |
US5018428A (en) * | 1986-10-24 | 1991-05-28 | Casio Computer Co., Ltd. | Electronic musical instrument in which musical tones are generated on the basis of pitches extracted from an input waveform signal |
DE3786654T2 (de) * | 1987-01-07 | 1994-02-17 | Yamaha Corp | Tonsignal-Erzeugungsvorrichtung mit einer digitalen Ton-Speicher-Funktion. |
US4771671A (en) * | 1987-01-08 | 1988-09-20 | Breakaway Technologies, Inc. | Entertainment and creative expression device for easily playing along to background music |
US4926737A (en) * | 1987-04-08 | 1990-05-22 | Casio Computer Co., Ltd. | Automatic composer using input motif information |
US4829872A (en) * | 1987-05-11 | 1989-05-16 | Fairlight Instruments Pty. Limited | Detection of musical gestures |
JPH0196700A (ja) * | 1987-10-08 | 1989-04-14 | Casio Comput Co Ltd | 電子楽器の入力制御装置 |
JP2712346B2 (ja) * | 1987-10-14 | 1998-02-10 | カシオ計算機株式会社 | 周波数制御装置 |
JPH01177082A (ja) * | 1987-12-28 | 1989-07-13 | Casio Comput Co Ltd | 音高決定装置 |
JP2734521B2 (ja) * | 1988-03-31 | 1998-03-30 | カシオ計算機株式会社 | 楽音制御装置 |
JP2615825B2 (ja) * | 1988-05-02 | 1997-06-04 | カシオ計算機株式会社 | 電子弦楽器 |
US5001960A (en) * | 1988-06-10 | 1991-03-26 | Casio Computer Co., Ltd. | Apparatus for controlling reproduction on pitch variation of an input waveform signal |
US5208861A (en) * | 1988-06-16 | 1993-05-04 | Yamaha Corporation | Pitch extraction apparatus for an acoustic signal waveform |
JPH027096A (ja) * | 1988-06-27 | 1990-01-11 | Casio Comput Co Ltd | 電子楽器 |
US4915001A (en) * | 1988-08-01 | 1990-04-10 | Homer Dillard | Voice to music converter |
US5147970A (en) * | 1989-08-11 | 1992-09-15 | Casio Computer Co., Ltd. | Electronic musical instrument for generating musical tones on the basis of characteristics of input waveform signal |
US5157215A (en) * | 1989-09-20 | 1992-10-20 | Casio Computer Co., Ltd. | Electronic musical instrument for modulating musical tone signal with voice |
JP3092808B2 (ja) * | 1989-12-20 | 2000-09-25 | カシオ計算機株式会社 | 電子弦楽器 |
WO1991019989A1 (en) * | 1990-06-21 | 1991-12-26 | Reynolds Software, Inc. | Method and apparatus for wave analysis and event recognition |
US5171930A (en) * | 1990-09-26 | 1992-12-15 | Synchro Voice Inc. | Electroglottograph-driven controller for a MIDI-compatible electronic music synthesizer device |
JP2609752B2 (ja) * | 1990-10-09 | 1997-05-14 | 三菱電機株式会社 | 音声/音声帯域内データ識別装置 |
US5270475A (en) * | 1991-03-04 | 1993-12-14 | Lyrrus, Inc. | Electronic music system |
US5349130A (en) * | 1991-05-02 | 1994-09-20 | Casio Computer Co., Ltd. | Pitch extracting apparatus having means for measuring interval between zero-crossing points of a waveform |
US5210366A (en) * | 1991-06-10 | 1993-05-11 | Sykes Jr Richard O | Method and device for detecting and separating voices in a complex musical composition |
JPH06334513A (ja) * | 1993-05-13 | 1994-12-02 | Intel Corp | データ処理装置 |
US5744739A (en) * | 1996-09-13 | 1998-04-28 | Crystal Semiconductor | Wavetable synthesizer and operating method using a variable sampling rate approximation |
US6678382B2 (en) * | 1997-11-25 | 2004-01-13 | Thomson Licensing S.A. | Digital attenuator |
US6372973B1 (en) | 1999-05-18 | 2002-04-16 | Schneidor Medical Technologies, Inc, | Musical instruments that generate notes according to sounds and manually selected scales |
US6737572B1 (en) | 1999-05-20 | 2004-05-18 | Alto Research, Llc | Voice controlled electronic musical instrument |
ATE303645T1 (de) * | 1999-05-20 | 2005-09-15 | John W Jameson | Durch sprache gesteuertes elektronisches musikinstrument |
JP2003504673A (ja) * | 1999-07-07 | 2003-02-04 | ギブソン ギター コーポレーシヨン | インターフェレンス付き楽器ディジタル録音装置 |
US20070163425A1 (en) * | 2000-03-13 | 2007-07-19 | Tsui Chi-Ying | Melody retrieval system |
US7027983B2 (en) * | 2001-12-31 | 2006-04-11 | Nellymoser, Inc. | System and method for generating an identification signal for electronic devices |
US6847930B2 (en) * | 2002-01-25 | 2005-01-25 | Acoustic Technologies, Inc. | Analog voice activity detector for telephone |
GB2392544A (en) * | 2002-08-29 | 2004-03-03 | Morgan Computing Ltd | Device for creating note data |
US7323629B2 (en) * | 2003-07-16 | 2008-01-29 | Univ Iowa State Res Found Inc | Real time music recognition and display system |
JP4448378B2 (ja) * | 2003-07-30 | 2010-04-07 | ヤマハ株式会社 | 電子管楽器 |
JP2005049439A (ja) * | 2003-07-30 | 2005-02-24 | Yamaha Corp | 電子楽器 |
US7598447B2 (en) * | 2004-10-29 | 2009-10-06 | Zenph Studios, Inc. | Methods, systems and computer program products for detecting musical notes in an audio signal |
US7592533B1 (en) * | 2005-01-20 | 2009-09-22 | Gary Lee | Audio loop timing based on audio event information |
KR100735444B1 (ko) * | 2005-07-18 | 2007-07-04 | 삼성전자주식회사 | 오디오데이터 및 악보이미지 추출방법 |
US7563975B2 (en) * | 2005-09-14 | 2009-07-21 | Mattel, Inc. | Music production system |
ITMO20060109A1 (it) * | 2006-03-29 | 2007-09-30 | Ik Multimedia Production Srl | "scheda audio,particolarmente per il collegamento tra un computer ed uno stereo musicale" |
US7541534B2 (en) * | 2006-10-23 | 2009-06-02 | Adobe Systems Incorporated | Methods and apparatus for rendering audio data |
FR2923102B1 (fr) * | 2007-10-30 | 2010-11-12 | Valeo Systemes Thermiques | Procede de numerisation d'un signal quelconque |
US9012756B1 (en) | 2012-11-15 | 2015-04-21 | Gerald Goldman | Apparatus and method for producing vocal sounds for accompaniment with musical instruments |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CH549849A (de) * | 1972-12-29 | 1974-05-31 | Ibm | Verfahren zum ermitteln des der periode der anregungsfrequenz der stimmbaender entsprechenden intervalls. |
DE2430321A1 (de) * | 1973-06-23 | 1975-01-16 | Matsushita Electric Ind Co Ltd | Stimmtastsystem fuer ein stimmgesteuertes musikinstrument |
FR2296237A1 (fr) * | 1974-12-23 | 1976-07-23 | Schifrine Jean | Instrument electronique de musique |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL281548A (en) * | 1961-08-08 | 1964-12-10 | Sponga Imre | Inrichting voor het registreren en het omzetten van elektrische trillingen of in deze trillingen omgezette akoestische trillingen van verschillende frequenties |
US3539701A (en) * | 1967-07-07 | 1970-11-10 | Ursula A Milde | Electrical musical instrument |
US3634596A (en) * | 1969-08-27 | 1972-01-11 | Robert E Rupert | System for producing musical tones |
GB1291078A (en) * | 1969-12-17 | 1972-09-27 | Robert Edwin Rupert | System for producing musical tones |
US3647929A (en) * | 1970-10-08 | 1972-03-07 | Karl F Milde Jr | Apparatus for reproducing musical notes from an encoded record |
US4014237A (en) * | 1972-03-01 | 1977-03-29 | Milde Karl F Jr | Musical note detecting apparatus |
US3812432A (en) * | 1973-01-05 | 1974-05-21 | Bell Telephone Labor Inc | Tone detector |
JPS51129131A (en) * | 1975-05-01 | 1976-11-10 | Omron Tateisi Electronics Co | Analog-digital conversion circuit |
US4168645A (en) * | 1977-05-20 | 1979-09-25 | Morris B. Squire | Electronic musical instrument |
US4230012A (en) * | 1977-06-14 | 1980-10-28 | Bach Laboratories, Inc. | Musical instrument and method for use therein |
GB2013386A (en) * | 1977-09-10 | 1979-08-08 | Fox H M | Electronic sound processing device |
JPS5461453A (en) * | 1977-10-26 | 1979-05-17 | Hitachi Ltd | Analog-digital conversion circuit |
US4377961A (en) * | 1979-09-10 | 1983-03-29 | Bode Harald E W | Fundamental frequency extracting system |
US4313361A (en) * | 1980-03-28 | 1982-02-02 | Kawai Musical Instruments Mfg. Co., Ltd. | Digital frequency follower for electronic musical instruments |
US4506580A (en) * | 1982-02-02 | 1985-03-26 | Nippon Gakki Seizo Kabushiki Kaisha | Tone pattern identifying system |
-
1984
- 1984-02-23 US US06/583,091 patent/US4633748A/en not_active Ceased
- 1984-02-27 GB GB08405013A patent/GB2138988B/en not_active Expired
- 1984-02-27 DE DE19843407078 patent/DE3407078A1/de not_active Ceased
-
1989
- 1989-12-12 US US07/453,040 patent/USRE33739E/en not_active Expired - Lifetime
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CH549849A (de) * | 1972-12-29 | 1974-05-31 | Ibm | Verfahren zum ermitteln des der periode der anregungsfrequenz der stimmbaender entsprechenden intervalls. |
DE2430321A1 (de) * | 1973-06-23 | 1975-01-16 | Matsushita Electric Ind Co Ltd | Stimmtastsystem fuer ein stimmgesteuertes musikinstrument |
FR2296237A1 (fr) * | 1974-12-23 | 1976-07-23 | Schifrine Jean | Instrument electronique de musique |
Non-Patent Citations (1)
Title |
---|
VISSER, F., Vocoder-Systeme, In: Elektor, 1979, H. 108, S. 12-44 bis 12-49 * |
Also Published As
Publication number | Publication date |
---|---|
GB2138988A (en) | 1984-10-31 |
USRE33739E (en) | 1991-11-12 |
US4633748A (en) | 1987-01-06 |
GB2138988B (en) | 1987-01-21 |
GB8405013D0 (en) | 1984-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3407078A1 (de) | Elektronisches musikinstrument | |
DE2659096C2 (de) | ||
DE3889331T2 (de) | Vorrichtung zur Steuerung von Musiktönen gemäss einem Eingangswellenformsignal. | |
DE2362050C3 (de) | Elektronisches Musikinstrument | |
DE2536585C3 (de) | Anordnung zur statistischen Signalanalyse | |
DE69816221T2 (de) | Sprachschnellheitsveränderungsverfahren und vorrichtung | |
DE3236885A1 (de) | Verfahren und geraet zur sprachanalyse | |
DE3236834A1 (de) | Verfahren und geraet zur sprachanalyse | |
DE3236832A1 (de) | Verfahren und geraet zur sprachanalyse | |
DE2626793B2 (de) | Elektrische Schaltungsanordnung zum Bestimmen des stimmhaften oder stimmlosen Zustandes eines Sprachsignals | |
DE19942178C1 (de) | Verfahren zum Aufbereiten einer Datenbank für die automatische Sprachverarbeitung | |
DE2020753A1 (de) | Einrichtung zum Erkennen vorgegebener Sprachlaute | |
DE2920298A1 (de) | Binaere interpolatorschaltung fuer ein elektronisches musikinstrument | |
DE2636032C3 (de) | Elektrische Schaltungsanordnung zum Extrahieren der Grundschwingungsperiode aus einem Sprachsignal | |
EP0285222B1 (de) | Verfahren zum Erkennen zusammenhängend gesprochener Wörter | |
DE3019823A1 (de) | Datenumsetzer und damit ausgestattete sprachsyntheseanordnung | |
DE3226538C2 (de) | LSP-Stimmsynthetisierer | |
DE2801933A1 (de) | Elektronisches musikinstrument | |
DE69613157T2 (de) | Verfahren zur Erkennung des Beginns und Endes einer Note bei einem Perkussions- oder Saiteninstrument | |
DE3249791C2 (de) | Elektronisches Musikinstrument | |
DE2854601C2 (de) | Verfahren zur Tonaufbereitung und Ton-Synthesator zu seiner Durchführung | |
DE102006036583B4 (de) | Hörhilfe mit einem Audiosignalerzeuger und Verfahren | |
DE2109436A1 (de) | Amphtudenregler für elektrische Signale | |
DE3246712C2 (de) | ||
DE3037276A1 (de) | Tonsynthesizer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8128 | New person/name/address of the agent |
Representative=s name: KLUNKER, H., DIPL.-ING. DR.RER.NAT. SCHMITT-NILSON |
|
8125 | Change of the main classification |
Ipc: G10L 9/08 |
|
8131 | Rejection |