(57)【要約】【課題】  システムバスとメインメモリとを占領することなく、複数のメモリカード間のデータをコピーする方法を提供する。【解決手段】  第一メモリカードから第二メモリカードにデータをコピーする装置であり、前記第一メモリカードと前記第二メモリカードに接続し、その中に保存されているデータにアクセスするマルチカードインターフェースと、システムバスに接続され、前記システムバスによってシステムから送られたコピー命令を受けるバスコントローラーと、前記システムから送られた前記コピー命令が前記バスコントローラーによって受けられた時、前記システムバスを占領せずに前記第一メモリカードから前記第二メモリカードに直接データをコピーするダイレクトメモリアクセスコントローラーとを含むカードリーダー装置。【選択図】        図３
2006023986.tif 000002
【特許請求の範囲】
【請求項１】
第一メモリカードから第二メモリカードにデータをコピーするカードリーダー装置であって、
前記第一メモリカードと前記第二メモリカードに接続し、その中に保存されているデータにアクセスするマルチカードインターフェースと、
システムバスに接続され、前記システムバスによってシステムから送られたコピー命令を受けるバスコントローラーと、
前記システムから送られた前記コピー命令が前記バスコントローラーによって受けられた時、前記システムバスを占領することなく前記第一メモリカードから前記第二メモリカードに直接データをコピーするダイレクトメモリアクセスコントローラーと、
を含むカードリーダー装置。
【請求項２】
前記システムバスの規格は、ＰＣＩまたはＩＳＡのいずれかである請求項１に記載の装置。
【請求項３】
前記第一メモリカードと前記第二メモリカードの規格は、メモリースティック、セーフデジタル、スマートメディア、またはＸＤピクチャーのいずれかである請求項１または２に記載の装置。
【請求項４】
前記バスコントローラーは、更にバスマスターを含み、前記システムにバスコントロール要求を送り、前記システムバスによって、前記システムバス、または前記システムの中のデバイスと通信する請求項１〜３のいずれかに記載の装置。
【請求項５】
前記バスコントローラーは、更にバススレーブを含み、前記システムバスを通して前記コピー命令を受け、前記ダイレクトメモリアクセスコントローラーからフラグを前記システムに送る請求項１〜４のいずれかに記載の装置。
【請求項６】
システムバスを通してシステムから送られたコピー命令を受けるステップと、
前記コピー命令を受けた後、第一カードリーダーを通して第一メモリカードからデータを読み込むステップと、
前記システムバスを占領することなく、直接、第二カードリーダーを通して第二メモリカードに書き込むステップと、
を含むマルチメモリカード間のデータをコピーする方法。
【請求項７】
前記コピー命令を受けた後、前記ダイレクトメモリアクセスコントローラーと、前記第一カードリーダーと、前記第二カードリーダーとを、初期化するステップを更に含む請求項６に記載の方法。
【請求項８】
前記コピー命令を受けた後、バスコントローラーの中のバスマスターを通して前記システムに中断要求を送り、前記システムに前記コピー命令が実行されたことを知らせるステップを更に含む請求項６または７に記載の方法。
【請求項９】
前記第二メモリカードにデータを書き込んだ後、前記ダイレクトメモリアクセスコントローラーの中のフラグを特定値に設定するステップを更に含む請求項６〜８のいずれかに記載の方法。
【請求項１０】
システムバスを通してシステムから送られたコピー命令を受けるステップと、
前記コピー命令を受けた後、前記ダイレクトメモリアクセスコントローラーと、前記第一カードリーダーと、前記第二カードリーダーとを初期化するステップと、
前記コピー命令を受けた後、バスコントローラーの中のバスマスターを通して前記システムに中断要求を送り、前記システムに前記コピー命令が実行されたことを知らせるステップと、
前記コピー命令を受けた後、第一カードリーダーを通して第一メモリカードからデータを読み込むステップと、
前記システムバスを占領することなく、直接、第二カードリーダーを通して第二メモリカードに書き込むステップと、
前記第二メモリカードにデータを書き込んだ後、前記ダイレクトメモリアクセスコントローラーの中のフラグを特定値に設定するステップと、
を含むマルチメモリカード間のデータをコピーする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のメモリカード間のデータを直接コピーする方法と装置に関し、特に、ソフトウェアドライバと連携して内部のダイレクトメモリアクセス（ＤＭＡ）コントローラーを用いて、メモリまたはシステムバスをコピーすることなく、異なる形式の各種のメモリカード間のデータを転送する方法に関するものである。
【背景技術】
【０００２】
フラッシュメモリカードは、それらの小型サイズによって便利で持ち運びが可能である。しかし、例えば、メモリースティック（ＭＳ）、セーフデジタル（ＳＤ）、スマートメディア（ＳＭ）、ｘＤピクチャー（ＸＤ）など、各種のメモリカード間の規格には交換性がない。そのため、利便性の需要からマルチカードリーダーがポピュラーになってきている。従来のマルチカードリーダーは、データ転送に、通常、ユニバーサルシリアルバス（ＵＳＢ）、ローピンカウント（ＬＰＣ）、または周辺装置相互接続インターフェース（ＰＣＩ）を用いる。
【０００３】
ＰＣＩインターフェースを用いた従来のマルチカードリーダーでは、第一カードリーダーから第二カードリーダーにデータをコピーするために、データを読む時、下記のコンポーネント、すなわち、第一メモリカード、ダイレクトメモリアクセス（ＤＭＡ）コントローラー、ＰＣＩバス、サウスブリッジ、ノースブリッジとメインメモリが順番に占領される。同様に、データがメインメモリから第二メモリカードに書き込まれる時、下記のコンポーネント、すなわち、メインメモリ、ノースブリッジ、サウスブリッジ、ＰＣＩバス、ＤＭＡコントローラーと最後に、第二メモリカードが順番に占領される。したがって、ＰＣＩバスの資源は、二回占領され、中央演算処理装置（ＣＰＵ）は、二回中断され、メインメモリは二回アクセスされる。
【０００４】
図１に見られるように、従来の外部接続のＰＣＩ装置２０、２１および２２のデータは、読み込みまたは、書き込みに関わらず、必然的にシステムバス２３、ノースおよびサウスブリッジ２５とメインメモリ２４とを占領する。
【０００５】
図２は、マルチカードリーダー２７がシステムバス１４に差し込まれた時に、メモリカード１６からメモリカード１７にコピーするプロセスを示している。まず、コピー命令がオペレーティングシステム１０からカードリーダードライバ８および９に出される。カードリーダードライバ８は、カードリーダー３に対応し、カードリーダードライバ９は、カードリーダー４に対応する。ＤＭＡコントローラー１とカードリーダー３〜４は、続いて、バスコントローラー１３の中のバススレーブ７によって受けたコピー命令によって初期化される。オペレーティングシステム１０は、続いて、バスマスター６を通して送られた中断要求１１によって確認し、コピープロセスの開始を知らせる。
【０００６】
初期化の完了後、データは、ノースおよびサウスブリッジ２５を通して、バスマスター６によってコントロールされたシステムバス１４を経由して、カードリーダー３からＤＭＡコントローラー１に転送され、最後にメインメモリ２４に書き込まれる。
【０００７】
したがって、データは、メインメモリ２４から読み込まれ、ノースおよびサウスブリッジ２５を通して、バスマスター６によってコントロールされたシステムバス１４を経由して、再度、ＤＭＡコントローラー１に転送される。コピープロセスは、データがＤＭＡコントローラー１によってカードリーダー４のメモリカード１７に書き込まれた時、完了する。完了した時、中断要求が同時にバスマスター６によってオペレーティングシステム１０に送られ、システムにコピープロセスが完了したことを知らせる。
【０００８】
従来の方法では、データは、ダイレクトメモリアクセス技術によって読まれ、書き込まれ、コンポーネントは、下記の順序で占領される。メモリカード１６、カードリーダー３、ＤＭＡコントローラー１、バスマスター６、システムバス１４、ノースおよびサウスブリッジ２５、メインメモリ２４、ノースおよびサウスブリッジ２５、システムバス１４、バスマスター６、ＤＭＡコントローラー１、カードリーダー４、メモリカード１７の全部で１３のステップである。よって、システムが二回中断される。従来の方法は、ＰＣＩバスにかなりの負担をかけ、バンド幅を浪費し、メインメモリとＰＣＩバスの間の転送隘路を生じさせる。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
本発明の目的は、システムバスとメインメモリを占領することなく、複数のメモリカード間のデータをコピーする方法を提供する。
本発明によって提供された方法は、隠しダイレクトメモリアクセス（ｈｉｄｄｅｎ  ＤＭＡ）転送と言われ、この方法に用いられるマルチカードリーダーも提供される。
【課題を解決するための手段】
【００１０】
マルチカードリーダーは、マルチカードインターフェース、バスコントローラー、ＤＭＡ（ダイレクトメモリアクセス）コントローラーを含む。マルチカードインターフェースは、更に各種の形式の複数のスロットを含み、異なる規格のメモリカードに対応する。バスコントローラーは、バスマスターとバススレーブを含み、それぞれ特定の操作をコントロールする。ＤＭＡコントローラーは、データ転送の主要なプロセッサーで、システムドライバの制御の下に、カードリーダーとシステムとの間に流れる全てのデータを操作する。
【００１１】
データが第一メモリカードから第二メモリカードにコピーされる時、下記のステップが求められる。まず、システムバスによってシステムから送られたコピー命令が受けられる。データは、続いてコピー命令を受けた後、第一カードリーダーによって第一メモリカードから読み込まれる。最後にデータは、システムバスを占領することなく第二カードリーダーによって第二メモリカードに書き込まれる。したがって、メモリとシステムバスは、データのコピープロセスによって占領されず、１回の中断だけでコピープロセスが始められたことをシステムに知らせることができる。内部フラグは、システムが中断を確認した時、作動され、コピープロセスは、フラグ値が特定値の時、プロセスが完了していると確定される。
【００１２】
よって、本発明に基づいた隠しダイレクトメモリアクセス転送の方法を用いると、下記のコンポーネントだけが順番に占領される。メモリカード１６、カードリーダー３、ＤＭＡコントローラー１、カードリーダー４とメモリカード１７の全部で５ステップで、１回のシステム中断要求だけが求められる。従来のシステムの１３ステップと２回の中断に比べ、本発明の方法は、早く、より効率的である。
【発明の効果】
【００１３】
本発明に基づいた隠しＤＭＡ転送の方法を用いると、データは、メインメモリにアクセスすることなく、またはＰＣＩバスを占領することなく、直接、内部ＤＭＡ（ダイレクトメモリアクセス）コントローラーによってメモリカード間を転送する。コピープロセスの完了を指示する通知だけが中央演算処理装置で待たされる。
【発明を実施するための最良の形態】
【００１４】
本発明についての目的、特徴、長所が一層明確に理解されるよう、以下に実施形態を例示し、図面を参照にしながら、詳細に説明する。
【００１５】
本発明の詳細な説明が下記に提供される。
図３に示すように、マルチカードリーダー２７は、コンピューターシステムのシステムバス１４に差し込まれ、オペレーティングシステム１０からカードリーダー８と９を通して出された命令によってコントロールされる。マルチカードリーダー２７は、バスコントローラー１３、ＤＭＡコントローラー１を含み、カードリーダー２〜５がそこに設置される。バスコントローラー１３は、バスマスター６とバススレーブ７との組合せである。バスマスター６は、データ転送の間、システムバス１４を導き、バススレーブ７は、オペレーティングシステム１０からシステムバス１４を通して出された命令を受け、フラグ値を用いてオペレーティングシステム１０に対して応答する。
【００１６】
ＤＭＡコントローラー１は、マルチカードリーダー２７の全てのデータの流れを導き、ドライバ１９の指示の下で、どのドライバの間のデータのコピーも可能である。例えば、カードリーダーからカードリーダーへ、カードリーダーからシステムへ、またはシステムからカードリーダーへなどである。
【００１７】
メモリースティック（ＭＳ）、セーフデジタル（ＳＤ）、スマートメディア（ＳＭ）、ｘＤピクチャー（ＸＤ）を含むいずれかの規格のメモリカード１５〜１８は、対応するカードリーダー２〜５に差し込まれる。システムバス１４は、周辺装置相互接続インターフェース（ＰＣＩ）、ＩＳＡ（ｉｎｄｕｓｔｒｉａｌ  ｓｔａｎｄａｒｄ  ａｒｃｈｉｔｅｃｔｕｒｅ：通称、アイサ）、またはローピンカウント（ＬＰＣ）に適合する。
【００１８】
図３は、データがメモリカード１６からメモリカード１７にコピーされる状態を図解している。マルチカードリーダー２７は、システムバス１４と接続されたバスコントローラー１３を含む。オペレーティングシステム１０は、カードリーダードライバ８または９と連携してマルチカードリーダー２７をコントロールする。カードリーダー３は、カードリーダードライバ８を読み、カードリーダー４は、カードリーダードライバ９を読む。コピー命令は、オペレーティングシステム１０の指示の下にカードリーダードライバ８から出され、システムバス１４を経由して、バスコントローラー１３の中に置かれたスレーブ７によって受けられ、ＤＭＡコントローラー１、カードリーダー３とカードリーダー４を初期化する。
【００１９】
初期化が完了後、データは、カードリーダー３からＤＭＡコントローラー１によって読み込まれ、中断要求は、同時に、バスコントローラー１３の中に置かれたバスマスター６を通してオペレーティングシステム１０に送られ、コピープロセスが始められたことをシステムに知らせる。カードリーダードライバ９は、続いて、オペレーティングシステム１０によって指示され、ＤＭＡコントローラー１の中のフラグ値をモニタする。
【００２０】
データは、カードリーダー４を通してＤＭＡコントローラー１によってメモリカード１７に書き込まれる。完了した時、フラグは特定値に設定され、コピープロセスが完了したことをシステム１０に知らせる。
【００２１】
もう１つの実施例では、相互接続の機構がカードリーダードライバ８および９に具備され、オペレーティングシステム１０を占領することなく、対応するカードリーダーの初期化を自動化するようにしてある。オペレーティングシステム１０は、指示を出すことを要求されるのみであり、カードリーダードライバは、残りのタスクを完了させ、オペレーティングシステム１０がそれぞれの複雑なコンポーネントの初期化のステップを完了する負担から免れさせる。
【００２２】
このように、本発明に基づいた隠しＤＭＡ転送の方法を用いると、データは、メインメモリにアクセスすることなく、またはＰＣＩバスを占領することなく、直接、内部ＤＭＡ（ダイレクトメモリアクセス）コントローラーによってメモリカード間を転送する。コピープロセスの完了を指示する通知だけが中央演算処理装置（ＣＰＵ）で期待される。
【００２３】
したがって、データ転送は、下記のコンポーネントを順番に占領する。すなわち、メモリカード１６、カードリーダー３、ＤＭＡコントローラー１、カードリーダー４およびメモリカード１７の全部で５ステップで、システム１０には、１回のシステム中断要求だけが求められる。従来では、１３ステップと２回の中断に比べ、本発明の方法は、より効率的で早く、システム資源の消費を減少することができる。
【００２４】
以上、本発明の好適な実施例を例示したが、これは本発明を限定するものではなく、本発明の精神及び範囲を逸脱しない限りにおいては、当業者であれば行い得る少々の変更や修飾を付加することは可能である。従って、本発明が保護を請求する範囲は、特許請求の範囲を基準とする。
【図面の簡単な説明】
【００２５】
【図１】関連技術に基づいたデータ転送を示す流れ図である。
【図２】関連技術に基づいたＰＣＩ  ＤＭＡ構造の概略図である。
【図３】本発明に基づいた隠しダイレクトメモリアクセス（ｈｉｄｄｅｎ  ＤＭＡ）構造の概略図である。
【符号の説明】
【００２６】
１  ダイレクトメモリアクセスコントローラー
２、３、４、５   カードリーダー
６  バスマスター
７  バススレーブ
８、９     カードリーダードライバ
１０  オペレーティングシステム
１１、１２  中断要求
１３  バスコントローラー
１４  システムバス
１５、１６、１７、１８  メモリカード
１９  ドライバ
２０、２２  周辺装置相互接続インターフェース
２１  周辺装置相互接続インターフェース（マスター）
２３  周辺装置相互接続インターフェースのバス
２４  メインメモリ
２５  ノースおよびサウスブリッジ
２６  中央演算処理装置（ＣＰＵ）
２７  マルチカードリーダー
【図１】
2006023986.tif 000003
【図２】
2006023986.tif 000004
【図３】
2006023986.tif 000005