(57)【要約】【課題】ＣＰＵの負荷を増すことなく、受信データのオーバーフローを抑止することが可能なメモリ制御装置、画像処理装置及び画像形成装置を提供する。【解決手段】書込カウンタ７又は読出カウンタ８がカウントアップされる都度、メモリ残量算出部９がデュアルポートメモリ３の保有データ量を更新し、更新を１０回繰り返す都度、閾値算出部１０が保有データの最大値を閾値として閾値レジスタ１１に記憶する。閾値比較部１３が、メモリ残量算出部９が更新した保有データ量と、第２の閾値算出部１２が閾値レジスタ１１に記憶された閾値から閾値オフセットを減算して算出した第２の閾値とを比較し、保有データ量が第２の閾値以上である場合、停止信号送出部１４が、デュアルポートメモリ３へのデータの送信を停止させる停止信号を外部へ送出する。【選択図】図２
2010045538.tif 000002
【特許請求の範囲】
【請求項１】
受信したデータをＦＩＦＯメモリに書き込み、該ＦＩＦＯメモリの保有データ量（又は空き容量）及び所定閾値の比較結果に基づいて前記ＦＩＦＯメモリのオーバーフローに係る制御を行うメモリ制御装置において、
前記ＦＩＦＯメモリへアクセスする都度、前記保有データ量（又は空き容量）を更新する更新手段を備え、
該更新手段が所定回数更新する都度、前記所定閾値を、前記所定回数内における保有データ量の最大値（又は空き容量の最小値）とするように構成してあること
を特徴とするメモリ制御装置。
【請求項２】
受信したデータをＦＩＦＯメモリに書き込み、該ＦＩＦＯメモリの保有データ量（又は空き容量）及び所定閾値の比較結果に基づいて前記ＦＩＦＯメモリのオーバーフローに係る制御を行うメモリ制御装置において、
前記ＦＩＦＯメモリへアクセスする都度、前記保有データ量（又は空き容量）を更新する更新手段と、
計時手段とを備え、
該計時手段が所定時間を計時する都度、前記所定閾値を、前記所定時間内に前記更新手段が更新した保有データ量の最大値（又は空き容量の最小値）とするように構成してあること
を特徴とするメモリ制御装置。
【請求項３】
前記更新手段が更新した保有データ量（又は空き容量）が前記閾値以上（又は前記閾値未満）であるか否かを判定する判定手段と、
該判定手段が、前記閾値以上（又は前記閾値未満）と判定した場合、前記ＦＩＦＯメモリへのデータの送信を停止させる信号を外部へ送出する停止信号送出部と
を備えることを特徴とする請求項１又は２に記載のメモリ制御装置。
【請求項４】
前記閾値から所定データ量を減算（又は前記閾値に所定データ量を加算）して第２の閾値を算出する手段を備え、
前記判定手段は、前記更新手段が更新した保有データ量（又は空き容量）が前記第２の閾値以上（又は前記第２の閾値未満）であるか否かを判定するように構成してあることを特徴とする請求項３に記載のメモリ制御装置。
【請求項５】
請求項１から４までの何れか１項に記載のメモリ制御装置と、
該メモリ制御装置から読み出されたデータが画像データである場合、該画像データに基づいて画像を処理する手段と
を備えることを特徴とする画像処理装置。
【請求項６】
請求項５に記載の画像処理装置と、
該画像処理装置で処理された画像に基づいて出力画像を形成する手段と
を備えることを特徴とする画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＦＩＦＯメモリへのデータの読み書きを制御するメモリ制御装置、該メモリ制御装置を備える画像処理装置、及び該画像処理装置を備える画像形成装置に関する。
【背景技術】
【０００２】
データの受信と受信したデータの処理とを非同期で行う装置においては、ＦＩＦＯメモリ、デュアルポートメモリ等のメモリを受信バッファメモリとして使用することが多い。
【０００３】
これらのメモリでは、保有データ量（書き込んだデータ量から読み出したデータ量を減算した値）がメモリの容量を超えた場合にオーバーフローが発生してデータの欠落が生じることがあるため、オーバーフローの発生を予め報知又は抑止する試みがなされている。
【０００４】
例えば、特許文献１では、メモリの保有データ量が、予め任意に設定された閾値以上となったときに、オーバーフローの発生が近いことを示す警報を出力する技術が開示されている。
【０００５】
また、特許文献２では、オーバーフローが発生する確率が予め規定した値より小さくなるように、データの受け入れ及び廃棄に係る閾値を動的に算出して再設定する技術が開示されている。
【特許文献１】特開平４−２１１２３号公報
【特許文献２】特開２０００−１３８６８１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に開示された技術では、受信するデータのサイズに合わせて閾値を変更する必要があるため、これを処理するＣＰＵの負荷が増大して、ソフトウエアでの待ちが多発する等の問題がある。また、特許文献２に開示された技術では、オーバーフローが発生する確率を下げることはできても、発生そのものを回避又は抑止することはできない、という問題がある。
【０００７】
本発明は斯かる事情に鑑みてなされたものであり、その目的とするところは、ＦＩＦＯメモリ（リングバッファメモリを含む）の保有データ量（又は空き容量）より逐次算出した閾値に基づいてＦＩＦＯメモリのオーバーフローに係る制御を行うことにより、ＣＰＵの負荷を増すことなく、受信データのオーバーフローを抑止することが可能なメモリ制御装置を提供することにある。
【課題を解決するための手段】
【０００８】
本発明に係るメモリ制御装置は、受信したデータをＦＩＦＯメモリに書き込み、該ＦＩＦＯメモリの保有データ量（又は空き容量）及び所定閾値の比較結果に基づいて前記ＦＩＦＯメモリのオーバーフローに係る制御を行うメモリ制御装置において、前記ＦＩＦＯメモリへアクセスする都度、前記保有データ量（又は空き容量）を更新する更新手段を備え、該更新手段が所定回数更新する都度、前記所定閾値を、前記所定回数内における保有データ量の最大値（又は空き容量の最小値）とするように構成してあることを特徴とする。
【０００９】
本発明にあっては、ＦＩＦＯメモリへアクセスする都度、更新手段が、保有データ量（又は空き容量）を更新する。更新手段が所定回数更新する都度、前記所定回数内に更新した保有データ量の最大値（又は空き容量の最小値）を閾値とする。
これにより、閾値を算出する期間内における保有データ量の最大値(又は空き容量の最小値)と、更新した最新の保有データ量（又は空き容量）とを比較した結果に基づいて、オーバーフローに係る制御を行う。
【００１０】
本発明に係るメモリ制御装置は、受信したデータをＦＩＦＯメモリに書き込み、該ＦＩＦＯメモリの保有データ量（又は空き容量）及び所定閾値の比較結果に基づいて前記ＦＩＦＯメモリのオーバーフローに係る制御を行うメモリ制御装置において、前記ＦＩＦＯメモリへアクセスする都度、前記保有データ量（又は空き容量）を更新する更新手段と、計時手段とを備え、該計時手段が所定時間を計時する都度、前記所定閾値を、前記所定時間内に前記更新手段が更新した保有データ量の最大値（又は空き容量の最小値）とするように構成してあることを特徴とする。
【００１１】
本発明にあっては、ＦＩＦＯメモリへアクセスする都度、更新手段が、保有データ量（又は空き容量）を更新する。計時手段が所定時間を計時する都度、前記所定時間内に更新した保有データ量の最大値（又は空き容量の最小値）を閾値とする。
これにより、閾値を算出する期間内における保有データ量の最大値と、更新した最新の保有データ量とを比較した結果(又は閾値を算出する期間内における空き容量の最小値と、更新した最新の空き容量とを比較した結果)に基づいて、オーバーフローに係る制御を行う。すなわち、ＦＩＦＯメモリの保有データ量を常に監視し、ＦＩＦＯメモリへのデータの送信を停止させる停止信号を送信するか否かを保有データ量に基づいて判定するための閾値の設定を行うので、デュアルポートメモリのオーバーフローを抑止することができる。
【００１２】
本発明に係るメモリ制御装置は、前記更新手段が更新した保有データ量（又は空き容量）が前記閾値以上（又は前記閾値未満）であるか否かを判定する判定手段と、該判定手段が、前記閾値以上（又は前記閾値未満）と判定した場合、前記ＦＩＦＯメモリへのデータの送信を停止させる信号を外部へ送出する停止信号送出部とを備えることを特徴とする。
【００１３】
本発明にあっては、判定手段が、更新手段が更新した保有データ量(又は空き容量)が閾値以上（又は閾値未満）であるか否かを判定する。閾値以上（又は閾値未満）と判定された場合、停止信号送出部がＦＩＦＯメモリへのデータの送信を停止させる信号を外部へ出力する。
これにより、更新した最新の保有データ量（又は空き容量）が、閾値を算出した期間内における保有データ量(又は空き容量)の最大値以上(又は最小値未満)となったときに、データの送信側へ送信を停止させるための信号を出力する。このように、更新した最新の保有データ量（又は空き容量）が、閾値以上（又は閾値未満）となったときに、データ送信側の送信を停止させ、受信エラー（又は送信エラー）が発生してデータが欠落するのを防止する。従って、デュアルポートメモリのオーバーフローを抑止することができる。
【００１４】
本発明に係るメモリ制御装置は、前記閾値から所定データ量を減算（又は前記閾値に所定データ量を加算）して第２の閾値を算出する手段を備え、前記判定手段は、前記更新手段が更新した保有データ量（又は空き容量）が前記第２の閾値以上（又は前記第２の閾値未満）であるか否かを判定するように構成してあることを特徴とする。
【００１５】
本発明にあっては、先に算出した閾値から所定データ量を減算（又は閾値に所定データ量を加算）して第２の閾値を算出し、判定手段は、保有データ量（又は空き容量）が第２の閾値以上（又は第２の閾値未満）であるか否かを判定する。
これにより、判定手段が判定に要する時間と停止信号送出部が信号の送出に要する時間と停止信号が送出されてからデータの受信が停止されるまでの時間とを合計した時間内に受信するデータ量が予め与えられたときは、判定手段が判定を開始してからデータの受信が停止されるまでの間に受信するデータ量だけ第２の閾値を閾値より低く（又は閾値より高く）して更新する。また、判定手段は、第２の閾値を新たに閾値として扱う。このように、保有データ量（又は空き容量）が閾値以上（又は閾値未満）であるか否かを判定するに際し、判定手段が判定を開始してからデータの受信が停止されるまでの間に受信するデータ量だけ閾値が低く設定される。従って、デュアルポートメモリのオーバーフローを確実に防止することができる。
【００１６】
本発明に係る画像処理装置は、上記何れかに記載のメモリ制御装置と、該メモリ制御装置から読み出されたデータが画像データである場合、該画像データに基づいて画像を処理する手段とを備えることを特徴とする。
【００１７】
本発明にあっては、メモリ制御装置から読み出された画像データに基づいて画像を処理する。
これにより、画像処理装置は、データの欠落が抑止された画像データを処理することができる。
【００１８】
本発明に係る画像形成装置は、上記に記載の画像処理装置と、該画像処理装置で処理された画像に基づいて出力画像を形成する手段とを備えることを特徴とする。
【００１９】
本発明にあっては、画像処理装置で処理された画像に基づいて出力画像を形成する。
これにより、画像形成装置は、画像の劣化が抑止された出力画像を形成することができる。
【発明の効果】
【００２０】
本発明によれば、ＦＩＦＯメモリの保有データ量（又は空き容量）を所定回数又は所定時間が経過するまで更新し、経過の都度、更新した期間内における保有データ量の最大値（又は空き容量の最小値）を閾値とする。
これにより、閾値を算出する期間内における保有データ量の最大値（又は空き容量の最小値）と、更新した最新の保有データ量（又は空き容量）とを比較した結果に基づいて、オーバーフローに係る制御を行う。従って、前記制御をハードウエアで実行したときは、ＣＰＵの負荷を増すことなく、受信データのオーバーフローを抑止することが可能となる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明に係るメモリ制御装置、画像処理装置及び画像形成装置をデジタルカラー複写機に適用した実施の形態について詳述する。
（実施の形態１）
図１は、本発明の実施の形態１に係るデジタルカラー複写機の構成を示すブロック図である。図中１００はデジタルカラー複写機であり、デジタルカラー複写機１００は、ＣＣＤを有するスキャナからなるカラー画像入力装置２０、ＡＳＩＣ（Application Specific Integrated Circuit）により構成されたカラー画像処理装置（本発明に係る画像処理装置）３０、出力画像を形成する手段としてのカラー画像出力装置４０、及びＬＣＤからなり各種操作を行うための操作パネル５０を備える。
【００２２】
カラー画像入力装置２０で原稿画像からの反射光像を読み取ることにより得られたＲＧＢのアナログ信号からなる画像データは、カラー画像処理装置３０に入力されて所定の処理が行われ、ＣＭＹＫ（Ｃ：シアン、Ｍ：マゼンタ、Ｙ：イエロー、Ｋ：黒）のデジタルカラー信号としてカラー画像出力装置４０へ出力される。カラー画像出力装置４０は、原稿画像の画像データを、写真方式、インクジェット方式等の出力方式により記録紙上に出力する。また、カラー画像出力装置４０は、ディスプレイ等の表示装置であってもよい。
【００２３】
カラー画像処理装置３０は、カラー画像入力装置２０から入力されたＲＧＢのアナログ信号をデジタル信号に変換するＡ／Ｄ変換部３００、Ａ／Ｄ変換部３００から出力されたＲＧＢのデジタル信号より各種の歪を除去するシェーディング補正部３０１、シェーディング補正部３０１から出力されたＲＧＢの濃度信号より、読み取られた原稿の原稿種別を判別する原稿種別自動判定部３０２、及び原稿種別自動判定部３０２から出力されたＲＧＢの信号に対して下地濃度の除去とコントラスト等の画質調整を施す入力階調補正部３０３を備える。入力階調補正部３０３が出力したＲＧＢの信号は、領域分離処理部３０４に与えられる。領域分離処理部３０４は、入力画像中の各画素を文字領域、網点領域、及び写真領域の何れかに分離すると共に、分離したが画素がどの領域に属しているかを示す領域識別信号を、後述する後段の各部に与える。
【００２４】
カラー画像処理装置３０は、また、領域分離処理部３０４から出力されたＲＧＢの信号よりＣＭＹ色材の分光特性に基づいた色濁りの補正を行う色補正部３０５、色補正部３０５が出力するＣＭＹの３色信号からＣＭＹＫの４色信号を生成する黒生成下色除去部３０６、黒生成下色除去部３０６から出力されたＣＭＹＫの４色信号に対してデジタルフィルタにより空間周波数特性を補正する空間フィルタ処理部３０７、空間フィルタ処理部３０７から入力されたＣＭＹＫの４色信号を網点面積率に変換する出力階調補正部３０８、及び出力階調補正部３０８から入力されたＣＭＹＫの４色信号より画像を画素に分離して夫々の階調を再現できるように階調再現処理を施す階調再現処理部３０９を備える。
【００２５】
原稿種別自動判定部３０２は、入力側に本発明に係るメモリ制御装置１を有しており、シェーディング補正部３０１から出力されたＲＧＢの信号は、一旦メモリ制御装置１のデュアルポートメモリ３（図２参照）に格納され、所定のタイミングで読み出される。
更に、カラー画像出力装置４０は、入力側に本発明に係るメモリ制御装置１を有しており、階調再現処理部３０９が出力したＣＭＹＫの４色データは、一旦メモリ制御装置１のデュアルポートメモリ３に格納され、所定のタイミングで読み出される。
【００２６】
図２は、本発明の実施の形態１に係るメモリ制御装置１のハードウエア構成を示すブロック図である。メモリ制御装置１は、一方の外部インタフェース部２から受信したデータをデュアルポートメモリ３に書き込む書込制御部４と、他方の外部インタフェース部５を介して与えられるデータの読出要求に応じて、デュアルポートメモリ３に書き込まれたデータを外部へ読み出す読出制御部６とを備える。書込制御部４及び読出制御部６は、デュアルポートメモリ３に対して夫々書き込んだデータ数及び読み出したデータ数をカウントするための書込カウンタ７及び読出カウンタ８を有している。書込カウンタ７の書込カウント値及び読出カウンタ８の読出カウント値は、デュアルポートメモリ３の保有データ量及び空き容量を算出するメモリ残量算出部９に与えられる。
【００２７】
メモリ制御装置１は、また、デュアルポートメモリ３の総容量及び保有データ量に基づいてフロー制御のための閾値を算出する閾値算出部１０と、算出した閾値を記憶する閾値レジスタ１１と、記憶された閾値から第２の閾値を算出する第２の閾値算出部１２と、第２の閾値及び前記保有データ量を閾値比較部１３で比較した結果に基づいて外部へ停止信号を送出する停止信号送出部１４とを備える。
【００２８】
図３は、メモリ制御装置１における閾値の算出及びフロー制御の処理内容を示す説明図である。書込カウンタ７は、書込制御部４がデュアルポートメモリ３にデータを書き込む都度、保持している書込カウント値を１ずつカウントアップする。読出カウンタ８は、読出制御部６がデュアルポートメモリ３からデータを読み出す都度、保持している読出カウント値を１ずつカウントダウンする。
メモリ残量算出部９は、書込カウント値及び読出カウント値の内容より、保有データ量を次の式（１）によって算出して閾値比較部１３に与えると共に、空き容量を式（２）によって算出する。
尚、総メモリ容量は、固定値として所定のレジスタに書き込まれているものとする。
【００２９】
保有データ量＝書込カウント値−読出カウント値・・・（１）
空き容量＝総メモリ容量−保有データ量・・・・・・・（２）
【００３０】
メモリ残量算出部９は、また、式（１）及び式（２）によって保有データ量及び空き容量を所定回数（例えば１０回）算出する間に、空き容量の最小値を算出し、算出した空き容量の最小値を閾値算出部１０に与える。
閾値算出部１０は、閾値を次の式（３）によって算出し、算出した閾値を閾値レジスタ１１に与えて記憶させる。この場合の閾値は、保有データ量の最大値に相当する。
【００３１】
閾値＝総メモリ容量−空き容量の最小値・・・・・・・（３）
【００３２】
第２の閾値算出部１２は、閾値レジスタ１１より読み出した閾値から予め与えられた閾値オフセットを減算し、第２の閾値を算出して閾値比較部１３に与える。
この場合の閾値オフセットは、閾値比較部１３が比較を開始した時から、外部の装置がデータの送信を停止するまでの時間内に、外部から受信するデータ量に相当するものである。
【００３３】
閾値比較部１３は、第２の閾値算出部１２から与えられた第２の閾値と、メモリ残量算出部９から与えられた保有データ量とを比較し、比較結果を停止信号送出部１４に与える。
停止信号送出部１４は、保有データ量が閾値以上であることを示す比較結果を与えられた場合、外部へ送出する停止信号をオンする。また、保有データ量が閾値未満であることを示す比較結果を与えられた場合は、外部へ送出する停止信号をオフする。
【００３４】
図４は、書込制御部４及び読出制御部６のハードウエア処理手順を示すフローチャートである。以下の処理は、書込制御部４が一方の外部からデータを受信する都度、又は読出制御部６が他方の外部からデータの読出要求を受ける都度実行される。
尚、保有データ量は図示しないレジスタに保持し、書込カウント値、読出カウント値及び保有データ量には、メモリ制御装置１が外部からデータを受信する前に初期値として「０」を書き込んであるものとする。
【００３５】
書込制御部４は、外部からデータを受信したか否かを判定する（ステップＳ１１）。データを受信したと判定した場合（ステップＳ１１：ＹＥＳ）、書込制御部４は、デュアルポートメモリ３に受信したデータを書き込み（ステップＳ１２）、書込カウント値の内容に１を加算して（ステップＳ１３）処理を終了する。
【００３６】
書込制御部４が外部からデータを受信していないと判定した場合（ステップＳ１１：ＮＯ）、読出制御部６は、外部からデータの読出要求を受けたか否かを判定する（ステップＳ１４）、読出制御部６がデータの読出要求を受けていないと判定した場合（ステップＳ１４：ＮＯ）、書込制御部４及び読出制御部６は、処理をステップＳ１１に戻す。
【００３７】
読出制御部６がデータの読出要求を受けていると判定した場合（ステップＳ１４：ＹＥＳ）、読出制御部６は、保有データ量が０であるか否かを判定する（ステップＳ１５）。０であると判定した場合（ステップＳ１５：ＹＥＳ）、書込制御部４及び読出制御部６は、処理をステップＳ１１に戻す。０でないと判定した場合（ステップＳ１５：ＮＯ）、読出制御部６は、デュアルポートメモリ３からデータを読み出し（ステップＳ１６）、書込カウント値の内容に１を加算して（ステップＳ１７）処理を終了する。
尚、ステップＳ１５では、保有データ量が０でない場合にデュアルポートメモリ３から読み出しを行っているが、保有データ量が所定量以上である場合に読み出しを行うようにしてもよい。この場合、所定量以上のデータがデュアルポートメモリ３に書き込まれた後に、読み出しが許可されるようになる。
【００３８】
図５は、メモリ残量算出部９及び閾値算出部１０のハードウエア処理手順を示すフローチャートである。以下の処理は、書込制御部４及び読出制御部６が図４の処理手順に従ってデュアルポートメモリ３に読み書きした都度実行される。
尚、ｍｉｎ空き容量（空き容量の最小値）及びアクセスカウント値は、夫々図示しないレジスタに保持してあり、メモリ制御装置１が外部からデータを受信する前に初期値として夫々「総メモリ容量」及び「０」を書き込んであるものとする。
【００３９】
メモリ残量算出部９は、式（１）によって保有データ量を算出する（ステップＳ２１）と共に、式（２）によって空き容量を算出する（ステップＳ２２）。その後、メモリ残量算出部９は、ｍｉｎ空き容量をレジスタから読み出して（ステップＳ２３）、空き容量と比較し（ステップＳ２４）、空き容量がｍｉｎ空き容量以下であるか否かを判定する（ステップＳ２５）。ｍｉｎ空き容量以下であると判定した場合（ステップＳ２５：ＹＥＳ）、メモリ残量算出部９は、空き容量の内容をｍｉｎ空き容量のレジスタに書き込む（ステップＳ２６）。
【００４０】
ｍｉｎ空き容量を超えると判定した場合（ステップＳ２５：ＮＯ）又はステップＳ２６の処理を終えた場合、メモリ残量算出部９は、アクセスカウント値の内容に１を加算する（ステップＳ２７）。その後、メモリ残量算出部９は、アクセスカウント値の内容が１０になったか否かを判定する（ステップＳ２８）。１０になっていないと判定した場合（ステップＳ２８：ＮＯ）、メモリ残量算出部９は、処理を終了する。
尚、ステップＳ２８での判定値は１０に限定されるものではない。
【００４１】
アクセスカウント値の内容が１０になったと判定された場合（ステップＳ２８：ＹＥＳ）、閾値算出部１０は、式（３）によって閾値を算出し（ステップＳ２９）、算出した閾値を閾値レジスタ１１に記憶させる（ステップＳ３０）。そして、閾値算出部１０は、アクセスカウント値の内容を「０」に初期化する（ステップＳ３１）と共に、ｍｉｎ空き容量の内容を「総メモリ容量」に初期化して（ステップＳ３２）処理を終了する。
【００４２】
図６は、第２の閾値算出部１２、閾値比較部１３及び停止信号送出部１４のハードウエア処理手順を示すフローチャートである。以下の処理は、書込制御部４及び読出制御部６が図４の処理手順に従ってデュアルポートメモリ３に読み書きした都度実行される。
【００４３】
第２の閾値算出部１２は、閾値レジスタ１１より閾値を読み出し（ステップＳ４１）、読み出した閾値から２５を減算して第２の閾値とする（ステップＳ４２）。閾値比較部１３は、第２の閾値と保有データ量とを比較して（ステップＳ４３）、保有データ量が第２の閾値以上であるか否かを判定する（ステップＳ４４）。
尚、ステップＳ４２では、閾値との比較結果に基づいて停止信号送出部１４が外部へ停止信号を送出し、外部の装置がデータの送信を停止するまでの時間を見越すために、算出した閾値から２５を減算しているが、この値は２５に限定されるものではない。また、ステップ４３では、閾値レジスタ１１に記憶された閾値と保有データ量とを比較するようにしてもよい。
【００４４】
閾値比較部１３が、第２の閾値以上であると判定した場合（ステップＳ４４：ＹＥＳ）、停止信号送出部１４は、外部へ送出する停止信号をオンして（ステップＳ４５）処理を終了する。閾値比較部１３が、第２の閾値未満であると判定した場合（ステップＳ４４：ＮＯ）、停止信号送出部１４は、外部へ送出する停止信号をオフして（ステップＳ４６）処理を終了する。
【００４５】
以上のように、本実施の形態１によれば、書込制御部又は読出制御部がデュアルポートメモリへ読み書きする都度、メモリ残量算出部がデュアルポートメモリの空き容量及び保有データ量を更新する。また、メモリ残量算出部が空き容量を１０回更新する都度、閾値算出部が保有データ量の最大値を閾値とする。
これにより、閾値を算出する期間内における保有データ量の最大値と、更新した最新の保有データ量とを比較した結果に基づいて、オーバーフローに係る制御をハードウエアによる論理回路で行う。従って、ＣＰＵの負荷を増すことなく、受信データのオーバーフローを抑止することが可能となる。
【００４６】
また、閾値比較部が、メモリ残量算出部が更新した保有データ量が、閾値レジスタに記憶された閾値又は第２の閾値以上であるか否かを判定し、以上と判定した場合、停止信号送出部がデュアルポートメモリへのデータの送信を停止させる停止信号を外部へ送出する。
従って、デュアルポートメモリのオーバーフローを抑止することが可能となる。
【００４７】
更にまた、閾値比較部が判定に要する時間、停止信号送出部が停止信号の送出に要する時間、及び停止信号が送出されてからデータの受信が停止されるまでの時間を合計した時間内に受信するデータ数（２５）が閾値オフセットとして与えられており、第２の閾値算出部が、閾値レジスタに記憶されている閾値から２５を減算して第２の閾値を算出する。そして、閾値比較部が、保有データ量が第２の閾値以上であるか否かを判定する。
これにより、停止信号を送出するための判定から実際にデータの送信が停止されるまでは、デュアルポートメモリの空きが確保される。従って、デュアルポートメモリのオーバーフローを確実に防止することが可能となる。
【００４８】
更にまた、カラー画像処理装置の原稿種別自動判別部は、メモリ制御装置から読み出されたＲＧＢの信号に基づいて画像を処理する。
従って、カラー画像処理装置は、デュアルポートメモリのオーバーフローによるデータの欠落が抑止された画像を処理することが可能となる。
【００４９】
更にまた、カラー画像出力装置は、メモリ制御装置から読み出されたＣＭＹＫの４色信号に基づいて出力画像を形成する。
従って、画像形成装置は、データの欠落による画像の劣化が抑止された出力画像を形成することが可能となる。
【００５０】
尚、本実施の形態１にあっては、本発明に係るメモリ制御装置、画像処理装置及び画像形成装置をデジタルカラー複写機に適用した例について説明したが、コピー機能、プリンタ機能及びファクシミリ通信機能等の複合的な機能を備えるデジタルカラー複合機又はモノクロ複合機に適用してもよく、単体のファクシミリ通信装置に適用してもよい。
【００５１】
また、メモリ制御装置をハードウエアによる論理回路で構成したが、ＦＰＧＡ（Field Programmable Gate Array)等のＰＬＤ（Programmable Logic Device）を用いた再構成可能論理回路で構成してもよい。
【００５２】
更にまた、メモリ残量算出部が空き容量を１０回更新する都度、閾値算出部が保有データ量の最大値を閾値とし、閾値比較部が、メモリ残量算出部が更新した最新の保有データ量が閾値以上であるか否かを判定しているが、メモリ残量算出部が保有データ量（又は空き容量）を所定回数更新する都度、閾値算出部が保有データ量の最大値（又は空き容量の最小値）を閾値としてもよい。この場合、閾値比較部は、メモリ残量算出部が更新した最新の保有データ量（又は空き容量）が閾値以上（又は閾値以下）であるか否かを判定すればよい。
【００５３】
更にまた、閾値比較部が、保有データ量の最大値として記憶された閾値から２５を減算して第２の閾値を算出し、メモリ残量算出部によって更新された最新の保有データ量が第２の閾値以上であるか否かを判定しているが、空き容量の最小値として記憶された閾値に２５を加算して第２の閾値を算出し、メモリ残量算出部によって更新された最新の空き容量が第２の閾値以下であるか否かを判定するようにしてもよい。
【００５４】
（実施の形態２）
実施の形態２は、実施の形態１において空き容量を所定回数更新する都度、保有データ量の最大値を閾値とするのに対し所定時間を計時する都度、所定時間内に更新した保有データ量の最大値を閾値とする形態である。図７は、本発明の実施の形態２に係るメモリ制御装置１ａのハードウエア構成を示すブロック図であり、図８は、メモリ制御装置１ａにおける閾値の算出及びフロー制御の処理内容を示す説明図である。メモリ制御装置１ａは、デュアルポートメモリ３の保有データ量及び空き容量を算出するメモリ残量算出部９ａと、デュアルポートメモリ３の総容量及び保有データ量に基づいてフロー制御のための閾値を算出する閾値算出部１０ａと、所定時間（本実施の形態２では１０ｍｓ）を計時する計時部１５とを備える。
【００５５】
メモリ残量算出部９ａは、書込カウント値及び読出カウント値の内容より、保有データ量を式（１）によって算出して閾値比較部１３に与えると共に、空き容量を式（２）によって算出する。メモリ残量算出部９ａは、また、式（１）及び式（２）によって保有データ量及び空き容量を算出する間に空き容量の最小値を逐次算出し、算出した空き容量の最小値を閾値算出部１０ａに与える。
【００５６】
閾値算出部１０ａは、計時部１５が所定時間を計時する都度、閾値を式（３）によって算出し、算出した閾値を閾値レジスタ１１に与えて記憶させる。この場合の閾値は、保有データ量の最大値に相当する。
以下の処理内容は図３と同様であり、その説明を省略する。
【００５７】
図９は、メモリ残量算出部９ａのハードウエア処理手順を示すフローチャートである。以下の処理は、書込制御部４及び読出制御部６が図４の処理手順に従ってデュアルポートメモリ３に読み書きした都度実行される。
尚、更新レジスタの内容は、メモリ制御装置１ａが外部からデータを受信する前にクリアしてあるものとする。
【００５８】
ステップＳ５１からステップＳ５６までは、図５のステップＳ２１からステップＳ２６までと同様であり、その説明を省略する。
式（２）によって算出した空き容量がｍｉｎ空き容量を超えると判定した場合（ステップＳ５５：ＮＯ）又はステップＳ５６の処理を終えた場合、メモリ残量算出部９ａは、更新レジスタの内容をセットして（ステップＳ５７）処理を終了する。
【００５９】
図１０は、計時部１５及び閾値算出部１０ａのハードウエア処理手順を示すフローチャートである。以下の処理は、随時実行され、処理が終了する都度、再び実行されるようにしてある。
【００６０】
閾値算出部１０ａは、ｍｉｎ空き容量の内容を「総メモリ容量」に初期化する（ステップＳ６１）と共に、更新レジスタの内容をクリアする（ステップＳ６２）。その後、計時部１５は、１０ｍｓタイマの計時を開始して（ステップＳ６３）、計時が終了したか否かを判定する（ステップＳ６４）。計時が終了していないと判定した場合（ステップＳ６４：ＮＯ）、計時部１５は、計時が終了するまで待機する。
尚、計時部１５が計時する時間は、１０ｍｓに限定されない。
【００６１】
計時が終了したと判定した場合（ステップＳ６４：ＹＥＳ）、閾値算出部１０ａは、更新レジスタがセットされているか否かを判定する（ステップＳ６５）。セットされていないと判定した場合（ステップＳ６５：ＮＯ）、閾値算出部１０ａは、処理を終了する。
【００６２】
セットされていると判定した場合（ステップＳ６５：ＹＥＳ）、閾値算出部１０ａは、式（３）によって閾値を算出し（ステップＳ６６）、算出した閾値を閾値レジスタ１１に記憶させて（ステップＳ６７）処理を終了する。
【００６３】
その他、実施の形態１に対応する箇所には同様の符号を付して、その詳細な説明を省略する。
【００６４】
以上のように、本実施の形態２によれば、計時部が１０ｍｓを計時する都度、前記１０ｍｓの時間内にメモリ残量算出部が更新した保有データ量の最大値を閾値とする。
これにより、閾値を算出する期間内における保有データ量の最大値と、更新した最新の保有データ量とを比較した結果に基づいて、オーバーフローに係る制御をハードウエアによる論理回路で行う。従って、ＣＰＵの負荷を増すことなく、受信データのオーバーフローを抑止することが可能となる。
【００６５】
尚、本実施の形態２にあっては、計時部が１０ｍｓを計時する都度、前記１０ｍｓの時間内にメモリ残量算出部が更新した保有データ量の最大値を閾値としているが、計時部が所定時間を計時する都度、前記所定時間内にメモリ残量算出部が更新した空き容量の最小値を閾値としてもよい。
【図面の簡単な説明】
【００６６】
【図１】本発明の実施の形態１に係るデジタルカラー複写機の構成を示すブロック図である。
【図２】本発明の実施の形態１に係るメモリ制御装置のハードウエア構成を示すブロック図である。
【図３】メモリ制御装置における閾値の算出及びフロー制御の処理内容を示す説明図である。
【図４】書込制御部及び読出制御部のハードウエア処理手順を示すフローチャートである。
【図５】メモリ残量算出部及び閾値算出部のハードウエア処理手順を示すフローチャートである。
【図６】第２の閾値算出部、閾値比較部及び停止信号送出部のハードウエア処理手順を示すフローチャートである。
【図７】本発明の実施の形態２に係るメモリ制御装置のハードウエア構成を示すブロック図である。
【図８】メモリ制御装置における閾値の算出及びフロー制御の処理内容を示す説明図である。
【図９】メモリ残量算出部のハードウエア処理手順を示すフローチャートである。
【図１０】計時部及び閾値算出部のハードウエア処理手順を示すフローチャートである。
【符号の説明】
【００６７】
１、１ａ  メモリ制御装置
３  デュアルポートメモリ（ＦＩＦＯメモリ）
４  書込制御部
６  読出制御部
９、９ａ  メモリ残量算出部（更新手段）
１０、１０ａ  閾値算出部
１１  閾値レジスタ
１３  閾値比較部(判定手段、第２の閾値を算出する手段)
１４  停止信号送出部
１５  計時部（計時手段）
２０  カラー画像入力装置
３０  カラー画像処理装置（画像処理装置）
４０  カラー画像出力装置
１００  デジタルカラー複写機
【図１】
2010045538.tif 000003
【図２】
2010045538.tif 000004
【図３】
2010045538.tif 000005
【図４】
2010045538.tif 000006
【図５】
2010045538.tif 000007
【図６】
2010045538.tif 000008
【図７】
2010045538.tif 000009
【図８】
2010045538.tif 000010
【図９】
2010045538.tif 000011
【図１０】
2010045538.tif 000012