説明

記録媒体アダプタ、情報記録装置、および情報記録システム

【課題】複数枚の記録媒体に同じデータを同時に記録する機能を持たない記録装置に、後から同時記録の機能を持たせる技術を提供する。
【解決手段】記録媒体アダプタ200は、複数の記録媒体250、260を接続するための記録媒体インタフェース230、240と、外部機器に接続するためのホストインタフェース210と、記録媒体インタフェース230、240およびホストインタフェース210に電気的に接続された制御部220とを備えている。制御部220は、複数の記録媒体250、260に同一のデータを同時に記録することが可能か否かを判断し、可能と判断した場合に、ホストインタフェース210を介して受信したデータを、各記録媒体に記録する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、着脱可能な複数の記録媒体が装着される記録媒体アダプタと、当該記録媒体アダプタが装着される情報記録装置とによる複数の記録媒体への同時記録に関する。
【背景技術】
【0002】
メモリカードを記録媒体とするカメラ機器やレコーダ機器が普及している。記録したメモリカードの紛失やデータの誤消去に備え、複数枚のメモリカードに同時にデータを記録する装置が知られている(例えば、特許文献1)。
【0003】
特許文献1では、記録装置は、複数枚のメモリカードに同じ静止画のデータを同時に記録する。従って静止画の撮影終了時には、複数枚のメモリカードに同じ静止画のデータが存在している。このため、バックアップのために1枚のメモリカードから他のメモリカードに静止画のデータをコピーする必要がない。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特許第3615780号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に開示された記録装置は、静止画の記録を前提としている。この装置の構成では、例えば動画のような容量の大きいデータを複数の記録媒体に同時に記録することは困難である。
【0006】
複数枚のメモリカードに同じ動画データを同時に記録するためには、予め記録装置の内部構成を同時記録が可能となるように多重化して設計することが必要である。具体的には、メモリカードを装着するカードスロットの数を複数にし、カードインタフェース回路の数も複数にし、さらに、動画データが流れる回路やバスなどに、同時に複数本の動画データを流せるように高い転送能力を持たせる必要がある。この結果、ハードウェアが増えるため、記録装置のコストが高くなるという課題が生じる。
【0007】
また、メモリカードを記録媒体とするカメラ機器やレコーダ機器の多くは、同時記録の機能を持たず、1枚のメモリカードに1つの素材を記録する機器が一般的である。このような機器は、カードスロット数が1つであったり、機器の内部構成が動画データを1本だけ流せる性能しか持たないように設計されていることが多い。そのような機器に後から同時記録の機能を追加することは困難である。
【0008】
本発明は、上記の課題に鑑み、複数枚の記録媒体に同じデータを同時に記録する機能を持たない記録装置に、後から同時記録の機能を持たせる技術を提供する。
【課題を解決するための手段】
【0009】
本発明による記録媒体アダプタは、複数の記録媒体を着脱可能な記録媒体アダプタであって、前記複数の記録媒体を接続するための記録媒体インタフェースと、外部機器に接続するためのホストインタフェースと、前記記録媒体インタフェースおよび前記ホストインタフェースに電気的に接続された制御部とを備えている。前記制御部は、前記複数の記録媒体から前記記録媒体インタフェースを介して取得した情報に基づいて、前記複数の記録媒体に同一のデータを同時に記録することが可能か否かを判断し、前記複数の記録媒体に同一のデータを同時に記録することが可能と判断した場合に、前記ホストインタフェースを介して受信したデータを、各記録媒体に記録する。
【0010】
ある実施形態において、前記制御部は、各記録媒体の容量、転送性能、ファイルシステムフォーマット、および空き領域の少なくとも1つの情報に基づいて、前記複数の記録媒体に同一のデータを同時に記録することが可能か否かを判断する。
【0011】
ある実施形態において、前記制御部は、前記複数の記録媒体にデータを書き込むためのライトコマンドを前記ホストインタフェースを介して受信したとき、前記ライトコマンドを複製し、複製した前記ライトコマンドを各記録媒体に送信する。
【0012】
ある実施形態において、前記制御部は、前記複数の記録媒体に記録されたデータを読み出すためのリードコマンドを前記ホストインタフェースを介して受信したとき、前記複数の記録媒体の1つに前記リードコマンドを送信し、前記複数の記録媒体の1つからの応答を、前記ホストインタフェースを介して送信する。
【0013】
本発明による情報記録システムは、複数の記録媒体を着脱可能な記録媒体アダプタと、前記記録媒体アダプタを着脱可能な情報記録装置とを備える。前記情報記録装置は、前記記録媒体アダプタを接続するためのアダプタインタフェースと、前記アダプタインタフェースに電気的に接続された第1の制御部とを有している。前記記録媒体アダプタは、前記複数の記録媒体を接続するための記録媒体インタフェースと、前記情報記録装置に接続するためのホストインタフェースと、前記記録媒体インタフェースおよび前記ホストインタフェースに電気的に接続された第2の制御部とを有している。前記第1の制御部は、前記アダプタインタフェースを介して、前記記録媒体アダプタから取得した前記複数の記録媒体の情報に基づいて、前記複数の記録媒体に同一のデータを同時に記録することが可能か否かを判断し、前記複数の記録媒体に同一のデータを同時に記録することが可能と判断した場合に、前記アダプタインタフェースを介して、データを書き込むためのライトコマンドを前記記録媒体アダプタに送信する。前記第2の制御部は、前記ホストインタフェースを介して、前記ライトコマンドを受信したとき、前記ライトコマンドを複製し、複製した前記ライトコマンドを前記記録媒体インタフェースを介して各記録媒体に送信する。
【0014】
ある実施形態において、前記第1の制御部は、各記録媒体の容量、転送性能、ファイルシステムフォーマット、および空き領域の少なくとも1つの情報に基づいて、前記複数の記録媒体に同一のデータを同時に記録することが可能か否かを判断する。
【0015】
ある実施形態において、前記第2の制御部は、前記ホストインタフェースを介して前記情報記録装置から受信したコマンドを、前記複数の記録媒体の全てに送信する第1のモードと、前記複数の記録媒体の1つに送信する第2のモードとを切り換えることができる。
【0016】
ある実施形態において、前記第1の制御部は、各記録媒体のデータ領域の開始アドレスを検出し、検出した各記録媒体の前記開始アドレスを前記記録媒体アダプタに設定した後、前記ライトコマンドを前記記録媒体アダプタに送信する。前記第2の制御部は、前記ライトコマンドを受信したとき、設定された各記録媒体の前記開始アドレスに基づいて、各記録媒体におけるデータの記録位置を決定する。
【0017】
ある実施形態において、前記ライトコマンドは、記録すべきデータの位置を、各記録媒体のデータ領域の開始アドレスを基点とするアドレスによって指定し、前記第2の制御部は、前記ライトコマンドを受信したとき、前記ライトコマンドによって指定されたアドレスに各記録媒体の前記開始アドレスを加算することによって得られるアドレスに、前記データを記録する。
【0018】
ある実施形態において、前記第1の制御部は、各記録媒体に指示するための第1の種類のコマンドと、前記複数の記録媒体の全体に指示するための第2の種類のコマンドとを送信可能であり、前記第1の種類のコマンドを用いて、各記録媒体のファイル管理情報を取得し、前記第2の種類のコマンドである前記ライトコマンドを用いて、前記複数の記録媒体へデータを同時に記録する。
【0019】
ある実施形態において、前記第1の制御部は、前記複数の記録媒体へのデータの同時記録を行う前に、前記第1の種類のコマンドを用いて、各記録媒体の性能を示す情報およびファイル管理情報を取得し、取得した各記録媒体の前記性能を示す情報および前記ファイル管理情報に基づいて、前記複数の記録媒体へのデータの同時記録が可能か否かを判断する。
【0020】
本発明による情報記録装置は、複数の記録媒体を着脱可能な情報記録装置であって、前記複数の記録媒体を接続するための記録媒体インタフェースと、前記複数の記録媒体へデータを同時に記録するためのライトコマンドを発行する第1の制御部と、前記記録媒体インタフェースおよび前記第1の制御部に電気的に接続された第2の制御部とを備えている。前記第1の制御部は、各記録媒体のデータ領域の開始アドレスを検出し、検出した各記録媒体の前記開始アドレスを、前記第2の制御部に設定した後、前記ライトコマンドを前記第2の制御部に送信する。前記第2の制御部は、前記ライトコマンドを受けたとき、設定された各記録媒体の前記開始アドレスに基づいて、各記録媒体におけるデータの記録位置を決定する。
【0021】
ある実施形態において、前記ライトコマンドは、記録すべきデータの位置を、各記録媒体のデータ領域の開始アドレスを基点とするアドレスによって指定し、前記第2の制御部は、前記ライトコマンドを受信したとき、前記ライトコマンドによって指定されたアドレスに各記録媒体の前記開始アドレスを加算することによって得られるアドレスに、前記データを記録する。
【0022】
ある実施形態において、前記第1の制御部は、各記録媒体に指示するための第1の種類のコマンドと、前記複数の記録媒体の全体に指示するための第2の種類のコマンドとを送信可能であり、前記第1の種類のコマンドを用いて、各記録媒体のファイル管理情報を取得し、前記第2の種類のコマンドである前記ライトコマンドを用いて、前記複数の記録媒体へデータを同時に記録する。
【0023】
ある実施形態において、前記第1の制御部は、前記複数の記録媒体へのデータの同時記録を行う前に、前記第1の種類のコマンドを用いて、各記録媒体の性能を示す情報およびファイル管理情報を取得し、取得した各記録媒体の前記性能を示す情報および前記ファイル管理情報に基づいて、前記複数の記録媒体へのデータの同時記録が可能か否かを判断する。
【発明の効果】
【0024】
本発明によれば、複数枚の記録媒体に同じデータを同時に記録する機能を持たない情報記録装置に、後から同時記録機能を持たせることができる。そのため、記録終了時にバックアップのためのコピー時間を発生させることなく、記録した素材およびバックアップ素材を同時に得られるという効果がある。
【図面の簡単な説明】
【0025】
【図1】実施形態1における情報記録装置の構成を表すブロック図である。
【図2】実施形態1におけるメモリカードアダプタの構成を表すブロック図である。
【図3】実施形態1におけるカード検査方法を表したフローチャートである。
【図4】実施形態2における情報記録装置の構成を表すブロック図である。
【図5】実施形態2におけるメモリカードアダプタの構成を表すブロック図である。
【図6】実施形態2におけるカード検査方法を表したフローチャートである。
【図7】実施形態3に係る情報記録装置の構成を表すブロック図である。
【図8】実施形態3に係るメモリカードアダプタの構成を表すブロック図である。
【図9】実施形態3に係るメモリカードのデータ構成を表すブロック図である。
【図10】実施形態3におけるカード検査方法を表したフローチャートである。
【図11】実施形態3におけるAVデータ記録方法を表したフローチャートである。
【図12】実施形態4に係る情報記録装置の構成を表すブロック図である。
【図13】実施形態4におけるカード検査方法を表したフローチャートである。
【図14】実施形態4におけるAVデータ記録方法を表したフローチャートである。
【発明を実施するための形態】
【0026】
以下、添付の図面を用いて、本発明の実施形態を説明する。なお、本明細書では、同一のデータを複数の記録媒体にほぼ同時に記録することを、「同時記録」と称する。本明細書における「同時記録」には、複数の記録媒体への書き込みのタイミングが常に一致する場合に限らず、若干の時間のずれを伴う場合も含まれる。
【0027】
(実施形態1)
図1は、実施形態1における情報記録装置の構成を表すブロック図である。図1に示すように、本実施形態の情報記録装置100は、CPU110と、バス120と、カードインタフェース130と、AV信号処理部140と、AV信号入出力部150とを含む。情報記録装置100のカードインタフェース130にはメモリカード160を1枚装着することができる。
【0028】
AV信号入出力部150には、撮像素子やレンズ、マイクロフォンなど、映像や音声を入力するための機器や、モニタやスピーカーなど、映像や音声を出力するための機器が設けられている。AV信号入出力部150は、外部機器からのAV信号の入力、および外部機器へのAV信号の出力を行う通信手段であっても良い。
【0029】
AV信号処理部140は、映像や音声に関する信号処理を行う。AV信号処理部140は、エンコーダやデコーダなどの機能、およびデータを一時的に保存するためのバッファも有している。
【0030】
CPU110は、一般的な演算プロセッサ、メインメモリ、および、CPUを動作させるためのプログラムを格納する記憶領域などを含んでいる。CPU110には所望のデータを記録媒体にファイルとして記録するためのファイルシステムが搭載されている。
【0031】
カードインタフェース130は、機械的および電気的にメモリカード160を接続可能であり、メモリカード160を着脱可能に保持する。
【0032】
映像や音声をメモリカード160に記録する場合、AV信号入出力部150から入力された映像信号や音声信号は、AV信号処理部140で処理され、符号化されたディジタルのAVデータとなる。これらのAVデータは、不図示のバッファに蓄えられ、CPU110によってバス120を介してファイルとしてカードインタフェース130に接続されたメモリカード160に送られ、記録される。
【0033】
以上のように、情報記録装置100は、メモリカード160にAVデータを記録する機能を有する。図1に示す情報記録装置100の構成では、カードインタフェース130は1つだけであり、一度に装着できるメモリカード160は1枚だけである。また、AV信号処理部140からバス120を介してカードインタフェース130に至るまでの経路は、AVデータ1本分を通すだけの転送能力しか有しておらず、同時記録のために同時に複数本のAVデータを通す転送能力は有していない。
【0034】
従って、図1の情報記録装置100の構成だけでは、バックアップのために複数のメモリカードに同じデータを同時に記録することは困難である。そこで、本実施形態では、メモリカード160の代わりに、図2に示すメモリカードアダプタ200が用いられる。
【0035】
図2は、本実施形態におけるメモリカードアダプタ200の概略構成を表すブロック図である。図2に示すように、メモリカードアダプタ200は、外部機器と接続するためのホストインタフェース210と、第1のメモリカード250を装着するための第1のカードインタフェース230と、第2のメモリカード260を装着するための第2のカードインタフェース240と、データの記録を制御する制御部220とを有する。
【0036】
メモリカードアダプタ200の外形寸法およびホストインタフェース210の構造は、図1に示すメモリカード160のものと同じである。すなわち、メモリカード160の代わりにメモリカードアダプタ200を情報記録装置100のカードインタフェース130に装着することが可能である。
【0037】
ホストインタフェース210は、情報記録装置100のカードインタフェース130と機械的および電気的に接続可能である。制御部220は、ホストインタフェース210、第1のカードインタフェース230、および第2のカードインタフェース240に電気的に接続され、メモリカードアダプタ200全体の制御を行う。第1のカードインタフェース230および第2のカードインタフェース240は、それぞれ第1のメモリカード250および第2のメモリカード260と機械的および電気的に接続可能である。
【0038】
メモリカードアダプタ200には、メモリカードを2枚装着することが可能である。第1のメモリカード250および第2のメモリカード260は、それぞれ第1のカードインタフェース230および第2のカードインタフェース240に装着される。第1のメモリカード250および第2のメモリカード260は、いずれもメモリカードアダプタ200に着脱することが可能であり、装着された状態ではメモリカードアダプタ200の外形寸法内に収まるように設計されている。このため、メモリカードアダプタ200は、第1のメモリカード250および第2のメモリカード260を装着した状態でも、情報記録装置100に装着することができる。
【0039】
情報記録装置100にメモリカードアダプタ200を装着すると、メモリカードアダプタ200は、ホストインタフェース210を介して、情報記録装置100のカードインタフェース130と接続される。接続によってメモリカードアダプタ200には電力が供給され、制御部220が動作を開始する。
【0040】
制御部220は、第1のカードインタフェース230および第2のカードインタフェース240を介して、それぞれ第1のメモリカード250および第2のメモリカード260にアクセスする。制御部220は、第1のカードインタフェース230および第2のカードインタフェース240を介して、第1のメモリカード250および第2のメモリカード260の両方が装着されているか否かをチェックする。
【0041】
本実施形態のメモリカードアダプタ200の基本的な概念は、情報記録装置100が1枚のメモリカードに対して記録しようとするデータをメモリカードアダプタ200内部で複製し、第1のメモリカード250および第2のメモリカード260に同時に記録することである。この同時記録を成立させるには、第1のメモリカード250および第2のメモリカード260が所定の条件を満たし、同じ状態に揃っていることが好ましい。
【0042】
複数の記録媒体を内蔵する記録装置に関する従来技術として、例えばRAID(Redundant Arrays of Independent/Inexpensive Disks)構造が知られている。RAID構造では、予め同じ仕様の複数の記録媒体が固定的に装置内に設置され、最初から一元管理のもとで使用される。このため、常に複数の記録媒体の仕様および状態を揃えておくことができる。
【0043】
一方、本実施形態におけるメモリカードアダプタ200では、第1のメモリカード250および第2のメモリカード260が常に着脱可能な状態で使用される。従って、どのような仕様のメモリカードが、どのような使用状態で装着されるかは不確定である。このため、同時記録を成立させるには、記録媒体の仕様や状態を比較検査する処理が必要となる。
【0044】
制御部220は、第1のメモリカード250および第2のメモリカード260が2枚とも存在し、アクセス可能であることを確認した後、第1のメモリカード250および第2のメモリカード260が同時記録可能な条件を満たしているか否かを検査する。同時記録可能な条件の検査方法について、以下ではフローチャートを用いて説明する。
【0045】
図3は、本実施形態におけるメモリカード検査方法を表したフローチャートである。図3において、S300はメモリカード容量の検査を行なうステップを表している。S310はメモリカード性能の検査を行なうステップを表している。S320はメモリカードのフォーマットの検査を行なうステップを表している。S330はメモリカードの空き状態の検査を行なうステップを表している。S340はメモリカードのディレクトリの検査を行なうステップを表している。
【0046】
以下、図3に示されたメモリカード検査方法について、各ステップの検査内容を説明する。
【0047】
<容量の検査>
ステップS300では、制御部220は、第1のメモリカード250および第2のメモリカード260の全体容量の検査を行なう。制御部220は、第1のカードインタフェース230を介して第1のメモリカード250にコマンドを発行し、第1のメモリカード250から、カード全体の容量を示す数値を取得する。次に、制御部220は、第2のカードインタフェース240を介して第2のメモリカード260にコマンドを発行し、第2のメモリカード260から、カード全体の容量を示す数値を取得する。制御部220は、このようにして得られた第1のメモリカード250および第2のメモリカード260のそれぞれの全体容量を比較する。比較の結果、両者が同じ容量のメモリカードであれば、制御部220は、容量については問題がない(OK)と判断して次のステップへ進む。もしここで両者の全体容量が異なる場合、制御部220は、同時記録ができない(NG)と判断して検査処理を終了する。
【0048】
ステップS300の例としては、第1のメモリカード250および第2のメモリカード260が、それぞれ8GBおよび8GBの場合のように、両者が同じ容量であればOKと判断される。しかし、例えば一方のメモリカードが8GB、もう一方のメモリカードが4GBの場合のように、両者が異なる容量である場合、NGと判断される。
【0049】
<性能の検査>
次のステップS310では、制御部220は、メモリカードアダプタ200に装着された第1のメモリカード250および第2のメモリカード260の性能の検査を行なう。ここでメモリカードの「性能」とは、メモリカードのデータのリード速度やライト速度などを意味する。メモリカードの規格によっては、コマンドを発行することでカードの性能を示す値を取得することが可能である。
【0050】
このような規格のメモリカードに対して、制御部220は、まず第1のカードインタフェース230を介してコマンドを発行し、第1のメモリカード250からカード性能を示す数値を取得する。次に、制御部220は、第2のカードインタフェース240を介してコマンドを発行し、第2のメモリカード260からカード性能を示す数値を取得する。
【0051】
このようにして得られた第1のメモリカード250および第2のメモリカード260それぞれのカード性能を示す値(性能値)について、両者の値がともに所定の性能値以上の値であるか否かが検査される。ここで「所定の性能値」とは、同時記録に必要なカードの性能を示す値であり、例えばAVデータのビットレートやソフトウェアのオーバーヘッドに応じて一意に決められた値である。メモリカードアダプタ200には、予め所定の性能値が不図示のメモリ等に保有されている。第1のメモリカード250および第2のメモリカード260それぞれのカード性能値が所定の性能値以上である場合は、制御部220は、性能値については問題ない(OK)と判断して次のステップへ進む。もし第1のメモリカード250および第2のメモリカード260の両者またはどちらか一方の性能値が所定の性能値よりも小さい場合、制御部220は、同時記録ができない(NG)と判断して検査処理を終了する。
【0052】
メモリカードの性能を表す数値の実例として、SDメモリカード規格にはスピードクラス値が定義されている。例えばスピードクラス4のSDメモリカードは、データのリードやライトの速度が4MB/s(4メガバイト/秒)以上であることを表す。これらのスピードクラス値は、メモリカードにコマンドを発行することで調べることができる。SDメモリカードでは、他にスピードクラス2、6、10が規格化されており、データのリードおよびライトの最低速度は、それぞれ2MB/s、6MB/s、10MB/sである。
【0053】
図3のステップS310の例として、第1のメモリカード250および第2のメモリカード260の性能値を調べた結果、それぞれスピードクラス4およびスピードクラス6であったとする。ここで、同時記録に必要となる所定の性能値が4MB/sだった場合、第1のメモリカード250および第2のメモリカード260の両者の性能が、どちらも所定の性能値に相当するスピードクラス4以上であるため、OKと判断される。しかし、もし第1のメモリカード250および第2のメモリカード260のうち、少なくとも1枚のメモリカードの性能がスピードクラス2だった場合は、所定の性能値に相当するスピードクラス4よりも値が小さいため、NGと判断される。
【0054】
<フォーマットの検査>
次のステップS320では、制御部220は、メモリカードアダプタ200に装着された第1のメモリカード250および第2のメモリカード260のフォーマットの検査を行なう。ここで「フォーマット」とは、ファイルシステムのフォーマットを意味する。制御部220は、所定のパーティションが所定のファイルシステムに準拠してフォーマットされているか否かを検査する。特にメモリカードには、規格でフォーマットが規定されているものが多い。例えばSDメモリカード規格では、カード容量に応じてパーティションの位置やサイズ、ファイルシステムの種類、ファイルシステムの各種パラメータが細かく規定されている。
【0055】
ステップS320では、制御部220は、第1のメモリカード250および第2のメモリカード260のフォーマットがこれらの規格に準拠しているか否かを検査する。制御部220は、第1のメモリカード250および第2のメモリカード260の両方が規格に準拠している場合、フォーマットについては問題ない(OK)と判断し、次のステップに進む。逆に、第1のメモリカード250および第2のメモリカード260のうち、少なくとも1枚のフォーマットが規格に準拠していない場合、制御部220は、同時記録ができない(NG)と判断して検査処理を終了する。
【0056】
なお、ファイルシステムの管理情報の中には、規格上は必須でなくオプション扱いになっている管理情報や、パラメータの設定に自由度のある管理情報も存在する。ステップS320では、これらの自由度のある管理情報に関して、制御部220は、単純にメモリカードのファイルシステム規格に準拠しているかという判断だけでなく、第1のメモリカード250および第2のメモリカード260それぞれの管理情報のパラメータが同条件になっているかを検査してもよい。ただし、本実施形態における制御部220は、ファイルシステムの管理情報のうち、ディレクトリに関する情報はステップS320では検査せず、後述のステップで検査する。
【0057】
フォーマットを検査するステップS320の例として、まず制御部220は、第1のカードインタフェース230を介してコマンドを発行し、第1のメモリカード250の所定のアドレスからデータを読み出す。具体的には、制御部220は、記録領域の開始アドレスであるPSN=0(Physical Sector Number=0)のアドレスから所定のサイズのデータを読み出す。このデータにはパーティションテーブルを含むマスターブートレコードの情報が存在する。制御部220は、これらの情報の内容がメモリカードの規格に準拠しているか否かを検査する。
【0058】
また、制御部220は、パーティションテーブルを参照することにより、パーティションの先頭アドレスを知ることができる。そこで、次に制御部220は、パーティションの先頭アドレスから所定のサイズのデータを読み出す。このデータには所定のファイルシステムのブートレコードが含まれており、このデータを読み出すことによってファイルシステムの各種のパラメータを獲得することができる。制御部220は、ファイルシステムのこれらの各種パラメータがメモリカードの規格に準拠しているか否かを検査する。
【0059】
さらに、制御部220は、ファイルシステムのブートレコードの内容を参照することにより、他のアドレスにも存在するファイルシステムの管理情報のアドレスを知ることができる。制御部220は、これらの管理情報も同様にメモリカード250から読み出し、メモリカードの規格に準拠しているか否かを検査する。
【0060】
以上の検査を行なうことにより、第1のメモリカード250のフォーマット検査が終了する。制御部220は、同様の検査を第2のメモリカード260に対しても行なう。すなわち、制御部220は、第2のカードインタフェース240を介してコマンドを発行し、第2のメモリカード260から所定のアドレスのデータを読み出し、同様の検査を行なう。
【0061】
検査するデータのうち、メモリカードの規格でオプション扱いの管理情報や、設定に自由度のある管理情報については、制御部220は、第1のメモリカード250および第2のメモリカード260の両者が同条件のパラメータになっているかを検査する。
【0062】
例えば、規格上オプション扱いの管理情報が、第1のメモリカード250および第2のメモリカード260のいずれにも記録されている場合、または、第1のメモリカード250および第2のメモリカード260のいずれにも記録されていない場合、制御部220はOKと判断する。逆に、第1のメモリカード250および第2のメモリカード260のうち、オプション扱いの管理情報が記録されているメモリカードと記録されていないメモリカードとが混在している場合は、制御部220はNGと判断する。
【0063】
規格上、設定値に自由度のある管理情報の例として、ファイルシステムの管理テーブルの数などが挙げられる。ファイルシステムの管理テーブルの数は、1個および2個のどちらでもよい場合がある。この場合は、第1のメモリカード250および第2のメモリカード260のいずれも管理テーブルの数が1個に設定されている場合、または、第1のメモリカード250および第2のメモリカード260のいずれも管理テーブルの数が2個に設定されている場合、制御部220はOKと判断する。しかし、第1のメモリカード250および第2のメモリカード260のうち、管理テーブルの数が1個に設定されているメモリカードと、管理テーブルの数が2個に設定されているメモリカードが混在している場合は、制御部220はNGと判断する。
【0064】
<空き状態の検査>
次に、ステップS330では、制御部220は、メモリカードアダプタ200に装着された第1のメモリカード250および第2のメモリカード260の空き状態の検査を行なう。一般に、メモリカードの記録領域は、ファイルシステムによっては「セクタ」や「クラスタ」と呼ばれる所定のサイズの単位で管理され、空き状態もその単位で管理されている。本実施形態で同時記録を成立させるための条件の1つは、セクタやクラスタの単位で、第1のメモリカード250および第2のメモリカード260の空き状態が全て一致することである。すなわち、メモリカードアダプタ200に装着されている第1のメモリカード250および第2のメモリカード260に関して、それぞれのメモリカードの全ての空きセクタまたは空きクラスタのアドレスは完全に一致することが、本実施形態では必要である。
【0065】
ステップS330で第1のメモリカード250および第2のメモリカード260の空き状態を調べる手順について、実際のSDメモリカードを例に説明する。SDメモリカード規格ではメモリカードの容量に応じて、FAT(File Allocation Tables)ファイルシステム(FAT12、FAT16、FAT32)や、exFAT(Extended FAT)ファイルシステムでメモリカードの記録領域を管理することが規定されている。
【0066】
FATファイルシステムでは、メモリカードの記録領域をクラスタ単位で管理し、FATテーブルには、クラスタごとの空き状態が記録されている。従って、ファイルシステムがFATファイルシステムの場合は、メモリカードのFATテーブルを参照することにより、メモリカードの各クラスタの空き状態を知ることができる。
【0067】
exFATファイルシステムでは、アロケーションビットマップ(Allocation Bitmap)にクラスタごとの空き状態が記録されている。従って、ファイルシステムがexFATファイルシステムの場合は、メモリカードのアロケーションビットマップを参照することにより、メモリカードの各クラスタの空き状態を知ることができる。
【0068】
ここで、メモリカードのファイルシステムの種類は、前述のステップS320でフォーマットを検査する際に明らかになっている。また、FATファイルシステムの場合におけるFATテーブルのアドレスや、exFATファイルシステムの場合におけるアロケーションビットマップのアドレスも、前述のステップS320でフォーマットを検査する際に明らかになっている。
【0069】
図2において矢印で示すように、制御部220は、第1のカードインタフェース230を介してコマンドを発行し、第1のメモリカード250からFATテーブルまたはアロケーションビットマップを読み出す。同様に、制御部220は、第2のカードインタフェース240を介してコマンドを発行し、第2のメモリカード260からFATテーブルまたはアロケーションビットマップを読み出す。
【0070】
このようにして得られた第1のメモリカード250および第2のメモリカード260それぞれのFATテーブルまたはアロケーションビットマップは、制御部220によって比較され、両者の空きクラスタが完全に一致するか否かが判断される。ステップS330で、第1のメモリカード250および第2のメモリカード260それぞれの空きクラスタが完全に一致した場合は、制御部220は、空き状態に関しては問題がない(OK)と判断して次のステップへ進む。もしここで特定のクラスタが、一方のメモリカードでは空き状態、他方のメモリカードでは空き状態ではない場合、空き状態が一致しないために、制御部220は、同時記録ができない(NG)と判断して検査処理を終了する。
【0071】
<ディレクトリの検査>
次に、ステップS340では、制御部220は、メモリカードアダプタ200に装着された第1のメモリカード250および第2のメモリカード260のディレクトリの検査を行なう。ディレクトリは、フォルダとも呼ばれ、ファイルシステムによって作成される管理情報の一種である。以下、FATファイルシステムやexFATファイルシステムを例にディレクトリの検査について説明する。
【0072】
ディレクトリの内部には、ディレクトリエントリと呼ばれる管理情報が格納される。ディレクトリエントリには数種類ある。一般的なディレクトリエントリは、ファイルの存在を表し、ファイル名、ファイルサイズ、ファイルの作成日時、先頭データの場所などの情報を含んでいる。また、ディレクトリの存在そのものも、ファイルの存在と同様に、ディレクトリエントリで表わされる。1つのディレクトリ内には、複数のディレクトリエントリを格納することができる。これは、1つのフォルダに複数のファイルやフォルダを格納できることに相当する。フォルダの中にあるフォルダをサブフォルダと呼んだり、ディレクトリの中にあるディレクトリをサブディレクトリと呼ぶこともある。
【0073】
ディレクトリ内に新規にファイルが格納されると、ディレクトリ内にディレクトリエントリが作成される。逆にディレクトリ内のファイルが削除されると、該当するディレクトリエントリが消去される。ただし、消去はディレクトリエントリに消去状態のマークが付き、次回、新規にディレクトリエントリを作成する際に再利用される候補となる。
【0074】
このように、ディレクトリの内部は、ディレクトリエントリ、消去状態のディレクトリエントリ、および、ディレクトリエントリを格納するための空き領域などから構成される。
【0075】
本実施形態で同時記録を成立させるための条件の1つは、ステップS340の検査の結果、第1のメモリカード250および第2のメモリカード260について、ディレクトリが一致し、かつ、各ディレクトリ内の空き状態が一致することである。
【0076】
ディレクトリの一致とは、第1のメモリカード250および第2のメモリカード260に関して、それぞれのメモリカードに、同じ名前のディレクトリが、同じアドレスに存在していることである。また、各ディレクトリ内の空き状態の一致とは、第1のメモリカード250および第2のメモリカード260に存在する全てのディレクトリに関して、そのディレクトリ内部の空き状態が一致することである。すなわち、あるディレクトリに新しいファイルを格納する時に、ディレクトリエントリが作成されるアドレスが、第1のメモリカード250および第2のメモリカード260の両方で空き状態または消去状態になっていることが必要である。
【0077】
ステップS340におけるディレクトリの検査手順について、実際のSDメモリカードを例に説明する。SDメモリカードのFATファイルシステムおよびexFATファイルシステムのいずれも、ルートディレクトリと呼ばれるディレクトリが必ず存在する。ルートディレクトリからサブディレクトリをたどっていくことによって所定のディレクトリを参照することができる。なお、ルートディレクトリのアドレスは、データ領域の先頭であったりファイルシステムのブートレコードに記載されていたりする。ステップS340のディレクトリの検査は、このルートディレクトリを出発点として、制御部220は各ディレクトリ内の空き状態を比較していく。
【0078】
ここで、メモリカードのファイルシステムの種類は、前述のステップS320でフォーマットを検査する際に明らかになっている。また、ルートディレクトリのアドレスも、前述のステップS320でフォーマットを検査する際に明らかになっている。
【0079】
図2において矢印で示されているように、制御部220は第1のカードインタフェース230を介してコマンドを発行し、第1のメモリカード250からルートディレクトリのデータを読み出す。同様に、制御部220は第2のカードインタフェース240を介してコマンドを発行し、第2のメモリカード260からルートディレクトリのデータを読み出す。
【0080】
このようにして得られた第1のメモリカード250および第2のメモリカード260それぞれのルートディレクトリのデータは、制御部220によって比較され、両者のルートディレクトリ内部の空き領域、および、消去状態のディレクトリエントリのアドレスが完全に一致するか否かが判断される。
【0081】
もしここでルートディレクトリ内部の領域が、一方のメモリカードではディレクトリエントリが存在するのに対し、他方のメモリカードでは空き状態になっている、または、消去状態のディレクトリエントリが存在する場合、ディレクトリ内の空き状態が一致しないために、制御部220は、同時記録ができない(NG)と判断して検査処理を終了する。
【0082】
第1のメモリカード250および第2のメモリカード260について、それぞれのルートディレクトリ内部の空き状態が一致した場合、制御部220はさらに、ルートディレクトリ内に存在するディレクトリ、すなわち、サブディレクトリの名前およびアドレスについても比較する。
【0083】
もしここで第1のメモリカード250および第2のメモリカード260に関して、サブディレクトリ(サブフォルダ)のディレクトリ名またはサブディレクトリのアドレスが異なる場合、ディレクトリ名またはディレクトリのアドレスが一致しないため、制御部220は、同時記録ができない(NG)と判断して検査処理を終了する。
【0084】
このように判断する理由は次の通りである。情報記録装置100は、予め決められた所定の名前のディレクトリにAVファイルを作成する。すなわち、1枚のメモリカードから読み出した情報を基に、所定のアドレスに存在する、所定の名前のディレクトリの内部の、所定の空き領域にディレクトリエントリが作成される。この際、メモリカードアダプタ200に装着された第1のメモリカード250および第2のメモリカード260には、制御部220によって、それぞれ同じ書き込みが実行される。従って、メモリカードアダプタ200に装着された第1のメモリカード250および第2のメモリカード260は、それぞれ、同じ名前のディレクトリが、同じアドレスに存在し、ディレクトリの内部も同じ空き状態になっていることが必要である。
【0085】
第1のメモリカード250および第2のメモリカード260について、サブディレクトリの名前およびアドレスが一致した場合は、制御部220は、さらにサブディレクトリの内部の空き状態も比較する。これは前述のルートディレクトリの内部の空き状態を比較した方法と同じである。もしここでサブディレクトリの内部の領域が、一方のメモリカードではディレクトリエントリが存在し、他方のメモリカードでは空き状態または消去状態のディレクトリエントリだった場合、サブディレクトリ内の空き状態が一致しないため、制御部220は、同時記録ができない(NG)と判断して検査処理を終了する。
【0086】
サブディレクトリの中に、さらにサブディレクトリの存在を表すディレクトリエントリがある場合は、同様の比較処理をサブディレクトリのすべてについて実施する。
【0087】
以上の処理の結果、ステップS340では、制御部220が第1のメモリカード250および第2のメモリカード260に存在する全てのディレクトリについて、ディレクトリの名前、アドレス、ディレクトリ内部の空き状態を比較することになる。これらが全て一致すると、ステップS340のディレクトリの検査はOKと判断される。
【0088】
以上が、ステップS300からステップS340までの検査処理の内容である。本実施形態では、これらのステップが、メモリカードアダプタ200の内部の制御部220によって実行される。
【0089】
図3に示した検査処理がすべてOKの場合、メモリカードアダプタ200の制御部220は、情報記録装置100に対して、メモリカードアダプタ200がレディ状態に遷移したこと、すなわち、情報記録装置100からのコマンドが受理できる状態になったことを通知する。具体的には、制御部220がホストインタフェース210を介して、情報記録装置100に対して、メモリカードアダプタ200がコマンド受理可能な状態になったことを知らせる。
【0090】
このとき、制御部220は、第1のメモリカード250および第2のメモリカード260のうち、第1のメモリカード250だけを情報記録装置100に見せるように制御する。これによって、情報記録装置100からはカードインタフェース130を介して、従来と同様に1枚のメモリカードが装着されているように見える。
【0091】
図1において、カードインタフェース130に装着されたメモリカードアダプタ200がコマンド受理可能な状態になると、CPU110は、カードインタフェース130を介して、装着されたメモリカードアダプタ200にリードコマンドまたは状態を調べるコマンドを発行する。
【0092】
メモリカードアダプタ200の制御部220は、情報記録装置100からリードコマンドを受理すると、第1のカードインタフェース230を介して、リードコマンドを第1のメモリカード250へ伝達する。そして、第1のメモリカード250がリードコマンドを受理し、コマンドに対応したリードデータを応答する。このリードデータは、第1のカードインタフェース230を介して制御部220に伝達され、ホストインタフェース210を介して情報記録装置100に伝達される。これによって情報記録装置100は、発行したリードコマンドに対応するリードデータをメモリカードアダプタ200から得ることができる。
【0093】
以上のように、情報記録装置100からのリードコマンドは、メモリカードアダプタ200に装着された第1のメモリカード250および第2のメモリカード260のうち、特定の1枚にだけ伝達され、リードデータが情報記録装置100へ返る。
【0094】
リードコマンドの他に、メモリカードの状態を調べるコマンドについても同様に、メモリカードアダプタ200に装着された第1のメモリカード250および第2のメモリカード260のうち、特定の1枚にだけ伝達され、応答が情報記録装置100へ返る。
【0095】
情報記録装置100は、装着されたメモリカードアダプタ200の内容や状態を確認した後に、AVデータの記録動作を開始する。情報記録装置100が記録動作を開始すると、CPU110はAVデータを記録するために、カードインタフェース130を介してライトコマンドやメモリカードを制御するコマンドを発行する。
【0096】
メモリカードアダプタ200の制御部220は、情報記録装置100からライトコマンドを受理すると、ライトコマンドを複製し、メモリカードアダプタ200に装着された第1のメモリカード250および第2のメモリカード260のそれぞれに同時に同じライトコマンドを発行する。具体的には、第1のカードインタフェース230を介して、ライトコマンドを第1のメモリカード250へ伝達し、それと同時に、第2のカードインタフェース240を介して、同じライトコマンドを第2のメモリカード260にも伝達する。そして、制御部220は、情報記録装置100からライトコマンドに続いて送られてくるライトデータも、同様に複製し、第1のメモリカード250および第2のメモリカード260のそれぞれに当該ライトデータを伝達する。制御部220は、第1のメモリカード250および第2のメモリカード260からライト動作完了の応答を受理すると、ホストインタフェース210を介して情報記録装置100にライト動作完了の応答を返す。
【0097】
以上のように、情報記録装置100から発行されるライトコマンドおよびライトデータは、メモリカードアダプタ200の内部で複製される。そして、メモリカードアダプタ200に装着された第1のメモリカード250および第2のメモリカード260のそれぞれに、同じライトコマンドおよびライトデータが同時に伝達される。ライトコマンドの他に、メモリカードを制御するコマンドについても同様に、メモリカードアダプタ200に装着された第1のメモリカード250および第2のメモリカード260のそれぞれに、同じコマンドが伝達される。
【0098】
以上の説明の通り、メモリカードアダプタ200は、メモリカードアダプタ200に装着された第1のメモリカード250および第2のメモリカード260を、図3に示したフローチャートに沿って検査した後、情報記録装置100に対してコマンド発行を許可する。メモリカードアダプタ200は、情報記録装置100から発行されたコマンドがリードコマンドまたはカード状態を確認するコマンドの場合、メモリカードアダプタ200に装着された第1のメモリカード250および第2のメモリカード260のうち、特定のメモリカード1枚に対してのみコマンドを伝達し、その応答およびリードデータを情報記録装置100へ返答する。一方、情報記録装置100から発行されたコマンドがライトコマンドまたはカード状態を制御するコマンドの場合、メモリカードアダプタ200は、コマンドおよびライトデータをアダプタ200内部で複製し、第1のメモリカード250および第2のメモリカード260に同じコマンドおよびライトデータを伝達する。
【0099】
本実施形態のメモリカードアダプタ200をメモリカード160の代わりに情報記録装置100に装着すると、前述したメモリカードアダプタ200の作用によって、第1のメモリカード250と第2のメモリカード260にAVデータの同時記録が実行される。以下ではこの同時記録動作の手順を説明する。
【0100】
まず、情報記録装置100にメモリカードアダプタ200が装着される。メモリカードアダプタ200の内部は、情報記録装置100への装着によって通電し、起動時に図3のフローチャートに示した検査処理が実行される。検査処理が全てOKと判断されると、メモリカードアダプタ200はコマンド受理可能な状態になる。情報記録装置100は、装着されたメモリカードアダプタ200がコマンド受理可能な状態になると、リードコマンドおよびカード状態を確認するコマンドを発行し、メモリカードアダプタ200の内部状態を把握する。情報記録装置100から発行されたリードコマンドおよびカード状態を確認するコマンドは、制御部220による制御により、第1のメモリカード250および第2のメモリカード260のうち、第1のカードインタフェース230を介して、メモリカード250に対してのみコマンドが伝達される。その応答およびリードデータは、情報記録装置100へ返答される。
【0101】
この結果、情報記録装置100は、メモリカードアダプタ200から、メモリカード250の内部状態や、ディレクトリ、空き領域のアドレスなどを取得することになる。これらの情報に基づいて情報記録装置100は、AVデータを空き領域のアドレスへ書き込むためのライトコマンドを発行し、それに伴うファイルシステムの管理情報を、所定のアドレスへ書き込むためのライトコマンドを発行する。これらのライトコマンドは、メモリカード250の空き領域やディレクトリに基づいて作成されたライトコマンドであるため、メモリカード250に対しては正しいライトコマンドである。ここで、もう一方のメモリカード260は、起動時の検査処理によって、メモリカード250と同じ空き状態や同じディレクトリの状態になっていることが確認されている。従って、メモリカード250の空き領域へ書き込むためのライトコマンドや、それに伴うファイルシステムの管理情報を書き込むためのライトコマンドは、もう一方のメモリカード260に対しても正しいライトコマンドである。
【0102】
これらのライトコマンドは、制御部220によって複製され、同じライトコマンドが同時に第1のメモリカード250および第2のメモリカード260へ発行され、ライトデータも同様に複製されて転送される。この結果、メモリカードアダプタ200に装着された第1のメモリカード250および第2のメモリカード260には、同時に同じAVデータがファイルとして記録されることになる。情報記録装置100は、同時記録の機能を持たない装置であったが、本実施形態のメモリカードアダプタ200を装着することによって、ソフトウェアもハードウェアも変更することなく、第1のメモリカード250および第2のメモリカード260に同時に同じデータを記録する機能持つことになる。
【0103】
なお、メモリカードアダプタ200は、情報記録装置100に限らず、一般的なパソコンなどの機器にも装着可能である。よって、パソコンなどの外部機器から制御部220に、所定の数値や文字列、検査すべき項目や、検査を省略する項目などを設定できるようにしても良い。
【0104】
このような機能により、例えば、ステップS310のメモリカードの性能の検査において、同時記録に必要な性能値の基準として比較した値、すなわち、メモリカードアダプタ200に予め保持された所定の性能値を、予め外部から設定または変更することが可能となる。
【0105】
また、ステップS340では、第1のメモリカード250および第2のメモリカード260に存在する全てのディレクトリについて、ディレクトリの名前、アドレス、ディレクトリ内部の空き状態を比較したが、検査対象のディレクトリ名を予め外部から設定しても良い。その場合、ステップS340のディレクトリの検査は、全てのディレクトリを検査するのではなく、検査対象のディレクトリに限定して実施されることになり、検査に要する処理時間を短縮することができる。
【0106】
また、ステップS300からS340のうち、どの検査を実施し、どの検査をスキップするか外部機器から設定することで、必要最小限の検査内容に絞ることも可能となる。
【0107】
(実施形態2)
次に、本発明の第2の実施形態を説明する。前述の実施形態1では、情報記録装置100側のソフトウェアおよびハードウェアを一切変更せずに、情報記録装置100にメモリカードアダプタ200を装着するだけで同時記録の機能が提供される。本実施形態では、情報記録装置側の制御ソフトウェアを一部変更する前提で、メモリカードアダプタを用いた同時記録が実現される。以下、実施形態1と異なる点を中心に説明し、重複する事項についての説明は省略する。
【0108】
図4は、本実施形態における情報記録装置の概略構成を表すブロック図である。図4に示す情報記録装置400は、CPU410と、バス420と、カードインタフェース430と、AV信号処理部440と、AV信号入出力部450とを含む。情報記録装置400には、メモリカード460を1枚装着することが可能である。このように、本実施形態の情報記録装置400のハードウェア構成は、実施形態1の情報記録装置100と同様である。
【0109】
本実施形態の情報記録装置400の各構成要素は、図1の情報記録装置100の各構成要素と同様であるため、ここでは説明を省略する。ただし、本実施形態では、CPU410を動作させるためのソフトウェア(プログラム)が、後から変更可能であることを前提とする。すなわち、情報記録装置400にメモリカードアダプタを装着して使うために、CPU410を動作させるためのソフトウェアが変更可能であることを前提とする。
【0110】
また、情報記録装置400が映像や音声などの情報をメモリカードにファイルとして記録する仕組みについては、実施形態1の情報記録装置100と同じであるため、ここでは説明を省略する。
【0111】
また、情報記録装置400の内部のハードウェア構成は、実施形態1の情報記録装置100と同様に、AVデータ1本分を通すだけの転送能力を有し、同時記録のために同時に複数本のAVデータを通す転送能力は持っていない。従って、本実施形態においても、メモリカードアダプタを利用しなければ、同時記録はできない。
【0112】
図5は、本実施形態におけるメモリカードアダプタの構成を表すブロック図である。図5に示すように、メモリカードアダプタ500は、ホストインタフェース510と、制御部520と、第1のカードインタフェース530と、第2のカードインタフェース540とを有する。メモリカードアダプタ500には、メモリカードを2枚装着することが可能であり、第1のメモリカード550と第2のメモリカード560とが装着される。メモリカードアダプタ500、第1のメモリカード550、第2のメモリカード560の外形寸法は、図2に示すメモリカードアダプタ200における外形寸法と同様である。メモリカードアダプタ500は、メモリカード460の代わりに情報記録装置400に装着することが可能である。
【0113】
本実施形態におけるメモリカードアダプタ500が実施形態1におけるメモリカードアダプタ200と異なる点は、メモリカードアダプタ200内部の制御部220が実施する各種の処理を、情報記録装置400が実施する点である。以下、この点を中心に、情報記録装置400およびメモリカードアダプタ500の動作を説明し、重複する事項についての説明は省略する。
【0114】
情報記録装置400にメモリカードアダプタ500を装着すると、メモリカードアダプタ500は、ホストインタフェース510を介して、情報記録装置400のカードインタフェース430と接続される。接続によってメモリカードアダプタ500には電力が供給され、制御部520が動作を開始する。
【0115】
制御部520は、第1のカードインタフェース530および第2のカードインタフェース540を介して、それぞれ第1のメモリカード550および第2のメモリカード560の存在を情報記録装置400に公開する。すなわち、情報記録装置400からは、メモリカードアダプタ500を介して、第1のメモリカード550および第2のメモリカード560が見える状態となる。そこで、本実施形態では、情報記録装置400のCPU410が、第1のメモリカード550および第2のメモリカード560が同時記録可能な条件を満たしているか否かを検査する。同時記録可能な条件の検査方法について、以下ではフローチャートを用いて説明する。
【0116】
図6は、本実施形態におけるカード検査方法を表すフローチャートである。図6において、S600はメモリカードのカード容量の検査を行なうステップを表している。S610はメモリカードのカード性能の検査を行なうステップを表している。S620はメモリカードのフォーマットの検査を行なうステップを表している。S630はメモリカードの空き状態の検査を行なうステップを表している。S640はメモリカードのディレクトリの検査を行なうステップを表している。本実施形態では、図6に示された各ステップの検査処理を、情報記録装置400のCPU410が実行する。
【0117】
図6のフローチャートに示されたカード検査方法について、各ステップの検査の内容を説明する。
【0118】
<容量の検査>
最初のステップS600では、CPU410は、メモリカードアダプタ500に装着された第1のメモリカード550および第2のメモリカード560のそれぞれについて、全体容量の検査を行なう。図4に示すように、CPU410は、カードインタフェース430を介して、メモリカード460の代わりに装着されたメモリカードアダプタ500内の第1のメモリカード550および第2のメモリカード560それぞれに対してコマンドを発行し、各メモリカードの全体容量を示す数値を取得する。
【0119】
このとき、メモリカードアダプタ500には、ホストインタフェース510を介して情報記録装置400からコマンドが送られてくる。制御部520は、情報記録装置400から送られてくるコマンドが、第1のメモリカード550に対するコマンドであれば、第1のカードインタフェース530を介して、第1のメモリカード550に伝達し、その応答を情報記録装置400へ返答する。また、制御部520は、情報記録装置400から送られてくるコマンドが、第2のメモリカード560に対するコマンドであれば、第2のカードインタフェース540を介して、第2のメモリカード560に伝達し、その応答を情報記録装置400へ返答する。
【0120】
CPU410は、メモリカードアダプタ500に装着された第1のメモリカード550および第2のメモリカード560のそれぞれの全体容量を比較し、両者が同じ容量のメモリカードであればOKと判断して次のステップへ進む。もしここで両者の全体容量が異なる場合、CPU410は同時記録ができない(NG)と判断して検査処理を終了する。
【0121】
<性能の検査>
次に、ステップS610では、CPU410は、メモリカードの性能の検査を行なう。この検査の内容は実施形態1におけるステップS310と同じであるため、説明を省略する。
【0122】
ただし、本実施形態では、制御部520が検査処理を行なうのではなく、CPU410がコマンドを発行して性能の検査を行なう点が実施形態1とは異なる。CPU410は、メモリカードアダプタ500に装着された第1のメモリカード550および第2のメモリカード560のそれぞれの性能値を取得する。それらの性能値が同時記録に必要な所定の性能値以上である場合は、性能については問題ない(OK)と判断して次のステップへ進む。もし第1のメモリカード550および第2のメモリカード560の両者またはどちらか一方の性能値が所定の性能値よりも小さい場合、CPU410は同時記録ができない(NG)と判断して検査処理を終了する。
【0123】
<フォーマットの検査>
次に、ステップS620では、CPU410は、メモリカードアダプタ500に装着された第1のメモリカード550および第2のメモリカード560のフォーマットの検査を行なう。フォーマットの検査の内容に関しては、実施形態1におけるステップS320と同じであるため説明を省略する。
【0124】
ただし、本実施形態では、制御部520が検査処理を行なうのではなく、CPU410がフォーマットの検査処理を行なう。ステップS620では、CPU410が、メモリカードアダプタ500に装着された第1のメモリカード550および第2のメモリカード560のそれぞれのデータを読み出し、メモリカードのフォーマットが規格に準拠しているか否かを検査する。第1のメモリカード550および第2のメモリカード560のうち、少なくとも1枚のフォーマットが規格に準拠していない場合や、両者のファイルシステムのパラメータが異なる場合、CPU410は、同時記録ができない(NG)と判断して検査処理を終了する。
【0125】
<空き状態の検査>
次に、ステップS630では、CPU410は、メモリカードアダプタ500に装着された第1のメモリカード550および第2のメモリカード560の空き状態の検査を行なう。空き状態の検査の内容に関しては、実施形態1におけるステップS330と同じであるため、説明を省略する。
【0126】
ただし、本実施形態では、制御部520が検査処理を行なうのではなく、CPU410が空き状態の検査処理を行なう。ステップS630では、CPU410が、メモリカードアダプタ500に装着された第1のメモリカード550および第2のメモリカード560からファイルシステムの管理情報を読み出し、各メモリカードの空き領域(空きクラスタ)が完全に一致するか否かを検査する。各メモリカードの空きクラスタが完全に一致した場合は、CPU410はOKと判断して次のステップへ進む。もしここで特定のクラスタが、一方のカードでは空き状態、他方のカードでは空き状態ではない場合、空き状態が一致しないために、CPU410は同時記録ができない(NG)と判断して検査処理を終了する。
【0127】
<ディレクトリの検査>
次に、ステップS640では、CPU410は、メモリカードアダプタ500に装着された第1のメモリカード550および第2のメモリカード560のディレクトリの検査を行なう。ディレクトリの検査内容に関しては、実施形態1におけるステップS340と同じであるため説明を省略する。
【0128】
ただし、本実施形態では、制御部520が検査処理を行なうのではなく、CPU410がディレクトリの検査処理を行なう。ステップS640では、CPU410が、メモリカードアダプタ500に装着された第1のメモリカード550および第2のメモリカード560からディレクトリの情報を読み出して検査処理を行なう。
【0129】
特に本実施形態では、CPU410は、検査するディレクトリの数を絞ることができる。その理由は、検査処理を実行するCPU410は、情報記録装置400の構成要素であるため、情報記録装置400がAVファイル記録に使用するディレクトリ名を予め知っているからである。従って、ステップS640では、CPU410は、第1のメモリカード550および第2のメモリカード560に存在する全てのディレクトリを比較検査する必要はない。情報記録装置400がAVファイル記録に使用するディレクトリやそれに関連するディレクトリだけに絞ってディレクトリを検査することができる。このため、本実施形態では、ディレクトリの検査に要する時間を短縮することができる。
【0130】
以上が、図6に示したステップS600からステップS640までの検査処理の内容である。これらのステップは、メモリカードアダプタ500の内部の制御部520ではなく、情報記録装置400の内部のCPU410によって実行される。
【0131】
図6に示した検査処理がすべてOKの場合、CPU410は、メモリカードアダプタ500の制御部520の動作モードを切替える指示を発行する。
【0132】
本実施形態におけるこれまでの処理では、メモリカードアダプタ500は、情報記録装置400に対して第1のメモリカード550および第2のメモリカード560を見せていた。この状態を「複数枚モード」と呼ぶことにする。メモリカードアダプタ500が複数枚モードの場合、情報記録装置400は、メモリカードアダプタ500に装着された第1のメモリカード550および第2のメモリカード560それぞれに対して独立にコマンドを発行することができる。
【0133】
一方、前述の実施形態1では、メモリカードアダプタ200が情報記録装置100に対して1枚だけメモリカードを見せていた。この状態を「1枚モード」と呼ぶことにする。メモリカードアダプタが1枚モードの場合、情報記録装置からリードコマンドやカード状態を確認するコマンドが発行されると、メモリカードアダプタは、複数のメモリカードのうち、一方のメモリカードに対してのみコマンドを伝達し、その応答やリードデータを情報記録装置へ返答する。一方で、情報記録装置からライトコマンドやカード状態を制御するコマンドが発行されると、メモリカードアダプタは、コマンドやライトデータをアダプタ内部で複製し、複数のメモリカードのすべてに同じコマンドやライトデータを同時に伝達する。
【0134】
メモリカードアダプタ500の制御部520は、情報記録装置400からのモード切り替え指示を受けて、メモリカードアダプタ500の動作モードを、複数枚モードから1枚モードに切り替える。これ以降は、情報記録装置400は、1枚モードで動作するメモリカードアダプタ500に対して、AVデータを記録する。これは、前述の実施形態1における記録動作と同じである。すなわち、情報記録装置400から発行されるライトコマンドは、メモリカードアダプタ500の内部で複製され、第1のメモリカード550および第2のメモリカード560に伝達されることにより、同時記録が実行される。
【0135】
以上のように、情報記録装置400は、同時記録の機能を持たない装置であったが、本実施形態のメモリカードアダプタ500を装着し、かつ、情報記録装置400のCPU410のソフトウェアを変更することにより、第1のメモリカード550および第2のメモリカード560に同時に記録する機能が提供される。
【0136】
なお、本実施形態では、メモリカードアダプタ500の動作モードを複数枚モードから1枚モードへ切り替える例を説明したが、この方法に限らず、複数枚モードのまま同時記録を行なうことも可能である。その場合、情報記録装置400からはメモリカードアダプタ500を介して第1のメモリカード550および第2のメモリカード560が見える状態が維持される。情報記録装置400は、特定の1枚のメモリカードに対してのみAVファイルの記録動作を実行する。このとき、情報記録装置400は、ライトコマンドやカード状態を制御するコマンドに複製フラグを付与してメモリカードアダプタ500へ発行する。メモリカードアダプタ500は、情報記録装置400から送られてくるコマンドに複製フラグが付与されている場合、そのコマンドを複製し、メモリカードアダプタ500に装着されている第1のメモリカード550および第2のメモリカード560に対してコマンドを伝達する。この方法でも第1のメモリカード550および第2のメモリカード560に同時記録することが可能となる。
【0137】
コマンドに複製フラグを付与する代わりに、通常のコマンドとは異なる複製用コマンドを別途用意しても良い。メモリカードアダプタ500は、情報記録装置400から送られてくるコマンドが複製用コマンドの場合、そのコマンドを複製し、メモリカードアダプタ500に装着されている第1のメモリカード550および第2のメモリカード560に対して同時にコマンドを伝達する。この方法でも第1のメモリカード550および第2のメモリカード560に同時記録することが可能となる。
【0138】
なお、実施形態1および実施形態2におけるメモリカードアダプタ、および、メモリカードアダプタに2枚装着されるメモリカードの具体例としては、次の組み合わせ等が考えられる。
1.メモリカードアダプタがPC Card規格で、メモリカードがSDメモリカード規格。
2.メモリカードアダプタがExpress Card規格で、メモリカードがSDメモリカード規格。
3.メモリカードアダプタがCompactFlash(登録商標)規格で、メモリカードがSDメモリカード規格。
【0139】
前述の表記で、SDメモリカード規格には、ミニSDメモリカードやマイクロSDメモリカードを含み、また、SDHCカードやSDXCカードも含む。PC Card規格(PCカード規格)およびExpress Card規格(エクスプレスカード規格)は、規格団体であるPCMCIA(Personal Computer Memory Card International Association)が規定したメモリカード規格を表す。CompactFlash規格は、CFA(CompactFlash Association)が規定したメモリカード規格を表す。
【0140】
また上記の組み合わせに限らず、ある外形寸法が規定されたメモリカード規格と、それよりも小さい外形寸法が規定されたメモリカード規格に対して、実施形態1および実施形態2のメモリカードアダプタを構成可能である。すなわち、外形寸法の大きい方のメモリカード規格の寸法でメモリカードアダプタを作製し、外形寸法の小さい方の規格の寸法をもつ複数のメモリカードをメモリカードアダプタに装着するようにすればよい。
【0141】
なお、情報記録装置が、メモリカードではなくUSBメモリやUSBハードディスクを記録媒体として装着する構成も考えられる。この場合、情報記録装置100のカードインタフェース130、または、情報記録装置400のカードインタフェース430は、USBインタフェースであってもよい。一方で、メモリカードアダプタ200のホストインタフェース210、または、メモリカードアダプタ500のホストインタフェース510をUSBインタフェースとすれば、USBインタフェースに装着可能なメモリカードアダプタが構成される。このようなメモリカードアダプタを情報記録装置に装着することにより、複数枚のメモリカードに同時記録することが可能となる。
【0142】
なお、実施形態1および実施形態2では、記録開始前に2枚のメモリカードの論理フォーマットを検査する処理が行なわれる。具体的には、図3のステップS320からS340までの検査処理、または、図6のステップS620からS640までの検査処理が論理フォーマットの検査処理に該当する。情報記録装置が記録開始前に、2枚のメモリカードを必ずフォーマットしてから使う場合は、2枚のメモリカードのファイルシステムの管理情報は同じ空き状態になるので、これらの論理フォーマットを検査する処理は不要となる。従って、図3のステップS300およびステップS310の検査を通過した場合、または、図6のステップS600およびステップS610の検査を通過した場合、それ以降の検査を実施せずに、2枚のメモリカードをフォーマットしてから記録開始するようにしても同等の効果が得られる。
【0143】
なお、実施形態1および実施形態2では、メモリカードアダプタに2枚のメモリカードを装着することができるが、メモリカードアダプタに装着されるメモリカードは3枚以上であっても良い。この場合、メモリカードアダプタは、装着されている複数枚のメモリカードの内、少なくとも2枚以上のメモリカードに対して、AVデータの同時記録を実行することが可能である。
(実施形態3)
次に、本発明の第3の実施形態を説明する。本実施形態では、仕様、カード容量、パーティションの位置、サイズ、ファイルシステムの種類などが異なる複数の記録媒体に同時記録を行うことができる点が実施形態1、2とは異なっている。以下、実施形態1または実施形態2と異なる点を中心に説明し、重複する事項についての説明は省略する。
【0144】
図7は、本実施形態に係る情報記録装置700の構成を表すブロック図である。図7に示すように、情報記録装置700は、CPU710と、バス720と、カードインタフェース730と、AV信号処理部740と、AV信号入出力部750とを備えている。情報記録装置700にはメモリカード760を1枚装着することができる。
【0145】
本実施形態の情報記録装置700の各構成要素は、図1に示す情報記録装置100の各構成要素と同様であるため、ここでは説明を省略する。また、情報記録装置700が映像や音声などの情報をメモリカードにファイルとして記録する仕組みについても、実施形態1の情報記録装置100と同じであるため、説明を省略する。ただし、本実施形態においても、実施形態2と同様、CPU710を動作させるためのソフトウェア(プログラム)は、後から変更が可能である。情報記録装置700にメモリカードアダプタを装着して複数のメモリカードに同時記録を行うために、CPU110を動作させるためのソフトウェアは、変更されている。
【0146】
情報記録装置700の内部のハードウェア構成は、実施形態1の情報記録装置100と同様に、AVデータ1本分を通すだけの転送能力しか有しておらず、同時に複数本のAVデータを通す転送能力は持っていない。したがって、本実施形態においても、メモリカードアダプタを利用しなければ同時記録はできない。
【0147】
図8は、本実施形態に係るメモリカードアダプタ800の構成を表すブロック図である。図8に示すように、メモリカードアダプタ800は、ホストインタフェース810と、制御部820と、第1のカードインタフェース830と、第2のカードインタフェース840とを有している。本実施形態におけるメモリカードアダプタ800の物理構成は、実施形態1、2におけるメモリカードアダプタの物理構成と同様である。
【0148】
メモリカードアダプタ800は、メモリカード760と同じ外形寸法、同じカードインタフェースを有しており、メモリカード760の代わりに情報記録装置700に装着することが可能である。ホストインタフェース810は、情報記録装置700のカードインタフェース730と機械的及び電気的に接続可能である。制御部820は、メモリカードアダプタ800全体の制御を行う。第1のカードインタフェース830および第2のカードインタフェース840は、それぞれ第1のメモリカード850および第2のメモリカード860と機械的及び電気的に接続可能であり、それらを着脱可能に保持する。第1のメモリカード850および第2のメモリカード860は、メモリカードアダプタ800に装着された状態では、メモリカードアダプタ800の外形寸法内に収まるように設計されている。このため、メモリカードアダプタ800は、第1のメモリカード850および第2のメモリカード860を装着した状態でも、情報記録装置700に装着することができる。
【0149】
情報記録装置700にメモリカードアダプタ800を装着すると、メモリカードアダプタ800はホストインタフェース810を介して、情報記録装置700のカードインタフェース830と接続される。接続によってメモリカードアダプタ800には電力が供給され、制御部820が動作を開始する。
【0150】
制御部820は、第1のカードインタフェース830および第2のカードインタフェース840を介して、それぞれ第1のメモリカード850および第2のメモリカード860の存在を情報記録装置700に公開する。すなわち、情報記録装置700からは、メモリカードアダプタ800を介して、第1のメモリカード850および第2のメモリカード860が見える状態となる。そこで、本実施形態では、情報記録装置700のCPU710が、第1のメモリカード850および第2のメモリカード860が同時記録可能な条件を満たしているか否かを検査する。
【0151】
本実施形態の情報記録システム(情報記録装置700およびカードインタフェース800を含む)の基本的な概念は、仕様、カード容量、パーティションの位置やサイズ、ファイルシステムの種類などが異なる第1のメモリカード850および第2のメモリカード860に対し、同時記録を可能にすることである。これを実現するため、第1のメモリカード850および第2のメモリカード860におけるデータ領域のアドレスが制御部820に設定される。サイズが大きいAVデータの記録では、制御部820は、情報記録装置700が1枚のメモリカードに記録しようとするデータを複製し、設定されたデータ領域のアドレスを加味して、第1のメモリカード850および第2のメモリカード860に同時記録する。以下、本実施形態における同時記録動作の原理を図面を用いて具体的に説明する。
【0152】
図9は、本実施形態に係る第1のメモリカード850および第2のメモリカード860のデータ構成の例を表すブロック図である。図9(a)は第1のメモリカード850のデータ構成を、図9(b)は第2のメモリカード860のデータ構成を表している。アドレス300および310は、それぞれ第1のメモリカード850および第2のメモリカード860のデータ領域の開始アドレスを表している。領域320および330は、それぞれ第1のメモリカード850および第2のメモリカード860のデータ管理ブロックを表している。アドレス340および350は、それぞれ第1のメモリカード850および第2のメモリカード860においてファイルデータが記録されている領域の開始アドレスを表している。領域360および370は、それぞれ第1のメモリカード850および第2のメモリカード860のファイルデータが記録されている領域を表している。
【0153】
一般に、データ領域の開始アドレスは、ファイルシステムの管理情報に記載されている。ファイルデータは、データ管理ブロック単位で記録され、配置が管理されている。例えば、FAT(File Allocation Tables)ファイルシステムでは、ファイルデータは、「クラスタ」と呼ばれるデータ管理ブロック単位で記録される。FATテーブルと呼ばれる管理情報には、ファイルデータが記録されているクラスタの位置・順番等の情報が記録されている。また、「ディレクトリエントリ」と呼ばれる情報には、ファイル名・作成日時・ファイル属性・ファイルサイズ・開始クラスタ等が記録されている。データ領域は、FATテーブル領域の後ろに位置している。「パーティションブートレコード」と呼ばれる情報に記載されているFATテーブルサイズや予約領域サイズにより、データ領域の開始アドレスを算出することができる。
【0154】
図9では、第1のメモリカード850および第2のメモリカード860のそれぞれのデータ領域開始アドレス300および310は異なっている。また、データ管理ブロック320のサイズは、データ管理ブロック330のサイズの半分である。一方、ファイルデータが記録されている領域の開始アドレス340および350も異なっているが、それらのデータ領域の先頭からのずれ(オフセット)380、390は、それぞれ6クラスタ分、3クラスタ分であり、それぞれのデータ管理ブロックのサイズを乗じると、同じサイズになる。また、ファイルデータが記録されている領域360および370のサイズは、それぞれ4クラスタ分、2クラスタ分となっており、それぞれのデータ管理ブロックのサイズを乗じると、両者は同じサイズの領域を使用していることになる。
【0155】
したがって、図9に示す例のように、2枚のメモリカードの一方のデータ管理ブロックのサイズが、他方のデータ管理ブロックのサイズの倍数の関係にあるとき、データ領域の先頭からのオフセットが等しいデータ管理ブロックを検出することが可能である。
【0156】
そこで、CPU710は、事前に2枚のメモリカードのデータ領域の開始アドレス300および310を、制御部820に設定しておく。同時記録を行う場合、CPU710は、データ領域の開始アドレスを基点とする領域を指定して、制御部820にライトコマンドを送信する。制御部820は、指定された領域のアドレスに、事前に設定されていた2枚のメモリカードのデータ領域のアドレス300および310をそれぞれ加算することにより、データを記録する領域のアドレスを求める。そして、データを複製して第1のメモリカード850および第2のメモリカード860にそれぞれライトコマンドを発行する。この処理により、同時記録が可能となる。なお、このような、データ領域の開始アドレスを加算して同時記録を実行する制御部820の状態を「複数枚モード」と呼び、2枚のメモリカードへ個別にアクセスする状態を「1枚モード」と呼ぶ。
【0157】
このように、同時記録を成立させるには、第1のメモリカード850および第2のメモリカード860の共通の空き領域を検出する必要がある。
【0158】
本実施形態の情報記録システムでは、第1のメモリカード850および第2のメモリカード860が常に着脱可能な状態で使用される。従って、どのような仕様のメモリカードが、どのような使用状態で装着されるかは、不確定である。このため、同時記録を成立させるには、記録媒体の仕様や状態を検査し、共通の空き領域を検出する処理が必要となる。
【0159】
制御部820は、第1のメモリカード850および第2のメモリカード860が2枚とも存在し、アクセス可能であることを確認した後に、第1のメモリカード850および第2のメモリカード860が同時記録可能な条件を満たしているかを検査する。同時記録可能な条件の検査方法について、以下でフローチャートを用いて説明する。
【0160】
図10は、本実施形態におけるメモリカード検査方法を表したフローチャートである。図10において、S400はメモリカード性能を検査するステップを表している。S410はメモリカードのフォーマットを検査するステップを表している。S420はデータを記録する領域であるデータ領域のアドレスを設定するステップを表している。S430は第1のメモリカード850および第2のメモリカード860の共通の空き状態を検査するステップを表している。
【0161】
以下、図10のフローチャートに示したカード検査方法について、各ステップの検査内容を説明する。
【0162】
<性能の検査>
最初のステップS400では、CPU710は、メモリカードアダプタ800に装着された第1のメモリカード850および第2のメモリカード860の性能の検査を行う。このステップで行われる処理は、実施形態1におけるステップS310で行われる処理と同様であるため、説明を省略する。ただし、本実施形態では、実施形態2と同様、制御部820が検査処理を行なうのではなく、CPU710がコマンドを発行して性能の検査を行なう。CPU710は、メモリカードアダプタ800に装着された第1のメモリカード850および第2のメモリカード860のそれぞれの性能値を取得する。それらの性能値が同時記録に必要な所定の性能値以上である場合は、性能については問題ない(OK)と判断して次のステップへ進む。もし第1のメモリカード850および第2のメモリカード860の両者またはどちらか一方の性能値が所定の性能値よりも小さい場合、CPU710は同時記録ができない(NG)と判断して検査処理を終了する。
【0163】
<フォーマットの検査>
次のステップS410では、CPU710は、メモリカードアダプタ800に装着された第1のメモリカード850および第2のメモリカード860のフォーマットの検査を行う。このステップで行われる処理は、実施形態1におけるステップS320で行われる処理と同様であるため、詳細な説明を省略する。ただし、本実施形態では、実施形態2と同様、制御部820が検査処理を行なうのではなく、CPU710がフォーマットの検査処理を行なう。
【0164】
第1のメモリカード850および第2のメモリカード860のうち、少なくとも1枚のメモリカードのフォーマットが規格に準拠していない場合や、他のメモリカードとファイルシステムのパラメータが異なる場合、CPU710は同時記録ができない(NG)と判断して検査処理を終了する。
【0165】
<データ領域アドレスの設定>
ステップS420では、データ領域の開始アドレスの登録処理が行われる。データ領域の開始アドレスは、前述のステップS410で取得したファイルシステムのパラメータから算出される。CPU710は、データ領域設定コマンドをメモリカードアダプタ800へ送信し、第1のメモリカード850および第2のメモリカード860のデータ領域の開始アドレスをそれぞれ設定する。
【0166】
<空き状態の検査>
次に、ステップS430では、CPU710は、メモリカードアダプタ800に装着された第1のメモリカード850および第2のメモリカード860の共通の空き状態を検査する。本実施形態で同時記録を成立させるための条件の1つは、第1のメモリカード850および第2のメモリカード860の共通の空き領域を検出することである。すなわち、データ領域の先頭アドレスからのオフセットが等しい空きブロックを検出する必要がある。
【0167】
ステップS430で第1のメモリカード850および第2のメモリカード860の共通の空き領域を検出する手順について、実際のSDメモリカードを例に説明する。前述のとおり、SDメモリカード規格では、メモリカードの容量に応じて、FATファイルシステム(FAT12、FAT16、FAT32)や、exFAT(Extended FAT)ファイルシステムでメモリカードの記録領域を管理することが規定されている。
【0168】
FATファイルシステムでは、メモリカードの記録領域をクラスタ単位で管理し、FATテーブルには、クラスタごとの空き状態が記録されている。従って、ファイルシステムがFATファイルシステムの場合は、メモリカードのFATテーブルを参照することで、メモリカードのデータ領域先頭からの各クラスタの空き状態を知ることができる。
【0169】
exFATファイルシステムでは、アロケーションビットマップ(Allocation Bitmap)にクラスタごとの空き状態が記録されている。従って、ファイルシステムがexFATファイルシステムの場合は、メモリカードのアロケーションビットマップを参照することで、メモリカードのデータ領域先頭からの各クラスタの空き状態を知ることができる。
【0170】
ここで、メモリカードのファイルシステムの種類は、前述のステップS410でフォーマットを検査する際に明らかになっている。また、FATファイルシステムの場合におけるFATテーブルのアドレスや、exFATファイルシステムの場合におけるアロケーションビットマップのアドレスや、クラスタサイズも、前述のステップS410でフォーマットを検査する際に明らかになっている。
【0171】
このとき、CPU710は、第1のメモリカード850および第2のメモリカード860のクラスタサイズが互いに倍数・約数の関係になっているかを確認する。例えば、第1のメモリカード850がFAT32でフォーマットされているためにクラスタサイズが32KBであり、第2のメモリカード860がexFATでフォーマットされているためにクラスタサイズが128KBである場合を想定する。この場合、第2のメモリカード860のクラスタサイズは第1のメモリカード850のクラスタサイズの4倍となるため、クラスタサイズに関しては問題ないと判断される。逆に、2枚のメモリカード850、860のクラスタサイズが互いに倍数・約数の関係にない場合は、CPU710は同時記録ができない(NG)と判断して検査処理を終了する。
【0172】
第1のメモリカード850および第2のメモリカード860のクラスタサイズが互いに倍数・約数の関係にある場合、CPU710は、第1のメモリカード850および第2のメモリカード860からそれぞれのFATテーブルまたはアロケーションビットマップを読み込み、先頭から順に空きクラスタを検出する。上記の例で、第1のメモリカード850のクラスタサイズを32KBとすると、第1のメモリカード850の4クラスタ分が、第2のメモリカード860のクラスタサイズ128KBと同サイズとなる。したがって、第1のメモリカード850では4クラスタ分ずつ検査し、第2のメモリカード860では1クラスタずつ検査し、両者がともに空きクラスタである領域を共通空き領域としてカウントする。CPU710は、この処理を、第1のメモリカード850および第2のメモリカード860のFATテーブルまたはアロケーションビットマップのいずれかの終端に達するまで行う。
【0173】
なお、近年のフラッシュメモリの大容量化にともない、クラスタサイズよりも大きいブロックサイズでの記録がなされる場合がある。このブロックをAU(Allocation Unit)と呼ぶ。このとき、AUサイズ分の連続空き領域を検出する必要がある。例えば、AUサイズが4MBの場合、クラスタサイズが32KBの場合では128クラスタ分の連続空き領域が必要であり、クラスタサイズが128KBの場合では32クラスタ分の連続空き領域が必要となる。このような場合も、前述と同様に共通空き領域を検出することが可能である。すなわち、CPU710は、第1のメモリカード850では128クラスタ分ずつ検査し、第2のメモリカード860では32クラスタ分ずつ検査し、両者がともに空きクラスタである領域を共通空き領域としてカウントする。CPU710は、この処理を、第1のメモリカード850および第2のメモリカード860のFATテーブルまたはアロケーションビットマップのいずれかの終端に達するまで行えばよい。
【0174】
以上の共通空き領域検出処理で共通の空き領域が見つからなかった場合、CPU710は、同時記録ができない(NG)と判断して検査処理を終了する。共通の空き領域が見つかった場合は、CPU710は同時記録ができる(OK)と判断する。
【0175】
以上が、図10に示したステップS400からステップS430までの検査処理の内容である。これらのステップは、情報記録装置700の内部のCPU710によって実行される。図10に示した検査処理がすべてOKの場合、同時記録が受付可能となる。
【0176】
図11は、本実施形態におけるAVデータの記録方法を表すフローチャートである。図11において、S500はAVデータの記録開始処理を行なうステップを表している。S510はエラー発生時のエラー表示処理を行なうステップを表している。S520はデータを記録する領域である第1のメモリカード850および第2のメモリカード860の共通空き領域を検出するステップを表している。S530はAVデータを記録するステップを表している。S540は記録を継続するか否かの確認を行うステップを表している。S550はAVデータの記録の終了処理を行なうステップを表している。
【0177】
図11のフローチャートに示したAVデータ記録方法について、各ステップの内容を説明する。
【0178】
<記録開始処理>
最初のステップS500では、記録開始に伴い、AVファイルが所定のディレクトリに作成される。
【0179】
本実施形態で同時記録を成立させるための条件の1つは、ステップS500で、第1のメモリカード850および第2のメモリカード860の所定のディレクトリ内に、作成するAVファイルと同じ名前のファイルが存在しないことである。したがって、CPU710は、複数枚モードで第1のメモリカード850および第2のメモリカード860からそれぞれ所定のディレクトリを読み出し、ディレクトリ内に、作成するAVファイルと同じ名前のファイルが存在するか否かを検査する。そして、同じ名前のファイルが存在した場合は同時記録ができない(NG)と判断する。
【0180】
同じ名前のファイルが存在しない場合は、CPU710は同時記録ができる可能性がある(OK)と判断し、複数枚モードで第1のメモリカード850および第2のメモリカード860の所定ディレクトリにそれぞれディレクトリエントリを記録する。なお、ディレクトリエントリにはファイル名、作成日時は記載するが、ファイルサイズ、先頭データの場所は未確定なので“0”としておく。
【0181】
ステップS500でNGと判断した場合、ステップS510に進み、CPU710は、ユーザーに記録が失敗したことを通知し、処理を終了する。なお、ステップS510では、図7には図示されていないLCDモニタにエラーメッセージを表示したり、LEDランプを点滅させたりすることで、ユーザーに記録が失敗したことを通知する。
【0182】
<共通空き領域の検出>
続くステップS520では、記録を継続するために必要な共通空き領域の検出が行われる。共通空き領域の検出方法は、図10におけるステップS430と同様であるため、ここでは説明を省略する。ただし、ステップS520では、CPU710は、記録を継続するために必要な分、例えば1AUサイズ分の共通空き領域を検出できればよく、1AUサイズ分検出できた時点で、記録継続が可能(OK)と判断する。1AUサイズ分の共通空き領域を検出できなかった場合は、CPU710はステップS550に進み、記録終了処理を行う。このとき、CPU710は、エラーが発生したことを示すフラグをメインメモリに保持しておく。
【0183】
<AVデータの記録>
続くステップS530では、AVデータの記録処理が行われる。CPU710は、制御部820の動作モードを1枚モードに切り替えるコマンドを制御部820へ送信し、ステップS520で検出した共通空き領域へデータを記録する。このとき、制御部820へ発行するライトコマンドで指定するアドレスは、データ領域の先頭アドレスを基点としたアドレスである。なお、データ領域の先頭アドレスは、図10のステップS410で取得済みである。ライトコマンドを受信したメモリカードアダプタ800の制御部820は、データを複製し、ライトコマンドで指定されているアドレスに、図10のステップS420で設定された第1のメモリカード850および第2のメモリカード860のデータ開始領域のアドレスをそれぞれ加味し、第1のメモリカード850および第2のメモリカード860へライトコマンドを発行する。このとき、不良ブロックの存在等により第1のメモリカード850および第2のメモリカード860の少なくとも一方でライトコマンドが失敗した場合は、CPU710は、ステップS550に進み、記録終了処理を行う。このとき、CPU710は、エラーが発生したことを示すフラグをメインメモリに保持しておく。ライトコマンドが成功した場合は、CPU710は、制御部820の動作モードを複数枚モードに切り替えるコマンドを制御部820へ送信し、ステップS540に進む。
【0184】
<記録継続の確認>
続くステップS540では、記録が継続されるか、すなわち、ユーザーから記録停止命令がされていないかが確認される。ユーザーからの記録停止命令は、図7には図示されていないスイッチやボタン等により行われる。記録を継続する場合、CPU710は、再度ステップS520に進み、処理を継続する。記録を停止する場合、CPU710はステップS550へ進み記録終了処理を行う。
【0185】
<記録終了処理>
ステップS550では、ステップS500で記録したAVファイルのディレクトリエントリが更新される。すなわち、CPU710は、まず、第1のメモリカード850および第2のメモリカード860におけるAVファイルのディレクトリエントリのファイルサイズにステップS530で記録したAVデータの総サイズを記録する。CPU710は、さらに、先頭データの場所にAVデータの先頭クラスタ番号を記録する。なお、CPU710は、先頭データの場所については、確定した段階で記録してもよく、ファイルサイズについては、ステップS530でAVデータを記録する都度、更新してもよい。また、CPU710は、ディレクトリエントリの記録については、メモリカードアダプタ800の動作モードを複数枚モードにして実行する。CPU710のメインメモリにエラーが発生したことを示すフラグがある場合、CPU710は、ステップS510において、ユーザーに記録が失敗したことを通知し、処理を終了する。
【0186】
以上が、図11に示したステップS500からステップS550までのAVデータ記録処理の内容である。これらのステップは、情報記録装置700の内部のCPU710によって実行される。
【0187】
以上のように、情報記録装置700は、同時記録の機能を持たない装置であったが、本実施形態のメモリカードアダプタ800を装着し、かつ、情報記録装置700のCPU710のソフトウェアを変更することにより、第1のメモリカード850および第2のメモリカード860に同時記録する機能が提供される。特に、本実施形態の処理によれば、仕様、カード容量、パーティションの位置、サイズ、ファイルシステムの種類などが異なる2枚のメモリカード860に同時記録を行うことが可能である。
【0188】
(実施形態4)
次に、本発明の第4の実施形態を説明する。実施形態3では、1枚のメモリカード760に記録を行う情報記録装置700に対し、メモリカードアダプタ800を装着し、情報記録装置700側の制御ソフトウェアを一部変更することにより、メモリカードアダプタ800を用いた同時記録の機能が提供される。本実施形態では、メモリカードアダプタを使用せずに、同時記録の機能を提供することができる。以下、実施形態3と異なる点を中心に説明し、重複する事項についての説明は省略する。
【0189】
図12は、本実施形態に係る情報記録装置600の構成を表すブロック図である。図12に示すように、情報記録装置600は、CPU610と、バス620と、メディア制御部630と、AV信号処理部640と、AV信号入出力部650と、第1のカードインタフェース660と、第2のカードインタフェース670とを含む。情報記録装置600には第1のメモリカード680および第2のメモリカード690が装着される。
【0190】
CPU610、バス620、AV信号処理部640、AV信号入出力部650は、それぞれ、図7に示す情報記録装置700におけるCPU710、バス720、AV信号処理部740、AV信号入出力部750と同様であるため、ここでは説明を省略する。ただし本実施形態においても、CPU610を動作させるためのソフトウェア(プログラム)は、後から変更可能であるとする。また、メディア制御部630、第1のカードインタフェース660、第2のカードインタフェース670は、それぞれ図8に示す制御部820、第1のカードインタフェース830、第2のカードインタフェース840と同様の機能を有している。
【0191】
メディア制御部630は、第1のカードインタフェース660および第2のカードインタフェース670を介して、それぞれ第1のメモリカード680および第2のメモリカード690へのアクセスを制御する。メディア制御部630を動作させるためのソフトウェア(プログラム)も、後から変更が可能である。本実施形態では、メディア制御部630を動作させるためのソフトウェアが、第1のメモリカード680および第2のメモリカード690へ同時記録するための機能を有するように変更されていることを前提とする。
【0192】
映像や音声を第1のメモリカード680および第2のメモリカード690に記録する場合、AV信号入出力部650から入力された映像や音声は、AV信号処理部640で信号処理され、符号化されたディジタルのAVデータとなる。これらのAVデータは、バス620を介して、CPU610によってファイルとして第1のメモリカード680または第2のメモリカード690に記録される。このとき、AVデータが記録されるのは第1のメモリカード680または第2のメモリカード690のどちらか一方である。すなわち、AV信号処理部640からバス620を介してメディア制御部630に至るまでの経路は、AVデータ1本分を通すだけの転送能力しか有しておらず、同時記録のために同時に複数本のAVデータを通す転送能力は有していない。従って、図12に示す情報記録装置600の構成だけでは、バックアップのために複数のメモリカードに同時記録を行うことが困難である。そこで、本実施形態では、CPU610およびメディア制御部630のソフトウェアを変更することによって第1のメモリカード680および第2のメモリカード690に同時に記録する機能を実現する。
【0193】
CPU610は、メディア制御部630にコマンドを送信し、第1のメモリカード680および第2のメモリカード690が2枚とも存在し、アクセス可能であることを確認した後に、第1のメモリカード680および第2のメモリカード690が同時記録可能な条件を満たしているかを検査する。同時記録可能な条件の検査方法について、以下ではフローチャートを用いて説明する。
【0194】
図13は、本実施形態におけるメモリカードの検査方法を表すフローチャートである。図13において、S700はメモリカード性能を検査するステップを表している。S710はメモリカードのフォーマットを検査するステップを表している。S720はデータを記録する領域であるデータ領域のアドレスを設定するステップを表している。S730は第1のメモリカード680および第2のメモリカード690の共通の空き状態を検査するステップを表している。
【0195】
以下、図13のフローチャートに示したカード検査方法について、各ステップの検査内容を説明する。
【0196】
<性能の検査>
最初のステップS700では、CPU610は情報記録装置600に装着された第1のメモリカード680および第2のメモリカード690の性能を検査する。本ステップの具体的な処理内容は、実施形態3におけるステップS400と同様であるため、詳細な説明を省略する。
【0197】
CPU610はメディア制御部630へコマンドを発行し、コマンドを受けたメディア制御部630は、第1のカードインタフェース660を介して第1のメモリカード680にコマンドを転送し、第1のメモリカード680からカード性能を示す数値を取得する。次に、CPU610は、第2のカードインタフェース670を介して第2のメモリカード690にコマンドを転送し、第2のメモリカード690からカード性能を示す数値を取得する。
【0198】
このようにして得られた第1のメモリカード680および第2のメモリカード690それぞれのカード性能値について、両者の値が共に、所定の性能値以上の値であるかが検査される。第1のメモリカード680および第2のメモリカード690それぞれのカード性能値が所定の性能値以上である場合は、CPU610は性能については問題ない(OK)と判断して次のステップへ進む。第1のメモリカード680および第2のメモリカード690の両者またはどちらか一方の性能値が所定の性能値よりも小さい場合は、CPU610は同時記録ができない(NG)と判断して検査処理を終了する。
【0199】
<フォーマットの検査>
次のステップS710では、CPU610は、情報記録装置600に装着された第1のメモリカード680および第2のメモリカード690のフォーマットを検査する。本ステップの具体的な処理については、実施形態3におけるステップS410と同様であるため、詳細な説明を省略する。第1のメモリカード680および第2のメモリカード690のうち、少なくとも1枚のフォーマットが規格に準拠していない場合、CPU610は同時記録ができない(NG)と判断して検査処理を終了する。
【0200】
<データ領域アドレスの設定>
続くステップS720では、データ領域アドレスの登録処理が行われる。データ領域のアドレスは、前述のステップS710で取得したファイルシステムのパラメータから算出する。CPU610はデータ領域を設定するためのコマンドをメディア制御部630へ送信し、第1のメモリカード680および第2のメモリカード690のデータ領域のアドレスをそれぞれ設定する。
【0201】
<共通空き状態の検査>
次にステップS730では、CPU610は、第1のメモリカード680および第2のメモリカード690の共通空き領域を検出する。共通空き領域の検出方法に関しては、実施形態3におけるステップS430と同様であるため説明を省略する。
【0202】
以上が、図13に示したステップS700からステップS730までの検査処理の内容である。これらのステップは、情報記録装置600の内部のCPU610によって実行される。図13に示した検査処理がすべてOKの場合、同時記録が受付可能となる。
【0203】
図14は、本実施形態におけるAVデータの記録方法を表すフローチャートである。図14において、S800はAVデータの記録開始処理を行なうステップを表している。S810はエラー発生時のエラー表示処理を行なうステップを表している。S820はデータを記録するための領域の第1のメモリカード680および第2のメモリカード690の共通空き領域を検出するステップを表している。S830はAVデータを記録するステップを表している。S840は記録を継続するか確認を行うステップを表している。S850はAVデータの記録終了処理を行なうステップを表している。
【0204】
以下、図14のフローチャートに示されたAVデータの記録方法について、各ステップの処理内容を説明する。
【0205】
<記録開始処理>
最初のステップS800では、記録開始に伴い、AVファイルが所定のディレクトリに作成される。CPU610は、複数枚モードで第1のメモリカード680および第2のメモリカード690からそれぞれ所定のディレクトリを読み出す。そして、ディレクトリ内に作成するAVファイルと同じ名前のファイルが存在するかを検査し、同じ名前のファイルが存在した場合は同時記録ができない(NG)と判断する。
【0206】
同じ名前のファイルが存在しない場合は、CPU610は同時記録ができる可能性がある(OK)と判断し、複数枚モードで第1のメモリカード680および第2のメモリカード690の所定ディレクトリにそれぞれディレクトリエントリを記録する。なお、ディレクトリエントリにはファイル名、作成日時は記載されるが、ファイルサイズ、先頭データの場所は未確定なので“0”としておく。
【0207】
ステップS800でNGと判断した場合は、ステップS810に進み、CPU610は、ユーザーに記録が失敗したことを通知し、処理を終了する。なお、ステップS810では、CPU610は、図12には図示されていないLCDモニタにエラーメッセージを表示したり、LEDランプを点滅させたりすることで、ユーザーに記録が失敗したことを通知する。
【0208】
<共通空き領域の検出>
続くステップS820では、記録を継続するために必要な共通空き領域が検出される。共通空き領域の検出方法は、図10におけるステップS430と同様であるため、ここでは説明を省略する。ただし、ステップS820では、CPU610は記録を継続するために必要な分、例えば1AUサイズ分の共通空き領域を検出できればよく、1AUサイズ分検出できた時点で、記録継続がOKと判断する。1AUサイズ分検出できなかった場合は、CPU610はステップS850で記録終了処理を行う。このとき、エラーが発生したことを示すフラグをCPU610はメインメモリに保持しておく。
【0209】
<AVデータの記録>
続くステップS830では、AVデータの記録処理が行われる。CPU610は、メディア制御部630の動作モードを1枚モードに切り替えるコマンドをメディア制御部630へ送信し、ステップS820で検出した共通空き領域へデータを記録する。このとき、メディア制御部630へ発行するライトコマンドで指定するアドレスは、データ領域の先頭アドレスを基点としたアドレスである。なお、データ領域の先頭アドレスは、図13のステップS710で取得済みである。ライトコマンドを受信したメディア制御部630は、データを複製し、ライトコマンドで指定されているアドレスに、図13のステップS720で設定された第1のメモリカード680および第2のメモリカード690のデータ領域のアドレスをそれぞれ加味し、第1のメモリカード680および第2のメモリカード690へライトコマンドを発行する。このとき、不良ブロックの存在等により第1のメモリカード680および第2のメモリカード690の少なくとも一方でライトコマンドが失敗した場合は、CPU610はステップS850に進み、記録終了処理を行う。このとき、CPU610は、エラーが発生したことを示すフラグをメインメモリに保持しておく。ライトコマンドが成功した場合は、CPU610は、メディア制御部630の動作モードを複数枚モードに切り替えるコマンドをメディア制御部630へ送信し、ステップS840に進む。
【0210】
<記録継続の確認>
続くステップS840では、記録が継続されるか、すなわち、ユーザーから記録停止命令がされていないかが確認される。ユーザーからの記録停止命令は、図12には図示されていないスイッチやボタン等により行われる。記録を継続する場合は、CPU610は、再度ステップS820に進み、処理を継続する。記録を停止する場合、CPU610はステップS850へ進み記録終了処理を行う。
【0211】
ステップS850では、ステップS800で記録したAVファイルのディレクトリエントリが更新される。すなわち、CPU610は、まず、第1のメモリカード680および第2のメモリカード690におけるAVファイルのディレクトリエントリのファイルサイズにステップS830で記録したAVデータの総サイズを記録する。CPU610は、さらに、先頭データの場所にAVデータの先頭クラスタ番号を記録する。なお、CPU610は、先頭データの場所については、確定した段階で記録してもよく、ファイルサイズについては、ステップS830でAVデータを記録する都度、更新してもよい。また、CPU610は、ディレクトリエントリの記録については、メディア制御部630の動作モードを複数枚モードにして実行する。CPU610のメインメモリにエラーが発生したことを示すフラグがある場合、CPU610は、ステップS810において、ユーザーに記録が失敗したことを通知し、処理を終了する。
【0212】
以上のように、情報記録装置600は同時記録の機能を持たない装置であったが、上記の処理を行うように、情報記録装置600のCPU610のソフトウェアを変更し、かつメディア制御部630のソフトウェアを変更することにより、第1のメモリカード680および第2のメモリカード690に同時に記録する機能が提供される。
【0213】
実施形態3および実施形態4では、2枚のメモリカードのデータ領域の開始アドレスが、制御部820またはメディア制御部630に設定される。そして、メモリカードアダプタ800またはメディア制御部630の動作モードが1枚モードの場合は、ライトコマンドによって指定されるアドレスは、設定されたデータ領域の開始アドレスを基点とするアドレスである。しかし、本発明は、このような形態に限られない。例えば、2枚のメモリカードのうち1枚をマスタカードとし、マスタカードのデータ領域の開始アドレスと他方のメモリカードのデータ領域の開始アドレスとの差分を制御部820またはメディア制御部630に設定してもよい。この場合、メモリカードアダプタ800またはメディア制御部630の動作モードが1枚モードの場合は、ライトコマンドによってマスタカードに書き込むアドレスが指定される。このとき、ライトコマンドを受信したメモリカードアダプタ800の制御部820またはメディア制御部630は、マスタカードへは指定されたアドレスのままライトコマンドを伝達し、他方のメモリカードへは設定されたデータ領域アドレスの差分を加味してライトコマンドを伝達する。このような方法でも2枚のメモリカードに同時記録することが可能となる。
【0214】
また、上記の実施形態3、4では、同時記録を実行する2枚のメモリカードの一方のデータ管理ブロックのサイズが他方のデータ管理ブロックのサイズの倍数の関係にあることが検査されるが、本発明では、このような関係は必須ではない。仮に2枚のメモリカードの一方のデータ管理ブロックのサイズが他方のデータ管理ブロックのサイズの倍数でない場合でも、両者の公倍数のサイズに相当する共通するオフセットが生じ得る。したがって、図10におけるステップS430または図13におけるステップS730において、2つのメモリカードの管理ブロックのサイズの最小公倍数に相当するサイズを単位として共通空き領域の検査を行ってもよい。
【0215】
なお、実施形態3および実施形態4では、メモリカードアダプタ800およびメディア制御部630の動作モードを複数枚モードから1枚モードへ切り替える例を説明したが、この方法に限らず、複数枚モードのまま同時記録を行なうことも可能である。その場合、情報記録装置700からはメモリカードアダプタ800を介して第1のメモリカード850および第2のメモリカード860が見える状態が維持される。同様に、情報記録装置600からは第1のメモリカード680および第2のメモリカード690が見える状態が維持される。この場合、情報記録装置700または情報記録装置600は、AVデータの記録動作をする際、例えばライトコマンドに複製フラグを付与してメモリカードアダプタ800またはメディア制御部630へそれぞれ発行すればよい。メモリカードアダプタ800の制御部820またはメディア制御部630は、情報記録装置700または情報記録装置600から送られてくるコマンドに複製フラグが付与されている場合、そのコマンドを複製し、装着されている第1のメモリカード850および第2のメモリカード860、または第1のメモリカード680および第2のメモリカード690に対してコマンドを伝達する。このような構成でも第1のメモリカード850および第2のメモリカード860、または第1のメモリカード680および第2のメモリカード690に同時記録することが可能となる。コマンドに複製フラグを付与する代わりに、通常のコマンドとは異なる複製用コマンドを別途用意しても良い。メモリカードアダプタ800の制御部820またはメディア制御部630は、情報記録装置700または情報記録装置600から送られてくるコマンドが複製用コマンドの場合、そのコマンドを複製し、メモリカードアダプタ800の制御部820またはメディア制御部630に装着されている第1のメモリカード850および第2のメモリカード860、または第1のメモリカード680および第2のメモリカード690に対して同時にコマンドを伝達する。このような構成でも第1のメモリカード850および第2のメモリカード860、または第1のメモリカード680および第2のメモリカード690に同時記録することが可能となる。
【0216】
なお、実施形態3におけるメモリカードアダプタ800の規格の具体例としては、PC Card規格、Express Card規格、CompactFlash規格が挙げられる。ここで、PC Card規格(PCカード規格)およびExpress Card規格(エクスプレスカード規格)は、規格団体であるPCMCIA(Personal Computer Memory Card International Association)が規定したメモリカード規格を表す。CompactFlash規格はCFA(CompactFlash Association)が規定したメモリカード規格を表す。
【0217】
また、実施形態3および実施形態4におけるメモリカード850、860、680、690の規格の具体例としては、SDメモリカード規格が挙げられる。なお、SDメモリカード規格にはミニSDメモリカードやマイクロSDメモリカードを含み、また、SDHCカードやSDXCカードも含む。さらに、実施形態4においては、メモリカード680、690の規格の具体例として、PC Card規格、Express Card規格、CompactFlash規格も挙げられる。
【0218】
また、実施形態3および実施形態4における複数のメモリカードは、互いに同じ仕様、規格である必要はない。例えば、第1のメモリカード850、680がSDメモリカード規格で、第2のメモリカード860、690がCompactFlash規格であってもよい。
【0219】
さらに、実施形態3においては、情報記録装置700が、メモリカードではなくUSBメモリやUSBハードディスクを記録媒体として装着する構成も考えられる。この場合、情報記録装置700のカードインタフェース730は、USBインタフェースであってもよい。一方で、メモリカードアダプタ800のホストインタフェース810をUSBインタフェースとすれば、USBインタフェースに装着可能なメモリカードアダプタが実現する。このようなメモリカードアダプタを情報記録装置に装着することにより、複数枚のメモリカードに同時記録することが可能となる。
【0220】
なお、実施形態3および実施形態4では、メモリカードアダプタ800または情報記録装置600に2枚のメモリカードを装着するが、メモリカードアダプタ800または情報記録装置600に装着されるメモリカードは3枚以上であっても良い。この場合、メモリカードアダプタ800または情報記録装置600は、複数枚のメモリカードの内、少なくとも2枚以上のメモリカードに対して、AVデータの同時記録を実行可能である。
【0221】
さらに、実施形態3、4においても、実施形態1、2と同様、どの検査を実施し、どの検査をスキップするかを情報処理装置700、600、または外部機器から設定できるように構成されていてもよい。そのような構成により、検査項目を必要最小限の検査内容に絞ることが可能である。本発明では、各記録媒体の容量、転送性能、ファイルシステムフォーマット、および空き領域の少なくとも1つの情報に基づいて同時記録が可能か否かが判断されていればよい。
【産業上の利用可能性】
【0222】
以上のように、本発明の実施形態にかかるメモリカードアダプタおよび情報記録装置は、複数枚のメモリカードに同一のデータを同時に記録する用途に利用される。
【符号の説明】
【0223】
100、400、600、700 情報記録装置
110、410、610、710 CPU
120、420、620、720 バス
130、430、730 カードインタフェース
140、440、640、740 AV信号処理部
150、450、650、750 AV信号入出力部
160、460、760 メモリカード
200、500、800 メモリカードアダプタ
210、510、810 ホストインタフェース
220、520、820 制御部
230、530、660、830 第1のカードインタフェース
240、540、670、840 第2のカードインタフェース
250、550、680、850 第1のメモリカード
260、560、690、860 第2のメモリカード
300、310 データ領域開始アドレス
320、330 データ管理ブロック
340、350 ファイルデータ記録開始アドレス
360、370 ファイルデータ記録領域
630 メディア制御部

【特許請求の範囲】
【請求項1】
複数の記録媒体を着脱可能な記録媒体アダプタであって、
前記複数の記録媒体を接続するための記録媒体インタフェースと、
外部機器に接続するためのホストインタフェースと、
前記記録媒体インタフェースおよび前記ホストインタフェースに電気的に接続された制御部と、
を備え、
前記制御部は、前記複数の記録媒体から前記記録媒体インタフェースを介して取得した情報に基づいて、前記複数の記録媒体に同一のデータを同時に記録することが可能か否かを判断し、前記複数の記録媒体に同一のデータを同時に記録することが可能と判断した場合に、前記ホストインタフェースを介して受信したデータを、各記録媒体に記録する、
記録媒体アダプタ。
【請求項2】
前記制御部は、各記録媒体の容量、転送性能、ファイルシステムフォーマット、および空き領域の少なくとも1つの情報に基づいて、前記複数の記録媒体に同一のデータを同時に記録することが可能か否かを判断する、請求項1に記載の記録媒体アダプタ。
【請求項3】
前記制御部は、前記複数の記録媒体にデータを書き込むためのライトコマンドを前記ホストインタフェースを介して受信したとき、前記ライトコマンドを複製し、複製した前記ライトコマンドを各記録媒体に送信する、請求項1または2に記載の記録媒体アダプタ。
【請求項4】
前記制御部は、前記複数の記録媒体に記録されたデータを読み出すためのリードコマンドを前記ホストインタフェースを介して受信したとき、前記複数の記録媒体の1つに前記リードコマンドを送信し、前記複数の記録媒体の1つからの応答を、前記ホストインタフェースを介して送信する、請求項1から3のいずれかに記載の記録媒体アダプタ。
【請求項5】
複数の記録媒体を着脱可能な記録媒体アダプタと、前記記録媒体アダプタを着脱可能な情報記録装置とを備える情報記録システムであって、
前記情報記録装置は、
前記記録媒体アダプタを接続するためのアダプタインタフェースと、
前記アダプタインタフェースに電気的に接続された第1の制御部と、
を有し、
前記記録媒体アダプタは、
前記複数の記録媒体を接続するための記録媒体インタフェースと、
前記情報記録装置に接続するためのホストインタフェースと、
前記記録媒体インタフェースおよび前記ホストインタフェースに電気的に接続された第2の制御部と、
を有し、
前記第1の制御部は、前記アダプタインタフェースを介して、前記記録媒体アダプタから取得した前記複数の記録媒体の情報に基づいて、前記複数の記録媒体に同一のデータを同時に記録することが可能か否かを判断し、前記複数の記録媒体に同一のデータを同時に記録することが可能と判断した場合に、前記アダプタインタフェースを介して、データを書き込むためのライトコマンドを前記記録媒体アダプタに送信し、
前記第2の制御部は、前記ホストインタフェースを介して、前記ライトコマンドを受信したとき、前記ライトコマンドを複製し、複製した前記ライトコマンドを前記記録媒体インタフェースを介して各記録媒体に送信する、
情報記録システム。
【請求項6】
前記第1の制御部は、各記録媒体の容量、転送性能、ファイルシステムフォーマット、および空き領域の少なくとも1つの情報に基づいて、前記複数の記録媒体に同一のデータを同時に記録することが可能か否かを判断する、請求項5に記載の情報記録システム。
【請求項7】
前記第2の制御部は、前記ホストインタフェースを介して前記情報記録装置から受信したコマンドを、前記複数の記録媒体の全てに送信する第1のモードと、前記複数の記録媒体の1つに送信する第2のモードとを切り換えることができる、請求項5または6に記載の情報記録システム。
【請求項8】
前記第1の制御部は、各記録媒体のデータ領域の開始アドレスを検出し、検出した各記録媒体の前記開始アドレスを前記記録媒体アダプタに設定した後、前記ライトコマンドを前記記録媒体アダプタに送信し、
前記第2の制御部は、前記ライトコマンドを受信したとき、設定された各記録媒体の前記開始アドレスに基づいて、各記録媒体におけるデータの記録位置を決定する、
請求項5から7のいずれかに記載の情報記録システム。
【請求項9】
前記ライトコマンドは、記録すべきデータの位置を、各記録媒体のデータ領域の開始アドレスを基点とするアドレスによって指定し、
前記第2の制御部は、前記ライトコマンドを受信したとき、前記ライトコマンドによって指定されたアドレスに各記録媒体の前記開始アドレスを加算することによって得られるアドレスに、前記データを記録する、請求項8に記載の情報記録システム。
【請求項10】
前記第1の制御部は、各記録媒体に指示するための第1の種類のコマンドと、前記複数の記録媒体の全体に指示するための第2の種類のコマンドとを送信可能であり、前記第1の種類のコマンドを用いて、各記録媒体のファイル管理情報を取得し、前記第2の種類のコマンドである前記ライトコマンドを用いて、前記複数の記録媒体へデータを同時に記録する、請求項8または9に記載の情報記録システム。
【請求項11】
前記第1の制御部は、前記複数の記録媒体へのデータの同時記録を行う前に、前記第1の種類のコマンドを用いて、各記録媒体の性能を示す情報およびファイル管理情報を取得し、取得した各記録媒体の前記性能を示す情報および前記ファイル管理情報に基づいて、前記複数の記録媒体へのデータの同時記録が可能か否かを判断する、
請求項8から10のいずれかに記載の情報記録システム。
【請求項12】
複数の記録媒体を着脱可能な情報記録装置であって、
前記複数の記録媒体を接続するための記録媒体インタフェースと、
前記複数の記録媒体へデータを同時に記録するためのライトコマンドを発行する第1の制御部と、
前記記録媒体インタフェースおよび前記第1の制御部に電気的に接続された第2の制御部と、
を備え、
前記第1の制御部は、各記録媒体のデータ領域の開始アドレスを検出し、検出した各記録媒体の前記開始アドレスを、前記第2の制御部に設定した後、前記ライトコマンドを前記第2の制御部に送信し、
前記第2の制御部は、前記ライトコマンドを受けたとき、設定された各記録媒体の前記開始アドレスに基づいて、各記録媒体におけるデータの記録位置を決定する、
情報記録装置。
【請求項13】
前記ライトコマンドは、記録すべきデータの位置を、各記録媒体のデータ領域の開始アドレスを基点とするアドレスによって指定し、
前記第2の制御部は、前記ライトコマンドを受信したとき、前記ライトコマンドによって指定されたアドレスに各記録媒体の前記開始アドレスを加算することによって得られるアドレスに、前記データを記録する、請求項12に記載の情報記録装置。
【請求項14】
前記第1の制御部は、各記録媒体に指示するための第1の種類のコマンドと、前記複数の記録媒体の全体に指示するための第2の種類のコマンドとを送信可能であり、前記第1の種類のコマンドを用いて、各記録媒体のファイル管理情報を取得し、前記第2の種類のコマンドである前記ライトコマンドを用いて、前記複数の記録媒体へデータを同時に記録する、請求項12または13に記載の情報記録装置。
【請求項15】
前記第1の制御部は、前記複数の記録媒体へのデータの同時記録を行う前に、前記第1の種類のコマンドを用いて、各記録媒体の性能を示す情報およびファイル管理情報を取得し、取得した各記録媒体の前記性能を示す情報および前記ファイル管理情報に基づいて、前記複数の記録媒体へのデータの同時記録が可能か否かを判断する、
請求項12から14のいずれかに記載の情報記録装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate


【公開番号】特開2012−186787(P2012−186787A)
【公開日】平成24年9月27日(2012.9.27)
【国際特許分類】
【出願番号】特願2011−245841(P2011−245841)
【出願日】平成23年11月9日(2011.11.9)
【出願人】(000005821)パナソニック株式会社 (73,050)
【Fターム(参考)】