[go: up one dir, main page]

DE69613181T2 - Anordnung zum kodieren einer sequenz von (n-1)-bit informationswörtern in eine sequenz von n-bit kanalwörtern sowie dekodieranordnung zum dekodieren einer sequenz von n-bit kanalwörtern in eine sequenz von (n-1)-bit informationswörtern - Google Patents

Anordnung zum kodieren einer sequenz von (n-1)-bit informationswörtern in eine sequenz von n-bit kanalwörtern sowie dekodieranordnung zum dekodieren einer sequenz von n-bit kanalwörtern in eine sequenz von (n-1)-bit informationswörtern

Info

Publication number
DE69613181T2
DE69613181T2 DE69613181T DE69613181T DE69613181T2 DE 69613181 T2 DE69613181 T2 DE 69613181T2 DE 69613181 T DE69613181 T DE 69613181T DE 69613181 T DE69613181 T DE 69613181T DE 69613181 T2 DE69613181 T2 DE 69613181T2
Authority
DE
Germany
Prior art keywords
bit
words
word
channel
value
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 - Fee Related
Application number
DE69613181T
Other languages
English (en)
Other versions
DE69613181D1 (de
Inventor
Antonie Schouhamer Immink
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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
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 Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of DE69613181D1 publication Critical patent/DE69613181D1/de
Application granted granted Critical
Publication of DE69613181T2 publication Critical patent/DE69613181T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/02Conversion to or from weighted codes, i.e. the weight given to a digit depending on the position of the digit within the block or code word
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M5/00Conversion of the form of the representation of individual digits
    • H03M5/02Conversion to or from representation by pulses
    • H03M5/04Conversion to or from representation by pulses the pulses having two levels
    • H03M5/14Code representation, e.g. transition, for a given bit cell depending on the information in one or more adjacent bit cells, e.g. delay modulation code, double density code
    • H03M5/145Conversion to or from block codes or representations thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Storage Device Security (AREA)

Description

  • Anordnung zum Codieren einer Sequenz von (N-1)-Bit Informationswörtern in eine Sequenz von N-Bit Kanalwörtern, sowie Decodieranordnung zum Decodieren einer Sequenz von N-Bit Kanalwörtern in eine Sequenz von (N-1)-Bit Informationswörtern
  • Die Erfindung bezieht sich auf das Codieren einer Sequenz von (n-1)- Bit Informationswörtern in eine Sequenz von n-Bit Kanalwörtern nach dem Oberbegriff der Ansprüche 1 und 11 und auf das Decodieren einer Sequenz von n-Bit Kanalwörtern in eine Sequenz von (n-1)-Bit Informationswörtern nach dem Oberbegriff der Ansprüche 6 und 12.
  • Ein derartiges Codierungs- und Decodierungsverfahren, wie in der Veröffentlichung: "Fibonacci codes for synchronization control" von W. H. Kautz in "IEEE Trans. Inform. Theory", Heft IT-11, Seiten 184-292, April 1965 beschrieben, kann angewandt werden zum Erhalten einer k-erzwungenen Sequenz von Kanalwörtern und ist bekannt unter dem Namen. "enumerative encoding" (enumerative Codierung). Enumerative Decodierung erfolgt dadurch, dass das innere Produkt aus dem empfangenen Kanalwort und dem Gewichtungsvektor von n Koeffizienten gebildet wird. Der Gewichtungsvektor ist eine Funktion der betreffenden Kanalbedingungen und wird meistens vorberechnet. Es sei bemerkt, dass Multiplikationen einfache Addierungen sind, wenn das empfangene Kanalwort binär ist.
  • Codierung erfolgt nach einem Verfahren, das einem Dezimal-zu-Binär- Konversionsvorgang entspricht, wobei statt der üblichen Zweierpotenzen, der Gewichtungsvektor von n Koeffizienten benutzt wird. Die binäre Darstellung der Gewichtungskoeffizienten bei dem Kautz-Verfahren erfordert n-1 Bits. Wenn es n- Gewichtungskoeffizienten gibt, ist eine Speicherkapazität von (n-1) Speicherstellen erforderlich zum Speichern der n Koeffizienten. Wenn 100-Bit Kanalwörter codiert/decodiert werden, wäre eine Speicherkapazität von 9, 9 K Speicherstellen erforderlich.
  • Ein zweiter Nachteil des Standes der Technik ist, dass die Addierungen bei der Bildung des inneren Produktes zwischen dem binären Kanalwort und dem Vektor von n Koeffizienten einen doppelten Übertrag erfordert, was die Struktur eines parallelen Addierers komplizierter macht. Dies macht die Umwandlung des Addierers von einer parallelen Form zu einer einfachen seriellen Form praktisch unmöglich.
  • Diese und andere Nachteile sind so seriös, dass enumerative Codierung und Decodierung sich auf die Informationstheoriepraxis beschränkt haben.
  • Es ist nun u. a. eine Aufgabe der vorliegenden Erfindung eine vereinfache Codierungs- und Decodierungsanordnung zu schaffen. Dazu schafft die Erfindung eine Codierungsanordnung, eine Decodierungsanordnung, ein Codierungsverfahren und ein Decodierungsverfahren, wie in den unabhängigen Patentansprüchen definiert. Vorteilhafte Ausführungsformen sind in den abhängigen Patentansprüchen definiert.
  • Nach einem ersten Aspekt der vorliegenden Erfindung werden p Bits eines Gewichtungsvektorkoeffizienten wi zugeführt, wobei die restlichen n-1-p-Bits des (n-1)-Bit Gewichtungsvektorkoeffizientenwortes "Nullen" sind, die vor oder nach dem binären p-Bit-Wort oder vor und nach dem binären p-Bit-Wort addiert werden sollen, damit der genannte Gewichtungsvektorkoeffizient erhalten wird, und dass p eine ganze Zahl ist, größer als Eins und kleiner als n-1.
  • Der Erfindung liegt die Erkenntnis zugrunde, dass es möglich ist, die n Gewichtungsvektorkoeffizienten dadurch zu erzeugen, dass für einen Gewichtungsvektorkoeffizienten ein p-Bit Wort erzeugt wird und dass vor, oder nach dem binären p-Bit Wort oder vor und nach dem binären p-Bit Wort "Nullen" addiert werden, damit der Vektorkoeffizienten erhalten wird. Dadurch sind eine ausreichende Anzahl Koeffizienten verfügbar zum Durchführen der Codierung. Weiterhin, wenn die Gewichtungsvektorkoeffizientenerzeugungsmittel dazu vorgesehen sind, ein p-Bit Wort für jeden der n Gewichtungskoeffizienten zu erzeugen und wenn diese n p-Bit Wörter in den Gewichtungsvektorkoeffizientenerzeugungsmitteln gespeichert werden, bedeutet dies, dass nun eine Speicherkapaziät von n.p-Speicherstellen erforderlich ist, da die "Nullen", die vor und/oder nach dem p-Bit Wort addiert werden sollen, damit der Gewichtungsvektor erhalten wird, nicht gespeichert zu werden brauchen.
  • In einer Ausführungsform der Erfindung zum Erzeugen einer Sequenz von Kanalwörtern mit dem starken Punkt, dass höchstens k aufeinanderfolgende "Nullen" zwischen aufeinanderfolgenden "Einsen" in der Sequenz auftreten, wobei die Kanalwörter weiterhin die Anforderung erfüllen, dass höchstens r aufeinanderfolgende "Nullen" an ein und demselben Ende der Kanalwörter auftreten, entsprechen die Gewichtungskoeffizienten wi der nachfolgenden Gleichung:
  • wobei wj = 0 für j ≤ 0, und wobei FLOOR eines Wertes dem größten Ganzzahlwert entspricht, der kleiner ist als der genannte Wert, und wobei r kleiner ist als k. Dadurch ist die erzeugung einer Sequenz von Kanalsignalen möglich, die der k-Bedingung erfüllt, sogar nach Verkettung aufeinanderfolgender Kanalwörter. Durch Spezifizierung des Wertes für r, wobei r kleiner ist als k, wird automatisch erfüllt, dass Kanalwörter erhalten werden, die höchstens 1 "Nullen" an dem einen Ende des Kanalwortes haben, insbesondere an dem Anstiegsende, des kanalwortes und höchstens r "Nullen" an dem anderen Ende, insbesondere dem Abfallende der Kanalwörter, wobei 1 + r = k ist.
  • Das Codierungsverfahren ist besonders nützlich für Codierungen mit einer hohen Rate, wie in dem 196- zu 197-Konversionscode.
  • Ausführungsbeispiele der Erfindung sind in der Zeichnung dargestellt und werden im Folgenden näher beschrieben. Es zeigen:
  • Fig. 1 eine Darstellung einer Codierungsanordnung,
  • Fig. 2 eine Ausführungsform des Gewichtungskoeffizientengenerators in der Codierungsanordnung nach Fig. 1 und
  • Fig. 3 eine Ausführungsform einer Decodierungsanordnung.
  • Die Beschreibung und Erläuterung der Codierungs- und Decodierungsanordnung nach der vorliegenden Erfindung startet mit einer Erläuterung des Kautz- Codierungs- und -Decodierungsverfahrens. Die Tafel 1 zeigt ein Beispiel einer 4-zu- 5-Codierung zur Erläuterung des Vorgangs.
  • Die Tafel zeigt eine Codierung/Decodierung von 4-Bit Informationswörtern in 5-Bit Kanalwörter, Die resultierenden Kanalwörter erfüllen die k = 2 Bedingung, dass es höchstens zwei aufeinanderfolgende "Nullen" zwischen "Einsen" gibt. Die linke Spalte bezeichnet die Dezimaldarstellung des Informationswortes und die mittlere Spalte ist die binäre Darstellung der Informationswörter. Die rechte Spalte zeigt die entsprechenden Kanalwörter. Die Kanalwörter starten und enden mit höchsten einem "Null", so dass die k-Bedingung ebenfalls erfüllt wird, wenn aufeinanderfolgende Kanalwörter miteinander verkettet werden.
  • Der Decodierungsvorgang ist nun wie folgt. Es soll der Gewichtungsvektor {w} definiert werden, beispielsweise als {11,6,3,2,1}. Der Gewichtungsvektor ist in der Form einer Anzahl von (fünf) Gewichtungskoeffizienten wj, wobei i von 1 bis 5 läuft. Die Gewichtungskoeffizienten werden der Deutlichkeit halber in dezimaler Notierung ausgedrückt, es dürfte aber einleuchten, dass im Wesentlichen die Gewichtungskoeffizienten in einer binären 4-Bit Form sind.
  • Die Decodierungsanordnung bildet das innere Produkt.
  • I = xj · wi
  • wobei xi das i. Bit des invertierten Kanalwortes ist und I das Informationswort ist, das aus der Berechnung erhalten worden ist. Es kann geprüft werden, dass für jedes Kanalwort in der Tafel das auf diese Weise gebildete innere Produkt der Ganzzahldarstellung I des Informationswortes entspricht, das dem Kanalwort zugeordnet ist, wie in der Tafel definiert. So wird beispielsweise das Kanalwort "01010" als 1.11 + 0.6 + 1.3 + 0.2 + 1.1 = 15 decodiert, was zu dem Informationswort "1111" führt. Aus diesem Beispiel dürfte es einleuchten, dass das innere Produkt zu einfachen Addierungen vereinfacht wird.
  • Der Codierungsprozess übersetzt auf die nachfolgende Art und Weise die Informationswörter in die Kanalwörter. Unter Verwendung eines Informationswortes wird eine Berechnung durchgeführt zum Erhalten eines Kanalwortes, wobei diese Berechnung auf den nachfolgenden Verfahrensschritten beruht:
  • (a) setze einen laufenden Parameter j gleich n,
  • (b) bestimme, ob der Wert des Informationswortes größer ist als der Gewichtungsvektorkoeffizient wj oder diesem Koeffizienten entspricht, wenn ja, setze den Binärwert in der Bitposition j des Kanalwortes auf "Null" und subtrahiere den Wert des Gewichtungskoeffizienten wj von dem Wert des Informationswortes, damit ein neuer Wert für das Informationswort erhalten wird, und wenn nicht, setze den genannten Binärwert auf "Null",
  • (c) wiederhole den Schritt (b) n-1mal für jeden nächst niedrigeren Wert für j, wobei wn der Gewichtungsvektorkoeffizient ist mit dem größten Wert und wobei Gewichtungsvektorkoeffizienten mit einem nächst niedrigeren Koeffizienten einen kleineren Wert haben.
  • Nach Kautz können die Gewichtungskoeffizienten wi unter Anwendung der nachfolgenden Formel erhalten werden:
  • Wie oben bereits erläutert, erfordert die Kautz-Methode einen Gewichtungsvektor, dessen Binärwert der Gewichtungskoeffizienten in n-1-Bits ausgedrückt werden, so dass, im Falle von hohen Werten für n ein Speicher großer Speicherkapazität erforderlich ist.
  • Nach der vorliegenden Erfindung werden die Gewichtungskoeffizienten wi derart gewählt, dass sie unter Anwendung von p-Bit Binärwörtern ausgedrückt werden können, wobei p kleiner ist als n-1, und wobei "Nullen" vor oder nach oder aber vor und nach dem p-Bit Binärwort hinzuaddiert werden sollen zum Erhalten des (n-1)-Bit Gewichtungsvektorkoeffizientenwortes.
  • Die Gewichtungskoeffizienten wi können erhalten werden unter Anwendung der nachfolgenden Gleichung:
  • wobei wj = 0 ist für j ≤ 0 und Wobei FLOOR eines Wertes dem größten ganzzahligen Wert entspricht, der kleiner ist als der genannte Wert.
  • Unter Verwendung dieser Gewichtungsvektorkoeffizienten werden Kanalwörter erhalten, wobei höchstens r aufeinanderfolgende "Nullen" an ein und demselben Ende auftreten, insbesondere an dem hinteren Ende der Kanalwörter. Das hintere Ende der Kanalwörter wird als dasjenige Ende bezeichnet, an dem die am wenigsten signifikanten Bits des Kanalwortes positioniert sind. Dies wird verwirklicht durch Beschränkung der Anzahl Koeffizienten wi, die gleich 2i-1 sind, auf r+1 Koeffizienten. Dadurch wird eine Verkettung aufeinanderfolgender Kanalwörter nicht zu einer Verletzung der k-Bedingung führen, da jedes erzeugte n-Bit Kanalwort höchstens k-r "Nullen" an dem vorderen Ende des Kanalwortes hat. Aus der ersten Formel 2i-' dürfte es einleuchten, dass die Gewichtungskoeffizienten wi nur ein einzigen "Eins"-Bit an einer bestimmten Bitposition in dem Gewichtungskoeffizienten haben, während die übrigen Bits des Gewichtungskoeffizienten alle "Nullen" sind
  • Die anderen Gewichtungskoeffizienten werden mit der zweiten und dritten Formel erhalten, welche die FLOOR-Funktion enthalten. Die zweite Formel definiert die Gewichtungskoeffizienten wr+2 zu wp und die dritte Formel definiert die Gewichtungskoeffizienten wp+1 zu wn.
  • Aus der zweiten Formel dürfte es einleuchten dass jeder nachfolgende Koeffizient wi durch Summierung der k vorhergehenden Koeffizienten Wi-1-k erhalten wird, wobei diejenigen vorhergehenden Koeffizienten wi mit einer Indexzahl kleiner als Null oder gleich Null auf Null gesetzt werden. Dadurch werden Gewichtungskoeffizienten erhalten mit einer Sequenz von r+1 "Einsen" in r+1 benachbarten Bitstellen in dem Gewichtungskoeffizienten, während die übrigen Bits des Gewichtungskoeffizienten alle "Null" sind.
  • Es dürfte weiterhin einleuchten, dass zum Herleiten von wi unter Anwendung der dritten Formel, einschließlich der Floor-Funktion, der Summenterm in der Floor-Funktion von der Größenordnung von 2i-1 ist. Das Teilen des Summenterms durch 2i-1-p wird auf diese Art und Weise zu einem Wert führen, der von der Größenordnung von 2p ist. Dieser Wert kann auf diese Weise in b Bits ausgedrückt werden. Wenn der Floor genommen und wieder mit 2i-1-p multipliziert wird, wird dies zu Gewichtungskoeffizienten führen, die unter Verwendung von p Bit Wörtern und unter Addierung von "Nullen" vor, oder nach, oder aber vor und nach den p-Bit Wörtern ausgedrückt werden.
  • Wenn p dem Wert k+2 entspricht, ändern sich die obenstehenden Gleichungen für die Gewichtungskoeffizienten wi zu:
  • In einem 196-zu-197-Codierungsverfahren, wobei die Sequenz der erhaltenen Kanalwörter die Anforderungen k = 7 und r = 4 erfüllen, die Gewichtungskoeffizienten wi die nachfolgende Gleichung erfüllen:
  • Dadurch sind die Werte für wi wie folgt: TAFEL 2
  • Die Gewichtungsvektorkoeffizienten wi in der Tafel 2 sind in der Form von 196 Bits breiten binären Zahlen.
  • Es sei bemerkt, dass jeder wi durch Erzeugung eines maximal 9-Bit Binärwortes und Addierung von "Nullen" vor oder nach, oder vor und nach dem 9-Bit Binärwort erhalten werden kann. Der Grund ist, dass die Gewichtungskoeffizienten w&sub1;&sub0; bis w&sub1;&sub9;&sub7; einen Term (505-i) enthalten, der dem Dezimalwert zwischen 495 und 308 entspricht. Solche Dezimalwerte können durch einen Binärwert von 9 Bits dargestellt werden, wie in der Tafel 2, in der rechten Spalte ersichtlich ist.
  • Aus der Tafel 2 dürfte es einleuchten, dass die Gewichtungskoeffizienten w&sub1; bis w&sub5; ebenfalls erhalten werden können durch Erzeugung von 5-Bit Binärwerten "00001" bis "10000" und durch Addierung von 191 "Nullen" vor diesen 5-Bit Binärwerten, damit die 196-Bit breiten Gewichtungskoeffizienten erhalten werden. Es ist sogar möglich, eine i-Bit Binärzahl zu erzeugen, wobei i gleich 1 bis 5 ist, mit einem "1"-Bit als das signifikanteste Bit und mit "Null"-Bits für die (etwaigen) weniger signifikanten Bits.
  • Die Gewichtungskoeffizienten w&sub6; bis w&sub9; können durch erzeugung der Dezimalzahl "31" erhalten werden, die das S-Bit Binärwort "11111 "ist und durch Addierung von 191 "Nullen" vor diesem Wort für i = 6, durch Addierung von 190 "Nullen" vor und von nur einer "Null" nach dem Wort für i = 7, durch Addierung von 189 "Nullen" vor und von zwei "Nullen" nach dem Wort für i = 8 und durch Addierung von 188 "Nullen" vor und drei nach dem Wort für i = 9.
  • Die Gewichtungskoeffizienten w&sub1;&sub0; bis w&sub1;&sub9;&sub7; werden erhalten durch Erzeugung des 9-Bit Binärwortes entsprechend dem Dezimalwort "505-i", wie oben erläutert, und durch Addierung von 197-i "Nullen" vor und i-10 "Nullen" nach dem 9- Bit Binärwort.
  • Fig. 1 zeigt eine Ausführungsform einer Codierungsanordnung zum Codieren von (n-1)-Bit Informationswörtern in n-Bit Kanalwörter. Die Ausführungsform nach Fig. 1 umfasst eine Eingangsklemme 1 zum Empfangen einer Sequenz von (n-1)- Bit Informationswörtern, eine Wandlereinheit 2 zum Umwandeln der (n-1)-Bit Informationswörter in die n-Bit Kanalwörter, und eine Ausgangsklemme 3 zum Liefern einer Sequenz von n-Bit Kanalwörtern. Die Wandlereinheit 2 umfasst eine Recheneinheit 5 und einen Gewichtungskoeffizientengenerator 7. Der Gewichtungskoeffizientengenerator 7 erzeugt die Gewichtungskoeffizienten wi an einem Ausgang 11 in Reaktion auf einen Wert i, der einem Eingang 9 geliefert wird, wobei i von 1 bis n läuft. Der Wert i wird ebenfalls intern in der Anordnung erzeugt.
  • Die Umwandlung eines Informationswortes in ein entsprechendes Kanalwort unter Anwendung der n Gewichtungsvektoren wi ist oben erläutert worden und ist weiterhin im Stand der Technik durchaus bekannt, so dass auf eine weitere Beschreibung verzichtet werden kann. Die Erzeugung der Gewichtungskoeffizienten wird weiterhin anhand der Fig. 2 näher erläutert, wobei eine weitere Ausführungsform des Gewichtungskoeffizientengenerators 7 beschrieben wird.
  • Der Generator 7 in Fig. 2 umfasst einen Speicher 15 mit einer Speicherkapazität zum Speichern n p-Bit Binärwörter. In dem Beispiel der Tafel 2 kann dieser Speicher 197 9-Bit Wörter gespeichert haben. In Reaktion auf den Wert i, der einem Adresseneingang 17 zugeführt wird, liefert der Speicher 15 ein p-Bit Binärwort zu dem p-Bit Ausgang 19. Die p-Bit Binärwörter werden einem p-Bit Eingang 20 eines Multiplexers 22 geliefert, der einen (n-1)-Bit Ausgang 26 hat. In Reaktion auf den Wert i, der einem Eingang 24 geliefert wird, multiplext der Multiplexer 22 das p-Bit Binärwort zu p benachbarten Ausgangsklemmen 26.q bis 26.p+q und verbindet die Ausgangsklemmen 26.1 bis 29.q und 26.p+q+1 bis 26.n-1 mit einer (nicht dargestellten) "Null" Wertklemme.
  • In der Ausführungsform der Koeffizienten der Tafel 2 würde es ausreichen, wenn man eine "Eins"-Klemme hat zum Verbinden mit der Klemme 26.i in dem Fall, wo i von 1 bis 5 läuft, wenn das Binärwort (111111) in dem Speicher 15 gespeichert ist und die fünf Ausgangsklemmen des Ausgang 19 des Speichers 15 verbunden sind, an denen das Wort (111111) verfügbar ist, mit den Klemmen 26.i-5 bis 26.i-1 für i laufend von 6 bis 9, und wenn 188 9-Bit Wörter in dem Speicher 15 gespeichert und diese 9-Bit Wörter über den Multiplexer 22 den Ausgangsklemmen 26.i-9 bis 26.i-1 zugeführt werden, für i laufend von 10 bis 197.
  • Fig. 3 zeigt eine Ausführungsform einer Decodieranordnung zum Decodieren von n-Bit Kanalwörtern in (n-1)-Bit Informationswörter. Die Ausführungsform nach Fig. 3 umfasst eine Eingangsklemme 30 zum Empfangen einer Sequenz von n-Bit Kanalwörtern, eine Wandlereinheit 32 zum Umwandeln der n-Bit Kanalwörter in die (n-1)-Bit Informationswörter, und eine Ausgangsklemme 33 zum Liefern einer Sequenz von (n-1)-Bit Informationswörtern. Die Wandlereinheit 32 umfasst eine Berechnungseinheit 35 und einen Gewichtungskoeffizientengenerator 7. Der Gewichtungskoeffizientengenerator 7 erzeugt die Gewichtungskoeffizienten wi an einem Ausgang 11 in Reaktion auf einen zu einem Eingang 9 gelieferten Wert i, wobei i von 1 bis n läuft. Der Wert i wird ebenfalls intern in der Anordnung erzeugt. Der Gewichtungskoeffizientengenerator 7 kann dem Gewichtungskoeffizientengenerator in der Codieranordnung nach Fig. 2 entsprechen, so dass dieser in Reaktion auf den zu dem Eingang 9 gelieferten Wert i dieselben Koeffizienten wi erzeugt.
  • Die Umwandlung eines Kanalwortes in eine entsprechende Information unter Anwendung der n Gewichtungsvektoren wi wurde oben näher erläutert und aus dem Stand der Technik durchaus bekannt, so dass auf eine nähere Erläuterung und Beschreibung verzichtet werden kann. Die Erzeugung der Gewichtungskoeffizienten wurde oben bereits erläutert, so dass auf eine weitere Erläuterung und Beschreibung der Gewichtungskoeffizienten verzichtet werden kann.
  • Es sei bemerkt, dass die p-Bit Wörter, erforderlich zum Erzeugen der Gewichtungsvektorkoeffizienten, in einem Speicher gespeichert werden können. Dies ist nicht unbedingt erforderlich. Es kann möglich sein, die p-Bit Wörter unter Anwendung eines Rechenalgorithmus, wie der obenstehenden Formeln, jeweils dann zu erzeugen, wenn ein Vektorkoeffizient wi zum Codieren oder Decodieren gebraucht wird.

Claims (12)

1. Codierungsanordnung zum Codieren einer Sequenz von (n-1)-Bit Informationswörtern in eine Sequenz von n-Bit Kanalwörtern, wobei diese Codierungsanordnung die nachfolgenden Elemente aufweist:
- Eingangsmittel (1) zum Empfangen der Informationswörter,
- Umwandlungsmittel (2) zum Umwandeln der (n-1)-Bit Informationswörter in n-Bit Kanalwörter,
- Ausgangsmittel (3) zum Liefern der Kanalwörter, wobei die Umwandlungsmittel (2) die nachfolgenden Elemente aufweisen:
- Gewichtungsvektorkoeffizientenlieferungsmittel (7) zum Liefern eines Gewichtungsvektors w, wobei der Gewichtungsvektor n Gewichtungsvektorkoeffizienten wi aufweist, wobei i eine ganze Zahl zwischen 1 und n ist, und wobei die Gewichtungsvektorkoeffizienten in Form von (n-1)-Bit Binärwörtern sind,
- Berechnungsmittel (5) zum durchführen einer Berechnung unter Verwendung eines Informationswortes zum Erhalten eines Kanalwortes, wobei diese Berechnung aus den nachfolgenden Berechnungsschritten besteht:
(a) setze einen laufenden Paramater j gleich n,
(b) bestimme, ob der Wert des Informationswortes größer ist als der Gewichtungsvektorkoeffizient wj oder diesem Koeffizienten entspricht, und wenn ja, setze den Binärwert an der Bitstelle j des Kanalwortes auf "Null" und subtrahiere den Wert des Gewichtungskoeffizienten wj von dem Wert des Informationswortes, zum Erhalten eines neuen Wertes für das Informationswort, und wenn nicht, setze den genannten Binärwert auf "Eins",
(c) wiederhole den Schritt (b) n-1mal für jeden nächst niedrigen Wert für j, wobei wn der Gewichtungsvektorkoeffizient mit dem größten Wert ist und wobei Gewichtungsvektorkoeffizienten mit einem nächst niedrigeren Koeffizienten j einen geringen Wert haben,
dadurch gekennzeichnet, dass die Gewichtungsvektorkoeffizientenlieferungsmittel (7) dazu vorgesehen sind, p Bits eines Gewichtungsvektorkoeffizienten wi zu liefern (15), wobei die restlichen n-1-p Bits des (n-1)-Bit Gewichtungsvektorkoeffizientenwortes "Nullen" sind, die addiert werden sollen (20), und zwar vor oder nach dem p-Bit Binärwort, oder aber vor und nach dem p-Bit Binärwort, zum Erhalten des genannten Gewichtungsvektorkoeffizienten, und dass p eine ganze Zahl größer als Eins und kleiner als n-1 ist.
2. Codierungsanordnung nach Anspruch 1, dadurch gekennzeichnet, dass zum Erzeugen einer Sequenz von Kanalwörtern mit dem starken Punkt, dass zwischen aufeinanderfolgenden "Einsen" in der Sequenz höchstens k aufeinanderfolgende "Nullen" auftreten, wobei die Kanalwörter weiterhin die Anforderung erfüllen, dass höchstens r aufeinanderfolgende "Nullen" an ein und demselben Ende der Kanalwörter auftreten, wobei die Gewichtungskoeffizienten wi die nachfolgende Gleichung erfülllen:
wobei wj = 0 ist für j ≤ 0, und wobei FLOOR eines Wertes dem größten ganzzahligen Wert entspricht, der kleiner ist als der genannte Wert, und wobei r kleiner ist als k.
3. Codieranordnung nach Anspruch 2, dadurch gekennzeichnet, dass p = k+2 und dass die Gewichtungskoeffizienten wi die nachfolgende Gleichung erfüllen:
4. Codieranordnung nach Anspruch 3, dadurch gekennzeichnet, dass n = 197, k = 7 und r = 4, und dass die Gewichtungskoeffizienten wi die nachfolgende Gleichung erfüllen:
5. Codieranordnung nach Anspruch 2, dadurch gekennzeichnet, dass die Kanalwörter die Anforderung erfüllen, dass höchsten r aufeinanderfolgende "Nullen" an dem hinteren Ende der Kanalwörter auftreten.
6. Decodieranordnung zum Decodieren einer Sequenz von n-Bit Kanalwörtern in eine Sequenz von (n-1)-Bit Informationswörter, wobei die Decodieranordnung die nachfolgenden Elemente aufweist:
- Eingangsmittel (30) zum Empfangen der Kanalwörter,
- Umwandlungsmittel (32) zum Umwandeln der n-Bit Kanalwörter in (n-1)-Bit Informationswörter,
- Ausgangsmittel (33) zum Liefern der Informationswörter,
wobei die Umwandlungsmittel (32) die nachfolgenden Elemente aufweisen:
- Invertierungsmittel zum Invertieren der Kanalwörter zum Erhalten invertierter Kanalwörter,
- Gewichtungsvektorlieferungsmittel (7) zum Liefern eines Gewichtungsvektors w, wobei dieser Gewichtungsvektor n Gewichtungsvektorkoeffizienten wi hat, wobei i eine ganze Zahl zwischen 1 und n ist, wobei jeder Gewichtungsvektorkoeffizient wi als Binärwort dargestellt wird,
- Berechnungsmittel (35) zum Durchführen einer Berechnung unter Anwendung eines invertierten Kanalwortes zum Erhalten eines Informationswortes, wobei diese Berechnung auf der Berechnung eines inneren Produktes beruht:
I = xi · wi
wobei xi das i. Bit in dem invertierten Kanalwort ist und I das Informationswort ist, das aus der Berechnung erhalten worden ist, und wobei n und p ganzzahlige Konstanten sind,
dadurch gekennzeichnet, dass die Gewichtungsvektorkoeffizientenlieferungsmittel (7) dazu vorgesehen sind, p Bits eines Gewichtungsvektorkoeffizienten wi zu liefern, wobei die restlichen Bits des Gewichtungsvektorkoeffizientenwortes "Nullen" sind, die vor oder nach, oder vor und nach dem p-Bit Binärwort hinzuaddiert werden sollen und dass P eine ganze Zahl größer als Eins und kleiner als n-1 ist.
7. Decodieranordnung nach Anspruch 6, wobei die Sequenz von Kanalwörtern den Vorteil hat, dass wenigstens k aufeinanderfolgende "Nullen" zwischen aufeinanderfolgenden "Einsen" in der Sequenz auftreten, wobei die Kanalwörter weiterhin die Anforderung erfüllen, dass höchstens r aufeinanderfolgende "Nullen" an ein und demselben Ende der Kanalwörter auftreten, dadurch gekennzeichnet, dass die Gewichtungskoeffizienten wi die nachfolgende Gleichung erfüllen:
wobei wj = 0 ist für j ≤ 0, und wobei der FLOOR eines Wertes dem größten ganzzahligen Wert entspricht, der kleiner ist als der genannte Wert, und wobei r kleiner ist als k.
8. Decodieranordnung nach Anspruch 7, dadurch gekennzeichnet, dass p = k+2 und dass die Gewichtungskoeffizienten wi die nachfolgende Gleichung erfüllen:
9. Decodieranordnung nach Anspruch 8, dadurch gekennzeichnet, dass n = 197, k = 7 und r = 4, und dass die Gewichtungskoeffizienten wi die nachfolgende Gleichung erfüllen:
10. Decodieranordnung nach Anspruch 7, dadurch gekennzeichnet, dass die Kanalwörter die Anforderung erfüllen, dass höchstens r aufeinanderfolgende "Nullen" an dem hinteren Ende der Kanalwörter auftreten.
11. Codierungsverfahren zum Codieren einer Sequenz von (n-1)-Bit Informationswörtern in eine Folge von n-Bit Kanalwörtern, wobei das Codierungsverfahren die nachfolgenden Verfahrensschritte umfasst:
- das Empfangen (1) der Informationswörter;
- das Umwandeln (2) der (n-1)-Bit Informationswörter in n-Bit Kanalwörter;
- das Liefern (3) der Kanalwörter;
wobei der Umwandlungsschritt (2) die nachfolgenden Schritte umfasst:
- das Liefern (7) eines Gewichtungsvektors w, wobei der Gewichtungsvektor n Gewichtungsvektorkoeffizienten wi aufweist, wobei i eine ganze zahl zwischen 1 und n ist, und wobei die Gewichtungsvektorkoeffizienten in Form von (n-1)-Bit Binärwörtern ist; und
- das Durchführen einer Berechnung (5) unter Verwendung eines Informationswortes zum Erhalten eines Kanalwortes, wobei diese Berechnung auf den nachfolgenden Schritte beruht:
(a) setze einen laufenden Parameter j gleich n,
(b) bestimme, ob der Wert des Informationswortes größer ist als der Gewichtungsvektorkoeffizient wj oder diesem Koeffizienten entspricht, wenn ja, setze den Binärwert in der Bitposition j des Kanalwortes auf "Null" und subtrahiere den Wert des Gewichtungskoeffizienten wj von dem Wert des Informationswortes, damit ein neuer Wert für das Informationswort erhalten wird, und wenn nicht, setze den genannten Binärwert auf "Null",
(c) wiederhole den Schritt (b) n-1mal für jeden nächst niedrigeren Wert für j, wobei wn der Gewichtungsvektorkoeffizient ist mit dem größten Wert und wobei Gewichtungsvektorkoeffizienten mit einem nächst niedrigeren Koeffizienten einen kleineren Wert haben,
dadurch gekennzeichnet, dass das Codierungsverfahren die nachfolgenden Verfahrensschritte umfasst:
- das Liefern (15) von p Bits eines Gewichtungsvektorkoeffizienten wi, wobei die restlichen n-1-p Bits des (n-1)-Bit Gewichtungsvektorkoeffizientenwortes "Nullen" sind, die (20) vor oder nach dem p-Bit Binnärwort, oder vor und nach dem b-Bit Binärwort hinzuaddiert werden sollen, damit der genannten Gewichtungsvektorkoeffizient erhalten wird und dass p eine ganze Zahl größer als Eins und kleiner als n-1 ist.
12. Decodierverfahren zum Decodieren einer Sequenz von n-Bit Kanalwörtern in eine Sequenz von (n-1)-Bit Informationswörtern, wobei das Decodierverfahren die nachfolgenden Schritte umfasst:
- das Empfangen (30) der Kanalwörter;
- das Umwandeln (32) der n-1Bit Kanalwörter in (n-1)-Bit Informationswörter;
- das Liefern (33) der Informationswörter;
wobei der Umwandlungsschritt (32) die nachfolgenden Schritte aufweist:
- das Invertieren der Kanalwörter zum Erhalten invertierter Kanalwörter;
- das Liefern (7) eines Gewichtungsvektors w, wobei der Gewichtungsvektor n Gewichtungsvektorkoeffizienten wi aufweist, wobei i eine ganze Zahl zwischen 1 und n ist, wobei jeder Gewichtungsvektorkoeffizient wi als Binärword dargestellt wird; und
- das Durchführen einer Berechnung (35) unter Verwendung eines invertierten Kanalwortes zum Erhalten eines Informationswortes, wobei diese Berechnung auf der Berechnung eines inneren Produktes basiert:
I = xi · wi
wobei xi das i. Bit in dem invertierten Kanalwort ist und I das aus der Berechnung erhaltene Informationswort ist und wobei n und p ganzzahlige Konstanten sind, dadurch gekennzeichnet, dass das Decodierverfahren die nachfolgenden Verfahrensschritte umfasst:
- das Liefern (7) von p Bits eines Gewichtungsvektorkoeffizienten wi, wobei die restlichen Bits des Gewichtungsvekitorkoeffizientenwortes "Nullen" sind, die vor oder nach dem p-Bit Binärwort oder vor und nach dem p-bit Binärwort hinzuaddiert werden sollen, und dass p eine ganze Zahl größer als Eins und kleiner als n-1 ist.
DE69613181T 1995-02-03 1996-01-19 Anordnung zum kodieren einer sequenz von (n-1)-bit informationswörtern in eine sequenz von n-bit kanalwörtern sowie dekodieranordnung zum dekodieren einer sequenz von n-bit kanalwörtern in eine sequenz von (n-1)-bit informationswörtern Expired - Fee Related DE69613181T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP95200261 1995-02-03
PCT/IB1996/000045 WO1996024194A1 (en) 1995-02-03 1996-01-19 Encoding arrangement for encoding a sequence of (n-1)-bit information words into a sequence of n-bit channel words, and a decoding arrangement for decoding a sequence of n-bit channel words into a sequence of (n-1) bit information words

Publications (2)

Publication Number Publication Date
DE69613181D1 DE69613181D1 (de) 2001-07-12
DE69613181T2 true DE69613181T2 (de) 2002-01-31

Family

ID=8219991

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69613181T Expired - Fee Related DE69613181T2 (de) 1995-02-03 1996-01-19 Anordnung zum kodieren einer sequenz von (n-1)-bit informationswörtern in eine sequenz von n-bit kanalwörtern sowie dekodieranordnung zum dekodieren einer sequenz von n-bit kanalwörtern in eine sequenz von (n-1)-bit informationswörtern

Country Status (9)

Country Link
US (1) US5760718A (de)
EP (1) EP0754373B1 (de)
JP (1) JP3425152B2 (de)
KR (1) KR100434207B1 (de)
CN (1) CN1110903C (de)
AT (1) ATE201943T1 (de)
DE (1) DE69613181T2 (de)
TW (1) TW290764B (de)
WO (1) WO1996024194A1 (de)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5943368A (en) * 1996-07-08 1999-08-24 U.S. Philips Corporation Transmission, recording and reproduction of a digital information signal
JP3235543B2 (ja) * 1997-10-22 2001-12-04 松下電器産業株式会社 音声符号化/復号化装置
DE69840008D1 (de) * 1997-10-22 2008-10-23 Matsushita Electric Industrial Co Ltd Verfahren und Vorrichtung für die Erzeugung von gestreuten Vektoren
US6700509B1 (en) * 1999-11-12 2004-03-02 Koninklijke Philips Electronics N.V. Device and method for processing a digital information signal
US6574773B1 (en) * 2000-03-09 2003-06-03 Stephen A. Turk Cost-effective high-throughput enumerative ENDEC employing a plurality of segmented compare tables
KR100879942B1 (ko) * 2002-02-16 2009-01-22 엘지전자 주식회사 채널품질지시자 코딩을 위한 기저수열 생성방법
US7030789B1 (en) 2004-12-01 2006-04-18 Hitachi Global Storage Technologies Netherlands B.V. Techniques for applying modulation constraints to data using periodically changing symbol mappings
US7071851B1 (en) 2005-01-31 2006-07-04 Hitachi Global Storage Technologies Netherlands B.V. Techniques for implementing non-uniform constraints in modulation encoded data
US7064687B1 (en) 2005-01-31 2006-06-20 Hitachi Global Storage Technologies Netherlands B.V. Techniques for modulating data using short block encoders
US7142134B2 (en) * 2005-02-01 2006-11-28 Hitachi Global Storage Technologies Netherlands B.V. Techniques for generating modulation codes using running substitutions
US7126502B2 (en) * 2005-02-01 2006-10-24 Hitachi Global Storage Technologies Netherlands B.V. Techniques for using interleaved encoders to obtain modulation constraints
US7696908B2 (en) * 2006-01-04 2010-04-13 Hitachi Global Storage Technologies Netherlands, B.V. Techniques for reducing error propagation using modulation codes having a variable span
TW200945797A (en) * 2007-11-07 2009-11-01 Ibm Modulation coding and decoding
CN101431335B (zh) * 2007-11-07 2011-11-16 国际商业机器公司 用于调制编码和解码的方法、装置和系统
US7616134B1 (en) 2008-06-19 2009-11-10 International Business Machines Corporation Systems and methods for enumerative encoding and decoding of maximum-transition-run codes and PRML (G,I,M) codes

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SU662933A1 (ru) * 1976-07-19 1979-05-15 Таганрогский радиотехнический институт им. В.Д.Калмыкова Преобразователь кодов
SU732864A1 (ru) * 1976-12-22 1980-05-05 Таганрогский радиотехнический институт им.В.Д.Калмыкова Сумматор кодов фибоначчи
US4818969A (en) * 1984-08-09 1989-04-04 Kronos, Inc. Method of fixed-length binary encoding and decoding and apparatus for same
DE3650166D1 (de) * 1986-02-13 1995-01-19 Kronos Inc Vorrichtung zur binären Festlängen-Kodierung und Dekodierung.
US4792793A (en) * 1987-05-28 1988-12-20 Amdahl Corporation Converting numbers between binary and another base
US4989211A (en) * 1988-05-12 1991-01-29 Digital Equipment Corporation Sector mis-synchronization detection method

Also Published As

Publication number Publication date
TW290764B (de) 1996-11-11
KR970702622A (ko) 1997-05-13
EP0754373B1 (de) 2001-06-06
EP0754373A1 (de) 1997-01-22
US5760718A (en) 1998-06-02
JPH09511375A (ja) 1997-11-11
KR100434207B1 (ko) 2004-11-03
CN1148449A (zh) 1997-04-23
CN1110903C (zh) 2003-06-04
DE69613181D1 (de) 2001-07-12
WO1996024194A1 (en) 1996-08-08
ATE201943T1 (de) 2001-06-15
JP3425152B2 (ja) 2003-07-07

Similar Documents

Publication Publication Date Title
DE69613181T2 (de) Anordnung zum kodieren einer sequenz von (n-1)-bit informationswörtern in eine sequenz von n-bit kanalwörtern sowie dekodieranordnung zum dekodieren einer sequenz von n-bit kanalwörtern in eine sequenz von (n-1)-bit informationswörtern
EP0010195B1 (de) Vorrichtung zur Adressumwandlung in einer Datenverarbeitungsanlage
DE69330196T2 (de) Textkomprimierungstechnik unter Anwendung einer frequenzgeordneten Matrix von Wort-Nummern-Abbildungen
DE69725215T2 (de) Verfahren und Vorrichtung zur Komprimierung und Dekomprimierung von Schrifttypen
DE602004010922T2 (de) Speicher und stromeffizienter mechanismus für schnelles tabellennachschlagen
DE69130868T2 (de) Kommunikationssystem für binärdaten
DE2205422C2 (de) Verfahren und Einrichtung zur Dekompression verdichteter Daten
DE3852341T2 (de) Zeichenverarbeitungssystem mit Funktion zur Prüfung von Rechtschreibung.
DE69026924T2 (de) Datenkomprimierungsverfahren
DE69736148T2 (de) Verfahren und Einrichtung zur Datenverschlüsselung
DE60131247T2 (de) Dezimal-Binär Kodierer/Dekodierer
WO1995026083A1 (de) Verfahren zum codieren mehrerer audiosignale
DE60038333T2 (de) Vier-zu-sechs Kodierungstabelle, Modulation die diese anwendet, aber ohne Vereinigungsbit ,sowie ihre Anwendung für optische Plattenaufzeichnungs- oder Wiedergabesysteme
DE3485824T2 (de) Verfahren zur datenkompression.
DE3503508C2 (de)
DE69527883T2 (de) Decodierung eines Huffman Codes mit MSB und LSB Tabellen
DE19758079A1 (de) Verfahren und Vorrichtung zur Galoisfeld-Multiplikation
DE2614916A1 (de) Konverter zur codeumwandlung
DE69329092T2 (de) Huffman-Kode-Decodierungsschaltung
DE68926676T2 (de) Verfahren und gerät zur statistischen kodierung von digitalen daten
DE3685888T2 (de) Verfahren und vorrichtung fuer binaer-dezimale umsetzung.
DE68923012T2 (de) Kodierungs- und Dekodierungsverfahren variabler Länge, Kodierungs- und Dekodierungsvorrichtung zur Ausführung dieses Verfahrens.
DE69029652T2 (de) Zeichenkodierung
DE1964570B2 (de) Verfahren zum wiederauffinden gespeicherter informationen
DE69027400T2 (de) Gerät zur digitalen Modulation und Gerät zur digitalen Demodulation

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee