DE2540472B2 - Verfahren und Schaltungsanordnungen zur Codierung binärer Daten unter Anwendung eines abgewandelten Null-Modulationscodes - Google Patents

Verfahren und Schaltungsanordnungen zur Codierung binärer Daten unter Anwendung eines abgewandelten Null-Modulationscodes

Info

Publication number
DE2540472B2
DE2540472B2 DE2540472A DE2540472A DE2540472B2 DE 2540472 B2 DE2540472 B2 DE 2540472B2 DE 2540472 A DE2540472 A DE 2540472A DE 2540472 A DE2540472 A DE 2540472A DE 2540472 B2 DE2540472 B2 DE 2540472B2
Authority
DE
Germany
Prior art keywords
binary
data element
pair
binary data
data
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.)
Granted
Application number
DE2540472A
Other languages
English (en)
Other versions
DE2540472A1 (de
DE2540472C3 (de
Inventor
Norman Ken San Jose Calif. Ouchi (V.St.A.)
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE2540472A1 publication Critical patent/DE2540472A1/de
Publication of DE2540472B2 publication Critical patent/DE2540472B2/de
Application granted granted Critical
Publication of DE2540472C3 publication Critical patent/DE2540472C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/14Digital recording or reproducing using self-clocking codes
    • G11B20/1403Digital recording or reproducing using self-clocking codes characterised by the use of two levels
    • G11B20/1423Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
    • G11B20/1426Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding
    • 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/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/4025Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code constant length to or from Morse code conversion

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Dc Digital Transmission (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

20
Die Erfindung betrifft ein Verfahren und Schaltungsanordnungen zur Codierung binärer Daten unter Anwendung eines abgewandelten Null-Modulationscodes entsprechend dem Oberbegriff des Patent anspruchs 1.
Ein lauflängenbegrenzter Code, der Wörter verschieden großer Längen verwendet, ist z. B. in der DE-OS jo
22 27 148 beschrieben worden. Der darin genannte lauflängenbegrenzte Code ist dadurch gekennzeichnet, daß aufeinanderfolgende binäre Einsen einer codierten Bitfolge durch nicht weniger als d und nicht mehr als k binäre Nullen voneinander getrennt sind. Die Wahl von y-, d und k hängt dabei vom spezieilen gewählten Code ab. Die codierten Daten werden in Wortgruppen verschiedener Länge verarbeitet. Die Längen der codierten Wörter haben ein konstantes Verhältnis zur Länge der Bitfolgen, die zu ihnen gehören.
Eine Form lauflängenbegrenzter Codes ist der Null-Modulationscode entsprechend der DE-OS
23 64 212. Dieser Null-Modulationscode ist von Vorteil bei Schaltungsanordnungen, die ein auf eine Gleichspannungskomponente ansprechendes Bauelement ent- <r> halten, und wenn Polaritätsunsymmetrien auftreten.
Bauelemente dieser Art sind Kondensatoren und Induktivitäten, die als Integratoren oder in Transformatoren verwendet werden, welche aufladbar sind oder Spannungs- oder Stromanstiege verwenden. Die auftretenden charakteristischen Werte tendieren zu Abweichungen und Pegelveränderungen, wobei nichtlineare Variationen der Takt- und Signalwellenformen unter Beeinflussung der Datensignale und ggf. mit Synchronisationsausfällen auftreten können. r.
Der Null-Modulationscode löst dieses Problem. Beim Null-Modulationscode wird jedes Datenelement in Form eines Paares von Binärelementen codiert. Jedes Binärelementpaar wird in eine NRZl-Wellenform umgewandelt Die Null-Modulationscodierung entspre- ω chend der DE-OS 23 64 212 sieht maximal drei hintereinanderfolgend abgegebene Null-Elemente zwischen ohnehin unterbrochen abgegebenen Eins-Elementen vor. Ein Taktübergang tritt dabei mindestens bei einer von zwei benachbarten Paar-Elementperioden tr> auf. Rückwärts- und vorwärtsschauende, aufeinanderfolgende Nullen beobachtende, so bezeichenbare Paritätsooerationen werden zur Bestimmung verwendet, ob und weiche charakteristischen Datenfolgen zu codieren sind. Dazu werden Schaltungsanordnungen benutzt, die n>\ Bits vorausschauen; gebildete Null-Paritätsbits werden jeweils nach η Bits eingefügt Dabei ist zu beachten, daß diese Paritätsoperationen nicht identisch sind mit gemeinhin bekannten Paritätsoperationen zur Fehlersicherung bei der Nachrichtenübermittlung.
Gewisse Nachteile und zwingende Notwendigkeiten bezüglich der Komplexität und des Aufwandes des erforderlichen, um jeweils n> 1 Bits vorausschauenden Schaltkreise sind bei der Ausführung gemäß DE-OS 23 64 212 gegeben.
Die Aufgabe der vorliegenden Erfindung ist die Schaffung eines Verfahrens zur Anwendung eines Null-Folgen abwandelnden Null-Modulationscodes und einer Schaltungsanordnung zur Durchführung dieses Verfahrens, wobei gegenüber dem vorgenannten Stande der Technik weniger aufwendige Maßnahmen bezüglich der Lauflängenbegrenzung erforderlich sind; dabei soll eine Nullmodulationscodierung gefunden werden, die nur eine Vorausschau von jeweils einem Bit und somit wenig und nur relativ einfache Schaltkreise benötigt
Lösungen dieser Aufgabe sind im Verfahrensanspruch 1 und im Anordnungsanspruch 2 gekennzeichnet Vorteilhafte Ausgestaltungen sind in den Unteransprüchen beschrieben.
Entsprechend dem beschriebenen Verfahren wird ein abgewandelter Null-Modulationscode verwendet der eine (d, .^-Begrenzung von (1,4) anwendet Ein Maximum von vier binären Nullen kann dabei zwischen zwei aufeinanderfolgenden Einsen auftreten. Die Codefolge 100001 wird jedoch nicht wiederholt zugelassen ohne Vorkehrung einer kürzeren Lauflänge binärer Nullen. Jedes Element d„ eines Wortes wird durch zwei Binärbits (ab) verkörpert Die Codierung von Daten erfordert dabei als Eingangsgrößen das gegenwärtige, das vorangehende und das nächste Datenbit und eine rückwärtsgeltende Null-Parität Bei der Decodierung ist jeweils das gleichzeitige Vorliegen des gegenwärtigen, des vorangehenden und des nächsten Bitpaares mit einer Verzögerung von nur einem Bit erforderlich.
Ein Ausführungsbeispiel der Erfindung ist in den Zeichnungen dargestellt und wird anschließend näher erläutert
F i g. 1 ist ein Zustandsdiagramm, das die fünf Eingabefälle bei einer entsprechend der vorliegenden Erfindung abgewandelten Null-Modulationscodierung darstellt
F i g. 2 zeigt das Blockschaltbild einec Codierers zur Ausführung der Erfindung und
F i g. 3 einen entsprechenden Decodierer.
Tabelle 1 zeigt dabei mögliche Signalfolgen und Bedingungen für Null- und Eins-Elemente bei der Codierung und
Tabelle 2 das entsprechende für die Decodierung.
Tabelle 3 zeigt eine entsprechend der vorliegenden Erfindung mögliche Datenfolge mit einigen Erklärungen.
Tabelle 4 zeigt den Datenfluß und die logischen Bedingungen für fin Codierbeispiel entsprechend F i g. 3 und
Tabelle 5 zeigt wiederum die entsprechenden Einzelheiten für ein Decodierbeispiel mit einem Decodierer gemäß F i g. 4.
Das Diagramm für die fünf möglichen Zustände gemäß F i g. 1 zeigt die einzelnen Lagen in Kreisen A bis K Die obere Angabe in den einzelnen Kreisen (0, + 2 oder —2) zeigt die Größe des gespeicherten Zustands, der während eines vorgegebenen Zeitintervalls aufge- ί laufen ist und die Geschichte der vorangehenden Datenfolge kennzeichnet. Dieser Zustand wird vom Codiererausgang dem Integrator 30 zugeführt, der entweder einen Ladekondensator, einen Transformator oder auch eine mit einem magnetischen Wandler zur ι ο Aufzeichnung von Signalen auf einem magnetischen Medium gekoppelte Induktivität enthalten kann. Beim beschriebenen Ausführungsbeispiel ist die maximale ansammelbare Zustandsgröße für eine Datenbitperiode nie größer als + oder - 2. ι,
Die unteren Werte unter den waagerechten Trennungslinien innerhalb der Kreise gemäß F i g. 1 bezeichnen das Ende der vorangehend möglichen Binärwertfolge. Diese Folgen lassen die Zahlen von Nullen erkennen, die vorangehenden Einsen folgen. >o
Zwischen den einzelnen Zustandskreisen sind Linien dargestellt, die zum nächstmöglichen Zustand führen, und zwar abhängig von der gegenwärtig zu codierenden und der nächstfolgenden Elementanordnung. Dabei wird immer mit dem Ausgangszustand B begonnen. Für 2r> diesen gilt, daß noch keine Daten angefallen sind und noch kein Zustandswert angesammelt ist. Zu Beginn kann jede beliebige Codefolge gegeben werden; ausgenommen jedoch (00).
Vom Zustand B führt eine Linie zum Zustand C, wenn jo ein Datenelement 0 codiert werden soll, oder zum Zustand E, wenn ein Datenelement 1 zu codieren ist. Entsprechend diesen Linien wird zur Codierung eines Datenelements 0 ein paariges Element (10) verwendet, wohingegen für ein zu codierendes Datenelement 1 ein r, paariges Element (01) verwendet wird.
Beim Zustand E beläßt ein weiteres Datenelement 1 den herrschenden Zustand. Wenn jedoch ein Datenelement 0 eine Verzweigung zum Zustand C folgen läßt, wird dieses Datenelement 0 als paariges Element (00) codiert
Vom Zustand C führen Linien zu den Zuständen A, B und D. Beim Zustand C wird die Vorkehrung des Voranschauens um 1 Bit benutzt Bei den anderen vier Zuständen wird nur das zu codierende Datenelement zur Bestimmung des nächsten Zustands berücksichtigt Wenn jedoch im Zustand C das nächste Datenelement eine Ϊ ist, sind zwei Datenelemente zu analysieren, nämlich das Datenelement 1, das codiert werden soll, und das nachfolgende Datenelement Beim Zustand C können zwei Datenelemente in noch zu beschreibenden Speicherregistern gemäß F i g. 3 und 4 als Kombinationen der Datenelemente 10 oder 11 abgefühlt werden. Bei den Datenelementen 10 führt eine Linie zum Zustand A und ein paariges Element (01) wird gegeben. Bei Daten 11 führt eine Linie zum Zustand D und ein pariges Element (10) wird gegeben. Bei einem Datenelement 0 wird zum Zustand B gegangen und ein paariges Element (10) gegeben.
Beim Zustand A, der nach der Codierung der 1 der Einzelelemente 10 erreicht wird, ist nur die weitere Verzweigung zur Codierung eines Datenelementes 0 in Form des paarigen Elements (00) möglich. Die Codierung eines Datenelements 1 beim Zustand A ist nicht erlaubt, während die Vorausschau um ein Bit sicherstellt, daß nur ein Datenelement 0 codiert wird Die einzige Linie vom Zustand A führt zum Ausgangszustand £
Aus dem Zustand D der durch Codierung des erster 1 -Bits der Datenelemente 11 erreicht wird, ist die einzig mögliche Weiterverzweigung die unter Einsetzung des paarigen Wertes (00) für das zweite Datenelement 1 Die Codierung eines Datenelementes 0 ist an dieser Stelle nicht relevant; die vorangehende Vorausschau um 1 Bit stellt sicher, daß jetzt nur ein Datenelement 1 codiert werden kann. Die entsprechende Linie vom Zustand D führt zurück zum Zustand C
Die Regeln für das Codieren und Decodieren entsprechend der vorliegenden Erfindung sind in den Tabellen 1 und 2 zusammengestellt. Zur Codierung eines Datenelements 0 wird ein paariger Wert (aobo) von (00) oder (10) verwendet. Der paarige Wert (00) wird gegeben, wenn das vorangehende Datenelement d- 1 ein 1-Bit war, das als (01) codiert wurde. Wenn dies nicht der Fall ist, dann wird der paarige Wert (10) gegeben. Zur Codierung eines Datenelements 1 wird einer der paarigen Werte (10) oder (00) oder (01) gegeben. Dies ist im untern Teil der Tabelle 1 dargestellt.
Es ist zu beachten, daß die Funktion P(B) die rückwärtsschauende Null-Parität betrifft die durch die Anzahl von insgesamt angefallenen Null-Elementen, die vor dem jeweils augenblicklichen Datenelement zu codieren waren, bestimmt wird. Die erste Null der Folge insgesamt ergibt die Paritätsfunktion P(B)=X. Die zweite Null ergibt P(B) = 0, die dritte Null wiederum P(B) = 1 usf. Der aufgelaufene ffÄj-Wert ist übrigens nur bei der Codierung eines Datenelements 1 von Interesse. Siehe Tabelle 1.
Diese Null-Paritätsfunktion ist also nicht identisch mit einer bekannten Paritätsoperation zur Fehlersicherung bei der Übermittlung, deren es wiederum auch verschiedene unterschiedliche Möglichkeiten gibt: Vertikale Redundanzprüfung VRC, longitudinal Redundanzprüfung LRC, zyklische Redundanzprüdung CRC zum Beispiel.
TABELLE 1 CO
DIERTE
DATEN
BEDINGUNGEN
CODIERUNG (aobo)
DATEN (00) VORANGEH. DATEN-
ELEM. rf_, = 1,
CODIERT ALS (01).
do (10) ABWEICHEND VON
VORSTEH. FALL.
0 (10) (P(B) = 1) &
1
(NÄCHSTES DATENELEM. d+l = 1)&
(VORANGEH. DATEN-ELEM. NICHT d^ = 1,
ALS (10) CODIERT).
(00) VORANGEH. DATEN-ELEM. rf-, = 1,
ALS (10) CODIERT.
(01) ABWEICHEND VON
BEDINGUNGEN FÜR
(1O)UND(OO).
Tabelle 2 zeigt die Grundsätze der Decodierung für die drei möglichen paarigen Codierungswerte. Das Paar (01) ergibt jedesmal ein Datenelement 1. Die anderen paarigen Werte ergeben entweder das Element 1 oder 0,
und zwar in Abhängigkeit vom vorangehenden oder nachfolgenden Paarwert Dabei ergibt eine codierte Paarwertfolge (10) (00) immer die decodierten Binärelemente 11.
TABELLE 2 CO BEDINGUNGEN
DECODIERUNG DIERTE
DECO DATEN
DIERTE
DATEN (00) VORANGEH. BINÄRPAAR
do (a-ib-0 = (\0).
1 ABWEICHEND VON
VORSTEH. FALL.
0 (10) NÄCHSTES PAAR
(a+ib+l) = (00).
1 ABWEICHEND VON
VORSTEH. FALL.
0 (01) UNBEDINGT.
1
Tabelle 3 zeigt als Beispiel die Codierung einer Binärdatenfolge unter Angabe des Durchlaufens der einzelnen Zustände, begonnen mit dem Zustand B. Die codierten paarigen Werte (aobo) werden entsprechend
der dritten Zeile abgegeben. Die zugehörige Paritätsfunktion P(B) ist mit der vierten Zeile dargestellt In der fünften Zeile sind die akkumulierten Zustandswerte +2, - 2 oder 0 angegeben.
TABELLE 3
DATEN 00100011001000
ZUSTAND BCBECBCDCBCABCB CODIERT (10) (10) (10) (10) (10) (10) (10) (10) (10) (10) (10) (10) (10) (10)
PfB) 010010111011010
RELATIVE
AKKUMULIERTE 0 +20 0 +20 +20 +20 +2-20 +20 ZUSTANDSWERTE
Fig.2 zeigt eine Codiererschaltungsanordnung entsprechend der vorliegenden Erfindung, die seriell eine Folge von Daten über den Eingang eines Flipflops 1 aufnimmt; dieses Flipflop ist die erste Stufe d+i eines Speicherregisters. Jedes einzelne der nacheinander ankommenden Datenbits wird dem Flipflop 1 im Takte eines mit der einlaufenden Datenfrequenz arbeitenden Oszillators zugeführt. Mh jedem dem Flipflop 1 zugeführten Pitenbit werden die bereits vorgespeicherten Bits als D; enelemente nach rechts in die Flipflops 2 und 3 weitergeschoben. Die verwendeten Taktimpulse werden vom vorgesehenen Oszillator als «-TAKT und als fr-Takt zugeführt Beide Takte zusammen arbeiten dabei mit der doppelten Datenfrequenz. Die Takte für M und fc sind um 180° C gegeneinander phasenversetzt Die Flipflops des Speicherregisters werden mit der Datenfrequenz vorwärts getaktet Der Block 7 enthalt ein
Antivalenz-ODER-Glied bekannter Art
Eine zugeführte Datenfolge stellt entsprechend Tabelle 4 die Schaltzustande der Flipflops 1 bis 3 sowie weiterer Flipflops 4,5 und 6 ein. Die Schaltzustinde der übrigen in Fig.2 dargestellten Schaltglieder 7 bis 15
es sind ebenfalls in der Tabelle 4 aufgezeigt In der Tabelle vorhandene »m« und Wxr zeigen an, daß die jeweils angesteuerten UND-Glieder zur «-Taktzeit bzw. zur 6-Taktzeit durchlässig sind.
ίο
TABELLE 4
CODIERBEISPIEL
DATEN AM EINGANG = 1 10001 1 1001 100
AM ANFANG sind FF 4, 5, 6 = 0 (d. h. aus)
2 FF 3 _ 4 5 1 6 0 7 8 1 14 1 9 1 10 0 11 13 15 CO
d-\ P(B) a-\ A-i AV O O & & & & & DIERTE
1 0 0 0 (01) 0 (00) 0 0 3) (1 1 1 )) (00) (01 0 ) (00) 0 0 b AUSG.
1 1 0 0 1 0 0 1 1 0 0 b b FOLGE
0 1 0 0 1 1 0 0 1 0 0 0 0 an
1 0 0 1 0 0 0 1 0 1 a 0 0 0 12
rf+i 0 0 0 1 0 1 1 0 1 a 0 0 0 (ab)
1 1 0 1 0 1 1 0 1 0 a 0 0 01
O 1 1 1 0 1 0 0 0 0 0 0 0 01
O 1 1 0 0 1 0 1 1 0 0 b 0 00
O 0 1 0 1 0 0 0 1 0 0 0 0 10
1 0 0 ( 0 0 1 1 0 1 a 0 0 0 10
1 1 0 1 0 1 1 0 1 0 a 0 0 10
1 1 1 1 0 1 0 0 0 0 0 0 0 00
O 0 1 0 0 0 1 0 1 a 0 0 0 01
O 0 0 1 0 1 1 0 1 a 0 0 0 00
1 DATEN AM 10
1 EINGANG = 0 0 0 1 1 10
O COD. AUSG. 00
O FOLGE = ) (10) (1 (10) (10) (00) 10
O 10
0 0
0
(10) (10)
1
((
M)
40
Zu Anfang werden die Flipflops 3 bis 6 auf 0 gelöscht Die Darstellung gemäß Tabelle 4 zeigt die Zustände der einzelnen logischen Bausteine des Codierers gemäß Fig.2 jeweils zum Zeitpunkt des Einschiebens eines Datenelements in das Flipflop 1 des Speicherregisters. Die nachfolgenden waagerechten Reihen gelten jeweils für die Zeitpunkte, zu denen die aufeinanderfolgenden Binärelemente in das Speicherregister mit den Flipflops 1, 2 und 3 eingegeben werden. Die codierten Datenelemente erscheinen in der senkrechten Spalte unter der Überschrift »Codierte Ausgangsfolge« als paarige Ausgabeelemente, die zum Block 30 abgegeben werden.
TABELLE 5
DECODIERBEISPIEL
COD. FOLGE = (O0I)0)
(01) (01) (00) (10) (10) (10) (00) (01) (00) Zur Decodierung der codierten Datenelemente, die z.B. als aufgezeichnete paarige Binärwerte einem speichernden Medium entnommen werden, ist eine Schaltungsanordnung gemäß F i g. 3 anwendbar. Die codierten Daten werden dem ersten Flipflop 20 eines fünfstufigen Speicherregisters zugeführt, das hinter den Ausgängen einzelner seiner Stufen zwei UND-Glieder 21 und 22 aufweist Die Darstellung gemäß Tabelle 5 kennzeichnet die Schaltzustände der einzelnen Bauteile des betrachteten Decodierers zu den Zeitpunkten, zu denen die paarigen Werte in Binärfolge dem Flipflop 20 zugeführt werden.
AM ANFANG: FF i>_,
(10) (10) (00)
= 1 (d. h. ein)
(10) (10)
(XX)
17 FF a+l A+i & LTG. & DE-
COD.
DA-
TEN
an
19 20 22 23 21 O
A-i Ao 24
16 18
(0 (0 (0
(0 D
(0 0)
(1 0)
0 0 0
1
1
0
0
1
0
1
1
0
Fortsetzung
12
17
FF
a+i 0+
19 20
(1 0)
(1 0)
(O 0)
(0 D
(0 0)
(1 0)
(1 0)
(0 0)
(1 O)
(1 0)
22
LTG. &
23 21
0 0
0 0
0 1
0 0
1 1
0 0
0 0
0 1
0 0
0 0
0 0
DE-COD. DATEN
an
O 24
0 (1 0)
0 (1 0)
0 (1 0)
0 (0 0)
0 (0 D
1 (0 0)
0 (1 0)
0 (1 0)
0 (0 0)
0 (1 0)
0 (1 0)
CODIERTE
FOLGE = (01)
DECOD.
DATEN = 1
0
0
0
1
1
0
0
0
1
0
0
0
0
1
1
1
0
0
1
1
0
0
(01) (01) (00) (10) (10) (10) (00) (01) (00) (10) (10) (00) (10) (10) 1000111001 100
Zu Beginn muß im Decodierer das Flipflop 16 eingeschaltet sein, wohingegen die anderen Flipflops 17 bis 20 ausgeschaltet sein müssen. Die Decodierung beginnt, wenn das erste Bit zu decodierender Daten im Flipflop 17 erscheint Zu jedem Zeitpunkt, zu dem die paarigen Werte (aobo) in den Flipflops 17 und 18 gespeichert stehen, steht das nachfolgende Paar (a+\b+\)\n den Flipflops 19und20.
Die in die UND-Glieder 21 und 22 und das ODER-Glied 24 eingegebenen Werte bestimmen die Schaltzustände dieser Elemente und damit die am Ausgang abnehmbare Folge von decodierten Daten. Wenn z. B. der Paarwert (00) in den Flipflops 19 und 20 steht, dann gibt das UND-Glied 22 ein 1-Signal über das ODER-Glied 24 ab. Immer dann, wenn das Flipflop 18 eingeschaltet ist, wirkt dessen Ausgangssignal über die Leitung 23 direkt über das ODER-Glied 24 als Datensignal 1 zum Ausgang durch. Die Flipflops werden mit doppelter Datenfrequenz vorwärts getaktet Auf diese Weise werden die gespeicherten Daten wiedergewonnen und mit Datenfrequenz am Ausgang der Schaltungsanordnung gemäß F i g. 3 verfügbar.
Eine hervorstechende Eigenschaft dieser Erfindung ist, daß nur um ein Bit vorausgeschaut werden muß. Des weiteren können bis zu vier binäre O-Bits hintereinander codiert werden, wobei sich eine hohe Packungsdichte der codierten Daten erzielen läßt Es sind dabei nur fünf verschiedene logische Zustände für die Verzweigungen gemäß F i g. 1 zu beachten, und somit läßt sich der Schaltkreisaufwand relativ gering halten.
Zusammenfassung
Es wurde eine Verarbeitung von Datenelementen unter Anwendung eines abgewandelten Null-Modulationscodes beschrieben. Dieser Null-Modulationscode ergibt eine um 0 symmetrische Wellenform. Jedes ursprüngliche Datenelement 1 oder 0 wird in Form paariger codierter Elemente wiedergegeben. Nur fünf verschiedene logische Zustände sind dabei möglich. Eine erleichterte Lauflängenbegrenzung ermöglicht ein ct/t-Codeverhältnis von 1,4, wobei k die untere Frequenzgrenze und d die obere Frequenzgrenze
so bestimmen. Diese durch den Bereich von d bis k gegebenen Grenzen bestimmen die Anzahl aufeinanderfolgender O-Digitalelemente, die zwischen je zwei 1-Elementen auftreten dürfen. Für die beschriebene Codierung ist nur eine Vorausschau um jeweils ein Bit erforderlich.
Hierzu 2 Blatt Zeichnungen

Claims (6)

Patentansprüche:
1. Verfahren zur Codierung binärer Daten unter Anwendung eines zusammenhängende O-Bitfolgen nur in begrenzter Länge abgebenden, nach dieser Eigenschaft bezeichneten Null-Modulationscodes,
bei dem aufeinanderfolgende binäre 1 -Bits nur durch minimal ein und maximal vier binäre O-Bits getrennt vorkommen und
bei dem für eine Folge seriell anfallender Binärdatenelemente pro eingegebenes Binärdatenelement je ein Binärdatenpaar abgegeben wird, dadurch
gekennzeichnet, daß in Abhängigkeit von fünf möglichen Codierfolge-Bedingungen (A bis E gemäß F i g. 1) ein anfallendes O-Bit entweder in ein Binärdatenpaar (00) oder (10) und ein anfallendes 1-Bit entweder in ein Binärdatenpaar (10) oder (00) oder (01) umcodiert wird nach den in der nachfolgenden Tabelle angegebenen Regeln, wobei die gerad- oder ungeradzahüge Summe vorangehend insgesamt angefallener zu codierender O-Bits bei der Codierung des nächstfolgend anfallenden 1-Bits als Null-Paritätsfunktion P(B) = 1 bei ungerader 0-Zahl und P(B) = 0# 1 bei gerader 0-Zahl berücksichtigt wird:
ANFALLENDE
DATENELEMENTE
CODIERTE
BINÄR-
DATENPAARE
BEDINGUNGEN
(00)
(10)
(10)
(00) (01)
VORANGEH. DATENELEMENT rf_, = 1 CODIERT ALS (01).
ABWEICHEND VON VORSTEH. FALL.
(P(B)- 1)&
(NÄCHSTES DATENELEM. d+i = 1) &
(VORANGEH. DATENELEMENT NICHT d.x = 1 ALS (10) CODIERT).
VORANGEH. DATENELEMENT rf_, = 1 ALS (10) CODIERT.
ABWEICHEND VON BEDINGUNGEN FÜR (10) und (00).
2. Schaltungsanordnung zur Durchführung des Verfahrens nach Anspruch 1, gekennzeichnet durch ein Speicherregister, bestehend aus einer Reihe von Flipflops (1 bis 3) zur Eingabe der in einen lauflängenbegrenzten Code umzucodierenden Daten,
die Eingabe der zu codierenden Daten von der Quelle über die erste Stufe (Flipflop 1) dieses Speicherregisters,
eine Anordnung logischer Glieder (4 bis 15), die den Ausgängen der Stufen (Flipflops 1 bis 3) des Speicherregisters nachgeschaltet sind,
wobei am Ausgang dieser Gesamtschaltungsanordnung nach den gegebenen Regeln ein Binärpaar pro eingegebenes Binärdatenelement abnehmbar ist, und
Paritätserkenntnisse (7, 4) in Form eines antivalenten ODER-Gliedes mit einem nachgeschalteten Flipflop (4) innerhalb der Anordnung logischer Glieder (4 bis 15), wobei
das Flipflop (4) seinen bistabilen Zustand jeweils bei der Codierung jedes zugeführten Binärdatenelementes des Wertes 0 wechselt und für Steuerungszwecke innerhalb der Anordnung Signale abgibt, mit deren Hilfe für die Durchfünrung der lauflängenbegrenzten Codierung die Vorausschau auf ein dem jeweils zu codierenden Binärdatenelement nachfolgendes Datenelement begrenzbar ist.
3. Schaltungsanordnung nach Anspruch 2, gekennzeichnet durch die Zuführung zweier um 180° versetzter Taktimpulse (a-TAKT und /j-TAKT), wobei sich am Ausgang der Anordnung eine gegenüber der Eingangsfolgefrequenz verdoppelte Datenfolgelrequenz ergibt.
ν-, 4. Schaltungsanordnung nach Anspruch 2, dadurch
gekennzeichnet,
daß die vorgesehenen logischen Glieder (4 bis 15) ein eingegebenes Binärdatenelement (do) des Wertes 0 in ein Binärpaar (00) umsetzen, wenn das vorangehende Binärdatenelement (d-\) ein als Binärpaar (01) umcodiertes Binärdatenelement des Wertes 1 war, oder in ein Binärpaar (10), wenn diese Bedingung nicht gegeben ist,
daß ferner die logischen Glieder (4 bis 15) ein
4r> Binärdatenelement (da) des Wertes 1 in ein Binärpaar (10) umsetzen, wenn die Paritätsbedingung P(B) = 1 ist und das vorangehende Binärdatenelement (d-\) nicht ein als Binärpaar (10) codierter Wert 1 war, das nächste Binärdatenele-
r)0 ment ((/+1) jedoch den Wert 1 hat,
oder ein Binärpaar (00), wenn das vorangehende Binärdatenelement (d~\) ein als (10) codierter Wert 1 war,
oder in allen übrigen Fällen in ein Binärpaar (01).
V)
5. Schaltungsanordnung zur Durchführung der
Decodierung nach dem Verfahren gemäß Anspruch 1 codierter Binärdaten, gekennzeichnet durch
ein eine Reihe von Flipflops (20 bis 16) enthaltendes Speicherregister,
W) Zuführung einer nach dem genannten Verfahren codierten Folge von Binärpaaren (ab) zum Eingang des ersten Flipflops (20) dieses Speicherregisters und Zuführung der Ausgangssignale von den einzelnen Flipflops (20 bis 16) des Speicherregisters zu einer
h) Anordnung logischer Schaltglieder (21, 22, 24), an deren Ausgang die decodierte Datenfolge in der Form abnehmbar ist, wie sie zur Codierung eingegeben wurde.
6. Schaltungsanordnung nach Anspruch 5, dadurch gekennzeichnet,
daß ein codiertes Binärpaar (00) als Binärdatenelement des Wertes 1 decodiert wrd, wenn das vorangehende Binärpaar (10) war, daß jedoch das codierte Binärpaar (00) als Binärdatenelement des Wertes 0 decodiert wird, wenn das vorangehende Binärpaar nicht (10) war,
daß ein codiertes Binärpaar (10) als Binärdatenelement des Wertes 1 decodiert wird, wenn das ι ο nachfolgende Binärpaar (00) ist,
daß jedoch das codierte Binärpaar (10) als Binärdatenelemant des Wertes 0 decodiert wird, wenn das nachfolgende Binärpaar nicht (00) ist, und
daß ein codiertes Binärpaar (01) immer als Binärdatenelement des Wertes 1 decodiert wird.
DE2540472A 1974-11-01 1975-09-11 Verfahren und Schaltungsanordnungen zur Codierung binärer Daten unter Anwendung eines abgewandelten Null-Modulationscodes Expired DE2540472C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/519,951 US3995264A (en) 1974-11-01 1974-11-01 Apparatus for encoding and decoding binary data in a modified zero modulation data code

Publications (3)

Publication Number Publication Date
DE2540472A1 DE2540472A1 (de) 1976-05-06
DE2540472B2 true DE2540472B2 (de) 1980-02-14
DE2540472C3 DE2540472C3 (de) 1980-10-02

Family

ID=24070549

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2540472A Expired DE2540472C3 (de) 1974-11-01 1975-09-11 Verfahren und Schaltungsanordnungen zur Codierung binärer Daten unter Anwendung eines abgewandelten Null-Modulationscodes

Country Status (8)

Country Link
US (1) US3995264A (de)
JP (1) JPS5159214A (de)
BR (1) BR7507164A (de)
CA (1) CA1059636A (de)
DE (1) DE2540472C3 (de)
FR (1) FR2290094A1 (de)
GB (1) GB1470636A (de)
IT (1) IT1042693B (de)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4234897A (en) * 1978-10-05 1980-11-18 Ampex Corporation DC Free encoding for data transmission
US4437086A (en) 1978-10-05 1984-03-13 Ampex Corporation Limited look-ahead means
CA1140998A (en) * 1978-10-05 1983-02-08 Jerry W. Miller Dc free encoding for data transmission including limited look-ahead means
US4227184A (en) * 1978-12-19 1980-10-07 International Standard Electric Corporation Modified Miller Code encoder
US4290143A (en) * 1979-04-19 1981-09-15 Cincinnati Electronics Corporation Transmission method and apparatus wherein binary data bits are converted into barker words and vice versa
JPS55141852A (en) 1979-04-24 1980-11-06 Sony Corp Data converting system
GB2079566B (en) * 1980-05-16 1985-01-09 Racal Recorders Ltd Data encoding and/or decoding
GB2105500B (en) * 1981-06-16 1985-01-23 Motorola Ltd Data operated squelch
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
US4501000A (en) * 1981-07-27 1985-02-19 Sony Corporation Method of coding binary data
JPS5846751A (ja) * 1981-09-11 1983-03-18 Sony Corp Z値符号変調方法及び記録媒体
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
US4488142A (en) * 1981-12-31 1984-12-11 International Business Machines Corporation Apparatus for encoding unconstrained data onto a (1,7) format with rate 2/3
US4547890A (en) * 1982-09-28 1985-10-15 Abraham M. Gindi Apparatus and method for forming d.c. free codes
US4484176A (en) * 1982-11-24 1984-11-20 Storage Technology Corporation Run length limited data encoder
US4538257A (en) * 1982-12-23 1985-08-27 Xerox Corporation Adaptively stabilized recording for direct read after write optical memories
US4712217A (en) * 1985-12-20 1987-12-08 Network Equipment Technologies System for transmitting digital information and maintaining a minimum paulse density
BE904913A (nl) * 1986-06-13 1986-12-15 Bell Telephone Mfg Data overdrachtsysteem.
US4928187A (en) * 1987-02-20 1990-05-22 Laserdrive Limited Method and apparatus for encoding and decoding binary data
US4873680A (en) * 1987-03-13 1989-10-10 Laserdrive Ltd. Apparatus and method for detecting and compensating for pit extension in an optical disk recording system
US4870414A (en) * 1988-03-18 1989-09-26 International Business Machines Corporation Even mark modulation coding method
JP2618005B2 (ja) * 1988-07-25 1997-06-11 キヤノン株式会社 復号方法
DE69024045T2 (de) * 1990-08-16 1996-06-20 Ibm Kodierungsverfahren und Vorrichtung zur Pipeline- und Parallelverarbeitung.
US5625644A (en) * 1991-12-20 1997-04-29 Myers; David J. DC balanced 4B/8B binary block code for digital data communications
US7391834B2 (en) * 2002-10-01 2008-06-24 Intel Corporation Pulse amplitude modulated system with reduced intersymbol interference
US8775707B2 (en) 2010-12-02 2014-07-08 Blackberry Limited Single wire bus system
US9479275B2 (en) 2012-06-01 2016-10-25 Blackberry Limited Multiformat digital audio interface
CN104541473B (zh) 2012-06-01 2017-09-12 黑莓有限公司 基于概率方法的用于保证多格式音频系统中的锁定的通用同步引擎
US9461812B2 (en) 2013-03-04 2016-10-04 Blackberry Limited Increased bandwidth encoding scheme
US9473876B2 (en) 2014-03-31 2016-10-18 Blackberry Limited Method and system for tunneling messages between two or more devices using different communication protocols

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1250908A (de) * 1968-12-13 1971-10-27
US3810111A (en) * 1972-12-26 1974-05-07 Ibm Data coding with stable base line for recording and transmitting binary data

Also Published As

Publication number Publication date
BR7507164A (pt) 1976-08-10
DE2540472A1 (de) 1976-05-06
FR2290094A1 (fr) 1976-05-28
DE2540472C3 (de) 1980-10-02
FR2290094B1 (de) 1978-04-07
US3995264A (en) 1976-11-30
IT1042693B (it) 1980-01-30
JPS5159214A (de) 1976-05-24
CA1059636A (en) 1979-07-31
GB1470636A (en) 1977-04-14

Similar Documents

Publication Publication Date Title
DE2540472C3 (de) Verfahren und Schaltungsanordnungen zur Codierung binärer Daten unter Anwendung eines abgewandelten Null-Modulationscodes
DE2508706C2 (de) Schaltungsanordnung zur Codierung von Datenbitfolgen
DE3686697T2 (de) Fehlertoleranter kodierer zur umwandlung eines thermometerkodes in einen binaeren kode.
DE2364212C3 (de) Schaltungsanordnung zur Codierung von Binärziffern
DE2912268C2 (de) Dekoder-Schaltungsanordnung zur Dekodierung eines digitalen Informationssignals
DE2227148A1 (de) Verfahren zur verarbeitung digitaler daten
EP0078903A1 (de) Verfahren und Anordnung zur Sicherstellung der Start-Synchronisation eines aus Bit-Impulsfolgen bestehenden Telegramms innerhalb eines Empfängers
CH642795A5 (de) Signal-verarbeitungseinrichtung fuer daten im miller-kode.
DE2753616C2 (de) Verfahren und Einrichtung zum Umsetzen von impulskodemodulierter Information in einen Impulsdichtekode
DE2320422A1 (de) Verfahren zur fehlererkennung
CH620068A5 (de)
DE2728889B2 (de) Verfahren und Vorrichtung zum Übertragen eines Zweipegel-Faksimilesignals
DE2548265A1 (de) Schaltungsanordnung zur symmetrischen frequenzteilung durch eine ungerade zahl
DE2828219A1 (de) Verfahren zur aufzeichnung und wiedergabe digitaler daten auf magnetspeicher
DE2459885C2 (de) Schaltung zur Dekodierung eines dynamisch modulierten Signals
DE3240219A1 (de) Verfahren zum umsetzen einer binaeren datenfolge
DE2609563A1 (de) Generator fuer pseudozufaellige bitfolgen
DE2906156C2 (de) Digitale Filteranordnung
DE2906524A1 (de) Taktsignal-erzeugerschaltung
DE2838228A1 (de) Verfahren und anordnung zur synchronisation von datenbitfolgen
DE2440768A1 (de) Verfahren und vorrichtung zur datenkompression fuer die faksimile-uebertragung graphischer information
DE2704756A1 (de) Digital-analog-umsetzer
DE2826454A1 (de) Faksimilesignal-codiersystem
DE2554025A1 (de) Null-unterdrueckung in impulsuebertragungsanlagen
DE1762120A1 (de) Einrichtung zur Dekodierung

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
8339 Ceased/non-payment of the annual fee