(57)【特許請求の範囲】
【請求項１】
ユニット式ポータブルデータ記憶デバイスにおいて、
前記ポータブルデータ記憶デバイスに適合するユニバーサルシリアルバス（ＵＳＢ）コネクタと、
第１の記憶容量を有するフラッシュメモリと、
データ圧縮エンジンとを具備し、
前記ポータブルデータ記憶デバイスはデータパケットの形態でデータを受信するように前記コネクタを通してコンピュータに直接接続可能であり、
前記データ圧縮エンジンは、前記フラッシュメモリの容量が前記第１の記憶容量を超えるように、前記フラッシュメモリ中に記憶させるために前記各データパケットを圧縮して、データパケットの形態でそれぞれ圧縮されたデータを形成することができるユニット式ポータブルデータ記憶デバイス。
【請求項２】
前記ポータブルデータ記憶デバイスの前記フラッシュメモリに記憶されているデータを解凍することができるデータ解凍エンジンをさらに具備する請求項１記載のユニット式ポータブルデータ記憶デバイス。
【請求項３】
前記ポータブルデータ記憶デバイスのユーザはデータが圧縮されていることを認識していない請求項１記載のユニット式ポータブルデータ記憶デバイス。
【請求項４】
各データパケットはその元のサイズの５０パーセントに圧縮される請求項１記載のユニット式ポータブルデータ記憶デバイス。
【請求項５】
前記フラッシュメモリの容量を１００パーセント分増加させる請求項１記載のユニット式ポータブルデータ記憶デバイス。
【請求項６】
前記ポータブルデータ記憶デバイスのユーザは前記データ圧縮エンジンをイネーブルおよびディセーブルすることができる請求項１記載のユニット式ポータブルデータ記憶デバイス。
【請求項７】
（ａ）ユニバーサルシリアルバスコネクタを通してポータブルデータ記憶デバイスをホストプラットフォームの通信ポートに直接接続し、
（ｂ）データパケットのストリームとして前記通信ポートからデータを受信し、
（ｃ）前記ポータブルデータ記憶デバイス上に存在するデータ圧縮エンジンを実行し、
（ｄ）前記ホストプラットフォームにより提供されるデータパケットを圧縮してそれぞれ圧縮されたデータパケットを形成し、
（ｅ）前記圧縮データパケットを前記ポータブルデータ記憶デバイスのメモリにセーブするステップを含むデータ圧縮方法。
【請求項８】
前記ポータブルデータ記憶デバイスのユーザはデータが圧縮されていることを認識していない請求項７記載の方法。
【請求項９】
前記圧縮ステップはその元のサイズの５０パーセントに各データパケットを圧縮させることを含む請求項７記載の方法。
【請求項１０】
前記メモリの容量を１００パーセント分増加させるステップをさらに含む請求項７記載の方法。
【請求項１１】
前記ポータブルデータ記憶デバイスのユーザは前記圧縮エンジンをイネーブルおよびディセーブルすることができる請求項７記載の方法。
【請求項１２】
ポータブルデータ記憶デバイスのメモリにセーブされている圧縮データパケットを解凍する方法において、
（ａ）ユニバーサルシリアルバス（ＵＳＢ）を通して前記ポータブルデータ記憶デバイスをパーソナルコンピュータの通信ポートに直接接続し、
（ｂ）前記ポータブルデータ記憶デバイス上に存在するデータ圧縮／解凍エンジンを実行し、
（ｃ）前記ポータブルデータ記憶デバイスの前記メモリから圧縮データパケットを検索し、
（ｄ）前記圧縮データパケットを解凍してそれぞれ解凍されたデータパケットを形成し、
（ｅ）前記解凍データパケットを前記パーソナルコンピュータに送信するステップを含む方法。
【請求項１３】
前記ポータブルデータ記憶デバイスのユーザは前記圧縮／解凍エンジンをイネーブルおよびディセーブルすることができる請求項１２記載の方法。
【発明の詳細な説明】
【関連出願の相互参照】
【０００１】
本願は以下の米国特許出願に関連し、そのそれぞれは本発明の譲受人により所有され、その全体が参照によりここに組み込まれている。
【０００２】
“ＵＳＢプラグを通してコンピュータに直接接続可能なポータブルデータ記憶デバイス”と題する米国特許出願第０９／８０３，１７３号；“安全動作モードを有するポータブルデータ記憶デバイス”と題する米国特許出願第０９／８０３，１５７号；“バイオメトリクスベースの認証機能を有するポータブルデバイス”と題する米国特許出願第０９／８９８，３６５号；および“バイオメトリクスベースの認証機能を有するポータブルデバイス”と題する米国特許出願第０９／８９８，３１０号。
【発明の分野】
【０００３】
本発明は電子データの記憶の分野に関する。特に、本発明はポータブルメモリデバイスに記憶されるデータの圧縮および解凍に関する。
【発明の背景】
【０００４】
ポータブルメモリデバイスは時には“キーチェーン”メモリデバイスまたはサムドライブ（登録商標）（これは本発明の譲受人の商標である）と呼ばれ、小型のポータブルデータ記憶デバイスである。これらのデバイスは、仕事、教育および家庭コンピューティングにおいて広く利用されている必要不可欠なコンピュータ周辺装置の分類になっている。これらのデバイスはパーソナルコンピュータ（ＰＣ）、パーソナルデジタルアシスタント（ＰＤＡ）、磁気ディスクまたはコンパクトディスク（ＣＤ）のような他のデータ記憶デバイスと比較して非常に小型である。実際、名称“キーチェーン”メモリデバイスはキーと同じくらいの大きさのデバイスを説明する。ポータブルメモリデバイスは一般的にＰＣのような特定のホストプラットフォームに永久的に取り付けられない。むしろ、これらは適切な接続ポート（例えばＵＳＢポートのようなシリアルバスポートまたはＩＥＥＥ１３９４ポート（“ファイアワイヤ”））を有する任意のコンピュータに都合よく取り付けられ、取り外すことができる。したがって、これらのポータブルデータ記憶デバイスはこうしなければ接続されていない異なるコンピュータ間にユーザがデータを転送できるようにする。これらのデバイスは記憶媒体として不揮発性ソリッドステートメモリ（例えばフラッシュメモリ）を利用することから、データにアクセスするために動く部品または機械的な駆動メカニズムを必要としない。駆動メカニズムがないとポータブルデータ記憶デバイスを、磁気ディスクやＣＤのような表面記憶デバイスよりもさらにコンパクトにすることができる。また、動く部品がないことから、メモリへの読み書きは磁気ディスクやＣＤよりもかなり速く行うことができる。ポータブルデータ記憶デバイスは磁気ディスクよりもかなり大きいメモリ容量も持ち、１．４メガバイトの磁気ディスクと比較して２５６メガバイトまで保持する。
【０００５】
ポータブルメモリデバイスに対してデータを記憶させることが有用なことであると証明されているが、これらのデバイスの利用は、それらのサイズを増加させることなくより多くの量のデータを記憶させられない能力により制限される。
【発明の開示】
【発明の概要】
【０００６】
したがって、本発明の目的は現在の技術状態のものが可能とするよりも多くの量のデータをユーザがポータブルメモリデバイスにセーブできるようにするシステムおよび装置を提供することである。これにより、製造者がメモリの物理的なサイズしたがってデバイスのサイズを増加させることなく、これらのデバイスのメモリに記憶させることができるデータ量を増加させることができるようになる。さらに、これは、このようなデバイスが記憶することができるデータ量を減少させることなく、製造者がこれらのデバイスのサイズを減少させることができる付加的な利点を持つ。
【０００７】
これらおよび他の目的はＵＳＢポート、ＩＥＥＥ１３９４（すなわちファイアワイヤ）、または同様なポートを通してＰＣのようなホストプラットフォームに容易に接続することができるポータブルメモリデバイスを備えた本発明により達成される。デバイスに含まれているものは、フラッシュメモリ、リードオンリーメモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ＵＳＢ制御装置、およびマイクロ制御装置である。さらに、データ圧縮および解凍エンジンがポータブルメモリデバイスに含まれ、データがメモリに記憶され、メモリから検索されるときにデータを圧縮／解凍する。
【０００８】
ポータブルメモリデバイス（サムドライブ（登録商標））は、パーソナルコンピュータ（ＰＣ）のＵＳＢポートに挿入されるＵＳＢコネクタにより、ＰＣのようなホストプラットフォームに接続される。ポータブルメモリデバイスにセーブされるデータはデータパケットの形態でＰＣによりポータブルメモリデバイス中のワーキングバッファに送信される。圧縮エンジンはバッファからデータを検索し、各パケットデータを圧縮する。圧縮されたデータパケットはフラッシュメモリに記憶される。データを検索するために、圧縮／解凍エンジンはフラッシュメモリからデータを検索して、それを解凍する。解凍エンジンは解凍データをワーキングバッファに置き、ここでホストプラットフォームに転送される。
【０００９】
一般的に、圧縮／解凍ソフトウェアはＲＯＭ中に位置付けられ、実行のためにマイクロ制御装置にロードされる。代替実施形態では、圧縮／解凍エンジンはポータブルデバイス中のＡＳＩＣに存在する。
【００１０】
ポータブルデバイスの圧縮／解凍機能はユーザに見えない。ユーザはデータをセーブするが圧縮されていることを認識しない。代替実施形態では、ユーザはこれらの機能を認識し、望ましいように圧縮機能をイネーブル／ディセーブルさせる。圧縮機能をディセーブルさせることは、データをセーブすることができる速度を増加させる効果を有する。
【００１１】
本発明の目的、特徴および効果は図面を参照して本発明の好ましい実施形態の以下の詳細な説明から明らかになるであろう。
【発明の詳細な説明】
【００１２】
本発明を添付図面によってさらに完全に説明する。添付図面には本発明の好ましい実施形態が示されている。しかしながら、本発明は多くの異なる形態で具体化されてもよく、ここで説明されている実施形態に限定されるものと解釈すべきではない。むしろ、これらの実施形態はこの開示が当業者に対して本発明を徹底的かつ完全に全部伝えるように提供されている。実際、本発明はこれらの実施形態の代替、修正および均等物をカバーすることを意図しており、これらは特許請求の範囲により規定される発明の範囲および精神内に含まれる。さらに、本発明の以下の詳細な説明では、本発明の完全な理解をもたらすために、非常に多く特定な詳細が記述されている。しかしながら、本発明はこのような特定の詳細がなくても実施できることは当業者に明らかである。他の例では、本発明の観点を不必要に曖昧にしないように、よく知られた方法、手順、構成要素および回路は詳細に説明されていない。
【００１３】
図１は本発明およびその例示的な構成のポータブルメモリデバイスおよびシステムの１つの実施形態の機能ブロックを図示しているブロック図である。図１はポータブルメモリデバイス１００（ほぼ握りこぶしに適合させることができる小型ハンドヘルドデバイス）を示し、これはユニバーサルシリアルバス（ＵＳＢ）ポート、ＩＥＥＥ１３９４（すなわちファイアワイヤ）または同様なポートコネクタ４０を通して、（パーソナルコンピュータのような）ホストプラットフォーム１９５のＵＳＢポート（または同様なポート）１９２に接続される。好ましい実施形態では、接続はワイヤまたはケーブル相互接続をすることなくなされる。ホストプラットフォーム１９５はポータブルメモリデバイス１００に配置されている電源回路１５０に結合される。電源回路１５０はホストプラットフォーム１９５から電力を引き出し、ポータブルメモリデバイス１００のさまざまな構成要素の電源として機能する。
【００１４】
さらに図１を参照すると、ポータブルメモリデバイス１００にはマイクロ制御装置１６０、フラッシュメモリ１８０、およびデータ圧縮／解凍エンジン１９０が含まれている。マイクロ制御装置１６０は汎用マイクロプロセッサとすることができることを理解すべきである。
【００１５】
１つの実施形態では、ワーキングバッファ１６５はマイクロ制御装置に配置されている。代替実施形態では、ワーキングバッファ１６５はマイクロ制御装置１６５の外側（例えばＲＡＭ１１０中）に配置されている。好ましい実施形態では、ワーキングバッファは１６キロバイトの容量を有する。
【００１６】
データ圧縮／解凍エンジン１９０は本発明の範囲内のさまざまな方法で実現されてもよいことを理解すべきである。１つの実施形態では、圧縮／解凍エンジン１９０はポータブルメモリデバイス１００内の不揮発性メモリ１１０中に記憶されるファームウェアとして実現される。他の実施形態では、データ圧縮／解凍エンジン１９０はマイクロ制御装置１６０の一部として実現される。さらに別の実施形態では、圧縮／解凍エンジン１９０はマイクロ制御装置１６０から独立したプロセッサとして実現される。言い換えれば、本発明の範囲内で、圧縮／解凍エンジン１９０はポータブルメモリデバイス１００中の特定の位置に存在することは要求されない。代わりに、圧縮／解凍エンジン１９０が置かれる場所は設計事項であり、したがって本発明を利用することができる異なる応用に適合するように設計の柔軟性を提供する。
【００１７】
データ圧縮／解凍エンジン１９０はデータがホストプラットフォーム１９５からポータブルメモリデバイス１００に転送された後にデータを圧縮する。データはＵＳＢバスに沿って送られるデータパケットの形態で転送される。データ圧縮／解凍エンジン１９０はワーキングバッファ１６５から（一般的に一度に１セクタの）データを検索し、このデータを圧縮する。好ましい実施形態では、データはその元のサイズの５０％に圧縮される。したがって、５１２バイトのデータパケットは２５６バイトに圧縮される。圧縮後、データはフラッシュメモリ１８０に記憶される。圧縮／解凍エンジン１９０はフラッシュメモリ１８０に記憶されているデータを解凍し、そのデータをホストプラットフォーム１９５に転送する。
【００１８】
この実施形態では、ポータブルメモリデバイスにはＵＳＢデバイス制御装置１３０が含まれ、これはポータブルメモリデバイス１００とホストプラットフォーム１９５との間の通信を制御するように機能する。ホストプラットフォーム１９５は、ＵＳＢホスト制御装置１９７をその中に有するＵＳＢ互換性ＰＣのようなものである。
【００１９】
さらに図１を参照すると、ポータブルメモリデバイス１００には揮発性メモリ１２０と不揮発性メモリ１１０も含まれる。好ましい実施形態では、揮発性メモリ１２０はランダムアクセスメモリ（ＲＡＭ）であり、その動作中にマイクロ制御装置１６０に対するワーキングメモリとして機能する。この実施形態では不揮発性メモリ１１０はリードオンリーメモリ（ＲＯＭ）であり、ポータブルメモリデバイス１００のさまざまな機能を実行するファームウェアを記憶するのに使用することができる。
【００２０】
さらに、この実施形態では、ポータブルメモリデバイス１００には書き込みプロテクトスイッチ１７０が含まれ、このスイッチ１７０は起動されたときにマイクロ制御装置１６０にトリガをかけてフラッシュメモリ１８０に対する書き込みアクセスをディセーブルさせる。書き込みプロテクトスイッチ１７０は圧縮／解凍エンジン１９０と同様に本発明の範囲内のさまざまな方法で実現されてもよいことを理解すべきである。例えば、書き込みプロテクトスイッチ１７０はマイクロ制御装置１６０、あるいはマイクロ制御装置１６０から独立したプロセッサユニットの一部としてソフトウェア（例えば不揮発性メモリ中に記憶されたファームウェア）により実現させることができる。代替実施形態では、書き込みプロテクトスイッチ１７０はマニュアルスイッチとすることができ、これはユーザにより手動で操作される。
【００２１】
図１に図示されているような現在の好ましい実施形態では、マイクロプロセッサ１６０はポータブルメモリデバイス１００のさまざまな構成要素を制御し、これにはＵＳＢデバイス制御装置１３０、ＲＯＭ１１０およびＲＡＭ１２０（ならびにそこに記憶されているファームウェアの実行）が含まれる。
【００２２】
オプション的に、ポータブルメモリデバイス１００にはさらに（示されていない）ＵＳＢポートが含まれ、これは他のＵＳＢ互換性デバイスをＵＳＢを通してポータブルメモリデバイス１００に結合させるのに使用することができる便利な機能として提供される。
【００２３】
１つの実施形態では、（示されていない）ドライバソフトウェア、（示されていない）アプリケーションプログラミングインターフェース（ＡＰＩ）、および（示されていない）モリタリングソフトウェアはホストプラットフォーム１９５中に存在し、ＵＳＢホスト制御装置１９７と通信してポータブルメモリデバイス１００の動作を促進する。
【００２４】
ポータブルデータ記憶デバイスのアーキテクチャは２００１年７月３日に出願された、“バイオメトリクスベースの認証機能を有するポータブルデバイス”と題する米国特許出願第０９／８９８，３６５号および“ＵＳＢプラグを通してコンピュータに直接接続可能なポータブルデータ記憶デバイス”と題する米国特許出願題０９／８０３，１７３号で説明されている。
【００２５】
図２はユーザがポータブルデバイス１００をホストプラットフォーム１９５に接続し（ステップ２０５）、ポータブルデバイス１００へのデータのセーブを開始するときに生じる動作のフロー図を図示している。ステップ２０５において、ホストプラットフォーム１９５に結合されるときに、ポータブルデバイス１００は初期化手順を経る。現在の好ましい実施形態では、初期化手順はホストプラットフォーム１９５との通信を確立し、ポータブルデバイス１００が結合されていることをホストプラットフォーム１９５に確実に認識させることを伴う。ホストプラットフォーム１９５は要求パケットをＵＳＢホスト制御装置１９７に送信することによりポータブルデバイス１００からのサービスを要求する。ＵＳＢホスト制御装置１９７はパケットをＵＳＢポート１９２を通してＵＳＢコネクタ１４０に送信する。ポータブルデバイス１００はフラッシュメモリ１８０からのデータまたはフラッシュメモリ１８０へのデータを圧縮および解凍することに組み合わせて、読み出し、書き込みまたは消去のようなさまざまな動作を実行する。
【００２６】
ステップ２１０において、ホストプラットフォーム１９５は書き込みコマンドの形態でデータをフラッシュメモリ１８０に書き込むための要求をポータブルメモリデバイス１００に送信する。ステップ２１５において、ＵＳＢ制御装置１３０は書き込みコマンドを受信する。書き込みコマンドは一般的にセーブされるべきデータのパケット数を示す。
【００２７】
図３は圧縮されてフラッシュメモリ１８０に書き込まれるべきデータがポータブルデバイスに転送されるときに生じる動作のフロー図を図示している。ホストプラットフォーム１９５は第１のデータパケットをＵＳＢ制御装置１３０に送信する（ステップ３０３）。１つの実施形態では、ＵＳＢ２．０標準規格にしたがうと、各データパケットはメモリの１セクタすなわち５１２バイトに相当する。代替実施形態では、ＵＳＢ標準規格１．１にしたがうと、各データパケットは６４バイトである。
【００２８】
ＵＳＢ制御装置１３０はホストプラットフォーム１９５からデータパケットを受信する（ステップ３０５）。ＵＳＢ制御装置１３０はデータパケットをワーキングバッファ１６５に送信する（ステップ３１０）。好ましい実施形態では、ワーキングバッファ１６５は最大１６キロバイトのデータを保持することができる。ワーキングバッファ１６５が最大容量に到達し、さらに追加データを記憶することができない場合には、次のデータパケットは拒否され、否定応答（ＮＡＫ）通信がマイクロ制御装置１６０によりホスト制御装置１９５に送信され、拒否されたデータパケットが受信されなかったことを示す（ステップ３１２および３１３）。ホスト制御装置１９５は拒否されたデータパケットを再送信する（ステップ３０３）。このパケットの拒否および再送信プロセスは、ワーキングバッファ１６５が追加データパケットを受け入れる容量を有するまで継続する（ステップ３１４）。
【００２９】
マイクロ制御装置１６０はデータ圧縮／解凍エンジン１９０を実行する（ステップ３１５）。圧縮／解凍エンジン１９０はファーストイン／ファーストアウト方式でワーキングバッファ１６５に記憶されているデータパケットに対して動作し（ステップ３２０）、それによりワーキングバッファ１６５に記憶されている順序にデータパケットは圧縮され、ワーキングバッファ１６５に記憶されている最初のパケットは圧縮されてフラッシュメモリ１８０に転送されるべき最初のものとなる。好ましい実施形態では、データはその元のサイズの５０％に圧縮される。好ましい実施形態では、ＵＳＢ２．０標準規格で動作するとき、圧縮エンジン１９０は一度に１セクタ（５１２バイト）のデータを圧縮するように動作する。代替実施形態では、ＵＳＢ１．１標準規格で動作するとき、圧縮エンジン１９０は一度に６４バイトのデータを圧縮するように動作する。圧縮されたデータはフラッシュメモリ１８０にセーブされる（ステップ３２５）。
【００３０】
メモリマッピングはマイクロ制御装置１６０により制御される。好ましい実施形態では、ホストプラットフォーム（およびユーザ）はデータが圧縮されていることを認識しない。ホストプラットフォームに対して、データがあたかも圧縮されていないかのように、データはフラッシュメモリ１８０中でセクタを満たすように現れる（すなわち、セクタ当たり５１２バイトの非圧縮データ）。したがって、第１のセクタに書き込まれた圧縮データはホスト制御装置に対して１つのセクタ全体を満たしているように見える。現実には、データは５１２から２５６バイトに圧縮され、データが圧縮されていない場合に必要されるセクタ空間の半分にセーブされる。したがって、第２のデータパケットも、５１２バイトから２５６バイトに圧縮された後に、第１のセクタにセーブされる。ホスト制御装置に対して、実際には第１のセクタにセーブされる第２のデータパケットは、第２のセクタにセーブされているように見える。同様に、第２のセクタにセーブされている第１のデータパケットは第３のセクタにセーブされているように見え、第２のセクタにセーブされている第２のデータパケットは第４のセクタにセーブされているように見える。
【００３１】
一般的に標準２ビットエラー検出および１ビット訂正メカニズムが使用される。
他のデータパケットが存在する場合には、ホスト制御装置１９５はデータパケットをＵＳＢ制御装置１３０に送信する（ステップ３３５および３０３）。データ圧縮エンジン１９０はワーキングバッファ１６５に記憶される付加的なデータパケットの圧縮を続ける（ステップ３２０）。圧縮すべきデータパケットがもはや存在しない場合には、データ圧縮および記憶セッションは終了する。
【００３２】
図４はデータがポータブルメモリデバイス１００のメモリ１８０から検索されて、解凍されるステップを図示している。
【００３３】
ステップ４１０では、ユーザはポータブルデバイス１００をホストプラットフォーム１９５に接続する。ステップ４１０では、ホストプラットフォーム１９５に結合されたときに、ポータブルデバイス１００は上述した初期化手順を経る。ホストプラットフォーム１９５は要求パケットをＵＳＢホスト制御装置１９７に送信することによりポータブルデバイス１００からのサービスを要求する。ＵＳＢホスト制御装置１９７はパケットをＵＳＢポート１９２を通してＵＳＢコネクタ１４０に送信する。
【００３４】
ホストプラットフォーム１９５は読み出しコマンドの形態でユーザにより要求されるデータを読み出すために、要求をポータブルデバイス１００に送信してもよい（ステップ４２０）。ＵＳＢ制御装置１３０は読み出しコマンドを受信する（ステップ４２５）。読み出しコマンドはフラッシュメモリ１８０におけるデータの位置と、読み出すべきデータパケット数を示す。ホストプラットフォーム１９５はデータが圧縮されていることを認識していないことから、ホストプラットフォーム１９５がデータがあると考えているセクタ中に必ずしもないデータを読み出しコマンドは要求する。例えば、先に説明したように、第１のセクタの第２の半分に実際はセーブされている第２のデータパケットは、ホストプラットフォーム１９５には第２のセクタにセーブされているように見える。同様に、第２のセクタにセーブされている第１のデータパケットは第３のセクタにセーブされているように見え、第２のセクタにセーブされている第２のデータパケットは第４のセクタにセーブされているように見える。したがって、ホストプラットフォーム１９５のデータ要求は、特定のデータパケットが第２のセクタに記憶されていることを示すかもしれないが、実際には、第１のセクタの第２の半分に記憶されている。これに対処するために、マイクロ制御装置１６０はセーブされた方法にしたがってフラッシュメモリ１８０から要求されたデータを検索するように動作する（ステップ３２５）。
【００３５】
ステップ４３０では、マイクロ制御装置１６０はデータ圧縮／解凍エンジン１９０を実行する。圧縮／解凍エンジン１９０はフラッシュメモリ１８０から、要求されたデータパケットを検索する（ステップ４４５）。圧縮／解凍エンジン１９０はデータを解凍するように動作する（ステップ４４７）。解凍されたデータはワーキングバッファ１６５に転送される（ステップ４５０）。解凍されたデータはＵＳＢ制御装置１３０に転送される（ステップ４５５）。ステップ４６０では、データパケットはホストプラットフォーム１９５のメモリ（例えばＲＡＭ）に転送される。
【００３６】
データ圧縮／解凍エンジン１９０は、要求されたすべてのデータが解凍されてホストプラットフォーム１９５に転送されるまで、フラッシュメモリ１８０からデータを検索して解凍し続ける。
【００３７】
代わりに、ホストプラットフォーム１９５はフラッシュメモリ１８０に記憶されているデータのディレクトリを読み出すために、要求をポータブルデバイス１００に送信してもよい。ユーザはホストプラットフォーム１９５上のディレクトリを見て、どのデータユーザがフラッシュメモリ１８０から検索したがっているのかを決定することができる。
【００３８】
先の説明は本発明の好ましい実施形態のものだけであることを理解すべきである。当業者は本発明の精神および範囲を逸脱することなく、他の非常に多くの構成を考案することができる。したがって、本発明は特許請求の範囲に規定されているもののみにより限定される。
【図面の簡単な説明】
【００３９】
【図１】図１は本発明とその例示的な構成にしたがったポータブルメモリデバイスの１つの実施形態の機能ブロックを図示しているブロック図である。
【図２】図２はホストプラットフォームがポータブルメモリデバイスにどのようにコマンドを通信するかについて説明しているフロー図である。
【図３】図３はポータブルメモリデバイスのメモリにデータがどのように送信され、圧縮され、セーブされるかを説明しているフロー図である。
【図４】図４はポータブルメモリデバイスのメモリにセーブされた圧縮データがどのようにアクセスされるかを説明しているフロー図である。
【要約】
【解決手段】ポータブルメモリデバイスが提供され、これはユニバーサルシリアルバス（ＵＳＢ）ポート、ＩＥＥＥ１３９４（すなわちファイアワイヤ）、あるいは同様なポートを通してパーソナルコンピュータへの容易な接続をすることができる。ポータブルメモリデバイスに含まれているものは、データの圧縮および解凍をすることができる圧縮／解凍エンジンである。パーソナルコンピュータまたは他のホストプラットフォーム上に存在するデータはエンジンにより圧縮されて、ポータブルメモリデバイスのメモリにセーブされる。圧縮されたデータはエンジンにより検索および解凍され、ユーザによる使用のためにパーソナルコンピュータに送信される。本発明の実施形態はこのように、ユーザが比較的小型のデバイスにアクセスして多量のデータをセーブさせるかなり便利なシステムおよび装置を提供する。
【選択図】      図１【図１】
0003673274.tif 000002
【図２】
0003673274.tif 000003
【図３】
0003673274.tif 000004
【図４】
0003673274.tif 000005