(57)【要約】【課題】  変換対象画素のスムージングに際して、参照ウィンドウ領域のサイズ及び周辺画素のパターンの組み合わせによりスムージング部のロジックが膨大になってしまう。【解決手段】  プリンタエンジンからの水平同期信号に応じて、プリンタエンジンの解像度に対応する周波数の第１クロック信号SVCKに同期して２ライン分のデータCVDO_O, CVDO_Eを出力するビデオ生成部１０１と、２ライン分のそれぞれラインデータの変換対象画素データとその周辺画素データを含む参照ウィンドウデータを発生するウィンドウ構成部１０４と、参照ウィンドウデータと変換対象画素データとに基づいて変換対象画素データをスムージングした画素データを生成し、第１クロック信号の周波数の倍の周波数を有する第２クロック信号SampleCLKに同期して出力するスムージング部１０５と、スムージング部１０５によりスムージングされた２ライン分の画素データをそれぞれプリンタエンジンの解像度よりも高い解像度のデータに変換して出力するＰ／Ｓ変換出力部１０６，１０７とを有する。【選択図】  図２
2005053155.tif 000002
【特許請求の範囲】
【請求項１】
プリンタエンジンからの水平同期信号に応じて、前記プリンタエンジンの解像度に対応する周波数の第１クロック信号に同期して２ライン分のデータを出力する画像信号生成手段と、
前記２ライン分のそれぞれラインデータの変換対象画素データとその周辺画素データを含む参照ウィンドウデータを発生するウィンドウデータ生成手段と、
前記参照ウィンドウデータと前記変換対象画素データとに基づいて前記変換対象画素データをスムージングした画素データを生成し、前記第１クロック信号の周波数の倍の周波数を有する第２クロック信号に同期して出力するスムージング手段と、
前記スムージング手段によりスムージングされた２ライン分の画素データをそれぞれ前記プリンタエンジンの解像度よりも高い解像度のデータに変換して出力する出力手段と、を有することを特徴とする印刷制御装置。
【請求項２】
前記スムージング手段から出力される前記画素データは多値データであり、前記出力手段は前記多値データをシリアルデータに変換して出力することを特徴とする請求項１に記載の印刷制御装置。
【請求項３】
前記スムージング手段から出力される前記画素データは、前記２ライン分の各ラインの画素データを交互に配列したデータであることを特徴とする請求項１又は２に記載の印刷制御装置。
【請求項４】
プリンタエンジンからの水平同期信号に応じて、前記プリンタエンジンの解像度に対応する周波数の倍の周波数の第１クロック信号に同期して１ライン分のデータを出力する画像信号生成手段と、
前記１ライン分のラインデータの変換対象画素データとその周辺画素データを含む参照ウィンドウデータを発生するウィンドウデータ生成手段と、
前記参照ウィンドウデータと前記変換対象画素データとに基づいて前記変換対象画素データのスムージングデータを生成し、前記第１クロック信号と同じ周波数を有する第２クロック信号に同期して出力するスムージング手段と、
前記スムージング手段によりスムージングされた画素データを記憶する記憶手段と、
前記記憶手段に前記１ライン分のデータに対応する画素データが記憶されると前記水平同期信号を発生させて前記画像信号生成手段から次のラインのデータを出力させる手段と、
前記記憶手段に記憶された２ライン分の画素データを前記プリンタエンジンの解像度に対応する周波数を有する第３クロック信号に同期して読み出し読出し手段と、
前記読出し手段により読み出された前記２ライン分の画素データをそれぞれ前記プリンタエンジンの解像度よりも高い解像度のデータに変換して出力する出力手段と、
を有することを特徴とする印刷制御装置。
【請求項５】
前記ウィンドウデータ生成手段は、前記参照ウィンドウデータとして複数ライン分のラインデータを記憶するラインデータ記憶手段を更に有することを特徴とする請求項１又は４に記載の印刷制御装置。
【請求項６】
前記プリンタエンジンは、複数のレーザユニットを有することを特徴とする請求項１乃至５のいずれか１項に記載の印刷制御装置。
【請求項７】
プリンタエンジンからの水平同期信号に応じて、前記プリンタエンジンの解像度に対応する周波数の第１クロック信号に同期して２ライン分のデータを出力する画像信号生成工程と、
前記２ライン分のそれぞれラインデータの変換対象画素データとその周辺画素データを含む参照ウィンドウデータを発生するウィンドウデータ生成工程と、
前記参照ウィンドウデータと前記変換対象画素データとに基づいて前記変換対象画素データをスムージングした画素データを生成し、前記第１クロック信号の周波数の倍の周波数を有する第２クロック信号に同期して出力するスムージング工程と、
前記スムージング工程によりスムージングされた２ライン分の画素データをそれぞれ前記プリンタエンジンの解像度よりも高い解像度のデータに変換して出力する出力工程と、を有することを特徴とする印刷制御方法。
【請求項８】
前記スムージング工程により出力される前記画素データは多値データであり、前記出力工程では前記多値データをシリアルデータに変換して出力することを特徴とする請求項７に記載の印刷制御方法。
【請求項９】
前記スムージング工程で出力される前記画素データは、前記２ライン分の各ラインの画素データを交互に配列したデータであることを特徴とする請求項７又は８に記載の印刷制御方法。
【請求項１０】
プリンタエンジンからの水平同期信号に応じて、前記プリンタエンジンの解像度に対応する周波数の倍の周波数の第１クロック信号に同期して１ライン分のデータを出力する画像信号生成工程と、
前記１ライン分のラインデータの変換対象画素データとその周辺画素データを含む参照ウィンドウデータを発生するウィンドウデータ生成工程と、
前記参照ウィンドウデータと前記変換対象画素データとに基づいて前記変換対象画素データのスムージングデータを生成し、前記第１クロック信号と同じ周波数を有する第２クロック信号に同期して出力するスムージング工程と、
前記スムージング工程によりスムージングされた画素データをメモリに記憶する記憶工程と、
前記メモリに前記１ライン分のデータに対応する画素データが記憶されると前記水平同期信号を発生させて前記画像信号生成工程から次のラインのデータを出力させる工程と、
前記メモリに記憶された２ライン分の画素データを前記プリンタエンジンの解像度に対応する周波数を有する第３クロック信号に同期して読み出し読出し工程と、
前記読出し工程により読み出された前記２ライン分の画素データをそれぞれ前記プリンタエンジンの解像度よりも高い解像度のデータに変換して出力する出力工程と、
を有することを特徴とする印刷制御方法。
【請求項１１】
前記ウィンドウデータ生成工程は、前記参照ウィンドウデータとして複数ライン分のラインデータをメモリに記憶するラインデータ記憶工程を更に有することを特徴とする請求項７又は１０に記載の印刷制御方法。
【請求項１２】
前記プリンタエンジンは、複数のレーザユニットを有することを特徴とする請求項７乃至１１のいずれか１項に記載の印刷制御方法。
【請求項１３】
複数のレーザユニットを備えるプリンタエンジンと、
前記プリンタエンジンからの水平同期信号に応じて、前記プリンタエンジンの解像度に対応する周波数の第１クロック信号に同期して２ライン分のデータを出力する画像信号生成手段と、
前記２ライン分のそれぞれラインデータの変換対象画素データとその周辺画素データを含む参照ウィンドウデータを発生するウィンドウデータ生成手段と、
前記参照ウィンドウデータと前記変換対象画素データとに基づいて前記変換対象画素データをスムージングした画素データを生成し、前記第１クロック信号の周波数の倍の周波数を有する第２クロック信号に同期して出力するスムージング手段と、
前記スムージング手段によりスムージングされた２ライン分の画素データをそれぞれ前記プリンタエンジンの解像度よりも高い解像度のデータに変換して出力する出力手段と、を有することを特徴とする印刷装置。
【請求項１４】
複数のレーザユニットを備えるプリンタエンジンと、
プリンタエンジンからの水平同期信号に応じて、前記プリンタエンジンの解像度に対応する周波数の倍の周波数の第１クロック信号に同期して１ライン分のデータを出力する画像信号生成手段と、
前記１ライン分のラインデータの変換対象画素データとその周辺画素データを含む参照ウィンドウデータを発生するウィンドウデータ生成手段と、
前記参照ウィンドウデータと前記変換対象画素データとに基づいて前記変換対象画素データのスムージングデータを生成し、前記第１クロック信号と同じ周波数を有する第２クロック信号に同期して出力するスムージング手段と、
前記スムージング手段によりスムージングされた画素データを記憶する記憶手段と、
前記記憶手段に前記１ライン分のデータに対応する画素データが記憶されると前記水平同期信号を発生させて前記画像信号生成手段から次のラインのデータを出力させる手段と、
前記記憶手段に記憶された２ライン分の画素データを前記プリンタエンジンの解像度に対応する周波数を有する第３クロック信号に同期して読み出し読出し手段と、
前記読出し手段により読み出された前記２ライン分の画素データをそれぞれ前記プリンタエンジンの解像度よりも高い解像度のデータに変換して出力する出力手段と、
を有することを特徴とする印刷装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数ラインを並行して走査して印刷を行うプリンタエンジンを制御する技術に関するものである。
【背景技術】
【０００２】
レーザユニットを複数備え（ツインビーム：Twin Beam）、コントローラ部からの２本のシリアルビデオ信号により２つのレーザユニットを同時に駆動して２本のレーザ光を同時に走査させることにより、同じプロセスであっても２倍のスループットで印刷が可能なプリンタエンジンが知られている。
【０００３】
また、このようなプリンタエンジンを使用して印刷する際、文字や図形などのエッジ部分を丸めるスムージング処理を行うことも知られている。
【０００４】
上述したツインビーム対応のプリンタエンジンで、このようなスムージング処理を実施する場合は、変換対象画素のデータを、その周辺画素データを含む参照ウィンドウ領域内で、主走査方向の密度を向上させたスムーズ化された画素データにリアルタイムで変換するスムージング部を複数用いる必要がある。更には、各レーザ光に対応する画素データを決定するために、各参照ウィンドウ領域は互いに１ラインずらして設定されており、それぞれがスムージング部に入力されて処理されるように構成されている。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
このように上記従来例では、変換対象画素のスムージングに際して、参照ウィンドウ領域のサイズ及び周辺画素のパターンの組み合わせによりスムージング部のロジックが膨大になってしまう。更には、プリンタエンジンの解像度に対して何倍の解像度で出力するかを示す、スムージング後の画素データの解像度によってもスムージング部の回路規模が増大する方向にある。従って、例えば１チップのＡＳＩＣ内に印刷制御回路を組込むような場合、複数のスムージング部を備えることはゲートの増加に直結し、ひいてはシステム全体のコストアップにつながるという欠点があった。
【０００６】
本発明は上記従来例に鑑みてなされたもので、複数のラインデータを並行して処理し、変換対象画素をスムージングして印刷できるようにすることを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために本発明の印刷制御装置は以下のような構成を備える。即ち、
プリンタエンジンからの水平同期信号に応じて、前記プリンタエンジンの解像度に対応する周波数の第１クロック信号に同期して２ライン分のデータを出力する画像信号生成手段と、
前記２ライン分のそれぞれラインデータの変換対象画素データとその周辺画素データを含む参照ウィンドウデータを発生するウィンドウデータ生成手段と、
前記参照ウィンドウデータと前記変換対象画素データとに基づいて前記変換対象画素データをスムージングした画素データを生成し、前記第１クロック信号の周波数の倍の周波数を有する第２クロック信号に同期して出力するスムージング手段と、
前記スムージング手段によりスムージングされた２ライン分の画素データをそれぞれ前記プリンタエンジンの解像度よりも高い解像度のデータに変換して出力する出力手段とを有することを特徴とする。
【０００８】
上記目的を達成するために本発明の印刷装置は以下のような構成を備える。即ち、
複数のレーザユニットを備えるプリンタエンジンと、
プリンタエンジンからの水平同期信号に応じて、前記プリンタエンジンの解像度に対応する周波数の倍の周波数の第１クロック信号に同期して１ライン分のデータを出力する画像信号生成手段と、
前記１ライン分のラインデータの変換対象画素データとその周辺画素データを含む参照ウィンドウデータを発生するウィンドウデータ生成手段と、
前記参照ウィンドウデータと前記変換対象画素データとに基づいて前記変換対象画素データのスムージングデータを生成し、前記第１クロック信号と同じ周波数を有する第２クロック信号に同期して出力するスムージング手段と、
前記スムージング手段によりスムージングされた画素データを記憶する記憶手段と、
前記記憶手段に前記１ライン分のデータに対応する画素データが記憶されると前記水平同期信号を発生させて前記画像信号生成手段から次のラインのデータを出力させる手段と、
前記記憶手段に記憶された２ライン分の画素データを前記プリンタエンジンの解像度に対応する周波数を有する第３クロック信号に同期して読み出し読出し手段と、
前記読出し手段により読み出された前記２ライン分の画素データをそれぞれ前記プリンタエンジンの解像度よりも高い解像度のデータに変換して出力する出力手段と、
を有することを特徴とする。
【０００９】
上記目的を達成するために本発明の印刷制御方法は以下のような工程を備える。即ち、
プリンタエンジンからの水平同期信号に応じて、前記プリンタエンジンの解像度に対応する周波数の第１クロック信号に同期して２ライン分のデータを出力する画像信号生成工程と、
前記２ライン分のそれぞれラインデータの変換対象画素データとその周辺画素データを含む参照ウィンドウデータを発生するウィンドウデータ生成工程と、
前記参照ウィンドウデータと前記変換対象画素データとに基づいて前記変換対象画素データをスムージングした画素データを生成し、前記第１クロック信号の周波数の倍の周波数を有する第２クロック信号に同期して出力するスムージング工程と、
前記スムージング工程によりスムージングされた２ライン分の画素データをそれぞれ前記プリンタエンジンの解像度よりも高い解像度のデータに変換して出力する出力工程と、を有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、複数のラインデータを並行して処理し、変換対象画素をスムージングして印刷できるという効果がある。
【発明を実施するための最良の形態】
【００１１】
以下、添付図面を参照して本発明の好適な実施例を詳細に説明する。
【００１２】
図１は本発明の実施例に係るレーザビームプリンタの概略構成を示すブロック図である。
【００１３】
図において、１は図２に詳細を示す印刷制御部で、この構成は図２を参照して詳しく後述する。２はプリンタエンジンで、本実施例では、電子写真方式により画像を印刷する電子写真方式のプリンタエンジン（レーザビームプリンタ）である。５は水平同期信号に対応するＢＤ信号である。３は印刷する画像データを入力する画像入力部で、この画像入力部としては、例えばハードディスクやＣＤ，ＤＶＤ等のように画像データを記憶している記憶装置、或いはホストコンピュータやインターネット等から画像データを入力する入力ユニットであってもよい。４は画像入力部３から印刷制御部１に入力される多値画像データを示している。
【００１４】
［実施例１］
図２は、本実施例１に係る印刷制御部１の構成を説明するブロック図である。
【００１５】
図１において、１０１はビデオ生成部で、画像入力部３から画像データ４を入力しており、この印刷制御部１はプリンタエンジン２からの水平同期信号（ＢＤ信号）５により起動され、有効印刷領域期間にＳＶＣＫ（プリンタエンジン２の解像度に対応する周波数を有している）に同期して、奇数ライン用のビデオデータ（CVDO_O）及び偶数ライン用のビデオデータ（CVDO_E）をそれぞれ各画素毎に切り出して出力している。１０２はＲＡＭで、スムージング用の参照ウィンドウ（例えば、３ライン×３画素）を構成するために、変換対象画素が存在している走査ラインの前の数ラインの画素データ（CVDO）を格納している。１０３はウィンドウエリア制御部で、ＲＡＭ１０２からの画素データ及びＣＶＤＯ（CVDO_O, CVDO_E）を入力し、奇数ライン／偶数ライン用の参照ウィンドウ用の走査ライン及び変換対象画素を切り換えている。１０４はウィンドウ構成部で、変換対象の画素データをスムーズ化した画素データにリアルタイムで変換している。
【００１６】
ウィンドウ構成部１０４は、その内部に複数走査ライン分のシフトレジスタを含み、これらシフトレジスタの出力とウィンドウエリア制御部１０３からの切換信号により、奇数ライン／偶数ライン用でそれぞれ、主走査×副走査が（Ｘ×Ｙ）のウィンドウを生成し、変換対象画素と、その周囲画素データの参照を可能にしている。１０５はスムージング部で、ウィンドウ構成部１０４からのWindow_Data６を入力し、変換対象画素データを、その周囲画素データに基づいて、主走査方向の密度を４倍にしたスムーズ化されたデータ（MxData）７にリアルタイムで変換するロジック部を備えている。
【００１７】
尚、ウィンドウ構成部１０４内のシフトレジスタは、前述のＳＶＣＫに同期して、ウインドウエリア制御部１０３から入力したデータを主走査方向にＸ段分シフトするが、この１段分のシフトの際に奇数ライン／偶数ラインの副走査方向の参照ラインを切り換えなければならないので、ＳＶＣＫの周波数の倍の周波数のクロック、即ち、プリンタエンジン２の解像度に対応する倍の周波数のクロック（SampleCLK）で、ウィンドウエリア制御部１０３の切換信号を生成する必要がある。それにより、スムージング部１０５から出力されるMxData７も、このSampleCLKの周波数に同期して出力される構成となる。
【００１８】
１０６，１０７はそれぞれＰ／Ｓ変換出力部で、スムージング部１０５から出力されるSampleCLKに同期したMxData７から、該当するラインのMxDataのみを取り出し、更にお互いの位相を合わせ、プリンタエンジン２の解像度に対応する周波数の４倍の周波数のクロック（VCLK）でパラレル→シリアル変換し、プリンタエンジン２にスムージングしたビデオ信号（CVDO_O，SVDO_E）として出力する。尚、これらＰ／Ｓ変換出力部１０６，１０７はそれぞれ並列で動作し、奇数ライン用のMxDataはＰ／Ｓ変換出力部１０６から出力され、偶数ライン用のMxDataはＰ／Ｓ変換出力部１０７からそれぞれ出力される。
【００１９】
次に、以上の構成に基づく、本発明の実施例１に係るレーザビームプリンタの動作を説明する。
【００２０】
図３及び図４は、本実施例１に係る印刷制御部１における画像データの処理の流れを説明するフローチャートである。
【００２１】
まずステップＳ１で、プリンタエンジン２から、有効印刷領域期間を示す水平同期信号（ＢＤ信号）が入力されるとステップＳ２に進み、ビデオ生成部１０１は奇数ライン用のビデオデータ（CVDO_O）及び偶数ライン用のビデオデータ（CVDO_E）を、プリンタエンジン２の解像度に対応する周波数を有するＳＶＣＫに同期して出力する。ここでビデオ生成部１０１は、奇数及び偶数の各１ライン分のビデオデータの転送が終了するまで画像入力部３から連続して画像データを入力する。そして１ラインのビデオデータの転送が終了すると、例えば画像入力部３がメモリの場合は、そのメモリにおける奇数／偶数各ライン用の１ライン分のオフセットアドレスを現在の読み出しアドレスに加算して、そのメモリの次のラインの読み出しアドレスをセットする。そしてプリンタエンジン２からの次の水平同期信号（ＢＤ信号）を待つ。
【００２２】
こうしてステップＳ２で、ビデオ生成部１０１から奇数及び偶数ラインの各画素データ（CVDO_O，CVDO_E）が出力されると、ステップＳ３で、ＲＡＭ１０２のそのライン以前のラインのデータが記憶されているかをみる。記憶されていればステップＳ４に進み、CVDO_O及びCVDO_Eの出力タイミングと同期して、ＲＡＭ１０２から主走査方向に同じ位置にある前の数ラインのデータ（RD_Data）を読み出し、ビデオ生成部１０１から出力された２ライン分のＣＶＤＯ（CVDO_O，CVDO_E）を加えたデータ群をウィンドウエリア制御部１０３に出力する。次にステップＳ５に進み、その新たな２ライン分のＣＶＤＯ（CVDO_O，CVDO_E）を、ＲＡＭ１０２にストアする。
【００２３】
一方、例えば１ページの最初のラインの場合のように、ＲＡＭ１０２に前ラインのデータが記憶されていない時はステップＳ６に進み、前ラインのデータを「０」として、ビデオ生成部１０１から出力された２ライン分のＣＶＤＯ（CVDO_O，CVDO_E）を加えたデータ群をウィンドウエリア制御部１０３に出力する。そしてステップＳ５に進む。
【００２４】
次にステップＳ７に進み、ウィンドウエリア制御部１０３は、ウィンドウ構成部１０４が奇数ライン／偶数ラインのそれぞれで｛主走査（Ｘ）×副走査（Ｙ）｝のウィンドウを構成できるように、図６にも示したように、副走査方向のウィンドウ参照ライン及び変換対象画素を切り換えるための信号を、クロック信号（SampleCLK）に同期して生成する。このクロック信号（SampleCLK）は、プリンタエンジン２における解像度に対応する周波数の倍の周波数を有している。
【００２５】
次にステップＳ８に進み、ウィンドウ構成部１０４は、プリンタエンジン２の解像度に対応する周波数のクロック信号SVCKに同期して主走査方向にＸ段シフトレジスタからのデータを出力する。その際、各１段毎に奇数ライン用のWindow_dataと偶数ライン用のWindow_Dataとが、クロック信号（SampleCLK）に同期して切り換えられる。このSampleCLKに同期したWindow_Dataが、奇数及び偶数用の参照ウィンドウデータとしてスムージング部１０５に出力される。
【００２６】
次にステップＳ９に進み、スムージング部１０５は、｛主走査（Ｘ）×副走査（Ｙ）｝のウィンドウ領域（Window_Data）から、その中心にある変換対象画素を、その周辺画素データの状態に基づいてリアルタイムでスムーズ化した画素データ（MxData）を出力する。
【００２７】
本実施例では、プリンタエンジン２の解像度に対して主走査方向の密度を４倍にしているので、１変換画素当たり４ビットのパラレルデータとなる。尚、このMxDataの動作周波数もSampleCLKに同期していることは言うまでもない。
【００２８】
次にステップＳ１０に進み、MxDataが奇数ラインか、偶数ラインかを判定し、奇数ラインであればステップＳ１１で、MxDataから奇数ラインのデータ（MxD_O）を取り出し、偶数ラインであればステップＳ１２に進み、MxDataから偶数ラインのデータ（MxD_E）を取り出す。そしてステップＳ１３に進み、奇数ラインのデータ（MxD_O）と偶数ラインのデータ（MxD_E）との位相を合わせる。この動作は実際には、奇数ラインのデータ（MxD_O）と偶数ラインのデータ（MxD_E）のそれぞれが、Ｐ／Ｓ変換出力部１０６，１０７のそれぞれに入力されると、ウィンドウエリア制御部１０３からの各ラッチ信号（D_LATCH_O，D_LATCH_E）により、奇数ライン／偶数ライン用の有効なMxDataのみが取り出される（MxD_O，MxD_E）ことにより実現されている。ここで、各ラッチ信号のタイミングが逆位相となっているので、出力データであるMxD_O及びMxD_Eの位相が合致しない。よって、このままＰ／Ｓ変換して、プリンタエンジン２にスムージング化したビデオ信号を転送しても、１ライン毎に印刷出力結果にがたつき（ジッター）が発生する。これを防止するために、Ｐ／Ｓ変換出力部１０６内でMxD_Oを遅らせることにより、MxD_Eと位相を合わせている。そして、位相が合致したスムーズ化したデータ（MxD_O'とMxD_E）を、それぞれ共通の信号（Conv_LD）でロードした後、プリンタエンジン２の解像度に対して主走査方向の密度に相当する４倍の周波数のクロック（VCLK）でパラレル→シリアル変換する。こうして生成されたスムージングしたデータ（SVDO_O，SVDO_E）をプリンタエンジン２のレーザユニットに入力し、それによりレーザを２本同時に走査させることで対ビームのプリンタエンジンを制御する。
【００２９】
上記処理が、プリンタエンジン２からの１水平同期信号期間、即ち、１ラインに亙って継続されて１ライン分の画素データがスムージング化されて出力され、ステップＳ１５で、１ライン分の出力が終了した時点でステップＳ１６に進み、ＲＡＭ１０２上のRD_Dataのうち、古い２ライン分のデータを破棄し、CVD_O及びCVDO_Eに更新した新しいデータ（WR_Data）をＲＡＭ１０２に書き戻す。このWR_Dataが、次ラインの主走査方向に同一であるVCDO_O及びCVDO_Eに対して、新たなウィンドウ領域の構成のために読み出される。そして再びステップＳ９に戻って、プリンタエンジン２から次の水平同期信号が入力されるのを待つ。尚、ステップＳ１５で１ラインの終了でない時はステップＳ２に戻り、前述の処理を実行する。
【００３０】
図５は、本実施例１に係る印刷制御部１における画像データの入力及び出力を説明するタイミング図である。
【００３１】
図５において、ビデオ生成部１０１から出力されるCVDO_O，CVDO_Eは、プリンタエンジン２の解像度に対応する周波数のクロックに同期して出力される。これに対してスムージング部１０５から出力されるMxDataの同期クロックの周波数は、プリンタエンジン２の解像度に対応する周波数の倍に設定されている。更に、シリアル変換されたSVDO_O，SVDO_Eは、プリンタエンジン２の解像度に対応する周波数の４倍の周波数のクロックに同期して出力される。
【００３２】
この画像処理の詳細のタイミングを示すのが図６である。
【００３３】
図６において、SVCKはプリンタエンジン２の解像度に対応する周波数のクロック信号を示しており、SampleCLKは、その倍の周波数のクロック信号、VCLKは、プリンタエンジン２の解像度に対応する周波数の４倍の周波数のクロック信号を示している。ビデオ生成部１０１から出力されるCVDO_O，CVDO_Eの「O0」「O1」…「OD」、「E0」「E1」…「ED」はそれぞれ奇数ライン及び偶数ライン上の画素データを示している。RD_Dataは、ウィンドウを構成するためにＲＡＭ１０２から参照データとして読み出される前ライン上で、CVDO_O，CVDO_Eに対応する位置にある画素データを示し、WR_DataはＲＡＭ１０２に書き戻されるデータをそれぞれ示している。スムージング部１０５の出力MxDataは、SampleCLKに同期して出力され、奇数ラインの画素データをＰ／Ｓ変換出力部１０６内のシフトレジスタにラッチするためのラッチ用クロックD_LATCH_Oに同期してＰ／Ｓ変換出力部１０６に取り込まれる。同様に、MxDataの偶数ラインの画素データは、ラッチ用クロックD_LATCH_Eに同期してＰ／Ｓ変換出力部１０７内のシフトレジスタに取り込まれる。
【００３４】
MxD_O，MxD_Eのそれぞれは、Ｐ／Ｓ変換出力部１０６，１０７内でシフトレジスタにラッチされてシフト出力されるデータを示している。図から明らかなように、このままではMxD_OとMxD_Eは、D_LATCH_OとD_LATCH_Eの位相差分位相がずれているため、MxD_Oの位相を調整したのがMxD_O'である。Conv_LDは、こうして位相差が調整されたMxD_O'とMxD_Eとをロードするためのクロック信号である。そして、これらロードされたMxD_O'とMxD_Eは、４倍の周波数を有しているVCLKに同期して、それぞれ奇数ライン、偶数ラインの画素データを主走査方向に４倍の解像度に変換したSVDO_O，SVDO_Eとして出力される。これらSVDO_O，SVDO_Eはプリンタエンジン２に送られて、２つのレーザユニットを駆動するのに使用される。
【００３５】
図７は、参照ウィンドウのサイズを主走査方向に１１ドット、副走査方向に７ラインとした場合の参照ウィンドウを構成する参照ライン及び変換対象画素の遷移を説明する図である。
【００３６】
以上説明したように本実施例１によれば、ビデオ生成部１０１の動作クロックSVCKの周波数をプリンタエンジン２の解像度に対応する周波数と同じにし、プリンタエンジン２からの水平同期信号（BD）に同期して奇数ラインと偶数ラインの２ラインのビデオデータ（CVDO_O，CVDO_E）を同時に出力する。更に、スムージング部１０５が参照するウィンドウの副走査方向のライン及び変換対象画素をウィンドウエリア制御部１０３で切り換えることにより、従来のスムージング部１０５を変更することなく、且つ、対ビームのプリンタエンジン２に対応したスムージングデータ（SVDO_O，SVDO_E）を出力することができる。これにより、１個当りのゲート規模が大きいスムージング部を複数持つ必要がなくなり、ＡＳＩＣのゲート削減が図れるという効果がある。
【００３７】
［実施例２］
図８は、本発明の実施例２に係る印刷制御部１の構成を示すブロック図である。
【００３８】
図８において、２０１はビデオ生成部で、画像入力部３から画像データを取り込み、プリンタエンジン２からの水平同期信号（BD）により有効印刷領域期間にSVCKに同期してビデオデータ（CVDO）を各画素毎に切り出している。尚、ビデオ生成部２０１の同期クロックSVCKの周波数は、エンジンプリンタ２の解像度をＲとすると、解像度２Ｒに対応する周波数となる。つまり、プリンタエンジン２へのビデオ出力の一周期に対し、その半分の時間で１ラインのデータを転送可能にしている。これを利用して１ラインのCVDOの転送終了時点で、ダミーの水平同期信号(DammyBD)を印刷制御部１内で生成し、これをトリガにして次のラインのCVDOも出力する。このように、プリンタエンジン２の水平同期信号の周期内に２ライン分のCVDOを転送する構造とする。
【００３９】
２０２はＲＡＭで、参照ウィンドウを構成するために、前の数ラインのCVDOを格納している。２０３はウィンドウ構成部で、入力画像データをスムーズ化されたデータにリアルタイム変換するため、内部にシフトレジスタを含み、それにより（主走査×副走査）が（Ｘ×Ｙ）のウィンドウを生成し、変換対象画素の周囲画素データを参照する参照ウィンドウを生成している。２０４はスムージング部で、ウィンドウ構成部２０３からのWindow_Dataにより、変換対象画素データをその周囲画素データに基づき、主走査方向の密度を４倍にしたスムーズ化されたデータ（MxData）にリアルタイム変換している。２０５はラインメモリで、スムーズ化された４ビットのパラレルデータであるMxDataを変換対象画素単位で読み出し／書き込みが可能である。尚、このラインメモリ２０５は、２ライン分の画素データが格納できる容量のものを２バンク持ち、これを読み出し／書き込みで交互に使用する。もちろん、ｎライン用と（ｎ＋１）ライン用のラインメモリでは、イネーブル信号を別々に制御しているのは言うまでもない。
【００４０】
２０６，２０７はそれぞれＰ／Ｓ変換出力部で、ラインメモリ２０５に格納された２ライン分の画素データをプリンタエンジン２の解像度Ｒの４倍に対応する周波数のクロック（VCLK）でパラレル→シリアル変換し、プリンタエンジン２にスムージング化されたビデオ信号（SVDO_O,SVDO_E）として出力するシフトレジスタ部である。尚、Ｐ／Ｓ変換出力部２０６，２０７はそれぞれ並列で動作し、ｎライン用のラインメモリデータはＰ／Ｓ変換出力部２０６で、（ｎ＋１）ライン用のラインメモリデータはＰ／Ｓ変換出力部２０７でそれぞれ処理される。
【００４１】
次に、以上の構成に基づいて本発明の実施例２の動作を説明する。
【００４２】
図９は実施例２に係る印刷制御部１においてラインメモリ２０５に画素データを格納する処理を説明するフローチャート、そして図１０は実施例２に係る印刷制御部１においてラインメモリ２０５からデータを読み出す処理を説明するフローチャートである。
【００４３】
まず図９において、ステップＳ２１で、プリンタエンジン２からＢＤ信号が入力されるとステップＳ２２に進み、ビデオ生成部２０１は先述した通り、プリンタエンジン２の解像度Ｒに対応する周波数の倍の周波数２Ｒのクロック信号SVCKに同期してｎライン（最初はｎ＝１）のCVDOを発生する。次にステップＳ２３に進み、CVDOの出力タイミングと同期して、ＲＡＭ２０２から主走査方向で同じ位置にある数ライン前の画素データ(RD_DATA)を読み出し、ビデオ生成部２０１から出力されるCVDOを加えた画素データ群をウィンドウ構成部２０３に出力する。尚、ＲＡＭ２０２のアドレスカウント及びイネーブルのタイミング等については一括して印刷制御部１内のコントロールロジック部（図示しない）で管理する。また、最初のラインでＲＡＭ２０２に、それより前のラインデータが記憶されていない時は、「０」が出力される。こうしてウィンドウ構成部２０３でシフトレジスタが動作し、｛（主走査Ｘ）×（副走査方向Ｙ）｝のウィンドウ領域を構成する。即ち、ＲＡＭ２０２に記憶されている（Ｙ−１）ライン分の画素データに、ビデオ生成部２０１から出力されたCVDOを加えた画素データ群を（Ｘ−１）段シフトさせる。
【００４４】
次にステップＳ２４に進み、スムージング部２０４は｛（主走査Ｘ）×（副走査Ｙ）｝のウィンドウ領域(Window_Data)から、その中心にある変換対象画素データを、その周辺画素データに基づいてスムーズ化し、その結果である画素データ（MxData）としてリアルタイムで出力する。本実施例２では、プリンタエンジン２の解像度に対して主走査方向の密度を４倍にしているので、１変換対象画素当たり４ビットのパラレルデータとなる。次にステップＳ２５に進み、このパラレルデータを、ラインメモリ２０５内の、その時点で設定されているバンクに書き込む。そしてステップＳ２６で、１ライン分の画素データを全てラインメモリ２０５に書込んだかを調べ、１ライン分のデータの処理が終了していない時はステップＳ２２に戻り、前述の処理を実行する。
【００４５】
このステップＳ２６で１ライン分のデータの処理が終了するとステップＳ２７に進み、ＲＡＭ２０２の最も古いラインのデータを破棄し、最新のCVDOを最も新しいラインデータとしてＲＡＭ２０２に書き戻す。このデータ（WR_Data）が、次ラインの主走査方向に同じ位置にあるCVDOに対して、新たなウィンドウ領域の構成のために読み出される。
【００４６】
次にステップＳ２８に進み、２ライン分の処理が終了したかを調べ、２ラインの処理が終了していない時はステップＳ２９に進み、ダミーのＢＤ信号を発生してビデオ生成部２０１に入力する。そしてステップＳ３０で、ｎを＋１してステップＳ２２に進み、次にラインのデータの処理に進む。
【００４７】
このようにして、プリンタエンジン２からの水平同期信号（ＢＤ）が入力されると最初にビデオ生成部２０１が出力する１ライン分のCVDOは、ラインメモリ２０５のｎライン用のメモリエリアに書き込む。そして、この１ライン分のデータの書込みが終了すると次にダミーのＢＤ信号を発生させ、ビデオ生成部２０１が出力する次のラインのCVDOを、ラインメモリ２０５の（ｎ＋１）ライン用のメモリエリアに書き込む。つまり、ラインメモリ２０５内の設定しているバンクを、ｎライン用のCVDOの転送終了時点で（ｎ＋１）ライン用に変更する。
【００４８】
このようにして、プリンタエンジン２からの水平同期信号の周期内にビデオ生成部２０１が発生する、２ライン分のCVDOをスムーズ化したMxDataをラインメモリ２０５へ格納し、２ライン分の転送が終了したらステップＳ３１に進み、ｎを＋１し、次にステップＳ３２で、ステップＳ２７と同様にして、ＲＡＭ２０２の最も古いラインデータを削除し、最新のCVDOを最も新しいラインデータとしてＲＡＭ２０２に書き戻す。そのラインメモリ２０５のバンクを、現在読み出している側のバンクに切り換えて、次のプリンタエンジン２からの水平同期信号（ＢＤ）を待つ｛書き込みフラグは（ｎ＋１）ラインからｎラインに戻す｝。
【００４９】
ここまでが、ビデオ生成部２０１から出力されるラインデータをスムージングしてラインメモリ２０５へ書き込むまでの一連の動作となる。
【００５０】
次に図１０のフローチャートを参照して、ラインメモリ２０５からスムーズ化したラインデータを読み出し、それをプリンタエンジン２にスムージングデータとして出力する処理を説明する。
【００５１】
まずステップＳ４１で、プリンタエンジン２から有効印刷領域期間の先頭を示すＢＤ信号が入力されるとステップＳ４２に進み、プリンタエンジン２からの水平同期（ＢＤ）信号により発生したラインメモリ２０５内のスムーズ化データが２ライン分同時に読み出される。尚、この場合は、ラインメモリ２０５のバンクは、書き込みの場合とは逆に設定されている。即ち、ステップＳ４２では、（ｎ−２）ラインのMxDataがＰ／Ｓ変換出力部２０６へ入力され、（ｎ−１）ラインのMxDataはＰ／Ｓ変換出力部２０７へ入力される。そして、Ｐ／Ｓ変換出力部２０６，２０７はそれぞれ並列に動作し、プリンタエンジン２の解像度Ｒに対して主走査方向の密度が４倍の周波数のクロック信号、即ち、解像度４Ｒに対応する周波数のクロック信号VCLKに同期してパラレル→シリアル変換される。こう歯手変換されたシリアルデータがスムージングデータ（SVDO_O，SVDP_E）として、プリンタエンジン２のレーザユニットに入力される。これにより、１対の半導体レーザが同時に駆動されて、２本のレーザ光を同時に走査させることで対ビームのプリンタエンジン２を制御する。
【００５２】
尚、各々が１ライン分のスムーズ化したラインデータのＰ／Ｓ変換及びスムージングデータの転送を終了した時点で、ラインデータの読み出しに使用するラインメモリ２０５のバンクを、現在書き込みように設定されているバンクに切り換えて、プリンタエンジン２からの水平同期信号を待つ。
【００５３】
以上説明した印刷制御部の動作はプリンタエンジン２からの水平同期信号を入力する度に実行される。
【００５４】
図１１は、本実施例２に係る印刷制御部１における画像データの入力及び出力を説明するタイミング図である。
【００５５】
図１１において、ビデオ生成部２０１から出力されるCVDOは、プリンタエンジン２の解像度に対応する周波数の倍の周波数のクロックに同期して出力される。そして１ライン分のデータの処理が終了するとダミーのＢＤ信号が発生されて、次のラインの画素データがビデオ生成部２０１から出力される。スムージング部２０５から出力されるMxDataの同期クロックの周波数は、プリンタエンジン２の解像度に対応する周波数の倍（２Ｒ）に設定されており、この周波数（２Ｒ）のクロック信号に同期してラインメモリ２０５の設定されているバンクに格納される。ラインメモリ２０５の読み出しように設定されているバンクから２ライン分のデータ（MxD_n，MxD_n+1）が読み出されてＰ／Ｓ変換出力部２０６，２０７に送られる。こうしてＰ／Ｓ変換出力部２０６，２０７でシリアル変換されたSVDO_O，SVDO_Eは、プリンタエンジン２の解像度に対応する周波数の４倍の周波数のクロックに同期して出力される。
【００５６】
この画像処理の詳細のタイミングを示すのが図１２である。
【００５７】
図１２において、SVCKはプリンタエンジン２の解像度に対応する倍の周波数のクロック信号を示している。VCLKは、プリンタエンジン２の解像度に対応する周波数の４倍の周波数のクロック信号を示している。ビデオ生成部２０１から出力される現ラインのCVDO_O（「n0」「n1」…「nD」）及び次ラインのCVDO（「n+1,0」「n+1,1」…「n+1,D」）はそれぞれｎライン（現ライン）及び次（ｎ＋１）ライン上の画素データを示している。RD_Dataは、ウィンドウを構成するためにＲＡＭ２０２から参照データとして読み出される前ライン上で、CVDOに対応する位置にある画素データを示している。スムージング部２０５の出力MxDataは、SVCKに同期して出力され、このスムージングされたデータはラインメモリ２０５に格納される。このラインメモリ２０５の１ライン分の画素データ（MxD_n，MxD_n+1）は、SVCKの周波数の１／２倍の周波数のクロック信号（プリンタエンジン２の解像度に対応）に同期して出力され、それぞれＰ／Ｓ変換出力部２０６，２０７内のシフトレジスタにラッチされる。尚、ここではラインメモリに現ライン（ｎライン）と次（ｎ＋１）ラインのラインデータが書込まれている時は、その直前に書込まれた（ｎ−１）ラインと（ｎ−２）ラインのデータがラインメモリ２０５から読み出されて出力されている。
【００５８】
Conv_LDは、こうして２つのラインMxD_nとMxD_n+1とをＰ／Ｓ変換出力部２０６，２０７にロードするためのロード信号である。そして、これらロードされたMxD_nとMxD_n+1はそれぞれ、SVCKの周波数の１／２倍の周波数（プリンタエンジン２の解像度に対応）の４倍の周波数を有しているVCLKに同期して、それぞれ奇数ライン、偶数ラインの画素データを主走査方向に４倍の解像度に変換したSVDO_O，SVDO_Eとして出力される。これらSVDO_O，SVDO_Eはプリンタエンジン２に送られて２つのレーザユニットを駆動するのに使用される。
【００５９】
以上説明したように本実施例２によれば、ビデオ生成部２０１の動作クロックの周波数をプリンタエンジン２の解像度に対応する周波数の倍として、プリンタエンジン２からの水平同期（ＢＤ）信号の周期内で２ライン分のCVDOを出力することができる。更に、スムージング部２０４からのスムーズ化データ（MxData）をラインメモリ２０５に格納することにより、対ビーム対応のプリンタエンジンでもスムージングを行なうことが可能で、ＡＳＩＣのゲート削減・システム全体のコストダウンが得られるという効果がある。
【００６０】
また本実施例によれば、特徴的なビデオ生成部及びデータ記憶部を備えることで、単一のスムージング部を従来から変更することなく使用でき、且つ、対ビーム対応のエンジンでもスムージングを行なうことが可能で、ＡＳＩＣのゲート削減・システム全体のコストダウンが得られるという効果がある。
【００６１】
［実施例３］
次に本発明の実施例３について説明する。前述の実施例２では、１変換対象画素毎に４ビットのスムーズ化データをラインメモリ２０５に書き込んでいたのに対し、スムージング部２０４とラインメモリ２０５の間に複数段のＦＩＦＯを設けて、このＦＩＦＯがフルになった時点で複数の変換対象画素のスムーズ化した画素データをまとめてラインメモリ２０５に書き込むようにしてもよい。
【００６２】
具体的には、このＦＩＦＯを４段にすれば、変換対象画素が４つスムーズ化した画素データを出力した時点でフルになり、この４ビット×４画素の１６ビットデータをラインメモリ２０５に書き込む。もちろん、読み出しの際には１ワードが１６ビットの構成となっているので、それをまとめてパラレル→シリアル変換する。
【００６３】
以上説明したように本実施例３によれば、処理動作の流れを前述の実施例２とほとんど変えずに、ラインメモリ２０５としデータバス幅が１６ビット或いは３２ビットの汎用のＤＲＡＭを使用できるので、ＡＳＩＣのゲート削減とともに印刷装置全体のコストダウンができるという効果がある。
【００６４】
［他の実施形態］
以上、実施形態例を詳述したが、本発明は、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【００６５】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムをシステム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。その場合、プログラムの機能を有していれば、その形態はプログラムである必要はない。
【００６６】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明のクレームでは、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【００６７】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【００６８】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などがある。
【００６９】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明のクレームに含まれるものである。
【００７０】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【００７１】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【００７２】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
【００７３】
以上説明したように本実施例によれば、単一のスムージング部を変更することなく使用でき、且つ対ビーム対応のプリンタエンジンでもスムージングを行なうことが可能で、ＡＳＩＣのゲート削減・システム全体のコストダウンが得られるという効果がある。
【図面の簡単な説明】
【００７４】
【図１】本発明の実施例に係る印刷装置の概略構成を示すブロック図である。
【図２】本発明の実施例１に係る印刷装置の印刷制御部の構成を示すブロック図である。
【図３】本発明の実施例１に係る印刷制御部における処理を説明するフローチャートである。
【図４】本発明の実施例１に係る印刷制御部における処理を説明するフローチャートである。
【図５】本発明の実施例１に係る印刷制御部の動作を説明するタイミング図である。
【図６】本発明の実施例１に係る印刷制御部における画像処理の動作を説明するタイミング図である。
【図７】本発明の実施例１に係る印刷制御部における参照ウインドウ及び変換対象画素の遷移を説明する図である。
【図８】本発明の実施例２に係る印刷装置の印刷制御部の構成を示すブロック図である。
【図９】本発明の実施例２に係る印刷制御部における処理を説明するフローチャートである。
【図１０】本発明の実施例２に係る印刷制御部における処理を説明するフローチャートである。
【図１１】本発明の実施例２に係る印刷制御部の動作を説明するタイミング図である。
【図１２】本発明の実施例２に係る印刷制御部における画像処理の動作を説明するタイミング図である。
【図１】
2005053155.tif 000003
【図２】
2005053155.tif 000004
【図３】
2005053155.tif 000005
【図４】
2005053155.tif 000006
【図５】
2005053155.tif 000007
【図６】
2005053155.tif 000008
【図７】
2005053155.tif 000009
【図８】
2005053155.tif 000010
【図９】
2005053155.tif 000011
【図１０】
2005053155.tif 000012
【図１１】
2005053155.tif 000013
【図１２】
2005053155.tif 000014