(57)【要約】【課題】  複数接続することで容量を増やすことができるとともに、データのアクセスを高速に行え、かつ、保存したデータのセキュリティを簡単に確保することのできるＵＳＢメモリ装置、および、ＵＳＢメモリ装置を制御するためのＵＳＢメモリ装置制御プログラムを提供する。【解決手段】  ホスト機器から入力されたデータを、一次および二次ＵＳＢインタフェース４，６を介して数珠繋ぎに接続された当該ＵＳＢメモリ装置Ａ１および他のＵＳＢメモリ装置Ａ２，Ａ３の各メモリ７に、所定単位ずつ分散させて記憶させる制御を行う分散記憶手段２０を備える。【選択図】          図３
2006031123.tif 000002
【特許請求の範囲】
【請求項１】
ホスト機器のＵＳＢインタフェース、または、ホスト機器のＵＳＢインタフェースから数珠繋ぎに接続された他のスレーブ機器のＵＳＢインタフェースに接続可能に設けられ、ホスト機器との間でデータを入出力可能とする一次ＵＳＢインタフェースと、
他のスレーブ機器のＵＳＢインタフェースと接続可能に設けられ、該他のスレーブ機器との間でデータを入出力可能とする二次ＵＳＢインタフェースと、
データを記憶可能なメモリと、
前記一次ＵＳＢインタフェースを介して前記ホスト機器から入力されたデータを、前記メモリに記憶する書き込み手段と、
前記メモリに記憶されたデータを読み出して、前記一次ＵＳＢインタフェースを介して前記ホスト機器に出力する読み出し手段とを備えたＵＳＢメモリ装置であって、
前記ホスト機器から入力されたデータを、前記一次および二次ＵＳＢインタフェースを介して数珠繋ぎに接続された当該ＵＳＢメモリ装置および他のＵＳＢメモリ装置の各メモリに、所定単位ずつ分散させて記憶させる制御を行う分散記憶手段を備えることを特徴とするＵＳＢメモリ装置。
【請求項２】
前記分散記憶手段は、前記ホスト機器から入力されたデータを当該ＵＳＢメモリ装置および前記他のＵＳＢメモリ装置の各メモリに記憶させる処理を、各ＵＳＢメモリ装置に並列処理させることを特徴とする請求項１記載のＵＳＢメモリ装置。
【請求項３】
前記分散記憶手段によって当該ＵＳＢメモリ装置および前記他のＵＳＢメモリ装置の各メモリに分散して記憶されたデータをそれぞれ読み出して、前記ホスト機器に出力する分散読み出し手段を備えることを特徴とする請求項１または２記載のＵＳＢメモリ装置。
【請求項４】
当該ＵＳＢメモリ装置または前記他のＵＳＢメモリ装置の前記分散記憶手段によって前記所定単位に分散され、当該ＵＳＢメモリ装置の前記メモリに記憶させるべきデータを、単数または複数単位分、一時的に記憶可能なＦＩＦＯメモリを備えることを特徴とする請求項１〜３のうちのいずれか一項記載のＵＳＢメモリ装置。
【請求項５】
前記一次および二次ＵＳＢインタフェースを介して数珠繋ぎに接続された当該ＵＳＢメモリ装置および前記他のＵＳＢメモリ装置のなかから、各ＵＳＢメモリ装置の各メモリにデータを分散させて記憶させるべく前記分散記憶手段を実行するマスターＵＳＢメモリ装置を選択するマスター選択手段と、
該マスター選択手段によって当該ＵＳＢメモリ装置がマスターＵＳＢメモリ装置となるよう選択された場合には、前記分散記憶手段を実行して前記各ＵＳＢメモリ装置にデータを分散させて記憶させ、マスター選択手段によって当該ＵＳＢメモリ装置とは別のＵＳＢメモリ装置がマスターＵＳＢメモリ装置となるよう選択された場合には、該マスターＵＳＢメモリ装置の分散記憶手段により前記所定単位に分散されたデータを、前記メモリに記憶するよう制御する主従制御手段とを備えることを特徴とする請求項１〜４のうちのいずれか一項記載のＵＳＢメモリ装置。
【請求項６】
前記マスター選択手段によって当該ＵＳＢメモリ装置が前記マスターＵＳＢメモリ装置となるよう選択された場合には、前記ホスト機器に対して当該ＵＳＢメモリ装置がスレーブ機器であることを示す認識信号を発信し、マスター選択手段によって当該ＵＳＢメモリ装置とは別のＵＳＢメモリ装置がマスターＵＳＢメモリ装置となるよう選択された場合には、ホスト機器に対して前記認識信号を発信しないよう制御するスレーブ信号制御手段を備えることを特徴とする請求項５記載のＵＳＢメモリ装置。
【請求項７】
前記マスター選択手段は、当該ＵＳＢメモリ装置および前記他のＵＳＢメモリ装置のうち、最も前記ホスト機器側に接続されているＵＳＢメモリ装置を、前記マスターＵＳＢメモリ装置に選択することを特徴とする請求項５または６記載のＵＳＢメモリ装置。
【請求項８】
前記マスター選択手段によって当該ＵＳＢメモリ装置が前記マスターＵＳＢメモリ装置となるよう選択された場合には、前記他のＵＳＢメモリ装置が前記ホスト機器に対して発信した、該他のＵＳＢメモリ装置がスレーブ機器であることを示す認識信号を消去するスレーブ信号消去手段を備えることを特徴とする請求項７記載のＵＳＢメモリ装置。
【請求項９】
前記ホスト機器から入力されたデータを、当該ＵＳＢメモリ装置および前記他のＵＳＢメモリ装置のメモリのうちの一つに、連続した状態に記憶させる連続記憶手段と、
前記ホスト機器から入力されたデータを、前記分散記憶手段によって記憶させるか、前記連続記憶手段によって記憶させるかを選択する記憶方式選択手段とを備えることを特徴とする請求項１〜８のうちのいずれか一項記載のＵＳＢメモリ装置。
【請求項１０】
前記連続記憶手段は、前記ホスト機器から入力されたデータを、当該ＵＳＢメモリ装置および前記他のＵＳＢメモリ装置のメモリのうちの一つに、連続した状態に記憶させ、該メモリの残容量がなくなった場合には、該データの続きを、当該ＵＳＢメモリ装置および前記他のＵＳＢメモリ装置のうちの別のＵＳＢメモリ装置のメモリに、連続した状態に記憶させる制御を行うことを特徴とする請求項９記載のＵＳＢメモリ装置。
【請求項１１】
ホスト機器のＵＳＢインタフェース、または、ホスト機器のＵＳＢインタフェースから数珠繋ぎに接続された他のスレーブ機器のＵＳＢインタフェースに接続可能に設けられ、ホスト機器との間でデータを入出力可能とする一次ＵＳＢインタフェースと、
データを記憶可能な複数のメモリと、
前記一次ＵＳＢインタフェースを介して前記ホスト機器から入力されたデータを、前記メモリに記憶する書き込み手段と、
前記メモリに記憶されたデータを読み出して、前記一次ＵＳＢインタフェースを介して前記ホスト機器に出力する読み出し手段とを備えたＵＳＢメモリ装置であって、
前記書き込み手段は、前記ホスト機器から入力されたデータを、前記複数のメモリに、所定単位ずつ分散させて記憶する分散記憶手段を有することを特徴とするＵＳＢメモリ装置。
【請求項１２】
前記分散記憶手段は、前記ホスト機器から入力されたデータを前記各メモリに記憶する処理を、各メモリに並列処理させることを特徴とする請求項１１記載のＵＳＢメモリ装置。
【請求項１３】
前記読み出し手段は、前記分散記憶手段によって前記複数のメモリに分散して記憶されたデータをそれぞれ読み出して、前記ホスト機器に出力する分散読み出し手段を有することを特徴とする請求項１１または１２記載のＵＳＢメモリ装置。
【請求項１４】
前記ホスト機器から受信した、前記メモリに記憶させるべきデータを、一時的に記憶可能なＦＩＦＯメモリを備えることを特徴とする請求項１１〜１３のうちのいずれか一項記載のＵＳＢメモリ装置。
【請求項１５】
前記書き込み手段は、前記ホスト機器から入力されたデータを、前記メモリに、連続した状態に記憶する連続記憶手段を有し、
前記ホスト機器から入力されたデータを、前記分散記憶手段によって記憶するか、前記連続記憶手段によって記憶するかを選択する記憶方式選択手段を備えることを特徴とする請求項１１〜１４のうちのいずれか一項記載のＵＳＢメモリ装置。
【請求項１６】
前記連続記憶手段は、前記ホスト機器から入力されたデータを、前記複数のメモリのうちの一つに、連続した状態に記憶させ、該メモリの残容量がなくなった場合には、該データの続きを、前記複数のメモリのうちの別のメモリに、連続した状態に記憶することを特徴とする請求項１５記載のＵＳＢメモリ装置。
【請求項１７】
前記所定単位は、前記メモリの最小書き込み単位であることを特徴とする請求項１〜１６のうちのいずれか一項記載のＵＳＢメモリ装置。
【請求項１８】
前記メモリはフラッシュメモリであることを特徴とする請求項１〜１７のうちのいずれか一項記載のＵＳＢメモリ装置。
【請求項１９】
複数のスレーブ機器を数珠繋ぎに接続可能なＵＳＢインタフェースを備えたホスト機器に読み取り可能に設けられ、
前記ＵＳＢインタフェース、または、該ＵＳＢインタフェースに数珠繋ぎに接続された他のスレーブ機器のＵＳＢインタフェースから数珠繋ぎに接続された複数のＵＳＢメモリ装置のメモリに、データを記憶させる書き込み手段と、
前記メモリに記憶されたデータを読み出す読み出し手段とを、前記ホスト機器に実現させるＵＳＢメモリ装置制御プログラムであって、
前記書き込み手段は、前記複数のＵＳＢメモリ装置のメモリに、データを所定単位ずつ分散させて記憶させる制御を行う分散記憶手段を有することを特徴とするＵＳＢメモリ装置制御プログラム。
【請求項２０】
前記分散記憶手段は、データを前記各ＵＳＢメモリ装置のメモリに記憶させる処理を、各ＵＳＢメモリ装置に並列処理させることを特徴とする請求項１９記載のＵＳＢメモリ装置制御プログラム。
【請求項２１】
前記読み出し手段は、前記分散記憶手段によって前記複数のＵＳＢメモリ装置のメモリに分散して記憶されたデータをそれぞれ読み出す分散読み出し手段を有することを特徴とする請求項１９または２０記載のＵＳＢメモリ装置制御プログラム。
【請求項２２】
前記書き込み手段は、前記複数のＵＳＢメモリ装置のうちの一つのメモリに、データを連続した状態に記憶させる連続記憶手段を有し、
データを、前記分散記憶手段によって記憶させるか、前記連続記憶手段によって記憶させるかを選択する記憶方式選択手段を、前記ホスト機器に実現させることを特徴とする請求項１９〜２１のうちのいずれか一項記載のＵＳＢメモリ装置制御プログラム。
【請求項２３】
前記連続記憶手段は、前記複数のＵＳＢメモリ装置のうちの一つのメモリに、データを連続した状態に記憶させ、該メモリの残容量がなくなった場合には、該データの続きを、前記複数のＵＳＢメモリ装置のうちの別のＵＳＢメモリ装置のメモリに、連続した状態に記憶させることを特徴とする請求項２２記載のＵＳＢメモリ装置制御プログラム。
【請求項２４】
前記所定単位は、前記メモリの最小書き込み単位であることを特徴とする請求項１９〜２３のうちのいずれか一項記載のＵＳＢメモリ装置制御プログラム。
【請求項２５】
前記メモリはフラッシュメモリであることを特徴とする請求項１９〜２４のうちのいずれか一項記載のＵＳＢメモリ装置制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホスト機器のＵＳＢインタフェースに接続可能なＵＳＢインタフェースと、ＵＳＢインタフェースを介してホスト機器から入力されたデータを、メモリに書き込む書き込み手段と、メモリと、メモリに記憶されたデータを読み出して、前記ＵＳＢインタフェースを介してホスト機器に出力する読み出し手段とを備えたＵＳＢメモリ装置に関するものである。
【背景技術】
【０００２】
近年、コンピュータと周辺機器との間のデータ伝送規格として、ＵＳＢが普及している。ＵＳＢは、コンピュータに設けられた一つのＵＳＢインタフェースに対し、複数のスレーブ機器を数珠繋ぎに接続可能であるため、ホスト機器が少数のインタフェースで多数の周辺機器を制御することが可能であるという、有利な特徴を備えている。
【０００３】
即ち、ＵＳＢに対応したスレーブ機器には、コンピュータ等のホスト機器のＵＳＢインタフェースに接続可能な一次ＵＳＢインタフェースと、他のスレーブ機器の一次ＵＳＢインタフェースを接続可能な二次ＵＳＢインタフェースとがともに設けられる。そして、二次ＵＳＢインタフェースに他のスレーブ機器の一次ＵＳＢインタフェースを接続することで、複数のスレーブ機器を数珠繋ぎに接続して、ホスト機器の一つのＵＳＢインタフェースに対し、複数のスレーブ機器を接続可能となっている。
【０００４】
さて、一般的なコンピュータにおいてＵＳＢインタフェースが普及したことに伴い、コンピュータの補助記憶装置として、ＵＳＢメモリ装置（一般には単に「ＵＳＢメモリ」とも呼ばれる）が普及してきている。
【０００５】
ＵＳＢメモリ装置は、一次ＵＳＢインタフェースと、データを記憶可能なフラッシュメモリとを備える。
一次ＵＳＢインタフェースは、コンピュータ等のホスト機器のＵＳＢインタフェース、または、ホスト機器のＵＳＢインタフェースから数珠繋ぎに接続された他のスレーブ機器の二次ＵＳＢインタフェースに接続され、ホスト機器とＵＳＢメモリ装置との間でデータを入出力可能とする。
一次ＵＳＢインタフェースを介してホスト機器に接続されたＵＳＢメモリ装置は、スレーブ機器の一つとして振舞う。ＵＳＢメモリ装置は、一次ＵＳＢインタフェースを介して前記ホスト機器から入力されたデータを前記フラッシュメモリに書き込み可能であるとともに、そのフラッシュメモリに記憶されたデータを一次ＵＳＢインタフェースを介してホスト機器に出力可能に設けられて、ホスト機器によるデータの読み書きが可能となっている。
【０００６】
従来のＵＳＢメモリ装置の一態様が、特許文献１に開示されている。特許文献１に記載されたＵＳＢメモリ装置は、ホスト機器のＵＳＢインタフェースに接続可能な一次ＵＳＢインタフェースとは別に、他のＵＳＢメモリ装置の一次ＵＳＢインタフェースと接続可能な二次ＵＳＢインタフェースを備える。これにより、複数のＵＳＢメモリ装置を、ホスト機器のＵＳＢインタフェースから数珠繋ぎに接続することができるよう設けられている（特許文献１  段落００４８）。
そして、直列（数珠繋ぎ）に接続されたＵＳＢメモリ装置間でファイルをコピーしたり、複数のＵＳＢメモリ装置を一体の装置として認識して、接続するＵＳＢメモリ装置の数でデータ容量を選択したりすることができるものとしている（特許文献１  段落００５０−００５２）。
【０００７】
【特許文献１】特開２００２−４１２４７号公報（段落００４８，００５０−００５２）
【発明の開示】
【発明が解決しようとする課題】
【０００８】
特許文献１に記載されたＵＳＢメモリ装置等の従来のＵＳＢメモリ装置には、データのアクセス（読み書き）速度が遅いという課題がある。
ＵＳＢメモリ装置のメモリとしては、フラッシュメモリが使用されるのが一般的であるが、フラッシュメモリの書き込み速度および読み出し速度は、一般に、現在普及しているＵＳＢ２．０の通信速度４８０Ｍｂｐｓよりも遅く、書き込みおよび読み出しに多くの時間が掛かってしまう。
【０００９】
また、従来のＵＳＢメモリ装置には、保存したデータのセキュリティを確保するのに手間が掛かるという課題がある。
即ち、従来のＵＳＢメモリ装置において、保存したデータを第三者に読み取られないようにするためには、暗号化を施すなどの処理を別途行う必要があり、その取り扱いに手間が掛かってしまう。
【００１０】
本発明は上記課題を解決すべくなされ、その目的とするところは、複数接続することで容量を増やすことができるとともに、データのアクセスを高速に行え、かつ、保存したデータのセキュリティを簡単に確保することのできるＵＳＢメモリ装置、および、ＵＳＢメモリ装置を制御するためのＵＳＢメモリ装置制御プログラムを提供することにある。
【課題を解決するための手段】
【００１１】
本願発明者は、ハードディスクにおけるＲＡＩＤ等の、１つのデータを複数の記憶装置に分けて並列に（同時に）書き込む分散記憶の技術を、数珠繋ぎに接続した複数のＵＳＢメモリ装置またはＵＳＢメモリ装置の制御プログラムに応用することで、上記課題を解決することに成功した。
【００１２】
本発明に係るＵＳＢメモリ装置は、上記課題を解決するために、以下の構成を備える。すなわち、ホスト機器のＵＳＢインタフェース、または、ホスト機器のＵＳＢインタフェースから数珠繋ぎに接続された他のスレーブ機器のＵＳＢインタフェースに接続可能に設けられ、ホスト機器との間でデータを入出力可能とする一次ＵＳＢインタフェースと、他のスレーブ機器のＵＳＢインタフェースと接続可能に設けられ、該他のスレーブ機器との間でデータを入出力可能とする二次ＵＳＢインタフェースと、データを記憶可能なメモリと、前記一次ＵＳＢインタフェースを介して前記ホスト機器から入力されたデータを、前記メモリに記憶する書き込み手段と、前記メモリに記憶されたデータを読み出して、前記一次ＵＳＢインタフェースを介して前記ホスト機器に出力する読み出し手段とを備えたＵＳＢメモリ装置であって、前記ホスト機器から入力されたデータを、前記一次および二次ＵＳＢインタフェースを介して数珠繋ぎに接続された当該ＵＳＢメモリ装置および他のＵＳＢメモリ装置の各メモリに、所定単位ずつ分散させて記憶させる制御を行う分散記憶手段を備えることを特徴とする。
これによれば、分散記憶手段により、データが複数のＵＳＢメモリ装置のメモリに分散して記憶されるため、ＵＳＢメモリ装置の一つから纏まったデータを読み出すことが不可能となり、保存したデータのセキュリティを確保できる。
【００１３】
さらに、前記分散記憶手段は、前記ホスト機器から入力されたデータを当該ＵＳＢメモリ装置および前記他のＵＳＢメモリ装置の各メモリに記憶させる処理を、各ＵＳＢメモリ装置に並列処理させることを特徴とする。
これによれば、データが複数のメモリに並列して書き込まれるため、データの書き込み速度が速くなる。
【００１４】
また、前記分散記憶手段によって当該ＵＳＢメモリ装置および前記他のＵＳＢメモリ装置の各メモリに分散して記憶されたデータをそれぞれ読み出して、前記ホスト機器に出力する分散読み出し手段を備えることを特徴とする。
【００１５】
また、当該ＵＳＢメモリ装置または前記他のＵＳＢメモリ装置の前記分散記憶手段によって前記所定単位に分散され、当該ＵＳＢメモリ装置の前記メモリに記憶させるべきデータを、単数または複数単位分、一時的に記憶可能なＦＩＦＯメモリを備えることを特徴とする。
これによれば、メモリへの書き込み中にも、次に書き込むべきデータをホスト機器から受信してＦＩＦＯメモリに記憶しておくことができるため、メモリへの記憶が終わってから次に書き込むべきデータを受信する場合に比較して、書き込み時間を短縮することができる。
【００１６】
また、前記一次および二次ＵＳＢインタフェースを介して数珠繋ぎに接続された当該ＵＳＢメモリ装置および前記他のＵＳＢメモリ装置のなかから、各ＵＳＢメモリ装置の各メモリにデータを分散させて記憶させるべく前記分散記憶手段を実行するマスターＵＳＢメモリ装置を選択するマスター選択手段と、該マスター選択手段によって当該ＵＳＢメモリ装置がマスターＵＳＢメモリ装置となるよう選択された場合には、前記分散記憶手段を実行して前記各ＵＳＢメモリ装置にデータを分散させて記憶させ、マスター選択手段によって当該ＵＳＢメモリ装置とは別のＵＳＢメモリ装置がマスターＵＳＢメモリ装置となるよう選択された場合には、該マスターＵＳＢメモリ装置の分散記憶手段により前記所定単位に分散されたデータを、前記メモリに記憶するよう制御する主従制御手段とを備えることを特徴とする。
これによれば、任意の順番で数珠繋ぎに接続された本発明に係るＵＳＢメモリ装置のうち、マスター決定手段によりマスターＵＳＢメモリ装置に決定されたＵＳＢメモリ装置が、分散記憶の制御を行う。したがって、同一の構成の本発明に係るＵＳＢメモリ装置を任意の順番で数珠繋ぎに接続して、分散記憶を実現させることが可能となる。
【００１７】
さらに、前記マスター選択手段によって当該ＵＳＢメモリ装置が前記マスターＵＳＢメモリ装置となるよう選択された場合には、前記ホスト機器に対して当該ＵＳＢメモリ装置がスレーブ機器であることを示す認識信号を発信し、マスター選択手段によって当該ＵＳＢメモリ装置とは別のＵＳＢメモリ装置がマスターＵＳＢメモリ装置となるよう選択された場合には、ホスト機器に対して前記認識信号を発信しないよう制御するスレーブ信号制御手段を備えることを特徴とする。
これによれば、マスターＵＳＢメモリ装置のみを、ホスト機器のＵＳＢインタフェースに接続されたスレーブ機器としてホスト機器に認識させることができる。これにより、ホスト機器は、一つのＵＳＢメモリ装置に対してアクセスするのと同様の処理を行えばよく、複数のＵＳＢメモリ装置を制御するための特別な処理を行う必要がない。また、ホスト機器と、マスターＵＳＢメモリ装置以外のＵＳＢメモリ装置との間の通信量を、最小限に抑えることができる。
【００１８】
また、前記マスター選択手段は、当該ＵＳＢメモリ装置および前記他のＵＳＢメモリ装置のうち、最も前記ホスト機器側に接続されているＵＳＢメモリ装置を、前記マスターＵＳＢメモリ装置に選択することを特徴とする。
これによれば、マスターＵＳＢメモリ装置は、他のＵＳＢメモリ装置の制御を、二次ＵＳＢインタフェースのみを介した通信により行うことができる。
【００１９】
さらに、前記マスター選択手段によって当該ＵＳＢメモリ装置が前記マスターＵＳＢメモリ装置となるよう選択された場合には、前記他のＵＳＢメモリ装置が前記ホスト機器に対して発信した、該他のＵＳＢメモリ装置がスレーブ機器であることを示す認識信号を消去するスレーブ信号消去手段を備える。
これによれば、ホスト機器は、ＵＳＢインタフェースを介して数珠繋ぎに接続されたＵＳＢメモリ装置のうち、マスターＵＳＢメモリ装置のみを、スレーブ機器として認識する。
【００２０】
また、前記ホスト機器から入力されたデータを、当該ＵＳＢメモリ装置および前記他のＵＳＢメモリ装置のメモリのうちの一つに、連続した状態に記憶させる連続記憶手段と、前記ホスト機器から入力されたデータを、前記分散記憶手段によって記憶させるか、前記連続記憶手段によって記憶させるかを選択する記憶方式選択手段とを備えることを特徴とする。
さらに、前記連続記憶手段は、前記ホスト機器から入力されたデータを、当該ＵＳＢメモリ装置および前記他のＵＳＢメモリ装置のメモリのうちの一つに、連続した状態に記憶させ、該メモリの残容量がなくなった場合には、該データの続きを、当該ＵＳＢメモリ装置および前記他のＵＳＢメモリ装置のうちの別のＵＳＢメモリ装置のメモリに、連続した状態に記憶させる制御を行うことを特徴とする。
これによれば、分散記憶手段による記憶方式と、データを連続して記憶する記憶方式とを使い分けることができる。
【００２１】
また、ホスト機器のＵＳＢインタフェース、または、ホスト機器のＵＳＢインタフェースから数珠繋ぎに接続された他のスレーブ機器のＵＳＢインタフェースに接続可能に設けられ、ホスト機器との間でデータを入出力可能とする一次ＵＳＢインタフェースと、データを記憶可能な複数のメモリと、前記一次ＵＳＢインタフェースを介して前記ホスト機器から入力されたデータを、前記メモリに記憶する書き込み手段と、前記メモリに記憶されたデータを読み出して、前記一次ＵＳＢインタフェースを介して前記ホスト機器に出力する読み出し手段とを備えたＵＳＢメモリ装置であって、前記書き込み手段は、前記ホスト機器から入力されたデータを、前記複数のメモリに、所定単位ずつ分散させて記憶する分散記憶手段を有することを特徴とする。
これによれば、分散記憶手段により、データが複数のメモリに分散して記憶されるため、メモリの一つから纏まったデータを読み出すことが不可能となり、保存したデータのセキュリティを確保できる。
【００２２】
さらに、前記分散記憶手段は、前記ホスト機器から入力されたデータを前記各メモリに記憶する処理を、各メモリに並列処理させることを特徴とする。
これによれば、データが複数のメモリに並列して書き込まれるため、データの書き込み速度が速くなる。
【００２３】
また、前記読み出し手段は、前記分散記憶手段によって前記複数のメモリに分散して記憶されたデータをそれぞれ読み出して、前記ホスト機器に出力する分散読み出し手段を有することを特徴とする。
【００２４】
また、前記ホスト機器から受信した、前記メモリに記憶させるべきデータを、一時的に記憶可能なＦＩＦＯメモリを備えることを特徴とする。
これによれば、メモリへの書き込み中にも、次に書き込むべきデータをホスト機器から受信してＦＩＦＯメモリに記憶しておくことができるため、メモリへの記憶が終わってから次に書き込むべきデータを受信する場合に比較して、書き込み時間を短縮することができる。
【００２５】
また、前記書き込み手段は、前記ホスト機器から入力されたデータを、前記メモリに、連続した状態に記憶する連続記憶手段を有し、前記ホスト機器から入力されたデータを、前記分散記憶手段によって記憶するか、前記連続記憶手段によって記憶するかを選択する記憶方式選択手段を備えることを特徴とする。
さらに、前記連続記憶手段は、前記ホスト機器から入力されたデータを、前記複数のメモリのうちの一つに、連続した状態に記憶させ、該メモリの残容量がなくなった場合には、該データの続きを、前記複数のメモリのうちの別のメモリに、連続した状態に記憶することを特徴とする。
これによれば、分散記憶手段による記憶方式と、データを連続して記憶する記憶方式とを使い分けることができる。
【００２６】
また、前記所定単位は、前記メモリの最小書き込み単位であることを特徴とする。
【００２７】
また、前記メモリはフラッシュメモリであることを特徴とする。
【００２８】
また、本発明に係るＵＳＢメモリ装置制御プログラムは、上記課題を解決するために、以下の構成を備える。すなわち、複数のスレーブ機器を数珠繋ぎに接続可能なＵＳＢインタフェースを備えたホスト機器に読み取り可能に設けられ、前記ＵＳＢインタフェース、または、該ＵＳＢインタフェースに数珠繋ぎに接続された他のスレーブ機器のＵＳＢインタフェースから数珠繋ぎに接続された複数のＵＳＢメモリ装置のメモリに、データを記憶させる書き込み手段と、前記メモリに記憶されたデータを読み出す読み出し手段とを、前記ホスト機器に実現させるＵＳＢメモリ装置制御プログラムであって、前記書き込み手段は、前記複数のＵＳＢメモリ装置のメモリに、データを所定単位ずつ分散させて記憶させる制御を行う分散記憶手段を有することを特徴とする。
これによれば、分散記憶手段により、データが複数のＵＳＢメモリ装置に分散して記憶されるため、ＵＳＢメモリ装置の一つから纏まったデータを読み出すことが不可能となり、保存したデータのセキュリティを確保できる。
【００２９】
さらに、前記分散記憶手段は、データを前記各ＵＳＢメモリ装置のメモリに記憶させる処理を、各ＵＳＢメモリ装置に並列処理させることを特徴とする。
これによれば、データが複数のメモリに並列して書き込まれるため、データの書き込み速度が速くなる。
【００３０】
また、前記読み出し手段は、前記分散記憶手段によって前記複数のＵＳＢメモリ装置のメモリに分散して記憶されたデータをそれぞれ読み出す分散読み出し手段を有することを特徴とする。
【００３１】
また、前記書き込み手段は、前記複数のＵＳＢメモリ装置のうちの一つのメモリに、データを連続した状態に記憶させる連続記憶手段を有し、データを、前記分散記憶手段によって記憶させるか、前記連続記憶手段によって記憶させるかを選択する記憶方式選択手段を、前記ホスト機器に実現させることを特徴とする。
さらに、前記連続記憶手段は、前記複数のＵＳＢメモリ装置のうちの一つのメモリに、データを連続した状態に記憶させ、該メモリの残容量がなくなった場合には、該データの続きを、前記複数のＵＳＢメモリ装置のうちの別のＵＳＢメモリ装置のメモリに、連続した状態に記憶させることを特徴とする。
これによれば、分散記憶手段による記憶方式と、データを連続して記憶する記憶方式とを使い分けることができる。
【００３２】
また、前記所定単位は、前記メモリの最小書き込み単位であることを特徴とする。
【００３３】
また、前記メモリはフラッシュメモリであることを特徴とする。
【発明の効果】
【００３４】
本発明に係るＵＳＢメモリ装置、および、ＵＳＢメモリ装置を制御するためのＵＳＢメモリ装置制御プログラムによれば、複数接続することで容量を増やすことができるとともに、データのアクセスを高速に行え、かつ、保存したデータのセキュリティを簡単に確保することができる。
【発明を実施するための最良の形態】
【００３５】
以下、本発明に係るＵＳＢメモリ装置およびＵＳＢメモリ装置制御プログラムを実施するための最良の形態を、添付図面に基づいて詳細に説明する。
【実施例１】
【００３６】
図１は、本発明の実施例１に係るＵＳＢメモリ装置Ａの外観図である。
ＵＳＢメモリ装置Ａの筐体２は、ほぼ直方体状に形成される。
【００３７】
ＵＳＢメモリ装置Ａの一端部には、コンピュータ等のホスト機器のＵＳＢ端子（メス側）、または、ホスト機器のＵＳＢ端子から数珠繋ぎに接続された他のスレーブ機器のＵＳＢ端子（メス側）に挿入して接続可能な、筐体２から突出する一次ＵＳＢ端子４ａ（オス側）が設けられる。ＵＳＢメモリ装置Ａは、ホスト機器のＵＳＢ端子（または、ホスト機器のＵＳＢ端子から数珠繋ぎに接続された他のスレーブ機器のＵＳＢ端子）に接続されることで、ホスト機器に対するスレーブ機器の一つとして機能する。
【００３８】
また、ＵＳＢメモリ装置Ａの他端部には、他のスレーブ機器の一次ＵＳＢ端子が挿入されて接続可能な凹状の二次ＵＳＢ端子６ａ（メス側）が設けられる。二次ＵＳＢ端子６ａには、同構成の他のＵＳＢメモリ装置Ａの一次ＵＳＢ端子４ａを挿入することで、複数のＵＳＢメモリ装置Ａを数珠繋ぎに接続することができる。
【００３９】
図２は、ホスト機器としてのホストコンピュータＨと実施例１に係るＵＳＢメモリ装置Ａとの接続例を示す説明図である。
上段ａに示すように、ＵＳＢメモリ装置ＡのＵＳＢ端子４ａをホストコンピュータＨのＵＳＢ端子（図示せず）に接続するとともに、ＵＳＢ端子６ａにスレーブ機器としてのマウスＭのＵＳＢ端子Ｍａを挿入すれば、ホストコンピュータＨは、ＵＳＢメモリ装置ＡおよびマウスＭのそれぞれと通信可能に接続される。
【００４０】
また、図２の下段ｂに示すように、ＵＳＢメモリ装置Ａ１のＵＳＢ端子４ａをホストコンピュータＨのＵＳＢ端子（図示せず）に接続するとともに、複数のＵＳＢメモリ装置Ａ１，Ａ２，Ａ３を、一次および二次ＵＳＢ端子４ａ，６ａを介して数珠繋ぎに接続することもできる。
【００４１】
なお、図示しないが、上段ａのＵＳＢメモリ装置Ａまたは下段ｂのＵＳＢメモリ装置Ａ１とホストコンピュータＨとの間に他のスレーブ機器を接続してもよいし、下段ｂの複数のＵＳＢメモリ装置Ａ１，Ａ２，Ａ３の間に他のスレーブ機器を接続してもよい。
【００４２】
次に、ＵＳＢメモリ装置Ａの内部構成につき、図３のブロック図を用いて説明する。
【００４３】
ＵＳＢメモリ装置Ａは、ＣＰＵやメモリやその他の電子回路等を有する制御部（図示せず）を備える。制御部は、その回路構成や、ＲＯＭ等に記憶されたファームウェアプログラムを実行すること等により、後述する各手段等（一次および二次ＵＳＢインタフェース４，６、記憶方式選択スイッチ８，９、ＵＳＢコントローラ１０，１２，１４、スレーブ信号制御手段３０、主従制御スイッチ１６，１７、マスター選択手段１８、分散記憶・読み出し手段２０、連続記憶・読み出し手段２２、ＵＳＢ信号分岐手段２４、メモリコントローラ２６、およびＦＩＦＯメモリ２８）を実現する。
【００４４】
一次ＵＳＢインタフェース４は、前記ＵＳＢ端子４ａおよびＵＳＢ通信回路から成り、ＵＳＢ端子４ａに直接または他のスレーブ機器を介して接続されたホスト機器との間で、データを入出力可能とする。
一次ＵＳＢインタフェース４から入力されたＵＳＢ信号（ホスト機器から、数珠繋ぎに接続された単数または複数のスレーブ機器に向けて送信されたＵＳＢ信号）は、記憶方式選択スイッチ８，９（後述）の状態に応じて、直接、または、分散記憶・読み出し手段２０もしくは連続記憶・読み出し手段２２等を経由して、ＵＳＢ信号分岐手段２４へ入力される。
【００４５】
記憶方式選択手段としての記憶方式選択スイッチ８，９は、フラッシュメモリ７にデータをどのように記憶させるか（動作モード）を、ユーザーに選択可能とするスイッチである。
二つの記憶方式選択スイッチ８，９は、常に連動して動作するよう構成される。即ち、記憶方式選択スイッチ８が、一次ＵＳＢインタフェース４からの入力信号を端子８ａへ流すよう選択された場合には、記憶方式選択スイッチ９は、それに連動して、端子８ａに対応する端子９ａに接続するよう構成される。同様に、記憶方式選択スイッチ８が端子８ｂに接続された場合には、記憶方式選択スイッチ９は端子８ｂに対応する端子９ｂに連動して接続し、記憶方式選択スイッチ８が端子８ｃに接続された場合には、記憶方式選択スイッチ９は端子８ｃに対応する端子９ｃに接続するよう構成される。
これにより、前述した通り、一次ＵＳＢインタフェース４から入力されたＵＳＢ信号は、記憶方式選択スイッチ８，９の状態に応じて、直接、または、分散記憶・読み出し手段２０もしくは連続記憶・読み出し手段２２等を経由して、ＵＳＢ信号分岐手段２４へ入力される。
【００４６】
記憶方式選択スイッチ８，９は、例えば筐体２の外面に露出してユーザーが操作可能なディップスイッチとして設けてもよいし、一次ＵＳＢインタフェース４を介してホスト機器から受信される所定のコマンドによって、ソフトウェアにより実現される切り換え手段として設けてもよい（必ずしも物理的な端子８ａ，８ｂ，８ｃ，９ａ，９ｂ，９ｃを備えたスイッチに限定されるものではない）。
【００４７】
ＵＳＢ信号分岐手段２４は、一次ＵＳＢインタフェース４から入力されたＵＳＢ信号を、分岐させて、二次ＵＳＢインタフェース６およびＵＳＢコントローラ１４へと出力する。
これにより、二次ＵＳＢインタフェース６に接続された他のスレーブ機器に、ホスト機器からのＵＳＢ信号を流すことができる。
また、二次ＵＳＢインタフェース６に接続された他のスレーブ機器からのＵＳＢ信号は、ＵＳＢ信号分岐手段２４を介して一次ＵＳＢインタフェース４から出力される。
すなわち、ＵＳＢ信号分岐手段２４は、ＵＳＢ信号を分岐するハブの役割を果たし、一次ＵＳＢインタフェース４および二次ＵＳＢインタフェース６を介して数珠繋ぎに接続された複数のスレーブ機器を、木構造に接続する。
【００４８】
一方、ＵＳＢコントローラ１４は、ＵＳＢ信号分岐手段２４から入力されたＵＳＢ信号（ホスト機器から、数珠繋ぎに接続された単数または複数のスレーブ機器に向けて送信されたＵＳＢ信号）中に含まれる、当該ＵＳＢメモリ装置Ａへ向けて送信されたデータを抽出して、ＦＩＦＯメモリ２８に書き込む。メモリコントローラ２６は、ＦＩＦＯメモリ２８に書き込まれたデータを随時読み出して、それがフラッシュメモリ７に書き込むべきデータであればそれをフラッシュメモリ７に書き込み、読み出し命令であればフラッシュメモリ７から該当するデータを読み出してＵＳＢコントローラ１４およびＵＳＢ信号分岐手段２４を介して一次ＵＳＢインタフェース４からホスト機器に送信する等の処理を行う。
【００４９】
ＵＳＢメモリ装置Ａは、記憶方式選択スイッチ８，９の選択状態に応じて、フラッシュメモリ７へデータを読み書きする際の動作モードが切り替えられる。
選択可能な動作モードとしては、それぞれ後述する、通常動作モードと、分散記憶モードと、連続記憶モードとの、３つの動作モードがある。
【００５０】
通常動作モードを選択する場合には、ユーザーは、記憶方式選択スイッチ８，９を、端子８ａ，９ａにそれぞれ接続するよう設定する。設定は、例えば、ディップスイッチを切り換えたり、ホスト機器から所定のコマンドを送信するなどして行うことができる。
同様に、連続記憶モードを選択する場合には、記憶方式選択スイッチ８，９を端子８ｂ，９ｂに接続するよう設定し、分散記憶モードを選択する場合には、記憶方式選択スイッチ８，９を端子８ｃ，９ｃに接続するよう設定する。
【００５１】
（通常動作モード）
通常動作モードは、ホスト機器から入力されたデータを、そのままフラッシュメモリ７上に連続して記憶させる動作モードである。
【００５２】
記憶方式選択スイッチ８，９により通常動作モード（端子８ａ，９ａ）が選択されている際には、一次ＵＳＢインタフェース４から入力されたＵＳＢ信号はそのままＵＳＢ信号分岐手段２４に入力される。ＵＳＢ信号は、ＵＳＢ信号分岐手段２４により分岐され、二次ＵＳＢインタフェース６を介して他の機器に送信されるとともに、ＵＳＢコントローラ１４に入力される。また、二次ＵＳＢインタフェース６に接続された他のスレーブ機器からのＵＳＢ信号は、ＵＳＢ信号分岐手段２４を介して、そのまま一次ＵＳＢインタフェース４から出力される。
【００５３】
ＵＳＢコントローラ１４は、一次ＵＳＢインタフェース４を介して接続されたホスト機器が起動した際や、一次ＵＳＢインタフェース４によりホスト機器に直接、または他のストレージ機器を間に介して接続された際等、ホスト機器との通信が可能となった際には、ホスト機器と通信して、当該ＵＳＢメモリ装置Ａがホスト機器に接続されたスレーブ機器としてのＵＳＢデバイスであることを示す認識信号を発信する。この認識信号により、ホスト機器の制御部は、ＵＳＢメモリ装置Ａが当該ホスト機器のＵＳＢインタフェースに接続されていることを認識し、ＵＳＢメモリ装置Ａとの間でデータの通信が可能となる。
【００５４】
ホスト機器によるＵＳＢメモリ装置Ａへのデータの読み書きの際には、ホスト機器は、そのＵＳＢインタフェースを介してＵＳＢメモリ装置Ａに対して、フラッシュメモリへの読み書きを指示する命令を含むＵＳＢ信号を発信する。そのＵＳＢ信号は、一次ＵＳＢインタフェース４を介してＵＳＢメモリ装置Ａに入力される。
ホスト機器は、当該ＵＳＢメモリ装置Ａのみでなく、ホスト機器のＵＳＢインタフェースから数珠繋ぎに接続された他のストレージ機器（例えば、図２上段ａのマウスＭや、下段ｂの他のＵＳＢメモリ装置）に対しても、それらを制御するＵＳＢ信号を、同一のＵＳＢインタフェースから出力する。
【００５５】
記憶方式選択スイッチ８，９により通常動作モード（端子８ａ，９ａ）が選択されている場合には、このＵＳＢ信号はＵＳＢ信号分岐手段２４を介してＵＳＢコントローラ１４に入力される。前述の通り、ＵＳＢコントローラ１４は、ＵＳＢ信号中に含まれる、単数または複数のスレーブ機器に向けて送信されたＵＳＢ信号の中から、当該ＵＳＢメモリ装置Ａへ向けて送信されたデータおよび命令を抽出し、メモリコントローラ２６は、そのデータおよび命令に基づいて、フラッシュメモリ７の読み書きを実行する。
【００５６】
（分散記憶モード）
分散記憶モードは、ホスト機器から入力されたデータを、一次および二次ＵＳＢインタフェース４，６を介して数珠繋ぎに接続された当該ＵＳＢメモリ装置Ａおよび他のＵＳＢメモリ装置Ａの各フラッシュメモリ７に、所定単位ずつ分散させて記憶させる動作モードである。
【００５７】
記憶方式選択スイッチ８，９により分散記憶モード（端子８ｃ，９ｃ）が選択されている際には、一次ＵＳＢインタフェース４から入力されたＵＳＢ信号は、ＵＳＢコントローラ１０を介して、マスター選択手段１８および分散記憶・読み出し手段２０に入力される。そして、そのＵＳＢ信号は、マスター選択手段１８および分散記憶・読み出し手段２０によって変更が加えられた後、ＵＳＢコントローラ１２およびＵＳＢ信号分岐手段２４を介して、ＵＳＢコントローラ１４および二次ＵＳＢインタフェース６へと出力される。
また、二次ＵＳＢインタフェース６に接続された他のスレーブ機器からのＵＳＢ信号は、ＵＳＢ信号分岐手段２４およびＵＳＢコントローラ１２を介して、マスター選択手段１８および分散記憶・読み出し手段２０に入力される。
【００５８】
マスター選択手段１８は、一次および二次ＵＳＢインタフェース４，６を介して、図２下段ｂに示すように互いに数珠繋ぎに接続された複数のＵＳＢメモリ装置Ａ１，Ａ２・・のなかから、分散記憶・読み出し手段２０を実行して各ＵＳＢメモリ装置Ａ１，Ａ２・・の各フラッシュメモリ７にデータを分散させて記憶させる制御を行うマスターＵＳＢメモリ装置を選択する手段である。
【００５９】
マスター選択手段１８は、一次ＵＳＢインタフェース４を介して接続されたホスト機器が起動した際や、一次ＵＳＢインタフェース４によりホスト機器に直接、または他のストレージ機器を間に介して接続された際等、ホスト機器との通信が可能となった際に、一次および二次ＵＳＢインタフェース４，６を介して、数珠繋ぎに接続された各ＵＳＢメモリ装置Ａ１，Ａ２・・間で互いに通信を行うことで、数珠繋ぎに接続された複数のＵＳＢメモリ装置Ａ１，Ａ２・・のうち、最もホスト機器側（ホスト機器に近い側）に接続されているＵＳＢメモリ装置（図２においてはＵＳＢメモリ装置Ａ１）を認識し、そのＵＳＢメモリ装置Ａ１をマスターＵＳＢ装置と決定する。各ＵＳＢメモリ装置Ａ１，Ａ２・・のマスター選択手段１８は、その結果、自ＵＳＢメモリ装置が、マスターＵＳＢメモリ装置となったのか、ならなかったのかを、それぞれ認識する。
【００６０】
なお、マスター選択手段１８は、必ずしも、最もホスト機器側に接続されたＵＳＢメモリ装置をマスターＵＳＢメモリ装置に選択するよう構成するに限定されず、他の基準によってマスターＵＳＢメモリ装置を選択してもよい。例えば、マスター選択手段１８を、ユーザーが操作可能なスイッチに設け、ユーザーがマスターＵＳＢ装置を選択可能に設けても良い。
【００６１】
マスターＵＳＢメモリ装置として選択されたＵＳＢメモリ装置Ａ１のマスター選択手段１８は、一次ＵＳＢインタフェース４に入出力されるＵＳＢ信号が、分散記憶・読み出し手段２０を通過するよう、主従制御スイッチ１６，１７を、端子１６ａ，１７ａにそれぞれ接続するよう制御を行う。
他方、マスターＵＳＢメモリ装置として選択されなかったＵＳＢメモリ装置Ａ２，Ａ３のマスター選択手段１８は、一次ＵＳＢインタフェース４に入出力されるＵＳＢ信号が、分散記憶・読み出し手段２０を通過しないよう、主従制御スイッチ１６，１７を、端子１６ｂ，１７ｂにそれぞれ接続するよう制御を行う。
【００６２】
二つの主従制御スイッチ１６，１７は、常に連動して動作するよう構成される。即ち、主従制御スイッチ１６が、端子１６ａに接続される場合には、主従制御スイッチ１７は、それに連動して、端子１６ａに対応する端子１７ａに接続するよう構成される。同様に、主従制御スイッチ１６が端子１６ｂに接続される場合には、主従制御スイッチ１７は端子１６ｂに対応する端子１７ｂに連動して接続するよう構成される。
なお、主従制御スイッチ１６，１７は、ソフトウェア（ファームウェアプログラム）により実現される切り換え手段として設けてもよい（必ずしも物理的な端子１６ａ，１６ｂ，１７ａ，１７ｂを備えたスイッチに限定されるものではない）。
【００６３】
また、ＵＳＢコントローラ１４は、前述した通常動作モードでの動作と同様、ホスト機器との通信が可能となった際には、前記認識信号をホスト機器に発信する。ここで、分散記憶モードにおいては、この認識信号は、マスター選択手段１８に入力される。
マスター選択手段１８により当該ＵＳＢメモリ装置がマスターＵＳＢメモリ装置に選択されている場合には、スレーブ信号制御手段３０は、この認識信号を、一次ＵＳＢインタフェース４を介してホスト機器に送信する。他方、当該ＵＳＢメモリ装置とは別のＵＳＢメモリ装置がマスターＵＳＢメモリ装置となるよう選択されている場合（即ち、当該ＵＳＢメモリ装置がマスターＵＳＢメモリ装置に選択されなかった場合）には、スレーブ信号制御手段３０は、ホスト機器に対してその認識信号を発信しないよう制御を行う。
【００６４】
なお、マスター選択手段１８が、マスターＵＳＢメモリ装置を決定するより前にこの制御信号を受信した場合には、スレーブ信号制御手段３０は、一時的に、この認識信号を留保し、マスター選択手段１８によりマスターＵＳＢメモリ装置が選択された際に、その選択結果に基づいて、その認識信号をホスト機器に送信するか否かを決定する。
【００６５】
このスレーブ信号制御手段３０の動作によれば、最もホスト機器側に接続されたＵＳＢメモリ装置Ａ１のみがホスト機器に認識信号を送信し、ＵＳＢメモリ装置Ａ１よりも下流に接続されたＵＳＢメモリ装置Ａ２，Ａ３はホスト機器に認識信号を送信しない。
したがって、ホスト機器は、マスターＵＳＢメモリ装置Ａ１から送信される唯一の前記認識信号により、マスターＵＳＢメモリ装置Ａ１のみをスレーブ機器と認識し、他のＵＳＢメモリ装置Ａ２，Ａ３は認識しない。
【００６６】
なお、スレーブ信号制御手段３０に替えて、二次ＵＳＢインタフェース６から入力された、他のＵＳＢメモリ装置からの認識信号を消去可能なスレーブ信号消去手段を設け、マスターＵＳＢメモリ装置Ａ１以外のＵＳＢメモリ装置Ａ２，Ａ３から発信された前記認識信号を、マスターＵＳＢメモリ装置Ａ１のスレーブ信号消去手段が消去することで、ＵＳＢメモリ装置Ａ２，Ａ３の認識信号がホスト機器に受信されないよう構成してもよい。
【００６７】
また、ＵＳＢメモリ装置Ａ１がホスト機器に認識信号を送信する際等に、ＵＳＢメモリ装置Ａ１，Ａ２・・の各フラッシュメモリ７，７・・に保存可能な総データ容量を、ホスト機器に認識されるＵＳＢメモリ装置Ａ１の容量として、ホスト機器に送信すると好適である。例えば、３つのＵＳＢメモリ装置Ａ１，Ａ２，Ａ３の各フラッシュメモリ７のサイズが、全て１Ｇｂｙｔｅであったとすれば、ホスト機器に送信する総データ容量の情報は３Ｇｂｙｔｅとする。
なお、後述する分散書き込みモードの書き込み方法によれば、各ＵＳＢメモリ装置Ａ１，Ａ２・・の各フラッシュメモリ７に書き込まれるデータ量は等しいため、ＵＳＢメモリ装置Ａ１，Ａ２・・の各フラッシュメモリ７のデータ容量にばらつきがある場合には、前記総メモリ容量は、「接続された複数のＵＳＢメモリ装置のうち最も小さいフラッシュメモリの容量  ×  ＵＳＢメモリ装置の数」の計算式で求められる容量となる。
【００６８】
ホスト機器は、ＵＳＢメモリ装置へのデータの読み書きの際には、ホスト機器のＵＳＢインタフェースを介して、認識しているマスターＵＳＢメモリ装置Ａ１に対し、フラッシュメモリへの読み書きを指示する命令を含むＵＳＢ信号を発信する。そのＵＳＢ信号は、一次ＵＳＢインタフェース４を介してＵＳＢメモリ装置Ａ１に入力される。
分散記憶モードにおいては、ＵＳＢメモリ装置Ａ１に入力されたこのＵＳＢ信号は、主従制御スイッチ１６の端子１６ａを介して分散記憶・読み出し手段２０に入力される。
【００６９】
ＵＳＢメモリ装置Ａ１の分散記憶・読み出し手段２０は、フラッシュメモリに書き込むべきデータ（ＵＳＢ信号）が入力された際には、データを所定単位ずつ、当該ＵＳＢメモリ装置Ａ１、および、下流に接続されたＵＳＢメモリ装置Ａ２，Ａ３のそれぞれのフラッシュメモリ７に分散させて記憶させる制御を行う。
具体的には、ホスト機器からＵＳＢメモリ装置Ａ１宛に送信されてきた書き込みデータの送信先を、所定単位毎に、Ａ１，Ａ２，Ａ３の各ＵＳＢメモリ装置に順繰りに書き換えた、新たなＵＳＢ信号を生成して、そのＵＳＢ信号を、ＵＳＢ信号分岐手段２４を介して各ＵＳＢメモリ装置Ａ１，Ａ２，Ａ３に向けて送信する制御を行う。
【００７０】
前記所定単位は、具体的には、フラッシュメモリ７の最小書き込み単位（一般にはページと呼ばれる）であることが望ましい（一般的には、フラッシュメモリの１ページのサイズは２５６バイト〜５１２バイト程度であることが多い）。ホスト機器からの書き込みデータは、一般にフラッシュメモリ７の最小書き込み単位であるページ単位で送信される。したがって、分散記憶・書き込み手段２０によって分散されるデータの単位を、ページ単位に構成することによれば、分散記憶・読み出し手段２０は、ホスト機器からＵＳＢメモリ装置Ａ１に入力されるデータの送信先を、順繰りに、Ａ１→Ａ２→Ａ３→Ａ１→Ａ２・・・等と書き換えるのみの簡単な処理で、分散書き込みを実現することができる。
【００７１】
本実施例１に係るＵＳＢメモリ装置Ａ１，Ａ２，Ａ３を用いた記録方式を示す説明図を図４（ａ）に示す。
まず、ホスト機器から、保存すべきデータの１ページ目が、ＵＳＢメモリ装置Ａ１に書き込ませる書き込み命令とともにＵＳＢメモリ装置Ａ１に転送されると、マスターＵＳＢメモリ装置であるＵＳＢメモリ装置Ａ１の分散記憶・読み出し手段２０は、そのデータをそのままＵＳＢ信号分岐手段２４へ出力する。すると、そのデータは、ＵＳＢメモリ装置Ａ１のＵＳＢコントローラ１４を介してＦＩＦＯメモリ２８に書き込まれるとともに、ＦＩＦＯメモリ２８から、順次、メモリコントローラ２６を介して、フラッシュメモリ７に書き込まれる。
【００７２】
ここで、ＵＳＢの通信速度はフラッシュメモリ７の書き込み速度よりも速いため、１ページ目のデータがＦＩＦＯメモリ２８に全て書き込まれた後も、ＦＩＦＯメモリ２８からフラッシュメモリ７へのデータの書き込みがしばらく継続されることとなる（図４（ａ）の「１ページ目」参照）。
【００７３】
１ページ目のデータのＦＩＦＯメモリ２８への書き込みが終了すると、２ページ目のデータ転送が可能となり、ホスト機器は、ＵＳＢメモリ装置Ａ１に向けて、２ページ目のデータ転送を行う。
この際、ＵＳＢメモリ装置Ａ１の分散記憶・読み出し手段２０は、２ページ目のデータの書き込み命令の送信先をＵＳＢメモリ装置Ａ２のアドレスに書き換えて、ＵＳＢ信号分岐手段２４に出力する。その書き込み命令は、送信先がＵＳＢメモリ装置Ａ２のアドレスに書き換えられているため、ＵＳＢメモリ装置Ａ１のＵＳＢコントローラ１４には抽出されない。
【００７４】
送信先がＵＳＢメモリ装置Ａ２のアドレスに書き換えられた前記書き込み命令およびデータは、ＵＳＢメモリ装置Ａ１の二次ＵＳＢインタフェース６を介して接続されたＵＳＢメモリ装置Ａ２に入力される。
マスターＵＳＢメモリ装置ではないＵＳＢメモリ装置Ａ２においては、主従制御スイッチ１６，１７は分散記憶・読み出し手段２０を経由しないよう設定されているため、その命令およびデータはＵＳＢ信号分岐手段２４にそのまま入力され、そのデータは、ＵＳＢメモリ装置Ａ２のＵＳＢコントローラ１４、ＦＩＦＯメモリ２８、およびメモリコントローラ２６を介してＵＳＢメモリ装置Ａ２のフラッシュメモリ７に書き込まれる（図４（ａ）の「２ページ目」）。
そして、同様に、３ページ目の書き込み命令およびデータは、書き込み先がＵＳＢメモリ装置Ａ３に書き換えられて、ＵＳＢメモリ装置Ａ３のフラッシュメモリ７に書き込まれる。
【００７５】
４ページ目以降のデータも、マスターＵＳＢメモリ装置であるＵＳＢメモリ装置Ａ１の分散記憶・読み出し手段２０により、Ａ１→Ａ２→Ａ３・・と順繰りに、その書き込み先が変更される。
このとき、転送された４ページ目以降のデータは、そのデータの書き込みを行う各ＵＳＢメモリ装置のＦＩＦＯメモリ２８に書き込まれる。この際、そのＵＳＢメモリ装置において、前回転送されたページのフラッシュメモリ７への書き込みが終わっていない場合には、その書き込みが終了した後に、次の書き込みページのフラッシュメモリ７への書き込みが開始される（図４（ａ）４ページ目以降参照）。
【００７６】
このように、本実施例１に係るＵＳＢメモリ装置Ａ１，Ａ２・・によれば、複数のＵＳＢメモリ装置Ａ１，Ａ２・・の各フラッシュメモリ７にデータを保存する処理を並列処理させることができる。
【００７７】
比較例として、フラッシュメモリ７にデータを連続して記憶させる従来のＵＳＢメモリ装置の記憶方式を、図４（ｂ）に示す。従来のＵＳＢメモリ装置においては、ＦＩＦＯメモリに複数ページのデータを格納することで先行して保存できたとしても、１ページ目の書き込みが終了するまで次のページの書き込みが行えないため、本発明の記憶方式に比較して、データの書き込みに多くの時間が掛かる。
【００７８】
分散記憶モードにおいて、マスターＵＳＢメモリ装置Ａ１がホスト機器からデータを読み出す命令を受信した際には、分散記憶・読み出し手段２０は、図５（ａ）に示すように、各ＵＳＢメモリ装置Ａ１，Ａ２，Ａ３に対してページごとの読み出し命令を順繰りに送信することで各ＵＳＢメモリ装置Ａ１，Ａ２，Ａ３からデータを順繰りに読み出して、読み出したデータをホスト機器に送信する（分散読み出し手段）。
【００７９】
また、分散読み出し手段をより高速化する場合には、データ読み出し命令とデータ転送命令を分け、図５（ｂ）に示すように、まずマスターＵＳＢメモリ装置Ａ１が各ＵＳＢメモリ装置Ａ１，Ａ２，Ａ３に、各ページの読み出し命令を送信するとともに、１ページ目のデータ転送命令を送信する。各ＵＳＢメモリ装置Ａ１，Ａ２，Ａ３のメモリコントローラ２６は、分散読み出しの際には、データ読み出し命令に対応して、読み出したデータをＦＩＦＯメモリ２８に保存する。そして、マスターＵＳＢメモリ装置Ａ１からのデータ転送命令を受信した際に、ＦＩＦＯメモリ２８内に読み出したデータをホスト機器に送信するよう構成する。ホスト機器は、データ転送命令に対応したデータ転送が終了すると、次のページのデータを転送させるべく、次のページのデータ転送命令を発行する。
この構成によれば、先の図４（ａ）に示した分散書き込み手段の高速化手法と同じ原理により、複数のＵＳＢメモリ装置Ａ１，Ａ２・・の各フラッシュメモリ７からデータを読み出す処理を、複数のＵＳＢメモリ装置Ａ１，Ａ２・・に並列処理させて高速化することができる。
【００８０】
（連続記憶モード）
連続記憶モードは、ホスト機器から入力されたデータを、一次および二次ＵＳＢインタフェース４，６を介して数珠繋ぎに接続された当該ＵＳＢメモリ装置および他のＵＳＢメモリ装置のフラッシュメモリ７のうちの一つに、連続した状態に記憶させ、そのフラッシュメモリ７の残容量がなくなった場合には、そのデータの続きを、別のＵＳＢメモリ装置のフラッシュメモリ７に、連続した状態に記憶させる動作モードである。
【００８１】
記憶方式選択スイッチ８，９により連続記憶モード（端子８ｂ，９ｂ）が選択されている際には、一次ＵＳＢインタフェース４から入力されたＵＳＢ信号は、ＵＳＢコントローラ１０を介して、連続記憶・読み出し手段２２に入力される。そして、そのＵＳＢ信号は、連続記憶・読み出し手段２２によって変更が加えられた後、ＵＳＢコントローラ１２およびＵＳＢ信号分岐手段２４を介して、ＵＳＢコントローラ１４および二次ＵＳＢインタフェース６へと出力される。
また、二次ＵＳＢインタフェース６に接続された他のスレーブ機器からのＵＳＢ信号は、ＵＳＢ信号分岐手段２４およびＵＳＢコントローラ１２を介して、連続記憶・読み出し手段２２に入力される。
【００８２】
なお、図示しないが、本連続記憶モードにおいても、分散記憶モードにおけるマスター選択手段１８、スレーブ信号制御手段３０、および主従制御スイッチ１６，１７と同様の機能を実行して、マスターＵＳＢメモリ装置を決定してホスト機器への認識信号を制御するとともに、マスターＵＳＢメモリ装置のみが連続記憶・読み出し手段２２を実行するよう構成する。
【００８３】
マスターＵＳＢメモリ装置であるＵＳＢメモリ装置Ａ１（図２下段ｂ）の連続記憶・読み出し手段２２は、フラッシュメモリに書き込むべきデータ（ＵＳＢ信号）がホスト機器から入力された際には、まず当該ＵＳＢメモリ装置Ａ１のフラッシュメモリ７に、そのデータを連続した状態に記憶させる。
その後、そのフラッシュメモリ７の残容量がなくなった場合には、そのデータの続きの送信先を、下流に接続されたＵＳＢメモリ装置Ａ２のアドレスに書き換えることで、ＵＳＢメモリ装置Ａ２のフラッシュメモリ７に、そのデータの続きを連続した状態に記憶させる。
さらにＵＳＢメモリ装置Ａ２のフラッシュメモリ７の残容量がなくなった場合には、ＵＳＢメモリ装置Ａ１の連続記憶・読み出し手段２２は、そのデータの続きの送信先を、その下流に接続されたＵＳＢメモリ装置Ａ３のアドレスに書き換えることで、ＵＳＢメモリ装置Ａ３のフラッシュメモリ７に、そのデータの続きを連続した状態に記憶させる。
【００８４】
連続記憶モードにおいて、ＵＳＢメモリ装置Ａ１がホスト機器からデータを読み出す命令を受信した際には、分散記憶・読み出し手段２０は、読み出すべきデータを、各ＵＳＢメモリ装置Ａ１，Ａ２，Ａ３から読み出して、ホスト機器に送信する。
【００８５】
なお、本実施例１においては、数珠繋ぎに接続されるＵＳＢメモリ装置Ａ１，Ａ２・・の全てが同じ構成であるものとしたが、分散記憶・読み出し手段２０および連続記憶・読み出し手段２２は、一つのＵＳＢメモリ装置に設け、他のＵＳＢメモリ装置は、分散記憶・読み出し手段２０および連続記憶・読み出し手段２２を設けず、前記一つのＵＳＢメモリ装置の分散記憶・読み出し手段２０または連続記憶・読み出し手段２２が、他のＵＳＢメモリ装置にデータを分散または連続させて記憶させるべく制御を行うよう構成してもよい。
【実施例２】
【００８６】
本発明の実施例２に係るＵＳＢメモリ装置Ｂの外観およびホスト機器との接続例は、図１および図２に示した実施例１に係るＵＳＢメモリ装置Ａのそれと同様であるため、説明を省略する。
【００８７】
図６は、本発明の実施例２に係るＵＳＢメモリ装置Ｂの内部構成を示すブロック図である。なお、図６において、実施例１に係るＵＳＢメモリ装置Ａと同一の構成については、同一の符号を付して説明を省略する。
【００８８】
ＵＳＢメモリ装置Ｂは、ＣＰＵやメモリやその他の電子回路等を有する制御部（図示せず）を備える。制御部は、その回路構成や、ＲＯＭ等に記憶されたファームウェアプログラムを実行すること等により、後述する各手段等（一次および二次ＵＳＢインタフェース４，６、ＵＳＢコントローラ１４、ＦＩＦＯメモリ２８、記憶方式選択スイッチ３２、分散記憶・読み出し手段３４、連続記憶・読み出し手段３６、メモリコントローラ２６、およびＵＳＢ信号分岐手段２４）を実現する。
【００８９】
また、ＵＳＢメモリ装置Ｂは、複数（３つ）のフラッシュメモリ７ａ，７ｂ，７ｃと、フラッシュメモリ７ａ，７ｂ，７ｃのそれぞれに対応するメモリコントローラ２６，２６，２６とを備える。
【００９０】
一次ＵＳＢインタフェース４から入力されたＵＳＢ信号（ホスト機器から、数珠繋ぎに接続された単数または複数のスレーブ機器に向けて送信されたＵＳＢ信号）は、直接、ＵＳＢ信号分岐手段２４に入力される。
【００９１】
記憶方式選択手段としての記憶方式選択スイッチ３２は、フラッシュメモリ７ａ，７ｂ，７ｃにデータをどのように記憶させるか（動作モード）を、ユーザーに選択可能とするスイッチである。選択可能な動作モードとしては、分散記憶モードと、連続記憶モードとの、２つの動作モードがある。
【００９２】
記憶方式選択スイッチ３２は、例えば筐体２の外面に露出してユーザーが操作可能なディップスイッチとして設けてもよいし、一次ＵＳＢインタフェース４を介してホスト機器から受信される所定のコマンドによって、ソフトウェアにより実現される切り換え手段として設けてもよい（必ずしも物理的な端子３２ａ，３２ｂを備えたスイッチに限定されるものではない）。
【００９３】
分散動作モードを選択する場合には、ユーザーは、記憶方式選択スイッチ３２を、端子３２ａに接続するよう設定する。設定は、例えば、ディップスイッチを切り換えたり、ホスト機器から所定のコマンドを送信するなどして行うことができる。
同様に、連続記憶モードを選択する場合には、記憶方式選択スイッチ３２を端子３２ｂに接続するよう設定する。
これにより、記憶方式選択スイッチ３２の状態に応じて、フラッシュメモリ７ａ，７ｂ，７ｃに、分散記憶・読み出し手段３４によってデータを読み書きするか、連続記憶・読み出し手段３６によってデータを読み書きするかが選択される。すなわち、記憶方式選択スイッチ３２が、端子３２ａに接続されている場合には分散記憶・読み出し手段３４により、端子３２ｂに接続されている場合には連続記憶・読み出し手段３６により、フラッシュメモリ７ａ，７ｂ，７ｃに、データが読み書きされる。
【００９４】
（分散記憶モード）
分散記憶モードは、ホスト機器から入力されたデータを、複数のフラッシュメモリ７ａ，７ｂ，７ｃに、所定単位ずつ分散させて記憶する動作モードである。
【００９５】
記憶方式選択スイッチ３２により分散記憶モード（端子３２ａ）が選択されている際には、一次ＵＳＢインタフェース４から入力され、ＵＳＢ信号分岐手段２４およびＵＳＢコントローラ１４を経たＵＳＢ信号は、分散記憶・読み出し手段３４に入力される。
【００９６】
分散記憶・読み出し手段３４は、フラッシュメモリに書き込むべきデータ（ＵＳＢ信号）が入力された際には、データを所定単位ずつ、各フラッシュメモリ７ａ，７ｂ，７ｃに、７ａ→７ｂ→７ｃ→７ａ→７ｂ・・と順繰りに分散させて記憶させる制御を行う。
前記所定単位は、具体的には、フラッシュメモリ７ａ，７ｂ，７ｃの最小書き込み単位（ページ）であることが望ましい。
【００９７】
本実施例２に係るＵＳＢメモリ装置Ｂを用いた記録方式によれば、図４（ａ）に示した記録方式と同様、複数のフラッシュメモリ７ａ，７ｂ，７ｃにデータを保存する処理を並列処理させることができる。
【００９８】
分散記憶モードにおいて、ＵＳＢメモリ装置Ｂがホスト機器からデータを読み出す命令を受信した際には、分散記憶・読み出し手段３４は各フラッシュメモリ７ａ，７ｂ，７ｃからデータを順繰りに読み出して、読み出したデータをホスト機器に送信する（分散読み出し手段）。
なお、このとき、分散記憶・読み出し手段３４が各メモリコントローラ２６，２６，２６を制御して、図５（ｂ）に示した分散読み出し手段と同じ原理により、複数のフラッシュメモリ７ａ，７ｂ，７ｃからデータを読み出す処理を並列処理させて、それぞれのフラッシュメモリ７ａ，７ｂ，７ｃから読み出したデータをＦＩＦＯメモリ２８上にそれぞれ記憶しておいて、ＦＩＦＯメモリ２８上に記憶された各ページのデータを順繰りにホスト機器に転送するよう構成すると、データの読み出しを高速化することができる。
【００９９】
（連続記憶モード）
連続記憶モードは、ホスト機器から入力されたデータを、複数のフラッシュメモリ７ａ，７ｂ，７ｃのうちの一つに、連続した状態に記憶させ、そのフラッシュメモリの残容量がなくなった場合には、そのデータの続きを、フラッシュメモリ７ａ，７ｂ，７ｃのうちの別のフラッシュメモリに、連続した状態に記憶させる動作モードである。
【０１００】
連続記憶・読み出し手段３６は、フラッシュメモリに書き込むべきデータ（ＵＳＢ信号）がホスト機器から入力された際には、まずフラッシュメモリ７ａに、そのデータを連続した状態に記憶させる。
その後、そのフラッシュメモリ７ａの残容量がなくなった場合には、そのデータの続きを、フラッシュメモリ７ｂに、連続した状態に記憶させる。
さらにフラッシュメモリ７ｂの残容量がなくなった場合には、連続記憶・読み出し手段３６は、そのデータの続きを、フラッシュメモリ７ｃに、連続した状態に記憶させる。
【０１０１】
連続記憶モードにおいて、ＵＳＢメモリ装置Ａ１がホスト機器からデータを読み出す命令を受信した際には、連続記憶・読み出し手段３６は、読み出すべきデータを、各フラッシュメモリ７ａ，７ｂ，７ｃから読み出して、ホスト機器に送信する。
【実施例３】
【０１０２】
次に、本発明に係るＵＳＢメモリ装置制御プログラムを実施するための最良の形態を、添付図面に基づいて詳細に説明する。
図７は、本発明の実施例３に係るＵＳＢメモリ装置制御プログラムとしてのＵＳＢメモリ装置ドライバＰの構成およびその使用例を示す説明図である。
【０１０３】
ホスト機器としてのホストコンピュータＨは、ＣＰＵやメモリやその他の電子回路等を有しプログラムを実行可能な制御部（図示せず）と、複数のスレーブ機器を数珠繋ぎに接続可能なＵＳＢインタフェース３８とを備える。また、ホストコンピュータＨは、ユーザーが情報や操作を入力可能なマウスやキーボード等の入力手段（図示せず）や、ユーザーに対して情報を表示可能なディスプレイ等の表示手段（図示せず）を備える。
ホストコンピュータＨのＵＳＢインタフェース３８には、図７のように、複数のＵＳＢメモリ装置Ｃ１，Ｃ２・・を接続することができる。
なお、図７において、ＵＳＢメモリ装置Ｃ２，Ｃ３の内部構成は省略されているが、それらはＵＳＢメモリ装置Ｃ１と同様の内部構成となっている。
また、図示しないが、ＵＳＢメモリ装置Ｃ１，Ｃ２・・の間や、それらの末尾に、他のスレーブ機器を接続してもよい。
【０１０４】
ホストコンピュータＨには、ファイルシステム４０やＵＳＢメモリ装置ドライバＰ等が、コンピュータ読み取り可能に設けられている（インストールされている）。
ホストコンピュータＨの前記制御部は、ＵＳＢメモリ装置ドライバＰを実行することにより、後述する各手段等（記憶方式選択スイッチ４６，４７、分散記憶・読み出し手段４２、および連続記憶・読み出し手段４４）を実現する。
【０１０５】
ＵＳＢメモリ装置Ｃ１，Ｃ２・・は、一次ＵＳＢインタフェース４と、二次ＵＳＢインタフェース６と、フラッシュメモリ７と、ＵＳＢ信号分岐手段２４と、ＵＳＢコントローラ１４と、ＦＩＦＯメモリ２８と、メモリコントローラ２６と、フラッシュメモリ７とを備える。なお、前記実施例１および２と同様の構成については、同一の符号を付して説明を省略する。
本実施例３においては、ＵＳＢメモリ装置Ｃ１，Ｃ２・・の各フラッシュメモリ７にデータを分散させて記憶させる制御（分散記憶手段）は、ホストコンピュータＨ側で行われるため、ＵＳＢメモリ装置Ｃ１，Ｃ２・・が分散記憶手段等を備えている必要はない。
【０１０６】
記憶方式選択手段としての記憶方式選択スイッチ４６，４７は、ＵＳＢメモリ装置Ｃ１，Ｃ２・・にデータをどのように記憶させるか（動作モード）を、ユーザーに選択可能とするスイッチである。選択可能な動作モードとしては、分散記憶モードと、連続記憶モードとの、２つの動作モードがある。
【０１０７】
記憶方式選択スイッチ４６，４７の設定は、例えば、ＵＳＢメモリ装置ドライバＰの実行によって前記表示手段に表示される所定の設定画面に対して、ユーザーが前記入力手段によって所定の操作を行うことで行うことができるよう、構成される（記憶方式選択スイッチ４６，４７は、必ずしも物理的な端子４６ａ，４６ｂ，４７ａ，４７ｂを備えたスイッチに限定されるものではない）。
ユーザーが分散動作モードを選択した場合には、記憶方式選択スイッチ４６，４７は端子４６ａ，４７ａにそれぞれ接続され、分散記憶・読み出し手段４２によってＵＳＢメモリ装置にデータを読み書きするよう設定される。他方、ユーザーが連続動作モードを選択した場合には、記憶方式選択スイッチ４６，４７は端子４６ｂ，４７ｂにそれぞれ接続され、連続記憶・読み出し手段４４によってデータを読み書きするよう設定される。
【０１０８】
ホストコンピュータＨの前記入力手段に対するユーザーの操作や、ホストコンピュータＨ上に読み取り可能に設けられたアプリケーションプログラム（図示せず）が前記制御部によって実行されて、ファイルシステム４０がＵＳＢメモリ装置に対する読み書きを命令されると、ファイルシステム４０はＵＳＢメモリ装置ドライバＰを介してデータの読み書きを行う。
ＵＳＢメモリ装置ドライバＰは、ファイルシステム４０に対しては、ＵＳＢインタフェース３８にはＵＳＢメモリ装置が一つしか接続されていないものとしてアクセスを行わせる。
【０１０９】
（分散記憶モード）
分散記憶モードは、ファイルシステム４０から入力されたデータを、複数のＵＳＢメモリ装置Ｃ１，Ｃ２・・のフラッシュメモリ７，７・・に、所定単位ずつ分散させて記憶させる動作モードである。
【０１１０】
記憶方式選択スイッチ４６，４７により分散記憶モード（端子４６ａ，４７ａ）が選択されている際には、ファイルシステム４０から入力されたデータの読み書き命令（アクセス命令）は、分散記憶・読み出し手段４２に入力される。そして、そのアクセス命令は、分散記憶・読み出し手段４２によって変更が加えられた後、ＵＳＢインタフェース３８を介して、ＵＳＢ信号として、各ＵＳＢメモリ装置Ｃ１，Ｃ２・・へと出力される。
また、各ＵＳＢメモリ装置Ｃ１，Ｃ２・・からのＵＳＢ信号は、ＵＳＢインタフェース３８介して分散記憶・読み出し手段４２に入力され、分散記憶・読み出し手段４２を経てファイルシステム４０に出力される。
【０１１１】
分散記憶・読み出し手段４２は、ファイルシステム４０から、ＵＳＢメモリ装置に書き込むべきデータが入力された際には、その書き込みデータの送信先を、所定単位毎に、順繰りにＣ１，Ｃ２，Ｃ３の各ＵＳＢメモリ装置に設定してＵＳＢ信号を生成し、そのＵＳＢ信号をＵＳＢインタフェース３８を介して各ＵＳＢメモリ装置Ｃ１，Ｃ２，Ｃ３に向けて送信する制御を行う。
【０１１２】
前記所定単位は、具体的には、フラッシュメモリ７の最小書き込み単位（ページ）であることが望ましい。ファイルシステム４０からの書き込みデータは、一般にＵＳＢメモリ装置Ｃ１，Ｃ２・・のフラッシュメモリ７の最小書き込み単位であるページ単位で送信される。したがって、分散記憶・書き込み手段４２によって分散されるデータの単位を、ページ単位に構成することによれば、分散記憶・読み出し手段４２は、ファイルシステム４０から入力される書き込みデータの送信先を、順繰りに、Ｃ１→Ｃ２→Ｃ３→Ｃ１→Ｃ２・・・等と設定するのみの簡単な処理で、分散書き込みを実現することができる。
【０１１３】
本実施例３に係るＵＳＢメモリ装置ドライバＰを用いた記録方式によれば、図４（ａ）に示した記録方式と同様、複数のＵＳＢメモリ装置Ｃ１，Ｃ２，Ｃ３の各フラッシュメモリ７にデータを保存する処理を並列処理させることができる。
【０１１４】
分散記憶モードにおいて、ＵＳＢメモリ装置ドライバＰがファイルシステム４０からデータを読み出す命令を受けた際には、分散記憶・読み出し手段４２は、各ＵＳＢメモリ装置Ｃ１，Ｃ２，Ｃ３に対してページごとの読み出し命令を順繰りに送信することで各ＵＳＢメモリ装置Ｃ１，Ｃ２，Ｃ３からデータを順繰りに読み出して、読み出したデータをファイルシステム４０に送る（分散読み出し手段）。
【０１１５】
（連続記憶モード）
連続記憶モードは、ファイルシステム４０入力された書き込みデータを、複数のＵＳＢメモリ装置Ｃ１，Ｃ２・・のフラッシュメモリ７，７・・のうちの一つに、連続した状態に記憶させ、そのフラッシュメモリ７の残容量がなくなった場合には、そのデータの続きを、別のＵＳＢメモリ装置Ｃ１，Ｃ２・・のフラッシュメモリ７に、連続した状態に記憶させる動作モードである。
【０１１６】
連続記憶・読み出し手段４４は、ＵＳＢメモリ装置に書き込むべきデータがファイルシステム４０から入力された際には、まずＵＳＢメモリ装置Ｃ１のフラッシュメモリ７に、そのデータを連続した状態に記憶させる。
その後、そのフラッシュメモリ７の残容量がなくなった場合には、そのデータの続きを、ＵＳＢメモリ装置Ｃ２のフラッシュメモリ７に、連続した状態に記憶させる。
さらにフラッシュメモリ７の残容量がなくなった場合には、連続記憶・読み出し手段３６は、そのデータの続きを、ＵＳＢメモリ装置Ｃ３のフラッシュメモリ７に、連続した状態に記憶させる。
【０１１７】
連続記憶モードにおいて、連続記憶・読み出し手段４４がファイルシステム４０からデータを読み出す命令を受信した際には、連続記憶・読み出し手段４４は、読み出すべきデータを、各ＵＳＢメモリ装置Ｃ１，Ｃ２，Ｃ３のフラッシュメモリ７から読み出して、ファイルシステム４０に渡す。
【０１１８】
本実施例１〜３に係るＵＳＢメモリ装置Ａ，Ｂ、および、ＵＳＢメモリ装置制御ドライバＰによれば、ＵＳＢメモリ装置を複数接続することで容量を増やすことができるとともに、分散書き込みモードにおいてデータが複数のメモリに並列して書き込まれるため、データの書き込みおよび読み出し速度が速くなり、かつ、分散記憶手段により、データが複数のＵＳＢメモリ装置のメモリに分散して記憶されるため、ＵＳＢメモリ装置の一つから纏まったデータを読み出すことが不可能となり、保存したデータのセキュリティを確保できる。
【産業上の利用可能性】
【０１１９】
上記実施の形態においては、ホスト機器としてホストコンピュータを用いたが、ホスト機器は、いわゆるコンピュータとして使用されるものに限定されず、ＵＳＢインタフェースを備え、ＵＳＢメモリ装置にデータを読み書きする機能を有するあらゆる機器を含む。
また、分散書き込みの際の書き込み単位（所定単位）は、フラッシュメモリのページ単位に限定されるものではなく、さらに、ＵＳＢメモリ装置に用いられるメモリは、フラッシュメモリに限定されるものではない。
【図面の簡単な説明】
【０１２０】
【図１】本発明に係るＵＳＢメモリ装置の外観を示す図（平面図）である。
【図２】本発明に係るＵＳＢメモリ装置をホスト機器に接続する際の態様を示す説明図である。
【図３】本発明に係るＵＳＢメモリ装置の内部構成を示すブロック図である。
【図４】ＵＳＢメモリ装置を用いた記録方式を示す説明図であり、（ａ）は本発明に係るＵＳＢメモリ装置を用いた記録方式、（ｂ）は従来のＵＳＢメモリ装置を用いた記録方式を示す。
【図５】本発明に係るＵＳＢメモリ装置を用いた分散読み出し方式を示す説明図であり、（ａ）は第一の分散読み出し手段による読み出し方式、（ｂ）は第二の分散読み出し手段２による読み出し方式を示す。
【図６】本発明に係るＵＳＢメモリ装置の内部構成を示すブロック図である。
【図７】本発明に係るＵＳＢメモリ装置制御プログラムの構成およびその使用例を示す説明図である。
【符号の説明】
【０１２１】
Ａ，Ａ１，Ａ２，Ａ３，Ｂ  ＵＳＢメモリ装置
Ｈ  ホストコンピュータ（ホスト機器）
Ｍ  マウス（他のスレーブ機器）
Ｐ  ＵＳＢメモリ装置ドライバ（ＵＳＢメモリ装置制御プログラム）
２  筐体
４  一次ＵＳＢインタフェース
６  二次ＵＳＢインタフェース
７，７ａ，７ｂ，７ｃ  フラッシュメモリ（メモリ）
８，９，３２，４６  記憶方式選択スイッチ（記憶方式選択手段）
１６，１７  主従制御スイッチ（主従制御手段）
１８  マスター選択手段
２０，３４，４２  分散記憶・読み出し手段（分散記憶手段・分散読み出し手段）
２２  連続記憶・読み出し手段（連続記憶手段）
２４  信号分岐手段
２８  ＦＩＦＯメモリ
３０  スレーブ信号制御手段
３６，４４  連続記憶・読み出し手段（連続記憶手段）
３８  ホスト機器のＵＳＢインタフェース
４０  ファイルシステム
【図１】
2006031123.tif 000003
【図２】
2006031123.tif 000004
【図３】
2006031123.tif 000005
【図４】
2006031123.tif 000006
【図５】
2006031123.tif 000007
【図６】
2006031123.tif 000008
【図７】
2006031123.tif 000009