(57)【特許請求の範囲】
【請求項１】
ＵＦＳ（Ｕｎｉｖｅｒｓａｌ  Ｆｌａｓｈ  Ｓｔｏｒａｇｅ）ホストとリンクを通じて通信する構造を有するＵＦＳ装置の作動方法において、
前記ＵＦＳ装置が、前記リンクを通じて前記ＵＦＳホストと通信する段階と、
前記ＵＦＳ装置が、前記リンクに対するウォームリセットの要否を判断する段階と、
前記ウォームリセットが必要であると判断された場合、前記ＵＦＳ装置が、前記ウォームリセットのイニシエータとして作動する段階と、
を含むことを特徴とするＵＦＳ装置の作動方法。
【請求項２】
前記判断する段階は、前記リンクを通じて受信されたデータに含まれた複数のエラービットの個数に基づいて行われることを特徴とする請求項１に記載のＵＦＳ装置の作動方法。
【請求項３】
前記ウォームリセットは、ＵｎｉＰｒｏウォームリセットであることを特徴とする請求項１に記載のＵＦＳ装置の作動方法。
【請求項４】
前記通信する段階は、
前記ＵＦＳ装置が、前記ＵＦＳホストから第１命令と第２命令とを受信し、前記第１命令と関連した第１完了応答を前記ＵＦＳホストに伝送する段階を含み、
前記ＵＦＳ装置の作動方法は、
前記ウォームリセットによって、前記リンクが再設定された後、前記ＵＦＳ装置が、前記ＵＦＳホストに伝送されていない前記第２命令と関連した第２完了応答を前記ＵＦＳホストに伝送する段階をさらに含むことを特徴とする請求項１に記載のＵＦＳ装置の作動方法。
【請求項５】
前記ＵＦＳ装置が、前記ウォームリセットのために、前記ＵＦＳホストとハンドシェイクを行う段階と、
前記ウォームリセットによって、前記リンクが再設定された後、前記ＵＦＳ装置が、前記ＵＦＳホストに伝送されていない完了応答を前記ＵＦＳホストに伝送する段階と、
をさらに含むことを特徴とする請求項１に記載のＵＦＳ装置の作動方法。
【請求項６】
前記判断する段階と前記作動する段階は、ＵＩＣレイヤによって行われることを特徴とする請求項１に記載のＵＦＳ装置の作動方法。
【請求項７】
ＵＦＳ装置とリンクを通じて通信する構造を有するＵＦＳホストの作動方法において、
入出力要求と関連した第１命令と第２命令とを前記ＵＦＳ装置に伝送する段階と、
前記ＵＦＳ装置から前記第１命令と関連した第１完了応答を受信する段階と、
前記リンクに対するウォームリセットが、前記ＵＦＳ装置によってトリガーされたということを判断する段階と、
前記判断の結果に基づいて、前記ＵＦＳ装置に対する前記ウォームリセットを行う段階と、
を含むことを特徴とするＵＦＳホストの作動方法。
【請求項８】
前記ウォームリセットによって再設定されたリンクを通じて前記ＵＦＳ装置から伝送された前記第２命令と関連した第２完了応答を受信する段階をさらに含むことを特徴とする請求項７に記載のＵＦＳホストの作動方法。
【請求項９】
前記ＵＦＳホストのＵＦＳドライバが、前記第２命令と関連した第２完了応答を設定されたタイムアウトまで受信することができなければ、前記ＵＦＳドライバが、命令キューに保存された前記第２命令を前記ＵＦＳホストのＵＦＳホストコントローラに伝送する段階と、
前記ＵＦＳホストコントローラが、前記ウォームリセットによって再設定されたリンクを通じて前記ＵＦＳ装置から前記第２完了応答を受信し、前記第２完了応答を前記ＵＦＳドライバに伝送する段階と、
前記ＵＦＳドライバが、前記第２完了応答に基づいて、前記入出力要求の完了応答を前記ＵＦＳホストのアプリケーションに伝送する段階と、
をさらに含むことを特徴とする請求項７に記載のＵＦＳホストの作動方法。
【請求項１０】
前記ＵＦＳホストのＵＦＳホストコントローラが、前記ウォームリセットの開始を前記ＵＦＳホストのＵＦＳドライバに通知する段階と、
前記ＵＦＳドライバが、命令キューに保存された前記第２命令を前記ＵＦＳホストコントローラに伝送する段階と、
前記ＵＦＳホストコントローラが、前記ウォームリセットによって再設定されたリンクを通じて前記ＵＦＳ装置から第２完了応答を受信し、前記第２完了応答を前記ＵＦＳドライバに伝送する段階と、
前記ＵＦＳドライバが、前記第２完了応答に基づいて、前記入出力要求の完了応答を前記ＵＦＳホストのアプリケーションに伝送する段階と、
をさらに含むことを特徴とする請求項７に記載のＵＦＳホストの作動方法。
【請求項１１】
前記伝送する段階は、
前記ＵＦＳホストのＵＦＳドライバが、アプリケーションから出力された前記入出力要求を前記第１命令と前記第２命令とに分割し、前記第１命令と前記第２命令とをＵＦＳホストコントローラに伝送する段階と、
前記ＵＦＳホストコントローラが、前記第１命令と前記第２命令とを前記ＵＦＳ装置に伝送する段階と、
を含むことを特徴とする請求項７に記載のＵＦＳホストの作動方法。
【請求項１２】
前記伝送する段階は、
前記ＵＦＳホストのファイルシステムがアプリケーションから出力されたファイル生成要求に応答して、前記入出力要求を生成する段階と、
前記ＵＦＳホストのＵＦＳドライバが、前記入出力要求を前記第１命令と前記第２命令とに分割し、前記第１命令と前記第２命令とをＵＦＳホストコントローラに伝送する段階と、
前記ＵＦＳホストコントローラが、前記第１命令と前記第２命令とを前記ＵＦＳ装置に伝送する段階と、
を含むことを特徴とする請求項７に記載のＵＦＳホストの作動方法。
【請求項１３】
ＵＦＳホストとリンクを通じて通信するＵＦＳ装置を含むＵＦＳシステムの作動方法において、
前記ＵＦＳ装置が、前記リンクを通じて前記ＵＦＳホストと通信する段階と、
前記ＵＦＳ装置が、前記リンクに対するウォームリセットの要否を判断する段階と、
前記ウォームリセットが必要であると判断された場合、前記ＵＦＳ装置が、前記ウォームリセットのイニシエータとして作動する段階と、
前記ＵＦＳホストが、前記リンクに対する前記ウォームリセットが前記ＵＦＳ装置によってトリガーされたということを判断する段階と、
前記トリガーされたという判断の結果に基づいて、前記ＵＦＳホストが、前記ＵＦＳ装置に対する前記ウォームリセットを行う段階と、
を含むことを特徴とするＵＦＳシステムの作動方法。
【請求項１４】
前記ウォームリセットの要否を判断する段階は、前記リンクを通じて受信されたデータに含まれた複数のエラービットの個数に基づいて行われることを特徴とする請求項１３に記載のＵＦＳシステムの作動方法。
【請求項１５】
前記ウォームリセットは、ＵｎｉＰｒｏウォームリセットであることを特徴とする請求項１３に記載のＵＦＳシステムの作動方法。
【請求項１６】
前記ＵＦＳホストが、前記ウォームリセットのために、前記ＵＦＳ装置とハンドシェイクを行う段階と、
前記ウォームリセットによって、前記リンクが再設定された後、前記ＵＦＳ装置が、前記ＵＦＳホストに伝送されていない完了応答を前記ＵＦＳホストに伝送する段階と、
をさらに含むことを特徴とする請求項１３に記載のＵＦＳシステムの作動方法。
【請求項１７】
前記通信する段階は、
前記ＵＦＳ装置が、前記ＵＦＳホストから第１命令と第２命令とを受信し、前記第１命令と関連した第１完了応答を前記ＵＦＳホストに伝送する段階を含み、
前記ＵＦＳシステムの作動方法は、
前記ウォームリセットによって、前記リンクが再設定された後、前記ＵＦＳ装置が、前記ＵＦＳホストに伝送されていない前記第２命令と関連した第２完了応答を前記ＵＦＳホストに伝送する段階をさらに含むことを特徴とする請求項１３に記載のＵＦＳシステムの作動方法。
【請求項１８】
前記通信する段階は、
前記ＵＦＳホストのＵＦＳドライバが、アプリケーションまたはファイルシステムから出力された入出力要求を前記第１命令と前記第２命令とに分割し、前記第１命令と前記第２命令とをＵＦＳホストコントローラに伝送する段階と、
前記ＵＦＳホストコントローラが、前記第１命令と前記第２命令とを前記ＵＦＳ装置に伝送する段階と、
をさらに含むことを特徴とする請求項１７に記載のＵＦＳシステムの作動方法。
【請求項１９】
前記ＵＦＳドライバが、前記第２完了応答を設定されたタイムアウトまで受信することができなければ、前記ＵＦＳドライバが、命令キューに保存された前記第２命令を前記ＵＦＳホストコントローラに伝送する段階と、
前記ＵＦＳホストコントローラが、前記ウォームリセットによって再設定されたリンクを通じて前記ＵＦＳ装置から前記第２完了応答を受信し、前記第２完了応答を前記ＵＦＳドライバに伝送する段階と、
前記ＵＦＳドライバが、前記第２完了応答に基づいて、前記入出力要求の完了応答を前記アプリケーションに伝送する段階と、
をさらに含むことを特徴とする請求項１８に記載のＵＦＳシステムの作動方法。
【請求項２０】
前記ＵＦＳホストコントローラが、前記ウォームリセットの開始を前記ＵＦＳドライバに通知する段階と、
前記ＵＦＳドライバが、命令キューに保存された前記第２命令を前記ＵＦＳホストコントローラに伝送する段階と、
前記ＵＦＳホストコントローラが、前記ウォームリセットによって再設定されたリンクを通じて前記ＵＦＳ装置から前記第２完了応答を受信し、前記第２完了応答を前記ＵＦＳドライバに伝送する段階と、
前記ＵＦＳドライバが、前記第２完了応答に基づいて、前記入出力要求の完了応答を前記ＵＦＳホストのアプリケーションに伝送する段階と、
をさらに含むことを特徴とする請求項１８に記載のＵＦＳシステムの作動方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＵＦＳ（Ｕｎｉｖｅｒｓａｌ  Ｆｌａｓｈ  Ｓｔｏｒａｇｅ）装置の作動方法に係り、特に、リンクに対するウォームリセット（ｗａｒｍ  ｒｅｓｅｔ）をトリガー（ｔｒｉｇｇｅｒ）することができるＵＦＳ装置の作動方法、ＵＦＳホストの作動方法、及びそれらを含むＵＦＳシステムの作動方法に関する。
【背景技術】
【０００２】
ＵＦＳホストとＵＦＳ装置は、リンク（ｌｉｎｋ）を通じてデータを送受信する。ＵＦＳ装置でＵＦＳ書き込み（ｗｒｉｔｅ）命令が処理される途中で、リンクを通じるデータ送受信が不可能な状況が発生すれば、ＵＦＳ装置は、書き込み命令の処理が完了されたことを示す完了応答をリンクを通じてＵＦＳホストに伝送することができない。
この際、ＵＦＳホストのＵＦＳドライバは、指定されたタイムアウト（ｔｉｍｅ−ｏｕｔ）まで完了応答を待つ。ＵＦＳドライバが、完了応答を受信することができなければ、装置タイムアウトエラー（ｔｉｍｅ−ｏｕｔ  ｅｒｒｏｒ）が発生する。ＵＦＳドライバは、書き込み命令の失敗を示す書き込み命令失敗をアプリケーション（ａｐｐｌｉｃａｔｉｏｎ）に伝送する。この場合、アプリケーションが要求した書き込み命令が正常に処理されていないので、ＵＦＳ装置を含むＵＦＳシステムの正常作動は不可能である。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本発明は、上記従来のＵＦＳ装置の作動方法における問題点に鑑みてなされたものであって、本発明の目的は、リンクを通じてデータを伝送することができない状況が発生する場合、状況を自動で感知し、感知の結果によって、ＵＦＳ装置に対するウォームリセットをトリガーすることができるＵＦＳ装置の作動方法、ＵＦＳホストの作動方法を提供するところにある。
【課題を解決するための手段】
【０００４】
上記目的を達成するためになされた本発明によるＵＦＳホストとリンクを通じて通信する構造を有するＵＦＳ装置の作動方法は、前記ＵＦＳ装置が、前記リンクを通じて前記ＵＦＳホストと通信する段階と、前記ＵＦＳ装置が、前記リンクに対するウォームリセットの要否を判断する段階と、前記ウォームリセットが必要であると判断された場合、前記ＵＦＳ装置が、前記ウォームリセットのイニシエータ（ｉｎｉｔｉａｔｏｒ）として作動する段階と、を含むことを特徴とする。
【０００５】
前記判断する段階は、前記リンクを通じて受信されたデータに含まれた複数のエラービットの個数に基づいて行われることが好ましい。
前記ウォームリセットは、ＵｎｉＰｒｏウォームリセットであることが好ましい。
前記通信する段階は、前記ＵＦＳ装置が、前記ＵＦＳホストから第１命令と第２命令とを受信し、前記第１命令と関連した第１完了応答を前記ＵＦＳホストに伝送する段階を含み、前記ＵＦＳ装置の作動方法は、前記ウォームリセットによって、前記リンクが再設定された後、前記ＵＦＳ装置が、前記ＵＦＳホストに伝送されていない前記第２命令と関連した第２完了応答を前記ＵＦＳホストに伝送する段階をさらに含むことが好ましい。
【０００６】
前記ＵＦＳ装置の作動方法は、前記ＵＦＳ装置が、前記ウォームリセットのために、前記ＵＦＳホストとハンドシェイクを行う段階と、前記ウォームリセットによって、前記リンクが再設定された後、前記ＵＦＳ装置が、前記ＵＦＳホストに伝送されていない完了応答を前記ＵＦＳホストに伝送する段階と、をさらに含むことが好ましい。
前記判断する段階と前記作動する段階は、ＵＩＣ（ＵＦＳ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）レイヤによって行われることが好ましい。
【０００７】
上記目的を達成するためになされた本発明によるＵＦＳ装置とリンクを通じて通信する構造を有するＵＦＳホストの作動方法は、入出力要求と関連した第１命令と第２命令とを前記ＵＦＳ装置に伝送する段階と、前記ＵＦＳ装置から前記第１命令と関連した第１完了応答を受信する段階と、前記リンクに対するウォームリセットが、前記ＵＦＳ装置によってトリガーされたということを判断する段階と、前記判断の結果に基づいて、前記ＵＦＳ装置に対する前記ウォームリセットを行う段階と、を含むことを特徴とする。
【０００８】
前記ＵＦＳホストの作動方法は、前記ウォームリセットによって再設定されたリンクを通じて前記ＵＦＳ装置から伝送された前記第２命令と関連した第２完了応答を受信する段階をさらに含むことが好ましい。
前記ＵＦＳホストの作動方法は、前記ＵＦＳホストのＵＦＳドライバが、前記第２命令と関連した第２完了応答を設定されたタイムアウトまで受信することができなければ、前記ＵＦＳドライバが、命令キューに保存された前記第２命令を前記ＵＦＳホストのＵＦＳホストコントローラに伝送する段階と、前記ＵＦＳホストコントローラが、前記ウォームリセットによって再設定されたリンクを通じて前記ＵＦＳ装置から前記第２完了応答を受信し、前記第２完了応答を前記ＵＦＳドライバに伝送する段階と、前記ＵＦＳドライバが、前記第２完了応答に基づいて、前記入出力要求の完了応答を前記ＵＦＳホストのアプリケーションに伝送する段階と、をさらに含むことが好ましい。
【０００９】
前記ＵＦＳホストの作動方法は、前記ＵＦＳホストのＵＦＳホストコントローラが、前記ウォームリセットの開始を前記ＵＦＳホストのＵＦＳドライバに通知する段階と、前記ＵＦＳドライバが、命令キューに保存された前記第２命令を前記ＵＦＳホストコントローラに伝送する段階と、前記ＵＦＳホストコントローラが、前記ウォームリセットによって再設定されたリンクを通じて前記ＵＦＳ装置から第２完了応答を受信し、前記第２完了応答を前記ＵＦＳドライバに伝送する段階と、前記ＵＦＳドライバが、前記第２完了応答に基づいて、前記入出力要求の完了応答を前記ＵＦＳホストのアプリケーションに伝送する段階と、をさらに含むことが好ましい。
【００１０】
前記伝送する段階は、前記ＵＦＳホストのＵＦＳドライバが、アプリケーションから出力された前記入出力要求を前記第１命令と前記第２命令とに分割し、前記第１命令と前記第２命令とをＵＦＳホストコントローラに伝送する段階と、前記ＵＦＳホストコントローラが、前記第１命令と前記第２命令とを前記ＵＦＳ装置に伝送する段階と、を含むことが好ましい。
【００１１】
前記伝送する段階は、前記ＵＦＳホストのファイルシステムがアプリケーションから出力されたファイル生成要求に応答して、前記入出力要求を生成する段階と、前記ＵＦＳホストのＵＦＳドライバが、前記入出力要求を前記第１命令と前記第２命令とに分割し、前記第１命令と前記第２命令とをＵＦＳホストコントローラに伝送する段階と、前記ＵＦＳホストコントローラが、前記第１命令と前記第２命令とを前記ＵＦＳ装置に伝送する段階と、を含むことが好ましい。
【００１２】
上記目的を達成するためになされた本発明によるＵＦＳホストとリンクを通じて通信するＵＦＳ装置を含むＵＦＳシステムの作動方法は、前記ＵＦＳ装置が、前記リンクを通じて前記ＵＦＳホストと通信する段階と、前記ＵＦＳ装置が、前記リンクに対するウォームリセットの要否を判断する段階と、前記ウォームリセットが必要であると判断された場合、前記ＵＦＳ装置が、前記ウォームリセットのイニシエータとして作動する段階と、前記ＵＦＳホストが、前記リンクに対する前記ウォームリセットが前記ＵＦＳ装置によってトリガーされたということを判断する段階と、前記トリガーされたという判断の結果に基づいて、前記ＵＦＳホストが、前記ＵＦＳ装置に対する前記ウォームリセットを行う段階と、を含むことを特徴とする。
【００１３】
前記ウォームリセットは、ＵｎｉＰｒｏウォームリセットであることが好ましい。
前記ＵＦＳシステムの作動方法は、前記ＵＦＳホストが、前記ウォームリセットのために、前記ＵＦＳ装置とハンドシェイクを行う段階と、前記ウォームリセットによって、前記リンクが再設定された後、前記ＵＦＳ装置が、前記ＵＦＳホストに伝送されていない完了応答を前記ＵＦＳホストに伝送する段階と、をさらに含むことが好ましい。
【発明の効果】
【００１４】
本発明の実施形態によるＵＦＳ装置は、ＵＦＳホストとＵＦＳ装置との間のリンクに対するリセットのイニシエータとして作動することができる。本発明の実施形態によるＵＦＳ装置は、ＵＦＳ装置でエラーが発生するとしても、ＵＦＳホストをしてＵＦＳ装置に対するＵｎｉＰｒｏウォームリセットをトリガーさせうる。ＵｎｉＰｒｏウォームリセットによって、ＵＦＳホストとＵＦＳ装置との間のリンクが再設定されることによって、ＵＦＳホストのＵＦＳドライバは、タイムアウトの発生を回避することができる。したがって、ＵＦＳドライバは、処理されていない各ＵＦＳ命令を完了することができるので、ＵＦＳホストのアプリケーションは、正常に書き込み要求を安定して完了することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施形態によるＵＦＳシステムを説明するためのブロック図である。
【図２】図１に示すＵＦＳシステムの作動を説明するためのフローチャートである。
【図３】従来のＵＦＳシステムに含まれたＵＦＳ装置でエラーが発生した場合、ＵＦＳシステムの作動を説明するためのフローチャートである。
【図４】図１に示すＵＦＳ装置でエラーが発生した場合、図１に示すＵＦＳシステムの作動を説明するためのフローチャートである。
【図５】本発明の実施形態によるＵＦＳシステムを説明するためのブロック図である。
【図６】図５に示すＵＦＳ装置でエラーが発生した場合、図１に示すＵＦＳシステムの作動を説明するためのフローチャートである。
【図７】図１に示すＵＦＳシステムでリンクに対するウォームリセットが行われる過程を説明するためのフローチャートである。
【図８】図１に示すＵＦＳシステムでエラーが発生した時、リンクに対するウォームリセットが行われる過程を説明するためのフローチャートである。
【図９】図１に示すＵＦＳシステムに対するリセット状態を示すテーブルである。
【図１０】本発明の実施形態によるＵＦＳシステムを説明するためのブロック図である。
【図１１】本発明の実施形態によるＵＦＳシステムを説明するためのブロック図である。
【発明を実施するための形態】
【００１６】
次に、本発明に係るＵＦＳ装置の作動方法、ＵＦＳホストの作動方法、及びそれらを含むシステムの作動方法を実施するための形態の具体例を図面を参照しながら説明する。
本明細書は、ｈｔｔｐｓ：／／ｗｗｗ．ｊｅｄｅｃ．ｏｒｇで提供するＵｎｉｖｅｒｓａｌ  Ｆｌａｓｈ  Ｓｔｏｒａｇｅ（ＵＦＳ）Ｖｅｒｓｉｏｎ  ２．０、すなわち、ＪＥＳＤ２２０Ｂをレファレンスとして含む。したがって、本明細書に記載の用語と定義（ｔｅｒｍｓ  ａｎｄ  ｄｅｆｉｎｉｔｉｏｎｓ）は、ＪＥＳＤ２２０Ｂに記載の定義と用語と同じ意味を有する。
【００１７】
図１は、本発明の実施形態によるＵＦＳシステムを説明するためのブロック図を示す。図１を参照すると、ＵＦＳシステム１００Ａは、ＵＦＳインターフェース２０１を通じて接続されたＵＦＳホスト２００ＡとＵＦＳ装置３００とを含みうる。ＵＦＳ装置３００が、ＵＦＳインターフェース２０１を通じるＵＦＳホスト２００Ａとの信号送受信ができない場合、ＵＦＳ装置３００は、ＵｎｉＰｒｏウォームリセットのイニシエータとして使われる。
【００１８】
ＵＦＳホスト２００Ａは、アプリケーション２１０、ＵＦＳドライバ２２０、ＵＦＳホストコントローラ２３０、及びＵＩＣレイヤ２４０を含みうる。
アプリケーション２１０は、ＵＦＳ装置３００と通信を所望するプログラム（または、ソフトウェア）を意味する。アプリケーション２１０は、ＵＦＳドライバ２２０を使ってＵＦＳ装置３００との通信が可能である。アプリケーション２１０は、ＵＦＳ装置３００に対する入出力のために、入出力要求ＩＯＲをＵＦＳドライバ２２０に伝送しうる。入出力要求ＩＯＲは、読み取り（ｒｅａｄ）要求、書き込み要求、または廃棄（ｄｉｓｃａｒｄ）要求を意味するが、これに限定されるものではない。
【００１９】
ＵＦＳドライバ２２０は、ＵＦＳ−ＨＣＩ（ＵＦＳ  Ｈｏｓｔ  Ｃｏｎｔｒｏｌｌｅｒ  Ｉｎｔｅｒｆａｃｅ）を通じてＵＦＳホストコントローラ２３０を管理することができる。ＵＦＳ−ＨＣＩは、ＵＦＳホストコントローラ２３０に露出された（ｅｘｐｏｓｅｄ）レジスタのセット２３１を意味する。例えば、レジスタのセット２３１は、少なくとも１つの命令を保存する命令キュー（ｑｕｅｕｅ）として使われる。
ＵＦＳドライバ２２０は、アプリケーション２１０によって生成された入出力要求ＩＯＲをＵＦＳスペック（ｓｐｅｃｉｆｉｃａｔｉｏｎ）で明示した少なくとも１つのＵＦＳ命令に変換し、変換された少なくとも１つのＵＦＳ命令をＵＦＳホストコントローラ２３０に出力することができる。
【００２０】
ＵＦＳホストコントローラ２３０は、変換された少なくとも１つのＵＦＳ命令を、ＵＩＣレイヤ２４０とＵＦＳインターフェース２０１とを通じてＵＦＳ装置３００のＵＩＣレイヤ３１０に伝送しうる。ＵＦＳインターフェース２０１は、ＵＦＳホスト２００ＡとＵＦＳ装置３００とで物理的に連結する。
ＵＩＣレイヤ２４０は、ＭＩＰＩ  ＵｎｉＰｒｏ２４１とＭＩＰＩ  Ｍ−ＰＨＹ２４３とを含みうる。ＵＩＣレイヤ３１０は、ＭＩＰＩ  Ｍ−ＰＨＹ３１１とＭＩＰＩ  ＵｎｉＰｒｏ３１３とを含みうる。各ＭＩＰＩ  Ｍ−ＰＨＹ（２４３、３１１）は、伝送ラインと受信ライン対とを含む差動デュアル単一物理階層（ｄｉｆｆｅｒｅｎｔｉａｌ  ｄｕａｌ  ｓｉｍｐｌｅｘ  ｐｈｙｓｉｃａｌ  ｌａｙｅｒ）であり得る。
【００２１】
ＵＦＳインターフェース２０１は、マルチプルレーン（ｍｕｌｔｉｐｌｅ  ｌａｎｅｓ）を支援することができる。各レーンは、差動対として具現可能である。基本的な構成は、１つの伝送レーン（ｌａｎｅ）と１つの受信レーンとに基づく。
ＵＦＳインターフェース２０１は、基準クロックＲＥＦ＿ＣＬＫを伝送するライン、ＵＦＳ装置３００に対するハードウェアリセット信号ＲＥＳＥＴ＿ｎを伝送するライン、差動入力信号の対（ＤＩＮ＿ｔ、ＤＩＮ＿ｃ）を伝送する複数のライン、及び差動出力信号の対（ＤＯＵＴ＿ｔ、ＤＯＵＴ＿ｃ）を伝送する複数のラインを含みうる。例えば、差動出力信号の対（ＤＯＵＴ＿ｔ、ＤＯＵＴ＿ｃ）の伝送に関連した複数のラインは、第１リンクＬＩＮＫ１とし、差動入力信号の対（ＤＩＮ＿ｔ、ＤＩＮ＿ｃ）の伝送に関連した複数のラインは、第２リンクＬＩＮＫ２とする。
【００２２】
ＵＦＳインターフェース２０１は、リンクと呼ばれ、リンクは、第１リンクＬＩＮＫ１及び／または第２リンクＬＩＮＫ２を含む。ＵＦＳ装置３００は、変換された少なくとも１つのＵＦＳ命令に基づいて入出力作動を行い、入出力作動が完了されれば、完了応答をＵＦＳホスト２００Ａに伝送しうる。
ＵＦＳ装置３００は、メモリカード、複数のエンベデッドブータブル（ｅｍｂｅｄｄｅｄ  ｂｏｏｔａｂｌｅ）大量保存装置、または複数の入出力装置などとして具現可能である。ＵＦＳ装置３００は、複数の論理ユニット３２０−０〜３２０−Ｎ、装置マネージャー３３０、複数のデスクリプタ３４０、及び複数のメモリ装置３５０−０〜３５０−Ｎを含みうる。
【００２３】
複数のメモリ装置３５０−０〜３５０−Ｎのそれぞれは、メモリセルアレイとメモリセルアレイの作動を制御する制御回路とを含みうる。メモリセルアレイは、２次元メモリセルアレイまたは３次元メモリセルアレイを含みうる。２次元メモリセルアレイまたは３次元メモリセルアレイは、複数のメモリセルを含み、複数のメモリセルのそれぞれは、１ビットの情報または２ビット以上の情報を保存することができる。
３次元メモリセルアレイは、シリコン基板上に配されたアクティブ領域を有する複数のメモリセルのアレイの１つまたはそれ以上の物理的なレベル内でモノリシックに（ｍｏｎｏｌｉｔｈｉｃａｌｌｙ）形成され、複数のメモリセルの作動に関連した回路を含みうる。この回路は、基板の内部または上に形成されうる。
【００２４】
モノリシック（ｍｏｎｏｌｉｔｈｉｃ）という用語は、アレイの各レベルのレイヤ（ｌａｙｅｒｓ）が、アレイの各下部レベルのレイヤに直接蒸着されることを意味する。３次元メモリセルアレイは、少なくとも１つのメモリセルが他のメモリセルの上に位置するように垂直に配向される垂直ＮＡＮＤストリング（ｓｔｒｉｎｇ）を含みうる。前記少なくとも１つのメモリセルは、電荷トラップレイヤ（ｃｈａｒｇｅ  ｔｒａｐ  ｌａｙｅｒ）を含みうる。
例えば、ＵＦＳ装置コントローラは、複数の論理ユニット３２０−０〜３２０−Ｎ、装置マネージャー３３０、及び複数のデスクリプタ３４０を含みうる。例えば、ＵＦＳ装置３００は、８つの論理ユニットを含みうる。論理ユニットは、バス装置内で所定の機能を行い、バス装置内で特別な空間または構成をアドレス（ａｄｄｒｅｓｓ）するバス装置の内部エンティティ（ｉｎｔｅｒｎａｌ  ｅｎｔｉｔｙ）である。
【００２５】
装置マネージャー３３０は、複数の論理ユニット３２０−０〜３２０−Ｎのそれぞれが、複数のメモリ装置３５０−０〜３５０−Ｎのそれぞれに対して読み取りまたは書き込みのような機能を行う間に、複数の論理ユニット３２０−０〜３２０−Ｎのそれぞれに対して電力管理のような装置レベル機能を行うことができる。
複数のデスクリプタ３４０は、複数の論理ユニット３２０−０〜３２０−Ｎのそれぞれの情報と関連した構成要素の保存を意味する。
【００２６】
図２は、図１に示すＵＦＳシステムの作動を説明するためのフローチャートである。図２を参照すると、アプリケーション２１０は、入出力要求、例えば、書き込み要求をＵＦＳドライバ２２０に伝送しうる（ステップＳ１１０）。ＵＦＳドライバ２２０は、書き込み要求を複数のＵＦＳ書き込み命令に分割することができる。
複数のＵＦＳ書き込み命令のそれぞれは、ＵＦＳ装置３００に含まれた複数のメモリ装置３５０−０〜３５０−Ｎによって定義されたメモリ領域の開始アドレス、書き込みデータの大きさ、及び論理ユニットの位置を含みうる。実施形態によって、複数のＵＦＳ書き込み命令のそれぞれは、書き込みデータを含む命令と定義される。本明細書で、書き込み命令が書き込みデータを含むものと説明したが、書き込み命令と書き込みデータは、互いに分離可能であることを理解しなければならない。
【００２７】
ＵＦＳホスト２００Ａ、例えば、アプリケーション２１０が要求するデータ（例えば、書き込みデータ）の大きさが、ＵＦＳ装置３００によって処理される単位処理大きさよりも大きい時、ＵＦＳドライバ２２０は、書き込み要求を複数のＵＦＳ書き込み命令に分割することができる。分割された複数のＵＦＳ書き込み命令のそれぞれに含まれた、または分割された複数のＵＦＳ書き込み命令のそれぞれによって処理されるデータの大きさは、互いに同一または異なることもある。
【００２８】
ＵＦＳドライバ２２０は、分割された複数のＵＦＳ書き込み命令Ｗｒｉｔｅ  ＬＢＡ＃１００、Ｗｒｉｔｅ  ＬＢＡ＃１０１、及びＷｒｉｔｅ  ＬＢＡ＃１０２のそれぞれをＵＦＳホストコントローラ２３０に順次に伝送しうる（ステップＳ１２０−１、ステップＳ１２０−２、及びステップＳ１２０−３）。図２では、１つの書き込み要求が、３つのＵＦＳ書き込み命令に分割された実施形態を示す。
ＵＦＳホストコントローラ２３０は、複数のＵＦＳ書き込み命令Ｗｒｉｔｅ  ＬＢＡ＃１００、Ｗｒｉｔｅ  ＬＢＡ＃１０１、及びＷｒｉｔｅ  ＬＢＡ＃１０２のそれぞれをＵＩＣレイヤ２４０とリンク２０１を通じてＵＩＣレイヤ３１０に順次に伝送しうる（ステップＳ１３０−１、ステップＳ１３０−２、及びステップＳ１３０−３）。
【００２９】
ＵＦＳ装置３００は、各ＵＦＳ書き込み命令Ｗｒｉｔｅ  ＬＢＡ＃１００、Ｗｒｉｔｅ  ＬＢＡ＃１０１、及びＷｒｉｔｅ  ＬＢＡ＃１０２を処理し、処理済みの各ＵＦＳ書き込み命令Ｗｒｉｔｅ  ＬＢＡ＃１００、Ｗｒｉｔｅ  ＬＢＡ＃１０１、及びＷｒｉｔｅ  ＬＢＡ＃１０２に対する各完了応答Ｗｒｉｔｅ  ＬＢＡ＃１００  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅ、Ｗｒｉｔｅ  ＬＢＡ＃１０１  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅ、及びＷｒｉｔｅ  ＬＢＡ＃１０２  Ｃｏｍｐｌｅｔｅ  ＲｅｓｐｏｎｓｅをＵＩＣレイヤ３１０とリンク２０１を通じてＵＩＣレイヤ２４０に伝送しうる（ステップＳ１４０−１、ステップＳ１４０−２、及びステップＳ１４０−３）。
【００３０】
ＵＦＳホストコントローラ２３０は、ＵＩＣレイヤ２４０から伝送された各完了応答Ｗｒｉｔｅ  ＬＢＡ＃１００  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅ、Ｗｒｉｔｅ  ＬＢＡ＃１０１  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅ、及びＷｒｉｔｅ  ＬＢＡ＃１０２  Ｃｏｍｐｌｅｔｅ  ＲｅｓｐｏｎｓｅをＵＦＳドライバ２２０に伝送しうる（ステップＳ１５０−１、ステップＳ１５０−２、及びステップＳ１５０−３）。ＵＦＳドライバ２２０は、複数の完了応答Ｗｒｉｔｅ  ＬＢＡ＃１００  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅ、Ｗｒｉｔｅ  ＬＢＡ＃１０１  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅ、及びＷｒｉｔｅ  ＬＢＡ＃１０２  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅがいずれも受信されると、書き込み要求に対する書き込み要求完了をアプリケーション２１０に伝送しうる（ステップＳ１６０）。図２では、正常な入出力シナリオが示されている。
【００３１】
図３は、従来のＵＦＳシステムに含まれたＵＦＳ装置でエラーが発生した場合、ＵＦＳシステムの作動を説明するためのフローチャートである。図２と図３とを参照すると、図３に示したＵＦＳ装置は、図４を参照して後述するＵＦＳ装置３００とは異なって、ウォームリセットをトリガーすることができない。すなわち、従来のＵＦＳ装置は、ＵｎｉＰｒｏウォームリセットのイニシエータとして使用することができない。
【００３２】
図３を参照すると、ＵＦＳ書き込み命令Ｗｒｉｔｅ  ＬＢＡ＃１０１、またはＷｒｉｔｅ  ＬＢＡ＃１０２が処理される途中でエラー（例えば、装置重大なエラー（ｄｅｖｉｃｅ  ｃｒｉｔｉｃａｌ  ｅｒｒｏｒ））が発生すると（ステップＳ２１０）、ＵＦＳ装置は、各完了応答Ｗｒｉｔｅ  ＬＢＡ＃１０１  Ｃｏｍｐｌｅｔｅ  ＲｅｓｐｏｎｓｅまたはＷｒｉｔｅ  ＬＢＡ＃１０２  Ｃｏｍｐｌｅｔｅ  ＲｅｓｐｏｎｓｅをＵＦＳホスト２００Ａに伝送することができない。
【００３３】
ＵＦＳホスト２００ＡのＵＦＳドライバ２２０は、指定されたタイムアウトまで各完了応答Ｗｒｉｔｅ  ＬＢＡ＃１０１  Ｃｏｍｐｌｅｔｅ  ＲｅｓｐｏｎｓｅまたはＷｒｉｔｅ  ＬＢＡ＃１０２  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅを待つ。ＵＦＳドライバ２２０が、各完了応答Ｗｒｉｔｅ  ＬＢＡ＃１０１  Ｃｏｍｐｌｅｔｅ  ＲｅｓｐｏｎｓｅまたはＷｒｉｔｅ  ＬＢＡ＃１０２  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅを受信することができなければ、装置タイムアウトエラーが発生する（ステップＳ２２０）。したがって、ＵＦＳドライバ２２０は、書き込み要求失敗をアプリケーション２１０に伝送しうる（ステップＳ２３０）。この場合、アプリケーション２１０が要求した書き込み要求が正常に処理されていないので、従来のＵＦＳ装置を含む従来のＵＦＳシステムの正常作動は不可能である。
【００３４】
このエラーは、ＭＩＰＩ  Ｍ−ＰＨＹ２４３及び／またはＭＩＰＩ  Ｍ−ＰＨＹ３１１で問題または障害が発生して、正常なデータ送受信ができない場合、リンク２０１で問題または障害が発生して、正常なデータ送受信ができない場合、及び／または各ＭＩＰＩ  Ｍ−ＰＨＹ（２４３、３１１）でデータに含まれた複数のエラービットの個数が増加して、リンク２０１を通じるデータ送受信ができない場合を含みうる。
【００３５】
図４は、図１に示すＵＦＳ装置でエラーが発生した場合、図１に示すＵＦＳシステムの作動を説明するためのフローチャートである。
図１、図３、及び図４を参照すると、ＵＦＳドライバ２２０は、各ＵＦＳ書き込み命令Ｗｒｉｔｅ  ＬＢＡ＃１００、Ｗｒｉｔｅ  ＬＢＡ＃１０１、及びＷｒｉｔｅ  ＬＢＡ＃１０２を命令キュー２３１に保存することができる。
【００３６】
ＵＦＳ書き込み命令Ｗｒｉｔｅ  ＬＢＡ＃１００に対する処理が完了されると（ステップＳ１３０−３）、ＵＦＳ装置３００は、完了応答Ｗｒｉｔｅ  ＬＢＡ＃１００  Ｃｏｍｐｌｅｔｅ  ＲｅｓｐｏｎｓｅをＵＦＳホストコントローラ２３０に伝送しうる（ステップＳ１４０−１）。ＵＦＳホストコントローラ２３０は、完了応答Ｗｒｉｔｅ  ＬＢＡ＃１００  Ｃｏｍｐｌｅｔｅ  ＲｅｓｐｏｎｓｅをＵＦＳドライバ２２０に伝送しうる（ステップＳ１５０−１）。
【００３７】
完了応答Ｗｒｉｔｅ  ＬＢＡ＃１００  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅが受信されると、ＵＦＳドライバ２２０は、命令キュー２３１に保存され、ＵＦＳ書き込み命令Ｗｒｉｔｅ  ＬＢＡ＃１００の処理の有無と関連したフラグ（Ｆｌａｇ）をロジック０からロジック１に変更することができる。ロジック０は、ＵＦＳ書き込み命令に対する完了応答がまだ受信されていないということを示し、ロジック１は、ＵＦＳ書き込み命令に対する完了応答が既に受信されたということを示すと仮定する。
【００３８】
ＵＦＳ書き込み命令Ｗｒｉｔｅ  ＬＢＡ＃１０１、またはＷｒｉｔｅ  ＬＢＡ＃１０２が処理される途中でエラーが発生すると（ステップＳ２１０）、ＵＦＳ装置３００、例えば、ＵＩＣレイヤ３１０は、リンク２０１に対するウォームリセット（例えば、ＵｎｉＰｒｏウォームリセット）の要否を判断することができる。ウォームリセットが必要であると判断されると、ＵＦＳ装置３００、例えば、ＵＩＣレイヤ３１０は、ウォームリセットのためのイニシエータとして作動することができる。すなわち、本発明の実施形態によるＵＦＳ装置３００は、ウォームリセットをトリガーすることができる。
【００３９】
ＵＦＳホスト２００Ａは、リンク２０１に対するウォームリセットがＵＦＳ装置３００によってトリガーされたということを判断し、判断の結果に基づいて、ＵＦＳ装置３００に対するウォームリセット、例えば、ＵｎｉＰｒｏウォームリセットを行うことができる（ステップＳ３１０）。ＵＦＳ装置３００は、リンク２０１に含まれた伝送ラインをＵＦＳホスト２００Ａから分離した後、再び接続する過程を通じてＵｎｉＰｒｏウォームリセットをトリガーすることができる。
ＵＦＳ装置３００に対するウォームリセットが行われることによって、ＵＦＳ装置３００は初期化されうる（ステップＳ３２０）。すなわち、リンク２０１は再設定しうる（ステップＳ３２０）。ＵＦＳドライバ２２０は、命令キュー２３１を参照して、複数のＵＦＳ書き込み命令Ｗｒｉｔｅ  ＬＢＡ＃１０１、Ｗｒｉｔｅ  ＬＢＡ＃１０２をＵＦＳホストコントローラ２３０に順次に伝送しうる（ステップＳ３３０−１とステップＳ３３０−２）。
【００４０】
実施形態によって、ＵＦＳドライバ２２０は、各ＵＦＳ書き込み命令Ｗｒｉｔｅ  ＬＢＡ＃１０１、Ｗｒｉｔｅ  ＬＢＡ＃１０２に対する各完了応答Ｗｒｉｔｅ  ＬＢＡ＃１０１  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅ、Ｗｒｉｔｅ  ＬＢＡ＃１０２  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅのタイムアウトを用いて、複数のＵＦＳ書き込み命令Ｗｒｉｔｅ  ＬＢＡ＃１０１、Ｗｒｉｔｅ  ＬＢＡ＃１０２をＵＦＳホストコントローラ２３０に順次に伝送しうる（ステップＳ３３０−１とステップＳ３３０−２）。
【００４１】
実施形態によって、ＵＦＳホストコントローラ２３０は、ＵｎｉＰｒｏウォームリセットの開始ＩＮＩをＵＦＳドライバ２２０に通知することができる（ステップＳ３１５）。ＵＦＳドライバ２２０は、ＵｎｉＰｒｏウォームリセットの開始ＩＮＩに基づいて命令キュー２３１を参照し、参照の結果によって、複数のＵＦＳ書き込み命令Ｗｒｉｔｅ  ＬＢＡ＃１０１、Ｗｒｉｔｅ  ＬＢＡ＃１０２をＵＦＳホストコントローラ２３０に順次に伝送しうる（ステップＳ３３０−１とステップＳ３３０−２）。この際、各ＵＦＳ書き込み命令Ｗｒｉｔｅ  ＬＢＡ＃１０１、Ｗｒｉｔｅ  ＬＢＡ＃１０２に対する各フラグは、ロジック０である。
【００４２】
ＵＦＳ装置３００は、各ＵＦＳ書き込み命令Ｗｒｉｔｅ  ＬＢＡ＃１０１、Ｗｒｉｔｅ  ＬＢＡ＃１０２に対する各完了応答Ｗｒｉｔｅ  ＬＢＡ＃１０１  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅ、Ｗｒｉｔｅ  ＬＢＡ＃１０２  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅを再設定されたリンク２０１を通じてＵＦＳホスト２００Ａに伝送しうる（ステップＳ３４０−１とステップＳ３４０−２）。
ＵＦＳホストコントローラ２３０は、ＵＩＣレイヤ２４０から伝送された各完了応答Ｗｒｉｔｅ  ＬＢＡ＃１０１  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅ、Ｗｒｉｔｅ  ＬＢＡ＃１０２  Ｃｏｍｐｌｅｔｅ  ＲｅｓｐｏｎｓｅをＵＦＳドライバ２２０に伝送しうる（ステップＳ３５０−１とステップＳ３５０−２）。
【００４３】
各完了応答Ｗｒｉｔｅ  ＬＢＡ＃１０１  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅ、Ｗｒｉｔｅ  ＬＢＡ＃１０２  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅが受信されると、ＵＦＳドライバ２２０は、命令キュー２３１に保存された各ＵＦＳ書き込み命令Ｗｒｉｔｅ  ＬＢＡ＃１０１、Ｗｒｉｔｅ  ＬＢＡ＃１０２に該当する各フラグをロジック（ｌｏｇｉｃ）０からロジック１に変更することができる。
ＵＦＳドライバ２２０は、命令キュー２３１に保存された各フラグのビット値に基づいて書き込み要求と関連したあらゆるＵＦＳ命令の実行が完了されたということを判断し、書き込み要求の完了を示す書き込み要求完了をアプリケーション２１０に伝送しうる（ステップＳ３６０）。
【００４４】
ＵＦＳ装置３００でエラーが発生するとしても（ステップＳ２１０）、ＵｎｉＰｒｏウォームリセットのイニシエータとして使われるＵＦＳ装置３００は、ＵＦＳ装置３００に対するＵｎｉＰｒｏウォームリセットをトリガーすることができる。ＵｎｉＰｒｏウォームリセットによって、ＵＦＳホスト２００ＡとＵＦＳ装置３００との間のリンク２０１が再設定されることによって、ＵＦＳドライバ２２０は、タイムアウトの発生を回避することができる。したがって、ＵＦＳドライバ２２０は、処理されていない各ＵＦＳ命令を完了することができるので、アプリケーション２１０は、正常に書き込み要求を安定して完了することができる効果がある。
【００４５】
図５は、本発明の実施形態によるＵＦＳシステムを説明するためのブロック図である。図１と図５とを参照すると、ＵＦＳホスト２００Ｂが、ファイルシステム２１５をさらに含むことを除けば、図１に示すＵＦＳシステム１００Ａの構造と作動は、図５に示すＵＦＳシステム１００Ｂの構造と作動と同一または類似している。
【００４６】
図６は、図５に示すＵＦＳ装置でエラーが発生した場合、図１に示すＵＦＳシステムの作動を説明するためのフローチャートである。図４、図５、及び図６を参照すると、アプリケーション２１０は、データ入出力のためにファイル生成要求をファイルシステム（ｆｉｌｅ  ｓｙｓｔｅｍ）２１５に伝送しうる（ステップＳ１０５）。ファイルシステム２１５は、ファイル生成要求に応答して入出力要求、例えば、書き込み要求をＵＦＳドライバ２２０に伝送しうる（ステップＳ１１０−１）。
【００４７】
図７は、図１に示すＵＦＳシステムでリンクに対するウォームリセットが行われる過程を説明するためのフローチャートである。図１から図７を参照すると、ＵＦＳホスト２００Ａまたは２００Ｂ（以下では総称して２００と記す）は、リンク２０１を通じてＵＦＳ装置３００と通信することができる（ステップＳ４１０）。
例えば、リンク２０１を通じる通信が可能である時、ＵＦＳホスト２００は、各ＵＦＳ書き込み命令Ｗｒｉｔｅ  ＬＢＡ＃１００、Ｗｒｉｔｅ  ＬＢＡ＃１０１、及びＷｒｉｔｅ  ＬＢＡ＃１０２をリンク２０１を通じてＵＦＳ装置３００に伝送し、ＵＦＳ装置３００は、完了応答Ｗｒｉｔｅ  ＬＢＡ＃１００  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅをリンク２０１を通じてＵＦＳホスト２００に伝送しうる（ステップＳ４１０）。
【００４８】
ＵＦＳ装置３００は、リンク２０１に対するウォームリセットの要否を判断することができる（ステップＳ４２０）。ウォームリセットが不要であれば（ステップＳ４２０のＮＯ）、ＵＦＳホスト２００は、リンク２０１を通じてＵＦＳ装置３００と通信することができる（ステップＳ４１０）。しかし、ウォームリセットが必要であれば（ステップＳ４２０のＹＥＳ）、ＵＦＳ装置３００は、ウォームリセット、例えば、ＵｎｉＰｒｏウォームリセットのイニシエータとして作動することができる（ステップＳ４３０）。
ＵＦＳホスト２００は、リンク２０１に対するウォームリセットがＵＦＳ装置３００によってトリガーされたということを判断し、判断の結果によって、リンク２０１を再設定する作動をＵＦＳ装置３００と共に行うことができる（ステップＳ４４０）。すなわち、ＵＦＳホスト２００は、ＵＦＳ装置３００とハンドシェイク（ｈａｎｄｓｈａｋｅｓ）を通じてＵＦＳ装置３００に対するウォームリセットを行うことができる（ステップＳ４４０）。
【００４９】
ウォームリセットによってリンク２０１が再設定されれば、ＵＦＳ装置３００は、ＵＦＳホスト２００に伝送していない少なくとも１つの応答を、再設定されたリンク２０１を通じてＵＦＳホスト２００に伝送しうる（ステップＳ４５０）。
図４と図６とに示したように、ＵＦＳ装置３００は、ＵＦＳホスト２００に伝送していない複数の応答Ｗｒｉｔｅ  ＬＢＡ＃１０１  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅ、Ｗｒｉｔｅ  ＬＢＡ＃１０２  Ｃｏｍｐｌｅｔｅ  Ｒｅｓｐｏｎｓｅを再設定されたリンク２０１を通じてＵＦＳホスト２００に伝送しうる（ステップＳ４５０）。
【００５０】
図８は、図１に示すＵＦＳシステムでエラーが発生した時、リンクに対するウォームリセットが行われる過程を説明するためのフローチャートである。図１から図６、及び図８を参照すると、ＵＦＳホスト２００は、リンク２０１を通じてＵＦＳ装置３００と通信することができる（ステップＳ５１０）。
ＵＦＳ装置３００は、ＵＦＳ装置３００の少なくとも１つの構成要素で故障または障害が発生したか否かを判断することができる（ステップＳ５２０）。例えば、ＵＦＳ装置３００は、少なくとも１つの構成要素で故障または障害によってリンク２０１に対するウォームリセットの要否を判断することができる（ステップＳ５２０）。
【００５１】
ウォームリセットが不要であれば（ステップＳ５２０のＮＯ）、ＵＦＳホスト２００は、リンク２０１を通じてＵＦＳ装置３００と通信することができる（ステップＳ５１０）。しかし、ウォームリセットが必要であれば（ステップＳ５２０のＹＥＳ）、ＵＦＳ装置３００は、ウォームリセット、例えば、ＵｎｉＰｒｏウォームリセットのイニシエータとして作動することができる（ステップＳ４３０）。図８に示された各段階（ステップＳ４４０とステップＳ４５０）は、図７に示された各段階（ステップＳ４４０とステップＳ４５０）と同一である。
【００５２】
図９は、図１に示すＵＦＳシステムに対するリセット状態を示すテーブルである。図９を参照すると、ＵｎｉＰｒｏウォームリセットのイニシエータは、ＵＦＳホスト２００またはＵＦＳ装置３００であり得る。すなわち、ＵｎｉＰｒｏウォームリセットのイニシエータが、ＵＦＳホスト２００またはＵＦＳ装置３００であることを除けば、図９のテーブル（ＴＡＢＬＥ）は、ＪＥＳＤ２２０ＢのＴａｂｌｅ  ７．２−Ｒｅｓｅｔ  Ｓｔａｔｅｓと同一である。したがって、図９のテーブルについての詳細な説明は省略する。
【００５３】
図１０は、本発明の実施形態によるＵＦＳシステムを説明するためのブロック図である。図１から図８を参照すると、ＵＦＳシステム４００、例えば、データ処理システムは、モバイル装置として具現可能である。
ＵＦＳシステム４００は、プロセッサ４１０、ＵＳＦ装置３００、ディスプレイ５００、及びイメージセンサー６００を含みうる。
【００５４】
ＵＦＳシステム４００は、スマートフォン、タブレットＰＣ、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、ＥＤＡ（Ｅｎｔｅｒｐｒｉｓｅ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、デジタルスチルカメラ（Ｄｉｇｉｔａｌ  Ｓｔｉｌｌ  Ｃａｍｅｒａ）、デジタルビデオカメラ（Ｄｉｇｉｔａｌ  Ｖｉｄｅｏ  Ｃａｍｅｒａ）、ＰＭＰ（Ｐｏｒｔａｂｌｅ  Ｍｕｌｔｉｍｅｄｉａ  Ｐｌａｙｅｒ）、ＰＮＤ（Ｐｅｒｓｏｎａｌ  Ｎａｖｉｇａｔｉｏｎ  ＤｅｖｉｃｅまたはＰｏｒｔａｂｌｅ  Ｎａｖｉｇａｔｉｏｎ  Ｄｅｖｉｃｅ）、モバイルインターネット装置（Ｍｏｂｉｌｅ  Ｉｎｔｅｒｎｅｔ  Ｄｅｖｉｃｅ；ＭＩＤ）、ウェアラブルコンピュータ、モノのインターネット（Ｉｎｔｅｒｎｅｔ  ｏｆ  Ｔｈｉｎｇｓ；ＩｏＴ）装置、全てのインターネット（Ｉｎｔｅｒｎｅｔ  ｏｆ  Ｅｖｅｒｙｔｈｉｎｇ；ＩｏＥ））装置、またはドローン（ｄｒｏｎｅ）として具現可能である。
【００５５】
プロセッサ４１０は、ＵＦＳ装置３００、ディスプレイ５００、及びイメージセンサー６００を制御することができる。プロセッサ４１０は、集積回路（ＩＣ）、システム・オン・チップ（Ｓｙｓｔｅｍ  ｏｎ  Ｃｈｉｐ；ＳｏＣ）、アプリケーションプロセッサ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｃｅｓｓｏｒ；ＡＰ）、モバイルＡＰ、チップセット、または複数のチップの集合として具現可能である。プロセッサ４１０は、複数のＵＦＳホスト２００、４２０、及び４３０を含みうる。
【００５６】
ホスト４２０は、ＤＳＩ（Ｄｉｓｐｌａｙ  Ｓｅｒｉａｌ  Ｉｎｔｅｒｆａｃｅ）−２を通じてディスプレイ５００とデータを送受信することができる。ホスト４２０は、ＤＳＩ−２ホスト４２１、リンクレイヤ（ｌｉｎｋ  ｌａｙｅｒ）４２３、例えば、ＭＩＰＩ  ＵｎｉＰｒｏＳＭ、及びフィジカルレイヤ（ｐｈｙｓｉｃａｌ  ｌａｙｅｒ）４２５、例えば、ＭＩＰＩ  Ｍ−ＰＨＹＳＭを含みうる。
【００５７】
ディスプレイ５００は、ＭＩＰＩ  Ｍ−ＰＨＹ５１０、ＵｎｉＰｒｏ５２０、及びＤＳＩ−２装置５３０を含みうる。ＭＩＰＩ  Ｍ−ＰＨＹ５１０は、ＤＳＩ−２とＵｎｉＰｒｏ５２０との間でデータの伝送を制御することができる。ＵｎｉＰｒｏ５２０は、ＭＩＰＩ  Ｍ−ＰＨＹ５１０とＤＳＩ−２装置５３０との間でデータの伝送を制御することができる。ＤＳＩ−２装置５３０は、ディスプレイパネルを意味する。ディスプレイパネルは、ＴＦＴ−ＬＣＤ、ＬＥＤディスプレイパネル、ＯＬＥＤディスプレイパネル、ＡＭＯＬＥＤディスプレイパネル、またはフレキシブル（ｆｌｅｘｉｂｌｅ）ディスプレイパネルを意味する。
【００５８】
ホスト４３０は、ＣＳＩ（Ｃａｍｅｒａ  Ｓｅｒｉａｌ  Ｉｎｔｅｒｆａｃｅ）−３を通じてイメージセンサー６００とデータを送受信することができる。ホスト４３０は、ＣＳＩ−３ホスト４３１、リンクレイヤ４３３、例えば、ＭＩＰＩ  ＵｎｉＰｒｏＳＭ、及びフィジカルレイヤ４３５、例えば、ＭＩＰＩ  Ｍ−ＰＨＹＳＭを含みうる。
イメージセンサー６００は、ＭＩＰＩ  Ｍ−ＰＨＹ６１０、ＵｎｉＰｒｏ６２０、及びＣＳＩ−３装置６３０を含みうる。ＭＩＰＩ  Ｍ−ＰＨＹ６１０は、ＣＳＩ−３とＵｎｉＰｒｏ６２０との間でデータの伝送を制御することができる。ＵｎｉＰｒｏ６２０は、ＭＩＰＩ  Ｍ−ＰＨＹ６１０とＣＳＩ−３装置６３０との間でデータの伝送を制御することができる。ＣＳＩ−３装置６３０は、ピクセルアレイと前記ピクセルアレイから出力された複数のピクセル信号を処理する複数の周辺回路とを含みうる。
【００５９】
図１１は、本発明の実施形態によるＵＦＳシステムを説明するためのブロック図である。図１から図９、及び図１１を参照すると、ＵＦＳシステム７００、例えば、データ処理システムは、データベース７２０、データベースサーバ７３０、第２ネットワーク７４０、及び複数のクライアントコンピュータ（７５０、７５１）を含みうる。
データセンター、インターネットデータセンター、またはクラウドデータセンター７１０は、データベース７２０とデータベースサーバ７３０とを含みうる。
【００６０】
データベース７２０は、複数のＵＦＳ装置３００を含みうる。データベースサーバ７３０は、複数のＵＦＳ装置３００のそれぞれの作動を制御することができる。データベースサーバ７３０は、第１ネットワーク、例えば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）７３５を通じて第２無線ネットワーク７４０、例えば、インターネットまたはＷｉ−Ｆｉに接続されうる。例えば、データベースサーバ７３０は、ウェブサーバまたはメールサーバとして具現可能であるが、これに限定されるものではない。データベースサーバ７３０は、ＵＦＳホスト２００の機能を行うことができる。複数のクライアントコンピュータ（７５０、７５１）のそれぞれは、第２ネットワーク７４０を通じてデータベースサーバ７３０に接続することができる。
【産業上の利用可能性】
【００６１】
本発明は、ＵＦＳホスト、ＵＦＳ装置、及びそれらを含むシステムに使われる。
【符号の説明】
【００６２】
１００Ａ、１００Ｂ、４００、７００    ＵＦＳシステム
２００、２００Ａ、２００Ｂ、４２０、４３０    ＵＦＳホスト
２１０    アプリケーション
２２０    ＵＦＳドライバ
２３０    ＵＦＳホストコントローラ
２３１    レジスタのセット（命令キュー）
２４０、３１０    ＵＩＣレイヤ
２４１、３１３、５２０、６２０    ＭＩＰＩ  ＵｎｉＰｒｏ
２４３、３１１、５１０、６１０    ＭＩＰＩ  Ｍ−ＰＨＹ
３００    ＵＦＳ装置
３２０−０〜３２０−Ｎ    論理ユニット
３３０    装置マネージャー
３４０    複数のデスクリプタ
７００    ＵＦＳシステム
【図１】
0006654048.tif 000002
【図２】
0006654048.tif 000003
【図３】
0006654048.tif 000004
【図４】
0006654048.tif 000005
【図５】
0006654048.tif 000006
【図６】
0006654048.tif 000007
【図７】
0006654048.tif 000008
【図８】
0006654048.tif 000009
【図９】
0006654048.tif 000010
【図１０】
0006654048.tif 000011
【図１１】
0006654048.tif 000012