DE2508706C2 - Schaltungsanordnung zur Codierung von Datenbitfolgen - Google Patents
Schaltungsanordnung zur Codierung von DatenbitfolgenInfo
- Publication number
- DE2508706C2 DE2508706C2 DE2508706A DE2508706A DE2508706C2 DE 2508706 C2 DE2508706 C2 DE 2508706C2 DE 2508706 A DE2508706 A DE 2508706A DE 2508706 A DE2508706 A DE 2508706A DE 2508706 C2 DE2508706 C2 DE 2508706C2
- Authority
- DE
- Germany
- Prior art keywords
- data
- code
- circuits
- bits
- group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
- 238000009795 derivation Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 4
- 238000000034 method Methods 0.000 description 3
- 108091026890 Coding region Proteins 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- H03M7/4025—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code constant length to or from Morse code conversion
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Dc Digital Transmission (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Description
Die Erfindung betrifft eine Schaltungsanordnung zur Codierung von Datenbitfolgen nach dem Oberbegriff
des Patentanspruchs 1.
Das US-Patent 36 89 899 und die entsprechende deutsche
Patentanmeldung P 22 27 1483 beschreiben eine Codeart mit vorteilhaften Eigenschaften bezüglich
Dichte und Lauflänge. Bei den beschriebenen Codes wechselt die Länge der zu codierenden und zu decodierenden
Wörter bei verschiedenen Datcnanordmtngcn.
Bei jedem der aufeinanderfolgenden Wörter muß eine Entscheidung bezüglich der Bitzahl pro Wort getroffen
werden, sind die Wörter abzugrenzen und sind die zugehörigen Bitzahlen zu codieren bzw. zu decodieren.
Es ist wohl einzusehen, daß lauflängenbegrenzte Codes mit variierbaren Wortlängen wirtschaftlicher sind
ais Codes mit festen Wortlängen. Bei solchen Codes mit variierbaren Wortlängen ist im allgemeinen eine Wortabgrenzung
und saubere Markierung der einzelnen Codewörter erforderlich. Dazu können z. B. spezielle
Wortmarkenbils am Beginn jedes einzelnen Wortes in
Verbindung mit einem Tabellenauslesen verwendet werden. Dies ist verhältnismäßig langsam und aufwendig.
Bei Anwendung der Wortmarkierung kann auch das Erkennen fehlerhafter Bits zur Verschiebung von Markierungsfehlern
in nachfolgende Bilgruppen hinein erfolgen. Damit ergeben sich effektive Synchronisierungssch
wicrigkci ten.
Es müßte von Vorteil sein, eine !auflängenbegrenzte
Codiertecbnik mit variierbaren Wortlängen verwenden zu können, bei der keine Wortbegrenzungsentscheidungen
erforderlich sind und die Übersetzung eingegebener Daten auch mit unvollständigen Wörtern durchführbar
wäre.
Codes sind normalerweise durch die Spezifizierung eines Vorrates von möglichen Datenbitfolgen (Datenwörtern),
einem Vorrat von möglichen Codebitfolgen (Codewörtern) und dem Zusammenha»g zwischen Datenwörtern
und Codewörtern deflnierbar. Ev,\ Code hat ein festes Bitzahlverhältnis, wenn bei
jedem zueinandergehörigen Paar eines Datenworts und
eines Code worts das Datenwort eine Länge von m Bits und das Codewort eine Länge von π Bits aufweist und
das Verhältnis von m zu π immer gleich ist
Ein Code besitzt dann feste Wortlängen, wenn die Längen aller Codewörter gleich sind.
Mit Codieren wird der Arbeitsgang bezeichnet, in dem ein Datenworl oder eine Folge mehrerer Datenwörtcr
in ein Codewort bzw. in eine Folge mehrerer Codewörter umgewandelt werden Decodieren ist der
umgekehrte Arbeitsgang, d. h. wenn ein bzw. mehrere Codewörter zu einem bzw. mehreren Datenwörtern
rückumgcwandelt werden.
Aus dem IBM TDB. Vol. 5. Nr. 8. Jan. 1963. S. 83. der
DK-OS 22 04 766 und der US-PS 29 73 511 sind Verfahren
und Schaltungsanordnungen /um Codieren von Datenbitfolgen mit einem Code variierbarer Wortlänge
grundsätzlich bekannt Diese Codiereinrichtungen für die Codierung von Datenbitfolgen sind mit Schieberegistern
ausgerüstet, die zur Aufnahme der umzusetzenden Datenfolge dienen und die außerdem kombinatorische
Schaltungen zur Bildung der Codebits aus der eingegebenen Datenfolge aufweisen sowie Steuerkreise, die die
aufeinanderfolgende Codierung der jeweils anstehenden Datenbits einer Datcnbitfolge steuern. Die in diesen
Entjjcg^iiha'·1.1"»'?'' ΒΡ7Ρ\σίρτι .Srhaltunsen mit Schiebercgistern
und zusätzlichen Addierschaltungen bzw. Verzögerungsschaltungen und sonstigen logischen Steuerschaltungcn
sind jedoch technisch sehr aufwendig und fco führen nicht zu dem hier geforderten Ergebnis.
Der Erfindung liegt die Aufgabe zugrunde, eine
Schaltungsanordnung zur Codierung von Datenbitfolgcn
zu schaffen, die mit einem Code variierba/cr Wortlängc
und festem Bitzahlvcrhältnis. bei dem keine Wort-
b5 abgrenzung crfordprlich ist arbeitet wobei wenig
Schaltungsaufwand bei der Realisierung der Schaltung
getrieben werden soll.
Die erfindungsgemäße Lösung ist im Kennzeichen
des Patentanspruchs 1 charakterisiert
Eine weitere Ausgestaltung des Erfindungsgegenstands
ist im Patentanspruch 2 gekennzeichnet
Entsprechend der vorliegenden Erfindung werden Gruppen von m Bits in Gruppen von π Bits umgesetzt,
wobei m und π Fest gegebene ganze Zahlen sind, deren
Verhältnis das Bitzahlverhältnis des Codes ist Die eingegebenen Wörter sind nicht rahmenbegrenzt: die Umsetzung
kann auch mit unvollständigen Wörtern ablaufen.
Beim Codiei„-n und Decodieren, bei dem Wortgrenzen
nicht durch Oberblicken begrenzter Datenmengen erkennbar sind, müssen Hiifszustandsvariable zur Bestimmung
der Wortgrenzen eingeführt werden. Diese Hilfsvariablen können innerhalb eines Schiefc-'-egisters,
eines löschbaren Zählers oder irgendeiner _..Jeren Schaltfolgeanordnung verwirklicht werten.
Bei einem gewählten Ausführun^sbeisp! ' ^Jr Codierung
wird ein erstes Schieberegister ,nu sirei Bits und
ein zweites mit zwei Bits oder ein —iiiprecher.der Zähler
verwendet; das zweite Sc? * ^register bzw. der Zähler
ändert jeweils seinen Schaltzustand mit dem Voranschreiten der Datenfolge. Die im ersten Schieberegister
gespeicherten Bits werden bitweise codiert; die Verarbeitung der Daten ist unabhängig von der variierenden
Bitzahl, die ins erste Schieberegister jeweils eingegeben wird.
Die im Codierer gespeicherten Informationen sind einerseits die Werte dreier aktueller Bits aus einer Serie
von Eingangsbits und andererseits eine Lageinformation für die Wortgrenzen, wenn die drei gespeicherten
Bits nicht zu ein und demselben Wort gehören.
Das gewählte Ausführungsbeispiel eines entsprechenden Decodierers enthält ein Schieberegister für
acht Bits und kombinatorische Schaltungen, mil deren Hilfe Daten bitweise aus dem jeweiligen Inhalt des
Schieberegisters heraus decodiert werden.
Die Erfindung wird anhand der zugehörigen Zeichnungen näher erläutert Es zeigen
F i g. 1 eine Codetabelle, die den Zusammenhang von
Codewörtern und Datenwörtern bei einem lauflängenbegrenzten
Code mit variierbarer Worüänge darstellt, wobei die codierten Folgen minimale und maximale
Nullfolgen zwischen Einsen aufweisen, nämlich minimal zwei und maximal sieben Nullen,
F i g. 2 das Schema eines Codierers nach der vorliegenden
Erfindung,
F i g. 3 das Schaltbild eines solchen C"odierers gemäii
F i g. 2 für einen Code nach F i g. 1,
F i g. 4 ein Zeitschaubild für die Zusammenhänge zwischen den verschiedenen Signalen im Codierer,
F i g. 5 eine tabellenartige Darstellung für ein Codierbeispiel für Datenfolgen mittels des Codierers gemäß
Fig. 3.
Fig.6 das Schema eines Decodierers zur Decodierung
des Ergebnisses des Codierers gemäß F i g. 2,
für den Code nach F i g. 1,
F i g. 8 ein Zeitschaubild für die Zusammenhängc zwischen
den verschiedenen Signalen im Decodierer und
F i g. 9 eine tabellenartige Darstellung eines Beispiels der Decodierung im Decodierer gemäß Fig. 7 nach der
vorliegenden Erfindung.
Fig.] stellt einen lauf längen begrenzten Code mit variierbarer
Wortlänge der Art dar, wie sie im genannten US-Patent 36 89 899 auftritt. Bei diesem Code besteht
jedes Codewort aus zweimal soviel Bits wie das dazugehörige Daten*ort. Während der Code ein solcher mit
variierbarer Wortlänge ist ist doch das Bitzahlverhältnis
konstant: zwei Codebits entsprechen immer je einem Datenbit.
Ein diese Codierung ausführender Codierer gemä^ den F i g. 2 und 3 umfaßt ein erstes Schieberegister 15 mit Speicherschaltung 14,16 und 18. ein zweites Schieberegister oder Zähler 21 mit Speicherschaltungen 20 und 22 und kombinatorische Schaltungen 23. die ksine Speicherelemente enthalten.
Ein diese Codierung ausführender Codierer gemä^ den F i g. 2 und 3 umfaßt ein erstes Schieberegister 15 mit Speicherschaltung 14,16 und 18. ein zweites Schieberegister oder Zähler 21 mit Speicherschaltungen 20 und 22 und kombinatorische Schaltungen 23. die ksine Speicherelemente enthalten.
Entsprechend F i g. 2 und 3 ist die Variable Peme »1«. wenn das in der Speicherschaltung 14 enthaltene Bit das
letzte Bit eines Wortes ist Eine »1« ist in der Speicherschaltung 20 enthalten, wenn die Speicherschaltung Ϊ6
das letzte Bit eines Wortes enthält; eine »1« steht in der Speicherschaltung 22, wenn die Speicherschaltung 18
das letzte Bit eines Wortes speichert.
Gemäß F i g. 3 enthält jede Speicherschaltung, z. B.
14, zwei Flip-Flops. — 1 und —2. Für die Codierung wird
ein Taktsignal verwendet, dessen Erzeugung nicht näher dargestellt ist und das mit einer Folgefrequenz von
einem Zyklus pro zu codierendes Datenbit arbeitet Während der aufeinanderfolgenden faktzyklen werden
seriell Binärdaten von einem nicht darv -stellten Quellspeicher bezogen und über den Eingang 10 '·. t das Schieberegister
15 eingegeben. Während jeder aufeinanderfolgenden positiven Taktphase wird der Binärwert des
einzugebenden Datenbits über den Eingang 10 in die erste Speie herschaitung 14—1 eingeführt Wenn das binäre
Datenbit eine »1« ist wird diese eingeschaltet und speichert diese Information.
Gleichzeitig mit der Eingabe des Datenbits in die Speicherschaltung 14— 1, wird der Inhalt der Speicherschaltung
14—2 und 16—2 in die Speicherschaltungen 16—1 und 18—1 weitergegeben. Während der negativen
Taktphasen werden die in den Speicherschaltungen mit —1 stehenden Datenbits in die entsprechenden
Speicherschaltungen mit —2 weitergegeben.
Die Funktionen des Schieberegisters 21 sind ähnlich,
mit der Ausnahme jedoch, daß die Eingabe in die erste Speicherschaltung 20— 1 vom Inhalt der beiden Schieberegister
15 und 21 abgeleitet wird. Die kombinatorische Schaltung 23 tastet die Datenanordnungen ab und
bestimmt, ob das Signal P auf der Ausgangsleitung 25 »!« oder »0« ist. Das Signal P ist »1«. wenn (1.) alle
Speicherschaltungen 14 und 22 auf null stehen bzw. aus sind, oder (2) die Speicherschaltung 18 nd! und die Speicherschaltung
16 eine binäre Eins enthält oder (3.) die Speicherschaltungen 16 und 18 eine binäre Eins und die
Speicherschaltung 20 eine Null enthält. Wenn irgendeine dieser drei vorstehenden Bedingungen gegeben ist
dann ist P eingeschaltet und sorgt für die Eingabe einer binären Eins während der positiven Taktphase in die
Speicherschaltung 20--1. Entsprechend Fig.3 wird P
durch UND-Schaltungen 24,26 und 28 und eine ODER-Stauung
42 gebildet. Die Eingänge von 24, 26 und 28 kommen von den Speicherschaltungen mit —2 der
Taktphasen unverändert bleiben.
Die Variablen 70 und Ti verkörpern die Wei te der zu
codierenden Date-.bits. 7Ö wird in die codierte Ausgangsdatenfolge
während der negativen Taktphasen mittels der UND-Schaltung 36 und der ODER-Schaltung
40 überführt. Ti wird während der positiven Taktphasen über die UND-Schaltung 3Λ und die
s,5 ODER-Schaltung 40 durchgegeben. Die Variable 70
wird mittels der UKD-Schaltungen 30 und 32 und der
ODER-Schaltung 44 gebildet. Die Eingänge für 30 und 32 werden von Speicherschaltungen —1 der Schiebere-
gister 15 und 21 gespeist, die während negativer
Taktphasen unverändert bleiben- Die Variable Tt wird mittels der UND-Schaltung 34 gebildet. Die Eingänge
von 34 werden von Speicherschaltungcn —2 der Schic beregister 15 und 21 gespeist, die während positiver
Taktphase unverändert bleiben.
F i g.4 zeigt ein Zeitschaubild der auftretenden Signale
mit erläuternden Texten.
Fi g. 5 stellt ein Codierbeispiel mit dem Code gemäß
Fig, 1 dar. Zwei Codebits Werden dabei für jedes Eingangsbit
gebildet. Die Sich ergebenen Ausgangssignalc
TD und 71 gemäß F i g. 2 und 3 entsprechen den 1. und 2. Codebits für die einzelnen in die Speicherschaltung 18
eintretenden Datenbits. Die von links n^ch rechts gerichteten
Pfeile deuten das Fortschreiten des ersten Datenbits
vom Eingang 10 bis zur Erzeugung der zugehörigen Codebitpaare innerhalb der codierten Daten an. Die
gestrichelten Linien markieren die Unterteilung der Wörter am Eingang.
Die Codierfolge läuft wie nachstehend angegeben ab: Ausgangs sind alle Speicherschaltungen der Schieberegister
15 und 2t auf Null. Synchron mit dem vorgesehenen Taktgeber werden die zu verarbeitenden Datenwörter
seriell in das Schieberegister 15 eingeschoben. Während der ersten beiden Taktperioden werden die
Codedatenausgangssignale TD und Ti nicht berücksichtigt
Nachdem die ersten drei Datenbits in das Schieberegister 15 eingelaufen sind, bilden die sich ergebenden
Codedatenausgangssignale die abzugebende Codedatenfolge, wobei pro eingegebenes Datenbit zwei Codebits
erzeugt werden. Nach dem Einlauf des letzten Datenbits der eingegebenen Folge werden zwei Scheinbits
oder Leerlaufbits zum Abschluß der Codierung nachgeschickt.
Ein Decodierer gemäß F t g. 6 und 7, der zur Decodierung
der entsprechend F i g. 1 gebildeten Codewörter variierbarer Länge verwendbar ist. enthält ein Schieberegister
53 und dieses wiederum Speicherschaltungen 52, 54, 56, 58, 60, 62, 64 und 66 und kombinatorische
Schaltungen 67 ohne Speicherelemente. Zur Decodierung des Codevorrates gemäß F i g. 1 sind keine Hilfszustandsvariablen
erforderlich.
In F i g. 7 ist wiederum jede einzelne Speicherschaltung
in Form von zwei Flip-Flops — 1 und —2 dargestellt
Zur Decodierung wird ein bei 48 eingegebenes erstes Taktsignal, dessen Erzeugung nicht im einzelnen
dargesteii* ist verwendet: die Folgefrequenz dieses Taktsignal ist ein Zyklus für jedes Codebit Ein Flip-Flop
68 dient als mit dem bereits genannten Taktsignal getriebener Frequenzteiler zur Erzeugung eines zweiten
Taktsignals über die Leitung 49. dessen Folgefrequenz ein Zyklus pro zu decodierendes Datenbit ist
Während der aufeinanderfolgenden Zyklen des ersten Takteignais über 48 werden z. B. von einem nicht dargestellten
Speicher codierte Daten über den Dateneingang
50 in das Schieberegister 53 eingegeben. Während jeder positiven Phase des ersten Taktsignals wird der
Binärwert des codierten Bits über Dateneingang 50 in die erste Speicherschaltung 52—1 eingegeben. Gleichzeitig mit dem Einlauf eines Codebils in 52—1 wird der
Inhalt der SpeicherschaUungen 52—2, 54—2, 56—2,
58—2,60—2,62—2 und 64—2 in die Speicherschaltungen
54—1,56—1,58—1,60—1,62—1,64—1 und 66—1
übertragen. Während der negativen Phasen des ersten Taktsignals werden die in den Speicherschaltungen mit
—ί enthaltenen Codebitwerte in die entsprechenden Speicherschaliungen mit —2 übertragen.
Die kombinatorischen Schaltungen 67 werden zur Bestimmung der aus dem Inhalt des Schieberegisters 53
decodierten Datenbits verwendet UND-Schaltungen 72,74 und 76 und eine ODER-Schaltung 78 dienen zur
Erzeugung eines decodierten Datenbits pro Paar eingegebener
Codebits. Die Ausgangssignale von 78 und des nachgcschaltelcn Inverters 80 sind gültig, wenn eine gerade
Zahl von Codebits in das Schieberegister 53 eingeschoben
worden ist. Ein Flip-Flop 70 am Ausgang wird zu entsprechenden Zeitpunkten je nach Binärwert des
gerade decodierten Bits eingestellt Dies erfolgt immer
dann, wenn sich sowohl das erste Taktsignal als auch das
zweite Taktsignal in einer positiven Phase befinden.
Gemäß F i g. 7 werden bei der Decodierung des Codes nach Fig. 1 die Wortenden im Schieberegister 53
seitens der kombinatorischen Schaltungen 67 erkannt. Ein Wortende kann nach jeder eingegebenen geraden
Zahl codierter Bits auftreten. Die Codeanordnung im Schieberegister ist am Ende eines Wortes 0001 oder
0010 in den Speicherschaltungcn 52,54,56, 58 oder 56,
: 20 58,60,62oder60.62,64.66.
Fi g. 8 ist ein Zeitschaubild mit erläuternden Texten,
das den zeitlichen Verlauf der einzelnen Signale bei der Decodierung darstellt
F i g. 9 illustriert ein Decodierbeispiel für den Decodierer gemäß F i g. 7. Ein Datenbit wird für zwei codierte, in das Schieberegister eingegebene Codebits erzeugt Die von links nach rechts gerichteten Pfeile deuten das Voranrücken des ersten Paares von Codebits vom Eingang bis zum Entstehen des decodierten Datenbits am Ausgang an. Die Decodicrfolge ist dabei wie nachstehend angegeben: Anfangs werden die Speicherschaltungen 52,54,56 und 58 auf eine Wortende-Bitanordnung wie z. B. 001 gesetzt Im Synchronismus mit dem Takt über 48 werden Codedaten in das Schieberegister 53 eingeführt Während der ersten vier Taktperioden wird das Ausgangssignal der ODER-Schaltung 78 nicht berücksichtigt Nach Einlauf von drei Codebits in das Schieberegister 53 wird das Ausgangssignal der ODER-Schaltung 78 dazu verwendet decodierte Datenbitwerte in das Ausgangs-Flip-Flop 70 im Takte des zweiten Taktsignals auf der Leitung 49 einzugeben, und zwar imrpsr ein decodiertes Bit pro zwei Codebits. Nach dem Einlauf des letzten Codebits folgen drei Scheinoder Leerbits, die die Decodierung abschließen.
F i g. 9 illustriert ein Decodierbeispiel für den Decodierer gemäß F i g. 7. Ein Datenbit wird für zwei codierte, in das Schieberegister eingegebene Codebits erzeugt Die von links nach rechts gerichteten Pfeile deuten das Voranrücken des ersten Paares von Codebits vom Eingang bis zum Entstehen des decodierten Datenbits am Ausgang an. Die Decodicrfolge ist dabei wie nachstehend angegeben: Anfangs werden die Speicherschaltungen 52,54,56 und 58 auf eine Wortende-Bitanordnung wie z. B. 001 gesetzt Im Synchronismus mit dem Takt über 48 werden Codedaten in das Schieberegister 53 eingeführt Während der ersten vier Taktperioden wird das Ausgangssignal der ODER-Schaltung 78 nicht berücksichtigt Nach Einlauf von drei Codebits in das Schieberegister 53 wird das Ausgangssignal der ODER-Schaltung 78 dazu verwendet decodierte Datenbitwerte in das Ausgangs-Flip-Flop 70 im Takte des zweiten Taktsignals auf der Leitung 49 einzugeben, und zwar imrpsr ein decodiertes Bit pro zwei Codebits. Nach dem Einlauf des letzten Codebits folgen drei Scheinoder Leerbits, die die Decodierung abschließen.
Abwandlungen der beschriebenen Ausführungsbeispiele bezüglich Kombinatorik beim Codieren und Decodieren,
bezüglich Zahl und Anordnung der Hilfszustandsvariablen
und der Anordnung und Zeitsteuerung der verwendeten Schieberegister liegen, aufbauend auf
den beschriebenen Beispielen, im Rahmen des Könnens |5
des Durchschnittsfachmanns. j|
Das beschriebene Verfahren kann zur Codierung und J|
Decodierung mit beliebigem gegebenen Bitzahlverhält- Ci nis abgewandelt werden.
Hilfszustandsvariable sind dann nicht erforderlich, wenn bereits durch den Code Wortgrenzen anhand vor- '-gegebener
Zahlen von Eingangsbits erkennbar sind, wie \ dies z. B. bei der Decodierung der Codes mit (d, k) = (2, |
7) und (d k) --* (1, 8) entsprechend dem eingangs ge- i
nannten US-Patent möglich ist i
Die Zahl der Schieberegisterstufen, die Zahl der ^ Hilfszustandsvariablen und die beim Codieren und De-1.
codieren auftretenden Verzögerungen hängen von der f, Spezifizierung der Codewörter und von der Zuordnung §
zwischen Datenwörtern und Codewörtern ab. |
Zusammenfassung: Es wurde eine Schaltungsanord-fc
nung zur Codierung und Decodierung von Daten mitp einem Code variierbarer Wortlänge und gegebenem^
Bitzahlverhältnis zwischen Datenwörtern und Codewörtern
beschrieben. Die folgenden Operationen laufen dabei ab:
0. Eingabe einer konstanten Zahl von Eingabcbhs in ο
ein Schieberegister (Löschung);
1. Hingäbe einer konstanten Zahl von liingabcbiis in
das Schieberegister',
2. Codierung oder Decodierung einer konstanten
Zahl vor·, Bits entsprechend dem Inhalt des Schicberegisters;
3. wiederholte Durchführung des 1- und 2. Schrittes,
bis sämtliche anstehenden Eingabebits verarbeitet sind,
15
Zur Beendigung der Codierung oder Decodierung werden die I- Und 2. Schritte wiederholt mit Leer- oder
Scheinbits durchgeführt
Die Codierung und Decodierung von Bits kann zusätzlich durch Hilfszustandsbhs begleitet werden, die
Wortgrenzen abzählen.
Hierzu 6 Blatt Zeichnungen
25
30
35
40
50
«0
Claims (2)
1. Schaltungsanordnung zur Codierung von Datenbitfolgen mit einem Code variierbarer Wcrtlänge
und vorgegebenem Bitzahlverhältnis zwischen den Datenwörtern und Codewörtern, wobei der Code
als Zuordnung der einzelnen Datenwörter zu den einzelnen Codewörtern gegeben ist, bei der Speicher
bzw. Schieberegister zur Aufnahme der umzusetzenden Datenfolge sowie kombinatorische Schaltungen
zur Bildung der Codebits aus der eingegebenen Datenfolge und Steuerkreise miteinander verbunden
sind, die die aufeinanderfolgende Codierung der jeweils anstehenden Datenbits einer Datenbitfolge
steuern, dadurch gekennzeichnet,
daß das Schieberegister (15) zur Aufnahme der konstanten
Anzahl m von Datenbits an jeder Stufe parallele Abgriffe aufweist, die mit einer ersten Gruppe
von UND-Schaltungen (24, 26, 28) und mit einer zweiten G.jppe von UND-Schaltungen (30,32,34)
verbunden sind,daß die Ausgänge aller UND-Schaltungen (24,26,28) der ersten Gruppe über eine erste
ODER-Schaltung (42) verbunden sind, während die Ausgänge von zwei UND-Schaltungen (30, 32) der
zweiten Gruppe über eine zweite ODER-Schaltung (44) verbunden sind, daß außerdem ein Zählregister
(21) angeordnet ist. das mit dem Schieberegister (15) gemeinsam in zwei Taktphasen gesteuert wird und
dessen Eingang mit dem Ausgang (25) des ersten ODER-Gliedes (42) verbunden ist und dessen Ausgang
mit einem Eingang des ersten UND-Gliedes (24) der ersten Gruppe verbunden ist daß außerdem
Zwischenausgänge des Zäh !registers (21) mit den UND-Schaltungen (30, i2 üi J 34) der zweiten Gruppe
verbunden sind, so daß dh Ausgangsleitungen dieser zweiten Gruppe die Variablen (70 und 7Ί) der
zu codierenden Datenbits führen, die durch zwei nachgeschaltete UND-Schaltungen (36 und 38) während
der zwei Takiphasen (70, 7Ί) in die codierte Ausgangsdatenfolge umgeschlüsselt werden, die am
Ausgang einer nachgeschalteten ODER-Schahung (40) zur Verfügung steht
2. Schaltungsanordnung nach Anspruch 1. dadurch
gekennzeichnet, daß das Zähiregister (21) zur
laufenden Markierung der Stellung der Datenwortenden im Schieberegister (15) dient und daß die erste
und zweite Gruppe von logischen Schaltungen (24, 26,28 und 42 sowie 30,32,34 und 44) zur Ableitung
von jeweils einer gebenen Codebit/ahl pro Datenbit dienen, wobei die Wortgrenzen zwischen den Datenwörtern
einer Folge durch Feststellen einer vorgegebenen Anzahl von Datenbits im Schieberegister
(15) feststellbar sind, das jeweils eine Folge gerade zu verarbeitender Datenbits speichert
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US46636074A | 1974-05-02 | 1974-05-02 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE2508706A1 DE2508706A1 (de) | 1975-11-20 |
| DE2508706C2 true DE2508706C2 (de) | 1984-10-11 |
Family
ID=23851460
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE2508706A Expired DE2508706C2 (de) | 1974-05-02 | 1975-02-28 | Schaltungsanordnung zur Codierung von Datenbitfolgen |
Country Status (7)
| Country | Link |
|---|---|
| US (1) | US4115768A (de) |
| JP (2) | JPS5526494B2 (de) |
| CA (1) | CA1075817A (de) |
| DE (1) | DE2508706C2 (de) |
| FR (1) | FR2269823B1 (de) |
| GB (1) | GB1507066A (de) |
| IT (1) | IT1034374B (de) |
Families Citing this family (48)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4146909A (en) * | 1977-11-21 | 1979-03-27 | International Business Machines Corporation | Sync pattern encoding system for run-length limited codes |
| JPS5652454A (en) * | 1979-10-05 | 1981-05-11 | Hitachi Ltd | Input/output control method of variable word length memory |
| EP0059224B1 (de) * | 1980-09-05 | 1986-12-03 | Mitsubishi Denki Kabushiki Kaisha | Binäres datenkodier- und -dekodiersystem |
| JPS57111598A (en) * | 1980-12-27 | 1982-07-12 | Casio Computer Co Ltd | Compressing expanding system for digital electronic musical instrument |
| US4398225A (en) | 1981-04-24 | 1983-08-09 | Iomega Corporation | Combined serializer encoder and decoder for data storage system |
| US4437377A (en) * | 1981-04-30 | 1984-03-20 | Casio Computer Co., Ltd. | Digital electronic musical instrument |
| US4451819A (en) * | 1981-06-22 | 1984-05-29 | Memorex Corporation | Method and apparatus for decoding binary data |
| JPS5812115A (ja) * | 1981-07-14 | 1983-01-24 | Hitachi Ltd | 記録タイミング補正方式 |
| US4413251A (en) * | 1981-07-16 | 1983-11-01 | International Business Machines Corporation | Method and apparatus for generating a noiseless sliding block code for a (1,7) channel with rate 2/3 |
| DE3176578D1 (en) * | 1981-09-25 | 1988-01-28 | Mitsubishi Electric Corp | Encoding and decoding system for binary data |
| US4463344A (en) * | 1981-12-31 | 1984-07-31 | International Business Machines Corporation | Method and apparatus for generating a noiseless sliding block code for a (2,7) channel with rate 1/2 |
| JPS58169305A (ja) * | 1982-03-30 | 1983-10-05 | Sony Corp | 2値符号の変換方法 |
| DE3232548A1 (de) * | 1982-09-01 | 1984-03-01 | Siemens AG, 1000 Berlin und 8000 München | Verfahren und schaltungsanordnung zur umcodierung von codewoertern |
| NL8203575A (nl) * | 1982-09-15 | 1984-04-02 | Philips Nv | Werkwijze voor het coderen van een stroom van databits, inrichting voor het uitvoeren van de werkwijze en inrichting voor het decoderen van een stroom databits. |
| US4484176A (en) * | 1982-11-24 | 1984-11-20 | Storage Technology Corporation | Run length limited data encoder |
| JPS59167165A (ja) * | 1983-03-11 | 1984-09-20 | Toshiba Corp | 可変長符号化復号化方式 |
| WO1985001402A1 (en) * | 1983-09-19 | 1985-03-28 | Storage Technology Partners Ii | Sync pattern encoding system for data sectors written on a storage medium |
| US4538189A (en) * | 1984-02-06 | 1985-08-27 | Storage Technology Corporation | (1,8) Data encoder/decoder |
| US4571575A (en) * | 1984-05-03 | 1986-02-18 | Sunol Systems Incorporated | Synchronization-promoting data coding method |
| JPS61190758A (ja) * | 1985-02-18 | 1986-08-25 | Akai Electric Co Ltd | チヤネルビツト系列をデ−タビツト系列に復号する方法及び復号装置 |
| US4684921A (en) * | 1985-06-13 | 1987-08-04 | International Business Machines Corporation | RLL (1,7) encoder with single state bit |
| US4688016A (en) * | 1985-06-13 | 1987-08-18 | International Business Machines Corporation | Byte-wide encoder and decoder system for RLL (1,7) code |
| JPS62102482A (ja) * | 1985-10-28 | 1987-05-12 | Matsushita Electric Ind Co Ltd | 情報記録再生装置 |
| JP2592054B2 (ja) * | 1986-01-31 | 1997-03-19 | シャープ株式会社 | データ記録方法 |
| JPS62298234A (ja) * | 1986-06-13 | 1987-12-25 | インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション | 非対称ランレングス制限コ−ド化方法 |
| US4737765A (en) * | 1986-10-22 | 1988-04-12 | Magnetic Peripherals Inc. | 2,7 Code decoder with no more than 3 bits error propagation |
| JPS63167428A (ja) * | 1986-12-27 | 1988-07-11 | Toshiba Corp | 情報記憶装置 |
| US4853696A (en) * | 1987-04-13 | 1989-08-01 | University Of Central Florida | Code converter for data compression/decompression |
| US4914438A (en) * | 1987-09-01 | 1990-04-03 | Hitachi, Ltd. | Digital information coding system |
| US4882583A (en) * | 1988-05-31 | 1989-11-21 | International Business Machines Corporation | Modified sliding block code for limiting error propagation |
| US5486828A (en) * | 1989-04-06 | 1996-01-23 | Canon Kabushiki Kaisha | Coding/decoding method and apparatus therefor |
| JP2690154B2 (ja) * | 1989-09-01 | 1997-12-10 | 日本電気ホームエレクトロニクス株式会社 | 1,5符号変調方法 |
| US5136290A (en) * | 1990-06-18 | 1992-08-04 | Bond James W | Message expansion decoder and decoding method for a communication channel |
| US5099237A (en) * | 1990-07-10 | 1992-03-24 | Research Corporation Technologies, Inc. | Method and apparatus for providing maximum rate modulation or compression encoding and decoding |
| EP0546795B1 (de) * | 1991-12-09 | 1997-03-05 | Matsushita Electric Industrial Co., Ltd. | Digitale Modulator- oder Demodulatorschaltung |
| US5424881A (en) * | 1993-02-01 | 1995-06-13 | Cirrus Logic, Inc. | Synchronous read channel |
| JPH0821741A (ja) * | 1994-07-08 | 1996-01-23 | Seikosha Co Ltd | 物体検知装置 |
| US5646950A (en) * | 1994-11-18 | 1997-07-08 | Seagate Technology, Inc. | Matched spectral null codes for partial response channels |
| US5686915A (en) * | 1995-12-27 | 1997-11-11 | Xerox Corporation | Interleaved Huffman encoding and decoding method |
| US6665359B1 (en) | 1999-10-28 | 2003-12-16 | Stmicroelectronics, Inc. | Digital data separator |
| TWI268047B (en) * | 2000-03-22 | 2006-12-01 | Lg Electronics Inc | Method and apparatus for coding information, method and apparatus for decoding coded information, method of fabricating a recording medium, the recording medium and modulated signal |
| JP3810360B2 (ja) * | 2002-10-31 | 2006-08-16 | 三菱電機株式会社 | 変調装置及び変復調システム及び変調方法及び変調プログラム及び変調プログラムを記録したコンピュータ読み取り可能な記録媒体 |
| US9230596B2 (en) * | 2012-03-22 | 2016-01-05 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for variable rate coding in a data processing system |
| US10740391B2 (en) * | 2017-04-03 | 2020-08-11 | Wipro Limited | System and method for generation of human like video response for user queries |
| EP3700093B1 (de) * | 2019-02-20 | 2024-07-03 | European Space Agency | Komprimierung und dekomprimierung von datenstrukturen mit fester länge |
| JP6912547B2 (ja) | 2019-11-22 | 2021-08-04 | 株式会社バンダイ | プログラム、端末、ゲームシステム及び提供装置 |
| GB2593691B (en) | 2020-03-30 | 2022-08-24 | Imagination Tech Ltd | Efficient encoding methods |
| GB2593690B (en) * | 2020-03-30 | 2022-11-09 | Imagination Tech Ltd | Efficient encoding methods |
Family Cites Families (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US2973511A (en) * | 1957-08-28 | 1961-02-28 | Ibm | Code converter |
| US3016527A (en) * | 1958-09-04 | 1962-01-09 | Bell Telephone Labor Inc | Apparatus for utilizing variable length alphabetized codes |
| US3172097A (en) * | 1961-07-27 | 1965-03-02 | Edward H Imlay | Binary to binary-coded-decimal converter |
| US3274378A (en) * | 1961-12-28 | 1966-09-20 | Ibm | Data transfer and conversion circuit |
| FR1405419A (fr) | 1964-05-29 | 1965-07-09 | Sagem | Transcodeur télégraphique |
| US3716851A (en) * | 1971-02-09 | 1973-02-13 | Bell Telephone Labor Inc | Self-synchronizing sequential encoding systems |
| US3691554A (en) * | 1971-06-18 | 1972-09-12 | Peter Marschall | Code converters |
| US3921143A (en) * | 1971-12-29 | 1975-11-18 | Ibm | Minimal redundancy encoding method and means |
| US3810111A (en) * | 1972-12-26 | 1974-05-07 | Ibm | Data coding with stable base line for recording and transmitting binary data |
| US4032979A (en) * | 1972-12-26 | 1977-06-28 | Digital Development Corporation | Method and system for encoding and decoding digital data |
-
1975
- 1975-02-28 DE DE2508706A patent/DE2508706C2/de not_active Expired
- 1975-03-18 IT IT7521374A patent/IT1034374B/it active
- 1975-03-25 FR FR7510339A patent/FR2269823B1/fr not_active Expired
- 1975-04-02 CA CA223,702A patent/CA1075817A/en not_active Expired
- 1975-04-08 GB GB14280/75A patent/GB1507066A/en not_active Expired
- 1975-04-08 JP JP4192075A patent/JPS5526494B2/ja not_active Expired
-
1977
- 1977-06-20 US US05/807,999 patent/US4115768A/en not_active Expired - Lifetime
-
1979
- 1979-10-09 JP JP54129587A patent/JPS5857774B2/ja not_active Expired
Also Published As
| Publication number | Publication date |
|---|---|
| US4115768A (en) | 1978-09-19 |
| JPS5857774B2 (ja) | 1983-12-21 |
| JPS50142131A (de) | 1975-11-15 |
| FR2269823A1 (de) | 1975-11-28 |
| DE2508706A1 (de) | 1975-11-20 |
| GB1507066A (en) | 1978-04-12 |
| JPS5526494B2 (de) | 1980-07-14 |
| JPS5547539A (en) | 1980-04-04 |
| IT1034374B (it) | 1979-09-10 |
| FR2269823B1 (de) | 1977-04-15 |
| CA1075817A (en) | 1980-04-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE2508706C2 (de) | Schaltungsanordnung zur Codierung von Datenbitfolgen | |
| DE2311220A1 (de) | Digital-informations-verarbeitungsvorrichtung zur zeichenerkennung | |
| CH656760A5 (de) | Verfahren und anordnung zur sicherstellung der start-synchronisation eines aus bit-impulsfolgen bestehenden telegramms innerhalb eines empfaengers. | |
| DE2652459C2 (de) | Umsetzvorrichtung für Binärsignale variabler Länge | |
| DE2905328A1 (de) | Verfahren und vorrichtung zur assoziativen informationswiedergewinnung | |
| DE2227148A1 (de) | Verfahren zur verarbeitung digitaler daten | |
| DE2162486A1 (de) | Digital gesteuerter Impulsgenerator | |
| DE2421130C2 (de) | ||
| DE3015449C2 (de) | Frequenzdekoder | |
| DE1474040B2 (de) | Einrichtung zur Bildung von Speicheradressen | |
| DE2153542A1 (de) | Codierer für eine binäre Informationsbitfolge | |
| DE2340250C2 (de) | Verfahren und Vorrichtung zur redundanzreduzierenden Codierung eines aus Blöcken zu je N Bits bestehenden Nachrichtenstromes | |
| DE2612750A1 (de) | Multipliziereinrichtung | |
| DE1803222B2 (de) | Verfahren zum zusammenfassen pulscodierter nachrichten | |
| DE1125208B (de) | Elektrisches Vergleichsschaltungssystem | |
| DE1119567B (de) | Geraet zur Speicherung von Informationen | |
| DE2525394C3 (de) | Verfahren und Schaltungsanordnung zum Übertragen, Einspeichern und Ausspeichern von binärcodierten Datenblöcken | |
| DE1957600C3 (de) | ||
| DE2457435B2 (de) | Schaltung zur Wiedergewinnung von Daten aus einem Daten- und Taktsignale enthaltenden Signalzug | |
| DE2857403A1 (de) | Worterkennungsverfahren und einrichtung | |
| DE3046772C2 (de) | Taktgenerator | |
| DE1474017C3 (de) | Datenverarbeitungsanlage | |
| DE3302885A1 (de) | Verfahren und vorrichtung zur multiplikation | |
| DE3609056A1 (de) | Zaehlerschaltkreis | |
| DE2603294A1 (de) | Vorrichtung zur synchronisierung einer binaeren informationsfolge mit einer anderen |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| OD | Request for examination | ||
| D2 | Grant after examination | ||
| 8364 | No opposition during term of opposition | ||
| 8339 | Ceased/non-payment of the annual fee |