DE2934489C2 - - Google Patents

Info

Publication number
DE2934489C2
DE2934489C2 DE2934489A DE2934489A DE2934489C2 DE 2934489 C2 DE2934489 C2 DE 2934489C2 DE 2934489 A DE2934489 A DE 2934489A DE 2934489 A DE2934489 A DE 2934489A DE 2934489 C2 DE2934489 C2 DE 2934489C2
Authority
DE
Germany
Prior art keywords
signal
signals
block
pitch
group
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
DE2934489A
Other languages
English (en)
Other versions
DE2934489A1 (de
Inventor
Ronald Eldon Berkeley Heights N.J. Us Crochiere
Jose Manuel Nunes Salvador S.Domingos De Rana Pt Tribolet
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AT&T Corp
Original Assignee
AT&T Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by AT&T Technologies Inc filed Critical AT&T Technologies Inc
Publication of DE2934489A1 publication Critical patent/DE2934489A1/de
Application granted granted Critical
Publication of DE2934489C2 publication Critical patent/DE2934489C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis

Description

Die Erfindung betrifft eine Sprachsignal-Codierschaltung gemäß dem Patentanspruch 1 sowie das zugehörige Verfahren nach dem Patentanspruch 9. Dabei erfolgt eine adaptive Sprachsignalverarbeitung unter Verwendung einer Transformationscodierung.
Die Verarbeitung von Sprachsignalen zur Übertragung über Digitalkanäle in Fernsprech- oder anderen Nachrichtenübertragungsanlagen sieht im allgemeinen die Abtastung des Eingangssprachsignals, die Quantisierung der Abtastungen und die Erzeugung einer Gruppe von Digitalcodierungen vor, welche die quantisierten Abtastungen darstellen. Da Sprachsignale im hohen Maße korreliert sind, läßt sich diejenige Signalkomponente, welche aus vorhergehenden Werten des Sprachsignals vorsehbar ist, und die nicht vorhersehbare Komponente trennen und so codieren, daß sich eine wirksame Ausnutzung des Digitalkanals ohne Verschlechterung des Signals erreichen läßt.
In digitalen Übertragungsanlagen unter Verwendung einer Transformationscodierung wird das Sprachsignal abgetastet, und die Abtastungen werden in Blöcke aufgetrennt. Jeder Block von aufeinanderfolgenden Sprachabtastungen wird in eine Gruppe von Transformations-Koeffizientensignalen umgesetzt, die das Freuenzspektrum des Blocks darstellen. Die Koeffizientensignale werden individuell quantisiert, wodurch eine Gruppe von digitalcodierten Signalen gebildet und über einen Digitalkanal übertragen wird. Empfangsseitig werden die digitalcodierten Signale decodiert und invers transformiert, so daß sich eine Folge von Abtastungen ergibt, die dem Block von Abtastungen des ursprünglichen Sprachsignals entspricht.
In dem US-Patent 36 81 530 wird eine Transformations-Codieranordnung beschrieben, die mit Hilfe der Fouriertransformation des Logarithmus des Wertes des Frequenzspektrums die Signalbandbreite komprimiert.
Eine weitere bekannte Transformations-Codieranordnung für Sprachsignale ist beschrieben in dem Aufsatz "Adaptive Transform Coding of Speech Signals" von Rainer Zelinski und Peter Noll in IEEE Transactions on Acoustics, Speech and Signal Processing, Band ASSP-25, Nr. 4, August 1977. Dieser Aufsatz offenbart ein Transformations-Codierverfahren, bei dem jedes Transformations-Koeffizientensignal adaptiv quantisiert wird, um die Bitrate für die Übertragung herabzusetzen, wodurch der digitale Übertragungskanal wirksam ausgenutzt wird. Die Abtastungen eines Eingangssprachsignalabschnitts werden mit Hilfe einer bestimmten Cosinustransformation in die Frequenzebene eingeordnet. Die Transformation führt zu einer Gruppe von diskreten, in gleichem Abstand angeordneten Cosinus-Transformationskoeffizientensignalen. Zur Erzielung einer optimalen Übertragungsrate wird ein Schätzwert für das Kurzzeitspektrum des Abschnittes durch eine Spektralwert-Mittelwertbildung über benachbarte Koeffizientensignale unter Ansprechen auf die Transformations-Koeffizientensignale gebildet. Das Spektrum-Schätzwertsignal, das die vorhergesagten Spektralpegel für im gleichen Abstand angeordnete Frequenzen darstellt, wird dann zur adaptiven Quantisierung der Transformations- Koeffizientensignale benutzt. Die adaptive Quantisierung der Transformations-Koeffizientensignale optimiert die Bit- und Schrittgrößenzuordnung für jedes Koeffizientensignal entsprechend dem abgeleiteten Spektralschätzwert. Digitalcodierungen, die die adaptiv quantisierten Koeffizientensignale und den Spektralschätzwert darstellen, werden multiplexiert und übertragen. Eine adaptive Decodierung der Digitalcodierungen und eine inverse Cosinustransformation der decodierten Abtastwerte liefert ein Abbild für die Folge von Sprachsignalabtastungen.
Bei der Codieranordnung nach dem vorgenannten Aufsatz von Zelinski und Noll liefert die Bildung des spektralen Schätzwertsignals auf der Basis einer Spektralkomponenten-Mittelwertbildung nur einen groben Schätzwert, der relevante Einzelheiten des Sprachsignals im Transformationsspektrum nicht darstellt. Bei niedrigeren Bit-Übertragungsraten, beispielsweise unterhalb von 16 kB/s, ergibt sich eine Verschlechterung der Gesamtqualität, die sich durch eine bestimmte, sprachkorrelierte "Brodel"-Störung im rekonstruierten Sprachsignal zeigt. Zur Verbesserung der Gesamtqualität ist es erforderlich, die Feinstruktur des Transformationsspektrums im Spektralschätzwert für die niedrigeren Bitraten darzustellen.
Der Erfindung liegt die Aufgabe zugrunde, die Sprachsignal-Codierschaltung der im Oberbegriff des Patentanspruchs 1 genannten Art und das Sprachsignal-Codierverfahren der im Oberbegriff des Patentanspruchs 9 genannten Art so weiterzubilden, daß die Übertragungsbitrate niedriger oder die Qualität des rekonstruierten Sprachsignals besser wird. Die Lösung dieser Aufgabe ist im kennzeichnenden Teil der Patentansprüche 1 und 9 angegeben.
Mit der vorliegenden Erfindung wird die erläuterte Sprachsignalverschlechterung bei der adaptiven Transformations-Sprachverarbeitung durch Verwendung eines aus dem Vokaltrakt abgeleiteten Formant-Spektralschätzwerts der Transformations-Koeffizientensignale für den Sprachabschnitt und eines Tonhöhen- Erregungs-Spektralschätzwerts für die Transformations-Koeffizientensignale des Sprachabschnitts zur Bereitstellung der erforderlichen Feinstruktur-Darstellung beseitigt. Parametersignale für die Bitverteilung und Schrittgrößenzuordnung der Transformations-Koeffizientensignale des Abschnitts werden aus den kombinierten Formant- und Tonhöhenerregungs- Spektralschätzwerten gewonnen, so daß die adaptive Quantisierung der Transformations-Koeffizientensignale die erforderliche Feinstruktur bei relevanten Spektralfrequenzen beinhaltet. Es ergibt sich eine verbesserte Sprachsignalübertragung, obwohl die Übertragungs-Bitrate niedriger ist.
Ein bevorzugtes Ausführungsbeispiel der Erfindung ist eine Sprachsignal-Codierschaltung (Sprachsignal-Verarbeitungsanordnung), bei der ein Sprachsignal mit einer vorbestimmten Rate abgetastet wird und die Abtastungen in Blöcke von Sprachabtastungen unterteilt werden. Aus je einem Block von Sprachabtastungen wird eine Gruppe von diskreten Frequenzebenen-Transformations- Koeffizientensignalen gewonnen. Jedes Koeffizientensignal ist einer vorbestimmten Frequenz zugeordnet. Unter Ansprechen auf die Gruppe von diskreten Transformations-Koeffizientensignalen wird eine Gruppe von Adaptionssignalen für den Block erzeugt. Die diskreten Transformations-Koeffizientensignale werden mit den Adaptionssignalen zur Bildung einer Gruppe von adaptiv quantisierten Transformations-Koeffizienten-Codesignalen kombiniert, die den Block darstellen. Die Adaptionssignalbildung umfaßt die Erzeugung einer Gruppe von Signalen, die das Formantspektrum der Koeffizientensignale des Blocks darstellen, und die Erzeugung einer Gruppe von Signalen, die das Tonhöhenerregungsspektrum der Koeffizientensignale des Blocks darstellen. Die Formantspektrumsignalgruppe des Blocks wird mit der Tonhöhenerregungsspektrum-Signalgruppe des Blocks kombiniert, um eine Gruppe von Tonhöhenerregungs- Spektralpegelsignalen zu erzeugen. Unter Ansprechen auf diese Pegelsignale werden die Adaptionssignale gebildet.
Ein Signal, das die Autokorrelation der Transformations-Koeffizientensignale des Blocks darstellt, wird erzeugt. Unter Ansprechen auf das Autokorrelationssignal wird für jede Transformations-Koeffizientensignalfrequenz ein Formant-Spektralpegelsignal und ein Tonhöhenerregungs-Spektralpegelsignal erzeugt. Jedes Transformations-Koeffizientensignalfrequenz- Formant-Spektralpegelsignal wird mit dem Transformations- Koeffizientensignalfrequenz-Tonhöhenerregungs-Spektralpegelsignal kombiniert, wodurch für jedes diskrete Transformations-Koeffizientensignal ein tonhöhengesteuertes Erregungsspektralpegelsignal erzeugt wird.
Die Erzeugung des Tonhöhenerregungs-Spektrumsignals beinhaltet die Bildung eines Impulsfolgensignals, das die Tonhöhenerregung der Transformations-Koeffizientensignale des Blocks darstellt, und die Erzeugung einer Gruppe von Signalen, die je den Tonhöhenerregungspegel für eine Transformations- Koeffizientensignalfrequenz darstellen.
Eine Gruppe von Signalen, die die Vorhersageparameter der Transformations-Koeffizientensignale des Blocks darstellen, wird unter Ansprechen auf das Autokorrelationssignal des Blocks erzeugt, und ein Formant-Spektralpegelsignal wird aus den Vorhersageparametersignalen des Blocks für jede Transformations- Koeffizientensignalfrequenz gebildet.
Das Impulsfolgensignal, welches die Tonhöhenerregung angibt, wird unter Ansprechen auf das Autokorrelationssignal des Blocks durch Bestimmung eines Signals erzeugt, das dem Maximalwert des Autokorrelationssignals entspricht, sowie eines Tonhöhen-Periodensignals, das dem Zeitpunkt für das Auftreten des Maximalwertes entspricht. Es wird ein Tonhöhen-Gewinnsignal entsprechend dem Verhältnis des Maximalwertes zum Anfangswert des Autokorrelationssignals gebildet. Das Impulsfolgensignal, das die Tonhöhenerregung angibt, wird unter Ansprechen auf sowohl das Tonhöhengewinnsignal als auch das Tonhöhenperiodensignal erzeugt.
Die adaptiv quantisierten Transformations-Koeffizienten-Codesignale werden mit den Vorhersageparametern des Autokorrelationssignals des Blocks und den Tonhöhenperioden- und Tonhöhengewinnsignalen multiplexiert. Das multiplexierte Signal wird über einen Digitalkanal übertragen. Ein Empfänger demultiplexiert das übertragene Signal und decodiert adaptiv die adaptiv quantisierten Transformations-Koeffizientensignale unter Ansprechen auf die Tonhöhenerregungs-Spektralpegelsignale, die aus den übertragenen Vorhersageparametersignalen, dem festgestellten Tonhöhengewinnsignal und dem festgestellten Tonhöhenperiodensignal gebildet sind. Unter Ansprechen auf die adaptiv decodierten Transformations-Koeffizienten wird eine Folge von Sprachabtastungen erzeugt, die ein Abbild der ursprünglichen Sprachabtastungen sind.
Unter Ansprechen auf die Tonhöhenerregungs-Spektralpegelsignale werden für jede erste Signalfrequenz ein Bitzuordnungssignal und ein Schrittgrößen-Steuersignal erzeugt. Die Bitzuordnungs- und Schrittgrößen-Steuersignale bilden die Adaptionssignale zur adaptiven Quantisierung der ersten Signale.
Jedes erste Signal stellt einen diskreten Cosinus-Transformationskoeffizienten für eine vorgegebene Frequenz dar und jedes adaptiv quantisierte, diskrete Transformations-Codesignal ist ein adaptiv quantisiertes, diskretes Cosinus-Transformations­ koeffizienten-Codesignal.
Nachfolgend soll das bevorzugte Ausführungsbeispiel der Erfindung anhand der Zeichnung beschrieben werden. Es zeigt
Fig. 1 das allgemeine Blockschaltbild eines Sprachsignalcodierers nach der Erfindung;
Fig. 2 das allgemeine Blockschaltbild eines Sprachsignaldecodierers nach der Erfindung;
Fig. 3 das genauere Blockschaltbild eines in den Schaltungen nach Fig. 1 und 2 verwendeten Taktgebers sowie des Pufferregisters gemäß Fig. 1;
Fig. 4 das genauere Blockschaltbild einer diskreten Cosinus- Transformationsschaltung für die Schaltung gemäß Fig. 1;
Fig. 5 das genauere Blockschaltbild einer Autokorrelationsschaltung für die Schaltung gemäß Fig. 1;
Fig. 6 das genauere Blockschaltbild einer Tonhöhen-Analysierschaltung für die Schaltung nach Fig. 1;
Fig. 7 und 8 das genauere Blockschaltbild eines Tonhöhen- Spektralpegelgenerators für die Schaltungen nach Fig. 1 und 2;
Fig. 9 das genauere Blockschaltbild des Formant-Spektralpegelgenerators für die Schaltungen nach Fig. 1 und 2;
Fig. 10 und 11 das genauere Blockschaltbild einer Normalisierschaltung für die Schaltung nach Fig. 1;
Fig. 12 das genauere Blockschaltbild der inversen Cosinus- Transformationsschaltung für die Schaltung nach Fig. 2;
Fig. 13 das Blockschaltbild einer digitalen Prozessoranordnung für die Schaltung nach Fig. 1 und 2;
Fig. 14 ein Flußdiagramm für die Bit-Verteilungsoperationen der Schaltungen nach Fig. 1 und 2;
Fig. 15 das genauere Blockschaltbild des DCT-Decoders, der in der Schaltung nach Fig. 2 verwendet wird;
Fig. 16, 17, 18 und 19 Kurvenformen zur Erläuterung der Arbeitsweise der Schaltungen nach Fig. 1 und 2;
Fig. 20 ein genaueres Blockschaltbild der Normalisierschaltung für die Schaltung nach Fig. 2.
Gemäß Fig. 1 wird ein Sprachsignal s(t) aus einem Wandler 100 gewonnen, der ein Mikrophon oder eine andere Sprachsignalquelle sein kann. Das Sprachsignal s(t) wird an eine Filter- und Abtastschaltung 101 gegeben, die ein Tiefpaßfilter für das Signal s(t) darstellt und das gefilterte Sprachsignal mit einer vorbestimmten Rate, beispielsweise 8 kHz, abtastet, die durch in der Kurvenform 1901 in Fig. 19 dargestellte Abtasttaktimpulse CLS aus dem Taktgeber 142 gesteuert wird. Die Sprachabtastungen s(n) vom Abtaster 101 gelangen zu einem Analog-Digitalwandler 103, der ein digitalcodiertes Signal X(n) für jede Sprachsignalabtastung s(n) liefert. Ein Pufferregister 105 nimmt die Folge von X(n) codierten Signalen vom Analog-Digitalwandler 103 auf und speichert dann einen Block von N Signalen X (0), X (1), . . ., X(N-1) unter Steuerung von Block-Taktimpulsen CLB vom Taktgeber 140, die in der Kurvenform 1903 in Fig. 19 zu den Zeitpunkten t₀ und t₁₁ gezeigt sind.
Der Taktgeber 142 und das Pufferregister 105 sind genauer in Fig. 3 dargestellt. Gemäß Fig. 3 weist der Taktgeber 140 einen Impulsgenerator 310 auf, der kurze CLS-Impulse mit vorbestimmter Rate, beispielsweise 1/(8 kHz), liefert. Die CLS-Impulse gelangen zu einem Zähler 312, der eine Folge von N, beispielsweise 256, CLA-Adressencodierungen und einen CLB-Taktimpuls am Ende jedes N-ten, beispielsweise 256ten, CLS-Impuls liefert. Die CLA-Adressencodierungen werden an den Adresseneingang eines Wählers 320 im Pufferregister 105 gegeben. Unter Ansprechen auf jeden durch eine Verzögerungseinrichtung 326 verzögerten CLS-Taktimpuls gibt der Wähler 320 nacheinander einen Impuls an den Takteingang von Zwischenregistern 322-0 bis 322-N-1, so daß die codierten Signale X(n) vom Analog-Digitalwandler 103 in Blöcke von N=256 Codierungen X (0), X (1), . . ., X(N-1) aufgeteilt werden. Es wird also das erste codierte Sprachabtastsignal X (0) eines Blocks unter Ansprechen auf den ersten CLS-Impuls des Blocks im Zwischenregister 322-0 gespeichert. Das zweite Sprachabtastsignal X (1) wird unter Ansprechen auf den zweiten CLS-Impuls des Blocks im Zwischenregister 322-1 abgelegt, und das letzte Sprachabtastsignal X(N-1) wird unter Ansprechen auf den letzten CLS-Impuls des Blocks in das Zwischenregister 322-N-1 gegeben.
Nach dem letzten CLS-Impuls des Blockes gibt der Zähler 312 einen CLB-Impuls ab. Dieser Impuls gibt die Signale X (0), X (1), . . ., X(N-1) in den Zwischenregistern 322-0 bis 322-N-1 an die Zwischenregister 324-0 bis 324-N-1. Die Blocksignale X (0), X (1), . . ., X(N-1) werden während der nächsten Folge von 256 CLS-Impulsen in den Zwischenregistern 324-0 bis 324-N-1 gespeichert, während die nächsten Blocksignale seriell in die Zwischenregister 322-0 bis 322-N-1 eingegeben werden. Auf diese Weise steht jeder Block codierter Sprachabtastsignale am Ausgang des Pufferregisters 105 für 256 Abtastimpulszeiten zur Verfügung.
Die Signale X (0), X (1), . . ., X(N-1) vom Pufferregister 105 gelangen parallel zur Cosinus-Transformationsschaltung 105, die die Block-Sprachabtastcodierungen in eine Gruppe von N diskreten Cosinus-Transformations-Koeffizientensignalen X DCT (0), X DCT (1), . . ., X DCT (N-1) bei in gleichem Abstand angeordneten Frequenzen
umformt, wobei k=0, 1, . . . N-1. Diese Transformation erfolgt durch Bildung einer schnellen Fourier-Transformation an 2N Punkten für den Block von Sprachsignalabtastungen, so daß die schnellen Fourier- Transformationskoeffizienten (Fast Fourier Transform Coefficients) Re X FFT (0), Re X FFT (1), . . ., Re X FFT (N-1) und Im X FFT (0), Im X FFT (1), . . ., Im X FFT (N-1) zur Verfügung stehen. Re bedeutet den Realteil, und Im bedeutet den Imaginärteil für jedes Signal X FFT (n). Das diskrete Cosinus-Transformationssignal ist dann:
und
Für k = 1, 2, . . ., N-1.
Die Cosinus-Transformationsschaltung 107 ist in Fig. 4 genauer dargestellt. Die schnelle Fourier-Transformationsschaltung 403 in Fig. 4 kann beispielsweise eine Schaltung gemäß US-PS 35 88 460 (28. 6. 71) beinhalten. Gemäß Fig. 4 nimmt ein Multiplexer 401 die Sprachabtastsignalcodierungen X (0), X (1), . . ., X(N-1) vom Pufferregister 105 auf. Da die schnelle Fourier-Transformationsschaltung (FFT-Schaltung) 403 eine 2N-Punktanalyse der zugeführten Signale durchführt, wird ein Null-Codesignal vom Konstantgenerator 450 an die übrigen N Eingänge des Multiplexers 401 gegeben. Unter Ansprechen auf die Rückflanke des CLB-Taktimpulses, der die Signale X (0), X (1), . . ., X(N-1 an den Eingängen des Multiplexers 401 verfügbar macht, erzeugt der Impulsgenerator 430 einen Steuerimpuls S₀, der den Zähler 420 auf Null zurückstellt. Zu diesem Zeitpunkt wird das Flip-Flop 427 gesetzt, so daß ein A₁-Ausgangssignal hoher Spannung (H) zur Verfügung steht.
Der Impulsgenerator 434 wird durch die Rückflanke des Impulses S₀ getriggert, wodurch ein Steuerimpuls S₁ erzeugt wird. Der Impuls S₁ vom Generator 434 gelangt an den Takteingang der FFT-Schaltung 403. Der Multiplexer 401 wird durch den Ausgangscode des Zählers 420 für den Zählstand Null adressiert, so daß das Sprachsignal X (0) an den Eingang der FFT-Schaltung 403 gelangt. Abhängig vom Impuls S₁ wird das Signal X (0) in die FFT-Schaltung 403 eingegeben und dort kurzzeitig gespeichert. Das Steuersignal S₂ wird vom Impulsgenerator 436 unter Ansprechen auf die Rückflanke des Impulses S₁ erzeugt und schaltet den Zähler 420 in seinen nächsten Zustand weiter. Jetzt gelangt das Signal X (1) an den Eingang der FFT-Schaltung 403 über den Multiplexer 401. Das Ausgangssignal des Zählers 420 wird außerdem an einen Komparator 422 angelegt, wo es mit dem 2N-Konstantsignal vom Konstantgenerator 450 verglichen wird. Da der Zähler 420 im ersten Zustand ist, der kleiner ist als 2N, so ist der Ausgang J₁ des Komparators 422 auf H, und das UND-Gatter 441 wird betätigt, wenn der Impulsgenerator 438 durch die Rückflanke des Impulses S₂ getriggert wird. Auf diese Weise gewinnt man eine weitere Folge von Impulsen S₁ und S₂ vom Impulsgenerator 434 bzw. 436. Unter Ansprechen auf die Impulse S₁ und S₂ wird das Signal X (1) in die FFT-Schaltung 403 über den Multiplexer 401 eingegeben und der Zähler 420 auf seinen nächsten Zustand weitergeschaltet.
Die Folge von Impulsen S₁ und S₂ wiederholt sich, bis alle Eingangssignale des Multiplexers 401 einschließlich der N Null-Codeeingangssignale in die FFT-Schaltung 403 eingegeben sind. Wenn der Zähler 420 auf den Stand 2N+1 weitergeschaltet wird, gelangt der Ausgang J₂ des Komparators 422 auf H, und das UND-Gatter 440 wird durch das Ausgangssignal des Impulsgenerators 438 betätigt. Abhängig vom A₁-Signal H vom Flip-Flop 427 und dem Ausgangssignal H des betätigten Gatters 440 liefert das UND-Gatter 443 ein S FFT -Signal H, das an die FFT-Schaltung 403 gegeben wird. Unter Ansprechen auf das S FFT -Signal erzeugt die FFT-Schaltung 403 die Signale
Re X FFT (0), Re X FFT (1), . . ., Re X FFT (N-1) und
Im X FFT (0), Im X FFT (1), . . ., Im X FFT (N-1)
und speichert diese Signale. Am Ende der Berechnung erzeugt die FFT-Schaltung 403 ein Signal E₁, das das Flip-Flop 427 zurückstellt und den Impulsgenerator 430 triggert.
Der Impuls S₀ vom Generator 430 stellt den Zähler 420 in den Zustand 0 zurück, und zwar als Vorbereitung auf die Übertragung der Signale Re X FFT (k) und Im X FFT (k) (k=0, 1, . . . N-1) an die Zwischenregister 407-0 bis 408-N-1. Während jeder der sich wiederholenden Folgen von Steuerimpulsen S₁ und S₂ adressiert der Wähler 405 das durch den Stand des Zählers 420 bezeichnete Zwischenregister. Der Impuls S₁ liest das Signal, beispielsweise Re X FFT (1), aus der FFT-Schaltung 403 und gibt es auf die Leitung 406. Der Impuls S₁ wird über den Wähler 405 an den Takteingang des adressierten Zwischenregisters 407-1 gegeben und das Signal Re X FFT (1) in dieses Zwischenregister eingegeben. Der nachfolgende Impuls S₂ schaltet den Zähler 420 weiter, so daß der nächste Impuls S₁ das Signal Im X FFT (1) ausliest, das dann unter Steuerung des Wählers 405 in das Zwischenregister 408-1 eingegeben wird.
Eine Arithmetikeinheit 419 nimmt die Signale von den Zwischenregistern 407-0 bis 408-N-1 auf und erzeugt eine Gruppe von diskreten Cosinus-Transformationskoeffizientensignalen (Discrete Cosine Transform Coefficient Signals) X DCT (0), X DCT (1), . . ., X DCT (N-1) entsprechend Gleichung 1) und 2).
Für jedes Signalpaar Re X FFT (k), Im X FFT (k), mit Ausnahme von k=0, wird Re X FFT (k) mit einer Konstanten
und Im X FFT (k) mit einer Konstanten
multipliziert. Für k=1 bildet der Multiplizierer 401-1 das Signal
und der Multiplizierer 411-1 das Signal
Die Ausgangssignale der Multiplizierer 410-1 und 411-1 werden im Addierer 412-1 addiert, und das Ausgangssignal des Addierers 412-1 wird im Multiplizierer 414-1 mit einer Konstanten
multipliziert. Das Ausgangssignal des Multiplizierers 414-1 ist X DCT (1), nämlich der Transformationskoeffizient bei der Frequenz
Nachdem das Signal Im X FFT (N-1) in das Zwischenregister 408-N-1 gegeben ist und das Signal X DCT (N-1) am Ausgang des Multiplizierers 414-N-1 erscheint, wird der Zähler 420 durch einen Impuls S₂ auf den Stand 2N+1 weitergeschaltet. Der Komparator 422 erzeugt ein J₂-Signal H, und das UND-Gatter 440 wird durch den Ausgangsimpuls des Impulsgenerators 438 betätigt. Da der Ausgang A₂ des Flip-Flops 427 zu diesem Zeitpunkt auf H ist, wird das UND-Gatter 444 ebenfalls betätigt, so daß es zum Zeitpunkt t₁ einen Impuls E DCT (Kurvenform 1905 in Fig. 19) liefert. Der Impuls E DCT tritt am Ende der Erzeugung der Transformations­ koeffizientensignale für die Sprachabtastung X (0), X (1), . . ., X(N-1) in der Cosinus-Transformationsschaltung 107 auf. Ein typisches Spektrum für die diskrete Cosinus-Transformation eines Eingangs-Sprachabtastblocks zeigt die Kurvenform 1601 in Fig. 16.
Jedes DCT-Transformationskoeffizientensignal weist eine aus den bekannten Parametern von Sprachsignalen voraussagbare Komponente sowie eine nicht voraussagbare Komponente auf. Die voraussagbare Komponente kann geschätzt und mit einer wesentlich kleineren Bitrate als die Transformationskoeffizientensignale selbst übertragen werden. Die voraussagbare Komponente gewinnt man durch Bilden eines Voraussageparameter-Schätzwertes aus den DCT-Transformationskoeffizienten des Blocks. Dieser Schätzwert entspricht dem Formant-Spektrum der DCT-Transformationskoeffizientensignale des Blocks. Außerdem wird ein Tonhöhenerregungs-Schätzwert in Form eines Signals gebildet, das die Tonhöhenperiode des Blocks darstellt, sowie ein Tonhöhengewinnsignal, das die Form der Tonhöhenerregungs-Kurvenform angibt. Diese Formant- und Tonhöhenerregungsparameter liefern einen genauen Schätzwert für die voraussagbaren Spracheigenschaften im DCT-Spektrum des Blocks.
Die vorausgesagte Komponente und die DCT-Transformationskoeffizientensignale, d. h. die Voraussageparameter und die Tonhöhenperioden- und Tonhöhengewinnsignale, werden codiert und getrennt übertragen. Demgemäß kann die vorausgesagte Komponente jedes Transformationskoeffizientensignals X DCT (k) ausgeschieden werden, und die Übertragungsrate für den nicht voraussagbaren Teil von X DCT (k) läßt sich wesentlich verringern. Es wird dadurch die Gesamtbitrate, die zur Übertragung des Sprachsignals erforderlich ist, herabgesetzt. Da der Schätzwert in dem vorausgesetzten Teil des Signals die Tonhöhenerregungsinformation sowie die Formant-Information des Blocks enthält, ergibt sich eine digitale Sprachübertragung verhältnismäßig hoher Qualität für die niedrige Bitrate.
In der Schaltung gemäß Fig. 1 werden die Signale X DCT (k) des Blocks über die Verzögerungsschaltung 108 an den Quantisierer 109 gegeben, in dem die vorausgesagte Komponente jedes Koeffizientensignals entfernt wird. Die vorausgesagte Komponente wird erzeugt mit Hilfe eines Autokorrelators 113, eines sogenannten Parcor-Koeffizientengenerators 115 (Parcor von parameter computer=Parameterrechner), der die Voraussageparameter für den Block erzeugt, und einen Tonhöhenanalysator 117, der die Tonhöhenerregungs-Parametersignale des Blocks bildet, nämlich die Tonhöhenperioden- und Tonhöhengewinnsignale. Die sich ergebenden Voraussage- und Tonhöhenerregungs-Parametersignale werden im Codierer 120 codiert und im Multiplexer 112 mit den adaptiv quantisierten DCT-Transformations­ koeffizientensignalen vom Quantisierer 109 multiplexiert. Die sich ergebenden multiplexierten Signale werden dann auf den digitalen Übertragungskanal 140 gegeben.
Der Autokorrelator 113, der unter Ansprechen auf die DCT-Koeffizientensignale von der Cosinus-Transformationsschaltung 107 ein Autokorrelationssignal erzeugt, ist genauer in Fig. 5 dargestellt. Der Autokorrelator 113 liefert eine Gruppe von Signalen
Die Schaltung gemäß Fig. 5 erzeugt die Autokorrelationssignale gemäß
wobei
Gemäß Fig. 5 wird jedes Signal X DCT (0), X DCT (1), . . ., X DCT (N-1) des Blocks in den Multiplizierer 501-0 bis 501-N-1 mit sich selbst multipliziert. Die sich ergebenden quadrierten Signale gelangen in der durch Gleichung 5) für eine inverse 2N-Punkt-Fourier-Transformation vorgeschriebenen, speziellen Reihenfolge über den Multiplexer 503 an die IFFT-Schaltung 505. Die aus der Schaltung 505 gemäß Gleichung 4) gewonnenen, inversen Transformationssignale werden an Zwischenregister 509-0 bis 509-N-1 gegeben, so daß die Autokorrelationssignale R (0), R (1), . . ., R(N-1) des Blocks in diesen Zwischenregistern gespeichert sind.
Unter Ansprechen auf die Rückflanke des Signals E DCT von der Cosinus-Transformationsschaltung 107 erzeugt der Impulsgenerator 530 einen Steuerimpuls S₃, der den Zähler 520 auf Null zurückstellt. Außerdem wird das Flip-Flop 527 durch das Signal E DCT eingestellt, so daß ein A₃-Signal H gewonnen wird. Das Ausgangssignal des Zählers 520 für den Stand Null gelangt an den Multiplexer 503, der das vom Multiplizierer 501-0 zur IFFT-Schaltung 505 überträgt. Der Impulsgenerator 534 wird durch die Rückflanke des Impulses S₃ getriggert, und sein Steuerimpuls S₄ veranlaßt die zeitweilige Speicherung des Signals in der IFFT-Schaltung 505.
Der vom Impulsgenerator 536 in an der Rückflanke des Impulses S₄ erzeugte Steuerimpuls S₅ schaltet den Zähler 520 in seinen ersten Zustand. Der Zustand des Zählers 520 wird im Komparator 521 mit der Konstanten 2N verglichen. Da der Zustand des Zählers 520 kleiner als 2N ist, wird ein J₃-Signal H erzeugt, und das UND-Gatter 541 wird betätigt, wenn ein Impuls vom Impulsgenerator 538 ankommt. Unter Ansprechen auf das Ausgangssignal H des betätigten Gatters 541 wird eine Folge von Impulsen S₄ und S₅ erzeugt. Diese Folge bewirkt, daß das Ausgangssignal des Multiplizierers 501-1 in die IFFT-Schaltung 505 gegeben wird und den Zähler 520 in seinen nächsten Zustand weiterschaltet.
Nachdem das Signal in die IFFT-Schaltung 505 eingegeben worden ist, wird entsprechend Gleichung 5) unter Ansprechen auf die nächste Folge von Impulsen S₄ und S₅ ein Konstantsignal 0 in die Schaltung 505 geführt. Da der Multiplizierer 501-N-1 an den Eingang N+1 des Multiplexers 503 angeschaltet ist, gelangt das Signal vom Multiplizierer 501-N-1 als nächstes Signal in die IFFT-Schaltung 505, die 2N Eingangssignale benötigt.
Unter Ansprechen auf die nächsten N-2 Paare von Impulsen S₄ und S₅ werden die Ausgangssignale der Multiplizierer 501-N-2 bis 501-0 gemäß Gleichung 5) in umgekehrter Reihenfolge in die IFFT-Schaltung 503 eingegeben. Wenn der Zähler 520 im 2N-ten Zustand ist, wird das Signal gemäß Gleichung 5) während eines Impulses S₄ in die IFFT-Schaltung 505 gegeben. Der nächste Impuls S₅ schaltet den Zähler 520 in den Zustand 2N+1, und der Komparator 521 liefert ein J₄-Signal H. Es wird dann das UND-Gatter 540 durch den Ausgangsimpuls des Impulsgenerators 538 betätigt. Unter Ansprechen auf das A₃-Signal H vom Flip-Flop 527 und das Ausgangssignal des betätigten Gatters 540 erscheint ein S IF ₁-Signal H am Ausgang des UND-Gatters 543. Das Signal S IF ₁ wird an die IFFT-Schaltung 505 gegeben, um die Erzeugung der Signale R(n) gemäß Gleichung 4) einzuleiten.
Nach Bildung des Signals R(N-1) in der IFFT-Schaltung 505 erzeugt diese Schaltung ein Signal E IF ₁. Dieses Signal E IF ₁ stellt das Flip-Flop 527 zurück, so daß ein A₄-Signal H erzeugt wird. Das Signal E IF ₁ triggert außerdem den Impulsgenerator 530. Der aus dem Impulsgenerator 530 gewonnene Steuerimpuls S₃ stellt den Zähler 520 auf Null zurück. Das Ausgangssignal des Zählers 520 im Zustand Null adressiert die Leitung 511, die dann das Zwischenregister 509-0 betätigt. Die Rückflanke des Impulses S₃ triggert den Impulsgenerator 534, und der daraufhin erzeugte Steuerimpuls S₄ bewirkt, daß das Signal R (0) von der IFFT-Schaltung 505 über die Leitung 511 in das Zwischenregister 509-0 eingegeben wird. Der unter Ansprechen auf die Rückflanke des Impulses S₄ vom Impulsgenerator 536 erzeugte Impuls S₅ schaltet den Zähler 520 in seinen nächsten Zustand. Der Ausgang J₃ des Komparators 521 ist auf H, so daß das UND-Gatter 541 betätigt wird, wenn der Impulsgenerator 538 getriggert wird. Auf diese Weise wiederholt sich die Folge von Impulsen S₄ und S₅, bis der Zähler 520 in den Zustand 2N+1 weitergeschaltet ist.
Die Folge von Signalen R (0), R (1), . . ., R(N-1) wird durch die sich wiederholende Folge von Impulsen S₄ und S₅ in die Zwischenregister 509-0 bis 509-N-1 eingegeben. Nach Lieferung eines J₄-Signals H durch den Komparator 521 unter Ansprechen auf den (2N-1)-ten Impuls S₅ wird das UND-Gatter 540 betätigt und ein Impuls E AC (Kurvenform 1907 in Fig. 19) zum Zeitpunkt t₂ vom UND-Gatter 544 gewonnen. Der Impuls E AC gibt an, daß die Autokorrelationssignale R (0), R (1), . . ., R(N-1) gespeichert sind, so daß die Voraussageparameter für den Block und die Tonhöhen- und Tonhöhengewinnsignale des Blocks im Parameterrechner 115 und im Tonhöhenanalysator 117 in Fig. 1 erzeugt werden können.
Der Parameterrechner (Parcor) 115 erzeugt eine Gruppe von p Parcor-Koeffizienten w₀, w₁, . . ., w p für jeden Block von Sprachabtastungen aus den ersten p (kleiner als N-1) Autokorrelationssignalen. Dabei kann p beispielsweise gleich 12 sein. Die Parcor-Koeffizienten geben den voraussagbaren Teil der Cosinus-Transformationskoeffizientensignale mit Bezug auf die Formanten des Sprachabschnittes für den Block an. Die w m Parcor-Parameter werden gewonnen gemäß der folgenden Gleichung:
wobei
Der Parameterrechner 115 kann die Verarbeitungsanordnung gemäß Fig. 13 enthalten, bei der der Prozessor 1309 die durch die Gleichung 6) verlangte Berechnung entsprechend Programmbefehlen durchführt, die im Festwertspeicher (ROM) 1305 gespeichert sind. Der Prozessor 1309 kann aus bekannten Prozessoranordnungen bestehen. Das Steuergerät 1307 verbindet den w m -Programmspeicher 1305 beim Auftreten des Signals E AC im Autokorrelator 113 mit dem Prozessor 1309. Entsprechend den permanent im Programmspeicher 1305 abgelegten Befehlen werden die ersten p Autokorrelationssignale in den Zwischenregistern 509-0 bis 509-p in Fig. 5 über die Leitung 1340 und die Eingangs-Ausgangs-Schnittstelle 1318 in den Schreib-Lese-Datenspeicher (RAM) 1316 eingegeben. Es werden dann im Zentralprozessor 1312 und im Arithmetikprozessor 1314 die Parcor-Koeffizientensignale w₀, w₁, . . ., w p erzeugt. Die Ausgangssignale w m werden in den Datenspeicher 1316 gegeben und dann über die Eingangs-Ausgangs-Schnittstelle 1318 zum w m -Speicher 1333 übertragen. Der Prozessor 1309 erzeugt außerdem ein E LA -Signal (Kurvenform 1909 in Fig. 19) zum Zeitpunkt t₄, wenn die Signale w m im Speicher 1333 verfügbar sind.
Die Tonhöhenerregungs-Koeffizientensignale werden im Tonhöhenanalysator 117 unter Ansprechen auf die Autokorrelationssignale R (0), R (1), . . ., R(N-1) vom Autokorrelator 113 erzeugt. Es werden zwei Tonhöhenerregungs-Parametersignale gebildet. Das erste Signal stellt das Verhältnis des maximalen Autokorrelationssignals R max zum anfänglichen Autokorrelationssignal R (0) dar, und das zweite Signal P entspricht dem Zeitpunkt für das Auftreten des Signals R max . Das Verhältnis P G =R max /R (0) (Tonhöhengewinn) und das Signal P (Tonhöhenperiode) werden dann zur Bildung eines Impulsfolgensignals verwendet, das die Tonhöhenerregung angibt.
Der Tonhöhenanalysator 117 ist genauer in Fig. 6 dargestellt. Gemäß Fig. 6 gibt der Multiplexer 601 unter Steuerung des Zählers 620 sequenziell die Signale R (0), R (1), . . ., R(N-1) vom Autokorrelator 113 zum Komparator 607. Der Komparator 607 stellt fest, ob das ankommende Signal R(n) größer ist als das vorhergehende Signal im Zwischenregister 603, so daß das maximale Autokorrelationssignal im Zwischenregister 603 gespeichert wird und der entsprechende Korrelationssignalindex im Zwischenregister 605 abgelegt wird. Das Verhältnis P G =R max /R (0) wird im Teiler 609 gebildet.
Unter Ansprechen auf das Signal E AC vom Autokorrelator 113 erzeugt der Impulsgenerator 630 ein Steuersignal S₆, das die Möglichkeit schafft, daß eine Konstante P min vom Konstantgenerator 650 in den Zähler 620 gegeben wird. P min entspricht der kürzesten Tonhöhenperiode, die für die Sprachsignal-Abtastrate erwartet wird, beispielsweise 20 Abtastungen bei einer Abtastrate von 8 kHz. Das Ausgangssignal des Zählers 620 wird an den Adresseneingang des Multiplexers 601 angelegt, so daß das entsprechende Korrelationssignal an den Komparator 607 und den Eingang des Zwischenregisters 603 gegeben wird. Der Impuls S₆ stellt außerdem das Zwischenregister 603 auf Null zurück, so daß das Ausgangssignal des Multiplexers 601 mit dem im Zwischenregister 603 gespeicherten Signal Null verglichen wird. Wenn das Signal vom Multiplexer 601 größer als Null ist, dann gelangt der Ausgang R₁ des Komparators 607 auf H. Wenn der Impulsgenerator 634 unter Ansprechen auf die Rückflanke des Impulses S₆ einen Impuls erzeugt, so liefert das UND-Gatter 635 ein Signal S₇, das das Multiplexer-Ausgangssignal in das Zwischenregister 603 einführt. Der Stand des Zählers 620 wird außerdem durch den Impuls S₇ in das Zwischenregister 605 eingegeben. Am Ende des Impulses vom Impulsgenerator 634 erzeugt der Impulsgenerator 636 einen Steuerimpuls S₈. Der Impuls S₈ schaltet den Zähler 620 in seinen nächsten Zustand, so daß das nächste Autokorrelationssignal vom Ausgang des Multiplexers 601 gewonnen wird.
Der Komparator 621 vergleicht den Stand des Zählers 620 mit einer aus dem Konstantgenerator 650 gewonnenen Konstante P max . Der Signalcode P max entspricht der längsten Tonhöhenperiode, die für die Sprachsignal-Abtastrate erwartet wird, beispielsweise 100 Abtastungen bei einer Abtastrate von 8 kHz. Solange das Ausgangssignal des Zählers 602 P max nicht übersteigt, ist der Ausgang I₁ des Komparators 621 auf H, und das UND-Gatter 641 wird durch das Ausgangssignal des Impulsgenerators 638 betätigt. Unter Ansprechen auf ein Ausgangssignal H des UND-Gatters 641 werden die Impulsgeneratoren 634, 636 und 638 nacheinander getriggert. Auf diese Weise wird der Inhalt des Zwischenregisters 603, der dem als maximal festgestellten Autokorrelationssignal entspricht, mit dem nächstfolgenden Autokorrelationssignal vom Multiplexer 601 verglichen. Das größere der beiden Autokorrelationssignale wird im Zwischenregister 603 gespeichert und der entsprechende Index in das Zwischenregister 605 gegeben. Nachdem das Signal I₁ des Komparators 621 auf H gegangen ist, befindet sich das maximale Autokorrelationssignal R max im Zwischenregister 603 und der entsprechende Index P im Zwischenregister 605. Der Ausgang des Teilers 609 liefert ein Signal P G =R max /R (0). Das I₂-Signal H wird zum UND-Gatter 640 gegeben, so daß dieses Gatter einen Impuls E PA (Kurvenform 1911 in Fig. 19) zum Zeitpunkt t₃ erzeugt, zu dem der Impulsgenerator 638 unter Ansprechen auf einen S₈-Impuls einen Impuls liefert.
Nachdem beide Signale E LA und E PA vorhanden sind, wird der Codierer 120 in Fig. 1 betätigt. Die Signale w₁, w₂, . . ., w p vom Parameterrechner 115 und die Signale P G und P vom Tonhöhenanalysator 117 werden im Codierer 120 in Vorbereitung ihrer Übertragung über den Multiplexer 112 und den Übertragungskanal 140 codiert. Die codierten Signale am Ausgang des Codierers 120 werden außerdem an den Decoder 122 gegeben, der die codierten Signale w m , P G und P abhängig von einem Signal E C (Kurvenform 1913 in Fig. 19) vom Codierer 120 decodiert. Wenn diese Signale decodiert sind, liefert der Decoder 122 ein Signal E D (Kurvenform 1915 in Fig. 19) zum Zeitpunkt t₆, das den LPC-Generator 124 und den Tonhöhenerregungs- Spektralpegelgenerator 128 erregt. Der LPC-Generator 124 wandelt die decodierten w m ′-Signale vom Decoder 122 in lineare Voraussagekoeffizienten a m um. Die Signale a m gelangen zum Formant-Spektralpegelgenerator 126, der ein Spektralpegelsignal w F (k) für jede diskrete Cosinus-Transformationskoeffizientenfrequenz aus den Signalen a m des Blocks erzeugt.
Die Verarbeitungsanordnung gemäß Fig. 13 kann außerdem benutzt werden, um die decodierten Signale w m ′ in lineare Voraussagekoeffizientensignale a m umzuwandeln. Gemäß Fig. 13 veranlaßt das Signal E D vom Decoder 122 die Steuerung 1307, den LPC-Programmspeicher 1303 mit dem Prozessor 1309 zu verbinden. Der Speicher 1303 ist ein Festwertspeicher, der permanent eine Gruppe von Befehlscodierungen beinhaltet, die eine Transformation der decodierten w m ′-Signale in lineare Voraussagesignale a m gemäß Gleichung 6) und 7) ermöglichen. Abhängig vom Signal E D werden die Befehlscodierungen aus dem Speicher 1303 über die Steuerschnittstelle 1310 zum Zentralprozessor 1312 übertragen und bewirken, daß die decodierten Signale w m ′ vom Decoder 122 über die Eingangs-Ausgangs-Schnittstelle 1318 in den Datenspeicher 1316 gegeben werden. Im Zentralprozessor 1312 und im Arithmetikprozessor 1314 werden dann die Signale a m erzeugt, in den Datenspeicher 1316 eingegeben und von dort über die Eingangs-Ausgangs-Schnittstelle 1318 zum LPC-Speicher 1332 übertragen. Wenn alle Signale a m zum Speicher 1332 übertragen worden sind, erzeugt der Zentralprozessor 1312 ein Signal E LPC (Kurvenform 1917 in Fig. 19), das über die Eingangs-Ausgangs-Schnittstelle 1318 zum Zeitpunkt t₇ zum Formant-Spektralpegelgenerator 126 gelangt.
Die LPC-Signale a m vom Generator 124 stellen zwar die vorausgesagte Komponente des Sprachsignalblocks dar, müssen aber in die Frequenzebene transformiert werden, um die Übertragungsrate der Cosinus-Transformationskoeffizientensignale von der Verzögerungseinrichtung 108 zu minimieren. Diese Transformation wird im Formant-Spektralpegelgenerator 126 durchgeführt, der eine Folge von vorausgesagten Formant-Spektralpegelsignalen δ F (0), δ F (1), . . ., δ F (N-1) unter Ansprechen auf die linearen Voraussagekoeffizienten des Blocks vom Generator 124 erzeugt. Es wird für jede diskrete Cosinus- Transformationskoeffizientenfrequenz ein Formant-Spektralpegelsignal erzeugt. Die Kurvenform 1603 in Fig. 16 zeigt das Formantspektrum, das man aus dem diskreten Cosinus- Transformationsspektrum gemäß Kurvenform 1601 erhält. Der Formant-Spektralpegelgenerator 126 ist genauer in Fig. 9 dargestellt. Er liefert eine Gruppe von Spektralpegeln
die die vorausgesagten Formantwerte der diskreten Cosinus- Transformationskoeffizienten X DCT (0), X DCT (1), . . ., X DCT (N-1) darstellen.
Gemäß Fig. 9 werden die LPC-Signale a₀, a₁, . . ., a p vom LPC-Generator 124 an den Multiplexer 901 gegeben. Das E LPC -Signal vom Generator 124 veranlaßt den Impulsgenerator 930 zur Erzeugung eines Steuersignals S₉ und stellt außerdem das Flip-Flop 927 ein, so daß ein A₇-Signal H gewonnen wird. Der Impuls S₉ stellt den Zähler 920 auf Null zurück. Das Ausgangssignal des Zählers 920 im Zustand Null wird an den Multiplexer 901 gegeben, so daß das Signal a₀ am Eingang der FFT-Schaltung 903 erscheint. Der vom Impulsgenerator 934 an der Rückflanke des Impulses S₉ erzeugte Steuerimpuls S₁₀ gibt das Signal a₀ in die FFT-Schaltung 903 ein. Der Impuls S₁₀ triggert außerdem den Impulsgenerator 936, so daß ein Steuerimpuls S₁₁ erzeugt wird.
Der Impuls S₁₁ schaltet den Zähler 920 weiter, so daß das nächste Signal a m über den Multiplexer 901 zur FFT-Schaltung 903 gelangt. Der Komparator 921, der den Stand des Zählers 920 mit einem Code 2N vergleicht, liefert ein I₇-Signal H, da der Stand des Zählers 920 kleiner als 2N ist. Das UND-Gatter 941 wird durch das I₇-Signal H und den Impuls vom Impulsgenerator 938 betätigt, so daß eine weitere Folge von Impulsen S₁₀ und S₁₁ erzeugt wird.
Die Folge von Impulsen S₁₀ und S₁₁ wiederholt sich, und die linearen Voraussagekoeffizientensignale a₀ bis a p werden sequenziell in die FFT-Schaltung 903 eingegeben. Da in der FFT-Schaltung eine 2N-Punkt-Analyse zur Erzeugung der Spektralpegelfolge δ F (0), δ F (1), . . ., δ F (N-1) durchgeführt wird, sind 2N Eingangssignale für die FFT-Schaltung erforderlich. Nach Eingabe des Signals a p in die FFT-Schaltung 903 wird eine Folge von Null-Signalen eingegeben, bis der Zähler 920 auf den Stand 2N+1 weitergeschaltet ist. Zu diesem Zeitpunkt liefert der Komparator 921 ein J₈-Ausgangssignal H. Unter Ansprechen auf dieses Ausgangssignal und den Impuls vom Impulsgenerator 938 wird das UND-Gatter 940 betätigt. Da ein A₇-Signal H an einen Eingang des UND-Gatters 943 angelegt ist, wird das Gatter betätigt und erzeugt ein Signal S F 2. Das Signal S F 2 leitet die FFT-Operation in der Schaltung 903 ein, so daß eine Folge von Signalen Re X′ FFT (0), Im X′ FFT (0), Re X′ FFT (1), Im X′ FFT (1), . . ., Re X′ FFT (N-1), Im X′ FFT (N-1) erzeugt wird.
Bei Beendigung der FFT-Operation erzeugt die FFT-Schaltung 903 einen Impuls E₂, der das Flip-Flop 927 zurückstellt und den Impulsgenerator 930 triggert. Das Signal S₉ des Impulsgenerators 930 stellt den Zähler 920 auf Null zurück, wodurch der Wähler 905 mit dem Zwischenregister 907-0 verbunden wird. Unter Ansprechen auf den Impuls S₁₀ des Generators 934 an der Rückflanke des Impulses S₉ wird das Zwischenregister 907-0 betätigt, so daß das erste Ausgangssignal der FFT-Schaltung 903, nämlich das Signal Re X′ FFT (0), in das Zwischenregister eingegeben wird. Der Impuls S₁₁ vom Impulsgenerator 936 schaltet dann den Zähler 920 weiter, und die Folge von Impulsen S₁₀ und S₁₁ wiederholt sich, da der Komparator 921 ein J₇-Signal H liefert. Der nächste Impuls S₁₀ ermöglicht die Eingabe des Signals Im X′ FFT (0) von der FFT-Schaltung 903 in das Zwischenregister 908-0. Die Folge von Impulsen S₁₀ und S₁₁ wiederholt sich, bis der Zähler 920 den Stand 2N+1 erreicht. Zu diesem Zeitpunkt nimmt das Zwischenregister 908-N-1 das Signal Im X′ FFT (N-1) auf.
Das Ausgangssignal jedes Zwischenregisters in Fig. 9 wird an einen Multiplizierer gegeben, der das angelegte Signal quadriert. Beispielsweise wird das Signal Re X′ FFT (0) an beide Eingänge des Multiplizierers 910-0 gegeben, so daß das Signal [Re X′ FFT (0)]² zum Addierer 912-0 gelangt. Der Addierer 912-0 bildet die Summe
[Re X′ FFT (0)]² + [Im X′ FFT (0)]²
und die Arithmetikschaltung 914-0 liefert den Kehrwert der Quadratwurzel des Signals vom Addierer 912-0. Auf diese Weise wird das Signal δ F (0) erzeugt. Auf entsprechende Weise gewinnt man die Signale w F (1), δ F (2), . . ., δ F (N-1). Der Ausgang J₈ des Komparators 921 geht auf H, wenn der Zähler 920 auf den Stand 2N+1 weitergeschaltet wird. Unter Ansprechen auf das A₈-Signal H vom Flip-Flop 927 und das an das UND-Gatter 940 angelegte J₈-Signal H bewirkt der Impuls vom Impulsgenerator 938, daß das UND-Gatter 944 zum Zeitpunkt t₈ ein Signal E F (Kurvenform 1919 in Fig. 19) erzeugt. Das Signal E F gibt an, daß die Signale w F (0), δ F (1), . . ., δ p (N-1) zur Verfügung stehen.
Der Tonhöhenerregungs-Spektralpegelgenerator 128 nimmt die decodierten Signale P′ und P G ′ vom Decoder 122 auf und erzeugt daraufhin ein Impulsfolgensignal
Z(n) = P G ) k (9)
für n = kP + P/2, wobei
ist und k so gewählt ist, daß n <N-1 · Z(n)=0 für alle anderen Werte von n. Das Impulsfolgensignal ist in Fig. 18 gezeigt. Die Impulsfolge Z(n) wird dann in eine Folge von Tonhöhenerregungs-Pegelsignale w p (k) entsprechend der folgenden Gleichung umgewandelt:
wobei k=0, 1, . . ., N-1 ist. Auf diese Weise gewinnt man ein Tonhöhenerregungs-Spektralpegelsignal für jede diskrete Cosinus- Transformations-Koeffizientensignalfrequenz. Die Signale δ p (k) stellen die Tonhöhenerregungs-Spektralpegel für die DCT-Koeffizientenfrequenzen für den Block dar. Diese Spektralpegel δ P (k) sind aus P′ und P G ′ voraussagbar und können aus den DCT-Koeffizienten entfernt werden, um deren Übertragungsrate zu verringern.
Die Formant-Spektralpegel w F (k) werden durch die Tonhöhenerregungs- Spektralpegel δ p (k) modifiziert, um Adaptionssignale zu bilden, die zur Verringerung der Redundanz der DCT-Koeffizientensignale für den Block verwendet werden.
Der Tonhöhenerregungs-Pegelgenerator 128 ist genauer in den Fig. 7 und 8 gezeigt. Gemäß Fig. 8, in der Einrichtungen für die Erzeugung der Impulsfolge Z(n) dargestellt sind, wird der Impulsgenerator 730 durch das Signal E D vom Decoder 122 (Kurvenform 1915 in Fig. 19 zum Zeitpunkt t₆) getriggert, nachdem die Signale P′ und P G ′ verfügbar sind. Der Steuerimpuls S₁₂ vom Generator 730 bewirkt die anfängliche Einfügung eines Signals 1 in das Register 703 und die Rückstellung der Register 707 und 715-0 bis 715-N-1 auf Null. Die 1 : 2-Teilerschaltung 718 liefert ein Signal P′/2, das am Ausgang des Addierers 709 erscheint. Wenn der Impulsgenerator 734 den Steuerimpuls S₁₃ erzeugt, betätigt der Wähler 713 dasjenige Register der Register 715-1 bis 715-N-1, welches dem Adressencode P′/2 vom Addierer 709 entspricht, nämlich das Register 715-P′/2. Auf diese Weise wird das Signal 1 vom Register 703 in das Register 715-P′/2 eingegeben, um den ersten, in Fig. 18 gezeigten Impuls
zu liefern.
Der Steuerimpuls S₁₄ wird vom Impulsgenerator 736 bei Beendigung des Impulses S₁₃ erzeugt. Abhängig vom Impuls S₁₄ wird das Ausgangssignal P′ des Addierers 705 in das Register 707 und das Ausgangssignal P G ′ des Multiplizierers 701 in das Register 703 eingegeben. Der Addierer 709 erzeugt ein Signal P′/2+P′, das im Komparator 711 mit einem Code N-1 verglichen wird. Solange das Ausgangssignal des Addierers 709 kleiner oder gleich N-1 ist, betätigt ein N₁-Signal H vom Komparator 711 das UND-Gatter 741, so daß die Folge von Impulsen S₁₃ und S₁₄ sich wiederholt. Unter Ansprechen auf den nächsten Impuls S₁₃ vom Generator 734 wird das Ausgangssignal P G ′ des Registers 703 entsprechend der Adressierung durch das Ausgangssignal des Addierers 709 in das Register 715-P′/2+P′ eingegeben. Es wird demgemäß ein Impuls der Amplitude
gemäß Fig. 18 gespeichert. Der nächstfolgende Impuls S₁₄ erhöht das Register 703 auf P G ′², und das Register 707 auf P′/2+2P′.
Die nächste Folge von Impulsen S₁₃ und S₁₄ gibt das Signal P G ′² in das Register 715-P′/2+2P′ und erhöht die Register 703 und 707 auf P G ′³ bzw. P′/2+3P′. Die Folgen von Impulsen S₁₃ und S₁₄ setzten sich fort, so daß die Impulsfunktion gemäß Gleichung 9) in den Registern 715-0 bis 715-N-1 gespeichert wird. Wenn das Ausgangssignal des Addierers 709 den Wert N-1 übersteigt, liefert der Komparator 738 ein N₂-Signal H. Unter Ansprechen auf den Impuls vom Impulsgenerator 738 und das N₂-Signal H erzeugt das UND-Gatter 740 einen Impuls E IP , der die Beendigung der Impulsfolgenbildung Z(n) angibt.
Der Impuls E IP vom UND-Gatter 740 gelangt zur Schaltung gemäß Fig. 8, die die Tonhöhenerregungs-Spektralwertsignale δ p (0), δ p (1), . . ., δ p (N-1) aus dem Impulsfolgensignal Z(n) erzeugt. Unter Ansprechen auf den Impuls E IP liefert der Impulsgenerator 830 ein Steuersignal S₁₅, das den Zähler 820 auf Null zurückstellt. Der im Zustand Null vom Zähler 820 gelieferte Code adressiert den Multiplexer 801, so daß das Signal Z (0) von der Schaltung gemäß Fig. 7 an den Eingang der 2N-Punkt-FFT-Schaltung 803 angelegt wird. Der Impulsgenerator 834 wird durch den Impuls S₁₅ getriggert, und der daraufhin von ihm gelieferte Impuls S₁₆ ermöglicht die Eingabe des Signals Z (0) in die FFT-Schaltung 803. Der Impuls S₁₇ vom Impulsgenerator 838 schaltet dann den Zähler 820 weiter, so daß das Signal Z (1) über den Multiplexer 801 in die FFT-Schaltung 803 gegeben wird.
Das Ausgangssignal des Zählers 820 wird mit einem 2N-Code im Komparator 821 verglichen, und solange der Zähler 820 auf den Stand 2N+1 weitergeschaltet wird, liefert der Komparator ein N₃-Signal H. Das UND-Gatter 841 wird durch den Impuls vom Impulsgenerator 838 betätigt, und die Folge von Impulsen S₁₆ und S₁₇ wiederholt sich. Auf diese Weise wird die Gruppe von Signalen Z (0), Z (1), . . ., Z(N-1) in die FFT-Schaltung 803 eingegeben. Nachdem das Signal Z(N-1) in die FFT-Schaltung 803 gelangt ist, werden N Null-Signale für die 2N-Punkt-Operation eingegeben. Wenn der Zähler 820 auf den Stand 2N+1 weitergeschaltet ist, liefert der Komparator 821 ein Signal N₄.
Unter Ansprechen auf das Signal N₄ und den nächsten Impuls vom Generator 838 wird das UND-Gatter 840 betätigt. Da das Signal A₉ vom Flip-Flop 827 auf H ist, erzeugt das UND-Gatter 843 ein Signal S FP , die die Bildung der Transformationssignale Re X′′ FFT (0), Im X′′ FFT (0), Re X′′ FFT (1), Im X′′ FFT (1), . . ., Re X′′ FFT (N-1), Im X′′ FFT (N-1) in der FFT-Schaltung 803.
Nachdem das Signal Im X′′ FFT (N-1) in der FFT-Schaltung 803 vollständig gebildet ist, stellt ein Impuls E₃ der FFT-Schaltung das Flip-Flop 827 zurück und triggert den Impulsgenerator 830, dessen Impuls S₁₅ den Zähler 820 auf Null zurückstellt. Der nächste Impuls S₁₆ vom Impulsgenerator 834 betätigt über den Wähler 805 das Zwischenregister 807-0 und die FFT-Schaltung 803, so daß das Signal Re X′′ FFT (0) von der Schaltung 803 zum Zwischenregister 807-0 übertragen wird. Der Impuls S₁₇ vom Impulsgenerator 836 schaltet den Zähler 820 in seinen nächsten Zustand, und der Wähler 805 adressiert das Zwischenregister 808-0. Das N₃-Signal H vom Komparator 821 und der Impuls vom Generator 838 betätigen das UND-Gatter 841, so daß sich die Impulsfolge S₁₆ und S₁₇ wiederholt.
Unter Ansprechen auf den nächsten Impuls S₁₆ wird das Signal Im X′′ FFT (0) von der FFT-Schaltung 803 zum Zwischenregister 808-0 übertragen, und der Zähler 820 wird durch den folgenden Impuls S₁₇ in seinen nächsten Zustand weitergeschaltet. Die Wiederholung der Impulsfolge S₁₆ und S₁₇ gibt nacheinander die Signale Re X′′ FFT (k) und Im X′′ FFT (k) (k=0, 1, . . ., N-1) in die Zwischenregister 807-0 bis 808-N-1 ein, wie in Fig. 8 dargestellt.
Nachdem das Signal Im X′′ FFT (N-1) in das Zwischenregister 808-N-1 eingegeben ist, erscheinen die Spektralwertsignale δ p (0), δ p (1), . . ., δ p (N-1) am Ausgang der Quadratwurzelschaltungen 814-0 bis 814-N-1. Das Signal δ p (0) wird durch Quadrieren des Signals Re X′′ FFT (0) im Multiplizierer 810-0 und Quadrieren des Signals Im X″ FFT (0) im Multiplizierer 811-0 gebildet. Die Ausgangssignale der Multiplizierer 810-0 und 811-0 werden im Addierer 812-0 summiert, und die Quadratwurzel des Summenausgangssignals des Addierers 812-0 wird aus der Quadratwurzelschaltung 814-0 gewonnen. Auf ähnliche Weise werden die Signale δ p (1) bis δ p (N-1) gemäß Fig. 8 gebildet.
Der Impuls S₁₇, der den Zähler 820 in seinen Zustand 2N+1 weiterschaltet, bewirkt, daß der Komparator 821 ein N₄-Signal H liefert. Der Impuls S₁₇ triggert außerdem den Impulsgenerator 838. Unter Ansprechen auf das N₄-Signal H und den Impuls vom Generator 838 wird das UND-Gatter 840 betätigt. Da das A₁₀-Signal vom Flip-Flop 827 auf H ist, erzeugt das UND-Gatter 844 ein Signal E P (Kurvenform 1921 in Fig. 19 zum Zeitpunkt t₇), das angibt, daß die Spektralpegelsignale δ p (0), δ p (1), . . ., δ p (N-1) verfügbar sind. Jedes Signal δ p (k) ist dem DCT-Koeffizientenfrequenzindex k zugeordnet.
Die Signale δ F (0), δ F (1), . . ., δ F (N-1) vom Formant-Spektralpegelgenerator 126 und die Signale δ p (0), δ p (1), . . ., vom Tonhöhenerregungs-Spektralpegelgenerator 128 werden an die Normalisierschaltung 130 gegeben, in der eine Gruppe von gemeinsamen Spektralpegelsignalen δ j (0), δ j (1), . . ., w j (N-1) gebildet wird.
δ j (k) = δ F (k) δ p (k) k = 0, 1, . . ., N-1
Die Kurvenform 1605 in Fig. 16 zeigt das gemeinsame Spektralpegel-Signalspektrum. Wie die Kurvenform 1605 angibt, modifiziert die Tonhöhen-Spektralpegelkomponente das Formant-Spektralpegelspektrum der Kurvenform 1603. Eine für die Verständlichkeit wichtige Feinstruktur wird auf diese Weise dem Spektralschätzwert für das DCT-Signalspektrum hinzugefügt, um die Genauigkeit des übertragenen Sprachsignalabschnittes des DCT-Koeffizientenblocks zu verbessern. Die gemeinsamen Spektralpegelsignale w j (k) werden auf das diskrete Cosinus-Transformationsspektrum entsprechend der Kurvenform 1601 in Fig. 16 normalisiert. Der für die Normalisierung verwendete Faktor wird erzeugt, indem zuerst das Intervall im DCT-Koeffizienten-Leistungsspektrum bestimmt wird, in welchem sich die maximale Leistung befindet. Dann werden die Leistung in diesem Intervall des DCT-Spektrums (P c ) und die Leistung im gleichen Intervall des Spektrums δ j (k) bestimmt. Der Normalisierungsfaktor entsprechend der Quadratwurzel des Verhältnisses P δ j /P c wird dann gebildet und auf jedes Signal δ j (k) angewendet.
Der maximale Leistungsbereich wird für den Cosinus-Transformationskoeffizienten durch Wahl des maximalen DCT-Koeffizientensignals X DCT (n*) max und des ihm entsprechenden Frequenzpunktes k bestimmt. Ein Bereich wird vorgeschrieben, in dem die Anzahl N der DCT-Koeffizientenfrequenzen durch das decodierte Tonhöhensignal P′ dividiert und die untere und obere Grenze
berechnet werden. Die Leistung des DCT-Spektrums im Bereich zwischen I E und I S wird dann bestimmt zu
Auf entsprechende Weise wird die Leistung der gemeinsamen Spektralwerte δ j (k) im Bereich zwischen I E und I S berechnet zu
Der Normalisierungsfaktor für jedes Spektralwertsignal ist dann
Das Signal P N wird zur Normalisierung der gemeinsamen Spektralpegelsignale δ j (k) benutzt und außerdem codiert und über den Multiplexer 112 und den Nachrichtenkanal 140 zur Schaltung gemäß Fig. 2 übertragen. Jedes normalisierte, gemeinsame Spektralpegelsignal wird
V(n) = P N δ j (n) (15)
Es ist außerdem erwünscht, die Größe des Quantisierungsfehlers für jede DCT-Koeffizientenfrequenz so einzustellen, daß das Verhältnis des Signals zum Quantisierungsrauschen über das gesamte Spektrum immer oberhalb eines vorbestimmten Minimums liegt. Eine solche Einstellung erfordert die Erzeugung einer Gruppe von modifizierten, normalisierten Spektralwertsignalen V′(n) entsprechend
V′(n) = v(n) δ F γ (n) k n   n = 0, 1, . . ., N-1 (16)
wobei γ und k n vorbestimmte Konstanten sind. Die Signale V′(n) werden im Adaptionsrechner 132 benutzt, um die Verteilung von Bits bei der Quantisierung der DCT-Koeffizientensignale im Quantisierer 109 zu steuern.
Der Normalisierer 130 ist genauer in Fig. 10 und 11 dargestellt. Die Schaltung gemäß Fig. 1 liefert das untere und obere Grenzsignal I E und I S gemäß Gleichung 11). Die Schaltung gemäß Fig. 11 erzeugt die Signale V(n) und V′(n) gemäß Gleichung 15) bzw. 16). Entsprechend Fig. 10 liefert der Multiplexer 1001 die Folge von DCT-Koeffizientensignalen X DCT (0), X DCT (1), . . ., X DCT (N-1) unter Steuerung des Zählers 1020. Der Komparator 1007 vergleicht das Signal im Zwischenregister 1003 mit dem ankommenden Signal X DCT (n). Das größere Signal wird in das Zwischenregister 1003 gegeben und der Index n des größeren Signals in das Zwischenregister 1005. Auf diese Weise wird das Maximalsignal X DCT (n) ausgewählt und der Frequenzindex n des Maximalsignals in das Zwischenregister 1005 gegeben.
Unter Ansprechen auf den Impuls E DCT (Kurvenform 1905 in Fig. 19) von der Cosinus-Transformationsschaltung 107, der zum Zeitpunkt t₁ auftritt, erzeugt der Impulsgenerator 1030 den Steuerimpuls S₁₈, der den Zähler 1020 auf Null zurückstellt und das Zwischenregister 1003 auf Null löscht. Das Ausgangssignal des Zählers 1020 bewirkt, daß das Signal X DCT (0) von der DCT-Schaltung 107 an das Zwischenregister 1003 und den Komparator 1007 gegeben wird. Der Komparator 1007 liefert ein R₅-Signal H an das UND-Gatter 1035, wenn das Signal X DCT (0) größer als das Signal im Zwischenregister 1003 ist. Unter Ansprechen auf den Impuls vom Impulsgenerator 1034 (der durch den Impuls S₁₈ getriggert wird) erzeugt das UND-Gatter 1035 einen Impuls S₁₉. Es wird dann das Signal X DCT (0) in das Zwischenregister 1003 und das Frequenzindexsignal n=0 in das Zwischenregister 1005 eingegeben. Der Impulsgenerator 1036 erzeugt dann einen Steuerimpuls S₂₀, der den Zähler 1020 in seinen nächsten Zustand weiterschaltet. Der Zustand des Zählers 1020 wird im Komparator 1021 mit N verglichen und ein N₅-Signal H gewonnen, da der Stand des Zählers 1020 kleiner ist als N. Das N₅-Signal H und der 48517 00070 552 001000280000000200012000285914840600040 0002002934489 00004 48398Impuls vom Generator 1038 betätigen das UND-Gatter 1041, so daß sich die Folge von Impulsen der Generatoren 1034, 1036 und 1038 wiederholt.
Das Signal X DCT (1) gelangt an den Komparator 1007 und wird dort mit dem Signal X DCT (0) im Zwischenregister 1003 verglichen. Wenn X DCT (0)X DCT (1), dann ist der Ausgang R₅ des Komparators 1007 auf L, und das Signal X DCT (0) bleibt im Zwischenregister 1003. Wenn jedoch X DCT (0)<X DCT (1), dann ist der Ausgang R₅ auf H, und das Signal X DCT (1) wird in das Zwischenregister 1003 eingegeben, während der Frequenzindexcode n=1 durch den Impuls S₁₉ vom UND-Gatter 1035 in das Zwischenregister 1005 geführt wird. Solange der Zähler 1020 nicht in seinen Zustand N gelangt ist, bewirkt jede Folge von Impulsen der Impulsgeneratoren 1034, 1036 und 1038, daß das ankommende Signal X DCT (n) mit dem vorher bestimmten, im Zwischenregister 1003 gespeicherten Maximalsignal verglichen wird. Wenn der Zähler 1020 in seinem Zustand N ist, befindet sich das Maximalsignal X DCT (n) im Zwischenregister 1003 und der entsprechende Frequenzindex im Zwischenregister 1005.
Während der Bestimmung des Maximalsignals X DCT (n) durch den Komparator 1007 erzeugt der Teiler 1009 ein Bereichssignal
Das Signal R₆ gelangt an einen Eingang des Addierers 1011 und an einen Eingang des Subtrahierers 1013. Der Addierer 1011 bildet das Signal I S und der Subtrahierer 1013 das Signal I E gemäß Gleichung 11). Das Ausgangssignal des Addierers 1011 wird mit N-1, dem größtmöglichen Spektralfrequenzindex, im Komparator 1015 verglichen, während das Ausgangssignal des Subtrahierers 1013 mit Null, dem minimalen Spektralfrequenzindex, im Komparator 1017 verglichen wird. Falls I S vom Addierer 1011 größer ist als N-1, wird der Multiplexer 1019 betätigt und liefert ein Ausgangssignal I S =N-1. Entsprechend wird, wenn das Ausgangssignal des Subtrahierers 1013 kleiner als Null ist, der Multiplexer 1018 betätigt und erzeugt ein Signal I E =0.
Wenn der Zähler 1020 in seinen Zustand N weitergeschaltet wird, liefert der Komparator 1021 ein N₆-Signal H. Es wird dann das UND-Gatter 1040 durch das N₆-Signal H und den Impuls vom Generator 1038 betätigt. Das Ausgangssignal des Gatters 1040 stellt das Flip-Flop 1044 ein. Das E₅-Signal H des eingestellten Flip-Flops 1044 gelangt an das UND-Gatter 1125 in Fig. 11. Nachdem die Signale δ F (0), w F (1), . . ., δ F (N-1) an den Ausgängen des Formant-Spektralpegelgenerators 126 zur Verfügung stehen, stellt das Signal E F (Kurvenform 1919 in Fig. 19) des Generators 126 das Flip-Flop 1123 ein, das vorher durch das Signal E DCT von der DCT-Schaltung 107 zurückgestellt worden ist. Entsprechend stellt, wenn die Signale δ p (0), w p (1), . . ., δ p (N-1) an den Ausgängen des Tonhöhenerregungs- Spektralpegelgenerators 128 zur Verfügung stehen, das Signal E p (Kurvenform 1921 in Fig. 19) des Generators 128 das Flip-Flop 1124 ein.
Das UND-Gatter 1125 wird durch die Koinzidenz der Signale H vom 1-Ausgang der Flip-Flops 1044, 1123 und 1124, die zum Zeitpunkt t₈ (Fig. 19) auftreten, betätigt. Unter Ansprechen auf das Signal H vom UND-Gatter 1125 erzeugt der Impulsgenerator 1130 einen Impuls S₂₁. Dieser Impuls bringt das Signal I E des Multiplexers 1019 in Fig. 10 in den Zähler 1120, löscht die Akkumulatoren 1111, 1113 und triggert den Impulsgenerator 1134. Zu diesem Zeitpunkt wird das Adressenausgangssignal I E des Zählers 1120 an die Multiplexer 1103 und 1105 gegeben. Demgemäß gelangt das Signal X DCT (I E ) an die Eingänge des Multiplizierers 1107, in dem das Signal DCT (I E ) gebildet wird. Der Multiplexer 1103 verbindet dann den Ausgang des Multiplizierers 1101-0 mit den Eingängen des Multiplizierers 1109, in welchem das Signal δ j ²(I E )=[w F (I E ) · δ p (I -E )]² gebildet wird. Der Akkumulator 1111 speichert das Signal DCT (I E) und der Akkumulator 1113 das Signal w j ²(I E ) unter Ansprechen auf den Steuerimpuls S₂₂ vom Generator 1134.
Solange der Zähler 1120 nicht in seinen Zustand I S +1 weitergeschaltet ist, erzeugt der Komparator 1121 ein N₇-Signal H und die Folge von Impulsen S₂₂ und S₂₃ wiederholt sich abhängig von der Operation des UND-Gatters 1141. Wie oben erläutert, bewirkt jede Folge von Impulsen S₂₂ und S₂₃, daß der Akkumulator 1111 durch das nächste Signal DCT (n) und der Akkumulator 1113 durch das nächste Signal δ j ²(n) weitergeschaltet werden. Nachdem der Zähler 1120 im Zustand I S +1 ist, enthält der Akkumulator 1111 das Signal P C und der Akkumulator 1113 das Signal P δ j entsprechend der Gleichung 12) bzw. 13). Der Teiler 1114 bildet das Verhältnis P δ j /P C , und das Normalisierungssignal P N (Gleichung 14) wird von der Quadratwurzelschaltung 1115 gewonnen. Das Signal P N gelangt an einen Eingang jedes der Multiplizierer 1116-0 bis 1116-N-1, die die normalisierten, gemeinsamen Spektralpegelsignale erzeugen. Der Multiplizierer 1116-0 erzeugt beispielsweise das Signal V (0)=w j (0) · P N und der Multiplizierer 1116-N-1 das Signal V(N-1)=δ j (N-1) · P N . Entsprechend erzeugen Multiplizierer 1116-0 bis 1116-N-2 (nicht gezeigt) normalisierte Spektralpegelsignale V (1)=δ j (1) · P N bis V(N-2)=δ j (N-2) · P N entsprechend Gleichung 15). Das Signal P N wird dem Codierer 142 in Fig. 1 zugeführt und dort codiert. Das codierte Signal P N gelangt an den Multiplexer 112.
Die Signale V′(n) gemäß Gleichung 16) werden durch die Kombination von Exponenten- und Multipliziererschaltungen 1116-0 bis 1118-N-1 bzw. 1119-0 bis 1119-N-1 erzeugt. Beispielsweise wird das Spektralpegelsignal δ j (0) in der Exponentenschaltung 1118-0 auf die Potenz γ gebracht, wobei der Wert γ vom Konstantgenerator 1150 zugeführt wird. Das sich ergebende Ausgangssignal δ j γ (0) wird zur Bildung des Signals V′ (0) im Multiplizierer 1119-0 mit dem Signal V (0) vom Multiplizierer 1116-0 und mit der Konstanten k₀ vom Konstantgenerator 1050 multipliziert. Die Signale V′ (1) bis V′(N-1) werden auf entsprechende Weise erzeugt.
Nachdem die Formant-Spektralpegelsignale und Tonhöhenerregungs- Spektralpegelsignale kombiniert und im Normalisierer 130 auf die Leistung P N im Intervall maximaler Leistung für das Cosinus-Transformations-Koeffizientenspektrum normalisiert worden sind, erzeugt das UND-Gatter 1140 zum Zeitpunkt t₉ ein Signal E n (Kurvenform 1923 in Fig. 19). Zu diesem Zeitpunkt werden die Ausgangssignale V(n) und V′(n) der Multiplizierer 1116-0 bis 1116-N-1 an den Adaptionsrechner 132 angelegt. Der Adaptionsrechner bildet ein Schrittgrößen-Steuersignal und ein Bitzuordnungs-Steuersignal für das DCT-Koeffizientensignal X DCT (n) von der Verzögerungsschaltung 108.
Das Schrittgrößen-Steuersignal für den Transformations-Koeffizienten- Frequenzindex n wird im Quantisierer 109 benutzt, um den Wert des Signals X DCT (n) zu modifizieren, derart, daß die voraussagbaren Formant- und Tonhöhenkomponenten aus dem Signal X DCT (n) entfernt werden. Das Bitzuordnungs-Steuersignal bestimmt die Anzahl b n von Bits für jeden Transformations- Koeffizienten-Frequenzindex n. Während zwar die Gesamtzahl von Bits für jeden Block vorbestimmt ist, ist die Verteilung der Bits auf die DCT-Koeffizientensignale X DCT (n) variabel und eine Funktion der Bedeutung des Koeffizientensignals X DCT (n) im Spektrum hinsichtlich der Verständlichkeit. Die Signale V′(n) bilden einen Schätzwert für das Spektrum des Block-Sprachabschnittes auf der Basis des Formant- und Tonhöhenerregungs-Sprachmodells, eingestellt durch Parameter γ und k n zum Zwecke der Quantisierungsrauschsteuerung. In der Schaltung gemäß Fig. 1 ist die Anzahl von Bits, die einer Transformations-Koeffizientenfrequenz zugeordnet sind, für die V′(n) verhältnismäßig hoch ist, größer als die Anzahl von Bits, die einer Transformations-Koeffizientenfrequenz zugeorndet sind, für die V′(n) verhältnismäßig niedrig ist. Demgemäß werden Spektralbereiche hoher Sprachsignalenergie genauer codiert als Bereiche niedriger Sprachenergie. Die Kurvenform 1701 in Fig. 17 zeigt die Bitzuordnung für das gemeinsame Spektralpegelspektrum gemäß Kurvenform 1605 in Fig. 16.
Der Adaptionsrechner 132 kann die Prozessoranordnung gemäß Fig. 13 umfassen, wobei das Steuergerät 1307 durch ein Signal E n (Kurvenform 1923 in Fig. 19) vom Normalisierer 130 betätigt wird, um den Adaptions-Programmspeicher 1306 mit dem Prozessor 1309 zu verbinden. Der Programmspeicher 1306 enthält die Befehlscodierungen, die erforderlich sind, um die Bit-Zuordnungssignale b n der Kurvenform 1701 zu erzeugen und die Signale V(n) zur Verwendung im Quantisierer 109 zu speichern.
Unter Ansprechen auf das Signal E n überträgt der Prozessor 1309 die Signale V(n) und V′(n) über die Eingangs-Ausgangs-Schnittstelle 1318 zum Datenspeicher 1316 unter Steuerung des Zentralprozessors 1312.
Der Bit-Zuordnungsprozeß ist im Flußdiagramm in Fig. 14 dargestellt. Gemäß Fig. 14 veranlaßt das Signal E n den Prozessor 1309, eine anfängliche Bitzuordnung für jedes Transformations- Koeffizientensignal entsprechend
b n (1) = log₂ V′(n) + D,
zu erzeugen, wobei
wobei M die Gesamtzahl von Bits im Block und N die Gesamtzahl von Transformations-Koeffizientensignalen entsprechend der Darstellung im Kästchen 1401 ist. Nachdem die anfängliche Bitzuordnung vollständig ist, werden entsprechend dem Kästchen 1403 die Signale b n (1), die kleiner als -0,5 sind, auf Null gesetzt, und es erfolgt die zweite Bitzuordnung gemäß
b n (2) = b n (1) - Δ
Δ₁ ist eine feste Konstante, derart, daß entsprechend dem Kästchen 1405 gilt
Die Zuordnungscodierungen b n (2), die größer sind als 5,5, werden auf 5,0 reduziert (Kästchen 1407), und es wird eine dritte Bitzuordnung wie folgt vorgenommen:
b n (3) m= b n (2) + Δ₂ (18)
Δ₂ ist eine feste Konstante, derart, daß gilt:
Die b n (3)-Zuordnungssignale gemäß Kästchen 1049 werden auf die nächste ganze Zahl abgerundet, um gemäß Kästchen 1411 die b n (4)-Bitzuordnungssignale zu bilden, und es wird eine Versuchssumme der Signale b n (4) (Kästchen 1413) erzeugt entsprechend dem Ausdruck:
Entsprechend dem Entscheidungskästchen 1415 wird dann die Versuchssumme mit der Gesamtzahl (M) von Bits im Block verglichen. Wenn <M, dann wird das b n (4)-Signal mit dem kleinsten Rundungsfehler um ein Bit reduziert (Kästchen 1417) und die sich ergebende Versuchssumme mit M verglichen (Kästchen 1419). Die Reduzierung der Bits gemäß Kästchen 1417 wird wiederholt, bis =M.
Für den Fall, daß gemäß Kästchen 1415 <M ist, wird ein Bit zu dem b n (4)-Signal mit dem größten Rundungsfehler entsprechend dem Kästchen 1421 addiert. Das sich ergebende gemäß Kästchen 1421 wird mit M gemäß Kästchen 1423 verglichen, und die Addition von Bits gemäß Kästchen 1421 wird wiederholt, bis =M gilt. Wenn dies der Fall ist, werden die endgültigen Bitzuordnungssignale b n vom Datenspeicher 1316 über die Eingangs-Ausgangs-Schnittstelle 1318 zum Speicher 1335 übertragen. Die Codierungen V(n) vom Datenspeicher 1316 werden außerdem über die Eingangs-Ausgangs-Schnittstelle 1318 zum Speicher 1334 gegeben.
Tabelle 1 zeigt ein Ausführungsbeispiel für die Bitzuordnung bei einer Anordnung, bei der N=8 diskrete Cosinus-Transformations- Koeffizientensignale und eine Gesamtzahl von M=20 Bits für jeden Block vorhanden sind.
Tabelle 1
Bit-Zuordnung
Die Zeilen 1 und 2 der Tabelle 1 geben die Signalwerte V′(n) und log₂V′(n) an. Zeile 3 enthält die anfänglichen Bitzuordnungen b n (1) entsprechend Kästchen 1401 in Fig. 14. Die b(1)-Zuordnung ist -1,55. Entsprechend Kästchen 1403 wird die b(1)-Zuordnung auf Null gesetzt, wie in Zeile 4 gezeigt. Alle anderen Bitzuordnungen in Zeile 4 bleiben unverändert, da sie größer sind als -0,5.
Zeile 5 zeigt die Bitzuordnungen b n (2), die entsprechend Kästchen 1405 verringert werden, um der Weglassung der Bitzuordnung b(1)=-1,55 Rechnung zu tragen. Die Bitzuordnungen in Zeile 6 sind die gleichen wie in Zeile 5 mit Ausnahme von b(2), die entsprechend Kästchen 1405 von 5,87 auf 5,0 geändert wird. Die Bitzuordnungen b n (3) in Zeile 7 sind vergrößert worden, um der Änderung der Bitzuordnung b(2) gemäß Kästchen 1409 Rechnung zu tragen. Die Zuordnung b(2) bleibt jedoch Null.
Zeile 8 zeigt die Bitzuordnungen b n (4), die sich aus der Abrundung der b n (3)-Bitzuordnungen gemäß Kästchen 1411 ergeben. Zeile 9 enthält die Rundungsfehler b n (3)-b n (4). Da die Summe der Bitzuordnungen in Zeile 8 =21 ist, wird ein Bit von der Zuordnung b(4) abgezogen, die den kleinsten (am meisten negativen) Rundungsfehler in Zeile 9 hat (Kästchen 1417). Die sich ergebende Bitzuordnungssumme der Zeile 10 ist =M=20, und die endgültigen Bitzuordnungen b n (Zeile 10) für den Block werden im Speicher 1355 zur Verwendung im Quantisierer 109 abgelegt. Die Bitzuordnung in Zeile 10 ist eine Funktion von V′(n) in Zeile 1. Demgemäß ist b₁ gleich 5 für V′ (1)=100, aber b₄ ist Null für V′ (4)=2. Das vorstehende Ausführungsbeispiel verwendet 8 DCT-Koeffizientensignale zur Vereinfachung. In der Praxis wird eine größere Gruppe von Koeffizienten, beispielsweise 256, für jeden Block benutzt. Das in Fig. 14 gezeigte Verfahren für die Bitzuordnung bleibt jedoch das Gleiche.
Die Signale V(n) vom Adaptionsrechner 132 werden an Teiler 110-1 bis 110-N-1 im Quantisierer 109 gegeben, wodurch jedes Signal X DCT (n) von der Verzögerungsschaltung 108 durch das entsprechende Signal V(n) dividiert wird. Beispielsweise wird das Signal X DCT (0) durch das Signal V (0) vom Rechner 132 im Teiler 110-0 dividiert, um das Signal X DCT (0)/V (0) zu erzeugen. Auf entsprechende Weise bilden die Teiler 110-1 bis 110-N-1 die Signale X DCT (1)/V (1), X DCT (2)/V (2), . . ., X DCT (N-1)/V(N-1). Das Ausgangssignal des Teilers 110-0 gelangt an den Quantisierer 111-0, der unter Ansprechen auf das Bitzuordnungssignal b₀ vom Rechner 132 das Signal X DCT (0)/V (0) quantisiert und einen Digitalcode Q (0) mit b₀ Bits erzeugt, der das Signal X DCT (0)/V (0) darstellt. Die Quantisierer 111-1 bis 111-N-1 erzeugen entsprechend Digitalcodierungen Q (1), Q (2), . . ., Q(N-1) für die Signale X DCT (1)/V (1) bis X DCT (N-1)/V(N-1). Die Anzahl von Bits im Digitalcode Q(n) für das Signal X DCT (n)/V(n) wird durch das Zuordnungssignal b n vom Rechner 132 bestimmt. Die N-Ausgangscodierungen vom Quantisierer 109, nämlich Q (0), Q (1), . . ., Q(N-1), gelangen zum Multiplexer 112 zusammen mit den Signalen w m , P und P G vom Codierer 120 und dem Signal P N vom Codierer 144. Der Multiplexer 112 gibt in bekannter Weise sequenziell die digitalcodierten Signale an seinen Eingängen auf den Nachrichtenkanal 140.
Fig. 2 zeigt ein allgemeines Blockschaltbild eines Sprachsignaldecoders. Der Decoder gemäß Fig. 2 nimmt die adaptiv quantisierten Cosinus-Transformations- Koeffizientencodierungen Q(n), die Voraussage-Parametersignalcodierungen w m und die codierten Signale P, P G , P N für jeden Block vom Nachrichtenkanal 140 auf und erzeugt für jeden Block ein rekonstruiertes Sprachsignal (t). Die Signalcodierungen Q(n) werden von den w m -Codierungen und den codierten Signalen P, P G , P N durch den Demultiplexer 201 getrennt, der die Signale Q(n) über die Verzögerungsschaltung 202 an den DCT-Koeffizientendecoder 203 anlegt. Die Signale w m , P, P G , P N vom Demultiplexer 201 werden an den Decoder 222 in der Adaptionsschaltung 234 angelegt, die Adaptionssignale V r (n) und b n ′ für den DCT-Koeffizientendecoder 203 erzeugt. Die Adaptionsschaltung 234 ähnelt der Adaptionsschaltung 134 in Fig. 1, besitzt aber keine Schaltungen, die dem Autokorrelator 113, dem Parameterrechner 115, dem Tonhöhenanaylsierer 117 und dem Codierer 120 entsprechen.
Der Decodierer 222 gibt vom Kanal 140 abgeleitete Signale w m ′′ an den LPC-Rechner 224, der dem LPC-Rechner 124 im wesentlichen entspricht. Die vom LPC-Rechner 224 erzeugten linearen Voraussagekoeffizienten a m ′ werden vom Formant-Spektralpegelgenerator 226 benutzt, um Formant-Spektralpegelsignale δ F ′(0), w F ′(1), . . ., δ F (N-1) für den Block zu erzeugen. Die Schaltung 226 entspricht im wesentlichen der Schaltung 126, die im einzelnen in Fig. 9 dargestellt ist. Das Spektrum der Signale δ F (k) zeigt die Kurvenform 1607 in Fig. 16. Unter Ansprechen auf die Signale P′′ und P G ″ vom Decoder 222 erzeugt der Tonhöhen-Spektralpegelgenerator 228 Tonhöhenerregungs-Spektralsignale δ p ′(0), δ p ′(1), . . ., δ p (N-1). Die Schaltung 228 entspricht im wesentlichen der Schaltung 128, die im einzelnen in Fig. 8 gezeigt ist.
Der Normalisierer 230 kombiniert die Signale w F (k) und δ p (k) und normalisiert das Ergebnis auf das decodierte Signal P N ′′ vom Decoder 222, wie oben mit Bezug auf Fig. 11 beschrieben. Fig. 20 zeigt ein genaueres Blockschaltbild des Normalisierers 230. Gemäß Fig. 20 bildet jeder der Multiplizierer 2001-0 bis 2001-N-1 ein Signal
δ j (k) = δ p (k) δ F (k)  k = 0, 1, . . ., N-1
Der Multiplizierer 2001-0 nimmt das Tonhöhenerregungs-Spektralpegelsignal δ p ′(0) vom Generator 228 und das Formant-Spektralpegelsignal δ F ′(0) vom Generator 226 auf und erzeugt das gemeinsame Spektralpegelsignal δ j ′(0)=w p ′(0) δ F ′(0). Auf entsprechende Weise werden die Signale δ j ′(1), w j ′(2), . . ., δ j (N-1) aus den Multiplizierern 2001-1 bis 2001-N-1 gewonnen. Das decodierte Normalisierungsfaktorsignal P N ′′ vom Decoder 222 wird jedem der Multiplizierer 2016-0 bis 2016-N-1 zugeführt. Unter Ansprechen auf das Signal δ j ′(0) vom Multiplizierer 2001-0 und dem Signal P N ′′ bildet der Multiplizierer 2016-0 das Schrittgrößen-Steuersignal V r (0). Entsprechend werden die Signale V r (1), V r (2), . . ., V r (N-1) in den Multiplizierern 2016-0 bis 2016-N-1 gebildet entsprechend
V r (n) = δ j (n) · P N ′′  n = 0, 1, . . ., N-1.
Die Signale V r (n) werden gebildet entsprechend
V r (n) = V r (n) δ F (n) γ k n   n = 0, 1, . . ., N-1
und durch die Kombination von Exponentenschaltungen 2018-0 bis 2018-N-1 und Multiplizierschaltungen 2019-0 bis 2019-N-1 erzeugt. Beispielsweise wird das Spektralpegelsignal δ j ′(0) in der Exponentenschaltung 2018-0 auf die Potenz γ erhöht, wobei die Konstante γ vom Konstantgenerator 2050 zugeführt wird. Das sich ergebende Ausgangssignal δ j ′(0) in der γ-ten Potenz wird mit dem Signal V r (0) vom Multiplizierer 2016-0 und der Konstanten k₀ vom Konstantgenerator 2050 im Multiplizierer 2019-0 zur Bildung des Signals V r ′(0) multipliziert. Die Signale V r ′(1) bis V r (N-1) werden auf ähnliche Weise erzeugt. Das gemeinsame Spektralpegelsignal δ j (n) zeigt die Kurvenform 1609 in Fig. 16. Die Ausgangssignale V r (n) und V r (n) des Normalisierers 230 werden dem Adaptionsrechner 232 zugeführt, der dem Adaptionsrechner 132 im wesentlichen entspricht. Die Bitzuordnungscodierungen b n ′ und die Signale V r (n) für den Block werden vom Adaptionsrechner 232 über Leitungen 242 bzw. 244 dem DCT-Koeffizientendecoder 203 zugeführt.
Der DCT-Koeffizientendecoder 203 nimmt die Signale Q(n) vom Demultiplexer 201 in serieller Form über die Verzögerungsschaltung 202 auf. In dem einzelnen Bitstrom der Codierungen Q (0), Q (1), . . ., Q(N-1) von der Verzögerungsschaltung 202 sind keine identifizierten Grenzen zwischen aufeinanderfolgenden Codierungen vorhanden. Man benutzt die Bitzuordnungscodierungen b n ′ vom Adaptionsrechner 232, um den Bitstrom von der Verzögerungsschaltung 202 in getrennte Signale aufzuteilen, die je einem Q(n)-Code entsprechen. Bitzuordnungscodierungen b n ′, die den b n -Codierungen des Sprachcodierers gemäß Fig. 1 entsprechen, zeigt die Kurvenform 1803 in Fig. 18. Der Bitzuordnungscode b₀′ beträgt 2. Demgemäß werden die ersten beiden Bits des an den DCT-Koeffizientendecoder 203 angelegten Bitstroms als codiertes Signal Q (0) abgetrennt. Da b₁′ der Kurvenform 1703 gleich 1 ist, wird das nächste Bit des Bitstroms als codiertes Signal Q (1) abgetrennt. Falls ein Code b n ′ Null ist, so ist das entsprechende Signal Q(n) Null, und es werden keine Bits abgesondert.
Nachdem die codierten Signale Q (0), Q (1), . . ., Q(N-1) getrennt sind, wird jeder Code in bekannter Weise decodiert. Jeder Code Q(n) wird mit einem Faktor V r (n) multipliziert, der den vom Adaptionsrechner 232 gewonnenen Tonhöhenerregungs-Spektralpegel darstellt. Auf diese Weise wird jedes Signal Q(n) in ein diskretes Cosinus-Transformations-Koeffizientensignal Y DCT (n)=Q(n) · V(n) umgewandelt. Jedes Signal Y DCT (n) entspricht dem von der DCT-Schaltung 107 in Fig. 1 erzeugten Signal X DCT (n). Die unvoraussagbare Komponente von Y DCT (n) wird durch das codierte Signal Q(n) und die voraussagbare Komponente von Y DCT (n) durch die Signale b n ′ und V r (n) geliefert, die aus den getrennt übertragenen Signalen w m , P, P G und P N abgeleitet werden. Die Signale Y DCT (n) des Blocks, die am Ausgang des DCT-Koeffizientendecoders 203 zur Verfügung stehen, können dann in eine Folge von Signalabtast-Abbildern durch eine inverse, diskrete Cosinus-Transformation der Signale Y DCT (n) umgewandelt werden.
Fig. 15 zeigt den DCT-Koeffizientendecoder 203 genauer. Gemäß Fig. 15 wird der serielle Bitstrom der Signalcodierungen Q(n) von der Verzögerungsschaltung 202 an den Dateneingang der Decoder 1505-0 bis 1505-N-1 angelegt. Die Bitzuordnungscodierungen b n ′ vom Adaptionsrechner 232 gelangen zur Adressenlogik 1501, die eine Folge von Adressencodierungen bildet. Sie verwendet dazu eine Zählanordnung, die durch die Bitzuordnungscodierungen gesteuert wird, so daß die gleiche Adresse n b n ′-mal geliefert wird. Die Adressencodierungen von der Adressenlogik 1501 werden an den Adresseneingang des Wählers 1503 gegeben. Auf diese Weise werden die Taktimpulse CLS′ vom Taktgeber 240 selektiv an die Decoderschaltungen 1505-0 bis 1505-N-1 angelegt und die Bits Q(n) entsprechend der Adressierung durch die Adressenlogik 1501 eingegeben. Beispielsweise veranlaßt das Signal b₀′ den Wähler 1503, den Decoder 1505-0 während derjenigen Zeit zu betätigen, zu der die Bits Q (0) in dem seriellen Bitstrom Q(n) vorhanden sind. Nachdem die Bits Q (0) in den Decoder 1505-0 eingegeben sind, betätigt der Wähler 1503 den Decoder 1505-1 (nicht gezeigt) unter Ansprechen auf den an die Adressenlogik 1501 angelegten Zuordnungscode b₁′. Auf diese Weise werden die Bits Q (1) in den Decoder 1501-1 eingegeben. Auf entsprechende Weise werden die Codebits Q (2) bis Q(N-1) in die Decoder 1505-2 bis 1505-N-1 eingeführt.
Der Ausgang der Decoder 1505-0 bis 1505-N-1 ist mit dem Eingang der Multiplizierer 1507-0 bis 1507-N-1 verbunden. Jeder Multiplizierer bildet das Produkt Q(n) · V r (n) unter Ansprechen auf den Code vom Decoder 1505-n und den Code V r (n) vom Adaptionsrechner 232. Im Multiplizierer 1507-0 wird der Produktcode Y DCT (0)=Q (0) · V r (0) und im Multiplizierer 1507-N-1 der Produktcode Y(N-1) = Q(N-1) · V r (N-1) gebildet. Entsprechend werden die Codierungen Y DCT (1), Y DCT (2), . . ., Y DCT (N-2) in den Multiplizierern 1507-1 bis 1507-N-2 gebildet. Nachdem alle Produktcodierungen Y DCT (n) am Ausgang der Multiplizierer 1507-0 bis 1507-N-1 zur Verfügung stehen, betätigt der Taktimpuls CLB′ vom Taktgeber 240 die Zwischenregister 1509-0 bis 1509-N-1, und die diskreten Cosinus-Transformations- Koeffizientensignale Y DCT (0), Y DCT (1), . . ., Y DCT (N-1) werden an die inverse DCT-Schaltung 207 gegeben.
Die inverse DCT-Schaltung 207 bildet die Signalabtastcodierungen Y (0), Y (1), . . ., Y(N-1) entsprechend den vom Pufferregister 105 in Fig. 1 gelieferten Signalen X (0), X (1), . . ., X(N-1) entsprechend der Gleichung
In der Schaltung gemäß Fig. 12 werden die Signale Y(n) durch eine inverse, schnelle 2N-Punkt-Fourier-Transformation gebildet, bei der gilt:
wobei
und
Der Index R gibt den Realteil und der Index I den Imaginärteil des Signals W(k) an.
Gemäß Fig. 2 erzeugt der Multiplizierer 1201-0 das Signal W R (0) unter Ansprechen auf das Signal Y DCT (0) und das Signal 2 vom Konstantengenerator 1250 gemäß Gleichung 22). Das Signal W R (0) geht über die Leitung 1204-0 zum Multiplexer 1209. Ein Signal Null entsprechend W I (0) wird dem Multiplexer 1209 über die Leitung 1205-0 zugeführt. Auf entsprechende Weise werden die Signale W R (1) und W I (1) in den Multiplizierern 1201-1 bzw. 1202-1 gebildet. Diese Signale werden dem Multiplexer 1209 über Leitungen 1204-1 und 1205-1 und außerdem entsprechend der Darstellung in Fig. 12 über Leitungen 1204-2N-1 und 1205-2N-1 zugeführt, um die Signale W R (2N-1) und W I (2N-1) zu liefern. Das Ausgangssignal des Multiplizierers 1201-N-1 gelangt zum Multiplexer 1205 ebenso wie das Signal W R (N-1) über die Leitung 12004-N-1 und das Signal W R (N+1) über die Leitung 1204-N+1. Das Ausgangssignal des Multiplizierers 1202-N-1 wird an den Multiplexer 1209 wie das Signal W I (N-1) über die Leitung 1205-N-1 und das Signal W I (N+1) über die Leitung 1205-N+1 gemäß Gleichung 25) gegeben. Null-Signale werden dem Multiplexer 1209 entsprechend Gleichung 24) über Leitungen 1204-N und 1205-N zugeführt. Die Signale 4N W R (k) und W I (k) werden sequenziell unter Steuerung des Zählers 1220 in die IFFT-Schaltung 1210 eingegeben. Die IFFT-Schaltung 1210 bildet die Signale Y(n) des Blocks gemäß Gleichung 21), wobei n=0, 1, . . ., N-1 ist.
Unter Ansprechen auf das Signal CLB′, das dann auftritt, wenn die Signale Y DCT (0), Y DCT (1), . . ., Y DCT (N-1) vom DCT-Koeffizientendecoder 203 zur Verfügung stehen, liefert das Flip-Flop 1227 ein A₂₀-Signal H, und der Impulsgenerator 1230 gibt einen Steuerimpuls S₃₀ ab, der den Zähler 1220 auf N ull zurückstellt. Der Multiplexer 1209 verbindet dann die Leitung 1204-0 mit dem Eingang der IFFT-Schaltung 1210. Am Ende des Impulses S₃₀ liefert der Impulsgenerator 1234 einen Impuls S₃₁, der das Signal W R (0) in die IFFT-Schaltung 1210 einführt. Der vom Generator 1236 an der Rückflanke des Impulses S₃₁ erzeugte Impuls S₃₂ schaltet dann den Zähler 1220 in seinen ersten Zustand weiter. Die Folge der Impulse S₃₁ und S₃₂ wiederholt sich, da der Komparator 1221 ein J₂₀-Signal H liefert, wenn der Stand des Zählers 1220 kleiner oder gleich 4N ist. Der nächste Impuls S₃₁ gibt das Signal W I (0)=0 in die IFFT-Schaltung 1210 ein, und der folgende Impuls S₃₂ schaltet den Zähler 1220 weiter. Auf diese Weise werden die Signale W R (0), W I (0), W R (1), W I (1), . . ., W R (N-1), W I (N-1) sequenziell in ansteigender Reihenfolge in die IFFT-Schaltung 1210 eingegeben. Wenn der Zähler 1220 im Zustand 2N und 2N+1 ist, werden die Signale W R (N)=0 und W I (N)=0 in die IFFT-Schaltung 1220 eingeführt. Zwischen den Zuständen 2N+2 und 4N wird die Folge W R (N-1), W I (N-1), W R (N-2), W I (N-2), . . ., W R (1), W I (1) in abfallender Reihenfolge in die IFFT-Schaltung 1210 eingegeben.
Wenn der Zähler 1220 durch einen Impuls S₃₂ in den Zustand 4N+1 weitergeschaltet wird, geht das Signal J₂₁ vom Komparator 1221 auf H. Das UND-Gatter 1240 wird betätigt, und das UND-Gatter 1243 liefert einen Impuls S₁₄. Unter Ansprechen auf diesen Impuls bildet die IFFT-Schaltung 1210 die Signale Y(n) gemäß Gleichung 21). Nach Bildung des Signals Y(N-1) liefert die IFFT-Schaltung 1210 einen Impuls E₂₀, der das Flip-Flop 1227 zurückstellt und den Impulsgenerator 1230 veranlaßt, einen weiteren Impuls S₃₀ zu erzeugen. Dieser Impuls S₃₀ stellt wiederum den Zähler 1220 auf Null zurück, und zwar in Vorbereitung für die Übertragung der Signale Y (0), Y (1), . . ., Y(N-1) von der IFFT-Schaltung 1210 zu den Zwischenregistern 1215-0 bis 1215-N-1. Die vom Zähler 1220 im Zustand Null gelieferte Adresse läßt den folgenden Impuls S₃₁ vom Generator 1234 das Zwischenregister 1215-0 über den Wähler 1213 beaufschlagen und die IFFT-Schaltung 1210 betätigen, so daß das Signal X (0) von der Schaltung 1210 in das Zwischenregister 1215-0 eingegeben wird. Dann erzeugt der Impulsgenerator 1236 den Impuls S₃₂, und der Zähler 1220 wird in seinen nächsten Zustand weitergeschaltet. Zwischen den Zuständen 0 und N-1 des Zählers 1220 werden die Signale Y (1), Y (2), . . ., Y(N-1) sequentiell unter Steuerung des Wählers 1213 an die Zwischenregister 1215-1 bis 1215-N-1 übertragen.
Wenn der Zähler 1220 den Zustand 4N+1 erreicht, werden die UND-Gatter 1240 und 1244 unter Ansprechen auf einen Impuls vom Generator 1238 und H-Signale J₂₁ und A₂₁ betätigt, so daß das Gatter 1244 einen Impuls E IDCT erzeugt. Dieser Impuls ermöglicht die Übertragung der Signale Y (0), Y (1), . . ., Y(N-1) zum Pufferregister 208, das in bekannter Weise die Signale Y (0), Y (1), . . ., Y(N-1) zeitweilig speichert und sie in eine serielle Folge mit der Taktrate der Anlage, beispielsweise 1/(8 kHz) umwandelt. Die Folge Y(n) vom Pufferregister 208 wird um Digital-Analogwandler 209 in analoge Sprachabtastsignale (n) umgesetzt. Diese Abtastsignale, die den Sprachsignalabschnitt des Blocks darstellen, werden im Filter 211 in Form eines Tiefpasses gefiltert, um in bekannter Weise ein Sprachsignal-abbild (t) zu erzeugen. Nach einer geeigneten Verstärkung im Verstärker 213 wird das Signal (t) vom Wandler 215 in Sprachsignale umgewandelt.
Es sei darauf hingewiesen, daß, obwohl bei dem hier beschriebenen Ausführungsbeispiel der Erfindung eine diskrete Cosinus-Transformationsanordnung verwendet wird, auch andere diskrete Frequenzebenen- Transformationsanordnungen, beispielsweise eine diskrete Fourier-Transformationsanordnung, benutzt werden können.

Claims (18)

1. Sprachsignal-Codierschaltung in einer Vocoderanordnung mit einer Einrichtung (101, 103) zur Abtastung eines Sprachsignals mit einer vorbestimmten Rate,
einer Einrichtung (105) zur Aufteilung der Sprachsignalabtastungen in Blöcke,
einer Einrichtung (107), die unter Ansprechen auf jeden Block von Sprachabtastungen eine Gruppe von ersten Signalen erzeugt, welche je einen besonderen Frequenzebenen-Transformationskoeffizienten des Blockes von Sprachabtastungen für eine vorbestimmte Frequenz darstellen,
einer Adaptionssignal-Erzeugungseinrichtung (134), die unter Ansprechen auf die ersten Signale des Blocks eine Gruppe von Adaptionssignalen erzeugt,
und einer Einrichtung (109), die unter gemeinsamem Ansprechen auf die Adaptionssignale und die ersten Signale eine Gruppe von adaptiv quantisierten Transformationskoeffizienten-Codesignalen für den Block erzeugt, dadurch gekennzeichnet, daß die Adaptionssignal-Erzeugungseinrichtung (134) eine Einrichtung (115, 124, 126) zur Erzeugung einer Gruppe von zweiten Signalen aufweist, die das Formantspektrum der ersten Signale des Blocks darstellen,
ferner eine Einrichtung (117, 118) zur Erzeugung einer Gruppe von dritten Signalen, die das Tonhöhen-Erregungsspektrum der ersten Signale des Blocks darstellen,
sowie eine Kombiniere-Einrichtung (130), die durch Kombinieren der Gruppe von zweiten und der Gruppe von dritten Signalen eine Gruppe von ersten Tonhöhenerregungs-Spektralpegelsignalen für die ersten Signale des Blocks erzeugt,
und eine Adaptionssignal-Erzeugungseinrichtung (132), die unter Ansprechen auf die ersten Tonhöhenerregungs-Spektralpegelsignale die Adaptionssignale erzeugt.
2. Sprachsignal-Verarbeitungsschaltung nach Anspruch 1, bei der die Adaptionssignal-Erzeugungseinrichtung (132) dadurch gekennzeichnet ist, daß ein Bitzuordnungssignal und ein Schrittgrößen-Steuersignal für jede erste Signalfrequenz unter Ansprechen auf die ersten Tonhöhenerregungs-Spektralpegelsignale erzeugt werden, und daß die Bitzuordnungssignale und die Schrittgrößen-Steuersignale an die Einrichtung (109) zur Erzeugung von adaptiv quantisierten Transformationskoeffizienten-Codesignalen angelegt werden.
3. Sprachsignal-Verarbeitungsschaltung nach Anspruch 2, dadurch gekennzeichnet, daß eine Einrichtung (113) unter Ansprechen auf die ersten Signale ein Signal bildet, das die Autokorrelation der ersten Signale darstellt,
daß die Einrichtung (115, 124, 126) zur Erzeugung der zweiten Signale auf das die Autokorrelation darstellende Signal anspricht und ein Formant-Spektralpegelsignal bei jeder ersten Signalfrequenz erzeugt,
daß die Einrichtung (117, 128) zur Erzeugung des dritten Signals auf das die Autokorrelation darstellende Signal anspricht und ein Tonhöhenerregungs-Spektralpegelsignal bei jeder ersten Signalfrequenz erzeugt,
und daß die Kombiniereinrichtung (130) das Formant-Spektralpegelsignal und das Tonhöhenerregungs-Spektralpegelsignal bei jeder ersten Signalfrequenz kombiniert, um ein erstes gesteuertes Tonhöhen-Spektralpegelsignal bei jeder ersten Signalfrequenz zu bilden.
4. Sprachsignal-Verarbeitungsschaltung nach Anspruch 3, dadurch gekennzeichnet, daß die Einrichtung (117, 128) zur Erzeugung des dritten Signals eine Einrichtung (117, Fig. 6, Fig. 7) aufweist, die unter Ansprechen auf das die Autokorrelation darstellende Signal ein Impulsfolgensignal erzeugt, das die Tonhöhenerregung der ersten Signale darstellt, und eine Einrichtung (Fig. 8) aufweist, die unter Ansprechen auf das die Tonhöhenerregung darstellende Impulsfolgensignal eine Gruppe von Signalen erzeugt, die je den Tonhöhenerregungs-Spektralpegel bei einer ersten Signalfrequenz darstellen.
5. Sprachsignal-Verarbeitungsschaltung nach Anspruch 4, dadurch gekennzeichnet, daß die Einrichtung (115, 124, 126) zur Erzeugung des zweiten Signals eine Einrichtung (115, 124) aufweist, die unter Ansprechen auf das die Autokorrelation darstellende Signal eine Gruppe von Signalen erzeugt, die die Voraussageparameter der ersten Signale des Blocks darstellen, und eine Einrichtung (126) aufweist, die unter Ansprechen auf die Voraussageparametersignale ein Formant-Spektralpegelsignal bei jeder ersten Signalfrequenz erzeugt.
6. Sprachsignal-Verarbeitungsschaltung nach Anspruch 5, dadurch gekennzeichnet, daß die Einrichtung (117, Fig. 6, Fig. 7) zur Erzeugung des die Tonhöhenerregung darstellenden Impulsfolgensignals eine Einrichtung (603, 605, 607) aufweist, die unter Ansprechen auf das Autokorrelationssignal des Blocks ein Signal (R max ), das den Maximalwert des Autokorrelationssignals in dem Block darstellt, und ein Tonhöhenperiodensignal (P) festlegt, das dem Zeitpunkt für das Auftreten des Maximalwertes des Autokorrelationssignals entspricht,
ferner eine Einrichtung (609) aufweist, die unter Ansprechen auf den festgestellten Maximalwert (R max ) des Autokorrelationssignals und den Anfangswert (R (0)) des Autokorrelationssignals in dem Block ein Tonhöhengewinnsignal (P G ) erzeugt, das dem Verhältnis des Maximalwertes des Autokorrelationssignals zum Anfangswert des Autokorrelationssignals entspricht,
und eine Einrichtung (701, 703, 707, 709, 713, 715-O-715-N-1) aufweist, die unter Ansprechen auf das Tonhöhengewinnsignal und das Tonhöhenperiodensignal das die Tonhöhenerregung darstellende Impulsfolgensignal erzeugt wobei n = 0, 1, 2, . . ., N-1, k = 0, 1, . . ., und N die Anzahl der diskreten Cosinus-Transformationskoeffizienten ist.
7. Sprachsignal-Verarbeitungsschaltung nach Anspruch 6, die umfaßt
eine Einrichtung (112) zum Multiplexieren der adaptiv quantisierten Transformationskoeffizienten-Codesignale, der Voraussageparameterisgnale, des Tonhöhenperiodensignals und des Tonhöhengewinnsignals für den Block von ersten Signalen,
eine Einrichtung (201), die an die Multiplexiereinrichtung (112) angeschaltet ist und die adaptiv quantisierten Transformationskoeffizienten-Codesignale des Blocks von den Voraussageparametersignalen, dem Tonhöhenperiodensignal und dem Tonhöhengewinnsignal des Blocks abtrennt,
eine Einrichtung (234), die unter Ansprechen auf die Voraussageparametersignale, das Tonhöhenperiodensignal und das Tonhöhengewinnsignal von der Trenneinrichtung (201) eine Gruppe von zweiten Adaptionssignalen für den Block bildet,
eine Einrichtung (203), die unter Ansprechen auf die adaptiv quantisierten Transformationskoeffizienten-Codesignale für den Block und die zweiten Adaptionssignale von der Einrichtung (234) zur Bildung von zweiten Adaptionssignalen, die adaptiv quantisierten Transformationskoeffizienten-Codesignale decodiert,
eine Einrichtung (207), die unter Ansprechen auf die Gruppe von decodierten, diskreten Cosinus-Transformationskoeffizienten-Codesignalen von der Decodiereinrichtung (203) eine Gruppe von vierten Signalen erzeugt, die die Sprachabtastungen des Blocks darstellen,
eine Einrichtung (208, 209, 211) zur Umwandlung der vierten Signale in ein Abbild der abgetasteten Sprachsignale, dadurch gekennzeichnet, daß die Einrichtung (234) zur Bildung des Adaptionssignals umfaßt
eine Einrichtung (222, 224, 226), die unter Ansprechen auf die Voraussageparametersignale von der Trenneinrichtung (201) eine Gruppe von fünften Signalen erzeugt, die das Formantspektrum der ersten Signale des Blocks darstellen,
eine Einrichtung (222, 228), die unter Ansprechen auf das Tonhöhenperiodensignal und das Tonhöhengewinnsignal von der Trenneinrichtung (201) eine Gruppe von sechsten Signalen erzeugt, die das Tonhöhenerregungsspektrum für die ersten Signale des Blocks darstellen,
eine Einrichtung (230), die die Gruppen von fünften und sechsten Signalen zur Bildung einer Gruppe von zweiten, gesteuerten Tonhöhenerregungs-Spektralpegelsignalen für den Block kombiniert, und
eine Adaptionsrechnereinrichtung (232), die unter Ansprechen auf die Gruppe von zweiten, gesteuerten Tonhöhenerregungs-Spektralpegelsignalen ein Bitzuordnungssignal und ein Schrittgrößen-Steuersignal für jedes adaptiv quantisierte Transformationskoeffizienten-Codesignal erzeugt.
8. Sprachsignal-Verarbeitungsschaltung nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, daß jedes erste Signal einen diskreten Cosinus-Transformationskoeffizienten des Blocks von Sprachabtastungen bei einer vorbestimmten Frequenz darstellt und daß jedes adaptiv quantisierte, diskrete Transformationskoeffizienten-Codesignal ein adaptiv quantisiertes, diskretes Cosinus-Transformationskoeffizienten-Codesignal ist.
9. Sprachsignal-Codierverfahren in einer Vocoderanordnung mit den Verfahrensschritten:
  • Abtasten eines Sprachsignals mit einer vorbestimmten Rate;
  • Aufteilen der Sprachsignalabtastungen in Blöcke;
  • Erzeugen, unter Ansprechen auf jeden Block von Sprachabtastungen, einer Gruppe von ersten Signalen, welche je einen besonderen Frequenzebenen-Transformationskoeffizienten des Blocks von Sprachabtastungen für eine vorbestimmte Frequenz darstellen;
  • Bilden einer Gruppe von ersten Adaptionssignalen aus den ersten Signalen des Blocks;
  • Erzeugen einer Gruppe von adaptiv quantisierten Transformationskoeffizienten- Codesignalen für jeden Block unter gemeinsamem Ansprechen auf die Gruppe von ersten Adaptionssignalen und die ersten Signale des Blocks,
dadurch gekennzeichnet, daß die Bildung der ersten Adaptionssignale folgende Verfahrensschritte beinhaltet:
  • Erzeugen einer Gruppe von zweiten Signalen, die das Formantspektrum der ersten Signale des Blocks darstellen;
  • Erzeugen einer Gruppe von dritten Signalen, die das Tonhöhenerregungsspektrum der ersten Signale des Blocks darstellen;
  • Kombinieren der zweiten und dritten Signale zur Erzeugung einer Gruppe von ersten Tonhöhenerregungs-Spektralpegelsignalen;
  • Erzeugen einer Gruppe von ersten Adaptionssignalen unter Ansprechen auf die ersten Tonhöhenerregungs-Spektralpegelsignale.
10. Verfahren nach Anspruch 9, dadurch gekennzeichnet, daß zur Erzeugung der Adaptionssignale ein Bitzuordnungssignal und ein Schrittgrößen-Steuersignal für jede erste Signalfrequenz unter Ansprechen auf das erste Tonhöhenerregungs-Spektralpegelsignal bei der ersten Signalfrequenz erzeugt wird und daß das Bitzuordnungssignal und das Schrittgrößen-Steuersignal die ersten Adaptionssignale zur adaptiven Quantisierung der ersten Signale sind.
11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, daß die Gruppe von zweiten Signalen durch Bilden eines Signals, das die Autokorrelation der ersten Signale des Blocks darstellt, und durch Bilden eines Formant-Spektralpegelsignals bei jeder ersten Signalfrequenz aus dem die Autokorrelation darstellenden Signal erzeugt wird,
daß die Gruppe von dritten Signalen durch Erzeugen eines Tonhöhenerregungs- Spektralpegelsignals bei jeder ersten Signalfrequenz unter Ansprechen auf das die Autokorrelation darstellende Signal gebildet wird und daß das Tonhöhenerregungs-Spektralpegelsignal und das Formant-Spektralpegelsignal für jede erste Signalfrequenz kombiniert werden, um ein erstes, gesteuertes Tonhöhenerregungs-Spektralpegelsignal bei der ersten Signalfrequenz zu erzeugen.
12. Verfahren nach Anspruch 11, dadurch gekennzeichnet, daß zur Bildung des Tonhöhenerregungs-Spektralpegelsignals ein Impulsfolgensignal, welches die Tonhöhenerregung der ersten Signale des Blocks darstellt, unter Ansprechen auf das die Autokorrelation darstellende Signal gebildet wird, und daß unter Ansprechen auf das Impulsfolgensignal eine Gruppe von Signalen erzeugt wird, die je den Tonhöhenerregungs-Spektralpegel bei einer ersten Signalfrequenz darstellen.
13. Verfahren nach Anspruch 12, dadurch gekennzeichnet, daß zur Bildung der zweiten Signale eine Gruppe von Signalen, welche die Voraussageparameter der ersten Signale des Blocks darstellen, aus dem die Autokorrelation darstellenden Signal gebildet wird, und daß die Formant-Spektralpegelsignale unter Ansprechen auf die Voraussageparametersignale des Blocks erzeugt werden.
14. Verfahren nach Anspruch 13, dadurch gekennzeichnet, daß zur Bildung des Tonhöhenerregungs-Impulsfolgensignals ein Signal (R max ), das den Maximalwert des Autokorrelationssignals in dem Block darstellt, und ein Tonhöhenperiodensignal (P), das dem Zeitpunkt für das Auftreten des Maximalwertes des Autokorrelationssignals entspricht, bestimmt werden,
daß unter Ansprechen auf das festgestellte maximale Autokorrelationssignal und den Anfangswert des Autokorrelationssignals in dem Block ein Tonhöhengewinnsignal (P G ) entsprechend dem Verhältnis des Maximalwertes des Autokorrelationssignals zu dem Anfangswert des Autokorrelationssignals gebildet wird,
und daß unter Ansprechen auf das Tonhöhengewinnsignal und das Tonhöhenperiodensignal ein Impulsfolgensignal für gebildet wird, wobei die Anzahl der diskreten Cosinus-Transformationskoeffizienten in dem Block ist.
15. Verfahren nach Anspruch 14, mit den Verfahrensschritten:
  • Multiplexieren der adaptiv quantisierten Transformationskoeffizienten-Codesignale, der Voraussageparametersignale, des Tonhöhenperiodensignals und des Tonhöhengewinnsignals für die ersten Signale des Blocks;
  • Anlegen der multiplexierten Signale an einen Nachrichtenkanal;
  • Abtrennen der multiplexierten, adaptiv quantisierten Transformationskoeffizienten-Codesignale des Blocks von den multiplexierten Voraussageparametersignalen, dem Tonhöhenperiodensignal und dem Tonhöhengewinnsignal;
  • Bilden einer Gruppe von zweiten Adaptionssignalen für den Block unter Ansprechen auf die abgetrennten Voraussageparametersignale, das Tonhöhenperiodensignal und das Tonhöhengewinnsignal;
  • Decodieren der abgetrennten, adaptiv quantisierten Transformationskoeffizienten- Codesignale unter Ansprechen auf die adaptiv quantisierten Transformationskoeffizienten-Codesignale des Blocks und die zweiten Adaptionssignale;
  • Erzeugen einer Gruppe von vierten Signalen, die die Sprachabtastungen des Blocks darstellen, aus den decodierten, adaptiv quantisierten Transformationskoeffizienten-Codesignalen;
  • Umwandeln der vierten Signale in Abbilder der Sprachsignalabtastungen;
dadurch gekennzeichnet, daß zur Bildung der zweiten Adaptionssignale folgende Verfahrensschritte vorgesehen sind:
  • Erzeugen einer Gruppe von fünften Signalen, die das Formantspektrum der ersten Signale des Blocks darstellen, unter Ansprechen auf die abgetrennten Voraussageparametersignale;
  • Erzeugen einer Gruppe von sechsten Signalen, die das Tonhöhenerregungsspektrum der ersten Signale des Blocks darstellen, aus den abgetrennten Tonhöhenperioden- und Tonhöhengewinnsignalen;
  • Kombinieren der Gruppe von fünften und sechsten Signalen zur Bildung einer Gruppe von zweiten, gesteuerten Tonhöhenerregungs- Spektralpegelsignalen für den Block;
  • Erzeugen eines Bitzuordnungs-Adaptionssignals und eines Schrittgrößen-Steuer-Adaptionssignals für jedes adaptiv quantisierte Transformationskoeffizienten-Codesignal unter Ansprechen auf die zweiten, gesteuerten Tonhöhenerregungs-Spektralpegelsignale.
16. Verfahren nach einem der Ansprüche 9 bis 15, dadurch gekennzeichnet, daß jedes erste Signal einen diskreten Cosinus-Transformationskoeffizienten des Blocks von Sprachabtastungen bei einer vorbestimmten Frequenz darstellt und daß jedes adaptiv quantisierte Transformationskoeffizienten-Codesignal ein adaptiv quantisiertes Cosinus- Transformationskoeffizienten-Codesignal ist.
DE19792934489 1978-08-25 1979-08-25 Schaltung und verfahren zur sprachsignalverarbeitung Granted DE2934489A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/936,889 US4184049A (en) 1978-08-25 1978-08-25 Transform speech signal coding with pitch controlled adaptive quantizing

Publications (2)

Publication Number Publication Date
DE2934489A1 DE2934489A1 (de) 1980-03-27
DE2934489C2 true DE2934489C2 (de) 1988-01-28

Family

ID=25469199

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19792934489 Granted DE2934489A1 (de) 1978-08-25 1979-08-25 Schaltung und verfahren zur sprachsignalverarbeitung

Country Status (8)

Country Link
US (1) US4184049A (de)
JP (1) JPS5557900A (de)
BE (1) BE878414A (de)
DE (1) DE2934489A1 (de)
FR (1) FR2434452A1 (de)
GB (1) GB2030428B (de)
NL (1) NL7906413A (de)
SE (1) SE437578B (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4101022A1 (de) * 1991-01-16 1992-07-23 Medav Digitale Signalverarbeit Verfahren zur geschwindigkeitsvariablen wiedergabe von audiosignalen ohne spektrale veraenderung der signale

Families Citing this family (108)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1123955A (en) * 1978-03-30 1982-05-18 Tetsu Taguchi Speech analysis and synthesis apparatus
JPS5913758B2 (ja) * 1980-02-22 1984-03-31 株式会社日立製作所 音声合成方法
US4401855A (en) * 1980-11-28 1983-08-30 The Regents Of The University Of California Apparatus for the linear predictive coding of human speech
EP0064119B1 (de) * 1981-04-30 1985-08-28 International Business Machines Corporation Sprachkodierungsverfahren und Einrichtung zur Durchführung des Verfahrens
DE3171311D1 (en) * 1981-07-28 1985-08-14 Ibm Voice coding method and arrangment for carrying out said method
JPS5921039B2 (ja) * 1981-11-04 1984-05-17 日本電信電話株式会社 適応予測符号化方式
USRE32580E (en) * 1981-12-01 1988-01-19 American Telephone And Telegraph Company, At&T Bell Laboratories Digital speech coder
US4472832A (en) * 1981-12-01 1984-09-18 At&T Bell Laboratories Digital speech coder
US4544919A (en) * 1982-01-03 1985-10-01 Motorola, Inc. Method and means of determining coefficients for linear predictive coding
US4470146A (en) * 1982-04-30 1984-09-04 Communications Satellite Corporation Adaptive quantizer with instantaneous error robustness
US4536886A (en) * 1982-05-03 1985-08-20 Texas Instruments Incorporated LPC pole encoding using reduced spectral shaping polynomial
JPS58196595A (ja) * 1982-05-12 1983-11-16 日本電気株式会社 パタ−ン特徴抽出装置
US4516258A (en) * 1982-06-30 1985-05-07 At&T Bell Laboratories Bit allocation generator for adaptive transform coder
CA1253255A (en) * 1983-05-16 1989-04-25 Nec Corporation System for simultaneously coding and decoding a plurality of signals
US4710891A (en) * 1983-07-27 1987-12-01 American Telephone And Telegraph Company, At&T Bell Laboratories Digital synthesis technique for pulses having predetermined time and frequency domain characteristics
JPS60196800A (ja) * 1984-03-21 1985-10-05 日本電信電話株式会社 音声信号処理方式
GB8421498D0 (en) * 1984-08-24 1984-09-26 British Telecomm Frequency domain speech coding
US4817158A (en) * 1984-10-19 1989-03-28 International Business Machines Corporation Normalization of speech signals
IT1179803B (it) * 1984-10-30 1987-09-16 Cselt Centro Studi Lab Telecom Metodo e dispositivo per la correzione di errori causati da rumore di tipo impulsivo su segnali vocali codificati con bassa velocita di ci fra e trasmessi su canali di comunicazione radio
US4790016A (en) * 1985-11-14 1988-12-06 Gte Laboratories Incorporated Adaptive method and apparatus for coding speech
US4675863A (en) 1985-03-20 1987-06-23 International Mobile Machines Corp. Subscriber RF telephone system for providing multiple speech and/or data signals simultaneously over either a single or a plurality of RF channels
US4820059A (en) * 1985-10-30 1989-04-11 Central Institute For The Deaf Speech processing apparatus and methods
JPS63501603A (ja) * 1985-10-30 1988-06-16 セントラル インステイチユ−ト フオ ザ デフ スピ−チ処理装置および方法
USRE34247E (en) * 1985-12-26 1993-05-11 At&T Bell Laboratories Digital speech processor using arbitrary excitation coding
US4827517A (en) * 1985-12-26 1989-05-02 American Telephone And Telegraph Company, At&T Bell Laboratories Digital speech processor using arbitrary excitation coding
US5924060A (en) * 1986-08-29 1999-07-13 Brandenburg; Karl Heinz Digital coding process for transmission or storage of acoustical signals by transforming of scanning values into spectral coefficients
US4961160A (en) * 1987-04-30 1990-10-02 Oki Electric Industry Co., Ltd. Linear predictive coding analysing apparatus and bandlimiting circuit therefor
US4926482A (en) * 1987-06-26 1990-05-15 Unisys Corp. Apparatus and method for real time data compressor
US4809334A (en) * 1987-07-09 1989-02-28 Communications Satellite Corporation Method for detection and correction of errors in speech pitch period estimates
DE3883519T2 (de) * 1988-03-08 1994-03-17 Ibm Verfahren und Einrichtung zur Sprachkodierung mit mehreren Datenraten.
US5023910A (en) * 1988-04-08 1991-06-11 At&T Bell Laboratories Vector quantization in a harmonic speech coding arrangement
US5179626A (en) * 1988-04-08 1993-01-12 At&T Bell Laboratories Harmonic speech coding arrangement where a set of parameters for a continuous magnitude spectrum is determined by a speech analyzer and the parameters are used by a synthesizer to determine a spectrum which is used to determine senusoids for synthesis
EP0339589A3 (de) * 1988-04-28 1992-01-02 Sharp Kabushiki Kaisha Orthogonales Transformationskodierungssystem für Bilddaten
US4964166A (en) * 1988-05-26 1990-10-16 Pacific Communication Science, Inc. Adaptive transform coder having minimal bit allocation processing
US4991213A (en) * 1988-05-26 1991-02-05 Pacific Communication Sciences, Inc. Speech specific adaptive transform coder
US5216748A (en) * 1988-11-30 1993-06-01 Bull, S.A. Integrated dynamic programming circuit
JP2625998B2 (ja) * 1988-12-09 1997-07-02 沖電気工業株式会社 特徴抽出方式
US5752225A (en) * 1989-01-27 1998-05-12 Dolby Laboratories Licensing Corporation Method and apparatus for split-band encoding and split-band decoding of audio information using adaptive bit allocation to adjacent subbands
US4989246A (en) * 1989-03-22 1991-01-29 Industrial Technology Research Institute, R.O.C. Adaptive differential, pulse code modulation sound generator
US5042069A (en) * 1989-04-18 1991-08-20 Pacific Communications Sciences, Inc. Methods and apparatus for reconstructing non-quantized adaptively transformed voice signals
US5012517A (en) * 1989-04-18 1991-04-30 Pacific Communication Science, Inc. Adaptive transform coder having long term predictor
US5105464A (en) * 1989-05-18 1992-04-14 General Electric Company Means for improving the speech quality in multi-pulse excited linear predictive coding
US5115240A (en) * 1989-09-26 1992-05-19 Sony Corporation Method and apparatus for encoding voice signals divided into a plurality of frequency bands
US5307441A (en) * 1989-11-29 1994-04-26 Comsat Corporation Wear-toll quality 4.8 kbps speech codec
JP3111459B2 (ja) 1990-06-11 2000-11-20 ソニー株式会社 音声データの高能率符号化方法
JP3185214B2 (ja) * 1990-06-12 2001-07-09 日本電気株式会社 改良dctの順変換計算装置および逆変換計算装置
JP2841765B2 (ja) * 1990-07-13 1998-12-24 日本電気株式会社 適応ビット割当て方法及び装置
US5235671A (en) * 1990-10-15 1993-08-10 Gte Laboratories Incorporated Dynamic bit allocation subband excited transform coding method and apparatus
US5206884A (en) * 1990-10-25 1993-04-27 Comsat Transform domain quantization technique for adaptive predictive coding
US5127053A (en) * 1990-12-24 1992-06-30 General Electric Company Low-complexity method for improving the performance of autocorrelation-based pitch detectors
DE69226095T2 (de) * 1991-01-17 1999-03-11 Sharp Kk Bildkodier- und Dekodiersystem unter Verwendung einer Orthogonaltransformation und Bitzuordnungsverfahren
JP3254687B2 (ja) * 1991-02-26 2002-02-12 日本電気株式会社 音声符号化方式
US5559900A (en) * 1991-03-12 1996-09-24 Lucent Technologies Inc. Compression of signals for perceptual quality by selecting frequency bands having relatively high energy
ZA921988B (en) * 1991-03-29 1993-02-24 Sony Corp High efficiency digital data encoding and decoding apparatus
KR100268623B1 (ko) * 1991-06-28 2000-10-16 이데이 노부유끼 압축 데이타 기록 재생 장치 및 신호 처리 방법
ATE210347T1 (de) * 1991-08-02 2001-12-15 Sony Corp Digitaler kodierer mit dynamischer quantisierungsbitverteilung
KR100263599B1 (ko) * 1991-09-02 2000-08-01 요트.게.아. 롤페즈 인코딩 시스템
US5487086A (en) * 1991-09-13 1996-01-23 Comsat Corporation Transform vector quantization for adaptive predictive coding
DE69227570T2 (de) * 1991-09-30 1999-04-22 Sony Corp Verfahren und Anordnung zur Audiodatenkompression
JP3144009B2 (ja) * 1991-12-24 2001-03-07 日本電気株式会社 音声符号復号化装置
JP3134455B2 (ja) * 1992-01-29 2001-02-13 ソニー株式会社 高能率符号化装置及び方法
JP3153933B2 (ja) * 1992-06-16 2001-04-09 ソニー株式会社 データ符号化装置及び方法並びにデータ復号化装置及び方法
JP3127600B2 (ja) * 1992-09-11 2001-01-29 ソニー株式会社 ディジタル信号復号化装置及び方法
JP3508146B2 (ja) * 1992-09-11 2004-03-22 ソニー株式会社 ディジタル信号符号化復号化装置、ディジタル信号符号化装置及びディジタル信号復号化装置
JP3343962B2 (ja) * 1992-11-11 2002-11-11 ソニー株式会社 高能率符号化方法及び装置
JP3185413B2 (ja) * 1992-11-25 2001-07-09 ソニー株式会社 直交変換演算並びに逆直交変換演算方法及びその装置、ディジタル信号符号化及び/又は復号化装置
JP3123286B2 (ja) * 1993-02-18 2001-01-09 ソニー株式会社 ディジタル信号処理装置又は方法、及び記録媒体
JP3186292B2 (ja) * 1993-02-02 2001-07-11 ソニー株式会社 高能率符号化方法及び装置
JP3186307B2 (ja) * 1993-03-09 2001-07-11 ソニー株式会社 圧縮データ記録装置及び方法
JP3123290B2 (ja) * 1993-03-09 2001-01-09 ソニー株式会社 圧縮データ記録装置及び方法、圧縮データ再生方法、記録媒体
US5590241A (en) * 1993-04-30 1996-12-31 Motorola Inc. Speech processing system and method for enhancing a speech signal in a noisy environment
JP3173218B2 (ja) * 1993-05-10 2001-06-04 ソニー株式会社 圧縮データ記録方法及び装置、圧縮データ再生方法、並びに記録媒体
US5581654A (en) * 1993-05-25 1996-12-03 Sony Corporation Method and apparatus for information encoding and decoding
EP0653846B1 (de) * 1993-05-31 2001-12-19 Sony Corporation Verfahren und vorrichtung zum kodieren oder dekodieren von signalen und aufzeichnungsmedium
CN1099777C (zh) * 1993-06-30 2003-01-22 索尼公司 数字信号的编码装置、解码装置和编码方法
TW272341B (de) * 1993-07-16 1996-03-11 Sony Co Ltd
TW327223B (en) * 1993-09-28 1998-02-21 Sony Co Ltd Methods and apparatus for encoding an input signal broken into frequency components, methods and apparatus for decoding such encoded signal
US5546383A (en) 1993-09-30 1996-08-13 Cooley; David M. Modularly clustered radiotelephone system
US5737720A (en) * 1993-10-26 1998-04-07 Sony Corporation Low bit rate multichannel audio coding methods and apparatus using non-linear adaptive bit allocation
JP3318931B2 (ja) * 1993-11-04 2002-08-26 ソニー株式会社 信号符号化装置、信号復号化装置及び信号符号化方法
EP0692881B1 (de) * 1993-11-09 2005-06-15 Sony Corporation Quantisierungsvorrichtung und -verfahren, kodierer und kodierverfahren mit hoher effizienz, dekodierer und aufzeichnungsträger
US5608713A (en) * 1994-02-09 1997-03-04 Sony Corporation Bit allocation of digital audio signal blocks by non-linear processing
JP3186412B2 (ja) * 1994-04-01 2001-07-11 ソニー株式会社 情報符号化方法、情報復号化方法、及び情報伝送方法
JP3250376B2 (ja) * 1994-06-13 2002-01-28 ソニー株式会社 情報符号化方法及び装置並びに情報復号化方法及び装置
JP3277699B2 (ja) * 1994-06-13 2002-04-22 ソニー株式会社 信号符号化方法及び装置並びに信号復号化方法及び装置
JP3277705B2 (ja) 1994-07-27 2002-04-22 ソニー株式会社 情報符号化装置及び方法、並びに情報復号化装置及び方法
JP3341474B2 (ja) * 1994-07-28 2002-11-05 ソニー株式会社 情報符号化方法及び復号化方法、情報符号化装置及び復号化装置、並びに情報記録媒体
JP3557674B2 (ja) * 1994-12-15 2004-08-25 ソニー株式会社 高能率符号化方法及び装置
JP3371590B2 (ja) * 1994-12-28 2003-01-27 ソニー株式会社 高能率符号化方法及び高能率復号化方法
US5781452A (en) * 1995-03-22 1998-07-14 International Business Machines Corporation Method and apparatus for efficient decompression of high quality digital audio
US5717819A (en) * 1995-04-28 1998-02-10 Motorola, Inc. Methods and apparatus for encoding/decoding speech signals at low bit rates
JP2778567B2 (ja) * 1995-12-23 1998-07-23 日本電気株式会社 信号符号化装置及び方法
JP3189660B2 (ja) 1996-01-30 2001-07-16 ソニー株式会社 信号符号化方法
SE9601606D0 (sv) * 1996-04-26 1996-04-26 Ericsson Telefon Ab L M Sätt vid radiotelekommunikationssystem
JP3255022B2 (ja) 1996-07-01 2002-02-12 日本電気株式会社 適応変換符号化方式および適応変換復号方式
JP3496411B2 (ja) * 1996-10-30 2004-02-09 ソニー株式会社 情報符号化方法及び復号化装置
US6003000A (en) * 1997-04-29 1999-12-14 Meta-C Corporation Method and system for speech processing with greatly reduced harmonic and intermodulation distortion
GB2326572A (en) * 1997-06-19 1998-12-23 Softsound Limited Low bit rate audio coder and decoder
US6313765B1 (en) 1997-10-10 2001-11-06 L-3 Communications Corporation Method for sample rate conversion of digital data
US6012025A (en) * 1998-01-28 2000-01-04 Nokia Mobile Phones Limited Audio coding method and apparatus using backward adaptive prediction
US6311154B1 (en) 1998-12-30 2001-10-30 Nokia Mobile Phones Limited Adaptive windows for analysis-by-synthesis CELP-type speech coding
US6985857B2 (en) * 2001-09-27 2006-01-10 Motorola, Inc. Method and apparatus for speech coding using training and quantizing
US8027242B2 (en) * 2005-10-21 2011-09-27 Qualcomm Incorporated Signal coding and decoding based on spectral dynamics
US8392176B2 (en) * 2006-04-10 2013-03-05 Qualcomm Incorporated Processing of excitation in audio coding and decoding
US20090198500A1 (en) * 2007-08-24 2009-08-06 Qualcomm Incorporated Temporal masking in audio coding based on spectral dynamics in frequency sub-bands
US8428957B2 (en) 2007-08-24 2013-04-23 Qualcomm Incorporated Spectral noise shaping in audio coding based on spectral dynamics in frequency sub-bands
TWI387270B (zh) * 2008-08-19 2013-02-21 Ite Tech Inc 可適性位元承載系統之低複雜度數位調變映射方法與裝置
JP5711733B2 (ja) * 2010-06-11 2015-05-07 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 復号装置、符号化装置及びこれらの方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3681530A (en) * 1970-06-15 1972-08-01 Gte Sylvania Inc Method and apparatus for signal bandwidth compression utilizing the fourier transform of the logarithm of the frequency spectrum magnitude
FR2389277A1 (fr) * 1977-04-29 1978-11-24 Ibm France Procede de quantification a allocation dynamique du taux de bits disponible, et dispositif de mise en oeuvre dudit procede
JPS54107704A (en) * 1978-02-01 1979-08-23 Shure Bros Attachment for stabilizing movement of record stylus and for eliminating static electricity from record disk

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4101022A1 (de) * 1991-01-16 1992-07-23 Medav Digitale Signalverarbeit Verfahren zur geschwindigkeitsvariablen wiedergabe von audiosignalen ohne spektrale veraenderung der signale

Also Published As

Publication number Publication date
DE2934489A1 (de) 1980-03-27
US4184049A (en) 1980-01-15
GB2030428B (en) 1982-07-14
BE878414A (fr) 1979-12-17
NL7906413A (nl) 1980-02-27
SE437578B (sv) 1985-03-04
JPH0146880B2 (de) 1989-10-11
FR2434452A1 (fr) 1980-03-21
GB2030428A (en) 1980-04-02
JPS5557900A (en) 1980-04-30
SE7906750L (sv) 1980-02-26
FR2434452B1 (de) 1983-07-18

Similar Documents

Publication Publication Date Title
DE2934489C2 (de)
DE3115859C2 (de)
DE2945414C2 (de) Sprachsignal-Voraussageprozessor und Verfahren zur Verarbeitung eines Sprachleistungssignals
DE3041423C1 (de) Verfahren und Vorrichtung zur Verarbeitung eines Sprachsignals
DE2953262C2 (de)
DE2229149A1 (de) Verfahren zur Übertragung von Sprache
DE2524497C3 (de) Verfahren und Schaltungsanordnung zur Sprachsynthese
DE3510660C2 (de)
DE69915400T2 (de) Vorrichtung zur Kodierung und Dekodierung von Audiosignalen
DE2551632C2 (de) Verfahren zum Zusammensetzen von Sprachnachrichten
DE2613258A1 (de) System zur automatischen spracherkennung
DE69629986T2 (de) Verfahren und Gerät zum Kodieren digitaler akustischer Signale
DE3302503A1 (de) Anlage und verfahren zur sprachverarbeitung
DE2820645A1 (de) Vorrichtung und verfahren zur spracherkennung
DE3736193C2 (de)
DE3019823C2 (de)
DE2622423B2 (de) Elektrische Anordnung zur Übertragung oder Speicherung eines Sprachoder Tonsignals in kodierter Form
DE2730662A1 (de) Verfahren und schaltung zum erzeugen eines autokorrelations-funktions-faktors
DE19743662A1 (de) Verfahren und Vorrichtung zur Erzeugung eines bitratenskalierbaren Audio-Datenstroms
DE69837296T2 (de) Verfahren und Vorrichtung zur Audiokodierung mittels einer mehrstufigen Mehrimpulsanregung
DE2263757C2 (de) Analog-Digitalumsetzer mit verringertem Quantisierungsrauschen
DE2720666A1 (de) Verfahren und anordnung zur geraeuschanalyse
DE60224100T2 (de) Erzeugung von lsf-vektoren
EP0803861B1 (de) Verfahren zum Ableiten charakteristischer Werte aus einem Sprachsignal
EP0340301B1 (de) Digitales adaptives transformationscodierverfahren

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8125 Change of the main classification

Ipc: G10L 5/00

8127 New person/name/address of the applicant

Owner name: AT & T TECHNOLOGIES, INC., NEW YORK, N.Y., US

8128 New person/name/address of the agent

Representative=s name: BLUMBACH, P., DIPL.-ING., 6200 WIESBADEN WESER, W.

D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee