DE3744791C2 - - Google Patents
Info
- Publication number
- DE3744791C2 DE3744791C2 DE3744791A DE3744791A DE3744791C2 DE 3744791 C2 DE3744791 C2 DE 3744791C2 DE 3744791 A DE3744791 A DE 3744791A DE 3744791 A DE3744791 A DE 3744791A DE 3744791 C2 DE3744791 C2 DE 3744791C2
- Authority
- DE
- Germany
- Prior art keywords
- data
- processing
- output
- selector
- code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/41—Bandwidth or redundancy reduction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/41—Bandwidth or redundancy reduction
- H04N1/411—Bandwidth or redundancy reduction for the transmission or storage or reproduction of two-tone pictures, e.g. black and white pictures
- H04N1/413—Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information
- H04N1/417—Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information using predictive or differential encoding
- H04N1/4175—Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information using predictive or differential encoding involving the encoding of tone transitions with respect to tone transitions in a reference line
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/005—Statistical coding, e.g. Huffman, run length coding
Description
Die Erfindung betrifft einen Farbänderungsbit-Detektor
für eine Binärdatenverdichtungs-Vorrichtung nach dem
Oberbegriff des Patentanspruches 1. Ein solcher Detektor
vermag eine Verdichtung von Binärdaten und insbesondere
eine sog. parallele Pipeline-Verarbeitung der Binärdaten
nach einer zweidimensionalen Codiermethode mit hoher
Geschwindigkeit durchzuführen.
Für das Verdichten bzw. Dehnen von Binärdaten sind von
der CCITT empfohlene Codierverfahren, wie die MH-, die
MR- und die M²R-Methode, international standisiert
und verbreitet im Gebrauch. Von den drei genannten
Codiermethoden bietet die M²R-Methode die höchste Bildverdichtungsleistung.
Die M²R-Methode ist als Codiermethode für Gruppe-IV-Faksimilesysteme
bekannt. Nach dieser Methode werden
- a) ein Zeilenendecode (EOL-Code) ausgelassen und
- b) ein Parameter k auf Unendlich gesetzt, wobei
- c) alle Bits einer Bezugszeile am Anfang einer Seite jeweils weiße Pixels (Bildelemente) darstellen.
Unter diesen Voraussetzungen kann die Datenverdichtung
gegenüber der MR-Methode verbessert werden.
Eine bisherige Binärdatenverdichtungs-Vorrichtung wurde
in Software mit einem Mehrzweck-Mikrorechner für die
Verdichtung bzw. Dehnung codierter Daten nach diesen
Methoden ausgeführt. Bei dieser Verarbeitung ergibt sich
kein Problem, wenn eine solche Vorrichtung auf ein
Faksimilesystem angewandt wird, dessen Datenübermittlungsgeschwindigkeit
auf 9600 bps (Bits/s) begrenzt ist.
Wenn jedoch die bisherige Vorrichtung für die Wiedergabe
von Bilddaten an Arbeitsstationen eines Rechnersystems
eingesetzt wird, kann eine gute
Mensch/Maschine-Schnittstelle, z. B. eine Seitenansprechzeit
von 1/2 s oder weniger, nicht erzielt werden. Wenn
daher die sequentielle Verdichtung bzw. Dehnung nach der
M²R-Methode ausgeführt wird, ist die Arbeitsgeschwindigkeit
im Vergleich zur MH-Methode erheblich herabgesetzt.
Eine Ursache für das obige Problem liegt im Verarbeitungsprozeß
der gesamten Vorrichtung. Insbesondere
erfolgt in einer herkömmlichen Vorrichtung die Decodierung
bitseriell. Zur Lösung des genannten Problems
werden verbreitet Parallelverarbeitung, Vorausverarbeitung
und Pipeline-Verarbeitung ausgeführt. Die
Binärdatenverdichtung bzw. -dehnung läßt sich
ersichtlicherweise wie folgt aufteilen:
- a) Decodierung von Code(s)
- b) Erzeugung von Bilddaten für den decodierten Code.
Die Decodierung von Codes und die Erzeugung von Bilddaten
kann mithin mittels getrennter Hardware parallel durchgeführt
werden. Bei solcher Hardware wird, während ein Code
verdichtet bzw. gedehnt wird, der nächste Code decodiert,
und die gesamte Verarbeitung kann dann als Pipeline-Verarbeitung
ausgeführt werden. Wenn nach den MH- und
MR-Methoden codierte Binärdaten verdichtet bzw. gedehnt
werden, ergibt sich bei der Vorausverarbeitung kein
Problem. Die M²R-Methode ist dagegen mit den folgenden
Problemen behaftet:
Bei allen MH-, MR- und M²R-Methoden ist der Anfangslauf
einer jeden Zeile jeweils ein weißer Lauf, der zu weißen
Pixels decodiert werden muß. Im Fall der MH- und MR-Methoden
wird ein EOL-Code benutzt. Demzufolge kann ein
Decodierungsteil, der die Vorausverarbeitung ausführt,
den Anfang der nächsten Zeile aufgrund des Vorhandenseins
einer EOL-Codes unabhängig vom Verlauf der Erzeugung von
Bilddaten durch einen Erzeugungsteil erfassen.
Da jedoch bei der M²R-Methode kein EOL-Code vorhanden
ist, kann der Anfang der nächsten Zeile nur dann erfaßt
werden, wenn der Erzeugungsteil jeden Code entwickelt und
ein Ende der Zeile erreicht. Wenn mithin der Anfang der
nächsten Zeile unbestimmt ist, kann nicht bestimmt
werden, ob die Farbe dieses Abschnitts zwangsweise zu
Weiß bestimmt wird.
Infolgedessen kann eine Horizontalmodus-Decodierung unter
Verwendung getrennter Codetabellen für einen weißen Lauf
und einen schwarzen Lauf nicht in Vorauslaufweise eingeleitet
werden. Genauer gesagt: bei der Verdichtung bzw.
Dehnung nach der M²R-Methode bei einem herkömmlichen
Gerät kann die Vorausverarbeitung nicht effektiv durchgeführt
werden.
Wenn weiterhin eine Abweichung δ eines Punkts a1 bei der
Vorausdecodierung erfaßt wird, wird die Erzeugung von
Bilddaten von nach der MR- oder M²R-Methode codierten
zweidimensionalen Codedaten herkömmlicherweise wie folgt
realisiert:
- a) Bilddaten auf einer Bezugszeile werden zur Erfassung der Position eines Punkts b1 abgetastet;
- b) b1+δ=a1; und
- c) eine Lauflänge wird durch (a1-a0=Lauflänge) berechnet, und Bilddaten werden in Übereinstimmung mit der berechneten Lauflänge erzeugt. Die Erzeugung der Bilddaten mittels der Operationen (a) bis (c) muß daher sequentiell in dieser Reihenfolge durchgeführt werden, was eine niedrige Verarbeitungsgeschwindigkeit bedingt. Zur Vermeidung dieses Problems ist es notwendig, die Operationen (a) bis (c) praktisch gleichzeitig auszuführen.
Aus der US-PS 45 58 371 sind ein Verfahren und eine
Vorrichtung zum zweidimensionalen Faksimile-Codieren
bekannt, wobei insbesondere die bereits erwähnte CCITT-Methode
angewandt wird. Dabei muß ein Ausgangssignal
entsprechend einem vorhergehenden Bilddatenbit bestimmt
werden, um eine Ausgangssignal entsprechend einem vorliegenden
Bilddatenbit festzulegen.
Mit anderen Worten, ein logischer Pegel des Ausgangssignales
entsprechend dem vorliegenden Bilddatenbit wird
gemäß logischen Pegeln von Ausgangssignalen bestimmt, die
allen Bilddatenbits entsprechen, welche dem vorliegenden
Bilddatenbit vorangehen.
Es ist Aufgabe der vorliegenden Erfindung, einen Farbänderungsbit-Detektor
für eine Binärdatenverdichtungsvorrichtung
zu schaffen, so daß zur Erhöhung der Verarbeitungsgeschwindigkeit
eine Erzeugung von Bilddaten einer
erfaßten Lauflänge nicht sequentiell sondern parallel
durchführbar ist.
Diese Aufgabe wird bei einem Farbänderungsbit-Detektor
nach dem Oberbegriff des Patentanspruches 1 erfindungsgemäß
durch die in dessen kennzeichnendem Teil enthaltenen
Merkmale gelöst.
Vorteilhafte Weiterbildungen der Erfindung ergeben sich
aus den Patentansprüchen 2 bis 4.
Es wird die Position des Punkts b1 in Bilddaten
auf einer Bezugszeile erfaßt, und
die zu erzeugenden Bilddaten werden parallel damit verarbeitet,
wodurch die Verarbeitungsgeschwindigkeit
erhöht wird.
Im folgenden ist eine bevorzugte Ausführungsform der
Erfindung anhand der Zeichnung näher erläutert. Es
zeigt
Fig. 1 ein Blockschaltbild einer Binärdatenverdichtungsvorrichtung,
Fig. 2 ein Blockschaltbild eines Decodierteils
und eines Codierendeverarbeitungsteils
eines Decodierverarbeitungsteils gemäß Fig. 1,
Fig. 3 ein Blockschaltbild eines Zählerteils
und eines Erzeugungsteils
eines Erzeugungsverarbeitungsteils gemäß
Fig. 1,
Fig. 4 ein Blockschaltbild eines Bezugszeilenadreßgenerators
und eines EOL-Detektors
im Decodierverarbeitungsteil nach Fig. 1,
Fig. 5 ein Blockschaltbild eines a1b1-Detektors des
Erzeugungsverarbeitungsteils nach Fig. 1,
Fig. 6 ein detailliertes Schaltbild eines b1-Detektors
gemäß Fig. 5 und
Fig. 7A bis 7D graphische Darstellungen der Zustände
von Bilddaten einer Bezugszeile und einer
Erzeugungsverarbeitungszeile bei der Verdichtungs- bzw. Dehnungsverarbeitung.
Im folgenden ist zunächst
eine Binärdatenverdichtungsvorrichtung
anhand von Fig. 1 beschrieben.
Die Vorrichtung gemäß Fig. 1 umfaßt eine Binärdatenverarbeitungs-Steuereinheit
1 zur Steuerung des Betriebs der gesamten
Vorrichtung, einen Verdichtungs- und Dehnungs-Verarbeitungsteil 2
zum Erzeugen von Binärbildmusterdaten, wenn die eingegebenen
Binärdaten ein Code sind, und zum Erzeugen eines Codes, wenn
die eingegebenen Binärdaten Bildmusterdaten sind, einen
Bezugszeilendaten-Speicherteil 4 zum Speichern von Bezugszeilendaten,
einen Bezugszeilen-Adreßgenerator 3 zum Erzeugen
von Adreßdaten für den Speicherteil 4 sowie einen
Taktgenerator zum Erzeugen von Steuer-Taktsignalen.
Die Steuereinheit 1 enthält ein nicht dargestelltes
Flip-Flop FBLKP zum Bezeichnen einer Farbe von zu erzeugenden
Bilddaten und ein nicht dargestelltes Flip-Flop
FORDRY, um eine Register RODT zu veranlassen, erzeugte
Bilddaten auszugeben. Das Flip-Flop FBLKP bezeichnet ein
schwarzes Muster, wenn es auf "1" gesetzt ist, und ein
weißes Muster, wenn es auf "0" gesetzt ist.
Der Verdichtungs- und Dehnungs-Verarbeitungsteil 2 umfaßt
einen Decodierverarbeitungsteil 7 zum Erzeugen von Lauflängendaten,
wenn die eingegebenen Binärdaten
ein Code sind, und einen Erzeugungsverarbeitungsteil
8 zum Erzeugen von Binärbildmusterdaten, die nach
Maßgabe der Lauflängedaten verarbeitet werden.
Der Decodierverarbeitungsteil 7 umfaßt einen EOL-Detektor
11 zur Prüfung, ob eine Erzeugungsverarbeitung bis zum Ende
einer Zeile abgeschlossen ist, und zum Erfassen
eines EOL-Codes unter einer vorgegebenen Bedingung,
einen zur Erzeugung eines EOL-Codes während der
Verdichtungsverarbeitung dienenden Codierende-Verarbeitungsteil
12 und einen Decodierteil 13.
Der Erzeugungsverarbeitungsteil 8 umfaßt einen Zählerteil 14
zum Verriegeln eines Ausgangssignals vom Decodierteil 13
und zum Zählen der Zahl der verarbeiteten Bytes, einen Erzeugungsteil
15 zum Erzeugen nach Maßgabe von
Daten vom Zählerteil 14 verarbeiteten Binärdaten sowie
einen a1b1-Detektor 16 zum Erfassen von Punkten a1 und b1.
Die Steuereinheit 1 ist mit einem Taktgenerator 5 zum Erzeugen
von Steuer-Taktsignalen verbunden, und sie steuert
die Operationstakte des Decodierverarbeitungsteils
7, des Erzeugungsverarbeitungsteils 8 und
des Bezugszeilenadreßgenerators 3 nach Maßgabe von
Taktsignalen vom Generator 5, und sie gibt
ferner die nötigen Befehle im Verlauf der
Verarbeitung aus.
Die Anordnung der einzelnen Teile ist nachstehend anhand
der Fig. 2 bis 5 näher beschrieben. Es ist darauf hinzuweisen,
daß aus Vereinfachungsgründen ein Steuersignale in
den Figuren nicht dargestellt sind.
Zunächst ist der Decodierverarbeitungsteil 7 im einzelnen
erläutert, dessen Codierende-Verarbeitungsteil 12 und
Decodierteil 13 in Fig. 2 veranschaulicht sind. Der EOL-Detektor
11 wird später zusammen mit dem Bezugszeilenadreßgenerator
3 anhand von Fig. 4 näher erläutert werden.
Der Decodierteil 13 ist durch eine in Fig. 2 gezeigte
Schaltung, mit Ausnahme des Codierende-Verarbeitungsteils 12,
gebildet. Ein-Byte-Daten werden von einer Eingabedatenschiene
(oder -bus) einem Veriegelungsglied 22 eingegeben
und durch diese verriegelt. Die durch das Verriegelungsglied
22 verriegelten Binärdaten werden durch einen
Inverter 24 invertiert und dann als Daten K einem Register
26 und dem EOL-Detektor 11 eingegeben. Das Register 26 verschiebt
vorher eingegebene Byte-Daten RDTI15-08 zu Daten
RDTI07-00 nach Maßgabe eines Steuersignals von der Steuereinheit
1, es verriegelt die neuen Eingabedaten als Daten
RDTI15-08 und hält diese als 16-Bit-Daten zusammen mit den
Daten RDTI07-00.
Die 16-Bit-Registerdaten RDTI15-00 werden über den Codierende-Verarbeitungsteil
12 zu einer Trichterschiebestufe
30 ausgegeben. Die Daten RDTI07-00 werden
als Byte-Daten F zum Bezugszeichendaten-Speicherteil 4
ausgegeben. Ein Decodierzeiger 36 zeigt eine Position LSB
(niedrigstwertiges Bit) eines zu decodierenden Codes oder
einen Teil des Codes an, der als nächster aus den der
Trichterschiebestufe 30 eingegebenen Registerdaten RDTI15-00
ausgesiebt werden soll. Eine Anzeigegröße vom Decodierzeiger
36 wird der Trichterschiebestufe 30 nach Maßgabe
eines Steuersignals von der Steuereinheit 1 zugeführt.
Die Trichterschiebestufe 30 erzeugt ein 9-Bit-Ausgangssignal
LSHT08-00, das durch Linksverschiebung der Daten RDTI15-00
durch die Anzeigegröße vom Decodierzeiger 36 erhalten wurde,
und gibt dieses Ausgangssignal zu einem Wähler 31 aus. Im
Fall der Verarbeitung im Nichtverdichtungsmodus werden
Daten LSHT04-00 der Ausgabedaten LSHT08-00 als Daten G
zum Erzeugungsverarbeitungsteil 8 ausgegeben. Die Daten
LSHT08-00 werden zu den Daten LSHT10-09 entsprechend den
Daten X von der Steuereinheit 1 hinzuaddiert und als
11-Bit-Daten zum Wähler 31 ausgegeben. Der Wähler 31
empfängt die den Daten LSHT08-06 oder LSHT08-07 entsprechenden
Daten Y von der Steuereinheit 1. Diese
Eingabedaten werden in Abhängigkeit von einem Steuersignal
von der Steuereinheit 1 gewählt und als 11-Bit-Adreßdaten
zu einem Decodierer-Festwertspeicher oder -ROM 32 ausgegeben.
Die Daten X werden ebenfalls dem Decodierer-ROM 32
zugeführt.
Der Decodierer-ROM 32 gibt 16-Bit-Daten DROM15-00 aus. Insbesondere
werden dabei als Daten DROM07-00 Eingabebinärdaten
im Fall der Verdichtungsverarbeitung ausgegeben, während im
Fall der Dehnungsverarbeitung Lauflängendaten ausgegeben werden.
Wenn Daten, die eine tatsächliche Lauflänge, d. h. einen
Farbänderung- oder wechselpunkt bezeichnen, durch δ
im zweidimensionalen Code ausgedrückt werden, bestimmen
sich die vom Decodierer-ROM 32 ausgegebenen Lauflängendaten
zu (δ-4). Die Daten I werden dem Verarbeitungsteil
8 zugeführt. Als Daten DROM11-08 werden Daten zur
Anzeige der signifikanten Datenlänge, d. h. der Länge von
verarbeiteten Daten der eingegebenen Binärdaten,
ausgegeben. Als Daten DROM15-12 werden Steuerdaten
H zum Bezeichnen des nächsten Zustands, d. h.
Daten, welche codierten, als nächste in einer Dehnungsverarbeitung
zu decodierenden Daten zugeordnet sind, ausgegeben.
Die Daten DROM11-08 werden zu einer Addierstufe 34 ausgegeben,
die gleichzeitig Daten vom Decodierzeiger 36 abnimmt.
Dabei werden die Daten DROM11-08 zu den Daten vom Decodierzeiger
36 addiert, und die summierten Daten werden zum
Wähler 38 ausgegeben. Der Wähler 38 nimmt außerdem vom a1b1-Detektor
16 Daten D ab, die bei der Verdichtungsverarbeitung,
nicht aber bei der Dehnungsverarbeitung benutzt werden. Wenn
daher die Dehnungsverarbeitung nach Maßgabe eines Steuersignals
von der Steuereinheit 1 ausgeführt wird, werden die
summierten Daten wiederum zum Inhalt des Decodierzeigers 36.
Letzterer zeigt auf diese Weise eine LSB-Position eines dem
decodierten Code am nächsten liegenden Codes an.
Wenn 2³-Bitdaten als Ergebnis der Addition durch die Addierstufe
34 zu Daten "1" werden, wird dies der Steuereinheit 1
mittels der Daten J gemeldet. Dies bedeutet, daß die Verarbeitung
für ein Byte abgeschlossen ist. Die Steuereinheit
1 gibt nach Maßgabe der Daten J von der Addierstufe 34 ein
Steuersignal zum Register 26 aus. Das Register 26 bewirkt
eine Linksverschiebung der Daten RDTI15-08 in Einheiten von
Bytes zu Daten RDTI07-00 nach Maßgabe des Steuersignals von
der Steuereinheit 1. Durch das Verriegelungsglied 22 verriegelte
neue Byte-Daten werden im Daten-RDTI15-08-Abschnitt
des Registers 26 nach Maßgabe des Steuersignals von der
Steuereinheit 1 verriegelt. Die unteren drei Bits der
summierten Daten von der Addierstufe 34 werden zum Zeiger
36 ausgegeben, so daß die LSB-Position eines zu decodierenden
Codes stets in den Daten RDTI07-00 des Registers 26
vorhanden ist.
Der Zählerteil 14 und der Erzeugungsteil 15 des Erzeugungsverarbeitungsteils
8 sind nachstehend anhand von Fig. 3
im einzelnen beschrieben. Der Zählerteil 14 umfaßt Wähler
40 und 44 sowie einen RL-Zähler 42. Der Erzeugungsteil 15
ist - unter Ausschluß des Zählerteils 14 - durch eine in
Fig. 3 dargestellte Schaltung gebildet.
Das Decodierergebnis I vom Decodierer-ROM 32 wird dem
Wähler 40 eingegeben, der auch Daten L von der Steuereinheit
1 abnimmt. Diese Daten werden nach Maßgabe eines
Steuersignals von der Steuereinheit 1 gewählt und zum RL-Zähler
42 ausgegeben. Von den Ausgabedaten vom Zähler 40
wird ein 02-00-Bitschnitt auch zum Wähler 44 ausgegeben.
Der RL-Zähler 42 ist ein Zähler mit einer 12-Bit-Länge,
und er verriegelt Daten vom Wähler 40 in einer vorbestimmten
Position nach Maßgabe eines Steuersignals
von der Steuereinheit 1. Unter Heranziehen der Ausgabedaten
vom Wähler 40 als Vorgabegröße zählt der RL-Zähler 42
in Übereinstimmung mit den Zählimpulsen von der Steuereinheit
1 herab, und er gibt die Zählung bzw. den Zählstand
als Daten B zum Wähler 44 und zum a1b1-Detektor 16 aus.
Das Ausgangssignal vom RL-Zähler 40 wird auch als Daten M
zur Steuereinheit 1 ausgegeben, um zu bestätigen, ob die
Zahl der durch den decodierten Code bestimmten Verarbeitungsoperation
vollständig ist. Der Wähler 44 empfängt ein
Ausgangssignal vom Zähler 42, das Ausgangssignal vom
Wähler 40 sowie Daten A vom a1b1-Detektor 16, und er wählt
eine dieser Einheiten nach Maßgabe eines Steuersignals
von der Steuereinheit 1, um die gewählten Daten zu einem
Codierer-ROM 46 auszugeben.
Der Codierer-ROM 46 nimmt die Daten N, einschließlich der
Daten vom Flip-Flop FBLKP für Farbbezeichnung und Daten für
die Anzeige einer Dehnungs- oder Verdichtungverarbeitung,
von der Steuereinheit 1 ab. Der Codierer-ROM
46 empfängt Daten vom Wähler 44 und Daten N von der Steuereinheit
1 als Adreßdaten und gibt 8-Bit-Daten EROM07-00 zum
Wähler 48 aus.
Von den Daten EROM07-00 werden die Daten DROM07-05 zu einer
Addierstufe geliefert. Eine durch die Addierstufe 52, den
Wähler 54 und einen Bildzeiger RBPQ 56 gebildete Schaltung
arbeitet auf dieselbe Weise wie die betreffenden Schaltungen
des Decodierverarbeitungsteils 8. Insbesondere erzeugt
dabei der Bildzeiger 56 eine Anzeigegröße.
Nach Abschluß der Erzeugungsverarbeitung für den decodierten
Code wird die Anzeigegröße vom Bildzeiger 56 durch die
Addierstufe 52 zu den Daten EROM07-05 addiert. Die Summe
wird dann zum Wähler 54 ausgegeben.
Der Wähler 54 nimmt Daten C vom Detektor 16 ab und wählt
diese nach Maßgabe eines Steuersignals von der Steuereinheit
1, um als Anzeigegröße des Bildzeigers RBPQ 56 zu
dienen. Wenn als Ergebnis der Addition durch die Addierstufe
52 2³ Bits gleich "1" ist, wird dies der Steuereinheit
1 mittels der Daten 0 gemeldet.
Der Wähler 48 empfängt Daten EROM07-00 und Daten G vom
Decodierverarbeitungsteil 7 über ein Verriegelungsglied 58
und wählt eine dieser Dateneinheiten in Abhängigkeit vom
Steuersignal von der Steuereinheit 1. Die gewählten Daten
werden zu einer Trommelschiebestufe 50
ausgegeben. Letztere dreht die Eingabedaten nach Maßgabe
der Anzeigegröße vom Bildzeiger 56 und gibt die gedrehten
Daten zum Wähler 60 aus. Gleichzeitig gibt die Schiebestufe
50 die gedrehten Daten als Daten RODT15-08 zum Register 62
aus.
Eine der Dateneinheiten RODT07-00 und RODT15-08 wird
durch den Wähler RRSEL 64 nach Maßgabe eines Steuersignals
von der Steuereinheit 1 gewählt; die gewählte Dateneinheit
wird dem Wähler 60 eingegeben. Letzterer erzeugt ein
Ausgangssignal in Übereinstimmung mit der Anzeigegröße
vom Bildzeiger RBPQ 68 als Daten RODT07-00. Das
Register 62 verschiebt die Daten RODT15-08 zu Daten
RODT07-00 nach Maßgabe eines Steuersignals von der Steuereinheit
1. Die Daten RODT07-00 und die Daten RODT15-08
werden zum Wähler RRSEL 64 ausgegeben. Die Daten RODT07-00
werden als Daten P zum Bezugszeilendaten-Speicherteil 4
und gleichzeitig zu einem dem Inverter 24 ähnlichen
Inverter 66 ausgegeben und schließlich auf eine Ausgabedatenschiene
ausgegeben.
Die Anordnung des Bezugszeilen-Adreßgenerators 3, des
EOL-Detektors 11 des Decodierverarbeitungsteils 7 und
des Bezugszeilendaten-Speicherteils 4 ist nachstehend
anhand von Fig. 4 erläutert.
Der EOL-Detektor 11 des Decodierverarbeitungsteils 7 umfaßt
ein Stopadreßregister 80, einen Komparator 90 und
einen EOL-Detektor 81. Der Bezugszeilen-Adreßgenerator 3
umfaßt einen Adreßzähler 82, eine Addierstufe 84, einen
Wähler 86 und ein Adreßregister 88. Der Bezugszeilendaten-Speicherteil
4 umfaßt seinerseits einen Wähler 92 und
einen Bezugszeilen-Puffer-Randomspeicher bzw. -RAM 94.
Das Stopadreßregister 80 verriegelt im voraus Einzeilen-Lauflängendaten
und gibt die oberen 10-Bit-Daten zu einem
Komparator 90 aus. Der Adreßzähler 82 nimmt Daten Q von
der Steuereinheit 1 ab. Die Daten Q werden dem Zähler 82
jedesmal dann eingegeben, wenn eine Einbyte-Binärdatenverarbeitung
abgeschlossen ist, und der Zähler 82 speichert
die Daten Q auf, bis die Einzeilenverarbeitung beendet
ist. Ein Ausgangssignal vom Adreßzähler 82 zeigt mithin
die Byte-Position an, bis zu welcher die Binärdatenverarbeitung
auf der entsprechenden Verarbeitungszeile fortgeschritten
ist.
Nach Beendigung der Einzelverarbeitung wird der Adreßzähler
82 entsprechend einem Steuersignal von der Steuereinheit
1 rückgesetzt, und er beginnt wieder zu zählen,
wenn die Verarbeitung einer neuen Zeile eingeleitet wird.
Ein Zählstand des Adreßzählers 82 wird
zum Komparator 90, zum Wähler 86 und zur Addierstufe 84 ausgegeben.
Der Komparator 90 nimmt auch Lauflängendaten
für eine Zeile vom Stopadreßregister 80
in Einheiten von Bytes ab und vergleicht sie mit dem Zählstand
des Adreßregisters 82. Wenn dazwischen eine Koinzidenz
festgestellt wird, bedeutet dies, daß die Bilderzeugung
eine Byte-Position vor dem Ende der entsprechenden Verarbeitungszeile
erreicht hat. Zu diesem Zeitpunkt werden
Daten T zur Steuereinheit 1 ausgegeben.
Die Addierstufe 84 nimmt die Daten R von der Steuereinheit 1 ab
und addiert sie zum Zählstand des
Adreßzählers 82, um die Summe zum Wähler 86 auszugeben.
Der Wähler 86 wählt Adreßdaten vom Adreßzähler 82 sowie
Adreßdaten von der Addierstufe 84 nach Maßgabe eines
Steuersignals von der Steuereinheit 1, um das Wählergebnis
zum Adreßregister 88 auszugeben.
Das Adreßregister 88 empfängt auch Daten S von der Steuereinheit
1 und gibt diese Daten zusammen mit dem Ausgangssignal
vom Wähler 86 zum Bezugszeilen-Puffer-RAM 94 aus.
Der Puffer-RAM 94 speichert Bilddaten für
eine Bezugszeile und Bilddaten für die entsprechende Verarbeitungszeile
zum Verarbeiten der nächsten Zeile. Bilddaten
für zwei Zeilen werden somit im Randomspeicher bzw.
RAM 94 abgespeichert, und Daten S werden von der Steuereinheit
1 zum Adreßregister 88 geliefert, um die Bezeichnungsspeicherbereiche
umzuschalten, d. h. zu bestimmen,
welcher Bereich (bzw. Speicherplatz) gewählt werden soll.
Der Wähler 92 empfängt die eingegebenen Byte-Bilddaten F,
d. h. die Daten RIDT07-00, über den Codierende-Verarbeitungsteil
28, sowie Byte-Daten P, d. h. verarbeitete Bilddaten
RODT07-00, und wählt eine dieser Dateneinheiten nach Maßgabe
eines Steuersignals von der Steuereinheit 1, um dabei
das Wählergebnis im Bezugszeilen-Puffer-RAM 94 abzuspeichern.
Wie aus der vorstehenden Beschreibung hervorgeht, wählt der
Wähler 86 beim Auslesen von Bezugszeilendaten die
Ausgabedaten von der Addierstufe 84, während er bei
Speicherung der Bezugszeilendaten die Ausgabedaten vom
Adreßzähler 84 wählt, um sie auszugeben.
Wenn zu Beginn der Verarbeitung für eine neue Zeile Bezugszeilendaten
ausgelsen werden, werden Daten "2" und "1"
als Daten R von der Steuereinheit 1 der Addierstufe 84
eingegeben, um für das Register 96 nötige Bezugsdaten
auszugeben. Das Register 96 kann sodann die nötigen Bezugszeilendaten
halten. Die Daten REF-3-10 vom Register 96
werden als Daten U zu einem b1-Detektor 102 ausgegeben.
Der EOL-Detektor 81 erfaßt einen EOL-Code, wenn ein Fehler
z. B. im Decodierverarbeitungsteil 7 oder im Erzeugungsverarbeitungsteil
8 auftritt. Der Detektor 81 empfängt Daten H
vom Decodierverarbeitungsteil 7 und meldet die Erfassung
eines EOL-Codes zur Steuereinheit 1 mittels
Daten Z.
Die Anordnung des a1b1-Detektors 16 des Erzeugungsverarbeitungsteils
8 ist nachstehend anhand von Fig. 5 erläutert.
Der a1b1-Detektor 16 wird häufig in einem Vertikalmodus
und einem Durchlaßmodus in einem zweidimensionalen
Modus benutzt.
Die aus dem Bezugszeilen-Puffer RAM 94 ausgelsenen Daten
werden im Register 96 als Daten REF15-08 verriegelt. Das
Register 96 verschiebt die Daten REF07-04 in den Daten
REF07-00 zu Daten REF-4-1 und die Daten REF15-08 zu Daten
REF07-00 in Einheiten von Bytes, um damit Daten vom
Bezugszeilen-Puffer RAM 94 als Daten REF15-08 zu verriegeln.
Der b1-Detektor 102 nimmt Daten U für die Bezugszeile
vom Register 96 ab; außerdem nimmt er Daten A1 von
der Steuereinheit 1 zur Erfassung eines Farbänderungs-
oder -wechselpunkts ab. Der Detektor 102 meldet das Fehlen
des b1-Punkts zur Steuereinheit 1 mittels Daten A2. Der
a1-Detektor 104 nimmt Daten F vom Codierendeverarbeitungsteil
28 ab. Die b1- und a1-Detektoren 102 bzw. 104 nehmen
eine Anzeigegröße vom a0-Zeiger RBPA 100 ab und erfassen
jeweils Positionen a1 bzw. b1 von Pixels mit Änderungen
auf einer Codierzeile und einer Bezugszeile an der rechten
Seite des Punkts a0, d. h. vor dem Punkt a0 in Verarbeitungsrichtung,
am Register 96. Die durch den b1-Detektor
102 erfaßte Position b1 wird zur Subtrahierstufe
120 und zum Wähler 108 geliefert. Im Zusammenhang mit dem
Register 96 wird "+4" zur Position b1 addiert.
Die durch den a1-Detektor 104 erfaßte Position a1 wird
den Wählern 116 und 114 zugeführt. Der Wähler 116 wählt
die Ausgabedaten aus den Daten vom a1-Detektor 104 oder
den Daten "+4" von der Steuereinheit 1 und gibt die
gewählten Daten zur Subtrahierstufe 120 aus. Letztere
gibt ihr Rechenergebnis als Daten A zum Erzeugungsverarbeitungsteil
8 aus.
Der Wähler 108 empfängt die Anzeigegröße vom a0-Zeiger
100 und das Ausgangssignal b1
vom b1-Detektor 102. Der Wähler 110 empfängt Daten "-4"
von der Steuereinheit 1 und Daten B, als Ausgabe RLCNT
von RL-Zähler 42, vom Erzeugungsverarbeitungsteil 8. Die
Wähler 108 und 110 wählen jeweils ihre Ausgangssignale
nach Maßgabe eines Steuersignals von der
Steuereinheit 1 und geben sie zur Addierstufe A01BP 112
aus, welche ihrerseits die Summe zum Wähler 112 ausgibt.
Der Wähler 114 nimmt auch das Erfassungsergebnis a1 vom
a1-Detektor 104, die Anzeigegröße vom a0-Zeiger 100 und
die Daten W von der Steuereinheit 1 ab, und er wählt
sein Ausgangssignal entsprechend einem
Steuersignal von der Steuereinheit 1. Das Ausgangssignal
vom Wähler 114 wird dem Erzeugungsverarbeitungsteil 8 als
Daten C und dem Decodierverarbeitungsteil 7 als
Daten D zugeliefert. Das Ausgangssignal vom Wähler 114
wird auch durch den a0-Zeiger RBPA 100 als Anzeigegröße
verriegelt. Die Anzeigegröße vom a0-Zeiger 100 wird durch
dem Komparator 106 mit den Daten E vom Adreßregister 80
verglichen, und das Vergleichsergebnis wird als Daten V
zur Steuereinheit 1 ausgegeben.
Das Ausgangssignal von der Addierstufe
(A01BP) 112 wird zum Komparator 122 ausgegeben, der auch
eine Größe "8" zur Angabe eines Datenverarbeitungsformats
von der Steuereinheit 1 abnimmt
und einen Vergleich zwischen den beiden
Eingangssignalen anstellt. Das Vergleichsergebnis wird
der Steuereinheit 1 als Signal SNAGR8 zugeführt, wenn die
Ausgabe von der Addierstufe 112 gleich 8 oder größer ist.
Der b1-Detektor 102 besitzt den in Fig. 6 gezeigten
Aufbau. Diese Schaltung prüft einen Farbänderungs- oder
-wechselpunkt; ein weißer Lauf wird als "0",
ein schwarzer Lauf als "1" verarbeitet. Für
entsprechende Bits vor dem interessierenden Punkt a0
in Verarbeitungsrichtung wird "1" als Maskenmuster geliefert.
Die dem b1-Detektor 102 eingegebenen Bezugszeilendaten
-4-11 werden jeweils an eine Klemme von
exklusiven ODER-Gliedern 208 angelegt, an deren andere
Klemme jeweils ein Farbsteuersignal angelegt wird.
Genauer gesagt: das Farbsteuersignal ist "0", wenn ein
Farbänderungspunkt von einem weißen Lauf zu einem schwarzen
Lauf geprüft wird, und es ist "1", wenn ein Farbänderungspunkt
von einem schwarzen Lauf zu einem weißen
Lauf geprüft wird. Die Daten -4-11 von den exklusiven
ODER-Gliedern 208 werden Bit für Bit entsprechenden
NAND-Gliedern 211 eingespeist, die jeweils auch ein
Maskenmuster und die Daten von einem vorherigen Bit
abnehmen. Mit anderen Worten: bezüglich des NAND-Glieds
für ein 3. Bit werden diesem durch
den betreffenden Inverter 210 invertierte 2. Bit-Daten
eingegeben. Jedes NAND-Glied 211 berechnet ein logisches
Produkt aus diesen Eingangssignalen zur
Feststellung einer Farbänderung in Pixelkomponenten an
der betreffenden Bitposition. Wenn daher alle zugeordneten
Bits der gleichen Verarbeitung unterworfen werden,
kann ein Farbänderungspunkt von Pixelkomponenten einfach
und augenblicklich erfaßt werden.
Der Grund dafür, weshalb die invertierten vorherigen
Bit-Daten den jeweiligen NAND-Gliedern 211 eingespeist
werden, liegt darin, daß Punkte 201 und 202 im Fall einer
Bezugszeile und einer Verarbeitungszeile gemäß Fig. 7A
nicht als Farbänderungspunkt b1 einer Bezugszeile erfaßt
werden sollen. Dies stellt einen Zustand
dar, in welchem die Farbe des Punkts an der linken Seite
des betreffenden Bits als entgegengesetzte Farbe hinzugefügt
wird. Auf diese Weise kann verhindert werden, daß
schwarze Punkte 201 und 202 als Punkt b1 erfaßt werden.
Im folgenden ist die Arbeitsweise der
Binärdatenverdichtungsvorrichtung
beschrieben.
Nachstehend ist zunächst die Dehnungsverarbeitung im einzelnen
erläutert.
Wenn eine Dehnungsverarbeitung für eine neue Seite eingeleitet
wird, werden Steuerdaten, einschließlich von Daten
zur Bestimmung der MH-, MR- oder M²R-Methode, im Fall eines
Faksimilesystems geliefert. Die Steuerdaten enthalten Daten
zur Anzeige einer Lauflänge für eine Zeile. Das Stopadreßregister
80 speichert die Lauflängendaten für eine Zeile.
Bei der Verarbeitung nach der M²R-Methode sind alle Bits
der Bilddaten auf der Bezugszeile am Anfang einer Seite
weiß oder gleich "0". In diesem Zustand wird zunächst durch
den EOL-Detektor 81 ein EOL-Code erfaßt, um die Dehnungsverarbeitung
einzuleiten.
Bei Einleitung einer Dehnungsverarbeitung für eine neue
Zeile wird ein erforderlicher
Zustand initialisiert. Beispielsweise wird die folgende
Initialisierung ausgeführt: Der Adreßzähler 82 wird rückgesetzt,
und von der Steuereinheit 1 werden Daten S zum
Bit "10" des Adreßregisters 88 geliefert, um Adressen umzuschalten.
Danach wird von der Steuereinheit 1 eine Dateneinheit
"1" als Daten R der Addierstufe 84 eingegeben, und
erste Byte-Daten auf der Bezugszeile werden aus dem Bezugszeilen-Puffer-RAM
94 ausgelsen, um sie als Daten REF15-08
im Register 96 abgespeichert zu werden. Nach dem Verschieben
der Daten zu Daten REF07-00
wird die Einheit "2" als Daten R von der Steuereinheit 1
geliefert, und die aus dem RAM 94 ausgelesenen Byte-Daten
werden auf dieselbe Weise, wie oben beschrieben, als Daten
REF15-08 im Register 96 gespeichert. Die Zeiger 36, 56 und
100 werden rückgesetzt. Daten W werden von der Steuereinheit
1 dem Wähler 114 eingegeben und entsprechend einem
Steuersignal von der Steuereinheit 1 gewählt, so daß ein
neuer Wert Größe im a0-Zeiger 100 gesetzt
wird. Die Farbe wird daher zwangsweise aus "Weiß" gesetzt.
Beispielsweise sei angenommen, daß ein nach der M²R-Methode
codierter Code über eine Eingabedatenschiene dem Decodierverarbeitungsteil
7 in Einheiten von 8 Bits, d. h. 1 Byte,
nach Vornahme der erwähnten Initialisierung eingegeben und
durch das Verriegelungsglied 22 nach Maßgabe eines Steuersignals
von der Steuereinheit verriegelt wird.
In einem Register, das hauptsächlich zum Halten bzw.
Speichern von Bilddaten und eines verdichteten Codes
dient, entspricht das am weitesten links befindliche Bit
dem Bit "0". In einem Register, das hauptsächlich zum
Halten von binären Steuerdaten dient, entspricht das am
weitesten rechts stehende Bit dem Bit "0". Infolgedessen
müssen die eingegebenen Binärdaten invertiert werden. Dies
erfolgt durch den Inverter 24, der die Binärdaten sodann zum
Register 26 und zum EOL-Detektor 11 ausgibt. Im Register 26
werden vorher eingegebene Byte-Daten RDTI15-08 nach Maßgabe
eines Steuersignals von der Steuereinheit 1 zu Daten
RDTI07-00 verschoben, und neue Eingabedaten werden als
Daten RDTI15-08 verriegelt und zusammen mit Daten RDTI07-00
als 16-Bit-Daten gehalten. Auf diese Weise werden am Anfang
einer Seite 2-Byte-Binärdaten eingegeben.
16-Bit-Registerdaten RDTI15-00 werden zum Codierende-Verarbeitungsteil
28 ausgegeben. Diese Schaltung wird nur bei
der Verdichtungsverarbeitung betätigt, während sie bei der
Dehnungsverarbeitung einfach Daten passieren läßt. Die
16-Bit-Registerdaten RDTI15-00 werden daher über den Verarbeitungsteil
28 zur Trichterschiebestufe 30 ausgegeben.
Der Decodierzeiger 36 zeigt die LSB-Position eines als
nächstes auszusiebenden Codes aus den Registerdaten
RDTI15-00 an, die der Trichterschiebestufe 30 eingegeben
wurden. Letztere erzeugt eine 9-Bit-Ausgabe LSHT08-00,
die durch Linksverschieben der Daten RDTI15-00 um die Zahl
der durch eine Anzeigegröße vom Zeiger 36 angegebenen Bits
erhalten wurde. Wenn beispielsweise die Größe des Zeigers
36 gleich "3" ist, wählt die Trichterschiebestufe 30 Daten
RDTI11-03 aus den Eingabedaten RDTI15-00 und gibt diese als
Daten LSHT08-00 aus.
Die Daten LSHT08-00 werden zu den den Daten LSHT10-09 von
der Steuereinheit 1 entsprechenden Daten hinzuaddiert, und
das Ergebnis wird zum Wähler 31 ausgegeben, der außerdem
Daten entsprechend den Daten LSHT06-08 oder LSHT07-08 von
der Steuereinheit 1 abnimmt. Diese Eingabedaten werden nach
Maßgabe eines Steuersignals von der Steuereinheit 1 gewählt,
und die gewählten Daten werden als 11-Bit-Adreßdaten zum
Decodierer-ROM 32 ausgegeben.
Wenn in diesem Fall bei der M²R-Methode die Erzeugungsverarbeitung
eines unmittelbar vorhergehenden decodierten
Codes nicht abgeschlossen ist, wird das dem
Wähler 31 zugeordnete Steuersignal nicht erzeugt. Der
Wähler 31 wartet daher den Abschluß der Erzeugungsverarbeitung
in einem Zustand ab, in welchem die Daten LSHT08-00
geliefert werden.
Falls der Wähler 31 den Abschluß nicht abwartet, kann ein
weißer Vorsatz oder Lauf für einen Anfangscode
der nächsten Zeile, nachdem die Verarbeitung bis zum Ende
der augenblicklichen Verarbeitungszeile fortschreitet,
nicht gesetzt werden. Wenn in diesem Fall die
Decodierung für den Anfangscode durchgeführt wird, muß
die Anzeigegröße des Decodierzeigers 36 rückgesetzt werden,
und die Decodierung muß wieder aufgenommen werden, was
Schwierigkeiten bedingt.
Falls jedoch eine solche Vorausverarbeitung
nicht durchgeführt wird, kann ein EOFB-Code
(=Ende des Faksimileblocks: der EOFB-Code enthält doppelte
EOL-Codes) am Ende einer Seite nicht decodiert werden, und
die Verarbeitung wird am EOFB-Code angehalten. Wenn daher
ein EOL-Code im EOFB-Code durch den EOL-Detektor 81 erfaßt
wird, erfolgt die Decodierung durch Vorausverarbeitung.
Da die MH- und MR-Methoden im Gegensatz zur M²R-Methode
einen EOL-Code verwenden, kann eine Codedateneinheit durch
Vorausverarbeitung decodiert werden, ohne daß der Abschluß
der augenblicklichen Erzeugungsverarbeitung abgewertet zu
werden braucht. Mit der Decodierverarbeitung nach der M²R-Methode
kann somit auch die nach der Mh- oder MR-Methode
mit höherer Geschwindigkeit als beim bisherigen Gerät
durchgeführt werden.
Die Daten LSHT10-00 werden nach Maßgabe eines Steuersignals
von der Steuereinheit 1 zum Decodierer-ROM 32 ausgegeben.
Wenn Daten Y08-06 gewählt sind, wird der 08-06-Bitabschnitt
oder der 08-07-Bitabschnitt der Daten LSHT10-00 als der
entsprechende Abschnitt oder Teil der Daten LSHT gewählt,
und der Datenabschnitt LSHT08-00 wird durch entsprechende,
zum Decodierer-ROM 32 auszugebende Bits zur MSB-Richtung
verschoben.
Der Dekodierer-ROM 32 gibt einer Lauflänge zugeordnete
Daten als Daten DROM07-00, eine decodierte Codelänge
angebende Daten als Daten DROM11-08 und den nächsten
Zustand anzeigende Daten als Daten DROM15-12 aus. Zu
diesem Zeitpunkt werden Daten in den zweidimensionalen
Vertikal- und Durchlaßmodi in Form von Lauflängendaten
(δ-4) ausgegeben.
Die Daten DROM11-08 werden zur Addierstufe 34 ausgegeben,
welche gleichzeitig Daten vom Zeiger 36 abnimmt. Die Daten
DROM11-08 werden somit zum Inhalt des Zeigers 36 addiert,
und die summierten Daten werden zum Wähler 38 ausgegeben.
Der Wähler 38 empfängt ein Signal D, das bei der Verdichtungsverarbeitung,
nicht aber bei der Dehnungsverarbeitung
benutzt wird, vom a1b1-Detektor 16. Da jedoch im
vorliegenden Fall die Dehnungsverarbeitung durchgeführt
wird, wird das Ausgangssignal von der Addierstufe 34 nach
Maßgabe eines Steuersignals von der Steuereinheit 1 gewählt.
Aus diesem Grund werden die summierten Daten
wiederum zum Inhalt des Zeigers 36 zeigt
auf diese Weise die LSB-Position eines einem decodierten
Code am nächsten gelegenen Codes an.
Wenn die 2³-Bit-Daten als Ergebnis der Addition durch die
Addierstufe 34 zu "1" werden, wird dies der Steuereinheit 1
mittels der Daten J gemeldet. Dies bedeutet, daß die Decodierverarbeitung
für ein Byte abgeschlossen ist. Die Steuereinheit
1 gibt daraufhin ein Steuersignal zum Register 26
aus, um die Daten RDTI15-08 in Einheiten von Bytes nach
links zu Daten RDTI07-00 zu verschieben. Durch das Verriegelungsglied
22 verriegelte neue Byte-Daten werden als
Daten RDTI15-08 nach Maßgabe eines Steuersignals von der
Steuereinheit 1 im Register 26 verriegelt. Der Zeiger 36
nimmt die unteren drei Bits der summierten Daten von der
Addierstufe 34 ab, so daß in den Daten RDTI07-00 des
Registers 26 stets die LSB-Position eines zu decodierenden
Codes vorhanden ist.
Im folgenden ist die Arbeitsweise des Erzeugungsverarbeitungsteils
8 beim Dehnen von Binärdaten nach Maßgabe
des Decodierergebnisses vom Decodierteil 13 beschrieben.
Wie erwähnt, empfängt der Erzeugungsverarbeitungsteil 8
das Decodierergebnis, d. h. die Lauflängendaten. Zunächst
ist ein Fall beschrieben, in welchem ein eindimensionaler
Moduscode dem Teil 7 eingegeben wird. Es sei angenommen,
daß das Decodierergebnis eines Ergänzungscodes dem Wähler
40 eingespeist wird. Obgleich der Wähler 40 Daten L von
der Steuereinheit 1 abnimmt, wird dieser Vorgang später
näher erläutert werden. Wenn ein Ausgangssignal vom
Decodierer-ROM 32 entsprechend einem Steuersignal von der
Steuereinheit 1 gewählt wird, werden die Ausgabedaten dem
RL-Zähler 42 eingegeben. Der RL-Zähler 42 ist ein Zähler
mit einer 12-Bit-Länge; er speichert das Decodierergebnis
des Ergänzungscodes im 6-Bit-Datenabschnitt 08-03.
Da die Lauflänge des vom Decodierer-ROM 32 ausgegebenen
Ergänzungscodes eine Größe ist, die durch Dekrementieren
einer tatsächlichen oder Ist-Lauflänge um acht Bytes
erhalten wurde, wird dem 02-00-Bitabschnitt des RL-Zählers
42 "1" eingegeben, um damit "111" zu erhalten. Dies
ist der Fall, weil die Erzeugungsverarbeitung in
Einheiten von Bytes erfolgt. Die Daten RLCNT vom RL-Zähler
42 werden dem Codierer-ROM 46 als Teil der Adreßdaten
über den Wähler 44 eingegeben. Der Codierer-ROM 46
empfängt auch Bitdaten für Farbbezeichnung und Bitdaten
zur Angabe der Dehnungs- oder Verdichtungsverarbeitung
von der Steuereinheit 1 als Teil der Adreßdaten.
In Abhängigkeit von den dem Codierer-ROM 46 eingegebenen
Adreßdaten gibt dieser ROM 46 8-Bitdaten "00000000" oder
"11111111" aus. Die Ausgabedaten werden über den Wähler
48 der Trommelschiebestufe 50 zugeführt. Der Erzeugungsverarbeitungsteil
8 weist einen ähnlichen Schaltungsaufbau
auf wie der Decodierzeiger 36 des Decodierteils
13. Die Trommelschiebestufe 50 nimmt Daten vom Zeiger 56
ab, so daß die Eingabedaten gedreht und
gemäß den Daten vom Zeiger 56 ausgegeben werden. Da
jedoch alle Bits entweder "0" oder "1" sind, macht es
keinen Unterschied, ob die Daten gedreht werden oder
nicht. Die Größe des Bildzeigers RBPQ 56 bleibt
mithin unverändert.
Da zu diesem Zeitpunkt Daten in Einheiten von Bytes
ausgegeben werden, werden keine Daten vom Decodierer-ROM
46 zur Addierstufe 52 ausgegeben. Da nämlich die Verarbeitung,
wie erwähnt, in Einheiten von Bytes erfolgt,
braucht die Größe des Bildzeigers RBPQ 56 nicht geändert
zu werden. Das Ausgangssignal von der Trommelschiebestufe
50 wird dem Wähler 60 und auch dem 15-08-Abschnitt des
Registers 62 zugeführt. Der Wähler 60 nimmt Daten RODT15-08
über den Wähler RRSEL 64 bei der Erzeugungsverarbeitung
des Ergänzungscodes ab. Außerdem empfängt der Wähler 60
Daten vom Bildzeiger RBPQ 56, wie in der Trommelschiebestufe
50.
Der Wähler 60 wählt Daten vom Wähler (RRSEL) 64 als Daten
von der LSB-Position (Position des niedrigstwertigen
Bits) der zu erzeugenden Bilddaten bis zu einer um "1"
kleineren Bitposition aus der Anzeigegröße des Bildzeigers
RBPQ 56, und er wählt das Ausgangssignal von der
Trommelschiebestufe 50 als Daten von der Anzeigegröße des
Bildzeigers (RBPQ) 56 bis zur MSB-Position (Position des
höchstwertigen Bits) der Bilddaten, um damit die gewählten
Daten als Daten RODT07-00 des Registers 62 auszugeben.
Wenn die Anzeigegröße vom Zeiger 56 z. B. "3" ist,
werden Daten vom Wähler 64 als Daten RODT02-00 und Daten
von der Trommelschiebestufe 50 als Daten RODT07-03 gewählt.
Die durch den Wähler 60 gewählten Daten werden
als Daten RODT07-00 des Registers 62 gespeichert. Die
Lauflänge des Ergänzungscodes beträgt 8 Bytes oder mehr,
und er wird in Einheiten von Bytes verarbeitet. Da mit
der obigen Operation eine Einbyte-Datenverarbeitung vollständig
durchgeführt wird, werden
Daten RODT07-00 des Registers 62 über den dem Inverter 24
ähnlichen Inverter 66 auf der Ausgabedatenschiene nach
Maßgabe eines Steuersignals von der Steuereinheit 1
ausgegeben. Daten RODT07-00 werden auch als Daten P zum
Bezugszeilen-Speicherteil 4 ausgegeben, um in diesem an
einer Adresse entsprechend dem augenblicklichen
Zählstand des Adreßzählers 88 gespeichert zu
werden.
Nach Abschluß der Erzeugungsverarbeitung der Einbyte-Bilddaten
wird an den Adreßzähler 82 als Dateneinheit Q
ein Taktsignal angelegt, um ihn um "1" zu inkrementieren
bzw. hochzählen zu lassen. Dabei wird im Fall
eines nach der M²R-Methode codierten Codes der Zählstand
des Zählers 82 durch den Komparator 90 mit dem das
Stopadreßregisters 80 verglichen, um zu prüfen, ob die
Verarbeitung bis zum Ende der Zeile fortgeschritten ist.
Im Fall eines nach der MR- oder MH-Methode codierten
Codes ergibt sich keinerlei Schwierigkeit, weil dabei
EOL-Codes verwendet werden.
Die Daten im Register 96 werden in Einheiten von Bytes in
Richtung auf die LSB-Position verschoben. Neue Bezugszeilendaten
werden unter Verwendung der Summe aus dem
Zählstand des Adreßzählers 82 und den Daten R als Adresse
aus dem Speicherteil 4 ausgelesen und im Register 96 als
Daten REF15-08 verriegelt. In diesem Fall werden Daten a0
des a0-Zeigers (RBPA) 100 nicht geändert. Es wird geprüft,
ob Daten RLCNT des RL-Zählers 42 gleich "0" sind.
Ist dies nicht der Fall, so werden die Daten RLCNT um "1"
dekrementiert. Wenn die Daten RLCNT gleich "0" sind,
werden Daten M zur Steuereinheit 1 ausgegeben, um damit
anzuzeigen, daß die Erzeugungsverarbeitung des eingegebenen
Ergänzungscodes abgeschlossen ist. Ist ein solcher
Abschluß nicht erreicht, so werden die Daten RLCNT vom
RL-Zähler 52 über den Wähler 44 wiederum dem Codierer-ROM
46 zugeführt. Die Verarbeitung wird auf die beschriebene
Weise wiederholt, bis das Ausgangssignal RLCNT vom RL-Zähler
42 gleich "0" wird.
Wenn ein Lauf der gleichen Farbe für
eine Länge von 2561 oder mehr andauert, wird ein Code
einer Lauflänge von 2560 wiederholt. In diesem Fall
liefert die Steuereinheit 1 zum Wähler 40 den Code einer
Lauflänge von 2560 und die Zahl des wiederholten Codes.
Wenn der Wähler 40 die Daten L wählt, wird dieselbe
Verarbeitung wie für den Ergänzungscode durchgeführt.
Wenn die Erzeugungsverarbeitung für die Lauflänge von
2560 einmal abgeschlossen ist, wird die Zahl
des wiederholten Codes um "1" dekrementiert, und dieselbe
Verarbeitung wird wiederholt, bis der Inhalt des RL-Zählers
42 gleich "0" ist.
Im folgenden ist ein Fall beschrieben, in welchem das
Decodierungsergebnis eines Beendigungscodes verarbeitet
wird. Das Decodierungsergebnis wird über den Wähler 40 in
den 05-00-Abschnitt des RL-Zählers 42 eingegeben, dessen
05-03-Abschnitt auf dieselbe Weise verarbeitet wird wie
die Byte-Daten in der Erzeugungsverarbeitung des Ergänzungscodes.
Nach Abschluß der Verarbeitung der Byte-Daten
werden restliche Daten 02-00, die weniger als
ein Byte betragen, verarbeiten. Die weniger als ein Byte
betragenden Daten 02-00 werden zum Wähler 44 ausgegeben
und durch diesen für die Eingabe in den Codierer-ROM 46
gewählt. Die Daten 02-00 werden auch als Daten B zum
a1b1-Detektor 16 ausgegeben. Die Bilddatenerzeugung
erfolgt auf dieselbe Weise wie die Erzeugungsverarbeitung
für eine Einbyte-Lauflänge.
Wenn ein Lauflängencode, der kürzer ist als ein Byte,
verarbeitet worden ist, werden Daten B vom RL-Zähler 42
zum Wähler 110 geliefert, durch letzteren gewählt und der
Addierstufe 112 zugeführt. Der Wähler 108 wählt Daten a0
vom a0-Zeiger (RBPA) 100 und liefert sie zur Addierstufe
112. Die Summe von der Addierstufe 112 wird über die
Wähler 114 und 54 zum Komparator 122 und zum Bildzeiger
(RBPQ) 56 geliefert. Als Ergebnis wird die Größe des
Bildzeigers 56 aktualisiert. Wenn der Komparator 122
bestimmt, daß das Ausgangssignal von der Addierstufe 112
"8" oder mehr beträgt, wird durch das Signal SNAGR8 der
Steuereinheit 1 gemeldet, daß eine Einbyte-Datenverarbeitung
abgeschlossen ist. Wenn das Signal SNAGR8 ausgegeben
wird, gibt das Register 62 nach Maßgabe eines
Steuerausgangssignals von der Steuereinheit 1 die Daten
RODT07-00 auf der Datenschiene aus und liefert sie auch
als Daten P zum Speicherteil 4.
Wenn kein Signal SNAGR8 ausgegeben wird, werden die
nächsten Bilddaten abgewartet. Wenn die nächsten Bilddaten
dem Wähler 60 eingegeben werden, werden Daten
RODT07-00 vom Register 62 über den Wähler (RRSEL) 64 dem
Register 62 zugeliefert.
Die obige Operation läßt sich für einen MH-Codeabschnitt
eines Horizontalmoduscodes unter den nach der MH-Methode
codierten Codes und den nach MR- und M²R-Methode codierten
Codes ausführen.
Als nächstes ist die Erzeugungsverarbeitung für einen
Code im Durchlaßmodus und im Vertikalmodus als zweidimensionaler
Codiermodus beschrieben.
Die Lauflängendaten vom Dekodierteil 13 werden in den
RL-Zähler 42 geladen. Da hierbei die Lauflängendaten im
DROM in Form von (δ-4) gespeichert sind,
wird der Inhalt des RL-Zählers 42 ebenfalls auf (δ-4)
aktualisiert. Außerdem wird ein in der Steuereinheit
enthaltenes, nicht dargestelltes Flip-Flop FBLKP zum
Bezeichnen der Farbe entsprechend der Farbe eines den
Lauflängendaten zugeordneten Laufs
rückgesetzt oder gesetzt. Gleichzeitig werden in der das
Register 62 enthaltenden Datenhalteschleife Einbyte-Bilddaten,
die den Punkt a0 einer augenblicklichen Verarbeitungszeile
enthalten, zum 07-00-Datenabschnitt des
Registers 62 über den Wähler 64 und den Wähler 60 zurückgeführt.
Die Bitposition des Punkts a0 in den Bytedaten
wird in den a1-Zeiger 100 und den Bildzeiger 56 geladen.
Das dritte Bit des a0-Zeigers 100 entspricht "0". Bilddaten
auf einer Bezugszeile sind in das Register 96
geladen worden. Daten REF00-07 des Registers 96 entsprechen
Daten RODT07-00 des Registers 62, in welchem bzw.
welchen die Bitposition des Punkts a0 enthalten ist.
Nachstehend ist die Dehnungsverarbeitung eines VL(2)-Codes
beschrieben, wobei der Punkt a0 dem zweiten Bit der
Daten RODT07-00 entspricht und eine Bezugszeile in
Fig. 7A dargestellte Bildmusterdaten aufweist.
Dabei wird ein Farbänderungspunkt auf einer Bezugszeile,
d. h. der Punkt b1, durch den in Fig. 6 dargestellten
b1-Detektor 102 gewonnen oder abgeleitet. In dem in
Fig. 7A gezeigten Fall für die Bezugszeile entspricht der
Punkt b1 dem achten Bit. Infolgedessen gibt der b1-Detektor
102 12=(8+4) aus.
Da VL(2) der Größe δ=-2 entspricht, empfängt der
RL-Zähler 42 -6=(-2-4). Der Addierer (A01BP) 112
empfängt das Ausgangssignal "12" vom b1-Detektor 102 über
den Wähler 108 und das Ausgangssignal (RLCNT) "6" vom
RL-Zähler 42 über den Wähler 110, und er berechnet
12+(-6), um das Ergebnis "6" auszugeben. Diese Ausgangssignal
wird durch den Wähler
114 gewählt und im a0-Zeiger 100 gesetzt.
Dies bedeutet insbesondere, daß ein Farbänderungspunkt
auf der augenblicklich oder aktueller Verarbeitungszeile,
d. h. der Punkt a1, dem sechsten Bit des betreffenden
Bytes entspricht. Während der Punkt b1 erfaßt und
der Punkt a1 berechnet werden, erzeugt der
Erzeugungsteil 15 Bilddaten. Da eine Farbe eines zu
erzeugenden Laufs durch das nicht dargestellte Flip-Flop
FBLKP bestimmt wird, wird ein nur aus "0"-Bits (weiß;
d. h. FBLKP=0) oder nur aus "1"-Bits (schwarz; d. h.
FBLKP=1) bestehendes Muster vom Codierer-ROM 46 ausgegeben
und der Trommelschiebestufe 50 über den Wähler 48
eingegeben. Der Wähler 60 empfängt Bilddaten vom Register
62. Die Trommelschiebestufe 50 gibt die eingegebenen
Bilddaten zum 15-08-Datenabschnitt des Registers 62 und
zum Wähler 60 aus.
Der Wähler 60 wählt die Daten vom Register 62 als Daten
von der LSB-Position der zu erzeugenden Bilddaten zu
einer Bit-Position an der linken Seite einer durch den
a0-Zeiger 100 angezeigten Bitposition, und er wählt Daten
von der Trommelschiebestufe 50 als Daten von der durch
den a0-Zeiger angezeigten Bit-Position bis zum siebten
Bit. Hierbei werden die Daten vom a0-Zeiger 100 im Zeiger
56 auf diese Weise verriegelt; ein im vorherigen Schritt
von der durch den Wähler 64 gebildeten Halteschleife
fertiggestelltes Bildmuster wird
rückgekoppelt und in einen Datenabschnitt an der linken
Seite des Punkts a0 geladen, während neue Bilddaten als
Datenabschnitt vom Punkt a0 bis zur MSB-Position (dem
15. Bit) der Daten RODT unabhängig von der Position des
Punkts a geladen werden, wie dies in Fig. 7B dargestellt
ist. Da - wie noch näher beschrieben werden wird - der
Punkt a1 als Punkt a0 im nächsten Verarbeitungsschritt
dient und Bilddaten entsprechend dem nächsten Lauf an
seiner rechten Seite erzeugt werden, besitzt ein augenblicklich
erzeugter Lauf eine Länge entsprechend dem zu
diesem Zeitpunkt vorliegenden decodierten Ergebnis.
Das Ausgangssignal der Addierstufe (A01BP) 112 wird dem
Komparator 122 aufgeschaltete, um zu prüfen, ob das Ausgangssignal
von der Addierstufe 112 gleich 8 oder größer
ist. Wenn das Ausgangssignal der Addierstufe 112 gleich 8
oder größer ist, liefert der Komparator 122 das Signal
SNAGR8. Wenn dieses Signal nicht erzeugt
wird, bedeutet dies, daß die Bilddaten für die augenblicklich
zu verarbeitenden Lauflängendaten nur in Daten RODT00-07
des Registers 62 erzeugt werden. Die Steuereinheit 1
führt somit in diesem Schritt die vollständige Erzeugungsverarbeitung
für diese Lauflängendaten aus.
Da bei diesem Ausführungsbeispiel das Ausgangssignal
von der Addierstufe 112 gleich 6 ist,
wird kein Signal SNAGR8 erzeugt, und die Erzeugungsverarbeitung
für diese Lauflängendaten wird in diesem Schritt
abgeschlossen. Nach Abschluß der Lauferzeugungsverarbeitung
wird das Ausgangssignal von der Addierstufe 112
über den Wähler 114 in den a0-Zeiger 100 und über die
Wähler 114 und 54 in den Bildzeiger 56 geladen. Die
Inhalte der Zeiger 100 und 56 werden somit zu "6" aktualisiert.
Die beschriebene Erzeugungsverarbeitung wird in
einem Maschinenzyklus parallel ausgeführt.
Fig. 7A veranschaulicht den Zustand, in welchem dieser
Maschinenzyklus abgeschlossen ist. In Fig. 7A sind die
Punkte a0, a1 und b1 im Hinblick auf den erzeugten Lauf
angegeben. Dieser Zustand entspricht dem
Anfangszustand der Erzeugungsverarbeitung für den nächsten
Schwarzlauf. Für die Erzeugungsverarbeitung des
Schwarzlaufs, d. h. im nächsten Maschinenzyklus, dient der
Punkt a1 gemäß Fig. 7A als Punkt a0, während der Punkt b1
außerhalb des Bereichs von Fig. 7A liegt. Die Erzeugung
eines Schwarzlaufs im nächsten Maschinenzyklus
und anschließend ist nachstehend beschrieben.
Wie vorstehend beschrieben, betragen die Inhalte des
a0-Zeigers (RBPA) 100 und des Bildzeigers (RBPQ) 54
jeweils "6". Dies bedeutet, daß das sechste Bit der Daten
RODT07-00 des Registers 62 dem Punkt a0 entspricht.
Wenn der Dekodierteil 13 einen V(0)-Code in einem vorhergehenden
Maschinenzyklus decodiert hat, d. h. in einem
Maschinenzyklus, in welchem die Bilddaten-Erzeugungsverarbeitung
auf der Grundlage des VL(2)-Codes ausgeführt
wird, wird "-4" in den RL-Zähler 42 eingegeben, weil die
Lauflänge δ=0 entspricht. Da ein Schwarzlauf erzeugt
werden soll, ist das Flip-Flop FBLKP auf "1" gesetzt.
In diesem Zustand wird der Punkt b1 nicht erfaßt oder
festgestellt. Dies wird der Steuereinheit 1 mittels der
Daten A2 gemeldet. Die Bilderzeugung wird jedoch unabhängig
von der Durchführung oder Nichtdurchführung der
Erfassung des Punkts b1 auf dieselbe Weise wie im vorherigen
Zyklus durchgeführt, so daß alle Bits vom
6. Bit bis zum 15. Bit der Daten RODT15-00 des Registers
62 auf "1" gesetzt sind. Gemäß Fig. 7B wird ein vollständig
aus "1"-Bits bestehender Datenabschnitt von
einem durch a1 bezeichneten Punkt aus nach rechts erzeugt.
Der Inhalt an der linken Seite eines durch den
a0-Zeiger 100 angegebenen oder angezeigten Punkt, d h.
der Datenabschnitt RODT06-00 der Daten RODT15-00, bleibt
bei der Operation der Halteschleife unverändert. Auf
diese Weise werden Einbyte-Bilddaten aus Schwarzdaten
RODT01-00, Weißdaten RODT05-02 und Schwarzdaten RODT-07-06
vervollständigt. Aus diesem Grund wird das nicht dargestellte
Flip-Flop FODRDY der Steuereinheit 1 zum Ausgeben
des Inhalts der Daten RODT00-07 gesetzt.
Da ein Einbyte-Bilddaten der Daten RODT07-00 vervollständigt
sind, werden im nächsten Verarbeitungsschritt an
deren rechter Seite Einbyte-Bilddaten erzeugt. Die Vorbereitung
dafür erfolgt in diesem Verarbeitungsschritt.
Genauer gesagt: der Inhalt des Registers 96 wird um ein
Byte nach links verschoben, so daß die aus dem Bezugszeilenpufer
94 ausgelesenen nächsten Bilddaten der
Bezugszeile zu den Daten REF08-15 geladen werden. Dies
bedeutet, in anderen Worten, daß der Inhalt der Daten
REF04-07 zu den Daten REF4--1 und der Inhalt der Daten
REF08-15 zu den Daten REF00-07 geladen werden, um damit
die Einbyte-Schiebeoperation zu realisieren.
Synchron damit wird "8" vom Inhalt des a0-Zeigers
100 substrahiert. Dies bedeutet, daß der Punkt a0 in bezug
auf die Daten REF um ein Byte nach links verschoben wird.
Das Bit an der linken Seite des Bits -4 ist im b1-Detektor
102 nicht vorhanden. Wenn der Inhalt des Zeigers 100
kleiner ist als -4, wird er auf -4 gesetzt. Dies kann
durch eine einfache Schaltung (nicht dargestellt) geschehen.
Auch wenn der Inhalt der a0-Daten im Abschnitt
REF11--4 (bzw. -4) ist, kann der Punkt b1 erfaßt werden.
Der Wähler 114 empfängt den Inhalt des a0-Zeiger (RBPA)
100 und berechnet "a0-8". Der Wähler 114 liefert selektiv
das Rechenergebnis zum a0-Zeiger 100. Da der Inhalt der
a0-Zeiger 100
gleich 6 ist, ergibt sich -2, und -2 wird in
den a0-Zeiger 100 geladen. Der Inhalt des Bildzeigers
(RBPQ) 56 bleibt unverändert, bis die Erzeugungsverarbeitung
für den betreffenden Lauf abgeschlossen ist.
Fig. 7C veranschaulicht einen Zustand für den Fall, daß
dieser Verarbeitungsschritt abgeschlossen
ist und die Steuerung in den nächsten Verarbeitungsschritt
eintritt. Da die Daten REF in diesen Figuren in derselben
Position dargestellt sind, läßt sich erkennen, daß die
Bildmusterdaten im Vergleich zur Fig. 7B um ein Byte
verschoben sind. Dies ist deshalb der Fall, weil das
Register 62 ein bereits verarbeitetes Bild-Byte in den
Daten RODT07-00 hält. Der Wähler (RRSEL) 64 wird durch
das erwähnte Steuer-Flip-Flop FODRDY so angesteuert, daß
die Daten DODT15-08 gewählt und zur Halteschleife aus den
Wählern 64 und 60 geliefert werden, um damit eine Abweichung
zwischen den Daten REF und RODT zu kompensieren.
Insbesondere werden die Bytedaten RODT08-15 im Register
62 gemäß Fig. 7C für diesen Erzeugungsverarbeitungsschritt
benutzt. Die Daten RODT15-08 werden über den Wähler 64
dem Wähler 60 eingegeben. In diesem Verarbeitungsschritt
werden die Byte-Bilddaten auf dieselbe Weise, wie oben
beschrieben, erzeugt. Dies bedeutet, daß in dem vom
Zustand gemäß Fig. 7C ausgehenden Verarbeitungsschritt
der Punkt b1 nicht erfaßt wird und die Bilderzeugung für
ein weiteres Byte andauert. Am Ende dieses Verarbeitungsschritts
wird der 6-Bit-"1"-Datenschnitt, d. h. die
Daten RODT13-08 des linken Abschnitts von 8 Bits, wie
durch Daten RODT15-08 in Fig. 7C angedeutet, zum Datenabschnitt
RODT05-00 des Registers 62 über die Halteschleife
eingegeben (weil der Inhalt des Bildzeigers (RBPQ) 56 zu
6 belassen wird), wobei Einheiten "1" entsprechend dem
neu erzeugten Schwarzdurchlauf von der Trommelschiebestufe
50 zu den Daten RODT15-06 eingegeben werden. Infolgedessen
werden alle Bits der Daten RODT00-15 zu "1".
Die Daten REF15-00 des Registers 96 werden um ein Byte
nach links verschoben, und -4 wird in den a0-Zeiger 100
eingegeben, und zwar auf dieselbe Weise, wie oben beschrieben.
Das Ergebnis ist in Fig. 7D dargestellt. Im
nächsten Verarbeitungsschritt wird der Punkt b1 am
6. Bit erfaßt. Aus dem b1-Detektor 102 wird 10 (=6+4)
ausgegeben, während -4 in den RL-Zähler 42 in Entsprechung
zur Lauflänge δ=0 von VL(0) eingegeben wird.
Infolgedessen gibt die Addierstufe (A01BP) 112
6 (=10+(-4)) aus. Da dieses Ausgangssignal
7 oder weniger beträgt, wird kein Signal
SNAGR8 erzeugt. Hierdurch wird das Ende der Laufverarbeitung
angezeigt. Das Ausgangssignal von der Addierstufe
112, d. h. 6, wird im a0-Zeiger 100 und im Bildzeiger 56
gesetzt. Obgleich alle Bits der Daten RODT15-00 jeweils
"1" sind, wird deshalb, weil das Ausgangssignal von der
Addierstufe 112 gleich 7 oder weniger ist, das genannte
Steuer-Flip-Flop FODRDY rückgesetzt, wobei dieses Bild-Byte
zu diesem Zeitpunkt nicht ausgegeben, sondern für
die Erzeugungsverarbeitung an den Bilddaten für den
nächsten Lauf (Weißlauf) benutzt wird.
Auf die beschriebene Weise wird die Erzeugungsverarbeitung
für die nach dem vertikalen Modus codierten Codedaten
parallel zur Erfassung oder Feststellung des Punkts
b1 auf der Bezugszeile durchgeführt, so daß damit die
Erzeugungsverarbeitungsgeschwindigkeit beträchtlich
erhöht werden kann. Im Fall eines Durchlaßmoduscodes
wird die Erzeugungsverarbeitung für die
Bilddaten vom Punkt a0 zum Punkt b1 gemäß Fig. 7A auf
dieselbe Weise wie im Fall des V(0)-Codes durchgeführt.
Sodann wird eine Bezugsfarbe zur Erfassung einer
Weiß/Schwarz-Invertierung des b1-Detektors 102 invertiert,
und es wird dieselbe Operation wie für den V(0)-Code
ausgeführt, während die Farbe des zu erzeugenden Bildmusters
unverändert bleibt; auf diese Weise werden Bilddaten
vom Punkt b1 gemäß Fig. 7A zum Punkt b1 gemäß
Fig. 7D erzeugt.
Im folgenden ist die Verdichtungsverarbeitung beschrieben.
Zunächst ist die Verdichtungsverarbeitung für einen MH-Code
erläutert. Bildmusterdaten werden von einer Eingabedatenschiene
dem Verriegelungsglied 22 eingegeben und darin
verriegelt. Die eingegebenen Bilddaten werden dem Register
26 über den Inverter 24 eingespeist. Zu diesem Zeitpunkt
werden Registerdaten RDTI07-00 zum Bezugszeilen-Speicherteil
4 als Bezugszeilendaten für die nächste Verarbeitungszeile
ausgegeben und in diesem Speicherteil entsprechend
den Daten vom Adreßregister 88 gespeichert. Ebenso werden
im Datenteil oder -abschnitt RDTI07-00 gehaltene Bilddaten
zum a1-Detektor 104 ausgegeben, und es werden Daten
320 (2560 ÷ 8) im RL-Zähler 42 vorgegeben. Der durch den
a1-Detektor 104 erfaßte a1-Punkt wird als Dateneinheit D
über den Wähler 114 zum Wähler 38 ausgegeben.
Danach werden durch die Trichterschiebestufe 30 9 Bits nach
Maßgabe der Anzeigedaten des Decodierzeigers 36 auf dieselbe
Weise wie bei der Dehnungsverarbeitung gewählt und
zum Wähler 31 ausgegeben. Der Ausgang von der Trichterschiebestufe
30 wird durch den Wähler 31 gewählt und zum
Decodierer-ROM 32 ausgegeben. Wenn ein Lauf oder Durchlauf
mit derselben Farbe für mehr als eine Byte-Länge andauert,
wird "1000", d. h. eine eine Länge eines Bytes anzeigende
Dateneinheit, vom Decodierer-ROM 32 als Daten DROM11-08
zur Addierstufe 34 ausgegeben, worauf als Ergebnis eine
Dateneinheit J zur Steuereinheit 1 ausgegeben wird.
Die Größe des Decodierzeigers 36 wird nicht aktualisiert.
Die Steuereinheit 1 gibt eine Dateneinheit Q zum Adreßzähler
82 auf dieselben Weise wie bei der Dehnungsverarbeitung
aus, um Adreßdaten zu aktualisieren. Außerdem wird
der Inhalt des RL-Zählers 42 herabgezählt. Gleichzeitig
wird auf dieselbe Weise wie bei der Dehnungsverarbeitung
der Inhalt des Registers 96 und ein Byte nach links verschoben.
Neue Bezugszeilendaten werden aus dem Speicherteil
4 ausgelesen, zum Register 96 ausgegeben und als Daten
REF15-08 verriegelt. Die Größe des Zeigers 100 wird nicht
verändert.
Im eindimensionalen Modus, in welchem dieselbe Farbe vom
Anfang eines Laufs fortlaufend vorliegt, wird von der
Steuereinheit 1 nach Maßgabe von Daten DROM15-12 vom Decodierer-ROM
32 ein Zählimpuls dem RL-Zähler 42 eingegeben,
sobald eine Verarbeitung für eine Einheit abgeschlossen
ist, um damit den RL-Zähler 42
herabzuzählen. Wenn durch den a1-Detektor
104 ein Farbänderungspunkt a1 festgestellt wird, d. h. wenn
der Inhalt der Daten LSHT08-00 nicht "00000000" oder
"11111111" beträgt, wird das Zählergebnis bzw. der Zählstand
des RL-Zählers 42 über den Wähler 42 dem Codierer-ROM
46 zugeführt. Die Dateneinheit N wird ebenfalls dem Decodierer-ROM
46 zugeliefert, um damit einen Ergänzungscode
zu erzeugen.
Der erzeugte Ergänzungscode wird über den Wähler 48 zur
Trommelschiebestufe 50 geliefert und in letzterer nach
Maßgabe der Anzeigedaten vom Bildzeiger 56 gedreht. Der
gedrehte Code wird dem Datenabschnitt RODT15-08 des
Registers 62 und auch dem Wähler 60 zugeführt. Im Wähler
wird der gedrehte Code auf dieselbe Weise wie bei der
Dehnungsverarbeitung mit einem Ausgangssignal oder einer
Ausgabe des Wählers 64 kombiniert, und zwar in Abhängigkeit
von den Anzeigedaten des Bildzeigers 56. Gleichzeitig
wird die Länge des erzeugten Ergänzungscodes vom Codierer-ROM
46 zur Addierstufe 52 als Daten EROM07-05 ausgegeben,
um diese zu den Anzeigedaten zu addieren. Die Summe stellt
wiederum die Anzeigedaten des Zeigers 56 dar. Wenn die
Dateneinheit O zur Steuereinheit 1 ausgegeben wird, werden
Daten RODT07-00 auf eine Ausgabedatenschiene ausgegeben.
Wenn die Länge des zu erzeugenden Ergänzungscodes 6 bis 10
Bits beträgt, wird ein restlicher Teil des Ergänzungscodes
vom Codierer-ROM 46 geliefert und auf dieselbe Weise, wie dies
vorstehend beschrieben ist, verarbeitet. Dabei werden Daten
RODT15-08 im Wähler 64 gewählt. Nach Beendigung der Erzeugungsverarbeitung
des Ergänzungscodes wird der 11-03-Bitabschnitt
im RL-Zähler 42 freigemacht, und der 02-00-Bitabschnitt
wird zum 05-03-Bitabschnitt verschoben,
während die restlichen Daten, die kleiner sind als ein
Byte, dem 02-00-Bitabschnitt des RL-Zählers 42 eingegeben
werden. Das Ergebnis wird ebenfalls zum Codierer-ROM 46
ausgegeben und auf dieselbe Weise wie im Fall des Ergänzungscode
verarbeitet, um einen verdichteten Beendigungscode
auszugeben. Die Verarbeitung für
die Länge eines Codes ist dieselbe wie für den Ergänzungscode.
Auf diese Weise werden der Ergänzungs- und der Beendigungscode
wie im Fall der Verdichtungsverarbeitung im
Horizontalmodus erzeugt.
Die nach der MR- und M²R-Methode codierten Horizontalmoduscodes
werden auf dieselbe Weise wie bei der Verdichtungsverarbeitung
des MH-Codes verarbeitet, nur mit dem Unterschied,
daß der Identifiziercode des Horizontalmodus vor
dem ersten Ergänzungscode nach Maßgabe der Dateneinheit N
von der Steuereinheit 1 hinzuaddiert wird.
Die Verdichtungsverarbeitung von zweidimensionalen Codes
im Vertikal- und Durchlaßmodus ist nachstehend beschrieben.
Wenn in den Daten RDTI07-00 als Dateneinheit F a1 nicht
festgestellt wird und auch b1 in den Daten REF-3-10 vom
Register 96 nicht festgestellt wird, wird eine Sprungverarbeitung
ausgeführt. Dabei werden beispielsweise ein Byte
eines neuen Bilddatenmusters über die Eingabedatenschiene
eingegeben und die Bezugszeilendaten im Register 96 aktualisiert.
Wenn sowohl a1 als auch b1 erfaßt
werden, wird die Verdichtungsverarbeitung von zweidimensionalen
Codes eingeleitet.
Die erfaßten Größen a1 und b1 werden der
Subtrahierstufe 120 zugeführt, deren Ausgangssignal als
Dateneinheit A über den Wähler 44 zum Codierer-ROM 46
ausgegeben wird. Im Codierer-ROM 46 wird der Durchlaßmoduscode
oder der Vertikalmoduscode erzeugt, der dann
in der Trommelschiebestufe 50, im Wähler 60, im Bildzeiger
56 usw. auf dieselbe Weise wie der Horizontalmoduscode
verarbeitet wird. Zu diesem Zeitpunkt wird im Wähler 114
b1 gewählt und dem a0-Zeiger 100 sowie dem Decodierzeiger
36 über den Wähler 38 als Dateneinheit D zugeliefert. Die folgende
Verarbeitung entspricht derjenigen bei der Dehnungsverarbeitung.
Im Nichtverdichtungsmodus werden Daten vom Register 58
unmittelbar zum Wähler 48 geliefert und sodann durch diesen
ausgegeben. Die folgende Verarbeitung ist dieselbe wie bei
der Dehnungsverarbeitung. Die Codelänge wird dem Wähler 110
als Dateneinheit B zugeführt, und die Daten des Bildzeigers
56 werden durch die Dateneinheit B über die Addierstufe 112
und den Wähler 54 aktualisiert.
Claims (4)
1. Farbänderungsbit-Detektor für eine Binärdatenverdichtungsvorrichtung,
der Farbänderungsbits parallel mit
hoher Geschwindigkeit zu erfassen vermag und aus
Gatterschaltungen aufgebaut ist, dadurch gekennzeichnet,
daß
- - n Inverter (210) untere n Bits von (n+1) Bits eingangsseitiger Bilddaten invertieren, und
- - n NAND-Gatter (211) jeweils NAND-Verknüpfungen an den invertierten Bits und den oberen n Bits der eingangsseitigen Bilddaten zur Gewinnung der Farbänderungsbits vornehmen.
2. Detektor nach Anspruch 1, dadurch gekennzeichnet, daß
die n NAND-Gatter die NAND-Verknüpfungen der invertierten
Bits, der oberen n Bits der eingangsseitigen
Bilddaten und von Eingangsmaskendaten vornehmen.
3. Detektor nach Anspruch 1 oder 2, gekennzeichnet durch
eine Farbmodulationseinrichtung (208) zum Modulieren
von Bits der eingangsseitigen Bilddaten gemäß eingespeisten
Farbsteuerdaten.
4. Detektor nach Anspruch 3, dadurch gekennzeichnet, daß
die Farbmodulationseinrichtung (208) n exklusive
ODER-Gatter hat, die jeweils eine exklusive ODER-Operation
eines entsprechenden Bits und der Farbsteuerdaten
durchführen.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP17771286 | 1986-07-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE3744791C2 true DE3744791C2 (de) | 1992-01-09 |
Family
ID=16035789
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3744791A Expired - Lifetime DE3744791C2 (de) | 1986-07-30 | 1987-02-27 | |
DE19873706470 Granted DE3706470A1 (de) | 1986-07-30 | 1987-02-27 | Binaerdatenverdichtungs- und -dehnungs-verarbeitungsgeraet |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19873706470 Granted DE3706470A1 (de) | 1986-07-30 | 1987-02-27 | Binaerdatenverdichtungs- und -dehnungs-verarbeitungsgeraet |
Country Status (3)
Country | Link |
---|---|
US (1) | US4760459A (de) |
KR (1) | KR910001072B1 (de) |
DE (2) | DE3744791C2 (de) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3650764T2 (de) * | 1985-12-13 | 2002-07-11 | Canon Kk | Bildverarbeitungsgerät |
US4800441A (en) * | 1986-02-28 | 1989-01-24 | Kabushiki Kaisha Toshiba | Binary data compression and expansion processing apparatus |
JPS63138881A (ja) * | 1986-11-29 | 1988-06-10 | Hitachi Ltd | Mr符号伸長装置 |
US4839738A (en) * | 1987-04-22 | 1989-06-13 | Advanced Micro Devices, Inc. | Apparatus for decoding facsimile coded data to image data with coding and reference line windowing and color change detection |
JPS6423372A (en) * | 1987-07-20 | 1989-01-26 | Dainippon Screen Mfg | Picture signal processor |
JP2766302B2 (ja) * | 1989-04-06 | 1998-06-18 | 株式会社東芝 | 可変長符号並列解読方法および装置 |
CZ289508B6 (cs) * | 1995-02-03 | 2002-02-13 | Koninklijke Philips Electronics N. V. | Způsob a zařízení pro vytváření kódovaného obrazového signálu a zařízení pro zobrazování obrazového signálu |
JP3100304B2 (ja) * | 1995-03-08 | 2000-10-16 | キヤノン株式会社 | ドットパターン発生装置およびドットパターン発生方法 |
US6097429A (en) * | 1997-08-01 | 2000-08-01 | Esco Electronics Corporation | Site control unit for video security system |
GB9806767D0 (en) | 1998-03-31 | 1998-05-27 | Philips Electronics Nv | Pixel colour valve encoding and decoding |
JP2004334295A (ja) * | 2003-04-30 | 2004-11-25 | Yamaha Corp | 記憶装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4558371A (en) * | 1983-08-19 | 1985-12-10 | Advanced Micro Devices, Inc. | Method and device for two-dimensional facsimile coding |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4052699A (en) * | 1976-06-30 | 1977-10-04 | International Business Machines Corporation | High speed real time image transformation |
FR2430139A1 (fr) * | 1978-06-28 | 1980-01-25 | Labo Electronique Physique | Dispositif de compression de signaux binaires et systeme de transmission codee de fac-similes equipe de ce dispositif |
US4562484A (en) * | 1983-08-19 | 1985-12-31 | Advanced Micro Devices, Inc. | Method and device for decoding two-dimensional facsimile signals |
US4542413A (en) * | 1983-08-19 | 1985-09-17 | Advanced Micro Devices, Inc. | Facsimile device for run length coding |
JPS60114088A (ja) * | 1983-11-22 | 1985-06-20 | インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション | G2モードの伝送方法 |
EP0149124B1 (de) * | 1984-01-16 | 1990-10-31 | International Business Machines Corporation | Verfahren zum Kodieren und Dekodieren eines digitalen Bildes |
JPS61102872A (ja) * | 1984-10-24 | 1986-05-21 | インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション | 2レベル・イメ−ジ・デ−タの処理方法 |
DE3545467A1 (de) * | 1984-12-20 | 1986-07-10 | Ricoh Co., Ltd., Tokio/Tokyo | Digitalkopierer |
US4719514A (en) * | 1985-03-01 | 1988-01-12 | Canon Kabushiki Kaisha | Method and apparatus for image transmission |
-
1987
- 1987-02-24 US US07/018,281 patent/US4760459A/en not_active Expired - Fee Related
- 1987-02-27 DE DE3744791A patent/DE3744791C2/de not_active Expired - Lifetime
- 1987-02-27 DE DE19873706470 patent/DE3706470A1/de active Granted
- 1987-07-30 KR KR1019870008305A patent/KR910001072B1/ko not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4558371A (en) * | 1983-08-19 | 1985-12-10 | Advanced Micro Devices, Inc. | Method and device for two-dimensional facsimile coding |
Also Published As
Publication number | Publication date |
---|---|
KR880002075A (ko) | 1988-04-29 |
US4760459A (en) | 1988-07-26 |
DE3706470A1 (de) | 1988-02-11 |
DE3706470C2 (de) | 1990-06-21 |
KR910001072B1 (ko) | 1991-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3711200C2 (de) | ||
DE3711201C2 (de) | ||
DE3744791C2 (de) | ||
DE3036769C1 (de) | Vorrichtung und Verfahren zum Codieren eines Videosignals | |
DE3636675A1 (de) | Kodierverfahren und -einrichtung | |
DE2508706A1 (de) | Codieren und decodieren mit einem code variierbarer wortlaenge und gegebenem bitzahlverhaeltnis | |
DE3038195C2 (de) | Vorrichtung zur Verarbeitung von visueller Information | |
DE2728889C3 (de) | Verfahren und Vorrichtung zum Übertragen eines Zweipegel-Faksimilesignals | |
DE2558264C3 (de) | Verfahren zur Verdichtung binärer Bilddaten | |
DE3246432C2 (de) | ||
DE60009502T2 (de) | Lzw datenkomprimierung/dekomprimierungsgerät und - verfahren mit eingebetteter lauflängenkodierung/dekodierung | |
DE3416795A1 (de) | Bilddaten-kompressionssystem | |
DE2227975A1 (de) | Vorrichtung und verfahren zum verschluesseln von binaersignalen | |
DE3811396C2 (de) | ||
DE3406624C2 (de) | ||
DE60002218T2 (de) | Lzw datenkomprimierungsgerät und -verfahren, mit anwendung von mathematischer vorhersage von lauflängenverarbeitung | |
DE2414239C3 (de) | Verfahren und Vorrichtung zum Komprimieren einer binären Informationsfolge | |
DE2826454C3 (de) | Faksimilesignal-Codiersystem | |
DE3305709A1 (de) | Verfahren zur steuerung der lichtemissionsintensitaet in einer kurvenschreibervorrichtung und vorrichtung zur durchfuehrung des verfahrens | |
DE3502317A1 (de) | Verfahren zur bildfehlerkorrektur | |
DE3417262C2 (de) | ||
DE60008871T2 (de) | Datenkomprimierungsverfahren und vorrichtung mit eingebetteter lauflängenkodierung unter benutzung von mathematischer laufverarbeitung | |
DE19615490A1 (de) | Verfahren zur fraktalen Bildkodierung sowie Anordnung zur Durchführung des Verfahrens | |
EP0427884B1 (de) | Verfahren und Anordnung zum Komprimieren und Dekomprimieren von Daten | |
DE1599080C3 (de) | Zahlendarstellungseinnchtung zur Anzeige einer mehrstelligen Zahl |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
Q172 | Divided out of (supplement): |
Ref country code: DE Ref document number: 3706470 |
|
8110 | Request for examination paragraph 44 | ||
AC | Divided out of |
Ref country code: DE Ref document number: 3706470 Format of ref document f/p: P |
|
AC | Divided out of |
Ref country code: DE Ref document number: 3706470 Format of ref document f/p: P |
|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |