(57)【要約】【課題】画像処理装置において、無駄なバッファ領域をもたずに画像の読み込みを実施する。【解決手段】画像データを記憶する複数のバッファで構成された記憶手段と、原稿を複数のセンサで読み取った前記画像データを、前記記憶手段の前記複数のバッファから指定されたバッファを選択して当該バッファの所定のアドレスに書き込む書込み制御手段と、を備え、前記書込み制御手段は、画素計測手段と、トリガ信号生成手段と、バッファ選択手段と、バッファ有効信号生成手段と、アドレス生成手段と、を備える。【選択図】図１
2014179817.tif 000002
【特許請求の範囲】
【請求項１】
画像データを記憶する複数のバッファで構成された記憶手段と、
原稿を複数のセンサで読み取った前記画像データを、前記記憶手段の前記複数のバッファから指定されたバッファを選択して当該バッファの所定のアドレスに書き込む書込み制御手段と、
を備え、
前記書込み制御手段は、
前記書込み制御手段に入力されている前記画像データの画素が何画素目であるかを計測する画素計測手段と、
前記複数のセンサから出力された前記各画像データの先頭画素が入力されたタイミングと、前記画素計測手段によって当該画像データが所定の画素数だけ入力されたタイミングにトリガ信号を生成するトリガ信号生成手段と、
前記トリガ信号が発生した場合に、前記書込み制御手段が選択する当該バッファの指定を切り替えて指定するバッファ選択手段と、
前記トリガ信号生成手段によって前記トリガ信号が発生してから再度前記トリガ信号が発生するまでの期間に、前記バッファ選択手段が指定した当該バッファを書込み可能な状態にするバッファ有効信号を出力するバッファ有効信号生成手段と、
前記バッファ有効信号が当該バッファを有効にしている期間、前記アドレスをカウントアップさせて当該アドレスを生成するアドレス生成手段と、
を備えること、
を特徴とする画像処理装置。
【請求項２】
前記バッファ選択手段の初期値は、前記各センサから入力される前記各画像データの先頭の画素の画素数目を、前記バッファの容量で除算した値に１を加算した値であること、
を特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記アドレス生成手段の初期値は、式（１）によって算出されること、
【数１】
2014179817.tif 000008
を特徴とする請求項１または請求項２に記載の画像処理装置。
【請求項４】
前記トリガ信号生成手段は、前記画素計測手段が、式（２）によって算出された値となった場合にトリガを発生させること、
【数２】
2014179817.tif 000009
を特徴とする請求項１乃至請求項３の何れか１項に記載の画像処理装置。
【請求項５】
前記バッファの容量の合計値は、前記複数のセンサの最大主走査幅の画像データの容量の合計であること、
を特徴とする請求項１乃至請求項４の何れか１項に記載の画像処理装置。
【請求項６】
前記バッファは、１以上の前記センサからの出力を書き込まれること、
を特徴とする請求項１乃至請求項５の何れか１項に記載の画像処理装置。
【請求項７】
原稿を複数のセンサで読み取る読取装置と、
前記読取装置が読み取った画像データを処理する請求項１乃至請求項６の何れか１項に記載された画像処理装置と、
前記画像処理装置を制御する制御装置と、
前記制御装置が前記画像処理装置を用いて処理された前記画像データを出力する出力装置と、
を備える画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像形成装置に関する。
【背景技術】
【０００２】
ＣＩＳ(Contact  Image  Sensor)や、ＣＣＤ(Charge  Coupled  Device)等のラインイメージセンサを備えたスキャナを搭載した複合機などの画像形成装置が知られている。
【０００３】
ラインイメージセンサより出力された画像データは、ＡＦＥ(Analog  Front  End)等を経由し、後段のＡＳＩＣ（Application  Specific  Integrated  Circuit）において画像処理が施される。その際、画像処理を行う前に、ラインイメージセンサから入力された画像データをライン順次に並び替えて画像処理を実施することが既に知られている。
【０００４】
そして、ラインイメージセンサによって並列に出力された画像データを並び替える際に、ＳＲＡＭ(Static  Random  Access  Memory)を使用してライン順次の画像データに並び替えることが一般的であり、各ブロックに最大主走査幅分のＳＲＡＭを搭載する必要があった。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところが、ラインイメージセンサを備えたスキャナ部分の構成は、製品ごとに異なっている場合がある。そのため、従来の画像形成装置は、同サイズの画像を読み取るにも拘らず、スキャナ部分のラインイメージセンサ構成が異なるものが接続される可能性がある。そこで、使用を想定される最大主走査幅、最大ブロック数分のＳＲＡＭを搭載する必要があり、不要なＳＲＡＭ容量が発生してしまうとの問題があった。
【０００６】
本発明は、上記に鑑みてなされたものであって、異なるラインイメージセンサ構成のスキャナが接続される場合でも、各々のケースにおいて不要なＳＲＡＭ容量をなくすことを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明は、画像データを記憶する複数のバッファで構成された記憶手段と、原稿を複数のセンサで読み取った前記画像データを、前記記憶手段の前記複数のバッファから指定されたバッファを選択して当該バッファの所定のアドレスに書き込む書込み制御手段と、を備え、前記書込み制御手段は、前記書込み制御手段に入力されている前記画像データの画素が何画素目であるかを計測する画素計測手段と、前記複数のセンサから出力された前記各画像データの先頭画素が入力されたタイミングと、前記画素計測手段によって当該画像データが所定の画素数だけ入力されたタイミングにトリガ信号を生成するトリガ信号生成手段と、前記トリガ信号が発生した場合に、前記書込み制御手段が選択する当該バッファの指定を切り替えて指定するバッファ選択手段と、前記トリガ信号生成手段によって前記トリガ信号が発生してから再度前記トリガ信号が発生するまでの期間に、前記バッファ選択手段が指定した当該バッファを書込み可能な状態にするバッファ有効信号を出力するバッファ有効信号生成手段と、前記バッファ有効信号が当該バッファを有効にしている期間、前記アドレスをカウントアップさせて当該アドレスを生成するアドレス生成手段と、を備える。
【発明の効果】
【０００８】
本発明によれば、接続されるラインイメージセンサの構成が不明であっても、余計なＳＲＡＭを実装することなく画像転送を行うことができるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、本実施形態の画像形成装置のブロック図である。
【図２】図２は、ＡＦＥのインターフェースの一例を示すタイミング図である。
【図３】図３は、ＷｒｉｔｅＡｄｄｒｅｓｓ制御部とＷｒｉｔｅＥｎａｂｌｅ制御部を示すブロック図である。
【図４】図４は、ＳＲＡＭの構成を示すブロック図である。
【図５】図５は、従来技術での３ｃｈ構成のＳＲＡＭへのライトタイミングを示したタイミングチャートである。
【図６】図６は、本実施形態での３ｃｈ構成のＳＲＡＭへのライトタイミングを示したタイミングチャートである。
【図７】図７は、従来技術での３ｃｈ構成のＳＲＡＭからのリードタイミングを示したタイミングチャートである。
【図８】図８は、本実施形態での３ｃｈ構成のＳＲＡＭからのリードタイミングを示したタイミングチャートである。
【図９】図９は、従来技術での６ｃｈ構成のＳＲＡＭからのライトタイミングを示したタイミングチャートである。
【図１０】図１０は、変形例１での６ｃｈ構成のＳＲＡＭからのライトタイミングを示したタイミングチャートである。
【図１１】図１１は、変形例２での２ｃｈ構成のＳＲＡＭからのライトタイミングを示したタイミングチャートである。
【図１２】図１２は、変形例３での５ｃｈ構成のＳＲＡＭからのライトタイミングを示したタイミングチャートである。
【図１３】図１３は、変形例３での５ｃｈ構成のＳＲＡＭからのリードタイミングを示したタイミングチャートである。
【図１４】図１４は、変形例４での４ｃｈ構成のＳＲＡＭからのライトタイミングを示したタイミングチャートである。
【図１５】図１５は、変形例５での３ｃｈ構成のＳＲＡＭからのライトタイミングを示したタイミングチャートである。
【発明を実施するための形態】
【００１０】
（本実施形態の構成例）
以下に図面を参照して、画像処理装置についての実施形態を詳細に説明する。
【００１１】
図１は、本実施形態の画像形成装置１のブロック図である。画像形成装置１は、Ｓｃａｎｎｅｒ２と、Ｅｎｇｉｎｅ３と、Ｃｏｎｔｒｏｌｌｅｒ４と、Ｐｌｏｔｔｅｒ５と、を備えている。
【００１２】
読取装置であるＳｃａｎｎｅｒ２は、複数のラインイメージセンサ２１と、ＡＦＥ２２と、を備えており画像読み取りを実施する。ラインイメージセンサ２１は、例えば、ＣＩＳやＣＣＤ等である。ＡＦＥ２２は、ラインイメージセンサ２１が読み取ったアナログデータをデジタルデータに変換する。また、Ｓｃａｎｎｅｒ２は、搭載するラインイメージセンサ２１や、ＡＦＥ２２を制御するデバイスが搭載されてもよい。
【００１３】
画像処理装置であるＥｎｇｉｎｅ３は、ＡＳＩＣ３１を備えている。Ｅｎｇｉｎｅ３は、Ｓｃａｎｎｅｒ２で読み取った画像データに対し動作モードに応じた画像処理を実施する。
【００１４】
制御装置であるＣｏｎｔｒｏｌｌｅｒ４は、画像形成装置１の制御を行う。例えば、Ｉ／Ｏ制御や、Ｅｎｇｉｎｅ３の制御や、メモリ転送制御などを実施する。出力装置であるＰｌｏｔｔｅｒ５は、画像データを出力する装置である。例えば、プリンタなどである。
【００１５】
ＡＳＩＣ３１は、ＳＲＡＭ＿ｔｏｐ３２と、画像処理部３３と、ＷｒｉｔｅＡｄｄｒｅｓｓ制御部３４と、ＷｒｉｔｅＥｎａｂｌｅ制御部３５と、ＲｅａｄＡｄｄｒｅｓｓ制御部３６と、ＲｅａｄＥｎａｂｌｅ制御部３７と、を備えている。ＡＳＩＣ３１は、画像データの処理を実施する。
【００１６】
ＳＲＡＭ＿ｔｏｐ３２は、ｗｒｉｔｅデータ選択部３００と、複数のＳＲＡＭ３０１と、ｒｅａｄデータ選択部３０２と、を備えている。そして、ＳＲＡＭ＿ｔｏｐ３２は、ＷｒｉｔｅＡｄｄｒｅｓｓ制御部３４、ＷｒｉｔｅＥｎａｂｌｅ制御部３５、ＲｅａｄＡｄｄｒｅｓｓ制御部３６及びＲｅａｄＥｎａｂｌｅ制御部３７からの入力に応じて画像データのリードアクセスまたはライトアクセスを行うＳＲＡＭ３０１を決定する。
【００１７】
ｗｒｉｔｅデータ選択部３００は、ラインイメージセンサ２１が読み取った画像データが入力される。そして、ｗｒｉｔｅデータ選択部３００は、入力された画像データを並列処理するために画像データの並び替えを行う。その際の並び替えは、ＡＦＥ２２の出力仕様に応じて並び替えが行われる。並び替え後の画像データは、ＷｒｉｔｅＡｄｄｒｅｓｓ制御部３４及びＷｒｉｔｅＥｎａｂｌｅ制御部３５からの入力により選択されたＳＲＡＭ３０１に出力される。
【００１８】
記憶手段であるＳＲＡＭ３０１は、画像データを格納するバッファである。また、カラー読取を行う場合にＳＲＡＭ３０１は、色数に対応した数のＳＲＡＭ３０１が必要となる。そして、ＳＲＡＭ３０１は、リード速度とライト速度の差分吸収のため２ライン分実装される。また、ＳＲＡＭ３０１は、画像データの読み出し順に応じて、ＦＩＦＯ（First  In  First  Out）や、ＬＩＦＯ（Last  In  First  Out）などの、ＳＲＡＭ３０１以外のバッファを選択してもよい。
【００１９】
ｒｅａｄデータ選択部３０２は、ＲｅａｄＡｄｄｒｅｓｓ制御部３６及びＲｅａｄＥｎａｂｌｅ制御部３７により、ＳＲＡＭ３０１からリードされた画像データがライン順次となるように画像データを選択する。
【００２０】
画像処理部３３は、各動作に最適な画像データに変換するための画像処理を実施するモジュールである。ＷｒｉｔｅＡｄｄｒｅｓｓ制御部３４は、ＳＲＡＭ３０１のライトアドレス信号を制御するブロックである。ＷｒｉｔｅＥｎａｂｌｅ制御部３５は、ＳＲＡＭ３０１のライトイネーブル信号を制御するブロックである。ＲｅａｄＡｄｄｒｅｓｓ制御部３６は、ＳＲＡＭ３０１のリードアドレス信号を制御するブロックである。ＲｅａｄＥｎａｂｌｅ制御部３７は、ＳＲＡＭ３０１のリードイネーブル信号を制御するブロックである。
【００２１】
図２は、ＡＦＥ２２のインターフェースの一例を示すタイミング図である。図２を用いて、ＡＦＥ２２のインターフェースを説明する。図２は、Ｓｃａｎｎｅｒ２のラインイメージセンサ２１から、ＡＦＥ２２へ画像データが出力され、ＡＦＥ２２にてデジタルデータに変換された画像データが、ｗｒｉｔｅデータ選択部３００から出力されている状態を示している。これにより、ＳＲＡＭ３０１へ画像データを入力する前段階の画像データの選択が行われる。
【００２２】
具体的には、ラインイメージセンサ入力１〜３は、ラインイメージセンサ２１からＡＦＥ２２に入力されるラインイメージセンサ２１が読み取ったアナログデータである。ＡＦＥ出力は、ＡＦＥ２２がラインイメージセンサ２１から入力されたアナログデータをデジタルデータに変換した画像データである。ｗｒｉｔｅ＿ｄａｔａ＿１〜３は、ｗｒｉｔｅデータ選択部３００によって、ＡＦＥ２２から入力された画像データを並列処理のためにシリアルパラレル変換された画像データである。
【００２３】
ラインイメージセンサ２１は、Ｓｃａｎｎｅｒ２からＡＦＥ２２へアナログデータを出力する。そして、ＡＦＥ２２は、アナログデータをデジタルデータに変換して出力する。その後、ｗｒｉｔｅデータ選択部３００によって、デジタルデータに変換された画像データが、並列処理のために並び替えられる。
【００２４】
図３は、ＷｒｉｔｅＡｄｄｒｅｓｓ制御部３４とＷｒｉｔｅＥｎａｂｌｅ制御部３５を示すブロック図である。以下にて、ＷｒｉｔｅＡｄｄｒｅｓｓ制御部３４とＷｒｉｔｅＥｎａｂｌｅ制御部３５について説明を行う。なお、ＲｅａｄＡｄｄｒｅｓｓ制御部３６とＲｅａｄＥｎａｂｌｅ制御部３７は、図３と同じであるため省略する。
【００２５】
ＷｒｉｔｅＡｄｄｒｅｓｓ制御部３４及びＷｒｉｔｅＥｎａｂｌｅ制御部３５に入力される信号について説明を行う。ＷｒｉｔｅＡｄｄｒｅｓｓ制御部３４及びＷｒｉｔｅＥｎａｂｌｅ制御部３５には、ライン同期信号と、ｍｏｄｅ信号と、が入力される。ライン同期信号は、主走査の同期信号である。具体的には、１ライン周期で有効になる信号である。ｍｏｄｅ信号は、接続されるスキャナの構成を示す信号である。具体的には、最大主走査幅や、ラインイメージセンサ２１のｃｈ数などである。なお、ｍｏｄｅ信号は、複合機固有であるため、最大主走査幅やラインイメージセンサ２１のｃｈ数などは、具体的な値でなくてもよいし、具体的な値でもよい。
【００２６】
ＷｒｉｔｅＡｄｄｒｅｓｓ制御部３４及びＷｒｉｔｅＥｎａｂｌｅ制御部３５から出力される信号について説明を行う。ＷｒｉｔｅＡｄｄｒｅｓｓ制御部３４は、ライトアドレス信号を出力する。ライトアドレス信号は、ＳＲＡＭ３０１をライトアクセスする際に使用するアドレス信号である。ＷｒｉｔｅＥｎａｂｌｅ制御部３５は、ライトイネーブル信号と、ＲＡＭカウンタ信号と、を出力する。ライトイネーブル信号は、ＳＲＡＭ３０１を書き込み可能な状態にする信号である。ＲＡＭカウンタ信号は、各ｃｈのカウンタ値をｗｒｉｔｅデータ選択部３００へ出力する信号であり、ライトするＳＲＡＭ３０１が示されている。
【００２７】
ＷｒｉｔｅＡｄｄｒｅｓｓ制御部３４及びＷｒｉｔｅＥｎａｂｌｅ制御部３５が備えているブロックについて説明を行う。ＷｒｉｔｅＡｄｄｒｅｓｓ制御部３４は、アドレス値算出部３４０と、アドレスカウンタ３４１と、を備えている。ＷｒｉｔｅＡｄｄｒｅｓｓ制御部３４により、ＳＲＡＭ３０１のライトアドレス信号が生成される。そして、ＷｒｉｔｅＡｄｄｒｅｓｓ制御部３４及びＷｒｉｔｅＥｎａｂｌｅ制御部３５にて書込み制御手段を構成している。
【００２８】
アドレス値算出部３４０は、各ＳＲＡＭ３０１のアドレスの最大値と、初期値と、を後述する式（１）及び式（２）にて算出するブロックである。なお、式（２）の対応センサｃｈ番号とは、算出したいラインイメージセンサ２１の番号である。対応ＲＡＭ＿ｃｈ番号とは、算出したいＳＲＡＭ３０１のｃｈ番号である。そして、対応ＲＡＭ＿ｃｈ番号は、算出したいＳＲＡＭ３０１のｃｈ番号と、ＲＡＭカウンタ信号の初期値と、が等しい場合に、そのセンサｃｈ番号となる。なお、該当するｃｈ数がない場合は、０とする。
【００２９】
【数１】
2014179817.tif 000003
【数２】
2014179817.tif 000004
【００３０】
アドレス生成手段であるアドレスカウンタ３４１は、ＳＲＡＭ３０１のライトアドレス信号を算出するためのカウンタである。アドレスカウンタ３４１は、該当するＳＲＡＭ３０１のライトイネーブル信号が有効である場合にカウントアップする。ＳＲＡＭ３０１の最大幅までアクセスしたタイミング、または、外部からのライン同期信号を検知したタイミングで初期値となる。なお、ライトアドレス信号の初期値は、アドレス値算出部３４０によって算出された値となる。これにより、ライトアドレス信号が生成される。
【００３１】
ＷｒｉｔｅＥｎａｂｌｅ制御部３５は、主走査カウンタ３５０と、カウンタトリガ生成部３５１と、ＲＡＭカウンタ初期値算出部３５２と、ＲＡＭカウンタ３５３と、ｅｎ信号生成部３５４と、を備えている。ＷｒｉｔｅＥｎａｂｌｅ制御部３５により、ＳＲＡＭ３０１のライトイネーブル信号が生成される。
【００３２】
画素計測手段である主走査カウンタ３５０は、ＷｒｉｔｅＡｄｄｒｅｓｓ制御部３４に対して、ラインイメージセンサ２１から入力される画像データが何画素目であるかを示しているカウンタである。主走査カウンタ３５０の初期値は、後述する式（３）にて算出される。そして、ライン同期信号を基準にして、０にクリアされる。なお、ＲｅａｄＥｎａｂｌｅ制御部３７の場合に、主走査カウンタ３５０の最大値は、原稿の主走査幅となる。そして、ライン同期信号を基準にして、０にクリアされる。
【００３３】
【数３】
2014179817.tif 000005
【００３４】
トリガ信号生成手段であるカウンタトリガ生成部３５１は、ｍｏｄｅ信号にて入力された最大主走査幅と、ラインイメージセンサ２１のｃｈ数と、主走査カウンタ３５０のカウンタ値と、を用いてライトイネーブル信号を切り替えるタイミングを算出する。具体的には、主走査カウンタ３５０のカウンタ値が、後述する式（４）で算出する値となった場合に、カウンタトリガ信号を有効にする。なお、ｍとは、任意の値であり、定数倍のタイミングで、カウンタトリガ信号は有効となる。
【数４】
2014179817.tif 000006
【００３５】
ＲＡＭカウンタ初期値算出部３５２は、ＲＡＭカウンタ３５３の初期値を算出する。具体的には、式（５）で算出された値が初期値となる。なお、ＲｅａｄＥｎａｂｌｅ制御部３７の一部であるの場合には、初期値は１となる。
【数５】
2014179817.tif 000007
【００３６】
バッファ選択手段であるＲＡＭカウンタ３５３は、対応するラインイメージセンサ２１のｃｈが、どのＳＲＡＭ３０１にデータを格納するかを選択するカウンタである。ＲＡＭカウンタ３５３は、カウンタトリガ信号でカウントアップし、ライン同期信号で初期値にクリアされる。ＲＡＭカウンタ３５３の初期値は、ＲＡＭカウンタ初期値算出部３５２によって算出される。
【００３７】
バッファ有効信号生成手段であるｅｎ信号生成部３５４は、該当するＳＲＡＭ３０１を書込み可能な状態にするライトイネーブル信号を生成するブロックである。ｅｎ信号生成部３５４は、ＲＡＭカウンタ３５３のカウンタ値が示しているＳＲＡＭ３０１に対してライトイネーブル信号を生成する。
【００３８】
図４は、ＳＲＡＭ３０１の構成を示すブロック図である。ＳＲＡＭ３０１の構成は、ｗｒｉｔｅ＿ｓｅｌ３０３と、ＳＲＡＭ３０１と、ｒｅａｄ＿ｓｅｌ３０４と、を備えている。
【００３９】
ＳＲＡＭ３０１の構成は、ＷｒｉｔｅＡｄｄｒｅｓｓ制御部３４にて生成されたＳＲＡＭ３０１のライトアドレス信号であるｗ＿ａｄｄ＿Ｎ信号（Ｎは任意の値）と、各ラインイメージセンサ２１のライトデータであるｗｒｉｔｅ＿ｄａｔａ＿Ｎ信号（Ｎは任意の値）と、ライトするＳＲＡＭ３０１が示されているＲＡＭカウンタＮ信号（Ｎは任意の値）と、各ＳＲＡＭ３０１に対するライトデータであるｗｄａｔ＿Ｎ信号（Ｎは任意の値）と、ＷｒｉｔｅＥｎａｂｌｅ制御部３５にて生成されたＳＲＡＭ３０１のライトイネーブル信号であるｗｅ＿Ｎ信号（Ｎは任意の値）と、ＲｅａｄＡｄｄｒｅｓｓ制御部３６にて生成されたＳＲＡＭ３０１のリードアドレス信号であるｒ＿ａｄｄ信号と、ＲｅａｄＥｎａｂｌｅ制御部３７にて生成されたリードイネーブル信号であるｒｅ＿Ｎ信号（Ｎは任意の値）と、各ＳＲＡＭ３０１からのリードデータであるｒｅａｄ＿ｄａｔａ＿Ｎ信号（Ｎは任意の値）と、各ＳＲＡＭ３０１からのリードデータをセレクトしライン順次に並び替えたあとのリードデータであるｒｅａｄ＿ｄａｔａ信号と、を備えている。
【００４０】
ＳＲＡＭ３０１の構成は、ｗｒｉｔｅ＿ｓｅｌ３０３と、ＳＲＡＭ３０１と、ｒｅａｄ＿ｓｅｌ３０４と、を備えている。以下にてＳＲＡＭ３０１の構成が備えているブロックについて説明を行う。
【００４１】
ｗｒｉｔｅ＿ｓｅｌ３０３は、ｗｒｉｔｅデータ選択部３００の一部である。ｗｒｉｔｅ＿ｓｅｌ３０３は、ＡＦＥ２２にて並び替えられた画像データであるｗｒｉｔｅ＿ｄａｔａ＿Ｎと、ライトするＳＲＡＭ３０１が示されているＲＡＭカウンタ信号とが入力される。ｗｒｉｔｅ＿ｓｅｌ３０３は、ＲＡＭカウンタ信号にて選択された値によって、入力された画像データを各ＳＲＡＭ３０１に対するライトデータであるｗｄａｔ＿Ｎ信号に出力する。
【００４２】
ｒｅａｄ＿ｓｅｌ３０４は、ｒｅａｄデータ選択部３０２の一部である。ｒｅａｄ＿ｓｅｌ３０４は、各ＳＲＡＭ３０１からのリードデータであるｒｅａｄ＿ｄａｔａ＿Ｎ信号をライン順次に並び替える機能を備えている。具体的には、各ＳＲＡＭ３０１のリードイネーブル信号であるｒｅ＿Ｎ信号によって有効であることが示されているリードデータをセレクトしてｒｅａｄ＿ｄａｔａ信号から出力することでライン順次に並び替えられる。
【００４３】
ＳＲＡＭ３０１は、前述したバッファである。また、ＳＲＡＭ３０１は上述の回路構成としたことにより、入力された画像データは効率的にＳＲＡＭ３０１に対してライトされる。よって、各ＳＲＡＭ３０１の容量の合計値は、Ｓｃａｎｎｅｒ２の複数のラインイメージセンサ２１が読み取った画像データの容量の合計だけあればよい。
【００４４】
以下にて、従来技術を用いた回路構成によるタイミングチャートと、本実施形態でのタイミングチャートとを比較しつつ、回路動作について説明を行う。
【００４５】
図５は、従来技術での３ｃｈ構成のＳＲＡＭ３０１へのライトタイミングを示したタイミングチャートである。図６は、本実施形態での３ｃｈ構成のＳＲＡＭ３０１へのライトタイミングを示したタイミングチャートである。本実施形態において、主走査幅７５００画素の原稿を読み取る場合に、ラインイメージセンサ２１が３ｃｈ構成のスキャナが接続されることを想定したＳＲＡＭ３０１へのリードとライトタイミングを説明する。
【００４６】
図５は、ラインイメージセンサ２１のｃｈ数が３ｃｈで、ＳＲＡＭ３０１の幅が２５００画素である状態を示している。従来技術においては、使用を想定される最大主走査幅、最大ブロック数分のＳＲＡＭ３０１を搭載する。すなわち、対応するラインイメージセンサ２１から入力された全ての入力データは、一つのＳＲＡＭ３０１にライトする。そのため、対応するセンサがないｗｒｉｔｅ＿ｄａｔａ＿２、ｗｒｉｔｅ＿ｄａｔａ＿４、及び、ｗｒｉｔｅ＿ｄａｔａ＿６は、ＳＲＡＭ３０１が実装されているものの使用されることはない。よって、同様の理由により、ｗｅ＿２、ｗｅ＿４、及び、ｗｅ＿６は、Ｌｏｗの状態を維持した状態になっている。
【００４７】
図６は、ラインイメージセンサ２１のｃｈ数が３ｃｈで、ＳＲＡＭ３０１の幅が１２５０画素である状態を示している。本実施形態では、個々のＳＲＡＭ３０１の容量を、使用を想定される最大主走査幅の半分にして２個を１組にして使用する。まず、一つ目のＳＲＡＭ３０１に対して前半の画像データをライトする。その後、二つ目のＳＲＡＭ３０１に対して後半の画像データをライトする。これにより、本実施形態は、ラインイメージセンサ２１から入力された全ての画像データがＳＲＡＭ３０１にライトすることが可能となる。
【００４８】
具体的には、ライン同期信号がＨｉｇｈになったことにより、カウンタトリガ１信号は、Ｈｉｇｈ状態となる。カウンタトリガ１信号がＨｉｇｈ状態となったことにより、ＳＲＡＭ３０１のライトイネーブル信号であるｗｅ＿１は、Ｈｉｇｈ状態となる。ｗｅ＿１がＨｉｇｈ状態となったことにより、ＳＲＡＭ３０１のライトアドレス信号であるｗ＿ａｄｄ＿１は、カウントアップする。その後、主走査カウンタ１が、１２４９になったことにより、カウンタトリガ１信号は、Ｈｉｇｈ状態となる。それにより、ｗｅ＿１は、Ｌｏｗ状態となる。その際に、ＲＡＭカウンタ１は、カウントアップして２となる。よって、ｗｅ＿２は、Ｈｉｇｈ状態となる。
【００４９】
その間、ラインイメージセンサ２１から入力された画像データであるｗｒｉｔｅ＿ｄａｔａ＿１は、ｗｒｉｔｅ＿ｓｅｌ３０３で選択されてｗｄａｔ＿１から出力される。そして、一つ目のＳＲＡＭ３０１にライトされる。また、ｗｅ＿２がＨｉｇｈになった以降も同様の動作となる。
【００５０】
すなわち、従来技術においては、対応するラインイメージセンサ２１から入力された全ての入力データは、一つのＳＲＡＭ３０１にライトしていた。しかし、本実施形態においては、ＳＲＡＭ３０１を効率的に使用できる形態となっていることから、ＳＲＡＭ３０１の容量は、主走査幅をＳＲＡＭ３０１の個数で除算することで求めされる。例えば、主走査幅７５００画素の原稿であって、ＳＲＡＭ３０１を６個使用する場合に、ＳＲＡＭ３０１の容量は、１２５０あればよい。
【００５１】
図７は、従来技術での３ｃｈ構成のＳＲＡＭ３０１からのリードタイミングを示したタイミングチャートである。図８は、本実施形態での３ｃｈ構成のＳＲＡＭ３０１からのリードタイミングを示したタイミングチャートである。
【００５２】
従来技術においては、対応するラインイメージセンサ２１からの画像データは、対応する一つのＳＲＡＭ３０１にライトする。よって、対応するラインイメージセンサ２１がないＳＲＡＭ３０１は、リードされない。
【００５３】
一方、本実施形態においては、ＳＲＡＭ３０１の容量を半分にして２個を１組にして使用する。よって、全てのＳＲＡＭ３０１は、リードされる。
【００５４】
具体的には、ライン同期信号がＨｉｇｈになったことによりカウンタトリガ信号がＨｉｇｈになる。それにより、ＳＲＡＭ３０１のリードイネーブル信号であるｒｅ＿１は、Ｈｉｇｈ状態になる。それに伴い、ＳＲＡＭ３０１のリードアドレス信号であるｒ＿ａｄｄは、カウントアップする。これにより、ＳＲＡＭ３０１のリードデータは、出力される。ＳＲＡＭ３０１の画素幅である１２４９画素のリードが完了するとカウンタトリガは、Ｈｉｇｈになる。よって、ｒｅ＿１は、Ｌｏｗ状態となる。その際、ＲＡＭカウンタ信号は、カウントアップする。これを、ＳＲＡＭ３０１を変えながらリードを繰り返すことで主走査幅である７５００画素をリードする。
【００５５】
以上のように、複数のラインイメージセンサ２１から入力された画像データは、ｗｒｉｔｅ＿ｓｅｌ３０３においてＲＡＭカウンタ３５３が選択したＳＲＡＭ３０１に出力される。その際、カウンタトリガ生成部３５１は、主走査カウンタ３５０を用いて所定の量の画像データが入力されたと判定した場合に、カウンタトリガ信号を発生させてＲＡＭカウンタ３５３の値をカウントアップさせることでＳＲＡＭ３０１を切り替える。これにより、各ＳＲＡＭ３０１に対して適切な量の画像データがそれぞれ出力される。そして、カウンタトリガ信号にてＳＲＡＭ３０１が切り替えられるまでの期間、ｅｎ信号生成部３５４は、ＳＲＡＭ３０１を書込み可能な状態にするバッファ有効信号を選択先のＳＲＡＭ３０１に出力する。その際に、アドレスカウンタ３４１は、バッファ有効信号が有効である場合に値を所定の値からカウントアップさせて選択先のＳＲＡＭ３０１にアドレスとして出力する。これにより、選択されたＳＲＡＭ３０１は、上書きされることなく画像データを各ＳＲＡＭ３０１に書き込むことが可能となる。よって、ラインイメージセンサ２１の数に増減があったとしても、各ＳＲＡＭ３０１に適切な量の画像データを書き込むことが可能となるので、ラインイメージセンサ２１に増減があったとしても不要なＳＲＡＭ３０１を増やすことなく対応可能となる。
【００５６】
なお、本発明は、上記実施形態に限定されるものではなく、種々の変形が可能である。
【００５７】
（変形例１）
以下にて本実施形態の変形例１であるラインイメージセンサ２１のｃｈ数が６ｃｈ、ＳＲＡＭ３０１のｃｈ数が６ｃｈの場合について説明を行う。
【００５８】
図９は、従来技術での６ｃｈ構成のＳＲＡＭ３０１からのライトタイミングを示したタイミングチャートである。図１０は、変形例１での６ｃｈ構成のＳＲＡＭ３０１からのライトタイミングを示したタイミングチャートである。６ｃｈ構成時は、本発明適用後においても従来技術と、タイミングに差異はない。しかし、従来技術は、スキャナ部分のラインイメージセンサ構成が３ｃｈである場合（ラインイメージセンサ２１が１個あたりの主走査幅２５００画素）にも対応する必要があることから、ＳＲＡＭ３０１あたりの幅を２５００画素分実装している必要があり後半の１２５０画素分は使用されない領域となってしまっていた。一方、変形例１では、ＳＲＡＭ３０１の容量が１個当たりにつき１２５０画素分しか搭載されていないため、無駄な領域をなくすことが可能となる。
【００５９】
なお、６ｃｈ構成のＳＲＡＭ３０１からのリードタイミングは、３ｃｈ構成時と変わらないため省略する。
【００６０】
（変形例２）
以下にて本実施形態の変形例２であるラインイメージセンサ２１のｃｈ数が２ｃｈ、ＳＲＡＭ３０１のｃｈ数が５ｃｈの場合について説明を行う。
【００６１】
図１１は、変形例２での２ｃｈ構成のＳＲＡＭ３０１からのライトタイミングを示したタイミングチャートである。
【００６２】
変形例２においては、一つのＳＲＡＭ３０１に対して、複数のセンサから画像データをライトすることにも対応している。具体的には、ＳＲＡＭ３０１のライトデータ信号であるｗｄａｔ＿３に対して、ラインイメージセンサ２１からのライトデータ信号であるｗｒｉｔｅ＿ｄａｔａ＿２は、画像データＤ３７５０からＤ４４９９を入力している。その後、別のセンサからのライトデータ信号であるｗｒｉｔｅ＿ｄａｔａ＿１は、画像データＤ３０００からＤ３７４９を入力している。
【００６３】
図１１について、更に詳細に説明を行う。ライン同期信号がＨｉｇｈになったことによりカウンタトリガ１信号と、カウンタトリガ２信号と、がＨｉｇｈになる。それにより、ＳＲＡＭ３０１のライトイネーブル信号がＨｉｇｈとなる。この時、ＲＡＭカウンタ１信号の値は、１になっている。そして、ＲＡＭカウンタ２信号の値は、３となっている。よって、ＳＲＡＭ３０１のライトイネーブル信号は、ｗｅ＿１と、ｗｅ＿３とがＨｉｇｈ状態となる。そして、ｗｅ＿３のＳＲＡＭ３０１のライトアドレス信号であるｗ＿ａｄｄ＿３は、前述の式（２）の計算式を用いて初期値が計算される。式（２）の対応センサｃｈ番号は、ｗｒｉｔｅ＿ｄａｔａ＿２からの入力であることから２となる。そして、対応ＲＡＭ＿ｃｈ番号は、ｗｄａｔ＿３であることから３となる。それぞれの値を代入して計算するとｗ＿ａｄｄ＿３は、７５０となる。
【００６４】
その後、主走査カウンタ２の値が４４９９となり、式（４）にて計算された値である１５００の定数倍から１を減算した値となることからカウンタトリガ２がＨｉｇｈになる。そして、図１１に示すタイミングでＳＲＡＭ３０１に画像データがライトされる。
【００６５】
（変形例３）
以下にて本実施形態の変形例３であるラインイメージセンサ２１のｃｈ数が５ｃｈ、ＳＲＡＭ３０１のｃｈ数が５ｃｈの場合について説明を行う。
【００６６】
図１２は、変形例３での５ｃｈ構成のＳＲＡＭ３０１からのライトタイミングを示したタイミングチャートである。図１３は、変形例３での５ｃｈ構成のＳＲＡＭ３０１からのリードタイミングを示したタイミングチャートである。
【００６７】
ラインイメージセンサ２１のｃｈ数と、ＳＲＡＭ３０１のｃｈ数と、が共に５ｃｈの場合には、図１２に示すように、それぞれのＳＲＡＭ３０１に対して順次画像データがライトされる。そして、図１３に示すように、ＳＲＡＭ３０１ごとに順番に画像データがリードされる。
【００６８】
（変形例４）
以下にて本実施形態の変形例４であるラインイメージセンサ２１のｃｈ数が４ｃｈ、ＳＲＡＭ３０１のｃｈ数が５ｃｈの場合について説明を行う。
【００６９】
図１４は、変形例４での４ｃｈ構成のＳＲＡＭ３０１からのライトタイミングを示したタイミングチャートである。
【００７０】
ライン同期信号が、Ｈｉｇｈになったことにより、カウンタトリガ１から４がＨｉｇｈになる。そして、ＳＲＡＭ３０１のライトイネーブル信号ｗｅ＿１からｗｅ＿４は、Ｈｉｇｈになる。また、ライトアドレス信号であるｗ＿ａｄｄ＿１からｗ＿ａｄｄ＿４は、初期値が設定されると共にカウントアップを開始する。その後、主走査カウンタが式（４）で求められた値の定数倍になったタイミングでカウンタトリガ信号がＨｉｇｈになり、ＳＲＡＭ３０１のライトイネーブル信号やライトアドレス信号は、変化する。これが順次行われることによりセンサからの画像データは、ＳＲＡＭ３０１にライトされる。
【００７１】
（変形例５）
以下にて本実施形態の変形例５であるラインイメージセンサ２１のｃｈ数が３ｃｈ、ＳＲＡＭ３０１のｃｈ数が５ｃｈの場合について説明を行う。
【００７２】
図１５は、変形例５での３ｃｈ構成のＳＲＡＭ３０１からのライトタイミングを示したタイミングチャートである。
【００７３】
ライン同期信号が、Ｈｉｇｈになったことにより、カウンタトリガ１から３がＨｉｇｈになる。それにより、ＳＲＡＭ３０１のライトイネーブル信号がＨｉｇｈとなる。この時、ＲＡＭカウンタ１信号の値は、１になっている。そして、ＲＡＭカウンタ２信号の値は、２となっている。また、ＲＡＭカウンタ３信号の値は、４となっている。よって、ＳＲＡＭ３０１のライトイネーブル信号は、ｗｅ＿１と、ｗｅ＿２と、ｗｅ＿４と、がＨｉｇｈ状態となる。そして、ｗｅ＿２のＳＲＡＭ３０１のライトアドレス信号であるｗ＿ａｄｄ＿２は、前述の式（２）の計算式を用いて初期値が計算される。式（２）の対応センサｃｈ番号は、ｗｒｉｔｅ＿ｄａｔａ＿２からの入力であることから２となる。そして、対応ＲＡＭ＿ｃｈ番号は、ｗｄａｔ＿２であることから２となる。それぞれの値を代入して計算するとｗ＿ａｄｄ＿３は、１０００となる。ｗｒｉｔｅ＿ｄａｔａ＿４は、同様に計算を行い５００となる。その後、主走査カウンタが式（４）で求められた値の定数倍になったタイミングでカウンタトリガ信号がＨｉｇｈになり、ＳＲＡＭ３０１のライトイネーブル信号やライトアドレス信号は、変化する。これが順次行われることによりセンサからの画像データは、ＳＲＡＭ３０１にライトされる。
【００７４】
なお、上記実施の形態では、本発明の画像処理装置を、コピー機能、プリンタ機能、スキャナ機能およびファクシミリ機能のうち少なくとも２つの機能を有する複合機に適用した例を挙げて説明するが、複写機、プリンタ、スキャナ装置、ファクシミリ装置等の画像処理装置であればいずれにも適用することができる。
【符号の説明】
【００７５】
１        画像形成装置
２１      ラインイメージセンサ
２２      ＡＦＥ
３４      ＷｒｉｔｅＡｄｄｒｅｓｓ制御部
３５      ＷｒｉｔｅＥｎａｂｌｅ制御部
３６      ＲｅａｄＡｄｄｒｅｓｓ制御部
３７      ＲｅａｄＥｎａｂｌｅ制御部
３０１    ＳＲＡＭ
３４０    アドレス値算出部
３４１    アドレスカウンタ
３５０    主走査カウンタ
３５１    カウンタトリガ生成部
３５２    ＲＡＭカウンタ初期値算出部
３５３    ＲＡＭカウンタ
３５４    ｅｎ信号生成部
【先行技術文献】
【特許文献】
【００７６】
【特許文献１】特開２００８−１４７８５５号公報
【特許文献２】特開２００４−２２０５８５号公報
【特許文献３】特許第３８７０１９０号公報
【図１】
2014179817.tif 000010
【図２】
2014179817.tif 000011
【図３】
2014179817.tif 000012
【図４】
2014179817.tif 000013
【図５】
2014179817.tif 000014
【図６】
2014179817.tif 000015
【図７】
2014179817.tif 000016
【図８】
2014179817.tif 000017
【図９】
2014179817.tif 000018
【図１０】
2014179817.tif 000019
【図１１】
2014179817.tif 000020
【図１２】
2014179817.tif 000021
【図１３】
2014179817.tif 000022
【図１４】
2014179817.tif 000023
【図１５】
2014179817.tif 000024