DE3417262A1 - Einrichtung zum decodieren von nach durchlauflaengen codierten daten - Google Patents

Einrichtung zum decodieren von nach durchlauflaengen codierten daten

Info

Publication number
DE3417262A1
DE3417262A1 DE19843417262 DE3417262A DE3417262A1 DE 3417262 A1 DE3417262 A1 DE 3417262A1 DE 19843417262 DE19843417262 DE 19843417262 DE 3417262 A DE3417262 A DE 3417262A DE 3417262 A1 DE3417262 A1 DE 3417262A1
Authority
DE
Germany
Prior art keywords
output
register
signals
transition
run length
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19843417262
Other languages
English (en)
Other versions
DE3417262C2 (de
Inventor
David John Hitchin Hertfordshire Hunt
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.)
Fujitsu Services Ltd
Original Assignee
Fujitsu Services Ltd
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 Fujitsu Services Ltd filed Critical Fujitsu Services Ltd
Publication of DE3417262A1 publication Critical patent/DE3417262A1/de
Application granted granted Critical
Publication of DE3417262C2 publication Critical patent/DE3417262C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/46Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

Einrichtung zum Decodieren von nach Durchlauflängen codierten
Daten.
Die Erfindung bezieht sich auf eine Einrichtung zum Decodieren von nach Durchlauflängen codierten Daten entsprechend dem Oberbegriff des Anspruches 1.
Bei einem Durchlauflängen-Codierschema sind die zu codierenden Daten in'Durchlaufe unterteilt, d.h. in Folgen won Signalen des gleichen Wertes, und jeder Durchlauf wird durch einen Durchlauflängen-Code repräsentiert, der die Anzahl von Signalen im Durchlauf anzeigt. Beispielsweise können die Signale 3innrziffern (Bits) sein. In diesem Fall repräsentiert der Durchlauflängen-Code die Anzahl von binären Einsen oder Mullen im Durchlauf.
Eine Durchlauflängen-Codierung wird beispielsweise häufig verwendet, um digitalisierte Bilddaten, die Texte oder graphische Darstellungen wiedergeben, zu codieren. Derartige Daten sind typischerweise durch große Durchlauflängen zwischen Übergängen charakterisiert, und somit kann die Durchlauflängen-Codierung eine wesentliche Kompression in der Anzahl von Signalen ergeben, die zur Wiedergabe eines Bildes erforderlich sind. Diese Kompression führt zu entsprechenden Einsparungen an Speicher raum und/oder an Übertragungsdauer für die Daten.
Der herkömmliche Weg zum Decodieren eines nach Durchlauflängen codierten Signales besteht darin, den Durchlauflängen-Code in einen Zähler einzuführen und dann nach abwärts bis Null zu zählen, wobei bei jeder Zählung ein Signal des gewünschten Wertes ausgegeben wird. Wenn der Zähler Null erreicht, erfolgt ein Übergang auf einen anderen Signalwert, in den Zähler wird der nächste Durchlauflängen-Code eingeführt, und der Vorgang wird wiederholt.
Um eine Anzeige hoher Qualität (hohe Auflösung) in Echtzeit zu erzielen, ist rs notwendig, die Daten in die Sichtanzeigeeinheit (z.B. einen rast erabgetasteten Kathodenstrahlröhrenschirm) mit »ehr hoher Geschwindigkeit einzuführen. Der Durchlauflängen-Decodierer im ι S deshalb in der Lage sein, die Daten mit einer hohen Geschwindigkeit zu decodieren. Dies macht die Verwendung von .'schnellen und dnmit teueren Schaltungen erforderlich. Inisbesondere würde ein konventioneller Durchlauflängen-Decodierer einen Zähler benötigen, der in der Lage ist, mit der B i J rielemen tgeschwi ndigke i t der Sichtanzeige zu zählen.
In der GB-pS 1.598.343 wird eine Durch!auflängen-Deeodieranordnung beschrieben, in der Gruppen von N Signalen parallel ausgegeben werden, so dai3 die gewünschte Betriebsgeschwindigkeit der Decodier schaltungen um einen Fa !et or N verringert wird. Hierbei sind zusätzlich zu den normalen Durchlauflängen-Codes Spezialcodes erforderlich, die als Übergangscodes bezeichnet werden, um die T η h a 11 e d ηr Gruppen, in denen die Üb e r g ä η π e auftreten, ;;u spezifizieren.
Aufgabe der Erfindung ist es, eine Durchlauflängen-Decodiereinrichtung zu schaffen, in der die gewünschte Betriebsgeschwindigkeit verringert wird, ohne daß spezielle Übergangscodes erforderlich sind.
G email der Erfindung wird diese Aufgabe bei einer Einrichtung der gattungsgemäHen Art gelöst durch
a) ein Positionsregister zur Speicherung einer Anzeige der Position des letzten Überganges zwischen Signalwerten innerhalb einer Gruppe von Signalen,
b) eine Rechenschaltung zur Verwendung der Inhalte des Positionnregistnrs und des aufgenommenen Durchlauf längen-Codes für die Berechnung der Anzahl χ von Gruppen, die vor dem nächsten Übergang ausgegeben werden sollen, sowie der Position innerhalb der Gruppe dieses nächsten Überganges, und
c) eine logische Schaltung zur Erzeugung des Überganges an der berechneten Position, nachdem die berechnete Anzahl χ von Gruppen ausgegeben worden ist.
Mit der erfindungsgernäßen Einrichtung sind somit nur normale Durchlauflängen-Codes als Eingang erforderlich, und es werden keine speziellen Übergangs-Codes benötigt, um die Positionen der Übergänge innerhalb der Ausgangsgruppen anzuzeigen.
Nachstehend wird eine Ausführungsform der Erfindung in Verbindung mit der Zeichnung erläutert. Bei dieser Ausf ührungsf orir sind die Daten Binärdaten, die als Folge von aus acht Bits bestehenden Bytes (d.h. η = 8) ausgegeben werden. Es zeigt:
Fig. 1 ein Blockschaltbild einer digitalisierten Bildsichtanzeigeanordnung, die einen Durchlauflängen-Decodierer nach der Erfindung aufweist,
Fig. 2 eine logische Schaltung des Durchlauflängen-Decodierers,
Fig. 3 eine logische Schaltung einer logischen Ausgangseinheit, die einen Teil des Durchlauflängen-Decodierers darstellt,
Fig. 4 ein Flußschaltbild, das die Arbeitsweise des Durchlauflängen-Decodierers wiedergibt, und
Fig. 5 eine logische Schaltung eines Maskenschema-Decodierers, der Teil des Durchlauflängen-Decodierers bildet.
Gesamtanordnung
In Fig. 1 ist eine Registriersichtanzeigeanordnung zur Aufnahme von codierten Bilddaten gezeigt. Die Eingangsdaten können beispielsweise aus einer Speichervorrichtung stammen oder aus einem Übertragungskanal aufgenommen werden.
Die Eingangsdaten sind doppelt codiert, erstens durch einen Durchlauflängen-Code und zweitens durch eine Huffmann-Codierung. Die Huffmann-Codierung ist in der Technik bekannt und .ist nicht Gegenstand vorliegender Erfindung, so daß auf sie hier nicht näher Hingegangen wird.
Die Eingangsdaten werden zuerst mit Hilfe einer Huffmann-Decodierschaltung 10 decodiert, und die daraus resultierenden, nach Durchlauflängen codierten Daten werden in einen Pufferspeicher 11 eingegeben, bei dem die Daten in der Reihenfolge des Einganges ausgegeben werden. Der Ausgang des Pufferspeichers wird einem Durchlauflängen-Decodierer 12 nach der Erfindung zugeführt. Dieser Durchlauflängen-Decodierer 12 erzeugt ein Steuersignal "Halten" für den Pufferspeicher 11: wenn das Signal "Halten" hoch ist (d.h. "Halten" = 1), bewirkt dies, daß der Pufferspeicher 11 seinen Ausgang statisch halt, und wenn das Signal "HaItRn" niedrig ist ("Halten" = 0), ermöglicht dies, daß der Pufferspeicher auf seinen nächsten Ausgang u/ei terschaltet.
Der decodierte Ausgang aus dem Durchlauflängen-Decodierer 12 wird in einen Bildwechsel-Pufferspeicher 13 zusammen mit einem Steuersignal WAL eingeführt, das anzeigt, ob der Ausgang aus dem Decodierer 12 gültig ist oder nicht. Ist UAL = 1, wird der Ausgang von dem Pufferspeicher 13 angenommen. Der Pufferspeicher hält einen vollständigen Bildwechsel der Bilddaten für die Abgabe in eine rasterabgetastete Kathodßnstrahlröhren-Sichtan- 7. e i g e 14.
Durchlauflängen-Codierschema
Da si Durchlauflängen-Codiorschema verwendet Co de Wörter zweier unterschiedlicher Arten, nämlich Anschlußcodewörter und Ausstattungscodewörter. Jedes Codewort hat sieben Bits, das erste Bit ist ein Steuerbit MUC, das angibt, ob es sich um ein AnschluS-Codeu/ort (MLJC = D) oder um ein Austattungs-Codewort (MLJC = 1) handelt. Die anderen sechs Bits stellen einen Längencode LEN dar.
Kurze Durchlauflängen, bis zu 63 Bits, werden durch ein einziges Anschluß-Codewort codiert, wobei ein Längencode gleich der Anzahl von Bits im Durchlauf ist. Größere Durchlauflängen (64 Bits und darüber) werden durch ein Ausstattungs-Codewort dargestellt, auf das ein Anschluß-Codewort folgt. Das Ausstattungs-Codewort stellt eine Durchlauflänge in Mehrfachen von 64 Bits dar, während das Anschluß-Codewort den übrigen Teil (möglicherweise Null) darstellt. Es sei darauf hingewiesen, daß auf ein Ausstattungs-Codewort stets ein Anschluß-Codewort folgt und einen Durchlauf nicht beenden kann.
Beispielsweise wird eine Durchlauflänge von 201 Bits durch das Ausstattungs-Codewort 1.000011 (3 χ 64 Bits) dargestellt, an das sich das Anschluß-Codewort ü.001001 (9 Bits) anschließt.
Durchlauflängen-Decodierer
Fig. 2 zeigt den Durchlauflängen-Decodierer 12 im einzelnen. Der Durchlauflängen-Decodierer enthält ein Ausgangsregister 20, das ein aus acht Bits bestehendes Byte hält. Dieses Register wird bei jeder Schwebung eines 10 MHz-Taktsignales CLK mit einem Byte aus einer logischen Ausgangsschaltung 21 gefüllt. Wenn das Steuersignal VAL echt ist, ist das Byte dann der Ausgang bei der nächsten Taktschwebung zum Bildwechselpufferspeicher. Die logische Ausgangsschaltung 21 ist im einzelnen in Verbindung mit Fig. 3 beschrieben.
Der Durchlauflängen-Decodierer weist ferner einen neunstufigen Zähler 22 auf, der die Anzahl von Bytes hält, die aus dem Register 20 vor dem nächsten Übergang ausgegeben werden sollen. Ein Register 23, das als das Bitspositionsregister bezeichnet wird, hält einen 3-Bit-Code, der die Bitposition innerhalb des Bytes darstellt, bei welchem der nächste Übergang auftritt. Wenn beispielsweise das Bitpositionsregister 23 den Code 011 häjt (dezimale 3), zeigt dies an, daß der nächste Übergang nach dem dritten Bit des in Frage kommenden Byte auftritt.
AIIr Stufen des Zählers 22 sind mit dinum NOR-Gatter 24 verbunden, da53 ein Steuersignal CZ erzeugt; CZ = 1 gibt an, daß die Inhalte des Zahlers alle Null sind. Dieses Signal wird invertiert, damit die Signale "Halten" und "VAL" in die Pufferspeicher 11 und 13 (Fig. 1) erzeugt werden.
Die Inhalte des Bitpositionsregisters 23 werden einem NOR-Gatter 25 zugeführt, um ein Steuersignal BZ zu erzeugen. BZ = 1 zeigt an, daß die Inhalte des Registers 23 gleich Null sind, d.h., daß der nächste Übergang an der Grenze zwischen zwei Bytes auftreten wird. Der Ausgang des Registers 23 wird ferner einer Decodierschaltung 26 zugeführt, die ein 8-Bit-Maskenscherna aus Nullen und Einsen erzeugt, wobei ein Übergang an der Bitposition durch die Inhalte des Registers 23 angezeigt wird. Der Ausgang der Decodierschaltung ist in der nachstehenden Tabelle 1 gezeigt.
Tabelle 1
Register 23 Maskenschema
000 11111111
001 01111111
010 00111111
011 00011111
100 00001111
101 00000111
110 00000011
111 00000001
Die Decodierschaltung 26 wird weiter unten in Verbindung mit Fig. 5 näher erläutert.
Im Betrieb wird der Zähler 22 normalerweise bei jeder Schwebung clea Taktes CLK um Eins mit Hilfe eines Steuersignales COUNT vermindert. Wenn der Zähler Null erreicht hat, wird das nächste COUNT-Signal unterdrückt und ein LOAD-Signal stattdessen erzeugt. Dies bewirkt, daß neue Werte in den Zähler 22 und das
Register 23 eingeführt werden. Diese neuen Vierte werden aus dem Eingangscodewort mit Hilfe von Multiplexern 27, 28 und einem sechsstufigen Addierer 29 abgeleitet.
Die Multiplexer werden beide durch das Steuerbit MUC des Eingangscodewortes gesteuert. Wenn MUC = 0, wählt der Multiplexer 27 den jeweiligen Eingangslängencode LEN, und der Multiplexer
28 wählt einen Eingang mit sechs Bits, von denen die fünf Bits höchster Bedeutung an eine Spannung angeschlossen sind, die Null repräsentiert, und das sechste Bit mit dem Übertragsausgang des Addierers 29 verbunden ist. Wenn MUC = 1, wählt der Multiplexer 27 einen Eingang mit sechs Bits, die alle Null sind, und der Multiplexer 28 wählt den Längencode LEN.
Der Ausgang des Multiplexers 27 wird einem Eingang des Addierers
29 zugeführt, dessen anderer Eingang den Ausgang des Bitpositionsregisters 23 aufnimmt. Die drei Bits geringster Bedeutung den Addiererausgangs werden dem Register 23 zugeführt, während die drei Bits höchster Bedeutung in die drei Stufen geringster Bedeutung des Zählers 22 gehen. Der Ausgang des Multiplexers 28 wird den sechs Stufen höchster Bedeutung des Zählers 22 zugeführt.
Wenn somit das Eingangs-Codewort ein Anschluß-Codewort (MUC = 0) ist, wird der Längencode LEN den vorhandenen Inhalten des Registers 23 hinzuaddiert. Dann werden bei dem nächsten LOAD-Signal die drei Bits niedrigster Bedeutung des Resultats in das Register 23 eingeschrieben, und die vier Bits höchster Bedeutung (einschließlich des Ubertragsbits C) werden in den Zähler 22 eingeschrieben. Wenn das Eingangs-Codewort ein Ausstattungs-Codewort ist (MUC = 1), wird der Längencode LEN von dem Multiplexer 28 effektiv nach links um sechs Plätze verschoben (d.h. mit 64 multipliziert), bevor er in den Zähler eingeschrieben wird, und in diesem Falle werden die Inhalte des Registers 23 nicht geändert.
Es ergibt sich daraus, daS die Multiplexer 27, 28 und der Addierer 29 das Eingangs-Codewort verwenden, um
: hy*
a) die Anzahl von Rytes, die vor dem nächsten übergang ausgegeben werden sollen, und
b) die Bitposition innerhalb des Bytes, an der der Übergang auftreten wird, zu berechnen.
Bei dem LOAD-Signal wird die berechnete Anzahl von Bytes in den Zähler 22 eingeführt und die berechnete Bitposition in das Register 23 eingegeben.
Es sei beispielsweise angenommen, daß das Bitpositionsregister 23 den Wert 011 hält. Ferner sei angenommen, daß das nächste Eingangs-Codewort 0.101011, d.h. ein Anschluß-Codewort ist, das eine Durchlauflänge von 43 Bits darstellt. Der Addierer 29 wird damit die Addition 101011 + 011 = 101110 durchführen.
Bei dem LOAD-Signal werden die ersten drei Bits des Resultats (101) in den Zähler eingeführt, wodurch angezeigt wird, daß fünf Bytes vorhanden sind, die vor dem nächsten Übergang ausgegeben werden sollen. Gleichzeitig werden die letzten drei Bits (110) in das Register 23 eingeführt, wodurch angezeigt wird, daß der Übergang nach dem sechsten Bit des Bytes erfolgt.
Logische Ausgangsschaltung
Die Fig. 3 zeigt die logische Ausgangsschaltung 21 im einzelnen.
Die Schaltung weist einen herkömmlichen 3:8 Decodierer 30 auf, der von den drei Signalen MUC, BZ und CZ gesteuert wird. Nur zwei der Ausgänge Dl und D3 dieses Decodierers werden verwendet. Diese beiden Ausgänge sind normalerweise hoch und repräsentieren eine binäre Eins. Dl geht nach niedrig, wenn MUC = 0, BZ = 0 und CZ = 1, während D3 nach niedrig geht, wenn MUC = 0, BZ = 1 und CZ = I.
Das Signal Dl steuert einen 2:1 Multiplexer 31; wenn Dl = O, wählt der Multiplexer einen ersten Satz von acht Eingängen, die mit acht Exklusiv-ODER-Gattern 32 verbunden sind; ist Dl = 1, wählt der Multiplexer einen zweiten Satz von Eingängen, die mit dem Ausgang eines einzigen A'quivalenzgatters 33 verbunden sind.
Die Exklusiv-ODER-Gatter 32 haben jeweils zwei Eingänge. Die rechten Eingänge sind mit entsprechenden Bits des Ausgangsregisters 20 verbunden, während die linken Eingänge das 8-Bit-Maskenschema aus dem Maskendecodierer 26 aufnehmen (Fig. 2).
Das Squivalenzgatter 33 hat zwei Eingänge, die das Bit geringster Bedeutung des Ausgangsregisters 20 und das Signal D3 aus dem Decodierer 30 aufnehmen»
Der Ausgang des Multiplexers 31 ist der Ausgang der logischen Schaltung 21 und wird dem Ausgangsregister 20 zugeführt. Dieser Ausgang hängt von den Zuständen der Steuersignale MUC, BZ und CZ, und auch von den vorhandenen Inhalten des Ausgangsregisters in folgender Weise ab:
1. Wenn CZ = 0 oder MUC = 1, sind sowohl Dl als auch D3 hoch, so daß der Multiplexer 31 den Ausgang des A'quivalenzgatters 33 auswählt, der in diesem Fall gleich dem Bit niedrigster Bedeutung des Ausgangsregisters 20 ist. Somit wird das Ausgangsregister 20 mit einem Byte gefüllt, dessen Bits alle gleich dem Bit geringster Bedeutung der jeweiligen Inhalte ist.
2. Wenn MUC = 0, BZ = 1 und CZ = 1, geht das Signal D3 nach niedrig. Dies bewirkt, daß das Ä'quivalenzgitter 33 das Bit aus dem Ausgangsregister invertiert. Somit wird in diesem Fall das Ausgangsregister 20 mit einem Byte gefüllt, dessen Bits alle gleich dem inversen Wert des Bits niedrigster Bedeutung der jeweiligen Inhalte ist.
3. Wonn MUC = 0, BZ = 0 und CZ = 1, geht das Signal Dl nach niedrig. Dies bewirkt, daß der Multiplexer 31 die Ausgänge der Exklusiv-ODER-Gatter 32 auswählt. Das Ausgangsregister wird somit mit einem Byte gefüllt, das durch ein bitweises Exklusiv-ODER der laufenden Inhalte des Ausgangsregisters mit dem Maskenschema aus der Decodierschaltung 26 gebildet wird (wie in Tabelle 1 oben angegeben). Dies bewirkt, daß alle Bits des Ausgangsregisters, die auf die Bitposition folgen, die durch das Register 23 angezeigt wird, invertiert werden.
Wenn beispielsweise das Ausgangsregister 20 alle Einsen enthält, und das Bitpositionsregister 23 den Wert QIl (dezimale 3) hält, ist das Exklusiv-ODER wie folgt:
Ausgangsregister 1111 1111
Maskenschema 0001 111.1
Exklusiv-ODER 1110 0000
Daraus ergibt sich, daß alle Bits nach dem dritten invertiert sind.
Arbeitsweise
Nachstehend wird die Arbeitsweise des Durchlauflängen-Decodierers 12 in Verbindung mit dem Flu0diagramm naeti Fig. 4 beschrieben. In dieser Fig. 4 stellen die rautenförmigen Kästchen Steuerentscheidungen entsprechend den Werten der Steuersignale MUC, BZ und CZ dar, während die rechteckförmigen Kästchen Arbeitsvorgänge darstellen.
Kästchen 41: Wenn der Zähler noch nicht Null (CZ = 0) erreicht hat, ist das VAL-Signal hoch und damit werden die laufenden Inhalte des Ausgangsregisters 20 in den Pufferspeicher mit der nächsten Taktschwebung ausgegeben.
Kästchen 42: Das Ausgangsregister wird dann mit einem neuen Byte aus der Ausgangslogik 21 gefüllt. Da CZ = Q, sind bei dem neuen Byte alle Bits gleich dem letzten (niedrigstwertigen) Bit des laufenden Bytes.
Kästchen 43: Gleichzeitig wird der Zähler 22 durch das COUNT-
Signal um Eins vermindert. Diese Schleife (Kästchen 41 - 43) wird bei jeder Taktschwebung wiederholt, bis der Zähler 22 Null erreicht.
Kästchen 44: Hat der Zähler Null (CZ = 1) erreicht, wird, wenn das laufende Codewort ein Anschluß-Codewort ist (MUC = 0) und wenn der nächste Übergang an der Grenze zwischen dem augenblicklichen Byte und dem nächsten (BZ = 1) liegt, wird das Ausgangsregister 20 mit einem Byte gefüllt, dessen Bits alle gleich dem inuersen Wert des letzten Bits des laufenden Bytes sind.
Kästchen 45: Wenn andererseits der übergang innerhalb des
nächsten Byte liegt (BZ = 0), wird das Ausgangsregister 20 mit dem Exklusiv-ODER der laufenden Inhalte und dem Maskenschema aus dem Decodierer gefüllt. Dies erzeugt ein Bit mit einem Übergang in der gewünschten Position.
Kästchen 46: Wenn das laufende Codewort ein Ausstattungs-Codwort ist (IiUC = 1), ist das Ende des Durchlaufes noch nicht erreicht, da einem Ausstattungs-Codewort stets ein Anschluß-Codewort folgen muß. In diesem Fall ist das Ausgangsregister somit mit einem Byte gefüllt, dessen Bits alle gleich dem letzten Bit des laufenden Byte sind.
Kästchen 47: Da der Zähler nunmehr Null erreicht hat, wird ein
LOAD-Signal erzeugt. Dies bewirkt, daß die Byte-und Bit-Positionen des nächsten Überganges in den Zähler 22 und das Bit-Positionsregister 23 eingeführt werden sollen.
Die Durchlauffolge wird anschließend wiederholt.
Die beschriebene Anordnung ist in der Lage, Situationen zu lösen, bei denen mehr als ein Übergang innerhalb des gleichen ßyt.e auftritt. In diesem Fall bleibt der Zähler 22 mehr als eine Taktschwebung lang auf Null. Bei jeder dieser Taktschwebungen werden die Inhalte des Ausgangsregisters 20 in Exklusiv-ODER-Schaltung mit dem Maskeηschema aus dem Decodierer 26 (Kästchen 45) gelegt, um einen weiteren übergang im Byte zu erzeugen, Während dieser Zeit werden keine Bytes aus dem Register 20 ausgegeben, da der Zähler 22 auf Null steht. Schließlich wird ein Längencode aufgenommen, der bewirkt, daß der Zähler 22 auf einen von Null abweichenden Wert gesetzt wird, worauf das Byte, das die Mehrfach-Übergänge enthält, ausgegeben wird (Kästchen 41).
Maskenschema-Decodierer
Fig. 5 zeigt den Maskenschema-Decodierer im einzelnen. Der Decodierer bßsteht aus zwei 2:1 Multiplexern 50, 51. Der Multiplexer 50 speist die vier Bits höchster Bedeutung des Haskenschemas, während der (invertierte) Ausgang des Multiplexers 5.1 die vier Bits geringster Bedeutung einspeist. Der Ausgang des Bitpositionsregisters 23 ist durch drei Bits Rl, R2, R3 gezeigt. Das Bit Rl höchster Bedeutung steuert das l'i rksamwerden der Multiplexer in der Weise, daß der Multiplexer 50 wirksam wird, wenn Rl = 0, und der Multiplexer 51 wirksam wird, wenn Rl = 1. Das mittlere Bit R2 wird mit dem Auswähleinqang beider Multiplexer so verbunden, daß dann, wenn R2 = 0, der linksseitige Eingang gewählt wird, und wenn R2 = 1, der rechtsseitige Eingang gewählt wird.
Die Eingänge der beiden Multiplexer sind so verdrahtet, daß sie Schemen von hohen (binäre 1) und niedrigen (binäre 0) Spannungen sowie das Bit R3 geringster Bedeutung aufnehmen. Aus Fig. 5 ergibt sich, daß dies die gewünschten Ausgangsmaskenschemen nach Tabelle 1 ergibt.

Claims (5)

  1. Patentansprüche:
    /1 Λ Einrichtung zum Decodieren von nach Durchlauflängen codierten Daten mit einem Eingang zur Aufnahme einer Folge von Durchlauflängen-Codes, deren jeder die Länge eines Durchlaufes von Signalen des gleichen Wertes repräsentiert, und einem Ausgang zum Ausgeben einer Folge von Gruppen von Signalen, deren jede eine bestimmte Anzahl η von Signalen enthält, die parallel ausgegeben u/erden, gekennzeichnet durch
    a) ein Positionsregister (23) zur Speicherung einer Anzeige der Position des letzten Überganges zwischen Signalu/erten innerhalb einer Gruppe von Signalen,
    b) eine Rechenschaltung (29) zur Verwendung der Inhalte des Positionsregir;ters (23) und des aufgenommenen Durchlauflängen-Codes (LEN) für die Berechnung der Anzahl χ von Gruppen, die vor dem nächsten Übergang ausgegeben werden sollen, sowie der Position innerhalb der Gruppe dieses nächsten Überganges, und
    c) eine logische Schaltung (21, 26) zur Erzeugung des Überganges an der berechneten Position, nachdem die berechnete Anzahl χ von Gruppen ausgegeben worden ist.
  2. 2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die Rechenschaltung (29) einen Addierer zum Addieren des Durchlauflängen-Codes (LEN) zu den Inhalten des Positionsregisters (23) aufweist, um ein Resultat zu erzielen, dessen Teil höchster Wertigkeit die Anzahl χ von Gruppen anzeigt, die vor dem nächsten Übergang ausgegeben werden sollen, und dessen Teil geringster Wertigkeit die Position innerhalb der Gruppe des nächsten Überganges anzeigt.
  3. 3. Einrichtung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die logische Schaltung (21, 26) aufweist:
    a) eine Decodierschaltung (26) zur Erzeugung eines binären Maskenmusters, das aus η Bits mit einem Übergang zwischen Binärwerten an der berechneten Position besteht, und
    b) eine lofjinche Ausgangsschaltung (21) zum Kombinieren des Haskenmusters mit der letzten auszugebenden Gruppe von Signalen .
  4. 4. Einrichtung nach einem der Ansprüche 1-3, gekennzeichnet durch ein Ausgangsregister (20) zum Halten einer Gruppen von η Signalen, und einen Zähler (22) zum Zählen der Anzahl x, sowie durch das Ausgeben der Inhalte des Ausgangsregisters (20) und anschließende Einstellen eines jeden Signales im Ausgangsregister (20) auf den gleichen Wert wie der des letzten Signales im Ausgangsregister bei jeder Zählung.
  5. 5. Einrichtung nach einem der Ansprüche 1-4, dadurch gekennzeichnet, daß die Signale Binärziffern sind.
DE19843417262 1983-05-14 1984-05-10 Einrichtung zum decodieren von nach durchlauflaengen codierten daten Granted DE3417262A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB838313331A GB8313331D0 (en) 1983-05-14 1983-05-14 Decoding run-length encoded data

Publications (2)

Publication Number Publication Date
DE3417262A1 true DE3417262A1 (de) 1984-11-29
DE3417262C2 DE3417262C2 (de) 1992-11-05

Family

ID=10542750

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19843417262 Granted DE3417262A1 (de) 1983-05-14 1984-05-10 Einrichtung zum decodieren von nach durchlauflaengen codierten daten

Country Status (7)

Country Link
US (1) US4551706A (de)
JP (1) JPH0669146B2 (de)
AU (1) AU559975B2 (de)
DE (1) DE3417262A1 (de)
FR (1) FR2545956B1 (de)
GB (1) GB8313331D0 (de)
ZA (1) ZA843381B (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62164317A (ja) * 1986-01-14 1987-07-21 Fujitsu Ltd 符号化方式
US4707681A (en) * 1986-04-24 1987-11-17 International Business Machines Corporation Method and apparatus for implementing optimum PRML codes
US5055841A (en) * 1991-02-01 1991-10-08 Bell Communications Research, Inc. High-speed feedforward variable word length decoder
KR0141875B1 (ko) * 1994-11-30 1998-06-15 배순훈 줄길이복호화기
EP2798476B1 (de) * 2011-12-30 2018-09-19 Intel Corporation Anweisung für vektorerweiterungsfrequenz

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1598343A (en) * 1977-04-04 1981-09-16 Int Computers Ltd Display systems

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE406407B (sv) * 1975-11-25 1979-02-05 Hell Rudolf Dr Ing Gmbh Forfarande for digital loplengdkodning med redundansreduktion for overforande av binert kodade bildinformationer
US4152697A (en) * 1976-08-11 1979-05-01 Xerox Corporation Parallel run-length decoder
JPS5564445A (en) * 1978-11-08 1980-05-15 Nec Corp Code converter circuit
GB2080584B (en) * 1980-07-24 1984-05-23 Int Computers Ltd Binary-coded-decimal to binary converter

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1598343A (en) * 1977-04-04 1981-09-16 Int Computers Ltd Display systems

Also Published As

Publication number Publication date
JPS59215117A (ja) 1984-12-05
DE3417262C2 (de) 1992-11-05
US4551706A (en) 1985-11-05
GB8313331D0 (en) 1983-06-22
FR2545956B1 (fr) 1988-09-09
AU2796384A (en) 1984-11-15
FR2545956A1 (fr) 1984-11-16
AU559975B2 (en) 1987-03-26
JPH0669146B2 (ja) 1994-08-31
ZA843381B (en) 1984-12-24

Similar Documents

Publication Publication Date Title
DE69029725T2 (de) Hybrides hierarchisches verfahren auf basis von resten, zur speicherung und anzeige von hochauflösenden digitalen bildern in einer mehrzweckumgebung
DE3587107T2 (de) Drehungsverfahren und -geraet fuer binaere bilder.
DE2264090C3 (de) Datenverdichtung
DE3687285T2 (de) Verfahren und anordnung zur modifizierung eines lauflaengenbegrenzten codes.
DE3825960C2 (de)
DE3525898C2 (de)
DE2814084A1 (de) Sichtanzeigeeinrichtung
DE4310347C2 (de) Verfahren und Schaltkreis zum Erstellen von Zickzackadressen
DE3711200A1 (de) Binaerdatenverdichtungs- und -dehnungs-verarbeitungsgeraet
DE2508706A1 (de) Codieren und decodieren mit einem code variierbarer wortlaenge und gegebenem bitzahlverhaeltnis
DE69125424T2 (de) Vorrichtung zur variablen Längenkodierung und Vorrichtung zur variablen Längendekodierung
DE2805294C2 (de) Codierende Übertragungsanlage für Faksimile-Signale
DE3711201C2 (de)
DE3786621T2 (de) Verfahren und Vorrichtung zur Erzeugung von Bilddaten, die beim Gradationsbildaufzeichnen verwendet werden.
DE19625157A1 (de) Datenkompressions- und -expansionsverfahren
EP0077089B1 (de) Anordnung zum Speichern oder Übertragen von transformationskodierten Bildsignalen und zum Rückgewinnen dieser Bildsignale
DE2165893A1 (de) Historische datenanzeige
DE3689893T2 (de) Gerät zum Dekodieren eines Bildkodes.
DE3303269C2 (de)
DE3876887T2 (de) Erzeugung von linien in einem anzeigesystem.
DE2340250A1 (de) Verfahren zum codieren eines eine bestimmte redundanz aufweisenden nachrichtenstromes
DE3417262A1 (de) Einrichtung zum decodieren von nach durchlauflaengen codierten daten
DE3614143C2 (de) Anordnung und Verfahren zur Codierung und Decodierung eines komprimierten Bildsignals
DE3706470A1 (de) Binaerdatenverdichtungs- und -dehnungs-verarbeitungsgeraet
EP0769853B1 (de) Logischer Block für einen Viterbi-Decoder

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee