-
Die
Erfindung betrifft im Allgemeinen die Erfassung und Verdeckung von
Fehlern in einem Signal, das in digitaler Form von einem Sender
an einen Empfänger
gesendet wird. Insbesondere betrifft die Erfindung die Erfassung
und Verdeckung von Übertragungsfehlern
in einem Tonsignal, das in der Form von Rahmen durch einen digitalen
Tonempfänger
verarbeitet wird.
-
Die Übertragung
eines digitalen Tonsignals in digitaler Form von einem Sender an
einen Empfänger ist
an sich bekannt, und sie ist immer häufiger anzutreffen, da digitale
Fernseh- und Rundfunksysteme ältere Systeme
ersetzen, die auf der analogen Frequenzmodulation basieren. Bekannte
Telekommunikationsstandards, die sich mit der Übertragung von digitalen Tonsignalen
beschäftigen,
umfassen den ETS 300 401 Standard von der Union Europäischer Rundfunkanstalten
EBU (European Broadcasting Union) und dem Europäischen Institut für Telekommunikationsstandards
ETSI (European Telecommunications Standards Institute), sowie die
ISO/IEC 11172-3 und ISO/IEC 13818-3 Standards von der Internationalen
Organisation für
Normung ISO (International Standard Organization) und der Internationalen
Elektrotechnischen Kommission IEC (International Electrotechnical
Commission). Diese Standards schreiben eine bestimmte Rahmenstruktur
für die Übertragung
eines digitalen Tonsignals vor. Der ETS 300 401 Standard, der auch
digitaler Hörfunk-
oder DAB (Digital Audio Broadcasting)-Standard genannt wird, schreibt
eine Rahmenstruktur vor, welche gewissermaßen ein Sonderfall der Rahmenstruktur
ist, die in den ISO/IEC 11172-3 und ISO/IEC 13818-3 Standards festgelegt
ist, da er zusätzliche
Spezifikationen enthält,
welche Rahmenstrukturangaben betreffen, die in den früheren Standards
offen gelassen wurden. Bei einer Tonsignalabtastfrequenz von 48
kHz basiert der DAB-Standard
auf dem ISO/IEC 11172-3 Standard und bei einer Abtastfrequenz von
24 kHz auf dem ISO/IEC 13818-3 Standard. Um den Hintergrund der
Erfindung zu veranschaulichen, wird die Struktur des Tonrahmens
gemäß den zuvor
erwähnten
Standards und seine Verarbeitung in Sende- und Empfangsvorrichtungen
im Folgenden kurz beschrieben.
-
1 ist
ein vereinfachtes Blockdiagramm einer Vorrichtung 1 gemäß den ISO/IEC
11172-3 und 13818-3 Schicht 2 Standards, welche DAB-Rahmen
aus einem pulscodemodulierten (PCM) Tonsignal erzeugt. Die Vorrichtung
umfasst einen Eingangsport 2, einen Ausgangsport 3 und
dazwischen eine Filterbank 4, einen Quantisier- und Codierblock 5 und
einen Rahmerzeugungsblock 6, die in Reihe geschaltet sind.
Parallel zur Filterbank 4 gibt es einen psychoakustischen
Modellblock 7, dessen Eingangssignal dasselbe wie das Filterbankeingangssignal
ist. Die Ausgaben der Blöcke 4 und 7 werden
zu einem Bitzuweisungsblock 8 gebracht, dessen Ausgabe
das Quantisieren und Codieren in Block 5 steuert. Die Vorrichtung
umfasst auch einen Datenport 9, derart dass programmbezogene
Digitaldaten, die zu ihm gebracht werden, zum Rahmenerzeugungsblock 6 geführt werden,
der die programmbezogenen Daten in die Rahmenstruktur einfügt.
-
2 ist
ein vereinfachtes Blockdiagramm einer Vorrichtung 10 gemäß den ISO/IEC
11172-3 und 13818-3 Schicht 2 Standards, welche die Rahmen,
die durch den Sender erzeugt werden, der in 1 dargestellt
ist, in ein pulscodemoduliertes Tonsignal decodiert. Sie umfasst
einen Eingangsport 11, einen Ausgangsport 12 und
dazwischen einen Rahmendecodierblock 13, einen Wiederherstellungsblock 14 und
eine Umkehrfilterbank 15, die in Reihe geschaltet sind.
Der Rahmendecodierblock 13 ist auch mit einem Datenport 16 verbunden,
um programmbezogene Daten zu anderen Schaltungen der Empfangsvorrichtung
zu bringen.
-
Das
Tonsignal wird als Rahmen zwischen den Vorrichtungen gemäß 1 und 2 übertragen.
Die Datenmenge in einem einzigen Rahmen entspricht einem 24 oder
48 ms langen Tonsignalteil. Zusätzlich
zu den eigentlichen Tondaten enthält der Rahmen Kopfinformationen,
Prüfsummen,
Informationen in Bezug auf die Verarbeitung von Tondaten und programmbezogene
Daten PAD (program associated data). Da die Übertragungswege nicht ideal
sind, können
in den Inhalten der Rahmen Fehler auftreten, welche den Betrieb
des Empfängers
in Abhängigkeit
von der Stelle des Fehlers im Rahmen unterschiedlich beeinflussen.
-
3 stellt
die Struktur eines Tonrahmens 17 gemäß dem DAB-Standard dar. Der
Rahmen umfasst eine ganze Zahl von Acht-Bit-Bytes (nicht dargestellt).
Er beginnt mit einem 32-Bit-Kopf 18, auf den ein 16-Bit-CRC-Wort 19 folgt.
Die Länge
des Bitzuweisungsteils 20 beträgt in Abhängigkeit vom Tonmodus (Einkanal,
Zweikanal, Stereo, Joint Stereo) und der verwendeten Abtastfrequenz,
sowie von der Bitrate, die zum Senden des Tonprogramms verwendet
wird, 26 bis 176 Bits. EIN SCFSI-Teil enthält Befehle für die Interpretation
des Skalenfaktorteils 22, der ihm folgt. Die Skalenfaktoren
in Letzterem liefern Informationen darüber, wie die verschiedenen
Teile des Signals auf der Rahmenerzeugungsstufe angehoben wurden.
Jeder Skalenfaktor wird durch ein Sechs-Bit-Codewort (nicht dargestellt)
gebildet, und die Anzahl von Codewörtern im Rahmen variiert gemäß der Menge
von Änderungen,
die es in den verschiedenen Teilen des Tonsignals während der Zeitdauer
gibt, die durch den Rahmen gebildet wird. Teil 23 enthält die eigentlichen
Abtastwerte, welche das abgetastete Tonsignal darstellen. Wenn die
Bits, welche die Abtastwerte darstellen, die Länge des für sie reservierten Raums nicht
füllen,
wird der leere Teil mit Füllbits 24 gefüllt.
-
Am
Ende des Rahmens 17, von rechts nach links in der Figur,
gibt es ein festes Feld für
programmbezogene Daten (F-PAD) 25, einen Fehlerschutz zur
zyklischen Redundanzprüfung
von Skalenfaktoren (SCF CRC) 26 für die Tondaten und ein erweitertes
Feld für
programmbezogene Daten (X-PAD) 27. Letzteres ist nicht
unbedingt in jedem Tonrahmen enthalten. Gemäß dem ETS 300 401 Standard
sind die Felder 25 und 27 für programmbezogene Daten zur Übertragung
von Daten bestimmt, die mit den eigentlichen Tondaten, die im Rahmen
enthalten sind, eng verbunden sind und die Synchronisierungsanforderungen
hinsichtlich der Tondaten aufweisen können. Ihre Verwendung ist nicht
obligatorisch. Die F-PAD- und X-PAD-Felder bilden zusammen den Teil
der programmbezogenen Daten (PAD). Das F-PAD-Feld umfasst konkret
einen Zwei-Bit-X-PAD-Indikator (nicht dargestellt), um anzugeben,
ob der Rahmen ein X-PAD-Feld
enthält,
und, wenn dies der Fall ist, ob es ein sogenanntes kurzes Vier-Byte-X-PAD-Feld
oder ein X-PAD-Feld
veränderlicher
Größe ist.
-
4 stellt
einen Tonrahmenkopf 18 genauer dar, dessen Länge 32 Bits
(vier Bytes) beträgt.
Die folgende Beschreibung betrifft sowohl die ISO/IEC 11172-3 und
ISO/IEC 13818-3 Standards als auch den DAB-Standard, so dass die
Spezifikationen, die durch den DAB-Standard gefordert werden, getrennt
erwähnt werden.
Die ersten zwölf
Bits bilden ein Synchronisierungswort 29, in welchem alle
Bits Einsen sind. Das nächste
Bit 30 ist ein sogenanntes ID-Bit, wobei der Wert "1" der Anwendung des ISO/IEC 11172-3 Standards entspricht,
und der Wert "0" der Anwendung des
ISO/IEC DIS 13818-3 Standards in der Tonsignalverarbeitung entspricht.
Die Länge
des Schichtenfelds 31 beträgt zwei Bits, und ihr Wert
entspricht der Schicht des ISO/IEC 11172-3 Standards in Verwendung.
Der DAB-Standard lässt
die Werte "10" (Schicht 2)
und "00" (reserviert für eine künftige Erweiterung)
zu. Das Schutzbit 32 gibt an, ob es eine Prüfsumme im
Rahmen gibt, und sein Wert ist gemäß dem DAB-Standard "0", was bedeutet, dass eine Prüfsumme verwendet
wird. Das nächste Vier-Bit-Feld 33 stellt
die Bitrate des Tonprogramms in Verwendung dar. Die ISO/IEC 11172-3
und ISO/IEC 13818-3 Standards lassen den Wert "111" in
Feld 33 nicht zu. Außerdem
lässt der
DAB-Standard den
Wert "0000" nicht zu. Das Abtastfrequenzfeld 34 umfasst
zwei Bits, welche die Abtastfrequenz des pulscodemodulierten Originalsignals
darstellen. Gemäß dem DAB-Standard
sind die Werte "00" und "01" in diesem Feld 34 nicht
zugelassen. Der Wert "01" entspricht einer
48-kHz-Abtastfrequenz,
wenn das ID-Bit "1" ist, und einer 24-kHz-Abstastfrequenz,
wenn das ID-Bit "0" ist. Der Wert "11" ist für eine künftige Erweiterung
reserviert. Ein Füllindikatorbit 35 ist
gemäß dem DAB-Standard "0", da es in dem Tonrahmen, der aus einem
48-kHz- oder 24-kHz-PCM- Signal
gebildet ist, keine Füllbits
gibt. Gemäß den ISO/IEC
11172-3 und ISO/IEC 13818-3 Standards ist Bit 35 "1", wenn es Füllbits im Tonrahmen gibt. Das
Privat-Bit 36, das zur privaten Verwendung reserviert ist,
hat gemäß den DAB-,
ISO/IEC 11172-3 und ISO/IEC 13818-3 Standards keine Bedeutung.
-
Ein
Zwei-Bit-Feld 37 gibt den Übertragungsmodus des Tonprogramms
an, welcher Stereo ("00"), Joint Stereo ("01"), Zweikanal ("10") oder Einkanal ("11") sein kann.
-
Der
Joint Stereo-Modus gemäß dem DAB-Standard
ist auch als "Intensitätsstereomodus" bekannt. Bei einer
Abtastfrequenz von 48 kHz stehen die Werte von Feld
37 und
33 derart
in Beziehung zueinander, dass nur die folgenden Kombinationen zugelassen
sind:
Bitrate
(kbit/s) | Zugelassene
Modi | Wert Feld 33 | Wert
Feld 37 |
32, 48,
56, 80 | Einkanal | "0001", "0011", "0010", "0101" | "11" |
224, 256,
320, 384 | Stereo,
Joint
Stereo, Zweikanal | "1011", "1101", "1100", "1110" | "00", "01", "10" |
64, 160,
96, 112, 128, 192 | alle
Modi | "0100", "0111", "1001", "0110", "1000", "1010" | alle
Werte |
-
Bei
einer Abtastfrequenz von 24 kHz sind alle Modi bei allen Bitraten,
die für
24 kHz festgelegt, sind, zugelassen.
-
Die
Modusfelderweiterung 38, deren Länge ebenfalls zwei Bit beträgt, ist
gemäß dem DAB-Standard nur
von Bedeutung, wenn der Modusfeldwert "01" ist,
d. h. der Joint Stereo-Modus in Verwendung ist. Dann zeigt der Wert
des Erweiterungsfelds 38 gemäß einer bestimmten Tabelle
an, welche der 32 Teilbänder
des Signals im Intensitätsstereomodus
sind. Das folgende Copyright-Bit 39 ist "0", wenn das übertragene Tonprogramm nicht
copyrightgeschützt
ist, und "1", wenn das Programm
durch einen Copyrightschutz gedeckt ist. Der Wert "1" des Kopie-Bits 40 gibt an,
dass das übertragene
Programm eine Originalaufzeichnung ist, und der Wert "0" gibt an, dass das Programm eine Kopie
ist. Der Wert des Emphase-Felds 41 entspricht gemäß dem ISO/IEC
11172-3 der Emphase, die bei der Codierung des Programms verwendet
wird. Der DAB-Standard lässt keine
Emphase zu, so dass gemäß dem DAB-Standard der Wert
des Feldes 41 stets "00" ist.
-
Für die Verarbeitung
von Abtastwerten und die Erzeugung von Rahmen teilt der ISO/IEC
11172-3 oder ISO/IEC 13818-3 Codierer das pulscodemodulierte Originalsignal
in 32 Teilbänder
(siehe Filterbank 4 in 1). Für einen
Rahmen liest der Codierer 36 Abtastwerte aus jedem Teilband
aus und ordnet sie in drei Gruppen zu je 12 Abtastwerten an. Für jede Gruppe
bestimmt der Codierer einen Skalenfaktor oder einen Koeffizienten
zur Normierung der Teilbänder
für die Übertragung.
Die gegenseitige Beziehung der Größe der Gruppenskalenfaktoren
bestimmt, ob der Codierer alle drei Skalenfaktoren in den zu sendenden
Rahmen einfügt
oder ob er die (Beinahe-)Übereinstimmung
der Skalenfaktoren durch Einfügen
nur eines oder zweier Skalenfaktoren in den Rahmen verwendet. Die
Anzahl von Skalenfaktoren je Einzelteilband wird durch einen teilbandspezifischen
SCFSI-Parameter dargestellt, auf den zuvor in der Beschreibung von 3 Bezug
genommen wurde. Für
jeden Skalenfaktor gibt es ein Sechs-Bit-Codewort im Rahmenskalenfaktorteil,
wobei Werte von "000000" bis "111110" zugelassen sind.
-
Der
Codierer der Sendevorrichtung überwacht
kontinuierlich das Frequenzspektrum des codierten Tonsignals und
vergleicht es mit einem sogenannten psychoakustischen Modell, auf
dessen Basis er die begrenzte Anzahl von Bits, die in jeden Rahmen
kommen, unter die Teilbänder
aufteilt. Diese sogenannte Bitzuweisungsprozedur reserviert die
meisten Bits für
jene Teile des Signals, die für
den Höreindruck
am wichtigsten sind. Dieselbe Prozedur bestimmt die Anzahl von Quantisierungsstufen
für jedes
Teilband. Den niedrigstwertigen Teilbändern werden gar keine Bits
im Rahmen zugewiesen, so dass ihre Anzahl von Quantisierungsstufen
null ist. Auf anderen Teilbändern
umfassen zugelassene Anzahlen von Quantisierungsstufen 16 ganze Zahlen.
Bei der Abtastfrequenz von 48 kHz ist die kleinste Anzahl 0 und
die größte 65.535,
mit Ausnahme der Modi mit niedriger Bitrate (32 oder 48 kbit/s),
bei welchen die maximale Anzahl von Stufen auf den beiden höchstwertigen
Teilbändern
32.767 und auf den folgenden sechs Teilbändern 127 beträgt. In den
Modi mit niedriger Bitrate umfasst der Rahmen nur die Abtastwerte
der acht höchstwertigen
Teilbänder
(Teilband 0 bis 7). In anderen Modi umfasst der Rahmen die Abtastwerte
der 27 höchstwertigen
Teilbänder
(Teilband 0 bis 26). Bei der Abtastfrequenz von 24 kHz beträgt die maximale
Anzahl von Quantisierungsstufen für die vier ersten Teilbänder 16.383,
auf den nächsten
sieben Teilbändern 127 und
auf den folgenden neunzehn Teilbändern 9 und
auf den zwei unwichtigsten Teilbändern
0.
-
Um
die Abtastwerte zu codieren, wird jeder Abtastwert durch den Skalenfaktor
geteilt, der mit ihm verbunden ist, und es wird ein Codewort aus
dem Ergebnis gemäß einer
Abbildungsoperation gebildet, die in den Standards definiert ist.
Jedes Codewort umfasst in Abhängigkeit
von der Anzahl von Quantisierungsstufen mindestens 3 und höchstens
16 Bits. Auf Teilbändern,
welchen die Bitzuweisungsprozedur drei, fünf oder neun Quantisierungsstufen
zuwies, bilden drei aufeinander folgende Abtastwerte eine Granule,
die durch ein gemeinsames Codewort dargestellt wird. Ihr maximal
zulässiger
Wert im Falle von drei Quantisierungsstufen beträgt 26, im Falle von fünf Quantisierungsstufen 124 und
im Falle von neun Quantisierungsstufen 728. Die Abbildungsoperation,
die bei der Codeworterzeugung verwendet wird, wird so gewählt, dass
das Codewort nicht nur Einsen umfassen kann. Dies dient dazu, ein
Verwechseln von Codewörtern
und dem Synchronisierungswort "1111
1111 1111", das
sich am Beginn des Rahmens befindet, in der Empfangsvorrichtung
zu verhindern.
-
In
der Digitalübertragung
eines Tonsignals gemäß dem Stand
der Technik basieren die Fehlererfassung und die resultierenden
Fehlerverdeckungsversuche auf der Verwendung von Prüfsummen.
Gemäß dem Vorhergesagten
weist der Tonrahmen gemäß den ISO/IEC
11172-3 und ISO/IEC 13818-2 Standards ein Prüfsummenfeld (Bezugszeichen 19 in 3)
auf, und der Tonrahmen gemäß dem DAB-Standard
weist zusätzlich ein
zweites Prüfsummenfeld
(Bezugszeichen 26 in 3) auf.
Erstere ist eine 16-Bit-CRC-Prüfsumme,
welche die dritten und vierten Bytes im Rahmenkopf, sowie den Bitzuweisungsteil
(Bezugszeichen 20 in 3) und den
SCFSI-Teil (Bezugszeichen 21 in 3) abdeckt.
Das Polynom, das die CRC-Prüfsumme
erzeugt, ist G1(X) = X16 +
X15 + X2 + 1. Der
Empfänger
verwendet dasselbe Polynom, um die CRC-Prüfsumme für die Bits des zuvor erwähnten Abdeckungsbereichs
zu berechnen, und, wenn sie nicht der Prüfsumme im empfangenen Rahmen
entspricht, wird ein Übertragungsfehler
im Rahmen erfasst.
-
Gemäß dem DAB-Standard
deckt das zweite Prüfsummenfeld
am Ende des Rahmens die höchstwertigen
Bits der Skalenfaktoren ab. Bei einer Abtastfrequenz von 48 kHz
weisen Modi, in welchen die kanalspezifische Bitrate mindestens
56 kbit/s ist (entspricht einer Gesamtbitrate von mindestens 56
kbit/s im Einkanalmodus und mindestens 112 kbit/s in den anderen
Modi), die Skalenfaktoren auf, die durch vier getrennte CRC-Prüfsummen
geschützt
sind, wobei die erste (ScF-CRC0) Teilband 0 bis 3, die zweite (ScF-CRC1)
Teilband 4 bis 7, die dritte (ScF-CRC2) Teilband 8 bis 15 und die
vierte (ScF-CRC3) Teilband 16 bis 26 abdeckt. In Modi, in welchen
die kanalspezifische Bitrate unter 56 kbit/s ist, werden die Skalenfaktoren
durch zwei CRC-Prüfsummen
geschützt,
wobei die erste (ScF-CRC0) Teilband 0 bis 3 und die zweite (ScF-CRC1)
Teilband 4 bis 7 abdeckt. Bei der Abtastfrequenz von 24 kHz werden
die Skalenfaktoren stets durch vier getrennte CRC-Prüfsummen
geschützt,
wobei die erste (ScF-CRC0) Teilband 0 bis 3, die zweite (ScF-CRC1)
Teilband 4 bis 7, die dritte (ScF-CRC2) Teilband 8 bis 15 und die
vierte (ScF-CRC3) Teilband 16 bis 29 abdeckt. Damit die Positionen
der ersten und zweiten Prüfsummen
nicht gemäß der Bitrate
vertauscht werden, sind die Prüfsummen
in Feld 26 von 3 in umgekehrter Reihenfolge
angeordnet, d. h. im Falle der höheren
Bitrate von 48 kHz und 24 kHz ist die Prüfsumme ScF-CRC3 die erste,
gelesen vom Anfang des Rahmens, und die Prüfsumme ScF-CRC0 ist die letzte, gelesen
vom Anfang des Rahmens. Im Falle der niedrigeren Bitrate von 48
kHz ist die Prüfsumme
ScF-CRC1 die erste, gelesen vom Anfang des Rahmens, und die Prüfsumme ScF-CRC0 kommt danach.
Das Polynom, das alle CRC-Prüfsummen
erzeugt, welche die Skalenfaktoren schützen, ist G2(X)
= X8 + X4 + X3 + X2 + 1, und jede
von ihnen deckt die drei höchstwertigen
Bits der Skalen gemäß der zuvor
erwähnten
Gruppenbildung ab. Der Empfänger
verwendet dasselbe Polynom, um die CRC-Prüfsummen für die höchstwertigen Bits der Skalenfaktoren
zu berechnen, und, wenn irgendeine davon nicht der Prüfsumme im
empfangenen Rahmen entspricht, wird ein Übertragungsfehler im Rahmen
erfasst.
-
Die
zuvor erwähnten
Standards ETS 300 410, ISO/IEC 11172-3 und ISO/IEC 13818-3 schreiben kein obligatorisches
Betriebsmodell vor, gemäß dem der
Empfänger
auf Übertragungsfehler,
die er in empfangenen Tonrahmen erfasst, reagieren sollte. Es sind
jedoch verschiedene Betriebsmodellalternativen aus empfehlenden
Teilen der Standards und aus der übrigen Telekommunikationstechnologie
bekannt. In der digitalen Mobilfunktechnologie, in der das Sprechsignal
in Rahmen übertragen
wird, ist es üblich,
dass ein Empfänger
einen Tonteil, der durch einen Rahmen mitgeführt wird, der als fehlerhaft
erfasst wurde, nicht wiedergibt, sondern die Klangwiedergabeeinheit
für einen
Augenblick abgeschwächt
oder den abgelehnten Rahmen durch Rauschen ersetzt. Eine andere
Option ist, dass der Empfänger
anstelle des fehlerhaften Rahmens den vorhergehenden fehlerfreien
Rahmen erneut wiedergibt. Da jedoch die Tontechnologie gemäß dieser
Patentanmeldung eine Klangwiedergabe mit einer wesentlich besseren
Qualität
als die der Fernsprechtechnologie anstrebt, würde eine automatische Abschwächung oder
Ersetzung eines ganzen Rahmens den Höreindruck zu sehr verschlechtern.
-
Ein
anderer Nachteil des Standes der Technik ist, dass die Prüfsummen
kein 100%ig zuverlässiges Verfahren
zur Erfassung aller Übertragungsfehler
darstellen. Wenn mehrere Fehler in ein und demselben Rahmen auftreten,
ist es möglich,
dass ihr Einfluss auf die Prüfsumme
außer
in der entgegengesetzten Richtung gleich ist, so dass die Prüfsummen
trotz der Fehler im Rahmen als korrekt erscheinen.
-
Ein
bekannter Stand der Technik wird in den Veröffentlichungen
EP-A-718982 und
US-A-5148487 erörtert, welche
verschiedene Aspekte des Decodierens von Rahmen beschreiben, welche
digitale Toninformationen enthalten und Fehler verdecken, die in
den decodierten Rahmen gefunden werden.
-
Eine
Aufgabe dieser Erfindung ist es, ein Verfahren und ein Gerät bereitzustellen,
mit welchen eine Erfassung und eine Verdeckung von Fehlern beim
Empfang eines digitalen Tonsignals zuverlässiger als bei den Lösungen des
Standes der Technik durchgeführt
werden können.
Eine andere Aufgabe der Erfindung ist es, ein Verfahren und ein
Gerät bereitzustellen,
welche zum digitalen Tonempfang geeignet sind und mit welchen die
Verdeckung von Übertragungsfehlern
den Höreindruck
eines wiedergegebenen Klangs nur wenig verzerrt wird.
-
Die
Aufgaben der Erfindung werden durch Beobachten in den Decodier-
und Fehlerverdeckungseinheiten des Empfängers von mehreren aufeinander
folgenden Rahmen und Auslegen ihrer Decodierung und der Tonsignalwiederherstellung
in geeigneter Weise erreicht.
-
Das
Verfahren gemäß der Erfindung
ist durch die Merkmale gekennzeichnet, die im kennzeichnenden Teil
des unabhängigen
Anspruchs dargelegt werden, der an ein Verfahren gerichtet ist.
-
Die
Erfindung ist auch an eine Decodiervorrichtung zur Realisierung
des Verfahrens gemäß der Erfindung
gerichtet. Die Vorrichtung gemäß der Erfindung
ist durch die Merkmale gekennzeichnet, die im kennzeichnenden Teil
des unabhängigen
Anspruchs dargelegt werden, der an eine Vorrichtung gerichtet ist.
-
Das
Verfahren gemäß der Erfindung
strebt eine ausgeglichene Lösung
an, in welcher das optimale Übertragungsfehlererfassungs-
und -verdeckungsniveau unter Verwendung einer zumutbaren Rechenleistung erreicht
wird. Der Empfänger
empfängt
und speichert mehrere aufeinander folgende Rahmen, welche, wenn gespeichert,
eine bestimmte Rahmentabelle bilden. Um die Tabelle zu lesen, verwendet
der Empfänger
ein bestimmtes Fenster, dessen Größe eine ganzzahlige Anzahl
von Rahmen größer als
null ist und das wenigstens den aktuellen Rahmen abdeckt. In einer
bevorzugten Ausführungsform
deckt das Fenster auch wenigstens einen Rahmen, der vor dem aktuellen
Rahmen empfangen wurde, und wenigstens einen Rahmen ab, der nach dem
aktuellen Rahmen empfangen wird. Das Decodieren von Rahmen im Fensterbereich
erfolgt in Stufen. Der letzte Rahmen, der im Fensterbereich ankommt,
wird zunächst
decodiert, bis seine Skalenfaktoren ermittelt sind. Dann verdeckt
der Empfänger
mögliche
Fehler, die in den Skalenfaktoren des aktuellen Rahmens gefunden
werden. Bei der Verdeckung verwendet er Skalenfaktoren anderer Rahmen
im Fensterbereich. Als Nächstes
setzt der Empfänger
das Decodieren des letzten Rahmens fort, bis seine Abtastwerte dequantisiert,
aber noch nicht skaliert sind. Danach verwendet der Empfänger Rahmen
im Fensterbereich, um Fehler zu verdecken, die er möglicherweise
in den unskalierten Abtastwerten des aktuellen Rahmens gefunden
hat. Nur dann werden die Abtastwerte des aktuellen Rahmens skaliert
und wird mittels einer Umkehrfilterung ein PCM-Signal erzeugt, welches
zum Ausgangsport des Decodierers gebracht wird.
-
Nach
der Verarbeitung eines Rahmens bewegt der Empfänger das Beobachtungsfenster
in Bezug auf die Rahmentabelle einen Rahmen vorwärts, woraufhin die zuvor beschriebene
Rahmendecodierung wieder von vorne beginnt. Das Verfahren gemäß der Erfindung
eignet sich sehr für
eine Parallelverarbeitung, da der Empfang von neuen Rahmen, ihr
Speichern in der Rahmentabelle, die Erfassung und Verdeckung von
Fehlern im aktuellen Rahmen, die Umkehrfilterung des korrigierten
Rahmens und das Schreiben in den Ausgangsdatenfluss getrennte, parallel
funktionierende Teile sein können.
-
Im
Verfahren gemäß der Erfindung
basiert eine Erfassung von Fehlern sowohl auf der Verwendung von
Prüfsummen
als auch auf der Verwendung von sogenannten Basissätzen von
zugelassenen Werten.
-
Letzteres
bedeutet, dass, wenn der Empfänger
in einem bestimmten Teil eines empfangenen Rahmens eine Bitkombination
erfasst, die keine Kombination ist, die für diesen Teil des Rahmens zugelassen
ist, wie durch die Standards festgelegt, angenommen wird, dass ein Übertragungsfehler
in diesem konkreten Teil vorliegt. Sowohl für die Skalenfaktoren als auch
die Abtastwerte versucht der Empfänger, die Werte, die als fehlerhaft
angenommen werden, durch korrekte Werte zu ersetzen, die im nächstmöglichen
Rahmen gefunden werden. Nur in einer Situation, in welcher im ganzen
Beobachtungsfensterbereich keine korrekten Ersetzungswerte gefunden
werden können,
wird die völlige
oder teilweise Abschwächung
des wiedergegebenen Signals als Mittel zum Verdecken des fehlerhaften
Teils verwendet.
-
Die
Größe des Beobachtungsfensters
kann in einer bevorzugten Ausführungsform
der Erfindung ein dynamisch veränderlicher
Parameter sein, so dass das Verfahren an verschiedene Bedingungen
angepasst wird, die Übertragungsfehler
verursachen. Eine Art und Weise, Fehlerbedingungen eine längere Dauer
als einen Rahmen zu schätzen,
ist, einen kontinuierlich aktualisierten Fehlerparameter zu führen, der
die Bitfehlerrate (BER) des empfangenen Signals darstellt. Der Empfänger kann
auch den Fehlerparameterwert auch verwenden, um andere Entscheidungen
hinsichtlich Decodierung und Fehlerverbergung zu treffen. Wenn das mittlere
Fehlerniveau hoch ist, kann es vorteilhafter sein, einen unkorrigierbaren
Fehler durch Abschwächen eines
ganzen Rahmens zu verarbeiten, während
bei einem niedrigen mittleren Fehlerniveau ein Abschwächen eines
oder einiger Teilbänder
eine bessere Lösung
ist.
-
Die
Erfindung wird unter Bezugnahme auf die bevorzugten Ausführungsformen,
die als Beispiele dargelegt werden, und auf die beiliegenden Zeichnungen
ausführlicher
beschrieben, wobei
-
1 einen
bekannten Codierer darstellt,
-
2 einen
bekannten Decodierer darstellt,
-
3 einen
bekannten digitalen Tonrahmen darstellt,
-
4 einen
bekannten Kopf im Rahmen gemäß 3 darstellt,
-
5 eine
Tabellen- und Fensterbildung von Tonrahmen gemäß der Erfindung darstellt,
-
6 ein
Detail des Verfahrens gemäß der Erfindung
in der Form eines Flussdiagramms darstellt,
-
7 die
Reihenfolge von Aktivitäten
in einer Stufe des Verfahrens gemäß der Erfindung darstellt,
und
-
8 den
Decodierer gemäß der Erfindung
darstellt.
-
Zuvor
wurde in Verbindung mit der Beschreibung des Standes der Technik
auf 1 bis 4 Bezug genommen, so dass in
der folgenden Beschreibung der Erfindung und ihrer bevorzugten Ausführungsformen hauptsächlich auf 5 bis 8 Bezug
genommen wird. Gleiche Elemente in den Figuren sind mit gleichen Bezugszeichen
versehen.
-
Im
Verfahren gemäß der Erfindung
verwendet der Empfänger
Dateninhalte von mehreren aufeinander folgenden Rahmen, um den Rahmen,
der zu einem bestimmten Zeitpunkt verarbeitet wird, zu decodieren
und die darin möglicherweise
erfassten Fehler zu verdecken. 5 stellt
eine ringähnliche
Rahmentabelle 42 dar. Die Form der Tabelle an sich hat
keine konkrete Bedeutung, da sie in einer bevorzugten Ausführungsform
der Erfindung nur als eine bestimmte Anzahl von Computerspeicherstellen
vorhanden ist, da aber vorteilhafterweise ein sogenanntes zyklisches
Zeigen zum Zeigen auf Ein-Rahmen-Blöcke 42a in der Tabelle
verwendet wird, dient es der Veranschaulichung, die Tabelle in einer
ringähnlichen
Form darzustellen. Zyklisches Zeigen bedeutet, dass auf einen bestimmten
Block mit der Adresse [k] ein Block in der Tabelle folgt, dessen
Adresse [(k + 1) mod NFRMS] ist, wobei NFRMS die Anzahl von Blöcken in
der Tabelle ist. Der Empfänger
gemäß der Erfindung
speichert anfänglich
jeden empfangenen Rahmen in der Tabelle 42 gemäß 5 in der
Form, die der Rahmen hat, wenn er am Eingangsport des Decodierers
ankommt.
-
5 stellt
auch ein Fenster 43 dar, das durch den Decodierer des Empfängers verwendet
wird, um die Rahmen zu decodieren und die Übertragungsfehler zu verdecken,
die möglicherweise
darin auftreten. Die Größe des Fensters
ist eine ganzzahlige Anzahl von Rahmen größer als null. Der Index des
Rahmens in der Mitte des Fensters, welcher den Rahmen innerhalb
des Fensters identifiziert, ist 0, und der Rahmen wird der aktuelle
Rahmen genannt. Jene Rahmen im Fenster, die nach dem aktuellen Rahmen
empfangen und in der Tabelle 42 gespeichert wurden, sind Nachfolgerrahmen,
und der Rahmen, der vom aktuellen Rahmen am weitesten entfernt ist,
ist der vordere Rahmen. Jene Rahmen im Fenster, die vor dem aktuellen
Rahmen empfangen und in der Tabelle 42 gespeichert wurden, sind
Vorgängerrahmen,
und der Rahmen, der am weitesten vom aktuellen Rahmen entfernt ist,
ist der hintere Rahmen. Die Anzahl von Nachfolgerrahmen ist mit
cnnxt ("aktuelle
Anzahl von nachfolgenden Rahmen" nach
engl. current number of next frames) gekennzeichnet, und die Anzahl
von Vorgängerrahmen
ist mit cnpre ("aktuelle
Anzahl von vorhergehenden Rahmen" nach
engl. current number of previous frames) gekennzeichnet. Die Werte
von cnnxt und cnpre können
sich in einer Weise dynamisch ändern,
die später
ausführlich
beschrieben wird, aber sie müssen
die doppelte Ungleichheit 0 = (cnpre + cnnxt) < NFRMS erfüllen, damit die Größe des Fensters 43 in
Rahmen (= cnpre + cnnxt + 1) stets mindestens 1 und nicht mehr als
NFRMS ist. Wenn die Größe des Fensters 43 ein
Rahmen ist, beziehen sich die Bezeichnungen vorderer Rahmen, hinterer
Rahmen und aktueller Rahmen auf ein und denselben Rahmen.
-
Rahmen
im Fenster 43 sind in einer Weise indiziert, welche von
der Rahmenstelle in der Tabelle 42 unabhängig ist. Der Index des aktuellen
Rahmens ist 0, wie bereits erwähnt.
Die Indizes von Nachfolgerrahmen sind positive ganze Zahlen, derart
dass der Index des Nachfolgerrahmens, der dem aktuellen Rahmen am
nächsten
ist, 1 ist, der Index des nächsten
Nachfolgerrahmens 2 ist und so weiter; der Index des vorderen Rahmens
ist +cnnxt.
-
6 stellt
in der Form eines Flussdiagramms eine Programmschleife dar, die
zum Umwandeln der Tondaten, die durch den aktuellen Rahmen mitgeführt werden,
in ein PCM- Format
in einer so fehlerfreien Weise als möglich bestimmt ist. Es ist
besonders zu erwähnen,
dass in der folgenden Beschreibung die Operationen abwechselnd auf
verschiedene Rahmen gerichtet werden, und um die Beschreibung zu
verstehen, ist es notwendig, dass der Leser die Rahmen nicht miteinander
verwechselt. Die Ausführung
der Programmschleife beginnt gemäß 6 damit,
dass der Empfänger
in Schritt 44 beginnt, den vorderen Rahmen zu decodieren und
damit fortfährt,
bis die Skalenfaktoren des vorderen Rahmens decodiert sind. Danach
prüft der
Empfänger in
Schritt 45 auf eine Weise, die später beschrieben wird, ob es Übertragungsfehler
in den Skalenfaktoren des aktuellen Rahmens gibt, und verdeckt sie
nötigenfalls
unter Verwendung eines Verfahrens, das später beschrieben wird. Dann
setzt der Empfänger
das Decodieren des vorderen Rahmens gemäß Schritt 47 fort,
bis die Teilbandabtastwerte darin dequantisiert, aber noch nicht
durch Multiplizieren derselben mit den im Rahmen enthaltenen Skalenfaktoren
skaliert sind. Als Nächstes
prüft der
Empfänger
in Schritt 48 auf eine Weise, die später beschrieben wird, ob es Übertragungsfehler
in den Teilbandabtastwerten des aktuellen Rahmens gibt, und verdeckt
sie nötigenfalls
in Schritt 49 unter Verwendung eines Verfahrens, das später beschrieben
wird. Dann führt
der Empfänger
in Schritt 50 das Skalieren von Abtastwerten des aktuellen
Rahmens auf eine bekannte Weise durch und leitet die skalierten
Abtastwerte zur Umkehrfilterung, wo ein PCM-Signal erzeugt und zum
Ausgangsport des Decodierers weitergeführt wird. Schließlich bewegt
der Empfänger
gemäß Schritt 51 das
Fenster um einen Tabellenblock weiter (d. h. er nimmt einen neuen
Rahmen als vorderen Rahmen, subtrahiert einen von den Indizes von
allen Rahmen, die bereits im Fenster waren, und wirft den hinteren
Rahmen aus dem Fenster) und beginnt in Schritt 44 wieder
mit dem Decodieren beim neuen vorderen Rahmen. Das Decodieren dauert
an, solange der Empfänger
in Betrieb ist und neue Rahmen empfangen und in der Tabelle 42 gespeichert
werden.
-
Das
Flussdiagramm in 6 setzt nicht voraus, dass das
Verfahren gemäß der Erfindung
nur als eine Reihe von zeitlich aufeinander folgenden Operationen
ausgeführt
werden könnte.
Wenn der Empfänger
mehrere parallele Prozesse gleichzeitig ausführen kann, kann das Leiten
eines decodierten aktuellen Rahmens zur Umkehrfilterung und von
da im PCM-Format zum Ausgangsport des Decodierers parallel zum Beginn
einer neuen Decodierungsoperation stattfinden. Ähnlich können das Speichern von neuen
Rahmen in der Tabelle 42 außerhalb
des Bereichs, der durch das Fenster 43 abgedeckt ist, und
das Entfernen von Rahmen, die bereits aus dem Fenster 43 geworfen
wurden (in der Praxis überschreibt
der Empfänger
die alten Rahmen im Speicher mit neuen), zur selben Zeit stattfinden,
zu der die Rahmen im Fenster verarbeitet werden.
-
Die
Größe des Fensters 43 kann
sich während
des Betriebs des Empfängers ändern, solange
die größenbegrenzenden
Anzahlen cnnxt und cnpre nicht gegen die zuvor in der Form der doppelten
Ungleichheit festgelegte Bedingung verstoßen. Die Anzahl von Nachfolgerrahmen
ist direkt proportional zur Decodierungsverzögerung, die durch den Decodierer
hervorgerufen wird. Wenn es aus irgendeinem Grund wünschenswert ist,
die Verzögerung
zu verlängern,
kann der Empfänger
die Programmschleife gemäß 6 derart
ausführen, dass
er die Indexsubtraktionsoperation gemäß Schritt 51 auslässt, bis
die gewünschte
Verzögerung
erreicht ist. Dann bleibt der aktuelle Rahmen in jedem Zyklus gleich
und es tritt nur ein neuer vorderer Rahmen im Fenster auf, welcher
einen Index weiter vom aktuellen Rahmen entfernt ist als der vorhergehende
vordere Rahmen (cnnxt nimmt zu). Wenn es wünschenswert ist, die Verzögerung zu
verkürzen
(cnnxt nimmt ab), kann der Empfänger
in Schritt 51 von den Indizes der Rahmen im Fenster eine
Anzahl größer als
1 subtrahieren (um genau zu sein, die Anzahl [1 + (cnnxtalt – cnnxtneu)], wobei cnnxtalt der
Wert von cnnxt vor dem Verkürzen
der Verzögerung
ist, und cnnxtneu der Wert von cnnxt nach
dem Verkürzen
der Verzögerung
ist). Dann springt der Index wenigstens eines Rahmens über null,
d. h. der betreffende Rahmen wird nie der aktuelle Rahmen. Dies kann
zu einer vorübergehenden
Verzerrung im Höreindruck
des wiedergegebenen Klangs führen,
selbst wenn eine Umkehrfilterung im Allgemeinen dazu neigt, den
Einfluss solcher Verzerrungen zu verringern. Der Empfänger kann
auch die hintere Grenze (die Grenze auf der Seite des hinteren Rahmens)
des Fensters 43 vorwärts
(cnpre nimmt ab) oder rückwärts (cnpre
nimmt zu) bewegen. Dies hat keinen Einfluss auf die Decodiererverzögerung.
-
Als
Nächstes
wird erörtert,
wie der Empfänger
feststellt, dass ein Übertragungsfehler
in einem Rahmen vorliegt. Der ISO/IEC 11172-3 Standard umfasst Spezifikationen
zum Berechnen einer ersten CRC-Prüfsumme hinsichtlich eines Teils
des Tonrahmenkopfs (siehe Bezugszeichen 19 in 3).
Außerdem
umfasst der DAB-Standard Spezifikationen zum Berechnen einer zweiten
CRC-Prüfsumme
hinsichtlich der Rahmenskalenfaktoren (siehe Bezugszeichen 26 in 3).
-
Zuvor
wurde erörtert,
wie der Empfänger
Prüfsummen
verwendet, um Fehler zu erfassen. Im Verfahren gemäß der Erfindung überprüft der Empfänger außerdem,
dass bestimmte Rahmenelemente Werte enthalten, die gemäß den DAB-
und ISO/IEC 11172-3 und ISO/IEC 13818-3 Standards zugelassen sind.
In der folgenden Liste sind die Prüfungen so bezeichnet, wie sie
in den Standards in Englisch erscheinen. Einige der Prüfungen gelten
nur für Übertragungen
gemäß dem DAB-Standard,
da die ISO/IEC 11172-3 und ISO/IEC 13818-3 Standards keine gleichwertigen
Datenstrukturen definieren. Diese Prüfungen verstoßen jedoch
nicht gegen die ISO/IEC 11172-3
oder ISO/IEC 13818-3 Standards, da sie an Rahmenelemente gerichtet
sind, die in diesen Standards unspezifiziert gelassen wurden.
- – SYNCWORD
(Synchronisierungswort): wenn der Wert des Synchronisierungsworts
ein anderer als "1111 1111
1111" ist, liegt
ein Übertragungsfehler
im Rahmen vor.
- – LAYER
(Schicht): die Schichtencodes "01" und "11" sind in DAB-Übertragungen
nicht zugelassen, so dass ihr Auftreten einen Fehler anzeigt.
- – PROTECTION
(Schutz): in DAB-Übertragungen
muss das Schutzbit "0" sein, so dass der
Wert "1" einen Fehler anzeigt.
- – BIT
RATE (Bitrate): gemäß den ISO/IEC
11172-3 und ISO/IEC 13818-3 Standards ist der Wert "1111" nicht zugelassen;
außerdem
ist der Wert "0000" im DAB-Sandard nicht
zugelassen.
- – SAMPLING
FREQUENCY (Abtastfrequenz): gemäß dem DAB-Standard sind die
Abtastfrequenzwerte "00" und "10" nicht zugelassen.
- – PADDING
BIT (Füllbit):
wenn die Abtastfrequenz 48 kHz oder 24 kHz ist, muss das Füllindikatorbit "0" sein, sonst ist es fehlerhaft.
- – MODE
(Modus): Abtastfrequenz-, Modus- und Bitratenkombinationen, die
nicht als zugelassene Kombinationen in der Tabelle, die zuvor in
Verbindung mit der Beschreibung des Standes der Technik dargestellt wurde,
oder im ISO/IEC 13818-3 Standard enthalten sind, zeigen einen Fehler
an.
- – EMPHASIS
(Emphase): gemäß dem DAB-Standard
muss der Wert des Emphase-Feldes "00" sein;
andere Werte zeigen einen Fehler an.
- – BIT
ALLOCATION (Bitzuweisung): die Gesamtzahl von Bits, die für die Teilbänder reserviert
sind, darf den Raum, der für
diese Bits im Rahmen reserviert ist, nicht überschreiten. Die Gesamtzahl
von Bits hängt
von der Bitrate ab. Ein Konflikt zwischen der Bitrate und der Gesamtzahl
von Bits zeigt einen Fehler an.
- – ID
BIT CHANGE (ID-Bitänderung):
wenn das ID-Bit geändert
wird, ohne dass der Decodierer im Voraus von der Änderung
weiß,
interpretiert der Empfänger
die Änderung
als einen Fehler.
- – BIT
RATE CHANGE (Bitratenänderung):
wenn die Bitrate geändert
wird, ohne dass der Decodierer im Voraus von der Änderung
weiß,
interpretiert der Empfänger
die Änderung
als einen Fehler.
- – SAMPLING
FREQUENCY CHANGE (Abtastfrequenzänderung):
wenn die Abtastfrequenz geändert
wird, ohne dass der Decodierer im Voraus von der Änderung
weiß,
interpretiert der Empfänger
die Änderung
als einen Fehler.
- – MODE
CHANDE (Modusänderung):
wenn der Tonmodus geändert
wird, ohne dass der Decodierer im Voraus von der Änderung
weiß,
interpretiert der Empfänger
die Änderung
als einen Fehler; eine Änderung
zwischen dem Stereomodus und dem Joint Stereo-Modus in der einen
oder anderen Richtung wird jedoch nicht als ein Fehler interpretiert.
- – LAYER
CHANGE (Schichtenänderung):
wenn die Schicht geändert
wird, ohne dass der Decodierer im Voraus von der Änderung
weiß,
interpretiert der Empfänger
die Änderung
als einen Fehler.
- – SCALE
FACTOR INDEX (Skalenfaktorindex): der Skalenfaktorindex "111111" ist nicht zugelassen,
so dass sein Auftreten einen Fehler anzeigt.
- – SUBBAND
SAMPLE CODEWORD (Teilbandabtastwertcodewort): wenn NLEVELS sich
auf die Quantisierungsstufen eines bestimmten Teilbands bezieht
und 3 ist, sind Abtastwertcodewörter
größer als
26 (Dezimale) unzulässig.
Wenn NLEVELS 5 ist, sind Codewörter
größer als
124 (Dezimale) unzulässig.
Wenn NLEVELS 9 ist, sind Codewörter
größer als
728 (Dezimale) unzulässig.
Im Übrigen
sind Codewörter,
die nur Einsen umfassen, unzulässig.
- – PCM
SAMPLE RANGE (PCM-Abtastwertbereich): es gibt bestimmte Grenzen
für das
PCM-Signal, das bei der Umkehrfilterung erzeugt wird. PCM-Pulse,
deren absolute Werte die maximale Grenze überschreiten, zeigen einen
Fehler an. PCM-Pulse, welche die Grenze überschreiten, werden üblicherweise
vor der Klangwiedergabe auf den Maximalwert zugeschnitten.
-
Einige
der zuvor erwähnten
Syntaxfehler oder Fehler, in welchen ein Wert nicht zum Basissatz
von zugelassenen Werten gehört,
die für
das konkrete Feld festgelegt sind, führen ebenfalls zu einem Fehler,
der mittels Prüfsummen
erfasst wird. Es gibt jedoch Situationen, in welchen ein Syntaxfehler
keinen Nettoeinfluss auf die Prüfsumme
hat, so dass Syntaxprüfungen
die Erfassung von Übertragungsfehlern
wirksamer machen.
-
Als
Nächstes
wird die Funktionsweise des Empfängers
in einer Situation erörtert,
in welcher er einen Übertragungsfehler
erfasst hat. Die Stelle des Fehlers im Rahmen bestimmt, wie sehr
er die Decodierung des Rahmens und die Wiedergabe des Tonsignals,
das durch den Rahmen mitgeführt
wird, beeinflusst. Wenn der Fehler in dem Bereich ist, der durch
die erste Prüfsumme
abgedeckt ist (der Fehler wird durch die Berechnung der ersten Prüfsumme oder
durch irgendeine der Prüfungen
BIT RATE, SAMPLING FREQUENCY, PADDING BIT, MODE, EMPHASIS, BIT ALLOCATION,
BIT RATE CHANGE, SAMPLING FREQUENCY CHANGE oder MODE CHANGE angezeigt),
oder wenn die Prüfung
ID BIT CHANGE einen Fehler anzeigt, muss der ganze Rahmen verworfen
werden. Das zweite Prüfsummenfeld
für die
Skalenfaktoren weist, wie bereits erwähnt, zwei oder vier Prüfsummen
auf, welche jeweils auf die Skalenfaktoren einer bestimmten Teilbandgruppe
gerichtet ist. Wenn die Berechnung irgendeiner dieser Prüfsummen
oder die zuvor erwähnte
SCALE FACTOR INDEX-Prüfung
den Fehler anzeigt, betrachtet der Empfänger gemäß der Erfindung alle Skalenfaktoren
in dieser konkreten Gruppe als unzuverlässig.
-
"Den Rahmen verwerfen" bedeutet, dass die
Abtastwerte, die durch den Rahmen gesendet werden, durch fehlerfreie
oder wenigstens weniger fehlerhafte Werte zu ersetzen sind. Ähnlich bedeutet, "eine bestimmte Skalenfaktorgruppe
als unzuverlässig
zu interpretieren",
dass diese Skalenfaktoren durch bessere Werte zu ersetzen sind.
Im Verfahren gemäß der Erfindung
werden bessere Werte unter Verwendung der zuvor beschriebenen Tabellen- und Fensteranordnung,
sowie der in 7 dargestellten Operationsprozedur
gesucht. Der Empfänger
sucht in Schritt 52 zunächst
im Vorgängerrahmen,
der dem aktuellen Rahmen am nächsten
ist, nach besseren Werten. Wenn dort keine besseren Werte gefunden
werden, sucht der Empfänger in
Schritt 53 als Nächstes
den Nachfolgerrahmen ab, der dem aktuellen Rahmen am nächsten ist.
Die Suche wird abwechselnd in den Vorgänger- und Nachfolgerrahmen
fortgesetzt (Schritt 54 und 55), bis der Empfänger entweder
bessere Werte findet oder das ganze Fenster abgesucht hat (Schritt 56 und 57).
Der letztere Fall bedeutet, dass keine besseren Werte aus irgendeinem
Rahmen im Fenster erhalten werden können, der Fehler also unkorrigierbar
ist und die fehlerhaften Werte durch Nullen ersetzt werden müssen. Wenn
der Fehler in den Skalenfaktoren war, schwächt die Verwendung von Nullen
die entsprechenden Teilbänder
für den
aktuellen Rahmen ab. Wenn der Fehler in dem Bereich war, der durch
die erste Prüfsumme
abgedeckt ist, muss der ganze Rahmen abgeschwächt werden.
-
Die
zuvor beschriebenen Fehlererfassungstechniken sind mit Ausnahme
der ID BIT CHANGE-Prüfung
nur an jene Teile des Rahmens gerichtet, die zum Abdeckungsbereich
der ersten oder zweiten Prüfsumme
gehören
und/oder für
welche es einen bestimmten Basissatz von zugelassenen Werten gibt.
In Tonrahmen gemäß dem ISO/IEC
11172-3 Standard sind die Tonabtastwerte und alle Skalenfaktoren
ungeschützt.
Während
der Übertragung
können
auch in diesen Teilen des Rahmens Fehler auftreten, was zu einer
unerfreulichen Verzerrung im Klang führt, der durch den Empfänger wiedergegeben
wird. Die vorliegende Erfindung ist auch Fehler vorbereitet, die
in den ungeschützten
Bereichen auftreten. In der Lösung
gemäß der Erfindung führt der
Empfänger
kontinuierlich eine Schätzung
der mittleren Bitfehlerrate (BER) des empfangenen Signals. Die Schätzung kann
ein einziger Parameter sein, dessen Wert im Verhältnis zur Anzahl von Fehlern,
die durch den Empfänger
in den letzten verarbeiteten Rahmen erfasst werden, zunimmt. In
einer flexibleren Alternative kann die BER-Schätzung ein Datensatz sein, der
mehrere Felder umfasst, wie beispielsweise die Anzahl von Fehlern,
die in N letzten Rahmen erfasst wurden, wobei N eine ganze Zahl
ist; die zeitliche Ableitung der Bitfehlerrate, d. h. ob die Rate
zu- oder abnimmt; gegenseitige Verhältnisse von erfolgreich verdeckten
und unkorrigierten Fehlern usw.
-
Eine
Art und Weise des Verwendens der BER-Schätzung gegen Fehler, die in
den ungeschützten
Teilen der Rahmen auftreten, ist z. B. derart, dass, wenn die BER-Schätzung ein
im Allgemeinen hohes Fehlerniveau aufzeigt, der Empfänger keine
plötzlichen
großen Äderungen
der Werte von Skalenfaktoren oder Abtastwerten zulässt, sondern
sie als Fehler interpretiert, die verdeckt werden sollten. Wenn
aber das Fehlerniveau im Allgemeinen niedrig ist, gibt der Empfänger auch
Klangelemente wieder, die durch plötzliche Änderungen befördert werden.
Wenn die mittlere Bitfehlerrate hoch ist, kann es außerdem vorteilhaft
sein, dass, selbst wenn der unkorrigierte Fehler in den Skalenfaktoren
wäre, der
Empfänger
den ganzen Rahmen und nicht nur die Teilbänder, die mit den Skalenfaktoren
verbunden sind, abschwächt.
-
Das
Verfahren gemäß der Erfindung
kann auch von der Tatsache Gebrauch machen, dass der Empfänger üblicherweise
so ausgelegt ist, dass er PCM-Pulse, deren absolute Werte einen
bestimmten Maximalwert überschreiten,
so zuschneidet, dass sie dann dem Maximalwert entsprechen. In einer
bevorzugten Ausführungsform
des Verfahrens gemäß der Erfindung
zählt der
Empfänger,
wie oft die PCM-Pulse zugeschnitten werden müssen. Wenn ein Rahmen über einen
bestimmten Schwellenwert hinaus PCM-Pulse erzeugt, die zugeschnitten
müssen,
kann der Empfänger
davon ausgehen, dass der betreffende Rahmen zu viel Rauschen enthält und durch
Ersetzen der PCM-Pulse mit Nullwerten abgeschwächt werden muss. Der Schwellenwert kann
derart von der BER-Schätzung
abhängen,
dass der Empfänger
den Rahmen umso eher als fehlerhaft erachtet, d. h. der Schwellenwert
umso niedriger ist, je höher
das mittlere Fehlerniveau ist. Als Nächstes wird der Decodierer
gemäß der Erfindung
eines digitalen Tonempfängers
erörtert,
für welchen 8 ein
Blockdiagramm gemäß einer
bevorzugten Ausführungsform
darstellt. Der Decodierer 100 umfasst, nicht anders als
ein Decodierer des Standes der Technik, einen Eingangsport 11,
einen Ausgangsport 12, einen Rahmendecodierblock 13,
einen Datenport 16 und eine Umkehrfilterbank 15.
Die Schnittstellen einer Wiederherstellungsblocks 14 zum
Rahmendecodierblock und zur Umkehrfilterbank entsprechen den ISO/IEC
11172-3 und ISO/IEC 13818-3 Schicht 2 Standards Der Block
umfasst einen Speicher 58, welcher eine Tabelle 42 gemäß 5 bildet.
Außerdem
umfasst der Wiederherstellungsblock ein Lese- und Schreibelement 59,
das die neuen Rahmen, die vom Rahmendecodierblock kommen, in die
Tabelle schreibt, ein Fenster 43 füllende, gespeicherte Rahmen,
die zu verarbeiten sind, ausliest und die decodierten und skalierten
Abtastwerte aus jedem aktuellen Rahmen nimmt, der zur Umkehrfilterbank
zu leiten ist. In Verbindung mit dem Lese- und Schreibelement gibt es
einen Bitfehlerratenberechnungsblock 60, der die Bitfehlerrate
des empfangenen Signals schätzt
und auf der Basis dessen den Betrieb des Lese- und Schreibelements
und nötigenfalls
die Ersetzung der PCM-Abtastwerte durch Nullen in Verbindung mit
der Umkehrfilterung steuert. Letztere wird so ausgeführt, wie
zuvor beschrieben, wenn in Verbindung mit der Umkehrfilterung zu
viele Überschreitungen
der maximal zulässigen Pulsgrenze
in Bezug auf die Bitfehlerrate erfasst werden.
-
Im
Decodierer gemäß der Erfindung
sind die notwendigen Funktionen, die mit der Verwendung eines Speichers
zum Tabellieren der Rahmen und mit der Steuerung von Speicherauslese-
und -einschreiboperationen, sowie der Fehlererfassung und -verdeckung
zusammenhängen, vorzugsweise
als Softwareprozesse realisiert, die durch einen Mikroprozessor
ausgeführt
werden, der im Empfänger
enthalten ist. Die Ausarbeitung solcher Softwareprozesse und ihre
Codierung in Befehle, die durch den Prozessor ausgeführt werden können, sind
einem Fachmann an sich bekannt.
-
Die
Erfindung stellt ein umfassendes und zuverlässiges Verfahren und Gerät zur Erfassung
von Übertragungsfehlern
in einem digitalen Tonsignal und zur Verdeckung von erfassten Fehlern
bereit. Das Schreiben von Rahmen in den Speicher und ihr Auslesen
in Teilen, die durch ein Fenster einer bestimmten Größe festgelegt
werden, sind rechnerisch keine übermäßig anspruchsvollen
Operationen, so dass die Erfindung auf die Serienproduktion von
digitalen Tonempfängern
auf einem für
die Unterhaltungselektronik erforderlichen Kostenniveau anwendbar
ist. Die zuvor beschriebenen Ausführungsbeispiele schränken die
Erfindung nicht ein, sondern sie kann innerhalb der Grenzen, die
durch die im Folgenden dargelegten Ansprüche definiert sind, modifiziert
werden.