DE69936568T2 - Verfahren und Vorrichtung zum Verchachteln einer ersten Bitsequenz in eine zweite Bitsequenz - Google Patents

Verfahren und Vorrichtung zum Verchachteln einer ersten Bitsequenz in eine zweite Bitsequenz Download PDF

Info

Publication number
DE69936568T2
DE69936568T2 DE69936568T DE69936568T DE69936568T2 DE 69936568 T2 DE69936568 T2 DE 69936568T2 DE 69936568 T DE69936568 T DE 69936568T DE 69936568 T DE69936568 T DE 69936568T DE 69936568 T2 DE69936568 T2 DE 69936568T2
Authority
DE
Germany
Prior art keywords
bits
data
stream
interleaving
header
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 - Lifetime
Application number
DE69936568T
Other languages
English (en)
Other versions
DE69936568D1 (de
Inventor
Toshiro Yokosuka-shi Kawahara
Toshio Yokohama-shi MIKI
Sanae Yokohama-shi Hotani
Takashi Yokosuka-shi Suzuki
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.)
NTT Docomo Inc
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Mobile Communications Networks 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 Nippon Telegraph and Telephone Corp, NTT Mobile Communications Networks Inc filed Critical Nippon Telegraph and Telephone Corp
Application granted granted Critical
Publication of DE69936568D1 publication Critical patent/DE69936568D1/de
Publication of DE69936568T2 publication Critical patent/DE69936568T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0071Use of interleaving
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2703Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2703Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
    • H03M13/2707Simple row-column interleaver, i.e. pure block interleaving
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/276Interleaving address generation
    • H03M13/2764Circuits therefore
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2792Interleaver wherein interleaving is performed jointly with another technique such as puncturing, multiplexing or routing
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/35Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/35Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
    • H03M13/356Unequal error protection [UEP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0023Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the signalling
    • H04L1/0025Transmission of mode-switching indication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/007Unequal error protection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0072Error control for data other than payload data, e.g. control data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0086Unequal error protection
    • H04L1/0088Unequal error protection in control part

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Communication Control (AREA)

Description

  • Technisches Gebiet
  • Die Erfindung betrifft ein Verfahren zum Verschachteln und eine Vorrichtung zum Verschachteln, die in Sendern für digitale Kommunikationssysteme und digitale Aufzeichnungsvorrichtungen zum Aufzeichnen digitaler Daten in Aufzeichnungsmedien verwendet werden, und diese Erfindung betrifft auch ein Verfahren zum Entschachteln und eine Vorrichtung zum Entschachteln, die in Empfängern für digitale Kommunikationssysteme und Vorrichtungen zum Reproduzieren digitaler Daten von Aufzeichnungsmedien verwendet werden.
  • Stand der Technik
  • In digitalen Kommunikationssystemen, die digitale Daten übertragen, können Signalfehler in digitalen Daten in dem Prozess der Übertragung erzeugt werden, so dass eine Codierung mittels der Verwendung von Fehlerkorrekturcodes für die zu sendenden digitalen Daten durchgeführt wird.
  • Wenn die Anzahl fehlerhafter Bits in einem Codewort beim Erschaffen dieser Fehlerkorrekturcodes unterhalb eines spezifischen Wertes gehalten wird, dann ist es möglich, sämtliche der Fehler zu der Zeit der Fehlerkorrekturdecodierung auf der Empfangsseite zu korrigieren. Die Anzahl der Bits, die pro Codewort korrigiert werden können, ist als die Fehlerkorrekturkapazität des Fehlerkorrekturcodes bekannt.
  • Obwohl die Durchschnittscodefehlerrate in Telekommunikationsumgebungen, wie beispielsweise der Mobiltelekommunikation, gering ist, können Bündelfehler ohne weiteres auftreten. Selbst wenn Daten mit einer Fehlerkorrekturcodierung übertragen werden, treten folglich häufig Bündelfehler mit einer die Fehlerkorrekturkapazität überschreitenden Anzahl aufeinanderfolgender Bits auf.
  • Aus diesem Grund ist die Verwendung von Fehlerkorrekturcodes in Mobiltelekommunikationsumgebungen weniger wirksam als in Telekommunikationsumgebungen, wo zufällige Codefehler erzeugt werden. Demgemäß wird eine Verschachtelung zum Lösen dieses Problems verwendet.
  • Eine Verschachtelung ist eine Technik zum Verwürfeln der Reihenfolge einer Bitsequenz, die gesendet werden soll, um die Bits in einer Sequenz zu übertragen, die sich von der ursprünglichen Reihenfolge unterscheidet.
  • Das Verfahren zum Verschachteln wird hier mit einem Beispiel beschrieben, wobei als eine Einheit eine Bitsequenz von m × n Bits verwendet wird, die aus einer Ansammlung von m Codewörtern bestehen, die aus n Bits gebildet sind. Es sollte beachtet werden, dass aus Bequemlichkeitsgründen eine Bitsequenz für den Zweck der Verschachtelung als ein Rahmen bezeichnet werden soll.
  • Allgemein gesagt nutzt eine Verschachtelung Speicher. In diesem Beispiel wird die Verschachtelung durch die Verwendung eines kontinuierlichen Speicherbereiches von m × n im Speicher ausgeführt.
  • 20 zeigt diesen als einen zweidimensionalen Speicherraum ausgedrückten Verschachtelungsspeicherungsbereich. Die Speicherungsbereiche in diesem Speicherraum sind durch Adressdaten mit einer spezifizierten Anzahl von Bits spezifiziert, die aus einer unteren Adresse, die n Kombinationen von Werten annehmen kann, und einer oberen Adresse gebildet, die m Kombinationen von Werten annehmen kann. In 20 sind Speicherungsbereiche mit identischen oberen Adressen von links nach rechts in Abfolge der unteren Adresse angeordnet, und die Speicherungsbereiche mit identischen unteren Adressen sind von oben nach unten in Abfolge der oberen Adresse angeordnet. Es sollte beachtet werden, dass hier im Nachfolgenden aus Bequemlichkeitsgründen eine Serie von Speicherungsbereichen mit identischen oberen Adressen Zeile genannt werden soll und eine Serie von Speicherungsbereichen mit identischen unteren Adressen Spalte genannt werden soll.
  • Beim Implementieren der Verschachtelung sind zuallererst die in Betracht kommenden Bitsequenzen alle sequentiell in ihren jeweiligen m × n Speicherungsbereich zu schreiben, ein Bit zu einer Zeit. Beim Ausführen dieses Schreibens werden die Schreibadressen durch einen Adresserzeugungsschaltkreis erzeugt, so wie beispielsweise in 21 gezeigt. Dieser Adresserzeugungsschaltkreis ist aus einem n-Skala-Zähler 11 und einem m-Skala-Zähler 12 gebildet. Hier führt der n-Skala-Zähler 11 eine Zählung des Bittaktes synchron mit dem Eingabe-Timing der zu verschachtelnden Bits durch. Der m-Skala-Zähler 12 erhöht den Zählwert um "1" für jede n-te Änderung in dem Zählwert des n-Skala-Zählers 11. Außerdem wird die Schreibadresse, die aus dem Zählwert des n-Skala-Zählers 11 als die untere Adresse und dem Zählwert des m-Skala-Zählers 12 als die obere Adresse besteht, dem in 20 gezeigten Speicher bereitgestellt, und diese werden in den Speicher geschrieben.
  • Folglich wird, wie in 22 gezeigt, das Codewort der anfänglichen n Bit in der Bitsequenz in die erste Zeile in dem Speicherraum geschrieben, wird das nächste Codewort in die zweite Zeile geschrieben usw., so dass schließlich das m-te Codewort in die m-te Zeile geschrieben wird.
  • Als Nächstes werden die vielfältigen Bits, die derart in den Speicher geschrieben sind, in einer Reihenfolge gelesen, die sich von der unterscheidet, wenn sie geschrieben wurden.
  • Bei dieser Leseoperation wird eine Leseadresse durch den in 23 gezeigten Adresserzeugungsschaltkreis erzeugt. In der in 23 gezeigten Ausgestaltung wird eine Zählung von Bitblöcken durch einen m-Skala-Zähler 22 durchgeführt, und dieser m-Skala-Zähler 22 erhöht den Zählwert um "1" für jede m-te Änderung in dem Zählwert eines n-Skala-Zählers 21. Außerdem wird die Leseadresse, die aus der unteren Adresse mit dem Zählwert n-Skala-Zählers 21 und der oberen Adresse mit dem Zählwert des m-Skala-Zählers 22 besteht, an den Speicher zum synchronen Verschachteln mit dem Bitblock geliefert, und das Auslesen des Speichers ist implementiert.
  • Folglich werden, wie in 24 gezeigt, die m Bits, die in jedem Speicherungsbereich der ersten Spalte des Speicherraums aufgezeichnet sind, in der Abfolge der oberen Adresse gelesen, werden dann die m Bits, die in jedem Speicherungsbereich der zweiten Spalte aufgezeichnet sind, in der Abfolge der oberen Adresse gelesen usw., so dass schließlich die m Bits, die in jedem Speicherungsbereich der n-ten Spalte aufgezeichnet sind, in der Abfolge der oberen Adresse ausgelesen werden.
  • Demgemäß werden die die Codewörter bildenden Bits über den gesamten Bereich innerhalb des Rahmens aufgrund der Tatsache verteilt, dass die den Rahmen bildenden Codewörter in den Speicher geschrieben werden, und aufgrund der Tatsache, dass die die Codewörter bildenden Bits in einer Abfolge gelesen werden, die sich davon unterscheidet, als sie geschrieben wurden. Detaillierter betrachtet werden die die Codewörter bildenden n Bits als ein Ergebnis der Verschachtelung gestreut und innerhalb des Rahmens in solch einem Zustand angeordnet, dass sie getrennt werden, durch Einfügen derer zwischen die zu anderen Codewörtern gehörenden m – 1 Bits.
  • Nach Implementierung solch einer Verschachtelung wird der Rahmen an den Übertragungspfad geliefert.
  • Wenn die Empfangsseite den Rahmen über den Übertragungspfad empfängt, wird eine Verwürfelungsoperation ausgeführt, die das Umgekehrte der Verschachtelung ist, wodurch der Rahmen mit der Bitsequenz in der ursprünglichen Reihenfolge wiederhergestellt wird. Diese auf der Empfangsseite auftretende Verwürfelungsoperation ist als Entschachtelung bekannt.
  • Wenn Rahmen unter Verwendung eines Übertragungsverfahrens übertragen werden, das solch eine Verschachtelung und Entschachtelung einsetzt, wird es einfach, Signalfehler auf der Empfangsseite zu korrigieren, selbst wenn die Bündelfehler in den Rahmen während des Übertragungsprozesses auftreten.
  • Eine detailliertere Beschreibung ist unten gegeben.
  • Man nehme zuerst an, dass ein Bündelfehler mit einer Bitlänge von m × k in einem verschachtelten Rahmen während des Übertragungsprozesses auftritt.
  • Hierbei enthält ein mit einer Bitlänge von m × k auftretender Bündelfehler jeweils k Bits pro Codewort, wobei die Bits m Codewörter bilden. Demgemäß sind die Bits, die durch Bündelfehler in den durch Entschachtelung wiederhergestellten m Codewörter betroffen sind, nur k Bits pro Codewort. Das heißt, dass der Codefehler ein zufälliger Codefehler für den Rahmen nach der Entschachtelung wird.
  • In Fällen, in denen eine Fehlerkorrekturcodierung von Codewörtern durch die Verwendung von Fehlerkorrekturcodes durchgeführt wird, die zum Korrigieren einer Fehleranzahl von mehr als k Bits fähig sind, wird es deshalb möglich, alle Signalfehler auf der Empfangsseite zu korrigieren, selbst wenn Bündelfehler mit einer Bitlänge von m × k auftreten.
  • Es sollte hierbei beachtet werden, dass aus Bequemlichkeitsgründen der Effekt, der durch die Verschachtelung herbeigebracht wird, unten als Randomisierung von Bündelfehlern bzw. zufällige Anordnung von Bündelfehlern oder einfach als Randomisierung bezeichnet wird.
  • In Fällen, in denen die Anzahl m von einen Rahmen bildenden Codewörtern groß ist, kann die Anzahl fehlerhafter Bits pro Codewort reduziert werden, selbst wenn Bündelfehler erzeugt werden, die große Bitlängen haben. In dieser Hinsicht kann es sehr gut der Fall sein, dass je größer die Anzahl m von den Rahmen bildenden Codewörtern ist, desto größer der durch eine Verschachtelung verliehene Randomisierungseffekt ist.
  • Da es jedoch erforderlich ist, wenigstens einen Rahmenwert von Bits zu speichern, um eine Verschachtelung auf der Übertragungsseite bzw. eine Entschachtelung auf der Empfangsseite einzusetzen, tritt unvermeidbar eine Verzögerung auf. Demgemäß muss die Rahmenlänge zum Verschachteln derart ausgewählt werden, um die Verzögerung zu reduzieren. Zu diesem Zweck wird es als wünschenswert betrachtet, eine Rahmenlänge als eine Verschachtelungsverarbeitungseinheit festzulegen, die gleich der durch den CODEC und dergleichen festgelegten Rahmenlänge ist.
  • In dem Fall einer digitalen Übertragung von Daten, wie beispielsweise Sprache und Bilder, gibt es übrigens Fälle, bei denen die Bitsequenz, die einen Rahmen bildet, der als die Einheit zur Übertragung dient, aus einem Header, der einer Fehlerkorrekturcodierung unterzogen worden ist, und einem Teilstück, das nicht einer Fehlerkorrekturcodierung unterzogen worden ist, zusammengesetzt ist. Wenn die Verschachtelung bezüglich der gesamten Bitsequenz, die solch einen einzelnen Rahmen bildet, ausgeführt wird, treten die folgenden Probleme auf, da die Randomisierung von Bündelfehlern auch auf Teilstücken ausgeführt wird, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind.
  • (1) Problem 1
  • In dem Fall eines CODEC, der Daten handhabt, wie beispielsweise Sprache und Ähnliches, wird, wenn das Auftreten von Fehlern in Teilstücken vorhergesagt wird, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind, eine Operation ausgeführt, die als Verbergung bekannt ist, wodurch das Teilstück in einen Nicht-Klangsektor substituiert bzw. ersetzt wird. Es ist wünschenswerter, dass die Signalfehler konzentriert sind, so dass solch eine Operation zweckgemäß ausgeführt wird. Somit ist eine Randomisierung aufgrund der Verschachtelung mit Bezug zu Teilstücken nicht wünschenswert, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind.
  • (2) Problem 2
  • Um den Effekt der Randomisierung aufgrund einer Verschachtelung zu optimieren, ist es wünschenswert, eine Verschachtelung einzusetzen, während als ein Standard die Bitlänge n der Codewörter verwendet wird, die einer Fehlerkorrekturcodierung unterzogen worden sind, und die n Bits, die jedes Codewort innerhalb eines Rahmens bilden, weit zu streuen. In der tatsächlichen Praxis werden jedoch unterschiedliche Typen der Fehlerkorrekturcodierung ausgeführt, in Abhängigkeit von dem Typ zu übertragender Daten, und es gibt viele Fälle in denen ein Rahmen aus einer Vielzahl von Typen von Codewörtern (oder Fehlerkorrekturcodes) gebildet ist. In solchen Fällen kann ein zufriedenstellender Randomisierungseffekt hinsichtlich eines spezifizierten Fehlerkorrekturcodes realisiert werden, wenn die Verschachtelung über einen gesamten Rahmen mit Verwendung der Codelänge des spezifizierten Fehlerkorrekturcodes innerhalb des Rahmens als ein Standard eingesetzt wird. Aber es tritt das Problem auf, dass ein zufriedenstellender Randomisierungseffekt nicht hinsichtlich anderer Fehlerkorrekturcodes mit unterschiedlichen Codelängen realisiert werden kann.
  • (3) Problem 3
  • Die Bestimmung, ob eine Randomisierung vorteilhaft ist oder nicht, hängt nicht nur davon ab, ob es oder ob es nicht Daten gibt, die einer Fehlerkorrekturcodierung unterzogen worden sind. Das heißt, dass es in Rahmen, die aus Bitsequenzen, die einer Fehlerkorrekturcodierung unterzogen worden sind, und Bitsequenzen gebildet sind, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind, Fälle gibt, in denen die Bitsequenzen, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind, von ihrer Natur aus entweder in Ansprechen auf Daten gebildet werden, die randomisiert werden sollten, oder in Ansprechen auf Daten gebildet werden, die nicht randomisiert werden sollten. Für jedes einen Rahmen bildende Datum würde es vorteilhaft sein, zu bestimmen, ob oder nicht eine Randomisierung zweckgemäß ist, indem ein Ansatz gesucht wird, der sich für die Natur der fraglichen Daten eignet. Aber bis jetzt sind keine technologischen Einrichtungen für diesen Zweck bereitgestellt worden.
  • In Lim et al: "Impact of Cell Unit Interleaving an Header Error Control Performance in Wireless ATM", Global Telecommunication Conference, 1996, ist eine mathematische Analyse von Verschachtelungseffekten in Kombination mit einer Simulation auf der Grundlage der gegebenen mathematischen Analyse beschrieben, um den Einfluss der Verschachtelung auf eine Header-Fehlersteuerfunktion mit Erfassungs- und Korrekturmodi zu untersuchen. Die 40 Header-Bits eines ATM-Headers werden mit einem 10 Bit-Intervall über eine gegebene ATM-Zeile verteilt, um den Effekt von Bündelfehlern zu reduzieren.
  • Ferner ist in WO 95/16311 ein Verfahren zum Verschachteln von Blöcken von P Paketen mit jeweils L Binärwörtern beschrieben, indem Daten in einen Verschachtelungsspeicher in einer gegebenen Reihenfolge geschrieben werden und sie erneut in der Verschachtelungsreihenfolge ausgelesen werden. Sobald ein einem Block b-1 entsprechendes Datenstück bei einer gegebenen Adresse gelesen worden ist, wird gemäß dem Verfahren ein einem Block b entsprechendes Datenstück an dieselbe Adresse geschrieben. Das Verfahren ist bei der digitalen Datenübertragung nützlich, besonders wenn die Übertragung unterbrochen wird.
  • Offenbarung der Erfindung
  • Die vorliegende Erfindung wurde im Lichte des oben beschriebenen Zustands der Verhältnisse erdacht und hat als ihre Aufgabe die Bereitstellung eines Verschachtelungsverfahrens, einer Verschachtelungsvorrichtung, eines Entschachtelungsverfahrens und einer Entschachtelungsvorrichtung, die es möglich machen, Bits, die Daten bilden, in einer geeigneten Ausgestaltung für die Daten durch Ausführen einer separaten Randomisierung für jedes einen Rahmen bildende Datum zu übertragen.
  • Um diese Aufgabe zu erreichen, stellt die vorliegende Erfindung eine Verschachtelungsvorrichtung mit den Merkmalen des Anspruchs 1 und ein Verschachtelungsverfahren mit den Merkmalen des Anspruchs 5 bereit.
  • Gemäß der offengelegten Erfindung ist es möglich, geeignet vielfältige Daten zu übertragen, da der Randomisierungseffekt wegen der Verschachtelung sich nur auf das zweite Datum erstreckt.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist ein Blockdiagramm, das eine Ausgestaltung einer Verschachtelungsvorrichtung der ersten Ausführungsform dieser Erfindung zeigt.
  • 2 ist ein Blockdiagramm, das ein anderes Beispiel einer Ausgestaltung des Schreibadressen-Lieferungsteils der Verschachtelungsvorrichtung zeigt.
  • 3 ist ein Blockdiagramm, das ein Beispiel einer Ausgestaltung des Leseadressen-Lieferungsteils der Verschachtelungsvorrichtung zeigt.
  • 4 ist ein Diagramm, das die Sequenz des Schreibens der einen Rahmen bildenden Bits zu der Zeit des Verschachtelns in die vielfältigen Speicherungsbereiche des Betriebsspeichers und die Sequenz des Lesens der einen Rahmen bildenden Bits zu der Zeit des Entschachtelns von den vielfältigen Speicherungsbereichen des Betriebsspeichers in der Ausführungsform zeigt.
  • 5 ist ein Diagramm, das die Sequenz des Lesens der einen Rahmen bildenden Bits zu der Zeit des Entschachtelns von den vielfältigen Speicherungsbereichen des Betriebsspeichers und die Sequenz zum Schreiben der einen Rahmen bildenden Bits zu der Zeit des Entschachtelns in die vielfältigen Speicherungsbereiche des Betriebsspeichers in der Ausführungsform zeigt.
  • 6 ist ein Blockdiagramm, das eine Ausgestaltung der Entschachtelungsvorrichtung mit Bezug zu der Ausführungsform zeigt.
  • 7A7D sind Zeitdiagramme, die den Betrieb der Ausführungsform zeigen.
  • 8 ist ein Blockdiagramm, das eine Ausgestaltung einer Zweistufen-Verschachtelungsvorrichtung mit Bezug zu der zweiten Ausführungsform dieser Erfindung zeigt.
  • 9 ist ein Blockdiagramm, das eine Ausgestaltung einer Zweistufen-Entschachtelungsvorrichtung mit Bezug zu der Ausführungsform zeigt.
  • 10A10F sind Zeitdiagramme, die den Betrieb der Ausführungsform zeigen.
  • 11 ist ein Blockdiagramm, das eine allgemeine Ausgestaltung einer Mehrstufen- Verschachtelungsvorrichtung mit Bezug zu der Ausführungsform zeigt.
  • 12 ist ein Blockdiagramm, das eine allgemeine Ausgestaltung einer Mehrstufen-Entschachtelungsvorrichtung mit Bezug zu der Ausführungsform zeigt.
  • 13 ist ein Diagramm, das den Prozess zum Erzeugen komprimierter Signaldaten von Audiosignalen beschreibt, die von der dritten Ausführungsform dieser Erfindung verwendet werden.
  • 14A14E sind Zeitdiagramme, die den Betrieb der Ausführungsform zeigen.
  • 15 ist ein Blockdiagramm, das eine Ausgestaltung einer Verschachtelungsvorrichtung mit Bezug zu der Ausführungsform zeigt.
  • 16 ist ein Blockdiagramm, das eine Ausgestaltung einer Entschachtelungsvorrichtung mit Bezug zu der Ausführungsform zeigt.
  • 17A17C sind Diagramme, die das Verschachtelungsverfahren im Vergleichsbeispiel 1, das im Gegensatz zu der Ausführungsform dargestellt ist, und die Widerstandsfähigkeit gegenüber Signalfehlern dieses Verfahrens beschreiben.
  • 18A18C sind Diagramme, die das Verschachtelungsverfahren im Vergleichsbeispiel 2, das im Gegensatz zu der Ausführungsform dargestellt ist, und die Widerstandsfähigkeit gegenüber Signalfehlern des Verfahrens beschreiben.
  • 19A und 19B sind Diagramme, die die Widerstandsfähigkeit gegenüber Signalfehlern des Verschachtelungsverfahrens der Ausführungsform beschreiben.
  • 20 ist eine zweidimensionale Zeichnung, die den beim Verschachteln verwendeten Speicherungsbereich des Speichers veranschaulicht.
  • 21 ist ein Blockdiagramm, das ein Beispiel der Ausgestaltung einer Vorrichtung zeigt, die Schreibadressen für den Speicher während der Verschachtelung erzeugt.
  • 22 ist ein Blockdiagramm, das die Schreibsequenz von einen Rahmen bildenden Bits in den Speicherungsbereich des Speichers während der Verschachtelung zeigt.
  • 23 ist ein Blockdiagramm, das eine Ausgestaltung einer Vorrichtung zeigt, die Leseadressen für den Speicher während der Verschachtelung erzeugt.
  • 24 ist ein Diagramm, das die Sequenz zum Lesen von einen Rahmen bildenden Bits aus dem Speicherungsbereich des Speichers während der Verschachtelung zeigt.
  • Bester Modus zum Ausführen der Erfindung
  • Es folgt eine Beschreibung der Ausführungsformen der vorliegenden Erfindung, die mit Verweis auf die Zeichnungen präsentiert wird.
  • A. Erste Ausführungsform
  • (1) Die Verschachtelungsvorrichtung
  • 1 ist ein Blockdiagramm, das eine Ausgestaltung einer Verschachtelungsvorrichtung 1 zeigt, die einer Vorrichtung auf der Übertragungsseite eines digitalen Kommunikationssystems bereitgestellt ist, die die erste Ausführungsform dieser Erfindung ist.
  • Wie in 1 gezeigt, umfasst die Verschachtelungsvorrichtung einen Trennungsteil 1001 und einen Verarbeitungsteil 200.
  • Die Rahmen, die an die empfangsseitige Vorrichtung zu übertragen sind, werden sequentiell an die Verschachtelungsvorrichtung 1 übertragen. Jeder Rahmen ist eine Bitsequenz, die aus einer Vielzahl von Bits gebildet ist und diese Bits werden sequentiell an die Verschachtelungsvorrichtung 1 synchron mit einem Bittakt CLK geliefert.
  • Wenn die die Rahmen bildenden Daten kategorieweise aufgeteilt werden, ist es möglich, zwischen dem Header H und den Daten D, die ihm folgen, zu unterscheiden.
  • In dem unten beschriebenen Beispiel ist der Header H aus p Bits gebildet und sind die Daten D aus m × p Bits gebildet.
  • Darüber hinaus wird der Header H einer Fehlerkorrekturcodierung unterzogen. Im Gegensatz dazu werden die Daten D nicht einer Fehlerkorrekturcodierung unterzogen.
  • Der Trennungsteil 1001 ist eine Vorrichtung zum Trennen jeder der Rahmen, die sequentiell geliefert werden, in den Header H und die Daten D und zum Ausgeben derer. Diese Trennung kann gemäß einem wie beispielsweise beschriebenen Verfahren ausgeführt werden. Das heißt, dass die Anzahl der synchron mit dem Bittakt CLK gelieferten Bits gezählt wird, und das Teilstück von dem Anfangsbit bis zu dem p Bit wird als der Header H genommen und die nachfolgenden Teile werden als die Daten D genommen.
  • Der Verarbeitungsteil 200 ist eine Vorrichtung, die die Header H und die Daten D von dem Trennungsteil 1001 empfängt, wobei die den Header H bildenden Bits innerhalb der Daten D zerstreut und angeordnet werden. Die hauptsächlichen Komponentenelemente dieses Verarbeitungsteils 200 sind ein Schreibadressen-Lieferungsteil 210, ein Betriebsspeicher 220 und ein Leseadressen-Lieferungsteil 230.
  • Hier ist der Betriebsspeicher 220 eine Speicherungsvorrichtung zum Aufzeichnen der Bits, die den zu verschachtelnden Rahmen bilden. In der vorliegenden Ausführungsform wird eine kontinuierliche Vielzahl von Speicherungsbereichen mit Adressen zur Verwendung von sämtlichen der Speicherungsbereiche des Betriebsspeichers 220 ausgewählt, und die vielfältigen Bits, die einen Rahmen bilden, werden in den Speicherungsbereichen gespeichert.
  • Die Verschachtelung besteht aus dem Prozess des sequentiellen Schreibens von die Rahmen bildenden Bits zu diesem Betriebsspeicher 220 und dem Prozess des Lesens der Bits aus diesem Betriebsspeicher 220 in einer Sequenz, die sich von der unterscheidet, als sie geschrieben wurden.
  • Der Schreibadressen-Lieferungsteil 210 ist eine Vorrichtung, die ein spezifiziertes Adresserzeugungsprogramm ausführt, um synchron mit dem Zeittakt CLK eine Schreibadresse WADh, die den Schreibbestimmungsort der den Header H bildenden Bits spezifiziert, und eine Schreibadresse WADd zu erzeugen, die den Schreibbestimmungsort der die Daten D bildenden Bits spezifiziert, und sie an den Betriebsspeicher 220 liefert, wenn die einen Rahmen bildenden Bits an den Betriebsspeicher 220 geschrieben werden.
  • Wenn sämtliche der zum Schreiben der einen Rahmen bildenden Bits in den Betriebsspeicher 220 benötigten Schreibadressen nicht länger erzeugt werden, wird darüber hinaus das dieses angebende END-Signal an den Leseadressen-Lieferungsteil 230 geliefert.
  • Der Leseadressen-Lieferungsteil 230 ist eine Vorrichtung, die die Leseadresse RAD zum Lesen der in dem Betriebsspeicher 220 aufgezeichneten Bits liest, unter mit dem Bittakt CLK synchroner Erzeugung gemäß einem spezifizierten Adresserzeugungsprogramm, wenn das END-Symbol empfangen wird, und die Leseadresse RAD an den Betriebsspeicher 220 liefert.
  • 2 ist ein Blockdiagramm, das die Adresserzeugungsalgorithmen des Schreibadressen-Lieferungsteils 210 von dem Hardware-Standpunkt zeigt.
  • Der Adresserzeugungsalgorithmus dieses Schreibadressen-Lieferungsteils 210 ist aus einem p-Skala-Zähler 210A, einem p-Skala-Zähler 210B, einem m-Skala-Zähler 210C, einem UND-Gatter 210D und einem Addierer 210E gebildet. Hier zählt der p-Skala-Zähler 210A den Bittakt CLK. Die Schreibadresse WADh für die den Header H bildenden Bits ist eine untere Adresse mit einem Zählerwert des p-Skala-Zählers 210A und einer als "0" bestimmten oberen Adresse.
  • Der p-Skala-Zähler 210A stoppt das Zählen des Bittaktes CLK, wenn der Zählwert sich p-mal ändert, was einen Überlauf bzw. Überzählwert (Count-Over) ergibt.
  • Das UND-Gatter 210D liefert den Bittakt CLK an den m-Skala-Zähler 210C, nachdem der p-Skala-Zähler 210A einen Überlauf liefert.
  • Der m-Skala-Zähler 210C führt das Zählen des über dieses UND-Gatter 210D gelieferten Bittaktes CLK aus. Der Zählwert ergibt einen Überlauf, wenn er sich m-mal ändert, aber danach wird das Zählen erneut von dem Anfangswert "0" wiederholt, solange wie der Bittakt CLK geliefert wird. Der p-Skala-Zähler 210B addiert Zählwerte "1" jedes Mal, wenn der m-Skala-Zähler 210C überläuft bzw. einen überzählt. Die Addiermaschine 210E addiert "1" zu dem Zählwert des m-Skala-Zählers 210C.
  • Die Schreibadresse WADd, die den Schreibbestimmungsort der die Daten D bildenden Bits spezifiziert, ist derart, dass der Zählwert des p-Zählers 210B eine untere Adresse ist und die Ausgabedaten der Addiermaschine 210E eine obere Adresse ist.
  • 3 ist ein Blockdiagramm, das die Adresserzeugungsalgorithmen des Leseadressen-Lieferungsteils 230 von dem Hardware-Standpunkt zeigt. Der Adresserzeugungsalgorithmus dieses Leseadressen-Lieferungsteils 230 ist durch einen p-Skala-Zähler 230A und einen (m + 1)-Skala-Zähler 230B gebildet. Der (m + 1)-Skala-Zähler 230B führt das Zählen für den Bittakt CLK aus. Der Zählwert des p-Skala-Zählers 230A wird um Eins erhöht, wenn der Zählwert des (m + 1)-Skala-Zähler 230B sich m + 1-mal ändert, und ist auf den Anfangswert "0" initialisiert.
  • Die Leseadresse RAD ist derart, dass der Zählwert dieses p-Skala-Zählers 230A eine untere Adresse ist, und der Zählwert des (m + 1)-Skala-Zählers 230B ist eine obere Adresse.
  • Das Obige ist eine detaillierte Beschreibung der Ausgestaltung der Verschachtelungsvorrichtung 1.
  • Mit Verweis auf 4 und 5 folgt eine Beschreibung der durch diese Verschachtelungsvorrichtung 1 implementierten Verschachtelung.
  • In der vorliegenden Ausführungsform ist die Verschachtelung durch Verwendung (m + 1) × p kontinuierlicher Speicherungsbereiche in dem Betriebsspeicher 220 implementiert.
  • 4 und 5 zeigen den Speicherungsbereich des Betriebsspeichers 220 für die Verschachtelung, als zweidimensionaler Speicherraum ausgedrückt. Die vielfältigen individuellen Adressen entsprechen den Speicherungsbereichen in diesem Speicherraum. Eine Adresse ist aus einer unteren Adresse, die p Kombinationen von Werten annehmen kann, und einer oberen Adresse gebildet, die (m + 1)-Kombinationen von Werten annehmen kann.
  • In 4 und 5 sind die Speicherungsbereiche, die identische obere Adressen haben, von links nach rechts in der Reihenfolge der unteren Adresse angeordnet, und sind die Speicherungsbereiche, die identische untere Adressen haben, von oben nach unten in der Reihenfolge der oberen Adresse angeordnet. Wie oben angegeben, soll eine Serie von Speicherungsbereichen mit identischen oberen Adressen Zeile genannt werden, und soll eine Serie von Speicherungsbereichen mit identischen unteren Adressen Spalte genannt werden.
  • Beim Implementieren der Verschachtelung werden zuallererst die Bitsequenzen, die zu verschachteln sind, sequentiell geschrieben, jede in ihren jeweiligen m × n Speicherungsbereich, ein Bit zu einer Zeit. Wenn dieses Schreiben ausgeführt wird, werden die Schreibadressen durch den wie oben mit Verweis auf 2 beschriebenen Schreibadressen-Lieferungsteil 210 erzeugt.
  • Während die den Header H bildenden p Bits an den Betriebsspeicher 220 synchron mit dem Bittakt CLK geliefert werden, wird das Zählen des Bittaktes CLK gemäß dem p-Skala-Zähler 210A in dem Schreibadressen-Lieferungsteil 210 ausgeführt. Die Schreibadresse WADh, die den Zählwert des p-Skala-Zählers 210A als eine untere Adresse und "0" als eine obere Adresse enthält, wird erzeugt, und sie wird an den Betriebsspeicher 220 synchron mit dem Bittakt CLK geliefert.
  • Folglich werden, wie in 4 gezeigt, die den Header H bildenden p Bits in die Anfangszeile innerhalb des Speicherungsbereiches des Betriebsspeichers 220 zur Verschachtelung geschrieben.
  • Dem Header H folgend werden als Nächstes die die Daten D bildenden m × p Bits an den Betriebsspeicher 220 synchron mit dem Bittakt CLK geliefert.
  • Unterdessen wird das Zählen des Bittaktes CLK durch den m-Skala-Zähler 210C in dem Schreibadressen-Lieferungsteil 210 ausgeführt, und zusätzlich wird ein Zählwertinkrement des p-Skala-Zählers 210B jedes Mal ausgeführt, wenn der m-Skala-Zähler 210C einen Überlauf liefert. Darüber hinaus wird eine Schreibadresse WADd erzeugt, die eine untere Adresse, die der Zählwert des p-Skala-Zählers 210B ist, und eine obere Adresse enthält, die durch Addieren des Zählwertes des m-Skala-Zählers 210C mit Eins erhalten ist, und diese Schreibadresse wird an den Betriebsspeicher 220 synchron mit dem Bittakt CLK geliefert.
  • Folglich werden, wie in 4 gezeigt, die anfänglichen m Bits aus den die Daten D bildenden m × p Bits in jeden Speicherungsbereich, der (m + 1)-ten Zeile entsprechend, von der zweiten Zeile der ersten Spalte und in den Betriebsspeicher 220 geschrieben, und dann werden die m Bits in jeden Speicherungsbereich, der (m + 1)-ten Zeile entsprechend, von der zweiten Zeile der zweiten Spalte usw. geschrieben, bis die letzten m Bits (d.h. das p-te Bit) in jeden Speicherungsbereich, der (m + 1)-ten Zeile entsprechend, von der zweiten Spalte der p-ten Spalte geschrieben sind.
  • Als Nächstes werden die Bits, die derart in den Betriebsspeicher 220 geschrieben sind, in einer Sequenz ausgelesen, die sich von der unterscheidet, mit der sie geschrieben wurden.
  • In dieser Leseoperation werden Leseadressen durch den mit Verweis auf 3 beschriebenen Leseadressen-Lieferungsteil 230 erzeugt.
  • Das heißt, dass das Zählen des Bittaktes CLK durch den (m + 1)-ten Skala-Zähler 230B ausgeführt wird, und zusätzlich wird ein Zählwertinkrement mit einem Zählwert von "1" nur des p-Skala-Zählers 230A jedes Mal ausgeführt, wenn der (m + 1)-Skala-Zähler 230B einen Überlauf liefert. Darüber hinaus gibt es eine Leseadresse, die den Zählwert des p- Skala-Zählers 230A als eine untere Adresse und den Zählwert des (m + 1)-Skala-Zählers 230B als eine obere Adresse enthält, und diese wird an den Betriebsspeicher 220 synchron mit dem Bittakt CLK geliefert.
  • Folglich werden, wie in 5 gezeigt, zuallererst die (m + 1)-Bits, die in jedem Speicherungsbereich der ersten Spalte in dem Betriebsspeicher 220 aufgezeichnet sind, gelesen, und dann werden die (m + 1)-Bits, die in jedem Speicherungsbereich der zweiten Spalte aufgezeichnet sind, gelesen usw., bis schließlich die (m + 1)-Bits, die in jedem Speicherungsbereich der p-ten Spalte aufgezeichnet sind, gelesen werden.
  • Wegen der oben beschriebenen Verschachtelung werden Rahmen so produziert, dass die den Header H bildenden p Bits zerstreut und bei gleichen Intervallen innerhalb der die Daten B bildenden Bitsequenz angeordnet werden. Es sollte beachtet werden, dass der Zustand der Rahmen nach der Beschreibung unten mit Verweis auf die Zeichnungen im Detail beschrieben wird.
  • (2) Die Entschachtelungsvorrichtung
  • Die Rahmen, die in der übertragungsseitigen Vorrichtung verschachtelt worden sind, werden an die empfangsseitige Vorrichtung übertragen. 6 ist ein Blockdiagramm, das eine Ausgestaltung der Entschachtelungsvorrichtung 2 zeigt, die der empfangsseitigen Vorrichtung bereitgestellt ist.
  • Diese Entschachtelungsvorrichtung 2 umfasst einen Schreibadressen-Lieferungsteil 310, einen Betriebsspeicher 320 und einen Leseadressen-Lieferungsteil 330.
  • Hier ist der Betriebsspeicher 320 eine dem Betriebsspeicher 220 in der Verschachtelungsvorrichtung 1 ähnliche Speicherungsvorrichtung. Die (m + 1) × p Bits, die die Rahmen bilden, die über den Übertragungspfad empfangen worden sind, werden an den Betriebsspeicher 320 synchron mit dem Bittakt CLK geliefert.
  • Die Entschachtelung besteht aus dem Prozess des Schreibens dieser Bits zu dem Betriebsspeicher 320 und dem Prozess des Lesens dieser Bits aus dem Betriebsspeicher 320 in einer Sequenz, die sich davon unterscheidet, wie sie geschrieben wurden.
  • Während die den empfangenden Rahmen bildenden Bits an den Betriebsspeicher 320 synchron mit dem Bittakt CLK geliefert werden, liefert der Schreibadressen-Lieferungsteil 310 die Schreibadresse WAD synchron mit dem Bittakt CLK an den Betriebsspeicher 320.
  • Dieser Schreibadressen-Lieferungsteil 310 besitzt eine Ausgestaltung, die identisch mit der des Leseadressen Lieferungsteils 230 in der Verschachtelungsvorrichtung 1 (siehe 3) ist.
  • In dem Fall dieses Schreibadressen-Lieferungsteils 310 wird darüber hinaus das Zählen des Bittaktes durch den (m + 1)-Skala-Zähler und zusätzlich ein Zählwertinkrement mit einem Zählwert von "1" ausgeführt, nur wenn der p-Skala-Zähler ausgeführt wird, jedes Mal wenn der (m + 1)-Skala-Zähler einen Überlauf liefert. Darüber hinaus wird eine Schreibadresse WAD, die den Zählwert des p-Skala-Zählers als eine untere Adresse und den Zählwert des (m + 1)-Skala-Zählers als eine obere Adresse enthält, an den Betriebsspeicher 320 synchron mit dem Bittakt geliefert.
  • Folglich werden, wie in 5 gezeigt, die anfänglichen (m + 1)-Bits aus den (m + 1) × p Bits, die den empfangenen Rahmen bilden, zu jedem Speicherungsbereich der ersten Spalte in dem Betriebsspeicher 320 geschrieben, und dann werden die (m + 1)-Bits in jeden Speicherungsbereich der zweiten Spalte geschrieben usw., bis die letzten (m + 1)-Bits (d.h., das p-te Bit) in jeden Speicherungsbereich der p-ten Spalte geschrieben werden.
  • Die Platzierung jedes Bits in dem Betriebsspeicher 320 zu dieser Zeit ist in Übereinstimmung mit der Position dieser Bits, wenn sie an den Betriebsspeicher 220 der Verschachtelungsvorrichtung 1 geschrieben werden, bevor sie von der übertragungsseitigen Vorrichtung übertragen werden.
  • Wenn der Prozess des Schreibens sämtlicher Bits, die den empfangenen Rahmen bilden, an den Betriebsspeicher 320 vollendet ist, wird das dieses angebende END-Signal an den Leseadressen-Lieferungsteil 330 von dem Schreibadressen-Lieferungsteil 310 geliefert.
  • Dieser Leseadressen-Lieferungsteil 330 besitzt eine Ausgestaltung, die identisch zu der des Schreibadressen-Lieferungsteils 210 in der Verschachtelungsvorrichtung 1 (siehe 2) ist.
  • In dem Fall dieses Leseadressen-Lieferungsteils 330 wird darüber hinaus das Zählen des Bittaktes CLK durch den p-Skala-Zähler ausgeführt. Darüber hinaus wird eine Leseadresse RADh, die den Zählwert des p-Skala-Zählers als eine untere Adresse und "0" als eine obere Adresse enthält, erzeugt und an den Betriebsspeicher 320 synchron mit dem Bittakt geliefert.
  • Folglich werden, wie in 4 gezeigt, die den Header H bildenden p Bits aus jedem Speicherungsbereich, der Anfangszeile entsprechend, in dem Betriebsspeicher 310 gelesen.
  • In dem Fall des Leseadressen-Lieferungsteils 330 wird als Nächstes das Zählen des Bittaktes CLK durch den m-Skala-Zähler ausgeführt, und zusätzlich wird ein Zählwertinkrement mit einem Zählwert des p-Skala-Zählers jedes Mal ausgeführt, wenn der m-Skala-Zähler einen Überlauf liefert. Darüber hinaus wird eine Leseadresse RADd, die eine untere Adresse, die der Zählwert des p-Skala-Zählers ist, und eine obere Adresse enthält, die durch Addieren des Zählwertes des m- Skala-Zählers mit "1" erhalten ist, erzeugt und an den Betriebsspeicher 320 synchron mit dem Bittakt CLK geliefert.
  • Folglich werden, wie in 4 gezeigt, die anfänglichen m Bits aus den m × p Bits, die die Daten D bilden, aus jedem Speicherungsbereich, der (m + 1)-ten Zeile entsprechend, von der zweiten Zeile der ersten Spalte in dem Betriebsspeicher 320 gelesen. Dann werden die folgenden m Bits aus jedem Speicherungsbereich, der (m + 1)-ten Zeile entsprechend, von der zweiten Zeile der zweiten Spalte in dem Betriebsspeicher 320 gelesen, und die folgenden m Bits werden von jedem Speicherungsbereich, der (m + 1)-ten Zeile entsprechend, von der zweiten Zeile der dritten Spalte gelesen usw., bis die letzten m Bits (d.h., das p-te Bit) aus jedem Speicherungsbereich, der (m + 1)-ten Zeile entsprechend, von der zweiten Zeile der p-ten Spalte gelesen werden.
  • Demgemäß führt die Entschachtelungsvorrichtung 2 eine Operation durch, die vollständig das Umgekehrte der Verschachtelung ist, die in dem Fall der Verschachtelungsvorrichtung 1 durchgeführt wird, und stellt den ursprünglichen nicht-verschachtelten Rahmen wieder her.
  • (3) Vorteilhafte Effekte der vorliegenden Ausführungsform
  • Es folgt mit Verweis auf 7A bis 7D eine Beschreibung der vorteilhaften Effekte der vorliegenden Ausführungsform.
  • Als Erstes zeigt 7A die Ausgestaltung eines Rahmens, der in der übertragungsseitigen Vorrichtung verschachtelt wird. Wie diese Figur zeigt, ist der zu verschachtelnde Rahmen aus dem Header H, der mittels eines Fehlerkorrekturcodes einer Fehlerkorrekturcodierung unterzogen worden ist, und den Daten D gebildet, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind.
  • In diesem Beispiel besteht der Header H aus k1 Codewörtern, und die Codelänge jedes Codewortes ist m1 Bits. Außerdem ist der Header H eine Bitsequenz, die aus p(=k1 × m1) Bits besteht.
  • Die Daten D, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind, sind eine Bitsequenz, die aus q(=m × p) Bits besteht.
  • Wenn dieser Rahmen mittels der in 1 gezeigten Verschachtelungsvorrichtung 1 verschachtelt wird, wird ein Rahmen produziert, der die Bit wie in 7B angeordnet hat. Das heißt, dass aufgrund der Verschachtelung, die den Header H bildenden p Bits gestreut und bei gleichen Intervallen innerhalb der die Daten D bildenden Bitsequenz angeordnet sind. Hier ist das Intervall nach Verschachtelung der den Header H bildenden p Bits eine Bitlänge, die dem Grad der Änderung in der oberen Adresse der Schreibadresse entspricht, wenn jedes Bit der Daten D geschrieben wird, nachdem die untere Adresse der Schreibadresse in der Verschachtelungsvorrichtung 1 geändert ist, während eines Schreibens jedes Bits des Headers H in den Betriebsspeicher 220, mit anderen Worten m Bit. Es sollte hier beachtet werden, dass die Ausgestaltung die eines Rahmens nach der Verschachtelung ist, wenn m = 10 in 7B ist.
  • Wir wollen nun den Fall betrachten, in dem ein Bündelfehler, wie der in 7C Gezeigte, in dem Prozess des Übertragens eines Rahmens nach der in 7B gezeigten Verschachtelung erzeugt wird. In dem in 7C gezeigten Beispiel sind das zweite Bit in der den Header H bildenden Bitsequenz und das 8. bis 15. Bit in der die Daten D bildenden Sequenz durch den Bündelfehler beeinträchtigt.
  • Wenn die Entschachtelung mittels der in 6 gezeigten Entschachtelungsvorrichtung 2 auf einem Rahmen durchgeführt wird, bei dem solche Bündelfehler aufgetreten sind, werden die Rahmen wie in 7D gezeigt wiederhergestellt.
  • Wie in 7D gezeigt, ist hinsichtlich des Headers H in dem wiederhergestellten Rahmen nur das zweite Bit von dem Bündelfehler betroffen. In einer Ausführungsform wie dieser wird der Header H nicht ohne weiteres durch einen Bündelfehler beeinträchtigt, selbst wenn der Bündelfehler in einem Rahmen in dem Prozess einer Übertragung auftritt. Selbst wenn er betroffen wäre, würde das Ergebnis nichts Anderes als ein Zufallsfehler in dem Header H nach der Entschachtelung sein. Die in der vorliegenden Ausführungsform durchgeführte Verschachtelung bringt mit anderen Worten den vorteilhaften Effekt der Randomisierung von Bündelfehlern hinsichtlich des Headers H.
  • Wenn hier die Anzahl fehlerhafter Bits in dem Header H innerhalb der Fehlerkorrekturkapazität des Fehlerkorrekturcodes ist, dann kann der Signalfehler in der empfangsseitigen Vorrichtung korrigiert werden.
  • Im Gegensatz dazu sind hinsichtlich der Daten D in dem wiederhergestellten Rahmen die kontinuierlichen Bits von dem 8. bis zu dem 15. Bit durch den Bündelfehler beeinträchtigt. Wenn ein Bündelfehler in einem Rahmen in dem Übertragungsprozess in der vorliegenden Ausführungsform auftritt, erscheint somit der Bündelfehler in den Daten D unverändert nach der Entschachtelung. Das heißt, dass in der vorliegenden Ausführungsform die Verschachtelung nicht den Effekt der Randomisierung von Bündelfehlern hinsichtlich der Daten D bringt.
  • Es ist für die Daten D in den Fällen akzeptabel, nicht einer Fehlerkorrekturcodierung unterzogen worden zu sein, bei denen die Verbergung oder dergleichen implementiert worden ist, da die Signalfehler zusammen konzentriert werden.
  • Selbst wenn ein Bündelfehler in dem Prozess der Übertragung von Daten D, wie beispielsweise Sprache oder ein Bild, denen der Header H hinzugefügt worden ist, der einer Fehlerkorrekturcodierung unterzogen worden ist, wird wie oben beschrieben gemäß der vorliegenden Ausführungsform der Signalfehler nur hinsichtlich des Headers H randomisiert, und die Daten D, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind, werden nicht randomisiert, so dass vorteilhafte Effekte darin realisiert werden, dass Fehler mit Bezug zu dem Header H ohne weiteres auf der Empfangsseite korrigiert werden, und dass es einfach wird, eine Verbergung und dergleichen auf der Empfangsseite zu implementieren.
  • (4) Variationen der vorliegenden Ausführungsform
  • Es folgen Variationen der vorliegenden Ausführungsform, die oben beschrieben wurde.
    • ➀ In der Verschachtelungsvorrichtung und der Entschachtelungsvorrichtung können die Schreibadresse und die Leseadresse bezüglich des Betriebsspeichers erzeugt werden, indem der Prozessor spezifizierte Software ausführt, und eine dedizierte Software kann für diesen Zweck verwendet werden.
    • ➁ Der Adresserzeugungsalgorithmus zur Verschachtelung ist nicht auf den der oben beschriebenen Ausführungsform begrenzt. Er kann z.B. das Umgekehrte von dem der oben beschriebenen Ausführungsform in Verbindung mit den oberen Adressen und unteren Adressen oder in Verbindung mit den Zeilen und Spalten in dem Betriebsspeicher sein. Ein anderes Beispiel ist, dass der Header und die Daten temporär in separaten Bereichen innerhalb des Betriebsspeichers gespeichert werden können und eine Verschachtelung in Verbindung mit der vorliegenden Erfindung gemäß einem einfachen Verfahren durchgeführt werden kann, das die alternierende Wiederholung eines Einzelbit-Lesens der den Header bildenden Bits und eines m-Bit-Lesens der die Daten bildenden Bits involviert.
    • ➂ In der oben beschriebenen vorliegenden Ausführungsform werden sämtliche Bits des Headers H an den Speicherungsbereich in dem Raum von einer Zeile in dem Betriebsspeicher 220 zu der Zeit der Verschachtelung geschrieben, aber es ist auch möglich, eine Vielzahl von Zeilen in den Speicherungsraum zu schreiben.
    • ➃ Die verschachtelten und entschachtelten Rahmen können für jeden Rahmen unterschiedliche Längen haben.
    • ➄ In der oben beschriebenen vorliegenden Ausführungsform sind die den Header bildenden Bits innerhalb von Daten verstreut und angeordnet, die eine Bitlänge besitzen, die um einen Faktor einiger ganzer Zahlen größer ist, aber das Verhältnis der Headerlänge und der Datenlänge muss nicht ganzzahlig sein. In Fällen, in denen das Verhältnis der Headerlänge und der Datenlänge nicht ganzzahlig ausgedrückt werden kann, ist es möglich, ein Verfahren einzusetzen, das beispielsweise eine Verschachtelung durch Hinzufügen eines Dummy-Bits zu den Daten durchführt, wobei die Länge des Headers in Form ganzer Zahlen ausgedrückt wird, und dann das Dummy-Bit zu entfernen. Außerdem müssen die den Header bildenden Bits nicht notwendigerweise innerhalb der Daten bei gleichen Intervallen gestreut und angeordnet sein. Wenn man bereits auf der Empfangsseite das Verfahren kennt, wodurch die den Header bildenden Bits verstreut und angeordnet werden, ist es möglich, die Entschachtelung auf der Empfangsseite durchzuführen, selbst wenn das Streuen und Anordnen bei nicht-gleichmäßigen Intervallen getätigt wird.
  • B. Zweite Ausführungsform
  • 8 ist ein Blockdiagramm, das eine Ausgestaltung der Zweistufen-Verschachtelungsvorrichtung 3 zeigt, die als ein Beispiel einer Mehrstufen-Verschachtelungsvorrichtung mit Bezug zu der vorliegenden Ausführungsform dient. 9 ist ein Blockdiagramm, das die Ausgestaltung einer Zweistufen-Entschachtelungsvorrichtung 4 zeigt, die als ein Beispiel einer Mehrstufen-Entschachtelungsvorrichtung mit Bezug zu der vorliegenden Ausführungsform dient. 10A10F sind Diagramme, die den Betrieb der vorliegenden Ausführungsform zeigen. 11 ist ein Blockdiagramm, das eine Ausgestaltung einer r-Stufen-Verschachtelungsvorrichtung 5 zeigt, die als ein verallgemeinertes Beispiel der vorliegenden Ausführungsform dient. Darüber hinaus ist 12 ein Blockdiagramm, das die Ausgestaltung der r-Stufen-Entschachtelungsvorrichtung zeigt, die als ein verallgemeinertes Beispiel der vorliegenden Ausführungsform dient. Wie bereits in der ersten Ausführungsform diskutiert, sind die Verschachtelungsvorrichtungen in Übertragungsvorrichtungen digitaler Kommunikationssysteme bereitgestellt und sind die Entschachtelungsvorrichtungen in der Ausrüstung auf der Empfangsseite bereitgestellt. Die vorliegende Ausführungsform wird unten mit sequentiellem Verweis auf 8 bis 12 beschrieben.
  • (1) Zweistufen-Verschachtelungsvorrichtung
  • Zuerst wird mit Verweis auf 8 eine Zweistufen-Verschachtelungsvorrichtung 3 mit Bezug zu der vorliegenden Erfindung beschrieben.
  • Diese Zweistufen-Verschachtelungsvorrichtung 3 besteht aus einem Trennungsteil 1002 , einem Verarbeitungsteil 2001 und einem Verarbeitungsteil 2002 .
  • Die Ausgestaltung des Rahmens, der durch die Zweistufen-Verschachtelungsvorrichtung 3 zu verarbeiten ist, ist in 10A gezeigt.
  • In der oben beschriebenen ersten Ausführungsform wurde der Header H des zu verschachtelnden Rahmens durch ein Codewort konfiguriert, das einer Fehlerkorrekturcodierung nur mittels eines Fehlerkorrekturcode-Typs unterzogen wurde.
  • Ein in der vorliegenden Ausführungsform zu verschachtelnder Rahmen ist aus dem Header H, der einer Fehlerkorrekturcodierung auf dieselbe Weise wie in der ersten Ausführungsform unterzogen worden ist, und den Daten D gebildet, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind, aber der Header H besteht aus dem Header H1 und dem Header H2. Hier sind der Header H1 und der Header H2 einer Fehlerkorrekturcodierung gemäß unterschiedlichen Fehlerkorrekturcode-Typen unterzogen worden. Es sollte beachtet werden, dass aus Bequemlichkeitsgründen in der Beschreibung hier im nachfolgenden die Bitlänge der Daten D 63 Bits sein soll, die Bitlänge des Headers H1 9 Bits sein soll und die Bitlänge des Headers H2 3 Bits sein soll.
  • Der Trennungsteil 1002 ist dem Trennungsteil 1001 mit Bezug zu der ersten Ausführungsform in dem Sinn ähnlich, dass er die den Rahmen bildende Bitsequenz in den Header H, der einer Fehlerkorrekturcodierung unterzogen worden ist, und die Daten D aufteilt, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind. Jedoch führt der Trennungsteil 1002 mit Bezug zu der vorliegenden Ausführungsform die zusätzliche Funktion eines weiteren Trennens des Headers H, der von den Daten D getrennt wurde, durch, mit Trennung davon in den Header H1, der einer Fehlerkorrekturcodierung mittels eines Primär-Fehlerkorrekturcodes unterzogen worden ist, und den Header H2, der einer Fehlerkorrekturcodierung mittels eines Sekundär-Fehlerkorrekturcodes unterzogen worden ist.
  • 10B zeigt den Header H2 und den Header H1 und die Daten D, die aus der Trennung durch den Trennungsteil 1002 resultieren.
  • Zusätzlich liefert der Trennungsteil 1002 die Daten D und den Header H1 an den Verarbeitungsteil 2001 und liefert den Header H2 an den Verarbeitungsteil 2002 . Die Verarbeitungsergebnisse des Verarbeitungsteils 2001 werden auch an den Verarbeitungsteil 2002 zusammen mit dem Header H2 geliefert.
  • Der Verarbeitungsteil 2001 und der Verarbeitungsteil 2002 besitzen beide nahezu dieselbe Ausgestaltung wie der Verarbeitungsteil 200 der ersten Ausführungsform.
  • Darüber hinaus führt der Verarbeitungsteil 2001 eine Verschachtelung durch, die die 9 Bits, die den Header H1 bilden, in der Bitsequenz der Daten D streut und anordnet. Die Ausgestaltung und der Betrieb zum Durchführen der Verschachtelung sind bereits in der ersten Ausführungsform mit Verweis auf 1 bis 5 beschrieben worden.
  • 10C zeigt eine durch den Verarbeitungsteil 2001 in dem Prozess der Verschachtelung ausgegebene Bitsequenz.
  • Wie in 10C gezeigt, sind die den Header H1 bildenden 9 Bits bei gleichen Intervallen in der die Daten D bildenden hinteren Sequenz gestreut und angeordnet, wobei die Bitsequenz aus 72 (=8 × 9) Bits besteht, die durch den Verarbeitungsteil 2001 ausgegeben werden. Hier werden 7 (=63/9) kontinuierliche Bits in die Daten D zwischen die den Header H1 bildenden Bits eingefügt. Die Bitsequenz der zwischen die Bits des Headers eingefügten Daten D ist 7 Bits.
  • Als Nächstes führt der Verarbeitungsteil 2002 eine Verschachtelung aus, wodurch die den Header H2 bildenden 3 Bits bei gleichen Intervallen innerhalb der durch den Verarbeitungsteil 2001 ausgegebenen 72-Bit Bitsequenz gestreut und angeordnet werden. Die Details der Verarbeitung, die in der durch diesen Verarbeitungsteil 2002 durchgeführten Verschachtelung involviert ist, sind identisch mit der durch den Verarbeitungsteil 2001 durchgeführten Verschachtelung.
  • 10D zeigt eine Bitsequenz, wie sie durch den, durch den Verarbeitungsteil 2002 durchgeführten Prozess der Verschachtelung schreitet.
  • Wie in 10D gezeigt, sind in der Bitsequenz nach Verschachtelung 24 (=72/3) kontinuierliche Bits in der durch den Verarbeitungsteil 2001 ausgegebenen Bitsequenz zwischen den den Header H2 bildenden 3 Bits eingefügt.
  • Die durch den Verarbeitungsteil 2002 produzierte Bitsequenz wird an die empfangsseitige Vorrichtung über den Übertragungspfad als ein Rahmen gesendet, der einer Zweistufen-Verschachtelung unterzogen worden ist.
  • (2) Zweistufen-Entschachtelungsvorrichtung
  • Es folgt eine Beschreibung der Zweistufen-Entschachtelungsvorrichtung 4, die der empfangsseitigen Vorrichtung bereitgestellt ist.
  • Wie in 9 gezeigt, besteht die Zweistufen-Entschachtelungsvorrichtung 4 aus einem Verarbeitungsteil 3002 , einem Verarbeitungsteil 3001 und einem Synthetisierteil 4002 .
  • Die Verarbeitungsteile 3001 und 3002 besitzen beide eine der Entschachtelungsvorrichtung 2 in der ersten Ausführungsform (siehe 6) ähnliche Ausgestaltung.
  • Der Verarbeitungsteil 3002 führt eine Entschachtelung auf den von dem Übertragungspfad empfangenen Rahmen durch, mittels einer Operation, die das vollständig Umgekehrte der durch den Verarbeitungsteil 2002 durchgeführten Verschachtelung ist.
  • In dem Fall, dass ein Rahmen mit dem in 10D gezeigten Inhalt an den Verarbeitungsteil 3002 geliefert wird, wird z.B. die in 10C gezeigte Bitsequenz durch die durch den Verarbeitungsteil 3002 durchgeführte Entschachtelung erhalten.
  • Die Bitsequenz besteht aus der Bitsequenz von 3 Bits, die den Header H2 bilden, und der Bitsequenz mit den Bits, die den Header H1 bilden, die in der Bitsequenz der Daten D verstreut und angeordnet sind.
  • Von diesen wird der Header H2 an den Synthetisierteil 4002 geliefert. Die Bitsequenz der Bits, die den Header H1 bilden, die in der Bitsequenz der Daten D verstreut und angeordnet sind, wird andererseits an den Verarbeitungsteil 3001 geliefert.
  • Der Verarbeitungsteil 3001 führt eine Entschachtelung durch, die die vollständig umgekehrte Operation zu der durch den Verarbeitungsteil 2001 durchgeführten Verschachtelung ist. Wegen dieser Entschachtelung werden die Daten D, gebildet aus dem Header H1, bestehend aus 7 Bits plus die 63 Bits, in 10B gezeigt, aus der Bitsequenz der Bits wiederhergestellt, die den Header H1 bilden, die in der Bitsequenz der Daten D verstreut und angeordnet sind.
  • Der Synthetisierteil 4002 synthetisiert den Header H2 und den Header H1 mit den Daten D, mit Ausgabe des in 10A gezeigten ursprünglichen Rahmens.
  • Das Obige ist eine detaillierte Beschreibung der in 9 gezeigten Zweistufen-Entschachtelungsvorrichtung 9.
  • (3) Vorteilhafte Effekte der vorliegenden Ausführungsform
  • Es folgt mit Verweis auf 10A10F eine Beschreibung der vorteilhaften Effekte der vorliegenden Ausführungsform.
  • Wir nehmen zuerst an, dass der in 10E gezeigte Bündelfehler in dem Prozess der Übertragung des in 10D gezeigten verschachtelten Rahmens erzeugt wird. In dem in 10D gezeigten Beispiel sind 1 Bit in der den Header H1 bildenden Bitsequenz, 1 Bit in der den Header H2 bildenden Bitsequenz und einige kontinuierliche Bits, die die Daten D bilden, durch den Bündelfehler beeinträchtigt.
  • Wenn der Rahmen, der durch solch einen Bündelfehler betroffen ist, durch die empfangsseitige Vorrichtung empfangen wird und dann durch die Zweistufen-Entschachtelungsvorrichtung 4 entschachtelt wird, wird der Rahmen in dem in 10F gezeigten Zustand wiederhergestellt bzw. wiedergewonnen.
  • In dem wiederhergestellten Rahmen manifestiert sich der Effekt des Bündelfehlers in dem Header H1, der einer Fehlerkorrekturcodierung mittels des Primär-Fehlerkorrekturcodes unterzogen worden ist, und in dem Header H2, der einer Fehlerkorrekturcodierung mittels des Sekundär-Fehlerkorrekturcodes unterzogen worden ist, was in einem zufälligen Signalfehler von jeweils 1 Bit resultiert, und der Effekt des Bündelfehlers manifestiert sich in den Daten D, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind, was in einem Signalfehler einiger kontinuierlicher Bits resultiert. Das heißt, dass in der vorliegenden Ausführungsform der vorteilhafte Effekt der Randomisierung mittels Verschachtelung sich nur auf den Header H1 und den Header H2 auswirkt, aber der vorteilhafte Effekt der Randomisierung wegen der Verschachtelung sich nicht auf die Daten D auswirkt.
  • Wenn die Anzahl fehlerhafter Bits in den Headern H1 und H2 innerhalb der Fehlerkorrekturkapazität der Fehlerkorrekturcodes ist, können hier die fehlerhaften Bits korrigiert werden. Darüber hinaus ist die zuvor erwähnte Verbergung implementiert, da Bündelfehler in den Daten D auftreten, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind.
  • Wie oben beschrieben werden gemäß der vorliegenden Ausführungsform und wie in der oben beschriebenen ersten Ausführungsform Fehler nur hinsichtlich der Header H1 und H2 randomisiert, selbst wenn Bündelfehler in dem Prozess des Übertragens der den Daten D, wie beispielsweise Sprache und Bilder, hinzugefügten Header H1 und H2 erzeugt werden, die einer Fehlerkorrekturcodierung durch zwei unterschiedliche Fehlerkorrekturcodes unterzogen worden sind, aber Fehler werden nicht hinsichtlich der Daten D randomisiert. Deshalb kann eine Fehlerkorrektur für die Header ohne Weiteres auf der Empfangsseite bewerkstelligt werden, und es gibt außerdem den vorteilhaften Effekt, dass eine Verbergung und dergleichen ohne Weiteres auf der Empfangsseite hinsichtlich der Daten D implementiert werden kann. Da die Verschachtelung zweimal durch Verstreuen und Anordnen der Bits in dem Header H1 und H2 in der vorliegenden Ausführungsform ausgeführt wird, ist es darüber hinaus möglich, den vorteilhaften Effekt einer maximalen Randomisierung für jeden Header durch Durchführen einer Verschachtelung unter den optimalen Bedingungen für jeden Header zu erreichen.
  • (4) Allgemeine Ausgestaltung einer Mehrstufen-Verschachtelungsvorrichtung und einer Mehrstufen-Entschachtelungsvorrichtung
  • Das Obige beschreibt den Fall, in dem der Header, der einer Fehlerkorrekturcodierung unterzogen worden ist, aus zwei Komponenten besteht, und zwar der Header H1, der einer Fehlerkorrekturcodierung durch den Primär-Fehlerkorrekturcode unterzogen worden ist, und der Header H2, der einer Fehlerkorrekturcodierung durch den Sekundär-Fehlerkorrekturcode unterzogen worden ist, aber die vorliegende Erfindung ist nicht auf diesen Fall beschränkt und kann selbstverständlich auch auf den Fall angewendet werden, bei dem der Rahmen drei oder mehr Header besitzt, die einer Fehlerkorrekturcodierung durch unterschiedliche Fehlerkorrekturcodes unterzogen worden sind.
  • 11 zeigt die Konfiguration einer r-Stufen-Verschachtelungsvorrichtung 5, die Rahmen verschachtelt, die eine Anzahl von r Headern enthalten, die einer Fehlerkorrekturcodierung durch unterschiedliche Fehlerkorrekturcodes unterzogen worden sind.
  • Wie in der Figur gezeigt, besteht die r-Stufen-Verschachtelungsvorrichtung 5 aus dem Trennungsteil 100r und der Anzahl von r Verarbeitungsteilen 2001 200r .
  • Der Separationsteil 100r teilt die Rahmen in die Anzahl von r Headern H1–Hr und die Daten D auf.
  • Der Verarbeitungsteil 2001 führt eine Verschachtelung aus, die die den Header H1 bildenden Bits bei gleichen Intervallen in der die Daten D bildenden Bitsequenz verstreut und anordnet, und gibt die resultierende Bitsequenz aus.
  • Der Verarbeitungsteil 2002 führt die Verschachtelung aus, die die den Header H2 bildenden Bits bei gleichen Intervallen in der durch den Verarbeitungsteil 2001 ausgegebenen Bitsequenz verstreut und anordnet.
  • Dasselbe trifft ebenso auf die anderen Verarbeitungsteile zu. Das heißt, dass die vielfältigen Verarbeitungsteile 200k (wobei k = 1 bis r) in 11 eine Verschachtelung ausführen, die die Header Hk bildenden Bits bei gleichen Intervallen in den durch den Verarbeitungsteil 200k–1 ausgegebenen Bits verstreut und anordnet.
  • Dann wird die Bitsequenz, die von dem Finalstufen-(die r-te Stufe)Verarbeitungsteil 200r erhalten ist, an die empfangsseitige Vorrichtung über den Übertragungspfad als ein verschachtelter Rahmen übertragen.
  • Die Entschachtelung des empfangenen Rahmens wird in der empfangsseitigen Vorrichtung mittels einer in 12 gezeigten r-Stufen-Entschachtelungsvorrichtung 6 durchgeführt.
  • Diese r-Stufen-Entschachtelungsvorrichtung 6 besitzt eine Anzahl von r Verarbeitungsteilen 300k (wobei k = 1 bis r) und den Synthetisierteil 400r .
  • Die Verarbeitungsteile 300k (wobei k = 1 bis r) führen eine Entschachtelung aus, die vollständig die umgekehrte Operation von der durch die Verarbeitungsteile 200k (wobei k = 1 bis r) durchgeführten Verschachtelung ist.
  • Detaillierter betrachtet führen die Verarbeitungsteile 300k eine Verschachtelung, die das Umgekehrte der durch die Verarbeitungsteile 200k durchgeführten Verschachtelung ist, auf den bei dem Prozess der Übertragung empfangenen Rahmen durch, und es wird auch der aus den kontinuierlichen Bits gebildete Header Hr und eine Bitsequenz mit den Bits ausgegeben, die andere Header bilden, die innerhalb der Daten D verstreut und angeordnet sind. Außerdem liefern die Verarbeitungsteile 300k die Header Hr an den Synthetisierteil 400r und liefern die letztere Bitsequenz an den Verarbeitungsteil 300r–1 . Als Nächstes führt der Verarbeitungsteil 300r–1 eine Entschachtelung auf der Bitsequenz durch, die durch den Verarbeitungsteil 300r ausgegeben ist, das Umgekehrte der Verschachtelung, die durch den Verarbeitungsteil 200k–1 durchgeführt ist, und gibt den Header Hr–1, der aus kontinuierlichen Bits gebildet ist, und eine Bitsequenz mit den Bits aus, die andere Header bilden, die innerhalb der Daten D verstreut und angeordnet sind. Darüber hinaus liefert der Verarbeitungsteil 300r–1 den Header Hr–1 an den Synthetisierteil 400r und liefert die letztere Bitsequenz an den Verarbeitungsteil 300r–2 . Die vielfältigen Verarbeitungsteile 300k , die diesen Verarbeitungsteil 300r–2 folgen, führen auch dieselbe Operation durch. Dann führt der Verarbeitungsteil 3001 der Finalstufe eine Entschachtelung, die das Umgekehrte der durch die Verarbeitungseinheit 2001 durchgeführten Verschachtelung ist, hinsichtlich der durch die Verarbeitungseinheit 3002 ausgegebenen Bitsequenz durch und liefert sowohl den Header H1 als auch die Daten D an den Synthetisierteil 400r .
  • Der Synthetisierteil 400r synthetisiert die durch die vielfältigen Verarbeitungsteile ausgegebenen Header H1–Hr und die Daten D, wodurch der ursprüngliche Rahmen wiederhergestellt wird.
  • Es ist aus der obigen Beschreibung klar, dass die vorliegende Erfindung nicht nur auf den Fall angewendet werden kann, bei dem ein Rahmen zwei Headertypen hat, sondern auch auf den Fall, bei dem ein Rahmen 3 oder mehr Headertypen hat.
  • C. Dritte Ausführungsform
  • In der ersten und der zweiten Ausführungsform wird der zu übertragende Rahmen in den Teil, der einer Fehlerkorrekturcodierung unterzogen worden ist, und den Teil getrennt, der nicht einer Fehlerkorrekturcodierung unterzogen worden ist, und die Verschachtelung wird durch Verstreuen und Anordnen der den Ersteren bildenden Bits über die gesamte Spanne der Bitsequenz des Letzteren durchgeführt.
  • Die Ausführungsformen der Verschachtelung in der vorliegenden Erfindung sind nicht auf das Obige begrenzt.
  • Zum Beispiel gibt es den Fall, bei dem Daten, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind, Typen von Datenketten enthalten, die aufgrund ihrer Natur dem Randomisierungseffekt der Verschachtelung unterzogen werden sollten.
  • Die vorliegende Ausführungsform nimmt diesen Falltyp an. In der vorliegenden Ausführungsform werden die Daten, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind, in einen Teil, für den der Randomisierungseffekt der Verschachtelung wünschenswert ist, und einen Teil aufgeteilt, für den er nicht wünschenswert ist, und die Verschachtelung wird durch Verstreuen und Anordnen der Bits, die den ersteren Teil bilden, in der Bitsequenz des letzteren Teils durchgeführt.
  • Komprimierte Signaldaten von Audiosignalen sind geeignete Objekte für die Anwendung der vorliegenden Ausführungsform. Vor der Beschreibung des Verschachtelungsprozesses in der vorliegenden Ausführungsform wird eine Erläuterung des Verfahrens zum Erzeugen solcher codierter Daten mit Verweis auf 13 gegeben.
  • Zuerst wird eine Modifizierte Diskrete Kosinustransformation (MDCT, Modified Discrete Cosine Transformation), ein Typ einer Zeit-Frequenz-Transformation, auf einem Einzelrahmen-Audiosignal-Sample (1024 Samples in diesem Beispiel) durchgeführt, wodurch das Audiosignal in als MDCT-Koeffizienten bekannte Parameter auf der Frequenzachse umgewandelt wird.
  • Als Nächstes werden die MDCT-Koeffizienten in zuvor bestimmte Frequenzband-(Skalierungsfaktorband)Einheiten aufgeteilt. Da die Frequenzauflösung typischerweise schmaler als die Bandbreite dieses Skalierungsfaktorbandes ist, wird eine Vielzahl von MDCT-Koeffizienten in jedem Skalierungsfaktorband vorhanden sein.
  • Als Nächstes werden für jedes der Skalierungsfaktorbänder der Skalierungsfaktor SF und die Spektraldaten ML von der Vielzahl von MDCT-Koeffizienten X abgeleitet. Hier entspricht der Skalierungsfaktor SF einem Indikator, wenn der MDCT-Koeffizient fließkomma-beschrieben wird und die Spektraldaten ML einem Parameter entsprechen.
  • Eine Vielzahl von MDCT-Koeffizienten gehört zu jedem Skalierungsfaktorband, aber der Skalierungsfaktor SF wird einmal für jedes Skalierungsfaktorband erzeugt. Andererseits werden die Spektraldaten ML in Ansprechen auf die vielfältigen MDCT-Koeffizienten X erzeugt, die zu den Skalierungsfaktorbändern gehören.
  • Die Beziehung zwischen dem oben beschriebenen MDCT-Koeffizienten X, dem Skalierungsfaktor SF und den Spektraldaten ML ist durch die folgende Gleichung gegeben: Abs(X) = int((abs(ML)·(2^(1/4·(SF-VERSATZ)))))^(3/4) + MAGISCHE ZAHL) (1)
  • In der obigen Formel stellt die Funktion abs(X) jedoch den Absolutwert der Variable X dar. Außerdem sind VERSATZ und MAGISCHE ZAHL Konstanten, z.B. VERSATZ = 100 und MAGISCHE ZAHL = 0,4054.
  • Gemäß Formel (1) können mehrfache Kombinationen des Skalierungsfaktors SF und der Spektraldaten ML bezüglich eines MDCT-Koeffizienten X erhalten werden. Somit gibt es eine gewisse Freiheit bei der Auswahl des Skalierungsfaktors SF. Demgemäß wird der Skalierungsfaktor SF ausgewählt, um die Menge der Daten der Spektraldaten ML, die jedem MDCT-Koeffizienten entsprechen, der zu dem fraglichen Skalierungsfaktorband gehört, auf ein Minimum zu reduzieren. Dieser Skalierungsfaktor SF wird mittels Iteration durch wiederholte Berechnungen der Formel (1) erhalten.
  • Als Nächstes wird eine differentielle Codierung jedes Skalierungsfaktors SF entsprechend jedem Skalierungsfaktorband ausgeführt.
  • In dem Fall, bei dem das Skalierungsfaktorband z.B. vom Band 1 bis zum Band n ist, werden zuerst das Differential zwischen dem Skalierungsfaktor SF von Band 1 und dem Skalierungsfaktor SF von Band 2, das Differential zwischen dem Skalierungsfaktor SF von Band 2 und dem Skalierungsfaktor SF von Band 3 usw. bestimmt, bis das Differential des Skalierungsfaktors von Band n – 1 und dem Skalierungsfaktor SF von Band n bestimmt ist.
  • Als Nächstes werden die resultierenden Differentiale unter Verwendung eines reversiblen Codes variabler Länge (RVLC, Reversible Variable Length Code) codiert. Dieser RVLC ist ein reversibler Code variabler Länge, sowohl von vorne als auch von hinten.
  • Ein Beispiel dieses RVLC ist ein Code variabler Länge, der eine feste Anzahl von "1"en enthält. Wenn z.B. die Anzahl von "1"en im Voraus als "3" bestimmt wird, dann ist es möglich, eine Serie von RVLC zu erzeugen, wie beispielsweise "111", "1011", "1101", "11001" und "10101".
  • In einem anderen Beispiel können Codes variabler Länge, die eine gleiche Anzeige von "0" und "1" enthalten, einen RVLC bilden (z.B. "01", "10", "011", "1100", "001011", "000111", "110100", usw.). Es gibt auch das Beispiel eines RVLC, dass der Code vollständig rechts/links-symmetrisch ist (z.B. "0", "101", "111", "1001", "11011", "10001", usw.).
  • Hinsichtlich der Spektraldaten ML wird eine Huffman-Codierung durchgeführt und es wird eine Huffman-Code-Verwürfelung ausgeführt. Wenn diese Huffman-Code-Verwürfelung ausgeführt wird, ist es möglich, zu vermeiden, dass sich Fehler zu der Zeit der Decodierung ausbreiten.
  • Mit Verwendung der resultierenden Daten wird als Nächstes ein Rahmen zusammengesetzt, der aus dem Header H, den Daten D1, die dem Skalierungsfaktor SF entsprechen, und den Daten D2 besteht, die den Spektraldaten ML entsprechen.
  • In diesem Rahmen enthält der Header H ein Codewort, das durch Ausführen einer Fehlerkorrekturcodierung auf einer wichtigen Information erhalten worden ist, wie beispielsweise wirksamen Skalierungsfaktorbändern und vielfältigen Skalierungsfaktoren SF in Band 1 und n. Hierbei werden die vielfältigen Skalierungsfaktoren SF in Band 1 und n als die Anfangsskalierungsverstärkungsdaten beim Unternehmen einer fortlaufenden Dekodierung des Skalierungsfaktors SF jedes Bandes in der empfangsseitigen Vorrichtung genutzt. Der Grund, warum diese Anfangsskalierungsverstärkungsdaten und Fehlerkorrekturcodierung für die Anzahl von Skalierungsfaktorbändern in dem Header H aufgenommen werden ist, dass, wenn es unmöglich ist, diese Daten in der empfangsseitigen Vorrichtung korrekt zu decodieren, dann das Decodieren sämtlicher Skalierungsfaktoren SF unmöglich wird, die zu dem Rahmen gehören.
  • Die Daten D1 enthalten RVLCs, die mit den Differentialen zwischen den Skalierungsfaktoren SF der vielfältigen Bänder codiert sind. Die Daten D2 enthalten Daten, für die die Spektraldaten ML einer Huffman-Codierung als auch einer Hufmann-Code-Verwürfelung unterzogen worden sind. Es sollte beachtet werden, dass die Daten D1 und D2 nicht einer Fehlerkorrekturcodierung unterzogen worden sind.
  • Rahmen, die für die Verwendung in der vorliegenden Ausführungsform geeignet sind, sind – um die obigen Punkten zusammenzufassen – wie folgt:
    • a. Fehlerkorrektur-codierter Header H Anfangsskalierungsverstärkungsdaten (vielfältige Skalierungsfaktoren SF in Band 1 und n) Wirksame Anzahl von Skalierungsfaktorbändern
    • b. Fehlerkorrektur-uncodierte Daten D1 RVLC codiert mit Differentialen zwischen den Skalierungsfaktoren SF der vielfältigen Bänder
    • c. Fehlerkorrektur-uncodierte Daten D2 Daten mit Huffman-codierten Spektraldaten ML und die einer Huffman-Code-Verwürfelung unterzogen worden sind
  • Die Anzahl der Bits des Headers H und der Daten D1 und D2 variiert von Rahmen zu Rahmen, aber unter Bedingungen wie beispielsweise einer Abtastrate von 40 kbps/48 kHz wird die Anzahl der Bits in der Reihenfolge von 320 Bits, 80 Bits und 1200 Bits sein, wobei die Reihenfolge in 14A gezeigt ist.
  • Das Obige ist eine detaillierte Beschreibung des in der vorliegenden Ausführungsform zu übertragenden Objektes.
  • 15 ist ein Blockdiagramm, das die Ausgestaltung einer Verschachtelungsvorrichtung mit Bezug zu der vorliegenden Ausführungsform zeigt, wobei eine Verschachtelung auf solch einem Objekt ausgeführt wird.
  • Wie in der Figur gezeigt, besteht die Verschachtelungsvorrichtung mit Bezug zu der vorliegenden Ausführungsform aus einem Trennungsteil 1003 plus den zwei Verarbeitungsteilen 2003 und 2004 .
  • Von diesen ist der Trennungsteil 1003 dem Trennungsteil 1001 der ersten Ausführungsform in dem Sinn darin ähnlich, dass ein Rahmen in den Header H, der einer Fehlerkorrekturcodierung unterzogen worden ist, und in Daten, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind, aufgeteilt wird. Jedoch trennt der Trennungsteil 1003 mit Bezug zu der vorliegenden Ausführungsform die Daten, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind, weiter in die Daten D1, die dem Skalierungsfaktor SF entsprechen, und die Daten D2 auf, die den Spektraldaten ML entsprechen. Außerdem liefert der Separatorteil 1003 den Header H an den Verarbeitungsteil 2004 , und die Daten D1 und D2 an den Verarbeitungsteil 2003 .
  • Die Ausgestaltungen der Verarbeitungsteile 2003 und 2004 sind nahezu mit der des Verarbeitungsteils 200 der ersten Ausführungsform identisch.
  • Darüber hinaus führt der Verarbeitungsteil 2003 die Verschachtelung durch Verstreuen und Anordnen der Bits, die die Daten D1 bilden, in der Bitsequenz der Daten D2 durch, so dass die resultierende Bitsequenz ausgegeben wird.
  • Der Verarbeitungsteil 2004 führt die Verschachtelung durch, indem die Bits, die den Header H bilden, bei gleichen Intervallen über die gesamte Spanne der durch den Verarbeitungsteil 2003 ausgegebenen Bitsequenz verstreut und angeordnet werden, und nach dieser Verschachtelung wird der Rahmen an die empfangsseitige Vorrichtung über den Übertragungspfad geliefert.
  • Als Nächstes wird mit Verweis auf 14A bis 14E ein spezifisches Beispiel des Betriebs einer Verschachtelungsvorrichtung mit Bezug zu der vorliegenden Ausführungsform erläutert.
  • Als erstes ist der Inhalt des zu übertragenden Rahmens wie bereits mit Verweis auf 14A ersichtlich.
  • Wie in 14B gezeigt, wird dieser Rahmen in den Header H, die Daten D1 und die Daten D2 getrennt. In diesem Beispiel hat der Header 320 Bits, haben die Daten D1 80 Bits und haben die Daten D2 1200 Bits.
  • Wie in 14C gezeigt, wird die Verschachtelung durch den Verarbeitungsteil 2003 durch Verstreuen und Anordnen der 80 Bits, die die Daten D1 bilden, bei gleichmäßigen Intervallen in der Bitsequenz von 1200 (15 × 80) Bits, die die Daten D2 bilden, unter Verwendung eines kontinuierlichen Speicherbereiches von 80 × (15 + 1) Bits in dem Betriebsspeicher durchgeführt.
  • Dieser Speicherungsbereich zum Verschachteln ist in 14C zweidimensional dargestellt.
  • Als Erstes werden, wie in 14C gezeigt, die die Daten D1 bildenden 80 Bits an den Speicherungsbereich der 80 Einheiten geschrieben, die der ersten Zeile des Betriebsspeichers entsprechen.
  • Als Nächstes werden die anfänglichen 15 Bits in den Daten D2 in den 15-Einheiten-Speicherungsbereich geschrieben, der Zeilen 2–16 der ersten Spalte des Betriebsspeichers entspricht, und die nächsten 15 Bits werden in einen 15-Einheiten-Speicherungsbereich geschrieben, der Zeilen 21–16 der zweiten Spalte entspricht usw., bis die letzten (d.h., die 80-ten) 15 Bits in einen 15-Einheiten-Speicherungsbereich geschrieben werden, der Zeilen 2–16 der 80-ten Spalte entspricht.
  • Dann werden 16 Bits aus jedem Speicherungsbereich gelesen, der Zeilen 1–16 der ersten Spalte des Betriebsspeichers entspricht, und 16 Bits werden aus jedem Speicherungsbereich gelesen, der Zeilen 1–16 der zweiten Spalte entspricht usw., bis die letzten 16 Bits aus jedem Speicherungsbereich gelesen werden, der Zeilen 1–16 der 80. Spalte entspricht.
  • Demgemäß werden, wie in 14D gezeigt, die die Daten D1 bildenden Bits in gleichen Intervallen in der Bitsequenz der Daten D2 verstreut und angeordnet, was eine Bitsequenz von 1280 Bits ergibt, die an den Verarbeitungsteil 2004 ausgegeben wird.
  • Der Verarbeitungsteil 2004 führt eine Verschachtelung durch, indem die den Header H bildenden 320 Bits bei gleichen Intervallen innerhalb der durch den Verarbeitungsteil 2003 ausgegebenen 1280 (4 × 320) Bits verstreut und angeordnet werden.
  • Die Verschachtelung durch den Verarbeitungsteil 2004 ergibt die in 14E gezeigte Bitsequenz von 1600 Bits.
  • Diese Bitsequenz wird an die empfangsseitige Vorrichtung als ein Rahmen nach der Verschachtelung übertragen.
  • Das Obige ist eine detaillierte Beschreibung einer Verschachtelungsvorrichtung mit Bezug zu der vorliegenden Ausführungsform.
  • Die Entschachtelung der empfangenen Rahmen wird durch die empfangsseitige Vorrichtung unter Verwendung der in 16 gezeigten Entschachtelungsvorrichtung ausgeführt.
  • Diese Entschachtelungsvorrichtung besteht aus den zwei Verarbeitungsteilen 3004 und 3003 und dem Synthetisierteil 4003 .
  • Die Verarbeitungsteile 3003 und 3004 besitzen jeweils dieselbe Ausgestaltung wie die Entschachtelungsvorrichtung 2 (siehe 6) der ersten Ausführungsform. Der Synthetisierteil 4002 hat dieselbe Funktion wie der Synthetisierteil 4002 der zweiten Ausführungsform.
  • Die Entschachtelung des empfangenen Rahmens wird durch diese Entschachtelungsvorrichtung durchgeführt, was den Header H, die Daten D1 und die Daten D2 ergibt, wobei ihre Bits in ihrer ursprünglichen Abfolge angeordnet sind.
  • Die Reproduktion der Audiosignale wird auch auf der Grundlage des Headers H, der Daten D1 und der Daten D2 ausgeführt.
  • Genauer genommen werden zuerst die zum Decodieren benötigten Daten, wie beispielsweise die Anfangsskalierungsfaktor-Verstärkungsdaten (Skalierungsfaktoren SF der Bänder 1 und n) und die effektive Skalierungsfaktorbandnummer, von dem Header H genommen.
  • Als Nächstes wird das Differential zwischen den Skalierungsfaktoren SF der vielfältigen Bänder aus den vielfältigen RVLC bestimmt, die in den Daten D1 enthalten sind, und der Skalierungsfaktor SF für jedes Band 1 – n wird decodiert, unter Verwendung dieser Differentiale und der anfänglichen Skalierungsfaktorverstärkungsdaten. Da in diesem Fall die Decodierung von der niedrigen Frequenz zu der hohen Frequenz und die Decodierung von der hohen Frequenz zu der niedrigen Frequenz beide möglich sind, kann der Skalierungsfaktor SF einer großen Anzahl von Bändern decodiert werden, selbst wenn Signalfehler in einem RVLC-Typ auftreten.
  • Das heißt, dass, wenn z.B. das zum Bestimmen des Skalierungsfaktors SF für die Hochfrequenzbänder n – 1 aufgrund eines Signalfehlers nicht erhalten werden kann, dann der Skalierungsfaktor SF von Band 2 durch Addieren des Differentials zwischen den Skalierungsfaktoren für Bänder 1 und 2 zu dem Skalierungsfaktor SF (anfängliche Skalierungsverstärkungsdaten) von Band 1 bestimmt wird, nachdem der Skalierungsfaktor SF von Band 3 durch Addieren der zuvor erwähnten Summe des Differentials der Skalierungsfaktoren von Band 2 und 3 bestimmt wird usw., um die Skalierungsfaktoren SF für sämtliche aller Bänder zu bestimmen, von der Seite der niedrigen Frequenz zu der Seite der hohen Frequenz. Im Gegensatz dazu wird, in Fällen, in denen beispielsweise das zum Bestimmen des Skalierungsfaktors SF des Bandes der niedrigen Frequenz 2 aufgrund eines Signalfehlers nicht erhalten werden kann, das Differential zwischen den Skalierungsfaktoren von Band n – 1 und n von dem Skalierungsfaktor SF (anfängliche Skalierungsverstärkungsdaten) von Band n subtrahiert, wonach der Skalierungsfaktor SF des Bandes n – 3 durch Subtrahieren des Differentials zwischen den Skalierungsfaktoren von Band n – 3 und n – 2 von dem zuvor erwähnten Subtraktionsergebnis subtrahiert wird usw., um die Skalierungsfaktoren SF für sämtliche Bänder zu bestimmen, von der Seite der hohen Frequenz zu der Seite der niedrigen Frequenz.
  • Als Nächstes werden die Skalierungsfaktoren SF für die vielfältigen Bänder und die Spektraldaten ML für die vielfältigen MDCT-Koeffizienten der in den Daten D2 enthaltenen Bänder in Formel (1) oben ersetzt, um die zu den Bändern gehörenden vielfältigen MDCT-Koeffizienten X wieder zu erzeugen.
  • Darüber hinaus wird in Fällen, in denen der Skalierungsfaktor SF aufgrund eines Signalfehlers nicht decodiert werden kann, eine Verbergung auf dem Band implementiert, das dem Skalierungsfaktor SF entspricht. Die Spektraldaten ML werden mit anderen Worten in Bezug zu dem Band auf "0" gesetzt.
  • Zusätzlich zum Implementieren einer umgekehrten MDCT-Umwandlung des MDCT-Koeffizienten X wird als Nächstes das Audiosignal auf der Grundlage der Ergebnisse der umgekehrten MDCT-Umwandlung und der Header-Daten wieder erzeugt.
  • Das Obige ist eine Beschreibung des Betriebs der empfangsseitigen Vorrichtung.
  • Es folgt eine Beschreibung der vorteilhaften Effekte der vorliegenden Ausführungsform.
  • Um die vorteilhaften Effekte der vorliegenden Ausführungsform besser zu verstehen, wird zuerst ein Vergleichsbeispiel bereitgestellt werden, das ein anderes Verschachtelungsverfahren als das Verschachtelungsverfahren der vorliegenden Erfindung beschreibt, und es wird eine Erläuterung der Widerstandsfähigkeit gegenüber Signalfehlern für den Fall bereitgestellt, in dem dieses Verfahren eingesetzt wird. Danach wird ein Vergleich mit der vorliegenden Ausführungsform getätigt werden, und es wird eine Erläuterung der Widerstandsfähigkeit gegenüber Signalfehlern für den Fall bereitgestellt, in dem die vorliegende Ausführungsform eingesetzt wird.
  • Als Erstes ist ein Vergleichsbeispiel 1 gegeben, welches ein anderes Verschachtelungsverfahren als das der vorliegenden Ausführungsform ist. Wie in der oben beschriebenen ersten Ausführungsform wird der Fall betrachtet, in dem die Bits, die den Header H bilden, der einer Fehlerkorrekturcodierung unterzogen worden ist, in der Bitsequenz verwürfelt werden, die beiden Daten D1 und D2 entspricht, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind. Es sollte beachtet werden, dass aus Bequemlichkeitsgründen beim Tätigen eines Vergleiches mit der vorliegenden Ausführungsform der Header H eine Bitlänge von 320 Bits haben soll, die Daten D1 eine Bitlänge von 80 Bits haben sollen und die Daten D2 eine Bitlänge von 1200 Bits haben sollen.
  • Wie in 17A gezeigt, wird die Verschachtelung in diesem Fall unter Verwendung eines kontinuierlichen Speicherungsbereiches von 320 × (1200 + 1) Einheiten in dem Betriebsspeicher durchgeführt.
  • 17A ist eine zweidimensionale Darstellung des zum Verschachteln verwendeten Speicherungsbereiches.
  • Wie in 17A gezeigt, werden zuerst die den Header H bildenden 320 Bits an die 320 Einheiten des Speicherungsbereiches geschrieben, die der ersten Zeile des Betriebsspeichers entsprechen.
  • Als Nächstes werden die anfänglichen 4 Bits in den Daten D1 an die 4 Einheiten des Speicherungsbereiches geschrieben, die Zeilen 2–5 von Spalte 1 des Betriebsspeichers entsprechen, dann werden die nächsten 4 Bits in die 4 Einheiten des Speicherungsbereiches geschrieben, die Zeile 2–5 von Spalte 2 entsprechen usw., bis die letzten 4 Bits an die 4 Einheiten des Speicherungsbereiches geschrieben werden, die Zeilen 2–5 von Spalte 20 entsprechen.
  • Sobald das Schreiben der die Daten D1 bildenden 80 Bits beendet ist, wird demgemäß das Schreiben der die Daten D2 bildenden 1200 Bits dann ausgeführt. Das heißt, dass die anfänglichen 4 Bits in den Daten D2 an den jeweiligen Speicherungsbereich geschrieben werden, der Zeilen 2–5 von Spalte 21 entspricht, die nächsten 4 Bits an den jeweiligen Speicherungsbereich geschrieben werden, der Zeilen 2–5 von Spalte 22 entspricht usw., bis die letzten 4 Bits an den jeweiligen Speicherungsbereich geschrieben werden, der Zeilen 2–5 von Spalte 320 entspricht.
  • Sobald das Schreiben der Bits, die den Header H, die Daten D1 und die Daten D2 bilden, zu dem Betriebsspeicher beendet ist, werden somit die in dem Betriebsspeicher gespeicherten Bits in einer Reihenfolge gelesen, die sich davon unterscheidet, als sie geschrieben wurden. Das heißt, dass 5 Bits von dem jeweiligen Speicherungsbereich gelesen werden, der Zeilen 1–5 von Spalte 1 des Betriebsspeichers entspricht, dann werden 5 Bits von dem jeweiligen Speicherungsbereich gelesen, der Zeilen 1–5 von Spalte 2 entspricht usw., bis die letzten 5 Bits von dem jeweiligen Speicherungsbereich gelesen werden, der Zeilen 1–5 von Spalte 320 entspricht.
  • Demgemäß werden die den Header H bildenden 320 Bits bei gleichen Intervallen in der 1280-Bit Bitsequenz, die die Daten D1 und die Daten D2 bildet, verstreut und angeordnet, was in einer Bitsequenz von 1600 Bits resultiert, die an die empfangsseitige Vorrichtung über den Übertragungspfad übertragen wird.
  • Wir nehmen an, dass ein Bündelfehler in dem Prozess der Übertragung auftritt, wie in 17B gezeigt. In dem in 17B abgebildeten Beispiel werden die 5 Bits von dem 9-ten bis zu dem 13-ten Bit der den Header H bildenden 320 Bits plus einige kontinuierliche Bits, die die Daten D1 bilden, durch einen Bündelfehler beeinträchtigt.
  • Hier ist in Verbindung mit dem Header H eine Randomisierung durch Verschachtelung implementiert, und der Effekt des Bündelfehlers manifestiert sich in der Form zufälliger Signalfehler. Solange wie die Anzahl fehlerhafter Bits, [4 Bits in dem in 17B gezeigten Beispiel] innerhalb der Fehlerkorrekturkapazität ist, kann deshalb der Signalfehler in der empfangsseitigen Vorrichtung korrigiert werden.
  • Zur selben Zeit sind in dem in 17B gezeigten Beispiel die Daten D1, die den zum sequentiellen Bestimmen des Skalierungsfaktors SF jedes Bandes benötigten RVLC enthalten, durch einen Bündelfehler beeinträchtigt.
  • Hier wird der MDCT-Koeffizient X für jedes Skalierungsfaktorband erzeugt, auf der Grundlage der Spektraldaten ML und des Skalierungsfaktors SF, die durch die empfangsseitige Vorrichtung wiederhergestellt sind. Wenn ein Bündelfehler entweder in den Daten D1 oder in den Daten D2 auftritt, wird es deshalb unmöglich, das dem fehlerhaften Teil entsprechende Skalierungsfaktorband zu decodieren, selbst wenn es in den anderen keine Fehler gibt.
  • Darüber hinaus ist in dem in 17B abgebildeten Beispiel ein Fehler in der Bitsequenz der Daten D1 aufgetreten, das heißt in der kontinuierlichen Bitsequenz von dem 19-ten Bit bis zu dem 38-ten Bit der Bitsequenz des RVLC, der zum Bestimmen des Skalierungsfaktors SF jedes Bandes benötigt wird. Somit wird das gesamte Skalierungsfaktorband, das den RVLC, wo der Signalfehler auftrat, zum Decodieren des Skalierungsfaktors SF benötigt, ein undecodierbarer Sektor. Wenn ein Fehler in einer großen Anzahl von Bitsequenzen unter den RVLC-Bitsequenz auftritt, wie in 17B gezeigt, wächst eine decodierbare Periode heran, die eine große Anzahl von Bändern enthält, wie in 17C gezeigt.
  • Nun wird Vergleichsbeispiel 2 beschrieben werden. In diesem Vergleichsbeispiel 2 wird eine Verschachtelung auf einem Rahmen mittels einer Verschachtelungsvorrichtung des in 15 gezeigten Typs durchgeführt. Jedoch unterscheidet sich die gemäß diesem Vergleichsbeispiel 2 durchgeführte Verschachtelung von der gemäß der vorliegenden Ausführungsform durchgeführten Verschachtelung.
  • In diesem Vergleichsbeispiel 2, wie in 18A gezeigt, schreibt der Verarbeitungsteil 2003 die 80 Bits, die die Daten D1 bilden, die zum Decodieren des Skalierungsfaktors SF benötigt werden, unter Aufteilen derer in jeweils 40 Bits für Zeile 1 und Zeile 2 des Betriebsspeichers. Als Nächstes schreibt der Verarbeitungsteil 2003 die anfänglichen 30 Bits der die Daten D2 bildenden 1200 Bits an den jeweiligen Speicherungsbereich, der Zeile 3 bis Zeile 32 von Spalte 1 des Betriebsspeichers abdeckt, und schreibt dann die nächsten 30 Bits an den jeweiligen Speicherungsbereich, der Zeile 3 bis Zeile 32 von Spalte 2 abdeckt usw., bis zum Schreiben der letzten 30 Bits an den jeweiligen Speicherungsbereich, der Zeile 3 bis Zeile 32 von Spalte 40 abdeckt. Sobald dieses Schreiben vollendet ist, liest der Verarbeitungsteil 2003 dann 32 Bits aus dem jeweiligen Speicherungsbereich von Zeilen 1–32 von Spalte 1, liest dann die 32 Bits von dem jeweiligen Speicherungsbereich von Zeilen 1–32 von Spalte 2 usw., bis die letzten 30 Bits aus dem jeweiligen Speicherungsbereich von Zeile 1–32 von Spalte 40 gelesen sind. Dann liefert der Verarbeitungsteil 2003 an den Verarbeitungsteil 2004 eine Bitsequenz der 1280 Bits, die in der beschriebenen Weise gelesen wurden.
  • Als Nächstes führt der Verarbeitungsteil 2004 eine Verschachtelung durch, indem die 320 Bits, die den Header H bilden, bei gleichen Intervallen in der Bitsequenz der 1280 Bits, die von dem Verarbeitungsteil 2003 ausgegeben ist, verstreut und angeordnet werden.
  • 18B zeigt die Ausgestaltung einer aus dieser Verschachtelung resultierenden Bitsequenz.
  • Diese Bitsequenz wird an die empfangsseitige Vorrichtung als ein verschachtelter Rahmen übertragen.
  • In dem Prozess des Übertragens dieses Rahmens tritt ein Bündelfehler auf, wie in 18B gezeigt.
  • In dem in 18B abgebildeten Beispiel sind das 3. Bit, das 4. Bit, das 43. Bit und das 44. Bit der Daten D1, die zum Decodieren des Skalierungsfaktors SF benötigt werden, durch den Bündelfehler beeinträchtigt. Die Skalierungsfaktorbänder, die aufgrund dieser Bitfehler den Skalierungsfaktor SF nicht decodieren können, bilden einen undecodierbaren Sektor.
  • Übrigens wird ein RVLC zum Codieren des Skalierungsfaktors SF verwendet, und der Skalierungsfaktor SF, der Band 1 mit der geringsten Frequenz entspricht, und der Skalierungsfaktor SF, der Band n mit der höchsten Frequenz entspricht, sind in dem Header H als Anfangsspektralverstärkungsdaten aufgenommen. Wenn ein Signalfehler in dem einem hohen Frequenzband entsprechenden RVLC auftritt, wird eine Decodierung von der niedrigen Frequenz zu der hohen Frequenz ausgeführt, und umgekehrt, wenn ein Signalfehler in dem Bändern einer niedrigen Frequenz entsprechenden RVLC auftritt, kann der Skalierungsfaktor SF einer sehr weiten Spanne von Bändern durch Decodieren von der hohen Frequenz in Richtung der niedrigen Frequenz wiedergewonnen werden.
  • Wenn die Verschachtelung wie oben beschrieben durch Schreiben der die Daten D1 bildenden Bits an jeden Speicherungsbereich, der eine Vielzahl von Zeilen in dem Betriebsspeicher entspricht, geschrieben werden, erscheinen die Bits, die jeden RVLC bilden, der zum Decodieren des Skalierungsfaktors SF in dem Rahmen nach der Verschachtelung benötigt wird, als zwei kontinuierliche Bits [siehe 18B]. Demgemäß gibt es einen Anstieg in der Anzahl der durch den Bündelfehler beeinträchtigten Bits unter den zum Decodieren des Skalierungsfaktors SF benötigten Bits. Darüber hinaus ist es sehr wahrscheinlich, dass die vielfältigen RVLCs, die zwei oder mehr Bändern entsprechen, die auf der Frequenzachse getrennt sind, unter den Komponentenbits der vielfältigen RVLCs, die zum Decodieren des Skalierungsfaktors SF benötigt werden, durch den Bündelfehler beeinträchtigt sein werden.
  • Wenn ein Signalfehler in den Komponentenbits der vielfältigen RVLCs auftritt, die einer Vielzahl von auf der Frequenzachse getrennten Bändern entsprechen, wird außerdem der Sektor von dem Band mit der niedrigsten Frequenz bis zu dem Band mit der höchsten Frequenz ein undekodierbarer Sektor werden, wie in 18C gezeigt.
  • Im Gegensatz zu den Vergleichsbeispielen 1 und 2 ist die vorliegende Ausführungsform auch zum Verstreuen der Komponentenbits des zum Decodieren des Skalierungsfaktors SF benötigten RVLC fähig, mit Anordnen derer bei gleichen Intervallen in dem Rahmen, da sämtliche Bits, die die Daten D1 bilden, die dem Skalierungsfaktor SF entsprechen, an die erste Zeile des Betriebsspeichers geschrieben werden, wenn die Verschachtelung in dem Verarbeitungsteil 2003 durchgeführt wird. Darüber hinaus haben die zum Decodieren des Skalierungsfaktors SF jedes Bandes benötigten Komponentenbits des RVLC dieselbe Sequenz wie die Sequenz jedes Bandes auf der Frequenzachse, die in der Bitsequenz nach der Verschachtelung auftreten. Selbst wenn ein Bündelfehler so wie in 19A in einem Rahmen während einer Übertragung auftritt, wird deshalb nicht mehr als das passieren, dass es unmöglich ist, den Skalierungsfaktor SF, der dem Nachbarband auf der Frequenzachse entspricht, zu decodieren. Es ist deshalb möglich, undecodierbare Sektoren, die einen Verlust des Skalierungsfaktors SF begleiten, zu kürzen, wie in 19B gezeigt.
  • In Fällen, in denen es einen Header H, der einer Fehlerkorrekturcodierung unterzogen worden ist, und die Daten D1 und D2 gibt, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind, werden gemäß der vorliegenden Ausführungsform die Bits zum Decodieren des Skalierungsfaktors SF, in den Daten D1 enthalten, verstreut und in den Daten D2 angeordnet, und darüber hinaus werden die den Header H bildenden Bits verstreut und in der resultierenden Bitsequenz angeordnet, so dass, selbst wenn ein Bündelfehler auftritt, es möglich ist, die Wahrscheinlichkeit zu reduzieren, dass der Skalierungsfaktor SF undecodierbar werden wird, wodurch die Qualität der reproduzierten Audiosignale verbessert wird.
  • Da die vielfältigen Bits nur in die erste Zeile des Betriebsspeichers geschrieben werden, wenn die zum Decodieren des Skalierungsfaktors SF benötigten Bits verstreut und angeordnet werden, werden darüber hinaus die zum Decodieren des Skalierungsfaktors SF der vielfältigen Bänder benötigten Bits in dem Rahmen in einer Reihenfolge verstreut und angeordnet, die identisch mit der Reihenfolge der Bänder auf den Frequenzachse ist.
  • Selbst wenn ein Bündelfehler auftritt, ist es deshalb möglich, den Skalierungsfaktor SF, der verloren gehen kann, auf der Frequenzachse zu konzentrieren. Somit können undecodierbare Bänder in eine sehr schmale Spanne konzentriert werden. Als ein Ergebnis kann die Qualität der reproduzierten Audiosignale verbessert werden.
  • D. Variationen der oben beschriebenen Ausführungsformen
  • Die Verschachtelungsvorrichtung und die Entschachtelungsvorrichtung mit Bezug zu den Ausführungsformen 1–3 können mit der abgebildeten Hardware-Ausgestaltung oder mit einer Software-Ausgestaltung zum Ausführen eines Programms für eine Operation realisiert werden, die der oben beschriebenen ähnlich ist.
  • Darüber hinaus wurden in der oben beschriebenen Ausführungsform Bits, die den Header H bilden, der nicht einer Fehlerkorrekturcodierung unterworfen wurde, verstreut, mit Anordnen derer in einer Bitsequenz von Daten, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind, aber die vorliegende Erfindung ist nicht auf dieses beschränkt, und die oben beschriebene Verschachtelung und Entschachtelung kann selbstverständlich auch auf Teile angewendet werden, die nicht einer Fehlerkorrekturcodierung unterzogen worden sind.
  • Außerdem wurde in der dritten Ausführungsform ein Beispiel des Falles präsentiert, in dem die vorliegende Erfindung auf 3 Parameter angewendet wurde, die 1 Signal darstellen, aber die vorliegende Erfindung ist nicht darauf beschränkt, und sie ist selbstverständlich auch für 1 Signal zugelassen, das durch 4 oder mehr Parameter darzustellen ist. In diesem Fall kann die Verschachtelung durchgeführt werden durch Verstreuen und Anordnen der Bits entsprechend mancher Parameter in einer Bitsequenz, die einem der verbleibenden Parameter entspricht, und Durchführen vielfacher Wiederholungen dieses Verstreuens entsprechend der Anzahl der Parametertypen.

Claims (8)

  1. Verschachtelungsvorrichtung, umfassend: einen Betriebsspeicher, der konfiguriert ist zum Bereitstellen einer Matrix von Speicherungsbereichen mit einer Breite und einer Tiefe; einen Datenschreiber, der konfiguriert ist zum Schreiben eines ersten Stroms von Bits, die einem ersten Satz von Daten entsprechen, die in einem zu übertragenden oder zu speichernden Rahmen enthalten sind, in Speicherungsbereichen in der Matrix entlang der Breite von oben links nach unten rechts und zum Schreiben eines zweiten Stroms von Bits, die einem zweiten Satz in dem Rahmen enthaltener Daten entsprechen, in fortlaufenden Speicherungsbereichen in der Matrix entlang der Tiefe; und einen Datenleser, der konfiguriert ist zum Lesen der Bits in dem ersten und dem zweiten Strom von der Matrix entlang der Tiefe von oben links nach unten rechts, um einen dritten Strom von Bits auszugeben, in welchem die Bits in dem ersten Strom in den zweiten Strom bei Intervallen gestreut sind.
  2. Verschachtelungsvorrichtung gemäß Anspruch 1, wobei die Matrix konfiguriert ist, so dass die Breite gleich einer Länge des ersten Stroms von Bits ist.
  3. Verschachtelungsvorrichtung gemäß Anspruch 1, wobei der erste Strom von Bits (Xi) und der dritte Strom von Bits (Zk) die folgende Beziehung haben:
    Figure 00540001
    wobei Zk das k-te Bit in dem dritten Strom ist (0 ≤ k); Xi das i-te Bit in dem ersten Strom ist (0 ≤ i); W die Breite der Matrix ist; D die Tiefe der Matrix ist.
  4. Verschachtelungsvorrichtung gemäß Anspruch 1, wobei die Matrix gleich der Gesamtlängen des ersten und des zweiten Bitstroms groß ist.
  5. Verschachtelungsverfahren, die Schritte umfassend zum: Bereitstellen einer Matrix von Speicherungsbereichen mit einer Breite und einer Tiefe; Schreiben eines ersten Stroms von Bits, die einem ersten Satz von Daten entsprechen, die in einem zu übertragenden oder zu speichernden Rahmen enthalten sind, in Speicherungsbereichen in der Matrix entlang der Breite von oben links nach unten rechts; Schreiben eines zweiten Stroms von Bits, die einem zweiten Satz in dem Rahmen enthaltener Daten entsprechen, in fortlaufenden Speicherungsbereichen in der Matrix entlang der Tiefe; und Lesen der Bits in dem ersten und dem zweiten Strom von der Matrix entlang der Tiefe von oben links nach unten rechts, um einen dritten Strom von Bits auszugeben, in welchem die Bits in dem ersten Strom in den zweiten Strom bei Intervallen gestreut sind.
  6. Verschachtelungsverfahren gemäß Anspruch 5, wobei die Matrix konfiguriert ist, so dass die Breite gleich der Länge des ersten Stroms von Bits ist.
  7. Verschachtelungsverfahren gemäß Anspruch 5, wobei der erste Strom von Bits (Xi) und der dritte Strom von Bits (Zk) die folgende Beziehung haben:
    Figure 00550001
    wobei Zk das k-te Bit in dem dritten Strom ist (0 ≤ k); Xi das i-te Bit in dem ersten Strom ist (0 ≤ i); W die Breite der Matrix ist; D die Tiefe der Matrix ist.
  8. Verschachtelungsverfahren gemäß Anspruch 5, wobei die Matrix gleich der Gesamtlängen des ersten und des zweiten Bitstroms groß ist.
DE69936568T 1998-05-27 1999-05-27 Verfahren und Vorrichtung zum Verchachteln einer ersten Bitsequenz in eine zweite Bitsequenz Expired - Lifetime DE69936568T2 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP14619198 1998-05-27
JP14619198 1998-05-27
JP34601698 1998-12-04
JP34601698 1998-12-04
PCT/JP1999/002799 WO1999062184A1 (fr) 1998-05-27 1999-05-27 Procede et dispositif d'intercalage, et procede et dispositif de desintercalage

Publications (2)

Publication Number Publication Date
DE69936568D1 DE69936568D1 (de) 2007-08-30
DE69936568T2 true DE69936568T2 (de) 2008-04-30

Family

ID=26477080

Family Applications (3)

Application Number Title Priority Date Filing Date
DE69940134T Expired - Lifetime DE69940134D1 (de) 1998-05-27 1999-05-27 Vorrichtung und Verfahren zur mehrstufigen Verschachtelung
DE69936568T Expired - Lifetime DE69936568T2 (de) 1998-05-27 1999-05-27 Verfahren und Vorrichtung zum Verchachteln einer ersten Bitsequenz in eine zweite Bitsequenz
DE69942595T Expired - Lifetime DE69942595D1 (de) 1998-05-27 1999-05-27 Verschachtelungsvorrichtung und Verfahren mit Fehlerschutz

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE69940134T Expired - Lifetime DE69940134D1 (de) 1998-05-27 1999-05-27 Vorrichtung und Verfahren zur mehrstufigen Verschachtelung

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE69942595T Expired - Lifetime DE69942595D1 (de) 1998-05-27 1999-05-27 Verschachtelungsvorrichtung und Verfahren mit Fehlerschutz

Country Status (9)

Country Link
US (4) US6871302B1 (de)
EP (3) EP1843474B1 (de)
JP (1) JP3362051B2 (de)
KR (2) KR100493263B1 (de)
CN (1) CN1147052C (de)
AU (1) AU742455C (de)
CA (1) CA2297770C (de)
DE (3) DE69940134D1 (de)
WO (1) WO1999062184A1 (de)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69940134D1 (de) * 1998-05-27 2009-01-29 Nippon Telegraph & Telephone Vorrichtung und Verfahren zur mehrstufigen Verschachtelung
DE10219700C1 (de) * 2002-05-02 2003-09-18 Astrium Gmbh Verfahren zum Interleaving von Daten
WO2004030262A1 (en) * 2002-09-24 2004-04-08 Telefonaktiebolaget Lm Ericsson (Publ) Interleaving for mobile communications
US8077743B2 (en) * 2003-11-18 2011-12-13 Qualcomm Incorporated Method and apparatus for offset interleaving of vocoder frames
JP4349183B2 (ja) * 2004-04-01 2009-10-21 富士ゼロックス株式会社 画像処理装置および画像処理方法
US8340098B2 (en) * 2005-12-07 2012-12-25 General Instrument Corporation Method and apparatus for delivering compressed video to subscriber terminals
US8214697B2 (en) * 2006-09-12 2012-07-03 Nxp B.V. Deinterleaver for a communication device
US7688908B2 (en) * 2007-03-12 2010-03-30 Samsung Electronics Co., Ltd. System and method for processing wireless high definition video data using a shortened last codeword
US7779216B2 (en) * 2007-04-11 2010-08-17 Honeywell International Inc. Method and system of randomizing memory locations
JP2008311640A (ja) * 2007-05-16 2008-12-25 Rohm Co Ltd 半導体レーザダイオード
US8700792B2 (en) 2008-01-31 2014-04-15 General Instrument Corporation Method and apparatus for expediting delivery of programming content over a broadband network
US8752092B2 (en) 2008-06-27 2014-06-10 General Instrument Corporation Method and apparatus for providing low resolution images in a broadcast system
CN104768031B (zh) * 2009-01-26 2018-02-09 汤姆森特许公司 用于视频解码的装置
US8189408B2 (en) * 2009-11-17 2012-05-29 Freescale Semiconductor, Inc. Memory device having shifting capability and method thereof
JP4734450B2 (ja) * 2009-12-22 2011-07-27 株式会社東芝 認証モジュール、電子機器及びインタリーブ信号の復元方法
US9357244B2 (en) 2010-03-11 2016-05-31 Arris Enterprises, Inc. Method and system for inhibiting audio-video synchronization delay
WO2011154780A1 (en) * 2010-06-11 2011-12-15 Freescale Semiconductor, Inc. Method for providing data protection for data stored within a memory element and integrated circuit device therefor
EP2490355A1 (de) 2011-02-18 2012-08-22 Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. Digitalempfänger und Digitalsender mit einer variablen Verschachtelungsfunktionalität
EP2863566B1 (de) 2013-10-18 2020-09-02 Université de Nantes Verfahren zur Rekonstruktion eines Datenblocks und Vorrichtung zur Verwendung davon
WO2016118060A1 (en) * 2015-01-20 2016-07-28 Telefonaktiebolaget Lm Ericsson (Publ) Transmitting device, receiving device, and methods performed therein
WO2018187902A1 (en) 2017-04-10 2018-10-18 Qualcomm Incorporated An efficient interleaver design for polar codes
CN113688067A (zh) * 2021-08-30 2021-11-23 上海汉图科技有限公司 数据写入、数据读取方法及装置

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4559625A (en) * 1983-07-28 1985-12-17 Cyclotomics, Inc. Interleavers for digital communications
JPS63182977A (ja) * 1987-01-23 1988-07-28 Pioneer Electronic Corp デイジタル音声信号多重方式
FR2627650B1 (fr) * 1988-02-24 1990-07-06 Crouzet Sa Procede et dispositif de transmission de donnees
EP0519669A3 (en) * 1991-06-21 1994-07-06 Ibm Encoding and rebuilding data for a dasd array
US5255343A (en) * 1992-06-26 1993-10-19 Northern Telecom Limited Method for detecting and masking bad frames in coded speech signals
JP2900719B2 (ja) 1992-08-24 1999-06-02 日本電気株式会社 音声コーデック処理方法
US5517511A (en) * 1992-11-30 1996-05-14 Digital Voice Systems, Inc. Digital transmission of acoustic signals over a noisy communication channel
DE69317867T2 (de) * 1992-12-14 1998-10-22 Koninkl Philips Electronics Nv Verfahren und Vorrichtung zur Realisierung eines Quasiproduktkodes mit verschiedenen Fehlerschutzstufen
EP0603932B1 (de) * 1992-12-14 1998-04-08 Koninklijke Philips Electronics N.V. Verfahren und Vorrichtung zur Realisierung eines Quasiproduktkodes mit verschiedenen Fehlerschutzstufen
AU665716B2 (en) * 1993-07-05 1996-01-11 Mitsubishi Denki Kabushiki Kaisha A transmitter for encoding error correction codes and a receiver for decoding error correction codes on a transmission frame
CA2131674A1 (en) 1993-09-10 1995-03-11 Kalyan Ganesan High performance error control coding in channel encoders and decoders
FR2713845B1 (fr) * 1993-12-07 1996-01-19 Thomson Consumer Electronics Procédé d'entrelacement et de désentrelacement en bloc et dispositif de mise en Óoeuvre.
JP3304632B2 (ja) * 1994-09-21 2002-07-22 ソニー株式会社 インターリーブ方法およびインターリーブ回路
WO1996027962A2 (en) * 1995-03-03 1996-09-12 Philips Electronics N.V. Error protected multichannel digital data transmission system and method having graceful degration quality through multi-resolution, and transmitter station and receiver station for use in such system
DE59610391D1 (de) * 1995-06-12 2003-06-05 Siemens Ag Verfahren und Codiereinrichtung zur gesicherten Übertragung von Daten mittels Mehrkomponenten-Codierung
FR2737363B1 (fr) * 1995-07-27 1997-09-05 France Telecom Entrelacement/desentrelacement d'elements de donnees
EP0759665B1 (de) * 1995-08-21 2002-07-24 Alcatel Verfahren zur Schachtelung von Datenrahmen, Übertragungsfehlerkorrekturanordnung und Modulator damit
US5757822A (en) * 1995-08-24 1998-05-26 Quantum Corporation Bit-interleaved rate 16/17 modulation code with three-way byte-interleaved ECC
JPH09130269A (ja) * 1995-11-06 1997-05-16 Oki Electric Ind Co Ltd 誤り訂正符号フレーム構成装置
JPH09153918A (ja) * 1995-11-30 1997-06-10 Nippon Telegr & Teleph Corp <Ntt> ディジタル伝送装置
JP3572769B2 (ja) * 1995-11-30 2004-10-06 ソニー株式会社 ディジタルオーディオ信号処理装置および方法
US5764649A (en) * 1996-03-29 1998-06-09 Amati Communications Corporation Efficient address generation for convolutional interleaving using a minimal amount of memory
JP3854662B2 (ja) * 1996-06-12 2006-12-06 キヤノン株式会社 撮像装置
US5898698A (en) * 1996-09-24 1999-04-27 Orckit Communications Ltd. Multiple codeword interleaver method and apparatus
US5751741A (en) * 1996-11-20 1998-05-12 Motorola, Inc. Rate-adapted communication system and method for efficient buffer utilization thereof
US5978833A (en) * 1996-12-31 1999-11-02 Intel Corporation Method and apparatus for accessing and downloading information from the internet
US5946357A (en) * 1997-01-17 1999-08-31 Telefonaktiebolaget L M Ericsson Apparatus, and associated method, for transmitting and receiving a multi-stage, encoded and interleaved digital communication signal
DE69732896T2 (de) * 1997-01-31 2006-05-11 Alcatel Verfahren und Geräte zur Schachtelung/Entschachtelung von digitalen Daten und Kommunikationssystem
JP3609427B2 (ja) * 1997-05-13 2005-01-12 松下電器産業株式会社 パケット伝送装置
US6154661A (en) * 1997-12-10 2000-11-28 Arraycomm, Inc. Transmitting on the downlink using one or more weight vectors determined to achieve a desired radiation pattern
DE69940134D1 (de) * 1998-05-27 2009-01-29 Nippon Telegraph & Telephone Vorrichtung und Verfahren zur mehrstufigen Verschachtelung
DE69910965T2 (de) * 1998-05-27 2004-07-22 Ntt Mobile Communications Network Inc. Verfahren und gerät zum schutz gegen fehler
JP2000124816A (ja) * 1998-10-14 2000-04-28 Oki Electric Ind Co Ltd 符号化インタリーブ装置

Also Published As

Publication number Publication date
EP1841077A1 (de) 2007-10-03
EP1017175A4 (de) 2005-11-16
EP1841077B1 (de) 2010-07-14
KR100493261B1 (ko) 2005-06-02
EP1017175B1 (de) 2007-07-18
AU742455C (en) 2003-01-09
DE69940134D1 (de) 2009-01-29
CA2297770A1 (en) 1999-12-02
KR20040097276A (ko) 2004-11-17
KR100493263B1 (ko) 2005-06-02
US20070038903A1 (en) 2007-02-15
CN1272978A (zh) 2000-11-08
EP1843474A1 (de) 2007-10-10
WO1999062184A1 (fr) 1999-12-02
EP1843474B1 (de) 2008-12-17
EP1017175A1 (de) 2000-07-05
US7428667B2 (en) 2008-09-23
DE69936568D1 (de) 2007-08-30
US7469365B2 (en) 2008-12-23
DE69942595D1 (de) 2010-08-26
JP3362051B2 (ja) 2003-01-07
CN1147052C (zh) 2004-04-21
US7191369B2 (en) 2007-03-13
AU742455B2 (en) 2002-01-03
US20050005223A1 (en) 2005-01-06
US6871302B1 (en) 2005-03-22
AU3954499A (en) 1999-12-13
CA2297770C (en) 2007-10-30
US20070038902A1 (en) 2007-02-15
KR20010022350A (ko) 2001-03-15

Similar Documents

Publication Publication Date Title
DE69936568T2 (de) Verfahren und Vorrichtung zum Verchachteln einer ersten Bitsequenz in eine zweite Bitsequenz
DE69215743T2 (de) Fehlerkorrekturkodierungsverfahren mit mindestens zwei parallellen, systematischen Faltungsenkodern, iterativem Dekodierungsverfahren, Dekodierungsmodul und Dekoder dafür
EP0612156B1 (de) Digitales Codierverfahren
DE69425400T2 (de) Verfahren und Vorrichtung zur Verschachtelung einer Folge von Datenelementen
DE69634155T2 (de) Erfassung einer Konfidenz und eines Rahmen-Qualitäts-Signals in einem &#34;soft decision&#34;-Faltungs-Dekoder
EP0276753B1 (de) Verfahren und Vorrichtung zur digitalen Nachrichtenübertragung und/oder -aufzeichnung und -wiedergabe
DE69429398T2 (de) Vorrichtung zum Senden und Empfangen von mit Fehlerkorrekturschutz versehenen verwürfelten Daten in einem Übertragungsrahmen
DE69323020T2 (de) Dekodierer für veränderliche Längenkodes
DE4314741C2 (de) Dekodierer für Einheiten von Huffman-kodierten Daten
DE3106855C2 (de) &#34;Rekursives Verfahren zum Fehlercodieren sowie Vorrichtung hierfür&#34;
DE3875334T2 (de) Verfahren zur synchronisierung fuer die uebertragung ueber einen asynchronen kanal einer folge von kodierten bildern, die mittels eines kodes mit variabler laenge kodiert sind und einrichtung zur durchfuehrung dieses verfahrens.
DE69327740T2 (de) Verfahren und Gerät zur Modulation und Demodulation
DE3687285T2 (de) Verfahren und anordnung zur modifizierung eines lauflaengenbegrenzten codes.
DE60015448T2 (de) Teilband-Audiokodiersystem
DE20023165U1 (de) Vorrichtung zum Steuern eines Demultiplexers und eines Multiplexers für die Ratenabstimmung in einem Mobilkommunikationssystem
DE69905255T2 (de) Verbesserte verschachteler für turbo-kodes
DE3239607C2 (de)
EP0698316B1 (de) Verfahren zum Übertragen von Bildern mit ungleichem Fehlerschutz
DE3006958A1 (de) Digitalsignal-uebertragungssystem
DE2805294C2 (de) Codierende Übertragungsanlage für Faksimile-Signale
DE69527935T2 (de) Gleichtaktfreier ternärer Kode
DE60022837T2 (de) Vorrichtung zur Teilbandcodierung
EP1155498B1 (de) Vorrichtung und verfahren zum erzeugen eines datenstroms und vorrichtung und verfahren zum lesen eines datenstroms
DE102004026800B4 (de) Verfahren zum Verändern einer Tiefe einer Interleaver-Vorrichtung oder Deinterleaver-Vorrichtung sowie entsprechende Interleaver-Vorrichtung, Deinterleaver-Vorrichtung und Kommunikationseinrichtung
DE69920779T2 (de) Fehlerschutzverfahren und -vorrichtung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition