(57)【要約】【課題】不揮発性メモリを用いたメモリカードにリアルタイムに動画が記録される場合や、複数のデータ記録が並行して要求される場合のデータ記録速度を保証することを目的とする。【解決手段】情報記録装置２１において、物理特性情報格納部２７に、不揮発性メモリ２６に対するアクセス保証速度の情報を含む不揮発性メモリ２６の物理的な特性を示す情報を格納する。速度保証情報格納部２８には、１つ以上の各アクセスを識別する識別子、各アクセスが要求する保証速度、及び各アクセスの実施状況を示す情報を含む各アクセスの速度保証に関する情報を格納する。さらに、速度保証制御部２４は、各アクセスに対する実施可否判定を行なう。【選択図】図１
2008176455.tif 000002
【特許請求の範囲】
【請求項１】
データを格納する不揮発性メモリと、
前記不揮発性メモリに対するアクセス保証速度の情報を含む、前記不揮発性メモリの物理的な特性を示す情報を格納する物理特性情報格納部と、
外部のアクセス装置からの要求に従い、前記不揮発性メモリに対して１つ以上のアクセスを並行して実施する場合において、前記１つ以上の各アクセスを識別する識別子、前記１つ以上の各アクセスが要求する保証速度、及び前記１つ以上の各アクセスの実施状況を示す情報を含む、前記１つ以上の各アクセスの速度保証に関する情報を格納する速度保証情報格納部と、
前記物理特性情報格納部と、前記速度保証情報格納部に格納された情報に基づき、前記１つ以上のアクセスに対する実施可否判定を行う速度保証制御部と、を具備することを特徴とする情報記録装置。
【請求項２】
前記情報記録装置は、
前記物理特性情報格納部に格納された情報に基づき、アクセス速度を保証するために必要な連続領域を確保し、ファイルデータを記録するファイルシステム制御部を更に備えることを特徴とする請求項１記載の情報記録装置。
【請求項３】
前記速度保証制御部は、
前記外部のアクセス装置から発行される前記不揮発性メモリに対する１つ以上のアクセス開始要求を受け付け、
前記アクセス開始要求時に前記外部のアクセス装置が指定した要求速度の情報と、
複数の所定単位処理数からなる所定連続領域アクセス処理内において、前記要求速度を満たすために必要となる単位処理数の情報と、を前記１つ以上のアクセス開始要求毎に前記速度保証情報格納部に格納して、各々をセッションとして管理することを特徴とする請求項１記載の情報記録装置。
【請求項４】
前記速度保証制御部は、
前記外部のアクセス装置から発行される前記不揮発性メモリに対する１つ以上のセッションに対するアクセス実行要求を受け付け、
前記速度保証情報格納部に格納した情報に基づき前記セッション毎に現在の最大待ち可能単位処理数を管理し、前記最大待ち可能単位処理数が最も少ないセッションに対するアクセス実行要求であった場合のみ、前記不揮発性メモリに対するアクセス実行要求を許可することを特徴とする請求項３記載の情報記録装置。
【請求項５】
前記速度保証制御部は、
前記速度保証情報格納部に格納した情報に基づき前記セッション毎に現在の最大待ち可能単位処理数を管理し、前記最大待ち可能単位処理数が最も少ないセッションを決定し、前記決定したセッションのアクセス実行要求を前記外部のアクセス装置に発行することを特徴とする請求項３記載の情報記録装置。
【請求項６】
前記速度保証制御部は、
前記外部のアクセス装置から発行される、前記不揮発性メモリへアクセス可能なセッションの識別子取得要求を受け付け、
前記速度保証情報格納部に格納した情報に基づき前記セッション毎に現在の最大待ち可能単位処理数を管理し、前記最大待ち可能単位処理数が最も少ないセッションを決定し、前記識別子取得要求の応答として前記決定したセッションの識別子を前記外部のアクセス装置に通知することを特徴とする請求項３記載の情報記録装置。
【請求項７】
前記情報記録装置は、
一定周期毎に刻まれるクロックをカウントし、現在のクロックカウント値を保持するクロック管理部を更に備え、
前記速度保証制御部は、
前記外部のアクセス装置から発行される前記不揮発性メモリに対する１つ以上のアクセス開始要求を受け付け、前記アクセス開始要求時に前記外部のアクセス装置が指定した要求速度の情報と、当該アクセスに対して次にアクセスが可能となるタイミングを示す情報とを前記速度保証情報格納部に格納して各々をセッションとして管理し、
前記外部のアクセス装置から発行される前記不揮発性メモリに対する１つ以上のセッションに対するアクセス実行要求を受け付け、前記速度保証情報格納部に格納した情報に基づき前記セッションに対して次にアクセスが可能となるタイミングを示す情報と、現在のクロックカウント値とを比較し、現在のクロックカウント値の方が大きければ前記セッションに対するアクセス実行要求を許可することを特徴とする請求項１記載の情報記録装置。
【請求項８】
データを格納する不揮発性メモリを具備した情報記録装置を管理するコントローラであって、
前記情報記録装置は、
前記不揮発性メモリに対するアクセス保証速度の情報を含む、前記不揮発性メモリの物理的な特性を示す情報を格納する物理特性情報格納部と、
外部のアクセス装置からの要求に従い、前記不揮発性メモリに対して１つ以上のアクセスを並行して実施する場合において、前記１つ以上の各アクセスを識別する識別子、前記１つ以上の各アクセスが要求する保証速度、及び前記１つ以上の各アクセスの実施状況を示す情報を含む、前記１つ以上の各アクセスの速度保証に関する情報を格納する速度保証情報格納部と、を具備し、
前記コントローラは、
前記物理特性情報格納部と、前記速度保証情報格納部に格納された情報に基づき、前記１つ以上のアクセスに対する実施可否判定を行う速度保証制御部を具備することを特徴とするコントローラ。
【請求項９】
前記コントローラは、
前記物理特性情報格納部に格納された情報に基づき、アクセス速度を保証するために必要な連続領域を確保し、ファイルデータを記録するファイルシステム制御部を更に備えることを特徴とする請求項８記載のコントローラ。
【請求項１０】
前記速度保証制御部は、
前記外部のアクセス装置から発行される前記不揮発性メモリに対する１つ以上のアクセス開始要求を受け付け、
前記アクセス開始要求時に前記外部のアクセス装置が指定した要求速度の情報と、
複数の所定単位処理数からなる所定連続領域アクセス処理内において、前記要求速度を満たすために必要となる単位処理数の情報と、
を前記１つ以上のアクセス開始要求毎に前記速度保証情報格納部に格納して、各々をセッションとして管理することを特徴とする請求項８記載のコントローラ。
【請求項１１】
前記速度保証制御部は、
前記外部のアクセス装置から発行される前記不揮発性メモリに対する１つ以上のセッションに対するアクセス実行要求を受け付け、
前記速度保証情報格納部に格納した情報に基づき前記セッション毎に現在の最大待ち可能単位処理数を管理し、前記最大待ち可能単位処理数が最も少ないセッションに対するアクセス実行要求であった場合のみ、前記不揮発性メモリに対するアクセス実行要求を許可することを特徴とする請求項１０記載のコントローラ。
【請求項１２】
前記速度保証制御部は、
前記速度保証情報格納部に格納した情報に基づき前記セッション毎に現在の最大待ち可能単位処理数を管理し、前記最大待ち可能単位処理数が最も少ないセッションを決定し、前記決定したセッションのアクセス実行要求を前記外部のアクセス装置に発行することを特徴とする請求項１０記載のコントローラ。
【請求項１３】
前記速度保証制御部は、
前記外部のアクセス装置から発行される、前記不揮発性メモリへアクセス可能なセッションの識別子取得要求を受け付け、
前記速度保証情報格納部に格納した情報に基づき前記セッション毎に現在の最大待ち可能単位処理数を管理し、前記最大待ち可能単位処理数が最も少ないセッションを決定し、前記識別子取得要求の応答として前記決定したセッションの識別子を前記外部のアクセス装置に通知することを特徴とする請求項１０記載のコントローラ。
【請求項１４】
前記情報記録装置は、
一定周期毎に刻まれるクロックをカウントし、現在のクロックカウント値を保持するクロック管理部を更に備え、
前記速度保証制御部は、
前記外部のアクセス装置から発行される前記不揮発性メモリに対する１つ以上のアクセス開始要求を受け付け、前記アクセス開始要求時に前記外部のアクセス装置が指定した要求速度の情報と、当該アクセスに対して次にアクセスが可能となるタイミングを示す情報とを前記速度保証情報格納部に格納して各々をセッションとして管理し、
前記外部のアクセス装置から発行される前記不揮発性メモリに対する１つ以上のセッションに対するアクセス実行要求を受け付け、前記速度保証情報格納部に格納した情報に基づき前記セッションに対して次にアクセスが可能となるタイミングを示す情報と、現在のクロックカウント値とを比較し、現在のクロックカウント値の方が大きければ前記セッションに対するアクセス実行要求を許可することを特徴とする請求項８記載のコントローラ。
【請求項１５】
データを格納する不揮発性メモリを具備した情報記録装置にアクセスするアクセス装置であって、
前記不揮発性メモリに対する１つ以上のアクセス開始要求をアクセス時に必要とする要求速度の情報を含めて前記情報記録装置に発行して、各々のアクセス開始要求に対応するアクセスをセッションとして管理し、
前記セッションに対するアクセス実行要求を前記情報記録装置に発行し、
前記アクセス実行要求に対して前記情報記録装置が実施した実施可否判定の結果を受信し、
実施可能と判定された場合は当該セッションに対するアクセスを実施し、
実施不可能と判定された場合は異なるセッションに対するアクセス実行要求を再度前記情報記録装置に対して発行する情報記録装置アクセス部を具備することを特徴とするアクセス装置。
【請求項１６】
データを格納する不揮発性メモリを具備した情報記録装置にアクセスするアクセス装置であって、
前記不揮発性メモリに対する１つ以上のアクセス開始要求をアクセス時に必要とする要求速度の情報を含めて前記情報記録装置に発行して、各々のアクセス開始要求に対応するアクセスをセッションとして管理し、
前記情報記録装置が決定した、前記各セッションのアクセス速度を保証するために現時点で最もアクセスに対する優先度が高いセッションに対するアクセス実行要求を前記情報記録装置から受信し、
当該セッションに対するアクセスを実施する情報記録装置アクセス部を具備することを特徴とするアクセス装置。
【請求項１７】
データを格納する不揮発性メモリを具備した情報記録装置にアクセスするアクセス装置であって、
前記不揮発性メモリに対する１つ以上のアクセス開始要求をアクセス時に必要とする要求速度の情報を含めて前記情報記録装置に発行して、各々のアクセス開始要求に対応するアクセスをセッションとして管理し、
前記情報記録装置に対して、前記不揮発性メモリへアクセス可能なセッションの識別子取得要求を発行し、
前記情報記録装置が決定した、前記各セッションのアクセス速度を保証するために現時点で最もアクセスに対する優先度が高いセッションの識別子を前記情報記録装置から受信し、
前記識別子に対応するセッションへのアクセスを実施する情報記録装置アクセス部を具備することを特徴とするアクセス装置。
【請求項１８】
データを格納する不揮発性メモリを具備した情報記録装置と、前記情報記録装置にアクセスするアクセス装置からなるアクセス速度保証システムであって、
前記情報記録装置は、
データを格納する不揮発性メモリと、
前記不揮発性メモリに対するアクセス保証速度の情報を含む、前記不揮発性メモリの物理的な特性を示す情報を格納する物理特性情報格納部と、
前記アクセス装置からの要求に従い、前記不揮発性メモリに対して１つ以上のアクセスを並行して実施する場合において、前記１つ以上の各アクセスを識別する識別子と、前記１つ以上の各アクセスが要求する保証速度と、前記１つ以上の各アクセスの実施状況を示す情報を含む、前記１つ以上の各アクセスの速度保証に関する情報を格納する速度保証情報格納部と、
前記物理特性情報格納部と、前記速度保証情報格納部に格納された情報に基づき、前記１つ以上のアクセスに対する実施可否判定を行う速度保証制御部と、
を具備し、
前記アクセス装置は、
前記不揮発性メモリに対する１つ以上のアクセス開始要求をアクセス時に必要とする要求速度の情報を含めて前記情報記録装置に発行して、各々のアクセス開始要求に対応するアクセスをセッションとして管理し、
前記セッションに対するアクセス実行要求を前記情報記録装置に発行し、
前記アクセス実行要求に対して前記情報記録装置が実施した実施可否判定の結果を受信し、
実施可能と判定された場合は当該セッションに対するアクセスを実施し、
実施不可能と判定された場合は異なるセッションに対するアクセス実行要求を再度前記情報記録装置に対して発行する情報記録装置アクセス部、を具備することを特徴とするアクセス速度保証システム。
【請求項１９】
データを格納する不揮発性メモリを具備した情報記録装置と、前記情報記録装置にアクセスするアクセス装置からなるアクセス速度保証システムであって、
前記情報記録装置は、
データを格納する不揮発性メモリと、
前記不揮発性メモリに対するアクセス保証速度の情報を含む、前記不揮発性メモリの物理的な特性を示す情報を格納する物理特性情報格納部と、
前記アクセス装置からの要求に従い、前記不揮発性メモリに対して１つ以上のアクセスを並行して実施する場合において、前記１つ以上の各アクセスを識別する識別子と、前記１つ以上の各アクセスが要求する保証速度と、前記１つ以上の各アクセスの実施状況を示す情報を含む、前記１つ以上の各アクセスの速度保証に関する情報を格納する速度保証情報格納部と、
前記物理特性情報格納部と、前記速度保証情報格納部に格納された情報に基づき、前記１つ以上のアクセスに対する実施可否判定を行う速度保証制御部と、
を具備し、
前記アクセス装置は、
前記不揮発性メモリに対する１つ以上のアクセス開始要求をアクセス時に必要とする要求速度の情報を含めて前記情報記録装置に発行して、各々のアクセス開始要求に対応するアクセスをセッションとして管理し、
前記情報記録装置が決定した、前記各セッションのアクセス速度を保証するために現時点で最もアクセスに対する優先度が高いセッションに対するアクセス実行要求を前記情報記録装置から受信し、
当該セッションに対するアクセスを実施する情報記録装置アクセス部、を具備することを特徴とするアクセス速度保証システム。
【請求項２０】
データを格納する不揮発性メモリを具備した情報記録装置と、前記情報記録装置にアクセスするアクセス装置からなるアクセス速度保証システムであって、
前記情報記録装置は、
データを格納する不揮発性メモリと、
前記不揮発性メモリに対するアクセス保証速度の情報を含む、前記不揮発性メモリの物理的な特性を示す情報を格納する物理特性情報格納部と、
前記アクセス装置からの要求に従い、前記不揮発性メモリに対して１つ以上のアクセスを並行して実施する場合において、前記１つ以上の各アクセスを識別する識別子と、前記１つ以上の各アクセスが要求する保証速度と、前記１つ以上の各アクセスの実施状況を示す情報を含む、前記１つ以上の各アクセスの速度保証に関する情報を格納する速度保証情報格納部と、
前記物理特性情報格納部と、前記速度保証情報格納部に格納された情報に基づき、前記１つ以上のアクセスに対する実施可否判定を行う速度保証制御部と、
を具備し、
前記アクセス装置は、
前記不揮発性メモリに対する１つ以上のアクセス開始要求をアクセス時に必要とする要求速度の情報を含めて前記情報記録装置に発行して、各々のアクセス開始要求に対応するアクセスをセッションとして管理し、
前記情報記録装置に対して、前記不揮発性メモリへアクセス可能なセッションの識別子取得要求を発行し、
前記情報記録装置が決定した、前記各セッションのアクセス速度を保証するために現時点で最もアクセスに対する優先度が高いセッションの識別子を前記情報記録装置から受信し、
前記識別子に対応するセッションへのアクセスを実施する情報記録装置アクセス部、を具備することを特徴とするアクセス速度保証システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報記録装置と、情報記録装置にアクセスするアクセス装置との組み合わせにおいて、情報記録装置へのアクセス速度を保証する情報記録装置、コントローラ、アクセス装置、及びアクセス速度保証システムに関する。
【背景技術】
【０００２】
音楽コンテンツや、映像データなどのデジタルデータを記録する記録媒体には、磁気ディスク、光ディスク、光磁気ディスクなど、様々な種類が存在する。これら記録媒体の１種類である半導体メモリカードは、記録媒体の小型化が図れることから、デジタルスチルカメラや携帯電話端末など、小型の携帯機器を中心に急速に普及しつつある。
【０００３】
半導体メモリカードでは、記録素子としてＮＡＮＤ型フラッシュメモリと呼ばれる半導体素子が主に使用されている。ＮＡＮＤ型フラッシュメモリは、データ書き込みに先立ち一旦データを消去する必要があり、この消去処理は消去ブロックと呼ばれるブロック単位でしか行えないことから、消去ブロック単位での書き込みが最速となるという特徴を持つ。
【０００４】
近年、ＮＡＮＤ型フラッシュメモリは消去ブロックサイズの拡大、多値化などにより、大容量化が進んでおり、メモリカードも年々倍化する勢いで大容量化が進んでいる。そのため、メモリカードの用途も従来のオーディオや静止画の格納用途から、高画質動画の記録メディアとしての用途に広がりつつある。ムービー機器等で動画をリアルタイム記録する場合、撮影中に記録速度が低下してバッファがオーバーフローし、撮影が停止してしまう等の問題を回避するため、記録速度を保証する仕組みが必要となる。更に、動画撮影中に静止画を同時記録する等の用途では、複数のデータ記録に対して同時に記録速度を保証する仕組みが必要となる。
【０００５】
従来、複数のデータ記録に対して同時に記録速度を保証する仕組みとして、実時間を一定のスパン毎に分割し、各スパンを特定のアクセス主体に割り当てることにより、そのスパン内に発生する記録処理を特定のアクセス主体が占有し、記録速度を保証する方法が開示されている（例えば、特許文献１参照）。
【特許文献１】特開平５−２０４８１５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記の従来技術には次のような問題点がある。従来の方法では、実時間を分割した各スパンが特定のアクセス主体に占有されるため、例えスパン内に空き時間が発生しても他のアクセス主体に処理が割り当てられず、実効的な記録速度が低下する。
【０００７】
本発明では上記問題点に鑑み、情報記録装置に対して複数のアクセスを並行して実施する場合において、各データアクセスに対して同時にアクセス速度を保証しつつ、効率的なアクセス処理を実施できることを特徴とする、情報記録装置、コントローラ、アクセス装置、及びアクセス速度保証システムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の情報記録装置は、データを格納する不揮発性メモリと、前記不揮発性メモリに対するアクセス保証速度の情報を含む前記不揮発性メモリの物理的な特性を示す情報を格納する物理特性情報格納部と、外部のアクセス装置からの要求に従い前記不揮発性メモリに対して１つ以上のアクセスを並行して実施する場合において前記１つ以上の各アクセスを識別する識別子と、前記１つ以上の各アクセスが要求する保証速度と、前記１つ以上の各アクセスの実施状況を示す情報を含む前記１つ以上の各アクセスの速度保証に関する情報を格納する速度保証情報格納部と、前記物理特性情報格納部と前記速度保証情報格納部に格納された情報に基づき前記１つ以上のアクセスに対する実施可否判定を行う速度保証制御部とを具備することを特徴とする。
【０００９】
また、前記情報記録装置に、前記物理特性情報格納部に格納された情報に基づきアクセス速度を保証するために必要な連続領域を確保し、ファイルデータを記録するファイルシステム制御部を更に備えるようにすると好ましい。
【００１０】
また、前記速度保証制御部は、前記外部のアクセス装置から発行される前記不揮発性メモリに対する１つ以上のアクセス開始要求を受け付け、前記アクセス開始要求時に前記外部のアクセス装置が指定した要求速度の情報と、複数の所定単位処理数からなる所定連続領域アクセス処理内において、前記要求速度を満たすために必要となる単位処理数の情報とを前記１つ以上のアクセス開始要求毎に前記速度保証情報格納部に格納して、各々をセッションとして管理するようにしても良い。
【００１１】
また、前記速度保証制御部は、前記外部のアクセス装置から発行される前記不揮発性メモリに対する１つ以上のセッションに対するアクセス実行要求を受け付け、前記速度保証情報格納部に格納した情報に基づき前記セッション毎に現在の最大待ち可能単位処理数を管理し、前記最大待ち可能単位処理数が最も少ないセッションに対するアクセス実行要求であった場合のみ、前記不揮発性メモリに対するアクセス実行要求を許可するようにしても良い。
【００１２】
また、前記速度保証制御部は、前記速度保証情報格納部に格納した情報に基づき前記セッション毎に現在の最大待ち可能単位処理数を管理し、前記最大待ち可能単位処理数が最も少ないセッションを決定し、前記決定したセッションのアクセス実行要求を前記外部のアクセス装置に発行するようにしても良い。
【００１３】
また、前記速度保証制御部は、前記外部のアクセス装置から発行される、前記不揮発性メモリへアクセス可能なセッションの識別子取得要求を受け付け、前記速度保証情報格納部に格納した情報に基づき前記セッション毎に現在の最大待ち可能単位処理数を管理し、前記最大待ち可能単位処理数が最も少ないセッションを決定し、前記識別子取得要求の応答として前記決定したセッションの識別子を前記外部のアクセス装置に通知するようにしても良い。
【００１４】
また、前記情報記録装置は、一定周期毎に刻まれるクロックをカウントし、現在のクロックカウント値を保持するクロック管理部を更に備え、前記速度保証制御部は、前記外部のアクセス装置から発行される前記不揮発性メモリに対する１つ以上のアクセス開始要求を受け付け、前記アクセス開始要求時に前記外部のアクセス装置が指定した要求速度の情報と、当該アクセスに対して次にアクセスが可能となるタイミングを示す情報とを前記速度保証情報格納部に格納して各々をセッションとして管理し、前記外部のアクセス装置から発行される前記不揮発性メモリに対する１つ以上のセッションに対するアクセス実行要求を受け付け、前記速度保証情報格納部に格納した情報に基づき前記セッションに対して次にアクセスが可能となるタイミングを示す情報と、現在のクロックカウント値とを比較し、現在のクロックカウント値の方が大きければ前記セッションに対するアクセス実行要求を許可するようにしても良い。
【００１５】
本発明のコントローラは、データを格納する不揮発性メモリを具備した情報記録装置を管理するコントローラであって、前記情報記録装置は前記不揮発性メモリに対するアクセス保証速度の情報を含む前記不揮発性メモリの物理的な特性を示す情報を格納する物理特性情報格納部と、外部のアクセス装置からの要求に従い前記不揮発性メモリに対して１つ以上のアクセスを並行して実施する場合において前記１つ以上の各アクセスを識別する識別子と、前記１つ以上の各アクセスが要求する保証速度と、前記１つ以上の各アクセスの実施状況を示す情報を含む前記１つ以上の各アクセスの速度保証に関する情報を格納する速度保証情報格納部とを具備し、前記コントローラは前記物理特性情報格納部と、前記速度保証情報格納部に格納された情報に基づき、前記１つ以上のアクセスに対する実施可否判定を行う速度保証制御部を具備することを特徴とする。
【００１６】
本発明のアクセス装置は、データを格納する不揮発性メモリを具備した情報記録装置にアクセスするアクセス装置であって、前記不揮発性メモリに対する１つ以上のアクセス開始要求をアクセス時に必要とする要求速度の情報を含めて前記情報記録装置に発行して、各々のアクセス開始要求に対応するアクセスをセッションとして管理し、前記セッションに対するアクセス実行要求を前記情報記録装置に発行し、前記アクセス実行要求に対して前記情報記録装置が実施した実施可否判定の結果を受信し、実施可能と判定された場合は当該セッションに対するアクセスを実施し、実施不可能と判定された場合は異なるセッションに対するアクセス実行要求を再度前記情報記録装置に対して発行する情報記録装置アクセス部を具備することを特徴とする。
【００１７】
また、本発明の別のアクセス装置は、データを格納する不揮発性メモリを具備した情報記録装置にアクセスするアクセス装置であって、前記不揮発性メモリに対する１つ以上のアクセス開始要求をアクセス時に必要とする要求速度の情報を含めて前記情報記録装置に発行して、各々のアクセス開始要求に対応するアクセスをセッションとして管理し、前記情報記録装置が決定した、前記各セッションのアクセス速度を保証するために現時点で最もアクセスに対する優先度が高いセッションに対するアクセス実行要求を前記情報記録装置から受信し、当該セッションに対するアクセスを実施する情報記録装置アクセス部を具備することを特徴とする。
【００１８】
また、本発明の別のアクセス装置は、データを格納する不揮発性メモリを具備した情報記録装置にアクセスするアクセス装置であって、前記不揮発性メモリに対する１つ以上のアクセス開始要求をアクセス時に必要とする要求速度の情報を含めて前記情報記録装置に発行して、各々のアクセス開始要求に対応するアクセスをセッションとして管理し、前記情報記録装置に対して、前記不揮発性メモリへアクセス可能なセッションの識別子取得要求を発行し、前記情報記録装置が決定した、前記各セッションのアクセス速度を保証するために現時点で最もアクセスに対する優先度が高いセッションの識別子を前記情報記録装置から受信し、前記識別子に対応するセッションへのアクセスを実施する情報記録装置アクセス部を具備することを特徴とする。
【００１９】
本発明のアクセス速度保証システムは、データを格納する不揮発性メモリを具備した情報記録装置と、前記情報記録装置にアクセスするアクセス装置からなるアクセス速度保証システムであって、前記情報記録装置は、データを格納する不揮発性メモリと、前記不揮発性メモリに対するアクセス保証速度の情報を含む前記不揮発性メモリの物理的な特性を示す情報を格納する物理特性情報格納部と、前記アクセス装置からの要求に従い前記不揮発性メモリに対して１つ以上のアクセスを並行して実施する場合において前記１つ以上の各アクセスを識別する識別子と、前記１つ以上の各アクセスが要求する保証速度と、前記１つ以上の各アクセスの実施状況を示す情報を含む前記１つ以上の各アクセスの速度保証に関する情報を格納する速度保証情報格納部と、前記物理特性情報格納部と前記速度保証情報格納部に格納された情報に基づき前記１つ以上のアクセスに対する実施可否判定を行う速度保証制御部とを具備し、前記アクセス装置は、前記不揮発性メモリに対する１つ以上のアクセス開始要求をアクセス時に必要とする要求速度の情報を含めて前記情報記録装置に発行して、各々のアクセス開始要求に対応するアクセスをセッションとして管理し、前記セッションに対するアクセス実行要求を前記情報記録装置に発行し、前記アクセス実行要求に対して前記情報記録装置が実施した実施可否判定の結果を受信し、実施可能と判定された場合は当該セッションに対するアクセスを実施し、実施不可能と判定された場合は異なるセッションに対するアクセス実行要求を再度前記情報記録装置に対して発行する情報記録装置アクセス部を具備することを特徴とする。
【００２０】
また、本発明の別のアクセス速度保証システムは、データを格納する不揮発性メモリを具備した情報記録装置と、前記情報記録装置にアクセスするアクセス装置からなるアクセス速度保証システムであって、前記情報記録装置は、データを格納する不揮発性メモリと、前記不揮発性メモリに対するアクセス保証速度の情報を含む前記不揮発性メモリの物理的な特性を示す情報を格納する物理特性情報格納部と、前記アクセス装置からの要求に従い前記不揮発性メモリに対して１つ以上のアクセスを並行して実施する場合において前記１つ以上の各アクセスを識別する識別子と、前記１つ以上の各アクセスが要求する保証速度と、前記１つ以上の各アクセスの実施状況を示す情報を含む前記１つ以上の各アクセスの速度保証に関する情報を格納する速度保証情報格納部と、前記物理特性情報格納部と前記速度保証情報格納部に格納された情報に基づき前記１つ以上のアクセスに対する実施可否判定を行う速度保証制御部とを具備し、前記アクセス装置は、前記不揮発性メモリに対する１つ以上のアクセス開始要求をアクセス時に必要とする要求速度の情報を含めて前記情報記録装置に発行して、各々のアクセス開始要求に対応するアクセスをセッションとして管理し、前記情報記録装置が決定した、前記各セッションのアクセス速度を保証するために現時点で最もアクセスに対する優先度が高いセッションに対するアクセス実行要求を前記情報記録装置から受信し、当該セッションに対するアクセスを実施する情報記録装置アクセス部を具備することを特徴とする。
【００２１】
また、本発明の別のアクセス速度保証システムは、データを格納する不揮発性メモリを具備した情報記録装置と、前記情報記録装置にアクセスするアクセス装置からなるアクセス速度保証システムであって、前記情報記録装置は、データを格納する不揮発性メモリと、前記不揮発性メモリに対するアクセス保証速度の情報を含む前記不揮発性メモリの物理的な特性を示す情報を格納する物理特性情報格納部と、前記アクセス装置からの要求に従い前記不揮発性メモリに対して１つ以上のアクセスを並行して実施する場合において前記１つ以上の各アクセスを識別する識別子と、前記１つ以上の各アクセスが要求する保証速度と、前記１つ以上の各アクセスの実施状況を示す情報を含む前記１つ以上の各アクセスの速度保証に関する情報を格納する速度保証情報格納部と、前記物理特性情報格納部と前記速度保証情報格納部に格納された情報に基づき前記１つ以上のアクセスに対する実施可否判定を行う速度保証制御部とを具備し、前記アクセス装置は、前記不揮発性メモリに対する１つ以上のアクセス開始要求をアクセス時に必要とする要求速度の情報を含めて前記情報記録装置に発行して、各々のアクセス開始要求に対応するアクセスをセッションとして管理し、前記情報記録装置に対して、前記不揮発性メモリへアクセス可能なセッションの識別子取得要求を発行し、前記情報記録装置が決定した、前記各セッションのアクセス速度を保証するために現時点で最もアクセスに対する優先度が高いセッションの識別子を前記情報記録装置から受信し、前記識別子に対応するセッションへのアクセスを実施する情報記録装置アクセス部を具備することを特徴とする。
【発明の効果】
【００２２】
本発明によれば、情報記録装置に対して複数のアクセスを並行して実施する場合において、各データアクセスに対して同時にアクセス速度を保証しつつ、効率的なアクセス処理を実施することが可能となる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の情報記録装置、コントローラ、アクセス装置、及びアクセス速度保証システムについて、図面を参照しつつ説明する。
（実施の形態１）
図１は本発明の実施の形態１におけるアクセス装置、情報記録装置の構成図である。図１において情報記録装置２１は複数の外部のアクセス装置１１、１２、及び１３に接続されている。各アクセス装置１１、１２、及び１３は、情報記録装置アクセス部１４を含み、情報記録装置２１へのアクセスを行う。本実施の形態１におけるアクセス装置１１、１２、及び１３は、情報記録装置２１に対するデータの読み書き処理において速度保証を実現するため、情報記録装置２１との間でアクセス可否に関する情報を送受信する。情報記録装置アクセス部は、この情報の送受信を実施する制御部であり、従来のアクセス装置には存在しないものである。
【００２４】
また、図１において情報記録装置２１はデータを格納する記録媒体である不揮発性メモリ２６を含み、更にアクセス装置１１、１２、及び１３とコマンドやデータを送受信するインタフェースであるホストインタフェース部２２、データをファイルとして管理するファイルシステム制御部２３、複数のアクセス装置１１、１２、及び１３から不揮発性メモリ２６への同時アクセスに対して速度保証を実現するための処理を行う速度保証制御部２４、不揮発性メモリ２６を制御する不揮発性メモリ制御部２５、不揮発性メモリ２６の容量や領域管理単位などの情報記録装置２１の物理的な特性を格納する物理特性情報格納部２７、速度保証に関する情報を格納する速度保証情報格納部２８を含む。本実施の形態１における情報記録装置２１は、速度保証情報格納部２８に格納した情報を元に速度保証制御部２４が、複数のアクセス装置１１、１２、及び１３からのアクセス処理を制御することにより、不揮発性メモリ２６へのアクセス速度を保証する。また、情報記録装置２１内にファイルシステム制御部２３を設け、アクセス速度を保証するために必要な連続領域の確保を行う。本発明の実施の形態におけるアクセス装置１１、１２、及び１３と情報記録装置２１は、これらの仕組みにより、アクセス速度の保証と、効率的なアクセス処理を両立させることを特徴とする。
【００２５】
本実施の形態１におけるアクセス装置１１、１２、及び１３、情報記録装置２１の詳細を説明する前に、情報記録装置２１に含まれる不揮発性メモリ２６について、図２を用いて説明する。図２は不揮発性メモリ２６の構成例を示した図である。ここでは不揮発性メモリ２６としてＮＡＮＤ型フラッシュメモリの場合を想定して説明する。ＮＡＮＤ型フラッシュメモリは２ＫＢ程度のページと呼ばれる管理単位毎にデータを書き込むことが可能であるが、既に書き込まれたデータを上書きする場合は、１６ＫＢ程度の消去ブロック単位で一旦データを消去した後、データをページ単位で書き込む必要がある。そのため、情報記録装置２１内部の不揮発性メモリ制御部２５により、不揮発性メモリ２６はこの消去ブロック単位（消去ブロック０＿０、消去ブロック０＿１など）で管理されている。また、ハードディスクやフレキシブルディスクなど、既存のメディアとの互換性を取り易くするため、５１２バイトなどのセクタと呼ばれる単位で領域を管理しており、アクセス装置１１、１２、及び１３からの読み書きは、このセクタ単位で実施できるようにしている。図２では、物理セクタ番号（ＰＳＮ）で管理される各セクタが３２個集まって１６ＫＢの消去ブロックを構成している例を示している。また、情報記録装置２１では複数の不揮発性メモリ２６を使用して並列に記録することにより記録速度を向上させる場合がある。図２では、２枚の不揮発性メモリ２６を使用する例を示している。更に、このように複数枚の不揮発性メモリ２６を使用する場合、複数個の消去ブロックに並列に記録できるよう、複数個の消去ブロックを集めて１つの論理ブロックとして管理する方法がある。図２では、２つの論理ブロックを１つの論理ブロックとして管理する例を示している。このような場合、論理ブロック単位でアクセス装置１１、１２、及び１３からデータを記録すれば、不揮発性メモリ２６に対して高速にデータを記録することが可能となる。本実施の形態１では、記録単位としてこの論理ブロック単位での記録を実施する例について説明する。
【００２６】
次に、従来のアクセス装置と情報記録装置におけるデータ記録手順を図３から図５を用いて説明する。図３はアクセス装置側におけるデータ記録手順を示した図であり、以下の手順によりデータを記録する。
【００２７】
（Ｓ３０１）アクセス装置が情報記録装置に対して、Ｗｒｉｔｅ（Ｓｉｚｅ、Ａｄｄｒ）のような形式のＷｒｉｔｅコマンドを発行する。Ｓｉｚｅでは書き込みデータサイズを指定し、Ａｄｄｒでは書き込み先のアドレスを指定する。
【００２８】
（Ｓ３０２）Ｓ３０１で発行したＷｒｉｔｅコマンドのレスポンスを情報記録装置から受信し、Ｗｒｉｔｅコマンドが正常に受け付けられたか判定する。
【００２９】
（Ｓ３０３）Ｓ３０２の判定の結果、正常に受け付けられなかったと判定した場合、エラーが発生したため処理を終了する。
【００３０】
（Ｓ３０４）Ｓ３０２の判定の結果、正常に受け付けられたと判定した場合、書き込みデータを情報記録装置に送信する。
【００３１】
（Ｓ３０５）情報記録装置は送信されたデータを不揮発性メモリに書き込んでいる間ビジー信号をアクセス装置に送信し続けるため、このビジー信号が解除されるまでアクセス装置は待機する。
【００３２】
（Ｓ３０６）ビジー信号が解除された後、全ての記録が終了したか判定する。まだ書き込みデータが残っている場合は、Ｓ３０１の処理に戻り、再度Ｗｒｉｔｅコマンド送信から処理を繰り返す。また全ての記録が終了した場合、処理を終了する。
【００３３】
また同様に情報記録装置側は、図４に記載した以下の手順によりデータを記録する。
【００３４】
（Ｓ４０１）アクセス装置が情報記録装置に対して発行した、Ｗｒｉｔｅコマンドを受信する。Ｗｒｉｔｅコマンドは図３で説明したように、Ｗｒｉｔｅ（Ｓｉｚｅ、Ａｄｄｒ）のような形式であるものとする。
【００３５】
（Ｓ４０２）次にＳ４０１で受信したＷｒｉｔｅコマンドの引数が正しいか判定する。
【００３６】
（Ｓ４０３）Ｓｉｚｅが不揮発性メモリの全容量よりも大きい場合や、Ａｄｄｒが存在しないアドレスを示していた場合等、引数が異常であると判定した場合は、エラーレスポンスをアクセス装置に送信して処理を終了する。
【００３７】
（Ｓ４０４）Ｓ４０２の判定処理において引数が正しいと判定した場合は、正常にＷｒｉｔｅコマンドを受け付けた旨を示す正常なレスポンスをアクセス装置に送信する。
【００３８】
（Ｓ４０５）次にアクセス装置から書き込みデータを受信する。
【００３９】
（Ｓ４０６）Ｓ４０５で受信したデータを記録している最中であることを示すビジー信号の送信を開始する。
【００４０】
（Ｓ４０７）Ｓ４０５で受信したデータを不揮発性メモリに記録する。
【００４１】
（Ｓ４０８）Ｓ４０７の記録処理が終了した後、ビジー信号の送信を終了し、処理を終了する。アクセス装置はビジー信号の送信終了により、データ記録が終了したことを把握する。
【００４２】
図３のアクセス装置側の処理、図４の情報記録装置側の処理を時系列に並べたシーケンス例を図５に示す。このように従来のアクセス装置と情報記録装置におけるデータ記録手順では、アクセス装置が発行するＷｒｉｔｅコマンドに対して情報記録装置側が同期的にデータ記録処理を行う。この際、複数のデータ記録が並行して実施されるような場合においても、情報記録装置はどのアクセス装置から発行されたＷｒｉｔｅコマンドであるかを意識することなく、Ｗｒｉｔｅコマンドの指示通りにデータを記録する。そのため、一方のアクセス装置が頻繁にＷｒｉｔｅコマンドを発行した場合、他方のアクセス装置が発行するＷｒｉｔｅコマンドが受け付けられず、速度が保証できない場合が生じる。
【００４３】
この問題に対しては前述したように、実時間を一定のスパン毎に分割して管理する方法が提案されているが、各スパンが特定のアクセス主体に占有されるため、実効的な記録速度が低下するという問題が生じる。本発明は上記問題を解決し、情報記録装置に対して複数のアクセスを並行して実施する場合において、各データアクセスに対して同時にアクセス速度を保証しつつ、効率的なアクセス処理を実現する方法を提案するものである。
【００４４】
続いて、本実施の形態１のアクセス装置１１、１２、及び１３と情報記録装置２１におけるデータ記録手順を図６から図９を用いて説明する。図６はアクセス装置１１、１２、及び１３側におけるデータ記録手順を示した図であり、以下の手順によりデータを記録する。
【００４５】
（Ｓ６０１）アクセス装置１１、１２、及び１３が情報記録装置２１に対して、ＯｐｅｎＳｅｓｓｉｏｎ（Ｎａｍｅ、Ｓｐｅｅｄ）のような形式でセッション確立用のＯｐｅｎＳｅｓｓｉｏｎコマンドを発行する。Ｎａｍｅでは記録しようとしているファイルの名称等のセッションを識別するための情報を指定し、Ｓｐｅｅｄでは必要とする速度保証値を指定する。
【００４６】
（Ｓ６０２）Ｓ６０１で発行したＯｐｅｎＳｅｓｓｉｏｎコマンドのレスポンスを情報記録装置２１から受信し、ＯｐｅｎＳｅｓｓｉｏｎコマンドが正常に受け付けられたか判定する。またこのレスポンスで、Ｓ６０１で発行したＯｐｅｎＳｅｓｓｉｏｎコマンドにより確立したセッションに付与されたＩＤであるＳｅｓｓｉｏｎＩＤを取得する。
【００４７】
（Ｓ６０３）Ｓ６０２の判定の結果、正常に受け付けられなかったと判定した場合、エラーが発生したため処理を終了する。
【００４８】
（Ｓ６０４）Ｓ６０２の判定の結果、正常に受け付けられたと判定した場合、情報記録装置２１に対してＷｒｉｔｅＳｔｒｅａｍ（ＳｅｓｓｉｏｎＩＤ）のような形式のＷｒｉｔｅＳｔｒｅａｍコマンドを発行する。ＳｅｓｓｉｏｎＩＤではＳ６０２において受信したＯｐｅｎＳｅｓｓｉｏｎコマンドのレスポンスから取得したＳｅｓｓｉｏｎＩＤを指定する。
【００４９】
（Ｓ６０５）Ｓ６０４で発行したＷｒｉｔｅＳｔｒｅａｍコマンドのレスポンスを情報記録装置２１から受信し、ＷｒｉｔｅＳｔｒｅａｍコマンドが正常に受け付けられたか判定する。
【００５０】
（Ｓ６０６）Ｓ６０５の判定の結果、正常に受け付けられなかったと判定した場合、別のセッションの書き込みに変更し、Ｓ６０４から処理を継続する。例えば、ＳｅｓｓｉｏｎＩＤ＝Ａ、ＳｅｓｓｉｏｎＩＤ＝Ｂの２つのセッションを同時に確立している場合に、ＳｅｓｓｉｏｎＩＤ＝Ａを指定して発行したＷｒｉｔｅＳｔｒｅａｍコマンドが失敗した場合、ＳｅｓｓｉｏｎＩＤ＝Ｂを指定して再度ＷｒｉｔｅＳｔｒｅａｍコマンドを発行し直す。図６のフローでは記載していないが、現在確立している全てのセッションに対してＷｒｉｔｅＳｔｒｅａｍコマンドに失敗した場合、何らかの原因によりエラーが発生しているため、エラー終了するものとする。
【００５１】
（Ｓ６０７）Ｓ６０５の判定の結果、正常に受け付けられたと判定した場合、書き込みデータを情報記録装置２１に送信する。
【００５２】
（Ｓ６０８）情報記録装置２１は送信されたデータを不揮発性メモリ２６に書き込んでいる間ビジー信号をアクセス装置１１、１２、及び１３に送信し続けるため、このビジー信号が解除されるまでアクセス装置１１、１２、及び１３は待機する。
【００５３】
（Ｓ６０９）ビジー信号が解除された後、全ての記録が終了したか判定する。まだ書き込みデータが残っている場合は、Ｓ６０４の処理に戻り、再度ＷｒｉｔｅＳｔｒｅａｍコマンド送信から処理を繰り返す。また全ての記録が終了した場合、処理を終了する。
【００５４】
次に情報記録装置２１側のデータ記録処理を、図７、図８を用いて説明する。図７は情報記録装置２１がＯｐｅｎＳｅｓｓｉｏｎコマンドを受信した場合の処理手順を示し、図８は情報記録装置２１がＷｒｉｔｅＳｔｒｅａｍコマンドを受信した場合の処理手順を示している。まず始めに図７のＯｐｅｎＳｅｓｓｉｏｎコマンド受信時の処理手順について説明する。
【００５５】
（Ｓ７０１）アクセス装置１１、１２、及び１３が情報記録装置２１に対して発行した、ＯｐｅｎＳｅｓｓｉｏｎコマンドを受信する。ＯｐｅｎＳｅｓｓｉｏｎコマンドは図６で説明したように、ＯｐｅｎＳｅｓｓｉｏｎ（Ｎａｍｅ、Ｓｐｅｅｄ）のような形式であるものとする。
【００５６】
（Ｓ７０２）次にＳ７０１で受信したＯｐｅｎＳｅｓｓｉｏｎコマンドの引数が正しいか判定する。
【００５７】
（Ｓ７０３）Ｎａｍｅに識別不能な名称が指定されていた場合等、引数が異常であると判定した場合、エラーレスポンスをアクセス装置１１、１２、及び１３に送信して処理を終了する。
【００５８】
（Ｓ７０４）引数が正常であると判定した場合、次にＳ７０１で受信したＯｐｅｎＳｅｓｓｉｏｎコマンドで指定されたＳｐｅｅｄの引数を確認し、保証可能な速度値であるか否かを元に、セッションの確立可否を判定する。保証不可能であると判定した場合は、エラーレスポンスをアクセス装置１１、１２、及び１３に送信して処理を終了する。
【００５９】
（Ｓ７０５）Ｓ７０４の判定処理において保証可能であると判定した場合は、セッション情報を速度保証情報格納部２８に登録する。セッション情報の詳細については後述する。
【００６０】
（Ｓ７０６）次に、正常にＯｐｅｎＳｅｓｓｉｏｎコマンドを受け付けた旨を示す正常なレスポンスをアクセス装置１１、１２、及び１３に送信し、処理を終了する。
【００６１】
続いて、図８のＷｒｉｔｅＳｔｒｅａｍコマンド受信時の処理手順について説明する。
【００６２】
（Ｓ８０１）アクセス装置１１、１２、及び１３が情報記録装置２１に対して発行した、ＷｒｉｔｅＳｔｒｅａｍコマンドを受信する。ＷｒｉｔｅＳｔｒｅａｍコマンドは図６で説明したように、ＷｒｉｔｅＳｔｒｅａｍ（ＳｅｓｓｉｏｎＩＤ）のような形式であるものとする。
【００６３】
（Ｓ８０２）次にＳ８０１で受信したＷｒｉｔｅＳｔｒｅａｍコマンドの引数が正しいか判定する。
【００６４】
（Ｓ８０３）ＳｅｓｓｉｏｎＩＤに識別不能なＩＤが指定されていた場合等、引数が異常であると判定した場合、エラーレスポンスをアクセス装置１１、１２、及び１３に送信して処理を終了する。
【００６５】
（Ｓ８０４）引数が正常であると判定した場合、次にＳ８０１で受信したＷｒｉｔｅＳｔｒｅａｍコマンドで指定されたＳｅｓｓｉｏｎＩＤの引数を確認し、速度保証情報格納部２８に格納されている情報を元に、指定されたＳｅｓｓｉｏｎＩＤに対応するセッションに記録を許可するか否かを判定する。記録不可と判定した場合は、エラーレスポンスをアクセス装置１１、１２、及び１３に送信して処理を終了する。また、速度保証情報格納部２８に格納されている情報や、記録可否判定の詳細については後述する。
【００６６】
（Ｓ８０５）Ｓ８０４の判定処理において記録可能と判定した場合は、正常にＷｒｉｔｅＳｔｒｅａｍコマンドを受け付けた旨を示す正常なレスポンスをアクセス装置１１、１２、及び１３に送信する。
【００６７】
（Ｓ８０６）次にアクセス装置１１、１２、及び１３から書き込みデータを受信する。
【００６８】
（Ｓ８０７）Ｓ８０６で受信したデータを記録している最中であることを示すビジー信号の送信を開始する。
【００６９】
（Ｓ８０８）Ｓ８０６で受信したデータを不揮発性メモリ２６に記録する。この際、ファイルシステム制御部２３が、記録速度を保証するために必要となる連続領域を確保した上で、その領域にデータを記録する。
【００７０】
（Ｓ８０９）Ｓ８０８の記録処理が終了した後、速度保証情報格納部２８に格納された情報を更新する。この更新処理の詳細については後述する。
【００７１】
（Ｓ８１０）最後に、ビジー信号の送信を終了し、処理を終了する。アクセス装置１１、１２、及び１３はビジー信号の送信終了により、データ記録が終了したことを把握する。
【００７２】
図６のアクセス装置側の処理、図７、図８の情報記録装置側の処理を時系列に並べたシーケンス例を図９に示す。図９の例では、“ＡＡＡ．ｍｏｄ”と“ＢＢＢ．ｍｏｄ”という名称を持つ２つのセッションを同時に実施する場合を想定している。最初に各セッションに対するＯｐｅｎＳｅｓｓｉｏｎコマンドを発行し、それぞれＡ、ＢというＳｅｓｓｉｏｎＩＤを得る。その後、ＳｅｓｓｉｏｎＩＤ＝Ａを指定してＷｒｉｔｅＳｔｒｅａｍコマンドを発行し、Ｄａｔａ１を記録する。続いて再度ＳｅｓｓｉｏｎＩＤ＝Ａを指定してＷｒｉｔｅＳｔｒｅａｍコマンドを発行した所、情報記録装置２１におけるＳ８０４の記録可否判定により「記録不可」と判定され、アクセス装置１１、１２、及び１３は「記録不可」のレスポンスを受信する。そこでアクセス装置１１、１２、及び１３は、次にＳｅｓｓｉｏｎＩＤ＝Ｂを指定してＷｒｉｔｅＳｔｒｅａｍコマンドを発行することにより、異なるセッションの記録処理に切り替える。異なるセッションへの切り替えは、例えば複数のアクセス装置からＷｒｉｔｅＳｔｒｅａｍコマンドを共通のＦＩＦＯ型のメモリに蓄積し、順次ＷｒｉｔｅＳｔｒｅａｍコマンドを情報記録装置２１に発行するようにして、ＷｒｉｔｅＳｔｒｅａｍコマンドが失敗した場合にはＦＩＦＯ型のメモリの先頭から最も近い位置に存在している異なるＳｅｓｓｉｏｎＩＤを持つＷｒｉｔｅＳｔｒｅａｍコマンドを使用する等により実現することが可能である。このようにしてセッションを切り替えることで発行されたＳｅｓｓｉｏｎＩＤ＝Ｂに対するＷｒｉｔｅＳｔｒｅａｍコマンドは正常に受け付けられ、Ｄａｔａ２が記録される。
【００７３】
このように情報記録装置２１がＳ８０４の処理により、書き込み要求のあったセッションに対する記録可否を判定し、必要に応じて記録を拒否することで、複数のデータ記録が並行して実施された場合においても、特定のデータ記録にのみ処理が集中して他方のデータ記録に対する速度保証が行えない状態を回避することが可能となる。
【００７４】
続いて、速度保証情報格納部２８と、Ｓ８０４の記録可否判定処理の詳細について、図１０を用いて説明する。図１０では物理特性情報格納部２７に格納される情報である物理特性情報１０１、速度保証情報格納部２８に格納される速度保証情報であるセッション情報１０２と優先度決定テーブル１０３を示している。物理特性情報１０１は、情報記録装置２１の物理的な特性を示す情報であり、情報記録装置２１が保証可能な最大の速度である最大保証速度、情報記録装置２１が不揮発性メモリ２６を管理している論理的な領域単位である論理ブロックサイズ、速度保証を実現するために必要となる最小の記録単位等の情報が含まれる。図１０の例では、最大保証速度が１６ＭＢ／ｓ、論理ブロックサイズが５１２ＫＢ、記録単位が３２ＫＢの場合を示している。すなわち、この情報記録装置２１は、最大で１６ＭＢ／ｓのアクセス速度を保証することが可能であり、速度保証時にはファイルシステム制御部２３が５１２ＫＢの連続領域長を確保してデータを記録する必要があり、またアクセス装置１１、１２、及び１３からの最小のデータ記録単位は３２ＫＢであることを意味する。このように、物理特性情報１０１は、情報記録装置２１内のファイルシステム制御部２３、並びに速度保証制御部２４が速度保証を実現する際のパラメータとして使用される。
【００７５】
一方、セッション情報１０２は、速度保証を実現する際にアクセス装置１１、１２、及び１３と確立する複数のセッションに関する情報であり、ＯｐｅｎＳｅｓｓｉｏｎコマンドが発行された際に、そのセッションに関する情報が登録される。各セッションにおけるアクセスは物理特性情報１０１に格納された記録単位毎に実施され、各記録単位に対応する記録処理を“スロット”と呼び管理する。すなわち１つのスロットに対応する処理は、１つの記録単位分のデータ記録処理に相当する。セッション情報１０２は、セッションを識別するＩＤであるＳｅｓｓｉｏｎＩＤ、各セッションが必要とする要求速度、その要求速度を保証するために必要となる１つの論理ブロック内の必要処理スロット数及び最大待ち可能スロット数等の情報を含む。情報の登録は、次の手順で行われる。（１）ＯｐｅｎＳｅｓｓｉｏｎコマンドが発行された際に引数Ｓｐｅｅｄで指定された値を要求速度として登録する。（２）物理特性情報１０１と、要求速度の値を元に論理ブロック内の必要処理スロット数を算出する。例えば、最大保証速度が１６ＭＢ／ｓ、論理ブロックサイズが５１２ＫＢ、記録単位が３２ＫＢ、要求速度が２ＭＢ／ｓの場合、１つの論理ブロックサイズに含まれる記録単位の数は１６となる。この１６個のスロット全てを使用してデータを記録した場合に１６ＭＢ／ｓの速度が保証できることから、２ＭＢ／ｓを保証する場合は、１６個のスロットの内２個のスロットを使用してデータを記録すれば良いことになる。そのため、論理ブロック内の必要処理スロット数は“２”と算出される。（３）論理ブロック内の必要処理スロット数から論理ブロック内の最大待ち可能スロット数を算出する。上記の例の場合、１６スロットの内２個のスロットを用いてデータを記録することから、残り１４個のスロットに対してはデータ記録を行わず記録処理を待機していても良いことになる。すなわち、論理ブロック内の最大待ち可能スロット数は“１４”と算出される。（４）最後にセッションを識別するためのＩＤであるＳｅｓｓｉｏｎＩＤを付与する。例えばＳｅｓｓｉｏｎＩＤとして“Ａ”を付与する。図１０では上記の説明で示したセッションの例を含む、合計２つのセッションが登録された状態を示している。
【００７６】
次に優先度決定テーブル１０３について説明する。優先度決定テーブル１０３は、セッション情報１０２を元に現在確立されている各セッションの優先度を管理し、どのセッションに対して記録を許可するかを判定する処理に使用される。優先度決定テーブル１０３は、各セッションの現在の処理スロット数、各セッションの現在の最大待ち可能スロット数、判定結果としてどのセッションに記録を許可したかを示す記録実行セッションの情報を含む。以下、図１０を用いて優先度決定テーブルの使用方法について説明する。
【００７７】
優先度決定テーブルは、スロット番号毎に管理されており、各スロット番号は記録単位毎の記録処理を時系列に並べたものに対応している。すなわち、アクセス装置１１、１２、及び１３からの最初の記録単位（３２ＫＢ）の記録処理はスロット番号１に対応し、引き続く次の記録単位の記録処理はスロット番号２に対応する。このように本発明の実施の形態の情報記録装置２１は、アクセス装置１１、１２、及び１３からの記録処理を記録単位毎の処理として優先度を管理している。
【００７８】
スロット番号１の部分は優先度決定テーブルの初期状態を示しており、ＳｅｓｓｉｏｎＩＤ＝Ａのセッション（以下セッションＡ）、ＳｅｓｓｉｏｎＩＤ＝Ｂのセッション（以下セッションＢ）のそれぞれに対する処理スロット数は“０”が設定される。また、セッションＡ、セッションＢのそれぞれに対する最大待ち可能スロット数は、セッション情報１０２を元に“１４”、“８”が設定される。この状態で、スロット番号１の記録処理でいずれのセッションに対する記録を許可するかは、最大待ち可能スロット数を比較して数値の小さい方のセッションを選択することで実施する。すなわち、セッションＡ、セッションＢの最大待ち可能スロット数を比較すると“１４”と“８”であり、セッションＢの方が小さいことから、セッションＢを記録可能セッションとして選択する。よって、スロット番号１の記録実行セッションの欄には“Ｂ”が設定され、Ｓ８０４の処理においてセッションＢに対するＷｒｉｔｅＳｔｒｅａｍコマンドを受信した場合に限り、書き込みを許可する。
【００７９】
次に、スロット番号２の欄ではスロット番号１でセッションＢの記録が実施されたためセッションＢの処理スロット数は１加算され“１”に変化する。セッションＡの処理スロット数は“０”のままである。また、セッションＡは記録されなかったためスロット番号１の期間“待ち”状態にあり、スロット番号２のセッションＡの最大待ち可能スロット数は１減算され“１３”に変化する。セッションＢの最大待ち可能スロット数は“８”のままである。この状態で先と同様にセッションＡ、セッションＢの最大待ち可能スロット数を比較し、値の小さいセッションＢを記録可能セッションと判定する。
【００８０】
以下同様の処理を繰り返し、最大待ち可能スロット数が小さいセッションを記録可能セッションと判定し、順次データ記録を実施する。また、スロット番号７のようにセッションＡ、セッションＢの最大待ち可能スロット数が同数になった場合は、先に確立されたセッションを優先する等のルールに従い、いずれか一方のセッションを選択する。図１０の例では、セッションＡを優先的に選択する場合を示している。
【００８１】
更に、各セッションに対する処理スロット数が論理ブロック内の必要処理スロット数に達した場合、処理スロット数を“０”に、最大待ち可能スロット数を論理ブロック内の最大待ち可能スロット数に初期化する。例えば図１０の例ではスロット番号１０の箇所でセッションＡの処理スロット数が論理ブロック内の必要処理スロット数である“２”に達しており、この時点でセッションＡの処理スロット数を“０”に、最大待ち可能スロット数を“１４”に初期化する。同様にスロット番号１１の時点においてセッションＢの各値を初期化する。
【００８２】
このように本実施の形態１における情報記録装置２１は、物理特性情報１０１と、速度保証情報（セッション情報１０２、優先度決定テーブル１０３）を元に、各セッションのアクセス可否を判定する。これにより、複数のデータアクセスが並行して実施された場合においても、一方のデータアクセスにのみ処理が集中し、他方のデータアクセスの速度保証が行えなくなるといった問題を回避することが可能となる。更に、図１０で説明した優先度決定テーブル１０３の管理により、各スロットで優先度の高いセッションを一意に決定するため、各処理スロットが“待ち”の状態になることなく、各セッションに対するデータアクセスを実施することができ、効率的にデータアクセスを実施することが可能である。また、情報記録装置２１内部にファイルシステム制御部２３を含むことで、論理ブロックサイズを意識した連続領域の割り当てを情報記録装置２１が行うため、アクセス装置１１、１２、及び１３は速度保証時に必要となる連続領域の配置を管理する必要がなく、アクセス装置１１、１２、及び１３の負担を軽減することが可能となる。
【００８３】
尚、本発明を上記の実施の形態に基づいて説明してきたが、本発明は上記の実施の形態に限定されないのは勿論である。本発明の趣旨を逸脱しない範囲で実施変更することができる。本実施の形態１で使用した数値は一例であり、その他の値を使用しても良い。例えば、図１０において最大保証速度を１６ＭＢ／ｓ、論理ブロックサイズを５１２ＫＢ、記録単位を３２ＫＢとして説明したが、その他の値に本発明を適用しても良い。
【００８４】
また、物理特性情報格納部２７、速度保証情報格納部２８に格納する情報は、本実施の形態１における記録可否判定が行えるものであれば、図１０で説明した情報以外の形式を取っても良い。例えば優先度決定テーブル１０３はスロット番号毎に情報を保持するテーブル上の形式を取る場合について説明したが、時系列で最新のスロット番号に関する情報のみ保持していれば記録可否判定が実施できるため、処理スロット数や最大待ち可能スロット数、記録実行セッションに関する情報として１つのスロット番号に対応する情報のみを保持する形式としても良い。
【００８５】
また、本実施の形態１ではファイルシステム制御部２３を情報記録装置２１内に含む構成について説明したが、従来のアクセス装置同様、アクセス装置１１、１２、及び１３側に含ませる構成としても良い。この場合、速度保証に必要となる連続領域長の確保をアクセス装置１１、１２、及び１３側が実施することになる。
【００８６】
また、不揮発性メモリ２６としてＮＡＮＤ型フラッシュメモリを使用する例について説明したが、ＦｅＲＡＭやＮＯＲ型フラッシュメモリ等、その他の記録素子を使用しても良く、枚数についても１枚以上の任意の枚数で構成しても良い。
【００８７】
また、情報記録装置２１に対して複数のアクセス装置１１、１２、及び１３から並列にアクセスする場合について説明したが、１つのアクセス装置であっても複数のアクセスを並列に実施する場合に本発明を適用しても良い。例えば、ムービー機器において動画を記録しつつ、任意のタイミングで静止画も記録する等の用途において本発明を適用しても良い。
【００８８】
また、情報記録装置２１に対するアクセスとしてデータ記録処理を例に説明したが、データ再生処理に関しても同様の手順によりアクセス処理の優先度を管理して、速度保証を実現する構成としても良い。
【００８９】
（実施の形態２）
図１１から図１３は、本発明の実施の形態２のアクセス装置１１、１２、及び１３、情報記録装置２１におけるデータ記録手順を示した図である。本実施の形態２におけるアクセス装置１１、１２、及び１３、情報記録装置２１の構成は図１に示した構成と同じである。また、物理特性情報格納部２７、速度保証情報格納部２８に格納する情報や、各セッションに対する記録可否判定処理も図１０に示したものと同じである。本実施の形態２が、先の実施の形態１と異なる点は、アクセス装置１１、１２、及び１３と情報記録装置２１との間のデータ記録処理手順が異なる点である。以下、このデータ記録処理手順について、図１１から図１３を用いて説明する。
【００９０】
図１１はアクセス装置１１、１２、及び１３側におけるデータ記録手順を示した図であり、以下の手順によりデータを記録する。
【００９１】
（Ｓ１１０１）アクセス装置１１、１２、及び１３が情報記録装置２１に対して、ＯｐｅｎＳｅｓｓｉｏｎ（Ｎａｍｅ、Ｓｐｅｅｄ）のような形式でセッション確立用のＯｐｅｎＳｅｓｓｉｏｎコマンドを発行する。Ｎａｍｅでは記録しようとしているファイルの名称等のセッションを識別するための情報を指定し、Ｓｐｅｅｄでは必要とする速度保証値を指定する。
【００９２】
（Ｓ１１０２）Ｓ１１０１で発行したＯｐｅｎＳｅｓｓｉｏｎコマンドのレスポンスを情報記録装置２１から受信し、ＯｐｅｎＳｅｓｓｉｏｎコマンドが正常に受け付けられたか判定する。またこのレスポンスで、Ｓ１１０１で発行したＯｐｅｎＳｅｓｓｉｏｎコマンドにより確立したセッションに付与されたＩＤであるＳｅｓｓｉｏｎＩＤを取得する。
【００９３】
（Ｓ１１０３）Ｓ１１０２の判定の結果、正常に受け付けられなかったと判定した場合、エラーが発生したため処理を終了する。
【００９４】
（Ｓ１１０４）Ｓ１１０２の判定の結果、正常に受け付けられたと判定した場合、情報記録装置２１から発行されるコマンドを待つ。暫くの後、アクセス装置１１、１２、及び１３は情報記録装置２１から発行されたＲｅｑｕｅｓｔＤａｔａ（ＳｅｓｓｉｏｎＩＤ）のような形式のＲｅｑｕｅｓｔＤａｔａコマンドを受信する。
【００９５】
（Ｓ１１０５）Ｓ１１０４で受信したＲｅｑｕｅｓｔＤａｔａコマンドの引数をチェックする。引数ＳｅｓｓｉｏｎＩＤに識別不能なＩＤが指定されていた場合等、引数が異常であると判定した場合は、エラーレスポンスを情報記録装置２１に送信して処理を終了する。
【００９６】
（Ｓ１１０６）Ｓ１１０５の判定の結果、正常なＳｅｓｓｉｏｎＩＤが指定されていた場合、指定されたＳｅｓｓｉｏｎＩＤに対応するセッションの書き込みデータを情報記録装置２１に送信する。
【００９７】
（Ｓ１１０７）情報記録装置２１は送信されたデータを不揮発性メモリ２６に書き込んでいる間ビジー信号をアクセス装置１１、１２、及び１３に送信し続けるため、このビジー信号が解除されるまでアクセス装置１１、１２、及び１３は待機する。
【００９８】
（Ｓ１１０８）ビジー信号が解除された後、全ての記録が終了したか判定する。まだ書き込みデータが残っている場合は、Ｓ１１０４の処理に戻り、再度ＲｅｑｕｅｓｔＤａｔａコマンドの受信から処理を繰り返す。また全ての記録が終了した場合、処理を終了する。
【００９９】
次に情報記録装置２１側のデータ記録処理を、図１２を用いて説明する。情報記録装置２１がＯｐｅｎＳｅｓｓｉｏｎコマンドを受信した場合の処理手順は、実施の形態１において図７を用いて説明した処理と同じであるため、説明を割愛する。ここでは、図１２を用いて、情報記録装置２１がＲｅｑｕｅｓｔＤａｔａコマンドを送信する場合の処理手順について説明する。
【０１００】
（Ｓ１２０１）速度保証情報格納部２８に格納されている情報を元に、最も優先度の高いセッションのＳｅｓｓｉｏｎＩＤを決定する。優先度の決定は実施の形態１同様、図１０で示す優先度決定テーブル１０３に基づき、最大待ち可能スロット数の最も少ないセッションを優先度の高いセッションと決定する。
【０１０１】
（Ｓ１２０２）Ｓ１２０１で決定したＳｅｓｓｉｏｎＩＤを引数として、アクセス装置１１、１２、及び１３に対してＲｅｑｕｅｓｔＤａｔａ（ＳｅｓｓｉｏｎＩＤ）のような形式のＲｅｑｕｅｓｔＤａｔａコマンドを発行する。
【０１０２】
（Ｓ１２０３）Ｓ１２０２で発行したＲｅｑｕｅｓｔＤａｔａコマンドに対するレスポンスとしてアクセス装置１１、１２、及び１３から書き込みデータを受信する。書き込みデータの受信に成功した場合、Ｓ１２０７の処理に進む。書き込みデータの受信に失敗した場合、Ｓ１２０４の処理に進む。
【０１０３】
（Ｓ１２０４）書き込みデータの受信に失敗した場合、データ記録処理を終了するか判定する。この判定は、Ｓ１２０２で発行したＲｅｑｕｅｓｔＤａｔａコマンドのレスポンスとしてアクセス装置１１、１２、及び１３が返してきた情報を元に、アクセス装置１１、１２、及び１３が指定セッションのデータ記録を終了する意思があるか否かを判定することで実施される。具体的には、レスポンスの付加情報において“記録終了”を意味するビットが立っているか否かで判定することが可能である。
【０１０４】
（Ｓ１２０５）データ記録処理を終了すると判定した場合、正常に処理を終了する。
【０１０５】
（Ｓ１２０６）データ記録処理を終了しないと判定した場合、何らかの原因により書き込みデータの取得に失敗したため、エラーが発生したと判断し、エラー終了する。
【０１０６】
（Ｓ１２０７）Ｓ１２０３で受信したデータを記録している最中であることを示すビジー信号の送信を開始する。
【０１０７】
（Ｓ１２０８）Ｓ１２０３で受信したデータを不揮発性メモリ２６に記録する。この際、ファイルシステム制御部２３が、記録速度を保証するために必要となる連続領域を確保した上で、その領域にデータを記録する。
【０１０８】
（Ｓ１２０９）Ｓ１２０８の記録処理が終了した後、速度保証情報格納部２８に格納された情報を更新する。この更新処理は実施の形態１で説明した処理と同様の処理であるため詳細な説明は割愛する。
【０１０９】
（Ｓ１２１０）Ｓ１２０９の更新処理が完了した後、ビジー信号の送信を終了し、Ｓ１２０１に戻り処理を継続する。
【０１１０】
図１１のアクセス装置側の処理、図１２の情報記録装置側の処理を時系列に並べたシーケンス例を図１３に示す。図１３の例では、“ＡＡＡ．ｍｏｄ”と“ＢＢＢ．ｍｏｄ”という名称を持つ２つのセッション（以降、セッションＡ、セッションＢと記載）を同時に実施する場合を想定している。最初に各セッションに対するＯｐｅｎＳｅｓｓｉｏｎコマンドを発行し、それぞれＡ、ＢというＳｅｓｓｉｏｎＩＤを得る。その後、情報記録装置２１は各セッションの優先度を判定した結果、セッションＡの優先度が高いと判断し、アクセス装置１１、１２、及び１３に対してＳｅｓｓｉｏｎＩＤ＝Ａを指定してＲｅｑｕｅｓｔＤａｔａコマンドを発行する。アクセス装置１１、１２、及び１３はセッションＡの書き込みデータとしてＤａｔａ１を情報記録装置２１に送信し、情報記録装置２１がＤａｔａ１を不揮発性メモリ２６に記録する。続いて情報記録装置２１は再度各セッションの優先度を判定し、今度はセッションＢの優先度が高いと判断し、アクセス装置１１、１２、及び１３に対してＳｅｓｓｉｏｎＩＤ＝Ｂを指定してＲｅｑｕｅｓｔＤａｔａコマンドを発行する。アクセス装置１１、１２、及び１３はセッションＢの書き込みデータとしてＤａｔａ２を情報記録装置２１に送信し、情報記録装置２１がＤａｔａ２を不揮発性メモリ２６に記録する。次も同様の処理を繰り返し、セッションＡの書き込みデータとしてＤａｔａ３を不揮発性メモリ２６に記録する。
【０１１１】
以上説明したように、本発明の実施の形態２におけるアクセス装置１１、１２、及び１３、情報記録装置２１は、情報記録装置２１に対する複数のアクセスを並行して実施する場合において、情報記録装置２１が各セッションの優先度を判定し、その判定結果に基づいてアクセス装置１１、１２、及び１３へデータ送信を要求する。これにより、実施の形態１ではアクセス装置１１、１２、及び１３が各セッションのＷｒｉｔｅＳｔｒｅａｍコマンドを繰り返し実施して優先度の高いセッションを模索する必要があったのに比べ、情報記録装置２１が必要とするセッションのデータを即座にアクセス装置１１、１２、及び１３から取得することができ、効率的にデータを取得して不揮発性メモリ２６に記録することが可能となる。
【０１１２】
尚、本発明を上記の実施の形態に基づいて説明してきたが、本発明は上記の実施の形態に限定されないのは勿論である。本発明の趣旨を逸脱しない範囲で実施変更することができる。本発明の実施の形態１で記載した各種変形例を本発明の実施の形態２に適用しても良い。
【０１１３】
更に、本実施の形態２では、情報記録装置２１が最も優先度の高いセッションのデータをＲｅｑｕｅｓｔＤａｔａコマンドによりアクセス装置１１、１２、及び１３に要求する方法について説明した。しかしながら、動画記録等ではエンコーダから一定のレートでアクセス装置１１、１２、及び１３内のバッファメモリに動画データが蓄積されるため、情報記録装置２１がＲｅｑｕｅｓｔＤａｔａコマンドを発行した時点で書き込みデータがバッファメモリ内に未だ存在しない場合が考えられる。このような場合、アクセス装置１１、１２、及び１３がＲｅｑｕｅｓｔＤａｔａコマンドのレスポンスとして、情報記録装置２１に待機してもらいたい時間の情報を通知すると良い。例えば、レスポンスとして２００ｍｓｅｃという情報を情報記録装置２１に通知し、情報記録装置２１側で２００ｍｓｅｃ待機した後に再度ＲｅｑｕｅｓｔＤａｔａコマンドをアクセス装置１１、１２、及び１３に発行することにより、その間にアクセス装置１１、１２、及び１３側のバッファメモリ内に書き込みデータが生成され、データを情報記録装置２１に送信することが可能となる。また別の方法として、レスポンスに当該セッションのデータ送信をスキップする命令を含ませても良い。例えば、ＳｅｓｓｉｏｎＩＤ＝Ａが指定されたＲｅｑｕｅｓｔＤａｔａコマンドをアクセス装置１１、１２、及び１３が受信し、該当セッションのデータが準備出来ていなかった場合、レスポンスとして“スキップ”を意味する情報を情報記録装置２１に通知する。この場合、情報記録装置２１は、ＳｅｓｓｉｏｎＩＤ＝Ａのデータ要求をスキップし、次に優先度の高いセッションを検索し、そのＳｅｓｓｉｏｎＩＤを指定して再度ＲｅｑｕｅｓｔＤａｔａコマンドをアクセス装置１１、１２、及び１３に通知する。これにより、アクセス装置１１、１２、及び１３側のバッファメモリ上に書き込みデータが生成されているセッションに処理を移し、効率的にデータを記録することが可能となる。
【０１１４】
（実施の形態３）
図１４から図１６は、本発明の実施の形態３のアクセス装置１１、１２、及び１３、情報記録装置２１におけるデータ記録手順を示した図である。本実施の形態３におけるアクセス装置１１、１２、及び１３、情報記録装置２１の構成は図１に示した構成と同じである。また、物理特性情報格納部２７、速度保証情報格納部２８に格納する情報や、各セッションに対する記録可否判定処理も図１０に示したものと同じである。本実施の形態３が、先の実施の形態１、実施の形態２と異なる点は、アクセス装置１１、１２、及び１３と情報記録装置２１との間のデータ記録処理手順が異なる点である。以下、このデータ記録処理手順について、図１４から図１６を用いて説明する。
【０１１５】
図１４はアクセス装置１１、１２、及び１３側におけるデータ記録手順を示した図であり、以下の手順によりデータを記録する。
【０１１６】
（Ｓ１４０１）アクセス装置１１、１２、及び１３が情報記録装置２１に対して、ＯｐｅｎＳｅｓｓｉｏｎ（Ｎａｍｅ、Ｓｐｅｅｄ）のような形式でセッション確立用のＯｐｅｎＳｅｓｓｉｏｎコマンドを発行する。Ｎａｍｅでは記録しようとしているファイルの名称等のセッションを識別するための情報を指定し、Ｓｐｅｅｄでは必要とする速度保証値を指定する。
【０１１７】
（Ｓ１４０２）Ｓ１４０１で発行したＯｐｅｎＳｅｓｓｉｏｎコマンドのレスポンスを情報記録装置２１から受信し、ＯｐｅｎＳｅｓｓｉｏｎコマンドが正常に受け付けられたか判定する。またこのレスポンスで、Ｓ１１０１で発行したＯｐｅｎＳｅｓｓｉｏｎコマンドにより確立したセッションに付与されたＩＤであるＳｅｓｓｉｏｎＩＤを取得する。
【０１１８】
（Ｓ１４０３）Ｓ１４０２の判定の結果、正常に受け付けられなかったと判定した場合、エラーが発生したため処理を終了する。
【０１１９】
（Ｓ１４０４）Ｓ１４０２の判定の結果、正常に受け付けられたと判定した場合、情報記録装置２１に対して、ＧｅｔＲｅｑｕｅｓｔＳｅｓｓｉｏｎＩＤコマンドを発行する。ＧｅｔＲｅｑｕｅｓｔＳｅｓｓｉｏｎＩＤコマンドは、情報記録装置２１から現在最も優先度の高いセッションに対応するＳｅｓｓｉｏｎＩＤを取得するコマンドであり、特に引数は存在しない。
【０１２０】
（Ｓ１４０５）Ｓ１４０４で発行したＧｅｔＲｅｑｕｅｓｔＳｅｓｓｉｏｎＩＤコマンドのレスポンスを情報記録装置２１から受信し、ＧｅｔＲｅｑｕｅｓｔＳｅｓｓｉｏｎＩＤコマンドが正常に受け付けられたか判定する。またこのレスポンスで、現在最も優先度の高いセッションに対応するＳｅｓｓｉｏｎＩＤを取得する。判定の結果、正常に受け付けられなかったと判定した場合、エラーが発生したため処理を終了する。
【０１２１】
（Ｓ１４０６）Ｓ１４０５の判定の結果、正常に受け付けられたと判定した場合、情報記録装置２１に対してＷｒｉｔｅＳｔｒｅａｍ（ＳｅｓｓｉｏｎＩＤ）のような形式のＷｒｉｔｅＳｔｒｅａｍコマンドを発行する。ＳｅｓｓｉｏｎＩＤにはＳ１４０５で取得したＳｅｓｓｉｏｎＩＤを指定する。
【０１２２】
（Ｓ１４０７）Ｓ１４０６で発行したＷｒｉｔｅＳｔｒｅａｍコマンドのレスポンスを情報記録装置２１から受信し、ＷｒｉｔｅＳｔｒｅａｍコマンドが正常に受け付けられたか判定する。判定の結果、正常に受け付けられなかったと判定した場合、エラーが発生したため処理を終了する。
【０１２３】
（Ｓ１４０８）Ｓ１４０７の判定の結果、正常に受け付けられたと判定した場合、書き込みデータを情報記録装置２１に送信する。
【０１２４】
（Ｓ１４０９）情報記録装置２１は送信されたデータを不揮発性メモリ２６に書き込んでいる間ビジー信号をアクセス装置１１、１２、及び１３に送信し続けるため、このビジー信号が解除されるまでアクセス装置１１、１２、及び１３は待機する。
【０１２５】
（Ｓ１４１０）ビジー信号が解除された後、全ての記録が終了したか判定する。まだ書き込みデータが残っている場合は、Ｓ１４０４の処理に戻り、再度ＧｅｔＲｅｑｕｅｓｔＳｅｓｓｉｏｎＩＤコマンド送信から処理を繰り返す。また全ての記録が終了した場合、処理を終了する。
【０１２６】
次に情報記録装置２１側のデータ記録処理を、図１５を用いて説明する。情報記録装置２１がＯｐｅｎＳｅｓｓｉｏｎコマンドを受信した場合の処理手順は、実施の形態１において図７を用いて説明した処理と同じであるため、説明を割愛する。ここでは、図１５を用いて、情報記録装置２１がＧｅｔＲｅｑｕｅｓｔＳｅｓｓｉｏｎＩＤコマンドを受信した場合の処理手順について説明する。
【０１２７】
（Ｓ１５０１）アクセス装置１１、１２、及び１３が情報記録装置２１に対して発行した、ＧｅｔＲｅｑｕｅｓｔＳｅｓｓｉｏｎＩＤコマンドを受信する。ＧｅｔＲｅｑｕｅｓｔＳｅｓｓｉｏｎＩＤコマンドは図１４で説明したように、特に引数を取らない形式であるものとする。
【０１２８】
（Ｓ１５０２）次に速度保証情報格納部２８に格納されている情報を元に、１つ以上のセッションが登録されているか確認する。具体的には図１０に示すセッション情報として１つでもセッションに関する情報が登録されているか否かにより確認する。
【０１２９】
（Ｓ１５０３）セッションが１つも登録されていない場合は、エラーレスポンスをアクセス装置１１、１２、及び１３に送信して処理を終了する。
【０１３０】
（Ｓ１５０４）１つ以上のセッションが登録されていた場合は、速度保証情報格納部２８に格納されている情報を元に、最も優先度の高いセッションのＳｅｓｓｉｏｎＩＤを決定する。優先度の決定は実施の形態１と同様に、図１０で示す優先度決定テーブル１０３に基づき、最大待ち可能スロット数の最も少ないセッションを優先度の高いセッションと決定する。
【０１３１】
（Ｓ１５０５）次に、決定したＳｅｓｓｉｏｎＩＤと共に、正常にＧｅｔＲｅｑｕｅｓｔＳｅｓｓｉｏｎＩＤコマンドを受け付けた旨を示す正常なレスポンスをアクセス装置１１、１２、及び１３に送信する。
【０１３２】
（Ｓ１５０６）続いてアクセス装置１１、１２、及び１３が情報記録装置２１に対して発行した、ＷｒｉｔｅＳｔｒｅａｍコマンドを受信する。ＷｒｉｔｅＳｔｒｅａｍコマンドは図１４で説明したように、ＷｒｉｔｅＳｔｒｅａｍ（ＳｅｓｓｉｏｎＩＤ）のような形式であるものとする。
【０１３３】
（Ｓ１５０７）次にＳ１５０６で受信したＷｒｉｔｅＳｔｒｅａｍコマンドの引数が正しいか判定する。ＳｅｓｓｉｏｎＩＤに、Ｓ１５０５で通知したＳｅｓｓｉｏｎＩＤ以外の値が設定されていた場合等、引数が異常であると判定した場合は、エラーレスポンスをアクセス装置１１、１２、及び１３に送信して処理を終了する。
【０１３４】
（Ｓ１５０８）Ｓ１５０７の判定の結果、引数が正常であると判定した場合は、正常にＷｒｉｔｅＳｔｒｅａｍコマンドを受け付けた旨を示す正常なレスポンスをアクセス装置１１、１２、及び１３に送信する。
【０１３５】
（Ｓ１５０９）次にアクセス装置１１、１２、及び１３から書き込みデータを受信する。
【０１３６】
（Ｓ１５１０）Ｓ１５０９で受信したデータを記録している最中であることを示すビジー信号の送信を開始する。
【０１３７】
（Ｓ１５１１）Ｓ１５０９で受信したデータを不揮発性メモリ２６に記録する。この際、ファイルシステム制御部２３が、記録速度を保証するために必要となる連続領域を確保した上で、その領域にデータを記録する。
【０１３８】
（Ｓ１５１２）Ｓ１５１１の記録処理が終了した後、速度保証情報格納部２８に格納された情報を更新する。この更新処理は実施の形態１で説明した処理と同様の処理であるため詳細な説明は割愛する。
【０１３９】
（Ｓ１５１３）Ｓ１５１２の更新処理が完了した後、ビジー信号の送信を終了し、処理を終了する。
【０１４０】
図１４のアクセス装置側の処理、図１５の情報記録装置側の処理を時系列に並べたシーケンス例を図１６に示す。図１６の例では、“ＡＡＡ．ｍｏｄ”と“ＢＢＢ．ｍｏｄ”という名称を持つ２つのセッション（以降、セッションＡ、セッションＢと記載）を同時に実施する場合を想定している。最初に各セッションに対するＯｐｅｎＳｅｓｓｉｏｎコマンドを発行し、それぞれＡ、ＢというＳｅｓｓｉｏｎＩＤを得る。続いてアクセス装置１１、１２、及び１３は情報記録装置２１に対してＧｅｔＲｅｑｕｅｓｔＳｅｓｓｉｏｎＩＤコマンドを発行する。このコマンドを受信した情報記録装置２１は各セッションの優先度を判定し、その結果優先度の高かったセッションＡのＳｅｓｓｉｏｎＩＤである“Ａ”の情報と共にＧｅｔＲｅｑｕｅｓｔＳｅｓｓｉｏｎＩＤコマンドに対するレスポンスをアクセス装置１１、１２、及び１３に送信する。アクセス装置１１、１２、及び１３はセッションＡの書き込みデータとしてＤａｔａ１を情報記録装置２１に送信し、情報記録装置２１がＤａｔａ１を不揮発性メモリ２６に記録する。続いてアクセス装置１１、１２、及び１３は再度情報記録装置２１に対してＧｅｔＲｅｑｕｅｓｔＳｅｓｓｉｏｎＩＤコマンドを発行する。これを受け情報記録装置２１は各セッションの優先度判定を行い、今度はセッションＢの優先度が高いと判断してアクセス装置１１、１２、及び１３に対してＳｅｓｓｉｏｎＩＤ＝Ｂの情報と共に、ＧｅｔＲｅｑｕｅｓｔＳｅｓｓｉｏｎＩＤコマンドに対するレスポンスをアクセス装置１１、１２、及び１３に送信する。アクセス装置１１、１２、及び１３はセッションＢの書き込みデータとしてＤａｔａ２を情報記録装置２１に送信し、情報記録装置２１がＤａｔａ２を不揮発性メモリ２６に記録する。以下同様の処理を繰り返す。
【０１４１】
以上説明したように、本発明の実施の形態３におけるアクセス装置１１、１２、及び１３、情報記録装置２１は、情報記録装置２１に対する複数のアクセスを並行して実施する場合において、アクセス装置１１、１２、及び１３が発行した優先度の高いセッションのＳｅｓｓｉｏｎＩＤ取得要求に対し、情報記録装置２１が各セッションの優先度を判定し、その判定結果に基づいてＳｅｓｓｉｏｎＩＤをアクセス装置１１、１２、及び１３に通知する。これにより、実施の形態１ではアクセス装置１１、１２、及び１３が各セッションのＷｒｉｔｅＳｔｒｅａｍコマンドを繰り返し実施して優先度の高いセッションを模索する必要があったのに比べ、アクセス装置１１、１２、及び１３が最も優先度の高いセッションを即座に把握することができ、効率的にデータを不揮発性メモリ２６に記録することが可能となる。
【０１４２】
尚、本発明を上記の実施の形態に基づいて説明してきたが、本発明は上記の実施の形態に限定されないのは勿論である。本発明の趣旨を逸脱しない範囲で実施変更することができる。本発明の実施の形態１で記載した各種変形例を本発明の実施の形態３に適用しても良い。
【０１４３】
更に、本実施の形態３では、ＧｅｔＲｅｑｕｅｓｔＳｅｓｓｉｏｎＩＤにより最も優先度の高いセッションのデータをアクセス装置１１、１２、及び１３が取得する方法について説明した。しかしながら、動画記録等ではエンコーダから一定のレートでアクセス装置１１、１２、及び１３内のバッファメモリに動画データが蓄積されるため、ＧｅｔＲｅｑｕｅｓｔＳｅｓｓｉｏｎＩＤで取得したＳｅｓｓｉｏｎＩＤに対応するセッションのデータがバッファメモリ内に未だ存在しない場合が考えられる。このような場合、ＳｅｓｓｉｏｎＳｋｉｐ（ＳｅｓｓｉｏｎＩＤ）のような形式のコマンドを情報記録装置２１に発行し、当該セッションのデータ記録をスキップする命令を含ませても良い。例えば、ＧｅｔＲｅｑｕｅｓｔＳｅｓｓｉｏｎＩＤにより取得したＳｅｓｓｉｏｎＩＤがＡであり、且つ該当セッションのデータが準備出来ていなかった場合、ＳｅｓｓｉｏｎＳｋｉｐ（“Ａ”）のコマンドを情報記録装置２１に発行した上で、再度ＧｅｔＲｅｑｕｅｓｔＳｅｓｓｉｏｎＩＤコマンドを情報記録装置２１に発行する。この場合、情報記録装置２１は、ＳｅｓｓｉｏｎＩＤ＝Ａのセッションに対するデータ記録をスキップし、次に優先度の高いセッションを検索し、そのＳｅｓｓｉｏｎＩＤをＧｅｔＲｅｑｕｅｓｔＳｅｓｓｉｏｎＩＤのレスポンスで通知する。これにより、アクセス装置１１、１２、及び１３側のバッファメモリ上に書き込みデータが生成されているセッションに処理を移し、効率的にデータを記録することが可能となる。
【０１４４】
（実施の形態４）
図１７は本発明の実施の形態４におけるアクセス装置１１、１２、及び１３、情報記録装置２１の構成図である。本発明の実施の形態１で説明した図１と異なる点は、情報記録装置２１内にクロック管理部２９を更に含む点である。クロック管理部は、一定周期毎に刻まれるクロックをカウントし、現在のクロックカウント値を保持するものである。このクロックカウント値は、例えば情報記録装置２１の初期化時に値が“０”に設定され、１ｍｓｅｃ周期で値がインクリメントされる等の方法により管理される。
【０１４５】
また、本発明の実施の形態４が本発明の実施の形態１と異なる点は、図１０で説明した速度保証情報格納部２８に格納される情報が図１８のようになる点と、図８のＳ８０４の記録可否判定処理の詳細内容が異なる点である。その他、アクセス装置１１、１２、及び１３と情報記録装置２１におけるデータ記録手順等は、本発明の実施の形態１と同様である。
【０１４６】
以下、図１８を用いて本実施の形態４における速度保証情報格納部２８に格納される情報と、記録可否判定処理の詳細について説明する。図１８は、物理特性情報格納部２７に格納される情報である物理特性情報１０１、速度保証情報格納部２８に格納される速度保証情報であるセッション情報１０２を示している。本実施の形態４では、速度保証情報として優先度決定テーブル１０３は使用しない。また、物理特性情報１０１は図１０で説明した内容と同じであるため、詳細な説明を割愛する。
【０１４７】
図１８では、セッション情報１０２の構成が図１０の構成とは異なっている。図１０と異なる点は、セッション毎に論理ブロック内の必要処理スロット数と論理ブロック内の最大待ち可能スロット数を管理する代わりに、処理可能タイミングを管理する点である。処理可能タイミングは、各セッションに対して次にアクセス要求を受け付けても良いタイミングを示す情報であり、この値をクロック管理部２９が管理している現在のクロックカウント値と比較することにより、各セッションのアクセス可否を判定する。
【０１４８】
次に、セッション情報の登録について説明する。セッション情報１０２は本発明の実施の形態１同様、ＯｐｅｎＳｅｓｓｉｏｎコマンドが発行された際に、そのセッションに関する情報が登録される。情報の登録は、次の手順で行われる。（１）ＯｐｅｎＳｅｓｓｉｏｎコマンドが発行された際に引数Ｓｐｅｅｄで指定された値を要求速度として登録する。（２）処理可能タイミングとして初期値“０”を設定する。（３）セッションを識別するためのＩＤであるＳｅｓｓｉｏｎＩＤを付与する。図１８は２つのセッションが登録された状態で、且つ後述する処理可能タイミングの更新処理により値が更新されている例を示している。
【０１４９】
次にセッション情報１０２を用いた記録可否判定処理について説明する。セッション情報１０２では処理可能タイミングがセッション毎に管理されており、情報記録装置２１へのアクセスを実施する度にこの処理可能タイミングを更新する。アクセス装置１１、１２、及び１３から情報記録装置２１に対するアクセス要求が発行された際には、この処理可能タイミングの値を元に記録可否判定を行う。以下、具体的な数値例について説明する。クロック値が１ｍｓｅｃ毎にインクリメントされる場合において、記録単位が３２ＫＢで２ＭＢ／ｓの速度を保証する場合、３２ＫＢの記録処理を約１６ｍｓｅｃで処理する必要がある。同様に８ＭＢ／ｓの速度を保証する場合、３２ＫＢの記録処理を約４ｍｓｅｃで処理する必要がある。そのため、図１８に示すＳｅｓｓｉｏｎＩＤ＝Ａのセッション（以下、セッションＡ）の記録処理を実施する場合、３２ＫＢの記録処理を受け付ける度に処理可能タイミングを“１６”加算する。同様にＳｅｓｓｉｏｎＩＤ＝Ｂのセッション（以下、セッションＢ）の記録処理を実施する場合、３２ＫＢの記録処理を受け付ける度に処理可能タイミングを“４”加算する。例えば、セッションＡにおいて処理可能タイミングが“０”の状態でセッションＡに対する記録処理を実施した場合、処理可能タイミングは“１６”に変化する。また、セッションＢにおいて処理可能タイミングが“８”の状態でセッションＢに対する記録処理を実施した場合、処理可能タイミングは“１２”に変化する。この状態が図１８で示すセッション情報１０２の状態である。アクセス装置１１、１２、及び１３から情報記録装置２１に対する記録可否判定は、この処理可能タイミングと、現在のクロックカウント値の大小比較により実施する。図１８の状態で、クロック管理部２９で管理している現在のクロックカウント値が“１５”の場合、セッションＡの処理可能タイミングは“１５”よりも大きいため、セッションＡに対する記録要求が発生した場合、エラーをアクセス装置１１、１２、及び１３に通知する。また、セッションＢの処理可能タイミングは“１５”よりも小さいため、セッションＢに対する記録要求が発生した場合、正常に記録要求が受け付けられ、記録処理が実施される。このようにして、処理可能タイミングを用いて各セッションに対する記録可否制御を行うことにより、複数のデータアクセスが並行して実施された場合においても、一方のデータアクセスにのみ処理が集中し、他方のデータアクセスの速度保証が行えなくなるといった問題を回避することが可能となる。
【０１５０】
以上説明した内容は、アクセス装置１１、１２、及び１３が要求したアクセス速度を保証することが可能な方法であるが、更に効率的なアクセス処理を実現するために、下記の判定処理を実施すると良い。
【０１５１】
情報記録装置２１が保証可能な最大の速度を１６ＭＢ／ｓであるとした場合、３２ＫＢの記録処理は約２ｍｓｅｃで処理が完了する。ここで、図１８の状態で、クロック管理部２９で管理している現在のクロックカウント値が“１０”の場合、セッションＡ、セッションＢ共に処理可能タイミングが“１０”よりも大きいため、いずれのセッションに対する記録要求が発生しても受け付けられないことになる。ここで、実際に記録処理に必要な時間は２ｍｓｅｃであることから、セッションＡ、セッションＢのいずれかの記録処理を受け付けた場合、記録処理終了時点のクロックカウント値は“１２”に変化するが、この値はセッションＡ、セッションＢの両方の処理可能タイミング値以下であるため、記録処理を受け付けたとしても、セッションＡ、セッションＢの速度保証には影響しない。このように、アクセス装置１１、１２、及び１３から記録要求が発行された時点のクロックカウント値が処理可能タイミングに達していない場合においても、その記録要求を受け付けてもいずれのセッションの処理可能タイミングよりも前に記録処理が終了する場合は、記録要求を受け付けるようにする。これにより、複数のデータアクセスが並行して実施された場合においても、速度を保証しつつ、より効率的にデータ記録を実施することが可能である。
【０１５２】
尚、本発明を上記の実施の形態に基づいて説明してきたが、本発明は上記の実施の形態に限定されないのは勿論である。本発明の趣旨を逸脱しない範囲で実施変更することができる。本発明の実施の形態１で記載した各種変形例を本発明の実施の形態４に適用しても良い。また、実施の形態２、実施の形態３で説明した内容を実施の形態４と組み合わせて実現しても良い。
【産業上の利用可能性】
【０１５３】
本発明に関わるアクセス装置１１、１２、及び１３は、情報記録装置アクセス部１４を含む。また本発明に関わる情報記録装置２１は、ファイルシステム制御部２３と速度保証制御部２４を含み、情報記録装置２１の物理的な特性に関する情報を格納する物理特性情報格納部２７と、速度保証情報格納部２８を更に含む。情報記録装置２１に対する複数のアクセス（セッション）を並行して実施する場合において、物理特性情報格納部２７と速度保証情報格納部２８に格納された情報を元に速度保証制御部２４が各セッションの優先度を判定し、アクセスを許可するセッションを決定する。この結果を受けてアクセス装置１１、１２、及び１３内の情報記録装置アクセス部１４が実際に情報記録装置２１にアクセスするセッションを変更する。これにより、情報記録装置２１に対する複数のアクセスを並行して実施する場合において、各データアクセスに対して同時にアクセス速度を保証しつつ、効率的な情報記録装置２１へのアクセス処理を実施することが可能となる。このような情報記録装置２１は、音楽や静止画、動画などのデジタルコンテンツを格納する記録媒体として利用することができ、またアクセス装置１１、１２、及び１３は、前記情報記録装置２１にアクセスするＰＣアプリケーション、オーディオ機器、ＤＶＤレコーダ、ＨＤＤレコーダ、ムービー、デジタルスチルカメラ、携帯電話端末等として利用することができる。
【図面の簡単な説明】
【０１５４】
【図１】本発明の実施の形態１におけるアクセス装置、及び情報記録装置を示した説明図
【図２】本発明の実施の形態１における不揮発性メモリの構成の一例を示した説明図
【図３】従来のアクセス装置と情報記録装置におけるデータ記録手順のアクセス装置側の処理を示したフローチャート
【図４】従来のアクセス装置と情報記録装置におけるデータ記録手順の情報記録装置側の処理を示したフローチャート
【図５】従来のアクセス装置と情報記録装置におけるデータ記録手順のシーケンス例を示す説明図
【図６】本発明の実施の形態１のアクセス装置と情報記録装置におけるデータ記録手順のアクセス装置側の処理を示したフローチャート
【図７】本発明の実施の形態１のアクセス装置と情報記録装置におけるデータ記録手順の情報記録装置側の処理を示したフローチャート１
【図８】本発明の実施の形態１のアクセス装置と情報記録装置におけるデータ記録手順の情報記録装置側の処理を示したフローチャート２
【図９】本発明の実施の形態１のアクセス装置と情報記録装置におけるデータ記録手順のシーケンス例を示す説明図
【図１０】本発明の実施の形態１における物理特性情報と速度保証情報の一例を示す説明図
【図１１】本発明の実施の形態２のアクセス装置と情報記録装置におけるデータ記録手順のアクセス装置側の処理を示したフローチャート
【図１２】本発明の実施の形態２のアクセス装置と情報記録装置におけるデータ記録手順の情報記録装置側の処理を示したフローチャート
【図１３】本発明の実施の形態２のアクセス装置と情報記録装置におけるデータ記録手順のシーケンス例を示す説明図
【図１４】本発明の実施の形態３のアクセス装置と情報記録装置におけるデータ記録手順のアクセス装置側の処理を示したフローチャート
【図１５】本発明の実施の形態３のアクセス装置と情報記録装置におけるデータ記録手順の情報記録装置側の処理を示したフローチャート
【図１６】本発明の実施の形態３のアクセス装置と情報記録装置におけるデータ記録手順のシーケンス例を示す説明図
【図１７】本発明の実施の形態４におけるアクセス装置、及び情報記録装置を示した説明図
【図１８】本発明の実施の形態４における物理特性情報と速度保証情報の一例を示す説明図
【符号の説明】
【０１５５】
１１，１２，１３  アクセス装置
１４  情報記録装置アクセス部
２１  情報記録装置
２２  ホストインタフェース部
２３  ファイルシステム制御部
２４  速度保証制御部
２５  不揮発性メモリ制御部
２６  不揮発性メモリ
２７  物理特性情報格納部
２８  速度保証情報格納部
２９  クロック管理部
１０１  物理特性情報
１０２  速度保証情報（セッション情報）
１０３  速度保証情報（優先度決定テーブル）
【図１】
2008176455.tif 000003
【図２】
2008176455.tif 000004
【図３】
2008176455.tif 000005
【図４】
2008176455.tif 000006
【図５】
2008176455.tif 000007
【図６】
2008176455.tif 000008
【図７】
2008176455.tif 000009
【図８】
2008176455.tif 000010
【図９】
2008176455.tif 000011
【図１０】
2008176455.tif 000012
【図１１】
2008176455.tif 000013
【図１２】
2008176455.tif 000014
【図１３】
2008176455.tif 000015
【図１４】
2008176455.tif 000016
【図１５】
2008176455.tif 000017
【図１６】
2008176455.tif 000018
【図１７】
2008176455.tif 000019
【図１８】
2008176455.tif 000020