(57)【要約】【課題】電源の瞬断等によるデータ消失の確率を最小限にすると共に、ネットワークの捕捉時間を低減したメモリドライブ装置を提供する。【解決手段】このメモリドライブ装置２は、電源バックアップ機能を備えたＳＲＡＭ（第１の記憶手段）６と、不揮発性のフラッシュメモリ（第２の記憶手段）７と、ホスト（外部装置）１から送信されたデータ１０の受信、ホスト１との制御情報９の授受、及びＳＲＡＭ６とフラッシュメモリ７の同期制御を司るコントローラ（制御手段）３と、を備えて構成されている。尚、本実施形態では、電源８がメモリドライブ装置２のコントローラ３、フラッシュメモリ７、及び充電回路５に電圧Ｖを供給している。また、ＳＲＡＭ６はバッテリ４により駆動され、常時電圧Ｖにより充電されている。【選択図】図１
2010160634.tif 000002
【特許請求の範囲】
【請求項１】
無停電電源を備えた第１の記憶手段と、不揮発性の第２の記憶手段と、外部装置から送信されたデータの受信、該外部装置との制御情報の授受、及び前記第１の記憶手段と前記第２の記憶手段の同期制御を司る制御手段と、を備え、
前記制御手段は、前記外部装置から受信したデータを前記第１の記憶手段に記憶して該外部装置との通信を終了後、前記第１の記憶手段に記憶されたデータを前記第２の記憶手段に転送することを特徴とするメモリドライブ装置。
【請求項２】
前記第１の記憶手段の記憶速度は、前記第２の記憶手段の記憶速度よりも速くなるように構成されていることを特徴とする請求項１に記載のメモリドライブ装置。
【請求項３】
前記第１の記憶手段の記憶容量は、１通信で受信するデータを全て記憶できる容量か、又は前記第２の記憶手段と同じ記憶容量であることを特徴とする請求項１又は２に記載のメモリドライブ装置。
【請求項４】
前記制御手段は、前記第１の記憶手段に記憶したデータ量が該第１の記憶手段が有する記憶容量に近づいた場合に、前記外部装置に対してデータ送信を中断する旨を通知し、前記第１の記憶手段に記憶したデータを前記第２の記憶手段に転送完了後に前記外部装置に残りのデータの送信を要求することを特徴とする請求項１又は２に記載のメモリドライブ装置。
【請求項５】
前記制御手段は、前記第１の記憶手段にデータを記憶中に障害が発生した場合は、前記障害が復旧した後に、全てのデータの再送要求を行なうか、又は未記憶データの再送要求を行なうことを特徴とする請求項１乃至４の何れか一項に記載のメモリドライブ装置。
【請求項６】
前記制御手段は、前記第１の記憶手段から前記第２の記憶手段にデータを転送中に障害が発生した場合は、前記障害が復旧した後に、前記第１の記憶手段に記憶されている全てのデータを再び転送するか、又は未記憶データをのみを転送することを特徴とする請求項１乃至４の何れか一項に記載のメモリドライブ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリドライブ装置に関し、さらに詳しくは、電源の瞬断等によるデータ消失の確率を最小限にするメモリドライブ装置の構成技術に関するものである。
【背景技術】
【０００２】
従来のメモリドライブ装置は、不揮発性で、且つ大容量のフラッシュメモリやハードディスクが使用されることが多い。しかし、フラッシュメモリやハードディスクは、スタティックＲＡＭ（ＳＲＡＭ）やダイナミックＲＡＭ（ＤＲＡＭ）と比較すると、書き込み処理に多くの時間を必要とする（即ち、アクセスタイムが長い）。そのため、例えば、ネットワークと接続されたホストから大量のデータを受信する場合、ネットワークを捕捉する時間が長くなるばかりでなく、そのデータを書き込み処理中に瞬時停電等に遭遇したりノイズの影響を受ける確率が高くなる。その結果、データを消失してしまうばかりでなく、データを再送するために多大の時間を要するといった問題があった。そこで、瞬時停電等に対応するために、フラッシュメモリやハードディスクを無停電化することも考えられるが、依然としてネットワークを捕捉する時間が長くなるといった問題は解決されない。
従来技術として特許文献１には、ＳＲＡＭキャッシュがホストとフラッシュメモリの間を移動するデータを一時的に記憶するバッファとして構成されている半導体ディスク制御装置について開示されている。また、特許文献２には、バッファを内蔵したフラッシュメモリに直接アクセスしない半導体ディスク制御装置について開示されている。
【特許文献１】特開２００７−１３３８６８公報
【特許文献２】特開２００６−１９５９９０公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、特許文献１及び２に開示されている従来技術は、ＳＲＡＭキャッシュがホストとフラッシュメモリの間を移動するデータを一時的に記憶するバッファとして構成されているが、電源が瞬断した場合のデータバックアップについては開示されていない。また、ＳＲＡＭキャッシュがバッファの役割であるため、大量のデータを受信する場合は、ネットワークの捕捉時間が長くなるといった問題がある。
本発明は、かかる課題に鑑みてなされたものであり、ホストとフラッシュメモリ間に無停電電源を備えたＳＲＡＭを配置して、ホストからのデータを高速でＳＲＡＭに記憶し、ホストとの通信を解除した後に記憶したデータをフラッシュメモリに転送することにより、電源の瞬断等によるデータ消失の確率を最小限にすると共に、ネットワークの捕捉時間を低減したメモリドライブ装置を提供することを目的とする。
【課題を解決するための手段】
【０００４】
本発明はかかる課題を解決するために、請求項１は、無停電電源を備えた第１の記憶手段と、不揮発性の第２の記憶手段と、外部装置から送信されたデータの受信、該外部装置との制御情報の授受、及び前記第１の記憶手段と前記第２の記憶手段の同期制御を司る制御手段と、を備え、前記制御手段は、前記外部装置から受信したデータを前記第１の記憶手段に記憶して該外部装置との通信を終了後、前記第１の記憶手段に記憶されたデータを前記第２の記憶手段に転送することを特徴とする。
本発明では、無停電電源を備えた第１の記憶手段と、不揮発性の第２の記憶手段と、を備え、外部装置から受信したデータは第１の記憶手段に記憶して外部装置との通信を終了し、その後に、第１の記憶手段から第２の記憶手段にデータを転送する。これにより、電源が瞬断した場合でも外部装置から受信したデータを保護することができる。
請求項２は、前記第１の記憶手段の記憶速度は、前記第２の記憶手段の記憶速度よりも速くなるように構成されていることを特徴とする。
外部装置（例えば、ホスト）との通信時間を短くすることは、結果的にネットワークの捕捉時間を短くすることに繋がる。それを実現するためには、受信データを高速で記憶する必要がある。そこで本発明では、第１の記憶手段の記憶速度を第２の記憶手段の記憶速度よりも速くなるように構成する。これにより、外部装置との通信時間を短くすることができ、結果的にネットワークの捕捉時間を短くすることができる。
【０００５】
請求項３は、前記第１の記憶手段の記憶容量は、１通信で受信するデータを全て記憶できる容量か、又は前記第２の記憶手段と同じ記憶容量であることを特徴とする。
１通信で受信するデータの長さは通信毎に異なる。従って、記憶手段の記憶容量は大きいほど好ましいが、コストとの関係で所定の記憶容量に決定される。そのとき、第１の記憶手段の記憶容量と第２の記憶手段の記憶容量との関係が重要となる。即ち、第１の記憶手段の記憶容量を第２の記憶手段の記憶容量より大きくすることは無意味である。なぜならば、受信しても第２の記憶手段に記憶しきれないで、データを捨てることになるからである。そこで本発明では、１通信で受信するデータを全て記憶できる容量か、又は第２の記憶手段の記憶容量と同じ記憶容量を第１の記憶手段に備える。これにより、１通信でのデータ記憶を連続で、且つ高速で行なうことができる。
請求項４は、前記制御手段は、前記第１の記憶手段に記憶したデータ量が該第１の記憶手段が有する記憶容量に近づいた場合に、前記外部装置に対してデータ送信を中断する旨を通知し、前記第１の記憶手段に記憶したデータを前記第２の記憶手段に転送完了後に前記外部装置に残りのデータの送信を要求することを特徴とする。
第１の記憶手段の記憶容量は、１通信で受信するデータを全て記憶できる容量に設定するが、低い確率でそれよりも長いデータを受信する場合もある。そのような時は、一旦、第１の記憶手段に記憶したデータを第２の記憶手段に転送する必要がある。そして、転送完了後に外部装置に残りのデータの送信を要求する。これにより、第１の記憶手段の容量不足によるデータ消失を防止することができる。
【０００６】
請求項５は、前記制御手段は、前記第１の記憶手段にデータを記憶中に障害が発生した場合は、前記障害が復旧した後に、全てのデータの再送要求を行なうか、又は未記憶データの再送要求を行なうことを特徴とする。
瞬時停電等の障害は何時発生するか予測がつかない。従って、第１の記憶手段に記憶中に障害が発生した場合は、第１の記憶手段は無停電なので今まで記憶したデータは保存されるが、制御手段の動作が停止してしまい、データを受信することができない。そこで本発明では、記憶した全てのデータを無効として外部装置に対して再送要求を出すか、又は未記憶データのみの再送要求を行なう。これにより、障害により消失したデータを復旧することができる。
請求項６は、前記制御手段は、前記第１の記憶手段から前記第２の記憶手段にデータを転送中に障害が発生した場合は、前記障害が復旧した後に、前記第１の記憶手段に記憶されている全てのデータを再び転送するか、又は未記憶データをのみを転送することを特徴とする。
第１の記憶手段は無停電電源を有しているので、障害が発生しても記憶されているデータは消失しないで残っている。そこで本発明では、第１の記憶手段から第２の記憶手段にデータを転送している過程で障害が発生した場合は、障害が復旧した後に、第１の記憶手段に記憶されている全てのデータを再び転送するか、又は未記憶データをのみを転送する。これにより、データ消失を未然に防止することができる。
【発明の効果】
【０００７】
本発明によれば、無停電電源を備えた第１の記憶手段と、不揮発性の第２の記憶手段と、を備え、外部装置から受信したデータは第１の記憶手段に記憶して外部装置との通信を終了し、その後に、第１の記憶手段から第２の記憶手段にデータを転送するので、電源が瞬断した場合でも外部装置から受信したデータを保護することができる。
また、第１の記憶手段の記憶速度を第２の記憶手段の記憶速度よりも速くなるように構成するので、外部装置との通信時間を短くすることができ、結果的にネットワークの捕捉時間を短くすることができる。
また、１通信で受信するデータを全て記憶できる容量か、又は第２の記憶手段の記憶容量と同じ記憶容量を第１の記憶手段に備えるので、１通信でのデータ記憶を連続で、且つ高速で行なうことができる。
また、一旦、第１の記憶手段に記憶したデータを第２の記憶手段に転送する必要がある。そして、転送完了後に外部装置に次のデータの送信を要求するので、第１の記憶手段の容量不足によるデータ消失を防止することができる。
また、第１の記憶手段に記憶中に障害が発生すると、記憶したデータは無効となるので、外部装置に対して再送要求を出すことにより、消失したデータを復旧することができる。
また、第１の記憶手段から第２の記憶手段にデータを転送している過程で障害が発生した場合は、障害が復旧した後に、第１の記憶手段に記憶されている全てのデータを再び転送するか、又は未記憶データをのみを転送するので、データ消失を未然に防止することができる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明を図に示した実施形態を用いて詳細に説明する。但し、この実施形態に記載される構成要素、種類、組み合わせ、形状、その相対配置などは特定的な記載がない限り、この発明の範囲をそれのみに限定する主旨ではなく単なる説明例に過ぎない。
図１は本発明の実施形態に係るメモリドライブ装置の概略構成を示す図である。このメモリドライブ装置２は、電源バックアップ機能を備えたＳＲＡＭ（第１の記憶手段）６と、不揮発性のフラッシュメモリ（第２の記憶手段）７と、ホスト（外部装置）１から送信されたデータ１０の受信、ホスト１との制御情報９の授受、及びＳＲＡＭ６とフラッシュメモリ７の同期制御を司るコントローラ（制御手段）３と、を備えて構成されている。尚、本実施形態では、電源８がメモリドライブ装置２のコントローラ３、フラッシュメモリ７、及び充電回路５に電圧Ｖを供給している。また、ＳＲＡＭ６はバッテリ４により駆動され、常時電圧Ｖにより充電されている。そして、コントローラ３は、ホスト１から受信したデータ１０をＳＲＡＭ６に記憶してホスト１との通信を終了後、ＳＲＡＭ６に記憶されたデータをフラッシュメモリ７に転送する。
即ち、本実施形態では、バッテリ４（無停電電源機能）を備えたＳＲＡＭ６と、不揮発性のフラッシュメモリ７と、を備え、ホスト１から受信したデータ１０はＳＲＡＭ６に記憶してホスト１との通信を終了し、その後に、ＳＲＡＭ６からフラッシュメモリ７にデータをコピーする。これにより、電源８が瞬断した場合でもホスト１から受信したデータを保護することができる。
【０００９】
また、ホスト１との通信時間を短くすることは、結果的にネットワークの捕捉時間を短くすることに繋がる。それを実現するためには、受信データ１０を高速で記憶する必要がある。そこで本実施形態では、ＳＲＡＭ６の記憶速度はフラッシュメモリ７の記憶速度よりも速いので、ホスト１との通信時間を短くすることができ、結果的にネットワークの捕捉時間を短くすることができる。
また、ＳＲＡＭ６の記憶容量は、１通信で受信するデータを全て記憶できる容量か、又はフラッシュメモリ７の記憶手段と同じの記憶容量にする。即ち、１通信で受信するデータの長さは通信毎に異なる。従って、記憶手段の記憶容量は大きいほど好ましいが、コストとの関係で所定の記憶容量に決定される。そのとき、ＳＲＡＭ６の記憶容量とフラッシュメモリ７の記憶容量との関係が重要となる。即ち、ＳＲＡＭ６の記憶容量をフラッシュメモリ７の記憶容量より大きくすることは無意味である。なぜならば、受信してもフラッシュメモリ７に記憶しきれないで、データを捨てることになるからである。そこで本実施形態では、１通信で受信するデータを全て記憶できる容量か、又はフラッシュメモリ７の記憶容量と同じ記憶容量をＳＲＡＭ６に備える。これにより、１通信でのデータ記憶を連続で、且つ高速で行なうことができる。
【００１０】
図２は図１のメモリドライブ装置のＳＲＡＭが一括記憶する場合の動作について説明するフローチャートである。まず、コントローラ３はホスト１に制御信号９によりデータを要求する（Ｓ１）。ホスト１はその要求に対してデータ１０をコントローラ３に送信する。コントローラ３はそのデータ１０をＳＲＡＭ６に記憶する（Ｓ２）。全てのデータの受信が完了すると（Ｓ３でＹＥＳ）、ホスト１に対して完了通知信号１１を返す（Ｓ４）。これにより、メモリドライブ装置２とホスト１の通信は終了する。次に、コントローラ３はＳＲＡＭ６に記憶されているデータをフラッシュメモリ７に転送（コピー）するためにデータ転送信号１４を出力して信号線１３を介してデータを転送する（Ｓ５）。転送が完了すると（Ｓ６でＹＥＳ）、データ消去信号１２を出力してＳＲＡＭ６に記憶されているデータを消去する（Ｓ７）。
【００１１】
図３は図１のメモリドライブ装置のＳＲＡＭが分割記憶する場合の動作について説明するフローチャートである。まず、コントローラ３はホスト１に制御信号９によりデータを要求する（Ｓ１０）。ホスト１はその要求に対してデータ１０をコントローラ３に送信する。コントローラ３はそのデータ１０をＳＲＡＭ６に記憶する（Ｓ１１）。ＳＲＡＭ６がメモリフルに近づくと（Ｓ１２でＹＥＳ）、コントローラ３にメモリ容量がフルに近いこと認識するとホスト１に対してデータ１０の送信中断を通知する（Ｓ１３）。次に、コントローラ３はＳＲＡＭ６に記憶されているデータをフラッシュメモリ７に転送（コピー）する（Ｓ１４）。転送が完了すると（Ｓ１５でＹＥＳ）、ＳＲＡＭ６に記憶されているデータを消去する（Ｓ１６）。そして、ホスト１に対して残りのデータの送信を要求し（Ｓ１７）、ントローラ３はそのデータ１０をＳＲＡＭ６に記憶する（Ｓ１８）。全てのデータの受信が完了すると（Ｓ１９でＹＥＳ）、ホスト１に対して完了通知１１を返す（Ｓ２０）。
即ち、ＳＲＡＭ６の記憶容量は、１通信で受信するデータを全て記憶できる容量に設定するが、低い確率でそれよりも長いデータを受信する場合もある。そのような時は、一旦、ＳＲＡＭ６に記憶したデータをフラッシュメモリ７に転送する必要がある。そして、転送完了後にホスト１に次のデータの送信を要求する。これにより、ＳＲＡＭ１の容量不足によるデータ消失を防止することができる。
【００１２】
図４は一括記憶動作中に障害が発生した場合の動作について説明するフローチャートである。まず、コントローラ３はホスト１に制御信号９によりデータを要求する（Ｓ３０）。ホスト１はその要求に対してデータ１０をコントローラ３に送信する。コントローラ３はそのデータ１０をＳＲＡＭ６に記憶する（Ｓ３１）。ここで全てのデータの受信が完了する前に（Ｓ３２でＮＯ）、障害が発生すると（Ｓ３７でＹＥＳ）、ホスト１に再送要求を出す（Ｓ３８）。一方、ステップＳ３２で全てのデータの受信が完了すると（Ｓ３２でＹＥＳ）、ホスト１に対して完了通知１１を返す（Ｓ３３）。これにより、メモリドライブ装置２とホスト１の通信は終了する。次に、コントローラ３はＳＲＡＭ６に記憶されているデータをフラッシュメモリ７に転送（コピー）する（Ｓ３４）。ここで、転送が完了する前に（Ｓ３５でＮＯ）、障害が発生すると（Ｓ３９でＹＥＳ）、コントローラ３はＳＲＡＭ６に再送要求を出して転送されていないデータを転送する（Ｓ４０）。尚、ここで、ＳＲＡＭ６に記憶されているデータを全て転送するようにしても良い。一方、ステップＳ３５で転送が完了すると（Ｓ３５でＹＥＳ）、ＳＲＡＭ６に記憶されているデータを消去する（Ｓ３６）。
即ち、障害は何時発生するか予測がつかない。従って、ＳＲＡＭ６に記憶中に障害が発生すると、記憶したデータは無効となるので、ホスト１に対して再送要求を出す。これにより、消失したデータを復旧することができる。また、ＳＲＡＭ６は無停電電源機能を有しているので、障害が発生しても記憶されているデータは消失しないで残っている。そこで本実施形態では、ＳＲＡＭ６からフラッシュメモリ７にデータを転送している過程で障害が発生した場合は、障害が復旧した後にＳＲＡＭ６に該データの再送要求を行なう。これにより、データ消失を未然に防止することができる。
【００１３】
図５は図２で説明したフローチャートに基づいた各部の信号のタイミングチャートである。まず、コントローラ３はホスト１に制御信号９によりデータを要求すると、ホスト１はその要求に対してデータ１０をコントローラ３に送信する。コントローラ３はそのデータ１０をＳＲＡＭ６に記憶する。全てのデータの受信が完了すると、ホスト１に対して完了通知１１を返す。これにより、メモリドライブ装置２とホスト１の通信は終了する。次に、コントローラ３はＳＲＡＭ６に記憶されているデータをフラッシュメモリ７に転送（コピー）する。転送が完了すると、ＳＲＡＭ６に記憶されているデータを消去して終了する。
図６は図３で説明したフローチャートに基づいた各部の信号のタイミングチャートである。まず、コントローラ３はホスト１に制御信号９によりデータを要求する。ホスト１はその要求に対してデータ１０をコントローラ３に送信する。コントローラ３はそのデータ１０をＳＲＡＭ６に記憶する。ＳＲＡＭ６がメモリフルに近づくと、コントローラ３がメモリ容量がフルに近いこと認識してホスト１に対してデータ１０の送信中断を通知する。次に、コントローラ３はＳＲＡＭ６に記憶されているデータをフラッシュメモリ７に転送（コピー）する。転送が完了すると、ＳＲＡＭ６に記憶されているデータを消去する。そして、ホスト１に対して残りのデータの送信を要求し、ントローラ３はそのデータ１０をＳＲＡＭ６に記憶する。全てのデータの受信が完了すると、ホスト１に対して完了通知１１を返して、コントローラ３はＳＲＡＭ６に記憶されているデータをフラッシュメモリ７に転送（コピー）して、転送が完了すると、ＳＲＡＭ６に記憶されているデータを消去して終了する。
【００１４】
図７、図８は図４で説明したフローチャートに基づいた各部の信号のタイミングチャートである。まず図７において、コントローラ３はホスト１に制御信号９によりデータを要求する。ホスト１はその要求に対してデータ１０をコントローラ３に送信する。コントローラ３はそのデータ１０をＳＲＡＭ６に記憶する。ここで全てのデータの受信が完了する前に、障害（例えば停電）が発生すると、ホスト１に再送要求を出す。それにより、ホスト１はデータ１０を再送し、全てのデータの受信が完了すると、ホスト１に対して完了通知１１を返す。これにより、メモリドライブ装置２とホスト１の通信は終了する。次に、コントローラ３はＳＲＡＭ６に記憶されているデータをフラッシュメモリ７に転送（コピー）する。転送が完了すると、ＳＲＡＭ６に記憶されているデータを消去する。
次に図８において、全てのデータの受信が完了すると、ホスト１に対して完了通知１１を返す。これにより、メモリドライブ装置２とホスト１の通信は終了する。次に、コントローラ３はＳＲＡＭ６に記憶されているデータをフラッシュメモリ７に転送（コピー）する。ここで、転送が完了する前に、障害（例えば停電）が発生すると、コントローラ３はＳＲＡＭ６に再送要求を出して転送されていないデータを転送する。尚、ここで、ＳＲＡＭ６に記憶されているデータを全て転送するようにしても良い。転送が完了すると、ＳＲＡＭ６に記憶されているデータを消去する。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施形態に係るメモリドライブ装置の概略構成を示す図である。
【図２】図１のメモリドライブ装置のＳＲＡＭが一括記憶する場合の動作について説明するフローチャートである。
【図３】図１のメモリドライブ装置のＳＲＡＭが分割記憶する場合の動作について説明するフローチャートである。
【図４】一括記憶動作中に障害が発生した場合の動作について説明するフローチャートである。
【図５】図２で説明したフローチャートに基づいた各部の信号のタイミングチャートである。
【図６】図３で説明したフローチャートに基づいた各部の信号のタイミングチャートである。
【図７】図４で説明したフローチャートに基づいた各部の信号のタイミングチャートである。
【図８】図４で説明したフローチャートに基づいた各部の信号のタイミングチャートである。
【符号の説明】
【００１６】
１  ホスト、２  メモリドライブ装置、３  コントローラ、４  バッテリ、５  充電回路、６  ＳＲＡＭ、７  フラッシュメモリ、８  電源、９  制御信号、１０  データ、１１  完了通知信号、１２  データ消去信号、１３  信号線、１４  データ転送信号
【図１】
2010160634.tif 000003
【図２】
2010160634.tif 000004
【図３】
2010160634.tif 000005
【図４】
2010160634.tif 000006
【図５】
2010160634.tif 000007
【図６】
2010160634.tif 000008
【図７】
2010160634.tif 000009
【図８】
2010160634.tif 000010