(57)【要約】【課題】  データのリード／ライトにより発生する消費電力を低減するメモリ制御回路および画像形成装置を得る。【解決手段】  比較器５が、メモリ１から読み出されたリードデータ１２と、リードデータ１２が読み出されたアドレスと同一のアドレスに書き込むためのライトデータ１２とを比較し、メモリコントローラ２は、比較器５による比較結果に基づき、リードデータ１２の値とライトデータ１１の値とが同一ではない場合のみ、ライトデータ１１をメモリ１に書き込み、リードデータ１２の値とライトデータ１１の値とが同一である場合には、ライトデータ１１をメモリ１に書き込まない。【選択図】  図１
2011008721.tif 000002
【特許請求の範囲】
【請求項１】
メモリから読み出されたリードデータと、前記リードデータが読み出されたアドレスと同一のアドレスに書き込むためのライトデータとを比較する比較器と、
前記比較器による比較結果に基づき、前記リードデータの値と前記ライトデータの値とが同一ではない場合のみ、前記ライトデータを前記メモリに書き込み、前記リードデータの値と前記ライトデータの値とが同一である場合には、前記ライトデータをメモリに書き込まないメモリコントローラと、
を備えることを特徴とするメモリ制御回路。
【請求項２】
１ラインずつ画像データを処理し処理後の画像データにおける各画素値を前記ライトデータとして前記メモリに書き込ませる第１データ処理回路と、
前記画像データを前記リードデータとして前記メモリから読み出させて、１ラインずつ前記画像データを処理する第２データ処理回路とをさらに備え、
前記メモリコントローラは、前記第１データ処理回路からのデータライト要求の時点で、前記比較器による比較結果に基づき、前記ライトデータを前記メモリに書き込むか否かを判定すること、
を特徴とする請求項１記載のメモリ制御回路。
【請求項３】
前記第１データ処理回路および前記第２データ処理回路は、１ラインずつ前記画像データに対してパイプライン処理を行うことを特徴とする請求項２記載のメモリ制御回路。
【請求項４】
各ラインについての前記比較器による比較結果に基づき、全ラインにおいて画素値が特定値である画素位置の存在を検出する筋検出部をさらに備えることを特徴とする請求項２または請求項３記載のメモリ制御回路。
【請求項５】
前記メモリは、スタティックＲＡＭであることを特徴とする請求項１から請求項４のうちのいずれか１項記載のメモリ制御回路。
【請求項６】
請求項２から請求項４のうちのいずれか１項記載のメモリ制御回路を備え、
前記第１データ処理回路および前記第２データ処理回路により処理された画像データに基づいて画像を形成すること、
を特徴とする画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリ制御回路および画像形成装置に関するものである。
【背景技術】
【０００２】
メモリにおいては、データのリード／ライトの際に電力が消費される。また、揮発性のメモリの場合、その他、データの保持にも電力が消費される。
【０００３】
このようなメモリでの消費電力を抑制する技術が提案されている（例えば特許文献１，２参照）。例えば、特許文献１の技術は、複数のダイナミックＲＡＭ（Random Access Memory）の一部のみについてリフレッシュを行うようにして消費電力を低減する。また、特許文献２の技術は、待機状態時にダイナミックＲＡＭのリフレッシュを行わないようにする。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平８−０８７４４５号公報
【特許文献２】特開平６−２５５１８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述の技術では、いずれもリフレッシュ頻度を低減させるものであり、データのリード／ライト時の消費電力を低減することはできない。また、いずれもリフレッシュ頻度を低減させるものであるため、リフレッシュを行わないメモリ（スタティックＲＡＭなど）については適用することができない。さらに、上述の技術では、通常動作時において１つのＲＡＭについて消費電力の低減を行うことが困難である。
【０００６】
本発明は、上記の問題に鑑みなされたものであり、データのリード／ライトにより発生する消費電力を低減するメモリ制御回路および画像形成装置を得ることを目的とする。
【課題を解決するための手段】
【０００７】
上記の課題を解決するために、本発明では以下のようにした。
【０００８】
本発明に係るメモリ制御回路は、メモリから読み出されたリードデータと、リードデータが読み出されたアドレスと同一のアドレスに書き込むためのライトデータとを比較する比較器と、比較器による比較結果に基づき、リードデータの値とライトデータの値とが同一ではない場合のみ、ライトデータをメモリに書き込み、リードデータの値とライトデータの値とが同一である場合には、ライトデータをメモリに書き込まないメモリコントローラとを備える。
【０００９】
これにより、メモリへのデータライトの回数が減少するため、メモリへのデータライトにより発生する消費電力が低減される。
【００１０】
また、本発明に係るメモリ制御回路は、上記のメモリ制御回路に加え、次のようにしてもよい。この場合、メモリ制御回路は、１ラインずつ画像データを処理し処理後の画像データにおける各画素値をライトデータとしてメモリに書き込ませる第１データ処理回路と、画像データをリードデータとしてメモリから読み出させて、１ラインずつ画像データを処理する第２データ処理回路とをさらに備える。そして、メモリコントローラは、第１データ処理回路からのデータライト要求の時点で、比較器による比較結果に基づき、ライトデータをメモリに書き込むか否かを判定する。
【００１１】
画像データでは、副走査方向の画素値変化が少ない場合があり、そのような場合には、特に、メモリへのデータライトの回数が減少するため、メモリへのデータライトにより発生する消費電力が低減される。
【００１２】
また、本発明に係るメモリ制御回路は、上記のメモリ制御回路のいずれかに加え、次のようにしてもよい。この場合、第１データ処理回路および第２データ処理回路は、１ラインずつ画像データに対してパイプライン処理を行う。
【００１３】
また、本発明に係るメモリ制御回路は、上記のメモリ制御回路のいずれかに加え、次のようにしてもよい。この場合、メモリ制御回路は、各ラインについての比較器による比較結果に基づき、全ラインにおいて画素値が特定値である画素位置の存在を検出する筋検出部をさらに備える。
【００１４】
これにより、画像内の筋を検出するための回路を別途設ける必要がない。
【００１５】
また、本発明に係るメモリ制御回路は、上記のメモリ制御回路のいずれかに加え、次のようにしてもよい。この場合、上記メモリは、スタティックＲＡＭである。
【００１６】
これにより、スタティックＲＡＭがメモリとして採用された場合、データライトの回数が減少するため、スタティックＲＡＭの寿命を長くすることができる。
【００１７】
本発明に係る画像形成装置は、上記のメモリ制御回路のいずれかを備え、第１データ処理回路および第２データ処理回路により処理された画像データに基づいて画像を形成する。
【発明の効果】
【００１８】
本発明によれば、データのリード／ライトにより発生する消費電力を低減するメモリ制御回路および画像形成装置を得ることができる。
【図面の簡単な説明】
【００１９】
【図１】図１は、本発明の実施の形態１に係るメモリ制御回路の構成を示すブロック図である。
【図２】図２は、図１におけるメモリコントローラの動作を説明するフローチャートである。
【図３】図３は、本発明の実施の形態２に係るメモリ制御回路の構成を示すブロック図である。
【図４】図４は、図３における筋検出部の動作を説明するフローチャートである。
【図５】図５は、実施の形態２において検出される画像内の筋の一例を説明する図である。
【発明を実施するための形態】
【００２０】
以下、図に基づいて本発明の実施の形態を説明する。
【００２１】
実施の形態１．
【００２２】
図１は、本発明の実施の形態１に係るメモリ制御回路の構成を示すブロック図である。
【００２３】
図１において、メモリ１は、半導体メモリ素子である。この実施の形態では、メモリ１は、スタティックＲＡＭである。ラインメモリ１ａは、メモリ１における所定の記憶領域である。ここでは、ラインメモリ１ａは、画像の１ライン分の画像データを格納可能なサイズを有する。
【００２４】
メモリコントローラ２は、メモリ１に対するリード／ライトを行う回路である。メモリコントローラ２は、バッファ３に保持されているライトデータ１１をメモリ１に書き込んだり、メモリ１から読み出したリードデータをバッファ４に格納したりする。メモリコントローラ２は、比較器５による比較結果に基づき、リードデータ１２の値とライトデータ１１の値とが同一ではない場合のみ、ライトデータ１１をメモリ１に書き込み、リードデータ１２の値とライトデータ１１の値とが同一である場合には、ライトデータ１１をメモリに書き込まない。なお、メモリコントローラ２は、データ処理回路６からのデータライト要求の時点で、比較器５による比較結果に基づき、ライトデータ１１をメモリ１に書き込むか否かを判定する。
【００２５】
バッファ３は、リードデータ１２が読み出されたアドレスと同一のアドレスに書き込むためのライトデータ１１を一時的に保持している記憶回路である。バッファ３は、メモリコントローラ２またはデータ処理回路６の内部に設けられていてもよい。
【００２６】
バッファ４は、メモリコントローラ２によりメモリ１から読み出されたリードデータ１２を一時的に保持している記憶回路である。バッファ４は、メモリコントローラ２またはデータ処理回路７の内部に設けられていてもよい。
【００２７】
比較器５は、バッファ３におけるリードデータ１１とバッファ４におけるライトデータ１２とを比較する回路である。つまり、読み出されたリードデータ１１と、メモリ１においてそのリードデータ１１に上書きするためのライトデータ１２とが比較される。
【００２８】
データ処理回路６は、１ラインずつ画像データに対して画像処理を行い、メモリコントローラ２へデータライト要求を供給して、処理後の画像データにおける各画素値をライトデータ１１としてメモリ１に書き込ませる第１データ処理回路である。データ処理回路７は、メモリコントローラ２へデータリード要求を供給して、画像データをリードデータ１２としてメモリ１から読み出させて、１ラインずつ画像データに対して別の画像処理を行う第２データ処理回路である。この実施の形態では、第１データ処理回路および第２データ処理回路は、１ラインずつ画像データに対してパイプライン処理を行う。
【００２９】
次に、上記回路の動作について説明する。図２は、図１におけるメモリコントローラ２の動作を説明するフローチャートである。
【００３０】
メモリコントローラ２は、データ処理回路７からアドレスｎについてのデータリード要求を受け付けると（ステップS１）、ラインメモリ１ａにおけるアドレスｎのデータ（ここでは、画素値）を読み出し（ステップＳ２）、リードデータ１２としてバッファ４に格納する（ステップＳ３）。
【００３１】
なお、次のデータリード要求（アドレスｎ＋１についてのデータリード要求）を受け付けると、メモリコントローラ２は、データ処理回路７からアドレスｎ＋１のデータを読み出し、バッファ４に上書きする。データ処理回路７は、次のデータリード要求をメモリコントローラ２へ供給する前に、バッファ４におけるリードデータ１２を読み出す。
【００３２】
一方、データ処理回路６は、ラインメモリ１ａにおけるアドレスｎに書き込むべきデータ（ここでは、画素値）をライトデータ１１としてバッファ３に格納し、アドレスｎについてのデータライト要求をメモリコントローラ２に供給する。なお、前回のデータライト要求についてのライトデータ１１がバッファ３に格納されている場合には、そのライトデータ１１に、今回のデータライト要求についてのライトデータ１１が上書きされる。なお、データ処理回路６は、データ処理回路７によりアドレスｎについてのデータリード要求が供給された後であってデータ処理回路７により次のデータリード要求が供給される前に、アドレスｎについてのデータライト要求をメモリコントローラ２に供給する。
【００３３】
メモリコントローラ２は、データ処理回路６からアドレスｎについてのデータライト要求を受け付けると（ステップS４）、比較器５による比較結果に基づいて、その時点でのリードデータ１２とライトデータ１１が同一値を有するか否かを判定する（ステップＳ５）。
【００３４】
その時点でのリードデータ１２とライトデータ１１が同一値を有さないと判定した場合、メモリコントローラ２は、
バッファ３からライトデータ１１を読み出し、ラインメモリ１ａにおけるアドレスｎにライトデータ１１を書き込む（ステップＳ６）。
【００３５】
一方、その時点でのリードデータ１２とライトデータ１１が同一値を有すると判定した場合、メモリコントローラ２は、ライトデータ１１を書き込まずに、ステップＳ４のデータライト要求に対する処理を完了する（ステップＳ７）。
【００３６】
以上のように、上記実施の形態１によれば、比較器５が、メモリ１から読み出されたリードデータ１２と、リードデータ１２が読み出されたアドレスと同一のアドレスに書き込むためのライトデータ１２とを比較し、メモリコントローラ２は、比較器５による比較結果に基づき、リードデータ１２の値とライトデータ１１の値とが同一ではない場合のみ、ライトデータ１１をメモリ１に書き込み、リードデータ１２の値とライトデータ１１の値とが同一である場合には、ライトデータ１１をメモリ１に書き込まない。
【００３７】
これにより、メモリ１へのデータライトの回数が減少するため、メモリ１へのデータライトにより発生する消費電力が低減される。また、メモリ１がスタティックＲＡＭである場合には、メモリ１へのデータライトの回数が減少するため、メモリ１の寿命が長くなる。
【００３８】
また、上記実施の形態１によれば、データ処理回路６は、１ラインずつ画像データを処理し処理後の画像データにおける各画素値をライトデータ１１としてメモリ１に書き込ませ、データ処理回路７は、画像データをリードデータ１２としてメモリ１から読み出させて、１ラインずつ画像データを処理する。そして、メモリコントローラ２は、データ処理回路６からのデータライト要求の時点で、比較器５による比較結果に基づき、ライトデータ１１をメモリ１に書き込むか否かを判定する。
【００３９】
これにより、画像データでは、副走査方向の画素値変化が少ない場合があり、そのような場合には、特に、メモリ１へのデータライトの回数が減少するため、メモリ１へのデータライトにより発生する消費電力が低減される。
【００４０】
実施の形態２．
【００４１】
実施の形態２では、実施の形態１に係るメモリ制御回路を応用することで、画像内の筋を検出できるようにする。なお、ここでいう筋とは、副走査方向に沿って、１ページの画像の一端から他端まで直線状に形成されている画像である。実施の形態２では、例えば、データ処理回路６が図示せぬスキャナによる画像読み取りにおいて生成された画像データを取得し、データ処理回路７がその画像データに対して画像処理を行う。このときに、スキャナによる読み取られた画像に黒筋が生じてしまっている場合には、それが検出される。
【００４２】
図３は、本発明の実施の形態２に係るメモリ制御回路の構成を示すブロック図である。図３において、筋検出部２１は、画像データにおける各ラインについての比較器５による比較結果に基づき、全ラインにおいて画素値が特定値である画素位置の存在を検出する処理部である。筋検出部２１は、専用ハードウェア回路として実現してもよいし、プログラムに従って動作するプロセッサにより実現するようにしてもよい。
【００４３】
なお、図３におけるその他の構成要素については、実施の形態１（図１）のものと同様であるので、その説明を省略する。
【００４４】
次に、上記回路による筋検出の動作について説明する。図４は、図３における筋検出部２１の動作を説明するフローチャートである。
【００４５】
実施の形態１と同様に、メモリコントローラ２、比較器５およびデータ処理回路６，７が動作し、１ページ分の画像データにおける最初の第１ラインから最後の第Ｍラインまで順番に、画像データがラインメモリ１ａを介してデータ処理回路６からデータ処理回路７へ転送される。
【００４６】
この動作に並行して筋検出部２１は、以下の処理を行う。
【００４７】
まず、筋検出部２１は、ライトデータ１１を参照することで第１ラインの画素値を順番に参照する（ステップＳ１１）。１つのライトデータ１１が１つの画素値を有する。筋検出部２１は、その画素値が特定の画素値（黒筋を検出する場合には、黒の画素値）であるか否かを判定し（ステップＳ１２）、その画素値が特定の画素値である場合には、その画素の位置を保存する（ステップＳ１３）。筋検出部２１は、１ラインの画素数を予め設定されており、データライト要求の回数をカウントしていき、データライト要求の回数および１ラインの画素数から、画素位置を特定する。
【００４８】
そして、筋検出部２１は、データライト要求の回数および１ラインの画素数に基づいて、第１ラインのデータライトが完了したか否かを判定し（ステップＳ１４）、第１ラインのデータライトが完了するまで、ステップＳ１１〜Ｓ１３の処理を繰り返す。
【００４９】
第１ラインのデータライトが完了すると、筋検出部２１は、少なくとも１つの画素位置が保存されているか否かを判定する（ステップＳ１５）。
【００５０】
少なくとも１つの画素位置が保存されている場合、筋検出部２１は、第２ラインから最後のラインまで、以下の処理を行う。
【００５１】
まず、筋検出部２１は、データライト要求ごとに現在のライトデータ１１の画素位置を特定し、ライトデータの画素位置が、ステップＳ１３で保存されたもののいずれかに一致するか否かを判定する（ステップＳ１６）。
【００５２】
現在のライトデータ１１の画素位置が、ステップＳ１３で保存されたもののいずれかに一致すると判定した場合、筋検出部２１は、現在のライトデータ１１の値（つまり、画素値）が特定の画素値（黒筋を検出する場合には、黒の画素値）であるか否かを判定する（ステップＳ１７）。
【００５３】
現在のライトデータ１１の値が特定の画素値ではないと判定した場合、筋検出部２１は、その画素位置についての不連続フラグの値を１にセットする（ステップＳ１８）。なお、不連続フラグの初期値はすべてゼロである。
【００５４】
一方、現在のライトデータ１１の画素位置が、ステップＳ１３で保存されたもののいずれにも一致しないと判定した場合（ステップＳ１６）、および現在のライトデータ１１の値が特定の画素値であると判定した場合（ステップＳ１７）、不連続フラグの値は操作されない。
【００５５】
そして、筋検出部２１は、全ラインについてのデータライトが完了したか否かを判定し（ステップＳ１９）、最後のラインまで、ステップＳ１６〜Ｓ１８の処理を繰り返し実行する。
【００５６】
１ページにおける全ラインについてのデータライトが完了すると、筋検出部２１は、保存されている画素位置のうち、不連続フラグの値が１にセットされていない（つまり、値がゼロである）画素位置が存在するか否かを判定する（ステップＳ２０）。
【００５７】
保存されている画素位置のうち、不連続フラグの値が１にセットされていない（つまり、値がゼロである）画素位置が存在する場合には、筋検出部２１は、画像データに筋が存在すると判定し、さらに、その筋の画素位置を特定する（ステップＳ２１）。なお、筋検出部２１による検出結果は、ユーザへの報知に使用されたり、後段の筋除去処理に使用されたりする。
【００５８】
一方、保存されている画素位置のうち、不連続フラグの値が１にセットされていない（つまり、値がゼロである）画素位置が存在しない場合には、筋検出部２１は、画像データに筋が存在しないと判定する（ステップＳ２２）。また、筋検出部２１は、ステップＳ１５において、保存されている画素位置が１つもない場合にも、画像データに筋が存在しないと判定する。
【００５９】
図５は、実施の形態２において検出される画像内の筋の一例を説明する図である。第１ラインの第１画素から第１０画素までおよび第５０画素の画素値が黒を示している。このため、画素位置として、１〜１０および５０が保存される。そして、第ｉライン以降について第１画素から第１０画素までの画素値が黒を示していないので、不連続フラグが１にセットされる。このため、第１画素から第１０画素までには、黒筋が存在しないと判定される。一方、第５０画素については、最後のラインまで画素値が黒を示しているので、不連続フラグが０のままとされる。このため、第５０画素に黒筋が存在すると判定される。
【００６０】
以上のように、上記実施の形態２によれば、実施の形態１に示すメモリ制御回路を利用して画像内の筋を検出することができる。このため、筋検出部２１のみを設けることで、筋を検出するための回路を別途設ける必要がなく、少ない回路規模で画像内の筋の検出を行うことができる。
【００６１】
なお、上述の各実施の形態は、本発明の好適な例であるが、本発明は、これらに限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。
【００６２】
例えば、上記各実施の形態において、メモリ１として、フラッシュメモリを使用してもよい。
【００６３】
また、上記各実施の形態では、ライトデータおよびリードデータがそれぞれ別のデータ処理回路６，７により処理されているが、単一のデータ処理回路がそれらのデータを処理するようにしてもよい。
【００６４】
また、上記実施の形態２において、不連続フラグの代わりに不連続カウンタを使用してもよい。その場合、不連続カウンタの初期値をゼロとし、ステップＳ１８において不連続カウンタの値を１だけ増加させ、ステップＳ２０において不連続カウンタの値が所定の値以上の場合には、筋が生じていると判定する。これにより、筋の一部が途切れていたり、断続的に形成されている筋についても検出することができる。
【産業上の利用可能性】
【００６５】
本発明は、例えば、印刷装置、複写機、複合機などといった画像形成装置に適用可能である。
【符号の説明】
【００６６】
１  メモリ
２  メモリコントローラ
５  比較器
６  データ処理回路（第１データ処理回路の一例）
７  データ処理回路（第２データ処理回路の一例）
１１  ライトデータ
１２  リードデータ
２１  筋検出部
【図１】
2011008721.tif 000003
【図２】
2011008721.tif 000004
【図３】
2011008721.tif 000005
【図４】
2011008721.tif 000006
【図５】
2011008721.tif 000007