(57)【要約】【課題】メモリにデータを記憶するメモリドライブにホストが光ディスクドライブのようにアクセスできるようにする。【解決手段】本発明は、光ディスクドライブに仮想化できるメモリドライブ及びその仮想化方法に関するものである。本発明の一実施形態は、記憶メモリと記憶メモリにデータを書き込みしたり、書き込まれたデータを読み取りしたりする記憶メモリコントローラとからなるメモリドライブを光ディスクドライブに仮想化する方法を提示する。したがって、本発明の一実施形態によれば、フラッシュメモリとフラッシュメモリコントローラとを有するソリッドステートドライブを光ディスクドライブのように使用することができる。【選択図】図３
2011520176.tif 000002
【特許請求の範囲】
【請求項１】
記憶メモリと前記記憶メモリにデータを書き込む記憶メモリコントローラとを有するメモリドライブであって、
前記記憶メモリコントローラは、光ディスクドライブ規格による書き込み／読み取り単位に従って前記記憶メモリにデータを書き込みまたは前記記憶メモリからデータを読み取りすることを特徴とする光ディスクドライブに仮想化できるメモリドライブ。
【請求項２】
前記記憶メモリコントローラは、前記光ディスクドライブ規格に従うファイルシステムを前記記憶メモリに適用して前記記憶メモリにデータを書き込みまたは前記記憶メモリに書き込まれたデータを読み取り、前記光ディスクドライブ規格に従う処理命令語を用いてホストの光ディスクドライブ処理命令を実行し、前記ホストからの命令に対する結果または状態を前記ホストに返すことを特徴とする請求項１に記載の光ディスクドライブに仮想化できるメモリドライブ。
【請求項３】
前記記憶メモリに書き込まれるデータのタイプは、光ディスクドライブに書き込まれるデータのタイプと同一であることを特徴とする請求項１に記載の光ディスクドライブに仮想化できるメモリドライブ。
【請求項４】
前記記憶メモリコントローラは、
前記記憶メモリのデータ書き込み／読み取り単位を前記光ディスクドライブ規格による書き込み／読み取り単位に従って管理するセクタ管理部と、
前記メモリドライブのデータ書き込みの可否を制御し、ホストに前記メモリドライブのデータ書き込みの可否に関する属性情報を転送する属性管理部と、
前記属性情報に従って前記ホストからの書き込み／読み取り動作要求に応じて前記セクタ管理部が設定した書き込み／読み取り単位に従って前記記憶メモリにデータを書き込みまたは前記記憶メモリからデータを読み取りする書き込み／読み取り制御部と、
を有することを特徴とする請求項１に記載の光ディスクドライブに仮想化できるメモリドライブ。
【請求項５】
前記属性管理部は、前記メモリドライブに、書き込み不可タイプ、追記タイプ、書き換えタイプ、及びランダム書き込みタイプのディスクドライブのうちの１つの属性を与え、前記与えた属性によって前記メモリドライブのデータ書き込みの可否を制御することを特徴とする請求項４に記載の光ディスクドライブに仮想化できるメモリドライブ。
【請求項６】
前記メモリドライブに与えられた属性が前記ランダム書き込みタイプの場合、
前記記憶メモリを構成するページは、前記光ディスクドライブ規格に従うブートデータが記憶される隠し領域と、前記隠し領域に記憶されているブートデータがロードされる実領域とを有することを特徴とする請求項５に記載の光ディスクドライブに仮想化できるメモリドライブ。
【請求項７】
前記書き込み／読み取り制御部は、前記ホストからのデバイス認識要求に応じて、前記属性情報を前記ホストに転送する前に、前記隠し領域に記憶されているブートデータを読み取って、該ブートデータを前記実領域にロードすることを特徴とする請求項６に記載の光ディスクドライブに仮想化できるメモリドライブ。
【請求項８】
前記書き込み／読み取り制御部は、前記実領域に前記ブートデータをロードした後、前記ホストからのデータ書き込み／読み取り要求に応じて、前記実領域の開始点を前記記憶メモリの物理アドレス開始点にマッピングすることを特徴とする請求項６に記載の光ディスクドライブに仮想化できるメモリドライブ。
【請求項９】
前記メモリドライブは、前記メモリドライブの属性を選択できるジャンパスイッチをさらに有することを特徴とする請求項４に記載の光ディスクドライブに仮想化できるメモリドライブ。
【請求項１０】
前記属性管理部は、前記ジャンパスイッチが選択した属性に従って前記メモリドライブのデータ書き込みの可否を制御することを特徴とする請求項９に記載の光ディスクドライブに仮想化できるメモリドライブ。
【請求項１１】
前記書き込み／読み取り制御部は、前記ホストがデータを書き込む時、論理アドレスが順次アクセスされる場合、前記記憶メモリに順次データを書き込みし、前記論理アドレスとデータが書き込まれた前記記憶メモリの物理アドレスとの差に関する情報を記憶することを特徴とする請求項４に記載の光ディスクドライブに仮想化できるメモリドライブ。
【請求項１２】
前記書き込み／読み取り制御部は、前記ホストがデータを書き込む時、論理アドレスが順次アクセスされない場合、前記ホストが書き込みしようとするデータが記憶されるバッファをさらに有し、
前記書き込み／読み取り制御部は、前記バッファに記憶されたデータを前記記憶メモリに順次書き込みし、前記アクセスされた論理アドレスをデータが書き込まれた前記記憶メモリの物理アドレスにマッピングするテーブルを記憶することを特徴とする請求項４に記載の光ディスクドライブに仮想化できるメモリドライブ。
【請求項１３】
前記記憶メモリがフラッシュメモリの場合、
前記書き込み／読み取り制御部は、前記ホストがファイルシステム領域とデータ領域とに区分された第１ファイルの書き込みを要求する時、前記ファイルシステム領域に該当するデータを前記フラッシュメモリに書き込みし、前記データ領域に該当するデータを前記ファイルシステム領域に該当するデータが書き込まれた前記フラッシュメモリに書き込むことを特徴とする請求項４に記載の光ディスクドライブに仮想化できるメモリドライブ。
【請求項１４】
前記書き込み／読み取り制御部は、前記ホストがファイルシステム領域とデータ領域とに区分された第２ファイルの書き込みを要求する時、ページで前記第１ファイルのファイルシステム領域を無効にし、
前記第１ファイルのファイルシステム領域に該当するデータと、前記第２ファイルのファイルシステム領域に該当するデータと、前記第２ファイルのデータ領域に該当するデータとを前記フラッシュメモリに書き込むことを特徴とする請求項１３に記載の光ディスクドライブに仮想化できるメモリドライブ。
【請求項１５】
前記書き込み／読み取り制御部は、前記ホストが前記第１ファイルまたは前記第２ファイルの更新を要求する時、前記更新を要求されたファイルのデータ領域と、前記第１ファイル及び前記第２ファイルのファイルシステム領域とを無効にし、
前記ホストから転送された前記第１ファイル及び第２ファイルのファイルシステム領域に該当するデータと、前記更新を要求されたファイルのデータ領域に該当するデータとを前記フラッシュメモリに書き込むことを特徴とする請求項１４に記載の光ディスクドライブに仮想化できるメモリドライブ。
【請求項１６】
前記書き込み／読み取り制御部は、前記ホストが前記第１ファイルまたは前記第２ファイルの削除を要求する時、前記第１ファイル及び前記第２ファイルのファイルシステム領域と前記削除を要求されたファイルのデータ領域とを無効にし、
前記削除を要求されていないファイルのファイルシステムを前記フラッシュメモリに書き込むことを特徴とする請求項１４に記載の光ディスクドライブに仮想化できるメモリドライブ。
【請求項１７】
記憶メモリと前記記憶メモリにデータを書き込む記憶メモリコントローラとを有するメモリドライブを光ディスクドライブに仮想化する方法であって、
ホストからのデバイス認識要求に応じて、前記メモリドライブのデータ書き込みの可否に関する属性情報を前記ホストに転送するステップと、
前記属性情報に従って前記ホストからの書き込み／読み取り動作要求に応じて光ディスクドライブ規格による書き込み／読み取り単位に従って前記記憶メモリにデータを書き込みまたは前記記憶メモリからデータを読み取りするステップと、
を有することを特徴とするメモリドライブを光ディスクドライブに仮想化する方法。
【請求項１８】
前記転送するステップ並びに前記書き込みまたは読み取りするステップは、前記光ディスクドライブ規格に従う処理命令語を用いて前記ホストの光ディスクドライブ処理命令を実行することを特徴とする請求項１７に記載のメモリドライブを光ディスクドライブに仮想化する方法。
【請求項１９】
前記書き込みまたは読み取りするステップは、前記光ディスクドライブ規格に従うファイルシステムを前記記憶メモリに適用して前記記憶メモリにデータを書き込みまたは前記記憶メモリに書き込まれたデータを読み取りすることを特徴とする請求項１７に記載のメモリドライブを光ディスクドライブに仮想化する方法。
【請求項２０】
前記書き込みまたは読み取りするステップで、前記記憶メモリに書き込まれるデータのタイプは光ディスクドライブに書き込まれるデータのタイプと同一であることを特徴とする請求項１７に記載のメモリドライブを光ディスクドライブに仮想化する方法。
【請求項２１】
前記メモリドライブに、書き込み不可タイプ、追記タイプ、書き換えタイプ、及びランダム書き込みタイプのディスクドライブのうちの１つの属性を与えるステップをさらに有し、
前記与えられた属性に従って前記メモリドライブのデータ書き込みの可否が制御されることを特徴とする請求項１７に記載のメモリドライブを光ディスクドライブに仮想化する方法。
【請求項２２】
前記メモリドライブに与えられた属性が前記ランダム書き込みタイプの場合、
前記記憶メモリを構成するページを、前記光ディスク規格に従うブートデータが記憶される隠し領域と、前記隠し領域に記憶されているブートデータがロードされる実領域とに設定するステップをさらに有することを特徴とする請求項２１に記載のメモリドライブを光ディスクドライブに仮想化する方法。
【請求項２３】
前記属性情報を転送するステップは、前記属性情報を前記ホストに転送する前に、前記隠し領域に記憶されているブートデータを前記実領域にロードすることを特徴とする請求項２２に記載のメモリドライブを光ディスクドライブに仮想化する方法。
【請求項２４】
前記実領域に前記ブートデータをロードした後、前記ホストからのデータ書き込み／読み取り要求に応じて、前記実領域の開始点を前記記憶メモリの物理アドレス開始点にマッピングするステップをさらに有することを特徴とする請求項２２に記載のメモリドライブを光ディスクドライブに仮想化する方法。
【請求項２５】
前記書き込みまたは読み取りするステップは、前記ホストがデータを書き込む時、論理アドレスが順次アクセスされる場合、前記記憶メモリに順次データを書き込みし、前記論理アドレスとデータが書き込まれた前記記憶メモリの物理アドレスとの差に関する情報を記憶することを特徴とする請求項１７に記載のメモリドライブを光ディスクドライブに仮想化する方法。
【請求項２６】
前記書き込みまたは読み取りするステップは、前記ホストがデータを書き込む時、論理アドレスが順次アクセスされない場合、前記ホストが書き込みしようとするデータをバッファに記憶し、前記バッファに記憶されたデータを前記記憶メモリに順次書き込みし、前記アクセスされた論理アドレスをデータが書き込まれた前記記憶メモリの物理アドレスにマッピングするテーブルを記憶することを特徴とする請求項１７に記載のメモリドライブを光ディスクドライブに仮想化する方法。
【請求項２７】
前記記憶メモリがフラッシュメモリの場合、
前記書き込みまたは読み取りするステップは、前記ホストがファイルシステム領域とデータ領域とに区分された第１ファイルの書き込みを要求する時、前記ファイルシステム領域に該当するデータを前記フラッシュメモリに書き込みし、前記データ領域に該当するデータを前記ファイルシステム領域に該当するデータが書き込まれた前記フラッシュメモリに書き込むことを特徴とする請求項１７に記載のメモリドライブを光ディスクドライブに仮想化する方法。
【請求項２８】
前記書き込みまたは読み取りするステップは、前記ホストがファイルシステム領域とデータ領域とに区分された第２ファイルの書き込みを要求する時、ページで前記第１ファイルのファイルシステム領域を無効にし、
前記第１ファイルのファイルシステム領域に該当するデータと、前記第２ファイルのファイルシステム領域に該当するデータと、前記第２ファイルのデータ領域に該当するデータとを前記フラッシュメモリに書き込むことを特徴とする請求項２７に記載のメモリドライブを光ディスクドライブに仮想化する方法。
【請求項２９】
前記書き込みまたは読み取りするステップは、前記ホストが前記第１ファイルまたは前記第２ファイルの更新を要求する時、前記更新を要求されたファイルのデータ領域と、前記第１ファイル及び前記第２ファイルのファイルシステム領域とを無効にし、
前記ホストから転送された前記第１ファイル及び第２ファイルのファイルシステム領域に該当するデータと、前記更新を要求されたファイルのデータ領域に該当するデータとを前記フラッシュメモリに書き込むことを特徴とする請求項２８に記載のメモリドライブを光ディスクドライブに仮想化する方法。
【請求項３０】
前記書き込みまたは読み取りするステップは、前記ホストが前記第１ファイルまたは前記第２ファイルの削除を要求する時、前記第１ファイル及び前記第２ファイルのファイルシステム領域と前記削除を要求されたファイルのデータ領域とを無効にし、
前記削除を要求されていないファイルのファイルシステムを前記フラッシュメモリに書き込むことを特徴とする請求項２８に記載のメモリドライブを光ディスクドライブに仮想化する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、光ディスクドライブに仮想化できるメモリドライブ及びその仮想化方法に関するものである。仮想化しようとする光ディスクドライブのタイプによってメモリドライブのデータ書き込みの可否を制御できる。したがって、本発明は光ディスクドライブの一種のように動作できるメモリドライブ及びその仮想化方法に関するものである。
【背景技術】
【０００２】
フラッシュメモリは、ハードディスクのように不揮発性であり、かつアクセスが速く、消費電力が少ないため、組み込み型システムや移動デバイス等で多く使われている。
【０００３】
フラッシュメモリは、そのハードウェアの特性を考慮すると、既に使われているメモリセクタに書き込み動作を遂行するためには、そのセクタが含まれたブロック全体を消す動作を先に遂行しなければならない。フラッシュメモリブロックを構成するページの一部のみにデータを書き込みする一部書き込み（Partial Programming）も可能である。
【０００４】
ソリッドステートドライブ（Solid State Drive）は、半導体を用いて情報を記憶する装置であって、略してＳＳＤとも称する。ＳＳＤは、基本的にハードディスクドライブと同様に動作するようになされており、ＡＴＡと互換であるので、既存のハードディスクをＳＳＤとそのまま取り替えることも容易である。ソリッドステートディスクは機械的に動く部分がないため、ハードディスクドライブの問題である長い探索時間（シークタイム）、レイテンシ、機械的遅延、失敗率を格段に減らすことができる。
【０００５】
ＳＳＤは、通常フラッシュドライブともいうが、フラッシュメモリ基盤のＳＳＤはバッテリを必要とせず、１．８、２．５、３．５インチサイズのハードディスクの代替品として使用できる。不揮発性メモリを使用するため、突然の停電でもデータ損傷がない。フラッシュメモリはＤＲＡＭより遅いが、現在使用されているハードディスクより速く動作することができる。
【０００６】
図１は、一般的なＳＳＤの構造を示す図である。ホスト３０が書き込みしようとするデータを書き込み可能な複数個のフラッシュメモリ１０と、フラッシュメモリ１０にアクセスしてデータを書き込みまたは読み取りするフラッシュコントローラ２０とを有する。
【０００７】
フラッシュコントローラ２０は、ホスト３０とデータを送受信するホストインターフェース２１、フラッシュメモリ１０とデータを送受信するフラッシュメモリインターフェース２３、そしてフラッシュメモリ１０のファイルシステムを管理し、データを書き込みまたは読み取りする時、論理アドレスを物理アドレスにマッピングするマイクロプロセッサ２２とを有する。
【０００８】
しかしながら、ＳＳＤは常にデータの書き込み及び消去が可能である。したがって、配布用にデータを書き込みして配布した場合でもデータを容易に消去できる。また、光ディスクドライブと異なり、データを記憶しようとする場合でもホストなどにデータを移して保持しなければならないという問題点がある。
【０００９】
ハードディスク（ＨＤ）やＭＲＡＭのような記憶メモリ及び記憶メモリコントローラを有するメモリドライブも常にデータの書き込み及び消去が可能である。したがって、配布用にデータを書き込みした場合にもデータは容易に消去できるという問題点がある。
【００１０】
また、ソリッドステートドライブを含むメモリドライブの場合、従来の光ディスクドライブを使用している電子装置に使用できないという問題点がある。
【発明の概要】
【発明が解決しようとする課題】
【００１１】
本発明は、メモリにデータを記憶するメモリドライブにホストが光ディスクドライブのようにアクセスできるようにする。本発明は、メモリドライブの書き込みの可否を制御してメモリドライブを光ディスクドライブに仮想化する。本発明は、メモリドライブを用いて光ディスクドライブのようにデータを記憶できるようにする。本発明の一実施形態によれば、ソリッドステートドライブを光ディスクドライブに仮想化して使用できる。
【課題を解決するための手段】
【００１２】
前述した課題を解決するための本発明による光ディスクドライブに仮想化できるメモリドライブは、記憶メモリと前記記憶メモリにデータを書き込む記憶メモリコントローラとを有し、前記記憶メモリコントローラは光ディスクドライブ規格による書き込み／読み取り単位に従って前記記憶メモリにデータを書き込みまたは前記記憶メモリからデータを読み取りすることを特徴とする。
【００１３】
また、前述した課題を解決するための本発明による光ディスクドライブに仮想化できるソリッドステートドライブは、フラッシュメモリと上記フラッシュメモリにデータを書き込むフラッシュコントローラとを有し、上記フラッシュコントローラは光ディスクドライブ規格による書き込み／読み取り単位に従って上記フラッシュメモリにデータを書き込みまたは上記フラッシュメモリからデータを読み取りすることを特徴とする。
【００１４】
また、前述した課題を解決するための本発明による光ディスクドライブに仮想化できるソリッドステートドライブは、フラッシュメモリと上記フラッシュメモリにデータを書き込むフラッシュコントローラとを有するソリッドステートドライブであって、上記フラッシュコントローラは、上記フラッシュメモリのデータ書き込み／読み取り単位を光ディスクドライブ規格による書き込み／読み取り単位に従って管理するセクタ管理部と、上記ソリッドステートドライブのデータ書き込みの可否を制御し、ホストにデータ書き込みの可否に関する属性情報を転送する属性管理部と、上記属性情報に従って上記ホストからの書き込み／読み取り動作要求に応じて上記セクタ管理部で設定した書き込み／読み取り単位に従って上記フラッシュメモリにデータを書き込みまたは上記フラッシュメモリからデータを読み取りする書き込み／読み取り制御部と、を含むことを特徴とする。
【００１５】
また、前述した課題を解決するための本発明による、記憶メモリと上記記憶メモリにデータを書き込む記憶メモリコントローラとを有するメモリドライブを光ディスクドライブに仮想化する方法は、ホストからのデバイス認識要求に応じて、上記メモリドライブのデータ書き込みの可否に関する属性情報を上記ホストに転送するステップと、上記属性情報に従って上記ホストからの書き込み／読み取り動作要求に応じて光ディスクドライブ規格による書き込み／読み取り単位に従って上記記憶メモリにデータを書き込みまたは上記記憶メモリからデータを読み取りするステップと、を含むことを特徴とする。
【００１６】
また、前述した課題を解決するための本発明による、フラッシュメモリと上記フラッシュメモリにデータを書き込むフラッシュコントローラとを有するソリッドステートドライブを光ディスクドライブに仮想化する方法は、ホストからのデバイス認識要求に応じて、上記ソリッドステートドライブのデータ書き込みの可否に関する属性情報を上記ホストに転送するステップと、上記属性情報に従って上記ホストからの書き込み／読み取り動作要求に応じて光ディスクドライブ規格による書き込み／読み取り単位に従って上記フラッシュメモリにデータを書き込みまたは上記記憶メモリからデータを読み取りするステップと、を含むことを特徴とする。
【発明の効果】
【００１７】
本発明によれば、メモリドライブを光ディスクドライブに仮想化する。したがって、ユーザはＨＤ、ＭＲＡＭ、またはフラッシュメモリを有するメモリドライブを光ディスクドライブのように使用できる。また、メモリドライブに実際の光ディスクドライブと同一な物理的特性を提供することで、ユーザの利便性を高めることができる。
【００１８】
また、本発明によるメモリドライブは、実際の物理的な光ディスクドライブと同様に動作することで、オペレーティングシステムに関わらず、どの装置にも適用できる。一例として、本発明により光ディスクドライブに仮想化されたメモリドライブは、ＰＣにＵＳＢを介して連結される場合、ＲＡＭタイプ記憶装置またはＲＯＭタイプ記憶装置として認識できる。この場合、本発明によるメモリドライブは、広告や販促用に配布されるＣＤ−ＲＯＭなどとして認識できる。更に他の例として、メモリドライブは、光ディスクドライブが適用されるカムコーダにＵＳＢにより連結された場合、ＤＶＤとして認識できる。
【００１９】
また、本発明によるメモリは仮想光ディスクドライブであるので、実際の光ディスクドライブの動作時に発生するサイズの制限、アクセス速度の制限、物理ディスクの認識時間などの限界がない。
【００２０】
また、本発明によれば、ソリッドステートドライブを光ディスクドライブに仮想化する。したがって、ホストが光ディスクドライブにアクセスする方法によりソリッドステートドライブにアクセスすることができる。また、ソリッドステートドライブに書き込まれたデータの消去の可否、または書き換えの可否を制御できる。したがって、書き込まれたデータを長期間記憶できる。また、ソリッドステートドライブを光ディスクドライブが使われていたデバイスに連結して使用できる。ソリッドステートドライブは、光ディスクドライブよりサイズが小さい。したがって、光ディスクドライブが使われていたデバイスのサイズを小さくことができる。延いては、光ディスクドライブでデータを管理する場合に比べて電力消費を減らすことができる。
【図面の簡単な説明】
【００２１】
【図１】一般的なソリッドステートドライブの構造を示すブロック図である。
【図２】本発明の一実施形態が適用されるフラッシュメモリの構造を示す図である。
【図３】本発明の一実施形態に従って光ディスクドライブに仮想化されたソリッドステートドライブの構造を示すブロック図である。
【図４】図３のうち、フラッシュコントローラ３１０の構造を示すブロック図である。
【図５】本発明の一実施形態によるソリッドステートドライブをＨＤＤまたはＯＤＤとしてホストが認識する過程を示すフローチャートである。
【図６】本発明の一実施形態によるソリッドステートドライブがホストに仮想化された光ディスクドライブのタイプに関する情報を転送する過程を示すフローチャートである。
【図７】本発明の一実施形態によるソリッドステートドライブで論理−物理アドレスをマッピングするレイヤを示す図である。
【図８】本発明の一実施形態によるソリッドステートドライブのフラッシュメモリを光ディスクドライブのセクタ単位とマッチングさせる方法を示す図である。
【図９】本発明の一実施形態によるフラッシュメモリにデータを書き込む方法を示す図である。
【図１０】本発明の一実施形態によるフラッシュメモリにデータを書き込む方法を示す図である。
【図１１】本発明の一実施形態によるフラッシュメモリにデータを書き込む方法を示す図である。
【図１２】本発明の一実施形態によるフラッシュメモリにデータを書き込む方法を示す図である。
【図１３】本発明の一実施形態によるフラッシュメモリにデータを書き込む方法を示す図である。
【図１４】本発明の一実施形態によるフラッシュメモリにデータを書き込む方法を示す図である。
【図１５】本発明の一実施形態によるフラッシュメモリにデータを書き込む方法を示す図である。
【図１６】本発明の一実施形態によるフラッシュメモリにデータを書き込む方法を示す図である。
【図１７】本発明の一実施形態によりＲＡＭタイプ光ディスクドライブに仮想化されたソリッドステートドライブを通じてブートする過程を示す図である。
【図１８】本発明の一実施形態によりＲＡＭタイプ光ディスクドライブに仮想化されたソリッドステートドライブを通じてブートする過程を示す図である。
【図１９】本発明の一実施形態によりＲＡＭタイプ光ディスクドライブに仮想化されたソリッドステートドライブを通じてブートする過程を示す図である。
【発明を実施するための形態】
【００２２】
以下、添付の図面を参照しつつ本発明の好ましい実施形態を詳細に説明する。本発明の利点及び特徴、そしてそれらを達成する方法は、添付の図面と共に詳細に後述されている実施形態を参照すれば明確になる。しかしながら、本発明は以下に開示される実施形態に限定されるものでなく、互いに異なる多様な形態で具現され、単に本実施形態は本発明の開示を補完し、本発明が属する技術分野で通常の知識を有する者に発明の範疇を完全に知らせるために提供されるものであり、本発明は請求項の範疇により定義されるだけである。明細書全体に亘って同一参照符号は同一構成要素を指し示す。
【００２３】
本発明の実施形態は、フラッシュメモリを使用するメモリドライブであるソリッドステートドライブである。しかしながら、本発明はＨＤ、ＭＲＡＭなど、多様なタイプの記憶媒体を有するメモリドライブに適用できる。したがって、ソリッドステートドライブ以外のメモリドライブを光ディスクドライブに仮想化する方法も本発明の権利範囲に属するといえる。
【００２４】
図２は、実際のフラッシュメモリの構造を示す図である。図示したように、１つのフラッシュメモリは８１９２個のブロックを有する。ブロックは３２個のページを有し、１ページは５１２Ｂの主領域と１６Ｂの補助領域とに区分できる。主領域には、通常ユーザデータが書き込みされ、セクタの集合とみなすことができる。補助領域には、主領域に書き込まれたデータが有効か否か、ＥＣＣ、論理ブロックアドレス（Logical Block Address；ＬＢＡ）または論理セクタ番号（Logical Sector Number；ＬＳＮ）、消去回数などに関する情報が書き込まれる。
【００２５】
図２は、フラッシュメモリの書き込み／読み取り単位と外部ホストが要求した書き込み／読み取り単位が一致する小ブロックフラッシュメモリを示している。しかしながら、本発明はフラッシュメモリの書き込み／読み取り単位が外部ホストが要求した書き込み／読み取り単位より大きい大ブロックフラッシュメモリの場合にも適用できる。大ブロックフラッシュメモリの場合、主領域は４個のセクタからなる。大ブロックフラッシュメモリにデータはセクタ単位あるいはページ単位で書き込まれる。
【００２６】
図３は、本発明に従って光ディスクドライブに仮想化されたソリッドステートドライブを示すブロック図である。（ａ）は、ホスト１００とデータを送受信する光ディスクドライブとを示す。光ディスクドライブは、光ディスク２１０、ピックアップ２２０、及びコントローラ２３０を有する。本発明は、（ｂ）に図示された通りである。（ｂ）は、ホスト１００が光ディスクドライブのようにアクセスできるソリッドステートドライブを示す。ソリッドステートドライブは、データが書き込み／読み取り／消去されるフラッシュメモリ３００、及びフラッシュコントローラ３１０を有する。
【００２７】
フラッシュコントローラ３１０は、ホスト１００の書き込み／読み取り動作要求に応じてフラッシュメモリ３００にデータを書き込みまたはフラッシュメモリ３００からデータを読み取りする。ホスト１００がソリッドステートドライブにデータを書き込みまたはソリッドステートドライブからデータを読み取りする過程で、ＲＡＭ１１０はバッファの役割を遂行する。
【００２８】
フラッシュコントローラ３１０は、ホスト１００が要求したデバイス認識要求に応じてソリッドステートドライブの属性情報をホスト１００に転送する。ソリッドステートドライブは光ディスクドライブに仮想化される。したがって、フラッシュコントローラ３１０はホスト１００にソリッドステートドライブが仮想化された光ディスクドライブのタイプに関する情報を転送する。
【００２９】
ホスト１００は、フラッシュコントローラ３１０が転送した情報を分析してソリッドステートドライブを光ディスクドライブとして認識する。ソリッドステートドライブが仮想化できる光ディスクドライブのタイプは、書き込み不可タイプ（ＲＯＭ）、追記タイプ（recordable）、書き換えタイプ（rewriteable）、ランダム書き込みタイプ（ＲＡＭ）がありえる。
【００３０】
フラッシュコントローラ３１０は、上記ソリッドステートドライブに与えられた属性に従ってソリッドステートドライブの書き込みの可否を制御する。ホスト１００は、ソリッドステートドライブを光ディスクドライブとして認識し、フラッシュコントローラ３１０にデータの書き込み／読み取り動作を要求する。
【００３１】
フラッシュコントローラ３１０は、フラッシュメモリのような記憶メモリにデータを書き込みしたり、記憶メモリに書き込まれたデータを読み取って、ホスト１００に転送したりする記憶メモリコントローラの一実施形態である。記憶メモリコントローラは、光ディスクドライブ規格に従うファイルシステムを記憶メモリに適用して記憶メモリにデータを書き込みしたり、記憶メモリに書き込まれたデータを読み取ったりして、光ディスクドライブ規格に従う処理命令語を用いてホストの光ディスクドライブ処理命令を実行し、ホストからの命令に対する結果または状態を上記ホストに返す役割を遂行する。
【００３２】
記憶メモリの一実施形態であるフラッシュメモリ３００に書き込まれるデータタイプは光ディスクドライブに書き込まれるデータタイプと同一である。
【００３３】
本発明の一実施形態に従う仮想化、即ちエミュレーション（emulation）過程は、記憶メモリを有するメモリドライブを仮想光ディスクドライブとして実行させる一連の過程を意味する。したがって、メモリドライブに光ディスクドライブの属性を与えることが必要である。
【００３４】
エミュレーションがなされるためには、光ディスクドライブのファイルを管理するファイルシステムをメモリドライブに同様に適用できなければならない。また、光ディスクドライブを処理する命令語がメモリドライブで同様に使用できなければならない。
【００３５】
光ディスクドライブの処理命令語としてアドバンスドテクノロジアタッチメントパケットインターフェース（Advanced Technology Attachment Packet Interface；ＡＴＡＰＩ）が使用できる。本発明のメモリドライブに適用できるＡＴＡＰＩの例は次の通りである。
【００３６】
メモリドライブのプロファイル情報（例えば、タイプ、サイズ、電力調節特性等）を仮想のディスク情報として返す‘Get Configuration’命令語、ドライブの準備状態を返す‘Text Unit Ready’命令語、ディスクの最大容量を返す‘Read Capacity’命令語、仮想的に設定されたトラック／セッション情報を返す‘Read TOC／PMA／ATAPI’または‘Read Disc Information’命令語、トラックの詳細情報を返す‘Read Track Information’命令語、メモリドライブを構成する記憶メモリの特定アドレス領域を光ディスクの特定領域にマッピングして光ディスクのように認識できるようにする‘Read’命令語、記憶メモリの特定アドレス領域を光ディスクの特定領域にマッピングしてデータを書き込みできるようにする‘Write、Verify、Write and Verify’命令語などが使用できる。このような命令語は本発明のメモリドライブで処理可能な命令語の一例であり、本発明の範囲はこれに限定されない。
【００３７】
また、メモリドライブが光ディスクドライブにエミュレーションされるためには確認されるべき特性がある。例えば、ディスク属性（ディスクドライブがＲＯＭタイプか、またはＲ／ＲＷタイプか否か）、ディスクサイズ、ディスク詳細特性（トラック、セッション情報等）、書き込み／読み取り情報などが確認されなければならない。
【００３８】
本発明により光ディスクドライブに仮想化されたメモリドライブの特徴の１つは、実際の物理的な光ディスクドライブと同様に動作できるという点である。したがって、ホストのＯＳに関わらず、どんな装置でも光ディスクドライブのようにデータを書き込みまたは読み取りできる。このために、記憶メモリコントローラは光ディスクドライブに適用されるファイル管理システムをそのまま記憶メモリに移して管理する。
【００３９】
以下、本発明の一実施形態であるフラッシュメモリ及びフラッシュコントローラを有するソリッドステートドライブのデータの書き込み及び読み取り方法を説明する。
【００４０】
図４は、本発明によるフラッシュコントローラの内部を示す図である。フラッシュコントローラ３１０は、ホストインターフェース３１１、及びフラッシュインターフェース３１２を含む。また、フラッシュコントローラ３１０は、セクタ管理部３１３、属性管理部３１４、及び書き込み／読み取り制御部３１５を含む。
【００４１】
セクタ管理部３１３は、フラッシュメモリ３００の書き込み／読み取り単位を光ディスクドライブの書き込み／読み取り単位に従って管理する。書き込み／読み取り制御部３１５は、セクタ管理部３１３で管理する単位に従ってフラッシュメモリ３００にデータを書き込みまたはフラッシュメモリ３００からデータを読み取りする。
【００４２】
属性管理部３１４は、ソリッドステートドライブに与えられた属性情報を管理する。属性情報は、フラッシュメモリ３００の内部に記憶されるか、フラッシュコントローラの内部のＲＡＭなどに記憶できる。属性管理部３１４は、ホスト１００からのデバイス認識要求に応じてホスト１００に属性情報を転送する。ホスト１００は、属性管理部３１４から転送された属性情報に基づいてソリッドステートドライブを光ディスクドライブのうちの１つとして認識する。
【００４３】
属性管理部３１４は与えられた属性情報に従ってソリッドステートドライブのデータの書き込みの可否を制御する。仮に、書き込み不可タイプ（ＲＯＭ）に設定された場合、ソリッドステートドライブにデータを書き込みできない。したがって、ホスト１００がデータ書き込み動作を要求しても、書き込み／読み取り制御部３１５はフラッシュメモリ３００にデータを書き込みできない。
【００４４】
ユーザはソリッドステートドライブで属性情報を直接設定または変更することができる。本発明のソリッドステートドライブは、属性情報を変更できるジャンパスイッチを具備できる。属性管理部３１４は、ジャンパスイッチで切り替えられた状態に従ってソリッドステートドライブが仮想化される光ディスクドライブのタイプを決定し、それによってデータの書き込みの可否を制御する。
【００４５】
ジャンパスイッチの他に属性情報を変更できる命令を属性管理部３１４に入力できる。属性管理部３１４は、入力された命令に従って属性情報を変更できる。必要によって属性情報変更が可能でないようにソリッドステートドライブ製造時から設定するか、変更時に暗号を要求するようにすることができる。この場合、ユーザは任意に属性情報を変更することができない。
【００４６】
図５は、ホスト１００がソリッドステートドライブを認識する過程を示す図である。ホスト１００は、任意のデバイスにデバイス認識命令を要求（Ｓ１１）する。ホスト１００は、任意のデバイスからデバイス認識要求に応じて転送された信号に基づいてデバイスがハードディスクドライブか否かを確認する（Ｓ１２）。仮に、ソリッドステートドライブが一般的な方法によりハードディスクドライブに仮想化されたとすれば、ホスト１００はデバイスをハードディスクドライブとして認識する（Ｓ１３）。
【００４７】
デバイスがハードディスクドライブでない場合、ホスト１００はデバイスが光ディスクドライブか否かを確認する（Ｓ１４）。本発明に従ってソリッドステートドライブが光ディスクドライブに仮想化された場合、ホスト１００はソリッドステートドライブを光ディスクドライブとして認識する（Ｓ１５）。
【００４８】
仮に、デバイスがハードディスクドライブでもなく、光ディスクドライブでもない場合、ホスト１００はデバイスを異なるタイプのデバイスとして認識する（Ｓ１６）。
【００４９】
図６は、ホスト１００から転送されたデバイス認識要求に応じてソリッドステートドライブが動作する過程を示す図である。
【００５０】
ホスト１００からデバイス認識要求を転送すれば、フラッシュコントローラ３１０は転送された命令を解析する（Ｓ２１）。デバイス認識要求と解釈されれば、属性管理部３１４を通じてソリッドステートドライブがＲＯＭタイプ、Recordableタイプ、Rewritableタイプ、ＲＡＭタイプディスクドライブのうち、どのタイプの光ディスクドライブに仮想化されたかを確認する（Ｓ２２〜Ｓ２５）。
【００５１】
フラッシュコントローラ３１０は、確認された属性情報をホスト１００へ転送する。ホスト１００は、属性情報に従ってソリッドステートドライブが仮想化された光ディスクドライブのタイプを認識し、その特性に従ってデータの書き込みまたは読み取り動作を要求する。
【００５２】
ソリッドステートドライブを光ディスクドライブとして認識したホスト１００は、仮想ドライブのセクタまたはアドレスに論理アドレス（ＬＳＮまたはＬＢＡ）を通じてアクセスする。実際のフラッシュメモリ３００にはページまたはセクタ単位で物理アドレス（ＰＳＮまたはＰＢＡ）が与えられる。
【００５３】
フラッシュコントローラ３１０は、ホスト１００がデータの書き込みまたは読み取り動作を要求した時、論理アドレスを物理アドレスにマッピングして、フラッシュメモリ３００にデータを書き込みまたはフラッシュメモリ３００からデータを読み取りする。
【００５４】
図７は、フラッシュコントローラ３１０に内蔵された論理−物理マッピングレイヤであるフラッシュ変換レイヤ（Flash Translation Layer；ＦＴＬ）３１６を示す図である。本実施形態では、書き込み／読み取り制御部３１５はＦＴＬ機能を遂行する。
【００５５】
図８は、光ディスクドライブの書き込み／読み取り単位のセクタ（ａ）と、サイズが２Ｋであるフラッシュメモリのページ（ｂ）を図示する。光ディスクドライブのセクタ（ａ）は図示したようにデータ書き込み領域が規格化されている。セクタ管理部３１３は、フラッシュメモリのページ（ｂ）を、図８に示すように、光ディスクドライブのセクタ（ａ）のように管理する。
【００５６】
書き込み／読み取り制御部３１５は、セクタ管理部３１３を通じて光ディスクドライブのセクタ（ａ）のように仮想化されたページ（ｂ）にデータを書き込みまたはページ（ｂ）からデータを読み取りする。
【００５７】
２Ｋのフラッシュメモリのページは補助領域が６４Ｂである。これは、図示したように、光ディスクドライブのマージン（ＥＣＣ、ＥＤＣ、空白（Blank））より小さい空間である。しかしながら、光ディスクドライブに比べてフラッシュメモリはデータを書き込みまたは読み取りする際、エラーが発生する確率が低い。したがって、マージンを光ディスクドライブより小さくしてもよい。
【００５８】
図９及び図１０は、ホスト１００がデータをページに書き込む例を示す図である。
【００５９】
図９は、ホスト１００がデータを書き込みしようとする際、論理アドレスに（ａ）のように順次アクセスする場合である。この場合、書き込み／読み取り制御部３１５は、（ｂ）のように呼び出された論理アドレスと所定サイズのアドレス差を有する物理アドレスでデータを順次書き込む。
【００６０】
書き込み／読み取り制御部３１５は、フラッシュメモリ３００に光ディスクドライブと同様に順次データを書き込むので、論理アドレスを物理アドレスにマッピングするマッピングテーブルを生成する必要がない。図９で、書き込み／読み取り制御部３１５は論理アドレスと物理アドレスとのアドレス差に基づいてフラッシュメモリ３００にデータを書き込みまたはフラッシュメモリ３００からデータを読み取りする。
【００６１】
図１０は、ホスト１００がデータを書き込みしようとする際、論理アドレスを（ａ）のように順次でなく（ランダムに）呼び出す場合である。この場合、書き込み／読み取り制御部３１５はフラッシュコントローラ３１０の内部のバッファにフラッシュメモリに書き込みしようとするデータを一時記憶した後、図示したように、物理ページ（ｂ）に順次データを書き込む。書き込み／読み取り制御部３１５は、論理アドレスを物理アドレスにマッピングするマッピングテーブルを生成して記憶する。
【００６２】
仮に、書き込まれたことがある論理アドレスのデータを更新しようとすれば、書き込み／読み取り制御部３１５は、マッピングされた物理アドレスにアクセスしてデータを無効にする。書き込み／読み取り制御部３１５は、その後、新規物理アドレスにデータを書き込みして、論理−物理アドレスマッピングテーブルを新規物理アドレスに更新する。
【００６３】
光ディスクドライブの場合、一般的にＵＤＦやＩＳＯ９６６０のファイルシステムを使用する。図１１乃至図１６は、光ディスクドライブのようにファイルシステム領域とデータ領域とを区分して、ファイルが書き込まれる際、実際のフラッシュメモリ３００にデータが書き込まれる方式を示す図である。
【００６４】
図１１は、（ａ）のようにファイルシステム領域とデータ領域とに区分された第１ファイルを実際のフラッシュメモリ（ｂ）に書き込む方式である。書き込み／読み取り制御部３１５は、フラッシュメモリ（ｂ）の物理アドレスに順次アクセスし、データを読み取ることができる。したがって、（ａ）のファイルシステム領域に該当するデータ（１ｆ）とデータ領域に該当するデータ（１ｄ）を（ｂ）に図示したようにフラッシュメモリ３００に順次書き込みできる。
【００６５】
図１２は、図１１のように第１ファイルが書き込まれた後、第２ファイルを書き込みしようとする場合である。光ディスクドライブでは（ａ）のようにファイルシステム領域に第１ファイル及び第２ファイルのファイルシステムデータ（１ｆ、２ｆ）が書き込まれ、データ領域に第１ファイル及び第２ファイルのデータ（１ｄ、２ｄ）が書き込まれる。
【００６６】
光ディスクドライブと異なり、フラッシュメモリにデータを書き込むためには、既に書き込まれたデータを無効にしなければならない。したがって、書き込み／読み取り制御部３１５は、第２ファイルを（ｂ）に書き込む前に、書き込まれた第１ファイルのファイルシステム領域に該当するデータを無効にする。その後、第１ファイルのファイルシステム領域に該当するデータ（１ｆ）と第２ファイルのファイルシステム領域に該当するデータ（２ｆ）を（ｂ）に書き込みし、第２ファイルのデータ領域に該当するデータ（２ｄ）を（ｂ）に書き込む。
【００６７】
図１３及び図１４は、第１ファイル及び第２ファイルをフラッシュメモリに書き込みした後、第２ファイルと第１ファイルを各々削除する場合である。
【００６８】
図１３に示すように、第２ファイルを削除するために（ａ）のようにファイルシステム領域に書き込まれた第２ファイルのファイルシステム領域に該当するデータ（２ｆ）とデータ領域に該当するデータ（２ｄ）が削除されなければならない。
【００６９】
書き込み／読み取り制御部３１５は、第２ファイルを削除するために、先に書き込まれた第１ファイル及び第２ファイルのファイルシステム領域に該当するデータ（１ｆ、２ｆ）を無効にする。また、削除しようとする第１ファイルのデータ領域に該当するデータ（２ｄ）を無効にする。その後、書き込み／読み取り制御部３１５は削除要求されていない第１ファイルのファイルシステム領域に該当するデータ（１ｆ）を再度フラッシュメモリ３００に書き込む。第１ファイルのファイルシステム領域に該当するデータ（１ｆ）は第１ファイルのデータ領域に該当するデータ（１ｄ）をリンクする。
【００７０】
図１４に示すように、第１ファイルを削除するために、（ａ）のようにファイルシステム領域に書き込まれた第１ファイルのファイルシステム領域に該当するデータ（１ｆ）とデータ領域に該当するデータ（１ｄ）が削除されなければならない。
【００７１】
第１ファイルを削除するようになれば、（ｂ）に示すように第２ファイルのファイルシステム領域に書き込まれたデータ（２ｆ）と第２ファイルのデータ領域に書き込まれたデータ（２ｄ）の位置が変更される。
【００７２】
したがって、書き込み／読み取り制御部３１５は、（ｃ）のように、第１ファイル及び第２ファイルのファイルシステム領域に該当するデータ（１ｆ、２ｆ）を無効にし、第１ファイルのデータ領域に該当するデータ（１ｄ）を無効にする。その後、第２ファイルのファイルシステム領域に書き込まれたデータ（２ｆ）を該当フラッシュメモリに再度書き込む。また、書き込まれた第２ファイルのファイルシステム領域に書き込まれたデータ（２ｆ）は、第２ファイルのデータ領域に書き込まれたデータ（２ｄ）をリンクする。
【００７３】
図１５及び図１６は、第１ファイル及び第２ファイルがフラッシュメモリの所定ページに書き込まれた後、第１ファイル及び第２ファイルを更新する方法を示す図である。
【００７４】
図１５で、第２ファイルを更新するために、（ａ）に示すように、第２ファイルのファイルシステム領域に該当するデータ（２ｆ）が更新される。また、第２ファイルのデータ領域に該当するデータ（２ｄ）が新しく書き込まれる。
【００７５】
書き込み／読み取り制御部３１５は、（ｂ）に示すように、更新要求された第２ファイルに該当するデータ（２ｆ、２ｄ）を書き込む前に、第１ファイル及び第２ファイルのファイルシステム領域に該当するデータ（１ｆ、２ｆ）を無効にする。その後、第１ファイルのファイルシステム領域に該当するデータ（１ｆ）、ホスト１００が更新を要求した第２ファイルのファイルシステム領域に該当するデータ（２ｆ）、ホスト１００が更新を要求した第２ファイルのデータ領域に該当するデータ（２ｄ）をフラッシュメモリに再度書き込む。
【００７６】
第１ファイルのファイルシステム領域に該当するデータ（１ｆ）は、上記フラッシュメモリに書き込まれた第１ファイルのデータ領域に該当するデータ（１ｄ）をリンクする。更新要求された第２ファイルのファイルシステム領域に該当するデータ（２ｆ）は更新要求された第２ファイルのデータ領域に該当するデータ（２ｄ）をリンクする。
【００７７】
図１６で、第１ファイルを更新するために、（ａ）に示すように、第１ファイルのファイルシステム領域に該当するデータ（１ｆ）が更新される。また、第１ファイルのデータ領域に該当するデータ（１ｄ）が新しく書き込まれる。
【００７８】
書き込み／読み取り制御部３１５は、（ｂ）に示すように、更新要求された第１ファイルに該当するデータ（１ｆ、１ｄ）を書き込む前に、第１ファイル及び第２ファイルのファイルシステム領域に該当するデータ（１ｆ、２ｆ）を無効にする。その後、ホスト１００が更新要求した第１ファイルのファイルシステム領域に該当するデータ（１ｆ）、第２ファイルのファイルシステム領域に該当するデータ（２ｆ）、及びホスト１００が更新要求した第１ファイルのデータ領域に該当するデータ（１ｄ）をフラッシュメモリに再度書き込む。
【００７９】
第２ファイルのファイルシステム領域に該当するデータ（２ｆ）は、上記フラッシュメモリに書き込まれた第２ファイルのデータ領域に該当するデータ（２ｄ）をリンクする。更新要求された第１ファイルのファイルシステム領域に該当するデータ（１ｆ）は、更新要求された第１ファイルのデータ領域に該当するデータ（１ｄ）をリンクする。
【００８０】
以下、光ディスクドライブのように仮想化されたソリッドステートドライブを用いてブートする過程を説明する。光ディスクドライブのうち、ＲＯＭタイプ、Recordableタイプ、Rewritableタイプのディスクドライブの場合、ＵＤＦあるいはＩＳＯ９６６０のような決まったファイルシステムを使い、EI-Torito（エルトリート）規格に従ってブートイメージ生成を容易にすることができる。しかしながら、ＲＡＭタイプの場合、光ディスク規格のファイルシステムであるＵＤＦ以外のファイルシステム（ＦＡＴ３２等）を支援することができる。したがって、ＦＡＴ３２を支援するＲＡＭタイプにソリッドステートドライブが仮想化されたならば、ＵＤＦ、ＩＳＯ９６６０ファイルシステムを使用する光ディスクドライブのブート規格に従うブートを行うことができない。
【００８１】
本発明では、ＲＡＭタイプに仮想化されたソリッドステートドライブがＵＤＦ、ＩＳＯ９６６０ファイルシステムを支援しない場合にも、光ディスクドライブブート規格に従ってブートできるようにする。
【００８２】
即ち、ＲＡＭタイプに仮想化されたソリッドステートドライブは、フラッシュメモリのうちの一定領域をEI-Torito規格のブートが可能な隠し領域に設定し、残りの領域を実領域に設定する。ホストがブートの試みを行う場合、ユーザに隠された隠し領域のブートデータに基づいて光ディスクドライブのブート規格に従ってブート過程が進行される。その後、フラッシュメモリのうち、実領域がアクセスされる。したがって、ユーザはブート過程の後、ＲＡＭタイプに設定されたフラッシュメモリの実領域のみにアクセスするようになる。仮に、ＦＡＴ３２ファイルシステムを支援するＲＡＭにソリッドステートドライブが仮想化された場合、上記実領域は隠し領域と異なり、ＦＡＴファイルシステムを基盤としてアクセスされる。
【００８３】
図１７は、ＲＡＭに仮想化されたフラッシュメモリで隠し領域と実領域とが区分されて設定されたことを示す図である。図示したように、ブートファイルシステムのブートデータが記憶された隠し領域と、その他のＲＡＭタイプのファイルシステムを支援する実領域とが区別されている。隠し領域はブート時のみにアクセスされ、ユーザに公開されない。
【００８４】
図１８は、図１７に図示された構造を有するフラッシュメモリを用いてブートがなされる過程を示すフローチャートである。
【００８５】
まず、ホストからリセット信号が転送（Ｓ３１）されれば、ソリッドステートドライブの隠し領域からデフォルトでアクセス（Ｓ３２）される。即ち、隠し領域の開始点がフラッシュメモリ３００の物理アドレスの開始アドレスに設定される。ホストに光ディスクドライブのうちのＲＯＭタイプ規格に従うデータが転送され（Ｓ３３）、特別な領域変更要求が入力されない場合（Ｓ３４）、ホストからデバイス認識要求が転送されたか確認される（Ｓ３５）。
【００８６】
一般に、ブート時には光ディスクドライブがデバイスのタイプに関する属性情報をホストに転送する過程無しで、ホストがブートデータを直接読み取ってブート過程を遂行する。したがって、本発明でもホストがデバイス認識要求を送る前に、ホストがブートデータの読み取りを試み、デバイス認識要求が転送されない場合、隠し領域のブートアドレスが呼び出される（Ｓ３６）。
【００８７】
デバイス属性情報をホストへ転送する前にデータ読み取りの試みが成功したので、ブート過程が遂行される。したがって、隠し領域のブートデータが実領域にロードされて仮想ブートイメージが出力される（Ｓ３７）。ロード過程が完了すれば、ホストアクセス領域が隠し領域から実領域に変更される（Ｓ３４）。したがって、フラッシュメモリのうちの実領域が選択され（Ｓ３８）、実領域のアドレスがフラッシュメモリの物理アドレス開始点に変更される。これによって、ホストはソリッドステートドライブをＲＡＭタイプの光ディスクドライブとして認識する（Ｓ３９）。
【００８８】
図１９は、本発明に従ってＲＡＭタイプ光ディスクドライブに仮想化されたフラッシュメモリのブート過程を示す図である。
【００８９】
図示したように、隠し領域（Hidden Area）でエミュレータが動作するので、仮想ブートイメージが出力（call）され、ブートローダ（Boot Loader）を通じて実領域にロードされる。ロードが完了した後、フラッシュメモリの物理アドレス開始点が隠し領域の開始点（ａ）から実領域の開始点（ｂ）に変換される。
【００９０】
ホストは、ソリッドステートドライブの属性情報をＲＡＭタイプとして認識し、ＲＡＭタイプの光ディスクドライブのようにソリッドステートドライブにアクセスする。
【００９１】
以上、添付した図面を参照して本発明の実施形態を説明したが、本発明が属する技術分野で通常の知識を有する者は本発明がその技術的思想や必須的な特徴を変更しないで、他の具体的な形態で実施できるということが分かる。したがって、以上に記述した実施形態は全て例示的なものであり、限定的でないことと理解されるべきである。
【図１】
2011520176.tif 000003
【図２】
2011520176.tif 000004
【図３】
2011520176.tif 000005
【図４】
2011520176.tif 000006
【図５】
2011520176.tif 000007
【図６】
2011520176.tif 000008
【図７】
2011520176.tif 000009
【図８】
2011520176.tif 000010
【図９】
2011520176.tif 000011
【図１０】
2011520176.tif 000012
【図１１】
2011520176.tif 000013
【図１２】
2011520176.tif 000014
【図１３】
2011520176.tif 000015
【図１４】
2011520176.tif 000016
【図１５】
2011520176.tif 000017
【図１６】
2011520176.tif 000018
【図１７】
2011520176.tif 000019
【図１８】
2011520176.tif 000020
【図１９】
2011520176.tif 000021
【国際調査報告】
2011520176.tif 000022
2011520176.tif 000023
2011520176.tif 000024
2011520176.tif 000025