(57)【要約】【課題】第１の処理装置がメモリに書き込んだデータを第２の処理装置が読み出す処理を行なう情報処理装置において、第１の処理装置が煩雑な処理を行なうことなく、データ読み出し済のメモリ領域の開放を行えるようにする。【解決手段】メモリと、メモリにデータを格納する第１の処理装置と、メモリに格納されたデータを読み出す第２の処理装置とを備えた情報処理装置であって、第１の処理装置は、メモリにデータを格納する際に、データの使用状況を示す情報を、未使用である旨を示す状態で付加するとともに、メモリに格納されているデータのうち、使用状況が使用済みである旨を示しているデータが格納されているメモリ領域を開放し、第２の処理装置は、メモリからデータを読み出すと、読み出したデータの使用状況を示す情報を使用済みである旨に更新する。【選択図】  図３
2010026915.tif 000002
【特許請求の範囲】
【請求項１】
メモリと、
前記メモリにデータを格納する第１の処理装置と、
前記メモリに格納されたデータを読み出す第２の処理装置とを備えた情報処理装置であって、
前記第１の処理装置は、前記メモリにデータを格納する際に、データの使用状況を示す情報を、未使用である旨を示す状態で付加するとともに、前記メモリに格納されているデータのうち、前記使用状況が使用済みである旨を示しているデータが格納されているメモリ領域を開放し、
前記第２の処理装置は、前記メモリからデータを読み出すと、前記読み出したデータの使用状況を示す情報を使用済みである旨に更新することを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記第１の処理装置は、前記メモリにデータの使用状況を示す情報を付加したデータを格納すると、前記第２の処理装置に前記データを書き込んだ領域を通知することを特徴とする情報処理装置。
【請求項３】
請求項１に記載の情報処理装置であって、
前記第２の処理装置は、前記メモリからデータを読み出すと、データを読み出した旨を前記第１の処理装置に通知することを特徴とする情報処理装置。
【請求項４】
請求項３に記載の情報処理装置であって、
前記第２の処理装置は、前記第１の処理装置にデータを読み出した旨を通知する際に、読み出したデータの領域に関する情報は通知しないことを特徴とする情報処理装置。
【請求項５】
請求項１に記載の情報処理装置であって、
前記第１の処理装置は、自主的に前記メモリに格納されているデータを検索し、前記使用状況が使用済みである旨を示しているデータの領域を開放することを特徴とする情報処理装置。
【請求項６】
請求項１に記載の情報処理装置であって、
前記データの使用状況を示す情報は、１ビットのフラグであることを特徴とする情報処理装置。
【請求項７】
メモリと、
前記メモリにデータを格納する第１の処理装置と、
前記メモリに格納されたデータを読み出す第２の処理装置とを備えた情報処理装置であって、
前記第１の処理装置は、前記メモリにデータを格納する際に、データの残り読出回数を示す読出回数情報を、読み出される回数を設定した状態で付加するとともに、前記メモリに格納されているデータのうち、前記読出回数情報が０を示しているデータが格納されているメモリ領域を開放し、
前記第２の処理装置は、前記メモリからデータを読み出すと、前記読み出したデータの読出回数情報を１減じて更新することを特徴とする情報処理装置。
【請求項８】
請求項１〜７のいずれか１項に記載の情報処理装置であって、
前記メモリと前記第１の処理装置とは同じ基板上に配置され、前記第２の処理装置は、前記基板に接続される別の基板上に配置されていることを特徴とする情報処理装置。
【請求項９】
画像データを格納するメモリと、
画像データを生成し、前記メモリに前記画像データを格納する第１の処理装置と、
前記メモリに格納された画像データを読み出して、印刷機構に出力する第２の処理装置とを備えた画像形成装置であって、
前記第１の処理装置は、前記メモリに画像データを格納する際に、画像データの使用状況を示す情報を、未使用である旨を示す状態で付加するとともに、前記メモリに格納されている画像データのうち、前記使用状況が使用済みである旨を示している画像データが格納されているメモリ領域を開放し、
前記第２の処理装置は、前記メモリから画像データを読み出すと、前記読み出した画像データの使用状況を示す情報を使用済みである旨に更新することを特徴とする画像形成装置。
【請求項１０】
メモリと、前記メモリにデータを格納する第１の処理装置と、前記メモリに格納されたデータを読み出す第２の処理装置とを備えた情報処理装置におけるメモリ管理方法であって、
前記第１の処理装置が、前記メモリにデータを格納する際に、データの使用状況を示す情報を、未使用である旨を示す状態で付加し、
前記第２の処理装置が、前記メモリからデータを読み出すと、前記読み出したデータの使用状況を示す情報を使用済みである旨に更新し、
前記第１の処理装置が、前記メモリに格納されているデータのうち、前記使用状況が使用済みである旨を示しているデータが格納されているメモリ領域を開放することを特徴とするメモリ管理方法。
【請求項１１】
メモリと、前記メモリにデータを格納する第１の処理装置と、前記メモリに格納されたデータを読み出す第２の処理装置とを備えた情報処理装置におけるメモリ管理方法であって、
前記第１の処理装置が、前記メモリにデータを格納する際に、データの残り読出回数を示す読出回数情報を、読み出される回数を設定した状態で付加し、
前記第２の処理装置が、前記メモリからデータを読み出すと、前記読み出したデータの読出回数情報を１減じて更新し、
前記第１の処理装置が、前記メモリに格納されているデータのうち、前記読出回数情報が０を示しているデータが格納されているメモリ領域を開放することを特徴とするメモリ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置に係り、特に、第１の処理装置がメモリに書き込んだデータを第２の処理装置が読み出す処理を行なう情報処理装置に関する。
【背景技術】
【０００２】
例えば、特許文献１に記載されているように、情報処理装置においては、メモリ資源を有効活用するために、データ書き込み等の処理に必要なサイズのメモリ領域を確保し、書き込んだデータを使用し終えたらそのメモリ領域を開放するという動的なメモリ管理が行なわれている。
【０００３】
図９は、従来のメモリ管理の一例を説明する図である。ここでは、処理装置であるＣＰＵ４１０によってメモリ４３０に書き込まれたデータを、他の処理装置であるマイコン４２０が読み出すという処理を例に説明する。まず、図９（ａ）に示すように、ＣＰＵ４１０はデータ１、データ２…を順次メモリ４３０の空き領域に書き込んでいく。そして、ＣＰＵ４１０は、１つのデータを書き込むと、書き込んだ領域のアドレスをマイコン４２０に通知する。この際、データが可変長であれば更にデータサイズをマイコン４２０に通知する。アドレス（データが可変長の場合はデータサイズも）を通知されたマイコン４２０は、通知されたアドレスに記録されたデータを読み出して、読み出したデータに基づいた処理を行なっていく。
【０００４】
マイコン４２０がデータを読み出すことによりそのデータが不要になる場合には、マイコン４２０がデータを読み出した後に、ＣＰＵ４１０によってメモリ領域の開放が行なわれる。このとき、どのデータを開放すればよいか、ＣＰＵ４１０だけでは判断することができない。このため、マイコン４２０が読み出したデータが書き込まれていたメモリ領域を、ＣＰＵ４１０が開放するためには、マイコン４２０がＣＰＵ４１０に対して、読込んだデータが格納されていた領域を通知する必要がある。
【０００５】
マイコン４２０とＣＰＵ４１０との間の通信は、一般に、メモリ４３０上に設けられた通信用領域４３１を介して行なわれる。すなわち、図９（ｂ）に示すように、マイコン４２０が読込んだデータのアドレス等を読込済であるという情報とともに通信用領域４３１に読込済通知情報として書き込む。するとＣＰＵ４１０が通信用領域４３１に書き込まれた読込済通知情報に基づいてメモリ４３０の通知された領域を開放する。このような処理が、マイコン４２０によってデータが読み出される毎に繰り返されていく。
【特許文献１】特開２００７−３１０６２６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
マイコン４２０がメモリ４３０からデータを読み込んで通信用領域４３１に読込済通知情報を書き込む処理と、ＣＰＵ４１０が通信用領域４３１に書き込まれた読込済通知情報に基づいて領域開放を行なう処理とは非同期に行なわれる。このため、データの書込と読出しが連続的に行なわれる場合には、ＣＰＵ４１０が通信用領域４３１に書き込まれた読込済通知情報を参照する前に、マイコン４２０が通信用領域４３１を更新してしまうおそれがある。これを避けるために、ＣＰＵ４１０が参照後に領域開放するのを待って、通信用領域４３１を更新するようにするとマイコン４２０における処理が遅滞することになる。
【０００７】
このため、図９（ｃ）に示すように、ＣＰＵ４１０は、通信用領域４３１に読込済通知情報が書き込まれると、別途設けたスタックテーブルに通信用領域４３１に書き込まれた読込済通知情報を退避させるようにし、スタックテーブルに記録されたデータのアドレス情報等に基づいて、メモリ領域の開放を行なうようにしている。
【０００８】
しかしながら上記の手法は、スタックテーブルに読込済通知情報を退避させる煩雑な処理が必要になるのに加え、マイコン４２０からＣＰＵ４１０に対して読み出したデータのアドレス情報等を通知しなければならず、マイコン４２０とＣＰＵ４１０との間でやり取りする情報量が増えてしまうという問題がある。
【０００９】
本発明は、このような状況を鑑みてなされたものであり、第１の処理装置がメモリに書き込んだデータを第２の処理装置が読み出す処理を行なう情報処理装置において、第１の処理装置が煩雑な処理を行なうことなく、データ読み出し済のメモリ領域の開放を行えるようにすることを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するため、本発明の情報処理装置は、メモリと、前記メモリにデータを格納する第１の処理装置と、前記メモリに格納されたデータを読み出す第２の処理装置とを備えた情報処理装置であって、前記第１の処理装置は、前記メモリにデータを格納する際に、データの使用状況を示す情報を、未使用である旨を示す状態で付加するとともに、前記メモリに格納されているデータのうち、前記使用状況が使用済みである旨を示しているデータが格納されているメモリ領域を開放し、前記第２の処理装置は、前記メモリからデータを読み出すと前記読み出したデータの使用状況を示す情報を使用済みである旨に更新することを特徴とする。
【００１１】
本発明では、第１の処理装置が、データをメモリに格納する際に、使用状況を示す情報を未使用である旨を示す状態で付加し、第２の処理装置がデータを読み出した際に使用済である旨に更新し、第１の処理装置が、使用済である旨を示しているデータが格納されている領域を開放することにより、データ読み出し済のメモリ領域の開放を行なうためにスタックテーブルに読込済通知情報を退避させる等の煩雑な処理が不要になる。また、第２の処理装置は、読み出したデータの格納領域を第１の処理装置に通知する必要がないため、第２の処理装置と第１の処理装置との間でやり取りする情報量を削減することができる。ここで、データの使用状況を示す情報は、１ビットのフラグとすることができる。
【００１２】
また、前記第１の処理装置は、前記メモリにデータの使用状況を示す情報を付加したデータを格納すると、前記第２の処理装置に前記データを書き込んだ領域を通知することが望ましい。
【００１３】
また、前記第２の処理装置は、前記メモリからデータを読み出すと、データを読み出した旨を前記第１の処理装置に通知するようにしてもよい。第１の処理装置は、この通知に基づいてデータ読み出し済のメモリ領域の開放を行なうことができる。このとき、第２の処理装置は、前記第１の処理装置にデータを読み出した旨を通知する際に、読み出したデータの領域に関する情報は通知しなくてもよい。このため、第２の処理装置と第１の処理装置との間でやり取りする情報量を削減することができる。
【００１４】
ただし、第２の処理装置は、データを読み出した旨を前記第１の処理装置に通知しないようにしてもよい。この場合は、第２の処理装置と第１の処理装置との間でやり取りする情報量をさらに削減することができる。このとき、第１の処理装置は、自主的に前記メモリに格納されているデータを検索し、前記使用状況が使用済みである旨を示しているデータの領域を開放する処理を行なうようにする。
【００１５】
上記課題を解決するため、本発明の情報処理装置は、メモリと、前記メモリにデータを格納する第１の処理装置と、前記メモリに格納されたデータを読み出す第２の処理装置とを備えた情報処理装置であって、前記第１の処理装置は、前記メモリにデータを格納する際に、データの残り読出回数を示す読出回数情報を、読み出される回数を設定した状態で付加するとともに、前記メモリに格納されているデータのうち、前記読出回数情報が０を示しているデータが格納されているメモリ領域を開放し、前記第２の処理装置は、前記メモリからデータを読み出すと、前記読み出したデータの読出回数情報を１減じて更新するようにしてもよい。
【００１６】
また、より具体的な態様として、本発明の画像形成装置は、画像データを格納するメモリと、画像データを生成し、前記メモリに前記画像データを格納する第１の処理装置と、前記メモリに格納された画像データを読み出して、印刷機構に出力する第２の処理装置とを備えた画像形成装置であって、前記第１の処理装置は、前記メモリに画像データを格納する際に、画像データの使用状況を示す情報を、未使用である旨を示す状態で付加するとともに、前記メモリに格納されている画像データのうち、前記使用状況が使用済みである旨を示している画像データが格納されているメモリ領域を開放し、前記第２の処理装置は、前記メモリから画像データを読み出すと、前記読み出した画像データの使用状況を示す情報を使用済みである旨に更新することを特徴とする。
【００１７】
また、本発明の別態様によれば、メモリと、前記メモリにデータを格納する第１の処理装置と、前記メモリに格納されたデータを読み出す第２の処理装置とを備えた情報処理装置におけるメモリ管理方法であって、前記第１の処理装置が、前記メモリにデータを格納する際に、データの使用状況を示す情報を、未使用である旨を示す状態で付加し、前記第２の処理装置が、前記メモリからデータを読み出すと、前記読み出したデータの使用状況を示す情報を使用済みである旨に更新し、前記第１の処理装置が、前記メモリに格納されているデータのうち、前記使用状況が使用済みである旨を示しているデータが格納されているメモリ領域を開放することを特徴とするメモリ管理方法が提供される。
【００１８】
さらに、本発明の別態様によれば、メモリと、前記メモリにデータを格納する第１の処理装置と、前記メモリに格納されたデータを読み出す第２の処理装置とを備えた情報処理装置におけるメモリ管理方法であって、前記第１の処理装置が、前記メモリにデータを格納する際に、データの残り読出回数を示す読出回数情報を、読み出される回数を設定した状態で付加し、前記第２の処理装置が、前記メモリからデータを読み出すと、前記読み出したデータの読出回数情報を１減じて更新し、前記第１の処理装置が、前記メモリに格納されているデータのうち、前記読出回数情報が０を示しているデータが格納されているメモリ領域を開放することを特徴とするメモリ管理方法が提供される。
【発明の効果】
【００１９】
本発明によれば、第１の処理装置がメモリに書き込んだデータを第２の処理装置が読み出す処理を行なう情報処理装置において、第１の処理装置が煩雑な処理を行なうことなく、データ読み出し済のメモリ領域の開放を行えるようになる。また、第１の処理装置がメモリに書き込んだ画像データを第２の処理装置が読み出す処理を行なう画像形成装置において、第１の処理装置が煩雑な処理を行なうことなく、画像データ読み出し済のメモリ領域の開放を行えるようになる。これにより、画像形成処理速度の向上を実現することができる。
【発明を実施するための最良の形態】
【００２０】
本発明の実施の形態について図面を参照して説明する。図１は、本発明を適用した情報処理装置１０の特徴的な構成を示すブロック図である。本実施形態では、情報処理装置１０としてプリンタ等の画像形成装置を想定しているが、本発明は画像形成装置に限られず、メモリと、このメモリを利用可能な複数の処理装置を備えたパーソナルコンピュータ、通信装置、家電、ゲーム装置等の情報処理装置全般に適用することができる。
【００２１】
本図に示すように、情報処理装置１０は、メイン基板１００と、画像データ転送制御基板２００と、印刷エンジン３００とを備えている。メイン基板は、ＣＰＵ（Central Processing Unit）１１０と、他の基板あるいは他の装置と通信を行なうためのインタフェース（Ｉ／Ｆ）１２０と、ＣＰＵ１１０の作業領域として用いられるメモリ１３０とを備えおり、それぞれバス接続されている。画像データ転送制御基板２００は、画像データ転送マイコン２１０と、画像データ転送マイコン２１０の作業領域として用いられるメモリ２２０とを備えている。印刷エンジン３００は、給排紙機構、印字機高等を備え、印刷用紙に対する画像形成を行なう。ＣＰＵ１１０と画像データ転送マイコン２１０とはバス接続されており、画像データ転送マイコン２１０は、ＣＰＵ１１０を介在せずにメモリ１３０に直接アクセスしてデータを読み書きする機能を有している。
【００２２】
本実施形態において、ＣＰＵ１１０は、Ｉ／Ｆ１２０を介して取得したデータに対して所定の処理を行なって画像データとしてメモリ１３０に格納する。このデータは、例えば、接続されたＰＣから送られた印刷データ。スキャナユニットから送られた読取データ等とすることができる。画像データをメモリ１３０に格納する際に、ＣＰＵ１１０は、画像データが未使用であることを示す情報を付加して格納する。そして、画像データを格納したアドレスを画像データ転送マイコン２１０に通知する。
【００２３】
画像データ転送マイコン２１０は、メモリ１３０の通知されたアドレスから画像データを読み出して、画像データ転送制御基板２００上のメモリ２２０に格納する。そして、画像処理を施して印刷エンジン３００に出力する。また、画像データ転送マイコン２１０は、メモリ１３０から画像データを読み出す際に、メモリ１３０上の読み出した画像データに付加されている情報を使用済であることを示す情報に更新する。
【００２４】
さらに、ＣＰＵ１１０は、使用済であることを示す情報が付加されている画像データが格納されているメモリ領域を開放する処理を行なう。また、印刷エンジン３００が画像データ転送マイコン２１０から出力されたデータに基づいて印刷用紙に対して印刷を行なうことで、情報処理装置１０における画像形成処理が行なわれることになる。
【００２５】
すなわち、本実施形態においてＣＰＵ１１０は、第１の処理装置として機能し、メモリ１３０にデータを格納する際に、データの使用状況を示す情報を、未使用である旨を示す状態で付加するとともに、メモリ１３０に格納されているデータのうち、使用状況が使用済みである旨を示しているデータの領域を開放する処理を行なう。また、画像データ転送マイコン２１０は、第２の処理装置として機能し、メモリ１３０からデータを読み出すと、読み出したデータの使用状況を示す情報を使用済みである旨に更新する処理を行なう。
【００２６】
次に、図２のフローチャートを参照して、本実施形態の情報処理装置１０における印刷実行時のデータ処理手順について説明する。本図のフローチャートでは、ＣＰＵ１１０におけるデータ処理と画像データ転送マイコン２１０におけるデータ処理とを関連付けて示している。
【００２７】
印刷ジョブが開始されると、ＣＰＵ１１０は、あらかじめ定められた印刷手順にしたがって、Ｉ／Ｆ１２０を介して他基板あるいは他装置から印刷対象となるデータを取得し、所定のデータ操作を行なって画像データを生成する処理を行なう（Ｓ１０１）。所定のデータ操作は、例えば、ページ記述言語のビットマップデータへの展開、ＲＧＢ形式のＣＭＹＫ形式への変換等とすることができる。
【００２８】
ＣＰＵ１１０は、生成した画像データに、使用状況情報を付加する（Ｓ１０２）。ここで、使用状況情報は、その画像データが画像データ転送マイコン２１０から読み出されたかどうかを示す情報である。使用状況情報は、例えば、１ビットのフラグ情報とすることができ、フラグオンの状態がまだ読み出されていない未使用である旨を示し、フラグオフの状態が既に読み出された使用済である旨を示すようにすることができる。すなわち、未使用フラグとすることができる。この時点で画像データはまだ画像データ転送マイコン２１０に読み出されていないため、ＣＰＵ１１０は、未使用である旨を示すフラグオンの状態で付加するものとする。付加する領域は任意に定めることができるが、例えば、画像データのヘッダ部分に付加することができる。ただし、付加する情報を画像データと別個に画像データに関連付けて格納してもよい。
【００２９】
そして、図３（ａ）に模式的に示すように、ＣＰＵ１１０は、使用状況情報（未使用フラグ）を付加した画像データをメモリ１３０の空き領域に格納する（Ｓ１０３）。空き領域の検索は従来通り行なうことができ、格納したデータに関する情報は、従来通りメモリ領域管理テーブルを用いて管理することが望ましい。
【００３０】
画像データをメモリ１３０に格納すると、ＣＰＵ１３０は、格納した領域の先頭アドレスを画像データ転送マイコン２１０に通知する（Ｓ１０４）。ただし、格納した領域を特定できるのであれば通知する情報は先頭アドレスに限られない。ＣＰＵ１１０は、以上の処理を印刷対象となるデータが終了するまで繰り返す（Ｓ１０５）。
【００３１】
一方、画像データ転送マイコン２１０は、ＣＰＵ１１０から画像データを格納した先頭アドレスの情報を通知されると（Ｓ１１１）、メモリ１３０にアクセスして、通知された領域から画像データを読み出す（Ｓ１１２）。そして、図３（ｂ）に模式的に示すように、画像データ転送マイコン２１０は、メモリ１３０上の読み出した画像データに付加されている使用状況情報（未使用フラグ）を使用済である旨を示すフラグオフの状態に更新する（Ｓ１１３）。
【００３２】
次いで、画像データ転送マイコン２１０は、ＣＰＵ１１０に割り込み信号を送り、データ読出しを行なった旨を通知する（Ｓ１１４）。この際に、従来のような読み取ったデータが格納されていたアドレス等をＣＰＵ１３０に通知する必要はない。このため、画像データ転送マイコン２１０とＣＰＵ１１０との間でやり取りするデータ量を減らすことができる。
【００３３】
そして、画像データ転送マイコン２１０は、メモリ１３０から読み取った画像データを印刷エンジン３００に出力する（Ｓ１１５）。
【００３４】
一方、ＣＰＵ１１０は、画像データ転送マイコン２１０から割り込み信号を受信すると（Ｓ１２１）、割り込み信号を停止させるとともに、上記の画像データ生成格納処理（Ｓ１０１〜Ｓ１０５）とは別個に以下のメモリ開放処理を行なう。
【００３５】
すなわち、メモリ１３０に格納されている画像データの内、使用状況情報が使用済である旨を示すフラグオフの状態である画像データを検出する（Ｓ１２２）。これは、画像データ転送マイコン２１０が直前に読み出した画像データに限られず、フラグオフの状態である画像データを検出対象とする。
【００３６】
そして、図３（ｃ）に模式的に示すように、ＣＰＵ１１０は、検出されたフラグオフの状態である画像データが格納されているメモリ領域を開放する（Ｓ１２３）。開放されたメモリ領域には後続する画像データを格納することができるため、メモリ資源が有効活用されることになる。
【００３７】
図５は、複数の画像データを連続的に処理する場合のメモリ１３０の利用状況を模式的に示した図である。ここでは、ＣＰＵ１１０が画像データ１、画像データ２、画像データ３、画像データ４、画像データ５をメモリ１３０に順次書き込んで、画像データ転送マイコン２１０が読み出す場合のメモリ１３０の利用状況を示している。
【００３８】
本図では、画像データ１、画像データ２、画像データ３は、ＣＰＵ１１０が書き込んで、画像データ転送マイコン２１０に読み出され、既にＣＰＵ１１０により領域が開放された状態を示している。これらの領域には、後続する画像データを格納することが可能である。また、画像データ４は、ＣＰＵ１１０が書き込んで、画像データ転送マイコン２１０に読み出されたが、まだ領域が開放されていない状態を示し、画像データ５は、ＣＰＵ１１０が書き込んで、画像データ転送マイコン２１０がまだ読み出していない状態を示している。なお、図示していないが、それぞれの画像データのヘッダ部分には、ＣＰＵ１１０により未使用フラグが付加されている。
【００３９】
以上説明したように、本実施形態によれば、ＣＰＵ１１０が、画像データをメモリ１３０に格納する際に、未使用フラグをオンの状態で付加し、画像データ転送マイコン２１０が画像データを読み出した際に未使用フラグをオフにし、ＣＰＵ１１０が、未使用フラグがオフの画像データが格納されている領域を開放するようにしている。
【００４０】
これにより、読み出し済みのデータを格納しているメモリ領域の開放を行なうために、スタックテーブルに読込済通知情報を退避させる煩雑な処理が不要になる。また、画像データ転送マイコン２１０は、画像データを読み出しことをＣＰＵ１１０に通知すれば足りるため、画像データ転送マイコン２１０とＣＰＵ１１０との間でやり取りする情報量を削減することができる。
【００４１】
なお、上述の例では、画像データ転送マイコン２１０が画像データを読み取るとＣＰＵ１１０に割り込み信号を送り、画像データを読み出しことをＣＰＵ１１０に通知するようにしていたが、この割り込み処理を省くようにしてもよい。
【００４２】
図４は、画像データ転送マイコン２１０からＣＰＵ１１０への割り込み処理を省略した場合のフローチャートである。本図は、図２に示したフローチャートと異なる部分を抽出して示している。
【００４３】
すなわち、画像データ転送マイコン２１０は、処理（Ｓ１１２）において、通知されたメモリ１３０の領域から画像データを、メモリ１３０にアクセスして読み出す。そして、画像データ転送マイコン２１０は、メモリ１３０上の読み出した画像データに付加されている使用状況情報（未使用フラグ）を使用済である旨を示すフラグオフの状態に更新する（Ｓ１１３）。
【００４４】
次いで、画像データ転送マイコン２１０は、ＣＰＵ１１０に割り込み信号を送ることなく、メモリ１３０から読み取った画像データに対して所定の画像処理を行なって、印刷エンジン３００に出力する（Ｓ１１５）。このため、画像データ転送マイコン２１０とＣＰＵ１１０との間でやり取りするデータ量を一層減らすことができる。そして、メモリ１３０から読み取った画像データを印刷エンジン３００に出力する（Ｓ１１５）。
【００４５】
一方、ＣＰＵ１１０は、情報処理装置１０において印刷処理を開始すると、定期的あるいは所定のタイミングで、自主的にメモリ１３０にアクセスして、メモリ１３０に格納されている画像データの内、使用状況情報が使用済である旨を示すフラグオフの状態である画像データを検出する（Ｓ１２２）。そして、検出されたフラグオフの状態である画像データが格納されているメモリ領域を開放する（Ｓ１２３）。この処理を印刷処理が終了するまで‘Ｓ１２４：Ｙｅｓ）繰り返すことにより、ＣＰＵ１１０は、画像データ転送マイコン２１０から割り込み通知を受信することなく、読出済の画像データのメモリ領域の開放を行なうことができるようになる。
【００４６】
次に、本発明の第２実施形態について説明する。上記の実施形態では、画像データ転送マイコン２１０が画像データを１回読み出すと、その画像データは読込済として領域開放の対象となっていた。ところが、印刷処理等においては、複数部の印刷を行なう場合など、１つの画像データを複数回読み出すこともある。例えば、図６に示すように、３部の印刷を行なう場合には、メモリ１３０上の１つの画像データを３回読み出すことになる。このような場合に、毎回画像データ領域を開放して再格納すると印刷処理の生産性が落ちることになる。そこで、第２実施形態では以下のような制御を行なうものとする。なお、第２実施形態における情報処理装置も図１に示した構成と同様とすることができる。このため、同じ符号を参照して説明する。
【００４７】
図７のフローチャートを参照して、第２実施形態の情報処理装置１０における印刷実行時のデータ処理手順について説明する。上述の実施形態と共通する処理については説明を簡略化する。本図のフローチャートでも、ＣＰＵ１１０におけるデータ処理と画像データ転送マイコン２１０におけるデータ処理とを関連付けて示している。
【００４８】
印刷ジョブが開始されると、ＣＰＵ１１０は、あらかじめ定められた印刷手順にしたがって、Ｉ／Ｆ１２０を介して他基板あるいは他装置から印刷対象となるデータを取得し、所定のデータ操作を行なって画像データを生成する処理を行なう（Ｓ２０１）。
【００４９】
ＣＰＵ１１０は、生成した画像データに、読出回数情報を付加する（Ｓ２０２）。ここで、読出回数情報は、その画像データの残り読み出し回数を示す情報である。読出回数情報は、数字データとすることができる。ＣＰＵ１１０は、ユーザにより設定された印刷条件に基づいて、画像データの読み出し回数を判断し、その値を読出回数情報に設定する。例えば、印刷条件により３部印刷することが設定されている場合には、読出回数情報に３を設定して画像データに付加する。後に説明するように、読出回数情報は、画像データ転送マイコン２１０に読み出される毎に１減じられる。このため、読出回数情報が０の画像データは、画像データ転送マイコン２１０による読み取りが終了していることを示すことになる。読出回数情報を付加する領域は任意に定めることができるが、例えば、画像データのヘッダ部分に付加することができる。ただし、付加する情報を画像データと別個に画像データに関連付けて格納してもよい。
【００５０】
そして、図８（ａ）に模式的に示すように、ＣＰＵ１１０は、読出回数情報（Ｎ）を付加した画像データをメモリ１３０の空き領域に格納する（Ｓ２０３）。空き領域の検索は従来通り行なうことができ、格納したデータに関する情報は、従来通りメモリ領域管理テーブルを用いて管理することが望ましい。
【００５１】
画像データをメモリ１３０に格納すると、ＣＰＵ１３０は、格納した領域の先頭アドレスを画像データ転送マイコン２１０に通知する（Ｓ２０４）。ただし、格納した領域を特定できるのであれば通知する情報は先頭アドレスに限られない。ＣＰＵ１１０は、以上の処理を印刷対象となるデータが終了するまで繰り返す（Ｓ２０５）。
【００５２】
一方、画像データ転送マイコン２１０は、ＣＰＵ１１０から画像データを格納した先頭アドレスの情報を通知されると（Ｓ２１１）、メモリ１３０にアクセスして、通知された領域から画像データを読み出す（Ｓ２１２）。そして、図８（ｂ）に模式的に示すように、画像データ転送マイコン２１０は、メモリ１３０上の読み出した画像データに付加されている読出回数情報の読出回数Ｎの値を１減らして更新する（Ｓ２１３）。
【００５３】
読出回数情報の読出回数Ｎを１減らした結果、読出回数Ｎが０になった場合（Ｓ２１４：Ｙｅｓ）は、その画像データの読出しが終了したことになるため、画像データ転送マイコン２１０は、ＣＰＵ１１０に割り込み信号を送り、データ読出しが終了した旨を通知する（Ｓ２１５）。この際に、従来のような読み取ったデータが格納されていたアドレス等をＣＰＵ１３０に通知する必要はない。このため、画像データ転送マイコン２１０とＣＰＵ１１０との間でやり取りするデータ量を減らすことができる。そして、メモリ１３０から読み取った画像データを印刷エンジン３００に出力する（Ｓ２１６）。
【００５４】
一方、読出回数Ｎが０でない場合（Ｓ２１４：Ｎｏ）は、その画像データの読出しは終了してないため、画像データ転送マイコン２１０は、ＣＰＵ１１０に割り込み信号を送ることなく、メモリ１３０から読み取った画像データを印刷エンジン３００に出力する（Ｓ２１７）。そして、次回の画像データ読み出し処理を行なう（Ｓ２１２）。
【００５５】
ＣＰＵ１１０は、画像データ転送マイコン２１０から割り込み信号を受信すると（Ｓ２２１）、割り込み信号を停止させるとともに、上記の画像データ生成格納処理（Ｓ２０１〜Ｓ２０５）とは別個に以下のメモリ開放処理を行なう。
【００５６】
すなわち、メモリ１３０に格納されている画像データの内、読出回数情報の読出回数Ｎが０である画像データを検出する（Ｓ２２２）。これは、画像データ転送マイコン２１０が直前に読み出した画像データに限られず、読出回数Ｎが０である画像データを検出対象とする。
【００５７】
そして、図８（ｃ）に模式的に示すように、ＣＰＵ１１０は、検出された読出回数Ｎが０の画像データが格納されているメモリ領域を開放する（Ｓ２２３）。開放されたメモリ領域には後続する画像データを格納することができるため、メモリ資源が有効活用されることになる。
【００５８】
以上説明したように、第２の実施形態によれば、ＣＰＵ１１０が、画像データをメモリ１３０に格納する際に、読み出す回数を設定した状態で読出回数情報を画像データに付加し、画像データ転送マイコン２１０が画像データを読み出す毎に読出回数を１減じていき、ＣＰＵ１１０が、読出回数が０の画像データが格納されている領域を開放するようにしている。
【００５９】
これにより、読み出し済みのデータを格納しているメモリ領域の開放を行なうために、スタックテーブルに読込済通知情報を退避させる煩雑な処理が不要になる。また、画像データ転送マイコン２１０は、画像データを読み出しことをＣＰＵ１１０に通知すれば足りるため、画像データ転送マイコン２１０とＣＰＵ１１０との間でやり取りする情報量を削減することができる。
【００６０】
なお、第２実施形態においても第１実施形態と同様に画像データ転送マイコン２１０からＣＰＵ１１０への割り込み処理を省略する構成としてもよい。
【図面の簡単な説明】
【００６１】
【図１】本発明を適用した情報処理装置の特徴的な構成を示すブロック図である。
【図２】情報処理装置におけるデータ処理手順について説明するフローチャートである。
【図３】ＣＰＵのメモリへの書き込みと画像処理マイコンのメモリからの読出しを模式的に示す図である。
【図４】画像処理マイコンからＣＰＵへの割り込み処理を省略した場合のフローチャートである。
【図５】複数の画像データを連続的に処理する場合のメモリの利用状況を模式的に示した図である。
【図６】３部の印刷を行なうときの画像データの読出しを説明する図である。
【図７】第２実施形態の情報処理装置におけるデータ処理手順について説明するフローチャートである。
【図８】ＣＰＵのメモリへの書き込みと画像処理マイコンのメモリからの読出しを模式的に示す図である。
【図９】従来のメモリ管理の一例を説明する図である。
【符号の説明】
【００６２】
１０…情報処理装置、１００…メイン基板、１１０…ＣＰＵ、１２０…Ｉ／Ｆ、１３０…メモリ、２００…画像データ転送制御基板、２１０…画像データ転送マイコン、２２０…メモリ、３００…印刷エンジン、４１０…ＣＰＵ、４２０…マイコン、４３０…メモリ
【図１】
2010026915.tif 000003
【図２】
2010026915.tif 000004
【図３】
2010026915.tif 000005
【図４】
2010026915.tif 000006
【図５】
2010026915.tif 000007
【図６】
2010026915.tif 000008
【図７】
2010026915.tif 000009
【図８】
2010026915.tif 000010
【図９】
2010026915.tif 000011