DE2447310A1 - Verfahren und vorrichtung zur datenkomprimierung - Google Patents

Verfahren und vorrichtung zur datenkomprimierung

Info

Publication number
DE2447310A1
DE2447310A1 DE19742447310 DE2447310A DE2447310A1 DE 2447310 A1 DE2447310 A1 DE 2447310A1 DE 19742447310 DE19742447310 DE 19742447310 DE 2447310 A DE2447310 A DE 2447310A DE 2447310 A1 DE2447310 A1 DE 2447310A1
Authority
DE
Germany
Prior art keywords
bit
transition
bits
word
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.)
Pending
Application number
DE19742447310
Other languages
English (en)
Inventor
Duane Edward Mcintosh
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.)
Motors Liquidation Co
Original Assignee
Motors Liquidation Co
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 Motors Liquidation Co filed Critical Motors Liquidation Co
Publication of DE2447310A1 publication Critical patent/DE2447310A1/de
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction

Description

MANITZ, FINSTERWALD & GRÄMfCOW
Mnchen, den 03 f,T. 197* P/th - G 3056
.GMERAIi MOTOHS CORPOBAT1ON Detroit, Michigan, U.S.A.
Verfahren und Vorrichtung zur Datenkomprimierung
Die Erfindung betrifft Verfahren zur Datenkomprimierung und eine entsprechende Vorrichtung zur Durchführung solcher Verfahren und bezieht sich insbesondere auf solche Verfahren und Vorrichtungen, welche zur Kodierung von Binärinformation mit verminderter Redundanz dienen»
Die Datenkomprimierung ist eine liaßnahme, welche dazu dient, die Bandbreite zu vermindern, welche erforderlich ist, um eine vorgegebene Informationsm,enge in einer vorgegebenen Zeit zu übertragen oder um die Zeit zu verkürzen, welche notwendig ist, um eine vorgegebene Informationsmenge bei einer vorgegebenen Bandbreite zu übertragen., Eine solche Technik der Datenkomprimierung ist in der deutschen Patentanmeldung P 21 59 367·9 beschrieben.
Die in der oben genannten Patentanmeldung beschriebene Technik erzeugt Zustandsübergänge in der kodierten Ausgangswellenform, und zwar bei der Identifizierung von diskreten Paaren von benachbarten gleichen Bits in den Daten, die kodiert werden
509818/0750
DR. G. MANITZ · DIPL.-ING, M. FINSTERWALD DIPL.-ING. W. GRAMKOW ZENTRALKASSE BAYER. VOLKSBANKEN
β MÖNCHEN 22. ROBERT-KOCH-STRASSE I 7 STUTTGART 50 (BAD CANNSTATTI MÖNCHEN, KONTO-NUMMER 7270
TEL. (089) 22 42 II. TELEX 05-29672 PATMF SEELBERCSTR.23/25. TEL.<07ll)56 72 61 POSTSCHECK: MÖNCHEN 77062-805
sollen. Diese Technik führt zu einer wesentlichen Zunahme in der Komprimierung der Daten, die übertragen oder aufgezeichnet werden sollen,,
Es ist "bekannt, daß Binärdaten, welche sich auf die Fotografie oder das Fernsehen beziehen, oder mittels Fernsehübertragungseinrichtungen übertragen werden sollen, beispielsweise Lohnlisten, Programmlisten, eine gedruckte Seite, digitale Sprache usw., eine wesentliche Anzahl von Redundantendaten enthalten. Es ist versucht worden, durch die Anwendung verschiedener Kodierungstechniken die Redundanz zu vermindern, so daß dadurch verschwendete Übertragungszeit gespart und Betriebskosten eingespart werden sollten.
Ein solches bekanntes Verfahren läßt sich als Lauflängenkodierung bezeichnen, bei welchem ein ßezugsparameter oder ein Lauf definiert wird, und ein Kodewort übertragen wird, welche die Länge des Laufs angibt, Eines der Probleme, die bei der Lauflängenkodierung auftreten, besteht darin, daß dann, wenn die Veränderung der Dichte der Daten groß ist, sich ein negatives Komprimierungsverhältnis ergeben kann.
Aufgabe der Erfindung ist es, ein Verfahren und eine Vorrichtung zur Komprimierung von Daten zu schaffen, bei welchen die Bandbreite von Fernübertragungseinrichtungen wirksam ausgenutzt wird.
Weiterhin soll gemäß der Erfindung erreicht werden, daß für die Übertragung von Binärinformation eine verminderte Bandbreite ausreicht.
Weiterhin sollen gemäß der Erfindung die Betriebskosten für
die Übertragung von Binärinformation gesenkt werden, und zwar
selbst dann, xirenn die Daten nur eine geringere Redundanz enthalten.
S09818/0750
Gemäß der Erfindung werden ein Verfahren und eine Vorrichtung zur Verminderung der Kedundanteriinformation "bei der Übertragung von digitalen Wellenformen geschaffen. Gemäß der Erfindung wird Binärinformation normalerweise nach der Bitpaarkodierung kodiert, wie sie in der oben genannten Patentanmeldung beschrieben ist. Bei der Bitpaarkodierung wird eine kodierte Ausgangswellenform erzeugt, welche'Übergänge aufweist, die um wenigstens 11/2 Bitzellen voneinander getrennt sind, und es gibt niemals mehr als 2 aufeinanderfolgende Übergänge, welche durch das Intervall von 1 1/2 Bitzeiten voneinander getrennt sind. Gemäß der Erfindung werden die zu kodierenden Daten abgetastet, um aufeinanderfolgende Worte von Daten zu identifizieren, die innerhalb einer vorgegebenen Toleranz identisch sind. Das erste Wort von Redundantendaten wird nach der Bitpaarkodierung kodiert. Danach wird ein eindeutiges Übergangsmuster übertragen, welches wenigstens drei aufeinanderfolgende Übergänge aufweist, von denen jeder um 11/2 Bitzellen verzögert ist. Die drei aufeinanderfolgenden Übergänge, welche um 1 1/2 Bitzellen voneinander getrennt sind, bilden eine "Markierung", welche anzeigt, daß aufeinanderfolgende Worte in den Daten mit dem ersten Wort identisch sind. Die Dauer eines Abschnittes des eindeutigen Übergangsmusters gibt die Anzahl der aufeinanderfolgenden identischen Worte an, die auf das erste Wort folgen. Vor der Eingabe der "Markierung" wird ein vorderer Grenzimpuls erzeugt, und in ähnlicher Weise wird anschließend an die Eingabe der "Markierung" eine rückwärtige Grenze angegeben, um die nach der Bitpaarkodierung kodierten Daten von den nach der Wortkodierung kodierten Daten zu trennen und zu unterscheiden. Diese Grenzen weisen eine Breite von zwei bis 2 1/2 Bitzeiten auf und bilden außer der Trennung die Funktionen, den Bitzustand oder die Bitzustände der Daten zu beschreiben, welche durch Bitpaarkodierung kodiert wurden, und zwar unmittelbar vor dem Übergang zu der Wortkodierung, und sie kennzeichnen weiterhin die End- und die Anfangsbezugspunkte für diejenigen Daten,
die nach der Bitpaarkodierung kodiert sind.
üs werden zwei Methoden "beschriet)en, um die Wortkodierung durchzuführen. Beide übertragen das erste Wort in einer Folge von identischen aufeinanderfolgenden Worten und "benutzen dieselben Grenzmarkierungen für die vordere und die hintere Grenze. Eine der Methoden verwendet einen Abstand von 1/2 Bitzeit (1/2S) und erfordert ein Minimum von 10 Bitzeiten, um einschließlich der Grenzen die Markierung und die Kodierung für ein Wort einzugeben. Bei dieser Methode kann eine Komprimierung bei zwei aufeinanderfolgenden Worten erreicht werden, vorausgesetzt, daß die Wortlänge größer als 10 Bit ist. Die andere Methode verwendet einen 1 1/2-Bitzeit-Übergang (1 1/2T) für jedes folgende Wort. Ihre minimale Eingabezeit beträgt 7 Bitzeiten und erfordert drei aufeinanderfolgende identische Worte von Daten, bevor sie angewandt werden kann. Für lange Eeihen oder Folgen von aufeinanderfolgenden Worten nähert sich das Verfahren gemäß 1 1/2S einem maximalen Komprimierungsverhältnis zwischen eingegebenen und ausgegebenen Bits von 2N, während die Methode 1 1/2T sich einem Wert von 2/3^ nähert, wobei W die Anzahl von Bits im Wort ist. Diese Verhältniswerte lassen sich durch die Bitpaarkodierung um weitere 50 % steigern, um eine maximale Gesamtkomprimierung mit einem Verhältnis von JN für die Methode 1/2S und 1N für die Methode 1 1/2T zu erreichen.
Die Erfindung wird nachfolgend beispielsweise anhand der Zeichnung beschrieben; in dieser zeigen:
Fig. 1a ein Blockdiagramm des erfindungsgemäßen Kodierers,
Fig. 1b, 1c und 1d Wellenformen und eine Tabelle zur Erläuterung der Erfindung,
Fig. ,2, 3 und 4- detailierte Logik-Diagramme, einer bevorzugten Ausführungsform des erfindungsgemäßen Kodierers,
509818/0750
Fig. 5 Wellenformen, welche an verschiedenen Punkten in dem Diagramm der Pig. 2, 3 und 4- auftreten, und die kodierte Ausgangswellenform der sechs 8-Bit-Worte, die in der Fig. angegeben sind, und
Fig. 6 ein detailiertes Logik-Diagramm einer Abwandlung der
Anordnung gemäß Fig. 4· zur Implementierung einer zweiten Ausführungsform gemäß der Erfindung-Gemäß Fig. 1a weist der erfindungsgemäße Kodierer einen Taktgenerator auf, der in seiner Gesamtheit mit 10 bezeichnet ist und der an die verschiedenen anderen Blöcke gemäß Fig. 1 den Erfordernissen entsprechende Taktsignale liefert, um eine ordnungsgemäße Zeitsteuerung zwischen den Blöcken einzuhalten. Die verschiedenen Taktsignale werden zusammen mit dem detailierteren logischen Betrieb der Anordnung beschrieben. Zunächst genügt es, davon auszugehen, daß der Taktgenerator 10 solche Taktimpulse liefert, welche den Beginn und die Mitte eines willkürlichen Bitzeitintervalls festlegen. Eine in ihrer Gesamtheit mit 12 bezeichnete logische Startschaltung liefert ein Eingangssignal für eine logische Verschiebesteuerschaltung 14, welche den Eingang von Daten von einer Datenquelle mit veränderlicher Datenrate in die Kodiereinrichtung und die Verschiebung der Daten durch die Kodiereinrichtung steuert. Die Datenquelle mit veränderlicher Datenrate ist nicht dargestellt, sie würde jedoch einen Pufferspeicher aufweisen, welcher die Daten auf Anforderung dem Kodierer zuführt. Zu Beginn werden die Eingangsdaten Wort für Wort parallel durch drei Verzögerungsregister 16 einem universellen Schieberegister 18 zugeführt. Das erste Datenwort wird auch in ein Bezugsregister 20 eingegeben und wird in einem Komparator 22 Wort für Wort mit dem folgenden Datenwort verglichen. Wenn das erste Wort mit dem zweiten Wort verglichen wird, bleibt das erste Wort im Bezugsregister 20
509818/0750
und wird mit dem folgenden Wort verglichen, bis die Worte ungleich sind, wobei dann das neue Wort in das Bezugsregister 20 gebracht wird, und zwar zum Vergleich mit folgenden Worten. Nachdem das erste Wort parallel in das universelle Schieberegister 18 geladen ist, werden die Daten seriell in einen Bitpaar-Koniparator 24 eingegeben, wo jedes Bit mit dem folgenden Bit verglichen wird, um diskrete Paare von benachbarten ähnlichen bzw. gleichen Bits zu entdecken, d. h. OO oder 11. Der Komparator 24 spricht auch auf die Taktimpulse von dem Taktgenerator 10 an und liefert Eingangsimpulse an eine Steuereinheit 26 für den Ausgangszustand, und zwar zu Beginn oder in der Ilitte der Bitzeit, was davon abhängt, bei welchem der diskreten Paare benachbarte gleiche Bits ermittelt wurden. Die Steuereinheit 26 erzeugt ein kodiertes Ausgangssignal. Die diskreten Paare werden dadurch identifiziert, daß die Daten bitweise seriell dem Jiomparator 24 zugeführt werden und daß der Komparator 24 für eine Bitzeit gesperrt wird, welche auf die Ermittlung eines Paares von benachbarten gleichen Bits folgt, wenn das Bit, welches auf das Paar der gleichen Bits folgt, ein solches Bit ist, welche dem Paar der ermittelten Bits gleicht. Somit bilden in dem Binärdatenausdruck 0111 das zweite und das dritte Bit ein diskretes Paar benachbarter gleicher Bits, das dritte und das vierte Bit sind jedoch nicht diskret, obwohl sie ein Paar von benachbarten gleichen Bits darstellen, weil das dritte Bit bereits kodiert wurde. Dieser Vorgang läßt sich von dem Vorgang unterscheiden, daß nur aufeinanderfolgende Doppelbits abgetastet werden (zwei aufeinanderfolgende Bits), um Paare von Bits einer speziellen Bitkonfiguration zu ermitteln. Die Steuereinheit 26 erzeugt Übergänge im Ausgangssignal zu Beginn von nur solchen Bitzellen, welche eine 1 enthalten, aufweiche eine Bitzelle folgt, die eine 1 enthält und welcher keine Bitzelle vorausgeht, die einen Übergang enthält, und sie erzeugt weiterhin Übergänge an dem Mittelpunkt von nur denjenigen Bitzellen, welche eine 0 enthalten,
509818/07 5 0
auf welche eine Bitzelle folgt, die eine 0 enthält und welcher keine Bitzelle vorausgeht, die einen Übergang aufweist. Indem im Ausgangssignal nur bei der Ermittlung von diskreten Paaren von gleichen Bits Übergänge erzeugt werden, wird eine bedeutende Komprimierung der Daten erreicht. Wenn jedes diskrete Paar von gleichen Bits in den Daten identifiziert wird, so ist bekannt, daß die übrigen Daten keine diskreten Paare enthalten und aus dem Zustand der diskreten Paare gleicher Bits leicht zu identifizieren sind.
Die Arbeitsweise der Bitpaarkodierung ist leichter verständlich, wenn zur Erläuterung die in der'Fig. 1b dargestellten Wellenformen zu Hilfe genommen werden. Die NHZ-Daten, welche kodiert werden sollen, haben die Form 110011001101100011. Die. Daten werden in den Bitpaarkomparator 24 eingegeben, beginnend mit dem Bit des geringsten Stellenwertes in der Bitzelle 1(BC1) und endend mit dem Bit des höchsten Stellenwertes in BC18. Durch die Bitpaarkodierung der Daten wird die Wellenform erzeugt, welche in der Fig. 1b dargestellt ist. Diese Daten erzeugen Übergänge zu Beginn der Bitzellen 1, 6, 9, 13 und 17, so daß dadurch die Bitpaare des logischen Pegels Λ in den Bitzellen 1-2, 6-7, 9-10, 13-14 und 17-18 identifiziert werden, und in der Mitte der Bitzellen 3, 11 und 15, so daß dadurch die Bitpaare des logischen Pegels 0 in den Bitzellen 3-4, 11-12, und 15-16 identifiziert werden. Während des Kodierens der Daten ist leicht erkennbar, daß ein Bit des logischen Pegels 0 in der Bitzelle 5 und 8 auftritt, da andernfalls ein Paar von Bits mit dem logischen Pegel 1 in den Bitzellen 5-6 und 8-9 vorhanden sein müßte und zu Beginn der Bitzellen 5 und 8 ein Übergang aufgetreten sein müßte. Somit lassen sich alle Daten dadurch wiedergewinnen, daß lediglich Übergänge zwischen den logischen Pegelzuständen bei diskreten Paaren benachbarter gleicher Bits erzeugt werden. Es ist ersichtlich, daß das Paar der benachbarten gleichen Bits in den Bitzellen 4-5 keinen Übergang erzeugt. Dieses Bitpaar ist nicht "diskret", weil in
509818/0750
der Bitzelle 3 ein Übergang erfolgt. Die Ermittlung der Bitpaare des logischen Pegels 0 in den Bitzellen 3-4 verhindert, daß ein Übergang während der Bitzelle 4- auftritt, wenn das Bit 4- mit dem Bit 5 verglichen würde. Die kürzeste Impulsdauer beträgt 1 1/2 Bitzellen in der Breite und tritt dann auf, wenn die Daten in den Bitzellen 1-18 kodiert werden, wo auf Paare mit dem logischen Pegel O Paare mit dem logischen Pegel 1 folgen. Es ist nicht möglich, daß zwei Impulse mit einer Breite von 1 1/2 Bitzellen hintereinander auftreten, wenn gemäß der obigen Bitpaar-Kodierung verfahren wird. Irgendwelche Impulse mit einer Dauer von 1 1/2 Bitzeiten, die sich bei der Bitpaarkodierung ergeben, treten nur dann auf, wenn vorher und nachher Impulse vorhanden waren, die mindestens zwei Bitzellen breit waren, wie es in der i'ig. 1b dargestellt ist.
Solange die Datenworte nicht identisch sind, wird der obige Kodierungsvorgang fortgesetzt. Wenn jedoch eine ausreichende Anzahl von aufeinanderfolgenden Worten identisch sind, wird der Kodierer auf einen Wortmodus umgeschaltet, bei welchem nur das erste von identischen Worten als Bitpaar kodiert wird, worauf ein einziges Übergangsmuster folgt, bzw. ein auschließlich aus Übergängen bestehendes Huster folgt, welches die Anzahl der Worte identifiziert, die identisch sind. Gemäß 3?ig. 1a wird das ausschließlich aus Übergängen bestehende Muster durch ein Eingangssignal an die Zustandssteuereinheit 26 von einem Wortmodus-Impulsgenerator und einer Steuerlogik 26 erzeugt. Der Beginn und das Ende des Betriebes des Impulsgenerators 28 wird von der Steuerung der fiodussteuerlogik 30 gesteuert, welche auf den Komparator 22 anspricht.
Diejenige Anzahl von aufeinanderfolgenden identischen Worten, die erforderlich sind, um auf eine Wortkodierung bzw. eine Wortkodiermodus überzugehen, hängt von verschiedenen Faktoren
$09818/0750
244731O
ab, zu denen auch die Wortlänge gehört, was nachfolgend im einzelnen diskutiert wird. Lie hier veranschaulichte und beschriebene iLusführungsform der Erfindung bezieht sich auf eine Wortlänge von 8 Bit, und aufeinanderfolgende Gruppen von Bits werden auf der Basis einzelner. Worte verglichen. Dies erfordert, daß wenigstens drei aufeinanderfolgende identische Worte vorhanden sein müssen, um eine größere Datenkomprimierung zu erreichen, als es bei der Bitpaarkodierung möglich ist.
Die Wortkodierung wird ausgelöst, nachdem das erste der aufeinanderfolgenden Worte kodiert ist, und zwar gemäß der Bitpaarkodiertechnik. Danach wird die Bitpaarkodierung beendet, und die Daten werden mit wesentlich erhöhter Eate solange eingegeben, wie die folgenden Worte identisch sind. Der Komparator 22 kann derart eingestellt sein, daß die aufeinanderfolgenden Worte nicht identisch sein müssen, sondern innerhalb einer vorgegebenen Toleranz anders sein können, um von dem Vorteil der erhöhten Datenkomprimierung zu profitieren, die sich bei der Wortkodierung ergibt. Beispielsweise kann es wünschenswert .sein, das Bit mit dem geringsten Stellenwert eines Wortes zu vernachlässigen, wenn sich dabei kein wesentlicher Informationsverlust ergibt.
Die Wellenformen in der Fig. 1c zeigen die Wort-kodierte Ausgangswellenform, welche sich bei der Kodierung von zwei aufeinanderfolgenden identischen 8-ßit-Worten ergibt, auf welche ein nicht identisches 8-Bit-Wort folgt. Das erste Wort wird gemäß Fig. 1b kodiert. Vor der Eingabe des ersten Wortes in das universelle Schieberegister 18 wurden die drei folgenden identischen Worte ermittelt worden sein, welche vom Komparator 22 ermittelt wurden, und die Fiodussteuerlogik 30 informiert den Wortmodusimpulsgenerator und die Steuerlogik 28 sowie die Datenverschiebesteuerlogik 14·, um die Wortkodierung auszulösen, und die Erzeugung des ausschließlich
$09818/0750
aus Übergängen bestehenden Musters, nachdem das erste von aufeinanderfolgenden identischen Worten als Bitpaar kodiert wurde. Der Impulsgenerator 28 erzeugt einen Impulszug, welcher fünf Impulse enthält, die die Steuereinheit 26 dazu bringen, das ausschließlich aus Übergängen bestehende Küster zu erzeugen , welches fünf Übergänge zwischen den zwei Ausgangszustandpegeln aufweist. Gemäß Fig. 1c erzeugt die Wortkodierung gemäß dem Verfahren 1/2S einen ersten Übergang, welcher an der rückwärtigen Grenze derjenigen Bitzelle auftritt, welche das letzte Bit des ersten Wortes oder des Bezugswortes enthält. Der zweite Übergang ist gegenüber dem ersten um 2 oder um 2 1/2 Bitzellenzeiten versetzt. Dies liefert eine Verteilungsfunktion für die zwei Typen der Kodierung und ihre Breite identifiziert den Sustand des letzten Bits des Bezugswortes (desjenigen Bits, welches vor dem ersten Übergang auftritt). Der zweite übergang ist um zwei Bitzeiten versetzt, wenn das letzte Bit » 1 ist, und ist um 2 1/2 Bitzeiten versetzt, wenn das letzte Bit = O ist. Damit sind die Zustände der durch Bitpaarkodierung vor dem ersten übergang kodierten Daten definiert, welche nicht durch Übergänge definiert sind, die sich aus der Ermittlung von diskreten Paaren gleicher Bits ergeben.
In dem angeführten Beispiel identifiziert derjenige Übergang, welcher zu Beginn von BC7 auftritt, das letzte Bit des Bezugswortes. Wenn jedoch das letzte Bit eine 0 gewesen wäre, würde der einzige Übergang im Bezugswort in der Mitte von BC3 aufgetreten sein. Aus diesem Übergang läßt sich schließen, daß in BC1 eine O und in BC2 eine 1 auftritt, die Daten in BC5-BC8 könnten somit entweder 0101 oder 1010 sein. Der zweite Übergang des ausschließlich aus Übergängen bestehenden Musters würde dann erforderlich sein, um die Daten als 1010 zu identifizieren.
509818/0750
Der dritte und der vierte Übergang "bilden eine Markierung, welche anzeigt, daß zur Wortkodierung übergegangen wurde. Der dritte "Übergang ist um 1 1/2 Bitzellen von dem zweiten Übergang verlagert, während der vierte Übergang um 1 1/2 Bitzellen gegenüber dem dritten "Übergang versetzt ist. Der fünfte übergang ist von dem viert.en Übergang nach der folgenden Beziehung versetzt: 2~^~£ + ^—^ , wobei NCGE die minimale Anzahl von Vergleichsgruppen ist, die erforderlich ist, um zu der Wortkodierung überzugehen, während NCGD die Anzahl der ermittelten Vergleichsgruppen ist. Der Term ( ~ ) lokalisiert
denjenigen Punkt, von welchem eine Zählung von 1/2 Bitζeilen
NCGD pro Vergleichsgruppe beginne soll. Der Term ■ ■ beschreibt die Anzahl von Bitzellen, die erforderlich sind, um die Henge der komprimierten Daten darzustellen.
Die Formel ist in Vergleichsgruppen anstatt in Datenworten ausgedrückt, da es oft erwünscht ist, Vielfachdatenworte während der Vergleichsvorganges zu verwenden. Die obige Formel stellt fest, daß der fünfte Übergang gegenüber dem vierten Übergang um 11/2 Bitzellen plus 1/2 Bitzelle für jede ermit-. telte Vergleichsgruppe versetzt ist. Die Erfordernisse zum Übergang zur Wortkodierung, ausgedrückt in Vergleichsgruppen- ~- größen, und zwar in Vielfachen der Wortgröße, sind in der Tabelle gemäß Fig. 1d dargestellt. Diese Tabelle basiert auf ,der folgenden Formel:
10 +
= —2
wobei NCGR die Anzahl der Vergleichsgruppen ist, die erforderlich sind, während NBCG die Anzahl der Bits in der Vergleichsgruppe angibt und NBR die Anzahl der Bezugsbits darstellt.
Wenn beispielsweise die Datenwortgröße 8 Bit beträgt und die gewählte Vergleichsgruppengröße gleich der Wortgröße ist, dann
509818/0750
ist eine Vergleichs gruppe zusätzlich zu den 8 Bezugsbits erforderlich, d. h., es werden drei aufeinanderfolgende identische 8-Bitworte benötigt, um zu der Wortkodierung überzugehen. Wenn diese Bedingung nicht erfüllt ist, würden die Daten stärker komprimiert, wenn die Bitpaarkodierung angewandt wird. In der IPig. 1c dauert die Breite des Impulses, welcher durch den vierten und den fünften Übergang gebildet wird, 2-Bitzellzeiten. Dies rührt daher, daß die Wellenform auf der Basis von 2 Worten pro Vergleichsgruppe dargestellt ist. Wenn angenommen wird, daß die Vergleichsgruppen_größe gleich der Wortgruppengröße ist, würde die Dauer 2 1/2 Bit ellzeiten betragen.
Nach dem fünften Übergang wird eine Abschlußgrenze gebildet, welche um 2 Bitzellzeiten gegenüber dem fünften Übergang verlagert ist, wenn der fünfte Übergang zu Beginn einer Bitzelle auftritt, während eine Verlagerung von 2 1/2 Bitzellzeiten erfolgt, und zwar von dem fünften Übergang aus, wenn dieser fünfte Übergang in der Mtte einer Bitzelle auftritt. Zu dieser Zeit kann möglicherweise ein Übergang auftreten, was von der Bitkonfiguration des nächsten Datenwortes abhängt. Nachdem die Grenze bei 2 oder 2 1/2 Bitzellenzeiten aufgebaut ist, wird das nächste Datenwort mit der Bitpaarkodierung kodiert. Durch Erzeugung einer Abschlußimpulsbreite von wenigstens zwei Bitzellenzeiten wird das ausschließlich aus Übergängen bestehende Muster von den nachfolgenden Übergängen getrennt, welche sich bei der Bitpaarkodierung ergeben.
Die zur Wortkodierung erzeugte Wellenform verwendet die Technik 1 1/211, und sie führt dazu, daß das erste Wort in derselben Weise kodiert wird, wie es bei der Technik 1/2S geschieht. Weiterhin sind auch die Anforderungen an die vordere und an die rückwärtige Grenze von 2 oder 2 1/2 Bitzellzeiten
609818/0750
dieselben wie für die Vorgehensweise gemäß 1/2S. Bei der Methode 1 1/2T werden 1 1/2 Bitzellzeiten für jedes der aufeinanderfolgenden identischen Datenworte erzeugt. In der -b'ig. 1c werden die Impulse mit 1 1/2 Bitzellzeiten durch den zweiten, den dritten und den vierten Übergang gebildet.
In der Fig.. 1c sind beide Grenzen 2-Bitzellzeiten, und zwar wegen der speziellen vorliegenden Daten. Jede der Grenzen könnte natürlich 2 1/2 Bitzellzeiten breit sein, wobei dann diejenige Zeit, welche erforderlich wäre, um das ausschließlich aus Übergängen bestehende Muster einzugeben, wenn die Technik 1/2S angewandt wird, 10-Bitzellzeiten betragen würde. Bei der Methode 1 1/21I1 beträgt die minimale Üingabezeit ?-Bitzellzeiten, d. h. wenigstens zwei 1 1/2-Bitzellzeiten-impulse und minimale Grenzen von jeweils 2 Bitzellzeiten. Da die Methode 1 1/2T die Markierung als Teil der Datenkodierung verwendet, sind wenigstens drei aufeinanderfolgende identische Worte erforderlich, um auf die Wortkodierung überzugehen, und zwar ohne Rücksicht auf die Anzahl der Bits in der Vergleichsgruppe. Zwischen den Methoden 1/2S und 1 1/2T liegt die Trennstelle, von welcher die Entscheidung über den besseren Eingabewirkungsgrad abhängt, bei fünf aufeinanderfolgenden Worten, wobei die Methode 1 1/2T bis zu dieser Trennstelle hin einen besseren Wirkungsgrad hat. Aus der ii'ig. 1c ist ersichtlich, daß die Methode 1 1/2T eine höhere Komprimierung liefert als die Methode 1/2S, und zwar für die speziellen betrachteten Daten, i'ür lange Heihen aufeinanderfolgender Worte jedoch nähert sich die Methode 1/2S einem maximalen Komprimierungsverhältnis zwischen eingegebenen und ausgegebenen Bits auf der Basis von etwa dem Dreifachen gegenüber dem Verfahren 1 1/2T.
Nachfolgend wird anhand der i'ig. 2, 3 und 4 die Logik für den Kodierer im einzelnen beschrieben, und zwar unter Bezugnahme
5098 18/0750
2U7310
auf die in der Pig. 5 dargestellten Wellenformen, wobei die sechs ö-ßitworte kodiert werden, die in der Fig. 5 dargestellt sind. Der Taktgenerator 10 erzeugt Taktimpulse, welche mit CLKA, CLKB, GLKO und RFB* bezeichnet sind. Der Taktgenerator 10 weist einen Grundtaktgenerator 32 auf, dessen Ausgangssignal die Wellenform CLK. ist, und der einen monostabilen Doppelflanken-Multivibrator 34- steuert, um das Signal BFB* zu erzeugen, welches negativ verlaufende Impulse aufweist, die mit jeder ansteigenden und mit Jeder abfallenden Flanke des Grundtaktausgangssignals zusammenfallen. Der monostabile Multivibrator 34- schaltet ein Verzögerungs-Flip-Flop 36 um, dessen Ausgang Q durch ein NAKD-- Gatter 38 umgekehrt wird, um das Signal CLKA zu erzeugen. NOR-Gatter 40 und 42 haben einen Eingang, der mit ELb1B* verbunden ist, und einen weiteren Eingang der mit den Ausgängen Q und Q* des Flip-Flops 36 jeweils verbunden ist, um ein Signal CLKB und CLKC zu erzeugen. Das NAND-Gatter 44 spricht auf das Ausgangssignal des Taktgenerator und das Signal CLKB an, um das Verzögerungs-Flip-Flop 3^- zusetzen, damit die relative Phase der Signale CLKA, CLKB und CLKC gemäß den dargestellten Wellenformen eingehalten wird.
Die Startlogikschaltung 12 weist ein Verzögerungs-Flip-Flop auf, welches auf eine (nicht dargestellte) Auslöseschaltung zum Einschalten der Leistung anspricht. Die Auslöseschaltung erzeugt einen Impuls, der mit START BLIP bezeichnet ist und das Flip-Flop 46 umschaltet und weiterhin den Ausgang Q dazu bringt, daß er hochgeht. Ein Verzögerungs-Flip-Flop 48 wird auf die ansteigende Flanke von CLKB* hin umgeschaltet (CLKB* bezeichnet das invertierte Signal CLKB), um dessen Ausgang Q anzuheben, der mit START CODE 1 bezeichnet ist. Der START CODE wird dem direkten Einstelleingang (DS) eine Binärzählers 50 zugeführt, der durch die abfallende Flanke von CLKB gesteuert wird. Der Zähler 50 ist derart eingestellt, daß er auf null
5 09818/0750
stellt, während der STAKT CODE 1 niedrig, ist und wird in diesem Zustand gehalten, "bis der START CODE 1 hochgeht. Danach wird der Zähler 50 durch CLKB gesteuert, und seine Funktion "besteht darin, der Anzahl der Verschiebeimpulse zum Weiterrücken zu folgen, welche an das Verzögerungsregister 16 gegeben werden. Der START CODE 1* wird als ein Eingangssignal einem NAND-Gatter 52 der Verschiebesteuerlogik 14 zugeführt. Der Ausgang des Gatters 52 liefert ein Eingangssignal für ein NOR-Gatter 54·, dessen Ausgang mit WORD LOAD* bezeichnet ist, wodurch der Verschiebemodus des,universellen Schieberegisters 18 gesteuert wird. Das Register18 wird durch ein Signal gesteuert, welches mit LCKD bezeichnet ist und welches von CLEA und RIi1B* abgeleitet wird. Das Signal OLED erscheint am Ausgang eines NOR-Gatter s 56, dessen einer Eingang über einen Inverter 58 mit RI1B* verbunden ist, während sein anderer Eingang mit einem NOR-Gatter 60 verbunden ist, dessen einer Eingang mit OLKA verbunden ist. Die Gatter 60 und 52 werden durch ein Signal gesteuert, welches mit RDNXTWD bezeichnet wird (nächstes Worte Lesen). Das Signal CLKD wird über einen Inverter 62, ein NOR-Gatter 64 und einen Inverter 66 dem Takteingang C des Registers 18 zugeführt. Das Register 18 wird durch die abfallende Flanke des · Signals gesteuert, welches seinem Eingang C zugeführt wird, was mit der ansteigenden Flanke von CLKD zusammenfällt, und zwar aufgrund der Inversion, welche durch die Elemente 62, 64 und 66 ausgeführt wird. Während der Bitpaarkodierung ist RDNXTWD
.so niedrig, so daß dadurch das Gatter 60 derart aktiviert ist,/daß das Signal CLKD dem Signal Ri1B folgt, und zwar während der Zeit, während welcher CLKA hoch ist. Wenn es während der Wortkodierung erwünscht ist, die Rate zu steigern, mit welcher dem Kodierer Daten zugeführt werden, so wird RDNXTWD hoch gelegt, umd das Gatter 60 zu schließen, so daß das Signal CLKD dem Signal RFB folgt. RDNXTWD* ist während des Starts hoch, so daß dann, wenn START CODE 1* tief geht, WORD LOAD* ebenfalls tief geht, um das Register 18 in einen solchenZustand zu bringen, daß ein Paralleldateneingang erfolgen kann. Wenn das erste
509818/0750
2U7310
Datenwort in das Register 18 eingegeben wird, erreicht der Zähler 50 den Zählstand 4, und sein Ausgang CT4 geht hoch. Der Ausgang CT4 wird durch einen Inverter 68 invertiert und stellt die I'lip-Iflöps 46 und 48 zurück, um den Startvorgang zu beenden und um STAHT CüDE 1* sowie WORD LOAD* hoch zu legen, um das Register 18 in den Zustand zu versetzen, daß eine serielle Datenverschiebung erfolgen kann. Das NOR-Gatter 64 wird durch ein Signal gesteuert, welches mit SKEW bezeichnet ist, welches normalerweise tief ist, um das Gatter 64 zu aktivieren, jedoch während des letzten Teils der Wortkodierung hoch gelegt wird, um das Gatter 64 abzuschalten und um die Taktsteuerung für das Schieberegister 18 zu unterbrechen. Die logische Schaltung zur Erzeugung des Signals SKEW wird unten beschrieben.
Der START CODE 1* wird auch dem Direkteinstelleingang (DS) eines Binärzählers 70 über ein NAND-Gatter 72 und ein NOR-Gatter 74 zugeführt. Der Zähler wird durch die abfallende Flanke von GLKD gesteuert. Der Zähler 70 kann von (nicht dargestellten) parallelen Eingängen programmiert werden, welche schematisch durch den einzigen Eingang 76 angedeutet sind. Die parallelen Eingangssignale werden auf geeignete logische Pegel gelegt, um eine Zählung zu liefern, auf welche der Zähler 70 eingestellt wird, wenn sein Eingang DS tief gelegt wird. Diese Zählung läßt sich ausdrücken als 9-n, wobei η gleich der Anzahl der Bits pro Wort ist. Wenn im vorliegenden !'alle der Eingang DS tief gelegt wird, wird im Zähler 70 eine Zählung von 1 aufgebaut, wodurch CT1 hochgelegt wird. Die Funktion des Zählers 70 besteht darin, der Anzahl der Taktimpulse zu folgen, welche während des seriellen Betriebes dem Schieberegister 1b zugeführt werden, so daß zu geeigneter Zeit auf den Parallelbetriebsmodus übergegangen werden kann.
509818/0750
2U7310
Nachdem sieben Bits aus dem Register 18 herausgeschoben sind, geht der Ausgang CT8 des Zählers VO hoch, da der Zähler 70 zuvor auf eine Zählung von 1 eingestellt war. Wenn CT8 hocn geht, so wird dadurch WORD LOAD* über das Gatter 54 tief gelegt, um das Register 18 für einen Paralleleingang vorzubereiten. Der nächste Impuls CLKD gibt das zweite Wort in das Register 18 ein und steuert den Zähler 70 auf eine Zählung von 9> wobei sowohl der Ausgang Cl1I als auch der Ausgang CTb hoch gelegt werden. Durch die Ausgänge Cl'1 und CTS werden Eingangssignale für das IMAiiD-Gatfcer '/ü erzeugt, dessen Ausgang tief gelegt wird, wenn der Zähler '/0 eine Zählung von 9 erreicht, wodurch aer Eingang DS des Zählers 70 tief geht, um den Zähler auf eine Zählung von 1 zurückzustellen.
Der Komparator 24 weist ein 2-i3it-.ti.egi st er 80 auf, welches Flip-Flops 82 und 84 hat, die durch die ansteigende Flanke von CLJtvD umgeschaltet werden. Der Eingang D zu dem Flip-Flop ist mit dem Ausgang der letzten Stufe C8 des Registers 18 verbunden. Der Eingang D zu dem ü'lip-Flop 84 ist mit dem Ausgang Q des Flip-Flops 82 verbunden, der mit 09 bezeichnet ist. Der Ausgang Q, des Flip-Flops 84 ist mit C10 bezeichnet. Die Ausgänge Q* der Flip-Flops 82 und 84 sind Jeweils mit C9* und C10* bezeichnet. Der Komparator 24 weist weiterhin ein Paar von NAND-Gattern 86 und 88 auf. Das Gatter 86 tastet den Zustand der Daten an den Ausgängen C9 und C10 der Flip-Flops 82 und bei der ansteigenden Flanke von CLKB ab. CLKB bildet den Anfang der Bitzeit der kodierten Ausgangsdaten, und demgemäß geht der Ausgang des Gatters 86 zu Beginn der Bitzeit tief, wenn die in den Flip-Flops 82 und 84 gespeicherten Daten an ihren Ausgängen 09 und C10 Bits mit einem logischen Pegel 1 sind. Das Gatter 88 tastet die Daten ab, welche an den Ausgängen C9* und C10* der Flip-Flops 82 und 84 jeweils bei der ansteigenden Flanke von CLKC auftreten. CLKC bildet die Mitte der Bitzeit des
50 98 1 8/0750
kodierten Ausgangssignals. Demgemäß geht der Ausgang des Gatters 88 tief, wenn die zwei Bits, die in dem Kegister 80 gespeichert sind, sich auf einem logischen Pegel 0 befinden. Die Gatter 86 und 88 werden von einem NAND-Gatter 90 über einen Inverter 92 gesteuert. Die Eingänge zu dem Gatter 90 sind mit N NABL, STAHT CODE 2* und BLOCK* bezeichnet. Wenn alle Eingänge zu dem Gatter 90 hoch liegen, sind die Gatter 86 und 88 aktiviert. Die logische Schaltung zur Erzeugng von N JNABL und von BLOCIv*-Signalen wird nachfolgend beschrieben. Das Signal START CODE 2* wird von einem Ilip-i'lop 94 in der Startlogikschaltung 12 gebildet. Das i'lip-l'lop 94 iiat seinen Eingang D mit dem Ausgang Q eines i'lip-Jflops 96 verbunden, dessen Eingang D auf eine logische 0 gesetzt ist. Die i'lip-I'lops 94 und 96 werden bei der ansteigenden !flanke von CLKA umgeschaltet und werden durch den Zähler 50 über den Inverter 68 gesetzt, wenn das erste Datenwort in das Register 18 eingegeben wird, welches das Signal START CODE 2* tief legt, so daß dadurch die Gatter 86 und 88 abgeschaltet werden. Das Signal START CODE 2* wird durch die ansteigende i'lanke von CLkA hoch gelegt, wenn das zweite Bit des ersten Datenwortes in das Schieberegister 80 geladen wird, worauf das Abtasten der Bitzustände der Daten beginnt.
Die Steuereinheit 26 für den Ausgangszustand weist ein Verzögerungs-l'lip-i'lop 98 und ein Puffergatter 100 auf. Der Ausgang Q* und der Eingang D des l'lip-i'lops 98 sind derart miteinander vereinigt, daß der Ausgang Q* zwischen den logischen Pegeln und 0 abwechselt, worauf das S1Hp-Ji1Iop 98 umgeschaltet wird.
J?Iop
Das Flip/98 wird durch ein Signal umgeschaltet, welches mit D BLIP bezeichnet ist und am Ausgang eines NAND-Gatters 102 erscheint, welches Eingänge aufweist, die mit dem Ausgang der Gatter 86 und 88 verbunden sind. Demgemäß wird das l'lip-Flop zu Beginn oder in der lviitte der Bitzeit umgeschaltet, wenn ein Paar von gleichen Bits im Register 80 erscheint, was davon abhängt, ob das Paar 11 oder 00 ist. Die anderen zwei Eingänge
509818/0750
sind an das Gatter 102 geführt und sind mit l·' TIME* und F START* "bezeichnet. Diese Signale werden durch den Wortmodus-Impulsgenerator erzeugt und steuern die Logikanordnung 28, wie es nachfolgend "beschrieben wird. Die NAND-Gatter 104 und 106 dienen jeweils dazu, das Flip-Flop 82 zu setzen und rückzusetzen. Wenn das Bit in derjenigen Bitzeit, welche unmittelbar auf ein Signal D BLIP folgt, dasselbe ist .wie das vorangehende Paar von Bits, welches das Signal D BLIP erzeugte, wenn beispielsweise C9 und C10 beide auf einem logischen Pegel 1 sind und ein Signal D BLIP erzeugen, dann wird das Flip-Flop 82 rückgesetzt, wodurch C9 auf den logischen Pegel 0 gebracht wird, wenn C8 auf dem logischen Pegel 1 ist. Wenn C9 und G10 beide auf dem logischen Pegel 0 sind und wenn ein Signal D BLIP erzeugt wird, dann wird in ähnlicher Weise das Flip-Flop rückgesetzt, wodurch C9 auf den logischen Pegel 1 gebracht wird, wenn C8 auf dem logischen Pegel 0 ist. Durch das Setzen oder das Rücksetzen des Flip-Flops 82 wird die Bitpaarkodierung der Daten für eine Bitzeit gesperrt, welche auf die Abtastung eines Paares gleicher Bits folgt. Dies führt dazu, daß nur diskrete Paare von gleichen Bits abgetastet werden. Das NAND-Gatter 108 wird von dem Wortmodusimpulsgenerator aktiviert, um das Flip-Flop 84 zu setzen.
Anhand der Fig. 3 werden nachfolgend das Verschieben der Eingangsdaten durch das Verzögerungsregister 16 und der Vergleich von aufeinanderfolgenden Worten erläutert. Die Verschiebest euerlogikschaltung 14 weist weiterhin ein NOR-Gatter 110 und NAND-Gatter 112 und 114 auf. Das Signal CLKD*, welches am Ausgang des Inverters 62 auftritt, wird mit dem Signal WORD LüAD* im Gatter 110 kombiniert, um das mit RDCLK bezeichnete Signal zu erzeugen. Während somit während des Startens WORD LOAD* tief liegt, folgt RDCLK dem Signal CLKD. Das Signal RDCLK wird durch einen Inverter 116 invertiert und dem Steuereingang bzw. Z ext takt eingang der drei Verzögemingsregister 16a,
5098 1 8/0750
16Td und 16c zugeführt,, Das Signal EDCLK wird in dem Gatter mit dem Ausgang des Wortkomparators 22 über einen Inverter kombiniert. Das Ausgangs signal des !Comparators wird mit GOhPAHE bezeichnet und wird hoch gelegt, wenn aufeinanderfolgende Worte identisch sind. Das Ausgangssignal des Gatters 112 ist mit CUftPHST* bezeichnet und ist ein Spiegelbildliches Signal zu dem Signal HDCLK., und zwar solange wie aufeinanderfolgende Worte nicht identisch sind. Das Ausgangssignal des Gatters wird durch einen Inverter 126 invertiert, um das mit HEFCLK bezeichnete Ausgangssignal zu erzeugen, welches ein Abbild des Signals RDClü ist, solange aufeinanderfolgende Worte nicht identisch sind. Die Verzögerungsregister 16a bis 16c werden durch die abfallende Flanke des Signals HDCLK* (ansteigende Flanke von CLKD) gesteuert, während das Hegister 20 durch die abfallende Flanke von EEi1CLK (abfallende Flanke von DLKD) gesteuert wird. Da das Hegister 20 nach dem Hegister 16a geshiftet bzw. verschoben wird, wird ein Datenwort (DTBT1-DTBTö) zum Ausgang des Registers 16a verschoben, und es ist am Eingang zum Register 16a ein neues Wort vorhanden, bevor das erste Wort zum Ausgang des Registers 20 verschoben ist. Wenn die Daten zum Ausgang des Registers 20 verschoben sind, werden sie dem Eingang des Wortkomparators 22 zugeführt. Der Komparator 22 -ist eine Binärsubtrahiereinrichtung, welche einen Volladdiorer 122 und einen Größen- bzw. Amplitudenkomparator 124 aufweist. Das erste Datenwort wird zu dem Komplement des folgenden Datenwortes addiert, welches durch die Inverter erzeugt wird. Wenn* zwei aufeinanderfolgende Worte identisch sind, so ist das 8-Bit-Antwortsignal gleich 0. Dieses Antwortsignal wird mit 0 im Größenkomparator 124 bzw. Amplitudenkomparator 124 verglichen, welcher das Signal COMPARE hoch legt. Die Toleranz beim Komparator 22 kann dadurch verändert werden, daß lediglich einer oder mehrere der Eingänge zum Komparator 124 von der Addiereinrichtung 122 geerdet werden. Der erste Impuls RDCLK, welcher das erste Wort in das Register 16a eingibt,
5098 18/0750
zu
erzeugt den Impuls COHPEST*, da/dieser Zeit COMPAEE tief
liegen würde.
Die Modussteuerlogik 30 weist einen Binärzähler 128, Verzögerungs-Flip-i'lops 130-142 und NAND-Gatter 144-, 146 und 148 auf. Das Signal COMPEST* wird durch die ansteigende Planke des Signals EDCLK tief gelegt, sobald aufeinanderfolgende Worte nicht identisch sind, und das i'lip-Plop 1J0 wird zurückgestellt, wodurch sein Ausgang Q*, der mit GTL2* bezeichnet ist, hoch gelegt wird, um das direkte Eücksetzen bei den Plip-i'lops und 134 auszulösen. Das Signal COMPEST* stellt auch den Zähler 128 auf eine Zählung 0 zurück, und zwar über einen Inverter 150. Wenn zwei aufeinanderfolgende identische Worte ermittelt werden, wird COMPAEiL1 hoch gelegt, das Gatter 114 wird aktiviert, und das Gatter 112 wird abgeschaltet. Wenn das Gatter 112 abgeschaltet ist, wird das Bezugsregister 20 nicht länger zeitlich gesteuert, so daß das im Eegister 20 gespeicherte Wort zum nachfolgenden Vergleich mit nachfolgenden Worten gehalten wird. Wenn das Gatter 114 aktiviert ist, wird der Zähler 128 bei der abfallenden Planke des Signals COMPLCK* gesteuert. Der Zähler128 wird somit gleichzeitig mit den Zählern 16a-16c gesteuert bzw. getaktet, und zwar nach dem ersten von zwei aufeinanderfolgenden identischen Worten, die in das Eegister 16a eingegeben wurden. Der Zähler 128 folgt den Datenworten, während sie durch die Eegister 16b und 16c hindurchgeschoben hihdurchgeshiftet werden. Wie oben bereits ausgeführt wurde, sind drei aufeinanderfolgende identische Worte erforderlich, um auf die Wortkodierung überzugehen, wobei 8-Bit-Worte verwendet werden und die Vergleichsgruppen gleich einem Wort sind. Wenn drei aufeinanderfolgende identische Worte auftreten, wird der Ausgang CT2 des Zähler 128 hoch gelegt, wenn die drei Worte ind die Eegister 16a, 16b und 16c jeweils eingegeben werd.en, um das Gatter 144 zu aktivieren. Wenn das Gatter 144 aktiviert ist, bringt der Impuls: EDCLK das S'lip-Plop 130 dazu, daß es umgeschaltet wird, wodurch GTL2* tief gelegt wird, um die
50 98 18/0750
Verzögerungs-Flip-Flops 132 und 134 rückzustellen, so daß der Ausgang Q* des Flip-Flops 134· hoch, gelegt wird, der mit EQUAL bezeichnet ist. Wenn EQUAL hoch geht, wird das Gatter 146 aktiviert, so daß die Flip-Flops 132 und 134- von dem Signal RDCLK umgeschaltet werden können. Die Flip-Flops 132 und können ihre Zustände jedoch nicht ändern, bis das direkte Rückstellsignal ausgelöst ist, d. h.. bis GTL2* durch COKPEST* hoch gelegt wird, wodurch das Flip-Flop 130 rückgestellt wird. Dies tritt auf, wenn das erste nicht identische Wort in das Register 16a eingegeben wird, weil zu dieser Zeit CühPARE tief liegt, weil es tief gelegt wurde, als das erste nicht identische Wort am Eingang des Registers 16a auftrat. Die zwei Verzögerungs-Flip-Flops 132 und 134 bringen EQUAL dazu, daß es tief geht, wenn das erste nicht identische Wort in das Register 16c eingegeben wird. Das Signal EQUAL wird dazu verwendet, den Zustand des Flip-Flops 136 einzustellen.. Beim Eingeben des ersten von drei aufeinanderfolgenden identischen Worten in das Register 1b (Fig. 2) wird das Flip-Flop 13>6 derart angesteuert, daß es das Signal FiA ICH hoch legt. Wenn das Signal iiATCH hoch liegt, wird das Flip-Flop 138 derart gesteuert, daß es das Signal WDMODE hoch legt und das Signal WDMODE* tief legt, wenn das nächste Wort in das Register 18 eingegeben wird. Das Flip-Flop 140 wird umgeschaltet, wenn das erste Bit des zweiten Wortes aus dem Register 18 hinausgeschoben wird, um das Signal BLOCJi hoch zu legen und um das Signal BLOCK* tief zu legen, damit der Üitpaarkomparator 24 über das Gatter 90 gesperrt wird, so daß ein Vergleich zwischen dem letzten Bit des ersten Wortes und dem ersten Bit des letzten Wortes verhindert wird. Weiterhin stellt das Signal BLOCK* den Zähler '/0 auf eine Zählung 0 zurück. Durcn die ansteigende Flanke von CLKC, unmittelbar vordem Verschieben des zweiten Bits des zweiten Wortes aus dem register 1b hinaus, wird das Flip-Flop 192 umgeschaltet, um. das Gatter 148 zu aktivieren. Bei dem Auftreten der ansteigenden Flanke des nächsten Impulses CLKB
5 09818/0750
wird das Signal I1 S1I1AHl1* tief gelegt, um einen übergang im Ausgangssignal am .Beginn der Bitzeit über das Gatter 102 zu erzeugen (siehe Fig. 2).
Gemäß I1 ig. 4 steuert das Signal l·1 START* den Wortmodus-Impulsgenerator und die Steuerlogik 28. Der Wortmodus-Impulsgenerator 28 erzeugt Impulse von 1 1/2 Bitzeiten, und er weist Flip-Flops 150, 152 und 154 auf, welche von Signal RFB* über ein NAND-Gatter 156 umgeschaltet werden. HB1B* arbeitet mit einer Frequenz, welcher der doppelten Bitrate entspricht, so daß der logische Pegel am Eingang des Flip-Flops 150 am Ausgang des Flip-Flops 154 nach einem Intervall von 1 1/2 Bitzellzeiten auftritt. Das Flip-Flop 158 wird vom Signal Ji1 START* gesetzt, wodurch sein mit F WABL bezeichnete Ausgang Q hoch gelegt wird und sein mit N NABL bezeichnete Ausgang Q* tief gelegt wird, um die Erzeugung des ausschließlich aus Übergängen gebildeten Musters auszulösen. Wenn N NABL tief geht, wird ein NOR-Gatter 160 aktiviert, um zu gestatten, daß die Flip-Flops 150-154 jedesmal dann durch D BLIP zurückgestellt werden, wenn ein Übergang in den Ausgangsdaten auftritt. Die Flip-Flops 162 und 164 sind zwischen den Flip-Flops 158 und 150 angeordnet, um die vorde-· ren und die rückwärtigen Grenzen des ausschließlich aus Übergängen gebildeten Musters zu steuern, F START* stellt auch
einen Binärzähler 166 zurück, der zeitlich durch den Ausgang ■ Q des Flip-Flops 154 gesteuert wird, der mit 1" TIhE bezeichnet ist. Die Funktion des Zählers 166 besteht darin, den nachfolgenden Taktimpulsen mit einer Bitzellzeit von 1 1/2 zu folgen, um die Markierung in dem ausschließlich aus Übergängen gebildeten Muster zu erzeugen. Der Rückstelleingang des Flip-Flops 162 wird durch WDMODE* und D BLIP über ein NAND-Gatter 168 gesteuert. Der Rücksteileingang des Flip-Flops 164 wird durch die. logische Schaltung gesteuert, welche das NOR-Gatter 1?0, das NAND-Gatter 1?2, das NAND-Gatter 174 und den Inverter I76 aufweist.
509818/0750
244731O
Wie oben bereits angegeben wurde, ist die vordere Grenze zwischen dem ersten und dem zweiten Übergang in dem ausschließlich aus übergängen gebildeten huster entweder 2 oder 2 1/2 Bitzeiten, was von dem Zustand des letzten Bits des ersten oder des Bezugswortes abhängt. Zu der Zeit, zu welcher F STAKT* tief gelegt wird, ist das letzte Bit des zweiten Wortes am Ausgang CJ des Schieberegisters 18 vorhanden, und da das zweite Wort dasselbe ist wie das erste, wird der Zustand von G3 durch das NAND-Gatter 178 abgetastet. Wenn 03 hoch liegt, setzt 1? START* das Flip-Flop 162 über den Inverter 180 und das NAND-Gatter 178, um dessen Ausgang S1 hoch zu legen. Die Flipli'lops 162 und 164 werden ebenfalls von Kb1B* umgeschaltet, so daß das Setzen des Flip-Flops 162 das Signal F TIME* dazu bringt, daß es tief geht, und weiterhin einen Übergang im Ausgangsdatensignal hervorruft, und zwar zwei Bitzellzeiten später als F START* tief geht. Andererseits wird dann, wenn CJ tief liegt, das Flip-Flop 162 nicht gesetzt, und es vergehen 2 1/2 Bitzellzeiten, bevor F TlMS* tief geht.
Die Verschiebesteuerlogik bzw. Shiftsteuerlogik 14 weist weiterhin NAND-Gatter 181, 182, 184 und 186 auf, weiterhin ein Nor-Gatter 188 und ein Flip-Flop 190 auf. Wenn F START* tief geht, um den Zähler 166 zurückzustellen, so wird sein Ausgang FCT4 tief gelegt, um den Ausgang des Gatters 181 hoch zu legen. Da F START* das Flip-Flop 1^8 setzt, liegt auch F NABL hoch, so daß der Ausgang des Gatters 182 tief liegt, um das' Gatter 188 zu aktivieren. Jedesmal dann, wenn F TllviE* tief geht, geht F TIME hoch, und bei der abfallenden Flanke von F TIIlE wird der Zähler 166 angesteuert. Die drei aufeinanderfolgenden Übergänge, welche die zwei aufeinanderfolgenden 1 1/2-Bitzeit-Impulse bilden, werden durch den Zähler 166 gezählt, und wenn der dritte der drei aufeinanderfolgenden Übergänge auftritt, wird der Ausgang des Gatters 172, der mit
5 09818/0750
ϊ·Ο(Ε3* "bezeichnet ist, tief gelegt, um das i'lip-i'lop 164 zurückzustellen. Das ΪΊχρ-ϊ'Ίορ 164 bleibt durch FCTJ* im zurückgestellten Zustand, bis das letzte der aufeinanderfolgenden Worte in das Register 18 eingegeben ist. Zu dieser Zeit geht HATCH* hoch, und. die Rückstellung des Üflip-Flops wird ausgelöst. Dies gestattet, daß die .Flip-Flop s 164 und bis 154- schwingen und ein Signal D BLlP verursachen, d. h., den fünften Übergang, der um 1 1/2 Bitzellzeiten später auftritt, als das erste nicht identische Wort in das Schieberegister 18 eingegeben wurde. Somit ist die Breite des Impulses zwischen dem vierten und dem fünften Übergang in dem ausschließlich aus Übergängen gebildeten lluster 11/2 Bitzellen plus eine halbe Bitzelle für jedes folgende identische Wort. Das Ausgangssignal des Gatters 172 wird über einen Inverter 192 angelegt, um den Eingang des l'lip-i'lops 190 anzusteuern, dessen Ausgang Q mit HDlNXTWD (nächstes Wort Gelesen) bezeichnet ist. Nach den drei aufeinanderfolgenden Übergängen, welche durch 1 1/2 Bitzeiten voneinander* getrennt sind, wird das i'lip-i'lop 190 umgeschaltet, um das Gatter 60 zu schließen und um WOHD LOAD* über die Gatter 52 und 54 (Fig. 2) tief zu legen, was dazu führt, daß die folgenden Datenworte jede halbe Bitzellzeit eingegeben werden. Die hodussteuerlogik 30 (Fig. 3) legt WDliUDE tief, während WDhXJDE* hoch gelegt wird, wenn das erste nichtidentische Wort in das Schieberegister 18 eingegeben wird. Wenn das Flip-Flop 190 zurückgestellt wird, wird SKEW über die Gatter 184 und 188 hoch gelegt. Das Signal SKEW schaltet die Register 16 und 80 ab, um zu verhindern, daß das erste nicht identische Wort aus dem Register 18 hinausgeschoben wird, während die Wortkodierung beendet wird. Wenn WDhODE* hoch geht, wird das Gatter 168 aktiviert, so daß D BLIP beim Erzeugen des fünften Überganges die Flip-Flops 162 und 164 zurücksetzt, und zwar zusätzlich zum Zurücksetzen der Flip-Flops 150-154 und zur Ansteuerung des Zählers 166, damit FCT4 hoch gelegt wird. Wenn FCT4 hoch geht, geht der Eingang zum
50 98 187,0750,
Flip-Flop 158 über den Inverter 194 tief. Die Zeit des Auftretens von FG T4 bestimmt die Breite der rückwärtigen Grenze des ausschließlich aus Übergängen gebildeten husters. Die Breite wird dadurch festgelegt, daß entweder das Flip-Flop 164 gesetzt wird oder nicht, wie es durch ein NAND-Gatter bestimmt wird. Die Eingänge zum Gatter 196 sind FCT4, CLKA*, OLkC und S1. Wenn FCT4 zu Beginn der Bitzeit auftritt, dann sind sowohl CLKA* als auch OLKG hoch, und demgemäß wird das Flip-Flop 164 beim Umschalten des Flip-Flops 162 gesetzt, so daß drei lialbbitzeiten später S4 hoch geht, um das ü'lip-Flop 158 umzuschalten, wodurch F KABL tief gelegt und N MaBL hoch gelegt wird, wodurch wiederum die Flip-Flops 150, 152 und 154 über das Gatter 160 zurückgestellt werden und auch der Bitpaarkomparator 24 aktiviert wird. Unmittelbar bevor N NABL hoch geht, während S3 noch hoch ist, setzt das Gatter 108 (Fig. 2) das Flip-Flop 84, wodurch 010 hoch gelegt wird, damit gewährleistet ist, daß ein Paar von Bits mit einem logischen Pegel 0 nicht im Register 80 vorhanden sind, und zwar zu der Zeit, zu welcher der Komparator 24 aktiviert ist. Der Ausgang des Gatters 181 wird tief gelegt, um SKEW tief zu legen, wenn S2 hoch geht, und zwar auf ein Hochgehen von F0T4 hin, so daß dadurch das Gatter 64 (Fig. 2) aktiviert wird und die Register 18 und 80 getaktet werden können. Wenn der Bitpaarkomparator aktiviert ist, werden die Daten im Register 18 als Bitpaare kodiert.
Wenn andererseits FCT4 hoch geht, und zwar in der Mitte einer Bitzeit, wird das Flip-Flop 164 nicht gesetzt, und N NABL wird um 1/2 Bitzeit später hoch gelegt, so daß der nächste zugelassene übergang in den Ausgangsdaten zu Beginn der Bitzeit erfolgt. Ein Übergang kann unter Umständen auftreten, was von dem Zustand der Daten abhängt, die in das Register eingegeben werden.
5 09818/0750
Lie Daten werden Bitpaar kodiert, "bis drei aufeinanderfolgende identische Worte ermittelt werden, worauf eine Wortkodierung erfolgt, wie es oben "beschrieben ist.
Das Starten des Kodierers und die Kodierung der sechs 8-Bitworte, die in der Fig, 5 angegeben sind, wird nachfolgend anhand der Fig. 2 bis- 4 und der Wellenformen in der Fig. 5 beschrieben, wobei insbesondere auf die Wellenform CLKD Bezug genommen wird. Bei der abfallenden !flanke von CLKB, welche auf einen Impuls START BLIP folgt, wird das Signal WOHD LOAD* tief gelegt, um das Register 18 für eine Paralleleingabe vorzubereiten. Durch die ansteigende Flanke von CLKD wird das erste Wort der sechs 8-Bitworte in das Register 16a geshiftet bzw. geschoben, das Flip-Flop 130 wird zurückgestellt, um die Flip-Flops 1J2 und 134 auszulösen, und der Zähler 128 wird auf eine Zählung 0 zurückgestellt. Bei der abfallenden Flanke von CLKD wird das erste Datenwort in das Bezugsregister 20 geshiftet und mit dem zweiten Datenwort verglichen, welches am Eingang des Registers 16a auftritt. Da diese zwei Worte identisch sind, wird COMPARE hoch gelegt. Bei der abfallenden Flanke des nächsten Impulses CLKB erreicht der Binärzähler 50 " eine Zählung von 1. Bei der ansteigenden Flanke des nächsten Impulses CLKD wird das erste Wort in das Register 16b eingegeben, und das zweite Wort wird in das Register 16a gebracht, und der Zähler 128 erreicht eine Zählung von 1. Bei der abfallenden Flanke des nächsten Impulses CLKB erreicht der Zähler 50 eine Zählung von 2. Bei der ansteigenden Flanke des nächsten Impulses CLKD wird das erste Wort in das Register 16c gebracht, das zweite Wort wird in das Register 16b gebracht, und das dritte Wort wird in das Register 16a gebracht, und der Zähler 128 erreicht eine Zählung von 2, und das Flip-Flop I30 wird dadurch umgeschaltet, wodurch die Flip-Flops 132 und 134 " zurückgestellt werden, was EQUAL hoch legt. Bei der abfallenden Flanke des folgenden Impulses CLKB erreicht der Zähler 50
5098 18/0750
"28~ 24A7310
eine Zählung von 3. Bei der ansteigenden Hanke des folgenden Impulses CLKD wird das erste Wort in das Register 18 eingegeben, das zweite Viort wird in das Register 16c eingegeben, das dritte Wort wiro in das Register 16b gebracht ur.d das vierte Wort wird in das Register 16a eingegeben, und das Flip-Flop 1J6 wird umgeschaltet, wodurch iiATCH hoch gelegt wird. Wenn das vierte Wort in das Register 16a eingegeben wird, erscheint das fünfte Wort, welches mit dem ersten Wort und dem Bezugswort nicht identisch ist, an dem !eingang zu dem Register 16a, und COHlARE geht tief. Bei der abfallenden !flanke des nächsten Impulses CLKB erreicht der Zähler 50 eine Zählung von 4, wodurch das Flip-Flop 46 zurückgestellt wird, um die Startschaltung außer Betrieb zu setzen, wodurch weiterhin das Flip-Flop 48 zurückgestellt wird, so daß WORD LOAD* hoch gelegt wird, um das Register 18 für eine serielle Verschiebung der Daten vorzubereiten, wodurch weiterhin der Binärzähler 70 auf eine Zählung von 1 gebracht wird, und wodurch die Flip-Flops 94 und 96 gesetzt werden, so daß START CODE 2* tief gelegt wird, um den Bitpaarkomparator 24 zu sperren. Wenn WCitD LCAi)* hoch geht, wird das Gatter 110 geschlossen, so daß dadurch eine Eingabe weiterer Datenworte in das Register 16a verhindert wird. Bei der ansteigenden Flanke des nächsten Impulses CLKD wird das erste Bit des ersten Worte in das Flip-Flop 82 eingegeben, und das Flip-Flop 96 wird umgeschaltet. Bei der abfallenden Flanke dieses Impulses CLKD wird der Zähler ?0 auf eine Zählung von 2 gebracüt. Bei der ansteigenden Flanke des nächsten Impulses CLKD wird das Flip-Flop 94 umgeschaltet, und das erste Bite des ersten Wortes wird in das Flip-Flop eingegeben, und das zweite Bit des ersten Wortes wird in das Flip-Flop 82 gebracht.
Wenn das Flip-Flop 94 umgeschaltet wird, wird START CODE 2* hoch gelegt, um.den Bitpaarkomparator 24 zu aktivieren. Bei der abfallenden Flanke des Impulses CLKD erreicht der Wähler yo
E098 18/07 50
. 2U7310
eine Zählung von 3» und die gleichzeitig ansteigende Jj'lanke von CLJiB tastet die Daten "bei 09 und 010 ab, um zu bestimmen, o"b die ersten zwei Bits ein Paar von Bits mit einem logischen Pegel 1 sind. Die ansteigende Flanke von CLKB ruft auch den Beginn der Bitzelle 1 (BC1) des kodierten Ausgangssignals hervor. Bei der folgenden ansteigenden i'lanke von CLKC werden die Daten im !Register 80 abgetastet, um zu bestimmen, ob die ersten zwei Bits der Daten ein Bitpaar mit dem logischen Pegel 0 sind, d. h. ob die Ausgänge C9* und C10* beide eine logische 1 sind. Die ansteigende i'lanke von CLKC legt die hitte von BC1 des Ausgangssignals fest. Nachfolgende Impulse CLKD verschieben die Daten von dem Register 18 zu dem Register 80 und steuern den Zähler '/Ό an. In der Mitte von BC3 wird ein Paar von Bits mit dem logischen Pegel 0 in dem .Register gespeichert, wodurch ein Impuls D BLIP erzeugt wird, der mit CLKC zusammenfällt, und es tritt ein Übergang in der hitte von BC3 der Ausgangsdaten auf. Zu Beginn von BC6 erreicht der Zähler 70 eine Zählung von 8, wodurch CTö hoch gelegt wird, was wiederum WOHD LOAD* tief legt, um das Register 18 für die Paralleleingabe vorzubereiten und das Gatter 110 zu aktivieren, so daß die .Register 16a-16c und 20 durch einen Zeitsteuerimpuls beaufschlagt werden können. Bei der ansteigenden i'lanke des nächsten Impulses CLKD wird das Plip-l'lop 82 umgeschaltet, um das letzte Bit des ersten Wortes zu verschieben, welches an dem Ausgang 08 des Registers 18 auftritt, und zwar in das l'lip-i'lop 82, und um das zweite Wort der Daten in das Register 18 zu schieben, das dritte Wort der Daten in das Register 16c, das vierte Wort der Daten in das Register 16b und das fünfte Wort der Daten in das Register 16a. Das Flip-Flop 130 wird durch den Impuls COFlPRST* zurückgestellt, um das direkte Zurückstellen auf den Flip-ii'lops 132 und 134 auszulösen und den Zähler 128 auf eine Zählung von 9 zurückzustellen. Weiterhin wird das Flip-Flop 138 umgeschaltet, wodurch WORD MODE hoch gelegt wird. Wenn WORD MODE hoch geht, wird das Gatter 172 über das Gatter T/0
5098 18/0750
aktiviert, und das Gatter 168 wird dadurch abgeschaltet, so daß das Rückstellen auf dem Flip-Flop 164 ausgelöst wird. Bei der abfallenden Flanke des Impulses GLKD wird das fünfte Datenwort in das Register 20 geschoben, und das Flip-Flop 132 wird über das Gatter 146 umgeschaltet, und der Zähler 70 wird derart gesteuert, daß er eine 1 zählt, wodurch CT8 dazu gebracht wird, tief zu gehen und WORD LOAD* dazu gebracht wird, hoch su gehen, und wodurch das Gatter 110 geschlossen wird, um eine weitere Zeitsteuerung der Register 16a-16c und 20 zu verhindern. Zu Beginn von BC/ wird ein Paar von Bits mit dem logischen Pegel 1 im Register 80 gespeichert, wodurch ein Übergang in den Ausgangsdaten bei der ansteigenden Flanke von CLKB au Beginn der Bitzellzeit ausgelöst wird. Bei der nächsten ansteigenden Flanke von CLKD wird das Flip-Flop 140 umgeschaltet, wodurch wodurch das Signal BLOCK hoch gelegt wird und das Signal BLOCK* tief gelegt wird, um den Binärzähler ?0 auf eine Zählung 0 zurückzustellen und um weiterhin den Bitpaarkomparator 24 über das Gatter 90 um den Inverter 92 zu sperren. Das Signal BLOCK* verhindert somit einen Vergleich zwischen dem achten Bit des ersten Wortes y&ä. oder des Bezugswortes und dem ersten Bit des zweiten Wortes, wenn das erste Bit des zweiten Wortes nachfolgend in das Register 80 eingegeben wird. Wenn das Signal BLOCK hoch liegt, schaltet die nächste ansteigende Flanke von CLKC das Flip-Flop 142 um, um das NAND-Gatter 148 zu aktivieren. Bei der ansteigenden Flanke des nächsten Impulses CLKD wird das zweite Bit des zweite Wortes in das Register 80 eingegeben, und das letzte Bit des zweiten Wortes erscheint am Ausgang C3 des Registers 18. Da die ersten zwei Worte identisch sind, wird das letzte Bit des zweiten Wortes dazu verwendet, das letzte Bit des ersten Wortes zu identifizieren. Da das letzte Bit des ersten Wortes gleich 1 ist, wird das Gatter 178 aktiviert. Nachdem das Flip-Flop 142 bei der ansteigenden Flanke des Signals CLKC umgeschaltet wurde, legt die nächste ansteigende Flanke von CLKB am Beginn von
B09818/0750
BG9 das Signal F START* tief, und zwar über das Gatter 148, welches die Flip-Flops 158 und 162 setzt, so daß F IiABL und S1 hoch gelegt werden und K MJbL tief gelegt wird, so daß dadurch das Flip-Flop 150, das Flip-Flop 152 und das Flip-Flop 154 durch das Gatter 160 ausgelöst werden und das Flip-Flop ■zurückgestellt wird, um das Gatter 148 abzuschalten. Das Signal F STAM'* stellt auch den Zähler 166 auf eine Zählung 0 zurück, wodurch die Rückstellung des Flip-Flops 164 über die Gatter 172, 174 sowie den Inverter 176 ausgelöst wird. Während der Ausgang FCT4 des Zählers 166 tief liegt, liegt der Eingang zum Flip-Flop 158 hoch, und das Gatter 196 wird abgeschaltet, um den Setzeingang bzw. .einst eil eingang zum Flip-Flop 164 auszulösen. Weiterhin erzeugt der Impuls F STAM1* einen Impuls D BLIP über das Gatter 102, welches dasFlip-Flop 98 umschaltet, wodurch ein übergang in den kodierten Ausgangsdaten zu Beginn von BC9 erzeugt wird. Die Flip-Flops 162, 164, 150-154 werden nachfolgend durch das Signal -EJB1B* über das Gatter 156 umgeschaltet. Die Impulse RFB* treten mit der doppelten Bitratenfrequenz auf. Nach zwei Bitzellzeiten wird F TIhE hoch gelegt, und F TIhE* wird tief gelegt, wodurch über das Gatter 108 ein Impuls D BLIP und ein Übergang in den Ausgangsdaten zu Beginn von BC11 erzeugt werden. Der Impuls D BLIP, welcher durch den Impuls F THlE erzeugt wird, stellt die Flip-Flops 150, 152 und 154 über das Gatter 160 zurück, wodurch F TIhE tief gelegt wird, was wiederum den Zähler 166 derart steuert, daß FCT1 hoch gelegt wird. Drei Halbbitzellzeiten später wird der hohe Pegel bei S2 von F TIhE und F TIhE* nochmals tief gelegt, wodurch ein Übergang in den kodierten Daten erzeugt wird. Die Flip-Flops 150, 152 und 154 werden erneut zurückgestellt, und das Register 166 wird so gesteuert, daß FCT2 hoch gelegt und FCT1 tief gelegt wird. Drei Halbbitzeiten später wird F TIME* erneut tief gelegt, um einen Übergang in den Ausgangsdaten zu erzeugen und um die
509818/0750
Flip-Flops 150, 152 und 154 zurückzustellen, wodurch der Zähler 166 auf eine Zählung von 3 gebracht wird, was wiederum dazu führt, daß alle Eingänge zum Gatter 172 hoch gelegt werden, wodurch Jj-GTJ* tief gelegt wird, was wiederum dazu führt, daß das Flip-Flop 164 über das Gatter T/4 S2 tief legt. Weiterhin ist bei tiefem FCTJ* der Eingang zum Flip-Flop 190 vom Inverter 192 hoch, so daß bei der abfallenden Flanke des nächsten Impulses CLKG das Flip-Flop 190 umgeschaltet wird, um RDKXTWD dazu zu bringen, hoch zu gehen, und um RDImXTWD* dazu zu bringen, tief zu gehen, wodurch WORD LOAD* über die Gatter 52 und 54 tief gehen, um das Register 18 für einen parallelen Dateneingang vorzubereiten. Weiterhin wird das Gatter 56 vom Gatter 60 kontinuierliche aktiviert, und zwar solange wie RDNXTWD hoch ist, so daß Impulse CLKD mit der Frequenz von Ri1B* erzeugt werden, d. h. mit der doppelten Rate der Daten, welche zuvor durch die Register 16a-16c geschoben wurden. Bei der ansteigenden Flanke des Impulses CLKD, der während BC14 auftritt, werden .das sechste und das letzte Wort in das Register 16a eingegeben, und bei der abfallenden Flanke dieses Impulses CLKD wird das Flip-Flop 134 umgeschaltet, um EQUAL tief zu legen. Bei der ansteigenden Flanke des nächsten Impulses CLKD wird das letzte der vier gleichen Worte in das Register 18 geladen, und das Flip-Flop 136 wird umgeschaltet, um 3"1ATCh dazu zu bringen, tief zu gehen, wodurch wiederum FCT3* über die Gatter I70 und 172 hoch gelegt wird, um den Rückstelleingang auf dem Flip-Flop 164 auszulösen. Zusammenfallend mit der abfallenden Flanke dieses Impulses CLKD wird S2 hoch geschaltet. Bei der ansteigenden Flanke des nächsten Impulses CLKD wird das Flip-Flop 1J8 umgeschaltet, so daß WOKD M)DE tief geht, und das fünfte Wort welches mit den vorhergehenden Worten nicht identisch ist, noch mit dem sechsten Wort, wird in das Register 18 geladen. Wenn WORD hODE tief liegt, liegt WORD MODE* hoch, um das NAND-Gatter 186 in die Lage zu versetzen, daß es bei der abfallenden Hanke
509818/0750
des dritten Impulses CLKD während WuRD LOAD des Flip-Plop 190 zurückgestellt wird, wodurch RDNXl1WD* hoch gelegt wird, um das Register 18 über die Gatter 52 und 54- für eine serielle Verschiebung vorzubereiten. F NABL liegt hoch, und da FCT4 tief liegt, liegt der Ausgang des Gatters 181 hoch und der Ausgang des Gatters 182 liegt tief, um das Gatter 188 zu aktivieren.. Da WOED FIODE* hoch liegt, wenn RDInTXTWD* hoch geht, geht der Ausgang des Gatters 184 tief, wodurch das Signal SkEW hochgelegt wird, um den -Binärzähler 70 über das Gatter 74- auf eine Zählung von 1 zu stellen und um das Gatter 64 zu schließen, damit die Ansteuerung des Registers 18 oder des Registers 80 während der Beendigung der Worticodierung vermieden wird. 1 1/2 Bitzeiten nachdem WOKD hODE ti el' geht, geht P TIPiE* ebenfalls tief, um den tibergang zu Beginn von BC17 zu erzeugen. Da S2 über 3 Halbb.it ζ ellzeit en durch ECTJ* tief gehalten wurde, beträgt die Breite des Impulses, welcher auf die 3-Übergangsharkierung folgt, 3-Bi"tzeiten, um die Tatsache zu kodieren, daß die drei nachfolgenden Worte, welche auf das Wort folgen, welches während BC1-BC8 kodiert wurde, mit diesem Wort identisch sind. Wenn F TIME* tief geht, werden die Flip-Flops 162, 164 und 150-154-' zurückgestellt, und der Zähler 166 wird blockiert, wodurch FCT4 hoch gelegt wird. Da dies zu Beginn der Bitzeit geschieht, wird das Flip-Flop 164 eine halbe Bitzellzeit später gesetzt, und zwar über das Gatter 196, und. SLEW wird über die Gatter 181 und 182 tief gelegt, um das Gatter 64 zu öffnen und um eine Ansteuerung der Register 18 und 80 zu ermöglichen, .eine halbe Bitzellz-eit später geht S3 hoch, um das Flip-Flop über das Gatter 108 zu setzen. Wenn S4 hoch geht, und zwar 1/2 Bitzellzeit später, wird N NABii hoch gelegt, um das Flip-Flop 142 auszulösen, so daß dadurch der Bitpaarüomparator 24 aktiviert wird und die Flip-Flops 150-154 zurückgestellt werden. Zu Beginn von BC19 wird das zweite Bit des fünften Wortes in das Flip-Flop 82 eingegeben und definiert den Beginn von B01
5 09818/075 0
des fünften Wortes. Das fünfte und das.sechste Wort werden dann mittels Bitpaarkodierung kodiert, um Übergänge zu .beginn von BC23, BC26 und BC2Ü sowie in der hitte von BC32 zu erzeugen.
Jis ist ersichtlich, aaß 4o üic in cien ^usgangsdaten derart komprimiert wurden, daß dieselben Daten in nur 34 Bitzellen angeordnet sind, und es ist weiterhin ersichtlich, daß, während die Ausgangswellenform Übergänge enthält, welche durcii nur eine Bitzellzeit voneinander getrennt sind, die Übergänge in der codierten wellenform durch mindestens 1 1/2 Bitzellzeiten voneinander getrennt sind.
Die kodierten Ausgangsdaten des ü-atters 100 C^'ig. 2) können dazu verwendet werden, die Baten auf !magnetband aufzuzeichnen, oder die Daten können einer Einrichtung zugeführt werden, mit welcher sie direkt oder nach einer Phasen- oder frequenzmodulation eines l'rägers fernübertragen werden. Die Einrichtung zur Aufzeichnung der Information auf einem Magnetmedium ist nicht im Detail beschrieben, da eine derartige Einrichtung grundsätzlich bekannt ist. Beispielsweise würde das Ausgangssignal des Gatters 100 verstärkt und dazu verwendet, einen Aufzeichnungskopf zu beaufschlagen, über welchen die Daten auf wenigstens einer linearen Spur des Mediums während einer Relativbewegung zwischen dem kopf und dem Medium aufgenommen werden. Das Aufzeichnungsmedium weist eine Eysteresis-Charakteristik auf, die zwei stabile Zustände der Remanenz hat, in welcher zwei verschiedene Hiciitungen der Magnetausrichtung von !'eilen des Mediums vorliegen. Der Magnetkopf bewirkt das Aufzeichnen auf dem Medium dadurch, daß Magnetfelder in der einen oder in der anderen von zwei Dichtungen erzeugt werden und daß die Kichtung in Abhängigkeit vom Ausgangssignal des Gatters 100 umgeschaltet wird. Das Aufzeichnungsmedium wird
5 09818/0750 BAD
normalerweise in einer Vielzahl von imaginären Bitzellen gleicher Länge unterteilt, welche als Identifikationsgrenzen für jedes Binärbit der Information dienen.
Die ".einrichtung zur Durchführung der hethode 1 1/2T zum üodieren ist der in den Fig. 1 bis 4 beschriebenen Einrichtung sehr ähnlich. Der Unterschied liegt in erster Linie im Wortmodus-Impulsgenerator und in der Steuerlogik 28 sowie in der Datenverschiebelogik 14, die in der Fig. 4 dargestellt ist. Bei der Durchführung der hethode 1 1/2T sollte die in der Pig. 6 dargestellte Steuerlogik die in der !'ig. 4 dargestellte Einrichtung ersetzen. Diejenigen logischen Elemente gemäß Fig. 4, welche in die Einrichtung gemäß Fig. 6 übernommen werden, sind mit einem Index a gekennzeichnet. Die betrieblichen Abwandlungen, welche durch die Einrichtung gemäß Fig. 6 eingeführt werden, lassen sich folgendermaßen zusammenfassen: Der erste und der zweite Übergang in dem ausschließlich aus Übergängen bestehende Huster tritt wie bei der"logischen Schal-,tung gemäß Fig. 4 auf. Bei zweiten Übergang wird ein Flip-Flop 200 umgeschaltet, um seinen mit FCi1I bezeichneten Ausgang Q hoch zu legen, damit die NAND-Gatter 202 und 204 aktiviert werden. Der Ausgang des Gatters 204 ist mit BLOCK D* bezeichnet, und wird durch das Eingangssignal S3 zum Gatter 202 für 1/2 Bitzellzeiten tief gelegt, und zwar nach dem Zurückstellen des Flip-Flops 150a von D BLIP über das Gatter 160a. Der Inverter 5>8 gemäß Fig. 2 wird durch ein NAND-Gatter 58a ersetzt, welches das Signal BLOCK D* empfängt. Das NOK-Gatter 60 gemäß Fig. 2 wir-d durch einen Inverter 60a ersetzt. Demgemäß wird während der Wortkodierung nur ein Impuls CLKD für jeweils 11/2 Bitzellzeit-Intervallen geliefert. Die Erzeugung des Signals SKEW und die Steuerung der rückwärtigen Grenze von 2 oder 2 1/2 Bitz.ell3n erfolgen durch das Flip-Flop 206. Der Eingang D des Flip-Flops 206 ist mit dem Ausgang eines NOE-Gatters 208 verbunden, welches das Signal am Ausgang Q* des Flip-Flops 200 mit
5 09818/0750
dem Signal WD hODE verbindet. WD KODE wird tief gelegt, und zwar bevor das letzte identische Wort kodiert wird. Wenn das letzte Signal D BLIP, welches dem letzten identischen Wort zugeordnet ist, erzeugt wird, so wird das Flip-Flop umgeschaltet, um seinen mit Jj1Cί'2 bezeichneten Ausgang Q zu Beginn oder in der hitte einer Bitzelle hoch zu legen. Das
ein
bignal iüT2 wird als/Eingangssignal an das Gatter 196a geführt, um das Flip-Flop 164 gemäß Fig. 4- zu steuern. Das Signal FC'T2* wird angelegt, um den Eingang des Flip-Flops 200 zurückzustellen, und wird dem Eingang D des JTlip-Flops 158a zugeführt.
,ein
Das Signal FCT1* ersetzt das Signal HDNXTWD* als/Eingangssignal zum Gatter 52 gemäß Fig. 2.
S09818/0750

Claims (1)

  1. Patentansprüche
    Vorrichtung zur Kodierung von Binärinformation mit verminderter -Redundanz durch Erzeugung von Übergängen zwischen logischen Zuständen in einem Ausgangssignal nach vorgegebenen Kodierungsregeln, dadurch g e k e η η zeichnet, daß eine erste logische Einrichtung (10, 12, 14, 16, 20, 22) vorgesehen ist, welche dazu dient, die Binärinformation abzutasten, um aufeinanderfolgende Gruppen von Bits zu ermitteln, die identisch sind, und zwar innerhalb einer vorgegebenen Toleranz, wobei die Einrichtung weiterhin dazu dient, die Anzahl der aufeinanderfolgenden Gruppen zu ermitteln, daß weiterhin eine zweite logische Einrichtung (18, 24, 26) vorhanden ist, um die Information zu kodieren, welche den aufeinander folgenden Gruppen vorangeht, und zwar ebenso wie die erste der aufeinanderfolgenden Gruppen, wobei die vorgegebenen Kodierungsregeln befolgt werden, um Übergänge im logischen Zustand im Ausgangssignal zu erzeugen, und daß weiterhin eine dritte logische Einrichtung (14, 28, 30) vorgesehen ist, welche dazu dient, ein Küster der Veränderungen eines logischen Zustandes zu erzeugen, welches aus dem durch die vorgegebenen Kodierungsregeln erzeugten Muster eindeutig herleitbar ist, und weiterhin dazu dient, dieses huster der Veränderung logischer Zustände in das Ausgangssignal einzufügen, und zwar nach dem Kodieren der ersten der aufeinanderfolgenden Gruppen, um die Anzahl der auf die erste Gruppe folgenden Gruppen zu identifizieren.
    2. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die erste logische Einrichtung eine Zeittaktsteuereinrichtung (10) aufweist, welche dazu dient, eine Vielzahl von
    509818/0750
    _ 2g _
    Bitzellen im wesentlichen gleicher Zeitdauer zu bilden, daß weiterhin eine logische Einrichtung (16, 22) vorhanden ist, welche auf die Binärinformation anspricht und auf die Zeittaktsteuereinrichtung, um getrennt identifizierbare logische Zustände im Ausgangssignal zu erzeugen, daß die zweite logische Einrichtung (18, 24, 26) auf diejenigen Bits einer Binärcharakterisierung in der ersten Gruppe von Bits anspricht, indem ein Übergang zwischen den getrennt identifizierbaren logischen Zuständen im Mittelpunkt von nur denjenigen der entsprechenden Bitzellen erzeugt wird, welche unmittelbar auf eine Bitzelle folgen, die keinen Übergang hat und auf welche unmittelbar eine Bitzelle folgt, die ein Bit der Binärcharakterisierung aufweist, und weiterhin auf solche Bits der anderen Binärcharakterisierung in der ersten Gruppe von Bits dadurch anspricht, daß ein Übergang zwischen den getrennt identifizierbaren Zuständen bei der vorderen Planke von nur solchen der entsprechenden Bitzellen erzeugt wird, welche unmittelbar auf eine Bitzelle folgen, die keinen Übergang aufweist und auf welche unmittelbar eine Bitzelle folgt, welche ein Bit der anderen Binärcharakterisierung enthält, daß die dritte logische Einrichtung (14-, 28 (i'ig.4), 30) auf die Gruppen von Bits anspricht, welche auf die erste Gruppe von Bits folgen sowie auf den Zustand des letzten Bits der ersten Gruppe von Bits, indem das Muster der Änderung des logischen Zustandes als ein Übergangsmuster zwischen den getrennt identifizierbaren Zuständen gebildet wird, welches einen ersten übergang an der rückwärtigen i'lanke derjenigen Bitzelle hat, welche dem letzten Bit der ersten Gruppe von Bits entspricht, welches weiterhin einen zweiten Übergang wenigstens zwei Bitzellen von dem ersten Übergang versetzt aufweist, welcher am Mittelpunkt oder an der vorderen Flanke einer Bitzelle liegt, was davon abhängt, ob der Zustand des letzten Bits der ersten Gruppe von Bits der einen oder der anderen Binärcharakterisierung entspricht, wobei weiterhin
    509818/0 750
    ein dritter Übergang gebildet ist, der von dem zweiten Übergang um 1 1/2 Bitzellen versetzt ist, weiterhin ein vierter Übergang, der von dem dritten Übergang um 1 1/2 Bitzellen versetzt ist und ein fünfter Übergang, der von dem vierten Übergang um einen Betrag versetzt ist, welcher 1 1/2 Bitzellen um eine halbe Bitzelle für jeweils eine . weitere Gruppe von Bits 'überschreitet, die auf die erste Gruppe von Bits folgen.
    3. Vorrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die erste logische Einrichtung einen Wortkomparator (22) aufweist, der auf die Binärinformation anspricht und auf die Zeittaktsteuereinrichtung, um aufeinanderfolgende Worte in der Binärinformation zu ermitteln, die eine vorgegebene Bitlänge aufweisen und zueinander identisch sind, und zwar innerhalb der vorgegebenen Toleranz, daß die zweite logische Einrichtung eine Abtasteinrichtung (24) für ein komplementäres Bitpaar aufweist, welche auf die Binärinformation anspricht und auf die Zeittaktsteuereinrichtung, und daß die dritte logische Einrichtung eine Sperreinrichtung (14O1 90, 92) aufweist, welche dazu dient, die Einrichtung zur Ermittlung von komplementären Bitpaaren während der Erzeugung des Übergangsmusters zu sperren, wobei weiterhin eine Aktivierungseinrichtung (1585 90, 92) vorhanden ist, welche die Einrichtung zur Erkennung von komplementären Bitpaaren zu Beginn einer Bitzelle aktiviert und wenigstens zwei Bitzellen von der Stelle des fünften Überganges an verzögert.
    4. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die erste logische Einrichtung eine Zeittaktsteuereinrichtung (10) aufweist, welche dazu dient, eine Vielzahl von Bitzellen im wesentlichen gleicher Zeitdauer zu bilden, daß weiterhin eine logische Einrichtung (16, 22) vorhanden ist, welche auf die Binärinformation anspricht und auf die
    509818/0750
    Zeittaktsteuereinrichtung, um getrennt identifizierbare logische Zustände im Ausgangssignal zu erzeugen, daß die zweite logische Einrichtung (18, 24, 26) auf diejenigen Bits einer Binärcharakterisierung in der ersten Gruppe von Bits anspricht, indem ein "Übergang zwischen den getrennt identifizierbaren logischen Zuständen im Mittelpunkt von nur denjenigen der entsprechenden Bitzellen erzeugt wird, welche unmittelbar auf eine Bitzelle folgen, die keinen Übergang hat und auf welche unmittelbar eine Bitzelle folgt, die ein Bit der Binärcharakterisierung aufweist, und weiterhin auf solche Bits der anderen Binärcharakterisierung in der ersten Gruppe von Bits dadurch anspricht, daß ein Übergang zwischen den getrennt identifizierbaren Zuständen bei der vorderen Flanke von nur solchen der entsprechenden Bitzellen erzeugt wird, welche unmittelbar auf eine Bitzelle folgen, die keinen Übergang aufweist und auf welche unmittelbar eine Bitzelle folgt, welche ein Bit der anderen Binärcharakterisierung enthält, daß die dritte logische Einrichtung (14, 28 (Fig. 4), 30) auf die Gruppen von Bits anspricht, welche auf die erste Gruppe von Bits folgen sowie auf den Zustand des letzten Bits der ersten Gruppe von Bits, indem das Muster der Änderung des logischen Zustandes als ein Übergangsmuster zwischen den getrennt identifizierbaren Zuständen gebildet wird, welches einen ersten Übergang an der rückwärtigen Flanke derjenigen Bitezlle hat, welche dem letzten Bit der ersten Gruppe von Bits entspricht, welches weiterhin einen zweiten Übergang wenigstens zwei Bitzellen von dem ersten Übergang versetzt aufweist, welcher am Mittelpunkt oder an der vorderen Flanke einer Bitzelle liegt, was davon abhängt, ob der Zustand des letzten Bits der ersten Gruppe von Bits der einen oder der anderen Binärcharakterisierung entspricht, wobei weiterhin ein dritter Übergang gebildet ist, der von dem zweiten Übergang um 1 1/2 Bitzellen versetzt ist, und es folgen weitere Übergänge, welche um 1 1/2 Bitzellen voneinander
    509818/0750
    2U7310
    getrennt sind und in ihrer Zahl der Anzahl der identischen Gruppen von Bits entsprechen, welche auf die. erste Gruppe von Bits, folgen.
    5- Vorrichtung nach Anspruch 4·, dadurch gekennzeichnet, daß die erste logische Einrichtung einen Vortkomparator (22) aufweist, der auf die Binärinformation anspricht und auf die Zeittaktsteuereinrichtung, um aufeinanderfolgende Worte in der Binärinformation zu ermitteln, die eine vorgegebene Bitlänge aufweisen und zugleich identisch sind, und zwar innerhalb der vorgegebenen Toleranz, daß die zweite logische Einrichtung eine Abtasteinrichtung (24) für ein komplementäres Bitpaar aufweist, welche auf die Binärinformation anspricht und auf die Zeittaktsteuereinrichtung, und daß die dritte logische Einrichtung eine Sperreinrichtung (14-0, 90, 92) aufweist, welche dazu dient, die Einrichtung zur Ermittlung von komplementären Bitpaaren während der Erzeugung des 'Übergangsmusters zu sperren, wobei weiterhin eine Aktivierungseinrichtung (158a, 90, 92) vorhanden ist, welche die Einrichtung zur Erkennung von komplementären Bitpaaren zu Beginn einer Bitzelle aktiviert und wenigstens zwei Bitzellen von der Stelle der letzten der zusätzlichen Übergänge im Übergängsmuster an verzögert.
    6. Vorrichtung nach einem der Ansprüche 2 bis 5» dadurch gekennzeichnet, daß die eine Binärcharakterisierung ein logischer Pegel null ist und daß die andere Binärcharakterisierung ein logischer Pegel eins ist.
    7- Verfahren zur Kodierung von Binärinformation mit verminderter Kedundanz, wobei die Kodierung der Binärinformation durch die Erzeugung von Übergängen im logischen Zustand eines Ausgangssignals nach vorgegebenen Kodierungsregeln erfolgt,
    5 09818/0750
    ~42~ 2U7310
    dadurch gekennzeichnet, daß das Verfahren folgende Schritte aufweist:
    1) Abtasten der Binärinformation, um aufeinanderfolgende Gruppen von Bits zu ermitteln, welche innerhalb einer vorgegebenen Toleranz identisch sind, und Abtasten der Anzahl der aufeinanderfolgenden Gruppen;
    2) Kodieren der Information, welche den aufeinanderfolgenden Gruppen vorausgeht, und zwar ebenso wie die erste der aufeinanderfolgenden Gruppen nach den vorgegebenen Kodierungsregeln, um im Ausgangssignal Übergänge im logischen Zustand hervorzurufen und
    3) Erzeugen eines Musters von "Übergängen im logischen Zustand, welches aus dem Muster der logischen Zustandsübergänge eindeutig herleitbar ist, welches nach den vorgegebenen Kodierungsregeln erzeugt wird, und Einfügen des Musters mit eindeutigen Übergängen im logischen Zustand in das Ausgangssignal, welches auf die Kodierung der ersten der aufeinanderfolgenden Gruppen folgt, um die Anzahl der aufeinanderfolgenden Gruppen zu identifizieren, die auf die erste Gruppe folgen.
    8. Verfahren nach Anspruch 7, "bei welchem der erste Schritt den Vorgang einschließt, daß eine Vielzahl von Bitzellen von im wesentlichen gleichförmiger Zeitdauer gebildet werden, daß der zweite Schritt getrennt identifizierbare logische Zustände im Ausgangssignal liefert und folgende Schritte enthält:
    a) Erzeugen eines Überganges zwischen den getrennt identifizierbaren Zuständen zu Beginn der ersten von zwei aufeinanderfolgenden Bitzellen, um darzustellen, daß die zwei Bitzellen eine von vier möglichen Zwei-Bit-Konfigurationen enthalten und
    b) Erzeugen eines Überganges zwischen den getrennt identifizierbaren Zuständen am Mittelpunkt der ersten von zwei
    509818/0750
    2U7310
    aufeinanderfolgenden Bitzellen, um darzustellen, daß die Bitzellen das ft-omplement der einen der vier möglichen zwei-Bit-Jionfigurationen enthält, dadurch gekennzeichnet, daß der dritte Schritt die Sperrschritte a) und b) des zweiten Schrittes enthält, daß das eindeutige Muster mit 'Übergängen im logischen Zustand in' der i'orrn eines ersten Überganges zwischen den getrennt identifizierbaren Zuständen an der rückwärtigen Planke der letzten Bitzelle erzeugt wird, welche das letzte Bit in der ersten Gruppe von Bits enthält, daß weiterhin ein zweiter Übergang wenigstens zwei Bitzellen von dem ersten Übergang am Beginn oder in der Mitte einer Bitzelle erzeugt wird, was von der Binärcharakterisierung des letzten Bits abhängt, daß weiterhin dritte und vierte Übergänge gebildet werden, die von dem zweiten und dem dritten Übergang jeweils um 1 1/2 Bitzellen entfernt sind, und daß ein fünfter Übergang gebildet wird, welcher von dem vierten Übergang um 1 1/2 Bitzellen plus 1/2 Bitzelle für jede der aufeinanderfolgenden identischen Gruppen von Bits entfernt ist, welche auf die erste Gruppe von Bits folgen, und daß die Schritte a) und b) nach einer Verzögerung" von · 2 oder 2 1/2 Bitzellzeiten wiederholt werden, was davon abhängt, ob der fünfte Übergang am Beginn bzw. am Mittelpunkt einer Bitzelle auftritt.
    Verfahren nach Anspruch 7» bei welchem der erste Schritt den Vorgang einschließt, daß eine Vielzahl von Bitezllen von im wesentlichen gleichförmiger Zeitdauer gebildet werden, daß der zweite Schritt getrennt identifizierbare logische Zustände im Ausgangssignal liefert und folgende Schritte enthält:
    a) Erzeugen eines Überganges zwischen den getrennt identifizierbaren Zuständen zu Beginn der ersten von zwei aufeinanderfolgenden Bitzellen, um darzustellen, daß die zwei
    50981 8/0750
    Bitzellen eine von vier möglichen Zwei-Bit-Konfigurationen enthalten, und
    b) Erzeugen eines Überganges zwischen den getrennt identifizierbaren Zuständen am Mittelpunkt der ersten von zwei aufeinanderfolgenden Bitzellen, um darzustellen, daß die Bitzellen das Komplement der einen der vier möglichen zwei-Bit-Konfigurationen enthält, dadurch gekennzeichnet, daß der dritte Schritt die Sperrschritte a) und b) des zweiten Schrittes enthält, daß das eindeutige Muster mit Übergängen im logischen Zustand in der Form eines ersten Überganges zwischen den getrennt identifizierbaren Zuständen an der rückwärtigen E'lanke der letzten Bitzelle erzeugt xirird, welche das letzte Bit in der ersten Gruppe von Bits enthält, daß weiterhin ein zweiter Übergang wenigstens zwei Bitzellen von dem ersten Übergang am Beginn oder in der Mitte einer Bitzelle erzeugt wird, was von der Binärcharakterisierung des letzten Bits abhängt, und daß zusätzliche Übergänge gebildet werden, welche um 1 1/2 Bitzellen voneinander getrennt sind und in der Anzahl der Zahl von identischen Gruppen von Bits entsprechen, welche auf die erste Gruppe von Bits folgen, wonach die Schritte a) und b) nach einer Verzögerungszeit von 2 oder 2 1/2 Bitzellzeiten wiederholt werden, was davon abhängt, ob der letzte der zusätzlichen Übergänge zu Beginn bzw. am Mittelpunkt einer Bitselle auftritt.
    50981 8/0750
    Leerseite
DE19742447310 1973-10-25 1974-10-03 Verfahren und vorrichtung zur datenkomprimierung Pending DE2447310A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US409607A US3914586A (en) 1973-10-25 1973-10-25 Data compression method and apparatus

Publications (1)

Publication Number Publication Date
DE2447310A1 true DE2447310A1 (de) 1975-04-30

Family

ID=23621233

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19742447310 Pending DE2447310A1 (de) 1973-10-25 1974-10-03 Verfahren und vorrichtung zur datenkomprimierung

Country Status (4)

Country Link
US (1) US3914586A (de)
JP (1) JPS50113108A (de)
DE (1) DE2447310A1 (de)
FR (1) FR2249507A1 (de)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57186845A (en) * 1981-05-14 1982-11-17 Edowaado W Mooru Minimum space digital memory for analog information
JPS58140899A (ja) * 1982-02-16 1983-08-20 ソニ−・テクトロニクス株式会社 ロジツク信号表示方法
US4491934A (en) * 1982-05-12 1985-01-01 Heinz Karl E Data compression process
US5049881A (en) * 1990-06-18 1991-09-17 Intersecting Concepts, Inc. Apparatus and method for very high data rate-compression incorporating lossless data compression and expansion utilizing a hashing technique
CA2077271C (en) * 1991-12-13 1998-07-28 David J. Craft Method and apparatus for compressing data
US5396228A (en) * 1992-01-16 1995-03-07 Mobile Telecommunications Technologies Methods and apparatus for compressing and decompressing paging data
US5229768A (en) * 1992-01-29 1993-07-20 Traveling Software, Inc. Adaptive data compression system
US5406278A (en) * 1992-02-28 1995-04-11 Intersecting Concepts, Inc. Method and apparatus for data compression having an improved matching algorithm which utilizes a parallel hashing technique
US5371499A (en) * 1992-02-28 1994-12-06 Intersecting Concepts, Inc. Data compression using hashing
US5353024A (en) * 1992-05-01 1994-10-04 Intersecting Concepts, Inc. Method for data compression having an improved encoding algorithm which utilizes a token stacking technique
US5563595A (en) * 1993-12-23 1996-10-08 International Business Machines Corporation Method and apparatus for compressing data
US5818368A (en) * 1997-04-18 1998-10-06 Premier Research, Llc Method and apparatus for lossless digital data compression
US7729776B2 (en) * 2001-12-19 2010-06-01 Cardiac Pacemakers, Inc. Implantable medical device with two or more telemetry systems
US6993393B2 (en) * 2001-12-19 2006-01-31 Cardiac Pacemakers, Inc. Telemetry duty cycle management system for an implantable medical device
US6985773B2 (en) 2002-02-07 2006-01-10 Cardiac Pacemakers, Inc. Methods and apparatuses for implantable medical device telemetry power management
US6714145B1 (en) 2002-09-26 2004-03-30 Richard Marques Method and apparatus for integer-based encoding and decoding of bits
US7155290B2 (en) * 2003-06-23 2006-12-26 Cardiac Pacemakers, Inc. Secure long-range telemetry for implantable medical device
US7228182B2 (en) * 2004-03-15 2007-06-05 Cardiac Pacemakers, Inc. Cryptographic authentication for telemetry with an implantable medical device
US7359753B2 (en) * 2004-04-07 2008-04-15 Cardiac Pacemakers, Inc. System and method for RF wake-up of implantable medical device
US7519430B2 (en) * 2004-06-17 2009-04-14 Cardiac Pacemakers, Inc. Dynamic telemetry encoding for an implantable medical device
US7457669B2 (en) * 2004-06-17 2008-11-25 Cardiac Pacemakers, Inc. On-demand retransmission of data with an implantable medical device
US7890180B2 (en) * 2004-08-09 2011-02-15 Cardiac Pacemakers, Inc. Secure remote access for an implantable medical device
US7664553B2 (en) 2005-04-27 2010-02-16 Cardiac Pacemakers, Inc. System and method for enabling communications with implantable medical devices
US8779950B2 (en) 2012-03-05 2014-07-15 Dcba, Llc Command encoded data compression
US9032531B1 (en) 2012-06-28 2015-05-12 Middlegate, Inc. Identification breach detection
US9543980B2 (en) 2014-10-10 2017-01-10 Massachusettes Institute Of Technology Systems and methods for model-free compression and model-based decompression
US11677416B2 (en) * 2021-05-17 2023-06-13 Radu Mircea Secareanu Hardware implementable data compression/decompression algorithm

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3310786A (en) * 1964-06-30 1967-03-21 Ibm Data compression/expansion and compressed data processing
US3490690A (en) * 1964-10-26 1970-01-20 Ibm Data reduction system
US3413611A (en) * 1966-01-17 1968-11-26 Pfuetze David Method and apparatus for the compaction of data
US3571807A (en) * 1968-11-13 1971-03-23 Bell Telephone Labor Inc Redundancy reduction system with data editing
CH502030A (de) * 1969-01-15 1971-01-15 Patelhold Patentverwertung Verfahren zum Betrieb eines adresscodierten Informationsübermittlungssystems
US3612660A (en) * 1969-09-08 1971-10-12 Wendell S Miller Digital data compaction
US3701893A (en) * 1970-08-28 1972-10-31 Nippon Electric Co Data converter for a computer system
US3701111A (en) * 1971-02-08 1972-10-24 Ibm Method of and apparatus for decoding variable-length codes having length-indicating prefixes
US3689899A (en) * 1971-06-07 1972-09-05 Ibm Run-length-limited variable-length coding with error propagation limitation

Also Published As

Publication number Publication date
JPS50113108A (de) 1975-09-05
FR2249507A1 (de) 1975-05-23
US3914586A (en) 1975-10-21

Similar Documents

Publication Publication Date Title
DE2447310A1 (de) Verfahren und vorrichtung zur datenkomprimierung
DE3027329C2 (de)
DE2540472C3 (de) Verfahren und Schaltungsanordnungen zur Codierung binärer Daten unter Anwendung eines abgewandelten Null-Modulationscodes
DE3404416C2 (de)
DE2219219A1 (de) Mehrpegelsignal-Übertragungssystem
DE2632943A1 (de) Schaltung zur aufzeichnung von daten
DE2460979A1 (de) Verfahren und schaltungsanordnung zur kompensation von impulsverschiebungen bei der magnetischen signalaufzeichnung
DE2844216A1 (de) Synchronisierfolgecodierung bei code mit begrenzter lauflaenge
DE2630197C3 (de) Zeitkorrekturschaltung für ein Datenwiedergewinnungssystem
DE2828219C2 (de)
DE2036223A1 (de) Verfahren und Vorrichtung zum Verschlus sein und zum Entschlüsseln digitaler Daten
DE2459885C2 (de) Schaltung zur Dekodierung eines dynamisch modulierten Signals
DE3051112C2 (de)
DE3431777C2 (de)
DE2430685A1 (de) Verfahren und vorrichtung zur schnellen digitalen modulation
DE3813068A1 (de) Filter mit geschaltetem kondensator fuer einen digital-analog-konverter
DE2910033A1 (de) Digitale magnetische aufnahme- und wiedergabevorrichtung
DE1911459A1 (de) Verfahren zur Aufzeichnung eines Signals auf einem endlos umlaufenden Speichermedium sowie System zur Durchfuehrung eines solchen Verfahrens
DE2557922C3 (de) Verfahren zum Komprimieren von Faksimiledaten und Vorrichtung zu seiner Durchführung
DE3102782C2 (de) Festratenverzögerungskreis mit einem Binarzähler
DE2461581C3 (de) Adaptives Deltamodulationssystem
DE1242688B (de) Verfahren zum quaternaeren Kodifizieren von binaeren Signalfolgen
EP0015031B1 (de) Anordnung für die Taktgebersynchronisation mittels eines seriellen Datensignals
DE2903329C2 (de) Anordnung zum Kodieren binärer Daten
DE2428444A1 (de) Einrichtung zur codierung bzw. decodierung von binaerdaten