Die Erfindung betrifft ein Binärdatenverdichtungs- und
-dehnungs-Verarbeitungsgerät, das eine Hochgeschwindig
keits-Dehnungsverarbeitung von bzw. an Binärdaten und
insbesondere eine sog. parallele Pipeline-Verarbeitung
der Binärdaten nach einer zweidimensionalen Codiermethode
durchzuführen vermag.
Für das Verdichten und Dehnen von Binärdaten sind von
der CCITT empfohlene Codierverfahren, wie die MH-, die
MR- und die M2-R-Methode, international standardisiert
und verbreitet im Gebrauch. Von den drei genannten Codier
methoden bietet die M2R-Methode die höchste Bildverdich
tungsleistung.
Die M2R-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 ein Datenverdichtungs
verhältnis gegenüber der MR-Methode verbessert werden.
Falls etwaige Übertragungs- bzw. Übermittlungsfehler
auftreten, wird der Fehler sequentiell zu anschließenden
Abtastzeilen übertragen, was ein grundsätzliches Problem
darstellt. Zur Vermeidung dieses Problems werden in die
Verdichtungsverarbeitung eindimensionale Codierabtast
zeilen eingesetzt. Der Parameter k stellt die Zahl der
zweidimensionalen Codierabtastzeilen zwischen diesen
eindimensionalen Codierabtastzeilen dar.
Ein bisheriges Binärdatenverdichtungs- und -dehnungs-
Verarbeitungsgerät wurde in Software realisiert unter
Verwendung eines Mehrzweck-Mikrorechners für die Durch
führung der Dehnungsverarbeitung codierter Daten nach
diesen Methoden. Bei dieser Verarbeitung ergibt sich kein
Problem, wenn ein solches Gerät auf ein Faksimilesystem
angewandt wird, dessen Datenübermittlungsrate oder
-geschwindigkeit auf 9600 bps (Bits/s) begrenzt ist. Wenn
jedoch das bisherige Gerät für die Wiedergabe von Bilddaten
an Arbeitsstationen eines Rechnersystems eingesetzt wird,
kann eine gute Mensch/Maschine-Schnittstelle, z. B. eine
Seitenansprechzeit von ½ s oder weniger, nicht erzielt
werden. Wenn daher die sequentielle Dehnungsverarbeitung
nach der M2R-Methode ausgeführt wird, ist die Arbeits
geschwindigkeit im Vergleich zur MH-Methode erheblich
herabgesetzt.
Eine Ursache für das obige Problem liegt im Verarbeitungs
verfahren des gesamten Systems. Insbesondere erfolgt in
einem herkömmlichen System die Decodierung bitseriell.
Zur Lösung des genannten Problems werden verbreitet eine
Parallelverarbeitung, eine Vorausverarbeitung (advanced
processing) und eine Pipeline-Verarbeitung ausgeführt.
Die Binärdatendehnungsverarbeitung läßt sich ersichtlicher
weise in folgendes aufteilen:
- a) Decodierverarbeitung von Code(s)
b) Erzeugungsverarbeitung von Bilddaten für den decodier
ten Code.
Die Decodier- und Erzeugungsverarbeitung kann mithin
mittels getrennter Hardware-Anordnungen parallel durch
geführt werden. Bei solchen Anordnungen wird, während
ein Code gedehnt wird, der nächste Code decodiert, und
die gesamte Verarbeitung kann dann als Pipeline-Verarbei
tung ausgeführt (pipelined) werden. Wenn nach den MH-
und MR-Methoden codierte Binärdaten gedehnt werden,
ergibt sich bei der Vorausverarbeitung kein Problem.
Die M2R-Methode ist dagegen mit den folgenden Problemen
behaftet:
Bei allen MH-, MR- und M2R-Methoden ist das (der) Anfangs
stück oder -lauf (starting run) einer jeden Zeile jeweils
ein weißer Lauf (run), der zu weißen Pixels decodiert
werden muß. Im Fall der MH- und MR-Methoden wird ein EOL-
Code benutzt. Demzufolge kann ein Decodierverarbeitungs
teil, der die Vorausverarbeitung ausführt, den Anfang
der nächsten Zeile aufgrund des Vorhandenseins eines EOL-
Codes unabhängig vom Verlauf der Erzeugungsverarbeitung
durch einen Erzeugungsverarbeitungsteil erfassen.
Da jedoch bei der M2R-Methode kein EOL-Code vorhanden
ist, kann der Anfang der nächsten Zeile nur dann erfaßt
oder festgestellt werden, wenn der Erzeugungsverarbei
tungsteil jeden Code entwickelt und ein Ende der Zeile
erreicht. Wenn mithin der Anfang der nächsten Zeile unbe
stimmt ist, kann nicht bestimmt werden, ob die Farbe dieses
Abschnitts zwangsweise zu Weiß bestimmt wird.
Infolgedessen kann eine Horizontalmodus-Decodieroperation
unter Verwendung getrennter Codetabellen für einen weißen
Lauf (run) und einen schwarzen Lauf nicht in Vorauslauf
weise eingeleitet werden. Genauer gesagt: bei der Deh
nungsverarbeitung nach der M2R-Methode bei einem her
kömmlichen Gerät kann die Vorausverarbeitung nicht effek
tiv durchgeführt werden.
Wenn weiterhin eine Abweichung δ des Punkts a 1 bei der
Vorausdecodierverarbeitung erfaßt oder festgestellt wird,
wird die Erzeugungsverarbeitung von nach der MR- oder
M2R-Methode codierten zweidimensionalen Codedaten her
kömmlicherweise wie folgt realisiert:
- a) Bilddaten auf einer Bezugszeile (reference line)
werden zur Erfassung der Position des Punkts b 1
abgetastet;
- b) b 1 + δ = a 1; und
- c) eine Lauflänge (run length) wird durch (a 1 - a 0 =
Lauflänge) berechnet, und (eine) Bilddaten(einheit)
werden (wird) in Übereinstimmung mit der berechneten
Lauflänge erzeugt. Die Erzeugungsverarbeitung mittels
der Operationen (a) bis (c) muß daher sequentiell in
dieser Reihenfolge durchgeführt werden, was eine
niedrige Dehnungsverarbeitungsgeschwindigkeit be
dingt. Zur Vermeidung dieses Problems ist es not
wendig, die Operationen (a) bis (c) praktisch gleich
zeitig auszuführen.
Aufgabe der Erfindung ist damit die Schaffung eines
Binärdatenverdichtungs- und -dehnungs-Verarbeitungsge
räts, das eine Erfassungs- oder Detektorverarbeitung
(detection processing) des Punkts b 1 und eine Erzeugungs
verarbeitung von Bilddaten einer erfaßten Lauflänge (run
length) nicht sequentiell, sondern mit paralleler
Verarbeitung durchführt, um damit die Verarbeitungsge
schwindigkeit zu erhöhen.
Diese Aufgabe wird durch die im Patentanspruch 1 gekenn
zeichneten Merkmale gelöst.
Gegenstand der Erfindung ist auch ein Binärdatenverdich
tungs- und -dehnungs-Verarbeitungsgerät, das eine Bild
datenerzeugungsverarbeitung wirksam durchzuführen vermag
und das gekennzeichnet ist durch eine Zählereinheit zum
Halten einer Eingabedateneinheit entsprechend einer
Lauflängendateneinheit des Codes, zum Herabzählen der
gehaltenen Dateneinheit mittels Daten entsprechend einer
ersten vorbestimmten Länge für jeden Erzeugungsschritt,
zum Halten der herabgezählten Dateneinheit und zum Aus
geben der gehaltenen Dateneinheit, eine Erzeugungseinheit
zum Eingeben der gehaltenen Dateneinheit in die Zähler
einheit zusammen mit Steuerdaten und zum Erzeugen von
Einfarbbilddaten der ersten vorbestimmten Länge und einer
durch die Steuerdaten bezeichneten Farbe sowie zum Aus
geben der erzeugten Einfarbbilddaten als Kombinierbild
daten, eine Halteschleifeneinheit zum Erzeugen von Bild
daten durch Kombinieren der Kombinierbilddaten nach einer
restlichen, darin gehaltenen Bilddateneinheit in Überein
stimmung mit eingegebenen Erzeugungsbitpositionsdaten in
einem Erzeugungsschritt, zum Ausgeben der erzeugten
Bilddaten in einem Bereich für die zweite vorbestimmte
Länge, ausgehend von einem führenden Bit derselben als
interessierender Block, wenn festgestellt wird, daß die
Länge der erzeugten Bilddaten der ersten vorbestimmten
Länge oder einer größeren Länge entspricht, und zum
Halten der restlichen oder verbleibenden Bilddaten für
den nächsten Erzeugungsschritt, wobei die Erzeugungs-Bit
positionsdaten eine Bitposition im interessierenden Block
angeben, an welcher die nächsten Kombinierbilddaten zu
kombinieren sind, und eine Bitpositions-Detektoreinrich
tung, zum Bestimmen einer Bitposition, an welcher die
nächsten Kombinierbilddaten zu kombinieren sind, und zwar
in Übereinstimmung mit den gehaltenen Erzeugungs-Bitposi
tionsdaten und gehaltenen Daten von der Zählereinheit,
zum Halten der aktualisierten Erzeugungs-Bitpositions
daten entsprechend der vorbestimmten Bitposition, zum
Ausgeben der darin gehaltenen Erzeugungs-Bitpositions
daten und zum auf der Grundlage der bestimmten Bitposi
tion erfolgenden Feststellen oder Erfassen, daß die
erzeugte Bilddateneinheit die erste vorbestimmte Länge
besitzt.
Erfindungsgemäß wird die Position des Punkts b 1 in Bild
daten auf einer Bezugszeile erfaßt oder festgestellt, und
die zu erzeugenden Bilddaten werden parallel damit ver
arbeitet, wodurch die Dehnungsverarbeitungsgeschwindig
keit verbessert, d. h. 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 eines Binärdatenverdichtungs-
und -dehnungs-Verarbeitungsgeräts gemäß der Er
findung,
Fig. 2 ein Blockschaltbild der Anordnung eines Decodier
teils und eines Codierendeverarbeitungsteils
eines Decodierverarbeitungsteils gemäß Fig. 1,
Fig. 3 ein Blockschaltbild der Anordnung eines Zähler
teils und eines Erzeugungsteils (generation
section) eines Erzeugungsverarbeitungsteils gemäß
Fig. 1,
Fig. 4 ein Blockschaltbild der Anordnung eines Bezugs
zeilenadreßgenerators und eines EOL-Detektors
beim Decodierverarbeitungsteil nach Fig. 1,
Fig. 5 ein Blockschaltbild eines a 1b 1-Detektors des
Erzeugungsverarbeitungsteils nach Fig. 1,
Fig. 6 ein detailliertes Schaltbild eines b 1-Detektors
gemäß Fig. 5 und
Fig. 7A bis 7D graphische Darstellungen der Zustände
von Bilddaten einer Bezugszeile und einer
Erzeugungsverarbeitungszeile bei der Dehnungs
verarbeitung.
Im folgenden ist zunächst die Anordnung oder der Aufbau
eines Binärdatenverdichtungs- und -dehnungs-Verarbei
tungsgeräts gemäß der Erfindung anhand von Fig. 1 be
schrieben.
Das Gerät gemäß Fig. 1 umfaßt eine Binärdatenverarbeitungs-
Steuereinheit 1 zur Steuerung des Betriebs des gesamten
Geräts, 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 Bezugs
zeilendaten, einen Bezugszeilen-Adreßgenerator 3 zum Er
zeugen 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 erzeu
genden Bilddaten und ein nicht dargestelltes Flip-Flop
FORDRY, um ein 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 Decodier(verarbeitungs)teil 7 zum Erzeugen von Lauf
längendaten (run length data), wenn die eingegebenen Binär
daten ein Code sind, und einen Erzeugungs(verarbeitungs)
teil 8 zum Erzeugen von Binärbildmusterdaten, die nach
Maßgabe der Lauflängedaten verarbeitet sind oder 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 oder De
tektieren eines EOL-Codes unter einer vorgegebenen Be
dingung, einen zur Erzeugung eines EOL-Codes während der
Verdichtungsverarbeitung dienenden Codierende-Verarbeitungs
teil 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 Er
zeugungsteil 15 zum Erzeugen nach Maßgabe von
Daten vom Zählerteil 14 verarbeiteten Binärdaten sowie
einen a 1b 1-Detektor 16 zum Erfassen von Punkten a 1 und b 1.
Die Steuereinheit 1 ist mit einem Taktgenerator 5 zum Er
zeugen von Steuer-Taktsignalen verbunden, und sie steuert
die Operationszeitpunkte oder -takte (timings) des Decodier
verarbeitungsteils 7, des Erzeugungsverarbeitungsteils 8 und
des Bezugszeilenadreßgenerators 3 nach Maßgabe von
Takten bzw. Taktsignalen vom Generator 5, und sie gibt
ferner die nötigen Anweisungen oder 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 hinzu
weisen, daß aus Vereinfachungsgründen ein Steuersignal in
den Figuren nicht dargestellt ist.
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 Bezugszeilen
adreß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 Eingabedaten
schiene (oder -bus) einem Verriegelungsglied 22 eingegeben
und durch dieses verriegelt. Die durch das Verriegelungs
glied 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 ver
schiebt vorher eingegebene Byte-Daten RDTI 15-08 zu Daten
RDTI 07-00 nach Maßgabe eines Steuersignals von der Steuer
einheit 1, es verriegelt die neuen Eingabedaten als Daten
RDTI 15-08 und hält diese als 16-Bit-Daten zusammen mit den
Daten RDTI 07-00.
Die 16-Bit-Registerdaten RDTI 15-00 werden über den Codier
ende-Verarbeitungsteil 12 zu einer Trichterschiebestufe
(funnel shifter) 30 ausgegeben. Die Daten RDTI 07-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 RDTI 15-00
ausgezogen werden soll. Eine Anzeigegröße vom Decodier
zeiger 36 wird der Trichterschiebestufe 30 nach Maßgabe
eines Steuersignals von der Steuereinheit 1 zugeführt.
Die Trichterschiebestufe 30 erzeugt ein 9-Bit-Ausgangssignal
LSHT 08-00, das durch Linksverschiebung der Daten RDTI 15-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 LSHT 4-00 der Ausgabedaten LSHT 08-00 als Daten G
zum Erzeugungsverarbeitungsteil 8 ausgegeben. Die Daten
LSHT 08-00 werden zu den Daten LSHT 10-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 LSHT 08-06 oder LSHT 08-07 entspre
chenden Daten Y von der Steuereinheit 1. Diese Eingangs-
oder Eingabedaten werden in Abhängigkeit von einem Steuer
signal von der Steuereinheit 1 gewählt und als 11-Bit-Adreß
daten zu einem Decodierer-Festwertspeicher oder -ROM 32 aus
gegeben. Die Daten X werden ebenfalls dem Decodierer-ROM 32
zugeführt.
Der Decodierer-ROM 32 gibt 16-Bit-Daten DROM 15-00 aus. Ins
besondere werden dabei als Daten DROM 07-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änderungs- oder -wechselpunkt bezeichnen, durch δ
im zweidimensionalen Code ausgedrückt werden, bestimmen
sich die vom Decodierer-ROM 32 ausgegebenen Lauflängen
daten zu (δ - 4). Die Daten I werden dem Verarbeitungs
teil 8 zugeführt. Als Daten DROM 11-08 werden Daten zur
Anzeige der signifikanten Datenlänge, d. h. der Länge von
verarbeiteten Daten der (aus den) eingegebenen Binär
daten, ausgegeben. Als Daten DROM 15-12 werden Steuerdaten
H zum Bezeichnen des nächsten Zustands (state), d. h.
Daten, welche codierten, als nächste in einer Dehnungs
verarbeitung zu decodierenden Daten zugeordnet sind, ausgegeben.
Die Daten DROM 11-08 werden zu einer Addierstufe 34 ausge
geben, die gleichzeitig Daten vom Decodierzeiger 36 abnimmt.
Dabei werden die Daten DROM 11-08 zu den Daten vom Decodier
zeiger 36 addiert, und die summierten Daten werden zum
Wähler 38 ausgegeben. Der Wähler 38 nimmt außerdem vom a 1b 1-
Detektor 16 Daten D ab, die bei der Verdichtungsverarbeitung,
nicht aber bei der Dehnungsverarbeitung benutzt werden. Wenn
daher die Dehnungsverarbeitung nach Maßgabe eines Steuer
signals 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 23-Bitdaten als Ergebnis der Addition durch die Addier
stufe 34 zu Daten "1" werden, wird dies der Steuereinheit 1
mittels der Daten J gemeldet. Dies bedeutet, daß die Ver
arbeitung 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 RDTI 15-08 in Einheiten von
Bytes zu Daten RDTI 07-00 nach Maßgabe des Steuersignals von
der Steuereinheit 1. Durch das Verriegelungsglied 22 ver
riegelte neue Byte-Daten werden im Daten-RDTI 15-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 decodieren
den Codes stets in den Daten RDTI 07-00 des Registers 26
vorhanden ist.
Der Zählerteil 14 und der Erzeugungsteil 15 des Erzeugungs
verarbeitungsteils 13 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 Steuerein
heit 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-Bitabschnitt 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 vorbestimm
ten Position oder Stelle nach Maßgabe eines Steuersignals
von der Steuereinheit 1. Unter Heranziehung der Ausgabe
daten vom Wähler 40 als Vorgabegröße zählt der RL-Zähler 42
in Übereinstimmung mit den Zählimpulsen von der Steuerein
heit 1 herab, und er gibt die Zählung oder den Zählstand
als Daten B zum Wähler 44 und zum a 1b 1-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 Verarbeitungs
operationen 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 a 1b 1-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 oder Angabe einer Dehnungs- oder Verdichtungs
verarbeitung, von der Steuereinheit 1 ab. Der Codierer-ROM
46 empfängt Daten vom Wähler 44 und Daten N von der Steuer
einheit 1 als Adreßdaten und gibt 8-Bit-Daten EROM 07-00 zum
Wähler 48 aus.
Von den Daten EROM 07-00 werden die Daten DROM 07-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 Schaltun
gen des Decodierverarbeitungsteils 8. Insbesondere erzeugt
dabei der Bildzeiger 56 eine Angabe- oder 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 EROM 07-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 Steuer
einheit 1, um als Anzeigegröße des Bildzeigers RBPQ 56 zu
dienen. Wenn als Ergebnis der Addition durch die Addier
stufe 52 2³-Bits gleich "1" sind, wird dies der Steuer
einheit 1 mittels der Daten O gemeldet.
Der Wähler 48 empfängt Daten EROM 07-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 (barrel shifter) 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 RODT 15-08 zum Register 62
aus.
Eine der Dateneinheiten RODT 07-00 und RODT 15-08 wird
durch den Wähler RRSEL 64 nach Maßgabe eines Steuersignals
von der Steuereinheit 1 gewählt; die gewählte Datenein
heit wird dem Wähler 60 eingegeben. Letzterer erzeugt ein
Ausgangssignal in Übereinstimmung mit der Anzeigegröße
vom Bildzeiger RBPQ 68 als Daten(einheit) RODT 07-00. Das
Register 62 verschiebt die Daten RODT 15-08 zu Daten
RODT 07-00 nach Maßgabe eines Steuersignals von der Steuer
einheit 1. Die Daten RODT 07-00 und die Daten RODT 15-08
werden zum Wähler RRSEL 64 ausgegeben. Die Daten RODT 07-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(r) Aus
gabedatenschiene oder -bus 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 um
faß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ärdaten
verarbeitung 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ärdatenverar
beitung auf der entsprechenden Verarbeitungszeile fortge
schritten ist.
Nach Beendigung der Einzeilenverarbeitung wird der Adreß
zähler 82 entsprechend einem Steuersignal von der Steuer
einheit 1 rückgesetzt, und er beginnt wieder zu zählen,
wenn die Verarbeitung einer neuen Zeile eingeleitet wird.
Eine Zählgröße oder ein Zählstand des Adreßzählers 82 wird
zum Komparator 90, zum Wähler 86 und zur Addierstufe 84 aus
gegeben. Der Komparator 90 nimmt auch Lauflängendaten
(run length data) für eine Zeile vom Stoßadreßregister 80
in Einheiten von Bytes ab und vergleicht sie mit dem Zähl
stand des Adreßregisters 82. Wenn dazwischen eine Koinzidenz
festgestellt wird, bedeutet dies, daß die Bilderzeugung
eine Byte-Position vor dem Ende der entsprechenden Verar
beitungszeile erreicht hat. Zu diesem Zeitpunkt werden
Daten T zur Steuereinheit 1 ausgegeben.
Die Addierstufe 84 nimmt Daten R von der Steuereinheit 1 ab
und addiert sie zum Zählstand (bzw. zur Zählgröße) 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 Steuer
einheit 1 und gibt diese Daten zusammen mit dem Ausgangs
signal vom Wähler 86 zum Bezugszeilen-Puffer-RAM 94 aus.
Der Puffer-RAM 94 speichert Bilddaten auf einer bzw. für
eine Bezugszeile und Bilddaten für die entsprechende Ver
arbeitungszeile zum Verarbeiten der nächsten Zeile. Bild
daten für zwei Zeilen werden somit im Randomspeicher bzw.
RAM 94 abgespeichert, und Daten S werden von der Steuer
einheit 1 zum Adreßregister 88 geliefert, um die Bezeich
nungsspeicherbereiche 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 RIDT 07-00, über den Codierende-Verarbeitungs
teil 28, sowie Byte-Daten P, d. h. verarbeitete Bilddaten
RODT 07-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 abzuspei
chern.
Wie aus der vorstehenden Beschreibung hervorgeht, wählt der
Wähler 86 beim Auslesen von Bezugszeilendaten die Ausgangs-
oder Ausgabedaten von der Addierstufe 84, während er bei
Speicherung der Bezugszeilendaten die Ausgabedaten vom
Adreßzähler 82 wählt, um sie auszugeben.
Wenn zu Beginn der Verarbeitung für eine neue Zeile Bezugs
zeilendaten ausgelesen 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 Bezugs
zeilendaten halten. Die Daten REF-3-10 vom Register 96
werden als Daten U zu einem b 1-Detektor 102 ausgegeben.
Der EOL-Detektor 81 erfaßt einen EOL-Code, wenn ein Fehler
z. B. im Decodierverarbeitungsteil 7 oder im Erzeugungsver
arbeitungsteil 8 auftritt. Der Detektor 81 empfängt Daten H
vom Decodierverarbeitungsteil 7 und meldet die Erfassung
oder Detektierung eines EOL-Codes zur Steuereinheit 1 mit
tels Daten Z.
Die Anordnung des a 1b 1-Detektors 16 des Erzeugungsverar
beitungsteils 8 ist nachstehend anhand von Fig. 5 erläutert.
Der a 1b 1-Detektor 16 wird häufig in einem Vertikalmodus
und einem Durchlaßmodus (pass mode) in einem zweidimensio
nalen Modus benutzt.
Die aus dem Bezugszeilen-Puffer-RAM 94 ausgelesenen Daten
werden im Register 96 als Daten REF 15-08 verriegelt. Das
Register 96 verschiebt die Daten REF 07-04 in den Daten
REF 07-00 zu Daten REF-4-1 und die Daten REF 15-08 zu Daten
REF 07-00 in Einheiten von Bytes, um damit Daten vom
Bezugszeilen-Puffer RAM 94 als Daten REF 15-08 zu ver
riegeln.
Der b 1-Detektor 102 nimmt Daten U der (für die) Bezugs
zeile vom Register 96 ab; außerdem nimmt er Daten A 1 von
der Steuereinheit 1 zur Erfassung eines Farbänderungs-
oder -wechselpunkts ab. Der Detektor 102 meldet das Fehlen
des b 1 Punkts zur Steuereinheit 1 mittels Daten A 2. Der
a 1-Detektor 104 nimmt Daten F vom Codierendeverarbeitungs
teil 28 ab. Die b 1- und a 1-Detektoren 102 bzw. 104 nehmen
eine Anzeigegröße vom a 0-Zeiger RBPA 100 ab und erfassen
jeweils Positionen a 1 bzw. b 1 von Pixels mit Änderungen
auf einer Codierzeile und einer Bezugszeile an der rech
ten Seite des Punkts a 0, d. h. vor dem Punkt a 0 in Ver
arbeitungsrichtung, am Register 96. Die durch den b 1-
Detektor 102 erfaßte Position b 1 wird zur Subtrahierstufe
120 und zum Wähler 108 geliefert. Im Zusammenhang mit dem
Register 96 wird "+ 4" zur Position b 1 addiert.
Die durch den a 1-Detektor 104 erfaßte Position a 1 wird
den Wählern 116 und 114 zugeführt. Der Wähler 116 wählt
die Ausgabedaten aus den Daten vom a 1-Detektor 104 oder
den Daten "+ 4" von der Steuereinheit 1 und gibt die
gewählten Daten zur Substrahierstufe 120 aus. Letztere
gibt ihr Rechenergebnis als Daten A zum Erzeugungsver
arbeitungsteil 8 aus.
Der Wähler 108 empfängt die Anzeigegröße vom a 0-Zeiger
100 und die Ausgabe (output) oder das Ausgangssignal b 1
vom b 1-Detektor 102. Der Wähler 110 empfängt Daten "- 4"
von der Steuereinheit 1 und Daten B, als Ausgabe RLCNT
vom RL-Zähler 42, vom Erzeugungsverarbeitungsteil 8. Die
Wähler 108 und 110 wählen jeweils ihre Ausgaben (Aus
gangssignale) nach Maßgabe eines Steuersignals von der
Steuereinheit 1 und geben sie zur Addierstufe AO 1BP 112
aus, welche ihrerseits die Summe zum Wähler 112 ausgibt.
Der Wähler 114 nimmt auch das Erfassungsergebnis a 1 vom
a 1-Detektor 104, die Anzeigegröße vom a 0-Zeiger 100 und
die Daten W von der Steuereinheit 1 ab, und er wählt
seine Ausgabe (sein Ausgangssignal) entsprechend einem
Steuersignal von der Steuereinheit 1. Das Ausgangssignal
vom Wähler 114 wird dem Erzeugungsverarbeitungsteil 8 als
Daten(einheit) C und dem Decodierverarbeitungsteil 7 als
Daten(einheit) D zugeliefert. Die Ausgabe vom Wähler 114
wird auch durch den a 0-Zeiger RBPA 100 als Anzeigegröße
verriegelt. Die Anzeigegröße vom a 0-Zeiger 100 wird durch
den Komparator 106 mit den Daten E vom Adreßregister 80
verglichen, und das Vergleichsergebnis wird als Daten V
zur Steuereinheit 1 ausgegeben.
Die Ausgabe (das Ausgangssignal) von der Addierstufe
(AO 1BP) 112 wird zum Komparator 122 ausgegeben, der auch
eine Größe "8" zur Angabe einer (eines) Datenverarbei
tungsgröße oder -formats von der Steuereinheit 1 abnimmt
und einen Vergleich zwischen den beiden Eingaben (oder
Eingangssignalen) anstellt. Das Vergleichsergebnis wird
der Steuereinheit 1 als Signal SNAGR 8 zugeführt, wenn die
Ausgabe von der Addierstufe 112 gleich 8 oder größer ist.
Der b 1-Detektor 102 besitzt den in Fig. 6 gezeigten
Aufbau. Diese Schaltung prüft einen Farbänderungs- oder
-wechselpunkt; ein weißer Lauf (white run) wird als "0",
ein schwarzer Lauf (black run) als "1" verarbeitet. Für
entsprechende Bits vor dem interessierenden Punkt a 0
in Verarbeitungsrichtung wird "1" als Maskenmuster ge
liefert. Die dem b 1-Detektor 102 eingegebenen Bezugs
zeilendaten -4-11 werden jeweils an eine Klemme von
exklusiven ODER-Gliedern 206 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 schwar
zen 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 (a 3rd-bit NAND gate) werden diesem durch
den betreffenden Inverter 210 invertierte 2. Bit-Daten
eingegeben. Jedes NAND-Glied 211 berechnet ein logisches
Produkt aus diesen Eingaben oder Eingangssignalen zur
Feststellung einer Farbänderung in Pixelkomponenten an
der betreffenden Bitposition. Wenn daher alle zugeord
neten Bits der gleichen Verarbeitung unterworfen werden,
kann ein Farbänderungspunkt von Pixelkomponenten einfach
und augenblicklich erfaßt oder festgestellt 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 b 1 einer Bezugszeile erfaßt
werden dürfen (oder sollen). Dies stellt einen Zustand
dar, in welchem die Farbe des Punkts an der linken Seite
des betreffenden Bits als entgegengesetzte Farbe hinzu
gefügt wird. Auf diese Weise kann verhindert werden, daß
schwarze Punkte 201 und 202 als Punkt b 1 erfaßt werden.
Im folgenden ist die Arbeitsweise des erfindungsgemäßen
Binärdatenverdichtungs- und -dehnungs-Verarbeitungsgeräts
beschrieben.
Nachstehend ist zunächst die Dehnungsverarbeitung im ein
zelnen erläutert.
Wenn eine Dehnungsverarbeitung für eine neue Seite einge
leitet wird, werden Steuerdaten, einschließlich von Daten
zur Bestimmung der MH-, MR- oder M2R-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 M2R-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 Dehnungs
verarbeitung 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ück
gesetzt, und von der Steuereinheit 1 werden Daten S zum
Bit "10" des Adreßregisters 88 geliefert, um Adressen umzu
schalten. Danach wird von der Steuereinheit 1 eine Daten
einheit "1" als Daten R der Addierstufe 84 eingegeben, und
erste Byte-Daten auf der Bezugszeile werden aus dem Bezugs
zeilen-Puffer-RAM 94 ausgelesen, um als Daten REF 15-08
im Register 96 abgespeichert zu werden. Nach dem Verschie
ben der Daten zu Daten REF 07-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
REF 15-08 im Register 96 gespeichert. Die Zeiger 36, 56 und
100 werden rückgesetzt. Daten W werden von der Steuerein
heit 1 dem Wähler 114 eingegeben und entsprechend einem
Steuersignal von der Steuereinheit 1 gewählt, so daß ein
neuer Wert bzw. eine neue Größe im a 0-Zeiger 100 gesetzt
wird. Die Farbe wird daher zwangsweise auf "Weiß" gesetzt.
Beispielsweise sei angenommen, daß ein nach der M 2R-Methode
codierter Code über eine Eingabedatenschiene dem Decodier
verarbeitungsteil 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 Steuer
signals von der Steuereinheit verriegelt wird.
In einem Register, das hauptsächlich zum Halten (oder
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 RDTI 15-08 nach Maß
gabe eines Steuersignals von der Steuereinheit 1 zu Daten
RDTI 07-00 verschoben, und neue Eingabedaten werden als
Daten RDTI 15-08 verriegelt und zusammen mit Daten RDTI 07-00
als 16-Bit-Daten gehalten. Auf diese Weise werden am Anfang
einer Seite 2-Byte-Binärdaten eingegeben.
16-Bit-Registerdaten RDTI 15-00 werden zum Codierende-Ver
arbeitungsteil 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 RDTI 15-00 werden daher über den Ver
arbeitungsteil 28 zur Trichterschiebestufe 30 ausgegeben.
Der Decodierzeiger 36 zeigt die LSB-Position eines als
nächstes auszuziehenden Codes vom oder aus den Register
daten RDTI 15-00 an, die der Trichterschiebestufe 30 einge
geben wurden. Letztere erzeugt eine 9-Bit-Ausgabe LSHT 08-00,
die durch Linksverschieben der Daten RDTI 15-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
RDTI 11-03 aus den Eingabedaten RDTI 15-00 und gibt diese als
Daten LSHT 08-00 aus.
Die Daten LSHT 08-00 werden zu den den Daten LSHT 10-09 von
der Steuereinheit 1 entsprechenden Daten hinzuaddiert, und
das Ergebnis wird zum Wähler 31 ausgegeben, der außerdem
Daten entsprechend den Daten LSHT 06-08 oder LSHT 07-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 M2R-Methode die Erzeugungsver
arbeitung eines unmittelbar vorhergehenden decodierten
Codes nicht beendet oder abgeschlossen ist, wird das dem
Wähler 31 zugeordnete Steuersignal nicht erzeugt. Der
Wähler 31 wartet daher den Abschluß der Erzeugungsverar
beitung in einem Zustand ab, in welchem die Daten LSHT 08-00
geliefert werden.
Falls der Wähler 31 den Abschluß nicht abwartet, kann ein
weißer Vorsatz oder Lauf (white run) 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 (advanced
processing) 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 erfindungsgemäß die Decodierung durch Voraus
verarbeitung.
Da die MH- und MR-Methoden im Gegensatz zur M2R-Methode
einen EOL-Code verwenden, kann eine Codedateneinheit durch
Vorausverarbeitung decodiert werden, ohne daß der Abschluß
der augenblicklichen Erzeugungsverarbeitung abgewartet zu
werden braucht. Mit der Decodierverarbeitung nach der M2R-
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 LSHT 10-00 werden nach Maßgabe eines Steuersignals
von der Steuereinheit 1 zum Decodierer-ROM 32 ausgegeben.
Wenn Daten Y 08-06 gewählt sind, wird der 08-06-Bitabschnitt
oder der 08-07-Bitabschnitt der Daten LSHT 10-00 als der
entsprechende Abschnitt oder Teil der Daten LSHT gewählt,
und der Datenabschnitt LSHT 08-00 wird durch entsprechende,
zum Decodierer-ROM 32 auszugebende Bits zur MSB-Richtung
verschoben.
Der Decodierer-ROM 32 gibt einer Lauflänge zugeordnete
Daten als Daten DROM 07-00, eine decodierte Codelänge
angebende Daten als Daten DROM 11-08 und den nächsten
Zustand anzeigende Daten als Daten DROM 15-12 aus. Zu
diesem Zeitpunkt werden Daten in den zweidimensionalen
Vertikal- und Durchlaßmoden in Form von Lauflängendaten
(δ-4) ausgegeben.
Die Daten DROM 11-08 werden zur Addierstufe 34 ausgegeben,
welche gleichzeitig Daten vom Zeiger 36 abnimmt. Die Daten
DROM 11-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 Ver
dichtungsverarbeitung, nicht aber bei der Dehnungsverar
beitung benutzt wird, vom a 1b 1-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 ge
wählt. Aus diesem Grund werden die summierten Daten
wiederum zum Inhalt des Zeigers 36. Der Zeiger 36 zeigt
auf diese Weise die LSB-Position eines einem decodierten
Code am nächsten gelegenen Codes an.
Wenn die 2 3-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 Decodier
verarbeitung für ein Byte abgeschlossen ist. Die Steuer
einheit 1 gibt daraufhin ein Steuersignal zum Register 26
aus, um die Daten RDTI 15-08 in Einheiten von Bytes nach
links zu Daten RDTI 07-00 zu verschieben. Durch das Ver
riegelungsglied 22 verriegelte neue Byte-Daten werden als
Daten RDTI 15-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 RDTI 07-00 des
Registers 26 stets die LSB-Position eines zu decodierenden
Codes vorhanden ist.
Im folgenden ist die Arbeitsweise des Erzeugungsverar
beitungsteils 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äh
lers 42 "1" eingegeben, um damit "111" zu erhalten. Dies
ist deshalb der Fall, weil die Erzeugungsverarbeitung in
Einheiten von Bytes erfolgt. Die Daten RLCNT vom RL-Zäh
ler 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 Erzeugungs
verarbeitungsteil 8 weist einen ähnlichen Schaltungs
aufbau auf wie der Decodierzeiger 36 des Decodierteils
13. Die Trommelschiebestufe 50 nimmt Daten vom Zeiger 36
ab, so daß die Eingabedaten gedreht oder rotiert und
gemäß den Daten vom Zeiger 36 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 (vom) Bildzeiger(s) 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 Verar
beitung, 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 RODT 15-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 Trommelschiebe
stufe 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 Bild
zeigers 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ähl
ten Daten als Daten RODT 07-00 des Registers 62 auszu
geben. Wenn die Anzeigegröße vom Zeiger 56 z. B. "3" ist,
werden Daten vom Wähler 64 als Daten RODT 02-00 und Daten
von der Trommelschiebestufe 50 als Daten RODT 07-03 ge
wählt. Die durch den Wähler 60 gewählten Daten werden
als Daten RODT 07-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 voll
ständig durchgeführt oder abgeschlossen wird, werden
Daten RODT 07-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 RODT 07-00 werden auch als Daten P zum
Bezugszeilen-Speicherteil 4 ausgegeben, um in diesem an
einer Adresse entsprechend der (dem) augenblicklichen
Größe bzw. 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 Daten(einheit) Q
ein Takt(signal) angelegt, um ihn um "1" zu inkremen
tieren bzw. hochzählen zu lassen. Dabei wird im Fall
eines nach der M2R-Methode codierten Codes der Zähl
stand des Zählers 82 durch den Komparator 90 mit dem des
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 Bezugs
zeilendaten 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 REF 15-08 verriegelt. In diesem Fall werden Daten a 0
des a 0-Zeigers (RBPA) 100 nicht geändert. Es wird ge
prü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 einge
gebenen 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 (oder Durchlauf) 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 für 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 abgeschlossn (beendet) ist, wird die Zahl
des wiederholten Codes um "1" dekrementiert, und dieselbe
Verarbeitung wird wiederholt, bis der Inhalt des RL-Zäh
lers 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än
zungscodes. Nach Abschluß der Verarbeitung der Byte-Daten
werden restliche (remaining) Daten 02-00, die weniger als
ein Byte betragen, verarbeitet. 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
a 1b 1-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 100 geliefert, durch letzteren gewählt und der
Addierstufe 112 zugeführt. Der Wähler 108 wählt Daten a 0
vom a 0-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 SNAGR 8 der
Steuereinheit 1 gemeldet, daß eine Einbyte-Datenverar
beitung abgeschlossen ist. Wenn das Signal SNAGR 8 aus
gegeben wird, gibt das Register 62 nach Maßgabe eines
Steuerausgangssignals von der Steuereinheit 1 die Daten
RODT 07-00 auf der Datenschiene aus und liefert sie auch
als Daten P zum Speicherteil 4.
Wenn kein Signal SNAGR 8 ausgegeben wird, werden die
nächsten Bilddaten abgewartet. Wenn die nächsten Bild
daten dem Wähler 60 eingegeben werden, werden Daten
RODT 07-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 M2R-Methode codier
ten Codes ausführen.
Als nächstes ist die Erzeugungsverarbeitung für einen
Code im Durchlaßmodus und im Vertikalmodus als zweidimen
sionaler 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 oder werden,
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ängedaten zugeordneten Laufs (oder Durchlaufs)
rückgesetzt oder gesetzt. Gleichzeitig werden in der das
Register 62 enthaltenden Datenhalteschleife Einbyte-Bild
daten, die den Punkt a 0 einer augenblicklichen Verar
beitungszeile enthalten, zum 07-00-Datenabschnitt des
Registers 62 über den Wähler 64 und den Wähler 60 zurück
geführt. Die Bitposition des Punkts a 0 in den Bytedaten
wird in den a 1-Zeiger 100 und den Bildzeiger 56 geladen.
Das dritte Bit des a 0-Zeigers 100 entspricht "0". Bild
daten auf einer Bezugszeile sind in das Register 96
geladen worden. Daten REF 00-07 des Registers 96 entspre
chen Daten RODT 07-00 des Registers 62, in welchem bzw.
welchen die Bitposition des Punkts a 0 enthalten ist.
Nachstehend ist die Dehnungsverarbeitung eines VL(2)-
Codes beschrieben, wobei der Punkt a 0 dem zweiten Bit der
Daten RODT 07-00 entspricht und eine Bezugszeile in
Fig. 7A dargestellte Bildmusterdaten aufweist.
Dabei wird ein Farbänderungspunkt auf einer Bezugszeile,
d. h. der Punkt b 1, durch den in Fig. 6 dargestellten
b 1-Detektor 102 gewonnen oder abgeleitet. In dem in
Fig. 7A gezeigten Fall für die Bezugszeile entspricht der
Punkt b 1 dem achten Bit. Infolgedessen gibt der b 1-Detek
tor 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 (AO 1BP) 112
empfängt das Ausgangssignal "12" vom b 1-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. Dieses Aus
gangssignal (oder diese Ausgabe) wird durch den Wähler
114 gewählt und im a 0-Zeiger 100 gesetzt.
Dies bedeutet insbesondere, daß ein Farbänderungspunkt
auf der augenblicklichen oder aktuellen Verarbeitungs
zeile, d. h. der Punkt a 1, dem sechsten Bit des betref
fenden Bytes entspricht. Während der Punkt b 1 erfaßt und
der Punkt a 1 berechnet werden, erzeugt oder liefert 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 aus
gegeben 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
a 0-Zeiger 100 angezeigten Bitposition, und er wählt Daten
von der Trommelschiebestufe 50 als Daten von der durch
den a 0-Zeiger angezeigten Bit-Position bis zum siebten
Bit. Hierbei werden die Daten vom a 0-Zeiger 100 im Zeiger
56 auf diese Weise verriegelt; ein im vorherigen Schritt
von der durch den Wähler 64 gebildeten Halteschleife
fertiggestellten Bildmuster wird zurückgeführt (oder
rückgekoppelt) und in einen Datenabschnitt an der linken
Seite des Punkts a 0 geladen, während neue Bilddaten als
Datenabschnitt vom Punkt a 0 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 a 1 als Punkt a 0 im nächsten Verarbeitungsschritt
dient und Bilddaten entsprechend dem nächsten Lauf an
seiner rechten Seite erzeugt werden, besitzt ein augen
blicklich erzeugter Lauf eine Länge entsprechend dem zu
diesem Zeitpunkt vorliegenden decodierten Ergebnis.
Das Ausgangssignal der Addierstufe (AO 1 BP) 112 wird dem
Komparator 122 aufgeschaltet, um zu prüfen, ob das Aus
gangssignal 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
SNAGR 8. Wenn dieses Signal nicht erzeugt oder geliefert
wird, bedeutet dies, daß die Bilddaten für die augenblicklich
zu verarbeitenden Lauflängendaten nur in Daten RODT 00-07
des Registers 62 erzeugt werden. Die Steuereinheit 1
führt somit in diesem Schritt die vollständige Erzeu
gungsverarbeitung für diese Lauflängendaten aus.
Da bei diesem Ausführungsbeispiel das Ausgangssignal
(oder die Ausgabe) von der Addierstufe 112 gleich 6 ist,
wird kein Signal SNAGR 8 erzeugt, und die Erzeugungsver
arbeitung für diese Lauflängendaten wird in diesem Schritt
abgeschlossen. Nach Abschluß der Lauferzeugungsverar
beitung wird das Ausgangssignal von der Addierstufe 112
über den Wähler 114 in den a 0-Zeiger 100 und über die
Wähler 114 und 54 in den Bildzeiger 54 geladen. Die
Inhalte der Zeiger 100 und 56 werden somit zu "6" aktuali
siert. 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 a 0, a 1 und b 1 im Hinblick auf den erzeugten Lauf
(oder Durchlauf) angegeben. Dieser Zustand entspricht dem
Anfangszustand der Erzeugungsverarbeitung für den näch
sten Schwarzlauf. Für die Erzeugungsverarbeitung des
Schwarzlaufs, d. h. im nächsten Maschinenzyklus, dient der
Punkt a 1 gemäß Fig. 7A als Punkt a 0, während der Punkt b 1
außerhalb des Bereichs vom Fig. 7A liegt. Die Erzeugung
eines Schwarzlaufs (black run) im nächsten Maschinen
zyklus und anschließend ist nachstehend beschrieben.
Wie vorstehend beschrieben, betragen die Inhalte des
a 0-Zeigers (RBPA) 100 und des Bildzeigers (RBPQ) 54
jeweils "6". Dies bedeutet, daß das sechste Bit der Daten
RODT 07-00 des Registers 62 dem Punkt a 0 entspricht.
Wenn der Dekodierteil 13 einen V(0)-Code in einem vor
hergehenden Maschinenzyklus decodiert hat, d. h. in einem
Maschinenzyklus, in welchem die Bilddaten-Erzeugungsver
arbeitung 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 b 1 nicht erfaßt oder
festgestellt. Dies wird der Steuereinheit 1 mittels der
Daten A 2 gemeldet. Die Bilderzeugung wird jedoch unab
hängig von der Durchführung oder Nichtdurchführung der
Erfassung des Punkts b 1 auf dieselbe Weise wie im vor
herigen Zyklus durchgeführt, so daß alle Bits vom
6. Bit bis zum 15. Bit der Daten RODT 15-00 des Registers
62 auf "1" gesetzt sind. Gemäß Fig. 7B wird ein voll
ständig aus "1"-Bits bestehender Datenabschnitt von
einem durch a 1 bezeichneten Punkt aus nach rechts er
zeugt. Der Inhalt an der linken Seite eines durch den
a 0-Zeiger 100 angegebenen oder angezeigten Punkt, d. h.
der Datenabschnitt RODT 06-00 der Daten RODT 15-00, bleibt
bei der Operation der Halteschleife unverändert. Auf
diese Weise werden Einbyte-Bilddaten aus Schwarzdaten
RODT 01-00, Weißdaten RODT 05-02 und Schwarzdaten RODT 07-06
vervollständigt. Aus diesem Grund wird das nicht dar
gestellte Flip-Flop FODRDY der Steuereinheit 1 zum Aus
geben des Inhalts der Daten RODT 00-07 gesetzt.
Da ein Einbyte-Bilddaten der Daten RODT 07-00 vervoll
ständigt sind, werden im nächsten Verarbeitungsschritt an
deren rechter Seite Einbyte-Bilddaten erzeugt. Die Vor
bereitung 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 Bezugs
zeilenpuffer 94 ausgelesenen nächsten Bilddaten (der
Bezugszeile) zu den Daten REF 08-15 geladen werden. Dies
bedeutet, in anderen Worten, daß der Inhalt der Daten
REF 04-07 zu den Daten REF 4--1 und der Inhalt der Daten
REF 08-15 zu den Daten REF 00-07 geladen werden, um damit
die Einbyte-Schiebeoperation zu realisieren.
In Synchronismus damit wird "8" vom Inhalt des a 0-Zeigers
100 substrahiert. Dies bedeutet, daß der Punkt a 0 in bezug
auf die Daten REF um ein Byte nach links verschoben wird.
Das Bit an der linken Seite des Bits - 4 ist im b 1-Detek
tor 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) ge
schehen. Auch wenn der Inhalt der a 0-Daten im Abschnitt
REF 11--4 (bzw. - 4) ist, kann der Punkt b 1 erfaßt werden.
Der Wähler 114 empfängt den Inhalt des a 0-Zeiger (RBPA)
100 und berechnet "a 0 - 8". Der Wähler 114 liefert selek
tiv das Rechenergebnis zum a0-Zeiger 100. In diesem Fall
ergibt sich - 2 aus 8, wobei - 2, in den a 0-Zeiger 100
geladen, gleich 6 ist; 6-8 ergibt - 2, und - 2 wird in
den a 0-Zeiger 100 geladen. Der Inhalt des Bildzeigers
(RBPQ) 56 bleibt unverändert, bis die Erzeugungsverar
beitung für den betreffenden Lauf abgeschlossen ist.
Fig. 7C veranschaulicht einen Zustand für den Fall, daß
dieser Verarbeitungsschritt abgeschlossen oder beendet
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 RODT 07-00 hält. Der Wähler (RRSEL) 64 wird durch
das erwähnte Steuer-Flip-Flop FODRDY so angesteuert, daß
die Daten DODT 15-08 gewählt und zur Halteschleife aus den
Wählern 64 und 60 geliefert werden, um damit eine Ab
weichung zwischen den Daten REF und RODT zu kompensieren.
Insbesondere werden die Bytedaten RODT 08-15 im Register
62 gemäß Fig. 7C für diesen Erzeugungsverarbeitungsschritt
benutzt. Die Daten RODT 15-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 b 1 nicht erfaßt wird und die Bilderzeugung für
ein weiteres Byte andauert. Am Ende dieses Verarbeitungs
schritts wird der 6-Bit-"1"-Datenabschnitt, d. h. die
Daten RODT 13-08 des linken Abschnitts von 8 Bits, wie
durch Daten RODT 15-08 in Fig. 7C angedeutet, zum Daten
abschnitt RODT 05-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 Trommelschiebe
stufe 50 zu den Daten RODT 15-06 eingegeben werden. In
folgedessen werden alle Bits der Daten RODT 00-15 zu "1".
Die Daten REF 15-00 des Registers 96 werden um ein Byte
nach links verschoben, und - 4 wird in den a 0-Zeiger 100
eingegeben, und zwar auf dieselbe Weise, wie oben be
schrieben. Das Ergebnis ist in Fig. 7B dargestellt. Im
nächsten Verarbeitungsschritt wird der Punkt b 1 am
6. Bit erfaßt. Aus dem b 1-Detektor 102 wird 10 (= 6 + 4)
ausgegeben, während - 4 in den RL-Zähler 42 in Entspre
chung zur Lauflänge δ = 0 von VL(0) eingegeben wird.
Infolgedessen gibt die Addierstufe (AO 1BP) 112
6 (= 10 + (- 4)) aus. Da diese Ausgabe oder dieses Aus
gangssignal 7 oder weniger beträgt, wird kein Signal
SNAGR 8 erzeugt. Hierdurch wird das Ende der Laufverar
beitung angezeigt. Das Ausgangssignal von der Addierstufe
112, d. h. 6, wird am a 0-Zeiger 100 und im Bildzeiger 56
gesetzt. Obgleich alle Bits der Daten RODT 15-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 Erzeugungsverarbei
tung für die nach dem vertikalen Modus codierten Code
daten parallel zur Erfassung oder Feststellung des Punkts
b 1 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 bzw. an den
Bilddaten vom Punkt a 0 zum Punkt b 1 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 b 1-Detektors 102 invertiert,
und es wird dieselbe Operation wie für den V(0)-Code
ausgeführt, während die Farbe des zu erzeugenden Bild
musters unverändert bleibt; auf diese Weise werden Bild
daten vom Punkt b 1 gemäß Fig. 7A zum Punkt b 1 gemäß
Fig. 7D erzeugt.
Im folgenden ist die Verdichtungsverarbeitung beschrie
ben.
Zunächst ist die Verdichtungsverarbeitung für einen MH-Code
erläutert. Bildmusterdaten werden von einer Eingabedaten
schiene dem Verriegelungsglied 22 eingegeben und darin
verriegelt. Die eingegebenen Bilddaten werden dem Register
26 über den Inverter 24 eingespeist. Zu diesem Zeitpunkt
werden Registerdaten RDTI 07-00 zum Bezugszeilen-Speicher
teil 4 als Bezugszeilendaten für die nächste Verarbeitungs
zeile ausgegeben und in diesem Speicherteil entsprechend
den Daten vom Adreßregister 88 gespeichert. Ebenso werden
im Datenteil oder -abschnitt RDTI 07-00 gehaltene Bilddaten
zum a 1-Detektor 104 ausgegeben, und es werden Daten
320(2560 ÷ 8) im RL-Zähler 42 vorgegeben. Der durch den
a 1-Detektor 104 erfaßte a 1-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 die
selbe Weise wie bei der Dehnungsverarbeitung gewählt und
zum Wähler 31 ausgegeben. Der Ausgang von der Trichter
schiebestufe 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 DROM 11-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 Dehnungsverar
beitung 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 um ein Byte nach links ver
schoben. Neue Bezugszeilendaten werden aus dem Speicherteil
4 ausgelesen, zum Register 96 ausgegeben und als (Daten)
REF 15-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 DRO 05593 00070 552 001000280000000200012000285910548200040 0002003706470 00004 05474M 15-12 vom De
codierer-ROM 32 ein Zählimpuls dem RL-Zähler 42 einge
geben, sobald eine Verarbeitung für eine Einheit abge
schlossen ist, um damit den RL-Zähler 42, wie bei 21
in Fig. 7 gezeigt, herabzuzählen. Wenn durch den a 1-Detektor
104 ein Farbänderungspunkt a 1 festgestellt wird, d. h. wenn
der Inhalt der Daten LSHT 08-00 nicht "00000000" oder
"11111111" beträgt, wird das Zählergebnis bzw. der Zähl
stand des RL-Zählers 42 über den Wähler 42 dem Codierer-ROM
46 zugeführt. Die Dateneinheit N wird ebenfalls dem Decodie
rer-ROM 46 zugeliefert, um damit einen Ergänzungscode (make-
up code) 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 RODT 15-08 des
Registers 62 und auch dem Wähler 60 zugeführt. Im Wähler 60
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ängig
keit von den Anzeigedaten des Bildzeigers 56. Gleichzeitig
wird die Länge des erzeugten Ergänzungscodes vom Codierer-
ROM 46 zur Addierstufe 52 als Daten EROM 07-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 RODT 07-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
vorstehend beschrieben, verarbeitet. Dabei werden Daten
RODT 15-08 im Wähler 64 gewählt. Nach Beendigung der Er
zeugungsverarbeitung 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än
zungscodes verarbeitet, um einen verdichteten Beendigungs
code (terminating code) auszugeben. Die Verarbeitung für
die Länge eines Codes ist dieselbe wie für den Ergänzungs
code. Auf diese Weise werden der Ergänzungs- und der Beendi
gungscode wie im Fall der Verdichtungsverarbeitung im
Horizontalmodus erzeugt.
Die nach der MR- und M2R-Methode codierten Horizontalmodus
codes werden auf dieselbe Weise wie bei der Verdichtungs
verarbeitung des MH-Codes verarbeitet, nur mit dem Unter
schied, 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 RDTI 07-00 als Dateneinheit F a 1 nicht
festgestellt wird und auch b 1 in den Daten REF-3-10 vom
Register 96 nicht festgestellt wird, wird eine Sprungver
arbeitung ausgeführt. Dabei werden beispielsweise ein Byte
eines neuen Bilddatenmusters über die Eingabedatenschiene
eingegeben und die Bezugszeilendaten im Register 96 aktuali
siert. Wenn sowohl a 1 als auch b 1 festgestellt oder erfaßt
werden, wird die Verdichtungsverarbeitung von zweidimensiona
len Codes eingeleitet.
Die erfaßten Größen oder Einheiten a 1 und b 1 werden der
Subtrahierstufe 120 zugeführt, deren Ausgangssignal als
Dateneinheit A über den Wähler 4 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
b 1 gewählt und dem a 0-Zeiger 100 sowie dem Decodierzeiger
36 über den Wähler 38 als Dateneinheit D zugeliefert. Die fol
gende Verarbeitung entspricht derjenigen bei der Dehnungs
verarbeitung.
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.