(57)【要約】【課題】  本発明は、優先順位による不揮発性メモリの演算処理装置及び方法を提供する。【解決手段】  第１の作業の実行による第１の演算の遂行途中、前記第１の作業に比べて高い優先順位を有する第２の作業が要請された場合、前記第２の作業の残余締め切り時間を算出する第１の時間算出部、前記第１の演算の残余演算時間、及び前記第２の作業の残余実行時間を算出する第２の時間算出部、及び前記第１の時間算出部、及び前記第２の時間算出部で算出された時間の比較によって前記第１の演算の中止要否を決定する制御部を含む。これにより、応答時間を減少させ、過度な演算中止及び再開が発生することを防止できる。【選択図】  図２
2007234017.tif 000002
【特許請求の範囲】
【請求項１】
第１の作業の実行による第１の演算の遂行途中、前記第１の作業に比べて高い優先順位を有する第２の作業が要請された場合、前記第２の作業の残余締め切り時間を算出する第１の時間算出部と、
前記第１の演算の残余演算時間、及び前記第２の作業の残余実行時間を算出する第２の時間算出部と、
前記第１の時間算出部、及び前記第２の時間算出部で算出された時間の比較によって前記第１の演算の中止要否を決定する制御部とを含むことを特徴とする優先順位による不揮発性メモリの演算処理装置。
【請求項２】
前記残余演算時間、及び前記残余実行時間の和を前記残余締め切り時間と比較する比較部をさらに含むことを特徴とする請求項１に記載の優先順位による不揮発性メモリの演算処理装置。
【請求項３】
前記制御部は、前記比較の結果、前記残余締め切り時間が前記残余演算時間と前記残余実行時間の和より大きい場合、前記第１の演算が完了した後、前記第２の作業の実行による第２の演算を遂行することを特徴とする請求項２に記載の優先順位による不揮発性メモリの演算処理装置。
【請求項４】
前記制御部は、前記第１の演算が完了するまで前記第２の演算の遂行を遅延させることを特徴とする請求項３に記載の優先順位による不揮発性メモリの演算処理装置。
【請求項５】
前記制御部は、前記比較の結果、前記残余締め切り時間が前記残余演算時間と前記残余実行時間の和より小さい場合、前記第１の演算を中止させた後、前記第２の作業の実行による第２の演算を遂行することを特徴とする請求項２に記載の優先順位による不揮発性メモリの演算処理装置。
【請求項６】
前記制御部は、前記第２の演算が完了した後前記中止された第１の演算を再開することを特徴とする請求項５に記載の優先順位による不揮発性メモリの演算処理装置。
【請求項７】
第１の作業の実行による第１の演算の遂行途中、前記第１の作業に比べて高い優先順位を有する第２の作業の要請が予想されるかを判断する作業要請予想部と、
前記判断結果前記第２の作業の要請が予想される場合、前記第１の演算の遂行を遅延させ、前記第２の作業の実行による第２の演算を遂行する演算遅延部と、
前記第２の演算が完了した後、前記遅延された第１の演算を遂行する制御部とを含むことを特徴とする優先順位による不揮発性メモリの演算処理装置。
【請求項８】
多数の作業を優先順位によって整列する作業整列部と、
前記整列された各作業の実行による演算の重畳要否を判断し、前記判断結果を前記作業要請予想部に伝達する作業管理部とをさらに含むことを特徴とする請求項７に記載の優先順位による不揮発性メモリの演算処理装置。
【請求項９】
前記作業要請予想部は、前記第１の演算及び前記第２の演算が重畳されて遂行される場合、前記第２の作業の要請が予想されることと判断することを特徴とする請求項８に記載の優先順位による不揮発性メモリの演算処理装置。
【請求項１０】
前記演算遅延部は、前記第２の演算の締め切り時間が切迫した場合、前記第１の演算の遂行を遅延させることを特徴とする請求項７に記載の優先順位による不揮発性メモリの演算処理装置。
【請求項１１】
第１の作業の実行による第１の演算の遂行途中、前記第１の作業に比べて高い優先順位を有する第２の作業が要請された場合、前記第２の作業の残余締め切り時間を算出する段階と、
前記第１の演算の残余演算時間、及び前記第２の作業の残余実行時間を算出する段階と、
前記第１の時間算出部、及び前記第２の時間算出部で算出された時間の比較によって前記第１の演算の中止要否を決定する段階とを含むことを特徴とする優先順位による不揮発性メモリの演算処理方法。
【請求項１２】
前記残余演算時間、及び前記残余実行時間の和を前記残余締め切り時間と比較する段階をさらに含むことを特徴とする請求項１１に記載の優先順位による不揮発性メモリの演算処理方法。
【請求項１３】
前記第１の演算の中止要否を決定する段階は、前記比較の結果、前記残余締め切り時間が前記残余演算時間と前記残余実行時間の和より大きい場合、前記第１の演算が完了した後、前記第２の作業の実行による第２の演算を遂行する段階を含むことを特徴とする請求項１２に記載の優先順位による不揮発性メモリの演算処理方法。
【請求項１４】
前記第１の演算の中止要否を決定する段階は、前記第１の演算が完了するまで前記第２の演算の遂行を遅延させる段階を含むことを特徴とする請求項１３に記載の優先順位による不揮発性メモリの演算処理方法。
【請求項１５】
前記第１の演算の中止要否を決定する段階は、前記比較の結果、前記残余締め切り時間が前記残余演算時間と前記残余実行時間の和より小さい場合、前記第１の演算を中止させた後、前記第２の作業の実行による第２の演算を遂行する段階を含むことを特徴とする請求項１２に記載の優先順位による不揮発性メモリの演算処理方法。
【請求項１６】
前記第１の演算の中止要否を決定する段階は、前記第２の演算が完了した後、前記中止された第１の演算を再開する段階を含むことを特徴とする請求項１５に記載の優先順位による不揮発性メモリの演算処理方法。
【請求項１７】
第１の作業の実行による第１の演算の遂行途中、前記第１の作業に比べて高い優先順位を有する第２の作業の要請が予想されるかを判断する段階と、
前記判断結果前記第２の作業の要請が予想される場合、前記第１の演算の遂行を遅延させ、前記第２の作業の実行による第２の演算を遂行する段階と、
前記第２の演算が完了した後、前記遅延された第１の演算を遂行する段階とを含むことを特徴とする優先順位による不揮発性メモリの演算処理方法。
【請求項１８】
多数の作業を優先順位によって整列する段階と、
前記整列された各作業の実行による演算の重畳要否を判断する段階とをさらに含むことを特徴とする請求項１７に記載の優先順位による不揮発性メモリの演算処理方法。
【請求項１９】
前記第２の作業の要請が予想されるかを判断する段階は、前記第１の演算及び前記第２の演算が重畳されて遂行される場合、前記第２の作業の要請が予想されることと判断する段階を含むことを特徴とする請求項１８に記載の優先順位による不揮発性メモリの演算処理方法。
【請求項２０】
前記第１の演算を遅延させる段階は、前記第２の演算の締め切り時間が切迫した場合、前記第１の演算の遂行を遅延させる段階を含むことを特徴とする請求項１６に記載の優先順位による不揮発性メモリの演算処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は優先順位による不揮発性メモリの演算処理装置及び方法に係り、さらに詳細には、応答時間を減少させ、過度な演算の中止及び再開が発生することを防止する優先順位による不揮発性メモリの演算処理装置及び方法に関する。
【背景技術】
【０００２】
一般に、家電機器、通信機器、セットトップボックスなどの内蔵型システムではデータを格納して処理するための格納媒体として不揮発性メモリが多く使用されている。
【０００３】
不揮発性メモリの中で主に使用されるフラッシュメモリは電気的にデータを削除するか、或いは再び記録できる不揮発性記憶素子であって、マグネチックディスクメモリを基盤とする格納媒体に比べて電力消耗が少ないながらもハードディスクのような速いアクセスタイムを有し、大きさが小さいので携帯機器などに適する。
【０００４】
また、フラッシュメモリは基本的に書き込み、読み取り、及び消去演算を有しており、データを書き込む前にブロックを消す消去演算が先行されなければならないハードウェア的特性を有する。フラッシュメモリでの消去演算は、書き込み演算及び読み取り演算に比べて演算遂行時間が非常に長い特徴を有する。また、多くのブロックを同時に消すか、或いは多くのページを一回に読み取ったり書き込む演算の場合にはその遂行時間はさらに長くなるようになる。
【０００５】
一方、フラッシュメモリを使用するリアルタイムシステムでは多様な優先順位を有する演算が存在し、システムに演算が要請される場合、要請された演算は演算キューの優先順位によって整列される。また、演算キューの演算が遂行される前フラッシュ変換階層によってフラッシュメモリにフラッシュ命令と実行に必要な情報を送ってフラッシュメモリで演算が遂行されるようにする。
【０００６】
一般に、フラッシュメモリは、所定演算が遂行される途中現在遂行されている演算よりさらに高い優先順位を有する演算が要請されたとき、現在遂行されている演算が完了するまでさらに高い優先順位を有する演算を待機させるようになる。従って、リアルタイムシステムで現在遂行されている演算が完了するまでさらに高い優先順位を有する演算が待機するようになるため応答時間が長くなるようになる。また、リアルタイムシステムで現在遂行されている演算が書き込み及び読み取り演算に比べて長い時間が所要になる消去演算である場合、リアルタイムシステムでの応答時間はさらに長くなるようになり、これによりシステムの性能低下を齎すようになる。
【０００７】
従って、リアルタイムシステムで応答時間が延びることを防止するために、所定演算が遂行される途中さらに高い優先順位を有する演算が要請されるとき、現在遂行される演算を中止し、さらに高い優先順位を有する演算を遂行するようになる。また、さらに高い優先順位を有する演算が完了すれば、中止された演算を再び再開して応答時間の短縮を図っている。この時、演算を中止するためには所定の演算中止時間が必要になり、中止された演算を再開するためには所定の演算再開時間が必要になる。
【０００８】
図１は、従来の技術による優先順位による演算過程が示されている図面である。
【０００９】
示すように、従来の技術による優先順位による演算処理方法は、低い優先順位を有する作業の実行によって不揮発性メモリで演算が遂行される途中高い優先順位を有する作業の実行によって不揮発性メモリで演算遂行が要請されたとき、低い優先順位を有する作業の演算を中止させ、高い優先順位を有する作業の演算を遂行するようになる。
【００１０】
この時、高い優先順位の演算遂行によって中止された低い優先順位の演算は演算中止によって無効化され、高い優先順位演算が完了した後、初めから再び遂行される。この時、高い優先順位を有する作業に割り当てられた作業時間である締め切り時間まで時間的余裕があるので、あえて低い優先順位の演算を中止させない場合にも高い優先順位演算を遂行するのに問題が発生しないようになる。
【００１１】
しかしながら、低い優先順位の演算が不揮発性メモリで遂行されている途中高い優先順位の作業の実行による演算が要請されれば、低い優先順位の演算を無条件中止させるため低い優先順位の演算が消去演算である場合に不揮発性メモリで頻繁な消去演算の発生によって不揮発性メモリの寿命が短縮される問題点がある。
【００１２】
特許文献１は、フラッシュ制御回路が出力する信号に基づいてフラッシュメモリの記録期間や消去期間のうちクロック生成手段からＣＰＵにクロック供給を中断する内蔵マイクロコンピュータを開示しているが、これはフラッシュメモリの書き込み及び消去演算が遂行される途中ＣＰＵが書き込み及び消去演算の完了を随時にポーリングして発生する過負荷を防止するためのことであり、フラッシュメモリを使用するリアルタイムシステムで所定演算が遂行される途中優先順位がさらに高い演算が要請されたとき、応答時間が延びることを防止し、寿命が短縮されることを防止できる方案は提案されていない。
【特許文献１】日本公開特許第１９９８−１７７５６３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
本発明が解決しようとする技術的課題は、不揮発性メモリで低い優先順位の作業の実行による演算が遂行される途中高い優先順位の作業が要請されたとき、高い優先順位の作業に対する締め切り時間を考慮して低い優先順位作業の実行による演算の中止要否を決定して応答時間を減少させ、不揮発性メモリの寿命短縮を防止できる優先順位による不揮発性メモリの演算処理装置及び方法を提供することにある。
【００１４】
本発明の技術的課題は以上で言及した技術的課題で制限されず、言及されないまた他の技術的課題は以下の記載から当業者に明確に理解されることができることである。
【課題を解決するための手段】
【００１５】
前記技術的課題を達成するための本発明の一実施形態による優先順位による不揮発性メモリの演算処理装置は、第１の作業の実行による第１の演算の遂行途中、前記第１の作業に比べて高い優先順位を有する第２の作業が要請された場合、前記第２の作業の残余締め切り時間を算出する第１の時間算出部、前記第１の演算の残余演算時間、及び前記第２の作業の残余実行時間を算出する第２の時間算出部、及び前記第１の時間算出部、及び前記第２の時間算出部で算出された時間の比較によって前記第１の演算の中止要否を決定する制御部を含む。
【００１６】
前記技術的課題を達成するための本発明の他の実施形態による優先順位による不揮発性メモリの演算処理装置は、第１の作業の実行による第１の演算の遂行途中、前記第１の作業に比べて高い優先順位を有する第２の作業の要請が予想されるかを判断する作業要請予想部、前記判断結果前記第２の作業の要請が予想される場合、前記第１の演算の遂行を遅延させ、前記第２の作業の実行による第２の演算を遂行する演算遅延部、及び前記第２の演算が完了した後、前記遅延された第１の演算を遂行する制御部を含む。
【００１７】
前記他の技術的課題を達成するための本発明の一実施形態による優先順位による不揮発性メモリの演算処理方法は、第１の作業の実行による第１の演算の遂行途中、前記第１の作業に比べて高い優先順位を有する第２の作業が要請された場合、前記第２の作業の残余締め切り時間を算出する段階、前記第１の演算の残余演算時間、及び前記第２の作業の残余実行時間を算出する段階、及び前記第１の時間算出部、及び前記第２の時間算出部で算出された時間の比較によって前記第１の演算の中止要否を決定する段階を含む。
【００１８】
前記他の技術的課題を達成するための本発明の他の実施形態による優先順位による不揮発性メモリの演算処理方法は、第１の作業の実行による第１の演算の遂行途中、前記第１の作業に比べて高い優先順位を有する第２の作業の要請が予想されるかを判断する段階、前記判断結果前記第２の作業の要請が予想される場合、前記第１の演算の遂行を遅延させ、前記第２の作業の実行による第２の演算を遂行する段階、及び前記第２の演算が完了した後、前記遅延された第１の演算を遂行する段階を含む。
【００１９】
その他実施形態の具体的な事項は詳細な説明及び図面に含まれている。
【発明の効果】
【００２０】
上述したような本発明の優先順位による不揮発性メモリの演算処理装置及び方法によれば、低い優先順位の演算を遂行する途中、高い優先順位の演算が要請されたとき、応答時間を減少させるとともに低い優先順位演算の中止及び再開が頻繁に発生することを防止できる。
【発明を実施するための最良の形態】
【００２１】
本発明の利点及び特徴、そしてそれらを達成する方法は添付する図面と共に詳細に後述している実施形態を参照すれば明確になる。しかしながら、本発明は、以下で開示される実施形態に限定されるものではなく、相異なる多様な形態で具現されるものであり、本実施形態は、本発明の開示が完全となり、当業者に発明の範疇を完全に知らせるために提供されるものであり、本発明は、特許請求の範囲の記載に基づいて決められなければならない。なお、明細書全体にかけて同一参照符号は同一構成要素を示すものとする。
【００２２】
以下、本発明の実施形態によって優先順位による不揮発性メモリの演算処理装置及び方法を説明するためのブロック図又は処理フローチャートに関する図面を参照して本発明について説明する。この時、処理フローチャート図面の各ブロックとフローチャート図面の組み合わせはコンピュータプログラムインストラクションによって遂行できることを理解できるものである。これらコンピュータプログラムインストラクションは汎用コンピュータ、特殊用コンピュータ又はその他プログラム可能なデータプロセッシング装備のプロセッサーに搭載できるため、コンピュータ又はその他プログラム可能なデータプロセッシング装備のプロセッサーを通じて遂行されるそのインストラクションがフローチャートブロックで説明された機能を遂行する手段を生成するようになる。これらコンピュータプログラムインストラクションは、特定方式に機能を実現するためコンピュータ又はその他プログラム可能なデータプロセッシング装備を指向できるコンピュータ利用可能又はコンピュータ読み取り可能メモリに格納されることも可能なので、そのコンピュータ利用可能又はコンピュータ読み取り可能メモリに格納されたインストラクションはフローチャートブロックで説明された機能を遂行するインストラクション手段を内包する製造品目を生産することも可能である。コンピュータプログラムインストラクションは、コンピュータ又はその他プログラム可能なデータプロセッシング装備上に搭載されることも可能なので、コンピュータ又はその他プログラム可能なデータプロセッシング装備上で一連の動作段階が遂行されてコンピュータで実行されるプロセスを生成してコンピュータ又はその他プログラム可能なデータプロセッシング装備を遂行するインストラクションはフローチャートブロックで説明された機能を実行するための段階を提供することも可能である。
【００２３】
また、各ブロックは特定された論理的機能を実行するための一つ以上の実行可能なインストラクションを含むモジュール、セグメント又はコードの一部を示すことができる。また、複数の代替実行例ではブロックで言及された機能が順序を外れて発生することも可能なことを注目しなければならない。例えば、繋がって示されている二個のブロックは事実実質的に同時に遂行されることも可能であり、又はそのブロックがたびたび該当する機能によって逆順に遂行されることも可能である。
【００２４】
図２は、本発明の第１の実施形態による優先順位による不揮発性メモリの演算処理装置が示されている図面である。
【００２５】
示すように、本発明の第１の実施形態による優先順位による不揮発性メモリの演算処理装置１００は、不揮発性メモリ１１０、第１の時間算出部１２０、第２の時間算出部１３０、比較部１４０及び制御部１５０を含むことができる。
【００２６】
第１の時間算出部１２０は、低い優先順位を有する作業の実行による演算が不揮発性メモリ１１０で遂行される途中高い優先順位を有する作業が要請された場合、高い優先順位を有する作業に割り当てられた作業時間が終わる時点まで残った締め切り時間を算出できる。
【００２７】
本発明の第１の実施形態で使用される用語のうち作業は使用者の命令によって実行される所定の応用プログラムを意味し、このような応用プログラムは当該プロセスによって必要時、不揮発性メモリ１１０に接近して演算を遂行できるようになる。従って、作業は不揮発性メモリ１１０で遂行される演算を含むか、或いは含まないことができ、所定演算その自体であることもできる。
【００２８】
また、本発明の第１の実施形態で低い優先順位を有する作業を第１の作業と称し、高い演算順位を有する作業を第２の作業と称し、第１の作業及び第２の作業の実行によって遂行される演算をそれぞれ第１の演算及び第２の演算と称する。
【００２９】
この時、第１の時間算出部１２０で算出される締め切り時間は、第２の作業に割り当てられた作業時間が終わる時点まで残った残余締め切り時間で理解でき、第２の作業は締め切り時間まで応答をホストに伝達しなければならない。この時、所定作業に割り当てられた作業時間は作業の種類、及び作業の実行によって遂行される演算の種類などによって変更できる。例えば、作業の実行によって遂行される演算が書き込み演算である場合、作業の実行によって遂行される演算が消去演算である場合に比べて短い作業時間が割り当てられるようになる。これは、書き込み演算に比べて消去演算が長い時間を必要とするためである。
【００３０】
また、本発明の実施形態で残余締め切り時間は、第２の作業の実行による第２の演算が要請される時点から第２の作業に割り当てられた作業時間が終わる時点までの時間で理解できる。
【００３１】
第２の時間算出部１３０は、不揮発性メモリ１１０で遂行されている第１の演算の残余演算時間、及び第２の演算が開始される時点で第２の作業の残余実行時間を算出できる。
【００３２】
この時、所定演算の演算時間は該当する演算の種類、及び演算量によって決められることができ、所定演算の残余演算時間は、当該演算の演算時間と当該演算が遂行された時点からの経過時間との時間差によって算出できる。また、所定作業の作業実行時間は該当する作業の種類、及び該当する作業の実行によって遂行される演算の種類などによって決められることができ、所定作業の残余実行時間は、当該作業の作業実行時間と当該作業が実行され始めた時点から第２の演算が開始される時点まで経過された時間との時間差によって算出できる。この時、本発明の実施形態による残余実行時間は、第２の作業の実行によって遂行される第２の演算の演算時間を含んだ場合を例を挙げて説明する。
【００３３】
比較部１４０は、第１の時間算出部１２０、及び第２の時間算出部１３０で算出された残余締め切り時間、及び第１の演算の残余演算時間と第２の作業の残余実行時間の和を比較できる。この時、本発明の第１の実施形態で残余締め切り時間をＴ１といい、第１の演算の残余演算時間と第２の作業の残余実行時間の和をＴ２という。このように、比較部１４０がＴ１とＴ２を比較することはＴ１＞Ｔ２である場合には第２の作業の締め切り時間まで時間的余裕があるため第１の演算を遂行した後、第２の演算を遂行し、反面Ｔ１＜Ｔ２である場合には第２の作業の締め切り時間まで時間的余裕がないため第１の演算を中止し、第２の演算が遂行できるようにするためである。
【００３４】
これは、既存に低い優先順位の演算遂行途中、高い優先順位の演算が要請されたとき、無条件低い優先順位の演算を中止させ、高い優先順位の演算が遂行される場合に比べて速い応答を保障しながらも不揮発性メモリ１１０で演算の中止と再開が過度なように発生することを防止して不揮発性メモリ１１０の寿命短縮を防止するためのことである。
【００３５】
制御部１５０は、比較部１４０の比較の結果によって第１の演算の中止要否を決定できる。具体的には、制御部１５０は比較部１４０の比較の結果、Ｔ１＞Ｔ２である場合、第２の作業の締め切り時間まで時間的余裕があるため、第１の演算を完了した後、第２の演算を遂行できる。一方、制御部１５０は比較部１４０の比較の結果、Ｔ１＜Ｔ２である場合、第２の作業の締め切り時間まで時間的余裕がないため第１の演算を中止させ、第２の演算を遂行するようになる。この時、第１の演算を中止させるためには所定の演算中止時間が必要なので、制御部１５０は演算中止時間が経過した後、第２の演算を遂行するようになる。また、第２の演算が完了した後には中止された第１の演算を所定の演算再開時間が経過した後再開するようになる。
【００３６】
このような図２の本発明の第１の実施形態による優先順位による不揮発性メモリの演算処理装置１００は、第１の作業の実行による第１の演算遂行途中、第１の作業より高い優先順位を有する第２の作業が要請されることを予測できない状態で理解でき、第１の作業の実行による第１の演算遂行途中、第１の作業より高い優先順位を有する第２の作業の要請が予想される場合には第１の演算の遂行を所定時間の間遅延させ、第２の作業による第２の演算を先ず遂行できる。
【００３７】
図３は、本発明の第２の実施形態による優先順位による不揮発性メモリの演算処理装置が示されている図面である。この時、図３の優先順位による不揮発性メモリの演算処理装置は前述した第１の作業の実効による第１の演算遂行途中、第１の作業より高い優先順位を有する第２の作業の要請が予想される場合を例を挙げて説明する。
【００３８】
示すように、本発明の第２の実施形態による優先順位による不揮発性メモリの演算処理装置２００は、不揮発性メモリ２１０、作業整列部２２０、作業管理部２３０、作業要請予想部２４０、演算遅延部２５０、制御部２６０を含むことができる。
【００３９】
作業整列部２２０は、多数の作業を優先順位によって整列できる。この時、作業整列部２２０は既に要請された作業を優先順位によって整列するものだけではなく、新たに要請された作業がある場合、新たに要請された作業の優先順位を考慮して既に整列された作業を再整列できる。
【００４０】
作業管理部２３０は、作業整列部２２０によって整列された作業の実行によって遂行される演算の演算時間が重畳されるかを判断できる。具体的には、作業整列部２２０によって整列された順序に応じて作業が実行されている途中新たな作業が要請されたとき、作業整列部２２０は新たに要請された作業の優先順位によって作業を再整列できる。この時、新たに要請された作業によって遂行される演算が既に遂行されている演算と重畳されるかを判断するものである。
【００４１】
作業要請予想部２４０は、作業管理部２３０の判断結果によって低い優先順位の作業の実行による演算遂行途中、高い作業の要請が予想されるかを判断できる。具体的には、作業管理部２３０は低い優先順位を有する第１の作業の実行による第１の演算を遂行するとき、高い優先順位を有する第２の作業の要請が予想され、第２の作業の実行による第２の演算が第１の演算と重畳が発生するかを判断するものである。この時作業要請予想部２４０は、作業管理部２３０の判断結果に基づいて第２の作業の実行による第２の演算が第１の演算と演算時間の重畳が発生することかを判断できる。
【００４２】
演算遅延部２５０は、作業要請予想部２４０の判断結果、第２の作業の実行による第２の演算が第１の演算と重畳が発生する場合、第１の作業の実行による第１の演算の遂行を遅延させるようになる。従って、第１の演算が消去演算であり、第２の演算が書き込み演算であるとき、第１の演算が中止されることを事前に防止して不揮発性メモリ２１０で第１の演算の中止による反復的な消去演算によって不揮発性メモリ２１０の寿命が短縮されることを事前に防止できるようになる。
【００４３】
制御部２６０は、演算遅延部２５０によって第１の作業の実行によって遂行される第１の演算が遅延された場合、第２の演算が完了した後、遅延された第１の演算が遂行されるようにできる。
【００４４】
この時、図３の優先順位による不揮発性メモリの演算処理装置２００は、低い優先順位を有する第１の作業による第１の演算遂行途中、高い優先順位を有する第２の作業の要請が予想される場合を例を挙げて説明しているが、これに限定されず第２の作業の締め切り時間が切迫した場合、第１の演算を遅延させ、第２の演算を優先的に遂行することによって第２の演算が締め切り時間を超過することを事前に防止できるようになる。
【００４５】
図４は、本発明の第１の実施形態による優先順位による不揮発性メモリの演算処理方法が示されている図面である。この時、図４の優先順位による不揮発性メモリの演算処理方法は、前述した図２の優先順位による不揮発性メモリの演算処理装置の動作で理解できる。
【００４６】
示すように、本発明の第１の実施形態による優先順位による不揮発性メモリの演算処理方法は、先ず制御部１５０が第１の作業の実行による第１の演算遂行途中、第１の作業より高い優先順位を有する第２の演算が要請されたかを判断する（Ｓ１１０）。
【００４７】
判断結果、第１の作業の実行による第１の演算遂行途中、第２の作業が要請された場合、第１の時間算出部１２０は第２の作業の残余締め切り時間（Ｔ１）を算出するようになる（Ｓ１２０）。この時、算出される第２の作業の残余締め切り時間は、第２の作業の実行によって遂行される第２の演算が開始される時点で第２の作業に割り当てられた作業時間が終わる時点までの時間で理解できる。
【００４８】
また、第２の時間算出部１３０は、第１の演算の残余演算時間、及び第２の作業の残余実行時間を算出するようにし、算出された第１の演算の残余演算時間、及び第２の作業の残余実行時間の和（Ｔ２）を算出するようになる（Ｓ１３０）。この時、所定演算の演算時間は該当する演算の種類、及び演算量によって決められることができ、所定演算の残余演算時間は当該演算の演算時間と当該演算が遂行された時点からの経過時間との時間差によって算出できる。また、所定作業の作業実行時間は該当する作業の種類、及び該当する作業の実行によって遂行される演算の種類などに応じて決められることができ、所定作業の残余実行時間は、当該作業の作業実行時間と当該作業が実行され始めた時点から第２の演算が開始される時点まで経過された時間との時間差によって算出できる。本発明の実施形態で、第２の演算の残余実行時間は第２の作業の実行によって遂行される第２の演算の演算時間を含んだ場合を例を挙げて説明する。
【００４９】
比較部１４０は、第１の時間算出部１２０、及び第２の時間算出部１３０で算出されたＴ１及びＴ２を比較する（Ｓ１４０）。
【００５０】
比較の結果、Ｔ２＞Ｔ１である場合、制御部１５０は第１の演算を中止させるようになる（Ｓ１５０）。この時、制御部１５０が第１の演算を中止させるときには所定の演算中止時間が必要になる。
【００５１】
また、制御部１５０は、第１の演算の演算中止時間が経過するようになれば、第２の作業の実行による第２の演算を遂行し（Ｓ１６０）、第２の演算が完了した後、再び第１の演算を再開するようになる（Ｓ１７０）。この時、第１の演算を再開する場合にも第１の演算を再開するための演算再開時間が必要になる。
【００５２】
もし前述した段階（Ｓ１４０）でＴ１＞Ｔ２であれば、制御部１５０は第１の演算を完了させた後、第２の演算を遂行するようになる（Ｓ１８０）。
【００５３】
図５は、本発明の実施形態による第１の演算が完了した後、第２の演算が遂行される演算過程が示されている図面である。
【００５４】
示すように、第１の演算の残余演算時間、及び第２の作業の残余実行時間の和が第２の演算の残余締め切り時間より短いので第２の作業が時間的余裕があるため、第２の演算を第１の演算が完了するまで遅延させた後、第１の演算完了後第２の演算が遂行されるようにできる。
【００５５】
この時、図５は第１の演算を完了させた後に第２の演算を遂行しても第２の作業に割り当てられた作業時間内に応答が可能なのでたって第１の演算を中止して不揮発性メモリ１１０で第１の演算が反復的に遂行されることを防止しながらも応答時間が延びることを防止できるようになる。
【００５６】
もし前述した図５で第１の演算の残余演算時間、及び第２の作業の残余実行時間の和が第２の演算の残余締め切り時間より長くなれば、第２の作業の締め切り時間まで時間的余裕がないので、第１の演算を中止させた後、第２の演算を遂行するようになる。また、第２の演算が完了すれば、中止された第１の演算を再開するようになる。従って、第２の作業の締め切り時間内に応答が可能なようにできる。
【００５７】
図６は、本発明の第２の実施形態による優先順位による不揮発性メモリの演算処理方法が示されている図面である。この時、図６の優先順位による不揮発性メモリの演算処理方法は前述した図４の優先順位による不揮発性メモリの演算処理装置の動作で理解できる。
【００５８】
示すように、本発明の第２の実施形態による優先順位による不揮発性メモリの演算処理方法は、先ず作業要請予想部２４０が低い優先順位を有する第１の作業の実行による第１の演算遂行途中、高い優先順位を有する第２の作業の要請が予想されるかを判断する（Ｓ２１０）。この時、作業要請予想部２４０は作業管理部２３０で作業整列部２２０の整列結果によって第１の演算と第２の演算が重畳されるかを判断した判断結果が伝達されて第２の作業の要請を予想できる。
【００５９】
判断結果、第２の作業の要請が予想される場合、演算遅延部２５０は第１の作業の実行による第１の演算の遂行を第２の演算が完了するまで遅延させるようになる（Ｓ２２０）。
【００６０】
制御部２６０は、第２の演算が完了すれば、演算遅延部２５０によって遂行が遅延された第１の演算を遂行するようになる（Ｓ２３０）。
【００６１】
この時、図６の優先順位による不揮発性メモリの演算処理方法は、第１の作業の実行による第１の演算遂行途中、第１の演算に比べて高い優先順位を有する第２の作業が要請される場合を例を挙げて説明しているが、これに限定されず第２の作業の締め切り時間が切迫した場合にも使用できる。
【００６２】
例えば、図７のように第２の作業の締め切り時間が切迫するとき、第２の作業の実行による第２の演算が遂行される場合、第１の作業の実行による第１の演算と演算遂行時間が重畳される場合、前述した図５でのように締め切り時間と残余演算時間及び残余実行時間を比較せず第１の演算を遅延させた状態で第２の演算を先ず遂行し、第２の演算が完了した後、遅延された第１の演算を遂行できる。
【００６３】
前記‘部’はソフトウェア又はＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）又は注文型半導体（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ；ＡＳＩＣ）のようなハードウェア構成要素を意味し、部はある役割を遂行する。しかし、部はソフトウェア又はハードウェアに限定される意味ではない。部は、アドレッシングできる格納媒体にあるように構成されてもよく、一つ又はその以上のプロセッサーを実行させるように構成されてもよい。従って、例えば部はソフトウェア構成要素、オブジェクト指向ソフトウェア構成要素、クラス構成要素及びタスク構成要素のような構成要素と、プロセス、関数、属性、プロシージャ、サブルーチン、プログラムコードのセグメント、ドライバー、ファームウェア、マイクロコード、回路、データ、データベース、データ構造、テーブル、アレイ、及び変数を含む。構成要素と部で提供される機能はさらに小さい数の構成要素及び部で結合されるか、或いは追加的な構成要素と部でさらに分離できる。
【００６４】
以上、本発明による優先順位による不揮発性メモリの演算処理装置及び方法を例示された図面を参照して説明したが、本明細書に開示された実施形態と図面によって本発明は限定されず、その発明の技術思想範囲内で当業者によって多様な変形が行われることができることは勿論である。
【図面の簡単な説明】
【００６５】
【図１】従来の技術による優先順位による不揮発性メモリの演算過程が示されている図である。
【図２】本発明の第１の実施形態による優先順位による不揮発性メモリの演算処理装置が示されている図である。
【図３】本発明の第２の実施形態による優先順位による不揮発性メモリの演算処理装置が示されている図である。
【図４】本発明の第１の実施形態による優先順位による不揮発性メモリの演算処理方法が示されている図である。
【図５】本発明の実施形態によって第１の演算が完了した後、第２の演算を遂行する演算過程が示されている図である。
【図６】本発明の第２の実施形態による優先順位による不揮発性メモリの演算処理方法が示されている図である。
【図７】本発明の実施形態によって第２の演算が完了するまで第１の演算を遅延させる演算過程が示されている図である。
【符号の説明】
【００６６】
１１０      不揮発性メモリ
１２０      第１の時間算出部
１３０      第２の時間算出部
１４０      比較部
１５０      制御部
【図１】
2007234017.tif 000003
【図２】
2007234017.tif 000004
【図３】
2007234017.tif 000005
【図４】
2007234017.tif 000006
【図５】
2007234017.tif 000007
【図６】
2007234017.tif 000008
【図７】
2007234017.tif 000009