(57)【特許請求の範囲】
【請求項１】
画像データを入力する入力手段と、
前記入力手段により入力された画像データを記憶するバッファメモリと、
前記バッファメモリに格納された画像データに基づいて画像処理を実行する第１画像処理手段であって、画像処理を実行する際に第１ライン数分の画像データを必要とする第１画像処理手段と、
前記バッファメモリに格納された画像データに基づいて画像処理を実行する第２画像処理手段であって、画像処理を実行する際に前記第１ライン数分とは異なる第２ライン数分の画像データを必要とする第２画像処理手段と、
前記第１画像処理手段又は前記第２画像処理手段により画像処理が実行された画像データに基づいて画像形成を行う画像形成手段と、
前記バッファメモリへの画像データの入力、及び前記バッファメモリからの画像データの出力を制御するバッファメモリ制御手段とを有し、
前記バッファメモリ制御手段は、前記第１画像処理手段へ画像データを出力するための第１読み出し要求を受け付けた場合に、該第１読み出し要求に対して前記第１ライン数分の画像データの各ラインから一部の画像データを前記バッファメモリから前記第１画像処理手段に出力するよう制御し、前記第２画像処理手段へ画像データを出力するための第２読み出し要求を受け付けた場合に、該第２読み出し要求に対して前記第２ライン数分の画像データの各ラインから一部の画像データを前記バッファメモリから前記第２画像処理手段に出力するよう制御することを特徴とするバッファメモリ制御装置。
【請求項２】
前記バッファメモリ制御手段は、前記入力手段により入力された画像データを前記バッファメモリに書き込むための書き込みアドレスを生成する書き込みアドレス制御部を有し、
前記書き込みアドレス制御部は、前記バッファメモリから前記第１画像処理手段に画像データが出力される場合は、少なくとも前記第１ライン数分の画像データが前記バッファメモリに割り付けられるよう前記書き込みアドレスを生成し、前記バッファメモリから前記第２画像処理手段に画像データが出力される場合は、少なくとも前記第２ライン数分の画像データが前記バッファメモリに割り付けられるよう前記書き込みアドレスを生成することを特徴とする請求項１記載のバッファメモリ制御装置。
【請求項３】
前記書き込みアドレス制御部は、前記バッファメモリから前記第１画像処理手段に画像データが出力される場合と、前記バッファメモリから前記第２画像処理手段に画像データが出力される場合とで、１ラインのデータ長が異なるように前記書き込みアドレスを生成することを特徴とする請求項２記載のバッファメモリ制御装置。
【請求項４】
前記バッファメモリ制御手段は、前記バッファメモリから画像データを読み出すための読み出しアドレスを生成する読み出しアドレス制御部を有し、
前記読み出しアドレス制御部は、
１ライン分の画像データから前記一部の画像データを読み出す度にカウント値を変化させる第１カウンタが保持する第１カウント値と、
前記第１読み出し要求又は前記第２読み出し要求を受け付けた場合に該読み出し要求に対して１ラインの画像データから前記一部の画像データを読み出すたびにカウント値を変化させる第２カウンタが保持する第２カウント値とに基づいて、前記読み出しアドレスを生成することを特徴とする請求項１乃至３のいずれか１項に記載のバッファメモリ制御装置。
【請求項５】
前記第１カウンタが保持する前記第１カウント値は、前記１ライン分の画像データが読み出されたことに応じてリセットされ、
前記第２カウンタが保持する前記第２カウント値は、前記第１読み出し要求を受け付けた場合は前記第１ライン数分の前記一部の画像データが読み出されたことに応じてリセットされ、前記第２読み出し要求を受け付けた場合は前記第２ライン数分の前記一部の画像データが読み出されたことに応じてリセットされることを特徴とする請求項４記載のバッファメモリ制御装置。
【請求項６】
前記バッファメモリ制御手段は、前記バッファメモリからパラレルに読み出される前記一部の画像データをシリアルに変換して出力する変換部を有することを特徴とする請求項１乃至５のいずれか１項に記載のバッファメモリ制御装置。
【請求項７】
複数の前記入力手段と、
前記複数の入力手段のいずれから前記画像データを入力するかを選択する選択手段とを有し、
前記バッファメモリ制御手段は、前記選択手段により選択された入力手段により入力された画像データを前記バッファメモリに格納するよう制御することを特徴とする請求項１乃至６のいずれか１項に記載のバッファメモリ制御装置。
【請求項８】
画像処理の参照用バッファメモリと、
複数の画像供給手段の中から１つの画像供給手段を選択し前記バッファメモリに画像を供給する入力選択手段と、
前記バッファメモリから読出された画像データに対し対応する処理を施す複数の画像処理手段と、
前記複数の画像処理手段の中から対応する画像処理手段を設定された機能モードに応じて選択する処理選択手段と、
前記処理選択手段により選択された画像処理手段により処理が施された画像データに基づいて画像形成を行う画像形成手段と、
前記入力選択手段で選択された画像供給手段からの画像格納要求信号と前記処理選択手段で選択された画像処理手段からの画像読出し要求信号とを調停するメモリアクセス調停手段と、
前記入力選択手段で選択された画像供給手段からの画像データを前記バッファメモリへ格納する際に前記バッファメモリを前記選択された画像処理手段に応じて複数のラインに分割して該分割された各ラインにアクセスしかつ各ラインに対応する画像データを格納するように書込アドレス制御を行うとともに、前記処理選択手段で選択された画像処理手段により前記バッファメモリから対応する画像データを読み出す際に前記分割された各ラインにアクセスしかつ各ラインから画像データを読み出すように読出しアドレス制御を行うアドレス制御手段とを備え、
前記アドレス制御手段は、前記画像形成手段による１ページの画像データに対する画像形成中に前記選択された画像供給手段から入力される画像データの各画像ブロック毎に前記処理選択手段により選択される画像処理手段が切り替えられるモードが設定されているときには、前記選択された画像処理手段毎に必要となる参照ラインの数を可変しながら該参照ラインを含む複数のラインにまたがる画像データを取り出すように読出しアドレス制御を行うことを特徴とするバッファメモリ制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、バッファメモリ制御装置に関する。
【０００２】
【従来の技術】
一般に、レーザビームプリンタ（ＬＢＰ）などの記録装置では、水平および垂直同期信号に同期させながら、ポリゴンミラー面数およびその回転速度に応じて決定される固有の画像転送速度で画像データをプリンタエンジンに対し連続的に出力させる必要がある。このため、例えばデジタルコピー装置などにおいて、スキャナ部の画像転送クロックがプリンタエンジンへの画像転送クロックと異なる場合には、２ラインのラインバッファメモリを用いて画像転送クロックの速度変換を行う方法が採用されている。具体的には、スキャナ部から出力される画像データのメモリ書込タイミングおよびプリンタエンジンへ供給される画像データのメモリ読出しタイミングで各ラインバッファメモリを交互にアクセスし、２ラインのラインバッファメモリを速度吸収バッファとして用いることによって画像転送クロックの速度変換を行う。また、デジタルコピー装置では、画像を用紙上に形成するための記録画像処理として前記ラインバッファメモリの後段で画像データをレーザビームのオン／オフ信号に変換するための変換処理が行われている。
【０００３】
同様に、ファクシミリ装置などの通信装置においても、符号化された画像データを復号器で復号化しながら記録する際に復号器の画像供給速度が一定でないことにより、２ラインのラインバッファメモリを用いて画像転送クロックの速度変換が行われている。また、ファクシミリ装置では、プリンタエンジンの記録解像度と画像ファイルの画像データの解像度が異なることから、必要に応じてラインバッファメモリの後段で解像度変換処理を行いながらプリンタエンジンに画像データを供給している。この解像度変換処理に際し斜線部の輪郭平滑化のための画像処理が実行可能なように、この画像処理のための参照バッファメモリが別途設けられている。
【０００４】
【発明が解決しようとする課題】
近年、コピー機能、ファクシミリ機能、プリンタ機能の各機能を複合化した装置が出現し、この複合化装置は、様々の種類の解像度や深さを有する画像データを同一のプリンタエンジンで出力するように構成されている。このように構成された複合化装置では、符号化部、スキャナ部などのプリンタエンジンへの画像供給装置毎に転送速度変換に用いられる速度吸収ラインバッファメモリが設けられているとともに、解像度変換処理、二値化処理などの各機能別画像処理毎にライン参照用バッファメモリが設けられている。
【０００５】
よって、この従来の複合化装置では、コピー機能、ファクシミリ機能、プリンタ機能などの各機能の複合化により複合化された機能数に応じてバッファメモリの数が増すから、装置構成が複雑化する傾向がある。
【０００６】
本発明の目的は、コピー機能、ファクシミリ機能、プリンタ機能などの各機能の複合化による装置構成の複雑化を阻止することができるバッファメモリ制御装置を提供することにある。
【０００８】
【課題を解決するための手段】
請求項１記載の発明は、画像データを入力する入力手段と、前記入力手段により入力された画像データを記憶するバッファメモリと、前記バッファメモリに格納された画像データに基づいて画像処理を実行する第１画像処理手段であって、画像処理を実行する際に第１ライン数分の画像データを必要とする第１画像処理手段と、前記バッファメモリに格納された画像データに基づいて画像処理を実行する第２画像処理手段であって、画像処理を実行する際に前記第１ライン数分とは異なる第２ライン数分の画像データを必要とする第２画像処理手段と、前記第１画像処理手段又は前記第２画像処理手段により画像処理が実行された画像データに基づいて画像形成を行う画像形成手段と、前記バッファメモリへの画像データの入力、及び前記バッファメモリからの画像データの出力を制御するバッファメモリ制御手段とを有し、前記バッファメモリ制御手段は、前記第１画像処理手段へ画像データを出力するための第１読み出し要求を受け付けた場合に、該第１読み出し要求に対して前記第１ライン数分の画像データの各ラインから一部の画像データを前記バッファメモリから前記第１画像処理手段に出力するよう制御し、前記第２画像処理手段へ画像データを出力するための第２読み出し要求を受け付けた場合に、該第２読み出し要求に対して前記第２ライン数分の画像データの各ラインから一部の画像データを前記バッファメモリから前記第２画像処理手段に出力するよう制御することを特徴とする。
【０００９】
請求項２記載の発明は、請求項１記載のバッファメモリ制御装置において、前記バッファメモリ制御手段は、前記入力手段により入力された画像データを前記バッファメモリに書き込むための書き込みアドレスを生成する書き込みアドレス制御部を有し、前記書き込みアドレス制御部は、前記バッファメモリから前記第１画像処理手段に画像データが出力される場合は、少なくとも前記第１ライン数分の画像データが前記バッファメモリに割り付けられるよう前記書き込みアドレスを生成し、前記バッファメモリから前記第２画像処理手段に画像データが出力される場合は、少なくとも前記第２ライン数分の画像データが前記バッファメモリに割り付けられるよう前記書き込みアドレスを生成することを特徴とする。
【００１０】
請求項３記載の発明は、請求項２記載のバッファメモリ制御装置において、前記書き込みアドレス制御部は、前記バッファメモリから前記第１画像処理手段に画像データが出力される場合と、前記バッファメモリから前記第２画像処理手段に画像データが出力される場合とで、１ラインのデータ長が異なるように前記書き込みアドレスを生成することを特徴とする。
【００１１】
請求項４記載の発明は、請求項１乃至３のいずれか１項に記載のバッファメモリ制御装置において、前記バッファメモリ制御手段は、前記バッファメモリから画像データを読み出すための読み出しアドレスを生成する読み出しアドレス制御部を有し、前記読み出しアドレス制御部は、１ライン分の画像データから前記一部の画像データを読み出す度にカウント値を変化させる第１カウンタが保持する第１カウント値と、前記第１読み出し要求又は前記第２読み出し要求を受け付けた場合に該読み出し要求に対して１ラインの画像データから前記一部の画像データを読み出すたびにカウント値を変化させる第２カウンタが保持する第２カウント値とに基づいて、前記読み出しアドレスを生成することを特徴とする。
【００１２】
請求項５記載の発明は、請求項４記載のバッファメモリ制御装置において、前記第１カウンタが保持する前記第１カウント値は、前記１ライン分の画像データが読み出されたことに応じてリセットされ、前記第２カウンタが保持する前記第２カウント値は、前記第１読み出し要求を受け付けた場合は前記第１ライン数分の前記一部の画像データが読み出されたことに応じてリセットされ、前記第２読み出し要求を受け付けた場合は前記第２ライン数分の前記一部の画像データが読み出されたことに応じてリセットされることを特徴とする。
【００１３】
請求項６記載の発明は、請求項１乃至５のいずれか１項に記載のバッファメモリ制御装置において、前記バッファメモリ制御手段は、前記バッファメモリからパラレルに読み出される前記一部の画像データをシリアルに変換して出力する変換部を有することを特徴とする。
【００１４】
請求項７記載の発明は、請求項１乃至６のいずれか１項に記載のバッファメモリ制御装置において、複数の前記入力手段と、前記複数の入力手段のいずれから前記画像データを入力するかを選択する選択手段とを有し、前記バッファメモリ制御手段は、前記選択手段により選択された入力手段により入力された画像データを前記バッファメモリに格納するよう制御することを特徴とする。
【００１５】
請求項８記載の発明は、画像処理の参照用バッファメモリと、複数の画像供給手段の中から１つの画像供給手段を選択し前記バッファメモリに画像を供給する入力選択手段と、前記バッファメモリから読出された画像データに対し対応する処理を施す複数の画像処理手段と、前記複数の画像処理手段の中から対応する画像処理手段を設定された機能モードに応じて選択する処理選択手段と、前記処理選択手段により選択された画像処理手段により処理が施された画像データに基づいて画像形成を行う画像形成手段と、前記入力選択手段で選択された画像供給手段からの画像格納要求信号と前記処理選択手段で選択された画像処理手段からの画像読出し要求信号とを調停するメモリアクセス調停手段と、前記入力選択手段で選択された画像供給手段からの画像データを前記バッファメモリへ格納する際に前記バッファメモリを前記選択された画像処理手段に応じて複数のラインに分割して該分割された各ラインにアクセスしかつ各ラインに対応する画像データを格納するように書込アドレス制御を行うとともに、前記処理選択手段で選択された画像処理手段により前記バッファメモリから対応する画像データを読み出す際に前記分割された各ラインにアクセスしかつ各ラインから画像データを読み出すように読出しアドレス制御を行うアドレス制御手段とを備え、前記アドレス制御手段は、前記画像形成手段による１ページの画像データに対する画像形成中に前記選択された画像供給手段から入力される画像データの各画像ブロック毎に前記処理選択手段により選択される画像処理手段が切り替えられるモードが設定されているときには、前記選択された画像処理手段毎に必要となる参照ラインの数を可変しながら該参照ラインを含む複数のラインにまたがる画像データを取り出すように読出しアドレス制御を行うことを特徴とする。
【００２０】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照しながら説明する。
【００２１】
図１は本発明のバッファメモリ制御装置の実施の一形態を搭載するコピー・ファクシミリ装置の構成を示すブロック図である。
【００２２】
コピー・ファクシミリ装置は、図１に示すように、ＲＯＭ２００に格納されている制御プログラムおよびフォントデータなどに基づきコピー機能およびファクシミリ機能を実行するように装置全体を制御するＣＰＵ１００と、ＣＰＵ１００の演算、処理の結果を一時的に格納する作業エリアおよび画像データを格納する画像ファイル格納エリアとして用いられるＲＡＭ３００とを備える。
【００２３】
ＲＡＭ３００の画像ファイル格納エリアに格納される画像データとしては、モデム５００で受信した符号化された画像データ、コンピュータからセントロインタフェイス部（以下、セントロＩ／Ｆ部という）６００を介して入力された画像データ、スキャナ７００で読み込まれ符号化部８００で符号化された画像データがある。
【００２４】
モデム５００は、電話回線を介してデータの送受信を行うために、データの変復調を行う。このモデム５００を介してＭＨ，ＭＲ，ＭＭＲなどにより符号化された画像データの送受信が行われる。
【００２５】
セントロＩ／Ｆ部６００は、本装置に接続されるコンピュータからの画像データの受信およびスキャナ７００で読み取られた画像データやモデム５００で受信した画像データのコンピュータへの送信を行う。
【００２６】
スキャナ７００は原稿画像を読み取り、この読み取りによって得られた画像データは１画素当りｎビットのデジタル画像として出力される。このスキャナ７００では、読取解像度およびデータの深さ（１画素当りのビット数）を所定の範囲内で任意に可変することができる。例えば、原稿画像をモデム５００から電話回線を介して他のＧ３ファクシミリ装置に送信する場合には、２０３．２ｄｐｉ×９７．９ｄｐｉまたは２０３．２ｄｐｉ×１９５．５８ｄｐｉの二値画像（１画素１ビット）として原稿画像の読取りを行う。これに対し、コピーモード時には、解像度を最大限に活用するために、４００ｄｐｉ×６００ｄｐｉの解像度の４値画像（１画素２ビット）として原稿画像の読取りを行う。
【００２７】
符号化部８００は、スキャナ７００からの二値画像データをＭＨ，ＭＲ，ＭＭＲなどの画像圧縮方式により符号化する。この符号化された画像データは内部バス１６００を介してＲＡＭ３００に転送され、ＲＡＭ３００の画像ファイル格納エリアに一旦蓄積される。
【００２８】
ＲＡＭ３００の画像ファイル格納エリアに格納されている符号化された画像データは読み出され、内部バス１６００を介して復号化部９００に転送される。復号化部９００は、ＲＡＭ３００から読み出された画像データをデコードし、デコードされた画像データはラインバッファメモリ制御部１０００に出力される。
【００２９】
ラインバッファメモリ制御部１０００は、復号化部９００からの画像データ以外に、スキャナ７００からの画像データ、ＲＡＭ３００から直接読み出された画像データを入力する。復号化部９００、スキャナ７００、ＲＡＭ３００の各デバイスからの画像データの入力速度はそれぞれ異なり、各入力された画像データはライン単位でラインバッファメモリ１０１０に一旦蓄積される。ラインバッファメモリ１０１０に蓄積された画像データは、プリンタエンジンを構成するレーザビームプリンタ（以下、ＬＢＰという）１５００からの同期信号に同期させながら後段の各画像処理部Ａ１１００、画像処理部Ｂ１２００または画像処理部Ｃ１３００の内のいずれか１つに供給される。画像処理部Ａ１１００、画像処理部Ｂ１２００または画像処理部Ｃ１３００への画像データ供給時には、各画像処理部が必要とする参照ライン数分のデータを同時に供給することが可能である。なお、このラインバッファメモリ制御部１０００の詳細については後述する。
【００３０】
画像処理部Ａ１１００は、コピー機能に対する画像処理を行い、スキャナ７００より出力された４００ｄｐｉ×６００ｄｐｉの４値の画像データを１２００ｄｐｉ単位でＬＢＰ１５００のレーザドライバのＯＮ／ＯＦＦ信号に変換する変換処理を行う。なお、この処理においては、副走査方向への画像データの参照を必要としない。
【００３１】
画像処理部Ｂ１２００は、コンピュータから入力される画像データ、モデム５００で受信した低解像度の画像データをＬＢＰ１５００で記録する際に文字部の輪郭部を滑らかに補間するための輪郭平滑化処理を行う。この処理においては、副走査方向に９ラインの参照データを必要とする。
【００３２】
画像処理部Ｃ１３００は、セントロＩ／Ｆ部６００またはモデム５００を介して取り込まれた疑似中間調の画像データを変倍して記録する際に階調制を保持しながら変倍処理を行う。この処理においては、副走査方向に２ラインの参照データを必要とする。なお、ここでは、各画像処理部Ａ１１００、画像処理部Ｂ１２００、画像処理部Ｃ１３００の処理内容の詳細についての説明は省略する。
【００３３】
画像処理部Ａ１１００、画像処理部Ｂ１２００または画像処理部Ｃ１３００で処理された画像データはセレクタ１４００を介してＬＢＰ１５００に供給される。ＬＢＰ１５００は、上述したように、レーザビームプリンタからなり、その構成についての説明は省略する。
【００３４】
ＣＰＵ１００に対する指示、モード設定などは、操作部４００の入力操作によって行われる。操作部４００は、ＬＣＤ、ＬＥＤ表示部およびキー入力部（図示せず）から構成され、ユーザとのインタフェイスを司る。ユーザによる操作入力は内部バス１６００を介してＣＰＵ１００に転送される。
【００３５】
次に、ラインバッファメモリ制御部１０００の詳細について図２を参照しながら説明する。図２は図１のコピー・ファクシミリ装置に搭載されているラインバッファメモリ制御部の構成を示すブロック図、図３は図２のラインバッファメモリの画像処理に応じた割付けを示す図である。
【００３６】
ラインバッファメモリ制御部１０００は、図２に示すように、４４８０ｗｏｒｄ×８ｂｉｔの同期式ＳＲＡＭからなるラインバッファメモリ１０１０を有する。ラインバッファメモリ１０１０のワード幅は８ｂｉｔであるから、ラインバッファメモリ１０１０のアクセスは８ｂｉｔ単位で行われる。
【００３７】
ラインバッファメモリ１０１０は、その画像データの読出しにおいてその読み出された画像データの出力先となる各画像処理部Ａ１１００，Ｂ１２００，Ｃ１３００（図１に示す）に応じて複数のラインバッファとして割り付けられる。具体的には、図３に示すように、画像処理部Ａ１１００が選択された場合、画像処理部Ａ１１００においては副走査方向への画像データの参照を必要としないから、ラインバッファメモリ１０１０は、２ラインのトグルバッファメモリとして動作するように、１ラインのデータ長が１７９２バイトで２ラインのバッファメモリとして割り付けられる。画像処理部Ｂ１２００が選択された場合、画像処理部Ｂ１２００では副走査方向に９ラインの参照データを必要とするから、ラインバッファメモリ１０１０は、参照ライン９ライン、速度吸収用ライン１ラインの計１０ラインのトグルバッファメモリとして動作するように、１ラインのデータ長が４４８バイトで１０ラインのバッファメモリとして割り付けられる。
【００３８】
画像処理部Ｃ１３００が選択された場合、画像処理部Ｃ１３００では、副走査方向に２ラインの参照データを必要とするから、ラインバッファメモリ１０１０は、２つの参照ライン、３つの速度吸収用ラインの計５ラインのトグルバッファメモリとして動作するように、１ラインのデータ長が８９６バイトで５ラインのバッファメモリとして割り付けられる。なお、本実施の形態では、通常解像度であれば参照ライン数を少なくしても良好な画像が得られる傾向にあることにより、解像度が通常解像度より低い画像データ（１ラインのデータ長が少ない画像）を処理する場合には、画像処理のための参照ライン数を増し、解像度が通常解像度より高い画像データを処理する場合には、画像処理のための参照ライン数を少なくするように１つのラインバッファメモリ１０１０の割付けを行い、ラインバッファメモリ１０１０の有効利用が図られている。
【００３９】
ラインバッファメモリ１０１０へ書き込まれる画像データは、スキャナＩ／Ｆ部１０２０、復号器Ｉ／Ｆ部１０３０、ＤＭＡＩ／Ｆ部１０４０の各Ｉ／Ｆ部から入力される。スキャナＩ／Ｆ部１０２０、復号器Ｉ／Ｆ部１０３０、ＤＭＡＩ／Ｆ部１０４０の各Ｉ／Ｆ部では、上述したようにラインバッファメモリ１０１０のアクセスが８ｂｉｔ単位で行われるすなわち８ｂｉｔ単位での書込が行われることにより、画像データを８ｂｉｔ単位にパッキングするパック処理を行う。
【００４０】
具体的には、スキャナＩ／Ｆ部１０２０には、スキャナ７００から画像転送クロックに同期にして主走査方向に４００ｄｐｉの解像度、副走査方向に６００ｄｐｉの解像度をそれぞれ有する１画素２ｂｉｔの画像データが入力される。スキャナＩ／Ｆ部１０２０では、パック処理毎にラインバッファメモリ１０１０へのデータ格納要求信号であるＷＲＲＱ信号をセレクタ１０５０に対し発行し、このＷＲＲＱ信号によりパック処理された画像データはラインバッファメモリ１０１０に格納される。
【００４１】
復号器Ｉ／Ｆ部１０３０には、復号化部９００から画像転送クロックに同期にして１画素１ｂｉｔの二値画像データがシリアルに入力され、入力された画像データは８ビット単位でのパック処理によりパッキングされる。復号器Ｉ／Ｆ部１０３０では、スキャナＩ／Ｆ部１０２０と同様に、パック処理毎にラインバッファメモリ１０１０へのデータ格納要求信号であるＷＲＲＱ信号をセレクタ１０５０に対し発行し、このＷＲＲＱ信号によりパック処理された画像データはラインバッファメモリ１０１０に格納される。
【００４２】
ＤＭＡＩ／Ｆ部１０４０には、ダイレクトメモリアクセスによりＲＡＭ３００から画像データが入力される。画像データが１６ビット幅の外部バスを介して入力される場合には、ＤＭＡＩ／Ｆ部１０４０では入力された画像データを８ビット単位の画像データに分割する処理を行う。ＤＭＡＩ／Ｆ部１０４０では、スキャナＩ／Ｆ部１０２０と同様に、パック処理毎にラインバッファメモリ１０１０へのデータ格納要求信号であるＷＲＲＱ信号をセレクタ１０５０に対し発行し、このＷＲＲＱ信号により画像データはラインバッファメモリ１０１０に格納される。
【００４３】
セレクタ１０５０は、スキャナ７００、復号化部９００、ＲＡＭ３００のいずかれの画像データ入力デバイスから画像データを入力するかを選択するための選択値に応じてスキャナＩ／Ｆ部１０２０、復号器Ｉ／Ｆ部１０３０、ＤＭＡＩ／Ｆ部１０４０のいずれかのＩ／Ｆ部からのＷＲＲＱ信号を取り込み、アービタ部１０８０に出力するとともに、対応する画像データ入力デバイスからの画像データを選択し、ラインバッファメモリ１０１０に出力する。
【００４４】
ラインバッファメモリ１０１０からの画像データの読出しは画像データの書込と同様に８ｂｉｔ単位で行われ、ラインバッファメモリ１０１０から読み出された画像データはラッチ・パラシリ変換部１０９０においてシリアルデータに変換された後に対応する画像処理部に出力される。ラッチ・パラシリ変換部１０９０は、ラインバッファメモリ１０１０から読み出された画像データを一旦保持するためのバッファレジスタからなるラッチ群０−８と、ラッチ群０−８に保持された画像データをシリアルデータに変換して出力するパラレル・シリアル変換を行うパラシリ変換群０−８とを有する。ラッチ・パラシリ変換部１０９０からは、ラインバッファ１０１０の画像データの読出しを要求するＲＤＲＱ信号がアービタ部１０８０に出力される。
【００４５】
アービタ部１０８０は、セレクタ１０５０からのＷＲＲＱ信号とラッチ・パラシリ変換部１０９０からのＲＤＲＱ信号との調停を行いながらラインバッファメモリ１０１０に対するアクセス権をセレクタ１０５０またはラッチ・パラシリ変換部１０９０のいずれかに振り分け、アクセス権の振分け後、アクセス権を獲得した側に対しアクセス許可信号を用いてアクノリッジ応答をしながらメモリアクセス制御信号をラインバッファメモリ１０１０に出力してメモリアクセスを行う。具体的には、セレクタ１０５０からのＷＲＲＱ信号に対するアクノリッジ応答としてＷＲＡＣＫ信号が対応するＩ／Ｆ部（スキャナＩ／Ｆ部１０２０、復号器Ｉ／Ｆ部１０３０、ＤＭＡＩ／Ｆ部１０４０）に出力される。また、ラッチ・パラシリ変換部１０９０からのＲＤＲＱ信号に対するアクノリッジ応答としてＲＤＡＣＫ信号がラッチ・パラシリ変換部１０９０に出力される。
【００４６】
このように、アクセス要求およびそれに対するアクノリッジ応答によるメモリアクセスをアービタ部１０８０を介して行うことによって、ラインバッファメモリ１０１０を用いた画像転送速度の速度変換が実行される。例えば、画像入力速度がアービタ部１０８０がＷＲＲＱ信号に応答可能な周期範囲内であれば、該応答可能な周期範囲内の速度に画像入力速度を設定することが可能になり、スキャナＩ／Ｆ部１０２０、復号器Ｉ／Ｆ部１０３０、ＤＭＡＩ／Ｆ部１０４０の各Ｉ／Ｆ部に入力される画像データの転送速度は前記応答可能な周期範囲内で任意に設定可能でありかつ各画像入力デバイス毎に任意の値を設定することができる。
【００４７】
同様に、画像出力速度がアービタ部１０８０がＲＤＲＱ信号に応答可能な周期範囲内であれば、該応答可能な周期範囲内の速度に画像出力速度を設定することが可能になり、ラインバッファメモリ１０１０からの画像データの読出しにおいては、各画像処理部よる処理後の画像データの転送速度がＬＢＰ１５００が要求する転送速度に合致するようにラッチ・パラシリ変換部１０９０にＲＤＲＱ信号を発行させることによってラインバッファメモリ１０１０を用いたＬＢＰ１５００出力のための再同期化速度変換を実現することができる。
【００４８】
また、アービタ部１０８０においては、ラインバッファメモリ１０１０をリングバッファメモリとして動作させるために、内部に画像データが滞留しているラインの数を管理するためのラインバッファ管理処理が行われる。このラインバッファ管理処理については後述する。
【００４９】
選択された画像処理モードに応じたデータ格納に対するアドレス制御はＷＲアドレス制御部１０６０により行われ、データ読出しに対するアドレス制御はＲＤアドレス制御部１０７０により行われる。
【００５０】
次に、ＷＲアドレス制御部１０６０の構成およびその動作について図４を参照しながら説明する。図４は図２のラインバッファメモリ制御部に設けられているＷＲアドレス制御部の構成を示すブロック図である。
【００５１】
ＷＲアドレス制御部１０６０は、図４（ａ）に示すように、ラインバッファメモリ１０１０に割り付けた各ライン毎にその先頭アドレスを格納するための複数のレジスタ１０６２〜１０７１を有する。各レジスタ１０６２〜１０７１には、最小単位でのラインの先頭アドレスを管理するために、次のようなオフセットアドレス（副走査方向アドレス）が格納されている。
【００５２】
レジスタ１０６２＝＞０      レジスタ１０６３＝＞０７
レジスタ１０６４＝＞０Ｅ    レジスタ１０６５＝＞１５
レジスタ１０６６＝＞１Ｃ    レジスタ１０６７＝＞２３
レジスタ１０６８＝＞２Ａ    レジスタ１０６９＝＞３１
レジスタ１０７０＝＞３８    レジスタ１０７１＝＞３Ｆ
各レジスタ１０６２〜１０７１に保持されているオフセットアドレスの１つは、セレクタ１０７２で選択された後に加算器１０９０に出力される。具体的には、セレクタ１０７２はラインカウンタ制御部１０６１から出力される値に応じて各レジスタ１０６２〜１０７１のオフセットアドレスのいずれか１つを選択して取り込み、出力する。
【００５３】
ラインカウンタ制御部１０６１は、図４（ｂ）に示すように、画像データを格納しているラインを管理するために、ＷＲＩＴＥラインアドレス主カウンタ１０７６と、ＷＲＩＴＥラインアドレス主カウンタ１０７６をリングカウンタとして動作させるための初期化比較器１０７５とを有し、ＷＲＩＴＥラインアドレス主カウンタ１０７６は、後述する主走査カウンタ１０７３から出力されるＷＲＰＵＰ信号により１ライン増加分のカウントアップを行う。ラインカウンタ制御部１０６１には現在画像データを格納しているラインの値が保持され、この値はセレクタ１０７２の選択動作を制御するための値として出力される。
【００５４】
主走査カウンタ１０７３は、ラインバッファメモリ１０１０における１ライン内の画像データの主走査方向アドレスを管理するためのカウンタからなる。主走査カウンタ１０７３には、ＷＲＲＱ信号に応答してアービタ部１０８０による書込調停が行われることに伴いＷＲＨＵＰ信号が入力され、ＷＲＨＵＰ信号により主走査カウンタ１０７３のカウント値がインクリメントされる。また、１ライン分の画像データが入力されると、主走査カウンタ１０７３はリセットされるとともに、ＷＲＩＴＥラインアドレス主カウンタ１０７６を１ライン分増加させるためのＷＲＰＵＰ信号を発行する。この発行されたＷＲＰＵＰ信号によりＷＲＩＴＥラインアドレス主カウンタ１０７６のカウンタ値は１ライン分増加される。
【００５５】
加算器１０９０は、セレクタ１０７２から出力されたオフセットアドレスと主走査カウンタ１０７３のカウント値とを加算し、この加算結果から実際の画像データ格納のための書込アドレスを生成する。
【００５６】
実際の書込アドレスの算出では、次の算出式に示すように、この書込アドレスの下位６ｂｉｔが主走査カウンタ１０７３の下位６ｂｉｔ（＃＃＃＃＃＃）とされ、書込アドレスの上位７ｂｉｔは主走査カウンタ１０７３の上位５ｂｉｔとオフセットアドレス７ｂｉｔとの加算結果（＄＄＄＄＄＄＄）とされる。
【００５７】
0004136022.tif 000002
次に、各画像処理モードに対するＷＲアドレス制御部１０６０の動作について説明する。
【００５８】
本実施の形態では、上述したように画像処理モード毎に参照ライン数および１ラインのデータ長の最大値を切り替える必要があるから、図４（ｂ）に示すように、ＷＲＩＴＥラインアドレス主カウンタ１０７６の増加値を１，２，４と切り替えることによってライン数および１ラインのデータ長すなわち主走査長の切替を行う。具体的には、ライン数および１ラインの主走査長の切替は、１ライン分の画像データを格納した際に発行されるＷＲＰＵＰ信号によりカウントアップするＷＲＩＴＥラインアドレス主カウンタ１０７６の加算値を画像処理モード毎に切り替えることによって実現される。
【００５９】
例えば、以下に示すように、画像処理部Ｂ１２００が選択されている場合には、ＷＲＰＵＰ信号が発行される毎に１づつアドレスが加算され、ＷＲＩＴＥラインアドレス主カウンタ１０７６のカウント値が「９」に到達すると、ＷＲＩＴＥラインアドレス主カウンタ１０７６のカウント値は「０」に初期化される。画像処理部Ｃ１３００が選択されている場合には、ＷＲＰＵＰ信号が発行される毎に２づつアドレスが加算され、カウント値が「８」になると、そのカウント値を「０」にする初期化が行われる。画像処理部Ａ１１００が選択されている場合には、ＷＲＰＵＰ信号が発行される毎に４づつアドレスが加算され、カウント値が４になると、そのカウント値を「０」にする初期化が行われる。
【００６０】
＜画像処理部Ｂが選択された場合＞
０：００→    ０（０００００００００００００）
１：０７→１００（００００１１１００００００）
２：０Ｅ→３８０（０００１１１０００００００）
３：１５→５４０（００１０１０１００００００）
４：１Ｃ→７００（００１１１００００００００）
５：２３→８Ｃ０（０１０００１１００００００）
６：２Ａ→Ａ８０（０１０１０１０００００００）
７：３１→Ｃ４０（０１１０００１００００００）
８：３８→Ｅ００（０１１１０００００００００）
９：３Ｆ→ＦＣ０（０１１１１１１００００００）
＜画像処理部Ｃが選択された場合＞
０：００→    ０（０００００００００００００）
２：０Ｅ→３８０（０００１１１０００００００）
４：１Ｃ→７００（００１１１００００００００）
６：２Ａ→Ａ８０（０１０１０１０００００００）
８：３８→Ｅ００（０１１１０００００００００）
＜画像処理部Ａが選択された場合＞
０：００→    ０（０００００００００００００）
４：１Ｃ→７００（００１１１００００００００）
このように、ＷＲＩＴＥラインアドレス主カウンタ１０７６の増加値を１，２，４と切り替えることによって１ラインのデータ長が２倍、４倍、８倍とまたライン数が１０本、５本、２本と切り替えられる。
【００６１】
次に、画像データ書込時のメモリアクセスタイミングについて図５を参照しながら説明する。図５は図２のラインバッファメモリ制御部におけるラインバッファメモリへの書込タイミングを示すタイミングチャートである。
【００６２】
アービタ部１０８０、ＷＲアドレス制御部１０６０およびＲＤアドレス制御部１０７０は、図５に示すように、基準クロックであるＰＣＬＫに基づき動作し、画像データの書込時には、まずＷＲＲＱ信号がセレクタ１０５０からアービタ部１０８０に出力される。
【００６３】
次いで、ＷＲＲＱ信号によりＷＲサイクル（書込サイクル）に移行すると、アービタ部１０８０からアクノリッジ応答としてＸＷＲＡＣＫ信号がセレクタ１０５０に出力されると同時にラインバッファメモリ１０１０にアクセス制御信号であるＣＥＣ信号およびＷＲ信号がアサートされる。なお、本実施の形態では、ＣＥＣ信号の立ち下がりエッジでラインバッファメモリ１０１０に書込アドレスＡ０−Ａ１２が取り込まれ、ＷＲ信号の立ち上がりエッジで画像データＤ７−Ｄ０がラインバッファメモリ１０１０に書き込まれるように構成されている。
【００６４】
ＸＷＲＡＣＫ信号は、セレクタ１０５０から対応するＩ／Ｆ部を介して画像入力デバイスに発行される。
【００６５】
書込アドレスＡ０−Ａ１２はＷＲアドレス制御部１０６０から出力され、ＷＲアドレス制御部１０６０はＷＡＤ０−ＷＡＤ１２信号を書込アドレスＡ０−Ａ１２として選択、出力する。
【００６６】
画像データＤ７−Ｄ０は対応するＩ／Ｆ部で８ｂｉｔにパッキングされた画像データであって、セレクタ１０５０で選択された後にアービタ部１０８０を介してラインバッファメモリ１０１０に書き込まれる。
【００６７】
書込アクセス（ＷＲアクセス）が終了すると、主走査カウンタ１０７３にカウントアップを指示するＷＲＨＵＰ信号が出力され、主走査カウンタ１０７３はＷＲＨＵＰ信号によりカウント値を１アップする。
【００６８】
次に、ＲＤアドレス制御部１０７０の構成およびその動作について図６を参照しながら説明する。図６は図２のラインバッファメモリ制御部に設けられているＲＤアドレス制御部の構成を示すブロック図である。
【００６９】
ＲＤアドレス制御部１０７０は、図６（ａ）に示すように、ラインバッファメモリ１０１０に割り付けた各ライン毎にその先頭アドレスを格納するための複数のレジスタ１０７８〜１０８７と、主走査カウンタ１０８９とを有する。
【００７０】
各レジスタ１０７８〜１０８７には、上述のＷＲ制御部１０６０のレジスタ１０６２〜１０７１と同様に、最小単位でのラインの先頭アドレスを管理するためのオフセットアドレス（副走査方向アドレス）が格納されている。各レジスタ１０７８〜１０８７に保持されているオフセットアドレスは、セレクタ１０８８で選択された後に加算器１０９０に出力される。具体的には、セレクタ１０８８はラインカウンタ制御部１０７７から出力される値に応じて各レジスタ１０７８〜１０８７のオフセットアドレスのいずれかを選択して取り込み、出力する。
【００７１】
ラインカウンタ制御部１０７７は、図６（ｂ）に示すように、画像データを格納しているラインを管理するための制御部からなり、該制御部は、参照ラインの先頭ラインのオフセットアドレスを選択するための値を計数するＲＥＡＤラインアドレス主カウンタ１０９２と、ＲＥＡＤラインアドレス主カウンタ１０９２をリングカウンタとして動作させるための初期化比較器１０９１と、選択された画像処理手段に応じたカウントアップを行うためのＲＥＡＤラインアドレス副カウンタ１０９４と、ＲＥＡＤラインアドレス副カウンタ１０９４をリングカウンタとして動作させるための初期化比較器１０９３とを有する。ＲＥＡＤラインアドレス主カウンタ１０９２のカウント値は、後述するラインバッファメモリ１０１０内の画像データ滞留ライン数の管理に用いられる。なお、このラインカウンタ制御部１０７７の詳細については後述する。
【００７２】
ラインカウンタ制御部１０７７には現在画像データを格納しているラインの値が保持され、この値はセレクタ１０８８の選択動作を制御するための値として出力される。
【００７３】
主走査カウンタ１０８９は、ラインバッファメモリ１０１０における１ライン内の画像データの主走査方向アドレスを管理するためのカウンタからなる。主走査カウンタ１０８９には、ＲＤＲＱ信号に応答してアービタ部１０８０による読み込みが行われることに伴いＲＤＨＵＰ信号が入力され、ＲＤＨＵＰ信号により主走査カウンタ１０８９のカウント値がインクリメントされる。また、１ライン分の画像データの読み込みが行われると、主走査カウンタ１０８９はリセットされるとともに、ＲＥＡＤラインアドレス主カウンタ１０９２を１ライン分増加させるためのＲＤＰＵＰ信号を発行する。この発行されたＲＤＰＵＰ信号によりＲＥＡＤラインアドレス主カウンタ１０９２の値は１ライン分増加される。
【００７４】
加算器１０９０は、セレクタ１０８８から出力されたオフセットアドレスと主走査カウンタ１０８９のカウント値とを加算し、この加算結果から実際の画像データの読出しアドレスを生成する。この実際の読出しアドレスの算出は、上述した加算器１０７４による書込アドレスの算出手順と同様に行われる。
【００７５】
このように、ＲＤアドレス制御部１０７０においてラインカウンタ制御部１０７７にＲＥＡＤラインアドレス主カウンタ１０９２、ＲＥＡＤラインアドレス副カウンタ１０９４の２つのラインカウンタを設け、複数のラインにまたがる画像データの読出し時には、選択された画像処理部の画像処理に必要となる参照ライン数に応じてＲＥＡＤラインアドレス副カウンタ１０９３による計数を行うことによって、参照ラインを含む複数のラインにまたがる画像データを一度に取り出すことが可能となる。
【００７６】
次に、各画像処理モードに対するラインカウンタ制御部１０７７の動作について説明する。
【００７７】
本実施の形態では、図６（ｂ）に示すように、複数のラインにまたがる画像データの読出し時には、選択された画像処理部の画像処理に必要となる参照ライン数に応じてＲＥＡＤラインアドレス副カウンタ１０９３による計数を行いながら複数のラインにまたがる画像データを一度に取り出すために、１ラインの読出しが終了すると、各画像処理部から発行されるカウントアップ要求信号に応じてＲＥＡＤラインアドレス主カウンタ１０９２が０，１，２，４のいずれかの値のカウントアップ動作を行うように構成されている。このカウンタアップ値の中の値「０」はカウントアップ動作を行わないように指示するための値であり、この「０」によるカウントアップ動作停止により、同一ラインの読出しを複数回行うことが可能となり、副走査方向の解像度変換処理が実現される。
【００７８】
また、ＲＥＡＤラインアドレス副カウンタ１０９４は、リードアクセス（ＲＤアクセス）起動時にＲＥＡＤラインアドレス主カウンタ１０９２のカウント値を取り込むとともに、複数の参照ラインにまたがるリードアクセス毎に選択された画像処理部に応じたカウントアップを行う。このＲＥＡＤラインアドレス副カウンタ１０９４のカウント動作により、複数の参照ラインにまたがる画像データの読出しをするためのアドレスが生成可能になる。
【００７９】
例えば、画像処理部Ｂ１２００が選択されている場合には、参照ラインとして９ラインが必要であるから、１回のデータ読出し要求に対してＲＥＡＤラインアドレス副カウンタ１０９４のカウント値を「１」インクリメントしながら９バイトのデータを一括して読み込む。この場合、以下に示すように、ＲＥＡＤラインアドレス主カウンタ１０９１のカウント値を起点としてＲＥＡＤラインアドレス副カウンタ１０９４は８回のカウントアップを行う。
【００８０】
0004136022.tif 000003
画像処理部Ｃ１３００が選択されている場合には、参照ラインとして２ラインが必要であるから、１回のデータ読出し要求に対してＲＥＡＤラインアドレス副カウンタ１０９４のカウント値を「２」インクリメントしながら２バイトのデータを一括して読み込む。この場合、以下に示すように、ＲＥＡＤラインアドレス主カウンタ１０９１のカウント値を起点としてＲＥＡＤラインアドレス副カウンタ１０９４は１回のカウントアップを行う。ここでＲＥＡＤラインアドレス主カウンタ１０９１のカウント値の増加値が「２」に設定されているのは、画像処理部Ｃが処理可能な１ラインのデータ長の最大値が画像処理部Ｂの２倍であることによる、すなわち画像処理部Ｃの処理動作は画像処理部Ｂの２倍の速度で動作することによる。
【００８１】
0004136022.tif 000004
画像処理部Ａ１１００が選択されている場合には、参照ラインを必要としないから、ＲＥＡＤラインアドレス副カウンタ１０９４はＲＥＡＤラインアドレス主カウンタ１０９１のカウント値を取り込むだけである。ここでＲＥＡＤラインアドレス主カウンタ１０９１のカウント値の増加値が「４」に設定されているのは、画像処理部Ａが処理可能な１ラインのデータ長の最大値が画像処理部Ｂの４倍であることによる、すなわち画像処理部Ａの処理動作は画像処理部Ｂの４倍の速度で動作することによる。
【００８２】
0004136022.tif 000005
このように、選択された画像処理部の画像処理に必要となる参照ライン数に応じてＲＥＡＤラインアドレス副カウンタ１０９３による計数を行いながら複数のラインにまたがる画像データを一度に取り出すことが可能となる。選択された画像処理部毎に必要となる参照ラインの数はＲＥＡＤラインアドレス副カウンタ１０９３にカウント値を可変することにより行われる。
【００８３】
次に、画像データ読出し時のメモリアクセスタイミングについて図７を参照しながら説明する。図７は図２のラインバッファメモリ制御部におけるラインバッファメモリへの読出しタイミングを示すタイミングチャートである。
【００８４】
ＲＤアドレス制御部１０７０は、図７に示すように、アービタ部１０８０、ＷＲアドレス制御部１０６０とともに、基準クロックＰＣＬＫに基づき動作し、画像データの読出し時には、まず読出し要求信号であるＲＤＲＱ信号がラッチパラシリ変換群１０９０からアービタ部１０８０に出力される。
【００８５】
次いで、ＲＤＲＱ信号によりＲＤサイクルに移行すると、アービタ部１０８０からＲＤＲＱ信号のアクノリッジ応答としてＲＤＡＣＫ信号がラッチパラシリ変換群１０９０に出力されると同時にラインバッファメモリ１０１０にアクセス制御信号であるＣＥＣ信号およびＷＥＣ信号がアサートされる。なお、本実施の形態では、ＣＥＣ信号の立ち下がりエッジでラインバッファメモリ１０１０に読出しアドレスＡ０−Ａ１２が取り込まれ、そのアドレスに対応する画像データＤ７−Ｄ０が出力される。また、ＷＥＣ信号は書込み許可信号であり、読出し時にはインアクティブ側の「Ｈ」に保持されている。
【００８６】
読出しアドレスＡ０−Ａ１２はＲＤアドレス制御部１０７０から選択、出力され、このアドレスＡ０−Ａ１２によりアクセスする最初の起点は図中の副走査＋「＊」で示す値により決定される。「＊」が示す値はアクセスする最初の起点とするＲＥＡＤラインアドレス副カウンタ１０９３の変化値を示す。また、図中の主走査＋１は主走査カウンタ１０８９のカウンタ値が「１」増加していることを示す。
【００８７】
画像処理部Ａが選択されている場合、図７（ａ）に示すように、１回のリードアクセスで１バイトの読出しが行われる。従って、リード中におけるアクセスの増加は行われていない。この読出しアクセスが終了すると、ＲＤＨＵＰ信号（図示せず）により主走査カウンタ１０８９がインクリメントされる。画像処理部Ｂが選択されている場合、図７（ｂ）に示すように、９回のリードアクセスが連続して行われる。よって、ＣＥＣ信号は９回「０」にアサートされ、かつＲＥＡＤラインアドレス副カウンタ１０９４はそのカウント値を「１」づつ変化させる。画像処理部Ｃが選択されている場合、図７（ｃ）に示すように、２回のリードアクセスが連続して行われる。よって、ＣＥＣ信号は２回「０」にアサートされ、かつＲＥＡＤラインアドレス副カウンタ１０９４はそのカウント値を「２」づつ変化させる。がリード中におけるアクセスの増加は行われていない。この読出しアクセスが終了すると、ＲＤＨＵＰ信号（図示せず）により主走査カウンタ１０８９がインクリメントされる。
【００８８】
次に、アービタ部１０８０による、内部に画像データが滞留しているラインの数を管理するラインバッファ管理処理について説明する。
【００８９】
このラインバッファ管理処理では、ラインバッファメモリ１０１０をリングバッファメモリとして動作させるためのオーバーラン制御およびアンダーラン制御を行う。これらの制御においては、スキャナＩ／Ｆ部１０２０、復号器Ｉ／Ｆ部１０３０、ＤＭＡＩ／Ｆ部１０４０、ラッチ・パラシリ変換部１０９０の各Ｉ／Ｆ部からのアクセス要求に応じてオーバーランまたはアンダーランが発生しないようにアクセスの保留および再開を行う。各Ｉ／Ｆ部からのアクセス要求に対する制御は、基本的には画像データ滞留ラインの管理がライン単位で行われていることにより、ライン先頭アドレスに基づき行われる。
【００９０】
例えば、ラインバッファメモリ１０１０内に空きラインがあれば、ラインバッファメモリ１０１０への書込要求が許可され、ＷＲＡＣＫ信号によるアクノリッジ応答が行われる。これに対し、ラインバッファメモリ１０１０にデータが一杯に書き込まれてこれ以上データが書き込みすることができないときには、ＷＲＡＣＫ信号によるアクノリッジ応答が保留され、該保留により画像入力が保留される。
【００９１】
ラッチ・パラシリ変換部１０９０からの読出し要求に対するアクセス制御は、管理するライン数がアンダーランになりかつライン出力の最初の読出し要求が会った場合に行われる。管理するライン数がアンダーランになった場合は、再び画像データが格納されてアンダーランが解除されるまで読出し要求に対する応答を保留する。ＬＢＰ１５００による画像データの出力中には、前記応答保留が発生しないように画像データの入力が行われる。このような応答保留は１ページ内の画像ブロックの切替時に発生し、もし応答保留が発生したときには対応する画像処理部が白データを出力することによって画像ブロック間のつなぎを行う。
【００９２】
ラインバッファメモリ１０１０内の画像データ滞留ライン数の管理にはアップダウンカウンタからなるライン管理カウンタが用いられ、該ライン管理カウンタは１ラインの書込でカウントアップし、１ラインの読出しでカウントダウンする。具体的には、ライン管理カウンタは「０」を初期値とし、スキャナＩ／Ｆ部１０２０、復号器Ｉ／Ｆ部１０３０、ＤＭＡＩ／Ｆ部１０４０の各Ｉ／Ｆ部から画像データが入力されるとＷＲアドレス制御部１０６０から発行されるＷＲＰＵＰ信号によりカウントアップを行い、参照ライン更新に伴い各画像処理部から発行されるＲＤＰＵＰ信号によりカウントダウンを行う。このように計数動作をするライン管理カウンタのカウント値により内部に画像データが滞留するラインの数の管理が行われる。
【００９３】
次に、各画像処理部に対応して行われるオーバーラン制御およびアンダーラン制御について説明する。
【００９４】
画像処理部Ｂ１２００が選択されている場合、以下に示すように、白データ滞留の４ラインがあるものとして処理動作が開始される。これは、入力画像の周りに仮想的に白を付加するためである。画像処理部Ｂ１２００では参照ラインとして９ラインを必要とするから、上述の白データの４ライン以外にさらに５ライン以上のラインに画像データが格納された後にアンダーランが解除される。また、ラインバッファメモリ１０１０の総ライン数は１０であるから、ライン管理カウンタのカウント値が「６」であるときにはオーバーラン発生として書込要求が保留され、カウント値が「４」であるときにはアンダーラン発生として読出し要求が保留される。さらに、１ブロックの画像出力終了時には、外部からの指示によりライン管理カウンタのカウント値が「０」になるまで画像の吐き出しを行い、処理を終了する。
【００９５】
0004136022.tif 000006
画像処理部Ｃ１３００が選択されている場合には、参照ラインとして２ライン必要でありかつ割り付けられたライン数が５である。従って、以下に示すように、ライン管理カウンタのカウント値が「５」であるときにはオーバーラン発生として書込要求が保留され、カウント値が「１」であるときにはアンダーラン発生として読出し要求が保留される。
【００９６】
0004136022.tif 000007
画像処理部Ａ１１００が選択されている場合には、参照ラインとして１ライン必要でありかつ割り付けられたライン数が２である。従って、以下に示すように、ライン管理カウンタのカウント値が「２」であるときにはオーバーラン発生として書込要求が保留され、カウント値が「０」であるときにはアンダーラン発生として読出し要求が保留される。
【００９７】
0004136022.tif 000008
次に、１ページの画像印刷出力中における画像処理の切替および入力画像ブロックの切替動作について図８および図９を参照しながら説明する。図８は図１のコピー・ファクシミリ装置による、ファクシミリ受信画像にヘッダ画像およびフッタ画像を付加した出力画像の一例を示す図、図９は図８の出力画像中の３つの画像ブロックの入出力における切替タイミングを示すタイミングチャートである。
【００９８】
ファクシミリ受信時、その受信した画像は画像データとしてＲＡＭ３００に一旦蓄積された後に復号化部９００で復号され、復号された画像データは復号器Ｉ／Ｆ部１０３０を介してラインバッファメモリ１０１０に格納される。このラインバッファメモリ１０１０に格納された画像データは、画像処理部Ｃ１３００の処理によりＬＢＰ１５００の使用記録紙のサイズおよび解像度に応じた変倍処理を施された後にＬＢＰ１５００に出力される。ＬＢＰ１５００では、図８に示すように、ファクシミリ受信した画像をヘッダ画像およびフッタ画像とともに記録用紙に記録する。
【００９９】
ヘッダ画像およびフッタ画像は、ＣＰＵ１００によりＲＡＭ３００に展開された画像であり、各画像データはダイレクトメモリアクセスによりＲＡＭ３００からＤＭＡＩ／Ｆ部１０４０を介してラインバッファメモリ１０１０に格納される。各画像データは画像処理部Ｂ１２００により２００ｄｐｉを６００ｄｐｉの解像度に変換する解像度変換処理を施された後にＬＢＰ１５００に出力される。
【０１００】
次に、ファクシミリ受信した画像、ヘッダ画像およびフッタ画像の入出力の切替タイミングについて説明する。なお、本説明では、ファクシミリ受信した画像を示す画像データを第２ブロック画像データ、ヘッダ画像を示す画像データを第１ブロック画像データ、フッタ画像を示す画像データを第３ブロック画像データとする。
【０１０１】
図９を参照するに、まず、１ページの記録動作の開始に先立ちページ区間信号であるＰＥＮＢのレベルが「Ｈ」にされ、記録動作処理の活性化が行われる。
【０１０２】
次いで、ブロック画像データの入力期間を示すＢＬＫＥＮＢ＿ＩＮのレベルが「Ｈ」に保持されるとともに、第１ブロック画像データＤＡＴＡ＿ＩＮがＲＡＭ３００からＤＭＡＩ／Ｆ部１０４０を介してラインバッファメモリ１０１０に入力され、第１ブロック画像データの格納が開始される。
【０１０３】
第１ブロック画像データＤＡＴＡ＿ＩＮがラインバッファメモリ１０１０に容量一杯まで格納されると、アービタ部１０８０によるラインバッファ管理処理により画像データの書込要求が保留されるとともに、第１ブロック画像データＤＡＴＡ＿ＩＮに対応する画像処理部として画像処理部Ｂ１２００が選択される。
【０１０４】
次いで、ＬＢＰ１５００が印字起動をかけられると、ＬＢＰ１５００から垂直同期信号であるＸＴＯＰが発行される。このＸＴＯＰの発行時点から画像上端の記録開始位置到達時点までの印刷マージン時間経過後、画像出力が開始される。この画像出力タイミングに合わせてブロック画像データの出力期間を示すＢＬＫＥＮＢ＿ＯＵＴのレベルが「Ｈ」に保持されるとともに、ラインバッファメモリ１０１０からの第１ブロック画像データＤＡＴＡ＿ＩＮの読出しが開始される。読み出された画像データは画像処理部Ｂ１２００で処理された後に画像データＸＶＤＯとしてＬＢＰ１５００に出力される。この読出しによりラインバッファメモリ１０１０に空きが生じると、書込要求の保留が解除され、第１ブロック画像データＤＡＴＡ＿ＩＮのラインバッファメモリ１０１０への格納が再開される。
【０１０５】
第１ブロック画像データＤＡＴＡ＿ＩＮの入力が終了すると、ＣＰＵ１００から画像入力終了の通知が出され、画像吐き出し処理が行われるとともに、ＢＬＫＥＮＢ＿ＩＮのレベルが「Ｈ」から「Ｌ」に切り替えられる。また、第１ブロック画像データＤＡＴＡ＿ＩＮの出力が終了すると、ＢＬＫＥＮＢ＿ＯＵＴのレベルが「Ｌ」に切り替えられるとともに、ＤＭＡＩ／Ｆ部１０４０から復号器Ｉ／Ｆ部１０３０への切替、および画像処理部Ｃ１３００から画像処理部Ｂ１２００への切替が行われる。
【０１０６】
ＢＬＫＥＮＢ＿ＩＮのレベル「Ｈ」から「Ｌ」への切替時点から入力保留となる所定期間が経過すると、ＢＬＫＥＮＢ＿ＩＮのレベルは「Ｈ」に切り替えられ、次の入力画像データである第２ブロック画像データＤＡＴＡ＿ＩＮが復号器Ｉ／Ｆ部１０３０を介して入力され、第２ブロック画像データＤＡＴＡ＿ＩＮの格納が開始される。ＢＬＫＥＮＢ＿ＯＵＴのレベル「Ｈ」から「Ｌ」への切替時点から第２ブロック画像データＤＡＴＡ＿ＩＮの出力開始可能時点までのつなぎの期間中すなわちアンダーランが解消される時点までの期間中においては、ＬＢＰ１５００に対し白データが出力される。
【０１０７】
アンダーランが解消されると、第２ブロック画像データＤＡＴＡ＿ＩＮがラインバッファメモリ１０１０から読み出され、読み出された画像データは画像処理部Ｃ１３００で処理された後に画像データＸＶＤＯとしてＬＢＰ１５００に出力される。
【０１０８】
第２ブロック画像データＤＡＴＡ＿ＩＮの入力が終了すると、ＣＰＵ１００から画像入力終了の通知が出され、画像吐き出し処理が行われるとともに、ＢＬＫＥＮＢ＿ＩＮのレベルが「Ｈ」から「Ｌ」に切り替えられる。また、第２ブロック画像データＤＡＴＡ＿ＩＮの出力が終了すると、ＢＬＫＥＮＢ＿ＯＵＴのレベルが「Ｌ」に切り替えられるとともに、再度ＤＭＡＩ／Ｆ部１０４０への切替および画像処理部Ｂ１２００への切替が行われる。
【０１０９】
ＢＬＫＥＮＢ＿ＩＮのレベル「Ｈ」から「Ｌ」への切替時点から所定期間が経過すると、ＢＬＫＥＮＢ＿ＩＮのレベルは「Ｈ」に切り替えられ、次の入力画像データである第３ブロック画像データＤＡＴＡ＿ＩＮがＤＭＡＩ／Ｆ部１０４０を介して入力され、第３ブロック画像データＤＡＴＡ＿ＩＮの格納が開始される。ＢＬＫＥＮＢ＿ＯＵＴのレベル「Ｈ」から「Ｌ」への切替時点から第３ブロック画像データＤＡＴＡ＿ＩＮの出力開始可能時点までのつなぎの期間中すなわちアンダーランが解消される時点までの期間中においては、ＬＢＰ１５００に対し白データが出力される。
【０１１０】
アンダーランが解消されると、第３ブロック画像データＤＡＴＡ＿ＩＮがラインバッファメモリ１０１０から読み出され、読み出された画像データは画像処理部Ｂ１２００で処理された後に画像データＸＶＤＯとしてＬＢＰ１５００に出力される。
【０１１１】
このようにして、１ページの画像データすべての出力が完了すると、ラインバッファメモリ１０１０中の画像データの吐き出し処理が行われ、この吐き出し処理が終了すると、ＰＥＮＢのレベルが「Ｌ」に戻されることによって記録動作状態は非活性状態へ移行され、ＬＢＰ１５００による印刷出力は終了される。
【０１１２】
以上より、本実施の形態におけるラインバッファメモリ制御部１０００では、１つのラインバッファメモリ１０１０を設け、画像データのラインバッファメモリ１０１０への格納時にラインバッファメモリ１０１０を複数のラインに分割して該分割された各ラインにアクセス可能なように格納アドレス制御を行うとともに、画像データのラインバッファメモリ１０１０からの読出し時に分割された各ラインにアクセス可能なように読出しアドレス制御を行うから、１つのラインバッファメモリ１０１０を画像入力デバイスの速度変換吸収用バッファメモリおよび各画像処理部の参照用バッファメモリとして共用することが可能になり、コピー機能、ファクシミリ機能、プリンタ機能などの各機能の複合化による装置構成の複雑化を阻止することができる。
【０１１３】
また、画像データの入出力のタイミングを変更可能なように、書込要求信号に応答したアクセス実行タイミングと読出し要求信号に応答したアクセス実行タイミングとを任意に切り換えるように構成したので、１つのラインバッファメモリ１０１０を共通に使用しながら１ページの記録動作中における画像データの入力元の切替および画像データの出力先の切替を容易に行うことができる。
【０１１４】
さらに、１ページの画像データの印刷出力中に選択された画像入力デバイスから入力される画像データの各画像ブロック毎に画像処理部が切り替えられるモードが設定されているときには、選択された画像処理部毎に必要となる参照ラインの数を可変しながら該参照ラインを含む複数のラインにまたがる画像データを一度に取り出すように読出しアドレス制御を行うから、１ページ内に含まれる各画像ブロック毎にその画像ブロックに所望の画像処理を施すことができる。
【０１１５】
【発明の効果】
以上に説明したように、本発明のバッファメモリ制御装置によれば、画像処理を実行する際に第１ライン数分の画像データを必要とする第１画像処理手段へ画像データを出力するための第１読み出し要求を受け付けた場合であるか、画像処理を実行する際に第１ライン数分とは異なる第２ライン数分の画像データを必要とする第２画像処理手段へ画像データを出力するための第２読み出し要求を受け付けた場合であるかに応じて、適切な画像データをバッファメモリから出力することができる。
【０１１６】
本発明のバッファメモリ制御装置によれば、１ページ内に含まれる各画像ブロック毎にその画像ブロックに所望の画像処理手段による画像処理を施すことができる。
【０１１８】
本発明のバッファメモリ制御装置によれば、分割されたライン数の管理を容易に行うことができる。
【０１２０】
本発明のバッファメモリ制御装置によれば、１つのラインバッファメモリを共通に使用しながら１ページの画像形成動作中における画像データの入力元の切替および画像データの出力先の切替を容易に行うことができる。
【図面の簡単な説明】
【図１】本発明のバッファメモリ制御装置の実施の一形態を搭載するコピー・ファクシミリ装置の構成を示すブロック図である。
【図２】図１のコピー・ファクシミリ装置に搭載されているラインバッファメモリ制御部の構成を示すブロック図である。
【図３】図２のラインバッファメモリの画像処理に応じた割付けを示す図である。
【図４】図２のラインバッファメモリ制御部に設けられているＷＲアドレス制御部の構成を示すブロック図である。
【図５】図２のラインバッファメモリ制御部におけるラインバッファメモリへの書込タイミングを示すタイミングチャートである。
【図６】図２のラインバッファメモリ制御部に設けられているＲＤアドレス制御部の構成を示すブロック図である。
【図７】図２のラインバッファメモリ制御部におけるラインバッファメモリへの読出しタイミングを示すタイミングチャートである。
【図８】図１のコピー・ファクシミリ装置による、ファクシミリ受信画像にヘッダ画像およびフッタ画像を付加した出力画像の一例を示す図である。
【図９】図８の出力画像中の３つの画像ブロックの入出力における切替タイミングを示すタイミングチャートである。
【符号の説明】
１００  ＣＰＵ
２００  ＲＯＭ
３００  ＲＡＭ
４００  操作部
５００  モデム
６００  セントロＩ／Ｆ部
７００  スキャナ
８００  符号化部
９００  復号化部
１０００  ラインバッファメモリ制御部
１０１０  ラインバッファメモリ
１０２０  スキャナＩ／Ｆ部
１０３０  復号器Ｉ／Ｆ部
１０４０  ＤＭＡＩ／Ｆ部
１０５０，１０７２，１０８８  セレクタ
１０６０  ＷＲアドレス制御部
１０６１，１０７７  ラインカウンタ制御部
１０６２，…，１０７１，１０７８，…，１０８７  レジスタ
１０７０  ＲＤアドレス制御部
１０７３，１０８９  主走査カウンタ
１０７４，１０９０  加算器
１０７５，１０９１，１０９３  初期比較器
１０７６  ＷＲＩＴＥラインアドレス主カウンタ
１０８０  アービタ部
１０９０  ラッチ・パラシリ変換部
１０９２  ＲＥＡＤラインアドレス主カウンタ
１０９４  ＲＥＡＤラインアドレス副カウンタ
１１００  画像処理部Ａ
１２００  画像処理部Ｂ
１３００  画像処理部Ｃ
１４００  セレクタ
１５００  ＬＢＰ
【図１】
0004136022.tif 000009
【図２】
0004136022.tif 000010
【図３】
0004136022.tif 000011
【図４】
0004136022.tif 000012
【図５】
0004136022.tif 000013
【図６】
0004136022.tif 000014
【図７】
0004136022.tif 000015
【図８】
0004136022.tif 000016
【図９】
0004136022.tif 000017