"所定の領域内に複数のパターン画像を含む画像を生成する画像生成装置であって、前記パターン画像を描画するための所定のパラメータを記憶する記憶手段と、前記記憶手段に記憶された所定のパラメータに基づいて、一の前記パターン画像を生成する第1の回路であるパターン画像生成手段と、前記所定の領域内における画像形成途中に、前記記憶手段に記憶された前記所定のパラメータを更新する第2の回路であるパラメータ更新手段と、前記パターン画像生成手段と前記パラメータ更新手段との間で、前記所定のパラメータの更新及び前記所定のパラメータの更新後の前記パターン画像生成手段による前記所定のパラメータの読み出しの完了を伝達する伝達手段と、を備え、前記パラメータ更新手段は、所定の領域内における所定方向に並ぶ複数のパターン画像の画像形成の開始から終了までの間に、前記所定のパラメータを更新させる処理を複数回行うことを特徴とする画像生成装置。前記画像生成装置は、前記所定の領域内において、主操作方向に沿った線画像生成を、当該主操作方向に直交する副走査方向に沿って複数回行い、前記所定方向は、画像生成の主走査方向であって、前記パラメータ更新手段は、前記所定の領域内における前記主走査方向に複数の前記パターン画像を生成する場合、前記パターン画像生成手段により生成されている複数の前記パターン画像のうち少なくとも一のパターン画像の副走査方向に沿った描画領域の範囲内で、前記記憶手段に記憶された前記所定のパラメータを前記複数のパターン画像それぞれを描画するための前記所定のパラメータに順次更新することを特徴とする請求項1に記載の画像生成装置。前記画像生成装置は、前記所定の領域内において、主操作方向に沿った線画像描画を、当該主操作方向に直交する副走査方向に沿って複数回行い、前記所定方向は、画像生成の副走査方向であって、前記パラメータ更新手段は、前記所定の領域内における前記副走査方向に複数の前記パターン画像を生成する場合、前記パターン画像生成手段により生成されている一のパターン画像の副走査方向に沿った描画領域の画像生成が完了されると、前記記憶手段に記憶された前記所定のパラメータを次に前記パターン画像生成手段に生成させるパターン画像を描画するための前記所定のパラメータに更新することを特徴とする請求項1に記載の画像生成装置。前記パラメータ更新手段は、複数回の前記所定のパラメータの更新を行うための命令を記憶する命令記憶手段と、前記命令記憶手段に記憶された命令に基づいて、前記記憶手段に記憶された前記所定のパラメータを更新する処理を行う処理手段と、を備え、前記伝達手段は、前記処理手段により前記記憶手段に記憶された前記所定のパラメータ値が更新されたことを示すフラグ値を設定する第1の設定手段と、前記設定手段により設定された前記フラグ値を記憶するフラグ値記憶手段と、前記所定のパラメータの更新後の前記パターン画像生成手段による前記所定のパラメータの読み出しの完了を示すフラグ値を前記フラグ値記憶手段に設定する第2の設定手段と、を備え、前記画像生成装置は、更に、前記第1の設定手段により、前記処理手段により前記記憶手段に記憶された前記所定のパラメータ値が更新されたことを示すフラグ値が設定された後、前記第2の設定手段により、前記所定のパラメータの更新後の前記パターン画像生成手段による前記所定のパラメータの読み出しの完了を示すフラグ値が設定されるまで、前記処理手段による前記所定のパラメータの更新処理を停止させる制御手段を備えることを特徴とする請求項1から3のいずれか一項に記載の画像生成装置。所定の領域内に複数のパターン画像を含む画像を生成する画像生成方法であって、前記パターン画像を描画するための所定のパラメータを記憶する工程と、記憶された所定のパラメータに基づいて、第1の回路により一の前記パターン画像を生成する工程と、前記所定の領域内における画像形成途中に、第2の回路により前記記憶手段に記憶された前記所定のパラメータを更新する工程と、第1の回路と第2の回路との間で、前記所定のパラメータの更新及び前記所定のパラメータの更新後の前記所定のパラメータの読み出しの完了を伝達する工程と、を有し、所定の領域内における所定方向に並ぶ複数のパターン画像の画像形成の開始から終了までの間に、前記所定のパラメータを更新する工程を複数回行うことを特徴とする画像生成方法。しかしながら、特許文献1のテストパターン生成方法では、描画範囲を格納するレジスタの個数や、描画範囲を示す信号線の本数などの回路構成により、テストパターンに含まれる矩形画像の数の上限が決定してしまう。このため、テストパターンに含まれる矩形画像の領域数を増やす場合、矩形画像の数に比例して回路規模が増大する問題がある。また、回路が決定された後では、もはや、それ以上に矩形画像の数を増やすことはできなくなる。また、特許文献2のテストパターン生成方法では、1ページの画素数分の画像データをRAMに書き込む処理の負担が大きくなり、また処理時間も長大となる。仮に、予め定められたテストパターンをROMに記憶させておく方法を取る場合、ソフトウェアの負担を幾分軽減することができる可能性があるが、ROMに記憶されたテストパターンは固定パターンとなるため、事後にテストパターンの内容を変更することができない。加えて、専用のROMを設けるコストもかかる。本発明の課題は、回路規模によるパターン画像の数の制約を生じさせず、廉価かつ容易に、任意の位置、寸法、数のパターン画像を含むテストパターンを生成することができる画像生成装置及び画像生成方法を提供することである。請求項1に記載の発明は、所定の領域内に複数のパターン画像を含む画像を生成する画像生成装置であって、前記パターン画像を描画するための所定のパラメータを記憶する記憶手段と、前記記憶手段に記憶された所定のパラメータに基づいて、一の前記パターン画像を生成する第1の回路であるパターン画像生成手段と、前記所定の領域内における画像形成途中に、前記記憶手段に記憶された前記所定のパラメータを更新する第2の回路であるパラメータ更新手段と、前記パターン画像生成手段と前記パラメータ更新手段との間で、前記所定のパラメータの更新及び前記所定のパラメータの更新後の前記パターン画像生成手段による前記所定のパラメータの読み出しの完了を伝達する伝達手段と、を備え、前記パラメータ更新手段は、所定の領域内における所定方向に並ぶ複数のパターン画像の画像形成の開始から終了までの間に、前記所定のパラメータを更新させる処理を複数回行うことを特徴とする。請求項2に記載の発明は、請求項1に記載の画像生成装置であって、前記画像生成装置は、前記所定の領域内において、主操作方向に沿った線画像生成を、当該主操作方向に直交する副走査方向に沿って複数回行い、前記所定方向は、画像生成の主走査方向であって、前記パラメータ更新手段は、前記所定の領域内における前記主走査方向に複数の前記パターン画像を生成する場合、前記パターン画像生成手段により生成されている複数の前記パターン画像のうち少なくとも一のパターン画像の副走査方向に沿った描画領域の範囲内で、前記記憶手段に記憶された前記所定のパラメータを前記複数のパターン画像それぞれを描画するための前記所定のパラメータに順次更新することを特徴とする。請求項3に記載の発明は、請求項1に記載の画像生成装置であって、前記画像生成装置は、前記所定の領域内において、主操作方向に沿った線画像描画を、当該主操作方向に直交する副走査方向に沿って複数回行い、前記所定方向は、画像生成の副走査方向であって、前記パラメータ更新手段は、前記所定の領域内における前記副走査方向に複数の前記パターン画像を生成する場合、前記パターン画像生成手段により生成されている一のパターン画像の副走査方向に沿った描画領域の画像生成が完了されると、前記記憶手段に記憶された前記所定のパラメータを次に前記パターン画像生成手段に生成させるパターン画像を描画するための前記所定のパラメータに更新することを特徴とする。請求項4に記載の発明は、請求項1から3のいずれか一項に記載の画像生成装置であって、前記パラメータ更新手段は、複数回の前記所定のパラメータの更新を行うための命令を記憶する命令記憶手段と、前記命令記憶手段に記憶された命令に基づいて、前記記憶手段に記憶された前記所定のパラメータを更新する処理を行う処理手段と、を備え、前記伝達手段は、前記処理手段により前記記憶手段に記憶された前記所定のパラメータ値が更新されたことを示すフラグ値を設定する第1の設定手段と、前記設定手段により設定された前記フラグ値を記憶するフラグ値記憶手段と、前記所定のパラメータの更新後の前記パターン画像生成手段による前記所定のパラメータの読み出しの完了を示すフラグ値を前記フラグ値記憶手段に設定する第2の設定手段と、を備え、前記画像生成装置は、更に、前記第1の設定手段により、前記処理手段により前記記憶手段に記憶された前記所定のパラメータ値が更新されたことを示すフラグ値が設定された後、前記第2の設定手段により、前記所定のパラメータの更新後の前記パターン画像生成手段による前記所定のパラメータの読み出しの完了を示すフラグ値が設定されるまで、前記処理手段による前記所定のパラメータの更新処理を停止させる制御手段を備えることを特徴とする。請求項5に記載の発明は、所定の領域内に複数のパターン画像を含む画像を生成する画像生成方法であって、前記パターン画像を描画するための所定のパラメータを記憶する工程と、記憶された所定のパラメータに基づいて、第1の回路により一の前記パターン画像を生成する工程と、前記所定の領域内における画像形成途中に、第2の回路により前記記憶手段に記憶された前記所定のパラメータを更新する工程と、第1の回路と第2の回路との間で、前記所定のパラメータの更新及び前記所定のパラメータの更新後の前記所定のパラメータの読み出しの完了を伝達する工程と、を有し、所定の領域内における所定方向に並ぶ複数のパターン画像の画像形成の開始から終了までの間に、前記所定のパラメータを更新する工程を複数回行うことを特徴とする。本発明によれば、回路規模によるパターン画像の数の制約を生じさせず、廉価かつ容易に、任意の位置、寸法、数のパターン画像を含むテストパターンを生成することができる。以下、図を参照して本発明の実施の形態の例を詳細に説明する。図1に、本発明に係る画像形成装置1の構成例を示す。画像形成装置1は、例えば、電子写真方式のカラー複写機であり、図1に示すように、制御部101、操作表示部102、スキャナ部103、画像処理部104、画像形成部105、センサ106、記憶部107、送受信部108等により構成され、各部はバス109により接続されている。制御部101は、CPUCentralProcessingUnit、ROMReadOnlyMemory、RAMRandomAccessMemory等により構成される。制御部101のCPUは、操作表示部102の操作により、ROMに記憶されているシステムプログラムや各種処理プログラムを読み出してRAMに展開し、展開されたプログラムに従って、画像形成装置1各部の動作を集中制御する。操作表示部102は、LCDLiquidCrystalDisplayにより構成され、制御部101から入力される表示信号の指示に従って表示画面上に各種操作ボタンや装置の状態表示、各機能の動作状況等の表示を行う。LCDの表示画面上は、透明電極を格子状に配置して構成された感圧式抵抗膜圧式のタッチパネルに覆われており、手指やタッチペン等で押下された力点のXY座標を電圧値で検出し、検出された位置信号を操作信号として制御部101に出力する。また、操作表示部102は、数字ボタン、スタートボタン等の各種操作ボタンを備え、ボタン操作による操作信号を制御部101に出力する。スキャナ部103は、原稿を載置するコンタクトガラスの下部にスキャナを備えて構成され、原稿の画像を読み取る。スキャナは、光源、CCDChargeCoupledDevice、A/D変換器等により構成され、光源から原稿へ照明走査した光の反射光を結像して光電変換することにより原稿の画像をR、G、B信号として読み取り、読み取った画像をA/D変換して画像処理部104に出力する。ここで、画像は、図形や写真等のイメージデータに限らず、文字や記号等のテキストデータ等も含む。画像処理部104は、スキャナ部103により読み取って得られたRGBデータや、送受信部108から送信されたRGBデータ等に対して所定の色変換処理YMCKデータ生成処理、YMCKデータのγ補正処理、中間調処理等の画像処理を施して画像形成部105に出力する。また、画像処理部104は、テストパターン生成部200を有する詳細後述。画像形成部105は、電子写真方式により、画像処理部104から出力されたYMCKの画像データに基づいて、転写紙上に画像を形成して出力する。図2に、画像形成部105の要部構成を示す。図2に示すように、画像形成部105は、Y、M、C、Kの各色のトナー像を形成する感光体ユニット50Y、50M、50C、50Kと、ローラ57の回転自在に感光体ユニット50Y、50M、50C、50Kで形成されたトナー像を転写紙に搬送する中間転写体としての中間転写ベルト56と、転写紙を搬送するレジストローラ58と、転写紙に中間転写ベルト56上に形成されたトナー像を転写する2次転写ローラ59と、転写紙にトナー像を定着させる定着ユニット60と、転写紙を排紙する排紙ローラ61とを備えて構成されている。感光体ユニット50Yは、感光体ドラム51Yと、現像器52Yと、帯電器53Yと、クリーナ54Yと、1次転写ローラ55Yとを備えて構成されている。感光体ユニット50M、50C、50Kも同様である。ここで、画像形成部105における画像形成について説明する。まず、感光体ユニット50Yにおいて、感光体ドラム51Yが回転し、その表面が帯電器53Yにより帯電され、図示しないレーザ光源などの露光手段の露光によりその帯電部分に画像処理部104から入力されたYデータの画像の潜像が形成される。そして、現像器52Yによりその潜像部分にイエローのトナー像が形成される。そのトナー像は第1転写ローラ55Yの圧接により中間転写ベルト56に転写される。トナー像は、出力対象の画像データに対応するイエローの像となる。転写されなかったトナーは、クリーナ54Yにより除去される。感光体ユニット50M,50C,50Kについても同様に、マゼンダのトナー像、シアンのトナー像、黒のトナー像がそれぞれ同様に形成及び転写される。ローラ57、1次転写ローラ55Y、55M、55C、55K、2次転写ローラ59の回転により、中間転写ベルト56も回動され、YMCKのトナー像が中間転写ベルト56上に順に重ねられて転写される。また、図示しない給紙トレイからレジストローラ58の回転により転写紙が2次転写ローラ59に搬送される。2次転写ローラ59の圧接部を転写紙が通過することにより、中間転写ベルト56上のYMCKのトナー像が転写紙に転写される。YMCKのトナー像が転写された転写紙は、定着ユニット60を通過する。定着ユニット60の加圧及び加熱により、YMCKのトナー像が転写紙上に定着されてカラー画像が形成される。画像形成された転写紙は、排紙ローラ61により、図示しない排紙トレイなどに搬送される。また、両面印刷をする場合には、片面に画像形成された転写紙が、図示しない両面搬送ユニットにより面が反転され、画像形成されていない面に再び画像形成するようにレジストローラ58により、2次転写ローラ59に搬送される。図1のセンサ106は、画像形成部105において中間転写ベルト56上に形成された階調パッチパターン画像の各パッチに光を照射し、その反射光を受光して、反射率をセンサの出力値として制御部101に出力する。制御部101は、センサの出力値に基づいて画像の色の測定を行うことができる。記憶部107は、フラッシュメモリ等により構成され、画像形成装置1の各部により用いられる各種のプログラムやデータ等を記憶する。送受信部108は、モデム、LANアダプタやルータやTATerminalAdapter等によって構成され、専用線、或いはISDN回線等の通信回線を介してネットワークNに接続された各装置との通信制御を行う。次に、テストパターン生成部200について説明する。テストパターン生成部200は、スキャナ部103により読み取って得られたRGBデータや、送受信部108から送信されたRGBデータ等に基づく画像形成とは別の、独立で1ページの画像イメージを生成する構成である。具体的には、テストパターン生成部200は、複数のパターン画像を含む画像イメージテストパターンを生成する。テストパターンは、生成された部分から逐次画像形成部105へ入力される。画像形成部105は、入力されたテストパターンに応じた画像を用紙に形成する。以下、本実施形態では、テストパターンのパターン画像として矩形画像を生成する例について説明する。図3に、テストパターン生成部200の主要構成を示す。図3に示すように、テストパターン生成部200は、走査位置カウンタ210、CPU220、RAM230、レジスタ250及びパターン生成部240を備える。図3に示すレジスタ250は、説明の便宜上、CPU220と分離して描いているが、CPU220と協働して演算装置を構成する。本実施形態の記載において、CPU220は演算装置の制御機能を示し、レジスタ250は演算装置記憶機能を示し、両者一体で演算装置として機能する。レジスタ250はI/Oボートのように、テストパターン生成部240側の描画パラメータを格納しているレジスタに直接接続されている。走査位置カウンタ210は、所定の領域例えば用紙1ページ分の生成領域における一方向主走査方向及び当該一方向に直行する他方向副走査方向に係る位置をカウントアップし、主走査方向及び副走査方向に係る値HVI、VVI、HVCNT、VVCNTを出力する。なお、主走査方向は画像形成装置1の画像形成部105による画像形成の進行方向に対応し、副走査方向は中間転写ベルト56の駆動方向及び用紙の搬送方向に対応する。つまり、画像形成部105は、用紙の幅に応じて主走査方向に沿った1ライン分の画像形成を副走査方向について繰り返すことにより画像を形成する。具体的には、走査位置カウンタ210は、HVI、VVIの入力を受けて、HVI、VVI、HVCNT、VVCNTをパターン生成部240に対して出力する。また、走査位置カウンタ210は、VVCNTをCPU220に対して出力する。HVI、VVIは、用紙に対する画像形成と同期をとるためのパラメータであり、画像形成部105の用紙搬送に係る各部の駆動制御を行う図示しない駆動制御部から入力される。HVI、VVIの入力に応じてテストパターン生成部200がテストパターンを生成することにより、用紙の搬送、テストパターンの生成及びテストパターンに応じた画像形成部105による画像形成を同期させることができる。なお、HVCNTが用紙の主走査方向の位置に係るパラメータであり、VVCNTが副走査方向の位置に係るパラメータである。HVCNTは、HVIのオン期間について主走査方向にカウントアップされるカウンタである。主走査方向に沿った1回の画像形成1ライン分の画像形成に係るHVCNTのカウントアップ回数は、用紙の大きさと所定の関係を有する。つまり、HVCNTのカウントアップ回数に応じて、主走査方向について用紙のどの位置に対して画像形成部105による画像形成が行われるのかを管理することができる。VVCNTは、VVIオン期間中HVIのオン回数を副走査方向にカウントアップされるカウンタである。副走査方向に沿った画像形成の回数ライン数は、用紙の大きさと所定の関係を有する。つまり、VVCNTのカウントアップ回数に応じて、副走査方向について用紙のどの位置に対して画像形成部105による画像形成が行われるのかを管理することができる。より具体的に言えば、HVIはH-Validの入力信号H-ValidINPUT、VVIはV-Validの入力信号V-ValidINPUTを意味し、HVI、VVIの入力が行われている期間が1ページ分の描画中における主走査方向、副走査方向の描画有効期間を示す。この両者の入力信号が在る期間オン期間において所定の時間間隔インターバルでそれぞれの入力信号を主走査方向、副走査方向に計数した値が、HVCNT、VVCNTである。CPU220は、RAM230に格納されたプログラムの内容に応じて、矩形画像を生成するための各種のパラメータをレジスタ250へ書き込む。本実施形態のCPU220は、8ビット命令を処理するマイクロプロセッサである。RAM230は、CPU220により処理されるデータプログラムを一時的に記憶する図4参照。RAM230に記憶されるデータプログラムは、テストパターン生成部200により所定の領域内に複数の矩形画像を生成するためのプログラムである。RAM230へのプログラムの書き込みは、制御部101により行われる。制御部101は、用紙に生成する矩形画像の配置、形状大きさ及び色に応じたプログラムをRAM230に書き込む。さらに、制御部101は、CPU220の起動制御をCPU220に対して実行する。CPU220は、当該起動制御に応じてRAM230の読み出し、実行処理を開始する。図4に、RAM230に記憶されるプログラムの一例を示す。本実施形態において、RAM230に記憶されるプログラムは、複数の命令と各々の命令を構成する複数のパラメータを含む。図4に示す横一列に並んだコンマ,に区切られた複数の文字列が一つの命令及びその命令を構成する複数のパラメータに対応する。各命令及びパラメータは、8ビット単位のデータである。図4では、プログラムを構成するマシン語のイメージと、当該プログラムをアセンブラ形式で記載した場合の記載例を併記している。以下の記載では、必要に応じてアセンブラ言語での記載を用いてプログラムの内容を説明する。なお、図4及び図4を用いて示す命令を処理するCPU220は、この用途に特化した専用のCPUであり、他の命令形態による処理も行うことが可能な一般的なマイコンより簡素な回路にて実現することができる。以下、プログラムの内容について、図5を参照して説明する。図5に、図4のプログラムに基づいてテストパターン生成部200により生成される1ページの生成内容を示す。図5は用紙1ページの生成内容を示し、図5の横方向が主走査方向に対応し、図5の縦方向が副走査方向に対応する。画像形成部105は、主走査方向に沿って1ラインの順次画像を形成する。そして、用紙が副走査方向に沿って搬送されることにより、次のラインの主走査方向の画像形成が行われる。横一行に示される一つの命令は、その先頭の8ビットのデータ図4の最も左に位置する4文字により、命令の種類を示す。具体的には、先頭の8ビットのデータは、Load命令、Jump命令、Wait命令又はHALT命令のいずれかに対応するデータである。図4に示す例では、0x10のデータがLoad命令を示し、0xC0のデータがJump命令を示し、0xD0のデータがWait命令を示し、0x00のデータがHALT命令を示す。Load命令は、パターン生成部240に矩形画像描画パラメータを指示する為の命令である。一つのLoad命令及びそのオペランドが、一つの矩形画像を生成させる命令として機能する。後で示すように、待ち合わせ機能も備えたLoad命令兼Wait命令であって、パターン生成部240とで、描画パラメータの更新要求および更新完了を伴う、待ち合わせ機能も受け持っている。図4、図5に示す例では、命令1のLoad命令が矩形Aの生成命令として機能し、命令2のLoad命令が矩形Bの生成命令として機能し、命令4のLoad命令が矩形Cの生成命令として機能し、命令6のLoad命令が矩形Dの生成命令として機能し、命令7のLoad命令が矩形Eの生成命令として機能する。Load命令は、そのオペランドとして、HStart、VStart、Hsize、Vsize、Colorを含む。このうち、HStart、VStart、Hsize、Vsizeは所定の領域例えば用紙1ページ分の生成領域における一方向主走査方向及び当該一方向に直行する他方向副走査方向に基づいて矩形の生成位置ならびに矩形の一方向及び他方向に沿った大きさを決定するパラメータであり、Colorは矩形の色を決定するパラメータである。HStart、VStartは、生成される矩形の始点を示す。具体的には、HStartは矩形の主走査方向における始点を示し、VStartは副走査方向における始点を示す。Hsize、Vsizeは、生成される矩形の大きさを示す。具体的には、Hsizeは、Hstartとの加算回路の出力で主走査方向における終点を示し、同様にVsizeはVstartとの加算により副走査方向の終点を示すことにより、始点と協働して矩形の大きさを定めることとなる。HStart、VStart、Hsize、Vsizeは所定の原点例えば図5に示す原点Oに対する主走査方向、副走査方向に係る位置を座標により示す。図5に示す矩形Aの場合、原点Oに対し、HStart、VStartにより決定される始点は点Pであり、Hsize、Vsizeにより決定される終点は点Qである。HStart、VStart、Hsize、Vsizeの値はそれぞれ、16ビット2バイトのデータであり、二つの8ビットのデータを組み合わせた値により構成される。そして、二つの8ビットデータは、その一方が対応する16ビットデータの上位バイトの値となり、他方が下位バイトの値となる。例えば、図4に示す命令1のHStartAの値は、プログラムに含まれるα1、α2の二つの8ビットデータにより構成される。そして、α1がHStartAの上位バイトであり、α2がHStartの下位バイトである。同様に、VStartAはα3、α4により構成され、HsizeAはα5、α6により構成され、VsizeAはα7、α8により構成される。他の矩形矩形B、C、D、Eと、その生成命令命令2、4、6、7も同様の関係を有する。Colorは矩形の色を決定する。具体的には、ColorはY、M、C、Kの各色の濃度値を8ビットの値で示す。これによって、Y、M、C、Kの各色の組み合わせにより構成される矩形の色を決定する。Colorは、四つの8ビットのデータを組み合わせた値により構成される。そして、四つの8ビットのデータはそれぞれが、Y、M、C、Kの各色の濃度値を8ビットの値で示す。例えば、図4に示す命令1のColorAの値は、プログラムに含まれるα9~α12の四つの8ビットデータにより構成される。そして、α9がYの濃度値を示し、α10がMの濃度値を示し、α11がCの濃度値を示し、α12がKの濃度値を示す。他の矩形矩形B、C、D、Eと、その生成命令命令2、4、6、7も同様の関係を有する。Jump命令は、所定の条件を満たすか否かの判定結果に基づいて次に実行する命令を分岐させる。本実施形態では、第1の条件の判定として、現在処理している副走査方向の位置と副走査方向の所定の位置との大小関係に基づいて、副走査方向の所定の位置まで生成を完了しているか否かを判定する。そして、生成を完了していない場合、遷移先として指定されたアドレスから始まる命令を行い、生成を完了している場合、当該Jump命令の次の命令を実行する。副走査方向の所定の位置及び遷移先として指定されたアドレスは、Jump命令に含まれるオペランドによって示される。具体的には、図4に示すプログラムにおいて、Jump命令を示す0xC0の直後に続く二つの8ビットデータが遷移先として指定されたアドレスを示す。また、遷移先として指定されたアドレスの直後に続く二つの8ビットデータが副走査方向の所定の位置を示す。遷移先として指定されたアドレス、副走査方向の所定の位置は16ビットの値であり、それぞれの値を構成する二つの8ビットデータの一方が上位バイトの値となり、他方が下位バイトの値となる。例えば、命令3のJump命令の場合、0xC0の直後に続く二つの8ビットデータである00,00が遷移先として指定されたアドレスLabel1を付加された命令命令1の先頭アドレスを示す。また、00,00の直後に続く二つの8ビットデータであるV1H,V1Lが副走査方向の所定の位置V1を示す。命令3のJump命令の場合、CPU220は、図5に示すV1の範囲の生成を完了したか否かについて、現在処理している副走査方向の位置VVCNTと副走査方向の所定の位置の値V1との大小関係に基づいて判定する。VVCNTの値がV1を下回る場合、CPU220は遷移先として指定されたアドレスLabel1を付加された命令命令1の先頭アドレスから始まる命令即ち命令1を読み出す。一方、VVCNTの値がV1以上である場合、CPU220は当該Jump命令命令3の次の命令命令4を読み出す。他のJump命令命令8のJump命令と、そのパラメータ0xC0,00,46,V3H,V3Lも同様の関係を有する。Jump命令の判定は、現在処理している副走査方向の位置VVCNTが変わるたびに行われる。つまり、主走査方向について1回の生成を完了するたび、Jump命令は実行される。また、Jump命令の前に複数のLoad命令が連続する場合、1回の主走査方向の生成を行うにあたり、CPU220は当該複数のLoad命令を読み出して実行する。例えば、図4に示す命令1矩形Aを生成するLoad命令、命令2矩形Bを生成するLoad命令及び命令3分岐先として命令1を指定されたJump命令を例にとって説明する。CPU220は、命令1、命令2を順次読み出して実行する。これにより、矩形A、矩形Bを生成するための複数のパラメータHStart、VStart、Hsize、Vsize、Colorが順次レジスタ250へ書き込まれる。パターン生成部240は、レジスタ250に保持されているパラメータを読み出し、当該パラメータの内容に応じた矩形画像矩形A、矩形Bを生成する。ただしパターン生成部240は、1領域分の矩形描画パラメータによる主走査方向の描画範囲の期間中は、CPU220からの後続のLoad命令による矩形描画パラメータの更新指示をうけても、主走査描画範囲の最終画素に至るまで描画パラメータを更新しない。CPU220は、先行するLoad命令による描画パラメータに、パターン生成部240が更新を済ませない間は、後続命令の実行を一時停止し、プログラムカウンタのカウントアップを止める。パターン生成部が、先行するLoad命令による描画パラメータの更新指示を受理したタイミングで、一時停止状態を解除しプログラムカウンタのカウントアップと、後続命令をフェッチする動作を開始する。この一時停止、続行を伴いながら、CPU220は、Jump命令の前に連続する複数のLoad命令を1回ずつ読み出して実行処理することで1回の主走査方向の生成に係る処理を完了する。その後、副走査方向についての条件分岐命令であるJump命令を読み出して実行し、VVCNTの値がV1より小さいか否か判定する。VVCNTの値がV1より小さい場合、CPU220は再度命令1を読み出して実行し、その後に連続するLoad命令命令2を実行し、再度命令3を実行する。この繰り返し処理は、VVCNTの値がV1以上となるまで行われる。これによって、図5に示すV1の範囲において、二つのLoad命令命令1、命令2に対応する二つの矩形矩形A、矩形Bが主走査方向に並んで生成されることとなる。図6に、パターン生成部240の構成及びデータの入出力の一例を示す。図6に示すように、パターン生成部240は、加算部301、302、減算部311、比較部321~325、セレクタSEL331、論理積判定部341、更新タイミング制御部351を備えている。なお、図6に示すように、パターン生成部240は、走査位置カウンタ210から出力されたHVCNT及びVVCNTの値や、レジスタ250に記憶されたHStart、VStart、Hsize、Vsize、Color等の各種パラメータを取得して出力SGUOUTを行う。加算部301は、HStartとHsizeとを加算した値加算値A1を減算部311及び比較部322に対して出力する。加算部302は、VStartとVsizeとを加算した値加算値A2を比較部324に対して出力する。減算部311は、加算部301によるHStartとHsizeとの加算値加算値A1から1を減算した値減算値M1比較部325に対して出力する。比較部321は、HVCNTと、HStartとを比較し、HVCNTの値がHStartの値以上HVCNT≧HStartであるか否かを示す出力を論理積判定部341に対して行う。比較部322は、HVCNTと、HStartとHsizeとの加算値加算値A1とを比較し、HVCNTの値が加算値A1未満HVCNT<A1であるか否かを示す出力を論理積判定部341に対して行う。比較部323は、VVCNTと、VStartとを比較し、VVCNTの値がVStartの値以上VVCNT≧VStartであるか否かを示す出力を論理積判定部341に対して行う。比較部324は、VVCNTと、VStartとVsizeとの加算値加算値A2とを比較し、VVCNTの値が加算値A2未満VVCNT<A2であるか否かを示す出力を論理積判定部341に対して行う。比較部325は、HVCNTと、加算部301によるHStartとHsizeとの加算値加算値A1から1を減算した値減算値M1とを比較し、HVCNTの値が減算値M1と等しいVVCNT=A2か否かを示す出力を更新タイミング制御部351に対して行う。セレクタ331は、予め設定された色の無い出力例えば、図6に示すall0又はColorの値に応じた出力のいずれかを行うSGUOUT。論理積判定部341は、比較部321~324による出力の内容を取得して、セレクタ331による出力SGUOUTを制御する。具体的には、論理積判定部341は、HVCNTの値がHStartの値以上HVCNT≧HStartであり、HVCNTの値が加算値A1未満HVCNT<A1であり、VVCNTの値がVStartの値以上VVCNT≧VStartであり、かつ、VVCNTの値が加算値A2未満VVCNT<A2である場合、Colorの値に応じた出力をセレクタ331に行わせる出力制御を行う。即ち、論理積判定部341は、HVCNTが、HStart以上かつ加算値A1未満であり、かつ、VVCNTが、VStart以上かつ加算値A2未満である場合に、セレクタ331にColorの値に応じた出力SGUOUTをさせる。ここで、HVCNTが、HStart以上かつ加算値A1未満であることは、HVCNTにより示される描画位置が、HStart及びHsizeにより示される矩形の主操作方向の範囲内であることを示す。また、VVCNTが、VStart以上かつ加算値A2未満であることは、VVCNTにより示される描画位置が、VStart及びVsizeにより示される矩形の副操作方向の範囲内であることを示す。つまり、論理積判定部341は、HVCNT及びVVCNTが共に、HStart、VStart、Hsize、Vsizeにより示される矩形の描画範囲内である場合に、セレクタ331にColorの値に応じた出力SGUOUTをさせる。これによって、矩形の色Colorに応じた矩形の描画出力が行われる。一方、論理積判定部341は、HVCNTの値がHStartの値以上HVCNT≧HStartでないか、HVCNTの値が加算値A1未満HVCNT<A1でないか、VVCNTの値がVStartの値以上VVCNT≧VStartでないか、又は、VVCNTの値が加算値A2未満VVCNT<A2でない場合、セレクタ331に、Colorを構成するY、M、C、Kの全ての色について出力を行わない例えば、図6に示すall0内容の出力SGUOUTをさせる。つまり、HVCNT及びVVCNTにより示される描画位置が、HStart、VStart、Hsize、Vsizeにより示される矩形の描画範囲内でない場合、セレクタ331に空出力をさせる。これによって、HVCNT及びVVCNTが共に、HStart、VStart、Hsize、Vsizeにより示される矩形の描画範囲内である間のみ、矩形の色Colorに応じた矩形の描画出力が行われる。更新タイミング制御部351は、比較部325からの出力と、レジスタ250の更新フラグFLAGUPDATEの値に基づいて、パターン生成部240に保持されたHStart、VStart、Hsize、Vsize及びColorの値を更新させる制御を行う。その詳細は後述するが、更新タイミング制御部351は、例えば、各LOAD命令に応じたHStart、VStart、Hsize、Vsize及びColorの値の切替制御を行う。つまり、更新タイミング制御部351により各LOAD命令に応じたHStart、VStart、Hsize、Vsize及びColorの値の切替制御が行われることで、一のパターン画像例えば、矩形画像を生成するパターン生成部240は、複数のLOAD命令に応じた複数のパターン画像を切り替えながら生成することができる。このように1矩形領域の描画パラメータによって1描画領域を描画するに足りるだけの回路規模のパターン生成部240においても、その描画パラメータを、外部より、更新させる機能と、変更指示を受け付ける機能を備えることにより、複数領域のパターンを描くことができる。副走査方向で所定位置に到達するまでの期間、ループさせる条件分岐命令と、待合わせ機能を持たせたLOAD命令とによる簡易なプログラムで、複数領域のパターンを描くことができる。パターン生成部240は、主走査方向の矩形終端で、一度に複数バイト分の情報からなる描画パラメータを一度に更新する機能をもつことで矩形描画領域が隣接する場合においても、遅滞なく描画パラメータの更新が行われる。パターン生成部が矩形描画中にプログラムが実行されることと、その描画パラメータを、CPU側が控えておくこととにより、描画パラメータを一度に更新できることから、ことさら描画範囲について隙間を設けたりする必要がなくなり描画パラメータ全部を転送するプログラム実行時間に関るタイムラグを気にせずに済む点でCPU側のプログラミングの負担も軽くなる。その後、VVCNTの値がV1以上となった場合、CPU220は命令4を読み出して実行する。これによって、V1より後の領域において、命令4に対応する矩形Cの生成が行われる。上記は、命令1~3のLoad命令及びJump命令について例示しているが、命令6~8ののLoad命令及びJump命令についても同様である。なお、Load命令に含まれる矩形を生成するための複数のパラメータHStart、VStart、Hsize、Vsize、Colorに対応する主走査位置及び副走査位置に至らない間も、パターン生成部240は命令1、命令2に応じたパラメータの読み出しを逐次行うが、この間、パターン生成部240は矩形画像の生成を行わない。つまり、矩形のパラメータHStart、VStart、Hsize、Vsize、Colorに対応しない範囲、すなわち、主走査方向には描画範囲にあっても、副走査位置が描画範囲にない場合では空ループ処理となる。また、図4では、Jump命令の前に連続するLoad命令の数が二つであるため、図5において主走査方向に並んでいる矩形の数も二つであるが、Load命令の数即ち主走査方向に並べて生成する矩形の数は三つ以上にすることもできる。また、ここで、示すように、矩形A矩形C矩形Dは各色の出力濃度値を等しい矩形として、プログラム上では、副走査範囲を等しくして複数の矩形を主走査方向に並べて描画しつつ、見た目上は、他と副走査サイズの異なる大きさの1個の矩形として描くことができる。これにより、任意サイズの矩形領域を、任意の配置においた図形も、副走査方向に細分することにより、副走査幅の等しい矩形を、主走査方向に任意個、並べた配置として表現できることとなり、結果的に、任意の寸法の矩形を任意の位置に配置して描画することができる。矩形に分割することができれば、L字型や凸凹状の図形も描くことができる。プログラム規模が増大してしまうが、三角形を描くことをも、副走査1ライン毎に、主走査方向の幅を変化させることで可能となる。例えばnライン目の副走査位置では、高さ:1ライン×主走査幅n画素の矩形の並びとしてLoad命令を並べることにより、三角形を描画するプログラムを記述することもできる。Wait命令は、所定の条件を満たすか否かの判定結果に基づいて当該Wait命令の次の命令へ移行するか否か分岐させる。本実施形態では、第1の条件の判定として、現在処理している副走査方向の位置と副走査方向の所定の位置との大小関係に基づいて、副走査方向の所定の位置まで生成を完了しているか否かを判定する。そして、生成を完了していない場合、当該Wait命令の次の命令へ移行せず待機し、生成を完了している場合、当該Wait命令の次の命令へ移行する。副走査方向の所定の位置は、Wait命令に含まれるパラメータによって示される。具体的には、図4に示すプログラムにおいて、Wait命令を示す0xD0の直後に続く二つの8ビットデータが副走査方向の所定の位置を示す。副走査方向の所定の位置は16ビットの値であり、それぞれの値を構成する二つの8ビットデータの一方が副走査方向の所定の位置の上位バイトの値となり、他方が下位バイトの値となる。例えば、命令5のWait命令の場合、0xD0の直後に続く二つの8ビットデータであるV2H,V2Lが副走査方向の所定の位置V2を示す。命令5のWait命令の場合、CPU220は、図5に示すV2の範囲の生成を完了したか否かについて、現在処理している副走査方向の位置VVCNTと副走査方向の所定の位置の値V2との大小関係に基づいて判定する。VVCNTの値がV2を下回る場合、CPU220は当該Wait命令命令5の次の命令命令6へ移行せず待機し、VVCNTの値がV2以上である場合、次の命令を読み出す。Wait命令による待機中は、CPU220は後続のプログラムを実行しない。図4、図5に示す例の場合、VVCNTの値がV1以上かつV2より小さい間、パターン生成部240により命令4による生成が継続され、命令4に対応する矩形Cの生成が行われる。HALT命令は、プログラムの実行を停止させる。HALT命令を読み込んだCPU220は、その後、制御部101から新たな命令を受けるまでRAM230に対するアクセスを行わない。HALT命令によるプログラムの実行停止中は、CPU220の処理及びパターン生成部240による生成処理は行われない。復帰は制御部からの指示による。パターン生成部240は、レジスタ250に保持されているパラメータを読み出し、当該パラメータの内容に応じた矩形画像を生成する。具体的には、パターン生成部240は、走査位置カウンタ210から入力される主走査方向及び副走査方向に係る各種の値HVI、VVI、HVCNT、VVCNTと、レジスタ250に書き込まれた複数のパラメータHStart、VStart、Hsize、Vsize、Colorとに基づいて、単一の描画範囲の矩形を描画するための出力SGUOUTを行うテストパターン信号発生回路SignalGeneratorUnit:SGUである。ここで、パターン生成部240は、単一の描画範囲のパターン画像を生成する回路である。また、所定の領域内に複数の矩形を描画するためのプログラムを記憶するRAM230と、RAM230に格納されたプログラムに含まれるLoad命令に基づいてレジスタ250に矩形を描画するための複数のパラメータHStart、VStart、Hsize、Vsize、Colorを書き込むCPU220とは協働により、パターン生成部240にパターン画像を生成させる命令を実行する。また、RAM230は、複数のLoad命令を含むプログラムを記憶することで、複数回の矩形生成を行うためのデータを記憶する。また、CPU220は、RAM230に記憶されたデータプログラムに基づいて矩形を生成するための命令を構成するパラメータHStart、VStart、Hsize、Vsize、Colorを生成する。また、パターン生成部240は、レジスタ250に保持されているパラメータの読み出しを完了した後、レジスタ250の更新フラグFLAGUPDATEの値を変更する。更新フラグFLAGUPDATEに係る処理については後述する。レジスタ250は、CPU220により書き込まれる各種のパラメータを書き換え可能に記憶、保持する。CPUに付属する専用の値を格納するレジスタ群である。図3に示すように、レジスタ250は、矩形生成パラメータ格納領域251、アドレス格納領域252、プログラムカウンタ増分格納領域253、遷移状態格納領域254、更新フラグFLAGUPDATE格納領域255、戻り番地格納領域256、副走査方向待ち位置格納領域257等を有する。CPU220やパターン生成部240が矩形生成パラメータ、ADDRESS、PCINC、CPUSTATUS、VVWAIT、JMPADRの値を設定、変更する処理を行った場合、その処理後の値はそれぞれのパラメータに対応するレジスタ250の格納領域に保持される。矩形生成パラメータ格納領域251は、矩形画像を構成するための複数のパラメータHStart、VStart、Hsize、Vsize、Colorを格納する。ここで、矩形生成パラメータ格納領域251は、CPU220により生成されたパラメータHStart、VStart、Hsize、Vsize、Colorを記憶する。本実施形態の矩形生成パラメータ格納領域251は、単一の描画範囲の矩形画像を構成するためのパラメータを格納し、既に複数のパラメータHStart、VStart、Hsize、Vsize、Colorを格納している矩形生成パラメータ格納領域251に対してさらにCPU220によりこれらのパラメータの格納が行われた場合、パラメータが上書きされて更新されることとなる。アドレス格納領域252は、CPU220により読み出されるプログラムのRAM230におけるメモリアドレスADDRESSを格納するプログラムカウンタである。。ADDRESSの初期値は0又は制御部101によるCPU210の起動処理に伴い設定される所定の値である。プログラムカウンタの増分格納領域253は、プログラムカウンタを意味するアドレス格納領域252の値の加算値を格納する。PCINCの値は、通常の場合1の値を取り、CPU220がプログラム続行を休止または復帰した場合に変更後の値0又は1を取る。CPU220は、PCINCの値に応じたADDRESSのカウントアップを行う。遷移状態格納領域254は、CPU220の状態を示すパラメータを格納する。図7に、CPUSTATUSの状態遷移パターンの一例を示す。CPUSTATUSに格納されるCPU220の状態として、上述のプログラムの各種命令の実行状態LOAD、JUMP、WAIT、HALTがある。また、これらの命令に対応する実行状態の他に、CPUSTATUSに格納されるCPU220の状態として、RESET、FETCH、ERRORがある。RESETは、初期化状態を示す。制御部101から起動命令を受ける前のCPU220の状態は、RESETである。制御部から起動の指示を受けると、CPUSTATUSは、RESETからR1を経て、ここでR1ではPCINC1となり、その後FETCHとなる。FETCHは、その後に別の命令に対応する状態へ遷移することを示す。ERRORは、他のいずれの状態でもなく、プログラムに規定された状態でもないエラー状態であることを示す。HALT又はERRORとなった後は、制御部101からの処理によりCPUSTATUSがRESETとなる。また、上述のプログラムの各種命令の実行状態のうち、Load命令、Jump命令、Wait命令に対応する状態は、各命令に含まれる処理内容に応じて細分化された状態を示す。具体的には、Load命令に含まれる状態として、LOAD及びL1~L13の計14種類の状態がある。また、Jump命令に含まれる状態として、JUMP及びJ1~J4の計5種類の状態がある。また、Wait命令に含まれる状態として、WAIT、W1及びW2の計3種類の状態がある。図7に示すように、各命令に対応する状態は、その命令の内容を示す状態の後、番号順に遷移する。例えば、Load命令に対応する状態の場合、LOAD、L1、L2...の順でCPUSTATUSが遷移し、L13まで遷移した後、FETCHへ遷移する。Jump命令、Wait命令についても同様である。各命令に対応する状態の遷移は、CPU220が処理している内容の遷移に対応する。以下、図8を用いて、レジスタ250に格納される各種のパラメータと、CPU220の処理内容との対応関係について説明する。まず、制御部101からRAM230へプログラムが書き込まれ、起動の指示がCPU220へ入力される。これにより図8に示す負論理のリセット信号に相当するCPUCONTROLが立ち上がり、CPU220が処理を開始することとなる。また、この後、PCINCの値に応じてADDRESSの値がカウントアップされる。起動後、CPU220は、RAM230の先頭アドレス0を読み出し、読み出した内容に応じた処理を行う。例えば、図4に示すプログラムの場合、先頭アドレスにはLoad命令を示す0x10が書き込まれているので、当該0x10を読み出すことにより、CPU220は、以降の処理としてLoad命令を実行する。具体的には、CPU220は、RAM230のその後のアドレスに書き込まれているα1~α12の値に基づいて単一の描画範囲の矩形画像を構成するための複数のパラメータHStart、VStart、Hsize、Vsize、Colorを決定し、レジスタ250の矩形生成パラメータ格納領域251へ書き込む処理を行う。以降、CPU220は、ADDRESSの値に基づいてRAM230のアドレスを指定し、指定したアドレスに書き込まれているプログラムの内容を読み出す。そして、読み出した内容に応じた値を、レジスタ250へ格納する。ここで、CPU220は、ADDRESSの値に基づいてRAM230のアドレスを指定する処理順序を経ることから、図8に示すように、ADDRESSの値と、CPU220によるRAM230の読み出しタイミングとは1クロック分のずれを生じる。また、CPU220は、RAM230からプログラムを読み出した、その内容に応じた値をレジスタ250へ格納する処理順序を経ることから、CPU220によるRAM230の読み出しタイミングと、当該内容に対応する値のレジスタ250の格納のタイミングとは1クロック分のずれを生じる。図4に示すプログラム及び図8の例示に基づいて説明をすると、ADDRESSの値が0である1クロック後、CPU220がADDRESSの値に対応するRAM230のアドレス0000の内容である0x10を読み出し、Load命令を開始する。ここで、CPU220は、レジスタ250の遷移状態格納領域254にLOADを示す値を格納する。図8では図示しないが、CPU220が0x10を読み出したクロックの1クロック後、CPUSTATUSにLOADを示す値が格納される。また、ADDRESSの値が1となった1クロック後の時点でCPUSTATUSはLOADである。このとき、CPU220がADDRESSの値に対応するRAM230のアドレス0001の内容であるα1を読み出し、HStartの上位バイトの値とてレジスタ250の矩形生成パラメータ格納領域251へ格納する。また、CPU220は、CPUSTATUSをL1とする。CPU220がα1を読み出したクロックの1クロック後、α1の値がHStartの上位バイトの値としてレジスタ250の矩形生成パラメータ格納領域251に格納されると共に、CPUSTATUSにL1を示す値が格納される。以降、同様に、ADDRESSの値と、CPU220の読み出し処理と、レジスタ250への書き込み処理と、はそれぞれ1クロックずつずれて進行する。以下、Load命令中のCPU220の処理について記載する。ここでは、命令1のLoad命令に含まれるα1~α12を例として記載するが、他のLoad命令でも同様である。CPU220は、プログラムカウンタであるADDRESSの値に応じて順次読み出すRAM230のアドレスを進める。CPUSTATUSがL1であるとき、CPU220がα2を読み出してHStartの下位バイトの値として記憶し、CPUSTATUSをL2とする。CPUSTATUSがL2であるとき、CPU220がα3を読み出してVStartの上位バイトの値として記憶、CPUSTATUSをL3とする。CPUSTATUSがL3であるとき、CPU220がα4を読み出してVStartの下位バイトの値として記憶し、CPUSTATUSをL4とする。CPUSTATUSがL4であるとき、CPU220がα5を読み出してHsizeの上位バイトの値として記憶し、CPUSTATUSをL5とする。CPUSTATUSがL5であるとき、CPU220がα6を読み出してHsizeの下位バイトの値として記憶し、CPUSTATUSをL6とする。CPUSTATUSがL6であるとき、CPU220がα7を読み出してVsizeの上位バイトの値として記憶し、CPUSTATUSをL7とする。CPUSTATUSがL7であるとき、CPU220がα8を読み出してVsizeの下位バイトの値として記憶し、CPUSTATUSをL8とする。CPUSTATUSがL8であるとき、CPU220がα9を読み出してColorに含まれるYの濃度値として記憶し、CPUSTATUSをL9とする。CPUSTATUSがL9であるとき、CPU220がα10を読み出してColorに含まれるMの濃度値として記憶し、CPUSTATUSをL10とする。CPUSTATUSがL10であるとき、CPU220がα11を読み出してColorに含まれるCの濃度値として記憶し、CPUSTATUSをL11とする。さらに、このとき、CPU220は、プログラムカウンタ増分格納領域253の値を0に設定する。これによって、その1クロック後にPCINCの値が0となる。つまり、それまでADDRESSに加算されていたPCINCの値1が0になることによってADDRESSの値が変化しなくなり、ADDRESSの値によるカウントアップが一時停止する。これは1クロック後に起こる。CPUSTATUSがL11であるとき、CPU220がα12を読み出してColorに含まれるKの濃度値として記憶し、CPUSTATUSをL12とする。さらに、このとき、CPU220は、レジスタ250の更新フラグFLAGUPDATE格納領域255に1をセットする。更新フラグFLAGUPDATE格納領域255は、更新フラグFLAGUPDATEを格納する。FLAGUPDATEは、CPU220がパターン生成部240に対してレジスタ250の矩形生成パラメータ格納領域251の読み出しを要求することを示す値であると共に、パターン生成部240が矩形生成パラメータ格納領域251に保持されているパラメータの読み出しを完了したか否かを示すためのフラグである。FLAGUPDATEの値は、所定の二値例えば1又は0を取る。本実施形態では、FLAGUPDATEの値が二値の一方の値例えば1である場合、CPU220がレジスタ250の矩形生成パラメータ格納領域251に、一つのLoad命令に対応する、一つの矩形を構成する複数のパラメータHStart、VStart、Hsize、Vsize、Colorの格納処理を完了し、パターン生成部240に対してレジスタ250の矩形生成パラメータ格納領域251の読み出しを要求していることを示す。また、FLAGUPDATEの値が二値の他方の値例えば0である場合、その時点ではCPU220が矩形生成パラメータ格納領域251の読み出しを要求していないことを示す。本実施形態では、FLAGUPDATEの初期値は0である。パターン生成部240は、矩形の生成を開始していない場合又は直前に読み出した矩形の生成の一主走査分の描画完了の最終画素に達した場合であって、FLAGUPDATEの値が1である場合、レジスタ250の矩形生成パラメータ格納領域251から一つの矩形を構成する複数のパラメータHStart、VStart、Hsize、Vsize、Colorを読み出す。この読み出しは、パターン生成部の描画パラメータを納めたレジスタ群を構成するフリップフロップに対して、画像生成パラメータ格納領域251からの出力を入力値として、フリップフロップの出力値を更新させるトリガを与えることにより1クロックで実現される。後に示すように、矩形描画領域が隣接する場合においても、これにより1画素の遅滞なく、描画パラメータの更新が行われ、主走査方向に隣接する後続のパターン画像を描画することができる。一つの矩形を構成する複数のパラメータHStart、VStart、Hsize、Vsize、Colorの読み出しを完了すると、走査位置カウンタ210から入力された走査位置に基づいて、読み出した矩形の走査位置に係るパラメータHStart、VStart、Hsize、Vsizeに対応する位置で当該矩形の色Colorを有する矩形画像を生成する。これによって、単一の描画範囲のLoad命令に応じた矩形画像が用紙に生成される。また、パターン生成部240は、一つの矩形を構成する複数のパラメータHStart、VStart、Hsize、Vsize、Colorの更新を完了すると、FLAGUPDATEの値を0とする。つまり、パターン生成部240は、レジスタ250の矩形生成パラメータ格納領域251に格納された新たな命令に対応する矩形のパラメータの読み出しを完了した後、CPU220により1を設定されたFLAGUPDATEの値を元の値に戻す。その後、再度Load命令の読み出しに伴いFLAGUPDATEの値が1となると、パターン生成部240は、その直前に読み出したパラメータに対応する矩形の一主走査分の画像生成を完了する時点で、再度、矩形生成パラメータ格納領域251から一つの矩形を構成する複数のパラメータHStart、VStart、Hsize、Vsize、Colorを読み出し、読み出したパラメータに対応する矩形の生成を行う。これによって、複数のLoad命令に対応する複数の種類の矩形画像が生成される。ここで、FLAGUPDATEの値に応じた一つの矩形を構成する複数のパラメータHStart、VStart、Hsize、Vsize、Colorの更新の制御について、図6を用いて説明する。パターン生成部240の更新タイミング制御部351は、比較部325からの出力と、レジスタ250の更新フラグFLAGUPDATEの値に基づいて、パターン生成部240に保持されたHStart、VStart、Hsize、Vsize及びColorの値を更新させる制御を行う。具体的には、比較部325により、HVCNTの値が加算部301によるHStartとHsizeとの加算値加算値A1から1を減算した値減算値M1と等しいVVCNT=A2ことを示す出力がなされ、かつ、FLAGUPDATEの値が1である場合、更新タイミング制御部351は、パターン生成部240に保持されたHStart、VStart、Hsize、Vsize及びColorの値を、そのときレジスタ250の矩形生成パラメータ格納領域251に格納された新たな命令に対応する矩形のパラメータHStart、VStart、Hsize、Vsize及びColorにより更新させ図6のREADTIMING、その後、FLAGUPDATEの値を0とする図6のRESET。ここで、HVCNTの値が加算部301によるHStartとHsizeとの加算値加算値A1から1を減算した値減算値M1と等しいことは、主操作方向について、そのときパターン生成部240に保持されたHStart、VStart、Hsize、Vsize及びColorの値に応じたパターン画像の描画が終了する1クロック前であることを示す。この時点でFLAGUPDATEの値が1である即ち次のパターン画像の生成命令が控えていることが示されている場合、更新タイミング制御部351は、次のパターン画像を生成するための矩形のパラメータHStart、VStart、Hsize、Vsize及びColorをパターン生成部240に取得させる制御を行う。そして、FLAGUPDATEの値を0とすることにより、CPU220の処理の一時停止を解除させる。これによって、その1クロック後、即ちHVCNTの値が加算部301によるHStartとHsizeとの加算値加算値A1と等しくなるタイミングで、パターン生成部240は、次のパターン画像を生成するための矩形のパラメータHStart、VStart、Hsize、Vsize及びColorの取得を完了することができる。そしてその後、パターン生成部240は、取得されたパラメータに応じたパターン画像の生成を行うことができる。このように、CPU220は、パターン生成部240に格納されている単一の描画範囲のパターン画像の生成に対応する描画パラメータを、別のパターン画像の生成に対応する描画パラメータと切り替えるためのフラグ値FLAGUPDATEの1の値を設定する。また、更新フラグ格納領域255は、フラグ値FLAGUPDATEを記憶する。また、パターン生成部240は、読出しを完了した描画パラメータに基く一主走査分の最終画素描画位置でフラグ値FLAGUPDATEをリセットする。そして、CPU220は、フラグ値FLAGUPDATEのリセットが入るたびにCPU220自身に後続の命令を続行させる。CPUSTATUSがL12であるとき、CPU220は、FLAGUPDATEの値が0になるまで待機する。このとき、上述のように、PCINCの値は0であるので、図8に示すように、ADDRESSの値のカウントアップは停止している。FLAGUPDATEの値が0になると、CPU220は、PCINCの値を1に戻し、CPUSTATUSをL13とする。つまり、CPU220は、FLAGUPDATEの値を1に設定してパターン生成部240に命令の更新要求即ち複数のパラメータHStart、VStart、Hsize、Vsize、Colorの更新の要求をした後、パターン生成部240が更新された複数のパラメータHStart、VStart、Hsize、Vsize、Colorの読み出しを完了してFLAGUPDATEの値を0に戻すまで、以後の処理を行わずに待機する。CPUSTATUSがL13であるとき、CPU220は、CPUSTATUSをFETCHとする。なお、CPUSTATUSがL12となったとき、PCINCの値は1に戻るが、PCINCの値が1に戻ったことによるADDRESSのカウントアップ再開はさらにその1クロック後となる。CPUSTATUSがFETCHであるとき、CPU220は、ADDRESSの値に応じて新たな命令を読み出す。例えば、図4に示す命令1のLoad命令の読み出しを完了した後に迎えたFETCHの場合、図8に示すように、カウントアップが再開されたADDRESSの値14に応じたRAM230のアドレス0014の内容を読み出す。これによって、命令2のLoad命令の先頭0x10が読み出されるので、CPU220は、命令2のLoad命令を開始する。以後、上述の命令1のLoad命令と同様の処理が繰り返される。図4に示す命令1のLoad命令の読み出しを完了した後に迎えたFETCHの場合、その後に読み出されるRAM230の内容は命令3のJump命令の先頭0xC0であるので、CPU220は、CPUSTATUSをJUMPとし、命令3のJump命令を開始する。CPUSTATUSがJUMPであるとき、CPU220がRAM230における0xC0の直後のアドレスの値例えば命令3の0xC0の直後の00を読み出してレジスタ250の戻り番地格納領域256の値の上位バイトとして格納し、CPUSTATUSをJ1とする。CPUSTATUSがJ1であるとき、CPU220がRAM230における0xC0の2つ後のアドレスの値例えば命令3の0xC0の2つ後の00を読み出してJMPADRの下位バイトとして格納し、CPUSTATUSをJ2とする。戻り番地格納領域256は、戻り番地を格納する。JUMPADRは、Jump命令における遷移先として指定されたアドレスを示す。CPUSTATUSがJ2であるとき、CPU220がRAM230における0xC0の3つ後のアドレスの値例えば命令3の0xC0の3つ後のV1Hを読み出してレジスタ250の副走査方向待ち位置格納領域257の値の上位バイトとして格納し、CPUSTATUSをJ3とする。副走査方向待ち位置格納領域257は、副走査方向待ち位置を格納する。VVWAITは、副走査方向の所定の位置を示す。CPUSTATUSがJ3であるとき、CPU220は、RAM230における0xC0の4つ後のアドレスの値例えば命令3の0xC0の4つ後のV1Lを読み出して先に格納されたVVWAITの上位バイトと合わせて副走査方向待ち位置を特定し、走査位置カウンタ210から入力された副走査方向の位置を示す値と比較する。VVCNTの値がVVWAITの値を下回る場合、CPU220はJMPADRに格納された値をADDRESSに設定し、CPUSTATUSをJ4とする。一方、VVCNTの値がVVWAITの値以上である場合、CPU220は、ADDRESSの値を変更する処理を行わずにCPUSTATUSをJ4とする。CPUSTATUSがJ4であるとき、CPU220が、CPUSTATUSをFETCHとする。Jump命令の完了によりCPUSTATUSがFETCHとなったとき、上述と同様、CPU220は、ADDRESSの値に応じて新たな命令を読み出す。例えば、図4の命令3のJump命令の場合、JMPADRに0000即ち命令1の先頭アドレスが設定される。また、VVWAITにV1H、V1Lによって構成される値V1が設定される。そして、CPU220は、走査位置カウンタ210から入力されたVVCNTの値即ち現在処理している副走査方向の位置と、VVWAITの値V1とを比較し、VVCNTの値がVVWAITの値V1を下回る場合、CPU220はJMPADRに格納された値0000をADDRESSに設定する。よって、VVCNTの値がVVWAITの値V1を下回る間、CPU220は命令3のJump命令の完了後、命令1のLoad命令を再度読み出す。つまり、VVCNTの値がVVWAITの値V1を下回る間、命令1、命令2、命令3、命令1...のように、命令1~3の処理がループする。図9を用いて、Jump命令による命令のループについて説明する。なお、図9及び後述する図10において、HVは画像生成画像形成の方向が主操作方向に沿って進行しているか副走査方向に沿って進行しているかを示す。HVのシグナルが立ち上がっているときは主走査方向に沿って画像生成画像形成が進行し、立ち下がっているときは副走査方向に沿って画像生成画像形成が進行即ち主走査方向に沿った1ラインの画像生成画像形成が終了してラインが切り替わっていることを示す。CPU220は、VVCNTの値がVVWAITの値V1の値以上となるまで、命令1~3の処理を繰り返す。これによって、副走査方向についてV1の位置までの生成を完了するまで、更新フラグFLAGUPDATEが0になるたびに命令1のLoad命令に対応する矩形矩形Aの複数のパラメータと命令2のLoad命令に対応する矩形矩形Bの複数のパラメータとが交互にレジスタ250の矩形生成パラメータ格納領域251に格納される。そして、更新フラグFLAGUPDATEが1になり、かつ、直前に読み出したパラメータに対応する矩形の生成を完了するたびに、パターン生成部240が矩形生成パラメータ格納領域251を読み出して、読み出したパラメータに対応する矩形を生成する。これによって、1回の主走査方向について、複数のLoad命令命令1、命令2に対応する複数の矩形矩形A、矩形Bの生成が行われる。このように、CPU220は、RAM230に格納されたプログラムの内容に応じて、主走査方向について複数の矩形画像例えば矩形A、矩形B等を生成させる場合、所定の領域内における主操作方向に沿った画像生成を一回行う間に、複数の矩形画像の各々を生成させる命令命令1、命令2を切り替えて実行する。ここで、図9に示すように、パターン生成部240が矩形Aを描画している間にCPU220は命令2を実行して矩形Bのパラメータを矩形生成パラメータ格納領域251に格納し、パターン生成部240が矩形Bを描画している間にCPU220は命令1を実行して矩形Aのパラメータを矩形生成パラメータ格納領域251に格納することを繰り返す。つまり、CPU220は、パターン生成部240が次に描画する矩形画像の命令を実行する処理を繰り返す。また、CPU220は、所定の領域例えば用紙1ページ内に対する複数の矩形画像の生成の開始から終了までの間に、パターン生成部240に単一の描画範囲の矩形画像を生成させる命令としての矩形生成パラメータ格納領域251に対する複数のパラメータHStart、VStart、Hsize、Vsize、Colorの格納及び更新フラグFLAGUPDATEの設定を複数回行う。例えば、矩形Aの生成を完了するための複数ラインに渡る処理中において、CPU220は、矩形Bに対応する命令2及びJump命令である命令3を挟んで、矩形Aに対応する命令1の実行を複数回行っている。矩形Bに対応する命令2、矩形Dに対応する命令7、矩形Eに対応する命令8についても同様である。その後、VVCNTの値がVVWAITの値V1の値以上となると、ADDRESSの値はJump命令で指示する分岐先には更新されず、PCINCの値に基く通常のADDRESSのカウントアップに応じ、CPU220は命令4の先頭アドレスを読み出すこととなる。命令4のLoad命令の処理は、上述したLoad命令の処理と同様である。命令4のLoad命令の完了によりCPUSTATUSがFETCHとなったとき、上述と同様、CPU220は、ADDRESSの値に応じて新たな命令を読み出す。CPU220は、0xD0を読み出し、命令5のWait命令を開始する。ここで、CPU220は、レジスタ250の遷移状態格納領域254にWAITを示す値を格納する。CPUSTATUSがWAITであるとき、CPU220がRAM230における0xC0の直後のアドレスの値例えば命令5の0xD0の直後のV2Hを読み出してレジスタ250の副走査方向待ち位置格納領域257の値の上位バイトとして格納し、CPUSTATUSをW1とする。CPUSTATUSがW1であるとき、CPU220は、RAM230における0xC0の2つ後のアドレスの値例えば命令5の0xD0の2つ後のV2Lを読み出して先に格納されたVVWAITの上位バイトと合わせて副走査方向待ち位置を特定し、走査位置カウンタ210から入力された副走査方向の位置を示す値と比較する。VVCNTの値がVVWAITの値を下回る場合、PCINCの値を0に設定し、CPUSTATUSをW2とする。CPUSTATUSがW2であるとき、VVCNTの値とVVWAITの値とを比較し、VVCNTの値がVVWAITの値を下回る間、待機する。一方、CPUSTATUSがW1又はW2であって、VVCNTの値がVVWAITの値以上である場合、CPU220は、CPUSTATUSをFETCHとする。つまり、Wait命令の実行後、VVCNTの値がVVWAITの値以上となるまで、CPU220はレジスタ250の矩形生成パラメータ格納領域251に対するパラメータの更新が行われない。このため、図10に示すように、命令5のWait命令の直前のLoad命令である命令4に対応する矩形矩形Cの生成が継続される。VVCNTの値がVVWAITの値以上となってWait命令が完了し、CPUSTATUSがFETCHとなったとき、上述と同様、CPU220は、ADDRESSの値に応じて新たな命令を読み出す。図4に示すプログラムの場合、命令5のWait命令の完了後、命令6~8に含まれる2つのLoad命令及びJump命令によるループ処理が行われて矩形D、矩形Eが生成された後、命令9のHALT命令に致ることにより1ページの生成処理が終了する。命令6~命令8に含まれる2つのLoad命令及びJump命令によるループ処理は、上述の命令1~3のループ処理と同様である。ここで、矩形A及び矩形Bと、矩形Cと、矩形D及び矩形Eとは、それぞれ、副操作方向に沿って生成された複数の矩形画像となっている。副走査方向に沿って生成される複数の矩形画像は、矩形A、矩形C、矩形Dのように連続させることもできるし、矩形Bと矩形Eのように個別の矩形画像とすることもできる。また、矩形Cの生成の間の処理のように、複数の矩形画像を生成する処理中に、副走査方向の一部又は全部について、主走査方向について単一の描画範囲の矩形画像のみが存在する範囲を設けることもできる。このように、CPU220は、RAM230に格納されたプログラムの内容に応じて、副走査方向について複数の矩形画像を生成させる場合、所定の領域内における主走査方向に沿った複数の矩形画像の各々を生成させる命令を主走査方向で反復実行するプログラムを1組とし、副走査方向での複数画像分だけ、複数組実行する。なお、上述の記載では図4のプログラムの内容に基づいて各種の命令及びその処理の流れについて説明しているが、RAM230に書き込まれるプログラムのLoad命令、Jamp命令、Wait命令等の組み合わせ方及びそのパラメータの具体的内容は任意に決定することができる。以上、本実施形態の画像形成装置1によれば、テストパターン生成部200のCPU220が、所定の領域例えば用紙1ページ内に対する複数の矩形画像の生成の開始から終了までの間に、パターン生成部240に単一領域での矩形画像を生成させる命令の実行を複数回行う。つまり、CPU220は、プログラムの内容に応じて、単一の矩形画像を生成する描画パラメータを伝達するLoad命令を複数回繰り返して実行することにより、パターン生成部240に複数の矩形画像を生成させることができる。さらに、パターン生成部240は、単一の矩形画像を生成する機能と、矩形描画パラメータを更新できる機能があれば足りる回路で、CPU220によるプログラム処理の内容も簡易な命令の組み合わせで十分であり、レジスタ250に求められる記憶容量も小さく収めることができるので、より廉価に所定の領域内に任意の数のパターン画像を生成することができる。さらに、CPU220は、プログラムの内容に応じて、1回の主走査方向に沿った矩形画像の生成において、複数の矩形画像を生成する場合に、矩形画像の数に応じた描画パラメータをパターン生成部240に複数回伝達することで主走査方向について、任意の数の矩形画像を形成することができる。この描画パラメータの更新が、主走査での1矩形描画終了毎に行われる機構と、それまでCPU側の後続のLoad命令実行を一時停止させる機構を伴うことにより、ここでのプログラムは実際の主走査の画像形成タイミングを意識することのない簡潔で平易な記述ができる。この待ち合わせ機構なしに、CPUが直接的に、主走査方向の計数をしながら画像形成途中に描画パラメータの更新を実時間処理で行うようなプログラミングをするのは甚だ困難であり、もし実現できても著しく難解なプログラムとなろう。さらに、CPU220は、プログラムの内容に応じて、副走査方向について複数の矩形画像を生成する場合に、副走査方向に沿った矩形画像の描画単位で、プログラムを切り替えてパターン生成部240に矩形画像を生成させることで、副走査方向について、任意の数の矩形画像を形成することができる。さらに、CPU220は、更新フラグFLAGUPDATEの値の値を設定することによりパターン生成部240に対してパラメータの更新要求を行い、パターン生成部240はパラメータの更新完了時に更新フラグの値を戻すことにより更新完了を通知する。この単純な値の設定、更新により、CPU220とパターン生成部240とで命令実行停止タイミングを制御することができて、プログラム構成も単純になる。また、図6に示すように単一の矩形描画領域でだけテストパターン画像を描ける回路であっても、その回路に納められている描画領域の情報を、画像形成中に逐次更新させていく回路を図3のように付加することにより、任意個数の描画領域でテストパターンが描けることと、その描画領域の情報の更新のタイミングを制御する機能を備えることで、付加回路側に設けたソフトウェア手段についてもプログラミングが容易になる。さらに、本実施形態のCPU220は、Load命令、Jump命令、Wait命令、HALT命令等の単純な命令を含むプログラムに基づいてパターン生成部240に矩形画像を生成させる仕組みである。上で示したように、この4種類に限られた命令実行に要する状態遷移に基く制御内容を実現する順序回路をハードウェア記述言語により記述することで、市販の汎用マイコンなどよりも遥かに小さい回路規模で、このCPUを構築することができる。この事は画像生成装置内の画像形成の回路上のFPGAやASIC等の同一チップ内に、容易に組み込むことが可能となり、これらの画像形成と同期したクロックでCPUを駆動することができる。これにより、1ページ描画中でのパターン生成回路のレジスタ書換えを実時間で制御することが、この専用CPUにて可能となる。そして、これらの命令は最長でも13バイトである。よって、読み出しやレジスタ250に値を格納する処理に伴う遅延を含めても、単一のLoad命令に対応する値をレジスタ250に格納するのに要するクロック数は十数クロックであり、これは例えば600dpi画像では1mm中の画素数より少ない点で、1mm角以上の矩形サイズのパターン描画に充分間に合うよう極めて高速に命令の実行ができる。よって、所定領域内で複数の矩形画像が主走査方向に極めて近接して並ぶようなパターンであっても、高速な描画パラメータ切り替えに十分対応することができるので、複数の矩形画像の配置に係る制約が極めて少ない。つまり、画像形成装置1は、RAM230に記憶させるプログラムの内容に応じて、複数の矩形画像の配置について極めて自由度の高い画像生成を行うことができる。そして、そのプログラムサイズは高々数キロバイトで何百個もの矩形パターンを描くことができる点で、制御部から、プログラム書き換えに要する時間も少なくて済む。複数ページ記録途中の頁間で実時間で書き換えることも可能となり、1ページ毎に異なったレイアウトのテストパターン画像を連続印刷することも可能となる。このことは、従来方式の一つである数十メガバイト以上の画素値データで画像メモリを埋めるようなテストパターン印刷方式では、時間もかかり困難な事であった。また、Load命令については、タイミング制御機能更新要求フラグのセットと、リセットまでのウェイト処理をも含めた専用命令としたことで、プログラムの記述がすっきりとして、矩形描画パラメータとの対応の付けやすい容易で平易なプログラミングができるメリットが、この専用の簡易CPUではでてくる。このように、単一描画領域を指定できるパターン生成回路と、描画パラメータを格納するバッファーレジスタと更新フラグとでの描画パラネータの更新情報の伝達手段と、専用の命令を備えたCPUとを組み合わせて協働させることにより、ソフトウェアの負担も軽くなり、また、パターン生成回路側も、単一の描画領域を指定できるだけの回路規模で済む点で、ハード、ソフト両面からテストパターン画像生成が容易となる効果が生まれる。なお、本発明の実施の形態は、今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。本発明は、電子写真式画像形成装置以外のものにも適用することができる。例えば、ディスプレイ装置の表示内容を生成する装置として本発明の画像生成装置を用いても良い。即ち、走査により所定の周期リフレッシュレートで書き換えられる表示装置の表示内容について、走査に応じてその表示領域内に複数の矩形を描画する装置として本発明の画像生成装置を適用することで、プログラムの内容に応じて任意の個数の矩形描画領域でテストパターンを表示させることができる。また、上述の実施形態では、パターン画像として矩形画像を生成する場合について示しているが、所定の一方向例えば主操作方向の画像生成と当該一方向に直交する他方向例えば副走査方向の画像生成との組み合わせにより、矩形以外の形状を有する任意のパターン画像を生成することも可能である。また、テストパターンに限らず、複数のパターン画像を所定の領域内に生成することを伴う処理であれば、本発明を適用することができる。また、上述の実施形態では、単一のテストパターン生成部200に設けられた単一の描画領域パターン生成部240が所定の領域内に複数のパターン画像を生成しているが、複数のテストパターン生成部200を協働させて所定の領域内に複数のパターン画像を生成することは差し支えない。また、単一のテストパターン生成部200に複数のパターン生成部240を設けてCPU220や専用の統括制御部等に複数のパターン生成部240を統括制御させる仕組みとしても差し支えない。ここでは、更新フラグの1または0の1ビットの情報伝達を行う例を示したが、描画パラメータを格納するバッファーを複数段分、FIFO構成で設けることにより、更新すべき描画パラメータがバッファー内に何段分溜ったか更新を済ませたかで、カウントアップ/カウントダウンする複数ビットの情報伝達にしても差し支えない。"