(57)【要約】【課題】仮想メモリ制御を行うとメモリ利用効率を改善できるが、複数のプロセッサを有する画像処理装置では、仮想メモリ制御を行うＣＰＵに負荷が集中し、ページマッピングの為にメモリアクセスに遅れが生じてリアルタイム処理の障害になる。【解決手段】プロセッサ毎にインターフェースを設けて負荷の集中を防止し、インターフェースと別に専用の登録装置を設けて一定時間内のページマッピングを保証し、インターフェースには登録装置にページマッピングを要求する機能を与えてＣＰＵの介入なしにページの割当てと開放を行い、リアルタイムな並列処理に適したメモリ利用効率の良いメモリ管理装置を提供する。【選択図】図１
2005141637.tif 000002
【特許請求の範囲】
【請求項１】
ページングによる仮想メモリ管理を行うメモリ管理装置であって調停回路と対応登録回路と複数のプロセッサインターフェースとを備え、前記プロセッサインターフェースはアドレス変換バッファを備え、前記アドレス変換バッファは少なくとも一対の実ページと仮想ページとの対応を記憶する機能を有し、かつ前記対応に従って仮想アドレスを実アドレスに変換するものであり、前記対応登録回路は全ての実ページと仮想ページとの対応を記憶する機能を有し、前記プロセッサインターフェースは対応登録回路へのアクセスを要求する機能を有し、前記調停回路は複数のプロセッサからの前記アクセス要求を調停し、一時に一つのプロセッサインターフェースに対応登録回路にアクセス権を与えるものであり、前記アクセス権を得たプロセッサインターフェースは前記対応登録回路にアクセスして実ページと仮想ページとの対応を取得するものであり、複数のプロセッサが仮想メモリ空間にアクセスできる事を特徴とするメモリ管理装置。
【請求項２】
請求項１に記載のメモリ管理装置であって、少なくとも一つのプロセッサインターフェースはプロセッサが過去にアクセスした仮想ページの番号を記憶する機能と、前記記憶した仮想ページの番号とプロセッサがアクセスを要求している仮想ページの番号を比較する機能を有し、前記比較結果に従って前記対応登録回路にアクセスして実ページと仮想ページとの対応を登録する機能を有することを特徴とするメモリ管理装置。
【請求項３】
請求項１または２に記載のメモリ管理装置であって、少なくとも一つのプロセッサインターフェースは前記検知結果に従って前記対応登録回路にアクセスし、特にプロセッサが過去にアクセスした仮想ページと実ページの対応を抹消する機能を有することを特徴とするメモリ管理装置。
【請求項４】
請求項１乃至３のいずれかに記載のメモリ管理装置であって、前記対応登録回路は少なくともページ管理テーブルとページ検索装置を有し、前記ページ管理テーブルは全ての実ページと仮想ページとの対応を記憶するものであり、前記ページ検索装置はページ管理テーブルにアクセスして対応する仮想ページが無い実ページを検索する機能を有することを特徴とするメモリ管理装置。
【請求項５】
請求項１乃至３のいずれかに記載のメモリ管理装置であって、前記対応登録回路は少なくともページ管理テーブルと空きページテーブルとページ検索装置を有し、前記ページ管理テーブルは全ての実ページと仮想ページとの対応を記憶するものであり、前記空きページテーブルは実ページ毎に仮想ページとの対応の有無を記憶するものであり、前記ページ検索装置は空きページテーブルにアクセスして対応する仮想ページが無い実ページを検索する機能を有することを特徴とするメモリ管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はメモリ管理装置に関する。
【背景技術】
【０００２】
以下に従来のメモリ管理装置の例として特許文献１に記載されているＭＭＵを挙げる。図５は特許文献１による画像処理装置の構成を簡略化して表したものである。図５において１１が画像処理装置、１２がホストコンピューター、１３がＣＰＵ、１４が入力バッファ、１５が画像圧縮回路、１６が画像伸張回路、１７がＭＭＵ、１８がＲＡＭ、１９が出力バッファである。
【０００３】
以下、従来の構成例の動作を簡単に説明する。ホストＣＰＵ１２が画像処理装置１１に出力する画像データは、一旦入力バッファ１４が蓄える。ＣＰＵ１３は入力バッファ１４から画像データを読み出して画像圧縮回路１７に入力する。画像圧縮回路１７は入力画像データに圧縮変換を施して圧縮データにする。ＣＰＵは画像圧縮回路１７から圧縮データを取り出し、ＭＭＵ１７を経由してＲＡＭ１８に記憶する。画像を出力する際にＣＰＵ１７はＭＭＵ１７を経由してＲＡＭ１８から圧縮データを読み出し、画像伸張回路１６に入力する。画像伸張回路１６は圧縮データを伸張して元の画像データに戻す。ＣＰＵは画像伸張回路から画像データを取り出し、ＭＭＵ１７を経由してＲＡＭ１８に記憶する。更にＣＰＵは出力バッファ１９からの信号に応じてＭＭＵ１７を経由でＲＡＭ１８から画像データを読み出し、出力バッファ１９に転送する。出力バッファ１９は蓄える画像データの量に応じた信号をＣＰＵに出力するので、ＣＰＵは出力バッファ１９の出力速度に合わせて画像データの転送速度を調整できる。
【０００４】
この一連の動作において、ＣＰＵ１３が出力するアドレスは仮想アドレスであって、ＲＡＭ１８に入力するアドレスは実アドレスであり、ＭＭＵ１７の役割は仮想アドレスを実アドレスに変換することである。このアドレス変換の仕組みを図６を用いて説明する。図６は仮想アドレスと実アドレスの対応を示した図である。図６において２０が仮想アドレス、２１が実アドレス、２２が下位ビット、２３が仮想ページ番号、２４が実ページ番号である。メモリは２のＮ乗バイトを単位とするページ毎に管理されており、仮想ページと実ページにはそれぞれページ番号が付けられる。仮想アドレスの（Ｎ＋１）ビット目以上が仮想ページ番号２３であり、実アドレスの（Ｎ＋１）ビット目以上が実ページ番号２４である。下位ビット２２の部分は仮想アドレスと実アドレスで同じであり、仮想アドレスから実アドレスへの変換は仮想ページ番号を実ページ番号で置き換えることにより実行される。
【０００５】
次に従来例におけるアドレス変換の適用と、その効果を図７を用いて説明する。図７はＭＭＵのアドレス変換テーブルによって対応付けられた仮想アドレス空間のページと実アドレス空間のページの関係を示した図である。図７において、３０は仮想メモリ空間、３１は実メモリ空間、３２はページ管理テーブル、３３は仮想ページ、３４は実ページ、である。ページ管理テーブル１１は各々の仮想ページに対応する実ページの有無と、有れば実ページの番号とを記憶した表である。アドレス変換は仮想アドレスから仮想ページ番号を取り出し、ページ管理テーブルを参照して対応する実ページ番号を取得し、アドレスの上位ビットを実ページ番号に置き換えることで行なわれる。
【０００６】
ページ管理テーブルの管理と更新はＣＰＵの役目である。新たな仮想ページにアクセスする時は、ＣＰＵはページ管理テーブルにアクセスして対応する実ページの有無を確認し、もし無ければ実ページのうち仮想ページに対応していないものを探し、見つけた実ページ番号をページ管理テーブルの新たな仮想ページ番号の位置に登録する。すると、この時点からその仮想ページがアクセス可能になる。逆にＣＰＵがページ管理テーブルのある仮想ページ番号の位置の登録を削除すると、その仮想ページはアクセス不能になり、対応していた実ページは開放されて別の仮想ページに再割当てできるようになる。
【０００７】
仮想メモリ空間のうち実際にアクセス可能なのは、対応する実ページがある仮想ページだけである。逆に言えば、アクセスしない仮想ページには実ページを対応させなくてよい。これを従来例の画像処理装置に適用すると、画像データのままアクセスできる必要があるのは、それぞれの時点でプリンタに出力する部分だけであって、それ以外の部分は必要が生じる毎に圧縮データを読み出して伸張して実メモリ上に書き戻せばよく、画像データのプリンタに出力し終えた部分もアクセスすることは無く、画像データの未だホストＣＰＵから入力されていない部分もアクセスすることは無いので、必要な実メモリ空間の容量は画像データ全体を収める容量より小さくてよいことになる。
【０００８】
このように、ＭＭＵを用いることにより、ＣＰＵから見て実メモリよりも大きな容量のメモリが仮想的に存るように見せることが可能であり、大きなメモリ容量を要する信号処理を比較的小さな容量のメモリを用いて実行することが可能になる。
【特許文献１】特開平５−２２７４４４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
デジタルスチルカメラやデジタルビデオカメラのような撮像機器では、撮像回路により光電変換した画像データを処理し、更に圧縮変換してメディアに記録するまでの過程で画像データを収容するメモリを必要とする。ところが近年、画質の向上に伴って画像データの収容にますます大容量のメモリを要するようになっているので、これを仮想メモリの技術を用いて効率良く小容量のメモリに収容することが出来れば、大きなコスト削減が実現できる。しかしながら従来の構成を撮像機器に用いるには大きな難点がある。
【００１０】
前記従来の構成ではＣＰＵ３の他に信号処理回路として画像圧縮回路５、画像伸張回路６があるが、これら信号処理回路のデータの入出力は全てＣＰＵ３が行っているのでＣＰＵ３に大きな負荷が集中する。更に、各々の信号処理回路の処理速度はＣＰＵ３が行う入出力の速度で制約されるので、個々の信号処理回路の性能を向上させても、全体としての処理性能の向上に直結しない、という問題がある。
【００１１】
また、ページ管理テーブルの管理と更新はＣＰＵの役割なので、新たな仮想ページにアクセスする際には空いている実ページのサーチなどに少なからず時間を要し、この間は全体の処理が止まってしまう問題もある。
【００１２】
特許文献１に記載するコンピューター周辺機器のようなシステムでは、データを受取る側で転送速度が決められるので、全体として得られる処理速度が小さくてもシステムとして破綻する事はない。またデータの受け渡しはホストインターフェースとプリンタインターフェースにおいてハンドシェイク手順により行われるので、ページ管理テーブルの更新の為にシステム全体が一時停止するようなことがあってもデータが失われることは無い。しかしながら、デジタルスチルカメラやデジタルビデオカメラのような撮像装置は画像データを数十ナノ秒毎に取り込みつつ、遅滞無く高速に処理する必要があるので、従来の構成のように非効率で全体が時々止まってしまうようなメモリ制御システムでは正しい動作を期待できない。
【課題を解決するための手段】
【００１３】
本発明は上記課題を解決するためにページングによる仮想メモリ管理を行うメモリ管理装置であって調停回路と対応登録回路と複数のプロセッサインターフェースとを備え、前記プロセッサインターフェースはアドレス変換バッファを備え、前記アドレス変換バッファは少なくとも一対の実ページと仮想ページとの対応を記憶する機能を有し、かつ前記対応に従って仮想アドレスを実アドレスに変換するものであり、前記対応登録回路は全ての実ページと仮想ページとの対応を記憶する機能を有し、前記プロセッサインターフェースは対応登録回路へのアクセスを要求する機能を有し、前記調停回路は前記要求するプロセッサインターフェースのうち一つにアクセス権を与え、プロセッサインターフェースは前記アクセス権を得た時に前記対応登録回路にアクセスするものであり、複数のプロセッサが仮想メモリ空間にアクセスできる事を特徴とするメモリ管理装置である。
【発明の効果】
【００１４】
対応登録装置は対応の参照または削除の要求に対して必ず一定時間内に操作を完了することができ、登録の要求に対しても空きページがある限り一定時間内に操作を完了することができる。従って、撮像回路からのデータの取り込みのように遅滞が許されない極めてリアルタイム性の高い処理にも本発明のメモリ管理装置は適用可能であり、使用済みの実ページは各々のプロセッサインターフェースにより遅滞無く開放されるのでメモリを効率的に利用することが可能である。
【発明を実施するための最良の形態】
【００１５】
本発明の請求項１に記載の発明は、ページングによる仮想メモリ管理を行うメモリ管理装置であって調停回路と対応登録回路と複数のプロセッサインターフェースとを備え、前記プロセッサインターフェースはアドレス変換バッファを備え、前記アドレス変換バッファは少なくとも一対の実ページと仮想ページとの対応を記憶する機能を有し、かつ前記対応に従って仮想アドレスを実アドレスに変換するものであり、前記対応登録回路は全ての実ページと仮想ページとの対応を記憶する機能を有し、前記プロセッサインターフェースは対応登録回路へのアクセスを要求する機能を有し、前記調停回路は前記要求するプロセッサインターフェースのうち一つにアクセス権を与え、前記プロセッサインターフェースは前記アクセス権を得た時に前記対応登録回路にアクセスするものであり、複数のプロセッサが仮想メモリ空間にアクセスできる事を特徴とするメモリ管理装置であるので、アドレス変換の負荷が各プロセッサ毎のプロセッサインターフェースに分散されているのでアドレス変換がボトルネックになる事がなくなる、という作用を有する。
【００１６】
本発明の請求項２に記載の発明は、請求項１記載のメモリ管理装置であって、少なくとも一つのプロセッサインターフェースはプロセッサが過去にアクセスした仮想ページの番号を記憶する機能と、前記記憶した仮想ページの番号とプロセッサがアクセスを要求している仮想ページの番号を比較する機能を有し、前記比較結果に従って前記対応登録回路にアクセスして実ページと仮想ページとの対応を登録する機能を有することを特徴とするメモリ管理装置であり、プロセッサインターフェースが自ら実ページと仮想ページとの対応を登録するため、特定プロセッサによる対応の登録を待つ必要が無く、よって実ページと仮想ページとの対応の登録がボトルネックになることが無くなる、という作用を有する。
【００１７】
本発明の請求項３に記載の発明は、請求項１乃至２記載のメモリ管理装置であって、少なくとも一つのプロセッサインターフェースは前記検知結果に従って前記対応登録回路にアクセスし、特にプロセッサが過去にアクセスした仮想ページと実ページの対応を抹消する機能を有することを特徴とするメモリ管理装置であり、アクセスが終わった実ページをプロセッサインターフェースが直ちに開放するため、不必要に実ページが拘束されることがなくなる、という作用を有する。
【００１８】
本発明の請求項４に記載の発明は、請求項１乃至３記載のメモリ管理装置であって、前記対応登録回路は少なくともページ管理テーブルとページ検索装置を有し、前記ページ管理テーブルは全ての実ページと仮想ページとの対応を記憶するものであり、前記ページ検索装置はページ管理テーブルにアクセスして対応する仮想ページが無い実ページを検索する機能を有することを特徴とするメモリ管理装置であり、ページ検索装置をページ管理テーブルと一体化することによりページ検索の為の回路の総和を小さくし、かつ検索速度を高速化することが出来る、という作用を有する。
【００１９】
本発明の請求項５に記載の発明は、請求項４記載のメモリ管理装置であって、前記ページ検索装置は前記プロセッサインターフェースからのアクセスが無い期間にページ管理テーブルにアクセスし、対応する仮想ページが無い実ページを検索する機能を有することを特徴とするメモリ管理装置であり、プロセッサインターフェースからのアクセスが無い期間を利用して、プロセッサインターフェースからの要求に先立って対応する仮想ページが無い、空いている実ページを検索しておくことにより、プロセッサインターフェースから空いている実ページの検索を要求された時に直ちに実ページ番号を応答する事が可能になり、実ページと仮想ページとの対応の登録の際にプロセッサインターフェースが待たされる時間を短縮できる、という作用を有する。
（実施の形態）
以下、図１乃至図５を参照して本発明の実施例を詳細に説明する。図１は本発明によるメモリ管理装置を用いたデジタルスチルカメラの構成を示すブロック図である。図１において１は撮像回路、２はＹＣ処理回路、３は圧縮処理回路、４は記録回路、５はＣＰＵ、６はＭＭＵ、７はメモリ回路であり、このうちＭＭＵ６が本発明によるメモリ管理装置である。１乃至５の回路は各々メモリ回路７にアクセスする機能を備えており、メモリ回路７へのアクセスは全てＭＭＵ６を介して行われる。
【００２０】
以下、図１を用いてデジタルスチルカメラとしての動作を簡単に説明する。撮像回路１はＣＣＤなどの光電変換素子を備えており、入射光の像を入力画像データに変換する。撮像回路１が出力する入力画像データはＭＭＵ６経由でメモリ回路７に記憶する。ＹＣ処理回路２はＭＭＵ６経由でメモリ回路７から入力画像データを読み出して圧縮に適したＹＣデータに変換し、再びＭＭＵ６経由でメモリ回路７に書き戻す。圧縮処理回路３はＭＭＵ６経由でメモリ回路７からＹＣデータを読み出して圧縮変換を施し、生成した圧縮ファイルを再びＭＭＵ６経由でメモリ回路７に書き戻す。記録回路４はＭＭＵ６経由でメモリ回路７から圧縮ファイルを読み出してフラッシュメモリに保存する。ＣＰＵは図１の１乃至４の回路を制御するとともに、ＭＭＵ６経由でメモリ回路７にアクセスし、圧縮ファイルのヘッダ部の操作などを行う。図１の１乃至４の回路はＣＰＵと独立に動作することが可能であり、特に撮像回路１とＹＣ処理回路２と圧縮処理回路３はＣＰＵの介在なしに１画面分の処理を実行できる。ＭＭＵ６はアクセスの際にアドレス変換を行い、アドレス変換に要する時間の間はアドレスの中継を保留し、アドレス変換に成功した場合のみメモリ回路７にアクセスを中継する。メモリ回路７は複数のアクセス要求を受付可能なメモリシステムであって、図１の１乃至４の回路は独立かつ並列にメモリにアクセスできる。
【００２１】
図２はＭＭＵの構成と特に調停回路の役割を説明するブロック図である。図２において４０乃至４４はプロセッサインターフェース、４５は調停回路、４６は対応登録回路である。以下、図２を用いて調停回路の役割を説明する。
【００２２】
本構成ではメモリにアクセスするプロセッサと同数のプロセッサインターフェースを設け、それぞれがアドレス変換を行う機能と対応登録装置にアクセスする機能を備える。各々のプロセッサは独立に動作するため、対応登録装置へのアクセスが同時に発生することがある。そのような場合に複数の要求を調停し、一度に一つずつアクセスを実行させるのが調停回路の役目である。図２では４０と４１と４３のプロセッサから調停回路への矢印が実線で表しており、これは三つの要求が同時に発生した場合を表わしたものである。調停回路における優先順位の制御は各種の方法があるが、この実施例ではプロセッサインターフェースの優先順位を固定する方法を採っており、要求したプロセッサインタースのうち最も優先順位が高いものに対してアクセス権を与えるよう制御している。図２では調停回路４５からプロセッサインターフェース４１に向かう矢印が実線で表してあり、これはアクセス権の付与を表したものである。図２の例は調停の結果、プロセッサインターフェース４１だけがアクセス権を得て対応登録装置４６にアクセスしている様子を表している。
【００２３】
図３はプロセッサインターフェースの構成例を示した図である。図３において５０はプロセッサ、５１は一個のプロセッサインターフェース、５２は調停回路、５３は対応登録装置、５４はメモリ装置、５５は仮想アドレスのアドレス有効信号、５６はアドレス下位ビット、５７は仮想アドレス上位ビット、５８は制御回路、５９と６０と６３はレジスタ、６１は実アドレスの上位ビット、６２は実アドレスのアドレス有効信号、６４はセレクタ、６５は実ページ番号である。
【００２４】
以下、図３を用いてプロセッサインターフェースのアドレス変換に伴う動作を説明する。プロセッサインターフェースの制御回路５８はプロセッサ５０が出力する仮想アドレスのアドレス有効信号を監視し、アドレスが有効である場合には仮想アドレス上位ビット５７とレジスタ５９が記憶する仮想ページ番号を比較する。レジスタ５９は制御回路５８の制御により直前のアクセスにおける仮想アドレス上位ビット５７を仮想ページ番号として記憶している。従って比較結果が一致である場合には仮想アドレス上位ビットが前回のアクセスと同じであった事になる。レジスタ６０は制御回路５８の制御により前回のアクセスにおける実ページ番号を記憶し、これを実アドレス上位ビット６１として出力しているので、前記比較結果が一致であるなら直ちに実アドレスの有効信号６２を出力する。その結果、メモリ回路５４では実アドレスに対するアクセスが行われる。
【００２５】
先の比較結果が不一致である場合は、仮想アドレス上位ビット５７が前回のアクセスと違っているので、新しい仮想ページ番号に対応する新しい実ページ番号を取得する必要がある。それには対応登録装置へのアクセスが必要なので制御回路５８は先ず調停回路５２にアクセス権を要求し、アクセス権が得られるまで待つ。朝廷回路５２からアクセス権が与えられたなら制御装置５８はセレクタ６４を制御して仮想アドレス上位ビット５７を仮想ページ番号６５として対応登録回路５３に出力させ、同時に登録装置５３に対応参照要求コードを出力する。対応登録装置５３は対応参照要求コードに応じて仮想ページ番号６５に対応する実ページ番号６６を出力する機能を有する。対応登録装置５３から実ページ番号６６が得られたなら、これをレジスタ６０に記憶し、同時にレジスタ６３にレジスタ５９の内容を退避し、更に同時に仮想アドレス上位ビット５７をレジスタ５９に記憶する。すると仮想アドレス上位ビット５７とレジスタ５９の出力は一致するので、この時点で実アドレスの有効信号６２を出力する。
【００２６】
プロセッサ５０が図１における記録回路４であれば、アクセスし終えた仮想ページにはそれ以降アクセスする必要が無いので、直ちに実ページを開放する。レジスタ５９はそのために直前の仮想ページ番号を記憶しており、制御回路５８は実ページ番号６６の保存後、直ちにセレクタ６４をレジスタ６３の出力に切替えて直前の仮想ページ番号を対応登録装置に出力し、同時に制御装置５８は登録装置５３に対応削除要求コードを出力する。対応登録装置５３は対応削除要求コードに応じて仮想ページ番号６５で指定された対応を解消する機能を有する。
【００２７】
プロセッサ５０が図１における撮像回路１であれば、アクセスした仮想ページに対応する実ページが無い場合にも遅滞無くアクセスを継続する必要がある。そのため制御回路５８は仮想ページ番号６６が対応登録回路５３に出力されるのと同時に対応登録回路５３に対応登録要求コードを出力する。対応登録回路５３は対応登録要求コードに応じて対応関係の無い実ページを要求された仮想ページに対応付ける機能を有する。
【００２８】
図４は本実施例における対応登録装置の構成を説明するブロック図である。図４において５３は対応登録装置、７０はセレクタ、７１は制御装置、７３は対応テーブル、７４は有効ビットテーブル、７５は空きページテーブル、７６は選択された要求コード、７７は選択された仮想ページ番号、７９は実ページ番号、８０は有効ビット、８１は応答コード、８２はローダブルカウンタ、８３は番地、８５は３２ビットデータ、８６は空きページ番号である。以下、図４を用いて対応登録装置の動作を説明する。
【００２９】
セレクタ７０は複数のプロセッサインターフェースからの入力のうち、有効な要求コードを伴う入力を選択して出力する。選択された仮想ページ番号７７は対応テーブル７３と有効ビットテーブル７４にアドレスとして入力される。対応テーブル７３は仮想ページ番号に対応する実ページ番号を、有効ビットテーブル７４は仮想ページ番号に対応する実ページの有無を各々記憶しており、選択された仮想ページ番号７７に対応する実ページ番号７９と、有効ビット８０を出力する。ここで有効ビットは１であれば有効である。制御装置７１は有効ビット８０を監視し、１であれば成功コードを応答コード８１として出力し、０であれば失敗コードを出力する。応答コード８１はセレクタ７０により有効な要求コードを出力しているプロセッサインターフェースだけに対して出力される。実ページ番号７９は全てのプロセッサインターフェースに対して出力され、成功コードを受取ったプロセッサインターフェースが受信する。
【００３０】
要求コード７６が対応削除要求コードであれば、制御装置７１は有効ビットテーブル７４に０を書き込むと同時に、対応テーブル７３が出力する実ページ番号７９をローダブルカウンタ８２にロードさせる。ここでローダブルカウンタ８２は制御信号８４の指示によりロードとインクリメントの一方を行う機能を有し、インクリメントにおいてはＬＳＢから６ビット目以上の上位ビットをカウントアップするので、出力は３２ずつ増加する。次に制御装置７１は有効ビットテーブルの操作を行う。有効ビットテーブル７４は全ての実ページ番号について対応する仮想ページの有無を各１ビットで記憶するものであり、３２ビット幅のＲＡＭに収められている。各々のビットは１であれば対応ありを示し、番地とビット位置により指定できる。ローダブルカウンタ８２の値は制御回路７１に入力され、制御回路７１はそのうちの６ビット目以上の上位ビットを番地８３として有効ビットテーブル７４に出力する。削除要求コードに対して制御装置７１は有効ビットテーブル７４から３２ビットデータ８３を読み出し、ローダブルカウンタ出力の５ビット目以下の下位ビットが指す位置のビットを０にしてから同じ番地に書き戻す。この時点で指定の仮想ページに対応していた実ページは空きページとなり登録削除は完了するので、制御回路７１は成功コードを出力する。
【００３１】
制御回路７１は有効な要求コードを受けていない時も３２ビットデータ８３を読み出し、全ビットが０であればローダブルカウンタ８２を３２ずつインクリメントする操作を繰り返す。その結果、空きページがある限りにおいてローダブルカウンタ８２は空きページが参照できる番地を指して停止する。このようにして空きページを予め見つけておけば必要が生じた時に遅滞なく登録が可能である。また、この構成では空きページを３２ページずつ検索できるので、空きページを一つずつ探す方式よりも遙かに短い時間で検索を終えることができる。
【００３２】
要求コード７６が対応登録要求コードであれば、制御装置７１は３２ビットデータ８３を読み出し、１であるビットがあれば、最も下位のビットのビット位置と番地から空きページ番号８６を求めて、これを対応テーブル７３に書き込むと同時に有効ビットテーブル７４には１を書き込み、さらに３２ビットデータ８３のうち１である最も下位のビットを０にして同じ番地に書き戻す。この時点で空きページが一つ減り、空きページ番号８６は選択された仮想ページ番号７７に対応付けられ、実ページ番号７９として出力されるので制御装置７１は成功コードを出力する。３２ビットデータ８３が全て０であれば、ローダブルカウンタ８２をずつ３２インクリメントし、次の３２ビットデータ８３を読み出して１であるビットが有れば上記操作を行い、無ければカウンタが一巡する回数を上限としてインクリメントを繰り返す。カウンタが一巡しても１であるビットが無ければ、その時点で制御回路は失敗コードを出力する。
【００３３】
以上のような構成と動作により、対応登録装置は対応の参照または削除の要求に対して必ず一定時間内に操作を完了することができ、登録の要求に対しても空きページがある限り一定時間内に操作を完了することができる。従って、撮像回路からのデータの取り込みのように遅滞が許されない極めてリアルタイム性の高い処理にも本発明のメモリ管理装置は適用可能であり、使用済みの実ページは各々のプロセッサインターフェースにより遅滞無く開放されるのでメモリを効率的に利用することが可能である。
【産業上の利用可能性】
【００３４】
本発明にかかるメモリ管理装置は、撮像回路からのデータの取り込みのように遅滞が許されない極めてリアルタイム性の高い処理にも本発明のメモリ管理装置は適用可能であり、使用済みの実ページは各々のプロセッサインターフェースにより遅滞無く開放されるのでメモリを効率的に利用することが可能であるため、デジタルカメラや携帯電話端末等に適用できる。
【図面の簡単な説明】
【００３５】
【図１】本発明によるメモリ管理装置を用いたデジタルスチルカメラの構成を示すブロック図
【図２】ＭＭＵの構成と特に調停回路の役割を説明するブロック図
【図３】プロセッサインターフェースの構成例を示したブロック図
【図４】本実施例における対応登録装置の構成を説明するブロック図
【図５】従来のメモリ管理装置による画像処理装置の構成を示すブロック図
【図６】仮想アドレスと実アドレスの対応を示す説明図
【図７】仮想アドレス空間のページと実アドレス空間のページの関係を示す説明図
【符号の説明】
【００３６】
１    撮像回路
２    ＹＣ処理回路
３    圧縮処理回路
４    記録回路
５    ＣＰＵ
６    ＭＭＵ
７    メモリ回路
１１    画像処理装置
１２    ホストコンピューター
１３    ＣＰＵ
１４    入力バッファ
１５    画像圧縮回路
１６    画像伸張回路
１７    ＭＭＵ
１８    ＲＡＭ
１９    出力バッファ
２０    仮想アドレス
２１    実アドレス
２２    下位ビット
２３    仮想ページ番号
２４    実ページ番号
３０    仮想メモリ空間
３１    実メモリ空間
３２    ページ管理テーブル
３３    仮想ページ
３４    実ページ
４０、４１、４２、４３、４４    プロセッサインターフェース
４５    調停回路
４６    対応登録回路
５０    プロセッサ
５１    プロセッサインターフェース
５２    調停回路
５３    対応登録装置
５４    メモリ装置
５５    仮想アドレスのアドレス有効信号
５６    アドレス下位ビット
５７    仮想アドレス上位ビット
５８    制御回路
５９、６０、６３    レジスタ
６１    実アドレスの上位ビット
６２    実アドレスのアドレス有効信号
６４    セレクタ
６５    実ページ番号
７０    セレクタ
７１    制御装置
７３    対応テーブル
７４    有効ビットテーブル
７５    空きページテーブル
７６    選択された要求コード
７７    選択された仮想ページ番号
７９    実ページ番号
８０    有効ビット
８１    応答コード
８２    ローダブルカウンタ
８３    番地
８５    ３２ビットデータ
８６    空きページ番号
【図１】
2005141637.tif 000003
【図２】
2005141637.tif 000004
【図３】
2005141637.tif 000005
【図４】
2005141637.tif 000006
【図５】
2005141637.tif 000007
【図６】
2005141637.tif 000008
【図７】
2005141637.tif 000009