JPS628662A - Data restoring circuit - Google Patents

Data restoring circuit

Info

Publication number
JPS628662A
JPS628662A JP14807585A JP14807585A JPS628662A JP S628662 A JPS628662 A JP S628662A JP 14807585 A JP14807585 A JP 14807585A JP 14807585 A JP14807585 A JP 14807585A JP S628662 A JPS628662 A JP S628662A
Authority
JP
Japan
Prior art keywords
data
bits
shifter
output
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP14807585A
Other languages
Japanese (ja)
Inventor
Masaaki Nishiyama
西山 雅昭
Takashi Monno
孝史 門野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Minolta Co Ltd
Original Assignee
Minolta Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Minolta Co Ltd filed Critical Minolta Co Ltd
Priority to JP14807585A priority Critical patent/JPS628662A/en
Publication of JPS628662A publication Critical patent/JPS628662A/en
Priority to US07/268,633 priority patent/US4864414A/en
Pending legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)

Abstract

PURPOSE:To restore and process a compressing data at high speed by providing a parallel shifter and processing to give and receive in parallel the data between the memory of the compressing data and a table for the restoration. CONSTITUTION:When an MH code compressed by a CPU 2 is written in a picture buffer 3, a scanning start synchronizing signal from the engine of a printer is inputted to an engine interface 10, the picture buffer 3 outputs the data to a shifter 5 by an address from an address counter 4. The shifter 5 shifts so that the head of the MH code decoded next comes to the higher order bit of 16 bits of CODE 15-0 to be outputted and the MH code is restored with the run length as the binary data of 12 bits by a decoding table 6. An output control part 9 fetches the serial data from a run length counter 7 into a latch circuit 9a and sends the data of 8 bits of the parallel to an interface 10.

Description

【発明の詳細な説明】 [産業上の利用分野] この発明はレーザプリンタやLEDプリンタ等の電子写
真方式のプリンタ等において圧縮された画像データを復
元するデータ復元回路に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a data restoration circuit for restoring compressed image data in an electrophotographic printer such as a laser printer or an LED printer.

[従来技術とその問題点] 一般に、レーザプリンタを出力装置として使用する場合
、ワードプロセッサ等のホストコンピュータ装置から送
られるデータの転送形態として文字コード等のコード情
報で送る場合と、画像をドツトデータとして送る場合と
がある:コード情報によるものではビットマツプ方式お
よびキャラクタマツプ方式があり、このうちでもビット
マツプ方式は、任意位置に任意文字を印字することがで
き、又、フルグラフィック等の機能を有するが、プリン
タの動作を途中で停止させることができないのでメモリ
として最低1頁分のデータを記憶する容量が必要となる
ので高価である。又、ドツトデータによる転送方式にお
いて、コンピュータ装置からの転送速度を制御して、プ
リンタの印字ドツトデータの出力速度と完全に一致させ
た場合には、コンピュータ装置からのデータをそのまま
印字データとして出力することができるが、一般にはコ
ンピュータ装置側の処理速度がプリンタに比べて遅く又
、データ転送の同期がとれない等の理由から、コンピュ
ータ装置のデータ転送速度とは無関係にプリンタ側で印
字できるようにする必要がある。しかし、この場合にお
いても、電子写真方式によるプリンタでは感光体の感度
や現像、転写等の特性により、一定のプロセス速度があ
り、例えば感熱プリンタの様に紙送り速度を可変にして
コンピュータ装置とのデータ転送のタンミングに合わせ
るといった手法を用いることはできないので、プリンタ
側にバッファメモリを設け、コンピュータ装置から送ら
れてくる1頁分程度のドツトデータを記憶する必要があ
り、やはり、大容量のメモリを必要とし、高価なものと
なった。
[Prior art and its problems] In general, when using a laser printer as an output device, there are two ways to transfer data sent from a host computer device such as a word processor: one is to send code information such as a character code, and the other is to send images as dot data. There are cases where it is sent: There are two types of code information: the bitmap method and the character map method. Of these, the bitmap method can print arbitrary characters in any position and has functions such as full graphics, but Since the operation of the printer cannot be stopped midway, the memory is expensive because it requires a capacity to store at least one page's worth of data. Furthermore, in the dot data transfer method, if the transfer speed from the computer device is controlled to perfectly match the print dot data output speed of the printer, the data from the computer device is output as is as print data. However, because the processing speed of a computer device is generally slower than that of a printer, and the data transfer cannot be synchronized, it is possible to print on the printer side regardless of the data transfer speed of the computer device. There is a need to. However, even in this case, electrophotographic printers have a fixed process speed depending on the sensitivity of the photoreceptor and the characteristics of development, transfer, etc. For example, like thermal printers, the paper feed speed can be varied and the process speed can be changed to a computer device. Since it is not possible to use a method that matches the timing of data transfer, it is necessary to provide a buffer memory on the printer side to store about one page worth of dot data sent from the computer device, which also requires a large capacity memory. required and became expensive.

そこで、コンピュータ装置から送られてくるデータを符
号化することによりデータを圧縮させた後、メモリに記
憶させるようにすれば前記メモリ容量を少なくすること
ができるが、この場合、圧縮された符号を元の信号に復
元する必要がある。
Therefore, the memory capacity can be reduced by compressing the data by encoding the data sent from the computer device and then storing it in the memory. In this case, the compressed code is It is necessary to restore the original signal.

特開昭58−170280号公報にその復元方法が記載
されているので、以下、第8図のブロック図を用いて簡
単に説明する。
The restoration method is described in Japanese Unexamined Patent Publication No. 58-170280, and will be briefly explained below using the block diagram of FIG. 8.

cpuc中央処理装置)21により、コンピュータ装置
等からのラスターデータは圧縮され、メモリ22が書き
込まれる。メモリ22に書き込まれたデータはシフター
23に取り込まれた後、デコーダ24で圧縮データは復
元され、プリンタ駆動部のエンジン25に出力される。
Raster data from a computer device or the like is compressed by a CPU (central processing unit) 21 and written into a memory 22. After the data written in the memory 22 is taken in by the shifter 23, the compressed data is decompressed by the decoder 24 and output to the engine 25 of the printer driving section.

このシフター23にはメモリ22からのシリアルデータ
が入力されていて、デコーダ24からのシフト信号によ
り1ビットづつデータを取り込んでいる。
Serial data from the memory 22 is input to this shifter 23, and data is taken in one bit at a time by a shift signal from a decoder 24.

従って、メモリ22から出力されるデータがnピットで
あれば、1回シフトさせる必要があり、一つのデータを
取り込むのにn個のクロックパルスを必要とし、このた
めの処理時間が長くなり、プリンタのシステム速度に同
期して画像信号を出力することができなくなるといった
欠点があった。
Therefore, if the data output from the memory 22 has n pits, it needs to be shifted once, and n clock pulses are required to capture one piece of data, which increases the processing time and increases the processing time of the printer. The disadvantage was that the image signal could not be output in synchronization with the system speed.

[発明の目的] この発明は上述した問題点をなくすためになされたしの
であり、圧縮されたデータを高速に復元処理できるデー
タ復元回路を提供することを目的とする。
[Object of the Invention] The present invention has been made in order to eliminate the above-mentioned problems, and an object thereof is to provide a data restoration circuit that can restore compressed data at high speed.

[発明の構成] この発明のデータ復元回路は、画像データのラン長を符
号化して記憶するメモリと、このメモリから所定のビッ
ト数で出力されたデータを適宜シフトさせろことにより
、次に復元されるラン長符号がデータの先頭となるよう
にして出力するシフター回路と、前記シフター回路から
出力されたラン長符号を復元し、そのラン長をバイナリ
−コードで出力する復元メモリとから構成されるデータ
復元回路であって、前記シフターにパラレルシフターを
用いたことを特徴とする。
[Structure of the Invention] The data restoration circuit of the present invention includes a memory that encodes and stores the run length of image data, and a data that is outputted from this memory with a predetermined number of bits and is then restored by appropriately shifting the data. A shifter circuit outputs the run length code so that it becomes the beginning of data, and a restoration memory restores the run length code output from the shifter circuit and outputs the run length in binary code. The data restoration circuit is characterized in that a parallel shifter is used as the shifter.

[発明の概要] 第1図はこの発明のデータ復元回路を用いたプリンクの
ブロック図の概略を示している。シフター26は、画像
データのラン長を符号化して記憶するメモリ22から出
力される所定ビットのパラレルデータを取り込み、そし
て、次に復元されるラン長符号がデータの先頭となるよ
うに適宜シフトさせている。
[Summary of the Invention] FIG. 1 schematically shows a block diagram of a plink using the data recovery circuit of the present invention. The shifter 26 takes in predetermined bits of parallel data output from the memory 22 that encodes and stores the run length of image data, and shifts it as appropriate so that the run length code to be restored next becomes the beginning of the data. ing.

これによりメモリ22から出力されるデータは1回のソ
フト動作によりシフター26に取り込むことができ、デ
ータの復元を高速に処理する。
As a result, the data output from the memory 22 can be taken into the shifter 26 by one software operation, and the data can be restored at high speed.

[実施例] 先づ、この発明に必要となるデータの圧縮及び復元につ
いて説明する。圧縮には理論的に最高の圧縮率が得られ
るハフマン符号をモディファイ化したモディファイドハ
フマン(Ml()方式を用いていて、次表で示すように
白又は黒ドツトの続く長さくラン長)が白黒のドツト別
に符号化されている。
[Embodiment] First, data compression and restoration necessary for this invention will be explained. The compression uses the Modified Huffman (Ml() method, which is a modification of the Huffman code that theoretically provides the highest compression rate, and the run length is a long series of white or black dots as shown in the following table). The dots are encoded separately.

モディファイドハフマン符号表 ラン長   白ラン     黒ラン 1   (100+11     0104   to
ll       011128  1001F   
   0000110010001728  0100
+1011    0000001100101EOL
   000000000001  00000000
0001この圧縮処理はCPU内の圧縮変換用テーブル
によりなされていて、CPU2 +は外部から送られて
くるラスターデータを取り込みながら白ランから黒ラン
の変化点を検出し、変化点までのドツト数に対応する白
ラン長のMH符号を圧縮変換テーブルから検索し、メモ
リ22に書き込み、更に続いてデータを取り込み、今度
は黒ランから白ランへの変化点を検出し、この変化点ま
での黒ドツト数に対応する黒ラン長のMH符号を同様に
して検索してメモリ22に書き込んでいる。ラスターデ
ータで送られてくる各ラインは必ず白ランが始まる様に
取り決められていて、黒ランから始まる場合には“0”
長の白ランが挿入されている。
Modified Huffman code table run length White run Black run 1 (100+11 0104 to
ll 011128 1001F
0000110010001728 0100
+1011 0000001100101EOL
000000000001 00000000
0001 This compression process is performed using a compression conversion table in the CPU, and the CPU2+ detects the change point from the white run to the black run while importing the raster data sent from the outside, and calculates the number of dots up to the change point. The MH code with the corresponding white run length is searched from the compression conversion table, written to the memory 22, and then the data is imported.This time, the change point from black run to white run is detected, and the black dots up to this change point are The MH code of the black run length corresponding to the number is similarly searched and written into the memory 22. Each line sent as raster data is arranged so that it always starts with a white run, and if it starts with a black run, it is set to "0".
A long white run is inserted.

従って、入力されるラスターデータに対応して圧縮変換
されるよう、この圧縮変換用テーブル内にはMH符号と
、このMH符号の符号長とがそれぞれ格納されている。
Therefore, the MH code and the code length of the MH code are stored in this compression conversion table so that the compression conversion is performed in accordance with the input raster data.

ところで、変換されるコード長は、白ランが4ビットな
いし9ビット、黒ランが2ビットないし13ビット、白
黒共通ランが11ビットないし12ビットとなっている
。従って、一つのラン長に対するデータは第2図で示す
ように、2つのアドレスに格納された16ビットからな
る2バイト構成としていて、第1のアドレスの上位4ビ
ットにMH符号のコード長がバイナリ−で格納され、っ
づく12ビットにMll符号が左詰めで格納されている
。ただし、13ヒツト長の黒ランの場合には上位1ビッ
トの0を省いて12ビットとして格納される。この構成
により、変換頻度の高い4ビット長までのコードは1バ
イトのアクセスにより圧縮変換することができる。この
ように符号化されたビット配列によるデータがメモリ2
2のアドレスに1バイトである8ビット単位に書き込ま
れる。
Incidentally, the code lengths to be converted are 4 bits to 9 bits for white runs, 2 bits to 13 bits for black runs, and 11 bits to 12 bits for black and white common runs. Therefore, as shown in Figure 2, the data for one run length has a 2-byte structure consisting of 16 bits stored in two addresses, and the code length of the MH code is in binary in the upper 4 bits of the first address. -, and the Mll code is stored in left-aligned 12 bits. However, in the case of a black run with a length of 13 hits, the high-order 1 bit, 0, is omitted and stored as 12 bits. With this configuration, codes up to 4 bits in length, which are frequently converted, can be compressed and converted by accessing 1 byte. The data in the bit array encoded in this way is stored in memory 2.
It is written to address 2 in units of 8 bits, which is 1 byte.

この場合、第3図に示すように、バイトの境界は無視し
、ビットをつめてリニアアドレスとして書き込む。尚、
l走査におけるラインが全て白ドツトの場合、1ライン
分の白ラン長を圧縮コード化するのではなく、単にEO
L(エンドオブライン)コードのみを入れるようにし、
又、l走査のライン中の有効画像エリア内において途中
から白ドツトのみになった場合もEOLコードを入れる
In this case, as shown in FIG. 3, byte boundaries are ignored, bits are compressed, and the data is written as a linear address. still,
If all lines in one scan are white dots, the white run length for one line is not compressed and encoded, but simply EO
Make sure to include only the L (end of line) code,
Also, if there are only white dots in the effective image area in one scanning line, an EOL code is also inserted.

又、上記デコーダにはデータ復元用として復元用テーブ
ルメモリたとえばROMが用いられていて、メモリに書
き込まれていたMH符号によるデータの内容をROMの
アドレスとして格納している。このMH符号によるデー
タは最長で13ビットとなり、又、格納されるときにデ
ータの最上位ビットは白ランテーブルと黒ランテーブル
の切換用とする必要があり、格納されるデータは14ヒ
ツトになる。従って、上記復元用テーブルROMにはア
ドレスラインとして14本のらのを用いている。この復
元用テーブルから出力すべきデータは、第4図で示すよ
うに、ラン長2560まで表わすに必要なバイナリ−デ
ータの12ビット及び最長13ビットの符号長を表わす
に必要なバイナリ−データ4ビットの計16ビットとな
り、この2バイトの信号を出力できるように上記復元用
テーブルROMを2個用いている。
Further, the decoder uses a restoring table memory, such as a ROM, for restoring data, and stores the content of data written in the memory in accordance with the MH code as an address in the ROM. Data based on this MH code has a maximum length of 13 bits, and when stored, the most significant bit of the data must be used for switching between the white run table and black run table, and the stored data is 14 hits. . Therefore, the restoring table ROM uses 14 lines as address lines. As shown in Figure 4, the data to be output from this restoration table is 12 bits of binary data necessary to represent a run length of up to 2560 and 4 bits of binary data necessary to represent a code length of up to 13 bits. There are a total of 16 bits, and two restoration table ROMs are used so that this 2-byte signal can be output.

第5図はこの発明の1実施例を示している。以下、構成
及び作用について説明する。
FIG. 5 shows one embodiment of the invention. The configuration and operation will be explained below.

外部インタフェースlは、ラスターデータ出力方式のコ
ンピュータ装置と接続される部分であり、具体的にはセ
ントロニクス等のパラレルインタフェースやR9232
C,r(S422等のシリアルインタフェースである。
The external interface l is a part connected to a raster data output type computer device, and specifically, a parallel interface such as Centronics or R9232.
C, r (serial interface such as S422).

CPU2は、マイクロプロセノザ、プロクラムメモリ、
システムラムメモリ及び」二足インタフェース1からの
ラスターデータをソフトウェアによりM H符号に圧縮
変換するテーブルメモリからなり、M I−1符号化さ
れたデータは既述したように定められた手順により画像
バッファ3に書き込まれろ。画像バッファ3は、RAM
からなるメモリで構成されていて、書き込み時には16
ピントΔ0〜15のアドレスバスと8ビットDO〜7の
データバスによりCPU1と接続され、CPUIからの
1頁分のデータがメモリに書き込まれ、プリント時には
画像バッファ3は、CPUIと切り離され、17ビット
MAO−16のアドレスバスによりアドレスカウンタ4
と接続され、そして、16ビットの13FOUTO〜1
5のデータバスによりシフター5と接続される。アドレ
スカウンタ4は、アドレスバスを介して画像バッファ3
内のメモリを読み出すためのアドレスを発生ずる回路で
あり、発生したアドレスは画像バッファ3のラッチ回路
、hに保持される。このアドレスカウンタ4のアクセス
により所定のアドレスにあるデータは読み出され、デー
タバスを介して16ビット単位でシフター5に送出され
ろ。シフター5は、入力された16ビットのデータをこ
のシフター5内のラッチ回路5aに取り込み、後述する
デコードテーブル6から出力される信号C0DEO〜3
で示される数だけシフトさせて信号C0DE15〜0と
して出力する。
CPU2 includes a microprocessor, program memory,
It consists of a system RAM memory and a table memory for compressing and converting the raster data from the bipedal interface 1 into MH code by software, and the MI-1 encoded data is stored in the image buffer according to the predetermined procedure as described above. Be written in 3. Image buffer 3 is RAM
It consists of a memory consisting of 16 when writing.
It is connected to the CPU 1 by an address bus for focus Δ0 to 15 and a data bus for 8 bits DO to 7, and one page worth of data from the CPUI is written to the memory. During printing, the image buffer 3 is separated from the CPU Address counter 4 is set by MAO-16 address bus.
and the 16-bit 13FOUTO~1
It is connected to the shifter 5 by a data bus 5. The address counter 4 is connected to the image buffer 3 via the address bus.
This circuit generates an address for reading out the memory in the image buffer 3, and the generated address is held in the latch circuit h of the image buffer 3. Data at a predetermined address is read by this access of the address counter 4, and is sent to the shifter 5 in units of 16 bits via the data bus. The shifter 5 takes input 16-bit data into a latch circuit 5a within the shifter 5, and outputs signals C0DEO to 3 from a decoding table 6, which will be described later.
The signals are shifted by the number indicated by and output as signals C0DE15-0.

第6図はシフター5の回路図を示している。2個の16
ビットのラッチ回路1.2と、16本の入力端子DO〜
DI5から1本のみを選択して出力する16個のセレク
タ0〜15からなっている。
FIG. 6 shows a circuit diagram of the shifter 5. two 16s
Bit latch circuit 1.2 and 16 input terminals DO~
It consists of 16 selectors 0 to 15 that select and output only one from DI5.

ラッチ回路2の出力端子はラッチ回路1の入力端子に接
続され、ラッチ回路1及び2の32本の出力端子から連
続した16本の出力端子を順次1本づつずらすようにし
て16組取り出し、この取り出した各々の出力端子はセ
レクタ0〜15の入力端子にそれぞれ接続される。各セ
レクタ0〜■5の選択端子A、B、C,Dにはそれぞれ
前記シフト量を示す信号C0DEO〜3がバイナリ−で
入力されていて、各出力端子YO〜Y15から信号C0
DEO〜15として出力される。制御線7丁PEIがラ
ッチ回路1.2に接続されていて、後述するようにPI
PEIの1回目の立下がりにより、画像バッファ3から
の第1のコードデータBFOUTo〜15がラッチ回路
2に取り込まれ、信号Sr3.16〜SB31として出
力される。このとき、ランチ回路2の入力端子には第2
のコードデータが表われていて、2回目の立下がりによ
り、第2のコードデータがラッチ回路2に5BI6〜S
B31として出力され、又、第1のコードデータがラッ
チ回路1の出力端子にSBO〜5B15として出力され
る。
The output terminal of latch circuit 2 is connected to the input terminal of latch circuit 1, and 16 consecutive sets of 16 output terminals are taken out from the 32 output terminals of latch circuits 1 and 2 by shifting one terminal at a time. Each output terminal taken out is connected to the input terminal of selectors 0 to 15, respectively. Signals C0DEO to 3 indicating the shift amount are input in binary form to the selection terminals A, B, C, and D of each selector 0 to ■5, respectively, and the signal C0DEO to 3 indicating the shift amount is inputted from each output terminal YO to Y15.
It is output as DEO~15. The control line 7 PEI is connected to the latch circuit 1.2, and the PI
When PEI falls for the first time, first code data BFOUTo~15 from the image buffer 3 is taken into the latch circuit 2 and output as signals Sr3.16~SB31. At this time, the input terminal of the launch circuit 2 has a second
When the second falling edge occurs, the second code data is sent to the latch circuit 2 from 5BI6 to S.
The first code data is output as SBO-5B15 to the output terminal of the latch circuit 1.

このようにラッチ回路1.2の出力端子にはSBO〜S
B31の32ビットからなる第1のコードデータと第2
のコードデータとが同時に出力される。選択端子A、B
、C,Dにはシフト量を示ず信号C0DEO〜3が入力
されていて、例えばシフト量として“3”が入力される
と、各セレクタ15〜0の入力端子D3の入力信号SB
3.SB4゜・・・Si217.S[318がそれぞれ
出力端子Yr5〜YOに出力される。従って、32ビッ
トからなるSBO〜SB31の先頭から3ビットソフト
させた16ビットの信号SB3〜SB+8か出力される
In this way, the output terminals of latch circuit 1.2 are connected to SBO to S.
The first code data consisting of 32 bits of B31 and the second
code data is output at the same time. Selection terminal A, B
, C, D are input with signals C0DEO~3 that do not indicate the shift amount. For example, when "3" is input as the shift amount, the input signal SB of the input terminal D3 of each selector 15~0 is input.
3. SB4゜...Si217. S[318 are output to output terminals Yr5 to YO, respectively. Therefore, 16-bit signals SB3 to SB+8, which are softened by 3 bits from the beginning of 32 bits SBO to SB31, are output.

次表は選択端子A、B、C,Dに入力される4ビットの
バイナリ−数値に対して入力端子Do−D+5を選択す
るためのデコード表である。
The following table is a decoding table for selecting input terminal Do-D+5 for 4-bit binary numbers input to selection terminals A, B, C, and D.

尚、この回路図では16ビットのラッチ回路を2個用い
て32ビット構成としたか、32ビットのラッチ回路を
1個用いてもよい。
In this circuit diagram, two 16-bit latch circuits are used to create a 32-bit configuration, or one 32-bit latch circuit may be used.

デコードテーブル6は、シフター5から出力されるMl
l符号による信号C0DE 15〜0を復元オろための
復元回路であり、このデコードテーブル6内の復元用テ
ーブルflOMにより、ラン長としてRLJ N O〜
11のバイナリ−データで1j1力するとともに、この
入力されたMl−1符号のコート長をCOD E O〜
3のバイナリ−データで面記シフター5に送出している
。従って、シフター5内のデータは、デコートテーブル
6で解読したM I■符号長と等しいビット数だけノッ
トされた後、出力されるので、デコードテーブル6に入
力されろ信号C0DE15〜0の上位ビットのC0DE
 I 5に次に解読されるMH符号の先頭が位置するよ
うになる。
The decode table 6 is the Ml output from the shifter 5.
This is a restoring circuit for restoring the signal C0DE 15~0 based on the l code, and using the restoring table flOM in the decoding table 6, the run length is RLJ N O~
1j1 with the binary data of 11, and the coat length of this input Ml-1 code as COD E O~
3 binary data is sent to the notation shifter 5. Therefore, the data in the shifter 5 is output after being knotted by the number of bits equal to the M I code length decoded by the decoding table 6, so the upper bits of the signals C0DE15 to 0 must be input to the decoding table 6. C0DE of
The beginning of the MH code to be decoded next is located at I5.

ラン長カウンタ7は、デコードテーブル6から入力され
たバイナリ−のラン長データをシリアルの黒又は白の信
号BLK/Wl(Tとして出力するととらに、一連のシ
リアルデータを出力する毎に[3L K /W II 
’I’の信号を反転していて、デコードテーブル6から
のデータはこのラン長カウンタ7のラッチ回路7aにラ
ッチされる。
The run length counter 7 outputs the binary run length data inputted from the decode table 6 as a serial black or white signal BLK/Wl(T), and also outputs the binary run length data inputted from the decoding table 6 as a serial black or white signal BLK/Wl(T). /W II
The 'I' signal is inverted, and data from the decode table 6 is latched into the latch circuit 7a of the run length counter 7.

EOL検知回路8は、シフター5からEOL符号が出力
されたとき、これを検知して、その−行を全て白の信号
するための制御線EOLを制御する。
When the EOL code is output from the shifter 5, the EOL detection circuit 8 detects this and controls the control line EOL to signal all of the - rows as white.

出力制御部9は、ラン長カウンタ7からのシリアルデー
タ、或いはEOL検知回路8からのEOL信号を所定の
8ビットのパラレル信号LDDATAO〜7に変換した
後、プリンタのエンジンと接続されるエンジンインタフ
ェースlOに送出している。パイプ信号発生回路12は
上述した各ブロックを制御するため信号を発生する回路
であり、CPU2.ラン長カウンタ7、出力制御部9及
びエンジンインタフェースIOから制御線INPRド「
丁を制御する。
The output control unit 9 converts the serial data from the run length counter 7 or the EOL signal from the EOL detection circuit 8 into a predetermined 8-bit parallel signal LDDATAO~7, and then outputs the signal to an engine interface lO connected to the engine of the printer. It is being sent to The pipe signal generation circuit 12 is a circuit that generates signals to control each of the blocks described above, and is a circuit that generates signals for controlling each of the blocks described above. The control line INPR is connected from the run length counter 7, output control unit 9 and engine interface IO.
Control the ding.

次に上記構成によるブロック図の動作を第7図のタイム
チャートとともに説明する。
Next, the operation of the block diagram of the above configuration will be explained with reference to the time chart of FIG.

CPU2からの制御線[NPRNTが“■]”、即ちノ
ンアクティブになったとき、画像バッファ3は、CPU
2と接続され、CPUIで圧縮されたMH符号が次々に
画像バッファ3に書き込まれる。
When the control line [NPRNT from the CPU 2 becomes “■]”, that is, becomes non-active, the image buffer 3
2, and the MH codes compressed by the CPUI are written into the image buffer 3 one after another.

このCPUモードにおいては、パイプ信号発生回路12
゜アドレスカウンタ4.シフター5.ラン長カウンタ7
及び出力制御部9は初期状態になっている。画像バッフ
ァ3に1頁分のデータが書き込まれると、CPU2は、
制御線を介してエンジンインタフェース10に起動をか
け、更に、T「P RN T = L、即ちアクティブ
にすると、画像バッファ3は、CPU2と切り離されて
アドレスカウンタ4及びシフター5と接続され、又、画
像バッファ3以降の各ブロックは動作状態になり、プリ
ントモードとなる。
In this CPU mode, the pipe signal generation circuit 12
゜Address counter 4. Shifter 5. Run length counter 7
And the output control section 9 is in the initial state. When one page of data is written to the image buffer 3, the CPU 2
When the engine interface 10 is activated via the control line and further made T'PRN T = L, that is, active, the image buffer 3 is disconnected from the CPU 2 and connected to the address counter 4 and shifter 5, and Each block after the image buffer 3 becomes operational and enters print mode.

次に外部エンジンからの1ラインの走査スタート同期信
号がエンジンインタフェースIOに入力されると、制御
線了谷丁はパルス状に立下がる。
Next, when a one-line scan start synchronization signal from the external engine is input to the engine interface IO, the control line RYOYADI falls in a pulsed manner.

これにより、出力制御部9からの制御線ENP lPE
2が“L”、即ち、アクティブになり、パイプ信号発生
回路12からの制御線PIPEI、PIPE2には一定
時間間隔で立下がるパルスが発生する。又、ラン長カウ
ンタ7からの制御線ENPIPEIは制御線PIPEI
のみをイネーブルにさせるための制御線である。PIP
EIは、アドレスカウンタ41画像バッファ3.シフタ
ー5.デコードテーブル6及びラン長カウンタ7に接続
され、又、P[’E2はラン長カウタ7及び出力制御部
9に接続されていて、各ブロックは、PIPEl、PI
PE2に発生するパルスの間隔以内に各々のブロック゛
に割り当てられている処理を完了するようにしている。
As a result, the control line ENP lPE from the output control unit 9
2 becomes "L", that is, active, and pulses that fall at constant time intervals are generated on the control lines PIPEI and PIPE2 from the pipe signal generating circuit 12. Also, the control line ENPIPEI from the run length counter 7 is the control line PIPEI.
This is a control line to enable only the P.I.P.
EI is the address counter 41 image buffer 3. Shifter 5. P['E2 is connected to the decode table 6 and run length counter 7, and P['E2 is connected to the run length counter 7 and output control section 9, and each block has PIPEl, PI
The processing assigned to each block is completed within the interval between pulses generated in PE2.

このプリントモードにおいてアドレスカウンタ4は、P
IPEIの立下がり毎に、カウントしたアドレスをMA
O〜16の17ビットで順次画像バッファ3に送出して
、画像バッファ3のアドレスをアクセスして、メモリに
書き込まれていたデータを読み取り、シフター5にBF
OUTO〜I5の16ビットとして出力させる。尚、シ
フター5からの制御線C0UNTENが“H″のときは
、PIPEIが立下がってもアドレスカウンタ4からは
カウントしたアドレスが送出されないようになっている
In this print mode, the address counter 4 is
Every time IPEI falls, the counted address is MA
The 17 bits from O to 16 are sequentially sent to the image buffer 3, the address of the image buffer 3 is accessed, the data written in the memory is read, and the shifter 5 is sent to the BF.
Output as 16 bits from OUTO to I5. Note that when the control line C0UNTEN from the shifter 5 is "H", the counted address is not sent out from the address counter 4 even if PIPEI falls.

シフター5では。既述したように入力されるデータを取
り込むとともに出力されるC0DE 15〜0の16ビ
ットの上位ビットに次に解読されるMH符号の先頭が来
るようにシフトさせて、デコードテーブル6に送出する
。デコードテーブル6でMII符号はラン長がRUNL
O〜11の12ビットのバイナリ−データとして復元さ
れ、ラン長カウンタ7に送出される。このラン長カウン
タ7からは白又は黒の長さを示すデータがシリアルに出
力され、又白又は黒のシリアルデータを出力する毎に、
白又は黒を示す信号BLK/WHTを反転している。前
記制御線「1丁の立下がりでBLK/WHTはi〜Iレ
ベルに設定されている。次にPIPEIの立下がりによ
り入力されたラン長の値がラン長カウンタ内にプリセッ
トされる。このプリセット値がOのときBLK/WHT
は反転し、又、IのときはPIPE2の立下がりにBL
K/WHTが反転する。このプリセット値が2以上のと
きは、ENPIPElをノンアクティブにしてPIPE
Iの立下がりを禁止してラン長カウンタ部までの動作を
停止させる。そして、PIPE2の立下がりごとに前記
プリセット値を減じ、このプリセット値が1になったと
きにBLK/WH〒が反転し、又、ENP I PEI
をアクティブに復帰させている。出力制御部9は、yσ
了立下がり時に“8”にセットされるカウンタを有し、
V丁V「丁の立下がり毎にラン長カウンタ7からのシリ
アルデータをこの出力制御部9内のラッチ回路9aに取
り込むとともに前記設定された数値がカウントにより1
づつ減じられる。このカウント値が0になると、カウン
ト値を再び8に設定するとともに、ENP I PE2
はノンアクティブとなり、PIPEIとP I PE2
の立下がりが禁止され、各ブロック3,4,5,6,7
.9における動作が停止する。このとき上記ラッチ回路
9aには8ビットのデータがラッチされていて、エンジ
ンインタフェースIOからの制御線LDREQがパルス
状に立下がると、出力制御部9からデータがパラレルの
8ビットLDDATAO〜7としてエンジンインタフェ
ース10を介してエンジンに送出され、このとき、EN
r’1PE2はアクティブに復帰する。出力制御部9に
EOL信号が入力されると無条件でENPrPE2はノ
ンアクティブとなり、この場合、次のスσ「の立下がり
でENP I PE丁はアクティブに戻る。このEOL
信号の発生後、LDREQの立上がりから「1丁の立下
がりまでラン長カウンタ7からの信号を無効にする。
In shifter 5. As described above, the input data is taken in and shifted so that the top of the next MH code to be decoded is placed in the upper bits of the 16 bits of output C0DE 15 to 0, and then sent to the decoding table 6. In decode table 6, the MII code has a run length of RUNL.
It is restored as 12-bit binary data of 0 to 11 and sent to the run length counter 7. This run length counter 7 serially outputs data indicating the length of white or black, and each time it outputs white or black serial data,
The signal BLK/WHT indicating white or black is inverted. When the control line "1" falls, BLK/WHT is set to i to I level. Next, when the PIPEI falls, the input run length value is preset in the run length counter. This preset BLK/WHT when the value is O
is inverted, and when it is I, BL is applied at the falling edge of PIPE2.
K/WHT is inverted. When this preset value is 2 or more, ENPIPE1 is deactivated and PIPE
The falling of I is prohibited and the operation up to the run length counter section is stopped. Then, the preset value is subtracted every time PIPE2 falls, and when this preset value becomes 1, BLK/WH〒 is inverted, and ENP I PEI
is being returned to active. The output control unit 9 controls yσ
It has a counter that is set to “8” at the falling edge of the signal.
At each falling edge of V, the serial data from the run length counter 7 is taken into the latch circuit 9a in the output control section 9, and the set value is counted up to 1.
It is reduced by increments. When this count value becomes 0, the count value is set to 8 again and ENP I PE2
becomes inactive, and PIPEI and PIPPE2
falling is prohibited, and each block 3, 4, 5, 6, 7
.. The operation at 9 stops. At this time, 8-bit data is latched in the latch circuit 9a, and when the control line LDREQ from the engine interface IO falls in a pulsed manner, the data is sent from the output control section 9 to the engine as parallel 8-bit LDDATAO~7. is sent to the engine via the interface 10, and at this time the EN
r'1PE2 returns to active. When the EOL signal is input to the output control unit 9, ENPrPE2 becomes non-active unconditionally, and in this case, ENPrPE2 returns to active at the next fall of σ.
After the signal is generated, the signal from the run length counter 7 is invalidated from the rising edge of LDREQ until the falling edge of LDREQ.

以上説明したようにこの実施例では、信号の処理を各ブ
ロックで段階的に行なうのではなく、各ブロックを同一
のパイプ信号によるクロックパルスで制御することによ
り、各ブロックでそれぞれ割り当てられた信号処理を前
記クロックのパルス間隔内で並行して行なっている。即
ち、アドレスカウンタ4の発生するアドレスが、制御線
PIPElによるパルスにより、a−+b→C+d→e
→rと変化していくとき、fのアドレスを発生した時点
L1では画像バッファ3はeのアドレスを取り込み、次
のパルスが発生ずる時点【tまでにeのアドレスに対応
するデータを出力として準備する。シフタ−5は時点t
1でdのアドレスにより発生した画像バッファ3の出力
BFOUTO〜15を取り込み、時点t2までにdのア
ドレスに対応するRLINO〜11を出ノ〕として準備
する。ラン長カウンタ7は時点t1でCのアドレスによ
りデコードテーブル6から発生したRUNLO〜11を
取り込み、又、出力制御部9はbのアドレスによりラン
長カウンタ7で発生したBLK/WH〒を取り込んでい
る。
As explained above, in this embodiment, signal processing is not performed step by step in each block, but by controlling each block with a clock pulse from the same pipe signal, the signal processing assigned to each block is are performed in parallel within the pulse interval of the clock. That is, the address generated by the address counter 4 changes from a-+b→C+d→e by the pulse from the control line PIPEl.
→ r, the image buffer 3 takes in the address of e at time L1 when the address of f is generated, and prepares the data corresponding to the address of e as output by time t when the next pulse is generated. do. Shifter 5 is at time t
1, the output BFOUTO~15 of the image buffer 3 generated by the address d is taken in, and RLINO~11 corresponding to the address d is prepared as an output by time t2. The run length counter 7 takes in RUNLO~11 generated from the decode table 6 at the address of C at time t1, and the output control section 9 takes in the BLK/WH generated by the run length counter 7 according to the address of b. .

このように各ブロックはそれぞれ異なる別のデータに対
する処理を同一のタイミング内で行なうので、上述のブ
ロック図において高速に信号を処理することができる。
In this way, each block processes different data within the same timing, so signals can be processed at high speed in the above block diagram.

又、シフター5はパラレルシフターとしたので1回のシ
フト動作により最大16ビットのデータがシフトでき圧
縮データの復元が高速になる。尚、上記実施例は画像形
成装置として電子写真方式を利用したプリンタについて
記載したが、本発明は一般に副走査方向の速度がかえら
れない画像形成装置、例えばCRT表示装置にも適用で
きる。
Furthermore, since the shifter 5 is a parallel shifter, a maximum of 16 bits of data can be shifted in one shift operation, and the compressed data can be restored at high speed. Although the above embodiment has been described with respect to a printer using an electrophotographic method as an image forming apparatus, the present invention is generally applicable to an image forming apparatus in which the speed in the sub-scanning direction cannot be changed, such as a CRT display apparatus.

[発明の効果] この発明によるデータ復元回路は、画像データの圧縮デ
ータを記憶しているメモリと、圧縮データを復元する復
元用テーブルの間にパラレル信号を受けろパラレルシフ
ターを設けて、上記圧縮データのメモリと復元用テーブ
ルとの間のデータの授受をパラレル処理するようにした
ので、1回のシフト動作でメモリからの所定の圧縮デー
タを前記パラレルシフターに入力して処理することがで
き、たとえば画像データをプリンタに転送するためのイ
ンタフェースにおいて圧縮データを高速に復元処理する
ことができる。
[Effects of the Invention] The data restoration circuit according to the present invention includes a parallel shifter for receiving parallel signals between a memory storing compressed data of image data and a restoration table for restoring the compressed data, and Since the transfer of data between the memory and the restoration table is processed in parallel, predetermined compressed data from the memory can be input to the parallel shifter and processed in one shift operation, for example. Compressed data can be restored at high speed in an interface for transferring image data to a printer.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図はこの発明を適用したプリンタの概要を示すブロ
ック図、第2図は圧縮変換テーブル内に格納されている
変換用データのビット配列図、第3図はメモリに書き込
まれるMH符号の配列図、第4図は復元用テーブルRO
Mから出力されるバイナリ−による復元データの配列図
、第5図はこの発明の1実施例を示すブロック図、第6
図は第5図におけるシフターの配線図、第7図は第5図
のブロック図における動作を示すタイムチャート、第8
図は従来の復元方式を示すブロック図である。 l・・・外部インタフェース、  2・・・CPU。 3・・・画像バッファ、 4・・・アドレスカウンタ、
5・・・シフター、  6・・・デコードテーブル、7
・・・ラン長カウンタ、  8・・EOL検出回路、9
・・出力制御部、lO・・・エンジンインタフェース、
11・・・ダイナミックラム制御部、 12・・パイプ信号発生回路。
Fig. 1 is a block diagram showing an overview of a printer to which this invention is applied, Fig. 2 is a bit arrangement diagram of conversion data stored in a compression conversion table, and Fig. 3 is an arrangement of MH codes written in memory. Figure 4 shows the restoration table RO.
FIG. 5 is a block diagram showing one embodiment of the present invention, and FIG.
The figure is a wiring diagram of the shifter in Figure 5, Figure 7 is a time chart showing the operation in the block diagram of Figure 5, and Figure 8 is a wiring diagram of the shifter in Figure 5.
The figure is a block diagram showing a conventional restoration method. l...External interface, 2...CPU. 3... Image buffer, 4... Address counter,
5... Shifter, 6... Decode table, 7
...Run length counter, 8...EOL detection circuit, 9
...output control unit, lO...engine interface,
11...Dynamic ram control unit, 12...Pipe signal generation circuit.

Claims (3)

【特許請求の範囲】[Claims] (1)画像データのラン長を符号化して記憶するメモリ
と、このメモリから所定のビット数で出力されたデータ
を適宜シフトさせることにより、次に復元されるラン長
符号がデータの先頭となるようにして出力するシフター
回路と、前記シフター回路から出力されたラン長符号を
復元し、そのラン長をバイナリーコードで出力する復元
メモリとから構成されるデータ復元回路であって、前記
シフターにパラレルシフターを用いたことを特徴とする
データ復元回路。
(1) A memory that encodes and stores the run length of image data, and by appropriately shifting the data output from this memory with a predetermined number of bits, the run length code to be restored next becomes the beginning of the data. A data restoration circuit comprising a shifter circuit that outputs the data as described above, and a restoration memory that restores the run length code outputted from the shifter circuit and outputs the run length as a binary code, A data restoration circuit characterized by using a shifter.
(2)上記シフターは、2nビットBI_1〜BI_2
nを入力として2nビットBO_1〜BO_2nを出力
とするラッチ回路と、nビットを入力とし、このnビッ
トに中から1ビットのみをセレクト用入力端子So−S
mの状態により選択して出力するn個のセレクタとで構
成され、第1のセレクタにはBO_1〜BOnのnビッ
トが入力され、第2のセレクタにはBO_2〜BOn_
+_1が入力され、このように2nビットのBO_1〜
BO_2nから連続したnビットが順次1ビットづつず
れて入力されるように接続され、更に各セレクタのセレ
クト用入力端子は相互に接続されている特許請求の範囲
第1項記載のデータ復元回路。
(2) The above shifter has 2n bits BI_1 to BI_2
A latch circuit that takes n as an input and outputs 2n bits BO_1 to BO_2n, and an input terminal So-S that takes n bits as an input and selects only one bit from among these n bits.
The first selector receives n bits of BO_1 to BOn, and the second selector receives n bits of BO_2 to BOn_.
+_1 is input, and like this 2n bits of BO_1~
2. The data restoration circuit according to claim 1, wherein the connection is such that consecutive n bits from BO_2n are sequentially input with a shift of 1 bit, and the selection input terminals of each selector are connected to each other.
(3)上記シフターのラッチ回路は、nビットの2個の
ラッチ回路からなり、第1のラッチ回路の出力を第2の
ラッチ回路の入力とし、第1のラッチ回路のnビットの
出力と、第2のラッチ回路のnビットの出力とで2nビ
ットの出力となるように構成し、第1のラッチ回路には
nビットBI_1〜BInを入力し、第1のラッチタイ
ミングでBI_1〜BInをラッチし、BO_1〜BO
nとして出力し、第2のラッチタイミングでは第1のラ
ッチ回路の入力に表われるBIn_+_1〜BI_2n
をラッチしてBOn_+_1〜BO_2nとして出力す
るとともに、第1のラッチタイミングで、第1のラッチ
回路でラッチされた出力データBO_1〜BOnをラッ
チし、BO_1〜BO_2nの2nビットとして出力す
る特許請求の範囲第2項記載のデータ復元回路。
(3) The latch circuit of the shifter consists of two n-bit latch circuits, the output of the first latch circuit is used as the input of the second latch circuit, and the n-bit output of the first latch circuit is used as the input of the second latch circuit. The n-bit output of the second latch circuit is configured to provide a 2n-bit output, and the n-bit BI_1 to BIn is input to the first latch circuit, and BI_1 to BIn are latched at the first latch timing.し、BO_1〜BO
BIn_+_1 to BI_2n which is output as n and appears at the input of the first latch circuit at the second latch timing.
is latched and outputted as BOn_+_1 to BO_2n, and at the same time, at the first latch timing, the output data BO_1 to BOn latched by the first latch circuit is latched and outputted as 2n bits of BO_1 to BO_2n. The data restoration circuit according to item 2.
JP14807585A 1985-07-03 1985-07-04 Data restoring circuit Pending JPS628662A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP14807585A JPS628662A (en) 1985-07-04 1985-07-04 Data restoring circuit
US07/268,633 US4864414A (en) 1985-07-03 1988-11-08 Image signal processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14807585A JPS628662A (en) 1985-07-04 1985-07-04 Data restoring circuit

Publications (1)

Publication Number Publication Date
JPS628662A true JPS628662A (en) 1987-01-16

Family

ID=15444656

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14807585A Pending JPS628662A (en) 1985-07-03 1985-07-04 Data restoring circuit

Country Status (1)

Country Link
JP (1) JPS628662A (en)

Similar Documents

Publication Publication Date Title
EP0022490B1 (en) System and method for effecting orthogonal rotation of the scan direction of a digital raster image representation
US4881180A (en) Character image generating circuit
US4441208A (en) Picture information processing and storing device
EP0734126A1 (en) Two-stage compression with runlength encoding and lempel-ziv encoding
US4727497A (en) Decoder
US5245441A (en) Document imaging processing method and apparatus
US4809081A (en) Method and apparatus for decompressing encoded data
US5889893A (en) Method and apparatus for the fast rotation of an image
US5673209A (en) Apparatus and associated method for compressing and decompressing digital data
US5452405A (en) Method and apparatus for delta row decompression
US4618846A (en) Data coding
KR930006750B1 (en) Image data coding device
EP0746143B1 (en) A method of and system for compressing and decompressing digital image signals
US5822504A (en) Font packing device and font unpacking device
US5337409A (en) Parallel/serial data conversion system
JPS628662A (en) Data restoring circuit
JPS60502082A (en) Pixel generator for facsimile receiver
US5408615A (en) Direct memory access method and memory control apparatus
US6473530B2 (en) Encoding and decoding apparatuses and image processing apparatus using the same
JPS628663A (en) Data recovering circuit
US4864414A (en) Image signal processing device
JPS627269A (en) Image information processor
US5337156A (en) Image output device and facsimile management report output method
JPH11306343A (en) 2D data rotation processor
JPS5856872B2 (en) Expanded character pattern encoder