(57)【要約】【課題】バッファ装置のリセットシステムとその方法の提供。【解決手段】本発明は一種のバッファ装置のリセットシステムとその方法に関わるものである。主にリセットフラグ、及び制御ユニットを有し、リセットフラグは該バッファ装置に設ける。リセット方法は制御ユニットにより、リセットフラグを設定し、処理ユニットを切り換えるたびに、バッファ装置に格納されたデータを再度読み出すことにより、バッファ装置の利用効率の向上を図る。バッファ装置はさらに書込みフラグを設け、データをバッファへの書込みを禁止することにより、バッファ装置のデータを保護し、バッファ装置のデータロスを避ける。【選択図】図４
2008171168.tif 000002
【特許請求の範囲】
【請求項１】
リセットフラグを該バッファ装置に設け、該リセットフラグがリセットパラメータ値に設定されたとき、該バッファ装置をリセットする、
制御ユニットを設け、リセット機能を呼び出す、第１処理ユニットより該バッファ装置のデータを読み込み、該バッファ装置のデータは処理不能のとき、該制御ユニットより、該リセット機能を呼び出して、該バッファ装置をリセットした上、第２処理ユニットを該第１処理ユニットに置き換えて、該第２処理ユニットを該第１処理ユニットに取り変わり、該バッファ装置に格納されたデータを読みこむ、及び書込みフラグを設け、該制御ユニットにより非書込みパラメータ値に設定されたとき、データを該バッファ装置に書き込むことができない、該書込みフラグは制御ユニットにより、書込みパラメータ値に設定したとき、該バッファ装置にデータを書き込むことができることを特徴とするバッファリセットシステム。
【請求項２】
該制御ユニットは該第２処理ユニットと該第１処理ユニットの切り換え完了後、該リセットフラグは該バッファ装置をリセットすることなく、非リセットパラメータ値に自動設定されることを特徴とする請求項１記載のバッファリセットシステム。
【請求項３】
該制御ユニットは該第２処理ユニットを切り換える前に、該第２処理ユニットの存在を先に検出することを特徴とする請求項１記載のバッファリセットシステム。
【請求項４】
該第１処理ユニットと該第２処理ユニットは該バッファ装置に格納されたデータを読み込み及び処理を行った後、データ処理可能か否かに従い、対応した応答メッセージを該制御ユニットに送信し、該制御ユニットは該応答メッセージに基づき、該書込みフラグの設定を行う、もし、該制御ユニットにより該書込みフラグを非書込みパラメータに設定した後、該第１処理ユニット又は該第２処理ユニットは、該バッファ装置に格納されたデータ処理ができるとき、該制御ユニットより該書込みフラグを該書込みパラメータ値に設定し、その後のデータをバッファ装置への書込みを可能にする、もし、該書込みフラグを書込みパラメータ値に設定し、該第１処理ユニット又は該第２処理ユニットより該制御ユニットに応答メッセージの送信がないとき、該制御ユニットは該書込みフラグを設定するため、引き続きその応答メッセージを待機することを特徴とする請求項１記載のバッファリセットシステム。
【請求項５】
該バッファ装置はリングバッファ、並びに先入れ先だしリングバッファであることを特徴とする請求項１記載のバッファリセットシステム。
【請求項６】
該バッファ装置のリセットとは、該バッファ装置に備える一つの開始指標を該バッファ装置の開始アドレスに戻すことを特徴とする請求項１記載のバッファリセットシステム。
【請求項７】
該バッファ装置はリセットフラグ及び書込みフラグを設け、該書込みフラグが非書込みパラメータ値に設定されたとき、バッファ装置にデータを書き込むことができない、該書込みフラグを書込みパラメータ値に設定されたとき、該バッファ装置にデータを書き込むことができる、該リセットフラグをリセットパラメータ値に設定されたとき、該バッファ装置はリセットされる、該方法はさらに以下の手順を含まれる、
処理ユニットによるバッファ装置の読み込み及び処理データ状況に基づき、該リセットデータの設定を行う、そのうち、
第１処理ユニットにより、該バッファ装置より読み込まれたデータの処理ができないとき、該リセットフラグを該リセットパラメータ値に設定し、該バッファ装置をリセットする、並びに該第２処理ユニットの存在を検出することにより、第２処理ユニットと該第１処理ユニットを切り換え完了後、該リセットフラグは非リセットパラメータ値に自動設定され、該第２処理ユニットを該第１処理ユニットに代わって、該バッファ装置に格納されたデータの読み込み及び処理を行うことを特徴とするバッファ装置のリセット方法。
【請求項８】
該第１処理ユニットと該第２処理ユニットは該バッファ装置に格納されたデータを読み込み及び処理を行った後、データ処理可能か否かに従い、対応した応答メッセージを送信し、該応答メッセージに基づき、該書込みフラグの設定を行う、該書込みフラグを非書込みパラメータ値に設定した後、該第１処理ユニット又は該第２処理ユニットは、該バッファ装置に格納されたデータ処理ができるとき、該書込みフラグを該書込みパラメータ値に設定し、その後のデータをバッファ装置への書込みを可能にする、該第１処理ユニット又は該第２処理ユニットより応答メッセージの送信がないとき、該書込みフラグを設定するため、引き続きその応答メッセージを待機することを特徴とする請求項７記載のバッファ装置のリセット方法。
【請求項９】
該バッファ装置のリセットとは、該バッファ装置に備える一つの開始指標を該バッファ装置の開始アドレスに戻すことを特徴とする請求項７記載のバッファ装置のリセット方法。
【請求項１０】
該バッファ装置はストリーミングシステムに応用することができることを特徴とする請求項７記載のバッファ装置のリセット方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一種のバッファ装置、特にバッファ装置のリセットシステムとその方法に関わるものである。
【背景技術】
【０００２】
現在のストリーミングシステムはほとんどインターネットに使用している。ネットワーク上の放送、音楽又は映画を視聴する。一般的なストリーミングシステムは、複数の処理ユニットと複数のバッファ装置を有する。そのうち、隣り合う該処理ユニットの間にデータを一時格納するためのバッファ装置が設けられている。図１は公知技術のストリーミングシステムのブロック図である。このストリーミングシステムはインターネットに使用されている。図示のとおり、該ストリーミングシステムに第１処理ユニット２０’、第２処理ユニット２２’、第３処理ユニット２４’、第４処理ユニット２６’、第１バッファ装置３０’と第２バッファ装置３２’を含まれる。該第１処理ユニット２０’はインターネットよりデータをダウンロードして、該第１バッファ装置３０’に格納する。
【０００３】
第２バッファ装置２２’と第３処理ユニット２４’は、該第１バッファ装置３０’データの形態に従い、該第１バッファ装置３０’のデータを処理する。そのデータの内容はたとえば、ＭＰ３、ＷＭＡ又はＷＭＶなどがある。第２処理ユニット２２’は第１バッファ装置３０’よりデータを読み出した後処理を行い、処理したデータを第２バッファ装置３２’に格納する。もし、第２処理ユニット２２’は第１バッファ装置３０’のデータ処理ができないとき、システムは第１バッファ装置３０’をリセットした上、第３処理ユニット２４’に切り換えて第１バッファ装置３０’のデータを再度読み出して処理を行い、処理後のデータを第２バッファ装置３２’に格納する。引き続き、第４処理ユニット２６’は第２バッファ装置３２’より処理後のデータを読み出して再生する。そのうち、バッファ装置３０’、３２’は先入れ先だし（ｆｉｒｓｔ  ｉｎ  ｆｉｒｓｔ  ｏｕｔ）形態であり、リングバッファ（ｒｉｎｇ  ｂｕｆｆｅｒ）である。
【０００４】
図２は公知技術のリングバッファによるデータ格納状態の概略図である。図示のとおり、バッファ装置１’に開始指標５’と終了指標７’を有し、バッファ装置１’は開始指標５’と終了指標７’によりバッファ装置１’に格納されるデータ１０’の開始アドレスと終点アドレスを指示する。データ１０’は読み込まれたとき、開始指標５’は前に移動し、読み込まれたデータの最終アドレスを指す。
【０００５】
引き続き、図３はデータを公知技術のリングバッファに書込み状態の概略図である。図示のとおりバッファ装置１のデータ１０’は読み込まれた後、開始指標５’は前方へデータ１０’の最後に読み取られたアドレスに移動する。すなわち、データ１０’は全部読み取られた後、開始指標５’は終了指標７’と共に同じアドレスに指す。その後、もしデータ１２’をバッファ装置１’に格納されるとき、このデータ１２’は終了指標７’に指されたアドレスから書込み、データ１２’をバッファ装置１’に書込み完了するまで、終了指標７’を前方に移動される。データ１２’をバッファ装置１’に書込み、最終アドレスに来ても、データ１２’はなお書き切れない場合、バッファ装置１’の開始アドレスより引き続きにデータ１２’を書込んで行き、このとき、すでに読み取られたデータ１０’は書き込まれる。このため、この種のバッファ装置１’はリングバッファと呼ばれる。
【０００６】
引き続き図１を参照する。第２処理ユニット２２’より第１バッファ装置３０’のデータが処理できないとき、第３処理ユニット２４’は第１バッファ装置３０’のデータを読み込み及び処理の間に、第２処理ユニット２２’によって一部のデータがすでに読み取られているため、開始指標５’は前方へ移動し、第２処理ユニット２２’によってデータを読み取ったアドレスを指す。このとき、第３処理ユニット２４’は第１バッファ装置３０’元のデータを読み取ることができない。バッファ装置のリセットを行い、第１処理ユニット２０’は第３処理ユニット２４’に切り換えてデータ処理を引き継がせる。
【０００７】
本発明者は前記の問題点に対し、一種の斬新なバッファ装置のリセットシステムとその方法により、処理ユニットを切り換えた後、切り換えられた後の処理ユニットがバッファ装置従来のデータを読み取れない欠点を改善するほか、バッファ装置に格納された従来のデータの書込みを防止し、前記の問題を解決することを思案した。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
バッファ装置にリセットフラグとリセット機能を設け、処理ユニットを切り換えた後、リセットフラグよりバッファ装置のリセットを行い、切り換えた後の処理ユニットによるバッファ装置に格納された従来のデータの読み取りを可能にする、一種のバッファリセット方法を提供することを本発明の主な目的とする。
【０００９】
バッファ装置に書込みフラグを設け、次の処理ユニットはバッファ装置のデータ処理が可能か否かを確定できないとき、書込みフラグを設けて、その後のデータをバッファ装置への書込みを禁止し、バッファ装置に格納された従来のデータへの書込みを避けて、バッファ装置に格納された従来のデータの紛失を避ける、一種のバッファリセット方法を提供することを本発明のもう一つの目的とする。
【００１０】
前記の目的を達成するため、本発明のバッファリセットシステムはリセット機能、リセットフラグ、書込みフラグ及び制御ユニットを有する。リセットフラグと書込みフラグはバッファ装置に設け、制御ユニットはリセット機能の呼び出し及び書込みフラグの設定を行う。リセット機能の呼び出しにより、バッファ装置をリセットし、処理ユニットを切り換えた後、バッファ装置に格納されたデータを再度読み込む。書込みフラグの設定により、バッファ装置に格納されたデータを保護し、データロスを避ける。
【００１１】
本発明のリセット方法は、処理ユニットによるバッファ装置に格納されたデータの処理状況に従い、リセット機能を呼び出して、フラグを確認する。第１処理ユニットよりバッファ装置のデータより読み込んだデータが処理できないとき、制御ユニットによりフラグをリセットした上、リセット機能を呼び出して、第２処理ユニットと第１処理ユニットを切り換えて、第２処理ユニットを第１処理ユニットに置き換えて、バッファ装置に格納されたデータを再度読み出して、処理を行う。データがバッファ装置書き込まれたとき、リセットフラグは偽（Ｆａｌｓｅ）に設定する。このほか、処理ユニットはバッファ装置に格納されたデータを処理できるか否かを特定できないとき、制御ユニットより書込みフラグを非書込みパラメータ値に設定し、後のデータをバッファ装置への書込みを禁止する。すなわち、データを古いデータに書込みすることができない。処理ユニットによるバッファ装置のデータ処理が可能と確認できたとき、書込みフラグを書込みパラメータ値に設定し、後のデータをバッファ装置への書込みを可能にする。
【課題を解決するための手段】
【００１２】
請求項１の発明は、リセットフラグを該バッファ装置に設け、該リセットフラグがリセットパラメータ値に設定されたとき、該バッファ装置をリセットする、
制御ユニットを設け、リセット機能を呼び出す、第１処理ユニットより該バッファ装置のデータを読み込み、該バッファ装置のデータは処理不能のとき、該制御ユニットより、該リセット機能を呼び出して、該バッファ装置をリセットした上、第２処理ユニットを該第１処理ユニットに置き換えて、該第２処理ユニットを該第１処理ユニットに取り変わり、該バッファ装置に格納されたデータを読みこむ、及び書込みフラグを設け、該制御ユニットにより非書込みパラメータ値に設定されたとき、データを該バッファ装置に書き込むことができない、該書込みフラグは制御ユニットにより、書込みパラメータ値に設定したとき、該バッファ装置にデータを書き込むことができることを特徴とするバッファリセットシステムとしている。
請求項２の発明は、該制御ユニットは該第２処理ユニットと該第１処理ユニットの切り換え完了後、該リセットフラグは該バッファ装置をリセットすることなく、非リセットパラメータ値に自動設定されることを特徴とする請求項１記載のバッファリセットシステムとしている。
請求項３の発明は、該制御ユニットは該第２処理ユニットを切り換える前に、該第２処理ユニットの存在を先に検出することを特徴とする請求項１記載のバッファリセットシステムとしている。
請求項４の発明は、該第１処理ユニットと該第２処理ユニットは該バッファ装置に格納されたデータを読み込み及び処理を行った後、データ処理可能か否かに従い、対応した応答メッセージを該制御ユニットに送信し、該制御ユニットは該応答メッセージに基づき、該書込みフラグの設定を行う、もし、該制御ユニットにより該書込みフラグを非書込みパラメータに設定した後、該第１処理ユニット又は該第２処理ユニットは、該バッファ装置に格納されたデータ処理ができるとき、該制御ユニットより該書込みフラグを該書込みパラメータ値に設定し、その後のデータをバッファ装置への書込みを可能にする、もし、該書込みフラグを書込みパラメータ値に設定し、該第１処理ユニット又は該第２処理ユニットより該制御ユニットに応答メッセージの送信がないとき、該制御ユニットは該書込みフラグを設定するため、引き続きその応答メッセージを待機することを特徴とする請求項１記載のバッファリセットシステムとしている。
請求項５の発明は、該バッファ装置はリングバッファ、並びに先入れ先だしリングバッファであることを特徴とする請求項１記載のバッファリセットシステムとしている。
請求項６の発明は、該バッファ装置のリセットとは、該バッファ装置に備える一つの開始指標を該バッファ装置の開始アドレスに戻すことを特徴とする請求項１記載のバッファリセットシステムとしている。
請求項７の発明は、該バッファ装置はリセットフラグ及び書込みフラグを設け、該書込みフラグが非書込みパラメータ値に設定されたとき、バッファ装置にデータを書き込むことができない、該書込みフラグを書込みパラメータ値に設定されたとき、該バッファ装置にデータを書き込むことができる、該リセットフラグをリセットパラメータ値に設定されたとき、該バッファ装置はリセットされる、該方法はさらに以下の手順を含まれる、
処理ユニットによるバッファ装置の読み込み及び処理データ状況に基づき、該リセットデータの設定を行う、そのうち、
第１処理ユニットにより、該バッファ装置より読み込まれたデータの処理ができないとき、該リセットフラグを該リセットパラメータ値に設定し、該バッファ装置をリセットする、並びに該第２処理ユニットの存在を検出することにより、第２処理ユニットと該第１処理ユニットを切り換え完了後、該リセットフラグは非リセットパラメータ値に自動設定され、該第２処理ユニットを該第１処理ユニットに代わって、該バッファ装置に格納されたデータの読み込み及び処理を行うことを特徴とするバッファ装置のリセット方法としている。
請求項８の発明は、該第１処理ユニットと該第２処理ユニットは該バッファ装置に格納されたデータを読み込み及び処理を行った後、データ処理可能か否かに従い、対応した応答メッセージを送信し、該応答メッセージに基づき、該書込みフラグの設定を行う、該書込みフラグを非書込みパラメータ値に設定した後、該第１処理ユニット又は該第２処理ユニットは、該バッファ装置に格納されたデータ処理ができるとき、該書込みフラグを該書込みパラメータ値に設定し、その後のデータをバッファ装置への書込みを可能にする、該第１処理ユニット又は該第２処理ユニットより応答メッセージの送信がないとき、該書込みフラグを設定するため、引き続きその応答メッセージを待機することを特徴とする請求項７記載のバッファ装置のリセット方法としている。
請求項９の発明は、該バッファ装置のリセットとは、該バッファ装置に備える一つの開始指標を該バッファ装置の開始アドレスに戻すことを特徴とする請求項７記載のバッファ装置のリセット方法としている。
請求項１０の発明は、該バッファ装置はストリーミングシステムに応用することができることを特徴とする請求項７記載のバッファ装置のリセット方法としている。
【発明の効果】
【００１３】
本発明のバッファ装置のリセットシステムとその方法は、リセットフラグを該バッファ装置に設けることにより、二つの処理ユニットを切り換えるとき、バッファ装置のリセットを行う。このように、切り換えた後の処理ユニットは、その前の処理ユニットにより読み込まれ、処理しきれないデータを再度に読み込むことができる。その上、リセットフラグの自動設定により、制御ユニットにシステムリセットの必要性を知ることができる。本発明はさらに、書込みフラグをバッファ装置に書込み、システムはバッファ装置に格納されたデータ処理が可能か否かを確定できないとき、バッファ装置の既存データに後のデータにより上書きされることにより、データロスを避けるため、書込みフラグを非書込みパラメータに設定し、バッファ装置へのデータ書込みを禁止しておく、その後、処理可能な処理ユニットが現れたとき、書込みフラグを書込みパラメータ値に設定し、バッファ装置を通常のリングバッファのように機能させる。これにより、バッファ装置に格納されたデータのデータロスを解消し、バッファ装置の利用効率を向上できる。書込みフラグの初期設定は書込みパラメータ値に設定しておけば、バッファ装置はリングバッファに機能し、データをバッファ装置に書き込まれるとき、処理ユニットの切り替えを可能にする。
【発明を実施するための最良の形態】
【００１４】
図４は、本発明の一好ましい実施例のブロック図である図示のとおり、本発明のバッファ装置システムは、制御ユニット３０、リセットフラグ１３及び書込みフラグ１６を含まれる。リセットフラグ１３と書込みフラグ１６ともバッファ装置１０内部に設ける。制御ユニット３０はリセットフラグ（ｒｅｓｅｔｔａｂｌｅ  ｆｌａｇ）１３の状態を確認し、書込みフラグ（ｏｖｅｒｗｒｉｔｅｂｌｅ  ｆｌａｇ）１６の確認及び改変を行い、バッファ装置１０のデータの読み取りと書込みを制御する。制御ユニット３０により、リセットフラグ１３の設定を確認した後、制御３０はリセット機能の読み出しを許可し、バッファ装置１０のリセットを行う。すなわち、バッファ装置１０のリセット開始指標をバッファ装置１０の開始アドレスに戻す。このため、第３処理ユニット２４は第２処理ユニット２２がバッファ装置１０より読み込んだデータが処理できないときバッファ装置１０従来のデータを再度に読み込み、処理を行う。リセットフラグ１３は非リセットパラメータに設定された後、制御ユニット３０はバッファ装置１０をリセットすることができなくなる。まず、リセットフラグ１３を制御ユニット３０に設定し、バッファ装置１０データが書き込まれることにより、リセットフラグ１３は自動的非リセットフラグに設定する。
【００１５】
制御ユニット３０により、書込みフラグ１６を非書込みパラメータ値に設定されたとき、ロジックの”偽”（Ｆａｌｓｅ）となり、データをバッファ装置１０の既存データに書き込むことができない。図５を併せて参照する。書込みフラグ１６を非書込みパラメータ値に設定し、データをバッファ装置１０に書込み、終了指標がバッファ装置１０末端のアドレスに来て、さらにデータをバッファ装置１０に書込みすることができない。すなわち、バッファ装置１０はすでに古いデータ６を格納されている。書込みフラグ１６は非書込みパラメータ値に設定されたとき、新しいデータ８は開始フラグ２についでバッファ装置１０容量が満杯に世アルマでバッファ装置１０に書込む。すなわち、終了フラグ４をバッファ装置１０の後尾部に移動させる。これは第１処理ユニット２０が引き続きにデータをバッファ装置１０に書き込むことにより、バッファ装置１０に格納された従来のデータを上書きされて、第２処理ユニット２２又は第３処理ユニット２４よりバッファ装置１０のデータを読み込むときに、バッファ装置１０従来のデータが維持される。制御ユニット３０より書込みフラグ１６を書込みパラメータ値に設定したとき、ロジックの”真”（Ｔｒｕｅ）となり、バッファ装置１０にデータ書込みができる。
【００１６】
以下一つの実施例をもって、本発明を説明する。第１処理ユニット２０が第１データをバッファ装置１０に格納した後、第２処理ユニット２２はバッファ装置１０の第１データ読み込んで処理を行う。第２処理ユニット２２は第１データを処理するときに、応答メッセージを制御ユニット３０に送信し、第１データは処理可能なことを制御ユニット３０に通知する。第２処理ユニット２２は第１データの処理ができるとき、制御ユニット３０はデータ処理可能の応答メッセージに従い、書込みフラグを書込みパラメータ値に設定し、第１処理ユニット２０によるバッファ装置１０へのデータ書込みを許可する。第２処理ユニット２２は第１データを処理できないとき、制御ユニット３０はバッファ装置１０の書込みフラグ１６を確認する。もしリセットフラグがロジックの”真”に設定されたとき、バッファ装置１０をリセットし、データ処理不能の内容により切り換え応答メッセージを第３処理ユニット２４に送信する。すなわち、第２処理ユニット２２が第１データを処理できないとき、制御ユニット３０は第２処理ユニット２２と第３処理ユニット２４に切り換えて、第３処理ユニット２４を第２処理ユニット２２に取り変わる。
【００１７】
このほか、制御ユニット３０は駆動メッセージを送信するときもバッファ装置１０のリセットを行い、リセットフラグ１３をリセットパラメータ値に設定し、バッファ装置１０をリセットした上、開始指標をバッファ装置１０の第１データの開始アドレスに指す。第３処理ユニット２４をバッファ装置１０に格納された第１データの開始位置より第１データを読み込み、第３処理ユニット２４は第２処理ユニット２２がバッファ装置１０に格納されたデータを処理できないとき、バッファ装置１０の従来のデータが読み込めない問題点を解消し、バッファ装置１０の利用効率を向上する。前記したとおり、第２処理ユニット２４は第１データを処理するときも、応答メッセージを制御ユニット３０に送信し、制御ユニット３０により書込みフラグ１３を書込みパラメータ値に設定して、第１処理ユニット２０に切り換えて、引き続きバッファ装置１０への書込みを可能にする。書込みフラグは書込みパラメータ値に設定し、第１処理ユニット２０により、バッファ装置１０への書込みデータを一杯に書き込んだ後、リセットフラグ１３を非リセットパラメータ値に設定する。
【００１８】
その後、第１処理ユニット２０もバッファ装置１０のデータを処理しきれない、第３処理ユニット２４もバッファ装置１０のデータを処理しきれないとき、データ処理不能の応答メッセージを制御ユニット３０に送信する。その後、他の処理ユニットが空いたとき、制御ユニット３０は切り換えメッセージを他の処理ユニットに発信し、第３処理ユニット２４を他の処理ユニットに切り換えて、第３処理ユニット２４に取り変わる。制御ユニット３０はバッファ装置１０をリセットした上、リセットフラグ１３をリセットパラメータ値に設定する。
【００１９】
図６は、本発明もう一つの一好ましい実施例のブロック図である。図示のとおり、本発明のバッファ装置のリセットシステムはネットワーク上のストリーミングシステムに応用でき、このストリーミングシステムはダウンロードユニット４０、第１バッファ装置５０、復号モジュール６０、第２バッファ装置７０、及び再生ユニット８０を含まれる。ダウンロードユニット４０はインターネットよりネットワークデータをダウンロードして、第１バッファ装置５０に書き込む。ネットワークデータはＷＭＡ、ＷＭＶ又はＭＰ３のデータフォーマットもしくはその他任意のフォーマットであっても良い。最初は、復号モジュール６０の第１復号ユニット６２、第２復号ユニット６４と第３復号ユニット６６は第１バッファ装置５０のネットワークデータが復号可能か否かを知ることができない。第１バッファ装置５０の書込みフラグ５６を非書込みパラメータに設定することにより、復号ユニットの切り換えが確保される。
【００２０】
復号モジュール６０は第１バッファ装置５０のネットワークデータの復号に使用する。復号モジュール６０の第１復号ユニット６２、第２復号ユニット６４及び第３復号ユニット６６は、ＷＭＡ、ＷＭＶ及びＭＰ３のデータフォーマットの復号を行う。第１バッファ装置５０にネットワークデータが保存されたとき、第１復号ユニット６２は第１バッファ装置５０のネットワークデータを読み取る。第１バッファ装置５０のネットワークデータはＷＭＡフォーマットのとき、第１復号ユニット６２は復号を開始し、処理可能の応答メッセージを制御ユニット３０に送信し、制御ユニット３０に対して第１復号ユニット６２はネットワークデータの復号ができることを知らせる。このとき、制御ユニット３０は第１バッファ装置の第１バッファ装置５０の書込みフラグ５６を書込みパラメータ値に設定し、ダウンロードユニット４０は引き続きにネットワークデータを第１バッファ装置５０に格納できる。
【００２１】
ダウンロードユニット４０よりダウンロードしたデータがＭＰ３フォーマットのとき、第１復号ユニット６２による復号ができない。このとき、第１復号ユニット６２は処理不能の応答メッセージを制御ユニット３０に送信し、制御ユニット３０に第１復号ユニット６２は第１バッファ装置５０のインターネットデータの復号ができないことを通知する。制御ユニット３０は切り換えメッセージを第２復号ユニット６４に送信し、第１復号ユニット６２を第２復号ユニット６４に切り換えて、第２復号ユニット６４を第１復号ユニット６２に取り変わる。その上、第１バッファ装置５０をリセットし、第２復号ユニット６４により第１バッファ装置５０従来のネットワークデータを読み込む。すなわち、第１復号ユニット６２より読み込み復号不能のネットワークデータ。
【００２２】
第２復号ユニット６４はＷＭＶフォーマットのネットワークデータ復号専用のため、第２復号ユニット６４はＭＰ３フォーマットのネットワークデータを復号することができない。このとき、第２復号ユニット６４は処理不能の応答メッセージを制御ユニット３０に送信し、制御ユニット３０より駆動メッセージを第３復号ユニット６６に送信することにより、第２復号ユニット６４と第３復号ユニット６６を切り換えて、第３復号ユニット６６を第２復号ユニット６４に取り変わる同時に、第１バッファ装置５０をリセットし、第３復号ユニット６６は第１バッファ装置５０に格納されたネットワークデータを読み込む。
【００２３】
第１バッファ装置５０に格納されたネットワークデータのフォーマットは第３復号ユニット６６が復号可能なデータフォーマットに一致するため、第３復号ユニット６６より、処理可能の応答メッセージを制御ユニット３０に送信し、制御ユニット３０は応答メッセージに基づき、書込みフラグ５６を書込みパラメータ値に設定し、ダウンロードユニット４０によるネットワークデータを第１バッファ装置５０への格納を許可し、元のネットワークデータに上書きして、第３復号ユニット６６は第１バッファ装置５０に格納されたネットワークデータを引き続きダウンロードして復号できる。
【００２４】
ダウンロードユニット４０よりダウンロードしたネットワークデータのフォーマットはＷＭＡ、ＷＭＶ及びＭＰ３以外のとき、復号モジュール６０に備える復号ユニット６２、６４、６６も第１バッファ装置５０に格納されたネットワークデータを復号できない。また、制御ユニット３０はこのネットワーク上のストリーミングシステムに他の復号ユニットの存在を検出できないとき、該ネットワークのストリーミングシステムにエラーがあるため、第１バッファ装置５０に格納されたネットワークを復号できないことを意味する。
【００２５】
前記の第１復号ユニット６２、第２復号ユニット６４又は第３復号ユニット６０はネットワークデータの復号による復号データは第２バッファ装置７０に格納される。その後、再生ユニット８０より第２バッファ装置７０に格納された復号データを読み取り、再生を開始する。この実施例において、復号モジュール６０より生成する復号データのフォーマットは、再生ユニット８０が再生可能なデータフォーマットに合致するため、第２バッファ装置７０によるリセットフラグと書込みフラグのリセットは不要である。この実施例において、書込みフラグの初期設定は、”真”、第２バッファ装置７０は従来のリングバッファに相当する。ただし、第２バッファ装置７０は他のデータフォーマットにも応用かのうである。
【００２６】
図７は、本発明の一好ましい実施例のフロー図である。説明の便宜上、本実施例は図３に合わせて説明する。システムの処理ユニット２２、２４はバッファ装置１０に格納されたデータを処理可能か否か不明なとき、まずバッファ装置１０の書込みフラグ１６を非書込みパラメータに設定し、第１処理ユニット２０からバッファ装置１０への格納を禁止して置き、システムの処理ユニット２２、２４ともバッファ装置１０に格納されたデータを処理できないにも拘らず、第１処理ユニット２０が引き続きデータをバッファ装置１０に格納し、バッファ装置１０の既存データに上書きして、データロスを避ける。手順Ｓ１０に示すとおり、第１処理ユニット２０よりデータをバッファ装置１０に書き込むとき、制御ユニット３０はバッファ装置１０の書込みフラグを非書込みパラメータに設定し、バッファ装置１０への書込みを禁止する。
【００２７】
第２処理ユニット２２はバッファ装置１０のデータを読み込んで処理を行うほか、処理データの形態に従い、応答メッセージを制御ユニット３０に送信する。制御ユニット３０は手順Ｓ１２に示すとおり、応答メッセージを受信した後、手順Ｓ１４を実行し、応答メッセージに基づき、第２処理ユニット２２はバッファ装置１０に格納されたデータの処理可能か否かを確認する。もし、第２処理ユニット２２はバッファ装置１０に格納されたデータを処理可能な場合、制御ユニット３０より手順Ｓ１６を実行し、書込みフラグ１６を書込みパラメータ値に設定し、バッファ装置１０によるデータ書込みを可能にして、第２処理ユニット２２は引き続きバッファ装置１０のデータ読み込み及び処理を許可する。
【００２８】
もし、第２処理ユニット２２よりデータ処理不能の応答メッセージを発信した場合、制御ユニット３０は手順Ｓ１４を実行するときに、応答メッセージよりその胸を検出し、手順Ｓl８を実行し、他の処理ユニットの存在を検出する。図３の例として、制御ユニット３０は第３処理ユニット２４の存在を検出できる。このとき、制御ユニット３０は手順Ｓ１９を実行し、バッファ装置１０をリセットし、切り換えメッセージを第３処理ユニット２４に送信し、第３処理ユニット２４と第２処理ユニット２２を切り換えて、第３処理ユニット２４よりバッファ装置１０の既存データを読み込み及び処理を行う。引き続き、手順Ｓ１２と手順Ｓ１４を繰り返して実行する。もし、第３処理ユニット２４はバッファ装置１０のデータを処理できるとき、手順Ｓ１６を実行した後、手順Ｓ１７を実行する。もし第３処理ユニット２４も当該データを処理できないとき、手順Ｓ１８を実行する。このとき、制御ユニット３０は他の処理ユニットの存在を検出できないため、手順Ｓ２０に示すとおり、システムエラーを意味する。バッファ装置１０に格納されたデータを処理できない。
【００２９】
制御ユニット３０は前記の手順Ｓ１２において、応答メッセージの受信がないとき、制御ユニット３０は手順Ｓ２２を実行し、バッファ装置１０は満杯に書き込まれたか否かを確認する。書込みフラグは”偽”と設定されているため、バッファ装置１０は一杯まで書き込まれる。一方、バッファ装置１０に格納されたデータは処理ユニットによる読み取り情報を含まれていない。バッファ装置１０に満杯までデータを書き込まないと、データはさらに書き込まれる（手順Ｓ１０）ため、再度に確認及び応答メッセージを送信する（手順Ｓ１２）。もし、バッファ装置１０はデータによって一杯に格納されたとき、制御ユニット３０は手順Ｓ２４を実行し、応答メッセージの受信を引き続き待つ。その後、制御ユニット３０は応答メッセージを受信した後、手順Ｓ２６を実行する。この手順は前記の手順Ｓ１４に同様である。もし、応答メッセージはバッファ装置１０に格納されたデータの処理を許可していたとき、手順Ｓ１６を実行する。もし、応答メッセージはバッファ装置１０に格納されたデータ処理不能と回答したとき、手順Ｓ１８の手順Ｓ２８を実行する。もし、制御ユニット３０は他の処理ユニットの存在を検出できないとき、手順Ｓ２０に示すとおり、システムエラーを意味する。処理ユニットが存在するとき、手順Ｓ２９を実行する。この手順は、手順Ｓ１９に同様である。その後、手順Ｓ２４を繰り返して実行する。
【００３０】
図８は、本発明もう一つの好ましい実施例のフロー図である。この実施例において、制御ユニット３０により、バッファ装置の書込みフラグを書込みパラメータ値に設定した後の処理フローを示す。この実施例も同じく図３と合わせて説明する。バッファ装置１０の書込みフラグ１６を書込みパラメータ値に設定したため、手順Ｓ３０に示すとおり、第１処理ユニット２０によるバッファ装置１０へのデータ書込みを許可する。その後、第２処理ユニット２２はバッファ装置１０のデータを読み込んで処理を行うほか、処理データの形態に従い、応答メッセージを送信する。手順Ｓ３２に示すとおり、制御ユニット３０は応答メッセージを受信した後、手順Ｓ３４を実行する。もし、応答メッセージは第２処理ユニット２２のバッファ装置１０に格納されたデータ処理が可能な場合、手順Ｓ３６に示すとおり、システム正常を意味する。第２処理ユニット２２はバッファ装置１０に格納されたデータの読み込み及び処理を引き継ぐ。
【００３１】
もし、応答メッセージは第２処理ユニット２２によるデータ処理不能と通知したとき、制御ユニット３０は手順Ｓ３８を実行し、他の処理ユニットの存在を検出する。この実施例において、ほかに第３処理ユニット２４の存在を検出したため、手順Ｓ３９を実行し、バッファ装置１０を実行し、第３処理ユニット２４と第２処理ユニット２２を切り換えて、第３処理ユニット２４を第２処理ユニット２２に取り変わる。切り換えた後、手順Ｓ３２を繰り返して実行する。もし、第３処理ユニット２４もバッファ装置１０のデータ処理ができないとき、システムに切り替え可能な処理ユニットが存在していないため、手順Ｓ４０に示すとおり、システムエラーを表示する。
【００３２】
前記の手順Ｓ３２において、制御ユニット３０は引き続き応答メッセージの受信がないとき、制御ユニット３０は手順Ｓ４２に示すとおり、バッファ装置１０は一杯に書き込まれたか否かを確認する。バッファ装置１０は満杯でないとき、データをさらに書き込ませて（手順Ｓ１０）、再度に応答メッセージの確認及び送信を実行する（手順Ｓ１２）。もし、バッファ装置１０は一杯に書き込まれたとき、このシステムは正常であることを判定する。その理由は、初期設定において、書込みフラグ１６を書込みパラメータ値に設定することは、このシステムいずれ一つの処理ユニットは、バッファ装置１０に格納されたデータを処理できるため、このシステムは正常であることを判定する。本発明における書込みフラグを書込みパラメータ値に設定するとき、必ずしも図５のフローでなくても良い。システムの処理ユニットはバッファ装置に格納されたデータの処理能力が確認されば、書込みフラグを書込みパラメータ値に設定することもできる。
【図面の簡単な説明】
【００３３】
【図１】公知技術のストリーミングシステムのブロック図である。
【図２】公知技術のリングバッファによるデータ格納状態の概略図である。
【図３】データを公知技術のリングバッファへの書込み状態の概略図である。
【図４】本発明の一好ましい実施例のブロック図である。
【図５】リングバッファに非書込みパラメータに設定された状態の概略図である。
【図６】本発明もう一つの好ましい実施例のブロック図である。
【図７】本発明の一好ましい実施例のフロー概略図である。
【図８】本発明もう一つの好ましい実施例のフロー図である。
【符号の説明】
【００３４】
１’  バッファ装置
１  終了指標
２  開始フラグ
４  終了フラグ
５’  開始指標
６  古いデータ
７’  終了指標
８  新しいデータ
１０’  データ
１０  バッファ装置
１２’  データ
１３  リセットフラグ
２０’  第１処理ユニット
１６  書込みフラグ
２２’  第２処理ユニット
２０  第１処理ユニット
２４’  第３処理ユニット
２２  第２処理ユニット
２６’  第４処理ユニット
２４  第３処理ユニット
３０’  第１バッファ装置
３０  制御ユニット
３２’  第２バッファ装置
４０  ダウンロードユニット
２  開始指標
５０  第１バッファ装置
５３  リセットフラグ
５６  書込みフラグ
６０  復号モジュール
６２  第１復号ユニット
６４  第２復号ユニット
６６  第３復号ユニット
７０  第２バッファ装置
８０  再生ユニット
【図１】
2008171168.tif 000003
【図２】
2008171168.tif 000004
【図３】
2008171168.tif 000005
【図４】
2008171168.tif 000006
【図５】
2008171168.tif 000007
【図６】
2008171168.tif 000008
【図７】
2008171168.tif 000009
【図８】
2008171168.tif 000010