(57)【特許請求の範囲】
【請求項１】
予め定められた複数のリムーバブルメディア装着部の複数のドライブ情報と共に前記複数のリムーバブルメディア装着部を包含して成る単一の仮想のドライブ情報を生成するドライブ情報生成手段と、
この仮想のドライブ情報に基づくデータの書き込み指定に応答して、上記予め定められた複数のリムーバブルメディア装着部に対する書込信号を並列的に出力する書込信号出力手段と、
上記書込信号が指定されているリムーバブルメディア装着部に装着されたリムーバブルメディアに対して並列的にデータを書き込む書込手段と、
を具備することを特徴とするリムーバブルメディア書込装置。
【請求項２】
上記リムーバブルメディアはメモリカードであり、
上記リムーバブルメディア装着部はメモリカードスロットであることを特徴とする請求項１に記載のリムーバブルメディア書込装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、メモリカード等の複数のリムーバブルメディアに同一データを書き込むリムーバブルメディア書込装置に関する。
【０００２】
【従来の技術】
近年、パーソナルコンピュータ（以下、ＰＣと略す）の記憶装置として、種々のリムーバブルメディアが利用されている。
【０００３】
その一つとして集積回路を内蔵した５×８ｃｍ位の大きさのメモリカードや、より小さいコンパクトフラッシュと称されるようなメモリカード等が知られている。このようなメモリカードは、ＰＣに接続された又はＰＣに内蔵されたメモリカードリーダ／ライタ装置により、データの読み出し／書き込みが行われるようになっている。
【０００４】
また、ＰＣに接続するメモリリーダ／ライタ装置として、メモリカードを装着するためのメモリカードスロットを複数持つものも知られている。
【０００５】
このような複数メモリカードスロットを持つメモリカードリーダ／ライタは、複数のメモリカードにデータを書き込む場合、それが同一のデータであるかどうかに関係なく、コピー元から複数のメモリカードスロットそれぞれに対して順次書き込みを行うようになっている。
【０００６】
また、ＰＣとメモリカードリーダ／ライタとの間のデータ転送は、一度に転送可能なデータ量が決まっているため、一つのファイルのデータをｎ（ｎは１以上の整数）ブロックに分割して送受信するようになっている。
【０００７】
【発明が解決しようとする課題】
メモリカードリーダ／ライタの使用法として、異なるコピー元からそれぞれ複数のメモリカードスロットに書き込む場合もあるが、同一データを複数のメモリカードスロット（メモリカード）にコピーしたいという要求が、実務的には多い場合もある。
【０００８】
しかしながら、同一データを複数のメモリカードスロットに装着された複数のメモリカードにコピーしたい場合でも、従来のメモリカードリーダ／ライタでは、順次にコピー元データをメモリカードスロットの数だけ受信し書き込むので、そのメモリカードスロット数に比例した処理時間がかかるという問題が有った。
【０００９】
また、操作においても、メモリカードスロットの数だけ、同じコピー元を指示しなければならないため、煩雑であり、誤操作を招く危険もあった。
【００１０】
本発明の課題は、同一データを複数のメモリカードスロットに装着された複数のメモリカードにコピーする場合の指示操作を簡略化すると共に処理時間を短縮することである。
【００１１】
【課題を解決するための手段】
請求項１の発明の手段は次の通りである。ドライブ情報生成手段は、予め定められた複数のリムーバブルメディア装着部の複数のドライブ情報と共に前記複数のリムーバブルメディア装着部を包含して成る単一の仮想のドライブ情報を生成する。書込信号出力手段は、この仮想のドライブ情報に基づくデータの書き込み指定に応答して、上記予め定められた複数のリムーバブルメディア装着部に対する書込信号を並列的に出力する。書込手段は、上記書込信号が指定されているリムーバブルメディア装着部に装着されたリムーバブルメディアに対して並列的にデータを書き込む。
【００１３】
請求項１の発明の手段の作用は次の通りである。複数のリムーバブルメディア装着部を備えたリムーバブルメディア書込装置において、予め定められた複数のリムーバブルメディア装着部に装着された複数のリムーバブルメディアに対して同一データを書き込む際に、まず、上記予め定められた複数のリムーバブルメディア装着部の複数のドライブ情報と共に前記複数のリムーバブルメディア装着部を包含して成る単一の仮想のドライブ情報を生成してＰＣに送っておく。そして、ＰＣ側から、この仮想のドライブ情報に基づくデータの書き込み指定が送られてきたならば、それに応答して、上記予め定められた複数のリムーバブルメディア装着部に対する書込信号をそれら装着部に並列的に出力し、上記書込信号が指定されているリムーバブルメディア装着部に装着されたリムーバブルメディアに対して並列的にデータを書き込む。従って、同一データを複数のメモリカードスロットに装着された複数のメモリカードにコピーする場合の指示操作を簡略化すると共に処理時間を短縮することができるようになる。
【００１４】
【発明の実施の形態】
以下、本発明の一実施の形態を図１の（Ａ）乃至図５を参照して説明する。
【００１５】
図１の（Ａ）は、本発明のリムーバブルメディア書込装置の一実施の形態としてのメモリカードリーダ／ライタ装置１０の構成を示す図である。このメモリカードリーダ／ライタ装置１０は、図１の（Ｂ）に示すように、パーソナルコンピュータ（ＰＣ）２０に接続して使用されるもので、ＰＣ２０が、例えば当該ＰＣ２０のハードディスク等に構成されたデータベース（以下、ＤＢと略す）３０内のデータを、該メモリカードリーダ／ライタ装置１０に装着された複数のメモリカード４０−１，４０−２，…，４０−ｎに書き込んだり、逆にそれらメモリカード４０−１，４０−２，…，４０−ｎ内のデータを読み出して、上記ＤＢ３０に保存する際に用いられる。
【００１６】
このメモリカードリーダ／ライタ装置１０は、当該メモリカードリーダ／ライタ装置１０全体を制御するＣＰＵ１１を有し、該ＣＰＵ１１に、ＲＯＭ１２，ＲＡＭ１３，通信制御部１４，入出力インタフェース１５，及び複数のメモリカードスロット１６−１，１６−２，…，１６−ｎがＣＰＵバス１７を介して接続されている。
【００１７】
ここで、ＲＯＭ１２及びＲＡＭ１３は、上記ＣＰＵ１１で実行される当該メモリカードリーダ／ライタ装置１０の処理プログラムやデータ等が予め記憶されているものであるが、もちろん、このようなＲＯＭ１２やＲＡＭ１３に記憶するプログラムやデータ等は、上記ＰＣ２０との間でデータの送受信を行うための通信制御部１４によりＰＣ２０から読み込むようにしても良いし、メモリカードスロット１６に装着されたメモリカード４０から読み出して、これらに記憶するようにしても良い。
【００１８】
また、入出力インタフェース１５は、上記複数のメモリカードスロット１６−１，１６−２，…，１６−ｎに対して読出信号又は書込信号を制御信号として供給するものである。この場合、複数のメモリカードスロット１６−１，１６−２，…，１６−ｎは、同一のバスライン１８を介して上記ＣＰＵバス１７に接続される構成となっているため、ＰＣ２０からの書き込みデータがそれら複数のメモリカードスロット１６−１，１６−２，…，１６−ｎに同時に供給されるようになっている。従って、上記制御信号として書込信号が複数のメモリカードスロット１６に供給された場合には、それらのメモリカードスロット１６に装着されたメモリカード４０に並列的にそのバスライン１８上のデータを書き込むことが可能である。一方、上記制御信号として何れかのメモリカードスロット１６に読出信号が供給された場合には、当該メモリカードスロット１６に装着されたメモリカード４０からデータを読み出してバスライン１８上に出力し、通信制御部１４を介してＰＣ２０にそれが供給されるようになる。また、一つのメモリカードスロットに読出信号を供給し、他の複数のメモリカードスロットに書込信号を供給することで、一つのメモリカードのデータを他の複数のメモリカードに並列的に書き込むことも可能である。
【００１９】
図１の（Ｃ）は、メモリカード４０の記憶構成を示す図である。同図に示すように、メモリカード４０は、ヘッダ領域４１とデータ領域４２とからなり、ヘッダ領域４１は、ヘッダデータ４１Ａ，連番データ４１Ｂ，スロット番号データ４１Ｃ，等を含む。
【００２０】
ここで、オペレータがＰＣ２０においてＤＢ３０のファイルを指定してメモリカード４０にコピー又は移動を指示した際に、ＰＣ２０はＤＢ３０の最終更新日付をヘッダデータとして形成し、それをファイルのヘッダデータとして送信してくるもので、このファイルのヘッダデータをこのヘッダデータ４１Ａに保存することになる。また、連番データ４１Ｂは、複数のメモリカード４０に並列的にデータの書き込みが指示されたときに、それら指示された各メモリカード４０に付される所定桁数のシリアル番号である。そして、スロット番号データ４１Ｃは、当該メモリカード４０が装着されていたメモリカードスロット１６を特定するためのデータである。
【００２１】
次に、このような構成における動作を説明する。
図２は、本発明のリムーバブルメディア書込装置の一実施の形態に係るメモリカードリーダ／ライタ装置１０の動作を説明するフローチャートである。このフローチャートに記載した各機能を実現するプログラムは、ＣＰＵ１１が読み取り可能なプログラムコードの形態で上記ＲＯＭ１２もしくはＲＡＭ１３に記憶されている。
【００２２】
即ち、当該メモリカードリーダ／ライタ装置１０の電源投入により動作が開始され、まず、仮想スロットのドライブ情報を作成する（ステップＳ１）。このドライブ情報は、同一のデータを複数のメモリカードスロット１６に装着されたメモリカードへ書き込む際に使用されるものとして仮想的に作成するもので、メモリカードスロット１６の全スロットを検知して、検知されたその全てのスロットに対応する一つの仮想スロットを作成するものである。その後、更に、各メモリカードスロット１６のドライブ情報を作成して（ステップＳ２）、ＰＣ２０との接続待ちとなる（ステップＳ３）。なお、前記ステップＳ１及びステップ２でその都度ドライブ情報を作成するようにしたが、予めこれらの情報をＲＯＭ１２若しくはＲＡＭ１３に記憶しておくようにしても良い。そして、ＰＣ２０と接続状態となったならば、上記作成した若しくは記憶されていた仮想スロット及び各メモリカードスロットのドライブ情報を通信制御部１４によりＰＣ２０に転送することによりドライブ情報を生成する（ステップＳ４）。
【００２３】
一方、ＰＣ２０では、メモリカードリーダ／ライタ装置１０と接続されると、図３の（Ａ）に示すように、メモリカードリーダ／ライタ装置１０側から転送されてきたドライブ情報を取得して（ステップＳ２１）、図３の（Ｂ）に示すように、ＰＣ画面２１上に、それら仮想スロット及び各メモリカードスロットに対応するドライブを含むドライブ一覧をツリー形式で表示する（ステップＳ２２）。この場合、仮想スロット及び各メモリカードスロットに対応するドライブは、リムーバブルディスクとして認識される。ここで、それらリムーバブルディスクを開く指示、例えばマウス等のポインティングデバイスによるクリック操作が行われると、対応するメモリカードスロット１６にメモリカード４０が装着されていれば、そのメモリカード４０内のファイル名等が表示されることになる。
【００２４】
このように、本実施の形態では、同一のデータを複数のメモリカードスロット１６に書き込むために、専用の仮想スロットを設けている。この仮想スロットは、ハードウェアとしては存在しないが、オペレータからは実在するように取り扱うことができる。
【００２５】
而して、メモリカードリーダ／ライタ装置１０においては、上記のようにドライブ情報を転送した後は、ＰＣ２０からのデータの書き込み又はデータの読み出しの指示待ちとなっている（ステップＳ５，Ｓ６）。そして、ＰＣ２０からデータの読み出し指示があったならば、即ち、ＰＣ２０側にて仮想スロット及び各メモリカードスロットに対応するドライブの何れかを開いてファイルの読み出し指示が行われたならば、読み出し処理を行う（ステップＳ７）。この読み出し処理においては、対応するメモリカードスロットへの読出信号を入出力インタフェース１５に設定して、その指示されたファイルのデータを読み出し、それを通信制御部１４を介してＰＣ２０に転送する。そしてその後、再びＰＣ２０からのデータの書き込み又はデータの読み出しの指示待ちとなる。
【００２６】
また、ＰＣ２０からデータの書き込み指示があったならば、即ち、ＰＣ２０側にて仮想スロット又は何れかのメモリカードスロットに対応するドライブに対してＤＢ３０のファイルのコピー又は移動の指示が行われたならば、その指示されたドライブが仮想スロットに対応するドライブであるのかどうかを判別する（ステップＳ８）。そして、仮想スロットに対応するドライブであれば、詳細は後述するような仮想ドライブ書き込み処理を行い（ステップＳ９）、また、仮想スロットに対応するドライブでなければ、詳細は後述するような各ドライブ書き込み処理を行う（ステップＳ１０）。そしてその後、再びＰＣ２０からのデータの書き込み又はデータの読み出しの指示待ちとなる。
【００２７】
図４は、上記ステップＳ９において実行される仮想ドライブ書き込み処理の詳細を示すフローチャートである。
【００２８】
即ち、まず、仮想ドライブに対して書き込み指定が成された場合は、全メモリカードスロット１６−１，１６−２，…，１６−ｎに対する書込信号を生成して（ステップＳ３１）、この書込信号を入出力インタフェース１５に設定する（ステップＳ３２）。そして、通信制御部１４を介して、ＰＣ２０（ＤＢ３０）から、その指示されたファイルのデータを１ブロック読み出し（ステップＳ３３）、それがヘッダデータであるかどうか判別する（ステップＳ３４）。読み出したデータがヘッダデータであった場合には、それをＲＡＭ１３に書き込み（ステップＳ３５）、その後、当該ファイルを構成する全ブロックに対する処理が終了したかどうかを判別して（ステップＳ３６）、まだであれば上記ステップＳ３３に戻る。
【００２９】
また、上記ステップＳ３４において、読み出したブロックがヘッダデータではないと判別した場合には、その読み出した１ブロックをメモリカード４０のデータ領域４２に書き込む（ステップＳ３７）。この場合、書込信号が全メモリカードスロット１６−１，１６−２，…，１６−ｎに与えられているので、それらのメモリカードスロットに装着されているメモリカード４０全てに並列的に即ち同時に一括で書き込まれることになる。そしてその後、上記ステップＳ３６に進み、当該ファイルを構成する全ブロックに対する処理が終了していなければ、上記ステップＳ３３に戻る。
【００３０】
こうして、上記ステップＳ３６において、全ブロックに対する処理が終了したと判別されたならば、次に、スロット番号を示すためのカウンタｉ（ＣＰＵ１１内部又はＲＡＭ１３内に構成される）を「１」に初期化し（ステップＳ３８）、ｉ番目のメモリカードスロット１６−ｉにメモリカード４０が装着されているかどうかを判別する（ステップＳ３９）。もし、そのメモリカードスロット１６−ｉにメモリカードが装着されていない場合には、カウンタｉの値を「＋１」し（ステップＳ４０）、その結果がメモリカードスロットの個数ｎよりも大きな値となったかどうか判別する（ステップＳ４１）。そして、まだｎ以下であれば、上記ステップＳ３９に戻り、また、ｎよりも大きな値となった場合には、この仮想ドライブ書き込み処理を終了する。
【００３１】
一方、上記ステップＳ３９において、ｉ番目のメモリカードスロット１６−ｉにメモリカード４０が装着されていると判別されたときには、ＣＰＵ１１内部又はＲＡＭ１３内に保持している連番データを更新して（ステップＳ４２）、上記ステップＳ３５でＲＡＭ１３に書き込まれたヘッダデータと、この更新した連番データと、スロット番号を示すカウンタｉの値とで成る識別データを作成する（ステップＳ４３）。そして、この作成した識別データを含むヘッダ情報を、当該メモリカードスロット１６−ｉに装着されたメモリカード４０−ｉのヘッダ領域４１に書き込む（ステップＳ４４）。その後、上記ステップ４０に進んで、カウンタｉの値を「＋１」して、その結果がｎ以下であれば、上記ステップＳ３９に戻って上記の処理を繰り返す。
【００３２】
こうして、全てのメモリカードスロットに対する処理が終了したならば、カウンタｉの値がｎよりも大きな値となるので、この仮想ドライブ書き込み処理が終了されることになる。
【００３３】
また、上記ステップＳ１０において実行される各ドライブ書き込み処理は、図５に示すようにして行われる。
【００３４】
即ち、まず、指示されたドライブに対応して、一つのメモリカードスロット１６に対する書込信号を入出力インタフェース１５に設定する（ステップＳ５１）。そして、通信制御部１４を介して、ＰＣ２０（ＤＢ３０）から、その指示されたファイルのデータを１ブロック読み出し（ステップＳ５２）、それがヘッダデータであるかどうか判別する（ステップＳ５３）。読み出したデータがヘッダデータであった場合には、それをＲＡＭ１３に書き込み（ステップＳ５４）、その後、当該ファイルを構成する全ブロックに対する処理が終了したかどうかを判別して（ステップＳ５５）、まだであれば上記ステップＳ５２に戻る。
【００３５】
また、上記ステップＳ５３において、読み出したブロックがヘッダデータではないと判別した場合には、その読み出した１ブロックを指示されたメモリカード４０のデータ領域４２に書き込む（ステップＳ５６）。この場合、読み出したブロックのデータはバスライン１８を介して全メモリカードスロット１６−１，１６−２，…，１６−ｎに供給されるが、書込信号は対応するメモリカードスロット１６にしか与えられていないので、そのメモリカードスロットに装着されているメモリカード４０のみに書き込まれることになる。そしてその後、上記ステップＳ５５に進み、当該ファイルを構成する全ブロックに対する処理が終了していなければ、上記ステップＳ５２に戻る。
【００３６】
こうして、上記ステップＳ５５において、全ブロックに対する処理が終了したと判別されたならば、上記ステップＳ５７でＲＡＭ１３に書き込まれたヘッダデータよりヘッダ情報を生成し（ステップＳ５７）、それを当該メモリカードスロット１６に装着されたメモリカード４０のヘッダ領域４１に書き込んで（ステップＳ５８）、この各ドライブ書き込み処理を終了する。
【００３７】
以上詳述したように、仮想スロットに対応するドライブへの書き込み指示を行うと、メモリカードリーダ／ライタ装置１０側では、オペレータが同一のデータを複数のメモリカードスロット１６に書き込むことを望んでいるということがわかるので、その時は、コピー元データを１回だけ受信し、受信したデータを複数のメモリカードスロットに並列的に書き込むようにしている。
【００３８】
従って、同一のコピー元から複数のメモリカードスロットへは、書き込みの指示をそのメモリカードスロットの数だけ繰り返さなくても、１回だけ仮想スロットへ書き込みの指示をすれば良いので、操作が簡単になる。
【００３９】
また、同時一括に書き込むので、処理時間がメモリカードスロット数に比例しなくなる。これの効果は、データ量が増えるほど、また、メモリカードスロット数が増えるほど、顕著となる。
【００４０】
なお、上記実施の形態では、コピー元のデータはＰＣ２０（ＤＢ３０）のデータを想定したが、何れかのメモリカードのデータを他のメモリカードへ一括して書き込むものとしても良い。
【００４１】
また、仮想スロットを全メモリカードスロットに対応するものとしたが、全てのメモリカードスロットではなく、この中の予め定められた複数のメモリカードスロットに対応する仮想ドライブ情報を生成しても良い。
【００４２】
更に、上記一実施の形態は、リムーバブルメディアをメモリカードとして説明したが、本発明はこれに限定されるものではなく、着脱可能な記録媒体全てに適用可能なことは勿論である。
【００４３】
【発明の効果】
本発明によれば、同一データを複数のメモリカードスロットに装着された複数のメモリカードにコピーする場合の指示操作を簡略化すると共に処理時間を短縮することができる。
【図面の簡単な説明】
【図１】（Ａ）は本発明のリムーバブルメディア書込装置の一実施の形態としてのメモリカードリーダ／ライタ装置の構成を示す図、（Ｂ）は該メモリカードリーダ／ライタ装置の適用されるパーソナルコンピュータシステムの構成を示す図であり、（Ｃ）はメモリカードの記憶構成を示す図である。
【図２】図１の（Ａ）のメモリカードリーダ／ライタ装置の動作を説明するためのフローチャートである。
【図３】（Ａ）はパーソナルコンピュータ側でのメモリカードリーダ／ライタ装置接続時の動作を説明するためのフローチャートであり、（Ｂ）は仮想スロット及び各メモリカードスロットに対応するドライブを含むドライブ一覧のツリー形式表示とその表示の意味を説明するための図である。
【図４】図２中の仮想ドライブ書き込み処理の詳細を示すフローチャートである。
【図５】図２中の各ドライブ書き込み処理の詳細を示すフローチャートである。
【符号の説明】
１０  メモリカードリーダ／ライタ装置
１１  ＣＰＵ
１２  ＲＯＭ
１３  ＲＡＭ
１４  通信制御部
１５  入出力インタフェース
１６，１６−１，１６−２，…，１６−ｎ  メモリカードスロット
１７  ＣＰＵバス
１８  バスライン
２０  パーソナルコンピュータ（ＰＣ）
２１  ＰＣ画面
３０  データベース（ＤＢ）
４０，４０−１，４０−２，…，４０−ｎ  メモリカード
４１  ヘッダ領域
４１Ａ  ヘッダデータ
４１Ｂ  連番データ
４１Ｃ  スロット番号データ
４２  データ領域
【図１】
0003975598.tif 000002
【図２】
0003975598.tif 000003
【図３】
0003975598.tif 000004
【図４】
0003975598.tif 000005
【図５】
0003975598.tif 000006