(57)【要約】【課題】ラインバッファを増大させることなく記録材に対する画像の位置ずれを補正する画像形成装置を提供する。【解決手段】本画像形成装置は、偏向走査装置による走査線のずれに基づいて、装置内のメモリに格納された画像データを読み出して、当該偏向走査装置に転送することにより、画像形成を行う。具体的に、本画像形成装置は、１走査ラインの画像データの読み出し時に、走査線のずれが発生する位置の画像データに関しては他のラインの画像データも読み出す。読み出した他のラインの画像データは、対応する現在のラインの画像データに組み合わせられる。【選択図】図３
2009180920.tif 000002
【特許請求の範囲】
【請求項１】
像担持体を露光する露光手段と、
前記露光手段による露光により形成される走査線の前記像担持体に対するずれ量に基づいて、前記画像形成装置に格納された画像データのうち１走査ラインに用いる画像データと、該１走査ラインの中で前記走査線のずれを解消するために他のラインの画像データに切り換える切換位置とを指定する指定手段と、
指定された前記画像データ及び前記切換位置に従って該当する画像データを読み出す読出手段と、
読み出された画像データのうち、前記切換位置の近傍の画像データに他のラインの画像データを組み合わせて、前記露光手段に転送する組合せ手段とを有し、
前記指定手段は、
前記画像形成装置に格納された画像データを読み出して前記露光手段に転送する方法として、主走査方向反転方式、副走査方向反転方式、又は１８０度回転方式の何れかの転送方法をさらに指定し、
前記読み出し手段は、前記転送方法に従った順に画像データを読み出すことを特徴とする画像形成装置。
【請求項２】
前記指定手段は、
前記組合せ手段によって組み合わせられる前記他のラインのライン数と、主走査方向の組合せ数とをさらに指定し、
前記読出手段は、
前記１走査ラインの画像データとともに、前記ライン数及び前記主走査方向の組合せ数に該当する他のラインの画像データを読み出すことを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記主走査方向の組合せ数とは、前記切換位置から前後への画素数を示す情報であることを特徴とする請求項２に記載の画像形成装置。
【請求項４】
前記指定手段は、
前記他のラインが現在のラインに対して、前のラインか又は次のラインかをさらに指定することを特徴とする請求項２又は３に記載の画像形成装置。
【請求項５】
前記指定手段は、
前記１走査ラインの画像データを等分に分割し、該分割した分割データごとに、前のラインに切り換えるか、次のラインに切り換えるか、又は、切り換え無しかを指定することにより、前記切換位置を指定することを特徴とする請求項２又は３に記載の画像形成装置。
【請求項６】
前記読出手段は、
前記１走査ラインの読み出しが終了すると、次のラインの読み出しを開始することを特徴とする請求項１乃至５の何れか１項に記載の画像形成装置。
【請求項７】
前記指定手段は、前記画像形成装置に備えられる中央処理装置、又はデジタル信号プロセッサであり、
前記読出手段は、ダイレクトメモリアクセスコントローラであることを特徴とする請求項１乃至６の何れか１項に記載の画像形成装置。
【請求項８】
像担持体を露光する露光手段を備える画像形成装置のデータ転送方法であって、
前記露光手段による露光により形成される走査線の前記像担持体に対するずれ量に基づいて、前記画像形成装置に格納された画像データのうち１走査ラインに用いる画像データと、該１走査ラインの中で前記走査線のずれを解消するために他のラインの画像データに切り換える切換位置とを指定するステップと、
指定された前記画像データ及び前記切換位置に従って該当する画像データを読み出すステップと、
読み出された画像データのうち、前記切換位置の近傍の画像データに他のラインの画像データを組み合わせて、前記露光手段に転送するステップとを有し、
前記指定するステップは、
前記画像形成装置に格納された画像データを読み出して前記露光手段に転送する方法として、主走査方向反転方式、副走査方向反転方式、又は１８０度回転方式の何れかの転送方法をさらに指定し、
前記読み出すステップは、前記転送方法に従った順に画像データを読み出すことを特徴とするデータ転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、像担持体に走査露光する露光部、露光部からの露光走査によって像担持体上に生成された静電潜像を記録材上に顕像化する現像部を用いて、画像データに基づいて画像形成を行う画像形成装置及びそのデータ転送方法に関するものである。
【背景技術】
【０００２】
近年、電子写真方式の画像形成装置では、画像形成速度を高速化するために、色材の数と同数の現像器及び感光ドラムを備え、画像搬送ベルト上や記録材上に順次異なる色の画像を転写するタンデム方式が採用されている。このタンデム方式の画像形成装置においては、記録材に対する画像の位置ずれを生じさせる複数の要因が知られており、それぞれの要因に対して様々な対処法が提案されている。
【０００３】
例えば、これらの要因として、偏向走査装置のレンズの不均一性や取り付け位置ずれや、偏向走査装置の画像形成装置本体への組み付け位置ずれがある。この要因により、走査線に傾きや曲がりが生じ、その程度が色ごとに異なることで、記録材に対する画像の位置ずれを発生させていた。
【０００４】
このような記録材に対する画像の位置ずれの対処方法として、特許文献１には、偏向走査装置の組立工程で、光学センサを用いて走査線の曲がりの大きさを測定し、レンズを機械的に回転させて走査線の曲がりを調整した後に、接着剤で固定する方法が提案されている。また、特許文献２には、偏向走査装置を画像形成装置本体へ組み付ける工程で、光学センサを用いて走査線の傾きの大きさを測定し、偏向走査装置を機械的に傾かせて走査線の傾きを調整した上で画像形成装置本体へ組み付ける方法が提案されている。
【０００５】
さらに、特許文献３には、光学センサを用いて走査線の傾きと曲がりの大きさを測定し、それらを相殺するようにビットマップ画像データを補正し、その補正した画像を形成する方法が提案されている。この方法は、画像データを処理することで電気的に記録材に対する画像の位置ずれを補正する。
【特許文献１】特開２００２−１１６３９４号公報
【特許文献２】特開２００３−２４１１３１号公報
【特許文献３】特開２００４−１７０７５５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来技術には、以下に記載する問題がある。特許文献１及び特許文献２に記載の方法では、機械的な調整部材や組立時の調整工程が必要であり、煩雑な作業を伴うとともに、コストが増大してしまう。一方、特許文献３に記載の方法では、機械的な調整部材や組立時の調整工程が不要となる点で、特許文献１及び特許文献２に記載の方法と比較して、安価に記録材に対する画像の位置ずれを解消することができる。
【０００７】
しかし、特許文献３に記載のビットマップ画像データを補正する方法では、走査線の曲がり部分での上下ラインのブレンド処理を行うために、ラインバッファを設ける必要がある。ラインバッファの必要な容量は走査線の曲がり幅に依存する。例えば、走査線の曲がり幅がビットマップ画像データでＮライン分であれば、Ｎラインを記憶できるラインバッファが必要となる。ここで、Ｎの値は画像形成装置ごとにばらつきがある。したがって、実際に実装されるラインバッファの容量はこのばらつきの最大値を超えるライン数に対応しなければならない。このため、ラインバッファの容量が増大し、ビットマップ画像データを補正するための回路規模が増大し、コストアップにつながってしまう。
【０００８】
本発明は、上述の問題に鑑みて成されたものであり、ラインバッファを増大させることなく記録材に対する画像の位置ずれを補正する画像形成装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、例えば、像担持体を露光する露光手段と、露光手段による走査線のずれ量を検出するずれ量検出手段とを備える画像形成装置として実現できる。本画像形成装置は、走査線のずれ量に基づいて、画像形成装置に格納された画像データのうち１走査ラインに用いる画像データと、１走査ラインの中で走査線のずれを解消するために他のラインの画像データに切り換える切換位置とを指定する指定手段と、指定された画像データ及び切換位置に従って当する画像データを読み出す読出手段と、読み出された画像データのうち、切換位置の近傍の画像データに他のラインの画像データを組み合わせて、露光手段に転送する組合せ手段とを備えることを特徴とする。
【００１０】
また、本発明は、例えば、像担持体を露光する露光手段と、露光手段による走査線のずれ量を検出するずれ量検出手段とを備える画像形成装置のデータ転送方法として実現できる。データ転送方法は、走査線のずれ量に基づいて、画像形成装置に格納された画像データのうち１走査ラインに用いる画像データと、１走査ラインの中で走査線のずれを解消するために他のラインの画像データに切り換える切換位置とを指定するステップと、指定された画像データ及び切換位置に従って当する画像データを読み出すステップと、読み出された画像データのうち、切換位置の近傍の画像データに他のラインの画像データを組み合わせて、露光手段に転送するステップとを実行することを特徴とする。
【発明の効果】
【００１１】
本発明は、例えば、ラインバッファを増大させることなく記録材に対する画像の位置ずれを補正する画像形成装置を提供できる。
【発明を実施するための最良の形態】
【００１２】
以下に本発明の一実施形態を示す。以下で説明される個別の実施形態は、本発明の上位概念、中位概念及び下位概念など種々の概念を理解するために役立つであろう。また、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。
【００１３】
以下、本発明の実施形態について図面を用いて詳細に説明する。まず、図１Ａ乃至図５を参照して、本発明の各実施形態を実現する装置構成について説明する。
【００１４】
［画像形成装置］
図１Ａは、本実施形態に係る画像形成装置１００の一例を示す断面図である。ここでは、本発明に関する主要な要素についてのみ説明を記載する。以下では、画像形成装置１００の一適用例として電子写真方式のプリンタを用いて説明を行う。
【００１５】
画像形成装置１００は、転写ベルト１０９に沿ってイエロー（Ｙ）、マゼンタ（Ｍ）、シアン（Ｃｙ）、ブラック（Ｂｋ）の各色ごとに感光ドラム１０５を有するタンデム方式のカラープリンタである。ここでは４色のトナーを用いた例を説明するが、勿論６色等のカラープリンタを例に本実施形態を説明することもできる。画像形成装置１００は、記録材カセット１０１、手差しトレイ１０２、偏向走査装置１０３、画像形成部１０４ａ、ｂ、ｃ、ｄ、転写ベルト１０９、定着ユニット１１０及びレジストレーション検出センサ１１１を含む。
【００１６】
記録材カセット１０１及び手差しトレイ１０２は、記録材が載置され、画像形成装置１００内に載置された記録材を給送する。偏向走査装置１０３は、複数のレーザ光源を備え、各画像形成部１０４（１０４ａ〜１０４ｄ）にそれぞれ含まれる感光ドラム１０５に露光して静電潜像を形成する。以下では、各画像形成部１０４が同様の構成であるため、画像形成部１０４ａを一例に説明する。画像形成部１０４は、感光ドラム１０５、一次帯電器１０６、現像ユニット１０７及びクリーニングユニット１０８を含む。また、画像形成部１０４は、画像形成装置１００に対して着脱可能な交換ユニットとして構成されてもよい。感光ドラム１０５は、像担持体として機能し、一次帯電器１０６により一様に帯電され、偏向走査装置１０３のレーザ出力によって静電潜像が形成される。感光ドラム１０５に形成された静電潜像は、現像ユニット１０７によって現像化される。現像ユニット１０７は、それぞれの画像形成部１０４で異なる色のトナーを有する。感光ドラム１０５に形成されたトナー像は、転写ベルト１０９上に搬送されてくる記録材に転写される。記録材に転写された後に、感光ドラム１０５に残留するトナーは、クリーニングユニット１０８に含まれるブレードによって掻き落とされて廃棄される。記録材には、画像形成部１０４ａから画像形成部１０４ｄの順序でトナー像が重ねて転写される。その後、転写されたトナー像は、定着ユニット１１０によって記録材に定着される。
【００１７】
レジストレーション検出センサ１１１は、ずれ量検出手段として機能し、記録材に転写された画像の位置ずれを検出する。具体的に、画像形成装置１００は、画像の位置ずれを検出するためのパッチを形成し、レジストレーション検出センサ１１１によって当該パッチを検出する。さらに、画像形成装置１００は、検出したパッチの情報と、正規のパッチの位置とを比較してずれ量を算出する。本実施形態に係る画像形成装置１００は、このずれ量を用いて、画像形成時に偏向走査装置１０３へ送出される画像データを制御することで、偏向走査装置１０３の走査によって発生するずれ量を解消する。なお、画像形成装置１００はレジストレーション検知センサ１１１を有するものとしたが、レジストレーション検知センサ１１１を有しない態様であっても良い。この場合、ずれ量はレジストレーション検出センサ１１１で検出するのではなく、画像形成装置１００を工場にて生産する際に、レジストレーションの検知を専用の検出装置を用いて行っておけばよい。そして、専用の検出装置を用いて検知したずれ量を記憶部１２６に、後述するＲｅｇＵｐＤｏｗｎ［ｉ］（ｉ＝０、１、２・・・）として記憶させておけばよい。また、このずれ量とは、レーザ光源から照射されるレーザ光により形成される走査線の、感光ドラム１０５の軸方向に直行する方向（円周方向）に対するずれ量をいう。つまり、理想的には、レーザ光の走査線の方向は、感光ドラム１０５の軸方向に平行なるべきであるが、レーザ光源の取付誤差や感光ドラム１０５の取付誤差により必ずしも理想的にはならない。そこで、レーザ光の走査方向と感光ドラム１０５の軸方向のずれ量を検出（あるいは予め記憶）し、記憶部１２６に記憶された画像データの読出しアドレスを調整することで、記録材に画像を記録したときにずれが相殺されるようにする。
【００１８】
図１Ｂは、本実施形態に係る画像形成装置１００の構成例を示すブロック図である。画像形成装置１００は、例えば、複数種類の機能を実現する複合機であるＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）で実現される。また、画像形成装置１００は、ネットワークＩ／Ｆ１２８を介してネットワークに接続され、ネットワークを利用して画像データや装置情報を外部装置とやりとりすることができる。さらに、画像形成装置１００は、データ処理部１２１、表示部１２２、操作部１２４、画像読取部１２５、記憶部１２６及び印刷部１２７を備える。
【００１９】
画像読取部１２５は、原稿台及びオートドキュメントフィーダ（ＡＤＦ）を含み、束状の又は１枚の原稿を光源によって照射し、原稿反射像をレンズで固体撮像素子上に結像する。これにより、画像読取部１２５は、その固体撮像素子からラスタ状の画像読取信号を所定密度（例えば、６００ＤＰＩ）のラスタ画像として取得する。以下では、画像読取部１２５で読み取られる印刷物として、紙文書を例に挙げて説明するが、紙以外の記録材（例えば、ＯＨＰシート、フィルム等の透過原稿、布等）からなる印刷物を画像読取部１２５の読取対象としてもよい。
【００２０】
印刷部１２７は、画像読取信号に対応する画像を記録材に印刷する。例えば、画像形成装置１００は、１つの原稿画像を複写する場合に、この画像読取信号をデータ処理部１２１で画像処理して記録信号を生成し、生成した記録信号を印刷部１２７によって記録材上に印刷させる。一方、複数の原稿画像を複写する場合、画像形成装置１００は、記憶部１２６に１つ分の記録信号を記憶させた後に、記憶させた記録信号を印刷部１２７に順次出力して記録材上に印刷させる。印刷部１２７を用いる各種印刷制御は、データ処理部１２１に含まれるプリンタコントローラ１２３によって制御される。
【００２１】
操作部１２４は、画像形成装置１００への操作者の指示を受け付け、これら一連の動作はデータ処理部１２１で制御される。また、表示部１２２は、操作入力の状態及び処理中の画像データを表示する。なお、画像形成装置１００は、後述する各種処理を実行するための各種操作・表示をユーザに提供するユーザインタフェースを、表示部１２２及び操作部１２４によって実現する。
【００２２】
［プリンタコントローラ］
次に、図２を参照して、プリンタコントローラ１２３の詳細な構成について説明する。図２は、本実施形態に係るプリンタコントローラ１２３の構成例を示すブロック図である。
【００２３】
プリンタコントローラ１２３は、操作部Ｉ／Ｆ３０１、ホストＩ／Ｆ部３０２、画像データ発生部３０３、画像メモリ３０４、ＤＭＡコントローラ（ダイレクトメモリアクセスコントローラ）３０５、ブレンド処理部３０６及びエンジンＩ／Ｆ３０７を備える。さらに、プリンタコントローラ１２３は、ＣＰＵ３０８、ＲＯＭ３０９、ＲＡＭ３１０及びシステムバス３１１を備える。
【００２４】
ホストＩ／Ｆ部３０２には、データ処理部１２１から送出された印刷データや装置の動作を指示する設定を入力する入力バッファが設けられている。また、ホストＩ／Ｆ部３０２には、データ処理部１２１へ送出する信号や機器情報データを含む出力データを一時的に保持する出力バッファが設けられている。また、ホストＩ／Ｆ部３０２は、データ処理部１２１との間で送受信される信号や通信パケットの入出力部を構成するとともに、データ処理部１２１との間の通信制御を行う。
【００２５】
ホストＩ／Ｆ部３０２を介して入力された印刷データは、画像データ発生部３０３に与えられる。ここで、入力される印刷データは、例えば、ＰＤＬ（ページ記述言語）データで構成される。画像データ発生部３０３は、予め定められている解析部に基づき入力された印刷データの解析（例えば、ＰＤＬ解析処理）、その解析結果から中間言語を生成し、更に印刷部（プリンタエンジン）１０７が処理可能なビットマップデータを生成する。
【００２６】
具体的に、画像データ発生部３０３は、印刷データの解析とその解析による中間言語情報の作成を行うとともに、その中間言語情報の作成と並行してラスタライズ処理を行う。このラスタライズ処理では、印刷データに含まれる表示色ＲＧＢ（加法混色）から印刷部１２７が処理可能なＹＭＣＫ（減法混色）への変換がある。また、印刷データに含まれる文字コードから予め格納されているビットパターン、アウトラインフォント等のフォントデータへの変換等の処理がある。その後、ラスタライズ処理では、ページ単位又はバンド単位でビットマップデータを作成し、このビットマップデータに対しディザパターンを用いる擬似階調処理を施し、印刷部１２７において印刷処理が可能なビットマップデータを生成する。
【００２７】
この作成されたビットマップデータは、画像メモリ３０４に格納される。画像メモリ３０４に格納されているビットマップデータの読出は、ＤＭＡコントローラ３０５で制御される。このＤＭＡコントローラ３０５による画像メモリ３０４からのビットマップデータの読出制御は、指定手段として機能するＣＰＵ３０８からの指示に基づいて行なわれる。
【００２８】
画像メモリ３０４から読み出されたビットマップデータは、後述するブレンド処理を行うブレンド処理部（組合せ手段）３０６に与えられる。さらに、ブレンド処理部３０６でブレンド処理されたビットマップデータは、エンジンＩ／Ｆ部３０７を介してビデオ信号として印刷部１２７に転送される。ブレンド処理については、図４及び図５を参照して後述する。
【００２９】
エンジンＩ／Ｆ部３０７には、印刷部１２７へ転送するビデオ信号を一時的に保持する出力バッファと、印刷部１２７から送出された信号を一時的に保持する入力バッファとが設けられる。また、エンジンＩ／Ｆ部３０７は、印刷部１２７との間で送受信される信号の入出力部を構成するとともに、印刷部１２７との間の通信制御を行う。
【００３０】
操作部１２４から操作入力によって出されたモード設定に関する指示等の各種指示は、操作部Ｉ／Ｆ部３０１を介してＣＰＵ３０８に入力される。即ち、操作部Ｉ／Ｆ部３０１は、操作部１２４とＣＰＵ３０８との間のインタフェースを構成する。
【００３１】
ＣＰＵ３０８は、操作部１２４又はデータ処理部１２１から指示されたモードに応じて、上述の各ブロックを統括的に制御する。これらの制御は、ＲＯＭ３０９に格納されている制御プログラムに基づいて実行される。ＲＯＭ３０９に格納されている制御プログラムは、システムクロックによってタスクと称されるロードモジュール単位に時分割制御を行うためのＯＳ（オペレーティングシステム）を含む。また、制御プログラムには、ＯＳによって機能単位に実行制御される複数のロードモジュールが含まれる。ＲＡＭ３１０は、ＣＰＵ３０８による演算処理の作業領域として使用される。また、上述した各ブロックは、システムバス３１１に接続されている。システムバス３１１は、アドレスバスとシステムバスとを備える。
【００３２】
［ＤＭＡコントローラ］
次に、図３を参照して、ＤＭＡコントローラ３０５の詳細について説明する。図３は、本実施形態に係るプリンタコントローラ１２３に備えられるＤＭＡコントローラ３０５の構成例を示すブロック図である。ＤＭＡコントローラ３０５は、読出手段として機能し、レジスタ部５０１、アドレス生成部５０２、バスインタフェース５０３、ＦＩＦＯ５０４及びブレンド処理部インタフェース５０５を備える。
【００３３】
レジスタ部５０１は、複数のレジスタを含んで構成される。ＤＭＡコントローラ３０５に対するＣＰＵ３０８からの指示は、レジスタ部５０１の各レジスタに適切な値を書き込むことで行なわれる。
【００３４】
アドレス生成部５０２は、画像メモリ３０４に記憶されるビットマップデータを読み出すためのアドレスをレジスタ部５０１の各レジスタの内容を参照して、生成する。アドレス生成部５０２は、アドレス信号（ａｄｄｒ）と、当該アドレスからリードする長さを示すレングス信号（ｌｅｎｇｔｈ）とをバスインタフェース５０３への要求信号（ｒｅｑ）を用いて要求する。
【００３５】
バスインタフェース５０３は、アドレス生成部５０２からのアドレス信号とレングス信号を受信し、バス３１１に対してリードトランザクションを発行する。例えば、バス３１１のデータバス幅が３２ビットであれば、アドレス信号とレングス信号から複数の３２ビットアクセスに分解し、リードトランザクションを発行する。バスインタフェース５０３は、１組のアドレス信号とレングス信号に対する処理が完了すれば、応答信号（ａｃｋ）を用いて、処理完了をアドレス生成部５０２に伝える。応答信号を受けたアドレス生成部５０２は、次のアドレス信号とレングス信号をバスインタフェース５０３に要求できる。
【００３６】
画像メモリ３０４からリードされたビットマップデータは、一時的に、ＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔバッファ）５０４に記憶される。ＤＭＡコントローラ３０５は、ブレンド処理部３０６が一時的にデータを入力できない期間が発生した場合であっても、ビットマップデータをＦＩＦＯ５０４に記憶する。これにより、ブレンド処理部３０６がデータ入力可能となったときに、即座にＦＩＦＯ５０４からブレンド処理部３０６にビットマップデータを供給することができる。
【００３７】
バスインタフェース５０３は、ＦＩＦＯ５０４から出力される、ＦＩＦＯにデータを書き込むべき空きがないことを示すＦＩＦＯフル信号（ｆｕｌｌ）を監視する。ＦＩＦＯ５０４がフル状態の場合、バスインタフェース５０３は、リードトランザクションを発行せずに、フル状態が解除されるまで待機する。
【００３８】
ブレンド処理部インタフェース５０５は、ＦＩＦＯ５０４に蓄えられたビットマップデータをブレンド処理部３０６に送信する。ブレンド処理部インタフェース５０５は、ＦＩＦＯ５０４から出力される、ＦＩＦＯに蓄えられたデータがないことを示すＦＩＦＯエンプティ信号（ｅｍｐｔｙ）を監視する。ブレンド処理部インタフェース５０５は、ＦＩＦＯ５０４がエンプティ状態でなく、かつ、ブレンド処理部３０６がデータを入力できる状態であれば、ＦＩＦＯ５０４からビットマップデータをリードし、当該データをブレンド処理部３０６へ送信する。
【００３９】
［レジストレーションずれ補正の原理］
次に、図４及び図５を参照して、記録材に対する画像の位置ずれ補正の原理について説明する。なお、以下では、記録材に対する画像の位置ずれをレジストレーションずれと称する。図４及び図５は、本実施形態に係るレジストレーションずれ補正の原理を説明するための図である。
【００４０】
図４に示す４０１は、レジストレーションずれの原因となる、曲がりが生じた１走査ラインの走査線を示す。また、４０２は、４０１に示す走査線の曲がりに合わせて、ラインを切り換えながら、ビットマップデータを印刷部１２７へ送出する様子を示す。４０２では、黒い部分が１回の走査線の走査で印刷部１２７へ送出されるデータを示している。このように、走査線の曲がりに合わせて、ラインを切り換えながら、ビットマップデータを印刷部１２７へ送出すれば、曲がりが生じた露光走査によっても、像担持体上に生成された静電潜像は歪みのないものとなる。
【００４１】
図５に示す５０１は、レジストレーションずれの原因となる、曲がりが生じた走査線の一部を拡大したものを示す。５０２は、５０１に示す走査線の曲がりに合わせて、ラインを切り換えながら、ビットマップデータを印刷部１２７へ送出する様子を示す。ただし、５０２に示すように、単にラインを切り換えて、ビットマップデータを印刷部１２７へ送ると、その切り換え部分に不自然な段差を生じてしまう。不自然な段差を解消し、画像の平滑化を図るためには、５０３のように、切り換え部分の前後で２ラインを組み合わせる必要がある。
【００４２】
本発明のＤＭＡコントローラ３０５は、ラインバッファを不要とするために、走査線の曲がりに合わせてラインを切り換えるように、アドレスを生成する。即ち、必要となるビットマップデータを的確に読み出すことによって、一時的にラインごとのビットマップデータを保存するラインバッファを省略する。具体的に、ブレンド処理に必要となるデータがラインを切り換える前後のみのデータであることに着目し、５０４の黒い部分に加えて、網掛けの部分のビットマップデータを印刷部１２７へ送出する。これにより、画像形成装置１００は、必要なビットマップデータをメモリから読み出してブレンド処理部３０６に与えるため、ラインバッファを備えなくてよい。
【００４３】
次に、図９を参照して、ビットマップデータを主走査方向や副走査方向に反転することなくブレンド処理部３０６に転送する際のＤＭＡコントローラ３０５の動作について説明する。以下では、ビットマップデータの１ラインを等分に分割して考える。以下、この分割された１つのデータをセグメント（分割データ）と称する。
【００４４】
ＤＭＡ動作（ビットマップデータの読み出し動作）を実現するために、レジスタ部５０１には、予め複数のレジスタが用意されている。具体的に、レジスタ部５０１は、各セグメントの長さを指定するレジスタ（ＲｅｇＳｅｇＬｅｎ）を含む。また、レジスタ部５０１は、走査線の曲がりに合わせて、隣り合うセグメントでラインを切り換えないか、上（前）のラインに切り換えるか、又は下（次）のラインに切り換えるかを指定するレジスタ郡（ＲｅｇＵｐＤｏｗｎ［ｉ］）を必要な数だけ含む。このレジスタ群のとり得る値は３通りであるため、例えば、ラインを切り換えない場合は‘００’又は‘０１’を、上のラインに切り換える場合は‘１０’を、下のラインに切り換える場合は‘１１’が割り当てられる。
【００４５】
また、レジスタ部５０１は、レジスタ（ＲｅｇＯｖｅｒｗｒａｐＬｅｎ）、レジスタ（ＲｅｇＳｔａｒｔＡｄｄｒ）、レジスタ（ＲｅｇＬｉｎｅＬｅｎ）、レジスタ（ＲｅｇＬｉｎｅＯｆｆｓｅｔ）及びレジスタ（ＲｅｇＢｅａｍｓ）を備える。レジスタ（ＲｅｇＯｖｅｒｗｒａｐＬｅｎ）には、隣り合うセグメントでラインが切り換わる場合に、切換位置の前後をリードする長さ（切換位置の近傍のデータとなる。）が指定される。このレジスタ（ＲｅｇＯｖｅｒｗｒａｐＬｅｎ）は、主走査方向の組合せ数となる。レジスタ（ＲｅｇＳｔａｒｔＡｄｄｒ）には、画像メモリ３０４に記憶されるビットマップデータの先頭アドレスが指定される。レジスタ（ＲｅｇＬｉｎｅＬｅｎ）には、ビットマップデータのラインの長さが指定される。レジスタ（ＲｅｇＬｉｎｅＯｆｆｓｅｔ）には、ビットマップデータの隣り合うラインのアドレスのオフセット値が指定される。レジスタ（ＲｅｇＢｅａｍｓ）には、ブレンド処理部３０６へ送るべきライン数が指定される。さらに、レジスタ部５０１は、ＣＰＵ３０８が上述のレジスタの設定を完了した後に、ＤＭＡ動作を開始させるための起動レジスタを含む。
【００４６】
図９は、アドレス生成部５０２の動作を示すフローチャートである。ここでは、走査線の歪みを解消するために、好適にビットマップデータを読み出すＤＭＡ処理（データ転送方法）について説明する。
【００４７】
まず、ステップＳ９００において、アドレス生成部５０２は、ＣＰＵ３０８の指示によってＤＭＡ動作が開始されると、信号ｌｉｎｅ＿ｓｔａｒｔ＿ａｄｄｒ及び信号ｌｉｎｅ＿ｃｎｔを初期化する。具体的に、アドレス生成部５０２は、各ラインの開始アドレスを記憶する信号ｌｉｎｅ＿ｓｔａｒｔ＿ａｄｄｒをＲｅｇＳｔａｒｔＡｄｄｒの値で初期化する。また、アドレス生成部５０２は、ブレンド処理部３０６へ送ったライン数を示す信号ｌｉｎｅ＿ｃｎｔをゼロで初期化する。
【００４８】
ステップＳ９０１において、アドレス生成部５０２は、ライン毎の初期化を行う。具体的に、アドレス生成部５０２は、セグメントの開始アドレスを示す信号ｓｅｇ＿ａｄｄｒをｌｉｎｅ＿ｓｔａｒｔ＿ａｄｄｒの値で初期化し、ライン中の処理した量をカウントする信号ｌｉｎｅ＿ｄａｔａ＿ｃｎｔをゼロで初期化する。また、アドレス生成部５０２は、参照すべきレジスタ郡ＲｅｇＵｐＤｏｗｎ［ｉ］のインデックスを示す信号ｉｎｄｅｘを０で初期化する。
【００４９】
ステップＳ９０２において、アドレス生成部５０２は、セグメント毎の初期化を行う。具体的に、アドレス生成部５０２は、バスインタフェース５０３へ要求すべきアドレスと長さを示す信号（ａｄｄｒとｌｅｎｇｔｈ）をそれぞれ、セグメントの開始アドレスを示す信号ｓｅｇ＿ａｄｄｒとレジスタＲｅｇＳｅｇＬｅｎの値で初期化する。
【００５０】
ステップＳ９０３において、アドレス生成部５０２は、信号ａｄｄｒとｌｅｎｇｔｈでバスインタフェース５０３へリード要求を行う。なお、ステップＳ９０３におけるリード要求は、主走査方向のアドレスを減算しながらデータがリードされるような要求となる。
【００５１】
ステップＳ９０４において、アドレス生成部５０２は、セグメントの開始アドレスを示す信号ｓｅｇ＿ａｄｄｒを次のセグメントの開始アドレスに更新するために、現在のセグメントの後側（次のセグメント側）でライン切り換え信号ＲｅｇＵｐＤｏｗｎ［ｉｎｄｅｘ］の値を判定する。セグメントの後側でラインの切り換えがない場合、即ち、ライン切り換え信号ＲｅｇＵｐＤｏｗｎ［ｉｎｄｅｘ］の値が‘００’又は‘０１’である場合に、アドレス生成部５０２は、処理をステップＳ９０７へ遷移させる。また、上のラインに切り換える場合、即ち、ライン切り換え信号ＲｅｇＵｐＤｏｗｎ［ｉｎｄｅｘ］の値が‘１０’である場合、アドレス生成部５０２は、処理をステップＳ１０５へ遷移させる。さらに、下のラインに切り換わる場合、即ち、ライン切り換え信号ＲｅｇＵｐＤｏｗｎ［ｉｎｄｅｘ］の値が‘１１’である場合、アドレス生成部５０２は、処理をステップＳ９０６へ遷移させる。
【００５２】
ステップＳ９０５において、アドレス生成部５０２は、セグメントの開始アドレスを上のラインに切り換えるために信号ｓｅｇ＿ａｄｄｒにレジスタＲｅｇＬｉｎｅＯｆｆｓｅｔの値を加え、処理をＳ９０７へ遷移させる。次のセグメントの開始アドレスはこの値に、さらにＲｅｇＳｅｇＬｅｎを加える処理は、後述するステップＳ９０７で行われる。
【００５３】
ステップＳ９０６において、アドレス生成部５０２は、セグメントの開始アドレスを下のラインに切り換えるために信号ｓｅｇ＿ａｄｄｒからレジスタＲｅｇＬｉｎｅＯｆｆｓｅｔの値を減じ、処理をＳ９０７へ遷移させる。次のセグメントの開始アドレスはこの値に、さらにＲｅｇＳｅｇＬｅｎを加える処理は、後述するステップＳ９０７で行われる。
【００５４】
ステップＳ９０７において、アドレス生成部５０２は、次のセグメントの処理のために各信号を更新する。具体的に、アドレス生成部５０２は、セグメントの開始アドレス信号ｓｅｇ＿ａｄｄｒにレジスタＲｅｇＳｅｇＬｅｎの値を加える。また、アドレス生成部５０２は、ライン中の処理した量をカウントする信号ｌｉｎｅ＿ｄａｔａ＿ｃｎｔにもレジスタＲｅｇＳｅｇＬｅｎの値を加える。さらに、アドレス生成部５０２は、参照するレジスタＲｅｇＵｐＤｏｗｎ［ｉ］を１つ進めるために、信号ｉｎｄｅｘを１だけインクリメントする。
【００５５】
ステップＳ９０８において、アドレス生成部５０２は、レジスタＲｅｇＬｉｎｅＬｅｎの値からｌｉｎｅ＿ｄａｔａ＿ｃｎｔの値を減じた値をＲｅｇＳｅｇＬｅｎの値と比較し、ラインの終了を判定する。その差がＲｅｇＳｅｇＬｅｎの値より大きければ、アドレス生成部５０２は、処理すべきセグメントが２個以上あるため、ステップＳ９０２に処理を戻し、セグメントの処理を繰り返す。一方、その差がＲｅｇＳｅｇＬｅｎの値以下であれば、アドレス生成部５０２は、ライン中の最後のセグメントの処理を行うためにステップＳ９０９の処理へ進む。
【００５６】
ステップＳ９０９において、アドレス生成部５０２は、次のラインの処理のために各信号を更新する。具体的に、アドレス生成部５０２は、各ラインの開始アドレスを記憶する信号ｌｉｎｅ＿ｓｔａｒｔ＿ａｄｄｒにレジスタＲｅｇＬｉｎｅＯｆｆｓｅｔの値を加え、各ラインの開始アドレスが次のラインの先頭アドレスとなるように更新する。また、アドレス生成部５０２は、ブレンド処理部３０６へ送ったライン数を示す信号ｌｉｎｅ＿ｃｎｔを１だけインクリメントする。
【００５７】
ステップＳ９１０において、アドレス生成部５０２は、信号ｌｉｎｅ＿ｃｎｔとレジスタＲｅｇＢｅａｍｓの値を比較し、ページの終了を判定する。具体的に、アドレス生成部５０２は、信号ｌｉｎｅ＿ｃｎｔの値がレジスタＲｅｇＢｅａｍｓの値未満であれば、処理すべきラインが存在するため、ステップＳ９０１に処理を戻し、ラインの処理を繰り返す。一方、信号ｌｉｎｅ＿ｃｎｔの値がレジスタＲｅｇＢｅａｍｓの値以上であれば、アドレス生成部５０２は、ＤＭＡ動作を終了する。ＤＭＡコントローラ３０５はＤＭＡ動作が終了すると、割り込みをＣＰＵ３０８に送る。ＣＰＵ３０８は、この割り込みを検出することで、ＤＭＡ動作が終了したことを検知する。
【００５８】
なお、上記の説明では本発明におけるデータ転送方法をＤＭＡコントローラ３０５で実現した例を示したが、ＣＰＵ３０８の処理時間に余裕があれば、ＣＰＵ３０８で実現してもよい。また、ＣＰＵ３０８以外の第２のＣＰＵ（中央処理装置）やＤＳＰ（デジタル信号プロセッサ）によって実現してもよい。
【００５９】
さらに、画像形成装置で、現像部が複数色（ＣＹＭＫ）の各色に対応する現像部から構成される場合には、各色毎に本発明のデータ転送方法を実現することで、各色毎のレジストレーションずれによる色ずれを防ぐことができる。
【００６０】
［第１の実施形態］
以下では、図６を参照して、第１の実施形態について説明する。本実施形態は、ビットマップデータを主走査方向に反転（鏡像）する主走査方向反転方式の場合のＤＭＡコントローラ３０５の動作について説明する。本実施形態では、ビットマップデータの１ラインを等分に分割して考える。以下、この分割された１つのデータをセグメント（分割データ）と称する。
【００６１】
本実施形態に係るＤＭＡ動作（ビットマップデータの読み出し動作）を実現するために、レジスタ部５０１には、予め複数のレジスタが用意されている。具体的に、レジスタ部５０１は、各セグメントの長さを指定するレジスタ（ＲｅｇＳｅｇＬｅｎ）を含む。また、レジスタ部５０１は、走査線の曲がりに合わせて、隣り合うセグメントでラインを切り換えないか、上（前）のラインに切り換えるか、又は下（次）のラインに切り換えるかを指定するレジスタ郡（ＲｅｇＵｐＤｏｗｎ［ｉ］）を必要な数だけ含む。このレジスタ群のとり得る値は３通りであるため、例えば、ラインを切り換えない場合は‘００’又は‘０１’を、上のラインに切り換える場合は‘１０’を、下のラインに切り換える場合は‘１１’が割り当てられる。
【００６２】
また、レジスタ部５０１は、レジスタ（ＲｅｇＯｖｅｒｗｒａｐＬｅｎ）、レジスタ（ＲｅｇＳｔａｒｔＡｄｄｒ）、レジスタ（ＲｅｇＬｉｎｅＬｅｎ）、レジスタ（ＲｅｇＬｉｎｅＯｆｆｓｅｔ）及びレジスタ（ＲｅｇＢｅａｍｓ）を備える。レジスタ（ＲｅｇＯｖｅｒｗｒａｐＬｅｎ）には、隣り合うセグメントでラインが切り換わる場合に、切換位置の前後をリードする長さ（切換位置の近傍のデータとなる。）が指定される。このレジスタ（ＲｅｇＯｖｅｒｗｒａｐＬｅｎ）は、主走査方向の組合せ数となる。レジスタ（ＲｅｇＳｔａｒｔＡｄｄｒ）には、画像メモリ３０４に記憶されるビットマップデータの先頭アドレスが指定される。レジスタ（ＲｅｇＬｉｎｅＬｅｎ）には、ビットマップデータのラインの長さが指定される。レジスタ（ＲｅｇＬｉｎｅＯｆｆｓｅｔ）には、ビットマップデータの隣り合うラインのアドレスのオフセット値が指定される。レジスタ（ＲｅｇＢｅａｍｓ）には、ブレンド処理部３０６へ送るべきライン数が指定される。さらに、レジスタ部５０１は、ＣＰＵ３０８が上述のレジスタの設定を完了した後に、ＤＭＡ動作を開始させるための起動レジスタを含む。
【００６３】
図６は、第１の実施形態に係るアドレス生成部５０２の動作を示すフローチャートである。ここでは、走査線の歪みを解消するために、好適にビットマップデータを読み出すＤＭＡ処理（データ転送方法）について説明する。
【００６４】
まず、ステップＳ１００において、アドレス生成部５０２は、ＣＰＵ３０８の指示によってＤＭＡ動作が開始されると、信号ｌｉｎｅ＿ｓｔａｒｔ＿ａｄｄｒ及び信号ｌｉｎｅ＿ｃｎｔを初期化する。具体的に、アドレス生成部５０２は、各ラインの開始アドレスを記憶する信号ｌｉｎｅ＿ｓｔａｒｔ＿ａｄｄｒをＲｅｇＳｔａｒｔＡｄｄｒ＋（ＲｅｇＬｉｎｅＬｅｎ−１）の値で初期化する。また、アドレス生成部５０２は、ブレンド処理部３０６へ送ったライン数を示す信号ｌｉｎｅ＿ｃｎｔをゼロで初期化する。
【００６５】
ステップＳ１０１において、アドレス生成部５０２は、ライン毎の初期化を行う。具体的に、アドレス生成部５０２は、セグメントの開始アドレスを示す信号ｓｅｇ＿ａｄｄｒをｌｉｎｅ＿ｓｔａｒｔ＿ａｄｄｒの値で初期化し、ライン中の処理した量をカウントする信号ｌｉｎｅ＿ｄａｔａ＿ｃｎｔをゼロで初期化する。また、アドレス生成部５０２は、参照すべきレジスタ郡ＲｅｇＵｐＤｏｗｎ［ｉ］のインデックスを示す信号ｉｎｄｅｘを０で初期化する。
【００６６】
ステップＳ１０２において、アドレス生成部５０２は、セグメント毎の初期化を行う。具体的に、アドレス生成部５０２は、バスインタフェース５０３へ要求すべきアドレスと長さを示す信号（ａｄｄｒとｌｅｎｇｔｈ）をそれぞれ、セグメントの開始アドレスを示す信号ｓｅｇ＿ａｄｄｒとレジスタＲｅｇＳｅｇＬｅｎの値で初期化する。
【００６７】
ステップＳ１０３において、アドレス生成部５０２は、信号ａｄｄｒとｌｅｎｇｔｈでバスインタフェース５０３へリード要求を行う。なお、ステップＳ１０３におけるリード要求は、主走査方向のアドレスを減算しながらデータがリードされるような要求となる。
【００６８】
ステップＳ１０４において、アドレス生成部５０２は、セグメントの開始アドレスを示す信号ｓｅｇ＿ａｄｄｒを次のセグメントの開始アドレスに更新するために、現在のセグメントの後側（次のセグメント側）でライン切り換え信号ＲｅｇＵｐＤｏｗｎ［ｉｎｄｅｘ］の値を判定する。セグメントの後側でラインの切り換えがない場合、即ち、ライン切り換え信号ＲｅｇＵｐＤｏｗｎ［ｉｎｄｅｘ］の値が‘００’又は‘０１’である場合に、アドレス生成部５０２は、処理をステップＳ１０７へ遷移させる。また、上のラインに切り換える場合、即ち、ライン切り換え信号ＲｅｇＵｐＤｏｗｎ［ｉｎｄｅｘ］の値が‘１０’である場合、アドレス生成部５０２は、処理をステップＳ１０５へ遷移させる。さらに、下のラインに切り換わる場合、即ち、ライン切り換え信号ＲｅｇＵｐＤｏｗｎ［ｉｎｄｅｘ］の値が‘１１’である場合、アドレス生成部５０２は、処理をステップＳ１０６へ遷移させる。
【００６９】
ステップＳ１０５において、アドレス生成部５０２は、セグメントの開始アドレスを上のラインに切り換えるために信号ｓｅｇ＿ａｄｄｒにレジスタＲｅｇＬｉｎｅＯｆｆｓｅｔの値を加え、処理をＳ１０７へ遷移させる。次のセグメントの開始アドレスはこの値に、さらにＲｅｇＳｅｇＬｅｎを加える処理は、後述するステップＳ１０７で行われる。
【００７０】
ステップＳ１０６において、アドレス生成部５０２は、セグメントの開始アドレスを下のラインに切り換えるために信号ｓｅｇ＿ａｄｄｒからレジスタＲｅｇＬｉｎｅＯｆｆｓｅｔの値を減じ、処理をＳ１０７へ遷移させる。次のセグメントの開始アドレスはこの値に、さらにＲｅｇＳｅｇＬｅｎを加える処理は、後述するステップＳ１０７で行われる。
【００７１】
ステップＳ１０７において、アドレス生成部５０２は、次のセグメントの処理のために各信号を更新する。具体的に、アドレス生成部５０２は、セグメントの開始アドレス信号ｓｅｇ＿ａｄｄｒからレジスタＲｅｇＳｅｇＬｅｎの値を減じる。また、アドレス生成部５０２は、ライン中の処理した量をカウントする信号ｌｉｎｅ＿ｄａｔａ＿ｃｎｔにもレジスタＲｅｇＳｅｇＬｅｎの値を加える。さらに、アドレス生成部５０２は、参照するレジスタＲｅｇＵｐＤｏｗｎ［ｉ］を１つ進めるために、信号ｉｎｄｅｘを１だけインクリメントする。
【００７２】
ステップＳ１０８において、アドレス生成部５０２は、レジスタＲｅｇＬｉｎｅＬｅｎの値からｌｉｎｅ＿ｄａｔａ＿ｃｎｔの値を減じた値をＲｅｇＳｅｇＬｅｎの値と比較し、ラインの終了を判定する。その差がＲｅｇＳｅｇＬｅｎの値より大きければ、アドレス生成部５０２は、処理すべきセグメントが２個以上あるため、ステップＳ１０２に処理を戻し、セグメントの処理を繰り返す。一方、その差がＲｅｇＳｅｇＬｅｎの値以下であれば、アドレス生成部５０２は、ライン中の最後のセグメントの処理を行うためにステップＳ１０９の処理へ進む。
【００７３】
ステップＳ１０９において、アドレス生成部５０２は、次のラインの処理のために各信号を更新する。具体的に、アドレス生成部５０２は、各ラインの開始アドレスを記憶する信号ｌｉｎｅ＿ｓｔａｒｔ＿ａｄｄｒにレジスタＲｅｇＬｉｎｅＯｆｆｓｅｔの値を加え、各ラインの開始アドレスが次のラインの先頭アドレスとなるように更新する。また、アドレス生成部５０２は、ブレンド処理部３０６へ送ったライン数を示す信号ｌｉｎｅ＿ｃｎｔを１だけインクリメントする。
【００７４】
ステップＳ１１０において、アドレス生成部５０２は、信号ｌｉｎｅ＿ｃｎｔとレジスタＲｅｇＢｅａｍｓの値を比較し、ページの終了を判定する。具体的に、アドレス生成部５０２は、信号ｌｉｎｅ＿ｃｎｔの値がレジスタＲｅｇＢｅａｍｓの値未満であれば、処理すべきラインが存在するため、ステップＳ１０１に処理を戻し、ラインの処理を繰り返す。一方、信号ｌｉｎｅ＿ｃｎｔの値がレジスタＲｅｇＢｅａｍｓの値以上であれば、アドレス生成部５０２は、ＤＭＡ動作を終了する。ＤＭＡコントローラ３０５はＤＭＡ動作が終了すると、割り込みをＣＰＵ３０８に送る。ＣＰＵ３０８は、この割り込みを検出することで、ＤＭＡ動作が終了したことを検知する。
【００７５】
なお、上記の説明では本発明におけるデータ転送方法をＤＭＡコントローラ３０５で実現した例を示したが、ＣＰＵ３０８の処理時間に余裕があれば、ＣＰＵ３０８で実現してもよい。また、ＣＰＵ３０８以外の第２のＣＰＵ（中央処理装置）やＤＳＰ（デジタル信号プロセッサ）によって実現してもよい。
【００７６】
さらに、画像形成装置で、現像部が複数色（ＣＹＭＫ）の各色に対応する現像部から構成される場合には、各色毎に本発明のデータ転送方法を実現することで、各色毎のレジストレーションずれによる色ずれを防ぐことができる。
【００７７】
以上説明したように、本実施形態に係る画像形成装置は、偏向走査装置１０３による走査線のずれに基づいて、装置内のメモリに格納された画像データを読み出して、当該偏向走査装置１０３に転送することにより、画像形成を行う。具体的に、本画像形成装置は、１走査ラインの画像データの読み出し時に、走査線のずれが発生する位置の画像データに関しては他のラインの画像データも読み出す。読み出した他のラインの画像データは、対応する現在のラインの画像データに組み合わせられる。このように、本画像形成装置は、上述の画像データを組み合わせるブレンド処理部３０６に対して、必要な画像データのみを与えることができる。したがって、本画像形成装置は、従来のように複数のラインバッファを用意する必要がなく、コストを削減するとともに、回路規模を縮小することができる。なお、このように、走査線にずれが生じる位置で、ラインを切り換えるだけでなく、複数の画像データを組み合わせることによって、形成した画像に不自然な段差が発生することを抑制しうる。
【００７８】
なお、本発明は、上述の実施形態に限らず様々な変形が可能である。例えば、本画像形成装置は、上述の他のラインの画像データを指定する際に、他のラインのライン数と、主走査方向の組合せ数とを指定してもよい。これにより、本画像形成装置は、さらに精度良くブレンド処理部３０６に対して必要な画像データのみを与えることができる。また、主走査方向の組合せ数は、１ラインの走査中に他のラインに切り換える切換位置から前後への画素数（ドット数）を示す情報であってもよい。
【００７９】
また、本画像形成装置は、上述の他のラインが現在のラインに対して、前のラインか又は次のラインかをさらに指定して画像データを読み出してもよい。これにより、本画像形成装置は、走査線のずれの傾きによって、組み合わせるラインを変更することができ、より精度の良い画像を形成することができる。また、本画像形成装置は、１走査ラインの画像データを等分に分割し、当該分割した分割データごとに、前のラインに切り換えるか、次のラインに切り換えるか、又は、切り換え無しかを指定して画像データを読み出してもよい。
【００８０】
さらに、上述の読み出し制御は、１ラインずつ行われることが望ましい。これにより、必要となる画像データを順に読み出すことができ、従来のように複数のラインバッファを用意する必要が無くなる。
【００８１】
［第２の実施形態］
次に、図７を参照して、第２の実施形態について説明する。本実施形態は、第１の実施形態とは異なり、ビットマップ画像データを副走査方向に反転（鏡像）する副走査方向反転方式の場合のＤＭＡコントローラ３０５の動作について説明する。本実施形態では、ビットマップデータの１ラインを等分に分割して考える。以下、この分割された１つのデータをセグメントと称する。
【００８２】
本実施形態に係るＤＭＡ動作を実現するために、レジスタ部５０１には、予め複数のレジスタが用意されている。具体的に、レジスタ部５０１は、各セグメントの長さを指定するレジスタ（ＲｅｇＳｅｇＬｅｎ）を含む。また、レジスタ部５０１は、走査線の曲がりに合わせて、隣り合うセグメントでラインを切り換えないか、上のラインに切り換えるか、又は下のラインに切り換えるかを指定するレジスタ郡（ＲｅｇＵｐＤｏｗｎ［ｉ］）を必要な数だけ含む。このレジスタ群のとり得る値は３通りであるため、例えば、ラインを切り換えない場合は‘００’又は‘０１’を、上のラインに切り換える場合は‘１０’を、下のラインに切り換える場合は‘１１’が割り当てられる。
【００８３】
また、レジスタ部５０１は、レジスタ（ＲｅｇＯｖｅｒｗｒａｐＬｅｎ）、レジスタ（ＲｅｇＳｔａｒｔＡｄｄｒ）、レジスタ（ＲｅｇＬｉｎｅＬｅｎ）、レジスタ（ＲｅｇＬｉｎｅＯｆｆｓｅｔ）及びレジスタ（ＲｅｇＢｅａｍｓ）を備える。レジスタ（ＲｅｇＯｖｅｒｗｒａｐＬｅｎ）には、隣り合うセグメントでラインが切り換わる場合に、切換位置の前後をリードする長さが指定される。このレジスタ（ＲｅｇＯｖｅｒｗｒａｐＬｅｎ）は、主走査方向の組合せ数となる。レジスタ（ＲｅｇＳｔａｒｔＡｄｄｒ）には、画像メモリ３０４に記憶されるビットマップデータの先頭アドレスが指定される。レジスタ（ＲｅｇＬｉｎｅＬｅｎ）には、ビットマップデータのラインの長さが指定される。レジスタ（ＲｅｇＬｉｎｅＯｆｆｓｅｔ）には、ビットマップデータの隣り合うラインのアドレスのオフセット値が指定される。レジスタ（ＲｅｇＢｅａｍｓ）には、ブレンド処理部３０６へ送るべきライン数が指定される。さらに、レジスタ部５０１は、ＣＰＵ３０８が上述のレジスタの設定を完了した後に、ＤＭＡ動作を開始させるための起動レジスタを含む。
【００８４】
図７は、第２の実施形態に係るアドレス生成部５０２の動作を示すフローチャートである。ここでは、走査線の歪みを解消するために、好適にビットマップデータを読み出すＤＭＡ処理（データ転送方法）について説明する。
【００８５】
まず、ステップＳ２００において、アドレス生成部５０２は、ＣＰＵ３０８の指示によってＤＭＡ動作が開始されると、信号ｌｉｎｅ＿ｓｔａｒｔ＿ａｄｄｒ及び信号ｌｉｎｅ＿ｃｎｔを初期化する。具体的に、アドレス生成部５０２は、各ラインの開始アドレスを記憶する信号ｌｉｎｅ＿ｓｔａｒｔ＿ａｄｄｒをＲｅｇＳｔａｒｔＡｄｄｒ＋ＲｅｇＬｉｎｅＯｆｆｓｅｔ＊（ＲｅｇＢｅａｍｓ−１）の値で初期化する。また、アドレス生成部５０２は、ブレンド処理部３０６へ送ったライン数を示す信号ｌｉｎｅ＿ｃｎｔをゼロで初期化する。
【００８６】
ステップＳ２０１において、アドレス生成部５０２は、ライン毎の初期化を行う。具体的に、アドレス生成部５０２は、セグメントの開始アドレスを示す信号ｓｅｇ＿ａｄｄｒをｌｉｎｅ＿ｓｔａｒｔ＿ａｄｄｒの値で初期化し、ライン中の処理した量をカウントする信号ｌｉｎｅ＿ｄａｔａ＿ｃｎｔをゼロで初期化する。また、アドレス生成部５０２は、参照すべきレジスタ郡ＲｅｇＵｐＤｏｗｎ［ｉ］のインデックスを示す信号ｉｎｄｅｘを０で初期化する。
【００８７】
ステップＳ２０２において、アドレス生成部５０２は、セグメント毎の初期化を行う。具体的に、アドレス生成部５０２は、バスインタフェース５０３へ要求すべきアドレスと長さを示す信号（ａｄｄｒとｌｅｎｇｔｈ）をそれぞれ、セグメントの開始アドレスを示す信号ｓｅｇ＿ａｄｄｒとレジスタＲｅｇＳｅｇＬｅｎの値で初期化する。
【００８８】
ステップＳ２０３において、アドレス生成部５０２は、信号ａｄｄｒとｌｅｎｇｔｈでバスインタフェース５０３へリード要求を行う。
【００８９】
ステップＳ２０４において、アドレス生成部５０２は、セグメントの開始アドレスを示す信号ｓｅｇ＿ａｄｄｒを次のセグメントの開始アドレスに更新するために、現在のセグメントの後側でライン切り換え信号ＲｅｇＵｐＤｏｗｎ［ｉｎｄｅｘ］の値を判定する。セグメントの後側でラインの切り換えがない場合、即ち、ライン切り換え信号ＲｅｇＵｐＤｏｗｎ［ｉｎｄｅｘ］の値が‘００’又は‘０１’である場合に、アドレス生成部５０２は、処理をステップＳ２０７へ遷移させる。また、上のラインに切り換える場合、即ち、ライン切り換え信号ＲｅｇＵｐＤｏｗｎ［ｉｎｄｅｘ］の値が‘１０’である場合、アドレス生成部５０２は、処理をステップＳ２０５へ遷移させる。さらに、下のラインに切り換わる場合、即ち、ライン切り換え信号ＲｅｇＵｐＤｏｗｎ［ｉｎｄｅｘ］の値が‘１１’である場合、アドレス生成部５０２は、処理をステップＳ２０６へ遷移させる。
【００９０】
ステップＳ２０５において、アドレス生成部５０２は、セグメントの開始アドレスを上のラインに切り換えるために信号ｓｅｇ＿ａｄｄｒにレジスタＲｅｇＬｉｎｅＯｆｆｓｅｔの値を加え、処理をＳ２０７へ遷移させる。次のセグメントの開始アドレスはこの値に、さらにＲｅｇＳｅｇＬｅｎを加える処理は、後述するステップＳ２０７で行われる。
【００９１】
ステップＳ２０６において、アドレス生成部５０２は、セグメントの開始アドレスを下のラインに切り換えるために信号ｓｅｇ＿ａｄｄｒからレジスタＲｅｇＬｉｎｅＯｆｆｓｅｔの値を減じ、処理をＳ２０７へ遷移させる。次のセグメントの開始アドレスはこの値に、さらにＲｅｇＳｅｇＬｅｎを加える処理は、後述するステップＳ２０７で行われる。
【００９２】
ステップＳ２０７において、アドレス生成部５０２は、次のセグメントの処理のために各信号を更新する。具体的に、アドレス生成部５０２は、セグメントの開始アドレス信号ｓｅｇ＿ａｄｄｒにレジスタＲｅｇＳｅｇＬｅｎの値を加える。また、アドレス生成部５０２は、ライン中の処理した量をカウントする信号ｌｉｎｅ＿ｄａｔａ＿ｃｎｔにもレジスタＲｅｇＳｅｇＬｅｎの値を加える。さらに、アドレス生成部５０２は、参照するレジスタＲｅｇＵｐＤｏｗｎ［ｉ］を１つ進めるために、信号ｉｎｄｅｘを１だけインクリメントする。
【００９３】
ステップＳ２０８において、アドレス生成部５０２は、レジスタＲｅｇＬｉｎｅＬｅｎの値からｌｉｎｅ＿ｄａｔａ＿ｃｎｔの値を減じた値をＲｅｇＳｅｇＬｅｎの値と比較し、ラインの終了を判定する。その差がＲｅｇＳｅｇＬｅｎの値より大きければ、アドレス生成部５０２は、処理すべきセグメントが２個以上あるため、ステップＳ２０２に処理を戻し、セグメントの処理を繰り返す。一方、その差がＲｅｇＳｅｇＬｅｎの値以下であれば、アドレス生成部５０２は、ライン中の最後のセグメントの処理を行うためにステップＳ２０９の処理へ進む。
【００９４】
ステップＳ２０９において、アドレス生成部５０２は、次のラインの処理のために各信号を更新する。具体的に、アドレス生成部５０２は、各ラインの開始アドレスを記憶する信号ｌｉｎｅ＿ｓｔａｒｔ＿ａｄｄｒからレジスタＲｅｇＬｉｎｅＯｆｆｓｅｔの値を減じ、各ラインの開始アドレスが次のラインの先頭アドレスとなるように更新する。また、アドレス生成部５０２は、ブレンド処理部３０６へ送ったライン数を示す信号ｌｉｎｅ＿ｃｎｔを１だけインクリメントする。
【００９５】
ステップＳ２１０において、アドレス生成部５０２は、信号ｌｉｎｅ＿ｃｎｔとレジスタＲｅｇＢｅａｍｓの値を比較し、ページの終了を判定する。具体的に、アドレス生成部５０２は、信号ｌｉｎｅ＿ｃｎｔの値がレジスタＲｅｇＢｅａｍｓの値未満であれば、処理すべきラインが存在するため、ステップＳ２０１に処理を戻し、ラインの処理を繰り返す。一方、信号ｌｉｎｅ＿ｃｎｔの値がレジスタＲｅｇＢｅａｍｓの値以上であれば、アドレス生成部５０２は、ＤＭＡ動作を終了する。ＤＭＡコントローラ３０５はＤＭＡ動作が終了すると、割り込みをＣＰＵ３０８に送る。ＣＰＵ３０８は、この割り込みを検出することで、ＤＭＡ動作が終了したことを検知する。
【００９６】
なお、上記の説明では本発明におけるデータ転送方法をＤＭＡコントローラ３０５で実現した例を示したが、ＣＰＵ３０８の処理時間に余裕があれば、ＣＰＵ３０８で実現してもよい。また、ＣＰＵ３０８以外の第２のＣＰＵやＤＳＰ（デジタルシグナルプロセッサ）によって実現してもよい。
【００９７】
さらに、カラー画像形成装置で、現像部が複数色（ＣＹＭＫ）の各色に対応する現像部から構成される場合には、各色毎に本発明のデータ転送方法を実現することで、各色毎のレジストレーションずれによる色ずれを防ぐことができる。
【００９８】
以上説明したように、本実施形態に係る画像形成装置は、副走査方向反転方式による転送方法においても、第１の実施形態と同様の制御を実現することができ、同様の効果を得ることができる。
【００９９】
［第３の実施形態］
以下では、図８を参照して、第３の実施形態について説明する。本実施形態は、ビットマップ画像データを１８０度回転する１８０度回転方式の場合のＤＭＡコントローラ３０５の動作について説明する。本実施形態では、ビットマップデータの１ラインを等分に分割して考える。以下、この分割された１つのデータをセグメントと称する。
【０１００】
本実施形態に係るＤＭＡ動作（ビットマップデータの読み出し動作）を実現するために、レジスタ部５０１には、予め複数のレジスタが用意されている。具体的に、レジスタ部５０１は、各セグメントの長さを指定するレジスタ（ＲｅｇＳｅｇＬｅｎ）を含む。また、レジスタ部５０１は、走査線の曲がりに合わせて、隣り合うセグメントでラインを切り換えないか、上のラインに切り換えるか、又は下のラインに切り換えるかを指定するレジスタ郡（ＲｅｇＵｐＤｏｗｎ［ｉ］）を必要な数だけ含む。このレジスタ群のとり得る値は３通りであるため、例えば、ラインを切り換えない場合は‘００’又は‘０１’を、上のラインに切り換える場合は‘１０’を、下のラインに切り換える場合は‘１１’が割り当てられる。
【０１０１】
また、レジスタ部５０１は、レジスタ（ＲｅｇＯｖｅｒｗｒａｐＬｅｎ）、レジスタ（ＲｅｇＳｔａｒｔＡｄｄｒ）、レジスタ（ＲｅｇＬｉｎｅＬｅｎ）、レジスタ（ＲｅｇＬｉｎｅＯｆｆｓｅｔ）及びレジスタ（ＲｅｇＢｅａｍｓ）を備える。レジスタ（ＲｅｇＯｖｅｒｗｒａｐＬｅｎ）には、隣り合うセグメントでラインが切り換わる場合に、切換位置の前後をリードする長さが指定される。このレジスタ（ＲｅｇＯｖｅｒｗｒａｐＬｅｎ）は、主走査方向の組合せ数となる。レジスタ（ＲｅｇＳｔａｒｔＡｄｄｒ）には、画像メモリ３０４に記憶されるビットマップデータの先頭アドレスが指定される。レジスタ（ＲｅｇＬｉｎｅＬｅｎ）には、ビットマップデータのラインの長さが指定される。レジスタ（ＲｅｇＬｉｎｅＯｆｆｓｅｔ）には、ビットマップデータの隣り合うラインのアドレスのオフセット値が指定される。レジスタ（ＲｅｇＢｅａｍｓ）には、ブレンド処理部３０６へ送るべきライン数が指定される。さらに、レジスタ部５０１は、ＣＰＵ３０８が上述のレジスタの設定を完了した後に、ＤＭＡ動作を開始させるための起動レジスタを含む。
【０１０２】
図８は、第３の実施形態に係るアドレス生成部５０２の動作を示すフローチャートである。ここでは、走査線の歪みを解消するために、好適にビットマップデータを読み出すＤＭＡ処理（データ転送方法）について説明する。
【０１０３】
まず、ステップＳ３００において、アドレス生成部５０２は、ＣＰＵ３０８の指示によってＤＭＡ動作が開始されると、信号ｌｉｎｅ＿ｓｔａｒｔ＿ａｄｄｒ及び信号ｌｉｎｅ＿ｃｎｔを初期化する。具体的に、アドレス生成部５０２は、各ラインの開始アドレスを記憶する信号ｌｉｎｅ＿ｓｔａｒｔ＿ａｄｄｒをＲｅｇＳｔａｒｔＡｄｄｒ＋（ＲｅｇＬｉｎｅＬｅｎ−１）＋ＲｅｇＬｉｎｅＯｆｆｓｅｔ＊（ＲｅｇＢｅａｍｓ−１）の値で初期化する。また、アドレス生成部５０２は、ブレンド処理部３０６へ送ったライン数を示す信号ｌｉｎｅ＿ｃｎｔをゼロで初期化する。
【０１０４】
ステップＳ３０１において、アドレス生成部５０２は、ライン毎の初期化を行う。具体的に、アドレス生成部５０２は、セグメントの開始アドレスを示す信号ｓｅｇ＿ａｄｄｒをｌｉｎｅ＿ｓｔａｒｔ＿ａｄｄｒの値で初期化し、ライン中の処理した量をカウントする信号ｌｉｎｅ＿ｄａｔａ＿ｃｎｔをゼロで初期化する。また、アドレス生成部５０２は、参照すべきレジスタ郡ＲｅｇＵｐＤｏｗｎ［ｉ］のインデックスを示す信号ｉｎｄｅｘを０で初期化する。
【０１０５】
ステップＳ３０２において、アドレス生成部５０２は、セグメント毎の初期化を行う。具体的に、アドレス生成部５０２は、バスインタフェース５０３へ要求すべきアドレスと長さを示す信号（ａｄｄｒとｌｅｎｇｔｈ）をそれぞれ、セグメントの開始アドレスを示す信号ｓｅｇ＿ａｄｄｒとレジスタＲｅｇＳｅｇＬｅｎの値で初期化する。
【０１０６】
ステップＳ３０３において、アドレス生成部５０２は、信号ａｄｄｒとｌｅｎｇｔｈでバスインタフェース５０３へリード要求を行う。なお、ステップＳ３０３におけるリード要求は、主走査方向のアドレスを減算しながらデータがリードされるような要求となる。
【０１０７】
ステップＳ３０４において、アドレス生成部５０２は、セグメントの開始アドレスを示す信号ｓｅｇ＿ａｄｄｒを次のセグメントの開始アドレスに更新するために、現在のセグメントの後側でライン切り換え信号ＲｅｇＵｐＤｏｗｎ［ｉｎｄｅｘ］の値を判定する。セグメントの後側でラインの切り換えがない場合、即ち、ライン切り換え信号ＲｅｇＵｐＤｏｗｎ［ｉｎｄｅｘ］の値が‘００’又は‘０１’である場合に、アドレス生成部５０２は、処理をステップＳ３０７へ遷移させる。また、上のラインに切り換える場合、即ち、ライン切り換え信号ＲｅｇＵｐＤｏｗｎ［ｉｎｄｅｘ］の値が‘１０’である場合、アドレス生成部５０２は、処理をステップＳ３０５へ遷移させる。さらに、下のラインに切り換わる場合、即ち、ライン切り換え信号ＲｅｇＵｐＤｏｗｎ［ｉｎｄｅｘ］の値が‘１１’である場合、アドレス生成部５０２は、処理をステップＳ３０６へ遷移させる。
【０１０８】
ステップＳ３０５において、アドレス生成部５０２は、セグメントの開始アドレスを上のラインに切り換えるために信号ｓｅｇ＿ａｄｄｒにレジスタＲｅｇＬｉｎｅＯｆｆｓｅｔの値を加え、処理をＳ３０７へ遷移させる。次のセグメントの開始アドレスはこの値に、さらにＲｅｇＳｅｇＬｅｎを加える処理は、後述するステップＳ３０７で行われる。
【０１０９】
ステップＳ３０６において、アドレス生成部５０２は、セグメントの開始アドレスを下のラインに切り換えるために信号ｓｅｇ＿ａｄｄｒからレジスタＲｅｇＬｉｎｅＯｆｆｓｅｔの値を減じ、処理をＳ３０７へ遷移させる。次のセグメントの開始アドレスはこの値に、さらにＲｅｇＳｅｇＬｅｎを加える処理は、後述するステップＳ３０７で行われる。
【０１１０】
ステップＳ３０７において、アドレス生成部５０２は、次のセグメントの処理のために各信号を更新する。具体的に、アドレス生成部５０２は、セグメントの開始アドレス信号ｓｅｇ＿ａｄｄｒからレジスタＲｅｇＳｅｇＬｅｎの値を減じる。また、アドレス生成部５０２は、ライン中の処理した量をカウントする信号ｌｉｎｅ＿ｄａｔａ＿ｃｎｔにもレジスタＲｅｇＳｅｇＬｅｎの値を加える。さらに、アドレス生成部５０２は、参照するレジスタＲｅｇＵｐＤｏｗｎ［ｉ］を１つ進めるために、信号ｉｎｄｅｘを１だけインクリメントする。
【０１１１】
ステップＳ３０８において、アドレス生成部５０２は、レジスタＲｅｇＬｉｎｅＬｅｎの値からｌｉｎｅ＿ｄａｔａ＿ｃｎｔの値を減じた値をＲｅｇＳｅｇＬｅｎの値と比較し、ラインの終了を判定する。その差がＲｅｇＳｅｇＬｅｎの値より大きければ、アドレス生成部５０２は、処理すべきセグメントが２個以上あるため、ステップＳ１０２に処理を戻し、セグメントの処理を繰り返す。一方、その差がＲｅｇＳｅｇＬｅｎの値以下であれば、アドレス生成部５０２は、ライン中の最後のセグメントの処理を行うためにステップＳ３０９の処理へ進む。
【０１１２】
ステップＳ３０９において、アドレス生成部５０２は、次のラインの処理のために各信号を更新する。具体的に、アドレス生成部５０２は、各ラインの開始アドレスを記憶する信号ｌｉｎｅ＿ｓｔａｒｔ＿ａｄｄｒからレジスタＲｅｇＬｉｎｅＯｆｆｓｅｔの値を減じ、各ラインの開始アドレスが次のラインの先頭アドレスになるように更新する。また、アドレス生成部５０２は、ブレンド処理部３０６へ送ったライン数を示す信号ｌｉｎｅ＿ｃｎｔを１だけインクリメントする。
【０１１３】
ステップＳ３１０において、アドレス生成部５０２は、信号ｌｉｎｅ＿ｃｎｔとレジスタＲｅｇＢｅａｍｓの値を比較し、ページの終了を判定する。具体的に、アドレス生成部５０２は、信号ｌｉｎｅ＿ｃｎｔの値がレジスタＲｅｇＢｅａｍｓの値未満であれば、処理すべきラインが存在するため、ステップＳ３０１に処理を戻し、ラインの処理を繰り返す。一方、信号ｌｉｎｅ＿ｃｎｔの値がレジスタＲｅｇＢｅａｍｓの値以上であれば、アドレス生成部５０２は、ＤＭＡ動作を終了する。ＤＭＡコントローラ３０５はＤＭＡ動作が終了すると、割り込みをＣＰＵ３０８に送る。ＣＰＵ３０８は、この割り込みを検出することで、ＤＭＡ動作が終了したことを検知する。
【０１１４】
なお、上記の説明では本発明におけるデータ転送方法をＤＭＡコントローラ３０５で実現した例を示したが、ＣＰＵ３０８の処理時間に余裕があれば、ＣＰＵ３０８で実現してもよい。また、ＣＰＵ３０８以外の第２のＣＰＵやＤＳＰ（デジタルシグナルプロセッサ）によって実現してもよい。
【０１１５】
さらに、カラー画像形成装置で、現像部が複数色（ＣＹＭＫ）の各色に対応する現像部から構成される場合には、各色毎に本発明のデータ転送方法を実現することで、各色毎のレジストレーションずれによる色ずれを防ぐことができる。
【０１１６】
以上説明したように、本実施形態に係る画像形成装置は、１８０度回転方式による転送方法においても、第１の実施形態と同様の制御を実現することができ、同様の効果を得ることができる。
【図面の簡単な説明】
【０１１７】
【図１Ａ】本実施形態に係る画像形成装置１００の一例を示す断面図である。
【図１Ｂ】本実施形態に係る画像形成装置１００の構成例を示すブロック図である。
【図２】本実施形態に係るプリンタコントローラ１２３の構成例を示すブロック図である。
【図３】本実施形態に係るプリンタコントローラ１２３に備えられるＤＭＡコントローラ３０５の構成例を示すブロック図である。
【図４】本実施形態に係るレジストレーションずれ補正の原理を説明するための図である。
【図５】本実施形態に係るレジストレーションずれ補正の原理を説明するための図である。
【図６】第１の実施形態に係るアドレス生成部５０２の動作を示すフローチャートである。
【図７】第２の実施形態に係るアドレス生成部５０２の動作を示すフローチャートである。
【図８】第３の実施形態に係るアドレス生成部５０２の動作を示すフローチャートである。
【図９】アドレス生成部５０２の動作を示すフローチャートである。
【符号の説明】
【０１１８】
１００：画像形成装置
１２１：データ処理部
１２２：表示部
１２３：プリンタコントローラ
１２４：操作部
１２５：画像読取部
１２６：記憶部
１２７：印刷部
１２８：ネットワークＩ／Ｆ
３０１：操作部Ｉ／Ｆ部
３０２：ホストＩ／Ｆ部
３０３：画像データ発生部
３０４：画像メモリ
３０５：ＤＭＡコントローラ
３０６：ブレンド処理部
３０７：エンジンＩ／Ｆ部
３０８：ＣＰＵ
３０９：ＲＯＭ
３１０：ＲＡＭ
５０１：レジスタ部
５０２：アドレス生成部
５０３：バスインタフェース
５０４：ＦＩＦＯ
５０５：ブレンド処理部インタフェース
【図１Ａ】
2009180920.tif 000003
【図１Ｂ】
2009180920.tif 000004
【図２】
2009180920.tif 000005
【図３】
2009180920.tif 000006
【図４】
2009180920.tif 000007
【図５】
2009180920.tif 000008
【図６】
2009180920.tif 000009
【図７】
2009180920.tif 000010
【図８】
2009180920.tif 000011
【図９】
2009180920.tif 000012