DE2711772C3 - Codierer zur Erzeugung einer konvolutional codierten Impulsfolge - Google Patents

Codierer zur Erzeugung einer konvolutional codierten Impulsfolge

Info

Publication number
DE2711772C3
DE2711772C3 DE19772711772 DE2711772A DE2711772C3 DE 2711772 C3 DE2711772 C3 DE 2711772C3 DE 19772711772 DE19772711772 DE 19772711772 DE 2711772 A DE2711772 A DE 2711772A DE 2711772 C3 DE2711772 C3 DE 2711772C3
Authority
DE
Germany
Prior art keywords
bit
information bits
addresses
signal
parity
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
DE19772711772
Other languages
English (en)
Other versions
DE2711772A1 (de
DE2711772B2 (de
Inventor
Holger Dipl.-Ing. 8024 Deisenhofen Buding
Wernhard Dipl.- Ing. 8000 Muenchen Markwitz
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.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Priority to DE19772711772 priority Critical patent/DE2711772C3/de
Publication of DE2711772A1 publication Critical patent/DE2711772A1/de
Publication of DE2711772B2 publication Critical patent/DE2711772B2/de
Application granted granted Critical
Publication of DE2711772C3 publication Critical patent/DE2711772C3/de
Expired 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/0059Convolutional 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/23Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory codes

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)
  • Error Detection And Correction (AREA)

Description

Die Erfindung bezieht sich auf einen Codierer zur Erzeugung einer konvolutional codierten Impulsfolge, die abwechselnd aus je / Informationsbits und je einem Paritätbii gebildet wird, wobei jedem Informationsbit ein Impuls eines Bittaktes zugeordnet ist und in Abhängigkeit von Gruppen mit je π Informationsbits je ein Paritätbit abgeleitet wird, wobei die Informationsbits zeitlich nacheinander von einer Datenquelle abgegeben werden und die η Informationsbits aller Gruppen in vorgegebenen Bitabständen auftreten und wobei zwischen dem ersten und dem letzten Informationsbit einer Gruppe von π Informationsbits insgesamt m Informationsbits auftreten.
ι ο Bekannte Convolutionalcodierer bestehen im wesentlichen aus einem Schieberegister, in das die Informationsbits seriell eingegeben werden. In Abhängigkeit vom gewünschten Convolutionalcode sind mehrere Ausgänge des Schieberegisters an eine Paritätsstufe angeschlossen, über deren Ausgang die gewonnenen Paritätbits abgegeben werden. Unter Verwendung eines Schalters kann ein codiertes Signal erzeugt werden, welches abwechselnd eines der gewonnenen Paritätbits und eines der Infonnationsbits enthält Dabei ist jedes Paritätbit von je einer Gruppe von Informationsbits abhängig, die in verschiedenen Bitabständen auftreten. Dieser bekannte Codierer arbeitet befriedigend für einen vorgegebenen Code. Wenn jedoch die einzelnen Paritätsbiis je von Gruppen von Informationsbits abhängig sein sollen, die in geänderten Bitabständen auftreten, dann ist dies nur mit größerem technischen Aufwand möglich. Der bekannte Codierer arbeitet also dann nicht mehr befriedigend, wenn er auf verschiedene Convolutionalcodes umschaltbar sein soll, bei denen die Informationsbits der Gruppen in verschiedenen Bitabständen auftreten.
Der Erfindung liegt die Aufgabe zugrunde, einen Codierer für einen Convolutionalcode bei bitserieller Datenübertragung anzugeben, bei dem sich die Abhängigkeit der einzelnen Paritätsbits von den Gruppen der Informationsbits in einfacher Weise umstellen läßt.
Die der Erfindung zugrunde liegende Aufgabe wird dadurch gelöst, daß ein Zähler vorgesehen ist, dem die impulse des Bitiaktes als Zähiimpuise zugeführt sind, der periodisch ab einem Anfangszählerstand bis zu einem Endzählerstand w Zählerstände mit w>m+2 annimmt, die Adressen erster Art darstellen, daß ein Adressengeber vorgesehen ist, der pro ζ Bittakte n/z Adressen zweiter Art erzeugt, deren Differenzen den vorgegebenen Bitabständen gleichen, daß ein Summierer vorgesehen ist, der die Adressen erster Art und die Adressen zweiter Art modulo w summiert und als Resultat Adressen dritter Art abgibt, daß ein mit den Adressen dritter Art adressierter Speicher vorgesehen ist, der die Informalionsbits der Datenquelle zeitlich nacheinander in w Zellen speichert und der ein Speichersignal abgibt, das die unter den Adressen dritter Art gespeicherten Informationsbits signalisiert und daß das Speichersignal einer Paritätsstufe zugeführt ist, die die Paritätbits abgibt.
Der erfindungsgemäße Codierer zeichnet sich dadurch aus, daß er in einfacher Weise auf verschiedene Convolutionalcodes einstellbar ist, weil mit Hilfe des Adressengebers die η Adressen zweiter Art derart erzeugt werden können, daß sie den Differenzen der vorgegebenen Bitabstände gleichen. Bei diesen Convolutionalcodes läßt sich also die Abhängigkeit der einzelnen Paritätbits von den Gruppen der Informationsbits in einfacher Weise ändern.
hr; Um die Paritätsstufe mit geringem technischen \ufwand zu realisieren ist es zweckmäßig, daß ein Taktgeber vorgesehen ist, der pro Bittakte n/z Impulse eines weiteren Taktes erzeugt, daß als Paritätsstufe eine
27 Π
bistabile Schaltstufe vorgesehen ist, der das Speichersignal zugeführt ist, die in ihrem jeweiligen stabilen Zustand verbleibt, wenn das Speichersignal einen ersten Binärwen signalisiert und die in den jeweils anderen stabilen Zustand übergeht, wenn das Speichersignal 5 einen zweiten Binärwert signalisiert
Bei einem besonders bewährten Ausführungsbeispiel ist der Adressengeber dadurch gekennzeichnet, daß ein weiterer Zähler vorgesehen ist, dem die Impulse des weiteren Taktes als Zählimpulse zugeführt sind und dessen Zählerstände mit binären Zählsignalen signalisiert werden und daß ein Festwertspeicher vorgesehen ist, der in Abhängigkeit von den binären Zählsignalen die Adressen zweiter Art abgibt Mit diesem Adressengeber können die Adressen zweiter Art in Abhängigkeit von den Coderaten und in Abhängigkeit von den verwendeten Convolutionalcodes in einfacher Weise erzeugt werden.
Im folgenden werden ein Datenübertragungssystem und Ausführungsbeispiele der Erfindung anhand der Fig. ! bis 13 beschrieben, wobei in mehreren Figuren dargestellte gleiche Gegenstände mit gleichen Bezugszeichen bezeichnet sind.
Es zeigt
F i g. 1 ein Datenübertragungssystem für bitserielle Datenübertragung mit Hilfe eines Convolutionalcodes,
F i g. 2 einen Codierer des Standes der Technik,
Fig.3 ein Ausführungsbeispiel eines Codierers in prinzipieller Darstellung,
F i g. 4 einige Signale, die beim Betrieb des in F i g. 3 jo dargestellten Codierers auftreten,
F i g. 5 ein erstes Ausführungsbeispiel einer in F i g. 3 dargestellten Paritätsstufe,
F i g. 6 ein zweites Ausführungsbeispiel einer in F i g. 3 dargestellten Paritätsstufe, j5
F i g. 7 eine schematische Darstellung der Adressierung,
F i g. 8 ein Ausführungsbeispiel eines in F i g. 3 schematisch dargestellten Adressengebers,
F i g. 9 einige Signale, die beim Betrieb des in F i g. 8 dargestellten Adressengebers auftreten,
Fig. 10 ein weiteres Ausführungsbeispiel eines in F i g. 3 schematisch dargestellten Adressengebers, der für eine Coderate 1/2 verwendbar ist,
F i g. 11 ein weiteres Ausführungsbeispiel eines 4-, Codierers für beliebige Coderaten,
F i g. 12 einige Signale und Adressen, die den Betrieb des in F i g. 11 dargestellten Codierers veranschaulichen und
Fig. 13 ein weiteres Ausführungsbeispiel des in F i g. 3 schematisch dargestellten Adressengebers, der für beliebige Coderaten geeignet ist.
Gemäß F i g. 1 gibt die Datenquelle DQ die Daten D 1 an den Codierer CD ab. Den Daten D 1 ist der Takt Tl zugeordnet, der mit Hilfe des Taktgebers TG1 erzeugt wird. Die Signale Dt und Tl sind in Fig.4 oben und das vom Codierer CD erzeugte konvolutional codierte Signal D 2 ist weiter unten dargestellt. Mit Hilfe des Senders und Modulators MOD wird das Signal D 2 in an sich bekannter Weise über die Übertragungsstrecke bo UST übertragen und auf der Empfangsseite im Demodulator DEM demoduliert. Auf die Details des Modulators MOD der Übertragungsstrecke UST und des Demodulators DEM wird nicht eingegangen, weil diese Einrichtungen als bekannt vorausgesetzt werden b5 und prinzipiell mit der vorliegenden Erfindung nicht zu tun haben. Der Demodulator DEM gibt das Signal D 3 an den Decodierer DC ab. der die im Codierer CD bewirkte sendeseitige Codierung ruckgängig macht. Das Signal D 4 gleicht somit weitgehend dem Signal D 1 und wird der Datensenke DSzugeführt.
Fig.2 zeigt im Prinzip einen bekannten Codierer, bestehend aus dem Schieberegister SR, dem bitseriell die Daten D1 zugeführt werden. Insgesamt besitzt das Schieberegister SR die Zellen SO, 51, 52, 53, 54, 55, 56, S7, 58, 59, 510, S U, 512, 513, 514 und 515. Die Daten D1 bestehen aus einer Folge von Informationsbits/0, /1, /2,/3, /4, /5, /6, /7, /8, /9,/10,/11,/12, /13, /14, /15, die der Reihe nach in den Zellen 50 bis 515 gespeichert sind Es wird ferner angenommen, daß die Paritätbits von je π=4 Informationsbits abhängig sind. Im dargestellten Fall ist das Paritätbit P14 von der Gruppe der Informationsbiis /1, /6, /10 und /14 abhängig. Mit Hilfe des Schalters S W wird abwechselnd ein Informationsbit und ein Paritätsbit über den Ausgang des Schalters 5WaIs konvolutional codiertes Signal mit der Coderate 1/2 abgegeben. Die Bitabstände der Informationsbits /1, /6, /10, /14 der Gruppe kennzeichnen die Spreizung des verwendeten Convolutionalcodes. Je größer diese Bitabstände insgesamt sind, desto größer ist auch die entsprechende Spreizung. In der Praxis werden Convolutionalcodes verwendet, deren Spreizung derart groß ist, daß insgesamt 1000 und mehr Zellen des Schieberegisters SÄ erforderlich sind. Änderungen der eingestellten Spreizungen und damit Änderungen des Convolutionalcodes können nur mit relativ großem technischen Aufwand durchgeführt werden, weil im allgemeinen nicht alle Ausgänge der Zellen des Schieberegisters zugriffsbereit sind.
F i g. 3 zeigt ein Ausführungsbeispiel des in F i g. 1 schematisch dargestellten Codierers CD. F i g. 4 zeigt die zugehörigen Signale. In F i g. 4 sind oben Informationsbits / 17, / 18, /19, / 20 des Signals D 1 dargestellt. Es wurde angenommen, daß die einzelnen Impulse des Taktes Tl immer in der Mitte der einzelnen Informationsbits und die einzelnen Impulse des Taktes T3 immer zu Beginn der einzelnen Informationsbits auftreten. Der Zähler ZX erhält die Impulse des Taktes T3 als Zählimpulse. Es handelt sich um einen Binärzähler und es wurde angenommen, daß während der Dauer der Informationsbits /17 der Zählerstand 4 eingestellt ist. Über die vier Ausgangsleitungen des Zählers Z1 wird dieser Zählerstand signalisiert und alle Signale, die über diese Ausgangsleitungen abgegeben werden, bilden insgesamt die Adressen erster Art ADR 1. Während der Dauer der Informationsbits /18, / 19, / 20 wird die Adresse ADR 1 jeweils um 1 erhöht.
Tabelle 1 zeigt etwas ausführlicher die Abhängigkeit der Paritätbits P von den Informationsbits /. Beispielsweise ist das Paritätbit P13 von den Informationsbits /0, /5, /9 und /13 abhängig, wogegen das Paritätbit P14 von den Informationsbits /1, / 6, / 10, / 14 abhängig ist. In der ersten Kolonne sind die Informationsbits /0, /1, /2, /3, /4 und das Informationsbit Ik mit dem allgemeinen Index k eingetragen. In der zweiten Kolonne sind die Informationsbits /5, /6, /7, /8, /9 eingetragen, die alle in einem Bitabstand a = 5 den entsprechenden vorangehenden Informationsbits folgen. In der dritten Kolonne sind die Informationsbits / 9, /10, /11, /12, /13 eingetragen, die in einem Bitabstand i>=4 von den entsprechenden vorangehenden Informationsbits Ik + a folgen. In der dritten Kolonne sind die Informationsbits /13, / 14, / 15, / 16, / 17 eingetragen, die in einem Bitabstand c=4 den entsprechenden vorangehenden Informationsbits Ik + a+b folgen. Wie die Tabelle zeiet. bleiben die Bitabstände a. b. c konstant.
Das Paritätbit Pk+a+b+c ist somit in etwas allgemeinerer Schreibweise von den Informationsbits Ik, Ik+a, Ik+a+b, /fc+a + fc+c abhängig. Dabei bilden die Informationshits /0, /5, /9, /13 eine Gruppe von n=4 Informationsbits, die alle in vorgegebenen Bitabständen auftreten und wobei zwischen dem ersten Informationsbit /0 und dem letzten Informationsbit /13 dieser Gruppe insgesamt m= 12 Informationsbits /1 bis /12 liegen, wie auch die Fig. 7 zeigt. Die Anzahl der verschiedenen Zählerstände des Zählers Z1 ist von der Anzahl m abhängig und die Anzahl der Zählerstände w
Tabelle 1
soll mindestens gleich m+2 sein. Im vorliegenden FaI müßte somit die Anzahl wder Zählerstände mindesten gleich 14 sein. Es ist jedoch zweckmäßig, die Anzahl \ gleich der nächsthöheren Potenz von 2 zu wählen, s< daß der Zähler Zl bei vorliegendem Ausführungsbei spiel periodisch von 0 bis 15 zählt und dann neuerlicl einen Zählzyklus beginnt. Der während der Dauer de Informationsbits /17 eingestellte Zählerstand 4 is willkürlich; es könnte auch irgendein anderer Zähler stand 0 bis 15 sein.
/ /5 /9 /13 P k α b 4
/O /6 /10 /14 pn 0 5 4 Tt-
/1 /7 /11 /15 P\4 1 5 4 4
/2 /8 /12 /16 P\5 2 5 4 4
/3 /9 /13 /17 P16 3 5 4 4
/4 Ik+a /A:+ α+ b Ik+a+b+c /M7 4 5 4 4
Ik rκ + a + b + c K 5 4
Das Taktsignal T 4 besitzt mit π—Λ die vierfache Folgefrequenz des Taktsignals Γ3. Mit Hilfe dieses Taktsignals 7"4 werden während der Dauer aller Informationsbits je vier Zeitbereiche festgelegt, in denen immer wieder die gleichen Adressen zweiter Art ADR 2 mit Hilfe des Adressengebers AC erzeugt werden. Über die Ausgänge des Adressengebers AG werden somit Binärsignale abgegeben, welche die Adressen 0 5, 9 und 13 signalisieren. Die Differenzen dieser Adressen gleichen den Bitabständen, der anhand der Tabelle 1 erläuterten Gruppen. Bei diesem Ausführungsbeispiel hätten auch anstelle der Adressen 0,5,9,13 die Adressen 1,6,10,14 oder 2,7,11,15 erzeugt werden können, weil es nur a-if die Differenzen der einzelnen Adressen ankommt Der Adressengeber AG erzeugt somit pro Bittakt Γ3 n=4 Adressen ADR 2, wobei zu beachten ist, daß diese Adressen mit w=\6 kleiner wie 16 sein sollen und modulo w=\6 erzeugt werden. Es wäre somit gemäß Tabelle 1 auch möglich gewesen, die Adressen 3, 8, 12 und 16 modulo 16 = 0 zu erzeugen.
Der Summierer SUaddiert die Adressen ADR 1 und ADR 2 und gibt als Summen die Adressen ADR 3 ab. Diese Summierung erfolgt modulo ^= 16, weil nur Überträge ab der Stelle 2° bis 23 berücksichtigt werden, aber Überträge ab der Stelle 23 zur Stelle 2* nicht mehr berücksichtigt werden. Beispielsweise summiert der Summierer SUgegen Ende des Informationsbits /17 die Binärzahlen 4 und 13, so daß sich das Resultat 17 modulo 16=1 ergibt. In ähnlicher Weise ergibt sich am Ende des Informationsbits /18 durch Summierung der Werte 5 und 13 die Adresse ADR 3=2.
Das Taktsignal TS liefert der Taktgeber TG 2 zum Betrieb des adressierbaren Speichers RAM. Mit TS= 1 werden die einzelnen Bits des Signals D1 in jene Zellen des Speichers RAM eingelesen, die gerade durch die Adressen A DR 3 adressiert sind. Während der Dauer des Signals T5=0 werden aus den mit ADR 3 adressierten Zellen des Speichers RAM die Bits ausgelesen und als Signal D 5 abgegeben. Beispielsweise wird während der Zeit /1 mit T5=0die mit der Adresse ADR 3=4 adressierte Zelle gelesen und es wird angenommen, daß in dieser Zelle das Informationsbit / A gespeichert ist Das Signal DS enthält somit währenc der Dauer 11 das Informationsbit /4. In ähnlicher Weise werden während der Dauer f2 bzw. i3 jene Zeller gelesen, die mit der Adresse ADR 3 = 9 bzw. ADR 3=1: adressiert sind. Es ergeben sich somit zu dieser Zeitpunkten die Informationsbits /9 bzw. /13 de; Signals D 5. Zum Zeitpunkt /4 wird mit TS = 1 da> Informationsbit /17 in jene Zelle eingelesen, die mit dei Adresse ADR 3 = 1 adressiert ist Im Anschluß darar wird während der Dauer <5 mit 7*5 = 0 die mil ADR 3 = 1 adressierte Zelle gelesen und auf diese Weise wird das Informationsbit /17 als Teil des Signals Dl abgegeben. Der Speicher RAM besitzt somit be vorliegendem Ausführungsbeispiel w=16 Zellen, in die zeitlich nacheinander die einzelnen Informationsbits de; Signals D 1 eingelesen werden. Während der Dauer de: Informationsbits /17 stehen somit in Übereinstimmung mit der Tabelle 1 die Informationsbits /4, /9, /13 unc /17, aus denen mit der in Fig.3 dargestellter Paritätsstufe PSi das Paritätbit PU ermittelt wird. Ir ähnlicher Weise ergeben sich gegen Ende dei Informationsbits /18 bzw. /19 bzw. /20 die Paritätbits
so /'18bzw.P19bzw.f20.
Der Schalter SW wird mit dem Signal T6=0 bzw 7"6=1 in seine 0-Stellung bzw. in seine gestricheli dargestellte 1 -Stellung gebracht Dadurch wird währenc der Zeit f 6 das Informationsbit /17 als Teil des Signal; IP übernommen, wogegen während der Zeit f 15 da; Paritätbit P17 übernommen wird. Die Kippstufe KSl wird mit den negativen Flanken des Taktes 7"7 getaktet so daß ab dem Zeitpunkt / 8 das Informationsbit /17 und ab dem Zeitpunkt f9 das Paritätbit P17 als Teil des Signals D 2 abgegeben wird. Das Signal D 2 besteh! somit abwechselnd aus Informationsbits /17, /18, /19 / 20 und Paritätbits P17, P18, P\ 9.
Fig.5 zeigt ein erstes Ausführungsbeispiel der in F i g. 3 schematisch dargestellten Paritätsstufe PS 1. Die bistabilen Kippstufen KS2, KS3, KS4, KS5 erhalten alle einerseits das Signal DS und andererseits der Reihe nach die Taktsignale TS, T9, TiO und Γ11. Mit den positiven Flanken dieser Taktsignale werden die
27 Π 772
entsprechenden Bits des Signals DS in die Kippstufen übernommen, wo die bis zur nächsten positiven Impulsflanke gespeichert bleiben. Beispielsweise wird zum Zeitpunkt 110 mit der positiven Impulsflanke des Taktsignals 7"8 das Informationsbit /4 in die Kippstufe KS 2 übernommen, so daß es am Ausgang dieser Kippstufe bis zum Zeitpunkt /11 zur Verfügung steht. Zum Zeitpunkt 112 wird das Informationsbit /17 in die Kippstufe KSS übernommen, so daß ab diesem Zeitpunkt die Ausgangssignale der Kippstufen KS 2, KS3, KS4, KSS die Informationsbits /4, /9, /13 und /17 signalisieren. Mit Hilfe der Exklusiv-ODER-Glieder EX1, EX 2, EX3 wird die Parität ermittelt und über den Ausgang der Stufe PS 1/1 wird das Signal /"abgegeben.
Fig. 6 zeigt die Paritätsstufe PS 1/2 als weiteres Alisführungsbeispiel der in Fig.6 dargestellten Paritätsstufe P51. Die bistabile Kippstufe KS6 ist ein sogenanntes /K-Flipflop mit den Eingängen /und K und dem Ausgang Q. Diese Kippstufe KS6 verbleibt in ihrem jeweiligen stabilen Zustand, wenn das Signal DS einen O-Wert signalisiert und geht in den jeweils anderen stabilen Zustand über, wenn das Signal DS einen 1 -Wert signalisiert. Ausgehend vom O-Zustand der Kippstufe KS6 wird somit über den Ausgang Q ein O-Signal bzw. ein 1-Signal abgegeben, wenn eine ungeradzahlige Anzahl bzw. eine geradzahlige Anzahl von 1-Werten der Informationsbits /4, /9, /13, /17 vorliegt. Dabei wird die Parität zeitlich nacheinander gebildet, d. h. also zunächst unter Berücksichtigung der beiden Informationsbits /4 und /9, dann unter Hinzuziehung des Informationsbits /13 und schließlich unter Berücksichtigung des Informationsbits /17. Mit dem Taktsignal TZ erfolgt am Ende der einzelnen Informationsbits die Rückstellung der Kippstufe KS6 über den Rückstelleingang R in ihren O-Zustand. Auf diese Weise werden bei der Paritätsbildung jeweils nur die zu einer Gruppe gehörenden η Informationsbits berücksichtigt.
F i g. 7 zeigt Diagramme, anhand derer die Einspeicherung in den Speicher RAM erläutert wird. Bisher wurde angenommen, daß der in Fig.3 dargestellte Zähler Z1 ab einem vorgegebenen Anfangszählerstand bis zu einem vorgegebenen Endzählerstand aufwärtszählt, so daß auch die Adressen ADR 3 — abgesehen von der Modulobildung — laufend erhöht werden. Später auftretende Informationsbits werden daher in Zellen des Speichers RAM gespeichert die eine höhere Adresse besitzen. Wenn also beispielsweise bei der Paritätsbildung die Gruppe /0, /5, /9, /13 berücksichtigt wird, dann wird bei der nächsten Paritätsbildung die Gruppe /1, /6, /10, /14 berücksichtigt, wobei diese Informationsbits in Zellen höherer Adresse abgespeichert sind. Bei dieser Art der Paritätsbildung wird das früher auftretende Informationsbit /0 in die Zelle 50 eingespeichert und das später auftretende Informationsbit /15 in die Zelle 515. Im Gegensatz dazu ist es auch möglich, das früher auftretende Informationsbit /0 in die Zelle 515 und das später auftretende Informationsbit /15 in die Zelle 50 zu speichern. In diesem Fall zählt der Zähler Zl ab einem vorgegebenen Anfangszählerstand bis zu einem vorgegebenen Endzählerstand nach abwärts. Später eintreffende Informationsbits werden daher — abgesehen von der Modulobildung — in Zellen mit niedrigerer Adresse eingespeichert. Wenn beispielsweise wieder von der Gruppe /0, /5, /9, /13 ausgegangen wird und diese Gruppe in den Zellen 515, 510,56,52 gespeichert ist, dann wird bei der nächsten Paritätsbildung die Gruppe /1, /6, /10, /14 berücksichtigt, die in den Zellen 514, 59, 55, 51 gespeichert ist. Die Adressen dieser Zellen sind somit niedriger als die Adressen der entsprechenden vorhergehenden Zellen. Es ist also im Prinzip gleichgültig, ob später eintreffende Informationsbits in Speicherzellen des Speichers RAM mit sich erhöhenden Adressen ADR 3 eingeschrieben werden und der Zähler Zl nach aufwärts zählt oder ob später eintreffende Informationsbits in Zellen des Speichers RAM eingeschrieben werden, deren Adres-
lü sen ADR 3 laufend kleiner werden und der Zähler Zl nach abwärts zählt. Im allgemeinen ist es zweckmäßig, im Speicher RAM für die Speicherung der Informationsbits Speicherzellen zu reservieren, deren Adressen sich nur um eine 1 unterscheiden. So wurden bei vorliegendem Ausführungsbeispiel die Adressen 0, 1, 2, 3,4... 14,15 vorausgesetzt. Unter dieser Voraussetzung wird auch der Zähler Z1 derart betrieben, daß sich seine aufeinanderfolgenden Zählerstände jeweils um eine 1 unterscheiden. Es wäre aber auch denkbar, daß sich die Adressen des Speichers RAM beispielsweise um jeweils eine 5 unterscheiden und in diesem Fall müßten auch aufeinanderfolgende Zählerstände des Zählers Zlabgesehen von der Modulobildung — um eine 5 größer oder kleiner werden. Prinzipiell kommt es somit nur auf die Differenzen an und es müssen die Differenzen aufeinanderfolgender Zellenadressen gleich den Differenzen aufeinanderfolgender Zählerstände sein. Im Fall der Fig.3 wurden nur 16 verschiedene Adressen ADRi, ADR2, ADR3 und nur 16 "verschiedene Speicherzellen des Speichers RAM vorausgesetzt. In Zusammenhang damit wurde nur eine relativ kleine Spreizung des Convolutionalcodes angenommen. In der Praxis werden im allgemeinen Convolutionalcodes mit wesentlich größerer Spreizung verwendet, so daß beispielsweise 1000 bis 2000 Zellen des Speichers RAM zur Speicherung der Informationsbits benötigt werden. Zur Ansteuerung dieser Zellen sind ebensoviele Adressen und daher wesentlich mehr Adreßleitungen erforderlich als in F i g. 3 dargestellt sind.
F i g. 8 zeigt den Adreßgeber AG 1 als Ausführungsbeispiel des in Fig.3 schematisch dargestellten Adreßgebers AC. Es wird wieder angenommen, daß die Adresse ADR 2 aus den Zahlen 0, 5, 9 und 13 gebildet wird. In etwas allgemeinerer Darstellung mit a=5, b=4, c=4 müssen somit die Zahlen 0, a, a+b, a+b+c dargestellt werden. Es ist zweckmäßig, zunächst mit der Schalterstufe 551 die Zahl 6/2 = 2 darzustellen. Dies kann beispielsweise durch die in der Schalterstufe 551 dargestellten Schalter geschehen. Der Multiplikator
so MU1 bewirkt durch einfache Stellenverschiebung eine Multiplikation mit dem Faktor 2, so daß an den Ausgängen dieses Multiplikators MU1 die Zihl 6=4 signalisiert wird. Durch Addition der Ziffer 1 ergibt sich a=5. Der Multiplikator MU2 bewirkt ebenfalls durch Stellenverschiebung eine weitere Multiplikation mit dem Faktor 2, so daß an seinen Ausgängen die Zahl 2ö=8 signalisiert wird. Durch Addition der Ziffer 1 ergibt sich a+6=9. Der Addierer AD addiert die Zahlen 1001 und 0100, so daß sich als Resultat die Zahl 1101 = a+b+ c ergibt Mit Hilfe der Schalterstufe SS 2 sind vierstellige Binärzahlen darstellbar. Bei diesem Beispiel sind die Schalter derart eingestellt daß die Binärzahl 0000 abgegeben wird. Insgesamt sind nun in dezimaler Darstellung die Zahlen 0, a=5, a+ö=9 und a+b+c—\3 verfügbar, die mit Hilfe des Multiplexers MUXzeitlich nacheinander ausgegeben werden.
Zum Betrieb des Multiplexers MUX werden die Signale ui und u2 mit Hilfe des Binärzählers Z2
erzeugt. Wie die Fig.9 zeigt, wird der Binärzähler Z2 mit den negativen Flanken des Signals 7*4 angesteuert, so daß sich die Signale u\ und u2 ergehen. In Abhängigkeit von diesen Signalen u 1 und u2 verbindet der Multiplexer MUXdie Eingänge p, q, roder s mit den Ausgängen Af. Insbesondere sind mit ul, u2 = 00 die Eingänge pl, p2, p3, p4 der Reihe nach mit den Ausgängen x\, x2, χ3, χ4 verbunden. In ähnlicher Weise sind mit u 1, t/2 = 01 bzw. 10 bzw. 11 die Eingänge ql, q2,q3,q4 bzw. rl, r2, r3, r4 bzw. 5l, 5 2, 5 3, s4 mit den Ausgängen χ Ι, χ 2, χ3, χ 4 verbunden. Insgesamt werden also über die Ausgänge χ 1, ;r2, χ 3, χ 4 die Adressen A DR 2 abgegeben.
F i g. 8 zeigt deutlich, daß mit Hilfe der Schalterstufe SS1 in einfacher Weise beliebige Zahlen b/2 einstellbar sind. Damit lassen sich also auch beliebige Zahlen b darstellen. Da die Zahl b im allgemeinen im Zusammenhang mit Convolutionalcodes als Spreizung bezeichnet wird, lassen sich verschiedene Spreizungen einstellen.
Fig. 10 zeigt den Adressengeber AG/2 als weiteres Ausführungsbeispiel des in F i g. 3 'schematisch dargestellten Adressengebers AG. Dem Zähler Z2 werden wieder die Impulse des Taktsignals 7*4 als Zählimpulse zugeführt und die Zählerstände des Zählers Z 2 werden mit Hilfe der Binärsignale u\ und u2 signalisiert. Der Festwertspeicher ROM ist derart einstellbar, daß er in Abhängigkeit von den Signalen u 1 und u 2 die richtigen Adressen ADR 2 abgibt
Anhand der F i g. 3 und 4 wurde die Erzeugung des codierten Signals D 2 mit der Coderate 1/2 beschrieben. In diesem fall folgt mit z—\ je ein Informationsbit /auf je ein Paritätbit P. Beispielsweise folgt dem Informationsbit /18 das Paritätsbit P18.
F i g. 11 zeigt den Codierer CD/2 als weiteres Ausführungsbeispiel des in F i g. 1 schematisch dargestellten Codierers CD. Dieser Codierer CD/2 ist auf beliebige Coderaten einstellbar. Es wird nun angenommen, daß dieser Codierer CD/2 mit z=3 auf eine Coderate z/z+1 von 3/4 eingestellt ist
Außer den bereits in F i g. 3 dargestellten Bauteilen enthält der Codierer CD/2 den Taktgeber TG 3, dessen Signale in Fig. 12 dargestellt sind und die Kippstufe KS 6, die bereits in F i g. 6 dargestellt ist.
Fig. 12 zeigt oben wieder das Datensignal D\ mit den Informationsbits /17, /18, /19, /20. Darunter sind in der Mitte dieser Informationsbits die Taktimpulse 7Ί dargestellt Die Impulse des Taktsignals T3 treten zu Beginn der einzelnen Informationsbits auf. Die Impulse des Taktsignals 7*17 werden derart erzeugt, daß pro ζ Taktimpulse des Taktsignals Γ3 z+1 Taktimpulse des Taktsignals T17 Auftreten. Mit z=3 entfallen auf drei Impulse des Taktsignals T3 je vier Impulse des Taktsignais 717.
Im vorliegenden Fall wird mit n=6 angenommen, daß die zu erzeugenden Paritätsbits von je sechs Informationsbits abhängig sind. Das Signal 7Ί4 ist einerseits von der Zahl π und andererseits von der Zahl ζ derart abhängig, daß auf ζ Impulse des Signals T3 je π Impulse des Signals TU auftreten. Mit z/n=3/6=l/2 fallen auf jeden Impuls des Signals 7*3 je zwei Impulse des Signals TH.
Mit dem Signal T5 = 1 werden ähnlich wie im Fall der F i g. 3 die einzelnen Informationsbits des Signals D1 in den Speicher RAM eingeschrieben und während der Dauer des Signals 7*5=0 ausgelesen. Der Zähler Zi erhält wieder die Impulse des Signals T3 als Zählimpulse und gibt die Adresse ADR1 ab, die seine Zählerstände signalisieren. In der Darstellung wurde angenommen, daß zeitlich nacheinander die Zählerstände 4,5,6,7,8 eingestellt sind.
Der Adressengeber AG ist derart eingestellt, daß er zeitlich nacheinander ab den negativen Flanken des Signals 7Ί4 zu den Zeitpunkten /15, /16,117,118,119, f20 die Adressen 0, 4,4, 6,6, 10 ausgibt und ab dem Zeitpunkt ί 21 diese Adressenausgabe periodisch wiederholt. Diese Adressenausgabe wird aber während der Dauer der Signale Γ12 = 0 unterdrückt, so daß
ίο während der Dauer dieser Signale T12 = 0 immer die Adressen ADR 2 = 0 ausgegeben werden. Dabei ist jedem Impuls des Signals 7*5 je ein Impuls 7*12 = 0 zugeordnet. Auf diese Weise wird erreicht, daß die Einschreibeadressen nur von den Adressen erster Art ADRl abhängig sind. Die Adressen ADR3 werden wieder durch Summierung der Adressen A DR 1 und ADR 2 gebildet. Während der Dauer der Impulse 7*5=1 während der die Daten in den Speicher RAM eingeschrieben werden, entstehen tatsächlich die Adressen ADR 3 = 5, 6, 7, die gleich den gleichzeitig auftretenden Adressen ADR 1 sind.
Während der Dauer des Signals 7*5 = 0 werden vom Speicher RAM laufend jene Informationsbits abgegeben, die in den Zeilen mit den Adressen ADR 3 eingespeichert sind. Auf diese Weise werden als Signal D 15 ab den Zeitpunkten f 15, 116, f 17, f 18, /19, i20, ί 21 der Reihe nach die I nformationsbits / 4, / 8, / 9, /11, /12, /16 und /7 abgegeben. Dabei wurde aus Gründen einer möglichst übersichtlichen Darstellung angenom-
jo men, daß die Informationsbits /4, /5, /6, /7, /8, /9 ... der Reihenach in die Zellen mit den Adrssen ADR3 = 4, 5,6,7,8,9... eingespeichert wurden.
Die Wirkungsweise der Kippstufen KS6 wurde bereits anhand der F i g. 6 beschrieben. Die in F i g. 11
j5 dargestellte Kippstufe KS6 arbeitet in gleicher Weise, wobei nunmehr anstelle des Signals D5 das Signal D15 und anstelle des Signals T4 das Signal 7*14 zugeführt wird. Die Informationsübernahme in die Kippstufe KS6 erfolgt somit mit den positiven Impulsflanken des Signals 7*14. Mit dem Signal 7*13 erfolgt eine Rückstellung, so daß kurz nach jedem Impuls des Signals 7*13 das Signal P=O abgegeben wird. Ab den folgenden positiven Impulsflanken des Signals 7*14 kann sich das Paritätssignal P ändern. Dabei ist dieses Paritätssignal zunächst vom Informationsbit /4 abhängig und später von den Informationsbits/8, /9, /11,/12 und schließlich auch vom Informationsbit /16. In Abhängigkeit von diesen π=6 Informationsbits /4, /8, /9, /11, /12, /16 wird dann ein Paritätsbit abgegeben, das in Fig. 12 als Paritätsbit P18 bezeichnet ist Mit dem darauffolgenden Impuls des Signals 7*13 erfolgt wieder eine Rückstellung der Kippstufe KS6.
Mit dem Signal 7~i6=i bzw. 7"i6=ö nimmt der Schalter SW seine Schalterstellung 1 bzw. 0 ein. Aus diesem Grunde wird zunächst mit T 16=1 das Paritätsbit P17 in das Signal /P übernommen, wogegen anschließend aus dem Signal D1 die Informationsbits /17, /18, /19 übernommen werden. Daran anschließend wird mit Π6=1 das Paritätsbit P18 in das Signal IP übernommen. Die Kippstufe KSl arbeitet in gleicher Weise wie die in Fig.3 dargestellte Kippstufe, wird aber nunmehr mit Hilfe des Taktsignal 7*17 angesteuert Es werden somit in das Signal D 2 jene Paritätsbits und jene Informationsbits übernommen, die während der Dauer der Impulse des Signals T17 an der Kippstufe KS anliegen. Auf diese Weise entsteht das zu erzeugende konvolutional codierte Signal D 2, bei dem abwechselnd je z=3 Informationsbits und je ein
27 Π 772
Paritätsbit auftreten. Beispielsweise folgt auf die Informationsbits / 17, / 18, / 19 das Paritätsbit P18.
Sowohl in Fig.4 als auch in Fig. 12 wurden die Adressen ADRi, ADR2, ADR3 als Dezimalzahlen dargestellt, wogegen sie in der Praxis mit Binärzahlen dargestellt und über mehrere Leitungen signalisiert werden.
Gemäß Fig. 12 wurde ähnlich wie im Fall der Fig.4 angenommen, daß später auftretende Informationsbits in Zellen des Speichers RAM eingeschrieben werden, dessen Adressen A DR 3 sich laufend modulo 16 erhöhen. Unter dieser Voraussetzung zählt der Zähler Z1 nach aufwärts, was durch die Adressen 4, 5,6, 7 zum Ausdruck kommt. Wenn die später auftretenden Informationsbits in Zellen des Speichers RAM gespeichert werden, deren Adressen sich laufend modulo 16 erniedrigen, dann müßte auch der Zähler Z1 ähnlich wie im Fall der F i g. 3 nach abwärts zählen.
Fig. 13 zeigt den Adressengeber AG/3 als weiteres Ausführungsbeispiel des in Fig.3 dargestellten Adressengebers AG. Der Adressengeber AG/3 eignet sich speziell zur Erzeugung der Adressen A DR 2, die in Fig. 12 dargestellt sind und die zum Betrieb des in Fig. 11 dargestellten Codierers benötigt werden. Ähnlich wie im Fall der Fig. 10 ist wieder der Zähler Z2 vorgesehen, dem nunmehr die Impulse des Signals T14 als Zählimpulse zugeführt werden und dessen Zähler-
stände Binärzahlen darstellen. Während der Dauer der Signale Π2 = 0 sperren die UND-Glieder, so daß der Festwertspeicher ROM mit den Signalen ui, u2, u3 = 000 angesteuert wird und die Adressen ADR2 = 0 abgibt. Während der Dauer der Signale 7M2=1 leiten die dargestellten UND-Glieder, so daß die Zählerstände des Zählers Z2 in binärer Weise mit Hilfe der Signale u 1, u 2, u 3 signalisiert werden und der Festwertspeicher ROM die in Tabelle 2 in Dezimaldarstellung eingetragenen Adressen ADR3 abgibt. Nach dem Auftreten der Signale ui, u2, u3=101 wird der Zähler Z2 in nicht dargestellter Weise wieder zurückgesetzt, so daß er erneut die Signale ui, u2, u3 = 000 abgibt, die in weiterer Folge die Adresse A DR 3 = 0 bewirken.
Tabelle 2
«3 «2 ul ADR 3
0 0 0 0
0 0 1 4
0 1 0 4
0 1 1 6
1 ü 0 6
1 0 1 10
1 1 0
1 1 1
Hierzu 7 Blatt Zeichmiimen

Claims (3)

Patentansprüche:
1. Codierer zur Erzeugung einer !convolutional codierten Impulsfolge, die abwechselnd aus je ζ Informationsbits und je einem Paritätbit gebildet wird, wobei jedem Informationsbit ein Impuls eines Bittaktes zugeordnet ist und in Abhängigkeit von Gruppen mit je π Informationsbits je ein Paritätbit abgeleitet wird, wobei die Informationsbits zeitlich nacheinander von einer Datenquelle abgegeben werden und die π Informationsbits aller Gruppen in vorgegebenen Bitabständen auftreten und wobei zwischen dem ersten und dem letzten Informationsbit einer Gruppe von π Informationsbits insgesamt m Informationsbits auftreten, dadurch gekennzeichnet, daß ein Zähler (Z 1) vorgesehen ist, dem die Impulse des Bittaktes (T3) als Zählimpulse zugeführt sind, der periodisch ab einem Anfangszählerstand bis zu einem Endzählerstand w Zählerstände mit w>m+2 annimmt, die Adressen erster Art (ADR 1) darstellen, daß ein Adressengeber (A G) vorgesehen ist der pro ζ Bittakte (T3) n/z Adressen zweiter Art (ADR 2) erzeugt, deren Differenzen den vorgegebenen Bitabständen gleichen, daß ein Summierer (SU) vorgesehen ist, der die Adressen erster Art (ADR 1) und die Adressen zweiter Art (ADR2) modulo w summiert und als Resultat Adressen dritter Art (ADR 3) abgibt, daß ein mit den Adressen dritter Art (ADRJ) adressierter Speicher (RAM) vorgesehen ist, der die Informationsbits (D 1) der Datenquelle (DQ)zeitlich nacheinander in w Zellen speichert und der ein Speichersignal (D 5) abgibt, das die unter den Adressen dritter Art (ADRi) gespeicherten Informationsbits signalisiert und daß das Speichersignal (D5) einer Paritätsstufe (PS 1) zugeführt ist, die die Paritätbits abgibt (F ig. 3).
2. Codierer nach Anspruch i, dadurch gekennzeichnet, daß ein Taktgeber (TG 2 bzw. TG 3) vorgesehen ist, der pro ζ Bittakte (T3) n/z Impulse eines weiteren Taktes (T4 bzw. 7Ί4) erzeugt, daß als Paritätsstufe eine bistabile Schaltstufe (KS 6) vorgesehen ist, der das Speichersignal (D 5 bzw. D15) zugeführt ist, die in ihrem jeweiligen stabilen Zustand verbleibt, wenn das Speichersignal ('D 5 bzw. D15) einen ersten Binärwert (0) signalisiert und die in den jeweils anderen stabilen Zustand übergeht, wenn das Speichersignal (D 5 bzw. D15) einen zweiten Binärwert (1) signalisiert (Fig. 3, 6 bzw. Fig. 11,12).
3. Codierer nach Anspruch 1 und 2, dadurch gekennzeichnet, daß ein weiterer Zähler (Z2) vorgesehen ist, dem die Impulse des weiteren Taktes (T4 bzw. Γ14) als Zählimpulse zugeführt sind und dessen Zählerstände mit binären Zählsignalen (u 1, t/2, t/3) signalisiert werden und daß ein Festwertspeicher (ROM) vorgesehen ist, der in Abhängigkeit von den binären Zählsignalen die Adressen zweiter Art (ADR 2) abgibt (F i g. 10 bzw. 13).
DE19772711772 1977-03-17 1977-03-17 Codierer zur Erzeugung einer konvolutional codierten Impulsfolge Expired DE2711772C3 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19772711772 DE2711772C3 (de) 1977-03-17 1977-03-17 Codierer zur Erzeugung einer konvolutional codierten Impulsfolge

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19772711772 DE2711772C3 (de) 1977-03-17 1977-03-17 Codierer zur Erzeugung einer konvolutional codierten Impulsfolge

Publications (3)

Publication Number Publication Date
DE2711772A1 DE2711772A1 (de) 1978-09-21
DE2711772B2 DE2711772B2 (de) 1979-03-15
DE2711772C3 true DE2711772C3 (de) 1979-11-15

Family

ID=6003924

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19772711772 Expired DE2711772C3 (de) 1977-03-17 1977-03-17 Codierer zur Erzeugung einer konvolutional codierten Impulsfolge

Country Status (1)

Country Link
DE (1) DE2711772C3 (de)

Also Published As

Publication number Publication date
DE2711772A1 (de) 1978-09-21
DE2711772B2 (de) 1979-03-15

Similar Documents

Publication Publication Date Title
DE3208240C2 (de) Serien-Parallel-Umsetzer
DE3111384A1 (de) Codier/decodiersystem mit null-disparitaet
DE2146752C3 (de) Nachrichtenübertragungsverfahren mit wählbarer Codierung und Sender zur Durchführung dieses Verfahrens
DE3336570A1 (de) Anzeigesystem fuer einen digitalen oszillographen
DE2826450C3 (de) Verfahren zum Steuern der Übertragung digitaler Signale und Anordnung zur Durchführung des Verfahrens bei einer digitalen Faksimileübertragungseinrichtung
DE2451237C2 (de) Schaltungsanordnung zum Ansteuern einer mehrere Anzeigesegmente enthaltenden, der Anzeige verschiedener Zeichen dienenden Anzeigevorrichtung
DE2513818B2 (de)
EP0201634B1 (de) Digitaler Wortgenerator zur automatischen Erzeugung periodischer Dauerzeichen aus n-bit-Wörtern aller Wortgewichte und deren Permutationen
DE2107142A1 (de) Zeitmuliplex Nachnchtenubertragungs system mit Pulscodemodulation
DE2543355C3 (de) Schaltungsanordnung zur Erzeugung von Signalen eines Mehrfrequenz-Code
DE2714219C2 (de)
DE2711772C3 (de) Codierer zur Erzeugung einer konvolutional codierten Impulsfolge
DE2414277A1 (de) Datenvermittlungsanordnung
DE2146108A1 (de) Synchrone Pufferanordnung
DE2142948A1 (de) Verfahren und Konverter zur Konvertierung von Daten
DE2365957B2 (de) Übertragungsverfahren für umkodierte Nachrichten
DE2635306C2 (de) System zur Zeitmultiplex-Übertragung asynchroner Binärwertwechsel von Datensignalen
DE2444218B1 (de) Verfahren und anordnung zum darstellen von digitalen daten durch binaersignale
DE2411469A1 (de) Verfahren und anordnung zur uebertragung von digitalen signalen
CH647366A5 (de) Kodiereinrichtung fuer binaere datensignale und dekodiereinrichtung fuer diese datensignale.
DE2361105C3 (de) Impuls-Generator
DE3531991A1 (de) Verfahren zur rbertragung von digitalen daten
DE2557339C2 (de) Schaltungsanordnung zum Umsetzen eines anisochronen binären Eingangssignales in ein isochrones binäres Ausgangssignal
DE3504983C2 (de) Datenübertragungsanordnung
DE2704258A1 (de) Digital-analog-wandler

Legal Events

Date Code Title Description
OAP Request for examination filed
OD Request for examination
BI Miscellaneous see part 2
C3 Grant after two publication steps (3rd publication)
8339 Ceased/non-payment of the annual fee