JP2015062131A - Mmc/sdデバイスからホストデバイスをブートする方法,mmc/sdデバイスからブート可能なホストデバイス及びホストデバイスをブートできるmmc/sdデバイス - Google Patents

Mmc/sdデバイスからホストデバイスをブートする方法,mmc/sdデバイスからブート可能なホストデバイス及びホストデバイスをブートできるmmc/sdデバイス Download PDF

Info

Publication number
JP2015062131A
JP2015062131A JP2014227936A JP2014227936A JP2015062131A JP 2015062131 A JP2015062131 A JP 2015062131A JP 2014227936 A JP2014227936 A JP 2014227936A JP 2014227936 A JP2014227936 A JP 2014227936A JP 2015062131 A JP2015062131 A JP 2015062131A
Authority
JP
Japan
Prior art keywords
mmc
interface
peripheral device
boot
host device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2014227936A
Other languages
English (en)
Inventor
ミッリ,キンモ
Mylly Kimmo
アフベナイネン,マルコ
Ahvenainen Marko
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Memory Technologies LLC
Original Assignee
Memory Technologies LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=38264637&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP2015062131(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Memory Technologies LLC filed Critical Memory Technologies LLC
Publication of JP2015062131A publication Critical patent/JP2015062131A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/24Loading of the microprogram
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Power Sources (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】メモリカードの多くの特性を変更することなく,既存のMMCカード及ぶSDカードの能力を拡張し,また完全な下方互換性を保証することである。
【解決手段】電源端子と,データバス端子を備えるデータバスと,クロック端子を備えるクロック線と,コマンド端子を備えるコマンド線と,を備えるMMC/SDインタフェースのようなインタフェースを介して周辺デバイスからホストデバイスをブートするシステム及び方法である。電力は電源端子に供給され,MMC/SD又は類似のインタフェースのコマンド端子は起動中にロウ信号レベルに設定される。データ送信の開始ビットを探索するためにデータバスが監視される。
【選択図】図1

Description

本発明は,メモリデバイス,特にメモリカードのインタフェースに関する。より詳細に言えば本発明は,マルチメディアカード(MMC)又はセキュアデジタル(SD(登録商標))カードに関する。従来から知られているメモリカード電子インタフェースによって組み込み大規模メモリが導入され始めている。すなわち,大規模メモリと類似のメモリカードを用いることができることが望まれる。今日までそのようなインタフェースは,着脱可能メモリカードに集中して開発及び改良されてきた。そのインタフェースを組み込みメモリにも適するようにするためには,いくつかの未解決の課題に取り組む必要がある。
本発明は,従来から知られている直列プロトコルメモリカードインタフェース(MMC IF)にブート機構も導入する。本方法は(既存技術のとおり)同一信号レベルを用いてもよいし,メモリカードインタフェースの既存の直列プロトコルを用いてもよい。
MMC仕様の概要は次のインターネットサイトからダウンロードすることができる。
http://www.mmca.org/compliance/buy_spec/MMCA_System_SummaryV41.pdf
別の電子インタフェースを備える既存の組み込み大規模メモリコンポーネントのブート規定は既に知られている。これらの既知コンポーネントは,例えばNAND,OneNAND(登録商標)及びMDOC大規模メモリである。これらすべてに共通することは,起動のある段階でメモリコンポーネントに対してデータの第1セクタ(通常は512B)をIOバッファに取得するように指示するために(例えばブートのために予約されている別個のピンにおいて)ある信号レベルを用いることである。先行技術として引用するM−systems社のDiskOnChip(登録商標)(DOC)の技術データシートは,インターネットの次のアドレスから取得することができる。
http://www.m-systems.com/NR/rdonlyres/85A96312-0130-47AD-A22C-CB533E28EE7A/0/DOC_G3_512Mb_1Gb_Rev20.pdf
別の電子インタフェースを備える別の既存組み込み大規模メモリコンポーネントには,別の既知のブート規定がある。この種のコンポーネントは,例えばNAND(http://www.samsung.com/Products/Semiconductor/NANDFlash/index.htm参照)と,OneNAND(登録商標)(http:// www.samsung.com/Products/Semiconductor/OneNAND/index.htm参照)と,MDOC(http://www.m-systems.com/site/en-US/Products/DiskOnChip/DiskOnChip/参照)と,の大規模メモリである。これらすべてに共通することは,起動のある段階でメモリコンポーネントに対してデータの第1セクタ(通常は512B)をIOバッファに取得するように指示するために(例えばブートのために予約されている別個のピンにおいて)ある信号レベルを用いることである。
現在のMMC及びSDメモリカードは,例えばホットスワップ(活線挿抜)操作を行うことができるが,より多くの機能を提供することができるようにこれらのメモリカードの能力を拡張することも望まれる。
メモリカードの可用性を改善するためには,ユーザがメモリカードをブート可能媒体として用いることができるようにすることが望ましい。この特徴によって,例えばMMCカード及びSDカードは携帯電話機又はカメラのような自己ブートデバイスだけでなく,例えばラップトップ計算機及びパームトップ計算機用のブート可能記憶媒体としても広く使われるようになるであろう。
現在MMCカード及びSDカードの分野では,ホストデバイスのブート時に第1(セクタ)データにアクセスする唯一の方法は,カードの初期化と,レジスタの読み書きと,既知のアドレスへの正常読み出しアクセスと,のすべての手続に従うことである。
既存のMMCメモリカード及びSDメモリカードインタフェースプロトコルに関する課題は,効率のよいブート機構が規定されていないことである。ホストデバイスのブート時に第1(セクタ)データにアクセスする唯一の方法は,カードの初期化と,レジスタの読み書きと,既知のアドレスへの正常読み出しアクセスと,のすべての手続に従うことである。このことは,ブートアドレス(例えば読み出すことになっているブートデータのアドレスが既知でないような)への正常読み出しアクセスを自動的に実行するように構成されていないデバイスに対しては,ブート手続を実行できないことを意味する。
また,電子インタフェース又はフォームファクタを変更する必要なく,すなわち起動のある段階でメモリコンポーネントに対してデータのあるセクタをIOバッファに取得するように指示するために,ブート用に予約されている追加の別個のピンの信号レベルを用いることなく,より広い可用性を達成できることも望まれる。
MMC仕様概要(http://www.mmca.org/compliance/buy_spec/MMCA_System_SummaryV41.pdf) M−systems社DiskOnChip(登録商標)(DOC)の技術データシート(http://www.m-systems.com/NR/rdonlyres/85A96312-0130-47AD-A22C-CB533E28EE7A/0/DOC_G3_512Mb_1Gb_Rev20.pdf) ブート規定、NAND(http://www.samsung.com/Products/Semiconductor/NANDFlash/index.htm) ブート規定、OneNAND(登録商標)(http:// www.samsung.com/Products/Semiconductor/OneNAND/index.htm) ブート規定、MDOC(http://www.m-systems.com/site/en-US/Products/DiskOnChip/DiskOnChip/)
したがって本発明が扱う課題は,メモリカードの多くの特性を変更することなく,既存のMMCカード及ぶSDカードの能力を拡張し,また完全な下方互換性を保証することである。
本発明の一態様によって,MMCカード/デバイス及びSDカード/デバイスで用いられているMMC IFの従来から既知の直列プロトコルメモリカードインタフェースにブート機構が導入される。この方法は,(先行技術と)同一の信号レベルを用いてもよいし,メモリカードインタフェースの既存の直列プロトコルを利用してもよい。
本発明の第1態様によって,MMC/SDインタフェースを介して周辺デバイスからホストデバイスをブートする方法が提供される。このMMC/SDインタフェースは,電源端子と,データバス端子を備えるデータバスと,クロック(CLK)端子を備えるクロック(CLK)線と,コマンド端子(CMD)を備えるコマンド線(CMD)とを備える。本発明によれば,方法は,上記電源端子に電力(及び接地)を供給するステップと,起動中に(ホストデバイスの)上記MMC/SDインタフェースのCMD端子をロウ(low)(信号レベル(signal state))に設定するステップと,続いてデータバスを監視してデータ送信の開始ビットを探索するステップと,を有する。
MMC/SDカード又はデバイスの標準起動手続においては,ホストデバイスは起動中に上記MMC/SDインタフェースのCMD端子をハイ(high)に設定する。すなわちこの実施例は,起動中にブートを指示するために既存の信号を利用する。しかしそれは,ブート手続を実行しようとするホストデバイスが用いるインタフェースにおいては「予期しない」信号である。現在は,MMC/SDカード又はデバイスの起動手続中にCMD線がロウに設定されると何が起きるか,MMC/SD仕様には規定されていない。
ホストデバイスの上記MMC/SDインタフェースのCMD端子は,通常は”CMD0”コマンドがCMD線を介して送信される期間「ロウ」信号レベルに設定してもよい。”CMD0”コマンドとは,起動手続のコマンド,GO_IDLE_STATE(CMD0)である。初期化中に用いられる次のコマンドはCMD1,SEND_OP_COND (send operation condition)であり,MMD/SDインタフェースを備える周辺デバイスの動作電圧範囲を識別するものである。初期化手続のほかのコマンドはCMD2及びCMD3であり,CMD2(ALL_SEND_CID)は唯一のカード識別番号(CID)を要求し,CMD3(SET_RELATIVE_ADDR)は相対カードアドレス(RCA)を設定するものであって,RCAはCIDよりも短いので,データ交換を短縮することができる。
本発明の例示実施例において,方法は更に,CLK信号を上記ホストデバイスから上記MMC/SDインタフェースの上記CLK端子に送信するステップを有する。ここで上記MMC/SDインタフェースの上記CLK端子は,起動処理前又は起動処理中,初期化クロックが24サイクルと48サイクルとの間,より好ましくは60サイクルと100サイクルとの間,そして最も好適には74サイクル又は少なくとも74サイクル送信される間ロウレベルに設定される。
本発明の別の例示実施例においては,上記方法は更に,カードが上記データバスにデータを送信している限り,上記ホストデバイスから上記CLK端子にCLK信号を送信するステップを有し,例えばホストデバイスはカードが送信しなければならないすべてのデータが送信されるまで,クロック供給を続ける。
本発明の方法のまた別の例示実施例においては,ホストデバイスはデータバス端子をロウレベルに設定してデータ転送に用いるデータバス幅を標示する。この実施例においては,ホストデバイスはMMC/SDインタフェースを備える周辺デバイスに,MMC/SDカードのようなMMC/SDデバイスがブートデータを送信するために用いるデータ線/端子の数を通知することができる。本明細書において,MMC/SDデバイスという表現はMMC/SDメモリカード,及びMMC/SDインタフェースを備える組み込みメモリデバイスのような組み込みデバイスを指すために選ばれている。
例えば,第1データバス端子(Dat0)だけをロウレベルに設定してMMC/SDインタフェースを備える周辺デバイスに,この端子だけを用いて(単一チャネル多重で),ブートデータを転送するために用いられる。
すなわち,CMD線をロウレベルにしてブート要求を標示すると共に,ブートデータをホストデバイスに伝送するために用いられるデータバス線に対応する数のデータバス線がロウレベルに設定される。
これらの実現例によって,コンポーネントを完全に初期化し,例えばブートデータを要求するために,最初の読み出しアクセスに先立ってレジスタを設定する必要は最早必要ない。
本発明の別の態様によって,MMC/SDインタフェースを備える周辺デバイスからブートする方法が提供される。基本的にこの態様はブート手続の周辺デバイス側に関するものである。周辺デバイスは,電源端子と,データバス端子を備えるデータバスと,CLK端子を備えるCLK線と,CMD端子を備えるCMD線と,を備えるMMC/SDインタフェースを備える。本発明のこの態様の方法は,上記MMC/SDインタフェースの上記電源端子において電力(及び接地)を受電するステップと,起動前又は起動中にCMD端子においてロウ(レベル)信号を受信するステップと,データバスを介して所定記憶領域の第1データを第1データフレームの開始ビットから送信するステップと,を有する。
起動中MMC/SDインタフェースを備える周辺デバイスは,CMD線において「予期しない」信号を検出し,所定データファイル,所定記憶領域又はメモリ領域,若しくはMMC/SDインタフェースを備える周辺デバイスのメモリモジュール又はコアの「ブートデータセクタ」からブートデータを送信開始する。ホストデバイスをブートする上述の方法と,MMC/SDインタフェースを備える周辺デバイスからブートする方法との組合せは,互いにブート処理を補完する。例えば双方の関係するデバイス(例えばホストデバイス及びMMC/SDインタフェースを備える周辺デバイス)のすべてのステップを有するシステム請求項も考えられる。
例示実施例においては,起動処理中に初期化クロックを24サイクルと148サイクルとの間,好ましくは60サイクルと100サイクルとの間,そして最も好適には74クロックだけ送信する間,前記MMC/SDインタフェースの前記コマンド端子においてロウレベル信号を受信したときだけ,データバスを介して所定記憶領域の上記第1データが送信される。また,ブートデータ転送のために所定記憶領域の代わりに所定ファイルを選択することも考えられる。
本発明の方法の例示実施例においては,上記方法は更に,データバス端子においてデータ転送に用いるデータバス幅を標示するロウレベル信号を受信するステップと,上記データを標示されたデータバス幅を用いて送信するステップと,を有する。
例えば最初の2つのデータバス端子(Dat0及びDat1)を「ロウ」(信号レベル)に設定することになったとき,MMC/SDインタフェースを備える周辺デバイスはこれら2つの端子だけを用いて(2チャネル多重で)ブートデータをホストデバイスに転送する。
すなわち,CMD線をロウに設定する(すなわちブート要求を標示する)と共に,ブートデータをホストデバイスに転送するために用いるデータバス線の数に対応するデータバス線が「ロウレベルに設定される」。
本発明の別の態様によって,MMC/SDインタフェースを備える周辺デバイスからホストデバイスをブートする方法が提供される。ホストデバイスは,電源端子と,データバス端子を備えるデータバスと,CLK端子を備えるCLK線と,CMD端子を備えるCMD線と,を備えるMMC/SDインタフェースを備える。この方法は,初期化手続き中に上記ホストデバイスから上記MMC/SDインタフェースを介して上記周辺デバイスへブート要求引数を送信するステップであって,上記ブート要求はコマンドを含むステップと,CLK信号をCLK線に送信するステップと,データバス端子を監視してデータ送信の開始ビット(及びデータ自身も)探索するステップと,を有する。
この実現例は既存の直列プロトコルコマンドを利用するものである。すなわち「予期しない」信号プロトコルコマンドをインタフェースに送信して,ホストデバイスが(MMC/SDインタフェースを備える周辺デバイスからのデータによって)ブート手続を実行する意図があることを標示する。この方法は例えば,リセットコマンドを含むブート要求引数をホストデバイスからMMC/SDインタフェースを介して周辺デバイスへ送信するステップと,続いてデータバス端子を監視してデータ送信又はデータフレームの開始ビットを探索するステップと,によって実現してもよい。ブート要求引数は,初期化手続中,例えばCMD0段階(例えばカードの起動後のMMC/SDインタフェースを備える周辺デバイス初期化)の際,又はその直後に送信される。コマンドフレーム内部(例えばMMC/SD仕様書に規定されたCMD0コマンドの内部)の内部ブート要求を送信することも考えられる。
この方法は,例えば現在は0x00000000であるCMD0の引数を修正することによって実現できる。MMC/SDインタフェースに送信する第1引数の値が0x00000001であるときは,ブート要求を標示する。
本発明の例示実施例によれば本方法は更に,ブート要求引数と共に,ブートセクタ読み出しに用いるデータ線数,使用するクロック周波数及びタイミングモード,などのグループから選択したブートシーケンスに関係するパラメータを標示する追加引数を,上記ホストデバイスからMMC/SDインタフェースへ送信するステップを有する。データバス幅に関する引数は,例えばブート要求に加えてコマンドフレーム内(例えばCMD0のコマンドフレーム内)で転送してもよい。
この実施例は,ブート要求における(又はこれに関係する)ブートシーケンス又はブート手続,若しくはブートデータ転送手続に関係するほかの引数の追加パラメータを,ホストデバイスが規定できるようにする。
本発明の別の態様において既に説明したとおり,ブートデータ送信に用いるバス幅は,(ブート要求引数の送信前,送信中,又は送信後に)ロウレベルに設定されるいくつかのデータバス端子によって標示することもできる。また,「ロウ」信号レベルに設定されたデータバス端子の数を用いて,送信に用いるデータバス端子の数を標示することもできる。
2進計数アルゴリズムをDat0端子からDat7端子に用いると,4つの端子,例えばDat0からDat3を用いるだけで,ブートシーケンスを転送するために用いるすべての可能な端子数を判定するための端子を規定することができる。Nを例えば(2進数−1)として送信に用いる2個のデータ端子を規定するために2進計数アルゴリズムを用いると,3個のDat端子を用いるだけで8個(そして64個までの)まだ規定されていないDat端子を規定することができる。そうでないときは,単一線送信用のDat端子はすべての端子を「ハイ」に設定することによって標示される。そうすることによって(ブート手続中の標準信号は,すべてのデータ端子を「ハイ」に設定するので)バス幅としては全く解釈されない。また,初期化手続き中にDat線又は端子のうち1つだけをブート要求の標示として「ロウ」に設定することも考えられる(残りはバス幅,周波数,又は別のパラメータを表してもよいし,表さなくてもよい)。
(当業者であれば,この実現例においてロウ信号レベルは,正又は負の計数方式によってそれぞれ2進値の「0」又は「1」として解釈されるものであり,2進数がDat0からDat3へ計数されるか,偶数番目又は奇数番目の端子だけで表されるか,若しくは上から下(Dat7からDat4)へ計数されるか,等を明示的に記す必要はないことに気付くであろう。)
この実現例では4番目から5番目のDat端子は空けてあるので,ブートセクタ読み出しに用いるデータ線の数,用いる周波数及びタイミングモード,などのような追加ブート期間パラメータを符号化するために用いてもよい。
起動中のデータバス信号についてのこの実現例は,すべての上述の,及び以降の本発明の方法又はデバイスの実現例において実現することができる。
本発明のまた別の態様によって,MMC/SDインタフェースを備える周辺デバイスの上述のブートデータ提供手続が提供される。この方法は,電源端子と,データバス端子を備えるデータバスと,CLK端子を備えるCLK線と,CMD端子を備えるCMD線と,を備えるMMC/SDインタフェースを備える周辺デバイスからホストデバイスをブートするものである。この方法は,MMC/SDインタフェースを備える周辺デバイスの初期化手続中に,上記周辺デバイスの上記MMC/SDインタフェースにおいて上記ホストデバイスからブート要求引数を受信するステップと,上記データバスにおいてCLK信号を受信するステップと,ブートデータが上記周辺デバイスに記憶されているとき,上記MMC/SDインタフェースを介してデータ送信の開始ビットからデータを送信するステップと,を有する。
この実現例は,例えば既存の直列プロトコル(及びおそらくリセットコマンド)を(通常予期されるCMD0コマンドの代わりに受信される)「予期しない」信号プロトコルコマンドとして利用するものである。このコマンドはインタフェースにおいて受信され,周辺デバイス(制御部)はこれをブートデータ送信要求と解釈する。ホスト側手続において既に開示したとおり,ブート要求の上記引数は,例えば上記MMC/SDインタフェースにおけるリセットコマンドを含む(ブート要求を標示する修正CMD0コマンドに含まれる)。カードが例えば引数を有するリセットコマンドCMD0を受信した後,カードは第1データをIOバッファに取得し,データバスに記憶した,又は取得したブートデータをデータバスに送信する(少なくとも,CLK信号がCLK端子において受信されている限り)。
本発明の例示実施例においては,本方法は更に,上記ホストデバイスからの上記ブート要求引数と共に,ブートセクタ読み出しに用いるデータ線の数と,データ送信に使用するクロック周波数及びタイミングモードと,のグループから選択したブートシーケンスに関連するパラメータを標示する追加引数を受信するステップと,上記の標示パラメータを用いて,上記データバスを介して上記ホストデバイスへデータを送信するステップと,を有する。この方法は直接ブート要求内に実現してもよいし,Dat0端子からDat7端子において検出される対応する信号入力又は信号レベルによって標示してもよい。
本発明の別の態様によって,MMC/SDインタフェースを備える周辺デバイスからホストデバイスをブートする方法が提供される。本方法は,MMC/SDインタフェースを備える周辺デバイスが待機状態になるまで,MMC/SDインタフェースを備える周辺デバイスの標準初期化データ交換を行うステップと,続いて上記ホストデバイスと上記待機状態の上記周辺デバイスとの間でデータ交換を行い,データバス中のコンポーネント内の有効なブートコードを探索するステップと,を有する。
上記ブート要求において,引数は(カードが待機状態に入るまでの正常初期化の)CMD0,CMD1,CMD2,CMD3コマンドと同時,又はその後の初期化シーケンスの後の段階において与えることもできる。MMC/SDインタフェースを備える周辺デバイスが待機状態になった後,ホストデバイスはデータバス内の各コンポーネントを一つずつ有効なブートコードを探索する。
この態様は,ホストデバイスがアプリケーションを起動してブートデータを積極的に探索する前に,MMC/SDインタフェースを備える周辺デバイスの通常の初期化処理を利用する。この実現例では,ホストデバイスがたとえ未ブート状態であっても,全初期化処理及びMMC/SDインタフェースを備える周辺デバイス上に記憶されたブートデータを探索し,ロードするルーチンを実行できる必要がある。すなわちホストデバイスは,少なくともMMC/SDインタフェースを備える周辺デバイス初期化用のハードコードアルゴリズム及びブートデータ探索ロードアルゴリズムを必要とする。
この実現例には,対応するように修正したホストデバイス及び全く通常のMMC/SDインタフェースを備える周辺デバイスによって実行できるという最も大きな利点がある。
本発明の別の態様によって,MMC/SDインタフェースを備える周辺デバイスからホストデバイスをブートする方法が提供される。ホストデバイスは,データバス及びCMD端子を備えるMMC/SDインタフェースを介して周辺デバイスに接続される。更に上記周辺デバイスは,MMC/SDインタフェースを備える周辺デバイスの動作条件レジスタ内にブート要求の追加引数を有する。本発明のこの態様において上記方法は,MMC/SDインタフェースを備える周辺デバイスの標準初期化処理を実行するステップと,上記初期化処理が終了した後で,ブート要求引数を上記MMC/SDインタフェースへ送信するステップと,データバスを監視して上記MMC/SDインタフェースを介して周辺デバイスから受信するブートデータを探索するステップと,を有する。
本発明のこの実施例は,MMC/SDインタフェースを備える周辺デバイスの初期化処理の”CMD1”(又は引き続く高次CMD番号の)段階で実行することができる。すなわちブートデータの転送は,周辺デバイス初期化の初期ステップに引き続いて開始される。上記の場合と同様に,この方法は動作条件レジスタ,したがってMMC/SDインタフェースを備える周辺デバイス自体において変更が必要である。したがって,このブートデータ転送を実行できるように既存の(ホストデバイス又は)MMC/SDインタフェースを備える周辺デバイスを更新することはできないかもしれない。
本発明の上述の場合と同様に,上記方法もまた周辺デバイス側に付属物(pendant)を備える。本発明のこの実施例においては,MMC/SDインタフェースを備える周辺デバイスからホストデバイスをブートする方法が提供される。上述の場合と同様に上記周辺デバイスには,データバス及びCMD端末を備えるMMC/SDインタフェースが提供される。MMC/SDインタフェースを備える周辺デバイスはまた,上記周辺デバイスの動作条件レジスタにブート要求の追加引数が提供される。本発明のこの実施例は,MMC/SDインタフェースを備える周辺デバイスの初期化処理を実行するステップと,その後に上記初期化処理を終了させるステップと,周辺デバイスにおいてブート要求引数を受信するステップと,ブートデータを上記周辺デバイスのメモリモジュールから取得して上記MMC/SDインタフェースを介して上記ホストデバイスへ送信するステップと,を有する。
本発明の別の態様によって,サーバからダウンロード可能であって,MMC/SDインタフェースを備える周辺デバイスからホストデバイスをブートする上記の方法を実行する計算機プログラム製品が提供される。この計算機プログラムは,ホストデバイス,MMC/SDインタフェースを備える周辺デバイス,又はMMC/SDインタフェースを備える周辺デバイスを挿入したホストデバイスのシステム上で実行すると上記方法ステップのすべてを実行するプログラムコード手段を含む。
本発明のまた別の態様によって,計算機可読媒体に記憶され,ホストデバイス,MMC/SDインタフェースを備える周辺デバイス,又はMMC/SDインタフェースを備える周辺デバイスを挿入したホストデバイスのシステム上で実行するとMMC/SDインタフェースを備える周辺デバイスからホストデバイスをブートすることができる上述の方法を実行できるプログラムコード手段を含む。
本発明の別の態様によって,計算機データ信号が提供される。この計算機データ信号は搬送波に埋め込まれて,ホストデバイス,MMC/SDインタフェースを備える周辺デバイス,又はMMC/SDインタフェースを備える周辺デバイスを挿入したホストデバイスのシステム上で実行すると,計算機に上記方法を実行させるプログラムを表す。
この計算機プログラム又は計算機プログラム製品は,ホストデバイス及びMMC/SDインタフェースを備える周辺デバイスのシステムの種々の部分に分散している,例えば計算機プログラムの一部は実行可能形式でホストデバイスにあり,1つの計算機プログラムは実行可能形式でMMC/SDインタフェースを備える周辺デバイス内にあることが好ましい。したがってこの計算機プログラムと計算機プログラムデバイスとは,能力及びソースコードが異なる必要がある。
本発明のまた別の態様によって,MMC/SDインタフェースを備える周辺デバイスからブートできるように構成したブート可能ホストデバイスが提供される。このホストデバイスは内部又は外部の電源部と,上記電源部に接続されたプロセッサと,上記プロセッサ及び上記電源部に接続されたMMC/SDインタフェースと,を備える。このMMC/SDインタフェースは,電源端子と,データバス端子を備えるデータバスと,CLK端子を備えるCLK線と,CMD端子を備えるCMD線と,を備える。ホストデバイスは,電力を上記MMC/SDインタフェースに供給し,起動中に上記MMC/SDインタフェースのCMD端子をロウ(信号レベル)に設定し,データバスを監視してデータ送信の開始ビットを探索するように構成される。
基本的に本発明のこの態様は,本願明細書の上記部分に開示したブート手続を実行できるホストデバイスに関する。プロセッサは主メモリを備え,ブート手続を実行する必要があるかもしれない。
基本的にホストデバイスはMMC/SDインタフェースのCMD端子に予期しない信号を与える。MMC/SDインタフェースのCMD線又はCMD端子を(現在はハイになっているが)ロウレベルに設定することによって,初期化中にブート要求を標示することができる。すなわち本発明の原理は,初期化手続中に(既知又は新規の)信号を「予期しない」入力として用いることによって,ホストデバイスが実際にブートデータを要求していることを通知することにある。
ブート可能ホストデバイスの例示実施例においては,上記プロセッサは上記ホストデバイスから上記MMC/SDインタフェースの上記データバス端子にCLK信号を送信するように構成され,起動処理中に初期化クロックを24サイクルと148サイクルとの間,好ましくは60サイクルと100サイクルとの間,そして最も好適には74サイクルだけ送信する間,ロウレベルに設定される。この実施例においては,ホストデバイスは別の「予期しない信号」を用いてブートデータ要求を標示する。この実施例では,対応するMMC/SDインタフェースを備える周辺デバイスは起動又は初期化の処理中にCLK端子のCLK信号を識別できる必要がある。また,例えばブートデータ転送に用いるデータバス幅,又は用いる周波数を符号化するパラメータとしてMMC/SDインタフェースへ送信するCLK信号の数を用いることも考えられる。
本発明のホストデバイスの別の例示実施例においては,上記プロセッサは更に,カードが第1データを上記データバスを介して送信している限り,上記ホストデバイスから上記MMC/SDインタフェースの上記データバス端子へCLK信号を送信するように構成される。すなわちホストデバイスは,第1データフレームの開始ビットを受信してから,ホストデバイスがデータ送信の開始を検出するまで,又はすべてのデータがホストデバイスへ転送されるまで,CLK端子にクロックを供給し続けるように構成される。
本発明のまた別の例示実施例においては,上記プロセッサはデータバス端子をロウレベルに設定して上記MMC/SDインタフェースに挿入されたMMC/SDインタフェースを備える周辺デバイスが転送に用いるデータバス幅を標示するように構成される。これは,ブートデータ転送に用いる端子Dat0からDat7をロウレベルに設定するようにプロセッサを構成することによって実現することができる。また,データ転送に用いるすべての端子Dat0からDat7をハイレベルに設定して,用いる8ビットバス幅を標示するという逆の方法を実現することも考えられる。(この場合,MMC/SDインタフェースは8ビットの既定データ転送に設定される。)(また,本願明細書の方法の部分で示した符号化方式の1つを用いるように構成したホストデバイス又はMMC/SDインタフェースを備える周辺デバイスを用いることも考えられる。)
本発明の別の態様によって,MMC/SDインタフェースを備える周辺デバイスが提供され,それはブート可能ホストデバイスをブートするように構成される(そのホストデバイスはその結果,MMC/SDインタフェースを備える周辺デバイスからブートされるように構成される)。本発明によれば,上記周辺デバイスは,MMC/SDインタフェースと,MMC/SDインタフェースに接続された周辺デバイス制御部と,上記周辺デバイス制御部に接続されたメモリモジュールと,を備える。MMC/SD仕様書に規定されているとおり,MMC/SDインタフェースは電源端子と,データバス端子を備えるデータバスと,CLK端子を備えるCLK線と,CMD端子を備えるCMD線と,を備える。MMC/SDインタフェースを備える周辺デバイスは,周辺デバイスの起動中に周辺デバイスの上記MMC/SDインタフェースの端子において受電し,上記MMC/SDインタフェースのCMD端子においてロウレベル信号を受信するとき,データバスを介して所定記憶領域の第1データを第1データフレームの開始ビットから送信するように上記周辺デバイス制御部を構成することを特徴とする。MMC/SDインタフェースを備える周辺デバイスにおいて,上記周辺デバイス制御部は上記MMC/SDインタフェースと,上記メモリモジュールとに接続される。
また周辺デバイス(制御部)は,ブートデータ転送のためにメモリモジュール内の所定ファイルを自動的に選択するように構成することも考えられる。起動処理は,電源端子における電力供給及び検出,並びに(MMC/SDインタフェースの電力供給端子の一部としての)接地端子における接地の供給も含むことは明らかであろう。
本発明の例示実施例においては,上記MMC/SDインタフェースを備える周辺デバイス(制御部)は更に,起動処理前又は起動処理中に初期化クロックを24サイクルと148サイクルとの間,好ましくは60サイクルと100サイクルとの間,そして最も好適には74サイクルだけ送信する間,上記MMC/SDインタフェースの上記CMD端子においてロウレベル信号を受信したときだけ,上記所定記憶領域の第1データをデータバスを介して送信するように構成される。
この実施例においては,MMC/SDカードは初期化手続中に受信したクロックサイクル数を計数して,ホストデバイスからのブート要求が受信され又は標示されたことを識別できる必要がある(このためには,MMC/SDインタフェースを備える周辺デバイスの設計に対応する修正が必要である)。
本発明の別の例示実施例においては,上記周辺デバイス制御部は更に,転送に用いるデータバス幅を標示し,標示されたデータバス幅を用いて上記データを送信する上記MMC/SDインタフェースのデータバス端子において,ロウレベル信号を受信するように構成される。この実施例は,起動手続中に各Dat端子(0〜2,0〜3又は0〜7)における信号レベルを認識して,この信号からブートデータの転送に用いるデータバス幅を得ることができるMMCカードに関するものであると考えられる。また,MMC/SDインタフェースを備える周辺デバイスを,例えば2進符号化されたデータバス幅を認識できるように構成することも考えられる。
すなわち,本発明のこの実施例のMMC/SDインタフェースを備える周辺デバイスは,起動手続中にCMD線の信号レベルを検査し,認識することができ,また更に高度な実施例においてはCLK線及びデータバス線の信号レベル(又はパルス数)を検査認識してブート要求を認識することができる。(例えば本願明細書の本発明の方法に関する部分を参照されたい。)
本発明の別の態様によって,ブート可能ホストデバイスはMMC/SDインタフェースを備える周辺デバイスからブートできるように構成される。このホストデバイスは(上述のすべての別のホストデバイスと同様に),電源部と,上記電源部に接続されたプロセッサと,上記プロセッサ及び上記電源部に接続されたMMC/SDインタフェースと,を備え,上記MMC/SDインタフェースは,電源端子と,データバス端子を備えるデータバスと,CLK端子を備えるCLK線と,CMD端子を備えるCMD線と,を備える。
このホストデバイスは,MMC/SDインタフェースを備える周辺デバイスの初期化処理中にブート要求引数を上記ホストデバイスから上記MMC/SDインタフェースを介して周辺デバイスへ送信し,データバスを監視してデータ送信の開始ビットを探索するように構成される。
上記ブート要求引数は,例えばCMD0段階において上記MMC/SDインタフェースにおいて送信される例えばリセットコマンドを含んでもよい(すなわち,カードの電源端子に推奨電圧を供給した直後のMMC/SDインタフェースを備える周辺デバイスの初期化)。
本発明の例示実施例においては,上記ホストデバイスは追加引数を上記MMC/SDインタフェースを介して送信するように構成され,上記追加引数は,ブートセクタ読み出しに用いるデータ線の数,使用するクロック周波数及びタイミングモード,などのようなブートシーケンスに関係するパラメータを標示する。これらの追加引数及びパラメータは,ブート要求引数と共に,上記ホストデバイスから上記MMC/SDインタフェースへ送信される。
本発明の別の例示実施例によれば,上記ホストデバイスは更に,上記MMC/SDインタフェースのデータバス端子をロウレベルに設定して転送に用いるデータバス幅を標示するように構成される。これによって,ホストデバイスがバス情報をデータバスのデータバス端子を介してMMC/SDインタフェースを備える周辺デバイスに送信し,ブートデータ転送を設定できるようになる。本発明の方法の説明に,これらのパラメータを標示又は通知するいくつかの可能性のある例が示されている。ホストデバイスは通常のMMC/SDインタフェースを備える周辺デバイスからはブートできないことが予想される。
本発明のまた別の態様によって,MMC/SDインタフェースを備える周辺デバイスが提供され,その周辺デバイスはブート可能ホストデバイスをブートするように構成される(そのホストデバイスはその結果,MMC/SDインタフェースを備える周辺デバイスからブートされるように構成される)。本発明によれば周辺デバイスは,電源端子と,データバス端子を備えるデータバスと,CLK端子を備えるCLK線と,CMD端子を備えるCMD線と,を備えるMMC/SDインタフェース,上記MMC/SDインタフェースに接続された周辺デバイス制御部,及び上記周辺デバイス制御部に接続されたメモリモジュールを備える。本発明によれば更に,上記MMC/SDインタフェースを備える周辺デバイスは,ブートデータが周辺デバイスに記憶されており,上記MMC/SDインタフェースを備える周辺デバイスにおいて上記ホストデバイスからブート要求引数を受信し,CLK線においてクロック信号を受信するとき,上記MMC/SDインタフェースを介して上記ホストデバイスへ,データをデータ送信の開始ビットから送信するように構成される。
(MMC/SDインタフェース仕様書に規定されたとおり)ブート要求が例えばリセットコマンドを含むとき,MMC/SDインタフェースを備える周辺デバイスは例えばブート要求引数を認識することが考えられる。
本発明の例示実施例においては,上記周辺デバイス制御部は更に,上記MMC/SDインタフェースのデータバス端子において,転送に用いるデータバス幅を表示するロウレベル信号を受信するように構成され,また更に上記標示データバス幅を転送に用いるように構成される。このバス幅をMMC/SDインタフェースのデータバス端子又はデータバス線の8ビット引数でどのように符号化するかの例は,本発明の方法の上記説明において開示されている。
本発明の別の例示実施例においては,上記周辺デバイス制御部は更に,上記ホストデバイスからのブート要求引数と共に,ブートセクタ読み出しに用いるデータバス線の数と,使用するクロック周波数及びタイミングモードと,及び/又はクロックのほかのパラメータのようなブートシーケンスに関連するパラメータを標示する追加引数を受信するように構成される。本実施例のMMC/SDインタフェースを備える周辺デバイス(制御部)は,上記の受信引数に標示された上記標示パラメータを用いて,上記データバスを介して上記ホストデバイスへ上記(要求されたブートの)データを送信するように更に構成される。
また,上述のすべてのブートデバイス実現例は,MMC/SDインタフェースを完全に初期化し,続いてMMC/SDインタフェースを備える周辺デバイス上に記憶されたブートデータを探索するという従来の方法に多少なりとも関連して,ブートデータへのアクセス時間を短縮することを主要設計目標としていることに注意されたい。
(「MMC/SDインタフェース」という用語は,すべてのMMCインタフェースがSDフォームファクタにも対応している訳ではないので,MMCインタフェース単体,結合したMMC/SDインタフェース,又はSDインタフェース単体,を表すために用いることに注意されたい。)
自動車のダッシュボードの場合と同様にMMCの設計者は,端子の1つが障害又は不良かどうかを検査できるように,MMC/SDインタフェースの初期化手続において「すべてハイレベル」の入力を実装したように思われる。本発明の方法が誤った結果となる可能性があるのは,電子的欠陥によってロウ信号レベルが生じる場合だけである。
本発明のまた別の態様によって,ブート可能ホストデバイスが提供され,このホストデバイスはMMC/SDインタフェースを備える周辺デバイスからブートできるように構成される。このホストデバイスは,電源部と,上記電源部に接続されたプロセッサと,上記プロセッサ及び上記電源部に接続されたMMC/SDインタフェースと,を備え,上記MMC/SDインタフェースは電源端子と,データバス端子を備えるデータバスと,CLK端子を備えるCLK線と,CMD端子を備えるCMD線と,を備える。本発明のこの態様のホストデバイスは,MMC/SDインタフェースを備える周辺デバイスが待機状態になるまで,前記MMC/SDインタフェースを介して周辺デバイスの標準初期化データ交換を行い,上記ホストデバイスと上記待機状態の上記周辺デバイスとの間でデータ交換を行って,データバス中のコンポーネント内で有効なブートコードを探索するように構成される。
上記プロセッサは(ブート可能な)主メモリを備えてもよい。(このホストデバイスは,ブートファイル又はブートデータと認識できるデータファイルを自律的に探索することができるので,「ブート要求引数」を全く送信しないように構成される。)すなわちブート要求は,(カードが待機状態に入るまでの通常初期化の)CMD0,CMD1,CMD2,CMD3のコマンドと同時又はその後の初期化シーケンス後半段階で行われる。MMC/SDインタフェースを備える周辺デバイスが待機状態になった後,ホストデバイスはデータバス内の各コンポーネントを1つずつ有効なブートコードを探索することができる。
このホストデバイスは,アプリケーションを起動して積極的にブートデータを探索する前に,MMC/SDインタフェースを備える周辺デバイスの通常の初期化を適用してもよい。MMC/SDインタフェースを備える周辺デバイスのこの実現例では,ホストデバイスはたとえ未ブート状態であっても,全初期化処理及び周辺デバイスに記憶されたブートデータを探索し,ロードするルーチンを実行することができる必要がある。これは,ホストデバイスがMMC/SDインタフェースを操作して周辺デバイスを初期化し,その後にブートデータを探索することを可能にする一種のBIOS能力と解釈される。これは,少なくともMMC/SDインタフェースを備える周辺デバイス初期化用のハードコードアルゴリズム及びブートデータ探索ロードアルゴリズムによって実現できる。
この実現例は,対応するように修正されたホストデバイス及び全く通常のMMC/SDインタフェースを備える周辺デバイスによって実行できるという大きな利点を有する。しかしユーザが周辺デバイスにアクセスできるということは,ユーザがスロット(すなわちインタフェース)内の違うMMC/SDインタフェースを備える周辺デバイスを意図せずに使うかもしれないことを含む。したがってこの実現例は,例えば(Nゲージゲームのコンソールのような)ゲームデバイスのようにMMC/SDインタフェースを備える周辺デバイスなしではホストデバイスが機能しないことが明確であるか,又はMMC/SDカードが内部ファームウェア記憶として用いられる(すなわちユーザはカードにアクセスせず,ブートデータのないMMC/SDインタフェースを備える周辺デバイスによってホストデバイスを動作させようとしていらいらしない)アプリケーションに特に有用である。
本発明の別の態様によって,ブート可能ホストデバイスはMMC/SDインタフェースを備える周辺デバイスからブートできるように構成され,上記周辺デバイスはブート要求追加引数を有する動作条件レジスタ(OCR)を備える。上述のほかのホストデバイス実施例と同様に,上記ホストデバイスは電源部と,上記電源部に接続されたプロセッサと,上記プロセッサ及び上記電源部に接続されたMMC/SDインタフェースと,を備える。上記MMC/SDインタフェースは電源端子と,データバス端子を備えるデータバスと,CLK端子を備えるCLK線と,CMD端子を備えるCMD線と,を備える。本発明によれば,このホストデバイスはMMC/SDインタフェースを備える周辺デバイスの初期化後にブート要求を上記MMC/SDインタフェースへ送信し,データバスを監視して上記MMC/SDインタフェースを介して周辺デバイスから受信するブートデータを探索する。
すなわちこのホストデバイスは,MMC/SDインタフェースを備える周辺デバイスを初期化した後にブート要求引数を上記MMC/SDインタフェースへ送信し,データバスを監視して上記MMC/SDインタフェースを介して周辺デバイスから受信するブートデータを探索する。この処理は,例えば”CMD1”データ交換段階,すなわち期間の途中又は後に行われる。上述のホストデバイスと対比すると,ブートデータ転送専用の要求が周辺デバイスに提供される。すなわちこの実施例においては,ホストデバイスのブート手続は初期化処理と,ブートデータ要求の送信と,ブートデータの受信と,だけを含む。この実現例においては,MMC/SDインタフェースを備える周辺デバイスはブートデータがあるかどうか,またどこにそれが記憶されているかを知っている。当業者であればこのことをすぐに理解するであろうが,ホストデバイスは実際に,MMC/SDインタフェースを備える周辺デバイスの動作条件レジスタのブート要求引数を知っている(すなわち記憶している)ことをここではっきりと述べる。
本発明のこの実現例では,CMD1レベルで規定されたレジスタ情報と,コンポーネントがブートコードを組み込んでいる,又は含んでいるかどうかを標示するOCR内の追加引数と,の新規規定が必要である。これによってホストデバイスは,CMD1(CMD1コマンドに割り当てられた引数)を送信する一方でブートデータを要求することができる。
本発明の更に追加の態様によって,MMC/SDインタフェースを備える周辺デバイスが提供される。この周辺デバイスは,MMC/SDインタフェースを備える周辺デバイスからブートできるブート可能ホストデバイスをブートするように構成される。このMMC/SDインタフェースを備える周辺デバイスは,OCR内にブート要求追加引数を有する。この周辺デバイスは,電源端子と,データバス端子を備えるデータバスと,CLK端子を備えるCLK線と,CMD端子を備えるCMD線と,を備えるMMC/SDインタフェース,上記MMC/SDインタフェースに接続されたOCRを備える周辺デバイス制御部,及び上記周辺デバイス制御部に接続されたメモリモジュールを備える。
このMMC/SDインタフェースを備える周辺デバイスは,OCR内にブート要求追加引数を有する。このMMC/SDインタフェースを備える周辺デバイス(又はその制御部)は,MMC/SDインタフェースを備える周辺デバイスの初期化手続の後に,周辺デバイスにおいてブート要求引数を受信し,(メモリモジュールから上記要求ブートデータを)を取得し,周辺デバイスのメモリモジュールから上記MMC/SDインタフェースを介して上記ホストデバイスへ上記ブートデータを送信するように構成される。これによってこの周辺デバイスは,ホストデバイスが単一のブートデータ転送要求を送信することによってブートデータを要求できるようにする。しかしMMC/SDインタフェースのOCRは変更する必要があり,このことは本質的に,実際に市場にある通常のMMC/SDインタフェースを備える周辺デバイスはこの追加の特徴を有するようにはアップグレードできないことを意味する。
本発明の例示実施例においては,上記ブート要求引数を有する上記OCRは,MMC/SDインタフェースを備える周辺デバイス内にハードコードのハードウェアコンポーネントとして組み込まれ,上記周辺デバイス制御部に接続され,又は組み込まれる。
このハードウェアによる解決方法においては,ブート能力を含むコンポーネントはそのOCRに応答するだけであり,CMD1ハンドシェークが終了した後(レディ状態)でホストデバイスはデータバスへのクロック供給を続けることができ,再度データバス線によって第1データを受信する。しかしこの実現例では,ブートコンポーネントと非ブートコンポーネントとで異なるハードウェアが必要となる。いずれにしてもブート要求を受信しないときは,ブート処理が可能なMMC/SDインタフェースを備える周辺デバイスでさえも,非ブートのMMC/SDインタフェースを備える周辺デバイスとして用いることができる。
本発明の別の例示実施例においては,上記ブート要求引数を有する上記OCRは周辺デバイス制御部において動作するソフトウェアとして実現される。この実施例はファームウェア(ソフトウェア)による解決策を代表し,バス内のすべてのコンポーネントは,それらがレディになり,最後の応答だけがブート能力について有効な標示を含むまでOCRに応答する。この実現例は,同一バス内に1を越えるコンポーネントがあって,ブート可能コンポーネントが非ブート可能コンポーネントより早くレディになり,ブート能力は初期化シーケンスの後段で(例えば再度別個にOCRを読むことによって)再度検証されるためにより複雑である。
メモリカード又はメモリカード制御部は,起動検出モジュールと,メモリコアと,メモリカードインタフェースと,メモリカードインタフェース制御部と,その他のコンポーネント,のようなMMC/SDインタフェース仕様書において既知の追加副要素を更に備えてもよいことに注意されたい。
以降,付属の図面を参照して本発明を詳細に説明する。
本発明の一態様による方法の双方の部分を示すフローチャートである。 図1の方法の代替実施例を示す図である。 本発明によるブート手続の別の実施例を示す図である。 本発明の別の実現例であって,MMC/SDインタフェースを備える周辺デバイスが完全に初期化された後でブート要求が送信される例を示す図である。 ホストデバイス及びMMC/SDインタフェースを介して接続されたMMC/SDインタフェースを備える周辺デバイスを示す図である。 それぞれMMC/SDインタフェースを介して接続された専用ブートユニットを備えるホストデバイス及びMMC/SDインタフェースを備える周辺デバイスを示す図である。
以降の詳細な説明において,同一コンポーネントには,本発明の別の実施例に示されているかどうかにかかわらず同一の参照記号を与えている。本発明を明確かつ簡潔に示すために,各図面は必ずしも正確な縮尺ではなく,またある特徴はいくぶん簡略化した形態で示すことがある。
図1並びに引き続く図2,3及び4において,フローチャートのホストデバイス部分が左側に描かれ,右側に描かれた部分はMMC/SDインタフェースを備える周辺デバイスが実行する,又はその中で実行される動作又は処理を示している。
本発明の方法を更に示すため,電源(PWR)と,単一のデータ信号(Dat0,Dat1,・・・)に分離されていることもあるデータ(DAT)と,クロック(CLK)信号と,コマンド(CMD)信号と,のようないくつかの選択した信号が,通常の左から右への方法で示されている。ロウ信号レベルをより良く示すため,ロウレベル信号は,ハイからロウへの遷移で描かれている。
通常の信号は,(可能なときは)中断した線で示している。
図1は,本発明の一態様による方法の双方の部分を示すフローチャートである。このフローチャートにおいて,ホストデバイスはMMC/SDインタフェースを介してMMC/SDカードへ接続している周辺デバイスに接続されている。フローチャートは左上から始まり,そこでホストデバイスはMMC/SDカードインタフェースの電源端子に電力を供給することによって,MMC/SDインタフェースを備える周辺デバイスに給電する。このようにして周辺デバイスは受電する(右上)。
同時に(又はその後に),ホストデバイスはコマンド線(CMD)に「ロウ」レベル信号を加える。この信号を受信するMMC/SDインタフェースを備える周辺デバイスは,(現行MMC/SDインタフェース仕様書によればハイ信号レベル及びその後にCMD0を予期しているが)(現行MMC/SDインタフェース仕様書によれば)「予期しない」信号を検出する。(本発明による)MMC/SDカードはこのロウ信号レベルを認識し,それをブート要求と解釈するように構成される。ブート要求検出に続いて,MMC/SDインタフェースを備える周辺デバイスは(例えば専用ファイル又はメモリ領域から)単にブートデータを取得して,(DAT信号で示されるとおり)MMC/SDインタフェースを介してホストデバイスへ送信する。
したがって,ホストデバイスはMMC/SDインタフェースのデータバスを監視してブートデータの受信を探索する。ブートデータを受信するとホストデバイスはそれを主メモリにロードしてブート要求を終了させる。
CMD線の通常の信号レベル(通常初期化プロセスのCMD0,CMD1,CMD2等の信号が送信されるまで常にハイ)を示すため,図1に中断した線を示す。
図2は,図1に開示したものに加えて図1に示す方法の代替実施例を示す図である。図2は図1と同一のステップで始まる。CMD端子に加えられるロウレベル信号に加えて,ホストデバイスは(少なくとも74サイクル,又はすべてのブートデータが転送されるまで)CLK端子においてクロック信号を供給する。
この追加信号を供給することによってMMC/SDインタフェースを備える周辺デバイスは,例えばCMD端子の障害と2つの異なる信号成分からなるブート要求とを明確に区別することができる。
追加ステップにおいて,ホストデバイスはデータバスのDat0及びDat1の2つの端子をロウレベルに設定し,それによって引き続くデータ転送に用いるデータバス幅を標示する。(中断した線によって示すとおり,通常データバス端子は「ハイ」に設定されている。)カードにおいて「ロウレベル信号」が受信され,それに従って解釈される。そしてDat0及びDat1端子だけが最後のステップで信号を送信するように描かれており,一方Dat2及びDat・・の端子はブートデータ転送には用いられない。
この実現例によってホストデバイスは,MMC/SDインタフェースを備える周辺デバイスと接続されたとき第1ステップにおいてブートデータのダウンロードを開始し,それによってブート処理を大幅に短縮することができる。
図3は,類似するブート手続を示す図である。図2の実現例と対比すると,修正したCMD0を用いてブート要求をMMC/SDインタフェースを備える周辺デバイスに標示する。従来,初期化手続は引数00Hを有するCMD信号を含む。図示した本発明の実現例は,引数01Hを有する(通常の仕様書によれば)「予期しない」CMD0信号を用いる。修正したCMD0信号を受信すると,MMC/SDインタフェースを備える周辺デバイスが初期化された状態になる前でさえ,MMC/SDカードは着信するブート要求を認識することができる。
修正したCMD0信号は,単独で送信してもよいし,(図2に示すように)CLK信号に関連して送信してもよい。
またほかのパラメータも,ブート要求と共にコマンド引数内で転送することができる。この種の追加パラメータは,例えば用いるデータバス幅及び用いるタイミングモードであってもよい(別個のビット又は値を割り当てる必要がある)。
図4は,本発明の別の実現例を示す図であって,ブート要求はMMC/SDインタフェースを備える周辺デバイスが完全に初期化された,すなわち「待機状態」になった後で送信される。待機状態において,ホストデバイスはCMD線を介してMMC/SDインタフェースを備える周辺デバイスにブート要求コマンドを送信する(そしてMMC/SDインタフェースのCLK端子にクロックを供給し始める)。この実現例では,対応するブート要求コマンドをMMC/SDインタフェースのプロトコルに(すなわちMMC/SDインタフェースを備える周辺デバイスのOCR内に)規定する必要がある。(ホストデバイスが,MMC/SDインタフェースを備える周辺デバイスのメモリモジュールを,例えば”***.bot”のようなファイル名で記されたブートデータとして認識できるあるデータ構造を自律的に探索することも考えられる)ブート要求を受信すると,MMC/SDインタフェースを備える周辺デバイスは自動的に所望のブートデータを規定し,データ転送を開始することができる。
図5は,ホストデバイスと,MMC/SDインタフェースを介して接続されたMMC/SDインタフェースを備える周辺デバイスと,を示す図である。このホストデバイスは処理ユニット(CPU)及びMMC/SDインタフェース制御部を備える。図を不明りょうにしないように,MMC/SDインタフェースのCMD,CLK及びDAT端子だけが描かれている。MMC/SDメモリカードは,MMC/SDインタフェースとメモリモジュールとの間の調停器として動作する周辺デバイス制御部を備え,MMC/SDインタフェースとメモリモジュールとの間で実行されるすべての手続を制御するように動作する。
本発明の実現例においては,ホストインタフェース制御部は本発明の方法(例えば実行するために必要な信号を送信すること)を実行するように構成される。
したがってホストデバイス(又はホストインタフェース制御部)は,ホストデバイス内にソフトウェアとして組み込まれた専用ブートモジュールを備える。
本発明の実現例においては,MMC/SDインタフェースを備える周辺デバイスのMMC/SDインタフェース制御部は,本発明の方法(例えば実行するために必要な信号を送信すること)を実行するように構成される。
類似してMMC/SDインタフェース制御部は,ソフトウェアとして組み込まれた専用ブートモジュールを備える。このソフトウェアブートモジュールは,ブート要求を標示する信号が受信され,ブートデータがホストデバイスに送信されることになっているかどうかを周辺デバイス制御部が判定できるようにする。
図6は,それぞれ専用ブートモジュール又はブートユニットを備える図5のホストデバイス及びMMC/SDインタフェースを備える周辺デバイスを示す図である。
本発明の実現例においては,ホストインタフェース制御部に接続されたブートユニット又はブートモジュールは,本発明の方法(例えば実行するために必要な信号を送信すること)を実行するように構成される。ホストデバイス(又はホストインタフェース制御部)はホストデバイス内にハードウェア実装として組み込まれた専用ブートモジュールを備える。このようなブートモジュールは,ブート手続を実行するかどうかを判定できるようにCPUに接続されている必要がある。またブートモジュール又はブートユニットは,ブート手続を引き起こす(すなわち実行する)ために必要なすべてのステップを踏む(すなわちすべての必要な信号を送信する)ことができるようにMMC/SDインタフェース(又は制御部)にも接続されている必要がある。ブートユニットは,MMC/SDインタフェース自身とCPUとの間のMMC/SDインタフェース制御部と並列に接続された回路として実装してもよい。
上記ブートモジュールは,起動中に上記MMC/SDインタフェースのCMD端子をロウレベルに設定し,カードが上記データバスを介してデータを送信している限り上記ホストデバイスから上記MMC/SDインタフェースの上記CLK端子へクロック信号を送信し,データ転送に用いるデータバス幅を表示するために,データバス端子をロウレベルに設定するコンポーネントを備えてもよく,及び/又は更に初期化手続中にブート要求引数をMMC/SDインタフェースへ送信し,クロック信号をCLK線へ送信するように構成したコンポーネントを備え,及び/又は更にMMC/SDインタフェースを備える周辺デバイスの初期化後に,ブート要求引数を上記MMC/SDインタフェースへ送信し,データバスを監視して上記MMC/SDインタフェースを介して周辺デバイスから受信するブートデータの開始ビットを探索するように構成したコンポーネントを備える。
上記周辺デバイスの別の例示実施例においては,上記ブート要求引数を有する上記OCRは,周辺デバイス制御部内で動作するソフトウェアとして組み込まれる。
本発明の実現例においては,MMC/SDインタフェース制御部は,専用ブートモジュール又はブートユニットによって本発明の方法を実行する(例えば実行するために必要な信号を送信する)ように構成される。
類似してMMC/SD(メモリカード又は)インタフェース制御部は,MMC/SDメモリデバイス内にソフトウェア実装又はハードウェア実装として組み込まれた専用ブートモジュールを備える。このようなソフトウェアブートモジュールは,ブート要求を標示する信号が受信され,ブートデータがホストデバイスに送信されることになっているかどうかを判定できるようにするために周辺デバイス制御部と(又は少なくともMMC/SDインタフェースと)接続されている必要がある。またブートモジュールは,ブート処理を簡単にするため周辺デバイスのメモリモジュール上に規定した専用ブートセクタに接続してもよい。
上記ブートモジュールは,起動前又は起動中にCMD端子においてロウレベル信号を受信した後,所定の記憶領域の第1データを第1データフレームの開始ビットからデータバスを介して送信するコンポーネントを備えてもよい。
また,ブートユニット又はブートモジュールは,ブート要求を標示する追加パラメータとしてクロック信号を受信する専用コンポーネントを供え,更にデータバス端子において受信したロウレベル信号によって標示されるデータバス幅を用いて上記データを送信するコンポーネントを備えることも考えられる。
またブートユニットは,MMC/SDインタフェースを備える周辺デバイス内にブート要求追加引数を有する専用OCRを備えてもよい。
本発明のまた別の例示実施例によれば,上記ブート要求引数を有する上記OCRは,周辺デバイス制御部内で動作するソフトウェアとして実現される。
本発明を利用することによって,メモリカードインタフェースを組み込んだメモリによって更に効率的なブートが可能になり,また既存のピン又はプロトコルを用いることによって,ハードウェア又はファームウェアの変更を最小化することができる。
本願は,例示の助けを借りて本発明の実現例及び実施例を説明したものである。当業者であれば,本発明は上述の実施例の詳細に制約されることなく,本発明の特徴から逸脱することなく別の形態によっても実現できることが分かるであろう。上述の実施例は例示であって制約ではないと考えるのが望ましい。したがって本発明の実現及び利用の可能性は,付属の各請求項によってだけ制約される。したがって,均等な実現物を含め,本願請求項によって規定される本発明を実現する種々の選択肢もまた,本発明の範囲に属すものである。

Claims (39)

  1. 電源端子と、データバス端子を備えるデータバスと、クロック端子を備えるクロック線と、コマンド端子を備えるコマンド線と、を備えるMMC/SDインタフェースを介して前記MMC/SDインタフェースを備える周辺デバイスからホストデバイスをブートする方法であって、
    初期化手続中に前記ホストデバイスから前記MMC/SDインタフェースを介して前記周辺デバイスへブート要求引数を送信するステップと、
    前記クロック線へクロック信号を送信するステップと、
    前記データバスを監視してデータ送信の開始ビットを探索するステップと、
    を有する方法。
  2. 前記ブート要求引数は、コマンドを含む請求項1に記載の方法。
  3. 前記ブート要求引数は、CMD0段階中、又はその直後に送信する請求項1に記載の方法。
  4. 前記ブート要求引数は、CMD0段階中にリセットコマンドを含む請求項3に記載の方法。
  5. 前記ブート要求引数は、CMD0コマンド引数を含む請求項1に記載の方法。
  6. 前記ブート要求引数は、修正CMD0コマンド引数を含む請求項1に記載の方法。
  7. MMC/SDインタフェースを備える周辺デバイスからホストデバイスをブートすることができる計算機プログラムであって、ホストデバイス、MMC/SDインタフェースを備える周辺デバイス、又はMMC/SDインタフェースを備える周辺デバイスを挿入したホストデバイスのシステム上で実行すると請求項1に記載の各ステップを実行する計算機プログラム。
  8. MMC/SDインタフェースを備える周辺デバイスからホストデバイスをブートすることができる方法を実行する計算機プログラムであって、ホストデバイス、MMC/SDインタフェースを備える周辺デバイス、又はMMC/SDインタフェースを備える周辺デバイスを挿入したホストデバイスのシステム上で実行すると請求項1に記載の各ステップを実行する計算機プログラム。
  9. 前記ブート要求引数と共に、
    ブートセクタ読み出しに用いるデータバス線の数と、
    使用するクロック周波数及びタイミングモードと、
    のグループから選択したブートシーケンスに関連するパラメータを標示する追加引数を前記ホストデバイスから前記MMC/SDインタフェースへ送信するステップ
    を更に有する請求項1に記載の方法。
  10. 電源端子と、データバス端子を備えるデータバスと、クロック端子を備えるクロック線と、コマンド端子を備えるコマンド線と、を備えるMMC/SDインタフェースを介して前記MMC/SDインタフェースを備える周辺デバイスからホストデバイスをブートする方法であって、
    前記周辺デバイスの初期化手続中に前記周辺デバイスの前記MMC/SDインタフェースにおいて前記ホストデバイスからブート要求引数を受信するステップと、
    前記クロック端子においてクロック信号を受信するステップと、
    ブートデータが前記周辺デバイスに記憶されているとき、前記MMC/SDインタフェースを介して、データ送信の開始ビットからデータを前記ホストデバイスに送信するステップと、
    を有する方法。
  11. 前記ブート要求引数は、コマンドを含む請求項10に記載の方法。
  12. 前記ブート要求引数は、CMD0段階中、又はその直後に送信する請求項10に記載の方法。
  13. 前記ブート要求引数は、CMD0段階中にリセットコマンドを含む請求項12に記載の方法。
  14. 前記ブート要求引数は、CMD0コマンド引数を含む請求項10に記載の方法。
  15. 前記ブート要求引数は、修正CMD0コマンド引数を含む請求項10に記載の方法。
  16. 前記ホストデバイスから前記MMC/SDインタフェースへの前記ブート要求引数と共に
    ブートセクタ読み出しに用いるデータバス線の数と、
    使用するクロック周波数及びタイミングモードと、
    のグループから選択したブートシーケンスに関連するパラメータを標示する追加引数を受信するステップと、
    前記の標示パラメータを用いて、前記データバスを介して前記ホストデバイスへデータを送信するステップと、
    を更に有する請求項10に記載の方法。
  17. MMC/SDインタフェースを備える周辺デバイスからホストデバイスをブートすることができる計算機プログラムであって、ホストデバイス、MMC/SDインタフェースを備える周辺デバイス、又はMMC/SDインタフェースを備える周辺デバイスを挿入したホストデバイスのシステム上で実行すると請求項10に記載の各ステップを実行する計算機プログラム。
  18. MMC/SDインタフェースを備える周辺デバイスからホストデバイスをブートすることができる方法を実行する計算機プログラムであって、ホストデバイス、MMC/SDインタフェースを備える周辺デバイス、又はMMC/SDインタフェースを備える周辺デバイスを挿入したホストデバイスのシステム上で実行すると請求項10に記載の各ステップを実行する計算機プログラム。
  19. MMC/SDインタフェースを備える周辺デバイスからブートすることができるように構成されたブート可能なホストデバイスであって、
    電源部と、
    前記電源部と接続されたプロセッサと、
    前記プロセッサ及び前記電源部に接続され、電源端子と、データバス端子を備えるデータバスと、クロック端子を備えるクロック線と、コマンド端子を備えるコマンド線と、を備えるMMC/SDインタフェースと、
    を備え、
    前記周辺デバイスの初期化処理中に、前記ホストデバイスから前記MMC/SDインタフェースを介して前記周辺デバイスへブート要求引数を送信し、
    データバスを監視してデータ送信の開始ビットを探索する、
    ように構成したブート可能なホストデバイス。
  20. 前記ホストデバイスは、コマンドを含むブート要求引数を用いるように構成した請求項19に記載のブート可能なホストデバイス。
  21. 前記ホストデバイスは、CMD0段階中、又はその直後に送信するブート要求引数を用いるように構成した請求項19に記載のブート可能なホストデバイス。
  22. 前記ホストデバイスは、CMD0段階中にリセットコマンドを含むブート要求引数を用いるように構成した請求項21に記載のブート可能なホストデバイス。
  23. 前記ホストデバイスは、CMD0コマンド引数を含むブート要求引数を用いるように構成した請求項19に記載のブート可能なホストデバイス。
  24. 前記ホストデバイスは、修正CMD0コマンド引数を含むブート要求引数を用いるように構成した請求項19に記載のブート可能なホストデバイス。
  25. 前記ホストデバイスから前記MMC/SDインタフェースへの前記ブート要求引数と共に、
    ブートセクタ読み出しに用いるデータバス線の数と、
    使用するクロック周波数及びタイミングモードと、
    のグループから選択したブートシーケンスに関連するパラメータを標示する追加引数を、前記MMC/SDインタフェースを介して送信するように構成する請求項19に記載のブート可能なホストデバイス。
  26. 前記MMC/SDインタフェースのデータバス端子をロウ信号レベルに設定して、前記の転送に用いる前記データバスの幅を標示するように更に構成する請求項19に記載のブート可能なホストデバイス。
  27. 周辺デバイスからブートすることができるように構成されたブート可能なホストデバイスをブートするように構成した周辺デバイスであって、
    電源端子と、データバス端子を備えるデータバスと、クロック端子を備えるクロック線と、コマンド端子を備えるコマンド線と、を備えるMMC/SDインタフェースと、
    前記MMC/SDインタフェースに接続された周辺デバイス制御部と、
    前記周辺デバイス制御部に接続されたメモリモジュールと、
    を備え、
    ブートデータが前記周辺デバイスに記憶されている場合、前記周辺デバイスの前記MMC/SDインタフェースにおいて前記ホストデバイスからブート要求引数を受信したとき、かつ前記クロック線においてクロック信号を受信したとき、
    前記MMC/SDインタフェースを介してデータを、データ送信の開始ビットから送信するように構成する周辺デバイス。
  28. 前記周辺デバイス制御部は、コマンドを含むブート要求引数を受信するように更に構成した請求項27に記載の周辺デバイス。
  29. 前記周辺デバイス制御部は、CMD0段階中、又はその直後にブート要求引数を受信するように更に構成した請求項27に記載の周辺デバイス。
  30. 前記周辺デバイス制御部は、CMD0段階中にリセットコマンドを含むブート要求引数を受信するように更に構成した請求項29に記載の周辺デバイス。
  31. 前記周辺デバイス制御部は、CMD0コマンド引数を含むブート要求引数を受信するように更に構成した請求項27に記載の周辺デバイス。
  32. 前記周辺デバイス制御部は、修正CMD0コマンド引数を含むブート要求引数を受信するように更に構成した請求項27に記載の周辺デバイス。
  33. 前記周辺デバイス制御部は、前記MMC/SDインタフェースのデータバス端子において、前記の転送に用いる前記データバスの幅を標示するロウ信号レベルの信号を受信するように更に構成し、前記転送に用いるデータ幅に関して前記の標示されたデータバスの幅を用いるように更に構成する請求項27に記載の周辺デバイス。
  34. 前記周辺デバイス制御部は、
    前記ホストデバイスからの前記ブート要求引数と共に
    ブートセクタ読み出しに用いるデータバス線の数と、
    使用するクロック周波数及びタイミングモードと、
    のグループから選択したブートシーケンスに関連するパラメータを標示する追加引数を受信するように更に構成し、
    前記の標示パラメータを用いて、前記データバスを介して前記ホストデバイスへ前記データを送信するように更に構成する請求項27に記載の周辺デバイス。
  35. MMC/SDインタフェースを備える周辺デバイスからブートすることができるように構成されたブート可能なホストデバイスであって、
    電源部と、
    前記電源部と接続されたプロセッサと、
    前記プロセッサおよび前記電源部と接続され、電源端子と、データバス端子を備えるデータバスと、クロック端子を備えるクロック線と、コマンド端子を備えるコマンド線と、を備えるMMC/SDインタフェースと、
    を備え、
    前記MMC/SDインタフェースを介して前記周辺デバイスが待機状態になるまで周辺デバイスの標準初期化データ交換を行い、
    前記ホストデバイスと前記待機状態の前記周辺デバイスとの間でデータ交換を行って、データバス内のコンポーネント中に有効なブートコードを探す、
    ように構成するブート可能なホストデバイス。
  36. MMC/SDインタフェースを備える周辺デバイスからブートすることができるように構成されたブート可能なホストデバイスであって、前記周辺デバイスはブート要求追加引数を有する動作条件レジスタを備え、前記ホストデバイスは、
    電源部と、
    前記電源部と接続されたプロセッサと、
    前記プロセッサ及び前記電源部に接続され、電源端子と、データバス端子を備えるデータバスと、クロック端子を備えるクロック線と、コマンド端子を備えるコマンド線と、を備えるMMC/SDインタフェースと、
    を備え、
    MMC/SDインタフェースを備える周辺デバイスの初期化後に、ブート要求引数を前記MMC/SDインタフェースに送信し、
    前記データバスを監視して前記MMC/SDインタフェースを介して前記周辺デバイスから受信するブートデータを探索する、
    ように構成するブート可能なホストデバイス。
  37. MMC/SDインタフェースを備える周辺デバイスからブートすることができるように構成されたブート可能なホストデバイスをブートできるように構成したMMC/SDインタフェースを備える周辺デバイスであって、ブート要求追加引数を有する動作条件レジスタを備え、
    電源端子と、データバス端子を備えるデータバスと、クロック端子を備えるクロック線と、コマンド端子を備えるコマンド線と、を備えるMMC/SDインタフェースと、
    前記MMC/SDインタフェースに接続された動作条件レジスタを備える周辺デバイス制御部と、
    前記周辺デバイス制御部に接続されたメモリモジュールと、
    を備え、
    前記動作条件レジスタ内にブート要求追加引数を有し、
    初期化処理後に前記周辺デバイスにおいてブート要求引数を受信し、
    前記メモリモジュールからブートデータを取得し、前記MMC/SDインタフェースを介して前記ホストデバイスへブートデータを送信する、
    ように構成した周辺デバイス。
  38. 前記ブート要求引数を有する前記動作条件レジスタは、前記周辺デバイス制御部に接続され、又は前記周辺デバイス制御部内に組み込まれたハードコードハードウェアコンポーネントとして実現する請求項37に記載の周辺デバイス。
  39. 前記ブート要求引数を有する前記動作条件レジスタは、前記周辺デバイス制御部内で動作するソフトウェアとして実現する請求項37に記載の周辺デバイス。
JP2014227936A 2006-01-17 2014-11-10 Mmc/sdデバイスからホストデバイスをブートする方法,mmc/sdデバイスからブート可能なホストデバイス及びホストデバイスをブートできるmmc/sdデバイス Pending JP2015062131A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/333,799 2006-01-17
US11/333,799 US7739487B2 (en) 2006-01-17 2006-01-17 Method for booting a host device from an MMC/SD device, a host device bootable from an MMC/SD device and an MMC/SD device method a host device may booted from

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2014164895A Division JP2014220011A (ja) 2006-01-17 2014-08-13 Mmc/sdデバイスからホストデバイスをブートする方法,mmc/sdデバイスからブート可能なホストデバイス及びホストデバイスをブートできるmmc/sdデバイス

Publications (1)

Publication Number Publication Date
JP2015062131A true JP2015062131A (ja) 2015-04-02

Family

ID=38264637

Family Applications (4)

Application Number Title Priority Date Filing Date
JP2008550861A Active JP5065297B2 (ja) 2006-01-17 2006-11-27 Mmc/sdデバイスからホストデバイスをブートする方法,mmc/sdデバイスからブート可能なホストデバイス及びホストデバイスをブートできるmmc/sdデバイス
JP2012133892A Withdrawn JP2012212454A (ja) 2006-01-17 2012-06-13 Mmc/sdデバイスからホストデバイスをブートする方法,mmc/sdデバイスからブート可能なホストデバイス及びホストデバイスをブートできるmmc/sdデバイス
JP2014164895A Pending JP2014220011A (ja) 2006-01-17 2014-08-13 Mmc/sdデバイスからホストデバイスをブートする方法,mmc/sdデバイスからブート可能なホストデバイス及びホストデバイスをブートできるmmc/sdデバイス
JP2014227936A Pending JP2015062131A (ja) 2006-01-17 2014-11-10 Mmc/sdデバイスからホストデバイスをブートする方法,mmc/sdデバイスからブート可能なホストデバイス及びホストデバイスをブートできるmmc/sdデバイス

Family Applications Before (3)

Application Number Title Priority Date Filing Date
JP2008550861A Active JP5065297B2 (ja) 2006-01-17 2006-11-27 Mmc/sdデバイスからホストデバイスをブートする方法,mmc/sdデバイスからブート可能なホストデバイス及びホストデバイスをブートできるmmc/sdデバイス
JP2012133892A Withdrawn JP2012212454A (ja) 2006-01-17 2012-06-13 Mmc/sdデバイスからホストデバイスをブートする方法,mmc/sdデバイスからブート可能なホストデバイス及びホストデバイスをブートできるmmc/sdデバイス
JP2014164895A Pending JP2014220011A (ja) 2006-01-17 2014-08-13 Mmc/sdデバイスからホストデバイスをブートする方法,mmc/sdデバイスからブート可能なホストデバイス及びホストデバイスをブートできるmmc/sdデバイス

Country Status (14)

Country Link
US (1) US7739487B2 (ja)
EP (1) EP1979809B1 (ja)
JP (4) JP5065297B2 (ja)
KR (1) KR100990188B1 (ja)
CN (2) CN101361043B (ja)
AT (1) ATE529805T1 (ja)
AU (1) AU2006335964B2 (ja)
BR (1) BRPI0621301A2 (ja)
CA (1) CA2636648C (ja)
IL (1) IL192731A0 (ja)
RU (1) RU2402804C2 (ja)
TW (1) TWI416409B (ja)
WO (1) WO2007083179A2 (ja)
ZA (1) ZA200806133B (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022113601A1 (ja) 2020-11-24 2022-06-02 パナソニックIpマネジメント株式会社 ホスト装置、スレーブ装置およびデータ転送システム
WO2022176358A1 (ja) 2021-02-16 2022-08-25 パナソニックIpマネジメント株式会社 ホスト装置、スレーブ装置およびデータ転送システム

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090138643A1 (en) * 2006-02-21 2009-05-28 France Te;Ecp, Method and device for securely configuring a terminal
KR100880379B1 (ko) * 2006-05-25 2009-01-23 삼성전자주식회사 외부로부터 제공받는 부트 코드로 부팅되는 정보기기시스템
PL2038046T3 (pl) 2006-06-29 2018-09-28 Umicore Ag & Co. Kg Dwuwarstwowy katalizator trójdrożny i jego zastosowanie
FR2908195B1 (fr) * 2006-11-06 2009-02-06 Oberthur Card Syst Sa Procede de passation d'instructions entre une station hote et un dispositif electronique portable, et dispositif de mise en oeuvre
US10027789B2 (en) 2007-02-13 2018-07-17 Google Llc Modular wireless communicator
US8391921B2 (en) 2007-02-13 2013-03-05 Google Inc. Modular wireless communicator
US7970433B2 (en) 2007-06-08 2011-06-28 Modu Ltd. SD switch box in a cellular handset
US8082435B2 (en) 2008-05-07 2011-12-20 Micron Technology, Inc. Memory device initiate and terminate boot commands
US8412226B2 (en) 2008-06-24 2013-04-02 Google Inc. Mobile phone locator
US10177934B1 (en) 2009-09-04 2019-01-08 Amazon Technologies, Inc. Firmware updates inaccessible to guests
US8887144B1 (en) * 2009-09-04 2014-11-11 Amazon Technologies, Inc. Firmware updates during limited time period
US8214653B1 (en) 2009-09-04 2012-07-03 Amazon Technologies, Inc. Secured firmware updates
US9565207B1 (en) 2009-09-04 2017-02-07 Amazon Technologies, Inc. Firmware updates from an external channel
US8971538B1 (en) 2009-09-08 2015-03-03 Amazon Technologies, Inc. Firmware validation from an external channel
US8601170B1 (en) 2009-09-08 2013-12-03 Amazon Technologies, Inc. Managing firmware update attempts
US8102881B1 (en) 2009-09-08 2012-01-24 Amazon Technologies, Inc. Streamlined guest networking in a virtualized environment
US8300641B1 (en) 2009-09-09 2012-10-30 Amazon Technologies, Inc. Leveraging physical network interface functionality for packet processing
US8959611B1 (en) 2009-09-09 2015-02-17 Amazon Technologies, Inc. Secure packet management for bare metal access
US8640220B1 (en) 2009-09-09 2014-01-28 Amazon Technologies, Inc. Co-operative secure packet management
US8381264B1 (en) 2009-09-10 2013-02-19 Amazon Technologies, Inc. Managing hardware reboot and reset in shared environments
US8464020B2 (en) 2009-12-07 2013-06-11 Panasonic Corporation Non-volatile storage device, host device, storage system, data communication method and program
CN102082798B (zh) * 2011-01-21 2013-04-17 华南理工大学 基于sdio接口的多媒体信息协处理设备及其通信方法
WO2012135615A2 (en) 2011-03-30 2012-10-04 Brown University Enopeptins, uses thereof, and methods of synthesis thereto
JP5919729B2 (ja) 2011-10-27 2016-05-18 セイコーエプソン株式会社 周辺機器のステータス監視方法、デバイスドライバーおよびネットワークシステム
KR101977663B1 (ko) 2012-09-14 2019-05-13 삼성전자주식회사 임베디드 멀티미디어 카드 디바이스 및 그 동작방법
US9557802B2 (en) * 2013-08-01 2017-01-31 Mediatek Inc. Method of controlling SDIO device and related SDIO system and SDIO device
US10680816B2 (en) * 2014-03-26 2020-06-09 Continental Teves Ag & Co. Ohg Method and system for improving the data security during a communication process
CN106462712B (zh) * 2014-05-16 2020-02-07 索尼半导体解决方案公司 信息处理装置、信息处理方法和电子设备
US9767045B2 (en) 2014-08-29 2017-09-19 Memory Technologies Llc Control for authenticated accesses to a memory device
WO2018038703A1 (en) * 2016-08-22 2018-03-01 Hewlett-Packard Development Company, L.P. Connected devices information
CN108287671B (zh) * 2018-04-10 2024-06-14 江苏扬贺扬微电子科技有限公司 一种具有boot功能的SD卡及其制卡方法
CN111428842B (zh) * 2018-12-24 2022-10-18 华为技术有限公司 一种存储卡的识别方法以及移动设备
CN111428841A (zh) * 2018-12-24 2020-07-17 华为技术有限公司 一种存储卡的识别方法以及移动设备
DE102019214835A1 (de) * 2019-09-27 2021-04-01 Continental Automotive Gmbh Verfahren zum Inbetriebnehmen einer Vorrichtung mit einer eingebetteten Multimediakarte (eMMC)
JP7482649B2 (ja) * 2020-02-28 2024-05-14 キヤノン株式会社 撮像装置、デバイス、制御方法、及びプログラム
JP2021136666A (ja) 2020-02-28 2021-09-13 キヤノン株式会社 撮像装置、デバイス、制御方法、およびプログラム
JP2021136664A (ja) 2020-02-28 2021-09-13 キヤノン株式会社 デバイス、制御方法、およびプログラム
US11782726B1 (en) * 2020-09-29 2023-10-10 Amazon Technologies, Inc. Serial bootstrap

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040040043A1 (en) * 2002-08-26 2004-02-26 Samsung Electronics Co., Ltd. Digital receiver and controlling method thereof
JP2004220575A (ja) * 2002-12-27 2004-08-05 Ricoh Co Ltd カード型メモリのインターフェース回路、その回路を搭載したasic、及びそのasicを搭載した画像形成装置
US20040215996A1 (en) * 2003-04-25 2004-10-28 Renesas Technology Corp. Memory card
WO2005004047A1 (ja) * 2003-07-03 2005-01-13 Renesas Technology Corp. マルチファンクションカードデバイス

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1008928A4 (en) * 1996-04-11 2007-08-08 Hitachi Ltd DISK UNIT AND CALCULATOR
US6901457B1 (en) * 1998-11-04 2005-05-31 Sandisk Corporation Multiple mode communications system
JP2001067303A (ja) * 1999-08-24 2001-03-16 Toshiba Corp カード利用装置及び同装置におけるカード利用方法
JP4649009B2 (ja) * 2000-03-08 2011-03-09 株式会社東芝 カードインタフェースを備えた情報処理装置、同装置に装着可能なカード型電子機器、及び同装置におけ動作モード設定方法
JP3795725B2 (ja) * 2000-04-21 2006-07-12 株式会社東芝 電子機器
JP4547771B2 (ja) 2000-04-28 2010-09-22 ソニー株式会社 情報処理システム、情報処理方法、情報処理装置
US20020069308A1 (en) * 2000-07-10 2002-06-06 Songpro.Com, Inc. Method and apparatus for delivering digital multimedia content
US6820148B1 (en) * 2000-08-17 2004-11-16 Sandisk Corporation Multiple removable non-volatile memory cards serially communicating with a host
KR100396308B1 (ko) 2001-03-26 2003-09-03 주식회사데이콤 접근통제기능을 개선한 리눅스 시스템 및 리눅스 시스템의운영방법
JP2002342256A (ja) * 2001-05-14 2002-11-29 Hitachi Ltd データプロセッサ及びデータテーブルの更新方法
CN2496063Y (zh) * 2001-09-20 2002-06-19 闽祥实业有限公司 非易失性固态存储器驱动器
JP3655597B2 (ja) * 2002-03-25 2005-06-02 株式会社東芝 電子機器、電子カード、及びカード識別方法
JP2004133881A (ja) * 2002-08-14 2004-04-30 Ricoh Co Ltd カード型メモリのインターフェイス回路、その回路を搭載したasic、およびそのasicを搭載した画像形成装置
JP4094394B2 (ja) * 2002-09-30 2008-06-04 株式会社ルネサステクノロジ Icカードおよびその製造方法
US7082525B2 (en) * 2002-10-02 2006-07-25 Sandisk Corporation Booting from non-linear memory
JP4073301B2 (ja) * 2002-10-15 2008-04-09 株式会社リコー 情報処理装置
JP4152178B2 (ja) * 2002-12-03 2008-09-17 株式会社ルネサステクノロジ メモリカード及び電子デバイス
JP2004192051A (ja) * 2002-12-06 2004-07-08 Ricoh Co Ltd 共用端子制御装置
SG138439A1 (en) * 2003-04-02 2008-01-28 Trek 2000 Int Ltd Portable operating system and method to load the same
JP2004334593A (ja) * 2003-05-08 2004-11-25 Ricoh Co Ltd メモリブリッジ装置
US20040230789A1 (en) * 2003-05-16 2004-11-18 Pu-Yun Lee Multi memory card accessing system and implementation method thereof
US7188235B2 (en) 2003-07-22 2007-03-06 Winbond Electronics Corp. Method for booting computer system with memory card
CA2534720A1 (en) 2003-08-15 2005-03-03 York International Corporation System and method for loading software into a control panel for a chiller system
US7342611B2 (en) * 2003-12-10 2008-03-11 Hewlett-Packard Development Company, L.P. Method for rapid power-on to first picture in a digital camera
US7159064B2 (en) * 2003-12-11 2007-01-02 Nokia Corporation Method and device for increasing data transfer in multi-media card
KR101083366B1 (ko) * 2003-12-11 2011-11-15 삼성전자주식회사 메모리 시스템 및 호스트와 메모리 카드 사이의 데이터전송 속도 설정 방법
JP4567966B2 (ja) * 2003-12-22 2010-10-27 株式会社東芝 エミュレーションシステムおよびエミュレーション方法
JP2005260374A (ja) * 2004-03-09 2005-09-22 Toshiba Corp メモリカード、データ暗号化方法及びデータ復号化方法
GB0405795D0 (en) 2004-03-15 2004-04-21 Tom Tom B V Navigation device displaying travel information
JP4508687B2 (ja) * 2004-03-15 2010-07-21 株式会社リコー カード型メモリのインターフェース回路
JP2005275501A (ja) * 2004-03-23 2005-10-06 Renesas Technology Corp デバイスシステム
TWI271659B (en) * 2004-05-05 2007-01-21 Prolific Technology Inc Memory card equipped with a multi-interface function and method for choosing a compatible transmission mode
JP4695348B2 (ja) * 2004-05-27 2011-06-08 株式会社リコー カード型メモリ、画像形成装置、画像形成装置起動方法
JP4664011B2 (ja) * 2004-06-21 2011-04-06 株式会社リコー 情報処理装置及び情報処理方法
JP2006072989A (ja) * 2004-08-02 2006-03-16 Ricoh Co Ltd 電子機器
JP2007086920A (ja) * 2005-09-20 2007-04-05 Nec Saitama Ltd 携帯型電子機器

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040040043A1 (en) * 2002-08-26 2004-02-26 Samsung Electronics Co., Ltd. Digital receiver and controlling method thereof
KR20040018712A (ko) * 2002-08-26 2004-03-04 삼성전자주식회사 방송수신장치 및 그 제어방법
JP2004086909A (ja) * 2002-08-26 2004-03-18 Samsung Electronics Co Ltd デジタル受信機およびその制御方法
JP2004220575A (ja) * 2002-12-27 2004-08-05 Ricoh Co Ltd カード型メモリのインターフェース回路、その回路を搭載したasic、及びそのasicを搭載した画像形成装置
US20040186955A1 (en) * 2002-12-27 2004-09-23 Ricoh Company, Limited. Interface circuit for card-type memory, ASIC including interface circuit, and image forming apparatus including ASIC
WO2004097727A1 (ja) * 2003-04-25 2004-11-11 Renesas Technology Corp. メモリカード
US20040215996A1 (en) * 2003-04-25 2004-10-28 Renesas Technology Corp. Memory card
KR20060016756A (ko) * 2003-04-25 2006-02-22 가부시끼가이샤 르네사스 테크놀로지 메모리 카드
JP4199234B2 (ja) * 2003-04-25 2008-12-17 株式会社ルネサステクノロジ メモリカード
WO2005004047A1 (ja) * 2003-07-03 2005-01-13 Renesas Technology Corp. マルチファンクションカードデバイス
US20060151614A1 (en) * 2003-07-03 2006-07-13 Hirotaka Nishizawa Multi-function card device
CN101271538A (zh) * 2003-07-03 2008-09-24 株式会社瑞萨科技 多功能卡装置
KR20100107057A (ko) * 2003-07-03 2010-10-04 르네사스 일렉트로닉스 가부시키가이샤 반도체 카드 디바이스

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022113601A1 (ja) 2020-11-24 2022-06-02 パナソニックIpマネジメント株式会社 ホスト装置、スレーブ装置およびデータ転送システム
WO2022176358A1 (ja) 2021-02-16 2022-08-25 パナソニックIpマネジメント株式会社 ホスト装置、スレーブ装置およびデータ転送システム
US11880225B2 (en) 2021-02-16 2024-01-23 Panasonic Intellectual Property Management Co., Ltd. Host device, slave device, and data transfer system

Also Published As

Publication number Publication date
EP1979809B1 (en) 2011-10-19
CN102200923B (zh) 2013-08-07
RU2008129125A (ru) 2010-02-27
CN101361043A (zh) 2009-02-04
US7739487B2 (en) 2010-06-15
KR100990188B1 (ko) 2010-10-29
ZA200806133B (en) 2009-05-27
CN101361043B (zh) 2012-04-04
JP5065297B2 (ja) 2012-10-31
EP1979809A2 (en) 2008-10-15
JP2012212454A (ja) 2012-11-01
WO2007083179A2 (en) 2007-07-26
US20070168652A1 (en) 2007-07-19
JP2009524139A (ja) 2009-06-25
BRPI0621301A2 (pt) 2011-12-06
AU2006335964B2 (en) 2011-10-06
CN102200923A (zh) 2011-09-28
ATE529805T1 (de) 2011-11-15
RU2402804C2 (ru) 2010-10-27
TW200745949A (en) 2007-12-16
KR20080085914A (ko) 2008-09-24
AU2006335964A1 (en) 2007-07-26
JP2014220011A (ja) 2014-11-20
TWI416409B (zh) 2013-11-21
CA2636648C (en) 2015-07-21
WO2007083179A3 (en) 2007-10-04
CA2636648A1 (en) 2007-07-26
IL192731A0 (en) 2009-02-11

Similar Documents

Publication Publication Date Title
JP5065297B2 (ja) Mmc/sdデバイスからホストデバイスをブートする方法,mmc/sdデバイスからブート可能なホストデバイス及びホストデバイスをブートできるmmc/sdデバイス
JP5270377B2 (ja) ブリッジサポートを有するプラットフォーム起動
CN109426613B (zh) 在uefi中检索调试数据的方法及其电脑系统
WO2016074127A1 (zh) 计算机设备及计算机设备内存启动的方法
US7908417B2 (en) Motherboard system, storage device for booting up thereof and connector
CN109426527B (zh) 在uefi固件及作业系统间分享蓝牙数据的电脑系统及其方法
KR100440972B1 (ko) 카드 삽입 인식에 의한 데이터 전송 상태 자동 설정 장치및 방법
CN110688235B (zh) Uefi固件与os间共享无线连接信息的系统及方法
US8527667B2 (en) Apparatuses and methods for transferring data
KR101197152B1 (ko) 전자장치와 이를 포함하는 전자장치 시스템 및 그 제어방법
CN116627472A (zh) 高速外围组件设备的固件程序升级方法及服务器
CN108958837B (zh) 一种动态配置me固件的方法、系统及介质
US7424580B2 (en) Data transfer control device, electronic instrument, program and method of fabricating electronic instrument
CN112667544A (zh) 一种控制主板插槽使能的方法、装置、系统及介质

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150204

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150929

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20151225

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20160524